diff --git a/.gitignore b/.gitignore index 87a1ace51e09e12f655bfdb37eb3280ca2ca17c9..d58f67497c540582a67729200f77c7d83fe28d08 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,6 @@ build-tools/dts_parser/mochawesome-report #忽略本地typescript离线包 build-tools/dts_parser/deps/* + +# 忽略vscode的配置文件 +.vscode/ \ No newline at end of file diff --git a/BUILD.gn b/BUILD.gn index d347ff0abc61c3126ea58261ebf0f7920befc382..0b89c4eb31ef44f16c9af998dd33a54910494ed8 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//build/config/components/ets_frontend/ets2abc_config.gni") import("//build/ohos.gni") import("//build/ohos/notice/notice.gni") import("//build/ohos_var.gni") @@ -19,12 +20,61 @@ import("interface_config.gni") # 全局变量方法见 https://gitee.com/openharmony/build/blob/master/docs/cmake%E8%BD%ACgn%E6%8C%87%E5%AF%BC%E6%96%87%E6%A1%A3.md#gn%E5%B8%B8%E7%94%A8%E7%9A%84%E5%86%85%E7%BD%AE%E5%8F%98%E9%87%8F +# 特殊场景没有拷贝interface接口信息,强基之后源码仓api不能直接使用,需要进行处理 +exists_path_tools = "//interface/sdk-js/exists_path.py" +exists_path_args = [ + "--path", + rebase_path(interface_sdk_path_ets1, root_build_dir), +] +has_interface_file = + exec_script(exists_path_tools, exists_path_args, "trim string") + +if (has_interface_file != "True") { + arkts_sdk_config_parser = "//build/ohos/sdk/parse_interface_sdk.py" + ohos_sdk_arkts_description_file = + "//out/sdk-interface/ohos_sdk_pub_description_std.json" + if (host_os == "mac") { + node_path = "//prebuilts/build-tools/common/nodejs/node-v16.20.2-darwin-x64/bin/node" + npm_path = + "//prebuilts/build-tools/common/nodejs/node-v16.20.2-darwin-x64/bin/npm" + } else { + node_path = + "//prebuilts/build-tools/common/nodejs/node-v16.20.2-linux-x64/bin/node" + npm_path = + "//prebuilts/build-tools/common/nodejs/node-v16.20.2-linux-x64/bin/npm" + } + arkts_sdk_args = [ + "--sdk-description-file", + rebase_path("//build/ohos/sdk/ohos_sdk_description_std.json", + root_build_dir), + "--root-build-dir", + rebase_path("//", root_build_dir), + "--node-js", + rebase_path(node_path, root_build_dir), + "--output-arkts-sdk-desc-file", + rebase_path(ohos_sdk_arkts_description_file, root_build_dir), + "--sdk-build-public", + "${sdk_build_public}", + "--sdk-build-arkts", + "${sdk_build_arkts}", + "--npm-path", + rebase_path(npm_path, root_build_dir), + ] + exec_script(arkts_sdk_config_parser, arkts_sdk_args) +} + template("ohos_copy_internal") { forward_variables_from(invoker, "*") iv_input = invoker.iv_input + # fullSDK中api路径 + input_project_dir = interface_sdk_path_ets1 + if (sdk_type == "ets2") { + input_project_dir = interface_sdk_path_ets2 + } + # 调用build/templates/common/copy.gni中的ohos_copy方法 - # 将处理完成的文件输出到中间产物对应位置 out/sdk/obj/interface/sdk-js/$target_name + # 将处理完成的文件输出到中间产物对应位置 out/sdk/obj/interface/sdk-js/${target_name} ohos_copy(target_name) { # 该脚本根据传入的remove文件进行input文件规则检查,过滤不需要的文件 # remove文件没有对应$target_name的属性 则全部输出 @@ -35,18 +85,23 @@ template("ohos_copy_internal") { process_arguments = [ "--input", rebase_path(iv_input, root_build_dir), + "--project-dir", + rebase_path(input_project_dir, root_build_dir), + "--base-dir", + rebase_path("//interface/sdk-js", root_build_dir), "--remove", rebase_path("//interface/sdk-js/remove_list.json", root_build_dir), "--ispublic", "${sdk_build_public}", "--name", - "$target_name", + "${target_name}", ] # 执行脚本 sources = exec_script(process_script, process_arguments, "value") - outputs = [ target_out_dir + "/$target_name/{{source_file_part}}" ] - module_source_dir = target_out_dir + "/$target_name" + outputs = + [ target_out_dir + "/${sdk_type}/${target_name}/{{source_file_part}}" ] + module_source_dir = target_out_dir + "/${sdk_type}/${target_name}" module_install_name = "" } } @@ -54,29 +109,28 @@ template("ohos_copy_internal") { # 主要api处理template template("ohos_declaration_template") { forward_variables_from(invoker, "*") - _module_info_target = "/ohos_declaration/${target_name}_info" + _module_info_target = "/ohos_declaration/${sdk_type}/${target_name}_info" + + # fullSDK中api路径 + input_project_dir = interface_sdk_path_ets1 + if (sdk_type == "ets2") { + input_project_dir = interface_sdk_path_ets2 + } + input_api_dir = input_project_dir + "/api" action_with_pydeps(target_name) { - inputs = [ "//interface/sdk-js/api" ] - outputs = [ root_out_dir + "/ohos_declaration/$target_name" ] + inputs = [ input_project_dir + "/api" ] + outputs = [ root_out_dir + "/ohos_declaration/${sdk_type}/${target_name}" ] # 处理api文件下全部文件,过滤特定文件 script = "//interface/sdk-js/remove_internal.py" - - # fullSDK中api路径 - input_api_dir = "//interface/sdk-js/api" - if (sdk_build_public || product_name == "ohos-sdk") { - script = "//out/sdk-public/public_interface/sdk-js/remove_internal.py" - - # publicSDK中api路径,经过./build-tools/delete_systemapi_plugin.js脚本处理过systemapi的接口 - input_api_dir = "//out/sdk-public/public_interface/sdk-js/api" - } args = [ "--input", rebase_path(input_api_dir, root_build_dir), "--output", - rebase_path(root_out_dir + "/ohos_declaration/$target_name/", - root_build_dir), + rebase_path( + root_out_dir + "/ohos_declaration/${sdk_type}/${target_name}/", + root_build_dir), ] if (defined(deps)) { deps += [ ":$_module_info_target" ] @@ -89,76 +143,94 @@ template("ohos_declaration_template") { module_type = "jsdoc" module_install_name = "" module_name = _target_name - module_source_dir = root_out_dir + "/ohos_declaration/$_target_name" + module_source_dir = + root_out_dir + "/ohos_declaration/${sdk_type}/$_target_name" install_enable = false } } # ets/api执行脚本 ohos_declaration_template("ohos_declaration_ets") { + sdk_type = "ets" } -# ets/api执行脚本 -ohos_copy("common_api") { - sources = common_api_src - outputs = [ target_out_dir + "/$target_name/{{source_file_part}}" ] - module_source_dir = target_out_dir + "/$target_name" - module_install_name = "" +# ets2/api执行脚本 +ohos_declaration_template("ohos_declaration_ets2") { + sdk_type = "ets2" } # ets/api/@internal/full执行脚本 ohos_copy_internal("ets_internal_api") { - iv_input = "//interface/sdk-js/api/@internal/ets" + sdk_type = "ets" + iv_input = interface_sdk_path_ets1 + "/api/@internal/ets" } # ets/arkts执行脚本 -ohos_copy("bundle_arkts") { - sources = [ "//interface/sdk-js/arkts" ] - outputs = [ target_out_dir + "/$target_name" ] - module_source_dir = target_out_dir + "/$target_name" - module_install_name = "" - license_file = "./LICENCE.md" +ohos_copy_internal("bundle_arkts") { + sdk_type = "ets" + iv_input = interface_sdk_path_ets1 + "/arkts" +} + +# ets1.2/arkts执行脚本 +ohos_copy_internal("bundle_arkts_ets1.2") { + sdk_type = "ets2" + iv_input = interface_sdk_path_ets2 + "/arkts" +} + +ohos_copy_internal("ets_internal_api2") { + sdk_type = "ets2" + iv_input = interface_sdk_path_ets2 + "/api/@internal/ets" } if (!sdk_build_public) { # ets/build-tools/ets-loader/declarations脚本 ohos_copy("bundle_api") { + sdk_type = "ets" sources = [ "api/bundle/bundleStatusCallback.d.ts" ] - outputs = [ target_out_dir + "/$target_name/{{source_file_part}}" ] - module_source_dir = target_out_dir + "/$target_name" + outputs = + [ target_out_dir + "/${sdk_type}/${target_name}/{{source_file_part}}" ] + module_source_dir = target_out_dir + "/${sdk_type}/${target_name}" module_install_name = "" } } # ets/component执行脚本 ohos_copy_internal("ets_component") { - iv_input = "//interface/sdk-js/api/@internal/component/ets" + sdk_type = "ets" + iv_input = interface_sdk_path_ets1 + "/api/@internal/component/ets" +} + +# ets1.2/arkui/component执行脚本 +ohos_copy_internal("ets_component2") { + sdk_type = "ets2" + iv_input = "//out/arkui_transformer_api" } # ets/kits执行脚本 -ohos_copy("bundle_kits") { - if (sdk_build_public || product_name == "ohos-sdk") { - sources = [ "//out/sdk-public/public_interface/sdk-js/kits" ] - } else { - sources = [ "//interface/sdk-js/kits" ] - } - outputs = [ target_out_dir + "/$target_name" ] - module_source_dir = target_out_dir + "/$target_name" - module_install_name = "" +ohos_copy_internal("bundle_kits") { + sdk_type = "ets" + iv_input = interface_sdk_path_ets1 + "/kits" +} + +# ets2/kits执行脚本 +ohos_copy_internal("bundle_kits2") { + sdk_type = "ets2" + iv_input = interface_sdk_path_ets2 + "/kits" } # js/api执行脚本 ohos_declaration_template("ohos_declaration_common") { + sdk_type = "ets" } # js/api/@internal/full执行脚本 ohos_copy_internal("internal_full") { - iv_input = "//interface/sdk-js/api/common/full" + iv_input = interface_sdk_path_ets1 + "/api/common/full" } # js/api/@internal/lite执行脚本呢 ohos_copy_internal("internal_lite") { - iv_input = "//interface/sdk-js/api/common/lite" + iv_input = interface_sdk_path_ets1 + "/api/common/lite" } # js/api/config执行脚本 @@ -167,8 +239,8 @@ ohos_copy("config") { "api/config/css", "api/config/hml", ] - outputs = [ target_out_dir + "/$target_name/{{source_file_part}}" ] - module_source_dir = target_out_dir + "/$target_name" + outputs = [ target_out_dir + "/${target_name}/{{source_file_part}}" ] + module_source_dir = target_out_dir + "/${target_name}" module_install_name = "" } @@ -179,15 +251,126 @@ ohos_copy("form_declaration") { "api/form/css", "api/form/hml", ] - outputs = [ target_out_dir + "/$target_name/{{source_file_part}}" ] - module_source_dir = target_out_dir + "/$target_name" + outputs = [ target_out_dir + "/${target_name}/{{source_file_part}}" ] + module_source_dir = target_out_dir + "/${target_name}" module_install_name = "" } # toolchains/syscapcheck执行脚本 ohos_copy("syscap_check") { sources = [ "api/syscapCheck/sysCapSchema.json" ] - outputs = [ target_out_dir + "/$target_name/{{source_file_part}}" ] - module_source_dir = target_out_dir + "/$target_name" + outputs = [ target_out_dir + "/${target_name}/{{source_file_part}}" ] + module_source_dir = target_out_dir + "/${target_name}" module_install_name = "" } + +action("ohos_ets_api_tmp") { + script = "//interface/sdk-js/ohos_copy_ets.py" + + args = [ + "--input", + rebase_path("//interface/sdk-js/api"), + "--output", + rebase_path("$ohos_ets_api_tmp_path"), + "--type", + "ets2", + "--source-root-dir", + rebase_path("//"), + "--node-js", + rebase_path(nodejs, root_build_dir), + ] + + outputs = [ "$ohos_ets_api_tmp_path" ] +} + +action("ohos_ets_arkts_tmp") { + script = "//interface/sdk-js/ohos_copy_ets.py" + + args = [ + "--input", + rebase_path("//interface/sdk-js/arkts"), + "--output", + rebase_path("$ohos_ets_arkts_tmp_path"), + "--type", + "ets2", + "--source-root-dir", + rebase_path("//"), + "--node-js", + rebase_path(nodejs, root_build_dir), + ] + + outputs = [ "$ohos_ets_arkts_tmp_path" ] +} + +action("ohos_ets_kits_tmp") { + script = "//interface/sdk-js/ohos_copy_ets.py" + + args = [ + "--input", + rebase_path("//interface/sdk-js/kits"), + "--output", + rebase_path("$ohos_ets_kits_tmp_path"), + "--type", + "ets2", + "--source-root-dir", + rebase_path("//"), + "--node-js", + rebase_path(nodejs, root_build_dir), + ] + + outputs = [ "$ohos_ets_kits_tmp_path" ] +} + +action("ohos_ets_api_arkui_tmp") { + deps = [ ":ohos_ets_api_tmp" ] + script = "//interface/sdk-js/arkui_transformer.py" + + if (host_os == "mac") { + node_path = "//prebuilts/build-tools/common/nodejs/node-v16.20.2-darwin-x64/bin/node" + npm_path = + "//prebuilts/build-tools/common/nodejs/node-v16.20.2-darwin-x64/bin/npm" + } else { + node_path = + "//prebuilts/build-tools/common/nodejs/node-v16.20.2-linux-x64/bin/node" + npm_path = + "//prebuilts/build-tools/common/nodejs/node-v16.20.2-linux-x64/bin/npm" + } + args = [ + "--input", + rebase_path(ohos_ets_api_tmp_path + "/@internal/component/ets", + root_build_dir), + "--output", + rebase_path(ohos_ets_api_tmp_path + "/arkui/component", root_build_dir), + "--source_root_dir", + rebase_path("//", root_build_dir), + "--npm-path", + rebase_path(npm_path, root_build_dir), + "--node-js", + rebase_path(node_path, root_build_dir), + ] + outputs = [ "$ohos_ets_api_arkui_tmp_path" ] +} + +ohos_copy("ohos_ets_arkts") { + deps = [ ":ohos_ets_arkts_tmp" ] + sources = [ ohos_ets_arkts_tmp_path ] + outputs = [ ohos_ets_arkts_path ] + part_name = "sdk" + subsystem_name = "sdk" +} + +ohos_copy("ohos_ets_kits") { + deps = [ ":ohos_ets_kits_tmp" ] + sources = [ ohos_ets_kits_tmp_path ] + outputs = [ ohos_ets_kits_path ] + part_name = "sdk" + subsystem_name = "sdk" +} + +ohos_copy("ohos_ets_api") { + deps = [ ":ohos_ets_api_tmp" ] + sources = [ ohos_ets_api_tmp_path ] + outputs = [ ohos_ets_api_path ] + part_name = "sdk" + subsystem_name = "sdk" +} diff --git a/OAT.xml b/OAT.xml index 2ec3b5633794929f80ae462e639c48d22876e1ec..c3931061183e0fd0f53acbf4837b9a9681017b46 100644 --- a/OAT.xml +++ b/OAT.xml @@ -86,6 +86,12 @@ Note:If the text contains special characters, please escape them according to th + + + + + + diff --git a/api/@internal/component/ets/action_sheet.d.ts b/api/@internal/component/ets/action_sheet.d.ts index 3f404fc1b2c0d3d518dff90d9ea4c39c1e511e0a..8c34b13777e9de6b6ecf005da9a75431311e99ba 100644 --- a/api/@internal/component/ets/action_sheet.d.ts +++ b/api/@internal/component/ets/action_sheet.d.ts @@ -59,7 +59,7 @@ interface SheetInfo { * @since 10 */ /** - * Title Properties + * Sheet text. * * @type { string | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -85,7 +85,7 @@ interface SheetInfo { * @since 10 */ /** - * Icon Properties. + * Sheet icon. By default, no icon is displayed. * * @type { ?(string | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -120,7 +120,8 @@ interface SheetInfo { * @since 11 */ /** - * Callback method after the operation. + * Callback when the sheet is selected. + * Anonymous Object Rectification. * * @type { VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -132,7 +133,7 @@ interface SheetInfo { } /** - * Component dialog dismiss action. + * Provides information about the action to dismiss the dialog box. * * @interface DismissDialogAction * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -142,7 +143,7 @@ interface SheetInfo { */ declare interface DismissDialogAction { /** - * Defines dialog dismiss function. + * Callback for dismissing the dialog box. This API is called only when the dialog box needs to be exited. * * @type { Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -153,7 +154,8 @@ declare interface DismissDialogAction { dismiss: Callback; /** - * Dismiss reason type. + * Reason why the dialog box cannot be dismissed. You must specify whether to close the dialog box for each of the + * listed actions. * * @type { DismissReason } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -191,6 +193,18 @@ interface ActionSheetButtonOptions { * @atomicservice * @since 11 */ + /** + * Whether to respond when the button is clicked. The value true means to respond when the button is clicked, + * and false means the opposite. + * Anonymous Object Rectification. + * + * @type { ?boolean } + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ enabled?: boolean; /** @@ -210,6 +224,18 @@ interface ActionSheetButtonOptions { * @atomicservice * @since 11 */ + /** + * Whether the button is the default focus. The value true means that the button is the default focus, + * and false means the opposite. + * Anonymous Object Rectification. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ defaultFocus?: boolean; /** @@ -229,6 +255,17 @@ interface ActionSheetButtonOptions { * @atomicservice * @since 11 */ + /** + * Button style. + * Anonymous Object Rectification. + * + * @type { ?DialogButtonStyle } + * @default DialogButtonStyle.DEFAULT + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ style?: DialogButtonStyle; /** @@ -255,6 +292,16 @@ interface ActionSheetButtonOptions { * @atomicservice * @since 11 */ + /** + * Button text. + * Anonymous Object Rectification. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ value: string | Resource; /** @@ -282,7 +329,8 @@ interface ActionSheetButtonOptions { * @since 11 */ /** - * Method executed by the callback. + * Callback invoked when the button is selected. + * Anonymous Object Rectification. * * @type { VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -304,7 +352,8 @@ interface ActionSheetButtonOptions { */ interface ActionSheetOffset { /** - * Dx of the pop-up window relative to the alignment position. + * Offset of the action sheet along the x-axis relative to the alignment position. + * Anonymous Object Rectification. * * @type { number | string | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -314,7 +363,8 @@ interface ActionSheetOffset { */ dx: number | string | Resource; /** - * Dy of the pop-up window relative to the alignment position. + * Offset of the action sheet along the y-axis relative to the alignment position. + * Anonymous Object Rectification. * * @type { number | string | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -389,7 +439,7 @@ interface ActionSheetOptions * @since 10 */ /** - * Title Properties + * Title of the dialog box. * * @type { string | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -407,7 +457,7 @@ interface ActionSheetOptions * @since 10 */ /** - * Subtitle Properties + * Subtitle of the dialog box. * @type { ?ResourceStr } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -432,7 +482,7 @@ interface ActionSheetOptions * @since 10 */ /** - * message Properties + * Content of the dialog box. * * @type { string | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -467,7 +517,9 @@ interface ActionSheetOptions * @since 11 */ /** - * Invoke the commit function. + * Information about the confirm button. When the dialog box has focus and focus has not been shifted using the Tab + * key, the button responds to the Enter key by default, and multiple dialog boxes can gain focus consecutively + * to respond automatically. The default response to the Enter key does not work when defaultFocus is set to true. * * @type { ?ActionSheetButtonOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -502,7 +554,8 @@ interface ActionSheetOptions * @since 11 */ /** - * Execute Cancel Function. + * Callback invoked when the dialog box is closed after the overlay is clicked. + * Anonymous Object Rectification. * * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -528,7 +581,7 @@ interface ActionSheetOptions * @since 10 */ /** - * The Array of sheets + * Options in the dialog box. Each option supports the image, text, and callback. * * @type { Array } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -554,9 +607,11 @@ interface ActionSheetOptions * @since 10 */ /** - * Allows users to click the mask layer to exit. + * Whether to close the dialog box when the overlay is clicked. * * @type { ?boolean } + * @default true - The value true means to close the dialog box when the overlay is clicked, and false means + * the opposite. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -580,9 +635,14 @@ interface ActionSheetOptions * @since 10 */ /** - * Alignment in the vertical direction. + * Alignment mode of the dialog box in the vertical direction. + *

NOTE: + *
If showInSubWindow is set to true in UIExtension, the dialog box is aligned with the host window based + * on UIExtension. + *

* * @type { ?DialogAlignment } + * @default DialogAlignment.Bottom * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -615,7 +675,9 @@ interface ActionSheetOptions * @since 11 */ /** - * Offset of the pop-up window relative to the alignment position. + * Offset of the dialog box relative to the alignment position. + *
When alignment is set to Top, TopStart, or TopEnd: {dx: 0,dy: "40vp"} + *
When alignment is set to any other value: {dx: 0,dy: "-40vp"} * * @type { ?ActionSheetOffset } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -634,9 +696,14 @@ interface ActionSheetOptions * @since 10 */ /** - * Mask Region of dialog. The size cannot exceed the main window. + * Mask area of the dialog box. Events outside the mask area are transparently transmitted, + * and events within the mask area are not. + *

NOTE: + *
maskRect does not take effect when showInSubWindow is set to true. + *

* * @type { ?Rectangle } + * @default - {x:0,y:0, width:'100%', height:'100%'} * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -654,8 +721,12 @@ interface ActionSheetOptions * @since 11 */ /** - * Whether to display in the sub window. - * + * Whether to show the dialog box in a subwindow when the dialog box needs to be displayed outside the main window. + *

NOTE: + *
A dialog box whose showInSubWindow attribute is true cannot trigger the display of another dialog box whose + * showInSubWindow attribute is also true. + *

+ * * @type { ?boolean } * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -674,7 +745,7 @@ interface ActionSheetOptions * @since 11 */ /** - * Whether it is a modal dialog + * Whether the dialog box is a modal. A modal dialog box has a mask applied, while a non-modal dialog box does not. * @type { ?boolean } * @default true * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -694,7 +765,11 @@ interface ActionSheetOptions * @since 11 */ /** - * Defines the actionSheet's background color + * Background color of the dialog box. + *

NOTE: + *
When backgroundColor is set to a non-transparent color, backgroundBlurStyle must be set to BlurStyle.NONE; + * otherwise, the color display may not meet the expected effect. + *

* * @type { ?ResourceColor } * @default Color.Transparent @@ -715,7 +790,12 @@ interface ActionSheetOptions * @since 11 */ /** - * Defines the actionSheet's background blur Style + * Background blur style of the dialog box. + *

NOTE: + *
Setting this parameter to BlurStyle.NONE disables the background blur. When backgroundBlurStyle is set to a + * value other than NONE, do not set backgroundColor. If you do, the color display may not produce the expected + * visual effect. + *

* * @type { ?BlurStyle } * @default BlurStyle.COMPONENT_ULTRA_THICK @@ -733,7 +813,7 @@ interface ActionSheetOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; @@ -744,12 +824,19 @@ interface ActionSheetOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; /** - * Callback function when the actionSheet interactive dismiss + * Callback for interactive closure of the dialog box. + *

NOTE: + * 1. If this callback is registered, the dialog box will not be closed immediately after the user touches the + * mask or the Back button, presses the Esc key, or swipes left or right on the screen. The reason parameter in + * the callback is used to determine whether the dialog box can be closed. The reason returned by the component + * does not support the value CLOSE_BUTTON. + * 2. In the onWillDismiss callback, another onWillDismiss callback is not allowed. + *

* * @type { ?Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -760,7 +847,14 @@ interface ActionSheetOptions onWillDismiss?: Callback; /** - * Transition parameters of opening/closing ActionSheet. + * Transition effect for the entrance and exit of the dialog box. + *

NOTE: + * 1. If this parameter is not set, the default effect is used. + * 2. Touching the Back button during the entrance animation pauses the entrance animation and starts the exit + * animation. The final effect is one obtained after the curves of the entrance and exit animations are combined. + * 3. Touching the Back button during the exit animation does not affect the animation playback. Touching the + * Back button again closes the application. + *

* * @type { ?TransitionEffect } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -771,9 +865,13 @@ interface ActionSheetOptions transition?: TransitionEffect; /** - * Defines the actionSheet's corner radius. + * Corner radius of the background. You can set the radius for each of the four corners individually. * * @type { ?(Dimension | BorderRadiuses | LocalizedBorderRadiuses) } + * @default - {topLeft:'32vp', topRight:'32vp', bottomLeft:'32vp', bottomRight:'32vp'}, The corner radius is subject + * to the component size, with the maximum value being half of the component width or height. If the value is + * negative, the default value is used. When set to a percentage, the value defines the radius as a percentage of the + * parent component's width or height. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -782,9 +880,12 @@ interface ActionSheetOptions cornerRadius?: Dimension | BorderRadiuses | LocalizedBorderRadiuses; /** - * Defines the actionSheet's width. + * Width of the dialog box. * * @type { ?Dimension } + * @default - Default maximum width of the dialog box: 400 vp, + * When this parameter is set to a percentage, the reference width of the dialog box is the width of the window + * where the dialog box is located. You can decrease or increase the width as needed. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -793,9 +894,12 @@ interface ActionSheetOptions width?: Dimension; /** - * Defines the actionSheet's height. + * Height of the dialog box. * * @type { ?Dimension } + * @default - Default maximum height of the dialog box: 0.9 x (Window height – Safe area) + *
When this parameter is set to a percentage, the reference height of the dialog box is the height of the + * window where the dialog box is located minus the safe area. You can decrease or increase the height as needed. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -804,9 +908,13 @@ interface ActionSheetOptions height?: Dimension; /** - * Defines the actionSheet's border width. + * Border width of the dialog box. + * You can set the width for all four sides or set separate widths for individual sides. * * @type { ?(Dimension | EdgeWidths | LocalizedEdgeWidths) } + * @default 0 - When set to a percentage, the value defines the border width as a percentage of the parent dialog + * box's width. If the left and right borders are greater than its width, or the top and bottom borders are greater + * than its height, the dialog box may not display as expected. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -815,9 +923,14 @@ interface ActionSheetOptions borderWidth?: Dimension | EdgeWidths | LocalizedEdgeWidths; /** - * Defines the actionSheet's border color. + * Border color of the dialog box. + *

NOTE: + *
When borderColor is of type LocalizedEdgeColors, the layout order can be dynamically adjusted based on the + * user's language settings. + *

* * @type { ?(ResourceColor | EdgeColors | LocalizedEdgeColors) } + * @default Color.Black - borderColor must be used with borderWidth in pairs. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -826,9 +939,10 @@ interface ActionSheetOptions borderColor?: ResourceColor | EdgeColors | LocalizedEdgeColors; /** - * Defines the actionSheet's border style. + * Border style of the dialog box. * * @type { ?(BorderStyle | EdgeStyles) } + * @default BorderStyle.Solid - borderStyle must be used with borderWidth in pairs. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -837,9 +951,11 @@ interface ActionSheetOptions borderStyle?: BorderStyle | EdgeStyles; /** - * Defines the actionSheet's shadow. + * Shadow of the dialog box. * * @type { ?(ShadowOptions | ShadowStyle) } + * @default - Default value on 2-in-1 devices: ShadowStyle.OUTER_FLOATING_MD when the dialog box is focused and + * ShadowStyle.OUTER_FLOATING_SM otherwise. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -848,10 +964,10 @@ interface ActionSheetOptions shadow?: ShadowOptions | ShadowStyle; /** - * Defines whether to respond to the hover mode. + * Whether to enable the hover mode. * * @type { ?boolean } - * @default false + * @default false - meaning not to enable the hover mode. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -860,7 +976,7 @@ interface ActionSheetOptions enableHoverMode?: boolean; /** - * Defines the actionSheet's display area in hover mode. + * Display area of the dialog box in hover mode. * * @type { ?HoverModeAreaType } * @default HoverModeAreaType.BOTTOM_SCREEN @@ -878,7 +994,7 @@ interface ActionSheetOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onDidAppear?: Callback; @@ -889,7 +1005,7 @@ interface ActionSheetOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onDidDisappear?: Callback; @@ -900,7 +1016,7 @@ interface ActionSheetOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onWillAppear?: Callback; @@ -911,15 +1027,15 @@ interface ActionSheetOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onWillDisappear?: Callback; /** - * Determine the display level of the dialog. + * Display level of the dialog box. * * @type { ?LevelMode } - * @default LevelMode.OVERLAY + * @default LevelMode.OVERLAY - This parameter takes effect only when showInSubWindow is set to false. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -928,7 +1044,10 @@ interface ActionSheetOptions levelMode?: LevelMode; /** - * The uniqueId of any node in the router or navigation page. + * Unique ID of the node under the display level for the page-level dialog box. + *

NOTE: + *
This parameter takes effect only when levelMode is set to LevelMode.EMBEDDED. + *

* * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -939,10 +1058,10 @@ interface ActionSheetOptions levelUniqueId?: number; /** - * Determine the immersive mode of the dialog. + * Overlay effect for the page-level dialog box. * * @type { ?ImmersiveMode } - * @default ImmersiveMode.DEFAULT + * @default ImmersiveMode.DEFAULT - This parameter takes effect only when levelMode is set to LevelMode.EMBEDDED. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice diff --git a/api/@internal/component/ets/alert_dialog.d.ts b/api/@internal/component/ets/alert_dialog.d.ts index 313499a3e3c02d16e527db5466377665d732dcfa..9c7ee8c1d04a61a64d5a4ee66e40507161c11518 100644 --- a/api/@internal/component/ets/alert_dialog.d.ts +++ b/api/@internal/component/ets/alert_dialog.d.ts @@ -373,6 +373,17 @@ declare interface AlertDialogButtonBaseOptions { * @atomicservice * @since 11 */ + /** + * Enable switch of button. + * Anonymous Object Rectification. + * + * @type { ?boolean } + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ enabled?: boolean; /** @@ -394,6 +405,17 @@ declare interface AlertDialogButtonBaseOptions { * @atomicservice * @since 11 */ + /** + * Default focus switch of button. + * Anonymous Object Rectification. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ defaultFocus?: boolean; /** @@ -415,6 +437,17 @@ declare interface AlertDialogButtonBaseOptions { * @atomicservice * @since 11 */ + /** + * Style of button. + * Anonymous Object Rectification. + * + * @type { ?DialogButtonStyle } + * @default - + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ style?: DialogButtonStyle; /** @@ -434,6 +467,16 @@ declare interface AlertDialogButtonBaseOptions { * @atomicservice * @since 11 */ + /** + * Text content of button. + * Anonymous Object Rectification. + * + * @type { ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ value: ResourceStr; /** @@ -453,6 +496,16 @@ declare interface AlertDialogButtonBaseOptions { * @atomicservice * @since 11 */ + /** + * Text color of button. + * Anonymous Object Rectification. + * + * @type { ?ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ fontColor?: ResourceColor; /** @@ -472,6 +525,16 @@ declare interface AlertDialogButtonBaseOptions { * @atomicservice * @since 11 */ + /** + * Background color of button. + * Anonymous Object Rectification. + * + * @type { ?ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ backgroundColor?: ResourceColor; /** @@ -493,6 +556,7 @@ declare interface AlertDialogButtonBaseOptions { */ /** * Method executed by the callback. + * Anonymous Object Rectification. * * @type { VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -542,6 +606,16 @@ declare interface AlertDialogButtonOptions extends AlertDialogButtonBaseOptions * @atomicservice * @since 12 */ + /** + * Define whether the button responds to Enter/Space key by default. + * Anonymous Object Rectification. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ primary?: boolean; } @@ -724,6 +798,7 @@ declare interface AlertDialogParam { */ /** * Execute Cancel Function. + * Anonymous Object Rectification. * * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -919,7 +994,7 @@ declare interface AlertDialogParam { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; @@ -930,7 +1005,7 @@ declare interface AlertDialogParam { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; @@ -1075,7 +1150,7 @@ declare interface AlertDialogParam { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onDidAppear?: Callback; @@ -1086,7 +1161,7 @@ declare interface AlertDialogParam { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onDidDisappear?: Callback; @@ -1097,7 +1172,7 @@ declare interface AlertDialogParam { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onWillAppear?: Callback; @@ -1108,7 +1183,7 @@ declare interface AlertDialogParam { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onWillDisappear?: Callback; @@ -1214,6 +1289,7 @@ declare interface AlertDialogParamWithConfirm extends AlertDialogParam { */ /** * Invoke the commit function. + * Anonymous Object Rectification. * * @type { ?AlertDialogButtonBaseOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1311,6 +1387,7 @@ declare interface AlertDialogParamWithButtons extends AlertDialogParam { */ /** * First button. + * Anonymous Object Rectification. * * @type { AlertDialogButtonBaseOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1346,6 +1423,7 @@ declare interface AlertDialogParamWithButtons extends AlertDialogParam { */ /** * Second button. + * Anonymous Object Rectification. * * @type { AlertDialogButtonBaseOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full diff --git a/api/@internal/component/ets/alphabet_indexer.d.ts b/api/@internal/component/ets/alphabet_indexer.d.ts index 46a27282cbdcd4c7c115ce73dd1ee562bc781ea4..c809c09254f1853b50106f97f4de2125743f9bab 100644 --- a/api/@internal/component/ets/alphabet_indexer.d.ts +++ b/api/@internal/component/ets/alphabet_indexer.d.ts @@ -144,6 +144,16 @@ interface AlphabetIndexerOptions { * @atomicservice * @since 11 */ + /** + * Alphabetical index string array. + * Anonymous Object Rectification. + * + * @type { Array } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ arrayValue: Array; /** * ID of the selected item. @@ -169,6 +179,16 @@ interface AlphabetIndexerOptions { * @atomicservice * @since 11 */ + /** + * ID of the selected item. + * Anonymous Object Rectification. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ selected: number; } @@ -230,6 +250,7 @@ interface AlphabetIndexerInterface { /** * Construct the alphabet indexer component. * Called when the alphabet indexer component is used. + * Anonymous Object Rectification. * * @param { AlphabetIndexerOptions } options - alphabet indexer options * @returns { AlphabetIndexerAttribute } @@ -754,6 +775,7 @@ declare class AlphabetIndexerAttribute extends CommonMethodNOTE: + *
This parameter cannot be set in percentage. + *

+ * + * @type { ?(number | ResourceStr) } + * @default 10 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + fontSize?: number | ResourceStr; /** * Size of a badge. @@ -291,7 +310,26 @@ declare interface BadgeStyle { * @atomicservice * @since 11 */ - badgeSize?: number | string; + /** + * Badge size. + * For the string type, numeric string values with optional units. + * The value must be greater than or equal to 0. If the value is less than 0, the default value is used. + * Unit: vp + * + *

NOTE: + *
This parameter cannot be set in percentage. + *
If it is set to an invalid value, the default value is used. + *

+ * + * @type { ?(number | ResourceStr) } + * @default 16 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + badgeSize?: number | ResourceStr; /** * Color of the badge. @@ -318,9 +356,10 @@ declare interface BadgeStyle { * @since 10 */ /** - * Color of the badge. + * Badge color. * * @type { ?ResourceColor } + * @default Color.Red * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -338,9 +377,10 @@ declare interface BadgeStyle { * @since 10 */ /** - * Define the border color of the badge. + * Border color of the background. * * @type { ?ResourceColor } + * @default Color.Red * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -357,9 +397,12 @@ declare interface BadgeStyle { * @since 10 */ /** - * Define the border width of the badge. + * Border width of the background. + * This parameter cannot be set in percentage. + * Unit: vp * * @type { ?Length } + * @default 1 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -384,7 +427,23 @@ declare interface BadgeStyle { * @atomicservice * @since 11 */ - fontWeight?: number | FontWeight | string; + /** + * Font weight of the text. + * For the number type, the value ranges from 100 to 900, at an interval of 100. Default value: 400 + * A larger value indicates a heavier font weight. + * For the string type, only strings that represent a number. Default value: FontWeight.Normal + * + *

NOTE: + *
This parameter cannot be set in percentage. + *

+ * + * @type { ?(number | FontWeight | ResourceStr) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + fontWeight?: number | FontWeight | ResourceStr; } /** @@ -412,7 +471,7 @@ declare interface BadgeStyle { * @since 10 */ /** - * Defines the base param of badge. + * Provides basic parameters for creating a badge. * * @interface BadgeParam * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -447,9 +506,17 @@ declare interface BadgeParam { * @since 10 */ /** - * Set the display position of the prompt point. + * Position to display the badge relative to the parent component. + * + *

NOTE: + *
With the Position type, percentage values are not supported. + *
If an invalid value is set, the default value (0,0), + * which indicates the upper left corner of the component, will be used. + *
With the BadgePosition type, the position is mirrored based on the Direction property. + *

* * @type { ?(BadgePosition | Position) } + * @default BadgePosition.RightTop * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -483,7 +550,7 @@ declare interface BadgeParam { * @since 10 */ /** - * Defines the style of the Badge component, including the text color, size, dot color, and size. + * Style of the badge, including the font color, font size, badge color, and badge size. * * @type { BadgeStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -523,7 +590,7 @@ declare interface BadgeParam { * @since 10 */ /** - * Defines the badge param with count and maxCount. + * Inherits from BadgeParam and has all attributes of BadgeParam. * * @extends BadgeParam * @interface BadgeParamWithNumber @@ -559,7 +626,15 @@ declare interface BadgeParamWithNumber extends BadgeParam { * @since 10 */ /** - * Set the number of reminder messages. + * Number of notifications. + * + *

NOTE: + *
If the value is less than or equal to 0 and less than the value of maxCount, no badge is displayed. + *
Value range: [-2147483648, 2147483647] + *
If the value is out of the range, + * it will be adjusted by adding or subtracting 4294967296 to bring it back within the range. + *
If the value is not an integer, it is rounded off to the nearest integer. + *

* * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -595,9 +670,17 @@ declare interface BadgeParamWithNumber extends BadgeParam { * @since 10 */ /** - * Maximum number of messages. If the number of messages exceeds the maximum, only maxCount+ is displayed. + * Maximum number of notifications. When the maximum number is reached, only maxCount+ is displayed. + * + *

NOTE: + *
Value range: [-2147483648, 2147483647] + *
If the value is out of the range, + * it will be adjusted by adding or subtracting 4294967296 to bring it back within the range. + *
If the value is not an integer, it is rounded off to the nearest integer. + *

* * @type { ?number } + * @default 99 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -635,7 +718,7 @@ declare interface BadgeParamWithNumber extends BadgeParam { * @since 10 */ /** - * Defines the badge param with string value. + * Inherits from BadgeParam and has all attributes of BadgeParam. * * @extends BadgeParam * @interface BadgeParamWithString @@ -680,7 +763,17 @@ declare interface BadgeParamWithString extends BadgeParam { * @atomicservice * @since 11 */ - value: string; + /** + * Prompt content. + * + * @type { ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + value: ResourceStr; } /** diff --git a/api/@internal/component/ets/blank.d.ts b/api/@internal/component/ets/blank.d.ts index 9f7182728f048faa8ecb67c34736d72643d96ee6..19c7cf5a0f0814a37dfe4dc51bb82d7071d3a021 100644 --- a/api/@internal/component/ets/blank.d.ts +++ b/api/@internal/component/ets/blank.d.ts @@ -81,7 +81,8 @@ interface BlankInterface { * @since 10 */ /** - * The minimum size of the blank fill assembly on the container spindle. + * Minimum size of the Blank component in the container along the main axis.
+ * Default value: **0**. * * @param { number | string } min * @returns { BlankAttribute } @@ -157,7 +158,8 @@ declare class BlankAttribute extends CommonMethod { * @since 10 */ /** - * color: set color. + * Sets the color to fill the blank.
+ * Default value: **Color.Transparent**. * * @param { ResourceColor } value * @returns { BlankAttribute } diff --git a/api/@internal/component/ets/button.d.ts b/api/@internal/component/ets/button.d.ts index 31894becbee97034c3ebae2ea3eb69aff129920a..1818a77db92979a7e9857f42cb4f43cea67d12d0 100644 --- a/api/@internal/component/ets/button.d.ts +++ b/api/@internal/component/ets/button.d.ts @@ -1263,6 +1263,16 @@ declare class ButtonAttribute extends CommonMethod { * @atomicservice * @since 18 */ + /** + * Sets the minimum zoom-out ratio of the button text. + * + * @param { number | Resource } scale + * @returns { ButtonAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ minFontScale(scale: number | Resource): ButtonAttribute; /** @@ -1274,6 +1284,16 @@ declare class ButtonAttribute extends CommonMethod { * @atomicservice * @since 18 */ + /** + * Sets the maximum magnification of the button text. + * + * @param { number | Resource } scale + * @returns { ButtonAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ maxFontScale(scale: number | Resource): ButtonAttribute; } diff --git a/api/@internal/component/ets/calendar_picker.d.ts b/api/@internal/component/ets/calendar_picker.d.ts index fce47754f636ae7d8814abd7fa5a8b3a16423c20..2ae7c8c787cde6ac58eb41bc6fa7850ffb1c0d2e 100644 --- a/api/@internal/component/ets/calendar_picker.d.ts +++ b/api/@internal/component/ets/calendar_picker.d.ts @@ -157,7 +157,7 @@ declare interface CalendarOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ disabledDateRange?: DateRange[]; } @@ -296,6 +296,7 @@ declare class CalendarPickerAttribute extends CommonMethod } callback - callback for selected date changed. * @returns { CalendarPickerAttribute } the attribute of the CalendarPicker. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -324,7 +325,7 @@ declare class CalendarPickerAttribute extends CommonMethod } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -389,6 +391,7 @@ declare interface CalendarDialogOptions extends CalendarOptions { */ /** * Called when the Cancel button in the dialog is clicked. + * Anonymous Object Rectification. * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -414,6 +417,7 @@ declare interface CalendarDialogOptions extends CalendarOptions { */ /** * This event is triggered when a date is selected in dialog. + * Anonymous Object Rectification. * @type { ?Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -471,7 +475,7 @@ declare interface CalendarDialogOptions extends CalendarOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; @@ -482,7 +486,7 @@ declare interface CalendarDialogOptions extends CalendarOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; @@ -519,6 +523,7 @@ declare interface CalendarDialogOptions extends CalendarOptions { */ /** * Callback function when the dialog appears. + * Anonymous Object Rectification. * * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -539,6 +544,7 @@ declare interface CalendarDialogOptions extends CalendarOptions { */ /** * Callback function when the dialog disappears. + * Anonymous Object Rectification. * * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -559,6 +565,7 @@ declare interface CalendarDialogOptions extends CalendarOptions { */ /** * Callback function before the dialog openAnimation starts. + * Anonymous Object Rectification. * * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -579,6 +586,7 @@ declare interface CalendarDialogOptions extends CalendarOptions { */ /** * Callback function before the dialog closeAnimation starts. + * Anonymous Object Rectification. * * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -631,7 +639,7 @@ declare interface CalendarDialogOptions extends CalendarOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ markToday?: boolean; } diff --git a/api/@internal/component/ets/canvas.d.ts b/api/@internal/component/ets/canvas.d.ts index 65124aa016c37ca2bdc341176c610922b47f5d6f..8821d237aae769bbb3b14515abdd94b2cb83a5e1 100644 --- a/api/@internal/component/ets/canvas.d.ts +++ b/api/@internal/component/ets/canvas.d.ts @@ -246,9 +246,9 @@ declare type CanvasDirection = "inherit" | "ltr" | "rtl"; * "center": The text is centered. * "end": Where text aligns lines end (Left alignment refers to the local from left to right, * and right alignment refers to the local from right to left) - * "left": The text is left-aligned. + * "left": (Default) The text is left-aligned. * "right": The text is right-aligned. - * "start": (Default) Where the text snap line begins (Left alignment refers to the local from left to right, + * "start": Where the text snap line begins (Left alignment refers to the local from left to right, * and right alignment refers to the local from right to left) * * @typedef { "center" | "end" | "left" | "right" | "start" } CanvasTextAlign @@ -260,9 +260,9 @@ declare type CanvasDirection = "inherit" | "ltr" | "rtl"; * "center": The text is centered. * "end": Where text aligns lines end (Left alignment refers to the local from left to right, * and right alignment refers to the local from right to left) - * "left": The text is left-aligned. + * "left": (Default) The text is left-aligned. * "right": The text is right-aligned. - * "start": (Default) Where the text snap line begins (Left alignment refers to the local from left to right, + * "start": Where the text snap line begins (Left alignment refers to the local from left to right, * and right alignment refers to the local from right to left) * * @typedef { "center" | "end" | "left" | "right" | "start" } CanvasTextAlign @@ -275,9 +275,9 @@ declare type CanvasDirection = "inherit" | "ltr" | "rtl"; * "center": The text is centered. * "end": Where text aligns lines end (Left alignment refers to the local from left to right, * and right alignment refers to the local from right to left) - * "left": The text is left-aligned. + * "left": (Default) The text is left-aligned. * "right": The text is right-aligned. - * "start": (Default) Where the text snap line begins (Left alignment refers to the local from left to right, + * "start": Where the text snap line begins (Left alignment refers to the local from left to right, * and right alignment refers to the local from right to left) * * @typedef { "center" | "end" | "left" | "right" | "start" } CanvasTextAlign @@ -291,9 +291,9 @@ declare type CanvasDirection = "inherit" | "ltr" | "rtl"; * "center": The text is centered. * "end": Where text aligns lines end (Left alignment refers to the local from left to right, * and right alignment refers to the local from right to left) - * "left": The text is left-aligned. + * "left": (Default) The text is left-aligned. * "right": The text is right-aligned. - * "start": (Default) Where the text snap line begins (Left alignment refers to the local from left to right, + * "start": Where the text snap line begins (Left alignment refers to the local from left to right, * and right alignment refers to the local from right to left) * * @typedef { "center" | "end" | "left" | "right" | "start" } CanvasTextAlign @@ -506,6 +506,20 @@ declare class CanvasGradient { * @since 11 */ addColorStop(offset: number, color: string): void; + + /** + * Add a breakpoint defined by offset and color to the gradient + * + * @param { number } offset - Value between 0 and 1. + * @param { string | ColorMetrics } color - Set the gradient color. + * @throws { BusinessError } 103701 - The color's ColorSpace is not the same as the last color's. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + addColorStop(offset: number, color: string | ColorMetrics): void; } /** @@ -995,6 +1009,25 @@ declare class CanvasPath { * @since 11 */ rect(x: number, y: number, w: number, h: number): void; + + /** + * Draw rounded Rectangular Paths + * + * @param { number } x - The x-axis coordinate of the start point of the rectangle. + * @param { number } y - The y-axis coordinate of the start point of the rectangle. + * @param { number } w - Width of the rectangle. + * @param { number } h - Height of the rectangle. + * @param { number | Array } radii - A number or list specifying the radii of the circular arc to be used for the corners of the rectangle. The default value is 0. + * @throws { BusinessError } 103701 - Parameter error. Possible causes: + *
1. The param radii is a list that has zero or more than four elements. + *
2. The param radii contains negative value. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + roundRect(x: number, y: number, w: number, h: number, radii?: number | Array): void; } /** @@ -4719,7 +4752,7 @@ declare class CanvasRenderer extends CanvasPath { * Text alignment mode. For details, see {@link CanvasTextAlign}. * * @type { CanvasTextAlign } - * @default start + * @default left * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ @@ -4727,7 +4760,7 @@ declare class CanvasRenderer extends CanvasPath { * Text alignment mode. For details, see {@link CanvasTextAlign}. * * @type { CanvasTextAlign } - * @default start + * @default left * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 @@ -4736,7 +4769,7 @@ declare class CanvasRenderer extends CanvasPath { * Text alignment mode. For details, see {@link CanvasTextAlign}. * * @type { CanvasTextAlign } - * @default start + * @default left * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -4746,7 +4779,7 @@ declare class CanvasRenderer extends CanvasPath { * Text alignment mode. For details, see {@link CanvasTextAlign}. * * @type { CanvasTextAlign } - * @default start + * @default left * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -5418,6 +5451,7 @@ declare class CanvasRenderingContext2D extends CanvasRenderer { * @returns { Promise } The promise returned by the function. * @throws { BusinessError } 110001 - Image analysis feature is not supported. * @throws { BusinessError } 110002 - Image analysis is currently being executed. + * @throws { BusinessError } 110003 - Image analysis is stopped. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 diff --git a/api/@internal/component/ets/checkbox.d.ts b/api/@internal/component/ets/checkbox.d.ts index 8a2718bdf318093a455b61ae2f33bb963f569f02..10261869716ca770c8a0fa1bf81aa97e006c9bd2 100644 --- a/api/@internal/component/ets/checkbox.d.ts +++ b/api/@internal/component/ets/checkbox.d.ts @@ -264,6 +264,7 @@ interface CheckboxInterface { /** * Defines a Checkbox callback when onChange. + * Anonymous Object Rectification. * * @typedef { function } OnCheckboxChangeCallback * @param { boolean } value - selected status @@ -558,6 +559,7 @@ declare class CheckboxAttribute extends CommonMethod { */ /** * Called when the selection status changes. + * Anonymous Object Rectification. * * @param { OnCheckboxChangeCallback } callback * @returns { CheckboxAttribute } diff --git a/api/@internal/component/ets/checkboxgroup.d.ts b/api/@internal/component/ets/checkboxgroup.d.ts index 73155224395b0ad57e5aff8ebed347ebb946fd12..7d33b8fd86c87ac39076badec21bfbc102fb1940 100644 --- a/api/@internal/component/ets/checkboxgroup.d.ts +++ b/api/@internal/component/ets/checkboxgroup.d.ts @@ -405,6 +405,7 @@ interface CheckboxGroupInterface { /** * Defines a CheckboxGroup callback when onChange. + * Anonymous Object Rectification. * * @typedef { function } OnCheckboxGroupChangeCallback * @param { CheckboxGroupResult } value - checkbox group result @@ -663,6 +664,7 @@ declare class CheckboxGroupAttribute extends CommonMethod { /** @@ -280,7 +295,8 @@ declare class ColumnAttribute extends CommonMethod { * @crossplatform * @form * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ alignItems(value: HorizontalAlign): ColumnAttribute; @@ -320,7 +336,8 @@ declare class ColumnAttribute extends CommonMethod { * @crossplatform * @form * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ justifyContent(value: FlexAlign): ColumnAttribute; /** @@ -330,7 +347,8 @@ declare class ColumnAttribute extends CommonMethod { * @returns { ColumnAttribute } The attribute of the column. * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ pointLight(value: PointLightStyle): ColumnAttribute; /** @@ -342,7 +360,8 @@ declare class ColumnAttribute extends CommonMethod { * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ reverse(isReversed: Optional): ColumnAttribute; } diff --git a/api/@internal/component/ets/common.d.ts b/api/@internal/component/ets/common.d.ts index c864a1812c96f3d479a626672a7fe117238c8300..aaf98cf2a9983142adfea3e7f265dc7f44b7555c 100644 --- a/api/@internal/component/ets/common.d.ts +++ b/api/@internal/component/ets/common.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Copyright (c) 2021-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -91,6 +91,21 @@ declare interface InputCounterOptions { /** * It is the numerator bit of the percentage and used as a threshold. If the number of characters input * reaches the maximum number of characters multiplied by this threshold, the counter is displayed. + * + *

NOTE: + *
Threshold percentage for displaying the character counter. + *
The character counter is displayed when the number of characters that have been entered is greater than + * the maximum number of characters multiplied by the threshold percentage value. + *
When displayed, the character counter is in the following format: + *
Number of characters that have been entered/Maximum number of characters allowed. + *
It is visible when the number of characters entered is greater than + * the character limit multiplied by the threshold percentage value. + *
Value range: [1, 100] + *
If the value is not an integer, it is rounded down to the nearest integer. + *
If the value exceeds the valid value range, the character counter is not displayed. + *
If the value is undefined, the character counter is displayed, but this parameter has no effect. + *

+ * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -111,6 +126,16 @@ declare interface InputCounterOptions { /** * If the current input character count reaches the maximum character count and users want to exceed the * normal input, the border will turn red. If this parameter is true, the red border displayed. + * + *

NOTE: + *
Whether to highlight the text box border and character counter subscript in red. + *
If options is not set, the text box border and character counter subscript turn red + *
when the number of characters entered reaches the limit. + *
If the character counter is displayed and thresholdPercentage is set to a valid value, + * the text box border and character counter subscript turn red when the number of entered characters exceeds the limit. + *
The value true (default) means to highlight the text box border and character counter subscript in red. + *

+ * * @type { ?boolean } * @default true * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1053,7 +1078,13 @@ declare interface IMonitorValue { } /** - * Define AnimatableArithmetic interface + * The **AnimatableArithmetic** API defines the animation operation rules for + * non-number data types. To animate non-number data (such as arrays, structs, + * and colors), implement the addition, subtraction, multiplication, and + * equality judgment functions in the **AnimatableArithmetic\** API. + * In this way, the data can be involved in an interpolation operation of the + * animation and identify whether the data changes, that is, the non-number data + * is defined as the types that implement the **AnimatableArithmetic\** API. * * @interface AnimatableArithmetic * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1061,7 +1092,13 @@ declare interface IMonitorValue { * @since 10 */ /** - * Define AnimatableArithmetic interface + * The **AnimatableArithmetic** API defines the animation operation rules for + * non-number data types. To animate non-number data (such as arrays, structs, + * and colors), implement the addition, subtraction, multiplication, and + * equality judgment functions in the **AnimatableArithmetic\** API. + * In this way, the data can be involved in an interpolation operation of the + * animation and identify whether the data changes, that is, the non-number data + * is defined as the types that implement the **AnimatableArithmetic\** API. * * @interface AnimatableArithmetic * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1071,7 +1108,7 @@ declare interface IMonitorValue { */ declare interface AnimatableArithmetic { /** - * Define plus method + * Defines the addition rule of the data type. * * @param { AnimatableArithmetic } rhs - another value * @returns { AnimatableArithmetic } new value which implements AnimatableArithmetic interface @@ -1080,7 +1117,7 @@ declare interface IMonitorValue { * @since 10 */ /** - * Define plus method + * Defines the addition rule of the data type. * * @param { AnimatableArithmetic } rhs - another value * @returns { AnimatableArithmetic } new value which implements AnimatableArithmetic interface @@ -1092,7 +1129,7 @@ declare interface IMonitorValue { plus(rhs: AnimatableArithmetic): AnimatableArithmetic; /** - * Define subtract method + * Defines the subtraction rule of the data type. * * @param { AnimatableArithmetic } rhs - another value * @returns { AnimatableArithmetic } new value which implements AnimatableArithmetic interface @@ -1101,7 +1138,7 @@ declare interface IMonitorValue { * @since 10 */ /** - * Define subtract method + * Defines the subtraction rule of the data type. * * @param { AnimatableArithmetic } rhs - another value * @returns { AnimatableArithmetic } new value which implements AnimatableArithmetic interface @@ -1113,7 +1150,7 @@ declare interface IMonitorValue { subtract(rhs: AnimatableArithmetic): AnimatableArithmetic; /** - * Define multiply method + * Defines the multiplication rule of the data type. * * @param { number } scale - scale value * @returns { AnimatableArithmetic } new value which implements AnimatableArithmetic interface @@ -1122,7 +1159,7 @@ declare interface IMonitorValue { * @since 10 */ /** - * Define multiply method + * Defines the multiplication rule of the data type. * * @param { number } scale - scale value * @returns { AnimatableArithmetic } new value which implements AnimatableArithmetic interface @@ -1134,7 +1171,7 @@ declare interface IMonitorValue { multiply(scale: number): AnimatableArithmetic; /** - * Define equals method + * Defines the equality judgment rule of the data type. * * @param { AnimatableArithmetic } rhs - another value * @returns { boolean } is equals @@ -1143,7 +1180,7 @@ declare interface IMonitorValue { * @since 10 */ /** - * Define equals method + * Defines the equality judgment rule of the data type. * * @param { AnimatableArithmetic } rhs - another value * @returns { boolean } is equals @@ -1269,7 +1306,14 @@ declare const LocalStorageProp: (value: string) => PropertyDecorator; * Obtains the Context object associated with a component on the page. * * @param { Object } component - indicate the component on the page. + * If no component is passed in or the passed-in parameter type is invalid, the default context is returned. + * The default context is the context obtained by tracing the call chain of the API. + * If this API is used in an asynchronous callback or not initially called on the current page, the context of the + * instance may fail to be traced. In this case, undefined is returned. * @returns { Context } + * The context type depends on the ability type. + * For example, if this API is called on a page of the UIAbility, the return value type is UIAbilityContext; + * if this API is called on a page of the ExtensionAbility, the return value type is ExtensionContext. * @syscap SystemCapability.ArkUI.ArkUI.Full * @StageModelOnly * @since 9 @@ -1278,7 +1322,14 @@ declare const LocalStorageProp: (value: string) => PropertyDecorator; * Obtains the Context object associated with a component on the page. * * @param { Object } component - indicate the component on the page. + * If no component is passed in or the passed-in parameter type is invalid, the default context is returned. + * The default context is the context obtained by tracing the call chain of the API. + * If this API is used in an asynchronous callback or not initially called on the current page, the context of the + * instance may fail to be traced. In this case, undefined is returned. * @returns { Context } + * The context type depends on the ability type. + * For example, if this API is called on a page of the UIAbility, the return value type is UIAbilityContext; + * if this API is called on a page of the ExtensionAbility, the return value type is ExtensionContext. * @syscap SystemCapability.ArkUI.ArkUI.Full * @StageModelOnly * @crossplatform @@ -1288,7 +1339,14 @@ declare const LocalStorageProp: (value: string) => PropertyDecorator; * Obtains the Context object associated with a component on the page. * * @param { Object } component - indicate the component on the page. + * If no component is passed in or the passed-in parameter type is invalid, the default context is returned. + * The default context is the context obtained by tracing the call chain of the API. + * If this API is used in an asynchronous callback or not initially called on the current page, the context of the + * instance may fail to be traced. In this case, undefined is returned. * @returns { Context } + * The context type depends on the ability type. + * For example, if this API is called on a page of the UIAbility, the return value type is UIAbilityContext; + * if this API is called on a page of the ExtensionAbility, the return value type is ExtensionContext. * @syscap SystemCapability.ArkUI.ArkUI.Full * @StageModelOnly * @crossplatform @@ -1741,7 +1799,7 @@ declare interface Rectangle { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare interface ExpectedFrameRateRange { /** @@ -1766,7 +1824,7 @@ declare interface ExpectedFrameRateRange { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ min: number, /** @@ -1791,7 +1849,7 @@ declare interface ExpectedFrameRateRange { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ max: number, /** @@ -1822,7 +1880,7 @@ declare interface ExpectedFrameRateRange { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ expected: number, } @@ -1831,6 +1889,11 @@ declare interface ExpectedFrameRateRange { * global $r function * * @param { string } value + * The value format is 'belonging.type.name'. + * belonging: group to which the resource belongs, which can be 'sys' or 'app'. + * type: resource type, which can be 'boolean', 'color', 'float', 'intarray', 'integer', 'pattern', 'plural', + * 'strarray', 'string', or 'media'. + * name: resource name, which is determined during resource definition. * @param { any[] } params * @returns { Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1840,6 +1903,11 @@ declare interface ExpectedFrameRateRange { * global $r function * * @param { string } value + * The value format is 'belonging.type.name'. + * belonging: group to which the resource belongs, which can be 'sys' or 'app'. + * type: resource type, which can be 'boolean', 'color', 'float', 'intarray', 'integer', 'pattern', 'plural', + * 'strarray', 'string', or 'media'. + * name: resource name, which is determined during resource definition. * @param { any[] } params * @returns { Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1850,6 +1918,11 @@ declare interface ExpectedFrameRateRange { * global $r function * * @param { string } value + * The value format is 'belonging.type.name'. + * belonging: group to which the resource belongs, which can be 'sys' or 'app'. + * type: resource type, which can be 'boolean', 'color', 'float', 'intarray', 'integer', 'pattern', 'plural', + * 'strarray', 'string', or 'media'. + * name: resource name, which is determined during resource definition. * @param { any[] } params * @returns { Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1861,6 +1934,11 @@ declare interface ExpectedFrameRateRange { * global $r function * * @param { string } value + * The value format is 'belonging.type.name'. + * belonging: group to which the resource belongs, which can be 'sys' or 'app'. + * type: resource type, which can be 'boolean', 'color', 'float', 'intarray', 'integer', 'pattern', 'plural', + * 'strarray', 'string', or 'media'. + * name: resource name, which is determined during resource definition. * @param { any[] } params * @returns { Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1875,6 +1953,10 @@ declare function $r(value: string, ...params: any[]): Resource; * global $rawfile function * * @param { string } value + * name of the file in the resources/rawfile directory of the project. + * When referencing resources of the Resource type, make sure the data type is the same as that of the attribute method. + * For example, if an attribute method supports the string | Resource types, the data type of the Resource type must be + * string. * @returns { Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 @@ -1883,6 +1965,10 @@ declare function $r(value: string, ...params: any[]): Resource; * global $rawfile function * * @param { string } value + * name of the file in the resources/rawfile directory of the project. + * When referencing resources of the Resource type, make sure the data type is the same as that of the attribute method. + * For example, if an attribute method supports the string | Resource types, the data type of the Resource type must be + * string. * @returns { Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form @@ -1892,6 +1978,10 @@ declare function $r(value: string, ...params: any[]): Resource; * global $rawfile function * * @param { string } value + * name of the file in the resources/rawfile directory of the project. + * When referencing resources of the Resource type, make sure the data type is the same as that of the attribute method. + * For example, if an attribute method supports the string | Resource types, the data type of the Resource type must be + * string. * @returns { Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1902,6 +1992,10 @@ declare function $r(value: string, ...params: any[]): Resource; * global $rawfile function * * @param { string } value + * name of the file in the resources/rawfile directory of the project. + * When referencing resources of the Resource type, make sure the data type is the same as that of the attribute method. + * For example, if an attribute method supports the string | Resource types, the data type of the Resource type must be + * string. * @returns { Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1921,7 +2015,8 @@ declare function $rawfile(value: string): Resource; */ declare enum AccessibilitySamePageMode { /** - * the first page and root page event is not send.but if application load new page whith navigation,the page event will be sent. this mode is to solve skipping focus + * the first page and root page event is not send.but if application load new page whith navigation,the page event will be sent. + * this mode is to solve skipping focus * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -3088,6 +3183,89 @@ declare enum AccessibilityRoleType { */ declare type AccessibilityFocusCallback = (isFocus: boolean) => void; +/** + * Enum for accessibility action type + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +declare enum AccessibilityAction { + /** + * undefined action type + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + UNDEFINED_ACTION = 0, + /** + * accessibility click action + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + ACCESSIBILITY_CLICK = 1, +} + +/** + * Enum for the result of accessibility action intercept function + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +declare enum AccessibilityActionInterceptResult { + /** + * intercept the accessibility action + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + ACTION_INTERCEPT = 0, + /** + * the accessibility action can be continued + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + ACTION_CONTINUE = 1, + /** + * the accessibility action need to bubble up for execution + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + ACTION_RISE = 2, +} + +/** + * Defines the callback type used in accessibility action intercept. + * The value of action indicates the accessibility action type. + * @typedef { function } AccessibilityActionInterceptCallback + * @param { AccessibilityAction } action - the enum of accessibility action type. + * @returns { AccessibilityActionInterceptResult } the result of continuing to execute the action or interrupting it or bubbling up + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +declare type AccessibilityActionInterceptCallback = (action: AccessibilityAction) => AccessibilityActionInterceptResult; + /** * Enum for FinishCallbackType. * @@ -3109,7 +3287,7 @@ declare type AccessibilityFocusCallback = (isFocus: boolean) => void; */ declare enum FinishCallbackType { /** - * When the entire animation ends and will be removed immediately, the callback is triggered. + * The callback is invoked when the entire animation is removed once it has finished. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3117,7 +3295,7 @@ declare enum FinishCallbackType { * @since 11 */ /** - * When the entire animation ends and will be removed immediately, the callback is triggered. + * The callback is invoked when the entire animation is removed once it has finished. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3135,7 +3313,8 @@ declare enum FinishCallbackType { * @since 11 */ /** - * When the animation is logically down but may still be in its long tail, the callback is triggered. + * The callback is invoked when the animation logically enters the falling state, + * though it may still be in its long tail state. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3175,7 +3354,7 @@ declare enum TouchTestStrategy { * @since 11 */ /** - * Do framework touch test. + * Custom dispatch has no effect; the system distributes events based on the hit status of the current node. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3194,7 +3373,8 @@ declare enum TouchTestStrategy { * @since 11 */ /** - * Specify the component to do touch test and follow the framework touch test + * The specified event is forwarded to a particular child node, and the system determines whether to + * distribute the event to other sibling nodes. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3213,7 +3393,8 @@ declare enum TouchTestStrategy { * @since 11 */ /** - * Specify the component to do touch test and not follow the framework touch test + * The specified event is forwarded to a particular child node, and the system no longer distributes + * the event to other sibling nodes. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3301,6 +3482,7 @@ declare interface AnimateParam { /** * Animation playback speed. A larger value indicates faster animation playback, and a smaller value indicates slower * animation playback. The value 0 means that there is no animation. + *
Default value: **1.0**. * * @type { ?number } * @default 1.0 @@ -3310,6 +3492,7 @@ declare interface AnimateParam { /** * Animation playback speed. A larger value indicates faster animation playback, and a smaller value indicates slower * animation playback. The value 0 means that there is no animation. + *
Default value: **1.0**. * * @type { ?number } * @default 1.0 @@ -3370,7 +3553,7 @@ declare interface AnimateParam { curve?: Curve | string | ICurve; /** - * Animation plays with delay,when set to a negative number, the animation plays in advance. + * Animation delay time, in ms. By default, the animation has no delay. * * @type { ?number } * @default 0 @@ -3378,7 +3561,7 @@ declare interface AnimateParam { * @since 7 */ /** - * Animation delay time, in ms. + * Animation delay time, in ms. By default, the animation has no delay. * * @type { ?number } * @default 0 @@ -3387,7 +3570,7 @@ declare interface AnimateParam { * @since 10 */ /** - * Animation delay time, in ms. + * Animation delay time, in ms. By default, the animation has no delay. * * @type { ?number } * @default 0 @@ -3399,7 +3582,9 @@ declare interface AnimateParam { delay?: number; /** - * Animation iterations. When set to -1, the animation playing it repeatedly. The value range is greater than or equal to -1. + * Number of times that the animation is played. By default, the animation is played once. + * The value **-1** indicates that the animation is played for an unlimited number of times. + * The value **0** indicates that there is no animation. * * @type { ?number } * @default 1 @@ -3407,7 +3592,9 @@ declare interface AnimateParam { * @since 7 */ /** - * Animation iterations. When set to -1, the animation playing it repeatedly. The value range is greater than or equal to -1. + * Number of times that the animation is played. By default, the animation is played once. + * The value **-1** indicates that the animation is played for an unlimited number of times. + * The value **0** indicates that there is no animation. * * @type { ?number } * @default 1 @@ -3416,7 +3603,9 @@ declare interface AnimateParam { * @since 10 */ /** - * Animation iterations. When set to -1, the animation playing it repeatedly. The value range is greater than or equal to -1. + * Number of times that the animation is played. By default, the animation is played once. + * The value **-1** indicates that the animation is played for an unlimited number of times. + * The value **0** indicates that there is no animation. * * @type { ?number } * @default 1 @@ -3428,7 +3617,7 @@ declare interface AnimateParam { iterations?: number; /** - * Animation playback mode. By default, the animation is played from the beginning after the playback is complete. + * Playback mode. By default, the animation is played from the beginning after the playback is complete. * * @type { ?PlayMode } * @default PlayMode.Normal @@ -3436,7 +3625,7 @@ declare interface AnimateParam { * @since 7 */ /** - * Animation playback mode. By default, the animation is played from the beginning after the playback is complete. + * Playback mode. By default, the animation is played from the beginning after the playback is complete. * * @type { ?PlayMode } * @default PlayMode.Normal @@ -3445,7 +3634,7 @@ declare interface AnimateParam { * @since 9 */ /** - * Animation playback mode. By default, the animation is played from the beginning after the playback is complete. + * Playback mode. By default, the animation is played from the beginning after the playback is complete. * * @type { ?PlayMode } * @default PlayMode.Normal @@ -3455,7 +3644,7 @@ declare interface AnimateParam { * @since 10 */ /** - * Animation playback mode. By default, the animation is played from the beginning after the playback is complete. + * Playback mode. By default, the animation is played from the beginning after the playback is complete. * * @type { ?PlayMode } * @default PlayMode.Normal @@ -3468,14 +3657,14 @@ declare interface AnimateParam { playMode?: PlayMode; /** - * Callback invoked when the animation playback is complete or the ability is about to enter the background. + * Callback invoked when the animation playback is complete. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Callback invoked when the animation playback is complete or the ability is about to enter the background. + * Callback invoked when the animation playback is complete. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3483,7 +3672,7 @@ declare interface AnimateParam { * @since 9 */ /** - * Callback invoked when the animation playback is complete or the ability is about to enter the background. + * Callback invoked when the animation playback is complete. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3492,7 +3681,7 @@ declare interface AnimateParam { * @since 10 */ /** - * Callback invoked when the animation playback is complete or the ability is about to enter the background. + * Callback invoked when the animation playback is complete. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3504,7 +3693,7 @@ declare interface AnimateParam { onFinish?: () => void; /** - * Define the type of onFinish callback in animation. + * Type of the **onFinish** callback. * * @type { ?FinishCallbackType } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3513,7 +3702,8 @@ declare interface AnimateParam { * @since 11 */ /** - * Define the type of onFinish callback in animation. + * Type of the **onFinish** callback. + * Default value: FinishCallbackType.REMOVED. * * @type { ?FinishCallbackType } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3525,14 +3715,14 @@ declare interface AnimateParam { finishCallbackType?: FinishCallbackType; /** - * Indicates expectedFrameRateRange including minimum、maximum and expected frame rate. + * Expected frame rate range of the animation. * * @type { ?ExpectedFrameRateRange } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 11 */ /** - * Indicates expectedFrameRateRange including minimum、maximum and expected frame rate. + * Expected frame rate range of the animation. * * @type { ?ExpectedFrameRateRange } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3571,20 +3761,24 @@ declare interface AnimateParam { */ interface ICurve { /** - * Get curve value by fraction. + * Implements calculation. * - * @param { number } fraction - Indicates the current normalized time parameter. Value range: [0, 1]. - * Note: If the value is less than 0, it will be processed as 0. If the value is greater than 1, 1 is used. + * @param { number } fraction - Current normalized time. Value range: [0, 1]. + *

**NOTE**: + *
A value less than 0 is handed as **0**. A value greater than 1 is handed as **1**. + *

* @returns { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Get curve value by fraction. + * Implements calculation. * - * @param { number } fraction - Indicates the current normalized time parameter. Value range: [0, 1]. - * Note: If the value is less than 0, it will be processed as 0. If the value is greater than 1, 1 is used. + * @param { number } fraction - Current normalized time. Value range: [0, 1]. + *

**NOTE**: + *
A value less than 0 is handed as **0**. A value greater than 1 is handed as **1**. + *

* @returns { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3592,10 +3786,12 @@ interface ICurve { * @since 10 */ /** - * Get curve value by fraction. + * Implements calculation. * - * @param { number } fraction - Indicates the current normalized time parameter. Value range: [0, 1]. - * Note: If the value is less than 0, it will be processed as 0. If the value is greater than 1, 1 is used. + * @param { number } fraction - Current normalized time. Value range: [0, 1]. + *

**NOTE**: + *
A value less than 0 is handed as **0**. A value greater than 1 is handed as **1**. + *

* @returns { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3632,14 +3828,22 @@ interface ICurve { */ declare interface MotionPathOptions { /** - * The path info. + * Motion path of the translation animation. + * The **svg** path string is used. + * In the value, **start** and **end** can be used in place of the start point and end point, + * for example, **'Mstart.x start.y L50 50 Lend.x end.y Z'**. + * If this parameter is set to an empty string, the path animation is not set. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The path info. + * Motion path of the translation animation. + * The **svg** path string is used. + * In the value, **start** and **end** can be used in place of the start point and end point, + * for example, **'Mstart.x start.y L50 50 Lend.x end.y Z'**. + * If this parameter is set to an empty string, the path animation is not set. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3647,7 +3851,11 @@ declare interface MotionPathOptions { * @since 10 */ /** - * The path info. + * Motion path of the translation animation. + * The **svg** path string is used. + * In the value, **start** and **end** can be used in place of the start point and end point, + * for example, **'Mstart.x start.y L50 50 Lend.x end.y Z'**. + * If this parameter is set to an empty string, the path animation is not set. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3658,7 +3866,9 @@ declare interface MotionPathOptions { path: string; /** - * The origin point info in range [0,1). + * Start point of the motion path. + * Value range: [0, 1]. + * A value less than 0 or greater than 1 evaluates to the default value **0**. * * @type { ?number } * @default 0.0 @@ -3666,7 +3876,9 @@ declare interface MotionPathOptions { * @since 7 */ /** - * The origin point info in range [0,1). + * Start point of the motion path. + * Value range: [0, 1]. + * A value less than 0 or greater than 1 evaluates to the default value **0**. * * @type { ?number } * @default 0.0 @@ -3675,7 +3887,9 @@ declare interface MotionPathOptions { * @since 10 */ /** - * The origin point info in range [0,1). + * Start point of the motion path. + * Value range: [0, 1]. + * A value less than 0 or greater than 1 evaluates to the default value **0**. * * @type { ?number } * @default 0.0 @@ -3687,7 +3901,10 @@ declare interface MotionPathOptions { from?: number; /** - * he distance point info in range (0,1]. + * End point of the motion path. + * Value range: [0, 1]. + * A value less than 0 or greater than 1 evaluates to the default value **1**, + * provided that the value of **to** is greater than or equal to the value of **from**. * * @type { ?number } * @default 1.0 @@ -3695,7 +3912,10 @@ declare interface MotionPathOptions { * @since 7 */ /** - * he distance point info in range (0,1]. + * End point of the motion path. + * Value range: [0, 1]. + * A value less than 0 or greater than 1 evaluates to the default value **1**, + * provided that the value of **to** is greater than or equal to the value of **from**. * * @type { ?number } * @default 1.0 @@ -3704,7 +3924,10 @@ declare interface MotionPathOptions { * @since 10 */ /** - * The distance point info in range (0,1]. + * End point of the motion path. + * Value range: [0, 1]. + * A value less than 0 or greater than 1 evaluates to the default value **1**, + * provided that the value of **to** is greater than or equal to the value of **from**. * * @type { ?number } * @default 1.0 @@ -3716,7 +3939,7 @@ declare interface MotionPathOptions { to?: number; /** - * The rotate info. + * Whether to rotate along the path. * * @type { ?boolean } * @default false @@ -3724,7 +3947,7 @@ declare interface MotionPathOptions { * @since 7 */ /** - * The rotate info. + * Whether to rotate along the path. * * @type { ?boolean } * @default false @@ -3733,7 +3956,7 @@ declare interface MotionPathOptions { * @since 10 */ /** - * The rotate info. + * Whether to rotate along the path. * * @type { ?boolean } * @default false @@ -3779,7 +4002,10 @@ declare interface sharedTransitionOptions { * @since 7 */ /** - * Animation duration, in ms. + * Animation duration. + *
Default value: **1000**. + *
Unit: ms. + *
Value range: [0, +∞). * * @type { ?number } * @default 1000 @@ -3788,7 +4014,10 @@ declare interface sharedTransitionOptions { * @since 10 */ /** - * Animation duration, in ms. + * Animation duration. + *
Default value: **1000**. + *
Unit: ms. + *
Value range: [0, +∞). * * @type { ?number } * @default 1000 @@ -3800,7 +4029,7 @@ declare interface sharedTransitionOptions { duration?: number; /** - * Animation duration, in ms. + * Animation curve.
You are advised to specify the curve using the Curve or ICurve type. * * @type { ?(Curve | string | ICurve) } * @default 1000 @@ -3808,7 +4037,11 @@ declare interface sharedTransitionOptions { * @since 7 */ /** - * Animation curve. + * Animation curve.
You are advised to specify the curve using the **Curve** or + * ** ICurve** type.
For the string type, this parameter indicates an animation + * interpolation curve. For available values, see the **curve** parameter in + * AnimateParam. + *
Default value: **Curve.Linear**. * * @type { ?(Curve | string | ICurve) } * @default 1000 @@ -3817,7 +4050,11 @@ declare interface sharedTransitionOptions { * @since 10 */ /** - * Animation curve. + * Animation curve.
You are advised to specify the curve using the **Curve** or + * ** ICurve** type.
For the string type, this parameter indicates an animation + * interpolation curve. For available values, see the **curve** parameter in + * AnimateParam. + *
Default value: **Curve.Linear**. * * @type { ?(Curve | string | ICurve) } * @default 1000 @@ -4540,6 +4777,18 @@ declare interface SweepGradientOptions { * @since 18 */ colors: Array<[ResourceColor, number]>; + + /** + * Defines color description in ColorMetrics format for gradients. + * This parameter takes precedence over colors parameter. + * + * @type { ?Array<[ColorMetrics, number]> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + metricsColors?: Array<[ColorMetrics, number]>; /** * repeating:repeating. The default value is false @@ -4942,14 +5191,18 @@ declare enum TransitionHierarchyStrategy { */ declare interface TranslateOptions { /** - * The param of x direction. + * Translation distance along the x-axis. + * For the number type, the unit is VP, and the value range is (-∞, +∞). + * For the string type, the value follows the format of Length string type. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of x direction. + * Translation distance along the x-axis. + * For the number type, the unit is VP, and the value range is (-∞, +∞). + * For the string type, the value follows the format of Length string type. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -4957,7 +5210,9 @@ declare interface TranslateOptions { * @since 9 */ /** - * The param of x direction. + * Translation distance along the x-axis. + * For the number type, the unit is VP, and the value range is (-∞, +∞). + * For the string type, the value follows the format of Length string type. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -4966,7 +5221,9 @@ declare interface TranslateOptions { * @since 10 */ /** - * The param of x direction. + * Translation distance along the x-axis. + * For the number type, the unit is VP, and the value range is (-∞, +∞). + * For the string type, the value follows the format of length string type. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -4978,14 +5235,18 @@ declare interface TranslateOptions { x?: number | string; /** - * The param of y direction. + * Translation distance along the y-axis. + * For the number type, the unit is VP, and the value range is (-∞, +∞). + * For the string type, the value follows the format of length string type. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of y direction. + * Translation distance along the y-axis. + * For the number type, the unit is VP, and the value range is (-∞, +∞). + * For the string type, the value follows the format of length string type. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -4993,7 +5254,9 @@ declare interface TranslateOptions { * @since 9 */ /** - * The param of y direction. + * Translation distance along the y-axis. + * For the number type, the unit is VP, and the value range is (-∞, +∞). + * For the string type, the value follows the format of length string type. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5002,7 +5265,9 @@ declare interface TranslateOptions { * @since 10 */ /** - * The param of y direction. + * Translation distance along the y-axis. + * For the number type, the unit is VP, and the value range is (-∞, +∞). + * For the string type, the value follows the format of length string type. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5014,14 +5279,16 @@ declare interface TranslateOptions { y?: number | string; /** - * The param of z direction. + * Distance to translate along the z-axis. The value is a floating + * point number, the default value is 0.0, and the unit is px. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of z direction. + * Distance to translate along the z-axis. The value is a floating + * point number, the default value is 0.0, and the unit is px. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5029,7 +5296,8 @@ declare interface TranslateOptions { * @since 9 */ /** - * The param of z direction. + * Distance to translate along the z-axis. The value is a floating + * point number, the default value is 0.0, and the unit is px. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5038,7 +5306,8 @@ declare interface TranslateOptions { * @since 10 */ /** - * The param of z direction. + * Distance to translate along the z-axis. The value is a floating + * point number, the default value is 0.0, and the unit is px. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5086,14 +5355,20 @@ declare interface TranslateOptions { */ declare interface ScaleOptions { /** - * The param of x direction. + * Scale ratio along the x-axis. + * x > 1: The component is scaled up along the x-axis. + * 0 < x < 1: The component is scaled down along the x-axis. + * x < 0: The component is scaled in the reverse direction of the x-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of x direction. + * Scale ratio along the x-axis. + * x > 1: The component is scaled up along the x-axis. + * 0 < x < 1: The component is scaled down along the x-axis. + * x < 0: The component is scaled in the reverse direction of the x-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5101,7 +5376,10 @@ declare interface ScaleOptions { * @since 9 */ /** - * The param of x direction. + * Scale ratio along the x-axis. + * x > 1: The component is scaled up along the x-axis. + * 0 < x < 1: The component is scaled down along the x-axis. + * x < 0: The component is scaled in the reverse direction of the x-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5110,7 +5388,10 @@ declare interface ScaleOptions { * @since 10 */ /** - * The param of x direction. + * Scale ratio along the x-axis. + * x > 1: The component is scaled up along the x-axis. + * 0 < x < 1: The component is scaled down along the x-axis. + * x < 0: The component is scaled in the reverse direction of the x-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5122,14 +5403,20 @@ declare interface ScaleOptions { x?: number; /** - * The param of y direction. + * Scale ratio along the y-axis. + * y > 1: The component is scaled up along the y-axis. + * 0 < y < 1: The component is scaled down along the y-axis. + * y < 0: The component is scaled in the reverse direction of the y-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of y direction. + * Scale ratio along the y-axis. + * y > 1: The component is scaled up along the y-axis. + * 0 < y < 1: The component is scaled down along the y-axis. + * y < 0: The component is scaled in the reverse direction of the y-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5137,7 +5424,10 @@ declare interface ScaleOptions { * @since 9 */ /** - * The param of y direction. + * Scale ratio along the y-axis. + * y > 1: The component is scaled up along the y-axis. + * 0 < y < 1: The component is scaled down along the y-axis. + * y < 0: The component is scaled in the reverse direction of the y-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5146,7 +5436,10 @@ declare interface ScaleOptions { * @since 10 */ /** - * The param of y direction. + * Scale ratio along the y-axis. + * y > 1: The component is scaled up along the y-axis. + * 0 < y < 1: The component is scaled down along the y-axis. + * y < 0: The component is scaled in the reverse direction of the y-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5158,14 +5451,18 @@ declare interface ScaleOptions { y?: number; /** - * The param of z direction. + * Scale ratio along the z-axis. z > 1: The component is scaled up along the z-axis. + *
0 < z < 1: The component is scaled down along the z-axis. + *
z < 0: The component is scaled in the reverse direction of the z-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of z direction. + * Scale ratio along the z-axis. z > 1: The component is scaled up along the z-axis. + *
0 < z < 1: The component is scaled down along the z-axis. + *
z < 0: The component is scaled in the reverse direction of the z-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5173,7 +5470,9 @@ declare interface ScaleOptions { * @since 9 */ /** - * The param of z direction. + * Scale ratio along the z-axis. z > 1: The component is scaled up along the z-axis. + *
0 < z < 1: The component is scaled down along the z-axis. + *
z < 0: The component is scaled in the reverse direction of the z-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5182,7 +5481,9 @@ declare interface ScaleOptions { * @since 10 */ /** - * The param of z direction. + * Scale ratio along the z-axis. z > 1: The component is scaled up along the z-axis. + *
0 < z < 1: The component is scaled down along the z-axis. + *
z < 0: The component is scaled in the reverse direction of the z-axis. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5194,14 +5495,14 @@ declare interface ScaleOptions { z?: number; /** - * The param of center point of x. + * X coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of center point of x. + * X coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5209,7 +5510,7 @@ declare interface ScaleOptions { * @since 9 */ /** - * The param of center point of x. + * X coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5218,7 +5519,7 @@ declare interface ScaleOptions { * @since 10 */ /** - * The param of center point of x. + * X coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5230,14 +5531,14 @@ declare interface ScaleOptions { centerX?: number | string; /** - * The param of center point of y. + * Y coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of center point of y. + * Y coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5245,7 +5546,7 @@ declare interface ScaleOptions { * @since 9 */ /** - * The param of center point of y. + * Y coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5254,7 +5555,7 @@ declare interface ScaleOptions { * @since 10 */ /** - * The param of center point of y. + * Y coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5312,7 +5613,9 @@ declare interface AlignRuleOption { * @since 10 */ /** - * The param of left align. + * Left alignment. + *
anchor: ID of the component that functions as the anchor point. + *
align: alignment mode relative to the anchor component. * * @type { ?object } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5341,7 +5644,9 @@ declare interface AlignRuleOption { * @since 10 */ /** - * The param of right align. + * Right alignment. + *
anchor: ID of the component that functions as the anchor point. + *
align: alignment mode relative to the anchor component. * * @type { ?object } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5370,7 +5675,9 @@ declare interface AlignRuleOption { * @since 10 */ /** - * The param of middle align. + * Horizontal center alignment. + *
anchor: ID of the component that functions as the anchor point. + *
align: alignment mode relative to the anchor component. * * @type { ?object } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5399,7 +5706,9 @@ declare interface AlignRuleOption { * @since 10 */ /** - * The param of top align. + * Top alignment. + *
anchor: ID of the component that functions as the anchor point. + *
align: alignment mode relative to the anchor component. * * @type { ?object } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5427,7 +5736,9 @@ declare interface AlignRuleOption { * @since 10 */ /** - * The param of bottom align. + * Bottom alignment. + *
anchor: ID of the component that functions as the anchor point. + *
align: alignment mode relative to the anchor component. * * @type { ?object } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5455,7 +5766,9 @@ declare interface AlignRuleOption { * @since 10 */ /** - * The param of center align. + * Vertical center alignment. + *
anchor: ID of the component that functions as the anchor point. + *
align: alignment mode relative to the anchor component. * * @type { ?object } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5477,7 +5790,8 @@ declare interface AlignRuleOption { * @since 11 */ /** - * Defines the bias ratio in horizontal and vertical direction. + * Offset of the component under the anchor constraints. + *
The value is the ratio of the distance to the left/upper anchor to the total distance between anchors. * * @type { ?Bias } * @default {horizontal:0.5,vertical:0.5} @@ -5501,7 +5815,7 @@ declare interface AlignRuleOption { */ declare interface LocalizedHorizontalAlignParam { /** - * The anchor of localized align param. + * ID of the component that serves as the anchor. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5512,7 +5826,7 @@ declare interface LocalizedHorizontalAlignParam { anchor: string; /** - * The align of localized align param. + * Horizontal alignment mode relative to the anchor component. * * @type { HorizontalAlign } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5534,7 +5848,7 @@ declare interface LocalizedHorizontalAlignParam { */ declare interface LocalizedVerticalAlignParam { /** - * The anchor of localized align param. + * ID of the component that serves as the anchor. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5545,7 +5859,7 @@ declare interface LocalizedVerticalAlignParam { anchor: string; /** - * The align of localized align param. + * Vertical alignment mode relative to the anchor component. * * @type { VerticalAlign } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5567,7 +5881,7 @@ declare interface LocalizedVerticalAlignParam { */ declare interface LocalizedAlignRuleOptions { /** - * The param of start align. + * Left alignment with left-to-right scripts and right alignment with right-to-left scripts in the horizontal direction. * * @type { ?LocalizedHorizontalAlignParam } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5578,7 +5892,7 @@ declare interface LocalizedAlignRuleOptions { start?: LocalizedHorizontalAlignParam; /** - * The param of end align. + * Right alignment with left-to-right scripts and left alignment with right-to-left scripts in the horizontal direction. * * @type { ?LocalizedHorizontalAlignParam } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5589,7 +5903,7 @@ declare interface LocalizedAlignRuleOptions { end?: LocalizedHorizontalAlignParam; /** - * The param of middle align. + * Center alignment in the horizontal direction. * * @type { ?LocalizedHorizontalAlignParam } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5600,7 +5914,7 @@ declare interface LocalizedAlignRuleOptions { middle?: LocalizedHorizontalAlignParam; /** - * The param of top align. + * Top alignment in the vertical direction. * * @type { ?LocalizedVerticalAlignParam } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5611,7 +5925,7 @@ declare interface LocalizedAlignRuleOptions { top?: LocalizedVerticalAlignParam; /** - * The param of bottom align. + * Bottom alignment in the vertical direction. * * @type { ?LocalizedVerticalAlignParam } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5622,7 +5936,7 @@ declare interface LocalizedAlignRuleOptions { bottom?: LocalizedVerticalAlignParam; /** - * The param of center align. + * Center alignment in the vertical direction. * * @type { ?LocalizedVerticalAlignParam } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5633,7 +5947,8 @@ declare interface LocalizedAlignRuleOptions { center?: LocalizedVerticalAlignParam; /** - * Defines the bias ratio in horizontal and vertical direction. + * Offset of the component under the anchor constraints. + *
The value is the ratio of the distance to the left/upper anchor to the total distance between anchors. * * @type { ?Bias } * @default {horizontal:0.5,vertical:0.5} @@ -5646,7 +5961,7 @@ declare interface LocalizedAlignRuleOptions { } /** - * Defines the style of the chain in relative container. + * Enumerates the chain styles in relative container. * * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5656,7 +5971,7 @@ declare interface LocalizedAlignRuleOptions { */ declare enum ChainStyle { /** - * Elements of the chain will be spread out. + * Child components are evenly distributed among constraint anchors. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -5666,7 +5981,7 @@ declare enum ChainStyle { SPREAD, /** - * Elements except chain's head and tail will be spread out. + * All child components except the first and last ones are evenly distributed among constraint anchors. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -5676,7 +5991,7 @@ declare enum ChainStyle { SPREAD_INSIDE, /** - * Elements of the chain will be packed together. + * There is no gap between child components in the chain. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -5722,14 +6037,14 @@ declare enum ChainStyle { */ declare interface RotateOptions { /** - * The param of x direction. + * X coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of x direction. + * X coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5737,7 +6052,7 @@ declare interface RotateOptions { * @since 9 */ /** - * The param of x direction. + * X coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5746,7 +6061,7 @@ declare interface RotateOptions { * @since 10 */ /** - * The param of x direction. + * X coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5758,14 +6073,14 @@ declare interface RotateOptions { x?: number; /** - * The param of y direction. + * Y coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of y direction. + * Y coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5773,7 +6088,7 @@ declare interface RotateOptions { * @since 9 */ /** - * The param of y direction. + * Y coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5782,7 +6097,7 @@ declare interface RotateOptions { * @since 10 */ /** - * The param of y direction. + * Y coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5794,14 +6109,14 @@ declare interface RotateOptions { y?: number; /** - * The param of z direction. + * Z coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of z direction. + * Z coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5809,7 +6124,7 @@ declare interface RotateOptions { * @since 9 */ /** - * The param of z direction. + * Z coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5818,7 +6133,7 @@ declare interface RotateOptions { * @since 10 */ /** - * The param of z direction. + * Z coordinate of the rotation axis vector. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5830,14 +6145,14 @@ declare interface RotateOptions { z?: number; /** - * The param of center point of x. + * X coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of center point of x. + * X coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5845,7 +6160,7 @@ declare interface RotateOptions { * @since 9 */ /** - * The param of center point of x. + * X coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5854,7 +6169,7 @@ declare interface RotateOptions { * @since 10 */ /** - * The param of center point of x. + * X coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5866,21 +6181,21 @@ declare interface RotateOptions { centerX?: number | string; /** - * The param of center point of y. + * Y coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * The param of center point of y. + * Y coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 */ /** - * The param of center point of y. + * Y coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5889,7 +6204,7 @@ declare interface RotateOptions { * @since 10 */ /** - * The param of center point of y. + * Y coordinate of the transformation center point (anchor). Unit is vp. * * @type { ?(number | string) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5901,7 +6216,7 @@ declare interface RotateOptions { centerY?: number | string; /** - * The param of center point of z. + * Z-axis anchor, that is, the z-component of the 3D rotation center point. * * @type { ?number } * @default 0 @@ -5911,7 +6226,7 @@ declare interface RotateOptions { * @since 10 */ /** - * The param of center point of z. + * Z-axis anchor, that is, the z-component of the 3D rotation center point. * * @type { ?number } * @default 0 @@ -5924,7 +6239,10 @@ declare interface RotateOptions { centerZ?: number; /** - * The param of camera distance, value range (-∞, ∞). + * Distance from the user to the z=0 plane. + * The axis and center of rotation are set based on the coordinate system, + * which remains where it is when the component is moved. + * * @type { ?number } * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5933,7 +6251,10 @@ declare interface RotateOptions { * @since 10 */ /** - * The param of camera distance, value range (-∞, ∞). + * Distance from the user to the z=0 plane. + * The axis and center of rotation are set based on the coordinate system, + * which remains where it is when the component is moved. + * * @type { ?number } * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -5981,6 +6302,108 @@ declare interface RotateOptions { angle: number | string; } +/** + * The param of rotate about angle. + * + * @interface RotateAngleOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +declare interface RotateAngleOptions { + /** + * the angle of the x-axis direction. + * + * @type { ?(number | string) } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + angleX?: number | string; + + /** + * the angle of the y-axis direction. + * + * @type { ?(number | string) } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + angleY?: number | string; + + /** + * the angle of the z-axis direction. + * + * @type { ?(number | string) } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + angleZ?: number | string; + + /** + * The param of center point of x. + * + * @type { ?(number | string) } + * @default '50%' + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + centerX?: number | string; + + /** + * The param of center point of y. + * + * @type { ?(number | string) } + * @default '50%' + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + centerY?: number | string; + + /** + * The param of center point of z. + * + * @type { ?number } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + centerZ?: number; + + /** + * The param of camera distance, value range (-∞, ∞). + * @type { ?number } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + perspective?: number; +} + /** * Defines the param of transition. * @@ -5992,7 +6415,10 @@ declare interface RotateOptions { */ declare interface TransitionOptions { /** - * Defines the param of type. + * Transition type.
+ * Default value: **TransitionType.All**. + *
**NOTE**
If **type** is not specified, the default value **TransitionType.All** + * is used, which means that the transition effect works for both component addition and deletion. * * @type { ?TransitionType } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -6001,7 +6427,11 @@ declare interface TransitionOptions { */ type?: TransitionType; /** - * Defines the param of opacity. + * Opacity of the component during transition, which is the value of the + * start point of insertion and the end point of deletion. + *
Value range: [0, 1]. + *
**NOTE**
If the value specified is less than 0, the value **0** is used. + * If the value specified is greater than 1, the value **1** is used. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -6010,7 +6440,11 @@ declare interface TransitionOptions { */ opacity?: number; /** - * Defines the param of translate. + * Translation of the component during transition, + * which is the value of the start point of insertion and the end point of deletion. + * **x**: distance to translate along the x-axis. + * **y**: distance to translate along the y-axis. + * **z**: distance to translate along the z-axis. * * @type { ?TranslateOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -6019,7 +6453,15 @@ declare interface TransitionOptions { */ translate?: TranslateOptions; /** - * Defines the param of scale. + * Scaling of the component during transition, which is the value of the start point of insertion and the end point + * of deletion. **x**: scale factor along the x-axis. **y**: scale factor along the y-axis. **z**: scale factor along + * the z-axis (not effective for the current 2D graphics). **centerX** and **centerY**: scale center point. The + * default values are both **"50%"**, indicating the center point of the page. If the center point is (0, 0), it + * refers to the upper left corner of the component. + *

**NOTE**: + *
If **centerX** or **centerY** is set to an invalid string (for example, **"illegalString"**), + * the default value **"0"** is used. + *

* * @type { ?ScaleOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -6028,7 +6470,11 @@ declare interface TransitionOptions { */ scale?: ScaleOptions; /** - * Defines the param of rotate. + * Rotation of the component during transition, which is the value of the start point of insertion and the end point + * of deletion. **x**: X-component of the rotation vector. **y**: Y-component of the rotation vector. **z**: + * Z-component of the rotation vector. **centerX** and **centerY**: rotation center point. The default values are + * both **"50%"**, indicating the center point of the page.If the center point is (0, 0), it refers to the upper left + * corner of the component. * * @type { ?RotateOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -6078,7 +6524,7 @@ declare enum TransitionEdge { TOP, /** - * Bottom edge + * Bottom edge of the window. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6086,7 +6532,7 @@ declare enum TransitionEdge { * @since 10 */ /** - * Bottom edge + * Bottom edge of the window. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6097,7 +6543,8 @@ declare enum TransitionEdge { BOTTOM, /** - * Start edge + * Start edge of the window, which is the left edge for left-to-right + * scripts and the right edge for right-to-left scripts. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6105,7 +6552,8 @@ declare enum TransitionEdge { * @since 10 */ /** - * Start edge + * Start edge of the window, which is the left edge for left-to-right + * scripts and the right edge for right-to-left scripts. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6116,7 +6564,8 @@ declare enum TransitionEdge { START, /** - * End edge + * End edge of the window, which is the right edge for left-to-right scripts + * and the left edge for right-to-left scripts. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6124,7 +6573,8 @@ declare enum TransitionEdge { * @since 10 */ /** - * End edge + * End edge of the window, which is the right edge for left-to-right scripts + * and the left edge for right-to-left scripts. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6170,6 +6620,7 @@ declare type TransitionEffects = { /** * Defined the draw modifier of node. Provides draw callbacks for the associated Node. + * Each DrawModifier instance can be set for only one component. Repeated setting is not allowed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6210,9 +6661,20 @@ declare class DrawModifier { * @since 12 */ drawFront?(drawContext: DrawContext): void; + + /** + * drawforeground Method. Executed after drawing associated Node and its children. + * @param { DrawContext } drawContext - The drawContext used to draw + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + drawForeground?(drawContext: DrawContext): void; /** * Invalidate the component, which will cause a re-render of the component. + * No overloading is allowed or needed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6269,7 +6731,8 @@ declare class TransitionEffect< static readonly IDENTITY: TransitionEffect<"identity">; /** - * Specifies a transition effect with transparency of 0, which is equivalent to TransitionEffect.opacity(0). + * Applies a transition effect with the opacity changing from 0 to 1 when the component appears + * And from 1 to 0 when the component disappears. This is equivalent to **TransitionEffect.opacity(0)** * * @type { TransitionEffect<"opacity"> } * @readonly @@ -6280,7 +6743,8 @@ declare class TransitionEffect< * @since 10 */ /** - * Specifies a transition effect with transparency of 0, which is equivalent to TransitionEffect.opacity(0). + * Applies a transition effect with the opacity changing from 0 to 1 when the component appears + * And from 1 to 0 when the component disappears. This is equivalent to **TransitionEffect.opacity(0)** * * @type { TransitionEffect<"opacity"> } * @readonly @@ -6294,7 +6758,13 @@ declare class TransitionEffect< static readonly OPACITY: TransitionEffect<"opacity">; /** - * Defines a slide transition effect + * Applies a transition effect of sliding in from the start edge when the component + * appears and sliding out from the end edge when the component disappears. + * This means sliding in from the left edge and sliding out from the right edge for + * left-to-right scripts, and sliding in from the right edge and sliding out from + * the left edge for right-to-left scripts. This is equivalent to + * TransitionEffect.asymmetric(TransitionEffect.move(TransitionEdge.START), + * TransitionEffect.move(TransitionEdge.END)). * * @type { TransitionEffect< * "asymmetric", @@ -6309,7 +6779,13 @@ declare class TransitionEffect< * @since 10 */ /** - * Defines a slide transition effect + * Applies a transition effect of sliding in from the start edge when the component + * appears and sliding out from the end edge when the component disappears. + * This means sliding in from the left edge and sliding out from the right edge for + * left-to-right scripts, and sliding in from the right edge and sliding out from + * the left edge for right-to-left scripts. This is equivalent to + * TransitionEffect.asymmetric(TransitionEffect.move(TransitionEdge.START), + * TransitionEffect.move(TransitionEdge.END)). * * @type { TransitionEffect< * "asymmetric", @@ -6333,11 +6809,13 @@ declare class TransitionEffect< >; /** - * Specify a transition effect where the element enters by shrinking first and then expanding as it slides in from the right, - * and exits by shrinking first and then expanding as it slides out to the left, with a minimum scale ratio of 0.8. - * It comes with default animation parameters, which can also be overridden. - * The default animation duration is set to 600ms, and the specified animation curve is cubicBezierCurve(0.24, 0.0, 0.50, 1.0). - * + * Applies a transition effect of sliding in from the right with first scaling down and then scaling up + * when the component appears and sliding out from the right + * with first scaling down and then scaling up when the component disappears. + * This transition effect comes with its own animation parameters, which can also be overridden. + * The default animation duration is 600 milliseconds, + * with a specified animation curve of cubicBezierCurve(0.24, 0.0, 0.50, 1.0) and a minimum scale factor of 0.8. + * * @type { TransitionEffect<"slideSwitch"> } * @readonly * @static @@ -6347,11 +6825,13 @@ declare class TransitionEffect< * @since 10 */ /** - * Specify a transition effect where the element enters by shrinking first and then expanding as it slides in from the right, - * and exits by shrinking first and then expanding as it slides out to the left, with a minimum scale ratio of 0.8. - * It comes with default animation parameters, which can also be overridden. - * The default animation duration is set to 600ms, and the specified animation curve is cubicBezierCurve(0.24, 0.0, 0.50, 1.0). - * + * Applies a transition effect of sliding in from the right with first scaling down and then scaling up + * when the component appears and sliding out from the right + * with first scaling down and then scaling up when the component disappears. + * This transition effect comes with its own animation parameters, which can also be overridden. + * The default animation duration is 600 milliseconds, + * with a specified animation curve of cubicBezierCurve(0.24, 0.0, 0.50, 1.0) and a minimum scale factor of 0.8. + * * @type { TransitionEffect<"slideSwitch"> } * @readonly * @static @@ -6364,9 +6844,13 @@ declare class TransitionEffect< static readonly SLIDE_SWITCH: TransitionEffect<"slideSwitch">; /** - * Creates a translate transition effect + * Translation of the component during transition, which is the value of the start point + * of insertion and the end point of deletion. * - * @param { TranslateOptions } options - translate options + * @param { TranslateOptions } options - translate options. + *
-**x**: distance to translate along the x-axis. Unit is vp. + *
-**y**: distance to translate along the y-axis. Unit is vp. + *
-**z**: distance to translate along the z-axis. Unit is vp. * @returns { TransitionEffect<"translate"> } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6374,9 +6858,13 @@ declare class TransitionEffect< * @since 10 */ /** - * Creates a translate transition effect + * Translation of the component during transition, which is the value of the start point + * of insertion and the end point of deletion. * - * @param { TranslateOptions } options - translate options + * @param { TranslateOptions } options - translate options. + *
-**x**: distance to translate along the x-axis. Unit is vp. + *
-**y**: distance to translate along the y-axis. Unit is vp. + *
-**z**: distance to translate along the z-axis. Unit is vp. * @returns { TransitionEffect<"translate"> } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6387,19 +6875,20 @@ declare class TransitionEffect< static translate(options: TranslateOptions): TransitionEffect<"translate">; /** - * Creates a rotation transition effect - * - * @param { RotateOptions } options - rotate options - * Set the rotation effect for component transitions when inserting and deleting. - * The value represents the starting rotation point for the inserting animation and the ending rotation point for the deleting animation. - * -x: Horizontal component of the rotational vector. - * -y: Vertical component of the rotational vector. - * -z: Vertical component of the rotational vector. - * -centerX, centerY specify the rotation center point, with default values of "50%", - * meaning that the default rotation center point is the center point of the component. - * -The center point of (0, 0) represents the upper-left corner of the component. - * -centerZ refers to the Z-axis anchor point. The default value of centerZ is 0. - * -perspective indicates the visual distance. The perspective property does not support transition animation. + * Rotation of the component during transition, which is the value of the start + * point of insertion and the end point of deletion. + *
- **x**: X-component of the rotation vector. + *
- **y**: Y-component of the rotation vector. + *
- **z**: Z-component of the rotation vector. + *
- **centerX** and **centerY**: rotation center point. The default values + * are both **"50%"**, indicating the center point of the page. + *
- If the center point is (0, 0), it refers to the upper left corner of the component. + *
- **centerZ**: z-axis anchor point, that is, the z-component of the 3D rotation + * center point. The default value is **0**. + *
- **perspective**: viewing distance. It is not supported for use in transition animations. + *
**Widget capability**: This API can be used in ArkTS widgets since API version 10. + * + * @param { RotateOptions } options - Rotate options. * @returns { TransitionEffect<"rotate"> } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6407,19 +6896,20 @@ declare class TransitionEffect< * @since 10 */ /** - * Creates a rotation transition effect + * Rotation of the component during transition, which is the value of the start + * point of insertion and the end point of deletion. + *
- **x**: X-component of the rotation vector. + *
- **y**: Y-component of the rotation vector. + *
- **z**: Z-component of the rotation vector. + *
- **centerX** and **centerY**: rotation center point. The default values + * are both **"50%"**, indicating the center point of the page. + *
- If the center point is (0, 0), it refers to the upper left corner of the component. + *
- **centerZ**: z-axis anchor point, that is, the z-component of the 3D rotation + * center point. The default value is **0**. + *
- **perspective**: viewing distance. It is not supported for use in transition animations. + *
**Widget capability**: This API can be used in ArkTS widgets since API version 10. * - * @param { RotateOptions } options - rotate options - * Set the rotation effect for component transitions when inserting and deleting. - * The value represents the starting rotation point for the inserting animation and the ending rotation point for the deleting animation. - * -x: Horizontal component of the rotational vector. - * -y: Vertical component of the rotational vector. - * -z: Vertical component of the rotational vector. - * -centerX, centerY specify the rotation center point, with default values of "50%", - * meaning that the default rotation center point is the center point of the component. - * -The center point of (0, 0) represents the upper-left corner of the component. - * -centerZ refers to the Z-axis anchor point. The default value of centerZ is 0. - * -perspective indicates the visual distance. The perspective property does not support transition animation. + * @param { RotateOptions } options - Rotate options. * @returns { TransitionEffect<"rotate"> } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -6430,7 +6920,8 @@ declare class TransitionEffect< static rotate(options: RotateOptions): TransitionEffect<"rotate">; /** - * Creates a scale transition effect + * Scaling of the component during transition, which is the value of the start point of insertion and + * the end point of deletion. * * @param { ScaleOptions } options - scale options * @returns { TransitionEffect<"scale"> } @@ -6440,7 +6931,8 @@ declare class TransitionEffect< * @since 10 */ /** - * Creates a scale transition effect + * Scaling of the component during transition, which is the value of the start point of insertion and + * the end point of deletion. * * @param { ScaleOptions } options - scale options * @returns { TransitionEffect<"scale"> } @@ -6488,7 +6980,9 @@ declare class TransitionEffect< static opacity(alpha: number): TransitionEffect<"opacity">; /** - * Creates a move transition effect + * Slide-in and slide-out of the component from the screen edge during transition. + * It is essentially a translation effect, which is the value of the start point of insertion + * and the end point of deletion. * * @param { TransitionEdge } edge - the edge that component will move to * @returns { TransitionEffect<"move"> } @@ -6498,7 +6992,9 @@ declare class TransitionEffect< * @since 10 */ /** - * Creates a move transition effect + * Slide-in and slide-out of the component from the screen edge during transition. + * It is essentially a translation effect, which is the value of the start point of insertion + * and the end point of deletion. * * @param { TransitionEdge } edge - the edge that component will move to * @returns { TransitionEffect<"move"> } @@ -6585,7 +7081,7 @@ declare class TransitionEffect< animation(value: AnimateParam): TransitionEffect; /** - * Combines another transition effect + * Combination of transition effects. * * @param { TransitionEffect } transitionEffect - transition effect which is be combined * @returns { TransitionEffect } combined transition effect @@ -6595,7 +7091,7 @@ declare class TransitionEffect< * @since 10 */ /** - * Combines another transition effect + * Combination of transition effects. * * @param { TransitionEffect } transitionEffect - transition effect which is be combined * @returns { TransitionEffect } combined transition effect @@ -7137,7 +7633,9 @@ declare interface DragItemInfo { declare function animateTo(value: AnimateParam, event: () => void): void; /** - * Define animation functions for immediate distribution. + * Implements immediate delivery of an explicit animation through a **UIContext** object. + * When multiple property animations are loaded at once, you can call this API to immediately + * execute the transition animation for state changes caused by the specified closure function. * * @param { AnimateParam } value - Set animation effect parameters. * @param { function } event - Specify the closure function that displays dynamic effects, @@ -7150,26 +7648,38 @@ declare function animateToImmediately(value: AnimateParam, event: () => void): v /** * Converts a value in vp units to a value in px. + * By default, the virtual pixel ratio of the screen where the current UI instance is located is used for conversion. + * If no UI instance is available, the virtual pixel ratio of the default screen is used instead. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** * Converts a value in vp units to a value in px. + * By default, the virtual pixel ratio of the screen where the current UI instance is located is used for conversion. + * If no UI instance is available, the virtual pixel ratio of the default screen is used instead. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** * Converts a value in vp units to a value in px. + * By default, the virtual pixel ratio of the screen where the current UI instance is located is used for conversion. + * If no UI instance is available, the virtual pixel ratio of the default screen is used instead. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7177,9 +7687,13 @@ declare function animateToImmediately(value: AnimateParam, event: () => void): v */ /** * Converts a value in vp units to a value in px. + * By default, the virtual pixel ratio of the screen where the current UI instance is located is used for conversion. + * If no UI instance is available, the virtual pixel ratio of the default screen is used instead. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7192,26 +7706,38 @@ declare function vp2px(value: number): number; /** * Converts a number in units of px to a number in units of vp. + * By default, the virtual pixel ratio of the screen where the current UI instance is located is used for conversion. + * If no UI instance is available, the virtual pixel ratio of the default screen is used instead. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** * Converts a number in units of px to a number in units of vp. + * By default, the virtual pixel ratio of the screen where the current UI instance is located is used for conversion. + * If no UI instance is available, the virtual pixel ratio of the default screen is used instead. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** * Converts a number in units of px to a number in units of vp. + * By default, the virtual pixel ratio of the screen where the current UI instance is located is used for conversion. + * If no UI instance is available, the virtual pixel ratio of the default screen is used instead. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7219,9 +7745,13 @@ declare function vp2px(value: number): number; */ /** * Converts a number in units of px to a number in units of vp. + * By default, the virtual pixel ratio of the screen where the current UI instance is located is used for conversion. + * If no UI instance is available, the virtual pixel ratio of the default screen is used instead. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7236,7 +7766,9 @@ declare function px2vp(value: number): number; * Converts a number in fp units to a number in px. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ @@ -7244,7 +7776,9 @@ declare function px2vp(value: number): number; * Converts a number in fp units to a number in px. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 @@ -7253,7 +7787,9 @@ declare function px2vp(value: number): number; * Converts a number in fp units to a number in px. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7263,7 +7799,9 @@ declare function px2vp(value: number): number; * Converts a number in fp units to a number in px. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7278,7 +7816,9 @@ declare function fp2px(value: number): number; * Converts a number in units of px to a number in units of fp. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ @@ -7286,7 +7826,9 @@ declare function fp2px(value: number): number; * Converts a number in units of px to a number in units of fp. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 @@ -7295,7 +7837,9 @@ declare function fp2px(value: number): number; * Converts a number in units of px to a number in units of fp. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7305,7 +7849,9 @@ declare function fp2px(value: number): number; * Converts a number in units of px to a number in units of fp. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7320,7 +7866,9 @@ declare function px2fp(value: number): number; * Converts a number in units of lpx to a number in units of px. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ @@ -7328,7 +7876,9 @@ declare function px2fp(value: number): number; * Converts a number in units of lpx to a number in units of px. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 @@ -7337,7 +7887,9 @@ declare function px2fp(value: number): number; * Converts a number in units of lpx to a number in units of px. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7347,7 +7899,9 @@ declare function px2fp(value: number): number; * Converts a number in units of lpx to a number in units of px. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7362,7 +7916,9 @@ declare function lpx2px(value: number): number; * Converts a number in units of px to a number in units of lpx. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ @@ -7370,7 +7926,9 @@ declare function lpx2px(value: number): number; * Converts a number in units of px to a number in units of lpx. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 @@ -7379,7 +7937,9 @@ declare function lpx2px(value: number): number; * Converts a number in units of px to a number in units of lpx. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7389,7 +7949,9 @@ declare function lpx2px(value: number): number; * Converts a number in units of px to a number in units of lpx. * * @param { number } value + * Value range of value: (-∞, +∞). * @returns { number } + * Value range of the return value: (-∞, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -7495,7 +8057,7 @@ declare namespace cursorControl { /** * Change the mouse cursor style by param: 'PointerStyle'. * - * @param { PointerStyle } value + * @param { PointerStyle } value - Cursor style. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -7581,7 +8143,7 @@ declare interface EventTarget { * @since 10 */ /** - * Area of current target. + * Area information of the target element. * * @type { Area } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -7644,7 +8206,7 @@ declare enum SourceType { * @since 10 */ /** - * Unknown type. + * Unknown device type. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -7739,7 +8301,7 @@ declare enum SourceTool { * @since 10 */ /** - * Unknown type. + * Unknown input source. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -7869,7 +8431,7 @@ declare enum RepeatMode { * @since 10 */ /** - * Repeat mode. + * The source image's slices are tiled. Tiles beyond the border box will be clipped. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -7895,7 +8457,7 @@ declare enum RepeatMode { * @since 10 */ /** - * Stretch mode. + * The source image's slices are stretched to fill the border box. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -7921,7 +8483,7 @@ declare enum RepeatMode { * @since 10 */ /** - * Round mode. + * The source image's slices are tiled to fill the border box. Tiles may be compressed when needed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -7947,7 +8509,7 @@ declare enum RepeatMode { * @since 10 */ /** - * Space mode. + * The source image's slices are tiled to fill the border box. Extra space will be distributed in between tiles. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -7987,14 +8549,14 @@ declare enum RepeatMode { */ declare enum BlurStyle { /** - * Defines the thin card material. + * Thin material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Defines the thin card material. + * Thin material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8002,7 +8564,7 @@ declare enum BlurStyle { * @since 10 */ /** - * Defines the thin card material. + * Thin material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8013,14 +8575,14 @@ declare enum BlurStyle { Thin, /** - * Defines the regular card material. + * Regular material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Defines the regular card material. + * Regular material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8028,7 +8590,7 @@ declare enum BlurStyle { * @since 10 */ /** - * Defines the regular card material. + * Regular material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8039,14 +8601,14 @@ declare enum BlurStyle { Regular, /** - * Defines the thick card material. + * Thick material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Defines the thick card material. + * Thick material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8054,7 +8616,7 @@ declare enum BlurStyle { * @since 10 */ /** - * Defines the thick card material. + * Thick material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8065,14 +8627,14 @@ declare enum BlurStyle { Thick, /** - * Defines the thin background material. + * Material that creates the minimum depth of field effect. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the thin background material. + * Material that creates the minimum depth of field effect. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8083,14 +8645,14 @@ declare enum BlurStyle { BACKGROUND_THIN, /** - * Defines the thin regular material. + * Material that creates a medium shallow depth of field effect. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the thin regular material. + * Material that creates a medium shallow depth of field effect. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8101,14 +8663,14 @@ declare enum BlurStyle { BACKGROUND_REGULAR, /** - * Defines the thin thick material. + * Material that creates a high shallow depth of field effect. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the thin thick material. + * Material that creates a high shallow depth of field effect. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8119,14 +8681,14 @@ declare enum BlurStyle { BACKGROUND_THICK, /** - * Defines the thin ultra thick material. + * Material that creates the maximum depth of field effect. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the thin ultra thick material. + * Material that creates the maximum depth of field effect. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8137,7 +8699,7 @@ declare enum BlurStyle { BACKGROUND_ULTRA_THICK, /** - * Defines none material. + * No blur. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8145,7 +8707,7 @@ declare enum BlurStyle { * @since 10 */ /** - * Defines none material. + * No blur. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8156,7 +8718,7 @@ declare enum BlurStyle { NONE, /** - * Defines the ultra thin component material. + * Component ultra-thin material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8164,7 +8726,7 @@ declare enum BlurStyle { * @since 11 */ /** - * Defines the ultra thin component material. + * Component ultra-thin material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8183,7 +8745,7 @@ declare enum BlurStyle { * @since 11 */ /** - * Defines the thin component material. + * Component thin material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8202,7 +8764,7 @@ declare enum BlurStyle { * @since 11 */ /** - * Defines the regular component material. + * Component regular material. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8381,14 +8943,16 @@ declare enum ThemeColorMode { */ declare enum AdaptiveColor { /** - * Defines the fixed value color adaptive mode. + * Adaptive color mode is not used. + * The default color is used as the mask color. Using a mode other than **DEFAULT** can be more time-consuming. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the fixed value color adaptive mode. + * Adaptive color mode is not used. + * The default color is used as the mask color. Using a mode other than **DEFAULT** can be more time-consuming. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8398,14 +8962,14 @@ declare enum AdaptiveColor { DEFAULT, /** - * Defines the background average color adaptive mode. + * Adaptive color mode is used. The average color value of the color picking area is used as the mask color. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the background average color adaptive mode. + * Adaptive color mode is used. The average color value of the color picking area is used as the mask color. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8434,14 +8998,14 @@ declare enum AdaptiveColor { */ declare enum ModalTransition { /** - * Use default animation. + * Slide-up and slide-down animation for the modal. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Use default animation. + * Slide-up and slide-down animation for the modal. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8451,14 +9015,14 @@ declare enum ModalTransition { DEFAULT, /** - * Use none animation. + * No transition animation for the modal. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Use none animation. + * No transition animation for the modal. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8468,14 +9032,14 @@ declare enum ModalTransition { NONE, /** - * Use alpha animation. + * Opacity gradient animation for the modal. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Use alpha animation. + * Opacity gradient animation for the modal. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8596,7 +9160,7 @@ declare interface BlurOptions { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ declare interface SystemAdaptiveOptions { /** @@ -8607,7 +9171,7 @@ declare interface SystemAdaptiveOptions { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ disableSystemAdaptation?: boolean; } @@ -8631,7 +9195,8 @@ declare interface SystemAdaptiveOptions { */ declare interface BlurStyleOptions { /** - * color mode + * Color mode used for the foreground blur. + *
Default value: **ThemeColorMode.SYSTEM**. * * @type { ?ThemeColorMode } * @default ThemeColorMode.SYSTEM @@ -8639,7 +9204,8 @@ declare interface BlurStyleOptions { * @since 10 */ /** - * color mode + * Color mode used for the foreground blur. + *
Default value: **ThemeColorMode.SYSTEM**. * * @type { ?ThemeColorMode } * @default ThemeColorMode.SYSTEM @@ -8651,7 +9217,8 @@ declare interface BlurStyleOptions { colorMode?: ThemeColorMode; /** - * adaptive color + * Adaptive color mode. + *
Default value: **AdaptiveColor.DEFAULT**. * * @type { ?AdaptiveColor } * @default AdaptiveColor.DEFAULT @@ -8659,7 +9226,8 @@ declare interface BlurStyleOptions { * @since 10 */ /** - * adaptive color + * Adaptive color mode. + *
Default value: **AdaptiveColor.DEFAULT**. * * @type { ?AdaptiveColor } * @default AdaptiveColor.DEFAULT @@ -8671,9 +9239,9 @@ declare interface BlurStyleOptions { adaptiveColor?: AdaptiveColor; /** - * Define the scale of blur effect. - * The range of value is [0, 1]. The larger the value, the more obvious the blurring effect. - * A value of 0 indicates no blur effect and a value of 1 indicates a complete blur effect. + * Foreground blur scale. + *
Default value: **1.0**. + *
Value range: [0.0, 1.0]. * * @type { ?number } * @default 1.0 @@ -8725,7 +9293,9 @@ declare interface BlurStyleOptions { declare interface BackgroundEffectOptions { /** - * Define the radius size of BackgroundEffect.The range of this value is [0, ∞) + * Blur radius. + * Value range: [0, +∞). + * Default value: **0**. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -8733,7 +9303,9 @@ declare interface BackgroundEffectOptions { * @since 11 */ /** - * Define the radius size of BackgroundEffect.The range of this value is [0, ∞) + * Blur radius. + * Value range: [0, +∞). + * Default value: **0**. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -8744,7 +9316,9 @@ declare interface BackgroundEffectOptions { radius: number; /** - * Define the saturation of BackgroundEffect. Value range [0, ∞) + * Saturation. + * Value range: [0, +∞). + * Recommended value range: [0, 50]. * * @type { ?number } * @default 1 @@ -8753,7 +9327,9 @@ declare interface BackgroundEffectOptions { * @since 11 */ /** - * Define the saturation of BackgroundEffect. Value range [0, ∞) + * Saturation. + * Value range: [0, +∞). + * Recommended value range: [0, 50]. * * @type { ?number } * @default 1 @@ -8765,8 +9341,10 @@ declare interface BackgroundEffectOptions { saturation?: number; /** - * Define the brightness of BackgroundEffect. Value range [0, ∞) - * The input parameter is the highlight proportion. 0 indicates no highlight effect, and 1 indicates the maximum highlight proportion. + * Brightness. + *
Value range: [0, +∞). + *
Default value: **1** Recommended value range: [0, 2]. + * * @type { ?number } * @default 1 * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -8774,8 +9352,10 @@ declare interface BackgroundEffectOptions { * @since 11 */ /** - * Define the brightness of BackgroundEffect. Value range [0, ∞) - * The input parameter is the highlight proportion. 0 indicates no highlight effect, and 1 indicates the maximum highlight proportion. + * Brightness. + *
Value range: [0, +∞). + *
Default value: **1** Recommended value range: [0, 2]. + * * @type { ?number } * @default 1 * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -8786,7 +9366,7 @@ declare interface BackgroundEffectOptions { brightness?: number; /** - * color the brightness of BackgroundEffect. + * Color. * * @type { ?ResourceColor } * @default Color.Transparent @@ -8795,7 +9375,7 @@ declare interface BackgroundEffectOptions { * @since 11 */ /** - * color the brightness of BackgroundEffect. + * Color. * * @type { ?ResourceColor } * @default Color.Transparent @@ -8923,7 +9503,7 @@ declare interface PickerTextStyle { * @since 10 */ /** - * Define the text color of picker. + * Font color. * * @type { ?ResourceColor } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -8943,8 +9523,7 @@ declare interface PickerTextStyle { * @since 10 */ /** - * Define the text font of picker. - * Only support size and weight. + * Text style. * * @type { ?Font } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9123,14 +9702,14 @@ declare enum ShadowType { COLOR, /** - * Define a blur type of shadow + * Blur. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Define a blur type of shadow + * Blur. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9176,14 +9755,14 @@ declare enum ShadowType { */ declare interface ShadowOptions { /** - * Define the radius size of shadow + * Blur radius of the shadow. * * @type { number | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Define the radius size of shadow + * Blur radius of the shadow. * * @type { number | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9191,7 +9770,7 @@ declare interface ShadowOptions { * @since 9 */ /** - * Define the radius size of shadow + * Blur radius of the shadow. * * @type { number | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9200,7 +9779,7 @@ declare interface ShadowOptions { * @since 10 */ /** - * Define the radius size of shadow + * Blur radius of the shadow. * * @type { number | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9212,7 +9791,8 @@ declare interface ShadowOptions { radius: number | Resource; /** - * Define the type of shadow + * Shadow type. + *
Default value: **COLOR**. * * @type { ?ShadowType } * @default ShadowType.COLOR @@ -9221,7 +9801,8 @@ declare interface ShadowOptions { * @since 10 */ /** - * Define the type of shadow + * Shadow type. + *
Default value: **COLOR**. * * @type { ?ShadowType } * @default ShadowType.COLOR @@ -9233,14 +9814,14 @@ declare interface ShadowOptions { type?: ShadowType; /** - * Define the color of shadow + * Color of the shadow. Default value: **Black** * * @type { ?(Color | string | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Define the color of shadow + * Color of the shadow. Default value: **Black** * * @type { ?(Color | string | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9248,7 +9829,7 @@ declare interface ShadowOptions { * @since 9 */ /** - * Define the color of shadow + * Color of the shadow. Default value: **Black** * * @type { ?(Color | string | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9257,7 +9838,7 @@ declare interface ShadowOptions { * @since 10 */ /** - * Define the color or the color strategy of shadow + * Color of the shadow. Default value: **Black** * * @type { ?(Color | string | Resource| ColoringStrategy) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9269,14 +9850,14 @@ declare interface ShadowOptions { color?: Color | string | Resource | ColoringStrategy; /** - * Define the horizontal offset size of shadow + * Offset of the shadow along the x-axis. Unit is px. Default value is 0. * * @type { ?(number | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Define the horizontal offset size of shadow + * Offset of the shadow along the x-axis. Unit is px. Default value is 0. * * @type { ?(number | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9284,7 +9865,7 @@ declare interface ShadowOptions { * @since 9 */ /** - * Define the horizontal offset size of shadow + * Offset of the shadow along the x-axis. Unit is px. Default value is 0. * * @type { ?(number | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9293,7 +9874,7 @@ declare interface ShadowOptions { * @since 10 */ /** - * Define the horizontal offset size of shadow + * Offset of the shadow along the x-axis. Unit is px. Default value is 0. * * @type { ?(number | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9305,14 +9886,14 @@ declare interface ShadowOptions { offsetX?: number | Resource; /** - * Define the vertical offset size of shadow + * Offset of the shadow along the y-axis. Unit is px. Default value is 0. * * @type { ?(number | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Define the vertical offset size of shadow + * Offset of the shadow along the y-axis. Unit is px. Default value is 0. * * @type { ?(number | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9320,7 +9901,7 @@ declare interface ShadowOptions { * @since 9 */ /** - * Define the vertical offset size of shadow + * Offset of the shadow along the y-axis. Unit is px. Default value is 0. * * @type { ?(number | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9329,7 +9910,7 @@ declare interface ShadowOptions { * @since 10 */ /** - * Define the vertical offset size of shadow + * Offset of the shadow along the y-axis. Unit is px. Default value is 0. * * @type { ?(number | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9341,7 +9922,11 @@ declare interface ShadowOptions { offsetY?: number | Resource; /** - * Define whether the shadow should fill the area + * Whether to fill the inside of the component with shadow. **true**: Fill + * the inside of the component with shadow. + *
**false**: Do not fill the inside of the component with shadow. + *
The default value is **false**. + *
**NOTE**
This attribute does not take effect in textShadow. * * @type { ?boolean } * @default false @@ -9350,7 +9935,11 @@ declare interface ShadowOptions { * @since 11 */ /** - * Define whether the shadow should fill the area + * Whether to fill the inside of the component with shadow. **true**: Fill + * the inside of the component with shadow. + *
**false**: Do not fill the inside of the component with shadow. + *
The default value is **false**. + *
**NOTE**
This attribute does not take effect in textShadow. * * @type { ?boolean } * @default false @@ -9415,14 +10004,14 @@ declare enum ShadowStyle { OUTER_DEFAULT_SM, /** - * Defines the medium default shadow style. + * Medium shadow. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the medium default shadow style. + * Medium shadow. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9432,14 +10021,14 @@ declare enum ShadowStyle { OUTER_DEFAULT_MD, /** - * Defines the large default shadow style. + * Large shadow. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the large default shadow style. + * Large shadow. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9449,14 +10038,14 @@ declare enum ShadowStyle { OUTER_DEFAULT_LG, /** - * Defines the small floating shadow style. + * Floating medium shadow. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the small floating shadow style. + * Floating medium shadow. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9473,7 +10062,7 @@ declare enum ShadowStyle { * @since 10 */ /** - * Defines the medium floating shadow style. + * Floating medium shadow. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9502,7 +10091,11 @@ declare enum ShadowStyle { */ declare interface MultiShadowOptions { /** - * Current shadow radius. + * Shadow blur radius. + * Unit: vp. + *

**NOTE**: + *
A value less than or equal to 0 is handled as the default value. + *

* * @type { ?(number | Resource) } * @default 5 @@ -9511,7 +10104,11 @@ declare interface MultiShadowOptions { * @since 10 */ /** - * Current shadow radius. + * Shadow blur radius. + * Unit: vp. + *

**NOTE**: + *
A value less than or equal to 0 is handled as the default value. + *

* * @type { ?(number | Resource) } * @default 20 @@ -9523,7 +10120,8 @@ declare interface MultiShadowOptions { radius?: number | Resource; /** - * Current shadow offsetX. + * Offset on the x-axis. + * Unit: vp. * * @type { ?(number | Resource) } * @default 5 @@ -9532,7 +10130,8 @@ declare interface MultiShadowOptions { * @since 10 */ /** - * Current shadow offsetX. + * Offset on the x-axis. + * Unit: vp. * * @type { ?(number | Resource) } * @default 5 @@ -9544,7 +10143,8 @@ declare interface MultiShadowOptions { offsetX?: number | Resource; /** - * Current shadow offsetY + * Offset on the y-axis. + * Unit: vp. * * @type { ?(number | Resource) } * @default 5 @@ -9553,7 +10153,8 @@ declare interface MultiShadowOptions { * @since 10 */ /** - * Current shadow offsetY + * Offset on the y-axis. + * Unit: vp. * * @type { ?(number | Resource) } * @default 5 @@ -9573,7 +10174,7 @@ declare interface MultiShadowOptions { * @since 10 */ /** - * Enumerates the safe area types. + * The types of expanded safe areas. * * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9589,7 +10190,7 @@ declare enum SafeAreaType { * @since 10 */ /** - * Default area of the system, including the status bar and navigation bar. + * Default non-safe area of the system, including the status bar and navigation bar. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9605,7 +10206,7 @@ declare enum SafeAreaType { * @since 10 */ /** - * Notch or punch hole. + * Non-safe area of the device like Notch or punch hole. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9655,7 +10256,7 @@ declare enum SafeAreaEdge { * @since 10 */ /** - * Top edge of the safe area. + * Top edge. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9671,7 +10272,7 @@ declare enum SafeAreaEdge { * @since 10 */ /** - * Bottom edge of the safe area. + * Bottom edge. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9687,7 +10288,7 @@ declare enum SafeAreaEdge { * @since 10 */ /** - * Start edge of the safe area. + * Start edge. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9703,7 +10304,7 @@ declare enum SafeAreaEdge { * @since 10 */ /** - * End edge of the safe area. + * End edge. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9714,7 +10315,7 @@ declare enum SafeAreaEdge { } /** - * Enumerates the safe area types can be ignored. + * Describe the types for expanding the safe area in layout. * * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9724,7 +10325,7 @@ declare enum SafeAreaEdge { */ declare enum LayoutSafeAreaType { /** - * Default area of the system, including the status bar and navigation bar. + * Default non-safe area of the system, including the status bar and navigation bar. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9732,20 +10333,40 @@ declare enum LayoutSafeAreaType { * @since 12 */ SYSTEM = 0, -} -/** - * Enumerates the safe area edges can be ignored. - * - * @enum { number } - * @syscap SystemCapability.ArkUI.ArkUI.Full - * @crossplatform - * @atomicservice - * @since 12 - */ -declare enum LayoutSafeAreaEdge { /** - * Top edge of the safe area. + * Soft keyboard area. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + KEYBOARD = 1, + + /** + * All safe area regions. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + ALL = 2, +} + +/** + * Define the edges for expanding the safe area in layout. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +declare enum LayoutSafeAreaEdge { + /** + * Top edge. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9755,7 +10376,7 @@ declare enum LayoutSafeAreaEdge { TOP = 0, /** - * Bottom edge of the safe area. + * Bottom edge. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9763,6 +10384,56 @@ declare enum LayoutSafeAreaEdge { * @since 12 */ BOTTOM = 1, + + /** + * Start edge of the safe area. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + START = 2, + + /** + * End edge of the safe area. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + END = 3, + + /** + * Vertical edge of the safe area. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + VERTICAL = 4, + + /** + * Horizontal edge of the safe area. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + HORIZONTAL = 5, + + /** + * All edges of the safe area. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + ALL = 6, } /** @@ -9784,14 +10455,14 @@ declare enum LayoutSafeAreaEdge { */ declare enum SheetSize { /** - * Defines the sheet size medium height type. The height is half the screen height + * The sheet height is half of the screen height. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the sheet size medium height type. The height is half the screen height + * The sheet height is half of the screen height. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9801,14 +10472,14 @@ declare enum SheetSize { MEDIUM, /** - * Defines the sheet size large height type. The height is almost screen height. + * The sheet height is almost the screen height. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Defines the sheet size large height type. The height is almost screen height. + * The sheet height is almost the screen height. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9818,14 +10489,14 @@ declare enum SheetSize { LARGE, /** - * Defines the sheet size fit content height type. The height fit content. + * The sheet height automatically adapts to the content. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Defines the sheet size fit content height type. The height fit content. + * The sheet height automatically adapts to the content. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -9895,7 +10566,7 @@ declare interface BaseEvent { * @since 10 */ /** - * Defines the current target which fires this event. + * Display area of the element that triggers the gesture event. * * @type { EventTarget } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9931,7 +10602,7 @@ declare interface BaseEvent { * @since 10 */ /** - * Event timestamp. + * Timestamp of the event. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -9967,7 +10638,7 @@ declare interface BaseEvent { * @since 10 */ /** - * the event source info. + * Event input device. * * @type { SourceType } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10020,7 +10691,7 @@ declare interface BaseEvent { * @since 10 */ /** - * Touch pressure. + * Press pressure. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10049,7 +10720,7 @@ declare interface BaseEvent { * @since 10 */ /** - * The angle between pencil projection on plane-X-Y and axis-Z. + * Angle between the projection of the stylus on the device plane and the x-axis. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10078,7 +10749,7 @@ declare interface BaseEvent { * @since 10 */ /** - * The angle between pencil projection on plane-Y-Z and axis-Z. + * Angle between the projection of the stylus on the device plane and the y-axis. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10097,7 +10768,7 @@ declare interface BaseEvent { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 17 */ rollAngle?: number; @@ -10119,7 +10790,7 @@ declare interface BaseEvent { * @since 10 */ /** - * The event tool type info. + * Event input source. * * @type { SourceTool } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10131,7 +10802,7 @@ declare interface BaseEvent { sourceTool: SourceTool; /** - * Query the ModifierKey press state, support 'ctrl'|'alt'|'shift'|'fn' + * Obtains the pressed status of modifier keys. The following modifier keys are supported: 'Ctrl'|'Alt'|'Shift'. * * @param { Array } keys - indicate the keys of the ModifierKey. * @returns { boolean } @@ -10222,9 +10893,11 @@ declare interface BorderImageOption { * @since 11 */ /** - * Border image slice + * Slice width of the upper left corner, upper right corner, lower left corner, + * and lower right corner of the border image. * * @type { ?(Length | EdgeWidths | LocalizedEdgeWidths) } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -10251,9 +10924,10 @@ declare interface BorderImageOption { * @since 10 */ /** - * Border image repeat + * Repeat mode of the source image's slices on the border. * * @type { ?RepeatMode } + * @default RepeatMode.Stretch * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -10280,7 +10954,13 @@ declare interface BorderImageOption { * @since 10 */ /** - * Border image source + * Source or gradient color of the border image. + * When the type is string, this parameter sets the border image source. + * For details about how to reference image resources, see Loading Image Resources. + * + *

NOTE: + *
The border image source applies only to container components, such as Row, Column, and Flex. + *

* * @type { ?(string | Resource | LinearGradient) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10319,9 +10999,10 @@ declare interface BorderImageOption { * @since 11 */ /** - * Border image width + * Width of the border image. * * @type { ?(Length | EdgeWidths | LocalizedEdgeWidths) } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -10358,9 +11039,10 @@ declare interface BorderImageOption { * @since 11 */ /** - * Border image outset + * Amount by which the border image is extended beyond the border box. * * @type { ?(Length | EdgeWidths | LocalizedEdgeWidths) } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -10387,9 +11069,12 @@ declare interface BorderImageOption { * @since 10 */ /** - * Border image center fill + * Whether to fill the center of the border image. + * true: Fill the center of the border image. + * false: Do not fill the center of the border image. * * @type { ?boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -10422,6 +11107,32 @@ declare class LayoutPolicy { * @since 15 */ static readonly matchParent: LayoutPolicy; + /** + * The component fills its content which means its size is as large as its children but it is constained by its parent. + * + * @type { LayoutPolicy } + * @readonly + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + static readonly wrapContent: LayoutPolicy; + /** + * The component fills its content which means its size is as large as its children. + * + * @type { LayoutPolicy } + * @readonly + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + static readonly fixAtIdealSize: LayoutPolicy; } /** @@ -10472,7 +11183,7 @@ declare interface ClickEvent extends BaseEvent { * @since 10 */ /** - * X coordinate of the click point relative to the left edge of the device screen. + * X coordinate of the click relative to the upper left corner of the application screen. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10491,7 +11202,7 @@ declare interface ClickEvent extends BaseEvent { * @since 10 */ /** - * Y coordinate of the click point relative to the upper edge of the device screen. + * Y coordinate of the click relative to the upper left corner of the application screen. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10510,7 +11221,7 @@ declare interface ClickEvent extends BaseEvent { * @since 10 */ /** - * X coordinate of the click point relative to the left edge of the current window. + * X coordinate of the click relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10529,7 +11240,7 @@ declare interface ClickEvent extends BaseEvent { * @since 10 */ /** - * Y coordinate of the click point relative to the upper edge of the current window. + * Y coordinate of the click relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10540,7 +11251,7 @@ declare interface ClickEvent extends BaseEvent { windowY: number; /** - * X coordinate of the click point relative to the left edge of the current window. + * X coordinate of the click relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10551,7 +11262,7 @@ declare interface ClickEvent extends BaseEvent { screenX: number; /** - * Y coordinate of the click point relative to the upper edge of the current window. + * Y coordinate of the click relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10634,7 +11345,7 @@ declare interface ClickEvent extends BaseEvent { y: number; /** - * Type of the touch hand. + * Whether the event is triggered by a left-hand or right-hand tap. * * @type { InteractionHand } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10648,6 +11359,7 @@ declare interface ClickEvent extends BaseEvent { * Prevent the default function. * * @type { function } + * @throws { BusinessError } 100017 - Component does not support prevent function. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -10812,7 +11524,7 @@ declare interface MouseEvent extends BaseEvent { * @since 10 */ /** - * X coordinate of the mouse point relative to the left edge of the device screen. + * X coordinate of the mouse pointer relative to the upper left corner of the application screen. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10829,7 +11541,7 @@ declare interface MouseEvent extends BaseEvent { * @since 10 */ /** - * Y coordinate of the mouse point relative to the upper edge of the device screen. + * Y coordinate of the mouse pointer relative to the upper left corner of the application screen. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10846,7 +11558,7 @@ declare interface MouseEvent extends BaseEvent { * @since 10 */ /** - * X coordinate of the mouse point relative to the left edge of the current window. + * X coordinate of the mouse pointer relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10863,7 +11575,7 @@ declare interface MouseEvent extends BaseEvent { * @since 10 */ /** - * Y coordinate of the mouse point relative to the upper edge of the current window. + * Y coordinate of the mouse pointer relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10873,7 +11585,7 @@ declare interface MouseEvent extends BaseEvent { windowY: number; /** - * X coordinate of the mouse point relative to the left edge of the current window. + * X coordinate of the mouse pointer relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10884,7 +11596,7 @@ declare interface MouseEvent extends BaseEvent { screenX: number; /** - * Y coordinate of the mouse point relative to the upper edge of the current window. + * Y coordinate of the mouse pointer relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10902,7 +11614,7 @@ declare interface MouseEvent extends BaseEvent { * @since 8 */ /** - * X coordinate of the mouse point relative to the left edge of the mouse hit element. + * X coordinate of the mouse pointer relative to the upper left corner of the component being clicked. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10919,7 +11631,7 @@ declare interface MouseEvent extends BaseEvent { * @since 8 */ /** - * Y coordinate of the mouse point relative to the upper edge of the mouse hit element. + * Y coordinate of the mouse pointer relative to the upper left corner of the component being clicked. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10936,7 +11648,7 @@ declare interface MouseEvent extends BaseEvent { * @since 8 */ /** - * The blocking event pops up. + * Stops the event from bubbling upwards or downwards. * * @type { function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -10968,7 +11680,7 @@ declare interface MouseEvent extends BaseEvent { rawDeltaY?: number; /** - * The pressed buttons of the mouse event. + * Array of all mouse buttons that are currently pressed. * * @type { ?MouseButton[] } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11126,7 +11838,7 @@ declare interface TouchObject { * @since 10 */ /** - * Finger unique identifier. + * Unique identifier of a finger. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11145,7 +11857,7 @@ declare interface TouchObject { * @since 10 */ /** - * X coordinate of the touch point relative to the left edge of the device screen. + * X coordinate of the touch point relative to the upper left corner of the application screen. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11164,7 +11876,7 @@ declare interface TouchObject { * @since 10 */ /** - * Y coordinate of the touch point relative to the upper edge of the device screen. + * Y coordinate of the touch point relative to the upper left corner of the application screen. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11183,7 +11895,7 @@ declare interface TouchObject { * @since 10 */ /** - * X coordinate of the touch point relative to the left edge of the current window. + * X coordinate of the touch point relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11202,7 +11914,7 @@ declare interface TouchObject { * @since 10 */ /** - * Y coordinate of the touch point relative to the upper edge of the current window. + * Y coordinate of the touch point relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11213,7 +11925,7 @@ declare interface TouchObject { windowY: number; /** - * X coordinate of the touch point relative to the left edge of the current window. + * X coordinate of the touch point relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11224,7 +11936,7 @@ declare interface TouchObject { screenX: number; /** - * Y coordinate of the touch point relative to the upper edge of the current window. + * Y coordinate of the touch point relative to the upper left corner of the application window. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11250,7 +11962,7 @@ declare interface TouchObject { * @since 10 */ /** - * X coordinate of the touch point relative to the left edge of the touched element. + * X coordinate of the touch point relative to the upper left corner of the event responding component. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11276,7 +11988,7 @@ declare interface TouchObject { * @since 10 */ /** - * Y coordinate of the touch point relative to the upper edge of the touched element. + * Y coordinate of the touch point relative to the upper left corner of the event responding component. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11287,7 +11999,7 @@ declare interface TouchObject { y: number; /** - * Type of the touch hand. + * Whether the event is triggered by a left-hand or right-hand tap. * * @type { InteractionHand } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11298,7 +12010,7 @@ declare interface TouchObject { hand?: InteractionHand; /** - * Time stamp when the touch point is pressed. + * Time when the finger is pressed. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11308,7 +12020,7 @@ declare interface TouchObject { */ pressedTime?: number; /** - * Pressure of a specific touch point. + * Pressure value of the finger press. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11319,7 +12031,7 @@ declare interface TouchObject { pressure?: number; /** - * Width of the contact area when touch is pressed of a specific touch point. + * Width of the area pressed by the finger. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11330,7 +12042,7 @@ declare interface TouchObject { width?: number; /** - * Height of the contact area when touch is pressed of a specific touch point. + * Height of the area pressed by the finger. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11532,7 +12244,7 @@ declare interface TouchEvent extends BaseEvent { * @since 10 */ /** - * Indicates the current changed finger information. + * Finger information changed. * * @type { TouchObject[] } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11558,7 +12270,7 @@ declare interface TouchEvent extends BaseEvent { * @since 10 */ /** - * The blocking event pops up. + * Stops the event from bubbling upwards or downwards. * * @type { function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11577,7 +12289,7 @@ declare interface TouchEvent extends BaseEvent { * @since 10 */ /** - * Get the historical points. + * Obtains all historical points of the current frame. * * @returns { Array } - return all historical points. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11588,9 +12300,10 @@ declare interface TouchEvent extends BaseEvent { getHistoricalPoints(): Array; /** - * Prevent the default function. + * Blocks the default event. * * @type { function } + * @throws { BusinessError } 100017 - Component does not support prevent function. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -11606,7 +12319,7 @@ declare interface TouchEvent extends BaseEvent { * @interface AxisEvent * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ declare interface AxisEvent extends BaseEvent { /** @@ -11615,7 +12328,7 @@ declare interface AxisEvent extends BaseEvent { * @type { AxisAction } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ action: AxisAction; @@ -11625,7 +12338,7 @@ declare interface AxisEvent extends BaseEvent { * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ displayX: number; @@ -11635,7 +12348,7 @@ declare interface AxisEvent extends BaseEvent { * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ displayY: number; @@ -11645,7 +12358,7 @@ declare interface AxisEvent extends BaseEvent { * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ windowX: number; @@ -11655,7 +12368,7 @@ declare interface AxisEvent extends BaseEvent { * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ windowY: number; @@ -11665,7 +12378,7 @@ declare interface AxisEvent extends BaseEvent { * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ x: number; @@ -11675,7 +12388,7 @@ declare interface AxisEvent extends BaseEvent { * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ y: number; @@ -11685,7 +12398,7 @@ declare interface AxisEvent extends BaseEvent { * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ scrollStep?: number; @@ -11695,7 +12408,7 @@ declare interface AxisEvent extends BaseEvent { * @type { Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ propagation: Callback; @@ -11705,7 +12418,7 @@ declare interface AxisEvent extends BaseEvent { * @returns { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ getHorizontalAxisValue(): number; @@ -11715,15 +12428,15 @@ declare interface AxisEvent extends BaseEvent { * @returns { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ getVerticalAxisValue(): number; } /** * Defines the callback type used in onSizeChange. - * The value of oldValue is last size of the component. - * The value of newValue is new size of the component. + *
oldValue - the width and height of the component before the change. + *
newValue - the width and height of the component after the change. * * @typedef { function } SizeChangeCallback * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11747,7 +12460,21 @@ declare type SizeChangeCallback = (oldValue: SizeOptions, newValue: SizeOptions) * @atomicservice * @since 12 */ -declare type GestureRecognizerJudgeBeginCallback = (event: BaseGestureEvent, current: GestureRecognizer, recognizers: Array) => GestureJudgeResult; +/** + * Defines the callback type used in onGestureRecognizerJudgeBegin. + * + * @typedef { function } GestureRecognizerJudgeBeginCallback + * @param { BaseGestureEvent } event - the event information + * @param { GestureRecognizer } current - the current gesture recognizer of the component + * @param { Array } recognizers - the gesture recognizers of the component on the response chain + * @param { Array } touchRecognizers - the touch recognizers of the component on the response chain + * @returns { GestureJudgeResult } the gesture judge result + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare type GestureRecognizerJudgeBeginCallback = (event: BaseGestureEvent, current: GestureRecognizer, recognizers: Array, touchRecognizers?: Array) => GestureJudgeResult; /** * Defines the callback type used in shouldBuiltInRecognizerParallelWith. @@ -11776,6 +12503,22 @@ declare type ShouldBuiltInRecognizerParallelWithCallback = (current: GestureReco */ declare type TransitionFinishCallback = (transitionIn: boolean) => void; +/** + * Defines the callback type used in onTouchTestDone. + * When the user touch down, the system performs hit test process to collect all gesture recognizers + * based on the press location, when the collection is completed, and before gesture begin to be recognizing, + * the callback is triggered, you can get all recognizer's information from this callback. + * + * @typedef { function } TouchTestDoneCallback + * @param { BaseGestureEvent } event - the event information, basicly is the touch down information + * @param { Array } recognizers - the gesture recognizers of the component on the response chain + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare type TouchTestDoneCallback = (event: BaseGestureEvent, recognizers: Array) => void; + /** * Defines the PixelMap type object for ui component. * @@ -11836,6 +12579,10 @@ declare interface PixelMapMock { */ /** * Enum for Drag Behavior. + * + * NOTE:
+ * DragBehavior serves to inform you about the intended method of data handling, + * whether it's a copy or a move, but it does not actually dictate the real processing of the data. * * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -11954,6 +12701,26 @@ declare type UniformDataType = import('../api/@ohos.data.uniformTypeDescriptor') */ declare type DataSyncOptions = import('../api/@ohos.data.unifiedDataChannel').default.GetDataParams; +/** + * The type for SpringLoadingContext, see the detailed description in dragController. + * + * @typedef {import('../api/@ohos.arkui.dragController').default.SpringLoadingContext} SpringLoadingContext + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ +declare type SpringLoadingContext = import('../api/@ohos.arkui.dragController').default.SpringLoadingContext; + +/** + * The type for DragSpringLoadingConfiguration, see the detailed description in dragController. + * + * @typedef {import('../api/@ohos.arkui.dragController').default.DragSpringLoadingConfiguration} DragSpringLoadingConfiguration + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ +declare type DragSpringLoadingConfiguration = import('../api/@ohos.arkui.dragController').default.DragSpringLoadingConfiguration; + /** * Enum for Drag Result. * @@ -12094,7 +12861,7 @@ declare enum DragResult { */ declare enum BlendMode { /** - * Hybrid mode does not take effect + * The top image is superimposed on the bottom image without any blending. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12102,7 +12869,7 @@ declare enum BlendMode { * @since 11 */ /** - * Hybrid mode does not take effect + * The top image is superimposed on the bottom image without any blending. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12112,7 +12879,7 @@ declare enum BlendMode { */ NONE = 0, /** - * Clear destination color covered by the source to 0. + * The target pixels covered by the source pixels are erased by being turned to completely transparent. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12120,7 +12887,7 @@ declare enum BlendMode { * @since 11 */ /** - * Clear destination color covered by the source to 0. + * The target pixels covered by the source pixels are erased by being turned to completely transparent. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12130,7 +12897,7 @@ declare enum BlendMode { */ CLEAR = 1, /** - * r = s + * r = s: Only the source pixels are displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12138,7 +12905,7 @@ declare enum BlendMode { * @since 11 */ /** - * r = s + * r = s: Only the source pixels are displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12166,7 +12933,7 @@ declare enum BlendMode { */ DST = 3, /** - * r = s + (1 - sa) * d + * r = s + (1 - sa) * d: The source pixels are blended based on opacity and cover the target pixels. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12174,7 +12941,7 @@ declare enum BlendMode { * @since 11 */ /** - * r = s + (1 - sa) * d + * r = s + (1 - sa) * d: The source pixels are blended based on opacity and cover the target pixels. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12184,7 +12951,7 @@ declare enum BlendMode { */ SRC_OVER = 4, /** - * r = d + (1 - da) * s + * r = d + (1 - da) * s: The target pixels are blended based on opacity and cover on the source pixels. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12192,7 +12959,7 @@ declare enum BlendMode { * @since 11 */ /** - * r = d + (1 - da) * s + * r = d + (1 - da) * s: The target pixels are blended based on opacity and cover on the source pixels. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12202,7 +12969,7 @@ declare enum BlendMode { */ DST_OVER = 5, /** - * r = s * da + * r = s * da: Only the part of the source pixels that overlap with the target pixels is displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12210,7 +12977,7 @@ declare enum BlendMode { * @since 11 */ /** - * r = s * da + * r = s * da: Only the part of the source pixels that overlap with the target pixels is displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12220,7 +12987,7 @@ declare enum BlendMode { */ SRC_IN = 6, /** - * r = d * sa + * r = d * sa: Only the part of the target pixels that overlap with the source pixels is displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12228,7 +12995,7 @@ declare enum BlendMode { * @since 11 */ /** - * r = d * sa + * r = d * sa: Only the part of the target pixels that overlap with the source pixels is displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12264,7 +13031,7 @@ declare enum BlendMode { * @since 11 */ /** - * r = d * (1 - sa) + * r = d * (1 - sa), retains the parts of the destination pixels that do not overlap with the source. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12274,7 +13041,8 @@ declare enum BlendMode { */ DST_OUT = 9, /** - * r = s * da + d * (1 - sa) + * r = s * da + d * (1 - sa): The part of the source pixels that overlap with the target pixels is displayed + * and the part of the target pixels that do not overlap with the source pixels are displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12282,7 +13050,8 @@ declare enum BlendMode { * @since 11 */ /** - * r = s * da + d * (1 - sa) + * r = s * da + d * (1 - sa): The part of the source pixels that overlap with the target pixels is displayed + * and the part of the target pixels that do not overlap with the source pixels are displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12300,7 +13069,8 @@ declare enum BlendMode { * @since 11 */ /** - * r = d * sa + s * (1 - da) + * r = d * sa + s * (1 - da): The part of the target pixels that overlap with the source pixels + * and the part of the source pixels that do not overlap with the target pixels are displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12336,7 +13106,8 @@ declare enum BlendMode { * @since 11 */ /** - * r = min(s + d, 1) + * r = min(s + d, 1): + * New pixels resulting from adding the source pixels to the target pixels are displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12490,7 +13261,7 @@ declare enum BlendMode { */ HARD_LIGHT = 21, /** - * lighten or darken, depending on source + * The LIGHTEN or DARKEN mode is used, depending on the source pixels. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12498,7 +13269,7 @@ declare enum BlendMode { * @since 11 */ /** - * lighten or darken, depending on source + * The LIGHTEN or DARKEN mode is used, depending on the source pixels. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12516,7 +13287,8 @@ declare enum BlendMode { * @since 11 */ /** - * rc = s + d - 2 * (min(s * da, d * sa)), ra = kSrcOver + * rc = s + d - 2 * (min(s * da, d * sa)), ra = kSrcOver: The final pixel is the result of subtracting + * the darker of the two pixels (source and target) from the lighter one. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12544,7 +13316,8 @@ declare enum BlendMode { */ EXCLUSION = 24, /** - * r = s * (1 - da) + d * (1 - sa) + s * d + * r = s * (1 - da) + d * (1 - sa) + s * d: + * The final pixel is the result of multiplying the source pixel by the target pixel. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12552,7 +13325,8 @@ declare enum BlendMode { * @since 11 */ /** - * r = s * (1 - da) + d * (1 - sa) + s * d + * r = s * (1 - da) + d * (1 - sa) + s * d: + * The final pixel is the result of multiplying the source pixel by the target pixel. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12660,7 +13434,7 @@ declare enum BlendMode { */ declare enum BlendApplyType { /** - * Blend view's content in sequence over dst + * The content of the view is blended in sequence on the target image. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12668,7 +13442,7 @@ declare enum BlendApplyType { * @since 11 */ /** - * Blend view's content in sequence over dst + * The content of the view is blended in sequence on the target image. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12679,8 +13453,8 @@ declare enum BlendApplyType { FAST = 0, /** - * Composite this views's contents into an - * offscreen image and then blend over dst + * The content of the component and its child components are drawn on the + * offscreen canvas, and then blended with the existing content on the canvas. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -12688,8 +13462,8 @@ declare enum BlendApplyType { * @since 11 */ /** - * Composite this views's contents into an - * offscreen image and then blend over dst + * The content of the component and its child components are drawn on the + * offscreen canvas, and then blended with the existing content on the canvas. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -13091,7 +13865,7 @@ declare interface DragEvent { getVelocity(): number; /** - * Query the ModifierKey press state, support 'ctrl'|'alt'|'shift'|'fn' + * Query the ModifierKey press state, support 'ctrl'|'alt'|'shift' * * @param { Array } keys - indicate the keys of the ModifierKey. * @returns { boolean } @@ -13101,7 +13875,7 @@ declare interface DragEvent { * @since 12 */ /** - * Query the ModifierKey press state, support 'ctrl'|'alt'|'shift'|'fn' + * Query the ModifierKey press state, support 'ctrl'|'alt'|'shift' * * @param { Array } keys - indicate the keys of the ModifierKey. * @returns { boolean } @@ -13136,12 +13910,61 @@ declare interface DragEvent { * @param { DataSyncOptions } options - the data sync options. * @returns { string } The data key returned by system, which can be used as the identify of the request. * @throws { BusinessError } 401 - Parameter error. - * @throws { BusinessError } 190003 - Operation no allowed for current pharse. + * @throws { BusinessError } 190003 - Operation not allowed for current pharse. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 15 */ startDataLoading(options: DataSyncOptions): string; + + /** + * Retrieve the bundle information of the drag source application. + * + * @returns { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + getDragSource(): string; + + /** + * Call this method to determine whether the current drag operation is a cross-device drag. + * + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + isRemote(): boolean; + + /** + * Get the id of display which the drag event is occuring on. + * + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + getDisplayId(): number; + + /** + * Enable the internal drop animation, which is only avaiable for system applications. + * + * The animations' configuration need to be provided through the input paramerter, and it is a string in json format. + * + * This method can only be called in onDrop, and please do not use custom drop animation after this method, + * as it will reset the calling result, and use custom drop animation insteadly. + * + * @param { string } configuration - the internal drop animation's configuration. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 190003 - Operation not allowed for current phase. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ + enableInternalDropAnimation(configuration: string): void; } /** @@ -13459,7 +14282,7 @@ declare interface KeyEvent { intentionCode: IntentionCode; /** - * Get the modifier keys press state, support 'ctrl'|'alt'|'shift'|'fn' + * Get the modifier keys press state, support 'ctrl'|'alt'|'shift' * * @param { Array } keys - indicate the modifier keys. * @returns { boolean } @@ -13469,7 +14292,7 @@ declare interface KeyEvent { * @since 12 */ /** - * Get the modifier keys press state, support 'ctrl'|'alt'|'shift'|'fn' + * Get the modifier keys press state, support 'ctrl'|'alt'|'shift' * * @param { Array } keys - indicate the modifier keys. * @returns { boolean } @@ -13490,6 +14313,36 @@ declare interface KeyEvent { * @since 14 */ unicode?: number; + + /** + * Whether Num Lock is on + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 19 + */ + isNumLockOn?: boolean; + + /** + * Whether Caps Lock is on + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 19 + */ + isCapsLockOn?: boolean; + + /** + * Whether Scroll Lock is on + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 19 + */ + isScrollLockOn?: boolean; } /** @@ -13602,7 +14455,8 @@ declare interface CrownEvent { */ declare interface BindOptions { /** - * Defines the background color + * Background color of the sheet. + *
Default value: **Color.White**. * * @type { ?ResourceColor } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -13610,7 +14464,8 @@ declare interface BindOptions { * @since 10 */ /** - * Defines the background color + * Background color of the sheet. + *
Default value: **Color.White**. * * @type { ?ResourceColor } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -13621,7 +14476,7 @@ declare interface BindOptions { backgroundColor?: ResourceColor; /** - * Callback function when overlay interface appears + * Callback for when the sheet is displayed (after the animation ends). * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -13629,7 +14484,7 @@ declare interface BindOptions { * @since 10 */ /** - * Callback function when overlay interface appears + * Callback for when the sheet is displayed (after the animation ends). * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -13640,7 +14495,7 @@ declare interface BindOptions { onAppear?: () => void; /** - * Callback function when overlay interface exits + * Callback for when the sheet disappears (after the animation ends). * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -13648,7 +14503,7 @@ declare interface BindOptions { * @since 10 */ /** - * Callback function when overlay interface exits + * Callback for when the sheet disappears (after the animation ends). * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -13659,7 +14514,7 @@ declare interface BindOptions { onDisappear?: () => void; /** - * Callback function before overlay animation starts. + * Callback for when the sheet is about to be displayed (before the animation starts). * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -13776,6 +14631,18 @@ declare interface ContentCoverOptions extends BindOptions { * @since 12 */ transition?: TransitionEffect; + + /** + * Set contentCover content adapts to safeArea. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + enableSafeArea?: boolean; } /** @@ -13854,14 +14721,14 @@ declare interface SheetTitleOptions { */ declare enum SheetType { /** - * Defines bottom sheet type. + * Bottom sheet. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Defines bottom sheet type. + * Bottom sheet. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -13871,14 +14738,14 @@ declare enum SheetType { BOTTOM = 0, /** - * Defines center sheet type. + * Center sheet. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Defines center sheet type. + * Center sheet. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -13888,14 +14755,14 @@ declare enum SheetType { CENTER = 1, /** - * Defines popup sheet type. + * Popup sheet. The popup sheet cannot be dismissed with a pull-down gesture. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Defines popup sheet type. + * Popup sheet. The popup sheet cannot be dismissed with a pull-down gesture. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -13903,6 +14770,16 @@ declare enum SheetType { * @since 12 */ POPUP = 2, + + /** + * Defines side sheet type. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + SIDE = 3, } /** @@ -13916,7 +14793,8 @@ declare enum SheetType { */ declare enum SheetMode { /** - * Sheet displays above all page levels. + * The sheet is displayed at the top of the window corresponding to the current **UIContext** instance, + * above all pages. It is displayed at the same level as dialog boxes. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -13926,7 +14804,16 @@ declare enum SheetMode { OVERLAY = 0, /** - * Sheet displays within the current page. + * The sheet is displayed at the top of the current page. + *
**NOTE**
Currently, the sheet can only be mounted on a **Page** + * or **NavDestination** node, with priority given to the **NavDestination** + * node if it is present. This means that, the sheet can only be displayed at + * the top of these two types of pages.
In this mode, new pages can overlay + * the sheet, and when the user returns to the previous page, the sheet remains + * present without losing its content.
In this mode, you must ensure that + * the target page node, such as the **Page** node, has been attached to the tree + * before bringing up the sheet; otherwise, the sheet will not be able to be + * attached to the corresponding page node. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -14156,7 +15043,9 @@ declare interface SheetOptions extends BindOptions { height?: SheetSize | Length; /** - * Defines whether the control bar is displayed. + * Whether to display the drag bar. + *
**NOTE**
By default, the drag bar is displayed only when the sheet's + * **detents** attribute is set to multiple heights and the settings take effect. * * @type { ?boolean } * @default true @@ -14165,7 +15054,9 @@ declare interface SheetOptions extends BindOptions { * @since 10 */ /** - * Defines whether the control bar is displayed. + * Whether to display the drag bar. + *
**NOTE**
By default, the drag bar is displayed only when the sheet's + * **detents** attribute is set to multiple heights and the settings take effect. * * @type { ?boolean } * @default true @@ -14177,7 +15068,19 @@ declare interface SheetOptions extends BindOptions { dragBar?: boolean; /** - * Defines sheet maskColor + * Defines whether the sheet dragbar is floating, when it's displayed. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + enableFloatingDragBar?: boolean; + + /** + * Mask color of the sheet. * * @type { ?ResourceColor } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14185,7 +15088,7 @@ declare interface SheetOptions extends BindOptions { * @since 10 */ /** - * Defines sheet maskColor + * Mask color of the sheet. * * @type { ?ResourceColor } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14197,14 +15100,28 @@ declare interface SheetOptions extends BindOptions { /** * Defines sheet detents - * * @type { ?[(SheetSize | Length), (SheetSize | Length)?, (SheetSize | Length)?] } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Defines sheet detents + * Array of heights where the sheet can rest. + *

**NOTE**: + *
Since API version 12, this attribute takes effect for a bottom sheet in landscape mode. + *
In earlier versions, this attribute takes effect only for the bottom sheet in portrait mode. + *
The first height in the tuple is the initial height. + *
The sheet can switch between heights by dragging. + *
After the sheet is dragged and released, it switches to the target height or remains at the current height, + * depending on the velocity and distance. + *
If the velocity exceeds the threshold, the sheet switches to the target height in the same direction as the + * velocity. + *
If the velocity is less than the threshold, the displacement distance is used for judgement. + *
If the displacement distance is greater than 1/2 of the distance between the current and target positions, + * the sheet switches to the target height in the same direction as the velocity; otherwise, the sheet remains at the + * current height. + *
Velocity threshold: 1000; Distance threshold: 50%. + *

* * @type { ?[(SheetSize | Length), (SheetSize | Length)?, (SheetSize | Length)?] } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14215,7 +15132,7 @@ declare interface SheetOptions extends BindOptions { detents?: [(SheetSize | Length), (SheetSize | Length)?, (SheetSize | Length)?]; /** - * Defines sheet background blur Style + * Background blur of the sheet. By default, there is no background blur. * * @type { ?BlurStyle } * @default BlurStyle.NONE @@ -14224,7 +15141,7 @@ declare interface SheetOptions extends BindOptions { * @since 11 */ /** - * Defines sheet background blur Style + * Background blur of the sheet. By default, there is no background blur. * * @type { ?BlurStyle } * @default BlurStyle.NONE @@ -14257,7 +15174,11 @@ declare interface SheetOptions extends BindOptions { showClose?: boolean | Resource; /** - * Defines the sheet prefer type + * Type of the sheet. + *
**NOTE**
The types supported by the sheet vary by window. + *
1. Width < 600 vp: bottom. + *
2. 600 vp <= Width: bottom, center, and popup (default). + *
3. Width >= 840 vp: bottom, center, and popup (default). * * @type { ?(SheetType.CENTER | SheetType.POPUP) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14265,7 +15186,11 @@ declare interface SheetOptions extends BindOptions { * @since 11 */ /** - * Defines the sheet prefer type + * Type of the sheet. + *
**NOTE**
The types supported by the sheet vary by window. + *
1. Width < 600 vp: bottom. + *
2. 600 vp <= Width: bottom, center, and popup (default). + *
3. Width >= 840 vp: bottom, center, and popup (default). * * @type { ?SheetType } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14276,7 +15201,7 @@ declare interface SheetOptions extends BindOptions { preferType?: SheetType; /** - * Defines the sheet title + * Title of the sheet. * * @type { ?(SheetTitleOptions | CustomBuilder) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14284,7 +15209,7 @@ declare interface SheetOptions extends BindOptions { * @since 11 */ /** - * Defines the sheet title + * Title of the sheet. * * @type { ?(SheetTitleOptions | CustomBuilder) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14295,7 +15220,12 @@ declare interface SheetOptions extends BindOptions { title?: SheetTitleOptions | CustomBuilder; /** - * Callback function when the sheet interactive dismiss + * Callback invoked when the user performs an interactive dismiss operation: pulling down or clicking + * the back button, the mask, or the close icon.
**NOTE**
If this callback is registered, the + * sheet is not dismissed immediately when the user performs the above operations. To dismiss the sheet, + * you must call **shouldDismiss.dismiss()** in the callback.
If this callback is not registered, the + * sheet is dismissed immediately when the user performs the above operations, without any additional + * behavior.
It is recommended that this API be used in scenarios where a secondary confirmation is required. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14303,7 +15233,12 @@ declare interface SheetOptions extends BindOptions { * @since 11 */ /** - * Callback function when the sheet interactive dismiss + * Callback invoked when the user performs an interactive dismiss operation: pulling down or clicking + * the back button, the mask, or the close icon.
**NOTE**
If this callback is registered, the + * sheet is not dismissed immediately when the user performs the above operations. To dismiss the sheet, + * you must call **shouldDismiss.dismiss()** in the callback.
If this callback is not registered, the + * sheet is dismissed immediately when the user performs the above operations, without any additional + * behavior.
It is recommended that this API be used in scenarios where a secondary confirmation is required. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14314,7 +15249,18 @@ declare interface SheetOptions extends BindOptions { shouldDismiss?: (sheetDismiss: SheetDismiss) => void; /** - * Callback function when the sheet will dismiss + * Callback invoked when the user performs an interactive dismiss operation: + * pulling down or clicking the back button, the mask, or the close icon, + * to obtain the type of dismiss operation and decide whether to dismiss the sheet. + *

**NOTE**: + *
If this callback is registered, the sheet is not dismissed immediately when the user performs the above + * operations. + *
Instead, you can use the DismissSheetAction parameter in the callback to determine the type of + * dismiss operation and decide whether to dismiss the sheet. + *
If this callback is not registered, the sheet is dismissed immediately when the user performs the above + * operations, without any additional behavior. + *
No further interception with onWillDismiss is allowed in an onWillDismiss callback. + *

* * @type { ?Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14325,8 +15271,16 @@ declare interface SheetOptions extends BindOptions { onWillDismiss?: Callback; /** - * Sheet springs back callback when dismiss - * + * Callback invoked when the user performs a pull-down-to-dismiss gesture, to control the bounce effect. + *

**NOTE**: + *
If this callback is registered along with **shouldDismiss** or **onWillDismiss** you can control whether the + * sheet bounces back during the pull-down-to-dismiss operation by calling **springBack** in the callback. + *
If this callback is not registered but **shouldDismiss** or **onWillDismiss** is registered, the sheet will + * bounce back before remaining open or being dismissed based on the callback behavior. + *
If neither this callback nor **shouldDismiss** or **onWillDismiss** is registered, the sheet is dismissed by + * default during the pull-down-to-dismiss operation. + *

+ * * @type { ?Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -14336,7 +15290,12 @@ declare interface SheetOptions extends BindOptions { onWillSpringBackWhenDismiss?: Callback; /** - * Set whether interaction is allowed outside the sheet + * Whether to allow users to interact with the page pertaining to the sheet. + *
**NOTE**
The value **true** means that interactions are allowed, in which + * case no mask is not displayed. The value **false** means that interactions are not + * allowed, in which case a mask is displayed. If this parameter is not set, interactions + * are allowed for the popup sheet, but not for bottom and center sheets. If this parameter + * is set to **true**, the setting of **maskColor** does not take effect. * * @type { ?boolean } * @default false @@ -14345,7 +15304,12 @@ declare interface SheetOptions extends BindOptions { * @since 11 */ /** - * Set whether interaction is allowed outside the sheet + * Whether to allow users to interact with the page pertaining to the sheet. + *
**NOTE**
The value **true** means that interactions are allowed, in which + * case no mask is not displayed. The value **false** means that interactions are not + * allowed, in which case a mask is displayed. If this parameter is not set, interactions + * are allowed for the popup sheet, but not for bottom and center sheets. If this parameter + * is set to **true**, the setting of **maskColor** does not take effect. * * @type { ?boolean } * @default false @@ -14357,7 +15321,8 @@ declare interface SheetOptions extends BindOptions { enableOutsideInteractive?: boolean; /** - * Defines the sheet's width. + * Width of the sheet. + * Percentage parameter method: Set the width of the sheet as a percentage of the width of the parent element. * * @type { ?Dimension } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14368,7 +15333,16 @@ declare interface SheetOptions extends BindOptions { width?: Dimension; /** - * Defines the sheet's border width. + * Border width of the sheet. + * You can set the width for all four sides or set separate widths for individual sides. + * Default value: **0**. + * Percentage parameter method: + * Set the border width of the sheet as a percentage of the width of the parent element. + * If the left and right border widths of the sheet are greater than the width of the sheet, and the top + * and bottom border widths are greater than the height of the sheet, the display may not appear as expected. + *

**Note**: + *
For bottom sheets, the bottom border width setting is ineffective. + *

* * @type { ?(Dimension | EdgeWidths | LocalizedEdgeWidths) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14379,9 +15353,14 @@ declare interface SheetOptions extends BindOptions { borderWidth?: Dimension | EdgeWidths | LocalizedEdgeWidths; /** - * Defines the sheet's border color. - * + * Border color of the sheet. + * **borderColor** must be used with **borderWidth** in pairs. + *

**NOTE**: + *
For bottom sheets, the bottom border color setting is ineffective. + *

+ * * @type { ?(ResourceColor | EdgeColors | LocalizedEdgeColors) } + * @default Color.Black * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -14401,7 +15380,8 @@ declare interface SheetOptions extends BindOptions { borderStyle?: BorderStyle | EdgeStyles; /** - * Defines the sheet's shadow. + * Shadow of the sheet. + * Default value for 2-in-1 devices: **ShadowStyle.OUTER_FLOATING_SM**. * * @type { ?(ShadowOptions | ShadowStyle) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14412,7 +15392,14 @@ declare interface SheetOptions extends BindOptions { shadow?: ShadowOptions | ShadowStyle; /** - * Called when height of the sheet is changed + * Callback for changes in the height of the sheet. + *

**Note**: + *
For a bottom sheet, the height of each frame is only returned when there are changes in detents or during drag + * actions. + *
When the sheet is pulled up or making space for the soft keyboard, only the final height is returned. + *
For other types of sheets, the final height is only returned when the sheet is pulled up. + *
The return value is in px. + *

* * @type { ?Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14423,7 +15410,7 @@ declare interface SheetOptions extends BindOptions { onHeightDidChange?: Callback; /** - * Determine the level sheet shows, whether sheet should be displayed within the page + * Determine the level sheet shows, whether sheet should be displayed within the page. * * @type { ?SheetMode } * @default SheetMode.OVERLAY @@ -14435,7 +15422,7 @@ declare interface SheetOptions extends BindOptions { mode?: SheetMode; /** - * Determine sheet scroll size mode. + * Content update mode of the sheet when it is scrolled. * * @type { ?ScrollSizeMode } * @default ScrollSizeMode.FELLOW_DETEND @@ -14447,8 +15434,11 @@ declare interface SheetOptions extends BindOptions { scrollSizeMode?: ScrollSizeMode; /** - * Called when detents of the sheet changed - * + * Callback for changes in the detents of the sheet. + *

**NOTE**: + *
For a bottom sheet, the final height is returned when there are changes in detents. + *
The return value is in px. + *

* @type { ?Callback } * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -14580,7 +15570,7 @@ declare interface SheetOptions extends BindOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ showInSubWindow?: boolean; @@ -14915,7 +15905,7 @@ declare interface PopupMessageOptions { */ declare enum DismissReason { /** - * Press back + * Touching the Back button, swiping left or right on the screen, or pressing the Esc key. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -14925,7 +15915,7 @@ declare enum DismissReason { PRESS_BACK = 0, /** - * Touch component outside + * Touching the mask. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -14935,7 +15925,7 @@ declare enum DismissReason { TOUCH_OUTSIDE = 1, /** - * Close button + * Touching the Close button. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -14946,13 +15936,28 @@ declare enum DismissReason { /** * Slide down + *

NOTE: + *
This API is effective only in sheet transition. + *

* * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 12 */ - SLIDE_DOWN = 3 + SLIDE_DOWN = 3, + + /** + * Slide, not slide down. + * Default means slide right, after mirroring it means slide left. + * Choosing to slide left or slide right is not supported. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + SLIDE = 4, } /** @@ -15000,6 +16005,7 @@ declare interface DismissPopupAction { declare interface PopupStateChangeParam { /** * is Visible. + * Anonymous Object Rectification. * * @type { boolean } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -15034,6 +16040,7 @@ declare type PopupStateChangeCallback = (event: PopupStateChangeParam) => void; declare interface PopupMaskType { /** * Color. + * Anonymous Object Rectification. * * @type { ResourceColor } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -15044,6 +16051,40 @@ declare interface PopupMaskType { color: ResourceColor; } +/** + * Popup border LinearGradient + * + * @interface PopupBorderLinearGradient + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare interface PopupBorderLinearGradient { + /** + * direction: Direction of Linear Gradient. The default value is GradientDirection.Bottom; + * + * @type { ?GradientDirection } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + direction?: GradientDirection; + + /** + * Defines color description for gradients. + * number: The position of the color stop. The value range is 0 to 1. + * + * @type { Array<[ResourceColor, number]> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + colors: Array<[ResourceColor, number]>; +} + /** * Popup common options * @@ -15309,6 +16350,62 @@ declare interface PopupCommonOptions { * @since 18 */ followTransformOfTarget?: boolean; + + /** + * Determine if popup can avoid the target when the display space is insufficient. + * + * @type { ?AvoidanceMode } + * @default AvoidanceMode.COVER_TARGET + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + avoidTarget?: AvoidanceMode; + + /** + * The width of popup's outline. + * + * @type { ?Dimension } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + outlineWidth?: Dimension; + + /** + * The width of popup's border. + * + * @type { ?Dimension } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + borderWidth?: Dimension; + + /** + * The LinearGradient of popup's outline. + * + * @type { ?PopupBorderLinearGradient } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + outlineLinearGradient?: PopupBorderLinearGradient; + + /** + * The LinearGradient of popup's innerline. + * + * @type { ?PopupBorderLinearGradient } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + borderLinearGradient?: PopupBorderLinearGradient; } /** @@ -15318,7 +16415,7 @@ declare interface PopupCommonOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare interface TipsOptions { @@ -15329,7 +16426,7 @@ declare interface TipsOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ appearingTime?: number; @@ -15340,7 +16437,7 @@ declare interface TipsOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ disappearingTime?: number; @@ -15351,7 +16448,7 @@ declare interface TipsOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ appearingTimeWithContinuousOperation?: number; @@ -15362,7 +16459,7 @@ declare interface TipsOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ disappearingTimeWithContinuousOperation?: number; @@ -15374,7 +16471,7 @@ declare interface TipsOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ enableArrow?: boolean; @@ -15385,7 +16482,7 @@ declare interface TipsOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ arrowPointPosition?: ArrowPointPosition; @@ -15397,7 +16494,7 @@ declare interface TipsOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ arrowWidth?: Dimension; @@ -15409,9 +16506,20 @@ declare interface TipsOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ arrowHeight?: Dimension; + + /** + * The position of the tips. + * + * @type { ?TipsAnchorType } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + showAtAnchor?: TipsAnchorType; } /** @@ -15455,7 +16563,7 @@ declare interface PopupOptions { * @since 10 */ /** - * Information in the pop-up window. + * Content of the popup message. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -15784,7 +16892,7 @@ declare interface PopupOptions { * @since 10 */ /** - * Sets the options of popup message. + * Parameters of the popup message. * * @type { ?PopupMessageOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -16091,6 +17199,62 @@ declare interface PopupOptions { * @since 15 */ keyboardAvoidMode?: KeyboardAvoidMode; + + /** + * Determine if popup can avoid the target when the display space is insufficient. + * + * @type { ?AvoidanceMode } + * @default AvoidanceMode.COVER_TARGET + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + avoidTarget?: AvoidanceMode; + + /** + * The width of popup's outline. + * + * @type { ?Dimension } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + outlineWidth?: Dimension; + + /** + * The width of popup's border. + * + * @type { ?Dimension } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + borderWidth?: Dimension; + + /** + * The LinearGradient of popup's outline. + * + * @type { ?PopupBorderLinearGradient } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + outlineLinearGradient?: PopupBorderLinearGradient; + + /** + * The LinearGradient of popup's innerline. + * + * @type { ?PopupBorderLinearGradient } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + borderLinearGradient?: PopupBorderLinearGradient; } /** @@ -16134,7 +17298,15 @@ declare interface CustomPopupOptions { * @since 10 */ /** - * builder of popup + * Popup builder. + *

NOTE: + *
The popup attribute is a universal attribute. A custom popup does not support display of another popup. + *
The position attribute cannot be used for the first-layer container in the builder. + *
If the position attribute is used, the popup will not be displayed. + *
If a custom component is used in the builder, the aboutToAppear and aboutToDisappear lifecycle callbacks + * of the custom component are irrelevant to the visibility of the popup. As such, the lifecycle of the + * custom component cannot be used to determine whether the popup is displayed or not. + *

* * @type { CustomBuilder } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -16160,9 +17332,11 @@ declare interface CustomPopupOptions { * @since 10 */ /** - * placement of popup + * Preferred position of the popup. If the set position is insufficient for holding the popup, + * it will be automatically adjusted. * * @type { ?Placement } + * @default Placement.Bottom * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16192,14 +17366,16 @@ declare interface CustomPopupOptions { * background color of popup * * @type { ?(Color | string | Resource | number) } + * @default '#4d4d4d' * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * background color of popup + * Color of the popup. To remove the background blur, set backgroundBlurStyle to BlurStyle.NONE. * * @type { ?(Color | string | Resource | number) } + * @default TRANSPARENT plus COMPONENT_ULTRA_THICK * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16226,6 +17402,7 @@ declare interface CustomPopupOptions { * whether show arrow * * @type { ?boolean } + * @default true * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16249,9 +17426,15 @@ declare interface CustomPopupOptions { * @since 10 */ /** - * whether hide popup when click mask + * Whether to automatically dismiss the popup when an operation is performed on the page. + *

NOTE: + *
To enable the popup to disappear upon a click on it, place a layout component in the builder place the + * component in the layout component, and modify the value of the bindPopup variable (show: boolean) + * in the onClick event of the layout component. + *

* * @type { ?boolean } + * @default true * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16275,7 +17458,7 @@ declare interface CustomPopupOptions { * @since 10 */ /** - * on State Change + * Callback for the popup status change event. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -16322,6 +17505,13 @@ declare interface CustomPopupOptions { /** * The offset of the sharp corner of popup. * + * Offset of the popup arrow relative to the popup. When the arrow is at the top or bottom of the popup: + *
The value 0 indicates that the arrow is located on the leftmost, and any other value indicates the distance + * from the arrow to the leftmost; the arrow is centered by default. When the arrow is on the left or right + * side of the popup: The value indicates the distance from the arrow to the top; the arrow is centered by + * default. When the popup is displayed on either edge of the screen, it will automatically deviate leftward + * or rightward to stay within the safe area. When the value is 0, the arrow always points to the bound component. + * * @type { ?Length } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -16349,6 +17539,7 @@ declare interface CustomPopupOptions { * Whether to display in the sub window. * * @type { ?boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16367,9 +17558,9 @@ declare interface CustomPopupOptions { * @since 10 */ /** - * The mask to block gesture events of popup. - * When mask is set false, gesture events are not blocked. - * When mask is set true, gesture events are blocked and mask color is transparent. + * Whether to apply a mask to the popup. + *
The value true means to apply a transparent mask to the popup, false means not to apply a mask to the popup, + * and a color value means to apply a mask in the corresponding color to the popup. * * @type { ?(boolean | { color: ResourceColor }) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -16426,7 +17617,7 @@ declare interface CustomPopupOptions { * @since 11 */ /** - * Set the width of the popup. + * Width of the popup. * * @type { ?Dimension } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -16445,7 +17636,8 @@ declare interface CustomPopupOptions { * @since 11 */ /** - * The position of the sharp corner of popup. + * Position of the popup arrow relative to its parent component. Available positions are Start, Center, and End, + * in both vertical and horizontal directions. All these positions are within the parent component area. * * @type { ?ArrowPointPosition } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -16465,10 +17657,15 @@ declare interface CustomPopupOptions { * @since 11 */ /** - * The width of the arrow. + * Arrow thickness. If the arrow thickness exceeds the length of the edge minus twice the size of the popup + * rounded corner, the arrow is not drawn. * * @type { ?Dimension } * @default 16.0_vp. + *

NOTE: + *
This parameter cannot be set in percentage. + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16490,6 +17687,10 @@ declare interface CustomPopupOptions { * * @type { ?Dimension } * @default 8.0_vp. + *

NOTE: + *
This parameter cannot be set in percentage. + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16507,7 +17708,7 @@ declare interface CustomPopupOptions { * @since 11 */ /** - * The round corners of the popup. + * Rounded corner radius of the popup. * * @type { ?Dimension } * @default 20.0_vp. @@ -16528,7 +17729,7 @@ declare interface CustomPopupOptions { * @since 11 */ /** - * The style of popup Shadow. + * Popup shadow. * * @type { ?(ShadowOptions | ShadowStyle) } * @default ShadowStyle.OUTER_DEFAULT_MD. @@ -16549,7 +17750,7 @@ declare interface CustomPopupOptions { * @since 11 */ /** - * Defines popup background blur Style + * Background blur style of the popup. * * @type { ?BlurStyle } * @default BlurStyle.COMPONENT_ULTRA_THICK @@ -16593,9 +17794,19 @@ declare interface CustomPopupOptions { transition?: TransitionEffect; /** - * Callback function when the popup interactive dismiss + * Whether to perform dismissal event interception and interception callback. + * 1. If this parameter is set to false, the system does not respond to the dismissal event initiated by + * touching the Back button, swiping left or right on the screen, or pressing the Esc key; and the system + * dismisses the popup only when show is set to false. If this parameter is set to true, the system responds + * to the dismissal event as expected. + * 2. If this parameter is set to a function, the dismissal event is intercepted and the callback function + * is executed. + *

NOTE: + *
No more onWillDismiss callback is allowed in an onWillDismiss callback. + *

* * @type { ?(boolean | Callback) } + * @default true * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16638,6 +17849,62 @@ declare interface CustomPopupOptions { * @since 15 */ keyboardAvoidMode?: KeyboardAvoidMode; + + /** + * Determine if popup can avoid the target when the display space is insufficient. + * + * @type { ?AvoidanceMode } + * @default AvoidanceMode.COVER_TARGET + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + avoidTarget?: AvoidanceMode; + + /** + * The width of popup's outline. + * + * @type { ?Dimension } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + outlineWidth?: Dimension; + + /** + * The width of popup's border. + * + * @type { ?Dimension } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + borderWidth?: Dimension; + + /** + * The LinearGradient of popup's outline. + * + * @type { ?PopupBorderLinearGradient } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + outlineLinearGradient?: PopupBorderLinearGradient; + + /** + * The LinearGradient of popup's innerline. + * + * @type { ?PopupBorderLinearGradient } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + borderLinearGradient?: PopupBorderLinearGradient; } /** @@ -16682,7 +17949,7 @@ declare enum MenuPreviewMode { * @since 11 */ /** - * Defines image type preview content. + * The preview is a screenshot of the component on which a long-press triggers the context menu. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -16770,6 +18037,18 @@ interface ContextMenuAnimationOptions { * @since 12 */ hoverScale?: AnimationRange; + + /** + * Sets whether support to interrupt the process of hover scale. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + hoverScaleInterruption?: boolean; } /** @@ -16779,7 +18058,7 @@ interface ContextMenuAnimationOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ type BorderRadiusType = Length | BorderRadiuses | LocalizedBorderRadiuses; @@ -16822,6 +18101,79 @@ declare enum HapticFeedbackMode { AUTO = 2 } +/** + * Define the modal mode of menu. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare enum ModalMode { + /** + * Modal modal automatically. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + AUTO = 0, + /** + * Operation takes effect around menu. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + NONE = 1, + /** + * Operation takes no effect around menu in target window. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + TARGET_WINDOW = 2 +} + +/** + * Menu mask type + * + * @interface MenuMaskType + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare interface MenuMaskType { + /** + * Mask color of menu. + * + * @type { ?ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + color?: ResourceColor; + + /** + * Set menu mask background blur Style. + * + * @type { ?BlurStyle } + * @default BlurStyle.BACKGROUND_THIN + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + backgroundBlurStyle?: BlurStyle; +} + /** * Defines the context menu options. * @@ -16850,10 +18202,26 @@ declare interface ContextMenuOptions { * @since 10 */ /** - * Sets the position offset of the context menu window. + * Offset for showing the context menu, which should not cause the menu to extend beyond the screen. + *

NOTE: + *
When the menu is displayed relative to the parent component area, the width or height of the area is + * automatically counted into the offset based on the placement attribute of the menu. When the menu is + * displayed above the parent component (that is, placement is set to Placement.TopLeft, Placement.Top, or + * Placement.TopRight), a positive value of x indicates rightward movement relative to the parent component, + * and a positive value of y indicates upward movement. When the menu is displayed below the parent component + * (that is, placement is set to Placement.BottomLeft, Placement.Bottom, or Placement.BottomRight), a positive + * value of x indicates rightward movement relative to the parent component, and a positive value of y indicates + * downward movement. When the menu is displayed on the left of the parent component (that is, placement is set + * to Placement.LeftTop, Placement.Left, or Placement.LeftBottom), a positive value of x indicates leftward + * movement relative to the parent component, and a positive value of y indicates downward movement. When the + * menu is displayed on the right of the parent component (that is, placement is set to Placement.RightTop, + * Placement.Right, or Placement.RightBottom), a positive value of x indicates rightward movement relative to + * the parent component, and a positive value of y indicates downward movement. If the display position of the + * menu is adjusted (different from the main direction of the initial placement value), the offset value is invalid. + *

* * @type { ?Position } - * @default - + * @default {x:0,y:0} - Percentage values are not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16871,10 +18239,15 @@ declare interface ContextMenuOptions { * @since 10 */ /** - * Sets the placement of the context menu window. + * Preferred position of the context menu. If the set position is insufficient for holding the component, it will be + * automatically adjusted. + *

NOTE: + *
If a menu is displayed by pressing and holding or right-clicking, the menu is displayed at the clicked + * position. + *

* * @type { ?Placement } - * @default - + * @default Placement.BottomLeft * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16883,7 +18256,7 @@ declare interface ContextMenuOptions { placement?: Placement; /** - * whether show arrow belong to the menu, default: false, not show arrow + * whether show arrow belong to the menu. * * @type { ?boolean } * @default false @@ -16891,7 +18264,14 @@ declare interface ContextMenuOptions { * @since 10 */ /** - * whether show arrow belong to the menu, default: false, not show arrow + * whether show arrow belong to the menu. + *

NOTE: + *
When enableArrow is true, an arrow is displayed in the position specified by placement. + *
If placement is not set or its value is invalid, the arrow is displayed above the target. + *
If the position is insufficient for holding the arrow, it is automatically adjusted. + *
When enableArrow is undefined, no arrow is displayed. + *
This API is supported in bindContextMenu since API version 10 and bindMenu since API version 12. + *

* * @type { ?boolean } * @default false @@ -16906,15 +18286,36 @@ declare interface ContextMenuOptions { * The horizontal offset to the left of menu or vertical offset to the top of menu * * @type { ?Length } - * @default 0 - * @syscap SystemCapability.ArkUI.ArkUI.Full - * @since 10 - */ - /** - * The horizontal offset to the left of menu or vertical offset to the top of menu + * @default 0vp + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Offset of the arrow relative to the context menu. The offset settings take effect only when the value is valid, + * can be converted to a number greater than 0, and does not cause the arrow to extend beyond the safe area of + * the context menu. + *

NOTE: + *
The safe distance of the arrow from the four sides of the menu is the sum of the menu's corner radius and + * half the width of the arrow. The value of placement determines whether the offset is horizontal or vertical. + * When the arrow is in the horizontal direction of the menu, the offset is the distance from the arrow to the + * leftmost arrow's safe distance. When the arrow is in the vertical direction of the menu, the offset is the + * distance from the arrow to the topmost arrow's safe distance. The default position where the arrow is + * displayed varies with the value of placement: Without any avoidance by the menu, when placement is set to + * Placement.Top or Placement.Bottom, the arrow is displayed horizontally and is centered by default; when + * placement is set to Placement.Left or Placement.Right, the arrow is displayed vertically and is centered by + * default; when placement is set to Placement.TopLeft or Placement.BottomLeft, the arrow is displayed + * horizontally by default, and the distance from the arrow to the left edge of the menu is the arrow's safe + * distance; when placement is set to Placement.TopRight or Placement.BottomRight, the arrow is displayed + * horizontally by default, and the distance from the arrow to the right edge of the menu is the arrow's safe + * distance; when placement is set to Placement.LeftTop or Placement.RightTop, the arrow is displayed vertically + * by default, and the distance from the arrow to the top edge of the menu is the arrow's safe distance; when + * placement is set to Placement.LeftBottom or Placement.RightBottom, the arrow is displayed vertically by + * default, and the distance from the arrow to the bottom edge of the menu is the arrow's safe distance. + *
This API is supported in bindContextMenu since API version 10 and bindMenu since API version 12. + *

* * @type { ?Length } - * @default 0 + * @default 0vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16932,8 +18333,15 @@ declare interface ContextMenuOptions { * @since 11 */ /** - * The preview content of context menu. - * + * Preview displayed when the context menu is triggered by a long-press or use the isShown variable of + * bindContextMenu to display the preview content style of the menu. + *

NOTE: + *
This parameter has no effect when responseType is set to ResponseType.RightClick. + *
If preview is set to MenuPreviewMode.NONE or is not set, the enableArrow parameter is effective. + *
If preview is set to MenuPreviewMode.IMAGE or CustomBuilder, no arrow will be displayed even when + * enableArrow is true. + *

+ * * @type { ?(MenuPreviewMode | CustomBuilder) } * @default MenuPreviewMode.NONE * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -16950,14 +18358,21 @@ declare interface ContextMenuOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ previewBorderRadius?: BorderRadiusType; /** - * Defines the border radius of menu. + * Border radius of the menu. + *

NOTE: + *
The value can be in percentage. + *
If the sum of the two maximum corner radii in the horizontal direction exceeds the menu's width, or if the sum + * of the two maximum corner radii in the vertical direction exceeds the menu's height, the default corner radius of + * the menu will be used. + *

* * @type { ?(Length | BorderRadiuses | LocalizedBorderRadiuses) } + * @default 8vp for 2-in-1 devices and 20vp for other devices * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -16974,7 +18389,7 @@ declare interface ContextMenuOptions { * @since 10 */ /** - * Callback function when the context menu appears. + * Callback triggered when the menu is displayed. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -16985,7 +18400,7 @@ declare interface ContextMenuOptions { onAppear?: () => void; /** - * Callback function when the context menu disappear. + * Callback triggered when the menu is hidden. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -17012,7 +18427,7 @@ declare interface ContextMenuOptions { * @since 11 */ /** - * Callback function before the context menu animation starts. + * Callback triggered when the menu is about to appear. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -17031,7 +18446,7 @@ declare interface ContextMenuOptions { * @since 11 */ /** - * Callback function before the context menu popAnimation starts. + * Callback triggered when the menu is about to disappear. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -17081,7 +18496,7 @@ declare interface ContextMenuOptions { * @since 11 */ /** - * Defines the menu's background color + * Background color of the menu. * * @type { ?ResourceColor } * @default Color.Transparent @@ -17102,7 +18517,7 @@ declare interface ContextMenuOptions { * @since 11 */ /** - * Defines menu background blur Style + * Background blur style of the menu. * * @type { ?BlurStyle } * @default BlurStyle.COMPONENT_ULTRA_THICK @@ -17165,7 +18580,7 @@ declare interface ContextMenuOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ outlineColor?: ResourceColor | EdgeColors; @@ -17176,7 +18591,7 @@ declare interface ContextMenuOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ outlineWidth?: Dimension | EdgeOutlineWidths; @@ -17191,6 +18606,85 @@ declare interface ContextMenuOptions { * @since 18 */ hapticFeedbackMode?: HapticFeedbackMode; + + /** + * Whether it is a menu without mask. + * + * @type { ?(boolean | MenuMaskType) } + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + mask?: boolean | MenuMaskType; + + /** + * Defines modal mode of menu. + * + * @type { ?ModalMode } + * @default ModalMode.AUTO + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + modalMode?: ModalMode; + + /** + * Defines the menu position. + * + * @type { ?Position } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + anchorPosition?: Position; + + /** + * Callback function when the menu appears. + * + * @type { ?Callback } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onDidAppear?: Callback; + + /** + * Callback function when the menu disappears. + * + * @type { ?Callback } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onDidDisappear?: Callback; + + /** + * Callback function before the menu openAnimation starts. + * + * @type { ?Callback } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onWillAppear?: Callback; + + /** + * Callback function before the menu closeAnimation starts. + * + * @type { ?Callback } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onWillDisappear?: Callback; } /** @@ -17244,6 +18738,7 @@ declare interface MenuOptions extends ContextMenuOptions { * Whether to display in the sub window. * * @type { ?boolean } + * @default true for 2-in-1 devices and false for other devices * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -17260,7 +18755,7 @@ declare interface MenuOptions extends ContextMenuOptions { * @since 10 */ /** - * Defines the ProgressMask class. + * Implements a ProgressMask object to set the progress, maximum value, and color of the mask. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -17281,9 +18776,9 @@ declare class ProgressMask { /** * constructor. * - * @param { number } value - indicates the current value of the progress. - * @param { number } total - indicates the total value of the progress. - * @param { ResourceColor } color - indicates the color of the mask. + * @param { number } value - Current value of the progress mask. Value range: [0.0, +∞). + * @param { number } total - Maximum value of the progress mask. Value range: [0.0, +∞). + * @param { ResourceColor } color - Color of the progress mask. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -17300,9 +18795,9 @@ declare class ProgressMask { * @since 10 */ /** - * Update the current value of the progress. + * Updates the progress value of the progress mask. * - * @param { number } value - indicates the current value of the progress. + * @param { number } value - Current value of the progress mask. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -17321,7 +18816,7 @@ declare class ProgressMask { /** * Update the color of the mask. * - * @param { ResourceColor } value - indicates the color of the mask. + * @param { ResourceColor } value - Color of the progress mask. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -17726,7 +19221,14 @@ declare interface ClickEffect { /** * Set scale number. * This default scale is same as the scale of click effect level. - * + * + *

NOTE: + *
This parameter works based on the setting of ClickEffectLevel. + *
If level is set to ClickEffectLevel.LIGHT, the default value is 0.90. + *
If level is set to ClickEffectLevel.MIDDLE or ClickEffectLevel.HEAVY, the default value is 0.95. + *
If level is set to undefined or null (both of which evaluate to ClickEffectLevel.LIGHT), the default value is 0.90. + *
If scale is set to undefined or null, the default zoom ratio for the set level will be used. + *

* @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -17889,6 +19391,15 @@ declare interface MenuElement { * @atomicservice * @since 12 */ + /** + * Sets the symbol of the menu element. + * + * @type { ?SymbolGlyphModifier } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolIcon?: SymbolGlyphModifier; /** @@ -18071,6 +19582,9 @@ declare interface ContentModifier { * Defining applyContent function. * * @returns { WrappedBuilder<[T]> } + * Component attribute class, which is used to distinguish different information required by different components + * after content areas are customized, for example, ButtonConfiguration for the Button component and + * CheckBoxConfiguration of the Checkbox component. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -18135,7 +19649,7 @@ declare interface CommonConfiguration { */ declare enum OutlineStyle { /** - * Shows as a solid line. + * Solid border. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -18143,7 +19657,7 @@ declare enum OutlineStyle { * @since 11 */ /** - * Shows as a solid line. + * Solid border. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -18154,7 +19668,7 @@ declare enum OutlineStyle { SOLID = 0, /** - * Shows as a series of short square dashed lines. + * Dashed border. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -18162,7 +19676,7 @@ declare enum OutlineStyle { * @since 11 */ /** - * Shows as a series of short square dashed lines. + * Dashed border. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -18181,7 +19695,7 @@ declare enum OutlineStyle { * @since 11 */ /** - * Displays as a series of dots with a radius of half the borderWidth. + * Dotted border. The radius of a dot is half of **outlineWidth**. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -18314,7 +19828,7 @@ declare enum DragPreviewMode { * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ ENABLE_TOUCH_POINT_CALCULATION_BASED_ON_FINAL_PREVIEW = 7, } @@ -18325,7 +19839,7 @@ declare enum DragPreviewMode { * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ declare enum DraggingSizeChangeEffect { /** @@ -18333,7 +19847,7 @@ declare enum DraggingSizeChangeEffect { * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ DEFAULT = 0, @@ -18342,7 +19856,7 @@ declare enum DraggingSizeChangeEffect { * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ SIZE_TRANSITION = 1, @@ -18351,7 +19865,7 @@ declare enum DraggingSizeChangeEffect { * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ SIZE_CONTENT_TRANSITION = 2, } @@ -18377,7 +19891,7 @@ declare enum MenuPolicy { DEFAULT = 0, /** - * Hide pop up menu. + * The menu is always hidden. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -18387,7 +19901,7 @@ declare enum MenuPolicy { HIDE = 1, /** - * Show pop up menu. + * The menu is always displayed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -18416,6 +19930,15 @@ declare type ImageModifier = import('../api/arkui/ImageModifier').ImageModifier; * @atomicservice * @since 12 */ +/** + * SymbolGlyphModifier + * + * @typedef {import('../api/arkui/SymbolGlyphModifier').SymbolGlyphModifier} SymbolGlyphModifier + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ declare type SymbolGlyphModifier = import('../api/arkui/SymbolGlyphModifier').SymbolGlyphModifier; /** @@ -18462,6 +19985,7 @@ declare interface DragPreviewOptions { * Drag preview mode. * * @type { ?(DragPreviewMode | Array) } + * @default DragPreviewMode.AUTO * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -18500,6 +20024,7 @@ declare interface DragPreviewOptions { * The flag for number showing. * * @type { ?(boolean | number) } + * @default true * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -18511,9 +20036,10 @@ declare interface DragPreviewOptions { * Drag start animation effect from drag preview to the handle drag image. * * @type { ?DraggingSizeChangeEffect } + * @default DraggingSizeChangeEffect.DEFAULT * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ sizeChangeEffect?: DraggingSizeChangeEffect; } @@ -18531,6 +20057,7 @@ declare interface DragInteractionOptions { * Define whether to gather selected nodes in grid or list. * * @type { ?boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 @@ -18541,6 +20068,7 @@ declare interface DragInteractionOptions { * Define whether to execute animation before preview floating. * * @type { ?boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 @@ -18551,6 +20079,7 @@ declare interface DragInteractionOptions { * Config if auto scrolling should be triggered when the drag hovered on a scrollable controller's edge. * * @type { ?boolean } + * @default true * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 18 @@ -18561,6 +20090,7 @@ declare interface DragInteractionOptions { * Define whether to enable the haptic feedback when dragging, the default value is false. * * @type { ?boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 18 @@ -18772,10 +20302,21 @@ declare type Optional = T | undefined; * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare type TipsMessageType = ResourceStr | StyledString; +/** + * Import the Matrix4Transit type object for common method. + * + * @typedef { import('../api/@ohos.matrix4').default.Matrix4Transit } Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare type Matrix4Transit = import('../api/@ohos.matrix4').default.Matrix4Transit; + /** * Define the options for background image. * @@ -18814,6 +20355,56 @@ interface BackgroundImageOptions { repeat?: ImageRepeat; } +/** + * Defines background options. + * + * @interface BackgroundOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare interface BackgroundOptions { + /** + * Set the alignment of the custom background and component. + * + * @type { ?Alignment} align + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Set the alignment of the custom background and component. + * + * @type { ?Alignment} align + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Set the alignment of the custom background and component. + * + * Anonymous Object Rectification. + * @type { ?Alignment } + * @default Alignment.Center + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + align?: Alignment; + /** + * The set of edges for which to ignore layout safe area. The default value is LayoutSafeAreaEdge.ALL. To respect safe area insets on all edges, explicitly pass empty edge set. + * @type { ?Array } + * @default LayoutSafeAreaEdge.ALL + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + ignoresLayoutSafeAreaEdges?: Array; +} + /** * CommonMethod. * @@ -18890,7 +20481,9 @@ declare class CommonMethod { * @since 10 */ /** - * Sets the width of the current component. + * Sets the width of the component. By default, the width required to fully hold the + * component content is used.If the width of the component is greater than that of + * the parent container, the component will be drawn beyond the parent container scope. * * @param { Length } value * @returns { T } @@ -18902,7 +20495,10 @@ declare class CommonMethod { */ width(value: Length): T; /** - * Sets the width of the current component. + * Sets the width of the component or its horizontal layout policy. By default, the + * component uses the width required for its content. If the width of the component is + * greater than that of the parent container, the component will be drawn beyond the + * parent container scope. * * @param { Length | LayoutPolicy } widthValue * @returns { T } @@ -18942,7 +20538,9 @@ declare class CommonMethod { * @since 10 */ /** - * Sets the height of the current component. + * Sets the height of the component. By default, the height required to fully hold the + * component content is used. If the height of the component is greater than that of + * the parent container, the component will be drawn beyond the parent container scope. * * @param { Length } value * @returns { T } @@ -18954,7 +20552,10 @@ declare class CommonMethod { */ height(value: Length): T; /** - * Sets the height of the current component. + * Sets the height of the component or its vertical layout policy. By default, the + * component uses the height required for its content. If the height of the component + * is greater than that of the parent container, the component will be drawn beyond + * the parent container scope. * * @param { Length | LayoutPolicy } heightValue * @returns { T } @@ -18970,6 +20571,8 @@ declare class CommonMethod { * Sets the drawModifier of the current component. * * @param { DrawModifier | undefined } modifier - drawModifier used to draw, or undefined if it is not available. + * Default value: undefined + * A custom modifier applies only to the FrameNode of the currently bound component, not to its subnodes. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -18980,6 +20583,7 @@ declare class CommonMethod { /** * Sets the custom property of the current component. + * This API does not work for custom components. * * @param { string } name - the name of the custom property. * @param { Optional } value - the value of the custom property. @@ -19002,7 +20606,9 @@ declare class CommonMethod { * @since 10 */ /** - * Expands the safe area. + * Sets the safe area to be expanded to. + *
default:{types: [SafeAreaType.SYSTEM, SafeAreaType.CUTOUT, SafeAreaType.KEYBOARD], + * edges: [SafeAreaEdge.TOP, SafeAreaEdge.BOTTOM, SafeAreaEdge.START, SafeAreaEdge.END]} * * @param { Array } types - Indicates the types of the safe area. * @param { Array } edges - Indicates the edges of the safe area. @@ -19014,6 +20620,19 @@ declare class CommonMethod { */ expandSafeArea(types?: Array, edges?: Array): T; + /** + * Expands the layout safe area of a component. + * + * @param { Array } [types] - The region type to expand the component's layout safe area into. The default value is LayoutSafeAreaType.SYSTEM. + * @param { Array } [edges] - The set of edges for which to ignore layout safe area. The default value is LayoutSafeAreaEdge.ALL. + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + ignoreLayoutSafeArea(types?: Array, edges?: Array): T; + /** * Sets the response region of the current component. * @@ -19103,7 +20722,7 @@ declare class CommonMethod { * @since 10 */ /** - * The size of the current component. + * Sets the size of the component. * * @param { SizeOptions } value * @returns { T } @@ -19146,8 +20765,8 @@ declare class CommonMethod { * @since 10 */ /** - * constraint Size: - * minWidth: minimum Width, maxWidth: maximum Width, minHeight: minimum Height, maxHeight: maximum Height. + * Sets the constraint size of the component, which is used to limit the size range during component layout. + * Default value: **{minWidth: 0, maxWidth: Infinity, minHeight: 0, maxHeight: Infinity}**. * * @param { ConstraintSizeOptions } value * @returns { T } @@ -19189,9 +20808,11 @@ declare class CommonMethod { * @since 10 */ /** - * Defines the component's hit test behavior in touch events. + * Sets how the component behaves during hit testing. * * @param { HitTestMode } value - the hit test mode. + * @default HitTestMode.default - Both the node and its child nodes respond to the hit test of a touch event, + * but its sibling nodes are blocked from the hit test. The hit test for ancestor nodes is not affected. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -19210,7 +20831,7 @@ declare class CommonMethod { * @since 11 */ /** - * Defines the pre-touch test of sub component in touch events. + * Called to specify how to perform the touch test on the children of this component. * * @param { function } event * @returns { T } @@ -19249,7 +20870,9 @@ declare class CommonMethod { * @since 10 */ /** - * Defines the weight of the component, according to which the remain part of main-axis is allocated self-adaptively + * Sets the weight of the component during layout. A component with this attribute is allocated space + * along the main axis of its parent container (Row, Column, or Flex) based on its specified weight. + * Default value: **0**. * * @param { number | string } value * @returns { T } @@ -19262,7 +20885,8 @@ declare class CommonMethod { layoutWeight(value: number | string): T; /** - * chain Weight + * Sets the weight of the component in a chain, which is used to re-lay out components that form the chain. + *
This API has effect only when the parent container is RelativeContainer. * * @param { ChainWeightOptions } chainWeight * @returns { T } @@ -19312,7 +20936,8 @@ declare class CommonMethod { * @since 11 */ /** - * Inner margin. + * Sets the padding of the component. + * Default value: **0**. * * @param { Padding | Length | LocalizedPadding } value * @returns { T } @@ -19325,7 +20950,9 @@ declare class CommonMethod { padding(value: Padding | Length | LocalizedPadding): T; /** - * Inner safeArea padding. + * Sets the safe area padding. It enables a container to add a component-level + * safe area for child components to expand into. + * Default value: **LengthMetrics.vp(0)** * * @param { Padding | LengthMetrics | LocalizedPadding } paddingValue - Indicates safeArea padding values * @returns { T } @@ -19376,7 +21003,8 @@ declare class CommonMethod { * @since 11 */ /** - * Outer Margin. + * Sets the margin of the component. + * Default value: **0**. * * @param { Margin | Length | LocalizedMargin } value * @returns { T } @@ -19389,20 +21017,24 @@ declare class CommonMethod { margin(value: Margin | Length | LocalizedMargin): T; /** - * Background. + * Sets the background color of the component. * - * @param { CustomBuilder } builder - * @param { object } options + * @param { CustomBuilder } builder - Custom background. + * @param { object } options - Alignment mode between the custom background and the component. + *
If **background**, **backgroundColor**, and **backgroundImage** are set at the same time + *
They will all take effect, with **background** at the top layer. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Background. + * Sets the background color of the component. * - * @param { CustomBuilder } builder - * @param { object } options + * @param { CustomBuilder } builder - Custom background. + * @param { object } options - Alignment mode between the custom background and the component. + *
If **background**, **backgroundColor**, and **backgroundImage** are set at the same time + *
They will all take effect, with **background** at the top layer. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -19411,6 +21043,20 @@ declare class CommonMethod { */ background(builder: CustomBuilder, options?: { align?: Alignment }): T; + /** + * Add a background for the component. + * + * Anonymous Object Rectification. + * @param { CustomBuilder | ResourceColor } content + * @param { BackgroundOptions } options + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + background(content: CustomBuilder | ResourceColor, options?: BackgroundOptions): T; + /** * Background color * @@ -19465,9 +21111,23 @@ declare class CommonMethod { backgroundColor(color: Optional): T; /** - * PixelRound + * Background color * - * @param { PixelRoundPolicy } value - indicates the pixel round policy. + * @param { Optional } color + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + backgroundColor(color: Optional): T; + + /** + * Sets the pixel rounding policy for the current component in the specified direction. + *
If a direction is not set, the pixels are rounded to the nearest whole number in that direction. + * + * @param { PixelRoundPolicy } value - indicates the rounding policy for the bounds of the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -19582,7 +21242,7 @@ declare class CommonMethod { /** * Background image size * - * @param { SizeOptions | ImageSize } value + * @param { SizeOptions | ImageSize } value - The width and height of the background image. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -19637,22 +21297,26 @@ declare class CommonMethod { backgroundImagePosition(value: Position | Alignment): T; /** - * Background blur style. - * blurStyle:Blur style type. + * Defines the blur style to apply between the background and content of a component. + * It encapsulates various blur radius, mask color, mask opacity, saturation. + * And brightness values through enum values. * - * @param { BlurStyle } value - * @param { BackgroundBlurStyleOptions } options + * @param { BlurStyle } value - Settings of the background blur style + *
including the blur radius, mask color, mask opacity, saturation, and brightness. + * @param { BackgroundBlurStyleOptions } options - Background blur options. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Background blur style. - * blurStyle:Blur style type. + * Defines the blur style to apply between the background and content of a component. + * It encapsulates various blur radius, mask color, mask opacity, saturation. + * And brightness values through enum values. * - * @param { BlurStyle } value - * @param { BackgroundBlurStyleOptions } options + * @param { BlurStyle } value - Settings of the background blur style + *
including the blur radius, mask color, mask opacity, saturation, and brightness. + * @param { BackgroundBlurStyleOptions } options - Background blur options. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -19660,11 +21324,13 @@ declare class CommonMethod { * @since 10 */ /** - * Background blur style. - * blurStyle:Blur style type. + * Defines the blur style to apply between the background and content of a component. + * It encapsulates various blur radius, mask color, mask opacity, saturation. + * And brightness values through enum values. * - * @param { BlurStyle } value - * @param { BackgroundBlurStyleOptions } options + * @param { BlurStyle } value - Settings of the background blur style + *
including the blur radius, mask color, mask opacity, saturation, and brightness. + * @param { BackgroundBlurStyleOptions } options - Background blur options. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -19674,6 +21340,21 @@ declare class CommonMethod { */ backgroundBlurStyle(value: BlurStyle, options?: BackgroundBlurStyleOptions): T; + /** + * Background blur style. + * blurStyle:Blur style type. + * + * @param { Optional } style + * @param { BackgroundBlurStyleOptions } [options] + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + backgroundBlurStyle(style: Optional, options?: BackgroundBlurStyleOptions): T; + /** * Background blur style. * blurStyle:Blur style type. @@ -19687,23 +21368,23 @@ declare class CommonMethod { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyle(style: Optional, options?: BackgroundBlurStyleOptions, sysOptions?: SystemAdaptiveOptions): T; /** - * options:background effect options. + * Sets the background effect of the component, including the blur radius, brightness, saturation, and color. * - * @param { BackgroundEffectOptions } options - options indicates the effect options. + * @param { BackgroundEffectOptions } options - Background effect, including saturation, brightness, and color. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * options:background effect options. + * Sets the background effect of the component, including the blur radius, brightness, saturation, and color. * - * @param { BackgroundEffectOptions } options - options indicates the effect options. + * @param { BackgroundEffectOptions } options - Background effect, including saturation, brightness, and color. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -19712,6 +21393,24 @@ declare class CommonMethod { */ backgroundEffect(options: BackgroundEffectOptions): T; + /** + * Sets the background effect of the component, including the blur radius, brightness, + * saturation, and color. Compared to backgroundEffect11+, + * this API supports the **undefined** type for the **options** parameter. + * + * @param { Optional } options - Background effect, including saturation, + * brightness, and color. + *
If **options** is **undefined**, the background reverts to its default state with no effect. + * @param { SystemAdaptiveOptions } [ sysOptions ] - System adaptive adjustment options. + *
Default value: **{ disableSystemAdaptation: false }**. + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ + backgroundEffect(options: Optional): T; + /** * options:background effect options. * sysOptions: system adaptive options. @@ -19722,7 +21421,7 @@ declare class CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect(options: Optional, sysOptions?: SystemAdaptiveOptions): T; @@ -19752,7 +21451,7 @@ declare class CommonMethod { foregroundEffect(options: ForegroundEffectOptions): T; /** - * Unified visual effect interface. + * Sets a visual effect that is not a filter effect. * * @param { VisualEffect } effect - Visual effect parameters. * @returns { T } @@ -19764,7 +21463,7 @@ declare class CommonMethod { visualEffect(effect: VisualEffect): T; /** - * Filter applied to the background layer of the component. + * Sets the visual effect of the background filter. * * @param { Filter } filter - Filter effect parameters. * @returns { T } @@ -19776,7 +21475,7 @@ declare class CommonMethod { backgroundFilter(filter: Filter): T; /** - * Filter applied to the foreground layer of the component. + * Sets the visual effect of the foreground (content) filter. * * @param { Filter } filter - Filter effect parameters. * @returns { T } @@ -19788,7 +21487,7 @@ declare class CommonMethod { foregroundFilter(filter: Filter): T; /** - * Filter applied to the compositing layer of the component. + * Sets the visual effect of the compositing filter. * * @param { Filter } filter - Filter effect parameters. * @returns { T } @@ -19800,29 +21499,41 @@ declare class CommonMethod { compositingFilter(filter: Filter): T; /** - * Foreground blur style. - * blurStyle:Blur style type. + * Applies a foreground blur style to the component. + * + * @param { BlurStyle } value - Settings of the foreground blur style. + * @param { ForegroundBlurStyleOptions } options - Foreground blur options. + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Applies a foreground blur style to the component. * - * @param { BlurStyle } value - * @param { ForegroundBlurStyleOptions } options + * @param { BlurStyle } value - Settings of the foreground blur style. + * @param { ForegroundBlurStyleOptions } options - Foreground blur options. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform - * @since 10 + * @atomicservice + * @since 11 */ + foregroundBlurStyle(value: BlurStyle, options?: ForegroundBlurStyleOptions): T; + /** * Foreground blur style. * blurStyle:Blur style type. * - * @param { BlurStyle } value - * @param { ForegroundBlurStyleOptions } options + * @param { Optional } style + * @param { ForegroundBlurStyleOptions } [options] * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 11 + * @since 18 */ - foregroundBlurStyle(value: BlurStyle, options?: ForegroundBlurStyleOptions): T; + foregroundBlurStyle(style: Optional, options?: ForegroundBlurStyleOptions): T; /** * Foreground blur style. @@ -19836,31 +21547,31 @@ declare class CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ foregroundBlurStyle(style: Optional, options?: ForegroundBlurStyleOptions, sysOptions?: SystemAdaptiveOptions): T; /** - * Opacity + * Sets the opacity of the component. * - * @param { number | Resource } value + * @param { number | Resource } value - Opacity of the component. The value ranges from 0 to 1. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Opacity + * Sets the opacity of the component. * - * @param { number | Resource } value + * @param { number | Resource } value - Opacity of the component. The value ranges from 0 to 1. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Opacity + * Sets the opacity of the component. * - * @param { number | Resource } value + * @param { number | Resource } value - Opacity of the component. The value ranges from 0 to 1. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -19868,9 +21579,9 @@ declare class CommonMethod { * @since 10 */ /** - * Opacity + * Sets the opacity of the component. * - * @param { number | Resource } value + * @param { number | Resource } value - Opacity of the component. The value ranges from 0 to 1. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -19881,9 +21592,9 @@ declare class CommonMethod { opacity(value: number | Resource): T; /** - * Opacity + * Sets the opacity of the component. * - * @param { Optional } opacity + * @param { Optional } opacity - Opacity of the component. The value ranges from 0 to 1. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -19924,8 +21635,7 @@ declare class CommonMethod { * @since 10 */ /** - * Border - * width:Border width;color:Border color;radius:Border radius; + * Sets the border. * * @param { BorderOptions } value * @returns { T } @@ -19965,7 +21675,8 @@ declare class CommonMethod { * @since 10 */ /** - * Border style + * Sets the border style. + * Default value: **BorderStyle.Solid**. * * @param { BorderStyle | EdgeStyles } value * @returns { T } @@ -20016,7 +21727,8 @@ declare class CommonMethod { * @since 11 */ /** - * Border width + * Sets the border width. + * Percentage values are not supported. * * @param { Length | EdgeWidths | LocalizedEdgeWidths } value * @returns { T } @@ -20067,8 +21779,8 @@ declare class CommonMethod { * @since 11 */ /** - * Border color - * + * Sets the border color. + * Default value: **Color.Black**. * @param { ResourceColor | EdgeColors | LocalizedEdgeColors } value * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -20118,7 +21830,8 @@ declare class CommonMethod { * @since 11 */ /** - * Border radius + * Sets the radius of the border rounded corners. + *
The radius is restricted by the component size. The maximum value is half of the component width or height. * * @param { Length | BorderRadiuses | LocalizedBorderRadiuses } value * @returns { T } @@ -20150,9 +21863,9 @@ declare class CommonMethod { * @since 10 */ /** - * Border image + * Sets the border image of the component. * - * @param { BorderImageOption } value + * @param { BorderImageOption } value - Border image or border gradient. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20163,10 +21876,9 @@ declare class CommonMethod { borderImage(value: BorderImageOption): T; /** - * Outline - * width:Outline width;color:Outline color;radius:Outline radius;style:Outline style; + * Sets the outline attributes in one declaration. * - * @param { OutlineOptions } value + * @param { OutlineOptions } value - Outline attributes. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20174,10 +21886,9 @@ declare class CommonMethod { * @since 11 */ /** - * Outline - * width:Outline width;color:Outline color;radius:Outline radius;style:Outline style; + * Sets the outline attributes in one declaration. * - * @param { OutlineOptions } value + * @param { OutlineOptions } value - Outline attributes. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20188,10 +21899,11 @@ declare class CommonMethod { outline(value: OutlineOptions): T; /** - * Outline - * width:Outline width;color:Outline color;radius:Outline radius;style:Outline style; + * Sets the outline attributes in one declaration. Compared to outline, + * this API supports the **undefined** type for the **options** parameter. * - * @param { Optional } options + * @param { Optional } options - Outline attributes.
If **options** is **undefined**, + * the component reverts to its original style with no outline. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20202,10 +21914,10 @@ declare class CommonMethod { outline(options: Optional): T; /** - * Outline style - * The input parameter default value is OutlineStyle.SOLID + * Sets the style of the outline. * - * @param { OutlineStyle | EdgeOutlineStyles } value + * @param { OutlineStyle | EdgeOutlineStyles } value - Outline style. + *
Default value: **OutlineStyle.SOLID**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20213,9 +21925,10 @@ declare class CommonMethod { * @since 11 */ /** - * Outline style + * Sets the style of the outline. * - * @param { OutlineStyle | EdgeOutlineStyles } value + * @param { OutlineStyle | EdgeOutlineStyles } value - Outline style. + *
Default value: **OutlineStyle.SOLID**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20226,9 +21939,13 @@ declare class CommonMethod { outlineStyle(value: OutlineStyle | EdgeOutlineStyles): T; /** - * Outline style + * Sets the style of the outline. Compared to outlineStyle, + * this API supports the **undefined** type for the **style** parameter. * - * @param { Optional } style + * @param { Optional } style - Outline style. + *
Default value: **OutlineStyle.SOLID**. + *
If **style** is **undefined**, the component reverts to its original + * style with no outline. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20239,10 +21956,11 @@ declare class CommonMethod { outlineStyle(style: Optional): T; /** - * Outline width - * The input parameter default value is 0 + * Sets the thickness of the outline. * - * @param { Dimension | EdgeOutlineWidths } value + * @param { Dimension | EdgeOutlineWidths } value - Outline thickness. Percentage values are not supported. + *
Default value: **0**Outline thickness. Percentage values are not supported. + *
Default value: **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20250,9 +21968,11 @@ declare class CommonMethod { * @since 11 */ /** - * Outline width + * Sets the thickness of the outline. * - * @param { Dimension | EdgeOutlineWidths } value + * @param { Dimension | EdgeOutlineWidths } value - Outline thickness. Percentage values are not supported. + *
Default value: **0**Outline thickness. Percentage values are not supported. + *
Default value: **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20263,9 +21983,12 @@ declare class CommonMethod { outlineWidth(value: Dimension | EdgeOutlineWidths): T; /** - * Outline width + * Sets the thickness of the outline. Compared to outlineWidth, + * this API supports the **undefined** type for the **width** parameter. * - * @param { Optional } width + * @param { Optional } width - Outline thickness. Percentage values are not supported. + *
Default value: **0**. + *
If **width** is **undefined**, the component reverts to its original style with no outline width. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20276,10 +21999,10 @@ declare class CommonMethod { outlineWidth(width: Optional): T; /** - * Outline color - * The input parameter default value is Color.Black + * Sets the color of the outline. * - * @param { ResourceColor | EdgeColors } value + * @param { ResourceColor | EdgeColors } value - Outline color. + *
Default value: **Color.Black**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20287,9 +22010,10 @@ declare class CommonMethod { * @since 11 */ /** - * Outline color + * Sets the color of the outline. * - * @param { ResourceColor | EdgeColors | LocalizedEdgeColors } value + * @param { ResourceColor | EdgeColors | LocalizedEdgeColors } value - Outline color. + *
Default value: **Color.Black**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20300,9 +22024,13 @@ declare class CommonMethod { outlineColor(value: ResourceColor | EdgeColors | LocalizedEdgeColors): T; /** - * Outline color + * Sets the color of the outline. Compared to outlineColor, + * this API supports the **undefined** type for the **color** parameter. * - * @param { Optional } color + * @param { Optional } color - Outline color. + *
Default value: **Color.Black**. + *
If **color** is **undefined**, the component reverts to its original style with the + * outline color of **Color.Black**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20313,10 +22041,12 @@ declare class CommonMethod { outlineColor(color: Optional): T; /** - * Outline radius - * The input parameter default value is 0 + * Sets the radius of the outline corners. * - * @param { Dimension | OutlineRadiuses } value + * @param { Dimension | OutlineRadiuses } value - adius of the outline corners. Percentage + * values are not supported. + *
Default value: **0**. + *
Maximum effective value: Component width/2 + outlineWidth or component height/2 + outlineWidth. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20324,9 +22054,12 @@ declare class CommonMethod { * @since 11 */ /** - * Outline radius + * Sets the radius of the outline corners. * - * @param { Dimension | OutlineRadiuses } value + * @param { Dimension | OutlineRadiuses } value - adius of the outline corners. Percentage + * values are not supported. + *
Default value: **0**. + *
Maximum effective value: Component width/2 + outlineWidth or component height/2 + outlineWidth. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20337,9 +22070,15 @@ declare class CommonMethod { outlineRadius(value: Dimension | OutlineRadiuses): T; /** - * Outline radius + * Sets the radius of the outline corners. Compared to outlineRadius, this API + * supports the **undefined** type for the **radius** parameter. * - * @param { Optional } radius + * @param { Optional } radius - Radius of the outline corners. Percentage + * values are not supported. + *
Default value: **0**. + *
Maximum effective value: Component width/2 + outlineWidth or component height/2 + outlineWidth. + *
If **radius** is **undefined**, the component reverts to its original style with the + * outline corner radius of 0. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20350,20 +22089,22 @@ declare class CommonMethod { outlineRadius(radius: Optional): T; /** - * Provides the general foreground color capability of UI components, and assigns color values - * according to the characteristics of components. + * Sets the foreground color of the component. + * If the component does not have a foreground color set, it inherits the color from its parent component by default. * - * @param { ResourceColor | ColoringStrategy } value - indicates the color or color selection strategy + * @param { ResourceColor | ColoringStrategy } value - Foreground color. + *
The value can be a specific color or a coloring strategy. Property animations are supported. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Provides the general foreground color capability of UI components, and assigns color values - * according to the characteristics of components. + * Sets the foreground color of the component. + * If the component does not have a foreground color set, it inherits the color from its parent component by default. * - * @param { ResourceColor | ColoringStrategy } value - indicates the color or color selection strategy + * @param { ResourceColor | ColoringStrategy } value - Foreground color. + *
The value can be a specific color or a coloring strategy. Property animations are supported. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20373,10 +22114,13 @@ declare class CommonMethod { foregroundColor(value: ResourceColor | ColoringStrategy): T; /** - * Provides the general foreground color capability of UI components, and assigns color values - * according to the characteristics of components. + * Sets the foreground color of the component. + * If the component does not have a foreground color set, it inherits the color from its parent component by default. + * Compared to {@link foregroundColor}, this API supports the **undefined** type for the **color** parameter. * - * @param { Optional } color - indicates the color or color selection strategy + * @param { Optional } color -Foreground color. + *
The value can be a specific color or a coloring strategy. Property animations are supported. + *
If **color** is set to **undefined**, the previous value is retained. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20413,8 +22157,13 @@ declare class CommonMethod { * @since 10 */ /** - * Trigger a click event when a click is clicked. + * Called when a click event occurs. * + *

NOTE: + *
Since API version 9, the following constraints apply when this API is used in service widgets: + *
Click events cannot be triggered if the finger is pressed for more than 800 ms. + *
Click events cannot be triggered if the finger moves more than 20 px after pressing down. + *

* @param { function } event * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -20428,8 +22177,15 @@ declare class CommonMethod { /** * Trigger a click event when a click is clicked, move distance should smaller than distanceThreshold. * + *

NOTE: + *
If the distanceThreshold value specified is less than or equal to 0 vp, it will be converted to the default value. + *
Since API version 9, the following constraints apply when this API is used in service widgets: + *
Click events cannot be triggered if the finger is pressed for more than 800 ms. + *
Click events cannot be triggered if the finger moves more than 20 px after pressing down. + *

* @param { function } event - this function callback executed when the click action is recognized * @param { number } distanceThreshold - the distance threshold of finger's movement when detecting a click action + * @default (2^31-1)vp * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20483,6 +22239,19 @@ declare class CommonMethod { */ onAccessibilityHover(callback: AccessibilityCallback): T; + /** + * prompt for current component and descendants unable to handle accessibility hover event + * + * @param { AccessibilityTransparentCallback } callback - A callback instance used when current component and + * descendants not handled accessibility hover event + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onAccessibilityHoverTransparent(callback: AccessibilityTransparentCallback): T; + /** * Set hover effect. * @@ -20503,7 +22272,7 @@ declare class CommonMethod { /** * Set hover effect. * - * @param { HoverEffect } value + * @param { HoverEffect } value - Hover effect of the component in hover state. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20521,7 +22290,7 @@ declare class CommonMethod { * @since 8 */ /** - * Trigger a mouse event. + * Triggered when the component is clicked by a mouse button or the mouse pointer moves on the component. * * @param { function } event * @returns { T } @@ -20549,7 +22318,7 @@ declare class CommonMethod { * @since 10 */ /** - * Trigger a touch event when touched. + * Invoked when a touch event is triggered. * * @param { function } event * @returns { T } @@ -20592,7 +22361,7 @@ declare class CommonMethod { /** * Keyboard input * - * @param { Callback } event + * @param { Callback } event - Callback for handling the key event. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20615,7 +22384,7 @@ declare class CommonMethod { /** * Handle keyboard events before input method events. * - * @param { Callback } event + * @param { Callback } event - Callback for handling the key event. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20654,7 +22423,7 @@ declare class CommonMethod { * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ onAxisEvent(event: Callback): T; @@ -20677,7 +22446,10 @@ declare class CommonMethod { */ /** * Set focusable. - * + * Components that have default interaction logic, such as Button and TextInput, are focusable by default. Other + * components, such as Text and Image, are not focusable by default. Only focusable components can trigger a focus + * event. + * * @param { boolean } value * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -20741,7 +22513,7 @@ declare class CommonMethod { onFocus(event: () => void): T; /** - * Trigger a event when lose focus. + * Triggered when the current component loses focus. * * @param { function } event * @returns { T } @@ -20749,7 +22521,7 @@ declare class CommonMethod { * @since 8 */ /** - * Trigger a event when lose focus. + * Triggered when the current component loses focus. * * @param { function } event * @returns { T } @@ -20758,7 +22530,7 @@ declare class CommonMethod { * @since 10 */ /** - * Trigger a event when lose focus. + * Triggered when the current component loses focus. * * @param { function } event * @returns { T } @@ -20788,7 +22560,7 @@ declare class CommonMethod { */ /** * Set focus index by key tab. - * + * The tabIndex and focusScopeId cannot be used together. * @param { number } index * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -20818,7 +22590,7 @@ declare class CommonMethod { /** * Set default focused component when a page create. * - * @param { boolean } value + * @param { boolean } value - True means to set the component as the default focus, and the value false has no effect. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20847,7 +22619,8 @@ declare class CommonMethod { /** * Set default focused component when focus on a focus group. * - * @param { boolean } value + * @param { boolean } value - True means the component is the default focus of the parent container, and + * false means the component is not the default focus of the parent container. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20876,7 +22649,7 @@ declare class CommonMethod { /** * Set a component focused when the component be touched. * - * @param { boolean } value + * @param { boolean } value - True means the component is focusable on touch, false means the component is not focusable on touch. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20888,7 +22661,7 @@ declare class CommonMethod { /** * Set the component's focusBox style. * - * @param { FocusBoxStyle } style + * @param { FocusBoxStyle } style - Component's focusBox style. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -20978,24 +22751,27 @@ declare class CommonMethod { animation(value: AnimateParam): T; /** - * Transition parameter + * Transition effects for when the component is inserted to show and removed to hide + * as well as the callback for the end of the transition animation. * - * @param { TransitionOptions | TransitionEffect } value + * @param { TransitionOptions | TransitionEffect } value - transition options or transition effect * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Transition parameter + * Transition effects for when the component is inserted to show and removed to hide + * as well as the callback for the end of the transition animation. * - * @param { TransitionOptions | TransitionEffect } value - transition options + * @param { TransitionOptions | TransitionEffect } value - transition options or transition effect * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Transition parameter + * Transition effects for when the component is inserted to show and removed to hide + * as well as the callback for the end of the transition animation. * * @param { TransitionOptions | TransitionEffect } value - transition options or transition effect * @returns { T } @@ -21005,7 +22781,8 @@ declare class CommonMethod { * @since 10 */ /** - * Transition parameter + * Transition effects for when the component is inserted to show and removed to hide + * as well as the callback for the end of the transition animation. * * @param { TransitionOptions | TransitionEffect } value - transition options or transition effect * @returns { T } @@ -21151,7 +22928,7 @@ declare class CommonMethod { * The larger the blurring radius, the more blurring the content. * If the value is 0, the content blurring effect is not blurring. * - * @param { number } value + * @param { number } value - value indicates radius of backdrop blur. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form @@ -21162,7 +22939,7 @@ declare class CommonMethod { * The larger the blurring radius, the more blurring the content. * If the value is 0, the content blurring effect is not blurring. * - * @param { number } value + * @param { number } value - value indicates radius of backdrop blur. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21192,7 +22969,6 @@ declare class CommonMethod { * * @param { Optional } blurRadius - value indicates radius of backdrop blur. * @param { BlurOptions } [options] - options indicates blur options. - * @param { SystemAdaptiveOptions } [sysOptions] - system adaptive options. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21200,10 +22976,27 @@ declare class CommonMethod { * @atomicservice * @since 18 */ + blur(blurRadius: Optional, options?: BlurOptions): T; + + /** + * Adds the content blurring effect for the current component. The input parameter is the blurring radius. + * The larger the blurring radius, the more blurring the content. + * If the value is 0, the content blurring effect is not blurring. + * + * @param { Optional } blurRadius - value indicates radius of backdrop blur. + * @param { BlurOptions } [options] - options indicates blur options. + * @param { SystemAdaptiveOptions } [sysOptions] - system adaptive options. + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 19 + */ blur(blurRadius: Optional, options?: BlurOptions, sysOptions?: SystemAdaptiveOptions): T; /** - * Adds the content linear gradient blurring effect for the current component. The input parameter is the blurring radius. + * Applies a linear gradient foreground blur effect to the component. * * @param { number } value - the blurring radius. * The larger the blurring radius, the more blurring the content, and if the value is 0, the content blurring effect is not blurring. @@ -21216,7 +23009,7 @@ declare class CommonMethod { linearGradientBlur(value: number, options: LinearGradientBlurOptions): T; /** - * Adds the content linear gradient blurring effect for the current component. The input parameter is the blurring radius. + * Applies a linear gradient foreground blur effect to the component. * * @param { Optional } blurRadius - the blurring radius. * The larger the blurring radius, the more blurring the content, and if the value is 0, the content blurring effect is not blurring. @@ -21229,9 +23022,21 @@ declare class CommonMethod { linearGradientBlur(blurRadius: Optional, options: Optional): T; /** - * Component motion blur interface. + * Apply a motion blur effect to the component being scaled or moved. + * 1.Do not use this API in intra-component transitions, shared element transitions, + * implicit element transitions, or particle animations. Doing so may cause unexpected results. + * 2.The **radius** parameter of **motionBlur** must be set to **0** for the initial state. + * Otherwise, there may be unexpected results during a cold start. + * 3.This API must be used together with the **onFinish** parameter of **AnimateParam**. + * Its **radius** parameter must be set to **0** when the animation ends; otherwise, there may be unexpected results. + * 4.When using this API, do not frequently change the blur radius of the same component; + * otherwise, there may be unexpected results. + * For example, if you frequently click the image in the example, the blur effect may not work sometimes. + * 5.To avoid unexpected results, make sure the coordinates of + * the motion blur anchor point are the same as those of the animation scaling anchor point. + * 6.To avoid unexpected results, set the blur radius to a value less than 1. * - * @param { MotionBlurOptions } value - the attributes of motion blur. + * @param { MotionBlurOptions } value - Motion blur options. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21253,32 +23058,47 @@ declare class CommonMethod { motionBlur(motionBlur: Optional):T; /** - * Adds a highlight effect to the current component. - * The input parameter is the highlight proportion. 0 indicates no highlight effect, and 1 indicates the maximum highlight proportion. - * The component is displayed as all white (percentage). + * Applies a brightness effect to the component. * - * @param { number } value + * @param { number } value - Brightness of the component. The value **1** indicates no effects. + * The value **0** indicates the complete darkness. If the value is less than **1**, the brightness + * decreases. If the value is greater than **1**, the brightness increases. A larger value indicates + * a higher brightness. A brightness of 2 turns the component completely white. + *
Default value: **1.0**
Recommended value range: [0, 2]. + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. + *
**Widget capability**: This API can be used in ArkTS widgets since API version 9. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Adds a highlight effect to the current component. - * The input parameter is the highlight proportion. 0 indicates no highlight effect, and 1 indicates the maximum highlight proportion. - * The component is displayed as all white (percentage). + * Applies a brightness effect to the component. * - * @param { number } value + * @param { number } value - Brightness of the component. The value **1** indicates no effects. + * The value **0** indicates the complete darkness. If the value is less than **1**, the brightness + * decreases. If the value is greater than **1**, the brightness increases. A larger value indicates + * a higher brightness. A brightness of 2 turns the component completely white. + *
Default value: **1.0**
Recommended value range: [0, 2]. + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. + *
**Widget capability**: This API can be used in ArkTS widgets since API version 9. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Adds a highlight effect to the current component. - * The input parameter is the highlight proportion. 0 indicates no highlight effect, and 1 indicates the maximum highlight proportion. - * The component is displayed as all white (percentage). + * Applies a brightness effect to the component. * - * @param { number } value + * @param { number } value - Brightness of the component. The value **1** indicates no effects. + * The value **0** indicates the complete darkness. If the value is less than **1**, the brightness + * decreases. If the value is greater than **1**, the brightness increases. A larger value indicates + * a higher brightness. A brightness of 2 turns the component completely white. + *
Default value: **1.0**
Recommended value range: [0, 2]. + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. + *
**Widget capability**: This API can be used in ArkTS widgets since API version 9. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21286,11 +23106,16 @@ declare class CommonMethod { * @since 10 */ /** - * Adds a highlight effect to the current component. - * The input parameter is the highlight proportion. 0 indicates no highlight effect, and 1 indicates the maximum highlight proportion. - * The component is displayed as all white (percentage). + * Applies a brightness effect to the component. * - * @param { number } value + * @param { number } value - Brightness of the component. The value **1** indicates no effects. + * The value **0** indicates the complete darkness. If the value is less than **1**, the brightness + * decreases. If the value is greater than **1**, the brightness increases. A larger value indicates + * a higher brightness. A brightness of 2 turns the component completely white. + *
Default value: **1.0**
Recommended value range: [0, 2]. + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. + *
**Widget capability**: This API can be used in ArkTS widgets since API version 9. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21301,11 +23126,19 @@ declare class CommonMethod { brightness(value: number): T; /** - * Adds a highlight effect to the current component. - * The input parameter is the highlight proportion. 0 indicates no highlight effect, and 1 indicates the maximum highlight proportion. - * The component is displayed as all white (percentage). + * Applies a brightness effect to the component. Compared to brightness, this + * API supports the **undefined** type for the **brightness** parameter. * - * @param { Optional } brightness + * @param { Optional } brightness - Brightness of the component. The value **1** indicates + * no effects. The value **0** indicates the complete darkness. If the value is less than **1**, + * the brightness decreases. If the value is greater than **1**, the brightness increases. A larger + * value indicates a higher brightness. A brightness of 2 turns the component completely white. + *
Default value: **1.0**. + *
Recommended value range: [0, 2]. + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. + *
**Widget capability**: This API can be used in ArkTS widgets since API version 16. + *
If **brightness** is **undefined**, the brightness level is reset to **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21316,29 +23149,50 @@ declare class CommonMethod { brightness(brightness: Optional): T; /** - * Adds a contrast effect to the current component. The input parameter is the contrast value. - * A larger contrast value indicates a sharper image. When the contrast value is 0, the image becomes gray. (%) + * Applies a contrast effect to the component. * - * @param { number } value + * @param { number } value - Contrast of the component. The input parameter is a + * contrast value. If the value is **1**, the source image is displayed. If the + * value is greater than 1, a larger value indicates a higher contrast and a clearer + * image. If the value is less than 1, a smaller value indicates a lower contrast is. + * If the value is **0**, the image becomes all gray. The unit is percentage. + *
Default value: **1.0**. + *
Recommended value range: [0, 10). + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Adds a contrast effect to the current component. The input parameter is the contrast value. - * A larger contrast value indicates a sharper image. When the contrast value is 0, the image becomes gray. (%) + * Applies a contrast effect to the component. * - * @param { number } value + * @param { number } value - Contrast of the component. The input parameter is a + * contrast value. If the value is **1**, the source image is displayed. If the + * value is greater than 1, a larger value indicates a higher contrast and a clearer + * image. If the value is less than 1, a smaller value indicates a lower contrast is. + * If the value is **0**, the image becomes all gray. The unit is percentage. + *
Default value: **1.0**. + *
Recommended value range: [0, 10). + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Adds a contrast effect to the current component. The input parameter is the contrast value. - * A larger contrast value indicates a sharper image. When the contrast value is 0, the image becomes gray. (%) + * Applies a contrast effect to the component. * - * @param { number } value + * @param { number } value - Contrast of the component. The input parameter is a + * contrast value. If the value is **1**, the source image is displayed. If the + * value is greater than 1, a larger value indicates a higher contrast and a clearer + * image. If the value is less than 1, a smaller value indicates a lower contrast is. + * If the value is **0**, the image becomes all gray. The unit is percentage. + *
Default value: **1.0**. + *
Recommended value range: [0, 10). + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21346,10 +23200,17 @@ declare class CommonMethod { * @since 10 */ /** - * Adds a contrast effect to the current component. The input parameter is the contrast value. - * A larger contrast value indicates a sharper image. When the contrast value is 0, the image becomes gray. (%) + * Applies a contrast effect to the component. * - * @param { number } value + * @param { number } value - Contrast of the component. The input parameter is a + * contrast value. If the value is **1**, the source image is displayed. If the + * value is greater than 1, a larger value indicates a higher contrast and a clearer + * image. If the value is less than 1, a smaller value indicates a lower contrast is. + * If the value is **0**, the image becomes all gray. The unit is percentage. + *
Default value: **1.0**. + *
Recommended value range: [0, 10). + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21360,10 +23221,19 @@ declare class CommonMethod { contrast(value: number): T; /** - * Adds a contrast effect to the current component. The input parameter is the contrast value. - * A larger contrast value indicates a sharper image. When the contrast value is 0, the image becomes gray. (%) + * Applies a contrast effect to the component. Compared to contrast, + * this API supports the **undefined** type for the **contrast** parameter. * - * @param { Optional } contrast + * @param { Optional } contrast - Contrast of the component. The input parameter + * is a contrast value. If the value is **1**, the source image is displayed. If the value + * is greater than 1, a larger value indicates a higher contrast and a clearer image. If the + * value is less than 1, a smaller value indicates a lower contrast is. If the value is **0**, + * the image becomes all gray. The unit is percentage. + *
Default value: **1.0**. + *
Recommended value range: [0, 10). + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. + *
If **contrast** is **undefined**, the contrast effect is reset to **1.0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21374,32 +23244,53 @@ declare class CommonMethod { contrast(contrast: Optional): T; /** - * Adds a grayscale effect to the current component. - * The value is the gray scale conversion ratio. If the input parameter is 1.0, the gray scale image is completely converted to the gray scale image. If the input parameter is 0.0, the image does not change. - * If the input parameter is between 0.0 and 1.0, the effect changes. (Percentage) - * - * @param { number } value + * Applies a grayscale effect to the component. + * + * @param { number } value - Grayscale conversion ratio of the component. + *
If the value is **1.0**, the component is completely converted to grayscale. + *
If the value is **0.0**, the component remains unchanged. Between **0** and **1**, + * the value applies a linear multiplier on the grayscale effect. The unit is percentage. + *
Default value: **0.0**. + *
Value range: [0.0, 1.0]. + *

**NOTE**: + *
A value less than **0.0** evaluates to the value **0.0**. + *
A value greater than **1.0** evaluates to the value **1.0**. + *

* @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Adds a grayscale effect to the current component. - * The value is the gray scale conversion ratio. If the input parameter is 1.0, the gray scale image is completely converted to the gray scale image. If the input parameter is 0.0, the image does not change. - * If the input parameter is between 0.0 and 1.0, the effect changes. (Percentage) - * - * @param { number } value + * Applies a grayscale effect to the component. + * + * @param { number } value - Grayscale conversion ratio of the component. + *
If the value is **1.0**, the component is completely converted to grayscale. + *
If the value is **0.0**, the component remains unchanged. Between **0** and **1**, + * the value applies a linear multiplier on the grayscale effect. The unit is percentage. + *
Default value: **0.0**. + *
Value range: [0.0, 1.0]. + *

**NOTE**: + *
A value less than **0.0** evaluates to the value **0.0**. + *
A value greater than **1.0** evaluates to the value **1.0**. + *

* @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Adds a grayscale effect to the current component. - * The value is the gray scale conversion ratio. If the input parameter is 1.0, the gray scale image is completely converted to the gray scale image. If the input parameter is 0.0, the image does not change. - * If the input parameter is between 0.0 and 1.0, the effect changes. (Percentage) - * - * @param { number } value + * Applies a grayscale effect to the component. + * + * @param { number } value - Grayscale conversion ratio of the component. + *
If the value is **1.0**, the component is completely converted to grayscale. + *
If the value is **0.0**, the component remains unchanged. Between **0** and **1**, + * the value applies a linear multiplier on the grayscale effect. The unit is percentage. + *
Default value: **0.0**. + *
Value range: [0.0, 1.0]. + *

**NOTE**: + *
A value less than **0.0** evaluates to the value **0.0**. + *
A value greater than **1.0** evaluates to the value **1.0**. + *

* @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21407,11 +23298,18 @@ declare class CommonMethod { * @since 10 */ /** - * Adds a grayscale effect to the current component. - * The value is the gray scale conversion ratio. If the input parameter is 1.0, the gray scale image is completely converted to the gray scale image. If the input parameter is 0.0, the image does not change. - * If the input parameter is between 0.0 and 1.0, the effect changes. (Percentage) - * - * @param { number } value + * Applies a grayscale effect to the component. + * + * @param { number } value - Grayscale conversion ratio of the component. + *
If the value is **1.0**, the component is completely converted to grayscale. + *
If the value is **0.0**, the component remains unchanged. Between **0** and **1**, + *
the value applies a linear multiplier on the grayscale effect. The unit is percentage. + *
Default value: **0.0**. + *
Value range: [0.0, 1.0]. + *

**NOTE**: + *
A value less than **0.0** evaluates to the value **0.0**. + *
A value greater than **1.0** evaluates to the value **1.0**. + *

* @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21422,11 +23320,19 @@ declare class CommonMethod { grayscale(value: number): T; /** - * Adds a grayscale effect to the current component. - * The value is the gray scale conversion ratio. If the input parameter is 1.0, the gray scale image is completely converted to the gray scale image. If the input parameter is 0.0, the image does not change. - * If the input parameter is between 0.0 and 1.0, the effect changes. (Percentage) + * Applies a grayscale effect to the component. + * Compared to grayscale, this API supports the **undefined** type for the **grayscale** parameter. * - * @param { Optional } grayscale + * @param { Optional } grayscale - Grayscale conversion ratio of the component. + *
If the value is **1.0**, the component is completely converted to grayscale. + *
If the value is **0.0**, the component remains unchanged. Between **0** and **1**, + *
the value applies a linear multiplier on the grayscale effect. The unit is percentage. + *
Default value: **0.0**. + *
Value range: [0.0, 1.0]. + *

**NOTE** + *
A value less than **0.0** evaluates to the value **0.0**. + *
A value greater than **1.0** evaluates to the value **1.0**. + *

* @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21437,26 +23343,26 @@ declare class CommonMethod { grayscale(grayscale: Optional): T; /** - * Adds a color overlay effect for the current component. The input parameter is the superimposed color. + * Applies a color blend effect to the component. * - * @param { Color | string | Resource } value + * @param { Color | string | Resource } value - Color to blend with the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Adds a color overlay effect for the current component. The input parameter is the superimposed color. + * Applies a color blend effect to the component. * - * @param { Color | string | Resource } value + * @param { Color | string | Resource } value - Color to blend with the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Adds a color overlay effect for the current component. The input parameter is the superimposed color. + * Applies a color blend effect to the component. * - * @param { Color | string | Resource } value + * @param { Color | string | Resource } value - Color to blend with the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21464,9 +23370,9 @@ declare class CommonMethod { * @since 10 */ /** - * Adds a color overlay effect for the current component. The input parameter is the superimposed color. + * Applies a color blend effect to the component. * - * @param { Color | string | Resource } value + * @param { Color | string | Resource } value - Color to blend with the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21477,9 +23383,11 @@ declare class CommonMethod { colorBlend(value: Color | string | Resource): T; /** - * Adds a color overlay effect for the current component. The input parameter is the superimposed color. + * Applies a color blend effect to the component. + * Compared to {@link colorBlend}, this API supports the **undefined** type for the **color** parameter. * - * @param { Optional } color + * @param { Optional } color - Color to blend with the component. + *
If **color** is **undefined**, the component reverts to its original effect with no color blending. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21490,35 +23398,50 @@ declare class CommonMethod { colorBlend(color: Optional): T; /** - * Adds a saturation effect to the current component. - * The saturation is the ratio of the color-containing component to the achromatic component (gray). - * The larger the color-containing component, the greater the saturation. - * The larger the achromatic component, the smaller the saturation. (Percentage) + * Applies a saturation effect to the component. * - * @param { number } value + * @param { number } value - Saturation of the component. The saturation is the ratio of the + * chromatic component to the achromatic component (gray) in a color. If the value is **1**, + * the original image is displayed. If the value is greater than **1**, a higher percentage of + * the chromatic component indicates a higher saturation. If the value is less than **1**, a higher + * percentage of the achromatic component indicates a lower saturation. The unit is percentage. + *
Default value: **1.0**. + *
Recommended value range: [0, 50). + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Adds a saturation effect to the current component. - * The saturation is the ratio of the color-containing component to the achromatic component (gray). - * The larger the color-containing component, the greater the saturation. - * The larger the achromatic component, the smaller the saturation. (Percentage) + * Applies a saturation effect to the component. * - * @param { number } value + * @param { number } value - Saturation of the component. The saturation is the ratio of the + * chromatic component to the achromatic component (gray) in a color. If the value is **1**, + * the original image is displayed. If the value is greater than **1**, a higher percentage of + * the chromatic component indicates a higher saturation. If the value is less than **1**, a higher + * percentage of the achromatic component indicates a lower saturation. The unit is percentage. + *
Default value: **1.0**. + *
Recommended value range: [0, 50). + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Adds a saturation effect to the current component. - * The saturation is the ratio of the color-containing component to the achromatic component (gray). - * The larger the color-containing component, the greater the saturation. - * The larger the achromatic component, the smaller the saturation. (Percentage) + * Applies a saturation effect to the component. * - * @param { number } value + * @param { number } value - Saturation of the component. The saturation is the ratio of the + * chromatic component to the achromatic component (gray) in a color. If the value is **1**, + * the original image is displayed. If the value is greater than **1**, a higher percentage of + * the chromatic component indicates a higher saturation. If the value is less than **1**, a higher + * percentage of the achromatic component indicates a lower saturation. The unit is percentage. + *
Default value: **1.0**. + *
Recommended value range: [0, 50). + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21526,12 +23449,17 @@ declare class CommonMethod { * @since 10 */ /** - * Adds a saturation effect to the current component. - * The saturation is the ratio of the color-containing component to the achromatic component (gray). - * The larger the color-containing component, the greater the saturation. - * The larger the achromatic component, the smaller the saturation. (Percentage) + * Applies a saturation effect to the component. * - * @param { number } value + * @param { number } value - Saturation of the component. The saturation is the ratio of the + * chromatic component to the achromatic component (gray) in a color. If the value is **1**, + * the original image is displayed. If the value is greater than **1**, a higher percentage of + * the chromatic component indicates a higher saturation. If the value is less than **1**, a higher + * percentage of the achromatic component indicates a lower saturation. The unit is percentage. + *
Default value: **1.0**. + *
Recommended value range: [0, 50). + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21542,12 +23470,19 @@ declare class CommonMethod { saturate(value: number): T; /** - * Adds a saturation effect to the current component. - * The saturation is the ratio of the color-containing component to the achromatic component (gray). - * The larger the color-containing component, the greater the saturation. - * The larger the achromatic component, the smaller the saturation. (Percentage) + * Applies a saturation effect to the component. Compared to saturate, this API supports + * the **undefined** type for the **saturate** parameter. * - * @param { Optional } saturate + * @param { Optional } saturate - Saturation of the component. The saturation is the ratio of + * the chromatic component to the achromatic component (gray) in a color. If the value is **1**, the + * original image is displayed. If the value is greater than **1**, a higher percentage of the chromatic + * component indicates a higher saturation. If the value is less than **1**, a higher percentage of the + * achromatic component indicates a lower saturation. The unit is percentage. + *
Default value: **1.0**. + *
Recommended value range: [0, 50). + *
**NOTE** + *
A value less than 0 evaluates to the value **0**. + *
If **saturate** is **undefined**, the saturation effect is reset to **1.0**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21558,29 +23493,32 @@ declare class CommonMethod { saturate(saturate: Optional): T; /** - * Converts the image to sepia. Value defines the scale of the conversion. - * A value of 1 is completely sepia, and a value of 0 does not change the image. (Percentage) + * Sepia conversion ratio of the component. * - * @param { number } value + * @param { number } value - Sepia conversion ratio of the component. If the value is **1**, the image + * is completely sepia. If the value is **0**, the component remains unchanged. The unit is percentage. + *
Value range: [0, +∞). * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Converts the image to sepia. Value defines the scale of the conversion. - * A value of 1 is completely sepia, and a value of 0 does not change the image. (Percentage) + * Sepia conversion ratio of the component. * - * @param { number } value + * @param { number } value - Sepia conversion ratio of the component. If the value is **1**, the image + * is completely sepia. If the value is **0**, the component remains unchanged. The unit is percentage. + *
Value range: [0, +∞). * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Converts the image to sepia. Value defines the scale of the conversion. - * A value of 1 is completely sepia, and a value of 0 does not change the image. (Percentage) + * Sepia conversion ratio of the component. * - * @param { number } value + * @param { number } value - Sepia conversion ratio of the component. If the value is **1**, the image + * is completely sepia. If the value is **0**, the component remains unchanged. The unit is percentage. + *
Value range: [0, +∞). * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21588,10 +23526,11 @@ declare class CommonMethod { * @since 10 */ /** - * Converts the image to sepia. Value defines the scale of the conversion. - * A value of 1 is completely sepia, and a value of 0 does not change the image. (Percentage) + * Sepia conversion ratio of the component. * - * @param { number } value + * @param { number } value - Sepia conversion ratio of the component. If the value is **1**, the image + * is completely sepia. If the value is **0**, the component remains unchanged. The unit is percentage. + *
Value range: [0, +∞). * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21602,10 +23541,13 @@ declare class CommonMethod { sepia(value: number): T; /** - * Converts the image to sepia. Value defines the scale of the conversion. - * A value of 1 is completely sepia, and a value of 0 does not change the image. (Percentage) + * Sepia conversion ratio of the component. Compared to sepia, + * this API supports the **undefined** type for the **sepia** parameter. * - * @param { Optional } sepia + * @param { Optional } sepia - Sepia conversion ratio of the component. If the value is **1**, the + * image is completely sepia. If the value is **0**, the component remains unchanged. The unit is percentage. + *
If **sepia** is **undefined**, the component reverts to its original effect. + *
Value range: [0, +∞). * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21660,10 +23602,20 @@ declare class CommonMethod { invert(value: number | InvertOptions): T; /** - * Invert the input image. Value defines the scale of the conversion. 100% of the value is a complete reversal. - * A value of 0% does not change the image. (Percentage) + * Inverts the image. Compared to invert, + * this API supports the **undefined** type for the **options** parameter. * - * @param { Optional } options - value indicates the scale of the conversion or the options of invert. + * @param { Optional } options - How the image is inverted. + *
If the value is of the number type, + *
it indicates the inversion ratio. If the value is **1**, + *
the image is completely inverted. If the value is **0**, the image remains unchanged. + *
The unit is percentage.
Value range: [0, 1]
A value less than 0 evaluates to the value **0**. + *
If the value is of the InvertOptions type, the grayscale value of the background color is compared + *
with the threshold range. If the grayscale value is greater than the upper bound of the threshold range, + *
the **high** value is used. If the grayscale value is less than the lower bound of the threshold range, + *
the **low** value is used. If the grayscale value is within the threshold range, + *
the background color changes linearly from high to low.
If **options** is **undefined**, + *
the component reverts to its original effect. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21674,7 +23626,7 @@ declare class CommonMethod { invert(options: Optional): T; /** - * Sets system bar effect to the component. + * Applies a system bar effect to the component, which means to invert colors based on the background and add a blur. * * @returns { T } return the component attribute. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -21684,32 +23636,35 @@ declare class CommonMethod { systemBarEffect(): T; /** - * Adds the hue rotation effect to the current component. - * The input parameter is the rotation angle. When the input parameter is 0deg, the image does not change (the default value is 0deg), and the input parameter does not have a maximum value. - * If the value exceeds 360deg, the image is circled again. + * Rotates the hue of the component. * - * @param { number | string } value + * @param { number | string } value - Hue rotation angle of the component. + *
A rotation of 360 degrees leaves the color unchanged. + *
A rotation of 180 degrees and then -180 degrees also leaves the color unchanged. + *
When the data type is number, the value **90** is equivalent to **'90deg'**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Adds the hue rotation effect to the current component. - * The input parameter is the rotation angle. When the input parameter is 0deg, the image does not change (the default value is 0deg), and the input parameter does not have a maximum value. - * If the value exceeds 360deg, the image is circled again. + * Rotates the hue of the component. * - * @param { number | string } value + * @param { number | string } value - Hue rotation angle of the component. + *
A rotation of 360 degrees leaves the color unchanged. + *
A rotation of 180 degrees and then -180 degrees also leaves the color unchanged. + *
When the data type is number, the value **90** is equivalent to **'90deg'**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Adds the hue rotation effect to the current component. - * The input parameter is the rotation angle. When the input parameter is 0deg, the image does not change (the default value is 0deg), and the input parameter does not have a maximum value. - * If the value exceeds 360deg, the image is circled again. + * Rotates the hue of the component. * - * @param { number | string } value + * @param { number | string } value - Hue rotation angle of the component. + *
A rotation of 360 degrees leaves the color unchanged. + *
A rotation of 180 degrees and then -180 degrees also leaves the color unchanged. + *
When the data type is number, the value **90** is equivalent to **'90deg'**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21717,11 +23672,12 @@ declare class CommonMethod { * @since 10 */ /** - * Adds the hue rotation effect to the current component. - * The input parameter is the rotation angle. When the input parameter is 0deg, the image does not change (the default value is 0deg), and the input parameter does not have a maximum value. - * If the value exceeds 360deg, the image is circled again. + * Rotates the hue of the component. * - * @param { number | string } value + * @param { number | string } value - Hue rotation angle of the component. + *
A rotation of 360 degrees leaves the color unchanged. + *
A rotation of 180 degrees and then -180 degrees also leaves the color unchanged. + *
When the data type is number, the value **90** is equivalent to **'90deg'**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21732,9 +23688,8 @@ declare class CommonMethod { hueRotate(value: number | string): T; /** - * Adds the hue rotation effect to the current component. - * The input parameter is the rotation angle. When the input parameter is 0deg, the image does not change (the default value is 0deg), and the input parameter does not have a maximum value. - * If the value exceeds 360deg, the image is circled again. + * Rotates the hue of the component. Compared to hueRotate, + * this API supports the **undefined** type for the **rotation** parameter. * * @param { Optional } rotation * @returns { T } @@ -21747,9 +23702,18 @@ declare class CommonMethod { hueRotate(rotation: Optional): T; /** - * Add an attribute to control whether the shadows of the child nodes overlap each other. + * Sets whether to draw shadows of child nodes in the component at the same layer, + * so that the shadows of elements at the same layer overlap. * - * @param { boolean } value - true means the shadows of the child nodes overlap each other effect and drawn in batches. + * @param { boolean } value - Whether to draw shadows of child nodes in the component + * at the same layer, so that the shadows of elements at the same layer overlap. + *
Default value: **false**. + *
**NOTE** + *
1. When this feature is disabled (default), if the shadow radius of a child node + * is large, the shadows of the child nodes may overlap. This overlap issue does not occur + * when the feature is enabled. + *
2. Avoid nesting **useShadowBatching**. When used in nested mode, **useShadowBatching** + * takes effect for the current child node only and cannot be recursively used. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21757,9 +23721,18 @@ declare class CommonMethod { * @since 11 */ /** - * Add an attribute to control whether the shadows of the child nodes overlap each other. + * Sets whether to draw shadows of child nodes in the component at the same layer, + * so that the shadows of elements at the same layer overlap. * - * @param { boolean } value - true means the shadows of the child nodes overlap each other effect and drawn in batches. + * @param { boolean } value - Whether to draw shadows of child nodes in the component + * at the same layer, so that the shadows of elements at the same layer overlap. + *
Default value: **false**. + *
**NOTE** + *
1. When this feature is disabled (default), if the shadow radius of a child node + * is large, the shadows of the child nodes may overlap. This overlap issue does not occur + * when the feature is enabled. + *
2. Avoid nesting **useShadowBatching**. When used in nested mode, **useShadowBatching** + * takes effect for the current child node only and cannot be recursively used. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21770,9 +23743,21 @@ declare class CommonMethod { useShadowBatching(value: boolean): T; /** - * Add an attribute to control whether the shadows of the child nodes overlap each other. + * Sets whether to draw shadows of child nodes in the component at the same layer, + * so that the shadows of elements at the same layer overlap. Compared to + * useShadowBatching11+, this API supports the + * **undefined** type for the **use** parameter. * - * @param { Optional } use - true means the shadows of the child nodes overlap each other effect and drawn in batches. + * @param { Optional } use - Whether to draw shadows of child nodes in the + * component at the same layer, so that the shadows of elements at the same layer overlap. + *
Default value: **false**. + *
**NOTE** + *
1. When this feature is disabled (default), if the shadow radius of a child node is large, + * the shadows of the child nodes may overlap. This overlap issue does not occur when the feature + * is enabled.
2. Avoid nesting **useShadowBatching**. When used in nested mode, + * **useShadowBatching** takes effect for the current child node only and cannot be recursively used. + *
If **use** is **undefined**, the component reverts to its original effect of not using + * shadow overlapping. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21783,12 +23768,17 @@ declare class CommonMethod { useShadowBatching(use: Optional): T; /** - * Sets whether the component should apply the effects template defined by the parent effectComponent or window. - * If multiple parent effectComponents are found, the nearest one will be used. - * If no parent effectComponent is found, this method has no effect. - * - * @param { boolean } useEffect - true means the component should apply the effects template defined by the parent effectComponent or window. - * @param { EffectType } effectType - the effect type of the effects template, defined by the parent effectComponent or window. + * Specifies whether to apply the effect defined by the parent + * [EffectComponent](ts-container-effectcomponent-sys.md) or the window. + * + * @param { Optional } useEffect - Whether to apply the effect defined by the parent + * **EffectComponent** or the window. + *
The value **true** means to apply the effect defined by the parent **EffectComponent** + * or the window. + *
Default value: **false**. + * @param { EffectType } [effectType] - Type of effect to apply to the component, which is defined by + * the parent **EffectComponent** or the window. + *
Default value: **EffectType.DEFAULT**. * @returns { T } return the component attribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -21797,12 +23787,20 @@ declare class CommonMethod { useEffect(useEffect: boolean, effectType: EffectType): T; /** - * Sets whether the component should apply the effects template defined by the parent effectComponent or window. - * If multiple parent effectComponents are found, the nearest one will be used. - * If no parent effectComponent is found, this method has no effect. - * - * @param { Optional } useEffect - true means the component should apply the effects template defined by the parent effectComponent or window. - * @param { EffectType } [effectType] - the effect type of the effects template, defined by the parent effectComponent or window. + * Specifies whether to apply the effect defined by the parent + * EffectComponent or + * the window. Compared to useEffect14+, + * this API supports the **undefined** type for the **useEffect** parameter. + * + * @param { Optional } useEffect - Whether to apply the effect defined by + * the parent **EffectComponent** or the window. + *
The value **true** means to apply the effect defined by the parent + * **EffectComponent** or the window. + *
Default value: **false**. + *
If **useEffect** is set to **undefined**, the previous value is retained. + * @param { EffectType } [effectType] - Type of effect to apply to the component, which + * is defined by the parent **EffectComponent** or the window. + *
Default value: **EffectType.DEFAULT**. * @returns { T } return the component attribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -21811,11 +23809,12 @@ declare class CommonMethod { useEffect(useEffect: Optional, effectType?: EffectType): T; /** - * Sets whether the component should apply the effects template defined by the parent effectComponent. - * If multiple parent effectComponents are found, the nearest one will be used. - * If no parent effectComponent is found, this method has no effect. + * Specifies whether to combine the drawing of special effects, such as background blur. * - * @param { boolean } value - true means the component should apply the effects template. + * @param { boolean } value - Whether the component inherits the special effect settings of the + * **EffectComponent** component.
The value **true** means that the component inherits the + * special effect settings of the **EffectComponent** component, and **false** means the opposite. + *
Default value: **false**. * @returns { T } return the component attribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -21824,49 +23823,68 @@ declare class CommonMethod { useEffect(value: boolean): T; /** - * Adds the background blur effect for the current component. The input parameter is the blur radius. - * The larger the blur radius, the more blurred the background. If the value is 0, the background blur is not blurred. + * Applies a background blur effect to the component. You can customize the blur radius and grayscale parameters. * - * @param { number } value + * @param { number } value - Background blur effect to apply to the component. + *
The input parameter is the blur radius. The larger the radius is, the more blurred the background is. + *
If the value is **0**, the background is not blurred. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Adds the background blur effect for the current component. The input parameter is the blur radius. - * The larger the blur radius, the more blurred the background. If the value is 0, the background blur is not blurred. + * Applies a background blur effect to the component. You can customize the blur radius and grayscale parameters. * - * @param { number } value + * @param { number } value - Background blur effect to apply to the component. + *
The input parameter is the blur radius. The larger the radius is, the more blurred the background is. + *
If the value is **0**, the background is not blurred. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Adds the background blur effect for the current component. The input parameter is the blur radius. - * The larger the blur radius, the more blurred the background. If the value is 0, the background blur is not blurred. + * Applies a background blur effect to the component. You can customize the blur radius and grayscale parameters. * - * @param { number } value + * @param { number } value - Background blur effect to apply to the component. + *
The input parameter is the blur radius. The larger the radius is, the more blurred the background is. + *
If the value is **0**, the background is not blurred. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form * @since 10 */ + /** + * Applies a background blur effect to the component. You can customize the blur radius and grayscale parameters. + * + * @param { number } value - Background blur effect to apply to the component. + *
The input parameter is the blur radius. The larger the radius is, the more blurred the background is. + *
If the value is **0**, the background is not blurred. + * @param { BlurOptions } [options] - Grayscale parameters. + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 11 + */ + backdropBlur(value: number, options?: BlurOptions): T; + /** * Adds the background blur effect for the current component. The input parameter is the blur radius. * The larger the blur radius, the more blurred the background. If the value is 0, the background blur is not blurred. * - * @param { number } value - value indicates radius of backdrop blur. + * @param { Optional } radius - radius indicates radius of backdrop blur. * @param { BlurOptions } [options] - options indicates the backdrop blur options. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form * @atomicservice - * @since 11 + * @since 18 */ - backdropBlur(value: number, options?: BlurOptions): T; + backdropBlur(radius: Optional, options?: BlurOptions): T; /** * Adds the background blur effect for the current component. The input parameter is the blur radius. @@ -21880,23 +23898,35 @@ declare class CommonMethod { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ backdropBlur(radius: Optional, options?: BlurOptions, sysOptions?: SystemAdaptiveOptions): T; /** - * Composite the contents of this view and its children into an offscreen cache before display in the screen. + * Sets whether the component and its child components are rendered off + * the screen as a whole before being blended with its parent. * - * @param { boolean } value - if this view and its children need to composite into an offscreen cache. + * @param { boolean } value - Whether the component and its child components are rendered + * off the screen as a whole before being blended with its parent. If the opacity of the + * component is not 1, the drawing effect may vary depending on the value. + *
Default value: **false**. + *
The value **true** means the component and its child components are rendered off + * the screen as a whole, and **false** means the opposite. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Composite the contents of this view and its children into an offscreen cache before display in the screen. + * Sets whether the component and its child components are rendered off + * the screen as a whole before being blended with its parent. * - * @param { boolean } value - if this view and its children need to composite into an offscreen cache. + * @param { boolean } value - Whether the component and its child components are rendered + * off the screen as a whole before being blended with its parent. If the opacity of the + * component is not 1, the drawing effect may vary depending on the value. + *
Default value: **false**. + *
The value **true** means the component and its child components are rendered off + * the screen as a whole, and **false** means the opposite. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21904,9 +23934,15 @@ declare class CommonMethod { * @since 11 */ /** - * Composite the contents of this view and its children into an offscreen cache before display in the screen. + * Sets whether the component and its child components are rendered off + * the screen as a whole before being blended with its parent. * - * @param { boolean } value - if this view and its children need to composite into an offscreen cache. + * @param { boolean } value - Whether the component and its child components are rendered + * off the screen as a whole before being blended with its parent. If the opacity of the + * component is not 1, the drawing effect may vary depending on the value. + *
Default value: **false**. + *
The value **true** means the component and its child components are rendered off + * the screen as a whole, and **false** means the opposite. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21917,9 +23953,16 @@ declare class CommonMethod { renderGroup(value: boolean): T; /** - * Composite the contents of this view and its children into an offscreen cache before display in the screen. + * Sets whether the component and its child components are rendered off the screen as a whole + * before being blended with its parent. Compared to renderGroup10+, + * this API supports the **undefined** type for the **isGroup** parameter. * - * @param { Optional } isGroup - if this view and its children need to composite into an offscreen cache. + * @param { Optional } isGroup - Whether the component and its child components are rendered + * off the screen as a whole before being blended with its parent. If the opacity of the component is + * not 1, the drawing effect may vary depending on the value. + *
Default value: **false**. + *
If **isGroup** is **undefined**, the component reverts to its original effect of not enabling + * offscreen rendering as a whole before blending with the parent component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21930,10 +23973,15 @@ declare class CommonMethod { renderGroup(isGroup: Optional): T; /** - * Sets whether the component should remain stationary, reusing the results of the current frame's off-screen rendering. - * If the input parameter is true, the component and subcomponent changes do not affect the display. + * Sets whether to freeze the component. When frozen, the component and its children are cached for + * repeated drawing after offscreen rendering, without updating internal attributes. * - * @param { boolean } value - true means the component should remain stationary. + * @param { boolean } value - Whether to freeze the component. When frozen, the component and its children + * are cached for repeated drawing after offscreen rendering, without updating internal attributes. If the + * opacity of the component is not 1, the drawing effect may vary depending on the value. + *
Default value: **false**. + *
**true**: Freeze the component. + *
**false**: Do not freeze the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -21942,10 +23990,17 @@ declare class CommonMethod { freeze(value: boolean): T; /** - * Sets whether the component should remain stationary, reusing the results of the current frame's off-screen rendering. - * If the input parameter is true, the component and subcomponent changes do not affect the display. + * Sets whether to freeze the component. When frozen, the component and its children are cached for repeated + * drawing after offscreen rendering, without updating internal attributes. Compared to freeze, + * this API supports the **undefined** type for the **freeze** parameter. * - * @param { Optional } freeze - true means the component should remain stationary. + * @param { Optional } freeze - Whether to freeze the component. When frozen, the component and its + * children are cached for repeated drawing after offscreen rendering, without updating internal attributes. + * If the opacity of the component is not 1, the drawing effect may vary depending on the value. + *
Default value: **false**. + *
**true**: Freeze the component. + *
**false**: Do not freeze the component. + *
If **freeze** is set to **undefined**, the previous value is retained. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -21954,32 +24009,29 @@ declare class CommonMethod { freeze(freeze: Optional): T; /** - * Sets the translation effect during page transition. - * The value is the start point of entry and end point of exit. - * When this parameter is set together with slide, slide takes effect by default. + * Sets the translation effect for page transitions. * - * @param { TranslateOptions } value + * @param { TranslateOptions } value - Translation effect for page transitions + *
specifying the start value for entrance and the end value for exit. default:{x:0,y:0,z:0} * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Sets the translation effect during page transition. - * The value is the start point of entry and end point of exit. - * When this parameter is set together with slide, slide takes effect by default. + * Sets the translation effect for page transitions. * - * @param { TranslateOptions } value + * @param { TranslateOptions } value - Translation effect for page transitions + *
specifying the start value for entrance and the end value for exit. default:{x:0,y:0,z:0} * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Sets the translation effect during page transition. - * The value is the start point of entry and end point of exit. - * When this parameter is set together with slide, slide takes effect by default. + * Sets the translation effect for page transitions. * - * @param { TranslateOptions } value + * @param { TranslateOptions } value - Translation effect for page transitions + *
specifying the start value for entrance and the end value for exit. default:{x:0,y:0,z:0} * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -21987,9 +24039,10 @@ declare class CommonMethod { * @since 10 */ /** - * Set component translation. + * Sets the translation effect for page transitions. * - * @param { TranslateOptions } value default:{x:0,y:0,z:0} + * @param { TranslateOptions } value - Translation effect for page transitions + *
specifying the start value for entrance and the end value for exit. default:{x:0,y:0,z:0} * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -22000,9 +24053,14 @@ declare class CommonMethod { translate(value: TranslateOptions): T; /** - * Set component translation. + * Translates the component. + * Compared to {@link translate}, this API supports the **undefined** type for the **translate** parameter. + * - * @param { Optional } translate default:{x:0,y:0,z:0} + * @param { Optional } translate - How the component is translated in the coordinate + *
system (as shown below) with the upper left corner of the component as the coordinate origin. + *
Values of **x**, **y**, and **z** indicate the translation distance along the respective axis. + *
default:{x:0,y:0,z:0} * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -22015,7 +24073,9 @@ declare class CommonMethod { /** * Sets the zoom effect during page transition. The value is the start point of entry and end point of exit. * - * @param { ScaleOptions } value + * @param { ScaleOptions } value - Scale ratio along the x-, y-, and z-axis. The default value is **1**. + *
**centerX** and **centerY** are used to set the scale center point. + *
default:{x:1,y:1,z:1,centerX:'50%',centerY:'50%'} * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 @@ -22023,7 +24083,9 @@ declare class CommonMethod { /** * Sets the zoom effect during page transition. The value is the start point of entry and end point of exit. * - * @param { ScaleOptions } value + * @param { ScaleOptions } value - Scale ratio along the x-, y-, and z-axis. The default value is **1**. + *
**centerX** and **centerY** are used to set the scale center point. + *
default:{x:1,y:1,z:1,centerX:'50%',centerY:'50%'} * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form @@ -22032,7 +24094,9 @@ declare class CommonMethod { /** * Sets the zoom effect during page transition. The value is the start point of entry and end point of exit. * - * @param { ScaleOptions } value + * @param { ScaleOptions } value - Scale ratio along the x-, y-, and z-axis. The default value is **1**. + *
**centerX** and **centerY** are used to set the scale center point. + *
default:{x:1,y:1,z:1,centerX:'50%',centerY:'50%'} * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -22040,9 +24104,11 @@ declare class CommonMethod { * @since 10 */ /** - * Set component scaling. + * Scales the component. * - * @param { ScaleOptions } value default:{x:1,y:1,z:1,centerX:'50%',centerY:'50%'} + * @param { ScaleOptions } value - Scale ratio along the x-, y-, and z-axis. The default value is **1**. + *
**centerX** and **centerY** are used to set the scale center point. + *
default:{x:1,y:1,z:1,centerX:'50%',centerY:'50%'} * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -22053,9 +24119,13 @@ declare class CommonMethod { scale(value: ScaleOptions): T; /** - * Set component scaling. + * Scales the component. + * Compared to {@link scale} , this API supports the **undefined** type for the **options** parameter. * - * @param { Optional } options default:{x:1,y:1,z:1,centerX:'50%',centerY:'50%'} + * @param { Optional } options - Scale ratio along the x-, y-, and z-axis. + *
The default value is **1**. **centerX** and **centerY** are used to set the scale center point. + *
default:{x:1,y:1,z:1,centerX:'50%',centerY:'50%'} + *
If **options** is **undefined**, the component reverts to its original state with no scaling. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -22174,7 +24244,7 @@ declare class CommonMethod { rotate(value: RotateOptions): T; /** - * Set component rotation. + * Rotates the component. This API supports the **undefined** type for the **options** parameter. * * @param { Optional } options default:{x:0,y:0,z:0,centerX:'50%',centerY:'50%',centerZ:0,perspective:0} * @returns { T } @@ -22187,26 +24257,39 @@ declare class CommonMethod { rotate(options: Optional): T; /** - * Sets the transformation matrix for the current component. + * Set component rotation. * - * @param { object } value + * @param { Optional } options default:{x:0,y:0,z:0,centerX:'50%',centerY:'50%',centerZ:0,perspective:0,angle:0} + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + rotate(options: Optional): T; + + /** + * Sets the transformation matrix of the component. + * + * @param { object } value - Transformation matrix of the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Sets the transformation matrix for the current component. + * Sets the transformation matrix of the component. * - * @param { object } value + * @param { object } value - Transformation matrix of the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets the transformation matrix for the current component. + * Sets the transformation matrix of the component. * - * @param { object } value + * @param { object } value - Transformation matrix of the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -22216,9 +24299,11 @@ declare class CommonMethod { transform(value: object): T; /** - * Sets the transformation matrix for the current component. + * Sets the transformation matrix of the component. + * Compared to {@link transform}, this API supports the **undefined** type for the **transform** parameter. * - * @param { Optional } transform + * @param { Optional } transform - How the component is translated in the coordinate + *
system (as shown below) with the upper left corner of the component as the coordinate origin. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -22227,6 +24312,19 @@ declare class CommonMethod { */ transform(transform: Optional): T; + /** + * Sets the transformation matrix for the current component. + * The interface can display the effect of three-dimensional matrix transformation. + * + * @param { Optional } transform - transform3D matrix + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + transform3D(transform: Optional): T; + /** * This callback is triggered when a component mounts a display. * @@ -22390,7 +24488,7 @@ declare class CommonMethod { /** * Controls the display or hide of the current component. * - * @param { Visibility } value + * @param { Visibility } value - Whether the component is visible. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -22428,7 +24526,8 @@ declare class CommonMethod { * @since 10 */ /** - * The percentage of the remaining space of the Flex container allocated to the component on which this property resides. + * Sets the percentage of the parent container's remaining space that is allocated to the component. + * Default value: **0**. * * @param { number } value * @returns { T } @@ -22468,7 +24567,8 @@ declare class CommonMethod { * @since 10 */ /** - * The proportion of the Flex container compression size assigned to the component on which this attribute resides. + * Sets the percentage of the parent container's shrink size that is allocated to the component. + * Default value: 0 when the parent container is Column or Row, 1 when the parent container is Flex.. * * @param { number } value * @returns { T } @@ -22508,7 +24608,8 @@ declare class CommonMethod { * @since 10 */ /** - * The base dimension of the assembly on which this attribute is located in the direction of the principal axis in the Flex container. + * Sets the base size of the component in the main axis of the parent container. + * Default value: **'auto'**. * * @param { number | string } value * @returns { T } @@ -22548,7 +24649,8 @@ declare class CommonMethod { * @since 10 */ /** - * Overrides the default configuration of alignItems in the Flex Layout container. + * Sets the alignment mode of the child components along the cross axis of the parent container. + * Default value: **ItemAlign.Auto**. * * @param { ItemAlign } value * @returns { T } @@ -22560,6 +24662,19 @@ declare class CommonMethod { */ alignSelf(value: ItemAlign): T; + /** + * Defines the align rules of child component in Stack container. + * + * @param { LocalizedAlignment} alignment + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + layoutGravity(alignment: LocalizedAlignment): T; + /** * Sets the current component and displays the priority in the layout container. This parameter is valid only in Row, Column, and Flex single-row layouts. * @@ -22588,7 +24703,8 @@ declare class CommonMethod { * @since 10 */ /** - * Sets the current component and displays the priority in the layout container. This parameter is valid only in Row, Column, and Flex single-row layouts. + * Sets the display priority for the component in the layout container. + *
This parameter is only effective in Row, Column, and Flex (single-line) container components. * * @param { number } value * @returns { T } @@ -22641,29 +24757,47 @@ declare class CommonMethod { zIndex(value: number): T; /** - * If the components of the two pages are configured with the same ID, the shared element transition is performed during transition. If the parameter is set to an empty string, the shared element transition does not occur. For details about the options parameter, see the options parameter description. + * If the components of the two pages are configured with the same ID. + * The shared element transition is performed during transition. + * If the parameter is set to an empty string, the shared element transition does not occur. + * For details about the options parameter, see the options parameter description. * - * @param { string } id - * @param { sharedTransitionOptions } options + * @param { string } id - Transition of the shared element. + *
If the same **id** value is configured for a component on the two pages, + *
this component is considered as a shared element of the pages. + *
If the **id** value is an empty string, no transition will be applied to the component. + * @param { sharedTransitionOptions } options - Parameters of the shared element transition animation. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * If the components of the two pages are configured with the same ID, the shared element transition is performed during transition. If the parameter is set to an empty string, the shared element transition does not occur. For details about the options parameter, see the options parameter description. + * If the components of the two pages are configured with the same ID. + * The shared element transition is performed during transition. + * If the parameter is set to an empty string, the shared element transition does not occur. + * For details about the options parameter, see the options parameter description. * - * @param { string } id - * @param { sharedTransitionOptions } options + * @param { string } id - Transition of the shared element. + *
If the same **id** value is configured for a component on the two pages, + *
this component is considered as a shared element of the pages. + *
If the **id** value is an empty string, no transition will be applied to the component. + * @param { sharedTransitionOptions } options - Parameters of the shared element transition animation. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * If the components of the two pages are configured with the same ID, the shared element transition is performed during transition. If the parameter is set to an empty string, the shared element transition does not occur. For details about the options parameter, see the options parameter description. + * If the components of the two pages are configured with the same ID. + * The shared element transition is performed during transition. + * If the parameter is set to an empty string, the shared element transition does not occur. + * For details about the options parameter, see the options parameter description. * - * @param { string } id - * @param { sharedTransitionOptions } options + * @param { string } id - Transition of the shared element. + *
If the same **id** value is configured for a component on the two pages, + *
this component is considered as a shared element of the pages. + *
If the **id** value is an empty string, no transition will be applied to the component. + * @param { sharedTransitionOptions } options - Parameters of the shared element transition animation. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -22700,7 +24834,8 @@ declare class CommonMethod { * @since 10 */ /** - * Sets the sliding direction. The enumerated value supports logical AND (&) and logical OR (|). + * Sets how elements are laid out along the main axis of the container. + * Default value: **Direction.Auto**. * * @param { Direction } value * @returns { T } @@ -22740,7 +24875,8 @@ declare class CommonMethod { * @since 10 */ /** - * align + * Sets the alignment mode of the component content in the drawing area. + * Default value: **Alignment.Center**. * * @param { Alignment } value * @returns { T } @@ -22752,6 +24888,19 @@ declare class CommonMethod { */ align(value: Alignment): T; + /** + * align + * + * @param { Alignment | LocalizedAlignment } alignment + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + align(alignment: Alignment | LocalizedAlignment): T; + /** * position * @@ -22791,7 +24940,8 @@ declare class CommonMethod { * @since 11 */ /** - * position + * Sets the absolute position of the component relative to the position of the parent component. + *
The attribute is not available for a layout container whose width and height are zero. * * @param { Position | Edges | LocalizedEdges } value * @returns { T } @@ -22842,7 +24992,8 @@ declare class CommonMethod { * @since 11 */ /** - * Sets the anchor point of the element when it is positioned. The base point is offset from the top start point of the element. + * Sets the anchor for locating the component, which is used to move the component + * further away from the position specified by position or offset. * * @param { Position | LocalizedPosition} value * @returns { T } @@ -22897,8 +25048,9 @@ declare class CommonMethod { * @since 11 */ /** - * Coordinate offset relative to the layout completion position. - * Setting this attribute does not affect the layout of the parent container. The position is adjusted only during drawing. + * Sets the offset of the component relative to its original position. + *
The offset attribute does not affect the layout of the parent container. + * It adjusts the component position only during drawing. * * @param { Position | Edges | LocalizedEdges } value * @returns { T } @@ -22912,7 +25064,7 @@ declare class CommonMethod { /** * If the value is true, the component is available and can respond to operations such as clicking. - * If it is set to false, click operations are not responded. + * If it is set to false, click operations are not responded. * * @param { boolean } value * @returns { T } @@ -22921,7 +25073,7 @@ declare class CommonMethod { */ /** * If the value is true, the component is available and can respond to operations such as clicking. - * If it is set to false, click operations are not responded. + * If it is set to false, click operations are not responded. * * @param { boolean } value * @returns { T } @@ -22931,7 +25083,7 @@ declare class CommonMethod { */ /** * If the value is true, the component is available and can respond to operations such as clicking. - * If it is set to false, click operations are not responded. + * If it is set to false, click operations are not responded. * * @param { boolean } value * @returns { T } @@ -22942,7 +25094,7 @@ declare class CommonMethod { */ /** * If the value is true, the component is available and can respond to operations such as clicking. - * If it is set to false, click operations are not responded. + * If it is set to false, click operations are not responded. * * @param { boolean } value * @returns { T } @@ -22991,7 +25143,8 @@ declare class CommonMethod { * @since 10 */ /** - * Specifies the alignRules of relative container + * Sets the alignment rules in the relative container. + * This API is valid only when the container is RelativeContainer. * * @param { AlignRuleOption } value * @returns { T } @@ -23004,7 +25157,11 @@ declare class CommonMethod { alignRules(value: AlignRuleOption): T; /** - * Specifies the localized alignRules of relative container + * Sets the alignment rules in the relative container. + *
This API is valid only when the container is RelativeContainer. + *
This API takes the right-to-left scripts into account, using start and end instead of + * left and right for alignment in the horizontal direction. Prioritize this API in aligning + * child components in the relative container. * * @param { LocalizedAlignRuleOptions } alignRule * @returns { T } @@ -23017,7 +25174,11 @@ declare class CommonMethod { alignRules(alignRule: LocalizedAlignRuleOptions): T; /** - * Specifies the direction and style of chain in relative container + * Sets the parameters of the chain in which the component is the head. + *
This parameter has effect only when the parent container is RelativeContainer. + *
The chain head is the first component in the chain that satisfies the chain formation rules. + * In a horizontal layout, it starts from the left (or from the right in a mirrored language + * layout). In a vertical layout, it starts from the top. * * @param { Axis } direction - indicates direction of the chain * @param { ChainStyle } style - indicates style of the chain @@ -23057,7 +25218,12 @@ declare class CommonMethod { * @since 10 */ /** - * Specifies the aspect ratio of the current component. + * Sets the aspect ratio of the component, which can be obtained using the following formula: width/height. + *
If only width and aspectRatio are set, the height is calculated using the following formula: width/aspectRatio. + *
If only height and aspectRatio are set, the width is calculated using the following formula: height x aspectRatio. + *
If width, height, and aspectRatio are all set, the explicitly set height is ignored, and the effective height is + * calculated using the following formula: width/aspectRatio. + *
This parameter takes effect only when a valid value greater than 0 is specified. * * @param { number } value * @returns { T } @@ -23124,6 +25290,9 @@ declare class CommonMethod { /** * After a listener is bound, the component can be dragged. After the drag occurs, a callback is triggered. * (To be triggered, press and hold for 170 milliseconds (ms)) + * + * NOTE:
+ * The global builder is not supported. * * @param { function } event * @returns { T } @@ -23296,6 +25465,36 @@ declare class CommonMethod { */ onDragEnd(event: (event: DragEvent, extraParams?: string) => void): T; + /** + * Enables the component as a drag-and-drop target with spring loading functionality. + * + * When a dragged object hovers over the target, it triggers a callback notification. Spring Loading is an enhanced + * feature for drag-and-drop operations, allowing users to automatically trigger view transitions during dragging + * by hovering (hover) without needing to use another hand. + * This feature is primarily designed to enhance the smoothness and efficiency of drag-and-drop operations. Below are + * some common scenarios suitable for supporting this feature: + * - In a file manager, when dragging a file and hovering over a folder, the folder is automatically opened. + * - On a desktop launcher, when dragging a file and hovering over an application icon, the application is + * automatically opened. + * + * Please note: + * 1. Registering spring-loaded or drag-and-drop events (onDragEnter/Move/Leave/Drop) on a component makes it a + * drag-and-drop target. Only one target can be the responder at the same time when user drags and hovers on, and + * child components always have higher priority. + * 2. Once a complete spring loading is triggered on a component, new spring loading detection will only occur after the + * dragged object leaves and re-enters the component's range. + * + * @param { Callback | null } callback Registers the callback for spring loading response, or + * sets it to null to disable the support for spring loading. + * @param { DragSpringLoadingConfiguration } [configuration] The initialized spring loading configuration which is + * only used when the entire spring detecting. + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + onDragSpringLoading(callback: Callback | null, configuration?: DragSpringLoadingConfiguration): T; + /** * Allowed drop uniformData type for this node. * @@ -23339,6 +25538,7 @@ declare class CommonMethod { * Enable the selectable area can be dragged. * * @param { boolean } value - true means the area can be dragged, false means the area can't be dragged. + * The default value is false. * @returns { T } property value of type T. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23465,6 +25665,17 @@ declare class CommonMethod { */ overlay(value: string | CustomBuilder | ComponentContent, options?: OverlayOptions): T; + /** + * Config toolbar for current component. + * + * @param { CustomBuilder } value + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ + toolbar(value: CustomBuilder): T; + /** * Linear Gradient * angle: Angle of Linear Gradient. The default value is 180; @@ -23472,7 +25683,7 @@ declare class CommonMethod { * colors: Color description for gradients. * repeating: repeating. The default value is false * - * @param { object } value + * @param { object } value - Linear gradient. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 @@ -23480,11 +25691,11 @@ declare class CommonMethod { /** * Linear Gradient * angle: Angle of Linear Gradient. The default value is 180; - * direction: Direction of Linear Gradient. The default value is GradientDirection.Bottom; + * direction: Direction of Linear Gradient. The default value is GradientDirection.Bottom; * colors: Color description for gradients. * repeating: repeating. The default value is false * - * @param { object } value + * @param { object } value - Linear gradient. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form @@ -23493,11 +25704,11 @@ declare class CommonMethod { /** * Linear Gradient * angle: Angle of Linear Gradient. The default value is 180; - * direction: Direction of Linear Gradient. The default value is GradientDirection.Bottom; + * direction: Direction of Linear Gradient. The default value is GradientDirection.Bottom; * colors: Color description for gradients. * repeating: repeating. The default value is false * - * @param { object } value + * @param { object } value - Linear gradient. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23507,11 +25718,11 @@ declare class CommonMethod { /** * Linear Gradient * angle: Angle of Linear Gradient. The default value is 180; - * direction: Direction of Linear Gradient. The default value is GradientDirection.Bottom; + * direction: Direction of Linear Gradient. The default value is GradientDirection.Bottom; * colors: Color description for gradients. * repeating: repeating. The default value is false * - * @param { object } value + * @param { object } value - Linear gradient. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23522,11 +25733,11 @@ declare class CommonMethod { /** * Linear Gradient * angle: Angle of Linear Gradient. The default value is 180; - * direction: Direction of Linear Gradient. The default value is GradientDirection.Bottom; + * direction: Direction of Linear Gradient. The default value is GradientDirection.Bottom; * colors: Color description for gradients. * repeating: repeating. The default value is false * - * @param { object } value + * @param { object } value - Linear gradient. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23541,8 +25752,8 @@ declare class CommonMethod { * colors: Color description for gradients. * repeating: repeating. The default value is false * - * Anonymous Object Rectification. - * @param { LinearGradientOptions } value + * @param { object } value - Linear gradient. + *
If **options** is **undefined**, the linear gradient is disabled. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23559,7 +25770,8 @@ declare class CommonMethod { * colors: Color description for gradients. * repeating: repeating. The default value is false * - * @param { Optional } options + * @param { Optional } options - Linear gradient. + *
If **options** is **undefined**, the linear gradient is disabled. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23570,64 +25782,108 @@ declare class CommonMethod { linearGradient(options: Optional): T; /** - * Angle Gradient - * center:is the center point of the angle gradient - * start:Start point of angle gradient. The default value is 0 - * end:End point of angle gradient. The default value is 0 - * number:number - * rotating:rotating. The default value is 0 - * colors:Color description for gradients - * repeating:repeating. The default value is false - * - * @param { object } value + * Creates a sweep gradient. + * + * @param { SweepGradientOptions } value - Sweep gradient, which can sweep around the specified + * center point in the 0–360 degree range. If the rotation angle exceeds the range, a monochrome + * color instead of a gradient will be drawn.
- **center**: center of the sweep gradient, that + * is, the coordinates relative to the upper left corner of the current component. + *
- **start**: start angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **end**: end angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **rotation**: rotation angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- colors: array of color stops, + * each of which consists of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. + *
**NOTE** + *
A value less than 0 is treated as **0**. A value greater than 360 is treated as **360**. + *
When **start**, **end**, or **rotation** is specified with a string, the string must be a number + * or a number followed by one of the following units: deg, rad, grad, and turn. Valid value examples + * are "90", "90deg", and "1.57rad". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Angle Gradient - * center:is the center point of the angle gradient - * start:Start point of angle gradient. The default value is 0 - * end:End point of angle gradient. The default value is 0 - * number:number - * rotating:rotating. The default value is 0 - * colors:Color description for gradients - * repeating:repeating. The default value is false + * Creates a sweep gradient. * - * @param { object } value + * @param { SweepGradientOptions } value - Sweep gradient, which can sweep around the specified + * center point in the 0–360 degree range. If the rotation angle exceeds the range, a monochrome + * color instead of a gradient will be drawn.
- **center**: center of the sweep gradient, that + * is, the coordinates relative to the upper left corner of the current component. + *
- **start**: start angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **end**: end angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **rotation**: rotation angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- colors: array of color stops, + * each of which consists of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. + *
**NOTE** + *
A value less than 0 is treated as **0**. A value greater than 360 is treated as **360**. + *
When **start**, **end**, or **rotation** is specified with a string, the string must be a number + * or a number followed by one of the following units: deg, rad, grad, and turn. Valid value examples + * are "90", "90deg", and "1.57rad". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Angle Gradient - * center:is the center point of the angle gradient - * start:Start point of angle gradient. The default value is 0 - * end:End point of angle gradient. The default value is 0 - * number:number - * rotating:rotating. The default value is 0 - * colors:Color description for gradients - * repeating:repeating. The default value is false + * Creates a sweep gradient. * - * @param { object } value + * @param { SweepGradientOptions } value - Sweep gradient, which can sweep around the specified + * center point in the 0–360 degree range. If the rotation angle exceeds the range, a monochrome + * color instead of a gradient will be drawn.
- **center**: center of the sweep gradient, that + * is, the coordinates relative to the upper left corner of the current component. + *
- **start**: start angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **end**: end angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **rotation**: rotation angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- colors: array of color stops, + * each of which consists of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. + *
**NOTE** + *
A value less than 0 is treated as **0**. A value greater than 360 is treated as **360**. + *
When **start**, **end**, or **rotation** is specified with a string, the string must be a number + * or a number followed by one of the following units: deg, rad, grad, and turn. Valid value examples + * are "90", "90deg", and "1.57rad". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form * @since 10 */ - /** - * Angle Gradient - * center:is the center point of the angle gradient - * start:Start point of angle gradient. The default value is 0 - * end:End point of angle gradient. The default value is 0 - * number:number - * rotating:rotating. The default value is 0 - * colors:Color description for gradients - * repeating:repeating. The default value is false + /** + * Creates a sweep gradient. * - * @param { object } value + * @param { SweepGradientOptions } value - Sweep gradient, which can sweep around the specified + * center point in the 0–360 degree range. If the rotation angle exceeds the range, a monochrome + * color instead of a gradient will be drawn.
- **center**: center of the sweep gradient, that + * is, the coordinates relative to the upper left corner of the current component. + *
- **start**: start angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **end**: end angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **rotation**: rotation angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- colors: array of color stops, + * each of which consists of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. + *
**NOTE** + *
A value less than 0 is treated as **0**. A value greater than 360 is treated as **360**. + *
When **start**, **end**, or **rotation** is specified with a string, the string must be a number + * or a number followed by one of the following units: deg, rad, grad, and turn. Valid value examples + * are "90", "90deg", and "1.57rad". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23636,16 +25892,27 @@ declare class CommonMethod { * @since 11 */ /** - * Angle Gradient - * center:is the center point of the angle gradient - * start:Start point of angle gradient. The default value is 0 - * end:End point of angle gradient. The default value is 0 - * number:number - * rotating:rotating. The default value is 0 - * colors:Color description for gradients - * repeating:repeating. The default value is false + * Creates a sweep gradient. * - * @param { object } value + * @param { SweepGradientOptions } value - Sweep gradient, which can sweep around the specified + * center point in the 0–360 degree range. If the rotation angle exceeds the range, a monochrome + * color instead of a gradient will be drawn.
- **center**: center of the sweep gradient, that + * is, the coordinates relative to the upper left corner of the current component. + *
- **start**: start angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **end**: end angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **rotation**: rotation angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- colors: array of color stops, + * each of which consists of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. + *
**NOTE** + *
A value less than 0 is treated as **0**. A value greater than 360 is treated as **360**. + *
When **start**, **end**, or **rotation** is specified with a string, the string must be a number + * or a number followed by one of the following units: deg, rad, grad, and turn. Valid value examples + * are "90", "90deg", and "1.57rad". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23654,16 +25921,27 @@ declare class CommonMethod { * @since 12 */ /** - * Angle Gradient - * center:is the center point of the angle gradient - * start:Start point of angle gradient. The default value is 0 - * end:End point of angle gradient. The default value is 0 - * rotating:rotating. The default value is 0 - * colors:Color description for gradients - * repeating:repeating. The default value is false + * Creates a sweep gradient. * - * Anonymous Object Rectification. - * @param { SweepGradientOptions } value + * @param { SweepGradientOptions } value - Sweep gradient, which can sweep around the specified + * center point in the 0–360 degree range. If the rotation angle exceeds the range, a monochrome + * color instead of a gradient will be drawn.
- **center**: center of the sweep gradient, that + * is, the coordinates relative to the upper left corner of the current component. + *
- **start**: start angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **end**: end angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- **rotation**: rotation angle of the sweep gradient. + *
Default value: **0**
If the angle is specified with a string, only the deg, grad, rad, + * and turn types are supported.
- colors: array of color stops, + * each of which consists of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. + *
**NOTE** + *
A value less than 0 is treated as **0**. A value greater than 360 is treated as **360**. + *
When **start**, **end**, or **rotation** is specified with a string, the string must be a number + * or a number followed by one of the following units: deg, rad, grad, and turn. Valid value examples + * are "90", "90deg", and "1.57rad". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23674,15 +25952,11 @@ declare class CommonMethod { sweepGradient(value: SweepGradientOptions): T; /** - * Angle Gradient - * center:is the center point of the angle gradient - * start:Start point of angle gradient. The default value is 0 - * end:End point of angle gradient. The default value is 0 - * rotating:rotating. The default value is 0 - * colors:Color description for gradients - * repeating:repeating. The default value is false + * Creates a sweep gradient. Compared to sweepGradient, + * this API supports the **undefined** type for the **options** parameter. * - * @param { Optional } options + * @param { Optional } options - Sweep gradient. + *
If **options** is **undefined**, the sweep gradient is disabled. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23693,38 +25967,56 @@ declare class CommonMethod { sweepGradient(options: Optional): T; /** - * Radial Gradient - * center:Center point of radial gradient - * radius:Radius of Radial Gradient. value range [0, +∞) - * colors:Color description for gradients - * repeating: Refill. The default value is false + * Creates a radial gradient. * - * @param { object } value + * @param { object } value - Radial gradient. + *
- **center**: center of the radial gradient, that is, the coordinates relative + * to the upper left corner of the current component. + *
- **radius**: radius of the radial gradient. + *
Value range: [0, +∞). + *
**NOTE** + *
A value less than 0 is treated as **0**. + *
- colors: array of color stops, each of which consists + * of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Radial Gradient - * center:Center point of radial gradient - * radius:Radius of Radial Gradient. value range [0, +∞) - * colors:Color description for gradients - * repeating: Refill. The default value is false + * Creates a radial gradient. * - * @param { object } value + * @param { object } value - Radial gradient. + *
- **center**: center of the radial gradient, that is, the coordinates relative + * to the upper left corner of the current component. + *
- **radius**: radius of the radial gradient. + *
Value range: [0, +∞). + *
**NOTE** + *
A value less than 0 is treated as **0**. + *
- colors: array of color stops, each of which consists + * of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Radial Gradient - * center:Center point of radial gradient - * radius:Radius of Radial Gradient. value range [0, +∞) - * colors:Color description for gradients - * repeating: Refill. The default value is false + * Creates a radial gradient. * - * @param { object } value + * @param { object } value - Radial gradient. + *
- **center**: center of the radial gradient, that is, the coordinates relative + * to the upper left corner of the current component. + *
- **radius**: radius of the radial gradient. + *
Value range: [0, +∞). + *
**NOTE** + *
A value less than 0 is treated as **0**. + *
- colors: array of color stops, each of which consists + * of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23732,13 +26024,19 @@ declare class CommonMethod { * @since 10 */ /** - * Radial Gradient - * center:Center point of radial gradient - * radius:Radius of Radial Gradient. value range [0, +∞) - * colors:Color description for gradients - * repeating: Refill. The default value is false + * Creates a radial gradient. * - * @param { object } value + * @param { object } value - Radial gradient. + *
- **center**: center of the radial gradient, that is, the coordinates relative + * to the upper left corner of the current component. + *
- **radius**: radius of the radial gradient. + *
Value range: [0, +∞). + *
**NOTE** + *
A value less than 0 is treated as **0**. + *
- colors: array of color stops, each of which consists + * of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23747,13 +26045,19 @@ declare class CommonMethod { * @since 11 */ /** - * Radial Gradient - * center:Center point of radial gradient - * radius:Radius of Radial Gradient. value range [0, +∞) - * colors:Color description for gradients - * repeating: Refill. The default value is false + * Creates a radial gradient. * - * @param { object } value + * @param { object } value - Radial gradient. + *
- **center**: center of the radial gradient, that is, the coordinates relative + * to the upper left corner of the current component. + *
- **radius**: radius of the radial gradient. + *
Value range: [0, +∞). + *
**NOTE** + *
A value less than 0 is treated as **0**. + *
- colors: array of color stops, each of which consists + * of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23762,14 +26066,20 @@ declare class CommonMethod { * @since 12 */ /** - * Radial Gradient - * center:Center point of radial gradient - * radius:Radius of Radial Gradient. value range [0, +∞) - * colors:Color description for gradients - * repeating: Refill. The default value is false + * Creates a radial gradient. * * Anonymous Object Rectification. - * @param { RadialGradientOptions } value + * @param { RadialGradientOptions } value - Radial gradient. + *
- **center**: center of the radial gradient, that is, the coordinates relative + * to the upper left corner of the current component. + *
- **radius**: radius of the radial gradient. + *
Value range: [0, +∞). + *
**NOTE** + *
A value less than 0 is treated as **0**. + *
- colors: array of color stops, each of which consists + * of a color and its stop position. Invalid colors are automatically skipped. + *
- **repeating**: whether the colors are repeated. + *
Default value: **false**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23780,13 +26090,11 @@ declare class CommonMethod { radialGradient(value: RadialGradientOptions): T; /** - * Radial Gradient - * center:Center point of radial gradient - * radius:Radius of Radial Gradient. value range [0, +∞) - * colors:Color description for gradients - * repeating: Refill. The default value is false + * Creates a radial gradient. Compared to radialGradient, + * this API supports the **undefined** type for the **options** parameter. * - * @param { Optional } options + * @param { Optional } options - Radial gradient. + *
If **options** is **undefined**, the radial gradient is disabled. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23797,38 +26105,26 @@ declare class CommonMethod { radialGradient(options: Optional): T; /** - * Set the motion path of the component - * path:Motion path for displacement animation, using the svg path string. - * from:Start point of the motion path. The default value is 0.0. - * to:End point of the motion path. The default value is 1.0. - * rotatable:Whether to follow the path for rotation. + * Set the motion path of the component. * - * @param { MotionPathOptions } value + * @param { MotionPathOptions } value - Motion path of the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Set the motion path of the component - * path:Motion path for displacement animation, using the svg path string. - * from:Start point of the motion path. The default value is 0.0. - * to:End point of the motion path. The default value is 1.0. - * rotatable:Whether to follow the path for rotation. + * Set the motion path of the component. * - * @param { MotionPathOptions } value + * @param { MotionPathOptions } value - Motion path of the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Set the motion path of the component - * path:Motion path for displacement animation, using the svg path string. - * from:Start point of the motion path. The default value is 0.0. - * to:End point of the motion path. The default value is 1.0. - * rotatable:Whether to follow the path for rotation. + * Set the motion path of the component. * - * @param { MotionPathOptions } value + * @param { MotionPathOptions } value - Motion path of the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23838,26 +26134,33 @@ declare class CommonMethod { motionPath(value: MotionPathOptions): T; /** - * Add a shadow effect to the current component + * Applies a shadow effect to the component. * - * @param { ShadowOptions } value + * @param { ShadowOptions } value - Shadow of the component. + *
When the value type is **ShadowOptions**, the blur radius, shadow color, + * and offset along the x-axis and y-axis can be specified. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Add a shadow effect to the current component + * Applies a shadow effect to the component. * - * @param { ShadowOptions } value + * @param { ShadowOptions } value - Shadow of the component. + *
When the value type is **ShadowOptions**, the blur radius, shadow color, + * and offset along the x-axis and y-axis can be specified. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Add a shadow effect to the current component + * Applies a shadow effect to the component. * - * @param { ShadowOptions | ShadowStyle } value + * @param { ShadowOptions | ShadowStyle } value - Shadow of the component. + *
When the value type is **ShadowOptions**, the blur radius, shadow color, + * and offset along the x-axis and y-axis can be specified. + *
When the value type is **ShadowStyle**, the shadow style can be specified. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23865,9 +26168,12 @@ declare class CommonMethod { * @since 10 */ /** - * Add a shadow effect to the current component + * Applies a shadow effect to the component. * - * @param { ShadowOptions | ShadowStyle } value + * @param { ShadowOptions | ShadowStyle } value - Shadow of the component. + *
When the value type is **ShadowOptions**, the blur radius, shadow color, + * and offset along the x-axis and y-axis can be specified. + *
When the value type is **ShadowStyle**, the shadow style can be specified. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23878,9 +26184,14 @@ declare class CommonMethod { shadow(value: ShadowOptions | ShadowStyle): T; /** - * Add a shadow effect to the current component + * Applies a shadow effect to the component. + * Compared to {@link shadow}, this API supports the **undefined** type for the **options** parameter. * - * @param { Optional } options + * @param { Optional } options - Shadow of the component. + *
When the value type is **ShadowOptions**, the blur radius, shadow color, + * and offset along the x-axis and y-axis can be specified. + *
When the value type is **ShadowStyle**, the shadow style can be specified. + *
If **options** is **undefined**, the component reverts to its original effect with no shadow. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23891,10 +26202,23 @@ declare class CommonMethod { shadow(options: Optional): T; /** - * Add a blendMode effect to the current component - * - * @param { BlendMode } value - Different hybrid modes - * @param { BlendApplyType } [type] - Different blend apply type + * Defines how the component's content (including the content of it child components) + * is blended with the existing content on the canvas (possibly offscreen canvas) below. + * + * @param { BlendMode } value - Blend mode. + *
Default value: **BlendMode.NONE**. + *
**NOTE** + *
When **BlendMode.NONE** is used, the blend effect is **BlendMode.SRC_OVER** + * by default, and **BlendApplyType** does not take effect. + * @param { BlendApplyType } [type] - Whether the blend mode is implemented offscreen. + *
Default value: **BlendApplyType.FAST**. + *
**NOTE** + *
1. **BlendApplyType.FAST**: The blend mode is not implemented offscreen. + *
2. **BlendApplyType.OFFSCREEN**: An offscreen canvas of the size of the current component + * is created. The content of the current component (including child components) is then drawn + * onto the offscreen canvas, and blended with the existing content on the canvas below using + * the specified blend mode. This approach may cause issues with screen capture for APIs such + * as linearGradientBlur12+, backgroundEffect, and brightness. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23902,10 +26226,23 @@ declare class CommonMethod { * @since 11 */ /** - * Add a blendMode effect to the current component + * Defines how the component's content (including the content of it child components) + * is blended with the existing content on the canvas (possibly offscreen canvas) below. * - * @param { BlendMode } value - Different hybrid modes - * @param { BlendApplyType } [type] - Different blend apply type + * @param { BlendMode } value - Blend mode. + *
Default value: **BlendMode.NONE**. + *
**NOTE** + *
When **BlendMode.NONE** is used, the blend effect is **BlendMode.SRC_OVER** + * by default, and **BlendApplyType** does not take effect. + * @param { BlendApplyType } [type] - Whether the blend mode is implemented offscreen. + *
Default value: **BlendApplyType.FAST**. + *
**NOTE** + *
1. **BlendApplyType.FAST**: The blend mode is not implemented offscreen. + *
2. **BlendApplyType.OFFSCREEN**: An offscreen canvas of the size of the current component + * is created. The content of the current component (including child components) is then drawn + * onto the offscreen canvas, and blended with the existing content on the canvas below using + * the specified blend mode. This approach may cause issues with screen capture for APIs such + * as linearGradientBlur12+, backgroundEffect, and brightness. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23916,10 +26253,27 @@ declare class CommonMethod { blendMode(value: BlendMode, type?: BlendApplyType): T; /** - * Add a blendMode effect to the current component + * Defines how the component's content (including the content of it child components) is + * blended with the existing content on the canvas (possibly offscreen canvas) below. + * Compared to blendMode11+, this API supports the **undefined** + * type for the **mode** parameter. * - * @param { Optional } mode - Different hybrid modes - * @param { BlendApplyType } [type] - Different blend apply type + * @param { Optional } mode - Blend mode. + *
Default value: **BlendMode.NONE**. + *
If **mode** is **undefined**, the component reverts to its original effect of not + * enabling offscreen rendering as a whole before blending with the parent component. + *
**NOTE** + *
When **BlendMode.NONE** is used, the blend effect is **BlendMode.SRC_OVER** + * by default, and **BlendApplyType** does not take effect. + * @param { BlendApplyType } [type] - Whether the blend mode is implemented offscreen. + *
Default value: **BlendApplyType.FAST**. + *
**NOTE** + *
1. **BlendApplyType.FAST**: The blend mode is not implemented offscreen. + *
2. **BlendApplyType.OFFSCREEN**: An offscreen canvas of the size of the current component + * is created. The content of the current component (including child components) is then drawn + * onto the offscreen canvas, and blended with the existing content on the canvas below using + * the specified blend mode. This approach may cause issues with screen capture for APIs such + * as linearGradientBlur12+, backgroundEffect, and brightness. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23944,9 +26298,14 @@ declare class CommonMethod { advancedBlendMode(effect: BlendMode | Blender, type?: BlendApplyType): T; /** - * Whether to crop the sub components beyond the current component range. + * Sets whether to clip the areas of child components that extend beyond this component's boundaries, + * That is, whether to perform clipping based on the edge contour of the parent container. * - * @param { boolean } value + * @param { boolean } value - Whether to perform clipping based on the edge contour of the parent container. + *
Default value: **false**. + *
**true**: Perform clipping. **false**: Do not perform clipping. + *
If this parameter is set to **true**. + *
child components exceeding the current component's bounds will not respond to bound gesture events. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23957,9 +26316,15 @@ declare class CommonMethod { clip(value: boolean): T; /** - * Whether to crop the sub components beyond the current component range. + * Sets whether to clip the areas of child components that extend beyond this component's boundaries, + * That is, whether to perform clipping based on the edge contour of the parent container. + * This API supports the **undefined** type for the **clip** parameter. * - * @param { Optional } clip + * @param { Optional } clip - Whether to perform clipping based on the edge contour of the parent container. + *
Default value: **false**. + *
If this parameter is set to **true**, + * child components exceeding the current component's bounds will not respond to bound gesture events. + *
If **clip** is set to **undefined**, clipping is disabled, and child components are not clipped. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -23973,7 +26338,13 @@ declare class CommonMethod { * When the parameter is of the Shape type, the current component is cropped according to the specified shape. * When the parameter is of the boolean type, this parameter specifies whether to crop based on the edge contour. * - * @param { boolean | CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute } value + * @param { boolean | CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute } value - Clip mode. + *
If the value is a shape attribute, the component is clipped based on the specified shape. + *
If the value is of the Boolean type, + * it specifies whether to clip the component based on the boundaries of the parent container. + *
Default value: **false**. + *
If the value is a shape attribute, the clipped area can still respond to bound gesture events. + *
If the value is of the Boolean type, the clipped area will not respond to bound gesture events. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 @@ -23982,7 +26353,13 @@ declare class CommonMethod { * When the parameter is of the Shape type, the current component is cropped according to the specified shape. * When the parameter is of the boolean type, this parameter specifies whether to crop based on the edge contour. * - * @param { boolean | CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute } value + * @param { boolean | CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute } value - Clip mode. + *
If the value is a shape attribute, the component is clipped based on the specified shape. + *
If the value is of the Boolean type, + * it specifies whether to clip the component based on the boundaries of the parent container. + *
Default value: **false**. + *
If the value is a shape attribute, the clipped area can still respond to bound gesture events. + *
If the value is of the Boolean type, the clipped area will not respond to bound gesture events. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form @@ -23992,7 +26369,13 @@ declare class CommonMethod { * When the parameter is of the Shape type, the current component is cropped according to the specified shape. * When the parameter is of the boolean type, this parameter specifies whether to crop based on the edge contour. * - * @param { boolean | CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute } value + * @param { boolean | CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute } value - Clip mode. + *
If the value is a shape attribute, the component is clipped based on the specified shape. + *
If the value is of the Boolean type, + * it specifies whether to clip the component based on the boundaries of the parent container. + *
Default value: **false**. + *
If the value is a shape attribute, the clipped area can still respond to bound gesture events. + *
If the value is of the Boolean type, the clipped area will not respond to bound gesture events. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24003,7 +26386,13 @@ declare class CommonMethod { * When the parameter is of the Shape type, the current component is cropped according to the specified shape. * When the parameter is of the boolean type, this parameter specifies whether to crop based on the edge contour. * - * @param { boolean | CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute } value + * @param { boolean | CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute } value - Clip mode. + *
If the value is a shape attribute, the component is clipped based on the specified shape. + *
If the value is of the Boolean type, + * it specifies whether to clip the component based on the boundaries of the parent container. + *
Default value: **false**. + *
If the value is a shape attribute, the clipped area can still respond to bound gesture events. + *
If the value is of the Boolean type, the clipped area will not respond to bound gesture events. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24016,9 +26405,10 @@ declare class CommonMethod { clip(value: boolean | CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute): T; /** - * The current component is cropped according to the specified shape. + * Clips this component based on the given shape. * - * @param { CircleShape | EllipseShape | PathShape | RectShape } value - indicates the shape of the clip. + * @param { CircleShape | EllipseShape | PathShape | RectShape } value - Shape that the component to be clipped into. + *
The clipped area remains responsive to bound gesture events. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24029,9 +26419,13 @@ declare class CommonMethod { clipShape(value: CircleShape | EllipseShape | PathShape | RectShape): T; /** - * The current component is cropped according to the specified shape. + * Sets whether to clip this component based on the given shape. + * Compared to {@link clipShape}, this API supports the **undefined** type for the **shape** parameter. * - * @param { Optional } shape - indicates the shape of the clip. + * @param { Optional } shape - Shape that the component to + *
be clipped into. + *
The clipped area remains responsive to bound gesture events. + *
If **shape** is set to **undefined**, the previous value is retained. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24042,9 +26436,10 @@ declare class CommonMethod { clipShape(shape: Optional): T; /** - * Sets the mask of the current component. + * Adds a mask to the component to indicate the progress. * - * @param { ProgressMask } value + * @param { ProgressMask } value - Mask to add to the component, which allows for dynamic + * adjustment of progress, maximum value, and color settings. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24054,9 +26449,12 @@ declare class CommonMethod { mask(value: ProgressMask): T; /** - * Sets the mask of the current component. + * Adds a mask to the component to indicate the progress. Compared to mask12+, + * this API supports the **undefined** type for the **mask** parameter. * - * @param { Optional } mask + * @param { Optional } mask - Mask to add to the component, which allows for dynamic + * adjustment of progress, maximum value, and color settings.
If **mask** is set to **undefined**, + * the component to revert to its original effect without the mask to indicate the progress. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24108,9 +26506,10 @@ declare class CommonMethod { mask(value: CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute | ProgressMask): T; /** - * Applies a mask of the specified shape to the current assembly. + * Adds a mask of the specified shape to the component. * - * @param { CircleShape | EllipseShape | PathShape | RectShape } value - indicates the shape of the mask. + * @param { CircleShape | EllipseShape | PathShape | RectShape } value - Mask of the specified + * shape to add to the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24121,9 +26520,11 @@ declare class CommonMethod { maskShape(value: CircleShape | EllipseShape | PathShape | RectShape): T; /** - * Applies a mask of the specified shape to the current assembly. + * Adds a mask of the specified shape to the component. Compared to maskShape12+, + * this API supports the **undefined** type for the **shape** parameter. * - * @param { Optional } shape - indicates the shape of the mask. + * @param { Optional } shape - Mask of the specified shape to + * add to the component.
If **shape** is set to **undefined**, the previous value is retained. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24245,7 +26646,7 @@ declare class CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ bindTips(message: TipsMessageType, options?: TipsOptions): T; @@ -24269,8 +26670,12 @@ declare class CommonMethod { */ /** * Popup control + *

NOTE: + *
The popup can be displayed only after the entire page is fully constructed. Therefore, to avoid incorrect + * display positions and shapes, do not set this parameter to true while the page is still being constructed. + *

* - * @param { boolean } show + * @param { boolean } show - Whether to show the popup, default is false. * @param { PopupOptions | CustomPopupOptions } popup * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -24328,7 +26733,7 @@ declare class CommonMethod { /** * Menu control * - * @param { boolean } isShow true means display menu, false means hide menu. + * @param { boolean } isShow true means display menu, false means hide menu, default is false. * @param { Array | CustomBuilder } content - Indicates the content of menu. * @param { MenuOptions } options - Indicates the options of menu. * @returns { T } @@ -24361,10 +26766,12 @@ declare class CommonMethod { * @since 10 */ /** - * ContextMenu control + * Binds a context menu to this component, which is displayed when the user long-presses or right-clicks the + * component. Only custom menu items are supported. * * @param { CustomBuilder } content - Indicates the content of context menu. - * @param { ResponseType } responseType - Indicates response type of context menu. + * @param { ResponseType } responseType - Indicates response type of context menu, Long pressing with a mouse device + * is not supported. * @param { ContextMenuOptions } options - Indicates the options of context menu. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -24375,9 +26782,15 @@ declare class CommonMethod { bindContextMenu(content: CustomBuilder, responseType: ResponseType, options?: ContextMenuOptions): T; /** - * ContextMenu control + * Binds a context menu to the component, whose visibility is subject to the isShown settings. + * + * @param { boolean } isShown - true means display content, false means hide content, default is false. + *

NOTE: + *
The menu can be displayed properly only when the related page has been constructed. If this parameter is set + * to true before the construction is complete, display issues, such as misplacement, distortion, or failure to pop + * up, may occur. To trigger dragging by long presses is not supported. + *

* - * @param { boolean } isShown - true means display content, false means hide content. * @param { CustomBuilder } content - Indicates the content of context menu. * @param { ContextMenuOptions } [options] - Indicates the options of context menu. * @returns { T } @@ -24389,7 +26802,7 @@ declare class CommonMethod { bindContextMenu(isShown: boolean, content: CustomBuilder, options?: ContextMenuOptions): T; /** - * Bind content cover + * Binds a modal page to the component, whose visibility is subject to the isShow settings. * * @param { boolean } isShow - true means display content, false means hide content. * @param { CustomBuilder } builder - the content to be displayed. @@ -24400,7 +26813,7 @@ declare class CommonMethod { * @since 10 */ /** - * Bind content cover + * Binds a modal page to the component, whose visibility is subject to the isShow settings. * * @param { boolean } isShow - true means display content, false means hide content. * @param { CustomBuilder } builder - the content to be displayed. @@ -24414,7 +26827,7 @@ declare class CommonMethod { bindContentCover(isShow: boolean, builder: CustomBuilder, type?: ModalTransition): T; /** - * Bind content cover + * Binds a modal page to the component, whose visibility is subject to the isShow settings. * * @param { boolean } isShow - true means display content, false means hide content. * @param { CustomBuilder } builder - the content to be displayed. @@ -24425,7 +26838,7 @@ declare class CommonMethod { * @since 10 */ /** - * Bind content cover + * Binds a modal page to the component, whose visibility is subject to the isShow settings. * * @param { boolean } isShow - true means display content, false means hide content. * @param { CustomBuilder } builder - the content to be displayed. @@ -24439,7 +26852,7 @@ declare class CommonMethod { bindContentCover(isShow: boolean, builder: CustomBuilder, options?: ContentCoverOptions): T; /** - * Bind sheet + * Binds a sheet page to the component, whose visibility is subject to the isShow settings. * * @param { boolean } isShow - true means display sheet, false means hide sheet. * @param { CustomBuilder } builder - the sheet to be displayed. @@ -24450,7 +26863,7 @@ declare class CommonMethod { * @since 10 */ /** - * Bind sheet + * Binds a sheet page to the component, whose visibility is subject to the isShow settings. * * @param { boolean } isShow - true means display sheet, false means hide sheet. * @param { CustomBuilder } builder - the sheet to be displayed. @@ -24556,8 +26969,9 @@ declare class CommonMethod { /** * Trigger a visible area change event. * - * @param { Array } ratios - * @param { VisibleAreaChangeCallback } event + * @param { Array } ratios - Threshold array. Each threshold represents a ratio of the component's visible area to the component's total area. + * The value range of the threshold is [0.0, 1.0]. + * @param { VisibleAreaChangeCallback } event - Callback for visible area changes of the component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24577,15 +26991,24 @@ declare class CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ onVisibleAreaApproximateChange(options: VisibleAreaEventOptions, event: VisibleAreaChangeCallback | undefined): void; /** - * Set the spherical effect of the component. + * Applies a spherical effect to the component. * - * @param { number } value - set the degree of spherical effect, value range [0, 1]. - * If the value is 0, the component keep same, else the value is 1, component are fully spherical. + * @param { number } value - Spherical degree of the component. + *
The value ranges from 0 to 1. + *

**NOTE**: + *
1. If the value is **0**, the component remains unchanged. If the value is 1, the component is completely + * spherical. Between **0** and **1**, a larger value indicates a higher spherical degree. A value less than 0 is + * handled as the value **0**. A value greater than 1 is handled as the value **1**. + *
2. The component's shadow and outer stroke do not support spherical effects. + *
3. If the value is greater than 0, the component is frozen and not updated, and its content is drawn to the + * transparent offscreen buffer. To update the component attributes, set the value to **0**. + *

+ * * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24597,8 +27020,17 @@ declare class CommonMethod { /** * Set the spherical effect of the component. * - * @param { Optional } effect - set the degree of spherical effect, value range [0, 1]. - * If the value is 0, the component keep same, else the value is 1, component are fully spherical. + * @param { Optional } effect - The value ranges from 0 to 1. + *

**NOTE**: + *
1. If the value is **0**, the component remains unchanged. If the value is 1, the component is completely + * spherical. Between **0** and **1**, a larger value indicates a higher spherical degree.A value less than 0 is + * handled as the value **0**. A value greater than 1 is handled as the value **1**. + *
2. The component's shadow and outer stroke do not support spherical effects. + *
3. If the value is greater than 0, the component is frozen and not updated, and its content is drawn to the + * transparent offscreen buffer. To update the component attributes, set the value to **0**. If **effect** is + * **undefined**, the spherical degree reverts to **0**. + *

+ * * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24608,10 +27040,14 @@ declare class CommonMethod { sphericalEffect(effect: Optional): T; /** - * Set the light up effect of the component + * Applies a light up effect to the component. * - * @param { number } value - set the degree to which the component lights up, value range [0, 1]. - * The color brightness in the component rendering content area is greater than the value and can be displayed, otherwise it will not be displayed. + * @param { number } value - Light up degree of the component. + *
The value ranges from 0 to 1. + *
If the value is **0**, the component is dark. If the value is **1**, the component is fully illuminated. + *
Between **0** and **1**, a larger value indicates higher luminance. + *
A value less than 0 is handled as the value **0**. + *
A value greater than 1 is handled as the value **1**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24621,10 +27057,16 @@ declare class CommonMethod { lightUpEffect(value: number): T; /** - * Set the light up effect of the component + * Applies a light up effect to the component. Compared to lightUpEffect, + * this API supports the **undefined** type for the **degree** parameter. * - * @param { Optional } degree - set the degree to which the component lights up, value range [0, 1]. - * The color brightness in the component rendering content area is greater than the value and can be displayed, otherwise it will not be displayed. + * @param { Optional } degree - Light up degree of the component. + *
The value ranges from 0 to 1. + *
If the value is **0**, the component is dark. If the value is **1**, the component is fully illuminated. + *
Between **0** and **1**, a larger value indicates higher luminance. + *
A value less than 0 is handled as the value **0**. + *
A value greater than 1 is handled as the value **1**. + *
If **degree** is **undefined**, the light up degree reverts to **1**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24634,9 +27076,26 @@ declare class CommonMethod { lightUpEffect(degree: Optional): T; /** - * Set the edge pixel stretch effect of the Component. + * Applies a pixel stretch effect to the component. * - * @param { PixelStretchEffectOptions } options + * @param { PixelStretchEffectOptions } options - Pixel stretch effect options. + *
The value includes the length by which a pixel is stretched toward the four edges. + *

**NOTE**: + *
1. If the length is a positive value, the original image is stretched, and the image size increases. The edge + * pixels grow by the set length toward the top, bottom, left, and right edges. + *
2. If the length is a negative value, the original image shrinks as follows, but the image size remains + * unchanged: + *
Shrinking mode: + *
(1) The image shrinks from the four edges by the absolute value of length set through **options**. + *
(2) The image is stretched back to the original size with edge pixels. + *
3. Constraints on **options**: + *
(1) The length values for the four edges must be all positive or all negative. That is, the four edges are + * stretched or shrink at the same time in the same direction. + *
(2) The length values must all be a percentage or a specific value. Combined use of the percentage and + * specific value is not allowed. + *
(3) If the input value is invalid, the image is displayed as {0, 0, 0, 0}, that is, the image is the same as + * the original image. + *

* @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24646,9 +27105,27 @@ declare class CommonMethod { pixelStretchEffect(options: PixelStretchEffectOptions): T; /** - * Set the edge pixel stretch effect of the Component. + * Applies a pixel stretch effect to the component. Compared to pixelStretchEffect, + * this API supports the **undefined** type for the **options** parameter. * - * @param { Optional } options + * @param { Optional } options - Pixel stretch effect options. + *
The value includes the length by which a pixel is stretched toward the four edges. + *

**NOTE**: + *
1. If the length is a positive value, the original image is stretched, and the image size increases. The edge + * pixels grow by the set length toward the top, bottom, left, and right edges. + *
2. If the length is a negative value, the original image shrinks as follows, but the image size remains + * unchanged: + *
Shrinking mode: + *
(1) The image shrinks from the four edges by the absolute value of length set through **options**. + *
(2) The image is stretched back to the original size with edge pixels. + *
3. Constraints on **options**: + *
(1) The length values for the four edges must be all positive or all negative. That is, the four edges are + * stretched or shrink at the same time in the same direction. + *
(2) The length values must all be a percentage or a specific value. Combined use of the percentage and + * specific value is not allowed. + *
(3) If the input value is invalid, the image is displayed as {0, 0, 0, 0}, that is, the image is the same as + * the original image. + *

* @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24683,18 +27160,18 @@ declare class CommonMethod { keyboardShortcut(value: string | FunctionKey, keys: Array, action?: () => void): T; /** - * Sets accessibilityGroup + * Sets whether to enable accessibility grouping. * - * @param { boolean } value - set group with accessibility + * @param { boolean } value - set group with accessibility, default value is false. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets accessibilityGroup + * Sets whether to enable accessibility grouping. * - * @param { boolean } value - set group with accessibility + * @param { boolean } value - set group with accessibility, default value is false. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24702,9 +27179,14 @@ declare class CommonMethod { * @since 11 */ /** - * Sets accessibilityGroup + * Sets whether to enable accessibility grouping. + * + *

NOTE + *
Whether to enable accessibility grouping. When accessibility grouping is enabled, + *
the component and all its children are treated as a single selectable unit, and the accessibility + *
service will no longer focus on the individual child components.

* - * @param { boolean } value - set group with accessibility + * @param { boolean } value - set group with accessibility, default value is false. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24715,10 +27197,21 @@ declare class CommonMethod { accessibilityGroup(value: boolean): T; /** - * Sets accessibilityGroup + * Sets whether to enable accessibility grouping. + * + *

NOTE + *
If accessibility grouping is enabled and the component does not contain a universal text attribute + *
or an accessibility text attribute, the system will concatenate the universal text attributes of + *
its child components to form a merged text for the component. If a child component lacks a universal + *
text attribute, it will be ignored in the concatenation process. + * + *
When accessibilityPreferred is set to true, the system will prioritize concatenating the accessibility + *
text attributes of the child components to form the merged text. If a child component lacks an + *
accessibility text attribute, the system will continue to concatenate its universal text attribute. + *
If a child component lacks both, it will be ignored.

* - * @param { boolean } isGroup - set group with accessibility - * @param { AccessibilityOptions } accessibilityOptions - accessibilityOptions for accessibility + * @param { boolean } isGroup - set group with accessibility, default value is false. + * @param { AccessibilityOptions } accessibilityOptions - accessibilityOptions for accessibility, default value is false. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24729,18 +27222,18 @@ declare class CommonMethod { accessibilityGroup(isGroup: boolean, accessibilityOptions: AccessibilityOptions): T; /** - * Sets accessibilityText + * Sets the accessibility text. * - * @param { string } value - set accessibility text + * @param { string } value - set accessibility text, default value is "". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets accessibilityText + * Sets the accessibility text. * - * @param { string } value - set accessibility text + * @param { string } value - set accessibility text, default value is "". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24748,9 +27241,11 @@ declare class CommonMethod { * @since 11 */ /** - * Sets accessibilityText - * - * @param { string } value - set accessibility text + * Sets the accessibility text. + * When a component does not contain a text attribute, you can use this API to set an accessibility + * text attribute, so that accessibility services can announce the specified content for the component. + * + * @param { string } value - set accessibility text, default value is "". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24809,8 +27304,13 @@ declare class CommonMethod { accessibilityScrollTriggerable(isTriggerable: boolean): T; /** - * Sets accessibilityText - * + * Sets the accessibility text. + *

NOTE + * If a component has both text content and accessibility text, only the accessibility text is announced. + *
If a component is grouped for accessibility purposes but lacks both text content and accessibility + *
text, the screen reader will concatenate text from its child components (depth-first traversal). + *
To prioritize accessibility text concatenation, set accessibilityPreferred in accessibilityGroup. + *

* @param { Resource } text - set accessibility text * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -24845,6 +27345,19 @@ declare class CommonMethod { */ onAccessibilityFocus(callback: AccessibilityFocusCallback): T; + /** + * Register accessibility action intercept callback, + * when accessibility action is to be executed,the callback will be executed + * @param { AccessibilityActionInterceptCallback } callback - accessibility action intercept callback function + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + onAccessibilityActionIntercept(callback: AccessibilityActionInterceptCallback): T; + /** * Sets accessibilityTextHint * @@ -24861,7 +27374,7 @@ declare class CommonMethod { /** * Sets accessibilityDescription * - * @param { string } value - set description of accessibility + * @param { string } value - set description of accessibility, default value is "". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24870,7 +27383,7 @@ declare class CommonMethod { /** * Sets accessibilityDescription * - * @param { string } value - set description of accessibility + * @param { string } value - set description of accessibility, default value is "". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24880,7 +27393,7 @@ declare class CommonMethod { /** * Sets accessibilityDescription * - * @param { string } value - set description of accessibility + * @param { string } value - set description of accessibility, default value is "". * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24892,7 +27405,16 @@ declare class CommonMethod { /** * Sets accessibilityDescription - * + * + * with support for resource references using Resource. + * This property provides additional context or explanation for the component, + * helping users understand the action or function it performs. + *

NOTE: + *
Reference resource of the accessibility description. You can specify further explanation + *
of the current component, for example, possible operation consequences, especially those that + *
cannot be learned from component attributes and accessibility text. If a component contains + *
both text information and the accessibility description, the text is read first and then the + *
accessibility description, when the component is selected.

* @param { Resource } description - set description of accessibility * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -24904,18 +27426,20 @@ declare class CommonMethod { accessibilityDescription(description: Resource): T; /** - * Sets accessibilityLevel + * Sets the accessibility level. + * This property determines whether the component can be recognized by accessibility services. * - * @param { string } value - set accessibility level + * @param { string } value - set accessibility level, default value is auto. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets accessibilityLevel + * Sets the accessibility level. + * This property determines whether the component can be recognized by accessibility services. * - * @param { string } value - set accessibility level + * @param { string } value - set accessibility level, default value is auto. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -24923,9 +27447,23 @@ declare class CommonMethod { * @since 11 */ /** - * Sets accessibilityLevel - * - * @param { string } value - set accessibility level + * Sets the accessibility level. + * This property determines whether the component can be recognized by accessibility services. + *

+ * Accessibility level, which is used to decide whether a component can be identified by the accessibility service. + *
The options are as follows: + *
"auto": The component's recognizability is determined by the accessibility grouping service and ArkUI. + *
"yes": The component can be recognized by accessibility services. + *
"no": The component cannot be recognized by accessibility services. + *
"no-hide-descendants": Neither the component nor its child components can be recognized by accessibility services. + * NOTE + *
When accessibilityLevel is set to "auto", the component's recognizability depends on the following factors: + *
1. The accessibility service internally determines whether the component can be recognized. + *
2. If the parent component's accessibilityGroup property has isGroup set to true, the accessibility service will + *
not focus on its child components, making them unrecognizable. + *
3. If the parent component's accessibilityLevel is set to "no-hide-descendants", the component will not be + *
recognized by accessibility services.

+ * @param { string } value - set accessibility level, default value is auto. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25039,18 +27577,22 @@ declare class CommonMethod { reuse(options: ReuseOptions): T; /** - * Sets how content is drawn within nodes duration animation + * How the final state of the component's content is rendered during its width and height animation process. * - * @param { RenderFit } fitMode - The render fit mode of content. + * @param { RenderFit } fitMode - How the final state of the component's content is rendered during. + *
its width and height animation process. + *
If **renderFit** is not set, the default value **RenderFit.TOP_LEFT** is used. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets how content is drawn within nodes duration animation + * How the final state of the component's content is rendered during its width and height animation process. * - * @param { RenderFit } fitMode - The render fit mode of content. + * @param { RenderFit } fitMode - How the final state of the component's content is rendered during. + *
its width and height animation process. + *
If **renderFit** is not set, the default value **RenderFit.TOP_LEFT** is used. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25058,9 +27600,11 @@ declare class CommonMethod { * @since 11 */ /** - * Sets how content is drawn within nodes duration animation + * How the final state of the component's content is rendered during its width and height animation process. * - * @param { RenderFit } fitMode - The render fit mode of content. + * @param { RenderFit } fitMode - How the final state of the component's content is rendered during. + *
its width and height animation process. + *
If **renderFit** is not set, the default value **RenderFit.TOP_LEFT** is used. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25071,9 +27615,13 @@ declare class CommonMethod { renderFit(fitMode: RenderFit): T; /** - * Sets how content is drawn within nodes during animation + * How the final state of the component's content is rendered during its width and height animation process. + * Compared to {@link renderFit}, this API supports the **undefined** type for the **fitMode** parameter. * - * @param { Optional } fitMode - The render fit mode of content. + * @param { Optional } fitMode - How the final state of the component's content is rendered during. + *
its width and height animation process. + *
If **fitMode** is set to **undefined**, the default value is used, + * which is equivalent to **RenderFit.TOP_LEFT**. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25096,6 +27644,8 @@ declare class CommonMethod { * Sets the attribute modifier. * * @param { AttributeModifier } modifier + * The if/else syntax is supported. + * You need a custom class to implement the AttributeModifier API. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25117,9 +27667,9 @@ declare class CommonMethod { gestureModifier(modifier: GestureModifier): T; /** - * Adds a background dynamic light up effect to the current component. + * Sets the background brightness of the component. * - * @param { BackgroundBrightnessOptions } params - params indicates BackgroundBrightnessOptions + * @param { BackgroundBrightnessOptions } params - Parameters for setting the background brightness. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -25128,9 +27678,11 @@ declare class CommonMethod { backgroundBrightness(params: BackgroundBrightnessOptions): T; /** - * Adds a background dynamic light up effect to the current component. + * Sets the background brightness of the component. Compared to backgroundBrightness12+, + * this API supports the **undefined** type for the **options** parameter. * - * @param { Optional } options - params indicates BackgroundBrightnessOptions + * @param { Optional } options - Parameters for setting the background brightness. + *
If **options** is **undefined**, the background reverts to its default state with no brightness effect. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -25160,7 +27712,7 @@ declare class CommonMethod { onGestureJudgeBegin(callback: (gestureInfo: GestureInfo, event: BaseGestureEvent) => GestureJudgeResult): T; /** - * When a gesture bound to this component will be accepted, a user-defined callback is triggered to get the result + * Binds a custom gesture recognizer judgment callback to the component. * * @param { GestureRecognizerJudgeBeginCallback } callback - A callback instance used when a gesture bound to this component will be accepted. * @returns { T } @@ -25172,10 +27724,18 @@ declare class CommonMethod { onGestureRecognizerJudgeBegin(callback: GestureRecognizerJudgeBeginCallback): T; /** - * When a gesture bound to this component will be accepted, a user-defined callback is triggered to get the result - * + * Binds a custom gesture recognizer judgment callback to the component. + * + *

NOTE: + *
For a composite component, setting exposeInnerGesture to true exposes the internal gesture recognizer of the + *
composite component in the current parameter callback. Currently, only the Tabs component is supported. + * + *
Do not set exposeInnerGesture for other components. When exposeInnerGesture is set to false, this API provides the same functionality + *
as the onGestureRecognizerJudgeBegin API. + *

* @param { GestureRecognizerJudgeBeginCallback } callback - A callback instance used when a gesture bound to this component will be accepted. * @param { boolean } exposeInnerGesture - This parameter is a flag. This flag determines whether to expose internal gestures. + * @default false * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25186,7 +27746,7 @@ declare class CommonMethod { onGestureRecognizerJudgeBegin(callback: GestureRecognizerJudgeBeginCallback, exposeInnerGesture: boolean): T; /** - * In the touch test phase, the recognizer is selected to form a parallel relationship with other recognizers on the response chain. + * Provides a callback to set the parallel relationship between built-in gestures and gestures of other components in the response chain. * * @param { ShouldBuiltInRecognizerParallelWithCallback } callback - A callback instance used when a component is doing touch test. * @returns { T } @@ -25207,9 +27767,11 @@ declare class CommonMethod { * @since 11 */ /** - * Events are monopolized by components. + * Sets whether the component exclusively handles events. + * true: The component exclusively handles events. false: The component does not exclusively handle events. * * @param { boolean } monopolize - indicate the monopoly of events + * @default false * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25231,7 +27793,8 @@ declare class CommonMethod { onTouchIntercept(callback: Callback): T; /** - * This callback is triggered when the size of this component change finished. + * This callback is triggered when the component size changes due to layout updates. + * This event is not triggered for render attribute changes caused by re-rendering. * * @param { SizeChangeCallback } event - event callback. * @returns { T } @@ -25252,9 +27815,24 @@ declare class CommonMethod { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ accessibilityFocusDrawLevel(drawLevel: FocusDrawLevel): T; + + /** + * Register one callback which will be executed when all gesture recognizers are collected done, this happens + * when user touchs down, the system do hit test process and collect gesture recognizers base on the touch + * position, after this, before handling any move events, the component can use this interface to know which + * gesture recognizers will participate in the recognition and competing with each other. + * + * @param { TouchTestDoneCallback } callback - A callback instance used when all gesture recognizers are collected. + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onTouchTestDone(callback: TouchTestDoneCallback): T; } /** @@ -25467,6 +28045,10 @@ declare type CustomBuilder = (() => any) | void; /** * Defines the OverlayOptions interface. + * + * NOTE:
+ * When both align and offset are set, the effects are combined. + * The overlay is first aligned relative to the component and then offset from its current upper left corner. * * @typedef OverlayOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -25504,6 +28086,7 @@ declare interface OverlayOptions { * Defines align type. * * @type { ?Alignment } + * @default TopStart * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -25540,6 +28123,7 @@ declare interface OverlayOptions { * Defines offset type. * * @type { ?OverlayOffset } + * @default - the overlay is in the upper left corner of the component. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -25699,26 +28283,32 @@ declare class CommonShapeMethod extends CommonMethod { constructor(); /** - * border Color + * Sets the stroke color. + * If this attribute is not set, the component does not have any stroke. + * If the value is invalid, no stroke will be drawn. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Stroke color. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * border Color + * Sets the stroke color. + * If this attribute is not set, the component does not have any stroke. + * If the value is invalid, no stroke will be drawn. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Stroke color. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * border Color + * Sets the stroke color. + * If this attribute is not set, the component does not have any stroke. + * If the value is invalid, no stroke will be drawn. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Stroke color. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25726,9 +28316,11 @@ declare class CommonShapeMethod extends CommonMethod { * @since 10 */ /** - * border Color + * Sets the stroke color. + * If this attribute is not set, the component does not have any stroke. + * If the value is invalid, no stroke will be drawn. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Stroke color. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25739,26 +28331,32 @@ declare class CommonShapeMethod extends CommonMethod { stroke(value: ResourceColor): T; /** - * Fill color. + * Sets the color of the fill area. + * An invalid value is handled as the default value. + * If this attribute and the universal attribute foregroundColor are both set, whichever is set later takes effect. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Color of the fill area. Default value: Color.Black. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Fill color. + * Sets the color of the fill area. + * An invalid value is handled as the default value. + * If this attribute and the universal attribute foregroundColor are both set, whichever is set later takes effect. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Color of the fill area. Default value: Color.Black. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Fill color. + * Sets the color of the fill area. + * An invalid value is handled as the default value. + * If this attribute and the universal attribute foregroundColor are both set, whichever is set later takes effect. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Color of the fill area. Default value: Color.Black. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25766,9 +28364,11 @@ declare class CommonShapeMethod extends CommonMethod { * @since 10 */ /** - * Fill color. + * Sets the color of the fill area. + * An invalid value is handled as the default value. + * If this attribute and the universal attribute foregroundColor are both set, whichever is set later takes effect. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Color of the fill area. Default value: Color.Black. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25779,26 +28379,35 @@ declare class CommonShapeMethod extends CommonMethod { fill(value: ResourceColor): T; /** - * Offset from the start point of the border drawing. + * Sets the offset of the start point for drawing the stroke. + * An invalid value is handled as the default value. * - * @param { number | string } value + * @param { number | string } value - Offset of the start point for drawing the stroke. + * Default value: 0 + * Default unit: vp * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Offset from the start point of the border drawing. + * Sets the offset of the start point for drawing the stroke. + * An invalid value is handled as the default value. * - * @param { number | string } value + * @param { number | string } value - Offset of the start point for drawing the stroke. + * Default value: 0 + * Default unit: vp * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Offset from the start point of the border drawing. + * Sets the offset of the start point for drawing the stroke. + * An invalid value is handled as the default value. * - * @param { number | string } value + * @param { number | string } value - Offset of the start point for drawing the stroke. + * Default value: 0 + * Default unit: vp * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25806,9 +28415,12 @@ declare class CommonShapeMethod extends CommonMethod { * @since 10 */ /** - * Offset from the start point of the border drawing. + * Sets the offset of the start point for drawing the stroke. + * An invalid value is handled as the default value. * - * @param { number | string } value + * @param { number | string } value - Offset of the start point for drawing the stroke. + * Default value: 0 + * Default unit: vp * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25819,26 +28431,26 @@ declare class CommonShapeMethod extends CommonMethod { strokeDashOffset(value: number | string): T; /** - * Path endpoint drawing style. + * Sets the cap style of the stroke. * - * @param { LineCapStyle } value + * @param { LineCapStyle } value - Cap style of the stroke. Default value: LineCapStyle.Butt * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Path endpoint drawing style. + * Sets the cap style of the stroke. * - * @param { LineCapStyle } value + * @param { LineCapStyle } value - Cap style of the stroke. Default value: LineCapStyle.Butt * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Path endpoint drawing style. + * Sets the cap style of the stroke. * - * @param { LineCapStyle } value + * @param { LineCapStyle } value - Cap style of the stroke. Default value: LineCapStyle.Butt * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25846,9 +28458,9 @@ declare class CommonShapeMethod extends CommonMethod { * @since 10 */ /** - * Path endpoint drawing style. + * Sets the cap style of the stroke. * - * @param { LineCapStyle } value + * @param { LineCapStyle } value - Cap style of the stroke. Default value: LineCapStyle.Butt * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25859,26 +28471,29 @@ declare class CommonShapeMethod extends CommonMethod { strokeLineCap(value: LineCapStyle): T; /** - * Border corner drawing style. + * Sets the join style of the stroke. + * This attribute does not work for the Circle component, which does not have corners. * - * @param { LineJoinStyle } value + * @param { LineJoinStyle } value - Join style of the stroke. Default value: LineJoinStyle.Miter * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Border corner drawing style. + * Sets the join style of the stroke. + * This attribute does not work for the Circle component, which does not have corners. * - * @param { LineJoinStyle } value + * @param { LineJoinStyle } value - Join style of the stroke. Default value: LineJoinStyle.Miter * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Border corner drawing style. + * Sets the join style of the stroke. + * This attribute does not work for the Circle component, which does not have corners. * - * @param { LineJoinStyle } value + * @param { LineJoinStyle } value - Join style of the stroke. Default value: LineJoinStyle.Miter * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25886,9 +28501,10 @@ declare class CommonShapeMethod extends CommonMethod { * @since 10 */ /** - * Border corner drawing style. + * Sets the join style of the stroke. + * This attribute does not work for the Circle component, which does not have corners. * - * @param { LineJoinStyle } value + * @param { LineJoinStyle } value - Join style of the stroke. Default value: LineJoinStyle.Miter * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25939,26 +28555,35 @@ declare class CommonShapeMethod extends CommonMethod { strokeMiterLimit(value: number | string): T; /** - * Sets the opacity of the border. + * Sets the stroke opacity. + * The value range is [0.0, 1.0]. + * A value less than 0.0 evaluates to the value 0.0. A value greater than 1.0 evaluates to the value 1.0. + * Any other value evaluates to the value 1.0. * - * @param { number | string | Resource } value + * @param { number | string | Resource } value - Stroke opacity. Default value: 1 * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Sets the opacity of the border. + * Sets the stroke opacity. + * The value range is [0.0, 1.0]. + * A value less than 0.0 evaluates to the value 0.0. A value greater than 1.0 evaluates to the value 1.0. + * Any other value evaluates to the value 1.0. * - * @param { number | string | Resource } value + * @param { number | string | Resource } value - Stroke opacity. Default value: 1 * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Sets the opacity of the border. + * Sets the stroke opacity. + * The value range is [0.0, 1.0]. + * A value less than 0.0 evaluates to the value 0.0. A value greater than 1.0 evaluates to the value 1.0. + * Any other value evaluates to the value 1.0. * - * @param { number | string | Resource } value + * @param { number | string | Resource } value - Stroke opacity. Default value: 1 * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25966,9 +28591,12 @@ declare class CommonShapeMethod extends CommonMethod { * @since 10 */ /** - * Sets the opacity of the border. + * Sets the stroke opacity. + * The value range is [0.0, 1.0]. + * A value less than 0.0 evaluates to the value 0.0. A value greater than 1.0 evaluates to the value 1.0. + * Any other value evaluates to the value 1.0. * - * @param { number | string | Resource } value + * @param { number | string | Resource } value - Stroke opacity. Default value: 1 * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -25979,26 +28607,35 @@ declare class CommonShapeMethod extends CommonMethod { strokeOpacity(value: number | string | Resource): T; /** - * fill Opacity + * Sets the opacity of the fill area. + * The value range is [0.0, 1.0]. + * A value less than 0.0 evaluates to the value 0.0. A value greater than 1.0 evaluates to the value 1.0. + * Any other value evaluates to the value 1.0. * - * @param { number | string | Resource } value + * @param { number | string | Resource } value - Opacity of the fill area. Default value: 1 * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * fill Opacity + * Sets the opacity of the fill area. + * The value range is [0.0, 1.0]. + * A value less than 0.0 evaluates to the value 0.0. A value greater than 1.0 evaluates to the value 1.0. + * Any other value evaluates to the value 1.0. * - * @param { number | string | Resource } value + * @param { number | string | Resource } value - Opacity of the fill area. Default value: 1 * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * fill Opacity + * Sets the opacity of the fill area. + * The value range is [0.0, 1.0]. + * A value less than 0.0 evaluates to the value 0.0. A value greater than 1.0 evaluates to the value 1.0. + * Any other value evaluates to the value 1.0. * - * @param { number | string | Resource } value + * @param { number | string | Resource } value - Opacity of the fill area. Default value: 1 * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -26006,9 +28643,12 @@ declare class CommonShapeMethod extends CommonMethod { * @since 10 */ /** - * fill Opacity + * Sets the opacity of the fill area. + * The value range is [0.0, 1.0]. + * A value less than 0.0 evaluates to the value 0.0. A value greater than 1.0 evaluates to the value 1.0. + * Any other value evaluates to the value 1.0. * - * @param { number | string | Resource } value + * @param { number | string | Resource } value - Opacity of the fill area. Default value: 1 * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -26019,26 +28659,41 @@ declare class CommonShapeMethod extends CommonMethod { fillOpacity(value: number | string | Resource): T; /** - * Sets the width of the dividing line. + * Sets the stroke width. + * If this attribute is of the string type, percentage values are not supported and will be treated as 1 px. * - * @param { Length } value + * @param { Length } value - Stroke width. + * The value must be greater than or equal to 0. + * Default value: 1. + * Default unit: vp. + * An invalid value is handled as the default value. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Sets the width of the dividing line. + * Sets the stroke width. + * If this attribute is of the string type, percentage values are not supported and will be treated as 1 px. * - * @param { Length } value + * @param { Length } value - Stroke width. + * The value must be greater than or equal to 0. + * Default value: 1. + * Default unit: vp. + * An invalid value is handled as the default value. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Sets the width of the dividing line. + * Sets the stroke width. + * If this attribute is of the string type, percentage values are not supported and will be treated as 1 px. * - * @param { Length } value + * @param { Length } value - Stroke width. + * The value must be greater than or equal to 0. + * Default value: 1. + * Default unit: vp. + * An invalid value is handled as the default value. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -26046,9 +28701,14 @@ declare class CommonShapeMethod extends CommonMethod { * @since 10 */ /** - * Sets the width of the dividing line. + * Sets the stroke width. + * If this attribute is of the string type, percentage values are not supported and will be treated as 1 px. * - * @param { Length } value + * @param { Length } value - Stroke width. + * The value must be greater than or equal to 0. + * Default value: 1. + * Default unit: vp. + * An invalid value is handled as the default value. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -26059,26 +28719,35 @@ declare class CommonShapeMethod extends CommonMethod { strokeWidth(value: Length): T; /** - * Indicates whether to enable anti-aliasing + * Specifies whether anti-aliasing is enabled. * - * @param { boolean } value + * @param { boolean } value - Whether anti-aliasing is enabled. + * true: Anti-aliasing is enabled. + * false: Anti-aliasing is disabled. + * Default value: true * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Indicates whether to enable anti-aliasing + * Specifies whether anti-aliasing is enabled. * - * @param { boolean } value + * @param { boolean } value - Whether anti-aliasing is enabled. + * true: Anti-aliasing is enabled. + * false: Anti-aliasing is disabled. + * Default value: true * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Indicates whether to enable anti-aliasing + * Specifies whether anti-aliasing is enabled. * - * @param { boolean } value + * @param { boolean } value - Whether anti-aliasing is enabled. + * true: Anti-aliasing is enabled. + * false: Anti-aliasing is disabled. + * Default value: true * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -26086,9 +28755,12 @@ declare class CommonShapeMethod extends CommonMethod { * @since 10 */ /** - * Indicates whether to enable anti-aliasing + * Specifies whether anti-aliasing is enabled. * - * @param { boolean } value + * @param { boolean } value - Whether anti-aliasing is enabled. + * true: Anti-aliasing is enabled. + * false: Anti-aliasing is disabled. + * Default value: true * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -26099,26 +28771,35 @@ declare class CommonShapeMethod extends CommonMethod { antiAlias(value: boolean): T; /** - * Sets the gap for the border. + * Sets stroke dashes. + * The value must be greater than or equal to 0. Invalid values are treated as the default value. * - * @param { Array } value + * @param { Array } value - Stroke dashes. + * Default value: [] + * Default unit: vp * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Sets the gap for the border. + * Sets stroke dashes. + * The value must be greater than or equal to 0. Invalid values are treated as the default value. * - * @param { Array } value + * @param { Array } value - Stroke dashes. + * Default value: [] + * Default unit: vp * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Sets the gap for the border. + * Sets stroke dashes. + * The value must be greater than or equal to 0. Invalid values are treated as the default value. * - * @param { Array } value + * @param { Array } value - Stroke dashes. + * Default value: [] + * Default unit: vp * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -26126,9 +28807,12 @@ declare class CommonShapeMethod extends CommonMethod { * @since 10 */ /** - * Sets the gap for the border. + * Sets stroke dashes. + * The value must be greater than or equal to 0. Invalid values are treated as the default value. * - * @param { Array } value + * @param { Array } value - Stroke dashes. + * Default value: [] + * Default unit: vp * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -26276,7 +28960,7 @@ declare interface LinearGradient { } /** - * Defines the pixel round property. + * Defines the direction of pixel rounding at the component level. * * @interface PixelRoundPolicy * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -26287,7 +28971,7 @@ declare interface LinearGradient { */ declare interface PixelRoundPolicy { /** - * start property. + * Rounding for alignment with the start edge. * * @type { ?PixelRoundCalcPolicy } * @default PixelRoundCalcPolicy.NO_FORCE_ROUND @@ -26300,7 +28984,7 @@ declare interface PixelRoundPolicy { start?: PixelRoundCalcPolicy; /** - * top property. + * Rounding for alignment with the top edge. * * @type { ?PixelRoundCalcPolicy } * @default PixelRoundCalcPolicy.NO_FORCE_ROUND @@ -26313,7 +28997,7 @@ declare interface PixelRoundPolicy { top?: PixelRoundCalcPolicy; /** - * end property. + * Rounding for alignment with the end edge. * * @type { ?PixelRoundCalcPolicy } * @default PixelRoundCalcPolicy.NO_FORCE_ROUND @@ -26326,7 +29010,7 @@ declare interface PixelRoundPolicy { end?: PixelRoundCalcPolicy; /** - * bottom property. + * Rounding for alignment with the bottom edge. * * @type { ?PixelRoundCalcPolicy } * @default PixelRoundCalcPolicy.NO_FORCE_ROUND @@ -26680,7 +29364,7 @@ declare interface GeometryInfo extends SizeResult { * @since 10 */ /** - * Sub component info passed from framework when layout happens. + * Provides the child component layout information. * * @interface Layoutable * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -26728,7 +29412,7 @@ declare interface Layoutable { * @since 10 */ /** - * Call this layout method in onLayout callback to assign layout info to sub component. + * Applies the specified position information to the child component. * * @param { Position } position * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -26739,7 +29423,7 @@ declare interface Layoutable { layout(position: Position): void, /** - * Call this method to get the margin of sub component. + * Obtains the margin of the child component. * * @returns { DirectionalEdgesT } the margin of sub component, unit is vp * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -26752,7 +29436,7 @@ declare interface Layoutable { /** * Call this method to get the padding of sub component. * - * @returns { DirectionalEdgesT } the padding of sub component, unit is vp + * @returns { DirectionalEdgesT } Padding of the child component, unit is vp. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -26761,7 +29445,7 @@ declare interface Layoutable { getPadding() : DirectionalEdgesT, /** - * Call this method to get the borderWidth of sub component. + * Obtains the border width of the child component. * * @returns { DirectionalEdgesT } the borderWidth of sub component, unit is vp * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -26791,7 +29475,7 @@ declare interface Layoutable { */ declare interface Measurable { /** - * Unique ID of the child component. + * Unique ID that the system assigns to the child component. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -26811,10 +29495,10 @@ declare interface Measurable { * @since 10 */ /** - * Call this measure method in onMeasure callback to supply sub component size. + * Applies the size constraint to the child component. * * @param { ConstraintSizeOptions } constraint - * @returns { MeasureResult } + * @returns { MeasureResult } Provides the measurement result of the component. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -26823,9 +29507,9 @@ declare interface Measurable { measure(constraint: ConstraintSizeOptions) : MeasureResult, /** - * Call this method to get the margin of sub component. + * Obtains the margin of the child component. * - * @returns { DirectionalEdgesT } the margin of sub component, unit is vp + * @returns { DirectionalEdgesT } Margin of the child component, unit is vp. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -26834,7 +29518,7 @@ declare interface Measurable { getMargin() : DirectionalEdgesT, /** - * Call this method to get the padding of sub component. + * Obtains the padding of the child component. * * @returns { DirectionalEdgesT } the padding of sub component, unit is vp * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -26845,9 +29529,9 @@ declare interface Measurable { getPadding() : DirectionalEdgesT, /** - * Call this method to get the borderWidth of sub component. + * Obtains the border width of the child component. * - * @returns { DirectionalEdgesT } the borderWidth of sub component, unit is vp + * @returns { DirectionalEdgesT } Border width of the child component, unit is vp. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -26865,7 +29549,7 @@ declare interface Measurable { * @since 10 */ /** - * Sub component SizeResult info. + * Provides the component size information. * * @interface SizeResult * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -26883,7 +29567,7 @@ declare interface SizeResult { * @since 10 */ /** - * Width obtained from the measurement result. + * Width obtained from the measurement result. Unit: vp. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -26902,7 +29586,7 @@ declare interface SizeResult { * @since 10 */ /** - * Height obtained from the measurement result. + * Height obtained from the measurement result. Unit: vp. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -26923,7 +29607,7 @@ declare interface SizeResult { * @since 10 */ /** - * Sub component MeasureResult info. + * Provides the measurement result of the component. * * @extends SizeResult * @interface MeasureResult @@ -27117,7 +29801,8 @@ declare type PromptActionDialogController = import('../api/@ohos.promptAction'). */ declare class CustomComponent extends BaseCustomComponent { /** - * aboutToReuse Method + * Invoked when a reusable custom component is re-added to the node tree + * from the reuse cache to receive construction parameters of the component. * * @param { object } params - Custom component init params. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27125,7 +29810,8 @@ declare class CustomComponent extends BaseCustomComponent { * @since 10 */ /** - * aboutToReuse Method + * Invoked when a reusable custom component is re-added to the node tree + * from the reuse cache to receive construction parameters of the component. * * @param { object } params - Custom component init params. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27174,8 +29860,8 @@ declare class CustomComponent extends BaseCustomComponent { */ declare class CustomComponentV2 extends BaseCustomComponent { /** - * aboutToReuse Method for @ComponentV2, it is executed when fetching instance of custom component from RecyclePool. - * It is different from the @Reusable in CustomComponent, there is no param parameter in this callback. + * Invoked when a reusable custom component managed by state management V2 + * is taken from the reuse pool and reinserted into the node tree. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -27238,37 +29924,41 @@ declare class BaseCustomComponent extends CommonAttribute { build(): void; /** - * aboutToAppear Method - * - * The aboutToAppear function is executed after a new instance of the custom component is created, before its build() function is executed. - * + * Invoked after a new instance of the custom component is created + * and before its build() function is executed. You can change state variables in aboutToAppear. + * The change will take effect when you execute the build() function next time. + * The aboutToAppear lifecycle callback of a custom component with a custom layout + * is invoked during the layout process. * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * aboutToAppear Method - * - * The aboutToAppear function is executed after a new instance of the custom component is created, before its build() function is executed. - * + * Invoked after a new instance of the custom component is created + * and before its build() function is executed. You can change state variables in aboutToAppear. + * The change will take effect when you execute the build() function next time. + * The aboutToAppear lifecycle callback of a custom component with a custom layout + * is invoked during the layout process. * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * aboutToAppear Method - * - * The aboutToAppear function is executed after a new instance of the custom component is created, before its build() function is executed. - * + * Invoked after a new instance of the custom component is created + * and before its build() function is executed. You can change state variables in aboutToAppear. + * The change will take effect when you execute the build() function next time. + * The aboutToAppear lifecycle callback of a custom component with a custom layout + * is invoked during the layout process. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form * @since 10 */ /** - * aboutToAppear Method - * - * The aboutToAppear function is executed after a new instance of the custom component is created, before its build() function is executed. - * + * Invoked after a new instance of the custom component is created + * and before its build() function is executed. You can change state variables in aboutToAppear. + * The change will take effect when you execute the build() function next time. + * The aboutToAppear lifecycle callback of a custom component with a custom layout + * is invoked during the layout process. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -27276,10 +29966,11 @@ declare class BaseCustomComponent extends CommonAttribute { * @since 11 */ /** - * aboutToAppear Method and it is migrated from class CustomComponent. - * - * The aboutToAppear function is executed after a new instance of the custom component is created, before its build() function is executed. - * + * Invoked after a new instance of the custom component is created + * and before its build() function is executed. You can change state variables in aboutToAppear. + * The change will take effect when you execute the build() function next time. + * The aboutToAppear lifecycle callback of a custom component with a custom layout + * is invoked during the layout process. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -27289,37 +29980,33 @@ declare class BaseCustomComponent extends CommonAttribute { aboutToAppear?(): void; /** - * aboutToDisappear Method - * - * The aboutToDisappear function executes before a custom component is destroyed. - * + * Invoked when this component is about to disappear. + * Do not change state variables in the aboutToDisappear function as doing this can cause unexpected errors. + * For example, the modification of the @Link decorated variable may cause unstable application running. * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * aboutToDisappear Method - * - * The aboutToDisappear function executes before a custom component is destroyed. - * + * Invoked when this component is about to disappear. + * Do not change state variables in the aboutToDisappear function as doing this can cause unexpected errors. + * For example, the modification of the @Link decorated variable may cause unstable application running. * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * aboutToDisappear Method - * - * The aboutToDisappear function executes before a custom component is destroyed. - * + * Invoked when this component is about to disappear. + * Do not change state variables in the aboutToDisappear function as doing this can cause unexpected errors. + * For example, the modification of the @Link decorated variable may cause unstable application running. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form * @since 10 */ /** - * aboutToDisappear Method - * - * The aboutToDisappear function executes before a custom component is destroyed. - * + * Invoked when this component is about to disappear. + * Do not change state variables in the aboutToDisappear function as doing this can cause unexpected errors. + * For example, the modification of the @Link decorated variable may cause unstable application running. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -27327,10 +30014,9 @@ declare class BaseCustomComponent extends CommonAttribute { * @since 11 */ /** - * aboutToDisappear Method and it is migrated from class CustomComponent. - * - * The aboutToDisappear function executes before a custom component is destroyed. - * + * Invoked when this component is about to disappear. + * Do not change state variables in the aboutToDisappear function as doing this can cause unexpected errors. + * For example, the modification of the @Link decorated variable may cause unstable application running. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -27453,26 +30139,26 @@ declare class BaseCustomComponent extends CommonAttribute { onMeasureSize?(selfLayoutInfo: GeometryInfo, children: Array, constraint: ConstraintSizeOptions): SizeResult; /** - * onPageShow Method - * - * The page is triggered once each time it is displayed, including scenarios such as the routing process and the application entering the foreground + * Invoked each time the page is displayed, for example, during page redirection. + * When the application is switched to the foreground. + * It works only for the custom components decorated by **@Entry**. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * onPageShow Method - * - * The page is triggered once each time it is displayed, including scenarios such as the routing process and the application entering the foreground + * Invoked each time the page is displayed, for example, during page redirection. + * When the application is switched to the foreground. + * It works only for the custom components decorated by **@Entry**. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * onPageShow Method - * - * The page is triggered once each time it is displayed, including scenarios such as the routing process and the application entering the foreground + * Invoked each time the page is displayed, for example, during page redirection. + * When the application is switched to the foreground. + * It works only for the custom components decorated by **@Entry**. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -27480,9 +30166,9 @@ declare class BaseCustomComponent extends CommonAttribute { * @since 11 */ /** - * onPageShow Method and it is migrated from class CustomComponent. - * - * The page is triggered once each time it is displayed, including scenarios such as the routing process and the application entering the foreground + * Invoked each time the page is displayed, for example, during page redirection. + * When the application is switched to the foreground. + * It works only for the custom components decorated by **@Entry**. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -27492,26 +30178,26 @@ declare class BaseCustomComponent extends CommonAttribute { onPageShow?(): void; /** - * onPageHide Method - * - * It is triggered once each time the page is hidden, including scenarios such as the routing process and the application entering the background + * Invoked each time the page is hidden, for example, during page redirection. + * When the application is switched to the background. + * It works only for the custom components decorated by **@Entry**. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * onPageHide Method - * - * It is triggered once each time the page is hidden, including scenarios such as the routing process and the application entering the background + * Invoked each time the page is hidden, for example, during page redirection. + * When the application is switched to the background. + * It works only for the custom components decorated by **@Entry**. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * onPageHide Method - * - * It is triggered once each time the page is hidden, including scenarios such as the routing process and the application entering the background + * Invoked each time the page is hidden, for example, during page redirection. + * When the application is switched to the background. + * It works only for the custom components decorated by **@Entry**. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -27519,9 +30205,9 @@ declare class BaseCustomComponent extends CommonAttribute { * @since 11 */ /** - * onPageHide Method and it is migrated from class CustomComponent. - * - * It is triggered once each time the page is hidden, including scenarios such as the routing process and the application entering the background + * Invoked each time the page is hidden, for example, during page redirection. + * When the application is switched to the background. + * It works only for the custom components decorated by **@Entry**. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -27601,7 +30287,10 @@ declare class BaseCustomComponent extends CommonAttribute { /** * onBackPress Method * - * Triggered when the user clicks the back button + * Invoked when the user clicks the Back button. + * It works only for the custom components decorated by @Entry. + * The value **true** means that the page executes its own return logic. + * And **false** (default) means that the default return logic is used. * * @returns { void | boolean } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27610,7 +30299,10 @@ declare class BaseCustomComponent extends CommonAttribute { /** * onBackPress Method * - * Triggered when the user clicks the back button + * Invoked when the user clicks the Back button. + * It works only for the custom components decorated by @Entry. + * The value **true** means that the page executes its own return logic. + * And **false** (default) means that the default return logic is used. * * @returns { void | boolean } true means that the page itself processes the return logic. * false means that the default return logic is used. @@ -27622,7 +30314,10 @@ declare class BaseCustomComponent extends CommonAttribute { /** * onBackPress Method * - * Triggered when the user clicks the back button + * Invoked when the user clicks the Back button. + * It works only for the custom components decorated by @Entry. + * The value **true** means that the page executes its own return logic. + * And **false** (default) means that the default return logic is used. * * @returns { void | boolean } true means that the page itself processes the return logic. * false means that the default return logic is used. @@ -27633,9 +30328,10 @@ declare class BaseCustomComponent extends CommonAttribute { * @since 11 */ /** - * onBackPress Method and it is migrated from class CustomComponent. - * - * Triggered when the user clicks the back button + * Invoked when the user clicks the Back button. + * It works only for the custom components decorated by @Entry. + * The value **true** means that the page executes its own return logic. + * And **false** (default) means that the default return logic is used. * * @returns { void | boolean } true means that the page itself processes the return logic. * false means that the default return logic is used. @@ -27712,6 +30408,9 @@ declare class BaseCustomComponent extends CommonAttribute { /** * Get uniqueId of the custom component. + * This unique ID is assigned by the system to each component. + * If this API is called before the component's corresponding node is created or after it has been destroyed, an + * invalid unique ID, which is -1, will be returned. * * @returns { number } - The uniqueId of the custom component. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27721,6 +30420,9 @@ declare class BaseCustomComponent extends CommonAttribute { */ /** * Get uniqueId of the custom component and it is migrated from class CustomComponent. + * This unique ID is assigned by the system to each component. + * If this API is called before the component's corresponding node is created or after it has been destroyed, an + * invalid unique ID, which is -1, will be returned. * * @returns { number } - The uniqueId of the custom component. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27731,7 +30433,7 @@ declare class BaseCustomComponent extends CommonAttribute { getUniqueId(): number; /** - * Queries the navigation destination information. + * Queries the **NavDestination** information of this custom component. * * @returns { NavDestinationInfo | undefined } The navigation destination information, or undefined if it is not available. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27739,7 +30441,7 @@ declare class BaseCustomComponent extends CommonAttribute { * @since 11 */ /** - * Queries the navigation destination information. + * Queries the **NavDestination** information of this custom component. * * @returns { NavDestinationInfo | undefined } The navigation destination information, or undefined if it is not available. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27748,7 +30450,7 @@ declare class BaseCustomComponent extends CommonAttribute { * @since 12 */ /** - * Queries the navigation destination information and it is migrated from class CustomComponent. + * Queries the **NavDestination** information of this custom component. * * @returns { NavDestinationInfo | undefined } The navigation destination information, or undefined if it is not available. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27759,7 +30461,8 @@ declare class BaseCustomComponent extends CommonAttribute { queryNavDestinationInfo(): NavDestinationInfo | undefined; /** - * Queries the navigation destination information. + * Queries the information about the nearest **NavDestination** component + * in the navigation stack for a custom component. * * @param { Optional } [isInner] * @returns { NavDestinationInfo | undefined } The navigation destination information, or undefined if it is not available. @@ -27771,7 +30474,7 @@ declare class BaseCustomComponent extends CommonAttribute { queryNavDestinationInfo(isInner: Optional): NavDestinationInfo | undefined; /** - * Query the navigation information of the current custom component. + * Queries the **Navigation** information of this custom component. * * @returns { NavigationInfo | undefined } The navigation information, or undefined if it is not available * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27780,7 +30483,7 @@ declare class BaseCustomComponent extends CommonAttribute { * @since 12 */ /** - * Query the navigation information of the current custom component and it is migrated from class CustomComponent. + * Queries the **Navigation** information of this custom component. * * @returns { NavigationInfo | undefined } The navigation information, or undefined if it is not available * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27791,7 +30494,7 @@ declare class BaseCustomComponent extends CommonAttribute { queryNavigationInfo(): NavigationInfo | undefined; /** - * Query the router page information of the current custom component. + * Obtains a **RouterPageInfo** instance. * * @returns { RouterPageInfo | undefined } The router page information, or undefined if it is not available. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27800,7 +30503,7 @@ declare class BaseCustomComponent extends CommonAttribute { * @since 12 */ /** - * Query the router page information of the current custom component and it is migrated from class CustomComponent. + * Obtains a **RouterPageInfo** instance. * * @returns { RouterPageInfo | undefined } The router page information, or undefined if it is not available. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27850,7 +30553,7 @@ declare class BaseCustomComponent extends CommonAttribute { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onNewParam?(param: ESObject): void; } @@ -27901,7 +30604,7 @@ declare class View { * @since 10 */ /** - * Rect info. + * Describe the position, width, and height of a component. * * @interface RectResult * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27918,7 +30621,7 @@ declare interface RectResult { * @since 10 */ /** - * x:Horizontal coordinate relative to the component. + * Horizontal coordinate. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27936,7 +30639,7 @@ declare interface RectResult { * @since 10 */ /** - * y:Vertical axis coordinate relative to the component. + * Vertical coordinate. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27954,7 +30657,7 @@ declare interface RectResult { * @since 10 */ /** - * Get the width of the current textRect. + * Content width. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -27972,7 +30675,7 @@ declare interface RectResult { * @since 10 */ /** - * Get the height of the current textRect. + * Content height. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -28102,6 +30805,15 @@ declare abstract class TextContentControllerBase { /** * Get the index and relative position of the CaretOffset. * + *

NOTE: + *
If this API is called when the caret position is updated in the current frame, it will not take effect. + *
For the Search component, the returned position information is the offset of the first character + * relative to the search icon in the component. + *
If no text is entered in the Search component, + * the return value contains the position information relative to the component. + *
The location information in the return value is the location of the caret relative to the editable component. + *

+ * * @returns { CaretOffset } index and relative position of the CaretOffset. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28121,7 +30833,15 @@ declare abstract class TextContentControllerBase { /** * Get the start and end positions of the text content. * - * @returns { RectResult } Text content rect. + *

NOTE: + *
If no text is entered, the return value contains the position information, but the size is 0. + *
The position information is the offset of the first character relative to the editable area. + *
For the Search component, the returned position information is the offset of the first character + * relative to the search icon in the component. + *
If there is input, the width in the return value is the fixed width of the editable area. + *

+ * + * @returns { RectResult } Text content rect.The unit of the return value is pixel. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -28139,7 +30859,8 @@ declare abstract class TextContentControllerBase { */ /** * Get the lines number of the text content. - * + * The getTextContentLineCount type is used to obtain the number of lines of the edited text. + * * @returns { number } Text content line count * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28188,7 +30909,7 @@ declare abstract class TextContentControllerBase { * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ clearPreviewText(): void; @@ -28200,7 +30921,7 @@ declare abstract class TextContentControllerBase { * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi * @atomicservice - * @since 18 + * @since 19 */ getText(range?: TextRange): string; } @@ -28267,9 +30988,10 @@ declare enum ContentClipMode { */ declare class ScrollableCommonMethod extends CommonMethod { /** - * Scrollbar status. + * Sets the scrollbar state. * - * @param { BarState } barState - Scrollbar status. + * @param { BarState } barState - Scrollbar state.
Default value: BarState.Auto for the List, Grid, + * and Scroll components and BarState.Off for the WaterFlow component * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28279,9 +31001,11 @@ declare class ScrollableCommonMethod extends CommonMethod { scrollBar(barState: BarState): T; /** - * Color of the scrollbar. + * Sets the scrollbar color. * - * @param { Color | number | string } color - Color of the scrollbar. + * @param { Color | number | string } color - Scrollbar color.
Default value: '\#182431' (40% opacity) + *
A number value indicates a HEX color in RGB or ARGB format, + * for example, 0xffffff. A string value indicates a color in RGB or ARGB format, for example, '#ffffff'. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28291,9 +31015,12 @@ declare class ScrollableCommonMethod extends CommonMethod { scrollBarColor(color: Color | number | string): T; /** - * Width of the scrollbar. + * Sets the scrollbar width. * - * @param { number | string } value - Width of the scrollbar. + * @param { number | string } value - Scrollbar width.
Default value: 4 + *
Unit: vp + *
If this parameter is set to a value less than or equal to 0, the default value is used. + * The value 0 means not to show the scrollbar. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28303,10 +31030,26 @@ declare class ScrollableCommonMethod extends CommonMethod { scrollBarWidth(value: number | string): T; /** - * Edge scrolling effect. + * Margin of the scrollbar. + * + * @param { ScrollBarMargin } margin - Margin of the scrollbar. + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + scrollBarMargin(margin: ScrollBarMargin): T; + + /** + * Sets the effect used when the scroll boundary is reached. * - * @param { EdgeEffect } edgeEffect - edge scrolling effect. - * @param { EdgeEffectOptions } options - edge scrolling effect options. + * @param { EdgeEffect } edgeEffect - Effect used when the scroll boundary is reached. The spring and shadow effects are supported. + *
Default value: EdgeEffect.None for the Grid, Scroll, and WaterFlow components and EdgeEffect.Spring for the List component + * @param { EdgeEffectOptions } options - Whether to enable the scroll effect when the component content is smaller than the component itself. + * The value { alwaysEnabled: true } means to enable the scroll effect, and { alwaysEnabled: false } means the opposite. + *
Default value:
{ alwaysEnabled: false } for the List, Grid, and WaterFlow components, + * and { alwaysEnabled: true } for the Scroll component * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28329,9 +31072,9 @@ declare class ScrollableCommonMethod extends CommonMethod { fadingEdge(enabled: Optional, options?: FadingEdgeOptions): T; /** - * Nested scrolling options. + * Sets the nested scrolling options. * - * @param { NestedScrollOptions } value - options for nested scrolling. + * @param { NestedScrollOptions } value - Nested scrolling options. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28341,9 +31084,9 @@ declare class ScrollableCommonMethod extends CommonMethod { nestedScroll(value: NestedScrollOptions): T; /** - * Whether to support scroll gestures by finger or mouse. + * Sets whether to support scroll gestures. * - * @param { boolean } value - Whether to support scroll gestures by finger or mouse. + * @param { boolean } value - Whether to support scroll gestures.
Default value: true * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28353,9 +31096,9 @@ declare class ScrollableCommonMethod extends CommonMethod { enableScrollInteraction(value: boolean): T; /** - * Friction coefficient. + * Sets the friction coefficient. * - * @param { number | Resource } value - friction coefficient. + * @param { number | Resource } value - Friction coefficient. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28365,7 +31108,7 @@ declare class ScrollableCommonMethod extends CommonMethod { friction(value: number | Resource): T; /** - * Called when the scrollable scrolls. + * Triggered when the scrollable component scrolls. * * @param { function } event - callback of scrollable, * scrollOffset is offset per frame scrolling, ScrollState is current scroll state. @@ -28392,10 +31135,9 @@ declare class ScrollableCommonMethod extends CommonMethod { onWillScroll(handler: Optional): T; /** - * Called when the scrollable did scroll. + * Triggered when the scrollable component scrolls. * - * @param { OnScrollCallback } handler - callback of scrollable, - * scrollOffset is offset this frame did scroll, scrollState is current scroll state. + * @param { OnScrollCallback } handler - Callback triggered when the scrollable component scrolls. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28406,7 +31148,7 @@ declare class ScrollableCommonMethod extends CommonMethod { onDidScroll(handler: OnScrollCallback): T; /** - * Called when the scrollable reaches the start position. + * Triggered when the scrollable component reaches the start position. * * @param { function } event - Callback function, triggered when the scrollable reaches the start position. * @returns { T } @@ -28418,7 +31160,7 @@ declare class ScrollableCommonMethod extends CommonMethod { onReachStart(event: () => void): T; /** - * Called when the scrollable reaches the end position. + * Triggered when the scrollable component reaches the end position. * * @param { function } event - Callback function, triggered when the scrollable reaches the end position. * @returns { T } @@ -28430,7 +31172,7 @@ declare class ScrollableCommonMethod extends CommonMethod { onReachEnd(event: () => void): T; /** - * Called when the scrollable starts scrolling. + * Triggered when the scrollable component starts scrolling initiated by the user's finger dragging the component or its scrollbar. * * @param { function } event - Callback function, triggered when the scrollable starts scrolling. * @returns { T } @@ -28442,7 +31184,7 @@ declare class ScrollableCommonMethod extends CommonMethod { onScrollStart(event: () => void): T; /** - * Called when the scrollable stops scrolling. + * Triggered when scrolling stops after the user's finger leaves the screen. * * @param { function } event - Callback function, triggered when the scrollable stops scrolling. * @returns { T } @@ -28454,10 +31196,12 @@ declare class ScrollableCommonMethod extends CommonMethod { onScrollStop(event: () => void): T; /** - * Limit the max speed when fling. + * Sets the maximum initial velocity at the start of the fling animation that occurs after gesture-driven scrolling ends. * - * @param { number } speedLimit - Max fling speed, the minimum value is 0, the maximum value is not limited. - * The unit is vp/s. + * @param { number } speedLimit - Maximum initial velocity at the start of the fling animation. + *
Default value: 9000 + *
Unit: vp/s + *
Value range: (0, +∞). If this parameter is set to a value less than or equal to 0, the default value is used. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28467,7 +31211,7 @@ declare class ScrollableCommonMethod extends CommonMethod { flingSpeedLimit(speedLimit: number): T; /** - * Clip the content of the scrollable container, excluding background. + * Sets the content clipping area for this scrollable component. * * @param { ContentClipMode | RectShape } clip - A value from enum ContentClipMode or a customized clip rect. * @returns { T } @@ -28491,10 +31235,10 @@ declare class ScrollableCommonMethod extends CommonMethod { digitalCrownSensitivity(sensitivity: Optional): T; /** - * Controls whether the scrollable scrolls back to top when status bar is clicked. + * Sets whether to enable the back-to-top feature for a scrollable component when the status bar is touched. * - * @param { boolean } backToTop - whether the scrollable scrolls back to top when status bar is clicked. - * The default value is false. + * @param { boolean } backToTop - Whether to enable the back-to-top feature for a scrollable component when the status bar is touched. + *
Default value: false * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -28574,7 +31318,7 @@ declare type OnMoveHandler = (from: number, to: number) => void; * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ declare interface ItemDragEventHandler { /** @@ -28584,7 +31328,7 @@ declare interface ItemDragEventHandler { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ onLongPress?: Callback; @@ -28595,7 +31339,7 @@ declare interface ItemDragEventHandler { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ onDragStart?: Callback; @@ -28606,7 +31350,7 @@ declare interface ItemDragEventHandler { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ onMoveThrough?: OnMoveHandler; @@ -28617,7 +31361,7 @@ declare interface ItemDragEventHandler { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ onDrop?: Callback; } @@ -28632,7 +31376,10 @@ declare interface ItemDragEventHandler { */ declare class DynamicNode { /** - * Set the move action. + * Invoked when data is moved during drag and drop sorting. + * This callback is only applicable in a List component. + * where each ForEach iteration generates a ListItem component. + * It allows you to define custom drag actions and handle various drag events. * * @param { Optional } handler * @returns { T } @@ -28644,7 +31391,10 @@ declare class DynamicNode { onMove(handler: Optional): T; /** - * Set the move action. + * Invoked when data is moved during drag and drop sorting. + * This callback is only applicable in a List component. + * where each ForEach iteration generates a ListItem component. + * It allows you to define custom drag actions and handle various drag events. * * @param { Optional } handler * @param { ItemDragEventHandler } eventHandler @@ -28652,7 +31402,7 @@ declare class DynamicNode { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ onMove(handler: Optional, eventHandler: ItemDragEventHandler): T; } @@ -28839,10 +31589,10 @@ declare class ChildrenMainSize { declare interface BackgroundBrightnessOptions { /** - * Rate represents the rate at which lightUpDegree - * decreases with increasing pixel brightness. + * Brightness change rate. A higher rate means that brightness decreases more quickly. + * If **rate** is set to **0**, **lightUpDegree** will not take effect, meaning no brightening effect will occur. * - * @type { number } -The default value is 0.0, value range: (0.0, +∞). + * @type { number } - The default value is 0.0, value range: (0.0, +∞). * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 @@ -28850,11 +31600,9 @@ declare interface BackgroundBrightnessOptions { rate: number; /** - * LightUpDegree represents the degree of brightness - * of the rgb value changes when its brightness - * is 0. + * Light up degree. A greater degree indicates a greater increase in brightness. * - * @type { number } -The default value is 0.0, value range: [-1.0, 1.0]. + * @type { number } - The default value is 0.0, value range: [-1.0, 1.0]. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 @@ -28960,7 +31708,9 @@ declare interface LightSource { } /** - * Defining wrapBuilder function. + * wrapBuilder is a template function that returns a WrappedBuilder object. + * wrapBuilder only accepts a global @Builder decorated function as its argument. + * Of the WrappedBuilder object it returns, the builder attribute method can be used only inside the struct. * @param { function } builder * @returns { WrappedBuilder } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -28968,7 +31718,9 @@ declare interface LightSource { * @since 11 */ /** - * Defining wrapBuilder function. + * wrapBuilder is a template function that returns a WrappedBuilder object. + * wrapBuilder only accepts a global @Builder decorated function as its argument. + * Of the WrappedBuilder object it returns, the builder attribute method can be used only inside the struct. * @param { function } builder * @returns { WrappedBuilder } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -28979,13 +31731,13 @@ declare interface LightSource { declare function wrapBuilder(builder: (...args: Args) => void): WrappedBuilder; /** - * Defines the WrappedBuilder class. + * The WrappedBuilder object is also a template class. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Defines the WrappedBuilder class. + * The WrappedBuilder object is also a template class. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -28993,12 +31745,14 @@ declare function wrapBuilder(builder: (...args: Args) => */ declare class WrappedBuilder { /** + * global @Builder decorated function. * @type { function } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** + * global @Builder decorated function. * @type { function } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -29110,7 +31864,7 @@ declare interface KeyframeAnimateParam { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ expectedFrameRateRange?: ExpectedFrameRateRange; } @@ -29245,6 +31999,18 @@ declare type HoverCallback = (isHover: boolean, event: HoverEvent) => void */ declare type AccessibilityCallback = (isHover: boolean, event: AccessibilityHoverEvent) => void +/** + * Defines the callback type used in accessibility hover transparent event. + * + * @typedef { function } AccessibilityTransparentCallback + * @param { TouchEvent } event - The value of event contains information about original accessibility hover event. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare type AccessibilityTransparentCallback = (event: TouchEvent) => void + /** * Defines the options about VisibleAreaEvent. * @@ -29416,7 +32182,7 @@ declare interface UICommonEvent { setOnMouse(callback: Callback | undefined): void; /** - * Set or reset the callback which is triggered when the size of component changed. + * Sets the callback for the onSizeChange event. * * @param { SizeChangeCallback | undefined } callback - The callback will be triggered when the size of component changed. If set undefined will reset the target callback. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -29427,7 +32193,7 @@ declare interface UICommonEvent { setOnSizeChange(callback: SizeChangeCallback | undefined): void; /** - * Set or reset the callback which is triggered when the visibleArea of component changed. + * Sets the onVisibleAreaChange callback that limits the callback interval. * * @param { VisibleAreaEventOptions } options - The options for the visibility event. * @param { VisibleAreaChangeCallback | undefined } event - The callback will be triggered when the visibleArea of component changed and get close to any number in ratios defined by options. @@ -29440,6 +32206,76 @@ declare interface UICommonEvent { setOnVisibleAreaApproximateChange(options: VisibleAreaEventOptions, event: VisibleAreaChangeCallback | undefined): void; } +/** + * Defines a UIScrollableCommonEvent which is used to set event to target component. + * + * @extends UICommonEvent + * @interface UIScrollableCommonEvent + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ +declare interface UIScrollableCommonEvent extends UICommonEvent { + /** + * Set or reset the callback which is triggered when the scrolling reaches the start position. + * + * @param { Callback | undefined } callback - callback function, triggered when the + * scrolling reaches the start position. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnReachStart(callback: Callback | undefined): void; + + /** + * Set or reset the callback which is triggered when the scrolling reaches the end position. + * + * @param { Callback | undefined } callback - callback function, triggered when the + * scrolling reaches the end position. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnReachEnd(callback: Callback | undefined): void; + + /** + * Set or reset the callback which is triggered when the scrolling started. + * + * @param { Callback | undefined } callback - callback function, triggered when the scrolling started. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnScrollStart(callback: Callback | undefined): void; + + /** + * Set or reset the callback which is triggered when the scrolling stoped. + * + * @param { Callback | undefined } callback - callback function, triggered when the scrolling stoped. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnScrollStop(callback: Callback | undefined): void; + + /** + * Set or reset the callback which is triggered when scrolling begin each frame. + * + * @param { OnScrollFrameBeginCallback | undefined } callback - callback function, triggered when the + * scrolling begin each frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnScrollFrameBegin(callback: OnScrollFrameBeginCallback | undefined): void; +} + /** * Defines a UIGestureEvent which is used to set different gestures to target component. * @@ -29464,7 +32300,7 @@ declare interface UIGestureEvent { addGesture(gesture: GestureHandler, priority?: GesturePriority, mask?: GestureMask): void; /** - * Add a parallel gesture bound to the component. + * Adds a gesture that can be recognized at once by the component and its child component. * * @param { GestureHandler } gesture - gesture indicates the gesture bound to a component. * @param { GestureMask } mask - mask indicates the gesture's GestureMask value. @@ -29476,7 +32312,7 @@ declare interface UIGestureEvent { addParallelGesture(gesture: GestureHandler, mask?: GestureMask): void; /** - * Remove the gesture that is bound to the component and marked as tag. + * Remove a gesture from a component that has been bound with a specific tag through a modifier. * * @param { string } tag - tag indicates the gesture's tag. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -29624,7 +32460,7 @@ declare interface FocusMovement { */ declare enum KeyboardAvoidMode { /** - * Defines avoid keyboard when keyboard shows. + * Automatically avoids the soft keyboard and compresses the height when reaching the maximum limit. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -29634,7 +32470,7 @@ declare enum KeyboardAvoidMode { DEFAULT = 0, /** - * Defines not avoid keyboard when keyboard shows. + * Does not avoid the soft keyboard. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -29683,7 +32519,7 @@ declare enum HoverModeAreaType { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare interface DateRange { /** @@ -29693,7 +32529,7 @@ declare interface DateRange { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ start?: Date; @@ -29704,7 +32540,7 @@ declare interface DateRange { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ end?: Date; } diff --git a/api/@internal/component/ets/counter.d.ts b/api/@internal/component/ets/counter.d.ts index 0331a32e75de4ef8ff57b97a4e82836c4f0c8a38..9fb6cf9cc9fa2759b59f405ff41a7123d2f7594c 100644 --- a/api/@internal/component/ets/counter.d.ts +++ b/api/@internal/component/ets/counter.d.ts @@ -165,6 +165,7 @@ declare class CounterAttribute extends CommonMethod { */ /** * Listen to the event that the value increases. + * Anonymous Object Rectification. * * @param { VoidCallback } event * @returns { CounterAttribute } @@ -172,7 +173,7 @@ declare class CounterAttribute extends CommonMethod { * @crossplatform * @form * @atomicservice - * @since 14 + * @since 18 */ onInc(event: VoidCallback): CounterAttribute; @@ -216,6 +217,7 @@ declare class CounterAttribute extends CommonMethod { */ /** * Listens to the number decrease event. + * Anonymous Object Rectification. * * @param { VoidCallback } event * @returns { CounterAttribute } @@ -223,7 +225,7 @@ declare class CounterAttribute extends CommonMethod { * @crossplatform * @form * @atomicservice - * @since 14 + * @since 18 */ onDec(event: VoidCallback): CounterAttribute; diff --git a/api/@internal/component/ets/custom_dialog_controller.d.ts b/api/@internal/component/ets/custom_dialog_controller.d.ts index d0a5591578d84d418678b5ffb3589bbfa79b3f5a..8002913639470deb5b3d08ab8cd462b682851a63 100644 --- a/api/@internal/component/ets/custom_dialog_controller.d.ts +++ b/api/@internal/component/ets/custom_dialog_controller.d.ts @@ -474,7 +474,7 @@ declare interface CustomDialogControllerOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; @@ -485,7 +485,7 @@ declare interface CustomDialogControllerOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; @@ -532,7 +532,7 @@ declare interface CustomDialogControllerOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onDidAppear?: Callback; @@ -543,7 +543,7 @@ declare interface CustomDialogControllerOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onDidDisappear?: Callback; @@ -554,7 +554,7 @@ declare interface CustomDialogControllerOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onWillAppear?: Callback; @@ -565,7 +565,7 @@ declare interface CustomDialogControllerOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onWillDisappear?: Callback; @@ -635,7 +635,7 @@ declare interface CustomDialogControllerOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ focusable?: boolean; } @@ -673,6 +673,16 @@ declare interface DismissDialogAction { reason: DismissReason; } +/** + * Import the CommonState type from promptAction. + * + * @typedef { import('../api/@ohos.promptAction').promptAction.CommonState } PromptActionCommonState + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ +declare type PromptActionCommonState = import('../api/@ohos.promptAction').promptAction.CommonState; + /** * Use the CustomDialogController class to display the custom pop-up window. * @@ -766,4 +776,15 @@ declare class CustomDialogController { * @since 11 */ close(); + + /** + * Get the state of the custom pop-up window. + * + * @returns { PromptActionCommonState } return the state of dialog. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + getState(): PromptActionCommonState; } diff --git a/api/@internal/component/ets/date_picker.d.ts b/api/@internal/component/ets/date_picker.d.ts index b6de0092d21dcddb303c211af8854ca2bfc0254e..1790b42ae75432b91bd0f882f01146d13ee73ee9 100644 --- a/api/@internal/component/ets/date_picker.d.ts +++ b/api/@internal/component/ets/date_picker.d.ts @@ -59,7 +59,12 @@ declare interface DatePickerResult { * @since 10 */ /** - * Application year + * Year of the selected date. + * + *

NOTE: + *
Value range: depends on start and end. + * If start and end are not set, the default range is [1970, 2100]. + *

* * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -85,7 +90,12 @@ declare interface DatePickerResult { * @since 10 */ /** - * Application month + * Month index of the selected date. + * The index is zero-based. 0 indicates January, and 11 indicates December. + * + *

NOTE: + *
Value range: depends on start and end. If start and end are not set, the default range is [0, 11]. + *

* * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -111,7 +121,11 @@ declare interface DatePickerResult { * @since 10 */ /** - * Application day + * Day of the selected date. + * + *

NOTE: + *
Value range: depends on start and end. If start and end are not set, the default range is [1, 31]. + *

* * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -133,7 +147,7 @@ declare interface DatePickerResult { */ declare enum DatePickerMode { /** - * Defines a mode that displays the date in months, days of month, and years. + * The date displays three columns: year, month, and day. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -143,7 +157,7 @@ declare enum DatePickerMode { DATE = 0, /** - * Defines a mode that displays the date in months and years. + * The date displays two columns: year and month. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -154,6 +168,9 @@ declare enum DatePickerMode { /** * Defines a mode that displays the date in months and days of the month. + * In this mode, if the month changes from December to January, + * the year does not increment by one; if the month changes from January to December, + * the year does not decrement by one. The year remains fixed at the currently set value. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -179,7 +196,7 @@ declare enum DatePickerMode { * @since 10 */ /** - * Defines the options of DatePicker. + * Parameters of the date picker. * * @interface DatePickerOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -204,9 +221,10 @@ declare interface DatePickerOptions { * @since 10 */ /** - * Specifies the start date of the date selector. + * Start date of the picker. * * @type { ?Date } + * @default Date('1970-1-1') * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -230,9 +248,10 @@ declare interface DatePickerOptions { * @since 10 */ /** - * Specifies the end date for the date selector. + * End date of the picker. * * @type { ?Date } + * @default Date('2100-12-31') * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -256,9 +275,10 @@ declare interface DatePickerOptions { * @since 10 */ /** - * Specifies the date selector check date or time selector check time. + * Date of the selected item. * * @type { ?Date } + * @default current system date * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -267,9 +287,16 @@ declare interface DatePickerOptions { selected?: Date; /** - * Defines the mode of the date picker. + * Date columns to be displayed. + * + *

NOTE: + *
In DatePickerDialog, with showTime=true, this parameter has no effect and the default three columns for year, + *
month, and day are displayed. + *

* * @type { ?DatePickerMode } + * @default DatePickerMode.DATE - which means to display three columns: year, month, and day. + *
Decimal values are rounded off. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -294,7 +321,7 @@ declare interface DatePickerOptions { * @since 10 */ /** - * Defines the DatePicker Component. + * Creates a date picker in the given date range. * * @interface DatePickerInterface * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -321,9 +348,9 @@ interface DatePickerInterface { * @since 10 */ /** - * Defines the DatePicker constructor. + * Parameters of the date picker. * - * @param { DatePickerOptions } options + * @param { DatePickerOptions } options - Parameters of the date picker. * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -376,9 +403,12 @@ declare class DatePickerAttribute extends CommonMethod { * @since 10 */ /** - * Date selector: true: displays the lunar calendar. false: The lunar calendar is not displayed. + * Specifies whether to display the lunar calendar. * - * @param { boolean } value + * @param { boolean } value - Whether to display the lunar calendar. + *
- true: Display the lunar calendar. + *
- false: Do not display the lunar. + * @default false * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -388,9 +418,13 @@ declare class DatePickerAttribute extends CommonMethod { lunar(value: boolean): DatePickerAttribute; /** - * Date selector: true: displays the lunar calendar. false: The lunar calendar is not displayed. + * Specifies whether to display the lunar calendar. + * This API supports the undefined type for the isLunar parameter. * - * @param { Optional } isLunar + * @param { Optional } isLunar - Whether to display the lunar calendar. + *
- true: Display the lunar calendar. + *
- false: Do not display the lunar. + * @default false * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -409,9 +443,10 @@ declare class DatePickerAttribute extends CommonMethod { * @since 10 */ /** - * Sets the text style of disappearing items + * Sets the text style for the top and bottom items. * - * @param { PickerTextStyle } value - indicates the text style of disappearing items. + * @param { PickerTextStyle } value - Font color, font size, and font weight of the top and bottom items. + * @default {
color: '#ff182431',
font: {
size: '14fp',
weight: FontWeight.Regular
}
} * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -421,9 +456,11 @@ declare class DatePickerAttribute extends CommonMethod { disappearTextStyle(value: PickerTextStyle): DatePickerAttribute; /** - * Sets the text style of disappearing items + * Sets the text style for the top and bottom items. + * This API supports the undefined type for the style parameter. * - * @param { Optional } style - indicates the text style of disappearing items. + * @param { Optional } style - Font color, font size, and font weight of the top and bottom items. + * @default {
color: '#ff182431',
font: {
size: '14fp',
weight: FontWeight.Regular
}
} * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -442,9 +479,11 @@ declare class DatePickerAttribute extends CommonMethod { * @since 10 */ /** - * Sets the text style of normal items + * Sets the text style for all items except the top, bottom, and selected items. * - * @param { PickerTextStyle } value - indicates the text style of normal items. + * @param { PickerTextStyle } value - Font color, font size, and font weight of all items except the top, + *
bottom, and selected items. + * @default {
color: '#ff182431',
font: {
size: '16fp',
weight: FontWeight.Regular
}
} * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -454,9 +493,12 @@ declare class DatePickerAttribute extends CommonMethod { textStyle(value: PickerTextStyle): DatePickerAttribute; /** - * Sets the text style of normal items + * Sets the text style for all items except the top, bottom, and selected items. + * This API supports the undefined type for the style parameter. * - * @param { Optional } style - indicates the text style of normal items. + * @param { Optional } style - Font color, font size, and font weight of all items except the top, + *
bottom, and selected items. + * @default {
color: '#ff182431',
font: {
size: '16fp',
weight: FontWeight.Regular
}
} * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -475,9 +517,10 @@ declare class DatePickerAttribute extends CommonMethod { * @since 10 */ /** - * Sets the text style of selected items + * Sets the text style for the selected item. * - * @param { PickerTextStyle } value - indicates the text style of selected items. + * @param { PickerTextStyle } value - Font color, font size, and font weight of the selected item. + * @default {
color: '#ff007dff',
font: {
size: '20vp',
weight: FontWeight.Medium
}
} * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -487,9 +530,11 @@ declare class DatePickerAttribute extends CommonMethod { selectedTextStyle(value: PickerTextStyle): DatePickerAttribute; /** - * Sets the text style of selected items + * Sets the text style for the selected item. + * this API supports the undefined type for the style parameter. * - * @param { Optional } style - indicates the text style of selected items. + * @param { Optional } style - Font color, font size, and font weight of the selected item. + * @default {
color: '#ff007dff',
font: {
size: '20vp',
weight: FontWeight.Medium
}
} * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -499,7 +544,7 @@ declare class DatePickerAttribute extends CommonMethod { selectedTextStyle(style: Optional): DatePickerAttribute; /** - * This event is triggered when a DatePicker date or time is selected. + * Triggered when a date is selected. * * @param { function } callback * @returns { DatePickerAttribute } @@ -530,7 +575,8 @@ declare class DatePickerAttribute extends CommonMethod { * @since 11 */ /** - * This event is triggered when a DatePicker date or time is selected. + * Triggered when a date is selected. + * Anonymous Object Rectification. * * @param { Callback } callback * @returns { DatePickerAttribute } @@ -542,7 +588,7 @@ declare class DatePickerAttribute extends CommonMethod { onDateChange(callback: Callback): DatePickerAttribute; /** - * This event is triggered when a DatePicker date or time is selected. + * Triggered when a date is selected. * * @param { Optional> } callback * @returns { DatePickerAttribute } @@ -554,9 +600,10 @@ declare class DatePickerAttribute extends CommonMethod { onDateChange(callback: Optional>): DatePickerAttribute; /** - * If the attribute is set, the crown rotation sensitivity can be changed. + * Sets the sensitivity to the digital crown rotation. * - * @param { Optional } sensitivity + * @param { Optional } sensitivity - Sensitivity to the digital crown rotation. + * @default CrownSensitivity.MEDIUM * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -566,19 +613,34 @@ declare class DatePickerAttribute extends CommonMethod { digitalCrownSensitivity(sensitivity: Optional): DatePickerAttribute; /** - * Enable or disable haptic feedback. + * Sets whether to enable haptic feedback. * - * @param { Optional } enable - Default value is true, set false to disable haptic feedback. + * @param { Optional } enable - Whether to enable haptic feedback. + *
true (default): Haptic feedback is enabled. + *
false: Haptic feedback is disabled. + * @default true * @returns { DatePickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 18 */ enableHapticFeedback(enable: Optional): DatePickerAttribute; + + /** + * Can scroll loop if true is set, on the contrary it can not. + * + * @param { Optional } isLoop + * @returns { DatePickerAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + canLoop(isLoop: Optional): DatePickerAttribute; } /** - * Provide an interface for the lunar switch style of DatePickerDialog + * Defines the style of the lunar calendar switch in the DatePickerDialog component. * * @interface LunarSwitchStyle * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -588,9 +650,10 @@ declare class DatePickerAttribute extends CommonMethod { */ declare interface LunarSwitchStyle { /** - * Define the selected color of lunar switch. + * Background color of the switch when it is on. * * @type { ?ResourceColor } + * @default $r('sys.color.ohos_id_color_text_primary_actived') * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -599,9 +662,10 @@ declare interface LunarSwitchStyle { selectedColor?: ResourceColor; /** - * Define the unselected color of lunar switch. + * Border color of the switch when it is off. * * @type { ?ResourceColor } + * @default $r('sys.color.ohos_id_color_switch_outline_off') * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -610,9 +674,10 @@ declare interface LunarSwitchStyle { unselectedColor?: ResourceColor; /** - * Define the stroke color of lunar switch. + * Color of the icon inside the switch. * * @type { ?ResourceColor } + * @default Color.White * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -639,7 +704,7 @@ declare interface LunarSwitchStyle { * @since 10 */ /** - * Defines the DatePickerDialogOptions for Data Picker Dialog. + * Parameters of the date picker dialog box. * * @extends DatePickerOptions * @interface DatePickerDialogOptions @@ -665,9 +730,11 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 10 */ /** - * Date selector: true: displays the lunar calendar. false: The lunar calendar is not displayed. + * Whether to display the lunar calendar. + * The value true means to display the lunar calendar, and false means the opposite. * * @type { ?boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -678,15 +745,17 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { /** * Whether to show the switch to display the lunar. * - * @type { ?boolean } value - indicates whether to show the switch to display the lunar + * @type { ?boolean } value - indicates whether to show the switch to display the lunar. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Whether to show the switch to display the lunar. - * - * @type { ?boolean } value - indicates whether to show the switch to display the lunar + * Whether to display the lunar calendar switch. + * The value true means to display the lunar calendar switch, and false means the opposite. + * + * @type { ?boolean } value - indicates whether to show the switch to display the lunar. + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -695,9 +764,11 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { lunarSwitch?: boolean; /** - * Describes the lunar switch color. + * Style of the lunar calendar switch. * * @type { ?LunarSwitchStyle } + * @default { selectedColor: $r('sys.color.ohos_id_color_text_primary_actived'), + *
unselectedColor: $r('sys.color.ohos_id_color_switch_outline_off'), strokeColor: Color.White }. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -714,9 +785,16 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 10 */ /** - * Indicates whether to show the time selector. + * Whether to display the time item. + * The value true means to display the time item, and false means the opposite. * + *

NOTE: + *
With showTime=true, the mode parameter has no effect and the default three columns for year, + *
month, and day are displayed. + *

+ * * @type { ?boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -733,9 +811,15 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 10 */ /** - * Indicates whether to display the 24-hour clock. + * Whether to display time in 24-hour format. + * The value true means to display time in 24-hour format, and false means the opposite. + * + *

NOTE: + *
When the display time is in 12-hour format, the AM/PM zone does not change depending on the hour portion. + *

* * @type { ?boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -752,9 +836,10 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 10 */ /** - * Text style of disappearing items + * Font color, font size, and font width for the top and bottom items. * * @type { ?PickerTextStyle } + * @default {
color: '#ff182431',
font: {
size: '14fp',
weight: FontWeight.Regular
}
} * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -771,9 +856,10 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 10 */ /** - * Text style of normal items + * Font color, font size, and font width of all items except the top, bottom, and selected items. * * @type { ?PickerTextStyle } + * @default {
color: '#ff182431',
font: {
size: '16fp',
weight: FontWeight.Regular
}
} * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -784,6 +870,12 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { /** * Style of accept button. * + *

NOTE: + *
In the acceptButtonStyle and cancelButtonStyle configurations, + *
only one primary field can be set to true at most. + *
If both the primary fields are set to true, neither will take effect. + *

+ * * @type { ?PickerDialogButtonStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -795,6 +887,12 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { /** * Style of cancel button. * + *

NOTE: + *
In the acceptButtonStyle and cancelButtonStyle configurations, + *
only one primary field can be set to true at most. + *
If both the primary fields are set to true, neither will take effect. + *

+ * * @type { ?PickerDialogButtonStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -804,7 +902,7 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { cancelButtonStyle?: PickerDialogButtonStyle; /** - * Text style of selected items + * Font color, font size, and font width of the selected item. * * @type { ?PickerTextStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -812,9 +910,10 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 10 */ /** - * Text style of selected items + * Font color, font size, and font width of the selected item. * * @type { ?PickerTextStyle } + * @default {
color: '#ff007dff',
font: {
size: '20vp',
weight: FontWeight.Medium
} * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -831,9 +930,11 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 10 */ /** - * Mask Region of dialog. The size cannot exceed the main window. + * Mask area of the dialog box. + * Events outside the mask area are transparently transmitted, and events within the mask area are not. * * @type { ?Rectangle } + * @default { x: 0, y: 0, width: '100%', height: '100%' } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -850,9 +951,10 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 10 */ /** - * Defines the dialog alignment of the screen. + * Alignment mode of the dialog box in the vertical direction. * * @type { ?DialogAlignment } + * @default DialogAlignment.Default * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -869,9 +971,10 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 10 */ /** - * Defines the dialog offset. + * Offset of the dialog box based on the alignment settings. * * @type { ?Offset } + * @default { dx: 0 , dy: 0 } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -880,7 +983,7 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { offset?: Offset; /** - * Called when the OK button in the dialog is clicked. + * Callback invoked when the OK button in the dialog box is clicked. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -915,7 +1018,8 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 11 */ /** - * Called when the Cancel button in the dialog is clicked. + * Callback invoked when the Cancel button in the dialog box is clicked. + * Anonymous Object Rectification. * * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -926,7 +1030,7 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { onCancel?: VoidCallback; /** - * This event is triggered when a DatePicker date or time is selected in dialog. + * Callback invoked when the selected item in the picker changes. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -954,7 +1058,13 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 11 */ /** - * Called when the OK button in the dialog is clicked. + * Callback invoked when the OK button in the dialog box is clicked. + * + *

NOTE: + *
When showTime is set to true, the hour and minute in the value returned by + *
the callback are the hour and minute selected in the picker. Otherwise, + *
the hour and minute are the hour and minute of the system time. + *

* * @type { ?Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -973,7 +1083,7 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 10 */ /** - * This event is triggered when a DatePicker date or time is selected in dialog. + * Callback invoked when the selected item in the picker changes. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -982,7 +1092,14 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 11 */ /** - * This event is triggered when a DatePicker date or time is selected in dialog. + * Callback invoked when the selected item in the picker changes. + * Anonymous Object Rectification. + * + *

NOTE: + *
When showTime is set to true, the hour and minute in the value returned by + *
the callback are the hour and minute selected in the picker. Otherwise, + *
the hour and minute are the hour and minute of the system time. + *

* * @type { ?Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1002,7 +1119,7 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 11 */ /** - * Defines the datePickerDialog's background color + * Backplane color of the dialog box. * * @type { ?ResourceColor } * @default Color.Transparent @@ -1023,7 +1140,7 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 11 */ /** - * Defines the datePickerDialog's background blur Style + * Background blur style of the dialog box. * * @type { ?BlurStyle } * @default BlurStyle.COMPONENT_ULTRA_THICK @@ -1035,29 +1152,29 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { backgroundBlurStyle?: BlurStyle; /** - * Defines the datePickerDialog's background blur style with options + * Options for customizing the background blur style. * * @type { ?BackgroundBlurStyleOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; /** - * Defines the datePickerDialog's background effect with options + * Options for customizing the background effect. * * @type { ?BackgroundEffectOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; /** - * Callback function when the dialog appears. + * Event callback when the dialog box appears. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1066,7 +1183,18 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 12 */ /** - * Callback function when the dialog appears. + * Event callback when the dialog box appears. + * + *

NOTE: + *
1. The normal timing sequence is as follows: onWillAppear > onDidAppear > + * (onDateAccept/onCancel/onDateChange) > onWillDisappear > onDidDisappear. + *
2. You can set the callback event for changing the dialog box display effect in onDidAppear. + * The settings take effect next time the dialog box appears. + *
3. If the user closes the dialog box immediately after it appears, + * onWillDisappear is invoked before onDidAppear. + *
4. If the dialog box is closed before its entrance animation is finished, + * this callback is not invoked. + *

* * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1086,7 +1214,12 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 12 */ /** - * Callback function when the dialog disappears. + * Event callback when the dialog box disappears. + * + *

NOTE: + *
1. The normal timing sequence is as follows: onWillAppear > onDidAppear > + *
(onDateAccept/onCancel/onDateChange) > onWillDisappear > onDidDisappear. + *

* * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1106,7 +1239,14 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 12 */ /** - * Callback function before the dialog openAnimation starts. + * Event callback when the dialog box is about to appear. + * + *

NOTE: + *
1. The normal timing sequence is as follows: onWillAppear > onDidAppear > + * (onDateAccept/onCancel/onDateChange) > onWillDisappear > onDidDisappear. + *
2. You can set the callback event for changing the dialog box display effect in onWillAppear. + * The settings take effect next time the dialog box appears. + *

* * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1126,7 +1266,14 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 12 */ /** - * Callback function before the dialog closeAnimation starts. + * Event callback when the dialog box is about to disappear. + * + *

NOTE: + *
1. The normal timing sequence is as follows: onWillAppear > onDidAppear > + * (onDateAccept/onCancel/onDateChange) > onWillDisappear > onDidDisappear. + *
2. If the user closes the dialog box immediately after it appears, + * onWillDisappear is invoked before onDidAppear. + *

* * @type { ?VoidCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1137,7 +1284,9 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { onWillDisappear?: VoidCallback; /** - * Defines the dialog's shadow. + * Shadow of the dialog box. + * Default value on 2-in-1 devices: ShadowStyle.OUTER_FLOATING_MD + * when the dialog box is focused and ShadowStyle.OUTER_FLOATING_SM * * @type { ?(ShadowOptions | ShadowStyle) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1148,9 +1297,16 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { shadow?: ShadowOptions | ShadowStyle; /** - * Set time format + * Whether to display a leading zero for the hours and minutes. + * + *

NOTE: + *
Currently only the configuration of the hour and minute parameters is supported. + *

* * @type { ?DateTimeOptions } + * @default hour: In the 24-hour format, it defaults to 2-digit, which means a leading zero is used; + *
In the 12-hour format, it defaults to numeric, which means no leading zero is used. + *
minute: defaults to 2-digit, which means a leading zero is used. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1159,10 +1315,10 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { dateTimeOptions?: DateTimeOptions; /** - * Defines whether to respond to the hover mode. + * Whether to enable the hover mode. * * @type { ?boolean } - * @default false + * @default false - meaning not to enable the hover mode. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1171,7 +1327,7 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { enableHoverMode?: boolean; /** - * Defines the dialog's display area in hover mode. + * Display area of the dialog box in hover mode. * * @type { ?HoverModeAreaType } * @default HoverModeAreaType.BOTTOM_SCREEN @@ -1183,7 +1339,8 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { hoverModeArea?: HoverModeAreaType; /** - * Enable or disable haptic feedback. + * Whether to enable haptic feedback. + * The value true means to enable haptic feedback, and false means the opposite * * @type { ?boolean } * @default true @@ -1192,6 +1349,18 @@ declare interface DatePickerDialogOptions extends DatePickerOptions { * @since 18 */ enableHapticFeedback?: boolean; + + /** + * Can scroll loop if true is set, on the contrary it can not. + * + * @type { ?boolean } + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + canLoop?: boolean; } /** @@ -1232,9 +1401,9 @@ declare class DatePickerDialog { * @since 10 */ /** - * Invoking method display. + * Shows a date picker dialog box. * - * @param { DatePickerDialogOptions } options + * @param { DatePickerDialogOptions } options - Parameters of the date picker dialog box. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice diff --git a/api/@internal/component/ets/effect_component.d.ts b/api/@internal/component/ets/effect_component.d.ts index daf057f9b93cae4abaac37721287a07ada7c1a65..a8bb405d41494195212128469ca86a40ed79fb9e 100644 --- a/api/@internal/component/ets/effect_component.d.ts +++ b/api/@internal/component/ets/effect_component.d.ts @@ -47,7 +47,19 @@ interface EffectComponentInterface { * @systemapi * @since 10 */ -declare class EffectComponentAttribute extends CommonMethod {} +declare class EffectComponentAttribute extends CommonMethod { + /** + * Use snapshot when Effect Component have no visual effect. + * + * @param { boolean } enable + * @returns { EffectComponentAttribute } + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 19 + */ + alwaysSnapshot(enable: boolean): EffectComponentAttribute +} /** * Defines Effect Component. diff --git a/api/@internal/component/ets/ellipse.d.ts b/api/@internal/component/ets/ellipse.d.ts index f2c2fde0182f9e1ac85da1bb66c9935e7e474a09..678b4141462ef6629f151fd8d9d1f0530e336c32 100644 --- a/api/@internal/component/ets/ellipse.d.ts +++ b/api/@internal/component/ets/ellipse.d.ts @@ -63,7 +63,28 @@ interface EllipseOptions { * @atomicservice * @since 11 */ - width?: string | number; + /** + * Set width. + * Anonymous Object Rectification. + * + * @type { ?(string | number) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Set width. + * + * @type { ?Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + width?: Length; /** * Set height. @@ -99,7 +120,28 @@ interface EllipseOptions { * @atomicservice * @since 11 */ - height?: string | number; + /** + * Set height. + * Anonymous Object Rectification. + * + * @type { ?(string | number) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Set height. + * + * @type { ?Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + height?: Length; } /** @@ -177,6 +219,7 @@ interface EllipseInterface { */ /** * use new function to set the value. + * Anonymous Object Rectification. * * @param { EllipseOptions } [options] - ellipse options * @returns { EllipseAttribute } @@ -228,6 +271,7 @@ interface EllipseInterface { */ /** * Set the value. + * Anonymous Object Rectification. * * @param { EllipseOptions } [options] - ellipse options * @returns { EllipseAttribute } diff --git a/api/@internal/component/ets/enums.d.ts b/api/@internal/component/ets/enums.d.ts index 33f2c2cd3ed48bcba1cf0d5ad514a93c13101beb..bd91cb929bb4cb680350eb06f3644f2406f12af8 100644 --- a/api/@internal/component/ets/enums.d.ts +++ b/api/@internal/component/ets/enums.d.ts @@ -1278,6 +1278,46 @@ declare enum TouchType { * @since 11 */ Cancel, + + /** + * Triggers when the touch event turns to hover enter in accessibility processing. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + HOVER_ENTER = 9, + + /** + * Triggers when the touch event turns to hover move in accessibility processing. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + HOVER_MOVE = 10, + + /** + * Triggers when the touch event turns to hover exit in accessibility processing. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + HOVER_EXIT = 11, + + /** + * Triggers when the touch event turns to hover cancel in accessibility processing. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + HOVER_CANCEL = 12, } /** @@ -3690,6 +3730,109 @@ declare enum Alignment { BottomEnd, } +/** + * Alignment enumeration description. + * + * @enum { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +declare enum LocalizedAlignment { + /** + * Top Start. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + TOP_START = "top_start", + /** + * The top is centered horizontally. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + TOP = "top", + /** + * Top tail end. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + TOP_END = "top_end", + /** + * The starting end is centered longitudinally. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + START = "start", + /** + * Center horizontal and vertical. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + CENTER = "center", + /** + * The tail end is centered longitudinally. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + END = "end", + /** + * Bottom starting end. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + BOTTOM_START = "bottom_start", + /** + * The bottom is centered horizontally. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + BOTTOM = "bottom", + /** + * Bottom end. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + BOTTOM_END = "bottom_end", +} + /** * TransitionType enumeration description. * @@ -5618,20 +5761,20 @@ declare enum ImageSize { Auto, /** - * Default value. Keep the aspect ratio to zoom in or out the image so that both sides of the image are greater than or equal to the display boundary. + * Keep the aspect ratio to zoom in or out the image so that both sides of the image are greater than or equal to the display boundary. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Default value. Keep the aspect ratio to zoom in or out the image so that both sides of the image are greater than or equal to the display boundary. + * Keep the aspect ratio to zoom in or out the image so that both sides of the image are greater than or equal to the display boundary. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @form * @since 9 */ /** - * Default value. Keep the aspect ratio to zoom in or out the image so that both sides of the image are greater than or equal to the display boundary. + * Keep the aspect ratio to zoom in or out the image so that both sides of the image are greater than or equal to the display boundary. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -5639,7 +5782,7 @@ declare enum ImageSize { * @since 10 */ /** - * Default value. Keep the aspect ratio to zoom in or out the image so that both sides of the image are greater than or equal to the display boundary. + * Keep the aspect ratio to zoom in or out the image so that both sides of the image are greater than or equal to the display boundary. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -8426,6 +8569,16 @@ declare enum ImageSpanAlignment { * @since 11 */ TOP, + + /** + * The ImageSpan's alignment is same with the text. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + FOLLOW_PARAGRAPH, } /** @@ -8679,6 +8832,7 @@ declare enum XComponentType { * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 + * @deprecated since 20 */ NODE, } @@ -10225,6 +10379,37 @@ declare enum PageFlipMode { SINGLE = 1, } +/** + * Focus wrap mode of a list or grid when moving focus using the arrow keys. + + * @enum { number } FocusWrapMode + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare enum FocusWrapMode { + /** + * No wrap when moving focus using the arrow keys. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + DEFAULT = 0, + + /** + * Auto wrap when moving focus using the arrow keys. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + WRAP_WITH_ARROW = 1, +} + /** * Rotating crown event behavior. * @@ -10305,7 +10490,7 @@ declare enum CrownSensitivity { * @enum {number} * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ declare enum AxisAction { /** @@ -10313,7 +10498,7 @@ declare enum AxisAction { * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ NONE = 0, @@ -10322,7 +10507,7 @@ declare enum AxisAction { * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ BEGIN = 1, @@ -10331,7 +10516,7 @@ declare enum AxisAction { * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ UPDATE = 2, @@ -10340,7 +10525,7 @@ declare enum AxisAction { * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ END = 3, @@ -10349,7 +10534,7 @@ declare enum AxisAction { * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ CANCEL = 4, } @@ -10362,7 +10547,7 @@ declare enum AxisAction { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ declare enum FocusDrawLevel { /** @@ -10372,7 +10557,7 @@ declare enum AxisAction { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ SELF = 0, @@ -10383,7 +10568,7 @@ declare enum AxisAction { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ TOP = 1, } @@ -10395,7 +10580,7 @@ declare enum AxisAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare enum DividerMode { /** @@ -10404,7 +10589,7 @@ declare enum DividerMode { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ FLOATING_ABOVE_MENU = 0, @@ -10414,7 +10599,140 @@ declare enum DividerMode { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ EMBEDDED_IN_MENU = 1, -} \ No newline at end of file +} + +/** + * Event query type. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ +declare enum EventQueryType { + /** + * Type of onClick event. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + ON_CLICK = 0, +} + +/** + * Follow position type. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare enum TipsAnchorType { + /** + * Follow the component. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + TARGET, + + /** + * Follow the cursor. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + CURSOR +} + +/** + * Define ColorSpace enumeration. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare enum ColorSpace { + /** + * SRGB ColorSpace. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + SRGB = 0, + /** + * Display-P3 ColorSpace. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + DISPLAY_P3 = 1, +} + +/** + * Define the property type enumeration used in animation. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare enum AnimationPropertyType { + /** + * Rotation angle in the x, y, z direction. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + ROTATION = 0, + + /** + * Translation in the x and y direction. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + TRANSLATION = 1, + + /** + * Scale in the x and y direction. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + SCALE = 2, + + /** + * Opacity. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + OPACITY = 3, +} diff --git a/api/@internal/component/ets/flex.d.ts b/api/@internal/component/ets/flex.d.ts index 9fd5c1b981f7199dbdd5c0bdbe2a848781fd1df0..7e5a2e45036a5c51d6eca298499d30fdbe8317ad 100644 --- a/api/@internal/component/ets/flex.d.ts +++ b/api/@internal/component/ets/flex.d.ts @@ -43,7 +43,7 @@ * @since 10 */ /** - * Defines the options of Flex. + * Describes the layout and alignment of child components within the Flex component. * * @interface FlexOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -78,9 +78,10 @@ declare interface FlexOptions { * @since 10 */ /** - * Sets the horizontal layout of elements. + * Direction in which child components are arranged in the Flex component. * * @type { ?FlexDirection } + * @default FlexDirection.Row * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -114,9 +115,10 @@ declare interface FlexOptions { * @since 10 */ /** - * Whether the Flex container is a single row/column arrangement or a multi-row/column arrangement. + * Whether the Flex component has a single line or multiple lines. * * @type { ?FlexWrap } + * @default FlexWrap.NoWrap * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -150,9 +152,10 @@ declare interface FlexOptions { * @since 10 */ /** - * The alignment format of the subassembly on the Flex container spindle. + * Alignment mode of the child components in the Flex component along the main axis. * * @type { ?FlexAlign } + * @default FlexAlign.Start * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -186,9 +189,10 @@ declare interface FlexOptions { * @since 10 */ /** - * Alignment Format for Subassembly on Flex Container Cross Axis. + * Alignment mode of the child components in the Flex component along the cross axis. * * @type { ?ItemAlign } + * @default ItemAlign.Start * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -222,9 +226,11 @@ declare interface FlexOptions { * @since 10 */ /** - * The alignment of multiple lines of content when there is extra space in the cross axis. + * Alignment mode of the child components in a multi-row Flex component along the cross axis. + * This parameter is valid only when wrap is set to Wrap or WrapReverse. * * @type { ?FlexAlign } + * @default FlexAlign.Start * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -234,10 +240,10 @@ declare interface FlexOptions { alignContent?: FlexAlign; /** - * The space to be inserted, either horizontally or vertically, - * between two adjacent components in the Flex container. + * Spacing between child components along the main axis or cross axis of the Flex component. * * @type { ?FlexSpaceOptions } + * @default {main: LengthMetrics.px(0), cross: LengthMetrics.px(0)} * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -247,8 +253,7 @@ declare interface FlexOptions { } /** - * The space to be inserted, either horizontally or vertically, - * between two adjacent components in the Flex container. + * Defines the spacing between child components along the main axis or cross axis of the Flex component. * * @interface FlexSpaceOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -259,7 +264,7 @@ declare interface FlexOptions { declare interface FlexSpaceOptions { /** - * Defines the main space property. + * Space on the main axis of the Flex component. * * @type { ?LengthMetrics } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -270,7 +275,7 @@ declare interface FlexSpaceOptions { main?: LengthMetrics; /** - * Defines the cross space property. + * Space on the main axis of the Flex component. * * @type { ?LengthMetrics } * @syscap SystemCapability.ArkUI.ArkUI.Full diff --git a/api/@internal/component/ets/folder_stack.d.ts b/api/@internal/component/ets/folder_stack.d.ts index 75c5045da64d85e7531eff1152a6d2300aed9d51..0c93809ea69c22d58fd3ab6a78022366d2dcddde 100644 --- a/api/@internal/component/ets/folder_stack.d.ts +++ b/api/@internal/component/ets/folder_stack.d.ts @@ -35,7 +35,7 @@ declare type WindowStatusType = import('../api/@ohos.window').default.WindowStat * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ interface FolderStackOptions { /** @@ -55,6 +55,16 @@ interface FolderStackOptions { * @atomicservice * @since 12 */ + /** + * Define the IDs of the sub component that will be moved to the upper half screen when hovering. + * + * Anonymous Object Rectification + * @type { ?Array } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ upperItems?: Array; } @@ -99,12 +109,13 @@ interface FolderStackInterface { /** * Defines the constructor of folderStack. * + * Anonymous Object Rectification * @param { FolderStackOptions } [options] - id of children need to be show in upperItem * @returns { FolderStackAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ (options?: FolderStackOptions): FolderStackAttribute; } @@ -116,7 +127,7 @@ interface FolderStackInterface { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ interface OnFoldStatusChangeInfo { /** @@ -136,29 +147,41 @@ interface OnFoldStatusChangeInfo { * @atomicservice * @since 12 */ + /** + * Folder state. + * + * Anonymous Object Rectification + * @type { FoldStatus } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ foldStatus: FoldStatus } /** * Callback when onStateChangeCallback. * + * Anonymous Object Rectification * @typedef { function } OnFoldStatusChangeCallback * @param { OnFoldStatusChangeInfo } event - the folding information of the current device * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ declare type OnFoldStatusChangeCallback = (event: OnFoldStatusChangeInfo) => void; /** * Callback when onHoverStatusChange. * + * Anonymous Object Rectification * @typedef { function } OnHoverStatusChangeCallback * @param { HoverEventParam } param - hover event param * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 14 + * @since 18 */ declare type OnHoverStatusChangeCallback = (param: HoverEventParam) => void; @@ -220,12 +243,13 @@ declare class FolderStackAttribute extends CommonMethod { /** * Callback folderState when the folderState changes * + * Anonymous Object Rectification * @param { OnFoldStatusChangeCallback } callback - executed when folderStatus changed * @returns { FolderStackAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ onFolderStateChange(callback: OnFoldStatusChangeCallback): FolderStackAttribute; @@ -242,11 +266,12 @@ declare class FolderStackAttribute extends CommonMethod { /** * Callback hoverStatus|folderStatus|rotation|windowMode when the hoverStatus changes * + * Anonymous Object Rectification * @param { OnHoverStatusChangeCallback } handler - executed when hoverStatus changed * @returns { FolderStackAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 14 + * @since 18 */ onHoverStatusChange(handler: OnHoverStatusChangeCallback): FolderStackAttribute; diff --git a/api/@internal/component/ets/form_component.d.ts b/api/@internal/component/ets/form_component.d.ts index ebca6b72b36e0c0c018abb653f8f769651af3ed7..a0a4f51d1660d4a8b47e78dcabb4facfc9256c4a 100644 --- a/api/@internal/component/ets/form_component.d.ts +++ b/api/@internal/component/ets/form_component.d.ts @@ -373,6 +373,70 @@ interface FormCallbackInfo { idString: string; } +/** + * Defines the size of Form. + * + * @typedef FormSize + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ +interface FormSize { + /** + * The width of the form. + * Anonymous Object Rectification + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ + width: number; + + /** + * The height of the form. + * Anonymous Object Rectification + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ + height: number; +} + +/** + * Defines error information for card loading. + * + * @typedef ErrorInformation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ +interface ErrorInformation { + /** + * Error code. + * Anonymous Object Rectification + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ + errcode: number; + + /** + * Error information. + * Anonymous Object Rectification + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ + msg: string; +} + /** * @extends CommonMethod * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -389,7 +453,17 @@ declare class FormComponentAttribute extends CommonMethod void): FormComponentAttribute; + /** + * Card loading error. + * Anonymous Object Rectification + * + * @param { Callback } callback + * @returns { FormComponentAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ + onError(callback: Callback): FormComponentAttribute; /** * Card to be redirected. @@ -477,7 +561,17 @@ declare class FormComponentAttribute extends CommonMethod void): FormComponentAttribute; + /** + * Card to be redirected. + * Anonymous Object Rectification + * + * @param { Callback } callback + * @returns { FormComponentAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ + onRouter(callback: Callback): FormComponentAttribute; /** * Uninstall Card. @@ -508,7 +602,28 @@ declare class FormComponentAttribute extends CommonMethod void): FormComponentAttribute; + /** + * Card to be loaded. + * Anonymous Object Rectification + * + * @param { VoidCallback } callback + * @returns { FormComponentAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ + onLoad(callback: VoidCallback): FormComponentAttribute; + + /** + * Card has been updated. + * + * @param { Callback } callback + * @returns { FormComponentAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ + onUpdate(callback: Callback): FormComponentAttribute; } /** diff --git a/api/@internal/component/ets/gauge.d.ts b/api/@internal/component/ets/gauge.d.ts index 5ec51b4b5af5c7a2243b309eb9140e62d6cc120a..9b39da9c99f24917745844fb511e953d9b0e56c7 100644 --- a/api/@internal/component/ets/gauge.d.ts +++ b/api/@internal/component/ets/gauge.d.ts @@ -26,7 +26,7 @@ * @crossplatform * @form * @atomicservice - * @since 14 + * @since 18 */ interface GaugeOptions { /** @@ -63,6 +63,17 @@ interface GaugeOptions { * @atomicservice * @since 11 */ + /** + * Set current data value. + * Anonymous Object Rectification. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ value: number; /** @@ -99,6 +110,17 @@ interface GaugeOptions { * @atomicservice * @since 11 */ + /** + * Set current segment minimum value. + * Anonymous Object Rectification. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ min?: number; /** @@ -135,6 +157,17 @@ interface GaugeOptions { * @atomicservice * @since 11 */ + /** + * Set current segment maximum value. + * Anonymous Object Rectification. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ max?: number; } @@ -221,6 +254,7 @@ interface GaugeInterface { */ /** * Called when the gauge component is used. + * Anonymous Object Rectification. * * @param { GaugeOptions } options - Gauge options. * @returns { GaugeAttribute } @@ -228,7 +262,7 @@ interface GaugeInterface { * @crossplatform * @form * @atomicservice - * @since 14 + * @since 18 */ (options: GaugeOptions): GaugeAttribute; } diff --git a/api/@internal/component/ets/gesture.d.ts b/api/@internal/component/ets/gesture.d.ts index 5abb03c59ac2456efffb5293c0f89533b3049dc9..0c90f64bebf9b835959ba2ca4522399e8e4d603a 100644 --- a/api/@internal/component/ets/gesture.d.ts +++ b/api/@internal/component/ets/gesture.d.ts @@ -816,6 +816,83 @@ declare interface GestureInfo { isSystemGesture: boolean; } +/** + * The location info used in gesture event. + * + * @interface EventLocationInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare interface EventLocationInfo { + /** + * X-axis coordinates relative to the upper left corner of the component. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + x: number; + + /** + * Y-axis coordinates relative to the upper left corner of the component. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + y: number; + + /** + * X-axis coordinates relative to the upper left corner of the window. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + windowX: number; + + /** + * Y-axis coordinates relative to the upper left corner of the window. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + windowY: number; + + /** + * X-axis coordinates relative to the upper left corner of the screen. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + displayX: number; + + /** + * Y-axis coordinates relative to the upper left corner of the screen. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + displayY: number; +} + /** * Type of the finger information. * @@ -1076,6 +1153,18 @@ interface BaseGestureEvent extends BaseEvent { * @since 12 */ fingerList: FingerInfo[]; + + /** + * All finger information when the gesture event is triggered, the return value + * is one array, and the array length is just the total fingers count. + * + * @type { ?FingerInfo[] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + fingerInfos?: FingerInfo[]; } /** @@ -1098,6 +1187,16 @@ interface BaseGestureEvent extends BaseEvent { * @since 12 */ interface TapGestureEvent extends BaseGestureEvent { + /** + * The tap location info used in tap gesture. + * + * @type {?EventLocationInfo} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + tapLocation?: EventLocationInfo; } /** @@ -1395,7 +1494,7 @@ interface RotationGestureEvent extends BaseGestureEvent { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 112 + * @since 12 */ interface SwipeGestureEvent extends BaseGestureEvent { /** @@ -1527,6 +1626,18 @@ interface GestureEvent extends BaseEvent { */ fingerList: FingerInfo[]; + /** + * All finger information when the gesture event is triggered, the return value + * is one array, and the array length is just the total fingers count. + * + * @type { ?FingerInfo[] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + fingerInfos?: FingerInfo[]; + /** * Gesture event offset X. * The unit is vp. @@ -1798,6 +1909,17 @@ interface GestureEvent extends BaseEvent { * @since 11 */ velocity: number; + + /** + * The tap location info used in tap gesture. + * + * @type {?EventLocationInfo} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + tapLocation?: EventLocationInfo; } /** @@ -2336,7 +2458,7 @@ declare class PanGestureOptions { * @atomicservice * @since 18 */ - getDistance(): number; + getDistance(): number; } /** @@ -3568,6 +3690,16 @@ interface PanGestureHandlerOptions extends BaseHandlerOptions { * @since 12 */ distance?: number; + /** + * Indicates minimum move distance map. + * + * @type { ?Map } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + distanceMap?: Map; } /** @@ -4194,6 +4326,36 @@ declare class EventTargetInfo { getId(): string; } +/** + * Defines the touch recognizer. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare class TouchRecognizer { + /** + * Returns the event target information of the component. + * + * @returns { EventTargetInfo } - the event target information of the component. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + getEventTargetInfo(): EventTargetInfo; + /** + * Dispatch touch cancel to the touch recognizer. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + cancelTouch(): void; +} + /** * Defines the gesture recognizer. * @@ -4302,6 +4464,21 @@ declare class GestureRecognizer { * @since 18 */ isFingerCountLimit(): boolean; + /** + * Prevent the gesture recognizer from participating in this gesture recognition until all fingers are lifted. + * If the system has already made out the result of this gesture recognizer (success and failure), calling this + * function will have no any effect. + * + * [Note]: This method is different from GestureRecognizer.setEnabled(isEnabled: boolean), setEnabled does not + * prevent a gesture recognizer object from participating in the gesture recognition process, but only affects + * whether the gesture's corresponding callback function is executed. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + preventBegin(): void; } /** @@ -4457,4 +4634,36 @@ declare class PanRecognizer extends GestureRecognizer { * @since 12 */ getPanGestureOptions(): PanGestureOptions; + /** + * Returns the pan recognizer's direction attribute. + * + * @returns { PanDirection } - Pan recognizer direction + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + getDirection(): PanDirection; + /** + * Returns the pan recognizer's distance. + * The unit is vp. + * + * @returns { number } - the distance of the pan recognizer. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + getDistance(): number; + /** + * Returns the pan recognizer's distance map. + * The unit is vp. + * + * @returns { Map } - the distance map of the pan recognizer. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + getDistanceMap(): Map; } diff --git a/api/@internal/component/ets/grid.d.ts b/api/@internal/component/ets/grid.d.ts index 96e929ecb57f83ee9638b24df15b3e8e493672fa..40602e9998369fa45af79bc595b661532673d315 100644 --- a/api/@internal/component/ets/grid.d.ts +++ b/api/@internal/component/ets/grid.d.ts @@ -384,6 +384,65 @@ declare interface ComputedBarAttribute { totalLength: number; } +/** + * Defines a UIGridEvent which is used to set event to target component. + * + * @extends UIScrollableCommonEvent + * @interface UIGridEvent + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ +declare interface UIGridEvent extends UIScrollableCommonEvent { + /** + * Set or reset the callback which is triggered when the Grid will scroll. + * + * @param { OnWillScrollCallback | undefined } callback - callback function, triggered when the Grid will scroll. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnWillScroll(callback: OnWillScrollCallback | undefined): void; + + /** + * Set or reset the callback which is triggered when the Grid did scroll. + * + * @param { OnScrollCallback | undefined } callback - callback function, triggered when the Grid did scroll. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnDidScroll(callback: OnScrollCallback | undefined): void; + + /** + * Set or reset the callback which is triggered when the start and end positions of the display change. + * + * @param { OnGridScrollIndexCallback | undefined } callback - callback function, triggered when start or + * end positions of the display change. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnScrollIndex(callback: OnGridScrollIndexCallback | undefined): void; +} + +/** + * Defines the callback type used in onScrollIndex. + * + * @typedef {function} OnGridScrollIndexCallback + * @param {number} first - the first index in visible content. + * @param {number} last - the last index in visible content. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ +declare type OnGridScrollIndexCallback = (first: number, last: number) => void; + /** * Defines the grid attribute functions. * @@ -1164,6 +1223,18 @@ declare class GridAttribute extends ScrollableCommonMethod { */ alignItems(alignment: Optional): GridAttribute; + /** + * Sets the focus wrap mode of the grid. + * + * @param { Optional } mode - the focus wrap mode of the grid. + * @returns { GridAttribute } the attribute of the grid. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + focusWrapMode(mode: Optional): GridAttribute; + /** * Called When sliding the grid. * @@ -1320,6 +1391,15 @@ declare class GridAttribute extends ScrollableCommonMethod { * @atomicservice * @since 11 */ +/** + * Defines Grid Component. + * It is recommended to use LazyForEach or Repeat to generate child components. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ declare const Grid: GridInterface; /** diff --git a/api/@internal/component/ets/hyperlink.d.ts b/api/@internal/component/ets/hyperlink.d.ts old mode 100644 new mode 100755 index b419b0f2c7fc4dbec09dae9aa5b30c3488a80862..416030a85662572826d024b0c73678b34261f1b3 --- a/api/@internal/component/ets/hyperlink.d.ts +++ b/api/@internal/component/ets/hyperlink.d.ts @@ -33,6 +33,15 @@ * @atomicservice * @since 11 */ +/** + * Defines the hyperlink interface. + * + * @interface HyperlinkInterface + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ interface HyperlinkInterface { /** * Return to get Hyperlink. @@ -57,6 +66,19 @@ interface HyperlinkInterface { * @atomicservice * @since 11 */ + /** + * Return to get Hyperlink. + * adress: Web page redirected by the hyperlink component. + * content: Hyperlinks in the hyperlink component display text. + * + * @param { string | Resource } address + * @param { string | Resource } content + * @returns { HyperlinkAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ (address: string | Resource, content?: string | Resource): HyperlinkAttribute; } @@ -75,6 +97,15 @@ interface HyperlinkInterface { * @atomicservice * @since 11 */ +/** + * Defines the hyperlink attribute functions + * + * @extends CommonMethod + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ declare class HyperlinkAttribute extends CommonMethod { /** * Set Color @@ -93,6 +124,16 @@ declare class HyperlinkAttribute extends CommonMethod { * @atomicservice * @since 11 */ + /** + * Set Color + * + * @param { Color | number | string | Resource } value + * @returns { HyperlinkAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ color(value: Color | number | string | Resource): HyperlinkAttribute; } @@ -109,6 +150,14 @@ declare class HyperlinkAttribute extends CommonMethod { * @atomicservice * @since 11 */ +/** + * Defines Hyperlink Component. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ declare const Hyperlink: HyperlinkInterface; /** @@ -124,4 +173,12 @@ declare const Hyperlink: HyperlinkInterface; * @atomicservice * @since 11 */ +/** + * Defines Hyperlink Component instance. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ declare const HyperlinkInterface: HyperlinkAttribute; diff --git a/api/@internal/component/ets/image.d.ts b/api/@internal/component/ets/image.d.ts index 91556380e156347a24d10ed63159cf1a59deec20..5be59d65489a3688252714a71e6ca14a314771b0 100644 --- a/api/@internal/component/ets/image.d.ts +++ b/api/@internal/component/ets/image.d.ts @@ -77,6 +77,18 @@ declare type DrawingLattice = import('../api/@ohos.graphics.drawing').default.L */ declare type ImageMatrix = import ('../api/@ohos.matrix4').default.Matrix4Transit; +/** + * Business error in onError callback. + * + * @typedef { import('../api/@ohos.base').BusinessError } BusinessError + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +declare type BusinessError = import('../api/@ohos.base').BusinessError; + /** * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -440,6 +452,46 @@ declare enum ImageRotateOrientation { * @since 14 */ LEFT = 4, + + /** + * Flip the orignial image horizontally + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + UP_MIRRORED = 5, + + /** + * Flip the orignial image horizontally and rotate clockwise 90 degrees + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + RIGHT_MIRRORED = 6, + + /** + * Flip the orignial image vertically + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + DOWN_MIRRORED = 7, + + /** + * Flip the orignial image horizontally and rotate clockwise 270 degrees + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + LEFT_MIRRORED = 8, } /** @@ -543,7 +595,7 @@ interface ImageInterface { * @crossplatform * @form * @atomicservice - * @since 14 + * @since 18 */ interface ImageSourceSize { @@ -581,6 +633,17 @@ interface ImageSourceSize { * @atomicservice * @since 11 */ + /** + * Set width. + * Anonymous Object Rectification. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ width: number; /** @@ -617,6 +680,17 @@ interface ImageSourceSize { * @atomicservice * @since 11 */ + /** + * Set height. + * Anonymous Object Rectification. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ height: number; } @@ -709,9 +783,13 @@ declare class ImageAttribute extends CommonMethod { * @since 11 */ /** - * Placeholder displayed on load - * - * @param { string | Resource | PixelMap } value + * Sets the placeholder image displayed during loading. + * + *

NOTE: + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * + * @param { string | Resource | PixelMap } value - Placeholder image displayed during loading, Default value is null. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -749,9 +827,13 @@ declare class ImageAttribute extends CommonMethod { * @since 10 */ /** - * match Text Direction + * Specifies whether to display the image in the system language direction. * - * @param { boolean } value + *

NOTE: + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * + * @param { boolean } value - Whether to display the image in the system language direction, Default value is false. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -791,7 +873,11 @@ declare class ImageAttribute extends CommonMethod { /** * Sets whether the display size of the image follows the source size. * - * @param { boolean } value + *

NOTE: + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * + * @param { boolean } value - Whether to fit the image to the size of the image source, Default value is false. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -829,9 +915,16 @@ declare class ImageAttribute extends CommonMethod { * @since 10 */ /** - * fill Color + * Sets the fill color to be superimposed on the image. + * By default, no fill color is applied. If an invalid value is passed, the system uses the default theme color: + * black in light mode and white in dark mode. * - * @param { ResourceColor } value + *

NOTE: + *
This attribute applies only to SVG images. + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * + * @param { ResourceColor } value - Fill color to be superimposed on the image. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -842,9 +935,16 @@ declare class ImageAttribute extends CommonMethod { fillColor(value: ResourceColor): ImageAttribute; /** - * fill Color + * Sets the fill color to be superimposed on the image. + * By default, no fill color is applied. If an invalid value is passed, the system uses the default theme color: + * black in light mode and white in dark mode. + * + *

NOTE: + *
This attribute applies only to SVG images. + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

* - * @param { ResourceColor | ColorContent } color + * @param { ResourceColor | ColorContent } color - Fill color to be superimposed on the image. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -853,6 +953,25 @@ declare class ImageAttribute extends CommonMethod { */ fillColor(color: ResourceColor | ColorContent): ImageAttribute; + /** + * Sets the fill color to be superimposed on the image. + * By default, no fill color is applied. If an invalid value is passed, the system uses the default theme color: + * black in light mode and white in dark mode. + * + *

NOTE: + *
This attribute applies only to SVG images. + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * + * @param { ResourceColor | ColorContent | ColorMetrics } color + * @returns { ImageAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + fillColor(color: ResourceColor | ColorContent | ColorMetrics): ImageAttribute; + /** * Sets the zoom type of an image. * @@ -881,9 +1000,9 @@ declare class ImageAttribute extends CommonMethod { * @since 10 */ /** - * Sets the zoom type of an image. + * Sets how the image is resized to fit its container. * - * @param { ImageFit } value + * @param { ImageFit } value - How the image is resized to fit its container, Default value is ImageFit.Cover. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -894,9 +1013,9 @@ declare class ImageAttribute extends CommonMethod { objectFit(value: ImageFit): ImageAttribute; /** - * Sets the matrix for the image. + * Sets the transformation matrix of the image. * - * @param { ImageMatrix } matrix + * @param { ImageMatrix } matrix - Transformation matrix of the image. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -935,7 +1054,12 @@ declare class ImageAttribute extends CommonMethod { /** * Set the repeat style of the picture * - * @param { ImageRepeat } value + *

NOTE: + *
This attribute is not applicable to SVG images. + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * + * @param { ImageRepeat } value - How the image is repeated, Default value is ImageRepeat.NoRepeat. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -973,9 +1097,15 @@ declare class ImageAttribute extends CommonMethod { * @since 10 */ /** - * Set the auto style of the picture + * Specifies whether to resize the image source based on the size of the display area during image decoding. * - * @param { boolean } value + *

NOTE: + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor + * or SVG. + *

+ * + * @param { boolean } value - Whether to resize the image source based on the size of the display area + * during image decoding, Default value is false. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1013,9 +1143,15 @@ declare class ImageAttribute extends CommonMethod { * @since 10 */ /** - * Sets the image rendering mode. + * Sets the rendering mode of the image. * - * @param { ImageRenderMode } value + *

NOTE: + *
This attribute is not applicable to SVG images. + *
When ColorFilter is set, this attribute is not effective. + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * + * @param { ImageRenderMode } value - Rendering mode of the image, Default value is ImageRenderMode.Original. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1026,16 +1162,32 @@ declare class ImageAttribute extends CommonMethod { renderMode(value: ImageRenderMode): ImageAttribute; /** - * Set dynamic range mode of image. + * Sets the dynamic range of the image to be displayed. * - * @param { DynamicRangeMode } value - Indicates the resizable options. - * @returns { ImageAttribute } Returns the instance of the ImageAttribute. + *

NOTE: + *
This attribute is not applicable to SVG images. + *

+ * + * @param { DynamicRangeMode } value - Dynamic range of the image. + * @returns { ImageAttribute } Returns the instance of the ImageAttribute, Default value is + * dynamicRangeMode.Standard. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ dynamicRangeMode(value: DynamicRangeMode): ImageAttribute; + /** + * Set hdrBrightness for Image. + * + * @param { number } brightness - Control the brightness of HDR Image, Default value is 1.0. + * @returns { ImageAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 19 + */ + hdrBrightness(brightness: number): ImageAttribute; + /** * Sets the interpolation effect of an image. The interpolation effect is only magnified for the image. * @@ -1064,9 +1216,14 @@ declare class ImageAttribute extends CommonMethod { * @since 10 */ /** - * Sets the interpolation effect of an image. The interpolation effect is only magnified for the image. + * Sets the interpolation effect of the image, which can alleviate aliasing that occurs when the image is zoomed. * - * @param { ImageInterpolation } value + *

NOTE: + *
This attribute is not applicable to SVG images. + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * + * @param { ImageInterpolation } value - Interpolation effect of the image, Default value is ImageInterpolation.Low. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1119,16 +1276,23 @@ declare class ImageAttribute extends CommonMethod { * @since 11 */ /** - * Specifies the picture decoding size. + * Sets the decoding size of the image. * The original picture is decoded into a picture of a specified size. The unit of the number type is px. + * Anonymous Object Rectification. * - * @param { ImageSourceSize } value - Image source size. + *

NOTE: + *
This attribute works only when the target size is smaller than the source size. + *
This attribute is not applicable to SVG images or PixelMap objects. + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * + * @param { ImageSourceSize } value - Decoding size of the image. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form * @atomicservice - * @since 14 + * @since 18 */ sourceSize(value: ImageSourceSize): ImageAttribute; @@ -1163,10 +1327,13 @@ declare class ImageAttribute extends CommonMethod { * @since 10 */ /** - * Sets the synchronous or asynchronous mode for image loading. - * The default parameter type is bool, and the default value is false. + * Specifies whether to load the image synchronously. * - * @param { boolean } value + *

NOTE: + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * + * @param { boolean } value - Whether to load the image synchronously, Default value is false. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1207,9 +1374,13 @@ declare class ImageAttribute extends CommonMethod { * @since 11 */ /** - * Sets the color filter effect on the image. + * Sets the color filter for the image. * - * @param { ColorFilter | DrawingColorFilter } value ColorFilter object. + *

NOTE: + *
When this attribute is set, renderMode is not effective. + *

+ * + * @param { ColorFilter | DrawingColorFilter } value - Color filter of the image. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1239,9 +1410,14 @@ declare class ImageAttribute extends CommonMethod { * @since 10 */ /** - * Allow replication. + * Whether the image can be copied. + * + * NOTE: + *
SVG images cannot be copied. + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *

* - * @param { CopyOptions } value + * @param { CopyOptions } value - Specifies whether the image can be copied, Default value is CopyOptions.None. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1255,7 +1431,7 @@ declare class ImageAttribute extends CommonMethod { * Enable image dragging. * Default value is false. * - * @param { boolean } value + * @param { boolean } value - Whether the image is draggable, Default value is false. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 @@ -1264,17 +1440,20 @@ declare class ImageAttribute extends CommonMethod { * Enable image dragging. * Default value is true. * - * @param { boolean } value + * @param { boolean } value - Whether the image is draggable, Default value is true. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 11 */ /** - * Enable image dragging. - * Default value is true. + * Specifies whether the image is draggable. * - * @param { boolean } value + *

NOTE: + *
This attribute cannot be used together with the onDragStart event. + *

+ * + * @param { boolean } value - Whether the image is draggable, Default value is true. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1338,9 +1517,13 @@ declare class ImageAttribute extends CommonMethod { * @since 10 */ /** - * This callback is triggered when an image is successfully loaded. + * Triggered when an image is successfully loaded or decoded. * The size of the image source that is successfully loaded is returned, in pixels. * + *

NOTE: + *
This event is not triggered if the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * * @param { function } callback * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1639,8 +1822,12 @@ declare class ImageAttribute extends CommonMethod { * @since 10 */ /** - * This callback is triggered when an exception occurs during image loading. + * Triggered when an error occurs during image loading. * The field of "message" carries the detailed information of failed image loading. + * + *

NOTE: + *
This event is not triggered if the parameter type of the component is AnimatedDrawableDescriptor. + *

* * @param { ImageErrorCallback } callback * @returns { ImageAttribute } @@ -1686,6 +1873,11 @@ declare class ImageAttribute extends CommonMethod { * When the loaded source file is a svg image, this callback is triggered when the playback of the svg image is complete. * If the svg image is a wireless loop image, this callback is not triggered. * + *

NOTE: + *
Only SVG images are supported. + *
This event is not triggered if the parameter type of the component is AnimatedDrawableDescriptor. + *

+ * * @param { function } event * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1705,9 +1897,24 @@ declare class ImageAttribute extends CommonMethod { * @since 11 */ /** - * Enable image analyzer. + * Sets whether to enable the AI analyzer * - * @param { boolean} enable + *

NOTE: + *
This attribute cannot be used together with the overlay attribute. If they are set at the same time, + * the CustomBuilder attribute in overlay has no effect. This attribute depends on device capabilities. + *
Images to be analyzed must be static, non-vector images. That is, SVG and GIF images cannot be analyzed. + * Pixel maps in RGBA_8888 format can be passed in for analysis. + *
The placeholder images (specified by alt) cannot be analyzed. An image can be analyzed only when + * objectRepeat is set to ImageRepeat.NoRepeat and obscured is disabled. + *
Analysis is performed based on the complete original image. If the clip, margin, borderRadius, + * position, or objectFit attribute is set, the image is not displayed completely. + * If renderMode is used to apply a mask, analysis is still performed based on the complete original image. + * The copyOption attribute does not affect the AI analyzer. + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor. + *
The ohos.permission.INTERNET permission must be declared. + *

+ * + * @param { boolean} enable - Whether to enable the AI analyzer, Default value is false. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -1736,9 +1943,19 @@ declare class ImageAttribute extends CommonMethod { * @since 11 */ /** - * Set image resizable options. + * Sets the resizable image options. * - * @param { ResizableOptions } value - Indicates the resizable options. + *

NOTE: + *
Resizing is effective for drag previews and placeholder images. + *
When ResizableOptions is set to a valid value, the objectRepeat attribute does not take effect. + *
When the sum of the values of top and bottom is greater than the source image height, + * or the sum of the values of left and right is greater than the source image width, + * the ResizableOptions attribute does not take effect. + *
This attribute does not take effect when the parameter type of the component is AnimatedDrawableDescriptor + * or SVG. + *

+ * + * @param { ResizableOptions } value - Resizable image options. * @returns { ImageAttribute } Returns the instance of the ImageAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1748,9 +1965,13 @@ declare class ImageAttribute extends CommonMethod { resizable(value: ResizableOptions): ImageAttribute; /** - * Whether to support sensitive privacy information + * Sets whether to secure sensitive information on widgets. * - * @param { boolean } supported - Whether to support sensitive privacy information. + *

NOTE: + *
Obscuring requires widget framework support. + *

+ * + * @param { boolean } supported - Whether to secure sensitive information on widgets, Default value is false. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form @@ -1771,9 +1992,10 @@ declare class ImageAttribute extends CommonMethod { enhancedImageQuality(imageQuality: ResolutionQuality): ImageAttribute; /** - * Set the rotation angle of image. + * Sets the display orientation of the image content. * - * @param { ImageRotateOrientation } orientation + * @param { ImageRotateOrientation } orientation - Display orientation of the image content, Default value + * is ImageRotateOrientation.UP. * @returns { ImageAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1807,6 +2029,16 @@ declare class ImageAttribute extends CommonMethod { /** * Defines Image Component. * + *

If flickering occurs during image loading, set syncLoad to true. + * For details, see [Concurrency Optimization]{@link + * https://developer.huawei.com/consumer/en/doc/best-practices/bpta-click-to-click-response-optimization}

+ * + *

If white blocks persist during image loading, follow the steps in [Solution to White Image Blocks]{@link + * https://developer.huawei.com/consumer/en/doc/best-practices/bpta-image-white-lump-solution}

+ * + *

If image loading takes a long time, follow the steps in [Reducing the Loading Time of Preset Images]{@link + * https://developer.huawei.com/consumer/en/doc/best-practices/bpta-texture-compression-improve-performance}

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -1971,6 +2203,18 @@ declare interface ImageError { * @since 11 */ message: string + + /** + * Business Error. + * + * @type { ?BusinessError } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + error?: BusinessError; } /** diff --git a/api/@internal/component/ets/image_animator.d.ts b/api/@internal/component/ets/image_animator.d.ts index 20e66c9792e8d697e2de9bbb697810f460f07a98..16dd7ce744de4be1e7bad47763fc91e4e4228d04 100644 --- a/api/@internal/component/ets/image_animator.d.ts +++ b/api/@internal/component/ets/image_animator.d.ts @@ -326,9 +326,13 @@ declare class ImageAnimatorAttribute extends CommonMethod } value + *

NOTE: + *
Dynamic update is not supported. + *

+ * + * @param { Array } value - Image frame informatio, Default value is []. * @returns { ImageAnimatorAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -357,9 +361,9 @@ declare class ImageAnimatorAttribute extends CommonMethodNOTE: + *
This attribute does not take effect when a separate duration is set for any of the image frames. + *

+ * + * @param { number } value - Playback duration, Default value is 1000. * @returns { ImageAnimatorAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -419,9 +428,9 @@ declare class ImageAnimatorAttribute extends CommonMethod /// /// +/// /// /// /// diff --git a/api/@internal/component/ets/lazy_for_each.d.ts b/api/@internal/component/ets/lazy_for_each.d.ts index fa76b6e9174d53221d046a6142d5e406abab5a1d..7479fdc7707748d5bcdefb41da07ddfadfe83d6b 100644 --- a/api/@internal/component/ets/lazy_for_each.d.ts +++ b/api/@internal/component/ets/lazy_for_each.d.ts @@ -19,7 +19,7 @@ */ /** - * Defines type to operation data source. + * Enumerates the data operation types. * * @enum { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -29,7 +29,7 @@ */ declare enum DataOperationType { /** - * Add data. + * Data addition. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -39,7 +39,7 @@ declare enum DataOperationType { ADD = 'add', /** - * Delete data. + * Data deletion. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -49,7 +49,7 @@ declare enum DataOperationType { DELETE = 'delete', /** - * Exchange data. + * Data exchange. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -59,7 +59,7 @@ declare enum DataOperationType { EXCHANGE = 'exchange', /** - * Move data. + * Data movement. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -69,7 +69,7 @@ declare enum DataOperationType { MOVE = 'move', /** - * Change data. + * Data change. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -79,7 +79,7 @@ declare enum DataOperationType { CHANGE = 'change', /** - * Reload data. + * Data reloading. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -90,7 +90,7 @@ declare enum DataOperationType { } /** - * Defines add operation. + * Represents an operation for adding data. * * @interface DataAddOperation * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -100,7 +100,7 @@ declare enum DataOperationType { */ interface DataAddOperation { /** - * How to operate added data. + * Type of data addition. * * @type { DataOperationType.ADD } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -111,7 +111,7 @@ interface DataAddOperation { type: DataOperationType.ADD, /** - * Index of added data. + * Index at which to insert the data record. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -122,8 +122,7 @@ interface DataAddOperation { index: number, /** - * Count of added data in one operation - * Only validate for ADD and DELETE. + * Number of data records to insert. Default value: 1. * * @type { ?number } * @default 1 @@ -135,7 +134,7 @@ interface DataAddOperation { count?: number, /** - * Key of added data. + * Keys to assign to the inserted data records. * * @type { ?(string | Array) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -147,7 +146,7 @@ interface DataAddOperation { } /** - * Defines delete operation. + * Represents an operation for deleting data. * * @interface DataDeleteOperation * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -157,7 +156,7 @@ interface DataAddOperation { */ interface DataDeleteOperation { /** - * How to operate deleted data. + * Type of data deletion. * * @type { DataOperationType.DELETE } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -168,7 +167,7 @@ interface DataDeleteOperation { type: DataOperationType.DELETE, /** - * Index of deleted data. + * Index at which to start deleting data. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -179,8 +178,7 @@ interface DataDeleteOperation { index: number, /** - * Count of deleted data in one operation - * Only validate for ADD and DELETE. + * Number of data records to delete. Default value: 1. * * @type { ?number } * @default 1 @@ -193,7 +191,7 @@ interface DataDeleteOperation { } /** - * Defines change operation. + * Represents an operation for changing data. * * @interface DataChangeOperation * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -203,7 +201,7 @@ interface DataDeleteOperation { */ interface DataChangeOperation { /** - * How to operate changed data. + * Type of data change. * * @type { DataOperationType.CHANGE } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -214,7 +212,7 @@ interface DataChangeOperation { type: DataOperationType.CHANGE, /** - * Index of changed data. + * Index of the data to be changed. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -225,7 +223,7 @@ interface DataChangeOperation { index: number, /** - * Key of changed data. + * New key to assign to the changed data. The original key is used by default. * * @type { ?string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -247,7 +245,7 @@ interface DataChangeOperation { */ interface MoveIndex { /** - * Index of moved data. + * Start position for the movement. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -257,7 +255,7 @@ interface MoveIndex { */ from: number; /** - * Destination of moved data. + * End position for the movement. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -279,7 +277,7 @@ interface MoveIndex { */ interface ExchangeIndex { /** - * Index of the first exchange data. + * First position for the exchange. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -289,7 +287,7 @@ interface ExchangeIndex { */ start: number; /** - * Index of the second exchange data. + * Second position for the exchange. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -311,7 +309,7 @@ interface ExchangeIndex { */ interface ExchangeKey { /** - * Key of the first exchange data. + * New key to assign to the first position in the exchange. The original key is used by default. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -321,7 +319,7 @@ interface ExchangeKey { */ start: string; /** - * Key of the second exchange data. + * New key to assign to the second position in the exchange. The original key is used by default. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -333,7 +331,7 @@ interface ExchangeKey { } /** - * Defines move&exchange operation. + * Represents an operation for moving data. * * @interface DataMoveOperation * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -343,7 +341,7 @@ interface ExchangeKey { */ interface DataMoveOperation { /** - * How to operate moved data. + * Type of data movement. * * @type { DataOperationType.MOVE } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -354,7 +352,7 @@ interface DataMoveOperation { type: DataOperationType.MOVE, /** - * Index of moved data. + * Positions for the movement. * * @type { MoveIndex } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -365,7 +363,7 @@ interface DataMoveOperation { index: MoveIndex, /** - * Key of moved data. + * New key to assign to the moved data. The original key is used by default. * * @type { ?string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -377,7 +375,7 @@ interface DataMoveOperation { } /** - * Defines exchange operation. + * Represents an operation for exchanging data. * * @interface DataExchangeOperation * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -387,7 +385,7 @@ interface DataMoveOperation { */ interface DataExchangeOperation { /** - * How to operate exchange data. + * Type of data exchange. * * @type { DataOperationType.EXCHANGE } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -398,7 +396,7 @@ interface DataMoveOperation { type: DataOperationType.EXCHANGE, /** - * Index of exchange data. + * Positions for the exchange. * * @type { ExchangeIndex } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -409,7 +407,7 @@ interface DataMoveOperation { index: ExchangeIndex, /** - * Key of exchange data. + * New keys to assign to the exchanged data. The original keys are used by default. * * @type { ?ExchangeKey } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -421,7 +419,10 @@ interface DataMoveOperation { } /** - * Defines reload operation. + * Represents an operation for reloading data. + * If the onDatasetChange event contains a DataOperationType.RELOAD operation, + * all other operations in the event are ineffective.In such cases, the framework will + * call keygenerator to perform a comparison of keys with their corresponding values. * * @interface DataReloadOperation * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -431,7 +432,7 @@ interface DataMoveOperation { */ interface DataReloadOperation { /** - * How to operate reload data. + * Type of data reloading. * * @type { DataOperationType.RELOAD } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -455,14 +456,14 @@ declare type DataOperation = DataAddOperation | DataDeleteOperation | DataChangeOperation | DataMoveOperation | DataExchangeOperation | DataReloadOperation; /** - * Data Change Listener. + * Listener for data changes. * * @interface DataChangeListener * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Data Change Listener. + * Listener for data changes. * * @interface DataChangeListener * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -470,7 +471,7 @@ declare type DataOperation = * @since 10 */ /** - * Data Change Listener. + * Listener for data changes. * * @interface DataChangeListener * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -480,20 +481,23 @@ declare type DataOperation = */ declare interface DataChangeListener { /** - * Data ready. + * Invoked when all data is reloaded. For data items whose key remains unchanged, + * the original child component is used. For data items whose key changes, a new child component is created. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Data ready. + * Invoked when all data is reloaded. For data items whose key remains unchanged, + * the original child component is used. For data items whose key changes, a new child component is created. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Data ready. + * Invoked when all data is reloaded. For data items whose key remains unchanged, + * the original child component is used. For data items whose key changes, a new child component is created. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -503,7 +507,7 @@ declare interface DataChangeListener { onDataReloaded(): void; /** - * Data added. + * Invoked when data is added to the position indicated by the specified index. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -514,14 +518,14 @@ declare interface DataChangeListener { onDataAdded(index: number): void; /** - * Data added. + * Invoked when data is added to the position indicated by the specified index. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Data added. + * Invoked when data is added to the position indicated by the specified index. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -529,7 +533,7 @@ declare interface DataChangeListener { * @since 10 */ /** - * Data added. + * Invoked when data is added to the position indicated by the specified index. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -540,7 +544,7 @@ declare interface DataChangeListener { onDataAdd(index: number): void; /** - * Data moved. + * Invoked when data is moved, that is, when data is swapped between the from and to positions. * * @param { number } from * @param { number } to @@ -552,7 +556,7 @@ declare interface DataChangeListener { onDataMoved(from: number, to: number): void; /** - * Data moved. + * Invoked when data is moved, that is, when data is swapped between the **from** and **to** positions. * * @param { number } from * @param { number } to @@ -560,7 +564,7 @@ declare interface DataChangeListener { * @since 8 */ /** - * Data moved. + * Invoked when data is moved, that is, when data is swapped between the **from** and **to** positions. * * @param { number } from * @param { number } to @@ -569,7 +573,7 @@ declare interface DataChangeListener { * @since 10 */ /** - * Data moved. + * Invoked when data is moved, that is, when data is swapped between the **from** and **to** positions. * * @param { number } from * @param { number } to @@ -581,7 +585,8 @@ declare interface DataChangeListener { onDataMove(from: number, to: number): void; /** - * Data deleted. + * Invoked when data is deleted from the position indicated by the specified index. + * LazyForEach will update the displayed content accordingly. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -592,14 +597,16 @@ declare interface DataChangeListener { onDataDeleted(index: number): void; /** - * Data deleted. + * Invoked when data is deleted from the position indicated by the specified index. + * LazyForEach will update the displayed content accordingly. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Data deleted. + * Invoked when data is deleted from the position indicated by the specified index. + * LazyForEach will update the displayed content accordingly. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -607,7 +614,8 @@ declare interface DataChangeListener { * @since 10 */ /** - * Data deleted. + * Invoked when data is deleted from the position indicated by the specified index. + * LazyForEach will update the displayed content accordingly. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -618,7 +626,7 @@ declare interface DataChangeListener { onDataDelete(index: number): void; /** - * Call when has data change. + * Invoked when data in the position indicated by the specified index is changed. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -629,14 +637,14 @@ declare interface DataChangeListener { onDataChanged(index: number): void; /** - * Call when has data change. + * Invoked when data in the position indicated by the specified index is changed. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Call when has data change. + * Invoked when data in the position indicated by the specified index is changed. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -644,7 +652,7 @@ declare interface DataChangeListener { * @since 10 */ /** - * Call when has data change. + * Invoked when data in the position indicated by the specified index is changed. * * @param { number } index * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -655,7 +663,7 @@ declare interface DataChangeListener { onDataChange(index: number): void; /** - * Call when multiple data change. + * Invoked when data is processed in batches to notify the component of refreshing. * * @param { DataOperation[] } dataOperations * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -692,14 +700,14 @@ declare interface DataChangeListener { */ declare interface IDataSource { /** - * Total data count. + * Obtains the total number of data items. * * @returns { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Total data count. + * Obtains the total number of data items. * * @returns { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -707,7 +715,7 @@ declare interface IDataSource { * @since 10 */ /** - * Total data count. + * Obtains the total number of data items. * * @returns { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -718,7 +726,7 @@ declare interface IDataSource { totalCount(): number; /** - * Return the data of index. + * Obtains the data item that matches the specified index. * * @param { number } index * @returns { any } @@ -726,7 +734,7 @@ declare interface IDataSource { * @since 7 */ /** - * Return the data of index. + * Obtains the data item that matches the specified index. * * @param { number } index * @returns { any } @@ -735,7 +743,7 @@ declare interface IDataSource { * @since 10 */ /** - * Return the data of index. + * Obtains the data item that matches the specified index. * * @param { number } index * @returns { any } @@ -747,14 +755,14 @@ declare interface IDataSource { getData(index: number): any; /** - * Register data change listener. + * Registers a listener for data changes. * * @param { DataChangeListener } listener * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Register data change listener. + * Registers a listener for data changes. * * @param { DataChangeListener } listener * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -762,7 +770,7 @@ declare interface IDataSource { * @since 10 */ /** - * Register data change listener. + * Registers a listener for data changes. * * @param { DataChangeListener } listener * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -773,14 +781,14 @@ declare interface IDataSource { registerDataChangeListener(listener: DataChangeListener): void; /** - * Unregister data change listener. + * Unregisters the listener for data changes. * * @param { DataChangeListener } listener * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Unregister data change listener. + * Unregisters the listener for data changes. * * @param { DataChangeListener } listener * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -788,7 +796,7 @@ declare interface IDataSource { * @since 10 */ /** - * Unregister data change listener. + * Unregisters the listener for data changes. * * @param { DataChangeListener } listener * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -883,7 +891,7 @@ interface LazyForEachInterface { ( dataSource: IDataSource, itemGenerator: (item: any, index: number) => void, - keyGenerator?: (item: any, index: number) => string, + keyGenerator?: (item: any, index: number) => string ): LazyForEachAttribute; } diff --git a/api/@internal/component/ets/lazy_grid_layout.d.ts b/api/@internal/component/ets/lazy_grid_layout.d.ts index cea50944567483887209346cf166d673b7894ceb..632f0f7f177d50abf395456c1549038f106fa610 100644 --- a/api/@internal/component/ets/lazy_grid_layout.d.ts +++ b/api/@internal/component/ets/lazy_grid_layout.d.ts @@ -25,7 +25,7 @@ * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ interface LazyVGridLayoutInterface { /** @@ -35,7 +35,7 @@ interface LazyVGridLayoutInterface { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ (): LazyVGridLayoutAttribute; } @@ -47,30 +47,30 @@ interface LazyVGridLayoutInterface { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare class LazyGridLayoutAttribute extends CommonMethod { /** * The spacing between rows. * - * @param { Length } value + * @param { LengthMetrics } value * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ rowsGap(value: LengthMetrics): T; /** * The spacing between columns. * - * @param { Length } value + * @param { LengthMetrics } value * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ columnsGap(value: LengthMetrics): T; } @@ -82,7 +82,7 @@ declare class LazyGridLayoutAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare class LazyVGridLayoutAttribute extends LazyGridLayoutAttribute { /** @@ -93,7 +93,7 @@ declare class LazyVGridLayoutAttribute extends LazyGridLayoutAttributeList component along the cross axis. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -220,7 +222,7 @@ declare enum ListItemAlign { * @since 10 */ /** - * Center position in the direction of cross axis. + * The list items are centered in the List component along the cross axis. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -246,7 +248,7 @@ declare enum ListItemAlign { * @since 10 */ /** - * End position in the direction of cross axis + * The list items are packed toward the end edge of the List component along the cross axis. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -268,7 +270,7 @@ declare enum ListItemAlign { */ declare enum ListItemGroupArea { /** - * List item group area is none + * The edge of the viewport is in the position of none. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -278,7 +280,7 @@ declare enum ListItemGroupArea { NONE = 0, /** - * List item group area is list item + * The edge of the viewport is in the position of a list item. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -288,7 +290,7 @@ declare enum ListItemGroupArea { IN_LIST_ITEM_AREA = 1, /** - * List item group area is header + * The edge of the viewport is in the position of a header. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -298,7 +300,7 @@ declare enum ListItemGroupArea { IN_HEADER_AREA = 2, /** - * List item group area is footer + * The edge of the viewport is in the position of a footer. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -352,7 +354,8 @@ declare enum StickyStyle { * @since 10 */ /** - * The header and footer of each item group will not be pinned. + * In the ListItemGroup component, the header is not pinned to the top, + * and the footer is not pinned to the bottom. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -378,7 +381,8 @@ declare enum StickyStyle { * @since 10 */ /** - * The header of each item group will be pinned. + * In the ListItemGroup component, the header is pinned to the top, + * and the footer is not pinned to the bottom. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -404,7 +408,8 @@ declare enum StickyStyle { * @since 10 */ /** - * The footer of each item group will be pinned. + * In the ListItemGroup component, the footer is pinned to the bottom, + * and the header is not pinned to the top. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -469,15 +474,14 @@ declare enum ScrollSnapAlign { * @since 10 */ /** - * Default no item scroll snap alignment effect. When scroll end, - * list item will stop without limit. + * No alignment. This is the default value. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 11 */ - NONE, + NONE = 0, /** * The first item in view will be aligned at the start of list. @@ -486,14 +490,19 @@ declare enum ScrollSnapAlign { * @since 10 */ /** - * The first item in view will be aligned at the start of list. + * The first item in the view is aligned at the start of the list. + * + *

NOTE + *
When the list hits the end, the items at the end must be completely displayed. + * In this case, the items at the start may not be aligned. + *

* * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 11 */ - START, + START = 1, /** * The middle item in view will be aligned at the center of list. @@ -502,14 +511,19 @@ declare enum ScrollSnapAlign { * @since 10 */ /** - * The middle item in view will be aligned at the center of list. + * The middle items in the view are aligned in the center of the list. + * + *

NOTE + *
The top and end items can be aligned in the center of the list. + * In this case, a blank area may result, and the first or last item is aligned to the center of the list. + * * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 11 */ - CENTER, + CENTER = 2, /** * The last item in view will be aligned at the end of list. @@ -518,14 +532,19 @@ declare enum ScrollSnapAlign { * @since 10 */ /** - * The last item in view will be aligned at the end of list. + * The last item in the view is aligned at the end of the list. + * + *

NOTE + *
When the list hits the start, the items at the start must be completely displayed. + * In this case, the items at the end may not be aligned. + *

* * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 11 */ - END, + END = 3, } /** @@ -613,6 +632,64 @@ declare interface ChainAnimationOptions { damping?: number; } +/** + * Defines a UIListEvent which is used to set different common event to target component. + * + * @extends UIScrollableCommonEvent + * @interface UIListEvent + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ +declare interface UIListEvent extends UIScrollableCommonEvent { + /** + * Set or reset the callback which is triggered when the List will scroll. + * + * @param { OnWillScrollCallback | undefined } callback - The callback will be triggered when the List will scroll. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnWillScroll(callback: OnWillScrollCallback | undefined): void; + + /** + * Set or reset the callback which is triggered when List view did scroll. + * + * @param { OnScrollCallback | undefined } callback - callback function, triggered when the List view did scroll. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnDidScroll(callback: OnScrollCallback | undefined): void; + + /** + * Set or reset the callback which is triggered when the start, end, or center positions of the display change. + * + * @param { OnListScrollIndexCallback | undefined } callback - callback function, triggered when the + * start, end, or center positions of the display change. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnScrollIndex(callback: OnListScrollIndexCallback | undefined): void; + + /** + * Set or reset the callback which is triggered when the list visible content changes. + * + * @param { OnScrollVisibleContentChangeCallback | undefined } callback - callback function, triggered when + * the list visible content changes. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnScrollVisibleContentChange(callback: OnScrollVisibleContentChangeCallback | undefined): void; +} + /** * Defines the close swipe action options. * @@ -640,7 +717,7 @@ declare interface CloseSwipeActionOptions { * @since 11 */ /** - * Called after collapse animation completed. + * Triggered after the collapse animation is complete. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -662,7 +739,7 @@ declare interface CloseSwipeActionOptions { */ declare interface VisibleListContentInfo { /** - * Index number of a child in the list. + * Index of the list item or list item group in the list display area. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -673,7 +750,8 @@ declare interface VisibleListContentInfo { index: number /** - * Area of the ListItemGroup. + * Position of the top or bottom edge of the viewport in the + * list item group to which the edge is located, if applicable. * * @type { ?ListItemGroupArea } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -684,7 +762,8 @@ declare interface VisibleListContentInfo { itemGroupArea?: ListItemGroupArea /** - * Index number of a ListItem in ListItemGroup. + * Index of the starting or ending list item in the list + * item group to which the top or bottom edge of the viewport is located. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -696,9 +775,11 @@ declare interface VisibleListContentInfo { } /** - * Callback of scroll visible content, using in onScrollVisibleContentChange. + * Called when a child component enters or leaves the list display area. * * @typedef {function} OnScrollVisibleContentChangeCallback + * @param {number} start - Information about the currently displayed first list item or list item group. + * @param {number} end - Information about the currently displayed last list item or list item group. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -706,6 +787,21 @@ declare interface VisibleListContentInfo { */ declare type OnScrollVisibleContentChangeCallback = (start: VisibleListContentInfo, end: VisibleListContentInfo) => void; +/** + * Defines the callback type used in onScrollIndex. + * + * @typedef {function} OnListScrollIndexCallback + * @param {number} start - the first index in visible content. + * @param {number} end - the last index in visible content. + * @param {number} center - the center index in visible content. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 19 + */ +declare type OnListScrollIndexCallback = (start: number, end: number, center: number) => void; + /** * @extends Scroller * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -726,7 +822,7 @@ declare class ListScroller extends Scroller { * @param { number } index - Index of the ListItemGroup in List. * @param { number } indexInGroup - Index of the ListItem in ListItemGroup. * @returns { RectResult } Returns the size and position. - * @throws { BusinessError } 401 - Parameter error. Possible causes: + * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. @@ -736,12 +832,22 @@ declare class ListScroller extends Scroller { * @since 11 */ /** - * Gets the size and position of a ListItem in a ListItemGroup. + * Obtains the size of a list item in a list item group and its position relative to the list. * - * @param { number } index - Index of the ListItemGroup in List. - * @param { number } indexInGroup - Index of the ListItem in ListItemGroup. - * @returns { RectResult } Returns the size and position. - * @throws { BusinessError } 401 - Parameter error. Possible causes: + *

NOTE: + *
- The value of index must be the index of a child component visible in the display area. + * Otherwise, the value is considered invalid. + *
- The child component for which index is set must be a list item group. Otherwise, + * the index value is considered invalid. + *
- The value of indexInGroup must be the index of a list item in the list item group + * visible in the display area. Otherwise, the value is considered invalid. + *
- When index or indexInGroup is set to an invalid value, the returned size and position are both 0. + *

+ * + * @param { number } index - Index of the list item group in the list. + * @param { number } indexInGroup - Index of the list item in the list item group. + * @returns { RectResult } - Size of the list item in the list item group and its position relative to the list. + * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. @@ -760,7 +866,7 @@ declare class ListScroller extends Scroller { * @param { number } indexInGroup - Index of the ListItem in ListItemGroup. * @param { boolean } smooth - If true, scroll to index item with animation. If false, scroll to index item without animation. * @param { ScrollAlign } align - Sets the alignment mode of a specified index. - * @throws { BusinessError } 401 - Parameter error. Possible causes: + * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. @@ -770,13 +876,20 @@ declare class ListScroller extends Scroller { * @since 11 */ /** - * Called when sliding to the specified index in specified ListItemGroup. + * Scrolls to the specified list item in the specified list item group. * - * @param { number } index - Index of the ListItemGroup in List. - * @param { number } indexInGroup - Index of the ListItem in ListItemGroup. - * @param { boolean } smooth - If true, scroll to index item with animation. If false, scroll to index item without animation. - * @param { ScrollAlign } align - Sets the alignment mode of a specified index. - * @throws { BusinessError } 401 - Parameter error. Possible causes: + * @param { number } index - Index of the target list item group in the current container. + *
NOTE + *
If the value set is a negative value or greater than the maximum index of the items in the container, + * the value is deemed abnormal, and no scrolling will be performed. + * @param { number } indexInGroup - Index of the target list item in the list item group specified by index. + *
NOTE + *
If the value set is a negative value or greater than the maximum index of the items in the list item group, + * the value is deemed abnormal, and no scrolling will be performed. + * @param { boolean } smooth - Whether to enable the smooth animation for scrolling to the item with the specified index. + * The value true means to enable that the smooth animation, and false means the opposite.
Default value: false + * @param { ScrollAlign } align - How the list item to scroll to is aligned with the container.
Default value: ScrollAlign.START + * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. @@ -792,7 +905,7 @@ declare class ListScroller extends Scroller { * Collapse all listItem. * * @param { CloseSwipeActionOptions } options - Options of close Swipe items. - * @throws { BusinessError } 401 - Parameter error. Possible causes: + * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. @@ -802,10 +915,14 @@ declare class ListScroller extends Scroller { * @since 11 */ /** - * Collapse all listItem. + * Collapses the list items in the EXPANDED state and sets callback events. * - * @param { CloseSwipeActionOptions } options - Options of close Swipe items. - * @throws { BusinessError } 401 - Parameter error. Possible causes: + *

NOTE: + *
- A ListScroller must be bound to the List component. + *

+ * + * @param { CloseSwipeActionOptions } options - Callback events for collapsing list items in the EXPANDED state. + * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. @@ -818,11 +935,17 @@ declare class ListScroller extends Scroller { closeAllSwipeActions(options?: CloseSwipeActionOptions): void; /** - * Get visible list content info by position. + * Obtains the index information of the child component at the specified coordinates. * - * @param { number } x - X coordinate relative to the upper left corner of the list's original area, in vp. - * @param { number } y - Y coordinate relative to the upper left corner of the list's original area, in vp. - * @returns { VisibleListContentInfo } Visible list content info of the position. + *

NOTE: + *
- If the provided value of x or y is invalid, + * the returned VisibleListContentInfo object has the index property set to -1, + * and both itemGroupArea and itemIndexInGroup are undefined. + *

+ * + * @param { number } x - X-coordinate, in vp. + * @param { number } y - Y-coordinate, in vp. + * @returns { VisibleListContentInfo } Index information of the child component at the specified coordinates. * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. @@ -837,8 +960,12 @@ declare class ListScroller extends Scroller { } /** - * Defines List constructor options. + * Defines the options of the List component. * + *

NOTE: + *
- The default value of the universal attribute clip is true for the List component. + *

+ * * @interface ListOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -881,6 +1008,23 @@ interface ListOptions { * @atomicservice * @since 11 */ + /** + * Index of the item to be displayed at the start when the list is initially loaded. + * Anonymous Object Rectification. + * + *

NOTE + *
If the set value is a negative number or is greater than the index of the last item in the list, + * the value is invalid. In this case, the default value will be used. + *

+ * + * @type { ?number } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ initialIndex?: number; /** * Set space. @@ -916,6 +1060,24 @@ interface ListOptions { * @atomicservice * @since 11 */ + /** + * Spacing between list items along the main axis. + * Anonymous Object Rectification. + * + *

NOTE + *
If this parameter is set to a negative number or a value greater than or equal to the length of the list content area, the default value is used. + *
If this parameter is set to a value less than the width of the list divider, the width of the list divider is used as the spacing. + *
Child components of List whose visibility attribute is set to None are not displayed, but the spacing above and below them still takes effect. + *

+ * + * @type { ?(number | string) } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ space?: number | string; /** * Set scroller. @@ -951,6 +1113,21 @@ interface ListOptions { * @atomicservice * @since 11 */ + /** + * Scroller, which can be bound to scrollable components. + * Anonymous Object Rectification. + * + *

NOTE + *
The scroller cannot be bound to other scrollable components. + *

+ * + * @type { ?Scroller } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ scroller?: Scroller; } @@ -1029,6 +1206,7 @@ interface ListInterface { */ /** * Called when interface data is called. + * Anonymous Object Rectification. * * @param { ListOptions } [options] - list options * @returns { ListAttribute } @@ -1042,7 +1220,7 @@ interface ListInterface { } /** - * Defines List divider opotions. + * Defines the divider style of the list or list item group. * * @interface ListDividerOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1086,6 +1264,17 @@ declare interface ListDividerOptions { * @atomicservice * @since 11 */ + /** + * Width of the divider. + * Anonymous Object Rectification. + * + * @type { Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ strokeWidth: Length; /** * Set color. @@ -1121,6 +1310,18 @@ declare interface ListDividerOptions { * @atomicservice * @since 11 */ + /** + * Color of the divider. + * Anonymous Object Rectification. + * + * @type { ?ResourceColor } + * @default 0x08000000 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ color?: ResourceColor; /** * Set startMargin. @@ -1156,6 +1357,18 @@ declare interface ListDividerOptions { * @atomicservice * @since 11 */ + /** + * Distance between the divider and the start edge of the list. + * Anonymous Object Rectification. + * + * @type { ?Length } + * @default 0vp + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ startMargin?: Length; /** * Set endMargin. @@ -1191,6 +1404,18 @@ declare interface ListDividerOptions { * @atomicservice * @since 11 */ + /** + * Distance between the divider and the end edge of the list. + * Anonymous Object Rectification. + * + * @type { ?Length } + * @default 0vp + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ endMargin?: Length; } @@ -1242,10 +1467,11 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when need to decide how much lanes the list will show. + * Sets the number of columns or rows in the list. If the value is set to the gutter type, it indicates the gap between columns. + * It takes effect when the number of columns is greater than 1. * - * @param { number | LengthConstrain } value - * @param { Dimension } gutter + * @param { number | LengthConstrain } value - Number of columns or rows in the list.
Default value: 1 + * @param { Dimension } gutter - Gap between columns.
Default value: 0 * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1275,9 +1501,10 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when need to decide how to align lanes in the direction of the cross axis. + * Alignment mode of list items along the cross axis when the cross-axis width of the list is greater + * than the cross-axis width of list items multiplied by the value of lanes. * - * @param { ListItemAlign } value + * @param { ListItemAlign } value - Alignment mode of list items along the cross axis.
Default value: ListItemAlign.Start * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1315,9 +1542,9 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the arrangement direction of the list component is set. + * Sets the direction in which the list items are arranged. * - * @param { Axis } value + * @param { Axis } value - Direction in which the list items are arranged.
Default value: Axis.Vertical * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1355,9 +1582,11 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the display mode of the side slider is set. + * Sets the scrollbar state. * - * @param { BarState } value + * @param { BarState } value - Scrollbar state. + *
NOTE + *
Default value: BarState.Auto * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1395,10 +1624,19 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the sliding effect is set. + * Sets the effect used when the scroll boundary is reached. * - * @param { EdgeEffect } value - * @param { EdgeEffectOptions } options + *

NOTE: + *
- By default, this component can produce a bounce effect only when there is more than one screen of content. + * To produce a bounce effect when there is less than one screen of content, + * use the options parameter of the edgeEffect attribute. + *

+ * + * @param { EdgeEffect } value - Effect used when the scroll boundary is reached. The spring and shadow effects are supported. + *
Default value: EdgeEffect.Spring + * @param { EdgeEffectOptions } options - Whether to enable the scroll effect when the component content is smaller than the component itself. + * The value { alwaysEnabled: true } means to enable the scroll effect, and { alwaysEnabled: false } means the opposite. + *
Default value: { alwaysEnabled: false } * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1417,8 +1655,9 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 11 */ /** - * Called when need to decide contentStartOffset the list will show. - * @param { number } value - the value Of startOffset. + * Sets the offset from the start of the list content to the boundary of the list display area. + * @param { number } value - Offset from the start of the list content to the boundary of the list display + *
Default value: 0 * @returns { ListAttribute } the attribute of the list. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1436,8 +1675,10 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 11 */ /** - * Called when need to decide contentEndOffset the list will show. - * @param { number } value - the value Of endOffset. + * Sets the offset from the end of the list content to the boundary of the list display area. + * + * @param { number } value - Offset from the end of the list content to the boundary of the list display area. + *
Default value: 0 * @returns { ListAttribute } the attribute of the list. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1485,9 +1726,10 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 11 */ /** - * Called when the ListItem split line style is set. + * Sets the style of the divider for the list items. By default, there is no divider. + * Anonymous Object Rectification. * - * @param { ListDividerOptions | null } value + * @param { ListDividerOptions | null } value - Style of the divider for the list items.
Default value: null * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1500,9 +1742,9 @@ declare class ListAttribute extends ScrollableCommonMethod { ): ListAttribute; /** - * Called when judging whether it is in editable mode. + * Sets whether to enable edit mode. * - * @param { boolean } value + * @param { boolean } value - Whether to enable edit mode.
Default value: false * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 @@ -1538,9 +1780,11 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when judging whether it is multiSelectable. + * Sets whether to enable multiselect. * - * @param { boolean } value + * @param { boolean } value - Whether to enable multiselect. + *
false (default): Multiselect is disabled. + *
true: Multiselect is enabled. * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1580,7 +1824,9 @@ declare class ListAttribute extends ScrollableCommonMethod { /** * Called when the minimum number of list item caches is set for long list deferred loading. * - * @param { number } value + * @param { number } value - Number of list items to be preloaded. + *
Default value: number of nodes visible on the screen, with the maximum value of 16 + *
Value range: [0, +∞) * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1591,10 +1837,12 @@ declare class ListAttribute extends ScrollableCommonMethod { cachedCount(value: number): ListAttribute; /** - * Called when the minimum number of list item caches is set for long list deferred loading. + * Sets the number of list items or list item groups to be cached (preloaded) and specifies whether to display the preloaded nodes. * - * @param { number } count - cached count. - * @param { boolean } show - whether to show the nodes in the cache. + * @param { number } count - Number of list items to be preloaded. + *
Default value: number of nodes visible on the screen, with the maximum value of 16 + *
Value range: [0, +∞) + * @param { boolean } show - Whether to display the preloaded list items.
Default value: false * @returns { ListAttribute } the attribute of the list. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1632,9 +1880,12 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when setting whether to enable chain linkage dynamic effect. + * Sets whether to enable chained animations, which provide a visually connected, + * or "chained," effect when the list is scrolled or its top or bottom edge is dragged. * - * @param { boolean } value + * @param { boolean } value - Whether to enable chained animations. + *
false (default): Chained animations are disabled. + *
true: Chained animations are enabled. * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1675,9 +1926,15 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when header or footer of item group will be pinned. + * Sets whether to pin the header to the top or the footer to the bottom in the list item group, + * + *

NOTE: + *
- Occasionally, after sticky is set, floating-point calculation precision may result in small gaps appearing during scrolling. + * To address this issue, you can apply the pixelRound attribute to the current component, which rounds down the pixel values and help eliminate the gaps. + *

* - * @param { StickyStyle } value + * @param { StickyStyle } value - Whether to pin the header to the top or the footer to the bottom in the list item group. + *
Default value: StickyStyle.None * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1696,9 +1953,10 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called to set list item scroll end alignment effect. + * Sets the scroll snap alignment effect for list items. + * This effect aligns list items to the nearest snap point when scrolling ends. * - * @param { ScrollSnapAlign } value - options of the list alignment effect. + * @param { ScrollSnapAlign } value - Alignment mode of the scroll snap position.
Default value: ScrollSnapAlign.NONE * @returns { ListAttribute } the attribute of the list. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1716,9 +1974,10 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called to setting the nested scroll options. + * Sets the nested scrolling options. You can set the nested scrolling mode in the forward and backward + * directions to implement scrolling linkage with the parent component. * - * @param { NestedScrollOptions } value - options for nested scrolling. + * @param { NestedScrollOptions } value - Nested scrolling options. * @returns { ListAttribute } the attribute of the list. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1737,9 +1996,10 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when setting whether to enable scroll by gesture or mouse. + * Sets whether to support scroll gestures. When this attribute is set to false, + * scrolling by finger or mouse is not supported, but the scroll controller API is not affected. * - * @param { boolean } value + * @param { boolean } value - Whether to support scroll gestures.
Default value: true * @returns { ListAttribute } The attribute of the list * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1758,9 +2018,14 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called to setting the friction. + * Sets the friction coefficient. It applies only to gestures in the scrolling area, + * and it affects only indirectly the scroll chaining during the inertial scrolling process. + * A value less than or equal to 0 evaluates to the default value. * - * @param { number | Resource } value - options for scrolling friction. + * @param { number | Resource } value - Friction coefficient. + *
Default value: 0.9 for wearable devices and 0.6 for non-wearable devices. + *
Since API version 11, the default value for non-wearable devices is 0.7. + *
Since API version 12, the default value for non-wearable devices is 0.75. * @returns { ListAttribute } the attribute of the list. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1770,7 +2035,7 @@ declare class ListAttribute extends ScrollableCommonMethod { friction(value: number | Resource): ListAttribute; /** - * Set children main size for List. + * Sets the size information of the child components of a List component along the main axis. * * @param { ChildrenMainSize } value - children main size for List * @returns { ListAttribute } the attribute of the list. @@ -1782,9 +2047,21 @@ declare class ListAttribute extends ScrollableCommonMethod { childrenMainSize(value: ChildrenMainSize): ListAttribute; /** - * Set maintain visible content position List. - * - * @param { boolean } enabled - maintain visible content position. + * Sets whether the visible content position should remain unchanged when data is inserted or deleted above the visible area. + * + *

NOTE: + *
- The visible content position will only remain unchanged when LazyForEach is used to insert or delete data outside the visible area. + * If ForEach is used to insert or delete data, or if LazyForEach is used for data reloading, + * the visible content position will change even if maintainVisibleContentPosition is set to true. + *
- When maintainVisibleContentPosition is set to true, + * inserting or deleting data above the visible area will trigger onDidScroll and onScrollIndex events. + *
- In a multi-column scenario, setting maintainVisibleContentPosition to true allows + * you to insert or delete entire rows of data while keeping the visible content position unchanged. + * If the insertion or deletion does not involve entire rows, however, the visible content position will still change. + *

+ * + * @param { boolean } enabled - Whether the visible content position should remain unchanged + * when data is inserted or deleted above the visible area.
Default value: false * @returns { ListAttribute } the attribute of the list. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1794,17 +2071,39 @@ declare class ListAttribute extends ScrollableCommonMethod { maintainVisibleContentPosition(enabled: boolean): ListAttribute; /** - * Sets the layout of the List component from the end. - * - * @param { boolean } enabled - Indicates whether the List is layout from the end. + * Sets whether the list's layout starts from the bottom (end) rather than the top (beginning). + * + *

NOTE: + *
- When stackFromEnd is set to true, the following rules apply: + *
If the content of the List component is shorter than the component height, + * the content will be aligned to the bottom of the component. + *
- If the height of a list item in the visible area changes, or if a new list item is inserted, + * the list items above the changed or inserted item will move upwards to accommodate the new layout. + *
- The default value of initialIndex becomes the total number of list items minus one. + *

+ * + * @param { boolean } enabled - Whether the list's layout starts from the bottom (end) rather than the top (beginning). + *
Default value: false * @returns { ListAttribute } the attribute of the list. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ stackFromEnd(enabled: boolean): ListAttribute; + /** + * Sets the focus wrap mode of the List component. + * + * @param { Optional } mode - the focus wrap mode of the List component. + * @returns { ListAttribute } the attribute of the list. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + focusWrapMode(mode: Optional): ListAttribute; + /** * Called when the offset and status callback of the slide are set. * @@ -1833,7 +2132,7 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the offset and status callback of the slide are set. + * Triggered when the list scrolls. * * @param { function } event * @returns { ListAttribute } @@ -1875,8 +2174,8 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the start and end positions of the display change. - * + * Triggered when a child component enters or leaves the list display area. + * * @param { function } event * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1888,9 +2187,9 @@ declare class ListAttribute extends ScrollableCommonMethod { onScrollIndex(event: (start: number, end: number, center: number) => void): ListAttribute; /** - * Called when the list visible content changes. + * Triggered when a child component enters or leaves the list display area. * - * @param { OnScrollVisibleContentChangeCallback } handler - Callback of Scroll Visible. + * @param { OnScrollVisibleContentChangeCallback } handler - Callback invoked when the displayed content changes. * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1927,7 +2226,7 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the list begins to arrive. + * Triggered when the list reaches the start position. * * @param { function } event * @returns { ListAttribute } @@ -1967,7 +2266,7 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the list reaches the end. + * Triggered when the list reaches the end position. * * @param { function } event * @returns { ListAttribute } @@ -1999,7 +2298,8 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the slider start. + * Triggered when the list starts scrolling initiated by the user's finger dragging the list or its scrollbar. + * This event is also triggered when the animation contained in the scrolling triggered by Scroller starts. * * @param { function } event * @returns { ListAttribute } @@ -2039,7 +2339,8 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the slider stops. + * Triggered when the list stops scrolling after the user's finger leaves the screen. + * This event is also triggered when the animation contained in the scrolling triggered by Scroller stops. * * @param { function } event * @returns { ListAttribute } @@ -2052,8 +2353,8 @@ declare class ListAttribute extends ScrollableCommonMethod { onScrollStop(event: () => void): ListAttribute; /** - * Called when a list item is deleted. - * + * Triggered when a list item is deleted. + * * @param { function } event * @returns { ListAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2080,7 +2381,7 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when a list item is moved. + * Triggered when a list item moves. * * @param { function } event * @returns { ListAttribute } @@ -2111,8 +2412,7 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * After a listener is bound, the component can be dragged. After the drag occurs, a callback is triggered. - * (To be triggered, press and hold for 170 milliseconds (ms)) + * Triggered when a list item starts to be dragged. * * @param { function } event * @returns { ListAttribute } @@ -2141,7 +2441,7 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * After binding, a callback is triggered when the component is dragged to the range of the component. + * Triggered when the dragged item enters the drop target of the list. * * @param { function } event * @returns { ListAttribute } @@ -2170,7 +2470,7 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * After binding, a callback is triggered when the drag moves within the range of a placeable component. + * Triggered when the dragged item moves over the drop target of the list. * * @param { function } event * @returns { ListAttribute } @@ -2199,7 +2499,7 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * After binding, a callback is triggered when the component is dragged out of the component range. + * Triggered when the dragged item leaves the drop target of the list. * * @param { function } event * @returns { ListAttribute } @@ -2230,8 +2530,7 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * The component bound to this event can be used as the drag release target. - * This callback is triggered when the drag behavior is stopped within the scope of the component. + * Triggered when the dragged item is dropped on the drop target of the list. * * @param { function } event * @returns { ListAttribute } @@ -2262,7 +2561,8 @@ declare class ListAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when scrolling begin each frame. + * Triggered when the list starts to scroll. The input parameters indicate the amount by which the list will scroll. + * The event handler then works out the amount by which the list needs to scroll based on the real-world situation and returns the result. * * @param { function } event * @returns { ListAttribute } @@ -2305,6 +2605,16 @@ declare class ListAttribute extends ScrollableCommonMethod { * @atomicservice * @since 11 */ +/** + * Defines List Component. + * It is recommended to use LazyForEach or Repeat to generate child components. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare const List: ListInterface; /** diff --git a/api/@internal/component/ets/list_item_group.d.ts b/api/@internal/component/ets/list_item_group.d.ts index 0e2a3a86ab32198b211dd7c56926bf0a9b818c69..1033ca2cd06f270becb7cd3008d9d0c02ac887d2 100644 --- a/api/@internal/component/ets/list_item_group.d.ts +++ b/api/@internal/component/ets/list_item_group.d.ts @@ -336,6 +336,7 @@ declare class ListItemGroupAttribute extends CommonMethodNOTE: + *
true: Start scrolling. + *
false: Do not start scrolling. + *
This parameter cannot be used to restart scrolling that has been completed. + *

+ * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ start: boolean; /** @@ -99,6 +118,23 @@ interface MarqueeOptions { * @atomicservice * @since 11 */ + /** + * Scroll animation text scroll step, when step is larger than the text width of Marquee, take the default value. + * + * Anonymous Object Rectification. + * + *

NOTE: + *
If the value is greater than the text width of the marquee, the default value is used. + *

+ * + * @type { ?number } - The unit is vp. + * @default 6 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ step?: number; /** @@ -135,6 +171,24 @@ interface MarqueeOptions { * @atomicservice * @since 11 */ + /** + * Set the number of times the scroll is repeated, infinite loop if it is less than or equal to zero. + * + * Anonymous Object Rectification. + * + *

NOTE: + *
If the value is less than or equal to 0, the marquee will scroll continuously. + *
Regardless of the value, the marquee scrolls only once on an ArkTS widget. + *

+ * + * @type { ?number } + * @default -1 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ loop?: number; /** @@ -171,6 +225,18 @@ interface MarqueeOptions { * @atomicservice * @since 11 */ + /** + * Set text to scroll from the beginning or backward. + * + * Anonymous Object Rectification. + * @type { ?boolean } + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ fromStart?: boolean; /** @@ -207,6 +273,17 @@ interface MarqueeOptions { * @atomicservice * @since 11 */ + /** + * Text that needs scrolling. + * + * Anonymous Object Rectification. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ src: string; } @@ -286,6 +363,7 @@ interface MarqueeInterface { /** * Create marquee. * + * Anonymous Object Rectification. * @param { MarqueeOptions } options - Marquee options. * @returns { MarqueeAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -402,6 +480,11 @@ declare class MarqueeAttribute extends CommonMethod { /** * Set marquee font size. * + *

NOTE: + *
If fontSize is of the number type, the unit fp is used. The default font size is 16 fp. + *
This parameter cannot be set in percentage. + *

+ * * @param { Length } value * @returns { MarqueeAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -442,7 +525,11 @@ declare class MarqueeAttribute extends CommonMethod { /** * Set marquee allow scale. * - * @param { boolean } value + *

NOTE: + *
This parameter is effective only when fontSize is in fp units. + *

+ * + * @param { boolean } value - Default value is false. * @returns { MarqueeAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -482,7 +569,16 @@ declare class MarqueeAttribute extends CommonMethod { /** * Set marquee font weight. * - * @param { number | FontWeight | string } value + *

NOTE: + *
If the value is too large, the text may be clipped depending on the font. + *
For the number type, the value range is [100, 900], at an interval of 100. + *
The default value is 400. + *
A larger value indicates a heavier font weight. + *
For the string type, only strings that represent a number, for example, "400", + * and the following enumerated values of FontWeight are supported: "bold", "bolder", "lighter", "regular", and "medium". + *

+ * + * @param { number | FontWeight | string } value - Default value is FontWeight.Normal. * @returns { MarqueeAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -522,6 +618,12 @@ declare class MarqueeAttribute extends CommonMethod { /** * Set marquee font family. * + *

NOTE: + *
Default font: 'HarmonyOS Sans' + *
The 'HarmonyOS Sans' font and registered custom fonts are supported for applications. + *
Only the 'HarmonyOS Sans' font is supported for widgets. + *

+ * * @param { string | Resource } value * @returns { MarqueeAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -535,7 +637,12 @@ declare class MarqueeAttribute extends CommonMethod { /** * Marquee scrolling strategy after text update. * - * @param { MarqueeUpdateStrategy } value - The scrolling strategy after text update. + *

NOTE: + *
This attribute takes effect when the marquee is in the playing state + * and the text content width exceeds the width of the marquee component. + *

+ * + * @param { MarqueeUpdateStrategy } value - The scrolling strategy after text update.Default value is MarqueeUpdateStrategy.DEFAULT. * @returns { MarqueeAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -614,6 +721,10 @@ declare class MarqueeAttribute extends CommonMethod { /** * Called when scrolling to the bottom. * + *

NOTE: + *
This event will be triggered for multiple times if the loop attribute is not set to 1. + *

+ * * @param { function } event * @returns { MarqueeAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -688,7 +799,14 @@ declare class MarqueeAttribute extends CommonMethod { */ /** * Defines Marquee Component. - * + * + *

NOTE: + *
To ensure that scrolling frame rates are not affected, + * it is recommended that the number of Marquee components in a scroll container does not exceed four, or alternatively, + * use the Text component's TextOverflow.MARQUEE as a substitute. + *
The text is scrolled only when its width exceeds the width of the Marquee component. + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form diff --git a/api/@internal/component/ets/menu.d.ts b/api/@internal/component/ets/menu.d.ts index 8d3f144a1e536d37efe00ea889b76655454db1fa..3e65f327dbc965e5e1b6943e77ff1932b6366c25 100644 --- a/api/@internal/component/ets/menu.d.ts +++ b/api/@internal/component/ets/menu.d.ts @@ -250,6 +250,17 @@ declare class MenuAttribute extends CommonMethod { * @since 12 */ subMenuExpandingMode(mode: SubMenuExpandingMode): MenuAttribute; + + /** + * Set the expand symbol of sub-menu. + * + * @param { SymbolGlyphModifier } symbol + * @returns { MenuAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + subMenuExpandSymbol(symbol: SymbolGlyphModifier): MenuAttribute; } /** diff --git a/api/@internal/component/ets/menu_item.d.ts b/api/@internal/component/ets/menu_item.d.ts index b95257ffab9157a0df25e245ee63df837a8f91ea..825be1c7b0e954a31ec00c6dd69a795cf3c62029 100644 --- a/api/@internal/component/ets/menu_item.d.ts +++ b/api/@internal/component/ets/menu_item.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Copyright (c) 2022-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -77,6 +77,15 @@ declare interface MenuItemOptions { * @atomicservice * @since 12 */ + /** + * Defines the start display symbol info. + * + * @type { ?SymbolGlyphModifier } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolStartIcon?: SymbolGlyphModifier; /** @@ -139,6 +148,15 @@ declare interface MenuItemOptions { * @atomicservice * @since 12 */ + /** + * Defines the end display symbol info. + * + * @type { ?SymbolGlyphModifier } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolEndIcon?: SymbolGlyphModifier; /** diff --git a/api/@internal/component/ets/nav_destination.d.ts b/api/@internal/component/ets/nav_destination.d.ts index 251228b73861dcfdac986f69ad021a9860bbaf4b..6ef91a9cc7016c0532c29990d87e3f67ef507e89 100644 --- a/api/@internal/component/ets/nav_destination.d.ts +++ b/api/@internal/component/ets/nav_destination.d.ts @@ -25,7 +25,7 @@ * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare type Orientation = import('../api/@ohos.window').default.Orientation; @@ -214,7 +214,7 @@ declare interface NavDestinationCustomTitle { */ declare enum NavigationSystemTransitionType { /** - * Default system transition. + * Default system transition animation. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -223,7 +223,7 @@ declare enum NavigationSystemTransitionType { */ DEFAULT = 0, /** - * None system transition. + * No system transition animation. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -232,7 +232,7 @@ declare enum NavigationSystemTransitionType { */ NONE = 1, /** - * Configure only titlebar transition. + * System transition animation of the title bar. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -241,7 +241,7 @@ declare enum NavigationSystemTransitionType { */ TITLE = 2, /** - * Configure only content transition. + * System transition animation of the content area. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -250,7 +250,7 @@ declare enum NavigationSystemTransitionType { */ CONTENT = 3, /** - * Configure fade style system transition. + * Fade-type system transition animation. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -259,7 +259,7 @@ declare enum NavigationSystemTransitionType { */ FADE = 4, /** - * Configure explode style system transition. + * Center-scale type system transition animation. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -268,7 +268,7 @@ declare enum NavigationSystemTransitionType { */ EXPLODE = 5, /** - * Configure right-side slide style system transition. + * Right-slide type system transition animation. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -277,7 +277,7 @@ declare enum NavigationSystemTransitionType { */ SLIDE_RIGHT = 6, /** - * Configure bottom-side slide style system transition. + * Bottom-slide type system transition animation. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -323,14 +323,16 @@ declare enum NavDestinationMode { STANDARD = 0, /** - * Dialog mode is transparent by default and does not affect the life cycle of other NavDestination. + * Dialog mode, where the navigation destination is transparent by default, and adding or removing the navigation + * destination from the navigation stack does not affect the lifecycle of the lower-layer navigation destinations. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Dialog mode is transparent by default and does not affect the life cycle of other NavDestination. + * Dialog mode, where the navigation destination is transparent by default, and adding or removing the navigation + * destination from the navigation stack does not affect the lifecycle of the lower-layer navigation destinations. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -347,66 +349,66 @@ declare enum NavDestinationMode { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ declare enum NavDestinationActiveReason { /** - * NavDestination become active or inactive because of page transition. + * The activation state changes through page navigation. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ TRANSITION = 0, /** - * NavDestination become active or inactive because content cover changes. + * The activation state changes due to the opening or closing of a modal page. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ CONTENT_COVER = 1, /** - * NavDestination become active or inactive because sheet changes. + * The activation state changes due to the opening or closing of a sheet. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ SHEET = 2, /** - * NavDestination become active or inactive because dialog changes. + * The activation state changes due to the opening or closing of a custom dialog. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ DIALOG = 3, /** - * NavDestination become active or inactive because overlay changes. + * The activation state changes due to the opening or closing of an overlay using **OverlayManager**. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ OVERLAY = 4, /** - * NavDestination become active or inactive because app state changes. + * The activation state changes due to switching between foreground and background states of the application. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ APP_STATE = 5, } @@ -474,7 +476,7 @@ declare interface NavDestinationInterface { */ declare interface RouteMapConfig { /** - * Get destination name. + * Navdestination name. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -485,7 +487,7 @@ declare interface RouteMapConfig { name: string; /** - * Get destination builder file position + * Path of the navdestination in the current package. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -496,7 +498,7 @@ declare interface RouteMapConfig { pageSourceFile: string; /** - * Indicate the custom data of current destination. + * Custom data of the page. * * @type { Object } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -518,7 +520,7 @@ declare interface RouteMapConfig { */ declare interface NavDestinationContext { /** - * Get path info. + * Path information of the navigation destination page. * * @type { NavPathInfo } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -529,7 +531,7 @@ declare interface NavDestinationContext { pathInfo: NavPathInfo; /** - * Get stack of the Navigation where the NavDestination is located. + * Page stack where the current navigation destination page is located. * * @type { NavPathStack } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -540,7 +542,8 @@ declare interface NavDestinationContext { pathStack: NavPathStack; /** - * Get the unique id of NavDestination, which is different from common property id of Component. + * Unique ID of the current navigation destination page, which is automatically generated by the system + * and is irrelevant to the universal attribute **id** of the component. * * @type { ?string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -553,7 +556,8 @@ declare interface NavDestinationContext { /** * Get configuration of current Destination in module.json * - * @returns {RouteMapConfig | undefined} + * @returns {RouteMapConfig | undefined} - Route map configuration of the current page. + * **undefined**, returned when the page is not configured through the route table. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -574,7 +578,7 @@ declare interface NavDestinationContext { */ declare interface NestedScrollInfo { /** - * The controller of parent scrollable container component. + * Controller of the target scrollable container. * * @type { Scroller } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -585,7 +589,8 @@ declare interface NestedScrollInfo { parent: Scroller; /** - * The controller of child scrollable container component. + * Controller of the scrollable container nested within the target scrollable container. + * This scrollable container is a child component of the target scrollable container. * * @type { Scroller } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -607,7 +612,7 @@ declare interface NestedScrollInfo { */ declare interface NavDestinationTransition { /** - * This method is called after the transition ends to notify whether the transition was successful. + * Callback triggered when the transition animation ends. * * @type { ?Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -618,7 +623,8 @@ declare interface NavDestinationTransition { onTransitionEnd?: Callback; /** - * Define the limit duration of the transition animation. + * Duration of the transition animation. + * Default value: **1000** (in milliseconds). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -629,7 +635,8 @@ declare interface NavDestinationTransition { duration?: number; /** - * Define the curve of the transition animation. + * Curve type of the animation. + * Default value: Curve.EaseInOut. * * @type { ?Curve } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -640,7 +647,8 @@ declare interface NavDestinationTransition { curve?: Curve; /** - * Define the delay of the transition animation. + * Delay of the transition animation. + * Default value: **0** (in milliseconds) * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -651,7 +659,9 @@ declare interface NavDestinationTransition { delay?: number; /** - * Configure the custom transition event. + * Closure function specifying the transition animation. + * The system generates the corresponding transition animation based on the modifications + * to the component's UI state within the closure. * * @type { Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -726,7 +736,11 @@ declare class NavDestinationAttribute extends CommonMethod } hide * @returns { NavDestinationAttribute } @@ -794,7 +808,7 @@ declare class NavDestinationAttribute extends CommonMethod): NavDestinationAttribute; /** - * Invoked when the navDestination page is displayed. + * Called when the navigation destination page is displayed. * * @param { function } callback - Indicates callback when the navDestination page is displayed. * @returns { NavDestinationAttribute } @@ -803,7 +817,7 @@ declare class NavDestinationAttribute extends CommonMethod void): NavDestinationAttribute; /** - * Invoked when the navDestination is hidden. + * Called when the navigation destination page is hidden. * * @param { function } callback - Indicates callback when the navDestination is hidden. * @returns { NavDestinationAttribute } @@ -824,7 +838,7 @@ declare class NavDestinationAttribute extends CommonMethod void): NavDestinationAttribute; /** - * Invoked when the backButton is pressed. + * Called when the navigation destination is about + * to be unmounted (or when the transition animation, if any, is about to start). * * @param { function } callback - Indicates callback when the backButton is pressed. * @returns { NavDestinationAttribute } @@ -845,7 +860,8 @@ declare class NavDestinationAttribute extends CommonMethod boolean): NavDestinationAttribute; /** - * Invoked when pop to the navDestination with result. + * Triggered when popping back from other NavDestination. * * @param {Optional>} callback - Indicates callback when pop to the navDestination with result. * @returns {NavDestinationAttribute} @@ -869,16 +885,17 @@ declare class NavDestinationAttribute extends CommonMethod>): NavDestinationAttribute; /** - * Sets the different mode of NavDestination. + * Sets the mode of the **NavDestination** component. Dynamic modification is not supported. * - * @param { NavDestinationMode } value - NavDestinationMode + * @param { NavDestinationMode } value - Mode of the **NavDestination** component. + *
Default value: **NavDestinationMode.STANDARD**. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Sets the different mode of NavDestination. + * Sets the mode of the **NavDestination** component. Dynamic modification is not supported. * * @param { NavDestinationMode } value - NavDestinationMode * @returns { NavDestinationAttribute } @@ -890,18 +907,24 @@ declare class NavDestinationAttribute extends CommonMethod**NOTE**: + *
The following are not allowed: modify the icon size through the **fontSize** attribute of the + * **SymbolGlyphModifier** object, change the animation effects through the **effectStrategy** attribute, + * or change the type of animation effects through the **symbolEffect** attribute. + *

* - * @param { ResourceStr | PixelMap | SymbolGlyphModifier } value - Indicates icon of back button. + * @param { ResourceStr | PixelMap | SymbolGlyphModifier } value - Icon of the back button in the title bar. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -911,22 +934,38 @@ declare class NavDestinationAttribute extends CommonMethod**NOTE**: + *
The following are not allowed: modify the icon size through the **fontSize** attribute of the + * **SymbolGlyphModifier** object, change the animation effects through the **effectStrategy** attribute, + * or change the type of animation effects through the **symbolEffect** attribute. + *

+ * + * @param { ResourceStr | PixelMap | SymbolGlyphModifier } icon - Icon of the back button on the title bar. + * @param { ResourceStr } accessibilityText - Accessibility text for the back button. + *
Default value: **back** when the system language is English. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backButtonIcon(icon: ResourceStr | PixelMap | SymbolGlyphModifier, accessibilityText?: ResourceStr): NavDestinationAttribute; /** - * NavDestination title bar's menus - * - * @param { Array | CustomBuilder } value + * Sets the menu items in the upper right corner of the page. + * If this attribute is not set, no menu item is displayed. + * When the value type is Array**NOTE**: + *
he following are not allowed: modify the icon size through the **fontSize** attribute of + * the **SymbolGlyphModifier** object, change the animation effects through the **effectStrategy** attribute, + * or change the type of animation effects through the **symbolEffect** attribute. + *

+ * @param { Array | CustomBuilder } value - Menu items in the upper right corner of the NavDestination. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -944,14 +983,28 @@ declare class NavDestinationAttribute extends CommonMethod | CustomBuilder, options?: NavigationMenuOptions): NavDestinationAttribute; /** - * Configure toolbar with default style parameter or custom parameter. + * Sets the content of the toolbar. If this API is not called, the toolbar remains hidden. * - * @param { Array | CustomBuilder } toolbarParam - Toolbar configuration parameters. + * @param { Array | CustomBuilder } toolbarParam - Content of the toolbar. + *
When configured with Array<ToolbarItem>, + * the toolbar follows the rules below:
- Toolbar items are evenly distributed on the bottom toolbar, + * with text and icons evenly spaced in each content area.
- If any item contains overlong text and + * there are fewer than five items, the toolbar will: 1. Increase the item width to accommodate the text + * until the toolbar spans the screen width; 2. Reduce the text size progressively; 3. Wrap the text over two lines; + * 4. Clip the text with an ellipsis (...).
- In portrait mode, the toolbar shows a maximum of five icons, + * with any additional icons placed under an automatically generated **More** icon. In landscape mode, + * the behavior of the toolbar is determined by the display mode: (1) If the display mode is + * Split, the toolbar follows the same rules as in portrait mode. (2) If the display mode is Stack, + * the toolbar must be used together with Array<NavigationMenuItem> of the **menus** attribute; + * in this configuration, the bottom toolbar is automatically hidden, and all items on the toolbar are relocated to + * the menu in the upper right corner of the screen.
When configured with CustomBuilder, the toolbar does not + * follow the above rules, except for evenly distributing items at the bottom of the toolbar. + * * @param { NavigationToolbarOptions } [options] - Indicates the options of toolbar. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -962,10 +1015,16 @@ declare class NavDestinationAttribute extends CommonMethod | CustomBuilder, options?: NavigationToolbarOptions): NavDestinationAttribute; /** - * Hide tool bar + * Sets whether to hide the toolbar and whether to animate the visibility change. * - * @param { boolean } hide - * @param { boolean } [animated] + * @param { boolean } hide - Whether to hide the toolbar. + * Default value: **false**. + * **true**: Hide the toolbar. + * **false**: Show the toolbar. + * @param { boolean } [animated] - Whether to animate the visibility change. + * Default value: **false** + * **true**: Animate the visibility change. + * **false**: Do not animate the visibility change. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -975,7 +1034,7 @@ declare class NavDestinationAttribute extends CommonMethod } callback * - Indicates callback that invoked before sub-components of NavDestination are created. @@ -988,7 +1047,8 @@ declare class NavDestinationAttribute extends CommonMethod): NavDestinationAttribute; /** - * Invoked before the navDestination is appeared. + * Called when the navigation destination is about to be mounted. + * You can change the navigation stack in this callback function, and the change takes effect in the current frame. * * @param { Callback } callback - Indicates callback before the navDestination is appeared. * @returns { NavDestinationAttribute } @@ -1000,7 +1060,8 @@ declare class NavDestinationAttribute extends CommonMethod): NavDestinationAttribute; /** - * Invoked before the navDestination is disappeared. + * Called when the navigation destination is about to be unmounted (or when the transition animation, + * if any, is about to start). * * @param { Callback } callback - Indicates callback before the navDestination is disappeared. * @returns { NavDestinationAttribute } @@ -1012,7 +1073,7 @@ declare class NavDestinationAttribute extends CommonMethod): NavDestinationAttribute; /** - * Invoked before the navDestination is displayed. + * Called when the navigation destination is about to be displayed. * * @param { Callback } callback - Indicates callback before the navDestination is displayed. * @returns { NavDestinationAttribute } @@ -1024,7 +1085,7 @@ declare class NavDestinationAttribute extends CommonMethod): NavDestinationAttribute; /** - * Invoked before the navDestination is hidden. + * Called when the navigation destination is about to be hidden. * * @param { Callback } callback - Indicates callback before the navDestination is hidden. * @returns { NavDestinationAttribute } @@ -1036,10 +1097,12 @@ declare class NavDestinationAttribute extends CommonMethod): NavDestinationAttribute; /** - * Set navDestination content expand types and edges. + * Ignores the layout safe area by allowing the component to extend into the non-safe areas of the screen. * - * @param { Array } [types] - Indicates the types of the safe area. - * @param { Array } [edges] - Indicates the edges of the safe area. + * @param { Array } [types] - ypes of non-safe areas to extend into. + * Default value:
[LayoutSafeAreaType.SYSTEM]. + * @param { Array } [edges] - Edges for expanding the safe area. + * Default value:
[LayoutSafeAreaEdge.TOP, LayoutSafeAreaEdge.BOTTOM]. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1049,9 +1112,15 @@ declare class NavDestinationAttribute extends CommonMethod, edges?: Array): NavDestinationAttribute; /** - * Set the style of system bar + * Sets the style of the system status bar + * when this **NavDestination** page is displayed in the **Navigation** component. * - * @param { Optional } style - The properties of system bar + *

**NOTE**: + *
1. The setting takes effect only when the **NavDestination** component is used + * in conjunction with the **Navigation** component. + *
2. For other usage restrictions, see the description of systemBarStylefor the **Navigation** component. + *

+ * @param { Optional } style - Style of the system status bar. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -1060,10 +1129,21 @@ declare class NavDestinationAttribute extends CommonMethod): NavDestinationAttribute; /** - * Set the NavDestination can be restored after the application is terminated. - * To enable this attribute, recoverable and id of Navigation must be set. - * - * @param { boolean } recoverable - set navdestination can be recovered. + * Sets whether the **NavDestination** component is recoverable. + * If set to recoverable, when the application process exits unexpectedly and restarts, + * the **NavDestination** component will be automatically recreated. To use this feature, + * ensure that the **recoverable** attribute is set for the **Navigation** component associated + * with the **NavDestination** component. + * + *

**NOTE**: + *
This API must be used together with + * the recoverable API of **Navigation**. + *

+ * @param { boolean } recoverable - Whether the **NavDestination** component is recoverable. + * By default, it is not recoverable. + * Default value: **false**. + * **true**: The **NavDestination** component is recoverable. + * **false**: The **NavDestination** component is not recoverable. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 14 @@ -1071,9 +1151,11 @@ declare class NavDestinationAttribute extends CommonMethod): NavDestinationAttribute; /** - * Configuration of system transition + * Sets the system transition animation of the **NavDestination** component. + * System transition animations for the title bar and content area can be configured separately. * - * @param { NavigationSystemTransitionType } type - Types of system Transition + * @param { NavigationSystemTransitionType } type - Type of the system transition animation. + * Default value: **NavigationSystemTransitionType.DEFAULT**. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1083,9 +1165,24 @@ declare class NavDestinationAttribute extends CommonMethod } scrollers - The controllers of the scrollable container components. + *

**NOTE**: + *
The connection between the scrolling actions and the animations for showing or hiding the title bar + * and toolbar of the **NavDestination** component takes effect only when the title bar or toolbar is visible. + * If a **NavDestination** component is bound to multiple scrollable containers, scrolling in any of these containers + * triggers the display or hiding animations of the title bar and toolbar. Specifically, when any scrollable + * container reaches either the bottom or the top, the display animation for the title bar and + * toolbar is triggered without delay. As such, to ensure the optimal user experience, + * avoid triggering scroll events of multiple scrollable containers simultaneously. + *

+ * + * @param { Array } scrollers - Controller of the target scrollable container. * @returns { NavDestinationAttribute } Returns the instance of the NavDestinationAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1095,9 +1192,25 @@ declare class NavDestinationAttribute extends CommonMethod): NavDestinationAttribute; /** - * Bind NavDestination to nested scrollable container components to automatically hide titlebar and toolbar. + * Binds the **NavDestination** component with a nested scrollable container, + * which can be a List, Scroll, Grid, or WaterFlow component. This way, scrolling in the scrollable container + * triggers the display and hide animations of the title bar and toolbar of all **NavDestination** components that + * are bound to it – scrolling up triggers the hide animation, and scrolling down triggers the show animation. + * A single **NavDestination** component can be bound to multiple nested scrollable containers, and a single nested + * scrollable container can be bound to multiple **NavDestination** components. + * + *

**NOTE**: + * The connection between the scrolling actions and the animations for showing or hiding the title bar + *
and toolbar of the **NavDestination** component takes effect only when the title bar or toolbar is visible. + * If a **NavDestination** component is bound to multiple scrollable containers, scrolling in any of these containers + *
triggers the display or hiding animations of the title bar and toolbar. Specifically, when any scrollable + *
container reaches either the bottom or the top, the display animation for the title bar and + *
toolbar is triggered without delay. As such, to ensure the optimal user experience, + *
avoid triggering scroll events of multiple scrollable containers simultaneously. + *

* - * @param { Array } scrollInfos - The controllers of the nested scrollable container components. + * @param { Array } scrollInfos - Controller of the target nested scrollable containers. + * @returns { NavDestinationAttribute } Returns the instance of the NavDestinationAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1107,33 +1220,41 @@ declare class NavDestinationAttribute extends CommonMethod): NavDestinationAttribute; /** - * Invoked when destination is active. + * Triggered when the **NavDestination** component becomes active (on top of the stack and operable, + * with no special components blocking it). * - * @param { Optional> } callback - Indicates callback when destination is active. + * @param { Optional> } callback - Reason why the **NavDestination** component + * switches from inactive to active. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ onActive(callback: Optional>): NavDestinationAttribute; /** - * Invoked when destination is inactive. + * Triggered when **NavDestination** component becomes inactive + * (not on top of the stack and inoperable, or on top but blocked by special components). * - * @param { Optional> } callback - Indicates callback when destination is inactive. + * @param { Optional> } callback - Reason why the **NavDestination** component + * switches from active to inactive. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ onInactive(callback: Optional>): NavDestinationAttribute; /** - * Set NavDestination custom animation. + * Sets a custom transition animation for the **NavDestination** component. * - * @param { NavDestinationTransitionDelegate } delegate - The delegate of NavDestination custom animation. + *

**NOTE**: + *
If both this attribute and systemTransition are set, whichever is set later takes effect. + *

+ * @param { NavDestinationTransitionDelegate } delegate - Delegate function for custom animations of + * the **NavDestination** component. * @returns { NavDestinationAttribute } Returns the instance of the NavDestinationAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1143,52 +1264,90 @@ declare class NavDestinationAttribute extends CommonMethod> } callback - Indicates callback when destination be pushed with singleton mode. + * Triggered when a **NavDestination** page that already exists in the stack is moved to the top using + * launchMode.MOVE_TO_TOP_SINGLETON or launchMode.POP_TO_SINGLETON. + * + *

**NOTE**: + *
This callback is not triggered by replacePath or replaceDestination. + *

+ * @param { Optional> } callback - Callback triggered by **onNewParam**, with the parameter + * being the data passed to the target page during navigation. * @returns { NavDestinationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onNewParam(callback: Optional>): NavDestinationAttribute; /** - * Set NavDestination's preferred Orientation. + * Sets the display orientation for the **NavDestination** component. After the transition to the NavDestination, + * the system also switches the application's main window to the specified display orientation. + * + *

**NOTE**: + *
This attribute is effective only if the following conditions are all met: + *
1. The **NavDestination** component belongs to the application's main window page, + * and the main window is a full-screen window. + *
2. The size of the **Navigation** container to which the **NavDestination** component belongs occupies + * the entire application page. + *
3. The type of **NavDestination** is STANDARD. + * The actual effect of setting the display orientation depends on the specific device support. + *

* - * @param { Optional } orientation - The preferred Orientation of NavDestination. + * @param { Optional } orientation - Display orientation to set. * @returns { NavDestinationAttribute } Returns the instance of the NavDestinationAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ preferredOrientation(orientation: Optional): NavDestinationAttribute; /** - * Set statusBar to visible or invisible. + * Sets whether to show or hide the system status bar when entering this **NavDestination** component. * - * @param { Optional } enabled - Show statusBar if true, or hide statusBar if false. - * @param { boolean } [animated] - Whether using animation during hiding or showing statusBar, - * using animation if true or not using animation if false. + *

**NOTE**: + *
This attribute is effective only if the following conditions are all met: + *
1. The **NavDestination** component belongs to the application's main window page, and the main window is a + * full-screen window. + *
2. The size of the **Navigation** container to which the **NavDestination** component belongs + * occupies the entire application page. + *
3. The size of the **NavDestination** component occupies the entire **Navigation** container. + *
4. The type of **NavDestination** is STANDARD. + * The actual effect of setting the system status bar depends on the specific device support. + *

+ * @param { Optional } enabled - Whether to show or hide the system status bar when entering the current + *
**NavDestination** component. + * @param { boolean } [animated] - Whether to use an animation to show or hide the system status bar. + *
Default value: **false**. * @returns { NavDestinationAttribute } Returns the instance of the NavDestinationAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ enableStatusBar(enabled: Optional, animated?: boolean): NavDestinationAttribute; /** - * Set navigationIndicator to visible or invisible. + * Sets whether to show or hide the system navigation bar when entering this **NavDestination** component. * - * @param { Optional } enabled - Show navigationIndicator if true, or hide navigationIndicator if false. + *

**NOTE** + * This attribute is effective only if the following conditions are all met: + * 1. The **NavDestination** component belongs to the application's main window page, + *
and the main window is a full-screen window. + * 2. The size of the **Navigation** container to which the **NavDestination** component + *
belongs occupies the entire application page. + * 3. The size of the **NavDestination** component occupies the entire **Navigation** container. + * 4. The type of **NavDestination** is STANDARD. + * The actual effect of setting the system navigation bar depends on the specific device support. + *

+ * @param { Optional } enabled - Whether to show or hide the system navigation bar + * when entering the current **NavDestination** component. * @returns { NavDestinationAttribute } Returns the instance of the NavDestinationAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ enableNavigationIndicator(enabled: Optional): NavDestinationAttribute; } @@ -1240,12 +1399,15 @@ declare const NavDestination: NavDestinationInterface; declare const NavDestinationInstance: NavDestinationAttribute; /** - * Delegate function for NavDestination custom animation. + * Defines the delegate function for custom transition animations of the **NavDestination** component. * * @typedef { function } NavDestinationTransitionDelegate - * @param { NavigationOperation } operation - the operation type of current Navigation animation. - * @param { boolean } isEnter - whether current NavDestination will do enter-type transition. - * @returns { Array | undefined } user-set custom navDestination transitions. + * @param { NavigationOperation } operation - Type of navigation operation for the current page transition. + * @param { boolean } isEnter - Whether the current page is an entry page. + *
**true**: The current page is an entry page. + *
**false**: The current page is not an entry page. + * @returns { Array | undefined } Array of custom animations for the **NavDestination** page. + *
If **undefined** is returned, the default system animation is used. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice diff --git a/api/@internal/component/ets/navigation.d.ts b/api/@internal/component/ets/navigation.d.ts index 8b63cf59734f4d177a2f69a1c3a187ec5be70960..7448217f3f7e616ad94b3f0c54e3530558044043 100644 --- a/api/@internal/component/ets/navigation.d.ts +++ b/api/@internal/component/ets/navigation.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Copyright (c) 2021-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -150,14 +150,14 @@ declare interface NavigationCommonTitle { */ declare interface NavigationCustomTitle { /** - * Sets the custom title builder. + * Custom content of the title bar. * * @type { CustomBuilder } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 */ /** - * Sets the custom title builder. + * Custom content of the title bar. * * @type { CustomBuilder } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -165,7 +165,7 @@ declare interface NavigationCustomTitle { * @since 10 */ /** - * Sets the custom title builder. + * Custom content of the title bar. * * @type { CustomBuilder } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -176,14 +176,14 @@ declare interface NavigationCustomTitle { builder: CustomBuilder; /** - * Sets the custom title height. + * Height of the title bar. * * @type { TitleHeight | Length } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 */ /** - * Sets the custom title height. + * Height of the title bar. * * @type { TitleHeight | Length } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -191,7 +191,7 @@ declare interface NavigationCustomTitle { * @since 10 */ /** - * Sets the custom title height. + * Height of the title bar. * * @type { TitleHeight | Length } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -327,20 +327,20 @@ declare enum NavigationMode { */ declare enum NavBarPosition { /** - * The navigation bar is on the Start of the container + * In navigation split mode, the main column is at the start of the main axis. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 */ /** - * The navigation bar is on the Start of the container + * In navigation split mode, the main column is at the start of the main axis. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * The navigation bar is on the Start of the container + * In navigation split mode, the main column is at the start of the main axis. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -399,20 +399,59 @@ declare enum NavBarPosition { */ declare enum NavigationTitleMode { /** - * The title is free mode. + * When the content is more than one screen in a scrollable component, the + * main title shrinks as the content scrolls down (the subtitle fades out + * with its size remaining unchanged) and restores as the content scrolls + * up to the top. + *
**NOTE** + *
The effect where the main title's size changes in response to content + * scrolling is effective only when **title** is set to **ResourceStr** or + * **NavigationCommonTitle**. If **title** is set to any other value type, the + * main title changes in mere location when pulled down. + *
For this effect to work when the content is less than one screen in a + * scrollable component, set the **options** parameter of the scrollable + * component's edgeEffect attribute to **true**. In the non-scrolling state, the + * height of the title bar is the same as in **Full** mode; in the scrolling state, + * the minimum height of the title bar is the same as in **Mini** mode. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * The title is free mode. + * When the content is more than one screen in a scrollable component, the + * main title shrinks as the content scrolls down (the subtitle fades out + * with its size remaining unchanged) and restores as the content scrolls + * up to the top. + *
**NOTE** + *
The effect where the main title's size changes in response to content + * scrolling is effective only when **title** is set to **ResourceStr** or + * **NavigationCommonTitle**. If **title** is set to any other value type, the + * main title changes in mere location when pulled down. + *
For this effect to work when the content is less than one screen in a + * scrollable component, set the **options** parameter of the scrollable + * component's edgeEffect attribute to **true**. In the non-scrolling state, the + * height of the title bar is the same as in **Full** mode; in the scrolling state, + * the minimum height of the title bar is the same as in **Mini** mode. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * The title is free mode. + * When the content is more than one screen in a scrollable component, the + * main title shrinks as the content scrolls down (the subtitle fades out + * with its size remaining unchanged) and restores as the content scrolls + * up to the top. + *
**NOTE** + *
The effect where the main title's size changes in response to content + * scrolling is effective only when **title** is set to **ResourceStr** or + * **NavigationCommonTitle**. If **title** is set to any other value type, the + * main title changes in mere location when pulled down. + *
For this effect to work when the content is less than one screen in a + * scrollable component, set the **options** parameter of the scrollable + * component's edgeEffect attribute to **true**. In the non-scrolling state, the + * height of the title bar is the same as in **Full** mode; in the scrolling state, + * the minimum height of the title bar is the same as in **Mini** mode. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -422,20 +461,26 @@ declare enum NavigationTitleMode { Free = 0, /** - * The title is full mode. + * The title is fixed at full mode.
Default value: If there is only a main + * title, the title bar height is 112 vp; if there is both a main title and a + * subtitle, the title bar height is 138 vp. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * The title is full mode. + * The title is fixed at full mode.
Default value: If there is only a main + * title, the title bar height is 112 vp; if there is both a main title and a + * subtitle, the title bar height is 138 vp. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * The title is full mode. + * The title is fixed at full mode.
Default value: If there is only a main + * title, the title bar height is 112 vp; if there is both a main title and a + * subtitle, the title bar height is 138 vp. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -445,20 +490,26 @@ declare enum NavigationTitleMode { Full, /** - * The title is mini mode. + * The title is fixed at mini mode. + * Default value:if there is only a main title, The title bar height is 56 vp. + * If there are both a main title and a subtitle, the title bar height is 82 vp. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * The title is mini mode. + * The title is fixed at mini mode. Default value: In versions earlier than API version 12, + * If there is only a main title, the title bar height is 56 vp; if there are both a main title and a subtitle, + * The title bar height is 82 vp. Since API version 12, the title bar height is 56 vp. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * The title is mini mode. + * The title is fixed at mini mode. Default value: In versions earlier than API version 12, + * If there is only a main title, the title bar height is 56 vp; if there are both a main title and a subtitle, + * The title bar height is 82 vp. Since API version 12, the title bar height is 56 vp. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -553,7 +604,7 @@ declare interface NavigationMenuItem { * @since 11 */ /** - * The value of navigation menu item. + * The icon of navigation menu item. * * @type { ?(string | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -571,6 +622,15 @@ declare interface NavigationMenuItem { * @atomicservice * @since 12 */ + /** + * The symbol of navigation menu item. + * + * @type { ?SymbolGlyphModifier } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolIcon?: SymbolGlyphModifier; /** @@ -719,7 +779,7 @@ declare class NavPathInfo { constructor(name: string, param: unknown, onPop?: import('../api/@ohos.base').Callback, isEntry?: boolean); /** - * The name of NavDestination. + * Name of the navigation destination page. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -727,7 +787,7 @@ declare class NavPathInfo { * @since 10 */ /** - * The name of NavDestination. + * Name of the navigation destination page. * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -738,7 +798,7 @@ declare class NavPathInfo { name: string; /** - * The detailed parameter of the NavDestination. + * Detailed parameters of the navigation destination page. * * @type { ?unknown } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -746,7 +806,7 @@ declare class NavPathInfo { * @since 10 */ /** - * The detailed parameter of the NavDestination. + * Detailed parameters of the navigation destination page. * * @type { ?unknown } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -757,7 +817,8 @@ declare class NavPathInfo { param?: unknown; /** - * The callback when next page returns. + * Callback returned when pop is called on the navigation destination page. + * It is invoked only after the **result** parameter is set in pop. * * @type { ?import('../api/@ohos.base').Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -765,7 +826,8 @@ declare class NavPathInfo { * @since 11 */ /** - * The callback when next page returns. + * Callback returned when pop is called on the navigation destination page. + * It is invoked only after the **result** parameter is set in pop. * * @type { ?import('../api/@ohos.base').Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -793,7 +855,7 @@ declare class NavPathInfo { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ navDestinationId?: string; } @@ -809,7 +871,9 @@ declare class NavPathInfo { */ declare enum LaunchMode { /** - * The default mode of stack operation. + * Default navigation stack operation mode.
In this mode, + * push operations add the specified **NavDestination**page to + * the stack; replace operations replace the current top **NavDestination** page. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -841,7 +905,8 @@ declare enum LaunchMode { POP_TO_SINGLETON = 2, /** - * Forced to create a new NavDestination instance. + * This mode creates an instance of **NavDestination**. Compared with + * **STANDARD**, this mode does not reuse the instance with the same name in the stack. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -862,7 +927,8 @@ declare enum LaunchMode { */ declare interface NavigationOptions { /** - * Indicates the launchMode of stack operation. + * Navigation stack operation mode. + *
Default value: **LaunchMode.STANDARD**. * * @type { ?LaunchMode } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -873,7 +939,10 @@ declare interface NavigationOptions { launchMode?: LaunchMode; /** - * Indicates whether the transition is animated. + * Whether to support transition animation. + *
Default value: **true**. + *
**true**: The transition animation is supported. + *
**false**: The transition animation is not supported. * * @type { ?boolean } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -918,7 +987,7 @@ declare class NavPathStack { constructor(); /** - * Pushes the NavDestination into the stack. + * Pushes the navigation destination page specified by **info** onto the navigation stack. * * @param { NavPathInfo } info - Indicates the NavDestination to be pushed. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -926,10 +995,12 @@ declare class NavPathStack { * @since 10 */ /** - * Pushes the NavDestination into the stack. + * Pushes the navigation destination page specified by **info** onto the navigation stack. * * @param { NavPathInfo } info - Indicates the NavDestination to be pushed. - * @param { boolean } [animated] - Indicates whether the transition is animated. + * @param { boolean } [animated] - Whether to support the transition animation. + *
Default value: **true**. + *
**true**: The transition animation is supported. **false**: The transition animation is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -938,7 +1009,8 @@ declare class NavPathStack { pushPath(info: NavPathInfo, animated?: boolean): void; /** - * Pushes the NavDestination into the stack. + * Pushes the navigation destination page specified by **info** onto the navigation stack. + * Depending on the launchMode specified in the **options** parameter, different behaviors will be triggered. * * @param { NavPathInfo } info - Indicates the NavDestination to be pushed. * @param { NavigationOptions } [options] - Indicates options of stack operation. @@ -950,10 +1022,14 @@ declare class NavPathStack { pushPath(info: NavPathInfo, options?: NavigationOptions): void; /** - * Pushes the NavDestination into the stack. + * Pushes the navigation destination page specified by **info** onto + * the navigation stack. This API uses a promise to return the result. * - * @param { NavPathInfo } info - Indicates the NavDestination to be pushed. - * @param { boolean } [animated] - Indicates whether the transition is animated. + * @param { NavPathInfo } info - Information about the navigation destination page. + * @param { boolean } [animated] - Whether to support the transition animation. + *
Default value: **true**. + *
**true**: The transition animation is supported. + *
**false**: The transition animation is not supported. * @returns { Promise } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -967,10 +1043,14 @@ declare class NavPathStack { * @since 11 */ /** - * Pushes the NavDestination into the stack. + * Pushes the navigation destination page specified by **info** onto + * the navigation stack. This API uses a promise to return the result. * - * @param { NavPathInfo } info - Indicates the NavDestination to be pushed. - * @param { boolean } [animated] - Indicates whether the transition is animated. + * @param { NavPathInfo } info - Information about the navigation destination page. + * @param { boolean } [animated] - Whether to support the transition animation. + *
Default value: **true**. + *
**true**: The transition animation is supported. + *
**false**: The transition animation is not supported. * @returns { Promise } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -987,10 +1067,12 @@ declare class NavPathStack { pushDestination(info: NavPathInfo, animated?: boolean): Promise; /** - * Pushes the NavDestination into the stack. + * Pushes the navigation destination page specified by **info** onto the navigation stack. + * This API uses a promise to return the result. Depending on the LaunchMode + * specified in the **options** parameter, different behaviors will be triggered. * - * @param { NavPathInfo } info - Indicates the NavDestination to be pushed. - * @param { NavigationOptions } [options] - Indicates options of stack operation. + * @param { NavPathInfo } info - Information about the navigation destination page. + * @param { NavigationOptions } [options] - Navigation options. * @returns { Promise } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -1021,6 +1103,8 @@ declare class NavPathStack { * @param { string } name - Indicates the name of the NavDestination to be pushed. * @param { unknown } param - Indicates the detailed parameter of the NavDestination to be pushed. * @param { boolean } [animated] - Indicates whether the transition is animated. + *
Default value: **true**. + *
**true**: The transition animation is supported. **false**: The transition animation is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1035,6 +1119,8 @@ declare class NavPathStack { * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed. * @param { import('../api/@ohos.base').Callback } onPop - The callback when next page returns. * @param { boolean } [animated] - Indicates whether the transition is animated. + *
Default value: **true**. + *
**true**: The transition animation is supported. **false**: The transition animation is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 @@ -1046,6 +1132,8 @@ declare class NavPathStack { * @param { Object } param - Indicates the detailed parameter of the NavDestination to be pushed. * @param { import('../api/@ohos.base').Callback } onPop - The callback when next page returns. * @param { boolean } [animated] - Indicates whether the transition is animated. + *
Default value: **true**. + *
**true**: The transition animation is supported. **false**: The transition animation is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1192,6 +1280,8 @@ declare class NavPathStack { * @param { string } name - Indicates name of the new NavDestination in top of stack. * @param { Object } param - Indicates the detailed parameter of the new NavDestination in top of the stack. * @param { boolean } [animated] - Indicates whether the transition is animated. + *
Default value: **true**. + *
**true**: The transition animation is supported.
**false**: The transition animation is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 @@ -1202,6 +1292,8 @@ declare class NavPathStack { * @param { string } name - Indicates name of the new NavDestination in top of stack. * @param { Object } param - Indicates the detailed parameter of the new NavDestination in top of the stack. * @param { boolean } [animated] - Indicates whether the transition is animated. + *
Default value: **true**. + *
**true**: The transition animation is supported.
**false**: The transition animation is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1231,7 +1323,7 @@ declare class NavPathStack { removeByIndexes(indexes: Array): number; /** - * Remove the specified NavDestination by name. + * Removes the navigation destination page specified by **name** from the navigation stack. * * @param { string } name - Indicates the name of the NavDestination to be removed. * @returns { number } Returns the number of removed NavDestinations. @@ -1240,7 +1332,7 @@ declare class NavPathStack { * @since 11 */ /** - * Remove the specified NavDestination by name. + * Removes the navigation destination page specified by **name** from the navigation stack. * * @param { string } name - Indicates the name of the NavDestination to be removed. * @returns { number } Returns the number of removed NavDestinations. @@ -1252,9 +1344,11 @@ declare class NavPathStack { removeByName(name: string): number; /** - * Remove the specified NavDestination by its navDestinationId. + * Removes the navigation destination page specified by **navDestinationId** from + * the navigation stack. **navDestinationId** can be obtained from the onReady callback + * of **NavDestination** or from NavDestinationInfo. * - * @param { string } navDestinationId - Indicates the navDestinationId of the NavDestination to be removed. + * @param { string } navDestinationId - Unique ID of the navigation destination page to remove. * @returns { boolean } Returns true if remove successfully, otherwise returns false. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1274,7 +1368,7 @@ declare class NavPathStack { /** * Pops the top NavDestination out of the stack. * - * @param { boolean } [animated] - Indicates whether the transition is animated. + * @param { boolean } [animated] - Indicates whether the transition is animated. Default value is **true**. * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1284,20 +1378,20 @@ declare class NavPathStack { pop(animated?: boolean): NavPathInfo | undefined; /** - * Pops the top NavDestination out of the stack. + * Pops the top NavDestination out of the stack. Invokes the **onPop** callback to pass the page processing result. * * @param { Object } result - The result of the NavDestination. - * @param { boolean } [animated] - Indicates whether the transition is animated. + * @param { boolean } [animated] - Indicates whether the transition is animated. Default value is **true**. * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Pops the top NavDestination out of the stack. + * Pops the top NavDestination out of the stack. Invokes the **onPop** callback to pass the page processing result. * * @param { Object } result - The result of the NavDestination. - * @param { boolean } [animated] - Indicates whether the transition is animated. + * @param { boolean } [animated] - Indicates whether the transition is animated. Default value is **true**. * @returns { NavPathInfo | undefined } Returns the top NavPathInfo if the stack is not empty, otherwise returns undefined. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1320,6 +1414,8 @@ declare class NavPathStack { * * @param { string } name - Indicates the name of the NavDestination to be popped. * @param { boolean } [animated] - Indicates whether the transition is animated. + *
Default value: **true**. + *
**true**: The transition animation is supported.
**false**: The transition animation is not supported. * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1; * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1329,22 +1425,30 @@ declare class NavPathStack { popToName(name: string, animated?: boolean): number; /** - * Pops the specified NavDestination out of the stack. + * Pops pages until the first navigation destination page. + * That matches **name** from the bottom of the navigation stack is at the top of the stack. + * This API uses the **onPop** callback to pass in the page processing result. * * @param { string } name - Indicates the name of the NavDestination to be popped. * @param { Object } result - The result of the NavDestination. * @param { boolean } [animated] - Indicates whether the transition is animated. + *
Default value: **true**. + *
**true**: The transition animation is supported.
**false**: The transition animation is not supported. * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1; * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Pops the specified NavDestination out of the stack. + * Pops pages until the first navigation destination page. + * That matches **name** from the bottom of the navigation stack is at the top of the stack. + * This API uses the **onPop** callback to pass in the page processing result. * * @param { string } name - Indicates the name of the NavDestination to be popped. * @param { Object } result - The result of the NavDestination. * @param { boolean } [animated] - Indicates whether the transition is animated. + *
Default value: **true**. + *
**true**: The transition animation is supported.
**false**: The transition animation is not supported. * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1; * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1366,6 +1470,8 @@ declare class NavPathStack { * * @param { number } index - Indicates the index of the NavDestination to be popped. * @param { boolean } [animated] - Indicates whether the transition is animated. + *
Default value: **true**. + *
**true**: The transition animation is supported.
**false**: The transition animation is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1379,6 +1485,8 @@ declare class NavPathStack { * @param { number } index - Indicates the index of the NavDestination to be popped. * @param { Object } result - The result of the NavDestination. * @param { boolean } [animated] - Indicates whether the transition is animated. + *
Default value: **true**. + *
**true**: The transition animation is supported.
**false**: The transition animation is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1387,7 +1495,8 @@ declare class NavPathStack { popToIndex(index: number, result: Object, animated?: boolean): void; /** - * Moves the specified NavDestination to stack top. + * Moves the first navigation destination page of this name to the top of stack. + * That matches **name** from the bottom of the navigation stack to the top of the stack. * * @param { string } name - Indicates the name of the NavDestination to be moved to the top. * @returns { number } Returns the index of the NavDestination if it exists in the stack, otherwise returns -1; @@ -1396,7 +1505,8 @@ declare class NavPathStack { * @since 10 */ /** - * Moves the specified NavDestination to stack top. + * Moves the first navigation destination page of this name to the top of stack. + * That matches **name** from the bottom of the navigation stack to the top of the stack. * * @param { string } name - Indicates the name of the NavDestination to be moved to the top. * @param { boolean } [animated] - Indicates whether the transition is animated. @@ -1409,18 +1519,21 @@ declare class NavPathStack { moveToTop(name: string, animated?: boolean): number; /** - * Moves the specified NavDestination to stack top. + * Moves to the top of the navigation stack the navigation destination page specified by **index**. * - * @param { number } index - Indicates the index of the NavDestination to be moved to the top. + * @param { number } index - Index of the navigation destination page. The index is zero-based. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Moves the specified NavDestination to stack top. + * Moves to the top of the navigation stack the navigation destination page specified by **index**. * - * @param { number } index - Indicates the index of the NavDestination to be moved to the top. - * @param { boolean } [animated] - Indicates whether the transition is animated. + * @param { number } index - Index of the navigation destination page. The index is zero-based. + * @param { boolean } [animated] - Whether to support the transition animation. + *
Default value: **true**. + *
**true**: The transition animation is supported. + *
**false**: The transition animation is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1429,16 +1542,19 @@ declare class NavPathStack { moveIndexToTop(index: number, animated?: boolean): void; /** - * Clears the stack. + * Clears the navigation stack. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Clears the stack. + * Clears the navigation stack. * - * @param { boolean } [animated] - Indicates whether the transition is animated. + * @param { boolean } [animated] - Whether to support the transition animation. + *
Default value: **true**. + *
**true**: The transition animation is supported. + *
**false**: The transition animation is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1447,7 +1563,7 @@ declare class NavPathStack { clear(animated?: boolean): void; /** - * Obtains all the NavDestination name in the stack. + * Obtains the names of all navigation destination pages in the navigation stack. * * @returns { Array } Returns all the NavDestination name in the stack; * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1455,7 +1571,7 @@ declare class NavPathStack { * @since 10 */ /** - * Obtains all the NavDestination name in the stack. + * Obtains the names of all navigation destination pages in the navigation stack. * * @returns { Array } Returns all the NavDestination name in the stack; * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1466,19 +1582,21 @@ declare class NavPathStack { getAllPathName(): Array; /** - * Obtains the param of the specified NavDestination. + * Obtains the parameter information of the navigation destination page specified by **index**. * - * @param { number } index - Indicates the index of the NavDestination. - * @returns { unknown | undefined } Returns the detailed parameter of the NavDestination if it exists in the stack, otherwise returns undefined; + * @param { number } index - Index of the navigation destination page. The index is zero-based. + * @returns { unknown | undefined } Returns the detailed parameter of the NavDestination. + *
If it exists in the stack, otherwise returns undefined; * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Obtains the param of the specified NavDestination. + * Obtains the parameter information of the navigation destination page specified by **index**. * - * @param { number } index - Indicates the index of the NavDestination. - * @returns { unknown | undefined } Returns the detailed parameter of the NavDestination if it exists in the stack, otherwise returns undefined; + * @param { number } index - Index of the navigation destination page. The index is zero-based. + * @returns { unknown | undefined } Returns the detailed parameter of the NavDestination. + *
If it exists in the stack, otherwise returns undefined; * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1508,7 +1626,7 @@ declare class NavPathStack { getParamByName(name: string): Array; /** - * Obtains the index of the specified NavDestination. + * Obtains the indexes of all the navigation destination pages that match **name**. * * @param { string } name - Indicates the name of the NavDestination. * @returns { Array } Returns the index of all the NavDestinations. @@ -1517,7 +1635,7 @@ declare class NavPathStack { * @since 10 */ /** - * Obtains the index of the specified NavDestination. + * Obtains the indexes of all the navigation destination pages that match **name**. * * @param { string } name - Indicates the name of the NavDestination. * @returns { Array } Returns the index of all the NavDestinations. @@ -1529,7 +1647,9 @@ declare class NavPathStack { getIndexByName(name: string): Array; /** - * Obtains the parent of the current stack. + * Obtains the parent navigation path stack. + * When a **Navigation** component is nested (directly or indirectly) insider another **Navigation** component, + * The internal one can obtain the navigation path stack of the external one. * * @returns { NavPathStack | null } Returns the parent of the current stack. If no parent, it returns null. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1540,17 +1660,19 @@ declare class NavPathStack { getParent(): NavPathStack | null; /** - * Obtains the size of the stack. + * Obtains the stack size. * - * @returns { number } Returns the size of the stack. + * @returns { number } Stack size. + *
Value range: [0, +∞) * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Obtains the size of the stack. + * Obtains the stack size. * - * @returns { number } Returns the size of the stack. + * @returns { number } Stack size. + *
Value range: [0, +∞) * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1559,17 +1681,23 @@ declare class NavPathStack { size(): number; /** - * disable or enable all transition animation in this navigation stack. + * Disables or enables the transition animation in the **Navigation** component. * - * @param { boolean } value - Indicates whether the transition is animated. + * @param { boolean } value - Whether to disable the transition animation. + *
Default value: **false**. + *
**true**:The transition animation is disabled. + *
**false**: The transition animation is not disabled. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * disable or enable all transition animation in this navigation stack. + * Disables or enables the transition animation in the **Navigation** component. * - * @param { boolean } value - Indicates whether the transition is animated. + * @param { boolean } value - Whether to disable the transition animation. + *
Default value: **false**. + *
**true**:The transition animation is disabled. + *
**false**: The transition animation is not disabled. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1578,9 +1706,9 @@ declare class NavPathStack { disableAnimation(value: boolean): void; /** - * set navigation transition interception.It will be called in navPathStack changes or navigation mode changes. + * Sets the interception callback for navigation page redirection. * - * @param { NavigationInterception } interception - the instance to intercept in navigation changes. + * @param { NavigationInterception } interception - Object to be intercepted during navigation redirection. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1595,7 +1723,7 @@ declare class NavPathStack { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ getPathStack(): Array; @@ -1607,13 +1735,13 @@ declare class NavPathStack { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ setPathStack(pathStack: Array, animated?: boolean): void; } /** - * Navigation home name + * Defines the name of the navigation home page. * * @typedef { 'navBar' } NavBar * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1661,8 +1789,8 @@ declare type InterceptionModeCallback = (mode: NavigationMode) => void; */ declare interface NavigationInterception { /** - * Called before destination transition.NavPathStack can be changed in this callback, - * it will takes effect during this transition.For details, see { @Link InterceptionShowCallback}. + * Interception before page redirection, allowing for stack operations. + * The setting takes effect in the current redirection. * * @type { ?InterceptionShowCallback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1786,13 +1914,17 @@ interface NavigationInterface { */ declare enum ToolbarItemStatus { /** - * Normal state of toolbar item. + * Normal state. In this state, the toolbar item takes on the default style and + * can switch to another state-specific style by responding to the hover, press, + * and focus events. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 10 */ /** - * Normal state of toolbar item. + * Normal state. In this state, the toolbar item takes on the default style and + * can switch to another state-specific style by responding to the hover, press, + * and focus events. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1818,13 +1950,15 @@ declare enum ToolbarItemStatus { DISABLED = 1, /** - * Active state of toolbar item. + * Active state. In this state, the toolbar item can update its icon + * to the one specified by **activeIcon** by responding to a click event. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 10 */ /** - * Active state of toolbar item. + * Active state. In this state, the toolbar item can update its icon + * to the one specified by **activeIcon** by responding to a click event. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1887,14 +2021,14 @@ declare enum NavigationOperation { POP = 2, /** - * Replace operation of navigation transition. + * The transition is page replacement. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Replace operation of navigation transition. + * The transition is page replacement. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1919,6 +2053,15 @@ declare enum NavigationOperation { * @atomicservice * @since 11 */ +/** + * Defines configurable parameters for toolbar item. + * + * @interface ToolbarItem + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ declare interface ToolbarItem { /** * The value of navigation toolbar item. @@ -1966,6 +2109,15 @@ declare interface ToolbarItem { * @atomicservice * @since 12 */ + /** + * The symbol of navigation toolbar item. + * + * @type { ?SymbolGlyphModifier } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolIcon?: SymbolGlyphModifier; /** @@ -2033,6 +2185,15 @@ declare interface ToolbarItem { * @atomicservice * @since 12 */ + /** + * The symbol of navigation toolbar item in active state. + * + * @type { ?SymbolGlyphModifier } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ activeSymbolIcon?: SymbolGlyphModifier; } @@ -2047,7 +2208,7 @@ declare interface ToolbarItem { */ declare interface NavigationTitleOptions { /** - * Background color. + * Background color of the title bar. If this parameter is not set, the default color is used. * * @type { ?ResourceColor } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2058,7 +2219,8 @@ declare interface NavigationTitleOptions { backgroundColor?: ResourceColor; /** - * Background blur style. + * Background blur style of the title bar. If this parameter is not set, the background + * blur effect is disabled. * * @type { ?BlurStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2075,7 +2237,7 @@ declare interface NavigationTitleOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; @@ -2086,12 +2248,13 @@ declare interface NavigationTitleOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; /** - * Set title bar style. + * Layout style of the title bar. + *
Default value: **BarStyle.STANDARD**. * * @type { ?BarStyle } * @default BarStyle.STANDARD @@ -2172,7 +2335,7 @@ declare interface NavigationTitleOptions { */ declare enum BarStyle { /** - * Standard style means that the bar and content area are column layouts. + * In this mode, the title bar or toolbar is laid out above the content area. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2182,7 +2345,7 @@ declare enum BarStyle { STANDARD = 0, /** - * Stack style means that the bar and content area are stack layouts. + * In this mode, the title bar or toolbar is overlaid on top of the content area. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2213,7 +2376,7 @@ declare enum BarStyle { */ declare interface NavigationToolbarOptions { /** - * Background color. + * Background color of the toolbar. If this parameter is not set, the default color is used. * * @type { ?ResourceColor } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2224,7 +2387,8 @@ declare interface NavigationToolbarOptions { backgroundColor?: ResourceColor; /** - * Background blur style. + * Background blur style of the toolbar. If this parameter is not set, the background blur + * effect is disabled. * * @type { ?BlurStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2241,7 +2405,7 @@ declare interface NavigationToolbarOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; @@ -2252,7 +2416,7 @@ declare interface NavigationToolbarOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; @@ -2263,7 +2427,7 @@ declare interface NavigationToolbarOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ moreButtonOptions?: MoreButtonOptions; @@ -2287,7 +2451,7 @@ declare interface NavigationToolbarOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ hideItemValue?: boolean } @@ -2299,7 +2463,7 @@ declare interface NavigationToolbarOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare interface NavigationMenuOptions { /** @@ -2309,7 +2473,7 @@ declare interface NavigationMenuOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ moreButtonOptions?: MoreButtonOptions; } @@ -2321,7 +2485,7 @@ declare interface NavigationMenuOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare interface MoreButtonOptions { /** @@ -2331,7 +2495,7 @@ declare interface MoreButtonOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyle?: BlurStyle; @@ -2342,7 +2506,7 @@ declare interface MoreButtonOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; @@ -2353,7 +2517,7 @@ declare interface MoreButtonOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; } @@ -2384,26 +2548,35 @@ declare interface MoreButtonOptions { */ declare class NavigationAttribute extends CommonMethod { /** - * Sets the width of navigation bar. + * Sets the width of the navigation bar. + * This attribute takes effect only when the **Navigation** component is in split mode. * - * @param { Length } value + * @param { Length } value - Width of the navigation bar. + *
Default value: **240**. Unit: vp. + *
**undefined**: No action is taken, and the navigation bar width remains consistent with the default value. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 */ /** - * Sets the width of navigation bar. + * Sets the width of the navigation bar. + * This attribute takes effect only when the **Navigation** component is in split mode. * - * @param { Length } value + * @param { Length } value - Width of the navigation bar. + *
Default value: **240**. Unit: vp. + *
**undefined**: No action is taken, and the navigation bar width remains consistent with the default value. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets the width of navigation bar. + * Sets the width of the navigation bar. + * This attribute takes effect only when the **Navigation** component is in split mode. * - * @param { Length } value + * @param { Length } value - Width of the navigation bar. + *
Default value: **240**. Unit: vp. + *
**undefined**: No action is taken, and the navigation bar width remains consistent with the default value. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2413,26 +2586,32 @@ declare class NavigationAttribute extends CommonMethod { navBarWidth(value: Length): NavigationAttribute; /** - * Sets the position of navigation bar. + * Sets the position of the navigation bar. This attribute takes effect + * only when the **Navigation** component is split. * - * @param { NavBarPosition } value + * @param { NavBarPosition } value - Position of the navigation bar. + *
Default value: **NavBarPosition.Start**. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 */ /** - * Sets the position of navigation bar. + * Sets the position of the navigation bar. This attribute takes effect + * only when the **Navigation** component is split. * - * @param { NavBarPosition } value + * @param { NavBarPosition } value - Position of the navigation bar. + *
Default value: **NavBarPosition.Start**. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets the position of navigation bar. + * Sets the position of the navigation bar. This attribute takes effect + * only when the **Navigation** component is split. * - * @param { NavBarPosition } value + * @param { NavBarPosition } value - Position of the navigation bar. + *
Default value: **NavBarPosition.Start**. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2442,18 +2621,24 @@ declare class NavigationAttribute extends CommonMethod { navBarPosition(value: NavBarPosition): NavigationAttribute; /** - * Sets the minimum width and the maximum width of navigation bar. + * Sets the minimum and maximum widths of the navigation bar (effective in split mode). * - * @param { [Dimension, Dimension] } value - The minimum and the maximum width of navigation bar. + * @param { [Dimension, Dimension] } value - Minimum and maximum widths of the navigation bar. + *
Default value: 240 for the minimum value; 40% of the component width (not greater than 432) + * for the maximum value; if either of the widths is not set, the default value is used for that width. + *
Unit: vp. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets the minimum width and the maximum width of navigation bar. + * Sets the minimum and maximum widths of the navigation bar (effective in split mode). * - * @param { [Dimension, Dimension] } value - The minimum and the maximum width of navigation bar. + * @param { [Dimension, Dimension] } value - Minimum and maximum widths of the navigation bar. + *
Default value: 240 for the minimum value; 40% of the component width (not greater than 432) + * for the maximum value; if either of the widths is not set, the default value is used for that width. + *
Unit: vp. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2463,18 +2648,28 @@ declare class NavigationAttribute extends CommonMethod { navBarWidthRange(value: [Dimension, Dimension]): NavigationAttribute; /** - * Sets the minimum width of content. + * Sets the minimum width of the navigation bar content area (effective in split mode). * - * @param { Dimension } value - The minimum width of content. + * @param { Dimension } value - Minimum width of the navigation bar content area. + *
Default value: **360**. + *
Unit: vp. + *
**undefined**: No action is taken, and the minimum width of the navigation bar remains + * consistent with the default value.
Breakpoint calculation in Auto mode: default 600 vp = + * minNavBarWidth (240 vp) + minContentWidth (360 vp). * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets the minimum width of content. + * Sets the minimum width of the navigation bar content area (effective in split mode). * - * @param { Dimension } value - The minimum width of content. + * @param { Dimension } value - Minimum width of the navigation bar content area. + *
Default value: **360**. + *
Unit: vp. + *
**undefined**: No action is taken, and the minimum width of the navigation bar remains + * consistent with the default value.
Breakpoint calculation in Auto mode: default 600 vp = + * minNavBarWidth (240 vp) + minContentWidth (360 vp). * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2486,7 +2681,9 @@ declare class NavigationAttribute extends CommonMethod { /** * Sets the mode of navigation. * - * @param { NavigationMode } value + * @param { NavigationMode } value - Display mode of the navigation. + *
Default value: **NavigationMode.Auto**. + *
At the default settings, the navigation adapts to stack or split mode based on the component width. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 @@ -2494,7 +2691,9 @@ declare class NavigationAttribute extends CommonMethod { /** * Sets the mode of navigation. * - * @param { NavigationMode } value + * @param { NavigationMode } value - Display mode of the navigation. + *
Default value: **NavigationMode.Auto**. + *
At the default settings, the navigation adapts to stack or split mode based on the component width. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2503,7 +2702,9 @@ declare class NavigationAttribute extends CommonMethod { /** * Sets the mode of navigation. * - * @param { NavigationMode } value + * @param { NavigationMode } value - Display mode of the navigation. + *
Default value: **NavigationMode.Auto**. + *
At the default settings, the navigation adapts to stack or split mode based on the component width. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2513,26 +2714,26 @@ declare class NavigationAttribute extends CommonMethod { mode(value: NavigationMode): NavigationAttribute; /** - * Sets the back button icon. + * Sets the icon of the back button in the title bar. * - * @param { string | PixelMap | Resource } value + * @param { string | PixelMap | Resource } value - Icon of the back button in the title bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 */ /** - * Sets the back button icon. + * Sets the icon of the back button in the title bar. * - * @param { string | PixelMap | Resource } value + * @param { string | PixelMap | Resource } value - Icon of the back button in the title bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets the back button icon. + * Sets the icon of the back button in the title bar. * - * @param { string | PixelMap | Resource } value + * @param { string | PixelMap | Resource } value - Icon of the back button in the title bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2540,9 +2741,9 @@ declare class NavigationAttribute extends CommonMethod { * @since 11 */ /** - * Sets the back button icon. + * Sets the icon of the back button in the title bar. * - * @param { string | PixelMap | Resource | SymbolGlyphModifier } value + * @param { string | PixelMap | Resource | SymbolGlyphModifier } value - Icon of the back button in the title bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2560,14 +2761,15 @@ declare class NavigationAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backButtonIcon(icon: string | PixelMap | Resource | SymbolGlyphModifier, accessibilityText?: ResourceStr): NavigationAttribute; /** * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in split mode. * - * @param { boolean } value + * @param { boolean } value - Whether to hide the navigation bar. + *
Default value: **false**. **true**: Hide the navigation bar. **false**: Show the navigation bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 @@ -2575,7 +2777,8 @@ declare class NavigationAttribute extends CommonMethod { /** * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in split mode. * - * @param { boolean } value + * @param { boolean } value - Whether to hide the navigation bar. + *
Default value: **false**. **true**: Hide the navigation bar. **false**: Show the navigation bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2585,7 +2788,8 @@ declare class NavigationAttribute extends CommonMethod { * Hide the NavBar, which includes title bar, the child of Navigation and tool bar. Supported in all mode. * It will show top page in the NavPathStack directly or empty if there is no page in the NavPathStack. * - * @param { boolean } value + * @param { boolean } value - Whether to hide the navigation bar. + *
Default value: **false**. **true**: Hide the navigation bar. **false**: Show the navigation bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2605,7 +2809,11 @@ declare class NavigationAttribute extends CommonMethod { /** * Navigation title * - * @param { string | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value + * @param { string | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value - Navigation title. + *
When the NavigationCustomTitle type is used to set the height, titleMode does not take effect. + *
When the title string is too long: + *
If no subtitle is set, the string is scaled down, wrapped in two lines, and then clipped. + *
If a subtitle is set, the subtitle is scaled down and then clipped. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 @@ -2613,7 +2821,11 @@ declare class NavigationAttribute extends CommonMethod { /** * Navigation title * - * @param { ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value + * @param { ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value - Navigation title. + *
When the NavigationCustomTitle type is used to set the height, titleMode does not take effect. + *
When the title string is too long: + *
If no subtitle is set, the string is scaled down, wrapped in two lines, and then clipped. + *
If a subtitle is set, the subtitle is scaled down and then clipped. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2622,7 +2834,11 @@ declare class NavigationAttribute extends CommonMethod { /** * Navigation title * - * @param { ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value + * @param { ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle } value - Navigation title. + *
When the NavigationCustomTitle type is used to set the height, titleMode does not take effect. + *
When the title string is too long: + *
If no subtitle is set, the string is scaled down, wrapped in two lines, and then clipped. + *
If a subtitle is set, the subtitle is scaled down and then clipped. * @param { NavigationTitleOptions } [options] - Indicates the options of titlebar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2633,9 +2849,9 @@ declare class NavigationAttribute extends CommonMethod { title(value: ResourceStr | CustomBuilder | NavigationCommonTitle | NavigationCustomTitle, options?: NavigationTitleOptions): NavigationAttribute; /** - * Navigation subtitle + * Sets the subtitle of the navigation. * - * @param { string } value + * @param { string } value - Content of subtitle. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 @@ -2647,7 +2863,8 @@ declare class NavigationAttribute extends CommonMethod { /** * Hide navigation title bar * - * @param { boolean } value + * @param { boolean } value - Whether to hide the title bar. + *
Default value is **false**. **true**: Hide the title bar. **false**: Show the title bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 @@ -2655,7 +2872,8 @@ declare class NavigationAttribute extends CommonMethod { /** * Hide navigation title bar * - * @param { boolean } value + * @param { boolean } value - Whether to hide the title bar. + *
Default value is **false**. **true**: Hide the title bar. **false**: Show the title bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2664,7 +2882,8 @@ declare class NavigationAttribute extends CommonMethod { /** * Hide navigation title bar * - * @param { boolean } value + * @param { boolean } value - Whether to hide the title bar. + *
Default value is **false**. **true**: Hide the title bar. **false**: Show the title bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2674,10 +2893,13 @@ declare class NavigationAttribute extends CommonMethod { hideTitleBar(value: boolean): NavigationAttribute; /** - * Hide navigation title bar + * Sets whether to hide the title bar and whether to animate the visibility change. * - * @param { boolean } hide - * @param { boolean } animated + * @param { boolean } hide - Whether to hide the title bar. + *
Default value is **false**. **true**: Hide the title bar. **false**: Show the title bar. + * @param { boolean } animated - Whether to animate the visibility change. + *
Default value is **false**. + *
**true**: Animate the visibility change. **false**: Do not animate the visibility change. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2687,26 +2909,32 @@ declare class NavigationAttribute extends CommonMethod { hideTitleBar(hide: boolean, animated: boolean): NavigationAttribute; /** - * Hide navigation back button + * Sets whether to hide the back button in the title bar. + * The back button is available only when titleMode is set to **NavigationTitleMode.Mini**. * - * @param { boolean } value + * @param { boolean } value - Whether to hide the back button in the title bar. + *
Default value: **false**. **true**: Hide the back button. **false**: Show the back button. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Hide navigation back button + * Sets whether to hide the back button in the title bar. + * The back button is available only when titleMode is set to **NavigationTitleMode.Mini**. * - * @param { boolean } value + * @param { boolean } value - Whether to hide the back button in the title bar. + *
Default value: **false**. **true**: Hide the back button. **false**: Show the back button. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Hide navigation back button + * Sets whether to hide the back button in the title bar. + * The back button is available only when titleMode is set to **NavigationTitleMode.Mini**. * - * @param { boolean } value + * @param { boolean } value - Whether to hide the back button in the title bar. + *
Default value: **false**. **true**: Hide the back button. **false**: Show the back button. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2716,26 +2944,29 @@ declare class NavigationAttribute extends CommonMethod { hideBackButton(value: boolean): NavigationAttribute; /** - * Navigation title mode + * Sets the display mode of the navigation title mode. * - * @param { NavigationTitleMode } value + * @param { NavigationTitleMode } value - Display mode of the page title bar. + *
Default value: **NavigationTitleMode.Free** * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Navigation title mode + * Sets the display mode of the navigation title mode. * - * @param { NavigationTitleMode } value + * @param { NavigationTitleMode } value - Display mode of the page title bar. + *
Default value: **NavigationTitleMode.Free** * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Navigation title mode + * Sets the display mode of the navigation title mode. * - * @param { NavigationTitleMode } value + * @param { NavigationTitleMode } value - Display mode of the page title bar. + *
Default value: **NavigationTitleMode.Free** * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2745,26 +2976,38 @@ declare class NavigationAttribute extends CommonMethod { titleMode(value: NavigationTitleMode): NavigationAttribute; /** - * Navigation title bar's menus + * Sets the menu items in the upper right corner of the navigation. + * If this attribute is not set, no menu item is displayed. When the value type is NavigationMenuItem, + * The menu shows a maximum of three icons in portrait mode and a maximum of five icons in landscape mode, + * With excess icons (if any) placed under the automatically generated **More** icon. * - * @param { Array | CustomBuilder } value + * @param { Array | CustomBuilder } value - + *
Menu items in the upper right corner of the navigation. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Navigation title bar's menus + * Sets the menu items in the upper right corner of the navigation. + * If this attribute is not set, no menu item is displayed. When the value type is NavigationMenuItem, + * The menu shows a maximum of three icons in portrait mode and a maximum of five icons in landscape mode, + * With excess icons (if any) placed under the automatically generated **More** icon. * - * @param { Array | CustomBuilder } value + * @param { Array | CustomBuilder } value - + *
Menu items in the upper right corner of the navigation. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Navigation title bar's menus + * Sets the menu items in the upper right corner of the navigation. + * If this attribute is not set, no menu item is displayed. When the value type is NavigationMenuItem, + * The menu shows a maximum of three icons in portrait mode and a maximum of five icons in landscape mode, + * With excess icons (if any) placed under the automatically generated **More** icon. * - * @param { Array | CustomBuilder } value + * @param { Array | CustomBuilder } value - + *
Menu items in the upper right corner of the navigation. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2782,14 +3025,18 @@ declare class NavigationAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ menus(items: Array | CustomBuilder, options?: NavigationMenuOptions): NavigationAttribute; /** - * Tool bar + * Sets the content of the toolbar. If this attribute is not set, no toolbar is displayed. + * Toolbar items are evenly distributed on the bottom toolbar, with text and icons evenly + * spaced in each content area. If any item contains overlong text and there are fewer than + * five items, the toolbar will reduce the text size progressively, wrap the text over two + * lines if necessary, and then clip the text to fit. * - * @param { object | CustomBuilder } value + * @param { object | CustomBuilder } value - Content of the toolbar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 @@ -2799,7 +3046,7 @@ declare class NavigationAttribute extends CommonMethod { toolBar(value: object | CustomBuilder): NavigationAttribute; /** - * Configure toolbar with default style parameter or custom parameter. + * Sets the content of the toolbar. If this attribute is not set, no toolbar is displayed. * * @param { Array | CustomBuilder } value - Toolbar configuration parameters. * @returns { NavigationAttribute } @@ -2808,7 +3055,7 @@ declare class NavigationAttribute extends CommonMethod { * @since 10 */ /** - * Configure toolbar with default style parameter or custom parameter. + * Sets the content of the toolbar. If this attribute is not set, no toolbar is displayed. * * @param { Array | CustomBuilder } value - Toolbar configuration parameters. * @param { NavigationToolbarOptions } [options] - Indicates the options of toolbar. @@ -2823,7 +3070,8 @@ declare class NavigationAttribute extends CommonMethod { /** * Hide tool bar * - * @param { boolean } value + * @param { boolean } value - Whether to hide the toolbar. + *
Default value: **false**. **true**: Hide the toolbar. **false**: Show the toolbar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 @@ -2831,7 +3079,8 @@ declare class NavigationAttribute extends CommonMethod { /** * Hide tool bar * - * @param { boolean } value + * @param { boolean } value - Whether to hide the toolbar. + *
Default value: **false**. **true**: Hide the toolbar. **false**: Show the toolbar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2840,7 +3089,8 @@ declare class NavigationAttribute extends CommonMethod { /** * Hide tool bar * - * @param { boolean } value + * @param { boolean } value - Whether to hide the toolbar. + *
Default value: **false**. **true**: Hide the toolbar. **false**: Show the toolbar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2850,10 +3100,13 @@ declare class NavigationAttribute extends CommonMethod { hideToolBar(value: boolean): NavigationAttribute; /** - * Hide tool bar + * Sets whether to hide the toolbar and whether to animate the visibility change. * - * @param { boolean } hide - * @param { boolean } animated + * @param { boolean } hide - Whether to hide the toolbar. + *
Default value: **false**. **true**: Hide the toolbar. **false**: Show the toolbar. + * @param { boolean } animated - Whether to animate the visibility change. + *
Default value: **false**. + *
**true**: Animate the visibility change. **false**: Do not animate the visibility change. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2870,12 +3123,13 @@ declare class NavigationAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ enableToolBarAdaptation(enable: Optional): NavigationAttribute; /** - * Trigger callback when title mode change finished at free mode. + * Triggered when titleMode is set to **NavigationTitleMode.Free** + * and the title bar mode changes as content scrolls. * * @param { (titleMode: NavigationTitleMode) => void } callback * @returns { NavigationAttribute } @@ -2883,7 +3137,8 @@ declare class NavigationAttribute extends CommonMethod { * @since 8 */ /** - * Trigger callback when title mode change finished at free mode. + * Triggered when titleMode is set to **NavigationTitleMode.Free** + * and the title bar mode changes as content scrolls. * * @param { function } callback * @returns { NavigationAttribute } @@ -2892,7 +3147,8 @@ declare class NavigationAttribute extends CommonMethod { * @since 10 */ /** - * Trigger callback when title mode change finished at free mode. + * Triggered when titleMode is set to **NavigationTitleMode.Free** + * and the title bar mode changes as content scrolls. * * @param { function } callback * @returns { NavigationAttribute } @@ -2906,7 +3162,8 @@ declare class NavigationAttribute extends CommonMethod { /** * Trigger callback when the visibility of navigation bar change. * - * @param { (isVisible: boolean) => void } callback + * @param { (isVisible: boolean) => void } callback - Whether the navigation bar is visible. + *
The value **true** means that the navigation bar is visible, and **false** means the opposite. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 @@ -2914,7 +3171,8 @@ declare class NavigationAttribute extends CommonMethod { /** * Trigger callback when the visibility of navigation bar change. * - * @param { function } callback + * @param { function } callback - Whether the navigation bar is visible. + *
The value **true** means that the navigation bar is visible, and **false** means the opposite. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2923,7 +3181,8 @@ declare class NavigationAttribute extends CommonMethod { /** * Trigger callback when the visibility of navigation bar change. * - * @param { function } callback + * @param { function } callback - Whether the navigation bar is visible. + *
The value **true** means that the navigation bar is visible, and **false** means the opposite. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2933,7 +3192,8 @@ declare class NavigationAttribute extends CommonMethod { onNavBarStateChange(callback: (isVisible: boolean) => void): NavigationAttribute; /** - * Trigger callback when navigation mode changes. + * Triggered when the **Navigation** component is displayed for the first time or + * its display mode switches between Stack and Split. * * @param { function } callback * @returns { NavigationAttribute } @@ -2948,6 +3208,8 @@ declare class NavigationAttribute extends CommonMethod { * Set builder for user-defined NavDestination component. * * @param { function } builder - The builder function of NavDestination component. + *
**name**: name of the navigation destination page. + *
**param**: detailed parameters of the navigation destination page. * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2957,6 +3219,8 @@ declare class NavigationAttribute extends CommonMethod { * Set builder for user-defined NavDestination component. * * @param { function } builder - The builder function of NavDestination component. + *
**name**: name of the navigation destination page. + *
**param**: detailed parameters of the navigation destination page. * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2987,10 +3251,12 @@ declare class NavigationAttribute extends CommonMethod { customNavContentTransition(delegate: (from: NavContentInfo, to: NavContentInfo, operation: NavigationOperation) => NavigationAnimatedTransition | undefined): NavigationAttribute; /** - * Set navigation content expand types and edges. + * Ignores the layout safe area by allowing the component to extend into the non-safe areas of the screen. * - * @param { Array } [types] - Indicates the types of the safe area. - * @param { Array } [edges] - Indicates the edges of the safe area. + * @param { Array } [types] - Types of non-safe areas to extend into. + *
Default value:
[LayoutSafeAreaType.SYSTEM]. + * @param { Array } [edges] - Edges for expanding the safe area. + *
Default value:
[LayoutSafeAreaEdge.TOP, LayoutSafeAreaEdge.BOTTOM]. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3000,9 +3266,9 @@ declare class NavigationAttribute extends CommonMethod { ignoreLayoutSafeArea(types?: Array, edges?: Array): NavigationAttribute; /** - * Set the style of system bar + * Sets the style of the system status bar when the navbar of the **Navigation** component is displayed. * - * @param { Optional } style - The properties of system bar + * @param { Optional } style - Style of the system status bar. * @returns { NavigationAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -3044,6 +3310,18 @@ declare class NavigationAttribute extends CommonMethod { * @since 15 */ enableModeChangeAnimation(isEnabled: Optional): NavigationAttribute; + + /** + * Set placeholder in split mode. + * + * @param { ComponentContent } placeholder - Set placeholder in split mode. + * @returns { NavigationAttribute } Returns the instance of the NavigationAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + splitPlaceholder(placeholder: ComponentContent): NavigationAttribute; } /** @@ -3220,7 +3498,9 @@ declare interface NavigationTransitionProxy { finishTransition(): void; /** - * Notification system transition animation canceled. + * Cancels this interactive transition animation, restoring the navigation + * stack to its state before page redirection. (Non-interactive transition + * animations cannot be canceled.) * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3230,7 +3510,8 @@ declare interface NavigationTransitionProxy { cancelTransition?(): void; /** - * Notification system transition animation update. + * Updates the progress of this interactive transition animation. (Non-interactive + * animations do not support setting the animation progress). * * @param { number } progress - The progress of transition animation. * @syscap SystemCapability.ArkUI.ArkUI.Full diff --git a/api/@internal/component/ets/page_transition.d.ts b/api/@internal/component/ets/page_transition.d.ts index eeb29f55a0b52032f6e8147f88475269d1dea969..1ee6c15fac5035805d5b306b9d36fde7df14bbf9 100644 --- a/api/@internal/component/ets/page_transition.d.ts +++ b/api/@internal/component/ets/page_transition.d.ts @@ -355,12 +355,13 @@ declare class CommonTransition { /** * Called when the translation effect of page transition is set. * + * Anonymous Object Rectification. * @param { TranslateOptions } value * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ translate(value: TranslateOptions): T; @@ -394,12 +395,13 @@ declare class CommonTransition { /** * Called when setting the zoom effect of page transition. * + * Anonymous Object Rectification. * @param { ScaleOptions } value * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ scale(value: ScaleOptions): T; @@ -563,7 +565,7 @@ declare interface PageTransitionOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ declare type PageTransitionCallback = (type: RouteType, progress: number) => void; @@ -657,12 +659,13 @@ interface PageTransitionEnterInterface extends CommonTransition = [T1, T2]; @@ -36,7 +36,7 @@ declare type ParticleTuple = [T1, T2]; * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ declare interface VelocityOptions { /** @@ -54,6 +54,16 @@ declare interface VelocityOptions { * @atomicservice * @since 11 */ + /** + * Particle speed. + * + * Anonymous Object Rectification. + * @type { ParticleTuple } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ speed: ParticleTuple; /** @@ -71,6 +81,16 @@ declare interface VelocityOptions { * @atomicservice * @since 11 */ + /** + * Angle of particle's direction. + * + * Anonymous Object Rectification. + * @type { ParticleTuple } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ angle: ParticleTuple; } @@ -81,7 +101,7 @@ declare interface VelocityOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ declare interface AccelerationOptions< ACC_SPEED_UPDATER extends ParticleUpdater, @@ -102,6 +122,16 @@ declare interface AccelerationOptions< * @atomicservice * @since 11 */ + /** + * Speed property options. + * + * Anonymous Object Rectification. + * @type { ?ParticlePropertyOptions } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ speed?: ParticlePropertyOptions; /** @@ -119,6 +149,16 @@ declare interface AccelerationOptions< * @atomicservice * @since 11 */ + /** + * Angle property options. + * + * Anonymous Object Rectification. + * @type { ?ParticlePropertyOptions } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ angle?: ParticlePropertyOptions; } @@ -239,12 +279,14 @@ interface ParticleOptions< */ /** * Particle velocity. + * + * Anonymous Object Rectification. * @type { ?VelocityOptions } * @default {speed:[0,0];angle:[0,0]} * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ velocity?: VelocityOptions; @@ -267,12 +309,14 @@ interface ParticleOptions< */ /** * Particle acceleration. + * + * Anonymous Object Rectification. * @type { ?AccelerationOptions } * @default {speed:{range:[0,0]};angle:{range:[0,0]}} * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ acceleration?: AccelerationOptions; @@ -380,11 +424,13 @@ interface ImageParticleParameters { */ /** * Particle image size. + * + * Anonymous Object Rectification. * @type { ParticleTuple } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ size: ParticleTuple; @@ -513,6 +559,17 @@ interface EmitterProperty { * @since 12 */ size?: SizeT; + + /** + * the description of the annulus region. This parameter is valid only for emitter whose shape is annulus. + * + * @type { ?ParticleAnnulusRegion } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + annulusRegion?: ParticleAnnulusRegion; } /** @@ -522,7 +579,7 @@ interface EmitterProperty { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ interface EmitterParticleOptions { /** @@ -540,6 +597,16 @@ interface EmitterParticleOptions { * @atomicservice * @since 11 */ + /** + * Particle type. + * + * Anonymous Object Rectification. + * @type { PARTICLE } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ type: PARTICLE; /** * Particle config. @@ -556,6 +623,16 @@ interface EmitterParticleOptions { * @atomicservice * @since 11 */ + /** + * Particle config. + * + * Anonymous Object Rectification. + * @type { ParticleConfigs[PARTICLE] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ config: ParticleConfigs[PARTICLE]; /** @@ -573,6 +650,16 @@ interface EmitterParticleOptions { * @atomicservice * @since 11 */ + /** + * Particle count. + * + * Anonymous Object Rectification. + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ count: number; /** @@ -592,6 +679,17 @@ interface EmitterParticleOptions { * @atomicservice * @since 11 */ + /** + * Particle lifetime. + * + * Anonymous Object Rectification. + * @type { ?number } + * @default 1000 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ lifetime?: number; /** @@ -604,6 +702,18 @@ interface EmitterParticleOptions { * @atomicservice * @since 12 */ + /** + * Particle lifetimeRange,value range [0, ∞). + * when lifetimeRange>lifetime,minimum lifetime is 0. + * + * Anonymous Object Rectification. + * @type { ?number } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ lifetimeRange?: number; } @@ -640,11 +750,13 @@ interface EmitterOptions { */ /** * Set particle config. + * + * Anonymous Object Rectification. * @type { EmitterParticleOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ particle: EmitterParticleOptions; @@ -711,12 +823,14 @@ interface EmitterOptions { * Position of emitter. * The first element means X-axis location. * The second element means the Y-axis location. + * + * Anonymous Object Rectification. * @type { ?ParticleTuple } * @default [0,0] * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ position?: ParticleTuple; @@ -745,14 +859,28 @@ interface EmitterOptions { * Size of emitter. * The first element means emitter width. * The second element means emitter height. + * + * Anonymous Object Rectification. * @type { ?ParticleTuple } * @default ['100%','100%'] * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ size?: ParticleTuple; + + /** + * the description of the annulus region. This parameter is valid only for emitter whose shape is annulus. + * + * @type { ?ParticleAnnulusRegion } + * @default {innerRadius:LengthMetrics.vp(0),outerRadius:LengthMetrics.vp(0)} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + annulusRegion?: ParticleAnnulusRegion; } /** @@ -807,11 +935,13 @@ interface ParticlePropertyUpdaterConfigs { */ /** * Random effect of particle updater. + * + * Anonymous Object Rectification. * @type { ParticleTuple } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ [ParticleUpdater.RANDOM]: ParticleTuple; @@ -840,7 +970,7 @@ interface ParticlePropertyUpdaterConfigs { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ interface ParticleUpdaterOptions { /** @@ -858,6 +988,16 @@ interface ParticleUpdaterOptions { * @atomicservice * @since 11 */ + /** + * Particle updater type. + * + * Anonymous Object Rectification. + * @type { UPDATER } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ type: UPDATER; /** @@ -875,6 +1015,16 @@ interface ParticleUpdaterOptions { * @atomicservice * @since 11 */ + /** + * Particle updater configuration. + * + * Anonymous Object Rectification. + * @type { ParticlePropertyUpdaterConfigs[UPDATER] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ config: ParticlePropertyUpdaterConfigs[UPDATER]; } @@ -885,7 +1035,7 @@ interface ParticleUpdaterOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ interface ParticleColorOptions { /** @@ -903,6 +1053,16 @@ interface ParticleColorOptions { * @atomicservice * @since 11 */ + /** + * Red component of particle color. + * + * Anonymous Object Rectification. + * @type { ParticleTuple } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ r: ParticleTuple; /** @@ -920,6 +1080,16 @@ interface ParticleColorOptions { * @atomicservice * @since 11 */ + /** + * Green component of particle color. + * + * Anonymous Object Rectification. + * @type { ParticleTuple } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ g: ParticleTuple; /** @@ -937,6 +1107,16 @@ interface ParticleColorOptions { * @atomicservice * @since 11 */ + /** + * Blue component of particle color. + * + * Anonymous Object Rectification. + * @type { ParticleTuple } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ b: ParticleTuple; /** @@ -954,6 +1134,16 @@ interface ParticleColorOptions { * @atomicservice * @since 11 */ + /** + * Opacity component of particle color. + * + * Anonymous Object Rectification. + * @type { ParticleTuple } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ a: ParticleTuple; } @@ -964,7 +1154,7 @@ interface ParticleColorOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ interface ParticleColorUpdaterOptions { /** @@ -982,6 +1172,16 @@ interface ParticleColorUpdaterOptions { * @atomicservice * @since 11 */ + /** + * Color updater. + * + * Anonymous Object Rectification. + * @type { UPDATER } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ type: UPDATER; /** @@ -999,6 +1199,16 @@ interface ParticleColorUpdaterOptions { * @atomicservice * @since 11 */ + /** + * Color updater configuration. + * + * Anonymous Object Rectification. + * @type { ParticleColorPropertyUpdaterConfigs[UPDATER] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ config: ParticleColorPropertyUpdaterConfigs[UPDATER]; } @@ -1035,11 +1245,13 @@ interface ParticlePropertyOptions { */ /** * Initial range, within which the initial value are randomly generated. + * + * Anonymous Object Rectification. * @type { ParticleTuple } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ range: ParticleTuple; @@ -1062,12 +1274,14 @@ interface ParticlePropertyOptions { */ /** * Particle property updater. + * + * Anonymous Object Rectification. * @type { ?ParticleUpdaterOptions } * @default {type:UPDATER.NONE;config:ParticlePropertyUpdaterConfigs[UPDATER.NONE]} * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ updater?: ParticleUpdaterOptions; } @@ -1124,11 +1338,13 @@ interface ParticleColorPropertyUpdaterConfigs { */ /** * Random effect of particle color property updater. + * + * Anonymous Object Rectification. * @type { ParticleColorOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ [ParticleUpdater.RANDOM]: ParticleColorOptions; @@ -1185,11 +1401,13 @@ interface ParticleColorPropertyOptions { */ /** * Initial color range, within which the initial color is randomly generated. + * + * Anonymous Object Rectification. * @type { ParticleTuple } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ range: ParticleTuple; @@ -1223,12 +1441,14 @@ interface ParticleColorPropertyOptions { */ /** * Particle color property updater. + * + * Anonymous Object Rectification. * @type { ?ParticleColorUpdaterOptions } * @default {type:UPDATER.NONE;config:ParticleColorPropertyUpdaterConfigs[UPDATER.NONE]} * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ updater?: ParticleColorUpdaterOptions; } @@ -1344,7 +1564,7 @@ interface ParticlePropertyAnimation { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ interface Particles< PARTICLE extends ParticleType, @@ -1370,6 +1590,16 @@ interface Particles< * @atomicservice * @since 11 */ + /** + * Array of particles. + * + * Anonymous Object Rectification. + * @type { Array> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ particles: Array< ParticleOptions< PARTICLE, @@ -1420,13 +1650,15 @@ interface ParticleInterface { */ /** * create a particle array. + * + * Anonymous Object Rectification. * @param { Particles } particles - Array of particles. * @returns { ParticleAttribute } Returns the particle attribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ < PARTICLE extends ParticleType, @@ -1554,6 +1786,15 @@ declare enum ParticleEmitterShape { * @since 11 */ ELLIPSE = 'ellipse', + + /** + * Annulus. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + ANNULUS = 'annulus', } /** @@ -1881,4 +2122,68 @@ declare enum DisturbanceFieldShape { */ ELLIPSE -} \ No newline at end of file +} + +/** + * Defines particle annuslus region params. + * @interface ParticleAnnulusRegion + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare interface ParticleAnnulusRegion { + /** + * The coordinates of the center of the annulus + * + * @type { ?PositionT } + * @default {x:LengthMetrics.percent(0.5),y:LengthMetrics.percent(0.5)} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + center?: PositionT, + /** + * The outer radius of the annulus + * + * @type { LengthMetrics } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + outerRadius: LengthMetrics, + /** + * The inner radius of the annulus + * + * @type { LengthMetrics } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + innerRadius: LengthMetrics, + /** + * The start angle of the annulus, in degree + * + * @type { ?number } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + startAngle?: number, + /** + * The end angle of the annulus, in degree + * + * @type { ?number } + * @default 360 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + endAngle?: number, +} diff --git a/api/@internal/component/ets/path.d.ts b/api/@internal/component/ets/path.d.ts index 520a2a2daba4affd10e84ea30e7483d2e9fa4470..924c278aab7f3d87fd494716412e1134c466ef20 100644 --- a/api/@internal/component/ets/path.d.ts +++ b/api/@internal/component/ets/path.d.ts @@ -59,7 +59,27 @@ declare interface PathOptions { * @atomicservice * @since 11 */ - width?: number | string; + /** + * Width option. + * Anonymous Object Rectification. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Width option. + * @type { ?Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + width?: Length; /** * Height option. @@ -91,7 +111,27 @@ declare interface PathOptions { * @atomicservice * @since 11 */ - height?: number | string; + /** + * Height option. + * Anonymous Object Rectification. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Height option. + * @type { ?Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + height?: Length; /** * Commands option. @@ -123,7 +163,27 @@ declare interface PathOptions { * @atomicservice * @since 11 */ - commands?: string + /** + * Commands option. + * Anonymous Object Rectification. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Commands option. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + commands?: ResourceStr; } /** @@ -201,6 +261,7 @@ interface PathInterface { */ /** * Use new to create Path. + * Annonymous Object Rectification. * * @param { PathOptions } [options] - path options * @returns { PathAttribute } @@ -252,6 +313,7 @@ interface PathInterface { */ /** * Called when drawing path. + * Anonymous Object Rectification. * * @param { PathOptions } [options] - path options * @returns { PathAttribute } @@ -337,7 +399,18 @@ declare class PathAttribute extends CommonShapeMethod { * @atomicservice * @since 11 */ - commands(value: string): PathAttribute; + /** + * Called when the command string drawn by the path is set. + * + * @param { ResourceStr } value + * @returns { PathAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + commands(value: ResourceStr): PathAttribute; } /** diff --git a/api/@internal/component/ets/pattern_lock.d.ts b/api/@internal/component/ets/pattern_lock.d.ts index 2678e8fc41147c6f5aa58e5785eb2cea9719b145..5abde1178a519bb625045f790d2380bebb58d81c 100644 --- a/api/@internal/component/ets/pattern_lock.d.ts +++ b/api/@internal/component/ets/pattern_lock.d.ts @@ -155,7 +155,7 @@ declare class PatternLockController { * @since 10 */ /** - * constructor. + * A constructor used to create a PatternLockController instance. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -178,7 +178,7 @@ declare class PatternLockController { * @since 10 */ /** - * Reset pattern lock. + * Resets the component status. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -195,8 +195,8 @@ declare class PatternLockController { * @since 11 */ /** - * Set challenge result. - * @param { PatternLockChallengeResult } result - The challenge result based on input pattern. + * Sets the authentication challenge result for the pattern password. + * @param { PatternLockChallengeResult } result - Authentication challenge result of the pattern password. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -303,9 +303,13 @@ declare class PatternLockAttribute extends CommonMethod { * @since 10 */ /** - * The square side length of pattern lock component. + * Sets the width and height (same value) of the component. * - * @param { Length } value + *

NOTE: + *
If this attribute is set to 0 or a negative number, the component is not displayed. + *

+ * + * @param { Length } value - Width and height of the component, Default value is 288vp. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -332,9 +336,13 @@ declare class PatternLockAttribute extends CommonMethod { * @since 10 */ /** - * Circle radius. + * Sets the radius of the dots in a grid. * - * @param { Length } value + *

NOTE: + *
If this attribute is set to 0 or a negative value, the default value is used. + *

+ * + * @param { Length } value - Radius of the dots in a grid, Default value is 6vp. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -361,9 +369,9 @@ declare class PatternLockAttribute extends CommonMethod { * @since 10 */ /** - * The background color. + * Sets the background color. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Background color. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -390,9 +398,9 @@ declare class PatternLockAttribute extends CommonMethod { * @since 10 */ /** - * Regular color. + * Sets the fill color of the grid dot in the unselected state. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Fill color of the grid dot in the unselected state, Default value is '#ff182431'. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -419,9 +427,9 @@ declare class PatternLockAttribute extends CommonMethod { * @since 10 */ /** - * The color when cell is selected. + * Sets the fill color of the grid dot in the selected state. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Fill color of the grid dot in the selected state, Default value is '#ff182431'. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -448,9 +456,9 @@ declare class PatternLockAttribute extends CommonMethod { * @since 10 */ /** - * The color when cell is active state. + * Sets the fill color of the grid dot in the activated state, which is when the dot is highlighted but not selected. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Fill color of the grid dot in the activated state, Default value is '#ff182431'. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -477,9 +485,9 @@ declare class PatternLockAttribute extends CommonMethod { * @since 10 */ /** - * The path line color. + * Sets the path color. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Path color, Default value is '#33182431'. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -506,9 +514,13 @@ declare class PatternLockAttribute extends CommonMethod { * @since 10 */ /** - * The path line stroke width. + * Sets the width of the path stroke. * - * @param { number | string } value + *

NOTE: + *
If this attribute is set to **0** or a negative value, the path stroke is not displayed. + *

+ * + * @param { number | string } value - Width of the path stroke, Default value is 12vp. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -535,7 +547,7 @@ declare class PatternLockAttribute extends CommonMethod { * @since 10 */ /** - * Called when the pattern input completed. + * Invoked when the pattern password input is complete. * * @param { function } callback * @returns { PatternLockAttribute } @@ -564,9 +576,11 @@ declare class PatternLockAttribute extends CommonMethod { * @since 10 */ /** - * Called when judging whether the input state can be reset by touch pattern lock. + * Sets whether to allow the user to reset the component status (that is, clear the input) by touching the component + * again after the input is complete. * - * @param { boolean } value + * @param { boolean } value - Whether to allow the user to reset the component status (that is, clear the input) by + * touching the component again after the input is complete, Default value is true. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -584,7 +598,8 @@ declare class PatternLockAttribute extends CommonMethod { * @since 11 */ /** - * Called when connecting to a grid dot. + * Invoked when a grid dot is connected during pattern password input. + * * @param { import('../api/@ohos.base').Callback } callback - A callback instance used when connection to a grid dot. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -595,9 +610,9 @@ declare class PatternLockAttribute extends CommonMethod { onDotConnect(callback: import('../api/@ohos.base').Callback): PatternLockAttribute; /** - * The activate circle style. + * Sets the background circle style for the dots in a grid when they are in the activated state. * - * @param { Optional } options - the circle style setting options + * @param { Optional } options - Background circle style of the dots in the activated state. * @returns { PatternLockAttribute } PatternLockAttribute * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -607,9 +622,10 @@ declare class PatternLockAttribute extends CommonMethod { activateCircleStyle(options: Optional): PatternLockAttribute; /** - * Skip unselected point that the path passes through. + * Sets whether unselected dots in the grid are automatically selected when the password path passes over them. * - * @param { boolean } skipped + * @param { boolean } skipped - Whether unselected dots in the grid are automatically selected when the password + * path passes over them, Default value is false. * @returns { PatternLockAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform diff --git a/api/@internal/component/ets/plugin_component.d.ts b/api/@internal/component/ets/plugin_component.d.ts index 47db459dc188115646507bda91c92250ae90d02e..62733df68dffaaa268b70e83c2f9b191c9f474a5 100644 --- a/api/@internal/component/ets/plugin_component.d.ts +++ b/api/@internal/component/ets/plugin_component.d.ts @@ -49,11 +49,12 @@ interface PluginComponentTemplate { /** * Define options used to construct a plugin component. + * AnonyMous Object Rectification * * @interface PluginComponentOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi - * @since 14 + * @since 18 */ declare interface PluginComponentOptions { /** @@ -63,6 +64,14 @@ declare interface PluginComponentOptions { * @systemapi * @since 9 */ + /** + * Plugin component template. + * AnonyMous Object Rectification + * @type { PluginComponentTemplate } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ template: PluginComponentTemplate; /** @@ -72,16 +81,25 @@ declare interface PluginComponentOptions { * @systemapi * @since 9 */ + /** + * Plugin component data. + * AnonyMous Object Rectification + * @type { any } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ data: any; } /** * Data provided when an error occurs. + * AnonyMous Object Rectification * * @interface PluginErrorData * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi - * @since 14 + * @since 18 */ declare interface PluginErrorData { /** @@ -91,6 +109,14 @@ declare interface PluginErrorData { * @systemapi * @since 9 */ + /** + * Error code. + * AnonyMous Object Rectification + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ errcode: number; /** @@ -100,17 +126,26 @@ declare interface PluginErrorData { * @systemapi * @since 9 */ + /** + * Error message. + * AnonyMous Object Rectification + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 18 + */ msg: string; } /** * Callback invoked when an error occurs. + * AnonyMous Object Rectification * * @typedef { function } PluginErrorCallback * @param { PluginErrorData } info - Plugin error data * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi - * @since 14 + * @since 18 */ declare type PluginErrorCallback = (info: PluginErrorData) => void; @@ -134,12 +169,13 @@ interface PluginComponentInterface { */ /** * Called when setting the plugin. + * AnonyMous Object Rectification * * @param { PluginComponentOptions } options - Plugin component options * @returns { PluginComponentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi - * @since 14 + * @since 18 */ (options: PluginComponentOptions): PluginComponentAttribute; } @@ -164,12 +200,13 @@ declare class PluginComponentAttribute extends CommonMethod { */ /** * Called when a picture is set. + * Anonymous Object Rectification. * * @param { StarStyleOptions } options - star style options * @returns { RatingAttribute } diff --git a/api/@internal/component/ets/rect.d.ts b/api/@internal/component/ets/rect.d.ts index e1f1784e6da36a45d7baa3fbe74c982c711c16b2..a382feb79cf29d864fca05a505c21f219dccf129 100644 --- a/api/@internal/component/ets/rect.d.ts +++ b/api/@internal/component/ets/rect.d.ts @@ -63,7 +63,28 @@ declare interface RectOptions { * @atomicservice * @since 11 */ - width?: number | string; + /** + * Rectangle width. + * Anonymous Object Rectification. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Rectangle width. + * + * @type { ?Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + width?: Length; /** * Rectangle height. @@ -99,7 +120,28 @@ declare interface RectOptions { * @atomicservice * @since 11 */ - height?: number | string; + /** + * Rectangle height. + * Anonymous Object Rectification. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Rectangle height. + * + * @type { ?Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + height?: Length; /** * Corner radius of the rectangle. @@ -135,7 +177,28 @@ declare interface RectOptions { * @atomicservice * @since 11 */ - radius?: number | string | Array; + /** + * Corner radius of the rectangle. + * Anonymous Object Rectification. + * + * @type { ?(number | string | Array) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Corner radius of the rectangle. + * + * @type { ?(Length | Array) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + radius?: Length | Array; } /** @@ -183,7 +246,28 @@ declare interface RoundedRectOptions { * @atomicservice * @since 11 */ - width?: number | string; + /** + * Rectangle width. + * Anonymous Object Rectification. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Rectangle width. + * + * @type { ?Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + width?: Length; /** * Rectangle height. @@ -219,7 +303,28 @@ declare interface RoundedRectOptions { * @atomicservice * @since 11 */ - height?: number | string; + /** + * Rectangle height. + * Anonymous Object Rectification. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Rectangle height. + * + * @type { ?Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + height?: Length; /** * Width of the corner radius. @@ -255,7 +360,28 @@ declare interface RoundedRectOptions { * @atomicservice * @since 11 */ - radiusWidth?: number | string; + /** + * Width of the corner radius. + * Anonymous Object Rectification. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Width of the corner radius. + * + * @type { ?Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + radiusWidth?: Length; /** * Height of the corner radius. @@ -291,7 +417,28 @@ declare interface RoundedRectOptions { * @atomicservice * @since 11 */ - radiusHeight?: number | string; + /** + * Height of the corner radius. + * Anonymous Object Rectification. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ + /** + * Height of the corner radius. + * + * @type { ?Length } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + radiusHeight?: Length; } /** @@ -369,6 +516,7 @@ interface RectInterface { */ /** * Use new function to create Rect. + * Anonymous Object Rectification. * * @param { RectOptions | RoundedRectOptions } [options] - Rect options * @returns { RectAttribute } @@ -426,6 +574,7 @@ interface RectInterface { */ /** * Called when a rectangle is created. + * Anonymous Object Rectification. * * @param { RectOptions | RoundedRectOptions } [options] - Rect options * @returns { RectAttribute } @@ -513,7 +662,18 @@ declare class RectAttribute extends CommonShapeMethod { * @atomicservice * @since 11 */ - radiusWidth(value: number | string): RectAttribute; + /** + * Called when the fillet width is set. + * + * @param { Length } value + * @returns { RectAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + radiusWidth(value: Length): RectAttribute; /** * Called when the fillet height is set. @@ -553,7 +713,18 @@ declare class RectAttribute extends CommonShapeMethod { * @atomicservice * @since 11 */ - radiusHeight(value: number | string): RectAttribute; + /** + * Called when the fillet height is set. + * + * @param { Length } value + * @returns { RectAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + radiusHeight(value: Length): RectAttribute; /** * Called when the fillet size is set. @@ -593,7 +764,18 @@ declare class RectAttribute extends CommonShapeMethod { * @atomicservice * @since 11 */ - radius(value: number | string | Array): RectAttribute; + /** + * Called when the fillet size is set. + * + * @param { Length | Array } value + * @returns { RectAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + radius(value: Length | Array): RectAttribute; } /** diff --git a/api/@internal/component/ets/refresh.d.ts b/api/@internal/component/ets/refresh.d.ts index 592efa7b41d7abb0ad7535789da6c95b5f913303..11e2b9e59ad997bc279caeed16b8779d9cc8272f 100644 --- a/api/@internal/component/ets/refresh.d.ts +++ b/api/@internal/component/ets/refresh.d.ts @@ -487,6 +487,18 @@ declare class RefreshAttribute extends CommonMethod { * @since 12 */ pullDownRatio(ratio: Optional): RefreshAttribute; + + /** + * The max pull down distance for Refresh. + * + * @param { Optional } distance - The max pull down distance for Refresh, default value is { undefined }. + * @returns { RefreshAttribute } The attribute of the Refresh. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + maxPullDownDistance(distance: Optional): RefreshAttribute; } /** diff --git a/api/@internal/component/ets/repeat.d.ts b/api/@internal/component/ets/repeat.d.ts index 6af6579320ffaa14b5911dc1bce322f7733d0342..3fcae59edd83fe581fd960de81a64e55adc8e080 100644 --- a/api/@internal/component/ets/repeat.d.ts +++ b/api/@internal/component/ets/repeat.d.ts @@ -92,7 +92,7 @@ interface VirtualScrollOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onLazyLoading?(index: number): void; @@ -103,7 +103,7 @@ interface VirtualScrollOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onTotalCount?(): number; } @@ -142,7 +142,7 @@ interface TemplateOptions { * @atomicservice * @since 12 */ -declare type TemplateTypedFunc = (item : T, index : number) => string; +declare type TemplateTypedFunc = (item: T, index: number) => string; /** * Define builder function to render one template type. @@ -173,7 +173,7 @@ declare type RepeatItemBuilder = (repeatItem: RepeatItem) => void; * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ declare class RepeatAttribute extends DynamicNode> { /** @@ -223,7 +223,7 @@ declare class RepeatAttribute extends DynamicNode> { * @atomicservice * @since 12 */ - template(type : string, itemBuilder: RepeatItemBuilder, templateOptions?: TemplateOptions): RepeatAttribute; + template(type: string, itemBuilder: RepeatItemBuilder, templateOptions?: TemplateOptions): RepeatAttribute; /** * Typed function to render specific type of data item. * diff --git a/api/@internal/component/ets/rich_editor.d.ts b/api/@internal/component/ets/rich_editor.d.ts index 3ef4e32d0d56dd91f90c239df7b806c0587f9f7e..b83d6aa2ffcc5c1f4fb4aa957ecba28ca4c52b83 100644 --- a/api/@internal/component/ets/rich_editor.d.ts +++ b/api/@internal/component/ets/rich_editor.d.ts @@ -154,6 +154,37 @@ declare enum RichEditorSpanType { DEFAULT = 4, } +/** + * Defines undo style. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare enum UndoStyle { + /** + * Undo without style. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + CLEAR_STYLE = 0, + + /** + * Undo keep style. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + KEEP_STYLE = 1, +} + /** * ResponseType for contextMenu * @@ -597,6 +628,17 @@ declare interface RichEditorParagraphStyle { */ textAlign?: TextAlign; + /** + * Vertical alignment of text. + * + * @type { ?TextVerticalAlign } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + textVerticalAlign?: TextVerticalAlign; + /** * Leading margin. * @@ -645,7 +687,7 @@ declare interface RichEditorParagraphStyle { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ paragraphSpacing?: number; } @@ -1548,7 +1590,7 @@ declare interface RichEditorTextSpanResult { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ urlStyle?: RichEditorUrlStyle; } @@ -2040,7 +2082,7 @@ declare interface RichEditorTextSpanOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ urlStyle?: RichEditorUrlStyle; } @@ -2346,7 +2388,7 @@ declare interface RichEditorUpdateTextSpanStyleOptions extends RichEditorSpanSty * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ urlStyle?: RichEditorUrlStyle; } @@ -2748,6 +2790,17 @@ declare interface RichEditorChangeValue { * @since 12 */ replacedSymbolSpans: Array; + + /** + * The reason for text changes. + * + * @type { ?TextChangeReason } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @atomicservice + * @since 20 + */ + changeReason?: TextChangeReason; } /** @@ -3048,6 +3101,17 @@ declare class RichEditorBaseController implements TextEditControllerEx { */ setTypingStyle(value: RichEditorTextStyle): void; + /** + * Set the typing paragraph style. + * + * @param { RichEditorParagraphStyle } style - set the typing paragraph style. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + setTypingParagraphStyle(style: RichEditorParagraphStyle): void; + /** * Text selection is achieved by specifying the start and end positions of the rich editor. * @@ -3169,7 +3233,18 @@ declare class RichEditorController extends RichEditorBaseController { * @atomicservice * @since 11 */ - addTextSpan(value: string, options?: RichEditorTextSpanOptions): number; + /** + * Add a text span. + * + * @param { ResourceStr } content - text value. + * @param { RichEditorTextSpanOptions } [options] - span info. + * @returns { number } span index + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + addTextSpan(content: ResourceStr, options?: RichEditorTextSpanOptions): number; /** * Add a image span. @@ -3424,6 +3499,15 @@ declare class RichEditorStyledStringController extends RichEditorBaseController * @atomicservice * @since 12 */ + /** + * Get the StyledString of the RichEditor. + * + * @returns { MutableStyledString } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ getStyledString(): MutableStyledString; /** @@ -4018,6 +4102,18 @@ declare class RichEditorAttribute extends CommonMethod { */ maxLines(maxLines: Optional): RichEditorAttribute; + /** + * Whether to enable automatic spacing between Chinese and Latin characters. + * + * @param { Optional } enable - The default value is false, indicates the flag whether to enable automatic spacing. + * @returns { RichEditorAttribute } returns the instance of the RichEditorAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + enableAutoSpacing(enable: Optional): RichEditorAttribute; + /** * Set the keyboard appearance. * @@ -4039,6 +4135,18 @@ declare class RichEditorAttribute extends CommonMethod { * @since 18 */ stopBackPress(isStopped: Optional): RichEditorAttribute; + + /** + * Set undo style. + * + * @param { Optional } style - Default value is UndoStyle.CLEAR_STYLE. + * @returns { RichEditorAttribute } returns the instance of the RichEditorAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + undoStyle(style: Optional): RichEditorAttribute; } /** @@ -4089,7 +4197,7 @@ declare interface CopyEvent { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare interface RichEditorUrlStyle { /** @@ -4099,7 +4207,7 @@ declare interface RichEditorUrlStyle { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ url?: ResourceStr; } diff --git a/api/@internal/component/ets/rich_text.d.ts b/api/@internal/component/ets/rich_text.d.ts index 043b0b8aac358a79354cb2db83be9cd2deea84ed..2f0984f0502bbd2f849adde94e98e24ed6551ac8 100644 --- a/api/@internal/component/ets/rich_text.d.ts +++ b/api/@internal/component/ets/rich_text.d.ts @@ -70,7 +70,16 @@ interface RichTextInterface { * @crossplatform * @since 12 */ - (content: string): RichTextAttribute; + /** + * Set value. + * + * @param { string | Resource } content + * @returns { RichTextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ + (content: string | Resource): RichTextAttribute; } /** diff --git a/api/@internal/component/ets/row.d.ts b/api/@internal/component/ets/row.d.ts index f05a61a938df25b773d0e32217033ccecd45cc2a..36d502a1feb9129f65a79c70a37b64d30d47b1cb 100644 --- a/api/@internal/component/ets/row.d.ts +++ b/api/@internal/component/ets/row.d.ts @@ -26,7 +26,7 @@ * @crossplatform * @form * @atomicservice - * @since 14 + * @since 18 */ declare interface RowOptions { /** @@ -63,6 +63,17 @@ declare interface RowOptions { * @atomicservice * @since 11 */ + /** + * Row spacing. + * + * Anonymous Object Rectification + * @type { ?(string | number) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ space?: string | number; } @@ -166,18 +177,20 @@ interface RowInterface { /** * Called when the layout is set in the horizontal direction. * + * Anonymous Object Rectification * @param { ?RowOptions } options - row options * @returns { RowAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form * @atomicservice - * @since 14 + * @since 18 */ (options?: RowOptions): RowAttribute; /** * Called when the layout is set in the horizontal direction. * + * Anonymous Object Rectification * @param { ?(RowOptions | RowOptionsV2) } options - row options * @returns { RowAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full diff --git a/api/@internal/component/ets/save_button.d.ts b/api/@internal/component/ets/save_button.d.ts index ca52593e8e2faf3e09c7877938e26577d88326d4..c1f1563e882f2b62e467576c235d28714c861e5a 100644 --- a/api/@internal/component/ets/save_button.d.ts +++ b/api/@internal/component/ets/save_button.d.ts @@ -482,6 +482,78 @@ declare class SaveButtonAttribute extends SecurityComponentMethodNOTE + *
A value less than 0 evaluates to the default value. + *

* * @type { ?number } + * @default 1000 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -308,9 +315,10 @@ declare interface ScrollAnimationOptions { duration?: number; /** - * Set the curve of the animation. + * Scrolling curve. * * @type { ?(Curve | ICurve) } + * @default Curve.Ease * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -319,7 +327,12 @@ declare interface ScrollAnimationOptions { curve?: Curve | ICurve; /** - * Set whether the animation can over the boundary. + * Whether to enable overscroll. + * + *

NOTE + *
Scrolling can exceed the boundary and initiate a bounce animation when this parameter is set to true, + * and the component's edgeEffect attribute is set to EdgeEffect.Spring. + *

* * @type { ?boolean } * @default false @@ -332,7 +345,7 @@ declare interface ScrollAnimationOptions { } /** - * OffsetOptions info. + * Provides parameters for setting the initial scrolling offset. * * @interface OffsetOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -342,9 +355,10 @@ declare interface ScrollAnimationOptions { */ declare interface OffsetOptions { /** - * The X-axis offset. + * Horizontal scrolling offset. * * @type { ?Dimension } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -353,9 +367,10 @@ declare interface OffsetOptions { xOffset?: Dimension; /** - * The y-axis offset. + * Vertical scrolling offset. * * @type { ?Dimension } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -364,6 +379,41 @@ declare interface OffsetOptions { yOffset?: Dimension; } +/** + * Defines a UIScrollableCommonEvent which is used to set different common event to target component. + * + * @extends UIScrollableCommonEvent + * @interface UIScrollEvent + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ +declare interface UIScrollEvent extends UIScrollableCommonEvent { + /** + * Set or reset the callback which is triggered when the Scroll will scroll. + * + * @param { ScrollOnWillScrollCallback | undefined } callback - callback function, triggered when + * the Scroll will scroll. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnWillScroll(callback: ScrollOnWillScrollCallback | undefined): void; + + /** + * Set or reset the callback which is triggered when the Scroll did scroll. + * + * @param { ScrollOnScrollCallback | undefined } callback - callback function, triggered when the Scroll did scroll. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnDidScroll(callback: ScrollOnScrollCallback | undefined): void; +} + /** * Scroller * @@ -378,7 +428,18 @@ declare interface OffsetOptions { * @since 10 */ /** - * Scroller + * Defines a controller for scrollable container components. + * + *

NOTE + *
1. The binding of a Scroller instance to a scrollable container component occurs during the component creation phase. + *
2. Scroller APIs can only be effectively called after the Scroller instance is bound to a scrollable container component. + * Otherwise, depending on the API called, it may have no effect or throw an exception. + *
3. For example, with aboutToAppear, this callback is executed after a new instance of a custom component is + * created and before its build() method is called. + * Therefore, if a scrollable component is defined within the build method of a custom component, + * the internal scrollable component has not yet been created during the aboutToAppear callback + * of that custom component, and therefore the Scroller APIs cannot be called effectively. + *

* * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -400,7 +461,7 @@ declare class Scroller { * @since 10 */ /** - * constructor. + * A constructor used to create a Scroller object. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -434,9 +495,10 @@ declare class Scroller { * @since 11 */ /** - * Called when the setting slides to the specified position. + * Scrolls to the specified position. + * Anonymous Object Rectification. * - * @param { ScrollOptions } options - scroll options + * @param { ScrollOptions } options - Parameters for scrolling to the specified position. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -469,10 +531,12 @@ declare class Scroller { * @since 11 */ /** - * Called when scrolling to the edge of the container. + * Scrolls to the edge of the container, regardless of the scroll axis direction. * - * @param { Edge } value - Edge type of the container. - * @param { ScrollEdgeOptions } [options] - Options of scrolling to edge. + * @param { Edge } value - Edge position to scroll to. + *
Atomic service API: This API can be used in atomic services since API version 11. + * @param { ScrollEdgeOptions } [options] - Mode of scrolling to the edge position. + *
Atomic service API: This API can be used in atomic services since API version 12. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -481,10 +545,13 @@ declare class Scroller { scrollEdge(value: Edge, options?: ScrollEdgeOptions); /** - * Fling the scroll view. + * Performs inertial scrolling based on the initial velocity passed in. * - * @param { number } velocity - initial velocity of fling, in vp/s. - * @throws { BusinessError } 401 - Parameter error. Possible causes: + * @param { number } velocity - Initial velocity of inertial scrolling. Unit: vp/s + *
NOTE + *
If the value specified is 0, it is considered as invalid, and the scrolling for this instance will not take effect. + * A positive value indicates scrolling towards the top, while a negative value indicates scrolling towards the bottom. + * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. @@ -521,9 +588,9 @@ declare class Scroller { * @since 11 */ /** - * Called when page turning mode is set. + * Scrolls to the next or previous page. * - * @param { ScrollPageOptions } value + * @param { ScrollPageOptions } value - Page turning mode. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -532,9 +599,11 @@ declare class Scroller { scrollPage(value: ScrollPageOptions); /** - * Called when page turning mode is set. + * Scrolls to the next or previous page. * - * @param { object } value + * @param { boolean } next - Whether to turn to the next page. + * The value true means to scroll to the next page, and false means to scroll to the previous page. + * @param { Axis } direction - Scrolling direction: horizontal or vertical. * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 * @deprecated since 9 @@ -555,7 +624,7 @@ declare class Scroller { * @since 10 */ /** - * Called when viewing the scroll offset. + * Obtains the current scrolling offset. * * @returns { OffsetResult } Returns the current scrolling offset. If the scroller not bound to a component, the return value is void. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -596,12 +665,25 @@ declare class Scroller { * @since 11 */ /** - * Scroll to the specified index. - * - * @param { number } value - Index to jump to. - * @param { boolean } [smooth] - If true, scroll to index item with animation. If false, scroll to index item without animation. - * @param { ScrollAlign } [align] - Sets the alignment mode of a specified index. - * @param { ScrollToIndexOptions } [options] - Sets the options of a specified index, such as extra offset. + * Scrolls to a specified index, with support for setting an extra offset for the scroll. + * + *

NOTE + *
This API only works for the ArcList, Grid, List, and WaterFlow components. + *

+ * + * @param { number } value - Index of the item to be scrolled to in the container. + *
NOTE + *
If the value set is a negative value or greater than the maximum index of the items in the container, + * the value is deemed abnormal, and no scrolling will be performed. + * @param { boolean } [smooth] - Whether to enable the smooth animation for scrolling to the item with the specified index. + * The value true means to enable that the smooth animation, and false means the opposite.
Default value: false + * @param { ScrollAlign } [align] - How the list item to scroll to is aligned with the container. + *
Default value when the container is List: ScrollAlign.START + *
Default value when the container is Grid: ScrollAlign.AUTO + *
Default value when the container is WaterFlow: ScrollAlign.START + *
NOTE + *
This parameter is only available for the List, Grid, and WaterFlow components. + * @param { ScrollToIndexOptions } [options] - Options for scrolling to a specified index, for example, an extra offset for the scroll.
Default value: 0, in vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -627,10 +709,14 @@ declare class Scroller { * @since 10 */ /** - * Called when the setting slides by offset. + * Scrolls by the specified amount. + * + *

NOTE + *
This API is available for the ArcList, Scroll, List, Grid, and WaterFlow components. + *

* - * @param { Length } dx - * @param { Length } dy + * @param { Length } dx - Amount to scroll by in the horizontal direction. The percentage format is not supported. + * @param { Length } dy - Amount to scroll by in the vertical direction. The percentage format is not supported. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -647,7 +733,11 @@ declare class Scroller { * @since 10 */ /** - * Indicates whether the component scrolls to the end position. + * Checks whether the component has scrolled to the bottom. + * + *

NOTE + *
This API is available for the ArcList, Scroll, List, Grid, and WaterFlow components. + *

* * @returns { boolean } Returns whether the component scrolls to the end position. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -662,7 +752,7 @@ declare class Scroller { * * @param { number } index - Index of the item. * @returns { RectResult } Returns the size and position. - * @throws { BusinessError } 401 - Parameter error. Possible causes: + * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. @@ -672,11 +762,18 @@ declare class Scroller { * @since 11 */ /** - * Get child item size and position. - * - * @param { number } index - Index of the item. + * Obtains the size and position of a child component relative to its container. + * + *

NOTE + *
- The value of index must be the index of a child component visible in the display area. + * Otherwise, the value is considered invalid. + *
- The value of index must be the index of a child component visible in the display area. Otherwise, + * the value is considered invalid. + *

+ * + * @param { number } index - Index of the target child component. * @returns { RectResult } Returns the size and position. - * @throws { BusinessError } 401 - Parameter error. Possible causes: + * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. @@ -689,10 +786,14 @@ declare class Scroller { getItemRect(index: number): RectResult; /** - * Get item index by position. + * Obtains the index of a child component based on coordinates. + * + *

NOTE + *
The returned index is -1 for invalid coordinates. + *

* - * @param { number } x - X coordinate relative to the upper left corner of the current component's original area, in vp. - * @param { number } y - Y coordinate relative to the upper left corner of the current component's original area, in vp. + * @param { number } x - X-coordinate, in vp. + * @param { number } y - Y-coordinate, in vp. * @returns { number } Index of the item. * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. @@ -708,7 +809,7 @@ declare class Scroller { } /** - * Define scroll options. + * Provides parameters for scrolling to a specific position in a scrollable container. * * @interface ScrollOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -734,6 +835,24 @@ declare interface ScrollOptions { * @atomicservice * @since 11 */ + /** + * Horizontal scrolling offset. + * Anonymous Object Rectification. + * + *

NOTE + *
This parameter cannot be set in percentage. + *
If the value is less than 0, the offset will be 0 for non-animated scrolling. + * Animated scrolling stops at the starting position by default. + * By setting the animation parameter, you can enable a bounce effect when the scrolling goes beyond the boundary. + *
This parameter takes effect only when the scroll axis is the x-axis. + *

+ * + * @type { number | string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ xOffset: number | string; /** @@ -753,6 +872,24 @@ declare interface ScrollOptions { * @atomicservice * @since 11 */ + /** + * Vertical scrolling offset. + * Anonymous Object Rectification. + * + *

NOTE + *
This parameter cannot be set in percentage. + *
If the value is less than 0, the offset will be 0 for non-animated scrolling. + * Animated scrolling stops at the starting position by default. + * By setting the animation parameter, you can enable a bounce effect when the scrolling goes beyond the boundary. + *
This parameter takes effect only when the scroll axis is the y-axis. + *

+ * + * @type { number | string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ yOffset: number | string; /** @@ -784,11 +921,39 @@ declare interface ScrollOptions { * @atomicservice * @since 12 */ + /** + * Animation configuration + * Anonymous Object Rectification. + * + *

NOTE + *
Currently, the List, Scroll, Grid, and WaterFlow support the Boolean type and ICurve. + *

+ * + * @type { ?( ScrollAnimationOptions | boolean) } The ScrollAnimationOptions type provides custom animation parameters + * and the boolean type enables default spring animation. + * @default ScrollAnimationOptions: { duration: 1000, curve: Curve.Ease, canOverScroll: false } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ animation?: ScrollAnimationOptions | boolean; + + /** + * Set whether the scroll target position can over the boundary. + * + * @type { ?boolean } whether the scroll target position can over the boundary. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + canOverScroll?: boolean; } /** - * Define scroll page options + * Provides parameters for page scrolling behavior. + * * @interface ScrollPageOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -796,7 +961,8 @@ declare interface ScrollOptions { */ declare interface ScrollPageOptions { /** - * Control whether to scroll to the next page or the previous page. + * Whether to turn to the next page.The value true means to scroll to the next page, + * and false means to scroll to the previous page. * * @type { boolean } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -807,7 +973,8 @@ declare interface ScrollPageOptions { next: boolean; /** - * Set whether the scrollPage have animate. + * Whether to enable the page-turning animation.The value true means to enable the page-turning animation, + * and false means the opposite. * * @type { ?boolean } * @default false @@ -827,7 +994,7 @@ declare interface ScrollPageOptions { * @since 10 */ /** - * Define scroll snap options + * Defines a scroll snapping mode object. * * @interface ScrollSnapOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -843,9 +1010,10 @@ declare interface ScrollSnapOptions { * @since 10 */ /** - * Set scroll snap alignment. + * Alignment mode for the scroll snap position. * * @type { ScrollSnapAlign } + * @default ScrollSnapAlign.NONE * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 11 @@ -863,9 +1031,16 @@ declare interface ScrollSnapOptions { * @since 10 */ /** - * Set snap positions. When the type of snapPositions is Dimension, Scroll content is paginated by an integer - * multiple of snapPositions. When the type of snapPositions is Array, Scroll content is paginated based - * on the array of snapPositions. + * Pagination points for scroll snapping. + * + *

NOTE + *
1. If the value is of the Dimension type, it indicates the size of each page, and the system will paginate based on this size. + *
2. If the value is of the Array\ type, each Dimension represents a pagination point, + * and the system will paginate accordingly. Each Dimension value must be within the [0, scrollable distance] range. + *
3. If this parameter is not set or Dimension is set to a value less than or equal to 0, the value is regarded as an invalid value. + * In this case, there is no scroll snapping. When the value is of the Array\ type, the items in the array must be monotonically increasing. + *
4. When the value is a percentage, the actual size is the product of the viewport of the Scroll component and the percentage value. + *

* * @type { ?(Dimension | Array) } * @default 100% @@ -884,7 +1059,13 @@ declare interface ScrollSnapOptions { * @since 10 */ /** - * Set whether the beginning of the Scroll content counts an a snap. + * Whether to enable the snap to start feature. When scroll snapping is defined for the Scroll component, + * setting this parameter to false enables the component to scroll between the start and the first page. + * + *

NOTE + *
2. This attribute takes effect only when snapPagination is set to a value of the Array\ type; + * it does not work with values of the Dimension type. + *

* * @type { ?boolean } * @default true @@ -903,7 +1084,13 @@ declare interface ScrollSnapOptions { * @since 10 */ /** - * Set whether the end of the Scroll content counts an a snap. + * Whether to enable the snap to end feature. When scroll snapping is defined for the Scroll component, + * setting this parameter to false enables the component to scroll between the end and the last page. + * + *

NOTE + *
2. This attribute takes effect only when snapPagination is set to a value of the Array\ type; + * it does not work with values of the Dimension type. + *

* * @type { ?boolean } * @default true @@ -970,10 +1157,10 @@ interface ScrollInterface { } /** - * Defines a Scroll onScrollEdge callback. + * Represents the callback triggered when scrolling reaches an edge. * * @typedef { function } OnScrollEdgeCallback - * @param { Edge } side - the edge position scrolled to + * @param { Edge } side - Edge position to scroll to. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1015,15 +1202,25 @@ interface OnScrollFrameBeginHandlerResult { * @atomicservice * @since 11 */ + /** + * Actual scroll offset. + * Anonymous Object Rectification. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ offsetRemain: number; } /** - * Defines a Scroll onScrollFrameBegin callback. + * Represents the callback triggered before each frame scrolling starts. * * @typedef { function } OnScrollFrameBeginCallback - * @param { number } offset - The upcoming sliding amount, unit vp - * @param { ScrollState } state - current sliding status + * @param { number } offset - Amount to scroll by, in vp. + * @param { ScrollState } state - Current scroll state. * @returns { OnScrollFrameBeginHandlerResult } data - the scroll data return by handler * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1075,9 +1272,9 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the scroll method is slid. + * Sets the scrolling direction. * - * @param { ScrollDirection } value + * @param { ScrollDirection } value - Scrolling direction.
Default value: ScrollDirection.Vertical * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1104,7 +1301,14 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the setting slides to the specified position. + * Triggered to return the horizontal and vertical offsets, in vp, during scrolling when the specified scroll event occurs. + * + *

NOTE + *
1. This event is triggered when scrolling is started by the Scroll component or other input settings, + * such as keyboard and mouse operations. + *
2. This event is triggered when the controller API is called. + *
3. This event supports the out-of-bounds bounce effect. + *

* * @param { function } event * @returns { ScrollAttribute } @@ -1119,9 +1323,16 @@ declare class ScrollAttribute extends ScrollableCommonMethod { onScroll(event: (xOffset: number, yOffset: number) => void): ScrollAttribute; /** - * Called when the Scroll will scroll. - * - * @param { ScrollOnWillScrollCallback } handler - callback of Scroll + * Triggered before scrolling. + * + *

NOTE + *
1. This event is triggered when scrolling is started by the Scroll component or other input settings, + * such as keyboard and mouse operations. + *
2. This event is triggered when the controller API is called. + *
3. This event supports the out-of-bounds bounce effect. + *

+ * + * @param { ScrollOnWillScrollCallback } handler - Callback triggered before scrolling. * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1131,10 +1342,16 @@ declare class ScrollAttribute extends ScrollableCommonMethod { onWillScroll(handler: ScrollOnWillScrollCallback): ScrollAttribute; /** - * Called when the Scroll did scroll. - * - * @param { ScrollOnScrollCallback } handler - callback of Scroll, - * xOffset and yOffset are offsets this frame did scroll, scrollState is current scroll state. + * Triggered when the Scroll component scrolls. + * + *

NOTE + *
1. This event is triggered when scrolling is started by the Scroll component or other input settings, + * such as keyboard and mouse operations. + *
2. This event is triggered when the controller API is called. + *
3. This event supports the out-of-bounds bounce effect. + *

+ * + * @param { ScrollOnScrollCallback } handler - Callback triggered when the Scroll component scrolls. * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1171,9 +1388,17 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 11 */ /** - * Called when scrolling to the edge of the container. - * - * @param { OnScrollEdgeCallback } event + * Triggered when scrolling reaches the edge. + * Anonymous Object Rectification. + * + *

NOTE + *
1. This event is triggered when scrolling reaches the edge after being started by the Scroll component or other input settings, + * such as keyboard and mouse operations. + *
2. This event is triggered when the controller API is called. + *
3. This event supports the out-of-bounds bounce effect. + *

+ * + * @param { OnScrollEdgeCallback } event - Edge position to scroll to. * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1211,8 +1436,14 @@ declare class ScrollAttribute extends ScrollableCommonMethod { */ /** * Called when scrolling start. + * Anonymous Object Rectification. + * + *

NOTE + *
1. This event is triggered when scrolling is started by the Scroll component or other input settings, such as keyboard and mouse operations. + *
2. This event is triggered when the controller API is called, accompanied by a transition animation. + *

* - * @param { VoidCallback } event + * @param { VoidCallback } event - Callback triggered when scrolling starts. * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1222,7 +1453,12 @@ declare class ScrollAttribute extends ScrollableCommonMethod { onScrollStart(event: VoidCallback): ScrollAttribute; /** - * Called when scrolling has stopped. + * Triggered when scrolling stops. + * + *

NOTE + *
1. This event is triggered when scrolling is stopped by the Scroll component or other input settings, such as keyboard and mouse operations. + *
2. This event is triggered when the controller API is called, accompanied by a transition animation. + *

* * @param { function } event * @returns { ScrollAttribute } @@ -1262,8 +1498,14 @@ declare class ScrollAttribute extends ScrollableCommonMethod { */ /** * Called when scrolling has stopped. + * Anonymous Object Rectification. + * + *

NOTE + *
1. This event is triggered when scrolling is stopped by the Scroll component or other input settings, such as keyboard and mouse operations. + *
2. This event is triggered when the controller API is called, accompanied by a transition animation. + *

* - * @param { VoidCallback } event + * @param { VoidCallback } event - Callback triggered when scrolling stops. * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1290,9 +1532,9 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the status of the scroll bar is set. + * Sets the scrollbar state. * - * @param { BarState } barState + * @param { BarState } barState - Scrollbar state.
Default value: BarState.Auto * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1319,9 +1561,9 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the color of the scroll bar is set. + * Sets the scrollbar color. * - * @param { Color | number | string } color + * @param { Color | number | string } color - Scrollbar color.
Default value: '\#182431' (40% opacity) * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1348,9 +1590,9 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the width of the scroll bar is set. + * Sets the scrollbar width. * - * @param { number | string } value + * @param { number | string } value - Scrollbar width.
Default value: 4
Unit: vp * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1377,10 +1619,13 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when the sliding effect is set. + * Sets the effect used when the scroll boundary is reached. * - * @param { EdgeEffect } edgeEffect - * @param { EdgeEffectOptions } options + * @param { EdgeEffect } edgeEffect - Effect used when the scroll boundary is reached. The spring and shadow effects are supported. + *
Default value: EdgeEffect.None + * @param { EdgeEffectOptions } options - Whether to enable the scroll effect when the component content is smaller than the component itself. + * The value { alwaysEnabled: true } means to enable the scroll effect, and { alwaysEnabled: false } means the opposite. + *
Default value: { alwaysEnabled: true } * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1417,9 +1662,10 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 11 */ /** - * Called when scrolling begin each frame. + * Triggered when each frame scrolling starts. + * Anonymous Object Rectification. * - * @param { OnScrollFrameBeginCallback } event + * @param { OnScrollFrameBeginCallback } event - Callback triggered when each frame scrolling starts. * @returns { ScrollAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1437,9 +1683,11 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called to setting the nested scroll options. + * Sets the nested scrolling options. You can set the nested scrolling mode in the forward and backward directions + * to implement scrolling linkage with the parent component. * - * @param { NestedScrollOptions } value - options for nested scrolling. + * @param { NestedScrollOptions } value - Nested scrolling options. + *
Default value: { scrollForward: NestedScrollMode.SELF_ONLY, scrollBackward: NestedScrollMode.SELF_ONLY } * @returns { ScrollAttribute } the attribute of the scroll. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1458,9 +1706,10 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called when setting whether to enable scroll by gesture or mouse. + * Sets whether to support scroll gestures. When this attribute is set to false, + * scrolling by finger or mouse is not supported, but the scroll controller API is not affected. * - * @param { boolean } value + * @param { boolean } value - Whether to support scroll gestures.
Default value: true * @returns { ScrollAttribute } The attribute of the scroll * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1479,9 +1728,14 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called to setting the friction. + * Sets the friction coefficient. It applies only to gestures in the scrolling area, and + * it affects only indirectly the scroll chaining during the inertial scrolling process. + * If this attribute is set to a value less than or equal to 0, the default value is used. * - * @param { number | Resource } value - options for scrolling friction. + * @param { number | Resource } value - Friction coefficient. + *
Default value: 0.9 for wearable devices and 0.6 for non-wearable devices + *
Since API version 11, the default value for non-wearable devices is 0.7. + *
Since API version 12, the default value for non-wearable devices is 0.75. * @returns { ScrollAttribute } the attribute of the scroll. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1499,9 +1753,9 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 10 */ /** - * Called to setting the scroll snap options. + * Sets the scroll snapping mode. * - * @param { ScrollSnapOptions } value - options for scroll snap. + * @param { ScrollSnapOptions } value - Scroll snapping mode. * @returns { ScrollAttribute } the attribute of the scroll. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -1519,9 +1773,10 @@ declare class ScrollAttribute extends ScrollableCommonMethod { * @since 11 */ /** - * Determines whether the scroll view stops on multiples of the content size when the user scrolls. + * Sets whether to enable the swipe-to-turn-pages feature. * - * @param { boolean } value - A boolean value determines whether paging is enabled for scroll. + * @param { boolean } value - Whether to enable the swipe-to-turn-pages feature. + * The value true means to enable the swipe-to-turn-pages feature, and false means the opposite. * @returns { ScrollAttribute } the attribute of the scroll. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1531,9 +1786,11 @@ declare class ScrollAttribute extends ScrollableCommonMethod { enablePaging(value: boolean): ScrollAttribute; /** - * Called to setting the initial offset + * Sets the initial scrolling offset. * - * @param { OffsetOptions } value - options for scroll initial offset. + * @param { OffsetOptions } value - Initial scrolling offset. When the value specified is a percentage, + * the initial scrolling offset is calculated as the product of the Scroll component's size + * in the main axis direction and the percentage value. * @returns { ScrollAttribute } the attribute of the scroll. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1544,12 +1801,22 @@ declare class ScrollAttribute extends ScrollableCommonMethod { } /** - * callback of Scroll, using in onDidScroll. + * Represents the callback triggered when the Scroll component scrolls. + * + *

NOTE + *
If the onScrollFrameBegin event and scrollBy method are used to implement nested scrolling, + * set the edgeEffect attribute of the scrollable child component to None. For example, + * if a List is nested in the Scroll component, edgeEffect of the List must be set to EdgeEffect.None. + *

* * @typedef { function } ScrollOnScrollCallback - * @param { number } xOffset - horizontal offset this frame did scroll. - * @param { number } yOffset - vertical offset this frame did scroll. - * @param { ScrollState } scrollState - current scroll state. + * @param { number } xOffset - Horizontal offset per frame during scrolling. A positive offset indicates scrolling to the left, + * and a negative offset indicates scrolling to the right. + *
Unit: vp + * @param { number } yOffset - Vertical offset per frame during scrolling. + * A positive offset indicates scrolling upward, and a negative offset indicates scrolling downward. + *
Unit: vp + * @param { ScrollState } scrollState - Current scrolling state. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1561,11 +1828,15 @@ declare type ScrollOnScrollCallback = (xOffset: number, yOffset: number, scrollS * Called before scroll to allow developer to control real offset the Scroll can scroll. * * @typedef { function } ScrollOnWillScrollCallback - * @param { number } xOffset - horizontal offset this frame will scroll, which may or may not be reached. - * @param { number } yOffset - vertical offset this frame will scroll, which may or may not be reached. - * @param { ScrollState } scrollState - current scroll state. - * @param { ScrollSource } scrollSource - source of current scroll. - * @returns { void | OffsetResult } the remain offset for the Scroll, + * @param { number } xOffset - Horizontal offset per frame during scrolling. + * A positive offset indicates scrolling to the left, and a negative offset indicates scrolling to the right. + *
Unit: vp + * @param { number } yOffset - offset per frame during scrolling. + * A positive offset indicates scrolling upward, and a negative offset indicates scrolling downward. + *
Unit: vp + * @param { ScrollState } scrollState - Current scrolling state. + * @param { ScrollSource } scrollSource - Source of the current scrolling operation. + * @returns { void | OffsetResult } the remain offset for the Scroll, * same as (xOffset, yOffset) when no OffsetResult is returned. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform diff --git a/api/@internal/component/ets/scroll_bar.d.ts b/api/@internal/component/ets/scroll_bar.d.ts index e59281233ea707bea3b4a43ad32886a1f4def328..47db01d9f059443df8c860d123fb8cac851d7e4a 100644 --- a/api/@internal/component/ets/scroll_bar.d.ts +++ b/api/@internal/component/ets/scroll_bar.d.ts @@ -284,6 +284,18 @@ declare class ScrollBarAttribute extends CommonMethod { * @since 14 */ enableNestedScroll(enabled: Optional): ScrollBarAttribute; + + /** + * Color of the scrollbar. + * + * @param { Optional } color - Color of the scrollbar. + * @returns { ScrollBarAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + scrollBarColor(color: Optional): ScrollBarAttribute; } /** diff --git a/api/@internal/component/ets/search.d.ts b/api/@internal/component/ets/search.d.ts index 7a107792c52c6a02e72985e1d45ddb6dbfbe6141..ba0de091712c43217f1166333edb8bc774e3f163 100644 --- a/api/@internal/component/ets/search.d.ts +++ b/api/@internal/component/ets/search.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Copyright (c) 2021-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -58,7 +58,8 @@ declare class SearchController extends TextContentControllerBase { */ /** * constructor. - * + * A constructor used to create a SearchController object. + * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -84,7 +85,7 @@ declare class SearchController extends TextContentControllerBase { /** * Called when the position of the insertion cursor is set. * - * @param { number } value + * @param { number } value - Length from the start of the character string to the position where the caret is located. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -111,10 +112,24 @@ declare class SearchController extends TextContentControllerBase { /** * Text selection is achieved by specifying the start and end positions of the text. - * + * + *

NOTE: + *
If selectionStart or selectionEnd is set to undefined, the value 0 will be used. + *
If selectionMenuHidden is set to true or a 2-in-1 device is used, + * calling setTextSelection does not display the context menu even when options is set to MenuPolicy.SHOW. + *
If the selected text contains an emoji, the emoji is selected when its start position is within the text selection range. + *
Sets the text selection range and highlights the selected text when the component is focused. + *
This API works only when the value of selectionStart is less than that of selectionEnd. + *

+ * * @param { number } selectionStart - The start position of the selected text. + * The start position of text in the text box is 0. + * A value less than 0 is handled as 0. + * A value greater than the maximum text length is handled as the maximum text length. * @param { number } selectionEnd - The end position of the selected text. - * @param { SelectionOptions } [options] - Indicates the options of the text selection. + * A value less than 0 is handled as the value 0. + * A value greater than the maximum text length is handled as the maximum text length. + * @param { SelectionOptions } [options] - Indicates the options of the text selection.Default value is MenuPolicy.DEFAULT. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -220,7 +235,7 @@ declare enum SearchType { */ /** * Basic input mode. - * + * The value can contain digits, letters, underscores (_), spaces, and special characters. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -254,7 +269,8 @@ declare enum SearchType { */ /** * Phone number entry mode. - * + * In this mode, the following are allowed: digits, spaces, plus signs (+), hyphens (-), asterisks (*), and number signs (#); + * the length is not limited. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -271,7 +287,8 @@ declare enum SearchType { */ /** * E-mail address input mode. - * + * This mode accepts only digits, letters, underscores (_), dots (.), + * and the following special characters: ! # $ % & ' * + - / = ? ^ ` { | } ~ @ (which can only appear once) * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -281,7 +298,7 @@ declare enum SearchType { /** * Number decimal entry mode. - * + * The value can contain digits and one decimal point. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -298,11 +315,21 @@ declare enum SearchType { * @since 12 */ URL = 13, + + /** + * One time code mode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + ONE_TIME_CODE = 14, } /** * Options used to construct the search. * + * Anonymous Object Rectification. * @typedef SearchOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -325,7 +352,30 @@ declare interface SearchOptions { * @atomicservice * @since 11 */ - value?: string; + /** + * Text input in the search text box. + * + * Anonymous Object Rectification. + * + *

NOTE: + *
Since API version 10, this parameter supports two-way binding through $$. + *
Since API version 18, this parameter supports two-way binding through !!. + *

+ * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 18 + */ + /** + * Text input in the search text box. + * + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + value?: ResourceStr; /** * Text displayed when there is no input. @@ -349,6 +399,15 @@ declare interface SearchOptions { * @atomicservice * @since 11 */ + /** + * Text displayed when there is no input. + * + * Anonymous Object Rectification. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 18 + */ placeholder?: ResourceStr; /** @@ -366,6 +425,26 @@ declare interface SearchOptions { * @atomicservice * @since 11 */ + /** + * Path to the search icon. + * + * Anonymous Object Rectification. + * + *

NOTE: + *
The icon data source can be a local or online image. + *

    + *
  • The supported formats include PNG, JPG, BMP, SVG, GIF, pixelmap, and HEIF.
  • + *
  • The Base64 string is supported in the following format: + * data:image/[png|jpeg|bmp|webp|heif];base64,[base64 data], where [base64 data] is a Base64 string.
  • + *
+ *
If this attribute and the searchIcon attribute are both set, the searchIcon attribute takes precedence. + *

+ * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 18 + */ icon?: string; /** @@ -383,6 +462,15 @@ declare interface SearchOptions { * @atomicservice * @since 11 */ + /** + * Controller of the component. + * + * Anonymous Object Rectification. + * @type { ?SearchController } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 18 + */ controller?: SearchController; } @@ -441,6 +529,7 @@ interface SearchInterface { /** * The options of SearchInterface. * + * Anonymous Object Rectification. * @param { SearchOptions } [options] - Search options. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -479,7 +568,11 @@ interface IconOptions { */ /** * Set the icon size - * + * + *

NOTE: + *
It cannot be set in percentage. + *

+ * * @type { ?Length } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -555,7 +648,11 @@ interface SearchButtonOptions { */ /** * Set the SearchButton fontSize - * + * + *

NOTE: + *
It cannot be set in percentage. + *

+ * * @type { ?Length } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -585,8 +682,14 @@ interface SearchButtonOptions { /** * Automatically disables the search button before the user enters text - * + * + *

NOTE: + *
true: The search button is disabled when there is no text input. + *
false: The search button remains enabled regardless of the text input. + *

+ * * @type { ?Boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -607,7 +710,8 @@ interface SearchButtonOptions { interface CancelButtonOptions { /** * Set the CancelButton style - * + * Display state of the Cancel button on the right. + * * @type { ?CancelButtonStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -618,7 +722,8 @@ interface CancelButtonOptions { /** * Set the CancelButton icon - * + * Icon of the Cancel button on the right. + * * @type { ?IconOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -636,10 +741,20 @@ interface CancelButtonOptions { * @atomicservice * @since 12 */ +/** + * Defines the CancelButton symbol options + * + * @interface CancelButtonSymbolOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ interface CancelButtonSymbolOptions { /** - * Set the CancelButton style - * + * Set the CancelButton style. + * Display state of the Cancel button on the right. + * * @type { ?CancelButtonStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -648,13 +763,24 @@ interface CancelButtonSymbolOptions { style?: CancelButtonStyle; /** - * Set the CancelButton symbol icon - * + * Set the CancelButton symbol icon. + * Symbol icon of the Cancel button on the right. + * * @type { ?SymbolGlyphModifier } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * Set the CancelButton symbol icon. + * Symbol icon of the Cancel button on the right. + * + * @type { ?SymbolGlyphModifier } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ icon?: SymbolGlyphModifier; } @@ -717,16 +843,33 @@ declare class SearchAttribute extends CommonMethod { */ /** * Set the search button text, fontSize and fontColor - * + * + *

NOTE: + *
Clicking the search button triggers both onSubmit and onClick callbacks. + *
The default font size on wearable devices is 18 fp. + *

+ * + * * @param { string } value - indicates the text of the search button. - * @param { SearchButtonOptions } option - indicates the fontSize and fontColor of the search button. + * @param { SearchButtonOptions } option - indicates the fontSize and fontColor of the search button.Default value is { fontSize: '16fp', fontColor: '#ff3f97e9' } * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 11 */ - searchButton(value: string, option?: SearchButtonOptions): SearchAttribute; + /** + * Set the search button text, fontSize and fontColor + * + * @param { ResourceStr } value - indicates the text of the search button. + * @param { SearchButtonOptions } option - indicates the fontSize and fontColor of the search button. + * @returns { SearchAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + searchButton(value: ResourceStr, option?: SearchButtonOptions): SearchAttribute; /** * Set the text Color @@ -739,8 +882,12 @@ declare class SearchAttribute extends CommonMethod { */ /** * Set the text Color - * - * @param { ResourceColor } value - indicates the color of the text. + * + *

NOTE: + *
Universal text attributes fontSize, fontStyle, fontWeight, and fontFamily are set in the textFont attribute. + *

+ * + * @param { ResourceColor } value - indicates the color of the text.Default value is '#FF182431'.The default value on wearable devices is '#dbffffff'. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -770,7 +917,27 @@ declare class SearchAttribute extends CommonMethod { */ /** * Set the search icon style - * + * + *

NOTE: + *
The default icon size on wearable devices is 16 vp. + *
Default value in light mode: + * + * { + * size: '16vp', + * color: '#99182431', + * src: ' ' + * } + * + *
Default value in dark mode: + * + * { + * size: '16vp', + * color: '#99ffffff', + * src: ' ' + * } + * + *

+ * * @param { IconOptions | SymbolGlyphModifier } value - indicates the style of the search icon. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -801,7 +968,23 @@ declare class SearchAttribute extends CommonMethod { */ /** * Set the cancel button style - * + * + *

NOTE: + *
The default icon size on wearable devices is 18 vp. + *
When style is set to CancelButtonStyle.CONSTANT, the Cancel button is always displayed. + *
Default value: + * + * { + * style: CancelButtonStyle.INPUT, + * icon: { + * size: '16vp', + * color: '#99ffffff', + * src: ' ' + * } + * } + * + *

+ * * @param { CancelButtonOptions | CancelButtonSymbolOptions } value - indicates the style of the cancel button. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -814,7 +997,7 @@ declare class SearchAttribute extends CommonMethod { /** * Specify the indentation of the first line in a text-block. * - * @param { Dimension } value - The length of text indent. + * @param { Dimension } value - The length of text indent.Default value is 0. * @returns { SearchAttribute } The attribute of the text. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -825,9 +1008,17 @@ declare class SearchAttribute extends CommonMethod { /** * Called when the inputFilter of text is set. - * - * @param { ResourceStr } value - * @param { Callback } error + * + *

NOTE: + *
Only inputs that comply with the regular expression can be displayed. + *
Other inputs are filtered out. + *
The specified regular expression can match single characters, but not strings. + *
If inputFilter is set and the entered characters are not null, + * the filtering effect attached to the text box type (specified through the type attribute) does not take effect. + *

+ * + * @param { ResourceStr } value - Regular expression. + * @param { Callback } error - Filtered-out content to return when regular expression matching fails. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -838,8 +1029,9 @@ declare class SearchAttribute extends CommonMethod { /** * Called when judging whether the text editing change finished. - * - * @param { Callback } callback + * The text box is in the editing state when it has the caret placed in it, and is in the non-editing state otherwise. + * + * @param { Callback } callback - Returns true if the component is in an editing state. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -850,7 +1042,11 @@ declare class SearchAttribute extends CommonMethod { /** * Define the text selected background color of the text input. - * + * + *

NOTE: + *
If the opacity is not set, a 20% opacity will be used. + *

+ * * @param { ResourceColor } value * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -871,7 +1067,18 @@ declare class SearchAttribute extends CommonMethod { */ /** * Set the cursor style - * + * + *

NOTE: + *
Since API version 12, this API can be used to set the text handle color, which is the same as the caret color. + *
Default value: + * + * { + * width: '1.5vp', + * color: '#007DFF' + * } + * + *

+ * * @param { CaretStyle } value - indicates the style of the cursor. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -901,7 +1108,7 @@ declare class SearchAttribute extends CommonMethod { /** * Set the place hold text color * - * @param { ResourceColor } value + * @param { ResourceColor } value - Default value is '#99182431'.The default value on wearable devices is '#99ffffff'. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -929,7 +1136,12 @@ declare class SearchAttribute extends CommonMethod { */ /** * Set the font used for place holder text - * + * + *

NOTE: + *
The 'HarmonyOS Sans' font and registered custom fonts are supported. + *
The default font size on wearable devices is 18 px. + *

+ * * @param { Font } value * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -958,7 +1170,12 @@ declare class SearchAttribute extends CommonMethod { */ /** * Set the font used for input text - * + * + *

NOTE: + *
Currently, only the default font family is supported. + *
The default font size on wearable devices is 18 fp. + *

+ * * @param { Font } value * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -971,7 +1188,7 @@ declare class SearchAttribute extends CommonMethod { /** * Set enter key type of soft keyboard * - * @param { EnterKeyType } value + * @param { EnterKeyType } value - Default value is EnterKeyType.Search. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1010,7 +1227,8 @@ declare class SearchAttribute extends CommonMethod { /** * Call the function when clicked the search button. * - * @param { Callback } callback + * Anonymous Object Rectification. + * @param { Callback } callback - Search submission callback, which returns the text content currently in the search box. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1020,7 +1238,8 @@ declare class SearchAttribute extends CommonMethod { onSubmit(callback: Callback): SearchAttribute; /** * Call the function when clicked the search button. - * + * The submission event provides a method to maintain the edit state of the Search component. + * * @param { SearchSubmitCallback } callback - callback of the listened event. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1059,7 +1278,12 @@ declare class SearchAttribute extends CommonMethod { */ /** * Call the function when editing the input text - * + * + *

NOTE: + *
In this callback, if cursor operations are performed, + * developers need to adjust the cursor logic based on the previewText parameter to ensure it works seamlessly within the preview display scenario. + *

+ * * @param { EditableTextOnChangeCallback } callback * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1091,6 +1315,7 @@ declare class SearchAttribute extends CommonMethod { /** * Called when the text selection changes. * + * Anonymous Object Rectification. * @param { OnTextSelectionChangeCallback } callback - Callback of the listened event. * @returns { SearchAttribute } Returns the instance of the SearchAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1122,6 +1347,7 @@ declare class SearchAttribute extends CommonMethod { /** * Called when the content scrolls. * + * Anonymous Object Rectification. * @param { OnContentScrollCallback } callback - Callback of the listened event. * @returns { SearchAttribute } Returns the instance of the SearchAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1161,7 +1387,8 @@ declare class SearchAttribute extends CommonMethod { /** * Called when using the Clipboard menu. * - * @param { Callback } callback + * Anonymous Object Rectification. + * @param { Callback } callback - Callback used to return the copied text content. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1200,7 +1427,8 @@ declare class SearchAttribute extends CommonMethod { /** * Called when using the Clipboard menu. * - * @param { Callback } callback + * Anonymous Object Rectification. + * @param { Callback } callback - Callback used to return the cut text content. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1242,7 +1470,8 @@ declare class SearchAttribute extends CommonMethod { /** * Called when using the Clipboard menu. * - * @param { OnPasteCallback } callback - Executed when a paste operation is performed. + * Anonymous Object Rectification. + * @param { OnPasteCallback } callback - Executed when a paste operation is performed.Callback used to return the pasted text content. * @returns { SearchAttribute } Returns the instance of the SearchAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1270,8 +1499,14 @@ declare class SearchAttribute extends CommonMethod { */ /** * Called when the copy option is set. - * - * @param { CopyOptions } value + * + *

NOTE: + *
If this attribute is set to CopyOptions.None, the text can only be pasted; + * all other actions, such as copying, cutting, and sharing, are disabled. + *
Dragging is not allowed when CopyOptions.None is set. + *

+ * + * @param { CopyOptions } value - Default value is CopyOptions.LocalDevice. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1286,19 +1521,37 @@ declare class SearchAttribute extends CommonMethod { * @param { number } value * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full - * crossplatform * @since 11 */ /** * Called when the input of maximum text length is set. - * + * + *

NOTE: + *
By default, there is no maximum number of characters. + *
When the maximum number is reached, no more characters can be entered. + *

+ * * @param { number } value * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full - * crossplatform * @atomicservice * @since 12 */ + /** + * Called when the input of maximum text length is set. + * + *

NOTE: + *
By default, there is no maximum number of characters. + *
When the maximum number is reached, no more characters can be entered. + *

+ * + * @param { number } value + * @returns { SearchAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ maxLength(value: number): SearchAttribute; /** @@ -1320,8 +1573,12 @@ declare class SearchAttribute extends CommonMethod { */ /** * Called when the text align is set. - * - * @param { TextAlign } value + * + *

NOTE: + *
Currently, the following alignment modes are supported: Start, Center, and End. + *

+ * + * @param { TextAlign } value - Default value is TextAlign.Start. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1341,8 +1598,12 @@ declare class SearchAttribute extends CommonMethod { */ /** * Sets whether request keyboard or not when on focus. - * - * @param { boolean } value + * + *

NOTE: + *
Since API version 10, the Search component brings up the keyboard by default when it obtains focus. + *

+ * + * @param { boolean } value - Default value is true. * @returns { SearchAttribute } Returns the instance of the SearchAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1363,7 +1624,14 @@ declare class SearchAttribute extends CommonMethod { /** * Controls whether the selection menu pops up. * - * @param { boolean } value + *

NOTE: + *
true: Tapping, long-pressing, double-tapping, triple-tapping, + * or right-clicking the text box will not trigger the system text selection menu. + *
false: Tapping, long-pressing, double-tapping, triple-tapping, + * or right-clicking the text box will trigger the system text selection menu. + *

+ * + * @param { boolean } value - Default value is false. * @returns { SearchAttribute } returns the instance of the SearchAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1375,7 +1643,13 @@ declare class SearchAttribute extends CommonMethod { /** * Called when the minimum font size of the font is set. * - * @param { number | string | Resource } value + *

NOTE: + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *
For the setting to take effect, this attribute must be used together with maxFontSize or layout constraint settings. + *
When the adaptive font size is used, the fontSize settings do not take effect. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1386,8 +1660,14 @@ declare class SearchAttribute extends CommonMethod { /** * Called when the maximum font size of the font is set. - * - * @param { number | string | Resource } value + * + *

NOTE: + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *
For the setting to take effect, this attribute must be used together with minFontSize or layout constraint settings. + *
When the adaptive font size is used, the fontSize settings do not take effect. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1396,26 +1676,76 @@ declare class SearchAttribute extends CommonMethod { */ maxFontSize(value: number | string | Resource): SearchAttribute; - /** + /** * Called when the minimum font scale of the font is set. - * + * Value range: [0, 1] + * + *

NOTE: + *
The undefined type is supported. + *
A value less than 0 is handled as 0. + *
A value greater than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

+ * * @param { Optional } scale * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 18 */ - minFontScale(scale: Optional): SearchAttribute; + /** + * Called when the minimum font scale of the font is set. + * Value range: [0, 1] + * + *

NOTE: + *
The undefined type is supported. + *
A value less than 0 is handled as 0. + *
A value greater than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

+ * + * @param { Optional } scale + * @returns { SearchAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + minFontScale(scale: Optional): SearchAttribute; /** * Called when the maximum font scale of the font is set. - * + * Value range: [1, +∞) + * + *

NOTE: + *
The undefined type is supported. + *
A value less than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

+ * * @param { Optional } scale * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 18 */ + /** + * Called when the maximum font scale of the font is set. + * Value range: [1, +∞) + * + *

NOTE: + *
The undefined type is supported. + *
A value less than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

+ * + * @param { Optional } scale + * @returns { SearchAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ maxFontScale(scale: Optional): SearchAttribute; /** @@ -1438,7 +1768,21 @@ declare class SearchAttribute extends CommonMethod { */ /** * Define custom keyboard. - * + * + *

NOTE: + *
When a custom keyboard is set, activating the text box opens the specified custom component, + * instead of the system input method. + *
The custom keyboard's height can be set through the height attribute of the custom component's root node, + * and its width is fixed at the default value. + *
The custom keyboard is presented by overlaying the original screen. + *
It is not compressed or lifted if avoid mode is not enabled or avoidance is not needed for the text box. + *
The custom keyboard cannot obtain the focus, but it blocks gesture events. + *
By default, the custom keyboard is closed when the input component loses the focus. + *
You can also use the stopEditing API to close the keyboard. + *
When a custom keyboard is set, the text box does not support camera input, even when the device supports. + *
When setting a custom keyboard, you can bind the onKeyPrelme event to prevent input from the physical keyboard. + *

+ * * @param { CustomBuilder } value - Set up a custom keyboard of Search * @param { KeyboardOptions } [options] - Indicates the custom keyboard options of Search * @returns { SearchAttribute } returns the instance of the SearchAttribute. @@ -1452,7 +1796,7 @@ declare class SearchAttribute extends CommonMethod { /** * Called when the text decoration of the text is set. * - * @param { TextDecorationOptions } value + * @param { TextDecorationOptions } value - Default value is { type: TextDecorationType.None, color: Color.Black, style: TextDecorationStyle.SOLID }. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1463,8 +1807,15 @@ declare class SearchAttribute extends CommonMethod { /** * Called when the distance between text fonts is set. - * - * @param { number | string | Resource } value + * + *

NOTE: + *
If the value specified is a percentage or 0, the default value is used. + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *
If the value specified is a negative value, the text is compressed. + *
A negative value too small may result in the text being compressed to 0 and no content being displayed. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1475,7 +1826,12 @@ declare class SearchAttribute extends CommonMethod { /** * Called when the line height of the font is set. - * + * + *

NOTE: + *
If the value is less than or equal to 0, the line height is not limited and the font size is adaptive. + *
If the value is of the number type, the unit fp is used. + *

+ * * @param { number | string | Resource } value * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1497,7 +1853,7 @@ declare class SearchAttribute extends CommonMethod { /** * Called when the search type is set. * - * @param { SearchType } value + * @param { SearchType } value - Default value is SearchType.Normal. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1524,7 +1880,13 @@ declare class SearchAttribute extends CommonMethod { /** * Get text value information when about to input. - * + * + *

NOTE: + *
It returns true if the text is inserted; returns false otherwise. + *
This callback is not triggered for pre-edit or candidate word operations. + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content is about to insert. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1536,7 +1898,11 @@ declare class SearchAttribute extends CommonMethod { /** * Get text value information when completed input. - * + * + *

NOTE: + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content has been inserted. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1548,7 +1914,13 @@ declare class SearchAttribute extends CommonMethod { /** * Get text value information when about to delete. - * + * + *

NOTE: + *
It returns true if the text is deleted; returns false otherwise. + *
This callback is not invoked for text preview. + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content is about to delete. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1560,7 +1932,11 @@ declare class SearchAttribute extends CommonMethod { /** * Get text value information when the deletion has been completed - * + * + *

NOTE: + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content has been deleted. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1571,8 +1947,22 @@ declare class SearchAttribute extends CommonMethod { onDidDelete(callback: Callback): SearchAttribute; /** - * Set the custom text menu. + * Called before the search component attach the InputMethod. * + * @param { Callback } callback - The triggered function before attach the InputMethod. + * @returns { SearchAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onWillAttachIME(callback: Callback): SearchAttribute; + + /** + * Set the custom text menu. + * Sets the extended options of the custom context menu on selection, + * including the text content, icon, and callback. + * * @param { EditMenuOptions } editMenu - Customize text menu options. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1584,8 +1974,13 @@ declare class SearchAttribute extends CommonMethod { /** * Define the preview text mode of the text input. - * - * @param { boolean } enable - Indicates the preview text mode. + * + *

NOTE: + *
Preview text is in a temporary state and does not support text interception. + *
As such, it does not trigger onWillInsert, onDidInsert, onWillDelete, or onDidDelete callbacks. + *

+ * + * @param { boolean } enable - Indicates the preview text mode.Default value is true. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1596,7 +1991,19 @@ declare class SearchAttribute extends CommonMethod { /** * Enable or disable haptic feedback. - * + * + *

NOTE: + *
To enable haptic feedback, + * you must declare the ohos.permission.VIBRATE permission under requestPermissions in the module.json5 file of the project. + * + * "requestPermissions": [ + * { + * "name": "ohos.permission.VIBRATE", + * } + * ] + * + *

+ * * @param { boolean } isEnabled - Default value is true, set false to disable haptic feedback. * @returns { SearchAttribute } returns the instance of the SearchAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1621,7 +2028,7 @@ declare class SearchAttribute extends CommonMethod { /** * Set the text with half leading. * - * @param { Optional } halfLeading + * @param { Optional } halfLeading - Default value is false.The value true means that half leading is enabled, and false means the opposite. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1643,8 +2050,13 @@ declare class SearchAttribute extends CommonMethod { /** * Get text value information when about to change. - * + * + *

NOTE: + *
This callback is triggered after onWillInsert and onWillDelete, but before onDidInsert and onDidDelete. + *

+ * * @param { Callback } callback - The triggered function when text content is about to change. + * Returning true allows the change to proceed, while returning false cancels the change. * @returns { SearchAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1663,6 +2075,42 @@ declare class SearchAttribute extends CommonMethod { * @since 15 */ keyboardAppearance(appearance: Optional): SearchAttribute; + + /** + * Set the stroke width. + * + * @param { Optional } width - indicates the stroke width. + * @returns { SearchAttribute } returns the instance of the SearchAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + strokeWidth(width: Optional): SearchAttribute; + + /** + * Set the stroke color. + * + * @param { Optional } color - indicates the stroke color. + * @returns { SearchAttribute } returns the instance of the SearchAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + strokeColor(color: Optional): SearchAttribute; + + /** + * Whether to enable automatic spacing between Chinese and Latin characters. + * + * @param { Optional } enabled - The default value is false, indicates the flag whether to enable automatic spacing. + * @returns { SearchAttribute } returns the instance of the SearchAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + enableAutoSpacing(enabled: Optional): SearchAttribute; } /** diff --git a/api/@internal/component/ets/security_component.d.ts b/api/@internal/component/ets/security_component.d.ts index fb81d711dcafe070c57a06223d4c599c2831af0e..c84936c7982aad724d3cc4b3c775f2737129bce3 100644 --- a/api/@internal/component/ets/security_component.d.ts +++ b/api/@internal/component/ets/security_component.d.ts @@ -246,7 +246,16 @@ declare class SecurityComponentMethod { * @atomicservice * @since 11 */ - fontWeight(value: number | FontWeight | string): T; + /** + * Font weight of the inner text. + * + * @param { number | FontWeight | string | Resource } value - Indicates the font weight of the text in the security component. + * @returns { T } Returns the attribute of the security component. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + fontWeight(value: number | FontWeight | string | Resource): T; /** * Font family of the inner text. @@ -626,7 +635,16 @@ declare class SecurityComponentMethod { * @atomicservice * @since 18 */ - maxLines(line: number): T; + /** + * Called when the maximum number of lines of text is set. + * + * @param { number | Resource } line + * @returns { T } Returns the attribute of the security component. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + maxLines(line: number | Resource): T; /** * Called when the minimum font size of the font is set. diff --git a/api/@internal/component/ets/select.d.ts b/api/@internal/component/ets/select.d.ts index 6a7584ccda3530f6c48bb3ef631578bccf438bb2..41fcdac73f4f97b4797cc06b6e43362cdfc818b7 100644 --- a/api/@internal/component/ets/select.d.ts +++ b/api/@internal/component/ets/select.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Copyright (c) 2021-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -103,6 +103,15 @@ declare interface SelectOption { * @atomicservice * @since 12 */ + /** + * Indicates the symbol icon of this menu item. + * + * @type { ?SymbolGlyphModifier } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolIcon?: SymbolGlyphModifier; } @@ -284,7 +293,7 @@ declare enum MenuAlignType { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare enum AvoidanceMode { /** @@ -293,7 +302,7 @@ declare enum AvoidanceMode { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ COVER_TARGET, /** @@ -302,7 +311,7 @@ declare enum AvoidanceMode { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ AVOID_AROUND_TARGET } @@ -327,7 +336,7 @@ declare type OnSelectCallback = (index: number, selectStr: string) => void; * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ declare interface MenuOutlineOptions { /** @@ -337,7 +346,7 @@ declare interface MenuOutlineOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ width?: Dimension | EdgeOutlineWidths; @@ -348,7 +357,7 @@ declare interface MenuOutlineOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ color?: ResourceColor | EdgeColors; } @@ -1130,7 +1139,7 @@ declare class SelectAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ textModifier(modifier: Optional): SelectAttribute; @@ -1142,7 +1151,7 @@ declare class SelectAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ arrowModifier(modifier: Optional): SelectAttribute; @@ -1154,7 +1163,7 @@ declare class SelectAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ optionTextModifier(modifier: Optional): SelectAttribute; @@ -1166,7 +1175,7 @@ declare class SelectAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ selectedOptionTextModifier(modifier: Optional): SelectAttribute; @@ -1178,7 +1187,7 @@ declare class SelectAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ dividerStyle(style: Optional): SelectAttribute; @@ -1190,7 +1199,7 @@ declare class SelectAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ avoidance(mode: AvoidanceMode): SelectAttribute; @@ -1202,9 +1211,33 @@ declare class SelectAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ menuOutline(outline: MenuOutlineOptions): SelectAttribute; + + /** + * Sets whether to display in the sub window. + * + * @param { Optional } showInSubWindow Whether to display in the sub window. + * @returns { SelectAttribute } The attribute of the select. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + showInSubWindow(showInSubWindow: Optional): SelectAttribute; + + /** + * Set whether to display the default selected icon + * + * @param { boolean } show - whether to display the default selected icon. + * @returns { SelectAttribute } the attribute of the select. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + showDefaultSelectedIcon(show: boolean): SelectAttribute; } /** @@ -1248,6 +1281,15 @@ declare interface MenuItemConfiguration extends CommonConfiguration { */ /** * Viewport of shape + * Anonymous Object Rectification. * * @param { ViewportRect } value * @returns { ShapeAttribute } @@ -494,7 +579,18 @@ declare class ShapeAttribute extends CommonMethod { * @atomicservice * @since 11 */ - strokeDashOffset(value: number | string): ShapeAttribute; + /** + * Called when the offset of the starting point of border drawing is set. + * + * @param { Length } value + * @returns { ShapeAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + strokeDashOffset(value: Length): ShapeAttribute; /** * Called when the gap of the border is set. @@ -654,7 +750,18 @@ declare class ShapeAttribute extends CommonMethod { * @atomicservice * @since 11 */ - strokeMiterLimit(value: number | string): ShapeAttribute; + /** + * Called when the limit value for drawing acute angles as oblique angles is set. + * + * @param { Length } value + * @returns { ShapeAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + strokeMiterLimit(value: Length): ShapeAttribute; /** * Called when the opacity of the border is set. @@ -774,7 +881,18 @@ declare class ShapeAttribute extends CommonMethod { * @atomicservice * @since 11 */ - strokeWidth(value: number | string): ShapeAttribute; + /** + * Called when the width of the border is set. + * + * @param { Length } value + * @returns { ShapeAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + strokeWidth(value: Length): ShapeAttribute; /** * Called when setting whether anti aliasing is on. diff --git a/api/@internal/component/ets/sidebar.d.ts b/api/@internal/component/ets/sidebar.d.ts index 2890bf36f0f17dd5764c307f4496f488aa80eca4..4622bd4555f349a4cc90c0b81a16c5a9dfff62e3 100644 --- a/api/@internal/component/ets/sidebar.d.ts +++ b/api/@internal/component/ets/sidebar.d.ts @@ -184,7 +184,7 @@ declare enum SideBarPosition { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ declare interface ButtonIconOptions { /** @@ -211,6 +211,16 @@ declare interface ButtonIconOptions { * @atomicservice * @since 11 */ + /** + * Defines whether an icon is shown. + * + * Anonymous Object Rectification. + * @type { string | PixelMap | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ shown: string | PixelMap | Resource; /** @@ -237,6 +247,16 @@ declare interface ButtonIconOptions { * @atomicservice * @since 11 */ + /** + * Defines whether an icon is hidden. + * + * Anonymous Object Rectification. + * @type { string | PixelMap | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ hidden: string | PixelMap | Resource; /** @@ -263,6 +283,16 @@ declare interface ButtonIconOptions { * @atomicservice * @since 11 */ + /** + * Defines whether an icon is switching. + * + * Anonymous Object Rectification. + * @type { ?(string | PixelMap | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ switching?: string | PixelMap | Resource; } @@ -434,11 +464,12 @@ declare interface ButtonStyle { /** * Set the button icon when sidebar status has changed * + * Anonymous Object Rectification. * @type { ?ButtonIconOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 14 + * @since 18 */ icons?: ButtonIconOptions; } diff --git a/api/@internal/component/ets/slider.d.ts b/api/@internal/component/ets/slider.d.ts index 268c19b89f7b214bea37800f258efc81a88640da..2ecd48ceb7959c7b1f8dc3f79c24597fdc8b22f6 100644 --- a/api/@internal/component/ets/slider.d.ts +++ b/api/@internal/component/ets/slider.d.ts @@ -43,7 +43,7 @@ * @since 10 */ /** - * Declare sliderstyle + * Style of the slider thumb and track. * * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -75,7 +75,7 @@ declare enum SliderStyle { * @since 10 */ /** - * The slider is on the slide rail. + * The thumb is on the track. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -107,7 +107,7 @@ declare enum SliderStyle { * @since 10 */ /** - * The slider is in the slide rail. + * The thumb is in the track. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -117,7 +117,7 @@ declare enum SliderStyle { */ InSet, /** - * No slider. + * There is no thumb. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -153,7 +153,7 @@ declare enum SliderStyle { * @since 10 */ /** - * Declare SliderChangeMode + * State triggered by the event. * * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -185,7 +185,7 @@ declare enum SliderChangeMode { * @since 10 */ /** - * Start dragging the slider. + * The user touches or clicks the thumb. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -217,7 +217,7 @@ declare enum SliderChangeMode { * @since 10 */ /** - * Drag the slider. + * The user is dragging the slider. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -249,7 +249,11 @@ declare enum SliderChangeMode { * @since 10 */ /** - * End dragging the slider. + * The user stops dragging the slider by lifting their finger or releasing the mouse device. + *

NOTE: + *
The trigger occurs when an invalid value is restored to the default value, that is, when the value is set to + * less than min or greater than max. + *

* * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -281,7 +285,7 @@ declare enum SliderChangeMode { * @since 10 */ /** - * Click the slider. + * The user moves the thumb by touching or clicking the track. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -293,7 +297,7 @@ declare enum SliderChangeMode { } /** - * Declare SliderInteraction + * Interaction mode between the user and the slider. * * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -303,7 +307,8 @@ declare enum SliderChangeMode { */ declare enum SliderInteraction { /** - * Allow user to slide the block and click track to move the block + * Users can drag the slider or touch the track to move the slider. The slider moves as soon as the mouse or + * finger is pressed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -313,7 +318,7 @@ declare enum SliderInteraction { SLIDE_AND_CLICK, /** - * Only allow user to slide the block + * Users are not allowed to move the slider by touching the slider. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -323,8 +328,9 @@ declare enum SliderInteraction { SLIDE_ONLY, /** - * Allow user to slide the block and click track to move the block, but click value only change when touch up. - * + * Users can drag the slider or touch the track to move the slider. The slider moves when the mouse is released or + * finger is lifted, if the release/lift position coincides with the screen press position. + * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -334,7 +340,17 @@ declare enum SliderInteraction { } /** - * Defines the valid slidable range. If and only if MIN <= from <= to <= MAX, sliding range can be set successfully. + * Defines the callback type used in SlideRange. + *

NOTE: + *
Currently, this API takes effect only when MIN ≤ from ≤ to ≤ MAX (the values of MIN and MAX do not depend on + * the values set, but on the actual values that take effect). You can set either from or to, or you can set both from + * and to. When the API is effective, if the set from value is between the adjacent multiples of step, then from takes + * the value of the left interval multiple of step or MIN as the corrected value. When the API is effective, if the set + * to value is between the adjacent multiples of step, then to takes the value of the right interval multiple of step + * or MAX as the corrected value. After from and to have taken their corrected values, when value is undefined or null, + * it takes the same value as from; when value is a number type, and if value ≤ from, then it takes from; + * if value > to, then it takes to. + *

* * @interface SlideRange * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -344,7 +360,7 @@ declare enum SliderInteraction { */ declare interface SlideRange { /** - * Set the start point of sliding range. + * Start of the slide range. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -355,7 +371,7 @@ declare interface SlideRange { from?: number; /** - * Set the end point of sliding range. + * End of the slide range. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -391,7 +407,7 @@ declare interface SlideRange { * @since 10 */ /** - * Defines the options of Slider. + * Parameters of the slider. * * @interface SliderOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -426,9 +442,10 @@ declare interface SliderOptions { * @since 10 */ /** - * Current value of Slider. + * Current progress. * * @type { ?number } + * @default same as the value of min * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -462,9 +479,10 @@ declare interface SliderOptions { * @since 10 */ /** - * Sets the min value of Slider. + * Minimum value. * * @type { ?number } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -498,9 +516,15 @@ declare interface SliderOptions { * @since 10 */ /** - * Sets the max value of Slider. + * Maximum value. + *

NOTE: + *
If the value of min is greater than or equal to the value of max, the min value defaults to 0, and the max + * value defaults to 100. If the value is not within the [min, max] range, the value of min or max is used, whichever + * is closer. + *

* * @type { ?number } + * @default 100 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -534,9 +558,13 @@ declare interface SliderOptions { * @since 10 */ /** - * Sets the step of each slide value. + * Step of the slider. + *

NOTE: + *
If this parameter is set to a value less than 0 or greater than the value of max, the default value is used. + *

* * @type { ?number } + * @default 1 - Value range: [0.01, max - min] * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -570,9 +598,10 @@ declare interface SliderOptions { * @since 10 */ /** - * Sets the slider style. + * Style of the slider thumb and track. * * @type { ?SliderStyle } + * @default SliderStyle.OutSet * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -606,9 +635,10 @@ declare interface SliderOptions { * @since 10 */ /** - * Sets the slider direction style. + * Whether the slider moves horizontally or vertically. * * @type { ?Axis } + * @default Axis.Horizontal * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -642,9 +672,11 @@ declare interface SliderOptions { * @since 10 */ /** - * Set whether the direction of the slider needs to be reversed. + * Whether the slider values are reversed. By default, the values increase from left to right for a horizontal + * slider and from top to bottom for a vertical slider. * * @type { ?boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -663,7 +695,7 @@ declare interface SliderOptions { * @since 10 */ /** - * Declare SliderBlockType + * Enumerates the types of the slider in the block direction. * * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -680,7 +712,7 @@ declare enum SliderBlockType { * @since 10 */ /** - * Use the default block. + * Round slider. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -697,7 +729,7 @@ declare enum SliderBlockType { * @since 10 */ /** - * Use an image as the slider block. + * Slider with an image background. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -714,7 +746,7 @@ declare enum SliderBlockType { * @since 10 */ /** - * Use a shape as the slider block. + * Slider in a custom shape. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -733,7 +765,7 @@ declare enum SliderBlockType { * @since 10 */ /** - * Defines the style of slider block. + * Describes the style of the slider in the block direction. * * @interface SliderBlockStyle * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -751,9 +783,10 @@ declare interface SliderBlockStyle { * @since 10 */ /** - * Sets the type of slider block. + * Type of the slider in the block direction. * * @type { SliderBlockType } + * @default SliderBlockType.DEFAULT - indicating the round slider. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -770,7 +803,8 @@ declare interface SliderBlockStyle { * @since 10 */ /** - * Sets the image of slider block while the type is set to SliderBlockType.Image. + * Image resource of the slider. The area size for displaying the image is subject to the blockSize attribute. + * Be mindful of the image size when selecting an image. * * @type { ?ResourceStr } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -789,7 +823,7 @@ declare interface SliderBlockStyle { * @since 10 */ /** - * Sets the shape of slider block while the type is set to SliderBlockType.Shape. + * Custom shape of the slider. * * @type { ?(CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -804,8 +838,8 @@ declare interface SliderBlockStyle { * Defines the callback type used in SliderConfiguration. * * @typedef {function} SliderTriggerChangeCallback - * @param { number } value - The value of slider. - * @param { SliderChangeMode } mode - The changeMode of slider. + * @param { number } value - Current progress. + * @param { SliderChangeMode } mode - State triggered by the event. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -814,7 +848,7 @@ declare interface SliderBlockStyle { declare type SliderTriggerChangeCallback = (value: number, mode: SliderChangeMode) => void; /** - * SliderConfiguration used by slider content modifier + * You need a custom class to implement the ContentModifier API. * * @extends CommonConfiguration * @interface SliderConfiguration @@ -825,7 +859,7 @@ declare type SliderTriggerChangeCallback = (value: number, mode: SliderChangeMod */ declare interface SliderConfiguration extends CommonConfiguration { /** - * Current progress value. + * Current progress. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -858,7 +892,7 @@ declare interface SliderConfiguration extends CommonConfiguration { * @since 10 */ /** - * Called when the selection value changes. + * Triggered when the slider is dragged or clicked. + *

NOTE: + *
The Begin and End states are triggered when the slider is clicked with a gesture. The Moving and Click states + * are triggered when the value of value changes. If the coherent action is a drag action, the Click state will + * not be triggered. + *

* * @param { function } callback * @returns { SliderAttribute } @@ -1449,9 +1575,10 @@ declare class SliderAttribute extends CommonMethod { * @since 10 */ /** - * Called when the style of block is set. + * Sets the style of the slider in the block direction. * - * @param { SliderBlockStyle } value - the style of block. + * @param { SliderBlockStyle } value - Style of the slider in the block direction. + *
Default value is SliderBlockType.DEFAULT, indicating the round slider. * @returns { SliderAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1482,9 +1609,10 @@ declare class SliderAttribute extends CommonMethod { stepSize(value: Length): SliderAttribute; /** - * Sets the interaction mode of the slider. + * Sets the interaction mode between the user and the slider. * - * @param { SliderInteraction } value + * @param { SliderInteraction } value - Interaction mode between the user and the slider. + *
Default value is SliderInteraction.SLIDE_AND_CLICK. * @returns { SliderAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1506,9 +1634,10 @@ declare class SliderAttribute extends CommonMethod { minResponsiveDistance(value: number): SliderAttribute; /** - * Set the content modifier of slider. + * Creates a content modifier. * - * @param { ContentModifier } modifier - The content modifier of slider. + * @param { ContentModifier } modifier - Content modifier to apply to the slider. + * modifier: content modifier. You need a custom class to implement the ContentModifier API. * @returns { SliderAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1551,6 +1680,38 @@ declare class SliderAttribute extends CommonMethod { * @since 18 */ enableHapticFeedback(enabled: boolean): SliderAttribute; + + /** + * Sets the prefix part of the slider. + * The prefix is the content that appears before the main slider component. + * + * @param { ComponentContent } content - Custom components that will be displayed as the prefix. + * This can be any valid custom UI component structure. + * @param { SliderPrefixOptions } [options] - Optional options for customizing the prefix. + * These options can include accessibility settings. + * @returns { SliderAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + prefix(content: ComponentContent, options?: SliderPrefixOptions): SliderAttribute; + + /** + * Sets the suffix part of the slider. + * The suffix is the content that appears after the main slider component. + * + * @param { ComponentContent } content - Custom components that will be displayed as the suffix. + * This can be any valid custom UI component structure. + * @param { SliderSuffixOptions } [options] - Optional options for customizing the suffix. + * These options can include accessibility settings. + * @returns { SliderAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + suffix(content: ComponentContent, options?: SliderSuffixOptions): SliderAttribute; } /** diff --git a/api/@internal/component/ets/span.d.ts b/api/@internal/component/ets/span.d.ts index ece02031b8510b30e5203ce525858629a1480fb1..cdeb16157e9fba88c242802faf9dfd3db018be61 100644 --- a/api/@internal/component/ets/span.d.ts +++ b/api/@internal/component/ets/span.d.ts @@ -408,7 +408,18 @@ declare class SpanAttribute extends BaseSpan { * @atomicservice * @since 11 */ - fontWeight(value: number | FontWeight | string): SpanAttribute; + /** + * Called when the font weight is set. + * + * @param { number | FontWeight | ResourceStr } value + * @returns { SpanAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + fontWeight(value: number | FontWeight | ResourceStr): SpanAttribute; /** * Called when the font list of text is set. @@ -539,7 +550,18 @@ declare class SpanAttribute extends BaseSpan { * @atomicservice * @since 11 */ - letterSpacing(value: number | string): SpanAttribute; + /** + * Called when the distance between text fonts is set. + * + * @param { number | ResourceStr } value + * @returns { SpanAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + letterSpacing(value: number | ResourceStr): SpanAttribute; /** * Called when the type of letter in the text font is set. diff --git a/api/@internal/component/ets/stack.d.ts b/api/@internal/component/ets/stack.d.ts index a69c515b8e81f3a6b5580204f6350806ebfe95a6..38790a319fe1b5dee03857a64d2dd8aa18244898 100644 --- a/api/@internal/component/ets/stack.d.ts +++ b/api/@internal/component/ets/stack.d.ts @@ -26,7 +26,7 @@ * @crossplatform * @form * @atomicservice - * @since 14 + * @since 18 */ declare interface StackOptions { /** @@ -63,6 +63,18 @@ declare interface StackOptions { * @atomicservice * @since 11 */ + /** + * Alignment of child components in the container. + * + * Anonymous Object Rectification + * @type { ?Alignment } + * @default Alignment.Center + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ alignContent?: Alignment; } @@ -142,13 +154,14 @@ interface StackInterface { /** * Set the options. * + * Anonymous Object Rectification * @param { ?StackOptions } options - stack options * @returns { StackAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form * @atomicservice - * @since 14 + * @since 18 */ (options?: StackOptions): StackAttribute; } @@ -221,7 +234,7 @@ declare class StackAttribute extends CommonMethod { alignContent(value: Alignment): StackAttribute; /** - * Defines the PointLight + * Sets the point light style. * * @param { PointLightStyle } value - The point light style. * @returns { StackAttribute } The attribute of the stack. diff --git a/api/@internal/component/ets/styled_string.d.ts b/api/@internal/component/ets/styled_string.d.ts index f5c622d31e9ee314d545885f7f9c5a7bfca3e201..a73cc49a83c58bcb40837e9cd98a983f3ca2f0b0 100644 --- a/api/@internal/component/ets/styled_string.d.ts +++ b/api/@internal/component/ets/styled_string.d.ts @@ -26,7 +26,7 @@ * @systemapi * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare type StyledStringMarshallingValue = UserDataSpan; @@ -41,7 +41,7 @@ declare type StyledStringMarshallingValue = UserDataSpan; * @systemapi * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare type StyledStringMarshallCallback = (marshallableVal: StyledStringMarshallingValue) => ArrayBuffer; @@ -55,7 +55,7 @@ declare type StyledStringMarshallCallback = (marshallableVal: StyledStringMarsha * @systemapi * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare type StyledStringUnmarshallCallback = (buf: ArrayBuffer) => StyledStringMarshallingValue; @@ -159,6 +159,7 @@ declare class StyledString { *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. + * @throws { BusinessError } 170001 - Convert Error. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 @@ -169,7 +170,7 @@ declare class StyledString { * Returns HTML string from the provided StyledString. * * @param { StyledString } styledString - the StyledString will be converted to a HTML string. - * @returns { string } + * @returns { string } Returns the HTML string converted from the provided StyledString. * @throws { BusinessError } 401 - Parameter error. Possible causes: *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. @@ -189,7 +190,7 @@ declare class StyledString { * @returns { ArrayBuffer } * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi - * @since 18 + * @since 19 */ static marshalling(styledString: StyledString, callback: StyledStringMarshallCallback): ArrayBuffer; @@ -203,9 +204,10 @@ declare class StyledString { *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. + * @throws { BusinessError } 170002 - Styled string decode error. * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi - * @since 18 + * @since 19 */ static unmarshalling(buffer: ArrayBuffer, callback: StyledStringUnmarshallCallback): Promise; @@ -229,6 +231,7 @@ declare class StyledString { *
1. Mandatory parameters are left unspecified. *
2. Incorrect parameters types. *
3. Parameter verification failed. + * @throws { BusinessError } 170002 - Styled string decode error. * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi * @since 13 @@ -427,6 +430,42 @@ declare class TextStyle { * @since 12 */ readonly fontStyle?: FontStyle; + + /** + * Get the stroke width of the StyledString with the unit 'vp'. + * + * @type { ?number } - the stroke width of the StyledString or undefined + * @readonly + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly strokeWidth?: number; + + /** + * Get the stroke color of the StyledString. + * + * @type { ?ResourceColor } - the stroke color of the StyledString or undefined + * @readonly + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly strokeColor?: ResourceColor; + + /** + * Get the superscript style of the StyledString. + * + * @type { ?SuperscriptStyle } - the set superscriptStyle of the StyledString + * @readonly + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly superscript?: SuperscriptStyle; } /** @@ -493,6 +532,61 @@ declare interface TextStyleInterface { * @since 12 */ fontStyle?: FontStyle; + + /** + * The stroke width of the text. + * + * @type { ?LengthMetrics } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + strokeWidth?: LengthMetrics; + + /** + * The stroke color of the text. + * + * @type { ?ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + strokeColor?: ResourceColor; + + /** + * The superscript value of the font property object. + * + * @type { ?SuperscriptStyle } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + superscript?: SuperscriptStyle; +} + +/** + * Defines DecorationOptions for Decoration. + * + * @interface DecorationOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare interface DecorationOptions { + /** + * Enable to show multi TextDecorationType at a time. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + enableMultiType?: boolean; } /** @@ -516,6 +610,18 @@ declare class DecorationStyle { */ constructor(value: DecorationStyleInterface); + /** + * constructor. + * + * @param { DecorationStyleInterface } value - text decoration value. + * @param { DecorationOptions } [options] - decoration options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + constructor(value: DecorationStyleInterface, options?: DecorationOptions); + /** * Get the text decoration type of the StyledString. * @@ -551,6 +657,30 @@ declare class DecorationStyle { * @since 12 */ readonly style?: TextDecorationStyle; + + /** + * Get the thickness scale of the StyledString. + * + * @type { ?number } - the thickness scale of the StyledString or undefined + * @readonly + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly thicknessScale?: number; + + /** + * Get the DecorationOptions of the StyledString. + * + * @type { ?DecorationOptions } - the decorationOptions of the StyledString or undefined + * @readonly + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly options?: DecorationOptions; } /** @@ -595,6 +725,17 @@ declare interface DecorationStyleInterface { * @since 12 */ style?: TextDecorationStyle; + + /** + * The thickness scale of the decoration + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + thicknessScale?: number; } /** @@ -788,6 +929,17 @@ declare interface GestureStyleInterface { * @since 12 */ onLongPress?: Callback; + + /** + * Trigger a touch event when touched. + * + * @type { ?Callback } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onTouch?: Callback; } /** @@ -823,6 +975,18 @@ declare class ParagraphStyle { */ readonly textAlign?: TextAlign; + /** + * Get the text vertical alignment of the StyledString. + * + * @type { ?TextVerticalAlign } - the text vertical alignment of the StyledString or undefined + * @readonly + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly textVerticalAlign?: TextVerticalAlign; + /** * Get the first line indentation of the StyledString. * The unit is vp. @@ -892,7 +1056,7 @@ declare class ParagraphStyle { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ readonly paragraphSpacing?: number; } @@ -918,6 +1082,17 @@ declare interface ParagraphStyleInterface { */ textAlign?: TextAlign; + /** + * Vertical alignment of text. + * + * @type { ?TextVerticalAlign } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + textVerticalAlign?: TextVerticalAlign; + /** * Set the first line indentation. * @@ -980,7 +1155,7 @@ declare interface ParagraphStyleInterface { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ paragraphSpacing?: LengthMetrics; } diff --git a/api/@internal/component/ets/swiper.d.ts b/api/@internal/component/ets/swiper.d.ts index 6c7fbe0bfb86fac417189e68d99c9c56eb0dfaff..69d57de31c99706030956052550343781c143b97 100644 --- a/api/@internal/component/ets/swiper.d.ts +++ b/api/@internal/component/ets/swiper.d.ts @@ -173,6 +173,7 @@ declare class SwiperController { */ /** * Called when need to stop the swiper animation. + * Anonymous Object Rectification * * @param { ?VoidCallback } callback * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -231,7 +232,7 @@ declare class Indicator { * @since 10 */ /** - * Set the indicator to the left. + * Sets the position of the navigation indicator relative to the left edge of the Swiper component. * * @param { Length } value - the indicator to the left. * @returns { T } @@ -254,7 +255,7 @@ declare class Indicator { * @since 10 */ /** - * Set the indicator to the top. + * Sets the position of the navigation indicator relative to the top edge of the Swiper component. * * @param { Length } value - the indicator to the top. * @returns { T } @@ -277,9 +278,10 @@ declare class Indicator { * @since 10 */ /** - * Set the indicator to the right. + * Sets the position of the navigation indicator relative to the right edge of the Swiper component. * - * @param { Length } value - the indicator to the right. + * @param { Length } value - Position of the navigation indicator relative to the right edge of + * the Swiper component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -300,9 +302,10 @@ declare class Indicator { * @since 10 */ /** - * Set the indicator to the bottom. + * Sets the position of the navigation indicator relative to the bottom edge of the Swiper component. * - * @param { Length } value - the indicator to the bottom. + * @param { Length } value - Position of the navigation indicator relative to the bottom edge of + * the Swiper component. * @returns { T } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -313,7 +316,8 @@ declare class Indicator { bottom(value: Length): T; /** - * Set the offset of indicator to the bottom. + * Sets the position of the navigation indicator relative to the bottom edge of the Swiper component. + * You can also choose to ignore the size of the navigation indicator using the ignoreSize property. * * @param { LengthMetrics | Length } bottom - the offset of indicator to the bottom. * @param { boolean } ignoreSize - ignore the size of the indicator. @@ -322,13 +326,13 @@ declare class Indicator { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ bottom(bottom: LengthMetrics | Length, ignoreSize: boolean): T; /** - * Set the indicator to the left in LTR - * Set the indicator to the right in RTL + * Sets the distance between the navigation indicator and the right edge (in right-to-left scripts) + * or the left edge (in left-to-right scripts) of the Swiper component. * * @param { LengthMetrics } value - the indicator to the right in LTR, indicator to the left in RTL * @returns { T } @@ -341,8 +345,8 @@ declare class Indicator { start(value: LengthMetrics): T; /** - * Set the indicator to the left in RTL - * Set the indicator to the right in LTR + * Sets the distance between the navigation indicator and the left edge (in right-to-left scripts) + * or the right edge (in left-to-right scripts) of the Swiper component. * * @param { LengthMetrics } value - the indicator to the left in RTL, Set the indicator to the right in LTR * @returns { T } @@ -451,9 +455,10 @@ declare class DotIndicator extends Indicator { * @since 10 */ /** - * Set the indicator item width. + * Sets the width of the dot-style navigation indicator. * - * @param { Length } value - the indicator item width. + * @param { Length } value - Width of the dot-style navigation indicator. Default value is 6vp. + * This parameter cannot be set in percentage. * @returns { DotIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -474,9 +479,10 @@ declare class DotIndicator extends Indicator { * @since 10 */ /** - * Set the indicator item height. + * Sets the height of the dot-style navigation indicator. * - * @param { Length } value - the indicator item height. + * @param { Length } value - Height of the dot-style navigation indicator. Default value is 6vp. + * This parameter cannot be set in percentage. * @returns { DotIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -497,9 +503,10 @@ declare class DotIndicator extends Indicator { * @since 10 */ /** - * Set the indicator item width when selected. + * Sets the width of the selected dot in the dot-style navigation indicator. * - * @param { Length } value - the indicator item width when selected. + * @param { Length } value - Width of the selected dot in the dot-style navigation indicator. + * Default value is 12vp. This parameter cannot be set in percentage. * @returns { DotIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -520,9 +527,10 @@ declare class DotIndicator extends Indicator { * @since 10 */ /** - * Set the indicator item height when selected. + * Sets the height of the selected dot in the dot-style navigation indicator. * - * @param { Length } value - the indicator item height when selected. + * @param { Length } value - Height of the selected dot in the dot-style navigation indicator. + * Default value is 6vp. This parameter cannot be set in percentage. * @returns { DotIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -543,9 +551,10 @@ declare class DotIndicator extends Indicator { * @since 10 */ /** - * Setting indicator style mask. + * Sets whether to enable the mask for the dot-style navigation indicator. * - * @param { boolean } value - the indicator item mask. + * @param { boolean } value - Whether to enable the mask for the dot-style navigation indicator. + * Default value is false. * @returns { DotIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -566,9 +575,10 @@ declare class DotIndicator extends Indicator { * @since 10 */ /** - * Set the indicator color. + * Sets the color of the dot-style navigation indicator. * - * @param { ResourceColor } value - the indicator item color. + * @param { ResourceColor } value - Color of the dot-style navigation indicator. + * Default value is #182431(10% opacity). * @returns { DotIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -589,9 +599,10 @@ declare class DotIndicator extends Indicator { * @since 10 */ /** - * Set the navigation point color. + * Sets the color of the selected dot in the dot-style navigation indicator. * - * @param { ResourceColor } value - the indicator item when selected. + * @param { ResourceColor } value - Color of the selected dot in the dot-style navigation indicator. + * Default value is #007DFF. * @returns { DotIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -602,9 +613,9 @@ declare class DotIndicator extends Indicator { selectedColor(value: ResourceColor): DotIndicator; /** - * Set the Indicator maxDisplayCount when selected. + * Sets the maximum number of navigation dots in the dot-style navigation indicator. * - * @param { number } maxDisplayCount - the indicator item maxDisplayCount when selected. + * @param { number } maxDisplayCount - Maximum number of navigation dots in the dot-style navigation indicator. * @returns { DotIndicator } return the DotIndicator * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -622,7 +633,7 @@ declare class DotIndicator extends Indicator { * @crossplatform * @form * @atomicservice - * @since 18 + * @since 19 */ space(space: LengthMetrics): DotIndicator; } @@ -723,9 +734,9 @@ declare class DigitIndicator extends Indicator { * @since 10 */ /** - * Set font color of the digital indicator. + * Sets the font color of the digit-style navigation indicator. * - * @param { ResourceColor } value - the indicator font color. + * @param { ResourceColor } value - Font color of the digit-style navigation indicator. Default value is #ff182431. * @returns { DigitIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -746,9 +757,10 @@ declare class DigitIndicator extends Indicator { * @since 10 */ /** - * Set font color of the digital indicator when selected. + * Sets the font color of the selected digit in the digit-style navigation indicator. * - * @param { ResourceColor } value - the indicator font color when selected. + * @param { ResourceColor } value - Font color of the selected digit in the digit-style navigation indicator. + * Default value is #ff182431. * @returns { DigitIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -769,9 +781,15 @@ declare class DigitIndicator extends Indicator { * @since 10 */ /** - * Set the digital indicator font (just support font size and weight). + * Sets the font style of the digit-style navigation indicator. + * + *

NOTE: + *
Only the size and weight parameters in Font are adjustable. + * * - * @param { Font } value - the indicator font size and weight. + * @param { Font } value - Font style of the digit-style navigation indicator. + * Default value is { size: 14, weight: FontWeight.Normal }. * @returns { DigitIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -792,9 +810,10 @@ declare class DigitIndicator extends Indicator { * @since 10 */ /** - * Set the digital indicator font (just support font size and weight). + * Sets the font style of the selected digit in the digit-style navigation indicator. * - * @param { Font } value - the indicator font size and weight when selected. + * @param { Font } value - Font style of the selected digit in the digit-style navigation indicator. + * Default value is { size: 14, weight: FontWeight.Normal }. * @returns { DigitIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1270,7 +1289,7 @@ declare interface SwiperAnimationEvent { } /** - * Define autoPlay related options. + * Defines the properties for controlling the autoplay behavior. * * @interface AutoPlayOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1281,7 +1300,7 @@ declare interface SwiperAnimationEvent { */ declare interface AutoPlayOptions { /** - * Set whether to stop autoplay immediately on touch down event. + * Whether the autoplay stops immediately when the component is touched. * * @type { boolean } * @default true @@ -1304,7 +1323,8 @@ declare interface AutoPlayOptions { */ declare enum SwiperNestedScrollMode { /** - * Only Self response scrolling. + * The scrolling is contained within the Swiper component, and no scroll chaining occurs, that is, + * the parent container does not scroll when the component scrolling reaches the boundary. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -1313,7 +1333,7 @@ declare enum SwiperNestedScrollMode { SELF_ONLY = 0, /** - * Self priority response scrolling. + * The Swiper component scrolls first, and when it hits the boundary, the parent container scrolls. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -1456,9 +1476,11 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Called when the index value of the displayed subcomponent is set in the container. + * Sets the index of the child component currently displayed in the container. * - * @param { number } value + * @param { number } value - Index of the child component currently displayed in the container. Default value is 0. + * If the value is less than 0 or greater than or equal to the number of child components, + * the default value 0 is used. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1487,9 +1509,16 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Called when setting whether the subcomponent plays automatically. + * Sets whether to enable automatic playback for child component switching. + * + *

NOTE: + *
If loop is set to false, the playback stops when the last page is reached. + *
The playback continues when the page is not the last page after a swipe gesture. + *
If the Swiper component becomes invisible, the playback stops. + *

* - * @param { boolean } value + * @param { boolean } value - Whether to enable automatic playback for child component switching. + * Default value is false. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1500,10 +1529,19 @@ declare class SwiperAttribute extends CommonMethod { autoPlay(value: boolean): SwiperAttribute; /** - * Set whether the subcomponent plays automatically. + * Sets whether child components automatically play when the screen is pressed by fingers, a mouse device, + * or other input devices. + * + *

NOTE: + *
If loop is set to false, the playback stops when the last page is reached. + *
The playback continues when the page is not the last page after a swipe gesture. + *
If the Swiper component becomes invisible, the playback stops. + *

* - * @param { boolean } autoPlay - whether the subcomponent plays automatically - * @param { AutoPlayOptions } options - autoPlay related options + * @param { boolean } autoPlay - Whether to enable automatic playback for child component switching. + * Default value is false. + * @param { AutoPlayOptions } options - Whether child components stop autoplay when the screen is pressed by fingers, + * a mouse device, or other input devices. Default value is { stopWhenTouched: true }. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1532,9 +1570,10 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Called when the time interval for automatic playback is set. + * Sets the interval for automatic playback. * - * @param { number } value + * @param { number } value - Interval for automatic playback. Default value is 3000, the unit is ms. + * Minimum value is 0ms. If a value less than 0 is set, the default value is used. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1563,9 +1602,10 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Set indicator is enabled, or set type style. + * Sets the style of the navigation indicator. * - * @param { DotIndicator | DigitIndicator | boolean } value - the style value or show indicator of the swiper indicator. + * @param { DotIndicator | DigitIndicator | boolean } value - Style of the navigation indicator. + * Default value is true, default style is DotIndicator. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1576,10 +1616,10 @@ declare class SwiperAttribute extends CommonMethod { indicator(value: DotIndicator | DigitIndicator | boolean): SwiperAttribute; /** - * Use indicator component controller. + * Sets the navigation indicator for the component. * * @param { IndicatorComponentController | DotIndicator | DigitIndicator | boolean } indicator - - * the style value or show indicator of the swiper indicator. + * Style of the navigation indicator. Default value is true, default style is DotIndicator. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1599,10 +1639,11 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Set arrow is enabled, or set the arrow style. + * Sets the arrow style of the navigation indicator. * - * @param { ArrowStyle | boolean } value - arrow is displayed or set the arrow style. - * @param { boolean } isHoverShow - arrow is display when mouse hover in indicator hotspot. + * @param { ArrowStyle | boolean } value - arrow is displayed or set the arrow style. Default value is false. + * @param { boolean } isHoverShow - Whether to show the arrow only when the mouse pointer hovers + * over the navigation indicator. Default value is false. * @returns { SwiperAttribute } return the component attribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1630,9 +1671,9 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Called when setting whether to turn on cyclic sliding. + * Sets whether to enable loop playback. * - * @param { boolean } value + * @param { boolean } value - Whether to enable loop playback. Default value is true. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1660,9 +1701,10 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Called when the animation duration of the switch is set. + * Sets the duration of the animation for child component switching. * - * @param { number } value + * @param { number } value - Duration of the autoplay for child component switching. Default value is 400, + * the unit is ms. Minimum value is 0ms. If a value less than 0 is set, the default value is used. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1690,9 +1732,9 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Called when setting whether to slide vertically. + * Sets whether vertical swiping is used. * - * @param { boolean } value + * @param { boolean } value - Whether vertical swiping is used. Default value is false. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1722,8 +1764,15 @@ declare class SwiperAttribute extends CommonMethod { */ /** * Sets the space between child components. + * + *

NOTE: + *
If the type is number, the default unit is vp. + *
If the type is string, the pixel unit must be explicitly specified, for example, '10px'; + * if the unit is not specified, for example, '10', the default unit vp is used. + *

* - * @param { number | string } value + * @param { number | string } value - Space between child components. Default value is 0, + * Minimum value is 0. If a value less than 0 is set, the default value is used. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1752,9 +1801,11 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Called when setting the size of the swiper container on the spindle. + * Sets the mode in which elements are displayed along the main axis. + * This API takes effect only when displayCount is not set. * - * @param { SwiperDisplayMode } value + * @param { SwiperDisplayMode } value - Mode in which elements are displayed along the main axis. + * Default value is SwiperDisplayMode.STRETCH. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1784,8 +1835,14 @@ declare class SwiperAttribute extends CommonMethod { */ /** * Sets the number of child components to be preloaded(cached). + * + *

NOTE: + *
Which are needed for the specific number of pages immediately before and after the current page. + *
If swipeByGroup in displayCount is set to true, child components are cached by group. + *

* - * @param { number } value + * @param { number } value - Number of child components to be preloaded (cached). Default value is 1. + * Minimum value is 0. If a value less than 0 is set, the default value is used. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1798,8 +1855,10 @@ declare class SwiperAttribute extends CommonMethod { /** * Sets the number of child components to be preloaded(cached). * - * @param { number } count - Number of child components to be preloaded (cached). - * @param { boolean } isShown - whether to show the nodes in the cache. + * @param { number } count - Number of child components to be preloaded (cached).Default value is 1. + * Minimum value is 0. If a value less than 0 is set, the default value is used. + * @param { boolean } isShown - Whether the cached nodes within the range rendered + * without being added to the render tree. Default value is false. * @returns { SwiperAttribute } the attribute of the swiper. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1837,8 +1896,8 @@ declare class SwiperAttribute extends CommonMethod { * 4、Placeholder items do not display any content and are only used as placeholders. * 5、When turning pages, turn pages by group. * - * @param { number | string | SwiperAutoFill } value - * @param { boolean } [swipeByGroup] - if swipe by group. + * @param { number | string | SwiperAutoFill } value - Number of elements to display per page. Default value is 1. + * @param { boolean } [swipeByGroup] - Whether to turn pages by group. Default value is false. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1867,9 +1926,14 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Invoked when setting the sliding effect + * Sets the effect used when the component is at one of the edges. + * + *

NOTE: + *
This attribute takes effect when loop is set to false. + *

* - * @param { EdgeEffect } value + * @param { EdgeEffect } value - Effect used when the component is at one of the edges. + * Default value is EdgeEffect.Spring. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1898,9 +1962,9 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Sets whether to disable the swipe feature + * Sets whether to disable the swipe feature. * - * @param { boolean } value + * @param { boolean } value - Whether to disable the swipe feature. Default value is false. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1931,11 +1995,12 @@ declare class SwiperAttribute extends CommonMethod { * @since 10 */ /** - * Sets the animation curve + * Sets the animation curve. * Curve is an enumeration type for common curves * ICurve is a curve object * - * @param { Curve | string | ICurve } value + * @param { Curve | string | ICurve } value - Animation curve. + * Default value is interpolatingSpring(-1, 1, 328, 34). * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1975,7 +2040,8 @@ declare class SwiperAttribute extends CommonMethod { * @since 11 */ /** - * Called when the index value changes. + * Triggered when the index of the currently displayed child component changes. + * Anonymous Object Rectification * * @param { Callback } event * @returns { SwiperAttribute } @@ -2030,11 +2096,23 @@ declare class SwiperAttribute extends CommonMethod { * @since 11 */ /** - * The previous margin which can be used to expose a small portion of the previous item. + * Sets the previous margin, used to reveal a small part of the previous item. * When the previous item is empty, do not display blank space. - * - * @param { Length } value - The length of previous margin. + * + *

NOTE: + *
This attribute is effective only when the layout mode of the child components in Swiper is set to stretch, + * which mainly includes two scenarios: 1. displayMode is set to SwiperDisplayMode.STRETCH; + * 2. displayCount is assigned a numeric value. + *
When the main axis runs horizontally and either the next margin or previous margin is greater than + * the measured width of the child component, neither the next margin nor previous margin is displayed. + *
When the main axis runs vertically and either the next margin or previous margin is greater than + * the measured height of the child component, neither the next margin nor previous margin is displayed. + *

+ * + * @param { Length } value - The length of previous margin.This attribute cannot be set in percentage. + * Default value is 0. * @param { boolean } [ignoreBlank] - Whether to hide(ignore) the previous margin on the first page in non-loop scenarios. + * Default value is false. * @returns { SwiperAttribute } The attribute of the swiper. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2062,11 +2140,23 @@ declare class SwiperAttribute extends CommonMethod { * @since 11 */ /** - * The next margin which can be used to expose a small portion of the latter item. + * Sets the next margin, used to reveal a small part of the next item. * When the next item is empty, do not display blank space. - * - * @param { Length } value - The length of next margin. + * + *

NOTE: + *
This attribute is effective only when the layout mode of the child components in Swiper is set to stretch, + * which mainly includes two scenarios: 1. displayMode is set to SwiperDisplayMode.STRETCH; + * 2. displayCount is assigned a numeric value. + *
When the main axis runs horizontally and either the next margin or previous margin is greater than + * the measured width of the child component, neither the next margin nor previous margin is displayed. + *
When the main axis runs vertically and either the next margin or previous margin is greater than + * the measured height of the child component, neither the next margin nor previous margin is displayed. + *

+ * + * @param { Length } value - The length of next margin. This attribute cannot be set in percentage. + * Default value is 0. * @param { boolean } [ignoreBlank] - Whether to hide(ignore) the next margin on the last page in non-loop scenarios. + * Default value is false. * @returns { SwiperAttribute } The attribute of the swiper. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2124,7 +2214,8 @@ declare class SwiperAttribute extends CommonMethod { * @since 11 */ /** - * Called when the swiper animation start. + * Triggered when the switching animation starts. + * Anonymous Object Rectification * * @param { OnSwiperAnimationStartCallback } event * @returns { SwiperAttribute } @@ -2170,7 +2261,8 @@ declare class SwiperAttribute extends CommonMethod { * @since 11 */ /** - * Called when the swiper animation end. + * Triggered when the switching animation ends. + * Anonymous Object Rectification * * @param { OnSwiperAnimationEndCallback } event * @returns { SwiperAttribute } @@ -2206,7 +2298,8 @@ declare class SwiperAttribute extends CommonMethod { * @since 11 */ /** - * Called when the swiper swipe with the gesture. + * Triggered on a frame-by-frame basis when the page is turned by a swipe. + * Anonymous Object Rectification * * @param { OnSwiperGestureSwipeCallback } event * @returns { SwiperAttribute } @@ -2218,9 +2311,16 @@ declare class SwiperAttribute extends CommonMethod { onGestureSwipe(event: OnSwiperGestureSwipeCallback): SwiperAttribute; /** - * Called to setting the nested scroll mode. + * Sets the nested scrolling mode of the Swiper component and its parent container. + * + *

NOTE: + *
When loop is set to true, the Swiper component has no edge effect and does not trigger + * nested scrolling of its parent container. + *

+ * * * @param { SwiperNestedScrollMode } value - mode for nested scrolling. + * Default value is SwiperNestedScrollMode.SELF_ONLY. * @returns { SwiperAttribute } the attribute of the swiper. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2230,7 +2330,16 @@ declare class SwiperAttribute extends CommonMethod { nestedScroll(value: SwiperNestedScrollMode): SwiperAttribute; /** - * Custom swiper content transition animation. + * Defines a custom switching animation. + * + *

NOTE: + *
1. This API does not work when prevMargin and nextMargin are set in such a way that + * the Swiper frontend and backend display the same page during loop playback. + *
2. During page scrolling, the ContentDidScrollCallback callback is invoked for all pages in the viewport + * on a frame-by-frame basis. + *
3. When the swipeByGroup parameter of the displayCount attribute is set to true, + * the callback is invoked for all pages in a group if any page in the group is within the viewport. + *

* * @param { SwiperContentAnimatedTransition } transition - custom content transition animation. * @returns { SwiperAttribute } the attribute of the swiper. @@ -2242,7 +2351,16 @@ declare class SwiperAttribute extends CommonMethod { customContentTransition(transition: SwiperContentAnimatedTransition): SwiperAttribute; /** - * Called when the swiper content did scroll. + * Triggered when content in the Swiper component scrolls. + * + *

NOTE: + *
1. This API does not work when prevMargin and nextMargin are set in such a way that + * the Swiper frontend and backend display the same page during loop playback. + *
2. During page scrolling, the ContentDidScrollCallback callback is invoked for all pages in the viewport + * on a frame-by-frame basis. + *
3. When the swipeByGroup parameter of the displayCount** attribute is set to true, + * the callback is invoked for all pages in a group if any page in the group is within the viewport. + *

* * @param { ContentDidScrollCallback } handler - callback of scroll, * selectedIndex is the index value of the swiper content selected before animation start. @@ -2258,9 +2376,9 @@ declare class SwiperAttribute extends CommonMethod { onContentDidScroll(handler: ContentDidScrollCallback): SwiperAttribute; /** - * Setting whether the indicator is interactive. + * Sets whether the navigation indicator is interactive. * - * @param { boolean } value - Whether the indicator is interactive. + * @param { boolean } value - Whether the navigation indicator is interactive. Default value is true. * @returns { SwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2294,6 +2412,20 @@ declare class SwiperAttribute extends CommonMethod { * @since 15 */ onContentWillScroll(handler: ContentWillScrollCallback): SwiperAttribute; + + /** + * Set maintain visible content position. + * + * @param { boolean } enabled - maintain visible content position. + * Default value is false. + * @returns { SwiperAttribute } the attribute of swiper. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + maintainVisibleContentPosition(enabled: boolean): SwiperAttribute; } /** diff --git a/api/@internal/component/ets/symbol_span.d.ts b/api/@internal/component/ets/symbol_span.d.ts index cac42f630020394940dcf876ed0298c06e8486bb..c11965a765e2aed98e742e75d274dfd563516d31 100644 --- a/api/@internal/component/ets/symbol_span.d.ts +++ b/api/@internal/component/ets/symbol_span.d.ts @@ -34,6 +34,16 @@ * @atomicservice * @since 12 */ +/** + * Provides an interface for SymbolSpan. + * + * @interface SymbolSpanInterface + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ interface SymbolSpanInterface { /** * Called when resource is entered in SymbolSpan. @@ -53,6 +63,17 @@ interface SymbolSpanInterface { * @atomicservice * @since 12 */ + /** + * Called when resource is entered in SymbolSpan. + * + * @param { Resource } value + * @returns { SymbolSpanAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ (value: Resource): SymbolSpanAttribute; } @@ -72,6 +93,16 @@ interface SymbolSpanInterface { * @atomicservice * @since 12 */ +/** + * Provides attribute for SymbolSpan. + * + * @extends CommonMethod + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare class SymbolSpanAttribute extends CommonMethod { /** * Called when the SymbolSpan size is set. @@ -91,6 +122,17 @@ declare class SymbolSpanAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the SymbolSpan size is set. + * + * @param { number | string | Resource } value + * @returns { SymbolSpanAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ fontSize(value: number | string | Resource): SymbolSpanAttribute; /** @@ -111,6 +153,17 @@ declare class SymbolSpanAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the SymbolSpan color is set. + * + * @param { Array } value + * @returns { SymbolSpanAttribute } The attribute of the SymbolGlyph. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ fontColor(value: Array): SymbolSpanAttribute; /** @@ -131,6 +184,17 @@ declare class SymbolSpanAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the font SymbolSpan weight is set. + * + * @param { number | FontWeight | string } value + * @returns { SymbolSpanAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ fontWeight(value: number | FontWeight | string): SymbolSpanAttribute; /** @@ -151,6 +215,17 @@ declare class SymbolSpanAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the SymbolSpan effect is set. + * + * @param { SymbolEffectStrategy } value + * @returns { SymbolSpanAttribute } The attribute of the SymbolGlyph. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ effectStrategy(value: SymbolEffectStrategy): SymbolSpanAttribute; /** @@ -171,6 +246,17 @@ declare class SymbolSpanAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the SymbolSpan rendering strategy is set. + * + * @param { SymbolRenderingStrategy } value + * @returns { SymbolSpanAttribute } The attribute of the SymbolGlyph. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ renderingStrategy(value: SymbolRenderingStrategy): SymbolSpanAttribute; /** @@ -182,6 +268,16 @@ declare class SymbolSpanAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Sets the attribute modifier. + * + * @param { AttributeModifier } modifier - The instance of symbol span modifier. + * @returns { SymbolSpanAttribute } the attribute of the SymbolSpanAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ attributeModifier(modifier: AttributeModifier): SymbolSpanAttribute; } @@ -199,6 +295,15 @@ declare class SymbolSpanAttribute extends CommonMethod { * @atomicservice * @since 12 */ +/** + * Defines SymbolSpan Component. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare const SymbolSpan: SymbolSpanInterface; /** @@ -215,4 +320,13 @@ declare const SymbolSpan: SymbolSpanInterface; * @atomicservice * @since 12 */ +/** + * Defines SymbolSpan Component instance. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare const SymbolSpanInstance: SymbolSpanAttribute; diff --git a/api/@internal/component/ets/symbolglyph.d.ts b/api/@internal/component/ets/symbolglyph.d.ts index f4db61b089834fa76dfaf408c902552c7427b32a..3d9edfd394d959c7c2525d5de7f127c98582c299 100644 --- a/api/@internal/component/ets/symbolglyph.d.ts +++ b/api/@internal/component/ets/symbolglyph.d.ts @@ -34,6 +34,16 @@ * @atomicservice * @since 12 */ +/** + * Provides an interface for SymbolGlyph. + * + * @interface SymbolGlyphInterface + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ interface SymbolGlyphInterface { /** * Called when resource is entered in SymbolGlyph. @@ -53,6 +63,17 @@ interface SymbolGlyphInterface { * @atomicservice * @since 12 */ + /** + * Called when resource is entered in SymbolGlyph. + * + * @param { Resource } value + * @returns { SymbolGlyphAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ (value?: Resource): SymbolGlyphAttribute; } @@ -72,6 +93,16 @@ interface SymbolGlyphInterface { * @atomicservice * @since 12 */ +/** + * The symbol rendering strategy. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare enum SymbolRenderingStrategy { /** * The single rendering strategy. @@ -87,6 +118,15 @@ declare enum SymbolRenderingStrategy { * @atomicservice * @since 12 */ + /** + * The single rendering strategy. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ SINGLE = 0, /** @@ -103,6 +143,15 @@ declare enum SymbolRenderingStrategy { * @atomicservice * @since 12 */ + /** + * The multiple color rendering strategy. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ MULTIPLE_COLOR = 1, /** @@ -119,6 +168,15 @@ declare enum SymbolRenderingStrategy { * @atomicservice * @since 12 */ + /** + * The multiple opacity rendering strategy. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ MULTIPLE_OPACITY = 2, } @@ -138,6 +196,16 @@ declare enum SymbolRenderingStrategy { * @atomicservice * @since 12 */ +/** + * The symbol effect strategy. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare enum SymbolEffectStrategy { /** * There is no effect strategy. @@ -153,6 +221,15 @@ declare enum SymbolEffectStrategy { * @atomicservice * @since 12 */ + /** + * There is no effect strategy. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ NONE = 0, /** @@ -169,6 +246,15 @@ declare enum SymbolEffectStrategy { * @atomicservice * @since 12 */ + /** + * The scale effect strategy. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ SCALE = 1, /** @@ -185,6 +271,15 @@ declare enum SymbolEffectStrategy { * @atomicservice * @since 12 */ + /** + * The hierarchical effect strategy. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ HIERARCHICAL = 2, } @@ -197,6 +292,16 @@ declare enum SymbolEffectStrategy { * @atomicservice * @since 12 */ +/** + * The direction type of symbol effect + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare enum EffectDirection { /** * The scale down animation of symbol @@ -206,6 +311,15 @@ declare enum EffectDirection { * @atomicservice * @since 12 */ + /** + * The scale down animation of symbol + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ DOWN = 0, /** * The scale up animation of symbol @@ -215,6 +329,15 @@ declare enum EffectDirection { * @atomicservice * @since 12 */ + /** + * The scale up animation of symbol + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ UP = 1, } @@ -227,6 +350,16 @@ declare enum EffectDirection { * @atomicservice * @since 12 */ +/** + * Declare scope type of the symbol effect + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare enum EffectScope { /** * The layered animation of symbol @@ -236,6 +369,15 @@ declare enum EffectScope { * @atomicservice * @since 12 */ + /** + * The layered animation of symbol + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ LAYER = 0, /** * The whole animation of symbol @@ -245,6 +387,15 @@ declare enum EffectScope { * @atomicservice * @since 12 */ + /** + * The whole animation of symbol + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ WHOLE = 1, } @@ -257,6 +408,16 @@ declare enum EffectScope { * @atomicservice * @since 12 */ +/** + * Declare fill style of symbol + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare enum EffectFillStyle { /** * The cumulative fill style of symbol @@ -266,6 +427,15 @@ declare enum EffectFillStyle { * @atomicservice * @since 12 */ + /** + * The cumulative fill style of symbol + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ CUMULATIVE = 0, /** @@ -276,6 +446,15 @@ declare enum EffectFillStyle { * @atomicservice * @since 12 */ + /** + * The iterative fill style of symbol + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ ITERATIVE = 1, } @@ -287,6 +466,15 @@ declare enum EffectFillStyle { * @atomicservice * @since 12 */ +/** + * Defines SymbolEffect class. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare class SymbolEffect { } @@ -299,6 +487,16 @@ declare class SymbolEffect { * @atomicservice * @since 12 */ +/** + * Defines ScaleSymbolEffect class. + * + * @extends SymbolEffect + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare class ScaleSymbolEffect extends SymbolEffect { /** * constructor. @@ -310,6 +508,17 @@ declare class ScaleSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * constructor. + * + * @param { EffectScope } [scope] - The scope type of symbol effect. + * @param { EffectDirection } [direction] - The direction of symbol effect. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ constructor(scope?: EffectScope, direction?: EffectDirection); /** @@ -321,6 +530,16 @@ declare class ScaleSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * The scope type of symbol effect + * + * @type { ?EffectScope } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ scope?: EffectScope; /** @@ -332,6 +551,16 @@ declare class ScaleSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * The direction of symbol effect + * + * @type { ?EffectDirection } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ direction?: EffectDirection; } @@ -344,6 +573,16 @@ declare class ScaleSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ +/** + * Defines HierarchicalSymbolEffect class. + * + * @extends SymbolEffect + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare class HierarchicalSymbolEffect extends SymbolEffect { /** * constructor. @@ -354,6 +593,16 @@ declare class HierarchicalSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * constructor. + * + * @param { EffectFillStyle } [fillStyle] - The fill style of symbol effect. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ constructor(fillStyle?: EffectFillStyle); /** @@ -365,6 +614,16 @@ declare class HierarchicalSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * The fill style of symbol effect + * + * @type { ?EffectFillStyle } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ fillStyle?: EffectFillStyle; } @@ -377,6 +636,16 @@ declare class HierarchicalSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ +/** + * Defines AppearSymbolEffect class. + * + * @extends SymbolEffect + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare class AppearSymbolEffect extends SymbolEffect { /** * constructor. @@ -387,6 +656,16 @@ declare class AppearSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * constructor. + * + * @param { EffectScope } [scope] - The scope type of symbol effect. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ constructor(scope?: EffectScope); /** @@ -398,6 +677,16 @@ declare class AppearSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * The scope type of symbol effect + * + * @type { ?EffectScope } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ scope?: EffectScope; } @@ -410,6 +699,16 @@ declare class AppearSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ +/** + * Defines DisappearSymbolEffect class. + * + * @extends SymbolEffect + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare class DisappearSymbolEffect extends SymbolEffect { /** * constructor. @@ -420,6 +719,16 @@ declare class DisappearSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * constructor. + * + * @param { EffectScope } [scope] - The scope type of symbol effect. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ constructor(scope?: EffectScope); /** @@ -431,6 +740,16 @@ declare class DisappearSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * The scope type of symbol effect + * + * @type { ?EffectScope } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ scope?: EffectScope; } @@ -443,6 +762,16 @@ declare class DisappearSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ +/** + * Defines BounceSymbolEffect class. + * + * @extends SymbolEffect + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare class BounceSymbolEffect extends SymbolEffect { /** * constructor. @@ -454,6 +783,17 @@ declare class BounceSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * constructor. + * + * @param { EffectScope } [scope] - The scope type of symbol effect. + * @param { EffectDirection } [direction] - The direction of symbol effect. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ constructor(scope?: EffectScope, direction?: EffectDirection); /** @@ -465,6 +805,16 @@ declare class BounceSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * The scope type of symbol effect + * + * @type { ?EffectScope } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ scope?: EffectScope; /** @@ -476,6 +826,16 @@ declare class BounceSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * The direction of symbol effect + * + * @type { ?EffectDirection } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ direction?: EffectDirection; } @@ -488,6 +848,16 @@ declare class BounceSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ +/** + * Defines ReplaceSymbolEffect class. + * + * @extends SymbolEffect + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare class ReplaceSymbolEffect extends SymbolEffect { /** * constructor. @@ -498,6 +868,16 @@ declare class ReplaceSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * constructor. + * + * @param { EffectScope } [scope] - The scope type of symbol effect. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ constructor(scope?: EffectScope); /** @@ -509,6 +889,16 @@ declare class ReplaceSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ + /** + * The scope type of symbol effect + * + * @type { ?EffectScope } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ scope?: EffectScope; } @@ -540,6 +930,16 @@ declare class PulseSymbolEffect extends SymbolEffect { * @atomicservice * @since 12 */ +/** + * Provides attribute for SymbolGlyph. + * + * @extends CommonMethod + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare class SymbolGlyphAttribute extends CommonMethod { /** * Called when the SymbolGlyph size is set. @@ -559,6 +959,17 @@ declare class SymbolGlyphAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the SymbolGlyph size is set. + * + * @param { number | string | Resource } value + * @returns { SymbolGlyphAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ fontSize(value: number | string | Resource): SymbolGlyphAttribute; /** @@ -579,8 +990,30 @@ declare class SymbolGlyphAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the SymbolGlyph color is set. + * + * @param { Array } value + * @returns { SymbolGlyphAttribute } The attribute of the SymbolGlyph. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ fontColor(value: Array): SymbolGlyphAttribute; + /** + * Set the shader style of the symbol, such as lineargradient or radialgradient. + * + * @param { Array } shaders - The shaders style of the symbol. + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + shaderStyle(shaders: Array): SymbolGlyphAttribute; + /** * Called when the font symbolGlyph weight is set. * @@ -599,6 +1032,17 @@ declare class SymbolGlyphAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the font symbolGlyph weight is set. + * + * @param { number | FontWeight | string } value + * @returns { SymbolGlyphAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ fontWeight(value: number | FontWeight | string): SymbolGlyphAttribute; /** @@ -619,6 +1063,17 @@ declare class SymbolGlyphAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the symbolGlyph effect is set. + * + * @param { SymbolEffectStrategy } value + * @returns { SymbolGlyphAttribute } The attribute of the SymbolGlyph. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ effectStrategy(value: SymbolEffectStrategy): SymbolGlyphAttribute; /** @@ -639,6 +1094,17 @@ declare class SymbolGlyphAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the symbolGlyph rendering strategy is set. + * + * @param { SymbolRenderingStrategy } value + * @returns { SymbolGlyphAttribute } The attribute of the SymbolGlyph. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ renderingStrategy(value: SymbolRenderingStrategy): SymbolGlyphAttribute; /** @@ -652,6 +1118,18 @@ declare class SymbolGlyphAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Define effect options for SymbolGlyph. + * + * @param { SymbolEffect } [symbolEffect] - The symbol effect type + * @param { boolean } [isActive] - The active state of the effect + * @returns { SymbolGlyphAttribute } The attribute of the SymbolGlyph. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ symbolEffect(symbolEffect: SymbolEffect, isActive?: boolean): SymbolGlyphAttribute; /** @@ -665,6 +1143,18 @@ declare class SymbolGlyphAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Define effect options for SymbolGlyph. + * + * @param { SymbolEffect } [symbolEffect] - The symbol effect type + * @param { number } [triggerValue] - The trigger of the effect + * @returns { SymbolGlyphAttribute } The attribute of the SymbolGlyph. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ symbolEffect(symbolEffect: SymbolEffect, triggerValue?: number): SymbolGlyphAttribute; /** @@ -676,6 +1166,16 @@ declare class SymbolGlyphAttribute extends CommonMethod { * @atomicservice * @since 18 */ + /** + * Called when the minimum font scale of the font is set. + * + * @param { Optional } scale + * @returns { SymbolGlyphAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ minFontScale(scale: Optional): SymbolGlyphAttribute; /** @@ -687,6 +1187,16 @@ declare class SymbolGlyphAttribute extends CommonMethod { * @atomicservice * @since 18 */ + /** + * Called when the maximum font scale of the font is set. + * + * @param { Optional } scale + * @returns { SymbolGlyphAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ maxFontScale(scale: Optional): SymbolGlyphAttribute; } @@ -704,6 +1214,15 @@ declare class SymbolGlyphAttribute extends CommonMethod { * @atomicservice * @since 12 */ +/** + * Defines SymbolGlyph Component. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare const SymbolGlyph: SymbolGlyphInterface; /** @@ -720,4 +1239,13 @@ declare const SymbolGlyph: SymbolGlyphInterface; * @atomicservice * @since 12 */ +/** + * Defines SymbolGlyph Component instance. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ declare const SymbolGlyphInstance: SymbolGlyphAttribute; diff --git a/api/@internal/component/ets/tab_content.d.ts b/api/@internal/component/ets/tab_content.d.ts index 6a1bc94f6c9c2c13a54ad4e67238e8cc43dbe97f..0b608df9b788f09b288528d740a3b94c946c3b78 100644 --- a/api/@internal/component/ets/tab_content.d.ts +++ b/api/@internal/component/ets/tab_content.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Copyright (c) 2021-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -44,7 +44,7 @@ declare enum SelectedMode { * @since 10 */ /** - * The value of indicator + * Indicator mode. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -61,7 +61,7 @@ declare enum SelectedMode { * @since 10 */ /** - * The value of board + * Board mode. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -171,9 +171,10 @@ interface IndicatorStyle { * @since 10 */ /** - * Define the color of the indicator + * Color of the indicator and board. * * @type { ?ResourceColor } + * @default #FF007DFF * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -190,9 +191,10 @@ interface IndicatorStyle { * @since 10 */ /** - * Define the height of the indicator + * Height of the indicator. It cannot be set in percentage. * * @type { ?Length } + * @default 2vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -211,7 +213,7 @@ interface IndicatorStyle { * @since 10 */ /** - * Define the width of the indicator. + * Width of the indicator. It cannot be set in percentage. * If it is 0, the width will be equal to the width of the content * * @type { ?Length } @@ -233,7 +235,7 @@ interface IndicatorStyle { * @since 10 */ /** - * Define the border radius of the indicator + * Rounded corner radius of the indicator. It cannot be set in percentage. * * @type { ?Length } * @default 0 @@ -254,10 +256,10 @@ interface IndicatorStyle { * @since 10 */ /** - * Define the margin top of the indicator + * Spacing between the indicator and text.It cannot be set in percentage. * * @type { ?Length } - * @default 8 + * @default 8vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -331,9 +333,10 @@ declare interface LabelStyle { * @since 10 */ /** - * overflow mode. + * Display mode when the label text is too long. * * @type { ?TextOverflow } + * @default TextOverflow.Ellipsis * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -350,9 +353,10 @@ declare interface LabelStyle { * @since 10 */ /** - * Label max lines. + * Maximum number of lines in the label text. * * @type { ?number } + * @default 1 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -369,7 +373,7 @@ declare interface LabelStyle { * @since 10 */ /** - * Min font size for adapted height. + * Minimum font size of the label text. * * @type { ?(number | ResourceStr) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -388,7 +392,7 @@ declare interface LabelStyle { * @since 10 */ /** - * Max font size for adapted height. + * Maximum font size of the label text. * * @type { ?(number | ResourceStr) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -407,9 +411,10 @@ declare interface LabelStyle { * @since 10 */ /** - * Adapt text height option. + * How the adaptive height is determined for the label text. * * @type { ?TextHeightAdaptivePolicy } + * @default TextHeightAdaptivePolicy.MAX_LINES_FIRST * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -426,7 +431,7 @@ declare interface LabelStyle { * @since 10 */ /** - * Font style. + * Font of the label text. * * @type { ?Font } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -437,9 +442,10 @@ declare interface LabelStyle { font?: Font; /** - * The text color of the selected tab bar. + * Font color of the label text when it is selected. * * @type { ?ResourceColor } + * @default #FF007DFF * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -448,9 +454,10 @@ declare interface LabelStyle { selectedColor?: ResourceColor; /** - * The text color of the unselected tab bar. + * Font color of the label text when it is not selected. * * @type { ?ResourceColor } + * @default #99182431 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -499,25 +506,55 @@ declare interface TabBarIconStyle { * @atomicservice * @since 12 */ +/** + * TabBarSymbol object. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ declare class TabBarSymbol { /** - * The properties of the symbol icon in the tab bar need to be unselected. + * Symbol icon in the normal style. * * @type { SymbolGlyphModifier } + * @default fontColor: #66182431, renderingStrategy: SymbolRenderingStrategy.MULTIPLE_OPACITY, fontSize: 24vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * Symbol icon in the normal style. + * + * @type { SymbolGlyphModifier } + * @default fontColor: #66182431, renderingStrategy: SymbolRenderingStrategy.MULTIPLE_OPACITY, fontSize: 24vp + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ normal: SymbolGlyphModifier; /** - * The properties of the symbol icon in the tab bar need to be selected. + * Symbol icon in the selected style. * * @type { ?SymbolGlyphModifier } + * @default fontColor: #ff007dff, renderingStrategy: SymbolRenderingStrategy.MULTIPLE_OPACITY, fontSize: 24vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * Symbol icon in the selected style. + * + * @type { ?SymbolGlyphModifier } + * @default fontColor: #ff007dff, renderingStrategy: SymbolRenderingStrategy.MULTIPLE_OPACITY, fontSize: 24vp + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ selected?: SymbolGlyphModifier; } @@ -555,6 +592,21 @@ declare interface TabBarOptions { * @atomicservice * @since 11 */ + /** + * TabBar icon. + * Anonymous Object Rectification + * + *

NOTE: + *
If the icon uses an SVG image, the width and height attributes of the SVG image must be deleted. + * Otherwise, the icon size will be determined by the width and height attributes of the SVG image. + *

+ * + * @type { ?(string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ icon?: string | Resource; /** @@ -581,6 +633,16 @@ declare interface TabBarOptions { * @atomicservice * @since 11 */ + /** + * TabBar text. + * Anonymous Object Rectification + * + * @type { ?(string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ text?: string | Resource } @@ -653,7 +715,7 @@ declare class SubTabBarStyle { * @since 10 */ /** - * constructor + * Static constructor used to create a SubTabBarStyle instance. * * @param { ResourceStr } content - indicates the content of the sub tab bar * @returns { SubTabBarStyle } the style of the sub tab bar @@ -665,7 +727,7 @@ declare class SubTabBarStyle { */ static of(content: ResourceStr): SubTabBarStyle; /** - * Create a content object of the sub tab bar + * Static constructor used to create a SubTabBarStyle instance. You can set custom content with ComponentContent. * * @param { ResourceStr | ComponentContent } content - indicates the content of the sub tab bar * @returns { SubTabBarStyle } the style of the sub tab bar @@ -687,9 +749,9 @@ declare class SubTabBarStyle { * @since 10 */ /** - * Set the style of the indicator when selected + * Sets the indicator style of the selected subtab. * - * @param { IndicatorStyle } value - indicates the indicator style of the sub tab bar + * @param { IndicatorStyle } value - indicator style object for the selected subtab. * @returns { SubTabBarStyle } the style of the sub tab bar * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -708,9 +770,13 @@ declare class SubTabBarStyle { * @since 10 */ /** - * Set the mode of the indicator when selected + * Sets the display mode of the selected subtab. + * + *

NOTE: + *
It takes effect only in the horizontal layout. + *

* - * @param { SelectedMode } value - indicates the selected mode of the sub tab bar + * @param { SelectedMode } value - display mode of the selected subtab. Default value is SelectedMode.INDICATOR. * @returns { SubTabBarStyle } the style of the sub tab bar * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -729,9 +795,13 @@ declare class SubTabBarStyle { * @since 10 */ /** - * Set the style of the board when selected + * Sets the background style (board style) of the selected subtab. + * + *

NOTE: + *
It takes effect only in the horizontal layout. + *

* - * @param { BoardStyle } value - indicates the board style of the sub tab bar + * @param { BoardStyle } value - background style object for the selected subtab. * @returns { SubTabBarStyle } the style of the sub tab bar * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -750,9 +820,9 @@ declare class SubTabBarStyle { * @since 10 */ /** - * Set the label style of the indicator + * Sets the style of the label text and font for the subtab. * - * @param { LabelStyle } value - indicates the label style of the sub tab bar + * @param { LabelStyle } value - style object for the label text and font of the subtab. * @returns { SubTabBarStyle } the style of the sub tab bar * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -772,6 +842,11 @@ declare class SubTabBarStyle { */ /** * Set the padding of the sub tab bar + * + *

NOTE: + *
It cannot be set in percentage. + *
When the parameter is of the Dimension type, the value applies to all sides. + *

* * @param { Padding | Dimension } value - indicates the padding of the sub tab bar * @returns { SubTabBarStyle } the style of the sub tab bar @@ -784,6 +859,10 @@ declare class SubTabBarStyle { /** * Set the padding of the sub tab bar + * + *

NOTE: + *
This API supports mirroring but does not support percentage-based settings. + *

* * @param { LocalizedPadding } padding - indicates the padding of the sub tab bar * @returns { SubTabBarStyle } the style of the sub tab bar @@ -901,7 +980,7 @@ declare class BottomTabBarStyle { * @since 11 */ /** - * of. + * Static constructor used to create a BottomTabBarStyle instance. * * @param { ResourceStr | TabBarSymbol } icon - indicates the icon of the bottom tab bar * @param { ResourceStr } text - indicates the text of the bottom tab bar @@ -924,9 +1003,9 @@ declare class BottomTabBarStyle { * @since 10 */ /** - * Set the label style of the indicator + * Sets the style of the label text and font for the bottom tab. * - * @param { LabelStyle } value - indicates the label style of the bottom tab bar + * @param { LabelStyle } value - style of the label text and font for the bottom tab. * @returns { BottomTabBarStyle } the style of the bottom tab bar * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -956,8 +1035,14 @@ declare class BottomTabBarStyle { */ /** * Set the padding of the bottom tab bar + * + *

NOTE: + *
It cannot be set in percentage. + *
When the parameter is of the Dimension type, the value applies to all sides. + *

* * @param { Padding | Dimension | LocalizedPadding } value - indicates the padding of the bottom tab bar + * Default value is { left:4.0vp, right:4.0vp, top:0.0vp, bottom:0.0vp }. * @returns { BottomTabBarStyle } the style of the bottom tab bar * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -976,9 +1061,10 @@ declare class BottomTabBarStyle { * @since 10 */ /** - * Set the layout mode of the bottom tab bar + * Sets the layout mode of the images and texts on the bottom tab. * - * @param { LayoutMode } value - indicates the layout mode of the bottom tab bar + * @param { LayoutMode } value - layout mode of the images and text on the bottom tab. + * Default value is LayoutMode.VERTICAL. * @returns { BottomTabBarStyle } the style of the bottom tab bar * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -997,9 +1083,10 @@ declare class BottomTabBarStyle { * @since 10 */ /** - * Set the vertical alignment style of the bottom tab bar + * Sets the vertical alignment mode of the images and text on the bottom tab. * - * @param { VerticalAlign } value - indicates the vertical alignment of the bottom tab bar + * @param { VerticalAlign } value - vertical alignment mode of the images and text on the bottom tab. + * Default value is VerticalAlign.Center. * @returns { BottomTabBarStyle } the style of the bottom tab bar * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1018,9 +1105,14 @@ declare class BottomTabBarStyle { * @since 10 */ /** - * Set the symmetric extensible of the bottom tab bar + * Sets whether the images and text on the bottom tab can be symmetrically extended by + * the minimum value of the available space on the left and right bottom tabs. + * + *

NOTE: + *
This parameter is valid only between bottom tabs in fixed horizontal mode. + *

* - * @param { boolean } value - indicates whether the bottom tab bar is extensible + * @param { boolean } value - indicates whether the bottom tab bar is extensible. Default value is false. * @returns { BottomTabBarStyle } the style of the bottom tab bar * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1051,9 +1143,9 @@ declare class BottomTabBarStyle { id(value: string): BottomTabBarStyle; /** - * Set the icon style of the bottom tab bar + * Sets the style of the label icon on the bottom tab. * - * @param { TabBarIconStyle } style - indicates the icon style of the bottom tab bar + * @param { TabBarIconStyle } style - style of the label icon on the bottom tab. * @returns { BottomTabBarStyle } the style of the bottom tab bar * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1176,9 +1268,14 @@ declare class TabContentAttribute extends CommonMethod { * @since 11 */ /** - * Called when tabbar is entered. + * Sets the content displayed on the tab bar. + * Anonymous Object Rectification + * + *

NOTE: + *
If the content set exceeds the space provided by the tab bar, it will be clipped. + *

* - * @param { string | Resource | CustomBuilder | TabBarOptions } options - TabBar options. + * @param { string | Resource | CustomBuilder | TabBarOptions } options - Content displayed on the tab bar. * @returns { TabContentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1205,9 +1302,14 @@ declare class TabContentAttribute extends CommonMethod { * @since 10 */ /** - * Called when tabbar is entered. + * Sets the content displayed on the tab bar. + * + *

NOTE: + *
The bottom tab style does not include an indicator. + *
When an icon display error occurs, a gray blank block is displayed. + *

* - * @param { SubTabBarStyle | BottomTabBarStyle } value + * @param { SubTabBarStyle | BottomTabBarStyle } value - Content displayed on the tab bar. * @returns { TabContentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1217,10 +1319,17 @@ declare class TabContentAttribute extends CommonMethod { tabBar(value: SubTabBarStyle | BottomTabBarStyle): TabContentAttribute; /** - * Set the content of the tab bar. + * Sets the content displayed on the tab bar. + * Anonymous Object Rectification + * + *

NOTE: + *
If BottomTabBarStyle or TabBarOptions is used and an icon is set, + * a gray block will be displayed if the icon is invalid. + *
If the content exceeds the space provided by the tab bar, it will be clipped. + *

* * @param { ComponentContent | SubTabBarStyle | BottomTabBarStyle | string | Resource | CustomBuilder | TabBarOptions } content - * Set the content of the tab bar. + * Content displayed on the tab bar. * @returns { TabContentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1231,7 +1340,9 @@ declare class TabContentAttribute extends CommonMethod { TabBarOptions): TabContentAttribute; /** - * Called when the tab content will show. + * Called when the tab content is about to be displayed. The scenarios include the first-time display, + * tab switching, page switching, and window switching between the foreground and background. + * * @param { VoidCallback } event * @returns { TabContentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1242,7 +1353,9 @@ declare class TabContentAttribute extends CommonMethod { onWillShow(event: VoidCallback): TabContentAttribute; /** - * Called when the tab content will hide. + * Called when the tab content is about to be hidden. The scenarios include the tab switching, + * page switching, and window switching between the foreground and background. + * * @param { VoidCallback } event * @returns { TabContentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full diff --git a/api/@internal/component/ets/tabs.d.ts b/api/@internal/component/ets/tabs.d.ts index 8558e19f132b809cafc3d0dccf8ea0aa8a33338a..ed4700810d14fb40e538bc76fbb66768c8405947 100644 --- a/api/@internal/component/ets/tabs.d.ts +++ b/api/@internal/component/ets/tabs.d.ts @@ -68,7 +68,9 @@ declare enum BarMode { * @since 10 */ /** - * The actual layout width of the TabBar is used. If the width exceeds the total width, you can slide the tabbar. + * The width of each tab is determined by the actual layout. The tabs are scrollable in the following case: + * In horizontal layout, the total width exceeds the tab bar width; in vertical layout, + * the total height exceeds the tab bar height. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -91,7 +93,8 @@ declare enum BarMode { * @since 10 */ /** - * The width of all TabBars is evenly allocated. + * The width of each tab is determined by equally dividing the number of tabs by the bar width + * (or bar height in the vertical layout). * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -112,7 +115,7 @@ declare enum BarMode { */ declare enum AnimationMode { /** - * Start animation after tabcontent is fully measured. + * Load the content of the target page before starting the switching animation. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -122,7 +125,7 @@ declare enum AnimationMode { CONTENT_FIRST = 0, /** - * Start animation before tabcontent is fully measured. + * Start the switching animation before loading the content of the target page. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -132,7 +135,7 @@ declare enum AnimationMode { ACTION_FIRST = 1, /** - * Disable default animation. + * Disable the default switching animation. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -142,7 +145,8 @@ declare enum AnimationMode { NO_ANIMATION = 2, /** - * Jump to some index near the target without animation, then start animation after tabcontent is fully measured. + * Load the content of the target page first, then jump to the vicinity of the target page without animation, + * and finally jump to the target page with animation. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -152,7 +156,8 @@ declare enum AnimationMode { CONTENT_FIRST_WITH_JUMP = 3, /** - * Jump to some index near the target without animation, then start animation before tabcontent is fully measured. + * Jump to the vicinity of the target page without animation first, + * then jump to the target page with animation, and finally load the content of the target page. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -260,7 +265,8 @@ declare enum LayoutStyle { * @since 10 */ /** - * The tab bar items are laid in the center of the tab bar. + * If the tab content exceeds the tab bar width, the tabs are scrollable. + * If not, the tabs are compactly centered on the tab bar and not scrollable. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -276,7 +282,8 @@ declare enum LayoutStyle { * @since 10 */ /** - * The tab bar items are laid in the tab bar by an average split. + * If the tab content exceeds the tab bar width, the tabs are scrollable. + * If not, the tabs are not scrollable, and the width of the tab bar is evenly distributed among all tabs. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -293,8 +300,10 @@ declare enum LayoutStyle { * @since 10 */ /** - * The tab bar items are laid in the center of the bar when their total length is more than half of the tab bar. - * Otherwise, they are laid in the center half of the tab bar with the same space between them. + * If the tab content exceeds the tab bar width, the tabs are scrollable. If the tab content exceeds + * half the width of the tab bar but is still within the tab bar width, the tabs are compactly centered and + * not scrollable.If the tab content does not exceed half the width of the tab bar, the tabs are centered within + * half the width of the tab bar with even spacing between them and are not scrollable. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -311,7 +320,7 @@ declare enum LayoutStyle { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare enum TabsCacheMode { /** @@ -320,7 +329,7 @@ declare enum TabsCacheMode { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ CACHE_BOTH_SIDE = 0, @@ -330,7 +339,7 @@ declare enum TabsCacheMode { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ CACHE_LATEST_SWITCHED = 1 } @@ -396,9 +405,10 @@ declare class TabsController { * @since 10 */ /** - * Called when the tab is switched. + * Switches to the specified tab. * - * @param { number } value + * @param { number } value - Index of the tab. If this parameter is set to a value less than 0 + * or greater than the maximum number, the default value 0 is used. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -640,10 +650,10 @@ interface DividerStyle { * @since 10 */ /** - * Define the stroke width of the divider + * Width of the divider. It cannot be set in percentage. * * @type { Length } - * @default 0 + * @default 0vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -660,9 +670,10 @@ interface DividerStyle { * @since 10 */ /** - * Define the color of the divider + * Color of the divider. * * @type { ?ResourceColor } + * @default #33182431 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -680,10 +691,10 @@ interface DividerStyle { * @since 10 */ /** - * Define the start margin of the divider + * Distance between the divider and the top of the sidebar. It cannot be set in percentage. * * @type { ?Length } - * @default 0 + * @default 0vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -701,10 +712,10 @@ interface DividerStyle { * @since 10 */ /** - * Define the end margin of the divider + * Distance between the divider and the bottom of the sidebar. It cannot be set in percentage. * * @type { ?Length } - * @default 0 + * @default 0vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -822,9 +833,11 @@ interface BarGridColumnOptions { * @since 10 */ /** - * Define the occupied column number when the screen is of small size + * Number of columns occupied by a tab on a screen whose width is + * greater than or equal to 320 vp but less than 600 vp. The value must be a non-negative even number. * * @type { ?number } + * @default -1 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -841,9 +854,11 @@ interface BarGridColumnOptions { * @since 10 */ /** - * Define the occupied column number when the screen is of middle size + * Number of columns occupied by a tab on a screen whose width is + * greater than or equal to 600 vp but less than 800 vp. The value must be a non-negative even number. * * @type { ?number } + * @default -1 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -860,9 +875,11 @@ interface BarGridColumnOptions { * @since 10 */ /** - * Define the occupied column number when the screen is of large size + * Number of columns occupied by a tab on a screen whose width is + * greater than or equal to 840 vp but less than 1024 vp. The value must be a non-negative even number. * * @type { ?number } + * @default -1 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -879,9 +896,10 @@ interface BarGridColumnOptions { * @since 10 */ /** - * Define the margin size of the columns + * Column margin in grid mode. It cannot be set in percentage. * * @type { ?Dimension } + * @default 24vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -898,9 +916,10 @@ interface BarGridColumnOptions { * @since 10 */ /** - * Define the gutter size of the columns + * Column gutter (that is, gap between columns) in grid mode. It cannot be set in percentage. * * @type { ?Dimension } + * @default 24vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -936,9 +955,10 @@ interface ScrollableBarModeOptions { * @since 10 */ /** - * Define the margin size of the bar items when the tab bar is scrollable. + * Left and right margin of the tab bar in scrollable mode. It cannot be set in percentage. * * @type { ?Dimension } + * @default 0vp * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -955,9 +975,10 @@ interface ScrollableBarModeOptions { * @since 10 */ /** - * Define the layout style of the bar items when the tab bar is not scrollable. + * Tab layout mode of the tab bar when not scrolling in scrollable mode. * * @type { ?LayoutStyle } + * @default LayoutStyle.ALWAYS_CENTER * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1079,9 +1100,9 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Called when determining whether the tab is vertical. + * Sets whether to use vertical tabs. * - * @param { boolean } value + * @param { boolean } value - Whether to use vertical tabs. Default value is false. * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1108,9 +1129,9 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Called when determining the location of the bar chart. + * Sets the position of the Tabs component. * - * @param { BarPosition } value + * @param { BarPosition } value - Position of the Tabs component. Default value is BarPosition.Start. * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1137,9 +1158,9 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Called when judging whether page switching can be performed by sliding left and right. + * Sets whether the tabs are scrollable. * - * @param { boolean } value + * @param { boolean } value - Whether the tabs are scrollable. Default value is true. * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1158,9 +1179,10 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Called when the graphic format of the bar chart is selected as fixed mode. + * Sets the tab bar layout mode to BarMode.Fixed. * - * @param { BarMode.Fixed } value + * @param { BarMode.Fixed } value - The width of each tab is determined by equally dividing + * the number of tabs by the bar width (or bar height in the vertical layout). * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1180,10 +1202,13 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Called when the graphic format of the bar chart is selected as scrollable mode. + * Sets the tab bar layout mode to BarMode.Scrollable. * - * @param { BarMode.Scrollable } value - * @param { ScrollableBarModeOptions } [options] - options indicate the options for the scrollable bar mode + * @param { BarMode.Scrollable } value - The width of each tab is determined by the actual layout. + * The tabs are scrollable in the following case: In horizontal layout, the total width exceeds the tab bar width; + * in vertical layout, the total height exceeds the tab bar height. + * @param { ScrollableBarModeOptions } [options] - Layout style of the tab bar in scrollable mode. + * This parameter is effective only when the tab bar is in scrollable mode. * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1211,10 +1236,11 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Called when the graphic format of the bar chart is selected. + * Sets the tab bar layout mode. * - * @param { BarMode } value - * @param { ScrollableBarModeOptions } [options] - options indicate the options for the scrollable bar mode + * @param { BarMode } value - Layout mode. Default value is BarMode.Fixed. + * @param { ScrollableBarModeOptions } [options] - Layout style of the tab bar in scrollable mode. + * This parameter is effective only when the tab bar is in horizontal scrollable mode. * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1252,10 +1278,11 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Called when the width of the bar graph is set. + * Sets the width of the tab bar. * Notice: barWidth only supports Number type on 7, supports Length type since 8. * - * @param { Length } value + * @param { Length } value - Width of the tab bar. If the set value is less than 0 + * or greater than the width of the Tabs component, the default value is used. * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1293,10 +1320,11 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Called when the height of the bar graph is set. + * Sets the height of the tab bar. * Notice: barHeight only supports Number type on 7, supports Length type since 8. * - * @param { Length } value + * @param { Length } value - Height of the tab bar. If the set value is less than 0 or + * greater than the height of the Tabs component, the default value is used. * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1305,6 +1333,39 @@ declare class TabsAttribute extends CommonMethod { */ barHeight(value: Length): TabsAttribute; + /** + * Called when the height of the bar graph is set. + * Notice: barHeight only supports Number type on 7, supports Length type since 8. + * + * @param { Length } height - the height of the tabBar. + * @param { boolean } noMinHeightLimit - indicates whether there is a minimum limit on the height of the tabBar + * when height is set to auto, default value is false. + * @returns { TabsAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + barHeight(height: Length, noMinHeightLimit: boolean): TabsAttribute; + + /** + * Sets the animation curve + * + * @param { Curve | ICurve } curve - animation curve for tabs switch animation, + * Curve is an enumeration type for common curves, ICurve is a curve object. + * Default value: + * When pages are turned by swiping in TabContent, the default value is + * interpolatingSpring(-1, 1, 228, 30). + * When pages are turned by tapping tabs or calling the changeIndex API of TabsController, + * the default value is cubicBezierCurve(0.2, 0.0, 0.1, 1.0). + * @returns { TabsAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + animationCurve(curve: Curve | ICurve): TabsAttribute; + /** * Called when the animation duration of the bar graph is set. * @@ -1323,7 +1384,8 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Called when the animation duration of the bar graph is set. + * Sets the length of time required to complete the tab switching animation, + * which is initiated by clicking a specific tab or by calling the changeIndex API of TabsController. * * @param { number } value * @returns { TabsAttribute } @@ -1335,9 +1397,11 @@ declare class TabsAttribute extends CommonMethod { animationDuration(value: number): TabsAttribute; /** - * Set animation mode. + * Sets the animation mode for tab switching initiated by clicking a specific tab or + * by calling the changeIndex API of TabsController. * - * @param { Optional } mode - animation mode for tabs switch animation + * @param { Optional } mode - animation mode for tabs switch animation. + * Default value is AnimationMode.CONTENT_FIRST. * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1347,9 +1411,10 @@ declare class TabsAttribute extends CommonMethod { animationMode(mode: Optional): TabsAttribute; /** - * Set the effect used when the component is at one of the edges. + * Sets the edge effect used when the boundary of the scrolling area is reached. * - * @param { Optional } edgeEffect - the effect used when the component is at one of the edges + * @param { Optional } edgeEffect - Effect used when the boundary of the scrolling area is reached. + * Default value is EdgeEffect.Spring. * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1386,7 +1451,16 @@ declare class TabsAttribute extends CommonMethod { * @since 11 */ /** - * Called when the tab is switched. + * Triggered when a tab is switched. + * Anonymous Object Rectification + * + *

NOTE: + *
This event is triggered when any of the following conditions is met: + * 1. The swiping animation is completed, followed by tab switching. + * 2. The Controller API is called. + * 3. The attribute value is updated using a state variable. + * 4. A tab is clicked. + *

* * @param { Callback } event * @returns { TabsAttribute } @@ -1429,7 +1503,8 @@ declare class TabsAttribute extends CommonMethod { * @since 11 */ /** - * Called when the tab is clicked. + * Triggered when a tab is clicked. + * Anonymous Object Rectification * * @param { Callback } event * @returns { TabsAttribute } @@ -1478,7 +1553,8 @@ declare class TabsAttribute extends CommonMethod { * @since 12 */ /** - * Called when the tab content flip animation start. + * Triggered when the tab switching animation starts. + * Anonymous Object Rectification * * @param { OnTabsAnimationStartCallback } handler * @returns { TabsAttribute } @@ -1513,7 +1589,8 @@ declare class TabsAttribute extends CommonMethod { * @since 12 */ /** - * Called when the tab content flip animation end. + * Triggered when the tab switching animation ends. + * Anonymous Object Rectification * * @param { OnTabsAnimationEndCallback } handler * @returns { TabsAttribute } @@ -1548,7 +1625,8 @@ declare class TabsAttribute extends CommonMethod { * @since 12 */ /** - * Called when swiping the tab content with the gesture. + * Triggered on a frame-by-frame basis when the tab is switched by a swipe. + * Anonymous Object Rectification * * @param { OnTabsGestureSwipeCallback } handler * @returns { TabsAttribute } @@ -1569,9 +1647,15 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Set whether the edges of tab bar are fading. + * Sets whether the tab fades out when it exceeds the container width. + * + *

NOTE: + *
It is recommended that this attribute be used together with the barBackgroundColor attribute. + * If the barBackgroundColor attribute is not defined, the tab fades out in white + * when it exceeds the container width by default. + *

* - * @param { boolean } value - indicates whether the edges of tab bar are fading. + * @param { boolean } value - Whether the tab fades out when it exceeds the container width. Default value is true. * @returns { TabsAttribute } the attribute of the tabs * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1592,7 +1676,7 @@ declare class TabsAttribute extends CommonMethod { /** * Set the divider between tab bar and tab content. * - * @param { DividerStyle | null } value - indicates the style of the indicator. + * @param { DividerStyle | null } value - indicates the style of the indicator. Default value is null. * @returns { TabsAttribute } the attribute of the tabs * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1610,9 +1694,9 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Set whether the tab bar overlaps with the tab content. + * Sets whether the tab bar is superimposed on the TabContent component after having its background blurred. * - * @param { boolean } value - indicates whether the tab bar overlaps with the tab content. + * @param { boolean } value - indicates whether the tab bar overlaps with the tab content. Default value is false. * @returns { TabsAttribute } the attribute of the tabs * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1633,6 +1717,7 @@ declare class TabsAttribute extends CommonMethod { * Set the background color of the tab bar. * * @param { ResourceColor } value - indicates the background color of the tab bar. + * Default value is Color.Transparent. * @returns { TabsAttribute } the attribute of the tabs * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1651,7 +1736,11 @@ declare class TabsAttribute extends CommonMethod { * @since 10 */ /** - * Set the grid alignment options of the tab bar. + * Sets the visible area of the tab bar in grid mode. + * + *

NOTE: + *
This attribute is effective only in horizontal mode. It is not applicable to XS, XL, and XXL devices. + *

* * @param { BarGridColumnOptions } value - indicates the bar grid alignment options. * @returns { TabsAttribute } the attribute of the tabs @@ -1688,6 +1777,28 @@ declare class TabsAttribute extends CommonMethod { /** * Custom tab content transition animation. * When undefined is set, this interface does not take effect. + * Anonymous Object Rectification + * + *

NOTE: + *
Instructions: + *
1. When the custom tab switching animation is used, the default switching animation of + * the Tabs component is disabled, and tabs cannot be switched through swiping. + *
2. The value undefined means not to use the custom tab switching animation, + * in which case the default switching animation is used. + *
3. The custom tab switching animation cannot be interrupted. + *
4. Currently, the custom tab switching animation can be triggered only by clicking a tab + * or by calling the TabsController.changeIndex() API. + *
5. When the custom tab switching animation is used, + * the Tabs component supports all events except onGestureSwipe. + *
6. Notes about the onChange and onAnimationEnd events: If the second custom animation is triggered + * during the execution of the first custom animation, the onChange and onAnimationEnd events of + * the first custom animation will be triggered when the second custom animation starts. + *
7. When the custom animation is used, the stack layout is used for pages involved in the animation. + * If the zIndex attribute is not set for related pages, the zIndex values of all pages are the same. + * In this case, the pages are rendered in the order in which they are added to + * the component tree(that is, the sequence of page indexes). In light of this, + * to control the rendering levels of pages, set the zIndex attribute of the pages. + *

* * @param { TabsCustomContentTransitionCallback } delegate - Custom content transition animation. * @returns { TabsAttribute } The attribute of the tabs. @@ -1699,9 +1810,9 @@ declare class TabsAttribute extends CommonMethod { customContentTransition(delegate: TabsCustomContentTransitionCallback): TabsAttribute; /** - * Set the BlurStyle of the tab bar. + * Sets the background blur style of the tab bar. * - * @param { BlurStyle } value - indicates the BlurStyle of the tab bar. + * @param { BlurStyle } value - Background blur style of the tab bar. Default value is BlurStyle.NONE. * @returns { TabsAttribute } the attribute of the tabs * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1711,41 +1822,41 @@ declare class TabsAttribute extends CommonMethod { barBackgroundBlurStyle(value: BlurStyle): TabsAttribute; /** - * Set the BlurStyle of the tab bar. + * Setting page flip mode on mouse wheel event. * - * @param { BlurStyle } style - style indicate the blur style for the tab bar - * @param { BackgroundBlurStyleOptions } options - options indicate the options for the tab bar - * @returns { TabsAttribute } the attribute of the tabs + * @param { Optional } mode - page flip mode on mouse wheel event. The default value is PageFlipMode.CONTINUOUS. + * @returns { TabsAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 15 */ - barBackgroundBlurStyle(style: BlurStyle, options: BackgroundBlurStyleOptions): TabsAttribute; + pageFlipMode(mode: Optional): TabsAttribute; /** - * Set the BackgroundEffect of the tab bar. + * Set the BlurStyle of the tab bar. * - * @param { BackgroundEffectOptions } options - options indicate the options for the tab bar + * @param { BlurStyle } style - style indicate the blur style for the tab bar + * @param { BackgroundBlurStyleOptions } options - options indicate the options for the tab bar * @returns { TabsAttribute } the attribute of the tabs * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 15 + * @since 18 */ - barBackgroundEffect(options: BackgroundEffectOptions): TabsAttribute; + barBackgroundBlurStyle(style: BlurStyle, options: BackgroundBlurStyleOptions): TabsAttribute; /** - * Setting page flip mode on mouse wheel event. + * Set the BackgroundEffect of the tab bar. * - * @param { Optional } mode - page flip mode on mouse wheel event. The default value is PageFlipMode.CONTINUOUS. - * @returns { TabsAttribute } + * @param { BackgroundEffectOptions } options - options indicate the options for the tab bar + * @returns { TabsAttribute } the attribute of the tabs * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 15 + * @since 18 */ - pageFlipMode(mode: Optional): TabsAttribute; + barBackgroundEffect(options: BackgroundEffectOptions): TabsAttribute; /** * Called when content will change. @@ -1762,7 +1873,18 @@ declare class TabsAttribute extends CommonMethod { * @since 12 */ /** - * Called when content will change. + * Triggered when a new page is about to be displayed. + * Anonymous Object Rectification + * + *

NOTE: + *
This event is triggered when any of the following conditions is met: + * 1. When the user swipes on the TabContent component (provided that it supports swiping) to switch to a new page. + * 2. When TabsController.changeIndex is called to switch to a new page. + * 3. When the **index** attribute is changed to switch to a new page. + * 4. When the user clicks a tab on the tab bar to switch to a new page. + * 5. When the user presses the left or right arrow key on the keyboard to switch to a new page + * while the tab bar is focused. + *

* * @param { OnTabsContentWillChangeCallback } handler * @returns { TabsAttribute } @@ -1782,7 +1904,7 @@ declare class TabsAttribute extends CommonMethod { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ cachedMaxCount(count: number, mode: TabsCacheMode): TabsAttribute; } @@ -1853,6 +1975,7 @@ declare interface TabContentAnimatedTransition { */ /** * Called when custom content transition animation start. + * Anonymous Object Rectification * * @type { Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full diff --git a/api/@internal/component/ets/text.d.ts b/api/@internal/component/ets/text.d.ts index 4e083f0378f2585d7014b47a1bc388ee80ad887c..a68adcea27c52f555bedf3a97894a7b9fdf2a7c1 100644 --- a/api/@internal/component/ets/text.d.ts +++ b/api/@internal/component/ets/text.d.ts @@ -21,6 +21,7 @@ /** * Text overflow options. * + * Anonymous Object Rectification. * @interface TextOverflowOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -63,6 +64,18 @@ declare interface TextOverflowOptions { * @atomicservice * @since 11 */ + /** + * Text overflow option. + * + * Anonymous Object Rectification. + * @type { TextOverflow } + * @default TextOverflow.Clip + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ overflow: TextOverflow; } @@ -132,6 +145,9 @@ interface TextInterface { * Called when writing text. * * @param { string | Resource } content + * This parameter does not take effect if the component contains a Span child component and does not have any styled string configured. + * In this case, the span content is displayed, and the style of the component does not take effect. + * Default value: ' ' * @param { TextOptions } value * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -180,6 +196,7 @@ declare class TextAttribute extends CommonMethod { */ /** * Called when the font is set. + * Sets the text style, covering the font size, font width, font family, and font style. * * @param { Font } value - the text font size and weight and family and style. * @returns { TextAttribute } The attribute of the text. @@ -193,6 +210,10 @@ declare class TextAttribute extends CommonMethod { /** * Called when the font is set. * + *

NOTE: + *
It is only effective for the Text component, not for its child components. + *

+ * * @param { Font } fontValue - the text font size and weight and family and style. * @param { FontSettingOptions } options - font setting options. * @returns { TextAttribute } The attribute of the text. @@ -234,7 +255,7 @@ declare class TextAttribute extends CommonMethod { /** * Called when the font color is set. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Default value is '#e6182431'.The default value on wearable devices is '#c5ffffff'. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -274,7 +295,11 @@ declare class TextAttribute extends CommonMethod { /** * Called when the font size is set. * - * @param { number | string | Resource } value + *

NOTE: + *
If fontSize is of the number type, the unit fp is used. + *

+ * + * @param { number | string | Resource } value - Default value is 16fp.The default value on wearable devices is 15fp. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -314,7 +339,19 @@ declare class TextAttribute extends CommonMethod { /** * Called when the minimum font size of the font is set. * - * @param { number | string | Resource } value + *

NOTE: + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *
For the setting to take effect, this attribute must be used together with maxFontSize and maxLines, + * or layout constraint settings. + *
When the adaptive font size is used, the fontSize settings do not take effect. + *
If the value of minFontSize is less than or equal to 0, font size adaptation does not take effect. + *
In this case, the actual font size is determined by the value of fontSize. + *
If fontSize is not specified, the default value is used. + *
Since API version 18, this attribute takes effect on child components and styled strings, + * and the adaptive font size is applied to parts where the font size is not set. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -354,7 +391,19 @@ declare class TextAttribute extends CommonMethod { /** * Called when the maximum font size of the font is set. * - * @param { number | string | Resource } value + *

NOTE: + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *
For the setting to take effect, this attribute must be used together with minFontSize and maxLines, + * or layout constraint settings. + *
When the adaptive font size is used, the fontSize settings do not take effect. + *
If the value of maxFontSize is less than or equal to 0, font size adaptation does not take effect. + *
In this case, the actual font size is determined by the value of fontSize. + *
If fontSize is not specified, the default value is used. + *
Since API version 18, this attribute takes effect on child components and styled strings, + * and the adaptive font size is applied to parts where the font size is not set. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -366,6 +415,13 @@ declare class TextAttribute extends CommonMethod { /** * Called when the minimum font scale of the font is set. + * Value range: [0, 1] + * + *

NOTE: + *
A value less than 0 is handled as 0. + *
A value greater than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

* * @param { number | Resource } scale * @returns { TextAttribute } @@ -373,10 +429,33 @@ declare class TextAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the minimum font scale of the font is set. + * Value range: [0, 1] + * + *

NOTE: + *
A value less than 0 is handled as 0. + *
A value greater than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

+ * + * @param { number | Resource } scale + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ minFontScale(scale: number | Resource): TextAttribute; /** * Called when the maximum font scale of the font is set. + * Value range: [1, +∞) + * + *

NOTE: + *
A value less than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

* * @param { number | Resource } scale * @returns { TextAttribute } @@ -384,6 +463,22 @@ declare class TextAttribute extends CommonMethod { * @atomicservice * @since 12 */ + /** + * Called when the maximum font scale of the font is set. + * Value range: [1, +∞) + * + *

NOTE: + *
A value less than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

+ * + * @param { number | Resource } scale + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ maxFontScale(scale: number | Resource): TextAttribute; /** @@ -416,7 +511,7 @@ declare class TextAttribute extends CommonMethod { /** * Called when the font style of a font is set. * - * @param { FontStyle } value + * @param { FontStyle } value - Default value is FontStyle.Normal. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -456,7 +551,16 @@ declare class TextAttribute extends CommonMethod { /** * Called when the font weight is set. * - * @param { number | FontWeight | string } value + *

NOTE: + *
If the value is too large, the text may be clipped depending on the font. + *
For the number type, the value range is [100, 900], at an interval of 100. + *
The default value is 400. + *
A larger value indicates a heavier font weight. + *
For the string type, only strings that represent a number, for example, "400", + * and the following enumerated values of FontWeight are supported: "bold", "bolder", "lighter", "regular", and "medium". + *

+ * + * @param { number | FontWeight | string } value - Default value is FontWeight.Normal.The default value on wearable devices is FontWeight.Regular. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -464,11 +568,31 @@ declare class TextAttribute extends CommonMethod { * @atomicservice * @since 11 */ - fontWeight(value: number | FontWeight | string): TextAttribute; + /** + * Called when the font weight is set. + * + * @param { number | FontWeight | ResourceStr } value + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + fontWeight(value: number | FontWeight | ResourceStr): TextAttribute; /** * Called when the font weight is set. * + *

NOTE: + *
It is only effective for the Text component, not for its child components. + *
For the number type, the value ranges from 100 to 900, at an interval of 100. + *
A larger value indicates a heavier font weight. + *
The default value is 400. + *
For the string type, only strings that represent a number, for example, "400", + * and the following enumerated values of FontWeight are supported: "bold", "bolder", "lighter", "regular", and "medium". + *

+ * * @param { number | FontWeight | string } weight * @param { FontSettingOptions } options - font setting options. * @returns { TextAttribute } @@ -478,12 +602,28 @@ declare class TextAttribute extends CommonMethod { * @atomicservice * @since 12 */ - fontWeight(weight: number | FontWeight | string, options?: FontSettingOptions): TextAttribute; + /** + * Called when the font weight is set. + * + * @param { number | FontWeight | ResourceStr } weight + * @param { FontSettingOptions } options - font setting options. + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + fontWeight(weight: number | FontWeight | ResourceStr, options?: FontSettingOptions): TextAttribute; /** * Set font line spacing. * - * @param { LengthMetrics } value + *

NOTE: + *
If the value specified is less than or equal to 0, the default value 0 is used. + *

+ * + * @param { LengthMetrics } value - Default value is 0. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -492,6 +632,19 @@ declare class TextAttribute extends CommonMethod { */ lineSpacing(value: LengthMetrics): TextAttribute; + /** + * Set font line spacing with options. + * + * @param { LengthMetrics } value + * @param { LineSpacingOptions } options + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + lineSpacing(value: LengthMetrics, options?: LineSpacingOptions): TextAttribute; + /** * Called when the horizontal center mode of the font is set. * @@ -522,7 +675,19 @@ declare class TextAttribute extends CommonMethod { /** * Called when the horizontal center mode of the font is set. * - * @param { TextAlign } value + *

NOTE: + *
The text takes up the full width of the Text component. + *
To set vertical alignment for the text, use the align attribute. + *
The align attribute alone does not control the horizontal position of the text. + *
In other words, Alignment.TopStart, Alignment.Top, and Alignment.TopEnd produce the same effect, + * top-aligning the text; Alignment.Start, Alignment.Center, and Alignment.End produce the same effect, + * centered-aligning the text vertically; Alignment.BottomStart, Alignment.Bottom, + * and Alignment.BottomEnd produce the same effect, bottom-aligning the text. + *
When textAlign is set to TextAlign.JUSTIFY, you must set the wordBreak attribute, + * and the text in the last line is horizontally aligned with the start edge. + *

+ * + * @param { TextAlign } value - Default value is TextAlign.Start.The default value on wearable devices is TextAlign.Center. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -532,6 +697,18 @@ declare class TextAttribute extends CommonMethod { */ textAlign(value: TextAlign): TextAttribute; + /** + * Set the vertical align of the text. + * + * @param { Optional } textVerticalAlign - The default value is BASELINE. + * @returns { TextAttribute } returns the instance of the TextAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + textVerticalAlign(textVerticalAlign: Optional): TextAttribute; + /** * Called when the vertical center mode of the font is set. * @@ -562,6 +739,12 @@ declare class TextAttribute extends CommonMethod { /** * Called when the vertical center mode of the font is set. * + *

NOTE: + *
If the value is less than or equal to 0, the line height is not limited and the font size is adaptive. + *
If the value is of the number type, the unit fp is used. + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *

+ * * @param { number | string | Resource } value * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -613,6 +796,23 @@ declare class TextAttribute extends CommonMethod { /** * Called when the overflow mode of the font is set. * + * Anonymous Object Rectification. + * + *

NOTE: + *
Text is clipped at the transition between words. + *
To clip text in the middle of a word, add \u200B between characters. + *
Since API version 11, preferably set the wordBreak attribute to WordBreak.BREAK_ALL to achieve the same purpose. + *
If overflow is set to TextOverflow.None, TextOverflow.Clip, or TextOverflow.Ellipsis, + * this attribute must be used with maxLines for the settings to take effect. + *
TextOverflow.None produces the same effect as TextOverflow.Clip. + *
If overflow is set to TextOverflow.MARQUEE, the text scrolls in a line, and neither maxLines nor copyOption takes effect. + *
The textAlign attribute takes effect only when the text is not scrollable. + *
With overflow set to TextOverflow.MARQUEE, the clip attribute is set to true by default. + *
TextOverflow.MARQUEE is not available for CustomSpan of the styled string. + *
Since API version 12, TextOverflow.MARQUEE is available for the ImageSpan component, + * where the text and images are displayed in scrolling mode in a line. + *

+ * * @param { TextOverflowOptions } options - Text overflow options. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -653,6 +853,12 @@ declare class TextAttribute extends CommonMethod { /** * Called when the font list of text is set. * + *

NOTE: + *
Default font: 'HarmonyOS Sans' + *
The 'HarmonyOS Sans' font and registered custom fonts are supported for applications. + *
Only the 'HarmonyOS Sans' font is supported for widgets. + *

+ * * @param { string | Resource } value * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -693,6 +899,12 @@ declare class TextAttribute extends CommonMethod { /** * Called when the maximum number of lines of text is set. * + *

NOTE: + *
By default, text is automatically folded. + *
If this attribute is specified, the text will not exceed the specified number of lines. + *
If there is extra text, you can use textOverflow to specify how it is displayed. + *

+ * * @param { number } value * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -744,7 +956,11 @@ declare class TextAttribute extends CommonMethod { /** * Called when the text decoration of the text is set. * - * @param { DecorationStyleInterface } value + *

NOTE: + *
The style parameter cannot be used in widgets. + *

+ * + * @param { DecorationStyleInterface } value - Default value is { type: TextDecorationType.None, color: Color.Black, style: TextDecorationStyle.SOLID }. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -784,7 +1000,14 @@ declare class TextAttribute extends CommonMethod { /** * Called when the distance between text fonts is set. * - * @param { number | string } value + *

NOTE: + *
If the value specified is a percentage or 0, the default value is used. + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *
If the value specified is a negative value, the text is compressed. + *
A negative value too small may result in the text being compressed to 0 and no content being displayed. + *

+ * + * @param { number | string } value - The unit is fp. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -792,7 +1015,18 @@ declare class TextAttribute extends CommonMethod { * @atomicservice * @since 11 */ - letterSpacing(value: number | string): TextAttribute; + /** + * Called when the distance between text fonts is set. + * + * @param { number | ResourceStr } value + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + letterSpacing(value: number | ResourceStr): TextAttribute; /** * Called when the type of letter in the text font is set. @@ -824,7 +1058,7 @@ declare class TextAttribute extends CommonMethod { /** * Called when the type of letter in the text font is set. * - * @param { TextCase } value + * @param { TextCase } value - Default value is TextCase.Normal. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -864,7 +1098,12 @@ declare class TextAttribute extends CommonMethod { /** * Called when the baseline offset is set. * - * @param { number | string } value + *

NOTE: + *
If the value specified is a percentage, the default value is used. + *
Positive values shift the content upwards, while negative values shift it downwards. + *

+ * + * @param { number | string } value - Default value is 0. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -872,7 +1111,18 @@ declare class TextAttribute extends CommonMethod { * @atomicservice * @since 11 */ - baselineOffset(value: number | string): TextAttribute; + /** + * Called when the baseline offset is set. + * + * @param { number | ResourceStr } value + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + baselineOffset(value: number | ResourceStr): TextAttribute; /** * Allow replication. @@ -896,7 +1146,13 @@ declare class TextAttribute extends CommonMethod { /** * Allow replication. * - * @param { CopyOptions } value + *

NOTE: + *
If this attribute is set to CopyOptions.InApp or CopyOptions.LocalDevice, + * a long press on the text will display a context menu that offers the copy and select-all options. + *
Because widgets do not have the long press event, the context menu will not be displayed when users long press text. + *

+ * + * @param { CopyOptions } value - Default value is CopyOptions.None. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -926,7 +1182,14 @@ declare class TextAttribute extends CommonMethod { /** * Enable the selectable area can be dragged. * - * @param { boolean } value + *

NOTE: + *
This attribute cannot be used together with the onDragStart event. + *
It must be used together with CopyOptions. + *
When it is set to true and copyOptions is set to CopyOptions.InApp or CopyOptions.LocalDevice, + * the selected text can be dragged and copied to the text box. + *

+ * + * @param { boolean } value - Default value is false. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -948,6 +1211,10 @@ declare class TextAttribute extends CommonMethod { /** * Called when the text shadow is set. * + *

NOTE: + *
This API does not work with the fill attribute or coloring strategy. + *

+ * * @param { ShadowOptions | Array } value - The shadow options. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -970,7 +1237,27 @@ declare class TextAttribute extends CommonMethod { /** * Called when the height adaptive policy is set. * - * @param { TextHeightAdaptivePolicy } value - The height adaptive policy. + *

NOTE: + *

    + *
  • When this attribute is set to TextHeightAdaptivePolicy.MAX_LINES_FIRST, + * the maxLines attribute takes precedence for adjusting the text height. + *
    If the maxLines setting results in a layout beyond the layout constraints, + * the text will shrink to a font size between minFontSize and maxFontSize to allow for more content to be shown.
  • + *
  • If this attribute is set to TextHeightAdaptivePolicy.MIN_FONT_SIZE_FIRST, + * the minFontSize attribute takes precedence for adjusting the text height. + *
    If the text fits on one line at minFontSize,the system attempts to increase the font size within the range of minFontSize + * and maxFontSize to display the text as large as possible on one line. + *
    If the text cannot fit into a single line even at minFontSize, it sticks with minFontSize.
  • + *
  • If this attribute is set to TextHeightAdaptivePolicy.LAYOUT_CONSTRAINT_FIRST, + * the layout constraints take precedence for adjusting the text height. + *
    If the resultant layout is beyond the layout constraints, + * the text will shrink to a font size between minFontSize and maxFontSize to respect the layout constraints. + *
    If the text still extends beyond the layout constraints after shrinking to minFontSize, + * the lines that exceed the constraints are deleted.
  • + *
+ *

+ * + * @param { TextHeightAdaptivePolicy } value - The height adaptive policy.Default value is TextHeightAdaptivePolicy.MAX_LINES_FIRST. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -991,7 +1278,7 @@ declare class TextAttribute extends CommonMethod { /** * Specify the indentation of the first line in a text-block. * - * @param { Length } value - The length of text indent. + * @param { Length } value - The length of text indent.Default value is 0. * @returns { TextAttribute } The attribute of the text. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1003,7 +1290,12 @@ declare class TextAttribute extends CommonMethod { /** * Set the word break type. * - * @param { WordBreak } value - The word break type. + *

NOTE: + *
When used with {overflow: TextOverflow.Ellipsis} and maxLines, WordBreak.BREAK_ALL can insert line breaks + * between letters when overflow occurs and display excess content with an ellipsis (...). + *

+ * + * @param { WordBreak } value - The word break type.Default value is WordBreak.BREAK_WORD. * @returns { TextAttribute } The attribute of the text. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1015,7 +1307,12 @@ declare class TextAttribute extends CommonMethod { /** * Set the text line break strategy type. * - * @param { LineBreakStrategy } strategy - The text line break strategy type. + *

NOTE: + *
This attribute takes effect when wordBreak is not set to breakAll. + *
Hyphens are not supported. + *

+ * + * @param { LineBreakStrategy } strategy - The text line break strategy type.Default value is LineBreakStrategy.GREEDY. * @returns { TextAttribute } The attribute of the text. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1026,6 +1323,7 @@ declare class TextAttribute extends CommonMethod { /** * Called when using the Clipboard menu + * Currently, only text can be copied. * * @param { function } callback - callback of the listened event. * @returns { TextAttribute } The attribute of the text. @@ -1039,8 +1337,20 @@ declare class TextAttribute extends CommonMethod { /** * Text selection is achieved by specifying the start and end positions of the text. * - * @param { number } selectionStart - The start position of the selected text. - * @param { number } selectionEnd - The end position of the selected text. + *

NOTE: + *
The selected text is highlighted, and a selection handle is displayed together with a menu of available actions. + *
When copyOption is set to CopyOptions.None, the selection attribute is not effective. + *
When overflow is set to TextOverflow.MARQUEE, the selection attribute is not effective. + *
If the value of selectionStart is greater than or equal to that of selectionEnd, no text will be selected. + *
The value range is [0, textSize], where textSize indicates the maximum number of characters in the text content. + *
If the value is less than 0, the value 0 will be used. + *
If the value is greater than textSize, textSize will be used. + *
If the value of selectionStart or selectionEnd falls within the invisible area, no text will be selected. + *
If clipping is disabled, the text selection outside of the parent component takes effect. + *

+ * + * @param { number } selectionStart - The start position of the selected text.Default value is -1. + * @param { number } selectionEnd - The end position of the selected text.Default value is -1. * @returns { TextAttribute } The attribute of the text. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1073,6 +1383,18 @@ declare class TextAttribute extends CommonMethod { */ selectedBackgroundColor(color: ResourceColor): TextAttribute; + /** + * Set the shader style of the text, such as lineargradient or radialgradient. + * + * @param { ShaderStyle } shader - The shader style of the text. + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + shaderStyle(shader: ShaderStyle): TextAttribute; + /** * Set the ellipsis mode. * @@ -1085,7 +1407,13 @@ declare class TextAttribute extends CommonMethod { /** * Set the ellipsis mode. * - * @param { EllipsisMode } value - The ellipsis mode. + *

NOTE: + *
For the settings to work, overflow must be set to TextOverflow.Ellipsis and maxLines must be specified. + *
Setting ellipsisMode alone does not take effect. + *
EllipsisMode.START and EllipsisMode.CENTER take effect only when text overflows in a single line. + *

+ * + * @param { EllipsisMode } value - The ellipsis mode.Default value is EllipsisMode.END. * @returns { TextAttribute } The attribute of the text. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1105,7 +1433,29 @@ declare class TextAttribute extends CommonMethod { /** * Enable data detector. * - * @param { boolean } enable - Enable data detector. + *

NOTE: + *
This API only works on devices that provide text recognition. + *
When enableDataDetector is set to true, and the dataDetectorConfig attribute is not set, + * all types of entities are recognized by default, + * and the color and decoration of the recognized entities will be changed to the following styles: + * + * color: '#ff007dff', + * decoration:{ + * type: TextDecorationType.Underline, + * color: '#ff007dff', + * style: TextDecorationStyle.SOLID + * } + * + *
Touching and right-clicking an entity with the mouse will pop up the corresponding entity operation menu based on the type of entity, + * while left-clicking an entity with the mouse will directly respond to the first option of the menu. + *
This API does not work when overflow is set to TextOverflow.MARQUEE. + *
When copyOption is set to CopyOptions.None, the menu displayed after an entity is clicked does not provide the text selection, + * copy, translation, or sharing functionality. + *
When copyOption is not set to CopyOptions.None, and textSelectable is set to TextSelectableMode.UNSELECTABLE, + * the entity still has the copy functionality but does not have the text selection feature. + *

+ * + * @param { boolean } enable - Enable data detector.Default value is false. * @returns { TextAttribute } The attribute of the text. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -1124,6 +1474,18 @@ declare class TextAttribute extends CommonMethod { /** * Data detector with config. * + *

NOTE: + *
This API must be used together with enableDataDetector. + *
It takes effect only when enableDataDetector is set to true. + *
When entities A and B overlap, the following rules are followed: + *

    + *
  1. If A is a subset of B (A ⊂ B), then B is retained; otherwise, A is retained.
  2. + *
  3. If A is not a subset of B (A ⊄ B) and B is not a subset of A (B ⊄ A), + * and if the starting point of A is earlier than that of B (A.start < B.start), + * then A is retained; otherwise, B is retained.
  4. + *
+ *

+ * * @param { TextDataDetectorConfig } config - The config of text data detector. * @returns { TextAttribute } The attribute of the text. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1147,9 +1509,16 @@ declare class TextAttribute extends CommonMethod { /** * Bind to the selection menu. * - * @param { TextSpanType } spanType - Indicates the type of selection menu. + *

NOTE: + *
The duration required for a long-press gesture is 600 ms for bindSelectionMenu and 800 ms for bindContextMenu. + *
When both bindSelectionMenu and bindContextMenu are set and both are configured to be triggered by a long-press gesture, + * bindSelectionMenu is triggered first. + *
If the custom menu is too long, embed a Scroll component to prevent the keyboard from being blocked. + *

+ * + * @param { TextSpanType } spanType - Indicates the type of selection menu.Default value is TextSpanType.TEXT. * @param { CustomBuilder } content - Indicates the content of selection menu. - * @param { TextResponseType } responseType - Indicates response type of selection menu. + * @param { TextResponseType } responseType - Indicates response type of selection menu.Default value is TextResponseType.LONG_PRESS. * @param { SelectionMenuOptions } [options] - Indicates the options of selection menu. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1225,7 +1594,13 @@ declare class TextAttribute extends CommonMethod { /** * Whether to support sensitive privacy information * - * @param { boolean } supported - Whether to support sensitive privacy information. + *

NOTE: + *
The value true means to enable privacy mode, in which case text is obscured as hyphens (-). + *
If this parameter is set to null, privacy mode is disabled. + *
Enabling privacy mode requires widget framework support. + *

+ * + * @param { boolean } supported - Whether to support sensitive privacy information.Default value is false. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @form @@ -1237,7 +1612,7 @@ declare class TextAttribute extends CommonMethod { /** * set text selectable and focusable * - * @param { TextSelectableMode } mode + * @param { TextSelectableMode } mode - Default value is TextSelectableMode.SELECTABLE_UNFOCUSABLE. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1248,6 +1623,8 @@ declare class TextAttribute extends CommonMethod { /** * Set the custom text menu. + * Sets the extended options of the custom context menu on selection, + * including the text content, icon, and callback. * * @param { EditMenuOptions } editMenu - Customize text menu options. * @returns { TextAttribute } @@ -1261,7 +1638,12 @@ declare class TextAttribute extends CommonMethod { /** * Set the text with half leading. * - * @param { boolean } halfLeading + *

NOTE: + *
The halfLeading settings configured within the component take precedence over those in module.json5. + *
The value true means that half leading is enabled, and false means the opposite. + *

+ * + * @param { boolean } halfLeading - Default value is false. * @returns { TextAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1270,6 +1652,18 @@ declare class TextAttribute extends CommonMethod { */ halfLeading(halfLeading: boolean): TextAttribute; + /** + * Set to remove trailing spaces from text. + * + * @param { Optional } trim + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + trimSpace(trim: Optional): TextAttribute; + /** * Enable or disable haptic feedback. * @@ -1281,6 +1675,30 @@ declare class TextAttribute extends CommonMethod { * @since 13 */ enableHapticFeedback(isEnabled: boolean): TextAttribute; + + /** + * Set whether to optimize the trailing spaces at the end of each line during text layout. + * + * @param { Optional } optimize + * @returns { TextAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + optimizeTrailingSpace(optimize: Optional): TextAttribute; + + /** + * Whether to enable automatic spacing between Chinese and Latin characters. + * + * @param { Optional } enabled - The default value is false, indicates the flag whether to enable automatic spacing. + * @returns { TextAttribute } returns the instance of the TextAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + enableAutoSpacing(enabled: Optional): TextAttribute; } /** @@ -1358,6 +1776,17 @@ declare const Text: TextInterface; /** * Defines span type. * + *

NOTE: + *
The order for menu type matching is as follows. + *
When the user interacts with text, the system follows this order to decides which type of menu to display. + *

    + *
  1. Check whether a menu is registered for TextSpanType.TEXT and TextResponseType.LONG_PRESS.
  2. + *
  3. Check whether a menu is registered for TextSpanType.TEXT and TextResponseType.DEFAULT.
  4. + *
  5. Check whether a menu is registered for TextSpanType.DEFAULT and TextResponseType.LONG_PRESS.
  6. + *
  7. Check whether a menu is registered for TextSpanType.DEFAULT and TextResponseType.DEFAULT.
  8. + *
+ *

+ * * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1418,6 +1847,8 @@ declare enum TextSpanType { /** * When no other types are explicitly specified, this type will be matched. + * When this type is registered but TEXT, IMAGE, or MIXED types are not registered, + * this type will be triggered and displayed for those registered types. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1438,6 +1869,17 @@ declare enum TextSpanType { /** * ResponseType for contextMenu * + *

NOTE: + *
The order for menu type matching is as follows. When the user interacts with text, + * the system follows this order to decides which type of menu to display. + *

    + *
  1. Check whether a menu is registered for TextSpanType.TEXT and TextResponseType.LONG_PRESS.
  2. + *
  3. Check whether a menu is registered for TextSpanType.TEXT and TextResponseType.DEFAULT.
  4. + *
  5. Check whether a menu is registered for TextSpanType.DEFAULT and TextResponseType.LONG_PRESS.
  6. + *
  7. Check whether a menu is registered for TextSpanType.DEFAULT and TextResponseType.DEFAULT.
  8. + *
+ *

+ * * @enum { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1498,6 +1940,8 @@ declare enum TextResponseType { /** * When no other types are explicitly specified, this type will be matched. + * When this type is registered but RIGHT_CLICK, LONG_PRESS, or SELECT types are not registered, + * this type will be triggered and displayed for right-click, long press, and mouse selection actions. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1741,6 +2185,10 @@ declare class TextController { /** * Update the styles of StyledString by setStyledString. * + *

NOTE: + *
The child class MutableStyledString of StyledString can also serve as the argument. + *

+ * * @param { StyledString } value * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform diff --git a/api/@internal/component/ets/text_area.d.ts b/api/@internal/component/ets/text_area.d.ts index b0ccd467e1f5fa5525d9baed2ac6ba5c7e8a7bea..90fefc9c455cec56d33fbc3dd410d2e399c6a06e 100644 --- a/api/@internal/component/ets/text_area.d.ts +++ b/api/@internal/component/ets/text_area.d.ts @@ -57,7 +57,8 @@ declare class TextAreaController extends TextContentControllerBase { */ /** * constructor. - * + * A constructor used to create a TextAreaController object. + * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -83,7 +84,7 @@ declare class TextAreaController extends TextContentControllerBase { /** * Called when the position of the insertion cursor is set. * - * @param { number } value + * @param { number } value - Length from the start of the string to the position where the caret is located. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -112,10 +113,22 @@ declare class TextAreaController extends TextContentControllerBase { */ /** * Text selection is achieved by specifying the start and end positions of the text. - * + * + *

NOTE: + *
If selectionMenuHidden is set to true or a 2-in-1 device is used, + * calling setTextSelection does not display the context menu even when options is set to MenuPolicy.SHOW. + *
If the selected text contains an emoji, + * the emoji is selected when its start position is within the text selection range. + *

+ * * @param { number } selectionStart - The start position of the selected text. + * The start position of text in the text box is 0. + * A value less than 0 is handled as 0. + * A value greater than the maximum text length is handled as the maximum text length. * @param { number } selectionEnd - The end position of the selected text. - * @param { SelectionOptions } [options] - Indicates the options of the text selection. + * A value less than 0 is handled as the value 0. + * A value greater than the maximum text length is handled as the maximum text length. + * @param { SelectionOptions } [options] - Indicates the options of the text selection.Default value is MenuPolicy.DEFAULT. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -183,7 +196,13 @@ declare interface TextAreaOptions { */ /** * The place holder text string. - * + * Text displayed when there is no input. + * + *

NOTE: + *
When only the placeholder attribute is set, the text selection handle is still available. + *
The caret stays at the beginning of the placeholder text when the handle is released. + *

+ * * @type { ?ResourceStr } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -209,7 +228,12 @@ declare interface TextAreaOptions { */ /** * Sets the current value of TextArea. - * + * + *

NOTE: + *
You are advised to bind the state variable to the text in real time through the onChange event, + * so as to prevent display errors when the component is updated. + *

+ * * @type { ?ResourceStr } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -327,7 +351,7 @@ declare enum TextAreaType { */ /** * Basic input mode. - * + * The value can contain digits, letters, underscores (_), spaces, and special characters. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -361,7 +385,8 @@ declare enum TextAreaType { */ /** * Phone number entry mode. - * + * In this mode, the following are allowed: digits, spaces, plus signs (+), hyphens (-), asterisks (*), and number signs (#). + * the length is not limited. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -378,7 +403,8 @@ declare enum TextAreaType { */ /** * E-mail address input mode. - * + * This mode accepts only digits, letters, underscores (_), dots (.), + * and the following special characters: ! # $ % & ' * + - / = ? ^ ` { | } ~ @ (which can only appear once). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -388,7 +414,7 @@ declare enum TextAreaType { /** * Number decimal entry mode. - * + * The value can contain digits and one decimal point. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -405,6 +431,15 @@ declare enum TextAreaType { * @since 12 */ URL = 13, + + /** + * One time code mode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + ONE_TIME_CODE = 14, } /** @@ -412,6 +447,7 @@ declare enum TextAreaType { * * @typedef { function } TextAreaSubmitCallback * @param { EnterKeyType } enterKeyType - The enter key type of soft keyboard. + * If the type is EnterKeyType.NEW_LINE, onSubmit is not triggered. * @param { SubmitEvent } [event] - Provides the method of keeping textArea editable state when submitted. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -464,8 +500,8 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when the color of the placeholder is set. - * - * @param { ResourceColor } value + * + * @param { ResourceColor } value - Default value follows the theme. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -493,7 +529,8 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when the font property of the placeholder is set. - * + * The 'HarmonyOS Sans' font and registered custom fonts are supported. + * * @param { Font } value * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -514,8 +551,8 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when the type of soft keyboard input button is set. - * - * @param { EnterKeyType } value the type of soft keyboard + * + * @param { EnterKeyType } value the type of soft keyboard - Default value is EnterKeyType.NEW_LINE. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -543,8 +580,19 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when the alignment of the contents of a multiline text box is set. - * - * @param { TextAlign } value + * + *

NOTE: + *
To set vertical alignment for the text, use the align attribute. + *
The align attribute alone does not control the horizontal position of the text. + *
In other words, Alignment.TopStart, Alignment.Top, and Alignment.TopEnd produce the same effect, + * top-aligning the text; Alignment.Start, Alignment.Center, and Alignment.End produce the same effect, + * centered-aligning the text vertically; Alignment.BottomStart, Alignment.Bottom, + * and Alignment.BottomEnd produce the same effect, bottom-aligning the text. + *
When textAlign is set to TextAlign.JUSTIFY, the text in the last line is horizontally aligned with the start edge. + *
Since API version 11, textAlign can be set to TextAlign.JUSTIFY. + *

+ * + * @param { TextAlign } value - Default value is TextAlign.Start. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -572,8 +620,12 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when the insertion cursor color is set. - * - * @param { ResourceColor } value + * + *

NOTE: + *
Since API version 12, this API can be used to set the text handle color, which is the same as the caret color. + *

+ * + * @param { ResourceColor } value - Default value is '#007DFF'. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -631,7 +683,9 @@ declare class TextAreaAttribute extends CommonMethod { /** * Called when the font size is set. * - * @param { Length } value + * @param { Length } value - Default value is 16fp.The default value on wearable devices is 18fp. + * If fontSize is of the number type, the unit fp is used. + * This parameter cannot be set in percentage. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -660,7 +714,7 @@ declare class TextAreaAttribute extends CommonMethod { /** * Called when the font style of a font is set. * - * @param { FontStyle } value + * @param { FontStyle } value - Default value is FontStyle.Normal. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -688,15 +742,33 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when the font weight is set. - * - * @param { number | FontWeight | string } value + * + *

NOTE: + *
If the value is too large, the text may be clipped depending on the font. + *
For the number type, the value range is [100, 900], at an interval of 100. The default value is 400. + *
A larger value indicates a heavier font weight. + *
For the string type, only strings that represent a number, for example, "400", + * and the following enumerated values of FontWeight are supported: "bold", "bolder", "lighter", "regular", and "medium". + *

+ * + * @param { number | FontWeight | string } value - Default value is FontWeight.Normal. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 11 */ - fontWeight(value: number | FontWeight | string): TextAreaAttribute; + /** + * Called when the font weight is set. + * + * @param { number | FontWeight | ResourceStr } value + * @returns { TextAreaAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + fontWeight(value: number | FontWeight | ResourceStr): TextAreaAttribute; /** * Called when the font list of text is set. @@ -717,8 +789,13 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when the font list of text is set. - * - * @param { ResourceStr } value + * + *

NOTE: + *
The 'HarmonyOS Sans' font and registered custom fonts are supported for applications. + *
Only the 'HarmonyOS Sans' font is supported for widgets. + *

+ * + * @param { ResourceStr } value - Default value is 'HarmonyOS Sans'. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -729,8 +806,17 @@ declare class TextAreaAttribute extends CommonMethod { /** * Called when the overflow mode of the font is set. - * - * @param { TextOverflow } value + * + *

NOTE: + *
In inline style, the effect of truncating text according to maxLines only applies when textOverflow is set. + *
Text is clipped at the transition between words. + *
To clip text in the middle of a word, set wordBreak to WordBreak.BREAK_ALL. + *
If overflow is set to TextOverflow.None, TextOverflow.Clip, or TextOverflow.Ellipsis, + * this attribute must be used with maxLines for the settings to take effect. + *
TextOverflow.None produces the same effect as TextOverflow.Clip. + *

+ * + * @param { TextOverflow } value - Default value is TextOverflow.Clip. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -742,7 +828,7 @@ declare class TextAreaAttribute extends CommonMethod { /** * Specify the indentation of the first line in a text-block. * - * @param { Dimension } value - The length of text indent. + * @param { Dimension } value - The length of text indent.Default value is 0. * @returns { TextAreaAttribute } The attribute of the text. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -772,7 +858,13 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when the inputFilter of text is set. - * + * + *

NOTE: + *
Only inputs that comply with the regular expression can be displayed. + *
Other inputs are filtered out. + *
The specified regular expression can match single characters, but not strings. + *

+ * * @param { ResourceStr } value * @param { function } error * @returns { TextAreaAttribute } @@ -784,7 +876,7 @@ declare class TextAreaAttribute extends CommonMethod { inputFilter(value: ResourceStr, error?: (value: string) => void): TextAreaAttribute; /** - * Define the caret style of the text input + * Define the caret style of the text input. * * @param { CaretStyle } value * @returns { TextAreaAttribute } @@ -797,7 +889,8 @@ declare class TextAreaAttribute extends CommonMethod { /** * Define the text selected background color of the text input. - * + * If the opacity is not set, a 20% opacity will be used. + * * @param { ResourceColor } value * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -819,7 +912,7 @@ declare class TextAreaAttribute extends CommonMethod { /** * Called when submitted. * - * @param { function } callback + * @param { function } callback - If it is EnterKeyType.NEW_LINE and the text box is in inline input style, onSubmit is not triggered. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -829,7 +922,9 @@ declare class TextAreaAttribute extends CommonMethod { onSubmit(callback: (enterKey: EnterKeyType) => void): TextAreaAttribute; /** * Called when submitted. - * + * Triggered when the Enter key on the soft keyboard is pressed, + * providing methods to maintain the editing state of the TextArea component upon submission. + * * @param { TextAreaSubmitCallback } callback - callback of the listened event. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -868,7 +963,13 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when the input changes. - * + * + *

NOTE: + *
In this callback, if cursor operations are performed, + * you need to adjust the cursor logic based on the previewText parameter + * to make sure it works seamlessly under the preview display scenario. + *

+ * * @param { EditableTextOnChangeCallback } callback * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -891,6 +992,7 @@ declare class TextAreaAttribute extends CommonMethod { * Called when the text selection changes. * * @param { function } callback - callback of the listened event. + * { number } selectionStart - The start position of text is 0. * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -912,6 +1014,8 @@ declare class TextAreaAttribute extends CommonMethod { * Called when the content scrolls. * * @param { function } callback - callback of the listened event. + * { number } totalOffsetX - The unit is px. + * { number } totalOffsetY - The unit is px. * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -932,7 +1036,8 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when judging whether the text editing change finished. - * + * The text box is in the editing state when it has the caret placed in it, and is in the non-editing state otherwise. + * * @param { function } callback - Triggered when the text area status changes. * If the value of isEditing is true, text area is in progress. * @returns { TextAreaAttribute } @@ -1052,8 +1157,14 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Called when the copy option is set. - * - * @param { CopyOptions } value + * + *

NOTE: + *
If this attribute is set to CopyOptions.None, the text can only be pasted; + * all other actions, such as copying, cutting, and sharing, are disabled. + *
Dragging is not allowed when CopyOptions.None is set. + *

+ * + * @param { CopyOptions } value - Default value is CopyOptions.LocalDevice. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1074,7 +1185,7 @@ declare class TextAreaAttribute extends CommonMethod { /** * Sets whether request keyboard or not when on focus. * - * @param { boolean } value + * @param { boolean } value - Default value is true. * @returns { TextAreaAttribute } Returns the instance of the TextAreaAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1093,7 +1204,13 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Define the max length content of the text area. - * + * + *

NOTE: + *
By default, there is no maximum number of characters. + *
When the maximum number of characters is reached, + * no more characters can be entered, and the border turns red. + *

+ * * @param { number } value * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1113,7 +1230,25 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Define show counter of the text area. - * + * + *

NOTE: + *
options can be set only when value is set to true, + * in which case a character counter is displayed below the text box. + *
This attribute must be used together with maxlength. + *
The character counter is displayed in this format: Number of characters entered/Character limit. + *
It is visible when the number of characters entered is greater than + * the character limit multiplied by the threshold percentage value. + *
If options is not set, the text box border and character counter subscript turn red + * when the number of characters entered reaches the limit. + *
If value is set to true and options is set, + * the text box border and character counter subscript turn red + * and the text box shakes when the number of characters entered reaches the limit, + * provided that the value of thresholdPercentage is valid. + *
If highlightBorder is set to false, the text box border does not turn red. + *
By default, highlightBorder is set to true. + *
The character counter is not displayed for text boxes in inline input style. + *

+ * * @param { boolean } value - Set showcounter of the text area. * @param { InputCounterOptions } options - Set the percentage of counter. * @returns { TextAreaAttribute } @@ -1134,8 +1269,12 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Define style of the text area. - * - * @param { TextContentStyle } value + * + *

NOTE: + *
The inline input style is only available for the TextAreaType.Normal type. + *

+ * + * @param { TextContentStyle } value - Default value is TextContentStyle.DEFAULT. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1155,7 +1294,7 @@ declare class TextAreaAttribute extends CommonMethod { /** * Define bar state of the text area. * - * @param { BarState } value + * @param { BarState } value - Default value is BarState.Auto. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -1174,8 +1313,17 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Controls whether the selection menu pops up. - * - * @param { boolean } value + * + *

NOTE: + *
true: + *
The system text selection menu does not appear under the following circumstances: clicking the text box cursor, + * long-pressing the text box, double-tapping the text box, triple-tapping the text box, or right-clicking the text box. + *
false: + *
The system text selection menu appears under the following circumstances: clicking the text box cursor, + * long-pressing the text box, double-tapping the text box, triple-tapping the text box, or right-clicking the text box. + *

+ * + * @param { boolean } value - Default value is false. * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1186,8 +1334,14 @@ declare class TextAreaAttribute extends CommonMethod { /** * Called when the minimum font size of the font is set. - * - * @param { number | string | Resource } value + * + *

NOTE: + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *
For the setting to take effect, this attribute must be used together with maxFontSize and maxLines,or layout constraint settings. + *
When the adaptive font size is used, the fontSize settings do not take effect. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1198,8 +1352,14 @@ declare class TextAreaAttribute extends CommonMethod { /** * Called when the maximum font size of the font is set. - * - * @param { number | string | Resource } value + * + *

NOTE: + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *
For the setting to take effect, this attribute must be used together with minFontSize and maxLines, or layout constraint settings. + *
When the adaptive font size is used, the fontSize settings do not take effect. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1210,30 +1370,97 @@ declare class TextAreaAttribute extends CommonMethod { /** * Called when the minimum font scale of the font is set. - * + * Value range: [0, 1] + * + *

NOTE: + *
The undefined type is supported. + *
A value less than 0 is handled as 0. + *
A value greater than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

+ * * @param { Optional } scale * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 18 */ + /** + * Called when the minimum font scale of the font is set. + * Value range: [0, 1] + * + *

NOTE: + *
The undefined type is supported. + *
A value less than 0 is handled as 0. + *
A value greater than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

+ * + * @param { Optional } scale + * @returns { TextAreaAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ minFontScale(scale: Optional): TextAreaAttribute; /** * Called when the maximum font scale of the font is set. - * + * Value range: [1, +∞) + * + *

NOTE: + *
A value less than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

+ * * @param { Optional } scale * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 18 */ + /** + * Called when the maximum font scale of the font is set. + * Value range: [1, +∞) + * + *

NOTE: + *
A value less than 1 is handled as 1. + *
Abnormal values are ineffective by default. + *

+ * + * @param { Optional } scale + * @returns { TextAreaAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ maxFontScale(scale: Optional): TextAreaAttribute; /** * Called when the height adaptive policy is set. - * - * @param { TextHeightAdaptivePolicy } value - The height adaptive policy. + * + *

NOTE: + *

    + *
  • When this attribute is set to TextHeightAdaptivePolicy.MAX_LINES_FIRST, + * the maxLines attribute takes precedence for adjusting the text height. + *
    If the maxLines setting results in a layout beyond the layout constraints, + * the text will shrink to a font size between minFontSize and maxFontSize to allow for more content to be shown. + *
    If the text box is in inline input style, + * the font size in the editing state is different from that in the non-editing state.
  • + *
  • If this attribute is set to TextHeightAdaptivePolicy.MIN_FONT_SIZE_FIRST, + * the minFontSize attribute takes precedence for adjusting the text height. + *
    If the text can fit in one line with the minFontSize setting, + * the text will enlarge to the largest possible font size between minFontSize and maxFontSize.
  • + *
  • If this attribute is set to TextHeightAdaptivePolicy.LAYOUT_CONSTRAINT_FIRST, + * the layout constraints take precedence for adjusting the text height. + *
    If the resultant layout is beyond the layout constraints, + * the text will shrink to a font size between minFontSize and maxFontSize to respect the layout constraints.
  • + *
+ *

+ * + * @param { TextHeightAdaptivePolicy } value - The height adaptive policy.Default value is TextHeightAdaptivePolicy.MAX_LINES_FIRST. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1252,7 +1479,19 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Define max lines of the text area. - * + * Value range: (0, +∞) + * + *

NOTE: + *
Sets the maximum number of lines that can be displayed. + *
When textOverflow is set, text is truncated if the content exceeds this limit. + *
When textOverflow is not set, in inline style, + * the text is scrollable if the content exceeds the limit while the text box is focused; + * maxLines does not apply when the text box is not focused. + *
In non-inline style, the text is truncated according to the number of lines. + *
Default value: 3 with the inline style; +∞ with the non-inline style, + * indicating that there is no maximum number of lines. + *

+ * * @param { number } value * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1262,10 +1501,41 @@ declare class TextAreaAttribute extends CommonMethod { */ maxLines(value: number): TextAreaAttribute; + /** + * Define max lines of the text area, behavior can be displayed as the scrolling capability. + * + * @param { number } lines - Max lines of the node + * @param { MaxLinesOptions } options - max lines of setting options. + * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + maxLines(lines: number, options: MaxLinesOptions): TextAreaAttribute; + + /** + * Define min lines of the text area. + * + * @param { Optional } lines - Min lines of the node + * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + minLines(lines: Optional): TextAreaAttribute; + /** * Set the word break type. * - * @param { WordBreak } value - The word break type. + *

NOTE: + *
This attribute does not take effect for the placeholder text. + *
The component does not support the clip attribute. + *
Therefore, setting this attribute does not affect text clipping. + *

+ * + * @param { WordBreak } value - The word break type.Default value is WordBreak.BREAK_WORD. * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1277,7 +1547,11 @@ declare class TextAreaAttribute extends CommonMethod { /** * Set the text line break strategy type. * - * @param { LineBreakStrategy } strategy - The text line break strategy type. + *

NOTE: + *
This attribute takes effect when wordBreak is not set to breakAll. Hyphens are not supported. + *

+ * + * @param { LineBreakStrategy } strategy - The text line break strategy type.Default value is LineBreakStrategy.GREEDY. * @returns { TextAreaAttribute } The attribute of the TextAreaAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1306,7 +1580,21 @@ declare class TextAreaAttribute extends CommonMethod { */ /** * Define custom keyboard of the text area. - * + * + *

NOTE: + *
When a custom keyboard is set, activating the text box opens the specified custom component, + * instead of the system input method. + *
The custom keyboard's height can be set through the height attribute of the custom component's root node, + * and its width is fixed at the default value. + *
The custom keyboard is presented by overlaying the original screen, + * which is not compressed or lifted if avoid mode is not enabled or avoidance is not needed for the text box. + *
The custom keyboard cannot obtain the focus, but it blocks gesture events. + *
By default, the custom keyboard is closed when the input component loses the focus. + *
You can also use the TextAreaController.stopEditing API to close the keyboard. + *
When a custom keyboard is set, the text box does not support camera input, even when the device supports. + *
When setting a custom keyboard, you can bind the onKeyPrelme event to prevent input from the physical keyboard. + *

+ * * @param { CustomBuilder } value - Set up a custom keyboard of TextArea * @param { KeyboardOptions } [options] - Indicates the custom keyboard options of TextArea * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. @@ -1320,7 +1608,7 @@ declare class TextAreaAttribute extends CommonMethod { /** * Called when the text decoration of the text is set. * - * @param { TextDecorationOptions } value + * @param { TextDecorationOptions } value - Default value is { type: TextDecorationType.None, color: Color.Black, style: TextDecorationStyle.SOLID }. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1331,8 +1619,15 @@ declare class TextAreaAttribute extends CommonMethod { /** * Called when the distance between text fonts is set. - * - * @param { number | string | Resource } value + * + *

NOTE: + *
If the value specified is a percentage or 0, the default value is used. + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *
If the value specified is a negative value, the text is compressed. + *
A negative value too small may result in the text being compressed to 0 and no content being displayed. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1343,8 +1638,12 @@ declare class TextAreaAttribute extends CommonMethod { /** * Set font line spacing. - * - * @param { LengthMetrics } value + * + *

NOTE: + *
If the value specified is less than or equal to 0, the default value 0 is used. + *

+ * + * @param { LengthMetrics } value - Default value is 0. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1354,8 +1653,26 @@ declare class TextAreaAttribute extends CommonMethod { lineSpacing(value: LengthMetrics): TextAreaAttribute; /** - * Called when the line height of the font is set. + * Set font line spacing with options. * + * @param { LengthMetrics } value + * @param { LineSpacingOptions } options + * @returns { TextAreaAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + lineSpacing(value: LengthMetrics, options?: LineSpacingOptions): TextAreaAttribute; + + /** + * Called when the line height of the font is set. + * + *

NOTE: + *
If the value is less than or equal to 0, the line height is not limited and the font size is adaptive. + *
If the value is of the number type, the unit fp is used. + *

+ * * @param { number | string | Resource } value * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1377,7 +1694,7 @@ declare class TextAreaAttribute extends CommonMethod { /** * Called when the input type is set. * - * @param { TextAreaType } value + * @param { TextAreaType } value - Default value is TextAreaType.Normal. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1388,8 +1705,8 @@ declare class TextAreaAttribute extends CommonMethod { /** * Sets whether enable auto fill or not. - * - * @param { boolean } value - Indicates the flag whether autofill is enabled. + * + * @param { boolean } value - Indicates the flag whether autofill is enabled.Default value is true.True: enable, false: disable. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -1426,7 +1743,13 @@ declare class TextAreaAttribute extends CommonMethod { /** * Get text value information when about to input. - * + * + *

NOTE: + *
It returns true if the text is inserted; returns false otherwise. + *
This callback is not triggered for pre-edit or candidate word operations. + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content is about to insert. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1438,7 +1761,11 @@ declare class TextAreaAttribute extends CommonMethod { /** * Get text value information when completed input. - * + * + *

NOTE: + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content has been inserted. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1450,7 +1777,13 @@ declare class TextAreaAttribute extends CommonMethod { /** * Get text value information when about to delete. - * + * + *

NOTE: + *
It returns true if the text is deleted; returns false otherwise. + *
This callback is not called for text preview. + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content is about to delete. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1462,7 +1795,11 @@ declare class TextAreaAttribute extends CommonMethod { /** * Get text value information when the deletion has been completed - * + * + *

NOTE: + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content has been deleted. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1474,7 +1811,9 @@ declare class TextAreaAttribute extends CommonMethod { /** * Set the custom text menu. - * + * Sets the extended options of the custom context menu on selection, + * including the text content, icon, and callback. + * * @param { EditMenuOptions } editMenu - Customize text menu options. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1486,8 +1825,13 @@ declare class TextAreaAttribute extends CommonMethod { /** * Define the preview text mode of the text input. - * - * @param { boolean } enable - Indicates the preview text mode. + * + *

NOTE: + *
Preview text is in a temporary state and does not support text interception. + *
As such, it does not trigger onWillInsert, onDidInsert, onWillDelete, or onDidDelete callbacks. + *

+ * + * @param { boolean } enable - Indicates the preview text mode.Default value is true. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1498,7 +1842,19 @@ declare class TextAreaAttribute extends CommonMethod { /** * Enable or disable haptic feedback. - * + * + *

NOTE: + *
To enable haptic feedback, + *
you must declare the ohos.permission.VIBRATE permission under requestPermissions in the module.json5 file of the project. + * + * "requestPermissions": [ + * { + * "name": "ohos.permission.VIBRATE", + * } + * ] + * + *

+ * * @param { boolean } isEnabled - Default value is true, set false to disable haptic feedback. * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1523,7 +1879,7 @@ declare class TextAreaAttribute extends CommonMethod { /** * Set the text with half leading. * - * @param { Optional } halfLeading + * @param { Optional } halfLeading - Default value is false.The value true means that half leading is enabled, and false means the opposite. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1534,8 +1890,14 @@ declare class TextAreaAttribute extends CommonMethod { /** * Set the ellipsis mode. - * - * @param { EllipsisMode } mode - The ellipsis mode. + * + *

NOTE: + *
For the settings to work, overflow must be set to TextOverflow.Ellipsis and maxLines must be specified. + *
Setting ellipsisMode alone does not take effect. + *
EllipsisMode.START and EllipsisMode.CENTER take effect only when maxLines is set to 1. + *

+ * + * @param { EllipsisMode } mode - The ellipsis mode.Default value is EllipsisMode.END. * @returns { TextAreaAttribute } The attribute of TextArea. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1557,8 +1919,13 @@ declare class TextAreaAttribute extends CommonMethod { /** * Get text value information when about to change. - * + * + *

NOTE: + *
This callback is triggered after onWillInsert and onWillDelete, but before onDidInsert and onDidDelete. + *

+ * * @param { Callback } callback - The triggered function when text content is about to change. + * Returning true allows the change to proceed, while returning false cancels the change. * @returns { TextAreaAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1577,6 +1944,42 @@ declare class TextAreaAttribute extends CommonMethod { * @since 15 */ keyboardAppearance(appearance: Optional): TextAreaAttribute; + + /** + * Set the stroke width. + * + * @param { Optional } width - indicates the stroke width. + * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + strokeWidth(width: Optional): TextAreaAttribute; + + /** + * Set the stroke color. + * + * @param { Optional } color - indicates the stroke color. + * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + strokeColor(color: Optional): TextAreaAttribute; + + /** + * Whether to enable automatic spacing between Chinese and Latin characters. + * + * @param { Optional } enabled - The default value is false, indicates the flag whether to enable automatic spacing. + * @returns { TextAreaAttribute } returns the instance of the TextAreaAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + enableAutoSpacing(enabled: Optional): TextAreaAttribute; } /** diff --git a/api/@internal/component/ets/text_clock.d.ts b/api/@internal/component/ets/text_clock.d.ts index f5facc3693689c31be0273f531eca8cf3dfe6f8d..72059f918df764eb406996d59906dcddcb51ccc3 100644 --- a/api/@internal/component/ets/text_clock.d.ts +++ b/api/@internal/component/ets/text_clock.d.ts @@ -167,7 +167,7 @@ declare interface TextClockConfiguration extends CommonConfiguration { * @atomicservice * @since 11 */ - format(value: string): TextClockAttribute; + /** + * set display time format,such as "yyyy/mm/dd","yyyy-mm-dd". + * support time format:yyyy,mm,mmm(English month abbreviation),mmmm(Full name of the month in English), + * dd,ddd(English Week abbreviation),dddd(Full name of the week in English), + * HH/hh(24-hour clock/12-hour clock),MM/mm(minute),SS/ss(second). + * The default value is "hh:mm:ss" when TextClock is not in a form. + * The default value is "hh:mm" when TextClock is in a form. + * If the value has second or millisecond, the value will be set to the default value. + * + * @param { ResourceStr } value + * @returns { TextClockAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + format(value: ResourceStr): TextClockAttribute; /** * Provides a date change callback. diff --git a/api/@internal/component/ets/text_common.d.ts b/api/@internal/component/ets/text_common.d.ts index edc63a21ea8570a64f8ea729d04c07f643574e50..219165ceb2f3f5f6e0a8e6a65c1558ea8a87073c 100644 --- a/api/@internal/component/ets/text_common.d.ts +++ b/api/@internal/component/ets/text_common.d.ts @@ -172,7 +172,17 @@ declare interface TextDataDetectorConfig { * @atomicservice * @since 12 */ - decoration?: DecorationStyleInterface + decoration?: DecorationStyleInterface; + + /** + * Used to set whether the preview window will be displayed when long-presses and selects a word. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + enablePreviewMenu?: boolean; } /** @@ -274,6 +284,47 @@ declare enum TextDeleteDirection { FORWARD = 1, } +/** + * Defines the superscript style. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare enum SuperscriptStyle { + /** + * normal font style. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + NORMAL = 0, + + /** + * Superscript font style. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + SUPERSCRIPT = 1, + + /** + * Subscript font style. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + SUBSCRIPT = 2, +} + /** * Defines menu type. * @@ -1050,6 +1101,66 @@ declare class TextMenuItemId { * @since 18 */ static readonly SHARE: TextMenuItemId; + + /** + * Indicates the TextMenuItemId to open url. + * + * @type { TextMenuItemId } + * @readonly + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + static readonly url: TextMenuItemId; + + /** + * Indicates the TextMenuItemId to open email. + * + * @type { TextMenuItemId } + * @readonly + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + static readonly email: TextMenuItemId; + + /** + * Indicates the TextMenuItemId to call the phone number. + * + * @type { TextMenuItemId } + * @readonly + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + static readonly phoneNumber: TextMenuItemId; + + /** + * Indicates the TextMenuItemId to open map. + * + * @type { TextMenuItemId } + * @readonly + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + static readonly address: TextMenuItemId; + + /** + * Indicates the TextMenuItemId to open calendar. + * + * @type { TextMenuItemId } + * @readonly + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + static readonly dateTime: TextMenuItemId; } /** @@ -1104,6 +1215,19 @@ declare interface TextMenuItem { labelInfo?: ResourceStr; } +/** + * Callback before displaying the menu when the selection range changes. + * + * @typedef { function } OnPrepareMenuCallback + * @param { Array } menuItems - currently displayed menu items. + * @returns { Array } Return the menu items will displayed after operations. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +type OnPrepareMenuCallback = (menuItems: Array) => Array; + /** * EditMenuOptions * @@ -1137,6 +1261,16 @@ declare interface EditMenuOptions { * @since 12 */ onMenuItemClick(menuItem: TextMenuItem, range: TextRange): boolean; + /** + * Callback before displaying the menu when the selection range changes. + * + * @type { ?OnPrepareMenuCallback } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onPrepareMenu?: OnPrepareMenuCallback; } /** @@ -1181,6 +1315,17 @@ interface DecorationStyleResult { * @since 12 */ style?: TextDecorationStyle; + + /** + * The thicknessScale value of the decoration property object. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + thicknessScale?: number; } /** @@ -1402,4 +1547,480 @@ declare enum KeyboardAppearance { * @since 15 */ DARK_IMMERSIVE = 3, +} + +/** + * Defines shader style class. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare class ShaderStyle { +} + +/** + * Defines linear gradient class. + * + * @extends ShaderStyle + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare class LinearGradientStyle extends ShaderStyle { + /** + * The constructor. + * + * @param { LinearGradientOptions } options - The options of the gradient. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + constructor(options: LinearGradientOptions); + + /** + * The options of the gradient. + * angle: Angle of linear gradient. + * direction: Direction of Linear Gradient. + * colors: Color description for gradients. + * repeating: if the gradient colors with repeated coloring. + * + * @type { LinearGradientOptions } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + options: LinearGradientOptions; +} + +/** + * Defines radial gradient class. + * + * @extends ShaderStyle + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare class RadialGradientStyle extends ShaderStyle { + /** + * The constructor. + * + * @param { RadialGradientOptions } options - The options of the gradient. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + constructor(options: RadialGradientOptions); + + /** + * The options of the gradient. + * center: Center point of radial gradient + * radius: Radius of Radial Gradient. value range [0, +∞) + * colors: Color description for gradients + * repeating: Refill. The default value is false + * + * @type { RadialGradientOptions } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + options: RadialGradientOptions; +} + +/** + * Defines a shader with single color. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare class ColorShaderStyle extends ShaderStyle { + /** + * The constructor. + * + * @param { ResourceColor } color - The color used by shader. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + constructor(color: ResourceColor); + + /** + * The color of the shader. + * + * @type { RadialGradientOptions } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + color: ResourceColor; +} + + /** + * Defines the line spacing options. + * @interface LineSpacingOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + declare interface LineSpacingOptions { + /** + * Used to set whether it will only take effect between lines. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onlyBetweenLines?: boolean; +} + +/** + * Defines the reason for text changes. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ +declare enum TextChangeReason { + /** + * Default value. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + UNKNOWN = 0, + + /** + * Reason for input. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + INPUT = 1, + + /** + * Reason for paste. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + PASTE = 2, + + /** + * Reason for cut. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + CUT = 3, + + /** + * Reason for drag. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + DRAG = 4, + + /** + * Reason for auto fill. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + AUTO_FILL = 5, + + /** + * Reason for ai write. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + AI_WRITE = 6, + + /** + * Reason for redo. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + REDO = 7, + + /** + * Reason for undo. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + UNDO = 8, + + /** + * Reason for controller methods. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + CONTROLLER = 9, + + /** + * Reason for accessibilty methods. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + ACCESSIBILITY = 10, + + /** + * Reason for collarboration input. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + COLLABORATION = 11, + + /** + * Reason for stylus input. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + STYLUS = 12 +} + +/** + * Vertical Alignment of text. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare enum TextVerticalAlign { + /** + * Baseline alignment, the default value. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + BASELINE = 0, + + /** + * Bottom alignment. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + BOTTOM = 1, + + /** + * Center alignment. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + CENTER = 2, + + /** + * Top alignment. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + TOP = 3, +} + +/** + * Defines the options of max lines. + * @interface MaxLinesOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare interface MaxLinesOptions { + /** + * The mode of max lines. + * + * @type { ?MaxLinesMode } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + overflowMode?: MaxLinesMode; +} + +/** + * Defines maxlines mode. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare enum MaxLinesMode { + /** + * Default maxlines mode + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + CLIP = 0, + + /** + * Scroll mode of max lines + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + SCROLL = 1, +} + +/** + * Keyboard Gradient mode. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ +declare enum KeyboardGradientMode { + /** + * Disable gradient mode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ + NONE = 0, + + /** + * Linear gradient mode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ + LINEAR_GRADIENT = 1, +} + +/** + * Keyboard fluid light mode. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ +declare enum KeyboardFluidLightMode { + /** + * Disable fluid light mode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ + NONE = 0, + + /** + * Background fluid light mode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ + BACKGROUND_FLUID_LIGHT = 1, +} + +/** + * Defines the keyboard appearance config. + * + * @interface KeyboardAppearanceConfig + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ +declare interface KeyboardAppearanceConfig { +/** + * Used to set keyboard gradient mode. + * + * @type { ?KeyboardGradientMode } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ + gradientMode?: KeyboardGradientMode; + +/** + * Used to set keyboard fluid light mode.. + * + * @type { ?KeyboardFluidLightMode } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ + fluidLightMode?: KeyboardFluidLightMode; +} + +/** + * Defines the input method client. + * + * @interface IMEClient + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare interface IMEClient { + /** + * The unique ID of this input component node. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + nodeId: number; } \ No newline at end of file diff --git a/api/@internal/component/ets/text_input.d.ts b/api/@internal/component/ets/text_input.d.ts index 4eb36d3bcc9629ca28f52bb5a226c0f6c55837b4..cd6888ae551923edc5f81e28ca918c82ebf51dbb 100644 --- a/api/@internal/component/ets/text_input.d.ts +++ b/api/@internal/component/ets/text_input.d.ts @@ -128,6 +128,11 @@ declare enum InputType { /** * E-mail address input mode. * + *

NOTE: + *
This mode accepts only digits, letters, underscores (_), dots (.), + * and the following special characters: ! # $ % & ' " * + - / = ? ^ ` { | } ~ @ (which can only appear once) + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -151,6 +156,14 @@ declare enum InputType { /** * Password entry mode. * + *

NOTE: + *
An eye icon is used to show or hide the password. + *
By default, the entered characters are temporarily shown before being obscured by dots; + * they are directly obscured by dots since API version 12 on certain devices. + *
The password input mode does not support underlines. + *
If Password Vault is enabled, autofill is available for the username and password. + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -168,6 +181,13 @@ declare enum InputType { /** * Number Password entry mode. * + *

NOTE: + *
An eye icon is used to show or hide the password. + *
By default, the entered characters are temporarily shown before being obscured by dots; + * they are directly obscured by dots since API version 12 on certain devices. + *
The password input mode does not support underlines. + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -193,6 +213,10 @@ declare enum InputType { /** * UserName entry mode. * + *

NOTE: + *
If Password Vault is enabled, autofill is available for the username and password. + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 @@ -208,6 +232,13 @@ declare enum InputType { /** * NewPassword entry mode. * + *

NOTE: + *
An eye icon is used to show or hide the password. + *
By default, the entered characters are temporarily shown before being obscured by dots; + * they are directly obscured by dots since API version 12 on certain devices. + *
If Password Vault is enabled, a new password can be automatically generated. + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 @@ -217,6 +248,10 @@ declare enum InputType { /** * Number decimal entry mode. * + *

NOTE: + *
The value can contain digits and one decimal point. + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -233,6 +268,15 @@ declare enum InputType { * @since 12 */ URL = 13, + + /** + * One time code mode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + ONE_TIME_CODE = 14, } /** @@ -246,6 +290,7 @@ declare enum InputType { declare enum ContentType { /** * User name content type. + * Password Vault, when enabled, can automatically save and fill in usernames. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -255,6 +300,7 @@ declare enum ContentType { /** * Password content type. + * Password Vault, when enabled, can automatically save and fill in passwords. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -264,6 +310,7 @@ declare enum ContentType { /** * New password content type. + * Password Vault, when enabled, can automatically generate a new password. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -273,6 +320,8 @@ declare enum ContentType { /** * Full street address content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in full street addresses. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -282,6 +331,8 @@ declare enum ContentType { /** * House number content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in house numbers. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -291,6 +342,8 @@ declare enum ContentType { /** * District address content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in districts and counties. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -300,6 +353,8 @@ declare enum ContentType { /** * City address content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in cities. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -309,6 +364,8 @@ declare enum ContentType { /** * Province address content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in provinces. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -318,6 +375,8 @@ declare enum ContentType { /** * Country address content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in countries. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -327,6 +386,8 @@ declare enum ContentType { /** * Person full name content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in full names. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -336,6 +397,8 @@ declare enum ContentType { /** * Person last name content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in last names. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -345,6 +408,8 @@ declare enum ContentType { /** * Person first name content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in first names. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -354,6 +419,8 @@ declare enum ContentType { /** * Phone number content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in phone numbers. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -363,6 +430,8 @@ declare enum ContentType { /** * Phone country code content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in country codes. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -372,6 +441,8 @@ declare enum ContentType { /** * Full phone number content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in phone numbers with country codes. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -381,6 +452,8 @@ declare enum ContentType { /** * Email address content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in email addresses. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -390,6 +463,8 @@ declare enum ContentType { /** * Bank card number content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in bank card numbers. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -399,6 +474,8 @@ declare enum ContentType { /** * ID card number content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in ID card numbers. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -408,6 +485,8 @@ declare enum ContentType { /** * Nickname content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in nicknames. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -417,6 +496,8 @@ declare enum ContentType { /** * Detail info without street content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in address information without street addresses. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -426,6 +507,8 @@ declare enum ContentType { /** * Format address content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in standard addresses. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -435,6 +518,8 @@ declare enum ContentType { /** * Passport number content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in passport numbers. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -444,6 +529,8 @@ declare enum ContentType { /** * Passport validity content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in passport validity periods. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -453,6 +540,8 @@ declare enum ContentType { /** * Place of issue content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in the place of issue for passports. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -462,6 +551,8 @@ declare enum ContentType { /** * Invoice organization content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in invoice titles. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -471,6 +562,8 @@ declare enum ContentType { /** * Invoice tax id content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in tax IDs. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -480,6 +573,8 @@ declare enum ContentType { /** * Address city and state content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in locations. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -489,6 +584,7 @@ declare enum ContentType { /** * Airline flight number content type. + * Currently not supported for automatic saving and auto-filling. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -498,6 +594,7 @@ declare enum ContentType { /** * License number for drivers content type. + * Currently not supported for automatic saving and auto-filling. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -507,6 +604,7 @@ declare enum ContentType { /** * License file number for drivers content type. + * Currently not supported for automatic saving and auto-filling. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -516,6 +614,8 @@ declare enum ContentType { /** * License plate for vehicles content type. + * The scenario-based autofill feature, when enabled, + * can automatically save and fill in license plate numbers. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -525,6 +625,7 @@ declare enum ContentType { /** * Engine number for vehicles content type. + * Currently not supported for automatic saving and auto-filling. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -534,6 +635,7 @@ declare enum ContentType { /** * License chassis number for vehicles content type. + * Currently not supported for automatic saving and auto-filling. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -730,6 +832,11 @@ declare interface UnderlineColor { /** * Typing underline color width property. * + *

NOTE: + *
If no value is specified or if the value specified is undefined, + * null, or invalid, the default value is used. + *

+ * * @type { ?(ResourceColor | undefined) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -740,6 +847,11 @@ declare interface UnderlineColor { /** * Normal underline color width property. * + *

NOTE: + *
If no value is specified or if the value specified is undefined, + * null, or invalid, the default value is used. + *

+ * * @type { ?(ResourceColor | undefined) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -750,6 +862,13 @@ declare interface UnderlineColor { /** * Error underline color width property. * + *

NOTE: + *
If no value is specified or if the value specified is undefined, + * null, or invalid, the default value is used. + *
This option changes the color used in the showCounter attribute + * when the maximum number of characters is reached. + *

+ * * @type { ?(ResourceColor | undefined) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -760,6 +879,11 @@ declare interface UnderlineColor { /** * Disable underline color width property. * + *

NOTE: + *
If no value is specified or if the value specified is undefined, + * null, or invalid, the default value is used. + *

+ * * @type { ?(ResourceColor | undefined) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -840,6 +964,7 @@ declare class TextInputController extends TextContentControllerBase { */ /** * constructor. + * A constructor used to create a TextInputController object. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -866,6 +991,11 @@ declare class TextInputController extends TextContentControllerBase { /** * Called when the position of the insertion cursor is set. * + *

NOTE: + *
If the value is less than 0, the value 0 is used. + *
If the value exceeds the text length, the caret is placed at the end of the text. + *

+ * * @param { number } value * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -896,9 +1026,17 @@ declare class TextInputController extends TextContentControllerBase { /** * Text selection is achieved by specifying the start and end positions of the text. * - * @param { number } selectionStart - The start position of the selected text. + *

NOTE: + *
If selectionStart or selectionEnd is set to undefined, the value 0 will be used. + *
If selectionMenuHidden is set to true or a 2-in-1 device is used, + * calling setTextSelection does not display the context menu even when options is set to MenuPolicy.SHOW. + *
If the selected text contains an emoji, + * the emoji is selected when its start position is within the text selection range. + *

+ * + * @param { number } selectionStart - The start position of the selected text.The start position of text in the text box is 0. * @param { number } selectionEnd - The end position of the selected text. - * @param { SelectionOptions } [options] - Indicates the options of the text selection. + * @param { SelectionOptions } [options] - Indicates the options of the text selection.Default value is MenuPolicy.DEFAULT. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -993,6 +1131,13 @@ declare interface TextInputOptions { /** * Sets the current value of TextInput. * + *

NOTE: + *
You are advised to bind the state variable to the text in real time through the onChange event, + * so as to prevent display errors when the component is updated. + *
Since API version 10, this parameter supports two-way binding through $$. + *
Since API version 18, this parameter supports two-way binding through !!. + *

+ * * @type { ?ResourceStr } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1069,6 +1214,11 @@ declare enum TextInputStyle { /** * Text input default style. * + *

NOTE: + *
The caret width is fixed at 1.5 vp, + * and the caret height is subject to the background height and font size of the selected text. + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1092,6 +1242,14 @@ declare enum TextInputStyle { /** * Text input inline style. * + *

NOTE: + *
The background height of the selected text is the same as the height of the text box. + *
This style is used in scenarios where editing and non-editing states are obvious, + * for example, renaming in the file list view. + *
The showError attribute is not supported for this style. + *
This style does not allow for text dragging and dropping. + *

+ * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1182,6 +1340,11 @@ interface PasswordIcon { /** * Define the on icon source of PasswordIcon. * + *

NOTE: + *
Icon that can be used to hide the password in password input mode. + *
The string type can be used to load network images and local images. + *

+ * * @type { ?(string | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1200,6 +1363,11 @@ interface PasswordIcon { /** * Define the off icon source of PasswordIcon. * + *

NOTE: + *
Icon that can be used to show the password in password input mode. + *
The string type can be used to load network images and local images. + *

+ * * @type { ?(string | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1212,6 +1380,7 @@ interface PasswordIcon { /** * Defines a TextInput callback when onSubmit. * + * Anonymous Object Rectification. * @typedef { function } OnSubmitCallback * @param { EnterKeyType } enterKey - Input method Enter key type. * @param { SubmitEvent } event - The event submitted. @@ -1225,6 +1394,7 @@ declare type OnSubmitCallback = (enterKey: EnterKeyType, event: SubmitEvent) => /** * Defines a TextInput callback when onTextSelectionChange. * + * Anonymous Object Rectification. * @typedef { function } OnTextSelectionChangeCallback * @param { number } selectionStart - The starting position of the selected text, the starting position of the text is 0. * @param { number } selectionEnd - The end location of the selected text. @@ -1238,6 +1408,7 @@ declare type OnTextSelectionChangeCallback = (selectionStart: number, selectionE /** * Defines a TextInput callback when onContentScroll. * + * Anonymous Object Rectification. * @typedef { function } OnContentScrollCallback * @param { number } totalOffsetX - The text is offset in px on the horizontal axis of the content area. * @param { number } totalOffsetY - The text is offset in px on the vertical axis of the content area. @@ -1252,6 +1423,7 @@ declare type OnContentScrollCallback = (totalOffsetX: number, totalOffsetY: numb /** * Defines a TextInput callback when onPaste. * + * Anonymous Object Rectification. * @typedef { function } OnPasteCallback * @param { string } content - The text content of the paste. * @param { PasteEvent } event - User-defined paste event. @@ -1307,7 +1479,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the input type is set. * - * @param { InputType } value + * @param { InputType } value - Default value is InputType.Normal. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1347,7 +1519,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the color of the placeholder is set. * - * @param { ResourceColor } value + * @param { ResourceColor } value - Default value follows the theme.The default value on wearable devices is '#99ffffff'. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1359,6 +1531,19 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the overflow mode of the font is set. * + *

NOTE: + *
This attribute is only available for the inline input style. + *
Text is clipped at the transition between words. + *
To clip text in the middle of a word, set wordBreak to WordBreak.BREAK_ALL. + *
TextOverflow.None produces the same effect as TextOverflow.Clip. + *
Default value in non-editing state in the inline input style: TextOverflow.Ellipsis. + *
Default value in editing state in the inline input style: TextOverflow.Clip. + *
The TextInput component does not support the TextOverflow.MARQUEE mode. + *
If TextOverflow.MARQUEE is set, the component automatically switches to TextOverflow.Ellipsis + * for the non-editing state in the inline input style and TextOverflow.Clip + * for the non-inline input style and the editing state in the inline input style. + *

+ * * @param { TextOverflow } value * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1371,7 +1556,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Specify the indentation of the first line in a text-block. * - * @param { Dimension } value - The length of text indent. + * @param { Dimension } value - The length of text indent.Default value is 0. * @returns { TextInputAttribute } The attribute of the text. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1400,6 +1585,11 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the font property of the placeholder is set. * + *

NOTE: + *
The 'HarmonyOS Sans' font and registered custom fonts are supported. + *
The default value on wearable devices is 18fp. + *

+ * * @param { Font } value * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1429,7 +1619,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the type of soft keyboard input button is set. * - * @param { EnterKeyType } value + * @param { EnterKeyType } value - Default value is EnterKeyType.Done. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1458,7 +1648,11 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the color of the insertion cursor is set. * - * @param { ResourceColor } value + *

NOTE: + *
Since API version 12, this API can be used to set the text handle color, which is the same as the caret color. + *

+ * + * @param { ResourceColor } value - Default value is '#007DFF'. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1470,7 +1664,12 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when judging whether the text editing change finished. * - * @param { function } callback + *

NOTE: + *
This API is deprecated since API version 8. + *
You are advised to use onEditChange instead. + *

+ * + * @param { function } callback - The value true indicates that the text box is in the editing state. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 @@ -1509,6 +1708,14 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when judging whether the text editing change finished. * + * Anonymous Object Rectification. + * + *

NOTE: + *
The text box is in the editing state when it has the caret placed in it, + * and is in the non-editing state otherwise. + *
It returns true if the input operation is currently in progress. + *

+ * * @param { Callback } callback * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1548,6 +1755,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when submitted. * + * Anonymous Object Rectification. * @param { OnSubmitCallback } callback - Callback of the listened event. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1587,6 +1795,11 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the input of the input box changes. * + *

NOTE: + *
In this callback, if cursor operations are performed, you need to adjust the cursor logic + * based on the previewText parameter to ensure it works seamlessly within the preview display scenario. + *

+ * * @param { EditableTextOnChangeCallback } callback * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1618,6 +1831,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the text selection changes. * + * Anonymous Object Rectification. * @param { OnTextSelectionChangeCallback } callback - Callback of the listened event. * @returns { TextInputAttribute } Returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1649,6 +1863,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the content scrolls. * + * Anonymous Object Rectification. * @param { OnContentScrollCallback } callback - Callback of the listened event. * @returns { TextInputAttribute } Returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1678,7 +1893,12 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the input of maximum text length is set. * - * @param { number } value + *

NOTE: + *
If this attribute is not set or is set to an invalid value, the default value is used. + *
If a decimal number is specified, the integer part is used. + *

+ * + * @param { number } value - Default value is Infinity, indicating that there is no upper limit on the number of characters that can be entered. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1707,7 +1927,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the font color is set. * - * @param { ResourceColor } value + * @param { ResourceColor } value - The default value on wearable devices is '#dbffffff'. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1736,6 +1956,13 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the font size is set. * + *

NOTE: + *
If fontSize is of the number type, the unit fp is used. + *
The default font size is 16 fp. + *
The value cannot be a percentage. + *
The default value on wearable devices is 18fp. + *

+ * * @param { Length } value * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1765,7 +1992,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the font style of a font is set. * - * @param { FontStyle } value + * @param { FontStyle } value - Default value is FontStyle.Normal. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1794,14 +2021,33 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the font weight is set. * - * @param { number | FontWeight | string } value + *

NOTE: + *
If the value is too large, the text may be clipped depending on the font. + *
For the number type, the value range is [100, 900], at an interval of 100. + *
The default value is 400. + *
A larger value indicates a heavier font weight. + *
For the string type, only strings that represent a number, for example, "400", + * and the following enumerated values of FontWeight are supported: "bold", "bolder", "lighter", "regular", and "medium". + *

+ * + * @param { number | FontWeight | string } value - Default value is FontWeight.Normal. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 11 */ - fontWeight(value: number | FontWeight | string): TextInputAttribute; + /** + * Called when the font weight is set. + * + * @param { number | FontWeight | ResourceStr } value + * @returns { TextInputAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + fontWeight(value: number | FontWeight | ResourceStr): TextInputAttribute; /** * Called when the font list of text is set. @@ -1823,6 +2069,12 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the font list of text is set. * + *

NOTE: + *
Default font: 'HarmonyOS Sans' + *
The 'HarmonyOS Sans' font and registered custom fonts are supported for applications. + *
Only the 'HarmonyOS Sans' font is supported for widgets. + *

+ * * @param { ResourceStr } value * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1865,6 +2117,16 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the inputFilter of text is set. * + * Anonymous Object Rectification. + * + *

NOTE: + *
Only inputs that comply with the regular expression can be displayed. + *
Other inputs are filtered out. + *
The specified regular expression can match single characters, but not strings. + *
Since API version 11, if inputFilter is set and the entered characters are not null, + * the filtering effect attached to the text box type (specified through the type attribute) does not take effect. + *

+ * * @param { ResourceStr } value * @param { Callback } [error] * @returns { TextInputAttribute } @@ -1905,7 +2167,8 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when using the Clipboard menu. * - * @param { Callback } callback + * Anonymous Object Rectification. + * @param { Callback } callback - Callback used to return the copied text content. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1944,6 +2207,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when using the Clipboard menu. * + * Anonymous Object Rectification. * @param { Callback } callback * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1986,6 +2250,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when using the Clipboard menu. * + * Anonymous Object Rectification. * @param { OnPasteCallback } callback - Executed when a paste operation is performed. * @returns { TextInputAttribute } Returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2015,7 +2280,13 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the copy option is set. * - * @param { CopyOptions } value + *

NOTE: + *
If this attribute is set to CopyOptions.None, the text can only be pasted; + * all other actions, such as copying, cutting, and sharing, are disabled. + *
Dragging is not allowed when CopyOptions.None is set. + *

+ * + * @param { CopyOptions } value - Default value is CopyOptions.LocalDevice. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2044,7 +2315,16 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the password show/hide icon is set. * - * @param { boolean } value + *

NOTE: + *
This API has effect only when the input type is set to Password, + * NEWPASSWORD, or NUMBERPASSWORD mode. It does not work in other modes. + *
When in password mode, there may be inconsistency between the backend state of the text box + * and the frontend application's state management variables. + *
This can cause issues with the icon at the end of the password text box. + *
To avoid such issues, use the onSecurityStateChange callback to sync the states. + *

+ * + * @param { boolean } value - Default value is false. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2073,7 +2353,16 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the text align is set. * - * @param { TextAlign } value + *

NOTE: + *
Available options are TextAlign.Start, TextAlign.Center, and TextAlign.End. + *
To set vertical alignment for the text, use the align attribute. + *
The align attribute alone does not control the horizontal position of the text. + *
In other words, Alignment.TopStart, Alignment.Top, and Alignment.TopEnd produce the same effect, top-aligning the text; + * Alignment.Start, Alignment.Center, and Alignment.End produce the same effect, centered-aligning the text vertically; + * Alignment.BottomStart, Alignment.Bottom, and Alignment.BottomEnd produce the same effect, bottom-aligning the text. + *

+ * + * @param { TextAlign } value - Default value is TextAlign.Start. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2102,7 +2391,11 @@ declare class TextInputAttribute extends CommonMethod { /** * Text input style * - * @param { TextInputStyle | TextContentStyle } value - Text input style + *

NOTE: + *
The inline input style only supports InputType.Normal. + *

+ * + * @param { TextInputStyle | TextContentStyle } value - Text input style.Default value is TextInputStyle.Default. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2144,6 +2437,10 @@ declare class TextInputAttribute extends CommonMethod { /** * Define the text selected background color of the text input. * + *

NOTE: + *
If the opacity is not set, a 20% opacity will be used. + *

+ * * @param { ResourceColor } value * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2185,8 +2482,13 @@ declare class TextInputAttribute extends CommonMethod { */ /** * Sets whether request keyboard or not when on focus. + * Sets whether to enable the input method when the TextInput component obtains focus in a way other than clicking. * - * @param { boolean } value + *

NOTE: + *
Since API version 10, the TextInput component brings up the keyboard by default when it obtains focus. + *

+ * + * @param { boolean } value - Default value is true. * @returns { TextInputAttribute } Returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2206,6 +2508,12 @@ declare class TextInputAttribute extends CommonMethod { /** * Define the password icon of the text input. * + *

NOTE: + *
Images in JPG, PNG, BMP, HEIC, and WEBP formats are supported. + *
By default, the system-provided icon is used. + *
The icon size is fixed at 24 vp (or 28 vp on wearable devices), regardless of the source image size. + *

+ * * @param { PasswordIcon } value * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2236,6 +2544,14 @@ declare class TextInputAttribute extends CommonMethod { /** * Define the show error of the text input. * + *

NOTE: + *
On wearable devices, the error message is displayed at a font size of 13 fp and center-aligned. + *
If the data type is ResourceStr and the input content does not comply with specifications, the error message is displayed. + *
If the error message does not fit in one line, an ellipsis (…) is displayed to represent clipped text. + *
If the data type is undefined, no error message is displayed. + *
By default, no error message is displayed. + *

+ * * @param { ResourceStr | undefined } [value] * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2256,6 +2572,10 @@ declare class TextInputAttribute extends CommonMethod { /** * Define the show unit of the text input. * + *

NOTE: + *
This attribute effective only when showUnderline is set to true. + *

+ * * @param { CustomBuilder } value * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2276,7 +2596,12 @@ declare class TextInputAttribute extends CommonMethod { /** * Define the show underline of the text input. * - * @param { boolean } value + *

NOTE: + *
By default, the underline comes in the color of '#33182431', thickness of 1 px, and text box size of 48 vp. + *
The underline is only available for the InputType.Normal type. + *

+ * + * @param { boolean } value - Default value is false. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2288,6 +2613,13 @@ declare class TextInputAttribute extends CommonMethod { /** * Define the underline color of the text input. * + *

NOTE: + *
The underline color changes with the underline mode. + *
If the underline color is only set for the normal state, you can directly enter a value of the ResourceColor type. + *
If the value specified is undefined, null, or invalid, all underlines are restored to the default value. + *
Default value: underline color configured for the theme, which is #33182431 by default. + *

+ * * @param { ResourceColor | UnderlineColor | undefined } value * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2309,7 +2641,18 @@ declare class TextInputAttribute extends CommonMethod { /** * Controls whether the selection menu pops up. * - * @param { boolean } value + *

NOTE: + *
true: + *
The system text selection menu does not appear under the following circumstances: + * clicking the text box cursor, long-pressing the text box, double-tapping the text box, + * triple-tapping the text box, or right-clicking the text box. + *
false: + *
The system text selection menu appears under the following circumstances: + * clicking the text box cursor, long-pressing the text box, double-tapping the text box, + * triple-tapping the text box, or right-clicking the text box. + *

+ * + * @param { boolean } value - Default value is false. * @returns { TextInputAttribute } returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2329,7 +2672,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Define bar state of the text input. * - * @param { BarState } value + * @param { BarState } value - Default value is BarState.Auto. * @returns { TextInputAttribute } returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -2347,8 +2690,9 @@ declare class TextInputAttribute extends CommonMethod { */ /** * Define max lines of the text input. + * Value range: (0, +∞) * - * @param { number } value + * @param { number } value - Default value is 3. * @returns { TextInputAttribute } returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2360,7 +2704,14 @@ declare class TextInputAttribute extends CommonMethod { /** * Set the text inline style word break type. * - * @param { WordBreak } value - The word break type. + *

NOTE: + *
This attribute is effective for the inline input style, + * but does not apply to the placeholder text. + *
The component does not support the clip attribute. + *
Therefore, setting this attribute does not affect text clipping. + *

+ * + * @param { WordBreak } value - The word break type.Default value is WordBreak.BREAK_WORD. * @returns { TextInputAttribute } returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2372,7 +2723,13 @@ declare class TextInputAttribute extends CommonMethod { /** * Set the text line break strategy type. * - * @param { LineBreakStrategy } strategy - The text line break strategy type. + *

NOTE: + *
This attribute takes effect when wordBreak is not set to breakAll. + *
Hyphens are not supported. + *
This attribute does not take effect for the non-inline input style. + *

+ * + * @param { LineBreakStrategy } strategy - The text line break strategy type.Default value is LineBreakStrategy.GREEDY. * @returns { TextInputAttribute } The attribute of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2403,6 +2760,20 @@ declare class TextInputAttribute extends CommonMethod { /** * Define custom keyboard of the text input. * + *

NOTE: + *
When a custom keyboard is set, activating the text box opens the specified custom component, + * instead of the system input method. + *
The custom keyboard's height can be set through the height attribute of the custom component's root node, + * and its width is fixed at the default value. + *
The custom keyboard is presented by overlaying the original screen, + * which is not compressed or lifted if avoid mode is not enabled or avoidance is not needed for the text box. + *
The custom keyboard cannot obtain the focus, but it blocks gesture events. + *
By default, the custom keyboard is closed when the input component loses the focus. + *
You can also use the TextInputController.stopEditing API to close the keyboard. + *
When a custom keyboard is set, the text box does not support camera input, even when the device supports. + *
When setting a custom keyboard, you can bind the onKeyPrelme event to prevent input from the physical keyboard. + *

+ * * @param { CustomBuilder } value - Set up a custom keyboard of TextInput * @param { KeyboardOptions } [options] - Indicates the custom keyboard options of TextInput * @returns { TextInputAttribute } returns the instance of the TextInputAttribute. @@ -2416,6 +2787,21 @@ declare class TextInputAttribute extends CommonMethod { /** * Show the counter when the number of characters entered exceeds the threshold through InputCounterOptions. * + *

NOTE: + *
options can be set only when value is set to true, in which case a character counter is displayed below the text box. + *
This attribute must be used together with maxLength. + *
The character counter is displayed in this format: Number of characters entered/Character limit. + *
It is visible when the number of characters entered is greater than the character limit multiplied by the threshold percentage value. + *
If options is not set, the text box border and character counter subscript turn red + * when the number of characters entered exceeds the limit. + *
If value is set to true and options is set, the text box border and character counter subscript turn red + * and the text box shakes when the number of characters entered reaches the limit, + * provided that the value of thresholdPercentage is valid. + *
If highlightBorder is set to false, the text box border does not turn red. + *
By default, highlightBorder is set to true. + *
The character counter is not displayed for text boxes in inline or password input style. + *

+ * * @param { boolean } value - Set showcounter of the text input. * @param { InputCounterOptions } options - Set the percentage of counter. * @returns { TextInputAttribute } @@ -2448,7 +2834,14 @@ declare class TextInputAttribute extends CommonMethod { /** * Set the cancel button style. * - * @param { CancelButtonOptions } options - Indicates the style of the cancel button. + * Anonymous Object Rectification. + * + *

NOTE: + *
This attribute is not available for the inline input style. + *
The default value is 28fp on wearable devices. + *

+ * + * @param { CancelButtonOptions } options - Indicates the style of the cancel button.Default value is { style: CancelButtonStyle.INPUT }. * @returns { TextInputAttribute } Returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2460,7 +2853,11 @@ declare class TextInputAttribute extends CommonMethod { /** * Set the cancel button style * - * @param { CancelButtonSymbolOptions } symbolOptions - indicates the style of the cancel button. + *

NOTE: + *
This attribute is not available for the inline input style. + *

+ * + * @param { CancelButtonSymbolOptions } symbolOptions - indicates the style of the cancel button.Default value is { style: CancelButtonStyle.INPUT }. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -2480,7 +2877,11 @@ declare class TextInputAttribute extends CommonMethod { /** * Sets selection when on focus. * - * @param { boolean } value - Sets selection or not. + *

NOTE: + *
This attribute is not available for the inline input style. + *

+ * + * @param { boolean } value - Sets selection or not.Default value is false. * @returns { TextInputAttribute } returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2492,7 +2893,15 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the minimum font size of the font is set. * - * @param { number | string | Resource } value + *

NOTE: + *
For the string type, numeric string values with optional units, + * for example, "10" or "10fp", are supported. + *
For the setting to take effect, this attribute must be used together with maxFontSize + * and maxLines (when the component is in editing state in the inline input style), or layout constraint settings. + *
When the adaptive font size is used, the fontSize settings do not take effect. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2504,7 +2913,15 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the maximum font size of the font is set. * - * @param { number | string | Resource } value + *

NOTE: + *
For the string type, numeric string values with optional units, + * for example, "10" or "10fp", are supported. + *
For the setting to take effect, this attribute must be used together with minFontSize + * and maxLines (when the component is in editing state in the inline input style), or layout constraint settings. + *
When the adaptive font size is used, the fontSize settings do not take effect. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2522,6 +2939,16 @@ declare class TextInputAttribute extends CommonMethod { * @atomicservice * @since 18 */ + /** + * Called when the minimum font scale of the font is set. + * + * @param { Optional } scale + * @returns { TextInputAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ minFontScale(scale: Optional): TextInputAttribute; /** @@ -2533,12 +2960,40 @@ declare class TextInputAttribute extends CommonMethod { * @atomicservice * @since 18 */ + /** + * Called when the maximum font scale of the font is set. + * + * @param { Optional } scale + * @returns { TextInputAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ maxFontScale(scale: Optional): TextInputAttribute; /** * Called when the height adaptive policy is set. * - * @param { TextHeightAdaptivePolicy } value - The height adaptive policy. + *

NOTE: + *

    + *
  • When this attribute is set to TextHeightAdaptivePolicy.MAX_LINES_FIRST, + * the maxLines attribute takes precedence for adjusting the text height. + *
    If the maxLines setting results in a layout beyond the layout constraints, + * the text will shrink to a font size between minFontSize and maxFontSize to allow for more content to be shown.
  • + *
  • If this attribute is set to TextHeightAdaptivePolicy.MIN_FONT_SIZE_FIRST, + * the minFontSize attribute takes precedence for adjusting the text height. + *
    If the text can fit in one line with the minFontSize setting, + * the text will enlarge to the largest possible font size between minFontSize and maxFontSize.
  • + *
  • TextHeightAdaptivePolicy.LAYOUT_CONSTRAINT_FIRST produces the same effect as TextHeightAdaptivePolicy.MIN_FONT_SIZE_FIRST.
  • + *
+ *
When the component is in the non-inline input style, the three values of TextHeightAdaptivePolicy have the same effect, + * that is, the text will shrink to a font size between minFontSize and maxFontSize to allow for more content to be shown. + *
If the text box is in inline input style, + * the font size in the editing state is different from that in the non-editing state. + *

+ * + * @param { TextHeightAdaptivePolicy } value - The height adaptive policy.Default value is TextHeightAdaptivePolicy.MAX_LINES_FIRST. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2558,7 +3013,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Sets whether enable auto fill or not. * - * @param { boolean } value - Indicates the flag whether autofill is enabled. + * @param { boolean } value - Indicates the flag whether autofill is enabled.Default value is rue.True: enable, false: disable. * @returns { TextInputAttribute } Returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -2569,7 +3024,11 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the text decoration of the text is set. * - * @param { TextDecorationOptions } value + *

NOTE: + *
This attribute does not take effect for the password input mode. + *

+ * + * @param { TextDecorationOptions } value - Default value is { type: TextDecorationType.None, color: Color.Black, style: TextDecorationStyle.SOLID }. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2581,7 +3040,16 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the distance between text fonts is set. * - * @param { number | string | Resource } value + *

NOTE: + *
If the value specified is a percentage or 0, the default value is used. + *
For the string type, numeric string values with optional units, + * for example, "10" or "10fp", are supported. + *
If the value specified is a negative value, the text is compressed. + *
A negative value too small may result in the text being compressed to 0 + * and no content being displayed. + *

+ * + * @param { number | string | Resource } value - The unit is fp. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2593,6 +3061,12 @@ declare class TextInputAttribute extends CommonMethod { /** * Called when the line height of the font is set. * + *

NOTE: + *
If the value is less than or equal to 0, the line height is not limited and the font size is adaptive. + *
If the value is of the number type, the unit fp is used. + *
For the string type, numeric string values with optional units, for example, "10" or "10fp", are supported. + *

+ * * @param { number | string | Resource } value * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2613,6 +3087,10 @@ declare class TextInputAttribute extends CommonMethod { /** * Define the password rules of the text input. * + *

NOTE: + *
When autofill is used, these rules are transparently transmitted to Password Vault for generating a new password. + *

+ * * @param { string } value - Indicates the password rules. * @returns { TextInputAttribute } Returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2624,6 +3102,11 @@ declare class TextInputAttribute extends CommonMethod { /** * Set font feature. * + *

NOTE: + *
This attribute is not available when type is set to an enum value that indicates the password input mode, + * such as Password, NEW_PASSWORD, or NUMBER_PASSWORD. + *

+ * * @param { string } value - The fontFeature. * normal | , * where = [ | on | off ], like: "ss01" 0 @@ -2640,7 +3123,16 @@ declare class TextInputAttribute extends CommonMethod { /** * Define the password visible mode of the text input. * - * @param { boolean } visible - Indicates the password visible mode. + *

NOTE: + *
This API has effect only when the input type is set to Password, NEWPASSWORD, or NUMBERPASSWORD mode. + *
It does not work in other modes. + *
When in password mode, there may be inconsistency between the backend state of the text box + * and the frontend application's state management variables. + *
This can cause issues with the icon at the end of the password text box. + *
To avoid such issues, use the onSecurityStateChange callback to sync the states. + *

+ * + * @param { boolean } visible - Indicates the password visible mode. Default value is false. * @returns { TextInputAttribute } Returns the instance of the TextInputAttribute. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2664,6 +3156,12 @@ declare class TextInputAttribute extends CommonMethod { /** * Get text value information when about to input. * + *

NOTE: + *
It returns true if the text is inserted; returns false otherwise. + *
This callback is not triggered for pre-edit or candidate word operations. + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content is about to insert. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2676,6 +3174,10 @@ declare class TextInputAttribute extends CommonMethod { /** * Get text value information when completed input. * + *

NOTE: + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content has been inserted. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2688,6 +3190,12 @@ declare class TextInputAttribute extends CommonMethod { /** * Get text value information when about to delete. * + *

NOTE: + *
It returns true if the text is deleted; returns false otherwise. + *
This callback is not called for text preview. + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content is about to delete. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2700,6 +3208,10 @@ declare class TextInputAttribute extends CommonMethod { /** * Get text value information when the deletion has been completed * + *

NOTE: + *
It is available only for system input methods. + *

+ * * @param { Callback } callback - The triggered function when text content has been deleted. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -2709,8 +3221,22 @@ declare class TextInputAttribute extends CommonMethod { */ onDidDelete(callback: Callback): TextInputAttribute; + /** + * Called before the text input component attach the InputMethod. + * + * @param { Callback } callback - The triggered function before attach the InputMethod. + * @returns { TextInputAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onWillAttachIME(callback: Callback): TextInputAttribute; + /** * Set the custom text menu. + * Sets the extended options of the custom context menu on selection, + * including the text content, icon, and callback. * * @param { EditMenuOptions } editMenu - Customize text menu options. * @returns { TextInputAttribute } @@ -2724,7 +3250,12 @@ declare class TextInputAttribute extends CommonMethod { /** * Define the preview text mode of the text input. * - * @param { boolean } enable - Indicates the preview text mode. + *

NOTE: + *
Preview text is in a temporary state and does not support text interception. + *
As such, it does not trigger onWillInsert, onDidInsert, onWillDelete, or onDidDelete callbacks. + *

+ * + * @param { boolean } enable - Indicates the preview text mode.Default value is true. * @returns { TextInputAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2772,7 +3303,7 @@ declare class TextInputAttribute extends CommonMethod { /** * Set the ellipsis mode. * - * @param { EllipsisMode } mode - The ellipsis mode. + * @param { Optional } mode - The ellipsis mode. * @returns { TextInputAttribute } The attribute of TextInput. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2815,6 +3346,53 @@ declare class TextInputAttribute extends CommonMethod { */ keyboardAppearance(appearance: Optional): TextInputAttribute; + + /** + * Set the stroke width. + * + * @param { Optional } width - indicates the stroke width. + * @returns { TextInputAttribute } returns the instance of the TextInputAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + strokeWidth(width: Optional): TextInputAttribute; + + /** + * Set the stroke color. + * + * @param { Optional } color - indicates the stroke color. + * @returns { TextInputAttribute } returns the instance of the TextInputAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + strokeColor(color: Optional): TextInputAttribute; + + /** + * Sets whether enable auto fill animation effect or not. + * + * @param { Optional } enabled - Indicates the flag whether auto fill animation effect is enabled. + * @returns { TextInputAttribute } Returns the instance of the TextInputAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + enableAutoFillAnimation(enabled: Optional): TextInputAttribute; + + /** + * Whether to enable automatic spacing between Chinese and Latin characters. + * + * @param { Optional } enabled - The default value is false, indicates the flag whether to enable automatic spacing. + * @returns { TextInputAttribute } returns the instance of the TextInputAttribute. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + enableAutoSpacing(enabled: Optional): TextInputAttribute; } /** diff --git a/api/@internal/component/ets/text_picker.d.ts b/api/@internal/component/ets/text_picker.d.ts index 2d3b976c8b54296a0067ad8d057c7674227d021f..7ff3c71a6d42a4caba14433d049db9433b218d9e 100644 --- a/api/@internal/component/ets/text_picker.d.ts +++ b/api/@internal/component/ets/text_picker.d.ts @@ -37,16 +37,18 @@ */ declare interface TextPickerRangeContent { /** - * Specifies the icon content. - * + * Image resource. + * If the value is a string, such as **"/common/hello.png"**, it represents the path to the image. + * * @type { string | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Specifies the icon content. - * + * Image resource. + * If the value is a string, such as **"/common/hello.png"**, it represents the path to the image. + * * @type { string | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -56,17 +58,27 @@ declare interface TextPickerRangeContent { icon: string | Resource; /** - * Specifies the text content. + * Text information. * + *

NOTE: + *
If the text length exceeds the column width, the text will be truncated. + *

+ * * @type { ?(string | Resource) } + * @default "" * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Specifies the text content. + * Text information. + * + *

NOTE: + *
If the text length exceeds the column width, the text will be truncated. + *

* * @type { ?(string | Resource) } + * @default "" * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -93,14 +105,22 @@ declare interface TextPickerRangeContent { */ declare interface TextCascadePickerRangeContent { /** - * Specifies the text content. + * Text information. * + *

NOTE: + * If the text length exceeds the column width, the text will be truncated. + *

+ * * @type { string | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 10 */ /** - * Specifies the text content. + * Text information. + * + *

NOTE: + * If the text length exceeds the column width, the text will be truncated. + *

* * @type { string | Resource } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -111,14 +131,14 @@ declare interface TextCascadePickerRangeContent { text: string | Resource; /** - * Defines the text cascade picker children. + * Linkage data. * * @type { ?TextCascadePickerRangeContent[] } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 10 */ /** - * Defines the text cascade picker children. + * Linkage data. * * @type { ?TextCascadePickerRangeContent[] } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -155,14 +175,14 @@ declare interface TextCascadePickerRangeContent { */ declare interface TextPickerOptions { /** - * Specifies the range of the text selector. + * Data selection range of the picker. * * @type {string[] | Resource} * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Specifies the range of the selector. + * Data selection range of the picker. * Support the display of pictures, text and pictures plus text, or multi column plain text. * * @type {string[] | string[][] | Resource | TextPickerRangeContent[] | TextCascadePickerRangeContent[]} @@ -171,7 +191,7 @@ declare interface TextPickerOptions { * @since 10 */ /** - * Specifies the range of the selector. + * Data selection range of the picker. * Support the display of pictures, text and pictures plus text, or multi column plain text. * * @type {string[] | string[][] | Resource | TextPickerRangeContent[] | TextCascadePickerRangeContent[]} @@ -183,15 +203,27 @@ declare interface TextPickerOptions { range: string[] | string[][] | Resource | TextPickerRangeContent[] | TextCascadePickerRangeContent[]; /** - * Value of the current selection. + * Value of the default item in the range. + * The priority of this parameter is lower than that of selected. + * + *

NOTE: + * This parameter works only when the picker contains text only. + *

* * @type { ?string } + * @default value of the first item * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Value of the current selection. - * Only valid when only text is displayed. + * Value of the default item in the range. + * The priority of this parameter is lower than that of selected. + * For a single-column picker, use a value of the string type. + * For a multi-column (linked) picker, use a value of the string[] type. + * + *

NOTE: + *
This parameter works only when the picker contains text only. + *

* * @type { ?(string | string[]) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -199,36 +231,63 @@ declare interface TextPickerOptions { * @since 10 */ /** - * Value of the current selection. - * Only valid when only text is displayed. + * Value of the default item in the range. + * The priority of this parameter is lower than that of selected. + * For a single-column picker, use a value of the string type. + * For a multi-column (linked) picker, use a value of the string[] type. + * + *

NOTE: + * This parameter works only when the picker contains text only. + *

* * @type { ?(string | string[]) } + * @default value of the first item * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 11 */ - value?: string | string[]; + /** + * Value of the current selection. + * Only valid when only text is displayed. + * + * @type { ?(ResourceStr | ResourceStr[]) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + value?: ResourceStr | ResourceStr[]; /** - * Current selected subscript. + * Index of the default selected item in the array. + * The index is zero-based. * * @type { ?number } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Current selected subscript. + * Index of the default selected item in the array. + * The index is zero-based. + * For a single-column picker, use a value of the number type. + * For a multi-column (linked) picker, use a value of the number[]. * * @type { ?(number | number[]) } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Current selected subscript. - * + * Index of the default selected item in the array. + * The index is zero-based. + * For a single-column picker, use a value of the number type. + * For a multi-column (linked) picker, use a value of the number[]. + * * @type { ?(number | number[]) } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -237,7 +296,11 @@ declare interface TextPickerOptions { selected?: number | number[]; /** - * Defines the column width of the text picker. + * Width of each column in the picker. + * + *

NOTE: + *
If the text length exceeds the column width, the text will be truncated. + *

* * @type { ?LengthMetrics[] } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -314,9 +377,16 @@ interface TextPickerInterface { */ declare interface DividerOptions { /** - * The strokeWidth of Divider. + * Stroke width of the divider. + * The unit is vp by default. You can also specify it as px. The percentage type is not supported. * + *

NOTE: + *
If the value is less than 0, the default value is used. + *
The maximum value allowed is half the height of the column. + *

+ * * @type { ?Dimension } + * @default 2.0px * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -325,9 +395,10 @@ declare interface DividerOptions { strokeWidth?: Dimension; /** - * The color of Divider. + * Color of the divider. * * @type { ?ResourceColor } + * @default "#33000000" * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -336,9 +407,15 @@ declare interface DividerOptions { color?: ResourceColor; /** - * The startMargin of Divider. + * Distance between the divider and the start edge of the picker. + * The unit is vp by default. You can also specify it as px. The percentage type is not supported. + * + *

NOTE: + * Values less than 0 are invalid. The maximum value allowed is the width of the column. + *

* * @type { ?Dimension } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -347,9 +424,15 @@ declare interface DividerOptions { startMargin?: Dimension; /** - * The endMargin of Divider. + * Distance between the divider and the end edge of the picker. + * The unit is vp by default. You can also specify it as px. The percentage type is not supported. + * + *

NOTE: + *
Values less than 0 are invalid. The maximum value allowed is the width of the column. + *

* * @type { ?Dimension } + * @default 0 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -359,7 +442,7 @@ declare interface DividerOptions { } /** - * Provide an interface for the text style of the text picker. + * Defines the text style options. * * @extends PickerTextStyle * @interface TextPickerTextStyle @@ -370,8 +453,12 @@ declare interface DividerOptions { */ declare interface TextPickerTextStyle extends PickerTextStyle { /** - * Defines the minimum font size of the text. - * + * Minimum font size, used in conjunction with maxFontSize. + * When minFontSize and maxFontSize are set, + * the size setting in font is ineffective. + * The default maximum number of lines is 1, + * and the default height adaptation mode is MIN_FONT_SIZE_FIRST. + * * @type { ?(number | string | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -381,7 +468,7 @@ declare interface TextPickerTextStyle extends PickerTextStyle { minFontSize?: number | string | Resource; /** - * Defines the maximum font size of the text. + * Maximum font size. * * @type { ?(number | string | Resource) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -392,7 +479,11 @@ declare interface TextPickerTextStyle extends PickerTextStyle { maxFontSize?: number | string | Resource; /** - * Defines the overflow mode of the text. + * Display mode when the text is too long. + * + *

NOTE: + * Ineffective when set to MARQUEE. + *

* * @type { ?TextOverflow } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -403,6 +494,39 @@ declare interface TextPickerTextStyle extends PickerTextStyle { overflow?: TextOverflow; } +/** + * Provide an interface to set the background style of selected items. + * + * @interface PickerBackgroundStyle + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare interface PickerBackgroundStyle { + /** + * Define the background color of selected item. + * + * @type { ?ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + color?: ResourceColor; + + /** + * Defines the border radius of selected items. + * + * @type { ?(LengthMetrics | BorderRadiuses | LocalizedBorderRadiuses) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + borderRadius?: LengthMetrics | BorderRadiuses | LocalizedBorderRadiuses; +} + /** * Callback of the listened scroll stop event. * @@ -468,7 +592,7 @@ declare type TextPickerEnterSelectedAreaCallback = (value: string | string[], in */ declare class TextPickerAttribute extends CommonMethod { /** - * Called when the default height of the selected element is set. + * Sets the height of each item in the picker. * * @param { number | string } value * @returns { TextPickerAttribute } @@ -476,7 +600,7 @@ declare class TextPickerAttribute extends CommonMethod { * @since 8 */ /** - * Called when the default height of the selected element is set. + * Sets the height of each item in the picker. * * @param { number | string } value * @returns { TextPickerAttribute } @@ -485,10 +609,13 @@ declare class TextPickerAttribute extends CommonMethod { * @since 10 */ /** - * Called when the default height of the selected element is set. + * Sets the height of each item in the picker. * - * @param { number | string } value + * @param { number | string } value - Height of each item in the picker. + *
For the number type, the value range is [0, +∞]. For the string type, + *
only numeric string values, for example, "56", are supported. * @returns { TextPickerAttribute } + * @default 56 vp (selected) and 36 vp (unselected). * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -497,9 +624,12 @@ declare class TextPickerAttribute extends CommonMethod { defaultPickerItemHeight(value: number | string): TextPickerAttribute; /** - * Called when the default height of the selected element is set. + * Sets the height of each item in the picker. * - * @param { Optional } height + * @param { Optional } height - Height of each item in the picker. + *
For the number type, the value range is [0, +∞]. + *
For the string type, only numeric string values, for example, "56", are supported. + * @default 56 vp (selected) and 36 vp (unselected). * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -509,17 +639,19 @@ declare class TextPickerAttribute extends CommonMethod { defaultPickerItemHeight(height: Optional): TextPickerAttribute; /** - * Can scroll loop if true is set, on the contrary it can not. + * Sets whether scrolling is loopable. * - * @param { boolean } value + * @param { boolean } value - Whether scrolling is loopable. true: loopable; false: not loopable. + * @default true * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 10 */ /** - * Can scroll loop if true is set, on the contrary it can not. + * Sets whether scrolling is loopable. * - * @param { boolean } value + * @param { boolean } value - Whether scrolling is loopable. true: loopable; false: not loopable. + * @default true * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -530,8 +662,10 @@ declare class TextPickerAttribute extends CommonMethod { /** * Can scroll loop if true is set, on the contrary it can not. + * this API supports the undefined type for the isLoop parameter. * - * @param { Optional } isLoop + * @param { Optional } isLoop - Whether scrolling is loopable. true: loopable; false: not loopable. + * @default true * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -541,18 +675,18 @@ declare class TextPickerAttribute extends CommonMethod { canLoop(isLoop: Optional): TextPickerAttribute; /** - * Sets the text style of disappearing items + * Sets the font color, font size, and font weight for the top and bottom items. * - * @param { PickerTextStyle } value - indicates the text style of disappearing items. + * @param { PickerTextStyle } value - Font color, font size, and font weight of the top and bottom items. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets the text style of disappearing items + * Sets the font color, font size, and font weight for the top and bottom items. * - * @param { PickerTextStyle } value - indicates the text style of disappearing items. + * @param { PickerTextStyle } value - Font color, font size, and font weight of the top and bottom items. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -562,9 +696,10 @@ declare class TextPickerAttribute extends CommonMethod { disappearTextStyle(value: PickerTextStyle): TextPickerAttribute; /** - * Sets the text style of disappearing items + * Sets the font color, font size, and font weight for the top and bottom items. + * This API supports the undefined type for the style parameter. * - * @param { Optional } style - indicates the text style of disappearing items. + * @param { Optional } style - Font color, font size, and font weight of the top and bottom items. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -574,16 +709,17 @@ declare class TextPickerAttribute extends CommonMethod { disappearTextStyle(style: Optional): TextPickerAttribute; /** - * Sets the text style of normal items + * Sets the font color, font size, and font weight for all items except the top, bottom, and selected items. * - * @param { PickerTextStyle } value - indicates the text style of normal items. + * @param { PickerTextStyle } value - Font color, font size, and font weight of all items except the top, + *
bottom, and selected items. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets the text style of normal items + * Sets the font color, font size, and font weight for all items except the top, bottom, and selected items. * * @param { PickerTextStyle } value - indicates the text style of normal items. * @returns { TextPickerAttribute } @@ -595,9 +731,11 @@ declare class TextPickerAttribute extends CommonMethod { textStyle(value: PickerTextStyle): TextPickerAttribute; /** - * Sets the text style of normal items + * Sets the font color, font size, and font weight for all items except the top, bottom, and selected items. + * This API supports the undefined type for the style parameter. * - * @param { Optional } style - indicates the text style of normal items. + * @param { Optional } style - Font color, font size, and font weight of all + *
items except the top, bottom, and selected items. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -607,18 +745,18 @@ declare class TextPickerAttribute extends CommonMethod { textStyle(style: Optional): TextPickerAttribute; /** - * Sets the text style of selected items + * Sets the font color, font size, and font weight for the selected item. * - * @param { PickerTextStyle } value - indicates the text style of selected items. + * @param { PickerTextStyle } value - Font color, font size, and font weight of the selected item.. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Sets the text style of selected items + * Sets the font color, font size, and font weight for the selected item. * - * @param { PickerTextStyle } value - indicates the text style of selected items. + * @param { PickerTextStyle } value - Font color, font size, and font weight of the selected item. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -628,9 +766,10 @@ declare class TextPickerAttribute extends CommonMethod { selectedTextStyle(value: PickerTextStyle): TextPickerAttribute; /** - * Sets the text style of selected items + * Sets the font color, font size, and font weight for the selected item. + * This API supports the undefined type for the style parameter. * - * @param { Optional } style - indicates the text style of selected items. + * @param { Optional } style - Font color, font size, and font weight of the selected item. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -640,9 +779,10 @@ declare class TextPickerAttribute extends CommonMethod { selectedTextStyle(style: Optional): TextPickerAttribute; /** - * Defines whether to disable the text style animation. + * Sets whether to enable the text style change animation during the scrolling process. * * @param { boolean } disabled + * @default false * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -652,7 +792,7 @@ declare class TextPickerAttribute extends CommonMethod { disableTextStyleAnimation(disabled: boolean): TextPickerAttribute; /** - * Defines to set the default text style for options. + * Sets the style of the text items when the text style change animation during the scrolling process is disabled. * * @param { TextPickerTextStyle } style * @returns { TextPickerAttribute } @@ -664,7 +804,7 @@ declare class TextPickerAttribute extends CommonMethod { defaultTextStyle(style: TextPickerTextStyle): TextPickerAttribute; /** - * Called when the pop-up value is returned. + * Triggered when the OK button in the dialog box is clicked. * * @param { function } callback * @returns { TextPickerAttribute } @@ -675,7 +815,7 @@ declare class TextPickerAttribute extends CommonMethod { onAccept(callback: (value: string, index: number) => void): TextPickerAttribute; /** - * Called when the Cancel button in the pop-up window is clicked. + * Triggered when the Cancel button in the dialog box is clicked. * * @param { function } callback * @returns { TextPickerAttribute } @@ -686,7 +826,7 @@ declare class TextPickerAttribute extends CommonMethod { onCancel(callback: () => void): TextPickerAttribute; /** - * Called when the OK button in the pop-up window is clicked. + * Triggered when an item in the picker is selected. * * @param { function } callback - the callback of onChange. * @returns { TextPickerAttribute } @@ -694,8 +834,10 @@ declare class TextPickerAttribute extends CommonMethod { * @since 8 */ /** - * This event is triggered when a TextPicker item is selected. - * Only valid when only text is displayed. When picture or picture plus text is displayed, the value is "". + * Triggered when an item in the picker is selected. + * When the picker contains text only or both text and imagery, + * value indicates the text of the selected item. + * When the picker contains imagery only, value is empty. * * @param { function } callback - the callback of onChange. * @returns { TextPickerAttribute } @@ -704,8 +846,10 @@ declare class TextPickerAttribute extends CommonMethod { * @since 10 */ /** - * This event is triggered when a TextPicker item is selected. - * Only valid when only text is displayed. When picture or picture plus text is displayed, the value is "". + * Triggered when an item in the picker is selected. + * When the picker contains text only or both text and imagery, + * value indicates the text of the selected item. + * When the picker contains imagery only, value is empty. * * @param { function } callback - the callback of onChange. * @returns { TextPickerAttribute } @@ -717,8 +861,8 @@ declare class TextPickerAttribute extends CommonMethod { onChange(callback: (value: string | string[], index: number | number[]) => void): TextPickerAttribute; /** - * This event is triggered when a TextPicker item is selected. - * Only valid when only text is displayed. When picture or picture plus text is displayed, the value is "". + * Triggered when the text picker snaps to the selected item. + * Compared to onChange, this API supports the undefined type for the callback parameter. * * @param { Optional } callback - the callback of onChange. * @returns { TextPickerAttribute } @@ -730,10 +874,12 @@ declare class TextPickerAttribute extends CommonMethod { onChange(callback: Optional): TextPickerAttribute; /** - * This event is triggered when a TextPicker item is selected and scrolling has stopped. - * Only valid when only text is displayed. When picture or picture plus text is displayed, the value is "". + * Triggered when the scrolling in the text picker stops. + * If the scrolling is initiated by a gesture, + * this event is triggered when the finger is lifted from the screen and the scrolling stops. * - * @param { TextPickerScrollStopCallback } callback - the callback of onScrollStop. + * @param { TextPickerScrollStopCallback } callback - Triggered when the scrolling + *
in the text picker stops. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -743,10 +889,12 @@ declare class TextPickerAttribute extends CommonMethod { onScrollStop(callback: TextPickerScrollStopCallback): TextPickerAttribute; /** - * This event is triggered when a TextPicker item is selected and scrolling has stopped. - * Only valid when only text is displayed. When picture or picture plus text is displayed, the value is "". + * Triggered when the scrolling in the text picker stops. + * If the scrolling is initiated by a gesture, + * this event is triggered when the finger is lifted from the screen and the scrolling stops. * - * @param { Optional } callback - the callback of onScrollStop. + * @param { Optional } callback - Triggered when the scrolling + *
in the text picker stops. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -756,10 +904,12 @@ declare class TextPickerAttribute extends CommonMethod { onScrollStop(callback: Optional): TextPickerAttribute; /** - * This event is triggered when an item enters the selected area. - * Only valid when only text is displayed. When picture or picture plus text is displayed, the value is "". + * Triggered during the scrolling of the text picker when an item enters the divider area. + * When the picker contains text only or a combination of images and text, + * value indicates the text of the selected item. When the picker contains images only, value is empty. * - * @param { TextPickerEnterSelectedAreaCallback } callback - the callback of onEnterSelectedArea. + * @param { TextPickerEnterSelectedAreaCallback } callback - Triggered during the scrolling of + *
the text picker when an item enters the divider area. * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -769,20 +919,26 @@ declare class TextPickerAttribute extends CommonMethod { onEnterSelectedArea(callback: TextPickerEnterSelectedAreaCallback): TextPickerAttribute; /** - * Set the selected indices. - * The array size is the total number of columns. + * Sets the index of the default selected item in the array. + * Its priority is higher than that of the selected value in options. + * For a single-column picker, use a value of the number type. + * For a multi-column (linked) picker, use a value of the number[] type. * - * @param { number | number[] } value - the selected indices. + * @param { number | number[] } value - Index of the default selected item in the array. + * @default 0 * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * Set the selected indices. - * The array size is the total number of columns. + * Sets the index of the default selected item in the array. + * Its priority is higher than that of the selected value in options. + * For a single-column picker, use a value of the number type. + * For a multi-column (linked) picker, use a value of the number[] type. * - * @param { number | number[] } value - the selected indices. + * @param { number | number[] } value - Index of the default selected item in the array. + * @default 0 * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -792,10 +948,15 @@ declare class TextPickerAttribute extends CommonMethod { selectedIndex(value: number | number[]): TextPickerAttribute; /** - * Set the selected indices. - * The array size is the total number of columns. + * Sets the index of the default selected item in the array. + * Its priority is higher than that of the selected value in options. + * For a single-column picker, use a value of the number type. For a multi-column (linked) picker, + * use a value of the number[] type. Compared to [selectedIndex](#selectedindex10), + * this API supports the undefined type for the index parameter. * - * @param { Optional } index - the selected indices. + * @param { Optional } index - Index of the default selected item in the array. + *
The index is zero-based.
If index is set to undefined, the default value 0 is used. + * @default 0 * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -805,7 +966,7 @@ declare class TextPickerAttribute extends CommonMethod { selectedIndex(index: Optional): TextPickerAttribute; /** - * Set the divider of TextPicker + * Sets the divider style. * * @param { DividerOptions | null } value * @returns { TextPickerAttribute } @@ -817,7 +978,7 @@ declare class TextPickerAttribute extends CommonMethod { divider(value: DividerOptions | null): TextPickerAttribute; /** - * Set the divider of TextPicker + * Sets the divider style. * * @param { Optional } textDivider * @returns { TextPickerAttribute } @@ -829,9 +990,15 @@ declare class TextPickerAttribute extends CommonMethod { divider(textDivider: Optional): TextPickerAttribute; /** - * Called when set the height of gradient + * Sets the height for the fade effect. + * If this attribute is not set, the default fade effect is displayed. * - * @param { Dimension } value - The value the gradient height + *

NOTE: + *
Avoid changing the attribute data during the animation process of this component. + *

+ * + * @param { Dimension } value - Height of the fade effect at the top and bottom edges of the content area. + * @default 36vp * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -841,9 +1008,10 @@ declare class TextPickerAttribute extends CommonMethod { gradientHeight(value: Dimension): TextPickerAttribute; /** - * Enable or disable haptic feedback. + * Specifies whether to enable haptic feedback. * - * @param { Optional } enable - Default value is true, set false to disable haptic feedback. + * @param { Optional } enable - Whether to enable haptic feedback. + * @default true * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -852,9 +1020,17 @@ declare class TextPickerAttribute extends CommonMethod { enableHapticFeedback(enable: Optional): TextPickerAttribute; /** - * Called when set the height of gradient + * Sets the height for the fade effect. + * If this attribute is not set, the default fade effect is displayed. + * this API supports the undefinedtype for the height parameter. * - * @param { Optional } height - The value the gradient height + *

NOTE: + *
Avoid changing the attribute data during the animation process of this component. + *

+ * + * @param { Optional } height - THeight of the fade effect at the top and bottom edges of + *
the content area. + * @default 36vp * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -864,9 +1040,10 @@ declare class TextPickerAttribute extends CommonMethod { gradientHeight(height: Optional): TextPickerAttribute; /** - * If the attribute is set, the crown rotation sensitivity can be changed. + * Sets the sensitivity to the digital crown rotation. * - * @param { Optional } sensitivity + * @param { Optional } sensitivity - Sensitivity to the digital crown rotation. + * @default CrownSensitivity.MEDIUM * @returns { TextPickerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -874,6 +1051,18 @@ declare class TextPickerAttribute extends CommonMethod { * @since 18 */ digitalCrownSensitivity(sensitivity: Optional): TextPickerAttribute; + + /** + * Sets the background style of selected items. + * + * @param { Optional } style - the background style of selected items. + * @returns { TextPickerAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + selectedBackgroundStyle(style: Optional): TextPickerAttribute; } /** @@ -1000,9 +1189,10 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Called when the default height of the selected element is set. + * Height of the picker item. * * @type { ?(number | string) } + * @default 56 vp (selected) and 36 vp (unselected) * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1019,7 +1209,8 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Can scroll loop if true is set, on the contrary it can not. + * Whether to support scroll looping. + * The value true means to support scroll looping, and false means the opposite. * * @type { ?boolean } * @default true @@ -1039,7 +1230,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Text style of disappearing items + * Font color, font size, and font weight of the top and bottom items. * * @type { ?PickerTextStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1058,7 +1249,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Text style of normal items + * Font color, font size, and font weight of all items except the top, bottom, and selected items. * * @type { ?PickerTextStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1071,6 +1262,12 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { /** * Style of accept button. * + *

NOTE: + *
In the acceptButtonStyle and cancelButtonStyle configurations, + *
only one primary field can be set to true at most. + *
If both the primary fields are set to true, neither will take effect. + *

+ * * @type { ?PickerDialogButtonStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1082,6 +1279,12 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { /** * Style of cancel button. * + *

NOTE: + *
In the acceptButtonStyle and cancelButtonStyle configurations, + *
only one primary field can be set to true at most. + *
If both the primary fields are set to true, neither will take effect. + *

+ * * @type { ?PickerDialogButtonStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1099,7 +1302,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Text style of selected items + * Font color, font size, and font weight of the selected item. * * @type { ?PickerTextStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1110,9 +1313,12 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { selectedTextStyle?: PickerTextStyle; /** - * Defines whether to disable the text style animation. + * Sets whether to enable the text style change animation during the scrolling process. + * true: Disable the text style change animation. + * false: Enable the text style change animation. * * @type { ?boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1121,7 +1327,11 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { disableTextStyleAnimation?: boolean; /** - * Defines to set the default text style for options. + * Style of the text items when the text style change animation during the scrolling process is disabled. + * + *

NOTE: + *
It is effective only when disableTextStyleAnimation is true. + *

* * @type { ?TextPickerTextStyle } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1147,7 +1357,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Called when the OK button in the dialog is clicked. + * Callback invoked when the OK button in the dialog box is clicked. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1173,7 +1383,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Called when the Cancel button in the dialog is clicked. + * Callback invoked when the Cancel button in the dialog box is clicked. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1199,7 +1409,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * This event is triggered when a TextPicker text is selected in dialog. + * Callback invoked when the text picker in the dialog box snaps to the selected item. * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1210,7 +1420,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { onChange?: (value: TextPickerResult) => void; /** - * This event is triggered when a TextPicker text is selected and scrolling has stopped in dialog. + * Callback invoked when the scrolling in the text picker of the dialog box stops. * * @type { ?Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1221,7 +1431,19 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { onScrollStop?: Callback; /** - * This event is triggered when an item enters the selected area in dialog. + * Represents the callback triggered during the scrolling of the text picker when an item enters the divider area. + * Compared to the onChange event, this event is triggered earlier, + * specifically when the scroll distance of the current column exceeds half the height of the selected item, + * which indicates that the item has entered the divider area. + * + *

NOTE: + *
In scenarios where the picker contains linked columns, + *
the use of this callback is not recommended. + *
The reason is that it identifies nodes where items enter the divider area during scrolling. + *
However, items that change in response to the scrolling do not themselves scroll. As a result, + *
he callback's return values will only reflect changes for the currently scrolling column, + *
while other non-scrolling columns will remain unchanged. + *

* * @type { ?Callback } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1240,9 +1462,11 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Mask Region of dialog. The size cannot exceed the main window. + * Mask area of the dialog box. + * Events outside the mask area are transparently transmitted, and events within the mask area are not. * * @type { ?Rectangle } + * @default { x: 0, y: 0, width: '100%', height: '100%' } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1259,9 +1483,10 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Defines the dialog alignment of the screen. + * Alignment mode of the dialog box in the vertical direction. * * @type { ?DialogAlignment } + * @default DialogAlignment.Default * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1278,9 +1503,10 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Defines the dialog offset. + * Offset of the dialog box based on the alignment settings. * * @type { ?Offset } + * @default { dx: 0 , dy: 0 } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1298,7 +1524,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 11 */ /** - * Defines the textPickerDialog's background color + * Backplane color of the dialog box. * * @type { ?ResourceColor } * @default Color.Transparent @@ -1319,7 +1545,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 11 */ /** - * Defines the textPickerDialog's background blur Style + * Background blur style of the dialog box. * * @type { ?BlurStyle } * @default BlurStyle.COMPONENT_ULTRA_THICK @@ -1331,29 +1557,39 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { backgroundBlurStyle?: BlurStyle; /** - * Defines the textPickerDialog's background blur style with options + * Options for customizing the background blur style. * * @type { ?BackgroundBlurStyleOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; /** - * Defines the textPickerDialog's background effect with options + * Options for customizing the background effect. * * @type { ?BackgroundEffectOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; /** - * Callback function when the dialog appears. + * Event callback when the dialog box appears. + * + *

NOTE: + *
1. The normal timing sequence is as follows: + * onWillAppear > onDidAppear > (onAccept/onCancel/onChange/onScrollStop) > onWillDisappear > onDidDisappear. + *
2. You can set the callback event for changing the dialog box display effect in onDidAppear. + * The settings take effect next time the dialog box appears. + *
3. If the user closes the dialog box immediately after it appears, + * onWillDisappearis invoked before onDidAppear. + *
4. If the dialog box is closed before its entrance animation is finished, this callback is not invoked. + *

* * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1364,7 +1600,12 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { onDidAppear?: () => void; /** - * Callback function when the dialog disappears. + * Event callback when the dialog box disappears. + * + *

NOTE: + *
The normal timing sequence is as follows: + *
onWillAppear > onDidAppear > (onAccept/onCancel/onChange/onScrollStop) > onWillDisappear > onDidDisappear. + *

* * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1375,19 +1616,34 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { onDidDisappear?: () => void; /** - * Callback function before the dialog openAnimation starts. + * Event callback when the dialog box is about to appear. * + *

NOTE: + *
1. The normal timing sequence is as follows: + *
onWillAppear > onDidAppear > (onAccept/onCancel/onChange/onScrollStop) > onWillDisappear > onDidDisappear. + *
2. You can set the callback event for changing the dialog box display effect in onWillAppear. + *
the settings take effect next time the dialog box appears. + *

+ * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice + * * @since 12 */ onWillAppear?: () => void; /** - * Callback function before the dialog closeAnimation starts. + * Event callback when the dialog box is about to disappear. * + *

NOTE: + *
1. The normal timing sequence is as follows: + * onWillAppear > onDidAppear > (onAccept/onCancel/onChange/onScrollStop) > onWillDisappear > onDidDisappear. + *
2. If the user closes the dialog box immediately after it appears, + * onWillDisappear is invoked before onDidAppear. + *

+ * * @type { ?function } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1397,7 +1653,9 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { onWillDisappear?: () => void; /** - * Defines the dialog's shadow. + * Shadow of the dialog box. + * Default value on 2-in-1 devices: ShadowStyle.OUTER_FLOATING_MD when the dialog box is focused + * and ShadowStyle.OUTER_FLOATING_SM otherwise. * * @type { ?(ShadowOptions | ShadowStyle) } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1408,10 +1666,10 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { shadow?: ShadowOptions | ShadowStyle; /** - * Defines whether to respond to the hover mode. + * Whether to enable the hover mode. * * @type { ?boolean } - * @default false + * @default false - meaning not to enable the hover mode. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1420,7 +1678,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { enableHoverMode?: boolean; /** - * Defines the dialog's display area in hover mode. + * Display area of the dialog box in hover mode. * * @type { ?HoverModeAreaType } * @default HoverModeAreaType.BOTTOM_SCREEN @@ -1432,7 +1690,15 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { hoverModeArea?: HoverModeAreaType; /** - * Enable or disable haptic feedback. + * Whether to enable haptic feedback. + * true (default): Haptic feedback is enabled. + * false: Haptic feedback is disabled. + * + *

NOTE: + *
To enable haptic feedback, you must declare the ohos.permission.VIBRATE permission + *
under requestPermissions in the module.json5 file of the project. + *
"requestPermissions": [{"name": "ohos.permission.VIBRATE"}]. + *

* * @type { ?boolean } * @default true @@ -1441,6 +1707,17 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 18 */ enableHapticFeedback?: boolean; + + /** + * Background style of selected items. + * + * @type { ?PickerBackgroundStyle } + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + selectedBackgroundStyle?: PickerBackgroundStyle; } /** @@ -1457,7 +1734,7 @@ declare interface TextPickerDialogOptions extends TextPickerOptions { * @since 10 */ /** - * Defines TextPickerDialog which uses show method to show TextPicker dialog. + * A text picker dialog box is a dialog box that allows users to select text from the given range. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1481,9 +1758,9 @@ declare class TextPickerDialog { * @since 10 */ /** - * Invoking method display. + * Shows a text picker in the given settings. * - * @param { TextPickerDialogOptions } options + * @param { TextPickerDialogOptions } options - Parameters of the text picker dialog box. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1508,7 +1785,7 @@ declare class TextPickerDialog { * @since 10 */ /** - * Defines TextPicker Component. + * Creates a text picker based on the selection range specified by range. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform diff --git a/api/@internal/component/ets/text_timer.d.ts b/api/@internal/component/ets/text_timer.d.ts index 4f3c4f5dbbd74df4bff0b965d4d2d44b282195e6..561aae84168e89608a2054a3e48df4ca3a357538 100644 --- a/api/@internal/component/ets/text_timer.d.ts +++ b/api/@internal/component/ets/text_timer.d.ts @@ -57,6 +57,7 @@ declare class TextTimerController { */ /** * constructor. + * A constructor used to create a TextTimerController object. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -81,7 +82,7 @@ declare class TextTimerController { * @since 10 */ /** - * Provides a start event for timer. + * Starts the timer. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -106,7 +107,7 @@ declare class TextTimerController { * @since 10 */ /** - * Provides a pause event for timer. + * Pauses the timer. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -131,7 +132,7 @@ declare class TextTimerController { * @since 10 */ /** - * Provides an event to reset timer. + * Resets the timer. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -154,11 +155,17 @@ declare class TextTimerController { */ declare interface TextTimerConfiguration extends CommonConfiguration { /** - * Specifies the timer range. - * In the non-countDown scenario, a negative value indicates that the timer is not limited. - * The unit is millisecond. + * Timer duration, in milliseconds. + * It is effective only when isCountDown is true. + * The maximum value is 86400000 ms (24 hours). + * + *

NOTE: + *
If the value is between 0 and 86,400,000, it is used as the initial countdown time. + *
Otherwise, the default value is used as the initial countdown time. + *

* * @type { number } + * @default 60000 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -167,9 +174,12 @@ declare interface TextTimerConfiguration extends CommonConfigurationNOTE: + *
If the value is between 0 and 86,400,000, it is used as the initial countdown time. + *
Otherwise, the default value is used as the initial countdown time. + *

+ * + * @type { ?number } - Default value: 60000 * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -307,7 +323,7 @@ interface TextTimerOptions { * @since 10 */ /** - * Controller of Texttimer. + * TextTimer controller. * * @type { ?TextTimerController } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -365,7 +381,7 @@ interface TextTimerInterface { * @since 10 */ /** - * Defines the TextTimer constructor. + * A constructor used to create a TextTimerController object. * * @param { TextTimerOptions } options * @returns { TextTimerAttribute } @@ -425,10 +441,14 @@ declare class TextTimerAttribute extends CommonMethod { * @since 10 */ /** - * Set the display time format, for example, now is hh/mm/ss/ms and current: hh-mm-ss-ms. - * The time format string can be hh, mm, ss, or ms. + * Sets the custom format. + * The value must contain at least one of the following keywords: HH, mm, ss, and SS. * - * @param { string } value + *

NOTE: + *
If the specified date format is yy, MM, or dd, the default value is used instead. + *

+ * + * @param { string } value - Custom format.Default value: 'HH:mm:ss.SS' * @returns { TextTimerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -457,7 +477,7 @@ declare class TextTimerAttribute extends CommonMethod { * @since 10 */ /** - * Called when the font color is set. + * Sets the font color. * * @param { ResourceColor } value * @returns { TextTimerAttribute } @@ -488,9 +508,11 @@ declare class TextTimerAttribute extends CommonMethod { * @since 10 */ /** - * Called when the font size is set. + * Sets the font size. * - * @param { Length } value + * @param { Length } value - Font size.The default font size is 16 fp. + *
If fontSize is of the number type, the unit fp is used. + *
The value cannot be a percentage. * @returns { TextTimerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -519,9 +541,9 @@ declare class TextTimerAttribute extends CommonMethod { * @since 10 */ /** - * Called when the fontStyle is set + * Sets the font style. * - * @param { FontStyle } value + * @param { FontStyle } value - Font style.Default value: FontStyle.Normal * @returns { TextTimerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -560,7 +582,25 @@ declare class TextTimerAttribute extends CommonMethod { * @atomicservice * @since 11 */ - fontWeight(value: number | FontWeight | string): TextTimerAttribute; + /** + * Sets the font weight. + * + *

NOTE: + *
If the value is too large, the text may be clipped depending on the font. + *

+ * + * @param { number | FontWeight | ResourceStr } value - Font weight. + *
For the number type, Value range: [100, 900], at an interval of 100.The default value is 400. + *
A larger value indicates a heavier font weight. + *
For the string type, only strings that represent a number. + * @returns { TextTimerAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + fontWeight(value: number | FontWeight | ResourceStr): TextTimerAttribute; /** * Called when the fontFamily is set @@ -581,9 +621,9 @@ declare class TextTimerAttribute extends CommonMethod { * @since 10 */ /** - * Called when the fontFamily is set + * Sets the font family. * - * @param { ResourceStr } value + * @param { ResourceStr } value - Font family. Default font: 'HarmonyOS Sans' * @returns { TextTimerAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -612,7 +652,9 @@ declare class TextTimerAttribute extends CommonMethod { * @since 10 */ /** - * Called when the timer value is returned. + * Triggered when the time text changes. + * This event is not triggered when the screen is locked or the application is running in the background. + * When high-precision formats (such as SSS or SS) are used, the callback interval may vary. * * @param { function } event * @returns { TextTimerAttribute } @@ -634,7 +676,9 @@ declare class TextTimerAttribute extends CommonMethod { * @since 11 */ /** - * Called when the text shadow is set. + * Sets the text shadow. + * It supports input parameters in an array to implement multiple text shadows. + * This API does not work with the fill attribute or coloring strategy. * * @param { ShadowOptions | Array } value - The shadow options. * @returns { TextTimerAttribute } @@ -646,7 +690,7 @@ declare class TextTimerAttribute extends CommonMethod { textShadow(value: ShadowOptions | Array): TextTimerAttribute; /** - * Set the content modifier of texttimer. + * Creates a content modifier. * * @param { ContentModifier } modifier - The content modifier of texttimer. * @returns { TextTimerAttribute } diff --git a/api/@internal/component/ets/time_picker.d.ts b/api/@internal/component/ets/time_picker.d.ts index 535ad84ead136849f576c276ee017acb9e64457f..7e0e922eff63c71e862104e4d556c3e7c69415e7 100644 --- a/api/@internal/component/ets/time_picker.d.ts +++ b/api/@internal/component/ets/time_picker.d.ts @@ -972,7 +972,7 @@ declare interface TimePickerDialogOptions extends TimePickerOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; @@ -983,7 +983,7 @@ declare interface TimePickerDialogOptions extends TimePickerOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; diff --git a/api/@internal/component/ets/toggle.d.ts b/api/@internal/component/ets/toggle.d.ts index b1344ab7c46dcb7bdc939fb532d31c7cd147c235..85c27baa49cae0c6d55796cf581bbe6418b043fa 100644 --- a/api/@internal/component/ets/toggle.d.ts +++ b/api/@internal/component/ets/toggle.d.ts @@ -296,6 +296,17 @@ declare interface ToggleOptions { * @atomicservice * @since 11 */ + /** + * Type of the toggle. + * Anonymous Object Rectification. + * + * @type { ToggleType } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ type: ToggleType; /** @@ -332,6 +343,17 @@ declare interface ToggleOptions { * @atomicservice * @since 11 */ + /** + * Whether the toggle is on. + * Anonymous Object Rectification. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 18 + */ isOn?: boolean } @@ -410,6 +432,7 @@ interface ToggleInterface { */ /** * Set parameters to obtain the toggle. + * Anonymous Object Rectification. * * @param { ToggleOptions } options - toggle options * @returns { ToggleAttribute } diff --git a/api/@internal/component/ets/toolbar.d.ts b/api/@internal/component/ets/toolbar.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..a874af7b589d80ae5586eb531a98ddc72504851a --- /dev/null +++ b/api/@internal/component/ets/toolbar.d.ts @@ -0,0 +1,117 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file Defines toolbar attributes. + * @kit ArkUI + */ + +/** + * Declare the placement of the toolbar item. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ +declare enum ToolBarItemPlacement { + /** + * Place toolbar item at the leading of top bar. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ + TOP_BAR_LEADING = 0, + + /** + * Place toolbar item at the trailing of top bar. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ + TOP_BAR_TRAILING = 1, +} + +/** + * ToolBarItem constructor options. + * + * @interface ToolBarItemOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ +interface ToolBarItemOptions { + /** + * Vertical layout element spacing. + * + * @type { ?ToolBarItemPlacement } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ + placement?: ToolBarItemPlacement; +} + +/** + * Defines the ToolBarItem Component. + * + * @interface ToolBarItemInterface + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ +interface ToolBarItemInterface { + /** + * Set the options. + * + * @param { ToolBarItemOptions } [options] - column options + * @returns { ToolBarItemAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ + (options?: ToolBarItemOptions): ToolBarItemAttribute; +} + +/** + * Defines the ToolBarItem component attribute functions. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ +declare class ToolBarItemAttribute { } + +/** + * Defines ToolBarItem Component. + * + * @type { ToolBarItemInterface } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ +declare const ToolBarItem: ToolBarItemInterface; + +/** + * Defines ToolBarItem Component instance. + * + * @type { ToolBarItemAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ +declare const ToolBarItemInstance: ToolBarItemAttribute; \ No newline at end of file diff --git a/api/@internal/component/ets/ui_extension_component.d.ts b/api/@internal/component/ets/ui_extension_component.d.ts index 98f807a2e72805dd36ae2b259636860251c5ac2f..d3b85e3b247da9e8b788d09dc8573e8e123cf2a7 100644 --- a/api/@internal/component/ets/ui_extension_component.d.ts +++ b/api/@internal/component/ets/ui_extension_component.d.ts @@ -169,6 +169,7 @@ declare interface TerminationInfo { /** * Get Callback from @ohos.base. + * AnonyMous Object Rectification * * @typedef { import('../api/@ohos.base').Callback> } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -198,6 +199,7 @@ declare interface UIExtensionProxy { */ /** * This function is for sending data to the UIExtensionAbility. + * AnonyMous Object Rectification * * @param { Record } data * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -211,7 +213,7 @@ declare interface UIExtensionProxy { * * @param { object } data - data send to the UIExtensionAbility * @returns { object } data - data transferred from the UIExtensionAbility - * @throws { BusinessError } 100011 - No callback has been registered to response this request. + * @throws { BusinessError } 100011 - No callback has been registered to respond to this request. * @throws { BusinessError } 100012 - Transferring data failed. * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi @@ -219,10 +221,11 @@ declare interface UIExtensionProxy { */ /** * This function is for sending data to the UIExtensionAbility and waiting the result in blocking mode. + * AnonyMous Object Rectification * * @param { Record } data - Data send to the UIExtensionAbility. * @returns { Record } data - Data transferred from the UIExtensionAbility. - * @throws { BusinessError } 100011 - No callback has been registered to response this request. + * @throws { BusinessError } 100011 - No callback has been registered to respond to this request. * @throws { BusinessError } 100012 - Transferring data failed. * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi @@ -241,6 +244,7 @@ declare interface UIExtensionProxy { */ /** * Register the listener that watches for async data receiver callback being registered by UIExtensionAbility. + * AnonyMous Object Rectification * * @param { 'asyncReceiverRegister' } type - Indicates the type of event. * @param { Callback } callback - Callback of the listened event. @@ -261,6 +265,7 @@ declare interface UIExtensionProxy { */ /** * Register the listener that watches for sync data receiver callback being registered by UIExtensionAbility. + * AnonyMous Object Rectification * * @param { 'syncReceiverRegister' } type - Indicates the type of event. * @param { Callback } callback - Callback of the listened event. @@ -281,6 +286,7 @@ declare interface UIExtensionProxy { */ /** * Deregisters the listener that watches for async data receiver callback being registered by UIExtensionAbility. + * AnonyMous Object Rectification * * @param { 'asyncReceiverRegister' } type - Type of the listened event. * @param { Callback } [callback] - Callback of the listened event. @@ -301,6 +307,7 @@ declare interface UIExtensionProxy { */ /** * Deregisters the listener that watches for sync data receiver callback being registered by UIExtensionAbility. + * AnonyMous Object Rectification * * @param { 'syncReceiverRegister' } type - Type of the listened event. * @param { Callback } [callback] - Callback of the listened event. @@ -379,6 +386,8 @@ declare class UIExtensionComponentAttribute extends CommonMethod { /** - * Start property. + * Start edge. * * @type { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3426,7 +3426,7 @@ declare interface DirectionalEdgesT { start: T; /** - * End property. + * End edge. * * @type { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3438,7 +3438,7 @@ declare interface DirectionalEdgesT { end: T; /** - * Top property. + * Top edge. * * @type { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3450,7 +3450,7 @@ declare interface DirectionalEdgesT { top: T; /** - * Bottom property. + * Bottom edge. * * @type { T } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3523,7 +3523,7 @@ declare interface DividerStyleOptions { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ mode?: DividerMode; } @@ -3582,3 +3582,33 @@ declare interface AccessibilityOptions { */ accessibilityPreferred?: boolean; } + +/** + * Define scrollbar margin options. + * + * @interface ScrollBarMargin + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ +declare interface ScrollBarMargin { + /** + * Start margin of the scroll bar. + * + * @type { ?LengthMetrics } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + start?: LengthMetrics; + + /** + * End margin of the scroll bar. + * + * @type { ?LengthMetrics } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + end?: LengthMetrics; +} \ No newline at end of file diff --git a/api/@internal/component/ets/video.d.ts b/api/@internal/component/ets/video.d.ts index bac70284feb0a0ebea7aa90b7d4bc877d1f10947..36dc4bd16b815f143a39c2fd3d01397f271e1a79 100644 --- a/api/@internal/component/ets/video.d.ts +++ b/api/@internal/component/ets/video.d.ts @@ -303,6 +303,16 @@ interface FullscreenInfo { * @atomicservice * @since 11 */ + /** + * The flag whether play in full screen. + * Anonymous Object Rectification. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ fullscreen: boolean; } @@ -332,6 +342,16 @@ interface PreparedInfo { * @atomicservice * @since 11 */ + /** + * The duration of the current video, in seconds. + * Anonymous Object Rectification. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ duration: number; } @@ -361,6 +381,16 @@ interface PlaybackInfo { * @atomicservice * @since 11 */ + /** + * The current video playback progress, expressed in seconds. + * Anonymous Object Rectification. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 18 + */ time: number; } @@ -1026,6 +1056,7 @@ declare class VideoAttribute extends CommonMethod { */ /** * Called when the video is played. + * Anonymous Object Rectification. * * @param { VoidCallback } event * @returns { VideoAttribute } @@ -1065,6 +1096,7 @@ declare class VideoAttribute extends CommonMethod { */ /** * Called when the video is paused. + * Anonymous Object Rectification. * * @param { VoidCallback } event * @returns { VideoAttribute } @@ -1104,6 +1136,7 @@ declare class VideoAttribute extends CommonMethod { */ /** * Called when the video playback ends. + * Anonymous Object Rectification. * * @param { VoidCallback } event * @returns { VideoAttribute } @@ -1143,6 +1176,7 @@ declare class VideoAttribute extends CommonMethod { */ /** * Called when the video enters and exits the full screen. + * Anonymous Object Rectification. * * @param { Callback } callback * @returns { VideoAttribute } @@ -1182,6 +1216,7 @@ declare class VideoAttribute extends CommonMethod { */ /** * Called when the video preparation is complete. + * Anonymous Object Rectification. * * @param { Callback } callback * @returns { VideoAttribute } @@ -1221,6 +1256,7 @@ declare class VideoAttribute extends CommonMethod { */ /** * Called when the time information is reported when the progress bar process is operated. + * Anonymous Object Rectification. * * @param { Callback } callback * @returns { VideoAttribute } @@ -1260,6 +1296,7 @@ declare class VideoAttribute extends CommonMethod { */ /** * Called when the playback time information is reported after the operation progress bar is completed. + * Anonymous Object Rectification. * * @param { Callback } callback * @returns { VideoAttribute } @@ -1299,6 +1336,7 @@ declare class VideoAttribute extends CommonMethod { */ /** * Called when the playback progress changes. + * Anonymous Object Rectification. * * @param { Callback } callback * @returns { VideoAttribute } @@ -1336,7 +1374,17 @@ declare class VideoAttribute extends CommonMethod { * @atomicservice * @since 11 */ - onError(event: () => void): VideoAttribute; + /** + * Called when playback fails. + * + * @param { VoidCallback | import('../api/@ohos.base').ErrorCallback } event + * @returns { VideoAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onError(event: VoidCallback | import('../api/@ohos.base').ErrorCallback): VideoAttribute; /** * Called when the video is stopped. diff --git a/api/@internal/component/ets/water_flow.d.ts b/api/@internal/component/ets/water_flow.d.ts index e1fdd93aee657d46842e34e0da3babde9f2aa0ab..25f9aa336a380ec044da5b57d0ef275125ff38ed 100644 --- a/api/@internal/component/ets/water_flow.d.ts +++ b/api/@internal/component/ets/water_flow.d.ts @@ -22,7 +22,7 @@ * function that returns item main size by index. * * @typedef { function } GetItemMainSizeByIndex - * @param { number } index - the index of FlowItem + * @param { number } index - Index of the target water flow item.
Value range: [0, total number of child nodes - 1]. * @returns { number } main size of the FlowItem at index * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -32,7 +32,7 @@ declare type GetItemMainSizeByIndex = (index: number) => number; /** - * Defines the water flow section options. + * Describes the configuration of the water flow item section. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -43,7 +43,8 @@ declare class SectionOptions { /** * The number of FlowItems in this section. * - * @type { number } itemsCount - the number of FlowItems in this section + * @type { number } itemsCount - Number of water flow items in the section. The value must be a positive integer. + * If the splice, push, or update APIs receive a section where the itemsCount value is less than 0, these APIs will not be executed. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -54,7 +55,8 @@ declare class SectionOptions { /** * The columns of this section in vertical layout, or rows in horizontal layout. * - * @type { ?number } crossCount - cross count of this section + * @type { ?number } crossCount - Number of columns (in vertical layout) or rows (in horizontal layout). + *
If the value is less than 1, the default value is used. * @default 1 one column in vertical layout, or one row in horizontal layout * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -64,8 +66,17 @@ declare class SectionOptions { crossCount?: number; /** - * Asks the developer for the main size in vp of the flow item with the specified index. - * The water flow layout uses the size measured after the flow item is created if not set. + * Callback used to obtain the main axis size,in vp, of the water flow item at a specified index during + * the layout process of the WaterFlow component. + * + *

NOTE + *
1. When both onGetItemMainSizeByIndex and the width or height attribute of the water flow item are used, + * the main axis size is determined by the return value of onGetItemMainSizeByIndex, + * which will override the main axis length of water flow item. + *
2. Using onGetItemMainSizeByIndex can improve the efficiency of jumping to a specific position or index in the WaterFlow component. + * Avoid mixing the use of onGetItemMainSizeByIndex with sections that do not have it set, as this can cause layout exceptions. + *
3. If onGetItemMainSizeByIndex returns a negative number, the height of the water flow item is 0. + *

* * @type { ?GetItemMainSizeByIndex } onGetItemMainSizeByIndex - function that returns item main size by index * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -76,8 +87,9 @@ declare class SectionOptions { onGetItemMainSizeByIndex?: GetItemMainSizeByIndex; /** - * Set the spacing between columns of this section. - * + * Gap between columns. If this parameter is not set, the value of columnsGap for the water flow is used. + * If this parameter is set to an invalid value, 0 vp is used. + * * @type { ?Dimension } columnsGap - column gap of this section * same with columnsGap of WaterFlow if not set * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -88,7 +100,8 @@ declare class SectionOptions { columnsGap?: Dimension; /** - * Set the spacing between rows of this section. + * Gap between rows. If this parameter is not set, the value of rowsGap for the water flow is used. + * If this parameter is set to an invalid value, 0 vp is used. * * @type { ?Dimension } rowsGap - row gap of this section * same with rowsGap of WaterFlow if not set @@ -100,7 +113,7 @@ declare class SectionOptions { rowsGap?: Dimension; /** - * Outer margin of this section. + * Padding of the section. A value of the Length type specifies the margin for all the four sides. * * @type { ?(Margin | Dimension) } margin - outer margin of this section * @default {top: 0, right: 0, bottom: 0, left: 0} @@ -113,7 +126,7 @@ declare class SectionOptions { } /** - * Indicates the sections of WaterFlow. + * Describes the water flow item sections. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -122,7 +135,7 @@ declare class SectionOptions { */ declare class WaterFlowSections { /** - * Creates an instance of WaterFlowSections. + * A constructor used to create a WaterFlowSections object. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -132,11 +145,21 @@ declare class WaterFlowSections { constructor(); /** - * Changes sections in the WaterFlow by removing or replacing existing elements and/or adding new elements in place. - * - * @param { number } start - Zero-based index at which to start changing the sections. - * @param { number } [deleteCount] - Indicating the number of sections in the WaterFlow to remove from start. - * @param { Array } [sections] - The new sections to add to the WaterFlow, beginning from start. + * Changes sections by removing or replacing an existing section and/or adding a section. + * + * @param { number } start - Zero-based index at which the changing starts. The value is converted to an integer. + *
NOTE + *
1. A negative index counts back from the end of the section list. If -WaterFlowSections.length() <= start < 0, start + array.length is used. + *
2. If start < -WaterFlowSections.length(), 0 is used. + *
3. If start >= WaterFlowSections.length(), a new section is added at the end. + * @param { number } [deleteCount] - Number of sections to be deleted from the position specified by start. + *
NOTE + *
1. If deleteCount is omitted, or if its value is greater than or equal to the number of sections from + * the position specified by start to the end of the WaterFlowSections, + * then all sections from the position specified by start to the end of the WaterFlowSections will be deleted. + *
2. If deleteCount is 0 or a negative number, no sections are deleted. + * @param { Array } [sections] - Sections to add to the section list, beginning from the position specified by start. + * If no section is specified, splice() will only delete sections from the WaterFlow component. * @returns { boolean } Whether the splice was successful. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -146,9 +169,9 @@ declare class WaterFlowSections { splice(start: number, deleteCount?: number, sections?: Array): boolean; /** - * Pushes a new section to the end of WaterFlow. + * Adds the specified sections to the end of the WaterFlow component. * - * @param { SectionOptions } section - new section options. + * @param { SectionOptions } section - Sections to add to the end of the WaterFlow component. * @returns { boolean } Whether the push was successful. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -158,10 +181,13 @@ declare class WaterFlowSections { push(section: SectionOptions): boolean; /** - * Updates section at specified section index. + * Updates the configuration of a specified water flow item section. * - * @param { number } sectionIndex - index of section to be updated. - * @param { SectionOptions } section - new section options. + * @param { number } sectionIndex - Zero-based index of the water flow item section to update. The value is converted to an integer. + *
NOTE + *
1. A negative index counts back from the end of the section list. If -WaterFlowSections.length() <= sectionIndex < 0, sectionIndex + array.length is used. + *
2. If sectionIndex < -WaterFlowSections.length(), 0 is used.
3. If sectionIndex >= WaterFlowSections.length(), a new section is added at the end. + * @param { SectionOptions } section - New section configuration. * @returns { boolean } Whether the update was successful. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -171,7 +197,7 @@ declare class WaterFlowSections { update(sectionIndex:number, section: SectionOptions): boolean; /** - * Obtains all the section options in the WaterFlow. + * Obtains the configuration of all sections in the WaterFlow component. * * @returns { Array } Returns all the section options in the WaterFlow. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -182,7 +208,7 @@ declare class WaterFlowSections { values(): Array; /** - * Obtains the section counts in the WaterFlow. + * Obtains the number of sections in the WaterFlow component. * * @returns { number } Returns section counts in the WaterFlow. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -204,7 +230,8 @@ declare class WaterFlowSections { */ declare enum WaterFlowLayoutMode { /** - * Top-down Layout mode. Positions of new items depend on items above. + * Default layout mode where water flow items are arranged from top to bottom. Items in the viewport depend on the layout of all items above them. + * As such, in cases of redirection or switching the number of columns, the layout of all items above the viewport must be recalculated. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -214,7 +241,21 @@ declare enum WaterFlowLayoutMode { ALWAYS_TOP_DOWN = 0, /** - * Sliding window mode. Only maintains layout information of items currently in viewport. + * Sliding window mode. This mode only takes into account the layout in the viewport, + * without depending on water flow items above the viewport. + * + *

NOTE + *
1. During a non-animated redirection to a distant location, water flow items are laid out forward or backward based on the target position. + * If the user then swipes back to the position prior to the redirection, the layout of the content may not be consistent with its previous state. + * This can lead to misalignment of the top nodes when the user swipes back to the top after the redirection. + * To counteract this issue, in this layout mode, the layout will be automatically adjusted after reaching the top of the viewport to ensure that the top is aligned. + * If there are multiple sections, adjustments will be made to the sections within the viewport when scrolling ends. + *
2. The total offset returned by the currentOffset API of scroller is inaccurate after a redirection or data update. This offset will be recalibrated when the user swipes back to the top. + *
3. If a jump action (for example, by calling scrollToIndex without animation or scrollEdge) and + * an input offset (such as from a swipe gesture or a scrolling animation) are both initiated within the same frame, both will be executed. + *
4. If the scrollToIndex API is called without animation to jump to a distant position (beyond the range of visible water flow items in the window), + * the total offset is calculated in the sliding window mode. + *

* * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -240,7 +281,7 @@ declare enum WaterFlowLayoutMode { * @since 10 */ /** - * Defines the water flow options. + * Provides parameters of the WaterFlow component. * * @interface WaterFlowOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -265,7 +306,7 @@ declare interface WaterFlowOptions { * @since 10 */ /** - * Describes the water flow footer. + * Footer of the WaterFlow component. * * @type { ?CustomBuilder } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -276,7 +317,7 @@ declare interface WaterFlowOptions { footer?: CustomBuilder; /** - * Describes the water flow footer. + * Footer of the WaterFlow component. * * @type { ?ComponentContent } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -302,7 +343,11 @@ declare interface WaterFlowOptions { * @since 10 */ /** - * Describes the water flow scroller. + * Controller of the scrollable component, bound to the scrollable component. + * + *

NOTE + *
The scroller cannot be bound to other scrollable components, such as ArcList, List, Grid, or Scroll. + *

* * @type { ?Scroller } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -313,9 +358,14 @@ declare interface WaterFlowOptions { scroller?: Scroller; /** - * Describes the sections with different cross count that compose the water flow. + * Water flow item sections. Different sections can have different numbers of columns. + * + *

NOTE + *
1. When sections is used, the columnsTemplate and rowsTemplate attributes are ignored. + *
2. When sections is used, the footer cannot be set separately. The last section can function as the footer. + *

* - * @type { ?WaterFlowSections } sections - sections with different cross count + * @type { ?WaterFlowSections } sections - sections with different cross count * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -324,9 +374,10 @@ declare interface WaterFlowOptions { sections?: WaterFlowSections; /** - * Describes the layout mode. + * Layout mode of the WaterFlow component. * * @type { ?WaterFlowLayoutMode } + * @default ALWAYS_TOP_DOWN * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -335,6 +386,65 @@ declare interface WaterFlowOptions { layoutMode?: WaterFlowLayoutMode; } +/** + * Defines a UIWaterFlowEvent which is used to set event to target component. + * + * @extends UIScrollableCommonEvent + * @interface UIWaterFlowEvent + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ +declare interface UIWaterFlowEvent extends UIScrollableCommonEvent { + /** + * Set or reset the callback which is triggered when the WaterFlow will scroll. + * + * @param { OnWillScrollCallback | undefined } callback - callback function, triggered when the WaterFlow will scroll. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnWillScroll(callback: OnWillScrollCallback | undefined): void; + + /** + * Set or reset the callback which is triggered when WaterFlow view did scroll. + * + * @param { OnScrollCallback | undefined } callback - callback function, triggered when the WaterFlow did scroll. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnDidScroll(callback: OnScrollCallback | undefined): void; + + /** + * Set or reset the callback which is triggered when the start and end positions of the display change. + * + * @param { OnWaterFlowScrollIndexCallback | undefined } callback - callback function, triggered when start or + * end positions of the display change. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + setOnScrollIndex(callback: OnWaterFlowScrollIndexCallback | undefined): void; +} + +/** + * Defines the callback type used in onScrollIndex. + * + * @typedef {function} OnWaterFlowScrollIndexCallback + * @param {number} first - the first index in visible content. + * @param {number} last - the last index in visible content. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ +declare type OnWaterFlowScrollIndexCallback = (first: number, last: number) => void; + /** * Defines the water flow interface. * @@ -433,9 +543,9 @@ declare class WaterFlowAttribute extends ScrollableCommonMethodDefault value: '1fr' * @returns { WaterFlowAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -462,9 +572,10 @@ declare class WaterFlowAttribute extends ScrollableCommonMethodDefault value: '1fr' * @returns { WaterFlowAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -520,9 +631,10 @@ declare class WaterFlowAttribute extends ScrollableCommonMethodDefault value: 0 + *
Value range: [0, +∞). * @returns { WaterFlowAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -549,9 +661,9 @@ declare class WaterFlowAttribute extends ScrollableCommonMethodDefault value: 0 * @returns { WaterFlowAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -578,9 +690,9 @@ declare class WaterFlowAttribute extends ScrollableCommonMethodDefault value: FlexDirection.Column * @returns { WaterFlowAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -598,9 +710,9 @@ declare class WaterFlowAttribute extends ScrollableCommonMethodDefault value: true * @returns { WaterFlowAttribute } The attribute of the waterflow * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -637,8 +750,14 @@ declare class WaterFlowAttribute extends ScrollableCommonMethodDefault value: 0.9 for wearable devices and 0.6 for non-wearable devices. + *
Since API version 11, the default value for non-wearable devices is 0.7. + *
Since API version 12, the default value for non-wearable devices is 0.75. + *
Value range: (0, +∞). + *
If the value is less than or equal to 0, the default value is used. * @returns { WaterFlowAttribute } the attribute of the water flow. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -648,7 +767,7 @@ declare class WaterFlowAttribute extends ScrollableCommonMethodDefault value: number of nodes visible on the screen, with the maximum value of 16 + *
Value range: [0, +∞). + *
Values less than 0 are treated as 1. * @returns { WaterFlowAttribute } the attribute of the water flow. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -667,9 +790,13 @@ declare class WaterFlowAttribute extends ScrollableCommonMethodDefault value: number of nodes visible on the screen, with the maximum value of 16 + *
Value range: [0, +∞). + *
Values less than 0 are treated as 1. + * @param { boolean } show - Whether to display the cached water flow items. * @returns { WaterFlowAttribute } the attribute of the water flow. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -696,7 +823,7 @@ declare class WaterFlowAttribute extends ScrollableCommonMethod { offsetRemain: number }): WaterFlowAttribute; /** - * Called when the first or last item displayed in the waterflow changes. + * Triggered when the first or last item displayed in the component changes. + * It is triggered once when the component is initialized. * - * @param { function } event - Callback function, triggered when the first or last item + * @param { function } event - Callback function, triggered when the first or last item * displayed in the waterflow changes. - * "first": the index of the first item displayed in the waterflow, + * "first": the index of the first item displayed in the waterflow, * "last": the index of the last item displayed in the waterflow. * @returns { WaterFlowAttribute } the attribute of the water flow. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -794,6 +922,15 @@ declare class WaterFlowAttribute extends ScrollableCommonMethod void; + +/** + * The callback when mouse event is triggered in native embed area + * + * @typedef { function } MouseInfoCallback + * @param { NativeEmbedMouseInfo } event - callback information of mouse event in native embed area. + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ +type MouseInfoCallback = (event: NativeEmbedMouseInfo) => void; + /** * Enum type supplied to {@link renderExitReason} when onRenderExited being called. * @@ -1340,7 +1367,7 @@ declare enum RenderExitReason { * @since 9 */ /** - * Segmentation fault. + * The rendering process crashes and exits, such as a segment error. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -1593,7 +1620,7 @@ declare enum RenderProcessNotRespondingReason { INPUT_TIMEOUT = 0, /** - * Timeout for navigation commit. + * The new webpage loading navigation response timed out. * * @syscap SystemCapability.Web.Webview.Core * @since 12 @@ -1780,7 +1807,7 @@ declare class JsResult { /** * Handle the user's JavaScript result if confirm the prompt dialog. * - * @param { string } result + * @param { string } result - The content of the dialog box entered by the user. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -1830,7 +1857,7 @@ declare class FileSelectorResult { /** * select a list of files. * - * @param { Array } fileList + * @param { Array } fileList - List of files that need to be operated. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -1985,6 +2012,20 @@ declare class SslErrorHandler { * @since 11 */ handleCancel(): void; + + /** + * ArkWeb has encountered an SSL certificate error, and this interface indicates whether to terminate or + * continue displaying the error to users. + * + * @param { boolean } abortLoading If abortLoading is true, the current request will be canceled and the + * user will remain on the current page. If it is false, the SSL error + * will not be ignored, and a blank page will be displayed. If a default + * error page is enabled, the default error page will be shown instead. + * The default value is false. + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + handleCancel(abortLoading: boolean): void; } /** @@ -2107,7 +2148,7 @@ declare enum ProtectedResourceType { * @since 9 */ /** - * The MidiSysex resource. + * The MidiSysex resource. Currently, only permission events can be reported. MIDI devices are not yet supported. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2164,7 +2205,7 @@ declare enum ProtectedResourceType { * @since 9 */ /** - * Defines the onPermissionRequest callback, related to {@link onPermissionRequest} method. + * Implements the PermissionRequest object, related to {@link onPermissionRequest} method. * * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -2230,9 +2271,9 @@ declare class PermissionRequest { * @since 9 */ /** - * Gets the resource that the webpage is trying to access. + * Obtains the list of accessible resources requested for the web page. * - * @returns { Array } + * @returns { Array } List of accessible resources requested by the web page. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -2292,7 +2333,7 @@ declare class ScreenCaptureHandler { * @since 10 */ /** - * Gets the source of the webpage that attempted to access the restricted resource. + * Obtains the origin of this web page. * * @returns { string } * @syscap SystemCapability.Web.Webview.Core @@ -2308,7 +2349,7 @@ declare class ScreenCaptureHandler { * @since 10 */ /** - * Grant origin access to a given resource. + * Grants the screen capture permission. * @param { ScreenCaptureConfig } config The screen capture configuration. * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2322,7 +2363,7 @@ declare class ScreenCaptureHandler { * @since 10 */ /** - * Reject the request. + * Rejects this screen capture request. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -2428,7 +2469,7 @@ declare class ControllerHandler { */ /** * Set WebController object. - * + * Set to null if you don't need to open a new window. * @param { WebviewController } controller * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2543,7 +2584,23 @@ declare enum ContextMenuMediaType { * @atomicservice * @since 11 */ - Image = 1 + Image = 1, + + /** + * Video. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + VIDEO = 2, + + /** + * Audio. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + AUDIO = 3 } /** @@ -2654,7 +2711,10 @@ declare enum ContextMenuInputFieldType { } /** - * Defines the embed status, related to {@link NativeEmbedDataInfo}. + * Defines the lifecycle of the same-layer tag. + * When the same-layer tag exists on the loaded page, + * CREATE is triggered. When the same-layer tag is moved or is enlarged, + * **UPDATE **is triggered. When the page exits, DESTROY is triggered. * * @enum { number } * @syscap SystemCapability.Web.Webview.Core @@ -2663,7 +2723,7 @@ declare enum ContextMenuInputFieldType { */ declare enum NativeEmbedStatus { /** - * The embed tag create. + * The same-layer tag is created. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2672,7 +2732,7 @@ declare enum NativeEmbedStatus { CREATE = 0, /** - * The embed tag update. + * The same-layer tag is updated. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2681,7 +2741,7 @@ declare enum NativeEmbedStatus { UPDATE = 1, /** - * The embed tag destroy. + *The same-layer tag is destroyed. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2690,7 +2750,7 @@ declare enum NativeEmbedStatus { DESTROY = 2, /** - * The embed tag enter backforward cache. + * The same-layer tag enters the BFCache. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2699,7 +2759,7 @@ declare enum NativeEmbedStatus { ENTER_BFCACHE = 3, /** - * The embed tag leave backforward cache. + * The same-layer tag leaves the BFCache. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2776,7 +2836,7 @@ declare enum ContextMenuEditStateFlags { * @since 9 */ /** - * Support for pasting. + * Pasting is supported. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2863,7 +2923,8 @@ declare enum WebNavigationType { } /** - * Defines the web render mode, related to {@link RenderMode}. + * Enumerates the rendering mode of Web components. By default, the asynchronous rendering mode is used. + * The asynchronous rendering mode is recommended because it has better performance and lower power consumption. * * @enum { number } * @syscap SystemCapability.Web.Webview.Core @@ -2872,7 +2933,9 @@ declare enum WebNavigationType { */ declare enum RenderMode { /** - * Web and arkui render asynchronously + * The Web component is rendered asynchronously. + * The ArkWeb component as a graphic surface node is displayed independently. + * The maximum width of the Web component is 7,680 px (physical pixel). * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2881,7 +2944,9 @@ declare enum RenderMode { ASYNC_RENDER = 0, /** - * Web and arkui render synchronously + * The Web component is rendered synchronously. + * The ArkWeb component as a graphic canvas node is displayed together with the system component. + * The maximum width of the Web component is 500,000 px (physical pixel). * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -2969,6 +3034,8 @@ declare class WebContextMenuParam { * Horizontal offset coordinates of the menu within the Web component. * * @returns { number } The context menu x coordinate. + * Returns a non-negative integer if normal, otherwise returns -1. + * Unit: vp. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -2986,6 +3053,8 @@ declare class WebContextMenuParam { * Vertical offset coordinates for the menu within the Web component. * * @returns { number } The context menu y coordinate. + * Returns a non-negative integer if normal, otherwise returns -1. + * Unit: vp. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -3087,7 +3156,7 @@ declare class WebContextMenuParam { /** * Returns the text of the selection. * - * @returns { string } Returns the text of the selection. + * @returns { string } Returns the text of the selection, or return null if no text is selected. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -3268,6 +3337,10 @@ declare class WebContextMenuResult { /** * Executes the paste operation related to this context menu. * + *

API Note:
+ * Permissions need to be configured: ohos.permission.READ_PASTEBOARD. + *

+ * * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -3303,6 +3376,30 @@ declare class WebContextMenuResult { * @since 11 */ selectAll(): void; + + /** + * Executes the redo operation related to this context menu. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + redo(): void; + + /** + * Executes the undo operation related to this context menu. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + undo(): void; + + /** + * Executes the paste and match style operation related to this context menu. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + pasteAndMatchStyle(): void; } /** @@ -4259,11 +4356,16 @@ declare class JsGeolocation { * @since 8 */ /** - * Report the geolocation permission status from users. + * Sets the geolocation permission status of a web page. * - * @param { string } origin - The origin that ask for the geolocation permission. - * @param { boolean } allow - The geolocation permission status. - * @param { boolean } retain - Whether to allow the geolocation permission status to be saved to the system. + * @param { string } origin - Index of the origin. + * @param { boolean } allow - Geolocation permission status. {@code true} means to allow geolocation permission; + * {@code false} means to disallow geolocation permission. + * @param { boolean } retain - Whether the geolocation permission status can be saved to the system. + * {@code true} means to allow the geolocation permission status to be saved to + * the system; {@code false} means to disallow the geolocation permission status to + * be saved to the system. You can manage the geolocation permissions saved + * to the system through {@link GeolocationPermissions}. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -4323,7 +4425,11 @@ declare class WebCookie { } /** - * Defines the touch event result. + * Represents the event consumption result sent to the Web component. + * For details about the supported events, see TouchEvent/mouseEvent. + * If the application does not consume the event, set this parameter to false, + * and the event will be consumed by the Web component. If the application has consumed the event, + * set this parameter to true, and the event will not be consumed by the Web component. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -4342,7 +4448,10 @@ declare class EventResult { /** * Set whether the event is consumed. * - * @param { boolean } result - True if the event is consumed. + * @param { boolean } result - Whether to consume the gesture event. + * {@code true} Indicates the consumption of the gesture event. + * {@code false} Indicates the non-consumption of the gesture event. + * Default value: true. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 @@ -4350,14 +4459,32 @@ declare class EventResult { setGestureEventResult(result: boolean): void; /** - * Set whether the event is consumed. + * Sets the gesture event consumption result. * - * @param { boolean } result - True if the event is consumed. - * @param { boolean } stopPropagation - Stops the propagation of events farther along.Default value is true. + * @param { boolean } result - Whether to consume the gesture event. + * {@code true} Indicates the consumption of the gesture event. + * {@code false} Indicates the non-consumption of the gesture event. + * Default value: true. + * @param { boolean } stopPropagation - Whether to stop propagation. + * This parameter is valid only when result is set to true. + * {@code true} Indicates stops the propagation of events farther along. + * {@code false} Indicates the propagation of events farther along. + * Default value: true. * @syscap SystemCapability.Web.Webview.Core * @since 14 */ setGestureEventResult(result: boolean, stopPropagation: boolean): void; + + /** + * Sets the mouse event consumption result. + * + * @param { boolean } result - True if the event is consumed. + * @param { boolean } [stopPropagation] - {@code true} means to prevent mouse events from bubbling up + * {code false} otherwise, The default value is true. + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + setMouseEventResult(result: boolean, stopPropagation?: boolean): void; } /** @@ -4380,6 +4507,7 @@ declare class WebController { /** * Let the Web inactive. + * It is no longer maintained since API version 9, and it is recommended to use {@link onInactive} instead. * * @syscap SystemCapability.Web.Webview.Core * @since 8 @@ -4390,6 +4518,7 @@ declare class WebController { /** * Let the Web active. + * It is no longer maintained since API version 9, and it is recommended to use {@link onActive} instead. * * @syscap SystemCapability.Web.Webview.Core * @since 8 @@ -4420,7 +4549,14 @@ declare class WebController { clearHistory(): void; /** - * Loads a piece of code and execute JS code in the context of the currently displayed page. + * Asynchronously execute JavaScript in the context of the currently displayed page. + * The result of the script execution will be returned through an asynchronous callback. + * This method must be used on the UI thread, and the callback will also be invoked on the UI thread. + *

API Note:
+ * The state of JavaScript is no longer persisted across navigations like loadUrl. + * For example, global variables and functions defined before calling loadUrl will not exist in the loaded page. + * It is recommended that applications use registerJavaScriptProxy to ensure that the JavaScript state can be persisted across page navigations. + *

* * @param { object } options The options with a piece of code and a callback. * @syscap SystemCapability.Web.Webview.Core @@ -4631,7 +4767,11 @@ declare interface WebOptions { * @since 10 */ /** - * Sets the address of the web page to be displayed. + * Web resource address. If accessing local resource files, please use $rawfile or resource protocol. + * If you load a local resource file that applies the sandbox path outside the package (files support html and txt types), + * please use the file:// sandbox file path. + * Src cannot dynamically change the address through state variables (for example: @State). + * If you need to change it, please reload it through {@link loadUrl}. * * @type { string | Resource } * @syscap SystemCapability.Web.Webview.Core @@ -4664,8 +4804,9 @@ declare interface WebOptions { * @since 10 */ /** - * Sets the controller of the Web. - * + * Controller, through which you can control various behaviors of Web components + * (including page navigation, declaring cycle state, JavaScript interaction and other behaviors). + * Since API Version 9, WebController is no longer maintained, so it is recommended to use WebviewController instead. * @type { WebController | WebviewController } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -4675,7 +4816,9 @@ declare interface WebOptions { controller: WebController | WebviewController; /** - * Sets the render mode of the web. + * Rendering mode. + * RenderMode.ASYNC_RENDER (default, cannot be dynamically adjusted): The Web component is rendered asynchronously. + * RenderMode.SYNC_RENDER: The Web component is rendered synchronously within the current execution context. * * @type { ?RenderMode } * @syscap SystemCapability.Web.Webview.Core @@ -4708,11 +4851,11 @@ declare interface WebOptions { incognitoMode? : boolean; /** - * Sets the shared render process token of the web. - * When the web is in multiprocess mode, web with the same - * sharedRenderProcessToken will attempt to reuse the same render process. - * The shared render process will remain active until all associated - * web are destroyed. + * A token indicating that the current Web component specifies a shared rendering process. + * In the multi-rendering process mode, Web components with the same token will preferentially try to reuse + * the rendering process bound to the token. + * The binding of token to the rendering process occurs in the initialization stage of the rendering process. + * When the rendering process has no associated Web component, its binding relationship with token will be removed. * * @type { ?string } * @syscap SystemCapability.Web.Webview.Core @@ -5168,6 +5311,42 @@ declare interface NativeEmbedTouchInfo { result?: EventResult; } +/** + * Defines the user mouse info on embed layer. + * + * @typedef NativeEmbedMouseInfo + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ +declare interface NativeEmbedMouseInfo { + /** + * The native embed id. + * + * @type { ?string } + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + embedId?: string; + + /** + * An event sent when the state of contacts with a mouse-sensitive surface changes. + * + * @type { ?MouseEvent } + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + mouseEvent?: MouseEvent; + + /** + * Handle the user's mouse result. + * + * @type { ?EventResult } + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + result?: EventResult; +} + /** * Defines the first content paint rendering of web page. * @@ -5543,6 +5722,16 @@ declare interface OnBeforeUnloadEvent { * @since 18 */ result: JsResult; + + /** + * The isReload parameter is set to true when the page is refreshed; + * otherwise, it remains false. Default is false. + * + * @type { ?boolean } + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + isReload?: boolean; } /** @@ -5900,7 +6089,7 @@ declare interface OnShowFileSelectorEvent { * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice - * @since 11 + * @since 12 */ result: FileSelectorResult; @@ -5911,7 +6100,7 @@ declare interface OnShowFileSelectorEvent { * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice - * @since 11 + * @since 12 */ fileSelector: FileSelectorParam; } @@ -6504,6 +6693,7 @@ declare interface OnLoadInterceptEvent { declare interface OnOverScrollEvent { /** * Based on the leftmost part of the page, the horizontal scroll offset is over. + * Unit: vp. * * @type { number } * @syscap SystemCapability.Web.Webview.Core @@ -6514,6 +6704,7 @@ declare interface OnOverScrollEvent { /** * Based on the top of the page, the vertical scroll offset is over. + * Unit: vp. * * @type { number } * @syscap SystemCapability.Web.Webview.Core @@ -6531,6 +6722,15 @@ declare interface OnOverScrollEvent { * @atomicservice * @since 12 */ +/** + * Defines the JavaScript object to be injected. + * + * @typedef JavaScriptProxy + * @syscap SystemCapability.Web.Webview.Core + * @crossplatform + * @atomicservice + * @since 20 + */ declare interface JavaScriptProxy { /** * Objects participating in registration. @@ -6540,6 +6740,15 @@ declare interface JavaScriptProxy { * @atomicservice * @since 12 */ + /** + * Objects participating in registration. + * + * @type { object } + * @syscap SystemCapability.Web.Webview.Core + * @crossplatform + * @atomicservice + * @since 20 + */ object: object; /** @@ -6551,6 +6760,16 @@ declare interface JavaScriptProxy { * @atomicservice * @since 12 */ + /** + * The name of the registered object, which is consistent with the + * object name called in the window. + * + * @type { string } + * @syscap SystemCapability.Web.Webview.Core + * @crossplatform + * @atomicservice + * @since 20 + */ name: string; /** @@ -6562,6 +6781,16 @@ declare interface JavaScriptProxy { * @atomicservice * @since 12 */ + /** + * The method of the application side JavaScript object participating + * in the registration. + * + * @type { Array } + * @syscap SystemCapability.Web.Webview.Core + * @crossplatform + * @atomicservice + * @since 20 + */ methodList: Array; /** @@ -6572,6 +6801,15 @@ declare interface JavaScriptProxy { * @atomicservice * @since 12 */ + /** + * Controller. + * + * @type { WebController | WebviewController } + * @syscap SystemCapability.Web.Webview.Core + * @crossplatform + * @atomicservice + * @since 20 + */ controller: WebController | WebviewController; /** @@ -6582,6 +6820,15 @@ declare interface JavaScriptProxy { * @atomicservice * @since 12 */ + /** + * The async method of the application side JavaScript object participating in the registration. + * + * @type { ?Array } + * @syscap SystemCapability.Web.Webview.Core + * @crossplatform + * @atomicservice + * @since 20 + */ asyncMethodList?: Array; /** @@ -6606,7 +6853,7 @@ declare interface JavaScriptProxy { */ declare enum WebKeyboardAvoidMode { /** - * Resize the visual viewport when keyboard avoidance occurs. + * When the soft keyboard avoids, only the size of the visual viewport is adjusted, not the size of the layout viewport. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -6615,7 +6862,8 @@ declare enum WebKeyboardAvoidMode { RESIZE_VISUAL = 0, /** - * Resize the visual and layout viewport when keyboard avoidance occurs. + * By default, when the soft keyboard avoids, + * the sizes of the visual viewport and the layout viewport are adjusted at the same time. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -6624,7 +6872,7 @@ declare enum WebKeyboardAvoidMode { RESIZE_CONTENT = 1, /** - * Do not resize any viewport when keyboard avoidance occurs. + * Without adjusting any viewport size, soft keyboard avoidance will not be triggered. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -6647,7 +6895,15 @@ declare enum WebElementType { * @syscap SystemCapability.Web.Webview.Core * @since 13 */ - IMAGE = 1 + IMAGE = 1, + + /** + * Link,corresponding link type. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + LINK = 2 } /** @@ -6667,12 +6923,55 @@ declare enum WebResponseType { LONG_PRESS = 1 } +/** + * Enum type supplied to {@link bypassVsyncCondition} for setting the bypass vsync condition. + * + * @enum { number } + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ +declare enum WebBypassVsyncCondition { + /** + * Not bypass vsync. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + NONE = 0, + + /** + * bypass vsync. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + SCROLLBY_FROM_ZERO_OFFSET = 1 +} + +/** + * Arkweb audio session Type + * + * @enum { number } + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ +declare enum AudioSessionType { + /** + * Ambient audio, which is mixable with other types of audio. + * This is useful in some special cases such as when the user wants to mix audios from multiple pages. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + AMBIENT=3 +} + /** * Defines the options of preview menu * * @interface PreviewMenuOptions * @syscap SystemCapability.Web.Webview.Core - * @since 18 + * @since 20 */ declare interface PreviewMenuOptions { /** @@ -6680,7 +6979,7 @@ declare interface PreviewMenuOptions { * * @type { ?HapticFeedbackMode } * @syscap SystemCapability.Web.Webview.Core - * @since 18 + * @since 20 */ hapticFeedbackMode?: HapticFeedbackMode; } @@ -6734,7 +7033,7 @@ declare interface SelectionMenuOptionsExt { * * @type { ?PreviewMenuOptions } * @syscap SystemCapability.Web.Webview.Core - * @since 18 + * @since 20 */ previewMenuOptions?: PreviewMenuOptions; } @@ -6797,7 +7096,7 @@ declare class WebAttribute extends CommonMethod { javaScriptAccess(javaScriptAccess: boolean): WebAttribute; /** - * Sets whether enable local file system access in Web. + * Sets whether enable local file system access in web. * * @param { boolean } fileAccess - {@code true} means enable local file system access in Web; {@code false} otherwise. * The default value is true. @@ -6806,7 +7105,7 @@ declare class WebAttribute extends CommonMethod { * @since 8 */ /** - * Sets whether enable local file system access in Web. + * Sets whether enable local file system access in web. * * @param { boolean } fileAccess - {@code true} means enable local file system access in Web; {@code false} otherwise. * The default value is true. @@ -6816,7 +7115,13 @@ declare class WebAttribute extends CommonMethod { * @since 11 */ /** - * Sets whether enable local file system access in Web. + * Sets whether to enable Access to the file system in the application. + * This setting dose not affect the access to the files specified though $rawfile(filepath/filename). + *

API Note:
+ * fileAccess is disabled by default since API version 12. + * When fileAccess is set to false, files in the read-only /data/storage/el1/bundle/entry/resources/resfile
+ * directory can still be accessed through the file protocol. + *

* * @param { boolean } fileAccess - {@code true} means enable local file system access in Web; {@code false} otherwise. * The default value is false. @@ -6838,21 +7143,22 @@ declare class WebAttribute extends CommonMethod { * @since 8 */ /** - * Sets whether to allow image resources to be loaded from the network. + * Sets whether to enable access to online images through HTTP and HTTPS. * - * @param { boolean } onlineImageAccess - {@code true} means the Web can allow image resources to be loaded from the network; - * The default value is true. - * {@code false} otherwise. + * @param { boolean } onlineImageAccess - Sets whether to enable access to online images. + * {@code true} means means setting to allow loading image resources from the network, {@code false} otherwise. + * Default value: true. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 */ /** - * Sets whether to allow image resources to be loaded from the network. - * The default value is true. - * @param { boolean } onlineImageAccess - {@code true} means the Web can allow image resources to be loaded from the network; - * {@code false} otherwise. + * Sets whether to enable access to online images through HTTP and HTTPS. + * + * @param { boolean } onlineImageAccess - Sets whether to enable access to online images. + * {@code true} means means setting to allow loading image resources from the network, {@code false} otherwise. + * Default value: true. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -6881,9 +7187,10 @@ declare class WebAttribute extends CommonMethod { * @since 11 */ /** - * Sets whether to enable the DOM Storage API permission. - * The default value is false. - * @param { boolean } domStorageAccess - {@code true} means enable the DOM Storage API permission in Web; {@code false} otherwise. + * Sets whether to enable the DOM Storage API. By default, this feature is disabled. + * @param { boolean } domStorageAccess - Whether to enable the DOM Storage API. {@code true} means to enable + * the DOM Storage API; {@code false} means to disable the DOM Storage API. + * The default value is false. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -6912,9 +7219,11 @@ declare class WebAttribute extends CommonMethod { * @since 11 */ /** - * Sets whether the Web can automatically load image resources. - * The default value is true. - * @param { boolean } imageAccess - {@code true} means the Web can automatically load image resources; {@code false} otherwise. + * Sets whether to enable automatic image loading. + * + * @param { boolean } imageAccess - Sets whether to enable automatic image loading. + * {@code true} means the Web can automatically load image resources, {@code false} otherwise. + * Default value: true. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -6941,7 +7250,8 @@ declare class WebAttribute extends CommonMethod { * @since 11 */ /** - * Sets how to load HTTP and HTTPS content. + * Sets the behavior when a secure origin attempts to load a resource from an insecure origin. + * The default is MixedMode.None, meaning not allow a secure origin to load content from an insecure origin. * * @param { MixedMode } mixedMode - The mixed mode, which can be {@link MixedMode}. * @returns { WebAttribute } @@ -6994,10 +7304,12 @@ declare class WebAttribute extends CommonMethod { * @since 8 */ /** - * Sets whether to allow access to geographical locations. + * Set whether to enable geolocation access. By default, this feature is enabled. + * For details, see Managing Location Permissions. * - * @param { boolean } geolocationAccess - {@code true} means the Web allows access to geographical locations; {@code false} otherwise. - * The default value is true. + * @param { boolean } geolocationAccess - Whether to enable geolocation access. {@code true} means the Web + * allows access to geographical locations; {@code false} means the + * Web disallows access to geographical locations. The default value is true. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -7032,14 +7344,43 @@ declare class WebAttribute extends CommonMethod { * @since 11 */ /** - * Injects the JavaScript object into window and invoke the function in window. + * Registers the supplied ArkTS object in javaScriptProxy into this Web component. + * The object is registered into all frames of the web page, including all frames, using the specified name in javaScriptProxy. + * This allows the methods of the ArkTs object in javaScriptProxy to be accessed from JavaScript. + * + *

API Note: + * Performance Note: + *

For details about the arkweb rendering framework adaptation solution, + * see [ArkWeb Rendering Framework Adaptation]{@link https://developer.huawei.com/consumer/en/doc/best-practices/bpta-arkweb_rendering_framework} + *

* - * @param { JavaScriptProxy } javaScriptProxy - The JavaScript object to be injected. + * @param { JavaScriptProxy } javaScriptProxy - The ArkTS object in javaScriptProxy will be registered into this Web component, + * and the methods within the methodList of the injected ArkTs object declared in javaScriptProxy can be accessed by JavaScript. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 */ + /** + * Registers the supplied ArkTs object in javaScriptProxy into this Web component. + * The object is registered into all frames of the web page, including all frames, using the specified name in javaScriptProxy. + * This allows the methods of the ArkTs object in javaScriptProxy to be accessed from JavaScript. + * + *

API Note: + * Performance Note: + *

For details about how to arkWeb rendering framework adaptation solution, + * see [ArkWeb Rendering Framework Adaptation] + * {@link https://developer.huawei.com/consumer/en/doc/best-practices/bpta-arkweb_rendering_framework} + *

+ * + * @param { JavaScriptProxy } javaScriptProxy - The ArkTS object in javaScriptProxy will be registered into this Web component, + * and the methods within the methodList of the injected ArkTs object declared in javaScriptProxy can be accessed by JavaScript. + * @returns { WebAttribute } + * @syscap SystemCapability.Web.Webview.Core + * @crossplatform + * @atomicservice + * @since 20 + */ javaScriptProxy(javaScriptProxy: JavaScriptProxy): WebAttribute; /** @@ -7091,9 +7432,13 @@ declare class WebAttribute extends CommonMethod { * @since 9 */ /** - * Sets the dark mode of Web. + * Sets the web dark mode. By default, web dark mode is disabled. When it is enabled, + * the Web component enables the dark theme defined for web pages + * if the theme has been defined in prefers-color-scheme of a media query, + * and remains unchanged otherwise. To enable the forcible dark mode, use this API with forceDarkAccess. * - * @param { WebDarkMode } mode - The dark mode, which can be {@link WebDarkMode}. + * @param { WebDarkMode } mode - Web dark mode to set. + * Default value: WebDarkMode.Off. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -7110,9 +7455,13 @@ declare class WebAttribute extends CommonMethod { * @since 9 */ /** - * Sets whether to enable forced dark algorithm when the web is in dark mode + * Sets whether to enable forcible dark mode for the web page. + * This API is applicable only when dark mode is enabled in {@link darkMode}. * - * @param { boolean } access {@code true} means enable the force dark algorithm; {@code false} otherwise. + * @param { boolean } access Sets whether to enable forcible dark mode for the web page. + * {@code true} means enable forcible dark mode for the web page. ; + * {@code false} means not enable forcible dark mode for the web page. + * The default value is false. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -7129,9 +7478,19 @@ declare class WebAttribute extends CommonMethod { * @since 10 */ /** - * Sets the media options. + * Sets the web-based media playback policy, including the validity period for automatically resuming a paused web audio, + * and whether the audio of multiple Web instances in an application is exclusive. + *

API Note:
+ * Audios in the same Web instance are considered as the same audio. + * The media playback policy controls videos with an audio track. + * After the parameter settings are updated, the playback must be started again for the settings to take effect. + * It is recommended that you set the same audioExclusive value for all Web components. + * Audio and video interruption takes effect within an app and between apps, and playback resumption takes effect only between apps. + *

* - * @param { WebMediaOptions } options The media options, which can be {@link WebMediaOptions}. + * @param { WebMediaOptions } options Set the media policy for the web. + * After updating the attribute parameters, the audio needs to be replayed for it to take effect. + * Default value: {resumeInterval: 0, audioExclusive: true} * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -7171,10 +7530,13 @@ declare class WebAttribute extends CommonMethod { * @since 8 */ /** - * Sets whether the Web access overview mode. + * Sets whether to load web pages by using the overview mode, which means reducing the content to fit the screen width. + * Currently, only mobile devices are supported. * - * @param { boolean } overviewModeAccess {@code true} means the Web access overview mode; {@code false} otherwise. - * The default value is true. + * @param { boolean } overviewModeAccess Whether to load web pages by using the overview mode. + * {@code true} means the Web access overview mode; + * {@code false} means the Web not access overview mode. + * Default value: true * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -7184,8 +7546,11 @@ declare class WebAttribute extends CommonMethod { /** * Sets the over-scroll mode for web + * When the scrolling mode is enabled, when the user slides to the edge on the web root page, the web will bounce back + * the interface through elastic animation, and the internal pages on the root page will not trigger the bounce back. * * @param { OverScrollMode } mode - The over-scroll mode, which can be {@link OverScrollMode}. + * The default value is OverScrollMode.NEVER. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -7245,10 +7610,12 @@ declare class WebAttribute extends CommonMethod { * @since 8 */ /** - * Sets whether the Web access the database. + * Sets whether to enable database access. By default, this feature is disabled. * - * @param { boolean } databaseAccess {@code true} means the Web access the database; {@code false} otherwise. - * The default value is false. + * + * @param { boolean } databaseAccess - Whether to enable database access. {@code true} means to enable + * database access; {@code false} means to disable database access. + * The default value is false. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -7268,6 +7635,8 @@ declare class WebAttribute extends CommonMethod { * Sets the initial scale for the Web. * * @param { number } percent the initial scale for the Web. + * Value range: (0, 1000]. + * Default value: 100. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -7288,9 +7657,29 @@ declare class WebAttribute extends CommonMethod { userAgent(userAgent: string): WebAttribute; /** - * Set whether to support the viewport attribute of the meta tag in the frontend page. + * Sets whether the viewport property of the meta tag is enabled. + * + *

API Note:
+ * If the device is 2-in-1, the viewport property is not supported. This means that, + * regardless of whether this parameter is set to true or false, + * the viewport property will not be parsed and a default layout will be used.
+ * If the device is a tablet, the viewport-fit property of the meta tag is parsed regardless of + * whether this parameter is set to true or false. When viewport-fit is set to cover, + * the size of the safe area can be obtained through the CSS attribute.
+ * The viewport parameter of the meta tag on the frontend HTML page is enabled or + * disabled based on whether User-Agent contains the Mobile field. + * If a User-Agent does not contain the Mobile field, the viewport property in the meta tag is disabled by default. + * In this case, you can explicitly set the metaViewport property to true to overwrite the disabled state. + *

* - * @param { boolean } enabled {@code true} means support the viewport attribute of the meta tag; {@code false} otherwise. + * @param { boolean } enabled Whether the viewport property of the meta tag is enabled. + * {@code true} means support the viewport attribute of the meta tag, + * the viewport property of the meta tag is not enabled. + * This means that the property will not be parsed and a default layout will be used.; + * {@code false} means not support the viewport attribute of the meta tag, + * the viewport property of the meta tag is enabled. + * This means that the property will be parsed and used for the layout. + * Default value: true. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -7300,26 +7689,29 @@ declare class WebAttribute extends CommonMethod { /** * Triggered at the end of web page loading. + * This callback is only invoked for the main frame and not for subframes. * * @param { function } callback The triggered function at the end of web page loading. - * @returns { WebAttribute } + * @returns { WebAttribute } The WebAttribute object representing the attributes of the web page. * @syscap SystemCapability.Web.Webview.Core * @since 8 */ /** * Triggered at the end of web page loading. + * This callback is only invoked for the main frame and not for subframes. * * @param { function } callback The triggered function at the end of web page loading. - * @returns { WebAttribute } + * @returns { WebAttribute } The WebAttribute object representing the attributes of the web page. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @since 10 */ /** * Triggered at the end of web page loading. + * This callback is only invoked for the main frame and not for subframes. * * @param { function } callback The triggered function at the end of web page loading. - * @returns { WebAttribute } + * @returns { WebAttribute } The WebAttribute object representing the attributes of the web page. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -7327,9 +7719,10 @@ declare class WebAttribute extends CommonMethod { */ /** * Triggered at the end of web page loading. + * This callback is only invoked for the main frame and not for subframes. * * @param { Callback } callback The triggered function at the end of web page loading. - * @returns { WebAttribute } + * @returns { WebAttribute } The WebAttribute object representing the attributes of the web page. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -7365,7 +7758,8 @@ declare class WebAttribute extends CommonMethod { * @since 11 */ /** - * Triggered at the begin of web page loading. + * Called when the web page starts to be loaded. + * This API is called only for the main frame, and not for the iframe or frameset content. * * @param { Callback } callback The triggered function at the begin of web page loading. * @returns { WebAttribute } @@ -7425,7 +7819,9 @@ declare class WebAttribute extends CommonMethod { * @since 11 */ /** - * Triggered when the title of the main application document changes. + * Notifies the application that the title has changed. + * If the page being loaded does not specify a title via the element, + * ArkWeb will generate a title baseed on the URL and return it to the application. * * @param { Callback<OnTitleReceiveEvent> } callback The triggered function when the title of the main application document changes. * @returns { WebAttribute } @@ -7445,9 +7841,10 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 8 */ /** - * Triggered when requesting to hide the geolocation. + * Called to notify the user that the request for obtaining the geolocation information received + * when {@link onGeolocationShow} is called has been canceled. * - * @param { function } callback The triggered function when requesting to hide the geolocation permission. + * @param { function } callback - Callback invoked when the request for obtaining geolocation information has been canceled. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -7475,9 +7872,9 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 11 */ /** - * Triggered when requesting to show the geolocation permission. - * - * @param { Callback<OnGeolocationShowEvent> } callback The triggered function when requesting to show the geolocation permission. + * Called when a request to obtain the geolocation information is received. + * @param { Callback<OnGeolocationShowEvent> } callback - Callback invoked when a request to obtain the geolocation + * information is received. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -7527,6 +7924,10 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * Triggered when the Web wants to display a JavaScript alert() dialog. * * @param { Callback<OnAlertEvent, boolean> } callback The triggered function when the web page wants to display a JavaScript alert() dialog. + * {@code true} means the application can invoke custom pop-up dialog capabilities (with confirmation and cancellation buttons). + * Developers need to use the JsResult interface to notify the web component whether to leave the current page + * according to the user's choice. + * {@code false} means the pop-up processing result is considered as cancelled. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -7595,6 +7996,9 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * Triggered when the web page wants to display a JavaScript confirm() dialog. * * @param { Callback<OnConfirmEvent, boolean> } callback The triggered function when the web page wants to display a JavaScript confirm() dialog. + * {@code true} means the application can call the custom pop-up capability (including confirmation and cancellation), and needs to call JsResult + * to notify the Web component whether to leave the current page based on the user's confirmation or cancellation operation. + * {@code false} means the custom pop-up drawn in the function is invalid. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -7625,6 +8029,9 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * Triggered when the web page wants to display a JavaScript prompt() dialog. * * @param { Callback<OnPromptEvent, boolean> } callback The triggered function when the web page wants to display a JavaScript prompt() dialog. + * {@code true} means the application can call the custom pop-up window capability (including confirmation, cancellation, and input),and needs to + * call JsResult to notify the Web component of the final processing result based on the user's confirmation or cancellation operation. + * {@code false} means the pop-up window processing result is considered as a cancellation. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -7655,6 +8062,8 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * Triggered when the web page receives a JavaScript console message. * * @param { Callback<OnConsoleEvent, boolean> } callback The triggered function when the web page receives a JavaScript console message. + * {@code true} means the message will no longer be printed to the console. + * {@code false} means it will still be printed to the console. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -7843,7 +8252,10 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { */ /** * Triggered when the render process exits. - * + * Multiple Web components may share a single rendering process, and each affected Web component will trigger the callback. + * When the application handles this callback, it can call the related interface of the bound webviewController to + * restore the page. Such as {@link refresh}, {@link loadUrl}, etc. + * For details of component lifecycle callback, please refer to the lifecycle of Web components. * @param { Callback<OnRenderExitedEvent> } callback The triggered when the render process exits. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core @@ -7872,8 +8284,13 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { */ /** * Triggered when the file selector shows. + * Call this function to handle HTML forms with a "file" input type. If this function is not called or returns false, + * the web component provides the default "select file" handling interface. If it returns true, the application can customize + * the "select file" response behavior. * * @param { Callback<OnShowFileSelectorEvent, boolean> } callback The triggered when the file selector shows. + * {@code true} means the user can call the system-provided pop-up window capability. + * {@code false} means the custom pop-up window drawn in the function is invalid. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -8110,10 +8527,9 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 11 */ /** - * Triggered when the host application that web content from the specified origin is attempting to access the resources. + * Called when a permission request is received. To call this API, you need to declare the ohos.permission.CAMERA and ohos.permission.MICROPHONE permissions. * - * @param { Callback<OnPermissionRequestEvent> } callback The triggered callback when the host application that web content from the specified origin is - * attempting to access the resources. + * @param { Callback<OnPermissionRequestEvent> } callback Callback invoked when a permission request is received. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -8140,9 +8556,9 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 11 */ /** - * Triggered when the host application that web content from the specified origin is requesting to capture screen. - * @param { Callback<OnScreenCaptureRequestEvent> } callback The triggered callback when the host application that web content from the specified origin is - * requesting to capture screen. + * Called when a screen capture request is received. + * + * @param { Callback<OnScreenCaptureRequestEvent> } callback Called when a screen capture request is received. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8171,6 +8587,8 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * Triggered when called to allow custom display of the context menu. * * @param { Callback<OnContextMenuShowEvent, boolean> } callback The triggered callback when called to allow custom display of the context menu. + * {@code true} means the custom menu is triggered. + * {@code false} means the custom menu is invalid. * @returns { WebAttribute } If custom display return true.Otherwise, default display return false. * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8199,10 +8617,11 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set whether media playback needs to be triggered by user gestures. + * Set whether to manually play audio-only videos. The playback of muted videos is not controlled by this interface. * - * @param { boolean } access True if it needs to be triggered manually by the user else false. - * The default value is true. + * @param { boolean } access Set whether to manually play audio-only videos. + * {@code true}True means setting up automatic playback of audio videos requires users to manually click, {@code false} otherwise. + * Default value: true. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -8273,7 +8692,8 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { onScroll(callback: Callback<OnScrollEvent>): WebAttribute; /** - * Triggered when the Web page receives an ssl Error. + * Called to notify users when an SSL error occurs with a request for the main frame. + * To include errors with requests for subframes, use the OnSslErrorEvent API. * * @param { function } callback The triggered callback when the Web page receives an ssl Error. * @returns { WebAttribute } @@ -8281,7 +8701,8 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Triggered when the Web page receives an ssl Error. + * Called to notify users when an SSL error occurs with a request for the main frame. + * To include errors with requests for subframes, use the OnSslErrorEvent API. * * @param { function } callback The triggered callback when the Web page receives an ssl Error. * @returns { WebAttribute } @@ -8290,7 +8711,8 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 11 */ /** - * Triggered when the Web page receives an ssl Error. + * Called to notify users when an SSL error occurs with a request for the main frame. + * To include errors with requests for subframes, use the OnSslErrorEvent API. * * @param { Callback<OnSslErrorEventReceiveEvent> } callback The triggered callback when the Web page receives an ssl Error. * @returns { WebAttribute } @@ -8301,7 +8723,8 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { onSslErrorEventReceive(callback: Callback<OnSslErrorEventReceiveEvent>): WebAttribute; /** - * Triggered when the Web page receives an ssl Error. + * Called to notify users when an SSL error occurs during the loading of resources (for the main frame and subframes). + * To handle SSL errors for requests for the main frame, use the isMainFrame field to distinguish. * * @param { OnSslErrorEventCallback } callback The triggered callback when the Web page receives an ssl Error. * @returns { WebAttribute } @@ -8358,7 +8781,16 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { */ /** * Triggered when web page requires the user to create a window. - * + * If the {@link setWebController} interface is not called, the render process will be blocked. + * If no new window is created, it is set to null when calling the {@link setWebController} interface, + * informing the Web that no new window is created. + * The new window should avoid being directly overlaid on the original Web component, + * and its URL (such as address bar) should be clearly displayed in the same form as the main page to + * prevent users from being confused. If credible URL visualization management cannot be achieved, + * it is necessary to consider prohibiting the creation of new windows. It should be noted that the source of + * the new window request cannot be traced reliably, and it may be initiated by a third party iframe. + * The application needs to take defensive measures such as sandbox isolation and permission restriction + * by default to ensure security. * @param { Callback<OnWindowNewEvent> } callback The triggered callback when web page requires the user to create a window. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core @@ -8376,8 +8808,9 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Triggered when web page requires the user to close a window. - * + * Notifies the user of the window closing request. + * Like {@link onWindowNew}, from a security perspective, applications should ensure that users can know that + * the page they interact with is closed. * @param { function } callback The triggered callback when web page requires the user to close a window. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core @@ -8397,7 +8830,7 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { */ /** * Set whether multiple windows are supported. - * + * When multiple windows permissions are enabled, the {@link onWindowNew} event needs to be implemented. * @param { boolean } multiWindow True if it needs to be triggered manually by the user else false. * The default value is false. * @returns { WebAttribute } @@ -8417,7 +8850,6 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { */ /** * Key events notify the application before the WebView consumes them. - * * @param { function } callback Key event info. * @returns { WebAttribute } True if the application consumes key events else false. * @syscap SystemCapability.Web.Webview.Core @@ -8435,9 +8867,10 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set the font of webview standard font library. The default font is "sans serif". + * Sets the standard font family for the web page. * - * @param { string } family Standard font set series. + * @param { string } family Sets the standard font family for the web page. + * Default value: sans-serif. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8454,9 +8887,10 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set the font of webview serif font library. The default font is "serif". + * Sets the standard font family for the web page. * - * @param { string } family Serif font set series. + * @param { string } family Sets the standard font family for the web page. + * Default value: sans-serif. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8473,9 +8907,10 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set the font of webview sans serif font library. The default font is "sans-serif". + * Sets the sans serif font family for the web page. * - * @param { string } family Sans serif font set series. + * @param { string } family Sets the sans serif font family for the web page. + * Default value: sans-serif. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8492,9 +8927,10 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set the font of webview fixed font library. The default font is "monospace". + * Sets the fixed font family for the web page. * - * @param { string } family Fixed font set series. + * @param { string } family Sets the fixed font family for the web page. + * Default value: monospace. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8511,9 +8947,10 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set the font of webview fantasy font library. The default font is "fantasy". + * Sets the fantasy font family for the web page. * - * @param { string } family fantasy font set series. + * @param { string } family Sets the fantasy font family for the web page. + * Default value: fantasy. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8530,9 +8967,10 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set the font of webview cursive font library. The default font is "cursive". + * Sets the cursive font family for the web page. * - * @param { string } family Cursive font set series. + * @param { string } family Sets the cursive font family for the web page. + * Default value: cursive. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8549,9 +8987,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set the default fixed font value of webview. The default value is 13, ranging from 1 to 72. + * Sets the default font size for the web page. * - * @param { number } size Font size. + * @param { number } size Default fixed font size to set, in px. + * The value ranges from -2^31 to 2^31-1. In actual rendering, + * values greater than 72 are handled as 72, and values less than 1 are handled as 1. + * Default value: 13. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8568,9 +9009,11 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set the default font value of webview. The default value is 16, ranging from 1 to 72. + * Sets the default font size for the web page. * - * @param { number } size Font size. + * @param { number } size Default font size to set, in px. + * The value ranges from -2^31 to 2^31-1. In actual rendering, values greater than 72 are handled as 72, + * and values less than 1 are handled as 1. Default value: 16. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8587,9 +9030,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set the minimum value of webview font. The default value is 8, ranging from 1 to 72. + * Sets the minimum font size for the web page. * - * @param { number } size Font size. + * @param { number } size Minimum font size to set, in px. + * The value ranges from -2^31 to 2^31-1. In actual rendering, + * values greater than 72 are handled as 72, and values less than 1 are handled as 1. + * Default value: 8 * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -8607,9 +9053,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set the logical minimum value of webview font. The default value is 8, ranging from 1 to 72. + * Sets the minimum logical font size for the web page. * - * @param { number } size Font size. + * @param { number } size Minimum logical font size to set, in px. + * The value ranges from -2^31 to 2^31-1. In actual rendering, + * values greater than 72 are handled as 72, and values less than 1 are handled as 1. + * Default value: 8 * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8680,6 +9129,11 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { /** * Set whether paint horizontal scroll bar. * + * <p><strong>API Note</strong>:<br> + * After controlling the horizontal scrollbar's visibility through the @State variable, you need to call controller.refresh() to take effect.<br> + * When frequently changing the @State variable dynamically, it is recommended to match the toggle variable with the Web component one-to-one. + * </p> + * * @param { boolean } horizontalScrollBar True if it needs to paint horizontal scroll bar. * The default value is true. * @returns { WebAttribute } @@ -8700,7 +9154,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set whether paint vertical scroll bar. + * Set whether paint vertical scroll bar, including the system default scrollbar and user-defined scrollbar. + * + * <p><strong>API Note</strong>:<br> + * After controlling the vertical scrollbar's visibility through the @State variable, you need to call controller.refresh() to take effect.<br> + * When frequently changing the @State variable dynamically, it is recommended to match the toggle variable with the Web component one-to-one. + * </p> * * @param { boolean } verticalScrollBar True if it needs to paint vertical scroll bar. * The default value is true. @@ -8844,9 +9303,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 9 */ /** - * Set whether enable pinch smooth mode. + * Sets whether to enable smooth pinch mode for the web page. * - * @param { boolean } isEnabled True if it needs to enable smooth mode. + * @param { boolean } isEnabled Whether to enable smooth pinch mode for the web page. + * {@code true} means to enable smooth pinch mode for the web page; + * {@code false} means not to enable smooth pinch mode for the web page. + * The default value is false. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8866,10 +9328,27 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { */ /** * Whether the window can be open automatically through JavaScript. + * <p><strong>API Note</strong>:<br> + * This API takes effect only when {@link JavaScript} is enabled. + * This API opens a new window when {@link multiWindowAccess} is enabled and opens a local window + * when {@link multiWindowAccess} is disabled. + * The default value of **flag** is subject to the settings of the **persist.web.allowWindowOpenMethod.enabled** system attribute. + * If this attribute is not set, the default value of **flag** is **false**. + * To check the settings of **persist.web.allowWindowOpenMethod.enabled**, + * run the **hdc shell param get persist.web.allowWindowOpenMethod.enabled** command. + * If the attribute value is 1, it means the system attribute is enabled; + * If the attribute value is 0 or does not exist, it means that the system attribute has not been enabled. + * you can run the **hdc shell param set persist.web.allowWindowOpenMethod.enabled 1** command to enable it. + * </p> * * @param { boolean } flag If it is true, the window can be opened automatically through JavaScript. * If it is false and user behavior, the window can be opened automatically through JavaScript. * Otherwise, the window cannot be opened. + * The user behavior here refers to the behavior of requesting to open a new window (window. open) within 5 seconds after + * the user clicks or performs other operations on the web component. + * The default value is associated with system properties. + * When the system property **persist.web.allowWindowOpenMethod.enabled** is set to true, the default value is true. + * If the system property is not set, the default value is false. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8895,9 +9374,9 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 11 */ /** - * Triggered when the playing state of audio on web page changed. + * Set the callback function when the audio playback status on the webpage changes. * - * @param { Callback<OnAudioStateChangedEvent> } callback The playing state of audio on web page. + * @param { Callback<OnAudioStateChangedEvent> } callback Callback invoked when the audio playback status on the webpage changes. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -8994,8 +9473,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 10 */ /** - * Triggered when The controller is bound to the web component, this controller must be a WebviewController. - * This callback can not use the interface about manipulating web pages. + * The callback is triggered when the Controller is successfully bound to the Web component, + * and the Controller must be a WebviewController, and it is forbidden to call the interface related to + * the Web component before the event callback, otherwise a js-error exception will be thrown. + * Because the webpage has not been loaded when the callback is called, it is impossible to use interfaces related to + * operating webpages in the callback, such as {@link zoomIn} and {@link zoomOut}, and you can use interfaces unrelated to + * operating webpages such as {@link loadUrl} and {@link getWebId}. * @param { function } callback The triggered callback when web controller initialization success. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core @@ -9064,7 +9547,18 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { onIntelligentTrackingPreventionResult(callback: OnIntelligentTrackingPreventionCallback): WebAttribute; /** - * Injects the JavaScripts before Webview creates the DOM tree, and then the JavaScript snippet will run after the document has been created. + * Injects the JavaScripts script into the Web component. + * When the specified page or document starts to be loaded, the script is executed on any page whose source matches scriptRules. + * <p><strong>API Note</strong>:<br> + * The script runs before any JavaScript code of the page, when the DOM tree may not have been loaded or rendered. + * The script is executed in the lexicographic order, not array order. + * If the array order is required, you are advised to use the runJavaScriptOnDocumentStart interface. + * You are not advised to use this API together with runJavaScriptOnDocumentStart. + * When scripts with identical content are injected multiple times, + * silent deduplication will be performed: repeated scripts will neither be displayed nor prompted, + * and the scriptRules used during the first injection will be adopted. + * </p> + * * @param { Array<ScriptItem> } scripts - The array of the JavaScripts to be injected. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core @@ -9074,7 +9568,18 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { javaScriptOnDocumentStart(scripts: Array<ScriptItem>): WebAttribute; /** - * Injects the JavaScripts before Webview creates the DOM tree, and then the JavaScript snippet will run after the document has been created. + * Injects the JavaScripts script into the Web component. + * When the specified page or document has been loaded, the script is executed on any page whose source matches scriptRules. + * <p><strong>API NOTE</strong>:<br> + * The script runs after any JavaScript code of the page, when the DOM tree has been loaded and rendered. + * The script is excuted in the lexicographic order, not array order. + * If the array order is required, you are advised to use the runJavaScriptOnDocumentEnd interface. + * You are not advised to use this API together with runJavaScriptOnDocumentEnd. + * When scripts with identical content are injected multiple times, + * silent deduplication will be performed: repeated scripts will neither be displayed nor prompted, + * and the scriptRules used during the first injection will be adopted. + * <p> + * * @param { Array<ScriptItem> } scripts - The array of the JavaScripts to be injected. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core @@ -9084,8 +9589,26 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { javaScriptOnDocumentEnd(scripts: Array<ScriptItem>): WebAttribute; /** - * Set web layout Mode. - * @param { WebLayoutMode } mode - The web layout mode, which can be {@link WebLayoutMode}. + * Sets the web layout mode. + * + * <p><strong>API Note</strong>:<br> + * Currently, only two web layout modes are supported: WebLayoutMode.NONE and WebLayoutMode.FIT_CONTENT. + * The following restrictions apply with the usage of WebLayoutMode.FIT_CONTENT: + * - If the Web component is wider or longer than 7680 px, specify the RenderMode.SYNC_RENDER mode + * when creating the Web component; otherwise, the screen may be blank. + * - After the Web component is created, dynamic switching of the layoutMode is not supported. + * - The width and height of a Web component cannot exceed 500,000 px when the RenderMode.SYNC_RENDER mode is specified, + * and cannot exceed 7680 px when the RenderMode.ASYNC_RENDER mode is specified. + * - Frequent changes to the page width and height will trigger a re-layout of the Web component, + * which can affect the user experience. + * - Waterfall web pages are not supported (drop down to the bottom to load more). + * - Only height adaptation is supported. Width adaptation is not supported. + * - Because the height is adaptive to the web page height, + * the component height cannot be changed by modifying the component height attribute. + * </p> + * + * @param { WebLayoutMode } mode - The web layout mode, follow the system or adaptive layout. + * The default value is WebLayoutMode.NONE. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -9105,6 +9628,19 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { /** * Called to setting the nested scroll options. * + * <p><strong>API Note</strong>:<br> + * You can set four directions: up, down, left, and right, or set nested scrolling modes for forward and backward directions + * to achieve scrolling linkage with the parent component.<br> + * When value is of type NestedScrollOptionsExt (four directions: up, down, left, and right), the default scrolling options + * for scrollUp, scrollDown, scrollLeft, and scrollRight are NestedScrollMode.SELF_FIRST.<br> + * When value is of type NestedScrollOptions (two directions: forward and backward), the default scrolling options for scrollForward + * and scrollBackward are NestedScrollMode.SELF_FIRST.<br> + * Supported nested scrolling containers: Grid, List, Scroll, Swiper, Tabs, WaterFlow, Refresh, bindSheet.<br> + * Supported nested scrolling input events: gestures, mouse, and trackpad.<br> + * In nested scrolling scenarios, since web scrolling to the edge will prioritize triggering the overscroll bounce effect, + * it is recommended to set overScrollMode to OverScrollMode.NEVER to avoid affecting the user experience in this scenario. + * </p> + * * @param { NestedScrollOptions | NestedScrollOptionsExt } value - options for * nested scrolling. * @returns { WebAttribute } the attribute of the scroll. @@ -9117,6 +9653,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { /** * Sets the enable native embed mode for web. * + * <p><strong>API Note</strong>: + * <strong>Performance Note</strong>: + * <p>For details about how to rendering native components on the Web using same-layer rendering, + * see [Rendering Native Components on the Web Using Same-Layer Rendering]{@link https://developer.huawei.com/consumer/en/doc/best-practices/bpta-render-web-using-same-layer-render} + * </p> + * * @param { boolean } mode - True if it needs to enable native embed mode. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core @@ -9126,10 +9668,17 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { enableNativeEmbedMode(mode: boolean): WebAttribute; /** - * Register native pattern with specific tag and type. + * Registers the HTML tag name and type for same-layer rendering. + * The tag name only supports object and embed. + * The tag type only supports visible ASCII characters.<br> + * If the specified type is the same as the W3C standard object or embed type, + * the ArkWeb kernel identifies the type as a non-same-layer tag.<br> + * This API is also controlled by the enableNativeEmbedMode API and + * does not take effect if same-layer rendering is not enabled. When this API is not used, + * the ArkWeb engine recognizes the embed tags with the "native/" prefix as same-layer tags. * - * @param { string } tag - Tag name used by html webpage. - * @param { string } type - Type of the tag. + * @param { string } tag - Tag name. + * @param { string } type - Type of the tag, The kernel matches this parameter with a prefix. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -9140,6 +9689,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { /** * Triggered when embed lifecycle changes. * + * <p><strong>API Note</strong>: + * <strong>Performance Note</strong>: + * <p>For details about how to rendering native components on the Web using same-layer rendering, + * see [Rendering Native Components on the Web Using Same-Layer Rendering]{@link https://developer.huawei.com/consumer/en/doc/best-practices/bpta-render-web-using-same-layer-render} + * </p> + * * @param { function } callback - Function Triggered when embed lifecycle changes. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core @@ -9149,7 +9704,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { onNativeEmbedLifecycleChange(callback: (event: NativeEmbedDataInfo) => void): WebAttribute; /** - * Triggered when embed visibility changes. + * Called when the visibility of a same-layer tag (such as an Embed tag or an Object tag) on a web page changes in the viewport. + * By default, the same-layer tag is invisible. If the rendering tag is visible when you access the page for the first time, + * the callback is triggered; otherwise, it is not triggered. That is, if the same-layer tag changes from a non-zero value to 0 x 0, + * the callback is triggered. If the rendering tag size changes from 0 x 0 to a non-zero value, the callback is not triggered. + * If all the same-layer tags are invisible, they are reported as invisible. If all the same-layer rendering tags or part of them are visible, + * they are reported as invisible. * * @param { OnNativeEmbedVisibilityChangeCallback } callback - Callback triggered when embed visibility changes. * @returns { WebAttribute } @@ -9161,6 +9721,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { /** * Triggered when gesture effect on embed tag. * + * <p><strong>API Note</strong>: + * <strong>Performance Note</strong>: + * <p>For details about how to rendering native components on the Web using same-layer rendering, + * see [Rendering Native Components on the Web Using Same-Layer Rendering]{@link https://developer.huawei.com/consumer/en/doc/best-practices/bpta-render-web-using-same-layer-render} + * </p> + * * @param { function } callback - Function Triggered when gesture effect on embed tag. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core @@ -9169,10 +9735,20 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { */ onNativeEmbedGestureEvent(callback: (event: NativeEmbedTouchInfo) => void): WebAttribute; + /** + * Triggered when mouse effect on embed tag. + * + * @param { MouseInfoCallback } callback - callback Triggered when mouse effect on embed tag. + * @returns { WebAttribute } + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + onNativeEmbedMouseEvent(callback: MouseInfoCallback): WebAttribute; + /** * Called to set copy option * - * @param { CopyOptions } value - copy option. + * @param { CopyOptions } value - copy option.The default value is CopyOptions.LocalDevice. * @returns { WebAttribute } the attribute of the scroll. * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -9193,9 +9769,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { onOverrideUrlLoading(callback: OnOverrideUrlLoadingCallback): WebAttribute; /** - * Enable whether to automatically resize text. The default value is true. + * Sets whether automatic text resizing is enabled. * - * @param { boolean } textAutosizing - Whether to enable text autosizing. + * @param { boolean } textAutosizing - Whether automatic text resizing is enabled. + * {@code true} means enable text autosizing; + * {@code false} means disable text autosizing. + * Default value: true. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -9204,9 +9783,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { textAutosizing(textAutosizing: boolean): WebAttribute; /** - * Enable app creates native media player to play web page media source. + * Enable the application takeover of web media playback feature. * * @param { NativeMediaPlayerConfig } config - The configuration of native media player. + * enable: whether to enable the feature, shouldOverlay: whether the image of the video player + * taken over by the application will overlay the web page content, if this feature is enabled. + * Default value: {enable: false, shouldOverlay: false}. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -9216,7 +9798,12 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { /** * Triggered when render process not responding. - * + * If the Web component can't handle the input event, or can't navigate to the new URL within a reasonable time range, + * the Web page process is considered unresponsive and the callback will be triggered. + * As long as the web process has been unresponsive, this callback may continue to trigger until + * the web process responds again, at which time {@link onRenderProcessResponding} will trigger. + * Applications can terminate the associated rendering process through the WebviewController interface {@link terminateRenderProcess}, + * which may affect other Web components in the same rendering process. * @param { OnRenderProcessNotRespondingCallback } callback The triggered function when render process not responding. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core @@ -9225,7 +9812,8 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { onRenderProcessNotResponding(callback: OnRenderProcessNotRespondingCallback): WebAttribute; /** - * Triggered when the unresponsive render process becomes responsive. + * This callback function is triggered when the rendering process changes from unresponsive state to normal operation state, + * which indicates that the webpage is not really stuck. * * @param { OnRenderProcessRespondingCallback } callback The triggered function when the unresponsive render process becomes responsive. * @returns { WebAttribute } @@ -9236,18 +9824,29 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { /** * Set the custom text menu. + * The Web component custom menu extension item interface allows users to set the extension item's text content, icon, and callback method. + * + * <p><strong>API Note</strong>:<br> + * This interface only supports selecting plain text. When the selected content contains images and other non-text content, + * garbled characters will be displayed in the action information. + * </p> * * @param { Array<ExpandedMenuItemOptions> } expandedMenuOptions - Customize text menu options. + * The number of menu items, the content size of the menu, and the startIcon + * icon size are consistent with the ArkUI Menu component. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @since 12 + * @deprecated since 20 + * @useinstead ohos.web.WebAttribute#editMenuOptions */ selectionMenuOptions(expandedMenuOptions: Array<ExpandedMenuItemOptions>): WebAttribute; /** - * Triggered when the viewport-fit meta is detected for web page. + * Called when the viewport-fit configuration in the web page's <meta> tag changes. + * The application can adapt its layout to the viewport within this callback. * - * @param { OnViewportFitChangedCallback } callback - The callback for onViewportFitChanged. + * @param { OnViewportFitChangedCallback } callback - Callback invoked when the viewport-fit configuration in the web page's <meta> tag changes. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -9256,10 +9855,11 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { onViewportFitChanged(callback: OnViewportFitChangedCallback): WebAttribute; /** - * When the soft keyboard is about to be displayed on the current Web, - * it gives the application the opportunity to intercept the system keyboard attachment. - * The application can return the keyboard options to control the web to - * pull up the soft keyboard of the different type. + * Editable elements (such as input labels) in web pages will call back to this interface before pulling up + * the soft keyboard. Applications can use this interface to intercept the pop-up of the system soft keyboard + * and configure the application-customized soft keyboard (according to this interface, + * the application can decide to use the system default soft keyboard/the system soft keyboard with + * the enter key customized/all the soft keyboards customized by the application). * * @param { WebKeyboardCallback } callback - The callback for onInterceptKeyboardAttach. * @returns { WebAttribute } @@ -9283,9 +9883,11 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { onAdsBlocked(callback: OnAdsBlockedCallback): WebAttribute; /** - * Set web avoidance keyboard mode. The default value is WebKeyboardAvoidMode.RESIZE_CONTENT. - * + * When the keyboard avoidance mode set by UIContext is {@link KeyboardAvoidMode.RESIZE} mode, + * the interface function will not take effect. * @param { WebKeyboardAvoidMode } mode - The web keyboard avoid mode, which can be {@link WebKeyboardAvoidMode}. + * Web soft keyboard avoidance is not recommended in nested scrolling scenes, + * including RESIZE_VISUAL and RESIZE_CONTENT. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -9296,7 +9898,23 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { /** * Set the custom text menu. * + * <p><strong>API Note</strong>:<br> + * The onCreateMenu interface is used to modify, add, and delete menu options.If you want to hide the text menu, + * you need to return an empty array.<br> + * The onMenuItemClick interface allows you to define the callback function for menu options.This function is + * triggered when a menu option is clicked, and it determines whether to execute the system's default callback + * based on the return value. Returning true prevents the system callback from executing, while returning false + * continues with the system callback.<br> + * The editMenuOptions interface makes the selectionMenuOptions (deprecated) not work when used at the same time. + * </p> + * * @param { EditMenuOptions } editMenu - Customize text menu options. + * The number of menu items, as well as the content size and icon size of the menu, + * should be consistent with the ArkUI Menu component. + * The system-provided id enumeration values (TextMenuItemId) in the menu are only + * supportedfor CUT, COPY, PASTE, and SELECT_ALL in the web. + * The textRange parameter in the onMenuItemClick function is meaningless in the web, + * and the input value is -1. * @returns { WebAttribute } * @syscap SystemCapability.Web.Webview.Core * @since 12 @@ -9327,6 +9945,16 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { bindSelectionMenu(elementType: WebElementType, content: CustomBuilder, responseType: WebResponseType, options?: SelectionMenuOptionsExt): WebAttribute; + /** + * Sets whether to optimize parser budget to reduce FCP time + * + * @param { boolean} optimizeParserBudget Default value is false, set true to enable optimize parser budget. + * @returns { WebAttribute } + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + optimizeParserBudget(optimizeParserBudget: boolean): WebAttribute; + /** * Sets whether to follow the system font weight. * @@ -9347,16 +9975,6 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { */ enableWebAVSession(enabled: boolean): WebAttribute; - /** - * Sets whether to optimize parser budget to reduce FCP time - * - * @param { boolean} optimizeParserBudget Default value is false, set true to enable optimize parser budget. - * @returns { WebAttribute } - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - optimizeParserBudget(optimizeParserBudget: boolean): WebAttribute; - /** * Injects the JavaScripts that will be run just after document object has been created. * @@ -9396,6 +10014,49 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { * @since 16 */ nativeEmbedOptions(options?: EmbedOptions): WebAttribute; + + /** + * Enable data detector. + * + * @param { boolean } enable - {@code true} means enable data detector in Web;{@code false} otherwise. + * The default value is false. + * @returns { WebAttribute } The attribute of the web. + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + enableDataDetector(enable: boolean): WebAttribute; + + /** + * Data detector with config. + * + * @param { TextDataDetectorConfig } config - The config of text data detector. + * @returns { WebAttribute } The attribute of the web. + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + dataDetectorConfig(config: TextDataDetectorConfig): WebAttribute; + + /** + * Triggered when the web page is activated for window.open called by other web component. + * + * @param { Callback<void> } callback the triggered function when the web page is activated for window.open called by other web component. + * @returns { WebAttribute } + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + onActivateContent(callback: Callback<void>): WebAttribute; + + /** + * Set up a condition that bypass vsync + * If the condition is matched, the drawing schedule does not reply on Vsync scheduling + * and directly rendering and drawing + * + * @param { WebBypassVsyncCondition } condition - The condition to bypass render vsync. + * @returns { WebAttribute } + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + bypassVsyncCondition(condition: WebBypassVsyncCondition): WebAttribute; } /** @@ -9415,6 +10076,15 @@ declare class WebAttribute extends CommonMethod<WebAttribute> { /** * Defines Web Component. * + * <p><strong>API Note</strong>: + * + * <strong>Performance Note</strong>: + * <p>For details about how to optimize the compilation, resource loading, and JSBridge performance, + * see [Optimizing Web Page Loading]{@link https://developer.huawei.com/consumer/en/doc/best-practices/bpta-web-develop-optimization} + * <p>When the white screen duration is long due to complex web page parsing, + * you can enable [optimizeParserBudget]{@link WebAttribute.optimizeParserBudget} to reduce the first frame rendering content.</p> + * </p> + * * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -9524,6 +10194,7 @@ declare interface SslErrorEvent { * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 + * @deprecated since 20 */ declare interface ExpandedMenuItemOptions { /** @@ -9533,6 +10204,7 @@ declare interface ExpandedMenuItemOptions { * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 + * @deprecated since 20 */ content: ResourceStr; @@ -9543,6 +10215,7 @@ declare interface ExpandedMenuItemOptions { * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 + * @deprecated since 20 */ startIcon?: ResourceStr; @@ -9553,6 +10226,7 @@ declare interface ExpandedMenuItemOptions { * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 + * @deprecated since 20 */ action: (selectedText: {plainText: string}) => void; } @@ -9611,8 +10285,10 @@ declare interface NestedScrollOptionsExt { */ declare interface EmbedOptions { /** - * Whether the embed element support the default intrinsic size of 300 * 150. - * <br>Default value is false. If false, then the intrinsic size is 0 * 0. + * Whether the embed element support the default intrinsic size of 300 * 150, expressed in CSS pixels. + * <br>When CSS size is set, the embed element size is CSS size, otherwise it is intrinsic size. + * <br>If true, then the intrinsic size is 300 * 150. + * <br>If false, the embed element will not be rendered when the CSS size is not set. * * @type { ?boolean } * @default false @@ -9620,4 +10296,17 @@ declare interface EmbedOptions { * @since 16 */ supportDefaultIntrinsicSize?: boolean; + + /** + * Whether the {@link onNativeEmbedVisibilityChange} event supports display-related attributes + * of the embed element. + * <br>Default value is false. If true, the changes of the display-related attributes of the + * embed element will be reported through the {@link onNativeEmbedVisibilityChange} event. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + supportCssDisplayChange?: boolean; } diff --git a/api/@internal/component/ets/xcomponent.d.ts b/api/@internal/component/ets/xcomponent.d.ts index e18066bc58623a4d3f7d0265d32eb4c6a38ed5b0..c49c461306c743e3d4e427a355eb5de5c7529e38 100644 --- a/api/@internal/component/ets/xcomponent.d.ts +++ b/api/@internal/component/ets/xcomponent.d.ts @@ -19,83 +19,155 @@ */ /** - * Surface Rectangle information. + * Describes the rectangle of the surface held by the XComponent. * * @interface SurfaceRect * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ +/** + * Surface Rectangle information. + * + * @interface SurfaceRect + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ declare interface SurfaceRect { /** - * The horizontal offset of the surface relative to XComponent. + * X coordinate of the surface rectangle relative to the upper left corner of the XComponent. + * Unit: px. + * If offsetX is not set, the surface rectangle is centered along the x-axis relative to the upper left corner of the XComponent. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * The horizontal offset of the surface relative to XComponent. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ offsetX?: number; /** - * The vertical offset of the surface relative to XComponent. + * Y coordinate of the surface rectangle relative to the upper left corner of the XComponent. + * Unit: px. + * If offsetY is not set, the surface rectangle is centered along the y-axis relative to the upper left corner of the XComponent. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * The vertical offset of the surface relative to XComponent. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ offsetY?: number; /** - * The width of the surface created by XComponent + * Width of the surface rectangle. + * Unit: px. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * The width of the surface created by XComponent + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ surfaceWidth: number; /** - * The height of the surface created by XComponent + * Height of the surface rectangle. + * Unit: px. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * The height of the surface created by XComponent + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ surfaceHeight: number; } /** - * Surface rotation options. + * Defines whether the orientation of the surface held by the current XComponent is locked when the screen rotates. * * @interface SurfaceRotationOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ +/** + * Surface rotation options. + * + * @interface SurfaceRotationOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ declare interface SurfaceRotationOptions { /** - * Lock property of the surface rotation. + * Whether the orientation of the surface is locked when the screen rotates. + * If this parameter is not set, the default value false is used, indicating that the orientation is not locked. * * @type { ?boolean } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * Lock property of the surface rotation. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ lock?: boolean; } /** - * Defines XComponentController + * Defines the controller of the XComponent. + * You can bind the controller to the XComponent to call the component APIs through the controller. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Defines XComponentController + * Defines the controller of the XComponent. + * You can bind the controller to the XComponent to call the component APIs through the controller. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -104,13 +176,13 @@ declare interface SurfaceRotationOptions { */ declare class XComponentController { /** - * Constructor. + * A constructor used to create a XComponentController instance. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Constructor. + * A constructor used to create a XComponentController instance. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -120,16 +192,18 @@ declare class XComponentController { constructor(); /** - * Get the id of surface created by XComponent. + * Obtains the ID of the surface held by the XComponent, which can then be used for @ohos APIs. + * This API works only when type of the XComponent is set to SURFACE("surface") or TEXTURE. * - * @returns { string } The id of surface created by XComponent. + * @returns { string } ID of the surface held by the XComponent. * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 */ /** - * Get the id of surface created by XComponent. + * Obtains the ID of the surface held by the XComponent, which can then be used for @ohos APIs. + * This API works only when type of the XComponent is set to SURFACE("surface") or TEXTURE. * - * @returns { string } The id of surface created by XComponent. + * @returns { string } ID of the surface held by the XComponent. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -138,16 +212,20 @@ declare class XComponentController { getXComponentSurfaceId(): string; /** - * Get the context of native XComponent. + * Obtains the context of an XComponent object. + * This API works only when type of the XComponent is set to SURFACE("surface") or TEXTURE. * * @returns { Object } The context of native XComponent. * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Get the context of native XComponent. + * Obtains the context of an XComponent object. + * This API works only when type of the XComponent is set to SURFACE("surface") or TEXTURE. * - * @returns { Object } The context of native XComponent. + * @returns { Object } Context of the XComponent object. + * The APIs contained in the context are defined by developers. + * The context is passed in as the first parameter of the onLoad callback. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -156,9 +234,10 @@ declare class XComponentController { getXComponentContext(): Object; /** - * Set the surface size created by XComponent. + * Sets the width and height of the surface held by the XComponent. + * This API works only when type of the XComponent is set to SURFACE("surface") or TEXTURE. * - * @param { object } value - surface size + * @param { object } value - Width and Height of the surface held by the XComponent. * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 9 * @deprecated since 12 @@ -169,82 +248,156 @@ declare class XComponentController { surfaceHeight: number; }): void; + /** + * Sets the rectangle for the surface held by the XComponent. + * This API works only when type of the XComponent is set to SURFACE("surface") or TEXTURE. + * + * @param { SurfaceRect } rect - Rectangle of the surface held by the XComponent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ /** * Set the rectangle information of surface created by XComponent. * * @param { SurfaceRect } rect - The surface rectangle information. * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform * @atomicservice - * @since 12 + * @since 20 */ setXComponentSurfaceRect(rect: SurfaceRect): void; /** - * Get the rectangle information of Surface created by XComponent. + * Obtains the rectangle of the surface held by the XComponent. + * This API works only when type of the XComponent is set to SURFACE("surface") or TEXTURE. * - * @returns { SurfaceRect } The surface rectangle information. + * @returns { SurfaceRect } Rectangle of the surface held by the XComponent. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * Get the rectangle information of surface created by XComponent. + * + * @returns { SurfaceRect } The surface rectangle information. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ getXComponentSurfaceRect(): SurfaceRect; + /** + * Sets whether to lock the orientation of the surface held by this XComponent when the screen rotates. + * This API is effective only when the XComponent type is SURFACE ("surface"). + * + * @param { SurfaceRotationOptions } rotationOptions - Whether to lock the orientation of the surface held by the current XComponent when the screen rotates. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ /** * Set the rotation options of the Surface created by XComponent. * * @param { SurfaceRotationOptions } rotationOptions - The surface rotation options. * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform * @atomicservice - * @since 12 + * @since 20 */ setXComponentSurfaceRotation(rotationOptions: SurfaceRotationOptions): void; /** - * Get the rotation options result of the Surface created by XComponent. + * Obtains whether the orientation of the surface held by this XComponent is locked when the screen rotates. + * This API is effective only when the XComponent type is SURFACE ("surface"). * * @returns { Required<SurfaceRotationOptions> } The surface rotation options result. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * Get the rotation options result of the Surface created by XComponent. + * + * @returns { Required<SurfaceRotationOptions> } The surface rotation options result. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ getXComponentSurfaceRotation(): Required<SurfaceRotationOptions>; + /** + * Triggered when the surface held by the XComponent is created. + * This API works only when type of the XComponent is set to SURFACE("surface") or TEXTURE. + * + * @param { string } surfaceId - ID of the surface held by the XComponent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ /** * Called after the surface is first created. * * @param { string } surfaceId - The id of the surface created by XComponent. * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform * @atomicservice - * @since 12 + * @since 20 */ onSurfaceCreated(surfaceId: string): void; + /** + * Triggered when the surface held by the XComponent has its size changed (including the time when the XComponent is created with the specified size). + * This API works only when type of the XComponent is set to SURFACE ("surface") or TEXTURE. + * + * @param { string } surfaceId - ID of the surface held by the XComponent. + * @param { SurfaceRect } rect - Rectangle for displaying the surface held by the XComponent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ /** * Called after the surface rectangle information is changed. * * @param { string } surfaceId - The id of the surface created by XComponent. * @param { SurfaceRect } rect - The rectangle information of the surface created by XComponent. * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform * @atomicservice - * @since 12 + * @since 20 */ onSurfaceChanged(surfaceId: string, rect: SurfaceRect): void; + /** + * Triggered when the surface held by the XComponent is destroyed. + * This API works only when type of the XComponent is set to SURFACE ("surface") or TEXTURE. + * + * @param { string } surfaceId - ID of the surface held by the XComponent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ /** * Called when the surface is about to be destroyed. * * @param { string } surfaceId - The id of the surface created by XComponent. * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform * @atomicservice - * @since 12 + * @since 20 */ onSurfaceDestroyed(surfaceId: string): void; /** - * Start image analyzer. + * Starts AI image analysis in the given settings. + * Before calling this API, make sure the AI image analyzer is enabled. + * Because the image frame used for analysis is the one captured when this API is called, pay attention to the invoking time of this API. + * If this API is repeatedly called before the execution is complete, an error callback is triggered. * - * @param { ImageAnalyzerConfig } config - Image analyzer config. - * @returns { Promise<void> } The promise returned by the function. + * @param { ImageAnalyzerConfig } config - Settings of the AI image analyzer. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 110001 - Image analysis feature is unsupported. * @throws { BusinessError } 110002 - Image analysis is currently being executed. * @throws { BusinessError } 110003 - Image analysis is stopped. @@ -255,46 +408,97 @@ declare class XComponentController { startImageAnalyzer(config: ImageAnalyzerConfig): Promise<void>; /** - * Stop image analyzer. + * Stops AI image analysis. + * The content displayed by the AI image analyzer will be destroyed. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ stopImageAnalyzer(): void; + + /** + * Get a Canvas for drawing into the surface created by XComponent. + * + * @returns { DrawingCanvas | null} Returns a Canvas for drawing into the surface created by XComponent. + * Returns null if the surface is not available. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + lockCanvas(): DrawingCanvas | null; + + /** + * Posts the new contents of the Canvas to the surface created by XComponent and releases the Canvas. + * + * @param { DrawingCanvas } canvas - The canvas previously obtained from lockCanvas. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + unlockCanvasAndPost(canvas: DrawingCanvas):void; } /** - * Defines the xcomponent options. + * Defines the options of the XComponent. * * @interface XComponentOptions * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ +/** + * Defines the xcomponent options. + * + * @interface XComponentOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ declare interface XComponentOptions { /** - * The type of xcomponent + * Type of the component. * * @type { XComponentType } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * The type of xcomponent + * + * @type { XComponentType } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ type: XComponentType; /** - * The controller of xcomponent. + * Controller bound to the component, which can be used to invoke methods of the component. + * This parameter is valid only when type is SURFACE or TEXTURE. * * @type { XComponentController } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 */ + /** + * The controller of xcomponent. + * + * @type { XComponentController } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ controller: XComponentController; /** - * Image ai options. + * AI image analysis options. + * You can configure the analysis type or bind an analyzer controller through this parameter. * * @type { ?ImageAIOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -320,7 +524,7 @@ declare interface XComponentOptions { * @interface NativeXComponentParameters * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ declare interface NativeXComponentParameters { /** @@ -329,7 +533,7 @@ declare interface NativeXComponentParameters { * @type { XComponentType } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ type: XComponentType; @@ -339,7 +543,7 @@ declare interface NativeXComponentParameters { * @type { ?ImageAIOptions } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ imageAIOptions?: ImageAIOptions; } @@ -401,6 +605,16 @@ interface XComponentInterface { * @atomicservice * @since 12 */ + /** + * Constructor parameters + * + * @param { XComponentOptions } options - Indicates the options of the xcomponent. + * @returns { XComponentAttribute } The attribute of the xcomponent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ (options: XComponentOptions): XComponentAttribute; /** @@ -410,17 +624,17 @@ interface XComponentInterface { * @returns { XComponentAttribute } The attribute of the xcomponent. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ (params: NativeXComponentParameters): XComponentAttribute; } /** - * Callback invoked when XComponent onload. + * Triggered after the surface held by the XComponent is created. * * @typedef { function } OnNativeLoadCallback - * @param { object } [event] - Get the context of the XCompoonent instance object, - * and the methods mounted on the context are defined by the developer in the C++layer. + * @param { object } [event] - Context of the XComponent object. + * The APIs contained in the context are defined at the native layer by developers. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -446,17 +660,17 @@ declare type OnNativeLoadCallback = (event?: object) => void; */ declare class XComponentAttribute extends CommonMethod<XComponentAttribute> { /** - * Called when judging whether the xcomponent surface is created. + * Triggered when the plug-in is loaded. * - * @param { function } [callback] - Called when judging whether the xcomponent surface is created. + * @param { function } [callback] - Callback after the surface held by the XComponent is created. * @returns { XComponentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Called when judging whether the xcomponent surface is created. + * Triggered when the plug-in is loaded. * - * @param { function } [callback] - Called when judging whether the xcomponent surface is created. + * @param { function } [callback] - Callback after the surface held by the XComponent is created. * @returns { XComponentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -464,9 +678,10 @@ declare class XComponentAttribute extends CommonMethod<XComponentAttribute> { * @since 12 */ /** - * Called when judging whether the xcomponent surface is created. + * Triggered when the plug-in is loaded. + * Anonymous Object Rectification. * - * @param { OnNativeLoadCallback } callback - Called when judging whether the xcomponent surface is created. + * @param { OnNativeLoadCallback } callback - Callback after the surface held by the XComponent is created. * @returns { XComponentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -476,17 +691,17 @@ declare class XComponentAttribute extends CommonMethod<XComponentAttribute> { onLoad(callback: OnNativeLoadCallback): XComponentAttribute; /** - * Called when judging whether the xcomponent is destroyed. + * Triggered when the plug-in is destroyed. * - * @param { function } event - Called when judging whether the xcomponent is destroyed. + * @param { function } event - Callback after the XComponent is destroyed. * @returns { XComponentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 8 */ /** - * Called when judging whether the xcomponent is destroyed. + * Triggered when the plug-in is destroyed. * - * @param { function } event - Called when judging whether the xcomponent is destroyed. + * @param { function } event - Callback after the XComponent is destroyed. * @returns { XComponentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -494,9 +709,10 @@ declare class XComponentAttribute extends CommonMethod<XComponentAttribute> { * @since 12 */ /** - * Called when judging whether the xcomponent is destroyed. + * Triggered when the plug-in is destroyed. + * Anonymous Object Rectification. * - * @param { VoidCallback } event - Called when judging whether the xcomponent is destroyed. + * @param { VoidCallback } event - Callback after the XComponent is destroyed. * @returns { XComponentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -506,9 +722,12 @@ declare class XComponentAttribute extends CommonMethod<XComponentAttribute> { onDestroy(event: VoidCallback): XComponentAttribute; /** - * Enable image analyzer for XComponent. + * Sets whether to enable the AI image analyzer, which supports subject recognition, text recognition, and object lookup. + * For the settings to take effect, this attribute must be used together with StartImageAnalyzer and StopImageAnalyzer of XComponentController. + * This feature cannot be used together with the overlay attribute. + * If both are set, the CustomBuilder attribute in overlay has no effect. This feature also depends on device capabilities. * - * @param { boolean } enable + * @param { boolean } enable - Whether to enable the AI image analyzer. * @returns { XComponentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -517,9 +736,9 @@ declare class XComponentAttribute extends CommonMethod<XComponentAttribute> { enableAnalyzer(enable: boolean): XComponentAttribute; /** - * Enable privacy protection for XComponent. + * Sets whether to enable the secure surface to protect the content rendered within the component from being captured or recorded. * - * @param { boolean } isSecure + * @param { boolean } isSecure - Whether to enable the secure surface. * @returns { XComponentAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -536,6 +755,15 @@ declare class XComponentAttribute extends CommonMethod<XComponentAttribute> { * @systemapi * @since 14 */ + /** + * Set hdrBrightness for XComponent. + * + * @param { number } brightness - control the brightness of HDR video + * @returns { XComponentAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ hdrBrightness(brightness: number): XComponentAttribute; /** diff --git a/api/@internal/ets/global.d.ets b/api/@internal/ets/global.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..06cedd8482f75cfc45f081bfe5932716878521ae --- /dev/null +++ b/api/@internal/ets/global.d.ets @@ -0,0 +1,382 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { TouchObject, KeyEvent, MouseEvent } from '../../../api/arkui/component/common'; + +/** + * Sets the interval for repeatedly calling a function. + * + * @param { Function | string } handler - Indicates the function to be called after the timer goes off. + * For devices of "tv", "phone, tablet", and "wearable" types, this parameter can be a function or string. + * For devices of "lite wearable" and "smartVision" types, this parameter must be a function. + * @param { number } delay - Indicates the interval between each two calls, in milliseconds. The function will be called after this delay. + * @param { any[] } arguments - Indicates additional arguments to pass to "handler" when the timer goes off. + * @returns { number } Returns the timer ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ +/** + * Sets the interval for repeatedly calling a function. + * + * @param { Function | string } handler - Indicates the function to be called after the timer goes off. + * For devices of "tv", "phone, tablet", and "wearable" types, this parameter can be a function or string. + * For devices of "lite wearable" and "smartVision" types, this parameter must be a function. + * @param { number } delay - Indicates the interval between each two calls, in milliseconds. The function will be called after this delay. + * @param { any[] } arguments - Indicates additional arguments to pass to "handler" when the timer goes off. + * @returns { number } Returns the timer ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Sets the interval for repeatedly calling a function. + * + * @param { Function | string } handler - Indicates the function to be called after the timer goes off. + * For devices of "tv", "phone, tablet", and "wearable" types, this parameter can be a function or string. + * For devices of "lite wearable" and "smartVision" types, this parameter must be a function. + * @param { number } delay - Indicates the interval between each two calls, in milliseconds. The function will be called after this delay. + * @param { any[] } arguments - Indicates additional arguments to pass to "handler" when the timer goes off. + * @returns { number } Returns the timer ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare function setInterval(func: () => void, delay: int): int; + +/** + * Sets a timer after which a function will be executed. + * + * @param { Function | string } handler - Indicates the function to be called after the timer goes off. + * For devices of "tv", "phone, tablet", and "wearable" types, this parameter can be a function or string. + * For devices of "lite wearable" and "smartVision" types, this parameter must be a function. + * @param { number } [delay] - Indicates the delay (in milliseconds) after which the function will be called. + * If this parameter is left empty, default value "0" will be used, which means that the function will be called immediately or as soon as possible. + * @param { any[] } arguments - Indicates additional arguments to pass to "handler" when the timer goes off. + * @returns { number } Returns the timer ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ +/** + * Sets a timer after which a function will be executed. + * + * @param { Function | string } handler - Indicates the function to be called after the timer goes off. + * For devices of "tv", "phone, tablet", and "wearable" types, this parameter can be a function or string. + * For devices of "lite wearable" and "smartVision" types, this parameter must be a function. + * @param { number } [delay] - Indicates the delay (in milliseconds) after which the function will be called. + * If this parameter is left empty, default value "0" will be used, which means that the function will be called immediately or as soon as possible. + * @param { any[] } [arguments] - Indicates additional arguments to pass to "handler" when the timer goes off. + * @returns { number } Returns the timer ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Sets a timer after which a function will be executed. + * + * @param { Function | string } handler - Indicates the function to be called after the timer goes off. + * For devices of "tv", "phone, tablet", and "wearable" types, this parameter can be a function or string. + * For devices of "lite wearable" and "smartVision" types, this parameter must be a function. + * @param { number } [delay] - Indicates the delay (in milliseconds) after which the function will be called. + * If this parameter is left empty, default value "0" will be used, which means that the function will be called immediately or as soon as possible. + * @param { any[] } [arguments] - Indicates additional arguments to pass to "handler" when the timer goes off. + * @returns { number } Returns the timer ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare function setTimeout(func: () => void, delay?: int): int; + +/** + * Cancel the interval set by " setInterval()". + * + * @param { number } [intervalID] - Indicates the timer ID returned by "setInterval()". + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ +/** + * Cancel the interval set by " setInterval()". + * + * @param { number } [intervalID] - Indicates the timer ID returned by "setInterval()". + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Cancel the interval set by " setInterval()". + * + * @param { number } [intervalID] - Indicates the timer ID returned by "setInterval()". + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare function clearInterval(intervalID: int): void; + +/** + * Cancel the timer set by "setTimeout()". + * + * @param { number } [timeoutID] - Indicates the timer ID returned by "setTimeout()". + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ +/** + * Cancel the timer set by "setTimeout()". + * + * @param { number } [timeoutID] - Indicates the timer ID returned by "setTimeout()". + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Cancel the timer set by "setTimeout()". + * + * @param { number } [timeoutID] - Indicates the timer ID returned by "setTimeout()". + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare function clearTimeout(timeoutID: int): void; + +/** + * Defining syscap function. + * + * @param { string } syscap + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ +/** + * Defining syscap function. + * + * @param { string } syscap + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Defining syscap function. + * + * @param { string } syscap + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare function canIUse(syscap: string): boolean; + +/** + * Obtains all attributes of the component with the specified ID. + * + * @param { string } id - ID of the component whose attributes are to be obtained. + * @returns { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + * @test + */ +/** + * Obtains all attributes of the component with the specified ID. + * + * @param { string } id - ID of the component whose attributes are to be obtained. + * @returns { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + * @test + */ +/** + * Obtains all attributes of the component with the specified ID. + * + * @param { string } id - ID of the component whose attributes are to be obtained. + * @returns { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + * @test + */ +export declare function getInspectorByKey(id: string): string; + +/** + * Get components tree. + * + * @returns { Object } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + * @test + */ +/** + * Get components tree. + * + * @returns { Object } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + * @test + */ +/** + * Get components tree. + * + * @returns { Object } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + * @test + */ +export declare function getInspectorTree(): Object; + +/** + * Sends an event to the component with the specified ID. + * + * @param { string } id - ID of the component for which the event is to be sent. + * @param { number } action - Type of the event to be sent. The options are as follows: Click event: 10 LongClick: 11. + * @param { string } params - Event parameters. If there is no parameter, pass an empty string "". + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + * @test + */ +/** + * Sends an event to the component with the specified ID. + * + * @param { string } id - ID of the component for which the event is to be sent. + * @param { number } action - Type of the event to be sent. The options are as follows: Click event: 10 LongClick: 11. + * @param { string } params - Event parameters. If there is no parameter, pass an empty string "". + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + * @test + */ +/** + * Sends an event to the component with the specified ID. + * + * @param { string } id - ID of the component for which the event is to be sent. + * @param { number } action - Type of the event to be sent. The options are as follows: Click event: 10 LongClick: 11. + * @param { string } params - Event parameters. If there is no parameter, pass an empty string "". + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + * @test + */ +export declare function sendEventByKey(id: string, action: number, params: string): boolean; + +/** + * Send touch event. + * + * @param { TouchObject } event - TouchObject to be sent. + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + * @test + */ +/** + * Send touch event. + * + * @param { TouchObject } event - TouchObject to be sent. + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + * @test + */ +/** + * Send touch event. + * + * @param { TouchObject } event - TouchObject to be sent. + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + * @test + */ +export declare function sendTouchEvent(event: TouchObject): boolean; + +/** + * Send key event. + * + * @param { KeyEvent } event - KeyEvent to be sent. + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + * @test + */ +/** + * Send key event. + * + * @param { KeyEvent } event - KeyEvent to be sent. + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + * @test + */ +/** + * Send key event. + * + * @param { KeyEvent } event - KeyEvent to be sent. + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + * @test + */ +export declare function sendKeyEvent(event: KeyEvent): boolean; + +/** + * Send mouse event. + * + * @param { MouseEvent } event - MouseEvent to be sent. + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + * @test + */ +/** + * Send mouse event. + * + * @param { MouseEvent } event - MouseEvent to be sent. + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + * @test + */ +/** + * Send mouse event. + * + * @param { MouseEvent } event - MouseEvent to be sent. + * @returns { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + * @test + */ +export declare function sendMouseEvent(event: MouseEvent): boolean; diff --git a/api/@internal/ets/global.d.ts b/api/@internal/ets/global.d.ts index 75fe7f857410254f5a6c3cffcf0a8d44da8479f0..417b90abe6eea562eb218c34cd6b5fc2eedf35e4 100644 --- a/api/@internal/ets/global.d.ts +++ b/api/@internal/ets/global.d.ts @@ -79,10 +79,10 @@ export declare class console { * @since 10 */ /** - * Prints "debug" logs. + * Prints debugging information in formatted output mode. * * @param { string } message - Text to print. - * @param { any[] } arguments + * @param { any[] } arguments - Arguments in the message or other information to be printed. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -119,10 +119,10 @@ export declare class console { * @since 10 */ /** - * Prints "log" logs. + * Prints log information in formatted output mode. * * @param { string } message - Text to print. - * @param { any[] } arguments + * @param { any[] } arguments - Arguments in the message or other information to be printed. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -159,10 +159,10 @@ export declare class console { * @since 10 */ /** - * Prints "info" logs. + * Prints log information in formatted output mode. This API is the alias of console.log (). * * @param { string } message - Text to print. - * @param { any[] } arguments + * @param { any[] } arguments - Arguments in the message or other information to be printed. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -199,10 +199,10 @@ export declare class console { * @since 10 */ /** - * Prints "warn" logs. + * Prints warning information in formatted output mode. * - * @param { string } message - Text to print. - * @param { any[] } arguments + * @param { string } message - Warning information to be printed. + * @param { any[] } arguments - Arguments in the message or other information to be printed. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -239,10 +239,10 @@ export declare class console { * @since 10 */ /** - * Prints "error" logs. + * Prints error information in formatted output mode. * - * @param { string } message - Text to print. - * @param { any[] } arguments + * @param { string } message - Error information to be printed. + * @param { any[] } arguments - Arguments in the message or other information to be printed. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @form @@ -263,11 +263,14 @@ export declare class console { * @since 10 */ /** - * Prints a message if value is false or omitted. + * Prints assertion information. * - * @param { Object } [value] - The value tested for being truthy. - * @param { Object[] } arguments - Used as error message to print. - * @throws { BusinessError } 401 - The parameter check failed. + * @param { Object } [value] - Result value. If value is false or left blank, the output starting with "Assertion failed" is printed. If value is true, no information is printed. + * @param { Object[] } arguments - Other information to be printed when value is false. If this parameter is left blank, other information is not printed. + * @throws { BusinessError } 401 - The parameter check failed. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -288,11 +291,14 @@ export declare class console { * @since 10 */ /** - * Maintains an internal counter specific to label and print the number of times - * console.count() has been called with the given label. + * Maintains an internal counter. When this counter is invoked, + * its label name and the corresponding call count are printed. * - * @param { string } [label] - Counter name. Default: "default". - * @throws { BusinessError } 401 - The parameter check failed. + * @param { string } [label] - Counter label name. The default value is default. + * @throws { BusinessError } 401 - The parameter check failed. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -312,10 +318,13 @@ export declare class console { * @since 10 */ /** - * Reset the internal counter specific to label. + * Resets a counter based on the specified label name. * - * @param { string } [label] - Counter name. Default: "default". - * @throws { BusinessError } 401 - The parameter check failed. + * @param { string } [label] - Counter label name. The default value is default. + * @throws { BusinessError } 401 - The parameter check failed. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -334,9 +343,10 @@ export declare class console { * @since 10 */ /** - * Prints properties of the specified JavaScript object. + * Prints content of the specified object. * - * @param { Object } [dir] - A JavaScript object whose properties should be output. + * @param { Object } [dir] - Object whose content needs to be printed. + * If this parameter is left blank, no information is printed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -356,10 +366,11 @@ export declare class console { * @since 10 */ /** - * This method calls console.log() passing it the arguments received. - * This method does not produce any XML formatting. + * Displays an interactive tree of the descendant elements of the specified XML element. + * This API is implemented by calling console.log() internally. + * It does not produce any XML elements. The usage method is the same as that of console.log(). * - * @param { Object[] } arguments - Text to print. + * @param { Object[] } arguments - Information to be printed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -378,9 +389,10 @@ export declare class console { * @since 10 */ /** - * Creates a new inline group, causing any subsequent console messages to be indented by an additional level. + * Increases the indentation of subsequent lines by two spaces. + * If the information to be printed is provided, the information is printed without extra indentation. * - * @param { Object[] } arguments - messages to print first. + * @param { Object[] } arguments - Information to be printed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -399,9 +411,10 @@ export declare class console { * @since 10 */ /** - * Same as console.group() + * Creates a new inline group in collapsed mode. + * The usage and function of this API are the same as those of console.group(). * - * @param { Object[] } arguments - messages to print first. + * @param { Object[] } arguments - Information to be printed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -419,7 +432,7 @@ export declare class console { * @since 10 */ /** - * Exit current inline group. + * Reduces the indentation of subsequent lines by two spaces. * * @static * @syscap SystemCapability.Utils.Lang @@ -439,9 +452,10 @@ export declare class console { * @since 10 */ /** - * Prints tabular data as a table. + * Prints data in a table. * - * @param { Object } [tableData] - tabular data. + * @param { Object } [tableData] - Data to be printed in a table. + * If this parameter is left blank, no information is printed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -461,10 +475,14 @@ export declare class console { * @since 10 */ /** - * Start a timer. + * Starts a timer to track the duration of an operation. + * You can use console.timeEnd() to close the timer and print the elapsed time (in ms). * - * @param { string } [label] - Timer name. Default: "default". - * @throws { BusinessError } 401 - The parameter check failed. + * @param { string } [label] - Timer label. The default value is default. + * @throws { BusinessError } 401 - The parameter check failed. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -484,10 +502,13 @@ export declare class console { * @since 10 */ /** - * End a timer and print time duration. + * Stops the timer started by calling console.time() and prints the elapsed time (in ms). * - * @param { string } [label] - Timer name. Default: "default". - * @throws { BusinessError } 401 - The parameter check failed. + * @param { string } [label] - Timer label. The default value is default. + * @throws { BusinessError } 401 - The parameter check failed. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -508,11 +529,14 @@ export declare class console { * @since 10 */ /** - * Print the elapsed time and other data arguments. + * Prints the elapsed time and other data parameters for the timer started by console.time(). * - * @param { string } [label] - Timer name. Default: "default". - * @param { Object[] } arguments - Text to print. - * @throws { BusinessError } 401 - The parameter check failed. + * @param { string } [label] - Timer label. The default value is default. + * @param { Object[] } arguments - Logs to be printed. + * @throws { BusinessError } 401 - The parameter check failed. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -531,9 +555,10 @@ export declare class console { * @since 10 */ /** - * Prints stack information for the current code location. + * Creates a stack trace. * - * @param { Object[] } arguments - message to print. + * @param { Object[] } arguments - Logs to be printed. If this parameter is left blank, + * only stack information is printed. * @static * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -543,7 +568,7 @@ export declare class console { static trace(...arguments: Object[]): void; /** - * Prints hybrid stack information for the current code location. + * Prints information about the current hybrid stack of the calling thread in the main thread or worker thread. * * @static * @syscap SystemCapability.Utils.Lang @@ -580,14 +605,15 @@ export declare class console { * @since 10 */ /** - * Sets the interval for repeatedly calling a function. + * Sets a repeating timer for the system to repeatedly call a function at a fixed interval. + * The timer can only be manually deleted by calling the clearInterval API. * - * @param { Function | string } handler - Indicates the function to be called after the timer goes off. + * @param { Function | string } handler - Function to be called repeatedly. If the type is string, error information is printed and no other processing is performed. * For devices of "tv", "phone, tablet", and "wearable" types, this parameter can be a function or string. * For devices of "lite wearable" and "smartVision" types, this parameter must be a function. - * @param { number } delay - Indicates the interval between each two calls, in milliseconds. The function will be called after this delay. - * @param { any[] } arguments - Indicates additional arguments to pass to "handler" when the timer goes off. - * @returns { number } Returns the timer ID. + * @param { number } delay - Number of milliseconds delayed before the execution. + * @param { any[] } arguments - Additional parameters to pass to the handler after the timer goes off. + * @returns { number } ID of the timer. The timer ID is shared by processes and is an integer starting from 0 in ascending order. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -623,15 +649,19 @@ export declare function setInterval(handler: Function | string, delay: number, . * @since 10 */ /** - * Sets a timer after which a function will be executed. + * Sets a timer for the system to call a function after the timer goes off. + * The timer is automatically deleted after the callback is executed, and can be manually deleted by calling the clearTimeout API. * - * @param { Function | string } handler - Indicates the function to be called after the timer goes off. + * @param { Function | string } handler - Function to be called after the timer goes off. If the type is string, error information is printed and no other processing is performed. * For devices of "tv", "phone, tablet", and "wearable" types, this parameter can be a function or string. * For devices of "lite wearable" and "smartVision" types, this parameter must be a function. - * @param { number } [delay] - Indicates the delay (in milliseconds) after which the function will be called. - * If this parameter is left empty, default value "0" will be used, which means that the function will be called immediately or as soon as possible. - * @param { any[] } [arguments] - Indicates additional arguments to pass to "handler" when the timer goes off. - * @returns { number } Returns the timer ID. + * @param { number } [delay] - Number of milliseconds delayed before the execution. It is recommended that an integer be passed in. A decimal will be rounded down. + * If this parameter is not specified, the default value 0 is used, indicating that the function is executed immediately (in the next event loop). + * NOTE + * 1. In either case, the actual delay may be longer than expected. + * 2. If a value less than 1 is passed, the default value 0 is used. + * @param { any[] } [arguments] - Additional parameters to pass to the handler after the timer goes off. + * @returns { number } ID of the timer. The timer ID is shared by processes and is an integer starting from 0 in ascending order. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -655,9 +685,10 @@ export declare function setTimeout(handler: Function | string, delay?: number, . * @since 10 */ /** - * Cancel the interval set by " setInterval()". + * Cancels the repeating timer set via setInterval(). + * The timer object is stored in the thread that creates the timer and must be deleted in that thread. * - * @param { number } [intervalID] - Indicates the timer ID returned by "setInterval()". + * @param { number } [intervalID] - ID of the repeating timer to cancel, which is returned by setInterval(). If this parameter is omitted, no timer is canceled. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -681,9 +712,10 @@ export declare function clearInterval(intervalID?: number): void; * @since 10 */ /** - * Cancel the timer set by "setTimeout()". + * Cancels a timer set via setTimeout(). + * The timer object is stored in the thread that creates the timer and must be deleted in that thread. * - * @param { number } [timeoutID] - Indicates the timer ID returned by "setTimeout()". + * @param { number } [timeoutID] - ID of the timer to cancel, which is returned by setTimeout() If this parameter is omitted, no timer is canceled. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -720,6 +752,28 @@ export declare function clearTimeout(timeoutID?: number): void; */ export declare function canIUse(syscap: string): boolean; +/** + * determine whether the current operating system version is greater than or equal to the given value. + * + * @param { string } apiVersion - Only major version can be passed in, such as "20"; + * major and minor version can be passed in, such as "20.1"; major minor and patch + * version can be passed in, such as "20.1.2" + * @returns { boolean } true - operating system version is greater than or equal to the given value + * false - operating system version is less than the given value or invalid api version + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + * @example + * if (isApiVersionGreaterOrEqual("20.1")) { + * // Use 20.1 APIs. + * } else { + * // Alternative code for earlier versions. + * } + * + */ +export declare function isApiVersionGreaterOrEqual(apiVersion: string): boolean; + /** * Obtains all attributes of the component with the specified ID. * diff --git a/api/@ohos.InputMethodExtensionContext.d.ts b/api/@ohos.InputMethodExtensionContext.d.ts index 69ffe90c8c05c232fdc8671c319d5a745cab2caa..5d581c9632c311062d4de340c712f3f2f95f60f0 100644 --- a/api/@ohos.InputMethodExtensionContext.d.ts +++ b/api/@ohos.InputMethodExtensionContext.d.ts @@ -60,7 +60,7 @@ export default class InputMethodExtensionContext extends ExtensionContext { * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -69,11 +69,11 @@ export default class InputMethodExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. - * @throws { BusinessError } 16000061 - Can not start component belongs to other bundle. + * @throws { BusinessError } 16000061 - Operation not supported. * @throws { BusinessError } 16000069 - The extension cannot start the third party application. * @throws { BusinessError } 16000070 - The extension cannot start the service. * @throws { BusinessError } 16200001 - The caller has been released. diff --git a/api/@ohos.PiPWindow.d.ts b/api/@ohos.PiPWindow.d.ts index 81ebbcadcb6e558ee34462d59dfd6a787a8dbac4..206fc082fef20a9d2743812b3aae8673c5eb9ba6 100644 --- a/api/@ohos.PiPWindow.d.ts +++ b/api/@ohos.PiPWindow.d.ts @@ -243,6 +243,27 @@ declare namespace PiPWindow { * @since 12 */ customUIController?: NodeController; + + /** + * Describes the data object shared within the content instance loaded by the window. + * + * @type { ?LocalStorage } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 17 + */ + localStorage?: LocalStorage; + + /** + * Describes the default picture-in-picture window size as it is started. + * 0: not set. 1: small size. 2: large size. + * + * @type { ?number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + defaultWindowSizeType?: number; } /** @@ -476,13 +497,13 @@ declare namespace PiPWindow { ABOUT_TO_RESTORE = 5, /** - * Error message during start/stop. + * Error occurs during the lifecycle of PiP window. * * @syscap SystemCapability.Window.SessionManager * @since 11 */ /** - * Error message during start/stop. + * Error occurs during the lifecycle of PiP window. * * @syscap SystemCapability.Window.SessionManager * @atomicservice @@ -492,7 +513,7 @@ declare namespace PiPWindow { } /** - * Describe PiP window custom controls. + * Describe optional component groups of PiP window. * * @typedef { VideoPlayControlGroup | VideoCallControlGroup | VideoMeetingControlGroup | VideoLiveControlGroup } * @syscap SystemCapability.Window.SessionManager @@ -502,7 +523,7 @@ declare namespace PiPWindow { type PiPControlGroup = VideoPlayControlGroup | VideoCallControlGroup | VideoMeetingControlGroup | VideoLiveControlGroup; /** - * Enum for video play PiP window custom controls. + * Enum for video play component groups of PiP window. * * @enum { number }. * @syscap SystemCapability.Window.SessionManager @@ -530,7 +551,7 @@ declare namespace PiPWindow { } /** - * Enum for video call PiP window custom controls. + * Enum for video call component groups of PiP window. * * @enum { number }. * @syscap SystemCapability.Window.SessionManager @@ -576,7 +597,7 @@ declare namespace PiPWindow { } /** - * Enum for video meeting PiP window custom controls. + * Enum for video meeting component groups of PiP window. * * @enum { number }. * @syscap SystemCapability.Window.SessionManager @@ -622,7 +643,7 @@ declare namespace PiPWindow { } /** - * Enum for video Live PiP window custom controls. + * Enum for video Live component groups of PiP window. * * @enum { number }. * @syscap SystemCapability.Window.SessionManager diff --git a/api/@ohos.UiTest.d.ts b/api/@ohos.UiTest.d.ts old mode 100644 new mode 100755 index c1c63e9a803f820d265fe13db8482926ac9619d2..47815947ca62de2bdfbfe135c3a02c5915da8aab --- a/api/@ohos.UiTest.d.ts +++ b/api/@ohos.UiTest.d.ts @@ -20,6 +20,17 @@ import { Callback } from './@ohos.base'; +/** + * Used to initialize the uitest environment at the start of the test + * + * @throws { BusinessError } 17000001 - Initialization failed. + * @syscap SystemCapability.Test.UiTest + * @since 20 + * @arkts 1.2 + * @test +*/ +export function loadAndSetUpUiTest(): void {}; + /** * Enumerates the string value match pattern. * @@ -42,7 +53,8 @@ import { Callback } from './@ohos.base'; * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ declare enum MatchPattern { /** @@ -66,8 +78,9 @@ declare enum MatchPattern { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ EQUALS = 0, /** @@ -91,8 +104,9 @@ declare enum MatchPattern { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ CONTAINS = 1, /** @@ -116,8 +130,9 @@ declare enum MatchPattern { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ STARTS_WITH = 2, /** @@ -141,8 +156,9 @@ declare enum MatchPattern { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ ENDS_WITH = 3, /** @@ -150,7 +166,9 @@ declare enum MatchPattern { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} + * @test + * @arkts 1.1&1.2 */ REG_EXP = 4, /** @@ -158,7 +176,9 @@ declare enum MatchPattern { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} + * @test + * @arkts 1.1&1.2 */ REG_EXP_ICASE = 5, } @@ -686,7 +706,8 @@ declare class UiDriver { * @enum { number } * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ declare enum WindowMode { /** @@ -701,8 +722,9 @@ declare enum WindowMode { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ FULLSCREEN = 0, /** @@ -717,8 +739,9 @@ declare enum WindowMode { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ PRIMARY = 1, /** @@ -733,8 +756,9 @@ declare enum WindowMode { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ SECONDARY = 2, /** @@ -749,10 +773,11 @@ declare enum WindowMode { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ - FLOATING = 3, + FLOATING = 3 } /** @@ -768,7 +793,8 @@ declare enum WindowMode { * @enum { number } * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ declare enum ResizeDirection { /** @@ -783,8 +809,9 @@ declare enum ResizeDirection { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ LEFT = 0, /** @@ -799,8 +826,9 @@ declare enum ResizeDirection { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ RIGHT = 1, /** @@ -815,8 +843,9 @@ declare enum ResizeDirection { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ UP = 2, /** @@ -831,8 +860,9 @@ declare enum ResizeDirection { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ DOWN = 3, /** @@ -847,8 +877,9 @@ declare enum ResizeDirection { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ LEFT_UP = 4, /** @@ -863,8 +894,9 @@ declare enum ResizeDirection { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ LEFT_DOWN = 5, /** @@ -879,8 +911,9 @@ declare enum ResizeDirection { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ RIGHT_UP = 6, /** @@ -895,10 +928,11 @@ declare enum ResizeDirection { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ - RIGHT_DOWN = 7, + RIGHT_DOWN = 7 } /** @@ -914,7 +948,8 @@ declare enum ResizeDirection { * @enum { number } * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ declare enum DisplayRotation { /** @@ -929,8 +964,9 @@ declare enum DisplayRotation { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ ROTATION_0 = 0, /** @@ -945,8 +981,9 @@ declare enum DisplayRotation { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ ROTATION_90 = 1, /** @@ -961,8 +998,9 @@ declare enum DisplayRotation { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ ROTATION_180 = 2, /** @@ -977,10 +1015,11 @@ declare enum DisplayRotation { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ - ROTATION_270 = 3, + ROTATION_270 = 3 } /** @@ -1005,7 +1044,8 @@ declare enum DisplayRotation { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ declare interface Point { /** @@ -1035,7 +1075,17 @@ declare interface Point { * @atomicservice * @since 11 */ - readonly x: number; + /** + * The x-coordinate of the coordinate point. + * + * @type { number } + * @syscap SystemCapability.Test.UiTest + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ + x: number; /** * The y-coordinate of the coordinate point. * @@ -1063,20 +1113,39 @@ declare interface Point { * @atomicservice * @since 11 */ - readonly y: number; + /** + * The y-coordinate of the coordinate point. + * + * @type { number } + * @syscap SystemCapability.Test.UiTest + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ + y: number; + /** + * The displayId to which the coordinate point belongs, default is the displayId of the main scrren. + * + * @type { ?number } + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + */ + displayId?: number; } /** * Represents the rectangle area on the device screen. * - * @typedef Rect + * @typedef Rect * @syscap SystemCapability.Test.UiTest * @since 9 */ /** * Represents the rectangle area on the device screen. * - * @typedef Rect + * @typedef Rect * @syscap SystemCapability.Test.UiTest * @atomicservice * @since 11 @@ -1084,18 +1153,19 @@ declare interface Point { /** * Represents the rectangle area on the device screen. * - * @typedef Rect + * @typedef Rect * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ declare interface Rect { /** * The x-coordinate of the top left corner of the rectangle. * * @type { number } - * @readonly + * @readonly * @syscap SystemCapability.Test.UiTest * @since 9 */ @@ -1103,7 +1173,7 @@ declare interface Rect { * The x-coordinate of the top left corner of the rectangle. * * @type { number } - * @readonly + * @readonly * @syscap SystemCapability.Test.UiTest * @atomicservice * @since 11 @@ -1117,13 +1187,23 @@ declare interface Rect { * @crossplatform * @atomicservice * @since 12 - */ - readonly left: number; + */ + /** + * The x-coordinate of the top left corner of the rectangle. + * + * @type { number } + * @syscap SystemCapability.Test.UiTest + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ + left: number; /** * The y-coordinate of the top left corner of the rectangle. * * @type { number } - * @readonly + * @readonly * @syscap SystemCapability.Test.UiTest * @since 9 */ @@ -1131,7 +1211,7 @@ declare interface Rect { * The y-coordinate of the top left corner of the rectangle. * * @type { number } - * @readonly + * @readonly * @syscap SystemCapability.Test.UiTest * @atomicservice * @since 11 @@ -1146,12 +1226,22 @@ declare interface Rect { * @atomicservice * @since 12 */ - readonly top: number; + /** + * The y-coordinate of the top left corner of the rectangle. + * + * @type { number } + * @syscap SystemCapability.Test.UiTest + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ + top: number; /** * The x-coordinate at the bottom right corner of the rectangle. * * @type { number } - * @readonly + * @readonly * @syscap SystemCapability.Test.UiTest * @since 9 */ @@ -1159,7 +1249,7 @@ declare interface Rect { * The x-coordinate at the bottom right corner of the rectangle. * * @type { number } - * @readonly + * @readonly * @syscap SystemCapability.Test.UiTest * @atomicservice * @since 11 @@ -1174,12 +1264,22 @@ declare interface Rect { * @atomicservice * @since 12 */ - readonly right: number; + /** + * The x-coordinate at the bottom right corner of the rectangle. + * + * @type { number } + * @syscap SystemCapability.Test.UiTest + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ + right: number; /** * The y-coordinate at the bottom right corner of the rectangle. * * @type { number } - * @readonly + * @readonly * @syscap SystemCapability.Test.UiTest * @since 9 */ @@ -1187,7 +1287,7 @@ declare interface Rect { * The y-coordinate at the bottom right corner of the rectangle. * * @type { number } - * @readonly + * @readonly * @syscap SystemCapability.Test.UiTest * @atomicservice * @since 11 @@ -1202,7 +1302,26 @@ declare interface Rect { * @atomicservice * @since 12 */ - readonly bottom: number; + /** + * The y-coordinate at the bottom right corner of the rectangle. + * + * @type { number } + * @syscap SystemCapability.Test.UiTest + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ + bottom: number; + /** + * The displayId to which the rect belongs, default is the displayId of the main screen. + * + * @type { ?number } + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + */ + displayId?: number; } /** @@ -1218,7 +1337,8 @@ declare interface Rect { * @typedef WindowFilter * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ declare interface WindowFilter { /** @@ -1234,7 +1354,8 @@ declare interface WindowFilter { * @type { ?string } * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ bundleName?: string; @@ -1251,7 +1372,8 @@ declare interface WindowFilter { * @type { ?string } * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ title?: string; @@ -1268,7 +1390,8 @@ declare interface WindowFilter { * @type { ?boolean } * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ focused?: boolean; @@ -1296,9 +1419,20 @@ declare interface WindowFilter { * @type { ?boolean } * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ active?: boolean; + + /** + * Find the window in the specified ID display. By default, it searches all displays. + * + * @type { ?number } + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + */ + displayId?: number; } /** @@ -1315,8 +1449,9 @@ declare interface WindowFilter { * @typedef UIElementInfo * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ declare interface UIElementInfo { /** @@ -1333,8 +1468,9 @@ declare interface UIElementInfo { * @readonly * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ readonly bundleName: string; /** @@ -1351,8 +1487,9 @@ declare interface UIElementInfo { * @readonly * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ readonly type: string; /** @@ -1369,8 +1506,9 @@ declare interface UIElementInfo { * @readonly * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ readonly text: string; } @@ -1389,8 +1527,9 @@ declare interface UIElementInfo { * @typedef UIEventObserver * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ declare interface UIEventObserver { /** @@ -1411,8 +1550,9 @@ declare interface UIEventObserver { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ once(type: 'toastShow', callback: Callback<UIElementInfo>): void; @@ -1434,8 +1574,9 @@ declare interface UIEventObserver { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ once(type: 'dialogShow', callback: Callback<UIElementInfo>): void; } @@ -1462,7 +1603,8 @@ declare interface UIEventObserver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ declare enum UiDirection { /** @@ -1486,8 +1628,9 @@ declare enum UiDirection { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} * @test + * @arkts 1.1&1.2 */ LEFT = 0, /** @@ -1511,8 +1654,9 @@ declare enum UiDirection { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} * @test + * @arkts 1.1&1.2 */ RIGHT = 1, /** @@ -1536,8 +1680,9 @@ declare enum UiDirection { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} * @test + * @arkts 1.1&1.2 */ UP = 2, /** @@ -1561,10 +1706,11 @@ declare enum UiDirection { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} * @test + * @arkts 1.1&1.2 */ - DOWN = 3, + DOWN = 3 } /** @@ -1580,7 +1726,9 @@ declare enum UiDirection { * @enum { number } * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @test + * @arkts 1.1&1.2 */ declare enum MouseButton { /** @@ -1595,8 +1743,9 @@ declare enum MouseButton { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ MOUSE_BUTTON_LEFT = 0, /** @@ -1611,8 +1760,9 @@ declare enum MouseButton { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ MOUSE_BUTTON_RIGHT = 1, /** @@ -1627,10 +1777,11 @@ declare enum MouseButton { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ - MOUSE_BUTTON_MIDDLE = 2, + MOUSE_BUTTON_MIDDLE = 2 } /** @@ -1638,8 +1789,9 @@ declare enum MouseButton { * @interface TouchPadSwipeOptions * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ declare interface TouchPadSwipeOptions { /** @@ -1647,8 +1799,9 @@ declare interface TouchPadSwipeOptions { * @type { ?boolean } * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ stay?: boolean; @@ -1657,12 +1810,43 @@ declare interface TouchPadSwipeOptions { * @type { ?number } * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ speed?: number; } +/** + * Text input method options. + * @interface InputTextMode + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ +declare interface InputTextMode { + /** + * Whether to use copy and paste mode to input text, default is false. + * @type { ?boolean } + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + paste?: boolean; + + /** + * Whether input text appending to the end of paragraph without clearing the text, default is false. + * @type { ?boolean } + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + addition?: boolean; +} + /** * Describes the attribute requirements for the target Components. * @@ -1682,7 +1866,8 @@ declare interface TouchPadSwipeOptions { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ declare class On { /** @@ -1718,8 +1903,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ text(txt: string, pattern?: MatchPattern): On; @@ -1753,8 +1939,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ id(id: string): On; @@ -1788,8 +1975,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ type(tp: string): On; @@ -1823,8 +2011,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ clickable(b?: boolean): On; @@ -1858,8 +2047,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ longClickable(b?: boolean): On; @@ -1893,8 +2083,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ scrollable(b?: boolean): On; @@ -1928,8 +2119,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ enabled(b?: boolean): On; @@ -1963,8 +2155,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ focused(b?: boolean): On; @@ -1998,15 +2191,16 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ selected(b?: boolean): On; /** * Specifies the checked status of the target Component. * - * @param { boolean } b The checked status,default to false. + * @param { boolean } b The checked status,default to true. * @returns { On } this {@link On} object. * @throws { BusinessError } 401 - if the input parameters are invalid. * @syscap SystemCapability.Test.UiTest @@ -2016,7 +2210,7 @@ declare class On { /** * Specifies the checked status of the target Component. * - * @param { boolean } b The checked status,default to false. + * @param { boolean } b The checked status,default to true. * @returns { On } this {@link On} object. * @throws { BusinessError } 401 - if the input parameters are invalid. * @syscap SystemCapability.Test.UiTest @@ -2027,21 +2221,22 @@ declare class On { /** * Specifies the checked status of the target Component. * - * @param { boolean } [b] - the checked status.Set it default false if null or undefined. + * @param { boolean } [b] - the checked status.Set it default true if null or undefined. * @returns { On } this {@link On} object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; 2. Parameter verification failed. * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ checked(b?: boolean): On; /** * Specifies the checkable status of the target Component. * - * @param { boolean } b The checkable status,default to false. + * @param { boolean } b The checkable status,default to true. * @returns { On } this {@link On} object. * @throws { BusinessError } 401 - if the input parameters are invalid. * @syscap SystemCapability.Test.UiTest @@ -2051,7 +2246,7 @@ declare class On { /** * Specifies the checkable status of the target Component. * - * @param { boolean } b The checkable status,default to false. + * @param { boolean } b The checkable status,default to true. * @returns { On } this {@link On} object. * @throws { BusinessError } 401 - if the input parameters are invalid. * @syscap SystemCapability.Test.UiTest @@ -2062,14 +2257,15 @@ declare class On { /** * Specifies the checkable status of the target Component. * - * @param { boolean } [b] - the checkable status.Set it default false if null or undefined. + * @param { boolean } [b] - the checkable status.Set it default true if null or undefined. * @returns { On } this {@link On} object. * @throws { BusinessError } 401 - Parameter error. 1. Incorrect parameter types; 2. Parameter verification failed. * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ checkable(b?: boolean): On; @@ -2094,8 +2290,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isBefore(on: On): On; @@ -2120,8 +2317,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isAfter(on: On): On; @@ -2146,8 +2344,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ within(on: On): On; @@ -2169,11 +2368,25 @@ declare class On { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ inWindow(bundleName: string): On; + /** + * Specifies the displayId to which the target Component belongs. + * + * @param { number } displayId - the Id of the specified display. + * @returns { On } this {@link On} object. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + belongingDisplay(displayId: number): On; + /** * Specifies the description for the target Component. * @@ -2183,8 +2396,9 @@ declare class On { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ description(val: string, pattern?: MatchPattern): On; /** @@ -2196,8 +2410,9 @@ declare class On { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ id(id: string, pattern: MatchPattern): On; /** @@ -2209,8 +2424,9 @@ declare class On { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ type(tp: string, pattern: MatchPattern): On; /** @@ -2222,8 +2438,9 @@ declare class On { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ hint(val: string, pattern?: MatchPattern): On; } @@ -2249,8 +2466,9 @@ declare class On { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} * @test + * @arkts 1.1&1.2 */ declare class Component { /** @@ -2283,8 +2501,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ click(): Promise<void>; @@ -2318,8 +2537,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ doubleClick(): Promise<void>; @@ -2353,8 +2573,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ longClick(): Promise<void>; @@ -2388,11 +2609,25 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getId(): Promise<string>; + /** + * Get the displayId to which the component belongs. + * + * @returns { Promise<number> } the displayId value. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + getDisplayId(): Promise<number>; + /** * Get the text attribute value. * @@ -2423,8 +2658,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getText(): Promise<string>; @@ -2458,8 +2694,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getType(): Promise<string>; @@ -2493,8 +2730,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isClickable(): Promise<boolean>; @@ -2528,8 +2766,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isLongClickable(): Promise<boolean>; @@ -2563,8 +2802,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isScrollable(): Promise<boolean>; @@ -2598,8 +2838,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isEnabled(): Promise<boolean>; @@ -2633,8 +2874,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isFocused(): Promise<boolean>; @@ -2668,8 +2910,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isSelected(): Promise<boolean>; @@ -2703,8 +2946,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isChecked(): Promise<boolean>; @@ -2738,8 +2982,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isCheckable(): Promise<boolean>; @@ -2779,11 +3024,29 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ inputText(text: string): Promise<void>; + /** + * Inject text to this {@link Component},applicable to TextInput. + * + * @param { string } text - the text to inject. + * @param { InputTextMode } mode - specific the mode to input text. + * @returns { Promise<void> } + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported, function can not work correctly due to limited device capabilities. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + inputText(text: string, mode: InputTextMode): Promise<void>; + /** * Clear text of this {@link Component},applicable to TextInput. * @@ -2814,8 +3077,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ clearText(): Promise<void>; @@ -2855,8 +3119,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ scrollToTop(speed?: number): Promise<void>; @@ -2896,17 +3161,16 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ scrollToBottom(speed?: number): Promise<void>; /** - * Scroll on this {@link Component}to find matched {@link Component},applicable to scrollable one. + * Get the bounds rect of this {@link Component}. * - * @param { On } on The attribute requirements of the target {@link Component}. - * @returns { Promise<Component> } the found result,or undefined if not found. - * @throws { BusinessError } 401 - if the input parameters are invalid. + * @returns { Promise<Rect> } the bounds rect object. * @throws { BusinessError } 17000002 - if the async function was not called with await. * @throws { BusinessError } 17000004 - if the component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest @@ -2914,38 +3178,36 @@ declare class Component { * @test */ /** - * Scroll on this {@link Component}to find matched {@link Component},applicable to scrollable one. + * Get the bounds rect of this {@link Component}. * - * @param { On } on The attribute requirements of the target {@link Component}. - * @returns { Promise<Component> } the found result,or undefined if not found. - * @throws { BusinessError } 401 - if the input parameters are invalid. + * @returns { Promise<Rect> } the bounds rect object. * @throws { BusinessError } 17000002 - if the async function was not called with await. * @throws { BusinessError } 17000004 - if the component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest - * @crossplatform - * @since 10 + * @atomicservice + * @since 11 * @test */ /** - * Scroll on this {@link Component}to find matched {@link Component},applicable to scrollable one. + * Get the bounds rect of this {@link Component}. * - * @param { On } on - the attribute requirements of the target {@link Component}. - * @returns { Promise<Component> } the found result,or undefined if not found. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @returns { Promise<Rect> } the bounds rect object. * @throws { BusinessError } 17000002 - The async function is not called with await. * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'12','1.2':'20'} * @test - */ - scrollSearch(on: On): Promise<Component>; - - /** - * Get the bounds rect of this {@link Component}. + * @arkts 1.1&1.2 + */ + getBounds(): Promise<Rect>; + /** + * Scroll on this {@link Component}to find matched {@link Component},applicable to scrollable one. * - * @returns { Promise<Rect> } the bounds rect object. + * @param { On } on The attribute requirements of the target {@link Component}. + * @returns { Promise<Component> } the found result,or undefined if not found. + * @throws { BusinessError } 401 - if the input parameters are invalid. * @throws { BusinessError } 17000002 - if the async function was not called with await. * @throws { BusinessError } 17000004 - if the component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest @@ -2953,29 +3215,33 @@ declare class Component { * @test */ /** - * Get the bounds rect of this {@link Component}. + * Scroll on this {@link Component}to find matched {@link Component},applicable to scrollable one. * - * @returns { Promise<Rect> } the bounds rect object. + * @param { On } on The attribute requirements of the target {@link Component}. + * @returns { Promise<Component> } the found result,or undefined if not found. + * @throws { BusinessError } 401 - if the input parameters are invalid. * @throws { BusinessError } 17000002 - if the async function was not called with await. * @throws { BusinessError } 17000004 - if the component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest - * @atomicservice - * @since 11 + * @crossplatform + * @since 10 * @test */ /** - * Get the bounds rect of this {@link Component}. + * Scroll on this {@link Component}to find matched {@link Component},applicable to scrollable one. * - * @returns { Promise<Rect> } the bounds rect object. + * @param { On } on - the attribute requirements of the target {@link Component}. + * @returns { Promise<Component> } the found result,or undefined if not found. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 17000002 - The async function is not called with await. * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since 11 * @test - */ - getBounds(): Promise<Rect>; + */ + scrollSearch(on: On): Promise<Component>; /** * Get the boundsCenter of this {@link Component}. @@ -3007,11 +3273,12 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getBoundsCenter(): Promise<Point>; - + /** * Drag this {@link Component} to the bounds rect of target Component. * @@ -3034,8 +3301,9 @@ declare class Component { * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ dragTo(target: Component): Promise<void>; @@ -3062,8 +3330,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ pinchOut(scale: number): Promise<void>; @@ -3090,11 +3359,27 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ pinchIn(scale: number): Promise<void>; - + /** + * Scroll on this {@link Component}to find matched {@link Component},applicable to scrollable one. + * + * @param { On } on - the attribute requirements of the target {@link Component}. + * @returns { Promise<Component | null> } the found result, or null if not found. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. + * @syscap SystemCapability.Test.UiTest + * @crossplatform + * @atomicservice + * @since 20 + * @test + * @arkts 1.2 + */ + scrollSearch(on: On): Promise<Component | null>; /** * Get the description attribute value. * @@ -3103,8 +3388,9 @@ declare class Component { * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getDescription(): Promise<string>; /** @@ -3115,8 +3401,9 @@ declare class Component { * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getHint(): Promise<string>; /** @@ -3135,6 +3422,23 @@ declare class Component { * @test */ scrollSearch(on: On, vertical?: boolean, offset?: number): Promise<Component>; + /** + * Scroll on this {@link Component}to find matched {@link Component},applicable to scrollable one. + * + * @param { On } on - the attribute requirements of the target {@link Component}. + * @param { boolean } [vertical] - Whether the swipe direction is vertical, default is true. + * @param { number } [offset] - Offset from the swipe start/end point to the component border, default is 80. + * @returns { Promise<Component | null> } the found result,or null if not found. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + * @arkts 1.2 + */ + scrollSearch(on: On, vertical?: boolean, offset?: number): Promise<Component | null>; } /** @@ -3161,8 +3465,9 @@ declare class Component { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} * @test + * @arkts 1.1&1.2 */ declare class Driver { /** @@ -3192,8 +3497,9 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ static create(): Driver; @@ -3230,8 +3536,9 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ delayMs(duration: number): Promise<void>; @@ -3272,7 +3579,20 @@ declare class Driver { * @test */ findComponent(on: On): Promise<Component>; - + /** + * Find the first matched {@link Component} on current UI. + * + * @param { On } on - the attribute requirements of the target {@link Component}. + * @returns { Promise<Component | null> } the first matched {@link Component} or undefined. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + * @arkts 1.2 + */ + findComponent(on: On): Promise<Component | null>; /** * Find the first matched {@link UiWindow} window. * @@ -3297,7 +3617,20 @@ declare class Driver { * @test */ findWindow(filter: WindowFilter): Promise<UiWindow>; - + /** + * Find the first matched {@link UiWindow} window. + * + * @param { WindowFilter } filter - the filer condition of the target {@link UiWindow}. + * @returns { Promise<UiWindow | null> } the first matched {@link UiWindow} or undefined. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + * @arkts 1.2 + */ + findWindow(filter: WindowFilter): Promise<UiWindow | null>; /** * Find the first matched {@link Component} on current UI during the time given. * @@ -3324,7 +3657,21 @@ declare class Driver { * @test */ waitForComponent(on: On, time: number): Promise<Component>; - + /** + * Find the first matched {@link Component} on current UI during the time given. + * + * @param { On } on - the attribute requirements of the target {@link Component}. + * @param { number } time - duration of finding in milliseconds, not less than 0. + * @returns { Promise<Component | null> } the first matched {@link Component} or undefined. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + * @arkts 1.2 + */ + waitForComponent(on: On, time: number): Promise<Component | null>; /** * Find all the matched {@link Component}s on current UI. * @@ -3362,7 +3709,20 @@ declare class Driver { * @test */ findComponents(on: On): Promise<Array<Component>>; - + /** + * Find all the matched {@link Component}s on current UI. + * + * @param { On } on - the attribute requirements of the target {@link Component}. + * @returns { Promise<Array<Component> | null> } the matched {@link Component}s list. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + * @arkts 1.2 + */ + findComponents(on: On): Promise<Array<Component> | null>; /** * Assert t the matched {@link Component}s exists on current UI;if not,assertError will be raised. * @@ -3399,8 +3759,9 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ assertComponentExist(on: On): Promise<void>; @@ -3431,11 +3792,26 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ pressBack(): Promise<void>; + /** + * Press the BACK key on the specified display. + * + * @param { number } displayId - the Id of the specified display. + * @returns { Promise<void> } + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + pressBack(displayId: number): Promise<void>; + /** * Press the specified key. * @@ -3457,11 +3833,27 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ triggerKey(keyCode: number): Promise<void>; + /** + * Press the specified key on the specified display. + * + * @param { number } keyCode - the target keyCode. + * @param { number } displayId - the Id of the specified display. + * @returns { Promise<void> } + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + triggerKey(keyCode: number, displayId: number): Promise<void>; + /** * Press two or three key combinations * @@ -3487,11 +3879,29 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ triggerCombineKeys(key0: number, key1: number, key2?: number): Promise<void>; + /** + * Press two or three key combinations on the specified display. + * + * @param { number } key0 - the first keyCode. + * @param { number } key1 - the second keyCode. + * @param { number } [key2] - the third keyCode,set it default 0 if null or undefined. + * @param { number } [displayId] - the Id of the specified display, default is the displayId of the main screen. + * @returns { Promise<void> } + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + triggerCombineKeys(key0: number, key1: number, key2?: number, displayId?: number): Promise<void>; + /** * Click on the specified location on the screen. * @@ -3528,8 +3938,9 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ click(x: number, y: number): Promise<void>; @@ -3569,8 +3980,9 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ doubleClick(x: number, y: number): Promise<void>; @@ -3610,8 +4022,9 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ longClick(x: number, y: number): Promise<void>; @@ -3660,8 +4073,9 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ swipe(startx: number, starty: number, endx: number, endy: number, speed?: number): Promise<void>; @@ -3693,11 +4107,88 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ drag(startx: number, starty: number, endx: number, endy: number, speed?: number): Promise<void>; + /** + * Click on the specified location on the screen. + * + * @param { Point } point - the coordinate point where the finger touches the screen. + * @returns { Promise<void> } + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + clickAt(point: Point): Promise<void>; + + /** + * DoubleClick on the specified location on the screen. + * + * @param { Point } point - the coordinate point where the finger touches the screen. + * @returns { Promise<void> } + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + doubleClickAt(point: Point): Promise<void>; + + /** + * LongClick on the specified location on the screen, specifies the duration if necessary. + * + * @param { Point } point - the coordinate point where the finger touches the screen. + * @param { number } [duration] - duration of longClick in millisecond, the minimum and default are 1500. + * @returns { Promise<void> } + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + longClickAt(point: Point, duration?: number): Promise<void>; + + /** + * Swipe on the screen between the specified points. + * + * @param { Point } from - the coordinate point where the finger touches the screen. + * @param { Point } to - the coordinate point where the finger leaves the screen. + * @param { number } [speed] - speed of swipe(pixels per second),the value ranges from 200 to 40000.Set it default 600 if out out of range or null or undefined. + * @returns { Promise<void> } + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + swipeBetween(from: Point, to: Point, speed?: number): Promise<void>; + + /** + * Drag on the screen between the specified points. + * + * @param { Point } from - the coordinate point where the finger touches the screen. + * @param { Point } to - the coordinate point where the finger leaves the screen. + * @param { number } [speed] - speed of drag(pixels per second),the value ranges from 200 to 40000.Set it default 600 if out out of range or null or undefined. + * @param { number } [duration] - duration of longClick before drag in millisecond, the minimum and default values are 1500. + * @returns { Promise<void> } + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + dragBetween(from: Point, to: Point, speed?: number, duration?: number): Promise<void>; + /** * Capture current screen and save as picture which PNG format. * @@ -3718,11 +4209,27 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ screenCap(savePath: string): Promise<boolean>; + /** + * Capture specified screen and save as picture which PNG format. + * + * @param { string } savePath - the path where to store the picture, must be in the application sandbox directory. + * @param { number } displayId - the Id of the specified display. + * @returns { Promise<boolean> } true if screen-capturing and file-storing are completed successfully,false otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + screenCap(savePath: string, displayId: number): Promise<boolean>; + /** * Set the rotation of the device display. * @@ -3743,8 +4250,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ setDisplayRotation(rotation: DisplayRotation): Promise<void>; @@ -3764,11 +4272,26 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getDisplayRotation(): Promise<DisplayRotation>; + /** + * Get the rotation of the specified device display. + * + * @param { number } displayId - the Id of the specified display. + * @returns { Promise<DisplayRotation> } the current display rotation. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + getDisplayRotation(displayId: number): Promise<DisplayRotation>; + /** * Enable/disable the rotation of device display. * @@ -3789,8 +4312,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ setDisplayRotationEnabled(enabled: boolean): Promise<void>; @@ -3810,11 +4334,26 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getDisplaySize(): Promise<Point>; + /** + * Get the size of the specified device display. + * + * @param { number } displayId - the Id of the specified display. + * @returns { Promise<Point> } the size of the device display. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + getDisplaySize(displayId: number): Promise<Point>; + /** * Get the density of the device display. * @@ -3831,11 +4370,26 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getDisplayDensity(): Promise<Point>; + /** + * Get the density of the specified device display. + * + * @param { number } displayId - the Id of the specified display. + * @returns { Promise<Point> } the density of the device display. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + getDisplayDensity(displayId: number): Promise<Point>; + /** * Wake up the device display. * @@ -3852,8 +4406,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ wakeUpDisplay(): Promise<void>; @@ -3873,11 +4428,26 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ pressHome(): Promise<void>; + /** + * Press the home key to the specified display. + * + * @param { number } displayId - the Id of the specified display. + * @returns { Promise<void> } + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + pressHome(displayId: number): Promise<void>; + /** * Wait for the UI become idle. * @@ -3900,8 +4470,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ waitForIdle(idleTime: number, timeout: number): Promise<boolean>; @@ -3947,8 +4518,9 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ fling(from: Point, to: Point, stepLen: number, speed: number): Promise<void>; @@ -3975,8 +4547,9 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ injectMultiPointerAction(pointers: PointerMatrix, speed?: number): Promise<boolean>; @@ -4016,11 +4589,28 @@ declare class Driver { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} * @test + * @arkts 1.1&1.2 */ fling(direction: UiDirection, speed: number): Promise<void>; + /** + * Inject fling on the specified device display. + * + * @param { UiDirection } direction - the direction of this action. + * @param { number } speed - the speed of fling (pixels per second),default is 600,the value ranges from 200 to 40000,set it 600 if out of range. + * @param { number } displayId - the Id of the specified display. + * @returns { Promise<void> } + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + fling(direction: UiDirection, speed: number, displayId: number): Promise<void>; + /** * Click on the specified location on the screen with the specified mouse button, and press the specified key simultaneously if necessary. * @@ -4047,8 +4637,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ mouseClick(p: Point, btnId: MouseButton, key1?: number, key2?: number): Promise<void>; @@ -4072,8 +4663,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ mouseMoveTo(p: Point): Promise<void>; @@ -4105,10 +4697,12 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ mouseScroll(p: Point, down: boolean, d: number, key1?: number, key2?: number): Promise<void>; + /** * The mouse wheel scrolls the specified cell at the specified position, and press the specified key simultaneously if necessary. * @@ -4123,8 +4717,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ mouseScroll(p: Point, down: boolean, d: number, key1?: number, key2?: number, speed?: number): Promise<void>; @@ -4150,8 +4745,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ screenCapture(savePath: string, rect?: Rect): Promise<boolean>; @@ -4171,8 +4767,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ createUIEventObserver(): UIEventObserver; @@ -4188,8 +4785,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ mouseDoubleClick(p: Point, btnId: MouseButton, key1?: number, key2?: number): Promise<void>; @@ -4205,11 +4803,30 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ mouseLongClick(p: Point, btnId: MouseButton, key1?: number, key2?: number): Promise<void>; + /** + * Long click on the specified location on the screen with the specified mouse button, and press the specified key simultaneously if necessary. + * + * @param { Point } p - the coordinate of the specified location. + * @param { MouseButton } btnId - the button of Mouse. + * @param { number } [key1] - the first keyCode,set it default 0 if null or undefined. + * @param { number } [key2] - the second keyCode,set it default 0 if null or undefined. + * @param { number } [duration] - duration of mouse longClick in millisecond, the minimum and default are 1500. + * @returns { Promise<void> } + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + mouseLongClick(p: Point, btnId: MouseButton, key1?: number, key2?: number, duration?: number): Promise<void>; + /** * Swipe on the screen between the specified points with mouse. * @@ -4221,8 +4838,9 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ mouseMoveWithTrack(from: Point, to: Point, speed?: number): Promise<void>; @@ -4237,11 +4855,29 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ mouseDrag(from: Point, to: Point, speed?: number): Promise<void>; + /** + * Hold down the left mouse button and drag on the screen between the specified points. + * + * @param { Point } from - the starting point. + * @param { Point } to - the ending point. + * @param { number } [speed] - speed of drag (pixels per second),the value ranges from 200 to 40000,Set it default 600 if out of range or null or undefined. + * @param { number } [duration] - duration of longClick before drag in millisecond, the minimum and default are 1500. + * @returns { Promise<void> } + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + mouseDrag(from: Point, to: Point, speed?: number, duration?: number): Promise<void>; + /** * Inject text on the specified location. * @@ -4252,11 +4888,29 @@ declare class Driver { * @throws { BusinessError } 17000002 - The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ inputText(p: Point, text: string): Promise<void>; + /** + * Inject text on the specified location, default to input at the coordinate of the specified location. + * + * @param { Point } p - the coordinate of the specified location. + * @param { string } text - the text to inject. + * @param { InputTextMode } mode - specific the mode to input text. + * @returns { Promise<void> } + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not support, function can not work correctly due to limited device capabilities. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + inputText(p: Point, text: string, mode: InputTextMode): Promise<void>; + /** * Simulate touchpad multi-finger swipe gestures. * @param { number } fingers Finger count of touchpad multi-finger swipe, ranges from 3 to 4. @@ -4265,11 +4919,12 @@ declare class Driver { * @returns { Promise<void> } * @throws { BusinessError } 401 Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 17000002 The async function is not called with await. - * @throws { BusinessError } 17000005 This device can not support this action. + * @throws { BusinessError } 17000005 This operation is not supported. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ touchPadMultiFingerSwipe(fingers: number, direction: UiDirection, options?: TouchPadSwipeOptions): Promise<void>; @@ -4281,8 +4936,9 @@ declare class Driver { * @throws { BusinessError } 17000002 The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ penClick(point: Point): Promise<void>; @@ -4295,8 +4951,9 @@ declare class Driver { * @throws { BusinessError } 17000002 The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ penLongClick(point: Point, pressure?: number): Promise<void>; @@ -4308,8 +4965,9 @@ declare class Driver { * @throws { BusinessError } 17000002 The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ penDoubleClick(point: Point): Promise<void>; @@ -4324,8 +4982,9 @@ declare class Driver { * @throws { BusinessError } 17000002 The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ penSwipe(startPoint: Point, endPoint: Point, speed?: number, pressure?: number): Promise<void>; @@ -4339,10 +4998,27 @@ declare class Driver { * @throws { BusinessError } 17000002 The async function is not called with await. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} * @test + * @arkts 1.1&1.2 */ injectPenPointerAction(pointers: PointerMatrix, speed?: number, pressure?: number): Promise<void>; + + /** + * Inject a watch crown rotation event, specifies the rotation speed if necessary. + * + * @param { number } d The number of cells that watch rotates.Positive value indicate clockwise rotation,negative value indicate counterclockwise rotation. + * @param { number } [speed] The speed of watch crown rotates(cells per second),ranges from 1 to 500.Set it default 20 if out of range or undefined or null. + * @returns { Promise<void> } + * @throws { BusinessError } 801 - Capability not support, function can not work correctly due to limited device capabilities. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000007 - Parameter verification failed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + crownRotate(d: number, speed?: number): Promise<void>; } /** @@ -4355,8 +5031,9 @@ declare class Driver { * * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ declare class UiWindow { /** @@ -4377,8 +5054,9 @@ declare class UiWindow { * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getBundleName(): Promise<string>; @@ -4401,8 +5079,9 @@ declare class UiWindow { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getBounds(): Promise<Rect>; @@ -4424,8 +5103,9 @@ declare class UiWindow { * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getTitle(): Promise<string>; @@ -4447,8 +5127,9 @@ declare class UiWindow { * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ getWindowMode(): Promise<WindowMode>; @@ -4470,8 +5151,9 @@ declare class UiWindow { * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isFocused(): Promise<boolean>; @@ -4517,8 +5199,9 @@ declare class UiWindow { * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ focus(): Promise<void>; @@ -4548,8 +5231,9 @@ declare class UiWindow { * @throws { BusinessError } 17000005 - This operation is not supported. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ moveTo(x: number, y: number): Promise<void>; @@ -4581,8 +5265,9 @@ declare class UiWindow { * @throws { BusinessError } 17000005 - This operation is not supported. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ resize(wide: number, height: number, direction: ResizeDirection): Promise<void>; @@ -4606,8 +5291,9 @@ declare class UiWindow { * @throws { BusinessError } 17000005 - This operation is not supported. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ split(): Promise<void>; @@ -4631,8 +5317,9 @@ declare class UiWindow { * @throws { BusinessError } 17000005 - This operation is not supported. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ maximize(): Promise<void>; @@ -4656,8 +5343,9 @@ declare class UiWindow { * @throws { BusinessError } 17000005 - This operation is not supported. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ minimize(): Promise<void>; @@ -4681,8 +5369,9 @@ declare class UiWindow { * @throws { BusinessError } 17000005 - This operation is not supported. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ resume(): Promise<void>; @@ -4706,8 +5395,9 @@ declare class UiWindow { * @throws { BusinessError } 17000005 - This operation is not supported. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ close(): Promise<void>; @@ -4719,10 +5409,24 @@ declare class UiWindow { * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. * @syscap SystemCapability.Test.UiTest * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ isActive(): Promise<boolean>; + + /** + * Get the displayId to which the window belongs. + * + * @returns { Promise<number> } the displayId value. + * @throws { BusinessError } 17000002 - The async function is not called with await. + * @throws { BusinessError } 17000004 - The window or component is invisible or destroyed. + * @syscap SystemCapability.Test.UiTest + * @atomicservice + * @since 20 + * @test + */ + getDisplayId(): Promise<number>; } /** @@ -4740,8 +5444,9 @@ declare class UiWindow { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ declare class PointerMatrix { /** @@ -4765,8 +5470,9 @@ declare class PointerMatrix { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ static create(fingers: number, steps: number): PointerMatrix; @@ -4791,8 +5497,9 @@ declare class PointerMatrix { * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ setPoint(finger: number, step: number, point: Point): void; } @@ -4821,21 +5528,28 @@ declare const BY: By; * @syscap SystemCapability.Test.UiTest * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} * @test + * @arkts 1.1&1.2 */ declare const ON: On; + /*** if arkts 1.1 */ + export { + UiComponent, + UiDriver, + BY, + By, + InputTextMode + }; + /*** endif */ + export { - UiComponent, - UiDriver, Component, Driver, UiWindow, ON, On, - BY, - By, MatchPattern, DisplayRotation, ResizeDirection, diff --git a/api/@ohos.ability.screenLockFileManager.d.ts b/api/@ohos.ability.screenLockFileManager.d.ts index b6ff1876f488b3574af9d9c3337dc865e166e22f..df22688c859b54fbd876a7898c7100f3462169a3 100644 --- a/api/@ohos.ability.screenLockFileManager.d.ts +++ b/api/@ohos.ability.screenLockFileManager.d.ts @@ -157,7 +157,7 @@ declare namespace screenLockFileManager { * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameter is left unspecified. 2. Incorrect parameter types. * @throws { BusinessError } 801 - The specified SystemCapability name was not found. - * @throws { BusinessError } 29300001 - Invalid parameter. + * @throws { BusinessError } 29300001 - Invalid DataType. * @throws { BusinessError } 29300002 - The system ability work abnormally. * @throws { BusinessError } 29300003 - The application is not enabled the data protection under lock screen. * @throws { BusinessError } 29300004 - File access is denied. @@ -190,7 +190,7 @@ declare namespace screenLockFileManager { * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameter is left unspecified. 2. Incorrect parameter types. * @throws { BusinessError } 801 - The specified SystemCapability name was not found. - * @throws { BusinessError } 29300001 - Invalid parameter. + * @throws { BusinessError } 29300001 - Invalid DataType. * @throws { BusinessError } 29300002 - The system ability work abnormally. * @throws { BusinessError } 29300003 - The application is not enabled the data protection under lock screen. * @throws { BusinessError } 29300005 - File access was not acquired. @@ -221,7 +221,7 @@ declare namespace screenLockFileManager { * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameter is left unspecified. 2. Incorrect parameter types. * @throws { BusinessError } 801 - The specified SystemCapability name was not found. - * @throws { BusinessError } 29300001 - Invalid parameter. + * @throws { BusinessError } 29300001 - Invalid DataType. * @throws { BusinessError } 29300002 - The system ability work abnormally. * @syscap SystemCapability.Security.ScreenLockFileManager * @systemapi diff --git a/api/@ohos.abilityAccessCtrl.d.ets b/api/@ohos.abilityAccessCtrl.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..e701a0b8b8b8d1c92815e2101ba22516b662aacd --- /dev/null +++ b/api/@ohos.abilityAccessCtrl.d.ets @@ -0,0 +1,381 @@ +/* + * Copyright (c) 2021-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit AbilityKit + */ +import { AsyncCallback, Callback } from './@ohos.base'; +import { Permissions } from './permissions'; +import type _Context from './application/Context'; +import type _PermissionRequestResult from './security/PermissionRequestResult'; + +/** + * @namespace abilityAccessCtrl + * @syscap SystemCapability.Security.AccessToken + * @crossplatform + * @atomicservice + * @since 20 + */ +declare namespace abilityAccessCtrl { + /** + * Obtains the AtManager instance. + * + * @returns { AtManager } returns the instance of the AtManager. + * @syscap SystemCapability.Security.AccessToken + * @crossplatform + * @atomicservice + * @since 20 + */ + function createAtManager(): AtManager; + + /** + * Provides methods for managing access_token. + * + * @interface AtManager + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + interface AtManager { + /** + * Checks whether a specified application has been granted the given permission synchronously. + * + * @param { int } tokenID - Token ID of the application. + * @param { Permissions } permissionName - Name of the permission to be verified. + * @returns { GrantStatus } Returns permission verify result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, or the permissionName exceeds 256 characters. + * @syscap SystemCapability.Security.AccessToken + * @since 20 + */ + verifyAccessTokenSync(tokenID: int, permissionName: Permissions): GrantStatus; + + /** + * Checks whether a specified application has been granted the given permission. + * On the cross-platform, this function can be used to check the permission grant status for the current application only. + * + * @param { int } tokenID - Token ID of the application. + * @param { Permissions } permissionName - Name of the permission to be verified. + * @returns { Promise<GrantStatus> } Returns permission verify result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, or the permissionName exceeds 256 characters. + * @syscap SystemCapability.Security.AccessToken + * @crossplatform + * @atomicservice + * @since 20 + */ + checkAccessToken(tokenID: int, permissionName: Permissions): Promise<GrantStatus>; + + /** + * Checks whether a specified application has been granted the given permission. + * On the cross-platform, this function can be used to check the permission grant status for the current application only. + * + * @param { int } tokenID - Token ID of the application. + * @param { Permissions } permissionName - Name of the permission to be verified. + * @returns { GrantStatus } Returns permission verify result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, or the permissionName exceeds 256 characters. + * @syscap SystemCapability.Security.AccessToken + * @crossplatform + * @atomicservice + * @since 20 + */ + checkAccessTokenSync(tokenID: int, permissionName: Permissions): GrantStatus; + + /** + * Requests certain permissions from the user. + * + * @param { Context } context - The context that initiates the permission request. + * <br> The context must belong to the Stage model and only supports UIAbilityContext and UIExtensionContext. + * @param { Array<Permissions> } permissionList - Indicates the list of permissions to be requested. This parameter cannot be null or empty. + * @param { AsyncCallback<PermissionRequestResult> } requestCallback Callback for the result from requesting permissions. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 12100001 - Invalid parameter. The context is invalid when it does not belong to the application itself. + * @syscap SystemCapability.Security.AccessToken + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + */ + requestPermissionsFromUser(context: Context, permissionList: Array<Permissions>, requestCallback: AsyncCallback<PermissionRequestResult>): void; + + /** + * Requests certain permissions from the user. + * + * @param { Context } context - The context that initiates the permission request. + * <br> The context must belong to the Stage model and only supports UIAbilityContext and UIExtensionContext. + * @param { Array<Permissions> } permissionList - Indicates the list of permissions to be requested. This parameter cannot be null or empty. + * @returns { Promise<PermissionRequestResult> } Returns result of requesting permissions. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 12100001 - Invalid parameter. The context is invalid when it does not belong to the application itself. + * @syscap SystemCapability.Security.AccessToken + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + */ + requestPermissionsFromUser(context: Context, permissionList: Array<Permissions>): Promise<PermissionRequestResult>; + /** + * Requests certain permissions on setting from the user. + * + * @param { Context } context - The context that initiates the permission request. + * <br> The context must belong to the Stage model and only supports UIAbilityContext and UIExtensionContext. + * @param { Array<Permissions> } permissionList - Indicates the list of permission to be requested. This parameter cannot be null or empty. + * @returns { Promise<Array<GrantStatus>> } Returns the list of status of the specified permission. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. + * @throws { BusinessError } 12100001 - Invalid parameter. Possible causes: 1. The context is invalid because it does not belong to the application itself; + * 2. The permission list contains the permission that is not declared in the module.json file; 3. The permission list is invalid because the permissions in it do not belong to the same permission group. + * @throws { BusinessError } 12100010 - The request already exists. + * @throws { BusinessError } 12100011 - All permissions in the permission list have been granted. + * @throws { BusinessError } 12100012 - The permission list contains the permission that has not been revoked by the user. + * @syscap SystemCapability.Security.AccessToken + * @stagemodelonly + * @atomicservice + * @since 20 + */ + requestPermissionOnSetting(context: Context, permissionList: Array<Permissions>): Promise<Array<GrantStatus>>; + } + + /** + * GrantStatus. + * + * @enum { int } + * @syscap SystemCapability.Security.AccessToken + * @crossplatform + * @atomicservice + * @since 20 + */ + export enum GrantStatus { + /** + * access_token permission check fail + * + * @syscap SystemCapability.Security.AccessToken + * @crossplatform + * @atomicservice + * @since 20 + */ + PERMISSION_DENIED = -1, + + /** + * access_token permission check success + * + * @syscap SystemCapability.Security.AccessToken + * @crossplatform + * @atomicservice + * @since 20 + */ + PERMISSION_GRANTED = 0 + } + /** + * Enum for permission state change type. + * + * @enum { int } + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + export enum PermissionStateChangeType { + /** + * A granted user_grant permission is revoked. + * + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + PERMISSION_REVOKED_OPER = 0, + /** + * A user_grant permission is granted. + * + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + PERMISSION_GRANTED_OPER = 1 + } + /** + * Enum for permission request toggle status. + * + * @enum { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + export enum PermissionRequestToggleStatus { + /** + * The toggle status of one permission flag is closed. + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + CLOSED = 0, + /** + * The toggle status of one permission flag is open. + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + OPEN = 1 + } + /** + * Indicates the information of permission state change. + * + * @interface PermissionStateChangeInfo + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + * @name PermissionStateChangeInfo + */ + interface PermissionStateChangeInfo { + /** + * Indicates the permission state change type. + * + * @type { PermissionStateChangeType } + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + change: PermissionStateChangeType; + /** + * Indicates the application whose permission state has been changed. + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + tokenID: int; + /** + * Indicates the permission whose state has been changed. + * + * @type { Permissions } + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + permissionName: Permissions; + } + /** + * PermissionStatus. + * + * @enum { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + export enum PermissionStatus { + /** + * permission has been denied, only can change it in settings + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + DENIED = -1, + /** + * permission has been granted + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + GRANTED = 0, + /** + * permission is not determined + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + NOT_DETERMINED = 1, + /** + * permission is invalid + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + INVALID = 2, + /** + * permission has been restricted + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + RESTRICTED = 3 + } + /** + * SwitchType. + * + * @enum { int } + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + export enum SwitchType { + /** + * switch of camera + * + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + CAMERA = 0, + /** + * switch of microphone + * + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + MICROPHONE = 1, + /** + * switch of location + * + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + LOCATION = 2 + } +} +export default abilityAccessCtrl; +export { Permissions }; + +/** + * PermissionRequestResult interface. + * + * @typedef { _PermissionRequestResult } + * @syscap SystemCapability.Security.AccessToken + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + */ +export type PermissionRequestResult = _PermissionRequestResult; + +/** + * Context interface. + * + * @typedef { _Context } + * @syscap SystemCapability.Security.AccessToken + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + */ +export type Context = _Context; diff --git a/api/@ohos.abilityAccessCtrl.d.ts b/api/@ohos.abilityAccessCtrl.d.ts index 11233217060e2adbfcec71f62c9e6405b3c0bfa3..120ed8b2b59e6beeaa9bda60f4eecb4e3918c50f 100644 --- a/api/@ohos.abilityAccessCtrl.d.ts +++ b/api/@ohos.abilityAccessCtrl.d.ts @@ -293,9 +293,10 @@ declare namespace abilityAccessCtrl { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.GRANT_SENSITIVE_PERMISSIONS". * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the flags value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters or is not declared in the module.json file, + * or the flags value is invalid. * @throws { BusinessError } 12100002 - The specified tokenID does not exist. - * @throws { BusinessError } 12100003 - The specified permission does not exist. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100006 - The application specified by the tokenID is not allowed to be granted with the specified permission. * Either the application is a sandbox or the tokenID is from a remote device. * @throws { BusinessError } 12100007 - The service is abnormal. @@ -316,9 +317,10 @@ declare namespace abilityAccessCtrl { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.GRANT_SENSITIVE_PERMISSIONS". * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the flags value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters or is not declared in the module.json file, + * or the flags value is invalid. * @throws { BusinessError } 12100002 - The specified tokenID does not exist. - * @throws { BusinessError } 12100003 - The specified permission does not exist. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100006 - The application specified by the tokenID is not allowed to be granted with the specified permission. * Either the application is a sandbox or the tokenID is from a remote device. * @throws { BusinessError } 12100007 - The service is abnormal. @@ -344,9 +346,10 @@ declare namespace abilityAccessCtrl { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.REVOKE_SENSITIVE_PERMISSIONS". * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the flags value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters or is not declared in the module.json file, + * or the flags value is invalid. * @throws { BusinessError } 12100002 - The specified tokenID does not exist. - * @throws { BusinessError } 12100003 - The specified permission does not exist. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100006 - The application specified by the tokenID is not allowed to be revoked with the specified permission. * Either the application is a sandbox or the tokenID is from a remote device. * @throws { BusinessError } 12100007 - The service is abnormal. @@ -367,9 +370,10 @@ declare namespace abilityAccessCtrl { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.REVOKE_SENSITIVE_PERMISSIONS". * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the flags value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters or is not declared in the module.json file, + * or the flags value is invalid. * @throws { BusinessError } 12100002 - The specified tokenID does not exist. - * @throws { BusinessError } 12100003 - The specified permission does not exist. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100006 - The application specified by the tokenID is not allowed to be revoked with the specified permission. * Either the application is a sandbox or the tokenID is from a remote device. * @throws { BusinessError } 12100007 - The service is abnormal. @@ -396,7 +400,7 @@ declare namespace abilityAccessCtrl { * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, or the permissionName exceeds 256 characters. * @throws { BusinessError } 12100002 - The specified tokenID does not exist. - * @throws { BusinessError } 12100003 - The specified permission does not exist. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not declared in the module.json file. * @throws { BusinessError } 12100006 - The operation is not allowed. Either the application is a sandbox or the tokenID is from a remote device. * @throws { BusinessError } 12100007 - The service is abnormal. * @syscap SystemCapability.Security.AccessToken @@ -415,7 +419,8 @@ declare namespace abilityAccessCtrl { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission specified below. * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The permissionName exceeds 256 characters, or the status value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The permissionName exceeds 256 characters, the specified permission is not a user_grant permission, + * or the status value is invalid. * @throws { BusinessError } 12100003 - The specified permission does not exist. * @throws { BusinessError } 12100007 - The service is abnormal. * @syscap SystemCapability.Security.AccessToken @@ -433,7 +438,7 @@ declare namespace abilityAccessCtrl { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission specified below. * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The permissionName exceeds 256 characters. + * @throws { BusinessError } 12100001 - Invalid parameter. The permissionName exceeds 256 characters, or the specified permission is not a user_grant permission. * @throws { BusinessError } 12100003 - The specified permission does not exist. * @throws { BusinessError } 12100007 - The service is abnormal. * @syscap SystemCapability.Security.AccessToken @@ -463,7 +468,7 @@ declare namespace abilityAccessCtrl { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.GET_SENSITIVE_PERMISSIONS". * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, or the permissionList is empty. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0 or the permissionList is empty or exceeds the size limit. * @throws { BusinessError } 12100002 - The specified tokenID does not exist. * @throws { BusinessError } 12100007 - The service is abnormal. * @syscap SystemCapability.Security.AccessToken @@ -487,9 +492,10 @@ declare namespace abilityAccessCtrl { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.GET_SENSITIVE_PERMISSIONS". * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, or the permissionName exceeds 256 characters. + * @throws { BusinessError } 12100001 - Invalid parameter. Possible causes: 1. The tokenIDList or permissionList exceeds the size limit; + * 2. The tokenIDs or permissionNames in the list are all invalid. * @throws { BusinessError } 12100004 - The API is used repeatedly with the same input. - * @throws { BusinessError } 12100005 - The registration time has exceeded the limitation. + * @throws { BusinessError } 12100005 - The registration time has exceeded the limit. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. * @syscap SystemCapability.Security.AccessToken @@ -504,17 +510,22 @@ declare namespace abilityAccessCtrl { ): void; /** - * Registers a permission state callback so that the application can be notified upon specified permission state changes. + * Subscribes to the permission changes of this application. * * @param { 'selfPermissionStateChange' } type - Event type. - * @param { Array<Permissions> } permissionList - A list of permissions that specify the permissions to be listened on. The value in the list can be: + * @param { Array<Permissions> } permissionList - A list of permissions that specify the permissions to be + * listened on. The value in the list can be: * <br> {@code empty} - Indicates that the application can be notified if any permission state changes. - * <br> {@code non-empty} - Indicates that the application can only be notified if the specified permission state changes. - * @param { Callback<PermissionStateChangeInfo> } callback - Callback for the result from registering permissions. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12100001 - Invalid parameter. The permissionName exceeds 256 characters. + * <br> {@code non-empty} - Indicates that the application can only be notified if the specified permission + * state changes. + * @param { Callback<PermissionStateChangeInfo> } callback - Callback for the result from registering + * permissions. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left + * unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 12100001 - Invalid parameter. Possible causes: 1. The permissionList exceeds + * the size limit; 2. The permissionNames in the list are all invalid. * @throws { BusinessError } 12100004 - The API is used repeatedly with the same input. - * @throws { BusinessError } 12100005 - The registration time has exceeded the limitation. + * @throws { BusinessError } 12100005 - The registration time has exceeded the limit. * @throws { BusinessError } 12100007 - The service is abnormal. * @syscap SystemCapability.Security.AccessToken * @atomicservice @@ -539,7 +550,7 @@ declare namespace abilityAccessCtrl { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.GET_SENSITIVE_PERMISSIONS". * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenIDs or permissionNames in the list are all invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenIDList or permissionList is not in the listening list. * @throws { BusinessError } 12100004 - The API is not used in pair with 'on'. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. @@ -618,7 +629,6 @@ declare namespace abilityAccessCtrl { * * @param { number } tokenID - Token ID of the application. * @returns { Promise<void> } The promise returned by the function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. * @throws { BusinessError } 12100002 - The specified tokenID does not exist. * @throws { BusinessError } 12100007 - The service is abnormal. @@ -628,6 +638,19 @@ declare namespace abilityAccessCtrl { * @since 18 */ requestPermissionOnApplicationSetting(tokenID: number): Promise<void>; + + /** + * Queries permission status of the application synchronously. + * + * @param { Permissions } permissionName - Indicates the permission to be queried. This parameter cannot be null or empty. + * @returns { PermissionStatus } Return permission status. + * @throws { BusinessError } 12100001 - Invalid parameter. The permissionName is empty or exceeds 256 characters. + * @throws { BusinessError } 12100007 - The service is abnormal. + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */ + getSelfPermissionStatus(permissionName: Permissions): PermissionStatus; } /** @@ -801,48 +824,48 @@ declare namespace abilityAccessCtrl { * * @enum { number } * @syscap SystemCapability.Security.AccessToken - * @systemapi - * @since 12 + * @atomicservice + * @since 20 */ export enum PermissionStatus { /** * permission has been denied, only can change it in settings * * @syscap SystemCapability.Security.AccessToken - * @systemapi - * @since 12 + * @atomicservice + * @since 20 */ DENIED = -1, /** * permission has been granted * * @syscap SystemCapability.Security.AccessToken - * @systemapi - * @since 12 + * @atomicservice + * @since 20 */ GRANTED = 0, /** * permission is not determined * * @syscap SystemCapability.Security.AccessToken - * @systemapi - * @since 12 + * @atomicservice + * @since 20 */ NOT_DETERMINED = 1, /** * permission is invalid * * @syscap SystemCapability.Security.AccessToken - * @systemapi - * @since 12 + * @atomicservice + * @since 20 */ INVALID = 2, /** * permission has been restricted * * @syscap SystemCapability.Security.AccessToken - * @systemapi - * @since 12 + * @atomicservice + * @since 20 */ RESTRICTED = 3 } diff --git a/api/@ohos.accessibility.config.d.ts b/api/@ohos.accessibility.config.d.ts index 70f86c0131c298c06a28ec02048b992274ed0eaa..1bd8be5a5ddd0f7764c2c77cc7347f29b34a1435 100644 --- a/api/@ohos.accessibility.config.d.ts +++ b/api/@ohos.accessibility.config.d.ts @@ -355,6 +355,20 @@ declare namespace config { */ function off(type: 'installedAccessibilityListChange', callback?: Callback<void>): void; + /** + * Set display magnification state. + * + * @permission ohos.permission.WRITE_ACCESSIBILITY_CONFIG + * @param { boolean } state Indicates that whether trigger display magnification. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 9300007 - Trigger magnification failed. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @systemapi + * @since 20 + */ + function setMagnificationState(state: boolean): void; + /** * Indicates setting, getting, and listening to changes in configuration. * diff --git a/api/@ohos.accessibility.d.ts b/api/@ohos.accessibility.d.ts index b8de1bc19b713bb5982d48559fb147e60c08c1cf..0d6508877e8d2f9730fecc4863853c7875b07ad2 100644 --- a/api/@ohos.accessibility.d.ts +++ b/api/@ohos.accessibility.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021-2022 Huawei Device Co., Ltd. + * Copyright (C) 2021-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -37,6 +37,15 @@ import { Resource } from './global/resource'; * @atomicservice * @since 11 */ +/** + * Accessibility + * + * @namespace accessibility + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @crossplatform + * @atomicservice + * @since 20 + */ declare namespace accessibility { /** * The type of the Ability app. @@ -73,7 +82,8 @@ declare namespace accessibility { * * @typedef {'accessibilityFocus' | 'clearAccessibilityFocus' | 'focus' | 'clearFocus' | 'clearSelection' | 'click' | 'longClick' | 'cut' | 'copy' | 'paste' | 'select' | 'setText' | 'delete' | 'scrollForward' | 'scrollBackward' | 'setSelection' | 'setCursorPosition' | 'home' | 'back' | 'recentTask' | 'notificationCenter' | 'controlCenter' | 'common'} * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ type Action = 'accessibilityFocus' | 'clearAccessibilityFocus' | 'focus' | 'clearFocus' | 'clearSelection' | 'click' | 'longClick' | 'cut' | 'copy' | 'paste' | 'select' | 'setText' | 'delete' | @@ -113,7 +123,8 @@ declare namespace accessibility { * * @typedef {'accessibilityFocus' | 'accessibilityFocusClear' | 'click' | 'longClick' | 'focus' | 'select' | 'hoverEnter' | 'hoverExit' | 'textUpdate' | 'textSelectionUpdate' | 'scroll' | 'requestFocusForAccessibility' | 'announceForAccessibility' | 'requestFocusForAccessibilityNotInterrupt' | 'announceForAccessibilityNotInterrupt' | 'scrolling'} * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ type EventType = 'accessibilityFocus' | 'accessibilityFocusClear' | 'click' | 'longClick' | 'focus' | 'select' | 'hoverEnter' | 'hoverExit' | @@ -127,7 +138,8 @@ declare namespace accessibility { * * @typedef {'add' | 'remove' | 'bounds' | 'active' | 'focus'} * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ type WindowUpdateType = 'add' | 'remove' | 'bounds' | 'active' | 'focus'; @@ -160,7 +172,8 @@ declare namespace accessibility { * * @typedef {'char' | 'word' | 'line' | 'page' | 'paragraph'} * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ type TextMoveUnit = 'char' | 'word' | 'line' | 'page' | 'paragraph'; @@ -201,6 +214,16 @@ declare namespace accessibility { * @atomicservice * @since 11 */ + /** + * Checks whether accessibility ability is enabled. + * + * @returns { boolean } Returns true if the accessibility is enabled; returns false otherwise. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ function isOpenAccessibilitySync(): boolean; /** @@ -238,7 +261,8 @@ declare namespace accessibility { * @returns { boolean } Returns true if the touch browser is enabled; returns false otherwise. * @syscap SystemCapability.BarrierFree.Accessibility.Vision * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function isOpenTouchGuideSync(): boolean; @@ -246,6 +270,7 @@ declare namespace accessibility { * Checks screen reader ability (which is used by talkback) is enabled. * @returns { boolean } Returns true if the screen reader is enabled; return false otherwise. * @syscap SystemCapability.BarrierFree.Accessibility.Vision + * @atomicservice * @since 18 */ function isScreenReaderOpenSync(): boolean; @@ -365,7 +390,8 @@ declare namespace accessibility { * 2. Incorrect parameter types; * 3. Parameter verification failed. * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function sendAccessibilityEvent(event: EventInfo, callback: AsyncCallback<void>): void; @@ -379,10 +405,19 @@ declare namespace accessibility { * 2. Incorrect parameter types; * 3. Parameter verification failed. * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function sendAccessibilityEvent(event: EventInfo): Promise<void>; + /** + * Gets touch mode type. + * @returns { string } Returns touch mode type, include 'singleTouchMode', 'doubleTouchMode', and 'none'. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @since 20 + */ + function getTouchModeSync(): string; + /** * Register the observe of the accessibility state changed. * @@ -395,6 +430,20 @@ declare namespace accessibility { * @syscap SystemCapability.BarrierFree.Accessibility.Core * @since 7 */ + /** + * Register the observe of the accessibility state changed. + * + * @param { 'accessibilityStateChange' } type state event type. + * @param { Callback<boolean> } callback Asynchronous callback interface. + * @throws { BusinessError } 401 - Input parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @crossplatform + * @since 20 + * @arkts 1.1&1.2 + */ function on(type: 'accessibilityStateChange', callback: Callback<boolean>): void; /** @@ -424,6 +473,19 @@ declare namespace accessibility { */ function on(type: 'screenReaderStateChange', callback: Callback<boolean>): void; + /** + * Register the observe of the touch mode changed. + * @param { 'touchModeChange' } type touch mode change. + * @param { Callback<string> } callback callback Asynchronous callback interface. + * @throws { BusinessError } 401 Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @since 20 + */ + function on(type: 'touchModeChange', callback: Callback<string>): void; + /** * Unregister the observe of the accessibility state changed. * @@ -436,6 +498,19 @@ declare namespace accessibility { * @syscap SystemCapability.BarrierFree.Accessibility.Core * @since 7 */ + /** + * Unregister the observe of the accessibility state changed. + * + * @param { 'accessibilityStateChange' } type state event type + * @param { Callback<boolean> } callback Asynchronous callback interface. + * @throws { BusinessError } 401 - Input parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @crossplatform + * @since 20 + */ function off(type: 'accessibilityStateChange', callback?: Callback<boolean>): void; /** @@ -465,6 +540,19 @@ declare namespace accessibility { */ function off(type: 'screenReaderStateChange', callback?: Callback<boolean>): void; + /** + * Unregister the observe of the touch mode changed. + * @param { 'touchModeChange' } type touch mode change. + * @param { Callback<string> } callback callback Asynchronous callback interface. + * @throws { BusinessError } 401 Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @since 20 + */ + function off(type: 'touchModeChange', callback?: Callback<string>): void; + /** * Get the captions manager. * @@ -733,7 +821,8 @@ declare namespace accessibility { * Indicates the info of events. * * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ class EventInfo { /** @@ -751,14 +840,16 @@ declare namespace accessibility { * @param { string } bundleName - The name of the bundle. * @param { Action } triggerAction - The action that the ability can execute. * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(type: EventType, bundleName: string, triggerAction: Action); /** * The type of an accessibility event. * @type { EventType } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ type: EventType; @@ -766,7 +857,8 @@ declare namespace accessibility { * The type of the window change event. * @type { ?WindowUpdateType } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ windowUpdateType?: WindowUpdateType; @@ -774,7 +866,8 @@ declare namespace accessibility { * The bundle name of the target application. * @type { string } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ bundleName: string; @@ -782,7 +875,8 @@ declare namespace accessibility { * The type of the event source component,such as button, chart. * @type { ?string } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ componentType?: string; @@ -790,7 +884,8 @@ declare namespace accessibility { * The page id of the event source. * @type { ?number } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ pageId?: number; @@ -798,7 +893,8 @@ declare namespace accessibility { * The accessibility event description. * @type { ?string } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ description?: string; @@ -806,7 +902,8 @@ declare namespace accessibility { * The action that triggers the accessibility event, for example, clicking or focusing a view. * @type { Action } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ triggerAction: Action; @@ -814,7 +911,8 @@ declare namespace accessibility { * The movement step used for reading texts. * @type { ?TextMoveUnit } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ textMoveUnit?: TextMoveUnit; @@ -822,7 +920,8 @@ declare namespace accessibility { * The content list. * @type { ?Array<string> } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ contents?: Array<string>; @@ -830,7 +929,8 @@ declare namespace accessibility { * The content changed before. * @type { ?string } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ lastContent?: string; @@ -838,7 +938,8 @@ declare namespace accessibility { * The start index of listed items on the screen. * @type { ?number } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ beginIndex?: number; @@ -846,7 +947,8 @@ declare namespace accessibility { * The index of the current item on the screen. * @type { ?number } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ currentIndex?: number; @@ -854,7 +956,8 @@ declare namespace accessibility { * The end index of listed items on the screen. * @type { ?number } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ endIndex?: number; @@ -862,7 +965,8 @@ declare namespace accessibility { * The total of the items, talkback used it when scroll. * @type { ?number } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ itemCount?: number; @@ -870,7 +974,8 @@ declare namespace accessibility { * The id of element. * @type { ?number } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ elementId?: number; @@ -878,7 +983,8 @@ declare namespace accessibility { * The content of announce accessibility text. * @type { ?string } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ textAnnouncedForAccessibility?: string; @@ -886,7 +992,8 @@ declare namespace accessibility { * The content of announce accessibility text. * @type { ?Resource } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ textResourceAnnouncedForAccessibility?: Resource; @@ -894,7 +1001,8 @@ declare namespace accessibility { * The customized element id. * @type { ?string } * @syscap SystemCapability.BarrierFree.Accessibility.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ customId?: string; } diff --git a/api/@ohos.account.osAccount.d.ts b/api/@ohos.account.osAccount.d.ts index 0b9cbc77692ea87218d737a7b13dbfbd824c64a3..1c32948cc15bd2a92ebacb2c6280d46ac8ee523a 100644 --- a/api/@ohos.account.osAccount.d.ts +++ b/api/@ohos.account.osAccount.d.ts @@ -89,6 +89,7 @@ declare namespace osAccount { * @throws { BusinessError } 12300002 - Invalid localId. * @throws { BusinessError } 12300003 - Account not found. * @throws { BusinessError } 12300008 - Restricted Account. + * @throws { BusinessError } 12300010 - Service busy. Possible causes: The target account is being operated. * @throws { BusinessError } 12300016 - The number of logged in accounts reaches the upper limit. * @syscap SystemCapability.Account.OsAccount * @systemapi Hide this for inner system use. @@ -139,6 +140,7 @@ declare namespace osAccount { * @throws { BusinessError } 12300002 - Invalid localId. * @throws { BusinessError } 12300003 - Account not found. * @throws { BusinessError } 12300008 - Restricted Account. + * @throws { BusinessError } 12300010 - Service busy. Possible causes: The target account is being operated. * @throws { BusinessError } 12300016 - The number of logged in accounts reaches the upper limit. * @syscap SystemCapability.Account.OsAccount * @systemapi Hide this for inner system use. @@ -159,6 +161,7 @@ declare namespace osAccount { * @throws { BusinessError } 12300001 - The system service works abnormally. * @throws { BusinessError } 12300003 - Account not found. * @throws { BusinessError } 12300008 - Restricted Account. + * @throws { BusinessError } 12300010 - Service busy. Possible causes: The target account is being operated. * @syscap SystemCapability.Account.OsAccount * @systemapi Hide this for inner system use. * @since 12 @@ -2289,23 +2292,23 @@ declare namespace osAccount { */ shortName: string; - /** + /** * Indicates the bundles are disallowed to be preinstalled on the OS account. * * @type { ?Array<string> } * @syscap SystemCapability.Account.OsAccount * @systemapi Hide this for inner system use. - * @since 18 + * @since 19 */ disallowedPreinstalledBundles?: Array<string>; - /** + /** * Indicates the bundles are allowed to be preinstalled on the OS account. * * @type { ?Array<string> } * @syscap SystemCapability.Account.OsAccount * @systemapi Hide this for inner system use. - * @since 18 + * @since 19 */ allowedPreinstalledBundles?: Array<string>; } @@ -2399,7 +2402,7 @@ declare namespace osAccount { * @syscap SystemCapability.Account.OsAccount * @since 7 */ - NORMAL, + NORMAL = 1, /** * Indicates a guest account, which is used to temporarily access the device and may be deleted at any time. @@ -2407,7 +2410,7 @@ declare namespace osAccount { * @syscap SystemCapability.Account.OsAccount * @since 7 */ - GUEST, + GUEST = 2, /** * Indicates a private account. @@ -3472,8 +3475,6 @@ declare namespace osAccount { * @param { DomainAccountInfo } newAccountInfo - Indicates the new domain account information. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 12300001 - The system service works abnormally. * @throws { BusinessError } 12300002 - The new account info is invalid. @@ -3654,8 +3655,6 @@ declare namespace osAccount { * @param { Record<string, Object> } parameters - Indicates the server config parameters. * @returns { Promise<DomainServerConfig> } Returns the added domain server config. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 12300001 - The system service works abnormally. * @throws { BusinessError } 12300002 - Invalid server config parameters. @@ -3675,8 +3674,6 @@ declare namespace osAccount { * @param { string } configId - Indicates the server config identifier. * @returns { Promise<void> } Returns void. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 12300001 - The system service works abnormally. * @throws { BusinessError } 12300212 - Server config not found. @@ -3690,13 +3687,11 @@ declare namespace osAccount { /** * Updates the target server config with the specified parameters. * - * @permission ohos.permission.MANAGE_DOMAIN_ACCOUNT_SERVER_CONFIGS + * @permission ohos.permission.MANAGE_DOMAIN_ACCOUNT_SERVER_CONFIGS * @param { string } configId - Indicates the server config identifier. * @param { Record<string, Object> } parameters - Indicates the server config parameters. * @returns { Promise<DomainServerConfig> } Returns the updated domain server config. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 12300001 - The system service works abnormally. * @throws { BusinessError } 12300002 - Invalid server config parameters. @@ -3717,8 +3712,6 @@ declare namespace osAccount { * @param { string } configId - Indicates the server config identifier. * @returns { Promise<DomainServerConfig> } Returns the server config. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 12300001 - The system service works abnormally. * @throws { BusinessError } 12300212 - Server config not found. @@ -3749,8 +3742,6 @@ declare namespace osAccount { * @param { DomainAccountInfo } domainAccountInfo - Indicates the domain account information. * @returns { Promise<DomainServerConfig> } Returns the domain server config. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 12300001 - The system service works abnormally. * @throws { BusinessError } 12300003 - Domain account not found. @@ -4184,6 +4175,15 @@ declare namespace osAccount { * @since 14 */ QUESTION_AUTH = 3, + + /** + * Indicates the intent of the abandoned PIN authentication. + * + * @syscap SystemCapability.Account.OsAccount + * @systemapi + * @since 20 + */ + ABANDONED_PIN_AUTH = 4 } /** @@ -4551,6 +4551,16 @@ declare namespace osAccount { * @since 10 */ sensorInfo?: string; + + /** + * Indicates the credential length. + * + * @type { ?number } + * @syscap SystemCapability.Account.OsAccount + * @systemapi + * @since 20 + */ + credentialLength?: number; } /** @@ -4751,6 +4761,25 @@ declare namespace osAccount { * @since 8 */ templateId: Uint8Array; + + /** + * Indicates whether the credential is abandoned. + * @type { ?boolean } + * @syscap SystemCapability.Account.OsAccount + * @systemapi + * @since 20 + */ + isAbandoned?: boolean; + + /** + * Indicates the validity period. + * + * @type { ?number } + * @syscap SystemCapability.Account.OsAccount + * @systemapi + * @since 20 + */ + validityPeriod?: number; } /** @@ -4814,7 +4843,16 @@ declare namespace osAccount { * @systemapi Hide this for inner system use. * @since 12 */ - NEXT_PHASE_FREEZING_TIME = 6 + NEXT_PHASE_FREEZING_TIME = 6, + + /** + * Indicates the type for getting the credential length. + * + * @syscap SystemCapability.Account.OsAccount + * @systemapi + * @since 20 + */ + CREDENTIAL_LENGTH = 7 } /** diff --git a/api/@ohos.advertising.d.ts b/api/@ohos.advertising.d.ts index fb6b3767bf88673d0f14355e5a4684cdb85c74d1..1bcd0e2fd7da808c0a5d9e6c7b17c239f3c72c8e 100644 --- a/api/@ohos.advertising.d.ts +++ b/api/@ohos.advertising.d.ts @@ -493,7 +493,7 @@ declare namespace advertising { * Show the reward and interstitial ad. * @param { Advertisement } ad - Indicates the advertisement content information. ad is required. * @param { AdDisplayOptions } options - Indicates interaction option object use to show the ad. options is required. - * @param { common.UIAbilityContext } context - Indicates the ui ability context of the media application. + * @param { common.UIAbilityContext } [context] - Indicates the ui ability context of the media application. * @throws { BusinessError } 401 - Invalid input parameter. Possible causes: 1. Mandatory parameters are left unspecified. * @throws { BusinessError } 21800001 - System internal error. * @throws { BusinessError } 21800004 - Failed to display the ad. diff --git a/api/@ohos.animator.d.ets b/api/@ohos.animator.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..6b2bb94ba046eb469d3b3ec26aea0408cbcfc818 --- /dev/null +++ b/api/@ohos.animator.d.ets @@ -0,0 +1,682 @@ +/* + * Copyright (c) 2020-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ +import { ExpectedFrameRateRange } from './arkui/component/common' + +/** + * Defines the animator options. + * @interface AnimatorOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ +/** + * Defines the animator options. + * @interface AnimatorOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Defines the animator options. + * @interface AnimatorOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export interface AnimatorOptions { + /** + * Duration of the animation, in milliseconds. + * The default value is 0. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Duration of the animation, in milliseconds. + * The default value is 0. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Duration of the animation, in milliseconds. + * The default value is 0. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + duration: number; + + /** + * Time curve of the animation. For details about the supported types. + * linear The animation speed keeps unchanged. + * ease The animation starts and ends at a low speed, cubic-bezier(0.25, 0.1, 0.25, 1.0). + * ease-in The animation starts at a low speed, cubic-bezier(0.42, 0.0, 1.0, 1.0). + * ease-out The animation ends at a low speed, cubic-bezier(0.0, 0.0, 0.58, 1.0). + * ease-in-out The animation starts and ends at a low speed, cubic-bezier(0.42, 0.0, 0.58, 1.0). + * fast-out-slow-in Standard curve, cubic-bezier(0.4, 0.0, 0.2, 1.0). + * linear-out-slow-in Deceleration curve, cubic-bezier(0.0, 0.0, 0.2, 1.0). + * fast-out-linear-in Acceleration curve, cubic-bezier(0.4, 0.0, 1.0, 1.0). + * friction Damping curve, cubic-bezier(0.2, 0.0, 0.2, 1.0). + * extreme-deceleration Extreme deceleration curve, cubic-bezier(0.0, 0.0, 0.0, 1.0). + * sharp Sharp curve, cubic-bezier(0.33, 0.0, 0.67, 1.0). + * rhythm Rhythm curve, cubic-bezier(0.7, 0.0, 0.2, 1.0). + * smooth Smooth curve, cubic-bezier(0.4, 0.0, 0.4, 1.0). + * cubic-bezier(x1, y1, x2, y2) You can customize an animation speed curve in the cubic-bezier() function. The x and y values of each input parameter must be between 0 and 1. + * Step curve. The number must be set and only an integer is supported, step-position is optional. It can be set to start or end. The default value is end. + * The default value is ease. + * @type {string} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Time curve of the animation. For details about the supported types. + * linear The animation speed keeps unchanged. + * ease The animation starts and ends at a low speed, cubic-bezier(0.25, 0.1, 0.25, 1.0). + * ease-in The animation starts at a low speed, cubic-bezier(0.42, 0.0, 1.0, 1.0). + * ease-out The animation ends at a low speed, cubic-bezier(0.0, 0.0, 0.58, 1.0). + * ease-in-out The animation starts and ends at a low speed, cubic-bezier(0.42, 0.0, 0.58, 1.0). + * fast-out-slow-in Standard curve, cubic-bezier(0.4, 0.0, 0.2, 1.0). + * linear-out-slow-in Deceleration curve, cubic-bezier(0.0, 0.0, 0.2, 1.0). + * fast-out-linear-in Acceleration curve, cubic-bezier(0.4, 0.0, 1.0, 1.0). + * friction Damping curve, cubic-bezier(0.2, 0.0, 0.2, 1.0). + * extreme-deceleration Extreme deceleration curve, cubic-bezier(0.0, 0.0, 0.0, 1.0). + * sharp Sharp curve, cubic-bezier(0.33, 0.0, 0.67, 1.0). + * rhythm Rhythm curve, cubic-bezier(0.7, 0.0, 0.2, 1.0). + * smooth Smooth curve, cubic-bezier(0.4, 0.0, 0.4, 1.0). + * cubic-bezier(x1, y1, x2, y2) You can customize an animation speed curve in the cubic-bezier() function. The x and y values of each input parameter must be between 0 and 1. + * Step curve. The number must be set and only an integer is supported, step-position is optional. It can be set to start or end. The default value is end. + * The default value is ease. + * @type {string} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Time curve of the animation. For details about the supported types. + * linear The animation speed keeps unchanged. + * ease The animation starts and ends at a low speed, cubic-bezier(0.25, 0.1, 0.25, 1.0). + * ease-in The animation starts at a low speed, cubic-bezier(0.42, 0.0, 1.0, 1.0). + * ease-out The animation ends at a low speed, cubic-bezier(0.0, 0.0, 0.58, 1.0). + * ease-in-out The animation starts and ends at a low speed, cubic-bezier(0.42, 0.0, 0.58, 1.0). + * fast-out-slow-in Standard curve, cubic-bezier(0.4, 0.0, 0.2, 1.0). + * linear-out-slow-in Deceleration curve, cubic-bezier(0.0, 0.0, 0.2, 1.0). + * fast-out-linear-in Acceleration curve, cubic-bezier(0.4, 0.0, 1.0, 1.0). + * friction Damping curve, cubic-bezier(0.2, 0.0, 0.2, 1.0). + * extreme-deceleration Extreme deceleration curve, cubic-bezier(0.0, 0.0, 0.0, 1.0). + * sharp Sharp curve, cubic-bezier(0.33, 0.0, 0.67, 1.0). + * rhythm Rhythm curve, cubic-bezier(0.7, 0.0, 0.2, 1.0). + * smooth Smooth curve, cubic-bezier(0.4, 0.0, 0.4, 1.0). + * cubic-bezier(x1, y1, x2, y2) You can customize an animation speed curve in the cubic-bezier() function. The x and y values of each input parameter must be between 0 and 1. + * Step curve. The number must be set and only an integer is supported, step-position is optional. It can be set to start or end. The default value is end. + * interpolating-spring(velocity, mass, stiffness, damping), interpolating spring curve. + * The default value is ease. + * @type {string} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + easing: string; + + /** + * Delay for the animation start. The default value indicates no delay. + * The default value is 0. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Delay for the animation start. The default value indicates no delay. + * The default value is 0. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Delay for the animation start. The default value indicates no delay. + * The default value is 0. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + delay: number; + + /** + * Whether to resume to the initial state after the animation is executed. + * none: The initial state is restored after the animation is executed. + * forwards: The state at the end of the animation (defined in the last key frame) is retained after the animation is executed. + * @type {"none" | "forwards" | "backwards" | "both"} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Whether to resume to the initial state after the animation is executed. + * none: The initial state is restored after the animation is executed. + * forwards: The state at the end of the animation (defined in the last key frame) is retained after the animation is executed. + * @type {"none" | "forwards" | "backwards" | "both"} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Whether to resume to the initial state after the animation is executed. + * none: The initial state is restored after the animation is executed. + * forwards: The state at the end of the animation (defined in the last key frame) is retained after the animation is executed. + * @type {"none" | "forwards" | "backwards" | "both"} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + fill: "none" | "forwards" | "backwards" | "both"; + + /** + * The animation playback mode. + * The default value is "normal". + * @type {"normal" | "reverse" | "alternate" | "alternate-reverse"} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * The animation playback mode. + * The default value is "normal". + * @type {"normal" | "reverse" | "alternate" | "alternate-reverse"} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * The animation playback mode. + * The default value is "normal". + * @type {"normal" | "reverse" | "alternate" | "alternate-reverse"} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + direction: "normal" | "reverse" | "alternate" | "alternate-reverse"; + + /** + * Number of times the animation will be played. number indicates a fixed number of playback operations, and -1 an unlimited number of playback operations. + * The default value is 1. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Number of times the animation will be played. number indicates a fixed number of playback operations, and -1 an unlimited number of playback operations. + * The default value is 1. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Number of times the animation will be played. number indicates a fixed number of playback operations, and -1 an unlimited number of playback operations. + * The default value is 1. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + iterations: number; + + /** + * Starting point of animator interpolation. + * The default value is 0. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Starting point of animator interpolation. + * The default value is 0. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Starting point of animator interpolation. + * The default value is 0. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + begin: number; + + /** + * Ending point of Dynamic Interpolation + * The default value is 1. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Ending point of Dynamic Interpolation + * The default value is 1. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Ending point of Dynamic Interpolation + * The default value is 1. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + end: number; +} + +/** + * Defines the Animator result interface. + * @interface AnimatorResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ +/** + * Defines the Animator result interface. + * @interface AnimatorResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Defines the Animator result interface. + * @interface AnimatorResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export interface AnimatorResult { + /** + * Update the options for current animator. + * @param { AnimatorOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 9 + * @useinstead ohos.animator.reset + */ + update(options: AnimatorOptions): void; + + /** + * Reset the options for current animator. + * @param { AnimatorOptions } options - Options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The specified page is not found or the object property list is not obtained. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Reset the options for current animator. + * @param { AnimatorOptions } options - Options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The specified page is not found or the object property list is not obtained. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Reset the options for current animator. + * @param { AnimatorOptions } options - Options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The specified page is not found or the object property list is not obtained. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + reset(options: AnimatorOptions): void; + + /** + * Starts the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Starts the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Starts the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + play(): void; + + /** + * Ends the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Ends the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Ends the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + finish(): void; + + /** + * Pauses the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Pauses the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Pauses the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + pause(): void; + + /** + * Cancels the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Cancels the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Cancels the animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + cancel(): void; + + /** + * Plays the animation in reverse direction. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Plays the animation in reverse direction. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Plays the animation in reverse direction. + * Invalid when using interpolating-spring curve. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + reverse(): void; + + /** + * Trigger when vsync callback. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Trigger when vsync callback. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Trigger when vsync callback. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + * @deprecated since 12 + * @useinstead ohos.animator.onFrame + */ + onframe: (progress: number) => void; + + /** + * Trigger when vSync callback. + * + * @type { function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onFrame: (progress: number) => void; + + /** + * The animation is finished. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * The animation is finished. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * The animation is finished. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + * @deprecated since 12 + * @useinstead ohos.animator.onFinish + */ + onfinish: () => void; + + /** + * The animation is finished. + * + * @type { function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onFinish: () => void; + + /** + * The animation is canceled. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * The animation is canceled. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * The animation is canceled. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + * @deprecated since 12 + * @useinstead ohos.animator.onCancel + */ + oncancel: () => void; + + /** + * The animation is canceled. + * + * @type { function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onCancel: () => void; + + /** + * The animation is repeated. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * The animation is repeated. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * The animation is repeated. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + * @deprecated since 12 + * @useinstead ohos.animator.onRepeat + */ + onrepeat: () => void; + + /** + * The animation is repeated. + * + * @type { function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onRepeat: () => void; + + /** + * The expected frame rate of dynamical of rate range. + * @param { ExpectedFrameRateRange } rateRange - Indicates ExpectedFrameRateRange. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + setExpectedFrameRateRange(rateRange: ExpectedFrameRateRange): void; +} + +/** + * Defines the Animator class. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ +/** + * Defines the Animator class. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Defines the Animator class. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare class Animator { + /** + * Create an animator object for custom animation. + * @param { AnimatorOptions } options - Options. + * @returns { AnimatorResult } animator result + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 9 + * @useinstead ohos.animator.create + */ + static createAnimator(options: AnimatorOptions): AnimatorResult; + + /** + * Create an animator object for custom animation. + * @param { AnimatorOptions } options - Options. + * @returns { AnimatorResult } animator result + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Create an animator object for custom animation. + * @param { AnimatorOptions } options - Options. + * @returns { AnimatorResult } animator result + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Create an animator object for custom animation. + * @param { AnimatorOptions } options - Options. + * @returns { AnimatorResult } animator result + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + static create(options: AnimatorOptions): AnimatorResult; +} \ No newline at end of file diff --git a/api/@ohos.app.ability.Ability.d.ts b/api/@ohos.app.ability.Ability.d.ts index d75c045d96e6fcca3e84dcb082f4ba00428ad41a..5c7161352dc0b708532ac2df525341ce198b56bd 100644 --- a/api/@ohos.app.ability.Ability.d.ts +++ b/api/@ohos.app.ability.Ability.d.ts @@ -18,8 +18,10 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ import AbilityConstant from './@ohos.app.ability.AbilityConstant'; import { Configuration } from './@ohos.app.ability.Configuration'; +/*** endif */ /** * The class of an ability. @@ -34,7 +36,8 @@ import { Configuration } from './@ohos.app.ability.Configuration'; * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @StageModelOnly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export default class Ability { /** diff --git a/api/@ohos.app.ability.AbilityConstant.d.ts b/api/@ohos.app.ability.AbilityConstant.d.ts index 0275e7848d5276c65abcd915a7630c25a51b4abc..1f7273212581ebc63d42829b88f39347446b1b35 100644 --- a/api/@ohos.app.ability.AbilityConstant.d.ts +++ b/api/@ohos.app.ability.AbilityConstant.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Copyright (c) 2022-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"), * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -18,6 +18,10 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ +import type appManager from './@ohos.app.ability.appManager'; +/*** endif */ + /** * The definition of AbilityConstant. * @@ -36,16 +40,28 @@ * @since 10 */ /** - * The definition of AbilityConstant. + * The <code>AbilityConstant</code> module defines the UIAbility-related enums, including the initial launch reasons, + * reasons for the last exit, ability continuation results, and window modes. * * @namespace AbilityConstant * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace AbilityConstant { + /** + * Indicates that the application is launched by clicking the shortcut icon on the desktop. + * + * @constant + * @syscap SystemCapability.Ability.AbilityBase + * @stagemodelonly + * @atomicservice + * @since 20 + */ + const REASON_MESSAGE_DESKTOP_SHORTCUT = 'ReasonMessage_DesktopShortcut'; /** * Interface of launch param. * @@ -64,14 +80,17 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Interface of launch param. + * Defines the parameters for starting an ability. + * The parameter values are automatically passed in by the system when the ability is started. You do not need to + * change the values. * * @typedef LaunchParam * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface LaunchParam { /** @@ -92,25 +111,27 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Indicates launch reason. + * Ability launch reason, which is an enumerated type. * * @type { LaunchReason } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ launchReason: LaunchReason; /** - * Indicates launch detailed reason. + * Detailed message that describes the ability launch reason. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ launchReasonMessage?: string; @@ -132,19 +153,20 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Indicates last exit reason. + * Reason for the last exit, which is an enumerated type. * * @type { LastExitReason } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ lastExitReason: LastExitReason; /** - * Indicates last exit detailed reason. + * Reason for the last exit. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -155,7 +177,7 @@ declare namespace AbilityConstant { lastExitMessage: string; /** - * Indicates process last exit details. + * Detailed information about the last exit. * * @type { LastExitDetailInfo } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -167,7 +189,7 @@ declare namespace AbilityConstant { } /** - * The definition of detailed information of process exits + * Describes the detailed information about the last exit. * * @typedef LastExitDetailInfo * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -177,7 +199,7 @@ declare namespace AbilityConstant { */ export interface LastExitDetailInfo { /** - * Indicates the exited process id + * ID of the process where the ability is running when it exits last time. * * @type { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -188,7 +210,7 @@ declare namespace AbilityConstant { pid: number; /** - * Indicates the exited process name + * Name of the process. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -199,7 +221,7 @@ declare namespace AbilityConstant { processName: string; /** - * Indicates the uid of exited process + * UID of the application. * * @type { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -210,7 +232,7 @@ declare namespace AbilityConstant { uid: number; /** - * Indicates the exit sub-reason + * Specific reason for the last exit of the ability. * * @type { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -221,7 +243,7 @@ declare namespace AbilityConstant { exitSubReason: number; /** - * Indicates the exit detailed reason + * Reason why the process was killed. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -232,7 +254,7 @@ declare namespace AbilityConstant { exitMsg: string; /** - * Indicates the rss value when process exit + * RSS value of the process. * * @type { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -243,7 +265,7 @@ declare namespace AbilityConstant { rss: number; /** - * Indicates the pss value when process exit + * PSS value of the process. * * @type { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -254,7 +276,7 @@ declare namespace AbilityConstant { pss: number; /** - * Indicates the timestamp when process exit + * Exact time when the ability last exits. * * @type { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -263,6 +285,17 @@ declare namespace AbilityConstant { * @since 18 */ timestamp: number; + + /** + * The process state when the process exits. + * + * @type { ?appManager.ProcessState } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + processState?: appManager.ProcessState; } /** @@ -283,14 +316,17 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Type of launch reason. + * Enumerates the initial ability launch reasons. + * You can use it together with the value of <code>launchParam.launchReason</code> in + * <code>onCreate(want, launchParam)</code> of the UIAbility to complete different operations. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum LaunchReason { /** @@ -307,11 +343,14 @@ declare namespace AbilityConstant { * @since 10 */ /** + * Unknown reason. + * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ UNKNOWN = 0, @@ -323,12 +362,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Start ability through the startAbility interface. + * The ability is started by calling <code>startAbility</code>. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ START_ABILITY = 1, @@ -340,12 +380,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Start ability through the startAbilityByCall interface. + * The ability is started by calling <code>startAbilityByCall</code>. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ CALL = 2, @@ -357,12 +398,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Start ability through cross-end device migration. + * The ability is started by means of cross-device migration. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ CONTINUATION = 3, @@ -374,12 +416,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * After the application is restored, the ability is automatically restored and started when the application fails. + * The ability is automatically started when the application is restored from a fault. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ APP_RECOVERY = 4, @@ -391,41 +434,45 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Start ability through the acquireShareData interface. + * The ability is started by means of atomic service sharing. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ SHARE = 5, /** - * Start ability by booting it up. + * The ability is automatically started upon system boot. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ AUTO_STARTUP = 8, /** - * Start ability through the insight intent interface. + * The ability is started by the InsightIntent framework. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ INSIGHT_INTENT = 9, /** - * Prepare start ability through cross-end device migration. + * The ability is started in advance during cross-device migration. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ PREPARE_CONTINUATION = 10, } @@ -448,14 +495,17 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Type of last exit reason. + * Enumerates the reasons for the last exit. + * You can use it together with the value of <code>launchParam.lastExitReason</code> in + * <code>onCreate(want, launchParam)</code> of the UIAbility to complete different operations. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum LastExitReason { /** @@ -476,19 +526,19 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Exit reason : Unknown. The reason for the last exit of the target application is not recorded in the application - * framework. + * Unknown reason. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ UNKNOWN = 0, /** - * Exit reason : Ability is not responding. + * The ability does not respond. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -506,12 +556,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Exit reason : normally. App exit due to user active close. + * The ability exits normally because the user closes the application. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ NORMAL = 2, @@ -523,12 +574,13 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Exit reason : cpp crash. The app exit due to native exception signal. + * The ability exits due to abnormal signals on the local host. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ CPP_CRASH = 3, @@ -540,12 +592,14 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Exit reason : js error. App exit due to js error. + * The ability exits due to a JS_ERROR fault triggered when an application has a JS syntax error that is not + * captured by developers. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ JS_ERROR = 4, @@ -557,12 +611,13 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Exit reason : app freeze. App exit due to appFreeze error. + * The ability exits because watchdog detects that the application is frozen. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ APP_FREEZE = 5, @@ -574,12 +629,13 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Exit reason : performance control. App exit due to system performance issues, such as device low memory. + * The ability exits due to system performance problems, for example, insufficient device memory. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PERFORMANCE_CONTROL = 6, @@ -591,12 +647,20 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Exit reason : resource control. App exit due to resource usage violation, such as exceed cpu/io/memory usage. + * The ability exits due to improper use of system resources. The specific error cause can be obtained through + * LaunchParam.lastExitMessage. The possible causes are as follows: + * - CPU Highload: The CPU load is high. + * - CPU_EXT Highload: A fast CPU load detection is carried out. + * - IO Manage Control: An I/O management and control operation is carried out. + * - App Memory Deterioration: The application memory usage exceeds the threshold. + * - Temperature Control: The temperature is too high or too low. + * - Memory Pressure: The system is low on memory, triggering ability exiting in ascending order of priority. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ RESOURCE_CONTROL = 7, @@ -608,32 +672,36 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Exit reason : upgrade. App exit due to upgrade. + * The ability exits due to an update. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ UPGRADE = 8, /** - * Exit reason : USER_REQUEST. App exit due to user request. + * The ability exits because of an action in the multitasking center, for example, when users swipe up or hit the + * one-click clean button in the multitasking view. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ USER_REQUEST = 9, /** - * Exit reason : SIGNAL. App exit due to system signal. + * The ability exits because it receives a kill signal from the system. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ SIGNAL = 10 } @@ -647,13 +715,16 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Type of onContinue result. + * Enumerates the ability continuation results. + * You can use it together with <code>onContinue(wantParam)</code> of the UIAbility to complete different + * operations. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum OnContinueResult { /** @@ -664,12 +735,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Agree to the result of Ability migration. + * The ability continuation is accepted. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ AGREE = 0, @@ -681,12 +753,15 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Reject to the result of Ability migration. + * The ability continuation is rejected. + * If the application is abnormal in onContinue, which results in abnormal display during data restoration, this + * error code is returned. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ REJECT = 1, @@ -698,12 +773,15 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Mismatch to the result of Ability migration. + * The version does not match. + * The application on the initiator can obtain the version of the target application from onContinue. If the + * ability continuation cannot be performed due to version mismatch, this error code is returned. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MISMATCH = 2 } @@ -717,13 +795,15 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Type of memory level. + * Enumerates the memory levels. You can use it in <code>onMemoryLevel(level)</code> of the UIAbility to complete + * different operations. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum MemoryLevel { /** @@ -734,12 +814,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Memory footprint is moderate. + * Moderate memory usage. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MEMORY_LEVEL_MODERATE = 0, @@ -751,12 +832,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Low memory footprint. + * Low memory usage. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MEMORY_LEVEL_LOW = 1, @@ -768,71 +850,81 @@ declare namespace AbilityConstant { * @since 9 */ /** - * High memory footprint. + * High memory usage. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MEMORY_LEVEL_CRITICAL = 2 } /** - * Type of window mode. + * Enumerates the window mode when the ability is started. + * It can be used together with <code>startAbility</code> to specify the window mode for starting the ability. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum WindowMode { /** - * The window mode is not defined. + * Undefined window mode. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_MODE_UNDEFINED = 0, /** - * Full screen mode. + * Full screen mode. It takes effect only on 2-in-1 devices and tablets. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_MODE_FULLSCREEN = 1, /** - * Primary screen in split-screen mode. If the screen is horizontal, it means the left split screen. - * It is valid only in intra-app redirection scenarios. + * Primary screen (left screen in the case of horizontal orientation) in split-screen mode. It is valid only in + * intra-app redirection scenarios. + * It takes effect only on foldable devices and tablets. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_MODE_SPLIT_PRIMARY = 100, /** - * Secondary screen in split-screen mode. If the screen is horizontal, it means the right split screen. - * It is valid only in intra-app redirection scenarios. + * Secondary screen (right screen in the case of horizontal orientation) in split-screen mode. It is valid only in + * intra-app redirection scenarios. + * It takes effect only on foldable devices and tablets. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_MODE_SPLIT_SECONDARY = 101, /** - * Free floating window mode. + * The ability is displayed in a floating window. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_MODE_FLOATING = 102 } @@ -846,13 +938,15 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Type of onSave result. + * Enumerates the result types for the operation of saving application data. You can use it in + * <code>onSaveState(reason, wantParam)</code> of the UIAbility to complete different operations. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum OnSaveResult { /** @@ -863,12 +957,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Always agree to save the state. + * Always agreed to save the status. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ALL_AGREE = 0, @@ -880,12 +975,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Refuse to migrate the saved state. + * Rejected to save the status in continuation. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ CONTINUATION_REJECT = 1, @@ -897,12 +993,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Migration mismatch. + * Continuation mismatch. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ CONTINUATION_MISMATCH = 2, @@ -914,12 +1011,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Agree to restore the saved state. + * Agreed to restore the saved status. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ RECOVERY_AGREE = 3, @@ -931,12 +1029,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Refuse to restore the saved state. + * Rejected to restore the saved status. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ RECOVERY_REJECT = 4, @@ -948,12 +1047,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Always refuses to save the state. + * Always rejected to save the status. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ALL_REJECT } @@ -967,13 +1067,15 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Type of save state. + * Enumerates the scenarios for saving application data. You can use it in + * <code>onSaveState(reason, wantParam)</code> of the UIAbility to complete different operations. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum StateType { /** @@ -984,12 +1086,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * Migrate and save the state. + * Saving the status in continuation. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ CONTINUATION = 0, @@ -1001,12 +1104,13 @@ declare namespace AbilityConstant { * @since 9 */ /** - * App recovery to restore the saved state. + * Saving the status in application recovery. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ APP_RECOVERY = 1 } @@ -1020,13 +1124,15 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Continue state. + * Enumerates the mission continuation states of the application. It is used in the + * <code>setMissionContinueState</code> API of UIAbilityContext. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum ContinueState { /** @@ -1037,12 +1143,13 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Mission continuable inactive. + * Mission continuation is activated for the current application. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ACTIVE = 0, @@ -1054,71 +1161,82 @@ declare namespace AbilityConstant { * @since 10 */ /** - * Mission continuable inactive. + * Mission continuation is not activated for the current application. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ INACTIVE = 1 } /** - * Type of collaborate result. + * Enumerates the collaboration request results. + * This enum is used in multi-device collaboration scenarios to specify whether the target application accepts the + * collaboration request from the caller application. + * It is used in <code>onCollaborate(wantParam)</code> of the UIAbility. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum CollaborateResult { /** - * Accept to the result of Ability collaborate. + * Accepts the collaboration request. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ ACCEPT = 0, /** - * Reject to the result of Ability collaborate. + * Rejects the collaboration request. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ REJECT = 1, } /** - * PrepareTerminateAction indicates what to do prior to terminating process. + * Enumerates the actions triggered when an application is closed by the user. It must be used together with + * <code>onPrepareTermination</code> or <code>onPrepareTerminationAsync</code> of AbilityStage. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum PrepareTermination { /** - * Terminate process immediately. + * Executes the termination action immediately. This is the default behavior. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ TERMINATE_IMMEDIATELY = 0, /** - * Cancel terminate. + * Cancels the termination action. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ CANCEL = 1 } diff --git a/api/@ohos.app.ability.AbilityStage.d.ts b/api/@ohos.app.ability.AbilityStage.d.ts index 9347e97d8852a64251cf3fc9a3978380bfc5e8ce..f71cf7c0edf585c5dca6fe342ee71f6147d19f16 100644 --- a/api/@ohos.app.ability.AbilityStage.d.ts +++ b/api/@ohos.app.ability.AbilityStage.d.ts @@ -39,15 +39,18 @@ import { Configuration } from './@ohos.app.ability.Configuration'; * @since 10 */ /** - * The class of an ability stage. + * AbilityStage is a runtime class for HAP files. + * AbilityStage notifies you of when you can perform HAP initialization such as resource pre-loading and thread + * creation during the HAP loading. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class AbilityStage { +declare class AbilityStage { /** * Indicates configuration information about context. * @@ -66,14 +69,16 @@ export default class AbilityStage { * @since 10 */ /** - * Indicates configuration information about context. + * Defines the context of AbilityStage. + * The context is obtained in the callback invoked when initialization is performed during ability startup. * * @type { AbilityStageContext } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ context: AbilityStageContext; @@ -93,13 +98,18 @@ export default class AbilityStage { * @since 10 */ /** - * Called back when an ability stage is started for initialization. + * Called when the application is created. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callbacks. + * </p> * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ onCreate(): void; @@ -115,12 +125,15 @@ export default class AbilityStage { * @since 9 */ /** - * Called back when start specified ability. + * Called when a specified ability is started. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callbacks. + * </p> * - * @param { Want } want - Indicates the want info of started ability. - * @returns { string } The user returns an ability string ID. If the ability of this ID has been started before, - * do not create a new instance and pull it back to the top of the stack. - * Otherwise, create a new instance and start it. + * @param { Want } want - Want information about the target ability, such as the ability name and bundle name. + * @returns { string } Ability ID. If the ability with this ID has been started, no new instance is created and the + * ability is placed at the top of the stack. Otherwise, a new instance is created and started. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -129,17 +142,48 @@ export default class AbilityStage { onAcceptWant(want: Want): string; /** - * Called back when start UIAbility in specified process. + * Called back asynchronously upon starting specified ability. + * + * @param { Want } want - Indicates the want info of the started ability. + * @returns { Promise<string> } The user returns an ability string ID. If the ability of this ID has been started before, + * do not create a new instance and pull it back to the top of the stack. + * Otherwise, create a new instance and start it. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + onAcceptWantAsync(want: Want): Promise<string>; + + /** + * Called when the UIAbility is started in the specified process. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callbacks. + * </p> * - * @param { Want } want - Indicates the want info of started ability. - * @returns { string } The user returns an process string ID. If the process of this ID has been created before, - * let the ability run in this process. Otherwise, create a new process. + * @param { Want } want - Want information about the target ability, such as the ability name and bundle name. + * @returns { string } Custom process identifier. If the process with this identifier has been created, the ability + * runs in the process. Otherwise, a new process is created and the ability runs in it. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @since 11 */ onNewProcessRequest(want: Want): string; + /** + * Called back asynchronously upon starting UIAbility in specified process. + * + * @param { Want } want - Indicates the want info of the started ability. + * @returns { Promise<string> } The user returns an ability string ID. If the ability of this ID has been started before, + * let the ability run in this process. Otherwise, create a new process. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + onNewProcessRequestAsync(want: Want): Promise<string>; + /** * Called when the system configuration is updated. * @@ -158,14 +202,21 @@ export default class AbilityStage { * @since 10 */ /** - * Called when the system configuration is updated. + * Called when the global configuration is updated. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callbacks. + * </p> * - * @param { Configuration } newConfig - Indicates the updated configuration. + * @param { Configuration } newConfig - Callback invoked when the global configuration is updated. The global + * configuration indicates the configuration of the environment where the application is running and includes + * the language and color mode. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ onConfigurationUpdate(newConfig: Configuration): void; @@ -179,10 +230,18 @@ export default class AbilityStage { * @since 9 */ /** - * Called when the system has determined to trim the memory, for example, when the ability is running in the - * background and there is no enough memory for running as many background processes as possible. + * Listens for changes in the system memory level status. + * When the system detects low memory resources, it will proactively invoke this callback. + * You can implement this callback to promptly release non-essential resources (such as cached data or temporary + * objects) upon receiving a memory shortage event, thereby preventing the application process from being forcibly + * terminated by the system. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callbacks. + * </p> * - * @param { AbilityConstant.MemoryLevel } level - Indicates the memory trim level, which shows the current memory usage status. + * @param { AbilityConstant.MemoryLevel } level - Memory level that indicates the memory usage status. When the + * specified memory level is reached, a callback will be invoked and the system will start adjustment. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -191,22 +250,35 @@ export default class AbilityStage { onMemoryLevel(level: AbilityConstant.MemoryLevel): void; /** - * Called back when an ability stage is Destroyed. - * Will not call the onDestroy function when killing a process or crashing abnormally. + * Called when the application is destroyed. This API is called during the normal lifecycle. + * If the application exits abnormally or is terminated, this API is not called. * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callbacks. + * </p> + * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ onDestroy(): void; /** - * Called back before an ability stage is terminated. + * Called when the application is closed by the user, allowing the user to choose between immediate termination or + * cancellation. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callbacks. + * <br>Currently, this API takes effect only on 2-in-1 devices. + * <br>This API is called only when the application exits normally. It is not called if the application is forcibly + * closed. + * <br>This API is not executed when {@link AbilityStage.onPrepareTerminationAsync} is implemented. + * </p> * * @permission ohos.permission.PREPARE_APP_TERMINATE - * @returns { AbilityConstant.PrepareTermination } The user returns an action indicating - * what the process should do prior to terminating. + * @returns { AbilityConstant.PrepareTermination } The user's choice. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -215,12 +287,20 @@ export default class AbilityStage { onPrepareTermination(): AbilityConstant.PrepareTermination; /** - * Called back asynchronously before an ability stage is terminated. - * If onPrepareTerminationAsync has been implemented then onPrepareTermination won't take effect + * Called when the application is closed by the user, allowing the user to choose between immediate termination or + * cancellation. + * This API uses a promise to return the result. + * + * <p>**NOTE**: + * <br>Currently, this API takes effect only on 2-in-1 devices. + * <br>This API is called only when the application exits normally. It is not called if the application is forcibly + * closed. + * <br>If an asynchronous callback crashes, it will be handled as a timeout. If the application does not respond + * within 10 seconds, it will be terminated forcibly. + * </p> * * @permission ohos.permission.PREPARE_APP_TERMINATE - * @returns { Promise<AbilityConstant.PrepareTermination> } The user returns a promise of the action indicating - * what the process should do prior to terminating. + * @returns { Promise<AbilityConstant.PrepareTermination> } Promise used to return the user's choice. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -228,3 +308,6 @@ export default class AbilityStage { */ onPrepareTerminationAsync(): Promise<AbilityConstant.PrepareTermination>; } + + +export default AbilityStage; \ No newline at end of file diff --git a/api/@ohos.app.ability.AppServiceExtensionAbility.d.ts b/api/@ohos.app.ability.AppServiceExtensionAbility.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..4293980beab3a066501cfdff9aab37163dd0ebd8 --- /dev/null +++ b/api/@ohos.app.ability.AppServiceExtensionAbility.d.ts @@ -0,0 +1,96 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit AbilityKit + */ + +import rpc from './@ohos.rpc'; +import AppServiceExtensionContext from './application/AppServiceExtensionContext'; +import Want from './@ohos.app.ability.Want'; +import ExtensionAbility from './@ohos.app.ability.ExtensionAbility'; + +/** + * class of app service extension ability. + * + * @extends ExtensionAbility + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ +export default class AppServiceExtensionAbility extends ExtensionAbility { + /** + * Indicates app service extension ability context. + * + * @type { AppServiceExtensionContext } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + context: AppServiceExtensionContext; + + /** + * Called back when an app service extension is started for initialization. + * + * @param { Want } want - Indicates the want of created app service extension. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + onCreate(want: Want): void; + + /** + * Called back before an app service extension is destroyed. + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + onDestroy(): void; + + /** + * Called back when an app service extension is started. + * + * @param { Want } want - Indicates the want of app service extension to start. + * @param { number } startId - Indicates the number of times the app service extension has been started. + * The {@code startId} is incremented by 1 every time the app service extension is started. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + onRequest(want: Want, startId: number): void; + + /** + * Called back when an app service extension is first connected to an ability. + * + * @param { Want } want - Indicates connection information about the app service ability. + * @returns { rpc.RemoteObject } A RemoteObject for communication between the client and server. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + onConnect(want: Want): rpc.RemoteObject; + + /** + * Called back when all abilities connected to an app service extension are disconnected. + * + * @param { Want } want - Indicates disconnection information about the app service extension. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + onDisconnect(want: Want): void; +} diff --git a/api/@ohos.app.ability.CompletionHandler.d.ts b/api/@ohos.app.ability.CompletionHandler.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..2499461a6ba44c1e26cb22b6bda316ff17d14ef1 --- /dev/null +++ b/api/@ohos.app.ability.CompletionHandler.d.ts @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit AbilityKit + */ + +import { ElementName } from "./bundleManager/ElementName"; + +/** + * CompletionHandler is a handler to handle the completion events of start ability. + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +export default class CompletionHandler { + /** + * Notify the success result of startAbility. + * + * @param { ElementName } elementName - Indicates the component to start. + * @param { string } message - Indicates the message of the request result. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + onRequestSuccess(elementName: ElementName, message: string): void; + + /** + * Notify the failure result of startAbility. + * + * @param { ElementName } elementName - Indicates the component to start. + * @param { string } message - Indicates the message of the request result. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + onRequestFailure(elementName: ElementName, message: string): void; +} \ No newline at end of file diff --git a/api/@ohos.app.ability.Configuration.d.ts b/api/@ohos.app.ability.Configuration.d.ts index 257f7e74605092659e1f39066f6ec415206ef23a..b9a204339502a0fc993818ee22e94b00cb900ee5 100644 --- a/api/@ohos.app.ability.Configuration.d.ts +++ b/api/@ohos.app.ability.Configuration.d.ts @@ -42,7 +42,8 @@ import ConfigurationConstant from './@ohos.app.ability.ConfigurationConstant'; * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface Configuration { /** @@ -67,7 +68,8 @@ export interface Configuration { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ language?: string; @@ -93,7 +95,8 @@ export interface Configuration { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ colorMode?: ConfigurationConstant.ColorMode; @@ -208,7 +211,8 @@ export interface Configuration { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ fontSizeScale?: number; @@ -241,4 +245,14 @@ export interface Configuration { * @since 12 */ mnc?: string; + + /** + * Current locale. + * + * @type { ?Intl.Locale } + * @syscap SystemCapability.Ability.AbilityBase + * @atomicservice + * @since 20 + */ + locale?: Intl.Locale; } diff --git a/api/@ohos.app.ability.ConfigurationConstant.d.ts b/api/@ohos.app.ability.ConfigurationConstant.d.ts index 54494c948072e1eccc095da27a37b4bbbe83e190..84c4264ac42d270b1d14a52a5a82c875433def78 100644 --- a/api/@ohos.app.ability.ConfigurationConstant.d.ts +++ b/api/@ohos.app.ability.ConfigurationConstant.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace ConfigurationConstant { /** @@ -65,7 +66,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum ColorMode { /** @@ -87,7 +89,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COLOR_MODE_NOT_SET = -1, @@ -110,7 +113,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COLOR_MODE_DARK = 0, @@ -133,7 +137,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COLOR_MODE_LIGHT = 1 } @@ -160,7 +165,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum Direction { /** @@ -182,7 +188,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ DIRECTION_NOT_SET = -1, @@ -205,7 +212,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ DIRECTION_VERTICAL = 0, @@ -228,7 +236,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ DIRECTION_HORIZONTAL = 1 } @@ -255,7 +264,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum ScreenDensity { /** @@ -277,7 +287,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ SCREEN_DENSITY_NOT_SET = 0, @@ -300,7 +311,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ SCREEN_DENSITY_SDPI = 120, @@ -323,7 +335,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ SCREEN_DENSITY_MDPI = 160, @@ -346,7 +359,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ SCREEN_DENSITY_LDPI = 240, @@ -369,7 +383,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ SCREEN_DENSITY_XLDPI = 320, @@ -392,7 +407,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ SCREEN_DENSITY_XXLDPI = 480, @@ -415,7 +431,8 @@ declare namespace ConfigurationConstant { * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ SCREEN_DENSITY_XXXLDPI = 640 } diff --git a/api/@ohos.app.ability.ExtensionAbility.d.ts b/api/@ohos.app.ability.ExtensionAbility.d.ts index d77b273b9166badf151406c64d83e2f710d668a3..8540140a3177ac0fe72821a5ebd625125265852d 100644 --- a/api/@ohos.app.ability.ExtensionAbility.d.ts +++ b/api/@ohos.app.ability.ExtensionAbility.d.ts @@ -35,6 +35,7 @@ import Ability from './@ohos.app.ability.Ability'; * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export default class ExtensionAbility extends Ability {} diff --git a/api/@ohos.app.ability.FenceExtensionContext.d.ts b/api/@ohos.app.ability.FenceExtensionContext.d.ts index 24a0d33e69d2e9bb09f1fe63be652e791f1466d2..2e589e5e9c79d87027d34f680b1fec1af2728fa6 100644 --- a/api/@ohos.app.ability.FenceExtensionContext.d.ts +++ b/api/@ohos.app.ability.FenceExtensionContext.d.ts @@ -43,14 +43,14 @@ export default class FenceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Location.Location.Geofence diff --git a/api/@ohos.app.ability.InsightIntentContext.d.ts b/api/@ohos.app.ability.InsightIntentContext.d.ts index 94f9f0d66d069255b252ebf8f9a1e9bdc4759c4b..9f2de2d357adb48adc035aba503fe59a6ee0f12c 100644 --- a/api/@ohos.app.ability.InsightIntentContext.d.ts +++ b/api/@ohos.app.ability.InsightIntentContext.d.ts @@ -40,7 +40,7 @@ export default class InsightIntentContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -70,7 +70,7 @@ export default class InsightIntentContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. diff --git a/api/@ohos.app.ability.InsightIntentDecorator.d.ts b/api/@ohos.app.ability.InsightIntentDecorator.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..af9d9e0ca1341f19079b3feeda73d7350581a865 --- /dev/null +++ b/api/@ohos.app.ability.InsightIntentDecorator.d.ts @@ -0,0 +1,461 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit AbilityKit + */ + +import insightIntent from './@ohos.app.ability.insightIntent'; + +/** + * Declare interface of IntentDecoratorInfo. + * + * @interface IntentDecoratorInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +declare interface IntentDecoratorInfo { + /** + * The intent name. + * + * @type { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + intentName: string; + + /** + * The intent domain. + * + * @type { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + domain: string; + + /** + * The intent version. + * + * @type { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + intentVersion: string; + + /** + * The display name of intent. + * + * @type { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + displayName: string; + + /** + * The display description of intent. + * + * @type { ?string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + displayDescription?: string; + + /** + * The schema of intent, indicates a standard intent. + * + * @type { ?string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + schema?: string; + + /** + * The icon of intent, the string type indicates an online resource, and the Resource type indicates a local resource. + * The value of Resource type must be a literal. + * + * @type { ?ResourceStr } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + icon?: ResourceStr; + + /** + * The large language model description of intent. + * + * @type { ?string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + llmDescription?: string; + + /** + * The search keywords of intent. + * + * @type { ?string[] } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + keywords?: string[]; + + /** + * The parameters of intent. + * + * @type { ?Record<string, Object> } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + parameters?: Record<string, Object>; + + /** + * The type definition of the result returned by intent call. + * + * @type { ?Record<string, Object> } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + result?: Record<string, Object>; + + /** + * The example of the intent. + * + * @type { ?string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + example?: string; +} + +/** + * Declare interface of LinkIntentDecoratorInfo. + * + * @extends IntentDecoratorInfo + * @interface LinkIntentDecoratorInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +declare interface LinkIntentDecoratorInfo extends IntentDecoratorInfo { + /** + * The uri of a link. + * + * @type { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + uri: string; + + /** + * The parameters mapping of a link. + * + * @type { ?LinkIntentParamMapping[] } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + paramMappings?: LinkIntentParamMapping[]; +} + +/** + * Enum definition of the paramCategory {@link #LinkIntentParamMapping#paramCategory}, + * paramCategory is an attribute of LinkIntentParamMapping and + * used in InsightIntentLink {@link #InsightIntentLink}. + * + * @enum { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @atomicservice + * @since 20 + */ +declare enum LinkParamCategory { + /** + * The parameter will added to the end of link uri. + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @atomicservice + * @since 20 + */ + LINK = 'link', + + /** + * The parameter will transferred to the application as parameters of want. + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @atomicservice + * @since 20 + */ + WANT = 'want', +} + +/** + * Declare interface of LinkIntentParamMapping. + * + * @interface LinkIntentParamMapping + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +declare interface LinkIntentParamMapping { + /** + * The parameter name. + * + * @type { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + paramName: string; + + /** + * The parameter mapping name. + * + * @type { ?string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + paramMappingName?: string; + + /** + * The parameter category. + * + * @type { ?LinkParamCategory } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + paramCategory?: LinkParamCategory; +} + +/** + * Define InsightIntentLink. + * + * @type { ((intentInfo: LinkIntentDecoratorInfo) => ClassDecorator) } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +export declare const InsightIntentLink: ((intentInfo: LinkIntentDecoratorInfo) => ClassDecorator); + +/** + * Declare interface of PageIntentDecoratorInfo. + * + * @extends IntentDecoratorInfo + * @interface PageIntentDecoratorInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +declare interface PageIntentDecoratorInfo extends IntentDecoratorInfo { + /** + * The uiability name bound to the intent. + * + * @type { ?string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + uiAbility?: string; + + /** + * The page path bound to the intent. + * + * @type { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + pagePath: string; + + /** + * The navigation Id bound to the intent. + * + * @type { ?string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + navigationId?: string; + + /** + * The navigation destination name bound to the intent. + * + * @type { ?string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + navDestinationName?: string; +} + +/** + * Define InsightIntentPage. + * + * @type { ((intentInfo: PageIntentDecoratorInfo) => ClassDecorator) } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +export declare const InsightIntentPage: ((intentInfo: PageIntentDecoratorInfo) => ClassDecorator); + +/** + * Declare interface of FunctionIntentDecoratorInfo. + * + * @extends IntentDecoratorInfo + * @interface FunctionIntentDecoratorInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +declare interface FunctionIntentDecoratorInfo extends IntentDecoratorInfo {} + +/** + * Define InsightIntentFunctionMethod. + * + * @type { ((intentInfo: FunctionIntentDecoratorInfo) => MethodDecorator) } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +export declare const InsightIntentFunctionMethod: ((intentInfo: FunctionIntentDecoratorInfo) => MethodDecorator); + +/** + * Define InsightIntentFunction. + * + * @type { (() => ClassDecorator) } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +export declare const InsightIntentFunction: (() => ClassDecorator); + +/** + * Declare interface of FormIntentDecoratorInfo. + * + * @extends IntentDecoratorInfo + * @interface FormIntentDecoratorInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +declare interface FormIntentDecoratorInfo extends IntentDecoratorInfo { +/** + * The form name bound to the intent. + * + * @type { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + formName: string; +} + +/** + * Declare interface of EntryIntentDecoratorInfo. + * + * @extends IntentDecoratorInfo + * @interface EntryIntentDecoratorInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +declare interface EntryIntentDecoratorInfo extends IntentDecoratorInfo { + /** + * The ability name bound to the intent. + * + * @type { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + abilityName: string; + + /** + * The execute mode of the intent. + * For UIAbility, the parameter can be set to insightIntent.ExecuteMode.UI_ABILITY_FOREGROUND or + * insightIntent.ExecuteMode.UI_ABILITY_BACKGROUND or both of them. + * + * @type { insightIntent.ExecuteMode[] } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + executeMode: insightIntent.ExecuteMode[]; +} + +/** + * Define InsightIntentEntry. + * + * @type { ((intentInfo: EntryIntentDecoratorInfo) => ClassDecorator) } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +export declare const InsightIntentEntry: ((intentInfo: EntryIntentDecoratorInfo) => ClassDecorator); \ No newline at end of file diff --git a/api/@ohos.app.ability.InsightIntentEntryExecutor.d.ts b/api/@ohos.app.ability.InsightIntentEntryExecutor.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..3bdfb5237323829e00eb207604b89d18d8811c1d --- /dev/null +++ b/api/@ohos.app.ability.InsightIntentEntryExecutor.d.ts @@ -0,0 +1,90 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit AbilityKit + */ + +import window from './@ohos.window'; +import insightIntent from './@ohos.app.ability.insightIntent'; +import InsightIntentContext from './@ohos.app.ability.InsightIntentContext'; +import UIExtensionContentSession from './@ohos.app.ability.UIExtensionContentSession'; + +/** + * The class of insight intent entry executor. + * + * @class InsightIntentEntryExecutor<T> + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ +export default class InsightIntentEntryExecutor<T> { + /** + * The insight intent execute mode. + * + * @type { insightIntent.ExecuteMode } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + executeMode: insightIntent.ExecuteMode; + + /** + * The insight intent context. + * + * @type { InsightIntentContext } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + context: InsightIntentContext; + + /** + * The window stage. + * + * @type { ?window.WindowStage } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + windowStage?: window.WindowStage; + + /** + * The UIExtension content session. + * + * @type { ?UIExtensionContentSession } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + uiExtensionSession?: UIExtensionContentSession; + + /** + * Called when insight intent execute. + * + * @returns { Promise<insightIntent.IntentResult<T>> } The result of insight intent execution, support promise. + * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore + * @stagemodelonly + * @atomicservice + * @since 20 + */ + onExecute(): Promise<insightIntent.IntentResult<T>>; +} \ No newline at end of file diff --git a/api/@ohos.app.ability.ServiceExtensionAbility.d.ts b/api/@ohos.app.ability.ServiceExtensionAbility.d.ts index 5dd0eb9f5cddabc1373a2889156000043998548f..b4659fb1eceac0d7f478c636804e4c2c7dfe81a4 100644 --- a/api/@ohos.app.ability.ServiceExtensionAbility.d.ts +++ b/api/@ohos.app.ability.ServiceExtensionAbility.d.ts @@ -29,9 +29,10 @@ import { Configuration } from './@ohos.app.ability.Configuration'; * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class ServiceExtensionAbility { +declare class ServiceExtensionAbility { /** * Indicates service extension ability context. * @@ -39,7 +40,8 @@ export default class ServiceExtensionAbility { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ context: ServiceExtensionContext; @@ -50,7 +52,8 @@ export default class ServiceExtensionAbility { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ onCreate(want: Want): void; @@ -60,7 +63,8 @@ export default class ServiceExtensionAbility { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ onDestroy(): void; @@ -74,7 +78,8 @@ export default class ServiceExtensionAbility { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ onRequest(want: Want, startId: number): void; @@ -87,7 +92,8 @@ export default class ServiceExtensionAbility { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ onConnect(want: Want): rpc.RemoteObject | Promise<rpc.RemoteObject>; @@ -103,6 +109,32 @@ export default class ServiceExtensionAbility { */ onDisconnect(want: Want): void | Promise<void>; + /** + * Called back when all abilities connected to a service extension are disconnected. + * + * @param { Want } want - Indicates disconnection information about the service extension. + * @returns { void } the promise returned by the function. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @StageModelOnly + * @since 20 + * @arkts 1.2 + */ + onDisconnect(want: Want): void; + + /** + * Called back when all abilities connected to a service extension are disconnected. + * + * @param { Want } want - Indicates disconnection information about the service extension. + * @returns { Promise<void> } the promise returned by the function. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @StageModelOnly + * @since 20 + * @arkts 1.2 + */ + onDisconnectAsync(want: Want): Promise<void>; + /** * Called when a new client attempts to connect to a service extension after all previous client connections to it * are disconnected. @@ -139,3 +171,5 @@ export default class ServiceExtensionAbility { */ onDump(params: Array<string>): Array<string>; } + +export default ServiceExtensionAbility; \ No newline at end of file diff --git a/api/@ohos.app.ability.StartOptions.d.ts b/api/@ohos.app.ability.StartOptions.d.ts index 08ce48efb8ecf69e1d41ff14983a82cc80dfe99c..9a582f69c23930b1f023fb5037e5d9004c08c7ee 100644 --- a/api/@ohos.app.ability.StartOptions.d.ts +++ b/api/@ohos.app.ability.StartOptions.d.ts @@ -18,9 +18,12 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ import contextConstant from "./@ohos.app.ability.contextConstant"; import image from "./@ohos.multimedia.image"; import bundleManager from './@ohos.bundle.bundleManager'; +import CompletionHandler from './@ohos.app.ability.CompletionHandler'; +/*** endif */ /** * StartOptions is the basic communication component of the system. @@ -35,7 +38,8 @@ import bundleManager from './@ohos.bundle.bundleManager'; * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export default class StartOptions { /** @@ -66,7 +70,8 @@ export default class StartOptions { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ displayId?: number; @@ -189,9 +194,9 @@ export default class StartOptions { * The min width of window rectangle. * * @type { ?number } - * @syscap SystemCapAbility.Ability.AbilityRuntime.Core + * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 18 + * @since 17 */ minWindowWidth?: number; @@ -199,9 +204,9 @@ export default class StartOptions { * The min height of window rectangle. * * @type { ?number } - * @syscap SystemCapAbility.Ability.AbilityRuntime.Core + * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 18 + * @since 17 */ minWindowHeight?: number; @@ -209,9 +214,9 @@ export default class StartOptions { * The max width of window rectangle. * * @type { ?number } - * @syscap SystemCapAbility.Ability.AbilityRuntime.Core + * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 18 + * @since 17 */ maxWindowWidth?: number; @@ -219,9 +224,20 @@ export default class StartOptions { * The max height of window rectangle. * * @type { ?number } - * @syscap SystemCapAbility.Ability.AbilityRuntime.Core + * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 18 + * @since 17 */ maxWindowHeight?: number; + + /** + * The completion handler of StartAbility. + * + * @type { ?CompletionHandler } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + completionHandler?: CompletionHandler; } \ No newline at end of file diff --git a/api/@ohos.app.ability.UIAbility.d.ts b/api/@ohos.app.ability.UIAbility.d.ts index bf815f511216219a1da46b8e04a24fbdb418de85..f7680dd63e5efbd15144595b5025ac5084532fe7 100644 --- a/api/@ohos.app.ability.UIAbility.d.ts +++ b/api/@ohos.app.ability.UIAbility.d.ts @@ -20,10 +20,12 @@ import Ability from './@ohos.app.ability.Ability'; import AbilityConstant from './@ohos.app.ability.AbilityConstant'; -import UIAbilityContext from './application/UIAbilityContext'; -import rpc from './@ohos.rpc'; import Want from './@ohos.app.ability.Want'; import window from './@ohos.window'; +import UIAbilityContext from './application/UIAbilityContext'; +/*** if arkts 1.1 */ +import rpc from './@ohos.rpc'; +/*** endif */ /** * The prototype of the listener function interface registered by the Caller. @@ -35,9 +37,9 @@ import window from './@ohos.window'; */ export interface OnReleaseCallback { /** - * Defines the callback of OnRelease. + * Defines the callback that is invoked when the stub on the target UIAbility is disconnected. * - * @param { string } msg - The notification event string listened to by the OnRelease. + * @param { string } msg - Message used for disconnection. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @since 9 @@ -55,9 +57,9 @@ export interface OnReleaseCallback { */ export interface OnRemoteStateChangeCallback { /** - * Defines the callback of OnRemoteStateChange. + * Defines the callback that is invoked when the remote UIAbility state changes in the collaboration scenario. * - * @param { string } msg - The notification event string listened to by the OnRemoteStateChange. + * @param { string } msg - Message used for disconnection. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @since 10 @@ -75,10 +77,10 @@ export interface OnRemoteStateChangeCallback { */ export interface CalleeCallback { /** - * Defines the callback of Callee. + * Defines the callback of the registration message notification of the UIAbility. * - * @param { rpc.MessageSequence } indata - Notification indata to the callee. - * @returns { rpc.Parcelable } Returns the callee's notification result indata. + * @param { rpc.MessageSequence } indata - Data to be transferred. + * @returns { rpc.Parcelable } Returned data object. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @since 9 @@ -87,7 +89,7 @@ export interface CalleeCallback { } /** - * The interface of a Caller. + * Implements sending of parcelable data to the target UIAbility when the CallerAbility invokes the target UIAbility (CalleeAbility). * * @interface Caller * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore @@ -96,14 +98,15 @@ export interface CalleeCallback { */ export interface Caller { /** - * Notify the server of Parcelable type data. + * Sends parcelable data to the target UIAbility. This API uses a promise to return the result. * - * @param { string } method - The notification event string listened to by the callee. - * @param { rpc.Parcelable } data - Notification data to the callee. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } method - Notification message string negotiated between the two UIAbilities. The message is used + * to instruct the callee to register a function to receive the parcelable data. + * @param { rpc.Parcelable } data - Parcelable data. You need to customize the data. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16200001 - Caller released. The caller has been released. + * @throws { BusinessError } 16200001 - The caller has been released. * @throws { BusinessError } 16200002 - The callee does not exist. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore @@ -113,14 +116,16 @@ export interface Caller { call(method: string, data: rpc.Parcelable): Promise<void>; /** - * Notify the server of Parcelable type data and return the notification result. + * Sends parcelable data to the target UIAbility and obtains the parcelable data returned by the target UIAbility. + * This API uses a promise to return the result. * - * @param { string } method - The notification event string listened to by the callee. - * @param { rpc.Parcelable } data - Notification data to the callee. - * @returns { Promise<rpc.MessageSequence> } Returns the callee's notification result data. + * @param { string } method - Notification message string negotiated between the two UIAbilities. The message is used + * to instruct the callee to register a function to receive the parcelable data. + * @param { rpc.Parcelable } data - Parcelable data. You need to customize the data. + * @returns { Promise<rpc.MessageSequence> } Promise used to return the parcelable data from the target UIAbility. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16200001 - Caller released. The caller has been released. + * @throws { BusinessError } 16200001 - The caller has been released. * @throws { BusinessError } 16200002 - The callee does not exist. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore @@ -130,9 +135,9 @@ export interface Caller { callWithResult(method: string, data: rpc.Parcelable): Promise<rpc.MessageSequence>; /** - * Register the generic component server Stub (stub) disconnect listening notification. + * Releases the caller interface of the target UIAbility. * - * @throws { BusinessError } 16200001 - Caller released. The caller has been released. + * @throws { BusinessError } 16200001 - The caller has been released. * @throws { BusinessError } 16200002 - The callee does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly @@ -141,12 +146,13 @@ export interface Caller { release(): void; /** - * Register death listener notification callback. + * Called when the stub on the target UIAbility is disconnected. + * This API uses an asynchronous callback to return the result. * - * @param { OnReleaseCallback } callback - Register a callback function for listening for notifications. + * @param { OnReleaseCallback } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16200001 - Caller released. The caller has been released. + * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @since 9 @@ -154,12 +160,13 @@ export interface Caller { onRelease(callback: OnReleaseCallback): void; /** - * Register state changed listener notification callback of remote ability. + * Called when the remote UIAbility state changes in the collaboration scenario. + * This API uses an asynchronous callback to return the result. * - * @param { OnRemoteStateChangeCallback } callback - Register a callback function for listening for notifications. + * @param { OnRemoteStateChangeCallback } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16200001 - Caller released. The caller has been released. + * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @since 10 @@ -167,13 +174,14 @@ export interface Caller { onRemoteStateChange(callback: OnRemoteStateChangeCallback): void; /** - * Register death listener notification callback. + * Called when the stub on the target UIAbility is disconnected. + * This API uses an asynchronous callback to return the result. * - * @param { 'release' } type - release. - * @param { OnReleaseCallback } callback - Register a callback function for listening for notifications. + * @param { 'release' } type - Event type. The value is fixed at '**release**'. + * @param { OnReleaseCallback } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16200001 - Caller released. The caller has been released. + * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @since 9 @@ -181,10 +189,11 @@ export interface Caller { on(type: 'release', callback: OnReleaseCallback): void; /** - * Unregister death listener notification callback. + * Unregisters a callback that is invoked when the stub on the target UIAbility is disconnected. + * This capability is reserved. This API uses an asynchronous callback to return the result. * - * @param { 'release' } type - release. - * @param { OnReleaseCallback } callback - Unregister a callback function for listening for notifications. + * @param { 'release' } type - Event type. The value is fixed at '**release**'. + * @param { OnReleaseCallback } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore @@ -194,9 +203,10 @@ export interface Caller { off(type: 'release', callback: OnReleaseCallback): void; /** - * Unregister all death listener notification callback. + * Unregisters a callback that is invoked when the stub on the target UIAbility is disconnected. + * This capability is reserved. * - * @param { 'release' } type - release. + * @param { 'release' } type - Event type. The value is fixed at '**release**'. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore @@ -207,7 +217,7 @@ export interface Caller { } /** - * The interface of a Callee. + * Implements callbacks for caller notification registration and deregistration. * * @interface Callee * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore @@ -216,10 +226,11 @@ export interface Caller { */ export interface Callee { /** - * Register data listener callback. + * Registers a caller notification callback, which is invoked when the target UIAbility registers a function. * - * @param { string } method - A string registered to listen for notification events. - * @param { CalleeCallback } callback - Register a callback function that listens for notification events. + * @param { string } method - Notification message string negotiated between the two UIAbilities. + * @param { CalleeCallback } callback - JS notification synchronization callback of the rpc.MessageSequence type. The + * callback must return at least one empty rpc.Parcelable object. Otherwise, the function execution fails. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16200004 - The method has been registered. @@ -231,9 +242,9 @@ export interface Callee { on(method: string, callback: CalleeCallback): void; /** - * Unregister data listener callback. + * Unregisters a caller notification callback, which is invoked when the target UIAbility registers a function. * - * @param { string } method - A string registered to listen for notification events. + * @param { string } method - Registered notification message string. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16200005 - The method has not been registered. @@ -263,16 +274,23 @@ export interface Callee { * @since 10 */ /** - * The class of a UI ability. + * UIAbility is an application component that has the UI. + * The UIAbility module, inherited from Ability, provides lifecycle callbacks such as component creation, destruction, + * and foreground/background switching. It also provides the following capabilities related to component collaboration: + * <br>Caller: an object returned by startAbilityByCall. The CallerAbility (caller) uses this object to communicate + * with the CalleeAbility (callee). + * <br>Callee: an internal object of UIAbility. The CalleeAbility (callee) uses this object to communicate with the + * CallerAbility (caller). * * @extends Ability * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class UIAbility extends Ability { +declare class UIAbility extends Ability { /** * Indicates configuration information about an ability context. * @@ -291,14 +309,15 @@ export default class UIAbility extends Ability { * @since 10 */ /** - * Indicates configuration information about an ability context. + * Context of the UIAbility. * * @type { UIAbilityContext } * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ context: UIAbilityContext; @@ -311,7 +330,7 @@ export default class UIAbility extends Ability { * @since 9 */ /** - * Indicates ability launch want. + * Parameters for starting the UIAbility. * * @type { Want } * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore @@ -330,7 +349,7 @@ export default class UIAbility extends Ability { * @since 9 */ /** - * Indicates ability last request want. + * Latest Want received through onCreate or onNewWant when the UIAbility is started for multiple times. * * @type { Want } * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore @@ -341,7 +360,7 @@ export default class UIAbility extends Ability { lastRequestWant: Want; /** - * Call Service Stub Object. + * Object that invokes the stub service. * * @type { Callee } * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore @@ -370,15 +389,19 @@ export default class UIAbility extends Ability { * @since 10 */ /** - * Called back when an ability is started for initialization. + * Called to initialize the service logic when a UIAbility instance in the completely closed state is created. + * In other words, a UIAbility instance enters this lifecycle callback from a cold start. This API returns the + * result synchronously and does not support asynchronous callback. * - * @param { Want } want - Indicates the want info of the created ability. - * @param { AbilityConstant.LaunchParam } launchParam - Indicates the launch param. + * @param { Want } want - Want information, including the ability name and bundle name. + * @param { AbilityConstant.LaunchParam } launchParam - Parameters for starting the UIAbility, and the reason for + * the last abnormal exit. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void; @@ -400,21 +423,22 @@ export default class UIAbility extends Ability { * @since 10 */ /** - * Called back when an ability window stage is created. + * Called when a WindowStage is created for this UIAbility. * - * @param { window.WindowStage } windowStage - Indicates the created WindowStage. + * @param { window.WindowStage } windowStage - WindowStage information. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ onWindowStageCreate(windowStage: window.WindowStage): void; /** - * Called back when an ability window stage will destroy. + * Called when the WindowStage is about to be destroyed. * - * @param { window.WindowStage } windowStage - Indicates the WindowStage that will be destroyed. + * @param { window.WindowStage } windowStage - WindowStage information. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice @@ -438,13 +462,14 @@ export default class UIAbility extends Ability { * @since 10 */ /** - * Called back when an ability window stage is destroyed. + * Called when the WindowStage is destroyed for this UIAbility. * * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ onWindowStageDestroy(): void; @@ -457,9 +482,9 @@ export default class UIAbility extends Ability { * @since 9 */ /** - * Called back when an ability window stage is restored. + * Called when the WindowStage is restored during the migration of this UIAbility, which is a multi-instance ability. * - * @param { window.WindowStage } windowStage - window stage to restore + * @param { window.WindowStage } windowStage - WindowStage information. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice @@ -485,10 +510,15 @@ export default class UIAbility extends Ability { * @since 10 */ /** - * Called back before an ability is destroyed. - * After the onDestroy() lifecycle callback is executed, the application may exit. Consequently, - * the asynchronous function (for example, asynchronously writing data to the database) in onDestroy() may fail to be executed. - * You can use the asynchronous lifecycle to ensure that the subsequent lifecycle continues only after the asynchronous function in onDestroy() finishes the execution. + * Called to clear resources when this UIAbility is destroyed. + * This API returns the result synchronously or uses a promise to return the result. + * + * <p>**NOTE**: + * <br>After the onDestroy() lifecycle callback is executed, the application may exit. Consequently, + * the asynchronous function (for example, asynchronously writing data to the database) in onDestroy() may fail to be + * executed. You can use the asynchronous lifecycle to ensure that the subsequent lifecycle continues only after the + * asynchronous function in onDestroy() finishes the execution. + * </p> * * @returns { void | Promise<void> } the promise returned by the function. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore @@ -499,6 +529,48 @@ export default class UIAbility extends Ability { */ onDestroy(): void | Promise<void>; + /** + * Called to clear resources when this UIAbility is destroyed. + * This API returns the result synchronously or uses a promise to return the result. + * + * <p>**NOTE**: + * <br>After the onDestroy() lifecycle callback is executed, the application may exit. Consequently, + * the asynchronous function (for example, asynchronously writing data to the database) in onDestroy() may fail to be + * executed. You can use the asynchronous lifecycle to ensure that the subsequent lifecycle continues only after the + * asynchronous function in onDestroy() finishes the execution. + * </p> + * + * @returns { void } the promise returned by the function. + * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + onDestroy(): void; + + /** + * Called to clear resources when this UIAbility is destroyed. + * This API returns the result synchronously or uses a promise to return the result. + * + * <p>**NOTE**: + * <br>After the onDestroyAsync() lifecycle callback is executed, the application may exit. Consequently, + * the asynchronous function (for example, asynchronously writing data to the database) in onDestroyAsync() may fail to be + * executed. You can use the asynchronous lifecycle to ensure that the subsequent lifecycle continues only after the + * asynchronous function in onDestroyAsync() finishes the execution. + * </p> + * + * @returns { Promise<void> } the promise returned by the function. + * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + onDestroyAsync(): Promise<void>; + /** * Called back when the state of an ability changes to foreground. * @@ -515,33 +587,57 @@ export default class UIAbility extends Ability { * @since 10 */ /** - * Called back when the state of an ability changes to foreground. + * Triggered when the application transitions from the background to the foreground. + * It is called between onWillForeground and onDidForeground. + * It can be used to request system resources required, for example, requesting location services when the + * application transitions to the foreground. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callback. + * </p> * * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ onForeground(): void; /** - * Called back when the state of an ability will changes to foreground. + * Triggered just before the application transitions to the foreground. + * It is called before onForeground. + * It can be used to capture the moment when the application starts to transition to the foreground. + * When paired with onDidForeground, it can also measure the duration from the application's initial + * foreground entry to its full transition into the foreground state. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callback. + * </p> * * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice - * @since 18 + * @since 20 */ onWillForeground(): void; /** - * Called back when the state of an ability changed to foreground. + * Triggered after the application has transitioned to the foreground. + * It is called after onForeground. + * It can be used to capture the moment when the application fully transitions to the foreground. + * When paired with onWillForeground, it can also measure the duration from the application's initial foreground + * entry to its full transition into the foreground state. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callback. + * </p> * * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice - * @since 18 + * @since 20 */ onDidForeground(): void; @@ -561,33 +657,50 @@ export default class UIAbility extends Ability { * @since 10 */ /** - * Called back when the state of an ability changes to background. - * + * Triggered when the application transitions from the foreground to the background. + * It is called between onWillBackground and onDidBackground. + * It can be used to release resources when the UI is no longer visible, for example, stopping location services. + * * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ onBackground(): void; /** - * Called back when the state of an ability will changes to background. + * Triggered just when the application transitions to the background. + * It is called before onBackground. + * It can be used to log various types of data, such as faults, statistics, security information, and user behavior + * that occur during application running. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callback. + * </p> * * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice - * @since 18 + * @since 20 */ onWillBackground(): void; /** - * Called back when the state of an ability changed to background. + * Triggered after the application has transitioned to the background. + * It is called after onBackground. + * It can be used to release resources after the application has entered the background, for example, stopping + * audio playback. + * + * <p>**NOTE**: + * <br>This API returns the result synchronously and does not support asynchronous callback. + * <p/> * * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice - * @since 18 + * @since 20 */ onDidBackground(): void; @@ -611,10 +724,16 @@ export default class UIAbility extends Ability { * @since 11 */ /** - * Called back when an ability prepares to continue. + * Called to save data during the UIAbility migration preparation process. + * + * <p>**NOTE**: + * <br>Since API version 12, UIAbility.onContinue supports the return value in the form of + * Promise<AbilityConstant.OnContinueResult>. + * </p> * - * @param { Record<string, Object> } wantParam - Indicates the want parameter. - * @returns { AbilityConstant.OnContinueResult | Promise<AbilityConstant.OnContinueResult> } Return the result of onContinue, support promise. + * @param { Record<string, Object> } wantParam - want parameter. + * @returns { AbilityConstant.OnContinueResult | Promise<AbilityConstant.OnContinueResult> } Continuation result or + * Promise used to return the continuation result. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice @@ -647,14 +766,16 @@ export default class UIAbility extends Ability { /** * Called when a UIAbility instance that has undergone the following states is started again: * started in the foreground, running in the foreground, and switched to the background. + * In other words, a UIAbility instance enters this lifecycle callback from a hot start. * - * @param { Want } want - Indicates the want info of ability. - * @param { AbilityConstant.LaunchParam } launchParam - Indicates the launch parameters. + * @param { Want } want - Want information, such as the ability name and bundle name. + * @param { AbilityConstant.LaunchParam } launchParam - Reason for the UIAbility startup and the last abnormal exit. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ onNewWant(want: Want, launchParam: AbilityConstant.LaunchParam): void; @@ -670,10 +791,10 @@ export default class UIAbility extends Ability { */ /** * Called when dump client information is required. - * It is recommended that developers don't DUMP sensitive information. + * This API can be used to dump non-sensitive information. * - * @param { Array<string> } params - Indicates the params from command. - * @returns { Array<string> } Return the dump info array. + * @param { Array<string> } params - Parameters in the form of a command. + * @returns { Array<string> } Dumped information array. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice @@ -693,12 +814,17 @@ export default class UIAbility extends Ability { * @since 9 */ /** - * Called back when an ability prepares to save. + * Called when the framework automatically saves the UIAbility state in the case of an application fault. + * When an application is faulty, the framework calls onSaveState to save the status of the UIAbility if + * auto-save is enabled. * - * @param { AbilityConstant.StateType } reason - state type when save. - * @param { Record<string, Object> } wantParam - Indicates the want parameter. - * @returns { AbilityConstant.OnSaveResult } agree with the current UIAbility status or not.return 0 if ability - * agrees to save data successfully, otherwise errcode. + * <p>**NOTE**: + * <br>This API is used together with appRecovery. + * </p> + * + * @param { AbilityConstant.StateType } reason - Reason for triggering the callback to save the UIAbility state. + * @param { Record<string, Object> } wantParam - want parameter. + * @returns { AbilityConstant.OnSaveResult } Whether the UIAbility state is saved. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice @@ -706,6 +832,20 @@ export default class UIAbility extends Ability { */ onSaveState(reason: AbilityConstant.StateType, wantParam: Record<string, Object>): AbilityConstant.OnSaveResult; + /** + * Called back asynchronously when an ability prepares to save. + * + * @param { AbilityConstant.StateType } stateType - state type when save. + * @param { Record<string, Object> } wantParam - Indicates the want parameter. + * @returns { Promise<AbilityConstant.OnSaveResult> } agree with the current UIAbility status or not.return 0 if ability + * agrees to save data successfully, otherwise errcode. + * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore + * @stagemodelonly + * @atomicservice + * @since 20 + */ + onSaveStateAsync(stateType: AbilityConstant.StateType, wantParam: Record<string, Object>): Promise<AbilityConstant.OnSaveResult>; + /** * Called back when an ability shares data. * @@ -715,9 +855,9 @@ export default class UIAbility extends Ability { * @since 10 */ /** - * Called back when an ability shares data. + * Called by this UIAbility to set data to share in the cross-device sharing scenario. * - * @param { Record<string, Object> } wantParam - Indicates the want parameter. + * @param { Record<string, Object> } wantParam - Data to share. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice @@ -736,11 +876,22 @@ export default class UIAbility extends Ability { * @since 10 */ /** - * Called back when an ability prepare to terminate. - * + * Called when this UIAbility is about to terminate. It allows for additional actions to be performed before the + * UIAbility is officially terminated. + * For example, you can prompt the user to confirm whether they want to terminate the UIAbility. If the user + * confirms, you can call terminateSelf to terminate it. + * + * <p>**NOTE**: + * <br>Currently, this API takes effect only on 2-in-1 devices. + * <br>Since API version 15, this callback is not executed when UIAbility.onPrepareToTerminateAsync is implemented. + * <br>When AbilityStage.onPrepareTerminationAsync or AbilityStage.onPrepareTermination is implemented, this callback + * is not executed if the user right-clicks the dock bar or system tray to close the UIAbility. + * </p> + * * @permission ohos.permission.PREPARE_APP_TERMINATE - * @returns { boolean } Returns {@code true} if the ability need to top terminating; returns {@code false} if the - * ability need to terminate. + * @returns { boolean } Whether to terminate the UIAbility. + * <br>The value <code>true</code> means that the termination process is canceled. + * <br>The value <code>false</code> means to continue terminating the UIAbility. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice @@ -749,13 +900,24 @@ export default class UIAbility extends Ability { onPrepareToTerminate(): boolean; /** - * Called back asynchronously when an ability prepares to terminate. - * If onPrepareToTerminateAsync has been implemented then onPrepareToTerminate won't take effect + * Called when this UIAbility is about to terminate. It allows for additional actions to be performed before the + * UIAbility is officially terminated. + * This API uses a promise to return the result. + * For example, you can prompt the user to confirm whether they want to terminate the UIAbility. If the user + * confirms, you can call terminateSelf to terminate it. + * + * <p>**NOTE**: + * <br>Currently, this API takes effect only on 2-in-1 devices. + * <br>When AbilityStage.onPrepareTerminationAsync or AbilityStage.onPrepareTermination is implemented, this callback + * is not executed if the user right-clicks the dock bar or system tray to close the UIAbility. + * <br>If an asynchronous callback crashes, it will be handled as a timeout. If the UIAbility does not respond within + * 10 seconds, it will be terminated forcibly. + * </P> * * @permission ohos.permission.PREPARE_APP_TERMINATE - * @returns { Promise<boolean> } Returns a promise to indicate if the ability needs to stop terminating; - * Returns {@code true} if the ability needs to stop terminating; - * Returns {@code false} if the ability needs to terminate. + * @returns { Promise<boolean> } Promise used to return the result. + * <br>The value <code>true</code> means that the termination process is canceled. + * <br>The value <code>false</code> means to continue terminating the UIAbility. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice @@ -773,10 +935,18 @@ export default class UIAbility extends Ability { * @since 10 */ /** - * Called back when back press is dispatched. + * Called when an operation of going back to the previous page is triggered on this UIAbility. The return value + * determines whether to destroy the UIAbility instance. + * + * <p>**NOTE**: + * <br>When the target SDK version is earlier than 12, the default return value is false, indicating that the + * UIAbility will be destroyed. + * <br>When the target SDK version is 12 or later, the default return value is true, indicating that the UIAbility + * will be moved to the background and will not be destroyed. + * </p> * - * @returns { boolean } Returns {@code true} means the ability will move to background when back is pressed; - * Returns {@code false} means the ability will be destroyed when back is pressed. + * @returns { boolean } The value <code>true</code> means that the UIAbility instance will be moved to the background + * and will not be destroyed, and <code>false</code> means that the UIAbility instance will be destroyed. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @atomicservice @@ -785,13 +955,26 @@ export default class UIAbility extends Ability { onBackPressed(): boolean; /** - * Called back when another device start to collaborate. - * - * @param { Record<string, Object> } wantParam - Indicates the want parameter. - * @returns { AbilityConstant.CollaborateResult } Return the result of onCollaborate. + * Callback invoked to return the collaboration result in multi-device collaboration scenarios. + * + * <p>**NOTE**: + * <br>This callback does not support ability launch in specified mode. + * <br>When you use methods such as startAbility() to start an application, you must include + * FLAG_ABILITY_ON_COLLABORATE in Flags in the Want object. + * <br>During a cold start, this callback must be invoked before onForeground or after onBackground. During a hot + * start, this callback must be invoked before onNewWant. + * </p> + * + * @param { Record<string, Object> } wantParam - Want parameter, which supports only the key + * "ohos.extra.param.key.supportCollaborateIndex". The key can be used to obtain the data passed by the caller and + * perform corresponding processing. + * @returns { AbilityConstant.CollaborateResult } Collaborator result, that is, whether the target application + * accepts the collaboration request. * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @stagemodelonly * @since 18 */ onCollaborate(wantParam: Record<string, Object>): AbilityConstant.CollaborateResult; } + +export default UIAbility; \ No newline at end of file diff --git a/api/@ohos.app.ability.UIExtensionAbility.d.ts b/api/@ohos.app.ability.UIExtensionAbility.d.ts index 48edf419bdbe65a7e60b7b32d30647a2df0a6399..4b7de8200f33f98922164bf11b34d6ebeef1321f 100755 --- a/api/@ohos.app.ability.UIExtensionAbility.d.ts +++ b/api/@ohos.app.ability.UIExtensionAbility.d.ts @@ -19,10 +19,10 @@ */ import AbilityConstant from './@ohos.app.ability.AbilityConstant'; +import type Want from './@ohos.app.ability.Want'; import ExtensionAbility from './@ohos.app.ability.ExtensionAbility'; import type UIExtensionContentSession from './@ohos.app.ability.UIExtensionContentSession'; import type UIExtensionContext from './application/UIExtensionContext'; -import type Want from './@ohos.app.ability.Want'; /** * The class of UI extension ability. @@ -30,16 +30,18 @@ import type Want from './@ohos.app.ability.Want'; * @extends ExtensionAbility * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class UIExtensionAbility extends ExtensionAbility { +declare class UIExtensionAbility extends ExtensionAbility { /** * Indicates configuration information about an UI extension ability context. * * @type { UIExtensionContext } * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ context: UIExtensionContext; @@ -56,7 +58,8 @@ export default class UIExtensionAbility extends ExtensionAbility { * @param { AbilityConstant.LaunchParam } launchParam - Indicates the LaunchParam information about UIExtensionAbility. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ onCreate(launchParam: AbilityConstant.LaunchParam): void; @@ -67,7 +70,8 @@ export default class UIExtensionAbility extends ExtensionAbility { * @param { UIExtensionContentSession } session - Indicates the session of the UI extension page. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ onSessionCreate(want: Want, session: UIExtensionContentSession): void; @@ -77,7 +81,8 @@ export default class UIExtensionAbility extends ExtensionAbility { * @param { UIExtensionContentSession } session - Indicates the session of the UI extension page. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ onSessionDestroy(session: UIExtensionContentSession): void; @@ -86,7 +91,8 @@ export default class UIExtensionAbility extends ExtensionAbility { * * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ onForeground(): void; @@ -95,7 +101,8 @@ export default class UIExtensionAbility extends ExtensionAbility { * * @syscap SystemCapability.Ability.AbilityRuntime.AbilityCore * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ onBackground(): void; @@ -108,4 +115,28 @@ export default class UIExtensionAbility extends ExtensionAbility { * @since 10 */ onDestroy(): void | Promise<void>; + + /** + * Called back before an UI extension is destroyed. + * + * @returns { void } the promise returned by the function. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @StageModelOnly + * @since 20 + * @arkts 1.2 + */ + onDestroy(): void; + + /** + * Called back before an UI extension is destroyed. + * + * @returns { Promise<void> } the promise returned by the function. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @StageModelOnly + * @since 20 + * @arkts 1.2 + */ + onDestroyAsync(): Promise<void>; } + +export default UIExtensionAbility; \ No newline at end of file diff --git a/api/@ohos.app.ability.UIExtensionContentSession.d.ts b/api/@ohos.app.ability.UIExtensionContentSession.d.ts index 254253c3496053747a4c3462ea031ef591053399..146c2971a77ebef44f36c72fb29ac472a2b4fb7d 100644 --- a/api/@ohos.app.ability.UIExtensionContentSession.d.ts +++ b/api/@ohos.app.ability.UIExtensionContentSession.d.ts @@ -18,22 +18,29 @@ * @kit AbilityKit */ -import type { AbilityResult } from './ability/abilityResult'; +/*** if arkts 1.1 */ import type AbilityStartCallback from './application/AbilityStartCallback'; -import type { AsyncCallback } from './@ohos.base'; import type Want from './@ohos.app.ability.Want'; import type StartOptions from './@ohos.app.ability.StartOptions'; -import type uiExtensionHost from './@ohos.uiExtensionHost'; import type uiExtension from './@ohos.arkui.uiExtension'; +import type { AbilityResult } from './ability/abilityResult'; +/*** endif */ +import type { AsyncCallback } from './@ohos.base'; +import type uiExtensionHost from './@ohos.uiExtensionHost'; +/*** if arkts 1.2 */ +import { AbilityResult } from './ability/abilityResult'; +import { LocalStorage } from '@ohos.arkui.stateManagement'; +/*** endif */ /** * class of ui extension content session. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class UIExtensionContentSession { +declare class UIExtensionContentSession { /** * Send data from an ui extension to an ui extension component. * @@ -58,7 +65,8 @@ export default class UIExtensionContentSession { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ sendData(data: Record<string, Object>): void; @@ -73,7 +81,8 @@ export default class UIExtensionContentSession { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ setReceiveDataCallback(callback: (data: Record<string, Object>) => void): void; @@ -102,7 +111,8 @@ export default class UIExtensionContentSession { * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ loadContent(path: string, storage?: LocalStorage): void; @@ -111,8 +121,6 @@ export default class UIExtensionContentSession { * * @param { string } name - name of the page to which the content will be loaded. * @param { LocalStorage } [storage] - The data object shared within the content instance loaded by the page. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -136,7 +144,7 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -172,7 +180,7 @@ export default class UIExtensionContentSession { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -208,7 +216,7 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -244,7 +252,7 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -280,7 +288,7 @@ export default class UIExtensionContentSession { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -316,7 +324,7 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -352,7 +360,7 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -388,7 +396,7 @@ export default class UIExtensionContentSession { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -424,7 +432,7 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -452,7 +460,8 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelf(callback: AsyncCallback<void>): void; @@ -462,7 +471,8 @@ export default class UIExtensionContentSession { * @returns { Promise<void> } The promise returned by the function. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelf(): Promise<void>; @@ -475,7 +485,8 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback<void>): void; @@ -488,7 +499,8 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelfWithResult(parameter: AbilityResult): Promise<void>; @@ -503,7 +515,8 @@ export default class UIExtensionContentSession { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowBackgroundColor(color: string): void; @@ -553,7 +566,7 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -592,7 +605,7 @@ export default class UIExtensionContentSession { * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -626,7 +639,8 @@ export default class UIExtensionContentSession { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getUIExtensionHostWindowProxy(): uiExtensionHost.UIExtensionHostWindowProxy; @@ -641,3 +655,5 @@ export default class UIExtensionContentSession { */ getUIExtensionWindowProxy(): uiExtension.WindowProxy; } + +export default UIExtensionContentSession; \ No newline at end of file diff --git a/api/@ohos.app.ability.Want.d.ts b/api/@ohos.app.ability.Want.d.ts index 68dead0b67d2e4b51148aace2cfc6160d6f3aa5c..c02d8ccd5b74588f25ef809f5c0a94c6c650656d 100644 --- a/api/@ohos.app.ability.Want.d.ts +++ b/api/@ohos.app.ability.Want.d.ts @@ -32,12 +32,18 @@ * @since 10 */ /** - * Want is the basic communication component of the system. + * Want is a carrier for information transfer between objects (application components). + * Want can be used as a parameter of startAbility to specify a startup target and information that needs to be carried + * during startup, for example, bundleName and abilityName, which respectively indicate the bundle name of the target + * ability and the ability name in the bundle. + * When UIAbilityA needs to start UIAbilityB and transfer some data to UIAbilityB, it can use Want a carrier to + * transfer the data. * * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export default class Want { /** @@ -55,13 +61,14 @@ export default class Want { * @since 10 */ /** - * bundle name + * Bundle name of the ability. * * @type { ?string } * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ bundleName?: string; @@ -80,13 +87,19 @@ export default class Want { * @since 10 */ /** - * ability name - * + * Name of the ability. + * If both bundleName and abilityName are specified in a Want object, the Want object can match a specific ability. + * + * <p>**NOTE**: + * <br>The value of abilityName must be unique in an application. + * </p> + * * @type { ?string } * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ abilityName?: string; @@ -98,12 +111,17 @@ export default class Want { * @since 9 */ /** - * device id + * ID of the device running the ability. + * + * <p>**NOTE**: + * <br>If this field is unspecified, the local device is used. + * </p> * * @type { ?string } * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ deviceId?: string; @@ -115,12 +133,16 @@ export default class Want { * @since 9 */ /** - * The description of a URI in a Want. + * Data carried. + * This field is used together with type to specify the data type. + * If uri is specified in a Want, the Want will match the specified URI information, including scheme, + * schemeSpecificPart, authority, and path. * * @type { ?string } * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ uri?: string; @@ -140,13 +162,19 @@ export default class Want { * @since 11 */ /** - * The description of the type in this Want. + * MIME type, that is, the type of the file to open, for example, 'text/xml' and 'image/*'. + * + * <p>**NOTE**: + * <br>For details about the MIME type definition, + * see {@link https://www.iana.org/assignments/media-types/media-types.xhtml?utm_source=ld246.com}. + * </p> * * @type { ?string } * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ type?: string; @@ -158,7 +186,9 @@ export default class Want { * @since 9 */ /** - * The options of the flags in this Want. + * How the Want object will be handled. By default, a number is passed in. + * For example, wantConstant.Flags.FLAG_ABILITY_CONTINUATION specifies whether to start the ability in cross-device + * migration scenarios. * * @type { ?number } * @syscap SystemCapability.Ability.AbilityBase @@ -175,12 +205,15 @@ export default class Want { * @since 9 */ /** - * The description of an action in an want. + * Action to take, such as viewing and sharing application details. + * In implicit Want, you can define this field and use it together with uri or parameters to specify the operation + * to be performed on the data. * * @type { ?string } * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ action?: string; @@ -200,13 +233,73 @@ export default class Want { * @since 10 */ /** - * The description of the WantParams object in an Want - * + * List of parameters in the Want object. + * + * <p>**NOTE**: + * <br>1. The values of the following keys are assigned by the system. Manual settings do not take effect, since the + * system automatically changes the values to the actual values during data transfer. + * -ohos.aafwk.param.callerPid: PID of the caller. The value is a string. + * -ohos.aafwk.param.callerBundleName: bundle name of the caller. The value is a string. + * -ohos.aafwk.param.callerAbilityName: ability name of the caller. The value is a string. + * -ohos.aafwk.param.callerNativeName: process name of the caller when the native method is called. The value is + * a string. + * -ohos.aafwk.param.callerAppId: appId of the caller. The value is a string. + * -ohos.aafwk.param.callerAppIdentifier: appIdentifier of the caller. The value is a string. + * -ohos.aafwk.param.callerToken: token of the caller. The value is a string. + * -ohos.aafwk.param.callerUid: UID in BundleInfo, that is, the application's UID in the bundle information. The + * value is a number. + * -ohos.param.callerAppCloneIndex: clone index of the caller. The value is of the numeric type. + * -component.startup.newRules: enabled status of the new control rule. The value is of the Boolean type. + * -moduleName: module name of the caller. The value is a string. + * -ability.params.backToOtherMissionStack: support for redirection back across mission stacks. The value is of + * the Boolean type. + * -ohos.ability.params.abilityRecoveryRestart: support for ability restart upon fault recovery. The value is of + * the Boolean type. + * -ohos.extra.param.key.contentTitle: title that can be shared by the atomic service. The value is a string. + * -ohos.extra.param.key.shareAbstract: content that can be shared by the atomic service. The value is a string. + * -ohos.extra.param.key.shareUrl: URL of the content that can be shared by the atomic service. The value is + * a string. + * -ohos.extra.param.key.supportContinuePageStack: support for migration of page stack information during + * cross-device migration. The value is of the Boolean type. The default value is true, indicating that page stack + * information is automatically migrated. + * -ohos.extra.param.key.supportContinueSourceExit: support for application exit on the source device during + * cross-device migration. The value is of the Boolean type. The default value is true, indicating that the + * application on the source device automatically exits. + * -ohos.extra.param.key.showMode: mode to show the atomic service startup. The value is an enumerated value of + * wantConstant.ShowMode. + * -ohos.dlp.params.sandbox: available only for DLP files. This key is involved only in system applications. + * -ohos.dlp.params.bundleName: bundle name of DLP. The value is a string. This key is involved only in system + * applications. + * -ohos.dlp.params.moduleName: module name of DLP. The value is a string. This key is involved only in system + * applications. + * -ohos.dlp.params.abilityName: ability name of DLP. The value is a string. This key is involved only in system + * applications. + * -ohos.dlp.params.index: DLP index. The value is a number. This key is involved only in system applications. + * -ohos.ability.params.asssertFaultSessionId: session ID of the fault assertion. The value is a string. This key + * is involved only in system applications. + * + * <br>2. The following keys are defined by the system, and their values need to be manually assigned. + * -ability.params.stream: File URIs to be authorized to the target ability. The value is a file URI array of the + * string type. + * -ohos.extra.param.key.appCloneIndex: index of the application clone. + * + * <br>3. In addition to the foregoing cases, applications may further agree on the key-value pairs to transfer. + * </p> + * + * <p>**NOTE**: + * <br>For details about the constants of Params in want, see wantConstant. + * <br>Note that a maximum of 200 KB data that can be transferred by using WantParams. If the data volume exceeds + * 200 KB, transfer data in WriteRawDataBuffer or uri mode. + * <br>The values of parameters must be of the following basic data types: String, Number, Boolean, Object, + * undefined, and null. Functions in an object cannot be transferred. + * </p> + * * @type { ?Record<string, Object> } * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ parameters?: Record<string, Object>; @@ -218,12 +311,14 @@ export default class Want { * @since 9 */ /** - * The description of a entities in a Want. + * Additional category information (such as browser and video player) of the ability. + * It is a supplement to the action field for implicit Want. and is used to filter ability types. * * @type { ?Array<string> } * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ entities?: Array<string>; @@ -242,18 +337,26 @@ export default class Want { * @since 10 */ /** - * The description of an module name in an want. + * Name of the module to which the ability belongs. + * + * <p>**NOTE**: + * <br>If the ability belongs to a HAR module, moduleName must be set to the name of the HAP or HSP module that + * depends on this HAR. + * </p> * * @type { ?string } * @syscap SystemCapability.Ability.AbilityBase * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ moduleName?: string; /** - * The description of fds in a Want. + * Want file descriptor (FD), which is used to identify the Want file opened. + * You can obtain the FD from fs.open. When the FD is no longer needed, you must call fs.close to destroy the FD in a + * timely manner to prevent FD leakage. * * @type { ?Record<string, number> } * @readonly diff --git a/api/@ohos.app.ability.abilityDelegatorRegistry.d.ts b/api/@ohos.app.ability.abilityDelegatorRegistry.d.ts index 73ebf3af72caada227f12566b953cf74d6ee5c2c..3fa78db0916e5a06e03c695528b2b4be9592827e 100644 --- a/api/@ohos.app.ability.abilityDelegatorRegistry.d.ts +++ b/api/@ohos.app.ability.abilityDelegatorRegistry.d.ts @@ -21,8 +21,10 @@ import { AbilityDelegator as _AbilityDelegator } from './application/AbilityDelegator'; import { AbilityDelegatorArgs as _AbilityDelegatorArgs } from './application/abilityDelegatorArgs'; import { AbilityMonitor as _AbilityMonitor } from './application/AbilityMonitor'; +/*** if arkts 1.1 */ import { AbilityStageMonitor as _AbilityStageMonitor } from './application/AbilityStageMonitor'; import { ShellCmdResult as _ShellCmdResult } from './application/shellCmdResult'; +/*** endif */ /** * A global register used to store the AbilityDelegator and AbilityDelegatorArgs objects registered @@ -49,7 +51,8 @@ import { ShellCmdResult as _ShellCmdResult } from './application/shellCmdResult' * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace abilityDelegatorRegistry { /** @@ -74,7 +77,8 @@ declare namespace abilityDelegatorRegistry { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function getAbilityDelegator(): AbilityDelegator; @@ -100,7 +104,8 @@ declare namespace abilityDelegatorRegistry { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function getArguments(): AbilityDelegatorArgs; @@ -265,7 +270,8 @@ declare namespace abilityDelegatorRegistry { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export type AbilityDelegator = _AbilityDelegator; @@ -289,7 +295,8 @@ declare namespace abilityDelegatorRegistry { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export type AbilityDelegatorArgs = _AbilityDelegatorArgs; @@ -316,7 +323,8 @@ declare namespace abilityDelegatorRegistry { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export type AbilityMonitor = _AbilityMonitor; diff --git a/api/@ohos.app.ability.abilityManager.d.ts b/api/@ohos.app.ability.abilityManager.d.ts index 979e15841365af2cd1e085d8f3fb0836277953d1..1acdb5ed8168b6e4865100682d9962b741bce023 100644 --- a/api/@ohos.app.ability.abilityManager.d.ts +++ b/api/@ohos.app.ability.abilityManager.d.ts @@ -35,6 +35,14 @@ import * as _AbilityStateData from './application/AbilityStateData'; * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ +/** + * The class of an ability manager. + * + * @namespace abilityManager + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @atomicservice + * @since 20 + */ declare namespace abilityManager { /** * Enum for the ability state. @@ -514,13 +522,28 @@ declare namespace abilityManager { */ function queryAtomicServiceStartupRule(context: Context, appId: string): Promise<AtomicServiceStartupRule>; + /** + * Restart the current atomic service. + * + * @param { Context } context - The context that initiates the restart. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. + * @throws { BusinessError } 16000064 - Restart too frequently. Try again at least 3s later. + * @throws { BusinessError } 16000086 - The context is not UIAbilityContext. + * @throws { BusinessError } 16000090 - The caller is not an atomic service. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + function restartSelfAtomicService(context: Context): void; + /** * The class of an ability running information. * * @typedef { _AbilityRunningInfo } * @syscap SystemCapability.Ability.AbilityRuntime.Core - * @systemapi - * @since 9 + * @since 14 */ export type AbilityRunningInfo = _AbilityRunningInfo; @@ -529,8 +552,7 @@ declare namespace abilityManager { * * @typedef { _AbilityStateData.default } * @syscap SystemCapability.Ability.AbilityRuntime.Core - * @systemapi - * @since 11 + * @since 14 */ export type AbilityStateData = _AbilityStateData.default; diff --git a/api/@ohos.app.ability.appManager.d.ts b/api/@ohos.app.ability.appManager.d.ts index 026423f30843dc3efd49dd66342aff6523f472e4..64353534e2aeaf706f09b3c26027b6704e67e2dc 100644 --- a/api/@ohos.app.ability.appManager.d.ts +++ b/api/@ohos.app.ability.appManager.d.ts @@ -315,6 +315,26 @@ declare namespace appManager { * @since 14 */ setter: KeepAliveSetter; + + /** + * The user id of setter. + * + * @type { ?number } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @since 20 + */ + setterUserId?: number; + + /** + * Weather allow user to cancel keep-alive status. + * + * @type { ?boolean } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @since 20 + */ + allowUserToCancel?: boolean; } /** @@ -1170,7 +1190,7 @@ declare namespace appManager { * @throws { BusinessError } 16300005 - The target bundle does not exist. * @throws { BusinessError } 16300008 - The target bundle has no MainAbility. * @throws { BusinessError } 16300009 - The target bundle has no status-bar ability. - * @throws { BusinessError } 16300010 - The target application is not attached to status bar. + * @throws { BusinessError } 16300010 - The target application is not attached to the status bar. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @since 14 @@ -1196,6 +1216,42 @@ declare namespace appManager { */ function getKeepAliveBundles(type: KeepAliveAppType, userId?: number): Promise<Array<KeepAliveBundleInfo>>; + /** + * Set keep alive for the specified app service extension. + * + * @permission ohos.permission.MANAGE_APP_KEEP_ALIVE + * @param { string } bundleName - bundle name. + * @param { boolean } enabled - True indicates to enable process keep-alive, while false indicates to disable it. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000081 - The target bundle does not exist. + * @throws { BusinessError } 16000202 - Invalid main element type. + * @throws { BusinessError } 16000203 - Can not change keep alive status. + * @throws { BusinessError } 16000204 - The target bundle is not in u1. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @since 20 + */ + function setKeepAliveForAppServiceExtension(bundleName: string, enabled: boolean): Promise<void>; + + /** + * Get keep-alive bundle information. + * + * @permission ohos.permission.MANAGE_APP_KEEP_ALIVE + * @returns { Promise<Array<KeepAliveBundleInfo>> } Returns the list of KeepAliveBundleInfo. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @since 20 + */ + function getKeepAliveAppServiceExtensions(): Promise<Array<KeepAliveBundleInfo>>; + /** * Kill processes in batch. * @@ -1219,8 +1275,7 @@ declare namespace appManager { * * @typedef { _AbilityStateData.default } * @syscap SystemCapability.Ability.AbilityRuntime.Core - * @systemapi - * @since 9 + * @since 14 */ export type AbilityStateData = _AbilityStateData.default; @@ -1229,8 +1284,7 @@ declare namespace appManager { * * @typedef { _AppStateData.default } * @syscap SystemCapability.Ability.AbilityRuntime.Core - * @systemapi - * @since 9 + * @since 14 */ export type AppStateData = _AppStateData.default; @@ -1274,8 +1328,7 @@ declare namespace appManager { * * @typedef { _ProcessData.default } * @syscap SystemCapability.Ability.AbilityRuntime.Core - * @systemapi - * @since 10 + * @since 14 */ export type ProcessData = _ProcessData.default; diff --git a/api/@ohos.app.ability.application.d.ts b/api/@ohos.app.ability.application.d.ts index c7c1950aed9f2a1e66c59b408b7390cde55cbade..7979f66a2dae1168c1ec9560bd7c25b6bbf39b07 100644 --- a/api/@ohos.app.ability.application.d.ts +++ b/api/@ohos.app.ability.application.d.ts @@ -63,6 +63,19 @@ declare namespace application { */ export function createModuleContext(context: Context, bundleName: string, moduleName: string): Promise<Context>; + /** + * Create a module context of plugin. + * + * @param { Context } context - Indicates current context. + * @param { string } pluginBundleName - Indicates the bundle name of plugin. + * @param { string } pluginModuleName - Indicates the module name of plugin. + * @returns { Promise<Context> } Returns the module context of plugin. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 19 + */ + export function createPluginModuleContext(context: Context, pluginBundleName: string, pluginModuleName: string): Promise<Context>; + /** * Create a bundle context * diff --git a/api/@ohos.app.ability.autoStartupManager.d.ts b/api/@ohos.app.ability.autoStartupManager.d.ts index 378143bb24b6550e1246165da131e1c9196d87f8..7efb74a216233c0853a99461c5081979dc0fa28b 100644 --- a/api/@ohos.app.ability.autoStartupManager.d.ts +++ b/api/@ohos.app.ability.autoStartupManager.d.ts @@ -80,7 +80,7 @@ declare namespace autoStartupManager { * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameters types. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000013 - The application is controlled by EDM. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -101,7 +101,7 @@ declare namespace autoStartupManager { * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameters types. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000013 - The application is controlled by EDM. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -122,7 +122,7 @@ declare namespace autoStartupManager { * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameters types. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000013 - The application is controlled by EDM. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -143,7 +143,7 @@ declare namespace autoStartupManager { * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameters types. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000013 - The application is controlled by EDM. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core diff --git a/api/@ohos.app.ability.childProcessManager.d.ts b/api/@ohos.app.ability.childProcessManager.d.ts index 1e5c9ca12edb1088d21c607bf4a859dd5ec6001b..683fe96719d0b5c0dd463a27f60292d11cb8f38d 100644 --- a/api/@ohos.app.ability.childProcessManager.d.ts +++ b/api/@ohos.app.ability.childProcessManager.d.ts @@ -106,7 +106,7 @@ declare namespace childProcessManager { * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 16000050 - Internal error. - * @throws { BusinessError } 16000061 - Operation not supported. The API cannot be called in a child process. + * @throws { BusinessError } 16000061 - Operation not supported. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @since 12 @@ -122,7 +122,7 @@ declare namespace childProcessManager { * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 16000050 - Internal error. - * @throws { BusinessError } 16000061 - Operation not supported. The API cannot be called in a child process. + * @throws { BusinessError } 16000061 - Operation not supported. * @throws { BusinessError } 16000062 - The number of child processes exceeds the upper limit. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -141,7 +141,7 @@ declare namespace childProcessManager { * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 16000050 - Internal error. - * @throws { BusinessError } 16000061 - Operation not supported. The API cannot be called in a child process. + * @throws { BusinessError } 16000061 - Operation not supported. * @throws { BusinessError } 16000062 - The number of child processes exceeds the upper limit. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly diff --git a/api/@ohos.app.ability.common.d.ts b/api/@ohos.app.ability.common.d.ts index cbc729a6678e887d6fd7fdf893b7241af688d5e2..f26a6a6e5fddb4f3e5bf38a447b585155274612e 100644 --- a/api/@ohos.app.ability.common.d.ts +++ b/api/@ohos.app.ability.common.d.ts @@ -18,6 +18,7 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ import * as _UIAbilityContext from './application/UIAbilityContext'; import type * as _UIExtensionContext from './application/UIExtensionContext'; import type * as _AutoFillExtensionContext from './application/AutoFillExtensionContext'; @@ -30,7 +31,6 @@ import * as _FormExtensionContext from './application/FormExtensionContext'; import * as _ServiceExtensionContext from './application/ServiceExtensionContext'; import * as _EventHub from './application/EventHub'; import { PacMap as _PacMap } from './ability/dataAbilityHelper'; -import { AbilityResult as _AbilityResult } from './ability/abilityResult'; import type _AbilityStartCallback from './application/AbilityStartCallback'; import { ConnectOptions as _ConnectOptions } from './ability/connectOptions'; import type * as _VpnExtensionContext from './application/VpnExtensionContext'; @@ -42,6 +42,18 @@ import * as _UIServiceExtensionContext from './application/UIServiceExtensionCon import * as _UIServiceProxy from './application/UIServiceProxy'; import * as _UIServiceHostProxy from './application/UIServiceHostProxy'; import * as _UIServiceExtensionConnectCallback from './application/UIServiceExtensionConnectCallback'; +import * as _AppServiceExtensionContext from './application/AppServiceExtensionContext'; +/*** endif */ +import { AbilityResult as _AbilityResult } from './ability/abilityResult'; +/*** if arkts 1.2 */ +import _UIAbilityContext from './application/UIAbilityContext'; +import type _UIExtensionContext from './application/UIExtensionContext'; +import _AbilityStageContext from './application/AbilityStageContext'; +import _ApplicationContext from './application/ApplicationContext'; +import _Context from './application/Context'; +import _ExtensionContext from './application/ExtensionContext'; +import _ServiceExtensionContext from './application/ServiceExtensionContext'; +/*** endif */ /** * This module provides application context classes and common data structures. @@ -67,7 +79,8 @@ import * as _UIServiceExtensionConnectCallback from './application/UIServiceExte * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace common { /** @@ -97,6 +110,19 @@ declare namespace common { */ export type UIAbilityContext = _UIAbilityContext.default; + /** + * The context of an ability. It allows access to ability-specific resources. + * + * @typedef { _UIAbilityContext } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type UIAbilityContext = _UIAbilityContext; + /** * The context of an abilityStage. It allows access to abilityStage-specific resources. * @@ -124,6 +150,19 @@ declare namespace common { */ export type AbilityStageContext = _AbilityStageContext.default; + /** + * The context of an abilityStage. It allows access to abilityStage-specific resources. + * + * @typedef { _AbilityStageContext } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type AbilityStageContext = _AbilityStageContext; + /** * The context of an application. It allows access to application-specific resources. * @@ -151,6 +190,19 @@ declare namespace common { */ export type ApplicationContext = _ApplicationContext.default; + /** + * The context of an application. It allows access to application-specific resources. + * + * @typedef { _ApplicationContext } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type ApplicationContext = _ApplicationContext; + /** * The base context of 'app.Context' for FA Mode or 'application.Context' for Stage Mode. * @@ -208,6 +260,20 @@ declare namespace common { */ export type Context = _Context.default; + /** + * The base context of an ability or an application. It allows access to + * application-specific resources. + * + * @typedef { _Context } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type Context = _Context; + /** * The context of an extension. It allows access to extension-specific resources. * @@ -226,6 +292,18 @@ declare namespace common { */ export type ExtensionContext = _ExtensionContext.default; + /** + * The context of an extension. It allows access to extension-specific resources. + * + * @typedef { _ExtensionContext } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type ExtensionContext = _ExtensionContext; + /** * The context of form extension. It allows access to * formExtension-specific resources. @@ -258,6 +336,19 @@ declare namespace common { */ export type ServiceExtensionContext = _ServiceExtensionContext.default; + /** + * The context of service extension. It allows access to + * serviceExtension-specific resources. + * + * @typedef { _ServiceExtensionContext } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + * @arkts 1.2 + */ + export type ServiceExtensionContext = _ServiceExtensionContext; + /** * The event center of a context, support the subscription and publication of events. * @@ -316,7 +407,8 @@ declare namespace common { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export type AbilityResult = _AbilityResult; @@ -341,6 +433,18 @@ declare namespace common { */ export type UIExtensionContext = _UIExtensionContext.default; + /** + * The context of UI extension. It allows access to + * UIExtension-specific resources. + * + * @typedef { _UIExtensionContext } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + * @arkts 1.2 + */ + export type UIExtensionContext = _UIExtensionContext; + /** * The context of auto fill extension. It allows access to * AutoFillExtension-specific resources. @@ -462,6 +566,17 @@ declare namespace common { * @since 14 */ export type UIServiceExtensionConnectCallback = _UIServiceExtensionConnectCallback.default; + + /** + * The context of app service extension. It allows access to + * appServiceExtension-specific resources. + * + * @typedef { _AppServiceExtensionContext.default } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + export type AppServiceExtensionContext = _AppServiceExtensionContext.default; } export default common; diff --git a/api/@ohos.app.ability.contextConstant.d.ts b/api/@ohos.app.ability.contextConstant.d.ts index 27b8e2e769787645981b1e7e300810b8f4ca8f67..723eb46972bc6ca2580a4529a6ca8a49c87b6f24 100644 --- a/api/@ohos.app.ability.contextConstant.d.ts +++ b/api/@ohos.app.ability.contextConstant.d.ts @@ -33,7 +33,8 @@ * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace contextConstant { /** @@ -51,7 +52,8 @@ declare namespace contextConstant { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum AreaMode { /** @@ -67,7 +69,8 @@ declare namespace contextConstant { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ EL1 = 0, @@ -84,7 +87,8 @@ declare namespace contextConstant { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ EL2 = 1, @@ -95,7 +99,8 @@ declare namespace contextConstant { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ EL3 = 2, @@ -107,7 +112,8 @@ declare namespace contextConstant { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ EL4 = 3, @@ -130,7 +136,8 @@ declare namespace contextConstant { * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum ProcessMode { /** @@ -139,7 +146,8 @@ declare namespace contextConstant { * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ NEW_PROCESS_ATTACH_TO_PARENT = 1, @@ -150,7 +158,8 @@ declare namespace contextConstant { * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ NEW_PROCESS_ATTACH_TO_STATUS_BAR_ITEM = 2, @@ -161,7 +170,8 @@ declare namespace contextConstant { * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ ATTACH_TO_STATUS_BAR_ITEM = 3 } @@ -172,7 +182,8 @@ declare namespace contextConstant { * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum StartupVisibility { /** @@ -180,7 +191,8 @@ declare namespace contextConstant { * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ STARTUP_HIDE = 0, @@ -189,7 +201,8 @@ declare namespace contextConstant { * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ STARTUP_SHOW = 1 } diff --git a/api/@ohos.app.ability.continueManager.d.ts b/api/@ohos.app.ability.continueManager.d.ts index 00748177aa9a7566466f933bff124e247fe1abe4..a4899dee1f63ef4f72a3cd546d39981771851879 100644 --- a/api/@ohos.app.ability.continueManager.d.ts +++ b/api/@ohos.app.ability.continueManager.d.ts @@ -35,7 +35,6 @@ declare namespace continueManager { * @param { 'prepareContinue' } type - Registration Type, 'prepareContinue'. * @param { Context } context - the ability context. * @param { AsyncCallback<ContinueResultInfo> } callback - Used to handle ('prepareContinue') command. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. * @throws { BusinessError } 16300501 - the system ability work abnormally. * @syscap SystemCapability.Ability.AbilityRuntime.Mission * @since 18 @@ -48,7 +47,6 @@ declare namespace continueManager { * @param { 'prepareContinue' } type - Registration Type, 'prepareContinue'. * @param { Context } context - the ability context. * @param { AsyncCallback<ContinueResultInfo> } callback - Used to handle ('prepareContinue') command. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. * @throws { BusinessError } 16300501 - the system ability work abnormally. * @syscap SystemCapability.Ability.AbilityRuntime.Mission * @since 18 diff --git a/api/@ohos.app.ability.dialogRequest.d.ts b/api/@ohos.app.ability.dialogRequest.d.ts index 7c7f7f32781a5729457158fd307a699818951acc..275dc2f4173f94a9545c8bc955d6e3d6143af656 100644 --- a/api/@ohos.app.ability.dialogRequest.d.ts +++ b/api/@ohos.app.ability.dialogRequest.d.ts @@ -18,14 +18,17 @@ * @kit AbilityKit */ + /*** if arkts 1.1 */ import Want from './@ohos.app.ability.Want'; +/*** endif */ /** * Interface of request dialog. * * @namespace dialogRequest * @syscap SystemCapability.Ability.AbilityRuntime.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace dialogRequest { /** diff --git a/api/@ohos.app.ability.errorManager.d.ts b/api/@ohos.app.ability.errorManager.d.ts index ed6e7d309c61ab605384c8b80cf7849f59fa8e10..5350223c8b9c07d591f503f210e0fe2a2fbf211c 100644 --- a/api/@ohos.app.ability.errorManager.d.ts +++ b/api/@ohos.app.ability.errorManager.d.ts @@ -44,7 +44,7 @@ import { LoopObserver as _LoopObserver } from './application/LoopObserver'; * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare namespace errorManager { /** @@ -55,7 +55,7 @@ declare namespace errorManager { * @returns { number } Returns the number code of the observer. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16000003 - Id does not exist. + * @throws { BusinessError } 16000003 - The specified ID does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ @@ -84,7 +84,7 @@ declare namespace errorManager { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function on(type: 'error', observer: ErrorObserver): number; @@ -96,7 +96,7 @@ declare namespace errorManager { * @param { AsyncCallback<void> } callback - The callback of off. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16000003 - Id does not exist. + * @throws { BusinessError } 16000003 - The specified ID does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ @@ -125,7 +125,7 @@ declare namespace errorManager { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function off(type: 'error', observerId: number, callback: AsyncCallback<void>): void; @@ -137,7 +137,7 @@ declare namespace errorManager { * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16000003 - Id does not exist. + * @throws { BusinessError } 16000003 - The specified ID does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ @@ -166,7 +166,7 @@ declare namespace errorManager { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function off(type: 'error', observerId: number): Promise<void>; @@ -176,7 +176,7 @@ declare namespace errorManager { * @param { GlobalObserver } observer - the global error observer. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16200001 - If the caller is invalid. + * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 18 @@ -189,7 +189,7 @@ declare namespace errorManager { * @param { GlobalObserver } observer - the global error observer. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16200001 - If the caller is invalid. + * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 18 @@ -202,8 +202,8 @@ declare namespace errorManager { * @param { GlobalObserver } observer - the global error observer. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16200001 - If the caller is invalid. - * @throws { BusinessError } 16300004 - If the observer does not exist + * @throws { BusinessError } 16200001 - The caller has been released. + * @throws { BusinessError } 16300004 - The observer does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 18 @@ -216,8 +216,8 @@ declare namespace errorManager { * @param { GlobalObserver } observer - the global error observer. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16200001 - If the caller is invalid. - * @throws { BusinessError } 16300004 - If the observer does not exist + * @throws { BusinessError } 16200001 - The caller has been released. + * @throws { BusinessError } 16300004 - The observer does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 18 @@ -336,7 +336,7 @@ declare namespace errorManager { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function on(type: 'loopObserver', timeout: number, observer: LoopObserver): void; @@ -361,7 +361,7 @@ declare namespace errorManager { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function off(type: 'loopObserver', observer?: LoopObserver): void; @@ -372,7 +372,7 @@ declare namespace errorManager { * @param { UnhandledRejectionObserver } observer - The unhandled rejection observer. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16200001 - If the caller is invalid. + * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -384,11 +384,11 @@ declare namespace errorManager { * @param { UnhandledRejectionObserver } observer - The unhandled rejection observer. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16200001 - If the caller is invalid. + * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function on(type: 'unhandledRejection', observer: UnhandledRejectionObserver): void; @@ -399,8 +399,8 @@ declare namespace errorManager { * @param { UnhandledRejectionObserver } [observer] - the registered observer * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16200001 - If the caller is invalid. - * @throws { BusinessError } 16300004 - If the observer does not exist + * @throws { BusinessError } 16200001 - The caller has been released. + * @throws { BusinessError } 16300004 - The observer does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -412,12 +412,12 @@ declare namespace errorManager { * @param { UnhandledRejectionObserver } [observer] - the registered observer * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16200001 - If the caller is invalid. - * @throws { BusinessError } 16300004 - If the observer does not exist + * @throws { BusinessError } 16200001 - The caller has been released. + * @throws { BusinessError } 16300004 - The observer does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function off(type: 'unhandledRejection', observer?: UnhandledRejectionObserver): void; @@ -445,7 +445,7 @@ declare namespace errorManager { * @param { FreezeObserver } observer - The freeze event observer. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16300004 - If the observer does not exist + * @throws { BusinessError } 16300004 - The observer does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 18 @@ -473,7 +473,7 @@ declare namespace errorManager { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ export type ErrorObserver = _ErrorObserver.default; /** @@ -491,7 +491,7 @@ declare namespace errorManager { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ export type LoopObserver = _LoopObserver; /** @@ -513,7 +513,7 @@ declare namespace errorManager { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ export type UnhandledRejectionObserver = (reason: Error | any, promise: Promise<any>) => void; /** diff --git a/api/@ohos.app.ability.insightIntent.d.ts b/api/@ohos.app.ability.insightIntent.d.ts index 83d0c8e1b8aa55d5503018d2e6b7a38f3609d909..d49aceb4d6e7781f18daa4ed6a18bf26ee9b4ca8 100644 --- a/api/@ohos.app.ability.insightIntent.d.ts +++ b/api/@ohos.app.ability.insightIntent.d.ts @@ -139,6 +139,38 @@ declare namespace insightIntent { */ flags?: number; } + /** + * The class of insight intent result. + * + * @interface IntentResult<T> + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + interface IntentResult<T> { + /** + * The result code. + * + * @type { number } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + code: number; + + /** + * The insight intent result. + * + * @type { ?T } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + result?: T; + } } export default insightIntent; diff --git a/api/@ohos.app.ability.insightIntentDriver.d.ts b/api/@ohos.app.ability.insightIntentDriver.d.ts index b62db3747e7475a6e359d42a21d5b051affeda40..df8657ac8f734fc3013c48cc0bc649ee2db3b102 100644 --- a/api/@ohos.app.ability.insightIntentDriver.d.ts +++ b/api/@ohos.app.ability.insightIntentDriver.d.ts @@ -162,12 +162,12 @@ declare namespace insightIntentDriver { * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -196,12 +196,12 @@ declare namespace insightIntentDriver { * 2. Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -214,6 +214,607 @@ declare namespace insightIntentDriver { * @since 11 */ function execute(param: ExecuteParam): Promise<insightIntent.ExecuteResult>; + + /** + * Enum for intent type. + * + * @enum { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + enum InsightIntentType { + /** + * Link insight intent. + * {@link InsightIntentDecorator#InsightIntentLink} + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + LINK = '@InsightIntentLink', + + /** + * Page insight intent. + * {@link InsightIntentDecorator#InsightIntentPage} + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + PAGE = '@InsightIntentPage', + + /** + * Entry insight intent. + * {@link InsightIntentDecorator#InsightIntentEntry} + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + ENTRY = '@InsightIntentEntry', + + /** + * Function insight intent. + * {@link InsightIntentDecorator#InsightIntentFunction} + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + FUNCTION = '@InsightIntentFunctionMethod', + + /** + * Form insight intent. + * {@link InsightIntentDecorator#InsightIntentForm} + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + FORM = '@InsightIntentForm', + } + + /** + * The insight intent information. + * + * @interface InsightIntentInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + interface InsightIntentInfo { + /** + * The bundle name. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly bundleName: string; + + /** + * The module name. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly moduleName: string; + + /** + * The intent name. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly intentName: string; + + /** + * The intent domain. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly domain: string; + + /** + * The intent version. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly intentVersion: string; + + /** + * The intent display name. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly displayName: string; + + /** + * The intent display description. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly displayDescription: string; + + /** + * The intent schema. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly schema: string; + + /** + * The intent icon. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly icon: string; + + /** + * The intent large language model description. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly llmDescription: string; + + /** + * The intent keywords. + * + * @type { string[] } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly keywords: string[]; + + /** + * The intent type. + * + * @type { InsightIntentType } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly intentType: InsightIntentType; + + /** + * The sub intent information. + * If the intentType is "@InsightIntentLink", subIntentInfo is a LinkIntentInfo. + * If the intentType is "@InsightIntentPage", subIntentInfo is a PageIntentInfo. + * If the intentType is "@InsightIntentFunctionMethod", subIntentInfo is a FunctionIntentInfo. + * If the intentType is "@InsightIntentForm", subIntentInfo is a FormIntentInfo. + * If the intentType is "@InsightIntentEntry", subIntentInfo is a EntryIntentInfo. + * + * @type { LinkIntentInfo | PageIntentInfo | FunctionIntentInfo | FormIntentInfo | EntryIntentInfo } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly subIntentInfo: LinkIntentInfo | PageIntentInfo | FunctionIntentInfo | FormIntentInfo | EntryIntentInfo; + + /** + * The insight intent parameters. + * + * @type { Record<string, Object> } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly parameters: Record<string, Object>; + + /** + * The type definition of the result returned by intent call. + * + * @type { Record<string, Object> } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly result: Record<string, Object>; + + /** + * The entity informations. + * + * @type { Array<EntityInfo> } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly entities: Array<EntityInfo>; + } + + /** + * The link intent information. + * + * @interface LinkIntentInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + interface LinkIntentInfo { + /** + * The uri. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly uri: string; + } + + /** + * The page intent information. + * + * @interface LinkIntentInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + interface PageIntentInfo { + /** + * The uiability. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly uiAbility: string; + + /** + * The page path. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly pagePath: string; + + /** + * The navigationId. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly navigationId: string; + + /** + * The navigation destination name. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly navDestinationName: string; + } + + /** + * The function intent information. + * + * @interface FunctionIntentInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + interface FunctionIntentInfo {} + + /** + * The form intent information. + * + * @interface FormIntentInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + interface FormIntentInfo { + /** + * The form extension ability name. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly abilityName: string; + + /** + * The form name of the form extension ability. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly formName: string; + } + + /** + * The form intent information. + * + * @interface EntryIntentInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + interface EntryIntentInfo { + /** + * The ability name. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly abilityName: string; + + /** + * The execute mode. + * + * @type { insightIntent.ExecuteMode[] } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly executeMode: insightIntent.ExecuteMode[]; + } + + /** + * Enum for get insight intent flag. + * + * @enum { number } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + enum GetInsightIntentFlag { + /** + * Get full insight intent. + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + GET_FULL_INSIGHT_INTENT = 0x00000001, + + /** + * Get summary insight intent. + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + GET_SUMMARY_INSIGHT_INTENT = 0x00000002, + + /** + * Get entities info. + * + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + GET_ENTITY_INFO = 0x00000004, + } + + /** + * The entity information. + * + * @interface EntityInfo + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + interface EntityInfo { + /** + * The entity class name. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly className: string; + + /** + * The entity Id. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly entityId: string; + + /** + * The entity category. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly entityCategory: string; + + /** + * The parameters of intent entity. + * + * @type { Record<string, Object> } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly parameters: Record<string, Object>; + + /** + * The entity class name of parent. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + readonly parentClassName: string; + } + + /** + * Get all insight intent information. + * + * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED + * @param { number } intentFlags - The flags of get insight intent information. + * @returns { Promise<Array<InsightIntentInfo>> } Returns the insight intent information. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 16000050 - Internal error. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + function getAllInsightIntentInfo(intentFlags: number): Promise<Array<InsightIntentInfo>>; + + /** + * Get insight intent information by bundle name. + * + * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED + * @param { string } bundleName - The specified bundle name. + * @param { number } intentFlags - The flags of get insight intent information. + * @returns { Promise<Array<InsightIntentInfo>> } Returns the insight intent information. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 16000050 - Internal error. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + function getInsightIntentInfoByBundleName(bundleName: string, intentFlags: number): Promise<Array<InsightIntentInfo>>; + + /** + * Get insight intent information by intent name. + * + * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED + * @param { string } bundleName - The specified bundle name. + * @param { string } moduleName - The specified module name. + * @param { string } intentName - The specified intent name. + * @param { number } intentFlags - The flags of get insight intent information. + * @returns { Promise<InsightIntentInfo> } Returns the insight intent information. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 16000050 - Internal error. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + function getInsightIntentInfoByIntentName(bundleName: string, moduleName: string, intentName: string, intentFlags: number): Promise<InsightIntentInfo>; } export default insightIntentDriver; diff --git a/api/@ohos.app.ability.kioskManager.d.ts b/api/@ohos.app.ability.kioskManager.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..08400cac31858cc6776d5d7bf21d28d42a0b82ec --- /dev/null +++ b/api/@ohos.app.ability.kioskManager.d.ts @@ -0,0 +1,112 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit AbilityKit + */ + +import UIAbilityContext from './application/UIAbilityContext'; +import { KioskStatus as _KioskStatus } from './application/KioskStatus'; + +/** + * The class of kiosk manager. + * + * @namespace kioskManager + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + * @arkts 1.1&1.2 + */ +declare namespace kioskManager { + /** + * Update Kiosk application list, only application in allow list can enter kiosk mode. + * + * @permission ohos.permission.MANAGE_EDM_POLICY + * @param { Array<string> } appList - Indicates the application list that can enter kiosk mode. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + * @arkts 1.1&1.2 + */ + function updateKioskAppList(appList: Array<string>): Promise<void>; + + /** + * Enter kiosk mode. + * + * @param { UIAbilityContext } context - The context that initiates to enter kiosk mode. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000110 - Current application is not in kiosk app list, can not enter kiosk mode. + * @throws { BusinessError } 16000111 - System is already in kiosk mode, can not enter again. + * @throws { BusinessError } 16000113 - Current ability is not in foreground. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + * @arkts 1.1&1.2 + */ + function enterKioskMode(context: UIAbilityContext): Promise<void>; + + /** + * Exit kiosk mode. + * + * @param { UIAbilityContext } context - The context that initiates to exit kiosk mode. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000110 - Current application is not in kiosk app list, can not exit kiosk mode. + * @throws { BusinessError } 16000112 - Current application is not in kiosk mode, can not exit. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + * @arkts 1.1&1.2 + */ + function exitKioskMode(context: UIAbilityContext): Promise<void>; + + /** + * Get current kiosk status. + * + * @returns { Promise<KioskStatus> } Current kiosk status. + * @throws { BusinessError } 202 - Not system application. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + * @arkts 1.1&1.2 + */ + function getKioskStatus(): Promise<KioskStatus>; + + /** + * The kiosk status data. + * + * @typedef { _KioskStatus } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + * @arkts 1.1&1.2 + */ + export type KioskStatus = _KioskStatus; +} + +export default kioskManager; diff --git a/api/@ohos.app.ability.quickFixManager.d.ts b/api/@ohos.app.ability.quickFixManager.d.ts index f7651669a906c4d52c6c3c95bd173fb9bbbfa29a..99f73be5ae201716f72688906f17422d2032a847 100644 --- a/api/@ohos.app.ability.quickFixManager.d.ts +++ b/api/@ohos.app.ability.quickFixManager.d.ts @@ -159,7 +159,7 @@ declare namespace quickFixManager { * @throws { BusinessError } 202 - Not system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 18500002 - The specified quick fix is invalid. It may not exist or inaccessible. + * @throws { BusinessError } 18500002 - Invalid patch package. * @throws { BusinessError } 18500008 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.QuickFix * @systemapi @@ -178,7 +178,7 @@ declare namespace quickFixManager { * @throws { BusinessError } 202 - Not system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 18500002 - The specified quick fix is invalid. It may not exist or inaccessible. + * @throws { BusinessError } 18500002 - Invalid patch package. * @throws { BusinessError } 18500008 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.QuickFix * @systemapi diff --git a/api/@ohos.app.ability.sendableContextManager.d.ets b/api/@ohos.app.ability.sendableContextManager.d.ets index a032ee1e24d95802e9efe54b7a49f7c0d8b2d615..a02ec5f228d3de34a08e40a6cd129b48c78dcc40 100644 --- a/api/@ohos.app.ability.sendableContextManager.d.ets +++ b/api/@ohos.app.ability.sendableContextManager.d.ets @@ -112,6 +112,20 @@ declare namespace sendableContextManager { * @since 12 */ function convertToUIAbilityContext(sendableContext: SendableContext): common.UIAbilityContext; + + /** + * Enable/disable multi-threaded communication capability for the EventHub widthin the specified context. + * After it is enabled, eventHub emit data is transmitted through serialization, + * the data at the sender and receiver are independent. + * + * @param { common.Context } context - the context where multi-threading eventHub should be enabled. + * @param { boolean } enabled - the value true means to enable it, and the value false means to disable it. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @atomicservice + * @since 20 + */ + function setEventHubMultithreadingEnabled(context: common.Context, enabled: boolean): void; } export default sendableContextManager; diff --git a/api/@ohos.app.ability.wantAgent.d.ts b/api/@ohos.app.ability.wantAgent.d.ts index f59df2d72aeaea84003cb02e23b85629a7ef65b2..75cace35f55af84ef33c4dd8a488c022810ae9ed 100644 --- a/api/@ohos.app.ability.wantAgent.d.ts +++ b/api/@ohos.app.ability.wantAgent.d.ts @@ -22,18 +22,25 @@ import { AsyncCallback, Callback } from './@ohos.base'; import Want from './@ohos.app.ability.Want'; import { WantAgentInfo as _WantAgentInfo } from './wantAgent/wantAgentInfo'; import { TriggerInfo as _TriggerInfo } from './wantAgent/triggerInfo'; +import Context from './application/Context'; /** * Provide the method obtain trigger, cancel, and compare and to obtain - * the bundle name, UID of an {@link WantAgent} object. + * the bundle name, UID of an WantAgent object. * * @namespace wantAgent * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** - * Provide the method obtain trigger, cancel, and compare and to obtain - * the bundle name, UID of an {@link WantAgent} object. + * app.ability.WantAgent is a class that encapsulates a {@link Want} object and allows the application to execute the + * Want at a future time point. The module provides APIs for creating and comparing WantAgent objects, and obtaining + * the user ID and bundle name of a WantAgent object. + * + * A typical use scenario of WantAgent is notification processing. For example, when a user touches a notification, + * the {@link trigger} API of WantAgent is triggered and the target application is started. For details, see + * {@link Notification}. You are advised to use this module, since it will replace the @ohos.wantAgent module + * in the near future. * * @namespace wantAgent * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -48,20 +55,21 @@ declare namespace wantAgent { * @param { AsyncCallback<string> } callback - The callback is used to return the bundle name. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16000007 - Service busy, there are concurrent tasks, waiting for retry. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** - * Obtains the bundle name of a WantAgent. + * Obtains the bundle name of a WantAgent object. + * This API uses an asynchronous callback to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @param { AsyncCallback<string> } callback - The callback is used to return the bundle name. + * @param { WantAgent } agent - Target WantAgent object. + * @param { AsyncCallback<string> } callback - Callback used to return the bundle name. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -75,20 +83,21 @@ declare namespace wantAgent { * @returns { Promise<string> } Returns the bundle name. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16000007 - Service busy, there are concurrent tasks, waiting for retry. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** - * Obtains the bundle name of a WantAgent. + * Obtains the bundle name of a WantAgent object. + * This API uses a promise to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @returns { Promise<string> } Returns the bundle name. + * @param { WantAgent } agent - Target WantAgent object. + * @returns { Promise<string> } Promise used to return the bundle name. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -102,20 +111,21 @@ declare namespace wantAgent { * @param { AsyncCallback<number> } callback - The callback is used to return the UID. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16000007 - Service busy, there are concurrent tasks, waiting for retry. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** - * Obtains the UID of a WantAgent. + * Obtains the user ID of a WantAgent object. + * This API uses an asynchronous callback to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @param { AsyncCallback<number> } callback - The callback is used to return the UID. + * @param { WantAgent } agent - Target WantAgent object. + * @param { AsyncCallback<number> } callback - Callback used to return the user ID. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -129,20 +139,21 @@ declare namespace wantAgent { * @returns { Promise<number> } Returns the UID. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16000007 - Service busy, there are concurrent tasks, waiting for retry. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** - * Obtains the UID of a WantAgent. + * Obtains the user ID of a WantAgent object. + * This API uses a promise to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @returns { Promise<number> } Returns the UID. + * @param { WantAgent } agent - Target WantAgent object. + * @returns { Promise<number> } Promise used to return the user ID. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -150,15 +161,16 @@ declare namespace wantAgent { function getUid(agent: WantAgent): Promise<number>; /** - * Obtains the {@link Want} of an {@link WantAgent}. + * Obtains the Want in a WantAgent object. + * This API uses an asynchronous callback to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @param { AsyncCallback<Want> } callback - The callback is used to return the Want. + * @param { WantAgent } agent - Target WantAgent object. + * @param { AsyncCallback<Want> } callback - Callback used to return the Want. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. * @throws { BusinessError } 16000015 - Service timeout. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @since 9 @@ -166,15 +178,16 @@ declare namespace wantAgent { function getWant(agent: WantAgent, callback: AsyncCallback<Want>): void; /** - * Obtains the {@link Want} of an {@link WantAgent}. + * Obtains the Want in a WantAgent object. + * This API uses a promise to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @returns { Promise<Want> } Returns the Want. + * @param { WantAgent } agent - Target WantAgent object. + * @returns { Promise<Want> } Promise used to return the Want. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. * @throws { BusinessError } 16000015 - Service timeout. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @since 9 @@ -188,20 +201,21 @@ declare namespace wantAgent { * @param { AsyncCallback<void> } callback - The callback of cancel. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16000007 - Service busy, there are concurrent tasks, waiting for retry. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** - * Cancel a WantAgent. Only the application that creates the WantAgent can cancel it. + * Cancels a WantAgent object. + * This API uses an asynchronous callback to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @param { AsyncCallback<void> } callback - The callback of cancel. + * @param { WantAgent } agent - Target WantAgent object. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -215,20 +229,21 @@ declare namespace wantAgent { * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16000007 - Service busy, there are concurrent tasks, waiting for retry. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** - * Cancel a WantAgent. Only the application that creates the WantAgent can cancel it. + * Cancels a WantAgent object. + * This API uses a promise to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @returns { Promise<void> } The promise returned by the function. + * @param { WantAgent } agent - Target WantAgent object. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -247,11 +262,12 @@ declare namespace wantAgent { * @since 9 */ /** - * Triggers a WantAgent. + * Proactively triggers a WantAgent object. + * This API uses an asynchronous callback to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @param { TriggerInfo } triggerInfo - Indicates the information required for triggering a WantAgent. - * @param { AsyncCallback<CompleteData> } [callback] - The callback is used to return the CompleteData. + * @param { WantAgent } agent - Target WantAgent object. + * @param { TriggerInfo } triggerInfo - {@link TriggerInfo} object. + * @param { AsyncCallback<CompleteData> } [callback] - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -260,6 +276,24 @@ declare namespace wantAgent { */ function trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: AsyncCallback<CompleteData>): void; + /** + * Asynchronously triggers a predefined operation encration encapsulated in a Wantagent with specified trigger information. + * + * @param { WantAgent } agent - Indicates the WantAgent. + * @param { TriggerInfo } triggerInfo - Indicates the information required for triggering a WantAgent. + * @param { Context } context - Indicates current context. + * @returns { Promise<CompleteData> } Returns the CompleteData. + * @throws { BusinessError } 202 - The application is not system-app, can not use system-api. + * @throws { BusinessError } 16000020 - The context is not ability context. + * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000153 - The Wantagent has been canceled. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi + * @stagemodelonly + * @since 20 + */ + function triggerAsync(agent: WantAgent, triggerInfo: TriggerInfo, context: Context): Promise<CompleteData>; + /** * Checks whether two WantAgent objects are equal. * @@ -272,11 +306,14 @@ declare namespace wantAgent { * @since 9 */ /** - * Checks whether two WantAgent objects are equal. + * Checks whether two WantAgent objects are equal, so as to determine whether the same operation is from the + * same application. + * This API uses an asynchronous callback to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @param { WantAgent } otherAgent - Indicates the other WantAgent. - * @param { AsyncCallback<boolean> } callback - Returns true if the two WantAgents are the same. + * @param { WantAgent } agent - The first WantAgent object. + * @param { WantAgent } otherAgent - The second WantAgent object. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. The value <code>true</code> means + * that the two WantAgent objects are equal, and <code>false</code> means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -297,11 +334,14 @@ declare namespace wantAgent { * @since 9 */ /** - * Checks whether two WantAgent objects are equal. + * Checks whether two WantAgent objects are equal, so as to determine whether the same operation is from the + * same application. + * This API uses a promise to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @param { WantAgent } otherAgent - Indicates the other WantAgent. - * @returns { Promise<boolean> } Returns true if the two WantAgents are the same. + * @param { WantAgent } agent - The first WantAgent object. + * @param { WantAgent } otherAgent - The second WantAgent object. + * @returns { Promise<boolean> } Promise used to return the result. The value <code>true</code> means that the two + * WantAgent objects are equal, and <code>false</code> means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -317,20 +357,26 @@ declare namespace wantAgent { * @param { AsyncCallback<WantAgent> } callback - The callback is used to return the created WantAgent. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16000007 - Service busy, there are concurrent tasks, waiting for retry. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** * Obtains a WantAgent object. + * This API uses an asynchronous callback to return the result. + * If the creation fails, a null WantAgent object is returned. + * + * <p>**NOTE**: + * <br>Third-party applications can set only their own abilities. + * </p> * * @param { WantAgentInfo } info - Information about the WantAgent object to obtain. - * @param { AsyncCallback<WantAgent> } callback - The callback is used to return the created WantAgent. + * @param { AsyncCallback<WantAgent> } callback - Callback used to return the WantAgent object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -344,20 +390,26 @@ declare namespace wantAgent { * @returns { Promise<WantAgent> } Returns the created WantAgent. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16000007 - Service busy, there are concurrent tasks, waiting for retry. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** * Obtains a WantAgent object. + * This API uses a promise to return the result. + * If the creation fails, a null WantAgent object is returned. * + * <p>**NOTE**: + * <br>Third-party applications can set only their own abilities. + * </p> + * * @param { WantAgentInfo } info - Information about the WantAgent object to obtain. - * @returns { Promise<WantAgent> } Returns the created WantAgent. + * @returns { Promise<WantAgent> } Promise used to return the WantAgent object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -365,28 +417,29 @@ declare namespace wantAgent { function getWantAgent(info: WantAgentInfo): Promise<WantAgent>; /** - * Obtains the {@link OperationType} of a {@link WantAgent}. + * Obtains the {@link OperationType} of a WantAgent. * * @param { WantAgent } agent - Indicates the WantAgent. * @param { AsyncCallback<number> } callback - The callback is used to return the OperationType of the WantAgent. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16000007 - Service busy, there are concurrent tasks, waiting for retry. + * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. * @throws { BusinessError } 16000015 - Service timeout. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** - * Obtains the {@link OperationType} of a {@link WantAgent}. + * Obtains the operation type of a WantAgent object. + * This API uses an asynchronous callback to return the result. * - * @param { WantAgent } agent - Indicates the WantAgent. - * @param { AsyncCallback<number> } callback - The callback is used to return the OperationType of the WantAgent. + * @param { WantAgent } agent - Target WantAgent object. + * @param { AsyncCallback<number> } callback - Callback used to return the operation type. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. * @throws { BusinessError } 16000015 - Service timeout. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -394,20 +447,21 @@ declare namespace wantAgent { function getOperationType(agent: WantAgent, callback: AsyncCallback<number>): void; /** - * Obtains the {@link OperationType} of a {@link WantAgent}. + * Obtains the {@link OperationType} of a WantAgent. * * @param { WantAgent } agent - Indicates the WantAgent. * @returns { Promise<number> } Returns the OperationType of the WantAgent. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 16000007 - Service busy, there are concurrent tasks, waiting for retry. + * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. * @throws { BusinessError } 16000015 - Service timeout. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @since 9 */ /** - * Obtains the {@link OperationType} of a {@link WantAgent}. + * Obtains the operation type of a WantAgent object. + * This API uses a promise to return the result. * * @param { WantAgent } agent - Indicates the WantAgent. * @returns { Promise<number> } Returns the OperationType of the WantAgent. @@ -415,7 +469,7 @@ declare namespace wantAgent { * 2. Incorrect parameter types. * @throws { BusinessError } 16000007 - Service busy. There are concurrent tasks. Try again later. * @throws { BusinessError } 16000015 - Service timeout. - * @throws { BusinessError } 16000151 - Invalid wantagent object. + * @throws { BusinessError } 16000151 - Invalid wantAgent object. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice * @since 12 @@ -423,9 +477,10 @@ declare namespace wantAgent { function getOperationType(agent: WantAgent): Promise<number>; /** - * Set the wantagent within the process to support multithreading. + * Enables or disables the WantAgent multithreading feature. * - * @param { boolean } isMultithreadingSupported - Indicates the WantAgent support multithreading or not. + * @param { boolean } isMultithreadingSupported - Whether to enable the multithreading feature. The value + * <code>true</code> means to enable multithreading, and <code>false</code> means the opposite. * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -444,7 +499,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Enumerates flags for using a WantAgent. + * Enumerates the flags used by the WantAgent objects. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -460,8 +515,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Indicates that the WantAgent can be used only once. - * This flag is valid only when OperationType is set to START_ABILITY, START_SERVICE, or SEND_COMMON_EVENT. + * The WantAgent object can be used only once. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -477,8 +531,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Indicates that null is returned if the WantAgent does not exist. - * This flag is valid only when OperationType is set to START_ABILITY, START_SERVICE, or SEND_COMMON_EVENT. + * The WantAgent object does not exist and hence it is not created. In this case, <code>null</code> is returned. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -494,8 +547,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Indicates that the existing WantAgent should be canceled before a new object is generated. - * This flag is valid only when OperationType is set to START_ABILITY, START_SERVICE, or SEND_COMMON_EVENT. + * The existing WantAgent object should be canceled before a new object is generated. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -511,8 +563,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Indicates that the system only replaces the extra data of the existing WantAgent with that of the new object. - * This flag is valid only when OperationType is set to START_ABILITY, START_SERVICE, or SEND_COMMON_EVENT. + * Extra information of the existing WantAgent object is replaced with that of the new object. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -527,7 +578,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Indicates that the created WantAgent should be immutable. + * The WantAgent object is immutable. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -542,7 +593,12 @@ declare namespace wantAgent { * @since 9 */ /** - * Indicates that the current value of element can be replaced when the WantAgent is triggered. + * The element property in the current Want can be replaced by the element property in the Want passed in + * WantAgent.trigger(). + * + * <p>**NOTE**: + * <br>This processing is not supported yet. + * </p> * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -557,7 +613,12 @@ declare namespace wantAgent { * @since 9 */ /** - * Indicates that the current value of action can be replaced when the WantAgent is triggered. + * The action property in the current Want can be replaced by the action property in the Want passed in + * WantAgent.trigger(). + * + * <p>**NOTE**: + * <br>This processing is not supported yet. + * </p> * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -572,7 +633,12 @@ declare namespace wantAgent { * @since 9 */ /** - * Indicates that the current value of uri can be replaced when the WantAgent is triggered. + * The uri property in the current Want can be replaced by the uri property in the Want passed in + * WantAgent.trigger(). + * + * <p>**NOTE**: + * <br>This processing is not supported yet. + * </p> * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -587,7 +653,12 @@ declare namespace wantAgent { * @since 9 */ /** - * Indicates that the current value of entities can be replaced when the WantAgent is triggered. + * The <code>entities</code> property in the current Want can be replaced by the <code>entities</code> property in + * the Want passed in WantAgent.trigger(). + * + * <p>**NOTE**: + * <br>This processing is not supported yet. + * </p> * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -602,7 +673,12 @@ declare namespace wantAgent { * @since 9 */ /** - * Indicates that the current value of packageName can be replaced when the WantAgent is triggered. + * The <code>bundleName</code> property in the current Want can be replaced by the <code>bundleName</code> property + * in the Want passed in WantAgent.trigger(). + * + * <p>**NOTE**: + * <br>This processing is not supported yet. + * </p> * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -619,7 +695,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Identifies the operation for using a WantAgent, such as starting an ability or sending a common event. + * Enumerates the operation types of the WantAgent objects. * * @enum { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -634,7 +710,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Unknown operation. + * Unknown operation type. * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -679,7 +755,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Starts an ability without a UI. + * Starts an ability without a UI (valid only in the FA model). * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice @@ -721,7 +797,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Describes the data returned by after wantAgent.trigger is called. + * Describes the data returned by the operation of proactive triggering a WantAgent object. * * @typedef CompleteData * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -737,7 +813,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Triggered WantAgent. + * WantAgent object that is triggered. * * @type { WantAgent } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -771,7 +847,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Request code used to trigger the WantAgent. + * Request code that triggers the WantAgent object. * * @type { number } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -812,7 +888,7 @@ declare namespace wantAgent { * @since 11 */ /** - * Extra data collected by the common event. + * Extra information. * * @type { ?Record<string, Object> } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -830,7 +906,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Provides the information required for triggering a WantAgent. + * Defines the TriggerInfo object. * * @typedef { _TriggerInfo } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -847,7 +923,7 @@ declare namespace wantAgent { * @since 9 */ /** - * Provides the information required for triggering a WantAgent. + * Defines the WantAgentInfo object. * * @typedef { _WantAgentInfo } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -858,7 +934,7 @@ declare namespace wantAgent { } /** - * WantAgent object. + * Target WantAgent object. * * @typedef { object } * @syscap SystemCapability.Ability.AbilityRuntime.Core diff --git a/api/@ohos.app.ability.wantConstant.d.ts b/api/@ohos.app.ability.wantConstant.d.ts index 85b131dc8479c9e8540c208158495a81cce26e14..93fd9775fb6c54b4b5d96f8df256c52ed85579f2 100644 --- a/api/@ohos.app.ability.wantConstant.d.ts +++ b/api/@ohos.app.ability.wantConstant.d.ts @@ -31,7 +31,8 @@ * @namespace wantConstant * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace wantConstant { /** @@ -344,6 +345,41 @@ declare namespace wantConstant { * @since 18 */ LAUNCH_REASON_MESSAGE = 'ohos.params.launchReasonMessage', + + /** + * Indicates the dest ability refers to a plugin ability. + * + * @syscap SystemCapability.Ability.AbilityBase + * @since 19 + */ + DESTINATION_PLUGIN_ABILITY = 'ohos.params.pluginAbility', + + /** + * Indicates the param of the appIdentifier trustlist when implicitly launching applications. + * + * @syscap SystemCapability.Ability.AbilityBase + * @atomicservice + * @since 17 + */ + APP_LAUNCH_TRUSTLIST = 'ohos.params.appLaunchTrustList', + + /** + * Indicates the unified data key used to share file uri. + * + * @syscap SystemCapability.Ability.AbilityBase + * @atomicservice + * @since 20 + */ + ABILITY_UNIFIED_DATA_KEY = 'ohos.param.ability.udKey', + + /** + * Indicates the key of the page route upon sharing atomic service. + * + * @syscap SystemCapability.Ability.AbilityBase + * @atomicservice + * @since 20 + */ + ATOMIC_SERVICE_SHARE_ROUTER = 'ohos.params.atomicservice.shareRouter', } /** @@ -359,7 +395,8 @@ declare namespace wantConstant { * @enum { number } * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum Flags { /** @@ -373,7 +410,8 @@ declare namespace wantConstant { * * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ FLAG_AUTH_READ_URI_PERMISSION = 0x00000001, @@ -388,7 +426,8 @@ declare namespace wantConstant { * * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ FLAG_AUTH_WRITE_URI_PERMISSION = 0x00000002, diff --git a/api/@ohos.app.appstartup.StartupConfigEntry.d.ts b/api/@ohos.app.appstartup.StartupConfigEntry.d.ts index 18817c665c1eca50229f5545a7bceda825cf7645..4dddbdd888c764c9d9d17bc6c2edeb3e8c9e5ec9 100644 --- a/api/@ohos.app.appstartup.StartupConfigEntry.d.ts +++ b/api/@ohos.app.appstartup.StartupConfigEntry.d.ts @@ -19,6 +19,7 @@ */ import StartupConfig from './@ohos.app.appstartup.StartupConfig'; +import Want from './@ohos.app.ability.Want'; /** * The configuration entry for running startup tasks. @@ -37,4 +38,18 @@ export default class StartupConfigEntry { * @since 12 */ onConfig?(): StartupConfig; + + /** + * Called when a custom match rule is requested. + * The custom match rule returned will be matched against the match rules defined in the appStartup profile. + * If any of the specified tasks meets the custom match rule, that task will be initiated; + * otherwise, the default automatic startup tasks will be initiated. + * + * @param { Want } want Want information of the started ability. + * @returns { string } Custom match rule + * @syscap SystemCapability.Ability.AppStartup + * @stagemodelonly + * @since 20 + */ + onRequestCustomMatchRule(want: Want): string; } diff --git a/api/@ohos.app.appstartup.startupManager.d.ts b/api/@ohos.app.appstartup.startupManager.d.ts index 0be0f7925294acf0b070282c5ba715c6f0ac4b61..b9c1cb72b632e542183d293ce5245c9f3293436b 100644 --- a/api/@ohos.app.appstartup.startupManager.d.ts +++ b/api/@ohos.app.appstartup.startupManager.d.ts @@ -19,6 +19,7 @@ */ import StartupConfig from './@ohos.app.appstartup.StartupConfig'; +import common from './@ohos.app.ability.common'; /** * Startup task manager. @@ -49,6 +50,24 @@ declare namespace startupManager { */ function run(startupTasks: Array<string>, config?: StartupConfig): Promise<void>; + /** + * Runs the startup tasks with the specified ability stage context. + * + * @param { Array<string> } startupTasks - Indicates all tasks ready to run. + * @param { common.AbilityStageContext } context - Indicates the ability stage context, which is used to initialize the startup tasks. + * @param { StartupConfig } config - Indicates the configuration of startup tasks. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 28800001 - Startup task or its dependency not found. + * @throws { BusinessError } 28800002 - The startup tasks have circular dependencies. + * @throws { BusinessError } 28800003 - An error occurred while running the startup tasks. + * @throws { BusinessError } 28800004 - Running startup tasks timeout. + * @syscap SystemCapability.Ability.AppStartup + * @stagemodelonly + * @since 20 + */ + function run(startupTasks: Array<string>, context: common.AbilityStageContext, config: StartupConfig): Promise<void>; + /** * Removes all startup tasks result. * diff --git a/api/@ohos.app.form.FormExtensionAbility.d.ts b/api/@ohos.app.form.FormExtensionAbility.d.ts index f6f37905b4d3654fa99a569699debdfd0ff4e1f9..95b36e7cd43dd4be1cc1ec95e69b5a5742279f49 100644 --- a/api/@ohos.app.form.FormExtensionAbility.d.ts +++ b/api/@ohos.app.form.FormExtensionAbility.d.ts @@ -316,4 +316,16 @@ export default class FormExtensionAbility { * @since 12 */ onStop?(): void; + + /** + * Called to notify the form provider that the form location of the form has been changed. Override this method if + * you want to know the form location be Changed + * + * @param { string } formId - Indicates the ID of the form. + * @param { formInfo.FormLocation } newLocation - Indicates the new form location of the form. + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @since 20 + */ + onFormLocationChanged(formId: string, newLocation: formInfo.FormLocation): void; } diff --git a/api/@ohos.app.form.LiveFormExtensionAbility.d.ts b/api/@ohos.app.form.LiveFormExtensionAbility.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..88ad4daeaac08d994b22cb9c941b8fd20f32eb62 --- /dev/null +++ b/api/@ohos.app.form.LiveFormExtensionAbility.d.ts @@ -0,0 +1,112 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit FormKit + */ + +import ExtensionAbility from './@ohos.app.ability.ExtensionAbility'; +import LiveFormExtensionContext from './application/LiveFormExtensionContext'; +import type UIExtensionContentSession from './@ohos.app.ability.UIExtensionContentSession'; +import formInfo from './@ohos.app.form.formInfo'; + +/** + * Provides information about a live form. + * @typedef { LiveFormInfo } + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @atomicservice + * @since 20 + */ +export interface LiveFormInfo { + /** + * The form id. + * + * @type { string } + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @atomicservice + * @since 20 + */ + formId: string; + + /** + * The live form display area. + * + * @type { formInfo.Rect } + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @atomicservice + * @since 20 + */ + rect: formInfo.Rect; + + /** + * The form border radius. + * + * @type { number } + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @atomicservice + * @since 20 + */ + borderRadius: number; +} + +/** + * The class of live form extension ability. + * + * @extends ExtensionAbility + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @atomicservice + * @since 20 + */ +export default class LiveFormExtensionAbility extends ExtensionAbility { + /** + * Indicates configuration information about a live form extension ability context. + * + * @type { LiveFormExtensionContext } + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @atomicservice + * @since 20 + */ + context: LiveFormExtensionContext; + + /** + * Called back when a live form extension is started for initialization. + * + * @param { LiveFormInfo } liveFormInfo - Indicates the live form info. + * @param { UIExtensionContentSession } session - Indicates the session of the UI extension page. + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @atomicservice + * @since 20 + */ + onLiveFormCreate(liveFormInfo: LiveFormInfo, session: UIExtensionContentSession): void; + + /** + * Called back when a live form extension is destroyed. + * + * @param { LiveFormInfo } liveFormInfo - Indicates the live form info. + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @atomicservice + * @since 20 + */ + onLiveFormDestroy(liveFormInfo: LiveFormInfo): void; +} \ No newline at end of file diff --git a/api/@ohos.app.form.formBindingData.d.ts b/api/@ohos.app.form.formBindingData.d.ts index d7b279e54b111317718e6707fda1e6fe50ee6f53..3cdd10aaac65dc01c36e412f979adbf9212d8771 100644 --- a/api/@ohos.app.form.formBindingData.d.ts +++ b/api/@ohos.app.form.formBindingData.d.ts @@ -18,7 +18,9 @@ * @kit FormKit */ +/*** if arkts 1.1 */ import { BusinessError } from './@ohos.base'; +/*** endif */ /** * Interface of formBindingData. @@ -33,7 +35,8 @@ import { BusinessError } from './@ohos.base'; * @namespace formBindingData * @syscap SystemCapability.Ability.Form * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace formBindingData { /** @@ -55,7 +58,8 @@ declare namespace formBindingData { * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @syscap SystemCapability.Ability.Form * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function createFormBindingData(obj?: Object | string): FormBindingData; @@ -72,7 +76,8 @@ declare namespace formBindingData { * @typedef FormBindingData * @syscap SystemCapability.Ability.Form * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface FormBindingData { /** diff --git a/api/@ohos.app.form.formHost.d.ts b/api/@ohos.app.form.formHost.d.ts index 6911d97e5cbfb5d018ac7a167e1c09fb91348e7a..cb7a9402a3de617a456a10315fbae2ee9f30e7bf 100644 --- a/api/@ohos.app.form.formHost.d.ts +++ b/api/@ohos.app.form.formHost.d.ts @@ -724,6 +724,70 @@ declare namespace formHost { */ function off(type: 'formUninstall', callback?: Callback<string>): void; + /** + * Listens to the event of form's overflow. + * <p>You can use this method to listen to the event of form's overflow.</p> + * + * @param { 'formOverflow' } type - Indicates event type. + * @param { Callback<formInfo.OverflowRequest> } callback - The callback of formOverflow. + * @throws { BusinessError } 202 - The application is not a system application. + * @throws { BusinessError } 801 - Capability not supported.function formOverflow can not work correctly + * due to limited device capabilities. + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + function on(type: 'formOverflow', callback: Callback<formInfo.OverflowRequest>): void; + + /** + * Cancels listening to the event of form's overflow. + * <p>You can use this method to cancel listening to the event of form's overflow.</p> + * + * @param { 'formOverflow' } type - Indicates event type. + * @param { Callback<formInfo.OverflowRequest> } callback - The callback of formOverflow. + * @throws { BusinessError } 202 - The application is not a system application. + * @throws { BusinessError } 801 - Capability not supported.function formOverflow can not work correctly + * due to limited device capabilities. + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + function off(type: 'formOverflow', callback?: Callback<formInfo.OverflowRequest>): void; + + /** + * Listens to the event of change scene animation state. + * <p>You can use this method to listen to the event of change scene animation state.</p> + * + * @param { 'changeSceneAnimationState' } type - Indicates event type. + * @param { Callback<formInfo.ChangeSceneAnimationStateRequest> } callback - The callback of + * change scene animation state. + * @throws { BusinessError } 202 - The application is not a system application. + * @throws { BusinessError } 801 - Capability not supported.function changeSceneAnimationState can not work correctly + * due to limited device capabilities. + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + function on(type: 'changeSceneAnimationState', + callback: Callback<formInfo.ChangeSceneAnimationStateRequest>): void; + + /** + * Cancels listening to the event of change scene animation state. + * <p>You can use this method to cancel listening to the event of change scene animation state.</p> + * + * @param { 'changeSceneAnimationState' } type - Indicates event type. + * @param { Callback<formInfo.ChangeSceneAnimationStateRequest> } callback - The callback of + * change scene animation state. + * @throws { BusinessError } 202 - The application is not a system application. + * @throws { BusinessError } 801 - Capability not supported.function changeSceneAnimationState can not work correctly + * due to limited device capabilities. + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + function off(type: 'changeSceneAnimationState', + callback?: Callback<formInfo.ChangeSceneAnimationStateRequest>): void; + /** * Notify form is Visible * <p>You can use this method to notify form visible state.</p> diff --git a/api/@ohos.app.form.formInfo.d.ts b/api/@ohos.app.form.formInfo.d.ts index 086eaf2a9e1dfb5b4bf1d7fb1b50c0cc48c59034..c6c6e9245bc506618b3bef00cfa9932114d7438f 100644 --- a/api/@ohos.app.form.formInfo.d.ts +++ b/api/@ohos.app.form.formInfo.d.ts @@ -222,6 +222,7 @@ declare namespace formInfo { * @syscap SystemCapability.Ability.Form * @atomicservice * @since 11 + * @deprecated since 20 */ colorMode: ColorMode; @@ -449,6 +450,28 @@ declare namespace formInfo { * @since 18 */ readonly enableBlurBackground?: boolean; + + /** + * Indicates the fun interaction form params + * + * @type { ?FunInteractionParams } + * @readonly + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + readonly funInteractionParams?: FunInteractionParams; + + /** + * Indicates the scene animation form params + * + * @type { ?SceneAnimationParams } + * @readonly + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + readonly sceneAnimationParams?: SceneAnimationParams; } /** @@ -512,6 +535,7 @@ declare namespace formInfo { * @syscap SystemCapability.Ability.Form * @atomicservice * @since 11 + * @deprecated since 20 */ enum ColorMode { /** @@ -1808,7 +1832,6 @@ declare namespace formInfo { * * @enum { number } * @syscap SystemCapability.Ability.Form - * @systemapi * @since 12 */ enum FormLocation { @@ -1825,7 +1848,6 @@ declare namespace formInfo { * Form is on the desktop * * @syscap SystemCapability.Ability.Form - * @systemapi * @since 12 */ DESKTOP = 0, @@ -1834,7 +1856,6 @@ declare namespace formInfo { * Form is on the form center. * * @syscap SystemCapability.Ability.Form - * @systemapi * @since 12 */ FORM_CENTER = 1, @@ -1843,7 +1864,6 @@ declare namespace formInfo { * Form is on the form manager. * * @syscap SystemCapability.Ability.Form - * @systemapi * @since 12 */ FORM_MANAGER = 2, @@ -1852,7 +1872,6 @@ declare namespace formInfo { * Form is on the negative screen. * * @syscap SystemCapability.Ability.Form - * @systemapi * @since 12 */ NEGATIVE_SCREEN = 3, @@ -1879,7 +1898,6 @@ declare namespace formInfo { * Form is on the screen lock. * * @syscap SystemCapability.Ability.Form - * @systemapi * @since 12 */ SCREEN_LOCK = 6, @@ -1888,10 +1906,231 @@ declare namespace formInfo { * Form is on the ai suggestion. * * @syscap SystemCapability.Ability.Form - * @systemapi * @since 12 */ AI_SUGGESTION = 7, } + + /** + * Provides OverflowInfo about funInteraction or sceneAniamtion form + * + * @typedef { OverflowInfo } + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + interface OverflowInfo { + /** + * The overflow animation area + * + * @type { Rect } + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + area: Rect; + + /** + * The overflow animation duration + * + * @type { number } + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + duration: number; + } + + /** + * Provides OverflowRequest about request/cancel form's overflow + * + * @typedef { OverflowRequest } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + interface OverflowRequest { + /** + * The form id about request/cancel overflow animation + * + * @type { string } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + formId: string; + + /** + * Whether the form request or cancel overflow animation + * + * @type { boolean } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + isOverflow: boolean; + + /** + * The form's overflow animation paramter + * + * @type { ?OverflowInfo } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + overflowInfo?: OverflowInfo; + } + + /** + * ChangeSceneAnimationStateRequest + * + * @typedef { ChangeSceneAnimationStateRequest } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + interface ChangeSceneAnimationStateRequest { + /** + * The form id about request change scene animation state + * + * @type { string } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + formId: string; + + /** + * The state of scene animation. + * + * @type { number } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + state: number; + } + + /** + * Indicates rectangle + * + * @typedef { Rect } + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + interface Rect { + /** + * The left position of rect + * + * @type { number } + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + left: number; + + /** + * The top position of rect + * + * @type { number } + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + top: number; + + /** + * The width of rect + * + * @type { number } + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + width: number; + + /** + * The height of rect + * + * @type { number } + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + height: number; + } + + /** + * The fun interaction form params. + * + * @typedef { FunInteractionParams } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + interface FunInteractionParams { + /** + * The ability name of the fun interaction form. + * + * @type { ?string } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + abilityName?: string; + + /** + * The bundle name used by game engine. + * + * @type { string } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + targetBundleName: string; + + /** + * The sub bundle name used by game engine. + * + * @type { string } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + subBundleName: string; + + /** + * The duration of the fun interaction form will be paused if not operate, default is 10s + * + * @type { ?number } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + keepStateDuration? :number; + } + + /** + * The scene animation form params. + * + * @typedef { SceneAnimationParams } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + interface SceneAnimationParams { + /** + * Ability name of the scene animation form. + * + * @type { string } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + abilityName: string; + + /** + * Indicates disabled desktop behaviors, only takes effect for system app. + * + * @type { ?string } + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + disabledDesktopBehaviors?: string; + } } export default formInfo; diff --git a/api/@ohos.app.form.formProvider.d.ts b/api/@ohos.app.form.formProvider.d.ts index 061ec9d9763e6d2da657ac0fc9addbd1944ba071..a16552f68f931d1815d40363af6083d45cf946d8 100644 --- a/api/@ohos.app.form.formProvider.d.ts +++ b/api/@ohos.app.form.formProvider.d.ts @@ -381,8 +381,6 @@ declare namespace formProvider { * * @param { string } formId - Indicates the form ID. * @returns { Promise<formInfo.FormInfo> } Returns the formInfo. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 16500050 - IPC connection error. * @throws { BusinessError } 16500100 - Failed to obtain the configuration information. * @throws { BusinessError } 16501000 - An internal functional error occurred. @@ -411,8 +409,6 @@ declare namespace formProvider { * Client to communication with FormManagerService. * * @param { Want } want - The want of the form to open. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 16500050 - IPC connection error. * @throws { BusinessError } 16500100 - Failed to obtain the configuration information. * @throws { BusinessError } 16501000 - An internal functional error occurred. @@ -422,6 +418,22 @@ declare namespace formProvider { */ function openFormManager(want: Want): void; + /** + * Open the view of forms belonging to the specified bundle. + * Client to communication with FormManagerService. + * + * @permission ohos.permission.PUBLISH_FORM_CROSS_BUNDLE + * @param { Want } want - The want of the form to open. + * @throws { BusinessError } 201 - Permissions denied. + * @throws { BusinessError } 202 - The application is not a system application. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16500050 - IPC connection error. + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + function openFormManagerCrossBundle(want: Want): void + /** * Open the form edit ability * @@ -439,5 +451,109 @@ declare namespace formProvider { * @since 18 */ function openFormEditAbility(abilityName: string, formId: string, isMainPage?: boolean): void; + + /** + * Activate scene animation + * + * @param { string } formId - Indicates the edit form ID. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 202 - The application is not a system application. + * @throws { BusinessError } 801 - Capability not supported.function activateSceneAnimation + * can not work correctly due to limited device capabilities. + * @throws { BusinessError } 16500050 - IPC connection error. + * @throws { BusinessError } 16500060 - Service connection error. + * @throws { BusinessError } 16500100 - Failed to obtain the configuration information. + * @throws { BusinessError } 16501000 - An internal functional error occurred. + * @throws { BusinessError } 16501001 - The ID of the form to be operated does not exist. + * @throws { BusinessError } 16501003 - The form can not be operated by the current application. + * @throws { BusinessError } 16501011 - The form can not support this operation, please check your fom_config's + * sceneAnimationParams configuration infomation is correct or not. + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + function activateSceneAnimation(formId: string): Promise<void>; + + /** + * Deactivate scene animation + * + * @param { string } formId - Indicates the edit form ID. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 202 - The application is not a system application. + * @throws { BusinessError } 801 - Capability not supported.function deactivateSceneAnimation can + * not work correctly due to limited device capabilities. + * @throws { BusinessError } 16500050 - IPC connection error. + * @throws { BusinessError } 16500060 - Service connection error. + * @throws { BusinessError } 16500100 - Failed to obtain the configuration information. + * @throws { BusinessError } 16501000 - An internal functional error occurred. + * @throws { BusinessError } 16501001 - The ID of the form to be operated does not exist. + * @throws { BusinessError } 16501003 - The form can not be operated by the current application. + * @throws { BusinessError } 16501011 - The form can not support this operation, please check your fom_config's + * sceneAnimationParams configuration infomation is correct or not. + * @syscap SystemCapability.Ability.Form + * @systemapi + * @since 20 + */ + function deactivateSceneAnimation(formId: string): Promise<void>; + + /** + * Request form's overflow animation + * + * @param { string } formId - Indicates the edit form ID. + * @param { formInfo.OverflowInfo } overflowInfo - Indicates the overflow information. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 801 - Capability not supported.function requestOverflow can + * not work correctly due to limited device capabilities. + * @throws { BusinessError } 16500050 - IPC connection error. + * @throws { BusinessError } 16500060 - Service connection error. + * @throws { BusinessError } 16500100 - Failed to obtain the configuration information. + * @throws { BusinessError } 16501000 - An internal functional error occurred. + * @throws { BusinessError } 16501001 - The ID of the form to be operated does not exist. + * @throws { BusinessError } 16501003 - The form can not be operated by the current application. + * @throws { BusinessError } 16501011 - The form can not support this operation, please check your fom_config's + * sceneAnimationParams configuration infomation is correct or not. + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + function requestOverflow(formId: string, overflowInfo: formInfo.OverflowInfo): Promise<void>; + + /** + * Cancel form's overflow animation + * + * @param { string } formId - Indicates the edit form ID. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 801 - Capability not supported.function cancelOverflow can + * not work correctly due to limited device capabilities. + * @throws { BusinessError } 16500050 - IPC connection error. + * @throws { BusinessError } 16500060 - Service connection error. + * @throws { BusinessError } 16500100 - Failed to obtain the configuration information. + * @throws { BusinessError } 16501000 - An internal functional error occurred. + * @throws { BusinessError } 16501001 - The ID of the form to be operated does not exist. + * @throws { BusinessError } 16501003 - The form can not be operated by the current application. + * @throws { BusinessError } 16501011 - The form can not support this operation, please check your fom_config's + * sceneAnimationParams configuration infomation is correct or not. + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + function cancelOverflow(formId: string): Promise<void>; + + /** + * Get form rect belonging to current bundle + * + * @param { string } formId + * + * @returns { Promise<formInfo.Rect> } + * @throws { BusinessError } 801 - Capability not supported.function getFormRect can not work correctly + * due to limited device capabilities. + * @throws { BusinessError } 16500050 - IPC connection error. + * @throws { BusinessError } 16500060 - Service connection error. + * @throws { BusinessError } 16500100 - Failed to obtain the configuration information. + * @throws { BusinessError } 16501000 - An internal functional error occurred. + * @throws { BusinessError } 16501001 - The ID of the form to be operated does not exist. + * @throws { BusinessError } 16501003 - The form cannot be operated by the current application. + * @syscap SystemCapability.Ability.Form + * @since 20 + */ + function getFormRect(formId: string): Promise<formInfo.Rect>; } export default formProvider; diff --git a/api/@ohos.application.AccessibilityExtensionAbility.d.ts b/api/@ohos.application.AccessibilityExtensionAbility.d.ts index a16205e2e597bf9d86044dfd45a6a8ed6e85c172..bb65f013b3a512b56c8393ffbdbea3d2521a49f8 100644 --- a/api/@ohos.application.AccessibilityExtensionAbility.d.ts +++ b/api/@ohos.application.AccessibilityExtensionAbility.d.ts @@ -214,6 +214,15 @@ declare interface AccessibilityEvent { * @since 12 */ textAnnouncedForAccessibility?: string; + + /** + * The content of add/remove accessibility extraInfo text. + * + * @type { ?string } + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @since 20 + */ + extraInfo?: string; } /** diff --git a/api/@ohos.application.BackupExtensionAbility.d.ts b/api/@ohos.application.BackupExtensionAbility.d.ts index dc96d9865d9fc6ee0d25b8324fdf1a4239f03394..7c6c93c3f7d37844ac8c87fd1d02b085582a7648 100644 --- a/api/@ohos.application.BackupExtensionAbility.d.ts +++ b/api/@ohos.application.BackupExtensionAbility.d.ts @@ -18,7 +18,9 @@ * @kit CoreFileKit */ +/*** if arkts 1.1 */ import type BackupExtensionContext from './@ohos.file.BackupExtensionContext'; +/*** endif */ /** * Describe bundle version @@ -26,7 +28,8 @@ import type BackupExtensionContext from './@ohos.file.BackupExtensionContext'; * @interface BundleVersion * @syscap SystemCapability.FileManagement.StorageService.Backup * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface BundleVersion { /** @@ -35,7 +38,8 @@ export interface BundleVersion { * @type { number } * @syscap SystemCapability.FileManagement.StorageService.Backup * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ code: number; @@ -45,7 +49,8 @@ export interface BundleVersion { * @type { string } * @syscap SystemCapability.FileManagement.StorageService.Backup * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ name: string; } @@ -55,9 +60,10 @@ export interface BundleVersion { * * @syscap SystemCapability.FileManagement.StorageService.Backup * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class BackupExtensionAbility { +declare class BackupExtensionAbility { /** * Indicates backup extension ability context. * @@ -82,7 +88,8 @@ export default class BackupExtensionAbility { * * @syscap SystemCapability.FileManagement.StorageService.Backup * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ onBackup(): void; @@ -107,7 +114,8 @@ export default class BackupExtensionAbility { * @param { BundleVersion } bundleVersion Bundle version to be restore. * @syscap SystemCapability.FileManagement.StorageService.Backup * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ onRestore(bundleVersion: BundleVersion): void; @@ -149,3 +157,5 @@ export default class BackupExtensionAbility { */ onProcess(): string; } + +export default BackupExtensionAbility; diff --git a/api/@ohos.application.DistributedExtensionAbility.d.ts b/api/@ohos.application.DistributedExtensionAbility.d.ts index 0ec7469f3a14a1aa210a112ee4ac6746302f4cd1..7abc5fb3e826a4aa00b11692fea465b2947faeca 100644 --- a/api/@ohos.application.DistributedExtensionAbility.d.ts +++ b/api/@ohos.application.DistributedExtensionAbility.d.ts @@ -27,7 +27,7 @@ import type DistributedExtensionContext from './@ohos.application.DistributedExt * * @syscap SystemCapability.DistributedSched.AppCollaboration * @stagemodelonly - * @since 18 + * @since 20 */ export default class DistributedExtensionAbility { @@ -38,7 +38,7 @@ export default class DistributedExtensionAbility { * @type { DistributedExtensionContext } * @syscap SystemCapability.DistributedSched.AppCollaboration * @stagemodelonly - * @since 18 + * @since 20 */ context: DistributedExtensionContext; @@ -48,7 +48,7 @@ export default class DistributedExtensionAbility { * @param { Want } want Indicates the want info of ability. * @syscap SystemCapability.DistributedSched.AppCollaboration * @stagemodelonly - * @since 18 + * @since 20 */ onCreate(want: Want): void; @@ -57,7 +57,7 @@ export default class DistributedExtensionAbility { * * @syscap SystemCapability.DistributedSched.AppCollaboration * @stagemodelonly - * @since 18 + * @since 20 */ onDestroy(): void; @@ -68,7 +68,7 @@ export default class DistributedExtensionAbility { * @returns { AbilityConstant.CollaborateResult } Return the result of onCollaborate. * @syscap SystemCapability.DistributedSched.AppCollaboration * @stagemodelonly - * @since 18 + * @since 20 */ onCollaborate(wantParam: Record<string, Object>): AbilityConstant.CollaborateResult; } diff --git a/api/@ohos.application.DistributedExtensionContext.d.ts b/api/@ohos.application.DistributedExtensionContext.d.ts index 17a0dde2503e1452f37ac10b67608ea6f9abb8e6..39fafcc2816cdb22e86b43f7d486627f2518066a 100644 --- a/api/@ohos.application.DistributedExtensionContext.d.ts +++ b/api/@ohos.application.DistributedExtensionContext.d.ts @@ -25,6 +25,6 @@ import type ExtensionContext from './application/ExtensionContext'; * @extends ExtensionContext * @syscap SystemCapability.DistributedSched.AppCollaboration * @stagemodelonly - * @since 18 + * @since 20 */ export default class DistributedExtensionContext extends ExtensionContext {} \ No newline at end of file diff --git a/api/@ohos.application.StaticSubscriberExtensionContext.d.ts b/api/@ohos.application.StaticSubscriberExtensionContext.d.ts index 40f5d151d2097883ec6e8d4886a4061a4167dd4a..ebb8029c2d275b3d773c8ede4209d7c07bcb20fd 100644 --- a/api/@ohos.application.StaticSubscriberExtensionContext.d.ts +++ b/api/@ohos.application.StaticSubscriberExtensionContext.d.ts @@ -46,7 +46,7 @@ export default class StaticSubscriberExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Params error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -56,7 +56,7 @@ export default class StaticSubscriberExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. * @throws { BusinessError } 16200001 - The caller has been released. - * @throws { BusinessError } 16300003 - The target application is not self application. + * @throws { BusinessError } 16300003 - The target application is not the current application. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @StageModelOnly @@ -78,7 +78,7 @@ export default class StaticSubscriberExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Params error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -88,7 +88,7 @@ export default class StaticSubscriberExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. * @throws { BusinessError } 16200001 - The caller has been released. - * @throws { BusinessError } 16300003 - The target application is not self application. + * @throws { BusinessError } 16300003 - The target application is not the current application. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @StageModelOnly diff --git a/api/@ohos.application.testRunner.d.ts b/api/@ohos.application.testRunner.d.ts index b8433177c09aed8379d48a09db89f75b6c47a9bd..ea86d1c15bdffb3c8d6cba4fe063a05a8d754121 100644 --- a/api/@ohos.application.testRunner.d.ts +++ b/api/@ohos.application.testRunner.d.ts @@ -33,9 +33,10 @@ * @interface TestRunner * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ -export interface TestRunner { +interface TestRunner { /** * Prepare the unit testing environment for running test cases. * @@ -47,7 +48,8 @@ export interface TestRunner { * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ onPrepare(): void; @@ -62,9 +64,13 @@ export interface TestRunner { * * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ onRun(): void; } +/*** if arkts 1.1 */ +export { TestRunner }; +/*** endif */ export default TestRunner; diff --git a/api/@ohos.application.uriPermissionManager.d.ts b/api/@ohos.application.uriPermissionManager.d.ts index 8ec43d996acfbcc99166403dd1545f777e91cbd1..c4114ab741e5031dafcf0b130e4e6b4b6d61cc2b 100644 --- a/api/@ohos.application.uriPermissionManager.d.ts +++ b/api/@ohos.application.uriPermissionManager.d.ts @@ -26,7 +26,8 @@ import type wantConstant from './@ohos.app.ability.wantConstant'; * * @namespace uriPermissionManager * @syscap SystemCapability.Ability.AbilityRuntime.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace uriPermissionManager { /** @@ -52,6 +53,31 @@ declare namespace uriPermissionManager { * @systemapi hide this for inner system use. * @since 10 */ + /** + * Grant URI to another application + * + * @permission ohos.permission.PROXY_AUTHORIZATION_URI + * @param { string } uri - File URI. + * @param { wantConstant.Flags } flag - wantConstant.Flags.FLAG_AUTH_READ_URI_PERMISSION, + * wantConstant.Flags.FLAG_AUTH_WRITE_URI_PERMISSION or + * wantConstant.Flags.FLAG_AUTH_PERSISTABLE_URI_PERMISSION. + * @param { string } targetBundleName - Indicates the bundle name of authorization target. + * @param { AsyncCallback<number> } callback - the callback of grantUriPermission. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000058 - Invalid URI flag. + * @throws { BusinessError } 16000059 - Invalid URI type. + * @throws { BusinessError } 16000060 - A sandbox application cannot grant URI permission. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi hide this for inner system use. + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ function grantUriPermission( uri: string, flag: wantConstant.Flags, @@ -82,6 +108,31 @@ declare namespace uriPermissionManager { * @systemapi hide this for inner system use. * @since 10 */ + /** + * Grant URI to another application + * + * @permission ohos.permission.PROXY_AUTHORIZATION_URI + * @param { string } uri - File URI. + * @param { wantConstant.Flags } flag - wantConstant.Flags.FLAG_AUTH_READ_URI_PERMISSION, + * wantConstant.Flags.FLAG_AUTH_WRITE_URI_PERMISSION or + * wantConstant.Flags.FLAG_AUTH_PERSISTABLE_URI_PERMISSION. + * @param { string } targetBundleName - Indicates the bundle name of authorization target. + * @returns { Promise<number> } - the promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000058 - Invalid URI flag. + * @throws { BusinessError } 16000059 - Invalid URI type. + * @throws { BusinessError } 16000060 - A sandbox application cannot grant URI permission. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi hide this for inner system use. + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ function grantUriPermission(uri: string, flag: wantConstant.Flags, targetBundleName: string): Promise<number>; /** @@ -104,11 +155,38 @@ declare namespace uriPermissionManager { * @throws { BusinessError } 16000058 - Invalid URI flag. * @throws { BusinessError } 16000059 - Invalid URI type. * @throws { BusinessError } 16000060 - A sandbox application cannot grant URI permission. - * @throws { BusinessError } 16000081 - Get target application info failed. + * @throws { BusinessError } 16000081 - Failed to obtain the target application information. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi hide this for inner system use. * @since 14 */ + /** + * Grant URI to another application + * + * @permission ohos.permission.PROXY_AUTHORIZATION_URI + * @param { string } uri - File URI. + * @param { wantConstant.Flags } flag - wantConstant.Flags.FLAG_AUTH_READ_URI_PERMISSION, + * wantConstant.Flags.FLAG_AUTH_WRITE_URI_PERMISSION or + * wantConstant.Flags.FLAG_AUTH_PERSISTABLE_URI_PERMISSION. + * @param { string } targetBundleName - Indicates the bundle name of authorization target. + * @param { number } appCloneIndex - Indicates the clone index of target application. + * @returns { Promise<void> } - the promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000058 - Invalid URI flag. + * @throws { BusinessError } 16000059 - Invalid URI type. + * @throws { BusinessError } 16000060 - A sandbox application cannot grant URI permission. + * @throws { BusinessError } 16000081 - Failed to obtain the target application information. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi hide this for inner system use. + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ function grantUriPermission(uri: string, flag: wantConstant.Flags, targetBundleName: string, appCloneIndex: number): Promise<void>; /** @@ -145,6 +223,24 @@ declare namespace uriPermissionManager { * @systemapi hide this for inner system use * @since 12 */ + /** + * Revoke URI from one application + * + * @param { string } uri - File URI. + * @param { string } targetBundleName - Indicates the bundle name of authorization target. + * @param { AsyncCallback<number> } callback - the callback of revokeUriPermission. + * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000059 - Invalid URI type. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi hide this for inner system use + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ function revokeUriPermission(uri: string, targetBundleName: string, callback: AsyncCallback<number>): void; /** @@ -181,6 +277,24 @@ declare namespace uriPermissionManager { * @systemapi hide this for inner system use * @since 12 */ + /** + * Revoke URI from one application + * + * @param { string } uri - File URI. + * @param { string } targetBundleName - Indicates the bundle name of authorization target. + * @returns { Promise<number> } - the promise returned by the function. + * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000059 - Invalid URI type. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi hide this for inner system use + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ function revokeUriPermission(uri: string, targetBundleName: string): Promise<number>; /** @@ -196,12 +310,80 @@ declare namespace uriPermissionManager { * 2. Incorrect parameter types. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000059 - Invalid URI type. - * @throws { BusinessError } 16000081 - Get target application info failed. + * @throws { BusinessError } 16000081 - Failed to obtain the target application information. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi hide this for inner system use * @since 14 + */ + /** + * Revoke URI from one application + * + * @param { string } uri - File URI. + * @param { string } targetBundleName - Indicates the bundle name of authorization target. + * @param { number } appCloneIndex - Indicates the clone index of target application. + * @returns { Promise<void> } - the promise returned by the function. + * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000059 - Invalid URI type. + * @throws { BusinessError } 16000081 - Failed to obtain the target application information. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi hide this for inner system use + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 */ function revokeUriPermission(uri: string, targetBundleName: string, appCloneIndex: number): Promise<void>; + + /** + * Grant URIs in UDkey to another application + * @param { string } key - Indicates the unique identifier of target UnifiedData. + * @param { wantConstant.Flags } flag - wantConstant.Flags.FLAG_AUTH_READ_URI_PERMISSION, + * wantConstant.Flags.FLAG_AUTH_WRITE_URI_PERMISSION or + * wantConstant.Flags.FLAG_AUTH_PERSISTABLE_URI_PERMISSION. + * @param { number } targetTokenId - Indicates the token id of target application. + * @returns { Promise<void> } - The promise returned by the function. + * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000058 - Invalid URI flag. + * @throws { BusinessError } 16000060 - A sandbox application cannot grant URI permission. + * @throws { BusinessError } 16000091 - Failed to get the file URI from the key. + * @throws { BusinessError } 16000092 - No permission to authorize the URI. + * @throws { BusinessError } 16000094 - The target token ID is invalid. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi Hide this for inner system use. + * @since 20 + */ + function grantUriPermissionByKey(key: string, flag: wantConstant.Flags, targetTokenId: number): Promise<void>; + + /** + * Grant URIs in UDkey to another application + * @permission ohos.permission.GRANT_URI_PERMISSION_AS_CALLER + * @param { string } key - Indicates the unique identifier of target UnifiedData. + * @param { wantConstant.Flags } flag - wantConstant.Flags.FLAG_AUTH_READ_URI_PERMISSION, + * wantConstant.Flags.FLAG_AUTH_WRITE_URI_PERMISSION or + * wantConstant.Flags.FLAG_AUTH_PERSISTABLE_URI_PERMISSION. + * @param { number } callerTokenId - Indicates the token id of caller application. + * @param { number } targetTokenId - Indicates the token id of target application. + * @returns { Promise<void> } - The promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000058 - Invalid URI flag. + * @throws { BusinessError } 16000060 - A sandbox application cannot grant URI permission. + * @throws { BusinessError } 16000091 - Failed to get the file URI from the key. + * @throws { BusinessError } 16000092 - No permission to authorize the URI. + * @throws { BusinessError } 16000093 - The caller token ID is invalid. + * @throws { BusinessError } 16000094 - The target token ID is invalid. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @systemapi Hide this for inner system use. + * @since 20 + */ + function grantUriPermissionByKeyAsCaller(key: string, flag: wantConstant.Flags, callerTokenId: number, targetTokenId: number): Promise<void>; } export default uriPermissionManager; \ No newline at end of file diff --git a/api/@ohos.arkui.ArcSwiper.d.ts b/api/@ohos.arkui.ArcSwiper.d.ts index 0a3f8871f87cb1413988697a03964df7d729e0f8..b0d3df66f25ccae310948c62f1294119a5b5b04f 100644 --- a/api/@ohos.arkui.ArcSwiper.d.ts +++ b/api/@ohos.arkui.ArcSwiper.d.ts @@ -190,7 +190,7 @@ export class ArcDotIndicator { /** * Set the gradient color for the mask. * - * @param { Optional<LinearGradient> } color - the gradient color. + * @param { Optional<LinearGradient> } color - the gradient color, default start color is { #00000000 }, default end color is { #FF000000 }. * @returns { ArcDotIndicator } * @syscap SystemCapability.ArkUI.ArkUI.Circle * @crossplatform @@ -508,10 +508,9 @@ declare class ArcSwiperAttribute extends CommonMethod<ArcSwiperAttribute> { onGestureSwipe(handler: Optional<GestureSwipeHandler>): ArcSwiperAttribute; /** - * Invoked when setting the sliding effect + * Set effect when scrolling over edge. * * @param { Optional<EdgeEffect> } edgeEffect - scrolling effect over edge, default value is { EdgeEffect.Spring }. - * @returns { ArcSwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Circle * @crossplatform @@ -535,7 +534,7 @@ declare class ArcSwiperAttribute extends CommonMethod<ArcSwiperAttribute> { /** * Custom swiper content transition animation. * - * @param { Optional<boolean> } disabled + * @param { Optional<boolean> } disabled - the value indicates whether to disable the transition animation, default value is { false }. * @returns { ArcSwiperAttribute } * @syscap SystemCapability.ArkUI.ArkUI.Circle * @crossplatform diff --git a/api/@ohos.arkui.StateManagement.d.ts b/api/@ohos.arkui.StateManagement.d.ts index fce039cf64b3ecb43605d6634656d2bff89c6040..a295917a69bd6ed5ccc1c143963c481a6897bc28 100644 --- a/api/@ohos.arkui.StateManagement.d.ts +++ b/api/@ohos.arkui.StateManagement.d.ts @@ -301,7 +301,7 @@ export declare class UIUtils { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ static makeV1Observed<T extends object>(source: T): T; @@ -314,7 +314,7 @@ export declare class UIUtils { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ static enableV2Compatibility<T extends object>(source: T): T; } \ No newline at end of file diff --git a/api/@ohos.arkui.UIContext.d.ets b/api/@ohos.arkui.UIContext.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..ad231bd85d0910cad79f06ef01280832cbf539af --- /dev/null +++ b/api/@ohos.arkui.UIContext.d.ets @@ -0,0 +1,2706 @@ +/* + * Copyright (c) 2023-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + + +import font from './@ohos.font'; +import mediaQuery from './@ohos.mediaquery'; +import inspector from './@ohos.arkui.inspector'; +import observer from './@ohos.arkui.observer'; +import promptAction from './@ohos.promptAction'; +import router from './@ohos.router'; +import componentUtils from './@ohos.arkui.componentUtils'; +import { ComponentContent, FrameNode } from './@ohos.arkui.node'; +import { AnimatorOptions, AnimatorResult } from './@ohos.animator'; +import { Callback, AsyncCallback } from './@ohos.base'; +import { MeasureOptions } from './@ohos.measure'; +import componentSnapshot from './@ohos.arkui.componentSnapshot'; +import dragController from './@ohos.arkui.dragController'; +import image from './@ohos.multimedia.image'; +import common from './@ohos.app.ability.common'; +import pointer from './@ohos.multimodalInput.pointer'; +import { ClickEvent,CustomBuilder,ExpectedFrameRateRange,DragItemInfo,AnimateParam,KeyframeAnimateParam,KeyframeState,SheetOptions } from './arkui/component/common' +import { GestureEvent } from './arkui/component/gesture' +import { ResourceStr,SizeOptions } from './arkui/component/units' +import { Nullable } from './arkui/component/enums' +import { LocalStorage } from '@ohos.arkui.stateManagement'; +import { Color,FontStyle,WidthBreakpoint,HeightBreakpoint } from './arkui/component/enums' + +/** + * class Font + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare class Font { + + /** + * Register a customized font in the FontManager. + * + * @param { font.FontOptions } options - FontOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + registerFont(options: font.FontOptions): void; + + + /** + * Gets a list of fonts supported by system. + * @returns { Array<string> } A list of font names + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + getSystemFontList(): Array<string>; + + + /** + * Get font details according to the font name. + * @param { string } fontName - font name + * @returns { font.FontInfo } Returns the font info + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + getFontByName(fontName: string): font.FontInfo; +} + + +/** + * class MediaQuery + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare class MediaQuery { + + /** + * Sets the media query criteria and returns the corresponding listening handle + * + * @param { string } condition - media conditions + * @returns { mediaQuery.MediaQueryListener } the corresponding listening handle + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + matchMediaSync(condition: string): mediaQuery.MediaQueryListener; +} + + +/** + * class UIInspector + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare class UIInspector { + + /** + * Sets the component after layout or draw criteria and returns the corresponding listening handle + * @param { string } id - component id. + * @returns { inspector.ComponentObserver } create listener for observer component event. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + createComponentObserver(id: string): inspector.ComponentObserver; +} + + + +/** + * class Router + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class Router { + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { router.RouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + pushUrl(options: router.RouterOptions, callback: AsyncCallback<void>): void; + + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { router.RouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + pushUrl(options: router.RouterOptions): Promise<void>; + + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { router.RouterOptions } options - Options. + * @param { router.RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + pushUrl(options: router.RouterOptions, mode: router.RouterMode, callback: AsyncCallback<void>): void; + + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { router.RouterOptions } options - Options. + * @param { router.RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + pushUrl(options: router.RouterOptions, mode: router.RouterMode): Promise<void>; + + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { router.RouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of replaceUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + replaceUrl(options: router.RouterOptions, callback: AsyncCallback<void>): void; + + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { router.RouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + replaceUrl(options: router.RouterOptions): Promise<void>; + + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { router.RouterOptions } options - Options. + * @param { router.RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of replaceUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + replaceUrl(options: router.RouterOptions, mode: router.RouterMode, callback: AsyncCallback<void>): void; + + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { router.RouterOptions } options - Options. + * @param { router.RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Failed to get the delegate. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + replaceUrl(options: router.RouterOptions, mode: router.RouterMode): Promise<void>; + + + /** + * Returns to the previous page or a specified page. + * + * @param { router.RouterOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + back(options?: router.RouterOptions): void; + + /** + * Returns to the specified page. + * + * @param { number } index - index of page. + * @param { Object } [params] - params of page. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + back(index: number, params?: Object): void; + + + /** + * Clears all historical pages and retains only the current page at the top of the stack. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + clear(): void; + + + /** + * Obtains the number of pages in the current stack. + * + * @returns { string } Number of pages in the stack. The maximum value is 32. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getLength(): string; + + + /** + * Obtains information about the current page state. + * + * @returns { router.RouterState } Page state. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getState(): router.RouterState; + + /** + * Obtains page information by index. + * + * @param { number } index - Index of page. + * @returns { router.RouterState | undefined } Page state. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getStateByIndex(index: number): router.RouterState | undefined; + + /** + * Obtains page information by url. + * + * @param { string } url - URL of page. + * @returns { Array<router.RouterState> } Page state. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getStateByUrl(url: string): Array<router.RouterState>; + + + /** + * Pop up alert dialog to ask whether to back. + * + * @param { router.EnableAlertOptions } options - Options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + showAlertBeforeBackPage(options: router.EnableAlertOptions): void; + + + /** + * Hide alert before back page. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + hideAlertBeforeBackPage(): void; + + + /** + * Obtains information about the current page params. + * + * @returns { Object } Page params. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getParams(): Object; + + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * @param { router.NamedRouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of pushNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + pushNamedRoute(options: router.NamedRouterOptions, callback: AsyncCallback<void>): void; + + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * @param { router.NamedRouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + pushNamedRoute(options: router.NamedRouterOptions): Promise<void>; + + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * @param { router.NamedRouterOptions } options - Options. + * @param { router.RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of pushNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + pushNamedRoute(options: router.NamedRouterOptions, mode: router.RouterMode, callback: AsyncCallback<void>): void; + + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * @param { router.NamedRouterOptions } options - Options. + * @param { router.RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + pushNamedRoute(options: router.NamedRouterOptions, mode: router.RouterMode): Promise<void>; + + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * @param { router.NamedRouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of replaceNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + replaceNamedRoute(options: router.NamedRouterOptions, callback: AsyncCallback<void>): void; + + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * @param { router.NamedRouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - if the number of parameters is less than 1 or the type of the url parameter is not string. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + replaceNamedRoute(options: router.NamedRouterOptions): Promise<void>; + + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * @param { router.NamedRouterOptions } options - Options. + * @param { router.RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of replaceNamedRoute. + * @throws { BusinessError } 401 - if the number of parameters is less than 1 or the type of the url parameter is not string. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + replaceNamedRoute(options: router.NamedRouterOptions, mode: router.RouterMode, callback: AsyncCallback<void>): void; + + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * @param { router.NamedRouterOptions } options - Options. + * @param { router.RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Failed to get the delegate. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + replaceNamedRoute(options: router.NamedRouterOptions, mode: router.RouterMode): Promise<void>; +} + + +/** + * class PromptAction + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare class PromptAction { + + /** + * Displays the notification text. + * + * @param { promptAction.ShowToastOptions } options - Options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + showToast(options: promptAction.ShowToastOptions): void; + + /** + * Displays the notification text. + * + * @param { promptAction.ShowToastOptions } options - Options. + * @returns { Promise<number> } return the toast id that will be used by closeToast. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 13 + */ + openToast(options: promptAction.ShowToastOptions): Promise<number>; + + /** + * Close the notification text. + * + * @param { number } toastId - the toast id that returned by openToast. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 13 + */ + closeToast(toastId: number): void; + + + + /** + * Displays the dialog box. + * + * @param { promptAction.ShowDialogOptions } options - Options. + * @param { AsyncCallback<promptAction.ShowDialogSuccessResponse> } callback - the callback of showDialog. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + showDialog(options: promptAction.ShowDialogOptions, callback: AsyncCallback<promptAction.ShowDialogSuccessResponse>): void; + + + /** + * Displays the dialog box. + * + * @param { promptAction.ShowDialogOptions } options - Options. + * @returns { Promise<promptAction.ShowDialogSuccessResponse> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + showDialog(options: promptAction.ShowDialogOptions): Promise<promptAction.ShowDialogSuccessResponse>; + + /** + * Displays the menu. + * + * @param { promptAction.ActionMenuOptions } options - Options. + * @param { promptAction.ActionMenuSuccessResponse } callback - the callback of showActionMenu. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + * @deprecated since 11 + * @useinstead showActionMenu + */ + // showActionMenu(options: promptAction.ActionMenuOptions, callback: promptAction.ActionMenuSuccessResponse): void; + + /** + * Displays the menu. + * + * @param { promptAction.ActionMenuOptions } options - Options. + * @param { AsyncCallback<promptAction.ActionMenuSuccessResponse> } callback - the callback of showActionMenu. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + showActionMenu(options: promptAction.ActionMenuOptions, callback: AsyncCallback<promptAction.ActionMenuSuccessResponse>): void; + + + /** + * Displays the menu. + * + * @param { promptAction.ActionMenuOptions } options - Options. + * @returns { Promise<promptAction.ActionMenuSuccessResponse> } callback - the callback of showActionMenu. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + showActionMenu(options: promptAction.ActionMenuOptions): Promise<promptAction.ActionMenuSuccessResponse>; + + /** + * Open the custom dialog with frameNode. + * + * @param { ComponentContent<T> } dialogContent - the content of custom dialog. + * @param { promptAction.BaseDialogOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 103301 - the ComponentContent is incorrect. + * @throws { BusinessError } 103302 - Dialog content already exists. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + openCustomDialog<T extends Object>(dialogContent: ComponentContent<T>, options: promptAction.BaseDialogOptions): Promise<void>; + + /** + * Update the custom dialog with frameNode. + * + * @param { ComponentContent<T> } dialogContent - the content of custom dialog. + * @param { promptAction.BaseDialogOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 103301 - the ComponentContent is incorrect. + * @throws { BusinessError } 103303 - the ComponentContent cannot be found. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + updateCustomDialog<T extends Object>(dialogContent: ComponentContent<T>, options: promptAction.BaseDialogOptions): Promise<void>; + + /** + * Close the custom dialog with frameNode. + * + * @param { ComponentContent<T> } dialogContent - the content of custom dialog. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 103301 - the ComponentContent is incorrect. + * @throws { BusinessError } 103303 - the ComponentContent cannot be found. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + closeCustomDialog<T extends Object>(dialogContent: ComponentContent<T>): Promise<void>; + + /** + * Open the custom dialog. + * + * @param { promptAction.CustomDialogOptions } options - Options. + * @returns { Promise<number> } return the dialog id that will be used by closeCustomDialog. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + openCustomDialog(options: promptAction.CustomDialogOptions): Promise<number>; + + /** + * Close the custom dialog. + * + * @param { number } dialogId - the dialog id that returned by openCustomDialog. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + closeCustomDialog(dialogId: number): void; +} + +/** + * Defines the callback type used in UIObserver watch click event. + * The value of event indicates the information of ClickEvent. + * The value of node indicates the frameNode which will receive the event. + * + * @typedef { function } ClickEventListenerCallback + * @param { ClickEvent } event - the information of ClickEvent + * @param { FrameNode } [node] - the information of frameNode + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type ClickEventListenerCallback = (event: ClickEvent, node?: FrameNode) => void; + +/** + * Defines the callback type used in UIObserver watch gesture. + * The value of event indicates the information of gesture. + * The value of node indicates the frameNode which will receive the event. + * + * @typedef { function } GestureEventListenerCallback + * @param { GestureEvent } event - the information of GestureEvent + * @param { FrameNode } [node] - the information of frameNode + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type GestureEventListenerCallback = (event: GestureEvent, node?: FrameNode) => void; + +/** + * Defines the PageInfo type. + * The value of routerPageInfo indicates the information of the router page, or undefined if the + * frameNode does not have router page information. And the value of navDestinationInfo indicates + * the information of the navDestination, or undefined if the frameNode does not have navDestination + * information. + * + * @interface PageInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface PageInfo { + /** + * the property of router page information. + * + * @type { ?observer.RouterPageInfo } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + routerPageInfo?: observer.RouterPageInfo; + + /** + * the property of navDestination information. + * + * @type { ?observer.NavDestinationInfo } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + navDestinationInfo?: observer.NavDestinationInfo; +} + +export interface NavigationOptions { navigationId: ResourceStr } + +/** + * Register callbacks to observe ArkUI behavior. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class UIObserver { + on<T,V>(type: string, options: T, callback:Callback<V>):void; + off<T,V>(type:string, options: T, callback: Callback<V>):void; + on<T>(type: string, callback:Callback<T>):void; + off<T>(type:string, callback: Callback<T>):void; + // /** + // * Registers a callback function to be called when the navigation destination is updated. + // * + // * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. + // * @param { object } options - Specify the id of observed navigation. + // * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Registers a callback function to be called when the navigation destination is updated. + // * + // * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. + // * @param { object } options - The options object. + // * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'navDestinationUpdate', options: NavigationOptions, callback: Callback<observer.NavDestinationInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationUpdate' } type - The type of event to remove the listener for. Must be 'navDestinationUpdate'. + // * @param { object } options - Specify the id of observed navigation. + // * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to remove. If not provided, all callbacks for the given event type and + // * navigation ID will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationUpdate' } type - The type of event to remove the listener for. Must be 'navDestinationUpdate'. + // * @param { object } options - The options object. + // * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to remove. If not provided, all callbacks for the given event type and + // * navigation ID will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'navDestinationUpdate', options: NavigationOptions, callback?: Callback<observer.NavDestinationInfo>): void; + + // /** + // * Registers a callback function to be called when the navigation destination is updated. + // * + // * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. + // * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Registers a callback function to be called when the navigation destination is updated. + // * + // * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. + // * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'navDestinationUpdate', callback: Callback<observer.NavDestinationInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationUpdate'} type - The type of event to remove the listener for. Must be 'navDestinationUpdate'. + // * @param { Callback<observer.NavDestinationInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationUpdate'} type - The type of event to remove the listener for. Must be 'navDestinationUpdate'. + // * @param { Callback<observer.NavDestinationInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'navDestinationUpdate', callback: Callback<observer.NavDestinationInfo>): void; + + // /** + // * Registers a callback function to be called when the scroll event start or stop. + // * + // * @param { 'scrollEvent' } type - The type of event to listen for. Must be 'scrollEvent'. + // * @param { observer.ObserverOptions } options - The options object. + // * @param { Callback<observer.ScrollEventInfo> } callback - The callback function to be called when the scroll event start or stop. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'scrollEvent', options: observer.ObserverOptions, callback: Callback<observer.ScrollEventInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'scrollEvent' } type - The type of event to remove the listener for. Must be 'scrollEvent'. + // * @param { observer.ObserverOptions } options - The options object. + // * @param { Callback<observer.ScrollEventInfo> } callback - The callback function to remove. If not provided, all callbacks for the given event type and + // * scroll ID will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'scrollEvent', options: observer.ObserverOptions, callback: Callback<observer.ScrollEventInfo>): void; + + // /** + // * Registers a callback function to be called when the scroll event start or stop. + // * + // * @param { 'scrollEvent' } type - The type of event to listen for. Must be 'scrollEvent'. + // * @param { Callback<observer.ScrollEventInfo> } callback - The callback function to be called when the scroll event start or stop. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'scrollEvent', callback: Callback<observer.ScrollEventInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'scrollEvent'} type - The type of event to remove the listener for. Must be 'scrollEvent'. + // * @param { Callback<observer.ScrollEventInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'scrollEvent', callback?: Callback<observer.ScrollEventInfo>): void; + + // /** + // * Registers a callback function to be called when the router page in a ui context is updated. + // * + // * @param { 'routerPageUpdate' } type - The type of event to listen for. Must be 'routerPageUpdate'. + // * @param { Callback<observer.RouterPageInfo> } callback - The callback function to be called when the router page is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Registers a callback function to be called when the router page in a ui context is updated. + // * + // * @param { 'routerPageUpdate' } type - The type of event to listen for. Must be 'routerPageUpdate'. + // * @param { Callback<observer.RouterPageInfo> } callback - The callback function to be called when the router page is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'routerPageUpdate', callback: Callback<observer.RouterPageInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'routerPageUpdate' } type - The type of event to remove the listener for. Must be 'routerPageUpdate'. + // * @param { Callback<observer.RouterPageInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'routerPageUpdate' } type - The type of event to remove the listener for. Must be 'routerPageUpdate'. + // * @param { Callback<observer.RouterPageInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'routerPageUpdate', callback?: Callback<observer.RouterPageInfo>): void; + + // /** + // * Registers a callback function to be called when the screen density in a ui context is updated. + // * + // * @param { 'densityUpdate' } type - The type of event to listen for. Must be 'densityUpdate'. + // * @param { Callback<observer.DensityInfo> } callback - The callback function to be called when the screen density is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'densityUpdate', callback: Callback<observer.DensityInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'densityUpdate' } type - The type of event to remove the listener for. Must be 'densityUpdate'. + // * @param { Callback<observer.DensityInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'densityUpdate', callback?: Callback<observer.DensityInfo>): void; + + // /** + // * Registers a callback function to be called when the draw command will be drawn. + // * + // * @param { 'willDraw' } type - The type of event to listen for. Must be 'willDraw'. + // * @param { Callback<void> } callback - The callback function to be called when the draw command will be drawn. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'willDraw', callback: Callback<void>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'willDraw' } type - The type of event to remove the listener for. Must be 'willDraw'. + // * @param { Callback<void> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'willDraw', callback?: Callback<void>): void; + + // /** + // * Registers a callback function to be called when the layout is done. + // * + // * @param { 'didLayout' } type - The type of event to listen for. Must be 'didLayout'. + // * @param { Callback<void> } callback - The callback function to be called when the layout is done. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'didLayout', callback: Callback<void>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'didLayout' } type - The type of event to remove the listener for. Must be 'didLayout'. + // * @param { Callback<void> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'didLayout', callback?: Callback<void>): void; + + // /** + // * Registers a callback function to be called when the navigation switched to a new navDestination. + // * + // * @param { 'navDestinationSwitch' } type - The type of event to listen for. Must be 'navDestinationSwitch'. + // * @param { Callback<observer.NavDestinationSwitchInfo> } callback - The callback function to be called when the navigation switched to a new navDestination. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on( + // type: 'navDestinationSwitch', + // callback: Callback<observer.NavDestinationSwitchInfo> + // ): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationSwitch' } type - The type of event to remove the listener for. Must be 'navDestinationSwitch'. + // * @param { Callback<observer.NavDestinationSwitchInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off( + // type: 'navDestinationSwitch', + // callback?: Callback<observer.NavDestinationSwitchInfo> + // ): void; + + // /** + // * Registers a callback function to be called when the navigation switched to a new navDestination. + // * + // * @param { 'navDestinationSwitch' } type - The type of event to listen for. Must be 'navDestinationSwitch'. + // * @param { observer.NavDestinationSwitchObserverOptions } observerOptions - Options. + // * @param { Callback<observer.NavDestinationSwitchInfo> } callback - The callback function to be called when the navigation switched to a new navDestination. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on( + // type: 'navDestinationSwitch', + // observerOptions: observer.NavDestinationSwitchObserverOptions, + // callback: Callback<observer.NavDestinationSwitchInfo> + // ): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationSwitch' } type - The type of event to remove the listener for. Must be 'navDestinationSwitch'. + // * @param { observer.NavDestinationSwitchObserverOptions } observerOptions - Options. + // * @param { Callback<observer.NavDestinationSwitchInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off( + // type: 'navDestinationSwitch', + // observerOptions: observer.NavDestinationSwitchObserverOptions, + // callback?: Callback<observer.NavDestinationSwitchInfo> + // ): void; + + // /** + // * Registers a callback function to be called before clickEvent is called. + // * + // * @param { 'willClick' } type - The type of event to listen for. + // * @param { ClickEventListenerCallback } callback - The callback function to be called + // * when the clickEvent will be trigger or after. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'willClick', callback: ClickEventListenerCallback): void; + + // /** + // * Removes a callback function to be called before clickEvent is called. + // * + // * @param { 'willClick' } type - The type of event to remove the listener for. + // * @param { ClickEventListenerCallback } [callback] - The callback function to remove. If not provided, + // * all callbacks for the given event type will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'willClick', callback?: ClickEventListenerCallback): void; + + // /** + // * Registers a callback function to be called after clickEvent is called. + // * + // * @param { 'didClick' } type - The type of event to listen for. + // * @param { ClickEventListenerCallback } callback - The callback function to be called + // * when the clickEvent will be trigger or after. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'didClick', callback: ClickEventListenerCallback): void; + + // /** + // * Removes a callback function to be called after clickEvent is called. + // * + // * @param { 'didClick' } type - The type of event to remove the listener for. + // * @param { ClickEventListenerCallback } [callback] - The callback function to remove. If not provided, + // * all callbacks for the given event type will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'didClick', callback?: ClickEventListenerCallback): void; + + // /** + // * Registers a callback function to be called before tapGesture is called. + // * + // * @param { 'willClick' } type - The type of event to listen for. + // * @param { GestureEventListenerCallback } callback - The callback function to be called + // * when the clickEvent will be trigger or after. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'willClick', callback: GestureEventListenerCallback): void; + + // /** + // * Removes a callback function to be called before tapGesture is called. + // * + // * @param { 'willClick' } type - The type of event to remove the listener for. + // * @param { GestureEventListenerCallback } [callback] - The callback function to remove. If not provided, + // * all callbacks for the given event type will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'willClick', callback?: GestureEventListenerCallback): void; + + // /** + // * Registers a callback function to be called after tapGesture is called. + // * + // * @param { 'didClick' } type - The type of event to listen for. + // * @param { GestureEventListenerCallback } callback - The callback function to be called + // * when the clickEvent will be trigger or after. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'didClick', callback: GestureEventListenerCallback): void; + + // /** + // * Removes a callback function to be called after tapGesture is called. + // * + // * @param { 'didClick' } type - The type of event to remove the listener for. + // * @param { GestureEventListenerCallback } [callback] - The callback function to remove. If not provided, + // * all callbacks for the given event type will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'didClick', callback?: GestureEventListenerCallback): void; + + // /** + // * Registers a callback function to be called when the tabContent is showed or hidden. + // * + // * @param { 'tabContentUpdate' } type - The type of event to listen for. Must be 'tabContentUpdate'. + // * @param { observer.ObserverOptions } options - The options object. + // * @param { Callback<observer.TabContentInfo> } callback - The callback function to be called + // * when the tabContent show or hide. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'tabContentUpdate', options: observer.ObserverOptions, callback: Callback<observer.TabContentInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'tabContentUpdate' } type - The type of event to remove the listener for. Must be 'tabContentUpdate'. + // * @param { observer.ObserverOptions } options - The options object. + // * @param { Callback<observer.TabContentInfo> } callback - The callback function to remove. If not provided, + // * all callbacks for the given event type and Tabs ID will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'tabContentUpdate', options: observer.ObserverOptions, callback?: Callback<observer.TabContentInfo>): void; + + // /** + // * Registers a callback function to be called when the tabContent is showed or hidden. + // * + // * @param { 'tabContentUpdate' } type - The type of event to listen for. Must be 'tabContentUpdate'. + // * @param { Callback<observer.TabContentInfo> } callback - The callback function to be called + // * when the tabContent is showed or hidden. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // on(type: 'tabContentUpdate', callback: Callback<observer.TabContentInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'tabContentUpdate'} type - The type of event to remove the listener for. Must be 'tabContentUpdate'. + // * @param { Callback<observer.TabContentInfo> } callback - The callback function to remove. If not provided, + // * all callbacks for the given event type and Tabs ID will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // off(type: 'tabContentUpdate', callback?: Callback<observer.TabContentInfo>): void; +} + + +/** + * class ComponentUtils + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare class ComponentUtils { + + /** + * Provide the ability to obtain the coordinates and size of component drawing areas. + * + * @param { string } id - ID of the component whose attributes are to be obtained. + * @returns { componentUtils.ComponentInfo } the object of ComponentInfo. + * @throws { BusinessError } 100001 - UI execution context not found. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + getRectangleById(id: string): componentUtils.ComponentInfo; +} + +/** + * class OverlayManager + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class OverlayManager { + /** + * Add the ComponentContent to the OverlayManager. + * + * @param { ComponentContent } content - The content will be added to the OverlayManager. + * @param { number } [ index ] - The index at which to add the ComponentContent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + addComponentContent(content: ComponentContent<Object>, index?: number): void; + + /** + * Remove the ComponentContent from the OverlayManager. + * + * @param { ComponentContent } content - The content will be removed from the OverlayManager. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + removeComponentContent(content: ComponentContent<Object>): void; + + /** + * Show the ComponentContent. + * + * @param { ComponentContent } content - The content will be shown. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + showComponentContent(content: ComponentContent<Object>): void; + + /** + * Hide the ComponentContent. + * + * @param { ComponentContent } content - The content will be hidden. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + hideComponentContent(content: ComponentContent<Object>): void; + + /** + * Show all ComponentContents on the OverlayManager. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + showAllComponentContents(): void; + + /** + * Hide all ComponentContents on the OverlayManager. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + hideAllComponentContents(): void; +} + + +/** + * interface AtomicServiceBar + * @interface AtomicServiceBar + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface AtomicServiceBar { + /** + * Set the visibility of the bar, except the icon. + * + * @param { boolean } visible - whether this bar is visible. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + setVisible(visible: boolean): void; + + + /** + * Set the background color of the bar. + * + * @param { Nullable< Color | number | string> } color - the color to set, undefined indicates using default. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + setBackgroundColor(color: Nullable< Color | number | string>): void; + + + /** + * Set the title of the bar. + * + * @param { string } content - the content of the bar. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + setTitleContent(content: string): void; + + + /** + * Set the font style of the bar's title. + * + * @param { FontStyle } font - the font style of the bar's title. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + setTitleFontStyle(font: FontStyle): void; + + + /** + * Set the color of the icon on the bar. + * + * @param { Nullable< Color | number | string> } color - the color to set to icon, undefined indicates using default. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + setIconColor(color: Nullable< Color | number | string>): void; +} + +/** + * Represents a dynamic synchronization scene. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ +export declare class DynamicSyncScene { + /** + * Sets the FrameRateRange of the DynamicSyncScene. + * + * @param { ExpectedFrameRateRange } range - The range of frameRate. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + setFrameRateRange(range: ExpectedFrameRateRange): void; + + /** + * Gets the FrameRateRange of the DynamicSyncScene. + * + * @returns { ExpectedFrameRateRange } The range of frameRate. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + getFrameRateRange(): ExpectedFrameRateRange; +} + +/** + * Represents a dynamic synchronization scene of Swiper. + * + * @extends DynamicSyncScene + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ +export declare class SwiperDynamicSyncScene extends DynamicSyncScene { + /** + * Type of the SwiperDynamicSyncSceneType. + * @type { SwiperDynamicSyncSceneType } + * @readonly + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + readonly type: SwiperDynamicSyncSceneType; +} + +/** + * Represents a dynamic synchronization scene of Marquee. + * + * @extends DynamicSyncScene + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 13 + */ +export declare class MarqueeDynamicSyncScene extends DynamicSyncScene { + /** + * Type of the MarqueeDynamicSyncSceneType. + * @type { MarqueeDynamicSyncSceneType } + * @readonly + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 13 + */ + readonly type: MarqueeDynamicSyncSceneType; +} + + +/** + * class DragController + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ +export declare class DragController { + + /** + * Execute a drag event. + * @param { CustomBuilder | DragItemInfo } custom - Object used for prompts displayed when the object is dragged. + * @param { dragController.DragInfo } dragInfo - Information about the drag event. + * @param { AsyncCallback<dragController.DragEventParam> } callback - Callback that contains + * the drag event information. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + executeDrag(custom: CustomBuilder | DragItemInfo, dragInfo: dragController.DragInfo, + callback: AsyncCallback<dragController.DragEventParam>): void; + + + /** + * Execute a drag event. + * @param { CustomBuilder | DragItemInfo } custom - Object used for prompts displayed when the object is dragged. + * @param { dragController.DragInfo } dragInfo - Information about the drag event. + * @returns { Promise<dragController.DragEventParam> } A Promise with the drag event information. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + executeDrag(custom: CustomBuilder | DragItemInfo, dragInfo: dragController.DragInfo) + : Promise<dragController.DragEventParam>; + + + /** + * Create one drag action object, which can be used for starting drag later or monitoring the drag status after drag started. + * @param { Array<CustomBuilder | DragItemInfo> } customArray - Objects used for prompts displayed when the objects are dragged. + * @param { dragController.DragInfo } dragInfo - Information about the drag event. + * @returns { dragController.DragAction } one drag action object + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + createDragAction(customArray: Array<CustomBuilder | DragItemInfo>, dragInfo: dragController.DragInfo): dragController.DragAction; + + + /** + * Get a drag preview object. + * @returns { dragController.DragPreview } A drag preview object. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + getDragPreview(): dragController.DragPreview; + + /** + * Enable drag event strict reporting for drag enter and leave notification in nested situation. + * For example, the parent and child both register the onDragEnter/onDragLeave events, if this + * flag is enabled, the parent will be notified with leave event, and the child will notified with + * enter event at the same time, when user drag action is passing through the parent and enter the + * scope of the child. + * Please be noted, the default value of the flag is false, it means, for the same situation, the + * parent will not receive the leave notification, just the child can get the enter event, which is + * not fully strict. + * @param { boolean } enable - Indicating enable drag event strict reporting or not. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + setDragEventStrictReportingEnabled(enable: boolean): void; +} + +/** + * class MeasureUtils + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class MeasureUtils { + /** + * Obtains the width of the specified text in a single line layout. + * + * @param { MeasureOptions } options - Options. + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + measureText(options: MeasureOptions): number; + + /** + * Obtains the width and height of the specified text in a single line layout. + * + * @param { MeasureOptions } options - Options of measure area occupied by text. + * @returns { SizeOptions } width and height for text to display + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + measureTextSize(options: MeasureOptions): SizeOptions; +} + +/** + * class FocusController + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ +export declare class FocusController { + /** + * clear focus to the root container. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + clearFocus(): void; + + /** + * request focus to the specific component. + * @param { string } key - the inspector key of the component. + * @throws { BusinessError } 150001 - the component cannot be focused. + * @throws { BusinessError } 150002 - This component has an unfocusable ancestor. + * @throws { BusinessError } 150003 - the component is not on tree or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + requestFocus(key: string): void; + + /** + * Activate focus style. + * @param { boolean } isActive - activate/deactivate the focus style. + * @param { boolean } [autoInactive] - deactivate the focus style when touch event or mouse event triggers, the default value is true. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + activate(isActive: boolean, autoInactive?: boolean): void; +} + +/** + * Pointer style. + * + * @typedef {pointer.PointerStyle} PointerStyle + * @syscap SystemCapability.MultimodalInput.Input.Pointer + * @atomicservice + * @since 12 + */ +export type PointerStyle = pointer.PointerStyle; + +/** + * class CursorController + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class CursorController { + /** + * Restore default cursor. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + restoreDefault(): void; + /** + * Set cursor style. + * + * @param { PointerStyle } value - cursor style enum. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setCursor(value: PointerStyle): void; +} + +/** + * class ContextMenuController + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class ContextMenuController { + /** + * Close context menu. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + close(): void; +} + +/** + * Class FrameCallback + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare abstract class FrameCallback { + /** + * Call when a new display frame is being rendered. + * + * @param { number } frameTimeInNano - The frame time in nanoseconds. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onFrame(frameTimeInNano: number): void; + + /** + * Called at the end of the next idle frame. If there is no next frame, will request one automatically. + * + * @param { number } timeLeftInNano - The remaining time from the deadline for this frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onIdle(timeLeftInNano: number): void; +} + +/** + * The base context of an ability or an application. It allows access to + * application-specific resources. + * + * @typedef { common.Context } Context + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @StageModelOnly + * @crossplatform + * @atomicservice + * @since 12 + */ +export type Context = common.Context; + +/** + * class ComponentSnapshot + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ +export declare class ComponentSnapshot { + /** + * Get a component snapshot by component id. + * + * @param { string } id - Target component ID, set by developer through .id attribute. + * @param { AsyncCallback<image.PixelMap> } callback - Callback that contains the snapshot in PixelMap format. + * @param { componentSnapshot.SnapshotOptions } [options] - Define the snapshot options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Invalid ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get(id: string, callback: AsyncCallback<image.PixelMap>, options?: componentSnapshot.SnapshotOptions): void; + + /** + * Get a component snapshot by component id. + * + * @param { string } id - Target component ID, set by developer through .id attribute. + * @param { componentSnapshot.SnapshotOptions } [options] - Define the snapshot options. + * @returns { Promise<image.PixelMap> } A Promise with the snapshot in PixelMap format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Invalid ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get(id: string, options?: componentSnapshot.SnapshotOptions): Promise<image.PixelMap>; + + /** + * Generate a snapshot from a custom component builder. + * + * @param { CustomBuilder } builder - Builder function of a custom component. + * @param { AsyncCallback<image.PixelMap> } callback - Callback that contains the snapshot in PixelMap format. + * @param { number } [delay] - Defines the delay time to render the snapshot. + * @param { boolean } [checkImageStatus] - Defines if check the image decoding status before taking snapshot. + * @param { componentSnapshot.SnapshotOptions } [options] - Define the snapshot options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The builder is not a valid build function. + * @throws { BusinessError } 160001 - An image component in builder is not ready for taking a snapshot. The check for + * the ready state is required when the checkImageStatus option is enabled. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + createFromBuilder(builder: CustomBuilder, callback: AsyncCallback<image.PixelMap>, + delay?: number, checkImageStatus?: boolean, options?: componentSnapshot.SnapshotOptions): void; + + /** + * Generate a snapshot from a custom component builder. + * + * @param { CustomBuilder } builder - Builder function of a custom component. + * @param { number } [delay] - Defines the delay time to render the snapshot. + * @param { boolean } [checkImageStatus] - Defines if check the image decoding status before taking snapshot. + * @param { componentSnapshot.SnapshotOptions } [options] - Define the snapshot options. + * @returns { Promise<image.PixelMap> } A Promise with the snapshot in PixelMap format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The builder is not a valid build function. + * @throws { BusinessError } 160001 - An image component in builder is not ready for taking a snapshot. The check for + * the ready state is required when the checkImageStatus option is enabled. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + createFromBuilder(builder: CustomBuilder, delay?: number, + checkImageStatus?: boolean, options?: componentSnapshot.SnapshotOptions): Promise<image.PixelMap>; + + /** + * Take a screenshot of the specified component in synchronous mode, + * this mode will block the main thread, please use it with caution, the maximum + * waiting time of the interface is 3s, if it does not return after 3s, an exception will be thrown. + * + * @param { string } id - Target component ID, set by developer through .id attribute. + * @param { componentSnapshot.SnapshotOptions } [options] - Define the snapshot options. + * @returns { image.PixelMap } The snapshot result in PixelMap format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Invalid ID. + * @throws { BusinessError } 160002 - Timeout. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getSync(id: string, options?: componentSnapshot.SnapshotOptions): image.PixelMap; +} + + +/** + * class UIContext + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +export declare class UIContext { + + /** + * get object font. + * + * @returns { Font } object Font. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getFont(): Font; + + + /** + * get object mediaQuery. + * + * @returns { MediaQuery } object MediaQuery. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getMediaQuery(): MediaQuery; + + + /** + * get object UIInspector. + * @returns { UIInspector } object UIInspector. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getUIInspector(): UIInspector; + + /** + * get the filtered attributes of the component tree. + * @param { Array<string> } [filters] - the list of filters used to filter out component tree to be obtained. + * @returns { string } the specified attributes of the component tree in json string. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getFilteredInspectorTree(filters?: Array<string>): string; + + /** + * get the filtered attributes of the component tree with the specified id and depth + * @param { string } id - ID of the specified component tree to be obtained. + * @param { number } depth - depth of the component tree to be obtained. + * @param { Array<string> } [filters] - the list of filters used to filter out component tree to be obtained. + * @returns { string } the specified attributes of the component tree in json string. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getFilteredInspectorTreeById(id: string, depth: number, filters?: Array<string>): string; + + + /** + * get object router. + * + * @returns { Router } object Router. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getRouter(): Router; + + + /** + * get object PromptAction. + * + * @returns { PromptAction } object PromptAction. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getPromptAction(): PromptAction; + + + /** + * get object ComponentUtils. + * @returns { ComponentUtils } object ComponentUtils. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getComponentUtils(): ComponentUtils; + + + /** + * Get the UI observer. + * + * @returns { UIObserver } The UI observer. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getUIObserver(): UIObserver; + + /** + * Get object OverlayManager. + * + * @returns { OverlayManager } object OverlayManager. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getOverlayManager(): OverlayManager; + + + /** + * Create an animator object for custom animation. + * + * @param { AnimatorOptions } options - Options. + * @returns { AnimatorResult } + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + createAnimator(options: AnimatorOptions): AnimatorResult; + + + /** + * Defining animation function + * + * @param { AnimateParam } value - parameters for animation. + * @param { function } event - the closure base on which, the system will create animation automatically + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + animateTo(value: AnimateParam, event: () => void): void; + + /** + * Run custom functions inside the UIContext scope. + * + * @param { function } callback - The function called through UIContext. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + runScopedTask(callback: () => void): void; + + /** + * Set KeyboardAvoidMode. The default mode is KeyboardAvoidMode.OFFSET + * + * @param { KeyboardAvoidMode } value - The mode of keyboard avoid. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + setKeyboardAvoidMode(value: KeyboardAvoidMode): void; + + /** + * Get KeyboardAvoidMode. + * @returns { KeyboardAvoidMode } The mode of keyboard avoid. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getKeyboardAvoidMode(): KeyboardAvoidMode; + + /** + * Get AtomicServiceBar. + * @returns { Nullable<AtomicServiceBar> } The atomic service bar. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + getAtomicServiceBar(): Nullable<AtomicServiceBar>; + + + /** + * Get DragController. + * @returns { DragController } the DragController + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + getDragController(): DragController; + + /** + * Get MeasureUtils. + * @returns { MeasureUtils } the MeasureUtils + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getMeasureUtils(): MeasureUtils; + + + /** + * Defining keyframe animation function. + * + * @param { KeyframeAnimateParam } param - overall animation parameters + * @param { Array<KeyframeState> } keyframes - all keyframe states + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + keyframeAnimateTo(param: KeyframeAnimateParam, keyframes: Array<KeyframeState>): void; + + /** + * Define animation functions for immediate distribution. + * + * @param { AnimateParam } param - Set animation effect parameters. + * @param { Callback<void> } event - Specify the closure function that displays dynamic effects, + * and the system will automatically insert transition animations for state changes caused by the closure function. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + animateToImmediately(param: AnimateParam, event: Callback<void>): void; + + /** + * Get FrameNode by id. + * + * @param { string } id - The id of FrameNode. + * @returns { FrameNode | null } The instance of FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getFrameNodeById(id: string): FrameNode | null; + + /** + * Get the FrameNode attached to current window by id. + * + * @param { string } id - The id of FrameNode. + * @returns { FrameNode | null } The instance of FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getAttachedFrameNodeById(id: string): FrameNode | null; + + /** + * Get FrameNode by uniqueId. + * + * @param { number } id - The uniqueId of the FrameNode. + * @returns { FrameNode | null } - The FrameNode with the target uniqueId, or null if the frameNode is not existed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getFrameNodeByUniqueId(id: number): FrameNode | null; + + /** + * Get page information of the frameNode with uniqueId. + * + * @param { number } id - The uniqueId of the target FrameNode. + * @returns { PageInfo } - The page information of the frameNode with the target uniqueId, includes + * navDestination and router page information. If the frame node does not have navDestination and + * router page information, it will return an empty object. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getPageInfoByUniqueId(id: number): PageInfo; + + /** + * Get navigation information of the frameNode with uniqueId. + * + * @param { number } id - The uniqueId of the target FrameNode. + * @returns { observer.NavigationInfo | undefined } - The navigation information of the frameNode with the + * target uniqueId, or undefined if the frameNode is not existed or does not have navigation information. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getNavigationInfoByUniqueId(id: number): observer.NavigationInfo | undefined; + + /** + * Get FocusController. + * @returns { FocusController } the FocusController + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + getFocusController(): FocusController; + + /** + * Get object cursor controller. + * + * @returns { CursorController } object cursor controller. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getCursorController(): CursorController; + + /** + * Get object context menu controller. + * + * @returns { ContextMenuController } object context menu controller. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getContextMenuController(): ContextMenuController; + + /** + * Get ComponentSnapshot. + * @returns { ComponentSnapshot } the ComponentSnapshot + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + getComponentSnapshot(): ComponentSnapshot; + + /** + * Converts a value in vp units to a value in px. + * @param { number } value + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + vp2px(value: number): number; + + /** + * Converts a value in px units to a value in vp. + * @param { number } value + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + px2vp(value: number): number; + + /** + * Converts a value in fp units to a value in px. + * @param { number } value + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + fp2px(value: number): number; + + /** + * Converts a value in px units to a value in fp. + * @param { number } value + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + px2fp(value: number): number; + + /** + * Converts a value in lpx units to a value in px. + * @param { number } value + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + lpx2px(value: number): number; + + /** + * Converts a value in px units to a value in lpx. + * @param { number } value + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + px2lpx(value: number): number; + + /** + * Get current LocalStorage shared from stage. + * + * @returns { LocalStorage | undefined } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 12 + */ + getSharedLocalStorage(): LocalStorage | undefined; + + /** + * Obtains context of the ability. + * + * @returns { Context | undefined } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 12 + */ + getHostContext(): Context | undefined; + + /** + * Dynamic dimming. + * + * @param { string } id - The id of FrameNode. + * @param { number } value - Compared to the original level of dimming.value range [0,1], + * set values less than 0 to 0 and values greater than 1 to 1. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + setDynamicDimming(id: string, value: number): void; + + /** + * Get the name of current window. + * + * @returns { string | undefined } The name of current window, or undefined if the window doesn't exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getWindowName(): string | undefined; + + /** + * Get the width breakpoint of current window. + * + * @returns { WidthBreakpoint } The width breakpoint of current window. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 13 + */ + getWindowWidthBreakpoint(): WidthBreakpoint; + + /** + * Get the height breakpoint of current window. + * + * @returns { HeightBreakpoint } The height breakpoint of current window. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 13 + */ + getWindowHeightBreakpoint(): HeightBreakpoint; + + /** + * Open the BindSheet. + * + * @param { ComponentContent<T> } bindSheetContent - The content of BindSheet. + * @param { SheetOptions } sheetOptions - The options of sheet. + * @param { number } targetId - The uniqueId of the FrameNode to which BindSheet is attached. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 120001 - The bindSheetContent is incorrect. + * @throws { BusinessError } 120002 - The bindSheetContent already exists. + * @throws { BusinessError } 120004 - The targetId does not exist. + * @throws { BusinessError } 120005 - The node of targetId is not in the component tree. + * @throws { BusinessError } 120006 - The node of targetId is not a child of the page node or NavDestination node. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + openBindSheet<T extends Object>(bindSheetContent: ComponentContent<T>, sheetOptions?: SheetOptions, targetId?: number): Promise<void>; + + /** + * Update the BindSheet with sheetOptions. + * + * @param { ComponentContent<T> } bindSheetContent - The content of BindSheet. + * @param { SheetOptions } sheetOptions - The update options of sheet. + * @param { boolean } partialUpdate - If true, only the specified properties in the sheetOptions are updated, + * otherwise the rest of the properties are overwritten with the default values. + * Default value is false. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 120001 - The bindSheetContent is incorrect. + * @throws { BusinessError } 120003 - The bindSheetContent cannot be found. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + updateBindSheet<T extends Object>(bindSheetContent: ComponentContent<T>, sheetOptions: SheetOptions, partialUpdate?: boolean): Promise<void>; + + /** + * Close the BindSheet. + * + * @param { ComponentContent<T> } bindSheetContent - The content of BindSheet. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 120001 - The bindSheetContent is incorrect. + * @throws { BusinessError } 120003 - The bindSheetContent cannot be found. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + closeBindSheet<T extends Object>(bindSheetContent: ComponentContent<T>): Promise<void>; + + /** + * Post a frame callback to run on the next frame. + * + * @param { FrameCallback } frameCallback - The frame callback to run on the next frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + postFrameCallback(frameCallback: FrameCallback): void; + + /** + * Post a frame callback to run on the next frame after the specified delay. + * + * @param { FrameCallback } frameCallback - The frame callback to run on the next frame. + * @param { number } delayTime - The delay time in milliseconds, + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + postDelayedFrameCallback(frameCallback: FrameCallback, delayTime: number): void; + + /** + * Require DynamicSyncScene by id. + * + * @param { string } id - The id of DynamicSyncScene. + * @returns { Array<DynamicSyncScene>} The instance of SwiperDynamicSyncScene. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + requireDynamicSyncScene(id: string): Array<DynamicSyncScene>; + + + /** + * Clear the cache generated by using $r/$rawfile to retrieve resources. This cache is used to accelerate the process + * of repeatedly loading resources. Clearing this cache may slow down the loading speed of resources during page overload. + * + * @throws { BusinessError } 202 - The caller is not a system application. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 13 + */ + clearResourceCache(): void; + + /** + * Checks whether current font scale follows the system. + * + * @returns { boolean } Returns true if current font scale follows the system; returns false otherwise. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 13 + */ + isFollowingSystemFontScale(): boolean; + + /** + * Get the max font scale. + * + * @returns { number } The max font scale. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 13 + */ + getMaxFontScale(): number; + +} + +/** + * Enum of KeyBoardAvoidMethodType + * + * @enum { number } KeyBoardAvoidMethodType + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + +export const enum KeyboardAvoidMode { + /** + * Default Type, offset the whole page when keyBoard height changed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + OFFSET = 0, + + /** + * Resize Type, resize the page when keyBoard height changed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + RESIZE = 1, + + /** + * Offset Type, offset the whole page when caret position or keyboard height changed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + OFFSET_WITH_CARET = 2, + + /** + * Resize Type, resize the whole page when when caret position or keyboard height changed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + RESIZE_WITH_CARET = 3, + + /** + * None Type, nothing to do when keyboard height changed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + NONE = 4, +} + +/** + * Enum of SwiperDynamicSyncSceneType + * + * @enum { number } SwiperDynamicSyncSceneType + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ +export const enum SwiperDynamicSyncSceneType { + /** + * Scene type is GESTURE. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + GESTURE = 0, + + /** + * Scene type is ANIMATION. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + ANIMATION = 1 +} + +/** + * Enum of scene type for Marquee + * + * @enum { number } MarqueeDynamicSyncSceneType + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 13 + */ +export const enum MarqueeDynamicSyncSceneType { + /** + * Scene type is ANIMATION. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 13 + */ + ANIMATION = 1 +} diff --git a/api/@ohos.arkui.UIContext.d.ts b/api/@ohos.arkui.UIContext.d.ts old mode 100644 new mode 100755 index 158ba31532d98d96d39d0153beb9195bd22df3d6..c4a1bba7a90d72700fd302caf4f7688f811e1a8d --- a/api/@ohos.arkui.UIContext.d.ts +++ b/api/@ohos.arkui.UIContext.d.ts @@ -46,7 +46,12 @@ import type pointer from './@ohos.multimodalInput.pointer'; */ /** * class Font - * + * + * <p><strong>NOTE</strong>: + * <br>You must first use getFont() in UIContext to obtain a Font instance, + * and then call the APIs using the obtained instance. + * </p> + * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -80,6 +85,11 @@ export class Font { */ /** * Gets a list of fonts supported by system. + * + * <p><strong>NOTE</strong>: + * <br>This API takes effect only on 2-in-1 devices. + * </p> + * * @returns { Array<string> } A list of font names * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -202,10 +212,10 @@ export class UIInspector { */ export class Router { /** - * Navigates to a specified page in the application based on the page URL and parameters. + * Navigates to a specified page in the application. * - * @param { router.RouterOptions } options - Options. - * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @param { router.RouterOptions } options - Page routing parameters. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -218,10 +228,10 @@ export class Router { * @since 10 */ /** - * Navigates to a specified page in the application based on the page URL and parameters. + * Navigates to a specified page in the application. * - * @param { router.RouterOptions } options - Options. - * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @param { router.RouterOptions } options - Page routing parameters. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -237,10 +247,10 @@ export class Router { pushUrl(options: router.RouterOptions, callback: AsyncCallback<void>): void; /** - * Navigates to a specified page in the application based on the page URL and parameters. + * Navigates to a specified page in the application. This API uses a promise to return the result. * - * @param { router.RouterOptions } options - Options. - * @returns { Promise<void> } the promise returned by the function. + * @param { router.RouterOptions } options - Page routing parameters. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -253,10 +263,10 @@ export class Router { * @since 10 */ /** - * Navigates to a specified page in the application based on the page URL and parameters. + * Navigates to a specified page in the application. This API uses a promise to return the result. * - * @param { router.RouterOptions } options - Options. - * @returns { Promise<void> } the promise returned by the function. + * @param { router.RouterOptions } options - Page routing parameters. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -272,11 +282,11 @@ export class Router { pushUrl(options: router.RouterOptions): Promise<void>; /** - * Navigates to a specified page in the application based on the page URL and parameters. + * Navigates to a specified page in the application. * - * @param { router.RouterOptions } options - Options. - * @param { router.RouterMode } mode - RouterMode. - * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @param { router.RouterOptions } options - Page routing parameters. + * @param { router.RouterMode } mode - Routing mode. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -289,11 +299,11 @@ export class Router { * @since 10 */ /** - * Navigates to a specified page in the application based on the page URL and parameters. + * Navigates to a specified page in the application. * - * @param { router.RouterOptions } options - Options. - * @param { router.RouterMode } mode - RouterMode. - * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @param { router.RouterOptions } options - Page routing parameters. + * @param { router.RouterMode } mode - Routing mode. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -309,11 +319,11 @@ export class Router { pushUrl(options: router.RouterOptions, mode: router.RouterMode, callback: AsyncCallback<void>): void; /** - * Navigates to a specified page in the application based on the page URL and parameters. + * Navigates to a specified page in the application. This API uses a promise to return the result. * - * @param { router.RouterOptions } options - Options. - * @param { router.RouterMode } mode - RouterMode. - * @returns { Promise<void> } the promise returned by the function. + * @param { router.RouterOptions } options - Page routing parameters. + * @param { router.RouterMode } mode - Routing mode. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -326,11 +336,11 @@ export class Router { * @since 10 */ /** - * Navigates to a specified page in the application based on the page URL and parameters. + * Navigates to a specified page in the application. This API uses a promise to return the result. * - * @param { router.RouterOptions } options - Options. - * @param { router.RouterMode } mode - RouterMode. - * @returns { Promise<void> } the promise returned by the function. + * @param { router.RouterOptions } options - Page routing parameters. + * @param { router.RouterMode } mode - Routing mode. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -484,7 +494,11 @@ export class Router { /** * Returns to the previous page or a specified page. * - * @param { router.RouterOptions } options - Options. + * @param { router.RouterOptions } options - Description of the page. + * <br>The **url** parameter indicates the URL of the page to return to. + * <br>If the specified page does not exist in the page stack, the application does not respond. + * <br>If no URL is set, the application returns to the previous page, and the page is not rebuilt. + * <br>The page in the page stack is not reclaimed. It will be reclaimed after being popped up. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 @@ -492,7 +506,11 @@ export class Router { /** * Returns to the previous page or a specified page. * - * @param { router.RouterOptions } options - Options. + * @param { router.RouterOptions } options - Description of the page. + * <br>The **url** parameter indicates the URL of the page to return to. + * <br>If the specified page does not exist in the page stack, the application does not respond. + * <br>If no URL is set, the application returns to the previous page, and the page is not rebuilt. + * <br>The page in the page stack is not reclaimed. It will be reclaimed after being popped up. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -503,8 +521,8 @@ export class Router { /** * Returns to the specified page. * - * @param { number } index - index of page. - * @param { Object } [params] - params of page. + * @param { number } index - Index of the target page to navigate to. + * @param { Object } [params] - Parameters carried when returning to the page. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -551,7 +569,7 @@ export class Router { /** * Obtains information about the current page state. * - * @returns { router.RouterState } Page state. + * @returns { router.RouterState } Page routing state. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 @@ -559,7 +577,7 @@ export class Router { /** * Obtains information about the current page state. * - * @returns { router.RouterState } Page state. + * @returns { router.RouterState } Page routing state. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -657,9 +675,9 @@ export class Router { getParams(): Object; /** - * Navigates to a specified page in the application based on the page URL and parameters. - * @param { router.NamedRouterOptions } options - Options. - * @param { AsyncCallback<void> } callback - the callback of pushNamedRoute. + * Navigates to a page using the named route. This API uses a promise to return the result. + * @param { router.NamedRouterOptions } options - Page routing parameters. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -672,9 +690,9 @@ export class Router { * @since 10 */ /** - * Navigates to a specified page in the application based on the page URL and parameters. - * @param { router.NamedRouterOptions } options - Options. - * @param { AsyncCallback<void> } callback - the callback of pushNamedRoute. + * Navigates to a page using the named route. This API uses a promise to return the result. + * @param { router.NamedRouterOptions } options - Page routing parameters. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -690,9 +708,9 @@ export class Router { pushNamedRoute(options: router.NamedRouterOptions, callback: AsyncCallback<void>): void; /** - * Navigates to a specified page in the application based on the page URL and parameters. - * @param { router.NamedRouterOptions } options - Options. - * @returns { Promise<void> } the promise returned by the function. + * Navigates to a page using the named route. This API uses a promise to return the result. + * @param { router.NamedRouterOptions } options - Page routing parameters. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -705,9 +723,9 @@ export class Router { * @since 10 */ /** - * Navigates to a specified page in the application based on the page URL and parameters. - * @param { router.NamedRouterOptions } options - Options. - * @returns { Promise<void> } the promise returned by the function. + * Navigates to a page using the named route. This API uses a promise to return the result. + * @param { router.NamedRouterOptions } options - Page routing parameters. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -723,10 +741,10 @@ export class Router { pushNamedRoute(options: router.NamedRouterOptions): Promise<void>; /** - * Navigates to a specified page in the application based on the page URL and parameters. - * @param { router.NamedRouterOptions } options - Options. - * @param { router.RouterMode } mode - RouterMode. - * @param { AsyncCallback<void> } callback - the callback of pushNamedRoute. + * Navigates to a page using the named route. This API uses a promise to return the result. + * @param { router.NamedRouterOptions } options - Page routing parameters. + * @param { router.RouterMode } mode - Routing mode. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -739,10 +757,10 @@ export class Router { * @since 10 */ /** - * Navigates to a specified page in the application based on the page URL and parameters. - * @param { router.NamedRouterOptions } options - Options. - * @param { router.RouterMode } mode - RouterMode. - * @param { AsyncCallback<void> } callback - the callback of pushNamedRoute. + * Navigates to a page using the named route. This API uses a promise to return the result. + * @param { router.NamedRouterOptions } options - Page routing parameters. + * @param { router.RouterMode } mode - Routing mode. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -758,10 +776,10 @@ export class Router { pushNamedRoute(options: router.NamedRouterOptions, mode: router.RouterMode, callback: AsyncCallback<void>): void; /** - * Navigates to a specified page in the application based on the page URL and parameters. - * @param { router.NamedRouterOptions } options - Options. - * @param { router.RouterMode } mode - RouterMode. - * @returns { Promise<void> } the promise returned by the function. + * Navigates to a page using the named route. This API uses a promise to return the result. + * @param { router.NamedRouterOptions } options - Page routing parameters. + * @param { router.RouterMode } mode - Routing mode. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -774,10 +792,10 @@ export class Router { * @since 10 */ /** - * Navigates to a specified page in the application based on the page URL and parameters. - * @param { router.NamedRouterOptions } options - Options. - * @param { router.RouterMode } mode - RouterMode. - * @returns { Promise<void> } the promise returned by the function. + * Navigates to a page using the named route. This API uses a promise to return the result. + * @param { router.NamedRouterOptions } options - Page routing parameters. + * @param { router.RouterMode } mode - Routing mode. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -989,9 +1007,9 @@ export class PromptAction { * @since 10 */ /** - * Displays the notification text. + * Shows a toast in the given settings. * - * @param { promptAction.ShowToastOptions } options - Options. + * @param { promptAction.ShowToastOptions } options - Toast options. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -1030,6 +1048,7 @@ export class PromptAction { * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 103401 - Cannot find the toast. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1067,10 +1086,11 @@ export class PromptAction { * @since 11 */ /** - * Displays the dialog box. + * Shows a dialog box in the given settings. This API uses an asynchronous callback to return the result. * - * @param { promptAction.ShowDialogOptions } options - Options. - * @param { AsyncCallback<promptAction.ShowDialogSuccessResponse> } callback - the callback of showDialog. + * @param { promptAction.ShowDialogOptions } options - Dialog box options. + * @param { AsyncCallback<promptAction.ShowDialogSuccessResponse> } callback - Callback used to return the dialog + * box response result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -1098,10 +1118,11 @@ export class PromptAction { * @since 10 */ /** - * Displays the dialog box. + * Shows a dialog box. This API uses a promise to return the result. * - * @param { promptAction.ShowDialogOptions } options - Options. - * @returns { Promise<promptAction.ShowDialogSuccessResponse> } the promise returned by the function. + * @param { promptAction.ShowDialogOptions } options - Dialog box options. + * @returns { Promise<promptAction.ShowDialogSuccessResponse> } Promise used to return the dialog + * box response result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -1115,10 +1136,11 @@ export class PromptAction { showDialog(options: promptAction.ShowDialogOptions): Promise<promptAction.ShowDialogSuccessResponse>; /** - * Displays the menu. + * Shows an action menu in the given settings. This API uses an asynchronous callback to return the result. * - * @param { promptAction.ActionMenuOptions } options - Options. - * @param { promptAction.ActionMenuSuccessResponse } callback - the callback of showActionMenu. + * @param { promptAction.ActionMenuOptions } options - Action menu options. + * @param { promptAction.ActionMenuSuccessResponse } callback - Callback used to return the action menu + * response result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -1133,10 +1155,11 @@ export class PromptAction { showActionMenu(options: promptAction.ActionMenuOptions, callback: promptAction.ActionMenuSuccessResponse): void; /** - * Displays the menu. + * Shows an action menu in the given settings. This API uses an asynchronous callback to return the result. * - * @param { promptAction.ActionMenuOptions } options - Options. - * @param { AsyncCallback<promptAction.ActionMenuSuccessResponse> } callback - the callback of showActionMenu. + * @param { promptAction.ActionMenuOptions } options - Action menu options. + * @param { AsyncCallback<promptAction.ActionMenuSuccessResponse> } callback - Callback used to return the action + * menu response result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -1164,10 +1187,11 @@ export class PromptAction { * @since 10 */ /** - * Displays the menu. + * Shows an action menu in the given settings. This API uses an asynchronous callback to return the result. * - * @param { promptAction.ActionMenuOptions } options - Options. - * @returns { Promise<promptAction.ActionMenuSuccessResponse> } callback - the callback of showActionMenu. + * @param { promptAction.ActionMenuOptions } options - Action menu options. + * @returns { Promise<promptAction.ActionMenuSuccessResponse> } callback - Promise used to return the action + * menu response result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -1190,8 +1214,8 @@ export class PromptAction { * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. - * @throws { BusinessError } 103301 - the ComponentContent is incorrect. - * @throws { BusinessError } 103302 - Dialog content already exists. + * @throws { BusinessError } 103301 - Dialog content error. The ComponentContent is incorrect. + * @throws { BusinessError } 103302 - Dialog content already exist. The ComponentContent has already been opened. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1202,6 +1226,8 @@ export class PromptAction { /** * Open the custom dialog with frameNode and controller. * + * isModal = true and showInSubWindow = true cannot be used at the same time. + * * @param { ComponentContent<T> } dialogContent - the content of custom dialog. * @param { promptAction.DialogController } controller - Dialog controller. * @param { promptAction.BaseDialogOptions } options - Options. @@ -1210,8 +1236,8 @@ export class PromptAction { * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. - * @throws { BusinessError } 103301 - the ComponentContent is incorrect. - * @throws { BusinessError } 103302 - Dialog content already exists. + * @throws { BusinessError } 103301 - Dialog content error. The ComponentContent is incorrect. + * @throws { BusinessError } 103302 - Dialog content already exist. The ComponentContent has already been opened. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1225,13 +1251,14 @@ export class PromptAction { * * @param { ComponentContent<T> } dialogContent - the content of custom dialog. * @param { promptAction.BaseDialogOptions } options - Options. + * only alignment, offset, autoCancel, and maskColor can be updated. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. - * @throws { BusinessError } 103301 - the ComponentContent is incorrect. - * @throws { BusinessError } 103303 - the ComponentContent cannot be found. + * @throws { BusinessError } 103301 - Dialog content error. The ComponentContent is incorrect. + * @throws { BusinessError } 103303 - Dialog content not found. The ComponentContent cannot be found. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1240,26 +1267,28 @@ export class PromptAction { updateCustomDialog<T extends Object>(dialogContent: ComponentContent<T>, options: promptAction.BaseDialogOptions): Promise<void>; /** - * Close the custom dialog with frameNode. + * Closes a custom dialog box corresponding to dialogContent. This API uses a promise to return the result. * - * @param { ComponentContent<T> } dialogContent - the content of custom dialog. - * @returns { Promise<void> } the promise returned by the function. + * @param { ComponentContent<T> } dialogContent - Content of the custom dialog box. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. - * @throws { BusinessError } 103301 - the ComponentContent is incorrect. - * @throws { BusinessError } 103303 - the ComponentContent cannot be found. + * @throws { BusinessError } 103301 - Dialog content error. The ComponentContent is incorrect. + * @throws { BusinessError } 103303 - Dialog content not found. The ComponentContent cannot be found. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 12 - */ + */ closeCustomDialog<T extends Object>(dialogContent: ComponentContent<T>): Promise<void>; /** * Open the custom dialog. * + * isModal = true and showInSubWindow = true cannot be used at the same time. + * * @param { promptAction.CustomDialogOptions } options - Options. * @returns { Promise<number> } return the dialog id that will be used by closeCustomDialog. * @throws { BusinessError } 401 - Parameter error. Possible causes: @@ -1277,6 +1306,8 @@ export class PromptAction { /** * Present the custom dialog with controller. * + * isModal = true and showInSubWindow = true cannot be used at the same time. + * * @param { CustomBuilder | CustomBuilderWithId } builder - Dialog builder. * @param { promptAction.DialogController } controller - Dialog controller. * @param { promptAction.DialogOptions } options - Options. @@ -1319,7 +1350,7 @@ export class PromptAction { * @atomicservice * @since 18 */ - getTopOrder(): LevelOrder + getTopOrder(): LevelOrder; /** * Get order value of bottom dialog. @@ -1330,7 +1361,7 @@ export class PromptAction { * @atomicservice * @since 18 */ - getBottomOrder(): LevelOrder + getBottomOrder(): LevelOrder; /** * Open popup with frameNode. @@ -1343,10 +1374,10 @@ export class PromptAction { * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. - * @throws { BusinessError } 103301 - The content is incorrect. - * @throws { BusinessError } 103302 - The content already exists. - * @throws { BusinessError } 103304 - The target does not exist. - * @throws { BusinessError } 103305 - The target node is not in the component tree. + * @throws { BusinessError } 103301 - The ComponentContent is incorrect. + * @throws { BusinessError } 103302 - The ComponentContent already exists. + * @throws { BusinessError } 103304 - The targetId does not exist. + * @throws { BusinessError } 103305 - The node of targetId is not in the component tree. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1367,8 +1398,8 @@ export class PromptAction { * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. - * @throws { BusinessError } 103301 - the ComponentContent is incorrect. - * @throws { BusinessError } 103303 - the ComponentContent cannot be found. + * @throws { BusinessError } 103301 - The ComponentContent is incorrect. + * @throws { BusinessError } 103303 - The ComponentContent cannot be found. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1385,8 +1416,8 @@ export class PromptAction { * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. - * @throws { BusinessError } 103301 - the ComponentContent is incorrect. - * @throws { BusinessError } 103303 - the ComponentContent cannot be found. + * @throws { BusinessError } 103301 - The ComponentContent is incorrect. + * @throws { BusinessError } 103303 - The ComponentContent cannot be found. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1405,10 +1436,10 @@ export class PromptAction { * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. - * @throws { BusinessError } 103301 - The content is incorrect. - * @throws { BusinessError } 103302 - The content already exists. - * @throws { BusinessError } 103304 - The target does not exist. - * @throws { BusinessError } 103305 - The target node is not in the component tree. + * @throws { BusinessError } 103301 - The ComponentContent is incorrect. + * @throws { BusinessError } 103302 - The ComponentContent already exists. + * @throws { BusinessError } 103304 - The targetId does not exist. + * @throws { BusinessError } 103305 - The node of targetId is not in the component tree. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1429,8 +1460,8 @@ export class PromptAction { * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. - * @throws { BusinessError } 103301 - the ComponentContent is incorrect. - * @throws { BusinessError } 103303 - the ComponentContent cannot be found. + * @throws { BusinessError } 103301 - The ComponentContent is incorrect. + * @throws { BusinessError } 103303 - The ComponentContent cannot be found. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1447,8 +1478,8 @@ export class PromptAction { * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. - * @throws { BusinessError } 103301 - the ComponentContent is incorrect. - * @throws { BusinessError } 103303 - the ComponentContent cannot be found. + * @throws { BusinessError } 103301 - The ComponentContent is incorrect. + * @throws { BusinessError } 103303 - The ComponentContent cannot be found. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1484,7 +1515,7 @@ declare type ClickEventListenerCallback = (event: ClickEvent, node?: FrameNode) * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare type PanListenerCallback = (event: GestureEvent, current: GestureRecognizer, node?: FrameNode) => void; @@ -1503,6 +1534,45 @@ declare type PanListenerCallback = (event: GestureEvent, current: GestureRecogni */ declare type GestureEventListenerCallback = (event: GestureEvent, node?: FrameNode) => void; +/** + * Defines the type can be used for identiting the node, for the string type, it's the inspector id + * set through .id attribute, and for the number type, it's the unique ID got from the FrameNode by + * getUniqueID method. + * + * @typedef { string | number } NodeIdentity + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare type NodeIdentity = string | number; + +/** + * Defines the callback type used in UIObserver to monitor one specific node's render state. + * + * @typedef { function } NodeRenderStateChangeCallback + * @param { NodeRenderState } state - the node's render state + * @param { FrameNode } [node] - the information of frameNode + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare type NodeRenderStateChangeCallback = (state: NodeRenderState, node?: FrameNode) => void; + +/** + * Defines the callback type used in UIObserver to monitor specific gesture triggered information. + * + * @typedef { function } GestureListenerCallback + * @param { GestureTriggerInfo } info - the gesture details triggered with user interaction + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare type GestureListenerCallback = (info: GestureTriggerInfo) => void; + /** * Defines the PageInfo type. * The value of routerPageInfo indicates the information of the router page, or undefined if the @@ -1564,16 +1634,28 @@ export interface OverlayManagerOptions { * Set whether support backPressed event or not. * * @type { ?boolean } - * @default true + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 + */ + /** + * Set whether support backPressed event or not. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 */ enableBackPressedEvent?: boolean; } /** * Register callbacks to observe ArkUI behavior. + * In the following API examples, you must first use getUIObserver() in UIContext to obtain a UIObserver instance, and + * then call the APIs using the obtained instance. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1581,6 +1663,8 @@ export interface OverlayManagerOptions { */ /** * Register callbacks to observe ArkUI behavior. + * In the following API examples, you must first use getUIObserver() in UIContext to obtain a UIObserver instance, and + * then call the APIs using the obtained instance. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1589,21 +1673,27 @@ export interface OverlayManagerOptions { */ export class UIObserver { /** - * Registers a callback function to be called when the navigation destination is updated. + * Subscribes to status changes of this **NavDestination** component. * - * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. - * @param { object } options - Specify the id of observed navigation. - * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + * @param { 'navDestinationUpdate' } type - Event type. + * The value is fixed at **'navDestinationUpdate'**, which indicates the state change event + * <br>of the **NavDestination** component. + * @param { object } options - ID of the target **NavDestination** component. + * @param { Callback<observer.NavDestinationInfo> } callback - Callback used to return the current + * <br>state of the **NavDestination** component. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Registers a callback function to be called when the navigation destination is updated. + * Subscribes to status changes of this **NavDestination** component. * - * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. - * @param { object } options - The options object. - * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + * @param { 'navDestinationUpdate' } type - Event type. + * The value is fixed at **'navDestinationUpdate'**, which indicates the state change event + * <br>of the **NavDestination** component. + * @param { object } options - ID of the target **NavDestination** component. + * @param { Callback<observer.NavDestinationInfo> } callback - Callback used to return the current + * <br>state of the **NavDestination** component. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1637,19 +1727,25 @@ export class UIObserver { off(type: 'navDestinationUpdate', options: { navigationId: ResourceStr }, callback?: Callback<observer.NavDestinationInfo>): void; /** - * Registers a callback function to be called when the navigation destination is updated. + * Subscribes to status changes of this **NavDestination** component. * - * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. - * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + * @param { 'navDestinationUpdate' } type - Event type. + * The value is fixed at **'navDestinationUpdate'**, which indicates the state change event of + * <br>the **NavDestination** component. + * @param { Callback<observer.NavDestinationInfo> } callback - Callback used to return the current state of + * <brthe **NavDestination** component. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Registers a callback function to be called when the navigation destination is updated. + * Subscribes to status changes of this **NavDestination** component. * - * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. - * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + * @param { 'navDestinationUpdate' } type - Event type. + * The value is fixed at **'navDestinationUpdate'**, + * <br>which indicates the state change event of the **NavDestination** component. + * @param { Callback<observer.NavDestinationInfo> } callback - Callback used to return the current state of + * <br>the **NavDestination** component. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1680,6 +1776,33 @@ export class UIObserver { */ off(type: 'navDestinationUpdate', callback?: Callback<observer.NavDestinationInfo>): void; + /** + * Registers a callback function to be called when the navigation destination is updated. + * + * @param { 'navDestinationUpdateByUniqueId' } type - The type of event to listen for. Must be 'navDestinationUpdateByUniqueId'. + * @param { number } navigationUniqueId - The uniqueId of the navigation. + * @param { Callback<observer.NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + on(type: 'navDestinationUpdateByUniqueId', navigationUniqueId: number, callback: Callback<observer.NavDestinationInfo>): void; + + /** + * Removes a callback function that was previously registered with `on()`. + * + * @param { 'navDestinationUpdateByUniqueId'} type - The type of event to remove the listener for. Must be 'navDestinationUpdateByUniqueId'. + * @param { number } navigationUniqueId - The uniqueId of the navigation. + * @param { Callback<observer.NavDestinationInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + * will be removed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + off(type: 'navDestinationUpdateByUniqueId', navigationUniqueId: number, callback?: Callback<observer.NavDestinationInfo>): void; + /** * Registers a callback function to be called when the scroll event start or stop. * @@ -1733,19 +1856,21 @@ export class UIObserver { off(type: 'scrollEvent', callback?: Callback<observer.ScrollEventInfo>): void; /** - * Registers a callback function to be called when the router page in a ui context is updated. + * Unsubscribes to state changes of the page in the router. * - * @param { 'routerPageUpdate' } type - The type of event to listen for. Must be 'routerPageUpdate'. - * @param { Callback<observer.RouterPageInfo> } callback - The callback function to be called when the router page is updated. + * @param { 'routerPageUpdate' } type - Event type. + * <br>The value is fixed at 'routerPageUpdate', which indicates the state change event of the page in the router. + * @param { Callback<observer.RouterPageInfo> } callback - Callback to be unregistered. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Registers a callback function to be called when the router page in a ui context is updated. + * Unsubscribes to state changes of the page in the router. * - * @param { 'routerPageUpdate' } type - The type of event to listen for. Must be 'routerPageUpdate'. - * @param { Callback<observer.RouterPageInfo> } callback - The callback function to be called when the router page is updated. + * @param { 'routerPageUpdate' } type - Event type. + * <br>The value is fixed at 'routerPageUpdate', which indicates the state change event of the page in the router. + * @param { Callback<observer.RouterPageInfo> } callback - Callback to be unregistered. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -2032,7 +2157,7 @@ export class UIObserver { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ on(type: 'beforePanStart', callback: PanListenerCallback): void; @@ -2045,7 +2170,7 @@ export class UIObserver { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ off(type: 'beforePanStart', callback?: PanListenerCallback): void; @@ -2058,7 +2183,7 @@ export class UIObserver { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ on(type: 'beforePanEnd', callback: PanListenerCallback): void; @@ -2071,7 +2196,7 @@ export class UIObserver { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ off(type: 'beforePanEnd', callback?: PanListenerCallback): void; @@ -2084,7 +2209,7 @@ export class UIObserver { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ on(type: 'afterPanStart', callback: PanListenerCallback): void; @@ -2097,7 +2222,7 @@ export class UIObserver { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ off(type: 'afterPanStart', callback?: PanListenerCallback): void; @@ -2110,7 +2235,7 @@ export class UIObserver { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ on(type: 'afterPanEnd', callback: PanListenerCallback): void; @@ -2123,7 +2248,7 @@ export class UIObserver { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ off(type: 'afterPanEnd', callback?: PanListenerCallback): void; @@ -2180,6 +2305,82 @@ export class UIObserver { * @since 12 */ off(type: 'tabContentUpdate', callback?: Callback<observer.TabContentInfo>): void; + + /** + * Registers a callback function to be called when the specific node's render state changed. + * This callback will be executed once immediately when the register is successful. + * [Notes]: + * 1. Be aware of the limit on the number of nodes: + * For performance considerations, the system has imposed a limit on the number of + * nodes that can be registered for monitoring in a single UI instance, exception will be thrown + * if overmuch. Please use this interface with caution. + * 2. Understanding scenarios where notifications may not occur: + * In general, within container components that have view or page switching functionality, + * when a view or page within the screen is moved outside the screen, the components previously + * within the screen should be removed from the render tree and should receive a RENDER_OUT + * notification. However, this is not always the case, as some scenarios involve views or components + * being moved outside the screen's display range without triggering a RENDER_OUT notification. + * For example, some components with caching capabilities may affect this behavior, and swiper is one + * such component. The cacheCount property of the swiper component allows you to force, via its second + * parameter isShow, that even if the current page is moved outside the display range, it remains in the + * render tree. This can be useful in scenarios where multiple pages are displayed on the screen simultaneously. + * Another example is scrolling components like list or scroll, where their internal content remains in the + * render tree even if it is scrolled outside the screen's display range, provided that lazyForEach/Repeat is + * not used. As a result, there will be no changes to the render state. Once you understand the principles + * behind the triggers for render state changes, these scenarios will become easier to comprehend. + * + * @param { 'nodeRenderState' } type - The type of event to listen for. + * @param { NodeIdentity } nodeIdentity - The identity of the target node + * @param { NodeRenderStateChangeCallback } callback - The callback function to be called + * when the clickEvent will be trigger or after. + * @throws { BusinessError } 161001 - The count of nodes monitoring render state is over the limitation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + on(type: 'nodeRenderState', nodeIdentity: NodeIdentity, callback: NodeRenderStateChangeCallback): void; + + /** + * Removes a callback function to be called before tapGesture is called. + * + * @param { 'nodeRenderState' } type - The type of event to remove the listener for. + * @param { NodeIdentity } nodeIdentity - The identity of the target node + * @param { NodeRenderStateChangeCallback } [callback] - The callback function to remove. If not provided, + * all callbacks for the given event type will be removed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + off(type: 'nodeRenderState', nodeIdentity: NodeIdentity, callback?: NodeRenderStateChangeCallback): void; + + /** + * Registers a callback to monitor the gesture trigger information. + * + * @param { GestureListenerType } type - The type of gesture to monitor. + * @param { GestureObserverConfigs } option - The options when bind the global listener. + * @param { GestureListenerCallback } callback - The callback function to be called when any gesture's state + * is updated. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + addGlobalGestureListener(type: GestureListenerType, + option: GestureObserverConfigs, callback: GestureListenerCallback): void; + /** + * Removes a callback function for one gesture listener type. + * + * @param { GestureListenerType } type - The type of event to remove the listener for. + * @param { GestureListenerCallback } [callback] - The callback function to be removed. If not provided, + * all callbacks for the given gesture type will be removed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + removeGlobalGestureListener(type: GestureListenerType, callback?: GestureListenerCallback): void; } /** @@ -2227,10 +2428,21 @@ export class ComponentUtils { */ export class OverlayManager { /** - * Add the ComponentContent to the OverlayManager. + * Adds a specified ComponentContent node to the OverlayManager. + * + * @param { ComponentContent } content - Content to add to the new node on the OverlayManager. + * <p><strong>NOTE</strong>: + * <br>By default, the new node is centered on the page and stacked according to its stacking level. + * </p> + * + * @param { number } [ index ] - Stacking level of the new node on the OverlayManager. + * <p><strong>NOTE</strong>: + * <br>If the value is greater than or equal to 0, a larger value indicates a higher stacking level; for those that + * have the same index, the one that is added at a later time has a higher stacking level. If the value is less than + * 0 or is null or undefined, the ComponentContent node is added at the highest level by default. If the same + * ComponentContent node is added multiple times, only the last added one is retained. + * </p> * - * @param { ComponentContent } content - The content will be added to the OverlayManager. - * @param { number } [ index ] - The index at which to add the ComponentContent. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -2239,10 +2451,16 @@ export class OverlayManager { addComponentContent(content: ComponentContent, index?: number): void; /** - * Add the ComponentContent to the OverlayManager with order. + * Creates a floating layer node with the specified display order. + * This API allows you to define the stacking order of the nodes when they are created. * - * @param { ComponentContent } content - The content will be added to the OverlayManager. - * @param { LevelOrder } [ levelOrder ] - The display order of the ComponentContent. + * @param { ComponentContent } content - Content to add to the new node on the OverlayManager. + * <p><strong>NOTE</strong>: + * <br>By default, the new node is centered on the page and stacked according to its stacking level. + * </p> + * + * @param { LevelOrder } [ levelOrder ] - The display order of the ComponentContDisplay order of the new floating + * layer node, default is LevelOrder.clamp(0) * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -2251,9 +2469,9 @@ export class OverlayManager { addComponentContentWithOrder(content: ComponentContent, levelOrder?: LevelOrder): void; /** - * Remove the ComponentContent from the OverlayManager. + * Removes a specified ComponentContent node from the OverlayManager * - * @param { ComponentContent } content - The content will be removed from the OverlayManager. + * @param { ComponentContent } content - Content to remove from the OverlayManager. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -2410,6 +2628,82 @@ export interface AtomicServiceBar { getBarRect(): Frame; } +/** + * The information when one gesture specific callback is triggered. + * + * @interface GestureTriggerInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface GestureTriggerInfo { + /** + * The gesture event object. + * + * @type { GestureEvent } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + event: GestureEvent; + /** + * The gesture recognizer object. You can obtain the detailed information of the gesture from it, + * but please do not keep this object locally, as it might be unavailable when the node is released. + * + * @type { GestureRecognizer } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + current: GestureRecognizer; + /** + * The gesture action callback phase. + * + * @type { GestureActionPhase } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + currentPhase: GestureActionPhase; + /** + * The node which the gesture is being triggered on. + * + * @type { ?FrameNode } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + node?: FrameNode; +} + +/** + * The observer options for global gesture listener. + * + * @interface GestureObserverConfigs + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface GestureObserverConfigs { + /** + * The gesture callback phases want to monitor. Only the specific action phases can be notified when the gesture is triggered. + * If empty array provided, the register will has no any effect. + * + * @type { Array<GestureActionPhase> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + actionPhases: Array<GestureActionPhase>; +} + /** * Represents a dynamic synchronization scene. * @@ -2694,10 +2988,38 @@ export class DragController { * @since 15 */ cancelDataLoading(key: string): void; + + /** + * Sets whether to enable the disallow badge icon show. + * + * Typically, when a component can receive or process data dragged by the user, or when it declares to the + * system that data should be processed in COPY way by returning DragBehavior.COPY, the system will display + * a plus sign together with the data number on the upper-left corner of the dragged object; if returning + * DragBehavior.MOVE to the system to declare that data should be processed in CUT way, the system will only + * display the data number on the upper-left corner of the dragged object. + * + * In some cases, when the system determines or the component explicitly declares that it cannot handle the + * data that the user is dragging, the system displays a badge icon in the same way as it does for DragBehavior.MOVE. + * So if you want to show the more clearly status, you can call this method on the UI instance in advance to force + * the system to display a clear prohibition icon on the upper left corner in such cases, and the user can clearly + * know that data cannot be dropped here. + * + * @param { boolean } enabled - Indicating enable the disallow status showing or not. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + enableDropDisallowedBadge(enabled: boolean): void; } /** * class MeasureUtils + * + * <p><strong>NOTE</strong>: + * <br>You must first use getMeasureUtils() in UIContext to obtain a MeasureUtils instance, + * and then call the APIs using the obtained instance. + * </p> + * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -2708,7 +3030,7 @@ export class MeasureUtils { * Obtains the width of the specified text in a single line layout. * * @param { MeasureOptions } options - Options. - * @returns { number } + * @returns { number } - The unit is px. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -2720,7 +3042,7 @@ export class MeasureUtils { * Obtains the width and height of the specified text in a single line layout. * * @param { MeasureOptions } options - Options of measure area occupied by text. - * @returns { SizeOptions } width and height for text to display + * @returns { SizeOptions } width and height for text to display.The return values for text width and height are both in px. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -2767,6 +3089,16 @@ export class MeasureUtils { */ activate(isActive: boolean, autoInactive?: boolean): void; + /** + * Get whether the focus style is active. + * @returns { boolean } Whether the focus style is active. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + isActive(): boolean + /** * Set whether to enable autofocus transfer. * @param { boolean } isAutoFocusTransfer - A Boolean value that indicates whether autofocus transfer is enabled. @@ -2861,6 +3193,7 @@ export abstract class FrameCallback { * Call when a new display frame is being rendered. * * @param { number } frameTimeInNano - The frame time in nanoseconds. + * Value range: [0, +∞) * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -2871,7 +3204,8 @@ export abstract class FrameCallback { /** * Called at the end of the next idle frame. If there is no next frame, will request one automatically. * - * @param { number } timeLeftInNano - The remaining time from the deadline for this frame. + * @param { number } timeLeftInNano - The remaining time from the deadline for this frame, in nanoseconds. + * Value range: [0, +∞) * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -3064,6 +3398,26 @@ export class ComponentSnapshot { */ createFromComponent<T extends Object>(content: ComponentContent<T>, delay?: number, checkImageStatus?: boolean, options?: componentSnapshot.SnapshotOptions): Promise<image.PixelMap>; + + /** + * Get a component snapshot by component range. + * + * @param { NodeIdentity } start - the start component ID, set by developer through .id attribute or the unique ID + * get from FrameNode. + * @param { NodeIdentity } end - the end component ID, set by developer through.id attribute or the unique ID + * get from FrameNode. + * @param { boolean } isStartRect - indicating the snapshot rect to use, true for using the + * rect of the start component, false for using the rect of the end component. + * @param { componentSnapshot.SnapshotOptions } [options] - Define the snapshot options. + * @returns { Promise<image.PixelMap> } A Promise with the snapshot in PixelMap format. + * @throws { BusinessError } 202 - The caller is not a system application. + * @throws { BusinessError } 100001 - Invalid ID detected. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ + getWithRange(start: NodeIdentity, end: NodeIdentity, isStartRect: boolean, + options?: componentSnapshot.SnapshotOptions): Promise<image.PixelMap>; } /** @@ -3082,6 +3436,17 @@ export class ComponentSnapshot { * @since 11 */ export class UIContext { + /** + * Checks whether the UiContext object ia available. + * + * @returns { boolean } Returns true if the UIConetxt object is available. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + isAvailable(): boolean; + /** * get object font. * @@ -3170,17 +3535,17 @@ export class UIContext { getFilteredInspectorTreeById(id: string, depth: number, filters?: Array<string>): string; /** - * get object router. + * Obtains a Router object. * - * @returns { Router } object Router. + * @returns { Router } Router object. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 10 */ /** - * get object router. + * Obtains a Router object. * - * @returns { Router } object Router. + * @returns { Router } Router object. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -3197,9 +3562,9 @@ export class UIContext { * @since 10 */ /** - * get object PromptAction. + * Obtains a PromptAction object. * - * @returns { PromptAction } object PromptAction. + * @returns { PromptAction } PromptAction object. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -3244,9 +3609,9 @@ export class UIContext { getUIObserver(): UIObserver; /** - * Get object OverlayManager. + * Obtains the OverlayManager object. * - * @returns { OverlayManager } object OverlayManager. + * @returns { OverlayManager } OverlayManager instance obtained. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -3352,9 +3717,10 @@ export class UIContext { * @since 10 */ /** - * alertDialog display. + * Shows an alert dialog box. * - * @param { AlertDialogParamWithConfirm | AlertDialogParamWithButtons | AlertDialogParamWithOptions } options - Options. + * @param { AlertDialogParamWithConfirm | AlertDialogParamWithButtons | AlertDialogParamWithOptions } options - Shows + * an AlertDialog component in the given settings. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -3371,9 +3737,9 @@ export class UIContext { * @since 10 */ /** - * actionSheet display. + * Shows an action sheet in the given settings. * - * @param { ActionSheetOptions } value - Options. + * @param { ActionSheetOptions } value - Parameters of the action sheet. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -3458,7 +3824,8 @@ export class UIContext { runScopedTask(callback: () => void): void; /** - * Set KeyboardAvoidMode. The default mode is KeyboardAvoidMode.OFFSET + * Sets the avoidance mode for the virtual keyboard.<br> + * Default mode: **KeyboardAvoidMode.OFFSET**. * * @param { KeyboardAvoidMode } value - The mode of keyboard avoid. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3469,7 +3836,7 @@ export class UIContext { setKeyboardAvoidMode(value: KeyboardAvoidMode): void; /** - * Get KeyboardAvoidMode. + * Obtains the avoidance mode of the virtual keyboard. * @returns { KeyboardAvoidMode } The mode of keyboard avoid. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -3556,19 +3923,19 @@ export class UIContext { getMeasureUtils(): MeasureUtils; /** - * Defining keyframe animation function. + * Generates a key frame animation. * - * @param { KeyframeAnimateParam } param - overall animation parameters - * @param { Array<KeyframeState> } keyframes - all keyframe states + * @param { KeyframeAnimateParam } param - Global parameters of the keyframe animation. + * @param { Array<KeyframeState> } keyframes - Array of keyframes. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** - * Defining keyframe animation function. + * Generates a key frame animation. * - * @param { KeyframeAnimateParam } param - overall animation parameters - * @param { Array<KeyframeState> } keyframes - all keyframe states + * @param { KeyframeAnimateParam } param - Global parameters of the keyframe animation. + * @param { Array<KeyframeState> } keyframes - Array of keyframes. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -3623,6 +3990,13 @@ export class UIContext { /** * Get FrameNode by uniqueId. + * Obtains the entity node, FrameNode, of a component on the component tree using its uniqueId. + * The return value depends on the type of component associated with the uniqueId. + * 1. If the uniqueId corresponds to a built-in component, the associated FrameNode is returned. + * 2. If the uniqueId corresponds to a custom component: If the component has rendered content, its root node is + * returned, with the type __Common__; if the component has no rendered content, the FrameNode of its first child + * component is returned. + * 3. If the uniqueId does not correspond to any component, null is returned. * * @param { number } id - The uniqueId of the FrameNode. * @returns { FrameNode | null } - The FrameNode with the target uniqueId, or null if the frameNode is not existed. @@ -3764,7 +4138,7 @@ export class UIContext { px2lpx(value: number): number; /** - * Get current LocalStorage shared from stage. + * Obtains the LocalStorage instance shared by this stage. * * @returns { LocalStorage | undefined } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -3819,12 +4193,20 @@ export class UIContext { getWindowHeightBreakpoint(): HeightBreakpoint; /** - * Open the BindSheet. - * - * @param { ComponentContent<T> } bindSheetContent - The content of BindSheet. - * @param { SheetOptions } sheetOptions - The options of sheet. - * @param { number } targetId - The uniqueId of the FrameNode to which BindSheet is attached. - * @returns { Promise<void> } The promise returned by the function. + * Creates a sheet whose content is as defined in bindSheetContent and displays the sheet. + * This API uses a promise to return the result. + * + * @param { ComponentContent<T> } bindSheetContent - Content to display on the sheet. + * @param { SheetOptions } sheetOptions - Style of the sheet. + * <p>**NOTE**: + * <br>1. SheetOptions.uiContext cannot be set. Its value is fixed to the UIContext object of the current instance. + * <br>2.If targetId is not passed in, SheetOptions.preferType cannot be set to POPUP; if POPUP is set, it will be + * replaced with CENTER. + * <br>3. If targetId is not passed in, SheetOptions.mode cannot be set to EMBEDDED; the default mode is OVERLAY. + * <br>4. For the default values of other attributes, @see SheetOptions. + * </p> + * @param { number } targetId - ID of the component to be bound. If this parameter is not set, no component is bound. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -3864,10 +4246,13 @@ export class UIContext { updateBindSheet<T extends Object>(bindSheetContent: ComponentContent<T>, sheetOptions: SheetOptions, partialUpdate?: boolean): Promise<void>; /** - * Close the BindSheet. - * - * @param { ComponentContent<T> } bindSheetContent - The content of BindSheet. - * @returns { Promise<void> } The promise returned by the function. + * Closes the sheet corresponding to bindSheetContent. This API uses a promise to return the result. + * <p>**NOTE**: + * <br>Closing a sheet using this API will not invoke the shouldDismiss callback. + * </p> + * + * @param { ComponentContent<T> } bindSheetContent - Content to display on the sheet. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. * <br> 2. Incorrect parameters types. @@ -4051,27 +4436,41 @@ export class UIContext { */ getTextMenuController(): TextMenuController; + /** + * Set the keyboard appearance config for this input component before attach InputMethod. + * + * @param { number } uniqueId - The unique id of the input component. + * @param { KeyboardAppearanceConfig } config - The config of keyboard. + * @throws { BusinessError } 202 - The caller is not a system application. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 20 + */ + setKeyboardAppearanceConfig(uniqueId: number, config: KeyboardAppearanceConfig): void; + /** * Create a UI instance singleton without window and get its UIContext object. - * + * * @param { common.UIAbilityContext | common.ExtensionContext } context - UIAbilityContext or ExtensionContext. * @returns { UIContext | undefined } object UIContext, or undefined when failed. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. The number of parameters is incorrect. * <br> 2. Invalid parameter type of context. * @throws { BusinessError } 100001 - Internal error. + * @static * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ static createUIContextWithoutWindow(context: common.UIAbilityContext | common.ExtensionContext) : UIContext | undefined; /** * Destroy the UI instance singleton without window. * + * @static * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 17 */ static destroyUIContextWithoutWindow(): void; } @@ -4088,7 +4487,7 @@ export class UIContext { export const enum KeyboardAvoidMode { /** - * Default Type, offset the whole page when keyBoard height changed. + * Offset Type, the layout moves up. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -4097,7 +4496,7 @@ export const enum KeyboardAvoidMode { OFFSET = 0, /** - * Resize Type, resize the page when keyBoard height changed. + * Resize Type, the layout is resized. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -4106,7 +4505,7 @@ export const enum KeyboardAvoidMode { RESIZE = 1, /** - * Offset Type, offset the whole page when caret position or keyboard height changed. + * Offset Type, the layout moves up, and this adjustment also occurs if the caret position in the text box changes. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -4115,7 +4514,7 @@ export const enum KeyboardAvoidMode { OFFSET_WITH_CARET = 2, /** - * Resize Type, resize the whole page when when caret position or keyboard height changed. + * Resize Type, the layout moves up, and this adjustment also occurs if the caret position in the text box changes. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -4124,7 +4523,7 @@ export const enum KeyboardAvoidMode { RESIZE_WITH_CARET = 3, /** - * None Type, nothing to do when keyboard height changed. + * None Type, the layout is not adjusted to avoid the keyboard. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -4192,10 +4591,175 @@ export class TextMenuController { /** * Set text menu options. * + * @param { TextMenuOptions } options - the options of the text menu. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice * @since 16 */ setMenuOptions(options: TextMenuOptions): void; + + /** + * Disable all system service menus, such as translation and ai writer. + * True means disable, false means enable. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + static disableSystemServiceMenuItems(disable: boolean): void; + + /** + * Disable menu action by action id. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + static disableMenuItems(items: Array<TextMenuItemId>): void; +} + +/** + * An enumeration type that identifies the current node's rendering state. The UI components used in + * the application are automatically managed by the system and controlled for participation in graphical + * rendering by either mounting them onto the render tree or removing them from it. Only nodes that + * participate in graphical rendering have the potential to be displayed. However, participating in + * rendering does not equal to the node's visibility, as there may be many occlusion scenarios in the + * actual implementation of the application. Nevertheless, if a node does not participate in rendering, + * it will definitely not be visible. + * + * @enum { number } NodeRenderState + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export const enum NodeRenderState { + /** + * The node has been mount on to the render tree and will soon be rendered. Generally, after the next frame, + * the user will be able to see this node. However, this is not always the case, as in reality, the node may be + * occluded by other nodes, meaning it is rendered but not be visible. + * When registering a listener for the render state using the UIObserver interface, the system will immediately + * trigger the callback once, and the state notified at this time typically represents the current state. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + ABOUT_TO_RENDER_IN = 0, + + /** + * The node has been removed from the render tree and will no longer be rendered shortly. Generally speaking, + * after the next frame, the user will no longer be able to see this node. + * When registering a listener for the render state using the UIObserver interface, the system will immediately + * trigger the callback once, and the state notified at this time typically represents the current state. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + ABOUT_TO_RENDER_OUT = 1 +} + +/** + * This is an enumeration type representing the gesture callback phases to be triggered, corresponding to + * the action callbacks defined in gesture.d.ts. Therefore, not all gesture types have all the following + * phase definitions. For example, SwipeGesture only has one callback named onAction, so it also only has + * one enumeration type, which is WILL_START. + * + * @enum { number } GestureActionPhase + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export const enum GestureActionPhase { + /** + * The gesture has been successfully recognized by the system, and the action-start/action callback will be + * executed immediately. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + WILL_START = 0, + /** + * This indicates the gesture has been determined to be an end, which usually happens when the user lifts their + * fingers, ending the entire interaction, and the action-end callback will be executed immediately. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + WILL_END = 1 } + +/** + * This is an enumeration type indicating what kind of gesture you want to monitor for. + * + * @enum { number } GestureListenerType + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export const enum GestureListenerType { + /** + * The tap gesture. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + TAP = 0, + /** + * The long press gesture. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + LONG_PRESS = 1, + /** + * The pan gesture. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + PAN = 2, + /** + * The pinch gesture. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + PINCH = 3, + /** + * The swipe gesture. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + SWIPE = 4, + /** + * The rotation gesture. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + ROTATION = 5 +} \ No newline at end of file diff --git a/api/@ohos.arkui.advanced.ComposeListItem.d.ets b/api/@ohos.arkui.advanced.ComposeListItem.d.ets index 9119b1a01a496c9bc0c37794780be4e19489fe23..022f294323fa08766e535b212247c9b4b927a03c 100644 --- a/api/@ohos.arkui.advanced.ComposeListItem.d.ets +++ b/api/@ohos.arkui.advanced.ComposeListItem.d.ets @@ -1,5 +1,5 @@ /* -* Copyright (C) 2023-2023 Huawei Device Co., Ltd. +* Copyright (C) 2023-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -33,6 +33,14 @@ * @atomicservice * @since 11 */ +/** + * Declare enum IconType + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare enum IconType { /** * Badge type. @@ -45,6 +53,13 @@ export declare enum IconType { * @atomicservice * @since 11 */ + /** + * Badge type. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ BADGE = 1, /** * Normal icon type. @@ -57,6 +72,13 @@ export declare enum IconType { * @atomicservice * @since 11 */ + /** + * Normal icon type. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ NORMAL_ICON = 2, /** * System icon type. @@ -69,6 +91,13 @@ export declare enum IconType { * @atomicservice * @since 11 */ + /** + * System icon type. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ SYSTEM_ICON = 3, /** * HeadSculpture type. @@ -81,6 +110,13 @@ export declare enum IconType { * @atomicservice * @since 11 */ + /** + * HeadSculpture type. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ HEAD_SCULPTURE = 4, /** * App icon type. @@ -93,6 +129,13 @@ export declare enum IconType { * @atomicservice * @since 11 */ + /** + * App icon type. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ APP_ICON = 5, /** * Preview type. @@ -105,6 +148,13 @@ export declare enum IconType { * @atomicservice * @since 11 */ + /** + * Preview type. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ PREVIEW = 6, /** * Longitudinal type. @@ -117,6 +167,13 @@ export declare enum IconType { * @atomicservice * @since 11 */ + /** + * Longitudinal type. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ LONGITUDINAL = 7, /** * Vertical type. @@ -129,6 +186,13 @@ export declare enum IconType { * @atomicservice * @since 11 */ + /** + * Vertical type. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ VERTICAL = 8 } @@ -143,6 +207,13 @@ export declare enum IconType { * @atomicservice * @since 11 */ +/** + * Declare type OperateIcon + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class OperateIcon { /** * The content of text or the address of icon. @@ -157,6 +228,14 @@ export declare class OperateIcon { * @atomicservice * @since 11 */ + /** + * The content of text or the address of icon. + * @type { ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ value: ResourceStr; /** @@ -166,6 +245,14 @@ export declare class OperateIcon { * @atomicservice * @since 18 */ + /** + * The content of text or the address of symbol. + * @type { ?SymbolGlyphModifier }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolStyle?: SymbolGlyphModifier; /** @@ -181,6 +268,14 @@ export declare class OperateIcon { * @atomicservice * @since 11 */ + /** + * Callback function when operate the icon. + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ action?: () => void; /** @@ -191,6 +286,15 @@ export declare class OperateIcon { * @atomicservice * @since 18 */ + /** + * The accessibilityText of the icon. + * + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityText?: ResourceStr; /** @@ -201,6 +305,15 @@ export declare class OperateIcon { * @atomicservice * @since 18 */ + /** + * The accessibilityDescription of the icon. + * + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityDescription?: ResourceStr; /** @@ -212,6 +325,16 @@ export declare class OperateIcon { * @atomicservice * @since 18 */ + /** + * The accessibilityLevel of the icon. + * + * @type { ?string } + * @default "auto" + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityLevel?: string; } @@ -226,6 +349,13 @@ export declare class OperateIcon { * @atomicservice * @since 11 */ +/** + * Declare type OperateCheck + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class OperateCheck { /** * Whether is checked on default. @@ -240,6 +370,14 @@ export declare class OperateCheck { * @atomicservice * @since 11 */ + /** + * Whether is checked on default. + * @type { ?boolean }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ isCheck?: boolean; /** @@ -255,6 +393,14 @@ export declare class OperateCheck { * @atomicservice * @since 11 */ + /** + * Callback function when operate the checkbox/switch/radio. + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ onChange?: (value: boolean) => void; /** @@ -265,6 +411,15 @@ export declare class OperateCheck { * @atomicservice * @since 18 */ + /** + * The accessibilityText of the checkbox/switch/radio. + * + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityText?: ResourceStr; /** @@ -275,6 +430,15 @@ export declare class OperateCheck { * @atomicservice * @since 18 */ + /** + * The accessibilityDescription of the checkbox/switch/radio. + * + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityDescription?: ResourceStr; /** @@ -286,6 +450,16 @@ export declare class OperateCheck { * @atomicservice * @since 18 */ + /** + * The accessibilityLevel of the checkbox/switch/radio. + * + * @type { ?string } + * @default "auto" + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityLevel?: string; } @@ -300,6 +474,13 @@ export declare class OperateCheck { * @atomicservice * @since 11 */ +/** + * Declare type OperateButton + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class OperateButton { /** * The text on the button. @@ -314,6 +495,14 @@ export declare class OperateButton { * @atomicservice * @since 11 */ + /** + * The text on the button. + * @type { ?ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ text?: ResourceStr; /** @@ -324,6 +513,15 @@ export declare class OperateButton { * @atomicservice * @since 18 */ + /** + * The accessibilityText of the button. + * + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityText?: ResourceStr; /** @@ -334,6 +532,15 @@ export declare class OperateButton { * @atomicservice * @since 18 */ + /** + * The accessibilityDescription of the button. + * + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityDescription?: ResourceStr; /** @@ -345,6 +552,16 @@ export declare class OperateButton { * @atomicservice * @since 18 */ + /** + * The accessibilityLevel of the button. + * + * @type { ?string } + * @default "auto" + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityLevel?: string; } @@ -359,6 +576,13 @@ export declare class OperateButton { * @atomicservice * @since 11 */ +/** + * Declare ContentItem + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ContentItem { /** * The type of icon. @@ -373,6 +597,14 @@ export declare class ContentItem { * @atomicservice * @since 11 */ + /** + * The type of icon. + * @type { ?IconType } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ iconStyle?: IconType; /** @@ -388,6 +620,14 @@ export declare class ContentItem { * @atomicservice * @since 11 */ + /** + * Sets the icon. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ icon?: ResourceStr; /** @@ -397,6 +637,14 @@ export declare class ContentItem { * @atomicservice * @since 18 */ + /** + * Sets the symbol. + * @type { ?SymbolGlyphModifier } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolStyle?: SymbolGlyphModifier; /** @@ -412,6 +660,14 @@ export declare class ContentItem { * @atomicservice * @since 11 */ + /** + * Sets the primaryText. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ primaryText?: ResourceStr; /** @@ -427,6 +683,14 @@ export declare class ContentItem { * @atomicservice * @since 11 */ + /** + * Sets the secondaryText. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ secondaryText?: ResourceStr; /** @@ -442,6 +706,14 @@ export declare class ContentItem { * @atomicservice * @since 11 */ + /** + * Sets the description. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ description?: ResourceStr; } @@ -456,6 +728,13 @@ export declare class ContentItem { * @atomicservice * @since 11 */ +/** + * Declare OperateItem + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class OperateItem { /** * Sets the icon. @@ -470,6 +749,14 @@ export declare class OperateItem { * @atomicservice * @since 11 */ + /** + * Sets the icon. + * @type { ?OperateIcon } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ icon?: OperateIcon; /** @@ -485,6 +772,14 @@ export declare class OperateItem { * @atomicservice * @since 11 */ + /** + * Sets the subIcon. + * @type { ?OperateIcon } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ subIcon?: OperateIcon; /** @@ -500,6 +795,14 @@ export declare class OperateItem { * @atomicservice * @since 11 */ + /** + * Sets the button. + * @type { ?OperateButton } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ button?: OperateButton; /** @@ -515,6 +818,14 @@ export declare class OperateItem { * @atomicservice * @since 11 */ + /** + * Sets the switch. + * @type { ?OperateCheck } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ switch?: OperateCheck; /** @@ -530,6 +841,14 @@ export declare class OperateItem { * @atomicservice * @since 11 */ + /** + * Sets the checkBox. + * @type { ?OperateCheck } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ checkbox?: OperateCheck; /** @@ -545,6 +864,14 @@ export declare class OperateItem { * @atomicservice * @since 11 */ + /** + * Sets the radio. + * @type { ?OperateCheck } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ radio?: OperateCheck; /** @@ -560,6 +887,14 @@ export declare class OperateItem { * @atomicservice * @since 11 */ + /** + * Sets the image. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ image?: ResourceStr; /** @@ -569,6 +904,14 @@ export declare class OperateItem { * @atomicservice * @since 18 */ + /** + * Sets the symbolStyle. + * @type { ?SymbolGlyphModifier } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolStyle?: SymbolGlyphModifier; /** @@ -584,6 +927,14 @@ export declare class OperateItem { * @atomicservice * @since 11 */ + /** + * Sets the text. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ text?: ResourceStr; /** @@ -599,6 +950,14 @@ export declare class OperateItem { * @atomicservice * @since 11 */ + /** + * Sets the arrow. + * @type { ?OperateIcon } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ arrow?: OperateIcon; } @@ -617,6 +976,15 @@ export declare class OperateItem { * @atomicservice * @since 11 */ +/** + * Declare ComposeListItem + * + * @struct { ComposeListItem } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ @Component export declare struct ComposeListItem { /** @@ -632,6 +1000,14 @@ export declare struct ComposeListItem { * @atomicservice * @since 11 */ + /** + * The ContentItem. + * @type { ?ContentItem } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ @Prop contentItem?: ContentItem; /** @@ -647,5 +1023,13 @@ export declare struct ComposeListItem { * @atomicservice * @since 11 */ + /** + * The OperateItem. + * @type { ?OperateItem } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ @Prop operateItem?: OperateItem; } \ No newline at end of file diff --git a/api/@ohos.arkui.advanced.ComposeTitleBar.d.ets b/api/@ohos.arkui.advanced.ComposeTitleBar.d.ets index 16b3a5d49b50dd4f1523332ee0e888ba6a54a9f2..a6fc36e28c48a9e4d77e3ecbba0e4701550a7ad5 100644 --- a/api/@ohos.arkui.advanced.ComposeTitleBar.d.ets +++ b/api/@ohos.arkui.advanced.ComposeTitleBar.d.ets @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023-2023 Huawei Device Co., Ltd. + * Copyright (c) 2023-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -33,6 +33,13 @@ * @atomicservice * @since 11 */ +/** + * Declaration of the menu item on the right side. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ComposeTitleBarMenuItem { /** * Icon resource for this menu item. @@ -47,6 +54,14 @@ export declare class ComposeTitleBarMenuItem { * @atomicservice * @since 11 */ + /** + * Icon resource for this menu item. + * @type { ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ value: ResourceStr; /** @@ -56,6 +71,14 @@ export declare class ComposeTitleBarMenuItem { * @atomicservice * @since 18 */ + /** + * Symbol resource for this menu item. + * @type { ?SymbolGlyphModifier }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolStyle?: SymbolGlyphModifier; /** @@ -65,6 +88,14 @@ export declare class ComposeTitleBarMenuItem { * @atomicservice * @since 13 */ + /** + * Icon label for this menu item. + * @type { ?ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ label?: ResourceStr; /** @@ -80,6 +111,14 @@ export declare class ComposeTitleBarMenuItem { * @atomicservice * @since 11 */ + /** + * Whether to enable this menu item. + * @type { ?boolean }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ isEnabled?: boolean; /** @@ -95,6 +134,14 @@ export declare class ComposeTitleBarMenuItem { * @atomicservice * @since 11 */ + /** + * Callback function when click on this menu item. + * @type { ?() => void }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ action?: () => void; /** @@ -104,6 +151,14 @@ export declare class ComposeTitleBarMenuItem { * @atomicservice * @since 18 */ + /** + * The accessibilityText of this menu item. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityText?: ResourceStr; /** @@ -113,6 +168,14 @@ export declare class ComposeTitleBarMenuItem { * @atomicservice * @since 18 */ + /** + * The accessibilityDescription of this menu item. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityDescription?: ResourceStr; /** @@ -128,6 +191,20 @@ export declare class ComposeTitleBarMenuItem { * @atomicservice * @since 18 */ + /** + * The accessibilityLevel of this menu item. + * @type { ?string } + * @default "auto".The options are as follows:<br/> + * "auto":The value is converted to "yes" or "no" based on the component. + * "yes": the current component is selectable for the accessibility service. + * "no": The current component is not selectable for the accessibility service. + * "no-hide-descendants":The current component and all its child components are not selectable<br/> + * for the accessibility service. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityLevel?: string; } @@ -142,6 +219,13 @@ export declare class ComposeTitleBarMenuItem { * @atomicservice * @since 11 */ +/** + * Declaration of the composable title bar. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ @Component export declare struct ComposeTitleBar { /** @@ -157,6 +241,14 @@ export declare struct ComposeTitleBar { * @atomicservice * @since 11 */ + /** + * Avatar resource and event callback of this title bar. + * @type { ?ComposeTitleBarMenuItem }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ item?: ComposeTitleBarMenuItem; /** @@ -172,6 +264,14 @@ export declare struct ComposeTitleBar { * @atomicservice * @since 11 */ + /** + * Title of this title bar. + * @type { ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ title: ResourceStr; /** @@ -187,6 +287,14 @@ export declare struct ComposeTitleBar { * @atomicservice * @since 11 */ + /** + * Sub-title of this title bar. + * @type { ?ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ subtitle?: ResourceStr; /** @@ -202,5 +310,13 @@ export declare struct ComposeTitleBar { * @atomicservice * @since 11 */ + /** + * Menu items on the right side. + * @type { ?Array<ComposeTitleBarMenuItem> }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ menuItems?: Array<ComposeTitleBarMenuItem>; } diff --git a/api/@ohos.arkui.advanced.FullScreenLaunchComponent.d.ets b/api/@ohos.arkui.advanced.FullScreenLaunchComponent.d.ets index f19a5b0a6b00914fe303347cd0713283fa8811ff..1800e8fd87b57b388a29802b7ae5cb204e388b76 100644 --- a/api/@ohos.arkui.advanced.FullScreenLaunchComponent.d.ets +++ b/api/@ohos.arkui.advanced.FullScreenLaunchComponent.d.ets @@ -69,4 +69,12 @@ export declare struct FullScreenLaunchComponent { * @since 18 */ onTerminated?: Callback<TerminationInfo>; + /** + * Indicates the callback of onReceive. + * @type { ?Callback<Record<string, Object>> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + onReceive?: Callback<Record<string, Object>>; } \ No newline at end of file diff --git a/api/@ohos.arkui.advanced.ProgressButton.d.ets b/api/@ohos.arkui.advanced.ProgressButton.d.ets index 82307edadfbeb8b0f3bebe0642f3e15b57c9d4f5..af298952447b72390d373b7e4a9f34219e77de3b 100644 --- a/api/@ohos.arkui.advanced.ProgressButton.d.ets +++ b/api/@ohos.arkui.advanced.ProgressButton.d.ets @@ -59,7 +59,15 @@ export declare struct ProgressButton { * @atomicservice * @since 11 */ - @Prop content: string; + /** + * Sets the ProgressButton content. + * @type { ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + @Prop content: ResourceStr; /** * Sets the ProgressButton progressButtonWidth. diff --git a/api/@ohos.arkui.advanced.SegmentButton.d.ets b/api/@ohos.arkui.advanced.SegmentButton.d.ets index d6e9af583ab03c85b1643031d379028431e9fca0..1112cd8a2ca7838fe79bf4d9fbfb36dd1eb72de5 100644 --- a/api/@ohos.arkui.advanced.SegmentButton.d.ets +++ b/api/@ohos.arkui.advanced.SegmentButton.d.ets @@ -331,6 +331,32 @@ interface SegmentButtonIconTextItem { */ declare type DimensionNoPercentage = PX | VP | FP | LPX | Resource; +/** + * Defines the BorderRadiusMode type. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare enum BorderRadiusMode { + /** + * Default mode, radius is auto calculated by framework. + * @crossplatform + * @atomicservice + * @since 20 + */ + DEFAULT = 0, + + /** + * Custom mode, radius can be set by developers. + * @crossplatform + * @atomicservice + * @since 20 + */ + CUSTOM = 1 +} + /** * Defines SegmentButton common options. * @@ -631,6 +657,42 @@ interface CommonSegmentButtonOptions { * @since 12 */ direction?: Direction; + + /** + * The border radius mode of SegmentButton. + * + * @type { ?BorderRadiusMode } + * @default BorderRadiusMode.Default + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + borderRadiusMode?: BorderRadiusMode; + + /** + * The background border radius of SegmentButton. + * Only takes effect when borderRadiusMode is set to BorderRadiusMode.Custom. + * + * @type { ?LengthMetrics } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + backgroundBorderRadius?: LengthMetrics; + + /** + * The border radius of selected item in SegmentButton. + * Only takes effect when borderRadiusMode is set to BorderRadiusMode.Custom. + * + * @type { ?LengthMetrics } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + itemBorderRadius?: LengthMetrics; } /** @@ -1693,6 +1755,42 @@ declare class SegmentButtonOptions { * @since 12 */ direction?: Direction; + + /** + * The border radius mode of SegmentButton. + * + * @type { ?BorderRadiusMode } + * @default BorderRadiusMode.Default + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + borderRadiusMode?: BorderRadiusMode; + + /** + * The background border radius of SegmentButton. + * Only takes effect when borderRadiusMode is set to BorderRadiusMode.Custom. + * + * @type { ?LengthMetrics } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + backgroundBorderRadius?: LengthMetrics; + + /** + * The border radius of selected item in SegmentButton. + * Only takes effect when borderRadiusMode is set to BorderRadiusMode.Custom. + * + * @type { ?LengthMetrics } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + itemBorderRadius?: LengthMetrics; } /** @@ -1792,5 +1890,6 @@ export { SegmentButtonItemTuple, SegmentButtonItemArray, SegmentButtonItemOptionsConstructorOptions, - SegmentButtonItemOptions + SegmentButtonItemOptions, + BorderRadiusMode }; diff --git a/api/@ohos.arkui.advanced.SelectTitleBar.d.ets b/api/@ohos.arkui.advanced.SelectTitleBar.d.ets index ff371716736bfe50e02f43e0ceac947e0ef9bce2..07247df74633d45c3af7f707de86b252b22126b9 100644 --- a/api/@ohos.arkui.advanced.SelectTitleBar.d.ets +++ b/api/@ohos.arkui.advanced.SelectTitleBar.d.ets @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023-2023 Huawei Device Co., Ltd. + * Copyright (c) 2023-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -33,6 +33,13 @@ * @atomicservice * @since 11 */ +/** + * Declaration of the menu item on the right side. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class SelectTitleBarMenuItem { /** * Icon resource for this menu item. @@ -47,6 +54,14 @@ export declare class SelectTitleBarMenuItem { * @atomicservice * @since 11 */ + /** + * Icon resource for this menu item. + * @type { ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ value: ResourceStr; /** @@ -56,6 +71,14 @@ export declare class SelectTitleBarMenuItem { * @atomicservice * @since 18 */ + /** + * Symbol resource for this menu item. + * @type { ?SymbolGlyphModifier }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolStyle?: SymbolGlyphModifier; /** @@ -65,6 +88,14 @@ export declare class SelectTitleBarMenuItem { * @atomicservice * @since 13 */ + /** + * Icon label for this menu item. + * @type { ?ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ label?: ResourceStr; /** @@ -80,6 +111,14 @@ export declare class SelectTitleBarMenuItem { * @atomicservice * @since 11 */ + /** + * Whether to enable this menu item. + * @type { ?boolean }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ isEnabled?: boolean; /** @@ -95,6 +134,14 @@ export declare class SelectTitleBarMenuItem { * @atomicservice * @since 11 */ + /** + * Callback function when click on this menu item. + * @type { ?() => void }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ action?: () => void; /** @@ -104,6 +151,14 @@ export declare class SelectTitleBarMenuItem { * @atomicservice * @since 18 */ + /** + * The accessibilityText of this menu item. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityText?: ResourceStr; /** @@ -113,6 +168,14 @@ export declare class SelectTitleBarMenuItem { * @atomicservice * @since 18 */ + /** + * The accessibilityDescription of this menu item. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityDescription?: ResourceStr; /** @@ -123,6 +186,15 @@ export declare class SelectTitleBarMenuItem { * @atomicservice * @since 18 */ + /** + * The accessibilityLevel of this menu item. + * @type { ?string } + * @default "auto" + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ accessibilityLevel?: string; } @@ -137,6 +209,13 @@ export declare class SelectTitleBarMenuItem { * @atomicservice * @since 11 */ +/** + * Declaration of the selectable title bar. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ @Component export declare struct SelectTitleBar { /** @@ -154,6 +233,15 @@ export declare struct SelectTitleBar { * @atomicservice * @since 11 */ + /** + * Selected index of the initial options in the drop-down menu. The index of the first item is 0. + * If this attribute is not set, the default value is -1. Which means, no menu item is selected. + * @type { number }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ @Prop selected: number; /** @@ -169,6 +257,14 @@ export declare struct SelectTitleBar { * @atomicservice * @since 11 */ + /** + * Options inside the drop-down list. + * @type { Array<SelectOption> }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ options: Array<SelectOption>; /** @@ -184,6 +280,14 @@ export declare struct SelectTitleBar { * @atomicservice * @since 11 */ + /** + * Menu items on the right side. + * @type { ?Array<SelectTitleBarMenuItem> }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ menuItems?: Array<SelectTitleBarMenuItem>; /** @@ -199,6 +303,14 @@ export declare struct SelectTitleBar { * @atomicservice * @since 11 */ + /** + * Sub-title of this title bar. + * @type { ?ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ subtitle?: ResourceStr; /** @@ -214,6 +326,14 @@ export declare struct SelectTitleBar { * @atomicservice * @since 11 */ + /** + * The number displayed in a badge. + * @type { ?number }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ badgeValue?: number; /** @@ -229,6 +349,14 @@ export declare struct SelectTitleBar { * @atomicservice * @since 11 */ + /** + * Whether to hide the back arrow at the left side. + * @type { ?boolean }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ hidesBackButton?: boolean; /** @@ -244,5 +372,13 @@ export declare struct SelectTitleBar { * @atomicservice * @since 11 */ + /** + * Callback function when an option is selected + * @type { ?(index: number) => void }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ onSelected?: ((index: number) => void); } diff --git a/api/@ohos.arkui.advanced.SelectionMenu.d.ets b/api/@ohos.arkui.advanced.SelectionMenu.d.ets index 26ef4edb8082051ef68f93353a03d9bdbc0df1e1..25053bb86d4911e862f55250c412ce1252d135e3 100644 --- a/api/@ohos.arkui.advanced.SelectionMenu.d.ets +++ b/api/@ohos.arkui.advanced.SelectionMenu.d.ets @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023 Huawei Device Co., Ltd. + * Copyright (c) 2023-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -62,6 +62,14 @@ export interface EditorMenuOptions { * @atomicservice * @since 18 */ + /** + * Symbol style of menu icon. + * @type { ?SymbolGlyphModifier }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ symbolStyle?: SymbolGlyphModifier; /** diff --git a/api/@ohos.arkui.advanced.SubHeader.d.ets b/api/@ohos.arkui.advanced.SubHeader.d.ets index 3bc64397e0aa6135f35bd851bdbfa2d5c8c35187..e17975d3fc266a901c29512ae004dc91bad7d50a 100644 --- a/api/@ohos.arkui.advanced.SubHeader.d.ets +++ b/api/@ohos.arkui.advanced.SubHeader.d.ets @@ -292,7 +292,7 @@ export declare class SelectOptions { * @since 18 */ selected?: number; - + /** * The default text value. * @type { string }. @@ -314,7 +314,15 @@ export declare class SelectOptions { * @atomicservice * @since 18 */ - value?: string; + /** + * The default text value. + * @type { ?ResourceStr }. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + value?: ResourceStr; /** * Callback when the select is selected. diff --git a/api/@ohos.arkui.advanced.SubHeaderV2.d.ets b/api/@ohos.arkui.advanced.SubHeaderV2.d.ets index 10872122ab0c54e68cae8958365c17bb05d5ea6c..fbc8463724b2f2f47f4da58b42dd6fa786e42b94 100644 --- a/api/@ohos.arkui.advanced.SubHeaderV2.d.ets +++ b/api/@ohos.arkui.advanced.SubHeaderV2.d.ets @@ -187,7 +187,16 @@ export interface SubHeaderV2SelectOptions { * @atomicservice * @since 18 */ - selectedContent?: string; + /** + * Sets the selected content of the SubHeaderV2SelectOptions. + * + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + selectedContent?: ResourceStr; /** * Sets the onSelect of the SubHeaderV2SelectOptions. * @@ -248,7 +257,16 @@ export declare class SubHeaderV2Select { * @atomicservice * @since 18 */ - @Trace selectedContent?: string; + /** + * Sets the selected content of the SubHeaderV2SelectOptions. + * + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + @Trace selectedContent?: ResourceStr; /** * Sets the onSelect of the SubHeaderV2SelectOptions. * diff --git a/api/@ohos.arkui.advanced.SwipeRefresher.d.ets b/api/@ohos.arkui.advanced.SwipeRefresher.d.ets index 25e3b6a78d3b0e2b0cf76d801ecfc0c2aa5dc748..e17f55838bdf44e65c784e059072faefd76bcc29 100644 --- a/api/@ohos.arkui.advanced.SwipeRefresher.d.ets +++ b/api/@ohos.arkui.advanced.SwipeRefresher.d.ets @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023-2023 Huawei Device Co., Ltd. + * Copyright (c) 2023-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -29,6 +29,13 @@ * @atomicservice * @since 11 */ +/** + * Declare component SwipeRefresher + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ @Component export declare struct SwipeRefresher { /** @@ -44,7 +51,15 @@ export declare struct SwipeRefresher { * @atomicservice * @since 11 */ - @Prop content?: string; + /** + * Sets the content when loading. + * @type { ?ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + @Prop content?: ResourceStr; /** * Whether the component is loading. @@ -59,5 +74,13 @@ export declare struct SwipeRefresher { * @atomicservice * @since 11 */ + /** + * Whether the component is loading. + * type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ @Prop isLoading: boolean; } \ No newline at end of file diff --git a/api/@ohos.arkui.component.d.ets b/api/@ohos.arkui.component.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..90c190a547e8d64091b20e8c36ae82a17293bcfa --- /dev/null +++ b/api/@ohos.arkui.component.d.ets @@ -0,0 +1,53 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the 'License'); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ +export * from './arkui/UserView'; +export * from './arkui/component/text'; +export * from './arkui/component/enums'; +export * from './arkui/component/units'; +export * from './arkui/component/blank'; +export * from './arkui/component/button'; +export * from './arkui/component/column'; +export * from './arkui/component/row'; +export * from './arkui/component/common'; +export * from './arkui/component/customComponent'; +export * from './arkui/component/enums'; +export * from './arkui/component/forEach'; +export * from './arkui/component/gesture'; +export * from './arkui/component/grid'; +export * from './arkui/component/griditem'; +export * from './arkui/component/image'; +export * from './arkui/component/imageCommon'; +export * from './arkui/component/lazyForEach'; +export * from './arkui/component/list'; +export * from './arkui/component/mediaCachedImage'; +export * from './arkui/component/navigation'; +export * from './arkui/component/progress'; +export * from './arkui/component/scroll'; +export * from './arkui/component/scrollBar'; +export * from './arkui/component/stack'; +export * from './arkui/component/symbolglyph'; +export * from './arkui/component/units'; +export * from './arkui/component/resources'; +export * from './arkui/component/locationButton'; +export * from './arkui/component/pasteButton'; +export * from './arkui/component/saveButton'; +export * from './arkui/component/securityComponent'; +export * from './arkui/component/web'; +export * from './arkui/component/textCommon'; \ No newline at end of file diff --git a/api/@ohos.arkui.componentSnapshot.d.ets b/api/@ohos.arkui.componentSnapshot.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..06c5a5a98eb69e94ee7da0ed998d70980817d403 --- /dev/null +++ b/api/@ohos.arkui.componentSnapshot.d.ets @@ -0,0 +1,235 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { AsyncCallback } from './@ohos.base'; +import image from './@ohos.multimedia.image'; +import { CustomBuilder } from './arkui/component/common'; + +/** + * This module allows developers to export snapshot image from a component or a custom builder. + * + * @namespace componentSnapshot + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * This module allows developers to export snapshot image from a component or a custom builder. + * + * @namespace componentSnapshot + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +declare namespace componentSnapshot { + /** + * Defines the extra options for snapshot taking. + * + * @typedef SnapshotOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface SnapshotOptions { + /** + * Defines the scale property to render the snapshot. + * + * @type {?number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + scale?: number + + /** + * Whether to wait the rendering is finished. + * + * @type {?boolean} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + waitUntilRenderFinished?: boolean + } + + /** + * Take a snapshot of the target component. + * + * @param { string } id - Target component ID, set by developer through .id attribute. + * @param { AsyncCallback<image.PixelMap> } callback - Callback that contains the snapshot in PixelMap format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Invalid ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Take a snapshot of the target component. + * + * @param { string } id - Target component ID, set by developer through .id attribute. + * @param { AsyncCallback<image.PixelMap> } callback - Callback that contains the snapshot in PixelMap format. + * @param { SnapshotOptions } [options] - Define the snapshot options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Invalid ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function get(id: string, callback: AsyncCallback<image.PixelMap>, options?: SnapshotOptions): void; + + /** + * Take a snapshot of the target component. + * + * @param { string } id - Target component ID, set by developer through .id attribute. + * @returns { Promise<image.PixelMap> } A Promise with the snapshot in PixelMap format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Invalid ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Take a snapshot of the target component. + * + * @param { string } id - Target component ID, set by developer through .id attribute. + * @param { SnapshotOptions } [options] - Define the snapshot options. + * @returns { Promise<image.PixelMap> } A Promise with the snapshot in PixelMap format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Invalid ID. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function get(id: string, options?: SnapshotOptions): Promise<image.PixelMap>; + + /** + * Generate a snapshot from a custom component builder. + * + * @param { CustomBuilder } builder - Builder function of a custom component. + * @param { AsyncCallback<image.PixelMap> } callback - Callback that contains the snapshot in PixelMap format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The builder is not a valid build function. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Generate a snapshot from a custom component builder. + * + * @param { CustomBuilder } builder - Builder function of a custom component. + * @param { AsyncCallback<image.PixelMap> } callback - Callback that contains the snapshot in PixelMap format. + * @param { number } [delay] - Defines the delay time to render the snapshot. + * @param { boolean } [checkImageStatus] - Defines if check the image decoding status before taking snapshot. + * @param { SnapshotOptions } [options] - Define the snapshot options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The builder is not a valid build function. + * @throws { BusinessError } 160001 - An image component in builder is not ready for taking a snapshot. The check for + * the ready state is required when the checkImageStatus option is enabled. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function createFromBuilder(builder: CustomBuilder, callback: AsyncCallback<image.PixelMap>, + delay?: number, checkImageStatus?: boolean, options?: SnapshotOptions): void; + + /** + * Generate a snapshot from a custom component builder. + * + * @param { CustomBuilder } builder - Builder function of a custom component. + * @returns { Promise<image.PixelMap> } A Promise with the snapshot in PixelMap format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The builder is not a valid build function. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Generate a snapshot from a custom component builder. + * + * @param { CustomBuilder } builder - Builder function of a custom component. + * @param { number } [delay] - Defines the delay time to render the snapshot. + * @param { boolean } [checkImageStatus] - Defines if check the image decoding status before taking snapshot. + * @param { SnapshotOptions } [options] - Define the snapshot options. + * @returns { Promise<image.PixelMap> } A Promise with the snapshot in PixelMap format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The builder is not a valid build function. + * @throws { BusinessError } 160001 - An image component in builder is not ready for taking a snapshot. The check for + * the ready state is required when the checkImageStatus option is enabled. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function createFromBuilder(builder: CustomBuilder, delay?: number, + checkImageStatus?: boolean, options?: SnapshotOptions): Promise<image.PixelMap>; + + /** + * Take a screenshot of the specified component in synchronous mode, + * this mode will block the main thread, please use it with caution, the maximum + * waiting time of the interface is 3s, if it does not return after 3s, an exception will be thrown. + * + * @param { string } id - Target component ID, set by developer through .id attribute. + * @param { SnapshotOptions } [options] - Define the snapshot options. + * @returns { image.PixelMap } The snapshot result in PixelMap format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Invalid ID. + * @throws { BusinessError } 160002 - Timeout. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function getSync(id: string, options?: SnapshotOptions): image.PixelMap; +} +export default componentSnapshot; \ No newline at end of file diff --git a/api/@ohos.arkui.componentUtils.d.ets b/api/@ohos.arkui.componentUtils.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..ff1d5120eab0f124b98325cf5e7bc0ab52d94372 --- /dev/null +++ b/api/@ohos.arkui.componentUtils.d.ets @@ -0,0 +1,847 @@ +/* + * Copyright (c) 2023-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * This module provides functionality for component coordinates and sizes. + * @namespace componentUtils + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ +/** + * This module provides functionality for component coordinates and sizes. + * @namespace componentUtils + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +/** + * This module provides functionality for component coordinates and sizes. + * @namespace componentUtils + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +declare namespace componentUtils { + + /** + * Component information. + * @typedef ComponentInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Component information. + * @typedef ComponentInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Component information. + * @typedef ComponentInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface ComponentInfo { + + /** + * component size. + * @type {Size} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * component size. + * @type {Size} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * component size. + * @type {Size} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + size: Size + + /** + * Obtain attribute information relative to the local. + * @type {Offset} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Obtain attribute information relative to the local. + * @type {Offset} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Obtain attribute information relative to the local. + * @type {Offset} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + localOffset: Offset + + /** + * Obtain attribute information relative to the window. + * @type {Offset} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Obtain attribute information relative to the window. + * @type {Offset} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Obtain attribute information relative to the window. + * @type {Offset} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + windowOffset: Offset + + /** + * Obtain attribute information relative to the screen. + * @type {Offset} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Obtain attribute information relative to the screen. + * @type {Offset} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Obtain attribute information relative to the screen. + * @type {Offset} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + screenOffset: Offset + + /** + * Obtain attribute information for translation. + * @type {TranslateResult} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Obtain attribute information for translation. + * @type {TranslateResult} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Obtain attribute information for translation. + * @type {TranslateResult} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + translate: TranslateResult + + /** + * Obtain attribute information for scale. + * @type {ScaleResult} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Obtain attribute information for scale. + * @type {ScaleResult} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Obtain attribute information for scale. + * @type {ScaleResult} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + scale: ScaleResult + + /** + * Obtain attribute information for rotate. + * @type {RotateResult} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Obtain attribute information for rotate. + * @type {RotateResult} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Obtain attribute information for rotate. + * @type {RotateResult} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + rotate: RotateResult + + /** + * Obtain attribute information of the transformation matrix. + * @type {Matrix4Result} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Obtain attribute information of the transformation matrix. + * @type {Matrix4Result} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Obtain attribute information of the transformation matrix. + * @type {Matrix4Result} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + transform: Matrix4Result + } + + /** + * Defines the size property. + * @typedef Size + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Defines the size property. + * @typedef Size + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Defines the size property. + * @typedef Size + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface Size { + + /** + * Defines the width property. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Defines the width property. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Defines the width property. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + width: number + + /** + * Defines the height property. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Defines the height property. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Defines the height property. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + height: number + } + + /** + * Defines the offset property. + * @typedef Offset + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Defines the offset property. + * @typedef Offset + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Defines the offset property. + * @typedef Offset + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface Offset { + + /** + * Coordinate x of the Position. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Coordinate x of the Position. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Coordinate x of the Position. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + x: number + + /** + * Coordinate y of the Position. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Coordinate y of the Position. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Coordinate y of the Position. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + y: number + } + + /** + * Translation Result + * @typedef TranslateResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Translation Result + * @typedef TranslateResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Translation Result + * @typedef TranslateResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface TranslateResult { + + /** + * Indicates the translation distance of the x-axis, in vp. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Indicates the translation distance of the x-axis, in vp. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Indicates the translation distance of the x-axis, in vp. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + x: number + + /** + * Indicates the translation distance of the y-axis, in vp. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Indicates the translation distance of the y-axis, in vp. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Indicates the translation distance of the y-axis, in vp. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + y: number + + /** + * Indicates the translation distance of the z-axis, in vp. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Indicates the translation distance of the z-axis, in vp. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Indicates the translation distance of the z-axis, in vp. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + z: number + } + + /** + * Scale Result + * @typedef ScaleResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Scale Result + * @typedef ScaleResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Scale Result + * @typedef ScaleResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface ScaleResult { + + /** + * Zoom factor of the x-axis. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Zoom factor of the x-axis. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Zoom factor of the x-axis. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + x: number + + /** + * Zoom factor of the y-axis. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Zoom factor of the y-axis. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Zoom factor of the y-axis. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + y: number + + /** + * Zoom factor of the z-axis. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Zoom factor of the z-axis. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Zoom factor of the z-axis. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + z: number + + /** + * Transform the x-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Transform the x-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Transform the x-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + centerX: number + + /** + * Transform the y-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Transform the y-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Transform the y-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + centerY: number + } + + /** + * Rotation Result. + * @typedef RotateResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Rotation Result. + * @typedef RotateResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Rotation Result. + * @typedef RotateResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface RotateResult { + + /** + * Axis of rotation vector x coordinate. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Axis of rotation vector x coordinate. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Axis of rotation vector x coordinate. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + x: number + + /** + * Axis of rotation vector y coordinate. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Axis of rotation vector y coordinate. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Axis of rotation vector y coordinate. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + y: number + + /** + * Axis of rotation vector z coordinate. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Axis of rotation vector z coordinate. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Axis of rotation vector z coordinate. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + z: number + + /** + * Transform the x-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Transform the x-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Transform the x-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + centerX: number + + /** + * Transform the y-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Transform the y-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Transform the y-axis coordinate of the center point. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + centerY: number + + /** + * Rotation angle. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Rotation angle. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Rotation angle. + * @type {number} + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + angle: number + } + + /** + * The matrix is column-first fourth-order matrix. + * @typedef { [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number] } Matrix4Result + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * The matrix is column-first fourth-order matrix. + * @typedef { [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number] } Matrix4Result + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * The matrix is column-first fourth-order matrix. + * @typedef { [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number] } Matrix4Result + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export type Matrix4Result = [ + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + ]; + + /** + * Provide the ability to obtain the coordinates and size of component drawing areas. + * @param {string} id - component id. + * @returns {ComponentInfo} the object of ComponentInfo. + * @throws { BusinessError } 100001 - UI execution context not found. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Provide the ability to obtain the coordinates and size of component drawing areas. + * @param {string} id - component id. + * @returns {ComponentInfo} the object of ComponentInfo. + * @throws { BusinessError } 100001 - UI execution context not found. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function getRectangleById(id: string): ComponentInfo; +} +export default componentUtils; \ No newline at end of file diff --git a/api/@ohos.arkui.dragController.d.ets b/api/@ohos.arkui.dragController.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..ebd3435b0f7e9eb6a1aa7269fe5c71fbff2cd259 --- /dev/null +++ b/api/@ohos.arkui.dragController.d.ets @@ -0,0 +1,552 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + + + +import { AsyncCallback, BusinessError, Callback } from './@ohos.base'; +import unifiedDataChannel from './@ohos.data.unifiedDataChannel'; +import { DragEvent, DragPreviewOptions, DragItemInfo, ICurve, CustomBuilder } from './arkui/component/common'; +import { TouchPoint, ResourceColor } from './arkui/component/units'; +import { Curve } from './arkui/component/enums'; + +/** + * This module allows developers to trigger a drag event. + * @namespace dragController + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ +/** + * This module allows developers to trigger a drag event. + * @namespace dragController + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + declare namespace dragController { + /** + * Defines the Drag Status. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Defines the Drag Status. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export const enum DragStatus { + /** + * Drag has started. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Drag has started. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + STARTED = 0, + /** + * Drag has ended. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Drag has ended. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + ENDED = 1, + } + + /** + * Drag and drop information + * + * @interface DragAndDropInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Drag and drop information + * + * @interface DragAndDropInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface DragAndDropInfo { + /** + * The drag status. + * @type { DragStatus } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * The drag status. + * @type { DragStatus } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + status: DragStatus; + /** + * The information containing the drag event. + * @type { DragEvent } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * The information containing the drag event. + * @type { DragEvent } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + event: DragEvent; + /** + * Additional information about the drag info. + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Additional information about the drag info. + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + extraParams?: string; + } + + /** + * One drag action object for drag process + * + * @interface DragAction + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * One drag action object for drag process + * + * @interface DragAction + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface DragAction { + /** + * trigger drag action + * + * @returns { Promise<void> } A Promise can indicate the start result. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * trigger drag action + * + * @returns { Promise<void> } A Promise can indicate the start result. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + startDrag(): Promise<void>; + /** + * Registers a callback for listening on drag status changes. + * This callback is triggered when the drag status change. + * + * @param { 'statusChange' } type for status changing + * @param { Callback<DragAndDropInfo> } callback with drag event and status information + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Registers a callback for listening on drag status changes. + * This callback is triggered when the drag status change. + * + * @param { 'statusChange' } type for status changing + * @param { Callback<DragAndDropInfo> } callback with drag event and status information + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + on(type: 'statusChange', callback: Callback<DragAndDropInfo>): void; + + /** + * Deregisters a callback for listening on drag status changes. + * This callback is not triggered when the drag status change. + * + * @param { 'statusChange' } type for status changing + * @param { Callback<DragAndDropInfo> } callback with drag event and status information + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Deregisters a callback for listening on drag status changes. + * This callback is not triggered when the drag status change. + * + * @param { 'statusChange' } type for status changing + * @param { Callback<DragAndDropInfo> } callback with drag event and status information + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + off(type: 'statusChange', callback?: Callback<DragAndDropInfo>): void; + } + + /** + * DragInfo object description + * + * @interface DragInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * DragInfo object description + * + * @interface DragInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface DragInfo { + /** + * A unique identifier to identify which touch point. + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * A unique identifier to identify which touch point. + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + pointerId: number; + + /** + * Drag data. + * @type { ?unifiedDataChannel.UnifiedData } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Drag data. + * @type { ?unifiedDataChannel.UnifiedData } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + data?: unifiedDataChannel.UnifiedData; + + /** + * Additional information about the drag info. + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Additional information about the drag info. + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + extraParams?: string; + + /** + * Touch point coordinates. + * @type { ?TouchPoint } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Touch point coordinates. + * @type { ?TouchPoint } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + touchPoint?: TouchPoint; + + /** + * Drag preview options. + * @type { ?DragPreviewOptions } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Drag preview options. + * @type { ?DragPreviewOptions } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + previewOptions?: DragPreviewOptions; + } + + /** + * Defines the animation options for drag preview. + * + * @interface AnimationOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Defines the animation options for drag preview. + * + * @interface AnimationOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface AnimationOptions { + /** + * Animation duration, in ms. + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Animation duration, in ms. + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + duration?: number; + /** + * Animation curve. + * @type { ?(Curve | ICurve) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Animation curve. + * @type { ?(Curve | ICurve) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + curve?: Curve | ICurve; + } + + /** + * Provides the functions of setting color or updating animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Provides the functions of setting color or updating animation. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export class DragPreview { + /** + * change foreground color of preview + * @param { ResourceColor } color - color value + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * change foreground color of preview + * @param { ResourceColor } color - color value + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + setForegroundColor(color: ResourceColor): void; + /** + * update preview style with animation + * @param { AnimationOptions } options - animation options + * @param { function } handler - change style functions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * update preview style with animation + * @param { AnimationOptions } options - animation options + * @param { function } handler - change style functions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + animate(options: AnimationOptions, handler: () =>void): void; + } + + /** + * Define the drag event paramters + * + * @interface DragEventParam + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface DragEventParam { + + /** + * The information containing the drag event. + * @type { DragEvent } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * The information containing the drag event. + * @type { DragEvent } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + event: DragEvent; + + /** + * Additional information about the drag info. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Additional information about the drag info. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + extraParams: string; + } + + /** + * Execute a drag event. + * @param { CustomBuilder | DragItemInfo } custom - Object used for prompts displayed when the object is dragged. + * @param { DragInfo } dragInfo - Information about the drag event. + * @param { AsyncCallback<{ event: DragEvent, extraParams: string }> } callback - Callback that contains the drag event information. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Execute a drag event. + * @param { CustomBuilder | DragItemInfo } custom - Object used for prompts displayed when the object is dragged. + * @param { DragInfo } dragInfo - Information about the drag event. + * @param { AsyncCallback<DragEventParam> } callback - Callback that contains the drag event information. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export function executeDrag(custom: CustomBuilder | DragItemInfo, dragInfo: DragInfo, + callback: AsyncCallback<DragEventParam>): void; + + /** + * Execute a drag event. + * @param { CustomBuilder | DragItemInfo } custom - Object used for prompts displayed when the object is dragged. + * @param { DragInfo } dragInfo - Information about the drag event. + * @returns { Promise<{ event: DragEvent, extraParams: string }> } A Promise with the drag event information. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Execute a drag event. + * @param { CustomBuilder | DragItemInfo } custom - Object used for prompts displayed when the object is dragged. + * @param { DragInfo } dragInfo - Information about the drag event. + * @returns { Promise<DragEventParam> } A Promise with the drag event information. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export function executeDrag(custom: CustomBuilder | DragItemInfo, dragInfo: DragInfo): Promise<DragEventParam>; + + /** + * Create one drag action object, which can be used for starting drag later or monitoring + * the drag status after drag started. + * @param { Array<CustomBuilder | DragItemInfo> } customArray - Objects used for prompts + * displayed when the objects are dragged. + * @param { DragInfo } dragInfo - Information about the drag event. + * @returns { DragAction } one drag action object + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Create one drag action object, which can be used for starting drag later or monitoring + * the drag status after drag started. + * @param { Array<CustomBuilder | DragItemInfo> } customArray - Objects used for prompts + * displayed when the objects are dragged. + * @param { DragInfo } dragInfo - Information about the drag event. + * @returns { DragAction } one drag action object + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal handling failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export function createDragAction(customArray: Array<CustomBuilder | DragItemInfo>, dragInfo: DragInfo): DragAction; + + /** + * Get drag preview object. + * @returns { DragPreview } An drag preview object. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Get drag preview object. + * @returns { DragPreview } An drag preview object. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export function getDragPreview(): DragPreview; +} +export default dragController; \ No newline at end of file diff --git a/api/@ohos.arkui.dragController.d.ts b/api/@ohos.arkui.dragController.d.ts index 9d94a33e049162c2f1351016b7da131fc178bdce..eaf42e314c08acf88dbfb2962011ece5cde43612 100644 --- a/api/@ohos.arkui.dragController.d.ts +++ b/api/@ohos.arkui.dragController.d.ts @@ -866,6 +866,211 @@ declare namespace dragController { */ READY = 1, } + + /** + * Defines the drag spring loading state. + * Under default system configuration, if no CANCEL occurs, the state reporting is as follows: + * Hover still--500ms-->BEGIN-->100ms-->UPDATE-->100ms-->UPDATE-->100ms-->UPDATE-->100ms-->END + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + enum DragSpringLoadingState { + /** + * The user has remained stationary for a period, initiating the spring loading process. + * This state allows for some preparatory operations during spring loading. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + BEGIN, + /** + * Already in the spring loading state. The system periodically checks the user's hover status. + * If the user remains stationary, it triggers an UPDATE state notification at regular intervals. + * This state allows for UI effect refreshes to emphasize the hover state. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + UPDATE, + /** + * The entire spring loading state ends. The application can perform cleanup operations + * and execute navigation or view switching actions when this state occurs. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + END, + /** + * After entering the BEGIN state, if the user moves out of the component range, exceeds the displacement + * threshold, lifts the finger, or switches windows (pull out), the CANCEL state is triggered. + * The application should restore the UI style and cancel any pending navigation or view switching actions. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + CANCEL + } + + /** + * Defines parameters affecting spring loading detection. Typically, default system configurations suffice. + * Customization can be done by specifying the config when binding onDragSpringLoading or dynamically modifying it + * using the updateConfiguration method during the BEGIN state. + * + * @typedef { DragSpringLoadingConfiguration } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + interface DragSpringLoadingConfiguration { + /** + * Time interval to maintain a stationary state before entering spring loading. Default: 500 ms. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + stillTimeLimit?: number; + + /** + * Interval between update notifications after entering the spring loading state. Default: 100ms. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + updateInterval?: number; + + /** + * Maximum number of update notifications to report while in the spring loading state. Default: 3. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + updateNotifyCount?: number; + + /** + * Maximum wait time from the last UPDATE state to the end of spring loading. Default: 100ms. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + updateToFinishInterval?: number; + } + + /** + * Defines drag-related information when triggering spring loading callbacks. + * This interface provides drag data summaries and additional drag information, useful for applications + * needing to dynamically determine whether to respond to spring loading callbacks based on drag data. + * + * @typedef { SpringLoadingDragInfos } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + interface SpringLoadingDragInfos { + /** + * Summary of the dragged data. This field is absent if the source application did not configure data. + * + * @type { ?unifiedDataChannel.Summary } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + dataSummary?: unifiedDataChannel.Summary; + /** + * Summary of the dragged data. This field is absent if the source application did not configure data. + * + * @type { ?unifiedDataChannel.Summary } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + extraInfos?: string; + } + + /** + * Context information for the current spring loading trigger. This object is passed to the application + * in the spring loading callback, allowing it to obtain the current state, dynamically refresh UI effects, + * and access drag data to determine whether to handle the drag operation. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + class SpringLoadingContext { + /** + * Current spring loading state. Refer to the DragSpringLoadingState enum for details. + * + * @type { DragSpringLoadingState } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + state: DragSpringLoadingState; + /** + * Sequence number of the current spring loading state notification. Begins at 0 for BEGIN and increments + * with each callback. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + currentNotifySequence: number; + /** + * Drag-related information. Absent when the state is CANCEL. + * + * @type { ?SpringLoadingDragInfos } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + dragInfos?: SpringLoadingDragInfos; + /** + * Current spring loading configuration. Absent when the state is CANCEL. + * + * @type { ?DragSpringLoadingConfiguration } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + currentConfig?: DragSpringLoadingConfiguration; + /** + * Aborts subsequent spring loading triggers. + * Note: Aborting does not trigger a CANCEL notification, the application must handle state cleanup when aborting. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + abort(): void; + /** + * Updates the spring loading configuration for the current trigger. Only effective during the BEGIN state. + * This method does not modify the original configuration set during onDragSpringLoading binding. + * It provides an opportunity for dynamic configuration updates during the current trigger. + * Typically, applications should use default configurations or set them once during binding. + * Use this method sparingly, e.g., for different drag data types requiring varied UX timing. + * + * @param { config } The spring loading detection configuration + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + updateConfiguration(config: DragSpringLoadingConfiguration): void; + } } export default dragController; diff --git a/api/@ohos.arkui.drawableDescriptor.d.ets b/api/@ohos.arkui.drawableDescriptor.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..70c73a174cad9511eb9dc1033799d0db5f197600 --- /dev/null +++ b/api/@ohos.arkui.drawableDescriptor.d.ets @@ -0,0 +1,300 @@ +/* + * Copyright (c) 2023-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import image from './@ohos.multimedia.image'; + +/** + * Use the DrawableDescriptor class to get drawable image. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ +/** + * Use the DrawableDescriptor class to get drawable image. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +/** + * Use the DrawableDescriptor class to get drawable image. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class DrawableDescriptor { + /** + * Creates a new DrawableDescriptor. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi Hide this for inner system use. + * @since 10 + */ + constructor(); + + /** + * Get pixelMap of drawable image. + * + * @returns { image.PixelMap } Return the PixelMap of the calling DrawableDescriptor object. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Get pixelMap of drawable image. + * + * @returns { image.PixelMap } Return the PixelMap of the calling DrawableDescriptor object. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Get pixelMap of drawable image. + * + * @returns { image.PixelMap } Return the PixelMap of the calling DrawableDescriptor object. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getPixelMap(): image.PixelMap; +} + +/** + * Use the LayeredDrawableDescriptor class to get the foreground, the background and the mask DrawableDescriptor. + * + * @extends DrawableDescriptor + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ +/** + * Use the LayeredDrawableDescriptor class to get the foreground, the background and the mask DrawableDescriptor. + * + * @extends DrawableDescriptor + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +/** + * Use the LayeredDrawableDescriptor class to get the foreground, the background and the mask DrawableDescriptor. + * + * @extends DrawableDescriptor + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class LayeredDrawableDescriptor extends DrawableDescriptor { + /** + * Creates a new LayeredDrawableDescriptor. + * + * @param { DrawableDescriptor } [foreground] - Indicates the foreground option to create LayeredDrawableDescriptor. + * @param { DrawableDescriptor } [background] - Indicates the background option to create LayeredDrawableDescriptor. + * @param { DrawableDescriptor } [mask] - Indicates the mask option to create LayeredDrawableDescriptor. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + constructor( + foreground?: DrawableDescriptor, + background?: DrawableDescriptor, + mask?: DrawableDescriptor + ); + + /** + * Get DrawableDescriptor for the foreground. + * + * @returns { DrawableDescriptor } Return the DrawableDescriptor object of foreground. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Get DrawableDescriptor for the foreground. + * + * @returns { DrawableDescriptor } Return the DrawableDescriptor object of foreground. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Get DrawableDescriptor for the foreground. + * + * @returns { DrawableDescriptor } Return the DrawableDescriptor object of foreground. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getForeground(): DrawableDescriptor; + + /** + * Get DrawableDescriptor for the background. + * + * @returns { DrawableDescriptor } Return the DrawableDescriptor object of background. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Get DrawableDescriptor for the background. + * + * @returns { DrawableDescriptor } Return the DrawableDescriptor object of background. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Get DrawableDescriptor for the background. + * + * @returns { DrawableDescriptor } Return the DrawableDescriptor object of background. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getBackground(): DrawableDescriptor; + + /** + * Get DrawableDescriptor for the mask. + * + * @returns { DrawableDescriptor } Return the DrawableDescriptor object of mask. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Get DrawableDescriptor for the mask. + * + * @returns { DrawableDescriptor } Return the DrawableDescriptor object of mask. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Get DrawableDescriptor for the mask. + * + * @returns { DrawableDescriptor } Return the DrawableDescriptor object of mask. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getMask(): DrawableDescriptor; + + + /** + * Get the clip path info of the adaptive icon mask. + * + * @returns { string } Return the clip path info of mask. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Get the clip path info of the adaptive icon mask. + * + * @returns { string } Return the clip path info of mask. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Get the clip path info of the adaptive icon mask. + * + * @returns { string } Return the clip path info of mask. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static getMaskClipPath(): string; +} + +/** + * Use the PixelMapDrawableDescriptor class to get the resource of pixelmap or resource descriptor information. + * + * @extends DrawableDescriptor + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ +export declare class PixelMapDrawableDescriptor extends DrawableDescriptor { + /** + * Creates a new PixelMapDrawableDescriptor. + * @param { image.PixelMap } src - Indicates the resource to create PixelMapDrawableDescriptor. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + constructor(src?: image.PixelMap); +} + +/** + * Animation control options + * + * @interface AnimationOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface AnimationOptions { + /** + * The duration of animation playback once. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + duration?: number; + /** + * Animation playback times. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iterations?: number; +} + +/** + * Define the data structure for PixelMap animations. + * + * @extends DrawableDescriptor + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class AnimatedDrawableDescriptor extends DrawableDescriptor { + /** + * Creates a new AnimatedDrawableDescriptor. + * + * @param { Array<image.PixelMap> } pixelMaps - PixelMap List. + * @param { AnimationOptions } [options] - Animation control options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(pixelMaps: Array<image.PixelMap>, options?: AnimationOptions); +} diff --git a/api/@ohos.arkui.inspector.d.ets b/api/@ohos.arkui.inspector.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..d9cd08204298a12478cef2859e9cdecc0684c1b2 --- /dev/null +++ b/api/@ohos.arkui.inspector.d.ets @@ -0,0 +1,117 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Used to do observer layout and draw event for component. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Used to do observer layout and draw event for component. + * + * @namespace inspector + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +declare namespace inspector { + + /** + * The ComponentObserver is used to listen for layout and draw events. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * The ComponentObserver is used to listen for layout and draw events. + * + * @interface ComponentObserver + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface ComponentObserver { + + /** + * Registers a callback with the corresponding query condition by using the handle. + * This callback is triggered when the component layout complete. + * @param { string } type - type of the listened event. + * @param { ()=>void } callback - callback of the listened event. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Registers a callback with the corresponding query condition by using the handle. + * This callback is triggered when the component layout complete. + * @param { 'layout' | 'draw' } type - type of the listened event. + * @param { function } callback - callback of the listened event. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + on(type: 'layout' | 'draw', callback: () => void): void; + + /** + * Deregisters a callback with the corresponding query condition by using the handle. + * This callback is not triggered when the component layout complete. + * @param { string } type - type of the listened event. + * @param { ()=>void } callback - callback of the listened event. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Deregisters a callback with the corresponding query condition by using the handle. + * This callback is not triggered when the component layout complete. + * @param { 'layout' | 'draw' } type - type of the listened event. + * @param { function } callback - callback of the listened event. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + off(type: 'layout' | 'draw', callback?: () => void): void; + } + + /** + * Sets the component after layout or draw criteria and returns the corresponding listening handle + * @param { string } id - component id. + * @returns { ComponentObserver } create listener for observer component event. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Sets the component after layout or draw criteria and returns the corresponding listening handle + * @param { string } id - component id. + * @returns { ComponentObserver } create listener for observer component event. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function createComponentObserver(id: string): ComponentObserver; +} +export default inspector; \ No newline at end of file diff --git a/api/@ohos.arkui.inspector.d.ts b/api/@ohos.arkui.inspector.d.ts index e8c9892f5be456627ec11c277b16d84e1b025378..e1cc913b37dcfdee4f89530e88bfd7c29f8f04ab 100644 --- a/api/@ohos.arkui.inspector.d.ts +++ b/api/@ohos.arkui.inspector.d.ts @@ -18,6 +18,8 @@ * @kit ArkUI */ +import { Callback } from './@ohos.base'; + /** * Used to do observer layout and draw event for component. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -42,7 +44,7 @@ declare namespace inspector { * @since 10 */ /** - * The ComponentObserver is used to listen for layout and draw events. + * The ComponentObserver is used to listen for layout, draw and drawChildren events. * * @interface ComponentObserver * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -135,6 +137,30 @@ declare namespace inspector { * @since 12 */ off(type: 'draw', callback?: () => void): void; + + /** + * Registers a callback with the corresponding query condition by using the handle. + * This callback is triggered when the child of component draw complete. + * @param { 'drawChildren' } type - type of the listened event. + * @param { Callback<void> } callback - callback of the listened event. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + on(type: 'drawChildren', callback: Callback<void>): void; + + /** + * Deregisters a callback with the corresponding query condition by using the handle. + * This callback is not triggered when the child of component draw complete. + * @param { 'drawChildren' } type - type of the listened event. + * @param { Callback<void> } callback - callback of the listened event. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + off(type: 'drawChildren', callback?: Callback<void>): void; } /** diff --git a/api/@ohos.arkui.modifier.d.ts b/api/@ohos.arkui.modifier.d.ts index 859cb2db73f7620c07f617795c67e04197c3ae9a..0605302b7a84295ce732052acd5a65a6d6d9478b 100644 --- a/api/@ohos.arkui.modifier.d.ts +++ b/api/@ohos.arkui.modifier.d.ts @@ -195,6 +195,12 @@ export { ImageModifier } from './arkui/ImageModifier'; * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 12 */ +/** + * Export SymbolGlyphModifier, which is used to expose applyNormalAttribute function. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ export { SymbolGlyphModifier } from './arkui/SymbolGlyphModifier'; /** * Export ImageSpanModifier, which is used to expose applyNormalAttribute function. @@ -617,3 +623,11 @@ export { SymbolSpanModifier } from './arkui/SymbolSpanModifier'; * @since 12 */ export { ParticleModifier } from './arkui/ParticleModifier'; + +/** + * Export StepperModifier, which is used to expose applyNormalAttribute function. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 20 + */ +export { StepperModifier } from './arkui/StepperModifier'; diff --git a/api/@ohos.arkui.node.d.ets b/api/@ohos.arkui.node.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..0490532ee6c59fe65fecfe9982fec11f670ef8a8 --- /dev/null +++ b/api/@ohos.arkui.node.d.ets @@ -0,0 +1,180 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Export NodeRenderType, RenderOptions, BuilderNode, which is used to create a node trees by builder function and manage the update of the tree. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Export NodeRenderType, RenderOptions, BuilderNode, which is used to create a node trees by builder function and manage the update of the tree. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { NodeRenderType, RenderOptions, BuilderNode } from './arkui/BuilderNode'; + +/** + * Export BuildOptions which is used to create a node trees by builder function and manage the update of the tree. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { BuildOptions } from './arkui/BuilderNode'; + +/** + * Export NodeController, which defines the controller of node container. Provides lifecycle callbacks for the associated NodeContainer + * and methods to control the child node of the NodeContainer. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Export NodeController, which defines the controller of node container. Provides lifecycle callbacks for the associated NodeContainer + * and methods to control the child node of the NodeContainer. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { NodeController } from './arkui/NodeController'; + +/** + * Export FrameNode. FrameNode defines a basic type of node which contains a RenderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Export FrameNode. FrameNode defines a basic type of node which contains a RenderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { FrameNode, LayoutConstraint } from './arkui/FrameNode'; + +/** + * Export FrameNode. FrameNode defines a basic type of node which contains a RenderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { typeNode, NodeAdapter } from './arkui/FrameNode'; + +/** + * Export Graphics. Defines the basic types related to the Graphics. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Export Graphics. Defines the basic types related to the Graphics. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { DrawContext, Size, Offset, Position, Pivot, Scale, Translation, Matrix4, Rotation, Frame, RoundRect, Circle, CommandPath, ShapeMask, ShapeClip, BorderRadiuses, CornerRadius, Edges, edgeColors, edgeWidths, borderStyles, borderRadiuses, LengthMetricsUnit } from './arkui/Graphics'; + +/** + * Export Graphics. Defines the basic types related to the Graphics. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { LengthUnit, SizeT, LengthMetrics, ColorMetrics } from './arkui/Graphics'; + +/** + * Export RenderNode. RenderNode contains node tree operations and render property operations on node. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Export RenderNode. RenderNode contains node tree operations and render property operations on node. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { RenderNode } from './arkui/RenderNode'; + +/** + * Export XComponentNode, which extends FrameNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Export XComponentNode, which extends FrameNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { XComponentNode } from './arkui/XComponentNode'; + +/** + * Export Content. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { Content } from './arkui/Content'; + +/** + * Export ComponentContent. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { ComponentContent } from './arkui/ComponentContent'; + +/** + * Export NodeContent. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export { NodeContent } from './arkui/NodeContent'; \ No newline at end of file diff --git a/api/@ohos.arkui.node.d.ts b/api/@ohos.arkui.node.d.ts index 018747d717811a129a57671180669ff87fb1ab70..67602a631009b49554a601a4c2adafff09876bc6 100644 --- a/api/@ohos.arkui.node.d.ts +++ b/api/@ohos.arkui.node.d.ts @@ -42,6 +42,15 @@ export { NodeRenderType, RenderOptions, BuilderNode } from './arkui/BuilderNode' */ export { BuildOptions } from './arkui/BuilderNode'; +/** + * Export InputEventType which refers to the event type used for posting. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export { InputEventType } from './arkui/BuilderNode'; + /** * Export NodeController, which defines the controller of node container. Provides lifecycle callbacks for the associated NodeContainer * and methods to control the child node of the NodeContainer. @@ -76,7 +85,7 @@ export { NodeController } from './arkui/NodeController'; * @atomicservice * @since 12 */ -export { FrameNode, LayoutConstraint, ExpandMode } from './arkui/FrameNode'; +export { FrameNode, LayoutConstraint, ExpandMode, UIState } from './arkui/FrameNode'; /** * Export FrameNode. FrameNode defines a basic type of node which contains a RenderNode. diff --git a/api/@ohos.arkui.observer.d.ets b/api/@ohos.arkui.observer.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..a3771b8a190d643731e794a5dad3e31534548f62 --- /dev/null +++ b/api/@ohos.arkui.observer.d.ets @@ -0,0 +1,1275 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ +import { Callback } from './@ohos.base'; +import UIAbilityContext from './application/UIAbilityContext'; +import { NavigationOperation, NavBar,NavPathStack } from './arkui/component/navigation'; +import { ResourceStr } from './arkui/component/units' +import { UIContext } from './@ohos.arkui.UIContext' +/** + * Register callbacks to observe ArkUI behavior. + * + * @namespace uiObserver + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Register callbacks to observe ArkUI behavior. + * + * @namespace uiObserver + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +declare namespace uiObserver { + /** + * NavDestination state. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @since 11 + */ + /** + * NavDestination state. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + export enum NavDestinationState { + /** + * When the NavDestination is displayed. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @since 11 + */ + /** + * When the NavDestination is displayed. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + ON_SHOWN = 0, + + /** + * When the NavDestination is hidden. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @since 11 + */ + /** + * When the NavDestination is hidden. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + ON_HIDDEN = 1, + + /** + * When the NavDestination appear. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + ON_APPEAR = 2, + + /** + * When the NavDestination disappear. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + ON_DISAPPEAR = 3, + + /** + * Before the NavDestination is displayed. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + ON_WILL_SHOW = 4, + + /** + * Before the NavDestination is hidden. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + ON_WILL_HIDE = 5, + + /** + * Before the NavDestination is appeared. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + ON_WILL_APPEAR = 6, + + /** + * Before the NavDestination is disappeared. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + ON_WILL_DISAPPEAR = 7, + + /** + * When back press event happened in NavDestination. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + ON_BACKPRESS = 100 + } + + /** + * Router page state. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Router page state. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export enum RouterPageState { + /** + * When the router page create. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * When the router page create. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + ABOUT_TO_APPEAR = 0, + + /** + * When the router page destroy. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * When the router page destroy. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + ABOUT_TO_DISAPPEAR = 1, + + /** + * When the router page show. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * When the router page show. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + ON_PAGE_SHOW = 2, + + /** + * When the router page hide. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * When the router page hide. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + ON_PAGE_HIDE = 3, + + /** + * When back press event happened in the router page. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * When back press event happened in the router page. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + ON_BACK_PRESS = 4 + } + + /** + * ScrollEvent type. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export enum ScrollEventType { + /** + * When the ScrollEvent start. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + SCROLL_START = 0, + + /** + * When the ScrollEvent stop. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + SCROLL_STOP = 1 + } + + /** + * TabContent state. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export enum TabContentState { + /** + * When the TabContent hidden. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + ON_SHOW = 0, + + /** + * When the TabContent hidden. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + ON_HIDE = 1 + } + + /** + * NavDestination info. + * + * @interface NavDestinationInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * NavDestination info. + * + * @interface NavDestinationInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface NavDestinationInfo { + /** + * Navigation id. + * + * @type { ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Navigation id. + * + * @type { ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + navigationId: ResourceStr, + + /** + * Changed NavDestination name. + * + * @type { ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Changed NavDestination name. + * + * @type { ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + name: ResourceStr, + + /** + * Changed NavDestination state. + * + * @type { NavDestinationState } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Changed NavDestination state. + * + * @type { NavDestinationState } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + state: NavDestinationState, + + /** + * NavDestination index. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + index: number; + + /** + * The detailed parameter of NavDestination. + * + * @type { ?Object } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + param?: Object; + + /** + * Auto-generated navDestination id, which is different from common property id of Component. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + navDestinationId: string; + } + + /** + * Navigation info. + * + * @interface NavigationInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface NavigationInfo { + /** + * Navigation id. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + navigationId: string; + + /** + * Navigation path stack. + * + * @type { NavPathStack } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + pathStack: NavPathStack; + } + + /** + * ScrollEvent info. + * + * @interface ScrollEventInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface ScrollEventInfo { + /** + * Scroll id. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + id: string, + + /** + * The uniqueId of the scrollable component. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + uniqueId: number, + + /** + * Changed ScrollEvent type. + * + * @type { ScrollEventType } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + scrollEvent: ScrollEventType, + + /** + * Changed ScrollEvent offset. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + offset: number + } + + /** + * TabContent info. + * + * @typedef TabContentInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface TabContentInfo { + /** + * TabContent id. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + tabContentId: string, + + /** + * TabContent uniqueId. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + tabContentUniqueId: number, + + /** + * The state of TabContent. + * + * @type { TabContentState } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + state: TabContentState, + + /** + * The index of TabContent in Tabs. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + index: number, + + /** + * Tabs id. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + id: string, + + /** + * Tabs uniqueId. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + uniqueId: number + } + + /** + * observer options. + * + * @interface ObserverOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface ObserverOptions { + /** + * component id. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + id: string + } + + /** + * Router page info. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Router page info. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export class RouterPageInfo { + /** + * The context of the changed router page. + * + * @type { UIAbilityContext | UIContext } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * The context of the changed router page. + * + * @type { UIAbilityContext | UIContext } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + context: UIAbilityContext | UIContext; + + /** + * The index of the changed router page in router stack. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * The index of the changed router page in router stack. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + index: number; + + /** + * The name of the changed router page. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * The name of the changed router page. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + name: string; + + /** + * The path of the changed router page. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * The path of the changed router page. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + path: string; + + /** + * The state of the changed router page. + * + * @type { RouterPageState } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * The state of the changed router page. + * + * @type { RouterPageState } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + state: RouterPageState; + + /** + * The unique identifier of the router page. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + pageId: string; + } + + /** + * Density info. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export class DensityInfo { + /** + * The context of the changed screen density. + * + * @type { UIContext } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + context: UIContext; + + /** + * The changed screen density. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + density: number; + } + + /** + * NavDestination switch info + * + * @interface NavDestinationSwitchInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface NavDestinationSwitchInfo { + /** + * The context of the navigation operation. + * + * @type { UIAbilityContext | UIContext } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + context: UIAbilityContext | UIContext; + + /** + * From navigation content info. + * + * @type { NavDestinationInfo | NavBar } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + from: NavDestinationInfo | NavBar; + + /** + * To navigation content info. + * + * @type { NavDestinationInfo | NavBar } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + to: NavDestinationInfo | NavBar; + + /** + * The operation type. + * + * @type { NavigationOperation } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + operation: NavigationOperation; + } + + /** + * Indicates the options of NavDestination switch. + * + * @interface NavDestinationSwitchObserverOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface NavDestinationSwitchObserverOptions { + /** + * The navigationId that need observation + * + * @type { ResourceStr } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + navigationId: ResourceStr; + } + /** + * Registers a callback function to be called when the navigation destination is updated. + * + * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. + * @param { object } options - The options object. + * @param { Callback<NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Registers a callback function to be called when the navigation destination is updated. + * + * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. + * @param { object } options - The options object. + * @param { Callback<NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function on<T,V>(type: string, options: T, callback: Callback<V>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationUpdate' } type - The type of event to remove the listener for. Must be 'navDestinationUpdate'. + // * @param { object } options - The options object. + // * @param { Callback<NavDestinationInfo> } callback - The callback function to remove. If not provided, all callbacks for the given event type and + // * navigation ID will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationUpdate' } type - The type of event to remove the listener for. Must be 'navDestinationUpdate'. + // * @param { object } options - The options object. + // * @param { Callback<NavDestinationInfo> } callback - The callback function to remove. If not provided, all callbacks for the given event type and + // * navigation ID will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + export function off<T,V>(type: string, options: T, callback: Callback<V>): void; + + // /** + // * Registers a callback function to be called when the navigation destination is updated. + // * + // * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. + // * @param { Callback<NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Registers a callback function to be called when the navigation destination is updated. + // * + // * @param { 'navDestinationUpdate' } type - The type of event to listen for. Must be 'navDestinationUpdate'. + // * @param { Callback<NavDestinationInfo> } callback - The callback function to be called when the navigation destination is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on(type: 'navDestinationUpdate', callback: Callback<NavDestinationInfo>): void; + + export function on<T>(type: string, callback: Callback<T>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationUpdate'} type - The type of event to remove the listener for. Must be 'navDestinationUpdate'. + // * @param { Callback<NavDestinationInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationUpdate'} type - The type of event to remove the listener for. Must be 'navDestinationUpdate'. + // * @param { Callback<NavDestinationInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off(type: 'navDestinationUpdate', callback?: Callback<NavDestinationInfo>): void; + + export function off<T>(type: string, callback?: Callback<T>): void; + + // /** + // * Registers a callback function to be called when the scroll event start or stop. + // * + // * @param { 'scrollEvent' } type - The type of event to listen for. Must be 'scrollEvent'. + // * @param { ObserverOptions } options - The options object. + // * @param { Callback<ScrollEventInfo> } callback - The callback function to be called when the scroll event start or stop. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on(type: 'scrollEvent', options: ObserverOptions, callback: Callback<ScrollEventInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'scrollEvent' } type - The type of event to remove the listener for. Must be 'scrollEvent'. + // * @param { ObserverOptions } options - The options object. + // * @param { Callback<ScrollEventInfo> } callback - The callback function to remove. If not provided, all callbacks for the given event type and + // * scroll ID will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off(type: 'scrollEvent', options: ObserverOptions, callback: Callback<ScrollEventInfo>): void; + + // /** + // * Registers a callback function to be called when the scroll event start or stop. + // * + // * @param { 'scrollEvent' } type - The type of event to listen for. Must be 'scrollEvent'. + // * @param { Callback<ScrollEventInfo> } callback - The callback function to be called when the scroll event start or stop. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on(type: 'scrollEvent', callback: Callback<ScrollEventInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'scrollEvent'} type - The type of event to remove the listener for. Must be 'scrollEvent'. + // * @param { Callback<ScrollEventInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off(type: 'scrollEvent', callback?: Callback<ScrollEventInfo>): void; + + // /** + // * Registers a callback function to be called when the router page is updated. + // * + // * @param { 'routerPageUpdate' } type - The type of event to listen for. Must be 'routerPageUpdate'. + // * @param { UIAbilityContext | UIContext } context - The context scope of the observer. + // * @param { Callback<RouterPageInfo> } callback - The callback function to be called when the router page is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Registers a callback function to be called when the router page is updated. + // * + // * @param { 'routerPageUpdate' } type - The type of event to listen for. Must be 'routerPageUpdate'. + // * @param { UIAbilityContext | UIContext } context - The context scope of the observer. + // * @param { Callback<RouterPageInfo> } callback - The callback function to be called when the router page is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on(type: 'routerPageUpdate', context: UIAbilityContext | UIContext, callback: Callback<RouterPageInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'routerPageUpdate' } type - The type of event to remove the listener for. Must be 'routerPageUpdate'. + // * @param { UIAbilityContext | UIContext } context - The context scope of the observer. + // * @param { Callback<RouterPageInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @since 11 + // */ + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'routerPageUpdate' } type - The type of event to remove the listener for. Must be 'routerPageUpdate'. + // * @param { UIAbilityContext | UIContext } context - The context scope of the observer. + // * @param { Callback<RouterPageInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off(type: 'routerPageUpdate', context: UIAbilityContext | UIContext, callback: Callback<RouterPageInfo>): void; + + // /** + // * Registers a callback function to be called when the screen density is updated. + // * + // * @param { 'densityUpdate' } type - The type of event to listen for. Must be 'densityUpdate'. + // * @param { UIContext } context - The context scope of the observer. + // * @param { Callback<DensityInfo> } callback - The callback function to be called when the screen density is updated. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on(type: 'densityUpdate', context: UIContext, callback: Callback<DensityInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'densityUpdate' } type - The type of event to remove the listener for. Must be 'densityUpdate'. + // * @param { UIContext } context - The context scope of the observer. + // * @param { Callback<DensityInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off(type: 'densityUpdate', context: UIContext, callback?: Callback<DensityInfo>): void; + + // /** + // * Registers a callback function to be called when the draw command will be drawn. + // * + // * @param { 'willDraw' } type - The type of event to listen for. Must be 'willDraw'. + // * @param { UIContext } context - The context scope of the observer. + // * @param { Callback<void> } callback - The callback function to be called when the draw command will be drawn. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on(type: 'willDraw', context: UIContext, callback: Callback<void>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'willDraw' } type - The type of event to remove the listener for. Must be 'willDraw'. + // * @param { UIContext } context - The context scope of the observer. + // * @param { Callback<void> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off(type: 'willDraw', context: UIContext, callback?: Callback<void>): void; + + // /** + // * Registers a callback function to be called when the layout is done. + // * + // * @param { 'didLayout' } type - The type of event to listen for. Must be 'didLayout'. + // * @param { UIContext } context - The context scope of the observer. + // * @param { Callback<void> } callback - The callback function to be called when the layout is done. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on(type: 'didLayout', context: UIContext, callback: Callback<void>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'didLayout' } type - The type of event to remove the listener for. Must be 'didLayout'. + // * @param { UIContext } context - The context scope of the observer. + // * @param { Callback<void> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off(type: 'didLayout', context: UIContext, callback?: Callback<void>): void; + + // /** + // * Registers a callback function to be called when the tabContent is showed or hidden. + // * + // * @param { 'tabContentUpdate' } type - The type of event to listen for. Must be 'tabContentUpdate'. + // * @param { ObserverOptions } options - The options object. + // * @param { Callback<TabContentInfo> } callback - The callback function to be called when when the tabContent is showed or hidden. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on(type: 'tabContentUpdate', options: ObserverOptions, callback: Callback<TabContentInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'tabContentUpdate' } type - The type of event to remove the listener for. Must be 'tabContentUpdate'. + // * @param { ObserverOptions } options - The options object. + // * @param { Callback<TabContentInfo> } callback - The callback function to remove. If not provided, all callbacks for the given event type and + // * Tabs ID will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off(type: 'tabContentUpdate', options: ObserverOptions, callback?: Callback<TabContentInfo>): void; + + // /** + // * Registers a callback function to be called when the tabContent is showed or hidden. + // * + // * @param { 'tabContentUpdate' } type - The type of event to listen for. Must be 'tabContentUpdate'. + // * @param { Callback<TabContentInfo> } callback - The callback function to be called when the tabContent is showed or hidden. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on(type: 'tabContentUpdate', callback: Callback<TabContentInfo>): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'tabContentUpdate'} type - The type of event to remove the listener for. Must be 'tabContentUpdate'. + // * @param { Callback<TabContentInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off(type: 'tabContentUpdate', callback?: Callback<TabContentInfo>): void; + + // /** + // * Registers a callback function to be called when the navigation switched to a new navDestination. + // * + // * @param { 'navDestinationSwitch' } type - The type of event to listen for. Must be 'navDestinationSwitch'. + // * @param { UIAbilityContext | UIContext } context - The context scope of the observer. + // * @param { Callback<NavDestinationSwitchInfo> } callback - The callback function to be called when the navigation switched to a new navDestination. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on( + // type: 'navDestinationSwitch', + // context: UIAbilityContext | UIContext, + // callback: Callback<NavDestinationSwitchInfo> + // ): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationSwitch' } type - The type of event to remove the listener for. Must be 'navDestinationSwitch'. + // * @param { UIAbilityContext | UIContext } context - The context scope of the observer. + // * @param { Callback<NavDestinationSwitchInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off( + // type: 'navDestinationSwitch', + // context: UIAbilityContext | UIContext, + // callback?: Callback<NavDestinationSwitchInfo> + // ): void; + + // /** + // * Registers a callback function to be called when the navigation switched to a new navDestination. + // * + // * @param { 'navDestinationSwitch' } type - The type of event to listen for. Must be 'navDestinationSwitch'. + // * @param { UIAbilityContext | UIContext } context - The context scope of the observer. + // * @param { NavDestinationSwitchObserverOptions } observerOptions - Options. + // * @param { Callback<NavDestinationSwitchInfo> } callback - The callback function to be called when the navigation switched to a new navDestination. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function on( + // type: 'navDestinationSwitch', + // context: UIAbilityContext | UIContext, + // observerOptions: NavDestinationSwitchObserverOptions, + // callback: Callback<NavDestinationSwitchInfo> + // ): void; + + // /** + // * Removes a callback function that was previously registered with `on()`. + // * + // * @param { 'navDestinationSwitch' } type - The type of event to remove the listener for. Must be 'navDestinationSwitch'. + // * @param { UIAbilityContext | UIContext } context - The context scope of the observer. + // * @param { NavDestinationSwitchObserverOptions } observerOptions - Options. + // * @param { Callback<NavDestinationSwitchInfo> } [callback] - The callback function to remove. If not provided, all callbacks for the given event type + // * will be removed. + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // export function off( + // type: 'navDestinationSwitch', + // context: UIAbilityContext | UIContext, + // observerOptions: NavDestinationSwitchObserverOptions, + // callback?: Callback<NavDestinationSwitchInfo> + // ): void; +} +export default uiObserver; \ No newline at end of file diff --git a/api/@ohos.arkui.observer.d.ts b/api/@ohos.arkui.observer.d.ts index ea3a7070d3e855e1fd57d70bec5faae845c49396..29af3503e28d49e2c453312902b592d5ba136eda 100644 --- a/api/@ohos.arkui.observer.d.ts +++ b/api/@ohos.arkui.observer.d.ts @@ -158,7 +158,7 @@ declare namespace uiObserver { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ ON_ACTIVE = 8, @@ -168,7 +168,7 @@ declare namespace uiObserver { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 17 */ ON_INACTIVE = 9, @@ -511,6 +511,17 @@ declare namespace uiObserver { * @since 12 */ pathStack: NavPathStack; + + /** + * The uniqueId of the navigation. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + uniqueId?: number; } /** @@ -565,7 +576,18 @@ declare namespace uiObserver { * @atomicservice * @since 12 */ - offset: number + offset: number, + + /** + * Scroll axis. + * + * @type { ?Axis } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + axis?: Axis } /** diff --git a/api/@ohos.arkui.performanceMonitor.d.ets b/api/@ohos.arkui.performanceMonitor.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..455156910f791455b4486d30cd9e7c751b95f53d --- /dev/null +++ b/api/@ohos.arkui.performanceMonitor.d.ets @@ -0,0 +1,162 @@ +/* + * Copyright (C) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Provides interfaces to monitor a scene for performance measurement. + * + * <p>These interfaces are used to monitor the begin, end, and value changes of finger processes that last for at least 3 ms. + * + * <p>Example: + * import "@ohos.arkui.performanceMonitor.d.ts" + * To start scene monitoring that is expected to complete within 5 ms: + * <pre>{@code + * performanceMonitor.begin(string, ActionType, string); + * //scene finished + * performanceMonitor.end(string); + * }</pre> + * + * <p>Each {@code begin} matches one {@code end}, and they must have the same scene id. + * + * @namespace performanceMonitor + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 10 + */ + declare namespace performanceMonitor { + /** + * Enumerates the input event type. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 10 + */ + export enum ActionType { + /** + * The user presses the finger on the screen. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 10 + */ + LAST_DOWN = 0, + + /** + * The user lifts up the finger from the screen. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 10 + */ + LAST_UP = 1, + + /** + * The user first moves the finger after pressing down the screen. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 10 + */ + FIRST_MOVE = 2 + } + + /** + * Enumerates the input source type. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + export enum SourceType { + /** + * The user touches the screen to trigger the scene. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + PERF_TOUCH_EVENT = 0, + + /** + * TThe user uses the mouse to trigger the scene. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + PERF_MOUSE_EVENT = 1, + + /** + * The user uses the touchpad to trigger the scene. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + PERF_TOUCHPAD_EVENT = 2, + + /** + * The user uses the joystick to trigger the scene. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + PERF_JOYSTICK_EVENT = 3, + + /** + * The user uses the keyboard to trigger the scene. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + PERF_KEY_EVENT = 4 + } + + /** + * Begin monitoring an application scene. + * + * @param { string } scene Indicates the scene name. + * @param { ActionType } startInputType Indicates the scene input event type. + * @param { string } note Indicates the app expected info delivered. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 10 + */ + function begin(scene: string, startInputType: ActionType, note?: string): void; + + /** + * End monitoring an application scene. + * + * @param { string } scene Indicates the scene name. It must be the same with the {@code scene} of start. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 10 + */ + function end(scene: string): void; + + /** + * recordInputEventTime monitoring an application scene. + * + * @param { ActionType } type - Indicates the scene input event type. + * @param { SourceType } sourceType - Indicates the scene input source type. + * @param { number } time - Indicates the scene input time. + * @throws { BusinessError } 202 - not system application. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + function recordInputEventTime(type: ActionType, sourceType: SourceType, time: number): void; +} +export default performanceMonitor; \ No newline at end of file diff --git a/api/@ohos.arkui.shape.d.ets b/api/@ohos.arkui.shape.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..25dfdb05b373843345374bc1be18444a74dbc9b7 --- /dev/null +++ b/api/@ohos.arkui.shape.d.ets @@ -0,0 +1,378 @@ +/* + * Copyright (C) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ +import { Position, ResourceColor, Length, SizeOptions } from './arkui/component/units' + + +/** + * Interface for shape size properties. + * + * @interface ShapeSize + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +export interface ShapeSize { + /** + * Defines the width of Shape. + * @type { ? (number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 12 + */ + width?: number | string; + + /** + * Defines the height of Shape. + * @type { ? (number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 12 + */ + height?: number | string; +} + +/** + * Interface for RectShape constructor parameters. + * + * @interface RectShapeOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +export interface RectShapeOptions extends ShapeSize { + /** + * Defines the corner radius of the RectShape. + * @type { ? (number | string | Array<number | string>) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 12 + */ + radius?: number | string | Array<number | string>; +} + +/** + * Interface for RectShape constructor parameters with separate radius values. + * + * @interface RoundRectShapeOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +export interface RoundRectShapeOptions extends ShapeSize { + /** + * Defines the width of the corner radius for RectShape. + * @type { ? (number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 12 + */ + radiusWidth?: number | string; + + /** + * Defines the height of the corner radius for RectShape. + * @type { ? (number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 12 + */ + radiusHeight?: number | string; +} + +/** + * Interface for PathShape constructor parameters. + * + * @interface PathShapeOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +export interface PathShapeOptions { + /** + * Defines the commands for drawing the PathShape. + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 12 + */ + commands?: string; +} + +/** + * Common shape method class + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +export declare class CommonShapeMethod<T> { + /** + * Sets coordinate offset relative to the layout completion position. + * + * @param { Position } offset + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + offset(offset: Position): T; + + /** + * Sets the fill color of the shape. + * + * @param { ResourceColor } color + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + fill(color: ResourceColor): T; + + /** + * Sets the position of the shape. + * + * @param { Position } position + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + position(position: Position): T; +} + +/** + * Base shape class + * + * @extends CommonShapeMethod<T> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +export declare class BaseShape<T> extends CommonShapeMethod<T> { + /** + * Sets the width of the shape. + * + * @param { Length } width + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + width(width: Length): T; + + /** + * Sets the height of the shape. + * + * @param { Length } height + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + height(height: Length): T; + + /** + * Sets the size of the shape. + * + * @param { SizeOptions } size + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + size(size: SizeOptions): T; +} + +/** + * Defines a rect drawing class. + * + * @extends BaseShape<RectShape> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +export declare class RectShape extends BaseShape<RectShape> { + /** + * Constructor. + * + * @param { RectShapeOptions | RoundRectShapeOptions } options + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + constructor(options?: RectShapeOptions | RoundRectShapeOptions); + + /** + * Sets the width of the corner radius for RectShape. + * + * @param { number | string } rWidth + * @returns { RectShape } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + radiusWidth(rWidth: number | string): RectShape; + + /** + * Sets the height of the corner radius for RectShape. + * + * @param { number | string } rHeight + * @returns { RectShape } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + radiusHeight(rHeight: number | string): RectShape; + + /** + * Sets the corner radius for RectShape. + * + * @param { number | string | Array<number | string> } radius + * @returns { RectShape } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + radius(radius: number | string | Array<number | string>): RectShape; +} + +/** + * Defines a circle drawing class. + * + * @extends BaseShape<CircleShape> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +export declare class CircleShape extends BaseShape<CircleShape> { + /** + * Constructor. + * + * @param { ShapeSize } options + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + constructor(options?: ShapeSize); +} + +/** + * Defines an ellipse drawing class. + * + * @extends BaseShape<EllipseShape> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +export declare class EllipseShape extends BaseShape<EllipseShape> { + /** + * Constructor. + * + * @param { ShapeSize } options + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + constructor(options?: ShapeSize); +} + +/** + * Defines a path drawing class. + * + * @extends CommonShapeMethod<PathShape> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +export declare class PathShape extends CommonShapeMethod<PathShape> { + /** + * Constructor. + * + * @param { PathShapeOptions } options + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + constructor(options?: PathShapeOptions); + + /** + * Sets the commands for drawing the PathShape. + * + * @param { string } commands + * @returns { PathShape } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + commands(commands: string): PathShape; +} \ No newline at end of file diff --git a/api/@ohos.arkui.stateManagement.d.ets b/api/@ohos.arkui.stateManagement.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..f29f2f0d28eec854dd65068f5f504295a35ca84b --- /dev/null +++ b/api/@ohos.arkui.stateManagement.d.ets @@ -0,0 +1,34 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file State management API file + * @kit ArkUI + * @arkts 1.2 + */ + +export * from './arkui/stateManagement/common'; +export * from './arkui/stateManagement/runtime'; +export * from './arkui/stateManagement/storage'; +export * from './arkui/stateManagement/base/decoratorBase'; +export * from './arkui/stateManagement/base/iObservedObject'; +export * from './arkui/stateManagement/decorators/decoratorState'; +export * from './arkui/stateManagement/decorators/decoratorLink'; +export * from './arkui/stateManagement/decorators/decoratorProp'; +export * from './arkui/stateManagement/decorators/decoratorStorageLink'; +export * from './arkui/stateManagement/decorators/decoratorStorageProp'; +export * from './arkui/stateManagement/decorators/decoratorWatch'; +export * from './arkui/stateManagement/storages/appStorage'; +export * from './arkui/stateManagement/storages/localStorage'; \ No newline at end of file diff --git a/api/@ohos.arkui.theme.d.ets b/api/@ohos.arkui.theme.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..bd4f371105a7ebeef797d5dc9b461f52b064df4f --- /dev/null +++ b/api/@ohos.arkui.theme.d.ets @@ -0,0 +1,672 @@ + +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { ResourceColor } from './arkui/component/units' +/** + * Defines the struct of Theme. + * + * @interface Theme + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare interface Theme { + /** + * Define tokens associated with color resources. + * + * @type { Colors } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + colors: Colors; +} + +/** + * Defines the struct of Colors. + * + * @interface Colors + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare interface Colors { + + /** + * System brand Color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + brand: ResourceColor; + + /** + * System warning Color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + warning: ResourceColor; + + /** + * System alert Color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + alert: ResourceColor; + + /** + * System confirm Color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + confirm: ResourceColor; + + /** + * First level text color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontPrimary: ResourceColor; + + /** + * Secondary text color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontSecondary: ResourceColor; + + /** + * tertiary text color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontTertiary: ResourceColor; + + /** + * Fourth text color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontFourth: ResourceColor; + + /** + * Emphasize text color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontEmphasize: ResourceColor; + + /** + * First level text inversion, used on colored backgrounds. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontOnPrimary: ResourceColor; + + /** + * Secondary level text inversion, used on colored backgrounds. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontOnSecondary: ResourceColor; + + /** + * Tertiary level text inversion, used on colored backgrounds. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontOnTertiary: ResourceColor; + + /** + * Fourth level text inversion, used on colored backgrounds. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontOnFourth: ResourceColor; + + /** + * First level icon color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iconPrimary: ResourceColor; + + /** + * Secondary level icon color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iconSecondary: ResourceColor; + + /** + * Tertiary level icon color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iconTertiary: ResourceColor; + + /** + * Fourth level icon color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iconFourth: ResourceColor; + + /** + * Emphasize level icon color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iconEmphasize: ResourceColor; + + /** + * Secondary emphasize level icon color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iconSubEmphasize: ResourceColor; + + /** + * First level icon reversed, used on a colored background. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iconOnPrimary: ResourceColor; + + /** + * Secondary level icon reversed, used on a colored background. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iconOnSecondary: ResourceColor; + + /** + * Tertiary level icon reversed, used on a colored background. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iconOnTertiary: ResourceColor; + + /** + * Fourth level icon reversed, used on a colored background. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + iconOnFourth: ResourceColor; + + /** + * System Primary level background color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundPrimary: ResourceColor; + + /** + * System Secondary level background color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundSecondary: ResourceColor; + + /** + * System tertiary level background color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundTertiary: ResourceColor; + + /** + * System fourth level background color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundFourth: ResourceColor; + + /** + * System emphasize level background color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundEmphasize: ResourceColor; + + /** + * CompForegroundPrimary color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compForegroundPrimary: ResourceColor; + + /** + * CompBackgroundPrimary color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compBackgroundPrimary: ResourceColor; + + /** + * CompBackgroundPrimaryTran color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compBackgroundPrimaryTran: ResourceColor; + + /** + * CompBackgroundPrimaryContrary color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compBackgroundPrimaryContrary: ResourceColor; + + /** + * CompBackgroundGray color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compBackgroundGray: ResourceColor; + + /** + * 10% black universal control background. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compBackgroundSecondary: ResourceColor; + + /** + * 5% black universal control background. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compBackgroundTertiary: ResourceColor; + + /** + * 100% bright brand background color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compBackgroundEmphasize: ResourceColor; + + /** + * Black neutral high gloss color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compBackgroundNeutral: ResourceColor; + + /** + * 20% High gloss brand background color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compEmphasizeSecondary: ResourceColor; + + /** + * 10% High gloss brand background color. + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compEmphasizeTertiary: ResourceColor; + + /** + * Universal Division Line Color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compDivider: ResourceColor; + + /** + * CompCommonContrary Color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compCommonContrary: ResourceColor; + + /** + * CompBackgroundFocus Color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compBackgroundFocus: ResourceColor; + + /** + * CompFocusedPrimary Color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compFocusedPrimary: ResourceColor; + + /** + * CompFocusedSecondary Color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compFocusedSecondary: ResourceColor; + + /** + * CompFocusedTertiary Color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + compFocusedTertiary: ResourceColor; + + /** + * Hover interactive color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + interactiveHover: ResourceColor; + + /** + * Pressed interactive color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + interactivePressed: ResourceColor; + + /** + * Focus interactive color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + interactiveFocus: ResourceColor; + + /** + * Active interactive color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + interactiveActive: ResourceColor; + + /** + * Select interactive color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + interactiveSelect: ResourceColor; + + /** + * Click interactive color + * + * @type { ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + interactiveClick: ResourceColor; +} + +/** + * Defines the struct of CustomTheme. + * + * @interface CustomTheme + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare interface CustomTheme { + /** + * Define tokens associated with color resources.. + * + * @type { ?CustomColors } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + colors?: CustomColors; +} + +/** + * Defines the struct of CustomColors. + * + * @typedef { Partial<Colors> } CustomColors + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type CustomColors = Partial<Colors>; + +/** + * Class ThemeControl provides the Theme management for whole Ability and pages. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class ThemeControl { + /** + * Sets the default Theme: + * - for whole Ability when invoked from the Ability level code. + * - for the ArkUI page and for later opened pages when invoked at the ArkUI page level. + * + * @param { CustomTheme } theme + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static setDefaultTheme(theme: CustomTheme): void; +} diff --git a/api/@ohos.arkui.uiExtension.d.ets b/api/@ohos.arkui.uiExtension.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..52044d06c4538ac9bf645045575bd19a4cc723c2 --- /dev/null +++ b/api/@ohos.arkui.uiExtension.d.ets @@ -0,0 +1,208 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + + + +import { Callback } from './@ohos.base'; +import window from './@ohos.window'; +/** + * uiExtension. + * + * @namespace uiExtension + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ +declare namespace uiExtension { + /** + * The proxy of the UIExtension window. + * + * @interface WindowProxy + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface WindowProxy { + /** + * Get the avoid area. + * + * @param { window.AvoidAreaType } type - Type of the avoid area. + * @returns { window.AvoidArea } Area where the window cannot be displayed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + getWindowAvoidArea(type: window.AvoidAreaType): window.AvoidArea; + + /** + * Register the callback of avoidAreaChange. + * + * @param { 'avoidAreaChange' } type - The value is fixed at 'avoidAreaChange', indicating the event of changes to the avoid area. + * @param { Callback<AvoidAreaInfo> } callback - Callback used to return the avoid area information. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + // on(type: 'avoidAreaChange', callback: Callback<AvoidAreaInfo>): void; + on<T>(type: string, callback: Callback<T>):void; + + /** + * Unregister the callback of avoidAreaChange. + * + * @param { 'avoidAreaChange' } type - The value is fixed at 'avoidAreaChange', indicating the event of changes to the avoid area. + * @param { Callback<AvoidAreaInfo> } callback - Callback used to return the avoid area information. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + // off(type: 'avoidAreaChange', callback?: Callback<AvoidAreaInfo>): void; + off<T>(type: string, callback?: Callback<T>):void; + + /** + * Register the callback of windowSizeChange. + * + * @param { 'windowSizeChange' } type - The value is fixed at 'windowSizeChange', indicating the window size change event. + * @param { Callback<window.Size> } callback - Callback used to return the window size. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + // on(type: 'windowSizeChange', callback: Callback<window.Size>): void; + + /** + * Unregister the callback of windowSizeChange. + * + * @param { 'windowSizeChange' } type - The value is fixed at 'windowSizeChange', indicating the window size change event. + * @param { Callback<window.Size> } callback - Callback used to return the window size. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + // off(type: 'windowSizeChange', callback?: Callback<window.Size>): void; + + /** + * Hide the non-secure windows. + * When called by modal UIExtension and shouldHide == false, the "ohos.permission.ALLOW_SHOW_NON_SECURE_WINDOWS" permission is required. + * + * @permission ohos.permission.ALLOW_SHOW_NON_SECURE_WINDOWS + * @param { boolean } shouldHide - Hide the non-secure windows if true, otherwise means the opposite. + * @returns { Promise<void> } - The promise returned by the function. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 1300002 - Abnormal state. Possible causes: + * <br> 1. Permission denied. Interface caller does not have permission "ohos.permission.ALLOW_SHOW_NON_SECURE_WINDOWS". + * <br> 2. The UIExtension window proxy is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + hideNonSecureWindows(shouldHide: boolean): Promise<void>; + + /** + * Create sub window. + * + * @param { string } name - window name of sub window. + * @param { window.SubWindowOptions } subWindowOptions - options of sub window creation. + * @returns { Promise<window.Window> } Promise used to return the subwindow. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300005 - This window proxy is abnormal. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @StageModelOnly + * @atomicservice + * @since 12 + */ + createSubWindowWithOptions(name: string, subWindowOptions: window.SubWindowOptions): Promise<window.Window>; + + /** + * Set the watermark flag on the UIExtension window + * + * @param { boolean } enable - Add water mark flag to the UIExtension window if true, or remove flag if false + * @returns { Promise<void> } - The promise returned by the function + * @throws { BusinessError } 1300002 - The UIExtension window proxy is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300008 - The display device is abnormal. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + setWaterMarkFlag(enable: boolean): Promise<void>; + } + + /** + * Defines the avoid area information. + * + * @interface AvoidAreaInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface AvoidAreaInfo { + /** + * Describes the type of avoid area. + * + * @type { window.AvoidAreaType } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + type: window.AvoidAreaType; + + /** + * Describes the position and size of avoid area. + * + * @type { window.AvoidArea } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + area: window.AvoidArea; + } +} + +export default uiExtension; diff --git a/api/@ohos.arkui.uiExtension.d.ts b/api/@ohos.arkui.uiExtension.d.ts index 8f34c776a39d33c4c672a59514510d48d6ca3847..ef08eb1f07eb28737ef43fb2f075eeac8b2f2d00 100644 --- a/api/@ohos.arkui.uiExtension.d.ts +++ b/api/@ohos.arkui.uiExtension.d.ts @@ -41,7 +41,7 @@ declare namespace uiExtension { */ interface WindowProxy { /** - * Get the avoid area. + * Obtains the area where this window cannot be displayed, for example, the system bar area, notch, gesture area, and soft keyboard area. * * @param { window.AvoidAreaType } type - Type of the avoid area. * @returns { window.AvoidArea } Area where the window cannot be displayed. @@ -56,9 +56,9 @@ declare namespace uiExtension { getWindowAvoidArea(type: window.AvoidAreaType): window.AvoidArea; /** - * Register the callback of avoidAreaChange. + * Subscribes to the event indicating changes to the area where the window cannot be displayed. * - * @param { 'avoidAreaChange' } type - The value is fixed at 'avoidAreaChange', indicating the event of changes to the avoid area. + * @param { 'avoidAreaChange' } type - Event type. The value is fixed at 'avoidAreaChange', indicating the event of changes to the area where the window cannot be displayed. * @param { Callback<AvoidAreaInfo> } callback - Callback used to return the avoid area information. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. @@ -71,9 +71,9 @@ declare namespace uiExtension { on(type: 'avoidAreaChange', callback: Callback<AvoidAreaInfo>): void; /** - * Unregister the callback of avoidAreaChange. + * Unsubscribes from the event indicating changes to the area where the window cannot be displayed. * - * @param { 'avoidAreaChange' } type - The value is fixed at 'avoidAreaChange', indicating the event of changes to the avoid area. + * @param { 'avoidAreaChange' } type - Event type. The value is fixed at 'avoidAreaChange', indicating the event of changes to the area where the window cannot be displayed. * @param { Callback<AvoidAreaInfo> } callback - Callback used to return the avoid area information. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. @@ -86,9 +86,9 @@ declare namespace uiExtension { off(type: 'avoidAreaChange', callback?: Callback<AvoidAreaInfo>): void; /** - * Register the callback of windowSizeChange. + * Subscribes to the window size change event of the host application. * - * @param { 'windowSizeChange' } type - The value is fixed at 'windowSizeChange', indicating the window size change event. + * @param { 'windowSizeChange' } type - Event type. The value is fixed at 'windowSizeChange', indicating the window size change event. * @param { Callback<window.Size> } callback - Callback used to return the window size. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. @@ -101,9 +101,9 @@ declare namespace uiExtension { on(type: 'windowSizeChange', callback: Callback<window.Size>): void; /** - * Unregister the callback of windowSizeChange. + * Unsubscribes from the window size change event of the host application. * - * @param { 'windowSizeChange' } type - The value is fixed at 'windowSizeChange', indicating the window size change event. + * @param { 'windowSizeChange' } type - Event type. The value is fixed at 'windowSizeChange', indicating the window size change event. * @param { Callback<window.Size> } callback - Callback used to return the window size. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. @@ -116,9 +116,9 @@ declare namespace uiExtension { off(type: 'windowSizeChange', callback?: Callback<window.Size>): void; /** - * Register the callback of rectChange + * Subscribes to changes in the position and size of the component (EmbeddedComponent or UIExtensionComponent). This API can be used only on 2-in-1 devices. * - * @param { 'rectChange' } type - The value is fixed at 'rectChange', indicating the component rect change event. + * @param { 'rectChange' } type - Event type. The value is fixed at 'rectChange', indicating the rectangle change event for the component (EmbeddedComponent or UIExtensionComponent). * @param { 'number' } reasons - The reasons of component rect change. * @param { Callback<RectChangeOptions> } callback - Callback used to return the RectChangeOptions. * @throws { BusinessError } 401 - Parameter error. Possible cause: @@ -133,9 +133,9 @@ declare namespace uiExtension { on(type: 'rectChange', reasons: number, callback: Callback<RectChangeOptions>): void; /** - * Unregister the callback of rectChange + * Unsubscribes from changes in the position and size of the component (EmbeddedComponent or UIExtensionComponent). This API can be used only on 2-in-1 devices. * - * @param { 'rectChange' } type - The value is fixed at 'rectChange', indicating the component rect change event. + * @param { 'rectChange' } type - Event type. The value is fixed at 'rectChange', indicating the rectangle change event for the component (EmbeddedComponent or UIExtensionComponent). * @param { Callback<RectChangeOptions> } callback - Callback used to return the RectChangeOptions. * @throws { BusinessError } 401 - Parameter error. Possible cause: * <br> 1. Mandatory parameters are left unspecified. @@ -149,11 +149,11 @@ declare namespace uiExtension { off(type: 'rectChange', callback?: Callback<RectChangeOptions>): void; /** - * Hide the non-secure windows. + * Sets whether to hide insecure windows. * When called by modal UIExtension and shouldHide == false, the "ohos.permission.ALLOW_SHOW_NON_SECURE_WINDOWS" permission is required. * * @permission ohos.permission.ALLOW_SHOW_NON_SECURE_WINDOWS - * @param { boolean } shouldHide - Hide the non-secure windows if true, otherwise means the opposite. + * @param { boolean } shouldHide - Whether to hide insecure windows. The value true means to hide insecure windows, and false means the opposite. * @returns { Promise<void> } - The promise returned by the function. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: @@ -171,10 +171,10 @@ declare namespace uiExtension { hideNonSecureWindows(shouldHide: boolean): Promise<void>; /** - * Create sub window. + * Creates a subwindow for this window proxy. This API uses a promise to return the result. * - * @param { string } name - window name of sub window. - * @param { window.SubWindowOptions } subWindowOptions - options of sub window creation. + * @param { string } name - Name of the subwindow. + * @param { window.SubWindowOptions } subWindowOptions - Parameters used for creating the subwindow. * @returns { Promise<window.Window> } Promise used to return the subwindow. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br> 1. Mandatory parameters are left unspecified. @@ -191,9 +191,9 @@ declare namespace uiExtension { createSubWindowWithOptions(name: string, subWindowOptions: window.SubWindowOptions): Promise<window.Window>; /** - * Set the watermark flag on the UIExtension window + * Adds or deletes the watermark flag for this window. This API uses a promise to return the result. * - * @param { boolean } enable - Add water mark flag to the UIExtension window if true, or remove flag if false + * @param { boolean } enable - Whether to add or delete the flag. The value true means to add the watermark flag, and false means to delete the watermark flag. * @returns { Promise<void> } - The promise returned by the function * @throws { BusinessError } 1300002 - The UIExtension window proxy is abnormal. * @throws { BusinessError } 1300003 - This window manager service works abnormally. @@ -205,9 +205,9 @@ declare namespace uiExtension { setWaterMarkFlag(enable: boolean): Promise<void>; /** - * Set events that only need to be handled by the UIExtension provider + * Sets the events that the component (EmbeddedComponent or UIExtensionComponent) will occupy, preventing the host from responding to these events within the component's area. * - * @param { EventFlag } eventFlags - The events to be set. + * @param { EventFlag } eventFlags - Type of events to occupy. For details about the available values, see {@link uiExtension.EventFlag }. * @returns { Promise<void> } - The promise returned by the function * @throws { BusinessError } 401 - Parameter error. Possible cause: * <br> 1. Mandatory parameters are left unspecified. @@ -309,7 +309,7 @@ declare namespace uiExtension { */ interface AvoidAreaInfo { /** - * Describes the type of avoid area. + * Type of the area where the window cannot be displayed. * * @type { window.AvoidAreaType } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -319,7 +319,7 @@ declare namespace uiExtension { type: window.AvoidAreaType; /** - * Describes the position and size of avoid area. + * Area where the window cannot be displayed. * * @type { window.AvoidArea } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -340,7 +340,7 @@ declare namespace uiExtension { */ interface WindowProxyProperties { /** - * The position and size of the UIExtension window + * Position and size of the component (EmbeddedComponent or UIExtensionComponent). * * @type { window.Rect } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -360,7 +360,7 @@ declare namespace uiExtension { */ enum RectChangeReason { /** - * Host window rect change + * The rectangle of the host window containing the component changes. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -379,7 +379,7 @@ declare namespace uiExtension { */ interface RectChangeOptions { /** - * Rect of UIExtension Component + * New values of the rectangle of the component after the change. * * @type { window.Rect } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -389,7 +389,7 @@ declare namespace uiExtension { rect: window.Rect, /** - * Rect change reason + * Reason for the rectangle change. * * @type { RectChangeReason } * @syscap SystemCapability.ArkUI.ArkUI.Full diff --git a/api/@ohos.base.d.ets b/api/@ohos.base.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..39f9d3995fd8fcee34650181e05a732a7468c206 --- /dev/null +++ b/api/@ohos.base.d.ets @@ -0,0 +1,177 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit BasicServicesKit + */ + +/** + * Defines the basic callback. + * + * @typedef { Callback<T> } + * @syscap SystemCapability.Base + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +export type Callback<T> = (data: T) => void; + +/** + * Defines the basic error callback. + * + * @typedef { ErrorCallback<T extends Error = BusinessError> } + * @syscap SystemCapability.Base + * @crossplatform + * @atomicservice + * @since 20 + */ +export type ErrorCallback<T extends Error = BusinessError> = (err: T)=> void; + +/** + * Defines the basic async callback. + * + * @typedef { AsyncCallback<T, E = void> } + * @syscap SystemCapability.Base + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +export type AsyncCallback<T, E = void> = (err: BusinessError<E>, data: T)=> void; + +/** + * Defines the error interface. + * @syscap SystemCapability.Base + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +export declare class BusinessError<T = void> extends Error { + /** + * A constructor used to create a BusinessError object + * @syscap SystemCapability.Base + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + constructor(); + /** + * A constructor used to create a BusinessError object + * @params { number } code + * @params { Error } error + * @syscap SystemCapability.Base + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + constructor(code: number, error: Error); + /** + * A constructor used to create a BusinessError object + * @params { number } code + * @params { T } data + * @params { Error } error + * @syscap SystemCapability.Base + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + constructor(code: number, data: T, error: Error); + /** + * Defines the basic error code. + * @type { number } code + * @syscap SystemCapability.Base + * @since 6 + */ + /** + * Defines the basic error code. + * @type { number } code + * @syscap SystemCapability.Base + * @crossplatform + * @since 10 + */ + /** + * Defines the basic error code. + * @type { number } code + * @syscap SystemCapability.Base + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Defines the basic error code. + * @type { number } code + * @syscap SystemCapability.Base + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + /** + * Defines the basic error code. + * @type { number } code + * @syscap SystemCapability.Base + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + code: number; + /** + * Defines the additional information for business + * @type { ?T } data + * @syscap SystemCapability.Base + * @since 9 + */ + /** + * Defines the additional information for business + * @type { ?T } data + * @syscap SystemCapability.Base + * @crossplatform + * @since 10 + */ + /** + * Defines the additional information for business + * @type { ?T } data + * @syscap SystemCapability.Base + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Defines the additional information for business + * @type { ?T } data + * @syscap SystemCapability.Base + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + /** + * Defines the additional information for business + * @type { ?T } data + * @syscap SystemCapability.Base + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + data?: T; +} diff --git a/api/@ohos.batteryInfo.d.ets b/api/@ohos.batteryInfo.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..7b8f73ca199c713d6393ca4ac983f258e4f6ca63 --- /dev/null +++ b/api/@ohos.batteryInfo.d.ets @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit BasicServicesKit + */ + +/** + * Obtains battery information of a device. + * <p>Battery information includes the remaining battery power, + * voltage, temperature, model, and charger type. + * + * @syscap SystemCapability.PowerManager.BatteryManager.Core + * @atomicservice + * @since 20 + */ +declare class batteryInfo { + /** + * Battery state of charge (SoC) of the current device, in percent. + * + * @readonly + * @syscap SystemCapability.PowerManager.BatteryManager.Core + * @atomicservice + * @since 20 + */ + static get batterySOC(): int; +} +export default batteryInfo; \ No newline at end of file diff --git a/api/@ohos.batteryInfo.d.ts b/api/@ohos.batteryInfo.d.ts index 93d9adf60a5b3b1aa4770522c2f8ce3ec441c2cb..9d6e0cf842ebd4629df2697464ad1f4eb5081a4b 100644 --- a/api/@ohos.batteryInfo.d.ts +++ b/api/@ohos.batteryInfo.d.ts @@ -48,7 +48,7 @@ declare namespace batteryInfo { * @returns { number } Return to set the charging configuration result. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; - * @throws { BusinessError } 4900101 - Failed to connect to the service. + * @throws { BusinessError } 5100101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.BatteryManager.Core * @systemapi * @since 11 @@ -63,7 +63,7 @@ declare namespace batteryInfo { * @returns { string } Returns the battery charging configuration, returns "" otherwise. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; - * @throws { BusinessError } 4900101 - Failed to connect to the service. + * @throws { BusinessError } 5100101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.BatteryManager.Core * @systemapi * @since 11 @@ -78,7 +78,7 @@ declare namespace batteryInfo { * @returns { boolean } Returns true if the device supports the charging scene, returns false otherwise. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; - * @throws { BusinessError } 4900101 - Failed to connect to the service. + * @throws { BusinessError } 5100101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.BatteryManager.Core * @systemapi * @since 11 diff --git a/api/@ohos.bluetooth.a2dp.d.ts b/api/@ohos.bluetooth.a2dp.d.ts index 1dfc2f3d3c931a90804dc13de61abc15798e5598..c3eeaadd89eb837188139d1d13470bbf1386e40e 100644 --- a/api/@ohos.bluetooth.a2dp.d.ts +++ b/api/@ohos.bluetooth.a2dp.d.ts @@ -305,6 +305,25 @@ declare namespace a2dp { */ disableAbsoluteVolume(deviceId: string, callback: AsyncCallback<void>): void; + /** + * Get the full codec capabilities negotiated between the active device and the local device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { string } deviceId - Indicates device ID. For example, "11:22:33:AA:BB:FF". + * @returns { CodecInfoList[] } Returns the CodecInfoList. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Non-system applications are not allowed to use system APIs. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900003 - Bluetooth disabled. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2902008 - Current device is not an active device. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @systemapi + * @since 19 + */ + getCurrentFullCodecInfo(deviceId: string): CodecInfoList[]; + /** * Get codec information. * @@ -448,6 +467,80 @@ declare namespace a2dp { * @since 11 */ codecSampleRate: CodecSampleRate; + /** + * codec bit rate. + * + * @type { ?CodecBitRate } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + codecBitRate?: CodecBitRate; + /** + * codec frame length. + * + * @type { ?CodecFrameLength } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + codecFrameLength?: CodecFrameLength; + } + + /** + * Describes the codec information. + * + * @typedef CodecInfoList + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + interface CodecInfoList { + /** + * codec type + * + * @type { CodecType } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + codecType: CodecType; + /** + * codec bits per sample list. + * + * @type { CodecBitsPerSample[] } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + codecBitsPerSampleArray: CodecBitsPerSample[]; + /** + * codec channel mode list. + * + * @type { CodecChannelMode[] } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + codecChannelModeArray: CodecChannelMode[]; + /** + * codec sample rate list. + * + * @type { CodecSampleRate[] } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + codecSampleRateArray: CodecSampleRate[]; + /** + * codec bit rate list. + * + * @type { CodecBitRate[] } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + codecBitRateArray: CodecBitRate[]; + /** + * codec frame length list. + * + * @type { CodecFrameLength[] } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + codecFrameLengthArray: CodecFrameLength[]; } /** @@ -653,6 +746,101 @@ declare namespace a2dp { */ CODEC_SAMPLE_RATE_192000 = 6 } + /** + * Describes the codec bit rate. + * + * @enum { number } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + enum CodecBitRate { + /** + * Codec bit rate 96k. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_BIT_RATE_96000 = 0, + /** + * Codec bit rate 128k. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_BIT_RATE_128000 = 1, + /** + * Codec bit rate 192k. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_BIT_RATE_192000 = 2, + /** + * Codec bit rate 256k. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_BIT_RATE_256000 = 3, + /** + * Codec bit rate 320k. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_BIT_RATE_320000 = 4, + /** + * Codec bit rate 480k. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_BIT_RATE_480000 = 5, + /** + * Codec bit rate 640k. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_BIT_RATE_640000 = 6, + /** + * Codec bit rate 960k. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_BIT_RATE_960000 = 7, + /** + * Codec bit rate adaptive bitrate streaming. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_BIT_RATE_ABR = 8 + } + /** + * Describes the codec frame length. + * + * @enum { number } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + enum CodecFrameLength { + /** + * Codec frame length 5ms. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_FRAME_LENGTH_5MS = 0, + /** + * Codec frame length 10ms. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 19 + */ + CODEC_FRAME_LENGTH_10MS = 1 + } } export default a2dp; \ No newline at end of file diff --git a/api/@ohos.bluetooth.access.d.ts b/api/@ohos.bluetooth.access.d.ts index 0ce9d06f189e612b002af91b3597f82af28bd067..15547e3fbb9e46c60ca69b7f7bde47f3dbc968b4 100644 --- a/api/@ohos.bluetooth.access.d.ts +++ b/api/@ohos.bluetooth.access.d.ts @@ -332,6 +332,20 @@ declare namespace access { * @atomicservice * @since 13 */ + /** + * Unsubscribe the event reported when the Bluetooth state changes. + * + * @param { 'stateChange' } type - Type of the Bluetooth state changes event to listen for. + * @param { Callback<BluetoothState> } callback - Callback used to listen for the Bluetooth state event. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900099 - Operation failed. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 18 + */ function off(type: 'stateChange', callback?: Callback<BluetoothState>): void; /** @@ -342,7 +356,8 @@ declare namespace access { * @param { string } deviceId - the randomized address of remote device. * @returns { Promise<void> } Returns the promise object. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 2900003 - Bluetooth disabled. * @throws { BusinessError } 2900010 - The number of supported device addresses has reached the upper limit. @@ -360,7 +375,8 @@ declare namespace access { * @param { string } deviceId - the randomized address of remote device. * @returns { Promise<void> } Returns the promise object. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 2900003 - Bluetooth disabled. * @throws { BusinessError } 2900099 - delete persistent device address failed. @@ -392,7 +408,8 @@ declare namespace access { * @param { string } deviceId - the randomized address of remote device. * @returns { boolean } Returns whether the randomized device address is valid. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 2900003 - Bluetooth disabled. * @throws { BusinessError } 2900099 - Check persistent device address failed. diff --git a/api/@ohos.bluetooth.ble.d.ts b/api/@ohos.bluetooth.ble.d.ts index 4b13084e3a443716b10b55a4cf9a4e8c893d423f..cc651292cd8a6c7cd70aefd263f442ab4d97b58c 100644 --- a/api/@ohos.bluetooth.ble.d.ts +++ b/api/@ohos.bluetooth.ble.d.ts @@ -137,7 +137,7 @@ declare namespace ble { /** * Create a ble scanner instance. Each ble scanner instance can be independently started or stopped. - * + * * @returns { BleScanner } Returns the promise object. * @syscap SystemCapability.Communication.Bluetooth.Core * @crossplatform @@ -334,6 +334,27 @@ declare namespace ble { * @atomicservice * @since 13 */ + /** + * Starts BLE advertising. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { AdvertiseSetting } setting - Indicates the settings for BLE advertising. + * @param { AdvertiseData } advData - Indicates the advertising data. + * @param { AdvertiseData } advResponse - Indicates the scan response associated with the advertising data. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900003 - Bluetooth disabled. + * @throws { BusinessError } 2900010 - The number of advertising resources reaches the upper limit. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2902054 - The length of the advertising data exceeds the upper limit. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ function startAdvertising(setting: AdvertiseSetting, advData: AdvertiseData, advResponse?: AdvertiseData): void; /** @@ -416,6 +437,28 @@ declare namespace ble { * @crossplatform * @since 13 */ + /** + * Starts BLE advertising. + * The API returns a advertising ID. The ID can be used to temporarily enable or disable this advertising + * using the API {@link enableAdvertising} or {@link disableAdvertising}. + * To completely stop the advertising corresponding to the ID, invoke the API {@link stopAdvertising} with ID. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { AdvertisingParams } advertisingParams - Indicates the params for BLE advertising. + * @param { AsyncCallback<number> } callback - the callback of advertise ID. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900003 - Bluetooth disabled. + * @throws { BusinessError } 2900010 - The number of advertising resources reaches the upper limit. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2902054 - The length of the advertising data exceeds the upper limit. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @since 20 + */ function startAdvertising(advertisingParams: AdvertisingParams, callback: AsyncCallback<number>): void; /** @@ -457,6 +500,28 @@ declare namespace ble { * @crossplatform * @since 13 */ + /** + * Starts BLE advertising. + * The API returns a advertising ID. The ID can be used to temporarily enable or disable this advertising + * using the API {@link enableAdvertising} or {@link disableAdvertising}. + * To completely stop the advertising corresponding to the ID, invoke the API {@link stopAdvertising} with ID. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { AdvertisingParams } advertisingParams - Indicates the param for BLE advertising. + * @returns { Promise<number> } Returns the promise object. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900003 - Bluetooth disabled. + * @throws { BusinessError } 2900010 - The number of advertising resources reaches the upper limit. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2902054 - The length of the advertising data exceeds the upper limit. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @since 20 + */ function startAdvertising(advertisingParams: AdvertisingParams): Promise<number>; /** @@ -475,6 +540,23 @@ declare namespace ble { * @syscap SystemCapability.Communication.Bluetooth.Core * @since 11 */ + /** + * Enable the advertising with a specific ID temporarily. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { AdvertisingEnableParams } advertisingEnableParams - Indicates the params for enable advertising. + * @param { AsyncCallback<void> } callback - the callback result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900003 - Bluetooth disabled. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2902055 - Invalid advertising id. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 20 + */ function enableAdvertising(advertisingEnableParams: AdvertisingEnableParams, callback: AsyncCallback<void>): void; /** @@ -493,6 +575,23 @@ declare namespace ble { * @syscap SystemCapability.Communication.Bluetooth.Core * @since 11 */ + /** + * Enable the advertising with a specific ID temporarily. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { AdvertisingEnableParams } advertisingEnableParams - Indicates the params for enable advertising. + * @returns { Promise<void> } Returns the promise object. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900003 - Bluetooth disabled. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2902055 - Invalid advertising id. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 20 + */ function enableAdvertising(advertisingEnableParams: AdvertisingEnableParams): Promise<void>; /** @@ -511,6 +610,23 @@ declare namespace ble { * @syscap SystemCapability.Communication.Bluetooth.Core * @since 11 */ + /** + * Disable the advertising with a specific ID temporarily. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { AdvertisingDisableParams } advertisingDisableParams - Indicates the params for disable advertising. + * @param { AsyncCallback<void> } callback - the callback result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900003 - Bluetooth disabled. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2902055 - Invalid advertising id. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 20 + */ function disableAdvertising(advertisingDisableParams: AdvertisingDisableParams, callback: AsyncCallback<void>): void; /** @@ -529,6 +645,23 @@ declare namespace ble { * @syscap SystemCapability.Communication.Bluetooth.Core * @since 11 */ + /** + * Disable the advertising with a specific ID temporarily. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { AdvertisingDisableParams } advertisingDisableParams - Indicates the params for disable advertising. + * @returns { Promise<void> } Returns the promise object. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900003 - Bluetooth disabled. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2902055 - Invalid advertising id. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 20 + */ function disableAdvertising(advertisingDisableParams: AdvertisingDisableParams): Promise<void>; /** @@ -566,6 +699,25 @@ declare namespace ble { * @crossplatform * @since 13 */ + /** + * Stops BLE advertising. + * Completely stop the advertising corresponding to the ID. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { number } advertisingId - Indicates the ID for this BLE advertising. + * @param { AsyncCallback<void> } callback - the callback result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900003 - Bluetooth disabled. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2902055 - Invalid advertising id. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @since 20 + */ function stopAdvertising(advertisingId: number, callback: AsyncCallback<void>): void; /** @@ -603,6 +755,25 @@ declare namespace ble { * @crossplatform * @since 13 */ + /** + * Stops BLE advertising. + * Completely stop the advertising corresponding to the ID. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { number } advertisingId - Indicates the ID for this BLE advertising. + * @returns { Promise<void> } Returns the promise object. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900003 - Bluetooth disabled. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2902055 - Invalid advertising id. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @since 20 + */ function stopAdvertising(advertisingId: number): Promise<void>; /** @@ -1997,6 +2168,30 @@ declare namespace ble { * @atomicservice * @since 13 */ + /** + * Reads the characteristic of a BLE peripheral device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLECharacteristic } characteristic - Indicates the characteristic to read. + * @param { AsyncCallback<BLECharacteristic> } callback - Callback invoked to return the characteristic value read. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901000 - Read forbidden. + * @throws { BusinessError } 2901003 - The connection is not established. + * @throws { BusinessError } 2901004 - The connection is congested. + * @throws { BusinessError } 2901005 - The connection is not encrypted. + * @throws { BusinessError } 2901006 - The connection is not authenticated. + * @throws { BusinessError } 2901007 - The connection is not authorized. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ readCharacteristicValue(characteristic: BLECharacteristic, callback: AsyncCallback<BLECharacteristic>): void; /** @@ -2050,6 +2245,30 @@ declare namespace ble { * @atomicservice * @since 13 */ + /** + * Reads the characteristic of a BLE peripheral device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLECharacteristic } characteristic - Indicates the characteristic to read. + * @returns { Promise<BLECharacteristic> } - Promise used to return the characteristic value read. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901000 - Read forbidden. + * @throws { BusinessError } 2901003 - The connection is not established. + * @throws { BusinessError } 2901004 - The connection is congested. + * @throws { BusinessError } 2901005 - The connection is not encrypted. + * @throws { BusinessError } 2901006 - The connection is not authenticated. + * @throws { BusinessError } 2901007 - The connection is not authorized. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ readCharacteristicValue(characteristic: BLECharacteristic): Promise<BLECharacteristic>; /** @@ -2103,6 +2322,30 @@ declare namespace ble { * @atomicservice * @since 13 */ + /** + * Reads the descriptor of a BLE peripheral device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLEDescriptor } descriptor - Indicates the descriptor to read. + * @param { AsyncCallback<BLEDescriptor> } callback - Callback invoked to return the descriptor read. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901000 - Read forbidden. + * @throws { BusinessError } 2901003 - The connection is not established. + * @throws { BusinessError } 2901004 - The connection is congested. + * @throws { BusinessError } 2901005 - The connection is not encrypted. + * @throws { BusinessError } 2901006 - The connection is not authenticated. + * @throws { BusinessError } 2901007 - The connection is not authorized. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ readDescriptorValue(descriptor: BLEDescriptor, callback: AsyncCallback<BLEDescriptor>): void; /** @@ -2156,6 +2399,30 @@ declare namespace ble { * @atomicservice * @since 13 */ + /** + * Reads the descriptor of a BLE peripheral device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLEDescriptor } descriptor - Indicates the descriptor to read. + * @returns { Promise<BLEDescriptor> } - Promise used to return the descriptor read. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901000 - Read forbidden. + * @throws { BusinessError } 2901003 - The connection is not established. + * @throws { BusinessError } 2901004 - The connection is congested. + * @throws { BusinessError } 2901005 - The connection is not encrypted. + * @throws { BusinessError } 2901006 - The connection is not authenticated. + * @throws { BusinessError } 2901007 - The connection is not authorized. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ readDescriptorValue(descriptor: BLEDescriptor): Promise<BLEDescriptor>; /** @@ -2212,6 +2479,31 @@ declare namespace ble { * @atomicservice * @since 13 */ + /** + * Writes the characteristic of a BLE peripheral device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLECharacteristic } characteristic - Indicates the characteristic to write. + * @param { GattWriteType } writeType - Write type of the characteristic. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901001 - Write forbidden. + * @throws { BusinessError } 2901003 - The connection is not established. + * @throws { BusinessError } 2901004 - The connection is congested. + * @throws { BusinessError } 2901005 - The connection is not encrypted. + * @throws { BusinessError } 2901006 - The connection is not authenticated. + * @throws { BusinessError } 2901007 - The connection is not authorized. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ writeCharacteristicValue( characteristic: BLECharacteristic, writeType: GattWriteType, @@ -2272,6 +2564,31 @@ declare namespace ble { * @atomicservice * @since 13 */ + /** + * Writes the characteristic of a BLE peripheral device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLECharacteristic } characteristic - Indicates the characteristic to write. + * @param { GattWriteType } writeType - Write type of the characteristic. + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901001 - Write forbidden. + * @throws { BusinessError } 2901003 - The connection is not established. + * @throws { BusinessError } 2901004 - The connection is congested. + * @throws { BusinessError } 2901005 - The connection is not encrypted. + * @throws { BusinessError } 2901006 - The connection is not authenticated. + * @throws { BusinessError } 2901007 - The connection is not authorized. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ writeCharacteristicValue(characteristic: BLECharacteristic, writeType: GattWriteType): Promise<void>; /** @@ -2325,6 +2642,30 @@ declare namespace ble { * @atomicservice * @since 13 */ + /** + * Writes the descriptor of a BLE peripheral device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLEDescriptor } descriptor - Indicates the descriptor to write. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901001 - Write forbidden. + * @throws { BusinessError } 2901003 - The connection is not established. + * @throws { BusinessError } 2901004 - The connection is congested. + * @throws { BusinessError } 2901005 - The connection is not encrypted. + * @throws { BusinessError } 2901006 - The connection is not authenticated. + * @throws { BusinessError } 2901007 - The connection is not authorized. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ writeDescriptorValue(descriptor: BLEDescriptor, callback: AsyncCallback<void>): void; /** @@ -2378,6 +2719,30 @@ declare namespace ble { * @atomicservice * @since 13 */ + /** + * Writes the descriptor of a BLE peripheral device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLEDescriptor } descriptor - Indicates the descriptor to write. + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901001 - Write forbidden. + * @throws { BusinessError } 2901003 - The connection is not established. + * @throws { BusinessError } 2901004 - The connection is congested. + * @throws { BusinessError } 2901005 - The connection is not encrypted. + * @throws { BusinessError } 2901006 - The connection is not authenticated. + * @throws { BusinessError } 2901007 - The connection is not authorized. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ writeDescriptorValue(descriptor: BLEDescriptor): Promise<void>; /** @@ -2407,6 +2772,22 @@ declare namespace ble { * @atomicservice * @since 12 */ + /** + * Get the RSSI value of this BLE peripheral device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { AsyncCallback<number> } callback - Callback invoked to return the RSSI, in dBm. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901003 - The connection is not established. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ getRssiValue(callback: AsyncCallback<number>): void; /** @@ -2436,6 +2817,22 @@ declare namespace ble { * @atomicservice * @since 12 */ + /** + * Get the RSSI value of this BLE peripheral device. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @returns { Promise<number> } Returns the RSSI value. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901003 - The connection is not established. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ getRssiValue(): Promise<number>; /** @@ -2520,6 +2917,26 @@ declare namespace ble { * @atomicservice * @since 12 */ + /** + * Enables or disables notification of a characteristic when value changed. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLECharacteristic } characteristic - Indicates the characteristic to indicate. + * @param { boolean } enable - Specifies whether to enable indication of the characteristic. The value {@code true} indicates + * that notification is enabled, and the value {@code false} indicates that indication is disabled. + * @param { AsyncCallback<void> } callback - the callback of setCharacteristicChangeNotification. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901003 - The connection is not established. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ setCharacteristicChangeNotification( characteristic: BLECharacteristic, enable: boolean, @@ -2561,6 +2978,26 @@ declare namespace ble { * @atomicservice * @since 12 */ + /** + * Enables or disables indication of a characteristic when value changed. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLECharacteristic } characteristic - Indicates the characteristic to indicate. + * @param { boolean } enable - Specifies whether to enable indication of the characteristic. The value {@code true} indicates + * that indication is enabled, and the value {@code false} indicates that indication is disabled. + * @returns { Promise<void> } Returns the promise object. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901003 - The connection is not established. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ setCharacteristicChangeNotification(characteristic: BLECharacteristic, enable: boolean): Promise<void>; /** @@ -2598,6 +3035,26 @@ declare namespace ble { * @atomicservice * @since 12 */ + /** + * Enables or disables indication of a characteristic when value changed. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLECharacteristic } characteristic - Indicates the characteristic to indicate. + * @param { boolean } enable - Specifies whether to enable indication of the characteristic. The value {@code true} indicates + * that indication is enabled, and the value {@code false} indicates that indication is disabled. + * @param { AsyncCallback<void> } callback - the callback of setCharacteristicChangeIndication. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901003 - The connection is not established. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ setCharacteristicChangeIndication( characteristic: BLECharacteristic, enable: boolean, @@ -2639,6 +3096,26 @@ declare namespace ble { * @atomicservice * @since 12 */ + /** + * Enables or disables indication of a characteristic when value changed. + * + * @permission ohos.permission.ACCESS_BLUETOOTH + * @param { BLECharacteristic } characteristic - Indicates the characteristic to indicate. + * @param { boolean } enable - Specifies whether to enable indication of the characteristic. The value {@code true} indicates + * that indication is enabled, and the value {@code false} indicates that indication is disabled. + * @returns { Promise<void> } Returns the promise object. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2900001 - Service stopped. + * @throws { BusinessError } 2900011 - The operation is busy. The last operation is not complete. + * @throws { BusinessError } 2900099 - Operation failed. + * @throws { BusinessError } 2901003 - The connection is not established. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ setCharacteristicChangeIndication(characteristic: BLECharacteristic, enable: boolean): Promise<void>; /** @@ -3245,6 +3722,17 @@ declare namespace ble { * @since 18 */ characteristicValueHandle?: number; + + /** + * The permissions of a BLECharacteristic instance. The default value is Readable and Writable. + * + * @type { ?GattPermissions } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ + permissions?: GattPermissions; } /** @@ -3382,6 +3870,17 @@ declare namespace ble { * @since 18 */ descriptorHandle?: number; + + /** + * The permissions of a BLEDescriptor instance. The default value is Readable and Writable. + * + * @type { ?GattPermissions } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ + permissions?: GattPermissions; } /** @@ -4614,7 +5113,7 @@ declare namespace ble { /** * Describes the contents of the scan report. - * + * * @typedef ScanReport * @syscap SystemCapability.Communication.Bluetooth.Core * @crossplatform @@ -5773,6 +6272,36 @@ declare namespace ble { * @since 12 */ indicate?: boolean; + + /** + * Support broadcast property of the characteristic. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + broadcast?: boolean; + + /** + * Support authenticated signed write property of the characteristic. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + authenticatedSignedWrite?: boolean; + + /** + * Support extended properties property of the characteristic. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + extendedProperties?: boolean; } /** @@ -6099,7 +6628,7 @@ declare namespace ble { /** * Report mode used during scan. - * + * * @enum { number } * @syscap SystemCapability.Communication.Bluetooth.Core * @crossplatform @@ -6116,6 +6645,15 @@ declare namespace ble { * @since 15 */ NORMAL = 1, + /** + * Enables the batch mode in which advertisement packets are sent after the interval specified by {@link + * ScanOptions#interval}. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 19 + * @arkts 1.1&1.2 + */ + BATCH = 2, /** * In low sensitivity fence mode, the advertisement packets are reported only when they are received for * the first time and lost for the last time. The reception sensitivity is low. @@ -6166,6 +6704,107 @@ declare namespace ble { * @since 15 */ ON_LOST = 2, + /** + * The type of advertisement packet reported in batch mode. + * + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 19 + * @arkts 1.1&1.2 + */ + ON_BATCH = 3, + } + + /** + * Describes the permission of a att attribute item. + * + * @typedef GattPermissions + * @syscap SystemCapability.Communication.Bluetooth.Core + * @crossplatform + * @atomicservice + * @since 20 + */ + interface GattPermissions { + + /** + * The attribute field has the read permission. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + read?: boolean; + + /** + * The attribute field has the encrypted read permission. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + readEncrypted?: boolean; + + /** + * The attribute field has the read permission for encryption authentication. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + readEncryptedMitm?: boolean; + + /** + * The attribute field has the write permission. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + write?: boolean; + + /** + * The attribute field has the encrypted write permission. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + writeEncrypted?: boolean; + + /** + * The attribute field has the write permission for encryption authentication. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + writeEncryptedMitm?: boolean; + + /** + * The attribute field has the signed write permission. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + writeSigned?: boolean; + + /** + * The attribute field has the write permission for signature authentication. + * + * @type { ?boolean } + * @syscap SystemCapability.Communication.Bluetooth.Core + * @atomicservice + * @since 20 + */ + writeSignedMitm?: boolean; } } diff --git a/api/@ohos.bluetooth.connection.d.ts b/api/@ohos.bluetooth.connection.d.ts index 31e245edcf43b465e48a42bd802d8e0dc0d4c3c5..4436723f197650369f39c19b581c70675683c91f 100644 --- a/api/@ohos.bluetooth.connection.d.ts +++ b/api/@ohos.bluetooth.connection.d.ts @@ -473,7 +473,8 @@ declare namespace connection { * @param { boolean } [alias] - Indicates whether to obtain the device alias. If the parameter is not provided, the device alias is obtained by default. * @returns { string } Returns the device name in character string format. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 2900001 - Service stopped. * @throws { BusinessError } 2900003 - Bluetooth disabled. @@ -1056,7 +1057,8 @@ declare namespace connection { * @param { string } deviceId - Indicates device ID. For example, "11:22:33:AA:BB:FF". * @param { AsyncCallback<void> } callback - the callback result. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 2900001 - Service stopped. * @throws { BusinessError } 2900003 - Bluetooth disabled. @@ -1091,7 +1093,8 @@ declare namespace connection { * @param { string } deviceId - Indicates device ID. For example, "11:22:33:AA:BB:FF". * @returns { Promise<void> } Returns the promise object. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 2900001 - Service stopped. * @throws { BusinessError } 2900003 - Bluetooth disabled. @@ -1262,7 +1265,7 @@ declare namespace connection { /** * Controls the actions of Bluetooth peripherals. - * + * * @permission ohos.permission.ACCESS_BLUETOOTH and ohos.permission.MANAGE_BLUETOOTH * @param { ControlDeviceActionParams } controlDeviceActionParams - Indicates the action for Bluetooth peripherals. * @returns { Promise<void> } Returns the promise object. @@ -2363,7 +2366,7 @@ declare namespace connection { interface ControlDeviceActionParams { /** * Indicates the address of the peripheral. - * + * * @type { string } * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi @@ -2372,7 +2375,7 @@ declare namespace connection { deviceId: string; /** * Indicates the control type. - * + * * @type { ControlType } * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi @@ -2381,7 +2384,7 @@ declare namespace connection { type: ControlType; /** * Indicates the control value. - * + * * @type { ControlTypeValue } * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi @@ -2390,7 +2393,7 @@ declare namespace connection { typeValue: ControlTypeValue; /** * Indicates the control object. - * + * * @type { ControlObject } * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi @@ -2401,7 +2404,7 @@ declare namespace connection { /** * Describes the control type. - * + * * @enum { number } * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi @@ -2410,7 +2413,7 @@ declare namespace connection { enum ControlType { /** * Indicates the control command of play. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2418,7 +2421,7 @@ declare namespace connection { PLAY = 0, /** * Indicates the control command of vibration. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2426,7 +2429,7 @@ declare namespace connection { VIBRATE = 1, /** * Indicates the control command of flash. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2434,7 +2437,7 @@ declare namespace connection { FLASH = 2, /** * Indicates the control command of lock. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2442,7 +2445,7 @@ declare namespace connection { LOCK = 3, /** * Indicates the control command of erase. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2452,7 +2455,7 @@ declare namespace connection { /** * Describes the control type value. - * + * * @enum { number } * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi @@ -2461,7 +2464,7 @@ declare namespace connection { enum ControlTypeValue { /** * Indicates the action of disable. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2469,7 +2472,7 @@ declare namespace connection { DISABLE = 0, /** * Indicates the action of enable. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2477,7 +2480,7 @@ declare namespace connection { ENABLE = 1, /** * Indicates the action of query. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2487,7 +2490,7 @@ declare namespace connection { /** * Describes the control object. - * + * * @enum { number } * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi @@ -2496,7 +2499,7 @@ declare namespace connection { enum ControlObject { /** * Control object of left ear. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2504,7 +2507,7 @@ declare namespace connection { LEFT_EAR = 0, /** * Control object of right ear. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2512,7 +2515,7 @@ declare namespace connection { RIGHT_EAR = 1, /** * Control object of left and right ear. - * + * * @syscap SystemCapability.Communication.Bluetooth.Core * @systemapi * @since 15 @@ -2539,7 +2542,7 @@ declare namespace connection { */ trustedPairedDevices: Array<TrustedPairedDevice>; } - + /** * Describes device of cloud pair. * diff --git a/api/@ohos.bluetooth.socket.d.ts b/api/@ohos.bluetooth.socket.d.ts index 763a4eb8e325fe467efc0d6af3e010cd0844cca3..c44b7866c50850a33e3ba15ee5640f0d51e31c26 100644 --- a/api/@ohos.bluetooth.socket.d.ts +++ b/api/@ohos.bluetooth.socket.d.ts @@ -85,6 +85,20 @@ declare namespace socket { */ function sppConnect(deviceId: string, options: SppOptions, callback: AsyncCallback<number>): void; + /** + * Obtain the device id in the client socket. + * + * @param { number } clientSocket - Indicates client socket. + * @returns { string } Returns the connected device id + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 17 + */ + function getDeviceId(clientSocket: number): string; + /** * Disables an spp server socket and releases related resources. * @@ -158,6 +172,33 @@ declare namespace socket { */ function off(type: 'sppRead', clientSocket: number, callback?: Callback<ArrayBuffer>): void; + /** + * Asynchronous interface for writing data to the socket. + * + * @param { number } clientSocket - Indicates the client socket ID, returned by {@link sppAccept} or {@link sppConnect}. + * @param { ArrayBuffer } data - Indicates the data to write. + * @returns { Promise<void> } Returns the promise object. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2901054 - IO error. + * @throws { BusinessError } 2900099 - Operation failed. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 18 + */ + function sppWriteAsync(clientSocket: number, data: ArrayBuffer): Promise<void>; + + /** + * Asynchronous interface for reading data from the socket. + * + * @param { number } clientSocket - Indicates the client socket ID, returned by {@link sppAccept} or {@link sppConnect}. + * @returns { Promise<ArrayBuffer> } Returns the promise object, used to get the spp read data. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2901054 - IO error. + * @throws { BusinessError } 2900099 - Operation failed. + * @syscap SystemCapability.Communication.Bluetooth.Core + * @since 18 + */ + function sppReadAsync(clientSocket: number): Promise<ArrayBuffer>; + /** * Describes the spp parameters. * diff --git a/api/@ohos.buffer.d.ts b/api/@ohos.buffer.d.ts index 891377d32185db18d4efbfbbc3f8dba25fd66af8..5052e2092986a0c1f157fb04036fe7f3b758b45d 100644 --- a/api/@ohos.buffer.d.ts +++ b/api/@ohos.buffer.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace buffer { /** @@ -65,7 +66,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ type BufferEncoding = | 'ascii' @@ -103,6 +105,27 @@ declare namespace buffer { * @since 11 */ interface TypedArray extends Int8Array {} + /** + * TypedArray features and methods + * + * @typedef { Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array | BigInt64Array | BigUint64Array } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + type TypedArray = Int8Array + | Uint8Array + | Uint8ClampedArray + | Int16Array + | Uint16Array + | Int32Array + | Uint32Array + | Float32Array + | Float64Array + | BigInt64Array + | BigUint64Array; /** * Allocates a new Buffer for a fixed size bytes. If fill is undefined, the Buffer will be zero-filled. * @@ -146,7 +169,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function alloc(size: number, fill?: string | Buffer | number, encoding?: BufferEncoding): Buffer; @@ -187,7 +211,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function allocUninitializedFromPool(size: number): Buffer; @@ -228,7 +253,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function allocUninitialized(size: number): Buffer; @@ -282,6 +308,25 @@ declare namespace buffer { encoding?: BufferEncoding ): number; + /** + * Returns the byte length of a string when encoded using `encoding`. + * This is not the same as [`String.prototype.length`], which does not account + * for the encoding that is used to convert the string into bytes. + * + * @param { string | Buffer | TypedArray | DataView | ArrayBuffer } doc - string string A value to calculate the length of + * @param { BufferEncoding } [encoding] - encoding [encoding='utf8'] If `string` is a string, this is its encoding + * @returns { number } The number of bytes contained within `string` + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + function byteLength( + doc: string | Buffer | TypedArray | DataView | ArrayBuffer, + encoding?: BufferEncoding + ): number; + /** * Returns a new `Buffer` which is the result of concatenating all the `Buffer`instances in the `list` together. * @@ -325,7 +370,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function concat(list: Buffer[] | Uint8Array[], totalLength?: number): Buffer; @@ -363,7 +409,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function from(array: number[]): Buffer; @@ -420,6 +467,23 @@ declare namespace buffer { */ function from(arrayBuffer: ArrayBuffer | SharedArrayBuffer, byteOffset?: number, length?: number): Buffer; + /** + * This creates a view of the ArrayBuffer without copying the underlying memory. + * + * @param { ArrayBuffer } arrayBuffer - arrayBuffer arrayBuffer An ArrayBuffer, + * @param { number } [byteOffset] - byteOffset [byteOffset = 0] Index of first byte to expose + * @param { number } [length] - length [length = arrayBuffer.byteLength - byteOffset] Number of bytes to expose + * @returns { Buffer } Return a view of the ArrayBuffer + * @throws { BusinessError } 10200001 - The value of "[byteOffset/length]" is out of range. + * It must be >= [left range] and <= [right range]. Received value is: [byteOffset/length] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + function from(arrayBuffer: ArrayBuffer, byteOffset?: number, length?: number): Buffer; + /** * Copies the passed buffer data onto a new Buffer instance. * @@ -454,7 +518,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function from(buffer: Buffer | Uint8Array): Buffer; @@ -501,7 +566,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function from(object: Object, offsetOrEncoding: number | string, length: number): Buffer; @@ -545,7 +611,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function from(string: String, encoding?: BufferEncoding): Buffer; @@ -574,7 +641,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function isBuffer(obj: Object): boolean; @@ -603,7 +671,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function isEncoding(encoding: string): boolean; @@ -654,6 +723,22 @@ declare namespace buffer { */ function compare(buf1: Buffer | Uint8Array, buf2: Buffer | Uint8Array): -1 | 0 | 1; + /** + * Compares buf1 to buf2 + * + * @param { Buffer | Uint8Array } buf1 - buf1 buf1 A Buffer or Uint8Array instance. + * @param { Buffer | Uint8Array } buf2 - buf2 buf2 A Buffer or Uint8Array instance. + * @returns { number } 0 is returned if target is the same as buf + * 1 is returned if target should come before buf when sorted. + * -1 is returned if target should come after buf when sorted. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + function compare(buf1: Buffer | Uint8Array, buf2: Buffer | Uint8Array): number; + /** * Re-encodes the given Buffer or Uint8Array instance from one character encoding to another. * @@ -694,7 +779,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function transcode(source: Buffer | Uint8Array, fromEnc: string, toEnc: string): Buffer; @@ -718,7 +804,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ class Buffer { /** @@ -750,6 +837,18 @@ declare namespace buffer { */ length: number; + /** + * Gets the element number of the buffer. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; + /** * The underlying ArrayBuffer object based on which this Buffer object is created. * @@ -779,6 +878,19 @@ declare namespace buffer { */ buffer: ArrayBuffer; + /** + * The underlying ArrayBuffer object based on which this Buffer object is created. + * + * @type { ArrayBuffer } + * @throws { BusinessError } 10200013 - Buffer cannot be set for the buffer that has only a getter. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get buffer(): ArrayBuffer; + /** * The byteOffset of the Buffers underlying ArrayBuffer object * @@ -808,6 +920,19 @@ declare namespace buffer { */ byteOffset: number; + /** + * The byteOffset of the Buffers underlying ArrayBuffer object + * + * @type { number } + * @throws { BusinessError } 10200013 - ByteOffset cannot be set for the buffer that has only a getter. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get byteOffset(): number; + /** * Fills buf with the specified value. If the offset and end are not given, the entire buf will be filled. * @@ -854,7 +979,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ fill( value: string | Buffer | Uint8Array | number, @@ -934,6 +1060,35 @@ declare namespace buffer { sourceEnd?: number ): -1 | 0 | 1; + /** + * Compares buf with target and returns a number indicating whether buf comes before, after, + * or is the same as target in sort order. Comparison is based on the actual sequence of bytes in each Buffer. + * + * @param { Buffer | Uint8Array } target - target target A Buffer or Uint8Array with which to compare buf + * @param { number } [targetStart] - targetStart [targetStart = 0] The offset within target at which to begin comparison + * @param { number } [targetEnd] - targetEnd [targetEnd = target.length] The offset within target at which to end comparison (not inclusive) + * @param { number } [sourceStart] - sourceStart [sourceStart = 0] The offset within buf at which to begin comparison + * @param { number } [sourceEnd] - sourceEnd [sourceEnd = buf.length] The offset within buf at which to end comparison (not inclusive) + * @returns { number } number is returned if target is the same as buf + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @throws { BusinessError } 10200001 - The value of "[targetStart/targetEnd/sourceStart/sourceEnd]" is out of range. + * It must be >= 0 and <= [right range]. Received value is: [targetStart/targetEnd/sourceStart/sourceEnd] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + compare( + target: Buffer | Uint8Array, + targetStart?: number, + targetEnd?: number, + sourceStart?: number, + sourceEnd?: number + ): number; + /** * Copies data from a region of buf to a region in target, even if the target memory region overlaps with buf. * If sourceEnd is greater than the length of the target, the length of the target shall prevail, and the extra part will not be overwritten. @@ -986,7 +1141,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ copy(target: Buffer | Uint8Array, targetStart?: number, sourceStart?: number, sourceEnd?: number): number; @@ -1018,7 +1174,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ equals(otherBuffer: Uint8Array | Buffer): boolean; @@ -1062,7 +1219,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ includes(value: string | number | Buffer | Uint8Array, byteOffset?: number, encoding?: BufferEncoding): boolean; @@ -1109,7 +1267,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ indexOf(value: string | number | Buffer | Uint8Array, byteOffset?: number, encoding?: BufferEncoding): number; @@ -1135,7 +1294,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ keys(): IterableIterator<number>; @@ -1161,7 +1321,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ values(): IterableIterator<number>; @@ -1187,7 +1348,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ entries(): IterableIterator<[number, number]>; @@ -1234,7 +1396,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ lastIndexOf(value: string | number | Buffer | Uint8Array, byteOffset?: number, encoding?: BufferEncoding): number; @@ -1269,7 +1432,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readBigInt64BE(offset?: number): bigint; @@ -1304,7 +1468,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readBigInt64LE(offset?: number): bigint; @@ -1339,7 +1504,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readBigUInt64BE(offset?: number): bigint; @@ -1374,7 +1540,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readBigUInt64LE(offset?: number): bigint; @@ -1409,7 +1576,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readDoubleBE(offset?: number): number; @@ -1444,7 +1612,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readDoubleLE(offset?: number): number; @@ -1479,7 +1648,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readFloatBE(offset?: number): number; @@ -1514,7 +1684,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readFloatLE(offset?: number): number; @@ -1549,7 +1720,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readInt8(offset?: number): number; @@ -1584,7 +1756,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readInt16BE(offset?: number): number; @@ -1619,7 +1792,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readInt16LE(offset?: number): number; @@ -1654,7 +1828,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readInt32BE(offset?: number): number; @@ -1689,7 +1864,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readInt32LE(offset?: number): number; @@ -1736,7 +1912,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readIntBE(offset: number, byteLength: number): number; @@ -1783,7 +1960,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readIntLE(offset: number, byteLength: number): number; @@ -1818,7 +1996,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readUInt8(offset?: number): number; @@ -1853,7 +2032,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readUInt16BE(offset?: number): number; @@ -1888,7 +2068,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readUInt16LE(offset?: number): number; @@ -1923,7 +2104,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readUInt32BE(offset?: number): number; @@ -1958,7 +2140,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readUInt32LE(offset?: number): number; @@ -2005,7 +2188,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readUIntBE(offset: number, byteLength: number): number; @@ -2052,7 +2236,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readUIntLE(offset: number, byteLength: number): number; @@ -2084,7 +2269,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ subarray(start?: number, end?: number): Buffer; @@ -2113,7 +2299,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ swap16(): Buffer; @@ -2142,7 +2329,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ swap32(): Buffer; @@ -2171,7 +2359,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ swap64(): Buffer; @@ -2239,6 +2428,21 @@ declare namespace buffer { */ toString(encoding?: string, start?: number, end?: number): string; + /** + * Decodes buf to a string according to the specified character encoding in encoding + * + * @param { BufferEncoding } [encoding] - encoding [encoding='utf8'] The character encoding to use + * @param { number } [start] - start [start = 0] The byte offset to start decoding at + * @param { number } [end] - end [end = buf.length] The byte offset to stop decoding at (not inclusive) + * @returns { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + toString(encoding?: BufferEncoding, start?: number, end?: number): string; + /** * Writes string to buf at offset according to the character encoding in encoding * @@ -2285,7 +2489,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ write(str: string, offset?: number, length?: number, encoding?: string): number; @@ -2331,7 +2536,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeBigInt64BE(value: bigint, offset?: number): number; @@ -2378,7 +2584,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeBigInt64LE(value: bigint, offset?: number): number; @@ -2425,7 +2632,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeBigUInt64BE(value: bigint, offset?: number): number; @@ -2472,7 +2680,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeBigUInt64LE(value: bigint, offset?: number): number; @@ -2516,7 +2725,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeDoubleBE(value: number, offset?: number): number; @@ -2560,7 +2770,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeDoubleLE(value: number, offset?: number): number; @@ -2604,7 +2815,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeFloatBE(value: number, offset?: number): number; @@ -2648,7 +2860,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeFloatLE(value: number, offset?: number): number; @@ -2695,7 +2908,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeInt8(value: number, offset?: number): number; @@ -2742,7 +2956,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeInt16BE(value: number, offset?: number): number; @@ -2789,7 +3004,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeInt16LE(value: number, offset?: number): number; @@ -2836,7 +3052,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeInt32BE(value: number, offset?: number): number; @@ -2883,7 +3100,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeInt32LE(value: number, offset?: number): number; @@ -2930,7 +3148,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeIntBE(value: number, offset: number, byteLength: number): number; @@ -2977,7 +3196,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeIntLE(value: number, offset: number, byteLength: number): number; @@ -3024,7 +3244,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeUInt8(value: number, offset?: number): number; @@ -3071,7 +3292,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeUInt16BE(value: number, offset?: number): number; @@ -3118,7 +3340,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeUInt16LE(value: number, offset?: number): number; @@ -3165,7 +3388,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeUInt32BE(value: number, offset?: number): number; @@ -3212,7 +3436,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeUInt32LE(value: number, offset?: number): number; @@ -3259,7 +3484,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeUIntBE(value: number, offset: number, byteLength: number): number; @@ -3306,9 +3532,70 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ writeUIntLE(value: number, offset: number, byteLength: number): number; + + /** + * Returns the byte at the specified index. + * + * @param { number } index - byte index to read + * @returns { number | undefined } Returns the byte value at `index` + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_get(index: number): number | undefined; + + /** + * Sets the byte at the specified index. + * + * @param { number } index – byte index to write + * @param { number } value – byte value (0–255) + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_set(index: number, value: number): void; + } + + /** + * Defines the Blob related options parameters. + * + * @interface BlobOptions + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + interface BlobOptions { + /** + * Blob content type. The default parameter is' '. + * @type { ?string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + type?: string; + + /** + * How to output a string ending with '\ n' as' transparent or native . The default value is transparent. + * @type { ?string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + endings?: string; } /** @@ -3330,7 +3617,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ class Blob { /** @@ -3380,6 +3668,25 @@ declare namespace buffer { */ constructor(sources: string[] | ArrayBuffer[] | TypedArray[] | DataView[] | Blob[], options?: Object); + /** + * Creates a new Blob object containing a concatenation of the given sources. + * + * @param { Array<TypedArray> | Array<string> | Array<ArrayBuffer> | Array<DataView> | Array<Blob> } sources - sources sources An array of string, <ArrayBuffer>, + * <TypedArray>, <DataView>, or <Blob> objects, or any mix of such objects, that will be stored within the Blob + * @param { BlobOptions } [options] - options options {endings: string, type: string} + * endings: One of either 'transparent' or 'native'. + * type: The Blob content-type + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + constructor(sources: Array<TypedArray> | Array<string> | Array<ArrayBuffer> | Array<DataView> | Array<Blob>, options?: BlobOptions); + /** * The total size of the Blob in bytes * @@ -3402,7 +3709,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ size: number; @@ -3428,7 +3736,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ type: string; @@ -3454,7 +3763,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ arrayBuffer(): Promise<ArrayBuffer>; @@ -3489,7 +3799,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ slice(start?: number, end?: number, type?: string): Blob; @@ -3515,7 +3826,8 @@ declare namespace buffer { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ text(): Promise<string>; } diff --git a/api/@ohos.bundle.appControl.d.ts b/api/@ohos.bundle.appControl.d.ts index cb2e1abe8306f31a21cca5b3800727d108133c37..d57d3694f7e01d75f06f4af04b4d85ceeb154f94 100644 --- a/api/@ohos.bundle.appControl.d.ts +++ b/api/@ohos.bundle.appControl.d.ts @@ -250,6 +250,46 @@ declare namespace appControl { priority: number; } + /** + * Indicate the configuration for batch interception settings. + * + * @typedef DisposedRuleConfiguration + * @syscap SystemCapability.BundleManager.BundleFramework.AppControl + * @systemapi + * @since 20 + */ + export interface DisposedRuleConfiguration { + /** + * Indicates the app ID of the application. + * + * @type { string } + * @syscap SystemCapability.BundleManager.BundleFramework.AppControl + * @systemapi + * @since 20 + */ + appId: string; + + /** + * Indicates the index of clone app. + * + * @type { number } + * @syscap SystemCapability.BundleManager.BundleFramework.AppControl + * @systemapi + * @since 20 + */ + appIndex: number; + + /** + * Indicates the rule for interception. + * + * @type { DisposedRule } + * @syscap SystemCapability.BundleManager.BundleFramework.AppControl + * @systemapi + * @since 20 + */ + disposedRule: DisposedRule; + } + /** * Set the disposed status of a specified bundle. * @@ -544,6 +584,22 @@ declare namespace appControl { * @since 15 */ function deleteUninstallDisposedRule(appIdentifier: string, appIndex?: number): void; + + /** + * Batch set disposed rules for specified bundles. + * + * @permission ohos.permission.MANAGE_DISPOSED_APP_STATUS + * @param { Array<DisposedRuleConfiguration> } disposedRuleConfigurations - Indicate the configuration for batch interception settings. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Permission denied. A non-system application is not allowed to call a system API. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 17700005 - The specified app ID is invalid. + * @throws { BusinessError } 17700061 - AppIndex is not in the valid range. + * @syscap SystemCapability.BundleManager.BundleFramework.AppControl + * @systemapi + * @since 20 + */ + function setDisposedRules(disposedRuleConfigurations: Array<DisposedRuleConfiguration>): void; } export default appControl; diff --git a/api/@ohos.bundle.bundleManager.d.ts b/api/@ohos.bundle.bundleManager.d.ts index f3ad4343b06469c7201ff0f6bd2e9ae8b86f1656..1f1b72f18896a08915e72f5939bfc43d2cb86845 100644 --- a/api/@ohos.bundle.bundleManager.d.ts +++ b/api/@ohos.bundle.bundleManager.d.ts @@ -19,12 +19,13 @@ */ import { AsyncCallback } from './@ohos.base'; +import { Metadata as _Metadata } from './bundleManager/Metadata'; +import { ElementName as _ElementName } from './bundleManager/ElementName'; +/*** if arkts 1.1 */ import type { ApplicationInfo as _ApplicationInfo, ModuleMetadata as _ModuleMetadata, PreinstalledApplicationInfo as _PreinstalledApplicationInfo } from './bundleManager/ApplicationInfo'; -import { Metadata as _Metadata } from './bundleManager/Metadata'; import { PermissionDef as _PermissionDef } from './bundleManager/PermissionDef'; import { PluginBundleInfo as _PluginBundleInfo, PluginModuleInfo as _PluginModuleInfo} from './bundleManager/PluginBundleInfo'; -import { ElementName as _ElementName } from './bundleManager/ElementName'; import { SharedBundleInfo as _SharedBundleInfo } from './bundleManager/SharedBundleInfo'; import type { RecoverableApplicationInfo as _RecoverableApplicationInfo } from './bundleManager/RecoverableApplicationInfo'; import Want from './@ohos.app.ability.Want'; @@ -34,6 +35,18 @@ import * as _BundleInfo from './bundleManager/BundleInfo'; import * as _HapModuleInfo from './bundleManager/HapModuleInfo'; import * as _ExtensionAbilityInfo from './bundleManager/ExtensionAbilityInfo'; import * as _Skill from './bundleManager/Skill'; +/*** endif */ +/*** if arkts 1.2 */ +import { ApplicationInfo as _ApplicationInfo, ModuleMetadata as _ModuleMetadata, + PreinstalledApplicationInfo as _PreinstalledApplicationInfo } from './bundleManager/ApplicationInfo'; +import { AbilityInfo as _AbilityInfo, WindowSize as _WindowSize } from './bundleManager/AbilityInfo'; +import { BundleInfo as _BundleInfo, UsedScene as _UsedScene, ReqPermissionDetail as _ReqPermissionDetail, + SignatureInfo as _SignatureInfo, AppCloneIdentity as _AppCloneIdentity } from './bundleManager/BundleInfo'; +import { HapModuleInfo as _HapModuleInfo, PreloadItem as _PreloadItem, Dependency as _Dependency, + RouterItem as _RouterItem, DataItem as _DataItem } from './bundleManager/HapModuleInfo'; +import { ExtensionAbilityInfo as _ExtensionAbilityInfo } from './bundleManager/ExtensionAbilityInfo'; +import { Skill as _Skill, SkillUri as _SkillUri } from './bundleManager/Skill'; +/*** endif */ /** * This module is used to obtain package information of various applications installed on the current device. * @@ -56,7 +69,8 @@ import * as _Skill from './bundleManager/Skill'; * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace bundleManager { /** @@ -68,12 +82,24 @@ declare namespace bundleManager { */ /** * Used to query the enumeration value of bundleInfo. Multiple values can be passed in the form. + * Multiple value input, such as GET_BUNDLE_INFO_DEFAULT | GET_BUNDLE_INFO_WITH_APPLICATION. * * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice * @since 11 */ + /** + * Used to query the enumeration value of bundleInfo. Multiple values can be passed in the form. + * Multiple value input, such as GET_BUNDLE_INFO_DEFAULT | GET_BUNDLE_INFO_WITH_APPLICATION. + * + * @enum { number } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ enum BundleFlag { /** * Used to obtain the default bundleInfo. The obtained bundleInfo does not contain information of @@ -90,6 +116,16 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Used to obtain the default bundleInfo. The obtained bundleInfo does not contain information of + * signatureInfo, applicationInfo, hapModuleInfo, ability, extensionAbility and permission. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_BUNDLE_INFO_DEFAULT = 0x00000000, /** * Used to obtain the bundleInfo containing applicationInfo. The obtained bundleInfo does not @@ -106,6 +142,16 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Used to obtain the bundleInfo containing applicationInfo. The obtained bundleInfo does not + * contain the information of signatureInfo, hapModuleInfo, ability, extensionAbility and permission. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_BUNDLE_INFO_WITH_APPLICATION = 0x00000001, /** * Used to obtain the bundleInfo containing hapModuleInfo. The obtained bundleInfo does not @@ -122,11 +168,22 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Used to obtain the bundleInfo containing hapModuleInfo. The obtained bundleInfo does not + * contain the information of signatureInfo, applicationInfo, ability, extensionAbility and permission. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_BUNDLE_INFO_WITH_HAP_MODULE = 0x00000002, /** * Used to obtain the bundleInfo containing ability. The obtained bundleInfo does not * contain the information of signatureInfo, applicationInfo, extensionAbility and permission. - * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE. + * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE, + * such as GET_BUNDLE_INFO_WITH_ABILITY | GET_BUNDLE_INFO_WITH_HAP_MODULE. * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 9 @@ -134,17 +191,31 @@ declare namespace bundleManager { /** * Used to obtain the bundleInfo containing ability. The obtained bundleInfo does not * contain the information of signatureInfo, applicationInfo, extensionAbility and permission. - * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE. + * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE, + * such as GET_BUNDLE_INFO_WITH_ABILITY | GET_BUNDLE_INFO_WITH_HAP_MODULE. * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice * @since 11 */ + /** + * Used to obtain the bundleInfo containing ability. The obtained bundleInfo does not + * contain the information of signatureInfo, applicationInfo, extensionAbility and permission. + * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE. + * such as GET_BUNDLE_INFO_WITH_ABILITY | GET_BUNDLE_INFO_WITH_HAP_MODULE. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_BUNDLE_INFO_WITH_ABILITY = 0x00000004, /** * Used to obtain the bundleInfo containing extensionAbility. The obtained bundleInfo does not * contain the information of signatureInfo, applicationInfo, ability and permission. - * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE. + * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE, + * such as GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY | GET_BUNDLE_INFO_WITH_HAP_MODULE. * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 9 @@ -152,11 +223,13 @@ declare namespace bundleManager { /** * Used to obtain the bundleInfo containing extensionAbility. The obtained bundleInfo does not * contain the information of signatureInfo, applicationInfo, ability and permission. - * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE. + * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE, + * such as GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY | GET_BUNDLE_INFO_WITH_HAP_MODULE. * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY = 0x00000008, /** @@ -174,24 +247,51 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Used to obtain the bundleInfo containing permission. The obtained bundleInfo does not + * contain the information of signatureInfo, applicationInfo, hapModuleInfo, extensionAbility and ability. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_BUNDLE_INFO_WITH_REQUESTED_PERMISSION = 0x00000010, /** * Used to obtain the metadata contained in applicationInfo, moduleInfo and abilityInfo. * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_APPLICATION, - * GET_BUNDLE_INFO_WITH_HAP_MODULE, GET_BUNDLE_INFO_WITH_ABILITIES, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY. + * GET_BUNDLE_INFO_WITH_HAP_MODULE, GET_BUNDLE_INFO_WITH_ABILITY, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY. * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 9 */ /** - * Used to obtain the metadata contained in applicationInfo, moduleInfo and abilityInfo. + * Used to obtain the metadata contained in applicationInfo, moduleInfo, abilityInfo and extensionAbility. * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_APPLICATION, - * GET_BUNDLE_INFO_WITH_HAP_MODULE, GET_BUNDLE_INFO_WITH_ABILITIES, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY. + * GET_BUNDLE_INFO_WITH_HAP_MODULE, GET_BUNDLE_INFO_WITH_ABILITY, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY, + * such as GET_BUNDLE_INFO_WITH_APPLICATION | GET_BUNDLE_INFO_WITH_METADATA + * or GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_ABILITY | GET_BUNDLE_INFO_WITH_METADATA + * or GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY | GET_BUNDLE_INFO_WITH_METADATA. * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice * @since 11 */ + /** + * Used to obtain the metadata contained in applicationInfo, moduleInfo and abilityInfo. + * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_APPLICATION, + * GET_BUNDLE_INFO_WITH_HAP_MODULE, GET_BUNDLE_INFO_WITH_ABILITY, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY, + * such as GET_BUNDLE_INFO_WITH_APPLICATION | GET_BUNDLE_INFO_WITH_METADATA + * or GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_ABILITY | GET_BUNDLE_INFO_WITH_METADATA + * or GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY | GET_BUNDLE_INFO_WITH_METADATA. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_BUNDLE_INFO_WITH_METADATA = 0x00000020, /** * Used to obtain the default bundleInfo containing disabled application and ability. @@ -210,6 +310,17 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Used to obtain the default bundleInfo containing disabled application and ability. + * The obtained bundleInfo does not contain information of signatureInfo, applicationInfo, + * hapModuleInfo, ability, extensionAbility and permission. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_BUNDLE_INFO_WITH_DISABLE = 0x00000040, /** * Used to obtain the bundleInfo containing signatureInfo. The obtained bundleInfo does not @@ -226,35 +337,52 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Used to obtain the bundleInfo containing signatureInfo. The obtained bundleInfo does not + * contain the information of applicationInfo, hapModuleInfo, extensionAbility, ability and permission. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_BUNDLE_INFO_WITH_SIGNATURE_INFO = 0x00000080, /** * Used to obtain the bundleInfo containing menu configuration in hapModuleInfo. * The obtained bundleInfo does not contain the information of applicationInfo, extensionAbility, ability and permission. - * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE. + * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE, + * such as GET_BUNDLE_INFO_WITH_MENU | GET_BUNDLE_INFO_WITH_HAP_MODULE * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_BUNDLE_INFO_WITH_MENU = 0x00000100, /** * Used to obtain the bundleInfo containing router map configuration in hapModuleInfo. * The obtained bundleInfo does not contain the information of applicationInfo, extensionAbility, ability and permission. - * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE. + * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE, + * such as GET_BUNDLE_INFO_WITH_ROUTER_MAP | GET_BUNDLE_INFO_WITH_HAP_MODULE * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_BUNDLE_INFO_WITH_ROUTER_MAP = 0x00000200, /** * Used to obtain the skillInfo contained in abilityInfo and extensionInfo. * It can't be used alone, it needs to be used with GET_BUNDLE_INFO_WITH_HAP_MODULE, - * GET_BUNDLE_INFO_WITH_ABILITIES, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY. + * GET_BUNDLE_INFO_WITH_ABILITY, GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY, + * such as GET_BUNDLE_INFO_WITH_SKILL | GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_ABILITY + * or GET_BUNDLE_INFO_WITH_SKILL | GET_BUNDLE_INFO_WITH_HAP_MODULE | GET_BUNDLE_INFO_WITH_EXTENSION_ABILITY * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_BUNDLE_INFO_WITH_SKILL = 0x00000800, /** @@ -263,15 +391,19 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_BUNDLE_INFO_ONLY_WITH_LAUNCHER_ABILITY = 0x00001000, /** - * Used to obtain the bundleInfo only if any user installed + * Used to obtain the bundle information of an application installed by any user. + * It must be used together with GET_BUNDLE_INFO_WITH_APPLICATION. + * It is valid only in the {@link getBundleInfo} and {@link getAllBundleInfo} APIs. * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_BUNDLE_INFO_OF_ANY_USER = 0x00002000, /** @@ -280,18 +412,21 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_BUNDLE_INFO_EXCLUDE_CLONE = 0x00004000, } /** * Used to query the enumeration value of applicationInfo. Multiple values can be passed in the form. + * Multiple value input, such as GET_APPLICATION_INFO_DEFAULT | GET_APPLICATION_INFO_WITH_PERMISSION. * * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ enum ApplicationFlag { /** @@ -300,7 +435,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_APPLICATION_INFO_DEFAULT = 0x00000000, /** @@ -308,7 +444,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_APPLICATION_INFO_WITH_PERMISSION = 0x00000001, /** @@ -316,7 +453,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_APPLICATION_INFO_WITH_METADATA = 0x00000002, /** @@ -324,7 +462,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_APPLICATION_INFO_WITH_DISABLE = 0x00000004 } @@ -337,6 +476,15 @@ declare namespace bundleManager { * @systemapi * @since 9 */ + /** + * Used to query the enumeration value of abilityInfo. Multiple values can be passed in the form. + * + * @enum { number } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ enum AbilityFlag { /** * Used to obtain the default abilityInfo. The obtained abilityInfo does not contain the information of @@ -346,6 +494,15 @@ declare namespace bundleManager { * @systemapi * @since 9 */ + /** + * Used to obtain the default abilityInfo. The obtained abilityInfo does not contain the information of + * permission, metadata and disabled abilityInfo. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_ABILITY_INFO_DEFAULT = 0x00000000, /** * Used to obtain the abilityInfo containing permission. @@ -354,6 +511,14 @@ declare namespace bundleManager { * @systemapi * @since 9 */ + /** + * Used to obtain the abilityInfo containing permission. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_ABILITY_INFO_WITH_PERMISSION = 0x00000001, /** * Used to obtain the abilityInfo containing applicationInfo. @@ -362,6 +527,14 @@ declare namespace bundleManager { * @systemapi * @since 9 */ + /** + * Used to obtain the abilityInfo containing applicationInfo. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_ABILITY_INFO_WITH_APPLICATION = 0x00000002, /** * Used to obtain the abilityInfo containing metadata. @@ -370,6 +543,14 @@ declare namespace bundleManager { * @systemapi * @since 9 */ + /** + * Used to obtain the abilityInfo containing metadata. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_ABILITY_INFO_WITH_METADATA = 0x00000004, /** * Used to obtain the abilityInfo containing disabled abilityInfo. @@ -378,6 +559,14 @@ declare namespace bundleManager { * @systemapi * @since 9 */ + /** + * Used to obtain the abilityInfo containing disabled abilityInfo. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_ABILITY_INFO_WITH_DISABLE = 0x00000008, /** * Used to obtain the abilityInfo only for system app. @@ -393,6 +582,14 @@ declare namespace bundleManager { * @systemapi * @since 11 */ + /** + * Used to obtain the abilityInfo only for system app. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_ABILITY_INFO_ONLY_SYSTEM_APP = 0x00000010, /** * Used to obtain the abilityInfo with domain verification. @@ -401,6 +598,14 @@ declare namespace bundleManager { * @systemapi * @since 12 */ + /** + * Used to obtain the abilityInfo with domain verification. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_ABILITY_INFO_WITH_APP_LINKING = 0x00000040, /** * Used to obtain the abilityInfo with Skill @@ -409,6 +614,14 @@ declare namespace bundleManager { * @systemapi * @since 12 */ + /** + * Used to obtain the abilityInfo with Skill + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ GET_ABILITY_INFO_WITH_SKILL = 0x00000080, } @@ -418,7 +631,8 @@ declare namespace bundleManager { * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ enum ExtensionAbilityFlag { /** @@ -427,7 +641,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_EXTENSION_ABILITY_INFO_DEFAULT = 0x00000000, /** @@ -435,7 +650,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_EXTENSION_ABILITY_INFO_WITH_PERMISSION = 0x00000001, /** @@ -443,7 +659,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_EXTENSION_ABILITY_INFO_WITH_APPLICATION = 0x00000002, /** @@ -451,7 +668,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_EXTENSION_ABILITY_INFO_WITH_METADATA = 0x00000004, /** @@ -459,7 +677,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_EXTENSION_ABILITY_INFO_WITH_SKILL = 0x00000010, } @@ -477,21 +696,24 @@ declare namespace bundleManager { * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum ExtensionAbilityType { /** * Indicates extension info with type of form * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Indicates extension info with type of form * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ FORM = 0, @@ -499,7 +721,8 @@ declare namespace bundleManager { * Indicates extension info with type of work schedule * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ WORK_SCHEDULER = 1, @@ -507,7 +730,8 @@ declare namespace bundleManager { * Indicates extension info with type of input method * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ INPUT_METHOD = 2, @@ -515,7 +739,8 @@ declare namespace bundleManager { * Indicates extension info with type of service * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ SERVICE = 3, @@ -523,7 +748,8 @@ declare namespace bundleManager { * Indicates extension info with type of accessibility * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ ACCESSIBILITY = 4, @@ -531,7 +757,8 @@ declare namespace bundleManager { * Indicates extension info with type of dataShare * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ DATA_SHARE = 5, @@ -539,7 +766,8 @@ declare namespace bundleManager { * Indicates extension info with type of filesShare * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ FILE_SHARE = 6, @@ -547,7 +775,8 @@ declare namespace bundleManager { * Indicates extension info with type of staticSubscriber * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ STATIC_SUBSCRIBER = 7, @@ -555,7 +784,8 @@ declare namespace bundleManager { * Indicates extension info with type of wallpaper * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ WALLPAPER = 8, @@ -563,7 +793,8 @@ declare namespace bundleManager { * Indicates extension info with type of backup * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ BACKUP = 9, @@ -571,7 +802,8 @@ declare namespace bundleManager { * Indicates extension info with type of window * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW = 10, @@ -579,7 +811,8 @@ declare namespace bundleManager { * Indicates extension info with type of enterprise admin * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ ENTERPRISE_ADMIN = 11, @@ -587,7 +820,8 @@ declare namespace bundleManager { * Indicates extension info with type of thumbnail * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ THUMBNAIL = 13, @@ -595,7 +829,8 @@ declare namespace bundleManager { * Indicates extension info with type of preview * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ PREVIEW = 14, @@ -603,7 +838,8 @@ declare namespace bundleManager { * Indicates extension info with type of print * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ PRINT = 15, @@ -611,7 +847,8 @@ declare namespace bundleManager { * Indicates extension info with type of share * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ SHARE = 16, @@ -619,7 +856,8 @@ declare namespace bundleManager { * Indicates extension info with type of push * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ PUSH = 17, @@ -627,7 +865,8 @@ declare namespace bundleManager { * Indicates extension info with type of driver * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ DRIVER = 18, @@ -635,7 +874,8 @@ declare namespace bundleManager { * Indicates extension info with type of action * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ ACTION = 19, @@ -643,7 +883,8 @@ declare namespace bundleManager { * Indicates extension info with type of ads service * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ADS_SERVICE = 20, @@ -651,7 +892,8 @@ declare namespace bundleManager { * Indicates extension info with type of embedded UI * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ EMBEDDED_UI = 21, @@ -659,31 +901,81 @@ declare namespace bundleManager { * Indicates extension info with type of insight intent UI * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INSIGHT_INTENT_UI = 22, + /** + * Indicates extension info with type of FENCE + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 + */ + FENCE = 24, + + /** + * Indicates extension info with type of CALLER_INFO_QUERY + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ + CALLER_INFO_QUERY = 25, + /** * Indicates extension info with type of asset acceleration * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ ASSET_ACCELERATION = 26, + /** + * Indicates extension info with type of form edit + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 + */ + FORM_EDIT = 27, + /** * Indicates extension info with type of distributed * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 18 + * @since 20 + * @arkts 1.1&1.2 */ DISTRIBUTED = 28, + /** + * Indicates extension info with type of app service + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @since 20 + * @arkts 1.1&1.2 + */ + APP_SERVICE = 29, + + /** + * Indicates extension info with type of the live form + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ + LIVE_FORM = 30, + /** * Indicates extension info with type of unspecified * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ UNSPECIFIED = 255 } @@ -703,6 +995,16 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * PermissionGrantState + * + * @enum { number } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export enum PermissionGrantState { /** * PERMISSION_DENIED @@ -717,6 +1019,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * PERMISSION_DENIED + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ PERMISSION_DENIED = -1, /** @@ -732,6 +1043,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * PERMISSION_GRANTED + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ PERMISSION_GRANTED = 0 } @@ -750,6 +1070,16 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Support window mode + * + * @enum { number } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export enum SupportWindowMode { /** * Indicates supported window mode of full screen mode @@ -764,6 +1094,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates supported window mode of full screen mode + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ FULL_SCREEN = 0, /** * Indicates supported window mode of split mode @@ -776,7 +1115,16 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since 11 + */ + /** + * Indicates supported window mode of split mode + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 */ SPLIT = 1, /** @@ -792,6 +1140,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates supported window mode of floating mode + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ FLOATING = 2 } @@ -817,7 +1174,8 @@ declare namespace bundleManager { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum LaunchType { /** @@ -839,7 +1197,8 @@ declare namespace bundleManager { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ SINGLETON = 0, @@ -862,7 +1221,8 @@ declare namespace bundleManager { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MULTITON = 1, @@ -879,6 +1239,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates that the ability can have specified instances + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ SPECIFIED = 2 } @@ -934,6 +1303,16 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Display orientation + * + * @enum { number } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export enum DisplayOrientation { /** * Indicates that the system automatically determines the display orientation @@ -948,6 +1327,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates that the system automatically determines the display orientation + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ UNSPECIFIED, /** @@ -963,6 +1351,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the landscape orientation + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ LANDSCAPE, /** @@ -978,6 +1375,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the portrait orientation + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ PORTRAIT, /** @@ -993,6 +1399,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the page ability orientation is the same as that of the nearest ability in the stack + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ FOLLOW_RECENT, /** @@ -1008,6 +1423,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the inverted landscape orientation + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ LANDSCAPE_INVERTED, /** @@ -1023,6 +1447,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the inverted portrait orientation + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ PORTRAIT_INVERTED, /** @@ -1038,6 +1471,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the orientation can be auto-rotated + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ AUTO_ROTATION, /** @@ -1053,6 +1495,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the landscape orientation rotated with sensor + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ AUTO_ROTATION_LANDSCAPE, /** @@ -1068,6 +1519,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the portrait orientation rotated with sensor + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ AUTO_ROTATION_PORTRAIT, /** @@ -1083,6 +1543,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the sensor restricted mode + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ AUTO_ROTATION_RESTRICTED, /** @@ -1098,6 +1567,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the sensor landscape restricted mode + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ AUTO_ROTATION_LANDSCAPE_RESTRICTED, /** @@ -1113,6 +1591,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the sensor portrait restricted mode + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ AUTO_ROTATION_PORTRAIT_RESTRICTED, /** @@ -1128,6 +1615,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the locked orientation mode + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ LOCKED, /** @@ -1135,7 +1631,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ AUTO_ROTATION_UNSPECIFIED, @@ -1144,7 +1641,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLLOW_DESKTOP } @@ -1164,6 +1662,16 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates module type + * + * @enum { number } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export enum ModuleType { /** * Indicates entry type @@ -1178,6 +1686,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates entry type + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ ENTRY = 1, /** * Indicates feature type @@ -1192,6 +1709,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates feature type + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ FEATURE = 2, /** * Indicates shared type @@ -1206,6 +1732,15 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates shared type + * + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ SHARED = 3 } @@ -1222,7 +1757,8 @@ declare namespace bundleManager { * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum BundleType { /** @@ -1236,7 +1772,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ APP = 0, /** @@ -1248,7 +1785,8 @@ declare namespace bundleManager { * Indicates atomic service * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ATOMIC_SERVICE = 1 } @@ -1266,7 +1804,8 @@ declare namespace bundleManager { * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum CompatiblePolicy { /** @@ -1280,7 +1819,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ BACKWARD_COMPATIBILITY = 1 } @@ -1291,7 +1831,8 @@ declare namespace bundleManager { * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum ProfileType { /** @@ -1299,7 +1840,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENT_PROFILE = 1 } @@ -1310,7 +1852,8 @@ declare namespace bundleManager { * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum AppDistributionType { /** @@ -1318,7 +1861,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ APP_GALLERY = 1, @@ -1327,7 +1871,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ ENTERPRISE = 2, @@ -1337,7 +1882,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ ENTERPRISE_NORMAL = 3, @@ -1347,7 +1893,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ ENTERPRISE_MDM = 4, @@ -1356,7 +1903,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OS_INTEGRATION = 5, @@ -1365,7 +1913,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ CROWDTESTING = 6, @@ -1374,7 +1923,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ NONE = 7 } @@ -1384,28 +1934,32 @@ declare namespace bundleManager { * * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum MultiAppModeType { /** * Indicates multi app mode with type of unspecified * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ UNSPECIFIED = 0, /** * Indicates multi app mode with type of multiInstance * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ MULTI_INSTANCE = 1, /** * Indicates multi app mode with type of appClone * * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ APP_CLONE = 2, } @@ -1416,7 +1970,8 @@ declare namespace bundleManager { * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum ApplicationInfoFlag { /** @@ -1424,7 +1979,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ FLAG_INSTALLED = 0x00000001, /** @@ -1432,7 +1988,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ FLAG_OTHER_INSTALLED = 0x00000010, /** @@ -1440,7 +1997,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ FLAG_PREINSTALLED_APP = 0x00000020, /** @@ -1448,7 +2006,8 @@ declare namespace bundleManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ FLAG_PREINSTALLED_APP_UPDATE = 0x00000040, } @@ -1456,7 +2015,7 @@ declare namespace bundleManager { /** * Obtains own bundleInfo. * - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @returns { Promise<BundleInfo> } The result of getting the bundle info. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @syscap SystemCapability.BundleManager.BundleFramework.Core @@ -1465,19 +2024,31 @@ declare namespace bundleManager { /** * Obtains own bundleInfo. * - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @returns { Promise<BundleInfo> } The result of getting the bundle info. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice * @since 11 */ + /** + * Obtains own bundleInfo. + * + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @returns { Promise<BundleInfo> } The result of getting the bundle info. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ function getBundleInfoForSelf(bundleFlags: number): Promise<BundleInfo>; /** * Obtains own bundleInfo. * - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle info result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @syscap SystemCapability.BundleManager.BundleFramework.Core @@ -1486,19 +2057,31 @@ declare namespace bundleManager { /** * Obtains own bundleInfo. * - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle info result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice * @since 11 */ + /** + * Obtains own bundleInfo. + * + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle info result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ function getBundleInfoForSelf(bundleFlags: number, callback: AsyncCallback<BundleInfo>): void; /** * Obtains own bundleInfo. * - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @returns { BundleInfo } The result of getting the bundle info. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @syscap SystemCapability.BundleManager.BundleFramework.Core @@ -1507,13 +2090,25 @@ declare namespace bundleManager { /** * Obtains own bundleInfo. * - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @returns { BundleInfo } The result of getting the bundle info. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice * @since 11 */ + /** + * Obtains own bundleInfo. + * + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @returns { BundleInfo } The result of getting the bundle info. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ function getBundleInfoForSelfSync(bundleFlags: number): BundleInfo; /** @@ -1521,14 +2116,15 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { string } bundleName - Indicates the application bundle name to be queried. - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle info result. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 17700001 - The specified bundleName is not found. * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ function getBundleInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback<BundleInfo>): void; @@ -1537,7 +2133,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { string } bundleName - Indicates the application bundle name to be queried. - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @param { number } userId - Indicates the user ID or do not pass user ID. * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle info result. * @throws { BusinessError } 201 - Permission denied. @@ -1546,7 +2142,8 @@ declare namespace bundleManager { * @throws { BusinessError } 17700004 - The specified user ID is not found. * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ function getBundleInfo(bundleName: string, bundleFlags: number, userId: number, callback: AsyncCallback<BundleInfo>): void; @@ -1556,7 +2153,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { string } bundleName - Indicates the application bundle name to be queried. - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @param { number } userId - Indicates the user ID or do not pass user ID. * @returns { Promise<BundleInfo> } The result of getting the bundle info. * @throws { BusinessError } 201 - Permission denied. @@ -1565,7 +2162,8 @@ declare namespace bundleManager { * @throws { BusinessError } 17700004 - The specified user ID is not found. * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ function getBundleInfo(bundleName: string, bundleFlags: number, userId?: number): Promise<BundleInfo>; @@ -1574,7 +2172,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { string } bundleName - Indicates the application bundle name to be queried. - * @param { number } appFlags - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. + * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. * @param { AsyncCallback<ApplicationInfo> } callback - The callback of getting application info result. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -1592,7 +2190,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { string } bundleName - Indicates the application bundle name to be queried. - * @param { number } appFlags - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. + * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. * @param { number } userId - Indicates the user ID or do not pass user ID. * @param { AsyncCallback<ApplicationInfo> } callback - The callback of getting application info result. * @throws { BusinessError } 201 - Permission denied. @@ -1613,7 +2211,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { string } bundleName - Indicates the application bundle name to be queried. - * @param { number } appFlags - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. + * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. * @param { number } userId - Indicates the user ID or do not pass user ID. * @returns { Promise<ApplicationInfo> } The result of getting the application info. * @throws { BusinessError } 201 - Permission denied. @@ -1632,7 +2230,7 @@ declare namespace bundleManager { * Obtains BundleInfo of all bundles available in the system. * * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo that will be returned. * @param { AsyncCallback<Array<BundleInfo>> } callback - The callback of getting a list of BundleInfo objects. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -1647,7 +2245,7 @@ declare namespace bundleManager { * Obtains BundleInfo of all bundles available in the system. * * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo that will be returned. * @param { number } userId - Indicates the user id. * @param { AsyncCallback<Array<BundleInfo>> } callback - The callback of getting a list of BundleInfo objects. * @throws { BusinessError } 201 - Permission denied. @@ -1664,7 +2262,7 @@ declare namespace bundleManager { * Obtains BundleInfo of all bundles available in the system. * * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo that will be returned. * @param { number } userId - Indicates the user id. * @returns { Promise<Array<BundleInfo>> } Returns a list of BundleInfo objects. * @throws { BusinessError } 201 - Permission denied. @@ -1681,7 +2279,7 @@ declare namespace bundleManager { * Obtains information about all installed applications of a specified user. * * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST - * @param { number } appFlags - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. + * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. * @param { AsyncCallback<Array<ApplicationInfo>> } callback - The callback of getting a list of ApplicationInfo objects. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -1696,7 +2294,7 @@ declare namespace bundleManager { * Obtains information about all installed applications of a specified user. * * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST - * @param { number } appFlags - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. + * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. * @param { number } userId - Indicates the user ID or do not pass user ID. * @param { AsyncCallback<Array<ApplicationInfo>> } callback - The callback of getting a list of ApplicationInfo objects. * @throws { BusinessError } 201 - Permission denied. @@ -1714,7 +2312,7 @@ declare namespace bundleManager { * Obtains information about all installed applications of a specified user. * * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST - * @param { number } appFlags - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. + * @param { number } appFlags {@link ApplicationFlag} - Indicates the flag used to specify information contained in the ApplicationInfo objects that will be returned. * @param { number } userId - Indicates the user ID or do not pass user ID. * @returns { Promise<Array<ApplicationInfo>> } Returns a list of ApplicationInfo objects. * @throws { BusinessError } 201 - Permission denied. @@ -1732,7 +2330,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { Want } want - Indicates the Want containing the application bundle name to be queried. - * @param { number } abilityFlags - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. + * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. * @param { AsyncCallback<Array<AbilityInfo>> } callback - The callback of querying ability info result. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -1753,7 +2351,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { Want } want - Indicates the Want containing the application bundle name to be queried. - * @param { number } abilityFlags - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. + * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. * @param { number } userId - userId Indicates the user ID. * @param { AsyncCallback<Array<AbilityInfo>> } callback - The callback of querying ability info result. * @throws { BusinessError } 201 - Permission denied. @@ -1777,7 +2375,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { Want } want - Indicates the Want containing the application bundle name to be queried. - * @param { number } abilityFlags - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. + * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. * @param { number } userId - userId Indicates the user ID. * @returns { Promise<Array<AbilityInfo>> } Returns a list of AbilityInfo objects. * @throws { BusinessError } 201 - Permission denied. @@ -1800,7 +2398,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { Array<Want> } wants - Indicates the Want Array containing the application bundle name to be queried. - * @param { number } abilityFlags - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. + * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. * @param { number } [userId] - userId Indicates the user ID. * @returns { Promise<Array<AbilityInfo>> } Returns a list of AbilityInfo objects. * @throws { BusinessError } 201 - Permission denied. @@ -1823,7 +2421,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { Want } want - Indicates the Want containing the application bundle name to be queried. - * @param { number } abilityFlags - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. + * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. * @param { number } userId - userId Indicates the user ID. * @returns { Array<AbilityInfo> } Returns a list of AbilityInfo objects. * @throws { BusinessError } 201 - Permission denied. @@ -1840,6 +2438,21 @@ declare namespace bundleManager { * @since 10 */ function queryAbilityInfoSync(want: Want, abilityFlags: number, userId?: number): Array<AbilityInfo>; + + /** + * Get AbilityInfo by the given uri. + * + * @permission ohos.permission.GET_ABILITY_INFO + * @param { string } uri - Indicates the uri used for matching ability. + * @param { number } abilityFlags {@link AbilityFlag} - Indicates the flag used to specify information contained in the AbilityInfo objects that will be returned. + * @returns { Promise<Array<AbilityInfo>> } Returns a list of AbilityInfo objects. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 17700003 - The ability is not found. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + */ + function getAbilityInfo(uri: string, abilityFlags: number): Promise<Array<AbilityInfo>>; /** * Query extension info of by utilizing a Want. ohos.permission.GET_BUNDLE_INFO_PRIVILEGED is required for cross user access. @@ -1847,7 +2460,7 @@ declare namespace bundleManager { * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { Want } want - Indicates the Want containing the application bundle name to be queried. * @param { ExtensionAbilityType } extensionAbilityType - Indicates ExtensionAbilityType. - * @param { number } extensionAbilityFlags - Indicates the flag used to specify information contained in the + * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the * ExtensionAbilityInfo objects that will be returned. * @param { AsyncCallback<Array<ExtensionAbilityInfo>> } callback - The callback of querying extension ability info result. * @throws { BusinessError } 201 - Permission denied. @@ -1870,7 +2483,7 @@ declare namespace bundleManager { * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { Want } want - Indicates the Want containing the application bundle name to be queried. * @param { ExtensionAbilityType } extensionAbilityType - Indicates ExtensionAbilityType. - * @param { number } extensionAbilityFlags - Indicates the flag used to specify information contained in the + * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the * ExtensionAbilityInfo objects that will be returned. * @param { number } userId - Indicates the user ID. * @param { AsyncCallback<Array<ExtensionAbilityInfo>> } callback - The callback of querying extension ability info result. @@ -1895,7 +2508,7 @@ declare namespace bundleManager { * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { Want } want - Indicates the Want containing the application bundle name to be queried. * @param { ExtensionAbilityType } extensionAbilityType - Indicates ExtensionAbilityType. - * @param { number } extensionAbilityFlags - Indicates the flag used to specify information contained in the + * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the * ExtensionAbilityInfo objects that will be returned. * @param { number } userId - Indicates the user ID. * @returns { Promise<Array<ExtensionAbilityInfo>> } Returns a list of ExtensionAbilityInfo objects. @@ -1920,7 +2533,7 @@ declare namespace bundleManager { * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { Want } want - Indicates the Want containing the application bundle name to be queried. * @param { ExtensionAbilityType } extensionAbilityType - Indicates ExtensionAbilityType. - * @param { number } extensionAbilityFlags - Indicates the flag used to specify information contained in the + * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the * ExtensionAbilityInfo objects that will be returned. * @param { number } userId - Indicates the user ID. * @returns { Array<ExtensionAbilityInfo> } Returns a list of ExtensionAbilityInfo objects. @@ -1945,7 +2558,7 @@ declare namespace bundleManager { * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { Want } want - Indicates the Want containing the application bundle name to be queried. * @param { string } extensionAbilityType - Indicates extensionAbilityType. - * @param { number } extensionAbilityFlags - Indicates the flag used to specify information contained in the + * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the * ExtensionAbilityInfo objects that will be returned. * @param { number } userId - Indicates the user ID. * @returns { Array<ExtensionAbilityInfo> } Returns a list of ExtensionAbilityInfo objects. @@ -1969,7 +2582,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { string } extensionAbilityType - Indicates ExtensionAbilityType. - * @param { number } extensionAbilityFlags - Indicates the flag used to specify information contained in the + * @param { number } extensionAbilityFlags {@link ExtensionAbilityFlag} - Indicates the flag used to specify information contained in the * ExtensionAbilityInfo objects that will be returned. * @param { number } userId - Indicates the user ID. * @returns { Array<ExtensionAbilityInfo> } Returns a list of ExtensionAbilityInfo objects. @@ -2034,7 +2647,7 @@ declare namespace bundleManager { * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED * @param { string } hapFilePath - Indicates the path storing the HAP. * The path should be the relative path to the data directory of the current application. - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo object to be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo object to be returned. * @param { AsyncCallback<BundleInfo> } callback - The callback of getting bundle archive info result. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -2052,7 +2665,7 @@ declare namespace bundleManager { * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED * @param { string } hapFilePath - Indicates the path storing the HAP. * The path should be the relative path to the data directory of the current application. - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo object to be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo object to be returned. * @returns { Promise<BundleInfo> } Returns the BundleInfo object. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -2070,7 +2683,7 @@ declare namespace bundleManager { * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED * @param { string } hapFilePath - Indicates the path storing the HAP. * The path should be the relative path to the data directory of the current application. - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo object to be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo object to be returned. * @returns { BundleInfo } Returns the BundleInfo object. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -2357,7 +2970,8 @@ declare namespace bundleManager { * @throws { BusinessError } 17700001 - The specified bundleName is not found. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ function isApplicationEnabledSync(bundleName: string): boolean; @@ -2529,7 +3143,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified abilityName is not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @throws { BusinessError } 17700029 - The specified ability is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 9 @@ -2545,7 +3158,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified abilityName is not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @throws { BusinessError } 17700029 - The specified ability is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice @@ -2564,7 +3176,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified abilityName is not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @throws { BusinessError } 17700029 - The specified ability is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 9 @@ -2580,7 +3191,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified abilityName is not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @throws { BusinessError } 17700029 - The specified ability is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice @@ -2599,7 +3209,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified abilityName is not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @throws { BusinessError } 17700029 - The specified ability is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 10 @@ -2615,7 +3224,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified abilityName is not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @throws { BusinessError } 17700029 - The specified ability is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice @@ -2634,7 +3242,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 9 */ @@ -2649,7 +3256,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice * @since 11 @@ -2667,7 +3273,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 9 */ @@ -2682,7 +3287,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice * @since 11 @@ -2700,7 +3304,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 10 */ @@ -2715,7 +3318,6 @@ declare namespace bundleManager { * @throws { BusinessError } 17700002 - The specified moduleName is not existed. * @throws { BusinessError } 17700003 - The specified extensionAbilityName not existed. * @throws { BusinessError } 17700024 - Failed to get the profile because there is no profile in the HAP. - * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice * @since 11 @@ -2855,7 +3457,8 @@ declare namespace bundleManager { * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function getApplicationInfoSync(bundleName: string, applicationFlags: number, userId: number): ApplicationInfo; @@ -2873,7 +3476,8 @@ declare namespace bundleManager { * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function getApplicationInfoSync(bundleName: string, applicationFlags: number): ApplicationInfo; @@ -2882,7 +3486,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { string } bundleName - Indicates the application bundle name to be queried. - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo object that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo object that will be returned. * @param { number } userId - Indicates the user ID or do not pass user ID. * @returns { BundleInfo } - Returns the BundleInfo object. * @throws { BusinessError } 201 - Permission denied. @@ -2891,7 +3495,8 @@ declare namespace bundleManager { * @throws { BusinessError } 17700004 - The specified user ID is not found. * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ function getBundleInfoSync(bundleName: string, bundleFlags: number, userId: number): BundleInfo; @@ -2900,14 +3505,15 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED or ohos.permission.GET_BUNDLE_INFO * @param { string } bundleName - Indicates the application bundle name to be queried. - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo object that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo object that will be returned. * @returns { BundleInfo } - Returns the BundleInfo object. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 17700001 - The specified bundleName is not found. * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ function getBundleInfoSync(bundleName: string, bundleFlags: number): BundleInfo; @@ -3137,7 +3743,7 @@ declare namespace bundleManager { * @systemapi * @since 12 */ - function getExtResource(bundleName: string): Promise<Array<string>>; + function getExtResource(bundleName: string): Promise<Array<string>>; /** * Enable dynamic icon. @@ -3150,30 +3756,78 @@ declare namespace bundleManager { * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 17700001 - The specified bundleName is not found. - * @throws { BusinessError } 17700002 - The specified moduleName is not found. - * @throws { BusinessError } 17700304 - Failed to enable the dynamic icon. + * @throws { BusinessError } 17700002 - The specified moduleName is not found. + * @throws { BusinessError } 17700304 - Failed to enable the dynamic icon. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 12 + */ + function enableDynamicIcon(bundleName: string, moduleName: string): Promise<void>; + + /** + * Enable dynamic icon. + * If you need to enable dynamic icon under the current user, ohos.permission.ACCESS_DYNAMIC_ICON + * needs to be applied for. + * If you need to enable dynamic icon under other users, ohos.permission.ACCESS_DYNAMIC_ICON and + * ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS need to be applied for. + * + * @permission ohos.permission.ACCESS_DYNAMIC_ICON or (ohos.permission.ACCESS_DYNAMIC_ICON and ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS) + * @param { string } bundleName - Indicates the bundleName. + * @param { string } moduleName - Indicates the moduleName for extend resource. + * @param { BundleOptions } [option] - Indicates the bundle option. + * @returns { Promise<void> } Returns enableDynamicIcon result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Permission denied, non-system app called system api. + * @throws { BusinessError } 17700001 - The specified bundleName is not found. + * @throws { BusinessError } 17700002 - The specified moduleName is not found. + * @throws { BusinessError } 17700004 - The specified user ID is not found. + * @throws { BusinessError } 17700061 - AppIndex not in valid range. + * @throws { BusinessError } 17700304 - Failed to enable the dynamic icon. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + function enableDynamicIcon(bundleName: string, moduleName: string, option?: BundleOptions): Promise<void>; + + /** + * Disable dynamic icon. + * + * @permission ohos.permission.ACCESS_DYNAMIC_ICON + * @param { string } bundleName - Indicates the bundleName. + * @returns { Promise<void> } Returns disableDynamicIcon result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Permission denied, non-system app called system api. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. + * @throws { BusinessError } 17700001 - The specified bundleName is not found. + * @throws { BusinessError } 17700305 - Failed to disable the dynamic icon. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi * @since 12 */ - function enableDynamicIcon(bundleName: string, moduleName: string): Promise<void>; + function disableDynamicIcon(bundleName: string): Promise<void>; /** * Disable dynamic icon. + * If you need to disable dynamic icon under the current user, ohos.permission.ACCESS_DYNAMIC_ICON + * needs to be applied for. + * If you need to disable dynamic icon under other users, ohos.permission.ACCESS_DYNAMIC_ICON and + * ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS need to be applied for. * - * @permission ohos.permission.ACCESS_DYNAMIC_ICON + * @permission ohos.permission.ACCESS_DYNAMIC_ICON or (ohos.permission.ACCESS_DYNAMIC_ICON and ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS) * @param { string } bundleName - Indicates the bundleName. + * @param { BundleOptions } [option] - Indicates the bundle option. * @returns { Promise<void> } Returns disableDynamicIcon result. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 17700001 - The specified bundleName is not found. + * @throws { BusinessError } 17700004 - The specified user ID is not found. + * @throws { BusinessError } 17700061 - AppIndex not in valid range. * @throws { BusinessError } 17700305 - Failed to disable the dynamic icon. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since 20 */ - function disableDynamicIcon(bundleName: string): Promise<void>; + function disableDynamicIcon(bundleName: string, option?: BundleOptions): Promise<void>; /** * Get dynamic icon. @@ -3192,6 +3846,42 @@ declare namespace bundleManager { */ function getDynamicIcon(bundleName: string): Promise<string>; + /** + * Get dynamic icon info. + * + * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED and ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS + * @param { string } bundleName - Indicates the bundleName. + * @returns { Promise<Array<DynamicIconInfo>> } Returns a list of DynamicIconInfo objects. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Permission denied, non-system app called system api. + * @throws { BusinessError } 17700001 - The specified bundleName is not found. + * @throws { BusinessError } 17700306 - Failed to obtain the dynamic icon. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + function getDynamicIconInfo(bundleName: string): Promise<Array<DynamicIconInfo>>; + + /** + * Get all dynamic icon info. + * If you need to query dynamic icon information under the current user, ohos.permission.GET_BUNDLE_INFO_PRIVILEGED + * needs to be applied for. + * If you need to query dynamic icon information under other users, ohos.permission.GET_BUNDLE_INFO_PRIVILEGED and + * ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS need to be applied for. + * + * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED and ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS + * @param { number } [userId] - Indicates the user id, default value is to query all users. + * @returns { Promise<Array<DynamicIconInfo>> } Returns a list of DynamicIconInfo objects. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Permission denied, non-system app called system api. + * @throws { BusinessError } 17700004 - The specified user ID is not found. + * @throws { BusinessError } 17700306 - Failed to obtain the dynamic icon. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + function getAllDynamicIconInfo(userId?: number): Promise<Array<DynamicIconInfo>>; + /** * Verifies the validity of .abc files. Only .abc files passed the verification can run on the restricted VM. * @@ -3407,7 +4097,6 @@ declare namespace bundleManager { * @param { number } uid - Indicates the UID of an application. * @returns { SignatureInfo } The result of getting the signature info. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 17700021 - The uid is not found. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 18 @@ -3420,7 +4109,7 @@ declare namespace bundleManager { * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED * @param { string } bundleName - Indicates the application bundle name to be queried. * @param { number } appIndex - Indicates the index of clone app. - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @param { number } [userId] - Indicates the user ID, If the user id is not specified, the current user id is used by default. * @returns { Promise<BundleInfo> } Returns A BundleInfo Of MultiApp Mode. * @throws { BusinessError } 201 - Permission denied. @@ -3441,7 +4130,7 @@ declare namespace bundleManager { * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED * @param { string } bundleName - Indicates the application bundle name to be queried. - * @param { number } bundleFlags - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. + * @param { number } bundleFlags {@link BundleFlag} - Indicates the flag used to specify information contained in the BundleInfo objects that will be returned. * @param { number } [userId] - Indicates the user ID, If the user id is not specified, the current user id is used by default. * @returns { Promise<Array<BundleInfo>> } Returns BundleInfo Arrays Of MultiApp Mode. * @throws { BusinessError } 201 - Permission denied. @@ -3479,12 +4168,11 @@ declare namespace bundleManager { * @returns { Promise<Array<PluginBundleInfo>> } Returns PluginBundleInfo Arrays. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 17700001 - The specified bundleName is not found. * @throws { BusinessError } 17700004 - The specified user ID is not found. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ function getAllPluginInfo(hostBundleName: string, userId?: number): Promise<Array<PluginBundleInfo>>; @@ -3497,7 +4185,6 @@ declare namespace bundleManager { * @returns { Promise<void> } The result of migrating data. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. - * @throws { BusinessError } 401 - The parameter check failed. * @throws { BusinessError } 17700080 - The source paths are invalid. * @throws { BusinessError } 17700081 - The destination path is invalid. * @throws { BusinessError } 17700082 - User authentication failed. @@ -3511,6 +4198,34 @@ declare namespace bundleManager { */ function migrateData(sourcePaths: Array<string>, destinationPath: string): Promise<void>; + /** + * Obtains sandbox data directory by bundleName and appIndex. + * + * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED + * @param { string } bundleName - Indicates the application bundle name to be queried. + * @param { number } appIndex - Indicates the index of clone app. + * @returns { string } Returns the sandbox data directory. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Permission denied, non-system app called system api. + * @throws { BusinessError } 17700001 - The specified bundleName is not found. + * @throws { BusinessError } 17700061 - AppIndex not in valid range. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + function getSandboxDataDir(bundleName: string, appIndex: number): string; + + /** + * Obtains AppCloneIdentity contains bundleName and appIndex by the sandbox data directory. + * + * @param { string } sandboxDataDir - Indicates the sandbox data directory. + * @returns { AppCloneIdentity } Returns the clone Identity contains bundleName and appIndex. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + function getAppCloneIdentityBySandboxDataDir(sandboxDataDir: string): AppCloneIdentity; + /** * Obtains configuration information about an application. * @@ -3526,6 +4241,16 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Obtains configuration information about an application. + * + * @typedef { _ApplicationInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export type ApplicationInfo = _ApplicationInfo; /** @@ -3543,6 +4268,16 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the metadata information about a module. + * + * @typedef { _ModuleMetadata } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export type ModuleMetadata = _ModuleMetadata; /** @@ -3560,6 +4295,16 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the Metadata. + * + * @typedef { _Metadata } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export type Metadata = _Metadata; /** @@ -3577,8 +4322,28 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Obtains configuration information about a bundle. + * + * @typedef { _BundleInfo.BundleInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + */ export type BundleInfo = _BundleInfo.BundleInfo; + /** + * Obtains configuration information about a bundle. + * + * @typedef { _BundleInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @since 20 + * @arkts 1.2 + */ + export type BundleInfo = _BundleInfo; + /** * The scene which is used. * @@ -3594,8 +4359,28 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * The scene which is used. + * + * @typedef { _BundleInfo.UsedScene } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + */ export type UsedScene = _BundleInfo.UsedScene; + /** + * The scene which is used. + * + * @typedef { _UsedScene } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @since 20 + * @arkts 1.2 + */ + export type UsedScene = _UsedScene; + /** * Indicates the required permissions details defined in file config.json. * @@ -3611,8 +4396,28 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the required permissions details defined in file config.json. + * + * @typedef { _BundleInfo.ReqPermissionDetail } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + */ export type ReqPermissionDetail = _BundleInfo.ReqPermissionDetail; + /** + * Indicates the required permissions details defined in file config.json. + * + * @typedef { _ReqPermissionDetail } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @since 20 + * @arkts 1.2 + */ + export type ReqPermissionDetail = _ReqPermissionDetail; + /** * Indicates the SignatureInfo. * @@ -3628,8 +4433,28 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Indicates the SignatureInfo. + * + * @typedef { _BundleInfo.SignatureInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + */ export type SignatureInfo = _BundleInfo.SignatureInfo; + /** + * Indicates the SignatureInfo. + * + * @typedef { _SignatureInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @since 20 + * @arkts 1.2 + */ + export type SignatureInfo = _SignatureInfo; + /** * AppCloneIdentity Contain BundleName and appIndex. * @@ -3639,6 +4464,16 @@ declare namespace bundleManager { */ export type AppCloneIdentity = _BundleInfo.AppCloneIdentity; + /** + * AppCloneIdentity Contain BundleName and appIndex. + * + * @typedef { _AppCloneIdentity } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @since 20 + * @arkts 1.2 + */ + export type AppCloneIdentity = _AppCloneIdentity; + /** * Obtains configuration information about a module. * @@ -3654,8 +4489,29 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Obtains configuration information about a module. + * + * @typedef { _HapModuleInfo.HapModuleInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + */ export type HapModuleInfo = _HapModuleInfo.HapModuleInfo; + /** + * Obtains configuration information about a module. + * + * @typedef { _HapModuleInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type HapModuleInfo = _HapModuleInfo; + /** * Obtains preload information about a module. * @@ -3673,6 +4529,17 @@ declare namespace bundleManager { */ export type PreloadItem = _HapModuleInfo.PreloadItem; + /** + * Obtains preload information about a module. + * + * @typedef { _PreloadItem } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type PreloadItem = _PreloadItem; + /** * Obtains dependency information about a module. * @@ -3690,6 +4557,17 @@ declare namespace bundleManager { */ export type Dependency = _HapModuleInfo.Dependency; + /** + * Obtains dependency information about a module. + * + * @typedef { _Dependency } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type Dependency = _Dependency; + /** * Obtains the router item about a module. * @@ -3700,6 +4578,16 @@ declare namespace bundleManager { */ export type RouterItem = _HapModuleInfo.RouterItem; + /** + * Obtains the router item about a module. + * + * @typedef { _RouterItem} + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @since 20 + * @arkts 1.2 + */ + export type RouterItem = _RouterItem; + /** * Obtains the data item within router item. * @@ -3710,6 +4598,17 @@ declare namespace bundleManager { */ export type DataItem = _HapModuleInfo.DataItem; + /** + * Obtains the data item within router item. + * + * @typedef { _DataItem } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type DataItem = _DataItem; + /** * Obtains configuration information about an ability. * @@ -3725,25 +4624,67 @@ declare namespace bundleManager { * @atomicservice * @since 11 */ + /** + * Obtains configuration information about an ability. + * + * @typedef { _AbilityInfo.AbilityInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + */ export type AbilityInfo = _AbilityInfo.AbilityInfo; /** - * Contains basic Ability information. Indicates the window size.. + * Obtains configuration information about an ability. + * + * @typedef { _AbilityInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type AbilityInfo = _AbilityInfo; + + /** + * Contains basic Ability information. Indicates the window size. * * @typedef { _AbilityInfo.WindowSize } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 9 */ /** - * Contains basic Ability information. Indicates the window size.. + * Contains basic Ability information. Indicates the window size. * * @typedef { _AbilityInfo.WindowSize } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice * @since 11 */ + /** + * Contains basic Ability information. Indicates the window size. + * + * @typedef { _AbilityInfo.WindowSize } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + */ export type WindowSize = _AbilityInfo.WindowSize; + /** + * Contains basic Ability information. Indicates the window size. + * + * @typedef { _WindowSize } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type WindowSize = _WindowSize; + /** * Obtains extension information about a bundle. * @@ -3761,6 +4702,17 @@ declare namespace bundleManager { */ export type ExtensionAbilityInfo = _ExtensionAbilityInfo.ExtensionAbilityInfo; + /** + * Obtains extension information about a bundle. + * + * @typedef { _ExtensionAbilityInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type ExtensionAbilityInfo = _ExtensionAbilityInfo; + /** * Indicates the defined permission details in file config.json. * @@ -3784,7 +4736,8 @@ declare namespace bundleManager { * @typedef { _ElementName } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export type ElementName = _ElementName; @@ -3838,6 +4791,17 @@ declare namespace bundleManager { */ export type Skill = _Skill.Skill; + /** + * Obtains configuration information about an skill + * + * @typedef { _Skill } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type Skill = _Skill; + /** * Obtains configuration information about an skillUri * @@ -3848,13 +4812,25 @@ declare namespace bundleManager { */ export type SkillUrl = _Skill.SkillUri; + /** + * Obtains configuration information about an skillUri + * + * @typedef { _SkillUri } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + export type SkillUrl = _SkillUri; + /** * Indicates the information of preinstalled application. * * @typedef { _PreinstalledApplicationInfo } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export type PreinstalledApplicationInfo = _PreinstalledApplicationInfo; @@ -3864,7 +4840,7 @@ declare namespace bundleManager { * @typedef { _PluginBundleInfo } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ export type PluginBundleInfo = _PluginBundleInfo; @@ -3874,9 +4850,29 @@ declare namespace bundleManager { * @typedef { _PluginModuleInfo } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ export type PluginModuleInfo = _PluginModuleInfo; + + /** + * Contains dynamic icon. + * + * @typedef { _BundleInfo.DynamicIconInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + export type DynamicIconInfo = _BundleInfo.DynamicIconInfo; + + /** + * Contains bundle options. + * + * @typedef { _BundleInfo.BundleOptions } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + export type BundleOptions = _BundleInfo.BundleOptions; } export default bundleManager; diff --git a/api/@ohos.bundle.bundleMonitor.d.ts b/api/@ohos.bundle.bundleMonitor.d.ts index 42ea5d3b421854e31d50097f10382f94df0429a8..8e63401b2695b4ac97055b2e17d627c6c3e90621 100644 --- a/api/@ohos.bundle.bundleMonitor.d.ts +++ b/api/@ohos.bundle.bundleMonitor.d.ts @@ -21,7 +21,7 @@ import { Callback } from './@ohos.base'; /** - * Bundle monitor + * Bundle monitor,monitor application installation, updates, and uninstallation events. * * @namespace bundleMonitor * @syscap SystemCapability.BundleManager.BundleFramework.Core diff --git a/api/@ohos.bundle.bundleResourceManager.d.ts b/api/@ohos.bundle.bundleResourceManager.d.ts index ef2deaf321dce5a94c1cecbd90482f9c95239050..a4b4608c5db19a5047adece86db434d667b6d033 100644 --- a/api/@ohos.bundle.bundleResourceManager.d.ts +++ b/api/@ohos.bundle.bundleResourceManager.d.ts @@ -18,9 +18,14 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ import type { AsyncCallback } from './@ohos.base'; import type { BundleResourceInfo as _BundleResourceInfo } from './bundleManager/BundleResourceInfo'; import type { LauncherAbilityResourceInfo as _LauncherAbilityResourceInfo } from './bundleManager/LauncherAbilityResourceInfo'; +/*** endif */ +/*** if arkts 1.2 */ +import { BundleResourceInfo as _BundleResourceInfo } from './bundleManager/BundleResourceInfo'; +/*** endif */ /** * This module is used to obtain bundle resource information of various applications installed on the current device. @@ -28,16 +33,19 @@ import type { LauncherAbilityResourceInfo as _LauncherAbilityResourceInfo } from * @namespace bundleResourceManager * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace bundleResourceManager { /** * Used to query the enumeration value of resource info. Multiple values can be passed in the form. + * Multiple value input, such as GET_RESOURCE_INFO_WITH_LABEL | GET_RESOURCE_INFO_WITH_ICON. * * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ enum ResourceFlag { /** @@ -45,7 +53,8 @@ declare namespace bundleResourceManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_RESOURCE_INFO_ALL = 0x00000001, @@ -54,7 +63,8 @@ declare namespace bundleResourceManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_RESOURCE_INFO_WITH_LABEL = 0x00000002, @@ -63,7 +73,8 @@ declare namespace bundleResourceManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_RESOURCE_INFO_WITH_ICON = 0x00000004, @@ -73,7 +84,8 @@ declare namespace bundleResourceManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ GET_RESOURCE_INFO_WITH_SORTED_BY_LABEL = 0x00000008, @@ -82,9 +94,20 @@ declare namespace bundleResourceManager { * * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + GET_RESOURCE_INFO_WITH_DRAWABLE_DESCRIPTOR = 0x00000010, + + /** + * Used to obtain only main ability resource. + * + * @syscap SystemCapability.BundleManager.BundleFramework.Resource + * @systemapi + * @since 20 + * @arkts 1.1&1.2 */ - GET_RESOURCE_INFO_WITH_DRAWABLE_DESCRIPTOR = 0x00000010 + GET_RESOURCE_INFO_ONLY_WITH_MAIN_ABILITY = 0x00000020 } /** @@ -92,7 +115,7 @@ declare namespace bundleResourceManager { * * @permission ohos.permission.GET_BUNDLE_RESOURCES * @param { string } bundleName - Indicates the bundle name of the application. - * @param { number } resourceFlags - Indicates the flag used to specify information contained in the BundleResourceInfo object that will be returned. + * @param { number } resourceFlags {@link ResourceFlag} - Indicates the flag used to specify information contained in the BundleResourceInfo object that will be returned. * @returns { BundleResourceInfo } Returns the BundleResourceInfo object. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -109,8 +132,8 @@ declare namespace bundleResourceManager { * * @permission ohos.permission.GET_BUNDLE_RESOURCES * @param { string } bundleName - Indicates the bundle name of the application. - * @param { number } [resourceFlags] - Indicates the flag used to specify information contained in the BundleResourceInfo object that will be returned. - * @param { number } [appIndex] - Indicates the index of the bundle. + * @param { number } [resourceFlags] {@link ResourceFlag} - Indicates the flag used to specify information contained in the BundleResourceInfo object that will be returned. + * @param { number } [appIndex] - Indicates the index of the bundle,The default value is 0. * @returns { BundleResourceInfo } Returns the BundleResourceInfo object. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -119,7 +142,8 @@ declare namespace bundleResourceManager { * @throws { BusinessError } 17700061 - AppIndex not in valid range or not found. * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function getBundleResourceInfo(bundleName: string, resourceFlags?: number, appIndex?: number): BundleResourceInfo; @@ -128,7 +152,7 @@ declare namespace bundleResourceManager { * * @permission ohos.permission.GET_BUNDLE_RESOURCES * @param { string } bundleName - Indicates the bundle name of the application. - * @param { number } resourceFlags - Indicates the flag used to specify information contained in the LauncherAbilityResourceInfo object that will be returned. + * @param { number } resourceFlags {@link ResourceFlag} - Indicates the flag used to specify information contained in the LauncherAbilityResourceInfo object that will be returned. * @returns { Array<LauncherAbilityResourceInfo> } Returns a list of LauncherAbilityResourceInfo objects. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -145,9 +169,9 @@ declare namespace bundleResourceManager { * * @permission ohos.permission.GET_BUNDLE_RESOURCES * @param { string } bundleName - Indicates the bundle name of the application. - * @param { number } [resourceFlags] - Indicates the flag used to specify information + * @param { number } [resourceFlags] {@link ResourceFlag} - Indicates the flag used to specify information * <br>contained in the LauncherAbilityResourceInfo object that will be returned. - * @param { number } [appIndex] - Indicates the index of the bundle. + * @param { number } [appIndex] - Indicates the index of the bundle,The default value is 0. * @returns { Array<LauncherAbilityResourceInfo> } Returns a list of LauncherAbilityResourceInfo objects. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -164,7 +188,7 @@ declare namespace bundleResourceManager { * Obtains BundleResourceInfo of all bundles available in the system. * * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST and ohos.permission.GET_BUNDLE_RESOURCES - * @param { number } resourceFlags - Indicates the flag used to specify information contained in the BundleResourceInfo that will be returned. + * @param { number } resourceFlags {@link ResourceFlag} - Indicates the flag used to specify information contained in the BundleResourceInfo that will be returned. * @param { AsyncCallback<Array<BundleResourceInfo>> } callback - The callback of getting a list of BundleResourceInfo objects. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -179,7 +203,7 @@ declare namespace bundleResourceManager { * Obtains BundleResourceInfo of all bundles available in the system. * * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST and ohos.permission.GET_BUNDLE_RESOURCES - * @param { number } resourceFlags - Indicates the flag used to specify information contained in the BundleResourceInfo that will be returned. + * @param { number } resourceFlags {@link ResourceFlag} - Indicates the flag used to specify information contained in the BundleResourceInfo that will be returned. * @returns { Promise<Array<BundleResourceInfo>> } Returns a list of BundleResourceInfo objects. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -194,7 +218,7 @@ declare namespace bundleResourceManager { * Obtains LauncherAbilityResourceInfo of all launcher abilities available in the system. * * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST and ohos.permission.GET_BUNDLE_RESOURCES - * @param { number } resourceFlags - Indicates the flag used to specify information contained in the LauncherAbilityResourceInfo that will be returned. + * @param { number } resourceFlags {@link ResourceFlag} - Indicates the flag used to specify information contained in the LauncherAbilityResourceInfo that will be returned. * @param { AsyncCallback<Array<LauncherAbilityResourceInfo>> } callback - The callback of getting a list of LauncherAbilityResourceInfo objects. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -209,7 +233,7 @@ declare namespace bundleResourceManager { * Obtains LauncherAbilityResourceInfo of all launcher abilities available in the system. * * @permission ohos.permission.GET_INSTALLED_BUNDLE_LIST and ohos.permission.GET_BUNDLE_RESOURCES - * @param { number } resourceFlags - Indicates the flag used to specify information contained in the LauncherAbilityResourceInfo that will be returned. + * @param { number } resourceFlags {@link ResourceFlag} - Indicates the flag used to specify information contained in the LauncherAbilityResourceInfo that will be returned. * @returns { Promise<Array<LauncherAbilityResourceInfo>> } Returns a list of LauncherAbilityResourceInfo objects. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -220,13 +244,35 @@ declare namespace bundleResourceManager { */ function getAllLauncherAbilityResourceInfo(resourceFlags: number): Promise<Array<LauncherAbilityResourceInfo>>; + /** + * Obtains the abilityResourceInfo of a specified bundle. + * + * @permission ohos.permission.GET_BUNDLE_RESOURCES + * @param { string } bundleName - Indicates the bundle name of the application. + * @param { bundleManager.ExtensionAbilityType } extensionAbilityType - Indicates ExtensionAbilityType. + * <br>Currently only supported ExtensionAbilityType::INPUTMETHOD,ExtensionAbilityType::SHARE,ExtensionAbilityType::ACTION. + * @param { number } resourceFlags - Indicates the flag used to specify information. + * <br>Contained in the ExtensionAbilityResourceInfo object that will be returned. + * @param { number } [appIndex] - Indicates the index of the bundle. + * @returns { Array<LauncherAbilityResourceInfo> } Returns a list of LauncherAbilityResourceInfo objects. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Permission denied, non-system app called system api. + * @throws { BusinessError } 17700001 - The specified bundleName is not found. + * @throws { BusinessError } 17700061 - AppIndex not in valid range or not found. + * @syscap SystemCapability.BundleManager.BundleFramework.Resource + * @systemapi + * @since 20 + */ + function getExtensionAbilityResourceInfo(bundleName: string, extensionAbilityType: bundleManager.ExtensionAbilityType, resourceFlags: number, appIndex?: number): Array<LauncherAbilityResourceInfo>; + /** * Obtains resource info of a bundle. * * @typedef { _BundleResourceInfo } * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export type BundleResourceInfo = _BundleResourceInfo; diff --git a/api/@ohos.bundle.freeInstall.d.ts b/api/@ohos.bundle.freeInstall.d.ts index e445c411bf513945638bad1495b067c24e550d43..1a2aae8686d3ed7fd5d7621b03e5b783f7862dce 100644 --- a/api/@ohos.bundle.freeInstall.d.ts +++ b/api/@ohos.bundle.freeInstall.d.ts @@ -68,6 +68,7 @@ declare namespace freeInstall { /** * Used to query the enumeration value of bundlePackInfo. + * Multiple value input, such as GET_PACKAGES | GET_BUNDLE_SUMMARY. * * @enum { number } * @syscap SystemCapability.BundleManager.BundleFramework diff --git a/api/@ohos.bundle.installer.d.ts b/api/@ohos.bundle.installer.d.ts index b207ecf41b0ef38570a5a413fd70d192c79139a1..5760badbf2e3f826d38f43df353a79ab350ddcd6 100644 --- a/api/@ohos.bundle.installer.d.ts +++ b/api/@ohos.bundle.installer.d.ts @@ -227,7 +227,7 @@ declare namespace installer { * @systemapi * @since 12 */ - /** + /** * Install HAPs for an application. * To install a non-enterprise application, you must have the permission ohos.permission.INSTALL_BUNDLE. * To install an enterprise application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_BUNDLE. @@ -272,6 +272,52 @@ declare namespace installer { * @systemapi * @since 13 */ + /** + * Install HAPs for an application. + * To install a non-enterprise application, you must have the permission ohos.permission.INSTALL_BUNDLE. + * To install an enterprise application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_BUNDLE. + * To install an enterprise administrator application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE. + * To install an enterprise normal application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE. + * To install an internal beta application, you must have the permission ohos.permission.INSTALL_INTERNALTESTING_BUNDLE. + * + * @permission ohos.permission.INSTALL_BUNDLE or ohos.permission.INSTALL_ENTERPRISE_BUNDLE or ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE or ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE + * @param { Array<string> } hapFilePaths - Indicates the path where the HAP of the application is stored. + * @param { InstallParam } installParam - Indicates other parameters required for the installation. + * @param { AsyncCallback<void> } callback - The callback of installing HAPs result. + * @throws { BusinessError } 201 - Calling interface without permission 'ohos.permission.INSTALL_BUNDLE' or 'ohos.permission.INSTALL_ENTERPRISE_BUNDLE' or + * 'ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE' or 'ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE'. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter hapFiles is needed for code signature; 4. The size of specifiedDistributionType is greater than 128; 5. The size of additionalInfo is greater than 3000. + * @throws { BusinessError } 17700004 - The specified user ID is not found. + * @throws { BusinessError } 17700010 - Failed to install the HAP because the HAP fails to be parsed. + * @throws { BusinessError } 17700011 - Failed to install the HAP because the HAP signature fails to be verified. + * @throws { BusinessError } 17700012 - Failed to install the HAP because the HAP path is invalid or the HAP is too large. + * @throws { BusinessError } 17700015 - Failed to install the HAPs because they have different configuration information. + * @throws { BusinessError } 17700016 - Failed to install the HAP because of insufficient system disk space. + * @throws { BusinessError } 17700017 - Failed to install the HAP since the version of the HAP to install is too early. + * @throws { BusinessError } 17700018 - Failed to install because the dependent module does not exist. + * @throws { BusinessError } 17700031 - Failed to install the HAP because the overlay check of the HAP is failed. + * @throws { BusinessError } 17700036 - Failed to install the HSP because lacks appropriate permissions. + * @throws { BusinessError } 17700039 - Failed to install because disallow install a shared bundle by hapFilePaths. + * @throws { BusinessError } 17700041 - Failed to install because enterprise device management disallow install. + * @throws { BusinessError } 17700042 - Failed to install the HAP because of incorrect URI in the data proxy. + * @throws { BusinessError } 17700043 - Failed to install the HAP because of low APL in the non-system data proxy + * (required APL: system_basic or system_core). + * @throws { BusinessError } 17700044 - Failed to install the HAP because the isolationMode configured is not supported. + * @throws { BusinessError } 17700047 - Failed to install the HAP because the VersionCode to be updated is not greater than the current VersionCode. + * @throws { BusinessError } 17700048 - Failed to install the HAP because the code signature verification is failed. + * @throws { BusinessError } 17700050 - Failed to install the HAP because enterprise normal/MDM bundle cannot be installed on non-enterprise device. + * @throws { BusinessError } 17700052 - Failed to install the HAP because debug bundle cannot be installed under non-developer mode. + * @throws { BusinessError } 17700054 - Failed to install the HAP because the HAP requests wrong permissions. + * @throws { BusinessError } 17700058 - Failed to install the HAP because the device has been controlled. + * @throws { BusinessError } 17700066 - Failed to install the HAP because installing the native package failed. + * @throws { BusinessError } 17700073 - Failed to install the HAP because an application with the same + * <br>bundle name but different signature information exists on the device. + * @throws { BusinessError } 17700077 - Failed to install the HAP and restore to preinstalled bundle. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 17 + */ /** * Install HAPs for an application. * To install a non-enterprise application, you must have the permission ohos.permission.INSTALL_BUNDLE. @@ -424,7 +470,7 @@ declare namespace installer { * @systemapi * @since 11 */ - /** + /** * Install HAPs for an application. * To install a non-enterprise application, you must have the permission ohos.permission.INSTALL_BUNDLE. * To install an enterprise application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_BUNDLE. @@ -507,6 +553,50 @@ declare namespace installer { * @systemapi * @since 13 */ + /** + * Install HAPs for an application. + * To install a non-enterprise application, you must have the permission ohos.permission.INSTALL_BUNDLE. + * To install an enterprise application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_BUNDLE. + * To install an enterprise administrator application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE. + * To install an enterprise normal application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE. + * To install an internal beta application, you must have the permission ohos.permission.INSTALL_INTERNALTESTING_BUNDLE. + * + * @permission ohos.permission.INSTALL_BUNDLE or ohos.permission.INSTALL_ENTERPRISE_BUNDLE or ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE or ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE + * @param { Array<string> } hapFilePaths - Indicates the path where the HAP of the application is stored. + * @param { AsyncCallback<void> } callback - The callback of installing HAPs result. + * @throws { BusinessError } 201 - Calling interface without permission 'ohos.permission.INSTALL_BUNDLE' or 'ohos.permission.INSTALL_ENTERPRISE_BUNDLE' or + * 'ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE' or 'ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE'. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. + * @throws { BusinessError } 17700010 - Failed to install the HAP because the HAP fails to be parsed. + * @throws { BusinessError } 17700011 - Failed to install the HAP because the HAP signature fails to be verified. + * @throws { BusinessError } 17700012 - Failed to install the HAP because the HAP path is invalid or the HAP is too large. + * @throws { BusinessError } 17700015 - Failed to install the HAPs because they have different configuration information. + * @throws { BusinessError } 17700016 - Failed to install the HAP because of insufficient system disk space. + * @throws { BusinessError } 17700017 - Failed to install the HAP since the version of the HAP to install is too early. + * @throws { BusinessError } 17700018 - Failed to install because the dependent module does not exist. + * @throws { BusinessError } 17700031 - Failed to install the HAP because the overlay check of the HAP is failed. + * @throws { BusinessError } 17700036 - Failed to install the HSP because lacks appropriate permissions. + * @throws { BusinessError } 17700039 - Failed to install because disallow install a shared bundle by hapFilePaths. + * @throws { BusinessError } 17700041 - Failed to install because enterprise device management disallow install. + * @throws { BusinessError } 17700042 - Failed to install the HAP because of incorrect URI in the data proxy. + * @throws { BusinessError } 17700043 - Failed to install the HAP because of low APL in the non-system data proxy + * (required APL: system_basic or system_core). + * @throws { BusinessError } 17700044 - Failed to install the HAP because the isolationMode configured is not supported. + * @throws { BusinessError } 17700047 - Failed to install the HAP because the VersionCode to be updated is not greater than the current VersionCode. + * @throws { BusinessError } 17700048 - Failed to install the HAP because the code signature verification is failed. + * @throws { BusinessError } 17700050 - Failed to install the HAP because enterprise normal/MDM bundle cannot be installed on non-enterprise device. + * @throws { BusinessError } 17700052 - Failed to install the HAP because debug bundle cannot be installed under non-developer mode. + * @throws { BusinessError } 17700054 - Failed to install the HAP because the HAP requests wrong permissions. + * @throws { BusinessError } 17700058 - Failed to install the HAP because the device has been controlled. + * @throws { BusinessError } 17700066 - Failed to install the HAP because installing the native package failed. + * @throws { BusinessError } 17700073 - Failed to install the HAP because an application with the same + * <br>bundle name but different signature information exists on the device. + * @throws { BusinessError } 17700077 - Failed to install the HAP and restore to preinstalled bundle. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 17 + */ /** * Install HAPs for an application. * To install a non-enterprise application, you must have the permission ohos.permission.INSTALL_BUNDLE. @@ -754,6 +844,52 @@ declare namespace installer { * @systemapi * @since 13 */ + /** + * Install haps for an application. + * To install a non-enterprise application, you must have the permission ohos.permission.INSTALL_BUNDLE. + * To install an enterprise application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_BUNDLE. + * To install an enterprise administrator application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE. + * To install an enterprise normal application, you must have the permission ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE. + * To install an internal beta application, you must have the permission ohos.permission.INSTALL_INTERNALTESTING_BUNDLE. + * + * @permission ohos.permission.INSTALL_BUNDLE or ohos.permission.INSTALL_ENTERPRISE_BUNDLE or ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE or ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE + * @param { Array<string> } hapFilePaths - Indicates the path where the HAP of the application is stored. + * @param { InstallParam } [installParam] - Indicates other parameters required for the installation. + * @returns { Promise<void> } + * @throws { BusinessError } 201 - Calling interface without permission 'ohos.permission.INSTALL_BUNDLE' or 'ohos.permission.INSTALL_ENTERPRISE_BUNDLE' or + * 'ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE' or 'ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE'. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter hapFiles is needed for code signature; 4. The size of specifiedDistributionType is greater than 128; 5. The size of additionalInfo is greater than 3000. + * @throws { BusinessError } 17700004 - The specified user ID is not found. + * @throws { BusinessError } 17700010 - Failed to install the HAP because the HAP fails to be parsed. + * @throws { BusinessError } 17700011 - Failed to install the HAP because the HAP signature fails to be verified. + * @throws { BusinessError } 17700012 - Failed to install the HAP because the HAP path is invalid or the HAP is too large. + * @throws { BusinessError } 17700015 - Failed to install the HAPs because they have different configuration information. + * @throws { BusinessError } 17700016 - Failed to install the HAP because of insufficient system disk space. + * @throws { BusinessError } 17700017 - Failed to install the HAP since the version of the HAP to install is too early. + * @throws { BusinessError } 17700018 - Failed to install because the dependent module does not exist. + * @throws { BusinessError } 17700031 - Failed to install the HAP because the overlay check of the HAP is failed. + * @throws { BusinessError } 17700036 - Failed to install the HSP because lacks appropriate permissions. + * @throws { BusinessError } 17700039 - Failed to install because disallow install a shared bundle by hapFilePaths. + * @throws { BusinessError } 17700041 - Failed to install because enterprise device management disallow install. + * @throws { BusinessError } 17700042 - Failed to install the HAP because of incorrect URI in the data proxy. + * @throws { BusinessError } 17700043 - Failed to install the HAP because of low APL in the non-system data proxy + * (required APL: system_basic or system_core). + * @throws { BusinessError } 17700044 - Failed to install the HAP because the isolationMode configured is not supported. + * @throws { BusinessError } 17700047 - Failed to install the HAP because the VersionCode to be updated is not greater than the current VersionCode. + * @throws { BusinessError } 17700048 - Failed to install the HAP because the code signature verification is failed. + * @throws { BusinessError } 17700050 - Failed to install the HAP because enterprise normal/MDM bundle cannot be installed on non-enterprise device. + * @throws { BusinessError } 17700052 - Failed to install the HAP because debug bundle cannot be installed under non-developer mode. + * @throws { BusinessError } 17700054 - Failed to install the HAP because the HAP requests wrong permissions. + * @throws { BusinessError } 17700058 - Failed to install the HAP because the device has been controlled. + * @throws { BusinessError } 17700066 - Failed to install the HAP because installing the native package failed. + * @throws { BusinessError } 17700073 - Failed to install the HAP because an application with the same + * <br>bundle name but different signature information exists on the device. + * @throws { BusinessError } 17700077 - Failed to install the HAP and restore to preinstalled bundle. + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 17 + */ /** * Install haps for an application. * To install a non-enterprise application, you must have the permission ohos.permission.INSTALL_BUNDLE. @@ -962,7 +1098,7 @@ declare namespace installer { * @systemapi * @since 9 */ - /** + /** * Uninstall an application. * * @permission ohos.permission.INSTALL_BUNDLE or ohos.permission.UNINSTALL_BUNDLE @@ -1527,7 +1663,7 @@ declare namespace installer { * @systemapi * @since 12 */ - createAppClone(bundleName: string, createAppCloneParam?: CreateAppCloneParam): Promise<number>; + createAppClone(bundleName: string, createAppCloneParam?: CreateAppCloneParam): Promise<number>; /** * Destroy clone instance for an application. @@ -1547,7 +1683,7 @@ declare namespace installer { * @systemapi * @since 12 */ - destroyAppClone(bundleName: string, appIndex: number, userId?: number): Promise<void>; + destroyAppClone(bundleName: string, appIndex: number, userId?: number): Promise<void>; /** * Destroy clone instance for an application. @@ -1568,7 +1704,7 @@ declare namespace installer { * @systemapi * @since 15 */ - destroyAppClone(bundleName: string, appIndex: number, destroyAppCloneParam?: DestroyAppCloneParam): Promise<void>; + destroyAppClone(bundleName: string, appIndex: number, destroyAppCloneParam?: DestroyAppCloneParam): Promise<void>; /** * Install application by bundle name with specified user. @@ -1606,9 +1742,9 @@ declare namespace installer { * @systemapi * @since 14 */ - installPreexistingApp(bundleName: string, userId?: number): Promise<void>; + installPreexistingApp(bundleName: string, userId?: number): Promise<void>; - /** + /** * Install plugin for host application. * * @permission ohos.permission.INSTALL_PLUGIN_BUNDLE @@ -1618,13 +1754,13 @@ declare namespace installer { * @returns { Promise<void> } * @throws { BusinessError } 201 - Calling interface without permission 'ohos.permission.INSTALL_PLUGIN_BUNDLE'. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 17700001 - The specified hostBundleName cannot be found or the bundle is not installed by the specified user. * @throws { BusinessError } 17700004 - The userId is invalid. * @throws { BusinessError } 17700010 - Failed to install the plugin because the plugin fails to be parsed. * @throws { BusinessError } 17700011 - Failed to install the plugin because the plugin signature fails to be verified. * @throws { BusinessError } 17700012 - Failed to install the plugin because the HSP path is invalid or the HSP is too large. * @throws { BusinessError } 17700015 - Failed to install the plugin because they have different configuration information. + * @throws { BusinessError } 17700016 - Failed to install the plugin because of insufficient system disk space. * @throws { BusinessError } 17700017 - Failed to install the plugin since the version of the plugin to install is too early. * @throws { BusinessError } 17700048 - Failed to install the plugin because the code signature verification is failed. * @throws { BusinessError } 17700052 - Failed to install the plugin because debug bundle cannot be installed under non-developer mode. @@ -1637,11 +1773,11 @@ declare namespace installer { * @throws { BusinessError } 17700091 - Failed to install the plugin because the plugin name is same as host bundle name. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ - installPlugin(hostBundleName: string, pluginFilePaths: Array<string>, pluginParam?: PluginParam): Promise<void>; + installPlugin(hostBundleName: string, pluginFilePaths: Array<string>, pluginParam?: PluginParam): Promise<void>; - /** + /** * Uninstall plugin for host application. * * @permission ohos.permission.UNINSTALL_PLUGIN_BUNDLE @@ -1651,15 +1787,14 @@ declare namespace installer { * @returns { Promise<void> } * @throws { BusinessError } 201 - Calling interface without permission 'ohos.permission.UNINSTALL_PLUGIN_BUNDLE'. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 17700001 - The specified bundle name is not found. * @throws { BusinessError } 17700004 - The user id is invalid. * @throws { BusinessError } 17700092 - Failed to uninstall the plugin because the specified plugin is not found. * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ - uninstallPlugin(hostBundleName: string, pluginBundleName: string, pluginParam?: PluginParam): Promise<void>; + uninstallPlugin(hostBundleName: string, pluginBundleName: string, pluginParam?: PluginParam): Promise<void>; } /** @@ -2000,7 +2135,7 @@ declare namespace installer { * @typedef PluginParam * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ export interface PluginParam { /** @@ -2009,7 +2144,7 @@ declare namespace installer { * @type { ?number } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ userId?: number; @@ -2019,7 +2154,7 @@ declare namespace installer { * @type { ?Array<Parameters> } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ parameters?: Array<Parameters>; } diff --git a/api/@ohos.bundle.launcherBundleManager.d.ts b/api/@ohos.bundle.launcherBundleManager.d.ts index 604d60397513b6ae3598546f16c68524f13e1864..fc35a7924c5c149a007173c289f884814344e2c6 100644 --- a/api/@ohos.bundle.launcherBundleManager.d.ts +++ b/api/@ohos.bundle.launcherBundleManager.d.ts @@ -18,17 +18,21 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ import { AsyncCallback } from './@ohos.base'; import { LauncherAbilityInfo as _LauncherAbilityInfo } from './bundleManager/LauncherAbilityInfo'; +import AbilityConstant from './@ohos.app.ability.AbilityConstant'; +/*** endif */ import { ShortcutInfo as _ShortcutInfo, ShortcutWant as _ShortcutWant, ParameterItem as _ParameterItem } from './bundleManager/ShortcutInfo'; -import { StartOptions } from './@ohos.app.ability.StartOptions'; +import StartOptions from './@ohos.app.ability.StartOptions'; /** * Launcher bundle manager. * * @namespace launcherBundleManager * @syscap SystemCapability.BundleManager.BundleFramework.Launcher - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace launcherBundleManager { /** @@ -78,7 +82,6 @@ declare namespace launcherBundleManager { * @param { number } userId - Indicates the id for the user. * @returns { Array<LauncherAbilityInfo> } the LauncherAbilityInfo object. * @throws { BusinessError } 201 - Verify permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not support. * @throws { BusinessError } 17700001 - The specified bundle name is not found. * @throws { BusinessError } 17700004 - The specified user ID is not found. @@ -168,7 +171,8 @@ declare namespace launcherBundleManager { * @throws { BusinessError } 17700001 - The specified bundle name is not found. * @syscap SystemCapability.BundleManager.BundleFramework.Launcher * @systemapi - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ function getShortcutInfoSync(bundleName: string): Array<ShortcutInfo>; @@ -188,7 +192,8 @@ declare namespace launcherBundleManager { * @throws { BusinessError } 17700004 - The specified user ID is not found. * @syscap SystemCapability.BundleManager.BundleFramework.Launcher * @systemapi - * @since 13 + * @since arkts {'1.1':'13', '1.2':'20'} + * @arkts 1.1&1.2 */ function getShortcutInfoSync(bundleName: string, userId: number): Array<ShortcutInfo>; @@ -206,10 +211,29 @@ declare namespace launcherBundleManager { * @throws { BusinessError } 17700065 - The specified shortcut want in shortcut info is not supported to be started. * @syscap SystemCapability.BundleManager.BundleFramework.Launcher * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function startShortcut(shortcutInfo: ShortcutInfo, options?: StartOptions): Promise<void>; + /** + * Starts shortcut with start reason. + * + * @permission ohos.permission.START_SHORTCUT and ohos.permission.SET_LAUNCH_REASON_MESSAGE + * @param { ShortcutInfo } shortcutInfo - Indicates the shortcut info which contains shortcut want. + * @param { string } startReason {@link AbilityConstant} - Indicates the start reason. + * @param { StartOptions } [options] - Indicates the start options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 201 - Verify permission denied. + * @throws { BusinessError } 202 - Permission denied, non-system app called system api. + * @throws { BusinessError } 801 - Capability not support. + * @throws { BusinessError } 17700065 - The specified shortcut want in shortcut info is not supported to be started. + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @systemapi + * @since 20 + */ + function startShortcutWithReason(shortcutInfo: ShortcutInfo, startReason: string, options?: StartOptions): Promise<void>; + /** * Contains basic launcher Ability information, which uniquely identifies an LauncherAbilityInfo. * @@ -227,6 +251,14 @@ declare namespace launcherBundleManager { * @systemapi * @since 9 */ + /** + * Provides information about a shortcut, including the shortcut ID and label. + * + * @typedef { _ShortcutInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ export type ShortcutInfo = _ShortcutInfo; /** * Obtains information about the ability that a shortcut will start. @@ -236,6 +268,14 @@ declare namespace launcherBundleManager { * @systemapi * @since 9 */ + /** + * Obtains information about the ability that a shortcut will start. + * + * @typedef { _ShortcutWant } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ export type ShortcutWant = _ShortcutWant; /** * Indicates the custom parameters in shortcut want. @@ -245,6 +285,14 @@ declare namespace launcherBundleManager { * @systemapi * @since 12 */ + /** + * Indicates the custom parameters in shortcut want. + * + * @typedef { _ParameterItem } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ export type ParameterItem = _ParameterItem; } diff --git a/api/@ohos.bundle.shortcutManager.d.ts b/api/@ohos.bundle.shortcutManager.d.ts index 7b303deb36e88c92f42354a1ac03d8d1f484746b..2f06794328bf0664500c71e2d58cc30601e37ff7 100644 --- a/api/@ohos.bundle.shortcutManager.d.ts +++ b/api/@ohos.bundle.shortcutManager.d.ts @@ -28,6 +28,14 @@ import { ShortcutInfo as _ShortcutInfo, ShortcutWant as _ShortcutWant, Parameter * @systemapi * @since 12 */ +/** + * Desktop shortcut bundle manager. + * + * @namespace shortcutManager + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ declare namespace shortcutManager { /** * Add desktop shortcut info. @@ -39,17 +47,18 @@ declare namespace shortcutManager { * @throws { BusinessError } 201 - Verify permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 17700001 - The specified bundle name is not found. + * @throws { BusinessError } 17700001 - The specified bundle name is not found. * @throws { BusinessError } 17700004 - The specified user ID is not found. * @throws { BusinessError } 17700026 - The specified bundle is disabled. * @throws { BusinessError } 17700061 - The specified app index is invalid. * @throws { BusinessError } 17700070 - The specified shortcut id is illegal. * @syscap SystemCapability.BundleManager.BundleFramework.Launcher * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function addDesktopShortcutInfo(shortcutInfo: ShortcutInfo, userId: number): Promise<void>; - + /** * Delete desktop shortcut info. * @@ -63,10 +72,11 @@ declare namespace shortcutManager { * @throws { BusinessError } 17700004 - The specified user ID is not found. * @syscap SystemCapability.BundleManager.BundleFramework.Launcher * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function deleteDesktopShortcutInfo(shortcutInfo: ShortcutInfo, userId: number): Promise<void>; - + /** * Get all desktop shortcut info. * @@ -79,10 +89,32 @@ declare namespace shortcutManager { * @throws { BusinessError } 17700004 - The specified user ID is not found. * @syscap SystemCapability.BundleManager.BundleFramework.Launcher * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function getAllDesktopShortcutInfo(userId: number): Promise<Array<ShortcutInfo>>; + /** + * Set a shortcut of current application is visible or invisible. + * + * @param { string } id - Indicates id of shortcut to set. + * @param { boolean } visible - The value true means to set the shortcut visible, otherwise set the shortcut invisible. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 17700070 - The specified shortcut id is illegal. + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + */ + function setShortcutVisibleForSelf(id: string, visible: boolean): Promise<void>; + + /** + * Obtains all shortcut info of the application. + * + * @returns { Promise<Array<ShortcutInfo>> } The LauncherShortcutInfo object. + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + */ + function getAllShortcutInfoForSelf(): Promise<Array<ShortcutInfo>>; + /** * Provides information about a shortcut, including the shortcut ID and label. * @@ -91,6 +123,14 @@ declare namespace shortcutManager { * @systemapi * @since 12 */ + /** + * Provides information about a shortcut, including the shortcut ID and label. + * + * @typedef { _ShortcutInfo } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ export type ShortcutInfo = _ShortcutInfo; /** * Obtains information about the ability that a shortcut will start. @@ -100,6 +140,14 @@ declare namespace shortcutManager { * @systemapi * @since 12 */ + /** + * Obtains information about the ability that a shortcut will start. + * + * @typedef { _ShortcutWant } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ export type ShortcutWant = _ShortcutWant; /** * Indicates the custom parameters in shortcut want. @@ -108,6 +156,14 @@ declare namespace shortcutManager { * @syscap SystemCapability.BundleManager.BundleFramework.Launcher * @systemapi * @since 12 + */ + /** + * Indicates the custom parameters in shortcut want. + * + * @typedef { _ParameterItem } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 */ export type ParameterItem = _ParameterItem; } diff --git a/api/@ohos.commonEventManager.d.ts b/api/@ohos.commonEventManager.d.ts index 4cf9fe240196ce66490278206ff7bd1ac53204ab..69d528fb9bbd6828d13a0ce036ea07e772cd0e2b 100644 --- a/api/@ohos.commonEventManager.d.ts +++ b/api/@ohos.commonEventManager.d.ts @@ -18,37 +18,37 @@ * @kit BasicServicesKit */ -import { AsyncCallback } from './@ohos.base'; +import { AsyncCallback, Callback } from './@ohos.base'; import { CommonEventData as _CommonEventData } from './commonEvent/commonEventData'; import { CommonEventSubscriber as _CommonEventSubscriber } from './commonEvent/commonEventSubscriber'; import { CommonEventSubscribeInfo as _CommonEventSubscribeInfo } from './commonEvent/commonEventSubscribeInfo'; import { CommonEventPublishData as _CommonEventPublishData } from './commonEvent/commonEventPublishData'; /** - * Common event definition + * The CommonEventManager module provides common event capabilities, including the capabilities to publish, subscribe to, and unsubscribe from common events. * * @namespace commonEventManager * @syscap SystemCapability.Notification.CommonEvent * @since 9 */ /** - * Common event definition + * The CommonEventManager module provides common event capabilities, including the capabilities to publish, subscribe to, and unsubscribe from common events. * * @namespace commonEventManager * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace commonEventManager { /** - * Publishes an ordered, sticky, or standard common event. + * Publishes a common event. This API uses an asynchronous callback to return the result. * - * @param { string } event - name of the common event. - * @param { AsyncCallback<void> } callback - The callback of publish. + * @param { string } event - Name of the common event to publish. For details, see System Common Events. + * @param { AsyncCallback<void> } callback - Callback to execute after the event is published. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 1500004 - A third-party application cannot send system common events. * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. * @throws { BusinessError } 1500008 - Failed to initialize the common event service. * @throws { BusinessError } 1500009 - Failed to obtain system parameters. @@ -56,13 +56,12 @@ declare namespace commonEventManager { * @since 9 */ /** - * Publishes an ordered, sticky, or standard common event. + * Publishes a common event. This API uses an asynchronous callback to return the result. * - * @param { string } event - name of the common event. - * @param { AsyncCallback<void> } callback - The callback of publish. + * @param { string } event - Name of the common event to publish. For details, see System Common Events. + * @param { AsyncCallback<void> } callback - Callback to execute after the event is published. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 1500004 - A third-party application cannot send system common events. * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. * @throws { BusinessError } 1500008 - Failed to initialize the common event service. * @throws { BusinessError } 1500009 - Failed to obtain system parameters. @@ -71,13 +70,12 @@ declare namespace commonEventManager { * @since 11 */ /** - * Publishes an ordered, sticky, or standard common event. + * Publishes a common event. This API uses an asynchronous callback to return the result. * - * @param { string } event - name of the common event. - * @param { AsyncCallback<void> } callback - The callback of publish. + * @param { string } event - Name of the common event to publish. For details, see System Common Events. + * @param { AsyncCallback<void> } callback - Callback to execute after the event is published. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 1500004 - A third-party application cannot send system common events. * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. * @throws { BusinessError } 1500008 - Failed to initialize the common event service. * @throws { BusinessError } 1500009 - Failed to obtain system parameters. @@ -86,18 +84,31 @@ declare namespace commonEventManager { * @atomicservice * @since 12 */ + /** + * Publishes a common event. This API uses an asynchronous callback to return the result. + * + * @param { string } event - Name of the common event to publish. For details, see System Common Events. + * @param { AsyncCallback<void> } callback - Callback to execute after the event is published. + * @throws { BusinessError } 1500003 - The common event sending frequency too high. + * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. + * @throws { BusinessError } 1500008 - Failed to initialize the common event service. + * @throws { BusinessError } 1500009 - Failed to obtain system parameters. + * @syscap SystemCapability.Notification.CommonEvent + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ function publish(event: string, callback: AsyncCallback<void>): void; /** - * Publishes an ordered, sticky, or standard common event. + * Publishes a common event. This API uses an asynchronous callback to return the result. * - * @param { string } event - name of the common event. - * @param { CommonEventPublishData } options - Indicate the CommonEventPublishData containing the common event - * content and attributes. - * @param { AsyncCallback<void> } callback - The callback of publish. + * @param { string } event - Name of the common event to publish. For details, see System Common Events. + * @param { CommonEventPublishData } options - Attributes of the common event to publish. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 1500004 - A third-party application cannot send system common events. * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. * @throws { BusinessError } 1500008 - Failed to initialize the common event service. * @throws { BusinessError } 1500009 - Failed to obtain system parameters. @@ -105,15 +116,13 @@ declare namespace commonEventManager { * @since 9 */ /** - * Publishes an ordered, sticky, or standard common event. + * Publishes a common event. This API uses an asynchronous callback to return the result. * - * @param { string } event - name of the common event. - * @param { CommonEventPublishData } options - Indicate the CommonEventPublishData containing the common event - * content and attributes. - * @param { AsyncCallback<void> } callback - The callback of publish. + * @param { string } event - Name of the common event to publish. For details, see System Common Events. + * @param { CommonEventPublishData } options - Attributes of the common event to publish. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 1500004 - A third-party application cannot send system common events. * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. * @throws { BusinessError } 1500008 - Failed to initialize the common event service. * @throws { BusinessError } 1500009 - Failed to obtain system parameters. @@ -122,15 +131,13 @@ declare namespace commonEventManager { * @since 11 */ /** - * Publishes an ordered, sticky, or standard common event. + * Publishes a common event. This API uses an asynchronous callback to return the result. * - * @param { string } event - name of the common event. - * @param { CommonEventPublishData } options - Indicate the CommonEventPublishData containing the common event - * content and attributes. - * @param { AsyncCallback<void> } callback - The callback of publish. + * @param { string } event - Name of the common event to publish. For details, see System Common Events. + * @param { CommonEventPublishData } options - Attributes of the common event to publish. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 1500004 - A third-party application cannot send system common events. * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. * @throws { BusinessError } 1500008 - Failed to initialize the common event service. * @throws { BusinessError } 1500009 - Failed to obtain system parameters. @@ -139,6 +146,22 @@ declare namespace commonEventManager { * @atomicservice * @since 12 */ + /** + * Publishes a common event. This API uses an asynchronous callback to return the result. + * + * @param { string } event - Name of the common event to publish. For details, see System Common Events. + * @param { CommonEventPublishData } options - Attributes of the common event to publish. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 1500003 - The common event sending frequency too high. + * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. + * @throws { BusinessError } 1500008 - Failed to initialize the common event service. + * @throws { BusinessError } 1500009 - Failed to obtain system parameters. + * @syscap SystemCapability.Notification.CommonEvent + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ function publish(event: string, options: CommonEventPublishData, callback: AsyncCallback<void>): void; /** @@ -150,7 +173,6 @@ declare namespace commonEventManager { * @throws { BusinessError } 202 - not system app * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 1500004 - A third-party application cannot send system common events. * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. * @throws { BusinessError } 1500008 - Failed to initialize the common event service. * @throws { BusinessError } 1500009 - Failed to obtain system parameters. @@ -158,6 +180,21 @@ declare namespace commonEventManager { * @systemapi * @since 9 */ + /** + * Publishes an ordered, sticky, or standard common event to a specified user. + * + * @param { string } event - Specified the names of the common events. + * @param { number } userId - Specified the user to receive the common events. + * @param { AsyncCallback<void> } callback - The callback of publishAsUser. + * @throws { BusinessError } 202 - not system app + * @throws { BusinessError } 1500003 - The common event sending frequency too high. + * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. + * @throws { BusinessError } 1500008 - Failed to initialize the common event service. + * @throws { BusinessError } 1500009 - Failed to obtain system parameters. + * @syscap SystemCapability.Notification.CommonEvent + * @systemapi + * @since 20 + */ function publishAsUser(event: string, userId: number, callback: AsyncCallback<void>): void; /** @@ -171,13 +208,29 @@ declare namespace commonEventManager { * @throws { BusinessError } 202 - not system app * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 1500004 - A third-party application cannot send system common events. * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. * @throws { BusinessError } 1500008 - Failed to initialize the common event service. * @throws { BusinessError } 1500009 - Failed to obtain system parameters. * @syscap SystemCapability.Notification.CommonEvent * @systemapi * @since 9 + */ + /** + * Publishes an ordered, sticky, or standard common event to a specified user. + * + * @param { string } event - Specified the names of the common events. + * @param { number } userId - Specified the user to receive the common events. + * @param { CommonEventPublishData } options - Indicates the CommonEventPublishData containing the common event + * content and attributes. + * @param { AsyncCallback<void> } callback - The callback of publishAsUser. + * @throws { BusinessError } 202 - not system app + * @throws { BusinessError } 1500003 - The common event sending frequency too high. + * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. + * @throws { BusinessError } 1500008 - Failed to initialize the common event service. + * @throws { BusinessError } 1500009 - Failed to obtain system parameters. + * @syscap SystemCapability.Notification.CommonEvent + * @systemapi + * @since 20 */ function publishAsUser( event: string, @@ -187,28 +240,27 @@ declare namespace commonEventManager { ): void; /** - * Creates a CommonEventSubscriber for the SubscriberInfo. + * Creates a subscriber. This API uses an asynchronous callback to return the result. * - * @param { CommonEventSubscribeInfo } subscribeInfo - Indicates the information of the subscriber. - * @param { AsyncCallback<CommonEventSubscriber> } callback - The callback is used to return the - * CommonEventSubscriber object. + * @param { CommonEventSubscribeInfo } subscribeInfo - Subscriber information. + * @param { AsyncCallback<CommonEventSubscriber> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 9 */ /** - * Creates a CommonEventSubscriber for the SubscriberInfo. + * Creates a subscriber. This API uses an asynchronous callback to return the result. * - * @param { CommonEventSubscribeInfo } subscribeInfo - Indicates the information of the subscriber. - * @param { AsyncCallback<CommonEventSubscriber> } callback - The callback is used to return the - * CommonEventSubscriber object. + * @param { CommonEventSubscribeInfo } subscribeInfo - Subscriber information. + * @param { AsyncCallback<CommonEventSubscriber> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function createSubscriber( subscribeInfo: CommonEventSubscribeInfo, @@ -216,57 +268,59 @@ declare namespace commonEventManager { ): void; /** - * Creates a CommonEventSubscriber for the SubscriberInfo. + * Creates a subscriber. This API uses a promise to return the result. * - * @param { CommonEventSubscribeInfo } subscribeInfo - Indicates the information of the subscriber. - * @returns { Promise<CommonEventSubscriber> } Returns the CommonEventSubscriber object. + * @param { CommonEventSubscribeInfo } subscribeInfo - Subscriber information. + * @returns { Promise<CommonEventSubscriber> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 9 */ /** - * Creates a CommonEventSubscriber for the SubscriberInfo. + * Creates a subscriber. This API uses a promise to return the result. * - * @param { CommonEventSubscribeInfo } subscribeInfo - Indicates the information of the subscriber. - * @returns { Promise<CommonEventSubscriber> } Returns the CommonEventSubscriber object. + * @param { CommonEventSubscribeInfo } subscribeInfo - Subscriber information. + * @returns { Promise<CommonEventSubscriber> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function createSubscriber(subscribeInfo: CommonEventSubscribeInfo): Promise<CommonEventSubscriber>; /** - * Creates a CommonEventSubscriber for the SubscriberInfo. + * Creates a subscriber. The API returns the result synchronously. * - * @param { CommonEventSubscribeInfo } subscribeInfo - Indicates the information of the subscriber. - * @returns { CommonEventSubscriber } Returns the CommonEventSubscriber object. + * @param { CommonEventSubscribeInfo } subscribeInfo - Subscriber information. + * @returns { CommonEventSubscriber } Promise used to return the subscriber object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 10 */ /** - * Creates a CommonEventSubscriber for the SubscriberInfo. + * Creates a subscriber. The API returns the result synchronously. * - * @param { CommonEventSubscribeInfo } subscribeInfo - Indicates the information of the subscriber. - * @returns { CommonEventSubscriber } Returns the CommonEventSubscriber object. + * @param { CommonEventSubscribeInfo } subscribeInfo - Subscriber information. + * @returns { CommonEventSubscriber } Promise used to return the subscriber object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function createSubscriberSync(subscribeInfo: CommonEventSubscribeInfo): CommonEventSubscriber; /** - * Subscribe an ordered, sticky, or standard common event. + * Subscribes to a common event. This API uses an asynchronous callback to return the result. * - * @param { CommonEventSubscriber } subscriber - Indicate the subscriber of the common event. - * @param { AsyncCallback<CommonEventData> } callback - The callback is used to return the CommonEventData object. + * @param { CommonEventSubscriber } subscriber - Subscriber object. + * @param { AsyncCallback<CommonEventData> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - capability not supported @@ -276,10 +330,10 @@ declare namespace commonEventManager { * @since 9 */ /** - * Subscribe an ordered, sticky, or standard common event. + * Subscribes to a common event. This API uses an asynchronous callback to return the result. * - * @param { CommonEventSubscriber } subscriber - Indicate the subscriber of the common event. - * @param { AsyncCallback<CommonEventData> } callback - The callback is used to return the CommonEventData object. + * @param { CommonEventSubscriber } subscriber - Subscriber object. + * @param { AsyncCallback<CommonEventData> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - capability not supported @@ -290,13 +344,46 @@ declare namespace commonEventManager { * @atomicservice * @since 11 */ + /** + * Subscribes to a common event. This API uses an asynchronous callback to return the result. + * + * @param { CommonEventSubscriber } subscriber - Subscriber object. + * @param { AsyncCallback<CommonEventData> } callback - Callback used to return the result. + * @throws { BusinessError } 801 - capability not supported + * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. + * @throws { BusinessError } 1500008 - Failed to initialize the common event service. + * @throws { BusinessError } 1500010 - The count of subscriber exceed system specification. + * @syscap SystemCapability.Notification.CommonEvent + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ function subscribe(subscriber: CommonEventSubscriber, callback: AsyncCallback<CommonEventData>): void; /** - * Unsubscribe from an ordered, sticky, or standard common event. + * Subscribes to a common event, and returns the result by promise that resolves with a success or + * <br> rejects with a failure code. * * @param { CommonEventSubscriber } subscriber - Indicate the subscriber of the common event. - * @param { AsyncCallback<void> } [callback] - The callback of unsubscribe. + * @param { Callback<CommonEventData> } callback - The callback function used to receive the CommonEventData object. + * @returns { Promise<void> } A promise that indicates whether the subscription was successful. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 1500007 - Failed to send the message to the common event service. + * @throws { BusinessError } 1500008 - Failed to initialize the common event service. + * @throws { BusinessError } 1500010 - The count of subscriber exceed system specification. + * @syscap SystemCapability.Notification.CommonEvent + * @crossplatform + * @atomicservice + * @since 20 + */ + function subscribeToEvent(subscriber: CommonEventSubscriber, callback: Callback<CommonEventData>): Promise<void>; + + /** + * Unsubscribes from a common event. This API uses an asynchronous callback to return the result. + * + * @param { CommonEventSubscriber } subscriber - Subscriber object. + * @param { AsyncCallback<void> } [callback] - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - capability not supported @@ -306,10 +393,10 @@ declare namespace commonEventManager { * @since 9 */ /** - * Unsubscribe from an ordered, sticky, or standard common event. + * Unsubscribes from a common event. This API uses an asynchronous callback to return the result. * - * @param { CommonEventSubscriber } subscriber - Indicate the subscriber of the common event. - * @param { AsyncCallback<void> } [callback] - The callback of unsubscribe. + * @param { CommonEventSubscriber } subscriber - Subscriber object. + * @param { AsyncCallback<void> } [callback] - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - capability not supported @@ -318,7 +405,8 @@ declare namespace commonEventManager { * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function unsubscribe(subscriber: CommonEventSubscriber, callback?: AsyncCallback<void>): void; @@ -425,7 +513,8 @@ declare namespace commonEventManager { * @enum { string } * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum Support { /** @@ -497,7 +586,8 @@ declare namespace commonEventManager { * This commonEvent means when the screen is turned off. * * @syscap SystemCapability.Notification.CommonEvent - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMON_EVENT_SCREEN_OFF = 'usual.event.SCREEN_OFF', @@ -505,7 +595,8 @@ declare namespace commonEventManager { * This commonEvent means when the device is awakened and interactive. * * @syscap SystemCapability.Notification.CommonEvent - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMON_EVENT_SCREEN_ON = 'usual.event.SCREEN_ON', @@ -570,7 +661,8 @@ declare namespace commonEventManager { * This commonEvent means when the time is set. * * @syscap SystemCapability.Notification.CommonEvent - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMON_EVENT_TIME_CHANGED = 'usual.event.TIME_CHANGED', @@ -586,7 +678,8 @@ declare namespace commonEventManager { * This commonEvent means when the time zone is changed. * * @syscap SystemCapability.Notification.CommonEvent - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMON_EVENT_TIMEZONE_CHANGED = 'usual.event.TIMEZONE_CHANGED', @@ -859,6 +952,26 @@ declare namespace commonEventManager { */ COMMON_EVENT_USER_UNLOCKED = 'usual.event.USER_UNLOCKED', + /** + * Indicates the target user (i.e the OS account) is going to be locked. + * This is a protected common event that can only be sent by system. + * + * @syscap SystemCapability.Notification.CommonEvent + * @systemapi + * @since 20 + */ + COMMON_EVENT_USER_LOCKING = 'usual.event.USER_LOCKING', + + /** + * Indicates the target user (i.e the OS acount) is locked. + * This is a protected common event that can only be sent by system. + * + * @syscap SystemCapability.Notification.CommonEvent + * @systemapi + * @since 20 + */ + COMMON_EVENT_USER_LOCKED = 'usual.event.USER_LOCKED', + /** * Remind new user of that the service has been stopping. * @@ -887,7 +1000,8 @@ declare namespace commonEventManager { * * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMON_EVENT_DISTRIBUTED_ACCOUNT_LOGIN = 'common.event.DISTRIBUTED_ACCOUNT_LOGIN', @@ -902,7 +1016,8 @@ declare namespace commonEventManager { * * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMON_EVENT_DISTRIBUTED_ACCOUNT_LOGOUT = 'common.event.DISTRIBUTED_ACCOUNT_LOGOUT', @@ -1829,7 +1944,8 @@ declare namespace commonEventManager { * This common event can be triggered only by system. * * @syscap SystemCapability.Notification.CommonEvent - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMON_EVENT_USER_INFO_UPDATED = 'usual.event.USER_INFO_UPDATED', @@ -1838,7 +1954,8 @@ declare namespace commonEventManager { * This is a protected common event that can only be sent by system. * * @syscap SystemCapability.Notification.CommonEvent - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMON_EVENT_HTTP_PROXY_CHANGE = 'usual.event.HTTP_PROXY_CHANGE', @@ -2184,7 +2301,8 @@ declare namespace commonEventManager { * * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMON_EVENT_MINORSMODE_ON = 'usual.event.MINORSMODE_ON', @@ -2194,7 +2312,8 @@ declare namespace commonEventManager { * * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMON_EVENT_MINORSMODE_OFF = 'usual.event.MINORSMODE_OFF', @@ -2250,6 +2369,49 @@ declare namespace commonEventManager { * @since 15 */ COMMON_EVENT_MANAGED_BROWSER_POLICY_CHANGED = 'usual.event.MANAGED_BROWSER_POLICY_CHANGED', + + /** + * Indicates that the default application is changed. + * To subscribe to this common event, your application must have the ohos.permission.CHANGE_DEFAULT_APPLICATION + * permission. + * This is a protected common event that can only be sent by system. + * + * @syscap SystemCapability.Notification.CommonEvent + * @systemapi + * @since 19 + */ + COMMON_EVENT_DEFAULT_APPLICATION_CHANGED = 'usual.event.DEFAULT_APPLICATION_CHANGED', + + /** + * This common event means that shortcut has been changed. + * To subscribe to this common event, your application must have the ohos.permission.MANAGE_SHORTCUTS permission. + * This is a protected common event that can only be sent by system. + * + * @syscap SystemCapability.Notification.CommonEvent + * @systemapi + * @since 20 + */ + COMMON_EVENT_SHORTCUT_CHANGED = 'usual.event.SHORTCUT_CHANGED', + + /** + * This common event means that kiosk mode is on. + * This is a protected common event that can only be sent by system. + * + * @syscap SystemCapability.Notification.CommonEvent + * @since 20 + * @arkts 1.1&1.2 + */ + COMMON_EVENT_KIOSK_MODE_ON = 'usual.event.KIOSK_MODE_ON', + + /** + * This common event means that kiosk mode is off. + * This is a protected common event that can only be sent by system. + * + * @syscap SystemCapability.Notification.CommonEvent + * @since 20 + * @arkts 1.1&1.2 + */ + COMMON_EVENT_KIOSK_MODE_OFF = 'usual.event.KIOSK_MODE_OFF', } /** @@ -2264,7 +2426,8 @@ declare namespace commonEventManager { * @typedef { _CommonEventData } CommonEventData * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export type CommonEventData = _CommonEventData; @@ -2280,7 +2443,8 @@ declare namespace commonEventManager { * @typedef { _CommonEventSubscriber } CommonEventSubscriber * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export type CommonEventSubscriber = _CommonEventSubscriber; @@ -2296,7 +2460,8 @@ declare namespace commonEventManager { * @typedef { _CommonEventSubscribeInfo } CommonEventSubscribeInfo * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export type CommonEventSubscribeInfo = _CommonEventSubscribeInfo; @@ -2311,7 +2476,8 @@ declare namespace commonEventManager { * * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Describes the information of the subscriber @@ -2320,7 +2486,8 @@ declare namespace commonEventManager { * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export type CommonEventPublishData = _CommonEventPublishData; } diff --git a/api/@ohos.convertxml.d.ts b/api/@ohos.convertxml.d.ts index 717fd03b40e0f9e73d9ff6621ea8b5c711d628fa..2f2aefdce1bd32ea60e6c18d5de97f2a595e1dd6 100644 --- a/api/@ohos.convertxml.d.ts +++ b/api/@ohos.convertxml.d.ts @@ -644,10 +644,12 @@ declare namespace xml { convertToJSObject(xml: string, options?: ConvertOptions): Object; /** - * To convert XML text to JavaScript object with better performance. + * Converts an XML text into a JavaScript object. * - * @param { string } xml - xml xml The xml text to be converted. - * @param { ConvertOptions } [options] - options option Option Inputted by user to set. + * @param { string } xml - XML text to convert. If the XML text contains the ampersand (&), replace it with the + * entity reference &. + * @param { ConvertOptions } [options] - Options for conversion. The default value is a ConvertOptions object, + * which consists of the default values of the attributes in the object. * @returns { Object } Returns a JavaScript object converting from XML text. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; diff --git a/api/@ohos.cooperate.d.ts b/api/@ohos.cooperate.d.ts index f2b6f369494cec542ae4af74a89b2a4a1566992a..b5640c5425ff3285b60cbf456a540d71dd0985ba 100644 --- a/api/@ohos.cooperate.d.ts +++ b/api/@ohos.cooperate.d.ts @@ -419,7 +419,8 @@ declare namespace cooperate { * @throws {BusinessError} 202 - Permission verification failed. A non-system application calls a system API. * @throws {BusinessError} 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2.Incorrect parameter types.3.Parameter verification failed. - * @throws {BusinessError} 20900001 - Operation failed. + * @throws {BusinessError} 20900001 - Service exception. Possible causes: 1. A system error, such as null pointer, + * <br>container-related exception, or IPC exception. 2. N-API invocation exception or invalid N-API status. * @syscap SystemCapability.Msdp.DeviceStatus.Cooperate * @systemapi Hide this for inner system use. * @since 10 @@ -437,7 +438,8 @@ declare namespace cooperate { * @throws {BusinessError} 202 - Permission verification failed. A non-system application calls a system API. * @throws {BusinessError} 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2.Incorrect parameter types.3.Parameter verification failed. - * @throws {BusinessError} 20900001 - Operation failed. + * @throws {BusinessError} 20900001 - Service exception. Possible causes: 1. A system error, such as null pointer, + * <br>container-related exception, or IPC exception. 2. N-API invocation exception or invalid N-API status. * @syscap SystemCapability.Msdp.DeviceStatus.Cooperate * @systemapi Hide this for inner system use. * @since 10 @@ -457,7 +459,8 @@ declare namespace cooperate { * @throws {BusinessError} 202 - Permission verification failed. A non-system application calls a system API. * @throws {BusinessError} 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2.Incorrect parameter types.3.Parameter verification failed. - * @throws {BusinessError} 20900001 - Operation failed. + * @throws {BusinessError} 20900001 - Service exception. Possible causes: 1. A system error, such as null pointer, + * <br>container-related exception, or IPC exception. 2. N-API invocation exception or invalid N-API status. * @syscap SystemCapability.Msdp.DeviceStatus.Cooperate * @systemapi Hide this for inner system use. * @since 11 @@ -475,7 +478,8 @@ declare namespace cooperate { * @throws {BusinessError} 202 - Permission verification failed. A non-system application calls a system API. * @throws {BusinessError} 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2.Incorrect parameter types.3.Parameter verification failed. - * @throws {BusinessError} 20900001 - Operation failed. + * @throws {BusinessError} 20900001 - Service exception. Possible causes: 1. A system error, such as null pointer, + * <br>container-related exception, or IPC exception. 2. N-API invocation exception or invalid N-API status. * @syscap SystemCapability.Msdp.DeviceStatus.Cooperate * @systemapi Hide this for inner system use. * @since 11 @@ -712,6 +716,66 @@ declare namespace cooperate { */ function off(type: 'cooperateMouse', networkId: string, callback?: Callback<MouseLocation>): void; +/** + * Starts screen hopping with options. + * + * @permission ohos.permission.COOPERATE_MANAGER + * @param { string } targetNetworkId - Descriptor of the target device for screen hopping. + * @param { number } inputDeviceId - Identifier of the input device for screen hopping. + * @param { CooperateOptions } cooperateOptions - Cooperation options for peer device, optional. + * @returns { Promise<void> } the promise returned by the function. + * @throws {BusinessError} 201 - Permission denied. + * @throws {BusinessError} 202 - Permission verification failed. A non-system application calls a system API. + * @throws {BusinessError} 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types.3.Parameter verification failed. + * @throws {BusinessError} 20900001 - Operation failed. + * @syscap SystemCapability.Msdp.DeviceStatus.Cooperate + * @systemapi Hide this for inner system use. + * @since 20 + */ + function activateCooperateWithOptions(targetNetworkId: string, inputDeviceId: number, + cooperateOptions?: CooperateOptions + ): Promise<void>; + + /** + * Cooperation options for peer device. + * @interface { CooperateOptions } + * @syscap SystemCapability.Msdp.DeviceStatus.Cooperate + * @systemapi Hide this for inner system use. + * @since 20 + */ + interface CooperateOptions { + + /** + * The mouse pointer is located at the X coordinate on the screen. + * + * @type { number } + * @syscap SystemCapability.Msdp.DeviceStatus.Cooperate + * @systemapi Hide this for inner system use. + * @since 20 + */ + displayX: number; + + /** + * Identifier of the peer device screen. + * + * @type { number } + * @syscap SystemCapability.Msdp.DeviceStatus.Cooperate + * @systemapi Hide this for inner system use. + * @since 20 + */ + displayId: number; + + /** + * The mouse pointer is located at the Y coordinate on the screen. + * + * @type { number } + * @syscap SystemCapability.Msdp.DeviceStatus.Cooperate + * @systemapi Hide this for inner system use. + * @since 20 + */ + displayY: number; + } } export default cooperate; diff --git a/api/@ohos.curves.d.ets b/api/@ohos.curves.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..fe63ee3ae2ff289c2f627261c26d32ad8c1a1bb2 --- /dev/null +++ b/api/@ohos.curves.d.ets @@ -0,0 +1,770 @@ +/* + * Copyright (c) 2021-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Contains interpolator functions such as initialization, third-order Bezier curves, and spring curves. + * + * @namespace curves + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ +/** + * Contains interpolator functions such as initialization, third-order Bezier curves, and spring curves. + * + * @namespace curves + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Contains interpolator functions such as initialization, third-order Bezier curves, and spring curves. + * + * @namespace curves + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +declare namespace curves { + /** + * enum Curve. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * enum Curve. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * enum Curve. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + enum Curve { + /** + * Linear. Indicates that the animation has the same velocity from start to finish. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Linear. Indicates that the animation has the same velocity from start to finish. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Linear. Indicates that the animation has the same velocity from start to finish. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + Linear, + /** + * Ease. Indicates that the animation starts at a low speed, then speeds up, and slows down before the end, + * CubicBezier(0.25, 0.1, 0.25, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Ease. Indicates that the animation starts at a low speed, then speeds up, and slows down before the end, + * CubicBezier(0.25, 0.1, 0.25, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Ease. Indicates that the animation starts at a low speed, then speeds up, and slows down before the end, + * CubicBezier(0.25, 0.1, 0.25, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + Ease, + /** + * EaseIn. Indicates that the animation starts at a low speed, Cubic Bezier (0.42, 0.0, 1.0, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * EaseIn. Indicates that the animation starts at a low speed, Cubic Bezier (0.42, 0.0, 1.0, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * EaseIn. Indicates that the animation starts at a low speed, Cubic Bezier (0.42, 0.0, 1.0, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + EaseIn, + /** + * EaseOut. Indicates that the animation ends at low speed, CubicBezier (0.0, 0.0, 0.58, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * EaseOut. Indicates that the animation ends at low speed, CubicBezier (0.0, 0.0, 0.58, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * EaseOut. Indicates that the animation ends at low speed, CubicBezier (0.0, 0.0, 0.58, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + EaseOut, + /** + * EaseInOut. Indicates that the animation starts and ends at low speed, CubicBezier (0.42, 0.0, 0.58, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * EaseInOut. Indicates that the animation starts and ends at low speed, CubicBezier (0.42, 0.0, 0.58, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * EaseInOut. Indicates that the animation starts and ends at low speed, CubicBezier (0.42, 0.0, 0.58, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + EaseInOut, + /** + * FastOutSlowIn. Standard curve, cubic-bezier (0.4, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * FastOutSlowIn. Standard curve, cubic-bezier (0.4, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * FastOutSlowIn. Standard curve, cubic-bezier (0.4, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + FastOutSlowIn, + /** + * LinearOutSlowIn. Deceleration curve, cubic-bezier (0.0, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * LinearOutSlowIn. Deceleration curve, cubic-bezier (0.0, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * LinearOutSlowIn. Deceleration curve, cubic-bezier (0.0, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + LinearOutSlowIn, + /** + * FastOutLinearIn. Acceleration curve, cubic-bezier (0.4, 0.0, 1.0, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * FastOutLinearIn. Acceleration curve, cubic-bezier (0.4, 0.0, 1.0, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * FastOutLinearIn. Acceleration curve, cubic-bezier (0.4, 0.0, 1.0, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + FastOutLinearIn, + /** + * ExtremeDeceleration. Abrupt curve, cubic-bezier (0.0, 0.0, 0.0, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * ExtremeDeceleration. Abrupt curve, cubic-bezier (0.0, 0.0, 0.0, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * ExtremeDeceleration. Abrupt curve, cubic-bezier (0.0, 0.0, 0.0, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + ExtremeDeceleration, + /** + * Sharp. Sharp curves, cubic-bezier (0.33, 0.0, 0.67, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Sharp. Sharp curves, cubic-bezier (0.33, 0.0, 0.67, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Sharp. Sharp curves, cubic-bezier (0.33, 0.0, 0.67, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + Sharp, + /** + * Rhythm. Rhythmic curve, cubic-bezier (0.7, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Rhythm. Rhythmic curve, cubic-bezier (0.7, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Rhythm. Rhythmic curve, cubic-bezier (0.7, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + Rhythm, + /** + * Smooth. Smooth curves, cubic-bezier (0.4, 0.0, 0.4, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Smooth. Smooth curves, cubic-bezier (0.4, 0.0, 0.4, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Smooth. Smooth curves, cubic-bezier (0.4, 0.0, 0.4, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + Smooth, + /** + * Friction. Damping curves, CubicBezier (0.2, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Friction. Damping curves, CubicBezier (0.2, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Friction. Damping curves, CubicBezier (0.2, 0.0, 0.2, 1.0). + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + Friction, + } + + /** + * Interface for curve object. + * + * @typedef ICurve + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Interface for curve object. + * + * @typedef ICurve + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Interface for curve object. + * + * @typedef ICurve + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + interface ICurve { + /** + * Get curve value by fraction. + * + * @param { number } fraction -Indicates the current normalized time parameter. Value range: [0, 1]. + * Note: If the value is less than 0, it will be processed as 0. If the value is greater than 1, 1 is used. + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Get curve value by fraction. + * + * @param { number } fraction -Indicates the current normalized time parameter. Value range: [0, 1]. + * Note: If the value is less than 0, it will be processed as 0. If the value is greater than 1, 1 is used. + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Get curve value by fraction. + * + * @param { number } fraction -Indicates the current normalized time parameter. Value range: [0, 1]. + * Note: If the value is less than 0, it will be processed as 0. If the value is greater than 1, 1 is used. + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + interpolate(fraction: number): number; + } + + /** + * Initializes the interpolator curve when called. + * + * @param { Curve } [curve] The default value is Curve.Linear + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Initializes the interpolator curve when called. + * + * @param { Curve } [curve] The default value is Curve.Linear + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Initializes the interpolator curve when called. + * + * @param { Curve } [curve] The default value is Curve.Linear + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + function initCurve(curve?: Curve): ICurve; + + /** + * Initializes the interpolator curve when called. + * + * @param { Curve } [curve] + * @returns { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 9 + * @useinstead initCurve + */ + function init(curve?: Curve): string; + + /** + * Constructs a step curve when called. + * + * @param { number } count -The number of steps. The range of this value is [1, +∞). + * @param { boolean } end -A step change occurs at the start or end of each interval. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Constructs a step curve when called. + * + * @param { number } count -The number of steps. The range of this value is [1, +∞). + * @param { boolean } end -A step change occurs at the start or end of each interval. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Constructs a step curve when called. + * + * @param { number } count -The number of steps. The range of this value is [1, +∞). + * @param { boolean } end -A step change occurs at the start or end of each interval. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + function stepsCurve(count: number, end: boolean): ICurve; + + /** + * Constructs a custom curve when called. + * + * @param { function } interpolate - fraction range is [0,1], the return number must between [0,1]. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Constructs a custom curve when called. + * + * @param { function } interpolate - fraction range is [0,1], the return number must between [0,1]. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + function customCurve(interpolate: (fraction: number) => number): ICurve; + + /** + * Constructs a step curve when called. + * + * @param { number } count + * @param { boolean } end + * @returns { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 9 + * @useinstead stepsCurve + */ + function steps(count: number, end: boolean): string; + + /** + * Constructs a third-order Bezier curve when called. + * @param { number } x1 -Value range [0, 1]. + * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. + * @param { number } y1 -Value range (-∞, +∞). + * @param { number } x2 -Value range [0, 1]. + * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. + * @param { number } y2 -Value range (-∞, +∞). + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Constructs a third-order Bezier curve when called. + * + * @param { number } x1 -Value range [0, 1]. + * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. + * @param { number } y1 -Value range (-∞, +∞). + * @param { number } x2 -Value range [0, 1]. + * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. + * @param { number } y2 -Value range (-∞, +∞). + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Constructs a third-order Bezier curve when called. + * + * @param { number } x1 -Value range [0, 1]. + * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. + * @param { number } y1 -Value range (-∞, +∞). + * @param { number } x2 -Value range [0, 1]. + * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. + * @param { number } y2 -Value range (-∞, +∞). + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + function cubicBezierCurve(x1: number, y1: number, x2: number, y2: number): ICurve; + + /** + * Constructs a third-order Bezier curve when called. + * + * @param { number } x1 -Value range [0, 1]. + * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. + * @param { number } y1 -Value range (-∞, +∞). + * @param { number } x2 -Value range [0, 1]. + * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. + * @param { number } y2 -Value range (-∞, +∞). + * @returns { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 9 + * @useinstead cubicBezierCurve + */ + function cubicBezier(x1: number, y1: number, x2: number, y2: number): string; + + /** + * Constructs a spring curve when called. For more information about the meaning of the parameter, see spring(). + * + * @param { number } velocity -Value range (-∞, +∞). + * @param { number } mass -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. + * @param { number } stiffness -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. + * @param { number } damping -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Constructs a spring curve when called. + * + * @param { number } velocity -Value range (-∞, +∞). + * @param { number } mass -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. + * @param { number } stiffness -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. + * @param { number } damping -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Constructs a spring curve when called. + * + * @param { number } velocity -Value range (-∞, +∞). + * @param { number } mass -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. + * @param { number } stiffness -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. + * @param { number } damping -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + function springCurve(velocity: number, mass: number, stiffness: number, damping: number): ICurve; + + /** + * Constructs a spring curve when called. + * + * @param { number } velocity -Initial velocity. An influence parameter of external factors on elastic dynamics, + * purpose is to ensure a smooth transition of the object from the previous state of motion to the elastic dynamics. + * @param { number } mass -Quality. The force object of the elastic system will have an inertial effect on elastic + * system. The greater the mass, the greater the amplitude of the oscillation. + * @param { number } stiffness -The degree to which an object is deformed by resisting the applied force. + * @param { number } damping -Pure number, Used to describe oscillation and decay of a system after being disturbed. + * @returns { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 9 + * @useinstead springCurve + */ + function spring(velocity: number, mass: number, stiffness: number, damping: number): string; + + /** + * Constructs a spring motion when called. + * + * @param { number } [response] The default value is 0.55. Unit: seconds. Value range: (0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.55 is used. + * @param { number } [dampingFraction] The default value is 0.825. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.825 is used. + * @param { number } [overlapDuration] The default value is 0. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Constructs a spring motion when called. + * + * @param { number } [response] The default value is 0.55. Unit: seconds. Value range: (0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.55 is used. + * @param { number } [dampingFraction] The default value is 0.825. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.825 is used. + * @param { number } [overlapDuration] The default value is 0. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Constructs a spring motion when called. + * + * @param { number } [response] The default value is 0.55. Unit: seconds. Value range: (0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.55 is used. + * @param { number } [dampingFraction] The default value is 0.825. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.825 is used. + * @param { number } [overlapDuration] The default value is 0. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + function springMotion(response?: number, dampingFraction?: number, overlapDuration?: number): ICurve; + + /** + * Constructs a responsive spring motion when called. + * + * @param { number } [response] The default value is 0.15. Unit: seconds. Value range: (0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.15 is used. + * @param { number } [dampingFraction] The default value is 0.86. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.86 is used. + * @param { number } [overlapDuration] The default value is 0.25. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.25 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Constructs a responsive spring motion when called. + * + * @param { number } [response] The default value is 0.15. Unit: seconds. Value range: (0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.15 is used. + * @param { number } [dampingFraction] The default value is 0.86. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.86 is used. + * @param { number } [overlapDuration] The default value is 0.25. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.25 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Constructs a responsive spring motion when called. + * The parameters are interpreted as in springMotion. + * + * @param { number } [response] The default value is 0.15. Unit: seconds. Value range: (0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.15 is used. + * @param { number } [dampingFraction] The default value is 0.86. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.86 is used. + * @param { number } [overlapDuration] The default value is 0.25. Unit: seconds. Value range: [0, +∞). + * Note: If a value is set to 0 or less, the default value of 0.25 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + function responsiveSpringMotion(response?: number, dampingFraction?: number, overlapDuration?: number): ICurve; + + /** + * Constructs an interpolating spring curve when called, the animation duration can not be specified manually, + * and is determined by parameters of the curve. It produces values change from 0 to 1, and then uses interpolator + * to calculate the actual animation values. + * + * @param { number } velocity - the initial velocity of the spring, and is a normalized speed corresponding to the + * value changes from 0 to 1,specific value range (-∞, ∞). + * @param { number } mass - the mass of object in the mass-damper-spring system, value range (0, +∞). + * Note: If the value is less than or equal to 0, the value 1 is used. + * @param { number } stiffness - the stiffness of spring, value range (0, +∞). + * Note: If the value is less than or equal to 0, the value 1 is used. + * @param { number } damping - the damping value of spring, value range (0, +∞). + * Note: If the value is less than or equal to 0, the value 1 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Constructs an interpolating spring curve when called, the animation duration can not be specified manually, + * and is determined by parameters of the curve. It produces values change from 0 to 1, and then uses interpolator + * to calculate the actual animation values. + * + * @param { number } velocity - the initial velocity of the spring, and is a normalized speed corresponding to the + * value changes from 0 to 1,specific value range (-∞, ∞). + * @param { number } mass - the mass of object in the mass-damper-spring system, value range (0, +∞). + * Note: If the value is less than or equal to 0, the value 1 is used. + * @param { number } stiffness - the stiffness of spring, value range (0, +∞). + * Note: If the value is less than or equal to 0, the value 1 is used. + * @param { number } damping - the damping value of spring, value range (0, +∞). + * Note: If the value is less than or equal to 0, the value 1 is used. + * @returns { ICurve } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + function interpolatingSpring(velocity: number, mass: number, stiffness: number, damping: number): ICurve; +} +export default curves; \ No newline at end of file diff --git a/api/@ohos.curves.d.ts b/api/@ohos.curves.d.ts index 41e20cddae0bc98e90508deac2fce6b63619a0f5..3c0b0007a82ea62ef7d470dd22b0135152518044 100644 --- a/api/@ohos.curves.d.ts +++ b/api/@ohos.curves.d.ts @@ -404,11 +404,13 @@ declare namespace curves { * @since 10 */ /** - * Get curve value by fraction. + * Implements calculation. * - * @param { number } fraction -Indicates the current normalized time parameter. Value range: [0, 1]. - * Note: If the value is less than 0, it will be processed as 0. If the value is greater than 1, 1 is used. - * @returns { number } + * @param { number } fraction - Current normalized time.<br>Value range: [0, 1]. + * <p>**NOTE**: + * <br>A value less than 0 is handed as **0**. A value greater than 1 is handed as **1**. + * </p> + * @returns { number } - Curve interpolation corresponding to the normalized time point. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -435,9 +437,10 @@ declare namespace curves { * @since 10 */ /** - * Initializes the interpolator curve when called. + * Implements initialization for the interpolation curve, + * which is used to create an interpolation curve based on the input parameter. * - * @param { Curve } [curve] The default value is Curve.Linear + * @param { Curve } [curve] - Curve type.<br>Default value: **Curve.Linear**. * @returns { ICurve } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -478,11 +481,16 @@ declare namespace curves { * @since 10 */ /** - * Constructs a step curve when called. + * Creates a step curve. * - * @param { number } count -The number of steps. The range of this value is [1, +∞). - * @param { boolean } end -A step change occurs at the start or end of each interval. - * @returns { ICurve } + * @param { number } count - Number of steps. The value must be a positive integer.<br>Value range: [1, +∞). + * <p>**NOTE**: + * <br>A value less than 1 evaluates to the value **1**. + * </p> + * @param { boolean } end -Whether jumping occurs when the interpolation ends. + * **true**: Jumping occurs when the interpolation ends. + * *false**: Jumping occurs when the interpolation starts. + * @returns { ICurve } Interpolation curve. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -500,10 +508,17 @@ declare namespace curves { * @since 10 */ /** - * Constructs a custom curve when called. + * Creates a custom curve. * - * @param { function } interpolate - fraction range is [0,1], the return number must between [0,1]. - * @returns { ICurve } + * @param { function } interpolate - Custom interpolation callback.fraction: input x value for interpolation. + * when the animation starts. Value range: [0, 1]The return value is the y value of the curve. Value range: [0, 1]. + * <p>**NOTE**: + * <br>If fraction is 0, the return value 0 corresponds to the animation start point; any other return value means that + * <br>the animation jumps at the start point.If fraction is 1, the return value 1 corresponds to the animation + * <br>end point; any other return value means that the end value of the animation is not the value of the state + * <br>variable, which will result in an effect of transition from that end value to the value of the state variable. + * </p> + * @returns { ICurve } Interpolation curve. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -551,15 +566,19 @@ declare namespace curves { * @since 10 */ /** - * Constructs a third-order Bezier curve when called. + * Creates a cubic Bezier curve. The curve values must be between 0 and 1. * - * @param { number } x1 -Value range [0, 1]. - * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. - * @param { number } y1 -Value range (-∞, +∞). - * @param { number } x2 -Value range [0, 1]. - * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. - * @param { number } y2 -Value range (-∞, +∞). - * @returns { ICurve } + * @param { number } x1 - X coordinate of the first point on the Bezier curve.<br>Value range: [0, 1]. + * <p>**NOTE**: + * <br>A value less than 0 is handed as **0**. A value greater than 1 is handed as **1**. + * </p> + * @param { number } y1 - Y coordinate of the first point on the Bezier curve.<br>Value range: (-∞, +∞). + * @param { number } x2 - X coordinate of the second point on the Bezier curve.<br>Value range: [0, 1]. + * <p>**NOTE**: + * <br>A value less than 0 is handed as **0**. A value greater than 1 is handed as **1**. + * </p> + * @param { number } y2 - Y coordinate of the second point on the Bezier curve.<br>Value range: (-∞, +∞). + * @returns { ICurve } Interpolation curve. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -568,7 +587,8 @@ declare namespace curves { function cubicBezierCurve(x1: number, y1: number, x2: number, y2: number): ICurve; /** - * Constructs a third-order Bezier curve when called. + * Creates a cubic Bezier curve. The curve value must range from 0 to 1. This API is deprecated since API version 9. + * You are advised to use cubicBezierCurve instead. * * @param { number } x1 -Value range [0, 1]. * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. @@ -608,13 +628,32 @@ declare namespace curves { * @since 10 */ /** - * Constructs a spring curve when called. + * Creates a spring curve. The curve shape is subject to the spring parameters, and the animation duration + * is subject to the **duration** parameter in **animation** and **animateTo**. * - * @param { number } velocity -Value range (-∞, +∞). - * @param { number } mass -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. - * @param { number } stiffness -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. - * @param { number } damping -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. - * @returns { ICurve } + * @param { number } velocity - Initial velocity. It is applied by external factors to the spring animation, + * designed to help ensure the smooth transition from the previous motion state. The velocity is the normalized + * velocity, and its value is equal to the actual velocity at the beginning of the animation divided by the + * animation attribute change value.Value range: (-∞, +∞). + * @param { number } mass - Mass, which influences the inertia in the spring system. The greater the mass, + * the greater the amplitude of the oscillation, and the slower the speed of restoring to the equilibrium position. + * Value range: (0, +∞). + * <p>**NOTE**: + * <br>If this parameter is set to a value less than or equal to 0, the value 1 is used. + * </p> + * @param { number } stiffness - Stiffness.It is the degree to which an object deforms by resisting the force + * applied. In an elastic system, the greater the stiffness, the stronger the ability to resist deformation, + * and the faster the speed of restoring to the equilibrium position.Value range: (0, +∞). + * <p>**NOTE**: + * <br>If this parameter is set to a value less than or equal to 0, the value 1 is used. + * </p> + * @param { number } damping -Damping. It is used to describe the oscillation and attenuation of the system + * after being disturbed. The larger the damping, the smaller the number of oscillations of elastic motion, + * and the smaller the oscillation amplitude.Value range: (0, +∞). + * <p>**NOTE**: + * <br>If this parameter is set to a value less than or equal to 0, the value 1 is used. + * </p> + * @returns { ICurve } Interpolation curve. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -667,14 +706,34 @@ declare namespace curves { * @since 10 */ /** - * Constructs a spring motion when called. + * Creates a spring animation curve. + * If multiple spring animations are applied to the same attribute of an object, + * each animation replaces their predecessor and inherits the velocity. * - * @param { number } [response] The default value is 0.55. Unit: seconds. Value range: (0, +∞). - * Note: If a value is set to 0 or less, the default value of 0.55 is used. - * @param { number } [dampingFraction] The default value is 0.825. Unit: seconds. Value range: [0, +∞). - * Note: If a value is set to 0 or less, the default value of 0.825 is used. - * @param { number } [overlapDuration] The default value is 0. Unit: seconds. Value range: [0, +∞). - * Note: If a value is set to 0 or less, the default value of 0 is used. + * @param { number } [response] Duration of one complete oscillation. + * <br>Default value: **0.55**.<br>Unit: second<br>Value range: (0, +∞). + * <p>**NOTE**: + * <br>If this parameter is set to a value less than or equal to 0, the default value **0.55** is used. + * </p> + * @param { number } [dampingFraction] Damping coefficient. + * **0**: undamped. In this case, the spring oscillates forever.<br>> 0 and < 1: underdamped. + * In this case, the spring overshoots the equilibrium position.<br>**1**: critically damped. + * 1: overdamped. In this case, the spring approaches equilibrium gradually.<br>Default value: **0.825**. + * Unit: second. + * Value range: [0, +∞). + * <p>**NOTE**: + * <br>A value less than 0 evaluates to the default value **0.825**. + * </p> + * @param { number } [overlapDuration] Duration for animations to overlap, in seconds. + * When animations overlap, the **response** values of these animations will transit smoothly over this duratio + * if they are different.<br>Default value: **0**<br>Unit: second<br>Value range: [0, +∞). + * <p>**NOTE** + * <br>A value less than 0 evaluates to the default value **0**. + * <br>The spring animation curve is physics-based. Its duration depends on the **springMotion** parameters and + * the previous velocity, rather than the **duration** parameter in animation, animateTo, or pageTransition. + * The time cannot be normalized. Therefore, the interpolation cannot be obtained using + * the **interpolate** function of the curve. + * </p> * @returns { ICurve } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -711,15 +770,29 @@ declare namespace curves { * @since 10 */ /** - * Constructs a responsive spring motion when called. - * The parameters are interpreted as in springMotion. + * Creates a responsive spring animation curve. It is a special case of [springMotion](#curvesspringmotion9), + * with the only difference in the default values. It can be used together with **springMotion**. * - * @param { number } [response] The default value is 0.15. Unit: seconds. Value range: (0, +∞). - * Note: If a value is set to 0 or less, the default value of 0.15 is used. - * @param { number } [dampingFraction] The default value is 0.86. Unit: seconds. Value range: [0, +∞). - * Note: If a value is set to 0 or less, the default value of 0.86 is used. - * @param { number } [overlapDuration] The default value is 0.25. Unit: seconds. Value range: [0, +∞). - * Note: If a value is set to 0 or less, the default value of 0.25 is used. + * @param { number } [response] See **response** in **springMotion**.<br>Default value: **0.15**. + * Unit: second<br>Value range: (0, +∞). + * <p>**NOTE**: + * <br>If this parameter is set to a value less than or equal to 0, the default value **0.15** is used. + * </p> + * @param { number } [dampingFraction] See **dampingFraction** in **springMotion**.<br>Default value: **0.86**. + * Unit: second<br>Value range: [0, +∞). + * <p>**NOTE** + * <br>A value less than 0 evaluates to the default value **0.86**. + * </p> + * @param { number } [overlapDuration] See **overlapDuration** in **springMotion**.<br>Default value: **0.25**. + * Unit: second<br>Value range: [0, +∞). + * <p>**NOTE**: + * <br>A value less than 0 evaluates to the default value **0.25**. + * <br>To apply custom settings for a spring animation, you are advised to use **springMotion**. + * <br>When using **responsiveSpringMotion**, you are advised to retain the default settings. + * <br>The duration of the responsive spring animation depends on the **responsiveSpringMotion** parameters and the + * previous velocity, rather than the duration parameter in animation, animateTo, or pageTransition. + * <br>In addition, the interpolation cannot be obtained using the **interpolate** function of the curve. + * </p> * @returns { ICurve } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -747,18 +820,32 @@ declare namespace curves { * @since 10 */ /** - * Constructs an interpolating spring curve when called, the animation duration can not be specified manually, - * and is determined by parameters of the curve. It produces values change from 0 to 1, and then uses interpolator - * to calculate the actual animation values. + * Creates an interpolating spring curve animated from 0 to 1. The actual animation value is calculated based + * on the curve. The animation duration is subject to the curve parameters, rather than the **duration** parameter + * in **animation** or **animateTo**. * - * @param { number } velocity - the initial velocity of the spring, and is a normalized speed corresponding to the - * value changes from 0 to 1,specific value range (-∞, ∞). - * @param { number } mass - the mass of object in the mass-damper-spring system, value range (0, +∞). - * Note: If the value is less than or equal to 0, the value 1 is used. - * @param { number } stiffness - the stiffness of spring, value range (0, +∞). - * Note: If the value is less than or equal to 0, the value 1 is used. - * @param { number } damping - the damping value of spring, value range (0, +∞). - * Note: If the value is less than or equal to 0, the value 1 is used. + * @param { number } velocity - Initial velocity. It is applied by external factors to the spring animation, + * designed to help ensure the smooth transition from the previous motion state. + * The velocity is the normalized velocity, and its value is equal to the actual velocity at the beginning of + * the animation divided by the animation attribute change value.<br>Value range: (-∞, +∞). + * @param { number } mass - Mass, which influences the inertia in the spring system. The greater the mass, + * the greater the amplitude of the oscillation, and the slower the speed of restoring to the equilibrium position. + * <br>Value range: (0, +∞). + * <p>**NOTE**: + * <br>If this parameter is set to a value less than or equal to 0, the value **1** is used. + * </p> + * @param { number } stiffness - Stiffness. It is the degree to which an object deforms by resisting + * the force applied. In an elastic system, the greater the stiffness, the stronger the ability to resist + * deformation, and the faster the speed of restoring to the equilibrium position.<br>Value range: (0, +∞). + * <p>**NOTE**: + * <br>If this parameter is set to a value less than or equal to 0, the value **1** is used. + * </p> + * @param { number } damping - Damping. It is used to describe the oscillation and attenuation of the system + * after being disturbed. The larger the damping, the smaller the number of oscillations of elastic motion, + * and the smaller the oscillation amplitude.<br>Value range: (0, +∞)<br> + * <p>**NOTE**: + * <br>If this parameter is set to a value less than or equal to 0, the value **1** is used. + * </p> * @returns { ICurve } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform diff --git a/api/@ohos.data.DataShareResultSet.d.ts b/api/@ohos.data.DataShareResultSet.d.ts index 5c7ad361774357e5682ed7dab232e43b40de86a1..e637a1a69847fc3269ac620c28c3ed269a52ec5d 100644 --- a/api/@ohos.data.DataShareResultSet.d.ts +++ b/api/@ohos.data.DataShareResultSet.d.ts @@ -87,7 +87,8 @@ export enum DataType { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ export default interface DataShareResultSet { /** @@ -122,7 +123,8 @@ export default interface DataShareResultSet { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ rowCount: number; @@ -146,7 +148,8 @@ export default interface DataShareResultSet { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ goToFirstRow(): boolean; @@ -236,7 +239,8 @@ export default interface DataShareResultSet { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ getString(columnIndex: number): string; @@ -275,7 +279,8 @@ export default interface DataShareResultSet { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ close(): void; @@ -288,7 +293,8 @@ export default interface DataShareResultSet { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ getColumnIndex(columnName: string): number; diff --git a/api/@ohos.data.UdmfComponents.d.ets b/api/@ohos.data.UdmfComponents.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..e3a59e42b2e37fbc21a327c7ab031574004a25f6 --- /dev/null +++ b/api/@ohos.data.UdmfComponents.d.ets @@ -0,0 +1,112 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkData + */ +import uniformDataStruct from '@ohos.data.uniformDataStruct'; + +/** + * Enumerates the form card types. + * + * @enum { number } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @since 20 + */ +declare enum FormType { + /** + * Big form card, with fixed size of 4 x 4. + * + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @since 20 + */ + TYPE_BIG = 0, + + /** + * Medium-sized form card, with fixed size of 4 x 2. + * + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @since 20 + */ + TYPE_MID = 1, + + /** + * Small form card, with fixed size of 2 x 1. + * + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @since 20 + */ + TYPE_SMALL = 2 +} + +/** + * Defines a content form card. + * + * @struct { ContentFormCard } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @since 20 + */ +@Component +declare struct ContentFormCard { + /** + * Data of the form card. + * + * @type { uniformDataStruct.ContentForm } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @since 20 + */ + contentFormData: uniformDataStruct.ContentForm; + + /** + * Type of the form card. + * + * @type { FormType } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @since 20 + */ + @Prop + formType: FormType; + + /** + * Width of the form card. + * + * @type { ?number } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @since 20 + */ + @Prop + formWidth?: number; + + /** + * Height of the form card. + * + * @type { ?number } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @since 20 + */ + @Prop + formHeight?: number; + + /** + * Callback to be invoked when the form card is tapped. + * + * @type { ?Function } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @since 20 + */ + handleOnClick?: Function; +} + +export { ContentFormCard, FormType }; \ No newline at end of file diff --git a/api/@ohos.data.ValuesBucket.d.ts b/api/@ohos.data.ValuesBucket.d.ts index 26bf99827e656d0b53def3a6dcb16a336a86e269..afa9159700469f6a36099c41face4d69aa6bf5d5 100644 --- a/api/@ohos.data.ValuesBucket.d.ts +++ b/api/@ohos.data.ValuesBucket.d.ts @@ -16,6 +16,7 @@ /** * @file * @kit ArkData + * @arkts 1.1&1.2 */ /** @@ -34,6 +35,16 @@ * @crossplatform * @since 12 */ +/** + * Indicates possible value types + * + * @typedef { number | string | boolean } + * @syscap SystemCapability.DistributedDataManager.DataShare.Core + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + */ export type ValueType = number | string | boolean; /** @@ -42,6 +53,6 @@ export type ValueType = number | string | boolean; * @typedef { Record<string, ValueType | Uint8Array | null> } * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} */ export type ValuesBucket = Record<string, ValueType | Uint8Array | null>; diff --git a/api/@ohos.data.collaborationEditObject.d.ts b/api/@ohos.data.collaborationEditObject.d.ts deleted file mode 100644 index 6a722831980745a23f87180ec2698c21072bb5a3..0000000000000000000000000000000000000000 --- a/api/@ohos.data.collaborationEditObject.d.ts +++ /dev/null @@ -1,1147 +0,0 @@ -/* - * Copyright (c) 2025 Huawei Device Co., Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"), - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * @file - * @kit ArkData - */ - -import { Callback } from './@ohos.base'; -import Context from './application/BaseContext'; - -/** - * Provides interfaces to collaboration edit object. - * - * @namespace collaborationEditObject - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ -declare namespace collaborationEditObject { - /** - * Manages collaboration configurations. - * - * @interface CollaborationConfig - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface CollaborationConfig { - /** - * The name of collaboration edit object. - * - * @type { string } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - name: string; - } - - /** - * Obtains a collaboration edit object. - * - * @param { Context } context - Indicates the application context. - * @param { CollaborationConfig } config - Indicates the {@link CollaborationConfig} config related to this object. - * @returns { CollaborationEditObject } - Return the collaboration edit object. {@link CollaborationEditObject}. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - function getCollaborationEditObject(context: Context, config: CollaborationConfig): CollaborationEditObject; - - /** - * Deletes a collaboration edit object. - * - * @param { Context } context - Indicates the application context. - * @param { CollaborationConfig } config - Indicates the {@link CollaborationConfig} config related to this object. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - function deleteCollaborationEditObject(context: Context, config: CollaborationConfig): void; - - /** - * Manages undo redo manager configurations. - * - * @interface UndoRedoConfig - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface UndoRedoConfig { - /** - * Interval for capturing an operation in milliseconds. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - captureTimeout: number; - } - - /** - * Represents the relative position in the edit unit. - * - * @interface RelativePos - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface RelativePos { - /** - * The id of the parent in the relative position, null if parent is edit unit. - * - * @type { UniqueId | null } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - parentId: UniqueId | null; - - /** - * The name of the parent in the relative position, null if parent is not edit unit. - * - * @type { string | null } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - parentName: string | null; - - /** - * The id of the left or right in the relative position, null if left or right is null. - * - * @type { UniqueId | null } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - id: UniqueId | null; - - /** - * The position of the character binding to the relative position, default 0 means the character right after - * the relative position, less than 0 means the character left to the relative position, greater than 0 means - * the character right to the relative position. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - pos: number; - } - - /** - * The collaboration edit object record used to sync. - * - * @interface EditObjectRecord - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface EditObjectRecord { - /** - * Indicates the auto incrementing number of each record. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - cursor: number; - - /** - * The identifier used to distinguish the different clients. - * - * @type { string } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - id: string; - - /** - * The collaboration edit object record data. - * - * @type { Uint8Array } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - data: Uint8Array; - } - - /** - * Describes the predicates of query condition. - * - * @enum { number } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - enum Predicate { - /** - * EQUAL_TO: means to query records where record field is equal to the given field. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - EQUAL_TO = 0, - - /** - * NOT_EQUAL_TO: means to query records where record field is not equal to the given field. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - NOT_EQUAL_TO, - - /** - * GREATER_THAN: means to query records where record field is greater than the given field. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - GREATER_THAN, - - /** - * LESS_THAN: means to query records where record field is less than the given field. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - LESS_THAN, - - /** - * GREATER_THAN_OR_EQUAL_TO: means to query records where record field is greater than or equal to the given field. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - GREATER_THAN_OR_EQUAL_TO, - - /** - * LESS_THAN_OR_EQUAL_TO: means to query records where record field is less than or equal to the given field. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - LESS_THAN_OR_EQUAL_TO - } - - /** - * Describes the condition of a query request. - * - * @interface QueryCondition - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface QueryCondition { - /** - * The predicate of query condition. - * - * @type { Predicate } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - condition: Predicate; - - /** - * The edit object record field name of query condition. - * - * @type { string } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - fieldName: string; - - /** - * The edit object record field value of query condition. - * - * @type { string | number } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - fieldValue: string | number; - } - - /** - * Manages asset operation configurations. - * - * @interface AssetOperationConfig - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface AssetOperationConfig { - /** - * The path of asset. - * - * @type { string } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - path: string; - } - - /** - * Provides definition of data upload function. - * - * @typedef { function } BatchInsertHandler - * @param { Array<EditObjectRecord> } records - the inserted collaboration edit object records - * @returns { Promise<number> } the number of inserted data - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - type BatchInsertHandler = (records: Array<EditObjectRecord>) => Promise<number>; - - /** - * Provides definition of data query function. - * - * @typedef { function } QueryHandler - * @param { Array<QueryCondition> } queryConditions - the conditions when query data from cloud - * @returns { Promise<Array<EditObjectRecord>> } the collaboration edit object records queried from cloud - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - type QueryHandler = (queryConditions: Array<QueryCondition>) => Promise<Array<EditObjectRecord>>; - - /** - * Provides definition of asset operation function. - * - * @typedef { function } AssetHandler - * @param { AssetOperationConfig } config - the config of asset operation - * @returns { Promise<void> } the promise returned by the function. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - type AssetHandler = (config: AssetOperationConfig) => Promise<void>; - - /** - * Describes the handlers of CloudDB object. - * - * @interface CloudDB - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface CloudDB { - /** - * Provides ability of uploading data from local device to cloud. - * - * @type { BatchInsertHandler } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - batchInsert: BatchInsertHandler; - - /** - * Provides ability of querying data from cloud to local device. - * - * @type { QueryHandler } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - query: QueryHandler; - - /** - * Provides ability of downloading asset from cloud to local device. - * - * @type { AssetHandler } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - downloadAsset: AssetHandler; - - /** - * Provides ability of uploading asset from local device to cloud. - * - * @type { AssetHandler } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - uploadAsset: AssetHandler; - - /** - * Provides ability of deleting asset from cloud. - * - * @type { AssetHandler } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - deleteAsset: AssetHandler; - - /** - * Provides ability of deleting asset from local device. - * - * @type { AssetHandler } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - deleteLocalAsset: AssetHandler; - } - - /** - * Describes the status of a cloud sync progress. - * - * @enum { number } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - enum ProgressCode { - /** - * CLOUD_SYNC_SUCCESS: means the status of progress is success. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - CLOUD_SYNC_SUCCESS = 0, - - /** - * CLOUD_NOT_SET: means the CloudDB handlers are not set. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - CLOUD_NOT_SET, - - /** - * INTERNAL_ERROR: means the cloud sync progress meets internal error. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - INTERNAL_ERROR, - - /** - * EXTERNAL_ERROR: means the cloud sync progress meets error in CloudDB handlers. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - EXTERNAL_ERROR, - } - - /** - * Describes the progress status of a cloud sync operation. - * - * @interface ProgressDetail - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface ProgressDetail { - /** - * The status code of cloud sync operation. - * - * @type { ProgressCode } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - code: ProgressCode; - } - - /** - * Indicates the mode of cloud sync operation. - * - * @enum { number } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - enum SyncMode { - /** - * SYNC_MODE_PUSH: Indicates the data is pushed to remote from local device. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - SYNC_MODE_PUSH = 0, - - /** - * SYNC_MODE_PULL: Indicates the data is pulled from remote to local device. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - SYNC_MODE_PULL, - - /** - * SYNC_MODE_PULL_PUSH: Indicates the data is first pulled from remote, then followed by a push operation. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - SYNC_MODE_PULL_PUSH, - } - - /** - * Provides methods for managing the collaboration edit object. - * - * @interface CollaborationEditObject - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface CollaborationEditObject { - /** - * Get an edit unit of this collaboration edit object. - * - * @param { string } editUnitName - Indicates the name of the edit unit in collaboration edit object. - * @returns { EditUnit } Indicates the edit unit {@link EditUnit} related to this collaboration edit object. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getEditUnit(editUnitName: string): EditUnit; - - /** - * Get an undo redo manager of an edit unit in collaboration edit object. - * - * @param { string } editUnitName - Indicates the name of the edit unit in collaboration edit object. - * @param { UndoRedoConfig } config - Indicates the {@link UndoRedoConfig} config of the undo redo manager. - * @returns { UndoRedoManager } Indicates the {@link UndoRedoManager} undo redo manager of the edit unit. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getUndoRedoManager(editUnitName: string, config: UndoRedoConfig): UndoRedoManager; - - /** - * Delete an undo redo manager of an edit unit in collaboration edit object. - * - * @param { string } editUnitName - Indicates the name of the edit unit in collaboration edit object. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - deleteUndoRedoManager(editUnitName: string): void; - - /** - * Get local id in collaboration edit object. - * - * @returns { string } - local id. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getLocalId(): string; - - /** - * Apply update in collaboration edit object. - * - * @returns { Array<UpdatedNode> } - the array that contains the modified node, used to refresh the editor. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - applyUpdate(): Array<UpdatedNode>; - - /** - * Write update in collaboration edit object, used to process record pushed from remote. - * - * @param { EditObjectRecord } update - the collaboration edit object record. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - writeUpdate(update:EditObjectRecord): void; - - /** - * Register cloudDB handlers which need to be implemented. - * - * @param { CloudDB } cloudDB - Indicates the CloudDB handlers. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - setCloudDB(cloudDB: CloudDB): void; - - /** - * Synchronize data between local devices and cloud. - * - * @param { SyncMode } syncMode - Indicates the synchronization mode {@link SyncMode}. - * @param { Callback<ProgressDetail> } progress - Indicates the specified sync callback function. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - cloudSync(syncMode: SyncMode, progress: Callback<ProgressDetail>): void; - } - - /** - * Provides methods for managing edit unit in the collaboration edit object. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - class EditUnit { - /** - * Return the name of this edit unit. - * - * @returns { string } Indicates the name of this edit unit. - * @throws { BusinessError } 202 - Not system application. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getName(): string; - - /** - * Inserts nodes into the target edit unit in index location. - * - * @param { number } index - Indicates the index at which to start inserting. - * @param { Node[] } nodes - Indicates inserting new nodes. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - insertNodes(index: number, nodes: Node[]): void; - - /** - * Deletes continuous length of nodes and texts from the target edit unit in index location. - * - * @param { number } index - Indicates the index at which to start deleting. - * @param { number } length - Indicates deleting length. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - delete(index: number, length: number): void; - - /** - * Get the children nodes and texts in range [start, end) of this edit unit. - * - * @param { number } start - Indicates the start location. - * @param { number } end - Indicates the end location. - * @returns { Array<Node | Text> } Indicates the children nodes and texts. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getChildren(start: number, end: number): Array<Node | Text>; - - /** - * Get the json string result of this edit unit. - * - * @returns { string } Indicates the json string of this edit unit. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getJsonResult(): string; - - /** - * Get the relative position in the edit unit by the absolute position of the cursor on the editor. - * - * @param { number } absolutePos - Indicates the absolute position of the cursor on the editor. - * @returns { RelativePos } Relative position in the edit unit. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getRelativePos(absolutePos: number): RelativePos; - - /** - * Get the absolute position of the cursor on the editor by the relative position in the edit unit. - * - * @param { RelativePos } relativePos - Indicates the relative position in the edit unit. - * @returns { number } Absolute position of the cursor on the editor. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getAbsolutePos(relativePos: RelativePos): number; - } - - /** - * The unique identifier of current object. - * - * @interface UniqueId - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface UniqueId { - /** - * The identifier used to distinguish the different clients. - * - * @type { string } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - id: string; - - /** - * The clock of current object. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - clock: number; - } - - /** - * Attributes in node are stored in key-value pairs. - * - * @typedef { Record<string, string | number | boolean> } AttributesRecord - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - type AttributesRecord = Record<string, string | number | boolean>; - - /** - * Provides methods for managing node in the edit unit. - * - * @extends EditUnit - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - class Node extends EditUnit { - /** - * A parameterized constructor used to create a Node instance. - * - * @param { string } name - Indicates the name of this node. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - constructor(name: string); - - /** - * Returns the UniqueId of this node. - * - * @returns { UniqueId } Indicates the unique id of this node. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getId(): UniqueId; - - /** - * Inserts texts into the target edit unit in index location. - * - * @param { number } index - Indicates the index at which to start inserting. - * @param { Text[] } texts - Indicates inserting new texts. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - insertTexts(index: number, texts: Text[]): void; - - /** - * Sets or updates attributes into the target node. - * - * @param { AttributesRecord } attributes - Indicates the attribute names and values that is to be set. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - setAttributes(attributes: AttributesRecord): void; - - /** - * Removes attributes from the target node, including asset attribute. - * - * @param { string[] } attributeNames - Indicates the attribute names that is to be removed. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - removeAttributes(attributeNames: string[]): void; - - /** - * Returns all attribute name and value pairs of this node. - * - * @returns { AttributesRecord } Indicates all attribute name and value pairs. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getAttributes(): AttributesRecord; - - /** - * Sets or updates an asset into the target node. - * - * @param { string } assetKey - Indicates the asset key to be set. - * @param { string } assetValue - Indicates the asset value to be set. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - setAsset(assetKey: string, assetValue: string): void; - } - - /** - * Indicates possible format value types. - * - * @typedef { null | number | string | boolean } FormatValueType - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - type FormatValueType = null | number | string | boolean; - - /** - * Values in text format are stored in key-value pairs. - * - * @typedef { Record<string, FormatValueType> } TextFormat - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - type TextFormat = Record<string, FormatValueType>; - - /** - * Provides methods for managing text in the edit unit. - * - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - class Text { - /** - * A constructor used to create a Text instance. - * - * @throws { BusinessError } 202 - Not system application. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - constructor(); - - /** - * Returns the UniqueId of this text. - * - * @returns { UniqueId } Indicates the unique id of this text. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getId(): UniqueId; - - /** - * Inserts text with optional format into the target text in index location. - * - * @param { number } index - Indicates the index at which to start inserting. - * @param { string } text - Indicates the text to insert at the specified position. - * @param { TextFormat } format - Indicates the formatting information to apply on the inserted text. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - insert(index: number, text: string, format?: TextFormat): void; - - /** - * Deletes continuous length into the target text in index location. - * - * @param { number } index - Indicates the index at which to start inserting. - * @param { number } length - Indicates deleting length. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - delete(index: number, length: number): void; - - /** - * Formats continuous length into the target text from index location. - * - * @param { number } index - Indicates the index at which to start formatting. - * @param { number } length - Indicates formatting length. - * @param { TextFormat } format - Indicates the formatting information to apply. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - format(index: number, length: number, format: TextFormat): void; - - /** - * Get the plain string result without format of this text. - * - * @returns { string } Indicates the plain string result of this text. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getPlainText(): string; - - /** - * Get the json string result with format of this text. - * - * @returns { string } Indicates the json string result of this text. - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410001 - Unsupported operation. - * @throws { BusinessError } 15410002 - Index out of range. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - getJsonResult(): string; - } - - /** - * Provides methods for managing undo redo operations in the collaboration edit object. - * - * @interface UndoRedoManager - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface UndoRedoManager { - /** - * Undo last changes. - * - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - undo(): void; - - /** - * Redo last undo operation. - * - * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 15410000 - Internal error. - * @throws { BusinessError } 15410003 - Database error. - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - redo(): void; - } - - /** - * The updated node {@link Node} or text {@link Text}. - * - * @interface UpdatedNode - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - interface UpdatedNode { - /** - * The identifier used to distinguish the different edit unit. - * - * @type { string } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - editUnitName: string; - - /** - * The updated node {@link Node} or text {@link Text}. - * - * @type { Node | Text } - * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject - * @systemapi - * @since 18 - */ - node: Node | Text; - } -} - -export default collaborationEditObject; diff --git a/api/@ohos.data.dataShare.d.ts b/api/@ohos.data.dataShare.d.ts index 1270c3e03a5d54ce9705a99dfecd66d0f88d9b54..68c729dd8bfa8e8621c267a00f3d7b899ad9ca60 100644 --- a/api/@ohos.data.dataShare.d.ts +++ b/api/@ohos.data.dataShare.d.ts @@ -31,7 +31,8 @@ import { ValuesBucket } from './@ohos.data.ValuesBucket'; * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace dataShare { /** @@ -41,7 +42,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ interface DataShareHelperOptions { /** @@ -53,7 +55,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ isProxy?: boolean; /** @@ -77,12 +80,28 @@ declare namespace dataShare { * @param { AsyncCallback<DataShareHelper> } callback - {DataShareHelper}: The dataShareHelper for consumer. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700010 - The DataShareHelper is not initialized successfully. + * @throws { BusinessError } 15700010 - The DataShareHelper fails to be initialized. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly * @since 9 */ + /** + * Obtains the dataShareHelper. + * + * @param { Context } context - Indicates the application context. + * @param { string } uri - Indicates the path of the file to open. + * @param { AsyncCallback<DataShareHelper> } callback - {DataShareHelper}: The dataShareHelper for consumer. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameters types. + * @throws { BusinessError } 15700010 - The DataShareHelper fails to be initialized. + * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer + * @systemapi + * @stagemodelonly + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ function createDataShareHelper(context: Context, uri: string, callback: AsyncCallback<DataShareHelper>): void; /** * Obtains the dataShareHelper. @@ -93,12 +112,29 @@ declare namespace dataShare { * @param { AsyncCallback<DataShareHelper> } callback - {DataShareHelper}: The dataShareHelper for consumer. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700010 - The DataShareHelper is not initialized successfully. + * @throws { BusinessError } 15700010 - The DataShareHelper fails to be initialized. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly * @since 10 */ + /** + * Obtains the dataShareHelper. + * + * @param { Context } context - Indicates the application context. + * @param { string } uri - Indicates the path of the file to open. + * @param { DataShareHelperOptions } options - Indicates the optional config. + * @param { AsyncCallback<DataShareHelper> } callback - {DataShareHelper}: The dataShareHelper for consumer. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameters types. + * @throws { BusinessError } 15700010 - The DataShareHelper fails to be initialized. + * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer + * @systemapi + * @stagemodelonly + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ function createDataShareHelper( context: Context, uri: string, @@ -114,7 +150,7 @@ declare namespace dataShare { * @returns { Promise<DataShareHelper> } {DataShareHelper}: The dataShareHelper for consumer. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700010 - The DataShareHelper is not initialized successfully. + * @throws { BusinessError } 15700010 - The DataShareHelper fails to be initialized. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -129,12 +165,29 @@ declare namespace dataShare { * @returns { Promise<DataShareHelper> } {DataShareHelper}: The dataShareHelper for consumer. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700010 - The DataShareHelper is not initialized successfully. + * @throws { BusinessError } 15700010 - The DataShareHelper fails to be initialized. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly * @since 10 */ + /** + * Obtains the dataShareHelper. + * + * @param { Context } context - Indicates the application context. + * @param { string } uri - Indicates the path of the file to open. + * @param { DataShareHelperOptions } options - Indicates the optional config. + * @returns { Promise<DataShareHelper> } {DataShareHelper}: The dataShareHelper for consumer. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameters types. + * @throws { BusinessError } 15700010 - The DataShareHelper fails to be initialized. + * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer + * @systemapi + * @stagemodelonly + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ function createDataShareHelper( context: Context, uri: string, @@ -149,12 +202,28 @@ declare namespace dataShare { * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700011 - The URI is not exist. + * @throws { BusinessError } 15700011 - The URI does not exist. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly * @since 11 */ + /** + * Enables silent access dynamically. + * + * @param { Context } context - Indicates the application context. + * @param { string } uri - Indicates the uri of the data share silent proxy resource. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameters types. + * @throws { BusinessError } 15700011 - The URI does not exist. + * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer + * @systemapi + * @stagemodelonly + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ function enableSilentProxy(context: Context, uri?: string): Promise<void>; /** @@ -165,12 +234,28 @@ declare namespace dataShare { * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700011 - The URI is not exist. + * @throws { BusinessError } 15700011 - The URI does not exist. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly * @since 11 */ + /** + * Disables silent access dynamically. + * + * @param { Context } context - Indicates the application context. + * @param { string } uri - Indicates the uri of the data share silent proxy resource. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameters types. + * @throws { BusinessError } 15700011 - The URI does not exist. + * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer + * @systemapi + * @stagemodelonly + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 + */ function disableSilentProxy(context: Context, uri?: string): Promise<void>; /** @@ -459,7 +544,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ enum ChangeType { /** @@ -468,7 +554,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INSERT = 0, @@ -478,7 +565,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ DELETE, /** @@ -487,7 +575,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ UPDATE } @@ -498,7 +587,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ enum SubscriptionType { /** @@ -507,7 +597,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ SUBSCRIPTION_TYPE_EXACT_URI = 0, } @@ -519,7 +610,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ interface ChangeInfo { /** @@ -529,7 +621,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ type: ChangeType; @@ -540,7 +633,8 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ uri: string; /** @@ -550,19 +644,21 @@ declare namespace dataShare { * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ values: Array<ValuesBucket>; } /** - * DataShareHelper + * Provides a DataShareHelper interface to access data. * * @interface DataShareHelper * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ interface DataShareHelper { /** @@ -583,13 +679,14 @@ declare namespace dataShare { * @param { string } uri - Indicates the path of the data to operate. * @param { AsyncCallback<void> } callback - The callback of on. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'dataChange', uri: string, callback: AsyncCallback<void>): void; @@ -611,13 +708,14 @@ declare namespace dataShare { * @param { string } uri - Indicates the path of the data to operate. * @param { AsyncCallback<void> } callback - The callback of off. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'dataChange', uri: string, callback?: AsyncCallback<void>): void; /** @@ -628,13 +726,14 @@ declare namespace dataShare { * @param { string } uri - Indicates the path of the data to subscribe. * @param { AsyncCallback<ChangeInfo> } callback - Indicates the callback used to return the data change. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ on(event: 'dataChange', type:SubscriptionType, uri: string, callback: AsyncCallback<ChangeInfo>): void; @@ -648,11 +747,12 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ off(event: 'dataChange', type:SubscriptionType, uri: string, callback?: AsyncCallback<ChangeInfo>): void; @@ -664,7 +764,7 @@ declare namespace dataShare { * @param { Template } template - The template to add. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700011 - The URI is not exist. + * @throws { BusinessError } 15700011 - The URI does not exist. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -678,9 +778,9 @@ declare namespace dataShare { * @param { Template } template - The template to add. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700011 - The URI is not exist. + * @throws { BusinessError } 15700011 - The URI does not exist. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -695,7 +795,7 @@ declare namespace dataShare { * @param { string } subscriberId - The subscribe id. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700011 - The URI is not exist. + * @throws { BusinessError } 15700011 - The URI does not exist. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -708,9 +808,9 @@ declare namespace dataShare { * @param { string } subscriberId - The subscribe id. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700011 - The URI is not exist. + * @throws { BusinessError } 15700011 - The URI does not exist. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -744,7 +844,7 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -783,7 +883,7 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -822,7 +922,7 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -861,7 +961,7 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -883,7 +983,7 @@ declare namespace dataShare { * @param { AsyncCallback<Array<OperationResult>> } callback * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700012 - The data area is not exist. + * @throws { BusinessError } 15700012 - The data area does not exist. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -898,9 +998,9 @@ declare namespace dataShare { * @param { AsyncCallback<Array<OperationResult>> } callback * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700012 - The data area is not exist. + * @throws { BusinessError } 15700012 - The data area does not exist. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -921,7 +1021,7 @@ declare namespace dataShare { * @param { AsyncCallback<Array<OperationResult>> } callback * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700012 - The data area is not exist. + * @throws { BusinessError } 15700012 - The data area does not exist. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -935,9 +1035,9 @@ declare namespace dataShare { * @param { AsyncCallback<Array<OperationResult>> } callback * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700012 - The data area is not exist. + * @throws { BusinessError } 15700012 - The data area does not exist. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -958,7 +1058,7 @@ declare namespace dataShare { * @returns { Promise<Array<OperationResult>> } * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700012 - The data area is not exist. + * @throws { BusinessError } 15700012 - The data area does not exist. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -973,9 +1073,9 @@ declare namespace dataShare { * @returns { Promise<Array<OperationResult>> } * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700012 - The data area is not exist. + * @throws { BusinessError } 15700012 - The data area does not exist. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -990,7 +1090,7 @@ declare namespace dataShare { * @param { AsyncCallback<Array<PublishedItem>> } callback * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700012 - The data area is not exist. + * @throws { BusinessError } 15700012 - The data area does not exist. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1003,9 +1103,9 @@ declare namespace dataShare { * @param { AsyncCallback<Array<PublishedItem>> } callback * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700012 - The data area is not exist. + * @throws { BusinessError } 15700012 - The data area does not exist. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1020,7 +1120,7 @@ declare namespace dataShare { * @returns { Promise<Array<PublishedItem>> } * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700012 - The data area is not exist. + * @throws { BusinessError } 15700012 - The data area does not exist. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1033,9 +1133,9 @@ declare namespace dataShare { * @returns { Promise<Array<PublishedItem>> } * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700012 - The data area is not exist. + * @throws { BusinessError } 15700012 - The data area does not exist. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1067,7 +1167,7 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1099,7 +1199,7 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1131,7 +1231,7 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1163,7 +1263,7 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1199,11 +1299,12 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ query( uri: string, @@ -1240,11 +1341,12 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ query( uri: string, @@ -1278,11 +1380,12 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ update( uri: string, @@ -1317,11 +1420,12 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ update(uri: string, predicates: dataSharePredicates.DataSharePredicates, value: ValuesBucket): Promise<number>; @@ -1332,9 +1436,10 @@ declare namespace dataShare { * @returns {Promise<Record<string, Array<number>>>} {Record<string, Array<number>>}: The result set of batch operations. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 15700000 - Inner error. + * @throws { BusinessError } 15700000 - Inner error. Possible causes: 1.The internal status is abnormal; + * 2.The interface is incorrectly used; 3.Permission configuration error; 4.A system error. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1364,7 +1469,7 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1394,7 +1499,7 @@ declare namespace dataShare { * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly @@ -1428,7 +1533,7 @@ declare namespace dataShare { * @param { AsyncCallback<string> } callback - {string}: the normalized Uri, * if the DataShare supports uri normalization. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer @@ -1462,7 +1567,7 @@ declare namespace dataShare { * @param { string } uri - Indicates the {@link ohos.utils.net.Uri} object to normalize. * @returns { Promise<string> } {string}: the normalized Uri if the DataShare supports uri normalization; * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer @@ -1494,7 +1599,7 @@ declare namespace dataShare { * there is nothing to do; returns {@code null} if the data identified by the normalized {@code Uri} * cannot be found in the current environment. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer @@ -1526,7 +1631,7 @@ declare namespace dataShare { * returns {@code null} if the data identified by the normalized {@code Uri} cannot be found in the * current environment. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer @@ -1552,7 +1657,7 @@ declare namespace dataShare { * @param { string } uri - Indicates the {@link ohos.utils.net.Uri} object to notifyChange. * @param { AsyncCallback<void> } callback - The callback of notifyChange. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error.Mandatory parameters are left unspecified. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi @@ -1577,7 +1682,7 @@ declare namespace dataShare { * @param { string } uri - Indicates the {@link ohos.utils.net.Uri} object to notifyChange. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error.Mandatory parameters are left unspecified. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi @@ -1592,7 +1697,7 @@ declare namespace dataShare { * @param { ChangeInfo } data - Indicates the data change information. * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 15700013 - The DataShareHelper instance is already closed. - * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer @@ -1606,12 +1711,25 @@ declare namespace dataShare { * Close the connection between datashare and extension. * * @returns { Promise<void> } The promise returned by the function. - * @throws { BusinessError } 15700000 - Inner error. + * @throws { BusinessError } 15700000 - Inner error. Possible causes: 1.The internal status is abnormal; + * 2.The interface is incorrectly used; 3.Permission configuration error; 4.A system error. * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer * @systemapi * @stagemodelonly * @since 12 */ + /** + * Close the connection between datashare and extension. + * + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 15700000 - Inner error. Possible causes: 1.The internal status is abnormal; + * 2.The interface is incorrectly used; 3.Permission configuration error; 4.A system error. + * @syscap SystemCapability.DistributedDataManager.DataShare.Consumer + * @systemapi + * @stagemodelonly + * @since 19 + */ close(): Promise<void>; } } diff --git a/api/@ohos.data.dataSharePredicates.d.ts b/api/@ohos.data.dataSharePredicates.d.ts index 19fb6d0ee11f8ad5acd7025f3a093c002187141b..4844a98ec88457e0eed534968ef81cb89fd02a19 100644 --- a/api/@ohos.data.dataSharePredicates.d.ts +++ b/api/@ohos.data.dataSharePredicates.d.ts @@ -37,27 +37,53 @@ import { ValueType } from './@ohos.data.ValuesBucket'; * @crossplatform * @since 12 */ +/** + * This module provides data share services based on the ExtensionAbility. + * + * @namespace dataSharePredicates + * @syscap SystemCapability.DistributedDataManager.DataShare.Core + * @StageModelOnly + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ declare namespace dataSharePredicates { /** - * Manages relational database configurations. + * Provides a filter object to query data in a database by using DataShare APIs. + * <strong>This type is not multi-thread safe. If a DataSharePredicates instance is operated by multiple threads + * at the same time in an application, use a lock for it.</strong> * * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @StageModelOnly * @since 10 */ /** - * Manages relational database configurations. + * Provides a filter object to query data in a database by using DataShare APIs. + * <strong>This type is not multi-thread safe. If a DataSharePredicates instance is operated by multiple threads + * at the same time in an application, use a lock for it.</strong> * * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @StageModelOnly * @crossplatform * @since 12 */ + /** + * Manages relational database configurations. + * + * @syscap SystemCapability.DistributedDataManager.DataShare.Core + * @StageModelOnly + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ class DataSharePredicates { /** * Configure the DataSharePredicates to match the field whose data type is ValueType and value is equal * to a specified value. * This method is similar to = of the SQL statement. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name in the database table. * @param { ValueType } value - Indicates the value to match with the DataSharePredicates. @@ -70,6 +96,7 @@ declare namespace dataSharePredicates { * Configure the DataSharePredicates to match the field whose data type is ValueType and value is equal * to a specified value. * This method is similar to = of the SQL statement. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name in the database table. * @param { ValueType } value - Indicates the value to match with the DataSharePredicates. @@ -79,12 +106,29 @@ declare namespace dataSharePredicates { * @crossplatform * @since 12 */ + /** + * Configure the DataSharePredicates to match the field whose data type is ValueType and value is equal + * to a specified value. + * This method is similar to = of the SQL statement. + * Currently only used for RDB and KVDB(schema). + * + * @param { string } field - Indicates the column name in the database table. + * @param { ValueType } value - Indicates the value to match with the DataSharePredicates. + * @returns { DataSharePredicates } Returns the DataSharePredicates that match the specified field. + * @syscap SystemCapability.DistributedDataManager.DataShare.Core + * @StageModelOnly + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ equalTo(field: string, value: ValueType): DataSharePredicates; /** * Configure the DataSharePredicates to match the field whose data type is ValueType and value is unequal to * a specified value. * This method is similar to != of the SQL statement. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name in the database table. * @param { ValueType } value - Indicates the value to match with the DataSharePredicates. @@ -92,19 +136,22 @@ declare namespace dataSharePredicates { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ notEqualTo(field: string, value: ValueType): DataSharePredicates; /** * Adds a left parenthesis to the DataSharePredicates. * This method is similar to ( of the SQL statement and needs to be used together with endWrap(). + * Currently only used for RDB. * * @returns { DataSharePredicates } Returns the DataSharePredicates with the left parenthesis. * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ beginWrap(): DataSharePredicates; @@ -112,30 +159,35 @@ declare namespace dataSharePredicates { * Adds a right parenthesis to the DataSharePredicates. * This method is similar to ) of the SQL statement and needs to be used together * with beginWrap(). + * Currently only used for RDB. * * @returns { DataSharePredicates } Returns the DataSharePredicates with the right parenthesis. * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ endWrap(): DataSharePredicates; /** * Adds an or condition to the DataSharePredicates. * This method is similar to or of the SQL statement. + * Currently only used for RDB and KVDB(schema). * * @returns { DataSharePredicates } Returns the DataSharePredicates with the or condition. * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ or(): DataSharePredicates; /** * Adds an and condition to the DataSharePredicates. * This method is similar to and of the SQL statement. + * Currently only used for RDB and KVDB(schema). * * @returns { DataSharePredicates } Returns the DataSharePredicates with the and condition. * @syscap SystemCapability.DistributedDataManager.DataShare.Core @@ -145,6 +197,7 @@ declare namespace dataSharePredicates { /** * Adds an and condition to the DataSharePredicates. * This method is similar to and of the SQL statement. + * Currently only used for RDB and KVDB(schema). * * @returns { DataSharePredicates } Returns the DataSharePredicates with the and condition. * @syscap SystemCapability.DistributedDataManager.DataShare.Core @@ -152,12 +205,26 @@ declare namespace dataSharePredicates { * @crossplatform * @since 12 */ + /** + * Adds an and condition to the DataSharePredicates. + * This method is similar to and of the SQL statement. + * Currently only used for RDB and KVDB(schema). + * + * @returns { DataSharePredicates } Returns the DataSharePredicates with the and condition. + * @syscap SystemCapability.DistributedDataManager.DataShare.Core + * @StageModelOnly + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ and(): DataSharePredicates; /** * Configure the DataSharePredicates to match the field whose data type is string and value * contains a specified value. * This method is similar to contains of the SQL statement. + * Currently only used for RDB. * * @param { string } field - Indicates the column name in the database table. * @param { string } value - Indicates the value to match with the DataSharePredicates. @@ -165,7 +232,8 @@ declare namespace dataSharePredicates { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ contains(field: string, value: string): DataSharePredicates; @@ -173,6 +241,7 @@ declare namespace dataSharePredicates { * Configure the DataSharePredicates to match the field whose data type is string and value starts * with a specified string. * This method is similar to value% of the SQL statement. + * Currently only used for RDB. * * @param { string } field - Indicates the column name in the database table. * @param { string } value - Indicates the value to match with the DataSharePredicates. @@ -188,6 +257,7 @@ declare namespace dataSharePredicates { * Configure the DataSharePredicates to match the field whose data type is string and value * ends with a specified string. * This method is similar to %value of the SQL statement. + * Currently only used for RDB. * * @param { string } field - Indicates the column name in the database table. * @param { string } value - Indicates the value to match with the DataSharePredicates. @@ -202,6 +272,7 @@ declare namespace dataSharePredicates { /** * Configure the DataSharePredicates to match the fields whose value is null. * This method is similar to is null of the SQL statement. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name in the database table. * @returns { DataSharePredicates } Returns the DataSharePredicates that match the specified field. @@ -215,6 +286,7 @@ declare namespace dataSharePredicates { /** * Configure the DataSharePredicates to match the specified fields whose value is not null. * This method is similar to is not null of the SQL statement. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name in the database table. * @returns { DataSharePredicates } Returns the DataSharePredicates that match the specified field. @@ -229,6 +301,7 @@ declare namespace dataSharePredicates { * Configure the DataSharePredicates to match the fields whose data type is string and value is * similar to a specified string. * This method is similar to like of the SQL statement. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name in the database table. * @param { string } value - Indicates the value to match with the DataSharePredicates. The percent sign (%) in the value @@ -237,7 +310,8 @@ declare namespace dataSharePredicates { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ like(field: string, value: string): DataSharePredicates; @@ -245,6 +319,7 @@ declare namespace dataSharePredicates { * Configure the DataSharePredicates to match the fields whose data type is string and value is * not similar to a specified string. * This method is similar to unlike of the SQL statement. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name in the database table. * @param { string } value - Indicates the value to match with the DataSharePredicates. The percent sign (%) in the value @@ -261,6 +336,7 @@ declare namespace dataSharePredicates { * Configure DataSharePredicates to match the specified field whose data type is string and the value contains * a wildcard. * Different from like, the input parameters of this method are case-sensitive. + * Currently only used for RDB. * * @param { string } field - Indicates the column name in the database table. * @param { string } value - Indicates the value to match with DataSharePredicates. @@ -274,6 +350,7 @@ declare namespace dataSharePredicates { /** * Restricts the value of the field to the range between low value and high value. + * Currently only used for RDB. * * @param { string } field - Indicates the column name. * @param { ValueType } low - Indicates the minimum value. @@ -289,6 +366,7 @@ declare namespace dataSharePredicates { /** * Configure DataSharePredicates to match the specified field whose data type is int and value is * out of a given range. + * Currently only used for RDB. * * @param { string } field - Indicates the column name in the database table. * @param { ValueType } low - Indicates the minimum value to match with DataSharePredicates. @@ -303,6 +381,7 @@ declare namespace dataSharePredicates { /** * Restricts the value of the field to be greater than the specified value. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name. * @param { ValueType } value - Indicates the String field. @@ -310,12 +389,14 @@ declare namespace dataSharePredicates { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ greaterThan(field: string, value: ValueType): DataSharePredicates; /** * Restricts the value of the field to be smaller than the specified value. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name. * @param { ValueType } value - Indicates the String field. @@ -323,12 +404,14 @@ declare namespace dataSharePredicates { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ lessThan(field: string, value: ValueType): DataSharePredicates; /** * Restricts the value of the field to be greater than or equal to the specified value. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name. * @param { ValueType } value - Indicates the String field. @@ -336,12 +419,14 @@ declare namespace dataSharePredicates { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ greaterThanOrEqualTo(field: string, value: ValueType): DataSharePredicates; /** * Restricts the value of the field to be smaller than or equal to the specified value. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name. * @param { ValueType } value - Indicates the String field. @@ -356,6 +441,7 @@ declare namespace dataSharePredicates { /** * Restricts the ascending order of the return list. When there are several orders, * the one close to the head has the highest priority. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name for sorting the return list. * @returns { DataSharePredicates } Returns the SQL query statement with the specified DataSharePredicates. @@ -366,6 +452,7 @@ declare namespace dataSharePredicates { /** * Restricts the ascending order of the return list. When there are several orders, * the one close to the head has the highest priority. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name for sorting the return list. * @returns { DataSharePredicates } Returns the SQL query statement with the specified DataSharePredicates. @@ -374,11 +461,26 @@ declare namespace dataSharePredicates { * @crossplatform * @since 12 */ + /** + * Restricts the ascending order of the return list. When there are several orders, + * the one close to the head has the highest priority. + * Currently only used for RDB and KVDB(schema). + * + * @param { string } field - Indicates the column name for sorting the return list. + * @returns { DataSharePredicates } Returns the SQL query statement with the specified DataSharePredicates. + * @syscap SystemCapability.DistributedDataManager.DataShare.Core + * @StageModelOnly + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ orderByAsc(field: string): DataSharePredicates; /** * Restricts the descending order of the return list. When there are several orders, * the one close to the head has the highest priority. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name for sorting the return list. * @returns { DataSharePredicates } Returns the SQL query statement with the specified DataSharePredicates. @@ -389,6 +491,7 @@ declare namespace dataSharePredicates { /** * Restricts the descending order of the return list. When there are several orders, * the one close to the head has the highest priority. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name for sorting the return list. * @returns { DataSharePredicates } Returns the SQL query statement with the specified DataSharePredicates. @@ -397,10 +500,25 @@ declare namespace dataSharePredicates { * @crossplatform * @since 12 */ + /** + * Restricts the descending order of the return list. When there are several orders, + * the one close to the head has the highest priority. + * Currently only used for RDB and KVDB(schema). + * + * @param { string } field - Indicates the column name for sorting the return list. + * @returns { DataSharePredicates } Returns the SQL query statement with the specified DataSharePredicates. + * @syscap SystemCapability.DistributedDataManager.DataShare.Core + * @StageModelOnly + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ orderByDesc(field: string): DataSharePredicates; /** * Restricts each row of the query result to be unique. + * Currently only used for RDB. * * @returns { DataSharePredicates } Returns the SQL query statement with the specified DataSharePredicates. * @syscap SystemCapability.DistributedDataManager.DataShare.Core @@ -412,6 +530,7 @@ declare namespace dataSharePredicates { /** * Construct a query object to specify the number of results and the starting position. + * Currently only used for RDB and KVDB(schema). * * @param { number } total - Represents the specified number of results. * @param { number } offset - Indicates the starting position. @@ -422,6 +541,7 @@ declare namespace dataSharePredicates { */ /** * Construct a query object to specify the number of results and the starting position. + * Currently only used for RDB and KVDB(schema). * * @param { number } total - Represents the specified number of results. * @param { number } offset - Indicates the starting position. @@ -431,23 +551,40 @@ declare namespace dataSharePredicates { * @crossplatform * @since 12 */ + /** + * Construct a query object to specify the number of results and the starting position. + * Currently only used for RDB and KVDB(schema). + * + * @param { number } total - Represents the specified number of results. + * @param { number } offset - Indicates the starting position. + * @returns { DataSharePredicates } Returns the query object. + * @syscap SystemCapability.DistributedDataManager.DataShare.Core + * @StageModelOnly + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ limit(total: number, offset: number): DataSharePredicates; /** * Configure {@code DataSharePredicates} to group query results by specified columns. + * Currently only used for RDB. * * @param { Array<string> } fields - Indicates the specified columns by which query results are grouped. * @returns { DataSharePredicates } Returns the DataSharePredicates with the specified columns by which query results are grouped. * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ groupBy(fields: Array<string>): DataSharePredicates; /** * Configure {@code DataSharePredicates} to specify the index column. * Before using this method, you need to create an index column. + * Currently only used for RDB. * * @param { string } field - Indicates the name of the index column. * @returns { DataSharePredicates } Returns DataSharePredicates with the specified index column. @@ -461,6 +598,7 @@ declare namespace dataSharePredicates { /** * Configure {@code DataSharePredicates} to match the specified field whose data type is ValueType array and values * are within a given range. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name in the database table. * @param { Array<ValueType> } value - Indicates the values to match with DataSharePredicates. @@ -472,6 +610,7 @@ declare namespace dataSharePredicates { /** * Configure {@code DataSharePredicates} to match the specified field whose data type is ValueType array and values * are within a given range. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name in the database table. * @param { Array<ValueType> } value - Indicates the values to match with DataSharePredicates. @@ -481,11 +620,27 @@ declare namespace dataSharePredicates { * @crossplatform * @since 12 */ + /** + * Configure {@code DataSharePredicates} to match the specified field whose data type is ValueType array and values + * are within a given range. + * Currently only used for RDB and KVDB(schema). + * + * @param { string } field - Indicates the column name in the database table. + * @param { Array<ValueType> } value - Indicates the values to match with DataSharePredicates. + * @returns { DataSharePredicates } Returns DataSharePredicates that matches the specified field. + * @syscap SystemCapability.DistributedDataManager.DataShare.Core + * @StageModelOnly + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ in(field: string, value: Array<ValueType>): DataSharePredicates; /** * Configure {@code DataSharePredicates} to match the specified field whose data type is String array and values * are out of a given range. + * Currently only used for RDB and KVDB(schema). * * @param { string } field - Indicates the column name in the database table. * @param { Array<ValueType> } value - Indicates the values to match with DataSharePredicates. @@ -493,12 +648,14 @@ declare namespace dataSharePredicates { * @syscap SystemCapability.DistributedDataManager.DataShare.Core * @systemapi * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ notIn(field: string, value: Array<ValueType>): DataSharePredicates; /** * Configure {@code DataSharePredicates} Creates a query condition using the specified key prefix. + * Currently only used for KVDB. * * @param { string } prefix - Represents the specified key prefix. * @returns { DataSharePredicates } Returns the query object. @@ -511,6 +668,7 @@ declare namespace dataSharePredicates { /** * Configure {@code DataSharePredicates} to match the specified value whose key is within a given range. + * Currently only used for KVDB. * * @param { Array<string> } keys - Represents the key names. * @returns { DataSharePredicates } Returns the query object. diff --git a/api/@ohos.data.distributedDataObject.d.ts b/api/@ohos.data.distributedDataObject.d.ts index 34b855caa54b874efa76d770c672b4f51856da12..25a4a53940990481db9d9f2569d1207a117c6142 100644 --- a/api/@ohos.data.distributedDataObject.d.ts +++ b/api/@ohos.data.distributedDataObject.d.ts @@ -177,6 +177,31 @@ declare namespace distributedDataObject { sessionId: string; } + /** + * Indicates the observer of object data changed. + * + * @typedef { function } ChangeCallback + * @param { string } sessionId - The sessionId of the changed object. + * @param { Array<string> } fields - Property names of changed data. + * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject + * @since 20 + */ + type DataObserver = (sessionId: string, fields: Array<string>) => void; + + /** + * Indicates the observer of object status changed. + * + * @typedef { function } StatusObserver + * @param { string } sessionId - The sessionId of the changed object. + * @param { string } networkId - The networkId of the changed device. + * @param { string } status 'online' The object became online on the device and data can be synced to the device; + * 'offline' The object became offline on the device and the object can not sync any data; + * 'restored' The object restored success. + * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject + * @since 20 + */ + type StatusObserver = (sessionId: string, networkId: string, status: string) => void; + /** * Object create by {@link createDistributedObject}. * @@ -321,6 +346,15 @@ declare namespace distributedDataObject { * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject * @since 9 */ + /** + * Leave all session. + * + * @param {AsyncCallback<void>} callback - The callback of setSessionId. + * @throws {BusinessError} 401 - Parameter error. Incorrect parameter types. + * @throws {BusinessError} 15400001 - Failed to create the in-memory database. + * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject + * @since 20 + */ setSessionId(callback: AsyncCallback<void>): void; /** @@ -520,6 +554,76 @@ declare namespace distributedDataObject { * @since 11 */ bindAssetStore(assetKey: string, bindInfo: BindInfo): Promise<void>; + + /** + * On watch of change. + * + * @param { 'change' } type - Event type, fixed as 'change', indicates data change. + * @param { DataObserver } callback - The observer of object data changed. + * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject + * @since 20 + */ + on(type: 'change', callback: DataObserver): void; + + /** + * Off watch of change. + * + * @param { 'change' } type - Event type, fixed as 'change', indicates data change. + * @param { DataObserver } callback - The observer of object data changed, if not null, off the callback, if undefined, off all callbacks. + * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject + * @since 20 + */ + off(type: 'change', callback?: DataObserver): void; + + /** + * On watch of status. + * + * @param { 'status' } type - Event type, fixed as 'status', indicates the online and offline of the object. + * @param { StatusObserver } callback - The observer of object status changed. + * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject + * @since 20 + */ + on(type: 'status', callback: StatusObserver): void; + + /** + * Off watch of status. + * + * @param { 'status' } type - Event type, fixed as 'status', indicates the online and offline of the object. + * @param { StatusObserver } callback - The observer of object status changed, if not null, off the callback, if undefined, off all callbacks. + * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject + * @since 20 + */ + off(type: 'status', callback?: StatusObserver): void; + + /** + * Mark an attribute of a distributed object as an asset type. This interface must be called before setSessionId. + * + * @param { string } assetKey - Indicates the key of the asset type in Object. + * @param { string } uri - Indicates the uri of asset. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 15400002 - Parameter error. Possible causes: + * 1. The assetKey is invalid, such as ""; + * 2. The uri is invalid, such as "". + * @throws {BusinessError} 15400003 - The sessionId of the distributed object has been set. + * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject + * @since 20 + */ + setAsset(assetKey: string, uri: string): Promise<void>; + + /** + * Marks an attribute of a distributed object as an asset array type. This interface must be called before setSessionId. + * + * @param { string } assetsKey - Indicates the key of the asset type in Object. + * @param { Array<string> } uris - Indicates the uri array of asset. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 15400002 - Parameter error. Possible causes: + * 1. The assetKey is invalid, such as ""; + * 2. The uris is invalid, such as the length of uris is more than 50. + * @throws {BusinessError} 15400003 - The sessionId of the distributed object has been set. + * @syscap SystemCapability.DistributedDataManager.DataObject.DistributedObject + * @since 20 + */ + setAssets(assetsKey: string, uris: Array<string>): Promise<void>; } } diff --git a/api/@ohos.data.distributedKVStore.d.ts b/api/@ohos.data.distributedKVStore.d.ts index c62187db22f2f45b9163e7e6e79de74b08883a64..7c1b0573d54e5a40ca32f32f942730febf7fafa6 100644 --- a/api/@ohos.data.distributedKVStore.d.ts +++ b/api/@ohos.data.distributedKVStore.d.ts @@ -586,7 +586,8 @@ declare namespace distributedKVStore { * <p>Add a child node to makes this node a non-leaf node and field value will be ignored if it has a child node. * * @param { FieldNode } child - The field node to append. - * @returns { boolean } Returns true if the child node is successfully added to this {@code FieldNode} and false otherwise. + * @returns { boolean } Returns true if the child node is successfully added to this {@code FieldNode} + * and false otherwise. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.KVStore.DistributedKVStore @@ -694,11 +695,11 @@ declare namespace distributedKVStore { /** * Moves the read position by a relative offset to the current position. * - * @param { number } offset - Indicates the relative offset to the current position. A negative offset indicates moving - * backwards, and a positive offset indicates moving forwards. For example, if the current position is entry 1 and - * this offset is 2, the destination position will be entry 3; if the current position is entry 3 and this offset is -2, - * the destination position will be entry 1. The valid final position after moving forwards starts with 0. If the - * final position is invalid, false will be returned. + * @param { number } offset - Indicates the relative offset to the current position. A negative offset indicates + * moving backwards, and a positive offset indicates moving forwards. For example, if the current position is entry + * 1 and this offset is 2, the destination position will be entry 3; if the current position is entry 3 and this + * offset is -2, the destination position will be entry 1. The valid final position after moving forwards starts + * with 0. If the final position is invalid, false will be returned. * @returns { boolean } Returns true if the operation succeeds; return false otherwise. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. @@ -793,7 +794,8 @@ declare namespace distributedKVStore { reset(): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is equal to the specified long value. + * Constructs a {@code Query} object to query entries with the specified field whose value is equal to the + * specified long value. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { number | string | boolean } value - Indicates the value to be compared. @@ -807,7 +809,8 @@ declare namespace distributedKVStore { equalTo(field: string, value: number | string | boolean): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is not equal to the specified int value. + * Constructs a {@code Query} object to query entries with the specified field whose value is not equal to the + * specified int value. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { number | string | boolean } value - Indicates the value to be compared. @@ -821,8 +824,8 @@ declare namespace distributedKVStore { notEqualTo(field: string, value: number | string | boolean): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is greater than or equal to the - * specified int value. + * Constructs a {@code Query} object to query entries with the specified field whose value is greater than or + * equal to the specified int value. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { number | string | boolean } value - Indicates the value to be compared. @@ -836,7 +839,8 @@ declare namespace distributedKVStore { greaterThan(field: string, value: number | string | boolean): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is less than the specified int value. + * Constructs a {@code Query} object to query entries with the specified field whose value is less than the + * specified int value. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { number | string } value - Indicates the value to be compared. @@ -865,8 +869,8 @@ declare namespace distributedKVStore { greaterThanOrEqualTo(field: string, value: number | string): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is less than or equal to the - * specified int value. + * Constructs a {@code Query} object to query entries with the specified field whose value is less than or + * equal to the specified int value. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { number | string } value - Indicates the value to be compared. @@ -893,7 +897,8 @@ declare namespace distributedKVStore { isNull(field: string): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is within the specified int value list. + * Constructs a {@code Query} object to query entries with the specified field whose value is within the specified + * int value list. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { number[] } valueList - Indicates the int value list. @@ -907,7 +912,8 @@ declare namespace distributedKVStore { inNumber(field: string, valueList: number[]): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is within the specified string value list. + * Constructs a {@code Query} object to query entries with the specified field whose value is within the specified + * string value list. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { string[] } valueList - Indicates the string value list. @@ -921,7 +927,8 @@ declare namespace distributedKVStore { inString(field: string, valueList: string[]): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is not within the specified int value list. + * Constructs a {@code Query} object to query entries with the specified field whose value is not within the + * specified int value list. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { number[] } valueList - Indicates the int value list. @@ -935,7 +942,8 @@ declare namespace distributedKVStore { notInNumber(field: string, valueList: number[]): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is not within the specified string value list. + * Constructs a {@code Query} object to query entries with the specified field whose value is not within the + * specified string value list. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { string[] } valueList - Indicates the string value list. @@ -949,7 +957,8 @@ declare namespace distributedKVStore { notInString(field: string, valueList: string[]): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is similar to the specified string value. + * Constructs a {@code Query} object to query entries with the specified field whose value is similar to the + * specified string value. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { string } value - Indicates the string value. @@ -963,7 +972,8 @@ declare namespace distributedKVStore { like(field: string, value: string): Query; /** - * Constructs a {@code Query} object to query entries with the specified field whose value is not similar to the specified string value. + * Constructs a {@code Query} object to query entries with the specified field whose value is not similar to the + * specified string value. * * @param { string } field - Indicates the field, which cannot contain ^. * @param { string } value - Indicates the string value. @@ -1025,8 +1035,12 @@ declare namespace distributedKVStore { /** * Constructs a {@code Query} object to specify the number of results and the start position. * - * @param { number } total - Indicates the number of results. - * @param { number } offset - Indicates the start position. + * @param { number } total - Maximum number of results to query. The value must be a non-negative integer. + * If the input value is less than 0, the number of results is not limited. + * @param { number } offset - Start position of the query result. By default, + * the start position is the beginning of the result set. If **offset** is a negative number, + * the start position is the beginning of the result set. If **offset** exceeds the end of the result set, + * the query result is empty. * @returns { Query } Returns the {@coed Query} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. @@ -1049,8 +1063,8 @@ declare namespace distributedKVStore { /** * Creates a query condition group with a left bracket. - * <p>Multiple query conditions in an {@code Query} object can be grouped. The query conditions in a group can be used as a - * whole to combine with other query conditions. + * <p>Multiple query conditions in an {@code Query} object can be grouped. The query conditions in a group can + * beused as a whole to combine with other query conditions. * * @returns { Query } Returns the {@coed Query} object. * @syscap SystemCapability.DistributedDataManager.KVStore.Core @@ -1060,8 +1074,8 @@ declare namespace distributedKVStore { /** * Creates a query condition group with a right bracket. - * <p>Multiple query conditions in an {@code Query} object can be grouped. The query conditions in a group can be used as a - * whole to combine with other query conditions. + * <p>Multiple query conditions in an {@code Query} object can be grouped. The query conditions in a group can + * be used as a whole to combine with other query conditions. * * @returns { Query } Returns the {@coed Query} object. * @syscap SystemCapability.DistributedDataManager.KVStore.Core @@ -1134,7 +1148,8 @@ declare namespace distributedKVStore { interface SingleKVStore { /** * Writes a key-value pair of the string type into the {@code SingleKVStore} database. - * <p>If you do not want to synchronize this key-value pair to other devices, set the write option in the local database. + * <p>If you do not want to synchronize this key-value pair to other devices, set the write option in the local + * database. * * @param { string } key - Indicates the key. Length must be less than {@code MAX_KEY_LENGTH}. * Spaces before and after the key will be cleared. @@ -1150,7 +1165,8 @@ declare namespace distributedKVStore { */ /** * Writes a key-value pair of the string type into the {@code SingleKVStore} database. - * <p>If you do not want to synchronize this key-value pair to other devices, set the write option in the local database. + * <p>If you do not want to synchronize this key-value pair to other devices, set the write option in the local + * database. * * @param { string } key - Indicates the key. Length must be less than {@code MAX_KEY_LENGTH}. * Spaces before and after the key will be cleared. @@ -1169,7 +1185,8 @@ declare namespace distributedKVStore { /** * Writes a key-value pair of the string type into the {@code SingleKVStore} database. - * <p>If you do not want to synchronize this key-value pair to other devices, set the write option in the local database. + * <p>If you do not want to synchronize this key-value pair to other devices, set the write option in the local + * database. * * @param { string } key - Indicates the key. Length must be less than {@code MAX_KEY_LENGTH}. * Spaces before and after the key will be cleared. @@ -1185,7 +1202,8 @@ declare namespace distributedKVStore { */ /** * Writes a key-value pair of the string type into the {@code SingleKVStore} database. - * <p>If you do not want to synchronize this key-value pair to other devices, set the write option in the local database. + * <p>If you do not want to synchronize this key-value pair to other devices, set the write option in the local + * database. * * @param { string } key - Indicates the key. Length must be less than {@code MAX_KEY_LENGTH}. * Spaces before and after the key will be cleared. @@ -1263,7 +1281,8 @@ declare namespace distributedKVStore { * @param { AsyncCallback<void> } callback - the callback of putBatch. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @syscap SystemCapability.DistributedDataManager.KVStore.Core @@ -1278,7 +1297,8 @@ declare namespace distributedKVStore { * @param { AsyncCallback<void> } callback - the callback of putBatch. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. @@ -1296,7 +1316,8 @@ declare namespace distributedKVStore { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @syscap SystemCapability.DistributedDataManager.KVStore.Core @@ -1311,7 +1332,8 @@ declare namespace distributedKVStore { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. @@ -1391,7 +1413,8 @@ declare namespace distributedKVStore { * @param { AsyncCallback<void> } callback - the callback of delete. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @syscap SystemCapability.DistributedDataManager.DataShare.Provider @@ -1406,7 +1429,8 @@ declare namespace distributedKVStore { * @param { AsyncCallback<void> } callback - the callback of delete. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. @@ -1424,7 +1448,8 @@ declare namespace distributedKVStore { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @syscap SystemCapability.DistributedDataManager.DataShare.Provider @@ -1439,7 +1464,8 @@ declare namespace distributedKVStore { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. @@ -1513,7 +1539,8 @@ declare namespace distributedKVStore { * synchronized from remote devices. This operation does not synchronize data to other databases or affect * subsequent data synchronization. * - * @param { string } deviceId - Identifies the device whose data is to be removed and the value cannot be the current device ID. + * @param { string } deviceId - Identifies the device whose data is to be removed and the value cannot be the + * current device ID. * @param { AsyncCallback<void> } callback - the callback of removeDeviceData. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Parameter verification failed. @@ -1528,7 +1555,8 @@ declare namespace distributedKVStore { * synchronized from remote devices. This operation does not synchronize data to other databases or affect * subsequent data synchronization. * - * @param { string } deviceId - Identifies the device whose data is to be removed and the value cannot be the current device ID. + * @param { string } deviceId - Identifies the device whose data is to be removed and the value cannot be the + * current device ID. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Parameter verification failed. @@ -1633,7 +1661,8 @@ declare namespace distributedKVStore { getEntries(query: Query): Promise<Entry[]>; /** - * Obtains the result set with a specified prefix from a {@code SingleKVStore} database. The {@code KVStoreResultSet} + * Obtains the result set with a specified prefix from a {@code SingleKVStore} database. + * The {@code KVStoreResultSet} * object can be used to query all key-value pairs that meet the search criteria. Each {@code SingleKVStore} * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created * four objects, calling this method will return a failure. Therefore, you are advised to call the closeResultSet @@ -1650,7 +1679,8 @@ declare namespace distributedKVStore { * @since 9 */ /** - * Obtains the result set with a specified prefix from a {@code SingleKVStore} database. The {@code KVStoreResultSet} + * Obtains the result set with a specified prefix from a {@code SingleKVStore} database. + * The {@code KVStoreResultSet} * object can be used to query all key-value pairs that meet the search criteria. Each {@code SingleKVStore} * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created * four objects, calling this method will return a failure. Therefore, you are advised to call the closeResultSet @@ -1670,7 +1700,8 @@ declare namespace distributedKVStore { getResultSet(keyPrefix: string, callback: AsyncCallback<KVStoreResultSet>): void; /** - * Obtains the result set with a specified prefix from a {@code SingleKVStore} database. The {@code KVStoreResultSet} + * Obtains the result set with a specified prefix from a {@code SingleKVStore} database. + * The {@code KVStoreResultSet} * object can be used to query all key-value pairs that meet the search criteria. Each {@code SingleKVStore} * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created * four objects, calling this method will return a failure. Therefore, you are advised to call the closeResultSet @@ -1687,7 +1718,8 @@ declare namespace distributedKVStore { * @since 9 */ /** - * Obtains the result set with a specified prefix from a {@code SingleKVStore} database. The {@code KVStoreResultSet} + * Obtains the result set with a specified prefix from a {@code SingleKVStore} database. + * The {@code KVStoreResultSet} * object can be used to query all key-value pairs that meet the search criteria. Each {@code SingleKVStore} * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created * four objects, calling this method will return a failure. Therefore, you are advised to call the closeResultSet @@ -1772,7 +1804,8 @@ declare namespace distributedKVStore { * object matching the specified {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @syscap SystemCapability.DistributedDataManager.DataShare.Provider @@ -1788,7 +1821,8 @@ declare namespace distributedKVStore { * object matching the specified {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100001 - Over max limits. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. @@ -1807,7 +1841,8 @@ declare namespace distributedKVStore { * object matching the specified {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @syscap SystemCapability.DistributedDataManager.DataShare.Provider @@ -1823,7 +1858,8 @@ declare namespace distributedKVStore { * object matching the specified {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100001 - Over max limits. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. @@ -2208,7 +2244,8 @@ declare namespace distributedKVStore { * Register a databases synchronization callback to the database. * <p> Sync result is returned through asynchronous callback. * - * @param { 'syncComplete' } event - Subscribed event name, fixed as 'syncComplete', indicates the synchronization completion event. + * @param { 'syncComplete' } event - Subscribed event name, fixed as 'syncComplete', indicates the synchronization + * completion event. * @param { Callback<Array<[string, number]>> } syncCallback - {Array<[string, number]>}: the * deviceId and it's corresponding synchronization result which 0 means synchronization success * and otherwise failed. @@ -2222,7 +2259,8 @@ declare namespace distributedKVStore { /** * Unsubscribe from the SingleKVStore database based on the specified subscribeType and listener. * - * @param { 'dataChange' } event - The unsubscribe event name, fixed as 'dataChange', indicates the data change event. + * @param { 'dataChange' } event - The unsubscribe event name, fixed as 'dataChange', indicates the data change + * event. * @param { Callback<ChangeNotification> } listener - {ChangeNotification}: the {@code ChangeNotification} * object indicates the data change events in the distributed database. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; @@ -2236,7 +2274,8 @@ declare namespace distributedKVStore { /** * Unregister the database synchronization callback. * - * @param { 'syncComplete' } event - The unsubscribe event name, fixed as 'syncComplete', indicates the synchronization completion event. + * @param { 'syncComplete' } event - The unsubscribe event name, fixed as 'syncComplete', indicates the + * synchronization completion event. * @param { Callback<Array<[string, number]>> } syncCallback - {Array<[string, number]>}: the * deviceId and it's corresponding synchronization result which 0 means synchronization success * and otherwise failed. @@ -2272,9 +2311,12 @@ declare namespace distributedKVStore { /** * Provides methods related to device-collaboration distributed databases. - * <p>To create a {@code DeviceKVStore} database, you can use the {@link data.distributed.common.KVManager.getKVStore(Options, String)} - * method with {@code KVStoreType} set to {@code DEVICE_COLLABORATION} for the input parameter Options. This database manages distributed - * data by device, and cannot modify data synchronized from remote devices. When an application writes a key-value pair entry + * <p>To create a {@code DeviceKVStore} database, you can use the + * {@link data.distributed.common.KVManager.getKVStore(Options, String)} + * method with {@code KVStoreType} set to {@code DEVICE_COLLABORATION} for the input parameter Options. + * This database manages distributed + * data by device, and cannot modify data synchronized from remote devices. When an application writes a + * key-value pair entry * into the database, the system automatically adds the ID of the device running the application to the key. * * @extends SingleKVStore @@ -2321,7 +2363,8 @@ declare namespace distributedKVStore { * Obtains the value matching a specified device ID and key. * * @param { string } deviceId - Indicates the device to be queried. - * @param { string } key - Indicates the key of the value to be queried. The length must be less than {@code MAX_KEY_LENGTH}. + * @param { string } key - Indicates the key of the value to be queried. The length must be less than + * {@code MAX_KEY_LENGTH}. * @param { AsyncCallback<boolean | string | number | Uint8Array> } callback - * {boolean | string | number | Uint8Array}: the returned value specified by the deviceId and key. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; @@ -2339,7 +2382,8 @@ declare namespace distributedKVStore { * Obtains the value matching a specified device ID and key. * * @param { string } deviceId - Indicates the device to be queried. - * @param { string } key - Indicates the key of the value to be queried. The length must be less than {@code MAX_KEY_LENGTH}. + * @param { string } key - Indicates the key of the value to be queried. The length must be less than + * {@code MAX_KEY_LENGTH}. * @returns { Promise<boolean | string | number | Uint8Array> } * {Uint8Array|string|boolean|number}: the returned value specified by the deviceId and key. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; @@ -2480,7 +2524,8 @@ declare namespace distributedKVStore { /** * Obtains the result set with the local device ID and specified prefix from a {@code DeviceKVStore} database. * The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. - * Each {@code DeviceKVStore} instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. + * Each {@code DeviceKVStore} instance can have a maximum of four {@code KVStoreResultSet} objects at the + * same time. * If you have created four objects, calling this method will return a failure. Therefore, you are advised to * call the closeResultSet method to close unnecessary {@code KVStoreResultSet} objects in a timely manner. * @@ -2497,7 +2542,8 @@ declare namespace distributedKVStore { /** * Obtains the result set with the local device ID and specified prefix from a {@code DeviceKVStore} database. * The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. - * Each {@code DeviceKVStore} instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. + * Each {@code DeviceKVStore} instance can have a maximum of four {@code KVStoreResultSet} objects at the + * same time. * If you have created four objects, calling this method will return a failure. Therefore, you are advised to * call the closeResultSet method to close unnecessary {@code KVStoreResultSet} objects in a timely manner. * @@ -2517,7 +2563,8 @@ declare namespace distributedKVStore { /** * Obtains the result set with the local device ID and specified prefix from a {@code DeviceKVStore} database. * The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. - * Each {@code DeviceKVStore} instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. + * Each {@code DeviceKVStore} instance can have a maximum of four {@code KVStoreResultSet} objects at the + * same time. * If you have created four objects, calling this method will return a failure. Therefore, you are advised to * call the closeResultSet method to close unnecessary {@code KVStoreResultSet} objects in a timely manner. * @@ -2534,7 +2581,8 @@ declare namespace distributedKVStore { /** * Obtains the result set with the local device ID and specified prefix from a {@code DeviceKVStore} database. * The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. - * Each {@code DeviceKVStore} instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. + * Each {@code DeviceKVStore} instance can have a maximum of four {@code KVStoreResultSet} objects at the + * same time. * If you have created four objects, calling this method will return a failure. Therefore, you are advised to * call the closeResultSet method to close unnecessary {@code KVStoreResultSet} objects in a timely manner. * @@ -2553,9 +2601,12 @@ declare namespace distributedKVStore { /** * Obtains the {@code KVStoreResultSet} object matching the specified device ID and key prefix. - * <p>The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. Each {@code DeviceKVStore} - * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created four objects, - * calling this method will return a failure. Therefore, you are advised to call the closeResultSet method to close unnecessary + * <p>The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. + * Each {@code DeviceKVStore} + * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created four + * objects, + * calling this method will return a failure. Therefore, you are advised to call the closeResultSet method to close + * unnecessary * {@code KVStoreResultSet} objects in a timely manner. * * @param { string } deviceId - Identifies the device whose data is to be queried. @@ -2571,9 +2622,12 @@ declare namespace distributedKVStore { */ /** * Obtains the {@code KVStoreResultSet} object matching the specified device ID and key prefix. - * <p>The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. Each {@code DeviceKVStore} - * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created four objects, - * calling this method will return a failure. Therefore, you are advised to call the closeResultSet method to close unnecessary + * <p>The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. + * Each {@code DeviceKVStore} + * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created four + * objects, + * calling this method will return a failure. Therefore, you are advised to call the closeResultSet method to close + * unnecessary * {@code KVStoreResultSet} objects in a timely manner. * * @param { string } deviceId - Identifies the device whose data is to be queried. @@ -2592,9 +2646,12 @@ declare namespace distributedKVStore { /** * Obtains the {@code KVStoreResultSet} object matching the specified device ID and key prefix. - * <p>The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. Each {@code DeviceKVStore} - * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created four objects, - * calling this method will return a failure. Therefore, you are advised to call the closeResultSet method to close unnecessary + * <p>The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. + * Each {@code DeviceKVStore} + * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created four + * objects, + * calling this method will return a failure. Therefore, you are advised to call the closeResultSet method to close + * unnecessary * {@code KVStoreResultSet} objects in a timely manner. * * @param { string } deviceId - Identifies the device whose data is to be queried. @@ -2610,9 +2667,12 @@ declare namespace distributedKVStore { */ /** * Obtains the {@code KVStoreResultSet} object matching the specified device ID and key prefix. - * <p>The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. Each {@code DeviceKVStore} - * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created four objects, - * calling this method will return a failure. Therefore, you are advised to call the closeResultSet method to close unnecessary + * <p>The {@code KVStoreResultSet} object can be used to query all key-value pairs that meet the search criteria. + * Each {@code DeviceKVStore} + * instance can have a maximum of four {@code KVStoreResultSet} objects at the same time. If you have created four + * objects, + * calling this method will return a failure. Therefore, you are advised to call the closeResultSet method to close + * unnecessary * {@code KVStoreResultSet} objects in a timely manner. * * @param { string } deviceId - Identifies the device whose data is to be queried. @@ -2690,7 +2750,8 @@ declare namespace distributedKVStore { /** * Obtains the {@code KVStoreResultSet} object matching a specified device ID and {@code Query} object. * - * @param { string } deviceId - Indicates the ID of the device to which the {@code KVStoreResultSet} object belongs. + * @param { string } deviceId - Indicates the ID of the device to which the {@code KVStoreResultSet} object + * belongs. * @param { Query } query - Indicates the {@code Query} object. * @param { AsyncCallback<KVStoreResultSet> } callback - {KVStoreResultSet}: the {@code KVStoreResultSet} * object matching the specified deviceId and {@code Query} object. @@ -2704,7 +2765,8 @@ declare namespace distributedKVStore { /** * Obtains the {@code KVStoreResultSet} object matching a specified device ID and {@code Query} object. * - * @param { string } deviceId - Indicates the ID of the device to which the {@code KVStoreResultSet} object belongs. + * @param { string } deviceId - Indicates the ID of the device to which the {@code KVStoreResultSet} object + * belongs. * @param { Query } query - Indicates the {@code Query} object. * @param { AsyncCallback<KVStoreResultSet> } callback - {KVStoreResultSet}: the {@code KVStoreResultSet} * object matching the specified deviceId and {@code Query} object. @@ -2721,7 +2783,8 @@ declare namespace distributedKVStore { /** * Obtains the {@code KVStoreResultSet} object matching a specified device ID and {@code Query} object. * - * @param { string } deviceId - Indicates the ID of the device to which the {@code KVStoreResultSet} object belongs. + * @param { string } deviceId - Indicates the ID of the device to which the {@code KVStoreResultSet} object + * belongs. * @param { Query } query - Indicates the {@code Query} object. * @returns { Promise<KVStoreResultSet> } {KVStoreResultSet}: the {@code KVStoreResultSet} * object matching the specified deviceId and {@code Query} object. @@ -2735,7 +2798,8 @@ declare namespace distributedKVStore { /** * Obtains the {@code KVStoreResultSet} object matching a specified device ID and {@code Query} object. * - * @param { string } deviceId - Indicates the ID of the device to which the {@code KVStoreResultSet} object belongs. + * @param { string } deviceId - Indicates the ID of the device to which the {@code KVStoreResultSet} object + * belongs. * @param { Query } query - Indicates the {@code Query} object. * @returns { Promise<KVStoreResultSet> } {KVStoreResultSet}: the {@code KVStoreResultSet} * object matching the specified deviceId and {@code Query} object. @@ -2757,7 +2821,8 @@ declare namespace distributedKVStore { * object matching the local device ID and specified {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @syscap SystemCapability.DistributedDataManager.DataShare.Provider @@ -2773,7 +2838,8 @@ declare namespace distributedKVStore { * object matching the local device ID and specified {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100001 - Over max limits. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. @@ -2792,7 +2858,8 @@ declare namespace distributedKVStore { * object matching the local device ID and specified {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @syscap SystemCapability.DistributedDataManager.DataShare.Provider @@ -2808,7 +2875,8 @@ declare namespace distributedKVStore { * object matching the local device ID and specified {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100001 - Over max limits. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. @@ -2828,7 +2896,8 @@ declare namespace distributedKVStore { * object matching the specified deviceId and {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @syscap SystemCapability.DistributedDataManager.DataShare.Provider @@ -2845,7 +2914,8 @@ declare namespace distributedKVStore { * object matching the specified deviceId and {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100001 - Over max limits. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. @@ -2869,7 +2939,8 @@ declare namespace distributedKVStore { * object matching the specified deviceId and {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. * @syscap SystemCapability.DistributedDataManager.DataShare.Provider @@ -2886,7 +2957,8 @@ declare namespace distributedKVStore { * object matching the specified deviceId and {@code dataSharePredicates.DataSharePredicates} object. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 15100001 - Over max limits. * @throws { BusinessError } 15100003 - Database corrupted. * @throws { BusinessError } 15100005 - Database or result set already closed. @@ -2977,7 +3049,8 @@ declare namespace distributedKVStore { function createKVManager(config: KVManagerConfig): KVManager; /** - * Provides interfaces to manage a {@code SingleKVStore} database, including obtaining, closing, and deleting the {@code SingleKVStore}. + * Provides interfaces to manage a {@code SingleKVStore} database, including obtaining, closing, and deleting the + * {@code SingleKVStore}. * * @interface KVManager * @syscap SystemCapability.DistributedDataManager.KVStore.Core @@ -2988,7 +3061,7 @@ declare namespace distributedKVStore { * Creates and obtains a KVStore database by specifying {@code Options} and {@code storeId}. * * @param { string } storeId - Identifies the KVStore database. The value of this parameter must be unique - * for the same application, and different applications can share the same value. The storeId can consist + * for the same application, and different applications can share the same value. The storeId can consist * of only letters, digits, and underscores (_), and cannot exceed 128 characters. * @param { Options } options - Indicates the {@code Options} object used for creating and * obtaining the KVStore database. @@ -3007,7 +3080,7 @@ declare namespace distributedKVStore { * Creates and obtains a KVStore database by specifying {@code Options} and {@code storeId}. * * @param { string } storeId - Identifies the KVStore database. The value of this parameter must be unique - * for the same application, and different applications can share the same value. The storeId can consist + * for the same application, and different applications can share the same value. The storeId can consist * of only letters, digits, and underscores (_), and cannot exceed 128 characters. * @param { Options } options - Indicates the {@code Options} object used for creating and * obtaining the KVStore database. @@ -3024,15 +3097,16 @@ declare namespace distributedKVStore { /** * Closes the KVStore database. - * <p>Warning: This method is not thread-safe. If you call this method to stop a KVStore database that is running, your - * thread may crash. - * <p>The KVStore database to close must be an object created by using the {@code getKVStore} method. Before using this - * method, release the resources created for the database, for example, {@code KVStoreResultSet} for KVStore, otherwise - * closing the database will fail. - * - * @param { string } appId - Identifies the application that the database belong to, and cannot exceed 256 characters. - * @param { string } storeId - Identifies the KVStore database to close. The storeId can consist of only letters, digits, - * and underscores (_), and cannot exceed 128 characters. + * <p>Warning: This method is not thread-safe. If you call this method to stop a KVStore database that is running, + * your thread may crash. + * <p>The KVStore database to close must be an object created by using the {@code getKVStore} method. Before using + * this method, release the resources created for the database, for example, {@code KVStoreResultSet} for KVStore, + * otherwise closing the database will fail. + * + * @param { string } appId - Identifies the application that the database belong to, and cannot exceed 256 + * characters. + * @param { string } storeId - Identifies the KVStore database to close. The storeId can consist of only letters, + * digits, and underscores (_), and cannot exceed 128 characters. * @param { AsyncCallback<void> } callback - the callback of closeKVStore. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Parameter verification failed. @@ -3043,15 +3117,16 @@ declare namespace distributedKVStore { /** * Closes the KVStore database. - * <p>Warning: This method is not thread-safe. If you call this method to stop a KVStore database that is running, your - * thread may crash. - * <p>The KVStore database to close must be an object created by using the {@code getKVStore} method. Before using this - * method, release the resources created for the database, for example, {@code KVStoreResultSet} for KVStore, otherwise - * closing the database will fail. - * - * @param { string } appId - Identifies the application that the database belong to, and cannot exceed 256 characters. - * @param { string } storeId - Identifies the KVStore database to close. The storeId can consist of only letters, digits, - * and underscores (_), and cannot exceed 128 characters. + * <p>Warning: This method is not thread-safe. If you call this method to stop a KVStore database that is running, + * your thread may crash. + * <p>The KVStore database to close must be an object created by using the {@code getKVStore} method. Before using + * this method, release the resources created for the database, for example, {@code KVStoreResultSet} for KVStore, + * otherwise closing the database will fail. + * + * @param { string } appId - Identifies the application that the database belong to, and cannot exceed 256 + * characters. + * @param { string } storeId - Identifies the KVStore database to close. The storeId can consist of only letters, + * digits, and underscores (_), and cannot exceed 128 characters. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Parameter verification failed. @@ -3063,12 +3138,13 @@ declare namespace distributedKVStore { /** * Deletes the KVStore database identified by storeId. * <p>Before using this method, close all KVStore instances in use that are identified by the same storeId. - * <p>You can use this method to delete a KVStore database not in use. After the database is deleted, all its data will be - * lost. + * <p>You can use this method to delete a KVStore database not in use. After the database is deleted, all its data + * will be lost. * - * @param { string } appId - Identifies the application that the database belong to, and cannot exceed 256 characters. - * @param { string } storeId - Identifies the KVStore database to delete. The storeId can consist of only letters, digits, - * and underscores (_), and cannot exceed 128 characters. + * @param { string } appId - Identifies the application that the database belong to, and cannot exceed 256 + * characters. + * @param { string } storeId - Identifies the KVStore database to delete. The storeId can consist of only letters, + * digits, and underscores (_), and cannot exceed 128 characters. * @param { AsyncCallback<void> } callback - the callback of deleteKVStore. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Parameter verification failed. @@ -3081,12 +3157,13 @@ declare namespace distributedKVStore { /** * Deletes the KVStore database identified by storeId. * <p>Before using this method, close all KVStore instances in use that are identified by the same storeId. - * <p>You can use this method to delete a KVStore database not in use. After the database is deleted, all its data will be - * lost. + * <p>You can use this method to delete a KVStore database not in use. After the database is deleted, all its data + * will be lost. * - * @param { string } appId - Identifies the application that the database belong to, and cannot exceed 256 characters. - * @param { string } storeId - Identifies the KVStore database to delete. The storeId can consist of only letters, digits, - * and underscores (_), and cannot exceed 128 characters. + * @param { string } appId - Identifies the application that the database belong to, and cannot exceed 256 + * characters. + * @param { string } storeId - Identifies the KVStore database to delete. The storeId can consist of only letters, + * digits, and underscores (_), and cannot exceed 128 characters. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Parameter verification failed. @@ -3097,10 +3174,11 @@ declare namespace distributedKVStore { deleteKVStore(appId: string, storeId: string): Promise<void>; /** - * Obtains the storeId of all KVStore databases that are created by using the {@code getKVStore} method and not deleted by - * calling the {@code deleteKVStore} method. + * Obtains the storeId of all KVStore databases that are created by using the {@code getKVStore} method and not + * deleted by calling the {@code deleteKVStore} method. * - * @param { string } appId - Identifies the application that obtains the databases, and cannot exceed 256 characters. + * @param { string } appId - Identifies the application that obtains the databases, and cannot exceed 256 + * characters. * @param { AsyncCallback<string[]> } callback - {string[]}: the storeId of all created KVStore databases. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Parameter verification failed. @@ -3110,10 +3188,11 @@ declare namespace distributedKVStore { getAllKVStoreId(appId: string, callback: AsyncCallback<string[]>): void; /** - * Obtains the storeId of all KVStore databases that are created by using the {@code getKVStore} method and not deleted by - * calling the {@code deleteKVStore} method. + * Obtains the storeId of all KVStore databases that are created by using the {@code getKVStore} method and not + * deleted by calling the {@code deleteKVStore} method. * - * @param { string } appId - Identifies the application that obtains the databases, and cannot exceed 256 characters. + * @param { string } appId - Identifies the application that obtains the databases, and cannot exceed 256 + * characters. * @returns { Promise<string[]> } {string[]}: the storeId of all created KVStore databases. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Parameter verification failed. @@ -3124,10 +3203,11 @@ declare namespace distributedKVStore { /** * Register a death callback to get notification when the data manager service is terminated. - * <p>If the data manager service is terminated,you need to re-subscribe to data change notifications and synchronization - * completion notifications, and calling the sync method will return a failure. + * <p>If the data manager service is terminated,you need to re-subscribe to data change notifications and + * synchronization completion notifications, and calling the sync method will return a failure. * - * @param { 'distributedDataServiceDie' } event - Subscribed event name, fixed as 'distributedDataServiceDie', as a service status change events. + * @param { 'distributedDataServiceDie' } event - Subscribed event name, fixed as 'distributedDataServiceDie', + * as a service status change events. * @param { Callback<void> } deathCallback - callback to be invoked when the data manager service is terminated. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types; @@ -3139,11 +3219,13 @@ declare namespace distributedKVStore { /** * Unregister the death callback. Not notification will be received when the data manager service is terminated. - * <p>The unregistered death callback must be a registered death callback of the database. If no death callback parameter - * is passed, all database death callbacks will be unregistered. + * <p>The unregistered death callback must be a registered death callback of the database. If no death callback + * parameter is passed, all database death callbacks will be unregistered. * - * @param { 'distributedDataServiceDie' } event - Unsubscribe event name, fixed as 'distributedDataServiceDie', as a service status change events. - * @param { Callback<void> } deathCallback - the data manager service is terminated callback which has been registered. + * @param { 'distributedDataServiceDie' } event - Unsubscribe event name, fixed as 'distributedDataServiceDie', + * as a service status change events. + * @param { Callback<void> } deathCallback - the data manager service is terminated callback which has been + * registered. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types; * <br>3.Parameter verification failed. diff --git a/api/@ohos.data.graphStore.d.ts b/api/@ohos.data.graphStore.d.ts index d1ce637cd5e1c71abb14b5d105a001c8cc564d20..0f904d61faaf09bb90a27484dd2e21933b88ae65 100644 --- a/api/@ohos.data.graphStore.d.ts +++ b/api/@ohos.data.graphStore.d.ts @@ -522,8 +522,8 @@ declare namespace graphStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 31300000 - Inner error. * @throws { BusinessError } 31300001 - Database corrupted. - * @throws { BusinessError } 31300014 - Invalid database path. - * @throws { BusinessError } 31300015 - Config changed. + * @throws { BusinessError } 31300014 - Failed to open or delete the database with an invalid database path. + * @throws { BusinessError } 31300015 - StoreConfig, for example, securityLevel or encrypt, is changed. * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core * @systemapi * @since 18 @@ -540,7 +540,7 @@ declare namespace graphStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 31300000 - Inner error. - * @throws { BusinessError } 31300014 - Invalid database path. + * @throws { BusinessError } 31300014 - Failed to open or delete the database with an invalid database path. * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core * @systemapi * @since 18 diff --git a/api/@ohos.data.intelligence.d.ts b/api/@ohos.data.intelligence.d.ts index cc978b4d9c21ef898825372f0ed5a30362dd174b..f80129e159c4392276ab92ff6d9bf91ed24f3fe8 100644 --- a/api/@ohos.data.intelligence.d.ts +++ b/api/@ohos.data.intelligence.d.ts @@ -18,9 +18,6 @@ * @kit ArkData */ -import Context from './application/BaseContext'; -import relationalStore from './@ohos.data.relationalStore'; - /** * Provides methods for intelligent data processing. * @@ -121,7 +118,7 @@ declare namespace intelligence { */ interface TextEmbedding { /** - * Loads the embedding model. If the loading fails, an error code is returned. + * Loads this text embedding model. If the loading fails, an error code is returned. * * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 801 - Capability not supported. @@ -132,7 +129,7 @@ declare namespace intelligence { loadModel(): Promise<void>; /** - * Releases the embedding model. If the releasing fails, an error code is returned. + * Releases this text embedding model. If the releasing fails, an error code is returned. * * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 801 - Capability not supported. @@ -143,8 +140,8 @@ declare namespace intelligence { releaseModel(): Promise<void>; /** - * Obtains the embedding vector for the given text. - * The text should be no longer than 512 tokens. + * Obtains the embedding vector of the given text. + * The model can process up to 512 characters of text per inference, supporting both Chinese and English. * * @param { string } text - The input text of the embedding model. * @returns { Promise<Array<number>> } The promise used to return the embedding result. @@ -158,8 +155,8 @@ declare namespace intelligence { getEmbedding(text: string): Promise<Array<number>>; /** - * Obtains the embedding vector for the given batch of texts. - * Each text should be no longer than 512 tokens. + * Obtains the embedding vector of a given batch of text. + * The model can process up to 512 characters of text per inference, supporting both Chinese and English. * * @param { Array<string> } batchTexts - The input batch of texts of the embedding model. * @returns { Promise<Array<Array<number>>> } The promise used to return the embedding result. @@ -182,7 +179,7 @@ declare namespace intelligence { */ interface ImageEmbedding { /** - * Loads the embedding model. If the loading fails, an error code is returned. + * Loads this image embedding model. If the loading fails, an error code is returned. * * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 801 - Capability not supported. @@ -193,7 +190,7 @@ declare namespace intelligence { loadModel(): Promise<void>; /** - * Releases the embedding model. If the releasing fails, an error code is returned. + * Releases this image embedding model. If the releasing fails, an error code is returned. * * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 801 - Capability not supported. @@ -204,8 +201,8 @@ declare namespace intelligence { releaseModel(): Promise<void>; /** - * Obtains the embedding vector for the given image. - * The image should be no larger than 20 MB. + * Obtains the embedding vector of the given image. + * The model can handle images below 20 MB in size in a single inference. * * @param { Image } image - The input image of the embedding model. * @returns { Promise<Array<number>> } The promise used to return the embedding result. @@ -229,7 +226,7 @@ declare namespace intelligence { type Image = string; /** - * Chunking process for text. + * Splits text. * * @param { string } text - Text for chunking. The length of the text is no longer then 100k tokens. * @param { SplitConfig } config - Configurations of text chunking. @@ -269,961 +266,6 @@ declare namespace intelligence { */ overlapRatio: number; } - - /** - * Obtains a retriever. - * - * @param { RetrievalConfig } config - Indicates the {@link RetrievalConfig} configuration of the retriever. - * @returns { Promise<Retriever> } The retriever object {@link Retriever}. - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - function getRetriever(config: RetrievalConfig): Promise<Retriever>; - - /** - * Manages retrieval configurations. - * - * @interface RetrievalConfig - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface RetrievalConfig { - /** - * An array of configurations for different retrieval channels. - * - * @type { Array<ChannelConfig> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - channelConfigs: Array<ChannelConfig>; - } - - /** - * Manages the configuration for each retrieval channel. - * - * @interface ChannelConfig - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface ChannelConfig { - /** - * The type of database for this retrieval channel. - * - * @type { ChannelType } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - channelType: ChannelType; - - /** - * Indicates the context of an application or ability. - * - * @type { Context } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - context: Context; - - /** - * The configuration of database for this retrieval channel. - * - * @type { DbConfig } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - dbConfig: DbConfig; - } - - /** - * Type of database. - * - * @enum { number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - enum ChannelType { - /** - * Represents a vector database. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - VECTOR_DATABASE = 0, - - /** - * Represents an inverted index database. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - INVERTED_INDEX_DATABASE - } - - /** - * Describes the configuration of the database. - * - * @typedef { relationalStore.StoreConfig } DbConfig - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - type DbConfig = relationalStore.StoreConfig; - - /** - * Describes the retriever. - * - * @interface Retriever - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface Retriever { - /** - * Given the retrieval condition that includes query terms, recall conditions, and re-ranking strategies, - * retrieve a collection of records that meet the specified conditions from a relational store (RDB). - * - * @param { string } query - The query to the retrieval. - * @param { RetrievalCondition } condition - The condition {@link RetrievalCondition} of the retrieve method. - * @returns { Promise<RdbRecords> } The promise used to return the retrieved records {@link RdbRecords}. - * @throws { BusinessError } 31300001 - Database corrupted. - * @throws { BusinessError } 31300002 - Already closed. - * @throws { BusinessError } 31300003 - The database is busy. - * @throws { BusinessError } 31300004 - The database is out of memory. - * @throws { BusinessError } 31300100 - SQLite: Generic error. - * @throws { BusinessError } 31300101 - SQLite: Access permission denied. - * @throws { BusinessError } 31300102 - SQLite: The database file is locked. - * @throws { BusinessError } 31300103 - SQLite: Some kind of disk I/O error occurred. - * @throws { BusinessError } 31300104 - SQLite: The WAL file size exceeds the default limit. - * @throws { BusinessError } 31300105 - SQLite: Unable to open the database file. - * @throws { BusinessError } 31301000 - Retrieval: An error occurred during the recall phase. - * @throws { BusinessError } 31301001 - Retrieval: An error occurred during the re-ranking phase. - * @throws { BusinessError } 31301002 - Retrieval: The value of the numerical parameter is outside the constrained range. - * @throws { BusinessError } 31301003 - Retrieval: There are invalid primary keys. - * @throws { BusinessError } 31301004 - Retrieval: A re-ranking algorithm that does not support composite primary keys was used. - * @throws { BusinessError } 31301005 - Retrieval: There are fields with empty strings. - * @throws { BusinessError } 31301006 - Retrieval: The filter input is invalid. - * @throws { BusinessError } 31301007 - Retrieval: There are invalid recall names in RecallCondition. - * @throws { BusinessError } 31301008 - Retrieval: The vector similarity threshold in VectorQuery is higher than the tiered threshold in VectorRerankParameter. - * @throws { BusinessError } 31301009 - Retrieval: RerankMethod parameters do not match the channel type. - * @throws { BusinessError } 31301010 - Retrieval: There exists a parameter value that should not be empty but is actually empty. - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - retrieveRdb(query: string, condition: RetrievalCondition): Promise<RdbRecords>; - } - - /** - * Describes the retrieval conditions. - * - * @interface RetrievalCondition - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface RetrievalCondition { - /** - * The conditions {@link RecallCondition} for recall, where each item in the array corresponds to a recall operation. - * - * @type { Array<RecallCondition> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - recallConditions: Array<RecallCondition>; - - /** - * The parameters of the re-ranking method {@link RerankMethod}. - * - * @type { ?RerankMethod } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - rerankMethod?: RerankMethod; - - /** - * The maximum number of results allowed to be returned after re-ranking. - * - * @type { ?number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - resultCount?: number; - } - - /** - * Describes the conditions for a recall operation. - * - * @typedef { InvertedIndexRecallCondition | VectorRecallCondition } RecallCondition - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - type RecallCondition = InvertedIndexRecallCondition | VectorRecallCondition; - - /** - * Describes the recall conditions for the inverted index retrieval. - * - * @interface InvertedIndexRecallCondition - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface InvertedIndexRecallCondition { - /** - * The table name of the fts5 data table used for the inverted index recall. - * - * @type { string } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - ftsTableName: string; - - /** - * Represents the table name in the database, supporting JOIN operations. - * - * @type { string } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - fromClause: string; - - /** - * Represents the column name(s) of the primary key, and this parameter supports composite primary keys. - * - * @type { Array<ColumnName> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - primaryKey: Array<ColumnName>; - - /** - * The names of the columns included in the recall results. - * - * @type { Array<ColumnName> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - responseColumns: Array<ColumnName>; - - /** - * The recall strategy {@link InvertedIndexStrategy} used for the inverted index database. - * - * @type { ?Array<InvertedIndexStrategy> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - invertedIndexStrategies?: Array<InvertedIndexStrategy>; - - /** - * The name of the recall operation corresponding to this recall condition, used to identify this recall process. - * - * @type { ?RecallName } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - recallName?: RecallName; - - /** - * Additional filtering conditions. - * - * @type { ?Array<FilterInfo> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - filters?: Array<FilterInfo>; - - /** - * The maximum number of recalls for this recall process. - * - * @type { ?number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - deepSize?: number; - } - - /** - * The type of the column name. - * - * @typedef { string } ColumnName - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - type ColumnName = string; - - /** - * The type of the identifier name for a recall operation. - * - * @typedef { string } RecallName - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - type RecallName = string; - - /** - * Describes the filter information. - * - * @interface FilterInfo - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface FilterInfo { - /** - * The column names of the filtered columns. - * Any record in the database that satisfies the filter condition for any of its columns will be filtered out. - * - * @type { Array<ColumnName> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - columns: Array<ColumnName>; - - /** - * The operator in the filter conditions. - * - * @type { ?Operator } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - operator?: Operator; - - /** - * The filtering value in the filter conditions. - * - * @type { ?FilterValue} - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - filterValue?: FilterValue; - - /** - * The filtering range in the filter conditions. - * - * @type { ?FilterRange } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - filterRange?: FilterRange; - } - - /** - * Describes the filtering value in the filter conditions. - * - * @typedef { string | number | bigint } FilterValue - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - type FilterValue = string | number | bigint; - - /** - * Describes the filtering range in the filter conditions. - * - * @interface FilterRange - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface FilterRange { - /** - * The range of the filter: maximum. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - max: number; - - /** - * The range of the filter: minimum. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - min: number; - } - - /** - * Types of the operator in the filter conditions. - * - * @enum { string } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - enum Operator { - /** - * Means <column> = <value>. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_EQ = '=', - - /** - * Means <column> != <value>. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_NE = '!=', - - /** - * Means <column> < <value>, while <value> should be number. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_LT = '<', - - /** - * Means <column> <= <value>, while <value> should be number. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_LE = '<=', - - /** - * Means <column> > <value>, while <value> should be number. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_GT = '>', - - /** - * Means <column> >= <value>, while <value> should be number. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_GE = '>=', - - /** - * Means <column> IN <value>, while <value> should be string and be concatenated by ','. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_IN = 'IN', - - /** - * Means <column> NOT IN <value>, while <value> should be string and be concatenated by ','. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_NOT_IN = 'NOT_IN', - - /** - * Means <column> BETWEEN <range[0]> AND <range[1]>, while <value> should be array of numbers. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_BETWEEN = 'BETWEEN', - - /** - * Means <column> LIKE <value>, while <value> should be string. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_LIKE = 'LIKE', - - /** - * Means <column> NOT LIKE <value>, while <value> should be string. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - OP_NOT_LIKE = 'NOT_LIKE' - } - - /** - * Describes the inverted index recall strategy. - * - * @typedef { Bm25Strategy | ExactMatchingStrategy | ProximityStrategy } InvertedIndexStrategy - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - type InvertedIndexStrategy = Bm25Strategy | ExactMatchingStrategy | ProximityStrategy; - - /** - * Describes the BM25 strategy used for inverted index recall. - * - * @interface Bm25Strategy - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface Bm25Strategy { - /** - * Represents the weights of multiple strategies. The weight must be non-negative number. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - bm25Weight: number; - - /** - * Represents the weights of multiple columns. The weight must be non-negative number. - * - * @type { ?Record<ColumnName, number> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - columnWeight?: Record<ColumnName, number>; - } - - /** - * Describes the exact phrase matching stratey used for inverted index recall. - * - * @interface ExactMatchingStrategy - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface ExactMatchingStrategy { - /** - * Represents the weights of multiple strategies. The weight must be non-negative number. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - exactMatchingWeight: number; - - /** - * Represents the weights of multiple columns. The weight must be non-negative number. - * - * @type { ?Record<ColumnName, number> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - columnWeight?: Record<ColumnName, number>; - } - - /** - * Describes the proximity and out-of-order matching stratey for inverted index recall. - * - * @interface ProximityStrategy - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface ProximityStrategy { - /** - * Represents the weights of multiple strategies. The weight must be non-negative number. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - proximityWeight: number; - - /** - * Represents the weights of multiple columns. The weight must be non-negative number. - * - * @type { ?Record<ColumnName, number> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - columnWeight?: Record<ColumnName, number>; - - /** - * The offset configuration used for each out-of-order matching column. Must be positive integer. - * - * @type { ?Record<ColumnName, number> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - columnSlops?: Record<ColumnName, number>; - } - - /** - * Describes the recall conditions for vector retrieval. - * - * @interface VectorRecallCondition - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface VectorRecallCondition { - /** - * The query vector used for vector data retrieval {@link VectorQuery}. - * Typically, the query vector is generated from the query term in Retriever {@link Retriever} - * using an embedding model{@link TextEmbedding}. - * - * @type { VectorQuery } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - vectorQuery: VectorQuery; - - /** - * Represents the table name in the database, supporting JOIN operations. - * - * @type { string } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - fromClause: string; - - /** - * Represents the column name(s) of the primary key, and this parameter supports composite primary keys. - * - * @type { Array<ColumnName> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - primaryKey: Array<ColumnName>; - - /** - * The names of the columns included in the recall results. - * - * @type { Array<ColumnName> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - responseColumns: Array<ColumnName>; - - /** - * The name of the recall operation corresponding to this recall condition, used to identify this recall process. - * - * @type { ?RecallName } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - recallName?: RecallName; - - /** - * Additional filtering conditions. - * - * @type { ?Array<FilterInfo> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - filters?: Array<FilterInfo>; - - /** - * The maximum number of recalls for this recall process. - * - * @type { ?number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - deepSize?: number; - } - - /** - * Describes the query vector. - * - * @interface VectorQuery - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface VectorQuery { - /** - * The column name of the vector column. - * - * @type { ColumnName } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - column: ColumnName; - - /** - * The vector value of the vector column. - * - * @type { Float32Array } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - value: Float32Array; - - /** - * The threshold used to filter out dissimilar vectors based on similarity. - * - * @type { ?number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - similarityThreshold?: number; - } - - /** - * Describes the parameters of the re-ranking strategy. - * - * @interface RerankMethod - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface RerankMethod { - /** - * Represents the type of re-ranking algorithms. - * - * @type { RerankType } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - rerankType: RerankType; - - /** - * Represents the mapping relationship between each retrieval channel and the re-ranking algorithm parameters. - * - * @type { ?Record<ChannelType, RerankParameter> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - parameters?: Record<ChannelType, RerankParameter>; - - /** - * Indicates whether to use the softmax function to normalize the results from multiple recalls. - * - * @type { ?boolean } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - isSoftmaxNormalized?: boolean; - } - - /** - * Represents type of re-ranking algorithms. - * - * @enum { number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - enum RerankType { - /** - * Represents Reciprocal Rank Fusion (RRF) method. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - RRF = 0, - - /** - * Represents score-based recall fusion method. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - FUSION_SCORE - } - - /** - * Describes the re-ranking algorithm parameter configuration. - * - * @typedef { InvertedIndexRerankParameter | VectorRerankParameter } RerankParameter - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - type RerankParameter = InvertedIndexRerankParameter | VectorRerankParameter; - - /** - * Describes the parameters of the re-ranking algorithm used for inverted index. - * - * @interface InvertedIndexRerankParameter - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface InvertedIndexRerankParameter { - /** - * Represents the weight corresponding to each recall process. The weight must be non-negative number. - * - * @type { Record<RecallName, number> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - invertedIndexWeights: Record<RecallName, number>; - } - - /** - * Describes the parameters of the re-ranking algorithm used for vector data. - * - * @interface VectorRerankParameter - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface VectorRerankParameter { - /** - * Represents the weight corresponding to each recall process. The weight must be non-negative number. - * - * @type { Record<RecallName, number> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - vectorWeights: Record<RecallName, number>; - - /** - * The tiered thresholds for vector recall, - * which will affect the division of similarityLevel {@link SimilarityLevel} in the retrieval results. - * Currently, the results can be divided into three tiers (high, medium, low) using two thresholds. - * - * @type { ?Array<number> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - thresholds?: Array<number>; - - /** - * An optimization measure for query terms containing numbers. - * Since embedding models cannot accurately represent numerical magnitudes, - * and numerical values are often critical retrieval criteria, - * this measure ensures that if a column in the vector recall results contains numbers that differ from those in the query terms, - * the final similarity level {@link SimilarityLevel} will not exceed a medium level. - * - * @type { ?Record<RecallName, ColumnName> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - numberInspector?: Record<RecallName, ColumnName>; - } - - /** - * Describes the retrieval results. - * - * @interface RdbRecords - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface RdbRecords { - /** - * Describes the collection of retrieved records {@link ItemInfo}. - * - * @type { Array<ItemInfo> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - records: Array<ItemInfo>; - } - - /** - * Describes the specific content of each record in the retrieval results. - * - * @interface ItemInfo - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface ItemInfo { - /** - * Represents the primary key of the retrieval results. - * - * @type { string } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - primaryKey: string; - - /** - * Represents the recall columns and their contents. - * - * @type { Record<string, relationalStore.ValueType> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - columns: Record<string, relationalStore.ValueType>; - - /** - * Represents the final score after retrieval re-ranking, - * which qualitatively reflects the similarity between the re-ranked records and the query terms. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - score: number; - - /** - * Represents the scores from each recall process, - * which qualitatively reflects the similarity between the records after each recall and the query terms. - * - * @type { Record<ChannelType, Record<string, RecallScore>> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - recallScores: Record<ChannelType, Record<string, RecallScore>>; - - /** - * Represents the scores from different inverted index strategies. - * - * @type { Record<string, number> } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - features: Record<string, number>; - - /** - * Represents the similarity of the retrieval results to the query vectors. - * Influenced by vectorRerankThresholds in the re-ranking algorithm configuration {@link VectorRerankParameter}. - * Currently, supporting three tiers (high, medium, low). - * - * @type { SimilarityLevel } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - similarityLevel: SimilarityLevel; - } - - /** - * Describes the score of the recall process. - * - * @interface RecallScore - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - interface RecallScore { - /** - * Represents the recall score. - * - * @type { number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - score: number; - - /** - * Indicates whether the score is obtained from the original recall process or from a reverse query process. - * - * @type { boolean } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - isReverseQuery: boolean; - } - - /** - * Represents the similarity of the retrieval result to the query vector. - * - * @enum { number } - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - enum SimilarityLevel { - /** - * There is no query vector in the recall conditions {@link VectorRecallCondition}. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - NONE = 0, - - /** - * Indicates a low similarity between the query vector and the retrieval result. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - LOW, - - /** - * Indicates a medium similarity between the query vector and the retrieval result. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - MEDIUM, - - /** - * Indicates a high similarity between the query vector and the retrieval result. - * - * @syscap SystemCapability.DistributedDataManager.DataIntelligence.Core - * @since 18 - */ - HIGH - } } export default intelligence; \ No newline at end of file diff --git a/api/@ohos.data.preferences.d.ts b/api/@ohos.data.preferences.d.ts index 89ead370650317bf035882dc4acecdbdbaf11319..686904d792a832c88ddb2c8af73a3909dcddf660 100644 --- a/api/@ohos.data.preferences.d.ts +++ b/api/@ohos.data.preferences.d.ts @@ -45,7 +45,8 @@ import Context from './application/BaseContext'; * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 * @name preferences */ declare namespace preferences { @@ -74,10 +75,12 @@ declare namespace preferences { /** * Indicates possible value types * - * @typedef {number | string | boolean | Array<number> | Array<string> | Array<boolean> | Uint8Array | object | bigint} + * @typedef {number | string | boolean | Array<number> | Array<string> | Array<boolean> | Uint8Array | object | + * bigint} * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ type ValueType = number | string | boolean | Array<number> | Array<string> | Array<boolean> | Uint8Array | object | bigint; @@ -192,7 +195,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Options { /** @@ -209,7 +213,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ name: string; @@ -227,7 +232,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @StageModelOnly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ dataGroupId?: string | null | undefined; @@ -250,10 +256,10 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @param { AsyncCallback<Preferences> } callback - The {@link Preferences} instance matching the specified - * preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * preferences file name. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -265,10 +271,10 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @param { AsyncCallback<Preferences> } callback - The {@link Preferences} instance matching the specified - * preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * preferences file name. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -281,15 +287,16 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @param { AsyncCallback<Preferences> } callback - The {@link Preferences} instance matching the specified - * preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * preferences file name. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function getPreferences(context: Context, name: string, callback: AsyncCallback<Preferences>): void; @@ -301,10 +308,10 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @param { AsyncCallback<Preferences> } callback - The {@link Preferences} instance matching the specified - * preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * preferences file name. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. * @throws { BusinessError } 15501002 - Invalid dataGroupId. @@ -320,10 +327,10 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @param { AsyncCallback<Preferences> } callback - The {@link Preferences} instance matching the specified - * preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * preferences file name. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -331,7 +338,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function getPreferences(context: Context, options: Options, callback: AsyncCallback<Preferences>): void; @@ -343,9 +351,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @returns { Promise<Preferences> } The {@link Preferences} instance matching the specified preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -357,9 +365,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @returns { Promise<Preferences> } The {@link Preferences} instance matching the specified preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -372,14 +380,15 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @returns { Promise<Preferences> } The {@link Preferences} instance matching the specified preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function getPreferences(context: Context, name: string): Promise<Preferences>; @@ -391,9 +400,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @returns { Promise<Preferences> } The {@link Preferences} instance matching the specified preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. * @throws { BusinessError } 15501002 - Invalid dataGroupId. @@ -409,9 +418,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @returns { Promise<Preferences> } The {@link Preferences} instance matching the specified preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -419,7 +428,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function getPreferences(context: Context, options: Options): Promise<Preferences>; @@ -432,9 +442,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @returns { Preferences } The {@link Preferences} instance matching the specified preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. * @throws { BusinessError } 15501002 - Invalid dataGroupId. @@ -451,9 +461,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @returns { Preferences } The {@link Preferences} instance matching the specified preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -461,7 +471,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function getPreferencesSync(context: Context, options: Options): Preferences; @@ -486,9 +497,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 @@ -504,9 +515,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform @@ -523,15 +534,16 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function deletePreferences(context: Context, name: string, callback: AsyncCallback<void>): void; @@ -546,9 +558,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -568,9 +580,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. @@ -579,7 +591,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function deletePreferences(context: Context, options: Options, callback: AsyncCallback<void>): void; @@ -594,9 +607,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 @@ -612,9 +625,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform @@ -631,15 +644,16 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function deletePreferences(context: Context, name: string): Promise<void>; @@ -654,9 +668,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -676,9 +690,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. @@ -687,7 +701,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function deletePreferences(context: Context, options: Options): Promise<void>; @@ -701,9 +716,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -717,9 +732,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -734,14 +749,15 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function removePreferencesFromCache(context: Context, name: string, callback: AsyncCallback<void>): void; @@ -755,9 +771,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. * @throws { BusinessError } 15501002 - Invalid dataGroupId. @@ -775,9 +791,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -785,7 +801,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function removePreferencesFromCache(context: Context, options: Options, callback: AsyncCallback<void>): void; @@ -799,9 +816,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -815,9 +832,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -832,14 +849,15 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function removePreferencesFromCache(context: Context, name: string): Promise<void>; @@ -853,9 +871,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. * @throws { BusinessError } 15501002 - Invalid dataGroupId. @@ -873,9 +891,9 @@ declare namespace preferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -883,7 +901,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function removePreferencesFromCache(context: Context, options: Options): Promise<void>; @@ -896,9 +915,9 @@ declare namespace preferences { * * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -912,14 +931,15 @@ declare namespace preferences { * * @param { Context } context - Indicates the context of application or capability. * @param { string } name - Indicates the preferences file name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function removePreferencesFromCacheSync(context: Context, name: string): void; @@ -932,9 +952,9 @@ declare namespace preferences { * * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. * @throws { BusinessError } 15501002 - Invalid dataGroupId. @@ -951,9 +971,9 @@ declare namespace preferences { * * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates the {@link Options} option of preferences file position. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -961,7 +981,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function removePreferencesFromCacheSync(context: Context, options: Options): void; @@ -999,7 +1020,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Preferences { /** @@ -1007,13 +1029,13 @@ declare namespace preferences { * <p>If the value is {@code null} or not in the ValueType format, the default value is returned. * * @param { string } key - Indicates the key of the preferences. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } defValue - Indicates the default value to return. * @param { AsyncCallback<ValueType> } callback - The value matching the specified key if it is found; - * returns the default value otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * returns the default value otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -1022,13 +1044,13 @@ declare namespace preferences { * <p>If the value is {@code null} or not in the ValueType format, the default value is returned. * * @param { string } key - Indicates the key of the preferences. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } defValue - Indicates the default value to return. * @param { AsyncCallback<ValueType> } callback - The value matching the specified key if it is found; - * returns the default value otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * returns the default value otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1038,18 +1060,19 @@ declare namespace preferences { * <p>If the value is {@code null} or not in the ValueType format, the default value is returned. * * @param { string } key - Indicates the key of the preferences. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } defValue - Indicates the default value to return. * @param { AsyncCallback<ValueType> } callback - The value matching the specified key if it is found; - * returns the default value otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * returns the default value otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ get(key: string, defValue: ValueType, callback: AsyncCallback<ValueType>): void; @@ -1058,13 +1081,13 @@ declare namespace preferences { * <p>If the value is {@code null} or not in the ValueType format, the default value is returned. * * @param { string } key - Indicates the key of the preferences. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } defValue - Indicates the default value to return. * @returns { Promise<ValueType> } The value matching the specified key if it is found; - * returns the default value otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * returns the default value otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -1073,13 +1096,13 @@ declare namespace preferences { * <p>If the value is {@code null} or not in the ValueType format, the default value is returned. * * @param { string } key - Indicates the key of the preferences. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } defValue - Indicates the default value to return. * @returns { Promise<ValueType> } The value matching the specified key if it is found; - * returns the default value otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * returns the default value otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1089,18 +1112,19 @@ declare namespace preferences { * <p>If the value is {@code null} or not in the ValueType format, the default value is returned. * * @param { string } key - Indicates the key of the preferences. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } defValue - Indicates the default value to return. * @returns { Promise<ValueType> } The value matching the specified key if it is found; - * returns the default value otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * returns the default value otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ get(key: string, defValue: ValueType): Promise<ValueType>; @@ -1109,13 +1133,13 @@ declare namespace preferences { * <p>If the value is {@code null} or not in the ValueType format, the default value is returned. * * @param { string } key - Indicates the key of the preferences. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } defValue - Indicates the default value to return. * @returns { ValueType } The value matching the specified key if it is found; - * returns the default value otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * returns the default value otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1125,18 +1149,19 @@ declare namespace preferences { * <p>If the value is {@code null} or not in the ValueType format, the default value is returned. * * @param { string } key - Indicates the key of the preferences. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } defValue - Indicates the default value to return. * @returns { ValueType } The value matching the specified key if it is found; - * returns the default value otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * returns the default value otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getSync(key: string, defValue: ValueType): ValueType; @@ -1166,7 +1191,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getAll(callback: AsyncCallback<Object>): void; @@ -1193,7 +1219,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getAll(): Promise<Object>; @@ -1215,7 +1242,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getAllSync(): Object; @@ -1223,12 +1251,12 @@ declare namespace preferences { * Checks whether the {@link Preferences} object contains a preferences matching a specified key. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. - * @param { AsyncCallback<boolean> } callback - {@code true} if the {@link Preferences} object contains a preferences - * with the specified key;returns {@code false} otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * <tt>MAX_KEY_LENGTH</tt>. + * @param { AsyncCallback<boolean> } callback - {@code true} if the {@link Preferences} object contains a + * preferences with the specified key;returns {@code false} otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -1236,12 +1264,12 @@ declare namespace preferences { * Checks whether the {@link Preferences} object contains a preferences matching a specified key. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. - * @param { AsyncCallback<boolean> } callback - {@code true} if the {@link Preferences} object contains a preferences - * with the specified key;returns {@code false} otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * <tt>MAX_KEY_LENGTH</tt>. + * @param { AsyncCallback<boolean> } callback - {@code true} if the {@link Preferences} object contains a + * preferences with the specified key;returns {@code false} otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1250,17 +1278,18 @@ declare namespace preferences { * Checks whether the {@link Preferences} object contains a preferences matching a specified key. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. - * @param { AsyncCallback<boolean> } callback - {@code true} if the {@link Preferences} object contains a preferences - * with the specified key;returns {@code false} otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * <tt>MAX_KEY_LENGTH</tt>. + * @param { AsyncCallback<boolean> } callback - {@code true} if the {@link Preferences} object contains a + * preferences with the specified key;returns {@code false} otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ has(key: string, callback: AsyncCallback<boolean>): void; @@ -1268,12 +1297,12 @@ declare namespace preferences { * Checks whether the {@link Preferences} object contains a preferences matching a specified key. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { Promise<boolean> } {@code true} if the {@link Preferences} object contains - * a preferences with the specified key; returns {@code false} otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * a preferences with the specified key; returns {@code false} otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -1281,12 +1310,12 @@ declare namespace preferences { * Checks whether the {@link Preferences} object contains a preferences matching a specified key. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { Promise<boolean> } {@code true} if the {@link Preferences} object contains - * a preferences with the specified key; returns {@code false} otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * a preferences with the specified key; returns {@code false} otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1295,17 +1324,18 @@ declare namespace preferences { * Checks whether the {@link Preferences} object contains a preferences matching a specified key. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { Promise<boolean> } {@code true} if the {@link Preferences} object contains - * a preferences with the specified key; returns {@code false} otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * a preferences with the specified key; returns {@code false} otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ has(key: string): Promise<boolean>; @@ -1314,12 +1344,12 @@ declare namespace preferences { * is executed synchronously. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { boolean } {@code true} if the {@link Preferences} object contains - * a preferences with the specified key; returns {@code false} otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * a preferences with the specified key; returns {@code false} otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1329,17 +1359,18 @@ declare namespace preferences { * is executed synchronously. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { boolean } {@code true} if the {@link Preferences} object contains - * a preferences with the specified key; returns {@code false} otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * a preferences with the specified key; returns {@code false} otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ hasSync(key: string): boolean; @@ -1349,13 +1380,13 @@ declare namespace preferences { * file. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } value - Indicates the value of the preferences. - * <tt>MAX_VALUE_LENGTH</tt>. + * <tt>MAX_VALUE_LENGTH</tt>. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -1363,15 +1394,19 @@ declare namespace preferences { * Sets an int value for the key in the {@link Preferences} object. * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the * file. + * <p>When the value contains strings in a non-UTF-8 format, use the Uint8Array type for storage. + * Otherwise, the format of the persistent file is incorrect and the file is damaged. + * <p>If the corresponding key already exists, the {@link put} method will overwrite its value. + * You can use the {@link #hasSync} method to check whether the corresponding key-value pair exists. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } value - Indicates the value of the preferences. - * <tt>MAX_VALUE_LENGTH</tt>. + * <tt>MAX_VALUE_LENGTH</tt>. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1380,20 +1415,25 @@ declare namespace preferences { * Sets an int value for the key in the {@link Preferences} object. * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the * file. + * <p>When the value contains strings in a non-UTF-8 format, use the Uint8Array type for storage. + * Otherwise, the format of the persistent file is incorrect and the file is damaged. + * <p>If the corresponding key already exists, the {@link put} method will overwrite its value. + * You can use the {@link #hasSync} method to check whether the corresponding key-value pair exists. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } value - Indicates the value of the preferences. - * <tt>MAX_VALUE_LENGTH</tt>. + * <tt>MAX_VALUE_LENGTH</tt>. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ put(key: string, value: ValueType, callback: AsyncCallback<void>): void; @@ -1401,15 +1441,19 @@ declare namespace preferences { * Sets an int value for the key in the {@link Preferences} object. * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the * file. + * <p>When the value contains strings in a non-UTF-8 format, use the Uint8Array type for storage. + * Otherwise, the format of the persistent file is incorrect and the file is damaged. + * <p>If the corresponding key already exists, the {@link put} method will overwrite its value. + * You can use the {@link #hasSync} method to check whether the corresponding key-value pair exists. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } value - Indicates the value of the preferences. - * <tt>MAX_VALUE_LENGTH</tt>. + * <tt>MAX_VALUE_LENGTH</tt>. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -1417,15 +1461,19 @@ declare namespace preferences { * Sets an int value for the key in the {@link Preferences} object. * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the * file. + * <p>When the value contains strings in a non-UTF-8 format, use the Uint8Array type for storage. + * Otherwise, the format of the persistent file is incorrect and the file is damaged. + * <p>If the corresponding key already exists, the {@link put} method will overwrite its value. + * You can use the {@link #hasSync} method to check whether the corresponding key-value pair exists. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } value - Indicates the value of the preferences. - * <tt>MAX_VALUE_LENGTH</tt>. + * <tt>MAX_VALUE_LENGTH</tt>. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1434,20 +1482,25 @@ declare namespace preferences { * Sets an int value for the key in the {@link Preferences} object. * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the * file. + * <p>When the value contains strings in a non-UTF-8 format, use the Uint8Array type for storage. + * Otherwise, the format of the persistent file is incorrect and the file is damaged. + * <p>If the corresponding key already exists, the {@link put} method will overwrite its value. + * You can use the {@link #hasSync} method to check whether the corresponding key-value pair exists. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } value - Indicates the value of the preferences. - * <tt>MAX_VALUE_LENGTH</tt>. + * <tt>MAX_VALUE_LENGTH</tt>. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ put(key: string, value: ValueType): Promise<void>; @@ -1455,14 +1508,18 @@ declare namespace preferences { * Sets an int value for the key in the {@link Preferences} object. This interface is executed synchronously. * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the * file. + * <p>When the value contains strings in a non-UTF-8 format, use the Uint8Array type for storage. + * Otherwise, the format of the persistent file is incorrect and the file is damaged. + * <p>If the corresponding key already exists, the {@link put} method will overwrite its value. + * You can use the {@link #hasSync} method to check whether the corresponding key-value pair exists. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } value - Indicates the value of the preferences. - * <tt>MAX_VALUE_LENGTH</tt>. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * <tt>MAX_VALUE_LENGTH</tt>. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1471,115 +1528,116 @@ declare namespace preferences { * Sets an int value for the key in the {@link Preferences} object. This interface is executed synchronously. * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the * file. + * <p>When the value contains strings in a non-UTF-8 format, use the Uint8Array type for storage. + * Otherwise, the format of the persistent file is incorrect and the file is damaged. + * <p>If the corresponding key already exists, the {@link put} method will overwrite its value. + * You can use the {@link #hasSync} method to check whether the corresponding key-value pair exists. * * @param { string } key - Indicates the key of the preferences to modify. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { ValueType } value - Indicates the value of the preferences. - * <tt>MAX_VALUE_LENGTH</tt>. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * <tt>MAX_VALUE_LENGTH</tt>. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ putSync(key: string, value: ValueType): void; /** * Deletes the preferences with a specified key from the {@link Preferences} object. - * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the - * file. + * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @param { string } key - Indicates the key of the preferences to delete. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ /** * Deletes the preferences with a specified key from the {@link Preferences} object. - * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the - * file. + * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @param { string } key - Indicates the key of the preferences to delete. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 */ /** * Deletes the preferences with a specified key from the {@link Preferences} object. - * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the - * file. + * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @param { string } key - Indicates the key of the preferences to delete. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { AsyncCallback<void> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ delete(key: string, callback: AsyncCallback<void>): void; /** * Deletes the preferences with a specified key from the {@link Preferences} object. - * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the - * file. + * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @param { string } key - Indicates the key of the preferences to delete. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ /** * Deletes the preferences with a specified key from the {@link Preferences} object. - * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the - * file. + * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @param { string } key - Indicates the key of the preferences to delete. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 */ /** * Deletes the preferences with a specified key from the {@link Preferences} object. - * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the - * file. + * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @param { string } key - Indicates the key of the preferences to delete. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { Promise<void> } A promise object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ delete(key: string): Promise<void>; @@ -1589,10 +1647,10 @@ declare namespace preferences { * object to the file. * * @param { string } key - Indicates the key of the preferences to delete. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * <tt>MAX_KEY_LENGTH</tt>. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1603,15 +1661,16 @@ declare namespace preferences { * object to the file. * * @param { string } key - Indicates the key of the preferences to delete. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * <tt>MAX_KEY_LENGTH</tt>. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ deleteSync(key: string): void; @@ -1644,7 +1703,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(callback: AsyncCallback<void>): void; @@ -1674,7 +1734,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): Promise<void>; @@ -1693,7 +1754,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ clearSync(): void; @@ -1723,7 +1785,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ flush(callback: AsyncCallback<void>): void; @@ -1750,7 +1813,8 @@ declare namespace preferences { * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ flush(): Promise<void>; @@ -1770,9 +1834,9 @@ declare namespace preferences { * * @param { 'change' } type - Indicates the callback when preferences changes. * @param { Callback<{ key: string }> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -1781,9 +1845,9 @@ declare namespace preferences { * * @param { 'change' } type - Indicates the callback when preferences changes. * @param { Function } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1793,9 +1857,9 @@ declare namespace preferences { * * @param { 'change' } type - Indicates the callback when preferences changes. * @param { Callback<string> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform @@ -1809,9 +1873,9 @@ declare namespace preferences { * * @param { 'multiProcessChange' } type - Indicates the callback when preferences changed in multiple processes. * @param { Function } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500019 - Failed to obtain the subscription service. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 10 @@ -1821,9 +1885,9 @@ declare namespace preferences { * * @param { 'multiProcessChange' } type - Indicates the callback when preferences changed in multiple processes. * @param { Callback<string> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15500019 - Failed to obtain the subscription service. * @syscap SystemCapability.DistributedDataManager.Preferences.Core @@ -1838,9 +1902,9 @@ declare namespace preferences { * @param { 'dataChange' } type - Indicates the type of the event to observe. * @param { Array<string> } keys - Indicates one or more keys to listen for. * @param { Callback<Record<string, ValueType>> } callback - Indicates the callback used to return the data change. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -1853,9 +1917,9 @@ declare namespace preferences { * * @param { 'change' } type - Indicates the callback when preferences changes. * @param { Callback<{ key: string }> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 9 */ @@ -1864,9 +1928,9 @@ declare namespace preferences { * * @param { 'change' } type - Indicates the callback when preferences changes. * @param { Function } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform * @since 10 @@ -1876,9 +1940,9 @@ declare namespace preferences { * * @param { 'change' } type - Indicates the callback when preferences changes. * @param { Callback<string> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @crossplatform @@ -1892,9 +1956,9 @@ declare namespace preferences { * * @param { 'multiProcessChange' } type - Indicates the callback when preferences changed in multiple processes. * @param { Function } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @since 10 */ @@ -1903,9 +1967,9 @@ declare namespace preferences { * * @param { 'multiProcessChange' } type - Indicates the callback when preferences changed in multiple processes. * @param { Callback<string> } callback - Indicates the callback function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -1919,9 +1983,9 @@ declare namespace preferences { * @param { 'dataChange' } type - Indicates the event type. * @param { Array<string> } keys - Indicates the data whose changes are not observed. * @param { Callback<Record<string, ValueType>> } callback - Indicates the callback to unregister. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice diff --git a/api/@ohos.data.relationalStore.d.ts b/api/@ohos.data.relationalStore.d.ts index 9416883248c709d5ccc4969635fe1d54f75174d8..0d541a25e5194636107062610e8dd4cbf6d3afc2 100644 --- a/api/@ohos.data.relationalStore.d.ts +++ b/api/@ohos.data.relationalStore.d.ts @@ -21,7 +21,9 @@ import { AsyncCallback, Callback } from './@ohos.base'; import Context from './application/BaseContext'; import dataSharePredicates from './@ohos.data.dataSharePredicates'; +/*** if arkts 1.1 */ import sendableRelationalStore from './@ohos.data.sendableRelationalStore'; +/*** endif */ /** * Provides methods for rdbStore create and delete. * @@ -35,7 +37,8 @@ import sendableRelationalStore from './@ohos.data.sendableRelationalStore'; * @namespace relationalStore * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace relationalStore { /** @@ -44,7 +47,8 @@ declare namespace relationalStore { * @enum { number } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ enum AssetStatus { /** @@ -52,7 +56,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ ASSET_NORMAL, @@ -61,7 +66,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ ASSET_INSERT, @@ -70,7 +76,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ ASSET_UPDATE, @@ -79,7 +86,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ ASSET_DELETE, @@ -88,7 +96,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ ASSET_ABNORMAL, @@ -97,7 +106,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ ASSET_DOWNLOADING } @@ -108,7 +118,8 @@ declare namespace relationalStore { * @interface Asset * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Asset { /** @@ -117,7 +128,8 @@ declare namespace relationalStore { * @type { string } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ name: string; @@ -127,7 +139,8 @@ declare namespace relationalStore { * @type { string } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ uri: string; @@ -137,7 +150,8 @@ declare namespace relationalStore { * @type { string } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ path: string; @@ -147,7 +161,8 @@ declare namespace relationalStore { * @type { string } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ createTime: string; @@ -157,7 +172,8 @@ declare namespace relationalStore { * @type { string } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ modifyTime: string; @@ -167,7 +183,8 @@ declare namespace relationalStore { * @type { string } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ size: string; @@ -177,7 +194,8 @@ declare namespace relationalStore { * @type { ?AssetStatus } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ status?: AssetStatus; } @@ -188,7 +206,8 @@ declare namespace relationalStore { * @typedef { Asset[] } Assets * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ type Assets = Asset[]; @@ -213,7 +232,8 @@ declare namespace relationalStore { * @typedef { null | number | string | boolean | Uint8Array | Asset | Assets | Float32Array | bigint } ValueType * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ type ValueType = null | number | string | boolean | Uint8Array | Asset | Assets | Float32Array | bigint; @@ -238,7 +258,8 @@ declare namespace relationalStore { * @typedef { Record<string, ValueType> } ValuesBucket * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ type ValuesBucket = Record<string, ValueType>; @@ -282,7 +303,8 @@ declare namespace relationalStore { * @interface StoreConfig * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ interface StoreConfig { /** @@ -297,7 +319,8 @@ declare namespace relationalStore { * @type { string } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ name: string; @@ -307,7 +330,8 @@ declare namespace relationalStore { * @type { SecurityLevel } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ securityLevel: SecurityLevel; @@ -316,7 +340,8 @@ declare namespace relationalStore { * * @type { ?boolean } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ encrypt?: boolean; @@ -326,7 +351,8 @@ declare namespace relationalStore { * @type { ?string } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @StageModelOnly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ dataGroupId?: string; @@ -336,7 +362,8 @@ declare namespace relationalStore { * @type { ?string } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ customDir?: string; @@ -356,7 +383,8 @@ declare namespace relationalStore { * * @type { ?boolean } * @syscap SystemCapability.DistributedDataManager.CloudSync.Client - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ autoCleanDirtyData?: boolean; @@ -366,7 +394,8 @@ declare namespace relationalStore { * @type { ?boolean } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ isSearchable?: boolean; @@ -375,7 +404,8 @@ declare namespace relationalStore { * * @type { ?boolean } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ allowRebuild?: boolean; @@ -384,7 +414,8 @@ declare namespace relationalStore { * * @type { ?boolean } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ vector?: boolean; @@ -394,7 +425,8 @@ declare namespace relationalStore { * * @type { ?boolean } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isReadOnly?: boolean; @@ -403,7 +435,8 @@ declare namespace relationalStore { * * @type { ?Array<string> } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ pluginLibs?: Array<string>; @@ -413,7 +446,8 @@ declare namespace relationalStore { * @type { ?HAMode } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ haMode?: HAMode; @@ -422,7 +456,8 @@ declare namespace relationalStore { * * @type { ?CryptoParam } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ cryptoParam?: CryptoParam; @@ -431,7 +466,7 @@ declare namespace relationalStore { * * @type { ?Tokenizer } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 18 + * @since 17 */ tokenizer?: Tokenizer; @@ -445,6 +480,16 @@ declare namespace relationalStore { */ persist?: boolean; + + /** + * Specifies whether the database enable the capabilities for semantic indexing processing. + * + * @type { ?boolean } + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @since 20 + */ + + enableSemanticIndex?: boolean; } /** @@ -453,7 +498,8 @@ declare namespace relationalStore { * @enum { number } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ enum HAMode { /** @@ -461,7 +507,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ SINGLE = 0, @@ -470,7 +517,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ MAIN_REPLICA } @@ -480,7 +528,8 @@ declare namespace relationalStore { * * @typedef CryptoParam * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ interface CryptoParam { /** @@ -489,7 +538,8 @@ declare namespace relationalStore { * * @type { Uint8Array } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ encryptionKey: Uint8Array; @@ -500,7 +550,8 @@ declare namespace relationalStore { * * @type { ?number } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ iterationCount?: number; @@ -510,7 +561,8 @@ declare namespace relationalStore { * * @type { ?EncryptionAlgo } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ encryptionAlgo?: EncryptionAlgo; @@ -520,7 +572,8 @@ declare namespace relationalStore { * * @type { ?HmacAlgo } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ hmacAlgo?: HmacAlgo; @@ -530,7 +583,8 @@ declare namespace relationalStore { * * @type { ?KdfAlgo } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ kdfAlgo?: KdfAlgo; @@ -540,7 +594,8 @@ declare namespace relationalStore { * * @type { ?number } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ cryptoPageSize?: number; } @@ -550,14 +605,16 @@ declare namespace relationalStore { * * @enum { number } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ enum EncryptionAlgo { /** * AES_256_GCM: Database is encrypted using AES_256_GCM. * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ AES_256_GCM = 0, @@ -565,7 +622,8 @@ declare namespace relationalStore { * AES_256_CBC: Database is encrypted using AES_256_CBC. * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ AES_256_CBC } @@ -575,14 +633,16 @@ declare namespace relationalStore { * * @enum { number } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ enum HmacAlgo { /** * SHA1: HMAC_SHA1 algorithm. * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ SHA1 = 0, @@ -590,7 +650,8 @@ declare namespace relationalStore { * SHA256: HMAC_SHA256 algorithm. * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ SHA256, @@ -598,7 +659,8 @@ declare namespace relationalStore { * SHA512: HMAC_SHA512 algorithm. * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ SHA512 } @@ -608,14 +670,16 @@ declare namespace relationalStore { * * @enum { number } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ enum KdfAlgo { /** * KDF_SHA1: PBKDF2_HMAC_SHA1 algorithm. * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ KDF_SHA1 = 0, @@ -623,7 +687,8 @@ declare namespace relationalStore { * KDF_SHA256: PBKDF2_HMAC_SHA256 algorithm. * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ KDF_SHA256, @@ -631,7 +696,8 @@ declare namespace relationalStore { * KDF_SHA512: PBKDF2_HMAC_SHA512 algorithm. * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ KDF_SHA512 } @@ -641,21 +707,21 @@ declare namespace relationalStore { * * @enum { number } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 18 + * @since 17 */ enum Tokenizer { /** * NONE_TOKENIZER: not use tokenizer * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 18 + * @since 17 */ NONE_TOKENIZER = 0, /** * ICU_TOKENIZER: native icu tokenizer. * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core - * @since 18 + * @since 17 */ ICU_TOKENIZER, /** @@ -941,13 +1007,54 @@ declare namespace relationalStore { executeTime: number; } + /** + * Defines an exception message. + * + * @interface ExceptionMessage + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + interface ExceptionMessage { + /** + * Error code returned by SQLite, see {@link https://www.sqlite.org/rescode.html}. + * + * @type { number } + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + code: number; + + /** + * Error message. + * + * @type { string } + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + message: string; + + /** + * SQL statement executed when the exception occurs. + * + * @type { string } + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + sql: string; + } + /** * Describes the {@code RdbStore} type. * * @enum { number } * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ enum SecurityLevel { /** @@ -956,7 +1063,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ S1 = 1, @@ -966,7 +1074,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ S2 = 2, @@ -976,7 +1085,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ S3 = 3, @@ -986,7 +1096,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ S4 = 4 } @@ -1661,7 +1772,8 @@ declare namespace relationalStore { * * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ class RdbPredicates { /** @@ -1681,7 +1793,8 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(name: string); @@ -2285,7 +2398,8 @@ declare namespace relationalStore { * Configure RdbPredicates to specify the start position of the returned result. * Use this method together with limit(number). * - * @param { number } rowOffset - Indicates the start position of the returned result. The value is a positive integer. + * @param { number } rowOffset - Indicates the start position of the returned result. + * The value is a positive integer. * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -2296,7 +2410,8 @@ declare namespace relationalStore { * Configure RdbPredicates to specify the start position of the returned result. * Use this method together with limit(number). * - * @param { number } rowOffset - Indicates the start position of the returned result. The value is a positive integer. + * @param { number } rowOffset - Indicates the start position of the returned result. + * The value is a positive integer. * @returns { RdbPredicates } - The SQL query statement with the specified {@link RdbPredicates}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -2437,6 +2552,20 @@ declare namespace relationalStore { * @since 12 */ notLike(field: string, value: string): RdbPredicates; + + /** + * Filters the grouped data that meets the specified conditions. + * + * @param { string } conditions - Conditions used to filter the data obtained using GROUP BY. + * @param { Array<ValueType> } args - Parameters to be used in the conditions. + * @returns { RdbPredicates } - Returns the RdbPredicates object. + * @throws { BusinessError } 14800001 - Invalid arguments. Possible causes: 1. Empty conditions; + * <br>2. Missing GROUP BY clause. + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + having(conditions:string, args?: Array<ValueType>): RdbPredicates; } /** @@ -2452,7 +2581,8 @@ declare namespace relationalStore { * @interface ResultSet * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ interface ResultSet { /** @@ -2645,11 +2775,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800019 - The SQL must be a query statement. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -2665,7 +2796,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getColumnIndex(columnName: string): number; @@ -2703,11 +2835,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800019 - The SQL must be a query statement. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -2737,12 +2870,13 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800019 - The SQL must be a query statement. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -2770,12 +2904,13 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800019 - The SQL must be a query statement. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -2801,7 +2936,7 @@ declare namespace relationalStore { * * @param { number } offset - Indicates the offset relative to the current position. * @returns { boolean } True if the result set is moved successfully and does not go beyond the range; - * Returns false otherwise. + * Returns false otherwise. * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -2814,7 +2949,7 @@ declare namespace relationalStore { * * @param { number } offset - Indicates the offset relative to the current position. * @returns { boolean } True if the result set is moved successfully and does not go beyond the range; - * Returns false otherwise. + * Returns false otherwise. * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -2828,15 +2963,16 @@ declare namespace relationalStore { * * @param { number } offset - Indicates the offset relative to the current position. * @returns { boolean } True if the result set is moved successfully and does not go beyond the range; - * Returns false otherwise. + * Returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800019 - The SQL must be a query statement. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -2887,11 +3023,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800019 - The SQL must be a query statement. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -2915,7 +3052,7 @@ declare namespace relationalStore { * Go to the first row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is empty. + * Returns false otherwise, for example, if the result set is empty. * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 9 @@ -2924,7 +3061,7 @@ declare namespace relationalStore { * Go to the first row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is empty. + * Returns false otherwise, for example, if the result set is empty. * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -2934,13 +3071,14 @@ declare namespace relationalStore { * Go to the first row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is empty. + * Returns false otherwise, for example, if the result set is empty. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800019 - The SQL must be a query statement. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -2956,7 +3094,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ goToFirstRow(): boolean; @@ -2964,7 +3103,7 @@ declare namespace relationalStore { * Go to the last row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is empty. + * Returns false otherwise, for example, if the result set is empty. * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 9 @@ -2973,7 +3112,7 @@ declare namespace relationalStore { * Go to the last row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is empty. + * Returns false otherwise, for example, if the result set is empty. * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -2983,13 +3122,14 @@ declare namespace relationalStore { * Go to the last row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is empty. + * Returns false otherwise, for example, if the result set is empty. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800019 - The SQL must be a query statement. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3013,7 +3153,7 @@ declare namespace relationalStore { * Go to the next row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is already in the last row. + * Returns false otherwise, for example, if the result set is already in the last row. * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 9 @@ -3022,7 +3162,7 @@ declare namespace relationalStore { * Go to the next row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is already in the last row. + * Returns false otherwise, for example, if the result set is already in the last row. * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -3032,13 +3172,14 @@ declare namespace relationalStore { * Go to the next row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is already in the last row. + * Returns false otherwise, for example, if the result set is already in the last row. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800019 - The SQL must be a query statement. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3062,7 +3203,7 @@ declare namespace relationalStore { * Go to the previous row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is already in the first row. + * Returns false otherwise, for example, if the result set is already in the first row. * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 9 @@ -3071,7 +3212,7 @@ declare namespace relationalStore { * Go to the previous row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is already in the first row. + * Returns false otherwise, for example, if the result set is already in the first row. * @throws { BusinessError } 14800012 - The result set is empty or the specified location is invalid. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -3081,13 +3222,14 @@ declare namespace relationalStore { * Go to the previous row of the result set. * * @returns { boolean } True if the result set is moved successfully; - * Returns false otherwise, for example, if the result set is already in the first row. + * Returns false otherwise, for example, if the result set is already in the first row. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800019 - The SQL must be a query statement. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3144,11 +3286,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3205,11 +3348,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3225,7 +3369,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getString(columnIndex: number): string; @@ -3266,11 +3411,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3286,7 +3432,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getLong(columnIndex: number): number; @@ -3327,11 +3474,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3375,11 +3523,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3423,11 +3572,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3457,11 +3607,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3490,11 +3641,12 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3513,6 +3665,32 @@ declare namespace relationalStore { */ getValue(columnIndex: number): ValueType; + /** + * Obtains the value of the specified column in the current row. + * The implementation class determines whether to throw an exception if the value of the specified column + * in the current row is null or the specified column is not of the Assets type. + * If the value of the specified column in the current row exceeds the value range of number, return a string type. + * Only for flutter + * + * @param { number } columnIndex - Indicates the specified column index, which starts from 0. + * @returns { ValueType } The value of the specified column. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. + * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. + * @throws { BusinessError } 14800023 - SQLite: Access permission denied. + * @throws { BusinessError } 14800024 - SQLite: The database file is locked. + * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. + * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred. + * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file. + * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit. + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @since 20 + */ + getValueForFlutter(columnIndex: number): ValueType + /** * Obtains the value of the specified column in the current row as a float array. * The implementation class determines whether to throw an exception if the value of the specified column @@ -3523,10 +3701,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - The capability is not supported because the database is not a vector DB. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3560,11 +3739,12 @@ declare namespace relationalStore { * * @returns { ValuesBucket } Indicates the row of data {@link ValuesBucket} to be inserted into the table. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3589,11 +3769,12 @@ declare namespace relationalStore { * * @returns { ValuesBucket } Indicates the row of data {@link ValuesBucket} to be inserted into the table. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3613,19 +3794,44 @@ declare namespace relationalStore { */ getRow(): ValuesBucket; + /** + * Obtains the values of all columns in the specified row. + * If the value of a column in the current row exceeds the value range of number, return a string type. + * Only for flutter + * + * @returns { ValuesBucket } Indicates the row of data {@link ValuesBucket} to be inserted into the table. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. + * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. + * @throws { BusinessError } 14800023 - SQLite: Access permission denied. + * @throws { BusinessError } 14800024 - SQLite: The database file is locked. + * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. + * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred. + * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file. + * @throws { BusinessError } 14800031 - SQLite: TEXT or BLOB exceeds size limit. + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + getRowForFlutter(): ValuesBucket + /** * Obtains the values of all columns in the specified rows. * @param { number } maxCount - Indicates the maximum number of rows. * @param { number } position - Indicates the start position to obtain the values. - * @returns { Promise<Array<ValuesBucket>> } Promise used to return the values obtained, in an{@link Array<ValuesBucket>}. + * @returns { Promise<Array<ValuesBucket>> } Promise used to return the values obtained, + * in an {@link Array<ValuesBucket>}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3648,11 +3854,12 @@ declare namespace relationalStore { * @returns { sendableRelationalStore.ValuesBucket } Indicates the row of data * {@link sendableRelationalStore.ValuesBucket} to be inserted into the table. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3676,7 +3883,7 @@ declare namespace relationalStore { * * @param { number } columnIndex - Indicates the specified column index, which starts from 0. * @returns { boolean } True if the value of the specified column in the current row is null; - * Returns false otherwise. + * Returns false otherwise. * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3688,7 +3895,7 @@ declare namespace relationalStore { * * @param { number } columnIndex - Indicates the specified column index, which starts from 0. * @returns { boolean } True if the value of the specified column in the current row is null; - * Returns false otherwise. + * Returns false otherwise. * @throws { BusinessError } 14800013 - The column value is null or the column type is incompatible. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3701,15 +3908,16 @@ declare namespace relationalStore { * * @param { number } columnIndex - Indicates the specified column index, which starts from 0. * @returns { boolean } True if the value of the specified column in the current row is null; - * Returns false otherwise. + * Returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800012 - Row out of bounds. - * @throws { BusinessError } 14800013 - Column out of bounds. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. + * @throws { BusinessError } 14800013 - Resultset is empty or column index is out of bounds. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3751,7 +3959,7 @@ declare namespace relationalStore { * Calling this method on the result set will release all of its resources and makes it ineffective. * * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800012 - Row out of bounds. + * @throws { BusinessError } 14800012 - ResultSet is empty or pointer index is out of bounds. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform * @since 12 @@ -3774,7 +3982,8 @@ declare namespace relationalStore { * @interface RdbStore * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ interface RdbStore { /** @@ -3805,9 +4014,10 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -3866,10 +4076,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3915,10 +4126,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -3974,10 +4186,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4023,10 +4236,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4057,10 +4271,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4092,10 +4307,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4119,8 +4335,10 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. - * @param { AsyncCallback<number> } callback - The number of values that were inserted if the operation is successful. returns -1 otherwise. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @param { AsyncCallback<number> } callback - + * The number of values that were inserted if the operation is successful. returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. @@ -4131,8 +4349,10 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. - * @param { AsyncCallback<number> } callback - The number of values that were inserted if the operation is successful. returns -1 otherwise. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @param { AsyncCallback<number> } callback - + * The number of values that were inserted if the operation is successful. returns -1 otherwise. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -4145,15 +4365,18 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. - * @param { AsyncCallback<number> } callback - The number of values that were inserted if the operation is successful. returns -1 otherwise. + * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} + * to be inserted into the table. + * @param { AsyncCallback<number> } callback - + * The number of values that were inserted if the operation is successful. returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4170,7 +4393,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ batchInsert(table: string, values: Array<ValuesBucket>, callback: AsyncCallback<number>): void; @@ -4178,8 +4402,10 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. - * @returns { Promise<number> } The number of values that were inserted if the operation is successful. returns -1 otherwise. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @returns { Promise<number> } The number of values that were inserted if the operation is successful. + * returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. @@ -4190,8 +4416,10 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. - * @returns { Promise<number> } The number of values that were inserted if the operation is successful. returns -1 otherwise. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @returns { Promise<number> } The number of values that were inserted if the operation is successful. + * returns -1 otherwise. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -4204,15 +4432,18 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. - * @returns { Promise<number> } The number of values that were inserted if the operation is successful. returns -1 otherwise. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @returns { Promise<number> } The number of values that were inserted if the operation is successful. + * returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4229,7 +4460,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ batchInsert(table: string, values: Array<ValuesBucket>): Promise<number>; @@ -4237,15 +4469,17 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. * @returns { number } The number of values that were inserted if the operation is successful. returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4262,7 +4496,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ batchInsertSync(table: string, values: Array<ValuesBucket>): number; @@ -4270,16 +4505,19 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table. - * @returns { Promise<number> } The number of values that were inserted if the operation is successful. returns -1 otherwise. + * @returns { Promise<number> } The number of values that were inserted if the operation is successful. + * returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4304,15 +4542,17 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. * @returns { number } The number of values that were inserted if the operation is successful. returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4337,8 +4577,9 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -4350,8 +4591,9 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -4365,16 +4607,18 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4399,8 +4643,9 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. @@ -4415,17 +4660,19 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4455,8 +4702,9 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -4468,8 +4716,9 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -4483,16 +4732,18 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4517,8 +4768,9 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. @@ -4533,17 +4785,19 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4568,17 +4822,19 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates with sync interface. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table. * @returns { number } The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4604,14 +4860,15 @@ declare namespace relationalStore { * * @param { string } table - Indicates the target table. * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. + * The key-value pairs are associated with column names of the database table. * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by - * the instance object of {@link dataSharePredicates.DataSharePredicates}. + * the instance object of {@link dataSharePredicates.DataSharePredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -4622,15 +4879,16 @@ declare namespace relationalStore { * * @param { string } table - Indicates the target table. * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. + * The key-value pairs are associated with column names of the database table. * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by - * the instance object of {@link dataSharePredicates.DataSharePredicates}. + * the instance object of {@link dataSharePredicates.DataSharePredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -4641,18 +4899,20 @@ declare namespace relationalStore { * * @param { string } table - Indicates the target table. * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. + * The key-value pairs are associated with column names of the database table. * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by - * the instance object of {@link dataSharePredicates.DataSharePredicates}. + * the instance object of {@link dataSharePredicates.DataSharePredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4684,14 +4944,15 @@ declare namespace relationalStore { * * @param { string } table - Indicates the target table. * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. + * The key-value pairs are associated with column names of the database table. * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by - * the instance object of {@link dataSharePredicates.DataSharePredicates}. + * the instance object of {@link dataSharePredicates.DataSharePredicates}. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -4702,15 +4963,16 @@ declare namespace relationalStore { * * @param { string } table - Indicates the target table. * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. + * The key-value pairs are associated with column names of the database table. * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by - * the instance object of {@link dataSharePredicates.DataSharePredicates}. + * the instance object of {@link dataSharePredicates.DataSharePredicates}. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -4721,18 +4983,20 @@ declare namespace relationalStore { * * @param { string } table - Indicates the target table. * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. + * The key-value pairs are associated with column names of the database table. * @param { dataSharePredicates.DataSharePredicates } predicates - Indicates the specified update condition by - * the instance object of {@link dataSharePredicates.DataSharePredicates}. + * the instance object of {@link dataSharePredicates.DataSharePredicates}. * @returns { Promise<number> } The number of affected rows. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4757,7 +5021,8 @@ declare namespace relationalStore { /** * Deletes data from the database based on a specified instance object of RdbPredicates. * - * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified delete condition by the instance object of {@link RdbPredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -4768,7 +5033,8 @@ declare namespace relationalStore { /** * Deletes data from the database based on a specified instance object of RdbPredicates. * - * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified delete condition by the instance object of {@link RdbPredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -4781,15 +5047,17 @@ declare namespace relationalStore { /** * Deletes data from the database based on a specified instance object of RdbPredicates. * - * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified delete condition by the instance object of {@link RdbPredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4806,14 +5074,16 @@ declare namespace relationalStore { * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ delete(predicates: RdbPredicates, callback: AsyncCallback<number>): void; /** * Deletes data from the database based on a specified instance object of RdbPredicates. * - * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified delete condition by the instance object of {@link RdbPredicates}. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -4824,7 +5094,8 @@ declare namespace relationalStore { /** * Deletes data from the database based on a specified instance object of RdbPredicates. * - * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified delete condition by the instance object of {@link RdbPredicates}. * @returns { Promise<number> } return the number of affected rows. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -4837,15 +5108,17 @@ declare namespace relationalStore { /** * Deletes data from the database based on a specified instance object of RdbPredicates. * - * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified delete condition by the instance object of {@link RdbPredicates}. * @returns { Promise<number> } return the number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4862,22 +5135,25 @@ declare namespace relationalStore { * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ delete(predicates: RdbPredicates): Promise<number>; /** * Deletes data from the database based on a specified instance object of RdbPredicates with sync interface. * - * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}. - * @returns { number } return the number of affected rows. + * @param { RdbPredicates } predicates - + * The specified delete condition by the instance object of {@link RdbPredicates}. + * @returns { number } return the number of rows deleted. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4894,7 +5170,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ deleteSync(predicates: RdbPredicates): number; /** @@ -4902,12 +5179,13 @@ declare namespace relationalStore { * * @param { string } table - Indicates the target table. * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by - * the instance object of {@link dataSharePredicates.DataSharePredicates}. + * the instance object of {@link dataSharePredicates.DataSharePredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -4917,14 +5195,15 @@ declare namespace relationalStore { * Deletes data from the database based on a specified instance object of RdbPredicates. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified delete condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -4934,17 +5213,19 @@ declare namespace relationalStore { * Deletes data from the database based on a specified instance object of RdbPredicates. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified delete condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. * @param { AsyncCallback<number> } callback - The number of affected rows. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -4962,7 +5243,8 @@ declare namespace relationalStore { * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ delete(table: string, predicates: dataSharePredicates.DataSharePredicates, callback: AsyncCallback<number>): void; @@ -4970,13 +5252,14 @@ declare namespace relationalStore { * Deletes data from the database based on a specified instance object of RdbPredicates. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified delete condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -4986,14 +5269,15 @@ declare namespace relationalStore { * Deletes data from the database based on a specified instance object of RdbPredicates. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified delete condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -5003,17 +5287,19 @@ declare namespace relationalStore { * Deletes data from the database based on a specified instance object of RdbPredicates. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified delete condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified delete condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. * @returns { Promise<number> } The number of affected rows. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5031,14 +5317,16 @@ declare namespace relationalStore { * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ delete(table: string, predicates: dataSharePredicates.DataSharePredicates): Promise<number>; /** * Queries data in the database based on specified conditions. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -5050,12 +5338,13 @@ declare namespace relationalStore { /** * Queries data in the database based on specified conditions. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -5066,8 +5355,10 @@ declare namespace relationalStore { /** * Queries data in the database based on specified conditions. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. - * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. + * @param { Array<string> } columns - + * The columns to query. If the value is empty array, the query applies to all columns. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -5078,8 +5369,10 @@ declare namespace relationalStore { /** * Queries data in the database based on specified conditions. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. - * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. + * @param { Array<string> } columns - + * The columns to query. If the value is empty array, the query applies to all columns. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -5091,13 +5384,15 @@ declare namespace relationalStore { /** * Queries data in the database based on specified conditions. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. - * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. + * @param { Array<string> } columns - + * The columns to query. If the value is empty array, the query applies to all columns. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -5108,7 +5403,8 @@ declare namespace relationalStore { /** * Queries data in the database based on specified conditions. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -5120,7 +5416,8 @@ declare namespace relationalStore { /** * Queries data in the database based on specified conditions. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -5133,13 +5430,14 @@ declare namespace relationalStore { /** * Queries data in the database based on specified conditions. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -5151,13 +5449,14 @@ declare namespace relationalStore { * Queries data in the database based on specified conditions. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified query condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -5167,14 +5466,15 @@ declare namespace relationalStore { * Queries data in the database based on specified conditions. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified query condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi @@ -5187,14 +5487,16 @@ declare namespace relationalStore { * Queries data in the database based on specified conditions. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. - * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified query condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. + * @param { Array<string> } columns - + * The columns to query. If the value is empty array, the query applies to all columns. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -5204,15 +5506,17 @@ declare namespace relationalStore { * Queries data in the database based on specified conditions. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. - * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified query condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. + * @param { Array<string> } columns - + * The columns to query. If the value is empty array, the query applies to all columns. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi @@ -5230,14 +5534,15 @@ declare namespace relationalStore { * Queries data in the database based on specified conditions. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified query condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @StageModelOnly @@ -5247,15 +5552,16 @@ declare namespace relationalStore { * Queries data in the database based on specified conditions. * * @param { string } table - Indicates the target table. - * @param { dataSharePredicates.DataSharePredicates } predicates - The specified query condition by the instance object - * of {@link dataSharePredicates.DataSharePredicates}. + * @param { dataSharePredicates.DataSharePredicates } predicates - + * The specified query condition by the instance object of {@link dataSharePredicates.DataSharePredicates}. * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi @@ -5271,13 +5577,15 @@ declare namespace relationalStore { /** * Queries data in the database based on specified conditions with sync function. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. - * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. + * @param { Array<string> } columns - + * The columns to query. If the value is empty array, the query applies to all columns. * @returns { ResultSet } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -5305,7 +5613,7 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -5317,7 +5625,8 @@ declare namespace relationalStore { * Queries data in the database based on SQL statement. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -5329,7 +5638,8 @@ declare namespace relationalStore { * Queries data in the database based on SQL statement. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -5342,12 +5652,13 @@ declare namespace relationalStore { * Queries data in the database based on SQL statement. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -5359,7 +5670,8 @@ declare namespace relationalStore { * Queries data in the database based on SQL statement. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -5371,7 +5683,8 @@ declare namespace relationalStore { * Queries data in the database based on SQL statement. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -5384,12 +5697,13 @@ declare namespace relationalStore { * Queries data in the database based on SQL statement. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform @@ -5401,16 +5715,18 @@ declare namespace relationalStore { * Queries data in the database based on SQL statement with sync interface. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @returns { ResultSet } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ querySqlSync(sql: string, bindArgs?: Array<ValueType>): ResultSet; @@ -5420,12 +5736,15 @@ declare namespace relationalStore { * @param { string } table - Indicates the name of the table to check. * @param { string } columnName - Indicates the name of the column to check. * @param { PRIKeyType[] } primaryKeys - Indicates the primary keys of the rows to check. - * @returns { Promise<ModifyTime> } -The promise returned by the function. ModifyTime indicates the modify time of current row. + * @returns { Promise<ModifyTime> } - + * The promise returned by the function. ModifyTime indicates the modify time of current row. * If this table does not support cloud, the {@link ModifyTime} will be empty. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 3 - 4 parameter(s)! 2. The RdbStore must be not nullptr. - * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. 5. The PRIKey must be number or string. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 3 - 4 parameter(s)! 2. The RdbStore must be not nullptr. + * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. + * 5. The PRIKey must be number or string. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 10 */ @@ -5435,16 +5754,20 @@ declare namespace relationalStore { * @param { string } table - Indicates the name of the table to check. * @param { string } columnName - Indicates the name of the column to check. * @param { PRIKeyType[] } primaryKeys - Indicates the primary keys of the rows to check. - * @returns { Promise<ModifyTime> } -The promise returned by the function. ModifyTime indicates the modify time of current row. + * @returns { Promise<ModifyTime> } - + * The promise returned by the function. ModifyTime indicates the modify time of current row. * If this table does not support cloud, the {@link ModifyTime} will be empty. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 3 - 4 parameter(s)! 2. The RdbStore must be not nullptr. - * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. 5. The PRIKey must be number or string. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 3 - 4 parameter(s)! 2. The RdbStore must be not nullptr. + * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. + * 5. The PRIKey must be number or string. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5469,12 +5792,15 @@ declare namespace relationalStore { * @param { string } table - Indicates the name of the table to check. * @param { string } columnName - Indicates the name of the column to check. * @param { PRIKeyType[] } primaryKeys - Indicates the primary keys of the rows to check. - * @param { AsyncCallback<ModifyTime> } callback - The callback of getModifyTime. ModifyTime indicates the modify time of current row. + * @param { AsyncCallback<ModifyTime> } callback - + * The callback of getModifyTime. ModifyTime indicates the modify time of current row. * If this table does not support cloud, the {@link ModifyTime} will be empty. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 3 - 4 parameter(s)! 2. The RdbStore must be not nullptr. - * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. 5. The PRIKey must be number or string. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 3 - 4 parameter(s)! 2. The RdbStore must be not nullptr. + * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. + * 5. The PRIKey must be number or string. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 10 */ @@ -5484,16 +5810,20 @@ declare namespace relationalStore { * @param { string } table - Indicates the name of the table to check. * @param { string } columnName - Indicates the name of the column to check. * @param { PRIKeyType[] } primaryKeys - Indicates the primary keys of the rows to check. - * @param { AsyncCallback<ModifyTime> } callback - The callback of getModifyTime. ModifyTime indicates the modify time of current row. + * @param { AsyncCallback<ModifyTime> } callback - + * The callback of getModifyTime. ModifyTime indicates the modify time of current row. * If this table does not support cloud, the {@link ModifyTime} will be empty. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 3 - 4 parameter(s)! 2. The RdbStore must be not nullptr. - * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. 5. The PRIKey must be number or string. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 3 - 4 parameter(s)! 2. The RdbStore must be not nullptr. + * 3. The tablesNames must be not empty string. 4. The columnName must be not empty string. + * 5. The PRIKey must be number or string. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5527,7 +5857,8 @@ declare namespace relationalStore { * @param { AsyncCallback<void> } callback - Indicates the callback invoked to return the result. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The tablesNames must be not empty string. 4. The cursor must be valid cursor. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @since 11 @@ -5540,14 +5871,16 @@ declare namespace relationalStore { * @param { string } table - Indicates the name of the table to check. * @param { number } cursor - Indicates the position of the data to be cleaned up. * @param { AsyncCallback<void> } callback - Indicates the callback invoked to return the result. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The tablesNames must be not empty string. 4. The cursor must be valid cursor. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5573,7 +5906,8 @@ declare namespace relationalStore { * @param { AsyncCallback<void> } callback - The callback of clean. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The tablesNames must be not empty string. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @since 11 @@ -5583,14 +5917,16 @@ declare namespace relationalStore { * * @param { string } table - Indicates the name of the table to check. * @param { AsyncCallback<void> } callback - The callback of clean. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s). 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s). 2. The RdbStore must be not nullptr. * 3. The tablesNames must be not empty string. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5620,7 +5956,8 @@ declare namespace relationalStore { * @returns { Promise<void> } -The promise returned by the function. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The tablesNames must be not empty string. 4. The cursor must be valid cursor. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @since 11 @@ -5634,14 +5971,16 @@ declare namespace relationalStore { * @param { string } table - Indicates the name of the table to check. * @param { number } [cursor] - Indicates the cursor. * @returns { Promise<void> } -The promise returned by the function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The tablesNames must be not empty string. 4. The cursor must be valid cursor. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5663,13 +6002,15 @@ declare namespace relationalStore { /** * Obtains sharing resource of rows corresponding to the predicates. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { Array<string> } [columns] - The specified columns to query. * @returns { Promise<ResultSet> } -The promise returned by the function. * {@link ResultSet} is query result. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The predicates must be an RdbPredicates. 4. The columns must be a string array. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @systemapi @@ -5678,18 +6019,21 @@ declare namespace relationalStore { /** * Obtains sharing resource of rows corresponding to the predicates. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { Array<string> } [columns] - The specified columns to query. * @returns { Promise<ResultSet> } -The promise returned by the function. * {@link ResultSet} is query result. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The predicates must be an RdbPredicates. 4. The columns must be a string array. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5712,12 +6056,14 @@ declare namespace relationalStore { /** * Obtains sharing resource of rows corresponding to the predicates. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { AsyncCallback<ResultSet> } callback - The callback of querySharingResource. * {@link ResultSet} is query result. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The predicates must be an RdbPredicates. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @systemapi @@ -5726,17 +6072,20 @@ declare namespace relationalStore { /** * Obtains sharing resource of rows corresponding to the predicates. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { AsyncCallback<ResultSet> } callback - The callback of querySharingResource. * {@link ResultSet} is query result. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The predicates must be an RdbPredicates. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5759,13 +6108,15 @@ declare namespace relationalStore { /** * Obtains sharing resource of rows corresponding to the predicates. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { Array<string> } columns - The specified columns to query. * @param { AsyncCallback<ResultSet> } callback - The callback of querySharingResource. * {@link ResultSet} is query result. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The predicates must be an RdbPredicates. 4. The columns must be a string array. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @systemapi @@ -5774,18 +6125,21 @@ declare namespace relationalStore { /** * Obtains sharing resource of rows corresponding to the predicates. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { Array<string> } columns - The specified columns to query. * @param { AsyncCallback<ResultSet> } callback - The callback of querySharingResource. * {@link ResultSet} is query result. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be not nullptr. * 3. The predicates must be an RdbPredicates. 4. The columns must be a string array. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5827,10 +6181,11 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.). * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5847,7 +6202,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ executeSql(sql: string, callback: AsyncCallback<void>): void; @@ -5855,7 +6211,8 @@ declare namespace relationalStore { * Executes a SQL statement that contains specified parameters but returns no value. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @param { AsyncCallback<void> } callback - The callback of executeSql. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -5867,7 +6224,8 @@ declare namespace relationalStore { * Executes a SQL statement that contains specified parameters but returns no value. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @param { AsyncCallback<void> } callback - The callback of executeSql. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -5881,16 +6239,18 @@ declare namespace relationalStore { * Executes a SQL statement that contains specified parameters but returns no value. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @param { AsyncCallback<void> } callback - The callback of executeSql. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.). * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5907,7 +6267,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ executeSql(sql: string, bindArgs: Array<ValueType>, callback: AsyncCallback<void>): void; @@ -5915,7 +6276,8 @@ declare namespace relationalStore { * Executes a SQL statement that contains specified parameters but returns no value. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -5927,7 +6289,8 @@ declare namespace relationalStore { * Executes a SQL statement that contains specified parameters but returns no value. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -5941,16 +6304,18 @@ declare namespace relationalStore { * Executes a SQL statement that contains specified parameters but returns no value. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } bindArgs - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } bindArgs - + * Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.). * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -5967,7 +6332,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ executeSql(sql: string, bindArgs?: Array<ValueType>): Promise<void>; @@ -5975,16 +6341,18 @@ declare namespace relationalStore { * Executes a SQL statement that contains specified parameters and returns a value of ValueType. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. + * The values are strings. * @returns { Promise<ValueType> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.). * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6009,16 +6377,18 @@ declare namespace relationalStore { * * @param { string } sql - Indicates the SQL statement to execute. * @param { number } txId - Indicates the transaction ID which is obtained by beginTrans or 0. - * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. + * The values are strings. * @returns { Promise<ValueType> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.). * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6042,15 +6412,17 @@ declare namespace relationalStore { * Executes a SQL statement that contains specified parameters and returns a value of ValueType with sync interface. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. + * The values are strings. * @returns { ValueType } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6094,10 +6466,11 @@ declare namespace relationalStore { * * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6114,7 +6487,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800047 - The WAL file size exceeds the default limit. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ beginTransaction(): void; @@ -6125,10 +6499,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr. * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.). * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6168,10 +6543,11 @@ declare namespace relationalStore { * * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6187,7 +6563,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ commit(): void; @@ -6198,11 +6575,12 @@ declare namespace relationalStore { * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. - * @throws { BusinessError } 14800011 - Database corrupted. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6241,10 +6619,11 @@ declare namespace relationalStore { * * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6260,7 +6639,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800034 - SQLite: Library used incorrectly. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ rollBack(): void; @@ -6270,11 +6650,12 @@ declare namespace relationalStore { * @param { number } txId - Indicates the transaction ID which is obtained by beginTrans. * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr. - * @throws { BusinessError } 14800011 - Database corrupted. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6323,11 +6704,12 @@ declare namespace relationalStore { * @param { AsyncCallback<void> } callback - The callback of backup. * @throws { BusinessError } 401 - Parameter error. The store must not be nullptr. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Invalid database path. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6378,10 +6760,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6432,10 +6815,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6486,10 +6870,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6513,13 +6898,15 @@ declare namespace relationalStore { * Restores a database from a specified database file. * * @returns { Promise<void> } The promise returned by the function. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Invalid database path. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -6562,7 +6949,7 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -6591,7 +6978,7 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -6625,7 +7012,7 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800051 - The type of the distributed table does not match. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 @@ -6639,7 +7026,8 @@ declare namespace relationalStore { * @param { Array<string> } tables - Indicates the table names you want to set. * @param { DistributedType } type - Indicates the distributed type {@link DistributedType}. * This method only works when type equals to DistributedType.DISTRIBUTED_CLOUD - * @param { DistributedConfig } config - Indicates the distributed config of the tables. For details, see {@link DistributedConfig}. + * @param { DistributedConfig } config - + * Indicates the distributed config of the tables. For details, see {@link DistributedConfig}. * @param { AsyncCallback<void> } callback - The callback of setDistributedTables. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -6656,13 +7044,14 @@ declare namespace relationalStore { * @param { Array<string> } tables - Indicates the table names you want to set. * @param { DistributedType } type - Indicates the distributed type {@link DistributedType}. * ohos.permission.DISTRIBUTED_DATASYNC is required only when type is DISTRIBUTED_DEVICE. - * @param { DistributedConfig } config - Indicates the distributed config of the tables. For details, see {@link DistributedConfig}. + * @param { DistributedConfig } config - + * Indicates the distributed config of the tables. For details, see {@link DistributedConfig}. * @param { AsyncCallback<void> } callback - The callback of setDistributedTables. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800051 - The type of the distributed table does not match. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 @@ -6681,7 +7070,8 @@ declare namespace relationalStore { * @param { Array<string> } tables - Indicates the table names you want to set. * @param { DistributedType } type - Indicates the distributed type {@link DistributedType}. * This method only works when type equals to DistributedType.DISTRIBUTED_CLOUD - * @param { DistributedConfig } config - Indicates the distributed config of the tables. For details, see {@link DistributedConfig}. + * @param { DistributedConfig } config - + * Indicates the distributed config of the tables. For details, see {@link DistributedConfig}. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -6698,13 +7088,14 @@ declare namespace relationalStore { * @param { Array<string> } tables - Indicates the table names you want to set. * @param { DistributedType } type - Indicates the distributed type {@link DistributedType}. * ohos.permission.DISTRIBUTED_DATASYNC is required only when type is DISTRIBUTED_DEVICE. - * @param { DistributedConfig } config - Indicates the distributed config of the tables. For details, see {@link DistributedConfig}. + * @param { DistributedConfig } config - + * Indicates the distributed config of the tables. For details, see {@link DistributedConfig}. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800051 - The type of the distributed table does not match. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 @@ -6738,7 +7129,7 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -6771,7 +7162,7 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -6782,10 +7173,12 @@ declare namespace relationalStore { * * @permission ohos.permission.DISTRIBUTED_DATASYNC * @param { SyncMode } mode - Indicates the database synchronization mode. - * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}. - * @param { AsyncCallback<Array<[string, number]>> } callback - {Array<[string, number]>}: devices sync status array, - * {string}: device id, - * {number}: device sync status. + * @param { RdbPredicates } predicates - + * The specified sync condition by the instance object of {@link RdbPredicates}. + * @param { AsyncCallback<Array<[string, number]>> } callback - + * {Array<[string, number]>}: devices sync status array, + * {string}: device id, + * {number}: device sync status. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. @@ -6798,15 +7191,17 @@ declare namespace relationalStore { * * @permission ohos.permission.DISTRIBUTED_DATASYNC * @param { SyncMode } mode - Indicates the database synchronization mode. - * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}. - * @param { AsyncCallback<Array<[string, number]>> } callback - {Array<[string, number]>}: devices sync status array, - * {string}: device id, - * {number}: device sync status. + * @param { RdbPredicates } predicates - + * The specified sync condition by the instance object of {@link RdbPredicates}. + * @param { AsyncCallback<Array<[string, number]>> } callback - + * {Array<[string, number]>}: devices sync status array, + * {string}: device id, + * {number}: device sync status. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -6817,8 +7212,10 @@ declare namespace relationalStore { * * @permission ohos.permission.DISTRIBUTED_DATASYNC * @param { SyncMode } mode - Indicates the database synchronization mode. - * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}. - * @returns { Promise<Array<[string, number]>> } {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. + * @param { RdbPredicates } predicates - + * The specified sync condition by the instance object of {@link RdbPredicates}. + * @returns { Promise<Array<[string, number]>> } + * {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. @@ -6831,13 +7228,15 @@ declare namespace relationalStore { * * @permission ohos.permission.DISTRIBUTED_DATASYNC * @param { SyncMode } mode - Indicates the database synchronization mode. - * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}. - * @returns { Promise<Array<[string, number]>> } {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. + * @param { RdbPredicates } predicates - + * The specified sync condition by the instance object of {@link RdbPredicates}. + * @returns { Promise<Array<[string, number]>> } + * {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -6847,10 +7246,14 @@ declare namespace relationalStore { * Sync data to cloud. * * @param { SyncMode } mode - indicates the database synchronization mode. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. - * @param { AsyncCallback<void> } callback - {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. - * 3. The mode must be a SyncMode of cloud. 4. The progress must be a callback type. 5. The callback must be a function. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. + * @param { AsyncCallback<void> } callback - + * {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * 3. The mode must be a SyncMode of cloud. 4. The progress must be a callback type. + * 5. The callback must be a function. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @since 10 @@ -6859,12 +7262,16 @@ declare namespace relationalStore { * Sync data to cloud. * * @param { SyncMode } mode - indicates the database synchronization mode. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. - * @param { AsyncCallback<void> } callback - {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. - * 3. The mode must be a SyncMode of cloud. 4. The progress must be a callback type. 5. The callback must be a function. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. + * @param { AsyncCallback<void> } callback - + * {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * 3. The mode must be a SyncMode of cloud. 4. The progress must be a callback type. + * 5. The callback must be a function. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @since 12 */ @@ -6874,9 +7281,11 @@ declare namespace relationalStore { * Sync data to cloud. * * @param { SyncMode } mode - indicates the database synchronization mode. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. * @returns { Promise<void> } : devices sync status array, {string}: device id, {number}: device sync status. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. * 3. The mode must be a SyncMode of cloud. 4. The progress must be a callback type. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client @@ -6886,12 +7295,14 @@ declare namespace relationalStore { * Sync data to cloud. * * @param { SyncMode } mode - indicates the database synchronization mode. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. * @returns { Promise<void> } : devices sync status array, {string}: device id, {number}: device sync status. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. * 3. The mode must be a SyncMode of cloud. 4. The progress must be a callback type. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @since 12 */ @@ -6902,11 +7313,14 @@ declare namespace relationalStore { * * @param { SyncMode } mode - indicates the database synchronization mode. * @param { string[] } tables - indicates the database synchronization mode. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. - * @param { AsyncCallback<void> } callback - {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. - * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type. - * 6. The callback must be a function. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. + * @param { AsyncCallback<void> } callback - + * {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. + * 5. The progress must be a callback type. 6. The callback must be a function. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @since 10 @@ -6916,13 +7330,16 @@ declare namespace relationalStore { * * @param { SyncMode } mode - indicates the database synchronization mode. * @param { string[] } tables - indicates the database synchronization mode. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. - * @param { AsyncCallback<void> } callback - {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. - * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type. - * 6. The callback must be a function. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. + * @param { AsyncCallback<void> } callback - + * {Array<[string, number]>}: devices sync status array, {string}: device id, {number}: device sync status. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. + * 5. The progress must be a callback type. 6. The callback must be a function. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @since 12 */ @@ -6938,10 +7355,13 @@ declare namespace relationalStore { * * @param { SyncMode } mode - indicates the database synchronization mode. * @param { string[] } tables - indicates the database synchronization mode. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. * @returns { Promise<void> } : devices sync status array, {string}: device id, {number}: device sync status. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. - * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. + * 5. The progress must be a callback type. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @since 10 @@ -6951,12 +7371,15 @@ declare namespace relationalStore { * * @param { SyncMode } mode - indicates the database synchronization mode. * @param { string[] } tables - indicates the database synchronization mode. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. * @returns { Promise<void> } : devices sync status array, {string}: device id, {number}: device sync status. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. - * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. + * 5. The progress must be a callback type. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @since 12 */ @@ -6966,13 +7389,17 @@ declare namespace relationalStore { * Sync data to cloud. * * @param { SyncMode } mode - indicates the database synchronization mode. - * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. + * @param { RdbPredicates } predicates - + * The specified sync condition by the instance object of {@link RdbPredicates}. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. * @param { AsyncCallback<void> } callback - The callback of cloudSync. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. - * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type. - * 6. The callback must be a function. - * @throws { BusinessError } 202 - if permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. + * 5. The progress must be a callback type. 6. The callback must be a function. + * @throws { BusinessError } 202 - + * if permission verification failed, application which is not a system application uses system API. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @systemapi @@ -6982,15 +7409,19 @@ declare namespace relationalStore { * Sync data to cloud. * * @param { SyncMode } mode - indicates the database synchronization mode. - * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. + * @param { RdbPredicates } predicates - + * The specified sync condition by the instance object of {@link RdbPredicates}. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. * @param { AsyncCallback<void> } callback - The callback of cloudSync. - * @throws { BusinessError } 202 - if permission verification failed, application which is not a system application uses system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. - * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type. - * 6. The callback must be a function. + * @throws { BusinessError } 202 - + * if permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. + * 5. The progress must be a callback type. 6. The callback must be a function. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @systemapi * @since 12 @@ -7006,11 +7437,15 @@ declare namespace relationalStore { * Sync data to cloud. * * @param { SyncMode } mode - indicates the database synchronization mode. - * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. + * @param { RdbPredicates } predicates - + * The specified sync condition by the instance object of {@link RdbPredicates}. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. * @returns { Promise<void> } : The promise returned by the function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. - * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. + * 5. The progress must be a callback type. * @throws { BusinessError } 202 - if permission verification failed, application which is not a system * application uses system API. * @throws { BusinessError } 801 - Capability not supported. @@ -7022,15 +7457,19 @@ declare namespace relationalStore { * Sync data to cloud. * * @param { SyncMode } mode - indicates the database synchronization mode. - * @param { RdbPredicates } predicates - The specified sync condition by the instance object of {@link RdbPredicates}. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. + * @param { RdbPredicates } predicates - + * The specified sync condition by the instance object of {@link RdbPredicates}. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. * @returns { Promise<void> } : The promise returned by the function. * @throws { BusinessError } 202 - if permission verification failed, application which is not a system * application uses system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. - * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. 5. The progress must be a callback type. + * @throws { BusinessError } 401 - Parameter error. + * Possible causes: 1. Need 2 - 4 parameter(s). 2. The RdbStore must be not nullptr. + * 3. The mode must be a SyncMode of cloud. 4. The tablesNames must be not empty. + * 5. The progress must be a callback type. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.CloudSync.Client * @systemapi * @since 12 @@ -7042,8 +7481,10 @@ declare namespace relationalStore { * * @param { string } device - Indicates specified remote device. * @param { string } table - Indicates the target table. - * @param { RdbPredicates } predicates - The specified remote remote query condition by the instance object of {@link RdbPredicates}. - * @param { Array<string> } columns - The columns to remote query. If the value is empty array, the remote query applies to all columns. + * @param { RdbPredicates } predicates - + * The specified remote remote query condition by the instance object of {@link RdbPredicates}. + * @param { Array<string> } columns - The columns to remote query. + * If the value is empty array, the remote query applies to all columns. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -7057,14 +7498,16 @@ declare namespace relationalStore { * * @param { string } device - Indicates specified remote device. * @param { string } table - Indicates the target table. - * @param { RdbPredicates } predicates - The specified remote remote query condition by the instance object of {@link RdbPredicates}. - * @param { Array<string> } columns - The columns to remote query. If the value is empty array, the remote query applies to all columns. + * @param { RdbPredicates } predicates - + * The specified remote remote query condition by the instance object of {@link RdbPredicates}. + * @param { Array<string> } columns - The columns to remote query. + * If the value is empty array, the remote query applies to all columns. * @param { AsyncCallback<ResultSet> } callback - The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -7081,8 +7524,10 @@ declare namespace relationalStore { * * @param { string } device - Indicates specified remote device. * @param { string } table - Indicates the target table. - * @param { RdbPredicates } predicates - The specified remote remote query condition by the instance object of {@link RdbPredicates}. - * @param { Array<string> } columns - The columns to remote query. If the value is empty array, the remote query applies to all columns. + * @param { RdbPredicates } predicates - + * The specified remote remote query condition by the instance object of {@link RdbPredicates}. + * @param { Array<string> } columns - The columns to remote query. + * If the value is empty array, the remote query applies to all columns. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -7096,27 +7541,30 @@ declare namespace relationalStore { * * @param { string } device - Indicates specified remote device. * @param { string } table - Indicates the target table. - * @param { RdbPredicates } predicates - The specified remote remote query condition by the instance object of {@link RdbPredicates}. - * @param { Array<string> } columns - The columns to remote query. If the value is empty array, the remote query applies to all columns. + * @param { RdbPredicates } predicates - + * The specified remote remote query condition by the instance object of {@link RdbPredicates}. + * @param { Array<string> } columns - The columns to remote query. + * If the value is empty array, the remote query applies to all columns. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ remoteQuery(device: string, table: string, predicates: RdbPredicates, columns: Array<string>): Promise<ResultSet>; /** - * Registers an observer for the database. When data in the distributed database changes, - * the callback will be invoked. + * Subscribes to data changes of this RDB store. + * The registered callback will be called when data in a distributed RDB store changes. * * @param { 'dataChange' } event - Indicates the event must be string 'dataChange'. * @param { SubscribeType } type - Indicates the subscription type, which is defined in {@link SubscribeType}. * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required. - * @param { Callback<Array<string>> } observer - {Array<string>}: the observer of data change events in the distributed database. + * @param { Callback<Array<string>> } observer - + * {Array<string>}: the observer of data change events in the distributed database. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. @@ -7124,43 +7572,47 @@ declare namespace relationalStore { * @since 9 */ /** - * Registers an observer for the database. When data in the distributed database changes, + * Subscribes to data changes of this RDB store. + * The registered callback will be called when data in a distributed RDB store changes. * the callback will be invoked. * * @param { 'dataChange' } event - Indicates the event must be string 'dataChange'. * @param { SubscribeType } type - Indicates the subscription type, which is defined in {@link SubscribeType}. * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required. - * @param { Callback<Array<string>> } observer - {Array<string>}: the observer of data change events in the distributed database. + * @param { Callback<Array<string>> } observer - + * {Array<string>}: the observer of data change events in the distributed database. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ on(event: 'dataChange', type: SubscribeType, observer: Callback<Array<string>>): void; /** - * Registers an observer for the database. When data in the distributed database or the local database changes, - * the callback will be invoked. + * Subscribes to data changes of this RDB store. + * The registered callback will be called when data in a distributed RDB store changes. * * @param { 'dataChange' } event - Indicates the event must be string 'dataChange'. * @param { SubscribeType } type - Indicates the subscription type, which is defined in {@link SubscribeType}. * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required. - * If its value is SUBSCRIBE_TYPE_LOCAL_DETAILS, the callback will be invoked for data changes in the local database. + * If its value is SUBSCRIBE_TYPE_LOCAL_DETAILS, + * the callback will be invoked for data changes in the local database. * @param { Callback<Array<string>> | Callback<Array<ChangeInfo>> } observer * {Array<string>}: The observer of data change events in the distributed database. * {Array<ChangeInfo>}: The change info of data change events in the distributed database or the local database. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 10 */ /** - * Registers an observer for the database. When data in the distributed database changes, - * the callback will be invoked. + * Subscribes to data changes of this RDB store. + * The registered callback will be called when data in a distributed RDB store changes. * * @param { 'dataChange' } event - Indicates the event must be string 'dataChange'. * @param { SubscribeType } type - Indicates the subscription type, which is defined in {@link SubscribeType}. @@ -7168,11 +7620,12 @@ declare namespace relationalStore { * @param { Callback<Array<string>> | Callback<Array<ChangeInfo>> } observer * {Array<string>}: The observer of data change events in the distributed database. * {Array<ChangeInfo>}: The change info of data change events in the distributed database. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -7181,8 +7634,9 @@ declare namespace relationalStore { /** * Registers an observer for the database. * - * @param { string } event - Indicates the subscription event. - * @param { boolean } interProcess - Indicates whether it is an interprocess subscription or an in-process subscription. + * @param { string } event - Event type, which must match the event type in {@link emit}. + * @param { boolean } interProcess - + * Indicates whether it is an interprocess subscription or an in-process subscription. * @param { Callback<void> } observer - The observer of data change events in the database. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -7195,14 +7649,15 @@ declare namespace relationalStore { /** * Registers an observer for the database. * - * @param { string } event - Indicates the subscription event. - * @param { boolean } interProcess - Indicates whether it is an interprocess subscription or an in-process subscription. + * @param { string } event - Event type, which must match the event type in {@link emit}. + * @param { boolean } interProcess - + * Indicates whether it is an interprocess subscription or an in-process subscription. * @param { Callback<void> } observer - The observer of data change events in the database. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800050 - Failed to obtain the subscription service. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 @@ -7213,8 +7668,10 @@ declare namespace relationalStore { * Register an automatic synchronization callback to the database. * * @param { 'autoSyncProgress' } event - Indicates the event must be string 'autoSyncProgress'. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 3 parameter(s)! 2. The RdbStore must be valid. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 2 - 3 parameter(s)! 2. The RdbStore must be valid. * 3. The event must be a not empty string. 4. The progress must be function. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core @@ -7224,11 +7681,13 @@ declare namespace relationalStore { * Register an automatic synchronization callback to the database. * * @param { 'autoSyncProgress' } event - Indicates the event must be string 'autoSyncProgress'. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 2 - 3 parameter(s)! 2. The RdbStore must be valid. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 2 - 3 parameter(s)! 2. The RdbStore must be valid. * 3. The event must be a not empty string. 4. The progress must be function. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -7237,16 +7696,42 @@ declare namespace relationalStore { /** * Subscribes to the SQL statistics. * @param { 'statistics' } event - Indicates the event type, which must be 'statistics'. - * @param { Callback<SqlExecutionInfo> } observer - Indicates the callback used to return the SQL execution statistics {@link SqlExeInfo} in the database. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { Callback<SqlExecutionInfo> } observer - + * Indicates the callback used to return the SQL execution statistics {@link SqlExeInfo} in the database. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ on(event: 'statistics', observer: Callback<SqlExecutionInfo> ): void; + /** + * Subscribes to the SQL execution error logs. + * @param { 'sqliteErrorOccurred' } event - Event type, which must be 'sqliteErrorOccurred'. + * @param { Callback<ExceptionMessage> } observer - Callback used to return the SQL execution error log {@link ExceptionMessage}. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + on(event: 'sqliteErrorOccurred', observer: Callback<ExceptionMessage> ): void; + + /** + * Subscribes to the SQL performance statistics. + * @param { 'perfStat' } event - Event type, which must be 'perfStat'. + * @param { Callback<SqlExecutionInfo> } observer - Callback used to return the SQL execution statistics {@link SqlExecutionInfo}. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + on(event: 'perfStat', observer: Callback<SqlExecutionInfo>): void; + /** * Remove specified observer of specified type from the database. * @@ -7270,7 +7755,7 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -7282,11 +7767,13 @@ declare namespace relationalStore { * @param { 'dataChange' } event - indicates the event must be string 'dataChange'. * @param { SubscribeType } type - indicates the subscription type, which is defined in {@link SubscribeType}. * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required. - * @param { Callback<Array<string>> | Callback<Array<ChangeInfo>> } observer - {Array<string>}: the data change observer already registered. + * @param { Callback<Array<string>> | Callback<Array<ChangeInfo>> } observer - + * {Array<string>}: the data change observer already registered. * {Array<ChangeInfo>}: the change info already registered. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 10 @@ -7297,13 +7784,15 @@ declare namespace relationalStore { * @param { 'dataChange' } event - indicates the event must be string 'dataChange'. * @param { SubscribeType } type - indicates the subscription type, which is defined in {@link SubscribeType}. * If its value is SUBSCRIBE_TYPE_REMOTE, ohos.permission.DISTRIBUTED_DATASYNC is required. - * @param { Callback<Array<string>> | Callback<Array<ChangeInfo>> } observer - {Array<string>}: the data change observer already registered. + * @param { Callback<Array<string>> | Callback<Array<ChangeInfo>> } observer - + * {Array<string>}: the data change observer already registered. * {Array<ChangeInfo>}: the change info already registered. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -7317,7 +7806,8 @@ declare namespace relationalStore { * Remove specified observer of specified type from the database. * * @param { string } event - Indicates the subscription event. - * @param { boolean } interProcess - Indicates whether it is an interprocess subscription or an in-process subscription. + * @param { boolean } interProcess - + * Indicates whether it is an interprocess subscription or an in-process subscription. * @param { Callback<void> } observer - The data change observer already registered. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -7331,13 +7821,14 @@ declare namespace relationalStore { * Remove specified observer of specified type from the database. * * @param { string } event - Indicates the subscription event. - * @param { boolean } interProcess - Indicates whether it is an interprocess subscription or an in-process subscription. + * @param { boolean } interProcess - + * Indicates whether it is an interprocess subscription or an in-process subscription. * @param { Callback<void> } observer - The data change observer already registered. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800050 - Failed to obtain the subscription service. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 @@ -7348,8 +7839,10 @@ declare namespace relationalStore { * Unregister the database auto synchronization callback. * * @param { 'autoSyncProgress' } event - indicates the event must be string 'autoSyncProgress'. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be valid. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be valid. * 3. The event must be a not empty string. 4. The progress must be function. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core @@ -7359,11 +7852,13 @@ declare namespace relationalStore { * Unregister the database auto synchronization callback. * * @param { 'autoSyncProgress' } event - indicates the event must be string 'autoSyncProgress'. - * @param { Callback<ProgressDetails> } progress - the specified sync condition by the instance object of {@link ProgressDetails}. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be valid. + * @param { Callback<ProgressDetails> } progress - + * Callback used to return the {@link ProgressDetails} result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Need 1 - 3 parameter(s)! 2. The RdbStore must be valid. * 3. The event must be a not empty string. 4. The progress must be function. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ @@ -7376,12 +7871,36 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 */ off(event: 'statistics', observer?: Callback<SqlExecutionInfo> ): void; + /** + * Unsubscribes from the SQL execution error logs. + * @param { 'sqliteErrorOccurred' } event - Indicates the event type, which must be 'sqliteErrorOccurred'. + * @param { Callback<ExceptionMessage> } observer - Callback to unregister. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + off(event: 'sqliteErrorOccurred', observer?: Callback<ExceptionMessage> ): void; + + /** + * Unsubscribes from the SQL performance statistics. + * @param { 'perfStat' } event - Event type, which must be 'perfStat'. + * @param { Callback<SqlExecutionInfo> } observer - Callback to unregister. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + off(event: 'perfStat', observer?: Callback<SqlExecutionInfo>): void; + /** * Notifies the registered observers of a change to the data resource specified by Uri. * @@ -7402,7 +7921,7 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800050 - Failed to obtain the subscription service. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 12 @@ -7431,12 +7950,13 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Invalid database path. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800016 - The database alias already exists. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -7459,7 +7979,8 @@ declare namespace relationalStore { * Attaches a database file to the currently linked database. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. * @param { string } attachName - Indicates the alias of the database. * @param { number } waitTime - Indicates the maximum time allowed for attaching the database file. * @returns { Promise<number> } Promise used to return the number of attached databases. @@ -7467,14 +7988,15 @@ declare namespace relationalStore { * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Invalid database path. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800016 - The database alias already exists. * @throws { BusinessError } 14801001 - The operation is supported in the stage model only. * @throws { BusinessError } 14801002 - Invalid data group ID. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -7502,10 +8024,11 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -7527,16 +8050,18 @@ declare namespace relationalStore { /** * Locks data from the database based on a specified instance object of RdbPredicates. * - * @param { RdbPredicates } predicates - The specified lock condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified lock condition by the instance object of {@link RdbPredicates}. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800018 - No data meets the condition. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -7559,16 +8084,18 @@ declare namespace relationalStore { /** * Unlocks data from the database based on a specified instance object of RdbPredicates. * - * @param { RdbPredicates } predicates - The specified Unlock condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified Unlock condition by the instance object of {@link RdbPredicates}. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800018 - No data meets the condition. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -7591,16 +8118,18 @@ declare namespace relationalStore { /** * Queries locked data in the database based on specified conditions. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database does not respond. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -7624,7 +8153,8 @@ declare namespace relationalStore { * Lock cloud container before non-auto cloud sync. * * @returns { Promise<number> } The expired time of the lock. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @since 12 @@ -7635,7 +8165,8 @@ declare namespace relationalStore { * Unlock cloud container. * * @returns { Promise<void> } The promise returned by the function. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, + * application which is not a system application uses system API. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @systemapi * @since 12 @@ -7648,8 +8179,8 @@ declare namespace relationalStore { * @param { TransactionOptions } options - The option for creating transactions. * @returns { Promise<Transaction> } The {@link Transaction} object if the operation is successful. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800015 - The database is busy. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -7662,6 +8193,33 @@ declare namespace relationalStore { * @since 14 */ createTransaction(options?: TransactionOptions): Promise<Transaction>; + + /** + * Changes the key used to encrypt the database. + * + * @param { CryptoParam } cryptoParam - Specifies the crypto parameters used to rekey. + * If valid cryptoParam passed, the cryptoParam is used to rekey. + * If cryptoParam is null or not passed, the default cryptoParam is used. + * @returns { Promise<void> } - Promise that returns no value. + * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.). + * @throws { BusinessError } 14800001 - Invalid arguments. Possible causes: 1. Empty conditions; + * <br>2. Missing GROUP BY clause. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. + * @throws { BusinessError } 14800015 - The database does not respond. + * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. + * @throws { BusinessError } 14800023 - SQLite: Access permission denied. + * @throws { BusinessError } 14800024 - SQLite: The database file is locked. + * @throws { BusinessError } 14800026 - SQLite: The database is out of memory. + * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database. + * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred. + * @throws { BusinessError } 14800029 - SQLite: The database is full. + * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core + * @crossplatform + * @since 20 + */ + rekey(cryptoParam?: CryptoParam): Promise<void>; } /** @@ -7678,8 +8236,8 @@ declare namespace relationalStore { * * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800026 - SQLite: The database is out of memory. @@ -7697,8 +8255,8 @@ declare namespace relationalStore { * * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800026 - SQLite: The database is out of memory. @@ -7721,9 +8279,10 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -7750,9 +8309,10 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -7773,14 +8333,17 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. - * @returns { Promise<number> } The number of values that were inserted if the operation is successful. returns -1 otherwise. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @returns { Promise<number> } The number of values that were inserted if the operation is successful. + * returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -7801,14 +8364,16 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. * @returns { number } The number of values that were inserted if the operation is successful. returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -7829,15 +8394,18 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table. - * @returns { Promise<number> } The number of values that were inserted if the operation is successful. returns -1 otherwise. + * @returns { Promise<number> } The number of values that were inserted if the operation is successful. + * returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -7861,15 +8429,17 @@ declare namespace relationalStore { * Inserts a batch of data into the target table. * * @param { string } table - Indicates the target table. - * @param { Array<ValuesBucket> } values - Indicates the rows of data {@link ValuesBucket} to be inserted into the table. + * @param { Array<ValuesBucket> } values - + * Indicates the rows of data {@link ValuesBucket} to be inserted into the table. * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table. * @returns { number } The number of values that were inserted if the operation is successful. returns -1 otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. @@ -7893,16 +8463,18 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table. * @returns { Promise<number> } The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -7923,16 +8495,18 @@ declare namespace relationalStore { * Updates data in the database based on a specified instance object of RdbPredicates with sync interface. * * @param { ValuesBucket } values - Indicates the row of data to be updated in the database. - * The key-value pairs are associated with column names of the database table. - * @param { RdbPredicates } predicates - Indicates the specified update condition by the instance object of {@link RdbPredicates}. + * The key-value pairs are associated with column names of the database table. + * @param { RdbPredicates } predicates - + * Indicates the specified update condition by the instance object of {@link RdbPredicates}. * @param { ConflictResolution } conflict - Indicates the {@link ConflictResolution} to insert data into the table. * @returns { number } The number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -7952,14 +8526,16 @@ declare namespace relationalStore { /** * Deletes data from the database based on a specified instance object of RdbPredicates. * - * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified delete condition by the instance object of {@link RdbPredicates}. * @returns { Promise<number> } return the number of affected rows. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -7979,14 +8555,16 @@ declare namespace relationalStore { /** * Deletes data from the database based on a specified instance object of RdbPredicates with sync interface. * - * @param { RdbPredicates } predicates - The specified delete condition by the instance object of {@link RdbPredicates}. - * @returns { number } return the number of affected rows. + * @param { RdbPredicates } predicates - + * The specified delete condition by the instance object of {@link RdbPredicates}. + * @returns { number } return the number of rows deleted. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -8006,15 +8584,17 @@ declare namespace relationalStore { /** * Queries data in the database based on specified conditions. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. * @param { Array<string> } columns - The columns to query. If the value is null, the query applies to all columns. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800026 - SQLite: The database is out of memory. @@ -8029,15 +8609,18 @@ declare namespace relationalStore { /** * Queries data in the database based on specified conditions with sync function. * - * @param { RdbPredicates } predicates - The specified query condition by the instance object of {@link RdbPredicates}. - * @param { Array<string> } columns - The columns to query. If the value is empty array, the query applies to all columns. + * @param { RdbPredicates } predicates - + * The specified query condition by the instance object of {@link RdbPredicates}. + * @param { Array<string> } columns - + * The columns to query. If the value is empty array, the query applies to all columns. * @returns { ResultSet } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -8054,14 +8637,16 @@ declare namespace relationalStore { * Queries data in the database based on SQL statement. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. + * The values are strings. * @returns { Promise<ResultSet> } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -8078,14 +8663,16 @@ declare namespace relationalStore { * Queries data in the database based on SQL statement with sync interface. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. + * The values are strings. * @returns { ResultSet } The {@link ResultSet} object if the operation is successful. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -8102,15 +8689,17 @@ declare namespace relationalStore { * Executes a SQL statement that contains specified parameters and returns a value of ValueType. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. + * The values are strings. * @returns { Promise<ValueType> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.). * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -8130,15 +8719,17 @@ declare namespace relationalStore { * Executes a SQL statement that contains specified parameters and returns a value of ValueType with sync interface. * * @param { string } sql - Indicates the SQL statement to execute. - * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. The values are strings. + * @param { Array<ValueType> } args - Indicates the {@link ValueType} values of the parameters in the SQL statement. + * The values are strings. * @returns { ValueType } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported the sql(attach,begin,commit,rollback etc.). * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800011 - Database corrupted. - * @throws { BusinessError } 14800014 - Already closed. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. + * @throws { BusinessError } 14800014 - The RdbStore or ResultSet is already closed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800024 - SQLite: The database file is locked. * @throws { BusinessError } 14800025 - SQLite: A table in the database is locked. @@ -8162,13 +8753,14 @@ declare namespace relationalStore { * to obtain a rdb store. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. * @param { AsyncCallback<RdbStore> } callback - The RDB store {@link RdbStore}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path. - * @throws { BusinessError } 14800011 - Failed to open database by database corrupted. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 9 */ @@ -8178,13 +8770,14 @@ declare namespace relationalStore { * to obtain a rdb store. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. * @param { AsyncCallback<RdbStore> } callback - The RDB store {@link RdbStore}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path. - * @throws { BusinessError } 14800011 - Failed to open database by database corrupted. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. * @throws { BusinessError } 14801001 - The operation is supported in the stage model only. * @throws { BusinessError } 14801002 - Invalid data group ID. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core @@ -8197,17 +8790,19 @@ declare namespace relationalStore { * to obtain a rdb store. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. * @param { AsyncCallback<RdbStore> } callback - The RDB store {@link RdbStore}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Invalid database path. - * @throws { BusinessError } 14800011 - Database corrupted. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. * @throws { BusinessError } 14801001 - The operation is supported in the stage model only. * @throws { BusinessError } 14801002 - Invalid data group ID. - * @throws { BusinessError } 14800017 - Config changed. + * @throws { BusinessError } 14800017 - StoreConfig is changed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database. @@ -8224,18 +8819,20 @@ declare namespace relationalStore { * to obtain a rdb store. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. * @param { AsyncCallback<RdbStore> } callback - The RDB store {@link RdbStore}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Invalid database path. - * @throws { BusinessError } 14800011 - Database corrupted. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. * @throws { BusinessError } 14801001 - The operation is supported in the stage model only. * @throws { BusinessError } 14801002 - Invalid data group ID. - * @throws { BusinessError } 14800017 - Config changed. + * @throws { BusinessError } 14800017 - StoreConfig is changed. * @throws { BusinessError } 14800020 - The secret key is corrupted or lost. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database. @@ -8244,7 +8841,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ function getRdbStore(context: Context, config: StoreConfig, callback: AsyncCallback<RdbStore>): void; @@ -8254,13 +8852,14 @@ declare namespace relationalStore { * to obtain a rdb store. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. * @returns { Promise<RdbStore> } The RDB store {@link RdbStore}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path. - * @throws { BusinessError } 14800011 - Failed to open database by database corrupted. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 9 */ @@ -8270,13 +8869,14 @@ declare namespace relationalStore { * to obtain a rdb store. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. * @returns { Promise<RdbStore> } The RDB store {@link RdbStore}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path. - * @throws { BusinessError } 14800011 - Failed to open database by database corrupted. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. * @throws { BusinessError } 14801001 - The operation is supported in the stage model only. * @throws { BusinessError } 14801002 - Invalid data group ID. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core @@ -8289,17 +8889,19 @@ declare namespace relationalStore { * to obtain a rdb store. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. - * @returns { Promise<RdbStore> } The RDB store {@link RdbStore}. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @returns { Promise<RdbStore> } Promise used to return the **RdbStore** object obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Invalid database path. - * @throws { BusinessError } 14800011 - Database corrupted. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. * @throws { BusinessError } 14801001 - The operation is supported in the stage model only. * @throws { BusinessError } 14801002 - Invalid data group ID. - * @throws { BusinessError } 14800017 - Config changed. + * @throws { BusinessError } 14800017 - StoreConfig is changed. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database. * @throws { BusinessError } 14800028 - SQLite: Some kind of disk I/O error occurred. * @throws { BusinessError } 14800029 - SQLite: The database is full. @@ -8314,18 +8916,20 @@ declare namespace relationalStore { * to obtain a rdb store. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. - * @returns { Promise<RdbStore> } The RDB store {@link RdbStore}. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @returns { Promise<RdbStore> } Promise used to return the **RdbStore** object obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Invalid database path. - * @throws { BusinessError } 14800011 - Database corrupted. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. + * @throws { BusinessError } 14800011 - Failed to open the database because it is corrupted. * @throws { BusinessError } 14801001 - The operation is supported in the stage model only. * @throws { BusinessError } 14801002 - Invalid data group ID. - * @throws { BusinessError } 14800017 - Config changed. + * @throws { BusinessError } 14800017 - StoreConfig is changed. * @throws { BusinessError } 14800020 - The secret key is corrupted or lost. * @throws { BusinessError } 14800021 - SQLite: Generic error. + * Possible causes: Insert failed or the updated data does not exist. * @throws { BusinessError } 14800022 - SQLite: Callback routine requested an abort. * @throws { BusinessError } 14800023 - SQLite: Access permission denied. * @throws { BusinessError } 14800027 - SQLite: Attempt to write a readonly database. @@ -8334,7 +8938,8 @@ declare namespace relationalStore { * @throws { BusinessError } 14800030 - SQLite: Unable to open the database file. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ function getRdbStore(context: Context, config: StoreConfig): Promise<RdbStore>; @@ -8348,7 +8953,7 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 9 */ @@ -8362,7 +8967,7 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform * @since 10 @@ -8374,12 +8979,13 @@ declare namespace relationalStore { * When specify custom directory, this function should be called. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. * @param { AsyncCallback<void> } callback - The callback of deleteRdbStore. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. * @throws { BusinessError } 14801001 - The operation is supported in the stage model only. * @throws { BusinessError } 14801002 - Invalid data group ID. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core @@ -8398,7 +9004,7 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @since 9 */ @@ -8412,7 +9018,7 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform * @since 10 @@ -8427,7 +9033,7 @@ declare namespace relationalStore { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Invalid database path. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core * @crossplatform * @since 12 @@ -8439,12 +9045,13 @@ declare namespace relationalStore { * When specify custom directory, this function should be called. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Failed to open or delete database by invalid database path. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. * @throws { BusinessError } 14801001 - The operation is supported in the stage model only. * @throws { BusinessError } 14801002 - Invalid data group ID. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core @@ -8456,13 +9063,14 @@ declare namespace relationalStore { * When specify custom directory, this function should be called. * * @param { Context } context - Indicates the context of an application or ability. - * @param { StoreConfig } config - Indicates the {@link StoreConfig} configuration of the database related to this RDB store. + * @param { StoreConfig } config - + * Indicates the {@link StoreConfig} configuration of the database related to this RDB store. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 14800000 - Inner error. - * @throws { BusinessError } 14800010 - Invalid database path. + * @throws { BusinessError } 14800010 - Failed to open or delete the database by an invalid database path. * @throws { BusinessError } 14801001 - The operation is supported in the stage model only. * @throws { BusinessError } 14801002 - Invalid data group ID. * @syscap SystemCapability.DistributedDataManager.RelationalStore.Core diff --git a/api/@ohos.data.sendablePreferences.d.ets b/api/@ohos.data.sendablePreferences.d.ets index 2f1ec3e92b2cfc473305ab4bbe0c64b6b6c5b16d..3c16c1857d6509a1474ec5bfcdef2a404bd77924 100644 --- a/api/@ohos.data.sendablePreferences.d.ets +++ b/api/@ohos.data.sendablePreferences.d.ets @@ -90,9 +90,9 @@ declare namespace sendablePreferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates information about the preferences file. For details, see {@link Options}. * @returns { Promise<Preferences> } Promise used to return the {@link Preferences}. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -112,9 +112,9 @@ declare namespace sendablePreferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates information about the preferences file. For details, see {@link Options}. * @returns { Preferences } return the {@link Preferences}. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -136,9 +136,9 @@ declare namespace sendablePreferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates information about the preferences file. For details, see {@link Options}. * @returns { Promise<void> } Promise that returns no value. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15500010 - Failed to delete the user preferences persistence file. @@ -160,9 +160,9 @@ declare namespace sendablePreferences { * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates information about the preferences file. For details, see {@link Options}. * @returns { Promise<void> } Promise that returns no value. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -182,9 +182,9 @@ declare namespace sendablePreferences { * * @param { Context } context - Indicates the context of application or capability. * @param { Options } options - Indicates information about the preferences file. For details, see {@link Options}. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15501001 - The operations is supported in stage mode only. @@ -213,13 +213,13 @@ declare namespace sendablePreferences { * <p>If the value is {@code null} or not in the lang.ISendable format, the default value is returned. * * @param { string } key - Indicates the key of the preferences. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { lang.ISendable } defValue - Indicates the default value to return. - * @returns { Promise<lang.ISendable> } Promise used to return the result. If a value matching the specified key + * @returns { Promise<lang.ISendable> } Promise used to return the result. If a value matching the specified key * is found, the value is returned. Otherwise, the default value is returned. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -232,13 +232,13 @@ declare namespace sendablePreferences { * <p>If the value is {@code null} or not in the lang.ISendable format, the default value is returned. * * @param { string } key - Indicates the key of the preferences. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { lang.ISendable } defValue - Indicates the default value to return. * @returns { lang.ISendable } If a value matching the specified key is found, the value is returned. Otherwise, * the default value is returned. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -272,12 +272,12 @@ declare namespace sendablePreferences { * Checks whether the {@link Preferences} instance contains a value matching the specified key. * * @param { string } key - Indicates the key of the value to check. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { Promise<boolean> } Promise used to return the result. {@code true} is returned if the * {@link Preferences} object contains a value matching the specified key; {@code false} is returned otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -290,12 +290,12 @@ declare namespace sendablePreferences { * This API returns the result synchronously. * * @param { string } key - Indicates the key of the value to check. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { boolean } {@code true} is returned if the {@link Preferences} object contains a value matching * the specified key; {@code false} is returned otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -308,13 +308,13 @@ declare namespace sendablePreferences { * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @param { string } key - Indicates the key of the preferences to set. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { lang.ISendable } value - Indicates the value of the preferences. - * <tt>MAX_VALUE_LENGTH</tt>. + * <tt>MAX_VALUE_LENGTH</tt>. * @returns { Promise<void> } Promise that returns no value. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -324,16 +324,16 @@ declare namespace sendablePreferences { /** * Sets an lang.ISendable value for the key in the {@link Preferences} object. - * This API returns the result synchronously. + * This API returns the result synchronously. * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @param { string } key - Indicates the key of the preferences to set. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @param { lang.ISendable } value - Indicates the value of the preferences. - * <tt>MAX_VALUE_LENGTH</tt>. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * <tt>MAX_VALUE_LENGTH</tt>. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -346,11 +346,11 @@ declare namespace sendablePreferences { * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @param { string } key - Indicates the key of the preferences to delete. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. + * <tt>MAX_KEY_LENGTH</tt>. * @returns { Promise<void> } Promise that returns no value. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -364,10 +364,10 @@ declare namespace sendablePreferences { * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @param { string } key - Indicates the key of the preferences to delete. It cannot be {@code null} or empty. - * <tt>MAX_KEY_LENGTH</tt>. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * <tt>MAX_KEY_LENGTH</tt>. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -388,7 +388,7 @@ declare namespace sendablePreferences { clear(): Promise<void>; /** - * Clears all preferences from the {@link Preferences} object. This API returns the result synchronously. + * Clears all preferences from the {@link Preferences} object. This API returns the result synchronously. * <p>You can call the {@link #flush} method to save the {@link Preferences} object to the file. * * @throws { BusinessError } 15500000 - Inner error. @@ -424,9 +424,9 @@ declare namespace sendablePreferences { * * @param { 'change' } type - Indicates the type of the event to observe. * @param { Callback<string> } callback - Indicates the callback used to return the preferences changes. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -440,9 +440,9 @@ declare namespace sendablePreferences { * @param { 'multiProcessChange' } type - Indicates the type of the event to observe. * @param { Callback<string> } callback - Indicates the callback used to return the preferences changed * in multiple processes. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @throws { BusinessError } 15500019 - Failed to obtain the subscription service. * @syscap SystemCapability.DistributedDataManager.Preferences.Core @@ -457,9 +457,9 @@ declare namespace sendablePreferences { * @param { 'dataChange' } type - Indicates the type of the event to observe. * @param { Array<string> } keys - Indicates one or more keys to listen for. * @param { Callback<lang.ISendable> } callback - Indicates the callback used to return the data change. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -472,9 +472,9 @@ declare namespace sendablePreferences { * * @param { 'change' } type - Indicates the event type. * @param { Callback<string> } callback - Indicates the callback to unregister. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -487,9 +487,9 @@ declare namespace sendablePreferences { * * @param { 'multiProcessChange' } type - Indicates the event type. * @param { Callback<string> } callback - Indicates the callback to unregister. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice @@ -503,9 +503,9 @@ declare namespace sendablePreferences { * @param { 'dataChange' } type - Indicates the event type. * @param { Array<string> } keys - Indicates the data whose changes are not observed. * @param { Callback<lang.ISendable> } callback - Indicates the callback to unregister. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified; <br>2. Incorrect parameter types; + * <br>3. Parameter verification failed. * @throws { BusinessError } 15500000 - Inner error. * @syscap SystemCapability.DistributedDataManager.Preferences.Core * @atomicservice diff --git a/api/@ohos.data.unifiedDataChannel.d.ts b/api/@ohos.data.unifiedDataChannel.d.ts index 387102726442a8856e3a8bb423df8e1a37f562c6..bdc283df1fec4dc465c1b011c64750a5d43cdece 100644 --- a/api/@ohos.data.unifiedDataChannel.d.ts +++ b/api/@ohos.data.unifiedDataChannel.d.ts @@ -23,14 +23,22 @@ import image from "./@ohos.multimedia.image"; import Want from "./@ohos.app.ability.Want"; /** - * Provide methods for sharing data between different applications across unified data channels. + * As a part of the Unified Data Management Framework (UDMF), the unifiedDataChannel module provides unified data + * channels and standard data access interfaces for many-to-many data sharing across applications. It also provides + * definitions for uniform data types, such as text and image, to streamline data interaction between different + * applications and minimize the workload of data type adaptation. Although the UDMF does not parse user data, you are + * advised not to transfer sensitive personal data or privacy data due to low-level security of storage path. * * @namespace unifiedDataChannel * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @since 10 */ /** - * Provide methods for sharing data between different applications across unified data channels. + * As a part of the Unified Data Management Framework (UDMF), the unifiedDataChannel module provides unified data + * channels and standard data access interfaces for many-to-many data sharing across applications. It also provides + * definitions for uniform data types, such as text and image, to streamline data interaction between different + * applications and minimize the workload of data type adaptation. Although the UDMF does not parse user data, you are + * advised not to transfer sensitive personal data or privacy data due to low-level security of storage path. * * @namespace unifiedDataChannel * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -38,13 +46,18 @@ import Want from "./@ohos.app.ability.Want"; * @since 11 */ /** - * Provide methods for sharing data between different applications across unified data channels. + * As a part of the Unified Data Management Framework (UDMF), the unifiedDataChannel module provides unified data + * channels and standard data access interfaces for many-to-many data sharing across applications. It also provides + * definitions for uniform data types, such as text and image, to streamline data interaction between different + * applications and minimize the workload of data type adaptation. Although the UDMF does not parse user data, you are + * advised not to transfer sensitive personal data or privacy data due to low-level security of storage path. * * @namespace unifiedDataChannel * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace unifiedDataChannel { /** @@ -96,7 +109,8 @@ declare namespace unifiedDataChannel { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ type ValueType = number | string | boolean | image.PixelMap | Want | ArrayBuffer | object | null | undefined; @@ -173,7 +187,8 @@ declare namespace unifiedDataChannel { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ class UnifiedData { /** @@ -204,7 +219,8 @@ declare namespace unifiedDataChannel { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(record: UnifiedRecord); /** @@ -220,7 +236,8 @@ declare namespace unifiedDataChannel { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -276,12 +293,17 @@ declare namespace unifiedDataChannel { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ getRecords(): Array<UnifiedRecord>; /** - * Checks whether there is a specified type of data in DataProperties. + * Checks whether this UnifiedData object contains the specified data type, including the data types added by using + * the addEntry function. + * For file types, if the type set of UnifiedData contains general.jpeg, true is returned when the hasType API is + * called to check whether the general.image type is included, because the general.jpeg type belongs to the + * general.image type. * @param { string } type - indicates to query data type. * @returns { boolean } if having mimeType in UnifiedData returns true, else returns false. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; @@ -291,7 +313,11 @@ declare namespace unifiedDataChannel { * @since 12 */ /** - * Checks whether there is a specified type of data in DataProperties. + * Checks whether this UnifiedData object contains the specified data type, including the data types added by using + * the addEntry function. + * For file types, if the type set of UnifiedData contains general.jpeg, true is returned when the hasType API is + * called to check whether the general.image type is included, because the general.jpeg type belongs to the + * general.image type. * @param { string } type - indicates to query data type. * @returns { boolean } if having mimeType in UnifiedData returns true, else returns false. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; @@ -331,17 +357,18 @@ declare namespace unifiedDataChannel { } /** - * The data abstract supported by unified data + * Summarizes the data information of the unifiedData object, including the data type and size. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @since 10 */ /** - * The data abstract supported by unified data + * Summarizes the data information of the unifiedData object, including the data type and size. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ class Summary { /** @@ -390,12 +417,16 @@ declare namespace unifiedDataChannel { * @since 11 */ /** - * Describe the unified record + * An abstract definition of the data content supported by the UDMF. A UnifiedRecord object contains one or more data + * records, for example, a text record, an image record, or an HTML record. Since API version 15, different styles of + * the same content can be added to a UnifiedRecord object. Data users can obtain the corresponding styles as + * required. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ class UnifiedRecord { /** @@ -437,14 +468,16 @@ declare namespace unifiedDataChannel { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** * Create unified record by type and value. * - * @param { string } type - indicates to data type of unified record. It can not be empty. When type of value is object, parameter type must be pixel-map or want UTD type. + * @param { string } type - indicates to data type of unified record. It can not be empty. When type of value is + * object, parameter type must be pixel-map or want UTD type. * @param { ValueType } value - indicates to value of unified record. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types; @@ -456,7 +489,8 @@ declare namespace unifiedDataChannel { /** * Create unified record by type and value. * - * @param { string } type - indicates to data type of unified record. It can not be empty. When type of value is object, parameter type must be pixel-map or want UTD type. + * @param { string } type - indicates to data type of unified record. It can not be empty. When type of value is + * object, parameter type must be pixel-map or want UTD type. * @param { ValueType } value - indicates to value of unified record. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types; @@ -464,7 +498,8 @@ declare namespace unifiedDataChannel { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(type: string, value: ValueType); @@ -488,7 +523,8 @@ declare namespace unifiedDataChannel { getValue(): ValueType; /** - * Get the types of unified record. + * Obtains all the data types in the data record. This API can be called using the UnifiedRecord object to query all + * data types in the record, including the data types added using the addEntry function. * * @returns { Array<string> } Return the types of unified record. * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -498,7 +534,8 @@ declare namespace unifiedDataChannel { getTypes(): Array<string>; /** - * Add an entry into unified record + * Adds data of a specified data type and content to the current data record. You can use this API to add different + * data types and contents to the same data. * * @param { string } type - type of entry. * @param { ValueType } value - value of entry. @@ -860,13 +897,13 @@ declare namespace unifiedDataChannel { */ details?: Record<string, string>; /** - * Indicates the uri of file + * URI of the local file or online file. The local file URI can be obtained using the getUriFromPath function. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @since 10 */ /** - * Indicates the uri of file + * URI of the local file or online file. The local file URI can be obtained using the getUriFromPath function. * * @type { string } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -874,7 +911,7 @@ declare namespace unifiedDataChannel { * @since 11 */ /** - * Indicates the uri of file + * URI of the local file or online file. The local file URI can be obtained using the getUriFromPath function. * * @type { string } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -911,13 +948,13 @@ declare namespace unifiedDataChannel { */ class Image extends File { /** - * Indicates the uri of image + * URI of the local image or online image. The local image URI can be obtained using the getUriFromPath function. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @since 10 */ /** - * Indicates the uri of image + * URI of the local image or online image. The local image URI can be obtained using the getUriFromPath function. * * @type { string } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -925,7 +962,7 @@ declare namespace unifiedDataChannel { * @since 11 */ /** - * Indicates the uri of image + * URI of the local image or online image. The local image URI can be obtained using the getUriFromPath function. * * @type { string } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -962,13 +999,13 @@ declare namespace unifiedDataChannel { */ class Video extends File { /** - * Indicates the uri of video + * URI of the local video or online video. The local video URI can be obtained using the getUriFromPath function. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @since 10 */ /** - * Indicates the uri of video + * URI of the local video or online video. The local video URI can be obtained using the getUriFromPath function. * * @type { string } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -976,7 +1013,7 @@ declare namespace unifiedDataChannel { * @since 11 */ /** - * Indicates the uri of video + * URI of the local video or online video. The local video URI can be obtained using the getUriFromPath function. * * @type { string } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1013,13 +1050,13 @@ declare namespace unifiedDataChannel { */ class Audio extends File { /** - * Indicates the uri of audio + * URI of the local audio or online audio. The local audio URI can be obtained using the getUriFromPath function. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @since 10 */ /** - * Indicates the uri of audio + * URI of the local audio or online audio. The local audio URI can be obtained using the getUriFromPath function. * * @type { string } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1027,7 +1064,7 @@ declare namespace unifiedDataChannel { * @since 11 */ /** - * Indicates the uri of audio + * URI of the local audio or online audio. The local audio URI can be obtained using the getUriFromPath function. * * @type { string } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1064,13 +1101,13 @@ declare namespace unifiedDataChannel { */ class Folder extends File { /** - * Indicates the uri of folder + * URI of the local folder or online folder. The local folder URI can be obtained using the getUriFromPath function. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @since 10 */ /** - * Indicates the uri of folder + * URI of the local folder or online folder. The local folder URI can be obtained using the getUriFromPath function. * * @type { string } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1078,7 +1115,7 @@ declare namespace unifiedDataChannel { * @since 11 */ /** - * Indicates the uri of folder + * URI of the local folder or online folder. The local folder URI can be obtained using the getUriFromPath function. * * @type { string } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1462,7 +1499,62 @@ declare namespace unifiedDataChannel { * @stagemodelonly * @since 14 */ - DRAG = 'Drag' + DRAG = 'Drag', + + /** + * Indicates a system sharing channel. + * + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @stagemodelonly + * @since 20 + */ + SYSTEM_SHARE = 'SystemShare', + + /** + * Indicates a Picker channel. + * + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @stagemodelonly + * @since 20 + */ + PICKER = 'Picker', + + /** + * Indicates a menu channel. + * + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @stagemodelonly + * @since 20 + */ + MENU = 'Menu' + } + + /** + * Describe the visibility range of data + * + * @enum { number } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + enum Visibility { + /** + * The visibility level that specifies that any hap or native can be obtained. + * + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @stagemodelonly + * @since 20 + */ + ALL, + + /** + * The visibility level that specifies that only data providers can be obtained. + * + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @stagemodelonly + * @since 20 + */ + OWN_PROCESS } /** @@ -1479,7 +1571,15 @@ declare namespace unifiedDataChannel { * @atomicservice * @since 11 */ - type Options = { + /** + * Describe the optional arguments of data operation + * + * @interface { Options } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + interface Options { /** * Indicates the target Intention * @@ -1493,6 +1593,14 @@ declare namespace unifiedDataChannel { * @atomicservice * @since 11 */ + /** + * Indicates the target Intention + * + * @type { ?Intention } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ intention?: Intention; /** @@ -1508,8 +1616,27 @@ declare namespace unifiedDataChannel { * @atomicservice * @since 11 */ + /** + * Indicates the unique identifier of target UnifiedData + * + * @type { ?string } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ key?: string; - }; + + /** + * Represents the visibility range of data. + * This parameter is used only when data is inserted. + * + * @type { ?Visibility } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + visibility?: Visibility; + } /** * Defines the types of file conflict options when getting data from the UDMF. @@ -1739,6 +1866,88 @@ declare namespace unifiedDataChannel { * @since 15 */ fileConflictOptions?: FileConflictOptions; + + /** + * Indicates the supported data information. + * + * @type { ?DataLoadInfo } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + acceptableInfo?: DataLoadInfo; + } + + /** + * Indicates data loading information. + * + * @interface DataLoadInfo + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + interface DataLoadInfo { + /** + * Represents the data type or supported types to load. + * <br>This parameter is mandatory when used by the data provider. + * + * @type { ?Set<string> } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + types?: Set<string>; + + /** + * Indicates the maximum number of data records to be loaded. + * + * @type { ?number } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + recordCount?: number; + } + + /** + * Indicates the callback function for loading data. + * + * @typedef { function } DataLoadHandler + * @param { DataLoadInfo } acceptableInfo Indicates the type and number of data that can be accepted by the receiver. + * @returns { UnifiedData | null } the {@link UnifiedData} object to be loaded. + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + type DataLoadHandler = (acceptableInfo?: DataLoadInfo) => UnifiedData | null; + + /** + * Indicates data loading params. + * + * @interface DataLoadParams + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + interface DataLoadParams { + /** + * Indicates the callback function for loading data. + * + * @type { DataLoadHandler } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + loadHandler: DataLoadHandler; + + /** + * Indicates data loading information. + * @type { DataLoadInfo } + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @atomicservice + * @since 20 + */ + dataLoadInfo: DataLoadInfo; } /** @@ -1844,8 +2053,10 @@ declare namespace unifiedDataChannel { /** * Query data of unified data channel by Intention or Unique Identifier * - * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} or {@link UnifiedData}. - * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the target {@link UnifiedData} object array. + * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} + * or {@link UnifiedData}. + * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the target {@link UnifiedData} + * object array. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1854,8 +2065,10 @@ declare namespace unifiedDataChannel { /** * Query data of unified data channel by Intention or Unique Identifier * - * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} or {@link UnifiedData}. - * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the target {@link UnifiedData} object array. + * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} + * or {@link UnifiedData}. + * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the target {@link UnifiedData} object + * array. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1867,7 +2080,8 @@ declare namespace unifiedDataChannel { /** * Query data of unified data channel by Intention or Unique Identifier * - * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} or {@link UnifiedData}. + * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} + * or {@link UnifiedData}. * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the target {@link UnifiedData} object array. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. @@ -1877,7 +2091,8 @@ declare namespace unifiedDataChannel { /** * Query data of unified data channel by Intention or Unique Identifier * - * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} or {@link UnifiedData}. + * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} + * or {@link UnifiedData}. * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the target {@link UnifiedData} object array. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. @@ -1890,8 +2105,10 @@ declare namespace unifiedDataChannel { /** * Delete data of unified data channel by Intention or Unique Identifier * - * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} or {@link UnifiedData}. - * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the deleted {@link UnifiedData} object array. + * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} + * or {@link UnifiedData}. + * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the deleted {@link UnifiedData} + * object array. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1900,8 +2117,10 @@ declare namespace unifiedDataChannel { /** * Delete data of unified data channel by Intention or Unique Identifier * - * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} or {@link UnifiedData}. - * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the deleted {@link UnifiedData} object array. + * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} + * or {@link UnifiedData}. + * @param { AsyncCallback<Array<UnifiedData>> } callback - {Array<UnifiedData>}: the deleted {@link UnifiedData} + * object array. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1913,7 +2132,8 @@ declare namespace unifiedDataChannel { /** * Delete data of unified data channel by Intention or Unique Identifier * - * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} or {@link UnifiedData}. + * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} + * or {@link UnifiedData}. * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the deleted {@link UnifiedData} object array. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. @@ -1923,7 +2143,8 @@ declare namespace unifiedDataChannel { /** * Delete data of unified data channel by Intention or Unique Identifier * - * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} or {@link UnifiedData}. + * @param { Options } options - fill the intention or unique identifier field to indicate the target {@link Intention} + * or {@link UnifiedData}. * @returns { Promise<Array<UnifiedData>> } {Array<UnifiedData>}: the deleted {@link UnifiedData} object array. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. @@ -1934,30 +2155,33 @@ declare namespace unifiedDataChannel { function deleteData(options: Options): Promise<Array<UnifiedData>>; /** - * Set app sharing options. + * Sets the ShareOptions for the application data. Currently, only the drag-and-drop data channel is supported. * * @param { Intention } intention - Describe the sharing channel that UDMF support. * @param { ShareOptions } shareOptions - Types of scope that UnifiedData can be used. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses + * system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. - * @throws { BusinessError } 20400001 - Settings already exist. + * @throws { BusinessError } 20400001 - Settings already exist. To reconfigure, remove the existing sharing options. * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @systemapi * @StageModelOnly * @since 12 */ /** - * Set app sharing options. + * Sets the ShareOptions for the application data. Currently, only the drag-and-drop data channel is supported. * * @permission ohos.permission.MANAGE_UDMF_APP_SHARE_OPTION - * @param { Intention } intention - Describe the sharing channel that UDMF support. Currently only supports DRAG intention. + * @param { Intention } intention - Describe the sharing channel that UDMF support. Currently only supports DRAG + * intention. * @param { ShareOptions } shareOptions - Types of scope that UnifiedData can be used. - * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.MANAGE_UDMF_APP_SHARE_OPTION". + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. - * @throws { BusinessError } 20400001 - Settings already exist. + * @throws { BusinessError } 20400001 - Settings already exist. To reconfigure, remove the existing sharing options. * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @stagemodelonly * @since 14 @@ -1968,7 +2192,8 @@ declare namespace unifiedDataChannel { * Remove app sharing options. * * @param { Intention } intention - Describe the sharing channel that UDMF support. - * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application + * uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1980,8 +2205,10 @@ declare namespace unifiedDataChannel { * Remove app sharing options. * * @permission ohos.permission.MANAGE_UDMF_APP_SHARE_OPTION - * @param { Intention } intention - Describe the sharing channel that UDMF support. Currently only supports DRAG intention. - * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.MANAGE_UDMF_APP_SHARE_OPTION". + * @param { Intention } intention - Describe the sharing channel that UDMF support. Currently only supports DRAG + * intention. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. @@ -1990,6 +2217,22 @@ declare namespace unifiedDataChannel { * @since 14 */ function removeAppShareOptions(intention: Intention): void; + + /** + * Converts the provided data into a multi-style data structure, which is useful when the original data uses multiple + * records to represent different styles of the same data. This API is used only when the following rules are met: + * 1.The number of records in data is greater than + * 2.The value of unifiedData.properties.tag is records_to_entries_data_format. + * + * @param { UnifiedData } data - {@link UnifiedData} Data to convert. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. + * @syscap SystemCapability.DistributedDataManager.UDMF.Core + * @stagemodelonly + * @atomicservice + * @since 17 + */ + function convertRecordsToEntries(data: UnifiedData): void; } export default unifiedDataChannel; diff --git a/api/@ohos.data.uniformDataStruct.d.ts b/api/@ohos.data.uniformDataStruct.d.ts index 5eaf631449328278c4adc43fd9a5b16584c8c1d8..4f811c4ed20686cd02cc92b179db4dfc3b651ce7 100644 --- a/api/@ohos.data.uniformDataStruct.d.ts +++ b/api/@ohos.data.uniformDataStruct.d.ts @@ -62,7 +62,14 @@ declare namespace uniformDataStruct { */ abstract?: string; /** - * Indicates the details of the PlainText. + * Object of the dictionary type used to describe the attributes of the text content. Both the key and value of the + * object are of the string type. For example, the following is a details object used to describe the properties of + * a file: + * { + * "title":"Title of the file", + * "content":"Content of the file" + * } + * By default, it is an empty dictionary object. * * @type { ?Record<string, string> } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -104,7 +111,14 @@ declare namespace uniformDataStruct { */ description?: string; /** - * Indicates the details of the Hyperlink. + * Object of the dictionary type used to describe the attributes of the hyperlink. Both the key and value of the + * object are of the string type. For example, the following is a details object used to describe the properties of + * a file: + * { + * "title":"Title of the hyperlink", + * "content":"Content" + * } + * By default, it is an empty dictionary object. * * @type { ?Record<string, string> } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -148,7 +162,14 @@ declare namespace uniformDataStruct { */ plainContent?: string; /** - * Indicates the details of html. + * Object of the dictionary type used to describe the attributes of the HTML content. Both the key and value of the + * object are of the string type. For example, the following is a details object used to describe the properties of + * a file: + * { + * "title":"Title of the HTML content", + * "content":"Content" + * } + * By default, it is an empty dictionary object. * * @type { ?Record<string, string> } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -166,7 +187,7 @@ declare namespace uniformDataStruct { */ interface OpenHarmonyAppItem { /** - * Indicates the uniform data type of this data struct. + * Uniform data type, which has a fixed value of openharmony.app-item. For details, see UniformDataType. * * @type { 'openharmony.app-item' } * @readonly @@ -223,7 +244,8 @@ declare namespace uniformDataStruct { */ abilityName: string; /** - * Indicates the details of app. + * Object of the dictionary type used to describe the icon. The key is of the string type, and the value can be a + * number, a string, or a Uint8Array. By default, it is an empty dictionary object. * * @type { ?Record<string, number | string | Uint8Array> } * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -233,7 +255,7 @@ declare namespace uniformDataStruct { } /** - * Describe content form uniform data struct. + * Uniform data type, which has a fixed value of general.content-form. * * @interface ContentForm * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -314,7 +336,7 @@ declare namespace uniformDataStruct { */ interface Form { /** - * Indicates the uniform data type of this data struct. + * Uniform data type, which has a fixed value of openharmony.form. For details, see UniformDataType. * * @type { 'openharmony.form' } * @readonly @@ -387,8 +409,8 @@ declare namespace uniformDataStruct { */ interface FileUri { /** - * Indicates the uniform data type of this data struct. - * + * Uniform data type, which has a fixed value of general.file-uri. For details, see UniformDataType. + * * @type { 'general.file-uri' } * @readonly * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -433,8 +455,8 @@ declare namespace uniformDataStruct { */ interface PixelMap { /** - * Indicates the uniform data type of this data struct. - * + * Uniform data type, which has a fixed value of openharmony.pixel-map. For details, see UniformDataType. + * * @type { 'openharmony.pixel-map' } * @readonly * @syscap SystemCapability.DistributedDataManager.UDMF.Core diff --git a/api/@ohos.data.uniformTypeDescriptor.d.ts b/api/@ohos.data.uniformTypeDescriptor.d.ts index ab55b421539c6887da10b8c7127e8953d3ec6841..5d1d9c4a1cf9903445f02b2bc47656392d46925c 100644 --- a/api/@ohos.data.uniformTypeDescriptor.d.ts +++ b/api/@ohos.data.uniformTypeDescriptor.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace uniformTypeDescriptor { /** @@ -65,14 +66,16 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ enum UniformDataType { /** * Base data type for physical hierarchy, which identifies the physical representation of the data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ENTITY = 'general.entity', @@ -80,7 +83,8 @@ declare namespace uniformTypeDescriptor { * Base data type for logical hierarchy, which identifies the logical content representation of the data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ OBJECT = 'general.object', @@ -88,7 +92,8 @@ declare namespace uniformTypeDescriptor { * Base data type for mixed object. For example, a PDF file contains both text and special formatting data. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPOSITE_OBJECT = 'general.composite-object', @@ -111,7 +116,8 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ TEXT = 'general.text', @@ -134,7 +140,8 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ PLAIN_TEXT = 'general.plain-text', @@ -157,7 +164,8 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ HTML = 'general.html', @@ -180,7 +188,8 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ HYPERLINK = 'general.hyperlink', @@ -188,7 +197,8 @@ declare namespace uniformTypeDescriptor { * XML(Extensible Markup Language) data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ XML = 'general.xml', @@ -196,7 +206,8 @@ declare namespace uniformTypeDescriptor { * Xhtml data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ XHTML = 'general.xhtml', @@ -204,7 +215,8 @@ declare namespace uniformTypeDescriptor { * Rss data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ RSS = 'general.rss', @@ -212,7 +224,8 @@ declare namespace uniformTypeDescriptor { * Real synchronized multimedia integration language. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ SMIL = 'com.real.smil', @@ -220,7 +233,8 @@ declare namespace uniformTypeDescriptor { * Source code data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ SOURCE_CODE = 'general.source-code', @@ -228,7 +242,8 @@ declare namespace uniformTypeDescriptor { * Script data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ SCRIPT = 'general.script', @@ -236,7 +251,8 @@ declare namespace uniformTypeDescriptor { * Shell script data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ SHELL_SCRIPT = 'general.shell-script', @@ -244,7 +260,8 @@ declare namespace uniformTypeDescriptor { * C-shell script data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ CSH_SCRIPT = 'general.csh-script', @@ -252,7 +269,8 @@ declare namespace uniformTypeDescriptor { * Perl script data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PERL_SCRIPT = 'general.perl-script', @@ -260,7 +278,8 @@ declare namespace uniformTypeDescriptor { * PHP script data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PHP_SCRIPT = 'general.php-script', @@ -268,7 +287,8 @@ declare namespace uniformTypeDescriptor { * Python script data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PYTHON_SCRIPT = 'general.python-script', @@ -276,7 +296,8 @@ declare namespace uniformTypeDescriptor { * Ruby script data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ RUBY_SCRIPT = 'general.ruby-script', @@ -284,7 +305,8 @@ declare namespace uniformTypeDescriptor { * TypeScript data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ TYPE_SCRIPT = 'general.type-script', @@ -292,7 +314,8 @@ declare namespace uniformTypeDescriptor { * JavaScript data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ JAVA_SCRIPT = 'general.java-script', @@ -300,7 +323,8 @@ declare namespace uniformTypeDescriptor { * Css data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ CSS = 'general.css', @@ -308,7 +332,8 @@ declare namespace uniformTypeDescriptor { * C header data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ C_HEADER = 'general.c-header', @@ -316,7 +341,8 @@ declare namespace uniformTypeDescriptor { * C source code data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ C_SOURCE = 'general.c-source', @@ -324,7 +350,8 @@ declare namespace uniformTypeDescriptor { * C++ header data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ C_PLUS_PLUS_HEADER = 'general.c-plus-plus-header', @@ -332,7 +359,8 @@ declare namespace uniformTypeDescriptor { * C++ source code data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ C_PLUS_PLUS_SOURCE = 'general.c-plus-plus-source', @@ -340,7 +368,8 @@ declare namespace uniformTypeDescriptor { * Java source code data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ JAVA_SOURCE = 'general.java-source', @@ -348,7 +377,8 @@ declare namespace uniformTypeDescriptor { * Tex source code data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ TEX = 'general.tex', @@ -356,7 +386,8 @@ declare namespace uniformTypeDescriptor { * Markdown format. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ MARKDOWN = 'general.markdown', @@ -364,7 +395,8 @@ declare namespace uniformTypeDescriptor { * Asc text data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ ASC_TEXT = 'general.asc-text', @@ -372,7 +404,8 @@ declare namespace uniformTypeDescriptor { * Rich text data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ RICH_TEXT = 'general.rich-text', @@ -380,7 +413,8 @@ declare namespace uniformTypeDescriptor { * Delimited values text data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ DELIMITED_VALUES_TEXT = 'general.delimited-values-text', @@ -388,7 +422,8 @@ declare namespace uniformTypeDescriptor { * Comma separated values text data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMA_SEPARATED_VALUES_TEXT = 'general.comma-separated-values-text', @@ -396,7 +431,8 @@ declare namespace uniformTypeDescriptor { * Tab separated values text data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ TAB_SEPARATED_VALUES_TEXT = 'general.tab-separated-values-text', @@ -404,7 +440,8 @@ declare namespace uniformTypeDescriptor { * Ebook data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ EBOOK = 'general.ebook', @@ -412,7 +449,8 @@ declare namespace uniformTypeDescriptor { * EPUB ebook file format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ EPUB = 'general.epub', @@ -420,7 +458,8 @@ declare namespace uniformTypeDescriptor { * AZW ebook file format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ AZW = 'com.amazon.azw', @@ -428,7 +467,8 @@ declare namespace uniformTypeDescriptor { * AZW3 ebook file format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ AZW3 = 'com.amazon.azw3', @@ -436,7 +476,8 @@ declare namespace uniformTypeDescriptor { * KFX ebook file format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ KFX = 'com.amazon.kfx', @@ -444,7 +485,8 @@ declare namespace uniformTypeDescriptor { * MOBI ebook file format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MOBI = 'com.amazon.mobi', @@ -452,7 +494,8 @@ declare namespace uniformTypeDescriptor { * Media data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MEDIA = 'general.media', @@ -475,7 +518,8 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ IMAGE = 'general.image', @@ -483,7 +527,8 @@ declare namespace uniformTypeDescriptor { * JPEG image format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ JPEG = 'general.jpeg', @@ -491,7 +536,8 @@ declare namespace uniformTypeDescriptor { * PNG image format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PNG = 'general.png', @@ -499,7 +545,8 @@ declare namespace uniformTypeDescriptor { * Raw image format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ RAW_IMAGE = 'general.raw-image', @@ -507,7 +554,8 @@ declare namespace uniformTypeDescriptor { * TIFF image format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ TIFF = 'general.tiff', @@ -515,7 +563,8 @@ declare namespace uniformTypeDescriptor { * Windows bitmap image data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ BMP = 'com.microsoft.bmp', @@ -523,7 +572,8 @@ declare namespace uniformTypeDescriptor { * Windows icon data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ICO = 'com.microsoft.ico', @@ -531,7 +581,8 @@ declare namespace uniformTypeDescriptor { * Adobe Photoshop document data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PHOTOSHOP_IMAGE = 'com.adobe.photoshop-image', @@ -539,7 +590,8 @@ declare namespace uniformTypeDescriptor { * Adobe Illustrator document data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ AI_IMAGE = 'com.adobe.illustrator.ai-image', @@ -547,7 +599,8 @@ declare namespace uniformTypeDescriptor { * Base type for fax images. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ FAX = 'general.fax', @@ -555,7 +608,8 @@ declare namespace uniformTypeDescriptor { * J2 jConnect fax file format. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ JFX_FAX = 'com.j2.jfx-fax', @@ -563,7 +617,8 @@ declare namespace uniformTypeDescriptor { * The electronic fax document format. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ EFX_FAX = 'com.js.efx-fax', @@ -571,7 +626,8 @@ declare namespace uniformTypeDescriptor { * X bitmap image. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ XBITMAP_IMAGE = 'general.xbitmap-image', @@ -579,7 +635,8 @@ declare namespace uniformTypeDescriptor { * Gif image format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ GIF = 'general.gif', @@ -587,7 +644,8 @@ declare namespace uniformTypeDescriptor { * Tagged Graphics (TGA), a type of image format. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ TGA_IMAGE = 'com.truevision.tga-image', @@ -595,7 +653,8 @@ declare namespace uniformTypeDescriptor { * Silicon Graphics image. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ SGI_IMAGE = 'com.sgi.sgi-image', @@ -603,7 +662,8 @@ declare namespace uniformTypeDescriptor { * OpenEXR image. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENEXR_IMAGE = 'com.ilm.openexr-image', @@ -611,7 +671,8 @@ declare namespace uniformTypeDescriptor { * FlashPix image. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ FLASHPIX_IMAGE = 'com.kodak.flashpix.image', @@ -619,7 +680,8 @@ declare namespace uniformTypeDescriptor { * Microsoft Word data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WORD_DOC = 'com.microsoft.word.doc', @@ -627,7 +689,8 @@ declare namespace uniformTypeDescriptor { * Microsoft Excel data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ EXCEL = 'com.microsoft.excel.xls', @@ -635,7 +698,8 @@ declare namespace uniformTypeDescriptor { * Microsoft PowerPoint presentation data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PPT = 'com.microsoft.powerpoint.ppt', @@ -643,7 +707,8 @@ declare namespace uniformTypeDescriptor { * Microsoft Word dot data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ WORD_DOT = 'com.microsoft.word.dot', @@ -651,7 +716,8 @@ declare namespace uniformTypeDescriptor { * Microsoft Powerpoint pps data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ POWERPOINT_PPS = 'com.microsoft.powerpoint.pps', @@ -659,7 +725,8 @@ declare namespace uniformTypeDescriptor { * Microsoft Powerpoint pot data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ POWERPOINT_POT = 'com.microsoft.powerpoint.pot', @@ -667,7 +734,8 @@ declare namespace uniformTypeDescriptor { * Microsoft Excel xlt data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ EXCEL_XLT = 'com.microsoft.excel.xlt', @@ -675,7 +743,8 @@ declare namespace uniformTypeDescriptor { * Microsoft Visio vsd data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ VISIO_VSD = 'com.microsoft.visio.vsd', @@ -683,7 +752,8 @@ declare namespace uniformTypeDescriptor { * PDF data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PDF = 'com.adobe.pdf', @@ -691,7 +761,8 @@ declare namespace uniformTypeDescriptor { * PostScript data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ POSTSCRIPT = 'com.adobe.postscript', @@ -699,7 +770,8 @@ declare namespace uniformTypeDescriptor { * Encapsulated PostScript data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ENCAPSULATED_POSTSCRIPT = 'com.adobe.encapsulated-postscript', @@ -722,7 +794,8 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ VIDEO = 'general.video', @@ -730,7 +803,8 @@ declare namespace uniformTypeDescriptor { * AVI video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ AVI = 'general.avi', @@ -738,7 +812,8 @@ declare namespace uniformTypeDescriptor { * MPEG video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MPEG = 'general.mpeg', @@ -746,7 +821,8 @@ declare namespace uniformTypeDescriptor { * MPEG4 video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MPEG4 = 'general.mpeg-4', @@ -754,7 +830,8 @@ declare namespace uniformTypeDescriptor { * 3GPP video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ VIDEO_3GPP = 'general.3gpp', @@ -762,7 +839,8 @@ declare namespace uniformTypeDescriptor { * 3GPP2 video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ VIDEO_3GPP2 = 'general.3gpp2', @@ -770,7 +848,8 @@ declare namespace uniformTypeDescriptor { * Ts video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ TS = 'general.ts', @@ -778,7 +857,8 @@ declare namespace uniformTypeDescriptor { * Mpegurl video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ MPEGURL_VIDEO = 'general.mpegurl-video', @@ -786,7 +866,8 @@ declare namespace uniformTypeDescriptor { * Windows WM video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOWS_MEDIA_WM = 'com.microsoft.windows-media-wm', @@ -794,7 +875,8 @@ declare namespace uniformTypeDescriptor { * Windows WMV video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOWS_MEDIA_WMV = 'com.microsoft.windows-media-wmv', @@ -802,7 +884,8 @@ declare namespace uniformTypeDescriptor { * Windows WMP video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOWS_MEDIA_WMP = 'com.microsoft.windows-media-wmp', @@ -810,7 +893,8 @@ declare namespace uniformTypeDescriptor { * Windows WVX video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOWS_MEDIA_WVX = 'com.microsoft.windows-media-wvx', @@ -818,7 +902,8 @@ declare namespace uniformTypeDescriptor { * Windows WMX video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOWS_MEDIA_WMX = 'com.microsoft.windows-media-wmx', @@ -826,7 +911,8 @@ declare namespace uniformTypeDescriptor { * RealMedia. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ REALMEDIA = 'com.real.realmedia', @@ -834,7 +920,8 @@ declare namespace uniformTypeDescriptor { * Matroska video format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ MATROSKA_VIDEO = 'org.matroska.mkv', @@ -842,7 +929,8 @@ declare namespace uniformTypeDescriptor { * Flash data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ FLASH = 'com.adobe.flash', @@ -865,7 +953,8 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ AUDIO = 'general.audio', @@ -873,7 +962,8 @@ declare namespace uniformTypeDescriptor { * AAC audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ AAC = 'general.aac', @@ -881,7 +971,8 @@ declare namespace uniformTypeDescriptor { * AIFF audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ AIFF = 'general.aiff', @@ -889,7 +980,8 @@ declare namespace uniformTypeDescriptor { * ALAC audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ALAC = 'general.alac', @@ -897,7 +989,8 @@ declare namespace uniformTypeDescriptor { * FLAC audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ FLAC = 'general.flac', @@ -905,7 +998,8 @@ declare namespace uniformTypeDescriptor { * MP3 audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MP3 = 'general.mp3', @@ -913,7 +1007,8 @@ declare namespace uniformTypeDescriptor { * OGG audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ OGG = 'general.ogg', @@ -921,7 +1016,8 @@ declare namespace uniformTypeDescriptor { * PCM audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PCM = 'general.pcm', @@ -929,7 +1025,8 @@ declare namespace uniformTypeDescriptor { * Windows WMA audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOWS_MEDIA_WMA = 'com.microsoft.windows-media-wma', @@ -937,7 +1034,8 @@ declare namespace uniformTypeDescriptor { * Waveform audio format data type created by Microsoft. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WAVEFORM_AUDIO = 'com.microsoft.waveform-audio', @@ -945,7 +1043,8 @@ declare namespace uniformTypeDescriptor { * Windows WAX audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOWS_MEDIA_WAX = 'com.microsoft.windows-media-wax', @@ -953,7 +1052,8 @@ declare namespace uniformTypeDescriptor { * Au file format. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ AU_AUDIO = 'general.au-audio', @@ -961,7 +1061,8 @@ declare namespace uniformTypeDescriptor { * Audio Interchange File Format. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ AIFC_AUDIO = 'general.aifc-audio', @@ -969,7 +1070,8 @@ declare namespace uniformTypeDescriptor { * Mpegurl audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ MPEGURL_AUDIO = 'general.mpegurl-audio', @@ -977,31 +1079,35 @@ declare namespace uniformTypeDescriptor { * Mpeg-4 audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ MPEG_4_AUDIO = 'general.mpeg-4-audio', /** * Mp2 audio format data type. - * + * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ MP2 = 'general.mp2', /** - * Mpeg audio format data type. - * + * MPEG audio format. This type belongs to AUDIO. + * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ MPEG_AUDIO = 'general.mpeg-audio', /** * Ulaw audio format data type. - * + * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ ULAW_AUDIO = 'general.ulaw-audio', @@ -1009,7 +1115,8 @@ declare namespace uniformTypeDescriptor { * Digidesign Sound Designer II audio. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ SD2_AUDIO = 'com.digidesign.sd2-audio', @@ -1017,7 +1124,8 @@ declare namespace uniformTypeDescriptor { * RealMedia audio. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ REALAUDIO = 'com.real.realaudio', @@ -1025,7 +1133,8 @@ declare namespace uniformTypeDescriptor { * Matroska audio format data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ MATROSKA_AUDIO = 'org.matroska.mka', @@ -1048,7 +1157,8 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ FILE = 'general.file', @@ -1056,7 +1166,8 @@ declare namespace uniformTypeDescriptor { * Directory data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ DIRECTORY = 'general.directory', @@ -1079,7 +1190,8 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLDER = 'general.folder', @@ -1087,7 +1199,8 @@ declare namespace uniformTypeDescriptor { * Symlink data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ SYMLINK = 'general.symlink', @@ -1095,7 +1208,8 @@ declare namespace uniformTypeDescriptor { * Archive file data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ARCHIVE = 'general.archive', @@ -1103,7 +1217,8 @@ declare namespace uniformTypeDescriptor { * Bzip2 archive file data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ BZ2_ARCHIVE = 'general.bz2-archive', @@ -1111,7 +1226,8 @@ declare namespace uniformTypeDescriptor { * Opg archive data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPG = 'general.opg', @@ -1119,7 +1235,8 @@ declare namespace uniformTypeDescriptor { * Taz archive data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ TAZ_ARCHIVE = 'general.taz-archive', @@ -1127,7 +1244,8 @@ declare namespace uniformTypeDescriptor { * Web archive data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ WEB_ARCHIVE = 'general.web-archive', @@ -1135,7 +1253,8 @@ declare namespace uniformTypeDescriptor { * Disk image archive file data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ DISK_IMAGE = 'general.disk-image', @@ -1143,7 +1262,8 @@ declare namespace uniformTypeDescriptor { * Iso data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ ISO = 'general.iso', @@ -1151,7 +1271,8 @@ declare namespace uniformTypeDescriptor { * Tar archive data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ TAR_ARCHIVE = 'general.tar-archive', @@ -1159,7 +1280,8 @@ declare namespace uniformTypeDescriptor { * Zip archive data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ZIP_ARCHIVE = 'general.zip-archive', @@ -1167,15 +1289,17 @@ declare namespace uniformTypeDescriptor { * Java archive data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ JAVA_ARCHIVE = 'com.sun.java-archive', /** - * GNU archive data type. + * GNU. This type belongs to ARCHIVE. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ GNU_TAR_ARCHIVE = 'org.gnu.gnu-tar-archive', @@ -1183,7 +1307,8 @@ declare namespace uniformTypeDescriptor { * Gzip archive data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ GNU_ZIP_ARCHIVE = 'org.gnu.gnu-zip-archive', @@ -1191,7 +1316,8 @@ declare namespace uniformTypeDescriptor { * Gzip tar archive data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ GNU_ZIP_TAR_ARCHIVE = 'org.gnu.gnu-zip-tar-archive', @@ -1199,7 +1325,8 @@ declare namespace uniformTypeDescriptor { * Office Open XML. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENXML = 'org.openxmlformats.openxml', @@ -1207,7 +1334,8 @@ declare namespace uniformTypeDescriptor { * Office Open XML Document. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ WORDPROCESSINGML_DOCUMENT = 'org.openxmlformats.wordprocessingml.document', @@ -1215,7 +1343,8 @@ declare namespace uniformTypeDescriptor { * Office Open XML Workbook. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ SPREADSHEETML_SHEET = 'org.openxmlformats.spreadsheetml.sheet', @@ -1223,7 +1352,8 @@ declare namespace uniformTypeDescriptor { * Office Open XML Presentation. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ PRESENTATIONML_PRESENTATION = 'org.openxmlformats.presentationml.presentation', @@ -1231,7 +1361,8 @@ declare namespace uniformTypeDescriptor { * Office Open XML Drawingml visio. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ DRAWINGML_VISIO = 'org.openxmlformats.drawingml.visio', @@ -1239,7 +1370,8 @@ declare namespace uniformTypeDescriptor { * Office Open XML Drawingml template. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ DRAWINGML_TEMPLATE = 'org.openxmlformats.drawingml.template', @@ -1247,7 +1379,8 @@ declare namespace uniformTypeDescriptor { * Office Open XML Wordprocessingml template. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ WORDPROCESSINGML_TEMPLATE = 'org.openxmlformats.wordprocessingml.template', @@ -1255,7 +1388,8 @@ declare namespace uniformTypeDescriptor { * Office Open XML Presentationml template. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ PRESENTATIONML_TEMPLATE = 'org.openxmlformats.presentationml.template', @@ -1263,7 +1397,8 @@ declare namespace uniformTypeDescriptor { * Office Open XML Presentationml slideshow. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ PRESENTATIONML_SLIDESHOW = 'org.openxmlformats.presentationml.slideshow', @@ -1271,7 +1406,8 @@ declare namespace uniformTypeDescriptor { * Office Open XML Spreadsheetml template. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ SPREADSHEETML_TEMPLATE = 'org.openxmlformats.spreadsheetml.template', @@ -1279,7 +1415,8 @@ declare namespace uniformTypeDescriptor { * Open Document Format for Office Applications. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENDOCUMENT = 'org.oasis.opendocument', @@ -1287,7 +1424,8 @@ declare namespace uniformTypeDescriptor { * OpenDocument Text. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENDOCUMENT_TEXT = 'org.oasis.opendocument.text', @@ -1295,7 +1433,8 @@ declare namespace uniformTypeDescriptor { * OpenDocument Spreadsheet. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENDOCUMENT_SPREADSHEET = 'org.oasis.opendocument.spreadsheet', @@ -1303,7 +1442,8 @@ declare namespace uniformTypeDescriptor { * OpenDocument Presentation. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENDOCUMENT_PRESENTATION = 'org.oasis.opendocument.presentation', @@ -1311,7 +1451,8 @@ declare namespace uniformTypeDescriptor { * OpenDocument Graphics. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENDOCUMENT_GRAPHICS = 'org.oasis.opendocument.graphics', @@ -1319,7 +1460,8 @@ declare namespace uniformTypeDescriptor { * OpenDocument Formulat. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENDOCUMENT_FORMULA = 'org.oasis.opendocument.formula', @@ -1327,7 +1469,8 @@ declare namespace uniformTypeDescriptor { * Stuffit archive. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ STUFFIT_ARCHIVE = 'com.allume.stuffit-archive', @@ -1335,7 +1478,8 @@ declare namespace uniformTypeDescriptor { * Rar archive. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ RAR_ARCHIVE = 'com.rarlab.rar-archive', @@ -1343,7 +1487,8 @@ declare namespace uniformTypeDescriptor { * 7-zip archive. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ SEVEN_ZIP_ARCHIVE = 'org.7-zip.7-zip-archive', @@ -1351,7 +1496,8 @@ declare namespace uniformTypeDescriptor { * Calendar data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ CALENDAR = 'general.calendar', @@ -1359,7 +1505,8 @@ declare namespace uniformTypeDescriptor { * VCalendar type, a type of calendar format. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ VCS = 'general.vcs', @@ -1367,7 +1514,8 @@ declare namespace uniformTypeDescriptor { * ICalendar type, a type of calendar format. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ ICS = 'general.ics', @@ -1375,7 +1523,8 @@ declare namespace uniformTypeDescriptor { * Contact data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ CONTACT = 'general.contact', @@ -1383,7 +1532,8 @@ declare namespace uniformTypeDescriptor { * Database data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ DATABASE = 'general.database', @@ -1391,7 +1541,8 @@ declare namespace uniformTypeDescriptor { * Message data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MESSAGE = 'general.message', @@ -1399,7 +1550,8 @@ declare namespace uniformTypeDescriptor { * Base type for executable data. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ EXECUTABLE = 'general.executable', @@ -1407,7 +1559,8 @@ declare namespace uniformTypeDescriptor { * Microsoft Windows application. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ PORTABLE_EXECUTABLE = 'com.microsoft.portable-executable', @@ -1415,7 +1568,8 @@ declare namespace uniformTypeDescriptor { * Java class. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ SUN_JAVA_CLASS = 'com.sun.java-class', @@ -1423,7 +1577,8 @@ declare namespace uniformTypeDescriptor { * A file format data type stand for electronic business card. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ VCARD = 'general.vcard', @@ -1431,7 +1586,8 @@ declare namespace uniformTypeDescriptor { * Navigation data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ NAVIGATION = 'general.navigation', @@ -1439,7 +1595,8 @@ declare namespace uniformTypeDescriptor { * Location data type. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ LOCATION = 'general.location', @@ -1447,7 +1604,8 @@ declare namespace uniformTypeDescriptor { * Base type for fonts. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ FONT = 'general.font', @@ -1455,7 +1613,8 @@ declare namespace uniformTypeDescriptor { * TrueType font. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ TRUETYPE_FONT = 'general.truetype-font', @@ -1463,7 +1622,8 @@ declare namespace uniformTypeDescriptor { * TrueType collection font. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ TRUETYPE_COLLECTION_FONT = 'general.truetype-collection-font', @@ -1471,7 +1631,8 @@ declare namespace uniformTypeDescriptor { * OpenType font. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENTYPE_FONT = 'general.opentype-font', @@ -1479,7 +1640,8 @@ declare namespace uniformTypeDescriptor { * PostScript font. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ POSTSCRIPT_FONT = 'com.adobe.postscript-font', @@ -1487,7 +1649,8 @@ declare namespace uniformTypeDescriptor { * A Printer Font Binary version of Adobe's Type 1. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ POSTSCRIPT_PFB_FONT = 'com.adobe.postscript-pfb-font', @@ -1495,7 +1658,8 @@ declare namespace uniformTypeDescriptor { * Adobe Type 1 font. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ POSTSCRIPT_PFA_FONT = 'com.adobe.postscript-pfa-font', @@ -1510,7 +1674,8 @@ declare namespace uniformTypeDescriptor { * * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENHARMONY_FORM = 'openharmony.form', @@ -1525,7 +1690,8 @@ declare namespace uniformTypeDescriptor { * * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENHARMONY_APP_ITEM = 'openharmony.app-item', @@ -1548,7 +1714,8 @@ declare namespace uniformTypeDescriptor { * @syscap SystemCapability.DistributedDataManager.UDMF.Core * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENHARMONY_PIXEL_MAP = 'openharmony.pixel-map', @@ -1556,7 +1723,8 @@ declare namespace uniformTypeDescriptor { * OpenHarmony system defined atomic service data type(the data is provided and bound to OpenHarmony system). * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENHARMONY_ATOMIC_SERVICE = 'openharmony.atomic-service', @@ -1565,7 +1733,8 @@ declare namespace uniformTypeDescriptor { * <br>and bound to OpenHarmony system). * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENHARMONY_PACKAGE = 'openharmony.package', @@ -1573,7 +1742,8 @@ declare namespace uniformTypeDescriptor { * OpenHarmony system defined ability package(the data is provided and bound to OpenHarmony system). * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENHARMONY_HAP = 'openharmony.hap', @@ -1581,7 +1751,8 @@ declare namespace uniformTypeDescriptor { * OpenHarmony system AppNotepad data format. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENHARMONY_HDOC = 'openharmony.hdoc', @@ -1589,7 +1760,8 @@ declare namespace uniformTypeDescriptor { * OpenHarmony system Notes data format. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENHARMONY_HINOTE = 'openharmony.hinote', @@ -1597,7 +1769,8 @@ declare namespace uniformTypeDescriptor { * OpenHarmony system defined styled string. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENHARMONY_STYLED_STRING = 'openharmony.styled-string', @@ -1605,47 +1778,53 @@ declare namespace uniformTypeDescriptor { * OpenHarmony system defined Want. * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OPENHARMONY_WANT = 'openharmony.want', /** * Ofd data type. - * + * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OFD = 'general.ofd', /** * Cad data type. - * + * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ CAD = 'general.cad', /** * Octet stream data type. - * + * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ OCTET_STREAM = 'general.octet-stream', /** * File uri data type. - * + * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ FILE_URI = 'general.file-uri', /** - * Content form data type. - * + * Content widget type. This type belongs to OBJECT. + * * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ CONTENT_FORM = 'general.content-form' } @@ -1791,16 +1970,19 @@ declare namespace uniformTypeDescriptor { function getTypeDescriptor(typeId: string): TypeDescriptor; /** - * Queries and returns the uniform type descriptor by the given filename extension and the uniform data type it belongs to. + * Queries and returns the uniform type descriptor by the given filename extension and the uniform data type it + * belongs to. * * @param { string } filenameExtension - Filename extension. * @param { string } [belongsTo] - A uniform data type ID it belongs to. * @returns { string } Returns the uniform data type ID corresponding to the given filename extension and the - * <br>uniform data type it belongs to(If the 'belongsTo' parameter is set) or flexible type if the uniform data type does not exist. + * <br>uniform data type it belongs to(If the 'belongsTo' parameter is set) or flexible type if the uniform data type + * does not exist. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.UDMF.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function getUniformDataTypeByFilenameExtension(filenameExtension: string, belongsTo?: string): string; @@ -1819,12 +2001,14 @@ declare namespace uniformTypeDescriptor { function getUniformDataTypeByMIMEType(mimeType: string, belongsTo?: string): string; /** - * Queries and returns the uniform type descriptor list by the given filename extension and the uniform data type it belongs to. + * Queries and returns the uniform type descriptor list by the given filename extension and the uniform data type it + * belongs to. * * @param { string } filenameExtension - Filename extension. * @param { string } [belongsTo] - A uniform data type ID it belongs to. - * @returns { Array<string> } Returns the uniform data type ID list corresponding to the given filename extension and the - * <br>uniform data type it belongs to(If the 'belongsTo' parameter is set) or flexible type if the uniform data type does not exist. + * @returns { Array<string> } Returns the uniform data type ID list corresponding to the given filename extension and + * the uniform data type it belongs to(If the 'belongsTo' parameter is set) or flexible type if the uniform data type + * does not exist. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.UDMF.Core @@ -1833,12 +2017,14 @@ declare namespace uniformTypeDescriptor { function getUniformDataTypesByFilenameExtension(filenameExtension: string, belongsTo?: string): Array<string>; /** - * Queries and returns the uniform type descriptor list by the given MIME type and the uniform data type it belongs to. + * Queries and returns the uniform type descriptor list by the given MIME type and the uniform data type it belongs + * to. * * @param { string } mimeType - MIME type. * @param { string } [belongsTo] - A uniform data type ID it belongs to. - * @returns { Array<string> } Returns the uniform data type ID list corresponding to the given MIME type and the uniform data type - * <br>it belongs to(If the 'belongsTo' parameter is set) or flexible type if the uniform data type does not exist. + * @returns { Array<string> } Returns the uniform data type ID list corresponding to the given MIME type and the + * uniform data type it belongs to(If the 'belongsTo' parameter is set) or flexible type if the uniform data type does + * not exist. * @throws { BusinessError } 401 - Parameter error. Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameters types. * @syscap SystemCapability.DistributedDataManager.UDMF.Core diff --git a/api/@ohos.deviceInfo.d.ets b/api/@ohos.deviceInfo.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..950c68220ee4ab5b7feab7bb31afd7ad72b3eeae --- /dev/null +++ b/api/@ohos.deviceInfo.d.ets @@ -0,0 +1,111 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit BasicServicesKit + */ + +/** + * A static class pertaining to the product information. + * + * @namespace deviceInfo + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 20 + * @arkts 1.2 + */ +declare class deviceInfo { + + /** + * Obtains the device type represented by a string, + * which can be {@code phone} (or {@code default} for phones), {@code wearable}, {@code liteWearable}, + * {@code tablet}, {@code tv}, {@code car}, or {@code smartVision}. + * + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 20 + * @arkts 1.2 + */ + static get deviceType(): string; + + /** + * Obtains the external product series represented by a string. + * + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 20 + * @arkts 1.2 + */ + static get brand(): string; + + /** + * Obtains the product series represented by a string. + * + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 20 + * @arkts 1.2 + */ + static get productSeries(): string; + + + /** + * Obtains the product model represented by a string. + * + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 20 + * @arkts 1.2 + */ + static get productModel(): string; + + /** + * Obtains the SDK API version number. + * + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 20 + * @arkts 1.2 + */ + static get sdkApiVersion(): int; + + /** + * Open Device Identifier (ODID): a developer-level non-permanent device identifier. + * A developer can be an enterprise or individual developer. + * Example: dff3cdfd-7beb-1e7d-fdf7-1dbfddd7d30c + * + * An ODID will be regenerate in the following scenarios: + * Restore a phone to its factory settings. + * Uninstall and reinstall all apps of one developer on one device. + * + * An ODID is generated based on the following rules: + * For apps from the same developer, which are running on the same device, they have the same ODID. + * For apps from different developers, which are running on the same device, each of them has its own ODID. + * For apps from the same developer, which are running on different devices, each of them has its own ODID. + * For apps from different developers, which are running on different devices, each of them has its own ODID. + * + * + * @syscap SystemCapability.Startup.SystemInfo + * @since 20 + * @arkts 1.2 + */ + static get ODID(): string; +} +export default deviceInfo; diff --git a/api/@ohos.deviceInfo.d.ts b/api/@ohos.deviceInfo.d.ts index 444f27068731ebc9a0f9d8ad28c1126dd6ad5f9a..7f49b025981acb1ba7abd44dedb96fb3c4505ab5 100644 --- a/api/@ohos.deviceInfo.d.ts +++ b/api/@ohos.deviceInfo.d.ts @@ -35,6 +35,85 @@ * @since 11 */ declare namespace deviceInfo { + /** + * Enumerates thedevice types. + * @enum { string } + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + */ + enum DeviceTypes { + /** + * Default device for phones + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + */ + TYPE_DEFAULT = 'default', + + /** + * Phone device + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + */ + TYPE_PHONE = 'phone', + + /** + * Tablet device + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + */ + TYPE_TABLET = 'tablet', + + /** + * 2in1 device + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + */ + TYPE_2IN1 = '2in1', + + /** + * Tv device + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + */ + TYPE_TV = 'tv', + + /** + * Wearable device + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + */ + TYPE_WEARABLE = 'wearable', + + /** + * Car device + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + */ + TYPE_CAR = 'car' + } /** * Obtains the device type represented by a string, * which can be {@code phone} (or {@code default} for phones), {@code wearable}, {@code liteWearable}, @@ -686,6 +765,72 @@ declare namespace deviceInfo { * @since 15 */ const diskSN: string; + +/** + * Performance Class level of a device. + * + * @enum { number } + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 19 + */ + export enum PerformanceClassLevel { + /** + * Device Capability Level is high. + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 19 + */ + CLASS_LEVEL_HIGH, + /** + * Device Capability Level is medium. + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 19 + */ + CLASS_LEVEL_MEDIUM, + /** + * Device Capability Level is low. + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 19 + */ + CLASS_LEVEL_LOW + } + + /** + * Obtaining the performance class. + * + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @since 19 + */ + const performanceClass: PerformanceClassLevel; + + /** + * Obtains the SDK Minor api version. + * + * @type { number } + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + */ + const sdkMinorApiVersion: number; + + /** + * Obtains the SDK Patch api version. + * + * @type { number } + * @syscap SystemCapability.Startup.SystemInfo + * @crossplatform + * @atomicservice + * @since 20 + */ + const sdkPatchApiVersion: number; } export default deviceInfo; diff --git a/api/@ohos.deviceStatus.dragInteraction.d.ts b/api/@ohos.deviceStatus.dragInteraction.d.ts index 7beaaf44f0ea0d66c347473c13de9aa1e4d2d5ca..16fc70e7cf185a53e314a17aff14af30ab4d09e6 100644 --- a/api/@ohos.deviceStatus.dragInteraction.d.ts +++ b/api/@ohos.deviceStatus.dragInteraction.d.ts @@ -164,8 +164,6 @@ declare namespace dragInteraction { * * @param { boolean } enabled Switch state. * @throws {BusinessError} 202 - Permission verification failed. A non-system application calls a system API. - * @throws {BusinessError} 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types.3.Parameter verification failed. * @syscap SystemCapability.Msdp.DeviceStatus.Drag * @systemapi Hide this for inner system use. * @since 18 diff --git a/api/@ohos.display.d.ts b/api/@ohos.display.d.ts index 801e4467bae5d7479fe9a9bd6fad3af17ce005fa..82d855e2ef65ef02e1591622a48a02ee14d44920 100644 --- a/api/@ohos.display.d.ts +++ b/api/@ohos.display.d.ts @@ -44,7 +44,8 @@ import type hdrCapability from './@ohos.graphics.hdrCapability'; * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace display { /** @@ -94,12 +95,14 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - function getDefaultDisplaySync(): Display; + export function getDefaultDisplaySync(): Display; /** - * Obtain the primary display. + * Obtain the primary display. For devices other than 2in1 devices, the Display object obtained is the built-in screen. + * For 2in1 devices with an external screen, the Display object obtained is the primary screen. For 2in1 devices without an external screen, the Display object obtained is the built-in screen. * * @returns { Display } the result of primary display * @throws { BusinessError } 1400001 - Invalid display or screen. @@ -121,9 +124,10 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function getDisplayByIdSync(displayId: number): Display; + export function getDisplayByIdSync(displayId: number): Display; /** * Obtain all displays. @@ -134,7 +138,7 @@ declare namespace display { * @deprecated since 9 * @useinstead ohos.display#getAllDisplays */ - function getAllDisplay(callback: AsyncCallback<Array<Display>>): void; + export function getAllDisplay(callback: AsyncCallback<Array<Display>>): void; /** * Obtain all displays. @@ -162,9 +166,10 @@ declare namespace display { * @throws { BusinessError } 1400001 - Invalid display or screen. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function getAllDisplays(callback: AsyncCallback<Array<Display>>): void; + export function getAllDisplays(callback: AsyncCallback<Array<Display>>): void; /** * Obtain all displays. @@ -192,9 +197,10 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function getAllDisplayPhysicalResolution(): Promise<Array<DisplayPhysicalResolution>>; + export function getAllDisplayPhysicalResolution(): Promise<Array<DisplayPhysicalResolution>>; /** * Check whether there is a privacy window on the current display. @@ -207,9 +213,10 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - function hasPrivateWindow(displayId: number): boolean; + export function hasPrivateWindow(displayId: number): boolean; /** * Register the callback for display changes. @@ -232,7 +239,20 @@ declare namespace display { * @atomicservice * @since 12 */ - function on(type: 'add' | 'remove' | 'change', callback: Callback<number>): void; + /** + * Register the callback for display changes. + * + * @param { 'add' | 'remove' | 'change' } type the event of display change + * @param { Callback<number> } callback the display id of changed + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export function on(type: 'add' | 'remove' | 'change', callback: Callback<number>): void; /** * Unregister the callback for display changes. @@ -255,7 +275,20 @@ declare namespace display { * @atomicservice * @since 12 */ - function off(type: 'add' | 'remove' | 'change', callback?: Callback<number>): void; + /** + * Unregister the callback for display changes. + * + * @param { 'add' | 'remove' | 'change' } type the event of display change event + * @param { Callback<number> } callback the display id of changed + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export function off(type: 'add' | 'remove' | 'change', callback?: Callback<number>): void; /** * Register the callback for private mode changes. @@ -267,9 +300,10 @@ declare namespace display { * <br>2. Incorrect parameter types. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ - function on(type: 'privateModeChange', callback: Callback<boolean>): void; + export function on(type: 'privateModeChange', callback: Callback<boolean>): void; /** * Unregister the callback for private mode changes. @@ -281,9 +315,10 @@ declare namespace display { * <br>2. Incorrect parameter types. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ - function off(type: 'privateModeChange', callback?: Callback<boolean>): void; + export function off(type: 'privateModeChange', callback?: Callback<boolean>): void; /** * Check whether the device is foldable. @@ -302,7 +337,18 @@ declare namespace display { * @atomicservice * @since 12 */ - function isFoldable(): boolean; + /** + * Check whether the device is foldable. + * + * @returns { boolean } true means the device is foldable. + * @throws { BusinessError } 1400003 - This display manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export function isFoldable(): boolean; /** * Get the current fold status of the foldable device. @@ -321,7 +367,18 @@ declare namespace display { * @atomicservice * @since 12 */ - function getFoldStatus(): FoldStatus; + /** + * Get the current fold status of the foldable device. + * + * @returns { FoldStatus } fold status of device. + * @throws { BusinessError } 1400003 - This display manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export function getFoldStatus(): FoldStatus; /** * Register the callback for fold status changes. @@ -346,7 +403,21 @@ declare namespace display { * @atomicservice * @since 12 */ - function on(type: 'foldStatusChange', callback: Callback<FoldStatus>): void; + /** + * Register the callback for fold status changes. + * + * @param { 'foldStatusChange' } type the event of fold status changes + * @param { Callback<FoldStatus> } callback Callback used to return the current fold status of device + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 1400003 - This display manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export function on(type: 'foldStatusChange', callback: Callback<FoldStatus>): void; /** * Unregister the callback for fold status changes. @@ -371,7 +442,21 @@ declare namespace display { * @atomicservice * @since 12 */ - function off(type: 'foldStatusChange', callback?: Callback<FoldStatus>): void; + /** + * Unregister the callback for fold status changes. + * + * @param { 'foldStatusChange' } type the event of fold status changes + * @param { Callback<FoldStatus> } callback Callback used to return the current fold status of device + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 1400003 - This display manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export function off(type: 'foldStatusChange', callback?: Callback<FoldStatus>): void; /** * Register the callback for fold angle changes. @@ -383,9 +468,10 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function on(type: 'foldAngleChange', callback: Callback<Array<number>>): void; + export function on(type: 'foldAngleChange', callback: Callback<Array<number>>): void; /** * Unregister the callback for fold angle changes. @@ -397,49 +483,53 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function off(type: 'foldAngleChange', callback?: Callback<Array<number>>): void; + export function off(type: 'foldAngleChange', callback?: Callback<Array<number>>): void; /** - * Register the callback for device capture status changes. + * Register the callback for device capture, casting, or recording status changes. * - * @param { 'captureStatusChange' } type the event of capture status changes. - * @param { Callback<boolean> } callback Callback used to return the device capture status. + * @param { 'captureStatusChange' } type the event of capture, casting, or recording status changes. + * @param { Callback<boolean> } callback Callback used to return the device capture, casting, or recording status. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function on(type: 'captureStatusChange', callback: Callback<boolean>): void; + export function on(type: 'captureStatusChange', callback: Callback<boolean>): void; /** - * Unregister the callback for device capture status changes. + * Unregister the callback for device capture, casting, or recording status changes. * - * @param { 'captureStatusChange' } type the event of capture status changes. - * @param { Callback<boolean> } callback Callback used to return the device capture status. + * @param { 'captureStatusChange' } type the event of capture, casting, or recording status changes. + * @param { Callback<boolean> } callback Callback used to return the device capture, casting, or recording status . * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function off(type: 'captureStatusChange', callback?: Callback<boolean>): void; + export function off(type: 'captureStatusChange', callback?: Callback<boolean>): void; /** - * Check whether the device is captured. + * Check whether the device is captured, projected, or recorded. * - * @returns { boolean } true means the device is captured. + * @returns { boolean } true means the device is captured, projected, or recorded. * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function isCaptured(): boolean; + export function isCaptured(): boolean; /** * Get the display mode of the foldable device. @@ -456,9 +546,10 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function getFoldDisplayMode(): FoldDisplayMode; + export function getFoldDisplayMode(): FoldDisplayMode; /** * Change the display mode of the foldable device. @@ -470,9 +561,10 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ - function setFoldDisplayMode(mode: FoldDisplayMode): void; + export function setFoldDisplayMode(mode: FoldDisplayMode): void; /** * Change the display mode of the foldable device. @@ -480,14 +572,13 @@ declare namespace display { * @param { FoldDisplayMode } mode target display mode to change. * @param { string } reason set display mode reason. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. - * @since 15 + * @since arkts {'1.1':'19', '1.2':'20'} + * @arkts 1.1&1.2 */ - function setFoldDisplayMode(mode: FoldDisplayMode, reason: string): void; + export function setFoldDisplayMode(mode: FoldDisplayMode, reason: string): void; /** * Register the callback for fold display mode changes. @@ -510,9 +601,10 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function on(type: 'foldDisplayModeChange', callback: Callback<FoldDisplayMode>): void; + export function on(type: 'foldDisplayModeChange', callback: Callback<FoldDisplayMode>): void; /** * Unregister the callback for fold display mode changes. @@ -535,9 +627,10 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function off(type: 'foldDisplayModeChange', callback?: Callback<FoldDisplayMode>): void; + export function off(type: 'foldDisplayModeChange', callback?: Callback<FoldDisplayMode>): void; /** * Get the fold crease region in the current display mode. @@ -554,9 +647,10 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function getCurrentFoldCreaseRegion(): FoldCreaseRegion; + export function getCurrentFoldCreaseRegion(): FoldCreaseRegion; /** * set fold status locked or not. @@ -568,9 +662,10 @@ declare namespace display { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - function setFoldStatusLocked(locked: boolean): void; + export function setFoldStatusLocked(locked: boolean): void; /** * Create virtual screen. @@ -640,6 +735,36 @@ declare namespace display { */ function makeUnique(screenId: number): Promise<void>; + /** + * Add the list of window ids to the block list which won't display on the virtual screen + * + * @param { Array<number> } windowIds - The list of window ids that do not want to display on the virtual screen + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported.Function addVirtualScreenBlocklist can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1400003 - This display manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @systemapi Hide this for inner system use. + * @since 18 + */ + function addVirtualScreenBlocklist(windowIds: Array<number>): Promise<void>; + + /** + * Remove the list of window ids from the block list which won't display on the virtual screen + * + * @param { Array<number> } windowIds - The list of window ids that want to display on the virtual screen + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported.Function removeVirtualScreenBlocklist can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1400003 - This display manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @systemapi Hide this for inner system use. + * @since 18 + */ + function removeVirtualScreenBlocklist(windowIds: Array<number>): Promise<void>; + /** * The parameter for creating virtual screen. * @@ -662,7 +787,8 @@ declare namespace display { * * @type { number } * @syscap SystemCapability.Window.SessionManager - * @since 16 + * @since arkts {'1.1':'16', '1.2':'20'} + * @arkts 1.1&1.2 */ width: number; @@ -671,7 +797,8 @@ declare namespace display { * * @type { number } * @syscap SystemCapability.Window.SessionManager - * @since 16 + * @since arkts {'1.1':'16', '1.2':'20'} + * @arkts 1.1&1.2 */ height: number; @@ -695,21 +822,31 @@ declare namespace display { } /** - * Enumerates the fold status. + * Enumerates the fold status. For dual-fold axis devices, when oriented with the charging port at the bottom, the hinges are identified from right to left as the first and second fold axes, respectively. * * @enum { number } * @syscap SystemCapability.Window.SessionManager * @since 10 */ /** - * Enumerates the fold status. + * Enumerates the fold status.For dual-fold axis devices, when oriented with the charging port at the bottom, the hinges are identified from right to left as the first and second fold axes, respectively. * * @enum { number } * @syscap SystemCapability.Window.SessionManager * @atomicservice * @since 12 */ - enum FoldStatus { + /** + * Enumerates the fold status. + * + * @enum { number } + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export enum FoldStatus { /** * Fold Status Unknown. * @@ -723,55 +860,84 @@ declare namespace display { * @atomicservice * @since 12 */ + /** + * Fold Status Unknown. + * + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ FOLD_STATUS_UNKNOWN = 0, /** - * Fold Status Expanded. + * Fold Status Expanded. For dual-fold axis devices, the first fold axis is fully open, and the second fold axis is folded. * * @syscap SystemCapability.Window.SessionManager * @since 10 */ /** - * Fold Status Expanded. + * Fold Status Expanded. For dual-fold axis devices, the first fold axis is fully open, and the second fold axis is folded. * * @syscap SystemCapability.Window.SessionManager * @atomicservice * @since 12 */ - FOLD_STATUS_EXPANDED, /** - * Fold Status Folded. + * Fold Status Expanded. + * + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + FOLD_STATUS_EXPANDED = 1, + /** + * Fold Status Folded. For dual-fold axis devices, the first fold axis is folded, and the second fold axis is folded. * * @syscap SystemCapability.Window.SessionManager * @since 10 */ /** - * Fold Status Folded. + * Fold Status Folded. For dual-fold axis devices, the first fold axis is folded, and the second fold axis is folded. * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - FOLD_STATUS_FOLDED, + FOLD_STATUS_FOLDED = 2, /** - * Fold Status Half Folded. + * Fold Status Half Folded, somehow between fully open and completely closed. For dual-fold axis devices, the first fold axis is half-folded, and the second fold axis is folded. * * @syscap SystemCapability.Window.SessionManager * @since 10 */ /** - * Fold Status Half Folded. + * Fold Status Half Folded, somehow between fully open and completely closed. For dual-fold axis devices, the first fold axis is half-folded, and the second fold axis is folded. * * @syscap SystemCapability.Window.SessionManager * @atomicservice * @since 12 */ - FOLD_STATUS_HALF_FOLDED, + /** + * Fold Status Half Folded. + * + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + FOLD_STATUS_HALF_FOLDED = 3, /** * Fold Status Expanded With Second Expanded. * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLD_STATUS_EXPANDED_WITH_SECOND_EXPANDED = 11, /** @@ -779,7 +945,8 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLD_STATUS_EXPANDED_WITH_SECOND_HALF_FOLDED = 21, /** @@ -787,7 +954,8 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLD_STATUS_FOLDED_WITH_SECOND_EXPANDED = 12, /** @@ -795,7 +963,8 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLD_STATUS_FOLDED_WITH_SECOND_HALF_FOLDED = 22, /** @@ -803,7 +972,8 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLD_STATUS_HALF_FOLDED_WITH_SECOND_EXPANDED = 13, /** @@ -811,7 +981,8 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLD_STATUS_HALF_FOLDED_WITH_SECOND_HALF_FOLDED = 23 } @@ -831,7 +1002,17 @@ declare namespace display { * @atomicservice * @since 12 */ - enum FoldDisplayMode { + /** + * Enumerates the fold display mode. + * + * @enum { number } + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export enum FoldDisplayMode { /** * Unknown Display. * @@ -843,7 +1024,8 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLD_DISPLAY_MODE_UNKNOWN = 0, /** @@ -857,9 +1039,10 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - FOLD_DISPLAY_MODE_FULL, + FOLD_DISPLAY_MODE_FULL = 1, /** * Main Display. * @@ -871,9 +1054,10 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - FOLD_DISPLAY_MODE_MAIN, + FOLD_DISPLAY_MODE_MAIN= 2, /** * Sub Display. * @@ -885,9 +1069,10 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - FOLD_DISPLAY_MODE_SUB, + FOLD_DISPLAY_MODE_SUB= 3, /** * Coordination Display. * @@ -899,7 +1084,8 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLD_DISPLAY_MODE_COORDINATION } @@ -917,9 +1103,10 @@ declare namespace display { * @enum { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum DisplayState { + export enum DisplayState { /** * Unknown. * @@ -945,9 +1132,10 @@ declare namespace display { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - STATE_OFF, + STATE_OFF = 1, /** * Screen on. * @@ -959,9 +1147,10 @@ declare namespace display { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - STATE_ON, + STATE_ON = 2, /** * Doze, but it will update for some important system messages. * @@ -973,9 +1162,10 @@ declare namespace display { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - STATE_DOZE, + STATE_DOZE = 3, /** * Doze and not update. * @@ -987,9 +1177,10 @@ declare namespace display { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - STATE_DOZE_SUSPEND, + STATE_DOZE_SUSPEND = 4, /** * VR node. * @@ -1001,9 +1192,10 @@ declare namespace display { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - STATE_VR, + STATE_VR = 5, /** * Screen on and not update. * @@ -1015,9 +1207,10 @@ declare namespace display { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - STATE_ON_SUSPEND + STATE_ON_SUSPEND = 6 } /** @@ -1035,7 +1228,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ enum Orientation { /** @@ -1051,7 +1245,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ PORTRAIT = 0, @@ -1068,7 +1263,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ LANDSCAPE = 1, @@ -1085,7 +1281,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ PORTRAIT_INVERTED = 2, @@ -1102,7 +1299,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ LANDSCAPE_INVERTED = 3 } @@ -1113,7 +1311,7 @@ declare namespace display { * @enum { number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ enum DisplaySourceMode { /** @@ -1121,7 +1319,7 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ NONE = 0, @@ -1130,7 +1328,7 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ MAIN = 1, @@ -1139,7 +1337,7 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ MIRROR = 2, @@ -1148,7 +1346,7 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ EXTEND = 3, @@ -1157,7 +1355,7 @@ declare namespace display { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ ALONE = 4 } @@ -1202,9 +1400,10 @@ declare namespace display { * @interface FoldCreaseRegion * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface FoldCreaseRegion { + export interface FoldCreaseRegion { /** * The display ID is used to identify the screen where the crease is located. * @@ -1220,7 +1419,8 @@ declare namespace display { * @readonly * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly displayId: number; @@ -1239,7 +1439,8 @@ declare namespace display { * @readonly * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly creaseRects: Array<Rect>; } @@ -1257,7 +1458,8 @@ declare namespace display { * @interface Rect * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Rect { /** @@ -1273,7 +1475,8 @@ declare namespace display { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ left: number; @@ -1290,7 +1493,8 @@ declare namespace display { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ top: number; @@ -1307,7 +1511,8 @@ declare namespace display { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ width: number; @@ -1324,7 +1529,8 @@ declare namespace display { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ height: number; } @@ -1342,9 +1548,10 @@ declare namespace display { * @interface WaterfallDisplayAreaRects * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface WaterfallDisplayAreaRects { + export interface WaterfallDisplayAreaRects { /** * Indicates the size of left side curved area of the waterfall screen. * @@ -1360,7 +1567,8 @@ declare namespace display { * @readonly * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly left: Rect; @@ -1379,7 +1587,8 @@ declare namespace display { * @readonly * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly right: Rect; @@ -1398,7 +1607,8 @@ declare namespace display { * @readonly * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly top: Rect; @@ -1417,7 +1627,8 @@ declare namespace display { * @readonly * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly bottom: Rect; } @@ -1435,9 +1646,10 @@ declare namespace display { * @interface CutoutInfo * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface CutoutInfo { + export interface CutoutInfo { /** * Bounding rectangles of the cutout areas of the display. * @@ -1453,7 +1665,8 @@ declare namespace display { * @readonly * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly boundingRects: Array<Rect>; @@ -1472,7 +1685,8 @@ declare namespace display { * @readonly * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly waterfallDisplayAreaRects: WaterfallDisplayAreaRects; } @@ -1484,16 +1698,18 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface DisplayPhysicalResolution { + export interface DisplayPhysicalResolution { /** * fold display mode. * * @type { FoldDisplayMode } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ foldDisplayMode: FoldDisplayMode; @@ -1504,7 +1720,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ physicalWidth: number; @@ -1515,7 +1732,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ physicalHeight: number; } @@ -1542,9 +1760,10 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface Display { + export interface Display { /** * Display ID. * @@ -1567,7 +1786,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ id: number; @@ -1584,24 +1804,26 @@ declare namespace display { * @type { string } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ name: string; /** - * The display is alive. + * Whether the display is alive. * * @type { boolean } * @syscap SystemCapability.WindowManager.WindowManager.Core * @since 7 */ /** - * The display is alive. + * Whether the display is alive. * * @type { boolean } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ alive: boolean; @@ -1618,7 +1840,8 @@ declare namespace display { * @type { DisplayState } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ state: DisplayState; @@ -1635,7 +1858,8 @@ declare namespace display { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ refreshRate: number; @@ -1656,7 +1880,8 @@ declare namespace display { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ rotation: number; @@ -1682,7 +1907,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ width: number; @@ -1708,7 +1934,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ height: number; @@ -1719,7 +1946,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ availableWidth: number; @@ -1730,19 +1958,20 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ availableHeight: number; /** - * Display resolution. + * Display resolution, that is, the number of pixels per inch. * * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @since 7 */ /** - * Display resolution. + * Display resolution, that is, the number of pixels per inch. * * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core @@ -1750,13 +1979,14 @@ declare namespace display { * @since 11 */ /** - * Display resolution. + * Display resolution, that is, the number of pixels per inch. * * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ densityDPI: number; @@ -1775,25 +2005,27 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ orientation: Orientation; /** - * Display density, in pixels. The value for a low-resolution display is 1.0. + * Display density, in pixels. which is the scaling coefficient between physical pixels and logical pixels. The value for a low-resolution display is 1.0. * * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @since 7 */ /** - * Display density, in pixels. The value for a low-resolution display is 1.0. + * Display density, in pixels. which is the scaling coefficient between physical pixels and logical pixels. The value for a low-resolution display is 1.0. * * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ densityPixels: number; @@ -1819,7 +2051,8 @@ declare namespace display { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ scaledDensity: number; @@ -1838,6 +2071,16 @@ declare namespace display { * @atomicservice * @since 12 */ + /** + * DPI on the x-axis. + * + * @type { number } + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ xDPI: number; /** @@ -1855,6 +2098,15 @@ declare namespace display { * @atomicservice * @since 12 */ + /** + * DPI on the y-axis. + * + * @type { number } + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since 20 + */ yDPI: number; /** @@ -1907,7 +2159,7 @@ declare namespace display { * @type { ?DisplaySourceMode } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ sourceMode?: DisplaySourceMode; @@ -1917,7 +2169,7 @@ declare namespace display { * @type { ?number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ x?: number; @@ -1927,7 +2179,7 @@ declare namespace display { * @type { ?number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ y?: number; @@ -1946,7 +2198,8 @@ declare namespace display { * @throws { BusinessError } 1400001 - Invalid display or screen. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getCutoutInfo(callback: AsyncCallback<CutoutInfo>): void; diff --git a/api/@ohos.distributedDeviceManager.d.ts b/api/@ohos.distributedDeviceManager.d.ts index 54dc1a290a2019e245ac442eba5154ada8260741..31588f25ed45f2f2c0d5a5eebc92df4ae519aa39 100644 --- a/api/@ohos.distributedDeviceManager.d.ts +++ b/api/@ohos.distributedDeviceManager.d.ts @@ -71,14 +71,6 @@ declare namespace distributedDeviceManager { * @since 10 */ networkId?: string; - - /** - * Device extra data. - * @type { ?string } - * @syscap SystemCapability.DistributedHardware.DeviceManager - * @since 18 - */ - extraData?: string; } /** @@ -1132,7 +1124,7 @@ declare namespace distributedDeviceManager { * @throws { BusinessError } 11600102 - Failed to obtain service. * @syscap SystemCapability.DistributedHardware.DeviceManager * @systemapi - * @since 15 + * @since 18 */ putDeviceProfileInfoList(deviceProfileInfoList: Array<DeviceProfileInfo>): Promise<number>; @@ -1193,6 +1185,9 @@ declare namespace distributedDeviceManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 11600102 - Failed to obtain service. + * @throws { BusinessError } 11600106 - Failed to get data from the cloud. + * @throws { BusinessError } 11600107 - A login account is required. + * @throws { BusinessError } 11600108 - The device name contains non-compliant content. * @syscap SystemCapability.DistributedHardware.DeviceManager * @systemapi * @since 18 @@ -1213,7 +1208,9 @@ declare namespace distributedDeviceManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 11600102 - Failed to obtain service. + * @throws { BusinessError } 11600106 - Failed to get data from the cloud. * @throws { BusinessError } 11600107 - A login account is required. + * @throws { BusinessError } 11600108 - The device name contains non-compliant content. * @syscap SystemCapability.DistributedHardware.DeviceManager * @systemapi * @since 18 diff --git a/api/@ohos.distributedsched.abilityConnectionManager.d.ts b/api/@ohos.distributedsched.abilityConnectionManager.d.ts index f74111341b0ac8da493dd4fb6893b9d512a73920..3ad53bf5dc679b65e3e211a84a80043a2e8a539f 100644 --- a/api/@ohos.distributedsched.abilityConnectionManager.d.ts +++ b/api/@ohos.distributedsched.abilityConnectionManager.d.ts @@ -253,14 +253,6 @@ declare namespace abilityConnectionManager { */ sessionId: number; - /** - * The type of event returned is consistent with the type registered in function 'on'. - * @type { string } - * @syscap SystemCapability.DistributedSched.AppCollaboration - * @since 18 - */ - eventType: string; - /** * Indicates the reason of ability disconnection. * @type { ?DisconnectReason } @@ -302,14 +294,6 @@ declare namespace abilityConnectionManager { * @since 18 */ interface CollaborateEventInfo { - /** - * Ability connection Session id. - * @type { number } - * @syscap SystemCapability.DistributedSched.AppCollaboration - * @since 18 - */ - sessionId: number; - /** * Indicates the type of collaborate event. * @type { CollaborateEventType } diff --git a/api/@ohos.distributedsched.linkEnhance.d.ts b/api/@ohos.distributedsched.linkEnhance.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..88415324be4ed3e85d7485fca49ab129f763e76f --- /dev/null +++ b/api/@ohos.distributedsched.linkEnhance.d.ts @@ -0,0 +1,345 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit DistributedServiceKit + */ + +import { Callback } from './@ohos.base'; + +/** + * Provides methods to establish enhance link. + * + * @namespace linkEnhance + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ +declare namespace linkEnhance { + + /** + * Describes the result of connect operation. + * + * @typedef ConnectResult + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + interface ConnectResult { + /** + * Indicates the peer device id. + * + * @type { string } + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + deviceId: string; + + /** + * Indicates success or not, true if success, false if failure. + * + * @type { boolean } + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + success: boolean; + + /** + * Indicates the reason if failure, it is always 0 if success. + * value below: + * - 32390200 - Connect timeout. + * - 32390201 - Peer server is not started. + * - 32390300 - Internal error. + * + * @type { number } + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + reason: number + } + + + /** + * Manages server. + * Before calling any server methods, you must call {@link createServer} first. + * + * @typedef Server + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + interface Server { + /** + * Start server which can be connected by others. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390202 - The number of servers exceeds the limit. + * @throws { BusinessError } 32390300 - Internal error. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + start(): void; + + /** + * Stop server which can not be connected ever. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @throws { BusinessError } 201 - Permission denied. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + stop(): void; + + /** + * Closes this {@code Server} object and unregisters its callbacks. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @throws { BusinessError } 201 - Permission denied. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + close(): void; + + /** + * Subscribe server is connected event. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { 'connectionAccepted' } type - Type of the server is connected event to listen for. + * @param { Callback<Connection> } callback - Callback used to listen for the server is connected event. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Parameter invalid. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + on(type: 'connectionAccepted', callback: Callback<Connection>): void; + + /** + * Unsubscribe server is connected event. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { 'connectionAccepted' } type - Type of the server is connected event to listen for. + * @param { Callback<Connection> } callback - Callback used to listen for the server is connected event. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Parameter invalid. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + off(type: 'connectionAccepted', callback?: Callback<Connection>): void; + + /** + * Subscribe server stop event, it should always rebuild the server after being called. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { 'serverStopped' } type - Type of the server state change event to listen for. + * @param { Callback<number> } callback - Callback used to listen for the server stop event. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Parameter invalid. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + on(type: 'serverStopped', callback: Callback<number>): void; + + /** + * Unsubscribe server stop event. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { 'serverStopped' } type - Type of the server state change event to listen for. + * @param { Callback<number> } callback - Callback used to listen for the server state change event. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Parameter invalid. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + off(type: 'serverStopped', callback?: Callback<number>): void; + + } + + /** + * Create an server instance. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { string } name - Name of the server. + * @returns { Server } Returns a server instance {@code Server}. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Invalid parameter. + * @throws { BusinessError } 32390203 - Duplicate server name. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + function createServer(name: string): Server; + + /** + * Manages connection. + * Before calling any connection methods, you must use {@link createServer} to create an instance, + * or get a connection from {@link acceptConnect} of server. + * + * @typedef Connection + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + interface Connection { + /** + * Connects to the peer server, which must be in connectable advertising state. + * <p>The 'ConnectResult' event should be subscribed to get the result of this operation. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390204 - The number of connection exceeds the limit. + * @throws { BusinessError } 32390300 - Internal error. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + connect(): void; + + /** + * Disconnects from or stops an ongoing connection to the peer server. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @throws { BusinessError } 201 - Permission denied. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + disconnect(): void; + + /** + * Disables connection. + * <p> This method unregisters the device and clears all registered callbacks and handles. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @throws { BusinessError } 201 - Permission denied. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + close(): void; + + /** + * Gets the peer device id of connection + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @returns { string } Returns the peer device id, return "" if operation failed. + * @throws { BusinessError } 201 - Permission denied. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + getPeerDeviceId(): string; + + /** + * Send data to the peer. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { ArrayBuffer } data - Indicates data to be sent. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Invalid parameter. + * @throws { BusinessError } 32390205 - Connection is not ready. + * @throws { BusinessError } 32390300 - Internal error. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + sendData(data: ArrayBuffer): void; + + /** + * Subscribe connect result event. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { 'connectResult' } type - Type of result event to listen for. + * @param { Callback<ConnectResult> } callback - Callback used to listen for result event. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Invalid parameter. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + on(type: 'connectResult', callback: Callback<ConnectResult>): void; + + /** + * Unsubscribe connect result event. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { 'connectResult' } type - Type of result event to listen for. + * @param { Callback<ConnectResult> } callback - Callback used to listen for result event. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Invalid parameter. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + off(type: 'connectResult', callback?: Callback<ConnectResult>): void; + + /** + * Subscribe connection disconnected event. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { 'disconnected' } type - Type of connection disconnected event to listen for. + * @param { Callback<number> } callback - Callback used to listen for the connection disconnected event. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Invalid parameter. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + on(type: 'disconnected', callback: Callback<number>): void; + + /** + * Unsubscribe connection disconnected event. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { 'disconnected' } type - Type of connection disconnected event to listen for. + * @param { Callback<number> } callback - Callback used to listen for the connection disconnected event. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Invalid parameter. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + off(type: 'disconnected', callback?: Callback<number>): void; + + /** + * Subscribe connection data received event. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { 'dataReceived' } type - Type of the connection data received event to listen for. + * @param { Callback<ArrayBuffer> } callback - Callback used to listen for the connection data received event. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Invalid parameter. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + on(type: 'dataReceived', callback: Callback<ArrayBuffer>): void; + + /** + * Unsubscribe connection data received event. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { 'dataReceived' } type - Type of the connection data received event to listen for. + * @param { Callback<ArrayBuffer> } callback - Callback used to listen for the connection data received event. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Invalid parameter. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + off(type: 'dataReceived', callback?: Callback<ArrayBuffer>): void; + } + + /** + * Create a connection instance. + * + * @permission ohos.permission.DISTRIBUTED_DATASYNC + * @param { string } deviceId - Indicates device id. + * @param { string } name - Indicates server name to be connected. + * @returns { Connection } Returns a connection instance {@code Connection}. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 32390206 - Invalid parameter. + * @syscap SystemCapability.DistributedSched.AppCollaboration + * @since 20 + */ + function createConnection(deviceId: string, name: string): Connection; +} + +export default linkEnhance; diff --git a/api/@ohos.dlpPermission.d.ts b/api/@ohos.dlpPermission.d.ts index 4e2e6528880f9536b46c3aceca070d1d59767044..24575efac221032cf0c6db185000dd8cc1c6b683 100644 --- a/api/@ohos.dlpPermission.d.ts +++ b/api/@ohos.dlpPermission.d.ts @@ -586,8 +586,8 @@ declare namespace dlpPermission { * 2. Incorrect parameter types. * @throws { BusinessError } 19100001 - Invalid parameter value. * @throws { BusinessError } 19100011 - The system ability works abnormally. - * @throws { BusinessError } 19100016 - uri missing in want. - * @throws { BusinessError } 19100017 - displayName missing in want. + * @throws { BusinessError } 19100016 - The uri field is missing in the want parameter. + * @throws { BusinessError } 19100017 - The displayName field is missing in the want parameter. * @syscap SystemCapability.Security.DataLossPrevention * @StageModelOnly * @since 11 @@ -1016,6 +1016,16 @@ declare namespace dlpPermission { * @since 11 */ expireTime?: number; + + /** + * Action type when the DLP file exceed expire time. + * + * @type { ?ActionType } + * @syscap SystemCapability.Security.DataLossPrevention + * @systemapi Hide this for inner system use. + * @since 20 + */ + actionUponExpiry?: ActionType; } /** @@ -1230,7 +1240,7 @@ declare namespace dlpPermission { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. * @throws { BusinessError } 19100001 - Invalid parameter value. - * @throws { BusinessError } 19100002 - Credential task error. + * @throws { BusinessError } 19100002 - Credential service busy due to too many tasks or duplicate tasks. * @throws { BusinessError } 19100003 - Credential task time out. * @throws { BusinessError } 19100004 - Credential service error. * @throws { BusinessError } 19100005 - Credential authentication server error. @@ -1255,7 +1265,7 @@ declare namespace dlpPermission { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. * @throws { BusinessError } 19100001 - Invalid parameter value. - * @throws { BusinessError } 19100002 - Credential task error. + * @throws { BusinessError } 19100002 - Credential service busy due to too many tasks or duplicate tasks. * @throws { BusinessError } 19100003 - Credential task time out. * @throws { BusinessError } 19100004 - Credential service error. * @throws { BusinessError } 19100005 - Credential authentication server error. @@ -1316,7 +1326,7 @@ declare namespace dlpPermission { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. * @throws { BusinessError } 19100001 - Invalid parameter value. - * @throws { BusinessError } 19100002 - Credential task error. + * @throws { BusinessError } 19100002 - Credential service busy due to too many tasks or duplicate tasks. * @throws { BusinessError } 19100003 - Credential task time out. * @throws { BusinessError } 19100004 - Credential service error. * @throws { BusinessError } 19100005 - Credential authentication server error. @@ -1341,7 +1351,7 @@ declare namespace dlpPermission { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. * @throws { BusinessError } 19100001 - Invalid parameter value. - * @throws { BusinessError } 19100002 - Credential task error. + * @throws { BusinessError } 19100002 - Credential service busy due to too many tasks or duplicate tasks. * @throws { BusinessError } 19100003 - Credential task time out. * @throws { BusinessError } 19100004 - Credential service error. * @throws { BusinessError } 19100005 - Credential authentication server error. @@ -1370,14 +1380,14 @@ declare namespace dlpPermission { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. * @throws { BusinessError } 19100001 - Invalid parameter value. - * @throws { BusinessError } 19100002 - Credential task error. + * @throws { BusinessError } 19100002 - Credential service busy due to too many tasks or duplicate tasks. * @throws { BusinessError } 19100003 - Credential task time out. * @throws { BusinessError } 19100004 - Credential service error. * @throws { BusinessError } 19100005 - Credential authentication server error. * @throws { BusinessError } 19100008 - The file is not a DLP file. * @throws { BusinessError } 19100009 - Failed to operate the DLP file. * @throws { BusinessError } 19100011 - The system ability works abnormally. - * @throws { BusinessError } 19100018 - Not authorized application. + * @throws { BusinessError } 19100018 - The application is not authorized. * @throws { BusinessError } 19100019 - The DLP file has expired. * @throws { BusinessError } 19100020 - No network connection. * @syscap SystemCapability.Security.DataLossPrevention @@ -1398,14 +1408,14 @@ declare namespace dlpPermission { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. * @throws { BusinessError } 19100001 - Invalid parameter value. - * @throws { BusinessError } 19100002 - Credential task error. + * @throws { BusinessError } 19100002 - Credential service busy due to too many tasks or duplicate tasks. * @throws { BusinessError } 19100003 - Credential task time out. * @throws { BusinessError } 19100004 - Credential service error. * @throws { BusinessError } 19100005 - Credential authentication server error. * @throws { BusinessError } 19100008 - The file is not a DLP file. * @throws { BusinessError } 19100009 - Failed to operate the DLP file. * @throws { BusinessError } 19100011 - The system ability works abnormally. - * @throws { BusinessError } 19100018 - Not authorized application. + * @throws { BusinessError } 19100018 - The application is not authorized. * @throws { BusinessError } 19100019 - The DLP file has expired. * @throws { BusinessError } 19100020 - No network connection. * @syscap SystemCapability.Security.DataLossPrevention @@ -1425,7 +1435,7 @@ declare namespace dlpPermission { * @throws { BusinessError } 19100007 - No permission to call this API, * which is available only for non-DLP sandbox applications. * @throws { BusinessError } 19100011 - The system ability works abnormally. - * @throws { BusinessError } 19100018 - Not authorized application. + * @throws { BusinessError } 19100018 - The application is not authorized. * @syscap SystemCapability.Security.DataLossPrevention * @since 11 */ @@ -1439,7 +1449,7 @@ declare namespace dlpPermission { * @throws { BusinessError } 19100007 - No permission to call this API, * which is available only for non-DLP sandbox applications. * @throws { BusinessError } 19100011 - The system ability works abnormally. - * @throws { BusinessError } 19100018 - Not authorized application. + * @throws { BusinessError } 19100018 - The application is not authorized. * @syscap SystemCapability.Security.DataLossPrevention * @since 11 */ @@ -1451,7 +1461,7 @@ declare namespace dlpPermission { * @returns { Promise<string> } Promise used to return the result. * @throws { BusinessError } 19100001 - Invalid parameter value. * @throws { BusinessError } 19100011 - The system ability works abnormally. - * @throws { BusinessError } 19100018 - Not authorized application. + * @throws { BusinessError } 19100018 - The application is not authorized. * @syscap SystemCapability.Security.DataLossPrevention * @since 11 */ @@ -1467,5 +1477,119 @@ declare namespace dlpPermission { */ function isDLPFeatureProvided(): Promise<boolean>; + /** + * Enumerates the action types when exceed expiry time. + * @enum { number } Valuable + * @syscap SystemCapability.Security.DataLossPrevention + * @since 20 + */ + export enum ActionType { + /** + * NOT_OPEN, which not allows DLP files to be opened exceed expire time. + * @syscap SystemCapability.Security.DataLossPrevention + * @since 20 + */ + NOT_OPEN = 0, + + /** + * OPEN, which allows DLP files to be opened exceed expire time. + * @syscap SystemCapability.Security.DataLossPrevention + * @since 20 + */ + OPEN = 1 + } + + /** + * Represent the DLP file Custom property. + * + * @interface CustomProperty + * @syscap SystemCapability.Security.DataLossPrevention + * @systemapi Hide this for inner system use. + * @since 20 + */ + export interface CustomProperty { + /** + * User defined information for enterprise space + * + * @type { string } + * @syscap SystemCapability.Security.DataLossPrevention + * @systemapi Hide this for inner system use. + * @since 20 + */ + enterprise: string; + } + + /** + * Generates a DLP file. This method uses a promise to return the result. + * + * @permission ohos.permission.ENTERPRISE_ACCESS_DLP_FILE + * @param { number } plaintextFd - FD of the file in plaintext. + * @param { number } dlpFd - FD of the DLP file to generate. + * @param { DLPProperty } property - General DLP policy to use. + * @param { CustomProperty } customProperty - Custom DLP policy to use. + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Non-system applications use system APIs. + * @throws { BusinessError } 19100001 - Invalid parameter value. + * @throws { BusinessError } 19100002 - Credential service busy due to too many tasks or duplicate tasks. + * @throws { BusinessError } 19100003 - Credential task time out. + * @throws { BusinessError } 19100004 - Credential service error. + * @throws { BusinessError } 19100005 - Credential authentication server error. + * @throws { BusinessError } 19100009 - Failed to operate the DLP file. + * @throws { BusinessError } 19100011 - The system ability works abnormally. + * @throws { BusinessError } 19100014 - Account not logged in. + * @syscap SystemCapability.Security.DataLossPrevention + * @systemapi Hide this for inner system use. + * @since 20 + */ + function generateDlpFileForEnterprise(plaintextFd: number, dlpFd: number, property: DLPProperty, customProperty: CustomProperty): Promise<void>; + + /** + * Queries the DLP policy. This method uses a promise to return the result. + * + * @permission ohos.permission.ENTERPRISE_ACCESS_DLP_FILE + * @param { number } dlpFd - Indicates the file descriptor of the DLP file. + * @returns { Promise<string> }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Non-system applications use system APIs. + * @throws { BusinessError } 19100001 - Invalid parameter value. + * @throws { BusinessError } 19100002 - Credential service busy due to too many tasks or duplicate tasks. + * @throws { BusinessError } 19100003 - Credential task time out. + * @throws { BusinessError } 19100004 - Credential service error. + * @throws { BusinessError } 19100005 - Credential authentication server error. + * @throws { BusinessError } 19100008 - The file is not a DLP file. + * @throws { BusinessError } 19100009 - Failed to operate the DLP file. + * @throws { BusinessError } 19100011 - The system ability works abnormally. + * @throws { BusinessError } 19100013 - The user does not have the permission. + * @syscap SystemCapability.Security.DataLossPrevention + * @systemapi Hide this for inner system use. + * @since 20 + */ + function queryDlpPolicy(dlpFd: number): Promise<string>; + + /** + * Decrypts a DLP file. This method uses a promise to return the result. + * + * @permission ohos.permission.ENTERPRISE_ACCESS_DLP_FILE + * @param { number } dlpFd - Indicates the file descriptor of the DLP file. + * @param { number } plaintextFd - Indicates the file descriptor of the file in plaintext. + * @returns { Promise<void> }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Non-system applications use system APIs. + * @throws { BusinessError } 19100001 - Invalid parameter value. + * @throws { BusinessError } 19100002 - Credential service busy due to too many tasks or duplicate tasks. + * @throws { BusinessError } 19100003 - Credential task time out. + * @throws { BusinessError } 19100004 - Credential service error. + * @throws { BusinessError } 19100005 - Credential authentication server error. + * @throws { BusinessError } 19100008 - The file is not a DLP file. + * @throws { BusinessError } 19100009 - Failed to operate the DLP file. + * @throws { BusinessError } 19100011 - The system ability works abnormally. + * @throws { BusinessError } 19100013 - The user does not have the permission. + * @syscap SystemCapability.Security.DataLossPrevention + * @systemapi Hide this for inner system use. + * @since 20 + */ + function decryptDlpFile(dlpFd: number, plaintextFd: number): Promise<void>; + } export default dlpPermission; \ No newline at end of file diff --git a/api/@ohos.driver.deviceManager.d.ts b/api/@ohos.driver.deviceManager.d.ts index a112554dff370c7615c25584ce490667de8dd2ec..86be9a130bb65a9a972b6dde00767d8960fa2bd0 100644 --- a/api/@ohos.driver.deviceManager.d.ts +++ b/api/@ohos.driver.deviceManager.d.ts @@ -57,7 +57,7 @@ declare namespace deviceManager { * @throws { BusinessError } 22900001 - ExternalDeviceManager service exception. * @syscap SystemCapability.Driver.ExternalDevice * @since 10 - * @deprecated since 18 + * @deprecated since 19 * @useinstead ohos.driver.deviceManager/deviceManager#bindDriverWithDeviceId */ function bindDevice(deviceId: number, onDisconnect: AsyncCallback<number>, @@ -78,7 +78,7 @@ declare namespace deviceManager { * @throws { BusinessError } 22900001 - ExternalDeviceManager service exception. * @syscap SystemCapability.Driver.ExternalDevice * @since 11 - * @deprecated since 18 + * @deprecated since 19 * @useinstead ohos.driver.deviceManager/deviceManager#bindDriverWithDeviceId */ function bindDeviceDriver(deviceId: number, onDisconnect: AsyncCallback<number>, @@ -99,7 +99,7 @@ declare namespace deviceManager { * @throws { BusinessError } 22900001 - ExternalDeviceManager service exception. * @syscap SystemCapability.Driver.ExternalDevice * @since 10 - * @deprecated since 18 + * @deprecated since 19 * @useinstead ohos.driver.deviceManager/deviceManager#bindDriverWithDeviceId */ function bindDevice(deviceId: number, onDisconnect: AsyncCallback<number>): Promise<{deviceId: number; @@ -119,7 +119,7 @@ declare namespace deviceManager { * @throws { BusinessError } 22900001 - ExternalDeviceManager service exception. * @syscap SystemCapability.Driver.ExternalDevice * @since 11 - * @deprecated since 18 + * @deprecated since 19 * @useinstead ohos.driver.deviceManager/deviceManager#bindDriverWithDeviceId */ function bindDeviceDriver(deviceId: number, onDisconnect: AsyncCallback<number>): Promise<RemoteDeviceDriver>; @@ -135,7 +135,7 @@ declare namespace deviceManager { * @throws { BusinessError } 22900001 - ExternalDeviceManager service exception. * @syscap SystemCapability.Driver.ExternalDevice * @since 10 - * @deprecated since 18 + * @deprecated since 19 * @useinstead ohos.driver.deviceManager/deviceManager#unbindDriverWithDeviceId */ function unbindDevice(deviceId: number, callback: AsyncCallback<number>): void; @@ -152,7 +152,7 @@ declare namespace deviceManager { * @throws { BusinessError } 22900001 - ExternalDeviceManager service exception. * @syscap SystemCapability.Driver.ExternalDevice * @since 10 - * @deprecated since 18 + * @deprecated since 19 * @useinstead ohos.driver.deviceManager/deviceManager#unbindDriverWithDeviceId */ function unbindDevice(deviceId: number): Promise<number>; @@ -198,12 +198,10 @@ declare namespace deviceManager { * success. * @returns { Promise<RemoteDeviceDriver> } Indicates the bind result including device ID and remote object. * @throws { BusinessError } 201 - The permission check failed. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. - * 3.Parameter verification failed. * @throws { BusinessError } 26300001 - ExternalDeviceManager service exception. - * @throws { BusinessError } 26300002 - Service not allowed. + * @throws { BusinessError } 26300002 - The driver service does not allow any client to bind. * @syscap SystemCapability.Driver.ExternalDevice - * @since 18 + * @since 19 */ function bindDriverWithDeviceId(deviceId: number, onDisconnect: AsyncCallback<number>): Promise<RemoteDeviceDriver>; @@ -214,12 +212,10 @@ declare namespace deviceManager { * @param { number } deviceId - Device id on the device list returned by queryDevices(). * @returns { Promise<number> } - Indicates the unbind result invoked when unbind is finished. * @throws { BusinessError } 201 - The permission check failed. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. - * 3.Parameter verification failed. * @throws { BusinessError } 26300001 - ExternalDeviceManager service exception. * @throws { BusinessError } 26300003 - There is no binding relationship. * @syscap SystemCapability.Driver.ExternalDevice - * @since 18 + * @since 19 */ function unbindDriverWithDeviceId(deviceId: number): Promise<number>; diff --git a/api/@ohos.effectKit.d.ts b/api/@ohos.effectKit.d.ts index d69fb32a1c7adbb54b2a801069e4ba601468afec..6d5954d3c841b396bdbfc9a4c4cb41fe5bf269df 100644 --- a/api/@ohos.effectKit.d.ts +++ b/api/@ohos.effectKit.d.ts @@ -18,8 +18,13 @@ * @kit ArkGraphics2D */ +/*** if arkts 1.1 */ import { AsyncCallback } from './@ohos.base'; import image from './@ohos.multimedia.image'; +/*** endif */ +/*** if arkts 1.2 */ +import image from './@ohos.multimedia.image'; +/*** endif */ /** * @namespace effectKit @@ -36,7 +41,8 @@ import image from './@ohos.multimedia.image'; * @crossplatform * @form * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace effectKit { @@ -56,13 +62,14 @@ declare namespace effectKit { * @since 12 */ /** - * The Filter of FilterChain. + * A class used to add a specified effect to an image. Before calling any method of Filter, use createEffect to create a Filter instance. * @typedef Filter * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Filter { @@ -83,22 +90,26 @@ declare namespace effectKit { * @since 12 */ /** - * A blur effect is added to the image. - * @param { number } radius - The degree of blur, the value is measured in pixels. - * @returns { Filter } Filters for the current effect have been added. + * Adds the blur effect to the filter linked list, and returns the head node of the linked list. + * @param { number } radius - Blur radius, in pixels. The blur effect is proportional to the configured value. + * A larger value indicates a more obvious effect. + * @returns { Filter } Final image effect. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ blur(radius: number): Filter; /** - * A blur effect is added to the image. - * @param { number } radius - The degree of blur, the value is measured in pixels. - * @param { TileMode } tileMode - The tile mode of blur. - * @returns { Filter } Filters for the current effect have been added. + * Adds the blur effect to the filter linked list, and returns the head node of the linked list. + * @param { number } radius - Blur radius, in pixels. The blur effect is proportional to the configured value. + * A larger value indicates a more obvious effect. + * @param { TileMode } tileMode - Tile mode of the shader effect. The blur effect of image edges is affected. Currently, + * only CPU rendering is supported. Therefore, the tile mode supports only DECAL. + * @returns { Filter } Final image effect. * @syscap SystemCapability.Multimedia.Image.Core * @since 14 */ @@ -121,9 +132,9 @@ declare namespace effectKit { * @since 12 */ /** - * A Brightness effect is added to the image. - * @param { number } bright - The degree of light and darkness,the value range is 0 to 1. - * @returns { Filter } Filters for the current effect have been added. + * Adds the brightness effect to the filter linked list, and returns the head node of the linked list. + * @param { number } bright - Brightness value, ranging from 0 to 1. When the value is 0, the image brightness remains unchanged. + * @returns { Filter } Final image effect. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form @@ -147,8 +158,8 @@ declare namespace effectKit { * @since 12 */ /** - * A Grayscale effect is added to the image. - * @returns { Filter } Filters for the current effect have been added. + * Adds the grayscale effect to the filter linked list, and returns the head node of the linked list. + * @returns { Filter } Final image effect. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form @@ -164,8 +175,8 @@ declare namespace effectKit { * @since 12 */ /** - * A invert effect is added to the image. - * @returns { Filter } Filters for the current effect have been added. + * Adds the inversion effect to the filter linked list, and returns the head node of the linked list. + * @returns { Filter } Final image effect. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @since 14 @@ -182,10 +193,13 @@ declare namespace effectKit { * @since 12 */ /** - * A custom effect is added to the image. + * Adds a custom effect to the filter linked list, and returns the head node of the linked list. * - * @param { Array<number> } colorMatrix - A matrix of 5x4 size for create effect filter. - * @returns { Filter } Filters for the current effect have been added. + * @param { Array<number> } colorMatrix - Custom color matrix. + * A 5 x 4 matrix can be created. The value range of the matrix element is [0, 1], + * where 0 indicates that the color channel is not involved in the calculation, + * and 1 indicates that the color channel is involved in the calculation and retains the original weight. + * @returns { Filter } Final image effect. * @throws { BusinessError } 401 - Input parameter error. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -194,7 +208,7 @@ declare namespace effectKit { setColorMatrix(colorMatrix: Array<number>): Filter; /** - * Gets the PixelMap where all filter effects have been added to the image. + * Obtains image.PixelMap of the source image to which the filter linked list is added. * @returns { image.PixelMap } image.PixelMap. * @syscap SystemCapability.Multimedia.Image.Core * @since 9 @@ -218,13 +232,14 @@ declare namespace effectKit { * @since 12 */ /** - * Gets the PixelMap where all filter effects have been added to the image. - * @returns { Promise<image.PixelMap> } - returns the PixelMap generated. + * Obtains image.PixelMap of the source image to which the filter linked list is added. This API uses a promise to return the result. + * @returns { Promise<image.PixelMap> } - Promise used to return image.PixelMap of the source image. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ getEffectPixelMap(): Promise<image.PixelMap>; } @@ -244,7 +259,7 @@ declare namespace effectKit { * @since 12 */ /** - * The color picker of an image. + * A class used to obtain the color from an image. Before calling any method of ColorPicker, use createColorPicker to create a ColorPicker instance. * @typedef ColorPicker * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -269,8 +284,8 @@ declare namespace effectKit { * @since 12 */ /** - * get main color of an image - * @returns { Promise<Color> } returns the MainColor generated. + * Obtains the main color from the image and writes the result to a Color instance. This API uses a promise to return the result. + * @returns { Promise<Color> } Promise used to return the color value of the main color. If the operation fails, an error message is returned. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form @@ -294,8 +309,8 @@ declare namespace effectKit { * @since 12 */ /** - * get main color of an image - * @returns { Color } Main color picked in the image. + * Obtains the main color from the image and writes the result to a Color instance. This API returns the result synchronously. + * @returns { Color } Color value of the main color. If the operation fails, null is returned. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form @@ -319,8 +334,8 @@ declare namespace effectKit { * @since 12 */ /** - * Get largest proportion color of an image - * @returns { Color } Largest proportion color picked in the image. + * Obtains the color with the largest proportion from the image and writes the result to a Color instance. This API returns the result synchronously. + * @returns { Color } Color value of the color with the largest proportion. If the operation fails, null is returned. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form @@ -340,10 +355,12 @@ declare namespace effectKit { * @since 12 */ /** - * Get top proportion color of an image - * @param { number } colorCount - The number of colors to require, the value is 1 to 10. - * @returns { Array<Color | null> } An array of feature colors sorted by proportion, with a size equal to - * the minimum of colorCount and the actual number of extracted feature colors. + * Obtains a given number of colors with the top proportions in the image. This API returns the result synchronously. + * @param { number } colorCount - Number of colors to obtain. The value range is [1, 10]. If a non-integer is passed in, the value will be rounded down. + * @returns { Array<Color | null> } Array of colors, sorted by proportion. + * - If the number of colors obtained is less than the value of colorCount, the array size is the actual number obtained. + * - If the colors fail to be obtained or the number of colors obtained is less than 1, [null] is returned. + * - If the value of colorCount is greater than 10, an array holding the first 10 colors with the top proportions is returned. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form @@ -367,8 +384,8 @@ declare namespace effectKit { * @since 12 */ /** - * Get highest saturation color of an image - * @returns { Color } Highest saturation color picked in the image. + * Obtains the color with the highest saturation from the image and writes the result to a Color instance. This API returns the result synchronously. + * @returns { Color } Color value of the color with the highest saturation. If the operation fails, null is returned. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form @@ -392,8 +409,8 @@ declare namespace effectKit { * @since 12 */ /** - * Get average color of an image - * @returns { Color } Average color calculated in the image. + * Obtains the average color from the image and writes the result to a Color instance. This API returns the result synchronously. + * @returns { Color } Average color value. If the operation fails, null is returned. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form @@ -419,9 +436,9 @@ declare namespace effectKit { * @since 12 */ /** - * Determine whether the color is black or white or gray - * @param { number } color - The 32 bit ARGB color to discriminate. - * @returns { boolean } Result of judging black, white and gray. + * Checks whether a color is black, white, and gray. + * @param { number } color - Color to check. The value range is [0x0, 0xFFFFFFFF]. + * @returns { boolean } Returns true if the image is black, white, and gray; returns false otherwise. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form @@ -446,7 +463,7 @@ declare namespace effectKit { * @since 12 */ /** - * The color param. + * A class that stores the color picked. * @typedef Color * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -471,7 +488,7 @@ declare namespace effectKit { * @since 12 */ /** - * Red + * Value of the red component. The value range is [0x0, 0xFF]. * @type { number } * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -496,7 +513,7 @@ declare namespace effectKit { * @since 12 */ /** - * Green + * Value of the green component. The value range is [0x0, 0xFF]. * @type { number } * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -521,7 +538,7 @@ declare namespace effectKit { * @since 12 */ /** - * Blue + * Value of the blue component. The value range is [0x0, 0xFF]. * @type { number } * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -546,7 +563,7 @@ declare namespace effectKit { * @since 12 */ /** - * Alpha + * Value of the alpha component. The value range is [0x0, 0xFF]. * @type { number } * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -574,14 +591,16 @@ declare namespace effectKit { * @since 12 */ /** - * Create a FilterChain to add multiple effects to an image. - * @param { image.PixelMap } source - the source pixelmap. - * @returns { Filter } Returns the head node of FilterChain. + * Creates a Filter instance based on a pixel map. + * @param { image.PixelMap } source - PixelMap instance created by the image module. An instance can be obtained + * by decoding an image or directly created. For details, see Image Overview. + * @returns { Filter } Head node of the filter linked list without any effect. If the operation fails, null is returned. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform * @form * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ function createEffect(source: image.PixelMap): Filter; @@ -604,9 +623,10 @@ declare namespace effectKit { * @since 12 */ /** - * Create a color picker to get color of an image. - * @param { image.PixelMap } source - the source pixelmap. - * @returns { Promise<ColorPicker> } - returns the ColorPicker generated. + * Creates a ColorPicker instance based on a pixel map. This API uses a promise to return the result. + * @param { image.PixelMap } source - PixelMap instance created by the image module. An instance can be + * obtained by decoding an image or directly created. For details, see Image Overview. + * @returns { Promise<ColorPicker> } - Promise used to return the ColorPicker instance created. * @throws { BusinessError } 401 - Input parameter error. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -639,11 +659,15 @@ declare namespace effectKit { * @since 12 */ /** - * Create a color picker to get color of an image. - * @param { image.PixelMap } source - the source pixelmap. - * @param { Array<number> } region - contains 4 elements, represents the region's left, top, right, bottom coordinates, - * default is [0, 0, 1, 1], represents the region of color picker is the whole pixelMap. - * @returns { Promise<ColorPicker> } - returns the ColorPicker generated. + * Creates a ColorPicker instance for the selected region based on a pixel map. This API uses a promise to return the result. + * @param { image.PixelMap } source - PixelMap instance created by the image module. An instance can be obtained by decoding + * an image or directly created. For details, see Image Overview. + * @param { Array<number> } region - Region of the image from which the color is picked. + * The array consists of four elements, representing the left, top, right, and bottom positions of the image, respectively. + * The value of each element must be in the range [0, 1]. The leftmost and topmost positions of the image correspond to 0, + * and the rightmost and bottom positions correspond to 1. In the array, the third element must be greater than the first element, + * and the fourth element must be greater than the second element. + * @returns { Promise<ColorPicker> } - Promise used to return the ColorPicker instance created. * @throws { BusinessError } 401 - Input parameter error. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -672,8 +696,9 @@ declare namespace effectKit { * @since 12 */ /** - * Create a color picker to get color of an image. - * @param { image.PixelMap } source - the source pixelmap. + * Creates a ColorPicker instance based on a pixel map. This API uses an asynchronous callback to return the result. + * @param { image.PixelMap } source - PixelMap instance created by the image module. An instance can be obtained by + * decoding an image or directly created. For details, see Image Overview. * @param { AsyncCallback<ColorPicker> } callback - the callback of createColorPicker. * @throws { BusinessError } 401 - Input parameter error. * @syscap SystemCapability.Multimedia.Image.Core @@ -707,11 +732,16 @@ declare namespace effectKit { * @since 12 */ /** - * Create a color picker to get color of an image. - * @param { image.PixelMap } source - the source pixelmap. - * @param { Array<number> } region - contains 4 elements, represents the region's left, top, right, bottom coordinates, - * default is [0, 0, 1, 1], represents the region of color picker is the whole pixelMap. - * @param { AsyncCallback<ColorPicker> } callback - the callback of createColorPicker. + * Creates a ColorPicker instance for the selected region based on a pixel map. This API uses an asynchronous callback to return the result. + * @param { image.PixelMap } source - PixelMap instance created by the image module. An instance can be obtained by decoding an + * image or directly created. For details, see Image Overview.PixelMap instance created by the image module. An instance can be + * obtained by decoding an image or directly created. For details, see Image Overview. + * @param { Array<number> } region - Region of the image from which the color is picked. + * The array consists of four elements, representing the left, top, right, and bottom positions of the image, respectively. + * The value of each element must be in the range [0, 1]. The leftmost and topmost positions of the image correspond to 0, + * and the rightmost and bottom positions correspond to 1. In the array, the third element must be greater than the first element, + * and the fourth element must be greater than the second element. + * @param { AsyncCallback<ColorPicker> } callback - Callback used to return the ColorPicker instance created. * @throws { BusinessError } 401 - Input parameter error. * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -722,7 +752,7 @@ declare namespace effectKit { function createColorPicker(source: image.PixelMap, region: Array<number>, callback: AsyncCallback<ColorPicker>): void; /** - * TileMode enumeration description + * Enumerates the tile modes of the shader effect. * * @enum { number } * @syscap SystemCapability.Multimedia.Image.Core @@ -730,7 +760,7 @@ declare namespace effectKit { */ enum TileMode { /** - * Clamp mode. + * Replicates the edge color if the shader effect draws outside of its original boundary. * * @syscap SystemCapability.Multimedia.Image.Core * @since 14 @@ -738,7 +768,7 @@ declare namespace effectKit { CLAMP = 0, /** - * Repeat mode. + * Repeats the shader effect in both horizontal and vertical directions. * * @syscap SystemCapability.Multimedia.Image.Core * @since 14 @@ -746,7 +776,7 @@ declare namespace effectKit { REPEAT = 1, /** - * Mirror mode. + * Repeats the shader effect in both horizontal and vertical directions, alternating mirror images. * * @syscap SystemCapability.Multimedia.Image.Core * @since 14 @@ -754,7 +784,7 @@ declare namespace effectKit { MIRROR = 2, /** - * Decal mode. + * Renders the shader effect only within the original boundary. * * @syscap SystemCapability.Multimedia.Image.Core * @since 14 diff --git a/api/@ohos.enterprise.EnterpriseAdminExtensionAbility.d.ts b/api/@ohos.enterprise.EnterpriseAdminExtensionAbility.d.ts index b0d867a73bd4f24a27ee14d0a04e9c1a95cd4436..9ffe0cd08761c604aabbd70af0fe5ef4ede752be 100644 --- a/api/@ohos.enterprise.EnterpriseAdminExtensionAbility.d.ts +++ b/api/@ohos.enterprise.EnterpriseAdminExtensionAbility.d.ts @@ -156,4 +156,26 @@ export default class EnterpriseAdminExtensionAbility { * @since 18 */ onAccountRemoved(accountId: number): void; + + /** + * Called back when a bundle entering kiosk mode under an account. + * + * @param { string } bundleName - bundleName indicates the name of the bundle. + * @param { number } accountId - accountId indicates the account ID. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + onKioskModeEntering(bundleName: string, accountId: number): void; + + /** + * Called back when a bundle exiting kiosk mode under an account. + * + * @param { string } bundleName - bundleName indicates the name of the bundle. + * @param { number } accountId - accountId indicates the account ID. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + onKioskModeExiting(bundleName: string, accountId: number): void; } diff --git a/api/@ohos.enterprise.accountManager.d.ts b/api/@ohos.enterprise.accountManager.d.ts index bea9d35c1a16edbe9390a29203bedf0bcc5aff59..42e6e5e99a90a2bcae58eacc3e476e819168d1ff 100644 --- a/api/@ohos.enterprise.accountManager.d.ts +++ b/api/@ohos.enterprise.accountManager.d.ts @@ -35,7 +35,8 @@ declare namespace accountManager { * * @interface DomainAccountPolicy * @syscap SystemCapability.Customization.EnterpriseDeviceManager - * @since 18 + * @stagemodelonly + * @since 19 */ interface DomainAccountPolicy { /** @@ -43,7 +44,8 @@ declare namespace accountManager { * * @type { ?number } * @syscap SystemCapability.Customization.EnterpriseDeviceManager - * @since 18 + * @stagemodelonly + * @since 19 */ authenticationValidityPeriod?: number; @@ -52,7 +54,8 @@ declare namespace accountManager { * * @type { ?number } * @syscap SystemCapability.Customization.EnterpriseDeviceManager - * @since 18 + * @stagemodelonly + * @since 19 */ passwordValidityPeriod?: number; @@ -61,7 +64,8 @@ declare namespace accountManager { * * @type { ?number } * @syscap SystemCapability.Customization.EnterpriseDeviceManager - * @since 18 + * @stagemodelonly + * @since 19 */ passwordExpirationNotification?: number; } @@ -252,11 +256,9 @@ declare namespace accountManager { * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @stagemodelonly - * @since 18 + * @since 19 */ function setDomainAccountPolicy(admin: Want, domainAccountInfo: osAccount.DomainAccountInfo, policy: DomainAccountPolicy): void; @@ -268,15 +270,13 @@ declare namespace accountManager { * @param { Want } admin - admin indicates the enterprise admin extension ability information. * The admin must have the corresponding permission. * @param { osAccount.DomainAccountInfo } domainAccountInfo - the infomation of domain account. - * @returns { DomainAccountPolicy } policy - policy indicates the domain account policy. + * @returns { DomainAccountPolicy } the domain account policy. * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @stagemodelonly - * @since 18 + * @since 19 */ function getDomainAccountPolicy(admin: Want, domainAccountInfo: osAccount.DomainAccountInfo): DomainAccountPolicy; } diff --git a/api/@ohos.enterprise.adminManager.d.ts b/api/@ohos.enterprise.adminManager.d.ts index 6cae1cec8fc9302e2a6394d3a3bb368494925cd5..3919e784a82d65389bd870a0275431bbdac2b563 100644 --- a/api/@ohos.enterprise.adminManager.d.ts +++ b/api/@ohos.enterprise.adminManager.d.ts @@ -173,7 +173,8 @@ declare namespace adminManager { * * @enum { number } * @syscap SystemCapability.Customization.EnterpriseDeviceManager - * @since 18 + * @systemapi + * @since 19 */ export enum RunningMode { /** @@ -181,7 +182,7 @@ declare namespace adminManager { * * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @systemapi - * @since 18 + * @since 19 */ DEFAULT = 0, @@ -190,7 +191,7 @@ declare namespace adminManager { * * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @systemapi - * @since 18 + * @since 19 */ MULTI_USER = 1, } @@ -496,11 +497,10 @@ declare namespace adminManager { * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @systemapi * @stagemodelonly - * @since 18 + * @since 19 */ function setAdminRunningMode(admin: Want, mode: RunningMode): void; @@ -793,13 +793,11 @@ declare namespace adminManager { * @param { Want } oldAdmin - oldAdmin indicates the old administrator ability information. * @param { Want } newAdmin - newAdmin indicates the new administrator ability information. * @param { boolean } isKeepPolicy - true indicates whether keep admin policy. - * @throws { BusinessError } 9200001 - The application is not an administrator application of the device.= + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. * @throws { BusinessError } 9200003 - The administrator ability component is invalid. * @throws { BusinessError } 9200011 - Failed to replace the administrator application of the device. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @systemapi * @stagemodelonly diff --git a/api/@ohos.enterprise.applicationManager.d.ts b/api/@ohos.enterprise.applicationManager.d.ts index 614e68b2056fdce2fd5bcc171b519dc342a48571..87494b74a02acf91b6cc5690059c107774f9c796 100644 --- a/api/@ohos.enterprise.applicationManager.d.ts +++ b/api/@ohos.enterprise.applicationManager.d.ts @@ -425,6 +425,73 @@ declare namespace applicationManager { * @since 14 */ function getKeepAliveApps(admin: Want, accountId: number): Array<string>; + + /** + * Clear up application data. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_APPLICATION + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { string } bundleName - bundleName indicates the bundle name of application. + * @param { number } appIndex - appIndex indicates the index of bundle. + * @param { number } accountId - accountId indicates the local ID of the OS account. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed.The application does not have the permission + * required to call the API + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function clearUpApplicationData(admin: Want, bundleName: string, appIndex: number, accountId: number): void; + + /** + * Set applications allowed running in kiosk mode. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_SET_KIOSK + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { Array<string> } bundleNames - bundleNames indicates the bundle names of applications. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed.The application does not have the permission + * required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function setAllowedKioskApps(admin: Want, bundleNames: Array<string>): void; + + /** + * Get applications allowed running in kiosk mode. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_SET_KIOSK + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @returns { Array<string> } the bundle names of allowed running in kiosk mode. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed.The application does not have the permission + * required to call the API + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function getAllowedKioskApps(admin: Want): Array<string>; + + /** + * Check target application allowed running in kiosk mode. + * + * @param { string } bundleName - bundleName indicates the bundle names of application. + * @returns { boolean } true means the bundle name allowed running in kiosk mode, otherwise false. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function isAppKioskAllowed(bundleName: string): boolean; } export default applicationManager; \ No newline at end of file diff --git a/api/@ohos.enterprise.bluetoothManager.d.ts b/api/@ohos.enterprise.bluetoothManager.d.ts index 1c9743f96381df89674d2b6c6bf4150d18fd5c57..4659ee3f9b3731b8ab52e95a6db03078e76bbe4f 100644 --- a/api/@ohos.enterprise.bluetoothManager.d.ts +++ b/api/@ohos.enterprise.bluetoothManager.d.ts @@ -191,6 +191,94 @@ declare namespace bluetoothManager { * @since 12 */ function getAllowedBluetoothDevices(admin: Want): Array<string>; + + /** + * Turn on bluetooth. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_BLUETOOTH + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * If the admin is not empty, it must have the corresponding permission. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 203 - This function is prohibited by enterprise management policies. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function turnOnBluetooth(admin: Want): void; + + /** + * Turn off bluetooth. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_BLUETOOTH + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * If the admin is not empty, it must have the corresponding permission. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 203 - This function is prohibited by enterprise management policies. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function turnOffBluetooth(admin: Want): void; + + /** + * Adds devices to the list of bluetooth devices that are disallowed to be connected. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_BLUETOOTH + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { Array<string> } deviceIds - IDs of the bluetooth devices to be added to the list. + * The size of the array after setting cannot be greater than 1000. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 9200010 - A conflict policy has been configured. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function addDisallowedBluetoothDevices(admin: Want, deviceIds: Array<string>): void; + + /** + * Removes devices from the list of bluetooth devices that are disallowed to be connected. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_BLUETOOTH + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { Array<string> } deviceIds - IDs of the bluetooth devices to be removed from the list. + * The size of the array after setting cannot be greater than 1000. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function removeDisallowedBluetoothDevices(admin: Want, deviceIds: Array<string>): void; + + /** + * Gets the devices in the list of bluetooth devices that are disallowed to be connected. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_BLUETOOTH + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * If the admin is not empty, it must have the corresponding permission. + * @returns { Array<string> } IDs of the bluetooth devices in the list. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function getDisallowedBluetoothDevices(admin: Want): Array<string>; } export default bluetoothManager; diff --git a/api/@ohos.enterprise.bundleManager.d.ts b/api/@ohos.enterprise.bundleManager.d.ts index 1eba12dce17f71a7d5ff676910020704e0414fa8..072d3670e0e0b21bd0657a972c6d064a333ff9ad 100644 --- a/api/@ohos.enterprise.bundleManager.d.ts +++ b/api/@ohos.enterprise.bundleManager.d.ts @@ -64,11 +64,487 @@ declare namespace bundleManager { * @type { ?Record<string, string> } * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @stagemodelonly - * @since 18 + * @since 19 */ parameters?: Record<string, string>; } + /** + * Contains resource descriptor information. + * + * @typedef Resource + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + interface Resource { + /** + * Bundle name in hap + * + * @type { string } + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + bundleName: string; + + /** + * Module name in hap + * + * @type { string } + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + moduleName: string; + + /** + * Resource id in hap + * + * @type { number } + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + id: number; + } + + /** + * Obtains configuration information about a bundle + * + * @typedef BundleInfo + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + interface BundleInfo { + /** + * Indicates the name of this bundle + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly name: string; + + /** + * Indicates the bundle vendor + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly vendor: string; + + /** + * Indicates the version code of the bundle + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly versionCode: number; + + /** + * Indicates the version name of the bundle + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly versionName: string; + + /** + * Indicates the minimum version compatible with the bundle + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly minCompatibleVersionCode: number; + + /** + * Indicates the target version number of the bundle + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly targetVersion: number; + + /** + * Obtains configuration information about an application + * + * @type { ApplicationInfo } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly appInfo: ApplicationInfo; + + /** + * Indicates the SignatureInfo of the bundle + * + * @type { SignatureInfo } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly signatureInfo: SignatureInfo; + + /** + * Indicates the hap install time + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly installTime: number; + + /** + * Indicates the hap update time + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly updateTime: number; + + /** + * Indicates the appIndex of application, only work in appClone mode + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly appIndex: number; + + /** + * Indicates the hap first install time + * + * @type { ?number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly firstInstallTime?: number; + } + + /** + * Indicates SignatureInfo + * + * @typedef SignatureInfo + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + interface SignatureInfo { + /** + * Indicates the ID of the application to which this bundle belongs + * The application ID uniquely identifies an application. It is determined by the bundle name and signature + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly appId: string; + + /** + * Indicates the fingerprint of the certificate + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly fingerprint: string; + + /** + * Globally unique identifier of an application, which is allocated by the cloud. + * AppIdentifier does not change along the application lifecycle, including version updates, certificate changes, + * public and private key changes, and application transfer. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly appIdentifier: string; + + /** + * Indicates the certificate + * + * @type { ?string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly certificate?: string; + } + + /** + * Obtains configuration information about an application + * + * @typedef ApplicationInfo + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + interface ApplicationInfo { + /** + * Indicates the application name, which is the same as {@code bundleName} + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly name: string; + + /** + * Description of application + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly description: string; + + /** + * Indicates the description id of the application + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly descriptionId: number; + + /** + * Indicates whether or not this application may be instantiated + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly enabled: boolean; + + /** + * Indicates the label of the application + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly label: string; + + /** + * Indicates the label id of the application + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly labelId: number; + + /** + * Indicates the icon of the application + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly icon: string; + + /** + * Indicates the icon id of the application + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly iconId: number; + + /** + * Process of application, if user do not set it ,the value equal bundleName + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly process: string; + + /** + * Indicates the application source code path + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly codePath: string; + + /** + * Indicates whether or not this application may be removable + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly removable: boolean; + + /** + * Indicates the access token of the application + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly accessTokenId: number; + + /** + * Indicates the uid of the application + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly uid: number; + + /** + * Indicates icon resource of the application + * + * @type { Resource } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly iconResource: Resource; + + /** + * Indicates label resource of the application + * + * @type { Resource } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly labelResource: Resource; + + /** + * Indicates description resource of the application + * + * @type { Resource } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly descriptionResource: Resource; + + /** + * Indicates the appDistributionType of the application + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly appDistributionType: string; + + /** + * Indicates the appProvisionType of the application + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly appProvisionType: string; + + /** + * Indicates whether the application is a system application + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly systemApp: boolean; + + /** + * Indicates whether the application is in debug mode. + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly debug: boolean; + + /** + * Indicates whether the application data is unclearable, that is, whether the application data cannot be cleared. + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly dataUnclearable: boolean; + + /** + * Indicates native library path. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly nativeLibraryPath: string; + + /** + * Indicates the index of the bundle + * + * @type { number } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly appIndex: number; + + /** + * Indicates sources to install the app + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly installSource: string; + + /** + * Indicates the release type of the app + * + * @type { string } + * @readonly + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @since 20 + */ + readonly releaseType: string; + } + /** * Add appid list of bundles that can be installed in the device. * Only apps with the ohos.permission.ENTERPRISE_SET_BUNDLE_INSTALL_POLICY permission can call this method. @@ -1054,6 +1530,23 @@ declare namespace bundleManager { * @since 12 */ function install(admin: Want, hapFilePaths: Array<string>, installParam?: InstallParam): Promise<void>; + + /** + * Get the list of install bundles in the device. + * + * @permission ohos.permission.ENTERPRISE_GET_ALL_BUNDLE_INFO + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { number } accountId - accountId indicates the local ID of the OS account. + * @returns { Promise<Array<BundleInfo>> } The result of getting the bundle info. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function getInstalledBundleList(admin: Want, accountId: number): Promise<Array<BundleInfo>>; } export default bundleManager; diff --git a/api/@ohos.enterprise.networkManager.d.ts b/api/@ohos.enterprise.networkManager.d.ts index cb8ca943afca0678964c6505ae4df77d7388ef23..880a8085dbd85967b924c05b11e4b1f73ca7f074 100644 --- a/api/@ohos.enterprise.networkManager.d.ts +++ b/api/@ohos.enterprise.networkManager.d.ts @@ -1270,6 +1270,144 @@ declare namespace networkManager { * @since 12 */ function getDomainFilterRules(admin: Want): Array<DomainFilterRule>; + + /** + * Turn on mobile data. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_NETWORK + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { boolean } isForce - True means force open mobile data, user can not turn off it, false means user can turn off it. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function turnOnMobileData(admin: Want, isForce: boolean): void; + + /** + * Turn off mobile data. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_NETWORK + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function turnOffMobileData(admin: Want): void; + + /** + * Add apn to the device. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_APN + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { Record<string, string> } apnInfo - Apn param info that needs to be added. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function addApn(admin: Want, apnInfo: Record<string, string>): void; + + /** + * Delete apn by appId. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_APN + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { string } apnId - Apn id that needs to be deleted. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function deleteApn(admin: Want, apnId: string): void; + + /** + * Update apn. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_APN + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { Record<string, string> } apnInfo - Apn param info that needs to be updated. + * @param { string } apnId - Apn id that needs to be update. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function updateApn(admin: Want, apnInfo: Record<string, string>, apnId: string): void; + + /** + * Sets preferred apn. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_APN + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { string } apnId - Apn id that needs to be set prefer. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function setPreferredApn(admin: Want, apnId: string): void; + + /** + * Get the apn params for the specific apn info. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_APN + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { Record<string, string> } apnInfo - The query conditions for the apn. + * @returns { Array<string> } id(s) of the apns which meet the query conditions. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function queryApn(admin: Want, apnInfo: Record<string, string>): Array<string>; + + /** + * Get the apn params for the specific apn id. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_APN + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { string } apnId - The id of the apn. + * @returns { Record<string, string> } The apn params for the specific apn id. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function queryApn(admin: Want, apnId: string): Record<string, string>; } export default networkManager; diff --git a/api/@ohos.enterprise.restrictions.d.ts b/api/@ohos.enterprise.restrictions.d.ts index 6105056880a8709e842285212efe87475528452b..e14f48436ae75f50d5e8fcee79343026be18734d 100644 --- a/api/@ohos.enterprise.restrictions.d.ts +++ b/api/@ohos.enterprise.restrictions.d.ts @@ -317,6 +317,25 @@ declare namespace restrictions { * @stagemodelonly * @since 15 */ + /** + * Disallows the specific feature of the device. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_RESTRICTIONS or ohos.permission.PERSONAL_MANAGE_RESTRICTIONS + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { string } feature - feature indicates the specific feature to be disallowed or allowed, + * the supported device features are as follows: + * modifyDateTime, bluetooth, printer, hdc, microphone, fingerprint, usb, wifi, tethering, inactiveUserFreeze, camera, mtpClient, mtpServer, + * globalDrag, externalSdCard, backupAndRestore, notification, mms, sms, remoteDiagnosis, remoteDesk, nfc, privateSpace, vpn, airplaneMode, + * mobileData, maintenanceMode, sambaClient, sambaServer. + * @param { boolean } disallow - true if disallow the specific feature of device, otherwise false. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ function setDisallowedPolicy(admin: Want, feature: string, disallow: boolean): void; /** @@ -355,6 +374,25 @@ declare namespace restrictions { * @stagemodelonly * @since 15 */ + /** + * Queries whether the specific feature of the device is disallowed. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_RESTRICTIONS or ohos.permission.PERSONAL_MANAGE_RESTRICTIONS + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * If the admin is not empty, it must have the corresponding permission. + * @param { string } feature - feature indicates the specific feature to be queried, + * the supported device features are as follows: + * modifyDateTime, bluetooth, printer, hdc, microphone, fingerprint, usb, wifi, tethering, inactiveUserFreeze, camera, mtpClient, mtpServer, + * globalDrag, externalSdCard, backupAndRestore, notification, mms, sms, remoteDiagnosis, remoteDesk, nfc, privateSpace, vpn, airplaneMode, + * mobileData, maintenanceMode, sambaClient, sambaServer. + * @returns { boolean } true if the specific feature of device is disallowed, otherwise false. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ function getDisallowedPolicy(admin: Want, feature: string): boolean; /** @@ -452,6 +490,41 @@ declare namespace restrictions { * @since 14 */ function getDisallowedListForAccount(admin: Want, feature: string, accountId: number): Array<string>; + + /** + * Restricting users from changing specified settings item on the device. + * + * @permission ohos.permission.ENTERPRISE_SET_USER_RESTRICTION + * @param { Want } admin - admin indicates the administrator ability information. + * @param { string } settingsItem - settingsItem indicates the specific settings item to be disallowed. + * the supported settingsItems are as follows: + * setEthernetIp, setApn, powerKeyShutdown, setDeviceName, + * setBiometricsAndScreenLock. + * @param { boolean } restricted - true if restrict the specific settings item of device, otherwise false. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function setUserRestriction(admin: Want, settingsItem: string, restricted: boolean): void; + + /** + * Gets whether users are restricted from changing specified settings items on the device. + * + * @permission ohos.permission.ENTERPRISE_SET_USER_RESTRICTION + * @param { Want } admin - admin indicates the administrator ability information. + * @param { string } settingsItem - settingsItem indicates the specific settings item to be disallowed. + * @returns { boolean } true if restrict the specific settings item of device, otherwise false. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function getUserRestricted(admin: Want, settingsItem: string): boolean; } export default restrictions; diff --git a/api/@ohos.enterprise.securityManager.d.ts b/api/@ohos.enterprise.securityManager.d.ts index db5ccc68775bc94dc6b137352a9b4c28563dfb7b..a82ec35a5e28b6c2c5cd6c9666e83a69dd4c7c03 100644 --- a/api/@ohos.enterprise.securityManager.d.ts +++ b/api/@ohos.enterprise.securityManager.d.ts @@ -180,8 +180,6 @@ declare namespace securityManager { * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. * @throws { BusinessError } 9201001 - Failed to manage the certificate. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @stagemodelonly * @since 18 @@ -221,8 +219,6 @@ declare namespace securityManager { * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @stagemodelonly * @since 18 @@ -324,8 +320,6 @@ declare namespace securityManager { * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @stagemodelonly * @since 18 @@ -343,8 +337,6 @@ declare namespace securityManager { * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @stagemodelonly * @since 18 diff --git a/api/@ohos.enterprise.systemManager.d.ts b/api/@ohos.enterprise.systemManager.d.ts index eec24482c9cfedb359a464611af3af0d4f5741d0..35192279b47e24af40de28a7f71877217bd6f1fd 100644 --- a/api/@ohos.enterprise.systemManager.d.ts +++ b/api/@ohos.enterprise.systemManager.d.ts @@ -199,7 +199,7 @@ declare namespace systemManager { * @type { ?boolean } * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @stagemodelonly - * @since 18 + * @since 20 */ disableSystemOtaUpdate?: boolean; } @@ -249,7 +249,7 @@ declare namespace systemManager { * @type { ?string } * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @stagemodelonly - * @since 18 + * @since 19 */ authInfo?: string; } @@ -613,11 +613,9 @@ declare namespace systemManager { * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Customization.EnterpriseDeviceManager * @stagemodelonly - * @since 18 + * @since 19 */ function getUpdateAuthData(admin: Want): Promise<string>; } diff --git a/api/@ohos.enterprise.telephonyManager.d.ts b/api/@ohos.enterprise.telephonyManager.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..0002e6e7c1acb045faf5ac746803286c859c2676 --- /dev/null +++ b/api/@ohos.enterprise.telephonyManager.d.ts @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit MDMKit + */ + +import type Want from './@ohos.app.ability.Want'; +import adminManager from './@ohos.enterprise.adminManager'; + +/** + * This module provides the capability to manage the telephony of the enterprise devices. + * + * @namespace telephonyManager + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ +declare namespace telephonyManager { + /** + * Disable sim slot + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_TELEPHONY + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { number } slotId - Indicates the card slot index number, + * ranging from {@code 0} to the maximum card slot index number supported by the device. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function setSimDisabled(admin: Want, slotId: number): void; + + /** + * Enable sim slot + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_TELEPHONY + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { number } slotId - Indicates the card slot index number, + * ranging from {@code 0} to the maximum card slot index number supported by the device. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function setSimEnabled(admin: Want, slotId: number): void; + + /** + * Get the state of the sim slot + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_TELEPHONY + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * The admin must have the corresponding permission. + * @param { number } slotId - Indicates the card slot index number, + * ranging from {@code 0} to the maximum card slot index number supported by the device. + * @returns { boolean } the result of sim slot policy, ture means slotid is disableed. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function isSimDisabled(admin: Want, slotId: number): boolean; +} + +export default telephonyManager; diff --git a/api/@ohos.enterprise.wifiManager.d.ts b/api/@ohos.enterprise.wifiManager.d.ts index c970fc1fecdf8c6ae68e1d013b33f4db4e105cc3..d59ac4b381a537e144642c3ba74b7d14fa229f10 100644 --- a/api/@ohos.enterprise.wifiManager.d.ts +++ b/api/@ohos.enterprise.wifiManager.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023-2024 Huawei Device Co., Ltd. + * Copyright (c) 2023-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -862,6 +862,174 @@ declare namespace wifiManager { * @since 11 */ function isWifiDisabled(admin: Want): boolean; + + /** + * Wi-Fi access information. + * + * @typedef WifiAccessInfo + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 19 + */ + interface WifiAccessInfo { + + /** + * ssid info. + * + * @type { string } + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 19 + */ + ssid: string; + + /** + * bssid info. + * + * @type { ?string } + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 19 + */ + bssid?: string; + } + + /** + * Adds disallowed wifi list by {@link WifiAccessInfo} array. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_WIFI + * @param { Want } admin - admin indicates the administrator ability information. + * @param { Array<WifiAccessInfo> } list - an array of added Wi-Fi access information. + * The size of the array after setting cannot be greater 200. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 9200010 - A conflict policy has been configured. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 19 + */ + function addDisallowedWifiList(admin: Want, list: Array<WifiAccessInfo>): void; + + /** + * Removes disallowed wifi list by {@link WifiAccessInfo} array. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_WIFI + * @param { Want } admin - admin indicates the administrator ability information. + * @param { Array<WifiAccessInfo> } list - an array of removed Wi-Fi access information. + * The size of the array after setting cannot be greater 200. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 19 + */ + function removeDisallowedWifiList(admin: Want, list: Array<WifiAccessInfo>): void; + + /** + * Gets the disallowed wifi list. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_WIFI + * @param { Want } admin - admin indicates the administrator ability information. + * @returns { Array<WifiAccessInfo> } disallowed Wi-Fi access information. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 19 + */ + function getDisallowedWifiList(admin: Want): Array<WifiAccessInfo>; + + /** + * Adds allowed wifi list by {@link WifiAccessInfo} array. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_WIFI + * @param { Want } admin - admin indicates the administrator ability information. + * @param { Array<WifiAccessInfo> } list - an array of added Wi-Fi access information. + * The size of the array after setting cannot be greater 200. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 9200010 - A conflict policy has been configured. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 19 + */ + function addAllowedWifiList(admin: Want, list: Array<WifiAccessInfo>): void; + + /** + * Removes allowed wifi list by {@link WifiAccessInfo} array. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_WIFI + * @param { Want } admin - admin indicates the administrator ability information. + * @param { Array<WifiAccessInfo> } list - an array of removed Wi-Fi access information. + * The size of the array after setting cannot be greater 200. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 19 + */ + function removeAllowedWifiList(admin: Want, list: Array<WifiAccessInfo>): void; + + /** + * Gets the allowed wifi list. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_WIFI + * @param { Want } admin - admin indicates the administrator ability information. + * @returns { Array<WifiAccessInfo> } allowed Wi-Fi access information. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 19 + */ + function getAllowedWifiList(admin: Want): Array<WifiAccessInfo>; + + /** + * Turn on wifi. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_WIFI + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * If the admin is not empty, it must have the corresponding permission. + * @param { boolean } isForce - True means force open wifi, user can not turn off it, false means user can turn off it. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 203 - This function is prohibited by enterprise management policies. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function turnOnWifi(admin: Want, isForce: boolean): void; + + /** + * Turn off wifi. + * This function can be called by a super administrator. + * + * @permission ohos.permission.ENTERPRISE_MANAGE_WIFI + * @param { Want } admin - admin indicates the enterprise admin extension ability information. + * If the admin is not empty, it must have the corresponding permission. + * @throws { BusinessError } 9200001 - The application is not an administrator application of the device. + * @throws { BusinessError } 9200002 - The administrator application does not have permission to manage the device. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 203 - This function is prohibited by enterprise management policies. + * @syscap SystemCapability.Customization.EnterpriseDeviceManager + * @stagemodelonly + * @since 20 + */ + function turnOffWifi(admin: Want): void; } export default wifiManager; diff --git a/api/@ohos.events.emitter.d.ts b/api/@ohos.events.emitter.d.ts index 659557d41bab4019cfb641bebc82aa35764add47..95023e612cd99fc481ca7803171cc4bc9c1cccbb 100644 --- a/api/@ohos.events.emitter.d.ts +++ b/api/@ohos.events.emitter.d.ts @@ -42,52 +42,54 @@ import { Callback } from './@ohos.base'; * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace emitter { /** - * Subscribe to a certain event in persistent manner and receives the event callback. + * Subscribes to an event in persistent manner and executes a callback after the event is received. * - * @param { InnerEvent } event - indicate event to subscribe to. - * @param { Callback<EventData> } callback - indicate callback used to receive the event. + * @param { InnerEvent } event - Event to subscribe to in persistent manner. The EventPriority parameter is not required and does not take effect. + * @param { Callback<EventData> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Subscribe to a certain event in persistent manner and receives the event callback. + * Subscribes to an event in persistent manner and executes a callback after the event is received. * - * @param { InnerEvent } event - indicate event to subscribe to. - * @param { Callback<EventData> } callback - indicate callback used to receive the event. + * @param { InnerEvent } event - Event to subscribe to in persistent manner. The EventPriority parameter is not required and does not take effect. + * @param { Callback<EventData> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Subscribe to a certain event in persistent manner and receives the event callback. + * Subscribes to an event in persistent manner and executes a callback after the event is received. * - * @param { InnerEvent } event - indicate event to subscribe to. - * @param { Callback<EventData> } callback - indicate callback used to receive the event. + * @param { InnerEvent } event - Event to subscribe to in persistent manner. The EventPriority parameter is not required and does not take effect. + * @param { Callback<EventData> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function on(event: InnerEvent, callback: Callback<EventData>): void; /** - * Subscribe to a event by specific id in persistent manner and receives the event callback. + * Subscribes to an event in persistent manner and executes a callback after the event is received. * - * @param { string } eventId - indicate ID of the event to subscribe to. - * @param { Callback<EventData> } callback - indicate callback used to receive the event. + * @param { string } eventId - Event to subscribe to in persistent manner. The value cannot be an empty string and exceed 10240 bytes. + * @param { Callback<EventData> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Subscribe to a event by specific id in persistent manner and receives the event callback. + * Subscribes to an event in persistent manner and executes a callback after the event is received. * - * @param { string } eventId - indicate ID of the event to subscribe to. - * @param { Callback<EventData> } callback - indicate callback used to receive the event. + * @param { string } eventId - Event to subscribe to in persistent manner. The value cannot be an empty string and exceed 10240 bytes. + * @param { Callback<EventData> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -96,10 +98,10 @@ declare namespace emitter { function on(eventId: string, callback: Callback<EventData>): void; /** - * Subscribe to a event by specific id in persistent manner and receives the event callback. + * Subscribes to an event in persistent manner and executes a callback after the event is received. * - * @param { string } eventId - indicate ID of the event to subscribe to. - * @param { Callback<GenericEventData<T>> } callback - indicate callback used to receive the event. + * @param { string } eventId - Event to subscribe to in persistent manner. The value cannot be an empty string and exceed 10240 bytes. + * @param { Callback<GenericEventData<T>> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -108,30 +110,40 @@ declare namespace emitter { function on<T>(eventId: string, callback: Callback<GenericEventData<T>>): void; /** - * Subscribe to a certain event in one-shot manner and unsubscribe from it - * after the event callback is received. + * Subscribe to a event by specific id in persistent manner and receives the event callback. + * + * @param { string } eventId - indicate ID of the event to subscribe to. + * @param { Callback<EventData> | Callback<GenericEventData<T>> } callback - indicate callback used to receive the event. + * @syscap SystemCapability.Notification.Emitter + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + function on<T>(eventId: string, callback: Callback<EventData> | Callback<GenericEventData<T>>): void; + + /** + * Subscribes to an event in one-shot manner and unsubscribes from it after the event callback is executed. * - * @param { InnerEvent } event - indicate event to subscribe to in one shot. - * @param { Callback<EventData> } callback - indicate callback used to receive the event. + * @param { InnerEvent } event - Event to subscribe to in one-shot manner. The EventPriority parameter is not required and does not take effect. + * @param { Callback<EventData> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Subscribe to a certain event in one-shot manner and unsubscribe from it - * after the event callback is received. + * Subscribes to an event in one-shot manner and unsubscribes from it after the event callback is executed. * - * @param { InnerEvent } event - indicate event to subscribe to in one shot. - * @param { Callback<EventData> } callback - indicate callback used to receive the event. + * @param { InnerEvent } event - Event to subscribe to in one-shot manner. The EventPriority parameter is not required and does not take effect. + * @param { Callback<EventData> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Subscribe to a certain event in one-shot manner and unsubscribe from it - * after the event callback is received. + * Subscribes to an event in one-shot manner and unsubscribes from it after the event callback is executed. * - * @param { InnerEvent } event - indicate event to subscribe to in one shot. - * @param { Callback<EventData> } callback - indicate callback used to receive the event. + * @param { InnerEvent } event - Event to subscribe to in one-shot manner. The EventPriority parameter is not required and does not take effect. + * @param { Callback<EventData> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -140,21 +152,19 @@ declare namespace emitter { function once(event: InnerEvent, callback: Callback<EventData>): void; /** - * Subscribe to a event by specific id in one-shot manner and unsubscribe from it - * after the event callback is received. + * Subscribes to an event in one-shot manner and unsubscribes from it after the event callback is executed. * - * @param { string } eventId - indicate ID of the event to subscribe to in one shot. - * @param { Callback<EventData> } callback - indicate callback used to receive the event. + * @param { string } eventId - Event to subscribe to in one-shot manner. The value cannot be an empty string and exceed 10240 bytes. + * @param { Callback<EventData> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Subscribe to a event by specific id in one-shot manner and unsubscribe from it - * after the event callback is received. + * Subscribes to an event in one-shot manner and unsubscribes from it after the event callback is executed. * - * @param { string } eventId - indicate ID of the event to subscribe to in one shot. - * @param { Callback<EventData> } callback - indicate callback used to receive the event. + * @param { string } eventId - Event to subscribe to in one-shot manner. The value cannot be an empty string and exceed 10240 bytes. + * @param { Callback<EventData> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -163,11 +173,10 @@ declare namespace emitter { function once(eventId: string, callback: Callback<EventData>): void; /** - * Subscribe to a event by specific id in one-shot manner and unsubscribe from it - * after the event callback is received. + * Subscribes to an event in one-shot manner and unsubscribes from it after the event callback is executed. * - * @param { string } eventId - indicate ID of the event to subscribe to in one shot. - * @param { Callback<GenericEventData<T>> } callback - indicate callback used to receive the event. + * @param { string } eventId - Event to subscribe to in one-shot manner. The value cannot be an empty string and exceed 10240 bytes. + * @param { Callback<GenericEventData<T>> } callback - Callback to be executed when the event is received. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -176,43 +185,44 @@ declare namespace emitter { function once<T>(eventId: string, callback: Callback<GenericEventData<T>>): void; /** - * Unsubscribe from an event. + * Unsubscribes from all events with the specified event ID. * - * @param { number } eventId - indicate ID of the event to unsubscribe from. + * @param { number } eventId - Event ID. * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Unsubscribe from an event. + * Unsubscribes from all events with the specified event ID. * - * @param { number } eventId - indicate ID of the event to unsubscribe from. + * @param { number } eventId - Event ID. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Unsubscribe from an event. + * Unsubscribes from all events with the specified event ID. * - * @param { number } eventId - indicate ID of the event to unsubscribe from. + * @param { number } eventId - Event ID. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function off(eventId: number): void; /** - * Unsubscribe from an event. + * Unsubscribes from all events with the specified event ID. * - * @param { string } eventId - indicate ID of the event to unsubscribe from. + * @param { string } eventId - Event ID. The value cannot be an empty string and exceed 10240 bytes. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Unsubscribe from an event. + * Unsubscribes from all events with the specified event ID. * - * @param { string } eventId - indicate ID of the event to unsubscribe from. + * @param { string } eventId - Event ID. The value cannot be an empty string and exceed 10240 bytes. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -221,48 +231,49 @@ declare namespace emitter { function off(eventId: string): void; /** - * Unsubscribe from an event. + * Unsubscribes from an event with the specified event ID and processed by the specified callback. * - * @param { number } eventId - indicates ID of the event to unsubscribe from. - * @param { Callback<EventData> } callback - indicates callback used to receive the event. + * @param { number } eventId - Event ID. + * @param { Callback<EventData> } callback - Callback to unregister. * @syscap SystemCapability.Notification.Emitter * @since 10 */ /** - * Unsubscribe from an event. + * Unsubscribes from an event with the specified event ID and processed by the specified callback. * - * @param { number } eventId - indicates ID of the event to unsubscribe from. - * @param { Callback<EventData> } callback - indicates callback used to receive the event. + * @param { number } eventId - Event ID. + * @param { Callback<EventData> } callback - Callback to unregister. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Unsubscribe specified callback function from an event. + * Unsubscribes from an event with the specified event ID and processed by the specified callback. * - * @param { number } eventId - indicates ID of the event to unsubscribe from. - * @param { Callback<EventData> } callback - indicates callback used to receive the event. + * @param { number } eventId - Event ID. + * @param { Callback<EventData> } callback - Callback to unregister. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function off(eventId: number, callback: Callback<EventData>): void; /** - * Unsubscribe from an event. + * Unsubscribes from an event with the specified event ID and processed by the specified callback. * - * @param { string } eventId - indicates ID of the event to unsubscribe from. - * @param { Callback<EventData> } callback - indicates callback used to receive the event. + * @param { string } eventId - Event ID. The value cannot be an empty string and exceed 10240 bytes. + * @param { Callback<EventData> } callback - Callback to unregister. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Unsubscribe specified callback function from an event. + * Unsubscribes from an event with the specified event ID and processed by the specified callback. * - * @param { string } eventId - indicates ID of the event to unsubscribe from. - * @param { Callback<EventData> } callback - indicates callback used to receive the event. + * @param { string } eventId - Event ID. The value cannot be an empty string and exceed 10240 bytes. + * @param { Callback<EventData> } callback - Callback to unregister. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -271,10 +282,10 @@ declare namespace emitter { function off(eventId: string, callback: Callback<EventData>): void; /** - * Unsubscribe specified callback function from an event. + * Unsubscribes from an event with the specified event ID and processed by the specified callback. * - * @param { string } eventId - indicates ID of the event to unsubscribe from. - * @param { Callback<GenericEventData<T>> } callback - indicates callback used to receive the event. + * @param { string } eventId - Event ID. The value cannot be an empty string and exceed 10240 bytes. + * @param { Callback<GenericEventData<T>> } callback - Callback to unregister. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -283,48 +294,62 @@ declare namespace emitter { function off<T>(eventId: string, callback: Callback<GenericEventData<T>>): void; /** - * Emits an event to the event queue. + * Unsubscribe specified callback function from an event. * - * @param { InnerEvent } event - indicate event to emit. - * @param { EventData } [data] - indicate data carried by the event. + * @param { string } eventId - indicates ID of the event to unsubscribe from. + * @param { Callback<EventData> | Callback<GenericEventData<T>> } callback - indicates callback used to receive the event. + * @syscap SystemCapability.Notification.Emitter + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + function off<T>(eventId: string, callback: Callback<EventData> | Callback<GenericEventData<T>>): void; + + /** + * Emits the specified event. + * + * @param { InnerEvent } event - Event to emit, where EventPriority specifies the emit priority of the event. + * @param { EventData } [data] - Data passed in the event. * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Emits an event to the event queue. + * Emits the specified event. * - * @param { InnerEvent } event - indicate event to emit. - * @param { EventData } [data] - indicate data carried by the event. + * @param { InnerEvent } event - Event to emit, where EventPriority specifies the emit priority of the event. + * @param { EventData } [data] - Data passed in the event. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Emits an event to the event queue. + * Emits the specified event. * - * @param { InnerEvent } event - indicate event to emit. - * @param { EventData } [data] - indicate data carried by the event. + * @param { InnerEvent } event - Event to emit, where EventPriority specifies the emit priority of the event. + * @param { EventData } [data] - Data passed in the event. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function emit(event: InnerEvent, data?: EventData): void; /** - * Emits an event by specific id to the event queue. + * Emits the specified event. * - * @param { string } eventId - indicate ID of the event to emit. - * @param { EventData } [data] - indicate data carried by the event. + * @param { string } eventId - ID of the event to emit. The value cannot be an empty string and exceed 10240 bytes. + * @param { EventData } [data] - Data passed in the event. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Emits an event by specific id to the event queue. + * Emits the specified event. * - * @param { string } eventId - indicate ID of the event to emit. - * @param { EventData } [data] - indicate data carried by the event. + * @param { string } eventId - ID of the event to emit. The value cannot be an empty string and exceed 10240 bytes. + * @param { EventData } [data] - Data passed in the event. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -333,10 +358,10 @@ declare namespace emitter { function emit(eventId: string, data?: EventData): void; /** - * Emits an event by specific id to the event queue. + * Emits the specified event. * - * @param { string } eventId - indicate ID of the event to emit. - * @param { GenericEventData<T> } [data] - indicate data carried by the event. + * @param { string } eventId - ID of the event to emit. The value cannot be an empty string and exceed 10240 bytes. + * @param { GenericEventData<T> } [data] - Data passed in the event. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -348,18 +373,31 @@ declare namespace emitter { * Emits an event by specific id to the event queue. * * @param { string } eventId - indicate ID of the event to emit. - * @param { Options } options - Indicates the {@link Options} option of the emit priority of the event. - * @param { EventData } [data] - indicate data carried by the event. + * @param { EventData | GenericEventData<T> } [data] - indicate data carried by the event. + * @syscap SystemCapability.Notification.Emitter + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + function emit<T>(eventId: string, data?: EventData | GenericEventData<T>): void; + + /** + * Emits an event of a specified priority. + * + * @param { string } eventId - ID of the event to emit. The value cannot be an empty string and exceed 10240 bytes. + * @param { Options } options - Event emit priority. + * @param { EventData } [data] - Data passed in the event. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Emits an event by specific id to the event queue. + * Emits an event of a specified priority. * - * @param { string } eventId - indicate ID of the event to emit. - * @param { Options } options - Indicates the {@link Options} option of the emit priority of the event. - * @param { EventData } [data] - indicate data carried by the event. + * @param { string } eventId - ID of the event to emit. The value cannot be an empty string and exceed 10240 bytes. + * @param { Options } options - Event emit priority. + * @param { EventData } [data] - Data passed in the event. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -368,11 +406,11 @@ declare namespace emitter { function emit(eventId: string, options: Options, data?: EventData): void; /** - * Emits an event by specific id to the event queue. + * Emits an event of a specified priority. * - * @param { string } eventId - indicate ID of the event to emit. - * @param { Options } options - Indicates the {@link Options} option of the emit priority of the event. - * @param { GenericEventData<T> } [data] - indicate data carried by the event. + * @param { string } eventId - ID of the event to emit. The value cannot be an empty string and exceed 10240 bytes. + * @param { Options } options - Event emit priority. + * @param { GenericEventData<T> } [data] - Data passed in the event. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice @@ -381,23 +419,24 @@ declare namespace emitter { function emit<T>(eventId: string, options: Options, data?: GenericEventData<T>): void; /** - * Obtains the number of subscribe listener count. + * Obtains the number of subscriptions to a specified event. * - * @param { number | string } eventId - indicates ID of the event to unsubscribe from. + * @param { number | string } eventId - Event ID. The value of the string type cannot be an empty string. * @returns { number } Returns the number of listener count. * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Obtains the number of subscribe listener count. + * Obtains the number of subscriptions to a specified event. * - * @param { number | string } eventId - indicates ID of the event to unsubscribe from. + * @param { number | string } eventId - Event ID. The value of the string type cannot be an empty string. * @returns { number } Returns the number of listener count. * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function getListenerCount(eventId: number | string): number; @@ -423,18 +462,19 @@ declare namespace emitter { * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface EventData { /** - * Data carried by the event. + * Data passed in the event. * * @type { ?object } * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Data carried by the event. + * Data passed in the event. * * @type { ?object } * @syscap SystemCapability.Notification.Emitter @@ -442,7 +482,7 @@ declare namespace emitter { * @since 11 */ /** - * Data carried by the event. + * Data passed in the event. * * @type { ?object } * @syscap SystemCapability.Notification.Emitter @@ -451,17 +491,28 @@ declare namespace emitter { * @since 12 */ data?: { [key: string]: any }; + + /** + * Data carried by the event. + * + * @type { ?Record<string, Object> } + * @syscap SystemCapability.Notification.Emitter + * @crossplatform + * @since 20 + * @arkts 1.2 + */ + data?: Record<string, Object>; } /** - * Describes an intra-process event. + * Describes an event to subscribe to or emit. The EventPriority settings do not take effect under event subscription. * * @typedef InnerEvent * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Describes an intra-process event. + * Describes an event to subscribe to or emit. The EventPriority settings do not take effect under event subscription. * * @typedef InnerEvent * @syscap SystemCapability.Notification.Emitter @@ -469,24 +520,25 @@ declare namespace emitter { * @since 11 */ /** - * Describes an intra-process event. + * Describes an event to subscribe to or emit. The EventPriority settings do not take effect under event subscription. * * @typedef InnerEvent * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface InnerEvent { /** - * Event ID, which is used to identify an event. + * Event ID. * * @type { number } * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Event ID, which is used to identify an event. + * Event ID. * * @type { number } * @syscap SystemCapability.Notification.Emitter @@ -494,25 +546,26 @@ declare namespace emitter { * @since 11 */ /** - * Event ID, which is used to identify an event. + * Event ID. * * @type { number } * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ eventId: number; /** - * Emit priority of the event. The default priority is {@link EventPriority.LOW}. + * Event priority. The default value is EventPriority.LOW. * * @type { ?EventPriority } * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Emit priority of the event. The default priority is {@link EventPriority.LOW}. + * Event priority. The default value is EventPriority.LOW. * * @type { ?EventPriority } * @syscap SystemCapability.Notification.Emitter @@ -520,26 +573,27 @@ declare namespace emitter { * @since 11 */ /** - * Emit priority of the event. The default priority is {@link EventPriority.LOW}. + * Event priority. The default value is EventPriority.LOW. * * @type { ?EventPriority } * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ priority?: EventPriority; } /** - * Indicates the emit priority of the event. + * Enumerates the event priorities. * * @enum { number } * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Indicates the emit priority of the event. + * Enumerates the event priorities. * * @enum { number } * @syscap SystemCapability.Notification.Emitter @@ -547,127 +601,133 @@ declare namespace emitter { * @since 11 */ /** - * Indicates the emit priority of the event. + * Enumerates the event priorities. * * @enum { number } * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum EventPriority { /** - * Indicates that the event will be emitted immediately. + * The event will be emitted immediately. * * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Indicates that the event will be emitted immediately. + * The event will be emitted immediately. * * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Indicates that the event will be emitted immediately. + * The event will be emitted immediately. * * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ IMMEDIATE = 0, /** - * Indicates that the event will be emitted before low-priority events. + * The event will be emitted before low-priority events. * * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Indicates that the event will be emitted before low-priority events. + * The event will be emitted before low-priority events. * * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Indicates that the event will be emitted before low-priority events. + * The event will be emitted before low-priority events. * * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ HIGH, /** - * Indicates that the event will be emitted before idle-priority events. By default, an event is in LOW priority. + * The event will be emitted before idle-priority events. By default, an event is in LOW priority. * * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Indicates that the event will be emitted before idle-priority events. By default, an event is in LOW priority. + * The event will be emitted before idle-priority events. By default, an event is in LOW priority. * * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Indicates that the event will be emitted before idle-priority events. By default, an event is in LOW priority. + * The event will be emitted before idle-priority events. By default, an event is in LOW priority. * * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ LOW, /** - * Indicates that the event will be emitted after all the other events. + * The event will be emitted after all the other events. * * @syscap SystemCapability.Notification.Emitter * @since 7 */ /** - * Indicates that the event will be emitted after all the other events. + * The event will be emitted after all the other events. * * @syscap SystemCapability.Notification.Emitter * @atomicservice * @since 11 */ /** - * Indicates that the event will be emitted after all the other events. + * The event will be emitted after all the other events. * * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ IDLE, } /** - * Describe the optional arguments of emit operation. + * Describes the event emit priority. * * @typedef Options * @syscap SystemCapability.Notification.Emitter * @since 11 */ /** - * Describe the optional arguments of emit operation. + * Describes the event emit priority. * * @typedef Options * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface Options { /** - * Emit priority of the event. The default priority is {@link EventPriority.LOW}. + * Event priority. The default value is EventPriority.LOW. * * @type { ?EventPriority } * @syscap SystemCapability.Notification.Emitter @@ -675,35 +735,38 @@ declare namespace emitter { * @since 11 */ /** - * Emit priority of the event. The default priority is {@link EventPriority.LOW}. + * Event priority. The default value is EventPriority.LOW. * * @type { ?EventPriority } * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ priority?: EventPriority; } /** - * Describes data passed in the event. + * Describes the generic data passed in the event. * * @typedef GenericEventData<T> * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface GenericEventData<T> { /** - * Data carried by the event. + * Data passed in the event. T: generic type. * * @type { ?T } * @syscap SystemCapability.Notification.Emitter * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ data?: T; } diff --git a/api/@ohos.fastbuffer.d.ts b/api/@ohos.fastbuffer.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..a8a51315995ae383fef760abbfe1891af86480b1 --- /dev/null +++ b/api/@ohos.fastbuffer.d.ts @@ -0,0 +1,1073 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (The type of "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkTS + */ +/** + * The FastBuffer class is a container type for dealing with binary data directly. It can be constructed in a variety of ways. + * + * @namespace fastbuffer + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ +declare namespace fastbuffer { + /** + * This parameter specifies the type of a common encoding format. + * + * @typedef { 'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'ucs2' | 'ucs-2' | 'base64' | 'base64url' | 'latin1' | 'binary' | 'hex' } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + type BufferEncoding = 'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'ucs2' | 'ucs-2' | 'base64' | 'base64url' | 'latin1' | 'binary' | 'hex'; + /** + * TypedArray inherits the features and methods of Int8Array + * + * @extends Int8Array + * @typedef TypedArray + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + interface TypedArray extends Int8Array { + } + /** + * Allocates a new FastBuffer for a fixed size bytes. If fill is undefined, the FastBuffer will be zero-filled. + * + * @param { number } size - size size The desired length of the new FastBuffer + * @param { string | FastBuffer | number } [fill] - fill [fill=0] A value to pre-fill the new FastBuffer with + * @param { BufferEncoding } [encoding] - encoding [encoding='utf8'] If `fill` is a string, this is its encoding + * @returns { FastBuffer } Return a new allocated FastBuffer + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function alloc(size: number, fill?: string | FastBuffer | number, encoding?: BufferEncoding): FastBuffer; + /** + * Allocates a new FastBuffer for a fixed size bytes. The FastBuffer will not be initially filled. + * + * @param { number } size - size size The desired length of the new FastBuffer + * @returns { FastBuffer } Return a new allocated FastBuffer + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function allocUninitializedFromPool(size: number): FastBuffer; + /** + * Allocates a new un-pooled FastBuffer for a fixed size bytes. The FastBuffer will not be initially filled. + * + * @param { number } size - size size The desired length of the new FastBuffer + * @returns { FastBuffer } Return a new allocated FastBuffer + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function allocUninitialized(size: number): FastBuffer; + /** + * Returns the byte length of a string when encoded using `encoding`. + * This is not the same as [`String.prototype.length`], which does not account + * for the encoding that is used to convert the string into bytes. + * + * @param { string | FastBuffer | TypedArray | DataView | ArrayBuffer | SharedArrayBuffer } value - Target string. + * @param { BufferEncoding } [encoding] - Encoding format of the string. The default value is 'utf8'. + * @returns { number } The number of bytes contained within `string` + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function byteLength(value: string | FastBuffer | TypedArray | DataView | ArrayBuffer | SharedArrayBuffer, encoding?: BufferEncoding): number; + /** + * Returns a new `FastBuffer` which is the result of concatenating all the `FastBuffer`instances in the `list` together. + * + * @param { FastBuffer[] | Uint8Array[] } list - list list List of `FastBuffer` or Uint8Array instances to concatenate + * @param { number } [totalLength] - totalLength totalLength Total length of the `FastBuffer` instances in `list` when concatenated + * @returns { FastBuffer } Return a new allocated FastBuffer + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function concat(list: FastBuffer[] | Uint8Array[], totalLength?: number): FastBuffer; + /** + * Allocates a new FastBuffer using an array of bytes in the range 0 – 255. Array entries outside that range will be truncated to fit into it. + * + * @param { number[] } array - array array an array of bytes in the range 0 – 255 + * @returns { FastBuffer } Return a new allocated FastBuffer + * @throws { BusinessError } 10200068 - The underlying ArrayBuffer is null or detach. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function from(array: number[]): FastBuffer; + /** + * This creates a view of the ArrayBuffer without copying the underlying memory. + * + * @param { ArrayBuffer | SharedArrayBuffer } arrayBuffer - arrayBuffer arrayBuffer An ArrayBuffer, + * SharedArrayBuffer, for example the .buffer property of a TypedArray. + * @param { number } [byteOffset] - byteOffset [byteOffset = 0] Index of first byte to expose + * @param { number } [length] - length [length = arrayBuffer.byteLength - byteOffset] Number of bytes to expose + * @returns { FastBuffer } Return a view of the ArrayBuffer + * @throws { BusinessError } 10200068 - The underlying ArrayBuffer is null or detach. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function from(arrayBuffer: ArrayBuffer | SharedArrayBuffer, byteOffset?: number, length?: number): FastBuffer; + /** + * Copies the passed buffer data onto a new FastBuffer instance. + * + * @param { FastBuffer | Uint8Array } buffer - buffer buffer An existing FastBuffer or Uint8Array from which to copy data + * @returns { FastBuffer } Return a new allocated FastBuffer + * @throws { BusinessError } 10200068 - The underlying ArrayBuffer is null or detach. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function from(buffer: FastBuffer | Uint8Array): FastBuffer; + /** + * Creates a new FastBuffer containing string. The encoding parameter identifies the character encoding + * to be used when converting string into bytes. + * + * @param { string } value - value string A string to encode + * @param { BufferEncoding } [encoding] - encoding [encoding='utf8'] The encoding of string + * @returns { FastBuffer } Return a new FastBuffer containing string + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function from(value: string, encoding?: BufferEncoding): FastBuffer; + /** + * Returns true if obj is a FastBuffer, false otherwise + * + * @param { Object } obj - obj obj Objects to be judged + * @returns { boolean } true or false + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function isBuffer(obj: Object): boolean; + /** + * Returns true if encoding is the name of a supported character encoding, or false otherwise. + * + * @param { string } encoding - encoding encoding A character encoding name to check + * @returns { boolean } true or false + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function isEncoding(encoding: string): boolean; + /** + * Compares buf1 to buf2 + * + * @param { FastBuffer | Uint8Array } buf1 - buf1 buf1 A FastBuffer or Uint8Array instance. + * @param { FastBuffer | Uint8Array } buf2 - buf2 buf2 A FastBuffer or Uint8Array instance. + * @returns { -1 | 0 | 1 } 0 is returned if target is the same as buf + * 1 is returned if target should come before buf when sorted. + * -1 is returned if target should come after buf when sorted. + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @throws { BusinessError } 10200068 - The underlying ArrayBuffer is null or detach. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function compare(buf1: FastBuffer | Uint8Array, buf2: FastBuffer | Uint8Array): -1 | 0 | 1; + /** + * Re-encodes the given FastBuffer or Uint8Array instance from one character encoding to another. + * + * @param { FastBuffer | Uint8Array } source - source source A FastBuffer or Uint8Array instance. + * @param { string } fromEnc - fromEnc fromEnc The current encoding + * @param { string } toEnc - toEnc toEnc To target encoding + * @returns { FastBuffer } Returns a new FastBuffer instance + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function transcode(source: FastBuffer | Uint8Array, fromEnc: string, toEnc: string): FastBuffer; + /** + * The FastBuffer object is a method of handling buffers dedicated to binary data. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + class FastBuffer { + /** + * A constructor used to allocate a new FastBuffer. + * + * @param { number | FastBuffer | Uint8Array | ArrayBuffer | SharedArrayBuffer | Array<number> | string } value - value for construct fastbuffer. + * @param { number | string } [byteOffsetOrEncoding] - byteOffsetOrEncoding [byteOffsetOrEncoding] The encoding of string or index of first byte to expose + * @param { number } [length] - length [length] Number of bytes to expose + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @throws { BusinessError } 10200012 - The FastBuffer's constructor cannot be directly invoked. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + constructor(value: number | FastBuffer | Uint8Array | ArrayBuffer | SharedArrayBuffer | Array<number> | string, + byteOffsetOrEncoding?: number | string, length?: number); + /** + * Returns the number of bytes in buf + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + length: number; + /** + * The arraybuffer underlying the FastBuffer object + * + * @type { ArrayBuffer } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + buffer: ArrayBuffer; + /** + * The byteOffset of the Buffers underlying ArrayBuffer object + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + byteOffset: number; + /** + * Fills buf with the specified value. If the offset and end are not given, the entire buf will be filled. + * + * @param { string | FastBuffer | Uint8Array | number } value - value value The value with which to fill buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to fill buf + * @param { number } [end] - end [end = buf.length] Where to stop filling buf (not inclusive) + * @param { BufferEncoding } [encoding] - encoding [encoding='utf8'] The encoding for value if value is a string + * @returns { FastBuffer } A reference to buf + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @throws { BusinessError } 10200068 - The underlying ArrayBuffer is null or detach. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + fill(value: string | FastBuffer | Uint8Array | number, offset?: number, end?: number, encoding?: BufferEncoding): FastBuffer; + /** + * Compares buf with target and returns a number indicating whether buf comes before, after, + * or is the same as target in sort order. Comparison is based on the actual sequence of bytes in each FastBuffer. + * + * @param { FastBuffer | Uint8Array } target - target target A FastBuffer or Uint8Array with which to compare buf + * @param { number } [targetStart] - targetStart [targetStart = 0] The offset within target at which to begin comparison + * @param { number } [targetEnd] - targetEnd [targetEnd = target.length] The offset within target at which to end comparison (not inclusive) + * @param { number } [sourceStart] - sourceStart [sourceStart = 0] The offset within buf at which to begin comparison + * @param { number } [sourceEnd] - sourceEnd [sourceEnd = buf.length] The offset within buf at which to end comparison (not inclusive) + * @returns { -1 | 0 | 1 } 0 is returned if target is the same as buf + * 1 is returned if target should come before buf when sorted. + * -1 is returned if target should come after buf when sorted. + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + compare(target: FastBuffer | Uint8Array, targetStart?: number, targetEnd?: number, sourceStart?: number, sourceEnd?: number): -1 | 0 | 1; + /** + * Copies data from a region of buf to a region in target, even if the target memory region overlaps with buf. + * If sourceEnd is greater than the length of the target, the length of the target shall prevail, and the extra part will not be overwritten. + * + * @param { FastBuffer | Uint8Array } target - target target A FastBuffer or Uint8Array to copy into + * @param { number } [targetStart] - targetStart [targetStart = 0] The offset within target at which to begin writing + * @param { number } [sourceStart] - sourceStart [sourceStart = 0] The offset within buf from which to begin copying + * @param { number } [sourceEnd] - sourceEnd [sourceEnd = buf.length] The offset within buf at which to stop copying (not inclusive) + * @returns { number } The number of bytes copied + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @throws { BusinessError } 10200068 - The underlying ArrayBuffer is null or detach. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + copy(target: FastBuffer | Uint8Array, targetStart?: number, sourceStart?: number, sourceEnd?: number): number; + /** + * Returns true if both buf and otherBuffer have exactly the same bytes, false otherwise + * + * @param { Uint8Array | FastBuffer } otherBuffer - otherBuffer otherBuffer A FastBuffer or Uint8Array with which to compare buf + * @returns { boolean } true or false + * @throws { BusinessError } 10200068 - The underlying ArrayBuffer is null or detach. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + equals(otherBuffer: Uint8Array | FastBuffer): boolean; + /** + * Returns true if value was found in buf, false otherwise + * + * @param { string | number | FastBuffer | Uint8Array } value - value value What to search for + * @param { number } [byteOffset] - byteOffset [byteOffset = 0] Where to begin searching in buf. If negative, then offset is calculated from the end of buf + * @param { BufferEncoding } [encoding] - encoding [encoding='utf8'] If value is a string, this is its encoding + * @returns { boolean } true or false + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + includes(value: string | number | FastBuffer | Uint8Array, byteOffset?: number, encoding?: BufferEncoding): boolean; + /** + * The index of the first occurrence of value in buf + * + * @param { string | number | FastBuffer | Uint8Array } value - value value What to search for + * @param { number } [byteOffset] - byteOffset [byteOffset = 0] Where to begin searching in buf + * @param { BufferEncoding } [encoding] - encoding [encoding='utf8'] If value is a string, + * this is the encoding used to determine the binary representation of the string that will be searched for in buf + * @returns { number } The index of the first occurrence of value in buf, or -1 if buf does not contain value + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + indexOf(value: string | number | FastBuffer | Uint8Array, byteOffset?: number, encoding?: BufferEncoding): number; + /** + * Creates and returns an iterator of buf keys (indices). + * + * @returns { IterableIterator<number> } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + keys(): IterableIterator<number>; + /** + * Creates and returns an iterator for buf values (bytes). + * + * @returns { IterableIterator<number> } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + values(): IterableIterator<number>; + /** + * Creates and returns an iterator of [index, byte] pairs from the contents of buf. + * + * @returns { IterableIterator<[number, number]> } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + entries(): IterableIterator<[ + number, + number + ]>; + /** + * The index of the last occurrence of value in buf + * + * @param { string | number | FastBuffer | Uint8Array } value - value value What to search for + * @param { number } [byteOffset] - byteOffset [byteOffset = 0] Where to begin searching in buf + * @param { BufferEncoding } [encoding] - encoding [encoding='utf8'] If value is a string, + * this is the encoding used to determine the binary representation of the string that will be searched for in buf + * @returns { number } The index of the last occurrence of value in buf, or -1 if buf does not contain value + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + lastIndexOf(value: string | number | FastBuffer | Uint8Array, byteOffset?: number, encoding?: BufferEncoding): number; + /** + * Reads a signed, big-endian 64-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { bigint } Return a signed, big-endian 64-bit integer + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readBigInt64BE(offset?: number): bigint; + /** + * Reads a signed, little-endian 64-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { bigint } Return a signed, little-endian 64-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 8. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readBigInt64LE(offset?: number): bigint; + /** + * Reads a unsigned, big-endian 64-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { bigint } Return a unsigned, big-endian 64-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 8. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readBigUInt64BE(offset?: number): bigint; + /** + * Reads a unsigned, little-endian 64-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { bigint } Return a unsigned, little-endian 64-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 8. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readBigUInt64LE(offset?: number): bigint; + /** + * Reads a 64-bit, big-endian double from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { number } Return a 64-bit, big-endian double + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 8. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readDoubleBE(offset?: number): number; + /** + * Reads a 64-bit, little-endian double from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { number } Return a 64-bit, little-endian double + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 8. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readDoubleLE(offset?: number): number; + /** + * Reads a 32-bit, big-endian float from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 4 + * @returns { number } Return a 32-bit, big-endian float + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 4. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readFloatBE(offset?: number): number; + /** + * Reads a 32-bit, little-endian float from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 4 + * @returns { number } Return a 32-bit, little-endian float + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 4. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readFloatLE(offset?: number): number; + /** + * Reads a signed 8-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 1 + * @returns { number } Return a signed 8-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 1. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readInt8(offset?: number): number; + /** + * Reads a signed, big-endian 16-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 2 + * @returns { number } Return a signed, big-endian 16-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 2. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readInt16BE(offset?: number): number; + /** + * Reads a signed, little-endian 16-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 2 + * @returns { number } Return a signed, little-endian 16-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 2. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readInt16LE(offset?: number): number; + /** + * Reads a signed, big-endian 32-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 4 + * @returns { number } Return a signed, big-endian 32-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 4. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readInt32BE(offset?: number): number; + /** + * Reads a signed, little-endian 32-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - 4 + * @returns { number } Return a signed, little-endian 32-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 4. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readInt32LE(offset?: number): number; + /** + * Reads byteLength number of bytes from buf at the specified offset and interprets the result as a big-endian, + * two's complement signed value supporting up to 48 bits of accuracy + * + * @param { number } offset - offset offset Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - byteLength + * @param { number } byteLength - byteLength byteLength Number of bytes to read. Must satisfy 0 < byteLength <= 6 + * @returns { number } + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readIntBE(offset: number, byteLength: number): number; + /** + * Reads byteLength number of bytes from buf at the specified offset and interprets the result as a little-endian, + * two's complement signed value supporting up to 48 bits of accuracy. + * + * @param { number } offset - offset offset Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - byteLength + * @param { number } byteLength - byteLength byteLength Number of bytes to read. Must satisfy 0 < byteLength <= 6 + * @returns { number } + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readIntLE(offset: number, byteLength: number): number; + /** + * Reads an unsigned 8-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy 0 <= offset <= buf.length - 1 + * @returns { number } Reads an unsigned 8-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 1. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readUInt8(offset?: number): number; + /** + * Reads an unsigned, big-endian 16-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy 0 <= offset <= buf.length - 2 + * @returns { number } Reads an unsigned, big-endian 16-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 2. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readUInt16BE(offset?: number): number; + /** + * Reads an unsigned, little-endian 16-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy 0 <= offset <= buf.length - 2 + * @returns { number } Reads an unsigned, little-endian 16-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 2. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readUInt16LE(offset?: number): number; + /** + * Reads an unsigned, big-endian 32-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy 0 <= offset <= buf.length - 4 + * @returns { number } Reads an unsigned, big-endian 32-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 4. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readUInt32BE(offset?: number): number; + /** + * Reads an unsigned, little-endian 32-bit integer from buf at the specified offset + * + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to read. Must satisfy 0 <= offset <= buf.length - 4 + * @returns { number } Reads an unsigned, little-endian 32-bit integer + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 4. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readUInt32LE(offset?: number): number; + /** + * Reads byteLength number of bytes from buf at the specified offset and interprets the result as + * an unsigned big-endian integer supporting up to 48 bits of accuracy. + * + * @param { number } offset - offset offset Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - byteLength + * @param { number } byteLength - byteLength byteLength Number of bytes to read. Must satisfy 0 < byteLength <= 6 + * @returns { number } + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readUIntBE(offset: number, byteLength: number): number; + /** + * Reads byteLength number of bytes from buf at the specified offset and interprets the result as an unsigned, + * little-endian integer supporting up to 48 bits of accuracy. + * + * @param { number } offset - offset offset Number of bytes to skip before starting to read. Must satisfy: 0 <= offset <= buf.length - byteLength + * @param { number } byteLength - byteLength byteLength Number of bytes to read. Must satisfy 0 < byteLength <= 6 + * @returns { number } + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + readUIntLE(offset: number, byteLength: number): number; + /** + * Returns a new FastBuffer that references the same memory as the original, but offset and cropped by the start and end indices. + * + * @param { number } [start] - start [start = 0] Where the new FastBuffer will start + * @param { number } [end] - end [end = buf.length] Where the new FastBuffer will end (not inclusive) + * @returns { FastBuffer } Returns a new FastBuffer that references the same memory as the original + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + subarray(start?: number, end?: number): FastBuffer; + /** + * Interprets buf as an array of unsigned 16-bit integers and swaps the byte order in-place. + * + * @returns { FastBuffer } A reference to buf + * @throws { BusinessError } 10200009 - The buffer size must be a multiple of 16-bits + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + swap16(): FastBuffer; + /** + * Interprets buf as an array of unsigned 32-bit integers and swaps the byte order in-place. + * + * @returns { FastBuffer } A reference to buf + * @throws { BusinessError } 10200009 - The buffer size must be a multiple of 32-bits + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + swap32(): FastBuffer; + /** + * Interprets buf as an array of unsigned 64-bit integers and swaps the byte order in-place. + * + * @returns { FastBuffer } A reference to buf + * @throws { BusinessError } 10200009 - The buffer size must be a multiple of 64-bits + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + swap64(): FastBuffer; + /** + * Returns a JSON representation of buf + * + * @returns { Object } Returns a JSON + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + toJSON(): Object; + /** + * Decodes buf to a string according to the specified character encoding in encoding + * + * @param { string } [encoding] - encoding [encoding='utf8'] The character encoding to use + * @param { number } [start] - start [start = 0] The byte offset to start decoding at + * @param { number } [end] - end [end = buf.length] The byte offset to stop decoding at (not inclusive) + * @returns { string } + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + toString(encoding?: string, start?: number, end?: number): string; + /** + * Writes string to buf at offset according to the character encoding in encoding + * + * @param { string } str - str str Writes string to buf at offset according to the character encoding in encoding + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write string + * @param { number } [length] - length [length = buf.length - offset] Maximum number of bytes to write (written bytes will not exceed buf.length - offset) + * @param { string } [encoding] - encoding [encoding='utf8'] The character encoding of string. + * @returns { number } Number of bytes written. + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @throws { BusinessError } 10200068 - The underlying ArrayBuffer is null or detach. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + write(str: string, offset?: number, length?: number, encoding?: string): number; + /** + * Writes value to buf at the specified offset as big-endian. + * + * @param { bigint } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - Range error. Possible causes: + * The value of the parameter is not within the specified range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeBigInt64BE(value: bigint, offset?: number): number; + /** + * Writes value to buf at the specified offset as little-endian. + * + * @param { bigint } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeBigInt64LE(value: bigint, offset?: number): number; + /** + * Writes value to buf at the specified offset as big-endian. + * + * @param { bigint } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeBigUInt64BE(value: bigint, offset?: number): number; + /** + * Writes value to buf at the specified offset as little-endian. + * + * @param { bigint } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeBigUInt64LE(value: bigint, offset?: number): number; + /** + * Writes value to buf at the specified offset as big-endian. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 8. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeDoubleBE(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as little-endian. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 8 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 8. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeDoubleLE(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as big-endian. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 4 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 4. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeFloatBE(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as little-endian. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 4 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "offset" is out of range. It must be >= 0 and <= buf.length - 4. Received value is: [offset] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeFloatLE(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset. value must be a valid signed 8-bit integer. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 1 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeInt8(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as big-endian. The value must be a valid signed 16-bit integer + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 2 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeInt16BE(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as little-endian. The value must be a valid signed 16-bit integer + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 2 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeInt16LE(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as big-endian. The value must be a valid signed 32-bit integer. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 4 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeInt32BE(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as little-endian. The value must be a valid signed 32-bit integer. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy: 0 <= offset <= buf.length - 4 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeInt32LE(value: number, offset?: number): number; + /** + * Writes byteLength bytes of value to buf at the specified offset as big-endian + * + * @param { number } value - value value Number to be written to buf + * @param { number } offset - offset offset Number of bytes to skip before starting to write. Must satisfy 0 <= offset <= buf.length - byteLength + * @param { number } byteLength - byteLength byteLength Number of bytes to write. Must satisfy 0 < byteLength <= 6 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeIntBE(value: number, offset: number, byteLength: number): number; + /** + * Writes byteLength bytes of value to buf at the specified offset as little-endian + * + * @param { number } value - value value Number to be written to buf + * @param { number } offset - offset offset Number of bytes to skip before starting to write. Must satisfy 0 <= offset <= buf.length - byteLength + * @param { number } byteLength - byteLength byteLength Number of bytes to write. Must satisfy 0 < byteLength <= 6 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeIntLE(value: number, offset: number, byteLength: number): number; + /** + * Writes value to buf at the specified offset. value must be a valid unsigned 8-bit integer + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy 0 <= offset <= buf.length - 1 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeUInt8(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as big-endian. The value must be a valid unsigned 16-bit integer. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy 0 <= offset <= buf.length - 2 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeUInt16BE(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as little-endian. The value must be a valid unsigned 16-bit integer. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy 0 <= offset <= buf.length - 2 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeUInt16LE(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as big-endian. The value must be a valid unsigned 32-bit integer. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy 0 <= offset <= buf.length - 4 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeUInt32BE(value: number, offset?: number): number; + /** + * Writes value to buf at the specified offset as little-endian. The value must be a valid unsigned 32-bit integer. + * + * @param { number } value - value value Number to be written to buf + * @param { number } [offset] - offset [offset = 0] Number of bytes to skip before starting to write. Must satisfy 0 <= offset <= buf.length - 4 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeUInt32LE(value: number, offset?: number): number; + /** + * Writes byteLength bytes of value to buf at the specified offset as big-endian + * + * @param { number } value - value value Number to be written to buf + * @param { number } offset - offset offset Number of bytes to skip before starting to write. Must satisfy 0 <= offset <= buf.length - byteLength + * @param { number } byteLength - byteLength byteLength Number of bytes to write. Must satisfy 0 < byteLength <= 6 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeUIntBE(value: number, offset: number, byteLength: number): number; + /** + * Writes byteLength bytes of value to buf at the specified offset as little-endian + * + * @param { number } value - value value Number to be written to buf + * @param { number } offset - offset offset Number of bytes to skip before starting to write. Must satisfy 0 <= offset <= buf.length - byteLength + * @param { number } byteLength - byteLength byteLength Number of bytes to write. Must satisfy 0 < byteLength <= 6 + * @returns { number } offset plus the number of bytes written + * @throws { BusinessError } 10200001 - The value of "[param]" is out of range. It must be >= [left range] and <= [right range]. Received value is: [param] + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + writeUIntLE(value: number, offset: number, byteLength: number): number; + } +} +export default fastbuffer; diff --git a/api/@ohos.file.PhotoPickerComponent.d.ets b/api/@ohos.file.PhotoPickerComponent.d.ets index 5fe50b591eb08b86d3ead206f36cc9d31b473c30..2ce91caaf7f7c2fe4918214f675adef6f8c3a96b 100644 --- a/api/@ohos.file.PhotoPickerComponent.d.ets +++ b/api/@ohos.file.PhotoPickerComponent.d.ets @@ -450,6 +450,16 @@ export declare class PickerOptions extends photoAccessHelper.BaseSelectOptions { * @since 13 */ photoBrowserCheckboxPosition?: [number, number]; + + /** + * Single-line display mode for the PhotoPickerComponent. + * + * @type { ?SingleLineConfig } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 20 + */ + singleLineConfig?: SingleLineConfig; } /** @@ -608,6 +618,46 @@ export declare class MaxSelected { data?: Map<MaxCountType, number>; } + +/** + * Single-Line display mode. + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 20 + */ +export declare class SingleLineConfig { + /** + * item display ratio + * + * @type { ?ItemDisplayRatio } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 20 + */ + itemDisplayRatio?: ItemDisplayRatio; + + /** + * Rounded corner radius of grid items. + * + * @type { ?(Length | BorderRadiuses | LocalizedBorderRadiuses) } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 20 + */ + itemBorderRadius?: Length | BorderRadiuses | LocalizedBorderRadiuses; + + /** + * item gap + * + * @type { ?Length } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 20 + */ + itemGap?: Length; +} + /** * DataType represents the type of the data set to picker component * @@ -997,3 +1047,31 @@ export declare enum VideoPlayerState { */ SEEK_FINISH = 4 } + +/** + * Enumerates the aspect ratios of the grid item display, including 1:1 and the original image's aspect ratio. + * + * @enum { number } Grid item display aspect ratio. + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 20 + */ +export declare enum ItemDisplayRatio { + /** + * Square ratio item + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 20 + */ + SQUARE_RATIO = 0, + + /** + * original size ratio item + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 20 + */ + ORIGINAL_SIZE_RATIO = 1 +} \ No newline at end of file diff --git a/api/@ohos.file.backup.d.ts b/api/@ohos.file.backup.d.ts index 2e665c580b1805650289e97207752fa4b1a6566b..723db6e50adf6b59397f842c5ae4b8f938dbe6a8 100644 --- a/api/@ohos.file.backup.d.ts +++ b/api/@ohos.file.backup.d.ts @@ -662,6 +662,21 @@ declare namespace backup { * @since 18 */ cancel(bundleName: string): number; + + /** + * Provides an interface for the tool to clear temporary directories + * + * @permission ohos.permission.BACKUP + * @param { string } bundleName - Set the bundleName of the application to be cleaned. + * @returns { Promise<boolean> } Return clean result, true is success, false is fail. + * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * <br>2. Incorrect parameter types. 3.Parameter verification failed. + * @syscap SystemCapability.FileManagement.StorageService.Backup + * @systemapi + * @since 20 + */ + cleanBundleTempDir(bundleName: string): Promise<boolean>; } /** @@ -871,6 +886,21 @@ declare namespace backup { * @since 18 */ cancel(bundleName: string): number; + + /** + * Provides an interface for the tool to clear temporary directories + * + * @permission ohos.permission.BACKUP + * @param { string } bundleName - Set the bundleName of the application to be cleaned. + * @returns { Promise<boolean> } Return clean result, true is success, false is fail. + * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * <br>2. Incorrect parameter types. 3.Parameter verification failed. + * @syscap SystemCapability.FileManagement.StorageService.Backup + * @systemapi + * @since 20 + */ + cleanBundleTempDir(bundleName: string): Promise<boolean>; } /** @@ -1014,6 +1044,21 @@ declare namespace backup { * @since 18 */ cancel(bundleName: string): number; + + /** + * Provides an interface for the tool to clear temporary directories + * + * @permission ohos.permission.BACKUP + * @param { string } bundleName - Set the bundleName of the application to be cleaned. + * @returns { Promise<boolean> } Return clean result, true is success, false is fail. + * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. + * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. + * <br>2. Incorrect parameter types. 3.Parameter verification failed. + * @syscap SystemCapability.FileManagement.StorageService.Backup + * @systemapi + * @since 20 + */ + cleanBundleTempDir(bundleName: string): Promise<boolean>; } } export default backup; diff --git a/api/@ohos.file.cloudSync.d.ts b/api/@ohos.file.cloudSync.d.ts index 897b8b0a470e21150787092281c60bcdbbfb7354..cc691f3d943fbc4df1ce3b0618d7897414de7817 100644 --- a/api/@ohos.file.cloudSync.d.ts +++ b/api/@ohos.file.cloudSync.d.ts @@ -25,7 +25,8 @@ import type { AsyncCallback, Callback } from './@ohos.base'; * * @namespace cloudSync * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace cloudSync { /** @@ -33,51 +34,58 @@ declare namespace cloudSync { * * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum SyncState { /** * Indicates that the sync state is uploading. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - UPLOADING, + UPLOADING = 0, /** * Indicates that the sync failed in upload processing. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - UPLOAD_FAILED, + UPLOAD_FAILED = 1, /** * Indicates that the sync state is downloading. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - DOWNLOADING, + DOWNLOADING = 2, /** * Indicates that the sync failed in download processing. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - DOWNLOAD_FAILED, + DOWNLOAD_FAILED = 3, /** * Indicates that the sync finish. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - COMPLETED, + COMPLETED = 4, /** * Indicates that the sync has been stopped. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - STOPPED + STOPPED = 5, } /** @@ -85,65 +93,74 @@ declare namespace cloudSync { * * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum ErrorType { /** * No error occurred. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - NO_ERROR, + NO_ERROR = 0, /** * Synchronization aborted due to network unavailable. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - NETWORK_UNAVAILABLE, + NETWORK_UNAVAILABLE = 1, /** * Synchronization aborted due to wifi unavailable. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - WIFI_UNAVAILABLE, + WIFI_UNAVAILABLE = 2, /** * Synchronization aborted due to low capacity level. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - BATTERY_LEVEL_LOW, + BATTERY_LEVEL_LOW = 3, /** * Synchronization aborted due to warning low capacity level. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - BATTERY_LEVEL_WARNING, + BATTERY_LEVEL_WARNING = 4, /** * Synchronization aborted due to cloud storage is full. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - CLOUD_STORAGE_FULL, + CLOUD_STORAGE_FULL = 5, /** * Synchronization aborted due to local storage is full. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - LOCAL_STORAGE_FULL, + LOCAL_STORAGE_FULL = 6, /** * Synchronization aborted due to device temperature is too high. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - DEVICE_TEMPERATURE_TOO_HIGH, + DEVICE_TEMPERATURE_TOO_HIGH = 7, } @@ -152,7 +169,8 @@ declare namespace cloudSync { * * @interface SyncProgress * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface SyncProgress { /** @@ -160,7 +178,8 @@ declare namespace cloudSync { * * @type { SyncState } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ state: SyncState; /** @@ -168,7 +187,8 @@ declare namespace cloudSync { * * @type { ErrorType } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ error: ErrorType; } @@ -178,7 +198,8 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ class GallerySync { /** @@ -186,7 +207,8 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -202,7 +224,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ on(evt: 'progress', callback: (pg: SyncProgress) => void): void; /** @@ -218,7 +241,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ off(evt: 'progress', callback: (pg: SyncProgress) => void): void; /** @@ -233,7 +257,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ off(evt: 'progress'): void; /** @@ -249,7 +274,8 @@ declare namespace cloudSync { * @throws { BusinessError } 22400003 - Low battery level. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ start(): Promise<void>; /** @@ -266,7 +292,8 @@ declare namespace cloudSync { * @throws { BusinessError } 22400003 - Low battery level. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ start(callback: AsyncCallback<void>): void; /** @@ -279,7 +306,8 @@ declare namespace cloudSync { * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ stop(): Promise<void>; /** @@ -293,7 +321,8 @@ declare namespace cloudSync { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ stop(callback: AsyncCallback<void>): void; } @@ -303,37 +332,42 @@ declare namespace cloudSync { * * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum State { /** * Indicates that the download task in process now. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - RUNNING, + RUNNING = 0, /** * Indicates that the download task finished. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - COMPLETED, + COMPLETED = 1, /** * Indicates that the download task failed. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - FAILED, + FAILED = 2, /** * Indicates that the download task stopped. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - STOPPED + STOPPED = 3, } /** @@ -341,51 +375,58 @@ declare namespace cloudSync { * * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum DownloadErrorType { /** * No error occurred. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - NO_ERROR, + NO_ERROR = 0, /** * download aborted due to unknown error. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - UNKNOWN_ERROR, + UNKNOWN_ERROR = 1, /** * download aborted due to network unavailable. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - NETWORK_UNAVAILABLE, + NETWORK_UNAVAILABLE = 2, /** * download aborted due to local storage is full. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - LOCAL_STORAGE_FULL, + LOCAL_STORAGE_FULL = 3, /** * download aborted due to content is not found in the cloud. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - CONTENT_NOT_FOUND, + CONTENT_NOT_FOUND = 4, /** * download aborted due to frequent user requests. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - FREQUENT_USER_REQUESTS, + FREQUENT_USER_REQUESTS = 5, } /** @@ -393,7 +434,8 @@ declare namespace cloudSync { * * @interface DownloadProgress * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ interface DownloadProgress { /** @@ -401,7 +443,8 @@ declare namespace cloudSync { * * @type { State } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ state: State; /** @@ -409,7 +452,8 @@ declare namespace cloudSync { * * @type { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ processed: number; /** @@ -417,7 +461,8 @@ declare namespace cloudSync { * * @type { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ size: number; /** @@ -425,7 +470,8 @@ declare namespace cloudSync { * * @type { string } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ uri: string; /** @@ -433,7 +479,8 @@ declare namespace cloudSync { * * @type { DownloadErrorType } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ error: DownloadErrorType; } @@ -443,7 +490,8 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ class Download { /** @@ -451,7 +499,8 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -467,7 +516,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ on(evt: 'progress', callback: (pg: DownloadProgress) => void): void; /** @@ -483,7 +533,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ off(evt: 'progress', callback: (pg: DownloadProgress) => void): void; /** @@ -498,7 +549,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ off(evt: 'progress'): void; /** @@ -515,7 +567,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13900025 - No space left on device. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ start(uri: string): Promise<void>; /** @@ -532,7 +585,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13900025 - No space left on device. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ start(uri: string, callback: AsyncCallback<void>): void; /** @@ -547,7 +601,8 @@ declare namespace cloudSync { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ stop(uri: string): Promise<void>; /** @@ -562,7 +617,8 @@ declare namespace cloudSync { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ stop(uri: string, callback: AsyncCallback<void>): void; } @@ -571,7 +627,8 @@ declare namespace cloudSync { * FileSync object. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ class FileSync { /** @@ -579,7 +636,8 @@ declare namespace cloudSync { * * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -591,7 +649,8 @@ declare namespace cloudSync { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ constructor(bundleName: string); /** @@ -603,7 +662,8 @@ declare namespace cloudSync { * <br>2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ on(event: 'progress', callback: Callback<SyncProgress>): void; /** @@ -614,7 +674,8 @@ declare namespace cloudSync { * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:1.Mandatory parameters are left unspecified;2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ off(event: 'progress', callback?: Callback<SyncProgress>): void; /** @@ -627,7 +688,8 @@ declare namespace cloudSync { * @throws { BusinessError } 22400002 - Network unavailable. * @throws { BusinessError } 22400003 - Low battery level. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ start(): Promise<void>; /** @@ -640,7 +702,8 @@ declare namespace cloudSync { * @throws { BusinessError } 22400002 - Network unavailable. * @throws { BusinessError } 22400003 - Low battery level. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ start(callback: AsyncCallback<void>): void; /** @@ -650,7 +713,8 @@ declare namespace cloudSync { * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ stop(): Promise<void>; /** @@ -661,7 +725,8 @@ declare namespace cloudSync { * <br>2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ stop(callback: AsyncCallback<void>): void; /** @@ -671,7 +736,8 @@ declare namespace cloudSync { * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ getLastSyncTime(): Promise<number>; /** @@ -682,7 +748,8 @@ declare namespace cloudSync { * <br>2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ getLastSyncTime(callback: AsyncCallback<number>): void; } @@ -690,7 +757,8 @@ declare namespace cloudSync { * CloudFileCache object. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ class CloudFileCache { /** @@ -698,7 +766,8 @@ declare namespace cloudSync { * * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -710,7 +779,8 @@ declare namespace cloudSync { * <br>2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ on(event: 'progress', callback: Callback<DownloadProgress>): void; /** @@ -722,7 +792,8 @@ declare namespace cloudSync { * <br>2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ off(event: 'progress', callback?: Callback<DownloadProgress>): void; @@ -738,7 +809,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13900025 - No space left on device. * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ start(uri: string): Promise<void>; /** @@ -753,7 +825,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13900025 - No space left on device. * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ start(uri: string, callback: AsyncCallback<void>): void; /** @@ -781,7 +854,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13900002 - No such file or directory. * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ stop(uri: string, needClean?: boolean): Promise<void>; /** @@ -795,7 +869,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13900002 - No such file or directory. * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ stop(uri: string, callback: AsyncCallback<void>): void; /** @@ -812,7 +887,8 @@ declare namespace cloudSync { * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ cleanCache(uri: string): void; } @@ -823,7 +899,8 @@ declare namespace cloudSync { * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum FileSyncState { /** @@ -831,57 +908,64 @@ declare namespace cloudSync { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - UPLOADING, + UPLOADING = 0, /** * Indicates that the file cache is downloading now. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - DOWNLOADING, + DOWNLOADING = 1, /** * Indicates that the file cache sync task finished. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - COMPLETED, + COMPLETED = 2, /** * Indicates that the file cache sync task stopped. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ - STOPPED, + STOPPED = 3, /** * Indicates that the file is waiting for upload. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - TO_BE_UPLOADED, + TO_BE_UPLOADED = 4, /** * Indicates that the file has been already uploaded successfully. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - UPLOAD_SUCCESS, + UPLOAD_SUCCESS = 5, /** * Indicates that the file upload failure. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - UPLOAD_FAILURE, + UPLOAD_FAILURE = 6, } /** @@ -899,7 +983,8 @@ declare namespace cloudSync { * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ function getFileSyncState(uri: Array<string>): Promise<Array<FileSyncState>>; /** @@ -917,7 +1002,8 @@ declare namespace cloudSync { * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ function getFileSyncState(uri: Array<string>, callback: AsyncCallback<Array<FileSyncState>>): void; /** @@ -937,7 +1023,8 @@ declare namespace cloudSync { * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ function getFileSyncState(uri: string): FileSyncState; /** @@ -953,7 +1040,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ function registerChange(uri: string, recursion: boolean, callback: Callback<ChangeData>): void; /** @@ -967,7 +1055,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 14000002 - Invalid URI. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ function unregisterChange(uri: string): void; @@ -976,37 +1065,42 @@ declare namespace cloudSync { * * @enum { number } NotifyType * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum NotifyType { /** * File has been newly created * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - NOTIFY_ADDED, + NOTIFY_ADDED = 0, /** * File has been modified. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - NOTIFY_MODIFIED, + NOTIFY_MODIFIED = 1, /** * File has been deleted. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - NOTIFY_DELETED, + NOTIFY_DELETED = 2, /** * File has been renamed or moved. * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ - NOTIFY_RENAMED + NOTIFY_RENAMED = 3, } /** @@ -1014,7 +1108,8 @@ declare namespace cloudSync { * * @interface ChangeData * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface ChangeData { /** @@ -1022,7 +1117,8 @@ declare namespace cloudSync { * * @type {NotifyType} * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ type: NotifyType; /** @@ -1030,7 +1126,8 @@ declare namespace cloudSync { * * @type {Array<boolean>} * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ isDirectory: Array<boolean>; /** @@ -1038,7 +1135,8 @@ declare namespace cloudSync { * * @type {Array<string>} * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core - * @since 12 + * @since arkts{ '1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ uris: Array<string>; } @@ -1055,7 +1153,8 @@ declare namespace cloudSync { * @throws { BusinessError } 13900042 - Unknown error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ function optimizeStorage(): Promise<void>; @@ -1071,10 +1170,11 @@ declare namespace cloudSync { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 13600001 - IPC error. * @throws { BusinessError } 22400005 - Inner error. - * @throws { BusinessError } 22400006 - Other optimize task is running. + * @throws { BusinessError } 22400006 - The same task is already in progress. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ function startOptimizeSpace(optimizePara: OptimizeSpaceParam, callback?: Callback<OptimizeSpaceProgress>): Promise<void>; @@ -1088,7 +1188,8 @@ declare namespace cloudSync { * @throws { BusinessError } 22400005 - Inner error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ function stopOptimizeSpace(): void; @@ -1097,7 +1198,8 @@ declare namespace cloudSync { * @enum { number } OptimizeState * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ export enum OptimizeState { @@ -1105,7 +1207,8 @@ declare namespace cloudSync { * Indicates that the optimize space task in process now. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ RUNNING = 0, @@ -1113,7 +1216,8 @@ declare namespace cloudSync { * Indicates that the optimize space task finished successfully. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ COMPLETED = 1, @@ -1121,7 +1225,8 @@ declare namespace cloudSync { * Indicates that the optimize space task failed. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ FAILED = 2, @@ -1129,7 +1234,8 @@ declare namespace cloudSync { * Indicates that the optimize space task stopped. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ STOPPED = 3 } @@ -1139,9 +1245,10 @@ declare namespace cloudSync { * @typedef OptimizeSpaceProgress * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ - declare interface OptimizeSpaceProgress { + interface OptimizeSpaceProgress { /** * The current optimize space task state. @@ -1149,7 +1256,8 @@ declare namespace cloudSync { * @type { OptimizeState } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ state: OptimizeState; @@ -1159,7 +1267,8 @@ declare namespace cloudSync { * @type { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ progress: number; } @@ -1169,9 +1278,10 @@ declare namespace cloudSync { * @typedef OptimizeSpaceParam * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ - declare interface OptimizeSpaceParam { + interface OptimizeSpaceParam { /** * The total size(Unit:byte) of clean space. @@ -1179,7 +1289,8 @@ declare namespace cloudSync { * @type { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ totalSize: number; @@ -1189,7 +1300,8 @@ declare namespace cloudSync { * @type { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSync.Core * @systemapi - * @since 16 + * @since arkts{ '1.1':'17','1.2':'20'} + * @arkts 1.1&1.2 */ agingDays: number; } diff --git a/api/@ohos.file.cloudSyncManager.d.ts b/api/@ohos.file.cloudSyncManager.d.ts index b8869a41a0b3f48c950dfe1a9f5c05b1a628fbef..d4d50845324d15d30c75400aca1ec4616d51cafa 100644 --- a/api/@ohos.file.cloudSyncManager.d.ts +++ b/api/@ohos.file.cloudSyncManager.d.ts @@ -25,7 +25,8 @@ import type { AsyncCallback } from './@ohos.base'; * * @namespace cloudSyncManager * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace cloudSyncManager { /** @@ -41,7 +42,8 @@ declare namespace cloudSyncManager { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function changeAppCloudSwitch(accountId: string, bundleName: string, status: boolean): Promise<void>; @@ -58,7 +60,8 @@ declare namespace cloudSyncManager { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function changeAppCloudSwitch( accountId: string, @@ -79,7 +82,8 @@ declare namespace cloudSyncManager { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function notifyDataChange(accountId: string, bundleName: string): Promise<void>; @@ -95,7 +99,8 @@ declare namespace cloudSyncManager { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function notifyDataChange(accountId: string, bundleName: string, callback: AsyncCallback<void>): void; @@ -112,7 +117,8 @@ declare namespace cloudSyncManager { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function enableCloud(accountId: string, switches: Record<string, boolean>): Promise<void>; @@ -129,7 +135,8 @@ declare namespace cloudSyncManager { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function enableCloud(accountId: string, switches: Record<string, boolean>, callback: AsyncCallback<void>): void; @@ -145,7 +152,8 @@ declare namespace cloudSyncManager { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function disableCloud(accountId: string): Promise<void>; @@ -161,7 +169,8 @@ declare namespace cloudSyncManager { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function disableCloud(accountId: string, callback: AsyncCallback<void>): void; @@ -171,7 +180,8 @@ declare namespace cloudSyncManager { * @enum { number } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ enum Action { /** @@ -179,7 +189,8 @@ declare namespace cloudSyncManager { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ RETAIN_DATA, @@ -188,7 +199,8 @@ declare namespace cloudSyncManager { * * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ CLEAR_DATA } @@ -206,7 +218,8 @@ declare namespace cloudSyncManager { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function clean(accountId: string, appActions: Record<string, Action>): Promise<void>; @@ -223,7 +236,8 @@ declare namespace cloudSyncManager { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 10 + * @since arkts{ '1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function clean(accountId: string, appActions: Record<string, Action>, callback: AsyncCallback<void>): void; @@ -241,7 +255,8 @@ declare namespace cloudSyncManager { * @throws { BusinessError } 13600001 - IPC error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ function notifyDataChange(userId: number, extraData: ExtraData): Promise<void>; @@ -259,7 +274,8 @@ declare namespace cloudSyncManager { * @throws { BusinessError } 13600001 - IPC error. * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ function notifyDataChange(userId: number, extraData: ExtraData, callback: AsyncCallback<void>): void; @@ -269,7 +285,8 @@ declare namespace cloudSyncManager { * @interface ExtraData * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ interface ExtraData { /** @@ -278,7 +295,8 @@ declare namespace cloudSyncManager { * @type { string } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ eventId: string; /** @@ -287,7 +305,8 @@ declare namespace cloudSyncManager { * @type { string } * @syscap SystemCapability.FileManagement.DistributedFileService.CloudSyncManager * @systemapi - * @since 11 + * @since arkts{ '1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ extraData: string; } diff --git a/api/@ohos.file.fileuri.d.ts b/api/@ohos.file.fileuri.d.ts index 10588c26a5c3c5d31f96a5b1eb3d9eb680c09645..93d80cdf64aa42c0169194334971d62132cc18d2 100644 --- a/api/@ohos.file.fileuri.d.ts +++ b/api/@ohos.file.fileuri.d.ts @@ -34,7 +34,8 @@ import uri from './@ohos.uri'; * @namespace fileUri * @syscap SystemCapability.FileManagement.AppFileService * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace fileUri { /** @@ -50,7 +51,8 @@ declare namespace fileUri { * @extends uri.URI * @syscap SystemCapability.FileManagement.AppFileService * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ class FileUri extends uri.URI { /** @@ -74,7 +76,8 @@ declare namespace fileUri { * @throws { BusinessError } 14300002 - Invalid uri * @syscap SystemCapability.FileManagement.AppFileService * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(uriOrPath: string); @@ -163,7 +166,8 @@ declare namespace fileUri { * <br>2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.AppFileService * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ function getUriFromPath(path: string): string; } diff --git a/api/@ohos.file.fs.d.ets b/api/@ohos.file.fs.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..897a24c2df007cba6080dd5b03f8f5935aa4ebc0 --- /dev/null +++ b/api/@ohos.file.fs.d.ets @@ -0,0 +1,2347 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit CoreFileKit + * @arkts 1.2 + */ + +import { AsyncCallback } from './@ohos.base'; +import stream from './@ohos.util.stream'; + +/** + * FileIO + * + * @namespace fileIo + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +declare namespace fileIo { + + /** + * Mode Indicates the open flags. + * + * @namespace OpenMode + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + namespace OpenMode { + /** + * Read only Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + const READ_ONLY = 0o0; + /** + * Write only Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + const WRITE_ONLY = 0o1; + /** + * Write and Read Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + const READ_WRITE = 0o2; + /** + * If not exist, create file. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + const CREATE = 0o100; + /** + * File truncate len 0. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + const TRUNC = 0o1000; + /** + * File append write. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + const APPEND = 0o2000; + /** + * File open in nonblocking mode. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + const NONBLOCK = 0o4000; + /** + * File is Dir. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + const DIR = 0o200000; + /** + * File is not symbolic link. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + const NOFOLLOW = 0o400000; + /** + * SYNC IO. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + const SYNC = 0o4010000; + } + +/** + * Access file. + * + * @param { string } path - path. + * @param { AccessModeType } [mode = fs.AccessModeType.EXIST] - accessibility mode. + * @returns { Promise<boolean> } Returns the file is accessible or not in promise mode. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function access(path: string, mode?: AccessModeType): Promise<boolean>; + +/** + * Access file. + * + * @param { string } path - path. + * @param { AsyncCallback<boolean> } callback - The callback is used to return the file is accessible or not. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function access(path: string, callback: AsyncCallback<boolean>): void; + +/** + * Access file. + * + * @param { string } path - file path that needs to be checked whether the calling process can access. + * @param { AccessModeType } mode - accessibility mode. + * @param { AccessFlagType } flag - accessibility flag. + * @returns { Promise<boolean> } Returns the file is accessible or not in promise mode. + * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ +function access(path: string, mode: AccessModeType, flag: AccessFlagType): Promise<boolean>; + +/** + * + * Access file with sync interface. + * + * @param { string } path - path. + * @param { AccessModeType } [mode = fs.AccessModeType.EXIST] - accessibility mode. + * @returns { boolean } Returns the file is accessible or not. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function accessSync(path: string, mode?: AccessModeType): boolean; + +/** + * Access file with sync interface. + * + * @param { string } path - file path that needs to be checked whether the calling process can access. + * @param { AccessModeType } mode - accessibility mode. + * @param { AccessFlagType } flag - accessibility flag. + * @returns { boolean } Returns the file is accessible or not. + * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ +function accessSync(path: string, mode: AccessModeType, flag: AccessFlagType): boolean; + +/** + * Close file or fd. + * + * @param { number | File } file - file object or fd. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function close(file: number | File): Promise<void>; + +/** + * Close file or fd. + * + * @param { number | File } file - file object or fd. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function close(file: number | File, callback: AsyncCallback<void>): void; + +/** + * Close file or fd with sync interface. + * + * @param { number | File } file - file object or fd. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function closeSync(file: number | File): void; + +/** + * Copy file. + * + * @param { string | number } src - src. + * @param { string | number } dest - dest. + * @param { number } [mode = 0] - mode. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function copyFile(src: string | number, dest: string | number, mode?: number): Promise<void>; + +/** + * Copy file. + * + * @param { string | number } src - src. + * @param { string | number } dest - dest. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function copyFile(src: string | number, dest: string | number, callback: AsyncCallback<void>): void; + +/** + * Copy file. + * + * @param { string | number } src - src. + * @param { string | number } dest - dest. + * @param { number } [mode = 0] - mode. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function copyFile( + src: string | number, + dest: string | number, + mode: number, + callback: AsyncCallback<void> +): void; + +/** + * Copy file with sync interface. + * + * @param { string | number } src - src. + * @param { string | number } dest - dest. + * @param { number } [mode = 0] - mode. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function copyFileSync(src: string | number, dest: string | number, mode?: number): void; + +/** + * List file. + * + * @param { string } path - path. + * @param { ListFileOptions } [options] - options. + * @returns { Promise<string[]> } Returns an Array containing the name of files or directories that meet the filter criteria. + * If present, Include the subdirectory structure. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function listFile( + path: string, + options?: ListFileOptions +): Promise<string[]>; + +/** + * List file. + * + * @param { string } path - path. + * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories + * that meet the filter criteria in promise mode. If present, Include the subdirectory structure. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function listFile(path: string, callback: AsyncCallback<string[]>): void; + +/** + * List file. + * + * @param { string } path - path. + * @param { ListFileOptions } [options] - options. + * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories + * that meet the filter criteria in promise mode. If present, Include the subdirectory structure. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function listFile( + path: string, + options: ListFileOptions, + callback: AsyncCallback<string[]> +): void; + +/** + * List file with sync interface. + * + * @param { string } path - path. + * @param { ListFileOptions } [options] - options. + * @returns { string[] } Returns an Array containing the name of files or directories that meet the filter criteria. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function listFileSync( + path: string, + options?: ListFileOptions +): string[]; + +/** + * Make dir. + * + * @param { string } path - path. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function mkdir(path: string): Promise<void>; + +/** + * Make dir. + * + * @param { string } path - path. + * @param { boolean } recursion - whether to recursively make directory. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function mkdir(path: string, recursion: boolean): Promise<void>; + +/** + * Make dir. + * + * @param { string } path - path. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function mkdir(path: string, callback: AsyncCallback<void>): void; + +/** + * Make dir. + * + * @param { string } path - path. + * @param { boolean } recursion - whether to recursively make directory. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function mkdir(path: string, recursion: boolean, callback: AsyncCallback<void>): void; + +/** + * Make dir with sync interface. + * + * @param { string } path - path. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function mkdirSync(path: string): void; + +/** + * Make dir with sync interface. + * + * @param { string } path - path. + * @param { boolean } recursion - whether to recursively make directory. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function mkdirSync(path: string, recursion: boolean): void; + + +/** + * Move file. + * + * @param { string } src - source file path. + * @param { string } dest - destination file path. + * @param { number } [mode = 0] - move mode when duplicate file name exists. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900016 - Cross-device link + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900032 - Directory not empty + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ +function moveFile(src: string, dest: string, mode?: number): Promise<void>; + +/** + * Move file. + * + * @param { string } src - source file path. + * @param { string } dest - destination file path. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900016 - Cross-device link + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900032 - Directory not empty + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ +function moveFile(src: string, dest: string, callback: AsyncCallback<void>): void; + +/** + * Move file. + * + * @param { string } src - source file path. + * @param { string } dest - destination file path. + * @param { number } [mode = 0] - move mode when duplicate file name exists. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900016 - Cross-device link + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900032 - Directory not empty + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ +function moveFile(src: string, dest: string, mode: number, callback: AsyncCallback<void>): void; + +/** + * Move file with sync interface. + * + * @param { string } src - source file path. + * @param { string } dest - destination file path. + * @param { number } [mode = 0] - move mode when duplicate file name exists. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900016 - Cross-device link + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900032 - Directory not empty + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ +function moveFileSync(src: string, dest: string, mode?: number): void; + +/** + * Open file. + * + * @param { string } path - path. + * @param { number } [mode = OpenMode.READ_ONLY] - mode. + * @returns { Promise<File> } Returns the File object in Promise mode to record the file descriptor. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900006 - No such device or address + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900029 - Resource deadlock would occur + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function open(path: string, mode?: number): Promise<File>; + +/** + * Open file. + * + * @param { string } path - path. + * @param { AsyncCallback<File> } callback - The callback is used to return the File object to record the file descriptor. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900006 - No such device or address + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900029 - Resource deadlock would occur + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function open(path: string, callback: AsyncCallback<File>): void; + +/** + * Open file. + * + * @param { string } path - path. + * @param { number } [mode = OpenMode.READ_ONLY] - mode. + * @param { AsyncCallback<File> } callback - The callback is used to return the File object to record the file descriptor. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900006 - No such device or address + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900029 - Resource deadlock would occur + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function open(path: string, mode: number, callback: AsyncCallback<File>): void; + +/** + * Open file with sync interface. + * + * @param { string } path - path. + * @param { number } [mode = OpenMode.READ_ONLY] - mode. + * @returns { File } Returns the File object to record the file descriptor. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900006 - No such device or address + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900029 - Resource deadlock would occur + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function openSync(path: string, mode?: number): File; + +/** + * Read file. + * + * @param { number } fd - file descriptor. + * @param { ArrayBuffer } buffer - buffer. + * @param { ReadOptions } [options] - options. + * @returns { Promise<number> } Returns the number of file bytes read to buffer in promise mode. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function read( + fd: number, + buffer: ArrayBuffer, + options?: ReadOptions +): Promise<number>; + +/** + * Read file. + * + * @param { number } fd - file descriptor. + * @param { ArrayBuffer } buffer - buffer. + * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes read to buffer. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function read(fd: number, buffer: ArrayBuffer, callback: AsyncCallback<number>): void; + +/** + * Read file. + * + * @param { number } fd - file descriptor. + * @param { ArrayBuffer } buffer - buffer. + * @param { ReadOptions } [options] - options. + * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes read to buffer. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function read( + fd: number, + buffer: ArrayBuffer, + options: ReadOptions, + callback: AsyncCallback<number> +): void; + +/** + * Read file with sync interface. + * + * @param { number } fd - file descriptor. + * @param { ArrayBuffer } buffer - buffer. + * @param { ReadOptions } [options] - options. + * @returns { number } Returns the number of file bytes read to buffer. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function readSync( + fd: number, + buffer: ArrayBuffer, + options?: ReadOptions +): number; + +/** + * Read text. + * + * @param { string } filePath - file path. + * @param { ReadTextOptions } [options] - options. + * @returns { Promise<string> } Returns the contents of the read file in promise mode. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function readText( + filePath: string, + options?: ReadTextOptions +): Promise<string>; + +/** + * Read text. + * + * @param { string } filePath - file path. + * @param { AsyncCallback<string> } callback - The callback is used to return the contents of the read file. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function readText(filePath: string, callback: AsyncCallback<string>): void; + +/** + * Read text. + * + * @param { string } filePath - file path. + * @param { ReadTextOptions } [options] - options. + * @param { AsyncCallback<string> } callback - The callback is used to return the contents of the read file. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function readText( + filePath: string, + options: ReadTextOptions, + callback: AsyncCallback<string> +): void; + +/** + * Read text with sync interface. + * + * @param { string } filePath - file path. + * @param { ReadTextOptions } [options] - options. + * @returns { string } Returns the contents of the read file. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function readTextSync( + filePath: string, + options?: ReadTextOptions +): string; + +/** + * Delete dir. + * + * @param { string } path - path. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900027 - Read-only file system1 + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900032 - Directory not empty + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function rmdir(path: string): Promise<void>; + +/** + * Delete dir. + * + * @param { string } path - path. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900027 - Read-only file system1 + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900032 - Directory not empty + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function rmdir(path: string, callback: AsyncCallback<void>): void; + +/** + * Delete dir with sync interface. + * + * @param { string } path - path. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900027 - Read-only file system1 + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900032 - Directory not empty + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function rmdirSync(path: string): void; + +/** + * Get file information. + * + * @param { string | number } file - path or file descriptor. + * @returns { Promise<Stat> } Returns the Stat object in promise mode. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function stat(file: string | number): Promise<Stat>; + +/** + * Get file information. + * + * @param { string | number } file - path or file descriptor. + * @param { AsyncCallback<Stat> } callback - The callback is used to return the Stat object. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function stat(file: string | number, callback: AsyncCallback<Stat>): void; + +/** + * Get file information with sync interface. + * + * @param { string | number } file - path or file descriptor. + * @returns { Stat } Returns the Stat object. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function statSync(file: string | number): Stat; + +/** + * Truncate file. + * + * @param { string | number } file - path or file descriptor. + * @param { number } [len = 0] - len. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function truncate(file: string | number, len?: number): Promise<void>; + +/** + * Truncate file. + * + * @param { string | number } file - path or file descriptor. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function truncate(file: string | number, callback: AsyncCallback<void>): void; + +/** + * Truncate file. + * + * @param { string | number } file - path or file descriptor. + * @param { number } [len = 0] - len. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function truncate(file: string | number, len: number, callback: AsyncCallback<void>): void; + +/** + * Truncate file with sync interface. + * + * @param { string | number } file - path or file descriptor. + * @param { number } [len = 0] - len. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function truncateSync(file: string | number, len?: number): void; + +/** + * Delete file. + * + * @param { string } path - path. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function unlink(path: string): Promise<void>; + +/** + * Delete file. + * + * @param { string } path - path. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function unlink(path: string, callback: AsyncCallback<void>): void; + +/** + * Delete file with sync interface. + * + * @param { string } path - path. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function unlinkSync(path: string): void; + +/** + * Write file. + * + * @param { number } fd - file descriptor. + * @param { ArrayBuffer | string } buffer - buffer. + * @param { WriteOptions } [options] - options. + * @returns { Promise<number> } Returns the number of bytes written to the file in promise mode. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function write( + fd: number, + buffer: ArrayBuffer | string, + options?: WriteOptions +): Promise<number>; + +/** + * Write file. + * + * @param { number } fd - file descriptor. + * @param { ArrayBuffer | string } buffer - buffer. + * @param { AsyncCallback<number> } callback - The callback is used to return the number of bytes written to the file. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function write(fd: number, buffer: ArrayBuffer | string, callback: AsyncCallback<number>): void; + +/** + * Write file. + * + * @param { number } fd - file descriptor. + * @param { ArrayBuffer | string } buffer - buffer. + * @param { WriteOptions } [options] - options. + * @param { AsyncCallback<number> } callback - The callback is used to return the number of bytes written to the file. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function write( + fd: number, + buffer: ArrayBuffer | string, + options: WriteOptions, + callback: AsyncCallback<number> +): void; + +/** + * Write file with sync interface. + * + * @param { number } fd - file descriptor. + * @param { ArrayBuffer | string } buffer - buffer. + * @param { WriteOptions } [options] - options. + * @returns { number } Returns the number of bytes written to the file. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +function writeSync( + fd: number, + buffer: ArrayBuffer | string, + options?: WriteOptions +): number; + +/** + * File object. + * + * @interface File + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +interface File { + + /** + * @type { number } + * @readonly + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly fd: number; + + /** + * File path + * + * @type { string } + * @readonly + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 14300002 - Invalid URI + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + readonly path: string; + + /** + * File name + * + * @type { string } + * @readonly + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + readonly name: string; + + /** + * Get parent path of file. + * + * @returns { string } Return the parent path of file. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 14300002 - Invalid URI + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + getParent(): string; + + /** + * Lock file with blocking method. + * + * @param { boolean } exclusive - whether lock is exclusive. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900043 - No record locks available + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + lock(exclusive?: boolean): Promise<void>; + + /** + * Lock file with blocking method. + * + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900043 - No record locks available + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + lock(callback: AsyncCallback<void>): void; + + /** + * Lock file with blocking method. + * + * @param { boolean } exclusive - whether lock is exclusive. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900043 - No record locks available + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + lock(exclusive: boolean, callback: AsyncCallback<void>): void; + + /** + * Try to lock file with returning results immediately. + * + * @param { boolean } exclusive - whether lock is exclusive. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900043 - No record locks available + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + tryLock(exclusive?: boolean): void; + + /** + * Unlock file. + * + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900043 - No record locks available + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + unlock(): void; +} + +/** + * Stat object. + * + * @interface Stat + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +interface Stat { + + /** + * @type { bigint } + * @readonly + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + readonly ino: bigint; + + /** + * @type { number } + * @readonly + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly mode: number; + + /** + * @type { number } + * @readonly + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + readonly uid: number; + + /** + * @type { number } + * @readonly + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + readonly gid: number; + + /** + * @type { number } + * @readonly + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly size: number; + + /** + * @type { number } + * @readonly + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly atime: number; + + /** + * @type { number } + * @readonly + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + readonly mtime: number; + + /** + * @type { number } + * @readonly + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + readonly ctime: number; + + /** + * Returns nanosecond of the access time. + * @type { bigint } + * @readonly + * @throws { BusinessError } 13900042 - Internal error + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + readonly atimeNs?:bigint; + + /** + * Returns nanosecond of the modification time. + * @type { bigint } + * @readonly + * @throws { BusinessError } 13900042 - Internal error + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + readonly mtimeNs?:bigint; + + /** + * Returns nanosecond of the change time. + * @type { bigint } + * @readonly + * @throws { BusinessError } 13900042 - Internal error + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + readonly ctimeNs?:bigint; + + /** + * + * @type { LocationType } + * @readonly + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + readonly location: LocationType; + + /** + * Whether path/fd is block device. + * + * @returns { boolean } Returns whether the path/fd point to a block device or not. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + isBlockDevice(): boolean; + + /** + * Whether path/fd is character device. + * + * @returns { boolean } Returns whether the path/fd point to a character device or not. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + isCharacterDevice(): boolean; + + /** + * Whether path/fd is directory. + * + * @returns { boolean } Returns whether the path/fd point to a directory or not. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + isDirectory(): boolean; + + /** + * Whether path/fd is fifo. + * + * @returns { boolean } Returns whether the path/fd point to a fifo file or not. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + isFIFO(): boolean; + + /** + * Whether path/fd is file. + * + * @returns { boolean } Returns whether the path/fd point to a normal file or not. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + isFile(): boolean; + + /** + * Whether path/fd is socket. + * + * @returns { boolean } Returns whether the path/fd point to a socket file or not. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + isSocket(): boolean; + + /** + * Whether path/fd is symbolic link. + * + * @returns { boolean } Returns whether the path/fd point to a symbolic link or not. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + isSymbolicLink(): boolean; +} + + +/** + * Enumeration of different types of file location. + * + * @enum { number } location type + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ +enum LocationType { + /** + * Local file. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + LOCAL = 1 << 0, + + /** + * Cloud file. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + CLOUD = 1 << 1, +} + +/** + * Enumeration of different types of access mode. + * + * @enum { number } access mode type + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +enum AccessModeType { + /** + * Check if the file exists. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + EXIST = 0, + + /** + * Check if the file has write permission. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + WRITE = 2, + + /** + * Check if the file has read permission. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + READ = 4, + + /** + * Check if the file has read and write permission. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + READ_WRITE = 6, +} + +/** + * Enumeration of different types of access flag. + * + * @enum { number } access flag type + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ +enum AccessFlagType { + /** + * Check if the file is on the local. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 20 + */ + LOCAL = 0, +} + +} + +/** + * File filter type + * + * @interface Filter + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface Filter { + + /** + * The suffix of the file. + * + * @type { ?Array<string> } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + suffix?: Array<string>; + + /** + * The display name of the file. + * + * @type { ?Array<string> } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + displayName?: Array<string>; + + /** + * The mimetype of the file. + * + * @type { ?Array<string> } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + mimeType?: Array<string>; + + /** + * The exceeding size of the file. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + fileSizeOver?: number; + + /** + * The last modification time of the file. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + lastModifiedAfter?: number; + + /** + * Whether to exclude media files. + * + * @type { ?boolean } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + excludeMedia?: boolean; +} + +/** + * Options type + * + * @interface Options + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ +export interface Options { + /** + * The encoding style. + * + * @type { ?string } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ + encoding?: string; +} + +/** + * ReadOptions type + * + * @interface ReadOptions + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface ReadOptions { + /** + * The offset when reading the file. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + offset?: number; + /** + * The length for reading. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + length?: number; +} + +/** + * ReadTextOptions type + * + * @extends ReadOptions + * @interface ReadTextOptions + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface ReadTextOptions extends ReadOptions { + /** + * The encoding style when reading text. + * + * @type { ?string } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + encoding?: string; +} + +/** + * WriteOptions type + * + * @extends Options + * @interface WriteOptions + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface WriteOptions extends Options { + /** + * The offset when writing the file. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + offset?: number; + /** + * The length for writing. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + */ + length?: number; +} + +/** + * ListFileOptions type + * + * @interface ListFileOptions + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @since 20 + */ +export interface ListFileOptions { + /** + * Whether to recursively list files. + * + * @type { ?boolean } + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @since 20 + */ + recursion?: boolean; + + /** + * The number of files listed. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @since 20 + */ + listNum?: number; + + /** + * The filter of listing files. + * + * @type { ?Filter } + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @since 20 + */ + filter?: Filter; +} + +export default fileIo; diff --git a/api/@ohos.file.fs.d.ts b/api/@ohos.file.fs.d.ts index eb6ddfa720b04c712cdd16f86a406c89a561999f..abb15ade14b81d94653c9cd3bf30b09380c5dbdc 100644 --- a/api/@ohos.file.fs.d.ts +++ b/api/@ohos.file.fs.d.ts @@ -57,88 +57,171 @@ export default fileIo; * @since 12 */ declare namespace fileIo { + export { access }; + export { accessSync }; + export { close }; + export { closeSync }; + export { copy }; + export { copyDir }; + export { copyDirSync }; + export { copyFile }; + export { copyFileSync }; + export { createRandomAccessFile }; + export { createRandomAccessFileSync }; + export { createStream }; + export { createStreamSync }; + export { createReadStream }; + export { createWriteStream }; + export { createWatcher }; + export { dup }; + export { fdatasync }; + export { fdatasyncSync }; + export { fdopenStream }; + export { fdopenStreamSync }; + export { fsync }; + export { fsyncSync }; + export { getxattr }; + export { getxattrSync }; + export { listFile }; + export { listFileSync }; + export { lseek }; + export { lstat }; + export { lstatSync }; + export { mkdir }; + export { mkdirSync }; + export { mkdtemp }; + export { mkdtempSync }; + export { moveDir }; + export { moveDirSync }; + export { moveFile }; + export { moveFileSync }; + export { open }; + export { openSync }; + export { read }; + export { readSync }; + export { readLines }; + export { readLinesSync }; + export { readText }; + export { readTextSync }; + export { rename }; + export { renameSync }; + export { rmdir }; + export { rmdirSync }; + export { setxattr }; + export { setxattrSync }; + export { stat }; + export { statSync }; + export { symlink }; + export { symlinkSync }; + export { truncate }; + export { truncateSync }; + export { unlink }; + export { unlinkSync }; + export { utimes }; + export { write }; + export { writeSync }; + export { AccessModeType }; + export { AccessFlagType }; + export { File }; + export { OpenMode }; + export { RandomAccessFile }; + export { ReaderIterator }; + export { Stat }; + export { Stream }; + export { ReadStream }; + export { WriteStream }; + export { AtomicFile }; + export { Watcher }; + export { WhenceType }; + export { TaskSignal }; + export { connectDfs }; + export { disconnectDfs }; + export type { Progress }; + export type { CopyOptions }; + export type { ProgressListener }; + export type { DfsListeners }; /** @@ -156,7 +239,7 @@ declare namespace fileIo { * @crossplatform * @since 10 */ - /** + /** * Mode Indicates the open flags. * * @namespace OpenMode @@ -166,219 +249,219 @@ declare namespace fileIo { * @since 11 */ namespace OpenMode { - /** - * Read only Permission. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 - */ - /** - * Read only Permission. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 - */ - /** - * Read only Permission. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @atomicservice - * @since 11 - */ + /** + * Read only Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ + /** + * Read only Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ + /** + * Read only Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 11 + */ const READ_ONLY = 0o0; - /** - * Write only Permission. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 - */ - /** - * Write only Permission. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 - */ - /** - * Write only Permission. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @atomicservice - * @since 11 - */ + /** + * Write only Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ + /** + * Write only Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ + /** + * Write only Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 11 + */ const WRITE_ONLY = 0o1; - /** - * Write and Read Permission. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 - */ - /** - * Write and Read Permission. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 - */ - /** - * Write and Read Permission. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @atomicservice - * @since 11 - */ + /** + * Write and Read Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ + /** + * Write and Read Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ + /** + * Write and Read Permission. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 11 + */ const READ_WRITE = 0o2; - /** - * If not exist, create file. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 - */ - /** - * If not exist, create file. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 - */ - /** - * If not exist, create file. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @atomicservice - * @since 11 - */ + /** + * If not exist, create file. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ + /** + * If not exist, create file. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ + /** + * If not exist, create file. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 11 + */ const CREATE = 0o100; - /** - * File truncate len 0. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 - */ - /** - * File truncate len 0. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 - */ - /** - * File truncate len 0. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @atomicservice - * @since 11 - */ + /** + * File truncate len 0. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ + /** + * File truncate len 0. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ + /** + * File truncate len 0. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 11 + */ const TRUNC = 0o1000; - /** - * File append write. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 - */ - /** - * File append write. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 - */ - /** - * File append write. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @atomicservice - * @since 11 - */ + /** + * File append write. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ + /** + * File append write. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ + /** + * File append write. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 11 + */ const APPEND = 0o2000; - /** - * File open in nonblocking mode. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 - */ - /** - * File open in nonblocking mode. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 - */ + /** + * File open in nonblocking mode. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ + /** + * File open in nonblocking mode. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ const NONBLOCK = 0o4000; - /** - * File is Dir. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 - */ - /** - * File is Dir. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 - */ + /** + * File is Dir. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ + /** + * File is Dir. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ const DIR = 0o200000; - /** - * File is not symbolic link. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 - */ - /** - * File is not symbolic link. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 - */ + /** + * File is not symbolic link. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ + /** + * File is not symbolic link. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ const NOFOLLOW = 0o400000; - /** - * SYNC IO. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 - */ - /** - * SYNC IO. - * - * @constant - * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 - */ + /** + * SYNC IO. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ + /** + * SYNC IO. + * + * @constant + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ const SYNC = 0o4010000; } } @@ -447,11 +530,16 @@ declare namespace fileIo { * @since 11 */ /** - * Access file. + * Checks whether the file or directory exists or has the operation permission. + * This API uses a promise to return the result. + * If the read, write, or read and write permission verification fails, + * the error code 13900012 (Permission denied) will be thrown. * - * @param { string } path - path. - * @param { AccessModeType } [mode = fs.AccessModeType.EXIST] - accessibility mode. - * @returns { Promise<boolean> } Returns the file is accessible or not in promise mode. + * @param { string } path - Application sandbox path of the file to check. + * @param { AccessModeType } [mode = fs.AccessModeType.EXIST] - Permission on the file to verify. + * <br>If this parameter is left blank, the system checks whether the file exists. + * @returns { Promise<boolean> } Promise used to return a Boolean value. + * <br>Returns true if the file exists; returns false otherwise. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -513,10 +601,11 @@ declare function access(path: string, mode?: AccessModeType): Promise<boolean>; * @since 10 */ /** - * Access file. + * Checks whether a file or directory exists. This API uses an asynchronous callback to return the result. * - * @param { string } path - path. - * @param { AsyncCallback<boolean> } callback - The callback is used to return the file is accessible or not. + * @param { string } path - Application sandbox path of the file to check. + * @param { AsyncCallback<boolean> } callback - Callback invoked to return the result. + * <br>The value true means the file exists; the value false means the opposite. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -537,12 +626,16 @@ declare function access(path: string, mode?: AccessModeType): Promise<boolean>; declare function access(path: string, callback: AsyncCallback<boolean>): void; /** - * Access file. + * Checks whether the file or directory is stored locally or has the operation permission. + * This API uses a promise to return the result.If the read, write, or read and write permission verification fails, + * the error code 13900012 (Permission denied) will be thrown. * - * @param { string } path - file path that needs to be checked whether the calling process can access. - * @param { AccessModeType } mode - accessibility mode. - * @param { AccessFlagType } flag - accessibility flag. - * @returns { Promise<boolean> } Returns the file is accessible or not in promise mode. + * @param { string } path - Application sandbox path of the file to check. + * @param { AccessModeType } mode - Permission on the file to verify. + * @param { AccessFlagType } flag - Location of the file to verify. + * @returns { Promise<boolean> } Promise used to return a Boolean value. + * <br>The value true means the file is a local file and has the related permission. + * <br>The value false means the file does not exist or is on the cloud or a distributed device. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. * @throws { BusinessError } 13900005 - I/O error @@ -623,12 +716,15 @@ declare function access(path: string, mode: AccessModeType, flag: AccessFlagType * @since 11 */ /** - * - * Access file with sync interface. * - * @param { string } path - path. - * @param { AccessModeType } [mode = fs.AccessModeType.EXIST] - accessibility mode. - * @returns { boolean } Returns the file is accessible or not. + * Checks whether a file or directory exists or has the operation permission. + * This API returns the result synchronously.If the read, write, or read and write permission verification fails, + * the error code 13900012 (Permission denied) will be thrown. + * + * @param { string } path - Application sandbox path of the file to check. + * @param { AccessModeType } [mode = fs.AccessModeType.EXIST] - Permission on the file to verify. + * <br>If this parameter is left blank, the system checks whether the file exists. + * @returns { boolean } Returns true if the file exists; returns false otherwise. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -649,12 +745,15 @@ declare function access(path: string, mode: AccessModeType, flag: AccessFlagType declare function accessSync(path: string, mode?: AccessModeType): boolean; /** - * Access file with sync interface. + * Checks whether a file or directory is stored locally or has the operation permission. This API returns the result synchronously. + * If the read, write, or read and write permission verification fails, + * the error code 13900012 (Permission denied) will be thrown. * - * @param { string } path - file path that needs to be checked whether the calling process can access. - * @param { AccessModeType } mode - accessibility mode. - * @param { AccessFlagType } flag - accessibility flag. - * @returns { boolean } Returns the file is accessible or not. + * @param { string } path - Application sandbox path of the file to check. + * @param { AccessModeType } mode - Permission on the file to verify. + * @param { AccessFlagType } flag - Location of the file to verify. + * @returns { boolean } Returns true if the file is a local file and has the related permission; + * <br>returns false if the file does not exist or is on the cloud or a distributed device. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. * @throws { BusinessError } 13900005 - I/O error @@ -701,10 +800,11 @@ declare function accessSync(path: string, mode: AccessModeType, flag: AccessFlag * @since 10 */ /** - * Close file or fd. + * Closes a file or directory. This API uses a promise to return the result. * - * @param { number | File } file - file object or fd. - * @returns { Promise<void> } The promise returned by the function. + * @param { number | File } file - File object or FD of the file to close. + * <br>Once closed, the File object or FD cannot be used for read or write operations. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -748,10 +848,11 @@ declare function close(file: number | File): Promise<void>; * @since 10 */ /** - * Close file or fd. + * Closes a file or directory. This API uses an asynchronous callback to return the result. * - * @param { number | File } file - file object or fd. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { number | File } file - File object or FD of the file to close. + * <br>Once closed, the File object or FD cannot be used for read or write operations. + * @param { AsyncCallback<void> } callback - Callback invoked immediately after the file is closed. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -793,9 +894,10 @@ declare function close(file: number | File, callback: AsyncCallback<void>): void * @since 10 */ /** - * Close file or fd with sync interface. + * Closes a file or directory. This API returns the result synchronously. * - * @param { number | File } file - file object or fd. + * @param { number | File } file - File object or FD of the file to close. + * <br>Once closed, the File object or FD cannot be used for read or write operations. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -846,12 +948,16 @@ declare function closeSync(file: number | File): void; * @since 11 */ /** - * Copy file or directory. + * Copies a file or directory. This API uses a promise to return the result. + * File copy across devices is supported. This API forcibly overwrites the file or directory. + * The input parameter can be the URI of the file or directory. A maximum of 10 cross-device copy tasks are allowed at the same time, + * and the number of files to be copied at a time cannot exceed 500. * - * @param { string } srcUri - src uri. - * @param { string } destUri - dest uri. - * @param { CopyOptions } [options] - options. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } srcUri - URI of the file or directory to copy. + * @param { string } destUri - URI of the destination file or directory. + * @param { CopyOptions } [options] - Callback invoked to provide the copy progress. + * <br>If this parameter is not set, the callback will not be invoked. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. * @throws { BusinessError } 13900001 - Operation not permitted @@ -885,11 +991,14 @@ declare function closeSync(file: number | File): void; declare function copy(srcUri: string, destUri: string, options?: CopyOptions): Promise<void>; /** - * Copy file or directory. + * Copies a file or directory. This API uses an asynchronous callback to return the result. + * File copy across devices is supported. This API forcibly overwrites the file or directory. The file or directory URI is supported. + * A maximum of 10 cross-device copy tasks are allowed at the same time, + * and the number of files to be copied at a time cannot exceed 500. * - * @param { string } srcUri - src uri. - * @param { string } destUri - dest uri. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } srcUri - URI of the file or directory to copy. + * @param { string } destUri - URI of the destination file or directory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. * @throws { BusinessError } 13900001 - Operation not permitted @@ -922,12 +1031,15 @@ declare function copy(srcUri: string, destUri: string, options?: CopyOptions): P declare function copy(srcUri: string, destUri: string, callback: AsyncCallback<void>): void; /** - * Copy file or directory. + * Copies a file or directory. This API uses an asynchronous callback to return the result. + * File copy across devices is supported. This API forcibly overwrites the file or directory. The file or directory URI is supported. + * A maximum of 10 cross-device copy tasks are allowed at the same time, + * and the number of files to be copied at a time cannot exceed 500. * - * @param { string } srcUri - src uri. - * @param { string } destUri - dest uri. - * @param { CopyOptions } options - options. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } srcUri - URI of the file or directory to copy. + * @param { string } destUri - URI of the destination file or directory. + * @param { CopyOptions } options - Callback used to return the copy progress. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. * @throws { BusinessError } 13900001 - Operation not permitted @@ -987,12 +1099,21 @@ declare function copy(srcUri: string, destUri: string, options: CopyOptions, cal * @since 10 */ /** - * Copy directory. + * Copies the source directory to the destination directory. This API uses a promise to return the result. * - * @param { string } src - source path. - * @param { string } dest - destination path. - * @param { number } [mode = 0] - mode. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination folder. + * @param { number } [mode = 0] - Copy mode. The default value is 0. + * <br>0: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory will be moved + * <br>to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>1: Forcibly overwrite the files with the same name in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -1014,14 +1135,53 @@ declare function copy(srcUri: string, destUri: string, options: CopyOptions, cal * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Copies the source directory to the destination directory. This API uses a promise to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination folder. + * @param { number } [mode = 0] - Copy mode. The default value is 0. + * <br>0: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory will be moved + * <br>to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>1: Forcibly overwrite the files with the same name in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function copyDir(src: string, dest: string, mode?: number): Promise<void>; /** - * Copy directory. + * Copies the source directory to the destination directory. + * This API uses an asynchronous callback to return the result. * - * @param { string } src - source path. - * @param { string } dest - destination path. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -1042,28 +1202,79 @@ declare function copyDir(src: string, dest: string, mode?: number): Promise<void * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ +/** + * Copies the source directory to the destination directory. + * This API uses an asynchronous callback to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function copyDir(src: string, dest: string, callback: AsyncCallback<void>): void; /** - * Copy directory. + * Copies the source directory to the destination directory. + * This API uses an asynchronous callback to return the result. * - * @param { string } src - source path. - * @param { string } dest - destination path. - * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Return the callback function. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Callback used to return the result. * @throws { BusinessError } 13900015 - File exists * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ +/** + * Copies the source directory to the destination directory. + * This API uses an asynchronous callback to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Callback used to return the result. + * @throws { BusinessError } 13900015 - File exists + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function copyDir(src: string, dest: string, callback: AsyncCallback<void, Array<ConflictFiles>>): void; /** - * Copy directory. + * Copies the source directory to the destination directory. You can set the copy mode. + * This API uses an asynchronous callback to return the result. * - * @param { string } src - source path. - * @param { string } dest - destination path. - * @param { number } mode - mode. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } mode - Copy mode. The default value is 0. + * <br>0: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory will be moved + * <br>to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>1: Forcibly overwrite the files with the same name in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -1084,19 +1295,89 @@ declare function copyDir(src: string, dest: string, callback: AsyncCallback<void * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ +/** + * Copies the source directory to the destination directory. You can set the copy mode. + * This API uses an asynchronous callback to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } mode - Copy mode. The default value is 0. + * <br>0: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory will be moved + * <br>to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>1: Forcibly overwrite the files with the same name in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function copyDir(src: string, dest: string, mode: number, callback: AsyncCallback<void>): void; /** - * Copy directory. - * - * @param { string } src - source path. - * @param { string } dest - destination path. - * @param { number } mode - mode. - * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Return the callback function. + * Copies the source directory to the destination directory. You can set the copy mode. + * This API uses an asynchronous callback to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } mode - Copy mode. The default value is 0. + * <br>0: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory will be moved + * <br>to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>1: Forcibly overwrite the files with the same name in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Callback used to return the result. * @throws { BusinessError } 13900015 - File exists * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ +/** + * Copies the source directory to the destination directory. You can set the copy mode. + * This API uses an asynchronous callback to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } mode - Copy mode. The default value is 0. + * <br>0: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory will be moved + * <br>to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>1: Forcibly overwrite the files with the same name in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Callback used to return the result. + * @throws { BusinessError } 13900015 - File exists + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function copyDir(src: string, dest: string, mode: number, callback: AsyncCallback<void, Array<ConflictFiles>>): void; /** @@ -1127,11 +1408,20 @@ declare function copyDir(src: string, dest: string, mode: number, callback: Asyn * @since 10 */ /** - * Copy directory with sync interface. + * Copies the source directory to the destination directory. This API returns the result synchronously. * - * @param { string } src - source path. - * @param { string } dest - destination path. - * @param { number } [mode = 0] - mode. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the source directory. + * @param { number } [mode = 0] - Copy mode. The default value is 0. + * <br>0: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory will be moved + * <br>to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>1: Forcibly overwrite the files with the same name in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -1154,6 +1444,44 @@ declare function copyDir(src: string, dest: string, mode: number, callback: Asyn * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Copies the source directory to the destination directory. This API returns the result synchronously. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the source directory. + * @param { number } [mode = 0] - Copy mode. The default value is 0. + * <br>0: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory will be moved + * <br>to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>1: Forcibly overwrite the files with the same name in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function copyDirSync(src: string, dest: string, mode?: number): void; /** @@ -1241,12 +1569,14 @@ declare function copyDirSync(src: string, dest: string, mode?: number): void; * @since 11 */ /** - * Copy file. + * Copies a file. This API uses a promise to return the result. * - * @param { string | number } src - src. - * @param { string | number } dest - dest. - * @param { number } [mode = 0] - mode. - * @returns { Promise<void> } The promise returned by the function. + * @param { string | number } src - Path or FD of the file to copy. + * @param { string | number } dest - Destination path of the file or FD of the file created. + * @param { number } [mode = 0] - Whether to overwrite the file with the same name in the destination directory. + * <br>The default value is 0, which is the only value supported. + * <br>0: overwrite the file with the same name and truncate the part that is not overwritten. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -1326,11 +1656,12 @@ declare function copyFile(src: string | number, dest: string | number, mode?: nu * @since 10 */ /** - * Copy file. + * Copies a file. This API overwrites the file with the same name in the destination directory and truncates the part that is not overwritten. + * This API uses an asynchronous callback to return the result. * - * @param { string | number } src - src. - * @param { string | number } dest - dest. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string | number } src - Path or FD of the file to copy. + * @param { string | number } dest - Destination path of the file or FD of the file created. + * @param { AsyncCallback<void> } callback - Callback invoked immediately after the file is copied. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -1410,13 +1741,16 @@ declare function copyFile(src: string | number, dest: string | number, callback: * @crossplatform * @since 10 */ -/** - * Copy file. - * - * @param { string | number } src - src. - * @param { string | number } dest - dest. - * @param { number } [mode = 0] - mode. - * @param { AsyncCallback<void> } callback - Return the callback function. +/** + * Copies a file. This API overwrites the file with the same name in the destination directory + * and truncates the part that is not overwritten. This API uses an asynchronous callback to return the result. + * + * @param { string | number } src - Path or FD of the file to copy. + * @param { string | number } dest - Destination path of the file or FD of the file created. + * @param { number } [mode = 0] - Whether to overwrite the file with the same name in the destination directory. + * <br>The default value is 0, which is the only value supported. + * <br>0: overwrite the file with the same name and truncate the part that is not overwritten. + * @param { AsyncCallback<void> } callback - Callback invoked immediately after the file is copied. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -1528,11 +1862,13 @@ declare function copyFile( * @since 11 */ /** - * Copy file with sync interface. + * Copies a file. This API returns the result synchronously. * - * @param { string | number } src - src. - * @param { string | number } dest - dest. - * @param { number } [mode = 0] - mode. + * @param { string | number } src - Path or FD of the file to copy. + * @param { string | number } dest - Destination path of the file or FD of the file created. + * @param { number } [mode = 0] - Whether to overwrite the file with the same name in the destination directory. + * <br>The default value is 0, which is the only value supported. + * <br>0: overwrite the file with the same name and truncate the part that is not overwritten. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -1594,11 +1930,20 @@ declare function copyFileSync(src: string | number, dest: string | number, mode? * @since 9 */ /** - * Create class Stream. + * Creates a stream based on a file path. This API uses a promise to return the result. + * To close the stream, use close() of Stream. * - * @param { string } path - path. - * @param { string } mode - mode. - * @returns { Promise<Stream> } return Promise + * @param { string } path - Application sandbox path of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. + * <br>If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * @returns { Promise<Stream> } Promise used to return the stream opened. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -1629,14 +1974,70 @@ declare function copyFileSync(src: string | number, dest: string | number, mode? * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Creates a stream based on a file path. This API uses a promise to return the result. + * To close the stream, use close() of Stream. + * + * @param { string } path - Application sandbox path of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. + * <br>If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * @returns { Promise<Stream> } Promise used to return the stream opened. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900006 - No such device or address + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900029 - Resource deadlock would occur + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ declare function createStream(path: string, mode: string): Promise<Stream>; /** - * Create class Stream. + * Creates a stream based on a file path. This API uses an asynchronous callback to return the result. + * To close the stream, use close() of Stream. * - * @param { string } path - path. - * @param { string } mode - mode. - * @param { AsyncCallback<Stream> } callback - callback. + * @param { string } path - Application sandbox path of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. + * <br>If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * @param { AsyncCallback<Stream> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -1666,6 +2067,52 @@ declare function createStream(path: string, mode: string): Promise<Stream>; * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ +/** + * Creates a stream based on a file path. This API uses an asynchronous callback to return the result. + * To close the stream, use close() of Stream. + * + * @param { string } path - Application sandbox path of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. + * <br>If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * @param { AsyncCallback<Stream> } callback - Callback used to return the result. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900006 - No such device or address + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900029 - Resource deadlock would occur + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ declare function createStream(path: string, mode: string, callback: AsyncCallback<Stream>): void; /** @@ -1704,11 +2151,20 @@ declare function createStream(path: string, mode: string, callback: AsyncCallbac * @since 9 */ /** - * Create class Stream with sync interface. + * Creates a stream based on a file path. This API returns the result synchronously. + * To close the stream, use close() of Stream. * - * @param { string } path - path. - * @param { string } mode - mode. - * @returns { Stream } createStream + * @param { string } path - Application sandbox path of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. + * <br>If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * @returns { Stream } Stream opened. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -1739,6 +2195,53 @@ declare function createStream(path: string, mode: string, callback: AsyncCallbac * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Creates a stream based on a file path. This API returns the result synchronously. + * To close the stream, use close() of Stream. + * + * @param { string } path - Application sandbox path of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. + * <br>If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * @returns { Stream } Stream opened. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900006 - No such device or address + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900029 - Resource deadlock would occur + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ declare function createStreamSync(path: string, mode: string): Stream; @@ -1778,12 +2281,30 @@ declare function createStreamSync(path: string, mode: string): Stream; * @since 10 */ /** - * Create class RandomAccessFile. - * - * @param { string | File } file - file path, object. - * @param { number } [mode = OpenMode.READ_ONLY] - mode. - * @param { RandomAccessFileOptions } [options] - RandomAccessFile options - * @returns { Promise<RandomAccessFile> } Returns the RandomAccessFile object which has been created in promise mode. + * Creates a RandomAccessFile instance based on a file path or file object. + * This API uses a promise to return the result. + * + * @param { string | File } file - Application sandbox path of the file or an opened file object. + * @param { number } [mode = OpenMode.READ_ONLY] - Mode for creating the RandomAccessFile instance. + * <br>This parameter is valid only when the application sandbox path of the file is passed in. + * <br>One of the following options must be specified: + * <br>OpenMode.READ_ONLY(0o0): Create the file in read-only mode. This is the default value. + * <br>OpenMode.WRITE_ONLY(0o1): Create the file in write-only mode. + * <br>OpenMode.READ_WRITE(0o2): Create the file in read/write mode. + * <br>You can also specify the following options, separated by a bitwise OR operator (|). By default, + * <br>no additional options are given. + * <br>OpenMode.CREATE(0o100): If the file does not exist, create it. + * <br>OpenMode.TRUNC(0o1000): If the RandomAccessFile object already exists and is created in write mode, + * <br>truncate the file length to 0. + * <br>OpenMode.APPEND(0o2000): Create the file in append mode. New data will be added to the end + * <br>of the RandomAccessFile object. + * <br>OpenMode.NONBLOCK(0o4000): If path points to a named pipe (also known as a FIFO), block special file, + * <br>or character special file, perform non-blocking operations on the created file and in subsequent I/Os. + * <br>OpenMode.DIR(0o200000): If path does not point to a directory, throw an exception. The write permission is not allowed. + * <br>OpenMode.NOFOLLOW(0o400000): If path points to a symbolic link, throw an exception. + * <br>OpenMode.SYNC(0o4010000): Create a RandomAccessFile instance in synchronous I/O mode. + * @param { RandomAccessFileOptions } [options] - Defines the options used in createRandomAccessFile(). + * @returns { Promise<RandomAccessFile> } Promise used to return the RandomAccessFile instance created. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -1818,10 +2339,11 @@ declare function createRandomAccessFile(file: string | File, mode?: number, options?: RandomAccessFileOptions): Promise<RandomAccessFile>; /** - * Create class RandomAccessFile. + * Creates a RandomAccessFile object in read-only mode based on a file path or file object. + * This API uses an asynchronous callback to return the result. * - * @param { string | File } file - file path, object. - * @param { AsyncCallback<RandomAccessFile> } callback - The callback is used to return the RandomAccessFile object which has been created. + * @param { string | File } file - Application sandbox path of the file or an opened file object. + * @param { AsyncCallback<RandomAccessFile> } callback - Callback used to return the RandomAccessFile instance created. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -1854,11 +2376,29 @@ declare function createRandomAccessFile(file: string | File, mode?: number, declare function createRandomAccessFile(file: string | File, callback: AsyncCallback<RandomAccessFile>): void; /** - * Create class RandomAccessFile. - * - * @param { string | File } file - file path, object. - * @param { number } [mode = OpenMode.READ_ONLY] - mode. - * @param { AsyncCallback<RandomAccessFile> } callback - The callback is used to return the RandomAccessFile object which has been created. + * Creates a RandomAccessFile instance based on a file path or file object. + * This API uses an asynchronous callback to return the result. + * + * @param { string | File } file - Application sandbox path of the file or an opened file object. + * @param { number } [mode = OpenMode.READ_ONLY] - Mode for creating the RandomAccessFile instance. + * <br>This parameter is valid only when the application sandbox path of the file is passed in. + * <br>One of the following options must be specified: + * <br>OpenMode.READ_ONLY(0o0): Create the file in read-only mode. This is the default value. + * <br>OpenMode.WRITE_ONLY(0o1): Create the file in write-only mode. + * <br>OpenMode.READ_WRITE(0o2): Create the file in read/write mode. + * <br>You can also specify the following options, separated by a bitwise OR operator (|). By default, + * <br>no additional options are given. + * <br>OpenMode.CREATE(0o100): If the file does not exist, create it. + * <br>OpenMode.TRUNC(0o1000): If the RandomAccessFile object already exists and is created in write mode, + * <br>truncate the file length to 0. + * <br>OpenMode.APPEND(0o2000): Create the file in append mode. New data will be added to the end + * <br>of the RandomAccessFile object. + * <br>OpenMode.NONBLOCK(0o4000): If path points to a named pipe (also known as a FIFO), block special file, + * <br>or character special file, perform non-blocking operations on the created file and in subsequent I/Os. + * <br>OpenMode.DIR(0o200000): If path does not point to a directory, throw an exception. The write permission is not allowed. + * <br>OpenMode.NOFOLLOW(0o400000): If path points to a symbolic link, throw an exception. + * <br>OpenMode.SYNC(0o4010000): Create a RandomAccessFile instance in synchronous I/O mode. + * @param { AsyncCallback<RandomAccessFile> } callback - Callback used to return the RandomAccessFile instance created. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -1926,12 +2466,29 @@ declare function createRandomAccessFile(file: string | File, mode: number, callb * @since 10 */ /** - * Create class RandomAccessFile with sync interface. - * - * @param { string | File } file - file path, object. - * @param { number } [mode = OpenMode.READ_ONLY] - mode. - * @param { RandomAccessFileOptions } [options] - RandomAccessFile options - * @returns { RandomAccessFile } Returns the RandomAccessFile object which has been created. + * Creates a RandomAccessFile instance based on a file path or file object. + * + * @param { string | File } file - Application sandbox path of the file or an opened file object. + * @param { number } [mode = OpenMode.READ_ONLY] - Mode for creating the RandomAccessFile instance. + * <br>This parameter is valid only when the application sandbox path of the file is passed in. + * <br>One of the following options must be specified: + * <br>OpenMode.READ_ONLY(0o0): Create the file in read-only mode. This is the default value. + * <br>OpenMode.WRITE_ONLY(0o1): Create the file in write-only mode. + * <br>OpenMode.READ_WRITE(0o2): Create the file in read/write mode. + * <br>You can also specify the following options, separated by a bitwise OR operator (|). By default, + * <br>no additional options are given. + * <br>OpenMode.CREATE(0o100): If the file does not exist, create it. + * <br>OpenMode.TRUNC(0o1000): If the RandomAccessFile object already exists and is created in write mode, + * <br>truncate the file length to 0. + * <br>OpenMode.APPEND(0o2000): Create the file in append mode. New data will be added to the end + * <br>of the RandomAccessFile object. + * <br>OpenMode.NONBLOCK(0o4000): If path points to a named pipe (also known as a FIFO), block special file, + * <br>or character special file, perform non-blocking operations on the created file and in subsequent I/Os. + * <br>OpenMode.DIR(0o200000): If path does not point to a directory, throw an exception. The write permission is not allowed. + * <br>OpenMode.NOFOLLOW(0o400000): If path points to a symbolic link, throw an exception. + * <br>OpenMode.SYNC(0o4010000): Create a RandomAccessFile instance in synchronous I/O mode. + * @param { RandomAccessFileOptions } [options] - Defines the options used in createRandomAccessFile(). + * @returns { RandomAccessFile } RandomAccessFile instance created. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -1966,11 +2523,11 @@ declare function createRandomAccessFileSync(file: string | File, mode?: number, options?: RandomAccessFileOptions): RandomAccessFile; /** - * Create file read stream. + * Creates a readable stream. This API returns the result synchronously. * - * @param { string } path - file path. - * @param { ReadStreamOptions } [options] - Optional parameters for ReadStream. - * @returns { ReadStream } Returns the ReadStream object which has been created. + * @param { string } path - Path of the file. + * @param { ReadStreamOptions } [options] - Defines the options used in createReadStream(). + * @returns { ReadStream } ReadStream instance obtained. * @throws { BusinessError } 401 - Parameter error * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory @@ -1990,14 +2547,44 @@ declare function createRandomAccessFileSync(file: string | File, mode?: number, * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Creates a readable stream. This API returns the result synchronously. + * + * @param { string } path - Path of the file. + * @param { ReadStreamOptions } [options] - The options are as follows: + * <br>start (number): start position of the data to read in the file. This parameter is optional. + * <br>By default, data is read from the current position. + * <br>end (number): end position of the data to read in the file. This parameter is optional. + * <br>The default value is the end of the file. + * @returns { ReadStream } ReadStream instance obtained. + * @throws { BusinessError } 401 - Parameter error + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function createReadStream(path: string, options?: ReadStreamOptions): ReadStream; /** - * Create file write stream. + * Creates a writeable stream. This API returns the result synchronously. * - * @param { string } path - file path. - * @param { WriteStreamOptions } [options] - Optional parameters for ReadStream. - * @returns { WriteStream } Returns the WriteStream object which has been created. + * @param { string } path - Path of the file. + * @param { WriteStreamOptions } [options] - Defines the options used in createWriteStream(). + * @returns { WriteStream } ReadStream instance obtained. * @throws { BusinessError } 401 - Parameter error * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory @@ -2019,15 +2606,48 @@ declare function createReadStream(path: string, options?: ReadStreamOptions): Re * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Creates a writeable stream. This API returns the result synchronously. + * + * @param { string } path - Path of the file. + * @param { WriteStreamOptions } [options] - The options are as follows: + * <br>start (number): start position to write the data in the file. This parameter is optional. + * <br>By default, data is written from the current position. + * <br>mode (number): mode for creating the writeable stream. This parameter is optional. + * <br>The default value is the write-only mode. + * @returns { WriteStream } ReadStream instance obtained. + * @throws { BusinessError } 401 - Parameter error + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function createWriteStream(path: string, options?: WriteStreamOptions): WriteStream; /** - * Create watcher to listen for file changes. + * Creates a Watcher object to listen for file or directory changes. * - * @param { string } path - path. - * @param { number } events - listened events. - * @param { WatchEventListener } listener - Callback to invoke when an event of the specified type occurs. - * @returns { Watcher } Returns the Watcher object which has been created. + * @param { string } path - Application sandbox path of the file or directory to observe. + * @param { number } events - Events to observe. Multiple events can be separated by a bitwise OR operator (|). + * @param { WatchEventListener } listener - Callback invoked when an observed event occurs. + * <br>The callback will be invoked each time an observed event occurs. + * @returns { Watcher } Watcher object created. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory @@ -2047,10 +2667,10 @@ declare function createWriteStream(path: string, options?: WriteStreamOptions): declare function createWatcher(path: string, events: number, listener: WatchEventListener): Watcher; /** - * Duplicate fd to File Object. + * Opens a File object based on an FD. * - * @param { number } fd - fd. - * @returns { File } return File + * @param { number } fd - FD of the file. + * @returns { File } File object opened. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2079,10 +2699,10 @@ declare function dup(fd: number): File; * @since 9 */ /** - * Synchronize file metadata. + * Synchronizes the data of a file. This API uses a promise to return the result. * - * @param { number } fd - fd. - * @returns { Promise<void> } The promise returned by the function. + * @param { number } fd - FD of the file. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900020 - Invalid argument @@ -2112,10 +2732,11 @@ declare function fdatasync(fd: number): Promise<void>; * @since 9 */ /** - * Synchronize file metadata. + * Synchronizes the data (excluding the metadata) of a file. + * This API uses an asynchronous callback to return the result. * - * @param { number } fd - fd. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { number } fd - FD of the file. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900020 - Invalid argument @@ -2141,31 +2762,174 @@ declare function fdatasync(fd: number, callback: AsyncCallback<void>): void; * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since 9 + */ +/** + * Synchronizes the data of a file. This API returns the result synchronously. + * + * @param { number } fd - FD of the file. + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 10 + */ +declare function fdatasyncSync(fd: number): void; + +/** + * Opens a stream based on an FD. This API uses a promise to return the result. To close the stream, + * use close() of Stream. + * + * @param { number } fd - FD of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. If the file does not exist, + * <br>create a file. If the file exists, write data to the end of the file (the original content of the file is reserved). + * @returns { Promise<Stream> } Returns the Stream object in promise mode. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900006 - No such device or address + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900029 - Resource deadlock would occur + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ +/** + * Opens a stream based on an FD. This API uses a promise to return the result. To close the stream, + * use close() of Stream. + * + * @param { number } fd - FD of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. If the file does not exist, + * <br>create a file. If the file exists, write data to the end of the file (the original content of the file is reserved). + * @returns { Promise<Stream> } Returns the Stream object in promise mode. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900006 - No such device or address + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900029 - Resource deadlock would occur + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @since 20 */ +declare function fdopenStream(fd: number, mode: string): Promise<Stream>; + /** - * Synchronize file metadata with sync interface. + * Opens a stream based on an FD. This API uses an asynchronous callback to return the result. + * To close the stream, use close() of Stream. * - * @param { number } fd - fd. - * @throws { BusinessError } 13900005 - I/O error + * @param { number } fd - FD of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. If the file does not exist, + * <br>create a file. If the file exists, write data to the end of the file (the original content of the file is reserved). + * @param { AsyncCallback<Stream> } callback - Callback used to return the result. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900006 - No such device or address * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900017 - No such device + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900022 - Too many open files + * @throws { BusinessError } 13900023 - Text file busy + * @throws { BusinessError } 13900024 - File too large * @throws { BusinessError } 13900025 - No space left on device * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900029 - Resource deadlock would occur + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900038 - Value too large for defined data type * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @crossplatform - * @since 10 + * @since 9 */ -declare function fdatasyncSync(fd: number): void; - /** - * Create class Stream by using fd. + * Opens a stream based on an FD. This API uses an asynchronous callback to return the result. + * To close the stream, use close() of Stream. * - * @param { number } fd - fd. - * @param { string } mode - mode. - * @returns { Promise<Stream> } Returns the Stream object in promise mode. + * @param { number } fd - FD of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. If the file does not exist, + * <br>create a file. If the file exists, write data to the end of the file (the original content of the file is reserved). + * @param { AsyncCallback<Stream> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -2194,16 +2958,24 @@ declare function fdatasyncSync(fd: number): void; * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @atomicservice + * @since 20 */ -declare function fdopenStream(fd: number, mode: string): Promise<Stream>; +declare function fdopenStream(fd: number, mode: string, callback: AsyncCallback<Stream>): void; /** - * Create class Stream by using fd. + * Opens a stream based on an FD. This API returns the result synchronously. To close the stream, use close() of Stream. * - * @param { number } fd - fd. - * @param { string } mode - mode. - * @param { AsyncCallback<Stream> } callback - The callback is used to return the Stream object. + * @param { number } fd - FD of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. If the file does not exist, + * <br>create a file. If the file exists, write data to the end of the file (the original content of the file is reserved). + * @returns { Stream } Returns the Stream object. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -2234,13 +3006,18 @@ declare function fdopenStream(fd: number, mode: string): Promise<Stream>; * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ -declare function fdopenStream(fd: number, mode: string, callback: AsyncCallback<Stream>): void; - /** - * Create class Stream by using fd with sync interface. + * Opens a stream based on an FD. This API returns the result synchronously. To close the stream, use close() of Stream. * - * @param { number } fd - fd. - * @param { string } mode - mode. + * @param { number } fd - FD of the file. + * @param { string } mode - r: Open a file for reading. The file must exist. + * <br>r+: Open a file for both reading and writing. The file must exist. + * <br>w: Open a file for writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>w+: Open a file for both reading and writing. If the file exists, clear its content. If the file does not exist, create a file. + * <br>a: Open a file in append mode for writing at the end of the file. If the file does not exist, create a file. + * <br>If the file exists, write data to the end of the file (the original content of the file is reserved). + * <br>a+: Open a file in append mode for reading or updating at the end of the file. If the file does not exist, + * <br>create a file. If the file exists, write data to the end of the file (the original content of the file is reserved). * @returns { Stream } Returns the Stream object. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory @@ -2270,7 +3047,8 @@ declare function fdopenStream(fd: number, mode: string, callback: AsyncCallback< * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @atomicservice + * @since 20 */ declare function fdopenStreamSync(fd: number, mode: string): Stream; @@ -2290,9 +3068,9 @@ declare function fdopenStreamSync(fd: number, mode: string): Stream; * @since 9 */ /** - * Synchronize file. + * Synchronizes the cached data of a file to storage. This API uses a promise to return the result. * - * @param { number } fd - fd. + * @param { number } fd - FD of the file. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2323,10 +3101,10 @@ declare function fsync(fd: number): Promise<void>; * @since 9 */ /** - * Synchronize file. + * Synchronizes the cached data of a file to storage. This API uses an asynchronous callback to return the result. * - * @param { number } fd - fd. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { number } fd - FD of the file. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900020 - Invalid argument @@ -2355,9 +3133,9 @@ declare function fsync(fd: number, callback: AsyncCallback<void>): void; * @since 9 */ /** - * Synchronize file with sync interface. + * Synchronizes the cached data of a file to storage. This API returns the result synchronously. * - * @param { number } fd - fd. + * @param { number } fd - FD of the file. * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900020 - Invalid argument @@ -2403,12 +3181,12 @@ declare function fsyncSync(fd: number): void; * @since 10 */ /** - * List file. + * Lists all file names in a directory. This API supports recursive listing of all file names and file filtering. + * The returned result starts with a slash (/) and contains the subdirectory. This API uses a promise to return the result. * - * @param { string } path - path. - * @param { ListFileOptions } [options] - options. - * @returns { Promise<string[]> } Returns an Array containing the name of files or directories that meet the filter criteria. - * If present, Include the subdirectory structure. + * @param { string } path - Application sandbox path of the directory. + * @param { ListFileOptions } [options] - Options for filtering files. The files are not filtered by default. + * @returns { Promise<string[]> } Promise used to return the file names listed. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory @@ -2428,7 +3206,7 @@ declare function listFile( * List file. * * @param { string } path - path. - * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories + * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories * that meet the filter criteria in promise mode. If present, Include the subdirectory structure. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2442,7 +3220,7 @@ declare function listFile( * List file. * * @param { string } path - path. - * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories + * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories * that meet the filter criteria in promise mode. If present, Include the subdirectory structure. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2454,11 +3232,10 @@ declare function listFile( * @since 10 */ /** - * List file. + * Lists all file names in a directory. This API uses a promise to return the result. * - * @param { string } path - path. - * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories - * that meet the filter criteria in promise mode. If present, Include the subdirectory structure. + * @param { string } path - Application sandbox path of the directory. + * @param { AsyncCallback<string[]> } callback - Options for filtering files. The files are not filtered by default * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory @@ -2476,7 +3253,7 @@ declare function listFile(path: string, callback: AsyncCallback<string[]>): void * * @param { string } path - path. * @param { object } [options] - options. - * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories + * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories * that meet the filter criteria in promise mode. If present, Include the subdirectory structure. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2491,7 +3268,7 @@ declare function listFile(path: string, callback: AsyncCallback<string[]>): void * * @param { string } path - path. * @param { object } [options] - options. - * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories + * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories * that meet the filter criteria in promise mode. If present, Include the subdirectory structure. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2503,12 +3280,12 @@ declare function listFile(path: string, callback: AsyncCallback<string[]>): void * @since 10 */ /** - * List file. + * Lists all file names in a directory. This API supports recursive listing of all file names and file filtering. + * This API uses an asynchronous callback to return the result. * - * @param { string } path - path. - * @param { ListFileOptions } [options] - options. - * @param { AsyncCallback<string[]> } callback - The callback is used to return an Array containing the name of files or directories - * that meet the filter criteria in promise mode. If present, Include the subdirectory structure. + * @param { string } path - Application sandbox path of the directory. + * @param { ListFileOptions } [options] - Options for filtering files. The files are not filtered by default. + * @param { AsyncCallback<string[]> } callback - Callback used to return the file names listed. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory @@ -2555,11 +3332,12 @@ declare function listFile( * @since 10 */ /** - * List file with sync interface. + * Lists all file names in a directory. This API returns the result synchronously. + * This API supports recursive listing of all file names and file filtering. * - * @param { string } path - path. - * @param { ListFileOptions } [options] - options. - * @returns { string[] } Returns an Array containing the name of files or directories that meet the filter criteria. + * @param { string } path - Application sandbox path of the directory. + * @param { ListFileOptions } [options] - Options for filtering files. The files are not filtered by default. + * @returns { string[] } List of the file names obtained. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory @@ -2591,11 +3369,12 @@ declare function listFileSync( * @since 11 */ /** - * Reposition file offset. + * Adjusts the position of the file offset pointer. * - * @param { number } fd - file descriptor. - * @param { number } offset - file offset. - * @param { WhenceType } [whence = WhenceType.SEEK_SET] - directive whence. + * @param { number } fd - FD of the file. + * @param { number } offset - Number of bytes to move the offset. + * @param { WhenceType } [whence = WhenceType.SEEK_SET] - Where to start the offset. + * <br>If this parameter is not specified, the file start position is used by default. * @returns { number } Returns the file offset relative to starting position of file. * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900020 - Invalid argument @@ -2609,10 +3388,11 @@ declare function listFileSync( declare function lseek(fd: number, offset: number, whence?: WhenceType): number; /** - * Stat link file. + * Obtains information about a symbolic link that is used to refer to a file or directory. + * This API uses a promise to return the result. * - * @param { string } path - path. - * @returns { Promise<Stat> } Returns the Stat object in promise mode. + * @param { string } path - Application sandbox path of the file. + * @returns { Promise<Stat> } Promise used to return the symbolic link information obtained. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory @@ -2626,13 +3406,34 @@ declare function lseek(fd: number, offset: number, whence?: WhenceType): number; * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ +/** + * Obtains information about a symbolic link that is used to refer to a file or directory. + * This API uses a promise to return the result. + * + * @param { string } path - Application sandbox path of the file. + * @returns { Promise<Stat> } Promise used to return the symbolic link information obtained. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function lstat(path: string): Promise<Stat>; /** - * Stat link file. + * Obtains information about a symbolic link that is used to refer to a file or directory. + * This API uses an asynchronous callback to return the result. * - * @param { string } path - path. - * @param { AsyncCallback<Stat> } callback - The callback is used to return the Stat object. + * @param { string } path - Application sandbox path of the file. + * @param { AsyncCallback<Stat> } callback - Callback used to return the symbolic link information obtained. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory @@ -2646,13 +3447,34 @@ declare function lstat(path: string): Promise<Stat>; * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ +/** + * Obtains information about a symbolic link that is used to refer to a file or directory. + * This API uses an asynchronous callback to return the result. + * + * @param { string } path - Application sandbox path of the file. + * @param { AsyncCallback<Stat> } callback - Callback used to return the symbolic link information obtained. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function lstat(path: string, callback: AsyncCallback<Stat>): void; /** - * Stat link file with sync interface. + * Obtains information about a symbolic link that is used to refer to a file or directory. + * This API returns the result synchronously. * - * @param { string } path - path. - * @returns { Stat } Returns the Stat object. + * @param { string } path - Application sandbox path of the file. + * @returns { Stat } File information obtained. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory @@ -2666,6 +3488,26 @@ declare function lstat(path: string, callback: AsyncCallback<Stat>): void; * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ +/** + * Obtains information about a symbolic link that is used to refer to a file or directory. + * This API returns the result synchronously. + * + * @param { string } path - Application sandbox path of the file. + * @returns { Stat } File information obtained. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function lstatSync(path: string): Stat; /** @@ -2716,10 +3558,10 @@ declare function lstatSync(path: string): Stat; * @since 10 */ /** - * Make dir. + * Creates a directory. This API uses a promise to return the result. * - * @param { string } path - path. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } path - Application sandbox path of the directory. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2743,11 +3585,12 @@ declare function lstatSync(path: string): Stat; declare function mkdir(path: string): Promise<void>; /** - * Make dir. + * Creates a directory. This API uses a promise to return the result. The value true means to create a directory recursively. * - * @param { string } path - path. - * @param { boolean } recursion - whether to recursively make directory. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } path - Application sandbox path of the directory. + * @param { boolean } recursion - Whether to create a directory recursively. + * <br>The value true means to create a directory recursively. The value false means to create a single-level directory. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2767,6 +3610,33 @@ declare function mkdir(path: string): Promise<void>; * @atomicservice * @since 11 */ +/** + * Creates a directory. This API uses a promise to return the result. The value true means to create a directory recursively. + * + * @param { string } path - Application sandbox path of the directory. + * @param { boolean } recursion - Whether to create a directory recursively. + * <br>The value true means to create a directory recursively. The value false means to create a single-level directory. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ declare function mkdir(path: string, recursion: boolean): Promise<void>; /** @@ -2817,10 +3687,10 @@ declare function mkdir(path: string, recursion: boolean): Promise<void>; * @since 10 */ /** - * Make dir. + * Creates a directory. This API uses an asynchronous callback to return the result. * - * @param { string } path - path. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } path - Application sandbox path of the directory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2844,11 +3714,13 @@ declare function mkdir(path: string, recursion: boolean): Promise<void>; declare function mkdir(path: string, callback: AsyncCallback<void>): void; /** - * Make dir. + * Creates a directory. This API uses an asynchronous callback to return the result. + * The value true means to create a directory recursively. * - * @param { string } path - path. - * @param { boolean } recursion - whether to recursively make directory. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } path - Application sandbox path of the directory. + * @param { boolean } recursion - Whether to create a directory recursively. + * <br>The value true means to create a directory recursively. The value false means to create a single-level directory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2868,6 +3740,34 @@ declare function mkdir(path: string, callback: AsyncCallback<void>): void; * @atomicservice * @since 11 */ +/** + * Creates a directory. This API uses an asynchronous callback to return the result. + * The value true means to create a directory recursively. + * + * @param { string } path - Application sandbox path of the directory. + * @param { boolean } recursion - Whether to create a directory recursively. + * <br>The value true means to create a directory recursively. The value false means to create a single-level directory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ declare function mkdir(path: string, recursion: boolean, callback: AsyncCallback<void>): void; /** @@ -2916,9 +3816,9 @@ declare function mkdir(path: string, recursion: boolean, callback: AsyncCallback * @since 10 */ /** - * Make dir with sync interface. + * Creates a directory. This API returns the result synchronously. * - * @param { string } path - path. + * @param { string } path - Application sandbox path of the directory. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2939,13 +3839,89 @@ declare function mkdir(path: string, recursion: boolean, callback: AsyncCallback * @atomicservice * @since 11 */ -declare function mkdirSync(path: string): void; - +declare function mkdirSync(path: string): void; + +/** + * Creates a directory. This API returns the result synchronously. The value true means to create a directory recursively. + * + * @param { string } path - Application sandbox path of the directory. + * @param { boolean } recursion - Whether to create a directory recursively. + * <br>The value true means to create a directory recursively. The value false means to create a single-level directory. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @since 11 + */ +/** + * Creates a directory. This API returns the result synchronously. The value true means to create a directory recursively. + * + * @param { string } path - Application sandbox path of the directory. + * @param { boolean } recursion - Whether to create a directory recursively. + * <br>The value true means to create a directory recursively. The value false means to create a single-level directory. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ +declare function mkdirSync(path: string, recursion: boolean): void; + +/** + * Make temp dir. + * + * @param { string } prefix - dir prefix. + * @returns { Promise<string> } Returns the path to the new directory in promise mode. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 9 + */ /** - * Make dir with sync interface. + * Creates a temporary directory. This API uses a promise to return the result. * - * @param { string } path - path. - * @param { boolean } recursion - whether to recursively make directory. + * @param { string } prefix - String to be replaced with six randomly generated characters to create a unique temporary directory. + * @returns { Promise<string> } Promise used to return the directory created. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2962,16 +3938,16 @@ declare function mkdirSync(path: string): void; * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @atomicservice - * @since 11 + * @crossplatform + * @since 10 */ -declare function mkdirSync(path: string, recursion: boolean): void; +declare function mkdtemp(prefix: string): Promise<string>; /** * Make temp dir. * * @param { string } prefix - dir prefix. - * @returns { Promise<string> } Returns the path to the new directory in promise mode. + * @param { AsyncCallback<string> } callback - The callback is used to return the path to the new directory. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -2991,10 +3967,11 @@ declare function mkdirSync(path: string, recursion: boolean): void; * @since 9 */ /** - * Make temp dir. + * Creates a temporary directory. This API uses an asynchronous callback to return the result. + * The directory name is created by replacing a string (specified by prefix) with six randomly generated characters. * - * @param { string } prefix - dir prefix. - * @returns { Promise<string> } Returns the path to the new directory in promise mode. + * @param { string } prefix - String to be replaced with six randomly generated characters to create a unique temporary directory. + * @param { AsyncCallback<string> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -3014,13 +3991,13 @@ declare function mkdirSync(path: string, recursion: boolean): void; * @crossplatform * @since 10 */ -declare function mkdtemp(prefix: string): Promise<string>; +declare function mkdtemp(prefix: string, callback: AsyncCallback<string>): void; /** - * Make temp dir. + * Make temp dir with sync interface. * * @param { string } prefix - dir prefix. - * @param { AsyncCallback<string> } callback - The callback is used to return the path to the new directory. + * @returns { string } Returns the path to the new directory. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -3040,10 +4017,11 @@ declare function mkdtemp(prefix: string): Promise<string>; * @since 9 */ /** - * Make temp dir. + * Creates a temporary directory. This API returns the result synchronously. + * The directory name is created by replacing a string (specified by prefix) with six randomly generated characters. * - * @param { string } prefix - dir prefix. - * @param { AsyncCallback<string> } callback - The callback is used to return the path to the new directory. + * @param { string } prefix - String to be replaced with six randomly generated characters to create a unique temporary directory. + * @returns { string } Unique path generated. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -3063,64 +4041,105 @@ declare function mkdtemp(prefix: string): Promise<string>; * @crossplatform * @since 10 */ -declare function mkdtemp(prefix: string, callback: AsyncCallback<string>): void; +declare function mkdtempSync(prefix: string): string; /** - * Make temp dir with sync interface. + * Moves the source directory to the destination directory. This API uses a promise to return the result. * - * @param { string } prefix - dir prefix. - * @returns { string } Returns the path to the new directory. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } [mode = 0] - Move mode. The default value is 0. + * <br>0: Throw an exception if a directory conflict occurs. + * <br>An exception will be thrown if the destination directory contains a non-empty directory with the same name as the source directory. + * <br>1: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory + * <br>will be moved to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>2: Forcibly overwrite the conflicting files in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * <br>3: Forcibly overwrite the conflicting directory. + * <br>The source directory is moved to the destination directory, and the content of the moved directory is the + * <br>same as that of the source directory. If the destination directory contains a directory with the same name + * <br>as the source directory, all original files in the directory will be deleted. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900016 - Cross-device link * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system * @throws { BusinessError } 13900028 - Too many links - * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900032 - Directory not empty * @throws { BusinessError } 13900033 - Too many symbolic links encountered * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since 10 */ /** - * Make temp dir with sync interface. + * Moves the source directory to the destination directory. This API uses a promise to return the result. * - * @param { string } prefix - dir prefix. - * @returns { string } Returns the path to the new directory. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } [mode = 0] - Move mode. The default value is 0. + * <br>0: Throw an exception if a directory conflict occurs. + * <br>An exception will be thrown if the destination directory contains a non-empty directory with the same name as the source directory. + * <br>1: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory + * <br>will be moved to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>2: Forcibly overwrite the conflicting files in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * <br>3: Forcibly overwrite the conflicting directory. + * <br>The source directory is moved to the destination directory, and the content of the moved directory is the + * <br>same as that of the source directory. If the destination directory contains a directory with the same name + * <br>as the source directory, all original files in the directory will be deleted. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900016 - Cross-device link * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system * @throws { BusinessError } 13900028 - Too many links - * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900032 - Directory not empty * @throws { BusinessError } 13900033 - Too many symbolic links encountered * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO * @crossplatform - * @since 10 + * @since 20 */ -declare function mkdtempSync(prefix: string): string; +declare function moveDir(src: string, dest: string, mode?: number): Promise<void>; /** - * Move directory. + * Moves the source directory to the destination directory. This API uses an asynchronous callback to return the result. * - * @param { string } src - source file path. - * @param { string } dest - destination file path. - * @param { number } [mode = 0] - move mode when duplicate file name exists. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -3128,7 +4147,6 @@ declare function mkdtempSync(prefix: string): string; * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900013 - Bad address * @throws { BusinessError } 13900014 - Device or resource busy - * @throws { BusinessError } 13900015 - File exists * @throws { BusinessError } 13900016 - Cross-device link * @throws { BusinessError } 13900018 - Not a directory * @throws { BusinessError } 13900019 - Is a directory @@ -3143,14 +4161,12 @@ declare function mkdtempSync(prefix: string): string; * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ -declare function moveDir(src: string, dest: string, mode?: number): Promise<void>; - /** - * Move directory. + * Moves the source directory to the destination directory. This API uses an asynchronous callback to return the result. * - * @param { string } src - source file path. - * @param { string } dest - destination file path. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -3170,28 +4186,56 @@ declare function moveDir(src: string, dest: string, mode?: number): Promise<void * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 10 + * @crossplatform + * @since 20 */ declare function moveDir(src: string, dest: string, callback: AsyncCallback<void>): void; /** - * Move directory. + * Moves the source directory to the destination directory. This API uses an asynchronous callback to return the result. * - * @param { string } src - source file path. - * @param { string } dest - destination file path. - * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Return the callback function. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Callback used to return the result. * @throws { BusinessError } 13900015 - File exists * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ +/** + * Moves the source directory to the destination directory. This API uses an asynchronous callback to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Callback used to return the result. + * @throws { BusinessError } 13900015 - File exists + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function moveDir(src: string, dest: string, callback: AsyncCallback<void, Array<ConflictFiles>>): void; /** - * Move directory. - * - * @param { string } src - source file path. - * @param { string } dest - destination file path. - * @param { number } mode - move mode when duplicate file name exists. + * Moves the source directory to the destination directory. You can set the move mode. + * This API uses an asynchronous callback to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } mode - Move mode. The default value is 0. + * <br>0: Throw an exception if a directory conflict occurs. + * <br>An exception will be thrown if the destination directory contains a non-empty directory with the same name as the source directory. + * <br>1: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory + * <br>will be moved to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>2: Forcibly overwrite the conflicting files in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * <br>3: Forcibly overwrite the conflicting directory. + * <br>The source directory is moved to the destination directory, and the content of the moved directory is the + * <br>same as that of the source directory. If the destination directory contains a directory with the same name + * <br>as the source directory, all original files in the directory will be deleted. * @param { AsyncCallback<void> } callback - Return the callback function. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory @@ -3214,27 +4258,131 @@ declare function moveDir(src: string, dest: string, callback: AsyncCallback<void * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ +/** + * Moves the source directory to the destination directory. You can set the move mode. + * This API uses an asynchronous callback to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } mode - Move mode. The default value is 0. + * <br>0: Throw an exception if a directory conflict occurs. + * <br>An exception will be thrown if the destination directory contains a non-empty directory with the same name as the source directory. + * <br>1: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory + * <br>will be moved to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>2: Forcibly overwrite the conflicting files in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * <br>3: Forcibly overwrite the conflicting directory. + * <br>The source directory is moved to the destination directory, and the content of the moved directory is the + * <br>same as that of the source directory. If the destination directory contains a directory with the same name + * <br>as the source directory, all original files in the directory will be deleted. + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900016 - Cross-device link + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900032 - Directory not empty + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function moveDir(src: string, dest: string, mode: number, callback: AsyncCallback<void>): void; /** - * Move directory. - * - * @param { string } src - source file path. - * @param { string } dest - destination file path. - * @param { number } mode - move mode when duplicate file name exists. - * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Return the callback function. + * Moves the source directory to the destination directory. You can set the move mode. + * This API uses an asynchronous callback to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } mode - Move mode. The default value is 0. + * <br>0: Throw an exception if a directory conflict occurs. + * <br>An exception will be thrown if the destination directory contains a non-empty directory with the same name as the source directory. + * <br>1: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory + * <br>will be moved to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>2: Forcibly overwrite the conflicting files in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * <br>3: Forcibly overwrite the conflicting directory. + * <br>The source directory is moved to the destination directory, and the content of the moved directory is the + * <br>same as that of the source directory. If the destination directory contains a directory with the same name + * <br>as the source directory, all original files in the directory will be deleted. + * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Callback used to return the result. * @throws { BusinessError } 13900015 - File exists * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ +/** + * Moves the source directory to the destination directory. You can set the move mode. + * This API uses an asynchronous callback to return the result. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } mode - Move mode. The default value is 0. + * <br>0: Throw an exception if a directory conflict occurs. + * <br>An exception will be thrown if the destination directory contains a non-empty directory with the same name as the source directory. + * <br>1: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory + * <br>will be moved to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>2: Forcibly overwrite the conflicting files in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * <br>3: Forcibly overwrite the conflicting directory. + * <br>The source directory is moved to the destination directory, and the content of the moved directory is the + * <br>same as that of the source directory. If the destination directory contains a directory with the same name + * <br>as the source directory, all original files in the directory will be deleted. + * @param { AsyncCallback<void, Array<ConflictFiles>> } callback - Callback used to return the result. + * @throws { BusinessError } 13900015 - File exists + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function moveDir(src: string, dest: string, mode: number, callback: AsyncCallback<void, Array<ConflictFiles>>): void; /** - * Move directory with sync interface. + * Moves the source directory to the destination directory. This API returns the result synchronously. * - * @param { string } src - source file path. - * @param { string } dest - destination file path. - * @param { number } [mode = 0] - move mode when duplicate file name exists. + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } [mode = 0] - Move mode. The default value is 0. + * <br>0: Throw an exception if a directory conflict occurs. + * <br>An exception will be thrown if the destination directory contains a non-empty directory with the same name as the source directory. + * <br>1: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory + * <br>will be moved to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>2: Forcibly overwrite the conflicting files in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * <br>3: Forcibly overwrite the conflicting directory. + * <br>The source directory is moved to the destination directory, and the content of the moved directory is the + * <br>same as that of the source directory. If the destination directory contains a directory with the same name + * <br>as the source directory, all original files in the directory will be deleted. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -3257,6 +4405,50 @@ declare function moveDir(src: string, dest: string, mode: number, callback: Asyn * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ +/** + * Moves the source directory to the destination directory. This API returns the result synchronously. + * + * @param { string } src - Application sandbox path of the source directory. + * @param { string } dest - Application sandbox path of the destination directory. + * @param { number } [mode = 0] - Move mode. The default value is 0. + * <br>0: Throw an exception if a directory conflict occurs. + * <br>An exception will be thrown if the destination directory contains a non-empty directory with the same name as the source directory. + * <br>1: Throw an exception if a file conflict occurs. + * <br>An exception will be thrown if the destination directory contains a directory with the same name as the source directory, + * <br>and a file with the same name exists in the conflict directory. All the non-conflicting files in the source directory + * <br>will be moved to the destination directory, and the non-conflicting files in the destination directory will be retained. + * <br>The data attribute in the error returned provides information about the conflicting files in the Array<ConflictFiles> format. + * <br>2: Forcibly overwrite the conflicting files in the destination directory. + * <br>When the destination directory contains a directory with the same name as the source directory, + * <br>the files with the same names in the destination directory are overwritten forcibly; + * <br>the files without conflicts in the destination directory are retained. + * <br>3: Forcibly overwrite the conflicting directory. + * <br>The source directory is moved to the destination directory, and the content of the moved directory is the + * <br>same as that of the source directory. If the destination directory contains a directory with the same name + * <br>as the source directory, all original files in the directory will be deleted. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900014 - Device or resource busy + * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900016 - Cross-device link + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900027 - Read-only file system + * @throws { BusinessError } 13900028 - Too many links + * @throws { BusinessError } 13900032 - Directory not empty + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function moveDirSync(src: string, dest: string, mode?: number): void; /** @@ -3289,12 +4481,14 @@ declare function moveDirSync(src: string, dest: string, mode?: number): void; * @since 9 */ /** - * Move file. + * Moves a file. This API uses a promise to return the result. * - * @param { string } src - source file path. - * @param { string } dest - destination file path. - * @param { number } [mode = 0] - move mode when duplicate file name exists. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } src - Application sandbox path of the file to move. + * @param { string } dest - Application sandbox path of the destination file. + * @param { number } [mode = 0] - Move mode. + * <br>The value 0 means to overwrite the file with the same name in the destination directory; + * <br>the value 1 means to throw an exception. The default value is 0. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -3349,11 +4543,12 @@ declare function moveFile(src: string, dest: string, mode?: number): Promise<voi * @since 9 */ /** - * Move file. + * Moves a file and forcibly overwrites the file with the same name in the destination directory. + * This API uses an asynchronous callback to return the result. * - * @param { string } src - source file path. - * @param { string } dest - destination file path. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } src - Application sandbox path of the file to move. + * @param { string } dest - Application sandbox path of the destination file. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -3409,12 +4604,14 @@ declare function moveFile(src: string, dest: string, callback: AsyncCallback<voi * @since 9 */ /** - * Move file. + * Moves a file with the specified mode. This API uses an asynchronous callback to return the result. * - * @param { string } src - source file path. - * @param { string } dest - destination file path. - * @param { number } [mode = 0] - move mode when duplicate file name exists. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } src - Application sandbox path of the file to move. + * @param { string } dest - Application sandbox path of the destination to move. + * @param { number } [mode = 0] - Move mode. + * <br>The value 0 means to overwrite the file with the same name in the destination directory; + * <br>the value 1 means to throw an exception. The default value is 0. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -3469,11 +4666,13 @@ declare function moveFile(src: string, dest: string, mode: number, callback: Asy * @since 9 */ /** - * Move file with sync interface. + * Moves a file. This API returns the result synchronously. * - * @param { string } src - source file path. - * @param { string } dest - destination file path. - * @param { number } [mode = 0] - move mode when duplicate file name exists. + * @param { string } src - Application sandbox path of the file to move. + * @param { string } dest - Application sandbox path of the destination to move. + * @param { number } [mode = 0] - Move mode. + * <br>The value 0 means to overwrite the file with the same name in the destination directory; + * <br>the value 1 means to throw an exception. The default value is 0. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -3608,11 +4807,24 @@ declare function moveFileSync(src: string, dest: string, mode?: number): void; * @since 11 */ /** - * Open file. + * Opens a file or directory. This API uses a promise to return the result. This API supports the use of a URI. * - * @param { string } path - path. - * @param { number } [mode = OpenMode.READ_ONLY] - mode. - * @returns { Promise<File> } Returns the File object in Promise mode to record the file descriptor. + * @param { string } path - Application sandbox path or URI of the file. + * @param { number } [mode = OpenMode.READ_ONLY] - Mode for opening the file. + * <br>You must specify one of the following options. By default, the file is opened in read-only mode. + * <br>OpenMode.READ_ONLY(0o0): Open the file in read-only mode. + * <br>OpenMode.WRITE_ONLY(0o1): Open the file in write-only mode. + * <br>OpenMode.READ_WRITE(0o2): Open the file in read/write mode. + * <br>You can add the following function options in bitwise OR mode. By default, no additional option is added. + * <br>OpenMode.CREATE(0o100): Create a file if the file does not exist. + * <br>OpenMode.TRUNC(0o1000): If the file exists and is opened in write mode, truncate the file length to 0. + * <br>OpenMode.APPEND(0o2000): Open the file in append mode. New data will be added to the end of the file. + * <br>OpenMode.NONBLOCK(0o4000): If path points to a named pipe (also known as a FIFO), block special file, + * <br>or character special file, perform non-blocking operations on the opened file and in subsequent I/Os. + * <br>OpenMode.DIR(0o200000): If path does not point to a directory, throw an exception. The write permission is not allowed. + * <br>OpenMode.NOFOLLOW(0o400000): If path points to a symbolic link, throw an exception. + * <br>OpenMode.SYNC(0o4010000): Open the file in synchronous I/O mode. + * @returns { Promise<File> } Promise used to return the File object. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -3717,10 +4929,10 @@ declare function open(path: string, mode?: number): Promise<File>; * @since 10 */ /** - * Open file. + * Opens a file or directory. This API uses an asynchronous callback to return the result. This API supports the use of a URI. * - * @param { string } path - path. - * @param { AsyncCallback<File> } callback - The callback is used to return the File object to record the file descriptor. + * @param { string } path - Application sandbox path or URI of the file. + * @param { AsyncCallback<File> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -3826,10 +5038,24 @@ declare function open(path: string, callback: AsyncCallback<File>): void; * @since 10 */ /** - * Open file. - * - * @param { string } path - path. - * @param { number } [mode = OpenMode.READ_ONLY] - mode. + * Opens a file or directory with the specified mode. This API uses an asynchronous callback to return the result. + * This API supports the use of a URI. + * + * @param { string } path - Application sandbox path or URI of the file. + * @param { number } [mode = OpenMode.READ_ONLY] - Mode for opening the file. + * <br>You must specify one of the following options. By default, the file is opened in read-only mode. + * <br>OpenMode.READ_ONLY(0o0): Open the file in read-only mode. + * <br>OpenMode.WRITE_ONLY(0o1): Open the file in write-only mode. + * <br>OpenMode.READ_WRITE(0o2): Open the file in read/write mode. + * <br>You can add the following function options in bitwise OR mode. By default, no additional option is added. + * <br>OpenMode.CREATE(0o100): Create a file if the file does not exist. + * <br>OpenMode.TRUNC(0o1000): If the file exists and is opened in write mode, truncate the file length to 0. + * <br>OpenMode.APPEND(0o2000): Open the file in append mode. New data will be added to the end of the file. + * <br>OpenMode.NONBLOCK(0o4000): If path points to a named pipe (also known as a FIFO), block special file, + * <br>or character special file, perform non-blocking operations on the opened file and in subsequent I/Os. + * <br>OpenMode.DIR(0o200000): If path does not point to a directory, throw an exception. The write permission is not allowed. + * <br>OpenMode.NOFOLLOW(0o400000): If path points to a symbolic link, throw an exception. + * <br>OpenMode.SYNC(0o4010000): Open the file in synchronous I/O mode. * @param { AsyncCallback<File> } callback - The callback is used to return the File object to record the file descriptor. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory @@ -3973,10 +5199,23 @@ declare function open(path: string, mode: number, callback: AsyncCallback<File>) * @since 11 */ /** - * Open file with sync interface. - * - * @param { string } path - path. - * @param { number } [mode = OpenMode.READ_ONLY] - mode. + * Opens a file or directory. This API returns the result synchronously. This API supports the use of a URI. + * + * @param { string } path - Application sandbox path or file URI of the file to open. + * @param { number } [mode = OpenMode.READ_ONLY] - Mode for opening the file. + * <br>You must specify one of the following options. By default, the file is opened in read-only mode. + * <br>OpenMode.READ_ONLY(0o0): Open the file in read-only mode. + * <br>OpenMode.WRITE_ONLY(0o1): Open the file in write-only mode. + * <br>OpenMode.READ_WRITE(0o2): Open the file in read/write mode. + * <br>You can add the following function options in bitwise OR mode. By default, no additional option is added. + * <br>OpenMode.CREATE(0o100): Create a file if the file does not exist. + * <br>OpenMode.TRUNC(0o1000): If the file exists and is opened in write mode, truncate the file length to 0. + * <br>OpenMode.APPEND(0o2000): Open the file in append mode. New data will be added to the end of the file. + * <br>OpenMode.NONBLOCK(0o4000): If path points to a named pipe (also known as a FIFO), block special file, + * <br>or character special file, perform non-blocking operations on the opened file and in subsequent I/Os. + * <br>OpenMode.DIR(0o200000): If path does not point to a directory, throw an exception. The write permission is not allowed. + * <br>OpenMode.NOFOLLOW(0o400000): If path points to a symbolic link, throw an exception. + * <br>OpenMode.SYNC(0o4010000): Open the file in synchronous I/O mode. * @returns { File } Returns the File object to record the file descriptor. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory @@ -4073,12 +5312,15 @@ declare function openSync(path: string, mode?: number): File; * @since 11 */ /** - * Read file. + * Reads file data. This API uses a promise to return the result. * - * @param { number } fd - file descriptor. - * @param { ArrayBuffer } buffer - buffer. - * @param { ReadOptions } [options] - options. - * @returns { Promise<number> } Returns the number of file bytes read to buffer in promise mode. + * @param { number } fd - FD of the file. + * @param { ArrayBuffer } buffer - Buffer used to store the file data read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data (it is determined by filePointer plus offset). + * <br>This parameter is optional. By default, data is read from the filePointer. + * @returns { Promise<number> } Promise used to return the length of the data read, in bytes. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -4138,11 +5380,11 @@ declare function read( * @since 10 */ /** - * Read file. + * Reads data from a file. This API uses an asynchronous callback to return the result. * - * @param { number } fd - file descriptor. - * @param { ArrayBuffer } buffer - buffer. - * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes read to buffer. + * @param { number } fd - FD of the file. + * @param { ArrayBuffer } buffer - Buffer used to store the file data read. + * @param { AsyncCallback<number> } callback - Callback used to return the length of the data read, in bytes. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -4199,12 +5441,15 @@ declare function read(fd: number, buffer: ArrayBuffer, callback: AsyncCallback<n * @since 10 */ /** - * Read file. + * Reads data from a file. This API uses an asynchronous callback to return the result. * - * @param { number } fd - file descriptor. - * @param { ArrayBuffer } buffer - buffer. - * @param { ReadOptions } [options] - options. - * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes read to buffer. + * @param { number } fd - FD of the file. + * @param { ArrayBuffer } buffer - Buffer used to store the file data read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data (it is determined by filePointer plus offset). + * <br>This parameter is optional. By default, data is read from the filePointer. + * @param { AsyncCallback<number> } callback - Callback used to return the length of the data read, in bytes. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -4287,12 +5532,15 @@ declare function read( * @since 11 */ /** - * Read file with sync interface. + * Reads data from a file. This API returns the result synchronously. * - * @param { number } fd - file descriptor. - * @param { ArrayBuffer } buffer - buffer. - * @param { ReadOptions } [options] - options. - * @returns { number } Returns the number of file bytes read to buffer. + * @param { number } fd - FD of the file. + * @param { ArrayBuffer } buffer - Buffer used to store the file data read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data (it is determined by filePointer plus offset). + * <br>This parameter is optional. By default, data is read from the filePointer. + * @returns { number } Length of the data read, in bytes. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -4336,11 +5584,14 @@ declare function readSync( * @since 11 */ /** - * Read content line by line. + * Reads the text content of a file line by line. This API uses a promise to return the result. + * Only the files in UTF-8 format are supported. * - * @param { string } filePath - file path. - * @param { Options } [options] - optional parameters - * @returns { Promise<ReaderIterator> } Returns the iterator object in promise mode. + * @param { string } filePath - Application sandbox path of the file. + * @param { Options } [options] - Options for reading the text. The options are as follows: + * <br>encoding (string): format of the data to be encoded. It is valid only when the data is of the string type. + * <br>The default value is 'utf-8', which is the only value supported. + * @returns { Promise<ReaderIterator> } Promise used to return a ReaderIterator object. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900015 - File exists @@ -4360,10 +5611,11 @@ declare function readSync( declare function readLines(filePath: string, options?: Options): Promise<ReaderIterator>; /** - * Read content line by line. + * Reads a file text line by line. This API uses an asynchronous callback to return the result. + * Only the files in UTF-8 format are supported. * - * @param { string } filePath - file path. - * @param { AsyncCallback<ReaderIterator> } callback - The callback is used to return the iterator object. + * @param { string } filePath - Application sandbox path of the file. + * @param { AsyncCallback<ReaderIterator> } callback - Callback used to return a ReaderIterator object. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900015 - File exists @@ -4382,11 +5634,14 @@ declare function readLines(filePath: string, options?: Options): Promise<ReaderI declare function readLines(filePath: string, callback: AsyncCallback<ReaderIterator>): void; /** - * Read content line by line. + * Reads a file text line by line. This API uses an asynchronous callback to return the result. + * Only the files in UTF-8 format are supported. * - * @param { string } filePath - file path. - * @param { Options } options - optional parameters - * @param { AsyncCallback<ReaderIterator> } callback - The callback is used to return the iterator object. + * @param { string } filePath - Application sandbox path of the file. + * @param { Options } options - Options for reading the text. The options are as follows: + * <br>encoding (string): format of the data to be encoded. It is valid only when the data is of the string type. + * <br>The default value is 'utf-8', which is the only value supported. + * @param { AsyncCallback<ReaderIterator> } callback - Callback used to return a ReaderIterator object. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900015 - File exists @@ -4426,10 +5681,12 @@ declare function readLines(filePath: string, options: Options, callback: AsyncCa * @since 11 */ /** - * Read content line by line with sync interface. + * Reads the text content of a file line by line. This API returns the result synchronously. * - * @param { string } filePath - file path. - * @param { Options } [options] - optional parameters + * @param { string } filePath - Application sandbox path of the file. + * @param { Options } [options] - Options for reading the text. The options are as follows: + * <br>encoding (string): format of the data to be encoded. It is valid only when the data is of the string type. + * <br>The default value is 'utf-8', which is the only value supported. * @returns { ReaderIterator } Returns the iterator object. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900012 - Permission denied @@ -4519,11 +5776,15 @@ declare function readLinesSync(filePath: string, options?: Options): ReaderItera * @since 11 */ /** - * Read text. + * Reads the text content of a file. This API uses a promise to return the result. * - * @param { string } filePath - file path. - * @param { ReadTextOptions } [options] - options. - * @returns { Promise<string> } Returns the contents of the read file in promise mode. + * @param { string } filePath - Application sandbox path of the file. + * @param { ReadTextOptions } [options] - The options are as follows: + * <br>offset (number): start position to read the data. This parameter is optional. By default, data is read from the current position. + * <br>length (number): length of the data to read. This parameter is optional. The default value is the file length. + * <br>encoding (string): format of the data to be encoded. It is valid only when the data is of the string type. + * <br>The default value is 'utf-8', which is the only value supported. + * @returns { Promise<string> } Promise used to return the file content read. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -4592,10 +5853,10 @@ declare function readText( * @since 10 */ /** - * Read text. + * Reads the text content of a file. This API uses an asynchronous callback to return the result. * - * @param { string } filePath - file path. - * @param { AsyncCallback<string> } callback - The callback is used to return the contents of the read file. + * @param { string } filePath - Application sandbox path of the file. + * @param { AsyncCallback<string> } callback - Callback used to return the content read. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -4662,11 +5923,15 @@ declare function readText(filePath: string, callback: AsyncCallback<string>): vo * @since 10 */ /** - * Read text. + * Reads the text content of a file. This API uses an asynchronous callback to return the result. * - * @param { string } filePath - file path. - * @param { ReadTextOptions } [options] - options. - * @param { AsyncCallback<string> } callback - The callback is used to return the contents of the read file. + * @param { string } filePath - Application sandbox path of the file. + * @param { ReadTextOptions } [options] - The options are as follows: + * <br>offset (number): start position to read the data. This parameter is optional. By default, data is read from the current position. + * <br>length (number): length of the data to read. This parameter is optional. The default value is the file length. + * <br>encoding (string): format of the data to be encoded. It is valid only when the data is of the string type. + * <br>The default value is 'utf-8', which is the only value supported. + * @param { AsyncCallback<string> } callback - Callback used to return the content read. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -4761,10 +6026,14 @@ declare function readText( * @since 11 */ /** - * Read text with sync interface. + * Reads the text of a file. This API returns the result synchronously. * - * @param { string } filePath - file path. - * @param { ReadTextOptions } [options] - options. + * @param { string } filePath - Application sandbox path of the file. + * @param { ReadTextOptions } [options] - The options are as follows: + * <br>offset (number): start position to read the data. This parameter is optional. By default, data is read from the current position. + * <br>length (number): length of the data to read. This parameter is optional. The default value is the file length. + * <br>encoding (string): format of the data to be encoded. It is valid only when the data is of the string type. + * <br>The default value is 'utf-8', which is the only value supported. * @returns { string } Returns the contents of the read file. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call @@ -4848,11 +6117,11 @@ declare function readTextSync( * @since 10 */ /** - * Rename file. + * Renames a file or directory. This API uses a promise to return the result. * - * @param { string } oldPath - oldPath. - * @param { string } newPath - newPath. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } oldPath - Application sandbox path of the file or directory to rename. + * @param { string } newPath - Application sandbox path of the renamed file or directory. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -4937,11 +6206,11 @@ declare function rename(oldPath: string, newPath: string): Promise<void>; * @since 10 */ /** - * Rename file. + * Renames a file or directory. This API uses an asynchronous callback to return the result. * - * @param { string } oldPath - oldPath. - * @param { string } newPath - newPath. - * @param { AsyncCallback<void> } callback - Returns the callback function. + * @param { string } oldPath - Application sandbox path of the file or directory to rename. + * @param { string } newPath - Application sandbox path of the renamed file or directory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -5024,10 +6293,10 @@ declare function rename(oldPath: string, newPath: string, callback: AsyncCallbac * @since 10 */ /** - * Rename file with sync interface. + * Renames a file or directory. This API returns the result synchronously. * - * @param { string } oldPath - oldPath. - * @param { string } newPath - newPath. + * @param { string } oldPath - Application sandbox path of the file or directory to rename. + * @param { string } newPath - Application sandbox path of the renamed file or directory. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -5096,10 +6365,10 @@ declare function renameSync(oldPath: string, newPath: string): void; * @since 10 */ /** - * Delete dir. + * Removes a directory. This API uses a promise to return the result. * - * @param { string } path - path. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } path - Application sandbox path of the directory. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900011 - Out of memory @@ -5161,10 +6430,10 @@ declare function rmdir(path: string): Promise<void>; * @since 10 */ /** - * Delete dir. + * Removes a directory. This API uses an asynchronous callback to return the result. * - * @param { string } path - path. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } path - Application sandbox path of the directory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900011 - Out of memory @@ -5224,9 +6493,9 @@ declare function rmdir(path: string, callback: AsyncCallback<void>): void; * @since 10 */ /** - * Delete dir with sync interface. + * Removes a directory. This API returns the result synchronously. * - * @param { string } path - path. + * @param { string } path - Application sandbox path of the directory. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900011 - Out of memory @@ -5290,10 +6559,10 @@ declare function rmdirSync(path: string): void; * @since 10 */ /** - * Get file information. + * Obtains detailed attribute information of a file or directory. This API uses a promise to return the result. * - * @param { string | number } file - path or file descriptor. - * @returns { Promise<Stat> } Returns the Stat object in promise mode. + * @param { string | number } file - Application sandbox path or FD of the file. + * @returns { Promise<Stat> } Promise used to return detailed file information. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -5358,10 +6627,11 @@ declare function stat(file: string | number): Promise<Stat>; * @since 10 */ /** - * Get file information. + * Obtains detailed attribute information of a file or directory. + * This API uses an asynchronous callback to return the result. * - * @param { string | number } file - path or file descriptor. - * @param { AsyncCallback<Stat> } callback - The callback is used to return the Stat object. + * @param { string | number } file - Application sandbox path or FD of the file. + * @param { AsyncCallback<Stat> } callback - Callback used to return the file information obtained. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -5426,10 +6696,10 @@ declare function stat(file: string | number, callback: AsyncCallback<Stat>): voi * @since 10 */ /** - * Get file information with sync interface. + * Obtains detailed attribute information of a file or directory. This API returns the result synchronously. * - * @param { string | number } file - path or file descriptor. - * @returns { Stat } Returns the Stat object. + * @param { string | number } file - Application sandbox path or FD of the file. + * @returns { Stat } File information obtained. * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -5451,11 +6721,11 @@ declare function stat(file: string | number, callback: AsyncCallback<Stat>): voi declare function statSync(file: string | number): Stat; /** - * Link file. + * Creates a symbolic link based on a file path. This API uses a promise to return the result. * - * @param { string } target - target. - * @param { string } srcPath - srcPath. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } target - Application sandbox path of the target file. + * @param { string } srcPath - Application sandbox path of the symbolic link. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900005 - I/O error @@ -5476,11 +6746,11 @@ declare function statSync(file: string | number): Stat; declare function symlink(target: string, srcPath: string): Promise<void>; /** - * Link file. + * Creates a symbolic link based on a file path. This API uses an asynchronous callback to return the result. * - * @param { string } target - target. - * @param { string } srcPath - srcPath. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } target - Application sandbox path of the target file. + * @param { string } srcPath - Application sandbox path of the symbolic link. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900005 - I/O error @@ -5501,10 +6771,10 @@ declare function symlink(target: string, srcPath: string): Promise<void>; declare function symlink(target: string, srcPath: string, callback: AsyncCallback<void>): void; /** - * Link file with sync interface. + * Creates a symbolic link based on a file path. This API returns the result synchronously. * - * @param { string } target - target. - * @param { string } srcPath - srcPath. + * @param { string } target - Application sandbox path of the target file. + * @param { string } srcPath - Application sandbox path of the symbolic link. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900005 - I/O error @@ -5576,11 +6846,11 @@ declare function symlinkSync(target: string, srcPath: string): void; * @since 10 */ /** - * Truncate file. + * Truncates a file. This API uses a promise to return the result. * - * @param { string | number } file - path or file descriptor. - * @param { number } [len = 0] - len. - * @returns { Promise<void> } The promise returned by the function. + * @param { string | number } file - Application sandbox path or FD of the file. + * @param { number } [len = 0] - File length, in bytes, after truncation. The default value is 0. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -5654,10 +6924,10 @@ declare function truncate(file: string | number, len?: number): Promise<void>; * @since 10 */ /** - * Truncate file. + * Truncates a file. This API uses an asynchronous callback to return the result. * - * @param { string | number } file - path or file descriptor. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string | number } file - Application sandbox path or FD of the file. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -5733,11 +7003,11 @@ declare function truncate(file: string | number, callback: AsyncCallback<void>): * @since 10 */ /** - * Truncate file. + * Truncates a file. This API uses an asynchronous callback to return the result. * - * @param { string | number } file - path or file descriptor. - * @param { number } [len = 0] - len. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string | number } file - Application sandbox path or FD of the file. + * @param { number } len - File length, in bytes, after truncation. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -5811,10 +7081,10 @@ declare function truncate(file: string | number, len: number, callback: AsyncCal * @since 10 */ /** - * Truncate file with sync interface. + * Truncates the file content. This API returns the result synchronously. * - * @param { string | number } file - path or file descriptor. - * @param { number } [len = 0] - len. + * @param { string | number } file - Application sandbox path or FD of the file. + * @param { number } [len = 0] - File length, in bytes, after truncation. The default value is 0. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900004 - Interrupted system call @@ -5886,10 +7156,10 @@ declare function truncateSync(file: string | number, len?: number): void; * @since 10 */ /** - * Delete file. - * - * @param { string } path - path. - * @returns { Promise<void> } The promise returned by the function. + * Deletes a file. This API uses a promise to return the result. + * + * @param { string } path - Application sandbox path of the file. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900005 - I/O error @@ -5960,10 +7230,10 @@ declare function unlink(path: string): Promise<void>; * @since 10 */ /** - * Delete file. + * Deletes a file. This API uses an asynchronous callback to return the result. * - * @param { string } path - path. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { string } path - Application sandbox path of the file. + * @param { AsyncCallback<void> } callback - Callback invoked immediately after the file is deleted. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900005 - I/O error @@ -6032,9 +7302,9 @@ declare function unlink(path: string, callback: AsyncCallback<void>): void; * @since 10 */ /** - * Delete file with sync interface. + * Deletes a file. This API returns the result synchronously. * - * @param { string } path - path. + * @param { string } path - Application sandbox path of the file. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900005 - I/O error @@ -6072,10 +7342,11 @@ declare function unlinkSync(path: string): void; * @since 11 */ /** - * Change file mtime. + * Updates the latest access timestamp of a file. * - * @param { string } path - path. - * @param { number } mtime - last modification time + * @param { string } path - Application sandbox path of the file. + * @param { number } mtime - New timestamp. The value is the number of milliseconds elapsed since the Epoch time (00:00:00 UTC on January 1, 1970). + * <br>Only the last access time of a file can be modified. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900012 - Permission denied @@ -6134,11 +7405,11 @@ declare function utimes(path: string, mtime: number): void; * @since 10 */ /** - * Write file. + * Writes data into a file. This API uses a promise to return the result. * - * @param { number } fd - file descriptor. - * @param { ArrayBuffer | string } buffer - buffer. - * @param { WriteOptions } [options] - options. + * @param { number } fd - FD of the file. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - Defines the options use din write(). It inherits from Options. * @returns { Promise<number> } Returns the number of bytes written to the file in promise mode. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call @@ -6207,11 +7478,11 @@ declare function write( * @since 10 */ /** - * Write file. + * Writes data to a file. This API uses an asynchronous callback to return the result. * - * @param { number } fd - file descriptor. - * @param { ArrayBuffer | string } buffer - buffer. - * @param { AsyncCallback<number> } callback - The callback is used to return the number of bytes written to the file. + * @param { number } fd - FD of the file. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -6277,11 +7548,16 @@ declare function write(fd: number, buffer: ArrayBuffer | string, callback: Async * @since 10 */ /** - * Write file. + * Writes data to a file. This API uses an asynchronous callback to return the result. * - * @param { number } fd - file descriptor. - * @param { ArrayBuffer | string } buffer - buffer. - * @param { WriteOptions } [options] - options. + * @param { number } fd - FD of the file. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to write the data in the file. This parameter is optional. + * <br>By default, data is written from the current position. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. * @param { AsyncCallback<number> } callback - The callback is used to return the number of bytes written to the file. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call @@ -6353,12 +7629,17 @@ declare function write( * @since 10 */ /** - * Write file with sync interface. + * Writes data to a file. This API returns the result synchronously. * - * @param { number } fd - file descriptor. - * @param { ArrayBuffer | string } buffer - buffer. - * @param { WriteOptions } [options] - options. - * @returns { number } Returns the number of bytes written to the file. + * @param { number } fd - FD of the file. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to write the data in the file. This parameter is optional. + * <br>By default, data is written from the current position. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. + * @returns { number } Length of the data written, in bytes. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -6415,12 +7696,13 @@ declare function connectDfs(networkId: string, listeners: DfsListeners): Promise declare function disconnectDfs(networkId: string): Promise<void>; /** - * Set extended attributes information of the file. + * Sets an extended attribute of a file or directory. * - * @param { string } path - path. - * @param { string } key - the key of extended attribute. - * @param { string } value - the value of extended attribute. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } path - Application sandbox path of the directory. + * @param { string } key - Key of the extended attribute to obtain. + * <br>The value is a string of less than 256 bytes and can contain only the user. prefix. + * @param { string } value -Value of the extended attribute to set. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. * @throws { BusinessError } 13900002 - No such file or directory @@ -6435,14 +7717,38 @@ declare function disconnectDfs(networkId: string): Promise<void>; * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Sets an extended attribute of a file or directory. + * + * @param { string } path - Application sandbox path of the directory. + * @param { string } key - Key of the extended attribute to obtain. + * <br>The value is a string of less than 256 bytes and can contain only the user. prefix. + * @param { string } value -Value of the extended attribute to set. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function setxattr(path: string, key: string, value: string): Promise<void>; /** - * Set extended attributes information of the file. + * Sets an extended attribute of a file or directory. * - * @param { string } path - path. - * @param { string } key - the key of extended attribute. - * @param { string } value - the value of extended attribute. + * @param { string } path - Application sandbox path of the directory. + * @param { string } key - Key of the extended attribute to obtain. + * <br>The value is a string of less than 256 bytes and can contain only the user. prefix. + * @param { string } value - Value of the extended attribute to set. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. * @throws { BusinessError } 13900002 - No such file or directory @@ -6457,15 +7763,36 @@ declare function setxattr(path: string, key: string, value: string): Promise<voi * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ - +/** + * Sets an extended attribute of a file or directory. + * + * @param { string } path - Application sandbox path of the directory. + * @param { string } key - Key of the extended attribute to obtain. + * <br>The value is a string of less than 256 bytes and can contain only the user. prefix. + * @param { string } value - Value of the extended attribute to set. + * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function setxattrSync(path: string, key: string, value: string): void; /** - * Get extended attributes information of the file. + * Obtains an extended attribute of a file or directory. * - * @param { string } path - path. - * @param { string } key - the key of extended attribute. - * @returns { Promise<string> } The promise returned by the function. + * @param { string } path - Application sandbox path of the directory. + * @param { string } key - Key of the extended attribute to obtain. + * @returns { Promise<string> } Promise used to return the value of the extended attribute obtained. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. * @throws { BusinessError } 13900002 - No such file or directory @@ -6478,14 +7805,33 @@ declare function setxattrSync(path: string, key: string, value: string): void; * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Obtains an extended attribute of a file or directory. + * + * @param { string } path - Application sandbox path of the directory. + * @param { string } key - Key of the extended attribute to obtain. + * @returns { Promise<string> } Promise used to return the value of the extended attribute obtained. + * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900007 - Arg list too long + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900037 - No data available + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function getxattr(path: string, key: string): Promise<string>; /** - * Get extended attributes information of the file with sync interface. + * Obtains an extended attribute of a file. This API returns the result synchronously. * - * @param { string } path - path. - * @param { string } key - the key of extended attribute. - * @returns { string } Return the value of extended attribute. + * @param { string } path - Application sandbox path of the directory. + * @param { string } key - Key of the extended attribute to obtain. + * @returns { string } Value of the extended attribute obtained. * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. * @throws { BusinessError } 13900002 - No such file or directory @@ -6498,10 +7844,29 @@ declare function getxattr(path: string, key: string): Promise<string>; * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Obtains an extended attribute of a file. This API returns the result synchronously. + * + * @param { string } path - Application sandbox path of the directory. + * @param { string } key - Key of the extended attribute to obtain. + * @returns { string } Value of the extended attribute obtained. + * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900007 - Arg list too long + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900037 - No data available + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare function getxattrSync(path: string, key: string): string; /** - * Progress data of copyFile + * Defines the copy progress information. * * @typedef Progress * @syscap SystemCapability.FileManagement.File.FileIO @@ -6509,6 +7874,8 @@ declare function getxattrSync(path: string, key: string): string; */ interface Progress { /** + * Size of the copied data. + * * @type { number } * @readonly * @syscap SystemCapability.FileManagement.File.FileIO @@ -6517,6 +7884,8 @@ interface Progress { readonly processedSize: number; /** + * Total size of the data to be copied. + * * @type { number } * @readonly * @syscap SystemCapability.FileManagement.File.FileIO @@ -6526,14 +7895,14 @@ interface Progress { } /** - * Task signal. + * Provides APIs for interrupting a copy task. * * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ export class TaskSignal { /** - * Cancel the copy task in progress. + * Cancels a copy task. * * @throws { BusinessError } 13900010 - Try again * @throws { BusinessError } 13900012 - Permission denied by the file system @@ -6544,7 +7913,7 @@ export class TaskSignal { cancel(): void; /** - * Subscribe the cancel event of current task. + * Subscribes to the event reported when a copy task is canceled. * * @returns { Promise<string> } Return the result of the cancel event. * @throws { BusinessError } 13900004 - Interrupted system call @@ -6557,7 +7926,7 @@ export class TaskSignal { } /** - * Get options of copy + * Defines the callback for listening for the copy progress. * * @typedef CopyOptions * @syscap SystemCapability.FileManagement.File.FileIO @@ -6565,7 +7934,7 @@ export class TaskSignal { */ interface CopyOptions { /** - * Listener of copy progress + * Listener used to observe the copy progress. * * @type { ?ProgressListener } * @syscap SystemCapability.FileManagement.File.FileIO @@ -6573,7 +7942,7 @@ interface CopyOptions { */ progressListener?: ProgressListener; /** - * Cancel signal of copy. + * Signal used to cancel a copy task. * * @type { ?TaskSignal } * @syscap SystemCapability.FileManagement.File.FileIO @@ -6583,7 +7952,7 @@ interface CopyOptions { } /** - * Listener of copy progress. + * Signal used to cancel a copy task. * * @typedef { function } ProgressListener * @param { Progress } progress - indicates the progress data of copyFile @@ -6608,7 +7977,7 @@ type ProgressListener = (progress: Progress) => void; * @since 10 */ /** - * File object. + * Represents a File object opened by open(). * * @interface File * @syscap SystemCapability.FileManagement.File.FileIO @@ -6631,6 +8000,8 @@ declare interface File { * @since 10 */ /** + * FD of the file. + * * @type { number } * @readonly * @syscap SystemCapability.FileManagement.File.FileIO @@ -6641,8 +8012,8 @@ declare interface File { readonly fd: number; /** - * File path - * + * Path of the file. + * * @type { string } * @readonly * @throws { BusinessError } 13900005 - I/O error @@ -6654,8 +8025,8 @@ declare interface File { readonly path: string; /** - * File name - * + * Name of the file. + * * @type { string } * @readonly * @throws { BusinessError } 13900005 - I/O error @@ -6666,9 +8037,9 @@ declare interface File { readonly name: string; /** - * Get parent path of file. + * Obtains the parent directory of this file object. * - * @returns { string } Return the parent path of file. + * @returns { string } Parent directory obtained. * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900042 - Unknown error * @throws { BusinessError } 14300002 - Invalid URI @@ -6678,10 +8049,12 @@ declare interface File { getParent(): string; /** - * Lock file with blocking method. + * Applies an exclusive lock or a shared lock on this file in blocking mode. + * This API uses a promise to return the result. * - * @param { boolean } exclusive - whether lock is exclusive. - * @returns { Promise<void> } The promise returned by the function. + * @param { boolean } exclusive - Lock to apply. The value true means an exclusive lock, + * <br>and the value false (default) means a shared lock. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900020 - Invalid argument @@ -6694,9 +8067,10 @@ declare interface File { lock(exclusive?: boolean): Promise<void>; /** - * Lock file with blocking method. + * Applies an exclusive lock or a shared lock on this file in blocking mode. + * This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900020 - Invalid argument @@ -6709,10 +8083,12 @@ declare interface File { lock(callback: AsyncCallback<void>): void; /** - * Lock file with blocking method. + * Applies an exclusive lock or a shared lock on this file in blocking mode. + * This API uses an asynchronous callback to return the result. * - * @param { boolean } exclusive - whether lock is exclusive. - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { boolean } exclusive - Lock to apply. The value true means an exclusive lock, + * <br>and the value false (default) means a shared lock. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900020 - Invalid argument @@ -6725,9 +8101,10 @@ declare interface File { lock(exclusive: boolean, callback: AsyncCallback<void>): void; /** - * Try to lock file with returning results immediately. + * Applies an exclusive lock or a shared lock on this file in non-blocking mode. * - * @param { boolean } exclusive - whether lock is exclusive. + * @param { boolean } exclusive - Lock to apply. The value true means an exclusive lock, + * <br>and the value false (default) means a shared lock. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900020 - Invalid argument @@ -6740,7 +8117,7 @@ declare interface File { tryLock(exclusive?: boolean): void; /** - * Unlock file. + * Unlocks a file. * * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900008 - Bad file descriptor @@ -6755,7 +8132,8 @@ declare interface File { } /** - * RandomAccessFile object. + * Provides APIs for randomly reading and writing a stream. Before invoking any API of RandomAccessFile, + * you need to use createRandomAccessFile() to create a RandomAccessFile instance synchronously or asynchronously * * @interface RandomAccessFile * @syscap SystemCapability.FileManagement.File.FileIO @@ -6764,7 +8142,7 @@ declare interface File { declare interface RandomAccessFile { /** - * File descriptor + * FD of the file. * * @type { number } * @readonly @@ -6774,7 +8152,7 @@ declare interface RandomAccessFile { readonly fd: number; /** - * File pointer + * Offset pointer to the RandomAccessFile instance. * * @type { number } * @readonly @@ -6784,9 +8162,9 @@ declare interface RandomAccessFile { readonly filePointer: number; /** - * Set file pointer. + * Sets the file offset pointer. * - * @param { number } filePointer - filePointer. + * @param { number } filePointer - Offset pointer to the RandomAccessFile instance. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -6798,7 +8176,7 @@ declare interface RandomAccessFile { setFilePointer(filePointer: number): void; /** - * Close randomAccessFile with sync interface. + * Closes this RandomAccessFile instance. This API returns the result synchronously. * * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -6833,10 +8211,15 @@ declare interface RandomAccessFile { * @since 10 */ /** - * Write randomAccessFile. + * Writes data into a file. This API uses a promise to return the result. * - * @param { ArrayBuffer | string } buffer - buffer. - * @param { WriteOptions } [options] - options. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. The default value is the buffer length. + * <br>offset (number): start position to write the data (it is determined by filePointer plus offset). + * <br>This parameter is optional. By default, data is written from the filePointer. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. * @returns { Promise<number> } Returns the number of bytes written to the file in promise mode. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call @@ -6859,10 +8242,10 @@ declare interface RandomAccessFile { ): Promise<number>; /** - * Write randomAccessFile. + * Writes data to a file. This API uses an asynchronous callback to return the result. * - * @param { ArrayBuffer | string } buffer - buffer. - * @param { AsyncCallback<number> } callback - The callback is used to return the number of bytes written to the file. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -6902,11 +8285,16 @@ declare interface RandomAccessFile { * @since 10 */ /** - * Write randomAccessFile. + * Writes data to a file. This API uses an asynchronous callback to return the result. * - * @param { ArrayBuffer | string } buffer - buffer. - * @param { WriteOptions } [options] - options. - * @param { AsyncCallback<number> } callback - The callback is used to return the number of bytes written to the file. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. The default value is the buffer length. + * <br>offset (number): start position to write the data (it is determined by filePointer plus offset). + * <br>This parameter is optional. By default, data is written from the filePointer. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -6950,11 +8338,16 @@ declare interface RandomAccessFile { * @since 10 */ /** - * Write randomAccessFile with sync interface. + * Writes data to a file. This API returns the result synchronously. * - * @param { ArrayBuffer | string } buffer - buffer. - * @param { WriteOptions } [options] - options. - * @returns { number } Returns the number of bytes written to the file. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. The default value is the buffer length. + * <br>offset (number): start position to write the data (it is determined by filePointer plus offset). + * <br>This parameter is optional. By default, data is written from the filePointer. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. + * @returns { number } Length of the data written in the file. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -7012,11 +8405,14 @@ declare interface RandomAccessFile { * @since 11 */ /** - * Read randomAccessFile. + * Reads data from a file. This API uses a promise to return the result. * - * @param { ArrayBuffer } buffer - buffer. - * @param { ReadOptions } [options] - options. - * @returns { Promise<number> } Returns the number of file bytes read to buffer in promise mode. + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data (it is determined by filePointer plus offset). + * <br>This parameter is optional. By default, data is read from the filePointer. + * @returns { Promise<number> } Promise used to return the data read. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -7036,10 +8432,10 @@ declare interface RandomAccessFile { ): Promise<number>; /** - * Read randomAccessFile. + * Reads data from a file. This API uses an asynchronous callback to return the result. * - * @param { ArrayBuffer } buffer - buffer. - * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes read to buffer. + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -7073,23 +8469,26 @@ declare interface RandomAccessFile { * @since 10 */ /** - * Read randomAccessFile. - * - * @param { ArrayBuffer } buffer - buffer. - * @param { ReadOptions } [options] - options. - * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes read to buffer. - * @throws { BusinessError } 13900004 - Interrupted system call - * @throws { BusinessError } 13900005 - I/O error - * @throws { BusinessError } 13900008 - Bad file descriptor - * @throws { BusinessError } 13900010 - Try again - * @throws { BusinessError } 13900013 - Bad address - * @throws { BusinessError } 13900019 - Is a directory - * @throws { BusinessError } 13900020 - Invalid argument - * @throws { BusinessError } 13900034 - Operation would block - * @throws { BusinessError } 13900042 - Unknown error - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 11 - */ + * Reads data from a file. This API uses an asynchronous callback to return the result. + * + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data (it is determined by filePointer plus offset). + * <br>This parameter is optional. By default, data is read from the filePointer. + * @param { AsyncCallback<number> } callback - Callback used to return the result. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 11 + */ read( buffer: ArrayBuffer, options: ReadOptions, @@ -7133,10 +8532,13 @@ declare interface RandomAccessFile { * @since 11 */ /** - * Read randomAccessFile with sync interface. + * Reads data from a file. This API returns the result synchronously. * - * @param { ArrayBuffer } buffer - buffer. - * @param { ReadOptions } [options] - options. + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data (it is determined by filePointer plus offset). + * <br>This parameter is optional. By default, data is read from the filePointer. * @returns { number } Returns the number of file bytes read to buffer. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -7157,30 +8559,30 @@ declare interface RandomAccessFile { ): number; /** - * Generate read stream from RandomAccessFile object. + * Obtains a ReadStream instance of this RandomAccessFile. * - * @returns { ReadStream } Return ReadStream object. + * @returns { ReadStream } ReadStream instance obtained. * @throws { BusinessError } 401 - Parameter error * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900020 - Invalid argument - * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ getReadStream(): ReadStream; /** - * Generate write stream from RandomAccessFile object. + * Obtains a WriteStream instance of this RandomAccessFile. * - * @returns { WriteStream } Return WriteStream object. + * @returns { WriteStream } WriteStream instance obtained. * @throws { BusinessError } 401 - Parameter error * @throws { BusinessError } 13900008 - Bad file descriptor * @throws { BusinessError } 13900011 - Out of memory * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900020 - Invalid argument - * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ @@ -7188,23 +8590,42 @@ declare interface RandomAccessFile { } /** - * File Read Stream. - * + * Defines a readable stream. You need to use fs.createReadStream to create a ReadStream instance, + * which is inherited from the stream base class. + * The data obtained by ReadStream is a decoded string. Currently, only the UTF-8 format is supported. + * * @extends stream.Readable * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Defines a readable stream. You need to use fs.createReadStream to create a ReadStream instance, + * which is inherited from the stream base class. + * The data obtained by ReadStream is a decoded string. Currently, only the UTF-8 format is supported. + * + * @extends stream.Readable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare class ReadStream extends stream.Readable { /** - * The ReadStream constructor. - * - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 12 - */ + * The ReadStream constructor. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 12 + */ + /** + * The ReadStream constructor. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ constructor(); /** - * The Number of bytes read in the stream. + * Number of bytes read by the readable stream. * * @type { number } * @readonly @@ -7212,10 +8633,20 @@ declare class ReadStream extends stream.Readable { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Number of bytes read by the readable stream. + * + * @type { number } + * @readonly + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ readonly bytesRead: number; /** - * The path of the file being read. + * Path of the file corresponding to the readable stream. * * @type { string } * @readonly @@ -7223,13 +8654,24 @@ declare class ReadStream extends stream.Readable { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Path of the file corresponding to the readable stream. + * + * @type { string } + * @readonly + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ readonly path: string; /** - * Set the file position indicator for the read stream. + * Adjusts the position of the readable stream offset pointer. * - * @param { number } offset - file offset. - * @param { WhenceType } [whence = WhenceType.SEEK_SET] - directive whence. + * @param { number } offset - Number of bytes to move the offset. + * @param { WhenceType } [whence = WhenceType.SEEK_SET] - Where to start the offset. The default value is SEEK_SET, + * <br>which indicates the beginning of the file. * @returns { number } Returns the offset relative to starting position of stream. * @throws { BusinessError } 401 - Parameter error * @throws { BusinessError } 13900020 - Invalid argument @@ -7238,10 +8680,25 @@ declare class ReadStream extends stream.Readable { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Adjusts the position of the readable stream offset pointer. + * + * @param { number } offset - Number of bytes to move the offset. + * @param { WhenceType } [whence = WhenceType.SEEK_SET] - Where to start the offset. The default value is SEEK_SET, + * <br>which indicates the beginning of the file. + * @returns { number } Returns the offset relative to starting position of stream. + * @throws { BusinessError } 401 - Parameter error + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900026 - Illegal seek + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ seek(offset: number, whence?: WhenceType): number; /** - * Close ReadStream with sync interface. + * Closes this readable stream. * * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -7252,27 +8709,57 @@ declare class ReadStream extends stream.Readable { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Closes this readable stream. + * + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ close(): void; } /** - * File Write Stream. - * + * Defines a writeable stream. You need to use fs.createWriteStream to create a WriteStream instance, + * which is inherited from the stream base class. + * * @extends stream.Writable * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ +/** + * Defines a writeable stream. You need to use fs.createWriteStream to create a WriteStream instance, + * which is inherited from the stream base class. + * + * @extends stream.Writable + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare class WriteStream extends stream.Writable { /** - * The WriteStream constructor. - * - * @syscap SystemCapability.FileManagement.File.FileIO - * @since 12 - */ + * The WriteStream constructor. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 12 + */ + /** + * The WriteStream constructor. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ constructor(); /** - * The Number of bytes written in the stream. + * Number of bytes written to the writable stream. * * @type { number } * @readonly @@ -7280,10 +8767,20 @@ declare class WriteStream extends stream.Writable { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Number of bytes written to the writable stream. + * + * @type { number } + * @readonly + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ readonly bytesWritten: number; /** - * The path of the file being written. + * Path of the file corresponding to the writeable stream. * * @type { string } * @readonly @@ -7291,14 +8788,24 @@ declare class WriteStream extends stream.Writable { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Path of the file corresponding to the writeable stream. + * + * @type { string } + * @readonly + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ readonly path: string; /** - * Set the file position indicator for the write stream. + * Adjusts the position of the writeable stream offset pointer. * - * @param { number } offset - file offset. - * @param { WhenceType } [whence = WhenceType.SEEK_SET] - directive whence. - * @returns { number } Returns the offset relative to starting position of stream. + * @param { number } offset - Number of bytes to move the offset. + * @param { WhenceType } [whence = WhenceType.SEEK_SET] - Where to start the offset. The default value is SEEK_SET, which indicates the beginning of the file. + * @returns { number } Position of the current offset pointer (offset relative to the file header, in bytes). * @throws { BusinessError } 401 - Parameter error * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 13900026 - Illegal seek @@ -7306,10 +8813,24 @@ declare class WriteStream extends stream.Writable { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Adjusts the position of the writeable stream offset pointer. + * + * @param { number } offset - Number of bytes to move the offset. + * @param { WhenceType } [whence = WhenceType.SEEK_SET] - Where to start the offset. The default value is SEEK_SET, which indicates the beginning of the file. + * @returns { number } Position of the current offset pointer (offset relative to the file header, in bytes). + * @throws { BusinessError } 401 - Parameter error + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900026 - Illegal seek + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ seek(offset: number, whence?: WhenceType): number; /** - * Close WriteStream with sync interface. + * Closes this writeable stream. * * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -7320,18 +8841,36 @@ declare class WriteStream extends stream.Writable { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Closes this writeable stream. + * + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ close(): void; } /** - * The AtomicFile class provides methods for performing atomic operations on files. + * AtomicFile is a class used to perform atomic read and write operations on files. + * A temporary file is written and renamed to the original file location, which ensures file integrity. + * If the write operation fails, the temporary file is deleted without modifying the original file content. + * You can call finishWrite() or failWrite() to write or roll back file content. + * * @syscap SystemCapability.FileManagement.File.FileIO * @since 15 */ export class AtomicFile { /** * The AtomicFile constructor. - * @param { string } path file path. + * + * @param { string } path - Application sandbox path of the file. * @throws { BusinessError } 401 Parameter error.Possible causes:1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.FileManagement.File.FileIO * @since 15 @@ -7339,7 +8878,8 @@ export class AtomicFile { constructor(path: string); /** - * Get the File object from AtomicFile object. + * Obtains the file object through the AtomicFile object. The FD needs to be closed by calling close(). + * * @returns { File } Returns the file object. * @throws { BusinessError } 13900002 No such file or directory * @throws { BusinessError } 13900005 IO error @@ -7351,8 +8891,9 @@ export class AtomicFile { getBaseFile(): File; /** - * Create the file read stream. - * @returns { ReadStream } Returns the file read stream. + * Creates a ReadStream instance. + * + * @returns { ReadStream } ReadStream instance obtained. * @throws { BusinessError } 13900001 Operation not permitted * @throws { BusinessError } 13900002 No such file or directory * @throws { BusinessError } 13900012 Permission denied @@ -7363,8 +8904,9 @@ export class AtomicFile { openRead(): ReadStream; /** - * Read the entire contents of the file. - * @returns { ArrayBuffer } Returns the ArrayBuffer of the file contents. + * Reads all content of a file. + * + * @returns { ArrayBuffer } Full content of a file. * @throws { BusinessError } 13900005 I/O error * @throws { BusinessError } 13900042 Internal error * @syscap SystemCapability.FileManagement.File.FileIO @@ -7373,7 +8915,9 @@ export class AtomicFile { readFully(): ArrayBuffer; /** - * Create the file write stream. + * Starts to write new file data in the WriteStream object returned. If the file does not exist, create a file. + * Call finishWrite() if the write operation is successful; call failWrite() if the write operation fails. + * * @returns { WriteStream } Returns the file write stream. * @throws { BusinessError } 13900001 Operation not permitted * @throws { BusinessError } 13900002 No such file or directory @@ -7386,7 +8930,8 @@ export class AtomicFile { startWrite(): WriteStream; /** - * If the file is written successfully, the file is closed. + * Finishes writing file data when the write operation is complete. + * * @throws { BusinessError } 13900042 Internal error * @syscap SystemCapability.FileManagement.File.FileIO * @since 15 @@ -7394,7 +8939,8 @@ export class AtomicFile { finishWrite(): void; /** - * If writing to the file fails, the file is rolled back. + * Rolls back the file after the file fails to be written. + * * @throws { BusinessError } 13900042 Internal error * @syscap SystemCapability.FileManagement.File.FileIO * @since 15 @@ -7402,7 +8948,8 @@ export class AtomicFile { failWrite(): void; /** - * Delete all file. + * Deletes the AtomicFile class, including the original files and temporary files. + * * @throws { BusinessError } 13900001 Operation not permitted * @throws { BusinessError } 13900002 No such file or directory * @throws { BusinessError } 13900012 Permission denied @@ -7430,7 +8977,8 @@ export class AtomicFile { * @since 10 */ /** - * Stat object. + * Represents detailed file information. Before calling any API of the Stat() class, + * use stat() to create a Stat instance. * * @interface Stat * @syscap SystemCapability.FileManagement.File.FileIO @@ -7448,6 +8996,8 @@ declare interface Stat { * @since 9 */ /** + * File identifier, which varies with files on the same device. + * * @type { bigint } * @readonly * @throws { BusinessError } 13900005 - I/O error @@ -7475,6 +9025,18 @@ declare interface Stat { * @since 10 */ /** + * File permissions. The meaning of each bit is as follows: + * The following values are in octal format. The return values are in decimal format. You need to convert the values. + * 0o400: The user has the read permission on a regular file or a directory entry. + * 0o200: The user has the permission to write a regular file or create and delete a directory entry. + * 0o100: The user has the permission to execute a regular file or search for the specified path in a directory. + * 0o040: The user group has the read permission on a regular file or a directory entry. + * 0o020: The user group has the permission to write a regular file or create and delete a directory entry. + * 0o010: The user group has the permission to execute a regular file or search for the specified path in a directory. + * 0o004: Other users have the permission to read a regular file or read a directory entry. + * 0o002: Other users have the permission to write a regular file or create and delete a directory entry. + * 0o001: Other users have the permission to execute a regular file or search for the specified path in a directory. + * * @type { number } * @readonly * @throws { BusinessError } 13900005 - I/O error @@ -7496,6 +9058,8 @@ declare interface Stat { * @since 9 */ /** + * ID of the file owner. + * * @type { number } * @readonly * @throws { BusinessError } 13900005 - I/O error @@ -7516,6 +9080,8 @@ declare interface Stat { * @since 9 */ /** + * ID of the user group of the file. + * * @type { number } * @readonly * @throws { BusinessError } 13900005 - I/O error @@ -7543,6 +9109,8 @@ declare interface Stat { * @since 10 */ /** + * File size, in bytes. This parameter is valid only for regular files. + * * @type { number } * @readonly * @throws { BusinessError } 13900005 - I/O error @@ -7571,6 +9139,9 @@ declare interface Stat { * @since 10 */ /** + * Time when the file was last accessed. The value is the number of seconds elapsed since 00:00:00 on January 1, 1970. + * NOTE: Currently, user data partitions are mounted in noatime mode by default, and atime update is disabled. + * * @type { number } * @readonly * @throws { BusinessError } 13900005 - I/O error @@ -7599,6 +9170,9 @@ declare interface Stat { * @since 10 */ /** + * Time when the file content was last modified. The value is the number of seconds elapsed + * since 00:00:00 on January 1, 1970. + * * @type { number } * @readonly * @throws { BusinessError } 13900005 - I/O error @@ -7618,6 +9192,9 @@ declare interface Stat { * @since 9 */ /** + * Time when the file metadata was last modified. The value is the number of seconds elapsed + * since 00:00:00 on January 1, 1970. + * * @type { number } * @readonly * @throws { BusinessError } 13900005 - I/O error @@ -7629,7 +9206,10 @@ declare interface Stat { readonly ctime: number; /** - * Returns nanosecond of the access time. + * Time of the last access to the file. The value is the number of nanoseconds elapsed + * since 00:00:00 on January 1, 1970. + * NOTE: Currently, user data partitions are mounted in noatime mode by default, and atime update is disabled. + * * @type { bigint } * @readonly * @throws { BusinessError } 13900042 - Internal error @@ -7637,9 +9217,11 @@ declare interface Stat { * @since 15 */ readonly atimeNs?:bigint; - + /** - * Returns nanosecond of the modification time. + * Time of the last modification to the file. The value is the number of + * nanoseconds elapsed since 00:00:00 on January 1, 1970. + * * @type { bigint } * @readonly * @throws { BusinessError } 13900042 - Internal error @@ -7649,7 +9231,9 @@ declare interface Stat { readonly mtimeNs?:bigint; /** - * Returns nanosecond of the change time. + * Time of the last status change of the file. The value is the number of nanoseconds elapsed + * since 00:00:00 on January 1, 1970. + * * @type { bigint } * @readonly * @throws { BusinessError } 13900042 - Internal error @@ -7659,6 +9243,7 @@ declare interface Stat { readonly ctimeNs?:bigint; /** + * File location, which indicates whether the file is stored in a local device or in the cloud. * * @type { LocationType } * @readonly @@ -7678,7 +9263,7 @@ declare interface Stat { * @since 9 */ /** - * Whether path/fd is block device. + * Checks whether this file is a block special file. A block special file supports access by block only, and it is cached when accessed. * * @returns { boolean } Returns whether the path/fd point to a block device or not. * @throws { BusinessError } 13900005 - I/O error @@ -7698,7 +9283,7 @@ declare interface Stat { * @since 9 */ /** - * Whether path/fd is character device. + * Checks whether this file is a character special file. A character special device supports random access, and it is not cached when accessed. * * @returns { boolean } Returns whether the path/fd point to a character device or not. * @throws { BusinessError } 13900005 - I/O error @@ -7728,7 +9313,7 @@ declare interface Stat { * @since 10 */ /** - * Whether path/fd is directory. + * Checks whether this file is a directory. * * @returns { boolean } Returns whether the path/fd point to a directory or not. * @throws { BusinessError } 13900005 - I/O error @@ -7749,7 +9334,7 @@ declare interface Stat { * @since 9 */ /** - * Whether path/fd is fifo. + * Checks whether this file is a named pipe (or FIFO). Named pipes are used for inter-process communication. * * @returns { boolean } Returns whether the path/fd point to a fifo file or not. * @throws { BusinessError } 13900005 - I/O error @@ -7779,7 +9364,7 @@ declare interface Stat { * @since 10 */ /** - * Whether path/fd is file. + * Checks whether this file is a regular file. * * @returns { boolean } Returns whether the path/fd point to a normal file or not. * @throws { BusinessError } 13900005 - I/O error @@ -7800,7 +9385,7 @@ declare interface Stat { * @since 9 */ /** - * Whether path/fd is socket. + * Checks whether this file is a socket. * * @returns { boolean } Returns whether the path/fd point to a socket file or not. * @throws { BusinessError } 13900005 - I/O error @@ -7820,7 +9405,7 @@ declare interface Stat { * @since 9 */ /** - * Whether path/fd is symbolic link. + * Checks whether this file is a symbolic link. * * @returns { boolean } Returns whether the path/fd point to a symbolic link or not. * @throws { BusinessError } 13900005 - I/O error @@ -7833,12 +9418,23 @@ declare interface Stat { } /** - * Stream object + * Provides API for stream operations. Before calling any API of Stream, + * you need to create a Stream instance by using fs.createStream or fs.fdopenStream. * * @interface Stream * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ +/** + * Provides API for stream operations. Before calling any API of Stream, + * you need to create a Stream instance by using fs.createStream or fs.fdopenStream. + * + * @interface Stream + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ declare interface Stream { /** * Close stream. @@ -7853,6 +9449,21 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + * Close stream. + * + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ close(): Promise<void>; /** @@ -7868,6 +9479,21 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + * Close stream. + * + * @param { AsyncCallback<void> } callback - Return the callback function. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ close(callback: AsyncCallback<void>): void; /** @@ -7882,10 +9508,24 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + * Close stream with sync interface. + * + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ closeSync(): void; /** - * Flush stream. + * Flushes this stream. This API uses a promise to return the result. * * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 13900001 - Operation not permitted @@ -7903,12 +9543,33 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + * Flushes this stream. This API uses a promise to return the result. + * + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ flush(): Promise<void>; /** * Flush stream. * - * @param { AsyncCallback<void> } callback - Return the callback function. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -7924,10 +9585,31 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + * Flushes this stream. This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ flush(callback: AsyncCallback<void>): void; /** - * Flush stream with sync interface. + * Flushes this stream. This API returns the result synchronously. * * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call @@ -7944,6 +9626,26 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + * Flushes this stream. This API returns the result synchronously. + * + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ flushSync(): void; /** @@ -7968,11 +9670,16 @@ declare interface Stream { * @since 9 */ /** - * Write stream. + * Writes data to this stream. This API uses a promise to return the result. * - * @param { ArrayBuffer | string } buffer - buffer. - * @param { WriteOptions } [options] - options. - * @returns { Promise<number> } Returns the number of file bytes written to file in promise mode. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. The default value is the buffer length. + * <br>offset (number): start position to write the data in the file. This parameter is optional. + * <br>By default, data is written from the current position. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. + * @returns { Promise<number> } Promise used to return the length of the data written. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -7988,15 +9695,43 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 */ + /** + * Writes data to this stream. This API uses a promise to return the result. + * + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. The default value is the buffer length. + * <br>offset (number): start position to write the data in the file. This parameter is optional. + * <br>By default, data is written from the current position. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. + * @returns { Promise<number> } Promise used to return the length of the data written. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ write( - buffer: ArrayBuffer | string, - options?: WriteOptions + buffer: ArrayBuffer | string, + options?: WriteOptions ): Promise<number>; /** - * Write stream. + * Writes data to this stream. This API uses an asynchronous callback to return the result. * - * @param { ArrayBuffer | string } buffer - buffer. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes written to file. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call @@ -8013,6 +9748,29 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + /** + * Writes data to this stream. This API uses an asynchronous callback to return the result. + * + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes written to file. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ write(buffer: ArrayBuffer | string, callback: AsyncCallback<number>): void; /** @@ -8037,11 +9795,16 @@ declare interface Stream { * @since 9 */ /** - * Write stream. + * Writes data to this stream. This API uses an asynchronous callback to return the result. * - * @param { ArrayBuffer | string } buffer - buffer. - * @param { WriteOptions } [options] - options. - * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes written to file. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. The default value is the buffer length. + * <br>offset (number): start position to write the data in the file. This parameter is optional. + * <br>By default, data is written from the current position. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -8057,10 +9820,38 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 */ + /** + * Writes data to this stream. This API uses an asynchronous callback to return the result. + * + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. The default value is the buffer length. + * <br>offset (number): start position to write the data in the file. This parameter is optional. + * <br>By default, data is written from the current position. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. + * @param { AsyncCallback<number> } callback - Callback used to return the result. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ write( - buffer: ArrayBuffer | string, - options: WriteOptions, - callback: AsyncCallback<number> + buffer: ArrayBuffer | string, + options: WriteOptions, + callback: AsyncCallback<number> ): void; /** @@ -8085,11 +9876,16 @@ declare interface Stream { * @since 9 */ /** - * Write stream with sync interface. + * Writes data to this stream. This API returns the result synchronously. * - * @param { ArrayBuffer | string } buffer - buffer. - * @param { WriteOptions } [options] - options. - * @returns { number } Returns the number of file bytes written to file. + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. The default value is the buffer length. + * <br>offset (number): start position to write the data in the file. This parameter is optional. + * <br>By default, data is written from the current position. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. + * @returns { number } Length of the data written in the file. * @throws { BusinessError } 13900001 - Operation not permitted * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -8105,9 +9901,37 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 */ + /** + * Writes data to this stream. This API returns the result synchronously. + * + * @param { ArrayBuffer | string } buffer - Data to write. It can be a string or data from a buffer. + * @param { WriteOptions } [options] - The options are as follows: + * <br>length (number): length of the data to write. The default value is the buffer length. + * <br>offset (number): start position to write the data in the file. This parameter is optional. + * <br>By default, data is written from the current position. + * <br>encoding (string): format of the data to be encoded when the data is a string. + * <br>The default value is 'utf-8', which is the only value supported. + * @returns { number } Length of the data written in the file. + * @throws { BusinessError } 13900001 - Operation not permitted + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900024 - File too large + * @throws { BusinessError } 13900025 - No space left on device + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900041 - Quota exceeded + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ writeSync( - buffer: ArrayBuffer | string, - options?: WriteOptions + buffer: ArrayBuffer | string, + options?: WriteOptions ): number; /** @@ -8126,14 +9950,82 @@ declare interface Stream { * @throws { BusinessError } 13900034 - Operation would block * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since 9 + */ + /** + * Read stream. + * + * @param { ArrayBuffer } buffer - buffer. + * @param { ReadOptions } [options] - options. + * @returns { Promise<number> } Returns the number of file bytes read to buffer in promise mode. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 11 + */ + /** + * Reads data from the stream. This API uses a promise to return the result. + * + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data. This parameter is optional. By default, + * <br>data is read from the current position. + * @returns { Promise<number> } Promise used to return the data read. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 12 + */ + /** + * Reads data from the stream. This API uses a promise to return the result. + * + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data. This parameter is optional. By default, + * <br>data is read from the current position. + * @returns { Promise<number> } Promise used to return the data read. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 */ + read( + buffer: ArrayBuffer, + options?: ReadOptions + ): Promise<number>; + /** - * Read stream. + * Reads data from this stream. This API uses an asynchronous callback to return the result. * - * @param { ArrayBuffer } buffer - buffer. - * @param { ReadOptions } [options] - options. - * @returns { Promise<number> } Returns the number of file bytes read to buffer in promise mode. + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -8144,14 +10036,13 @@ declare interface Stream { * @throws { BusinessError } 13900034 - Operation would block * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 11 + * @since 9 */ /** - * Read stream. + * Reads data from this stream. This API uses an asynchronous callback to return the result. * - * @param { ArrayBuffer } buffer - buffer. - * @param { ReadOptions } [options] - options. - * @returns { Promise<number> } Returns the number of file bytes read to buffer in promise mode. + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -8161,19 +10052,18 @@ declare interface Stream { * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 13900034 - Operation would block * @throws { BusinessError } 13900042 - Unknown error - * @throws { BusinessError } 13900044 - Network is unreachable * @syscap SystemCapability.FileManagement.File.FileIO - * @since 12 + * @atomicservice + * @crossplatform + * @since 20 */ - read( - buffer: ArrayBuffer, - options?: ReadOptions - ): Promise<number>; + read(buffer: ArrayBuffer, callback: AsyncCallback<number>): void; /** * Read stream. * * @param { ArrayBuffer } buffer - buffer. + * @param { object } [options] - options. * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes read to buffer. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error @@ -8187,14 +10077,15 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ - read(buffer: ArrayBuffer, callback: AsyncCallback<number>): void; - /** - * Read stream. + * Reads data from this stream. This API uses an asynchronous callback to return the result. * - * @param { ArrayBuffer } buffer - buffer. - * @param { object } [options] - options. - * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes read to buffer. + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data. This parameter is optional. By default, + * <br>data is read from the current position. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -8205,14 +10096,17 @@ declare interface Stream { * @throws { BusinessError } 13900034 - Operation would block * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since 11 */ /** - * Read stream. + * Reads data from this stream. This API uses an asynchronous callback to return the result. * - * @param { ArrayBuffer } buffer - buffer. - * @param { ReadOptions } [options] - options. - * @param { AsyncCallback<number> } callback - The callback is used to return the number of file bytes read to buffer. + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data. This parameter is optional. By default, + * <br>data is read from the current position. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -8223,12 +10117,14 @@ declare interface Stream { * @throws { BusinessError } 13900034 - Operation would block * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 11 + * @atomicservice + * @crossplatform + * @since 20 */ read( - buffer: ArrayBuffer, - options: ReadOptions, - callback: AsyncCallback<number> + buffer: ArrayBuffer, + options: ReadOptions, + callback: AsyncCallback<number> ): void; /** @@ -8268,11 +10164,14 @@ declare interface Stream { * @since 11 */ /** - * Read stream with sync interface. + * Reads data from this stream. This API returns the result synchronously. * - * @param { ArrayBuffer } buffer - buffer. - * @param { ReadOptions } [options] - options. - * @returns { number } Returns the number of file bytes read to file. + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data. This parameter is optional. By default, + * <br>data is read from the current position. + * @returns { number } Length of the data read. * @throws { BusinessError } 13900004 - Interrupted system call * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900008 - Bad file descriptor @@ -8286,14 +10185,38 @@ declare interface Stream { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Reads data from this stream. This API returns the result synchronously. + * + * @param { ArrayBuffer } buffer - Buffer used to store the file read. + * @param { ReadOptions } [options] - The options are as follows: + * <br>length (number): length of the data to read. This parameter is optional. The default value is the buffer length. + * <br>offset (number): start position to read the data. This parameter is optional. By default, + * <br>data is read from the current position. + * @returns { number } Length of the data read. + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900010 - Try again + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900019 - Is a directory + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900034 - Operation would block + * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900044 - Network is unreachable + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ readSync( - buffer: ArrayBuffer, - options?: ReadOptions + buffer: ArrayBuffer, + options?: ReadOptions ): number; } /** - * Implements watcher event listening. + * Provides APIs for observing events. * * @interface WatchEventListener * @syscap SystemCapability.FileManagement.File.FileIO @@ -8303,7 +10226,7 @@ export interface WatchEventListener { /** * Specifies the callback function to be invoked. * - * @param { WatchEvent } event - Event type for the callback to invoke. + * @param { WatchEvent } event - Event for the callback to invoke. * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ @@ -8311,7 +10234,7 @@ export interface WatchEventListener { } /** - * Event Listening. + * Defines the event to observe. * * @interface WatchEvent * @syscap SystemCapability.FileManagement.File.FileIO @@ -8319,7 +10242,7 @@ export interface WatchEventListener { */ export interface WatchEvent { /** - * File name. + * Sandbox path of the file to observe. The sandbox path contains the file name. * * @type { string } * @readonly @@ -8329,7 +10252,20 @@ export interface WatchEvent { readonly fileName: string; /** - * Event happened. + * Events to observe. Multiple events can be separated by a bitwise OR operator (|). + * 0x1: IN_ACCESS: A file is accessed. + * 0x2: IN_MODIFY: The file content is modified. + * 0x4: IN_ATTRIB: The file metadata is modified. + * 0x8: IN_CLOSE_WRITE: A file is opened, written with data, and then closed. + * 0x10: IN_CLOSE_NOWRITE: A file or directory is opened and then closed without data written. + * 0x20: IN_OPEN: A file or directory is opened. + * 0x40: IN_MOVED_FROM: A file in the observed directory is moved. + * 0x80: IN_MOVED_TO: A file is moved to the observed directory. + * 0x100: IN_CREATE: A file or directory is created in the observed directory. + * 0x200: IN_DELETE: A file or directory is deleted from the observed directory. + * 0x400: IN_DELETE_SELF: The observed directory is deleted. After the directory is deleted, the listening stops. + * 0x800: IN_MOVE_SELF: The observed file or directory is moved. After the file or directory is moved, the listening continues. + * 0xfff: IN_ALL_EVENTS: All events. * * @type { number } * @readonly @@ -8339,7 +10275,8 @@ export interface WatchEvent { readonly event: number; /** - * Associated rename event. + * Cookie bound with the event. Currently, only the IN_MOVED_FROM and IN_MOVED_TO events are supported. + * The IN_MOVED_FROM and IN_MOVED_TO events of the same file have the same cookie value. * * @type { number } * @readonly @@ -8350,7 +10287,8 @@ export interface WatchEvent { } /** - * Watcher object + * Provides APIs for observing the changes of files or directories. + * Before using the APIs of Watcher, call createWatcher() to create a Watcher object. * * @interface Watcher * @syscap SystemCapability.FileManagement.File.FileIO @@ -8358,7 +10296,7 @@ export interface WatchEvent { */ export interface Watcher { /** - * Start watcher. + * Starts listening. * * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -8379,7 +10317,7 @@ export interface Watcher { start(): void; /** - * Stop watcher. + * Stops listening and removes the Watcher object. * * @throws { BusinessError } 13900002 - No such file or directory * @throws { BusinessError } 13900008 - Bad file descriptor @@ -8401,7 +10339,7 @@ export interface Watcher { } /** - * Reader Iterator Result + * Represents the information obtained by the ReaderIterator object. * * @interface ReaderIteratorResult * @syscap SystemCapability.FileManagement.File.FileIO @@ -8409,8 +10347,9 @@ export interface Watcher { */ export interface ReaderIteratorResult { /** - * Whether reader iterator completes the traversal. - * + * Whether the iteration is complete. + * The value true means the iteration is complete; the value false means the iteration is not complete. + * * @type { boolean } * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 @@ -8418,8 +10357,8 @@ export interface ReaderIteratorResult { done: boolean; /** - * The value of reader iterator. - * + * File text content read line by line. + * * @type { string } * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 @@ -8428,7 +10367,8 @@ export interface ReaderIteratorResult { } /** - * ReaderIterator object + * Provides a ReaderIterator object. Before calling APIs of ReaderIterator, + * you need to use readLines() to create a ReaderIterator instance. * * @interface ReaderIterator * @syscap SystemCapability.FileManagement.File.FileIO @@ -8436,9 +10376,9 @@ export interface ReaderIteratorResult { */ declare interface ReaderIterator { /** - * Get next result from the iterator. + * Obtains the ReaderIterator result. * - * @returns { ReaderIteratorResult } Returns the result of reader iterator. + * @returns { ReaderIteratorResult } ReaderIteratorResult object obtained. * @throws { BusinessError } 13900005 - I/O error * @throws { BusinessError } 13900037 - No data available * @throws { BusinessError } 13900042 - Unknown error @@ -8456,7 +10396,7 @@ declare interface ReaderIterator { * @since 10 */ /** - * File filter type + * Defines the file filtering configuration used by listFile(). * * @interface Filter * @syscap SystemCapability.FileManagement.File.FileIO @@ -8467,14 +10407,14 @@ declare interface ReaderIterator { export interface Filter { /** * The suffix of the file. - * + * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ /** - * The suffix of the file. - * + * Locate files that fully match the specified file name extensions, which are of the OR relationship. + * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.File.FileIO * @crossplatform @@ -8484,14 +10424,15 @@ export interface Filter { suffix?: Array<string>; /** * The display name of the file. - * + * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ /** - * The display name of the file. - * + * Locate files that fuzzy match the specified file names, which are of the OR relationship. + * Currently, only the wildcard * is supported. + * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.File.FileIO * @crossplatform @@ -8501,14 +10442,14 @@ export interface Filter { displayName?: Array<string>; /** * The mimetype of the file. - * + * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ /** - * The mimetype of the file. - * + * Locate files that fully match the specified MIME types, which are of the OR relationship. + * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.File.FileIO * @crossplatform @@ -8518,14 +10459,14 @@ export interface Filter { mimeType?: Array<string>; /** * The exceeding size of the file. - * + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ /** - * The exceeding size of the file. - * + * Locate files that are greater than or equal to the specified size. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @crossplatform @@ -8535,14 +10476,14 @@ export interface Filter { fileSizeOver?: number; /** * The last modification time of the file. - * + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ /** - * The last modification time of the file. - * + * Locate files whose last modification time is the same or later than the specified time. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @crossplatform @@ -8552,14 +10493,15 @@ export interface Filter { lastModifiedAfter?: number; /** * Whether to exclude media files. - * + * * @type { ?boolean } * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ /** - * Whether to exclude media files. - * + * Whether to exclude the files already in Media. The value true means to exclude the files already in Media; + * the value false means not to exclude the files already in Media. + * * @type { ?boolean } * @syscap SystemCapability.FileManagement.File.FileIO * @crossplatform @@ -8576,48 +10518,72 @@ export interface Filter { * @since 10 */ /** - * Conflict Files type + * Defines conflicting file information used in copyDir() or moveDir(). * * @interface ConflictFiles * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 */ +/** + * Defines conflicting file information used in copyDir() or moveDir(). + * + * @interface ConflictFiles + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ export interface ConflictFiles { /** * The path of the source file. - * + * * @type { string } * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ /** * The path of the source file. - * + * * @type { string } * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 */ + /** + * The path of the source file. + * + * @type { string } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ srcFile: string; /** * The path of the source file. - * + * * @type { string } * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ /** * The path of the destination file. - * + * * @type { string } * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 */ + /** + * The path of the destination file. + * + * @type { string } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ destFile: string; } /** - * Options type + * Defines the options used in readLines(). * * @interface Options * @syscap SystemCapability.FileManagement.File.FileIO @@ -8625,8 +10591,8 @@ export interface ConflictFiles { */ export interface Options { /** - * The encoding style. - * + * File encoding format. It is optional. + * * @type { ?string } * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 @@ -8635,36 +10601,65 @@ export interface Options { } /** - * ReadOptions type + * Defines the options used in read(). * * @interface ReadOptions * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 11 */ +/** + * Defines the options used in read(). + * + * @interface ReadOptions + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ export interface ReadOptions { /** - * The offset when reading the file. - * + * Length of the data to read, in bytes. This parameter is optional. The default value is the buffer length. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 11 */ + /** + * Length of the data to read, in bytes. This parameter is optional. The default value is the buffer length. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ offset?: number; /** - * The length for reading. - * + * Start position of the file to read (current filePointer plus offset), in bytes. This parameter is optional. + * By default, data is read from the filePointer. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 11 */ + /** + * Start position of the file to read (current filePointer plus offset), in bytes. This parameter is optional. + * By default, data is read from the filePointer. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ length?: number; } /** - * ReadTextOptions type + * Defines the options used in readText(). It inherits from ReadOptions. * * @extends ReadOptions * @interface ReadTextOptions @@ -8672,20 +10667,41 @@ export interface ReadOptions { * @atomicservice * @since 11 */ +/** + * Defines the options used in readText(). It inherits from ReadOptions. + * + * @extends ReadOptions + * @interface ReadTextOptions + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ export interface ReadTextOptions extends ReadOptions { /** - * The encoding style when reading text. - * + * Format of the data to be encoded. This parameter is valid only when the data type is string. + * The default value is 'utf-8', which is the only value supported. + * * @type { ?string } * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 11 */ + /** + * Format of the data to be encoded. This parameter is valid only when the data type is string. + * The default value is 'utf-8', which is the only value supported. + * + * @type { ?string } + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ encoding?: string; } /** - * WriteOptions type + * Defines the options use din write(). It inherits from Options. * * @extends Options * @interface WriteOptions @@ -8693,24 +10709,78 @@ export interface ReadTextOptions extends ReadOptions { * @atomicservice * @since 11 */ +/** + * Defines the options use din write(). It inherits from Options. + * + * @extends Options + * @interface WriteOptions + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ export interface WriteOptions extends Options { /** - * The offset when writing the file. - * + * Option for creating the writeable stream. You must specify one of the following options. + * OpenMode.READ_ONLY(0o0): read-only, which is the default value. + * OpenMode.WRITE_ONLY(0o1): write-only. + * OpenMode.READ_WRITE(0o2): read/write. + * You can also specify the following options, separated by a bitwise OR operator (|). + * By default, no additional options are given. + * OpenMode.CREATE(0o100): If the file does not exist, create it. + * OpenMode.TRUNC(0o1000): If the file exists and is opened in write mode, truncate the file length to 0. + * OpenMode.APPEND(0o2000): Open the file in append mode. New data will be added to the end of the file. + * OpenMode.NONBLOCK(0o4000): If path points to a named pipe (also known as a FIFO), block special file, + * or character special file, perform non-blocking operations on the opened file and in subsequent I/Os. + * OpenMode.DIR(0o200000): If path does not point to a directory, throw an exception. The write permission is not allowed. + * OpenMode.NOFOLLOW(0o400000): If path points to a symbolic link, throw an exception. + * OpenMode.SYNC(0o4010000): Open the file in synchronous I/O mode. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 11 */ + /** + * Option for creating the writeable stream. You must specify one of the following options. + * OpenMode.READ_ONLY(0o0): read-only, which is the default value. + * OpenMode.WRITE_ONLY(0o1): write-only. + * OpenMode.READ_WRITE(0o2): read/write. + * You can also specify the following options, separated by a bitwise OR operator (|). + * By default, no additional options are given. + * OpenMode.CREATE(0o100): If the file does not exist, create it. + * OpenMode.TRUNC(0o1000): If the file exists and is opened in write mode, truncate the file length to 0. + * OpenMode.APPEND(0o2000): Open the file in append mode. New data will be added to the end of the file. + * OpenMode.NONBLOCK(0o4000): If path points to a named pipe (also known as a FIFO), block special file, + * or character special file, perform non-blocking operations on the opened file and in subsequent I/Os. + * OpenMode.DIR(0o200000): If path does not point to a directory, throw an exception. The write permission is not allowed. + * OpenMode.NOFOLLOW(0o400000): If path points to a symbolic link, throw an exception. + * OpenMode.SYNC(0o4010000): Open the file in synchronous I/O mode. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ offset?: number; /** - * The length for writing. - * + * Length of the data to write, in bytes. This parameter is optional. The default value is the buffer length. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 11 */ + /** + * Length of the data to write, in bytes. This parameter is optional. The default value is the buffer length. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ length?: number; } @@ -8724,8 +10794,11 @@ export interface WriteOptions extends Options { */ export interface ListFileOptions { /** - * Whether to recursively list files. - * + * Whether to list all files in the subdirectories recursively. This parameter is optional. + * The default value is false. If recursion is false, the names of files and directories that meet the filtering + * requirements in the current directory are returned. If recursion is true, relative paths (starting with /) + * of all files that meet the specified conditions in the current directory are returned. + * * @type { ?boolean } * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice @@ -8734,8 +10807,8 @@ export interface ListFileOptions { recursion?: boolean; /** - * The number of files listed. - * + * Number of file names to list. This parameter is optional. The default value is 0, which means to list all files. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice @@ -8744,8 +10817,8 @@ export interface ListFileOptions { listNum?: number; /** - * The filter of listing files. - * + * File filtering configuration. This parameter is optional. It specifies the file filtering conditions. + * * @type { ?Filter } * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice @@ -8755,7 +10828,7 @@ export interface ListFileOptions { } /** - * RandomAccessFileOptions type + * Defines the options used in createRandomAccessFile(). * * @interface RandomAccessFileOptions * @syscap SystemCapability.FileManagement.File.FileIO @@ -8763,8 +10836,8 @@ export interface ListFileOptions { */ export interface RandomAccessFileOptions { /** - * The starting position of file offset. - * + * Start position to read the data, in bytes. This parameter is optional. By default, data is read from the current position. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 @@ -8772,8 +10845,8 @@ export interface RandomAccessFileOptions { start?: number; /** - * The ending position of file offset. - * + * End position to read the data, in bytes. This parameter is optional. The default value is the end of the file. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 @@ -8782,55 +10855,109 @@ export interface RandomAccessFileOptions { } /** - * ReadStreamOptions type + * Defines the options used in createReadStream(). + * + * @interface ReadStreamOptions + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 12 + */ +/** + * Defines the options used in createReadStream(). * * @interface ReadStreamOptions * @syscap SystemCapability.FileManagement.File.FileIO - * @since 12 + * @crossplatform + * @since 20 */ export interface ReadStreamOptions { /** - * The starting range for reading a file by stream. - * + * Start position to read the data, in bytes. This parameter is optional. By default, + * data is read from the current position. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Start position to read the data, in bytes. This parameter is optional. By default, + * data is read from the current position. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ start?: number; /** - * The ending range for reading a file by stream. - * + * End position to read the data, in bytes. This parameter is optional. + * The default value is the end of the file. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * End position to read the data, in bytes. This parameter is optional. + * The default value is the end of the file. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ end?: number; } /** - * WriteStreamOptions type + * Defines the options used in createWriteStream(). + * + * @interface WriteStreamOptions + * @syscap SystemCapability.FileManagement.File.FileIO + * @since 12 + */ +/** + * Defines the options used in createWriteStream(). * * @interface WriteStreamOptions * @syscap SystemCapability.FileManagement.File.FileIO - * @since 12 + * @crossplatform + * @since 20 */ export interface WriteStreamOptions { /** - * The mode for creating write stream. - * + * Option for creating the writeable stream. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Option for creating the writeable stream. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ mode?: number; /** - * The starting range for writing a file by stream. - * + * Start position to write the data, in bytes. This parameter is optional. + * By default, data is written from the beginning of the file. + * * @type { ?number } * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Start position to write the data, in bytes. This parameter is optional. + * By default, data is written from the beginning of the file. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ start?: number; } @@ -8854,7 +10981,7 @@ export interface DfsListeners { } /** - * Enumeration of different types of whence. + * Enumerates the types of the relative offset position used in lseek(). * * @enum { number } whence type * @syscap SystemCapability.FileManagement.File.FileIO @@ -8883,7 +11010,7 @@ declare enum WhenceType { * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 */ - SEEK_END = 2, + SEEK_END = 2 } /** @@ -8895,7 +11022,7 @@ declare enum WhenceType { */ declare enum LocationType { /** - * Local file. + * The file is stored in a local device. * * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 @@ -8903,62 +11030,103 @@ declare enum LocationType { LOCAL = 1 << 0, /** - * Cloud file. + * The file is stored in the cloud. * * @syscap SystemCapability.FileManagement.File.FileIO * @since 11 */ - CLOUD = 1 << 1, + CLOUD = 1 << 1 } /** - * Enumeration of different types of access mode. + * Enumerates the access modes to verify. If this parameter is left blank, the system checks whether the file exists. * * @enum { number } access mode type * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 12 */ +/** + * Enumerates the access modes to verify. If this parameter is left blank, the system checks whether the file exists. + * + * @enum { number } access mode type + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ declare enum AccessModeType { /** - * Check if the file exists. + * Whether the file exists. * * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 12 */ + /** + * Whether the file exists. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ EXIST = 0, /** - * Check if the file has write permission. + * Verify the write permission on the file. * * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 12 */ + /** + * Verify the write permission on the file. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ WRITE = 2, /** - * Check if the file has read permission. + * Verify the read permission on the file. * * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 12 */ + /** + * Verify the read permission on the file. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ READ = 4, /** - * Check if the file has read and write permission. + * Verify the read/write permission on the file. * * @syscap SystemCapability.FileManagement.File.FileIO * @atomicservice * @since 12 */ - READ_WRITE = 6, + /** + * Verify the read/write permission on the file. + * + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + */ + READ_WRITE = 6 } /** - * Enumeration of different types of access flag. + * Enumerates the locations of the file to verify. * * @enum { number } access flag type * @syscap SystemCapability.FileManagement.File.FileIO @@ -8966,10 +11134,10 @@ declare enum AccessModeType { */ declare enum AccessFlagType { /** - * Check if the file is on the local. + * The file is stored locally. * * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ - LOCAL = 0, + LOCAL = 0 } diff --git a/api/@ohos.file.hash.d.ts b/api/@ohos.file.hash.d.ts index bd9f4e28b30543ef302d3e9b8c81bb1271c3e8f0..bba16e1dc7eb275ec16afa69837935873d94a102 100644 --- a/api/@ohos.file.hash.d.ts +++ b/api/@ohos.file.hash.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Copyright (c) 2022-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -36,6 +36,16 @@ import stream from './@ohos.util.stream'; * @atomicservice * @since 11 */ +/** + * Hash + * + * @namespace hash + * @syscap SystemCapability.FileManagement.File.FileIO + * @atomicservice + * @crossplatform + * @since 20 + * @arkts 1.1&1.2 + */ declare namespace hash { /** * Hash file. @@ -60,6 +70,20 @@ declare namespace hash { * @atomicservice * @since 11 */ + /** + * Hash file. + * + * @param { string } path - path. + * @param { string } algorithm - algorithm md5 sha1 sha256. + * @returns { Promise<string> } return Promise + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ function hash(path: string, algorithm: string): Promise<string>; /** @@ -85,15 +109,37 @@ declare namespace hash { * @atomicservice * @since 11 */ + /** + * Hash file. + * + * @param { string } path - path. + * @param { string } algorithm - algorithm md5 sha1 sha256. + * @param { AsyncCallback<string> } [callback] - callback. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ function hash(path: string, algorithm: string, callback: AsyncCallback<string>): void; /** * Hash Stream. - * + * * @extends stream.Transform * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Hash Stream. + * + * @extends stream.Transform + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ class HashStream extends stream.Transform { /** * Calculate the digest of all of the data passed to be hashed. @@ -104,6 +150,16 @@ declare namespace hash { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Calculate the digest of all of the data passed to be hashed. + * + * @returns { string } Returns the hexadecimal data string of the hash result. + * @throws { BusinessError } 401 - Parameter error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ digest(): string; /** @@ -115,10 +171,20 @@ declare namespace hash { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Update the hash content with the given data. + * + * @param { ArrayBuffer } data - updated data. + * @throws { BusinessError } 401 - Parameter error + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ update(data: ArrayBuffer): void; } -/** + /** * Create file read stream. * * @param { string } algorithm - hash algorithm. @@ -129,6 +195,18 @@ declare namespace hash { * @syscap SystemCapability.FileManagement.File.FileIO * @since 12 */ + /** + * Create file read stream. + * + * @param { string } algorithm - hash algorithm. + * @returns { HashStream } Returns the ReadStream object which has been created. + * @throws { BusinessError } 401 - Parameter error + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ function createHash(algorithm: string): HashStream; } diff --git a/api/@ohos.file.photoAccessHelper.d.ts b/api/@ohos.file.photoAccessHelper.d.ts index 325fd22620f941f7ac7165f0e7a35d18a0d4a5d7..b481c7780ca62b30d36ca4d3704388915b6cff73 100644 --- a/api/@ohos.file.photoAccessHelper.d.ts +++ b/api/@ohos.file.photoAccessHelper.d.ts @@ -46,13 +46,14 @@ import type { CustomColors } from './@ohos.arkui.theme'; * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace photoAccessHelper { /** - * Returns an instance of PhotoAccessHelper + * Obtains a PhotoAccessHelper instance for accessing and modifying media files in the album. * - * @param { Context } context - Hap context information + * @param { Context } context - Context of the ability instance. * @returns { PhotoAccessHelper } Instance of PhotoAccessHelper * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -61,9 +62,9 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Returns an instance of PhotoAccessHelper + * Obtains a PhotoAccessHelper instance for accessing and modifying media files in the album. * - * @param { Context } context - Hap context information + * @param { Context } context - Context of the ability instance. * @returns { PhotoAccessHelper } Instance of PhotoAccessHelper * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -73,9 +74,9 @@ declare namespace photoAccessHelper { * @since 11 */ /** - * Returns an instance of PhotoAccessHelper + * Obtains a PhotoAccessHelper instance for accessing and modifying media files in the album. * - * @param { Context } context - Hap context information + * @param { Context } context - Context of the ability instance. * @returns { PhotoAccessHelper } Instance of PhotoAccessHelper * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -83,19 +84,38 @@ declare namespace photoAccessHelper { * @StageModelOnly * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ function getPhotoAccessHelper(context: Context): PhotoAccessHelper; /** - * Enumeration of different types of photos + * Returns an instance of PhotoAccessHelper + * + * @permission ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS + * @param { Context } context - Hap context information + * @param { number } userId - Target userId + * @returns { PhotoAccessHelper } Instance of PhotoAccessHelper + * @throws { BusinessError } 201 - Permission denied + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 13900020 - Invalid argument + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @StageModelOnly + * @systemapi + * @crossplatform + * @since 19 + */ + function getPhotoAccessHelper(context: Context, userId: number): PhotoAccessHelper; + + /** + * Enumerates media file types. * * @enum { number } PhotoType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Enumeration of different types of photos + * Enumerates media file types. * * @enum { number } PhotoType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -103,13 +123,14 @@ declare namespace photoAccessHelper { * @since 11 */ /** - * Enumeration of different types of photos + * Enumerates media file types. * * @enum { number } PhotoType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum PhotoType { /** @@ -131,7 +152,8 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ IMAGE = 1, /** @@ -153,13 +175,14 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ VIDEO } /** - * Enumeration of different categories of photos + * Enumerates the PhotoAsset types. * * @enum { number } PhotoSubtype * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -167,12 +190,13 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Enumeration of different categories of photos + * Enumerates the PhotoAsset types. * * @enum { number } PhotoSubtype * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum PhotoSubtype { /** @@ -187,7 +211,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ DEFAULT = 0, /** @@ -195,7 +220,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ SCREENSHOT = 1, /** @@ -203,7 +229,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ MOVING_PHOTO = 3, /** @@ -211,31 +238,35 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ BURST = 4, } /** - * Enumeration of dynamic range type + * Enumerates the formats for displaying media assets. * * @enum { number } DynamicRangeType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum DynamicRangeType { /** - * SDR(Standard-Dynamic Range) format + * Standard dynamic range (SDR). * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ SDR = 0, /** - * HDR(High-Dynamic Range) format + * High dynamic range (HDR). * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ HDR = 1 } @@ -268,7 +299,7 @@ declare namespace photoAccessHelper { } /** - * Photo asset position + * Enumerates the file locations. * * @enum { number } Photo asset position, such as local device or cloud * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -276,11 +307,12 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Photo asset position + * Enumerates the file locations. * * @enum { number } Photo asset position, such as local device or cloud * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 16 + * @since arkts {'1.1':'16','1.2':'20'} + * @arkts 1.1&1.2 */ enum PositionType { /** @@ -294,25 +326,27 @@ declare namespace photoAccessHelper { * Asset exists only in local device * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 16 + * @since arkts {'1.1':'16','1.2':'20'} + * @arkts 1.1&1.2 */ LOCAL = 1, /** - * Asset exists only in cloud + * Stored only on a local device. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi * @since 10 */ /** - * Asset exists only in cloud + * Stored only on the cloud. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 16 + * @since arkts {'1.1':'16','1.2':'20'} + * @arkts 1.1&1.2 */ CLOUD = 2, /** - * Asset exists in local device and cloud + * Stored both on a local device and cloud. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 16 @@ -326,7 +360,8 @@ declare namespace photoAccessHelper { * @enum { number } AnalysisType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum AnalysisType { /** @@ -334,7 +369,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_AESTHETICS_SCORE = 0, /** @@ -342,7 +378,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_LABEL, /** @@ -350,7 +387,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_OCR, /** @@ -358,7 +396,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_FACE, /** @@ -366,7 +405,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_OBJECT, /** @@ -374,7 +414,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_RECOMMENDATION, /** @@ -382,7 +423,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_SEGMENTATION, /** @@ -390,7 +432,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_COMPOSITION, /** @@ -398,7 +441,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_SALIENCY, /** @@ -406,7 +450,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_DETAIL_ADDRESS, /** @@ -414,7 +459,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_HUMAN_FACE_TAG, /** @@ -422,7 +468,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_HEAD_POSITION, /** @@ -430,7 +477,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_BONE_POSE, /** @@ -438,7 +486,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_VIDEO_LABEL, /** @@ -446,7 +495,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_HIGHLIGHT, /** @@ -454,7 +504,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ ANALYSIS_MULTI_CROP, /** @@ -468,12 +519,13 @@ declare namespace photoAccessHelper { } /** - * Enumeration of different recommendation type + * Enumerates the types of recommended images. * * @enum { number } RecommendationType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum RecommendationType { /** @@ -481,7 +533,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ QR_OR_BAR_CODE = 1, @@ -490,7 +543,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ QR_CODE = 2, @@ -499,7 +553,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ BAR_CODE = 3, @@ -508,7 +563,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ID_CARD = 4, @@ -517,7 +573,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ PROFILE_PICTURE = 5, @@ -526,7 +583,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ PASSPORT = 6, @@ -535,7 +593,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ BANK_CARD = 7, @@ -544,7 +603,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ DRIVER_LICENSE = 8, @@ -553,7 +613,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ DRIVING_LICENSE = 9, @@ -562,7 +623,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ FEATURED_SINGLE_PORTRAIT = 10, @@ -577,59 +639,66 @@ declare namespace photoAccessHelper { } /** - * Enumeration of delivery mode. + * Enumerates the asset delivery modes. * * @enum { number } DeliveryMode * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum DeliveryMode { /** - * Fast delivery mode + * Fast mode. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ FAST_MODE = 0, /** - * High quality delivery mode + * High-quality mode. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ HIGH_QUALITY_MODE = 1, /** - * Balance delivery mode + * Balance mode. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ BALANCE_MODE = 2 } /** - * Enumeration of compatible mode. + * Enumerates the video transcoding mode. * * @enum { number } CompatibleMode * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 15 + * @since arkts {'1.1':'15','1.2':'20'} + * @arkts 1.1&1.2 */ enum CompatibleMode { /** - * Original format mode + * Maintains the original video format. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 15 + * @since arkts {'1.1':'15','1.2':'20'} + * @arkts 1.1&1.2 */ ORIGINAL_FORMAT_MODE = 0, /** - * Compatible format mode. + * Converts the HDR content to SDR format. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 15 + * @since arkts {'1.1':'15','1.2':'20'} + * @arkts 1.1&1.2 */ COMPATIBLE_FORMAT_MODE = 1 } @@ -639,43 +708,48 @@ declare namespace photoAccessHelper { * * @interface MediaAssetProgressHandler * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 15 + * @since arkts {'1.1':'15','1.2':'20'} + * @arkts 1.1&1.2 */ interface MediaAssetProgressHandler { /** * Indicates the progress of required media asset data * - * @param { number } progress - the progress of required media asset data; from 0 to 100. + * @param { number } progress - Progress in percentage. Value range: 0 to 100 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 15 + * @since arkts {'1.1':'15','1.2':'20'} + * @arkts 1.1&1.2 */ onProgress(progress: number): void; } /** - * Enumeration of source mode + * Enumerates the types of the file to read. * * @enum { number } SourceMode * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum SourceMode { /** - * Original mode + * Original file. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ORIGINAL_MODE = 0, /** - * Edited mode + * Edited file. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ EDITED_MODE = 1 } @@ -686,135 +760,150 @@ declare namespace photoAccessHelper { * @enum { number } PhotoPermissionType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum PhotoPermissionType { /** - * Temporary access to photos, this permission could be canceled when APP dies. + * Temporary read permission. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ TEMPORARY_READ_IMAGEVIDEO = 0, /** - * Persistence access to photos. + * Persistent read permission. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ PERSISTENT_READ_IMAGEVIDEO = 1 } /** - * Enumeration type of hide sensitive information. + * Enumerates the types of media resource information to be hidden from an application. * * @enum { number } HideSensitiveType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum HideSensitiveType { /** - * Hide location information and shooting param. + * Geographical location and shooting parameters. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ HIDE_LOCATION_AND_SHOOTING_PARAM = 0, /** - * Hide location information. + * Geographical location information. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ HIDE_LOCATION_ONLY = 1, /** - * Hide shooting param. + * Shooting parameters. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ HIDE_SHOOTING_PARAM_ONLY = 2, /** - * Hide nothing. + * Do not hide any information. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ NO_HIDE_SENSITIVE_TYPE = 3 } /** - * Enumeration type of authorization mode. + * Enumerates the authorization modes. * * @enum { number } AuthorizationMode * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum AuthorizationMode { /** - * Short time authorization. + * Temporary authorization. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ SHORT_TIME_AUTHORIZATION = 0 } /** - * Enumeration type of watermarktypes of photos + * Enumerates the watermark editable flags. * * @enum { number } WatermarkType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 14 + * @since arkts {'1.1':'14','1.2':'20'} + * @arkts 1.1&1.2 */ enum WatermarkType { /** - * WatermarkType of Default + * Watermarks are not editable. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 14 + * @since arkts {'1.1':'14','1.2':'20'} + * @arkts 1.1&1.2 */ DEFAULT = 0, /** - * WatermarkType of BRAND_COMMON + * Brand and common watermarks are editable. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 14 + * @since arkts {'1.1':'14','1.2':'20'} + * @arkts 1.1&1.2 */ BRAND_COMMON = 1, /** - * WatermarkType of COMMON + * Common watermarks are editable. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 14 + * @since arkts {'1.1':'14','1.2':'20'} + * @arkts 1.1&1.2 */ COMMON = 2, /** - * WatermarkType of BRAND + * Brand watermarks are editable. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 14 + * @since arkts {'1.1':'14','1.2':'20'} + * @arkts 1.1&1.2 */ BRAND = 3, } @@ -825,7 +914,8 @@ declare namespace photoAccessHelper { * @enum { number } CompleteButtonText * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 14 + * @since arkts {'1.1':'14','1.2':'20'} + * @arkts 1.1&1.2 */ enum CompleteButtonText { /** @@ -833,7 +923,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 14 + * @since arkts {'1.1':'14','1.2':'20'} + * @arkts 1.1&1.2 */ TEXT_DONE = 0, /** @@ -841,7 +932,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 14 + * @since arkts {'1.1':'14','1.2':'20'} + * @arkts 1.1&1.2 */ TEXT_SEND = 1, @@ -850,7 +942,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 14 + * @since arkts {'1.1':'14','1.2':'20'} + * @arkts 1.1&1.2 */ TEXT_ADD = 2, } @@ -860,7 +953,8 @@ declare namespace photoAccessHelper { * * @interface RequestOptions * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ interface RequestOptions { /** @@ -868,7 +962,8 @@ declare namespace photoAccessHelper { * * @type { DeliveryMode } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ deliveryMode: DeliveryMode; @@ -878,7 +973,8 @@ declare namespace photoAccessHelper { * @type { ?SourceMode } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ sourceMode?: SourceMode; @@ -887,7 +983,8 @@ declare namespace photoAccessHelper { * * @type { ?CompatibleMode } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 15 + * @since arkts {'1.1':'15','1.2':'20'} + * @arkts 1.1&1.2 */ compatibleMode?: CompatibleMode; @@ -896,17 +993,19 @@ declare namespace photoAccessHelper { * * @type { ?MediaAssetProgressHandler } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 15 + * @since arkts {'1.1':'15','1.2':'20'} + * @arkts 1.1&1.2 */ mediaAssetProgressHandler?: MediaAssetProgressHandler; } /** - * Media asset data handler + * Media asset handler, which can be used to customize the media asset processing logic in onDataPrepared. * * @interface MediaAssetDataHandler * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ interface MediaAssetDataHandler<T> { /** @@ -922,7 +1021,8 @@ declare namespace photoAccessHelper { * @param { T } data - the returned data of media asset * @param { Map<string, string> } [map] - additional information for the data * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ onDataPrepared(data: T, map?: Map<string, string>): void; } @@ -932,7 +1032,8 @@ declare namespace photoAccessHelper { * * @typedef QuickImageDataHandler * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ interface QuickImageDataHandler<T> { /** @@ -942,29 +1043,31 @@ declare namespace photoAccessHelper { * @param { image.ImageSource } imageSource - the returned data of imageSource * @param { Map<string, string> } map - additional information for the data * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ onDataPrepared(data: T, imageSource: image.ImageSource, map: Map<string, string>): void; } /** - * Photo Proxy used to save image data + * Photo proxy object, which is used by the camera application to write image data. * * @interface PhotoProxy * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ interface PhotoProxy {} /** - * Media asset manager + * A media asset manager class, used for manipulating the read and write operations of media assets. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 11 */ /** - * Media asset manager + * A media asset manager class, used for manipulating the read and write operations of media assets. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice @@ -975,10 +1078,10 @@ declare namespace photoAccessHelper { * Request image * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { PhotoAsset } asset - the photo asset requested - * @param { RequestOptions } requestOptions - the request options - * @param { MediaAssetDataHandler<image.ImageSource> } dataHandler - data handler used to obtain media asset data when ImageSource is prepared + * @param { Context } context - Context of the ability instance. + * @param { PhotoAsset } asset - Image to request. + * @param { RequestOptions } requestOptions - Options for requesting the image. + * @param { MediaAssetDataHandler<image.ImageSource> } dataHandler - Media asset handler, which invokes a callback to return the image when the requested image is ready. * @returns { Promise<string> } Returns request id * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -996,13 +1099,13 @@ declare namespace photoAccessHelper { ): Promise<string>; /** - * Quick request image + * Requests an image quickly. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { PhotoAsset } asset - the photo asset requested - * @param { RequestOptions } requestOptions - the request options - * @param { QuickImageDataHandler<image.Picture> } dataHandler - data handler used to obtain image data quickly when picture is prepared + * @param { Context } context - Context of the ability instance. + * @param { PhotoAsset } asset - Image to request. + * @param { RequestOptions } requestOptions - Options for requesting the image. + * @param { QuickImageDataHandler<image.Picture> } dataHandler - Media asset handler, which invokes a callback to return the image when the requested image is ready. * @returns { Promise<string> } Returns request id * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1020,13 +1123,13 @@ declare namespace photoAccessHelper { ): Promise<string>; /** - * Request image data + * Requests image data. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { PhotoAsset } asset - the photo asset requested - * @param { RequestOptions } requestOptions - the request options - * @param { MediaAssetDataHandler<ArrayBuffer> } dataHandler - data handler used obtain media asset data when data is prepared + * @param { Context } context - Context of the ability instance. + * @param { PhotoAsset } asset - Image to request. + * @param { RequestOptions } requestOptions - Options for requesting the image. + * @param { MediaAssetDataHandler<ArrayBuffer> } dataHandler - Media asset handler, which invokes a callback to return the image when the requested image is ready. * @returns { Promise<string> } Returns request id * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1044,13 +1147,13 @@ declare namespace photoAccessHelper { ): Promise<string>; /** - * Request moving photo + * Requests a moving photo object, which can be used to request the asset data of the moving photo. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { PhotoAsset } asset - the photo asset requested - * @param { RequestOptions } requestOptions - the request options - * @param { MediaAssetDataHandler<MovingPhoto> } dataHandler - data handler used to obtain moving photo when data is prepared + * @param { Context } context - Context of the ability instance. + * @param { PhotoAsset } asset - Image to request. + * @param { RequestOptions } requestOptions - Options for requesting the image. + * @param { MediaAssetDataHandler<MovingPhoto> } dataHandler - Media asset handler, which invokes a callback to return the image when the requested image is ready. * @returns { Promise<string> } Returns request id * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1060,6 +1163,24 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ + /** + * Requests a moving photo object, which can be used to request the asset data of the moving photo. + * + * @permission ohos.permission.READ_IMAGEVIDEO + * @param { Context } context - Context of the ability instance. + * @param { PhotoAsset } asset - Image to request. + * @param { RequestOptions } requestOptions - Options for requesting the image. + * @param { MediaAssetDataHandler<MovingPhoto> } dataHandler - Media asset handler, which invokes a callback to return the image when the requested image is ready. + * @returns { Promise<string> } Returns request id + * @throws { BusinessError } 201 - Permission denied + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14000011 - System inner fail + * @static + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @since 18 + */ static requestMovingPhoto( context: Context, asset: PhotoAsset, @@ -1068,11 +1189,11 @@ declare namespace photoAccessHelper { ): Promise<string>; /** - * Cancel request + * Cancels a request for the asset, the callback of which has not been triggered yet. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { string } requestId - the request id to be canceled + * @param { Context } context - Context of the ability instance. + * @param { string } requestId - ID of the request to cancel. It is a valid request ID returned by requestImage. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1088,11 +1209,11 @@ declare namespace photoAccessHelper { * Request video file * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { PhotoAsset } asset - the photo asset requested - * @param { RequestOptions } requestOptions - the request options + * @param { Context } context - Context of the ability instance. + * @param { PhotoAsset } asset - Image to request. + * @param { RequestOptions } requestOptions - Options for requesting the video asset. * @param { string } fileUri - the destination file uri to save the video data - * @param { MediaAssetDataHandler<boolean> } dataHandler - data handler used to notify the client that data has been written to the application sandbox + * @param { MediaAssetDataHandler<boolean> } dataHandler - Media asset handler. When the requested video is written to the specified directory, a callback is triggered. * @returns { Promise<string> } Returns request id * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1106,11 +1227,11 @@ declare namespace photoAccessHelper { * Request video file * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { PhotoAsset } asset - the photo asset requested - * @param { RequestOptions } requestOptions - the request options + * @param { Context } context - Context of the ability instance. + * @param { PhotoAsset } asset - Image to request. + * @param { RequestOptions } requestOptions - Options for requesting the video asset. * @param { string } fileUri - the destination file uri to save the video data - * @param { MediaAssetDataHandler<boolean> } dataHandler - data handler used to notify the client that data has been written to the application sandbox + * @param { MediaAssetDataHandler<boolean> } dataHandler - Media asset handler. When the requested video is written to the specified directory, a callback is triggered. * @returns { Promise<string> } Returns request id * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1132,7 +1253,7 @@ declare namespace photoAccessHelper { /** * Load moving photo * - * @param { Context } context - Hap context information + * @param { Context } context - AbilityContext or UIExtensionContext instance. * @param { string } imageFileUri - image file uri of the moving photo to be loaded * @param { string } videoFileUri - video file uri of the moving photo to be loaded * @returns { Promise<MovingPhoto> } Returns moving photo @@ -1146,7 +1267,7 @@ declare namespace photoAccessHelper { /** * Load moving photo * - * @param { Context } context - Hap context information + * @param { Context } context - AbilityContext or UIExtensionContext instance. * @param { string } imageFileUri - image file uri of the moving photo to be loaded * @param { string } videoFileUri - video file uri of the moving photo to be loaded * @returns { Promise<MovingPhoto> } Returns moving photo @@ -1178,19 +1299,20 @@ declare namespace photoAccessHelper { * @typedef { number | string | boolean } MemberType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ type MemberType = number | string | boolean; /** - * Defines the photo asset + * Provides APIs for encapsulating file asset attributes. * * @interface PhotoAsset * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Defines the photo asset + * Provides APIs for encapsulating file asset attributes. * * @interface PhotoAsset * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -1198,13 +1320,14 @@ declare namespace photoAccessHelper { * @since 11 */ /** - * Defines the photo asset + * Provides APIs for encapsulating file asset attributes. * * @interface PhotoAsset * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface PhotoAsset { /** @@ -1222,7 +1345,8 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ readonly uri: string; /** @@ -1242,6 +1366,17 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Photo type, image or video + * + * @type { PhotoType } + * @readonly + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ readonly photoType: PhotoType; /** * Display name (with a file name extension) of the asset. @@ -1260,52 +1395,79 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Display name (with a file name extension) of the asset. + * + * @type { string } + * @readonly + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ readonly displayName: string; /** - * Returns the value of the specified member. + * Obtains a PhotoAsset member parameter. * * @param { string } member - Photo asset member. for example : get(PhotoKeys.SIZE) * @returns { MemberType } Returns the value of the specified photo asset member * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900020 - Invalid argument - * @throws { BusinessError } 14000014 - Member is not a valid PhotoKey + * @throws { BusinessError } 14000014 - The provided member must be a property name of PhotoKey. * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Returns the value of the specified member. + * Obtains a PhotoAsset member parameter. * * @param { string } member - Photo asset member. for example : get(PhotoKeys.SIZE) * @returns { MemberType } Returns the value of the specified photo asset member * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900020 - Invalid argument - * @throws { BusinessError } 14000014 - Member is not a valid PhotoKey + * @throws { BusinessError } 14000014 - The provided member must be a property name of PhotoKey. * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @since 12 */ + /** + * Obtains a PhotoAsset member parameter. + * + * @param { string } member - Photo asset member. for example : get(PhotoKeys.SIZE) + * @returns { MemberType } Returns the value of the specified photo asset member + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000014 - The provided member must be a property name of PhotoKey. + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ get(member: string): MemberType; /** - * Set a new value to the specified member + * Sets a PhotoAsset member parameter. * * @param { string } member - Photo asset member * @param { string } value - The new value of the member. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900020 - Invalid argument - * @throws { BusinessError } 14000014 - Member is not a valid PhotoKey + * @throws { BusinessError } 14000014 - The provided member must be a property name of PhotoKey. * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 * @example : set(PhotoKeys.TITLE, "newTitle"), call commitModify after set */ set(member: string, value: string): void; /** - * Modify metadata of the asset + * Commits the modification on the file metadata to the database. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { AsyncCallback<void> } callback - Returns void. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900012 - Permission denied @@ -1316,10 +1478,10 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Modify metadata of the asset + * Commits the modification on the file metadata to the database. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { AsyncCallback<void> } callback - Returns void. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900012 - Permission denied @@ -1328,11 +1490,12 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ commitModify(callback: AsyncCallback<void>): void; /** - * Modify metadata of the asset + * Commits the modification on the file metadata to the database. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO * @returns { Promise<void> } Returns void @@ -1346,7 +1509,7 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Modify metadata of the asset + * Commits the modification on the file metadata to the database. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO * @returns { Promise<void> } Returns void @@ -1358,7 +1521,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ commitModify(): Promise<void>; /** @@ -1398,10 +1562,10 @@ declare namespace photoAccessHelper { */ open(mode: string): Promise<number>; /** - * Open the asset in read only mode + * Opens this file in read-only mode. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AsyncCallback<number> } callback - Returns the read only fd + * @param { AsyncCallback<number> } callback - Callback used to return the file descriptor (FD) of the file opened. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900012 - Permission denied @@ -1413,7 +1577,7 @@ declare namespace photoAccessHelper { */ getReadOnlyFd(callback: AsyncCallback<number>): void; /** - * Open the asset in read only mode + * Opens this file in read-only mode. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<number> } Returns the read only fd @@ -1428,10 +1592,10 @@ declare namespace photoAccessHelper { */ getReadOnlyFd(): Promise<number>; /** - * Close the asset + * Closes a file. This API uses an asynchronous callback to return the result. * - * @param { number } fd - The opened fd of the asset. - * @param { AsyncCallback<void> } callback - Returns void + * @param { number } fd - FD of the file to close. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900020 - Invalid argument @@ -1442,9 +1606,9 @@ declare namespace photoAccessHelper { */ close(fd: number, callback: AsyncCallback<void>): void; /** - * Close the asset + * Closes a file. This API uses a promise to return the result. * - * @param { number } fd - The opened fd of the asset. + * @param { number } fd - FD of the file to close. * @returns { Promise<void> } Returns void * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1456,10 +1620,10 @@ declare namespace photoAccessHelper { */ close(fd: number): Promise<void>; /** - * Get thumbnail of the asset + * Obtains the thumbnail of this file. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AsyncCallback<image.PixelMap> } callback - Returns the thumbnail's pixelMap. + * @param { AsyncCallback<image.PixelMap> } callback - Callback used to return the PixelMap of the thumbnail. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900012 - Permission denied @@ -1470,11 +1634,11 @@ declare namespace photoAccessHelper { */ getThumbnail(callback: AsyncCallback<image.PixelMap>): void; /** - * Get thumbnail of the asset + * Obtains the file thumbnail of the given size. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { image.Size } size - Thumbnail's size - * @param { AsyncCallback<image.PixelMap> } callback - Returns the thumbnail's pixelMap. + * @param { image.Size } size - Size of the thumbnail. + * @param { AsyncCallback<image.PixelMap> } callback - Callback used to return the PixelMap of the thumbnail. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -1485,10 +1649,10 @@ declare namespace photoAccessHelper { */ getThumbnail(size: image.Size, callback: AsyncCallback<image.PixelMap>): void; /** - * Get thumbnail of the asset + * Obtains the file thumbnail of the given size. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { image.Size } [size] - Thumbnail's size + * @param { image.Size } [size] - Size of the thumbnail. * @returns { Promise<image.PixelMap> } Returns the thumbnail's pixelMap. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1496,14 +1660,15 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ getThumbnail(size?: image.Size): Promise<image.PixelMap>; /** - * Get thumbnail data of the asset with ArrayBuffer + * Obtains the ArrayBuffer of a file thumbnail by specifying its type. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { ThumbnailType } type - Which thumbnail's type needed to return. + * @param { ThumbnailType } type - Type of the thumbnail. * @returns { Promise<ArrayBuffer> } Returns the thumbnail's ArrayBuffer. * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -1517,11 +1682,11 @@ declare namespace photoAccessHelper { */ getThumbnailData(type: ThumbnailType): Promise<ArrayBuffer>; /** - * Set favorite state for the asset + * Favorites or unfavorites this file. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { boolean } favoriteState - true: Put the asset into favorite album; false: Remove the asset from favorite album. - * @param { AsyncCallback<void> } callback - Returns void + * @param { boolean } favoriteState - Operation to perform. The value true means to favorite the file asset, and false means the opposite. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1536,10 +1701,10 @@ declare namespace photoAccessHelper { */ setFavorite(favoriteState: boolean, callback: AsyncCallback<void>): void; /** - * Set favorite state for the asset + * Favorites or unfavorites this file asset. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { boolean } favoriteState - true: Put the asset into favorite album; false: Remove the asset from favorite album. + * @param { boolean } favoriteState - Operation to perform. The value true means to favorite the file asset, and false means the opposite. * @returns { Promise<void> } Returns void * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1555,11 +1720,11 @@ declare namespace photoAccessHelper { */ setFavorite(favoriteState: boolean): Promise<void>; /** - * Set asset hidden state. + * Sets this file to hidden state. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { boolean } hiddenState - true: Put the asset into hidden album; false: Recover the asset from hidden album. - * @param { AsyncCallback<void> } callback - Returns void. + * @param { boolean } hiddenState - Whether to set a file to hidden state. The value true means to hide the file; the value false means the opposite. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1574,10 +1739,10 @@ declare namespace photoAccessHelper { */ setHidden(hiddenState: boolean, callback: AsyncCallback<void>): void; /** - * Set asset hidden state. + * Sets this file asset to hidden state. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { boolean } hiddenState - true: Put the asset into hidden album; false: Recover the asset from hidden album. + * @param { boolean } hiddenState - Whether to set a file to hidden state. The value true means to hide the file; the value false means the opposite. * @returns { Promise<void> } Returns void * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1593,11 +1758,11 @@ declare namespace photoAccessHelper { */ setHidden(hiddenState: boolean): Promise<void>; /** - * Set user comment info to the asset. + * Sets user comment information of an image or video. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } userComment - user comment info - * @param { AsyncCallback<void> } callback - Returns void. + * @param { string } userComment - User comment information to set. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1612,10 +1777,10 @@ declare namespace photoAccessHelper { */ setUserComment(userComment: string, callback: AsyncCallback<void>): void; /** - * Set user comment info to the asset. + * Sets user comment information of an image or video. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } userComment - user comment info + * @param { string } userComment - User comment information to set. * @returns { Promise<void> } Returns void * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1631,10 +1796,10 @@ declare namespace photoAccessHelper { */ setUserComment(userComment: string): Promise<void>; /** - * Get exif info of the asset. + * Obtains the exchangeable image file format (EXIF) data from a JPG image. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AsyncCallback<string> } callback - Returns exif info into a json string + * @param { AsyncCallback<string> } callback - Callback used to return the EXIF data, in JSON strings. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -1647,10 +1812,10 @@ declare namespace photoAccessHelper { */ getExif(callback: AsyncCallback<string>): void; /** - * Get analysis data of the asset. + * Obtains analysis data. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AnalysisType } analysisType - Analysis type + * @param { AnalysisType } analysisType - Smart analysis type. * @returns { Promise<string> } Returns analysis info into a json string * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -1659,11 +1824,12 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ getAnalysisData(analysisType: AnalysisType): Promise<string>; /** - * Get exif info of the asset. + * Obtains the exchangeable image file format (EXIF) data from a JPG image. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<string> } Returns exif info into a json string @@ -1679,11 +1845,11 @@ declare namespace photoAccessHelper { */ getExif(): Promise<string>; /** - * Set asset pending state. + * Sets the pending state for this image or video asset. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { boolean } pendingState - true: Set asset in pending status; false: Recover asset from pending status. - * @param { AsyncCallback<void> } callback - Returns void + * @param { boolean } pendingState - Whether to set the file to pending state. The value true means to set the file to pending state, and the value false means to remove the pending state. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1695,10 +1861,10 @@ declare namespace photoAccessHelper { */ setPending(pendingState: boolean, callback: AsyncCallback<void>): void; /** - * Set asset pending state. + * Sets the pending state for this image or video asset. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { boolean } pendingState - true: Set asset in pending status; false: Recover asset from pending status. + * @param { boolean } pendingState - Whether to set the file to pending state. The value true means to set the file to pending state, and the value false means to remove the pending state. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Called by non-system application. @@ -1711,10 +1877,10 @@ declare namespace photoAccessHelper { */ setPending(pendingState: boolean): Promise<void>; /** - * Check if asset has been edited. + * Checks whether this image or video asset is edited. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AsyncCallback<boolean> } callback - Returns whether the asset has been edited. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. The value true means that the image or video asset is edited, and false means the opposite. The default value is false. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1726,7 +1892,7 @@ declare namespace photoAccessHelper { */ isEdited(callback: AsyncCallback<boolean>): void; /** - * Check if asset has been edited. + * Checks whether this image or video asset is edited. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<boolean> } Returns whether the asset has been edited. @@ -1741,10 +1907,10 @@ declare namespace photoAccessHelper { */ isEdited(): Promise<boolean>; /** - * Request asset edit data. + * Obtains the edit data of this image or video asset. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AsyncCallback<string> } callback - Returns asset edit data. + * @param { AsyncCallback<string> } callback - Callback used to return the edit data obtained. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1756,7 +1922,7 @@ declare namespace photoAccessHelper { */ requestEditData(callback: AsyncCallback<string>): void; /** - * Request asset edit data. + * Obtains the edit data of this image or video asset. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<string> } Returns asset edit data. @@ -1771,7 +1937,7 @@ declare namespace photoAccessHelper { */ requestEditData(): Promise<string>; /** - * Get media asset edit data. + * Obtains the edited data of this asset. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<MediaAssetEditData> } Returns media asset edit data @@ -1801,10 +1967,10 @@ declare namespace photoAccessHelper { */ clone(title: string): Promise<PhotoAsset>; /** - * Requests the read-only FD of the source asset. + * Opens the source file to obtain the FD. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AsyncCallback<number> } callback - Returns opened source asset fd. + * @param { AsyncCallback<number> } callback - Callback used to return the FD. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1816,7 +1982,7 @@ declare namespace photoAccessHelper { */ requestSource(callback: AsyncCallback<number>): void; /** - * Requests the read-only FD of the source asset. + * Opens the source file to obtain the FD. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<number> } Returns opened source asset fd. @@ -1831,12 +1997,12 @@ declare namespace photoAccessHelper { */ requestSource(): Promise<number>; /** - * Commit edit data and edited asset. + * Commits the edited image or video asset. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } editData - editData to be saved. - * @param { string } uri - uri of the edited asset within the applications's own sandbox. - * @param { AsyncCallback<void> } callback - Returns void. + * @param { string } editData - New data to commit. + * @param { string } uri - URI of the committed image or video in the application sandbox. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1848,11 +2014,11 @@ declare namespace photoAccessHelper { */ commitEditedAsset(editData: string, uri: string, callback: AsyncCallback<void>); /** - * Commit edit data and edited asset. + * Commits the edited image or video asset. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } editData - editData to be saved. - * @param { string } uri - uri of the edited asset within the applications's own sandbox. + * @param { string } editData - New data to commit. + * @param { string } uri - URI of the committed image or video in the application sandbox. * @returns { Promise<void> } Returns void. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Called by non-system application. @@ -1865,10 +2031,10 @@ declare namespace photoAccessHelper { */ commitEditedAsset(editData: string, uri: string): Promise<void>; /** - * Revert asset edits to original state. + * Reverts to the state of the file before being edited. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { AsyncCallback<void> } callback - Returns void. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1880,7 +2046,7 @@ declare namespace photoAccessHelper { */ revertToOriginal(callback: AsyncCallback<void>); /** - * Revert asset edits to original state. + * Reverts to the state of the file before being edited. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO * @returns { Promise<void> } Returns void. @@ -1895,10 +2061,10 @@ declare namespace photoAccessHelper { */ revertToOriginal(): Promise<void>; /** - * Request thumbnails of the asset. + * Obtains the quick thumbnail and quality thumbnail of this asset. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AsyncCallback<image.PixelMap> } callback - Returns the required pixels + * @param { AsyncCallback<image.PixelMap> } callback - Callback invoked twice to return the quick and quality thumbnails obtained. * @returns { string } Returns request photo task id. * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. @@ -1911,11 +2077,11 @@ declare namespace photoAccessHelper { */ requestPhoto(callback: AsyncCallback<image.PixelMap>): string; /** - * Request thumbnails of the asset. + * Obtains the thumbnails of an asset based on the specified options. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { RequestPhotoOptions } options - Request photo options - * @param { AsyncCallback<image.PixelMap> } callback - Returns the required pixels + * @param { RequestPhotoOptions } options - Options for obtaining the asset thumbnail. + * @param { AsyncCallback<image.PixelMap> } callback - Callback used to return the thumbnails obtained. The callback may be invoked more than once, depending on options. * @returns { string } Returns request photo task id. * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. @@ -1928,10 +2094,10 @@ declare namespace photoAccessHelper { */ requestPhoto(options: RequestPhotoOptions, callback: AsyncCallback<image.PixelMap>): string; /** - * Cancel photo request + * Cancels a task for obtaining media thumbnails. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { string } requestId - The request id to be canceled + * @param { string } requestId - ID of the task to cancel. * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1943,11 +2109,11 @@ declare namespace photoAccessHelper { */ cancelPhotoRequest(requestId: string): void; /** - * Fetch thumbnail of the video keyframe. + * Obtains the thumbnail of the specified type for the key frame. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { number } beginFrameTimeMs - Fetch the time position of the video frame. - * @param { ThumbnailType } type - The type of thumbnail. + * @param { number } beginFrameTimeMs - Time of the start frame, in ms. The value 0 indicates the cover frame. + * @param { ThumbnailType } type - Type of the thumbnail. * @returns { Promise<image.PixelMap> } Returns the thumbnail's pixelMap. * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -1976,6 +2142,16 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Enumeration of photo asset members + * + * @enum { string } PhotoKeys + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ enum PhotoKeys { /** * Asset uri, read only @@ -1988,7 +2164,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ URI = 'uri', /** @@ -2004,6 +2181,15 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Photo type of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ PHOTO_TYPE = 'media_type', /** * Asset name, read only @@ -2018,6 +2204,15 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Asset name, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ DISPLAY_NAME = 'display_name', /** * Size of the asset, read only @@ -2032,6 +2227,15 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Size of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ SIZE = 'size', /** * Creation date of the asset, read only @@ -2046,6 +2250,15 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Creation date of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ DATE_ADDED = 'date_added', /** * Modified date of the asset, read only @@ -2058,7 +2271,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ DATE_MODIFIED = 'date_modified', /** @@ -2074,6 +2288,15 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Duration of video files, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ DURATION = 'duration', /** * Width of the image asset, read only @@ -2088,6 +2311,15 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Width of the image asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ WIDTH = 'width', /** * Height of the image asset, read only @@ -2102,6 +2334,15 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Height of the image asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ HEIGHT = 'height', /** * Date taken of the asset, read only @@ -2115,6 +2356,16 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @since 12 + */ + /** + * Date taken of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ DATE_TAKEN = 'date_taken', /** @@ -2130,6 +2381,15 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Orientation of the image asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ ORIENTATION = 'orientation', /** * Favorite state of the asset, read only @@ -2144,6 +2404,15 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Favorite state of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ FAVORITE = 'is_favorite', /** * Title of the asset @@ -2158,6 +2427,15 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Title of the asset + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ TITLE = 'title', /** * Asset position, read only @@ -2172,13 +2450,22 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 16 */ - POSITION = 'position', /** - * Trashed date of the asset, read only + * Asset position, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ + POSITION = 'position', + /** + * Trashed date of the asset, read only * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ DATE_TRASHED = 'date_trashed', /** @@ -2186,7 +2473,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ HIDDEN = 'hidden', /** @@ -2194,7 +2482,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ USER_COMMENT = 'user_comment', /** @@ -2202,7 +2491,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ CAMERA_SHOT_KEY = 'camera_shot_key', /** @@ -2210,7 +2500,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ DATE_YEAR = 'date_year', /** @@ -2218,7 +2509,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ DATE_MONTH = 'date_month', /** @@ -2226,7 +2518,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ DATE_DAY = 'date_day', /** @@ -2234,7 +2527,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ PENDING = 'pending', /** @@ -2243,6 +2537,14 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ + /** + * Creation time of the asset in milliseconds, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ DATE_ADDED_MS = 'date_added_ms', /** * Modified time of the asset in milliseconds, read only @@ -2250,13 +2552,22 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ + /** + * Modified time of the asset in milliseconds, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ DATE_MODIFIED_MS = 'date_modified_ms', /** * Trashed time of the asset in milliseconds, read only * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ DATE_TRASHED_MS = 'date_trashed_ms', /** @@ -2265,13 +2576,22 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ + /** + * Photo subtype of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ PHOTO_SUBTYPE = 'subtype', /** * Effect mode of moving photo, read only * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ MOVING_PHOTO_EFFECT_MODE = 'moving_photo_effect_mode', /** @@ -2280,6 +2600,14 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ + /** + * Dynamic range type of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ DYNAMIC_RANGE_TYPE = 'dynamic_range_type', /** * Cover position of the asset, read only @@ -2287,6 +2615,14 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ + /** + * Cover position of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ COVER_POSITION = 'cover_position', /** * Unique uuid of the burst photos, read only @@ -2294,13 +2630,22 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ + /** + * Unique uuid of the burst photos, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ BURST_KEY = 'burst_key', /** * Thumbnail of photo asset has been ready, read only * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ THUMBNAIL_READY = 'thumbnail_ready', /** @@ -2309,6 +2654,14 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ + /** + * Width and height information of lcd picture, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ LCD_SIZE = 'lcd_size', /** * Width and height information of thumbnail picture, read only @@ -2316,6 +2669,14 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ + /** + * Width and height information of thumbnail picture, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ THM_SIZE = 'thm_size', /** * Detail time of the asset, read only @@ -2323,6 +2684,14 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 13 */ + /** + * Detail time of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ DETAIL_TIME = 'detail_time', /** * Date taken of the asset in milliseconds, read only @@ -2330,13 +2699,22 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 13 */ + /** + * Date taken of the asset in milliseconds, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ DATE_TAKEN_MS = 'date_taken_ms', /** * Cloud enhancement status of the asset, read only * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ CE_AVAILABLE = 'ce_available', /** @@ -2362,105 +2740,182 @@ declare namespace photoAccessHelper { * @systemapi * @since 18 */ - IS_CE_AUTO = 'is_auto' - + IS_CE_AUTO = 'is_auto', + /** + * Owner album id of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + OWNER_ALBUM_ID = 'owner_album_id', + /** + * Recentshow state of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + IS_RECENT_SHOW = 'is_recent_show', + /** + * Suffix of the asset, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @since 18 + */ + MEDIA_SUFFIX = 'media_suffix', + /** + * total size of assets, read only + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 19 + */ + SUM_SIZE = 'sum(size)' } /** - * Enumeration of photo album members. + * Enumerates the key album attributes. * * @enum { string } AlbumKeys * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Enumeration of photo album members. + * Enumerates the key album attributes. * * @enum { string } AlbumKeys * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum AlbumKeys { /** - * Album uri + * URI of the album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Album uri + * URI of the album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @since 12 */ + /** + * URI of the album. + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ URI = 'uri', /** - * Album name + * Name of the album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Album name + * Name of the album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ ALBUM_NAME = 'album_name', /** - * Album lpath + * Virtual path of the album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi * @since 18 */ - ALBUM_LPATH = 'lpath' + ALBUM_LPATH = 'lpath', + /** + * Bundle name of the album. + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + BUNDLE_NAME = 'bundle_name', + /** + * Timestamp when the album was modified, in milliseconds. + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + /** + * Timestamp when the album was modified, in milliseconds. + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @atomicservice + * @since 20 + */ + DATE_MODIFIED = 'date_modified', } /** - * Enumeration of mode for displaying albums containing hidden assets + * Enumerates the display modes of hidden files in the system. * * @enum { number } HiddenPhotosDisplayMode * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum HiddenPhotosDisplayMode { /** - * Display the system hidden album that contains all the hidden assets. + * Display all hidden files in the system. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ASSETS_MODE, /** - * Display all albums containing hidden assets(excluding the system hidden album and the system trash album). + * Display hidden files by album (display all albums that contain hidden files in the system, excluding the preset hidden album and the albums in the trash). * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ALBUMS_MODE } /** - * Options to fetch assets or albums + * Defines the options for fetching media files. * * @interface FetchOptions * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Options to fetch assets or albums + * Defines the options for fetching media files. * * @interface FetchOptions * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @since 12 + */ + /** + * Defines the options for fetching media files. + * + * @interface FetchOptions + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 */ interface FetchOptions { /** @@ -2478,32 +2933,53 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Indicates the members to query. + * + * @type { Array<string> } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ fetchColumns: Array<string>; /** - * Predicates to query + * Predicates that specify the fetch criteria. * * @type { dataSharePredicates.DataSharePredicates } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Predicates to query + * Predicates that specify the fetch criteria. * * @type { dataSharePredicates.DataSharePredicates } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @since 12 */ + /** + * Predicates that specify the fetch criteria. + * + * @type { dataSharePredicates.DataSharePredicates } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ predicates: dataSharePredicates.DataSharePredicates; } /** - * Options to create a photo asset for system apps + * Options for creating an image or video asset. * * @interface PhotoCreateOptions * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface PhotoCreateOptions { /** @@ -2512,7 +2988,8 @@ declare namespace photoAccessHelper { * @type { ?PhotoSubtype } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ subtype?: PhotoSubtype; /** @@ -2521,9 +2998,19 @@ declare namespace photoAccessHelper { * @type { ?string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ cameraShotKey?: string; + /** + * User id + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 19 + */ + userId?: number; } /** @@ -2532,7 +3019,8 @@ declare namespace photoAccessHelper { * @interface PhotoCreationConfig * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface PhotoCreationConfig { /** @@ -2541,7 +3029,8 @@ declare namespace photoAccessHelper { * @type { ?string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ title?: string; @@ -2551,7 +3040,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ fileNameExtension: string; @@ -2561,7 +3051,8 @@ declare namespace photoAccessHelper { * @type { PhotoType } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ photoType: PhotoType; @@ -2571,25 +3062,27 @@ declare namespace photoAccessHelper { * @type { ?PhotoSubtype } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ subtype?: PhotoSubtype; } /** - * Options to create a photo asset + * Options for creating an image or video asset. * * @interface CreateOptions * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Options to create a photo asset + * Options for creating an image or video asset. * * @interface CreateOptions * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ interface CreateOptions { /** @@ -2605,7 +3098,8 @@ declare namespace photoAccessHelper { * @type { ?string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ title?: string; /** @@ -2614,58 +3108,119 @@ declare namespace photoAccessHelper { * @type { ?PhotoSubtype } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ subtype?: PhotoSubtype; } /** - * Options to request photo + * Defines the options for obtaining the thumbnail of an image or video. * * @interface RequestPhotoOptions * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ interface RequestPhotoOptions { /** - * Size of thumbnail + * Size of the thumbnail to obtain. * * @type { ?image.Size } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ size?: image.Size; /** - * Type of photo request + * Operation to perform. * * @type { ?RequestPhotoType } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ requestPhotoType?: RequestPhotoType; } /** - * The fetch result of assets or albums + * Defines the application information provided to create assets on behalf of the application. + * + * @interface PhotoCreationSource + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + interface PhotoCreationSource { + /** + * Bundle name of the target application + * + * @type { ?string } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + bundleName?: string; + /** + * Name of the target application + * + * @type { ?string } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + appName?: string; + /** + * ID of the target application + * + * @type { ?string } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + appId?: string; + /** + * Token ID of the target application + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + tokenId?: number; + } + + /** + * Provides APIs to manage the file retrieval result. * * @interface FetchResult * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * The fetch result of assets or albums + * Provides APIs to manage the file retrieval result. * * @interface FetchResult * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @since 12 */ + /** + * Provides APIs to manage the file retrieval result. + * + * @interface FetchResult + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ interface FetchResult<T> { /** - * Obtains the total number of objects in the fetch result. + * Obtains the total number of files in the result set. * * @returns { number } Total number of objects. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2676,7 +3231,7 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains the total number of objects in the fetch result. + * Obtains the total number of files in the result set. * * @returns { number } Total number of objects. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2687,9 +3242,23 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains the total number of files in the result set. + * + * @returns { number } Total number of objects. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getCount(): number; /** - * Checks whether the result set points to the last row. + * Checks whether the cursor is in the last row of the result set. * You need to check whether the object is the last one before calling getNextObject. * * @returns { boolean } Whether the object is the last one in the fetch result. @@ -2701,7 +3270,7 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Checks whether the result set points to the last row. + * Checks whether the cursor is in the last row of the result set. * You need to check whether the object is the last one before calling getNextObject. * * @returns { boolean } Whether the object is the last one in the fetch result. @@ -2713,11 +3282,25 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Checks whether the cursor is in the last row of the result set. + * You need to check whether the object is the last one before calling getNextObject. + * + * @returns { boolean } Whether the object is the last one in the fetch result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since 20 + */ isAfterLast(): boolean; /** - * Obtains the first object in the fetch result. + * Obtains the first file asset in the result set. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<T> } callback - Returns the first object in the fetch result. + * @param { AsyncCallback<T> } callback - Callback used to return the first file asset obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900020 - Invalid argument @@ -2726,9 +3309,9 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains the first object in the fetch result. + * Obtains the first file asset in the result set. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<T> } callback - Returns the first object in the fetch result. + * @param { AsyncCallback<T> } callback - Callback used to return the first file asset obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900020 - Invalid argument @@ -2737,9 +3320,23 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains the first file asset in the result set. This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<T> } callback - Callback used to return the first file asset obtained. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getFirstObject(callback: AsyncCallback<T>): void; /** - * Obtains the first object in the fetch result. + * Obtains the first file asset in the result set. This API uses a promise to return the result. * * @returns { Promise<T> } Returns the first object in the fetch result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2750,7 +3347,7 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains the first object in the fetch result. + * Obtains the first file asset in the result set. This API uses a promise to return the result. * * @returns { Promise<T> } Returns the first object in the fetch result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2761,13 +3358,26 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains the first file asset in the result set. This API uses a promise to return the result. + * + * @returns { Promise<T> } Returns the first object in the fetch result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getFirstObject(): Promise<T>; /** - * Obtains the next object in the fetch result. - * Before calling this method, you must use isAfterLast() to check whether the current position is the last row - * in the fetch result. This method only works when the current position is not the last row. + * Obtains the next file asset in the result set. This API uses an asynchronous callback to return the result. + * Before using this API, you must use isAfterLast() to check whether the current position is the end of the result set. * - * @param { AsyncCallback<T> } callback - Returns the next object + * @param { AsyncCallback<T> } callback - Callback used to return the next file asset obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900020 - Invalid argument @@ -2776,11 +3386,10 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains the next object in the fetch result. - * Before calling this method, you must use isAfterLast() to check whether the current position is the last row - * in the fetch result. This method only works when the current position is not the last row. + * Obtains the next file asset in the result set. This API uses an asynchronous callback to return the result. + * Before using this API, you must use isAfterLast() to check whether the current position is the end of the result set. * - * @param { AsyncCallback<T> } callback - Returns the next object + * @param { AsyncCallback<T> } callback - Callback used to return the next file asset obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900020 - Invalid argument @@ -2789,11 +3398,25 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains the next file asset in the result set. This API uses an asynchronous callback to return the result. + * Before using this API, you must use isAfterLast() to check whether the current position is the end of the result set. + * + * @param { AsyncCallback<T> } callback - Callback used to return the next file asset obtained. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getNextObject(callback: AsyncCallback<T>): void; /** - * Obtains the next object in the fetch result. - * Before calling this method, you must use isAfterLast() to check whether the current position is the last row - * in the fetch result. This method only works when the current position is not the last row. + * Obtains the next file asset in the result set. This API uses a promise to return the result. + * Before using this API, you must use isAfterLast() to check whether the current position is the end of the result set. * * @returns { Promise<T> } Returns the next object * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2804,9 +3427,8 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains the next object in the fetch result. - * Before calling this method, you must use isAfterLast() to check whether the current position is the last row - * in the fetch result. This method only works when the current position is not the last row. + * Obtains the next file asset in the result set. This API uses a promise to return the result. + * Before using this API, you must use isAfterLast() to check whether the current position is the end of the result set. * * @returns { Promise<T> } Returns the next object * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2817,11 +3439,26 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains the next file asset in the result set. This API uses a promise to return the result. + * Before using this API, you must use isAfterLast() to check whether the current position is the end of the result set. + * + * @returns { Promise<T> } Returns the next object + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getNextObject(): Promise<T>; /** - * Obtains the last object in the fetch result + * Obtains the last file asset in the result set. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<T> } callback - Returns the last object + * @param { AsyncCallback<T> } callback - Callback used to return the last file asset obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900020 - Invalid argument @@ -2830,9 +3467,9 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains the last object in the fetch result + * Obtains the last file asset in the result set. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<T> } callback - Returns the last object + * @param { AsyncCallback<T> } callback - Callback used to return the last file asset obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900020 - Invalid argument @@ -2841,9 +3478,22 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains the last file asset in the result set. This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<T> } callback - Callback used to return the last file asset obtained. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since 20 + */ getLastObject(callback: AsyncCallback<T>): void; /** - * Obtains the last object in the fetch result + * Obtains the last file asset in the result set. This API uses a promise to return the result. * * @returns { Promise<T> } Returns the last object * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2854,7 +3504,7 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains the last object in the fetch result + * Obtains the last file asset in the result set. This API uses a promise to return the result. * * @returns { Promise<T> } Returns the last object * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2865,12 +3515,25 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains the last file asset in the result set. This API uses a promise to return the result. + * + * @returns { Promise<T> } Returns the last object + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since 20 + */ getLastObject(): Promise<T>; /** - * Obtains the object with the specified index in the fetch result. + * Obtains a file asset with the specified index in the result set. This API uses an asynchronous callback to return the result. * - * @param { number } index - Index of the object to obtain. - * @param { AsyncCallback<T> } callback - Returns the object + * @param { number } index - Index of the file asset to obtain. The value starts from 0. + * @param { AsyncCallback<T> } callback - Callback used to return the file asset obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900020 - Invalid argument @@ -2879,10 +3542,10 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains the object with the specified index in the fetch result. + * Obtains a file asset with the specified index in the result set. This API uses an asynchronous callback to return the result. * - * @param { number } index - Index of the object to obtain. - * @param { AsyncCallback<T> } callback - Returns the object + * @param { number } index - Index of the file asset to obtain. The value starts from 0. + * @param { AsyncCallback<T> } callback - Callback used to return the file asset obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900020 - Invalid argument @@ -2891,11 +3554,26 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains a file asset with the specified index in the result set. This API uses an asynchronous callback to return the result. + * + * @param { number } index - Index of the file asset to obtain. The value starts from 0. + * @param { AsyncCallback<T> } callback - Callback used to return the file asset obtained. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getObjectByPosition(index: number, callback: AsyncCallback<T>): void; /** - * Obtains the object with the specified index in the fetch result. + * Obtains a file asset with the specified index in the result set. This API uses a promise to return the result. * - * @param { number } index - Index of the asset to obtain. + * @param { number } index - Index of the file asset to obtain. The value starts from 0. * @returns { Promise<T> } Returns the object * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2905,9 +3583,9 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains the object with the specified index in the fetch result. + * Obtains a file asset with the specified index in the result set. This API uses a promise to return the result. * - * @param { number } index - Index of the asset to obtain. + * @param { number } index - Index of the file asset to obtain. The value starts from 0. * @returns { Promise<T> } Returns the object * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2917,11 +3595,26 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains a file asset with the specified index in the result set. This API uses a promise to return the result. + * + * @param { number } index - Index of the file asset to obtain. The value starts from 0. + * @returns { Promise<T> } Returns the object + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getObjectByPosition(index: number): Promise<T>; /** - * Obtains all objects in the fetch result. + * Obtains all the file assets in the result set. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<Array<T>> } callback - Returns all the objects + * @param { AsyncCallback<Array<T>> } callback - Callback used to return an array of all file assets in the result set. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900020 - Invalid argument @@ -2930,9 +3623,9 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains all objects in the fetch result. + * Obtains all the file assets in the result set. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<Array<T>> } callback - Returns all the objects + * @param { AsyncCallback<Array<T>> } callback - Callback used to return an array of all file assets in the result set. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900020 - Invalid argument @@ -2941,9 +3634,23 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains all the file assets in the result set. This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<Array<T>> } callback - Callback used to return an array of all file assets in the result set. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getAllObjects(callback: AsyncCallback<Array<T>>): void; /** - * Obtains all objects in the fetch result. + * Obtains all the file assets in the result set. This API uses a promise to return the result. * * @returns { Promise<Array<T>> } Returns all the objects * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2954,7 +3661,7 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Obtains all objects in the fetch result. + * Obtains all the file assets in the result set. This API uses a promise to return the result. * * @returns { Promise<Array<T>> } Returns all the objects * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2965,9 +3672,23 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Obtains all the file assets in the result set. This API uses a promise to return the result. + * + * @returns { Promise<Array<T>> } Returns all the objects + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getAllObjects(): Promise<Array<T>>; /** - * Releases the fetch result. + * Closes this FetchResult instance to invalidate it. After this instance is released, the APIs in this instance cannot be invoked. * * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -2977,7 +3698,7 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Releases the fetch result. + * Closes this FetchResult instance to invalidate it. After this instance is released, the APIs in this instance cannot be invoked. * * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -2987,77 +3708,103 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Closes this FetchResult instance to invalidate it. After this instance is released, the APIs in this instance cannot be invoked. + * + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ close(): void; } /** - * Album type. + * Enumerates the album types. * * @enum { number } AlbumType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Album type. + * Enumerates the album types. * * @enum { number } AlbumType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum AlbumType { /** - * Album created by user. + * User album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Album created by user. + * User album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ USER = 0, /** - * Album created by system, which metadata cannot be modified. + * System album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Album created by system, which metadata cannot be modified. + * System album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ SYSTEM = 1024, + /** + * Album created by app. + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + SOURCE = 2048, /** * Album created by smart abilities. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ SMART = 4096 } /** - * Album subtype + * Enumerate the album subtypes. * * @enum { number } AlbumSubtype * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Album subtype + * Enumerate the album subtypes. * * @enum { number } AlbumSubtype * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum AlbumSubtype { /** @@ -3071,7 +3818,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ USER_GENERIC = 1, /** @@ -3085,7 +3833,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ FAVORITE = 1025, /** @@ -3099,7 +3848,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ VIDEO, /** @@ -3107,7 +3857,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ HIDDEN, /** @@ -3115,7 +3866,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ TRASH, /** @@ -3123,7 +3875,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ SCREENSHOT, /** @@ -3131,7 +3884,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ CAMERA, /** @@ -3145,7 +3899,8 @@ declare namespace photoAccessHelper { * Image album * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ IMAGE = 1031, /** @@ -3153,7 +3908,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ CLOUD_ENHANCEMENT = 1032, /** @@ -3161,7 +3917,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ SOURCE_GENERIC = 2049, /** @@ -3169,7 +3926,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ CLASSIFY = 4097, /** @@ -3177,7 +3935,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ GEOGRAPHY_LOCATION = 4099, /** @@ -3185,7 +3944,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ GEOGRAPHY_CITY, /** @@ -3193,7 +3953,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ SHOOTING_MODE, /** @@ -3201,7 +3962,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ PORTRAIT, /** @@ -3209,7 +3971,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ GROUP_PHOTO, /** @@ -3217,7 +3980,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ HIGHLIGHT = 4104, /** @@ -3225,7 +3989,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ HIGHLIGHT_SUGGESTIONS, /** @@ -3239,42 +4004,47 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ ANY = 2147483647 } /** - * Request photo type. + * Enumerates the types of the operation for obtaining image or video thumbnails. * * @enum { number } RequestPhotoType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum RequestPhotoType { /** - * Request all thumbnails: fast thumbnail and quality thumbnail + * Obtain both the quick thumbnail and the quality thumbnail. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ REQUEST_ALL_THUMBNAILS = 0, /** - * Only request fast thumbnail + * Obtain only the quick thumbnail. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ REQUEST_FAST_THUMBNAIL, /** - * Only request quality thumbnail + * Obtain only the quality thumbnail. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ REQUEST_QUALITY_THUMBNAIL } @@ -3292,7 +4062,8 @@ declare namespace photoAccessHelper { * @interface AbsAlbum * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface AbsAlbum { /** @@ -3310,7 +4081,8 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ readonly albumType: AlbumType; /** @@ -3328,7 +4100,8 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ readonly albumSubtype: AlbumSubtype; /** @@ -3344,7 +4117,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ albumName: string; /** @@ -3362,7 +4136,8 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ readonly albumUri: string; /** @@ -3380,7 +4155,8 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ readonly count: number; /** @@ -3389,7 +4165,8 @@ declare namespace photoAccessHelper { * @type { string } * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ readonly coverUri: string; /** @@ -3403,11 +4180,11 @@ declare namespace photoAccessHelper { */ readonly lpath?: string; /** - * Fetch assets in an album. + * Obtains image and video assets. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { FetchOptions } options - Fetch options. - * @param { AsyncCallback<FetchResult<PhotoAsset>> } callback - Returns the fetch result + * @param { FetchOptions } options - Options for fetching the image and video assets. + * @param { AsyncCallback<FetchResult<PhotoAsset>> } callback - Callback used to return the image and video assets obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -3417,11 +4194,11 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Fetch assets in an album. + * Obtains image and video assets. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { FetchOptions } options - Fetch options. - * @param { AsyncCallback<FetchResult<PhotoAsset>> } callback - Returns the fetch result + * @param { FetchOptions } options - Options for fetching the image and video assets. + * @param { AsyncCallback<FetchResult<PhotoAsset>> } callback - Callback used to return the image and video assets obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -3461,6 +4238,23 @@ declare namespace photoAccessHelper { * @crossplatform * @since 12 */ + /** + * Fetch assets in an album. + * + * @permission ohos.permission.READ_IMAGEVIDEO + * @param { FetchOptions } options - Fetch options. + * @returns { Promise<FetchResult<PhotoAsset>> } Returns the fetch result + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getAssets(options: FetchOptions): Promise<FetchResult<PhotoAsset>>; /** * Fetch shared photo assets in an album. @@ -3495,7 +4289,8 @@ declare namespace photoAccessHelper { * @interface Album * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface Album extends AbsAlbum { /** @@ -3513,7 +4308,8 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ readonly imageCount?: number; /** @@ -3531,9 +4327,30 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ readonly videoCount?: number; + /** + * Album dateAdded + * + * @type { ?number } + * @readonly + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + readonly dateAdded?: number; + /** + * Album dateModified + * + * @type { ?number } + * @readonly + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + readonly dateModified?: number; /** * Modify metadata for the album * @@ -3545,7 +4362,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ commitModify(callback: AsyncCallback<void>): void; /** @@ -3559,15 +4377,17 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ commitModify(): Promise<void>; /** - * Add assets to the album. + * Adds image and video assets to an album. Before the operation, ensure that the image and video assets to add and the album exist. + * This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } assets - Assets to add - * @param { AsyncCallback<void> } callback - Returns void + * @param { Array<PhotoAsset> } assets - Array of the image and video assets to add. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -3580,10 +4400,11 @@ declare namespace photoAccessHelper { */ addAssets(assets: Array<PhotoAsset>, callback: AsyncCallback<void>): void; /** - * Add assets to the album. + * Adds image and video assets to an album. Before the operation, ensure that the image and video assets to add and the album exist. + * This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } assets - Assets to add + * @param { Array<PhotoAsset> } assets - Array of the image and video assets to add. * @returns { Promise<void> } Returns void * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -3597,11 +4418,12 @@ declare namespace photoAccessHelper { */ addAssets(assets: Array<PhotoAsset>): Promise<void>; /** - * Remove assets from the album. + * Removes image and video assets from an album. The album and file resources must exist. + * This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } assets - Assets to remove - * @param { AsyncCallback<void> } callback - Returns void + * @param { Array<PhotoAsset> } assets - Array of the image and video assets to remove. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -3614,10 +4436,11 @@ declare namespace photoAccessHelper { */ removeAssets(assets: Array<PhotoAsset>, callback: AsyncCallback<void>): void; /** - * Remove assets from the album. + * Removes image and video assets from an album. The album and file resources must exist. + * This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } assets - Assets to remove + * @param { Array<PhotoAsset> } assets - Array of the image and video assets to remove. * @returns { Promise<void> } Returns void * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -3631,11 +4454,12 @@ declare namespace photoAccessHelper { */ removeAssets(assets: Array<PhotoAsset>): Promise<void>; /** - * Recover assets from the trash album. + * Recovers image or video assets from the trash. Before the operation, ensure that the image or video assets exist in the trash. + * This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } assets - Assets to recover - * @param { AsyncCallback<void> } callback - Returns void + * @param { Array<PhotoAsset> } assets - Array of the image or video assets to recover. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -3650,10 +4474,11 @@ declare namespace photoAccessHelper { */ recoverAssets(assets: Array<PhotoAsset>, callback: AsyncCallback<void>): void; /** - * Recover assets from the trash album. + * Recovers image or video assets from the trash. Before the operation, ensure that the image or video assets exist in the trash. + * This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } assets - Assets to recover + * @param { Array<PhotoAsset> } assets - Array of the image or video assets to recover. * @returns { Promise<void> } Returns void * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -3669,11 +4494,12 @@ declare namespace photoAccessHelper { */ recoverAssets(assets: Array<PhotoAsset>): Promise<void>; /** - * Delete assets permanently from the trash album. + * Deletes image or video assets from the trash. Before the operation, ensure that the image or video assets exist in the trash. + * This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } assets - Assets to delete - * @param { AsyncCallback<void> } callback - Returns void + * @param { Array<PhotoAsset> } assets - Array of the image or video assets to delete. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -3688,10 +4514,11 @@ declare namespace photoAccessHelper { */ deleteAssets(assets: Array<PhotoAsset>, callback: AsyncCallback<void>): void; /** - * Delete assets permanently from the trash album. + * Deletes image or video assets from the trash. Before the operation, ensure that the image or video assets exist in the trash. + * This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } assets - Assets to delete + * @param { Array<PhotoAsset> } assets - Array of the image or video assets to delete. * @returns { Promise<void> } Returns void * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -3707,11 +4534,11 @@ declare namespace photoAccessHelper { */ deleteAssets(assets: Array<PhotoAsset>): Promise<void>; /** - * Set cover uri for this album. + * Sets the album cover. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } uri - The asset uri to set - * @param { AsyncCallback<void> } callback - Returns void + * @param { string } uri - URI of the file to be set as the album cover. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -3726,10 +4553,10 @@ declare namespace photoAccessHelper { */ setCoverUri(uri: string, callback: AsyncCallback<void>): void; /** - * Set cover uri for this album. + * Sets the album cover. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } uri - The asset uri to set + * @param { string } uri - URI of the file to be set as the album cover. * @returns { Promise<void> } Returns void * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -3745,7 +4572,7 @@ declare namespace photoAccessHelper { */ setCoverUri(uri: string): Promise<void>; /** - * Get the faceId of the portrait album or group photo album. + * Obtains the face identifier on the cover of a portrait album or group photo album. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<string> } Returns tag_id if portrait album, Returns group_tag if group photo album, @@ -3755,7 +4582,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - Internal system error * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ getFaceId(): Promise<string>; } @@ -3782,15 +4610,16 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface PhotoAccessHelper { /** - * Fetch photo assets + * Obtains image and video assets. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { FetchOptions } options - Fetch options. - * @param { AsyncCallback<FetchResult<PhotoAsset>> } callback - Returns the fetch result. + * @param { FetchOptions } options - Options for fetching the image and video assets. + * @param { AsyncCallback<FetchResult<PhotoAsset>> } callback - Callback used to return the image and video assets obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -3800,11 +4629,11 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Fetch photo assets + * Obtains image and video assets. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { FetchOptions } options - Fetch options. - * @param { AsyncCallback<FetchResult<PhotoAsset>> } callback - Returns the fetch result. + * @param { FetchOptions } options - Options for fetching the image and video assets. + * @param { AsyncCallback<FetchResult<PhotoAsset>> } callback - Callback used to return the image and video assets obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -3812,14 +4641,15 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ getAssets(options: FetchOptions, callback: AsyncCallback<FetchResult<PhotoAsset>>): void; /** - * Fetch photo assets + * Obtains image and video assets. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { FetchOptions } options - Retrieval options. + * @param { FetchOptions } options - Options for fetching the image and video assets. * @returns { Promise<FetchResult<PhotoAsset>> } Returns the fetch result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -3830,10 +4660,10 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Fetch photo assets + * Obtains image and video assets. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { FetchOptions } options - Retrieval options. + * @param { FetchOptions } options - Options for fetching the image and video assets. * @returns { Promise<FetchResult<PhotoAsset>> } Returns the fetch result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -3842,15 +4672,16 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ getAssets(options: FetchOptions): Promise<FetchResult<PhotoAsset>>; /** - * Fetch a group of burst assets + * Obtains burst assets. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { string } burstKey - Burst asset uuid - * @param { FetchOptions } options - Retrieval options. + * @param { string } burstKey - UUID of a set of burst photos (BURST_KEY of PhotoKeys). The value is a string of 36 characters. + * @param { FetchOptions } options - Options for fetching the burst photos. * @returns { Promise<FetchResult<PhotoAsset>> } Returns the fetch result. * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -3859,13 +4690,29 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ + /** + * Obtains burst assets. This API uses a promise to return the result. + * + * @permission ohos.permission.READ_IMAGEVIDEO + * @param { string } burstKey - UUID of a set of burst photos (BURST_KEY of PhotoKeys). The value is a string of 36 characters. + * @param { FetchOptions } options - Options for fetching the burst photos. + * @returns { Promise<FetchResult<PhotoAsset>> } Returns the fetch result. + * @throws { BusinessError } 201 - Permission denied + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 14000011 - Internal system error + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since arkts {'1.1':'20','1.2':'20'} + * @arkts 1.1&1.2 + */ getBurstAssets(burstKey: string, options: FetchOptions): Promise<FetchResult<PhotoAsset>>; /** - * Create a photo asset + * Creates an image or video asset with the specified file name. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } displayName - Asset name - * @param { AsyncCallback<PhotoAsset> } callback - Returns the newly created asset + * @param { string } displayName - File name of the image or video to create. + * @param { AsyncCallback<PhotoAsset> } callback - File name of the image or video to create. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -3875,14 +4722,15 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ createAsset(displayName: string, callback: AsyncCallback<PhotoAsset>): void; /** - * Create a photo asset + * Creates an image or video asset with the specified file name. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } displayName - Asset name + * @param { string } displayName - File name of the image or video to create. * @returns { Promise<PhotoAsset> } Returns the newly created asset * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -3893,15 +4741,16 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ createAsset(displayName: string): Promise<PhotoAsset>; /** - * Create a photo asset + * Creates an image or video asset with the specified file name and options. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } displayName - Asset name - * @param { PhotoCreateOptions } options - Create operation + * @param { string } displayName - File name of the image or video to create. + * @param { PhotoCreateOptions } options - Options for creating an image or video asset. * @returns { Promise<PhotoAsset> } Returns the newly created asset * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -3912,16 +4761,18 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ createAsset(displayName: string, options: PhotoCreateOptions): Promise<PhotoAsset>; /** - * Create a photo asset + * Creates an image or video asset with the specified file name and options. + * This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } displayName - Asset name - * @param { PhotoCreateOptions } options - Photo create operation - * @param { AsyncCallback<PhotoAsset> } callback - Returns the newly created asset + * @param { string } displayName - File name of the image or video to create. + * @param { PhotoCreateOptions } options - Options for creating an image or video asset. + * @param { AsyncCallback<PhotoAsset> } callback - Callback used to return the image or video created. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -3931,19 +4782,19 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ createAsset(displayName: string, options: PhotoCreateOptions, callback: AsyncCallback<PhotoAsset>): void; /** - * Create a photo asset: - * 1. (Suggested)Integrate security component without WRITE_IMAGEVIDEO permission; - * 2. Get WRITE_IMAGEVIDEO permission by ACL; + * Creates an image or video asset with the specified file type, file name extension, and options. + * This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { PhotoType } photoType - Photo asset type - * @param { string } extension - Asset extension - * @param { CreateOptions } options - Asset create option - * @param { AsyncCallback<string> } callback - Returns the uri of the newly created asset + * @param { PhotoType } photoType - Type of the file to create, which can be IMAGE or VIDEO. + * @param { string } extension - File name extension, for example, 'jpg'. + * @param { CreateOptions } options - Options for creating the image or video asset, for example, {title: 'testPhoto'}. + * @param { AsyncCallback<string> } callback - Callback used to return the URI of the created image or video asset. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -3953,15 +4804,14 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Create a photo asset: - * 1. (Suggested)Integrate security component without WRITE_IMAGEVIDEO permission; - * 2. Get WRITE_IMAGEVIDEO permission by ACL; + * Creates an image or video asset with the specified file type, file name extension, and options. + * This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { PhotoType } photoType - Photo asset type - * @param { string } extension - Asset extension - * @param { CreateOptions } options - Asset create option - * @param { AsyncCallback<string> } callback - Returns the uri of the newly created asset + * @param { PhotoType } photoType - Type of the file to create, which can be IMAGE or VIDEO. + * @param { string } extension - File name extension, for example, 'jpg'. + * @param { CreateOptions } options - Options for creating the image or video asset, for example, {title: 'testPhoto'}. + * @param { AsyncCallback<string> } callback - Callback used to return the URI of the created image or video asset. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -3969,18 +4819,18 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ createAsset(photoType: PhotoType, extension: string, options: CreateOptions, callback: AsyncCallback<string>): void; /** - * Create a photo asset: - * 1. (Suggested)Integrate security component without WRITE_IMAGEVIDEO permission; - * 2. Get WRITE_IMAGEVIDEO permission by ACL; + * Creates an image or video asset with the specified file type and file name extension. + * This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { PhotoType } photoType - Photo asset type - * @param { string } extension - Asset extension - * @param { AsyncCallback<string> } callback - Returns the uri of the newly created asset + * @param { PhotoType } photoType - Type of the file to create, which can be IMAGE or VIDEO. + * @param { string } extension - File name extension, for example, 'jpg'. + * @param { AsyncCallback<string> } callback - Callback used to return the URI of the created image or video asset. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -3990,14 +4840,13 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Create a photo asset: - * 1. (Suggested)Integrate security component without WRITE_IMAGEVIDEO permission; - * 2. Get WRITE_IMAGEVIDEO permission by ACL; + * Creates an image or video asset with the specified file type and file name extension. + * This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { PhotoType } photoType - Photo asset type - * @param { string } extension - Asset extension - * @param { AsyncCallback<string> } callback - Returns the uri of the newly created asset + * @param { PhotoType } photoType - Type of the file to create, which can be IMAGE or VIDEO. + * @param { string } extension - File name extension, for example, 'jpg'. + * @param { AsyncCallback<string> } callback - Callback used to return the URI of the created image or video asset. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -4005,18 +4854,18 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ createAsset(photoType: PhotoType, extension: string, callback: AsyncCallback<string>): void; /** - * Create a photo asset: - * 1. (Suggested)Integrate security component without WRITE_IMAGEVIDEO permission; - * 2. Get WRITE_IMAGEVIDEO permission by ACL; + * Creates an image or video asset with the specified file type, file name extension, and options. + * This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { PhotoType } photoType - Photo asset type - * @param { string } extension - Asset extension - * @param { CreateOptions } [options] - Optional asset create option + * @param { PhotoType } photoType - Type of the file to create, which can be IMAGE or VIDEO. + * @param { string } extension - File name extension, for example, 'jpg'. + * @param { CreateOptions } [options] - Options for creating the image or video asset, for example, {title: 'testPhoto'}. * @returns { Promise<string> } Returns the uri of the newly created asset * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -4027,14 +4876,13 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Create a photo asset: - * 1. (Suggested)Integrate security component without WRITE_IMAGEVIDEO permission; - * 2. Get WRITE_IMAGEVIDEO permission by ACL; + * Creates an image or video asset with the specified file type, file name extension, and options. + * This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { PhotoType } photoType - Photo asset type - * @param { string } extension - Asset extension - * @param { CreateOptions } [options] - Optional asset create option + * @param { PhotoType } photoType - Type of the file to create, which can be IMAGE or VIDEO. + * @param { string } extension - File name extension, for example, 'jpg'. + * @param { CreateOptions } [options] - Options for creating the image or video asset, for example, {title: 'testPhoto'}. * @returns { Promise<string> } Returns the uri of the newly created asset * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -4043,20 +4891,21 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ createAsset(photoType: PhotoType, extension: string, options?: CreateOptions): Promise<string>; /** - * Create a generic user album. + * Creates an album. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } name - Album name to be created. - * @param { AsyncCallback<Album> } callback - Returns the instance of newly created Album + * @param { string } name - Name of the album to create. + * @param { AsyncCallback<Album> } callback - Callback used to return the created album instance. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied - * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900015 - The file name already exists. * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -4067,16 +4916,16 @@ declare namespace photoAccessHelper { */ createAlbum(name: string, callback: AsyncCallback<Album>): void; /** - * Create a generic user album. + * Creates an album. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } name - Album name to be created. + * @param { string } name - Name of the album to create. * @returns { Promise<Album> } Returns the instance of newly created Album * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied - * @throws { BusinessError } 13900015 - File exists + * @throws { BusinessError } 13900015 - The file name already exists. * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -4087,11 +4936,12 @@ declare namespace photoAccessHelper { */ createAlbum(name: string): Promise<Album>; /** - * Delete generic user-created albums. + * Deletes albums. This API uses an asynchronous callback to return the result. + * Ensure that the albums to be deleted exist. Only user albums can be deleted. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<Album> } albums - Specify which albums to delete - * @param { AsyncCallback<void> } callback - Returns void + * @param { Array<Album> } albums - Albums to delete. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -4106,10 +4956,11 @@ declare namespace photoAccessHelper { */ deleteAlbums(albums: Array<Album>, callback: AsyncCallback<void>): void; /** - * Delete generic user-created albums. + * Deletes albums. This API uses a promise to return the result. + * Ensure that the albums to be deleted exist. Only user albums can be deleted. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<Album> } albums - Specify which albums to delete + * @param { Array<Album> } albums - Albums to delete. * @returns { Promise<void> } Returns void * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -4125,13 +4976,14 @@ declare namespace photoAccessHelper { */ deleteAlbums(albums: Array<Album>): Promise<void>; /** - * Fetch albums. + * Obtains albums based on the specified options and album type. This API uses an asynchronous callback to return the result. + * Before the operation, ensure that the albums to obtain exist. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AlbumType } type - Album type. - * @param { AlbumSubtype } subtype - Album subtype. - * @param { FetchOptions } options - options to fetch albums - * @param { AsyncCallback<FetchResult<Album>> } callback - Returns the fetch result + * @param { AlbumType } type - Type of the album. + * @param { AlbumSubtype } subtype - Subtype of the album. + * @param { FetchOptions } options - Options for fetching the albums. + * @param { AsyncCallback<FetchResult<Album>> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -4141,13 +4993,14 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Fetch albums. + * Obtains albums based on the specified options and album type. This API uses an asynchronous callback to return the result. + * Before the operation, ensure that the albums to obtain exist. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AlbumType } type - Album type. - * @param { AlbumSubtype } subtype - Album subtype. - * @param { FetchOptions } options - options to fetch albums - * @param { AsyncCallback<FetchResult<Album>> } callback - Returns the fetch result + * @param { AlbumType } type - Type of the album. + * @param { AlbumSubtype } subtype - Subtype of the album. + * @param { FetchOptions } options - Options for fetching the albums. + * @param { AsyncCallback<FetchResult<Album>> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -4155,7 +5008,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ getAlbums( type: AlbumType, @@ -4164,12 +5018,13 @@ declare namespace photoAccessHelper { callback: AsyncCallback<FetchResult<Album>> ): void; /** - * Fetch albums. + * Obtains albums by type. This API uses an asynchronous callback to return the result. + * Before the operation, ensure that the albums to obtain exist. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AlbumType } type - Album type. - * @param { AlbumSubtype } subtype - Album subtype. - * @param { AsyncCallback<FetchResult<Album>> } callback - Returns the fetch result + * @param { AlbumType } type - Type of the album. + * @param { AlbumSubtype } subtype - Subtype of the album. + * @param { AsyncCallback<FetchResult<Album>> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -4179,12 +5034,13 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Fetch albums. + * Obtains albums by type. This API uses an asynchronous callback to return the result. + * Before the operation, ensure that the albums to obtain exist. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AlbumType } type - Album type. - * @param { AlbumSubtype } subtype - Album subtype. - * @param { AsyncCallback<FetchResult<Album>> } callback - Returns the fetch result + * @param { AlbumType } type - Type of the album. + * @param { AlbumSubtype } subtype - Subtype of the album. + * @param { AsyncCallback<FetchResult<Album>> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -4192,16 +5048,18 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ getAlbums(type: AlbumType, subtype: AlbumSubtype, callback: AsyncCallback<FetchResult<Album>>): void; /** - * Fetch albums. + * Obtains albums based on the specified options and album type. This API uses a promise to return the result. + * Before the operation, ensure that the albums to obtain exist. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AlbumType } type - Album type. - * @param { AlbumSubtype } subtype - Album subtype. - * @param { FetchOptions } [options] - options to fetch albums + * @param { AlbumType } type - Type of the album. + * @param { AlbumSubtype } subtype - Subtype of the album. + * @param { FetchOptions } [options] - Options for fetching the albums. * @returns { Promise<FetchResult<Album>> } - Returns the fetch result * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -4212,12 +5070,13 @@ declare namespace photoAccessHelper { * @since 10 */ /** - * Fetch albums. + * Obtains albums based on the specified options and album type. This API uses a promise to return the result. + * Before the operation, ensure that the albums to obtain exist. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AlbumType } type - Album type. + * @param { AlbumType } type - Type of the album. * @param { AlbumSubtype } subtype - Album subtype. - * @param { FetchOptions } [options] - options to fetch albums + * @param { FetchOptions } [options] - Options for fetching the albums. * @returns { Promise<FetchResult<Album>> } - Returns the fetch result * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -4226,11 +5085,13 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ getAlbums(type: AlbumType, subtype: AlbumSubtype, options?: FetchOptions): Promise<FetchResult<Album>>; /** - * Fetch albums containing hidden assets. + * Obtains hidden albums based on the specified display mode and retrieval options. + * This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO and ohos.permission.MANAGE_PRIVATE_PHOTOS * @param { HiddenPhotosDisplayMode } mode - Display mode of albums containing hidden assets. @@ -4243,15 +5104,16 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail. * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ getHiddenAlbums(mode: HiddenPhotosDisplayMode, options: FetchOptions, callback: AsyncCallback<FetchResult<Album>>): void; /** - * Fetch albums containing hidden assets. + * Obtains hidden albums based on the specified display mode. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO and ohos.permission.MANAGE_PRIVATE_PHOTOS - * @param { HiddenPhotosDisplayMode } mode - Display mode of albums containing hidden assets. - * @param { AsyncCallback<FetchResult<Album>> } callback - Returns fetchResult of albums containing hidden assets. + * @param { HiddenPhotosDisplayMode } mode - Display mode of hidden albums. + * @param { AsyncCallback<FetchResult<Album>> } callback - Callback used to return the result. * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -4259,15 +5121,16 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail. * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ getHiddenAlbums(mode: HiddenPhotosDisplayMode, callback: AsyncCallback<FetchResult<Album>>): void; /** - * Fetch albums containing hidden assets. + * Obtains hidden albums based on the specified display mode and retrieval options. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO and ohos.permission.MANAGE_PRIVATE_PHOTOS - * @param { HiddenPhotosDisplayMode } mode - Display mode of albums containing hidden assets. - * @param { FetchOptions } [options] - Options to fetch albums. + * @param { HiddenPhotosDisplayMode } mode - Display mode of hidden albums. + * @param { FetchOptions } [options] - Options for retrieving the files. * @returns { Promise<FetchResult<Album>> } Returns fetchResult of albums containing hidden assets. * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. * @throws { BusinessError } 202 - Permission verification failed, application which is not a system application uses system API. @@ -4276,21 +5139,22 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail. * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ getHiddenAlbums(mode: HiddenPhotosDisplayMode, options?: FetchOptions): Promise<FetchResult<Album>>; /** - * Delete assets + * Deletes media assets. This API uses an asynchronous callback to return the result. The deleted assets are moved to the trash. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<string> } uriList - Uris of assets to delete - * @param { AsyncCallback<void> } callback - No value returned + * @param { Array<string> } uriList - URIs of the media files to delete. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900020 - Invalid argument - * @throws { BusinessError } 14000002 - Invalid uri + * @throws { BusinessError } 14000002 - The uri format is incorrect or does not exist. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -4300,17 +5164,17 @@ declare namespace photoAccessHelper { */ deleteAssets(uriList: Array<string>, callback: AsyncCallback<void>): void; /** - * Delete assets + * Deletes media assets. This API uses a promise to return the result. The deleted assets are moved to the trash. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<string> } uriList - Uris of assets to delete + * @param { Array<string> } uriList - URIs of the media files to delete. * @returns { Promise<void> } - Returns void * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900020 - Invalid argument - * @throws { BusinessError } 14000002 - Invalid uri + * @throws { BusinessError } 14000002 - The uri format is incorrect or does not exist. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -4320,17 +5184,25 @@ declare namespace photoAccessHelper { */ deleteAssets(uriList: Array<string>): Promise<void>; /** - * Register change notify for the specified uri. + * Registers listening for the specified URI. This API uses a callback to return the result. * - * @param { string } uri - PhotoAsset's uri, album's uri or DefaultChangeUri - * @param { boolean } forChildUris - Monitor the child uris. - * @param { Callback<ChangeData> } callback - Returns the changed data + * @param { string } uri - URI of the photo asset, URI of the album, or DefaultChangeUri. + * @param { boolean } forChildUris - Whether to perform fuzzy listening. + * If uri is the URI of an album, the value true means to listen for the changes of the files in the album; + * the value false means to listen for the changes of the album only. + * If uri is the URI of a photoAsset, there is no difference between true and false for forChildUris. + * If uri is DefaultChangeUri, forChildUris must be set to true. If forChildUris is false, + * the URI cannot be found and no message can be received. + * @param { Callback<ChangeData> } callback - Callback used to return the ChangeData. + * Multiple callback listeners can be registered for a URI. + * You can use unRegisterChange to unregister all listeners for the URI or a specified callback listener. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900020 - Invalid argument * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ registerChange(uri: string, forChildUris: boolean, callback: Callback<ChangeData>): void; /** @@ -4350,24 +5222,27 @@ declare namespace photoAccessHelper { */ getDataAnalysisProgress(analysisType: AnalysisType): Promise<string>; /** - * Unregister change notify for the specified uri. + * Unregisters listening for the specified URI. Multiple callbacks can be registered for a URI for listening. + * You can use this API to unregister the listening of the specified callbacks or all callbacks. * - * @param { string } uri - PhotoAsset's uri, album's uri or DefaultChangeUri + * @param { string } uri - URI of the photo asset, URI of the album, or DefaultChangeUri. * @param { Callback<ChangeData> } [callback] - The callback function to unregister. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied * @throws { BusinessError } 13900020 - Invalid argument * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ unRegisterChange(uri: string, callback?: Callback<ChangeData>): void; /** - * Create a pop-up box to delete photos + * Creates a dialog box for deleting media files. This API uses an asynchronous callback to return the result. + * The deleted media files are moved to the trash. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<string> } uriList - List of the asset uris to be deleted - * @param { AsyncCallback<void> } callback - Returns void + * @param { Array<string> } uriList - URIs of the media files to delete. A maximum of 300 media files can be deleted. + * @param { AsyncCallback<void> } callback - Callback that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 13900012 - Permission denied @@ -4380,10 +5255,11 @@ declare namespace photoAccessHelper { */ createDeleteRequest(uriList: Array<string>, callback: AsyncCallback<void>): void; /** - * Create a pop-up box to delete photos + * Creates a dialog box for deleting media files. This API uses a promise to return the result. + * The deleted media files are moved to the trash. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<string> } uriList - List of the asset uris to be deleted + * @param { Array<string> } uriList - URIs of the media files to delete. A maximum of 300 media files can be deleted. * @returns { Promise<void> } - Returns void * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -4421,12 +5297,13 @@ declare namespace photoAccessHelper { * @returns { Promise<Array<string>> } - Returns the media library file uri list to application which has been authorized * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 13900020 - Invalid argument. Possible causes: 1. The photoCreationConfigs is empty; + * <br>2. Incorrect photoCreationConfigs format. * @throws { BusinessError } 14000011 - Internal system error * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 15 + * @since arkts {'1.1':'19','1.2':'20'} + * @arkts 1.1&1.2 */ createAssetsForApp(bundleName: string, appName: string, tokenId: number, photoCreationConfigs: Array<PhotoCreationConfig>): Promise<Array<string>>; /** @@ -4444,15 +5321,15 @@ declare namespace photoAccessHelper { */ createAssetWithShortTermPermission(photoCreationConfig: PhotoCreationConfig): Promise<string>; /** - * Create assets and grant save permission with authorization mode to the app which called the save dialog. + * Creates assets with a temporary permission. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } bundleName - BundleName of the application which called the save dialog - * @param { string } appName - AppName of the application which called the save dialog - * @param { string } appId - AppId of the application which called the save dialog - * @param { number } tokenId - TokenId of the application which called the save dialog + * @param { string } bundleName - Bundle name of the target application. + * @param { string } appName - Name of the target application. + * @param { string } appId - ID of the target application. + * @param { number } tokenId - Unique identifier for the temporary authorization. * @param { AuthorizationMode } authorizationMode - Mode of authorization - * @param { Array<PhotoCreationConfig> } photoCreationConfigs - List of the photo asset creation configs + * @param { Array<PhotoCreationConfig> } photoCreationConfigs - Configuration for creating (saving) the media assets in the media library. * @returns { Promise<Array<string>> } - Returns the media library file uri list to application which has been authorized * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -4461,7 +5338,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - Internal system error * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ createAssetsForAppWithMode( bundleName: string, @@ -4472,9 +5350,9 @@ declare namespace photoAccessHelper { photoCreationConfigs: Array<PhotoCreationConfig> ): Promise<Array<string>>; /** - * Authorize the uri list. + * Grants the save permission for URIs. This API uses a promise to return the result. * - * @param { Array<string> } srcFileUris - Unauthorized uri list + * @param { Array<string> } srcFileUris - URIs of the images or videos to be granted with the permission. * @returns { Promise<Array<string>> } - Returns the authorized uri list * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -4485,13 +5363,15 @@ declare namespace photoAccessHelper { */ requestPhotoUrisReadPermission(srcFileUris: Array<string>): Promise<Array<string>>; /** - * Get the index of the asset in the album + * Obtains the index of an image or video in an album. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { string } photoUri - The photo asset uri. - * @param { string } albumUri - The album uri. - * @param { FetchOptions } options - fetch options - * @param { AsyncCallback<number> } callback - Returns the index of the asset in the album + * @param { string } photoUri - URI of the media asset whose index is to be obtained. + * @param { string } albumUri - Album URI, which can be an empty string. + * <br>If it is an empty string, all the media assets in the Gallery are obtained by default. + * @param { FetchOptions } options - Fetch options. Only one search condition or sorting mode must be set in predicates. + * <br> If no value is set or multiple search criteria or sorting modes are set, the API cannot be called successfully. + * @param { AsyncCallback<number> } callback - Callback used to return the index obtained. * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -4500,16 +5380,18 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ getPhotoIndex(photoUri: string, albumUri: string, options: FetchOptions, callback: AsyncCallback<number>): void; /** - * Get the index of the asset in the album + * Obtains the index of an image or video in an album. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { string } photoUri - The photo asset uri. - * @param { string } albumUri - The album uri. - * @param { FetchOptions } options - fetch options + * @param { string } photoUri - URI of the media asset whose index is to be obtained. + * @param { string } albumUri - Album URI, which can be an empty string. If it is an empty string, all the media assets in the Gallery are obtained by default. + * @param { FetchOptions } options - Fetch options. Only one search condition or sorting mode must be set in predicates. + * <br>If no value is set or multiple search criteria or sorting modes are set, the API cannot be called successfully. * @returns { Promise<number> } - Returns the index of the asset in the album * @throws { BusinessError } 202 - Called by non-system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -4519,23 +5401,27 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ getPhotoIndex(photoUri: string, albumUri: string, options: FetchOptions): Promise<number>; /** - * Release PhotoAccessHelper instance + * Releases this PhotoAccessHelper instance. This API uses an asynchronous callback to return the result. + * Call this API when the APIs of the PhotoAccessHelper instance are no longer used. * - * @param { AsyncCallback<void> } callback - Returns void + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ release(callback: AsyncCallback<void>): void; /** - * Release PhotoAccessHelper instance + * Releases this PhotoAccessHelper instance. This API uses a promise to return the result. + * Call this API when the APIs of the PhotoAccessHelper instance are no longer used. * * @returns { Promise<void> } Returns void * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -4543,7 +5429,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ release(): Promise<void>; /** @@ -4559,7 +5446,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail. * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ saveFormInfo(info: FormInfo, callback: AsyncCallback<void>): void; /** @@ -4575,7 +5463,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail. * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ saveFormInfo(info: FormInfo): Promise<void>; /** @@ -4659,10 +5548,10 @@ declare namespace photoAccessHelper { */ updateGalleryFormInfo(info: GalleryFormInfo): Promise<void>; /** - * Apply the change request of asset or album. + * Applies media changes. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { MediaChangeRequest } mediaChangeRequest - The change request to be applied + * @param { MediaChangeRequest } mediaChangeRequest - Request for asset changes or album changes. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -4670,7 +5559,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ applyChanges(mediaChangeRequest: MediaChangeRequest): Promise<void>; /** @@ -4683,64 +5573,67 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - Internal system error * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ getIndexConstructProgress(): Promise<string>; /** - * Grant permission of assets to an APP. + * Grants an application the permission to access multiple URIs. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { number } tokenId - App TokenId - * @param { Array<string> } uriList - List of asset uris whose permission will be granted to an App, - * <br>the capacity of uriList is 1000. - * @param { PhotoPermissionType } photoPermissionType - Permission type of accessing assets. - * @param { HideSensitiveType } hideSensitiveType - Hide sensitive info type of accessing assets. + * @param { number } tokenId - ID of the target application. + * @param { Array<string> } uriList - A list of URIs, which cannot exceed 1000. + * @param { PhotoPermissionType } photoPermissionType - Type of the permission to be granted. For details, see the enum. + * @param { HideSensitiveType } hideSensitiveType - Type of the information to hide. + * <br>This parameter is reserved. Currently, any enumerated value of HideSensitiveType can be passed in. * @returns { Promise<number> } Returns result of grant permission * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 13900020 - Invalid argument. Possible causes: 1. Incorrect uri format; + * <br>2. The value of photoPermissionType or hideSensitiveType is out of range. * @throws { BusinessError } 14000011 - Internal system error * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 15 + * @since 19 */ grantPhotoUrisPermission(tokenId: number, uriList: Array<string>, photoPermissionType: PhotoPermissionType, hideSensitiveType: HideSensitiveType): Promise<number>; /** - * Grant permission of asset to an APP. + * Grants an application the permission to access a URI. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { number } tokenId - App TokenId - * @param { string } uri - Asset uri whose permission will be granted to an App. - * @param { PhotoPermissionType } photoPermissionType - Permission type of accessing assets. - * @param { HideSensitiveType } hideSensitiveType - Hide sensitive info type of accessing assets. + * @param { number } tokenId - ID of the target application. + * @param { string } uri - URI of the media asset. + * @param { PhotoPermissionType } photoPermissionType - Type of the permission to be granted. For details, see the enum. + * @param { HideSensitiveType } hideSensitiveType - Type of the information to hide. + * <br>This parameter is reserved. Currently, any enumerated value of HideSensitiveType can be passed in. * @returns { Promise<number> } Returns result of grant permission * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 13900020 - Invalid argument. Possible causes: 1. Incorrect uri format; + * <br>2. The value of photoPermissionType or hideSensitiveType is out of range. * @throws { BusinessError } 14000011 - Internal system error * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 15 + * @since arkts {'1.1':'19','1.2':'20'} + * @arkts 1.1&1.2 */ grantPhotoUriPermission(tokenId: number, uri: string, photoPermissionType: PhotoPermissionType, hideSensitiveType: HideSensitiveType): Promise<number>; /** - * Cancel permission of asset to an APP. + * Cancels the permission for accessing an URI from an application. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { number } tokenId - App TokenId - * @param { string } uri - Asset uri whose permission will be cancel to an App. - * @param { PhotoPermissionType } photoPermissionType - Permission type of accessing assets. + * @param { number } tokenId - ID of the target application. + * @param { string } uri - URI of the media asset. + * @param { PhotoPermissionType } photoPermissionType - Permission type. * @returns { Promise<number> } Returns result of cancel permission * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 13900020 - Invalid argument. Possible causes: 1. Incorrect uri format; + * <br>2. The value of photoPermissionType or hideSensitiveType is out of range. * @throws { BusinessError } 14000011 - Internal system error * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 15 + * @since 19 */ cancelPhotoUriPermission(tokenId: number, uri: string, photoPermissionType: PhotoPermissionType): Promise<number>; /** @@ -4772,7 +5665,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - Internal system error * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ stopThumbnailCreationTask(taskId: number): void; /** @@ -4792,9 +5686,9 @@ declare namespace photoAccessHelper { */ getSharedPhotoAssets(options: FetchOptions): Array<SharedPhotoAsset>; /** - * Get the list of image or video suffixes supported by the media library. + * Obtains the list of image or video file name extensions supported by the media library. * - * @param { PhotoType } photoType - Photo type. + * @param { PhotoType } photoType - Type of the file. * @returns { Promise<Array<string>> } - Return the list of image or video suffixes supported by the media library * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -4804,11 +5698,11 @@ declare namespace photoAccessHelper { */ getSupportedPhotoFormats(photoType: PhotoType): Promise<Array<string>>; /** - * Start asset analysis service + * Starts asset analysis. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { AnalysisType } type - Analysis type - * @param { Array<string> } assetUris - The uris of asset. + * @param { AnalysisType } type - Smart analysis type. + * @param { Array<string> } assetUris - Array of asset URIs. * @returns { Promise<number> } Returns the task id of the service. * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -4818,7 +5712,42 @@ declare namespace photoAccessHelper { * @systemapi * @since 18 */ - startAssetAnalysis(type: AnalysisType, assetUris?: Array<string>): Promise<number>; + startAssetAnalysis(type: AnalysisType, assetUris?: Array<string>): Promise<number>; + /** + * Obtains album information by album IDs. This API uses a promise to return the result. + * + * @permission ohos.permission.READ_IMAGEVIDEO + * @param { Array<number> } albumIds - Array of album IDs. + * @returns { Promise<Map<number, Album>> } - Return the map of albums + * @throws { BusinessError } 201 - Permission denied + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + getAlbumsByIds(albumIds: Array<number>): Promise<Map<number, Album>>; + /** + * Creates assets for the current application or other applications in the specified source or user album. This API uses a promise to return the result. + * + * @permission ohos.permission.WRITE_IMAGEVIDEO + * @param { PhotoCreationSource } source - Application information provided to create assets on behalf of the application. + * @param { string } albumUri - URI of the album. + * @param { boolean } isAuthorized - Whether to authorize other applications. The value true means that the permission is authorized, and false means the opposite. + * @param { Array<PhotoCreationConfig> } photoCreationConfigs - Configuration for creating (saving) the media assets in the media library. + * @returns { Promise<Array<string>> } - Returns the media library file uri list to application which has been authorized + * @throws { BusinessError } 201 - Permission denied + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 14000011 - Internal system error + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + createAssetsForAppWithAlbum(source: PhotoCreationSource, albumUri: string, isAuthorized: boolean, photoCreationConfigs: Array<PhotoCreationConfig>): Promise<Array<string>>; } /** @@ -4851,30 +5780,34 @@ declare namespace photoAccessHelper { } /** - * Form information. + * Defines the Gallery widget information. * * @interface FormInfo * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ interface FormInfo { /** - * Id of the form. + * Widget ID, which is provided when a widget is created in Gallery. * * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ formId: string; /** - * URI of the photo or album. + * URI of the image bound to the widget. When a widget is created, uri can be empty or the URI of an image. + * When a widget is removed, uri is not verified and can be empty. * * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ uri: string; } @@ -4884,42 +5817,48 @@ declare namespace photoAccessHelper { * * @enum { number } NotifyType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ enum NotifyType { /** * Data(assets or albums) have been newly created * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ NOTIFY_ADD, /** * Data(assets or albums) have been modified * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ NOTIFY_UPDATE, /** * Data(assets or albums) have been removed * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ NOTIFY_REMOVE, /** * Assets have been added to an album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ NOTIFY_ALBUM_ADD_ASSET, /** * Assets have been removed from an album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ NOTIFY_ALBUM_REMOVE_ASSET } @@ -4929,21 +5868,24 @@ declare namespace photoAccessHelper { * * @enum { string } DefaultChangeUri * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ enum DefaultChangeUri { /** * Uri for default PhotoAsset, use with forDescendant{true}, will receive all PhotoAsset's change notifications * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ DEFAULT_PHOTO_URI = 'file://media/Photo', /** * Uri for default Album, use with forDescendant{true}, will receive all Album's change notifications * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ DEFAULT_ALBUM_URI = 'file://media/PhotoAlbum', /** @@ -4951,7 +5893,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ DEFAULT_HIDDEN_ALBUM_URI = 'file://media/HiddenAlbum' } @@ -4961,7 +5904,8 @@ declare namespace photoAccessHelper { * * @interface ChangeData * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface ChangeData { /** @@ -4969,7 +5913,8 @@ declare namespace photoAccessHelper { * * @type { NotifyType } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ type: NotifyType; /** @@ -4977,7 +5922,8 @@ declare namespace photoAccessHelper { * * @type { Array<string> } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ uris: Array<string>; /** @@ -4985,7 +5931,8 @@ declare namespace photoAccessHelper { * * @type { Array<string> } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ extraUris: Array<string>; /** @@ -5039,7 +5986,8 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ export enum PhotoViewMIMETypes { /** @@ -5061,7 +6009,8 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ IMAGE_TYPE = 'image/*', /** @@ -5083,7 +6032,8 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ VIDEO_TYPE = 'video/*', /** @@ -5105,7 +6055,8 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ IMAGE_VIDEO_TYPE = '*/*', @@ -5114,11 +6065,79 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ MOVING_PHOTO_IMAGE_TYPE = 'image/movingPhoto' } + /** + * Enumeration type of filter operator. + * + * @enum { number } FilterOperator + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + export enum FilterOperator { + /** + * Filter operator: equal to + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + EQUAL_TO = 0, + /** + * Filter operator: not equal to + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + NOT_EQUAL_TO = 1, + /** + * Filter operator: more than + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + MORE_THAN = 2, + /** + * Filter operator: less than + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + LESS_THAN = 3, + /** + * Filter operator: more than or equal to + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + MORE_THAN_OR_EQUAL_TO = 4, + /** + * Filter operator: less than or equal to + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + LESS_THAN_OR_EQUAL_TO = 5, + /** + * Filter operator: between + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + BETWEEN = 6, + } + /** * Enumeration type of single selection mode * @@ -5160,7 +6179,8 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ class BaseSelectOptions { /** @@ -5311,6 +6331,133 @@ declare namespace photoAccessHelper { * @since 18 */ singleSelectionMode?: SingleSelectionMode; + + /** + * Media file filtering configuration. + * + * @type { ?MimeTypeFilter } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + mimeTypeFilter?: MimeTypeFilter; + + /** + * Media file size filtering configuration. + * + * @type { ?FileSizeFilter } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + fileSizeFilter?: FileSizeFilter; + + /** + * Media file video duration filtering configuration. + * + * @type { ?VideoDurationFilter } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + videoDurationFilter?: VideoDurationFilter; + } + + /** + * Media file filtering configuration. + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + class MimeTypeFilter { + /** + * Indicates the media file type to be filtered. + * + * @type { Array<string> } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + mimeTypeArray: Array<string>; + } + + /** + * Media file size filtering configuration. + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + class FileSizeFilter { + /** + * Specifing filter operator. + * + * @type { FilterOperator } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + filterOperator: FilterOperator; + + /** + * Specifing the size of files to be filtered. + * + * @type { number } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + fileSize: number; + + /** + * Specifing the upper limit of file size to be filtered. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + extraFileSize?: number; + } + + /** + * Media file video duration filtering configuration. + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + class VideoDurationFilter { + /** + * Specifing filter operator. + * + * @type { FilterOperator } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + filterOperator: FilterOperator; + + /** + * Specifing the video duration of files to be filtered. + * + * @type { number } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + videoDuration: number; + + /** + * Specifing the upper limit of video duration to be filtered. + * + * @type { ?number } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @atomicservice + * @since 19 + */ + extraVideoDuration?: number; } /** @@ -5333,7 +6480,8 @@ declare namespace photoAccessHelper { * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ class PhotoSelectOptions extends BaseSelectOptions { /** @@ -5398,15 +6546,17 @@ declare namespace photoAccessHelper { } /** - * Options for recommend photos + * Defines the image recommendation options. + * The image recommendation feature depends on the image data analysis capability, which varies with devices. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ class RecommendationOptions { /** - * The recommendation photo type when select photo in photo picker. + * Type of the recommended image. * * @type { ?RecommendationType } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -5416,7 +6566,8 @@ declare namespace photoAccessHelper { recommendationType?: RecommendationType; /** - * The textContextInfo to recommend images. + * Text based on which images are recommended. + * If both recommendationType and textContextInfo are set, textContextInfo takes precedence over recommendationType. * * @type { ?TextContextInfo } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -5427,56 +6578,62 @@ declare namespace photoAccessHelper { } /** - * Defines the text context info. + * Represents the text information about the recommended images. * * @interface TextContextInfo * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface TextContextInfo { /** - * The Simplified Chinese(UTF-8) text within 250 to recommend images. + * Text based on which images are recommended. + * The text cannot exceed 250 characters. The default value is an empty string. * * @type { ?string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ text?: string; } /** - * PhotoSelectResult Object + * Defines information about the images or videos selected. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * PhotoSelectResult Object + * Defines information about the images or videos selected. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice * @since 11 */ /** - * PhotoSelectResult Object + * Defines information about the images or videos selected. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ class PhotoSelectResult { /** - * The uris for the selected files. + * URIs of the images or videos selected. The URI array can be used only by calling photoAccessHelper.getAssets with temporary authorization. + * For details about how to use the media file URI, see Using a Media File URI. * * @type { Array<string> } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * The uris for the selected files. + * URIs of the images or videos selected. The URI array can be used only by calling photoAccessHelper.getAssets with temporary authorization. + * For details about how to use the media file URI, see Using a Media File URI. * * @type { Array<string> } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -5484,7 +6641,8 @@ declare namespace photoAccessHelper { * @since 11 */ /** - * The uris for the selected files. + * URIs of the images or videos selected. The URI array can be used only by calling photoAccessHelper.getAssets with temporary authorization. + * For details about how to use the media file URI, see Using a Media File URI. * * @type { Array<string> } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -5495,14 +6653,18 @@ declare namespace photoAccessHelper { photoUris: Array<string>; /** - * Original option. + * Whether the selected media asset is the original image. + * The value true means that the selected media asset is the original image, and false means the opposite. + * The default value is false. * * @type { boolean } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * Original option. + * Whether the selected media asset is the original image. + * The value true means that the selected media asset is the original image, and false means the opposite. + * The default value is false. * * @type { boolean } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -5510,7 +6672,9 @@ declare namespace photoAccessHelper { * @since 11 */ /** - * Original option. + * Whether the selected media asset is the original image. + * The value true means that the selected media asset is the original image, and false means the opposite. + * The default value is false. * * @type { boolean } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -5522,25 +6686,29 @@ declare namespace photoAccessHelper { } /** - * PhotoViewPicker Object + * Provides APIs for the user to select images and videos. + * Before using the APIs of PhotoViewPicker, you need to create a PhotoViewPicker instance. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 10 */ /** - * PhotoViewPicker Object + * Provides APIs for the user to select images and videos. + * Before using the APIs of PhotoViewPicker, you need to create a PhotoViewPicker instance. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice * @since 11 */ /** - * PhotoViewPicker Object + * Provides APIs for the user to select images and videos. + * Before using the APIs of PhotoViewPicker, you need to create a PhotoViewPicker instance. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ class PhotoViewPicker { /** @@ -5656,18 +6824,19 @@ declare namespace photoAccessHelper { } /** - * MediaAssetEditData Object + * Represents the edited media asset data. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ class MediaAssetEditData { /** - * The constructor to create a MediaAssetEditData instance. + * Constructor. * - * @param { string } compatibleFormat - Compatible format - * @param { string } formatVersion - Format version + * @param { string } compatibleFormat - Format of the edited data. + * @param { string } formatVersion - Version of the data format. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -5684,7 +6853,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ compatibleFormat: string; @@ -5694,7 +6864,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ formatVersion: string; @@ -5704,18 +6875,20 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ data: string; } /** - * Enumeration of resource type. + * Enumerates the types of the resources to write. * * @enum { number } ResourceType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum ResourceType { /** @@ -5723,7 +6896,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ IMAGE_RESOURCE = 1, @@ -5732,7 +6906,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ VIDEO_RESOURCE = 2, @@ -5741,7 +6916,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ PHOTO_PROXY = 3, @@ -5750,7 +6926,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ PRIVATE_MOVING_PHOTO_RESOURCE = 4, @@ -5765,26 +6942,29 @@ declare namespace photoAccessHelper { } /** - * The format in which the image is saved + * Enumerates the types of image files to save. * * @enum { number } ImageFileType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ enum ImageFileType { /** - * Jpeg type + * JPEG * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ JPEG = 1, /** - * Heif type + * HEIF * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ HEIF = 2 } @@ -5795,7 +6975,8 @@ declare namespace photoAccessHelper { * @enum { number } MovingPhotoEffectMode * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum MovingPhotoEffectMode { /** @@ -5803,7 +6984,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ DEFAULT = 0, @@ -5812,7 +6994,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ BOUNCE_PLAY = 1, @@ -5821,7 +7004,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ LOOP_PLAY = 2, @@ -5830,7 +7014,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ LONG_EXPOSURE = 3, @@ -5839,7 +7024,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ MULTI_EXPOSURE = 4, @@ -5848,7 +7034,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ CINEMA_GRAPH = 5, @@ -5857,44 +7044,49 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ IMAGE_ONLY = 10 } /** - * Enumeration of video enhancement type. + * Enumerates the types of segmented video enhancement. * * @enum { number } VideoEnhancementType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ enum VideoEnhancementType { /** - * Quality enhancement local + * Apply enhancement on the device. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ QUALITY_ENHANCEMENT_LOCAL = 0, /** - * Quality enhancement cloud + * Apply enhancement on the cloud. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ QUALITY_ENHANCEMENT_CLOUD = 1, /** - * Quality enhancement local and cloud + * Apply enhancement on both the device and cloud. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ QUALITY_ENHANCEMENT_LOCAL_AND_CLOUD = 2 } @@ -5905,7 +7097,8 @@ declare namespace photoAccessHelper { * @interface MediaChangeRequest * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ interface MediaChangeRequest {} @@ -5915,13 +7108,14 @@ declare namespace photoAccessHelper { * @implements MediaChangeRequest * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ class MediaAssetChangeRequest implements MediaChangeRequest { /** - * The constructor to create a MediaAssetChangeRequest instance. + * Constructor used to initialize an asset change request. * - * @param { PhotoAsset } asset - Specify which asset to change + * @param { PhotoAsset } asset - Assets to change. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail @@ -5929,71 +7123,74 @@ declare namespace photoAccessHelper { * @since 11 */ /** - * The constructor to create a MediaAssetChangeRequest instance. + * Constructor used to initialize an asset change request. * - * @param { PhotoAsset } asset - Specify which asset to change + * @param { PhotoAsset } asset - Assets to change. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ constructor(asset: PhotoAsset); /** - * Create image asset change request. + * Creates an image asset change request. * - * @param { Context } context - Hap context information - * @param { string } fileUri - File uri + * @param { Context } context - Context of the ability instance. + * @param { string } fileUri - Data source of the image asset, which is specified by a URI in the application sandbox directory. * @returns { MediaAssetChangeRequest } - Returns a MediaAssetChangeRequest instance * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 13900002 - No such file + * @throws { BusinessError } 13900002 - The file corresponding to the URI is not in the app sandbox. * @throws { BusinessError } 14000011 - System inner fail * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 11 */ /** - * Create image asset change request. + * Creates an image asset change request. * - * @param { Context } context - Hap context information - * @param { string } fileUri - File uri + * @param { Context } context - Context of the ability instance. + * @param { string } fileUri - Data source of the image asset, which is specified by a URI in the application sandbox directory. * @returns { MediaAssetChangeRequest } - Returns a MediaAssetChangeRequest instance * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 13900002 - No such file + * @throws { BusinessError } 13900002 - The file corresponding to the URI is not in the app sandbox. * @throws { BusinessError } 14000011 - System inner fail * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ static createImageAssetRequest(context: Context, fileUri: string): MediaAssetChangeRequest; /** - * Create video asset change request. + * Creates a video asset change request. * - * @param { Context } context - Hap context information - * @param { string } fileUri - File uri + * @param { Context } context - Context of the ability instance. + * @param { string } fileUri - Data source of the video asset, which is specified by a URI in the application sandbox directory. * @returns { MediaAssetChangeRequest } - Returns a MediaAssetChangeRequest instance * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 13900002 - No such file + * @throws { BusinessError } 13900002 - The file corresponding to the URI is not in the app sandbox. * @throws { BusinessError } 14000011 - System inner fail * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ static createVideoAssetRequest(context: Context, fileUri: string): MediaAssetChangeRequest; /** - * Create asset change request. + * Creates an asset change request with the specified file name. * - * @param { Context } context - Hap context information - * @param { string } displayName - Asset name - * @param { PhotoCreateOptions } [options] - Optional photo create option + * @param { Context } context - Context of the ability instance. + * @param { string } displayName - File name of the image or video to create. + * @param { PhotoCreateOptions } [options] - Options for creating an image or video asset. * @returns { MediaAssetChangeRequest } - Returns a MediaAssetChangeRequest instance * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -6003,17 +7200,18 @@ declare namespace photoAccessHelper { * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ static createAssetRequest(context: Context, displayName: string, options?: PhotoCreateOptions): MediaAssetChangeRequest; /** - * Create asset change request. + * Create an asset change request based on the file type and filename extension. * - * @param { Context } context - Hap context information - * @param { PhotoType } photoType - Photo asset type - * @param { string } extension - Asset extension - * @param { CreateOptions } [options] - Optional asset create option + * @param { Context } context - Context of the ability instance. + * @param { PhotoType } photoType - Type of the file to create, which can be IMAGE or VIDEO. + * @param { string } extension - File name extension, for example, 'jpg'. + * @param { CreateOptions } [options] - Options for creating the image or video asset, for example, {title: 'testPhoto'}. * @returns { MediaAssetChangeRequest } - Returns a MediaAssetChangeRequest instance * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -6021,16 +7219,17 @@ declare namespace photoAccessHelper { * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ static createAssetRequest(context: Context, photoType: PhotoType, extension: string, options?: CreateOptions): MediaAssetChangeRequest; /** - * Delete assets. + * Deletes media assets. This API uses a promise to return the result. The deleted assets are moved to the trash. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { Array<PhotoAsset> } assets - Assets to delete + * @param { Context } context - Context of the ability instance. + * @param { Array<PhotoAsset> } assets - Array of assets to delete. * @returns { Promise<void> } - Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -6038,25 +7237,27 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ static deleteAssets(context: Context, assets: Array<PhotoAsset>): Promise<void>; /** - * Delete assets. + * Deletes media assets. This API uses a promise to return the result. The deleted assets are moved to the trash. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { Array<string> } uriList - Uris of assets to delete + * @param { Context } context - Context of the ability instance. + * @param { Array<string> } uriList - URIs of the media files to delete. * @returns { Promise<void> } - Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14000002 - Invalid asset uri + * @throws { BusinessError } 14000002 - The uri format is incorrect or does not exist. * @throws { BusinessError } 14000011 - System inner fail * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ static deleteAssets(context: Context, uriList: Array<string>): Promise<void>; @@ -6071,7 +7272,7 @@ declare namespace photoAccessHelper { * @since 11 */ /** - * Get the asset. + * Obtains the asset in this asset change request. * * @returns { PhotoAsset } - Returns the asset * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -6079,7 +7280,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ getAsset(): PhotoAsset; @@ -6093,7 +7295,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setFavorite(favoriteState: boolean): void; @@ -6107,7 +7310,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setHidden(hiddenState: boolean): void; @@ -6121,29 +7325,31 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setUserComment(userComment: string): void; /** - * Set location of the asset. + * Sets location information. * - * @param { number } longitude - longitude value of the asset - * @param { number } latitude - latitude value of the asset + * @param { number } longitude - Longitude. + * @param { number } latitude - Latitude. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setLocation(longitude: number, latitude: number): void; /** - * Set title of the asset. + * Sets the media asset title. * - * @param { string } title - the new title of the asset + * @param { string } title - Title to set. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail @@ -6151,48 +7357,36 @@ declare namespace photoAccessHelper { * @since 11 */ /** - * Set title of the asset. + * Sets the media asset title. * - * @param { string } title - the new title of the asset + * @param { string } title - Title to set. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ setTitle(title: string): void; /** - * Set display name of the asset. - * - * @param { string } displayName - the new display name of the asset - * @throws { BusinessError } 202 - Called by non-system application - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14000011 - System inner fail - * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @systemapi - * @since 18 - */ - setDisplayName(displayName: string): void; - - /** - * Save edit data. + * Saves the edited data of an asset. * - * @param { MediaAssetEditData } editData - edit data of the asset + * @param { MediaAssetEditData } editData - Edited data to save. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setEditData(editData: MediaAssetEditData): void; /** - * Get write cache handler. + * Obtains the handler used for writing a file to cache. * * @permission ohos.permission.WRITE_IMAGEVIDEO * @returns { Promise<number> } Returns the write cache handler @@ -6202,46 +7396,49 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ getWriteCacheHandler(): Promise<number>; /** - * Add resource of the asset using file uri. + * Adds a resource using fileUri. * - * @param { ResourceType } type - Resource type - * @param { string } fileUri - File uri + * @param { ResourceType } type - Type of the resource to add. + * @param { string } fileUri - Data source of the resource to be added, which is specified by a URI in the application sandbox directory. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 13900002 - No such file + * @throws { BusinessError } 13900002 - The file corresponding to the URI is not in the app sandbox. * @throws { BusinessError } 14000011 - System inner fail * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ addResource(type: ResourceType, fileUri: string): void; /** - * Add resource of the asset using ArrayBuffer. + * Adds a resource using ArrayBuffer data. * - * @param { ResourceType } type - Resource type - * @param { ArrayBuffer } data - Data buffer to add + * @param { ResourceType } type - Type of the resource to add. + * @param { ArrayBuffer } data - Data of the resource to add. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ addResource(type: ResourceType, data: ArrayBuffer): void; /** - * Add resource of the asset using PhotoProxy. + * Adds resources using PhotoProxy data. * - * @param { ResourceType } type - Resource type - * @param { PhotoProxy } proxy - Photo proxy used to add resource + * @param { ResourceType } type - Type of the resource to add. + * @param { PhotoProxy } proxy - PhotoProxy data of the resource to add. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -6249,59 +7446,65 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ addResource(type: ResourceType, proxy: PhotoProxy): void; /** - * Set camera shot key. + * Sets the Key for the Ultra Snapshot feature, which allows the camera to take photos or record videos with the screen off. * - * @param { string } cameraShotKey - Camera shot key of the asset + * @param { string } cameraShotKey - Key for the Ultra Snapshot feature. + * <br>This parameter is available only for the system camera, and the key value is defined by the system camera. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ setCameraShotKey(cameraShotKey: string): void; /** - * Save the photo asset captured by camera. + * Saves the photo taken by the camera. * * @throws { BusinessError } 14000011 - System inner fail * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ saveCameraPhoto(): void; /** - * Save the photo asset captured by camera with imageFileType. + * Saves the photo taken by the camera. * - * @param { ImageFileType } imageFileType - Image file type + * @param { ImageFileType } imageFileType - File type of the photo to save. * @throws { BusinessError } 14000011 - System inner fail * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ saveCameraPhoto(imageFileType: ImageFileType): void; /** - * Discard the photo asset captured by camera. + * Discards the photo taken by the camera. * * @throws { BusinessError } 14000011 - Internal system error * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ discardCameraPhoto(): void; /** - * Set effect mode of moving photo. + * Sets the effect of this moving photo. * - * @param { MovingPhotoEffectMode } mode - the new effect mode of the moving photo + * @param { MovingPhotoEffectMode } mode - Effect to set. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -6309,14 +7512,15 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ setEffectMode(mode: MovingPhotoEffectMode): void; /** - * Set orientation of the asset. + * Sets the orientation of this image. * - * @param { number } orientation - the new orientation of the asset + * @param { number } orientation - Rotation angle of the image to set. The value can only be 0, 90, 180, or 270. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - Internal system error @@ -6337,43 +7541,64 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ setVideoEnhancementAttr(videoEnhancementType: VideoEnhancementType, photoId: string): void; /** - * Set watermark type of the asset. + * Sets the watermark type supported by photos. + * + * @param { WatermarkType } watermarkType - Watermark type to set. + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 14000011 - Internal system error + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since arkts {'1.1':'14','1.2':'20'} + * @arkts 1.1&1.2 + */ + setSupportedWatermarkType(watermarkType: WatermarkType): void; + + /** + * Permanently deletes photos or videos in batches. This API uses a promise to return the result. * - * @param { WatermarkType } watermarkType - the new watermark type of the asset + * @permission ohos.permission.WRITE_IMAGEVIDEO + * @param { Context } context - Context of the ability instance. + * @param { Array<PhotoAsset> } assets - Array of images or videos to be permanently deleted. + * @returns { Promise<void> } - Returns void + * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14000011 - Internal system error + * @throws { BusinessError } 14000011 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. + * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 14 + * @since 18 */ - setSupportedWatermarkType(watermarkType: WatermarkType): void; + static deleteLocalAssetsPermanently(context: Context, assets: Array<PhotoAsset>): Promise<void>; /** * Delete local assets permanently from the album. * * @permission ohos.permission.WRITE_IMAGEVIDEO * @param { Context } context - Hap context information - * @param { Array<PhotoAsset> } assets - the assets to be deleted permanently + * @param { Array<string> } assetUris - Uris of the assets to be deleted permanently * @returns { Promise<void> } - Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 13900020 - Invalid argument * @throws { BusinessError } 14000011 - Internal system error. It is recommended to retry and check the logs. * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 18 + * @since 19 */ - static deleteLocalAssetsPermanently(context: Context, assets: Array<PhotoAsset>): Promise<void>; + static deleteLocalAssetsPermanentlyWithUri(context: Context, assetUris: Array<string>): Promise<void>; } /** @@ -6382,20 +7607,22 @@ declare namespace photoAccessHelper { * @implements MediaChangeRequest * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ class MediaAssetsChangeRequest implements MediaChangeRequest { /** - * The constructor to create a MediaAssetsChangeRequest instance. + * Constructor. * - * @param { Array<PhotoAsset> } assets - Specify which assets to change + * @param { Array<PhotoAsset> } assets - Assets to change. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ constructor(assets: Array<PhotoAsset>); @@ -6409,7 +7636,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setFavorite(favoriteState: boolean): void; @@ -6423,7 +7651,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setHidden(hiddenState: boolean): void; @@ -6437,9 +7666,25 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setUserComment(userComment: string): void; + + /** + * Sets whether this asset is displayed in the Recent list. + * + * @param { boolean } isRencentShow - Whether this asset is displayed in the Recent list. + * <br>The value true means this asset is displayed in the Recent list, and false means the opposite. + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 14000011 - System inner fail + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 18 + */ + setIsRecentShow(isRencentShow: boolean): void; } /** @@ -6447,7 +7692,8 @@ declare namespace photoAccessHelper { * * @implements MediaChangeRequest * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ class MediaAlbumChangeRequest implements MediaChangeRequest { /** @@ -6458,15 +7704,16 @@ declare namespace photoAccessHelper { * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ constructor(album: Album); /** - * Create album change request. + * Creates a MediaAlbumChangeRequest instance. * - * @param { Context } context - Hap context information - * @param { string } name - Album name + * @param { Context } context - Context of the ability instance. + * @param { string } name - Name of the album. * @returns { MediaAlbumChangeRequest } - Returns a MediaAlbumChangeRequest instance * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -6475,16 +7722,17 @@ declare namespace photoAccessHelper { * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ static createAlbumRequest(context: Context, name: string): MediaAlbumChangeRequest; /** - * Delete albums. + * Deletes albums. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { Array<Album> } albums - Albums to delete + * @param { Context } context - Context of the ability instance. + * @param { Array<Album> } albums - Albums to delete. * @returns { Promise<void> } - Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -6494,79 +7742,104 @@ declare namespace photoAccessHelper { * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ static deleteAlbums(context: Context, albums: Array<Album>): Promise<void>; /** - * Get the album. + * Delete albums With Uri. + * + * @permission ohos.permission.WRITE_IMAGEVIDEO + * @param { Context } context - Hap context information + * @param { Array<string> } albumUris - Uris of albums to delete + * @returns { Promise<void> } - Returns void + * @throws { BusinessError } 201 - Permission denied + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out; + * @static + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 19 + */ + static deleteAlbumsWithUri(context: Context, albumUris: Array<string>): Promise<void>; + + /** + * Obtains the album in the current album change request. * * @returns { Album } - Returns the album * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ getAlbum(): Album; /** - * Set cover uri of the album. + * Sets the album cover. * - * @param { string } coverUri - the asset uri to set + * @param { string } coverUri - URI of the file to be set as the album cover. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setCoverUri(coverUri: string): void; /** - * Set name of the album. + * Sets the album name. * - * @param { string } name - the new name to set + * @param { string } name - Album name to set. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setAlbumName(name: string): void; /** - * Add assets into the album. + * Add assets to the album. * - * @param { Array<PhotoAsset> } assets - the assets to add + * @param { Array<PhotoAsset> } assets - Array of assets to add. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ addAssets(assets: Array<PhotoAsset>): void; /** - * Remove assets from the album. + * Removes assets from the album. * - * @param { Array<PhotoAsset> } assets - the assets to be removed + * @param { Array<PhotoAsset> } assets - Array of assets to remove. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ removeAssets(assets: Array<PhotoAsset>): void; /** - * Move assets to the target album. + * Moves assets to another album. * - * @param { Array<PhotoAsset> } assets - the assets to move - * @param { Album } targetAlbum - target album + * @param { Array<PhotoAsset> } assets - Assets to move. + * @param { Album } targetAlbum - Album to which the assets are to be moved. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -6574,14 +7847,31 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ moveAssets(assets: Array<PhotoAsset>, targetAlbum: Album): void; /** - * Recover assets from the trash album. + * Move assets to the target album. + * + * @param { Array<string> } assetUris - Uris of assets to move + * @param { Album } targetAlbum - target album + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. + * @throws { BusinessError } 14000016 - Operation Not Support + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 19 + */ + moveAssetsWithUri(assetUris: Array<string>, targetAlbum: Album): void; + + /** + * Recovers assets from the trash. * - * @param { Array<PhotoAsset> } assets - the assets to recover + * @param { Array<PhotoAsset> } assets - Assets to recover. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -6589,14 +7879,30 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ recoverAssets(assets: Array<PhotoAsset>): void; /** - * Delete assets permanently from the trash album. + * Recover assets from the trash album. * - * @param { Array<PhotoAsset> } assets - the assets to be deleted permanently + * @param { Array<string> } assetUris - Uris of assets to recover + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. + * @throws { BusinessError } 14000016 - Operation Not Support + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 19 + */ + recoverAssetsWithUri(assetUris: Array<string>): void; + + /** + * Permanently deletes assets from the trash. + * + * @param { Array<PhotoAsset> } assets - Assets to be permanently deleted. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -6604,10 +7910,26 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ deleteAssets(assets: Array<PhotoAsset>): void; + /** + * Delete assets permanently from the trash album. + * + * @param { Array<string> } assetUris - Uris of assets to be deleted permanently + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 13900020 - Invalid argument + * @throws { BusinessError } 14000011 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. + * @throws { BusinessError } 14000016 - Operation Not Support + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 19 + */ + deleteAssetsWithUri(assetUris: Array<string>): void; + /** * Set portrait album to me * @@ -6617,7 +7939,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setIsMe(): void; @@ -6631,14 +7954,15 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ setDisplayLevel(displayLevel: number): void; /** * Remove assets from the smart album * - * @param { Array<PhotoAsset> } assets - List of assets that need to be removed + * @param { Array<PhotoAsset> } assets - Assets to remove. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -6646,14 +7970,15 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ dismissAssets(assets: Array<PhotoAsset>): void; /** * Merge two portrait albums * - * @param { Album } target - Albums that need to be merged + * @param { Album } target - Album generated after the merge. The album must be renamed. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -6661,26 +7986,28 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000016 - Operation Not Support * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ mergeAlbum(target: Album): void; /** - * Place the current album in front of the target album. + * Places this album before an album. * - * @param { Album } album - Specify the target album to be placed before + * @param { Album } album - Target album. To place this album to the end, set album to null. * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ placeBefore(album: Album): void; /** - * Dismiss group photo album. + * Removes this group photo album. * * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -6688,7 +8015,8 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dismiss(): void; } @@ -6699,7 +8027,8 @@ declare namespace photoAccessHelper { * @interface SharedPhotoAsset * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ interface SharedPhotoAsset { /** @@ -6708,7 +8037,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ fileId: number; /** @@ -6717,7 +8047,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ uri: string; /** @@ -6726,7 +8057,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ data: string; /** @@ -6735,7 +8067,8 @@ declare namespace photoAccessHelper { * @type { PhotoType } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ mediaType: PhotoType; /** @@ -6744,7 +8077,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ displayName: string; /** @@ -6753,7 +8087,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ size: number; /** @@ -6762,7 +8097,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dateAdded: number; /** @@ -6771,7 +8107,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dateModified: number; /** @@ -6780,7 +8117,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ duration: number; /** @@ -6789,7 +8127,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ width: number; /** @@ -6798,7 +8137,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ height: number; /** @@ -6807,7 +8147,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dateTaken: number; /** @@ -6816,7 +8157,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ orientation: number; /** @@ -6825,7 +8167,8 @@ declare namespace photoAccessHelper { * @type { boolean } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ isFavorite: boolean; /** @@ -6834,7 +8177,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ title: string; /** @@ -6843,7 +8187,8 @@ declare namespace photoAccessHelper { * @type { PositionType } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ position: PositionType; /** @@ -6852,7 +8197,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dateTrashed: number; /** @@ -6861,7 +8207,8 @@ declare namespace photoAccessHelper { * @type { boolean } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ hidden: boolean; /** @@ -6870,7 +8217,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ userComment: string; /** @@ -6879,7 +8227,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ cameraShotKey: string; /** @@ -6888,7 +8237,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dateYear: string; /** @@ -6897,7 +8247,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dateMonth: string; /** @@ -6906,7 +8257,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dateDay: string; /** @@ -6915,7 +8267,8 @@ declare namespace photoAccessHelper { * @type { boolean } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ pending: boolean; /** @@ -6924,7 +8277,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dateAddedMs: number; /** @@ -6933,7 +8287,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dateModifiedMs: number; /** @@ -6942,7 +8297,8 @@ declare namespace photoAccessHelper { * @type { number } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dateTrashedMs: number; /** @@ -6951,7 +8307,8 @@ declare namespace photoAccessHelper { * @type { PhotoSubtype } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ subtype: PhotoSubtype; /** @@ -6960,7 +8317,8 @@ declare namespace photoAccessHelper { * @type { MovingPhotoEffectMode } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ movingPhotoEffectMode: MovingPhotoEffectMode; /** @@ -6969,7 +8327,8 @@ declare namespace photoAccessHelper { * @type { DynamicRangeType } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ dynamicRangeType: DynamicRangeType; /** @@ -6978,7 +8337,8 @@ declare namespace photoAccessHelper { * @type { boolean } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ thumbnailReady: boolean; /** @@ -6987,7 +8347,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ lcdSize: string; /** @@ -6996,7 +8357,8 @@ declare namespace photoAccessHelper { * @type { string } * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ thmSize: string; /** @@ -7103,20 +8465,21 @@ declare namespace photoAccessHelper { } /** - * Defines the moving photo. + * Provides APIs for managing a moving photo instance. * * @interface MovingPhoto * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface MovingPhoto { /** - * Request the image and video content of the moving photo and write to destination uri. + * Requests the image data and video data of this moving photo and writes them to the specified URIs, respectively. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { string } imageFileUri - Destination uri of the image content to be written - * @param { string } videoFileUri - Destination uri of the video content to be written + * @param { string } imageFileUri - URI to which the image data of the moving photo is to be written. + * @param { string } videoFileUri - URI to which the video data of the moving photo is to be written. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -7124,16 +8487,17 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ requestContent(imageFileUri: string, videoFileUri: string): Promise<void>; /** - * Request content of the moving photo for the given resource type and write to destination uri. + * Requests the moving photo content of the specified resource type and writes it to the specified URI. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { ResourceType } resourceType - The resource type of the content to request - * @param { string } fileUri - Destination uri of the content to be written + * @param { ResourceType } resourceType - Resource type of the moving photo content to request. + * @param { string } fileUri - URI to which the moving photo content is to be written. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -7141,15 +8505,16 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ requestContent(resourceType: ResourceType, fileUri: string): Promise<void>; /** - * Request content of the moving photo for the given resource type and return the array buffer. + * Requests the moving photo content of the specified resource type and returns it in ArrayBuffer format. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { ResourceType } resourceType - The resource type of the content to request + * @param { ResourceType } resourceType - Resource type of the moving photo content to request. * @returns { Promise<ArrayBuffer> } Returns array buffer of the content * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -7157,12 +8522,13 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ requestContent(resourceType: ResourceType): Promise<ArrayBuffer>; /** - * Get uri of the moving photo. + * Obtains the URI of this moving photo. * * @returns { string } Returns uri of the moving photo * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -7170,136 +8536,152 @@ declare namespace photoAccessHelper { * @throws { BusinessError } 14000011 - System inner fail * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ getUri(): string; } /** - * Highlight album info type + * Enumerates the types of the highlights album information. * * @enum { number } HighlightAlbumInfoType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum HighlightAlbumInfoType { /** - * Highlight cover info + * Cover information. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ COVER_INFO = 0, /** - * Highlight play info + * Music information. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ PLAY_INFO } /** - * Highlight user action type + * Enumerates the user behavior types of the highlights album. * * @enum { number } HighlightUserActionType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ enum HighlightUserActionType { /** - * Highlight album inserted picture count + * Number of inserted pictures. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ INSERTED_PIC_COUNT = 0, /** - * Highlight album removed picture count + * Number of removed pictures. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ REMOVED_PIC_COUNT, /** - * Highlight album shared screenshot count + * Number of times that a full-length image in a highlights album is shared. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ SHARED_SCREENSHOT_COUNT, /** - * Highlight album shared cover count + * Number of times that a highlights cover is shared. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ SHARED_COVER_COUNT, /** - * Highlight album renamed count + * Number of times that a highlights album is renamed. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ RENAMED_COUNT, /** - * Highlight album changed cover count + * Number of times that a cover is changed. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ CHANGED_COVER_COUNT, /** - * Highlight album render viewed times + * Number of times that the pictures in a highlights album are played. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ RENDER_VIEWED_TIMES = 100, /** - * Highlight album render viewed duration + * Time used to play the pictures in a highlights album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ RENDER_VIEWED_DURATION, /** - * Highlight album art layout viewed times + * Number of times that a highlights album is viewed. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ ART_LAYOUT_VIEWED_TIMES, /** - * Highlight album art layout viewed duration + * Time used to view a highlights album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ ART_LAYOUT_VIEWED_DURATION } /** - * The type of thumbnail + * Enumerates thumbnail types. * * @enum { number } ThumbnailType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ enum ThumbnailType { /** @@ -7307,7 +8689,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ LCD = 1, /** @@ -7315,7 +8698,8 @@ declare namespace photoAccessHelper { * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ THM = 2 } @@ -7346,8 +8730,8 @@ declare namespace photoAccessHelper { * Set order positions of assets in the album * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } assets - List of assets that need to set order - * @param { Array<number> } position - List of positions to set + * @param { Array<PhotoAsset> } assets - Assets in the album for which the sequence needs to be set. + * @param { Array<number> } position - Sequence of assets in the album. * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -7362,7 +8746,7 @@ declare namespace photoAccessHelper { } /** - * Defines the class of analysis album. + * Analysis album to create. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7382,10 +8766,10 @@ declare namespace photoAccessHelper { */ constructor(album: Album); /** - * Get order position of assets in the album + * Obtains the sequence of assets in the Analysis album. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { Array<PhotoAsset> } assets - List of assets that need to get order + * @param { Array<PhotoAsset> } assets - Assets in the album whose sequence needs to be obtained. * @returns { Promise<Array<number>> } Returns the order of positions of assets * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7401,11 +8785,12 @@ declare namespace photoAccessHelper { } /** - * Defines the class of highlight album. + * Provides APIs for managing the Highlights album, which is an automatically generated collection of memorable photos or videos. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ class HighlightAlbum { /** @@ -7423,10 +8808,10 @@ declare namespace photoAccessHelper { constructor(album: Album); /** - * Get highlight album info. + * Obtains specific information about the Highlights album. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { HighlightAlbumInfoType } type - Highlight album info type + * @param { HighlightAlbumInfoType } type - Type of the album information to obtain. * @returns { Promise<string> } Returns highlight album info into a json string * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7440,10 +8825,10 @@ declare namespace photoAccessHelper { getHighlightAlbumInfo(type: HighlightAlbumInfoType): Promise<string>; /** - * Get highlight resource array buffer. + * Obtains the ArrayBuffer for caching the specified asset. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { string } resourceUri - highlight resource uri + * @param { string } resourceUri - URI of the asset to cache. * @returns { Promise<ArrayBuffer> } Returns array buffer of the content * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7457,11 +8842,11 @@ declare namespace photoAccessHelper { getHighlightResource(resourceUri: string): Promise<ArrayBuffer>; /** - * Set highlight user action data + * Sets the user behavior data for the Highlights album. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { HighlightUserActionType } type - Highlight user action type - * @param { number } actionData - User action highlight album data + * @param { HighlightUserActionType } type - Type of the user behavior data to set. + * @param { number } actionData - Behavior data. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7493,11 +8878,11 @@ declare namespace photoAccessHelper { setSubTitle(subTitle: string): Promise<void>; /** - * Delete highlight albums + * Deletes highlight albums. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Context } context - Hap context information - * @param { Array<Album> } albums - Highlight albums to delete + * @param { Context } context - Context of the ability instance. + * @param { Array<Album> } albums - Array of highlight albums to delete. * @returns { Promise<number> } Returns result of delete highlight album * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7514,79 +8899,89 @@ declare namespace photoAccessHelper { } /** - * Cloud enhancement task stage. + * Enumerates the cloud enhancement task states, which are returned by CloudEnhancementTaskState. * * @enum { number } CloudEnhancementTaskStage * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ enum CloudEnhancementTaskStage { /** - * Cloud enhancement task exception stage. + * The cloud enhancement task is abnormal. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ TASK_STAGE_EXCEPTION = -1, /** - * Cloud enhancement task preparing stage. + * The cloud enhancement task is being prepared. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ TASK_STAGE_PREPARING, /** - * Cloud enhancement task uploading stage. + * The cloud enhancement task is uploading data. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ TASK_STAGE_UPLOADING, /** - * Cloud enhancement task executing stage. + * The cloud enhancement task is being executed. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ TASK_STAGE_EXECUTING, /** - * Cloud enhancement task downloading stage. + * The cloud enhancement task is downloading data. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ TASK_STAGE_DOWNLOADING, /** - * Cloud enhancement task failed stage. + * The cloud enhancement task failed. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ TASK_STAGE_FAILED, /** - * Cloud enhancement task completed stage. + * The cloud enhancement task is complete. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ TASK_STAGE_COMPLETED } /** - * Task state of cloud enhancement. + * Represents the cloud enhancement task information, + * which includes the cloud enhancement task state and other information related to certain states. * * @interface CloudEnhancementTaskState * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ interface CloudEnhancementTaskState { /** @@ -7596,7 +8991,8 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ readonly taskStage: CloudEnhancementTaskStage; /** @@ -7606,7 +9002,8 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ readonly transferredFileSize?: number; /** @@ -7616,7 +9013,8 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ readonly totalFileSize?: number; /** @@ -7626,7 +9024,8 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ readonly expectedDuration?: number; /** @@ -7636,23 +9035,27 @@ declare namespace photoAccessHelper { * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ readonly statusCode?: number; } /** - * Defines the class of cloud enhancement. + * Provides APIs for cloud enhancement management, + * including managing the tasks of generating AI-powered cloud enhancement photos + * and obtaining the association between the original photos and AI cloud enhancement photos. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ class CloudEnhancement { /** - * Get cloud enhancement instance. + * Obtains a cloud enhancement instance. * - * @param { Context } context - Hap context information + * @param { Context } context - Context of the ability instance. * @returns { CloudEnhancement } Returns cloud enhancement instance * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -7661,16 +9064,17 @@ declare namespace photoAccessHelper { * @static * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ static getCloudEnhancementInstance(context: Context): CloudEnhancement; /** - * Submit cloud enhancement tasks. + * Submits cloud enhancement tasks. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } photoAssets - The photo assets requested - * @param { boolean } hasCloudWatermark - true: Persistent cloud watermark; false: Not persistent cloud watermark. + * @param { Array<PhotoAsset> } photoAssets - PhotoAsset to enhance. + * @param { boolean } hasCloudWatermark - Whether to add a cloud enhancement watermark to the enhanced images. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7684,13 +9088,14 @@ declare namespace photoAccessHelper { submitCloudEnhancementTasks(photoAssets: Array<PhotoAsset>, hasCloudWatermark: boolean): Promise<void>; /** - * Submit cloud enhancement tasks. + * Submits cloud enhancement tasks. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } photoAssets - The photo assets requested - * @param { boolean } hasCloudWatermark - true: Persistent cloud watermark; false: Not persistent cloud watermark. - * @param { number } triggerMode - Cloud enhancement task type. - * 0: Manual cloud enhancement task; 1: Auto cloud enhancement task. The default value is 0. + * @param { Array<PhotoAsset> } photoAssets - PhotoAsset to enhance. + * @param { boolean } hasCloudWatermark - Whether to add a cloud watermark to the enhanced image. + * The value true means to add the watermark, and false means the opposite. + * @param { number } triggerMode - Trigger mode of the cloud enhancement task. + * 0: manually triggered. 1: automatically triggered. The default value is 0. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7708,10 +9113,10 @@ declare namespace photoAccessHelper { ): Promise<void>; /** - * Prioritize cloud enhancement task. + * Prioritizes a cloud enhancement task. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { PhotoAsset } photoAsset - The photo asset requested + * @param { PhotoAsset } photoAsset - PhotoAsset whose cloud enhancement priority needs to be escalated. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7725,10 +9130,10 @@ declare namespace photoAccessHelper { prioritizeCloudEnhancementTask(photoAsset: PhotoAsset): Promise<void>; /** - * Cancel cloud enhancement tasks. + * Cancels cloud enhancement tasks. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { Array<PhotoAsset> } photoAssets - The photo assets requested + * @param { Array<PhotoAsset> } photoAssets - Array of PhotoAssets whose cloud enhancement tasks are to be canceled. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7742,7 +9147,7 @@ declare namespace photoAccessHelper { cancelCloudEnhancementTasks(photoAssets: Array<PhotoAsset>): Promise<void>; /** - * Cancel all cloud enhancement tasks. + * Cancels all cloud enhancement tasks. * * @permission ohos.permission.WRITE_IMAGEVIDEO * @returns { Promise<void> } Returns void @@ -7756,10 +9161,10 @@ declare namespace photoAccessHelper { cancelAllCloudEnhancementTasks(): Promise<void>; /** - * Query cloud enhancement task state. + * Queries information about a cloud enhancement task. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { PhotoAsset } photoAsset - The photo asset requested + * @param { PhotoAsset } photoAsset - PhotoAsset whose cloud enhancement task information is to be queried. * @returns { Promise<CloudEnhancementTaskState> } Returns cloud enhancement task state * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7773,7 +9178,7 @@ declare namespace photoAccessHelper { queryCloudEnhancementTaskState(photoAsset: PhotoAsset): Promise<CloudEnhancementTaskState>; /** - * Sync cloud enhancement task status. + * Synchronizes the cloud enhancement task status. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<void> } Returns void @@ -7787,10 +9192,10 @@ declare namespace photoAccessHelper { syncCloudEnhancementTaskStatus(): Promise<void>; /** - * Get cloud enhancement pair. + * Obtains the photo after cloud enhancement. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { PhotoAsset } asset - The asset requested + * @param { PhotoAsset } asset - PhotoAsset whose cloud enhancement photo is to be obtained. * @returns { Promise<PhotoAsset> } Returns cloud-enhanced asset * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -7805,50 +9210,55 @@ declare namespace photoAccessHelper { } /** - * Cloud enhancement state. + * Enumerates the cloud enhancement states. * * @enum { number } CloudEnhancementState * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ enum CloudEnhancementState { /** - * Cloud enhancement unavailable state. + * Cloud enhancement is unavailable. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ UNAVAILABLE = 0, /** - * Cloud enhancement available state. + * Cloud enhancement is available. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ AVAILABLE, /** - * Cloud enhancement executing state. + * Cloud enhancement is being executed. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ EXECUTING, /** - * Cloud enhancement completed state. + * Cloud enhancement has been completed. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi - * @since 13 + * @since arkts {'1.1':'13','1.2':'20'} + * @arkts 1.1&1.2 */ COMPLETED } /** - * Cloud media asset task status. + * Enumerates the statuses of tasks used for downloading cloud media assets. * * @enum { number } CloudMediaAssetTaskStatus * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -7857,7 +9267,7 @@ declare namespace photoAccessHelper { */ enum CloudMediaAssetTaskStatus { /** - * Cloud media asset task status of downloading. + * The task is in progress. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7865,7 +9275,7 @@ declare namespace photoAccessHelper { */ DOWNLOADING = 0, /** - * Cloud media asset task status of paused. + * The task is paused. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7873,7 +9283,7 @@ declare namespace photoAccessHelper { */ PAUSED = 1, /** - * Cloud media asset task status of idle. + * There is no download task. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7883,7 +9293,7 @@ declare namespace photoAccessHelper { } /** - * Cloud media task pause cause. + * Enumerates the reasons why a cloud media asset download task is paused. * * @enum { number } CloudMediaTaskPauseCause * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -7892,7 +9302,7 @@ declare namespace photoAccessHelper { */ enum CloudMediaTaskPauseCause { /** - * No pause. + * The device temperature is excessively high. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7900,7 +9310,7 @@ declare namespace photoAccessHelper { */ NO_PAUSE = 0, /** - * Temperature limit. + * The device temperature is excessively high. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7908,7 +9318,7 @@ declare namespace photoAccessHelper { */ TEMPERATURE_LIMIT = 1, /** - * Rom limit. + * Network traffic is restricted, and Wi-Fi is not available. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7916,7 +9326,7 @@ declare namespace photoAccessHelper { */ ROM_LIMIT = 2, /** - * Network flow limit. + * Network traffic is restricted, and Wi-Fi is not available. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7924,7 +9334,7 @@ declare namespace photoAccessHelper { */ NETWORK_FLOW_LIMIT = 3, /** - * Wifi unavailable. + * Power usage is restricted. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7932,7 +9342,7 @@ declare namespace photoAccessHelper { */ WIFI_UNAVAILABLE = 4, /** - * Power limit. + * Power usage is restricted. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7940,32 +9350,32 @@ declare namespace photoAccessHelper { */ POWER_LIMIT = 5, /** - * Background task unavailable. - * + * The device is not in charging screen-off mode. + * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi * @since 14 */ BACKGROUND_TASK_UNAVAILABLE = 6, /** - * Frequent user requests. - * + * The user is making requests too frequently. + * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi * @since 14 */ FREQUENT_USER_REQUESTS = 7, /** - * cloud error. - * + * There is an error with the cloud service. + * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi * @since 14 */ CLOUD_ERROR = 8, /** - * User paused. - * + * The download has been paused by the user. + * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi * @since 14 @@ -7974,8 +9384,9 @@ declare namespace photoAccessHelper { } /** - * Status of cloud media asset. - * + * Describes the details of a cloud media asset download task. + * It is the return value of the API used by applications to obtain the cloud asset download task status. + * * @interface CloudMediaAssetStatus * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -7983,7 +9394,7 @@ declare namespace photoAccessHelper { */ interface CloudMediaAssetStatus { /** - * Indicates the cloud media asset task status. + * Status of the download task. * * @type { CloudMediaAssetTaskStatus } * @readonly @@ -7993,8 +9404,9 @@ declare namespace photoAccessHelper { */ readonly taskStatus: CloudMediaAssetTaskStatus; /** - * Indicates the downloading task info, including total count, total size, remain count and remain size. - * + * Total number of and size (measured in bytes) of the assets that have been downloaded, + * and the total number and size (also measured in bytes) of the assets remaining to be downloaded. + * * @type { string } * @readonly * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -8003,7 +9415,7 @@ declare namespace photoAccessHelper { */ readonly taskInfo: string; /** - * Indicates the cloud media task pause status. + * Reason why the download task is suspended. * * @type { CloudMediaTaskPauseCause } * @readonly @@ -8015,7 +9427,7 @@ declare namespace photoAccessHelper { } /** - * Cloud media download type. + * Enumerates the types of download tasks. * * @enum { number } CloudMediaDownloadType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -8024,7 +9436,7 @@ declare namespace photoAccessHelper { */ enum CloudMediaDownloadType { /** - * High-priority download policy, no background task required. + * High-priority download, without the need for the device to switch to screen-off charging mode. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -8032,7 +9444,7 @@ declare namespace photoAccessHelper { */ DOWNLOAD_FORCE = 0, /** - * Low-priority download policy, requiring background task. + * Low-priority download, demanding that device be in screen-off charging mode. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -8042,7 +9454,7 @@ declare namespace photoAccessHelper { } /** - * Cloud media retain type. + * Enumerates the modes used for deleting cloud media assets. * * @enum { number } CloudMediaRetainType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -8051,7 +9463,7 @@ declare namespace photoAccessHelper { */ enum CloudMediaRetainType { /** - * Delete native metadata and thumbnails of cloud-only media assets. + * Deletes the local metadata and thumbnail of the original files from the cloud. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -8061,17 +9473,18 @@ declare namespace photoAccessHelper { } /** - * Defines the class of cloud media asset manager. - * + * A class used for cloud media asset management. It is used to manage download tasks for media assets stored + * in the cloud and delete local data and files pertaining to these cloud-based assets. + * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi * @since 14 */ class CloudMediaAssetManager { /** - * Get cloud media asset manager instance. - * - * @param { Context } context - Hap context information + * Obtains a CloudMediaAssetManager instance. + * + * @param { Context } context - Obtains a CloudMediaAssetManager instance. * @returns { CloudMediaAssetManager } Returns cloud media asset manager instance * @throws { BusinessError } 202 - Called by non-system application * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -8086,10 +9499,10 @@ declare namespace photoAccessHelper { static getCloudMediaAssetManagerInstance(context: Context): CloudMediaAssetManager; /** - * Start or resume download cloud media. + * Starts or resumes a task to download cloud media assets. * * @permission ohos.permission.CLOUDFILE_SYNC_MANAGER - * @param { CloudMediaDownloadType } downloadType - cloud media download type. + * @param { CloudMediaDownloadType } downloadType - Type of the download task. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -8104,7 +9517,7 @@ declare namespace photoAccessHelper { startDownloadCloudMedia(downloadType: CloudMediaDownloadType): Promise<void>; /** - * Pause download cloud media. + * Suspends a task that downloads cloud media assets. * * @permission ohos.permission.CLOUDFILE_SYNC_MANAGER * @returns { Promise<void> } Returns void @@ -8119,7 +9532,7 @@ declare namespace photoAccessHelper { pauseDownloadCloudMedia(): Promise<void>; /** - * Cancel download cloud media. + * Cancels a task that downloads cloud media assets. * * @permission ohos.permission.CLOUDFILE_SYNC_MANAGER * @returns { Promise<void> } Returns void @@ -8134,10 +9547,10 @@ declare namespace photoAccessHelper { cancelDownloadCloudMedia(): Promise<void>; /** - * Retain cloud media asset. + * Deletes local metadata and files of cloud media assets. * * @permission ohos.permission.CLOUDFILE_SYNC_MANAGER - * @param { CloudMediaRetainType } retainType - cloud media retain type. + * @param { CloudMediaRetainType } retainType - Mode for deleting cloud media assets. * @returns { Promise<void> } Returns void * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application @@ -8152,7 +9565,7 @@ declare namespace photoAccessHelper { retainCloudMediaAsset(retainType: CloudMediaRetainType): Promise<void>; /** - * Get cloud media asset status. + * Obtains the status of a task that downloads cloud media assets. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<CloudMediaAssetStatus> } Returns cloud media asset status @@ -8166,6 +9579,149 @@ declare namespace photoAccessHelper { */ getCloudMediaAssetStatus(): Promise<CloudMediaAssetStatus>; } + + /** + * Status of cloud media asset. + * + * @interface PhotoAssetCustomRecord + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 20 + */ + interface PhotoAssetCustomRecord { + /** + * file id + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @since 20 + */ + fileId: number; + /** + * share count + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @since 20 + */ + shareCount: number; + /** + * lcd jump count + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @since 20 + */ + lcdJumpCount: number; + } + + /** + * Defines the class of photo asset custom record manager. + * + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 20 + */ + class PhotoAssetCustomRecordManager { + /** + * Get photo asset custom record manager instance. + * + * @param { Context } context - Hap context information + * @returns { PhotoAssetCustomRecordManager } Returns photo custom record manager instance + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 23800107 - Parameter error. context is nullptr or invalid + * @static + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 20 + */ + static getCustomRecordManagerInstance(context: Context): PhotoAssetCustomRecordManager; + /** + * Create photo asset custom record. + * + * @param { Array<PhotoAssetCustomRecord> } customRecords - the photo asset custom record requested + * @returns { Promise<void> } Returns void + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 23800151 - Param validation for the scene has failed. It is recommended to retry and check the logs. + * <br>Possible causes: 1. PhotoAssetCustomRecord param out of line; 2. PhotoAssetCustomRecord already exists ; 3. array length is over 200. + * @throws { BusinessError } 23800301 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 20 + */ + createCustomRecords(customRecords: Array<PhotoAssetCustomRecord>): Promise<void>; + /** + * Get photo asset custom record. + * + * @param { FetchOptions } options - Fetch options. + * @returns { Promise<FetchResult<PhotoAssetCustomRecord>> } Returns fetchResult of albums containing custom records + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 23800151 - Param validation for the scene has failed. It is recommended to retry and check the logs. + * <br>Possible causes: 1. FetchColumns is invaild; 2. Unsupported predicates. + * @throws { BusinessError } 23800301 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 20 + */ + getCustomRecords(options: FetchOptions): Promise<FetchResult<PhotoAssetCustomRecord>>; + /** + * Set photo asset custom record. + * + * @param { Array<PhotoAssetCustomRecord> } customRecords - the photo asset custom record requested + * @returns { Promise<Array<number>> } Returns array of file ids that failed to update + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 23800151 - Param validation for the scene has failed. It is recommended to retry and check the logs. + * <br>Possible causes: 1. PhotoAssetCustomRecord param out of line; 2. PhotoAssetCustomRecord already exists ; 3. array length is over 200. + * @throws { BusinessError } 23800301 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 20 + */ + setCustomRecords(customRecords: Array<PhotoAssetCustomRecord>): Promise<Array<number>>; + /** + * Remove photo asset custom record. + * + * @param { FetchOptions } options - Fetch options. + * @returns { Promise<void> } Returns void + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 23800151 - Param validation for the scene has failed. It is recommended to retry and check the logs. + * <br>Possible causes: 1. FetchColumns is invaild; 2. Unsupported predicates. + * @throws { BusinessError } 23800301 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 20 + */ + removeCustomRecords(options: FetchOptions): Promise<void>; + /** + * Add photo asset custom record share count. + * @param { Array<number> } ids - file ids requested. + * @returns {Promise<Array<number>> } Returns array of file ids that failed to update + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 23800151 - Param validation for the scene has failed. It is recommended to retry and check the logs. + * <br>Possible causes: 1. FetchColumns is invaild; 2. Unsupported predicates. + * @throws { BusinessError } 23800301 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 20 + */ + addShareCount(ids: Array<number>): Promise<Array<number>>; + /** + * Add photo asset custom record lcd jump count. + * @param { Array<number> } ids - file ids requested. + * @returns {Promise<Array<number>> } Returns array of file ids that failed to update + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 23800151 - Param validation for the scene has failed. It is recommended to retry and check the logs. + * <br>Possible causes: 1. FetchColumns is invaild; 2. Unsupported predicates. + * @throws { BusinessError } 23800301 - Internal system error. It is recommended to retry and check the logs. + * <br>Possible causes: 1. Database corrupted; 2. The file system is abnormal; 3. The IPC request timed out. + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 20 + */ + addLcdJumpCount(ids: Array<number>): Promise<Array<number>>; + } } export default photoAccessHelper; diff --git a/api/@ohos.file.picker.d.ts b/api/@ohos.file.picker.d.ts index 44bc880e29e3e7ec71ff79fc6c4aa16a09c8f4e7..476fd45436d6bf812904a1cc58db51aa82a92308 100644 --- a/api/@ohos.file.picker.d.ts +++ b/api/@ohos.file.picker.d.ts @@ -20,17 +20,27 @@ import { AsyncCallback, Callback } from './@ohos.base'; import Context from './application/Context'; -import window from "./@ohos.window" +import window from './@ohos.window'; import type { CustomColors } from './@ohos.arkui.theme'; /** - * Provide the capabilities to use different pickers. + * The Picker module encapsulates APIs of DocumentViewPicker, AudioViewPicker, and PhotoViewPicker + * to provide capabilities of selecting and saving files of different types. + * An application can select the API as required. The APIs of this module must be called in UIAbility. + * Otherwise, the FilePicker, AudioPicker, or PhotoPicker cannot be started. + * Chinese characters and non-digit characters in the path are compiled into the corresponding ASCII code + * and concatenated to the URI returned by calling these APIs. * * @namespace picker * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Provide the capabilities to use different pickers. + * The Picker module encapsulates APIs of DocumentViewPicker, AudioViewPicker, and PhotoViewPicker + * to provide capabilities of selecting and saving files of different types. + * An application can select the API as required. The APIs of this module must be called in UIAbility. + * Otherwise, the FilePicker, AudioPicker, or PhotoPicker cannot be started. + * Chinese characters and non-digit characters in the path are compiled into the corresponding ASCII code + * and concatenated to the URI returned by calling these APIs. * * @namespace picker * @syscap SystemCapability.FileManagement.UserFileService @@ -38,7 +48,12 @@ import type { CustomColors } from './@ohos.arkui.theme'; * @since 11 */ /** - * Provide the capabilities to use different pickers. + * The Picker module encapsulates APIs of DocumentViewPicker, AudioViewPicker, and PhotoViewPicker + * to provide capabilities of selecting and saving files of different types. + * An application can select the API as required. The APIs of this module must be called in UIAbility. + * Otherwise, the FilePicker, AudioPicker, or PhotoPicker cannot be started. + * Chinese characters and non-digit characters in the path are compiled into the corresponding ASCII code + * and concatenated to the URI returned by calling these APIs. * * @namespace picker * @syscap SystemCapability.FileManagement.UserFileService @@ -48,14 +63,14 @@ import type { CustomColors } from './@ohos.arkui.theme'; */ declare namespace picker { /** - * PhotoViewMIMETypes represents the type of media resource that photo picker selects. + * Enumerates the media file types that can be selected. * * @enum { string } PhotoViewMIMETypes * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * PhotoViewMIMETypes represents the type of media resource that photo picker selects. + * Enumerates the media file types that can be selected. * * @enum { string } PhotoViewMIMETypes * @syscap SystemCapability.FileManagement.UserFileService @@ -77,7 +92,7 @@ declare namespace picker { * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 11 - * @deprecated since 16 + * @deprecated since 18 * @useinstead ohos.file.photoAccessHelper/photoAccessHelper#PhotoViewMIMETypes.IMAGE_TYPE */ IMAGE_TYPE = 'image/*', @@ -94,7 +109,7 @@ declare namespace picker { * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 11 - * @deprecated since 16 + * @deprecated since 18 * @useinstead ohos.file.photoAccessHelper/photoAccessHelper#PhotoViewMIMETypes.VIDEO_TYPE */ VIDEO_TYPE = 'video/*', @@ -111,20 +126,20 @@ declare namespace picker { * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 11 - * @deprecated since 16 + * @deprecated since 18 * @useinstead ohos.file.photoAccessHelper/photoAccessHelper#PhotoViewMIMETypes.IMAGE_VIDEO_TYPE */ IMAGE_VIDEO_TYPE = '*/*' } /** - * PhotoSelectOptions Object + * Defines the options for selecting images/videos. * * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * PhotoSelectOptions Object + * Defines the options for selecting images/videos. * * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice @@ -134,52 +149,54 @@ declare namespace picker { */ class PhotoSelectOptions { /** - * The Type of the file in the picker window. + * Media file types to select. IMAGE_VIDEO_TYPE is used by default. * * @type { ?PhotoViewMIMETypes } * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * The Type of the file in the picker window. + * Media file types to select. IMAGE_VIDEO_TYPE is used by default. * * @type { ?PhotoViewMIMETypes } * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 11 - * @deprecated since 16 + * @deprecated since 18 * @useinstead ohos.file.photoAccessHelper/photoAccessHelper#PhotoSelectOptions.MIMEType */ MIMEType?: PhotoViewMIMETypes; /** - * Maximum number of images for a single selection. + * Maximum number of media files that can be selected. + * The default value is 50, and the maximum value is 500. * * @type { ?number } * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Maximum number of images for a single selection. + * Maximum number of media files that can be selected. + * The default value is 50, and the maximum value is 500. * * @type { ?number } * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 11 - * @deprecated since 16 + * @deprecated since 18 * @useinstead ohos.file.photoAccessHelper/photoAccessHelper#PhotoSelectOptions.maxSelectNumber */ maxSelectNumber?: number; } /** - * PhotoSelectResult Object + * Defines information about the images or videos selected. * * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * PhotoSelectResult Object + * Defines information about the images or videos selected. * * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice @@ -189,46 +206,50 @@ declare namespace picker { */ class PhotoSelectResult { /** - * The uris for the selected files. + * URIs of the media files selected. + * This URI array can be used only by photoAccessHelper.getAssets. For details, see Using a Media File URI. * * @type { Array<string> } * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * The uris for the selected files. + * URIs of the media files selected. + * This URI array can be used only by photoAccessHelper.getAssets. For details, see Using a Media File URI. * * @type { Array<string> } * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 11 - * @deprecated since 16 + * @deprecated since 18 * @useinstead ohos.file.photoAccessHelper/photoAccessHelper#PhotoSelectResult.photoUris */ photoUris: Array<string>; /** - * Original option. + * Whether the selected image is the original one. + * The value true means the selected image is the original one; the value false means the opposite. * * @type { boolean } * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Original option. + * Whether the selected image is the original one. + * The value true means the selected image is the original one; the value false means the opposite. * * @type { boolean } * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 11 - * @deprecated since 16 + * @deprecated since 18 * @useinstead ohos.file.photoAccessHelper/photoAccessHelper#PhotoSelectResult.isOriginalPhoto */ isOriginalPhoto: boolean; } /** - * PhotoSaveOptions Object + * Defines the options for saving images or videos. * * @syscap SystemCapability.FileManagement.UserFileService * @since 9 @@ -236,24 +257,28 @@ declare namespace picker { */ class PhotoSaveOptions { /** - * The names of the files to be saved. + * File names of the images or videos to save. If this parameter is not specified, the user needs to enter the file names. * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.UserFileService * @since 9 - * @deprecated since 16 + * @deprecated since 18 */ newFileNames?: Array<string>; } /** - * PhotoViewPicker Object + * Provides APIs for selecting and saving images or videos. + * You are advised to use PhotoViewPicker of PhotoAccessHelper to select files. + * Before using the APIs of PhotoViewPicker, you need to create a PhotoViewPicker instance. * * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * PhotoViewPicker Object + * Provides APIs for selecting and saving images or videos. + * You are advised to use PhotoViewPicker of PhotoAccessHelper to select files. + * Before using the APIs of PhotoViewPicker, you need to create a PhotoViewPicker instance. * * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice @@ -263,38 +288,48 @@ declare namespace picker { */ class PhotoViewPicker { /** - * The constructor used to create a PhotoViewPicker object. + * A constructor used to create a PhotoViewPicker instance. + * This constructor is not recommended due to the potential risk of operation failure. * * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 12 - * @deprecated since 16 + * @deprecated since 18 */ constructor(); /** - * The constructor used to create a PhotoViewPicker object. + * A constructor used to create a PhotoViewPicker instance. This constructor is recommended. + * For details about how to obtain the context, see getHostContext. * * @param { Context } context - represents the context. * @syscap SystemCapability.FileManagement.UserFileService * @since 12 - * @deprecated since 16 + * @deprecated since 18 */ constructor(context: Context); /** - * Pull up the photo picker based on the selection mode. + * Starts a photoPicker page for the user to select one or more images or videos. + * This API uses a promise to return the result. + * You can pass in PhotoSelectOptions to specify the type and maximum number of the files to select. * - * @param { PhotoSelectOptions } option - represents the options provided in select mode. - * @returns { Promise<PhotoSelectResult> } Returns the uris for the selected files. + * @param { PhotoSelectOptions } option - Options for selecting images or videos. + * If this parameter is not specified, images and videos are selected by default. + * A maximum of 50 files can be selected. + * @returns { Promise<PhotoSelectResult> } Promise used to return the URIs of the images or videos selected. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the photo picker based on the selection mode. + * Starts a photoPicker page for the user to select one or more images or videos. + * This API uses a promise to return the result. + * You can pass in PhotoSelectOptions to specify the type and maximum number of the files to select. * - * @param { PhotoSelectOptions } option - represents the options provided in select mode. - * @returns { Promise<PhotoSelectResult> } Returns the uris for the selected files. + * @param { PhotoSelectOptions } option - Options for selecting images or videos. + * If this parameter is not specified, images and videos are selected by default. + * A maximum of 50 files can be selected. + * @returns { Promise<PhotoSelectResult> } Promise used to return the URIs of the images or videos selected. * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 11 @@ -304,18 +339,22 @@ declare namespace picker { select(option?: PhotoSelectOptions): Promise<PhotoSelectResult>; /** - * Pull up the photo picker based on the selection mode. + * Starts a photoPicker page for the user to select one or more images or videos. + * This API uses an asynchronous callback to return the result. + * You can pass in PhotoSelectOptions to specify the type and maximum number of the files to select. * - * @param { PhotoSelectOptions } option - represents the options provided in select mode. - * @param { AsyncCallback<PhotoSelectResult> } callback - callback + * @param { PhotoSelectOptions } option - Options for selecting images or videos. + * @param { AsyncCallback<PhotoSelectResult> } callback - Callback used to return the images or videos selected. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the photo picker based on the selection mode. + * Starts a photoPicker page for the user to select one or more images or videos. + * This API uses an asynchronous callback to return the result. + * You can pass in PhotoSelectOptions to specify the type and maximum number of the files to select. * - * @param { PhotoSelectOptions } option - represents the options provided in select mode. - * @param { AsyncCallback<PhotoSelectResult> } callback - callback + * @param { PhotoSelectOptions } option - Options for selecting images or videos. + * @param { AsyncCallback<PhotoSelectResult> } callback - Callback used to return the images or videos selected. * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 11 @@ -325,16 +364,18 @@ declare namespace picker { select(option: PhotoSelectOptions, callback: AsyncCallback<PhotoSelectResult>): void; /** - * Pull up the photo picker based on the selection mode. + * Starts a photoPicker page for the user to select one or more images or videos. + * This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<PhotoSelectResult> } callback - callback + * @param { AsyncCallback<PhotoSelectResult> } callback - Callback used to return the images or videos selected. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the photo picker based on the selection mode. + * Starts a photoPicker page for the user to select one or more images or videos. + * This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<PhotoSelectResult> } callback - callback + * @param { AsyncCallback<PhotoSelectResult> } callback - Callback used to return the images or videos selected. * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 11 @@ -344,9 +385,12 @@ declare namespace picker { select(callback: AsyncCallback<PhotoSelectResult>): void; /** - * Pull up the photo picker based on the save mode. + * Starts a photoPicker page for the user to save one or more images or videos. + * This API uses a promise to return the result. + * You can pass in PhotoSaveOptions to specify the URIs of the images or videos to save. * - * @param { PhotoSaveOptions } option - represents the options provided in save mode. + * @param { PhotoSaveOptions } option - Options for saving images or videos. If this parameter is not specified, + * a photoPicker page will be displayed for the user to enter the names of the files to save. * @returns { Promise<Array<string>> } Returns the uris for the saved files. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 @@ -356,10 +400,12 @@ declare namespace picker { save(option?: PhotoSaveOptions): Promise<Array<string>>; /** - * Pull up the photo picker based on the save mode. + * Starts a photoPicker page for the user to save one or more images or videos. + * This API uses an asynchronous callback to return the result. + * You can pass in PhotoSaveOptions to specify the URIs of the images or videos to save. * - * @param { PhotoSaveOptions } option - represents the options provided in save mode. - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { PhotoSaveOptions } option - Options for saving images or videos. + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the images or videos saved. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 * @deprecated since 12 @@ -368,9 +414,10 @@ declare namespace picker { save(option: PhotoSaveOptions, callback: AsyncCallback<Array<string>>): void; /** - * Pull up the photo picker based on the save mode. + * Starts a photoPicker page for the user to save one or more images or videos. + * This API uses an asynchronous callback to return the URIs of the images or videos to save. * - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the images or videos saved. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 * @deprecated since 12 @@ -380,14 +427,16 @@ declare namespace picker { } /** - * Enumerates the picker's select mode types. + * Enumerates the types of documents selected. + * Only 2-in-1 devices are supported. * * @enum { number } DocumentSelectMode * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection * @since 11 */ /** - * Enumerates the picker's select mode types. + * Enumerates the types of documents selected. + * Only 2-in-1 devices are supported. * * @enum { number } DocumentSelectMode * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection @@ -397,12 +446,14 @@ declare namespace picker { */ export enum DocumentSelectMode { /** + * File (default). * Indicates that only files are allowed to be selected. * * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection * @since 11 */ /** + * File (default). * Indicates that only files are allowed to be selected. * * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection @@ -413,12 +464,14 @@ declare namespace picker { FILE = 0, /** + * Folder. * Indicates that only folders are allowed to be selected. * * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection * @since 11 */ /** + * Folder. * Indicates that only folders are allowed to be selected. * * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection @@ -429,12 +482,14 @@ declare namespace picker { FOLDER = 1, /** + * Mixed type of files and folders. * Indicates that files and folders are allowed to be selected. * * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection * @since 11 */ /** + * Mixed type of files and folders. * Indicates that files and folders are allowed to be selected. * * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection @@ -445,7 +500,7 @@ declare namespace picker { } /** - * Enumerates the picker's mode types. + * Enumerates the modes for saving documents. * * @enum { number } DocumentPickerMode * @syscap SystemCapability.FileManagement.UserFileService @@ -454,7 +509,7 @@ declare namespace picker { */ export enum DocumentPickerMode { /** - * Document mode. + * Standard mode. * * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice @@ -473,7 +528,7 @@ declare namespace picker { } /** - * Enumerates the picker's merge mode types. + * Enumerates file aggregation types. Only mobile phones are supported. * * @enum { number } DocumentPickerMode * @syscap SystemCapability.FileManagement.UserFileService @@ -482,7 +537,7 @@ declare namespace picker { */ export enum MergeTypeMode { /** - * Indicates common mode. + * Default mode, indicating that this parameter does not take effect. * * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice @@ -491,6 +546,7 @@ declare namespace picker { DEFAULT = 0, /** + * Audio mode. * Indicates that audios are allowed to be selected * * @syscap SystemCapability.FileManagement.UserFileService @@ -500,6 +556,7 @@ declare namespace picker { AUDIO = 1, /** + * Video mode. * Indicates that videos are allowed to be selected * * @syscap SystemCapability.FileManagement.UserFileService @@ -509,6 +566,7 @@ declare namespace picker { VIDEO = 2, /** + * Document mode. * Indicates that documents are allowed to be selected * * @syscap SystemCapability.FileManagement.UserFileService @@ -518,6 +576,7 @@ declare namespace picker { DOCUMENT = 3, /** + * Image mode. * Indicates that pictures are allowed to be selected * * @syscap SystemCapability.FileManagement.UserFileService @@ -528,13 +587,13 @@ declare namespace picker { } /** - * DocumentSelectOptions Object. + * Defines the options for selecting documents. * * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * DocumentSelectOptions Object. + * Defines the options for selecting documents. * * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform @@ -543,14 +602,16 @@ declare namespace picker { */ class DocumentSelectOptions { /** - * The default opening uri of the picker window. + * Path of the document or directory to select. + * It is empty by default (the recently opened page is displayed). * * @type { ?string } * @syscap SystemCapability.FileManagement.UserFileService * @since 10 */ /** - * The default opening uri of the picker window. + * Path of the document or directory to select. + * It is empty by default (the recently opened page is displayed). * * @type { ?string } * @syscap SystemCapability.FileManagement.UserFileService @@ -561,14 +622,28 @@ declare namespace picker { defaultFilePathUri?: string; /** - * Suffixes for file selected. + * Document suffix of the document to select. The value is a string array. + * Each element specifies an option, which includes at most two parts with a vertical bar (|) in between. + * The first part is the description, and the second part is the document suffix. + * If there is no "|", the option does not have the description. + * Multiple document suffixes separated by a comma (,) are allowed in an option. + * The number of elements in a string array cannot exceed 100. + * This parameter is available only to the devices that have the required system capability. + * By default, no filtering is performed, that is, all documents are selected. * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.UserFileService * @since 10 */ /** - * Suffixes for file selected. + * Document suffix of the document to select. The value is a string array. + * Each element specifies an option, which includes at most two parts with a vertical bar (|) in between. + * The first part is the description, and the second part is the document suffix. + * If there is no "|", the option does not have the description. + * Multiple document suffixes separated by a comma (,) are allowed in an option. + * The number of elements in a string array cannot exceed 100. + * This parameter is available only to the devices that have the required system capability. + * By default, no filtering is performed, that is, all documents are selected. * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.UserFileService @@ -579,14 +654,22 @@ declare namespace picker { fileSuffixFilters?: Array<string>; /** - * Maximum number of files for a single selection. + * Maximum number of documents that can be selected. + * Value range: 1 to 500. + * Only the devices with the required system capability can select directories, + * and only one directory can be selected at a time. + * Default value: 1. * * @type { ?number } * @syscap SystemCapability.FileManagement.UserFileService * @since 10 */ /** - * Maximum number of files for a single selection. + * Maximum number of documents that can be selected. + * Value range: 1 to 500. + * Only the devices with the required system capability can select directories, + * and only one directory can be selected at a time. + * Default value: 1. * * @type { ?number } * @syscap SystemCapability.FileManagement.UserFileService @@ -597,14 +680,14 @@ declare namespace picker { maxSelectNumber?: number; /** - * Selection mode. + * Selection mode. Only 2-in-1 devices are supported. The default value is FILE. * * @type { ?DocumentSelectMode } * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection * @since 11 */ /** - * Selection mode. + * Selection mode. Only 2-in-1 devices are supported. The default value is FILE. * * @type { ?DocumentSelectMode } * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection @@ -615,9 +698,9 @@ declare namespace picker { selectMode?: DocumentSelectMode; /** - * Granting Permissions to Specified Directories or Files. - * The value true indicates that authorization is required. - * When authmode is set to true, the defaultFilePathUri field is mandatory. + * Whether to start Picker. + * Default value: false. + * If authMode is true, defaultFilePathUri is mandatory, which specifies the URI of the file allowed to access. * * @type { ?boolean } * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection @@ -627,7 +710,11 @@ declare namespace picker { authMode?: boolean; /** - * Granting Permissions to Mutl file. + * Whether to enable the batch authorization mode. + * The value false (default) means to disable the batch authorization mode; + * the value true means to enable the batch authorization mode. + * The multiUriArray parameter only takes effect when multAuthMode is set to true. + * Only mobile phones are supported. * * @type { ?boolean } * @syscap SystemCapability.FileManagement.UserFileService @@ -637,7 +724,10 @@ declare namespace picker { multiAuthMode?: boolean; /** - * Mutl file to Granting Permissions + * Whether to pass the URIs for batch authorization (only files are supported). + * This parameter is used with multAuthMode, and does not take effect when multAuthMode is set to false. + * By default, this parameter is left empty.(The files displayed on the batch authorization page are empty.) + * Only mobile phones are supported. * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.UserFileService @@ -647,7 +737,10 @@ declare namespace picker { multiUriArray?: Array<string>; /** - * Filtering by file type + * Whether to enable the aggregation view mode for a file management application. + * The default value is DEFAULT, indicating that this parameter does not take effect and the aggregation view is disabled. + * If this parameter is set to a value other than DEFAULT, other parameters do not take effect. + * Only mobile phones are supported. * * @type { ?MergeTypeMode } * @syscap SystemCapability.FileManagement.UserFileService @@ -657,14 +750,15 @@ declare namespace picker { mergeMode?: MergeTypeMode; /** - * Specifies whether the picker supports encryption. - * When its value is set to true, the picker will display a button that allows the user - * to encrypt files selected. + * Whether to support encryption (only files are supported). + * The default value is false. + * If this parameter is set to true, the picker will display a button that allows the user, + * files can be encrypted on the Picker page. * * @type { ?boolean } * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice - * @since 18 + * @since 19 */ isEncryptionSupported?: boolean; @@ -680,13 +774,13 @@ declare namespace picker { } /** - * DocumentSaveOptions Object + * Defines the options for saving documents. * * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * DocumentSaveOptions Object + * Defines the options for saving documents. * * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform @@ -695,14 +789,16 @@ declare namespace picker { */ class DocumentSaveOptions { /** - * The names of the files to be saved. + * Name of the document to save. + * If this parameter is not specified, the user needs to enter the the document name. * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * The names of the files to be saved. + * Name of the document to save. + * If this parameter is not specified, the user needs to enter the the document name. * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.UserFileService @@ -713,14 +809,14 @@ declare namespace picker { newFileNames?: Array<string>; /** - * The default opening uri of the picker window. + * Path of the document or directory to save. * * @type { ?string } * @syscap SystemCapability.FileManagement.UserFileService * @since 10 */ /** - * The default opening uri of the picker window. + * Path of the document or directory to save. * * @type { ?string } * @syscap SystemCapability.FileManagement.UserFileService @@ -731,14 +827,20 @@ declare namespace picker { defaultFilePathUri?: string; /** - * Suffixes for file saved. + * Document suffix of the document to save. The value is a string array. + * Each element specifies an option, which includes at most two parts with a vertical bar (|) in between. + * The first part is the description, and the second part is the document suffix. + * If there is no "|", the option does not have the description. By default, all documents are saved. * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.UserFileService * @since 10 */ /** - * Suffixes for file saved. + * Document suffix of the document to save. The value is a string array. + * Each element specifies an option, which includes at most two parts with a vertical bar (|) in between. + * The first part is the description, and the second part is the document suffix. + * If there is no "|", the option does not have the description. By default, all documents are saved. * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.UserFileService @@ -747,7 +849,9 @@ declare namespace picker { */ fileSuffixChoices?: Array<string>; /** - * picker mode. + * Mode for starting Picker. Default value: DEFAULT. + * If pickerMode is DOWNLOAD, + * the settings of newFileNames, defaultFilePathUri, and fileSuffixChoices do not take effect. * * @type { ?DocumentPickerMode } * @syscap SystemCapability.FileManagement.UserFileService @@ -768,13 +872,15 @@ declare namespace picker { } /** - * DocumentViewPicker Object + * Provides APIs for selecting and saving documents in different formats. + * Before using the APIs of DocumentViewPicker, you need to create a DocumentViewPicker instance. * * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * DocumentViewPicker Object + * Provides APIs for selecting and saving documents in different formats. + * Before using the APIs of DocumentViewPicker, you need to create a DocumentViewPicker instance. * * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform @@ -783,7 +889,8 @@ declare namespace picker { */ class DocumentViewPicker { /** - * The constructor used to create a DocumentViewPicker object. + * A constructor used to create a DocumentViewPicker instance. + * This constructor is not recommended due to the potential risk of operation failure. * * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice @@ -792,9 +899,11 @@ declare namespace picker { constructor(); /** - * The constructor used to create a DocumentViewPicker object. + * A constructor used to create a DocumentViewPicker instance. + * This constructor is recommended. For details about how to obtain the context, see getHostContext. * - * @param { Context } context - represents the context. + * @param { Context } context - Application context (only UIAbilityContext is supported). + * For details about the application context of the stage model, see Context. * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 12 @@ -802,28 +911,36 @@ declare namespace picker { constructor(context: Context); /** - * The constructor used to create a DocumentViewPicker object. + * A constructor used to create a DocumentViewPicker object in a window created by an application. + * In other scenarios, you are advised to use constructor(context: Context) to create a DocumentViewPicker object. * - * @param { Context } context - represents the context. - * @param { window.Window } window - represents the window. + * @param { Context } context - Application context (only UIAbilityContext is supported). + * For details about the application context of the stage model, see Context. + * @param { window.Window } window - Window instance created by the application. * @syscap SystemCapability.FileManagement.UserFileService * @since 13 */ constructor(context: Context, window: window.Window); /** - * Pull up the document picker based on the selection mode. + * Starts a documentPicker page for the user to select one or more documents. + * This API uses a promise to return the result. + * You can pass in DocumentSelectOptions to specify the URIs of the documents to select. * - * @param { DocumentSelectOptions } option - represents the options provided in select mode. - * @returns { Promise<Array<string>> } Returns the uris for the selected files. + * @param { DocumentSelectOptions } option - Options for selecting documents. + * If this parameter is not specified, the documentPicker page is displayed by default. + * @returns { Promise<Array<string>> } Promise used to return the URIs of the documents selected. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the document picker based on the selection mode. + * Starts a documentPicker page for the user to select one or more documents. + * This API uses a promise to return the result. + * You can pass in DocumentSelectOptions to specify the URIs of the documents to select. * - * @param { DocumentSelectOptions } option - represents the options provided in select mode. - * @returns { Promise<Array<string>> } Returns the uris for the selected files. + * @param { DocumentSelectOptions } option - Options for selecting documents. + * If this parameter is not specified, the documentPicker page is displayed by default. + * @returns { Promise<Array<string>> } Promise used to return the URIs of the documents selected. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @atomicservice @@ -832,18 +949,22 @@ declare namespace picker { select(option?: DocumentSelectOptions): Promise<Array<string>>; /** - * Pull up the document picker based on the selection mode. + * Starts a documentPicker page for the user to select one or more documents. + * This API uses an asynchronous callback to return the result. + * You can pass in DocumentSelectOptions to specify the URIs of the documents to select. * - * @param { DocumentSelectOptions } option - represents the options provided in select mode. - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { DocumentSelectOptions } option - Options for selecting documents. + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the documents selected. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the document picker based on the selection mode. + * Starts a documentPicker page for the user to select one or more documents. + * This API uses an asynchronous callback to return the result. + * You can pass in DocumentSelectOptions to specify the URIs of the documents to select. * - * @param { DocumentSelectOptions } option - represents the options provided in select mode. - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { DocumentSelectOptions } option - Options for selecting documents. + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the documents selected. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @atomicservice @@ -852,16 +973,18 @@ declare namespace picker { select(option: DocumentSelectOptions, callback: AsyncCallback<Array<string>>): void; /** - * Pull up the document picker based on the selection mode. + * Starts a documentPicker page for the user to select one or more documents. + * This API uses an asynchronous callback to return the URIs of the documents selected. * - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the documents selected. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the document picker based on the selection mode. + * Starts a documentPicker page for the user to select one or more documents. + * This API uses an asynchronous callback to return the URIs of the documents selected. * - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the documents selected. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @atomicservice @@ -870,18 +993,24 @@ declare namespace picker { select(callback: AsyncCallback<Array<string>>): void; /** - * Pull up the document picker based on the save mode. + * Starts a documentPicker page for the user to save one or more documents. + * This API uses a promise to return the result. + * You can pass in DocumentSaveOptions to specify the URIs of the documents to save. * - * @param { DocumentSaveOptions } option - represents the options provided in save mode. - * @returns { Promise<Array<string>> } Returns the uris for the saved files. + * @param { DocumentSaveOptions } option - Options for saving the documents. If this parameter is not specified, + * a documentPicker page will be displayed for the user to enter the names of the documents to save. + * @returns { Promise<Array<string>> } Promise used to return the URIs of the documents saved. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the document picker based on the save mode. + * Starts a documentPicker page for the user to save one or more documents. + * This API uses a promise to return the result. + * You can pass in DocumentSaveOptions to specify the URIs of the documents to save. * - * @param { DocumentSaveOptions } option - represents the options provided in save mode. - * @returns { Promise<Array<string>> } Returns the uris for the saved files. + * @param { DocumentSaveOptions } option - Options for saving the documents. If this parameter is not specified, + * a documentPicker page will be displayed for the user to enter the names of the documents to save. + * @returns { Promise<Array<string>> } Promise used to return the URIs of the documents saved. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @atomicservice @@ -890,18 +1019,22 @@ declare namespace picker { save(option?: DocumentSaveOptions): Promise<Array<string>>; /** - * Pull up the document picker based on the save mode. + * Starts a documentPicker page for the user to save one or more documents. + * This API uses an asynchronous callback to return the result. + * You can pass in DocumentSaveOptions to specify the URIs of the documents to save. * - * @param { DocumentSaveOptions } option - represents the options provided in save mode. - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { DocumentSaveOptions } option - Options for saving the documents. + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the documents saved. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the document picker based on the save mode. + * Starts a documentPicker page for the user to save one or more documents. + * This API uses an asynchronous callback to return the result. + * You can pass in DocumentSaveOptions to specify the URIs of the documents to save. * - * @param { DocumentSaveOptions } option - represents the options provided in save mode. - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { DocumentSaveOptions } option - Options for saving the documents. + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the documents saved. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @atomicservice @@ -910,16 +1043,18 @@ declare namespace picker { save(option: DocumentSaveOptions, callback: AsyncCallback<Array<string>>): void; /** - * Pull up the document picker based on the save mode. + * Starts a documentPicker page for the user to save one or more documents. + * This API uses an asynchronous callback to return the URIs of the documents to save. * - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the documents saved. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the document picker based on the save mode. + * Starts a documentPicker page for the user to save one or more documents. + * This API uses an asynchronous callback to return the URIs of the documents to save. * - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the documents saved. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @atomicservice @@ -928,7 +1063,14 @@ declare namespace picker { save(callback: AsyncCallback<Array<string>>): void; /** - * Obtain the saving type selected by the user. + * Obtains the index of the file suffix type of the file saved. + * Only 2-in-1 devices are supported. + * This method takes effect only when used with save(). + * This method can be used only after DocumentSaveOptions. + * fileSuffixChoices is configured. + * The index (number) returned by this method indicates the location of + * the file suffix specified in DocumentSaveOptions.fileSuffixChoices. + * If no file suffix is specified, getSelectedIndex() returns -1. * * @returns { number } Returns the index of the suffix array fileSuffixChoices configured by the user in DocumentSaveOptions. * @syscap SystemCapability.FileManagement.UserFileService.FolderSelection @@ -940,13 +1082,13 @@ declare namespace picker { } /** - * AudioSelectOptions Object. Currently not supported. + * Defines the options for selecting audio clips. * * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * AudioSelectOptions Object. + * Defines the options for selecting audio clips. * * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform @@ -955,7 +1097,8 @@ declare namespace picker { */ class AudioSelectOptions { /** - * Maximum number of audio for a single selection. + * Maximum number of audio clips that can be selected. + * Default value: 1. Value range: 1 to 500 * * @type { ?number } * @syscap SystemCapability.FileManagement.UserFileService @@ -967,13 +1110,13 @@ declare namespace picker { } /** - * AudioSaveOptions Object + * Defines the options for saving audio clips. * * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * AudioSaveOptions Object + * Defines the options for saving audio clips. * * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform @@ -982,14 +1125,16 @@ declare namespace picker { */ class AudioSaveOptions { /** - * The names of the files to be saved. + * File names of the audio clips to save. + * If this parameter is not specified, the user needs to enter the file names. * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * The names of the files to be saved. + * File names of the audio clips to save. + * If this parameter is not specified, the user needs to enter the file names. * * @type { ?Array<string> } * @syscap SystemCapability.FileManagement.UserFileService @@ -1001,13 +1146,15 @@ declare namespace picker { } /** - * AudioViewPicker Object + * Provides APIs for selecting and saving audio clips. + * Before using the APIs of AudioViewPicker, you need to create an AudioViewPicker instance. * * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * AudioViewPicker Object + * Provides APIs for selecting and saving audio clips. + * Before using the APIs of AudioViewPicker, you need to create an AudioViewPicker instance. * * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform @@ -1016,7 +1163,8 @@ declare namespace picker { */ class AudioViewPicker { /** - * The constructor used to create a AudioViewPicker object. + * A constructor used to create an AudioViewPicker instance. + * This constructor is not recommended due to the potential risk of operation failure. * * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice @@ -1025,9 +1173,11 @@ declare namespace picker { constructor(); /** - * The constructor used to create a AudioViewPicker object. + * A constructor used to create an AudioViewPicker instance. + * This constructor is recommended. For details about how to obtain the context, see getHostContext. * - * @param { Context } context - represents the context. + * @param { Context } context - Application context (only UIAbilityContext is supported). + * For details about the application context of the stage model, see Context. * @syscap SystemCapability.FileManagement.UserFileService * @atomicservice * @since 12 @@ -1035,18 +1185,24 @@ declare namespace picker { constructor(context: Context); /** - * Pull up the audio picker based on the selection mode. + * Starts an audioPicker page for the user to select one or more audio clips. + * This API uses a promise to return the result. + * You can pass in AudioSelectOptions to specify the URIs of the audio clips to select. * - * @param { AudioSelectOptions } option - represents the options provided in select mode. - * @returns { Promise<Array<string>> } Returns the uris for the selected files. + * @param { AudioSelectOptions } option - Options for selecting audio clips. + * If this parameter is not specified, the audioPicker page is displayed by default. + * @returns { Promise<Array<string>> } Promise used to return the URIs of the audio clips selected. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the audio picker based on the selection mode. + * Starts an audioPicker page for the user to select one or more audio clips. + * This API uses a promise to return the result. + * You can pass in AudioSelectOptions to specify the URIs of the audio clips to select. * - * @param { AudioSelectOptions } option - represents the options provided in select mode. - * @returns { Promise<Array<string>> } Returns the uris for the selected files. + * @param { AudioSelectOptions } option - Options for selecting audio clips. + * If this parameter is not specified, the audioPicker page is displayed by default. + * @returns { Promise<Array<string>> } Promise used to return the URIs of the audio clips selected. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @atomicservice @@ -1055,18 +1211,22 @@ declare namespace picker { select(option?: AudioSelectOptions): Promise<Array<string>>; /** - * Pull up the audio picker based on the selection mode. + * Starts an audioPicker page for the user to select one or more audio clips. + * This API uses an asynchronous callback to return the result. + * You can pass in AudioSelectOptions to specify the URIs of the audio clips to select. * - * @param { AudioSelectOptions } option - represents the options provided in select mode. - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AudioSelectOptions } option - Options for selecting audio clips. + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the audio clips selected. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the audio picker based on the selection mode. + * Starts an audioPicker page for the user to select one or more audio clips. + * This API uses an asynchronous callback to return the result. + * You can pass in AudioSelectOptions to specify the URIs of the audio clips to select. * - * @param { AudioSelectOptions } option - represents the options provided in select mode. - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AudioSelectOptions } option - Options for selecting audio clips. + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the audio clips selected. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @since 12 @@ -1074,16 +1234,18 @@ declare namespace picker { select(option: AudioSelectOptions, callback: AsyncCallback<Array<string>>): void; /** - * Pull up the audio picker based on the selection mode. + * Starts an audioPicker page for the user to select one or more audio clips. + * This API uses an asynchronous callback to return the URIs of the audio clips selected. * - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the audio clips selected. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the audio picker based on the selection mode. + * Starts an audioPicker page for the user to select one or more audio clips. + * This API uses an asynchronous callback to return the URIs of the audio clips selected. * - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the audio clips selected. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @since 12 @@ -1091,18 +1253,26 @@ declare namespace picker { select(callback: AsyncCallback<Array<string>>): void; /** - * Pull up the audio picker based on the save mode. + * Starts an audioPicker page (currently, a documentPicker page is displayed) + * for the user to save one or more audio clips. + * This API uses a promise to return the result. + * You can pass in AudioSaveOptions to specify the URIs of the audio clips to save. * - * @param { AudioSaveOptions } option - represents the options provided in save mode. - * @returns { Promise<Array<string>> } Returns the uris for the saved files. + * @param { AudioSaveOptions } option - Options for saving audio clips.If this parameter is not specified, + * an audioPicker page will be displayed for the user to enter the names of the files to save. + * @returns { Promise<Array<string>> } Promise used to return the URIs of the audio clips saved. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the audio picker based on the save mode. + * Starts an audioPicker page (currently, a documentPicker page is displayed) + * for the user to save one or more audio clips. + * This API uses a promise to return the result. + * You can pass in AudioSaveOptions to specify the URIs of the audio clips to save. * - * @param { AudioSaveOptions } option - represents the options provided in save mode. - * @returns { Promise<Array<string>> } Returns the uris for the saved files. + * @param { AudioSaveOptions } option - Options for saving audio clips.If this parameter is not specified, + * an audioPicker page will be displayed for the user to enter the names of the files to save. + * @returns { Promise<Array<string>> } Promise used to return the URIs of the audio clips saved. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @atomicservice @@ -1111,18 +1281,24 @@ declare namespace picker { save(option?: AudioSaveOptions): Promise<Array<string>>; /** - * Pull up the audio picker based on the save mode. + * Starts an audioPicker page (currently, a documentPicker page is displayed) + * for the user to save one or more audio clips. + * This API uses an asynchronous callback to return the result. + * You can pass in AudioSaveOptions to specify the URIs of the audio clips to save. * - * @param { AudioSaveOptions } option - represents the options provided in save mode. - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AudioSaveOptions } option - Options for saving audio clips. + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the audio clips saved. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the audio picker based on the save mode. + * Starts an audioPicker page (currently, a documentPicker page is displayed) + * for the user to save one or more audio clips. + * This API uses an asynchronous callback to return the result. + * You can pass in AudioSaveOptions to specify the URIs of the audio clips to save. * - * @param { AudioSaveOptions } option - represents the options provided in save mode. - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AudioSaveOptions } option -Options for saving audio clips. + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the audio clips saved. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @since 12 @@ -1130,16 +1306,20 @@ declare namespace picker { save(option: AudioSaveOptions, callback: AsyncCallback<Array<string>>): void; /** - * Pull up the audio picker based on the save mode. + * Starts an audioPicker page (currently, a documentPicker page is displayed) + * for the user to save one or more audio clips. + * This API uses an asynchronous callback to return the URIs of the audio clips saved. * - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the audio clips saved. * @syscap SystemCapability.FileManagement.UserFileService * @since 9 */ /** - * Pull up the audio picker based on the save mode. + * Starts an audioPicker page (currently, a documentPicker page is displayed) + * for the user to save one or more audio clips. + * This API uses an asynchronous callback to return the URIs of the audio clips saved. * - * @param { AsyncCallback<Array<string>> } callback - callback + * @param { AsyncCallback<Array<string>> } callback - Callback invoked to return the URIs of the audio clips saved. * @syscap SystemCapability.FileManagement.UserFileService * @crossplatform * @since 12 diff --git a/api/@ohos.file.securityLabel.d.ts b/api/@ohos.file.securityLabel.d.ts index 6167dc92ace646abc9354557a9cc0b9780f5c409..f675714f290243f5a5c0523564e77f1fb7106385 100644 --- a/api/@ohos.file.securityLabel.d.ts +++ b/api/@ohos.file.securityLabel.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (C) 2022-2023 Huawei Device Co., Ltd. + * Copyright (C) 2022-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -25,7 +25,8 @@ import type { AsyncCallback } from './@ohos.base'; * * @namespace securityLabel * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace securityLabel { /** @@ -33,7 +34,8 @@ declare namespace securityLabel { * * @typedef { 's0' | 's1' | 's2' | 's3' | 's4' } * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ type DataLevel = 's0' | 's1' | 's2' | 's3' | 's4'; @@ -52,7 +54,8 @@ declare namespace securityLabel { * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function setSecurityLabel(path: string, type: DataLevel): Promise<void>; @@ -71,7 +74,8 @@ declare namespace securityLabel { * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function setSecurityLabel(path: string, type: DataLevel, callback: AsyncCallback<void>): void; @@ -89,7 +93,8 @@ declare namespace securityLabel { * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function setSecurityLabelSync(path: string, type: DataLevel): void; @@ -107,7 +112,8 @@ declare namespace securityLabel { * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function getSecurityLabel(path: string): Promise<string>; @@ -125,7 +131,8 @@ declare namespace securityLabel { * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function getSecurityLabel(path: string, callback: AsyncCallback<string>): void; @@ -143,7 +150,8 @@ declare namespace securityLabel { * @throws { BusinessError } 13900041 - Quota exceeded * @throws { BusinessError } 13900042 - Unknown error * @syscap SystemCapability.FileManagement.File.FileIO - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function getSecurityLabelSync(path: string): string; } diff --git a/api/@ohos.file.sendablePhotoAccessHelper.d.ets b/api/@ohos.file.sendablePhotoAccessHelper.d.ets index 07d665e889f02241532bca3217bbc180d56472a7..bf2dbc140f46e1d0373a674d34ce97cc1571c75e 100644 --- a/api/@ohos.file.sendablePhotoAccessHelper.d.ets +++ b/api/@ohos.file.sendablePhotoAccessHelper.d.ets @@ -47,7 +47,25 @@ declare namespace sendablePhotoAccessHelper { function getPhotoAccessHelper(context: Context): PhotoAccessHelper; /** - * Enumeration of different types of photos + * Returns an instance of PhotoAccessHelper + * + * @permission ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS + * @param { Context } context - Hap context information + * @param { number } userId - Target userId + * @returns { PhotoAccessHelper } Instance of PhotoAccessHelper + * @throws { BusinessError } 201 - Permission denied + * @throws { BusinessError } 202 - Called by non-system application + * @throws { BusinessError } 13900020 - Invalid argument + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @StageModelOnly + * @systemapi + * @crossplatform + * @since 19 + */ + function getPhotoAccessHelper(context: Context, userId: number): PhotoAccessHelper; + + /** + * Enumerates media file types. * * @enum { number } PhotoType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -56,7 +74,7 @@ declare namespace sendablePhotoAccessHelper { */ const enum PhotoType { /** - * Image asset + * Image. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice @@ -64,7 +82,7 @@ declare namespace sendablePhotoAccessHelper { */ IMAGE = 1, /** - * Video asset + * Video. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice @@ -74,7 +92,7 @@ declare namespace sendablePhotoAccessHelper { } /** - * Enumeration of different categories of photos + * Enumerates the PhotoAsset types. * * @enum { number } PhotoSubtype * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -83,7 +101,7 @@ declare namespace sendablePhotoAccessHelper { */ enum PhotoSubtype { /** - * Default Photo Type + * Photo, which is the default type. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice @@ -99,7 +117,7 @@ declare namespace sendablePhotoAccessHelper { */ SCREENSHOT = 1, /** - * Moving Photo Type + * Moving photo. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice @@ -107,7 +125,7 @@ declare namespace sendablePhotoAccessHelper { */ MOVING_PHOTO = 3, /** - * Burst Photo Type + * Burst photo. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @atomicservice @@ -117,7 +135,7 @@ declare namespace sendablePhotoAccessHelper { } /** - * Enumeration of dynamic range type + * Enumerates the dynamic range types of media assets. * * @enum { number } DynamicRangeType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -125,14 +143,14 @@ declare namespace sendablePhotoAccessHelper { */ enum DynamicRangeType { /** - * SDR(Standard-Dynamic Range) format + * Standard dynamic range (SDR). * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 14 */ SDR = 0, /** - * HDR(High-Dynamic Range) format + * High dynamic range (HDR). * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 14 @@ -303,9 +321,11 @@ declare namespace sendablePhotoAccessHelper { */ readonly displayName: string; /** - * Returns the value of the specified member. + * Obtains a PhotoAsset member parameter. * - * @param { string } member - Photo asset member. for example : get(PhotoKeys.SIZE) + * @param { string } member - Name of the member parameter to obtain. + * Except 'uri', 'media_type', 'subtype', and 'display_name', you must pass in PhotoKeys in fetchColumns. + * For example, to obtain the title, pass in fetchColumns: ['title']. * @returns { MemberType } Returns the value of the specified photo asset member * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -314,10 +334,14 @@ declare namespace sendablePhotoAccessHelper { */ get(member: string): photoAccessHelper.MemberType; /** - * Set a new value to the specified member + * Sets a PhotoAsset member parameter. * - * @param { string } member - Photo asset member - * @param { string } value - The new value of the member. + * @param { string } member - Name of the parameter to set, for example, PhotoKeys.TITLE. The value contains 1 to 255 characters. + * @param { string } value - Value to set. Only the value of PhotoKeys. TITLE can be changed. + * The title must meet the following requirements: + * - It does not contain a file name extension. + * - The file name, which is in the format of title+file name extension, does not exceed 255 characters. + * - The title does not contain any of the following characters:\ / : * ? " ' ` < > | { } [ ] * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -326,7 +350,7 @@ declare namespace sendablePhotoAccessHelper { */ set(member: string, value: string): void; /** - * Modify metadata of the asset + * Commits the modification on the file metadata to the database. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO * @returns { Promise<void> } Returns void @@ -340,10 +364,10 @@ declare namespace sendablePhotoAccessHelper { */ commitModify(): Promise<void>; /** - * Get thumbnail of the asset + * Obtains the file thumbnail of the given size. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { image.Size } [size] - Thumbnail's size + * @param { image.Size } [size] - Size of the thumbnail. * @returns { Promise<image.PixelMap> } Returns the thumbnail's pixelMap. * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -370,7 +394,7 @@ declare namespace sendablePhotoAccessHelper { */ getAnalysisData(analysisType: photoAccessHelper.AnalysisType): Promise<string>; /** - * Requests the read-only FD of the source asset. + * Opens the source file to obtain the file descriptor (FD). This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<number> } Returns opened source asset fd. @@ -383,7 +407,7 @@ declare namespace sendablePhotoAccessHelper { */ requestSource(): Promise<number>; /** - * Creates a photoAccessHelper photoasset from sendable photoAccessHelper photoasset. + * Converts a Sendable PhotoAsset object to a non-Sendable PhotoAsset object. * * @returns { photoAccessHelper.PhotoAsset } Returns the instance if the operation is successful. * @throws { BusinessError } 201 - Permission denied. @@ -395,7 +419,7 @@ declare namespace sendablePhotoAccessHelper { } /** - * The fetch result of assets or albums + * Provides APIs to manage the file retrieval result. * * @interface FetchResult * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -403,7 +427,7 @@ declare namespace sendablePhotoAccessHelper { */ interface FetchResult<T> extends lang.ISendable { /** - * Obtains the total number of objects in the fetch result. + * Obtains the total number of files in the result set. * * @returns { number } Total number of objects. * @throws { BusinessError } 14000011 - Internal system error @@ -412,8 +436,7 @@ declare namespace sendablePhotoAccessHelper { */ getCount(): number; /** - * Checks whether the result set points to the last row. - * You need to check whether the object is the last one before calling getNextObject. + * Checks whether the cursor is in the last row of the result set. * * @returns { boolean } Whether the object is the last one in the fetch result. * @throws { BusinessError } 14000011 - Internal system error @@ -422,7 +445,7 @@ declare namespace sendablePhotoAccessHelper { */ isAfterLast(): boolean; /** - * Obtains the first object in the fetch result. + * Obtains the first asset in the result set. This API uses a promise to return the result. * * @returns { Promise<T> } Returns the first object in the fetch result. * @throws { BusinessError } 14000011 - Internal system error @@ -431,9 +454,8 @@ declare namespace sendablePhotoAccessHelper { */ getFirstObject(): Promise<T>; /** - * Obtains the next object in the fetch result. - * Before calling this method, you must use isAfterLast() to check whether the current position is the last row - * in the fetch result. This method only works when the current position is not the last row. + * Obtains the next asset in the result set. This API uses a promise to return the result. + * Before using this API, you must use isAfterLast() to check whether the current position is the end of the result set. * * @returns { Promise<T> } Returns the next object * @throws { BusinessError } 14000011 - Internal system error @@ -442,7 +464,7 @@ declare namespace sendablePhotoAccessHelper { */ getNextObject(): Promise<T>; /** - * Obtains the last object in the fetch result + * Obtains the last asset in the result set. This API uses a promise to return the result. * * @returns { Promise<T> } Returns the last object * @throws { BusinessError } 14000011 - Internal system error @@ -451,9 +473,9 @@ declare namespace sendablePhotoAccessHelper { */ getLastObject(): Promise<T>; /** - * Obtains the object with the specified index in the fetch result. + * Obtains the asset with the given index in the result set. This API uses a promise to return the result. * - * @param { number } index - Index of the asset to obtain. + * @param { number } index - Index of the asset to obtain. The value starts from 0. * @returns { Promise<T> } Returns the object * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -463,7 +485,7 @@ declare namespace sendablePhotoAccessHelper { */ getObjectByPosition(index: number): Promise<T>; /** - * Obtains all objects in the fetch result. + * Obtains all the file assets in the result set. This API uses a promise to return the result. * * @returns { Promise<Array<T>> } Returns all the objects * @throws { BusinessError } 14000011 - Internal system error @@ -472,7 +494,8 @@ declare namespace sendablePhotoAccessHelper { */ getAllObjects(): Promise<Array<T>>; /** - * Releases the fetch result. + * Closes this FetchFileResult instance to invalidate it. + * After this instance is closed, the APIs in this instance cannot be invoked. * * @throws { BusinessError } 14000011 - Internal system error * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -482,7 +505,7 @@ declare namespace sendablePhotoAccessHelper { } /** - * Album type. + * Enumerates the album types. * * @enum { number } AlbumType * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core @@ -490,21 +513,21 @@ declare namespace sendablePhotoAccessHelper { */ const enum AlbumType { /** - * Album created by user. + * User album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ USER = 0, /** - * Album created by system, which metadata cannot be modified. + * System album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ SYSTEM = 1024, /** - * Album created by smart abilities. + * Smart analysis album. System API: This is a system API. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @systemapi @@ -522,14 +545,14 @@ declare namespace sendablePhotoAccessHelper { */ const enum AlbumSubtype { /** - * Generic user-created albums. + * User album. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 */ USER_GENERIC = 1, /** - * Favorite album, which assets are marked as favorite. + * Favorites. * * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core * @since 12 @@ -719,10 +742,10 @@ declare namespace sendablePhotoAccessHelper { */ readonly coverUri: string; /** - * Fetch assets in an album. + * Obtains media assets. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { FetchOptions } options - Fetch options. + * @param { FetchOptions } options - Options for fetching the media assets. * @returns { Promise<FetchResult<PhotoAsset>> } Returns the fetch result * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -777,7 +800,7 @@ declare namespace sendablePhotoAccessHelper { */ readonly videoCount?: number; /** - * Modify metadata for the album + * Commits the modification on the album attributes to the database. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO * @returns { Promise<void> } Returns void @@ -788,7 +811,7 @@ declare namespace sendablePhotoAccessHelper { */ commitModify(): Promise<void>; /** - * Creates a photoAccessHelper album from sendable photoAccessHelper album. + * Converts this Sendable album to a non-Sendable album. * * @returns { photoAccessHelper.Album } Returns the instance if the operation is successful. * @throws { BusinessError } 201 - Permission denied. @@ -798,7 +821,7 @@ declare namespace sendablePhotoAccessHelper { */ convertToPhotoAlbum(): photoAccessHelper.Album; /** - * Get the faceId of the portrait album or group photo album. + * Obtains the face identifier on the cover of a portrait album or group photo album. * * @permission ohos.permission.READ_IMAGEVIDEO * @returns { Promise<string> } Returns tag_id if portrait album, Returns group_tag if group photo album, @@ -1149,10 +1172,10 @@ declare namespace sendablePhotoAccessHelper { */ interface PhotoAccessHelper extends lang.ISendable { /** - * Fetch photo assets + * Obtains media assets. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { FetchOptions } options - Retrieval options. + * @param { FetchOptions } options - Options for fetching the media assets. * @returns { Promise<FetchResult<PhotoAsset>> } Returns the fetch result. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1163,7 +1186,7 @@ declare namespace sendablePhotoAccessHelper { */ getAssets(options: photoAccessHelper.FetchOptions): Promise<FetchResult<PhotoAsset>>; /** - * Fetch a group of burst assets + * Obtains burst assets. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO * @param { string } burstKey - Burst asset options. @@ -1177,10 +1200,10 @@ declare namespace sendablePhotoAccessHelper { */ getBurstAssets(burstKey: string, options: photoAccessHelper.FetchOptions): Promise<FetchResult<PhotoAsset>>; /** - * Create a photo asset + * Creates an asset with the specified file name. This API uses a promise to return the result. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { string } displayName - Asset name + * @param { string } displayName - File name of the asset to create. * @returns { Promise<PhotoAsset> } Returns the newly created asset * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 202 - Called by non-system application. @@ -1210,14 +1233,14 @@ declare namespace sendablePhotoAccessHelper { */ createAsset(displayName: string, options: photoAccessHelper.PhotoCreateOptions): Promise<PhotoAsset>; /** - * Create a photo asset: - * 1. (Suggested)Integrate security component without WRITE_IMAGEVIDEO permission; - * 2. Get WRITE_IMAGEVIDEO permission by ACL; + * Creates an image or video asset with the specified file type, file name extension, and options. + * This API uses a promise to return the result. If the caller does not have the ohos.permission.WRITE_IMAGEVIDEO permission, + * you can create a media asset by using a security component. For details, see Creating a Media Asset Using a Security Component. * * @permission ohos.permission.WRITE_IMAGEVIDEO - * @param { PhotoType } photoType - Photo asset type - * @param { string } extension - Asset extension - * @param { CreateOptions } [options] - Optional asset create option + * @param { PhotoType } photoType - Type of the file to create, which can be IMAGE or VIDEO. + * @param { string } extension - File name extension, for example, 'jpg'. The value contains 1 to 255 characters. + * @param { CreateOptions } [options] - Options for creating the media asset, for example, {title: 'testPhoto'}. * @returns { Promise<string> } Returns the uri of the newly created asset * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1229,10 +1252,10 @@ declare namespace sendablePhotoAccessHelper { */ createAsset(photoType: PhotoType, extension: string, options?: photoAccessHelper.CreateOptions): Promise<string>; /** - * Fetch albums. + * Obtains albums. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { FetchOptions } [options] - options to fetch albums + * @param { FetchOptions } [options] - Options for fetching the albums. * @returns { Promise<FetchResult<Album>> } - Returns the fetch result * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1243,12 +1266,13 @@ declare namespace sendablePhotoAccessHelper { */ getAlbums(options: photoAccessHelper.FetchOptions): Promise<FetchResult<Album>>; /** - * Fetch albums. + * Obtains albums based on the specified options and album type. This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO - * @param { AlbumType } type - Album type. - * @param { AlbumSubtype } subtype - Album subtype. - * @param { FetchOptions } [options] - options to fetch albums + * @param { AlbumType } type - Type of the albums to obtain. + * @param { AlbumSubtype } subtype - Subtype of the album. + * @param { FetchOptions } [options] - Options for fetching the albums. + * If this parameter is not specified, the albums are obtained based on the album type by default. * @returns { Promise<FetchResult<Album>> } - Returns the fetch result * @throws { BusinessError } 201 - Permission denied * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1263,11 +1287,13 @@ declare namespace sendablePhotoAccessHelper { options?: photoAccessHelper.FetchOptions ): Promise<FetchResult<Album>>; /** - * Fetch albums containing hidden assets. + * Obtains hidden albums based on the specified display mode and retrieval options. + * This API uses a promise to return the result. * * @permission ohos.permission.READ_IMAGEVIDEO and ohos.permission.MANAGE_PRIVATE_PHOTOS - * @param { HiddenPhotosDisplayMode } mode - Display mode of albums containing hidden assets. - * @param { FetchOptions } [options] - Options to fetch albums. + * @param { HiddenPhotosDisplayMode } mode - Display mode of hidden albums. + * @param { FetchOptions } [options] - Options for retrieving the albums. + * If this parameter is not specified, the albums are retrieved based on the display mode. * @returns { Promise<FetchResult<Album>> } Returns fetchResult of albums containing hidden assets. * @throws { BusinessError } 201 - Permission verification failed, usually the result returned by VerifyAccessToken. * @throws { BusinessError } 202 - Called by non-system application @@ -1283,7 +1309,8 @@ declare namespace sendablePhotoAccessHelper { options?: photoAccessHelper.FetchOptions ): Promise<FetchResult<Album>>; /** - * Release PhotoAccessHelper instance + * Releases this PhotoAccessHelper instance. This API uses a promise to return the result. + * Call this API when the APIs of the PhotoAccessHelper instance are no longer used. * * @returns { Promise<void> } Returns void * @throws { BusinessError } 14000011 - Internal system error diff --git a/api/@ohos.file.statvfs.d.ts b/api/@ohos.file.statvfs.d.ts index b5f92e338e2b4f9babb3ef3203a2bdd913175fa6..870676443a1bb0be163bd94503ef369f5695de6f 100644 --- a/api/@ohos.file.statvfs.d.ts +++ b/api/@ohos.file.statvfs.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (C) 2022-2023 Huawei Device Co., Ltd. + * Copyright (C) 2022-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -27,6 +27,14 @@ import type { AsyncCallback } from './@ohos.base'; * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ +/** + * Provides filesystem statistics APIs + * + * @namespace statfs + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ declare namespace statfs { /** * Get the number of free bytes on the specified path. @@ -49,6 +57,28 @@ declare namespace statfs { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + * Get the number of free bytes on the specified path. + * + * @param { string } path - path + * @returns { Promise<number> } return Promise + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ function getFreeSize(path: string): Promise<number>; /** @@ -72,6 +102,28 @@ declare namespace statfs { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + * Get the number of free bytes on the specified path. + * + * @param { string } path - path + * @param { AsyncCallback<number> } [callback] - callback + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ function getFreeSize(path: string, callback: AsyncCallback<number>): void; /** @@ -95,6 +147,28 @@ declare namespace statfs { * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ + /** + * Get the number of free bytes on the specified path with sync interface. + * + * @param { string } path - path + * @returns { number } return the number of free bytes on the specified path + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ function getFreeSizeSync(path: string): number; /** @@ -118,6 +192,28 @@ declare namespace statfs { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + * Get the number of total bytes on the specified path. + * + * @param { string } path - path + * @returns { Promise<number> } return Promise + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ function getTotalSize(path: string): Promise<number>; /** @@ -141,6 +237,28 @@ declare namespace statfs { * @syscap SystemCapability.FileManagement.File.FileIO * @since 9 */ + /** + * Get the number of total bytes on the specified path. + * + * @param { string } path - path + * @param { AsyncCallback<number> } [callback] - callback + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ function getTotalSize(path: string, callback: AsyncCallback<number>): void; /** @@ -164,6 +282,28 @@ declare namespace statfs { * @syscap SystemCapability.FileManagement.File.FileIO * @since 10 */ + /** + * Get the number of total bytes on the specified path with sync interface. + * + * @param { string } path - path + * @returns { number } return the number of total bytes + * @throws { BusinessError } 13900002 - No such file or directory + * @throws { BusinessError } 13900004 - Interrupted system call + * @throws { BusinessError } 13900005 - I/O error + * @throws { BusinessError } 13900008 - Bad file descriptor + * @throws { BusinessError } 13900011 - Out of memory + * @throws { BusinessError } 13900012 - Permission denied + * @throws { BusinessError } 13900013 - Bad address + * @throws { BusinessError } 13900018 - Not a directory + * @throws { BusinessError } 13900030 - File name too long + * @throws { BusinessError } 13900031 - Function not implemented + * @throws { BusinessError } 13900033 - Too many symbolic links encountered + * @throws { BusinessError } 13900038 - Value too large for defined data type + * @throws { BusinessError } 13900042 - Unknown error + * @syscap SystemCapability.FileManagement.File.FileIO + * @crossplatform + * @since 20 + */ function getTotalSizeSync(path: string): number; } diff --git a/api/@ohos.fileshare.d.ts b/api/@ohos.fileshare.d.ts index 728df25c8e5a587c4ba11f87aabad8ae05d39657..ec9b89fe1afc1655b4478620db574d7e8154c3bc 100644 --- a/api/@ohos.fileshare.d.ts +++ b/api/@ohos.fileshare.d.ts @@ -18,15 +18,21 @@ * @kit CoreFileKit */ +/*** if arkts 1.1 */ import type { AsyncCallback, Callback } from './@ohos.base'; import type wantConstant from './@ohos.ability.wantConstant'; - +/*** endif */ +/*** if arkts 1.2 */ +import { AsyncCallback, Callback } from './@ohos.base'; +import type wantConstant from './@ohos.app.ability.wantConstant'; +/*** endif */ /** * Provides fileshare APIS * * @namespace fileShare * @syscap SystemCapability.FileManagement.AppFileService - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace fileShare { /** @@ -34,14 +40,16 @@ declare namespace fileShare { * * @enum { number } OperationMode * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum OperationMode { /** * Indicates read permissions. * * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ READ_MODE = 0b1, @@ -49,9 +57,34 @@ declare namespace fileShare { * Indicates write permissions. * * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WRITE_MODE = 0b10, + + /** + * Indicates creating permissions. + * + * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization + * @since 20 + */ + CREATE_MODE = 0b100, + + /** + * Indicates deleting permissions. + * + * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization + * @since 20 + */ + DELETE_MODE = 0b1000, + + /** + * Indicates renaming permissions. + * + * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization + * @since 20 + */ + RENAME_MODE = 0b10000, } /** @@ -136,7 +169,8 @@ declare namespace fileShare { * * @interface PolicyInfo * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface PolicyInfo { /** @@ -144,7 +178,8 @@ declare namespace fileShare { * * @type { string } * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ uri: string; @@ -153,7 +188,8 @@ declare namespace fileShare { * * @type { number } * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ operationMode: number; } @@ -222,10 +258,11 @@ declare namespace fileShare { * @throws { BusinessError } 202 - The caller is not a system application * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. - * @throws { BusinessError } 143000001 - IPC error + * @throws { BusinessError } 14300001 - IPC error * @syscap SystemCapability.FileManagement.AppFileService * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function grantUriPermission( uri: string, @@ -246,13 +283,33 @@ declare namespace fileShare { * @throws { BusinessError } 202 - The caller is not a system application * @throws { BusinessError } 401 - The input parameter is invalid.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. - * @throws { BusinessError } 143000001 - IPC error + * @throws { BusinessError } 14300001 - IPC error * @syscap SystemCapability.FileManagement.AppFileService * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function grantUriPermission(uri: string, bundleName: string, flag: wantConstant.Flags): Promise<void>; + /** + * Grant URI permissions for an application. + * + * @permission ohos.permission.FILE_ACCESS_MANAGER + * @param { Array<PolicyInfo> } policies - Policy information for the user to grant permissions on URIs. + * @param { string } targetBundleName - Name of the target bundle to authorize. + * @param { number } appCloneIndex - Clone index of the target application. + * @returns { Promise<void> } Returns void. + * @throws { BusinessError } 201 - Permission verification failed. + * @throws { BusinessError } 202 - The caller is not a system application. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 13900001 - Operation not permitted. + * @throws { BusinessError } 13900011 - Out of memory. + * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization + * @systemapi + * @since 20 + */ + function grantUriPermission(policies: Array<PolicyInfo>, targetBundleName: string, appCloneIndex: number): Promise<void>; + /** * Set persistence permissions for the URI * @@ -264,7 +321,7 @@ declare namespace fileShare { * <br>2.Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 13900001 - Operation not permitted. - * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900042 - Out of memory * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization * @since 11 */ @@ -281,7 +338,7 @@ declare namespace fileShare { * <br>2.Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 13900001 - Operation not permitted. - * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900042 - Out of memory * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization * @since 11 */ @@ -298,7 +355,7 @@ declare namespace fileShare { * <br>2.Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 13900001 - Operation not permitted. - * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900042 - Out of memory * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization * @since 11 */ @@ -315,7 +372,7 @@ declare namespace fileShare { * <br>2.Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 13900001 - Operation not permitted. - * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900042 - Out of memory * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization * @since 11 */ @@ -331,10 +388,22 @@ declare namespace fileShare { * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; * <br>2.Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 13900042 - Unknown error + * @throws { BusinessError } 13900042 - Out of memory * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization * @since 12 */ + /** + * Check persistent permissions for the URI. + * + * @param { Array<PolicyInfo> } policies - Policy information to grant permission on URIs. + * @returns { Promise<Array<boolean>> } Returns the persistent state of uri permissions. + * @throws { BusinessError } 401 - Parameter error.Possible causes:1.Mandatory parameters are left unspecified; + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 13900042 - Out of memory + * @syscap SystemCapability.FileManagement.AppFileService.FolderAuthorization + * @since 17 + */ function checkPersistentPermission(policies: Array<PolicyInfo>): Promise<Array<boolean>>; /** diff --git a/api/@ohos.font.d.ets b/api/@ohos.font.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..13654ce8ed0c457d28cfc7973a7b905236b75c24 --- /dev/null +++ b/api/@ohos.font.d.ets @@ -0,0 +1,798 @@ +/* + * Copyright (c) 2022-2024 Shenzhen Kaihong Digital Industry Development Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ +import { Resource } from './global/resource' +/** + * @namespace font + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ +/** + * @namespace font + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +/** + * @namespace font + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + declare namespace font { + /** + * @typedef FontOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * @typedef FontOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * @typedef FontOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface FontOptions { + + /** + * The font name to register. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * The font name to register. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * The font name to register. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * The font name to register. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + familyName: string | Resource; + + /** + * The path of the font file. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * The path of the font file. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * The path of the font file. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * The path of the font file. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + familySrc: string | Resource; + } + + /** + * @typedef FontInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * @typedef FontInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * @typedef FontInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface FontInfo { + + /** + * The path of the font file. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * The path of the font file. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * The path of the font file. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + path: string; + + /** + * The name of postscript. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * The name of postscript. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * The name of postscript. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + postScriptName: string; + + /** + * The font name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * The font name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * The font name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fullName: string; + + /** + * A set of fonts with a common design. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * A set of fonts with a common design. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * A set of fonts with a common design. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + family: string; + + /** + * A subset of the font family. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * A subset of the font family. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * A subset of the font family. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + subfamily: string; + + /** + * The weight of the font. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * The weight of the font. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * The weight of the font. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + weight: number; + + /** + * The width of the font style. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * The width of the font style. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * The width of the font style. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + width: number; + + /** + * Whether it is italic. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Whether it is italic. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Whether it is italic. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + italic: boolean; + + /** + * Whether it is compact. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Whether it is compact. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Whether it is compact. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + monoSpace: boolean; + + /** + * Whether symbol fonts are supported. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Whether symbol fonts are supported. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Whether symbol fonts are supported. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + symbolic: boolean; + } + + /** + * @typedef UIFontConfig + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * @typedef UIFontConfig + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface UIFontConfig { + /** + * The paths of system font files. + * @type { Array<string> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * The paths of system font files. + * @type { Array<string> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + fontDir: Array<string>; + + /** + * The generic font info. + * @type { Array<UIFontGenericInfo> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * The generic font info. + * @type { Array<UIFontGenericInfo> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + generic: Array<UIFontGenericInfo>; + + /** + * The fallback font info. + * @type { Array<UIFontFallbackGroupInfo> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * The fallback font info. + * @type { Array<UIFontFallbackGroupInfo> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + fallbackGroups: Array<UIFontFallbackGroupInfo>; + } + + /** + * @typedef UIFontGenericInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * @typedef UIFontGenericInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface UIFontGenericInfo { + /** + * Name of the font set. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Name of the font set. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + family: string; + + /** + * Alias info of the font set. + * @type { Array<UIFontAliasInfo> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Alias info of the font set. + * @type { Array<UIFontAliasInfo> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + alias: Array<UIFontAliasInfo>; + + /** + * Adjust info of the font set. + * @type { Array<UIFontAdjustInfo> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Adjust info of the font set. + * @type { Array<UIFontAdjustInfo> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + adjust: Array<UIFontAdjustInfo>; + } + + /** + * @typedef UIFontAliasInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * @typedef UIFontAliasInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface UIFontAliasInfo { + /** + * Font set name. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Font set name. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + name: string; + + /** + * Weight the font set contains only fonts with, if weight = 0, + * this font set can contain fonts with any weight. + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Weight the font set contains only fonts with, if weight = 0, + * this font set can contain fonts with any weight. + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + weight: number; + } + + /** + * @typedef UIFontAdjustInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * @typedef UIFontAdjustInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface UIFontAdjustInfo { + /** + * Original weight of the font + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Original weight of the font + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + weight: number; + /** + * Font weight displayed in the app + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Font weight displayed in the app + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + to: number; + } + + /** + * @typedef UIFontFallbackGroupInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * @typedef UIFontFallbackGroupInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface UIFontFallbackGroupInfo { + /** + * Indicates which font set uses following list for fallback font + * if the font set name is "", it means that the following list can be fallback font for all font sets. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Indicates which font set uses following list for fallback font + * if the font set name is "", it means that the following list can be fallback font for all font sets. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + fontSetName: string; + + /** + * Fallback font list related. + * @type { Array<UIFontFallbackInfo> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Fallback font list related. + * @type { Array<UIFontFallbackInfo> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + fallback: Array<UIFontFallbackInfo>; + } + + /** + * @typedef UIFontFallbackInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * @typedef UIFontFallbackInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface UIFontFallbackInfo { + /** + * Language that font set support. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Language that font set support. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + language: string; + + /** + * Font name related. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Font name related. + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + family: string; + } + + /** + * Register a customized font in the FontManager. + * + * @param { FontOptions } options - FontOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Register a customized font in the FontManager. + * + * @param { FontOptions } options - FontOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Register a customized font in the FontManager. + * + * @param { FontOptions } options - FontOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function registerFont(options: FontOptions): void; + + /** + * Gets a list of fonts supported by system. + * + * @returns { Array<string> } A list of font names + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Gets a list of fonts supported by system. + * + * @returns { Array<string> } A list of font names + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Gets a list of fonts supported by system. + * + * @returns { Array<string> } A list of font names + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function getSystemFontList(): Array<string>; + + /** + * Get font details according to the font name. + * + * @param { string } fontName - font name + * @returns { FontInfo } Returns the font info + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Get font details according to the font name. + * + * @param { string } fontName - font name + * @returns { FontInfo } Returns the font info + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + /** + * Get font details according to the font name. + * + * @param { string } fontName - font name + * @returns { FontInfo } Returns the font info + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function getFontByName(fontName: string): FontInfo; + + /** + * Get font details according to the font name. + * + * @returns { UIFontConfig } Returns the ui font config + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Get font details according to the font name. + * + * @returns { UIFontConfig } Returns the ui font config + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export function getUIFontConfig(): UIFontConfig; +} + +export default font; \ No newline at end of file diff --git a/api/@ohos.fontManager.d.ts b/api/@ohos.fontManager.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..1ce457179ab2d403c5f19952f1d859cd12fb29fc --- /dev/null +++ b/api/@ohos.fontManager.d.ts @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit LocalizationKit + */ + +/** + * Provides the capability of install and uninstall font. + * + * @namespace fontManager + * @syscap SystemCapability.Global.FontManager + * @systemapi + * @since 19 + */ +declare namespace fontManager { + /** + * Installs the specified path font. + * + * @permission ohos.permission.UPDATE_FONT + * @param { string } path - path indicates the font path. + * @returns { Promise<number> } - Number indicates the font installation result. + * 0 - Install successful. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Non-system application. + * @throws { BusinessError } 31100101 - Font does not exist. + * @throws { BusinessError } 31100102 - Font is not supported. + * @throws { BusinessError } 31100103 - Font file copy failed. + * @throws { BusinessError } 31100104 - Font file installed. + * @throws { BusinessError } 31100105 - Exceeded maximum number of installed files. + * @throws { BusinessError } 31100106 - Other error. + * @syscap SystemCapability.Global.FontManager + * @systemapi + * @since 19 + */ + function installFont(path: string): Promise<number>; + + /** + * Uninstalls the specified path font. + * + * @permission ohos.permission.UPDATE_FONT + * @param { string } fullName - fullName indicates the font name. + * @returns { Promise<number> } - number indicates the font uninstallation result. + * 0 - Uninstall successful. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Non-system application. + * @throws { BusinessError } 31100107 - Font file does not exist. + * @throws { BusinessError } 31100108 - Font file delete error. + * @throws { BusinessError } 31100109 - Other error. + * @syscap SystemCapability.Global.FontManager + * @systemapi + * @since 19 + */ + function uninstallFont(fullName: string): Promise<number>; +} +export default fontManager; \ No newline at end of file diff --git a/api/@ohos.geoLocationManager.d.ts b/api/@ohos.geoLocationManager.d.ts index ea7b62120f16cea356bd6a46d5d3cd01839b4038..47760663501d7fa06ffcfdba87afcb3360e775f8 100644 --- a/api/@ohos.geoLocationManager.d.ts +++ b/api/@ohos.geoLocationManager.d.ts @@ -19,7 +19,12 @@ */ import { AsyncCallback, Callback } from './@ohos.base'; +/*** if arkts 1.1 */ import { WantAgent } from './@ohos.wantAgent'; +/*** endif */ +/*** if arkts 1.2 */ +import { WantAgent } from '@ohos.app.ability.wantAgent'; +/*** endif */ import { NotificationRequest } from './notification/notificationRequest'; /** @@ -36,7 +41,8 @@ import { NotificationRequest } from './notification/notificationRequest'; * @namespace geoLocationManager * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace geoLocationManager { /** @@ -478,7 +484,7 @@ declare namespace geoLocationManager { * @param { Callback<BluetoothScanResult> } callback - Indicates the callback for reporting Bluetooth scan info. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('locatingRequiredDataChange')} due to limited device capabilities. + * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('bluetoothScanResultChange')} due to limited device capabilities. * @throws { BusinessError } 3301000 - The location service is unavailable. * @throws { BusinessError } 3301100 - The location switch is off. * @syscap SystemCapability.Location.Location.Core @@ -494,7 +500,7 @@ declare namespace geoLocationManager { * @param { Callback<BluetoothScanResult> } [callback] - Indicates the callback for reporting Bluetooth scan info. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('locatingRequiredDataChange')} due to limited device capabilities. + * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('bluetoothScanResultChange')} due to limited device capabilities. * @throws { BusinessError } 3301000 - The location service is unavailable. * @syscap SystemCapability.Location.Location.Core * @since 16 @@ -546,7 +552,8 @@ declare namespace geoLocationManager { * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ function getCurrentLocation(request: CurrentLocationRequest | SingleLocationRequest, callback: AsyncCallback<Location>): void; @@ -578,7 +585,8 @@ declare namespace geoLocationManager { * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ function getCurrentLocation(callback: AsyncCallback<Location>): void; @@ -627,7 +635,8 @@ declare namespace geoLocationManager { * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ function getCurrentLocation(request?: CurrentLocationRequest | SingleLocationRequest): Promise<Location>; @@ -1292,6 +1301,44 @@ declare namespace geoLocationManager { */ function getCurrentWifiBssidForLocating(): string; + /** + * Obtains the distance between two locations. + * + * @param { Location } location1 - Indicates first location. + * @param { Location } location2 - Indicates second location. + * @returns { number } Returns the distance between two locations. + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 20 + */ + function getDistanceBetweenLocations(location1: Location, location2: Location): number; + + /** + * Check whether the POI service is supported. + * + * @returns { boolean } Returns {@code true} if POI service is available, returns {@code false} otherwise. + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 20 + */ + function isPoiServiceSupported(): boolean; + + /** + * Obtaining POI Information. + * + * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION + * @returns { Promise<PoiInfo> } The promise returned by the function, for reporting POI info. + * + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getPoiInfo} due to limited device capabilities. + * @throws { BusinessError } 3301000 - The location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 20 + */ + function getPoiInfo(): Promise<PoiInfo>; + /** * Configuration parameters for simulating reverse geocoding. * @@ -2022,7 +2069,8 @@ declare namespace geoLocationManager { * @typedef CurrentLocationRequest * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ export interface CurrentLocationRequest { /** @@ -2038,7 +2086,8 @@ declare namespace geoLocationManager { * @type { ?LocationRequestPriority } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ priority?: LocationRequestPriority; @@ -2055,7 +2104,8 @@ declare namespace geoLocationManager { * @type { ?LocationRequestScenario } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ scenario?: LocationRequestScenario; @@ -2072,7 +2122,8 @@ declare namespace geoLocationManager { * @type { ?number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ maxAccuracy?: number; @@ -2089,7 +2140,8 @@ declare namespace geoLocationManager { * @type { ?number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ timeoutMs?: number; } @@ -2161,6 +2213,16 @@ declare namespace geoLocationManager { * @since 18 */ sportsType?: SportsType; + + /** + * Indicates whether to obtain POI information near the current location. + * + * @type { ?boolean } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + needPoi?: boolean; } /** @@ -2169,7 +2231,8 @@ declare namespace geoLocationManager { * @typedef SingleLocationRequest * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ export interface SingleLocationRequest { /** @@ -2178,7 +2241,8 @@ declare namespace geoLocationManager { * @type { LocatingPriority } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ locatingPriority: LocatingPriority; @@ -2188,9 +2252,20 @@ declare namespace geoLocationManager { * @type { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ locatingTimeoutMs: number; + + /** + * Indicates whether to obtain POI information near the current location. + * + * @type { ?boolean } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + needPoi?: boolean; } /** @@ -2206,7 +2281,8 @@ declare namespace geoLocationManager { * @typedef Location * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ export interface Location { /** @@ -2226,7 +2302,8 @@ declare namespace geoLocationManager { * @type { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ latitude: number; @@ -2247,7 +2324,8 @@ declare namespace geoLocationManager { * @type { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ longitude: number; @@ -2264,7 +2342,8 @@ declare namespace geoLocationManager { * @type { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ altitude: number; @@ -2281,7 +2360,8 @@ declare namespace geoLocationManager { * @type { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ accuracy: number; @@ -2298,7 +2378,8 @@ declare namespace geoLocationManager { * @type { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ speed: number; @@ -2315,7 +2396,8 @@ declare namespace geoLocationManager { * @type { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ timeStamp: number; @@ -2332,7 +2414,8 @@ declare namespace geoLocationManager { * @type { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ direction: number; @@ -2349,7 +2432,8 @@ declare namespace geoLocationManager { * @type { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ timeSinceBoot: number; @@ -2366,7 +2450,8 @@ declare namespace geoLocationManager { * @type { ?Array<string> } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ additions?: Array<string>; @@ -2376,7 +2461,8 @@ declare namespace geoLocationManager { * @type { ?Map<string, string> } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ additionsMap?: Map<string, string>; @@ -2393,7 +2479,8 @@ declare namespace geoLocationManager { * @type { ?number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ additionSize?: number; @@ -2403,7 +2490,8 @@ declare namespace geoLocationManager { * @type { ?Boolean } * @syscap SystemCapability.Location.Location.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ isFromMock?: Boolean; @@ -2413,7 +2501,8 @@ declare namespace geoLocationManager { * @type { ?number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ altitudeAccuracy?: number; @@ -2423,7 +2512,8 @@ declare namespace geoLocationManager { * @type { ?number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ speedAccuracy?: number; @@ -2433,7 +2523,8 @@ declare namespace geoLocationManager { * @type { ?number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ directionAccuracy?: number; @@ -2443,7 +2534,8 @@ declare namespace geoLocationManager { * @type { ?number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ uncertaintyOfTimeSinceBoot?: number; @@ -2453,9 +2545,20 @@ declare namespace geoLocationManager { * @type { ?LocationSourceType } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ sourceType?: LocationSourceType; + + /** + * Indicates the poi information. + * + * @type { ?PoiInfo } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + poi?: PoiInfo; } /** @@ -2701,13 +2804,155 @@ declare namespace geoLocationManager { connectable: boolean; } + /** + * Describes the information about a single POI. + * + * @typedef Poi + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + export interface Poi { + /** + * Indicates the ID of a POI. + * + * @type { string } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + id: string; + + /** + * Indicates the confidence of POI information. + * + * @type { number } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + confidence: number; + + /** + * Indicates the name of the POI. + * + * @type { string } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + name: string; + + /** + * Indicates the latitude of POI. + * + * @type { number } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + latitude: number; + + /** + * Indicates the longitude of POI. + * + * @type { number } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + longitude: number; + + /** + * Indicates administrative region name. + * + * @type { string } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + administrativeArea: string; + + /** + * Indicates sub-administrative region name. + * + * @type { string } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + subAdministrativeArea: string; + + /** + * Indicates locality information. + * + * @type { string } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + locality: string; + + /** + * Indicates sub-locality information. + * + * @type { string } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + subLocality: string; + + /** + * Indicates the detailed address of the POI. + * + * @type { string } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + address: string; + } + + + /** + * Describes the POI information struct. + * + * @typedef PoiInfo + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + export interface PoiInfo { + /** + * Indicates POI information list. + * + * @type { Array<Poi> } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + poiArray: Array<Poi>; + + /** + * Indicates the timestamp when the POI information is obtained. + * + * @type { number } + * @syscap SystemCapability.Location.Location.Core + * @atomicservice + * @since 19 + */ + timestamp: number; + } + /** * Enum for the source of the location. * * @enum { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ export enum LocationSourceType { /** @@ -2715,7 +2960,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ GNSS = 1, @@ -2724,7 +2970,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ NETWORK = 2, @@ -2733,7 +2980,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ INDOOR = 3, @@ -2742,7 +2990,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ RTK = 4 } @@ -3071,7 +3320,8 @@ declare namespace geoLocationManager { * @enum { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ export enum LocatingPriority { /** @@ -3079,7 +3329,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ PRIORITY_ACCURACY = 0x501, @@ -3088,7 +3339,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ PRIORITY_LOCATING_SPEED = 0x502 } @@ -3106,7 +3358,8 @@ declare namespace geoLocationManager { * @enum { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ export enum LocationRequestPriority { /** @@ -3120,7 +3373,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ UNSET = 0x200, @@ -3135,7 +3389,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ACCURACY, @@ -3150,7 +3405,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ LOW_POWER, @@ -3165,7 +3421,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ FIRST_FIX } @@ -3183,7 +3440,8 @@ declare namespace geoLocationManager { * @enum { number } * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ export enum LocationRequestScenario { /** @@ -3197,7 +3455,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ UNSET = 0x300, @@ -3212,7 +3471,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ NAVIGATION, @@ -3227,7 +3487,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ TRAJECTORY_TRACKING, @@ -3242,7 +3503,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ CAR_HAILING, @@ -3257,7 +3519,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ DAILY_LIFE_SERVICE, @@ -3272,7 +3535,8 @@ declare namespace geoLocationManager { * * @syscap SystemCapability.Location.Location.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ NO_POWER } diff --git a/api/@ohos.graphics.colorSpaceManager.d.ts b/api/@ohos.graphics.colorSpaceManager.d.ts index d1830c876a23f52b5924a8659fe28c317e4ed2d1..db899f6a8b498d2343a219587c42d08d9dbb0c60 100644 --- a/api/@ohos.graphics.colorSpaceManager.d.ts +++ b/api/@ohos.graphics.colorSpaceManager.d.ts @@ -16,6 +16,7 @@ /** * @file * @kit ArkGraphics2D + * @arkts 1.1&1.2 */ /** @@ -40,7 +41,7 @@ * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ declare namespace colorSpaceManager { /** @@ -62,7 +63,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ enum ColorSpace { /** @@ -81,7 +82,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ UNKNOWN = 0, @@ -101,7 +102,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ ADOBE_RGB_1998 = 1, @@ -121,7 +122,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ DCI_P3 = 2, @@ -141,7 +142,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ DISPLAY_P3 = 3, @@ -161,7 +162,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ SRGB = 4, @@ -178,7 +179,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ BT709 = 6, @@ -195,7 +196,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ BT601_EBU = 7, @@ -212,7 +213,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ BT601_SMPTE_C = 8, @@ -229,7 +230,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ BT2020_HLG = 9, @@ -246,7 +247,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ BT2020_PQ = 10, @@ -261,7 +262,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ P3_HLG = 11, @@ -276,7 +277,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ P3_PQ = 12, @@ -291,7 +292,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ ADOBE_RGB_1998_LIMIT = 13, @@ -306,7 +307,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ DISPLAY_P3_LIMIT = 14, @@ -321,7 +322,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ SRGB_LIMIT = 15, @@ -336,7 +337,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ BT709_LIMIT = 16, @@ -351,7 +352,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ BT601_EBU_LIMIT = 17, @@ -366,7 +367,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ BT601_SMPTE_C_LIMIT = 18, @@ -381,7 +382,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ BT2020_HLG_LIMIT = 19, @@ -396,7 +397,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ BT2020_PQ_LIMIT = 20, @@ -411,7 +412,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ P3_HLG_LIMIT = 21, @@ -426,7 +427,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ P3_PQ_LIMIT = 22, @@ -441,7 +442,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ LINEAR_P3 = 23, @@ -456,7 +457,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ LINEAR_SRGB = 24, @@ -471,7 +472,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ LINEAR_BT709 = LINEAR_SRGB, @@ -486,7 +487,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ LINEAR_BT2020 = 25, @@ -501,7 +502,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ DISPLAY_SRGB = SRGB, @@ -516,7 +517,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ DISPLAY_P3_SRGB = DISPLAY_P3, @@ -531,7 +532,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ DISPLAY_P3_HLG = P3_HLG, @@ -546,10 +547,17 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ DISPLAY_P3_PQ = P3_PQ, + /** + * PRIMARIES_BT2020 | TRANSFUNC_LOG + * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core + * @since 18 + */ + H_LOG = 26, + /** * Indicates a customized color space. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core @@ -566,7 +574,7 @@ declare namespace colorSpaceManager { * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ CUSTOM = 5, } @@ -584,7 +592,7 @@ declare namespace colorSpaceManager { * @typedef ColorSpacePrimaries * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ interface ColorSpacePrimaries { /** @@ -598,7 +606,7 @@ declare namespace colorSpaceManager { * @type { number } * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ redX: number; @@ -613,7 +621,7 @@ declare namespace colorSpaceManager { * @type { number } * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ redY: number; @@ -628,7 +636,7 @@ declare namespace colorSpaceManager { * @type { number } * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ greenX: number; @@ -643,7 +651,7 @@ declare namespace colorSpaceManager { * @type { number } * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ greenY: number; @@ -658,7 +666,7 @@ declare namespace colorSpaceManager { * @type { number } * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ blueX: number; @@ -673,7 +681,7 @@ declare namespace colorSpaceManager { * @type { number } * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ blueY: number; @@ -688,7 +696,7 @@ declare namespace colorSpaceManager { * @type { number } * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ whitePointX: number; @@ -703,7 +711,7 @@ declare namespace colorSpaceManager { * @type { number } * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ whitePointY: number; } @@ -719,57 +727,63 @@ declare namespace colorSpaceManager { * @interface ColorSpaceManager * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ interface ColorSpaceManager { /** * Get the name of color space type. * @returns { ColorSpace } Returns the name of color space type. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @since 9 */ /** * Get the name of color space type. * @returns { ColorSpace } Returns the name of color space type. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ getColorSpaceName(): ColorSpace; /** * Get white point(x, y) of color space. * @returns { Array<number> } Returns the white point value of color space. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @since 9 */ /** * Get white point(x, y) of color space. * @returns { Array<number> } Returns the white point value of color space. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ getWhitePoint(): Array<number>; /** * Get gamma value of color space. * @returns { number } Returns the gamma value of color space. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @since 9 */ /** * Get gamma value of color space. * @returns { number } Returns the gamma value of color space. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ getGamma(): number; } @@ -780,7 +794,8 @@ declare namespace colorSpaceManager { * @returns { ColorSpaceManager } Returns a color space manager object created by provided type. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Incorrect parameter type. * 2.Parameter verification failed. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @since 9 */ @@ -790,10 +805,11 @@ declare namespace colorSpaceManager { * @returns { ColorSpaceManager } Returns a color space manager object created by provided type. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Incorrect parameter type. * 2.Parameter verification failed. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ function create(colorSpaceName: ColorSpace): ColorSpaceManager; @@ -804,7 +820,8 @@ declare namespace colorSpaceManager { * @returns { ColorSpaceManager } Returns a color space manager object created by customized parameters. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Incorrect parameter type. * 2.Parameter verification failed. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @since 9 */ @@ -815,10 +832,11 @@ declare namespace colorSpaceManager { * @returns { ColorSpaceManager } Returns a color space manager object created by customized parameters. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Incorrect parameter type. * 2.Parameter verification failed. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ function create(primaries: ColorSpacePrimaries, gamma: number): ColorSpaceManager; } diff --git a/api/@ohos.graphics.common2D.d.ts b/api/@ohos.graphics.common2D.d.ts index 0ed515ac7d9e1f05c6edb45a7cde2a61ccff3f9d..ea035d27bd19322de502af069eb0554ac12a710a 100644 --- a/api/@ohos.graphics.common2D.d.ts +++ b/api/@ohos.graphics.common2D.d.ts @@ -26,35 +26,35 @@ */ declare namespace common2D { /** - * Provide a description in the form of color ARGB. + * Describes a color in ARGB format. * @typedef Color * @syscap SystemCapability.Graphics.Drawing * @since 11 */ interface Color { /** - * Alpha component of color, from 0 to 255. + * Alpha component of the color. The value is an integer ranging from 0 to 255. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ alpha: number; /** - * Red component of color, from 0 to 255. + * Red component of the color. The value is an integer ranging from 0 to 255. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ red: number; /** - * Green component of color, from 0 to 255. + * Green component of the color. The value is an integer ranging from 0 to 255. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ green: number; /** - * Blue component of color, from 0 to 255. + * Blue component of the color. The value is an integer ranging from 0 to 255. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 @@ -63,35 +63,35 @@ declare namespace common2D { } /** - * Provides the definition of the rectangle. + * Describes a rectangle, which can be defined by two coordinate points: upper left corner point and lower right corner point. * @typedef Rect * @syscap SystemCapability.Graphics.Drawing * @since 11 */ interface Rect { /** - * Left Position of Rectangle. + * X coordinate of the upper left corner of the rectangle. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ left: number; /** - * Top side position of the rectangle + * Y coordinate of the upper left corner of the rectangle. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ top: number; /** - * Right Position of Rectangle. + * X coordinate of the lower right corner of the rectangle. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ right: number; /** - * Position of the bottom side of the rectangle. + * Y coordinate of the lower right corner of the rectangle. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 @@ -100,14 +100,14 @@ declare namespace common2D { } /** - * Coordinates in the font layout. + * Describes a coordinate point. * @typedef Point * @syscap SystemCapability.Graphics.Drawing * @since 12 */ interface Point { /** - * X-axis coordinate. + * Horizontal coordinate. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -115,7 +115,7 @@ declare namespace common2D { x: number; /** - * Y-axis coordinate. + * Vertical coordinate. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -124,7 +124,7 @@ declare namespace common2D { } /** - * Provides the definition of the point in 3D. + * Describes a 3D coordinate point. * * @typedef Point3d * @extends Point @@ -133,7 +133,7 @@ declare namespace common2D { */ interface Point3d extends Point { /** - * Z-axis coordinate. + * Z-axis coordinate. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -141,6 +141,47 @@ declare namespace common2D { z: number; } + /** + * Provide a color with an ARGB structure described by floating point numbers. + * @typedef Color4f + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + interface Color4f { + /** + * Alpha component of color, represented as a floating point number between 0 and 1. + * @type { number } + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + alpha: number; + /** + * Red component of color, represented as a floating point number between 0 and 1. + * @type { number } + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + red: number; + /** + * Green component of color, represented as a floating point number between 0 and 1. + * @type { number } + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + green: number; + /** + * Blue component of color, represented as a floating point number between 0 and 1. + * @type { number } + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + blue: number; + } } export default common2D; \ No newline at end of file diff --git a/api/@ohos.graphics.drawing.d.ts b/api/@ohos.graphics.drawing.d.ts index 78e6e1272003bd57efbf54153f30ceeb22bc2e36..8365a1cc4286eb486016088e00b37bef3df27daa 100644 --- a/api/@ohos.graphics.drawing.d.ts +++ b/api/@ohos.graphics.drawing.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023-2024 Huawei Device Co., Ltd. + * Copyright (c) 2023-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -20,10 +20,11 @@ import type image from './@ohos.multimedia.image'; import type common2D from './@ohos.graphics.common2D'; +import type colorSpaceManager from './@ohos.graphics.colorSpaceManager'; import { Resource } from './global/resource'; /** - * Provides functions such as 2D graphics rendering, text drawing, and image display. + * The common2D module defines some common data types in the 2D graphics field. * * @namespace drawing * @syscap SystemCapability.Graphics.Drawing @@ -31,185 +32,199 @@ import { Resource } from './global/resource'; */ declare namespace drawing { /** - * Enumerate blending modes for colors. - * Blend is a operation that use 4 components(red, green, blue, alpha) to generate - * a new color from two colors(source, destination). + * Enumerates the blend modes. A blend mode combines two colors (source color and destination color) in a specific way to create a new color. + * This is commonly used in graphics operations like overlaying, filtering, and masking. + * The blending process applies the same logic to the red, green, and blue color channels separately. + * The alpha channel, however, is handled according to the specific definitions of each blend mode. + * + * For brevity, the following abbreviations are used: + * + * s: source. + * d: destination. + * sa: source alpha. + * da: destination alpha. + * The following abbreviations are used in the calculation result: + * + * r: used when the calculation method is the same for the four channels (alpha, red, green, and blue channels). + * ra: used when only the alpha channel is manipulated. + * rc: used when the other three color channels are manipulated. + * The table below shows the effect of each blend mode, where the yellow rectangle is the source and the blue circle is the destination. + * * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ enum BlendMode { /** - * Disable 4 regions(red, green, blue, alpha) + * r = 0, sets the the destination pixels to fully transparent. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ CLEAR = 0, /** - * Use components of the source + * r = s (all channels of the result equal those of the source), replaces the destination pixels with the source pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ SRC = 1, /** - * Use components of the destination + * r = d (all channels of the result equal those of the destination), keeps the destination pixels unchanged. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ DST = 2, /** - * The source is placed above the destination. + * r = s + (1 - sa) * d, draws the source pixels over the destination pixels, considering the source's transparency. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ SRC_OVER = 3, /** - * The Destination is placed above the source. + * r = d + (1 - da) * s, draws the destination pixels over the source pixels, considering the destination's transparency. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ DST_OVER = 4, /** - * Use source replaces the destination, and will not exceed the boundaries of the destination + * r = s * da, retains only the intersection of the source pixels with the opaque parts of the destination. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ SRC_IN = 5, /** - * Use destination, and will not exceed the boundaries of the source + * r = d * sa, retains only the intersection of the destination pixels with the opaque parts of the source. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ DST_IN = 6, /** - * Source is use in outside of the boundaries of the destination. + * r = s * (1 - da), retains the parts of the source pixels that do not overlap with the destination. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ SRC_OUT = 7, /** - * Destination is use in outside of the boundaries of the source. + * r = d * (1 - sa), retains the parts of the destination pixels that do not overlap with the source. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ DST_OUT = 8, /** - * Source which overlaps the destination will replaces the destination. + * r = s * da + d * (1 - sa), covers the destination pixels with the source pixels, showing the source only in the opaque parts of the destination. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ SRC_ATOP = 9, /** - * Destination which overlaps the source will replaces the source. + * r = d * sa + s * (1 - da), covers the source pixels with the destination pixels, showing the destination only in the opaque parts of the source. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ DST_ATOP = 10, /** - * Combine regions where source and destination do not overlap. + * r = s * (1 - da) + d * (1 - sa), shows only the non-overlapping parts of the source and destination pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ XOR = 11, /** - * The sum of the source and destination. + * r = min(s + d, 1), adds the color values of the source and destination pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ PLUS = 12, /** - * All components are multiplied. + * r = s * d, multiplies the color values of the source and destination pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ MODULATE = 13, /** - * Multiply the complement values of the background and source color values, - * and then complement the result. + * r = s + d - s * d, inverts the color values of the source and destination pixels, multiplies them, and then inverts the result, typically producing a brighter outcome. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ SCREEN = 14, /** - * Multiplies or screens the colors, depending on destination + * Selectively applies MULTIPLY or SCREEN based on the brightness of the destination pixels, enhancing contrast. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ OVERLAY = 15, /** - * Choose a darker background and source color. + * rc = s + d - max(s * da, d * sa), ra = s + (1 - sa) * d, takes the darker color values between the source and destination pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ DARKEN = 16, /** - * Choose a lighter background and source color. + * rc = s + d - min(s * da, d * sa), ra = s + (1 - sa) * d, takes the lighter color values between the source and destination pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ LIGHTEN = 17, /** - * Brightens destination color to reflect the source color. + * Brightens the destination pixels by reducing contrast to reflect the source pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ COLOR_DODGE = 18, /** - * Darkens destination color to reflect the source color. + * Darkens the destination pixels by increasing contrast to reflect the source pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ COLOR_BURN = 19, /** - * Multiplies or screens the colors, depending on source + * Selectively applies MULTIPLY or SCREEN based on the brightness of the source pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ HARD_LIGHT = 20, /** - * Lightens or Darkens the colors, depending on the source. + * Softly brightens or darkens the destination pixels based on the brightness of the source pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ SOFT_LIGHT = 21, /** - * Subtract the darker of the two colors from the brighter color. + * rc = s + d - 2 * (min(s * da, d * sa)), ra = s + (1 - sa) * d, calculates the difference between the color values of the source and destination pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ DIFFERENCE = 22, /** - * Produces an effect similar to difference mode, but with lower contrast. + * rc = s + d - two(s * d), ra = s + (1 - sa) * d, similar to DIFFERENCE but with lower contrast. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ EXCLUSION = 23, /** - * Multiply the source color by the destination color and replace the destination. + * r = s * (1 - da) + d * (1 - sa) + s * d, multiplies the color values of the source and destination pixels, typically resulting in a darker outcome. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ MULTIPLY = 24, /** - * Use the hue of the source and the saturation and brightness of the destination. + * Uses the hue of the source pixels and the saturation and brightness of the destination pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ HUE = 25, /** - * Use the saturation of the source and the hue and brightness of the destination. + * Uses the saturation of the source pixels and the hue and brightness of the destination pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ SATURATION = 26, /** - * Use the hue and saturation of the source and the brightness of the destination. + * Uses the hue and saturation of the source pixels and the brightness of the destination pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ COLOR = 27, /** - * Use the brightness of the source and the hue and saturation of the destination. + * Uses the brightness of the source pixels and the hue and saturation of the destination pixels. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ @@ -217,21 +232,21 @@ declare namespace drawing { } /** - * Enumerates direction for adding closed contours. + * Enumerates the directions of a closed contour. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum PathDirection { /** - * Clockwise direction for adding closed contours. + * Adds a closed contour clockwise. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ CLOCKWISE = 0, /** - * Counter-clockwise direction for adding closed contours. + * Adds a closed contour counterclockwise. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -239,35 +254,41 @@ declare namespace drawing { } /** - * Enumerates fill type of path. + * Enumerates the fill types of a path. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum PathFillType { /** - * Specifies that "inside" is computed by a non-zero sum of signed edge crossings. + * Specifies that "inside" is computed by a non-zero sum of signed edge crossings. Specifically, draws a point and emits a ray in any direction. + * A count is used to record the number of intersection points of the ray and path, and the initial count is 0. + * When encountering a clockwise intersection point (the path passes from the left to the right of the ray), the count increases by 1. + * When encountering a counterclockwise intersection point (the path passes from the right to the left of the ray), the count decreases by 1. + * If the final count is not 0, the point is inside the path and needs to be colored. If the final count is 0, the point is not colored. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ WINDING = 0, /** - * Specifies that "inside" is computed by an odd number of edge crossings. + * Specifies that "inside" is computed by an odd number of edge crossings. Specifically, draws a point and emits a ray in any direction. + * If the number of intersection points of the ray and path is an odd number, the point is considered to be inside the path and needs to be colored. + * If the number is an even number, the point is not colored. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ EVEN_ODD = 1, /** - * Same as winding, but draws outside of the path, rather than inside. + * Same as WINDING, but draws outside of the path, rather than inside. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ INVERSE_WINDING = 2, /** - * Same as evenOdd, but draws outside of the path, rather than inside. + * Same as EVEN_ODD, but draws outside of the path, rather than inside. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -275,26 +296,27 @@ declare namespace drawing { } /** - * Enumerate path measure flags for matrix. + * Enumerates the dimensions of matrix information in path measurement. + * It is often used in animation scenarios where objects move along a path. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum PathMeasureMatrixFlags { /** - * Gets position. + * Matrix corresponding to the position information. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ GET_POSITION_MATRIX = 0, /** - * Gets tangent. + * Matrix corresponding to the tangent information. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ GET_TANGENT_MATRIX = 1, /** - * Gets both position and tangent. + * Matrix corresponding to the position and tangent information. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -302,17 +324,27 @@ declare namespace drawing { } /** - * Provides the definition of the roundRect. + * Implements a rounded rectangle. * * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class RoundRect { + /** - * Creates a simple round rect with the same four corner radii. - * @param { common2D.Rect } rect - Indicates the Rect object. - * @param { number } xRadii - Indicates the corner radii on x-axis. - * @param { number } yRadii - Indicates the corner radii on y-axis. + * Creates a deep copy of the specified round rect object. + * @param { RoundRect } roundRect - The round rect object to copy. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + constructor(roundRect: RoundRect); + + /** + * A constructor used to create a RoundRect object. A rounded rectangle is created when both xRadii and yRadii are greater than 0. Otherwise, only a rectangle is created. + * @param { common2D.Rect } rect - Rectangle that encloses the rounded rectangle to create. + * @param { number } xRadii - Radius of the rounded corner on the X axis. The value is a floating point number. A negative number is invalid. + * @param { number } yRadii - Radius of the rounded corner on the Y axis. The value is a floating point number. A negative number is invalid. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -321,10 +353,10 @@ declare namespace drawing { constructor(rect: common2D.Rect, xRadii: number, yRadii: number); /** - * Sets the radiusX and radiusY for a specific corner position. - * @param { CornerPos } pos - Indicates the corner radius position. - * @param { number } x - Indicates the corner radius on x-axis. - * @param { number } y - Indicates the corner radius on y-axis. + * Sets the radii of the specified rounded corner in this rounded rectangle. + * @param { CornerPos } pos - Position of the rounded corner. + * @param { number } x - Radius of the rounded corner on the X axis. The value is a floating point number. A negative number is invalid. + * @param { number } y - Radius of the rounded corner on the Y axis. The value is a floating point number. A negative number is invalid. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -333,9 +365,9 @@ declare namespace drawing { setCorner(pos: CornerPos, x: number, y: number): void; /** - * Gets a point with the values of x-axis and y-axis of the selected corner radius. - * @param { CornerPos } pos - Indicates the corner radius position. - * @returns { common2D.Point } Returns a point with the values of x-axis and y-axis of the corner radius. + * Obtains the radii of the specified rounded corner in this rounded rectangle. + * @param { CornerPos } pos - Position of the rounded corner. + * @returns { common2D.Point } Point. The horizontal coordinate indicates the radius of the rounded corner on the X axis, and the vertical coordinate indicates the radius on the Y axis. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -344,9 +376,11 @@ declare namespace drawing { getCorner(pos: CornerPos): common2D.Point; /** - * Translates round rect by (dx, dy). - * @param { number } dx - Indicates the offsets added to rect left and rect right. - * @param { number } dy - Indicates the offsets added to rect top and rect bottom. + * Translates this rounded rectangle by an offset along the X axis and Y axis. + * @param { number } dx - Horizontal distance to translate. A positive number indicates a translation towards the positive direction of the X axis, + * and a negative number indicates a translation towards the negative direction of the X axis. The value is a floating point number. + * @param { number } dy - Vertical distance to translate. A positive number indicates a translation towards the positive direction of the Y axis, + * and a negative number indicates a translation towards the negative direction of the Y axis. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -356,7 +390,7 @@ declare namespace drawing { } /** - * Enumerates of operations when two paths are combined. + * Enumerates the path operation types. It is often used in path combination and clipping scenarios. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -370,7 +404,7 @@ declare namespace drawing { DIFFERENCE = 0, /** - * Intersect operation. + * Intersection operation. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -384,7 +418,7 @@ declare namespace drawing { UNION = 2, /** - * Xor operation. + * XOR operation. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -399,56 +433,56 @@ declare namespace drawing { } /** - * Enumerates of types of operation for the path. + * Enumerates the path operation types contained in an iterator. It is used to read path operation instructions. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 18 */ enum PathIteratorVerb { /** - * Move operation. + * Sets the start point. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ MOVE = 0, /** - * Line operation. + * Adds a line segment. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ LINE = 1, /** - * Quad operation. + * Adds a quadratic Bezier curve for smooth transitions. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ QUAD = 2, /** - * Conic operation. + * Adds a conic curve. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ CONIC = 3, /** - * Cubic operation. + * Adds a cubic Bezier curve for smooth transitions. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ CUBIC = 4, /** - * Close operation. + * Closes a path. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ CLOSE = 5, /** - * There are no more operations in the path. + * The path setting is complete. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ @@ -456,33 +490,22 @@ declare namespace drawing { } /** - * Describes a pathIterator object. + * Implements a path operation iterator. You can read path operation instructions by traversing the iterator. * * @syscap SystemCapability.Graphics.Drawing * @since 18 */ class PathIterator { /** - * Creates a pathIterator with path. - * @param { Path } path - the path is used to create PathIterator. + * Creates an iterator and binds it with a path. + * @param { Path } path - Path object bound to the iterator. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ constructor(path: Path); /** - * Get the next verb in this iterator's path, and fill entries in the point2D array - * with point data (if any) for that operation, the point2D array size must be 4 or more. - * The number of pairs of point data supplied in the resulting array depends on the PathIteratorVerb: - * <ul> - * <li>MOVE: 1 pair</li> - * <li>LINE: 2 pairs</li> - * <li>QUAD: 3 pairs</li> - * <li>CONIC: 3.5 pairs</li> - * <li>CUBIC: 4 pairs</li> - * <li>CLOSE: 0 pairs</li> - * <li>DONE: 0 pairs</li> - * </ul> + * Retrieves the next operation in this path and moves the iterator to that operation. * @param { Array<common2D.Point> } points - Indicates the point array. * @param { number } offset - Indicates the offset into the array where entries should be placed. The default value is 0. * @returns { PathIteratorVerb } Returns the next verb in this iterator's path. @@ -494,7 +517,7 @@ declare namespace drawing { next(points: Array<common2D.Point>, offset?: number): PathIteratorVerb; /** - * Get the next verb in the iteration, or DONE if there are no more elements. + * Retrieves the next operation in this path, without moving the iterator. * @returns { PathIteratorVerb } Returns the next verb in the iteration. * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -502,7 +525,7 @@ declare namespace drawing { peek(): PathIteratorVerb; /** - * Query whether there are more elements in the iterator. + * Checks whether there is a next operation in the path operation iterator. * @returns { boolean } Returns true if there are more elements to be iterated through, false otherwise. * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -511,31 +534,40 @@ declare namespace drawing { } /** - * Describes a path object. + * A compound geometric path consisting of line segments, arcs, quadratic Bezier curves, and cubic Bezier curves. * * @syscap SystemCapability.Graphics.Drawing * @since 11 */ class Path { /** - * Creates a Path. + * Constructs a path. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ constructor(); /** - * Creates a Path from other path. - * @param { Path } path - the path to copy content from. + * Constructs a copy of an existing path. + * @param { Path } path - Path to copy. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ constructor(path: Path); /** - * Sets the start point of a path - * @param { number } x - Indicates the x coordinate of the start point. - * @param { number } y - Indicates the y coordinate of the start point. + * Sets the Path with the same content of another. + * @param { Path } src - the path to copy content from. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + set(src: Path): void; + + /** + * Sets the start point of this path. + * @param { number } x - X coordinate of the start point. The value is a floating point number. + * @param { number } y - Y coordinate of the start point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -544,9 +576,9 @@ declare namespace drawing { moveTo(x: number, y: number): void; /** - * Draws a line segment from the last point of a path to the target point. - * @param { number } x - Indicates the x coordinate of the target point. - * @param { number } y - Indicates the y coordinate of the target point. + * Draws a line segment from the last point of this path to the target point. If the path is empty, the start point (0, 0) is used. + * @param { number } x - X coordinate of the target point. The value is a floating point number. + * @param { number } y - Y coordinate of the target point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -555,16 +587,16 @@ declare namespace drawing { lineTo(x: number, y: number): void; /** - * This is done by using angle arc mode. In this mode, a rectangle that encloses an ellipse is specified first, - * and then a start angle and a sweep angle are specified. - * The arc is a portion of the ellipse defined by the start angle and the sweep angle. - * By default, a line segment from the last point of the path to the start point of the arc is also added. - * @param { number } x1 - Indicates the x coordinate of the upper left corner of the rectangle. - * @param { number } y1 - Indicates the y coordinate of the upper left corner of the rectangle. - * @param { number } x2 - Indicates the x coordinate of the lower right corner of the rectangle. - * @param { number } y2 - Indicates the y coordinate of the lower right corner of the rectangle. - * @param { number } startDeg - Indicates the start angle, in degrees. - * @param { number } sweepDeg - Indicates the angle to sweep, in degrees. + * Draws an arc to this path using angle arc mode. This mode first defines a rectangle and takes its inscribed ellipse. + * Then, it specifies a start angle and a sweep angle. The arc is the portion of the ellipse's circumference defined by the start angle + * and the sweep angle. By default, a line segment from the last point of the path to the start point of the arc is also added. + * @param { number } x1 - X coordinate of the upper left corner of the rectangle. The value is a floating point number. + * @param { number } y1 - Y coordinate of the upper left corner of the rectangle. The value is a floating point number. + * @param { number } x2 - X coordinate of the lower right corner of the rectangle. The value is a floating point number. + * @param { number } y2 - Y coordinate of the lower right corner of the rectangle. The value is a floating point number. + * @param { number } startDeg - Start angle. The start direction (0°) of the angle is the positive direction of the X axis. + * @param { number } sweepDeg - Angle to sweep, in degrees. A positive number indicates a clockwise sweep, + * and a negative value indicates a counterclockwise swipe. The actual swipe degree is the modulo operation result of the input parameter by 360. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -573,11 +605,11 @@ declare namespace drawing { arcTo(x1: number, y1: number, x2: number, y2: number, startDeg: number, sweepDeg: number): void; /** - * Draws a quadratic Bezier curve from the last point of a path to the target point. - * @param { number } ctrlX - Indicates the x coordinate of the control point. - * @param { number } ctrlY - Indicates the y coordinate of the control point. - * @param { number } endX - Indicates the x coordinate of the target point. - * @param { number } endY - Indicates the y coordinate of the target point. + * Draws a quadratic Bezier curve from the last point of this path to the target point. If the path is empty, the start point (0, 0) is used. + * @param { number } ctrlX - X coordinate of the control point. The value is a floating point number. + * @param { number } ctrlY - Y coordinate of the control point. The value is a floating point number. + * @param { number } endX - X coordinate of the target point. The value is a floating point number. + * @param { number } endY - Y coordinate of the target point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -586,12 +618,14 @@ declare namespace drawing { quadTo(ctrlX: number, ctrlY: number, endX: number, endY: number): void; /** - * Draws a conic from the last point of a path to the target point. - * @param { number } ctrlX - Indicates the x coordinate of the control point. - * @param { number } ctrlY - Indicates the y coordinate of the control point. - * @param { number } endX - Indicates the x coordinate of the target point. - * @param { number } endY - Indicates the y coordinate of the target point. - * @param { number } weight - Indicates the weight of added conic. + * Draws a conic curve from the last point of this path to the target point. If the path is empty, the start point (0, 0) is used. + * @param { number } ctrlX - X coordinate of the control point. The value is a floating point number. + * @param { number } ctrlY - Y coordinate of the control point. The value is a floating point number. + * @param { number } endX - X coordinate of the target point. The value is a floating point number. + * @param { number } endY - Y coordinate of the target point. The value is a floating point number. + * @param { number } weight - Weight of the curve, which determines its shape. The larger the value, + * the closer of the curve to the control point. If the value is less than or equal to 0, + * this API has the same effect as lineTo. If the value is 1, it has the same effect as quadTo. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -600,13 +634,13 @@ declare namespace drawing { conicTo(ctrlX: number, ctrlY: number, endX: number, endY: number, weight: number): void; /** - * Draws a cubic Bezier curve from the last point of a path to the target point. - * @param { number } ctrlX1 - Indicates the x coordinate of the first control point. - * @param { number } ctrlY1 - Indicates the y coordinate of the first control point. - * @param { number } ctrlX2 - Indicates the x coordinate of the second control point. - * @param { number } ctrlY2 - Indicates the y coordinate of the second control point. - * @param { number } endX - Indicates the x coordinate of the target point. - * @param { number } endY - Indicates the y coordinate of the target point. + * Draws a cubic Bezier curve from the last point of this path to the target point. If the path is empty, the start point (0, 0) is used. + * @param { number } ctrlX1 - X coordinate of the first control point. The value is a floating point number. + * @param { number } ctrlY1 - Y coordinate of the first control point. The value is a floating point number. + * @param { number } ctrlX2 - X coordinate of the second control point. The value is a floating point number. + * @param { number } ctrlY2 - Y coordinate of the second control point. The value is a floating point number. + * @param { number } endX - X coordinate of the target point. The value is a floating point number. + * @param { number } endY - Y coordinate of the target point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -615,9 +649,11 @@ declare namespace drawing { cubicTo(ctrlX1: number, ctrlY1: number, ctrlX2: number, ctrlY2: number, endX: number, endY: number): void; /** - * Sets the relative starting point of a path. - * @param { number } dx - Indicates the x coordinate of the relative starting point. - * @param { number } dy - Indicates the y coordinate of the relative starting point. + * Sets the start position relative to the last point of this path. If the path is empty, the start point (0, 0) is used. + * @param { number } dx - X offset of the start point relative to the last point. A positive number indicates a rightward shift from the last point, + * and a negative number indicates a leftward shift from the last point. The value is a floating point number. + * @param { number } dy - Y offset of the start point relative to the last point. A positive number indicates an upward shift from the last point, + * and a negative number indicates a downward shift from the last point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -626,9 +662,11 @@ declare namespace drawing { rMoveTo(dx: number, dy: number): void; /** - * Draws a line segment from the last point of a path to the relative target point. - * @param { number } dx - Indicates the x coordinate of the relative target point. - * @param { number } dy - Indicates the y coordinate of the relative target point. + * Draws a line segment from the last point of this path to a point relative to the last point. If the path is empty, the start point (0, 0) is used. + * @param { number } dx - X offset of the target point relative to the last point. A positive number indicates a rightward shift from the last point, + * and a negative number indicates a leftward shift from the last point. The value is a floating point number. + * @param { number } dy - Y offset of the target point relative to the last point. A positive number indicates an upward shift from the last point, + * and a negative number indicates a downward shift from the last point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -637,11 +675,15 @@ declare namespace drawing { rLineTo(dx: number, dy: number): void; /** - * Draws a quadratic bezier curve from the last point of a path to the relative target point. - * @param { number } dx1 - Indicates the x coordinate of the relative control point. - * @param { number } dy1 - Indicates the y coordinate of the relative control point. - * @param { number } dx2 - Indicates the x coordinate of the relative target point. - * @param { number } dy2 - Indicates the y coordinate of the relative target point. + * Draws a quadratic Bezier curve from the last point of this path to a point relative to the last point. If the path is empty, the start point (0, 0) is used. + * @param { number } dx1 - X offset of the control point relative to the last point. A positive number indicates a rightward shift from the last point, + * and a negative number indicates a leftward shift from the last point. The value is a floating point number. + * @param { number } dy1 - Y offset of the control point relative to the last point. A positive number indicates an upward shift from the last point, + * and a negative number indicates a downward shift from the last point. The value is a floating point number. + * @param { number } dx2 - X offset of the target point relative to the last point. A positive number indicates a rightward shift from the last point, + * and a negative number indicates a leftward shift from the last point. The value is a floating point number. + * @param { number } dy2 - Y offset of the target point relative to the last point. A positive number indicates an upward shift from the last point, + * and a negative number indicates a downward shift from the last point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -650,12 +692,18 @@ declare namespace drawing { rQuadTo(dx1: number, dy1: number, dx2: number, dy2: number): void; /** - * Draws a conic from the last point of a path to the relative target point. - * @param { number } ctrlX - Indicates the x coordinate of the relative control point. - * @param { number } ctrlY - Indicates the y coordinate of the relative control point. - * @param { number } endX - Indicates the x coordinate of the relative target point. - * @param { number } endY - Indicates the y coordinate of the relative target point. - * @param { number } weight - Indicates the weight of added conic. + * Draws a conic curve from the last point of this path to a point relative to the last point. If the path is empty, the start point (0, 0) is used. + * @param { number } ctrlX - X offset of the control point relative to the last point. A positive number indicates a rightward shift from the last point, + * and a negative number indicates a leftward shift from the last point. The value is a floating point number. + * @param { number } ctrlY - Y offset of the control point relative to the last point. A positive number indicates an upward shift from the last point, + * and a negative number indicates a downward shift from the last point. The value is a floating point number. + * @param { number } endX - X offset of the target point relative to the last point. A positive number indicates a rightward shift from the last point, + * and a negative number indicates a leftward shift from the last point. The value is a floating point number. + * @param { number } endY - Y offset of the target point relative to the last point. A positive number indicates an upward shift from the last point, + * and a negative number indicates a downward shift from the last point. The value is a floating point number. + * @param { number } weight - Weight of the curve, which determines its shape. The larger the value, the closer of the curve to the control point. + * If the value is less than or equal to 0, this API is equivalent to rLineTo, that is, adding a line segment from the last point of the path + * to the target point. If the value is 1, this API is equivalent to rQuadTo. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -664,13 +712,19 @@ declare namespace drawing { rConicTo(ctrlX: number, ctrlY: number, endX: number, endY: number, weight: number): void; /** - * Draws a cubic bezier curve from the last point of a path to the relative target point. - * @param { number } ctrlX1 - Indicates the x coordinate of the first relative control point. - * @param { number } ctrlY1 - Indicates the y coordinate of the first relative control point. - * @param { number } ctrlX2 - Indicates the x coordinate of the second relative control point. - * @param { number } ctrlY2 - Indicates the y coordinate of the second relative control point. - * @param { number } endX - Indicates the x coordinate of the relative target point. - * @param { number } endY - Indicates the y coordinate of the relative target point. + * Draws a cubic Bezier curve from the last point of this path to a point relative to the last point. If the path is empty, the start point (0, 0) is used. + * @param { number } ctrlX1 - X offset of the first control point relative to the last point. A positive number indicates a rightward shift + * from the last point, and a negative number indicates a leftward shift from the last point. The value is a floating point number. + * @param { number } ctrlY1 - Y offset of the first control point relative to the last point. A positive number indicates an upward shift + * from the last point, and a negative number indicates a downward shift from the last point. The value is a floating point number. + * @param { number } ctrlX2 - X offset of the second control point relative to the last point. A positive number indicates a rightward shift + * from the last point, and a negative number indicates a leftward shift from the last point. The value is a floating point number. + * @param { number } ctrlY2 - Y offset of the second control point relative to the last point. A positive number indicates an upward shift + * from the last point, and a negative number indicates a downward shift from the last point. The value is a floating point number. + * @param { number } endX - X offset of the target point relative to the last point. A positive number indicates a rightward shift + * from the last point, and a negative number indicates a leftward shift from the last point. The value is a floating point number. + * @param { number } endY - Y offset of the target point relative to the last point. A positive number indicates an upward shift + * from the last point, and a negative number indicates a downward shift from the last point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -679,9 +733,10 @@ declare namespace drawing { rCubicTo(ctrlX1: number, ctrlY1: number, ctrlX2: number, ctrlY2: number, endX: number, endY: number): void; /** - * Adds contour created from point array, adding (count - 1) line segments. - * @param { Array<common2D.Point> } points - Indicates the point array. - * @param { boolean } close - Indicates Whether to add lines that connect the end and start. + * Adds a polygon to this path. + * @param { Array<common2D.Point> } points - Array that holds the vertex coordinates of the polygon. + * @param { boolean } close - Whether to close the path, that is, whether to add a line segment from the start point + * to the end point of the path. The value true means to close the path, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -690,10 +745,11 @@ declare namespace drawing { addPolygon(points: Array<common2D.Point>, close: boolean): void; /** - * Combines two paths. - * @param { Path } path - Indicates the Path object. - * @param { PathOp } pathOp - Indicates the operator to apply path. - * @returns { boolean } boolean - Returns true if constructed path is not empty; returns false otherwise. + * Combines this path with the passed-in path based on the specified operation mode. + * @param { Path } path - Path object, which will be combined with the current path. + * @param { PathOp } pathOp - Operation mode. + * @returns { boolean } boolean - Result of the path combination result. The value true means that the path combination is successful, + * and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -702,11 +758,19 @@ declare namespace drawing { op(path: Path, pathOp: PathOp): boolean; /** - * Appends arc to path, as the start of new contour. - * Arc added is part of ellipse bounded by oval, from startAngle through sweepAngle. - * @param { common2D.Rect } rect - The bounds of the arc is described by a rect. - * @param { number } startAngle - Indicates the starting angle of arc in degrees. - * @param { number } sweepAngle - Indicates the sweep, in degrees. Positive is clockwise. + * Adds an arc to this path. + * + * When startAngle and sweepAngle meet the following conditions, an oval instead of an arc is added: + * + * The result of startAngle modulo 90 is close to 0. + * The value of sweepAngle is not in the range of (-360, 360). + * + * In other cases, this API adds an arc by applying the result of sweepAngle modulo 360 to the path. + * @param { common2D.Rect } rect - Rectangular boundary that encapsulates the oval including the arc. + * @param { number } startAngle - Start angle of the arc, in degrees. The value 0 indicates the positive direction of the X axis. + * The value is a floating point number. + * @param { number } sweepAngle - Angle to sweep, in degrees. A positive number indicates a clockwise sweep, + * and a negative number indicates a counterclockwise sweep. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -715,11 +779,12 @@ declare namespace drawing { addArc(rect: common2D.Rect, startAngle: number, sweepAngle: number): void; /** - * Adds a circle to the path, and wound in the specified direction. - * @param { number } x - Indicates the x coordinate of the center of the circle. - * @param { number } y - Indicates the y coordinate of the center of the circle. - * @param { number } radius - Indicates the radius of the circle. - * @param { PathDirection } pathDirection - The default value is CLOCKWISE. + * Adds a circle to this path in the specified direction. The start point of the circle is (x + radius, y). + * @param { number } x - X coordinate of the center of the circle. The value is a floating point number. + * @param { number } y - Y coordinate of the center of the circle. The value is a floating point number. + * @param { number } radius - Radius of the circle. The value is a floating point number. + * If the value is less than or equal to 0, there is no effect. + * @param { PathDirection } pathDirection - Direction of the path. The default direction is clockwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -728,10 +793,11 @@ declare namespace drawing { addCircle(x: number, y: number, radius: number, pathDirection?: PathDirection): void; /** - * Adds a oval to the path, defined by the rect, and wound in the specified direction. - * @param { common2D.Rect } rect - The bounds of the oval is described by a rect. - * @param { number } start - Indicates the index of initial point of ellipse. - * @param { PathDirection } pathDirection - The default value is CLOCKWISE. + * Adds the inscribed ellipse of a rectangle to this path in the specified direction. + * @param { common2D.Rect } rect - Rectangular boundary of the oval. + * @param { number } start - Start point of the oval, where 0, 1, 2, and 3 correspond to the upper, right, lower, and left points, respectively. + * The value is an integer greater than or equal to 0. If the value is greater than or equal to 4, the remainder of 4 is used. + * @param { PathDirection } pathDirection - Direction of the path. The default direction is clockwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -740,9 +806,9 @@ declare namespace drawing { addOval(rect: common2D.Rect, start: number, pathDirection?: PathDirection): void; /** - * Adds a new contour to the path, defined by the rect, and wound in the specified direction. - * @param { common2D.Rect } rect - Indicates the Rect object. - * @param { PathDirection } pathDirection - The default value is CLOCKWISE. + * Adds a rectangle to this path in the specified direction. The start point is the upper left corner of the rectangle. + * @param { common2D.Rect } rect - Rectangle. + * @param { PathDirection } pathDirection - Direction of the path. The default direction is clockwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -751,8 +817,11 @@ declare namespace drawing { addRect(rect: common2D.Rect, pathDirection?: PathDirection): void; /** - * Adds a new contour to the path, defined by the round rect, and wound in the specified direction. - * @param { RoundRect } roundRect - Indicates the RoundRect object. + * Adds a rounded rectangle to this path in the specified direction. When the path direction is clockwise, + * the start point is at the intersection of the rounded rectangle's left boundary and its lower left corner. + * When the path direction is counterclockwise, the start point is at the intersection point + * between the left boundary and the upper left corner. + * @param { RoundRect } roundRect - Rounded rectangle. * @param { PathDirection } pathDirection - The default value is CLOCKWISE. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -762,9 +831,9 @@ declare namespace drawing { addRoundRect(roundRect: RoundRect, pathDirection?: PathDirection): void; /** - * Appends src path to path, transformed by matrix. - * @param { Path } path - Indicates the Path object. - * @param { Matrix | null } matrix - Indicates transform applied to path. The default value is null. + * Transforms the points in a path by a matrix and stores the resulting path in the current Path object. + * @param { Path } path - Source Path object. + * @param { Matrix | null } matrix - Matrix object. The default value is an identity matrix. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -773,8 +842,8 @@ declare namespace drawing { addPath(path: Path, matrix?: Matrix | null): void; /** - * Path is replaced by transformed data. - * @param { Matrix } matrix - Indicates transform applied to path. + * Transforms the points in this path by a matrix. + * @param { Matrix } matrix - Matrix object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -783,10 +852,10 @@ declare namespace drawing { transform(matrix: Matrix): void; /** - * Returns the status that point (x, y) is contained by path. - * @param { number } x - Indicates the x-axis value of containment test. - * @param { number } y - Indicates the y-axis value of containment test. - * @returns { boolean } Returns true if the point (x, y) is contained by path; returns false otherwise. + * Checks whether a coordinate point is included in this path. For details, see PathFillType. + * @param { number } x - X coordinate. The value is a floating point number. + * @param { number } y - Y coordinate. The value is a floating point number. + * @returns { boolean } Check result. The value true means that the coordinate point is included in the path, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -795,8 +864,20 @@ declare namespace drawing { contains(x: number, y: number): boolean; /** - * Sets fill type, the rule used to fill path. - * @param { PathFillType } pathFillType - Indicates the enum path fill type. + * Changes the last point of the path to specific value. + * @param { number } x - Indicates the new x-axis value for the last point. + * @param { number } y - Indicates the new y-axis value for the last point. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + setLastPoint(x: number, y: number): void; + + /** + * Sets the fill type of this path. The fill type determines how "inside" of the path is drawn. + * For example, when the fill type Winding is used, "inside" of the path is determined by a non-zero sum of signed edge crossings. + * When EvenOdd is used, "inside" of the path is determined by an odd number of edge crossings. + * @param { PathFillType } pathFillType - Fill type of the path. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -805,7 +886,16 @@ declare namespace drawing { setFillType(pathFillType: PathFillType): void; /** - * Gets the smallest bounding box that contains the path. + * Gets fill type, the rule used to fill path. + * @returns { PathFillType } Returns the pathFillType. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + getFillType(): PathFillType; + + /** + * Obtains the minimum bounding rectangle that encloses this path. * @returns { common2D.Rect } Rect object. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -813,17 +903,19 @@ declare namespace drawing { getBounds(): common2D.Rect; /** - * Closes a path. A line segment from the start point to the last point of the path is added. + * Closes this path by adding a line segment from the start point to the last point of the path. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ close(): void; /** - * Offsets point array by (dx, dy). Path is replaced by offset data. - * @param { number } dx - Indicates offset added to dst path x-axis coordinates. - * @param { number } dy - Indicates offset added to dst path y-axis coordinates. - * @returns { Path } Returns a new Path object. + * Offsets this path by specified distances along the X axis and Y axis and stores the resulting path in the Path object returned. + * @param { number } dx - X offset. A positive number indicates an offset towards the positive direction of the X axis, + * and a negative number indicates an offset towards the negative direction of the X axis. The value is a floating point number. + * @param { number } dy - Y offset. A positive number indicates an offset towards the positive direction of the Y axis, + * and a negative number indicates an offset towards the negative direction of the Y axis. The value is a floating point number. + * @returns { Path } New path generated. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -832,15 +924,43 @@ declare namespace drawing { offset(dx: number, dy: number): Path; /** - * Resets path data. + * Resets the path data. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ reset(): void; /** - * Get path length. - * @param { boolean } forceClosed - Whether to close the Path. + * Clears any lines and curves from the path but keeps the internal storage for faster reuse. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + rewind(): void; + + /** + * Check if the path is empty (has no line or curve). + * + * @returns { boolean } Returns true if the path is empty; returns false otherwise. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + isEmpty(): boolean; + + /** + * Check if the path represents a rectangle. + * + * @param { common2D.Rect | null } rect - Indicates the Rect object. + * @returns { boolean } Returns true if the path represents a rectangle; returns false otherwise. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + isRect(rect: common2D.Rect | null): boolean; + + /** + * Obtains the path length. + * @param { boolean } forceClosed - Whether the path is measured as a closed path. + * The value true means that the path is considered closed during measurement, + * and false means that the path is measured based on the actual closed status. * @returns { number } Return path length. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -848,13 +968,18 @@ declare namespace drawing { getLength(forceClosed: boolean): number; /** - * Gets the position and tangent of the distance from the starting position of the path. + * Obtains the coordinates and tangent at a distance from the start point of this path. * - * @param { boolean } forceClosed - Whether to close the path. - * @param { number } distance - The distance from the start of the path, should be greater than 0 and less than 'GetLength()' - * @param { common2D.Point } position - Sets to the position of distance from the starting position of the path. - * @param { common2D.Point } tangent - Sets to the tangent of distance from the starting position of the path. - * @returns { boolean } - Returns true if succeeded, otherwise false. + * @param { boolean } forceClosed - Whether the path is measured as a closed path. + * The value true means that the path is considered closed during measurement, + * and false means that the path is measured based on the actual closed status. + * @param { number } distance - Distance from the start point. If a negative number is passed in, the value 0 is used. + * If a value greater than the path length is passed in, the path length is used. The value is a floating point number. + * @param { common2D.Point } position - Coordinates obtained. + * @param { common2D.Point } tangent - Tangent obtained, where tangent.x and tangent.y represent the cosine + * and sine of the tangent of the point, respectively. + * @returns { boolean } - Check result. The value true means that they are obtained, and false means the opposite. + * The values of position and tangent are not changed. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -863,38 +988,43 @@ declare namespace drawing { getPositionAndTangent(forceClosed: boolean, distance: number, position: common2D.Point, tangent: common2D.Point): boolean; /** - * Gets the path between the start and end points. + * Extracts a segment of this path and appends it to a destination path. * - * @param { boolean } forceClosed - Whether to close the path. - * @param { number } start - The distance from the starting point of the segment to the starting point of the path. - * @param { number } stop - The distance from the end point of the segment to the starting point of the path. - * @param { boolean } startWithMoveTo - Whether the path obtained moveTo to the starting segment. - * @param { Path } dst - The path obtained. - * @returns { boolean } - Returns false if the segment is zero-length or start >= stop, else return true. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * @param { boolean } forceClosed - Whether the path is measured as a closed path. The value true means that the path is considered closed + * during measurement, and false means that the path is measured based on the actual closed status. + * @param { number } start - Distance from the start point of the path to the start point of the segment. If it is less than 0, it defaults to 0. + * If it is greater than or equal to stop, the extraction fails. The value is a floating point number. + * @param { number } stop - Distance from the start point of the path to the end point of the segment. If it is less than or equal to start, + * the extraction fails. If it is greater than the path length, it defaults to the path length. The value is a floating point number. + * @param { boolean } startWithMoveTo - Whether to execute moveto in the destination path to move to its start point. + * The value true means to move to the start point, and false means the opposite. + * @param { Path } dst - Destination path. If the extraction succeeds, the segment is appended to the path. If the extraction fails, nothing changes. + * @returns { boolean } - Extraction result. The value **true** means that the extraction is successful, and **false** means the opposite. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getSegment(forceClosed: boolean, start: number, stop: number, startWithMoveTo: boolean, dst: Path): boolean; /** - * Determines whether the current contour is closed. + * Checks whether a path is closed. * - * @returns { boolean } - Returns true if the current contour is closed, otherwise false. + * @returns { boolean } - Check result. The value true means that the path is closed, and false means the opposite. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ isClosed(): boolean; /** - * Computes the corresponding matrix at the specified distance. + * Obtains a transformation matrix at a specific position along the path, which represents the coordinates and orientation of that point. * - * @param { boolean } forceClosed - Whether to close the path. - * @param { number } distance - The distance from the start of the path. - * @param { Matrix } matrix - Indicates the pointer to an Matrix object. - * @param { PathMeasureMatrixFlags } flags - Indicates what should be returned in the matrix. - * @returns { boolean } - Returns false if there is no path, or a zero-length path was specified, in which case matrix is unchanged. + * @param { boolean } forceClosed - Whether the path is measured as a closed path. The value true means that the path is considered closed + * during measurement, and false means that the path is measured based on the actual closed status. + * @param { number } distance - Distance from the start point. If a negative number is passed in, the value 0 is used. + * If a value greater than the path length is passed in, the path length is used. The value is a floating point number. + * @param { Matrix } matrix - Matrix object used to store the matrix obtained. + * @param { PathMeasureMatrixFlags } flags - Type of the matrix information obtained. + * @returns { boolean } - Result indicating whether the transformation matrix is obtained. + * The value true means that the operation is successful, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: Mandatory parameters are left unspecified. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -902,10 +1032,10 @@ declare namespace drawing { getMatrix(forceClosed: boolean, distance: number, matrix: Matrix, flags: PathMeasureMatrixFlags): boolean; /** - * Parses the SVG format string that describes the drawing path, and sets the path. + * Parses the path represented by an SVG string. * - * @param { string } str - A string in SVG format that describes the drawing path. - * @returns { boolean } true if build succeeded, otherwise false. + * @param { string } str - String in SVG format, which is used to describe the path. + * @returns { boolean } Result of the parsing operation. The value true means that the operation is successful, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: Mandatory parameters are left unspecified. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -913,18 +1043,63 @@ declare namespace drawing { buildFromSvgString(str: string): boolean; /** - * Get pathIterator from path. + * Obtains the operation iterator of this path. * * @returns { PathIterator } Indicates the pointer to an pathIterator object. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getPathIterator(): PathIterator; + + /** + * Approximates the path with a series of line segments. + * + * @param { number } acceptableError - Indicates the acceptable error for a line on the path. Should be no less than 0. + * @returns { Array<number> } - Returns with the array containing point components. + * <br>There are three components for each point: + * <br>1. Fraction along the length of the path that the point resides [0.0, 1.0]. + * <br>2. The x coordinate of the point. + * <br>3. The y coordinate of the point. + * @throws { BusinessError } 25900001 - Parameter error. Possible causes: Incorrect parameter range. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + approximate(acceptableError: number): Array<number>; + + /** + * Performs interpolation between the current path and another path based on a given weight, and stores the result in the target path object. + * + * @param { Path } other - Indicates the other path to be interpolated with the current path. + * @param { number } weight - Indicates the interpolation weight, which must be in the range [0, 1]. + * @param { Path } interpolatedPath - Indicates the target path object where the interpolation result will be stored. + * @returns { boolean } - Returns true if the interpolation operation was successful; returns false otherwise. + * <br>Possible reasons for failure include: + * <br>1. The 'other' is incompatible with the current path. + * <br>2. The 'weight' is outside the [0, 1] range. + * @throws { BusinessError } 25900001 - Parameter error. Possible causes: Incorrect parameter range. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + interpolate(other: Path, weight: number, interpolatedPath: Path): boolean; + + /** + * Checks whether the current path is compatible with another path (other) for interpolation, which means + * they have exactly the same structure, both paths must have the same operations, in the same order. + * If any of the operations are of type PathIteratorVerb.CONIC, then the weights of those conics must also match. + * + * @param { Path } other - Indicates the path to be checked for compatibility with the current path. + * @returns { boolean } - Returns true if the current path and the other path are compatible for interpolation; returns false otherwise. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + isInterpolate(other: Path): boolean; } /** - * Enumerates of scale to fit flags, selects if an array of points are drawn as discrete points, - * as lines, or as an open polygon. + * Enumerates the modes for drawing multiple points in an array. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -938,14 +1113,14 @@ declare namespace drawing { POINTS = 0, /** - * Draws each pair of points as a line segment. + * Draws every two points as a line segment. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ LINES = 1, /** - * Draws the array of points as a open polygon. + * Draws an array of points as an open polygon. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -953,21 +1128,21 @@ declare namespace drawing { } /** - * Enumerates storage filter mode. + * Enumerates the filter modes. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum FilterMode { /** - * Single sample point (nearest neighbor). + * Nearest filter mode. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ FILTER_MODE_NEAREST = 0, /** - * Interpolate between 2x2 sample points (bilinear interpolation). + * Linear filter mode. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -975,35 +1150,35 @@ declare namespace drawing { } /** - * Enumerates of shadow flags. + * Enumerates the shadow drawing behaviors. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum ShadowFlag { /** - * Use no shadow flags. + * None of the flags are enabled. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ NONE = 0, /** - * The occluding object is transparent. + * The occluder is transparent. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ TRANSPARENT_OCCLUDER = 1, /** - * No need to analyze shadows. + * Only the geometric shadow effect is used. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ GEOMETRIC_ONLY = 2, /** - * Use all shadow flags. + * All the flags are enabled. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -1011,19 +1186,19 @@ declare namespace drawing { } /** - * Provides an interface to the drawing, and samplingOptions used when sampling from the image. + * Implements sampling options. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class SamplingOptions { /** - * Constructor for the samplingOptions. + * Creates a SamplingOptions object. The default value of FilterMode is FILTER_MODE_NEAREST. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ constructor(); /** - * Constructor for the samplingOptions with filter mode. + * Creates a SamplingOptions object. * @param { FilterMode } filterMode - Storage filter mode. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -1034,14 +1209,14 @@ declare namespace drawing { } /** - * Provides an interface to the drawing, and how to clip and transform the drawing. + * A carrier that carries the drawn content and drawing status. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ class Canvas { /** - * Constructor for the Canvas. - * @param { image.PixelMap } pixelmap - PixelMap. + * Creates a Canvas object that uses a PixelMap as the drawing target. + * @param { image.PixelMap } pixelmap - PixelMap used to create the object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1050,8 +1225,7 @@ declare namespace drawing { constructor(pixelmap: image.PixelMap); /** - * If rectangle is stroked, use pen to stroke width describes the line thickness, - * else use brush to fill the rectangle. + * Draws a rectangle. By default, black is used for filling. * @param { common2D.Rect } rect - Rectangle to draw. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -1061,12 +1235,11 @@ declare namespace drawing { drawRect(rect: common2D.Rect): void; /** - * If rectangle is stroked, use pen to stroke width describes the line thickness, - * else use brush to fill the rectangle. - * @param { number } left - Indicates the left position of the rectangle. - * @param { number } top - Indicates the top position of the rectangle. - * @param { number } right - Indicates the right position of the rectangle. - * @param { number } bottom - Indicates the bottom position of the rectangle. + * Draws a rectangle. By default, black is used for filling. This API provides better performance than drawRect and is recommended. + * @param { number } left - X coordinate of the upper left corner of the rectangle. The value is a floating point number. + * @param { number } top - Y coordinate of the upper left corner of the rectangle. The value is a floating point number. + * @param { number } right - X coordinate of the lower right corner of the rectangle. The value is a floating point number. + * @param { number } bottom - Y coordinate of the lower right corner of the rectangle. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1075,7 +1248,7 @@ declare namespace drawing { drawRect(left: number, top: number, right: number, bottom: number): void; /** - * Draws a RoundRect. + * Draws a rounded rectangle. * @param { RoundRect } roundRect - Indicates the RectRound object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -1085,9 +1258,10 @@ declare namespace drawing { drawRoundRect(roundRect: RoundRect): void; /** - * Draws a nested RoundRect. - * @param { RoundRect } outer - Indicates the outer RectRound object. - * @param { RoundRect } inner - Indicates the inner RectRound object. + * Draws two nested rounded rectangles. The outer rectangle boundary must contain the inner rectangle boundary. + * Otherwise, there is no drawing effect. + * @param { RoundRect } outer - Outer rounded rectangle. + * @param { RoundRect } inner - Inner rounded rectangle. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1096,7 +1270,7 @@ declare namespace drawing { drawNestedRoundRect(outer: RoundRect, inner: RoundRect): void; /** - * Fills clipped canvas area with brush. + * Uses a brush to fill the drawable area of the canvas. * @param { Brush } brush - Indicates the Brush object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -1106,14 +1280,15 @@ declare namespace drawing { drawBackground(brush: Brush): void; /** - * Draws an offset spot shadow and outlining ambient shadow for the given path with circular light. - * @param { Path } path - Indicates the Path object. - * @param { common2D.Point3d } planeParams - Represents z offset of the occluder from the canvas based on x and y. - * @param { common2D.Point3d } devLightPos - Represents the position of the light relative to the canvas. - * @param { number } lightRadius - The radius of the circular light. - * @param { common2D.Color } ambientColor - Ambient shadow's color. - * @param { common2D.Color } spotColor - Spot shadow's color. - * @param { ShadowFlag } flag - Indicates the flag to control opaque occluder, shadow, and light position. + * Draws a spot shadow and uses a given path to outline the ambient shadow. + * @param { Path } path - Path object, which is used to outline the shadow. + * @param { common2D.Point3d } planeParams - 3D vector, which is used to determine the z-axis offset of an occluder relative to the canvas, + * based on its x and y coordinates. + * @param { common2D.Point3d } devLightPos - Position of the light relative to the canvas. + * @param { number } lightRadius - Radius of the light. The value is a floating point number. + * @param { common2D.Color } ambientColor - Color of the ambient shadow. + * @param { common2D.Color } spotColor - Color of the spot shadow. + * @param { ShadowFlag } flag - Shadow flag. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -1123,14 +1298,13 @@ declare namespace drawing { ambientColor: common2D.Color, spotColor: common2D.Color, flag: ShadowFlag) : void; /** - * Draws an offset spot shadow and outlining ambient shadow for the given path with circular light. - * In this function, the input of the parameter 'ambientColor' and 'spotColor' should be number - * @param { Path } path - Indicates the Path object. - * @param { common2D.Point3d } planeParams - Represents z offset of the occluder from the canvas based on x and y. - * @param { common2D.Point3d } devLightPos - Represents the position of the light relative to the canvas. - * @param { number } lightRadius - The radius of the circular light. - * @param { common2D.Color | number } ambientColor - Ambient shadow's color represented by ARGB color of hexadecimal format. - * @param { common2D.Color | number } spotColor - Spot shadow's color represented by ARGB color of hexadecimal format. + * Draws a spot shadow and uses a given path to outline the ambient shadow. + * @param { Path } path - Path object, which is used to outline the shadow. + * @param { common2D.Point3d } planeParams - 3D vector, which is used to calculate the offset in the Z axis. + * @param { common2D.Point3d } devLightPos - Position of the light relative to the canvas. + * @param { number } lightRadius - Radius of the light. The value is a floating point number. + * @param { common2D.Color | number } ambientColor - Ambient shadow color, represented by a 32-bit unsigned integer in hexadecimal ARGB format. + * @param { common2D.Color | number } spotColor - Spot shadow color, represented by a 32-bit unsigned integer in hexadecimal ARGB format. * @param { ShadowFlag } flag - Indicates the flag to control opaque occluder, shadow, and light position. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1141,11 +1315,10 @@ declare namespace drawing { ambientColor: common2D.Color | number, spotColor: common2D.Color | number, flag: ShadowFlag) : void; /** - * If radius is zero or less, nothing is drawn. If circle is stroked, use pen to - * stroke width describes the line thickness, else use brush to fill the circle. - * @param { number } x - X coordinate of the circle center. - * @param { number } y - Y coordinate of the circle center. - * @param { number } radius - The radius of the circle must be greater than 0. + * Draws a circle. If the radius is less than or equal to zero, nothing is drawn. By default, black is used for filling. + * @param { number } x - X coordinate of the center of the circle. The value is a floating point number. + * @param { number } y - Y coordinate of the center of the circle. The value is a floating point number. + * @param { number } radius - Radius of the circle. The value is a floating point number greater than 0. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -1163,11 +1336,11 @@ declare namespace drawing { * @since 11 */ /** - * Draw a pixelmap, with the upper left corner at (left, top). + * Draws an image. The coordinates of the upper left corner of the image are (left, top). * @param { image.PixelMap } pixelmap - PixelMap. - * @param { number } left - Left side of image. - * @param { number } top - Top side of image. - * @param { SamplingOptions } samplingOptions - SamplingOptions used to describe the sampling mode. + * @param { number } left - X coordinate of the upper left corner of the image. The value is a floating point number. + * @param { number } top - Y coordinate of the upper left corner of the image. The value is a floating point number. + * @param { SamplingOptions } samplingOptions - Sampling options. By default, the SamplingOptions object created using the no-argument constructor is used. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1176,12 +1349,15 @@ declare namespace drawing { drawImage(pixelmap: image.PixelMap, left: number, top: number, samplingOptions?: SamplingOptions): void; /** - * Divides the image into a grid by lattice. - * Draws each seciont of the image onto the area of destination rectangle on canvas. + * Splits an image into multiple sections based on the lattice object's configuration and draws each section into the specified target rectangle on the canvas. + * The intersections of even-numbered rows and columns (starting from 0) are fixed points. + * If the fixed lattice area fits within the target rectangle, it will be drawn without scaling. + * Otherwise, it will be scaled proportionally to fit the target rectangle. + * Any remaining space will be filled by stretching or compressing the remaining sections to cover the entire target rectangle. * @param { image.PixelMap } pixelmap - The source image. * @param { Lattice } lattice - The area of source image. * @param { common2D.Rect } dstRect - The area of destination canvas. - * @param { FilterMode } filterMode - Storage filter mode. + * @param { FilterMode } filterMode - Filter mode. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -1191,13 +1367,14 @@ declare namespace drawing { filterMode: FilterMode): void; /** - * Divides the image into a grid with nine sections: four sides, four corners, and the center. - * Draws the specified section of the image onto the canvas, corners are unmodified or scaled down if they exceed - * the destination rectangle, center and four sides are scaled to fit remaining space. - * @param { image.PixelMap } pixelmap - The source image. - * @param { common2D.Rect } center - The rect used to divide the source image. - * @param { common2D.Rect } dstRect - The area of destination rectangle on canvas. - * @param { FilterMode } filterMode - Storage filter mode. + * Splits an image into nine sections using two horizontal and two vertical lines: four edge sections, four corner sections, and a central section. + * If the four corner sections are smaller than the target rectangle, they will be drawn in the target rectangle without scaling. + * Otherwise, they will be scaled to fit the target rectangle. Any remaining space will be filled by stretching or + * compressing the other five sections to cover the entire target rectangle. + * @param { image.PixelMap } pixelmap - PixelMap to split. + * @param { common2D.Rect } center - Central rectangle that divides the image into nine sections by extending its four edges. + * @param { common2D.Rect } dstRect - Target rectangle drawn on the canvas. + * @param { FilterMode } filterMode - Filter mode. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -1207,11 +1384,10 @@ declare namespace drawing { filterMode: FilterMode): void; /** - * Draws the specified source image onto the canvas, - * scaled and translated to the destination rectangle. + * Draws an image onto a specified area of the canvas. * @param { image.PixelMap } pixelmap - The source image. - * @param { common2D.Rect } dstRect - The area of destination canvas. - * @param { SamplingOptions } samplingOptions - SamplingOptions used to describe the sampling mode. + * @param { common2D.Rect } dstRect - Rectangle object, which specifies the area of the canvas onto which the image will be drawn. + * @param { SamplingOptions } samplingOptions - Sampling options. By default, the SamplingOptions object created using the no-argument constructor is used. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1220,13 +1396,12 @@ declare namespace drawing { drawImageRect(pixelmap: image.PixelMap, dstRect: common2D.Rect, samplingOptions?: SamplingOptions): void; /** - * Draws the specified source rectangle of the image onto the canvas, - * scaled and translated to the destination rectangle. + * Draws a portion of an image onto a specified area of the canvas. * @param { image.PixelMap } pixelmap - The source image. - * @param { common2D.Rect } srcRect - The area of source image. - * @param { common2D.Rect } dstRect - The area of destination canvas. - * @param { SamplingOptions } samplingOptions - SamplingOptions used to describe the sampling mode. - * @param { SrcRectConstraint } constraint - Constraint type. The default value is STRICT. + * @param { common2D.Rect } srcRect - Rectangle object, which specifies the portion of the image to draw. + * @param { common2D.Rect } dstRect - Rectangle object, which specifies the area of the canvas onto which the image will be drawn. + * @param { SamplingOptions } samplingOptions - Sampling options. By default, the SamplingOptions object created using the no-argument constructor is used. + * @param { SrcRectConstraint } constraint - Constraint type of the source rectangle. The default value is STRICT. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1236,9 +1411,9 @@ declare namespace drawing { samplingOptions?: SamplingOptions, constraint?: SrcRectConstraint): void; /** - * Fills clip with color color. Mode determines how ARGB is combined with destination. - * @param { common2D.Color } color - The range of color channels must be [0, 255]. - * @param { BlendMode } blendMode - Used to combine source color and destination. The default value is SRC_OVER. + * Fills the drawable area of the canvas with the specified color and blend mode. + * @param { common2D.Color } color - Color in ARGB format. The value of each color channel is an integer ranging from 0 to 255. + * @param { BlendMode } blendMode - Blend mode. The default mode is SRC_OVER. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -1247,12 +1422,16 @@ declare namespace drawing { drawColor(color: common2D.Color, blendMode?: BlendMode): void; /** - * Fills the clipped rectangle with the specified ARGB color. - * @param { number } alpha - Alpha channel of color. The range of alpha must be [0, 255]. - * @param { number } red - Red channel of color. The range of red must be [0, 255]. - * @param { number } green - Green channel of color. The range of green must be [0, 255]. - * @param { number } blue - Blue channel of color. The range of blue must be [0, 255]. - * @param { BlendMode } blendMode - Used to combine source color and destination. The default value is SRC_OVER. + * Fills the drawable area of the canvas with the specified color and blend mode. This API provides better performance and is recommended. + * @param { number } alpha - Alpha channel value of the color in ARGB format. + * The value is an integer ranging from 0 to 255. Any passed-in floating point number is rounded down. + * @param { number } red - Red channel value of the color in ARGB format. + * The value is an integer ranging from 0 to 255. Any passed-in floating point number is rounded down. + * @param { number } green - Green channel value of the color in ARGB format. + * The value is an integer ranging from 0 to 255. Any passed-in floating point number is rounded down. + * @param { number } blue - Blue channel value of the color in ARGB format. + * The value is an integer ranging from 0 to 255. Any passed-in floating point number is rounded down. + * @param { BlendMode } blendMode - Blend mode. The default mode is SRC_OVER. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -1261,9 +1440,9 @@ declare namespace drawing { drawColor(alpha: number, red: number, green: number, blue: number, blendMode?: BlendMode): void; /** - * Fills clip with the specified ARGB color of hexadecimal format. - * @param { number } color - Number must be ARGB color of hexadecimal format. - * @param { BlendMode } blendMode - Used to combine source color and destination. The default value is SRC_OVER. + * Fills the drawable area of the canvas with the specified color and blend mode. + * @param { number } color - Color in hexadecimal ARGB format. + * @param { BlendMode } blendMode - Blend mode. The default mode is SRC_OVER. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -1272,8 +1451,8 @@ declare namespace drawing { drawColor(color: number, blendMode?: BlendMode): void; /** - * Draws an oval. - * @param { common2D.Rect } oval - The bounds of the oval is described by a rect. + * Draws an oval on the canvas, where the shape and position of the oval are defined by its bounding rectangle. + * @param { common2D.Rect } oval - Rectangle. The oval inscribed within the rectangle is the oval to draw. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1282,10 +1461,17 @@ declare namespace drawing { drawOval(oval: common2D.Rect): void; /** - * Draws an arc. - * @param { common2D.Rect } arc - The bounds of the arc is described by a rect. - * @param { number } startAngle - Indicates the startAngle of the arc. - * @param { number } sweepAngle - Indicates the sweepAngle of the arc. + * Draws an arc on the canvas, with the start angle and sweep angle specified. + * If the absolute value of the sweep angle exceeds 360 degrees, an ellipse is drawn. + * @param { common2D.Rect } arc - Rectangular boundary that encapsulates the oval including the arc. + * @param { number } startAngle - Start angle, in degrees. The value is a floating point number. + * When the degree is 0, the start point is located at the right end of the oval. + * A positive number indicates that the start point is placed clockwise, + * and a negative number indicates that the start point is placed counterclockwise. + * @param { number } sweepAngle - Angle to sweep, in degrees. The value is a floating point number. + * A positive number indicates a clockwise sweep, and a negative value indicates a counterclockwise swipe. + * The valid range is from -360 degrees to 360 degrees. If the absolute value of the sweep angle exceeds 360 degrees, + * an ellipse is drawn. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1294,22 +1480,27 @@ declare namespace drawing { drawArc(arc: common2D.Rect, startAngle: number, sweepAngle: number): void; /** - * Draws an arc with use center. - * @param { common2D.Rect } arc - The bounds of the arc is described by a rect. - * @param { number } startAngle - Indicates the startAngle of the arc. - * @param { number } sweepAngle - Indicates the sweepAngle of the arc. - * @param { boolean } useCenter - If true, include the center of the oval in the arc, and close it if it is being stroked. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * Draws an arc on the canvas. It enables you to define the start angle, sweep angle, + * and whether the arc's endpoints should connect to its center. + * @param { common2D.Rect } arc - Rectangular boundary that encapsulates the oval including the arc. + * @param { number } startAngle - Start angle, in degrees. The value is a floating point number. + * When the degree is 0, the start point is located at the right end of the oval. + * A positive number indicates that the start point is placed clockwise, + * and a negative number indicates that the start point is placed counterclockwise. + * @param { number } sweepAngle - Angle to sweep, in degrees. The value is a floating point number. + * A positive number indicates a clockwise sweep, and a negative value indicates a counterclockwise swipe. + * The swipe angle can exceed 360 degrees, and a complete ellipse is drawn. + * @param { boolean } useCenter - Whether the start point and end point of the arc are connected to its center. + * The value true means that they are connected to the center; the value false means the opposite. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ drawArcWithCenter(arc: common2D.Rect, startAngle: number, sweepAngle: number, useCenter: boolean): void; /** - * Draw a point. - * @param { number } x - X coordinate position of the point. - * @param { number } y - Y coordinate position of the point. + * Draws a point. + * @param { number } x - X coordinate of the point. The value is a floating point number. + * @param { number } y - Y coordinate of the point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1318,9 +1509,9 @@ declare namespace drawing { drawPoint(x: number, y: number): void; /** - * Draws point array as separate point, line segment or open polygon according to given point mode. - * @param { Array<common2D.Point> } points - Points array. - * @param { PointMode } mode - Draws points enum method. The default value is POINTS. + * Draws a group of points, line segments, or polygons on the canvas, with the specified drawing mode. An array is used to hold these points. + * @param { Array<common2D.Point> } points - Array that holds the points to draw. The length cannot be 0. + * @param { PointMode } mode - Mode in which the points are drawn. The default value is drawing.PointMode.POINTS. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -1329,8 +1520,8 @@ declare namespace drawing { drawPoints(points: Array<common2D.Point>, mode?: PointMode): void; /** - * Draws a path. - * @param { Path } path - Path to draw. + * Draws a custom path, which contains a set of path outlines. Each path outline can be open or closed. + * @param { Path } path - Path object to draw. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1339,11 +1530,12 @@ declare namespace drawing { drawPath(path: Path): void; /** - * Draws line segment from startPt to endPt. - * @param { number } x0 - X coordinate of the start point of the line segment. - * @param { number } y0 - Y coordinate of the start point of the line segment. - * @param { number } x1 - X coordinate of the end point of the line segment. - * @param { number } y1 - Y coordinate of the end point of the line segment. + * Draws a line segment from the start point to the end point. If the coordinates of the start point are the same as those of the end point, + * nothing is drawn. + * @param { number } x0 - X coordinate of the start point of the line segment. The value is a floating point number. + * @param { number } y0 - Y coordinate of the start point of the line segment. The value is a floating point number. + * @param { number } x1 - X coordinate of the end point of the line segment. The value is a floating point number. + * @param { number } y1 - Y coordinate of the end point of the line segment. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1352,11 +1544,14 @@ declare namespace drawing { drawLine(x0: number, y0: number, x1: number, y1: number): void; /** - * Draws a single character. - * @param { string } text - A string containing only a single character. + * Draws a single character. If the typeface of the current font does not support the character to draw, + * the system typeface is used to draw the character. + * @param { string } text - Single character to draw. The length of the string must be 1. * @param { Font } font - Font object. - * @param { number } x - X coordinate of the single character start point. - * @param { number } y - Y coordinate of the single character start point. + * @param { number } x - X coordinate of the left point (red point in the figure below) of the character baseline (blue line in the figure below). + * The value is a floating point number. + * @param { number } y - Y coordinate of the left point (red point in the figure below) of the character baseline (blue line in the figure below). + * The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -1365,10 +1560,12 @@ declare namespace drawing { drawSingleCharacter(text: string, font: Font, x: number, y: number): void; /** - * Draws a textBlob + * Draws a text blob. If the typeface used to construct blob does not support a character, that character will not be drawn. * @param { TextBlob } blob - TextBlob to draw. - * @param { number } x - X coordinate of the text start point. - * @param { number } y - Y coordinate of the text start point. + * @param { number } x - X coordinate of the left point (red point in the figure below) of the text baseline (blue line in the figure below). + * The value is a floating point number. + * @param { number } y - Y coordinate of the left point (red point in the figure below) of the text baseline (blue line in the figure below). + * The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1377,14 +1574,16 @@ declare namespace drawing { drawTextBlob(blob: TextBlob, x: number, y: number): void; /** - * Draws the pixelmap base on the mesh which is evenly distributed across the pixelmap. - * @param { image.PixelMap } pixelmap - The pixelmap to draw using the mesh. - * @param { number } meshWidth - The number of columns in the mesh. - * @param { number } meshHeight - The number of rows in the mesh. - * @param { Array<number> } vertices - Array of vertices, specifying where the mesh should be drawn. - * @param { number } vertOffset - Number of vert elements to skip before drawing. - * @param { Array<number> } colors - Array of colors, specifying a color at each vertex. - * @param { number } colorOffset - Number of color elements to skip before drawing. + * Draws a PixelMap based on a mesh, where mesh vertices are evenly distributed across the PixelMap. + * @param { image.PixelMap } pixelmap - PixelMap to draw. + * @param { number } meshWidth - Number of columns in the mesh. The value is an integer greater than 0. + * @param { number } meshHeight - Number of rows in the mesh. The value is an integer greater than 0. + * @param { Array<number> } vertices - Array of vertices, which specify the position to draw. + * The value is a floating-point array and the size must be ((meshWidth+1) * (meshHeight+1) + vertOffset) * 2. + * @param { number } vertOffset - Number of vert elements to skip before drawing. The value is an integer greater than or equal to 0. + * @param { Array<number> } colors - Array of colors, which specify the color at each vertex. + * The value is an integer array and can be null. The size must be (meshWidth+1) * (meshHeight+1) + colorOffset. + * @param { number } colorOffset - Number of color elements to skip before drawing. The value is an integer greater than or equal to 0. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1395,7 +1594,7 @@ declare namespace drawing { /** * Draws a region. - * @param { Region } region - Region object. + * @param { Region } region - Region to draw. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1404,8 +1603,8 @@ declare namespace drawing { drawRegion(region: Region): void; /** - * Set pen to a canvas. - * @param { Pen } pen - object. + * Attaches a pen to the canvas. When you draw on the canvas, the pen's style is used to outline shapes. + * @param { Pen } pen - Pen object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1414,8 +1613,8 @@ declare namespace drawing { attachPen(pen: Pen): void; /** - * Set brush to a canvas. - * @param { Brush } brush - Object. + * Attaches a brush to the canvas. When you draw on the canvas, the brush's style is used to fill the interior of shapes. + * @param { Brush } brush - Brush object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1424,33 +1623,35 @@ declare namespace drawing { attachBrush(brush: Brush): void; /** - * Unset pen to a canvas. + * Detaches the pen from the canvas. When you draw on the canvas, the pen is no longer used to outline shapes. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ detachPen(): void; /** - * Unset brush to a canvas. + * Detaches the brush from the canvas. When you draw on the canvas, the brush is no longer used to fill the interior of shapes. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ detachBrush(): void; /** - * Saves the current canvas status (canvas matrix) to the top of the stack. - * @returns { number } Return the number of saved states. + * Saves the canvas states (canvas matrix and drawable area) to the top of the stack. This API must be used in pair with restore. + * @returns { number } Number of canvas statuses. The value is a positive integer. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ save(): number; /** - * Saves matrix and clip, and allocates a bitmap for subsequent drawing. - * Calling restore discards changes to matrix and clip, and draws the bitmap. - * @param { common2D.Rect | null} rect - Optional layer size. The default value is null. - * @param { Brush | null} brush - Optional brush effect used to draw the layer. The default value is null. - * @returns { number } Return the number of saved states before this call. + * Saves the matrix and cropping region of the canvas, and allocates a PixelMap for subsequent drawing. + * If you call restore, changes made to the matrix and clipping region are discarded, and the PixelMap is drawn. + * @param { common2D.Rect | null} rect - Rect object, which is used to limit the size of the graphics layer. + * The default value is the current canvas size. + * @param { Brush | null} brush - Brush object. The alpha value, filter effect, and blend mode of the brush are applied when the PixelMap is drawn. + * If null is passed in, no effect is applied. + * @returns { number } Number of canvas statuses that have been saved. The value is a positive integer. * @throws { BusinessError } 401 - Parameter error. Possible causes: Mandatory parameters are left unspecified. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1458,8 +1659,8 @@ declare namespace drawing { saveLayer(rect?: common2D.Rect | null, brush?: Brush | null): number; /** - * Clears a canvas by using a specified color. - * @param { common2D.Color } color - Indicates the color, which is a 32-bit (ARGB) variable. + * Clears the canvas with a given color. This API has the same effect as drawColor. + * @param { common2D.Color } color - Color in ARGB format. The value of each color channel is an integer ranging from 0 to 255. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1468,25 +1669,25 @@ declare namespace drawing { clear(color: common2D.Color): void; /** - * Clears a canvas by using a specified color represented by ARGB color of hexadecimal format. - * @param { common2D.Color | number } color - Number must be ARGB color of hexadecimal format. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * Clears the canvas with a given color. + * @param { common2D.Color | number } color - Color, represented by an unsigned integer in hexadecimal ARGB format. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ clear(color: common2D.Color | number): void; /** - * Restores the canvas status (canvas matrix) saved on the top of the stack. + * Restores the canvas state (canvas matrix and clipping area) saved on the top of the stack. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ restore(): void; /** - * Restores the specific number of the canvas status (canvas matrix) saved in the stack. - * @param { number } count - Depth of state stack to restore. + * Restores the canvas state (canvas matrix and clipping area) to a specified number. + * @param { number } count - Depth of the canvas statuses to restore. + * The value is an integer. If the value is less than or equal to 1, the canvas is restored to the initial state. + * If the value is greater than the number of canvas statuses that have been saved, no operation is performed. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1495,31 +1696,31 @@ declare namespace drawing { restoreToCount(count: number): void; /** - * Gets the number of the canvas status (canvas matrix) saved in the stack. - * @returns { number } Return represent depth of save state stack. + * Obtains the number of canvas states (canvas matrix and clipping area) saved in the stack. + * @returns { number } Number of canvas statuses that have been saved. The value is a positive integer. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getSaveCount(): number; /** - * Gets the width of a canvas. - * @returns { number } Return the width of a canvas. + * Obtains the canvas width. + * @returns { number } Canvas width. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getWidth(): number; /** - * Gets the height of a canvas. - * @returns { number } Return the height of a canvas. + * Obtains the canvas height. + * @returns { number } Canvas height. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getHeight(): number; /** - * Gets the bounds of clip of a canvas. + * Obtains the bounds of the cropping region of the canvas. * @returns { common2D.Rect } Rect object. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1527,17 +1728,18 @@ declare namespace drawing { getLocalClipBounds(): common2D.Rect; /** - * Gets a 3x3 matrix of the transform from local coordinates to 'device'. - * @returns { Matrix } Matrix object. + * Obtains the canvas matrix. + * @returns { Matrix } Canvas matrix. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getTotalMatrix(): Matrix; /** - * Scales by sx on the x-axis and sy on the y-axis. - * @param { number } sx - Indicates the amount to scale on x-axis. - * @param { number } sy - Indicates the amount to scale on y-axis. + * Applies a scaling matrix on top of the current canvas matrix (identity matrix by default). + * Subsequent drawing and clipping operations will automatically have a scaling effect applied to the shapes and positions. + * @param { number } sx - Scale ratio on the X axis. The value is a floating point number. + * @param { number } sy - Scale ratio on the Y axis. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1546,9 +1748,14 @@ declare namespace drawing { scale(sx: number, sy: number): void; /** - * Skews by sx on the x-axis and sy on the y-axis. - * @param { number } sx - Indicates the value skew transformation on x-axis. - * @param { number } sy - Indicates the value skew transformation on y-axis. + * Applies a skewing matrix on top of the current canvas matrix (identity matrix by default). + * Subsequent drawing and clipping operations will automatically have a skewing effect applied to the shapes and positions. + * @param { number } sx - Amount of tilt on the X axis. The value is a floating point number. + * A positive number tilts the drawing rightwards along the positive direction of the Y axis, + * and a negative number tilts the drawing leftwards along the positive direction of the Y axis. + * @param { number } sy - Amount of tilt on the Y axis. The value is a floating point number. + * A positive number tilts the drawing downwards along the positive direction of the X axis, + * and a negative number tilts the drawing upwards along the positive direction of the X axis. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1557,10 +1764,12 @@ declare namespace drawing { skew(sx: number, sy: number) : void; /** - * Rotates by degrees, positive degrees rotates clockwise. - * @param { number } degrees - Indicates the amount to rotate, in degrees. - * @param { number } sx - Indicates the x-axis value of the point to rotate about. - * @param { number } sy - Indicates the y-axis value of the point to rotate about. + * Applies a rotation matrix on top of the current canvas matrix (identity matrix by default). + * Subsequent drawing and clipping operations will automatically have a rotation effect applied to their shapes and positions. + * @param { number } degrees - Angle to rotate, in degrees. The value is a floating point number. + * A positive value indicates a clockwise rotation, and a negative value indicates a counterclockwise rotation. + * @param { number } sx - X coordinate of the rotation center. The value is a floating point number. + * @param { number } sy - Y coordinate of the rotation center. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1569,9 +1778,10 @@ declare namespace drawing { rotate(degrees: number, sx: number, sy: number) : void; /** - * Translates by dx along the x-axis and dy along the y-axis. - * @param { number } dx - Indicates the distance to translate on x-axis. - * @param { number } dy - Indicates the distance to translate on y-axis. + * Applies a translation matrix on top of the current canvas matrix (identity matrix by default). + * Subsequent drawing and clipping operations will automatically have a translation effect applied to the shapes and positions. + * @param { number } dx - Distance to translate on the X axis. The value is a floating point number. + * @param { number } dy - Distance to translate on the Y axis. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1580,11 +1790,11 @@ declare namespace drawing { translate(dx: number, dy: number): void; /** - * Replaces the clipping area with the intersection or difference of the current clipping area and path, - * and use a clipping edge that is aliased or anti-aliased. + * Clips the drawable area of the canvas using a custom path. * @param { Path } path - To combine with clip. - * @param { ClipOp } clipOp - Indicates the operation to apply to clip. The default value is intersect. - * @param { boolean } doAntiAlias - True if clip is to be anti-aliased. The default value is false. + * @param { ClipOp } clipOp - Clip mode. The default value is INTERSECT. + * @param { boolean } doAntiAlias - Whether to enable anti-aliasing. The value true means to enable anti-aliasing, + * and false means the opposite. The default value is false. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1593,11 +1803,11 @@ declare namespace drawing { clipPath(path: Path, clipOp?: ClipOp, doAntiAlias?: boolean): void; /** - * Replaces the clipping area with the intersection or difference between the - * current clipping area and Rect, and use a clipping edge that is aliased or anti-aliased. + * Clips the drawable area of the canvas using a rectangle. * @param { common2D.Rect } rect - To combine with clipping area. - * @param { ClipOp } clipOp - Indicates the operation to apply to clip. The default value is intersect. - * @param { boolean } doAntiAlias - True if clip is to be anti-aliased. The default value is false. + * @param { ClipOp } clipOp - Clip mode. The default value is INTERSECT. + * @param { boolean } doAntiAlias - Whether to enable anti-aliasing. The value true means to enable anti-aliasing, + * and false means the opposite. The default value is false. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1606,7 +1816,8 @@ declare namespace drawing { clipRect(rect: common2D.Rect, clipOp?: ClipOp, doAntiAlias?: boolean): void; /** - * Uses the passed matrix to transforming the geometry, then use existing matrix. + * Multiplies the current canvas matrix by the incoming matrix on the left. This API does not affect previous drawing operations, + * but subsequent drawing and clipping operations will be influenced by this matrix in terms of shape and position. * @param { Matrix } matrix - Declares functions related to the matrix object in the drawing module. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -1616,10 +1827,9 @@ declare namespace drawing { concatMatrix(matrix: Matrix): void; /** - * Replace the clipping area with the intersection or difference of the - * current clipping area and Region, and use a clipping edge that is aliased or anti-aliased. - * @param { Region } region - Region object. - * @param { ClipOp } clipOp - Indicates the operation to apply to clip. The default value is intersect. + * Clips a region on the canvas. + * @param { Region } region - Region object, which indicates the range to clip. + * @param { ClipOp } clipOp - Clipping mode. The default value is INTERSECT. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1628,11 +1838,11 @@ declare namespace drawing { clipRegion(region: Region, clipOp?: ClipOp): void; /** - * Replaces the clipping area with the intersection or difference between the - * current clipping area and RoundRect, and use a clipping edge that is aliased or anti-aliased. + * Clips a rounded rectangle on the canvas. * @param { RoundRect } roundRect - To combine with clipping area. - * @param { ClipOp } clipOp - Indicates the operation to apply to clip. The default value is intersect. - * @param { boolean } doAntiAlias - True if clip is to be anti-aliased. The default value is false. + * @param { ClipOp } clipOp - Clipping mode. The default value is INTERSECT. + * @param { boolean } doAntiAlias - Whether to enable anti-aliasing. The value true means to enable anti-aliasing, + * and false means the opposite. The default value is false. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1641,7 +1851,7 @@ declare namespace drawing { clipRoundRect(roundRect: RoundRect, clipOp?: ClipOp, doAntiAlias?: boolean): void; /** - * Checks whether the drawable area is empty. + * Checks whether the region that can be drawn is empty after clipping. * @returns { boolean } Returns true if drawable area is empty. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1649,7 +1859,7 @@ declare namespace drawing { isClipEmpty(): boolean; /** - * Sets matrix of canvas. + * Sets a matrix for the canvas. Subsequent drawing and clipping operations will be affected by this matrix in terms of shape and position. * @param { Matrix } matrix - Declares functions related to the matrix object in the drawing module. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -1659,29 +1869,25 @@ declare namespace drawing { setMatrix(matrix: Matrix): void; /** - * Sets matrix of canvas to the identity matrix. + * Resets the matrix of this canvas to an identity matrix. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ resetMatrix(): void; /** - * Determines whether path is intersect with current clip area. + * Checks whether the path is not intersecting with the canvas area. The canvas area includes its boundaries. * @param { Path } path - Path to draw. * @returns { boolean } Returns true if path is not intersect; returns false otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ quickRejectPath(path: Path): boolean; /** - * Determines whether rect is intersect with current clip area. + * Checks whether the rectangle is not intersecting with the canvas area. The canvas area includes its boundaries. * @param { common2D.Rect } rect - Rectangle to determines. * @returns { boolean } Returns true if rect and region is not intersect; returns false otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ @@ -1689,7 +1895,7 @@ declare namespace drawing { } /** - * Enumerates clip operations. + * Enumerates the canvas clipping modes. * * @enum { number } * @syscap SystemCapability.Graphics.Drawing @@ -1697,13 +1903,13 @@ declare namespace drawing { */ enum ClipOp { /** - * Clips with difference. + * Clips a specified area. That is, the difference set is obtained. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ DIFFERENCE = 0, /** - * Clips with intersection. + * Retains a specified area. That is, the intersection is obtained. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -1711,28 +1917,28 @@ declare namespace drawing { } /** - * Provide a description of the type and position of the text. + * Describes a series of consecutive glyphs with the same attributes in a text blob. * @typedef TextBlobRunBuffer * @syscap SystemCapability.Graphics.Drawing * @since 11 */ interface TextBlobRunBuffer { /** - * Text model. + * Index of the glyph. The value is an integer. If a floating point number is passed in, the value is rounded down. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ glyph: number; /** - * X-coordinate of the text start point. + * X coordinate of the start point of the text blob. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ positionX: number; /** - * Y-coordinate of the text start point. + * Y coordinate of the start point of the text blob. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 @@ -1741,7 +1947,7 @@ declare namespace drawing { } /** - * Encoding type of the description text. + * Enumerates the text encoding types. * * @enum { number } * @syscap SystemCapability.Graphics.Drawing @@ -1749,25 +1955,25 @@ declare namespace drawing { */ enum TextEncoding { /** - * Use 1 byte to represent UTF-8 or ASCII + * One byte is used to indicate UTF-8 or ASCII characters. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ TEXT_ENCODING_UTF8 = 0, /** - * Use 2 bytes to represent most of unicode + * Two bytes are used to indicate most Unicode characters. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ TEXT_ENCODING_UTF16 = 1, /** - * Use 4 bytes to represent all unicode. + * Four bytes are used to indicate all Unicode characters. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ TEXT_ENCODING_UTF32 = 2, /** - * Use 2 bytes to represent the glyph index. + * Two bytes are used to indicate the glyph index. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ @@ -1775,7 +1981,7 @@ declare namespace drawing { } /** - * Provide a description of the text + * Defines a block consisting of one or more characters with the same font. * * class TextBlob * @syscap SystemCapability.Graphics.Drawing @@ -1783,10 +1989,11 @@ declare namespace drawing { */ class TextBlob { /** - * Create a textblob from a string - * @param { string } text - Drawn glyph content. + * Converts a value of the string type into a TextBlob object. + * @param { string } text - Content to be used for drawing the text blob. * @param { Font } font - Specify text size, font, text scale, etc. - * @param { TextEncoding } encoding - The default value is TEXT_ENCODING_UTF8. + * @param { TextEncoding } encoding - Encoding type. The default value is TEXT_ENCODING_UTF8. + * Currently, only TEXT_ENCODING_UTF8 takes effect, and other encoding types are treated as TEXT_ENCODING_UTF8. * @returns { TextBlob } TextBlob object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -1797,10 +2004,12 @@ declare namespace drawing { static makeFromString(text: string, font: Font, encoding?: TextEncoding): TextBlob; /** - * Create a textblob from a string, each element of which is located at the given positions. - * @param { string } text - Drawn glyph content. - * @param { number } len - string length, value must equal to points length. - * @param { common2D.Point[] } points - Position coordinates of a textblob elements. + * Creates a TextBlob object from the text. + * The coordinates of each font in the TextBlob object are determined by the coordinate information in the points array. + * @param { string } text - Content to be used for drawing the text blob. + * @param { number } len - Number of fonts. The value is an integer and is obtained from countText. + * @param { common2D.Point[] } points - Array of points, which are used to specify the coordinates of each font. + * The array length must be the same as the value of len. * @param { Font } font - Specify text size, font, text scale, etc. * @returns { TextBlob } TextBlob object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1812,7 +2021,7 @@ declare namespace drawing { static makeFromPosText(text: string, len: number, points: common2D.Point[], font: Font): TextBlob; /** - * Creating a textblob object based on RunBuffer information + * Creates a Textblob object based on the RunBuffer information. * @param { Array<TextBlobRunBuffer> } pos - The array of TextBlobRunBuffer. * @param { Font } font - Font used for this run. * @param { common2D.Rect } bounds - Optional run bounding box. The default value is null; @@ -1826,7 +2035,7 @@ declare namespace drawing { static makeFromRunBuffer(pos: Array<TextBlobRunBuffer>, font: Font, bounds?: common2D.Rect): TextBlob; /** - * Returns the bounding rectangle shape + * Obtains the rectangular bounding box of the text blob. * @returns { common2D.Rect } Rect object. * @syscap SystemCapability.Graphics.Drawing * @since 11 @@ -1834,23 +2043,51 @@ declare namespace drawing { bounds(): common2D.Rect; /** - * Returns an unique identifier for a textblob. - * @returns { number } Unique ID. + * Obtains the unique, non-zero identifier of this TextBlob object. + * @returns { number } Unique, non-zero identifier of this TextBlob object. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ uniqueID(): number; + + + } + + /** + * Provides an interface to the drawing, and describe the arguments for a font. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + class TypefaceArguments { + /** + * Constructor for the TypefaceArguments. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + constructor(); + /** + * Adds variation axis for the TypefaceArguments. + * @param { string } axis - Indicates the axis tag, which must contain four ASCII characters. + * @param { number } value - Indicates the value of the axis field. + * @throws { BusinessError } 25900001 - Parameter error. Possible causes: Incorrect parameter range. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + addVariation(axis: string, value: number); } /** - * The Typeface class specifies the typeface and intrinsic style of a font. + * Describes the style of a typeface, such as SimSun or KaiTi. * * @syscap SystemCapability.Graphics.Drawing * @since 11 */ class Typeface { /** - * Get the family name for this typeface. + * Obtains the name of the typeface family, which is the name given to a collection of related typeface designs. * @returns { string } Family name. * @syscap SystemCapability.Graphics.Drawing * @since 11 @@ -1858,7 +2095,17 @@ declare namespace drawing { getFamilyName(): string; /** - * Generate typeface from file. + * Generate typeface from current typeface and TypefaceArguments. + * @param { TypefaceArguments } typefaceArguments - TypefaceArguments for typeface. + * @returns { Typeface } Typeface. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + makeFromCurrent(typefaceArguments: TypefaceArguments): Typeface; + + /** + * Constructs a typeface from a file. * @param { string } filePath - file path for typeface. * @returns { Typeface } Typeface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1869,19 +2116,45 @@ declare namespace drawing { static makeFromFile(filePath: string): Typeface; /** - * Generate typeface from Rawfile. - * @param { Resource } rawfile - RawFile for typeface. + * Constructs a typeface from a file, which must be stored in the resources/rawfile directory of the application project. + * @param { Resource } rawfile - Resource object corresponding to the file. + * Currently, only resource objects referenced in rawfile format are supported. + * The corresponding format is rawfile('filePath'), where filePath is the relative path of the file to the resources/rawfile directory in the project. + * If the file is stored in resources/rawfile, the reference format is rawfile('HarmonyOS_Sans_Bold.ttf'). + * If the file is stored in a subdirectory, for example, in resources/rawfile/ttf, the reference format is rawfile('ttf/HarmonyOS_Sans_Bold.ttf'). * @returns { Typeface } Typeface. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ static makeFromRawFile(rawfile: Resource): Typeface; + + /** + * Generate typeface from file and TypefaceArguments. + * @param { string } filePath - file path for typeface. + * @param { TypefaceArguments } typefaceArguments - TypefaceArguments for typeface. + * @returns { Typeface } Typeface. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static makeFromFileWithArguments(filePath: string, typefaceArguments: TypefaceArguments): Typeface; + + /** + * Generate typeface from Rawfile and TypefaceArguments. + * @param { Resource } rawfile - RawFile for typeface. + * @param { TypefaceArguments } typefaceArguments - TypefaceArguments for typeface. + * @returns { Typeface } Typeface. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static makeFromRawFileWithArguments(rawfile: Resource, typefaceArguments: TypefaceArguments): Typeface; } /** - * Enumerates text edging types. + * Enumerates the font edging types. * * @enum { number } * @syscap SystemCapability.Graphics.Drawing @@ -1889,21 +2162,21 @@ declare namespace drawing { */ enum FontEdging { /** - * Uses anti aliasing, default value. + * No anti-aliasing processing is used. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ ALIAS = 0, /** - * Uses sub-pixel anti aliasing. + * Uses anti-aliasing to smooth the jagged edges. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ ANTI_ALIAS = 1, /** - * Uses sub-pixel anti aliasing and enable sub-pixel localization. + * Uses sub-pixel anti-aliasing to provide a smoother effect for jagged edges. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -1911,7 +2184,7 @@ declare namespace drawing { } /** - * Enumerates text hinting types. + * Enumerates the font hinting types. * * @enum { number } * @syscap SystemCapability.Graphics.Drawing @@ -1919,28 +2192,28 @@ declare namespace drawing { */ enum FontHinting { /** - * Not use text hinting. + * No font hinting is used. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ NONE = 0, /** - * Uses slight text hinting. + * Slight font hinting is used to improve contrast. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ SLIGHT = 1, /** - * Uses normal text hinting. + * Normal font hinting is used to improve contrast. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ NORMAL = 2, /** - * Uses full text hinting. + * Full font hinting is used to improve contrast. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -1948,15 +2221,16 @@ declare namespace drawing { } /** - * Font controls options applied when drawing and measuring text. + * Describes the attributes used for text rendering, such as size and typeface. * * @syscap SystemCapability.Graphics.Drawing * @since 11 */ class Font { /** - * Requests, but does not require, that glyphs respect sub-pixel positioning. - * @param { boolean } isSubpixel - Setting for sub-pixel positioning. + * Enables subpixel font rendering. + * @param { boolean } isSubpixel - Whether to enable subpixel font rendering. + * The value true means to enable subpixel font rendering, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1965,8 +2239,9 @@ declare namespace drawing { enableSubpixel(isSubpixel: boolean): void; /** - * Increases stroke width when creating glyph bitmaps to approximate a bold typeface. - * @param { boolean } isEmbolden - Setting for bold approximation. + * Enables emboldened fonts. + * @param { boolean } isEmbolden - Whether to enable emboldened fonts. + * The value true means to enable emboldened fonts, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1975,8 +2250,9 @@ declare namespace drawing { enableEmbolden(isEmbolden: boolean): void; /** - * Requests linearly scalable font and glyph metrics. - * @param { boolean } isLinearMetrics - Setting for linearly scalable font and glyph metrics. + * Enables linear font scaling. + * @param { boolean } isLinearMetrics - Whether to enable linear font scaling. + * The value true means to enable linear font scaling, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -1985,8 +2261,9 @@ declare namespace drawing { enableLinearMetrics(isLinearMetrics: boolean): void; /** - * Sets text size in points. Has no effect if textSize is not greater than or equal to zero. - * @param { number } textSize - Typographic height of text. The height of the text must be greater than 0. + * Sets the font size. + * @param { number } textSize - Font size. The value is a floating point number. + * If a negative number is passed in, the size is set to 0. If the size is 0, the text drawn will not be displayed. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -1995,16 +2272,16 @@ declare namespace drawing { setSize(textSize: number): void; /** - * Obtains the text size. - * @returns { number } Text size. + * Obtains the font size. + * @returns { number } Font size. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ getSize(): number; /** - * Sets Typeface to font. - * @param { Typeface } typeface - Font and style used to draw text. + * Sets the typeface style (including attributes such as font name, weight, and italic) for the font. + * @param { Typeface } typeface - Typeface style (including attributes such as font name, weight, and italic). * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -2013,15 +2290,15 @@ declare namespace drawing { setTypeface(typeface: Typeface): void; /** - * Get Typeface to font. - * @returns { Typeface } Typeface. + * Obtains the typeface. + * @returns { Typeface } Typeface object. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ getTypeface(): Typeface; /** - * Get fontMetrics associated with typeface. + * Obtains the font metrics of the typeface. * @returns { FontMetrics } The fontMetrics value returned to the caller. * @syscap SystemCapability.Graphics.Drawing * @since 11 @@ -2029,20 +2306,22 @@ declare namespace drawing { getMetrics(): FontMetrics; /** - * Measure a single character. - * @param { string } text - A string containing only a single character. - * @returns { number } The width of the single character. + * Measures the width of a single character. + * If the typeface of the current font does not support the character to measure, the system typeface is used to measure the character width. + * @param { string } text - Single character to measure. The length of the string must be 1. + * @returns { number } Width of the character. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ measureSingleCharacter(text: string): number; + /** - * Measure the width of text. + * Measures the text width. * @param { string } text - Text Symbol Content. * @param { TextEncoding } encoding - Encoding format. - * @returns { number } The width of text. + * @returns { number } Width of the text. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -2051,8 +2330,8 @@ declare namespace drawing { measureText(text: string, encoding: TextEncoding): number; /** - * Sets text scale on x-axis to font. - * @param { number } scaleX - Text scaleX. + * Sets a horizontal scale factor for this font. + * @param { number } scaleX - Horizontal scale factor. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -2061,8 +2340,9 @@ declare namespace drawing { setScaleX(scaleX: number): void; /** - * Sets text skew on x-axis to font. - * @param { number } skewX - Text skewX. + * Sets a horizontal skew factor for this font. + * @param { number } skewX - Horizontal skew factor. + * A positive number means a skew to the left, and a negative number means a skew to the right. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -2071,8 +2351,8 @@ declare namespace drawing { setSkewX(skewX: number): void; /** - * Sets the edging effect to font. - * @param { FontEdging } edging - Text edging. + * Sets a font edging effect. + * @param { FontEdging } edging - Font edging effect. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -2081,8 +2361,8 @@ declare namespace drawing { setEdging(edging: FontEdging): void; /** - * Sets the hinting pattern to font. - * @param { FontHinting } hinting - Text hinting. + * Sets a font hinting effect. + * @param { FontHinting } hinting - Font hinting effect. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -2091,7 +2371,7 @@ declare namespace drawing { setHinting(hinting: FontHinting): void; /** - * Calculates number of glyphs represented by text. + * Obtains the number of glyphs represented by text. * @param { string } text - Indicates the character storage encoded with text encoding. * @returns { number } Returns the count of text. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -2102,8 +2382,9 @@ declare namespace drawing { countText(text: string): number; /** - * Sets whether the font baselines and pixels alignment when the transformation matrix is ​​axis aligned. - * @param { boolean } isBaselineSnap - Indicates whether the font baselines and pixels alignment. + * Sets whether to request that baselines be snapped to pixels when the current canvas matrix is axis aligned. + * @param { boolean } isBaselineSnap - Whether to request that baselines be snapped to pixels. + * The value true means to request that baselines be snapped to pixels, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -2112,16 +2393,18 @@ declare namespace drawing { setBaselineSnap(isBaselineSnap: boolean): void; /** - * Gets whether the font baselines and pixels alignment when the transformation matrix is ​​axis aligned. - * @returns { boolean } Returns true if the font baselines and pixels alignment; returns false otherwise. + * Checks whether baselines are requested to be snapped to pixels when the current canvas matrix is axis aligned. + * @returns { boolean } Check result. The value true means that the baselines are requested to be snapped to pixels, + * and false means the opposite. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ isBaselineSnap(): boolean; /** - * Sets whether to use bitmaps instead of outlines in the object. - * @param { boolean } isEmbeddedBitmaps - Indicates whether to use bitmaps instead of outlines. + * Sets whether to use bitmaps in this font. + * @param { boolean } isEmbeddedBitmaps - Whether to use bitmaps in the font. The value true means to use bitmaps in the font, + * and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -2130,16 +2413,17 @@ declare namespace drawing { setEmbeddedBitmaps(isEmbeddedBitmaps: boolean): void; /** - * Gets whether to use bitmaps instead of outlines in the object. - * @returns { boolean } if using bitmaps instead of outlines; returns false otherwise. + * Checks whether bitmaps are used in this font. + * @returns { boolean } Check result. The value true means that the bitmaps are used, and false means the opposite. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ isEmbeddedBitmaps(): boolean; /** - * Sets whether the font outline is automatically adjusted. - * @param { boolean } isForceAutoHinting - Indicates whether the font outline is automatically adjusted. + * Sets whether to forcibly use auto hinting, that is, whether to always hint glyphs. + * @param { boolean } isForceAutoHinting - Whether to forcibly use auto hinting. The value true means to forcibly use auto hinting, + * and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -2148,17 +2432,17 @@ declare namespace drawing { setForceAutoHinting(isForceAutoHinting: boolean): void; /** - * Gets whether the font outline is automatically adjusted. - * @returns { boolean } Returns true if the font outline is automatically adjusted; returns false otherwise. + * Checks whether auto hinting is forcibly used. + * @returns { boolean } Check result. The value true means that auto hinting is forcibly used, and false means the opposite. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ isForceAutoHinting(): boolean; /** - * Retrieves the advance for each glyph in glyphs. - * @param { Array<number> } glyphs - Array of glyph indices to be measured. - * @returns { Array<number> } Returns the width of each character in a string. + * Obtains the width of each glyph in an array. + * @param { Array<number> } glyphs - Glyph array, which can be generated by textToGlyphs. + * @returns { Array<number> } Glyph array, which can be generated by textToGlyphs. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -2167,9 +2451,10 @@ declare namespace drawing { getWidths(glyphs: Array<number>): Array<number>; /** - * Gets storage for glyph indexes. - * @param { string } text - Indicates the character storage encoded with text encoding. - * @param { number } glyphCount - The number of glyph. The default value is the result of calling countText. + * Converts text into glyph indexes. + * @param { string } text - Text string. + * @param { number } glyphCount - Number of glyphs represented by the text. The value must be the same as the value obtained from countText. + * The default value is the number of characters in the text string. The value is an integer. * @returns { Array<number> } Returns the storage for glyph indices. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -2179,86 +2464,92 @@ declare namespace drawing { textToGlyphs(text: string, glyphCount?: number): Array<number>; /** - * Returns true if glyphs may be drawn at sub-pixel offsets. - * @returns { boolean } True if glyphs may be drawn at sub-pixel offsets. + * Checks whether sub-pixel rendering is used for this font. + * @returns { boolean } Check result. The value true means that sub-pixel rendering is used, and false means the opposite. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ isSubpixel(): boolean; + /** - * Returns true if font and glyph metrics are requested to be linearly scalable. - * @returns { boolean } True if font and glyph metrics are requested to be linearly scalable. + * Checks whether linear scaling is used for this font. + * @returns { boolean } Checks whether linear scaling is used for this font. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ isLinearMetrics(): boolean; + /** - * Returns text skew on x-axis. - * @returns { number } Additional shear on x-axis relative to y-axis. + * Obtains the horizontal skew factor of this font. + * @returns { number } Horizontal skew factor. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getSkewX(): number; + /** - * Gets whether to increase the stroke width to approximate bold fonts. - * @returns { boolean } Returns true to increase the stroke width to approximate bold fonts; + * Checks whether the bold effect is set for this font. + * @returns { boolean } Check result. The value true means that the bold effect is set, and false means the opposite. * returns false otherwise. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ isEmbolden(): boolean; + /** - * Returns text scale on x-axis. - * @returns { number } Text horizontal scale. + * Obtains the horizontal scale ratio of this font. + * @returns { number } Horizontal scale ratio. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getScaleX(): number; + /** - * Gets font hinting pattern. - * @returns { FontHinting } Font hinting level. + * Obtains the font hinting effect. + * @returns { FontHinting } Font hinting effect. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getHinting(): FontHinting; + /** - * Gets font edge pixels pattern. - * @returns { FontEdging } Edge pixels pattern. + * Obtains the font edging effect. + * @returns { FontEdging } Font edging effect. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getEdging(): FontEdging; + /** - * Create path object of specified Glyph. - * @param { number } index - the index of Glyphs. - * @returns { Path } The path object for specified glyph, undefined if not found. + * Obtains the outline path of a glyph. + * @param { number } index - Index of the glyph. + * @returns { Path } Outline path of the glyph. * Note: Path use y-axis-goes-down system, y axis is inverted to the y-axis-goes-up system. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ createPathForGlyph(index: number): Path; + /** - * Retrieves the bounding rect for each glyph in glyphs. - * @param { Array<number> } glyphs - Indicates the array of glyph indices to be measured. - * @returns { Array<common2D.Rect> } Returns bounds for each glyph relative to (0, 0). + * Obtains the rectangular bounding box of each glyph in an array. + * @param { Array<number> } glyphs - Glyph array, which can be generated by textToGlyphs. + * @returns { Array<common2D.Rect> } Array that holds the rectangular bounding boxes. * Note: 1. Rect use y-axis-goes-down system, y axis is inverted to the y-axis-goes-up system. * <br>2. Rect use two points(left-bottom & right-top) to describe the bound. * <br>3. The bound rect will be snap to integral boundaries. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getBounds(glyphs: Array<number>): Array<common2D.Rect>; + /** - * Get path of text. - * @param { string } text - Indicates the character storage encoded with text encoding. - * @param { number } byteLength - Indicates the byte length of the text. - * @param { number } x - Indicates X coordinate for the starting position of the text within the drawing area. - * @param { number } y - Indicates Y coordinate for the starting position of the text within the drawing area. - * @returns { Path } The path object for Glyph. + * Obtains the outline path of a text. + * @param { string } text - UTF-8 text-encoded characters. + * @param { number } byteLength - Length of the outline path, + * which is obtained based on the minimum value between the passed value of byteLength and the actual text byte size. + * @param { number } x - X coordinate of the text in the drawing area, with the origin as the start point. + * @param { number } y - Y coordinate of the text in the drawing area, with the origin as the start point. + * @returns { Path } Outline path of the text. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -2267,8 +2558,10 @@ declare namespace drawing { getTextPath(text: string, byteLength: number, x: number, y: number): Path; /** - * Sets whether to follow the theme font. If the value is true, the theme font is used when typeface is not set. - * @param { boolean } followed - Indicates whether to follow the theme font. + * Sets whether to follow the theme font. When followed is set to true, + * the theme font is used if it is enabled by the system and no typeface is set. + * @param { boolean } followed - Whether to follow the theme font. + * The value true means to follow the theme font, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -2277,8 +2570,8 @@ declare namespace drawing { setThemeFontFollowed(followed: boolean): void; /** - * Gets whether to follow the theme font. - * @returns { boolean } Returns true if font follows theme font; returns false otherwise. + * Checks whether the font follows the theme font. By default, the font follows the theme font. + * @returns { boolean } Check result. The value true means that the theme font is followed, and false means the opposite. * @syscap SystemCapability.Graphics.Drawing * @since 15 */ @@ -2286,43 +2579,42 @@ declare namespace drawing { } /** - * Indicate when certain metrics are valid; the underline or strikeout metrics may be valid and zero. - * Fonts with embedded bitmaps may not have valid underline or strikeout metrics. + * Enumerates the font measurement flags, which is used to specify whether a field in the font measurement information is valid. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum FontMetricsFlags { /** - * Set if underlineThickness of FontMetrics is valid. + * The underlineThickness field in the FontMetrics struct is valid. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ UNDERLINE_THICKNESS_VALID = 1 << 0, /** - * Set if underlinePosition of FontMetrics is valid. + * The underlinePosition field in the FontMetrics struct is valid. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ UNDERLINE_POSITION_VALID = 1 << 1, /** - * Set if strikethroughThickness of FontMetrics is valid. + * The strikethroughThickness field in the FontMetrics struct is valid. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ STRIKETHROUGH_THICKNESS_VALID = 1 << 2, /** - * Set if strikethroughPosition of FontMetrics is valid. + * The strikethroughPosition field in the FontMetrics struct is valid. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ STRIKETHROUGH_POSITION_VALID = 1 << 3, /** - * set if top, bottom, xMin, xMax of FontMetrics invalid. + * The boundary metrics (such as top, bottom, xMin, and xMax) in the FontMetrics struct are invalid. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -2330,14 +2622,14 @@ declare namespace drawing { } /** - * The metrics of an Font. + * Describes the attributes that describe the font size and layout. A typeface has similar font metrics. * @typedef FontMetrics * @syscap SystemCapability.Graphics.Drawing * @since 11 */ interface FontMetrics { /** - * Indicating which metrics are valid. + * Font measurement flags that are valid. * @type { ?FontMetricsFlags } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2345,42 +2637,43 @@ declare namespace drawing { flags?: FontMetricsFlags; /** - * Maximum range above the glyph bounding box. + * Maximum distance from the baseline to the highest coordinate of the text. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ top: number; /** - * Distance Retained Above Baseline. + * Distance from the baseline to the highest coordinate of the text. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ ascent: number; /** - * The distance that remains below the baseline. + * Distance from the baseline to the lowest coordinate of the text. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ descent: number; /** - * Maximum range below the glyph bounding box. + * Maximum distance from the baseline to the lowest coordinate of the text. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ bottom: number; /** - * Line Spacing. + * Interline spacing, that is, the distance from the descent of one line of text to the ascent of the next line. + * The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 11 */ leading: number; /** - * Average character width, zero if unknown. + * Average character width. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2388,7 +2681,7 @@ declare namespace drawing { avgCharWidth?: number; /** - * Maximum character width, zero if unknown. + * Maximum character width. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2396,7 +2689,8 @@ declare namespace drawing { maxCharWidth?: number; /** - * Greatest extent to left of origin of any glyph bounding box, typically negative; deprecated with variable fonts. + * Horizontal distance from the leftmost edge of any glyph bounding box to the origin. + * This value is usually less than 0, indicating the minimum horizontal coordinate across all glyph bounding boxes. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2404,7 +2698,7 @@ declare namespace drawing { xMin?: number; /** - * Greatest extent to right of origin of any glyph bounding box, typically positive; deprecated with variable fonts. + * Horizontal distance from the rightmost edge of any glyph bounding box to the origin. The value is a positive number, indicating the maximum horizontal coordinate across all glyph bounding boxes. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2412,7 +2706,7 @@ declare namespace drawing { xMax?: number; /** - * Height of lower-case 'x', zero if unknown, typically negative. + * Height of the lowercase letter x. The value is usually a negative value. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2420,7 +2714,7 @@ declare namespace drawing { xHeight?: number; /** - * Height of an upper-case letter, zero if unknown, typically negative. + * Height of a capital letter. The value is usually a negative value. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2428,7 +2722,7 @@ declare namespace drawing { capHeight?: number; /** - * Underline thickness. + * Thickness of the underline. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2436,7 +2730,7 @@ declare namespace drawing { underlineThickness?: number; /** - * Distance from baseline to top of stroke, typically positive. + * Vertical distance from the baseline to the top of the underline. The value is usually a positive number. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2444,7 +2738,7 @@ declare namespace drawing { underlinePosition?: number; /** - * Strikethrough thickness. + * Thickness of the strikethrough. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2452,7 +2746,7 @@ declare namespace drawing { strikethroughThickness?: number; /** - * Distance from baseline to bottom of stroke, typically negative. + * Vertical distance from the baseline to the bottom of the strikethrough. The value is usually a negative value. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2461,23 +2755,27 @@ declare namespace drawing { } /** - * Lattice is the class for dividing an image into grids. + * Implements a lattice object, which is used to divide an image by lattice. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class Lattice { /** - * Divide an image into a rectangular grid. Grid entries on even columns and even rows are fixed; - * these entries are always drawn at their original size if the destination is large enough. If the destination - * side is too small to hold the fixed entries, all fixed entries are scaled down to fit. - * The grid entries not on even columns and rows are scaled to fit the remaining space, if any. - * @param { Array<number> } xDivs - X coordinate of values used to divide the image. - * @param { Array<number> } yDivs - Y coordinate of values used to divide the image. - * @param { number } fXCount - Number of x coordinates. Must be >= 0. - * @param { number } fYCount - Number of y coordinates. Must be >= 0. - * @param { common2D.Rect | null } fBounds - Source bounds to draw from. The default value is null. - * @param { Array<RectType> | null } fRectTypes - Array of fill types. The default value is null. - * @param { Array<common2D.Color> | null } fColors - Array of colors. The default value is null. + * Divides the image into lattices. The lattices on both even columns and even rows are fixed, + * and they are drawn at their original size if the target is large enough. + * If the target is too small to hold the fixed lattices, all the fixed lattices are scaled down to fit the target, + * and the lattices that are not on even columns and even rows are scaled to accommodate the remaining space. + * @param { Array<number> } xDivs - Array of X coordinates used to divide the image. The value is an integer. + * @param { Array<number> } yDivs - Array of Y coordinates used to divide the image. The value is an integer. + * @param { number } fXCount - Size of the array that holds the X coordinates. The value range is [0, 5]. + * @param { number } fYCount - Size of the array that holds the Y coordinates. The value range is [0, 5]. + * @param { common2D.Rect | null } fBounds - Source bounds to draw. The rectangle parameter must be an integer. + * The default value is the rectangle size of the original image. If the rectangle parameter is a decimal, + * the decimal part is discarded and converted into an integer. + * @param { Array<RectType> | null } fRectTypes - Array that holds the rectangle types. The default value is null. + * If this parameter is specified, the array size must be (fXCount + 1) * (fYCount + 1). + * @param { Array<common2D.Color> | null } fColors - Array that holds the colors used to fill the lattices. The default value is null. + * If this parameter is specified, the array size must be (fXCount + 1) * (fYCount + 1). * @returns { Lattice } Lattice object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2489,17 +2787,22 @@ declare namespace drawing { fBounds?: common2D.Rect | null, fRectTypes?: Array<RectType> | null, fColors?: Array<common2D.Color> | null): Lattice; /** - * Divide an image into a rectangular grid. Grid entries on even columns and even rows are fixed; - * these entries are always drawn at their original size if the destination is large enough. If the destination - * side is too small to hold the fixed entries, all fixed entries are scaled down to fit. - * The grid entries not on even columns and rows are scaled to fit the remaining space, if any. - * @param { Array<number> } xDivs - X coordinate of values used to divide the image. - * @param { Array<number> } yDivs - Y coordinate of values used to divide the image. - * @param { number } fXCount - Number of x coordinates. Must be >= 0. - * @param { number } fYCount - Number of y coordinates. Must be >= 0. - * @param { common2D.Rect | null } fBounds - Source bounds to draw from. The default value is null. - * @param { Array<RectType> | null } fRectTypes - Array of fill types. The default value is null. - * @param { Array<number> | null } fColors - Array of colors represented by ARGB color of hexadecimal format. The default value is null. + * Divides the image into lattices. The lattices on both even columns and even rows are fixed, + * and they are drawn at their original size if the target is large enough. + * If the target is too small to hold the fixed lattices, all the fixed lattices are scaled down to fit the target, + * and the lattices that are not on even columns and even rows are scaled to accommodate the remaining space. + * @param { Array<number> } xDivs - Array of X coordinates used to divide the image. The value is an integer. + * @param { Array<number> } yDivs - Array of Y coordinates used to divide the image. The value is an integer. + * @param { number } fXCount - Size of the array that holds the X coordinates. The value range is [0, 5]. + * @param { number } fYCount - Size of the array that holds the Y coordinates. The value range is [0, 5]. + * @param { common2D.Rect | null } fBounds - Source bounds to draw. The rectangle parameter must be an integer. + * The default value is the rectangle size of the original image. If the rectangle parameter is a decimal, + * the decimal part is discarded and converted into an integer. + * @param { Array<RectType> | null } fRectTypes - Array that holds the rectangle types. The default value is null. + * If this parameter is specified, the array size must be (fXCount + 1) * (fYCount + 1). + * @param { Array<number> | null } fColors - Array that holds the colors used to fill the lattices. + * Each color is represented by a 32-bit unsigned integer in hexadecimal ARGB format. + * The default value is null. If this parameter is specified, the array size must be (fXCount + 1) * (fYCount + 1). * @returns { Lattice } Lattice object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2512,29 +2815,28 @@ declare namespace drawing { } /** - * Enumerate rect types. Optional setting per rectangular grid entry to make it transparent, - * or to fill the grid entry with a color. only used in Lattice. + * Enumerates the types of rectangles used to fill the lattices. This enum is used only in Lattice. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum RectType { /** - * Draws image into lattice rect. + * Draws an image into the lattice. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ DEFAULT = 0, /** - * Skips lattice rect by making it transparent. + * Sets the lattice to transparent. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ TRANSPARENT = 1, /** - * Draws one of fColors into lattice rect. + * Draws the colors in the fColors array in Lattice into the lattice. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -2542,15 +2844,15 @@ declare namespace drawing { } /** - * MaskFilter is the class for object that perform transformations on an alpha-channel mask before drawing it. + * Implements a mask filter. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class MaskFilter { /** - * Makes a MaskFilter with a blur effect. - * @param { BlurType } blurType - Indicates the blur type. - * @param { number } sigma - Indicates the standard deviation of the Gaussian blur to apply. Must be > 0. + * Creates a mask filter with a blur effect. + * @param { BlurType } blurType - Blur type. + * @param { number } sigma - Standard deviation of the Gaussian blur to apply. The value must be a floating point number greater than 0. * @returns { MaskFilter } MaskFilter object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2562,26 +2864,26 @@ declare namespace drawing { } /** - * How to transform path at each point (based on the current position and tangent). + * Enumerates the styles of the dashed path effect. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 18 */ enum PathDashStyle { /** - * Translate the shape to each position. + * Translates only, not rotating with the path. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ TRANSLATE = 0, /** - * Rotate the shape about its center. + * Rotates with the path. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ ROTATE = 1, /** - * Transform each point, and turn lines into curves. + * Rotates with the path and stretches or compresses at turns to enhance smoothness. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ @@ -2589,16 +2891,16 @@ declare namespace drawing { } /** - * Defines a PathEffect, which is used to affects stroked paths. + * Implements a path effect. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class PathEffect { /** - * Makes a dash PathEffect. - * @param { Array<number> } intervals - Array of ON and OFF distances. Must contain an even number of entries (>=2), - * with the even indices specifying the "on" intervals, and the odd indices specifying the "off" intervals. - * @param { number } phase - Offset into the intervals array. + * Creates a PathEffect object that converts a path into a dotted line. + * @param { Array<number> } intervals - Array of ON and OFF lengths of dotted lines. + * The number of arrays must be an even number and be greater than or equal to 2. + * @param { number } phase - Offset used during drawing. The value is a floating point number. * @returns { PathEffect } PathEffect object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2609,9 +2911,8 @@ declare namespace drawing { static createDashPathEffect(intervals: Array<number>, phase: number): PathEffect; /** - * Makes a corner PathEffect. - * @param { number } radius - Indicates the radius of the tangent circle at the corners of the path. - * The radius must be greater than 0. + * Creates a path effect that transforms the sharp angle between line segments into a rounded corner with the specified radius. + * @param { number } radius - Radius of the rounded corner. The value must be greater than 0. The value is a floating point number. * @returns { PathEffect } PathEffect object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2622,13 +2923,14 @@ declare namespace drawing { static createCornerPathEffect(radius: number): PathEffect; /** - * Makes a discrete PathEffect. - * @param { number } segLength - Indicates the maximum segment length of the path. - * @param { number } dev - Indicates the deviation during drawing. - * @param { number } seedAssist - Indicates generate effect pseudo-random sequence, the default value is zero. + * Creates an effect that segments the path and scatters the segments in an irregular pattern along the path. + * @param { number } segLength - Distance along the path at which each segment is fragmented. The value is a floating point number. + * If a negative number or the value 0 is passed in, no effect is created. + * @param { number } dev - Maximum amount by which the end points of the segments can be randomly displaced during rendering. + * The value is a floating-point number. + * @param { number } seedAssist - Optional parameter to assist in generating a pseudo-random seed for the effect. + * The default value is 0, and the value is a 32-bit unsigned integer. * @returns { PathEffect } PathEffect object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; * @static * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -2636,12 +2938,10 @@ declare namespace drawing { static createDiscretePathEffect(segLength: number, dev: number, seedAssist?: number): PathEffect; /** - * Makes a compose PathEffect. - * @param { PathEffect } outer - Indicates the path effect that takes effect later in the combination path effect. - * @param { PathEffect } inner - Indicates the path effect of the first effect in the combination path effect. + * Creates a path effect by sequentially applying the inner effect and then the outer effect. + * @param { PathEffect } outer - Path effect that is applied second, overlaying the first effect. + * @param { PathEffect } inner - Inner path effect that is applied first. * @returns { PathEffect } PathEffect object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; * @static * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -2649,11 +2949,13 @@ declare namespace drawing { static createComposePathEffect(outer: PathEffect, inner: PathEffect): PathEffect; /** - * Makes a path dash PathEffect. - * @param { Path } path - Indicates the path to be used for the dash effect. - * @param { number } advance - Indicates the advance distance for the dash effect. - * @param { number } phase - Indicates the phase offset for the dash effect. - * @param { PathDashStyle } style - Indicates the style of the dash effect. + * Creates a dashed path effect based on the shape described by a path. + * @param { Path } path - Path that defines the shape to be used for filling each dash in the pattern. + * @param { number } advance - Distance between two consecutive dashes. The value is a floating point number greater than 0. + * Otherwise, an error code is thrown. + * @param { number } phase - Starting offset of the dash pattern. The value is a floating point number. + * The actual offset used is the absolute value of this value modulo the value of advance. + * @param { PathDashStyle } style - Style of the dashed path effect. * @returns { PathEffect } PathEffect object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2664,12 +2966,11 @@ declare namespace drawing { static createPathDashEffect(path: Path, advance: number, phase: number, style: PathDashStyle): PathEffect; /** - * Makes a sum PathEffect. - * @param { PathEffect } firstPathEffect - Indicates the first path effect. - * @param { PathEffect } secondPathEffect - Indicates the second path effect. + * Creates an overlay path effect based on two distinct path effects. + * Different from createComposePathEffect, this API applies each effect separately and then displays them as a simple overlay. + * @param { PathEffect } firstPathEffect - First path effect. + * @param { PathEffect } secondPathEffect - Second path effect. * @returns { PathEffect } PathEffect object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. * @static * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -2678,14 +2979,16 @@ declare namespace drawing { } /** - * Describes a shader effect object. + * Implements the shader effect. After a shader effect is set for a pen or brush, + * the shader effect instead of the color attribute is used for drawing. In this case, + * the alpha value set for the pen or brush still takes effect. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class ShaderEffect { /** - * Creates an ShaderEffect object that generates a shader with single color. - * @param { number } color - Indicates the color used by the shader. + * Creates a ShaderEffect object with a single color. + * @param { number } color - Color in the ARGB format. The value is a 32-bit unsigned integer. * @returns { ShaderEffect } Returns the shader with single color ShaderEffect object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -2695,14 +2998,18 @@ declare namespace drawing { static createColorShader(color: number): ShaderEffect; /** - * Creates an ShaderEffect object that generates a linear gradient between the two specified points. - * @param { common2D.Point } startPt - Indicates the start point for the gradient. - * @param { common2D.Point } endPt - Indicates the end point for the gradient. - * @param { Array<number> } colors - Indicates the colors to be distributed between the two points. - * @param { TileMode } mode - Indicates the tile mode. - * @param { Array<number> | null } pos - Indicates the relative position of each corresponding color - * <br> in the colors array. The default value is empty for uniform distribution. - * @param { Matrix | null } matrix - Indicates the Matrix object. The default value is null. + * Creates a ShaderEffect object that generates a linear gradient between two points. + * @param { common2D.Point } startPt - Start point. + * @param { common2D.Point } endPt - End point. + * @param { Array<number> } colors - Array of colors to distribute between the two points. + * The values in the array are 32-bit (ARGB) unsigned integers. + * @param { TileMode } mode - Tile mode of the shader effect. + * @param { Array<number> | null } pos - Relative position of each color in the color array. + * The array length must be the same as that of colors. The first element in the array must be 0.0, + * the last element must be 1.0, and the middle elements must be between 0.0 and 1.0 and increase by index. + * The default value is null, indicating that colors are evenly distributed between the two points. + * @param { Matrix | null } matrix - Matrix object used to perform matrix transformation on the shader effect. + * The default value is null, indicating the identity matrix. * @returns { ShaderEffect } Returns a linear gradient ShaderEffect object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2713,14 +3020,19 @@ declare namespace drawing { mode: TileMode, pos?: Array<number> | null, matrix?: Matrix | null): ShaderEffect; /** - * Creates an ShaderEffect object that generates a radial gradient given the center and radius. - * @param { common2D.Point } centerPt - Indicates the center of the circle for the gradient. - * @param { number } radius - Indicates the radius of the circle for this gradient. - * @param { Array<number> } colors - Indicates the colors to be distributed between the two points. - * @param { TileMode } mode - Indicates the tile mode. - * @param { Array<number> | null } pos - Indicates the relative position of each corresponding color - * <br> in the colors array. The default value is empty for uniform distribution. - * @param { Matrix | null } matrix - Indicates the Matrix object. The default value is null. + * Creates a ShaderEffect object that generates a radial gradient based on the center and radius of a circle. + * A radial gradient refers to the color transition that spreads out gradually from the center of a circle. + * @param { common2D.Point } centerPt - Center of the circle. + * @param { number } radius - Radius of the gradient. A negative number is invalid. The value is a floating point number. + * @param { Array<number> } colors - Array of colors to distribute between the center and ending shape of the circle. + * The values in the array are 32-bit (ARGB) unsigned integers. + * @param { TileMode } mode - Tile mode of the shader effect. + * @param { Array<number> | null } pos - Relative position of each color in the color array. + * The array length must be the same as that of colors. The first element in the array must be 0.0, the last element must be 1.0, + * and the middle elements must be between 0.0 and 1.0 and increase by index. + * The default value is null, indicating that colors are evenly distributed between the center and ending shape of the circle. + * @param { Matrix | null } matrix - Matrix object used to perform matrix transformation on the shader effect. + * The default value is null, indicating the identity matrix. * @returns { ShaderEffect } Returns a radial gradient ShaderEffect object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2731,15 +3043,24 @@ declare namespace drawing { mode: TileMode, pos?: Array<number> | null, matrix?: Matrix | null): ShaderEffect; /** - * Creates an ShaderEffect object that generates a sweep gradient given a center. - * @param { common2D.Point } centerPt - Indicates the center of the circle for the gradient. - * @param { Array<number> } colors - Indicates the colors to be distributed between the two points. - * @param { TileMode } mode - Indicates the tile mode. - * @param { number } startAngle - The starting angle of the gradient. - * @param { number } endAngle - The ending angle of the gradient. - * @param { Array<number> | null } pos - Indicates the relative position of each corresponding color - * <br> in the colors array. The default value is empty for uniform distribution. - * @param { Matrix | null } matrix - Indicates the Matrix object. The default value is null. + * Creates a ShaderEffect object that generates a color sweep gradient around a given center point, + * either in a clockwise or counterclockwise direction. + * @param { common2D.Point } centerPt - Center of the circle. + * @param { Array<number> } colors - Array of colors to distribute between the start angle and end angle. + * The values in the array are 32-bit (ARGB) unsigned integers. + * @param { TileMode } mode - Tile mode of the shader effect. + * @param { number } startAngle - Start angle of the sweep gradient, in degrees. + * The value 0 indicates the positive direction of the X axis. A positive number indicates an offset towards the positive direction, + * and a negative number indicates an offset towards the negative direction. The value is a floating point number. + * @param { number } endAngle - End angle of the sweep gradient, in degrees. + * The value 0 indicates the positive direction of the X axis. A positive number indicates an offset towards the positive direction, + * and a negative number indicates an offset towards the negative direction. A value less than the start angle is invalid. + * The value is a floating point number. + * @param { Array<number> | null } pos - Relative position of each color in the color array. The array length must be the same as that of colors. + * The first element in the array must be 0.0, the last element must be 1.0, and the middle elements must be between 0.0 and 1.0 and increase by index. + * The default value is null, indicating that the colors are evenly distributed between the start angle and end angle. + * @param { Matrix | null } matrix - Matrix object used to perform matrix transformation on the shader effect. + * The default value is null, indicating the identity matrix. * @returns { ShaderEffect } Returns a sweep gradient ShaderEffect object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2751,16 +3072,21 @@ declare namespace drawing { matrix?: Matrix | null): ShaderEffect; /** - * Creates an ShaderEffect object that generates a conical gradient given two circles. - * @param { common2D.Point } startPt - Indicates the center of the start circle for the gradient. - * @param { number } startRadius - Indicates the radius of the start circle for this gradient. - * @param { common2D.Point } endPt - Indicates the center of the end circle for the gradient. - * @param { number } endRadius - Indicates the radius of the end circle for this gradient. - * @param { Array<number> } colors - Indicates the colors to be distributed between the two points. - * @param { TileMode } mode - Indicates the tile mode. - * @param { Array<number> | null } pos - Indicates the relative position of each corresponding color - * <br> in the colors array. The default value is empty for uniform distribution. - * @param { Matrix | null } matrix - Indicates the Matrix object. The default value is null. + * Creates a ShaderEffect object that generates a conical gradient between two given circles. + * @param { common2D.Point } startPt - Center of the start circle of the gradient. + * @param { number } startRadius - Radius of the start circle of the gradient. A negative number is invalid. + * The value is a floating point number. + * @param { common2D.Point } endPt - Center of the end circle of the gradient. + * @param { number } endRadius - Radius of the end circle of the gradient. A negative value is invalid. + * The value is a floating point number. + * @param { Array<number> } colors - Array of colors to distribute between the start circle and end circle. + * The values in the array are 32-bit (ARGB) unsigned integers. + * @param { TileMode } mode - Tile mode of the shader effect. + * @param { Array<number> | null } pos - Relative position of each color in the color array. The array length must be the same as that of colors. + * The first element in the array must be 0.0, the last element must be 1.0, and the middle elements must be between 0.0 and 1.0 and increase by index. + * The default value is null, indicating that colors are evenly distributed between the two circles. + * @param { Matrix | null } matrix - Matrix object used to perform matrix transformation on the shader effect. + * The default value is null, indicating the identity matrix. * @returns { ShaderEffect } Returns a conical gradient ShaderEffect object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2770,39 +3096,70 @@ declare namespace drawing { static createConicalGradient(startPt: common2D.Point, startRadius: number, endPt: common2D.Point, endRadius: number, colors: Array<number>, mode: TileMode, pos?: Array<number> | null, matrix?: Matrix | null): ShaderEffect; + + /** + * Creates an ShaderEffect object that generates a shader with single image. + * @param { image.PixelMap } pixelmap - PixelMap. + * @param { TileMode } tileX - Indicates the type of tile mode for horizontal shader effect. + * @param { TileMode } tileY - Indicates the type of tile mode for vertical shader effect. + * @param { SamplingOptions } samplingOptions - SamplingOptions used to describe the sampling mode. + * @param { Matrix | null } matrix - Indicates the Matrix object. The default value is null. + * @returns { ShaderEffect } Returns the shader with single image ShaderEffect object. + * @throws { BusinessError } 25900001 - Parameter error. Possible causes: Incorrect parameter range. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static createImageShader(pixelmap: image.PixelMap, tileX: TileMode, tileY: TileMode, + samplingOptions: SamplingOptions, matrix?: Matrix | null): ShaderEffect; + + /** + * Creates an ShaderEffect object that generates a blend ShaderEffect object by two shaders. + * @param { ShaderEffect } dstShaderEffect - Indicates a destination ShaderEffect pointer. + * @param { ShaderEffect } srcShaderEffect - Indicates a source ShaderEffect pointer. + * @param { BlendMode } blendMode - BlendMode. + * @returns { ShaderEffect } Returns a blend ShaderEffect object. + * @throws { BusinessError } 25900001 - Parameter error. Possible causes: Incorrect parameter range. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static createComposeShader(dstShaderEffect: ShaderEffect, srcShaderEffect: ShaderEffect, + blendMode: BlendMode): ShaderEffect; } /** - * Enumerates tile modes that describe an image or texture. + * Enumerates the tile modes of the shader effect. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum TileMode { /** - * Replicate the edge color if the shader effect draws outside of its original bounds. + * Replicates the edge color if the shader effect draws outside of its original boundary. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ CLAMP = 0, /** - * Repeat the shader effect image horizontally and vertically. + * Repeats the shader effect in both horizontal and vertical directions. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ REPEAT = 1, /** - * Repeat the shader effect image horizontally and vertically, alternating mirror images - * so that adjacent images always seam. + * Repeats the shader effect in both horizontal and vertical directions, alternating mirror images. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ MIRROR = 2, /** - * Only draw within the original domain, return transparent-black everywhere else. + * Renders the shader effect only within the original boundary. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -2810,18 +3167,18 @@ declare namespace drawing { } /** - * Defines a ShadowLayer, which is used to specify the color, blur radius, and offset of the shadow. + * Implements a shadow layer. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class ShadowLayer { /** - * Makes a new ShadowLayer. + * Creates a ShadowLayer object. * - * @param { number } blurRadius - The blur radius of the shadow. The blur radius must be greater than 0. - * @param { number } x - The offset point on x-axis. - * @param { number } y - The offset point on y-axis. - * @param { common2D.Color } color - The shadow color. The range of color channels must be [0, 255]. + * @param { number } blurRadius - Radius of the shadow layer. The value must be a floating point number greater than 0. + * @param { number } x - Offset on the X axis. The value is a floating point number. + * @param { number } y - Offset on the Y axis. The value is a floating point number. + * @param { common2D.Color } color - Color in ARGB format. The value of each color channel is an integer ranging from 0 to 255. * @returns { ShadowLayer } ShadowLayer object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2832,12 +3189,12 @@ declare namespace drawing { static create(blurRadius: number, x: number, y: number, color: common2D.Color): ShadowLayer; /** - * Makes a new ShadowLayer with the specified ARGB color of hexadecimal format. + * Creates a ShadowLayer object. * - * @param { number } blurRadius - The blur radius of the shadow. The blur radius must be greater than 0. - * @param { number } x - The offset point on x-axis. - * @param { number } y - The offset point on y-axis. - * @param { common2D.Color | number } color - The shadow color. Number must be ARGB color of hexadecimal format. + * @param { number } blurRadius - Radius of the shadow layer. The value must be a floating point number greater than 0. + * @param { number } x - Offset on the X axis. The value is a floating point number. + * @param { number } y - Offset on the Y axis. The value is a floating point number. + * @param { common2D.Color | number } color - Color, represented by an unsigned integer in hexadecimal ARGB format. * @returns { ShadowLayer } ShadowLayer object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2849,16 +3206,16 @@ declare namespace drawing { } /** - * ColorFilters are optional objects in the drawing pipeline. + * Defines a color filter. * * @syscap SystemCapability.Graphics.Drawing * @since 11 */ class ColorFilter { /** - * Makes a color filter with the given color and blend mode. - * @param { common2D.Color } color - The range of color channels must be [0, 255]. - * @param { BlendMode } mode - BlendMode. + * Creates a ColorFilter object with a given color and blend mode. + * @param { common2D.Color } color - Color in ARGB format. The value of each color channel is an integer ranging from 0 to 255. + * @param { BlendMode } mode - Blend mode. * @returns { ColorFilter } Colorfilter object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2869,9 +3226,9 @@ declare namespace drawing { static createBlendModeColorFilter(color: common2D.Color, mode: BlendMode): ColorFilter; /** - * Makes a color filter with the given ARGB color of hexadecimal format and blend mode. - * @param { common2D.Color | number } color - Number must be ARGB color of hexadecimal format. - * @param { BlendMode } mode - BlendMode. + * Creates a ColorFilter object with a given color and blend mode. + * @param { common2D.Color | number } color - Color, represented by an unsigned integer in hexadecimal ARGB format. + * @param { BlendMode } mode - Blend mode. * @returns { ColorFilter } Colorfilter object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2882,9 +3239,9 @@ declare namespace drawing { static createBlendModeColorFilter(color: common2D.Color | number, mode: BlendMode): ColorFilter; /** - * Create a color filter consisting of two filters. - * @param { ColorFilter } outer - The filter is used next. - * @param { ColorFilter } inner - The filter is used first. + * Creates a ColorFilter object by combining another two color filters. + * @param { ColorFilter } outer - Color filter that takes effect later in the new filter. + * @param { ColorFilter } inner - Color filter that takes effect first in the new filter. * @returns { ColorFilter } Colorfilter object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -2895,7 +3252,7 @@ declare namespace drawing { static createComposeColorFilter(outer: ColorFilter, inner: ColorFilter): ColorFilter; /** - * Makes a color filter that converts between linear colors and sRGB colors. + * Creates a ColorFilter object that applies the sRGB gamma curve to the RGB channels. * @returns { ColorFilter } Colorfilter object. * @static * @syscap SystemCapability.Graphics.Drawing @@ -2904,7 +3261,7 @@ declare namespace drawing { static createLinearToSRGBGamma(): ColorFilter; /** - * Makes a color filter that converts between sRGB colors and linear colors. + * Creates a ColorFilter object that applies the RGB channels to the sRGB gamma curve. * @returns { ColorFilter } Colorfilter object. * @static * @syscap SystemCapability.Graphics.Drawing @@ -2913,8 +3270,7 @@ declare namespace drawing { static createSRGBGammaToLinear(): ColorFilter; /** - * Makes a color filter that multiplies the luma of its input into the alpha channel, - * and sets the red, green, and blue channels to zero. + * Creates a ColorFilter object that multiplies the luma into the alpha channel and sets the RGB channels to zero. * @returns { ColorFilter } Colorfilter. * @static * @syscap SystemCapability.Graphics.Drawing @@ -2922,8 +3278,8 @@ declare namespace drawing { */ static createLumaColorFilter(): ColorFilter; /** - * Makes a color filter with a 5x4 color matrix - * @param { Array<number> } matrix - Indicates the matrix, which is represented as a number array of length 20. + * Creates a color filter object with a 4*5 color matrix. + * @param { Array<number> } matrix - An array of 20 numbers, indicating the 4*5 matrix. * @returns { ColorFilter } Colorfilter object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2932,22 +3288,35 @@ declare namespace drawing { * @since 12 */ static createMatrixColorFilter(matrix: Array<number>): ColorFilter; + + /** + * Makes a color filter with the given mutColor and addColor. + * @param { common2D.Color | number } mutColor - The range of color channels must be [0, 255], used to multiply source color. + * @param { common2D.Color | number } addColor - The range of color channels must be [0, 255], used to add to source color. + * @returns { ColorFilter } Colorfilter object. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static createLightingColorFilter(mutColor: common2D.Color | number, addColor: common2D.Color | number): ColorFilter; + } /** - * ImageFilters are optional objects in the drawing pipeline. + * Implements an image filter. * * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class ImageFilter { /** - * Makes an ImageFilter object that blurs its input by the separate X and Y sigmas. - * @param { number } sigmaX - Indicates the Gaussian sigma value for blurring along the X axis. Must be > 0. - * @param { number } sigmaY - Indicates the Gaussian sigma value for blurring along the Y axis. Must be > 0. - * @param { TileMode } tileMode - Indicates the tile mode applied at edges. - * @param { ImageFilter | null } imageFilter - Indicates the input filter that is blurred, - * uses source bitmap if this is null. + * Creates an image filter with a given blur effect. + * @param { number } sigmaX - Standard deviation of the Gaussian blur along the X axis. The value must be a floating point number greater than 0. + * @param { number } sigmaY - Standard deviation of the Gaussian blur along the Y axis. The value must be a floating point number greater than 0. + * @param { TileMode } tileMode - Tile mode to apply to the edges. + * @param { ImageFilter | null } imageFilter - Filter to which the image filter will be applied. + * The default value is null, indicating that the image filter is directly applied to the original image. * @returns { ImageFilter } ImageFilter object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -2958,9 +3327,10 @@ declare namespace drawing { static createBlurImageFilter(sigmaX: number, sigmaY: number, tileMode: TileMode, imageFilter?: ImageFilter | null): ImageFilter; /** - * Makes an ImageFilter object that applies the color filter to the input. - * @param { ColorFilter } colorFilter - Indicates the color filter that transforms the input image. - * @param { ImageFilter | null } imageFilter - Indicates the input filter, or uses the source bitmap if this is null. + * Creates an image filter object with a given color filter effect. + * @param { ColorFilter } colorFilter - Color filter. + * @param { ImageFilter | null } imageFilter - Filter to which the image filter will be applied. The default value is null, + * indicating that the image filter is directly applied to the original image. * @returns { ImageFilter } ImageFilter object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -2969,17 +3339,83 @@ declare namespace drawing { * @since 12 */ static createFromColorFilter(colorFilter: ColorFilter, imageFilter?: ImageFilter | null): ImageFilter; + + /** + * Makes an ImageFilter object that instance with the provided x and y offset. + * @param { number } dx - Indicates the offset in the X direction. + * @param { number } dy - Indicates the offset in the Y direction. + * @param { ImageFilter | null } input - Indicates the input image filter used to generate offset effects, or uses + * the source bitmap if this is null. + * @returns { ImageFilter } ImageFilter object. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static createOffsetImageFilter(dx: number, dy: number, input?: ImageFilter | null): ImageFilter; + + /** + * Makes an ImageFilter object that applies the bitmap to the input. + * @param { image.PixelMap } pixelmap - The source input image. + * @param { common2D.Rect | null } srcRect - Indicates the input srcRect, or uses the source bitmap if this is null. + * @param { common2D.Rect | null } dstRect - Indicates the input dstRect, or uses the source bitmap if this is null. + * @returns { ImageFilter } ImageFilter object. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static createFromImage(pixelmap: image.PixelMap, srcRect?: common2D.Rect | null, dstRect?: common2D.Rect | null): ImageFilter; + + /** + * Makes an ImageFilter object that applies the blend to the input. + * @param { BlendMode } mode - Blendmode. + * @param { ImageFilter } background - Indicates the input background filter. + * @param { ImageFilter } foreground - Indicates the input foreground filter. + * @returns { ImageFilter } ImageFilter object. + * @throws { BusinessError } 25900001 - Parameter error. Possible causes: Incorrect parameter range. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static createBlendImageFilter(mode: BlendMode, background: ImageFilter, foreground: ImageFilter): ImageFilter; + + /** + * Makes an ImageFilter object that combines the "inner" and "outer" filters, allowing the output of the "inner" + * filter to serve as the input source bitmap for the "outer" filter. + * @param { ImageFilter } cOuter - Indicates the instance to apply its effects to the output of the 'inner' + * filter. + * @param { ImageFilter } cInner - Indicates the output as input for "outer" filters. + * @returns { ImageFilter } ImageFilter object. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static createComposeImageFilter(cOuter: ImageFilter, cInner: ImageFilter): ImageFilter; + + /** + * Makes an ImageFilter object that renders the contents of the input Shader. + * + * @param { ShaderEffect } shader - Indicates the shader effect to be applied to the image. + * @returns { ImageFilter } ImageFilter object. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static createFromShaderEffect(shader: ShaderEffect): ImageFilter; } /** - * Enumerate join styles. The join style defines the shape of the joins of a - * polyline segment drawn by the pen. + * Enumerates the join styles of a pen. The join style defines the shape of the joints of a polyline segment drawn by the pen. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum JoinStyle { /** - * Miter corner. If the angle of a polyline is small, its miter length may be inappropriate. + * Mitered corner. If the angle of a polyline is small, its miter length may be inappropriate. * In this case, you need to use the miter limit to limit the miter length. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -3002,31 +3438,28 @@ declare namespace drawing { } /** - * Enumerates cap styles of a pen. The cap style defines - * the style of both ends of a segment drawn by the pen. + * Enumerates the cap styles of a pen. The cap style defines the style of both ends of a line segment drawn by the pen. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum CapStyle { /** - * No cap style. Both ends of the segment are cut off square. + * There is no cap style. Both ends of the line segment are cut off square. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ FLAT_CAP = 0, /** - * Square cap style. Both ends have a square, the height of which - * is half of the width of the segment, with the same width. + * Square cap style. Both ends have a square, the height of which is half of the width of the line segment, with the same width. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ SQUARE_CAP = 1, /** - * Round cap style. Both ends have a semicircle centered, the diameter of which - * is the same as the width of the segment. + * Round cap style. Both ends have a semicircle centered, the diameter of which is the same as the width of the line segment. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -3034,35 +3467,35 @@ declare namespace drawing { } /** - * Enumerates blur type. + * Enumerates the blur types of a mask filter. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum BlurType { /** - * Fuzzy inside and outside. + * Both the outer edges and the inner solid parts are blurred. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ NORMAL = 0, /** - * Solid inside, fuzzy outside. + * The inner solid part remains unchanged, while only the outer edges are blurred. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ SOLID = 1, /** - * Nothing inside, fuzzy outside. + * Only the outer edges are blurred, with the inner solid part being fully transparent. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ OUTER = 2, /** - * Fuzzy inside, nothing outside. + * Only the inner solid part is blurred, while the outer edges remain sharp. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -3070,21 +3503,21 @@ declare namespace drawing { } /** - * Provides settings for strokes during drawing. + * Defines a pen, which is used to describe the style and color to outline a shape. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ class Pen { /** - * Constructor for the pen. + * A constructor used to create a Pen object. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ constructor(); /** - * Constructor for the pen from an existing pen object pen. - * @param { Pen } pen - Indicates the Pen object. + * Copies a Pen object to create a new one. + * @param { Pen } pen - Pen object to copy. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3093,8 +3526,11 @@ declare namespace drawing { constructor(pen: Pen); /** - * Sets the stroke miter limit for a polyline drawn by a pen. - * @param { number } miter - Indicates a variable that describes the miter limit. + * Sets the maximum ratio allowed between the sharp corner length of a polyline and its line width. + * When drawing a polyline with the pen, if JoinStyle is set to MITER_JOIN and this maximum ratio is exceeded, + * the corner will be displayed as beveled instead of mitered. + * @param { number } miter - Maximum ratio of the sharp corner length of the polyline to the line width. + * A negative number is processed as 4.0 during drawing. Non-negative numbers take effect normally. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3103,7 +3539,7 @@ declare namespace drawing { setMiterLimit(miter: number): void; /** - * Obtains the stroke miter limit of a polyline drawn by a pen. + * Obtains the maximum ratio allowed between the sharp corner length of a polyline and its line width. * @returns { number } Returns the miter limit. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -3111,8 +3547,8 @@ declare namespace drawing { getMiterLimit(): number; /** - * Sets the shaderEffect for a pen. - * @param { ShaderEffect } shaderEffect - Indicates the ShaderEffect object. + * Sets the shader effect for this pen. + * @param { ShaderEffect } shaderEffect - ShaderEffect object. If null is passed in, the shader effect will be cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3121,8 +3557,8 @@ declare namespace drawing { setShaderEffect(shaderEffect: ShaderEffect): void; /** - * Set the color of the pen. - * @param { common2D.Color } color - The range of color channels must be [0, 255]. + * Sets a color for this pen. + * @param { common2D.Color } color - Color in ARGB format. The value of each color channel is an integer ranging from 0 to 255. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3131,11 +3567,15 @@ declare namespace drawing { setColor(color: common2D.Color): void; /** - * Set the AGRB color of the pen. - * @param { number } alpha - Alpha channel of color. The range of alpha must be [0, 255]. - * @param { number } red - Red channel of color. The range of red must be [0, 255]. - * @param { number } green - Green channel of color. The range of green must be [0, 255]. - * @param { number } blue - Blue channel of color. The range of blue must be [0, 255]. + * Sets a color for this pen. This API provides better performance than setColor and is recommended. + * @param { number } alpha - Alpha channel value of the color in ARGB format. The value is an integer ranging from 0 to 255 + * Any passed-in floating point number is rounded down. + * @param { number } red - Red channel value of the color in ARGB format. The value is an integer ranging from 0 to 255. + * Any passed-in floating point number is rounded down. + * @param { number } green - Green channel value of the color in ARGB format. The value is an integer ranging from 0 to 255. + * Any passed-in floating point number is rounded down. + * @param { number } blue - Blue channel value of the color in ARGB format. The value is an integer ranging from 0 to 255. + * Any passed-in floating point number is rounded down. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3144,17 +3584,27 @@ declare namespace drawing { setColor(alpha: number, red: number, green: number, blue: number): void; /** - * Set the specified ARGB color of hexadecimal format to the pen. - * @param { number } color - Number must be ARGB color of hexadecimal format. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * Sets a color for this pen. + * @param { number } color - Color in hexadecimal ARGB format. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ setColor(color: number): void; /** - * Obtains the color of a pen. The color is used by the pen to outline a shape. + * Set the color by four floating point values, unpremultiplied. The color values are interpreted as being in + * the colorSpace. If colorSpace is nullptr, then color is assumed to be in the sRGB color space. + * + * @param { common2D.Color4f } color4f - Indicates four floating point values that describes the color. + * @param { colorSpaceManager.ColorSpaceManager | null } colorSpace - Indicates colorSpaceManager. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + setColor4f(color4f: common2D.Color4f, colorSpace: colorSpaceManager.ColorSpaceManager | null): void; + + /** + * Obtains the color of this pen. * @returns { common2D.Color } Returns a 32-bit (ARGB) variable that describes the color. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -3163,6 +3613,15 @@ declare namespace drawing { /** * Obtains the color of a pen. The color is used by the pen to outline a shape. + * @returns { common2D.Color4f } Returns four floating point values that describes the color. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + getColor4f(): common2D.Color4f; + + /** + * Obtains the color of this pen. * @returns { number } Returns a 32-bit (ARGB) variable that describes the color of hexadecimal format. * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -3170,9 +3629,11 @@ declare namespace drawing { getHexColor(): number; /** - * Sets the thickness of the pen used by the paint to outline the shape. + * Sets the stroke width for this pen. The value 0 is treated as an unusually thin width. During drawing, + * the width of 0 is always drawn as 1 pixel wide, regardless of any scaling applied to the canvas. + * Negative values are also regarded as the value 0 during the drawing process. * - * @param { number } width - Zero thickness for hairline; greater than zero for pen thickness. + * @param { number } width - Stroke width. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3181,17 +3642,18 @@ declare namespace drawing { setStrokeWidth(width: number): void; /** - * Obtains the thickness of a pen. This thickness determines the width of the outline of a shape. - * @returns { number } Returns the thickness. + * Obtains the stroke width of this pen. The width describes the thickness of the outline of a shape. + * @returns { number } Stroke width for the pen, in px. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getWidth(): number; /** - * Requests, but does not require, that edge pixels draw opaque or with partial transparency. + * Enables anti-aliasing for this pen. Anti-aliasing makes the edges of the content smoother. + * If this API is not called, anti-aliasing is disabled by default. * - * @param { boolean } aa - Setting for antialiasing. + * @param { boolean } aa - Whether to enable anti-aliasing. The value true means to enable anti-aliasing, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3200,8 +3662,7 @@ declare namespace drawing { setAntiAlias(aa: boolean): void; /** - * Checks whether anti-aliasing is enabled for a pen. If anti-aliasing is enabled, - * edges will be drawn with partial transparency. + * Checks whether anti-aliasing is enabled for this pen. * @returns { boolean } Returns true if the anti-aliasing is enabled; returns false otherwise. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -3209,9 +3670,9 @@ declare namespace drawing { isAntiAlias(): boolean; /** - * Replaces alpha, leaving RGB + * Sets an alpha value for this pen. * - * @param { number } alpha - Alpha channel of color. The range of alpha must be [0, 255]. + * @param { number } alpha - Alpha value. The value is an integer in the range [0, 255]. If a floating point number is passed in, the value is rounded down. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3220,7 +3681,7 @@ declare namespace drawing { setAlpha(alpha: number): void; /** - * Obtains the alpha of a pen. The alpha is used by the pen to outline a shape. + * Obtains the alpha value of this pen. * @returns { number } Returns a 8-bit variable that describes the alpha. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -3228,9 +3689,9 @@ declare namespace drawing { getAlpha(): number; /** - * Sets ColorFilter to pen + * Sets a color filter for this pen. * - * @param { ColorFilter } filter - ColorFilter to apply to subsequent draw. + * @param { ColorFilter } filter - Color filter. If null is passed in, the color filter is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3238,15 +3699,15 @@ declare namespace drawing { */ setColorFilter(filter: ColorFilter): void; /** - * Gets ColorFilter of pen + * Obtains the color filter of this pen. * @returns { ColorFilter } ColorFilter. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getColorFilter(): ColorFilter; /** - * Sets ImageFilter to pen - * @param { ImageFilter | null } filter - ImageFilter to apply to subsequent draw. + * Sets an image filter for this pen. + * @param { ImageFilter | null } filter - Image filter. If null is passed in, the image filter effect of the pen will be cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3254,9 +3715,9 @@ declare namespace drawing { */ setImageFilter(filter: ImageFilter | null): void; /** - * Sets MaskFilter to pen. + * Adds a mask filter for this pen. * - * @param { MaskFilter } filter - MaskFilter to apply to subsequent draw. + * @param { MaskFilter } filter - Mask filter. If null is passed in, the mask filter is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3265,9 +3726,9 @@ declare namespace drawing { setMaskFilter(filter: MaskFilter): void; /** - * Sets PathEffect to pen. + * Sets the path effect for this pen. * - * @param { PathEffect } effect - PathEffect to apply to subsequent draw. + * @param { PathEffect } effect - Path effect. If null is passed in, the path filter is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3276,9 +3737,9 @@ declare namespace drawing { setPathEffect(effect: PathEffect): void; /** - * Sets ShadowLayer to pen. + * Sets a shadow layer for this pen. The shadow layer effect takes effect only when text is drawn. * - * @param { ShadowLayer } shadowLayer - ShadowLayer to apply to subsequent draw. + * @param { ShadowLayer } shadowLayer - Shadow layer. If null is passed in, the shadow layer is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3287,9 +3748,9 @@ declare namespace drawing { setShadowLayer(shadowLayer: ShadowLayer): void; /** - * Sets a blender that implements the specified blendmode enum. + * Sets a blend mode for this pen. * - * @param { BlendMode } mode - Blendmode. + * @param { BlendMode } mode - Blend mode. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3298,9 +3759,9 @@ declare namespace drawing { setBlendMode(mode: BlendMode): void; /** - * Request color distribution error. + * Enables dithering for this pen. Dithering make the drawn color more realistic. * - * @param { boolean } dither - Whether the color is distributed incorrectly. + * @param { boolean } dither - Whether to enable dithering. The value true means to enable dithering, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3309,9 +3770,9 @@ declare namespace drawing { setDither(dither: boolean): void; /** - * Sets the JoinStyle for a pen. + * Sets the join style for this pen. If this API is not called, the default join style is MITER_JOIN. * - * @param { JoinStyle } style - The JoinStyle. + * @param { JoinStyle } style - Join style. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3320,7 +3781,7 @@ declare namespace drawing { setJoinStyle(style: JoinStyle): void; /** - * Obtains the JoinStyle of a pen. + * Obtains the join style of this pen. * * @returns { JoinStyle } The JoinStyle. * @syscap SystemCapability.Graphics.Drawing @@ -3329,9 +3790,9 @@ declare namespace drawing { getJoinStyle(): JoinStyle; /** - * Sets the CapStyle for a pen. + * Sets the cap style for this pen. If this API is not called, the default cap style is FLAT_CAP. * - * @param { CapStyle } style - The CapStyle. + * @param { CapStyle } style - Cap style. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3340,7 +3801,7 @@ declare namespace drawing { setCapStyle(style: CapStyle): void; /** - * Obtains the CapStyle of a pen. + * Obtains the cap style of this pen. * * @returns { CapStyle } The CapStyle. * @syscap SystemCapability.Graphics.Drawing @@ -3349,16 +3810,16 @@ declare namespace drawing { getCapStyle(): CapStyle; /** - * Resets all pen contents to their initial values. + * Resets this pen to the initial state. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ reset(): void; /** - * Obtains the filled equivalent of the src path. + * Obtains the source path outline drawn using this pen and represents it using a destination path. * - * @param { Path } src - The path read to create a filled version. - * @param { Path } dst - The resulting path (may be the same as src). + * @param { Path } src - Source path. + * @param { Path } dst - Destination path. * @returns { boolean } true if the path should be filled, or false if it should be drawn with a hairline (width == 0) * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3369,20 +3830,20 @@ declare namespace drawing { } /** - * Provides settings for brush fill when drawing. + * Defines a brush, which is used to describe the style and color to fill in a shape. * @syscap SystemCapability.Graphics.Drawing * @since 11 */ class Brush { /** - * Constructor for the Brush. + * A constructor used to create a Brush object. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ constructor(); /** - * Constructor for the Brush from an existing brush object brush. + * Copies a Brush object to create a new one. * @param { Brush } brush - Indicates the Brush object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3392,8 +3853,8 @@ declare namespace drawing { constructor(brush: Brush); /** - * Set the color of the brush. - * @param { common2D.Color } color - The range of color channels must be [0, 255]. + * Sets a color for this brush. + * @param { common2D.Color } color - Color in ARGB format. The value of each color channel is an integer ranging from 0 to 255. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3402,11 +3863,15 @@ declare namespace drawing { setColor(color: common2D.Color): void; /** - * Set the ARGB color of the brush. - * @param { number } alpha - Alpha channel of color. The range of alpha must be [0, 255]. - * @param { number } red - Red channel of color. The range of red must be [0, 255]. - * @param { number } green - Green channel of color. The range of green must be [0, 255]. - * @param { number } blue - Blue channel of color. The range of blue must be [0, 255]. + * Sets a color for this brush. This API provides better performance than setColor and is recommended. + * @param { number } alpha - Alpha channel value of the color in ARGB format. The value is an integer ranging from 0 to 255. + * Any passed-in floating point number is rounded down. + * @param { number } red - Red channel value of the color in ARGB format. The value is an integer ranging from 0 to 255. + * Any passed-in floating point number is rounded down. + * @param { number } green - Green channel value of the color in ARGB format. The value is an integer ranging from 0 to 255. + * Any passed-in floating point number is rounded down. + * @param { number } blue - Blue channel value of the color in ARGB format. The value is an integer ranging from 0 to 255. + * Any passed-in floating point number is rounded down. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3415,8 +3880,8 @@ declare namespace drawing { setColor(alpha: number, red: number, green: number, blue: number): void; /** - * Set the specified ARGB color of hexadecimal format to the brush. - * @param { number } color - Number must be ARGB color of hexadecimal format. + * Sets a color for this brush. + * @param { number } color - Color in hexadecimal ARGB format. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3425,7 +3890,19 @@ declare namespace drawing { setColor(color: number): void; /** - * Obtains the color of a brush. The color is used by the brush to fill in a shape. + * Sets the color by four floating point values, unpremultiplied. The color values are interpreted as being in + * the colorSpace. If colorSpace is nullptr, then color is assumed to be in the sRGB color space. + * + * @param { common2D.Color4f } color4f - Indicates four floating point values that describes the color. + * @param { colorSpaceManager.ColorSpaceManager | null } colorSpace - Indicates colorSpaceManager. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + setColor4f(color4f: common2D.Color4f, colorSpace: colorSpaceManager.ColorSpaceManager | null): void; + + /** + * Obtains the color of this brush. * @returns { common2D.Color } Returns a 32-bit (ARGB) variable that describes the color. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -3433,7 +3910,16 @@ declare namespace drawing { getColor(): common2D.Color; /** - * Obtains the color of a brush. The color is used by the brush to fill in a shape. + * Obtains the color of a brush. The color is used by the brush to outline a shape. + * @returns { common2D.Color4f } Returns four floating point values that describes the color. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + getColor4f(): common2D.Color4f; + + /** + * Obtains the color of this brush. * @returns { number } Returns a 32-bit (ARGB) variable that describes the color of hexadecimal format. * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -3441,8 +3927,9 @@ declare namespace drawing { getHexColor(): number; /** - * Requests, but does not require, that edge pixels draw opaque or with partial transparency. - * @param { boolean } aa - Setting for antialiasing. + * Enables anti-aliasing for this brush. Anti-aliasing makes the edges of the content smoother. + * If this API is not called, anti-aliasing is disabled by default. + * @param { boolean } aa - Whether to enable anti-aliasing. The value true means to enable anti-aliasing, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3451,8 +3938,7 @@ declare namespace drawing { setAntiAlias(aa: boolean): void; /** - * Checks whether anti-aliasing is enabled for a brush. If anti-aliasing is enabled, - * edges will be drawn with partial transparency. + * Checks whether anti-aliasing is enabled for this brush. * @returns { boolean } Returns true if anti-aliasing is enabled; returns false otherwise. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -3460,8 +3946,8 @@ declare namespace drawing { isAntiAlias(): boolean; /** - * Replaces alpha, leaving RGB - * @param { number } alpha - Alpha channel of color. The range of alpha must be [0, 255]. + * Sets an alpha value for this brush. + * @param { number } alpha - Alpha value. The value is an integer in the range [0, 255]. If a floating point number is passed in, the value is rounded down. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3470,7 +3956,7 @@ declare namespace drawing { setAlpha(alpha: number): void; /** - * Obtains the alpha of a brush. The alpha is used by the brush to fill in a shape. + * Obtains the alpha value of this brush. * @returns { number } Returns a 8-bit variable that describes the alpha. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -3478,8 +3964,8 @@ declare namespace drawing { getAlpha(): number; /** - * Sets ColorFilter to brush - * @param { ColorFilter } filter - ColorFilter to apply to subsequent draw. + * Sets a color filter for this brush. + * @param { ColorFilter } filter - Color filter. If null is passed in, the color filter is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3488,15 +3974,15 @@ declare namespace drawing { setColorFilter(filter: ColorFilter): void; /** - * Gets ColorFilter of brush + * Obtains the color filter of this brush. * @returns { ColorFilter } ColorFilter. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getColorFilter(): ColorFilter; /** - * Sets ImageFilter to brush - * @param { ImageFilter | null } filter - ImageFilter to apply to subsequent draw. + * Sets an image filter for this brush. + * @param { ImageFilter | null } filter - Image filter. If null is passed in, the image filter effect of the brush will be cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3504,8 +3990,8 @@ declare namespace drawing { */ setImageFilter(filter: ImageFilter | null): void; /** - * Sets MaskFilter to brush. - * @param { MaskFilter } filter - MaskFilter to apply to subsequent draw. + * Adds a mask filter for this brush. + * @param { MaskFilter } filter - Mask filter. If null is passed in, the mask filter is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3514,9 +4000,9 @@ declare namespace drawing { setMaskFilter(filter: MaskFilter): void; /** - * Sets ShadowLayer to brush. + * Sets a shadow layer for this brush. The shadow layer effect takes effect only when text is drawn. * - * @param { ShadowLayer } shadowLayer - ShadowLayer painting. + * @param { ShadowLayer } shadowLayer - Shadow layer. If null is passed in, the shadow layer is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3525,8 +4011,8 @@ declare namespace drawing { setShadowLayer(shadowLayer: ShadowLayer): void; /** - * Sets the shaderEffect for a brush. - * @param { ShaderEffect } shaderEffect - Indicates the ShaderEffect object. + * Sets the shader effect for this brush. + * @param { ShaderEffect } shaderEffect - ShaderEffect object. If null is passed in, the shader effect will be cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3535,8 +4021,8 @@ declare namespace drawing { setShaderEffect(shaderEffect: ShaderEffect): void; /** - * Sets a blender that implements the specified blendmode enum. - * @param { BlendMode } mode - Blendmode. + * Sets a blend mode for this brush. If this API is not called, the default blend mode is SRC_OVER. + * @param { BlendMode } mode - Blend mode. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3545,7 +4031,7 @@ declare namespace drawing { setBlendMode(mode: BlendMode): void; /** - * Resets all brush contents to their initial values. + * Resets this brush to the initial state. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -3553,24 +4039,52 @@ declare namespace drawing { } /** - * Declares functions related to the matrix object in the drawing module. + * Implements a matrix. * * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class Matrix { /** - * Creates an identity matrix. + * Creates a Matrix object. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ constructor(); /** - * Sets matrix to rotate by degrees about a pivot point at (px, py). - * @param { number } degree - Indicates the angle of axes relative to upright axes. - * @param { number } px - Indicates the pivot on x-axis. - * @param { number } py - Indicates the pivot on y-axis. + * Creates a deep copy of the specified matrix object. + * @param { Matrix } matrix - The matrix object to copy. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + constructor(matrix: Matrix); + + /** + * Query whether the current matrix is affine or not. + * @returns { boolean } Returns true if the matrix is affine; returns false otherwise. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + isAffine(): boolean; + + /** + * Query whether a rectangle will map to another rectangle after applying this matrix. + * @returns { boolean } Returns true if the transformation keeps rectangles as rectangles; returns false otherwise. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + rectStaysRect(): boolean; + + /** + * Sets this matrix as an identity matrix and rotates it by a given degree around the rotation point (px, py). + * @param { number } degree - Angle to rotate, in degrees. A positive number indicates a clockwise rotation, + * and a negative number indicates a counterclockwise rotation. The value is a floating point number. + * @param { number } px - X coordinate of the rotation point. The value is a floating point number. + * @param { number } py - Y coordinate of the rotation point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3579,11 +4093,13 @@ declare namespace drawing { setRotation(degree: number, px: number, py: number): void; /** - * Sets matrix to scale by sx and sy, about a pivot point at (px, py). - * @param { number } sx - Indicates the horizontal scale factor. - * @param { number } sy - Indicates the vertical scale factor. - * @param { number } px - Indicates the pivot on x-axis. - * @param { number } py - Indicates the pivot on y-axis. + * Sets this matrix as an identity matrix and scales it with the coefficients (sx, sy) at the scale point (px, py). + * @param { number } sx - Scale coefficient along the X axis. If a negative number is passed in, + * the matrix is mirrored around y = px before being scaled. The value is a floating point number. + * @param { number } sy - Scale coefficient along the Y axis. If a negative number is passed in, + * the matrix is mirrored around x = py before being scaled. The value is a floating point number. + * @param { number } px - X coordinate of the scale point. The value is a floating point number. + * @param { number } py - Y coordinate of the scale point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3592,9 +4108,11 @@ declare namespace drawing { setScale(sx: number, sy: number, px: number, py: number): void; /** - * Sets matrix to translate by (dx, dy). - * @param { number } dx - Indicates the horizontal translation. - * @param { number } dy - Indicates the vertical translation. + * Sets this matrix as an identity matrix and translates it by a given distance (dx, dy). + * @param { number } dx - Horizontal distance to translate. A positive number indicates a translation towards the positive direction of the X axis, + * and a negative number indicates a translation towards the negative direction of the X axis. The value is a floating point number. + * @param { number } dy - Vertical distance to translate. A positive number indicates a translation towards the positive direction of the Y axis, + * and a negative number indicates a translation towards the negative direction of the Y axis. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3603,7 +4121,31 @@ declare namespace drawing { setTranslation(dx: number, dy: number): void; /** - * Sets the params for a matrix. + * Sets the skew transformation with a pivot point. + * @param { number } kx - The skew factor along the x-axis. + * @param { number } ky - The skew factor along the y-axis. + * @param { number } px - The x-coordinate of the point around which to apply the skew. + * @param { number } py - The y-coordinate of the point around which to apply the skew. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + setSkew(kx: number, ky: number, px: number, py: number): void; + + /** + * Sets the sine and cosine values for a rotation transformation around a point. + * @param { number } sinValue - The sine of the angle of rotation. + * @param { number } cosValue - The cosine of the angle of rotation. + * @param { number } px - The x-coordinate of the point around which to rotate. + * @param { number } py - The y-coordinate of the point around which to rotate. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + setSinCos(sinValue: number, cosValue: number, px: number, py: number): void; + + /** + * Sets parameters for this matrix. * @param { Array<number> } values - Each value in the array represents the following parameters: * values[0] - horizontal scale factor to store. * values[1] - horizontal skew factor to store. @@ -3622,8 +4164,36 @@ declare namespace drawing { setMatrix(values: Array<number>): void; /** - * Sets matrix total to matrix a multiplied by matrix b. - * @param { Matrix } matrix - Indicates the Matrix object. + * Sets matrix to the copy of anther matrix object. + * @param { Array<number> | Matrix } matrix - Indicates the Matrix object to copy. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + setMatrix(matrix: Array<number> | Matrix): void; + + /** + * Sets matrix to the product of matrix A and matrix B. + * @param { Matrix } matrixA - Indicates the MatrixA object. + * @param { Matrix } matrixB - Indicates the MatrixB object. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + setConcat(matrixA: Matrix, matrixB: Matrix): void; + + /** + * Sets matrix to the product of 'this' and another. + * @param { Matrix } matrix - Indicates the other Matrix object. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + postConcat(matrix: Matrix): void; + + /** + * Preconcats the existing matrix with the passed-in matrix. + * @param { Matrix } matrix - Matrix object, which is on the right of a multiplication expression. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3632,8 +4202,8 @@ declare namespace drawing { preConcat(matrix: Matrix): void; /** - * Returns true if the first matrix equals the second matrix. - * @param { Matrix } matrix - Indicates the Matrix object. + * Checks whether this matrix is equal to another matrix. + * @param { Matrix } matrix - Matrix to compare. * @returns { Boolean } Returns true if the two matrices are equal; returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3643,9 +4213,10 @@ declare namespace drawing { isEqual(matrix: Matrix): Boolean; /** - * Sets inverse to reciprocal matrix, returning true if matrix can be inverted. - * @param { Matrix } matrix - Indicates the Matrix object. - * @returns { Boolean } Returns true if matrix can be inverted; returns false otherwise. + * Inverts this matrix and returns the result. + * @param { Matrix } matrix - Matrix object used to store the inverted matrix. + * @returns { Boolean } Check result. The value true means that the matrix is revertible and the matrix object is set to its inverse, + * and false means that the matrix is not revertible and the matrix object remains unchanged. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3654,7 +4225,7 @@ declare namespace drawing { invert(matrix: Matrix): Boolean; /** - * Returns true if matrix is identity. + * Checks whether this matrix is an identity matrix. * @returns { Boolean } Returns true if matrix is identity; returns false otherwise. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -3662,8 +4233,8 @@ declare namespace drawing { isIdentity(): Boolean; /** - * Get one matrix value. Index is between the range of 0-8. - * @param { number } index - one of 0-8 + * Obtains the value of a given index in this matrix. The index ranges from 0 to 8. + * @param { number } index - Index. The value is an integer ranging from 0 to 8. * @returns { number } Returns value corresponding to index.Returns 0 if out of range. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -3672,11 +4243,12 @@ declare namespace drawing { */ getValue(index: number): number; /** - * Sets matrix to matrix multiplied by matrix constructed from rotating by degrees around pivot point (px, py). - * This can be thought of as rotating around a pivot point after applying matrix. - * @param { number } degree - Indicates the angle of axes relative to upright axes. - * @param { number } px - Indicates the pivot on x-axis. - * @param { number } py - Indicates the pivot on y-axis. + * Post multiplies this matrix by a matrix that is derived from an identity matrix after it has been rotated by a + * given degree around the rotation point (px, py). + * @param { number } degree - Angle to rotate, in degrees. A positive number indicates a clockwise rotation, + * and a negative number indicates a counterclockwise rotation. The value is a floating point number. + * @param { number } px - X coordinate of the rotation point. The value is a floating point number. + * @param { number } py - Y coordinate of the rotation point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3684,12 +4256,13 @@ declare namespace drawing { */ postRotate(degree: number, px: number, py: number): void; /** - * Sets matrix to matrix multiplied by matrix constructed from scaling by (sx, sy) relative to pivot point (px, py). - * This can be thought of as scaling relative to a pivot point after applying matrix. - * @param { number } sx - Indicates the horizontal scale factor. - * @param { number } sy - Indicates the vertical scale factor. - * @param { number } px - Indicates the pivot on x-axis. - * @param { number } py - Indicates the pivot on y-axis. + * Post multiplies this matrix by a matrix that is derived from an identity matrix after it has been scaled with the coefficient (sx, sy) at the scale point (px, py). + * @param { number } sx - Scale coefficient along the X axis. If a negative number is passed in, + * the matrix is mirrored around y = px before being scaled. The value is a floating point number. + * @param { number } sy - Scale coefficient along the Y axis. If a negative number is passed in, + * the matrix is mirrored around x = py before being scaled. The value is a floating point number. + * @param { number } px - X coordinate of the scale point. The value is a floating point number. + * @param { number } py - Y coordinate of the scale point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3697,35 +4270,67 @@ declare namespace drawing { */ postScale(sx: number, sy: number, px: number, py: number): void; /** - * Sets matrix to matrix multiplied by matrix constructed from translation (dx, dy). - * This can be thought of as moving the point to be mapped after applying matrix. - * @param { number } dx - Indicates the horizontal translation. - * @param { number } dy - Indicates the vertical translation. + * Post multiplies this matrix by a matrix that is derived from an identity matrix after it has been translated by a given distance (dx, dy). + * @param { number } dx - Horizontal distance to translate. A positive number indicates a translation towards the positive direction of the X axis, + * and a negative number indicates a translation towards the negative direction of the X axis. The value is a floating point number. + * @param { number } dy - Vertical distance to translate. A positive number indicates a translation towards the positive direction of the Y axis, + * and a negative number indicates a translation towards the negative direction of the Y axis. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ postTranslate(dx: number, dy: number): void; + /** - * Sets matrix to matrix multiplied by matrix constructed from rotating by degrees around pivot point (px, py). - * This can be thought of as rotating around a pivot point before applying matrix. - * @param { number } degree - Indicates the angle of axes relative to upright axes. + * Sets matrix to matrix multiplied by matrix constructed from skewing by (kx, ky) about pivot point (px, py). + * This can be thought of as scaling relative to a pivot point before applying matrix. + * @param { number } kx - Indicates the horizontal skew factor. + * @param { number } ky - Indicates the vertical skew factor. * @param { number } px - Indicates the pivot on x-axis. * @param { number } py - Indicates the pivot on y-axis. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + preSkew(kx: number, ky: number, px: number, py: number): void; + + /** + * Premultiplies this matrix by a matrix that is derived from an identity matrix after it has been rotated by a + * given degree around the rotation point (px, py). + * @param { number } degree - Angle to rotate, in degrees. A positive number indicates a clockwise rotation, + * and a negative number indicates a counterclockwise rotation. The value is a floating point number. + * @param { number } px - X coordinate of the rotation point. The value is a floating point number. + * @param { number } py - Y coordinate of the rotation point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ preRotate(degree: number, px: number, py: number): void; + /** - * Sets matrix to matrix multiplied by matrix constructed from scaling by (sx, sy) relative to pivot point (px, py). - * This can be thought of as scaling relative to a pivot point before applying matrix. - * @param { number } sx - Indicates the horizontal scale factor. - * @param { number } sy - Indicates the vertical scale factor. + * Sets matrix to matrix constructed from skewing by (kx, ky) about pivot point (px, py), multiplied by matrix. + * This can be thought of as skewing relative to a pivot point after applying matrix. + * @param { number } kx - Indicates the horizontal skew factor. + * @param { number } ky - Indicates the vertical skew factor. * @param { number } px - Indicates the pivot on x-axis. * @param { number } py - Indicates the pivot on y-axis. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + postSkew(kx: number, ky: number, px: number, py: number): void; + + /** + * Premultiplies this matrix by a matrix that is derived from an identity matrix after it has been scaled with the + * coefficient (sx, sy) at the scale point (px, py). + * @param { number } sx - Scale coefficient along the X axis. If a negative number is passed in, + * the matrix is mirrored around y = px before being scaled. The value is a floating point number. + * @param { number } sy - Scale coefficient along the Y axis. If a negative number is passed in, + * the matrix is mirrored around x = py before being scaled. The value is a floating point number. + * @param { number } px - X coordinate of the scale point. The value is a floating point number. + * @param { number } py - Y coordinate of the scale point. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3733,10 +4338,11 @@ declare namespace drawing { */ preScale(sx: number, sy: number, px: number, py: number): void; /** - * Sets matrix to matrix multiplied by matrix constructed from translation (dx, dy). - * This can be thought of as moving the point to be mapped before applying matrix. - * @param { number } dx - Indicates the horizontal translation. - * @param { number } dy - Indicates the vertical translation. + * Premultiplies this matrix by a matrix that is derived from an identity matrix after it has been translated by a given distance (dx, dy). + * @param { number } dx - Horizontal distance to translate. A positive number indicates a translation towards the positive direction of the X axis, + * and a negative number indicates a translation towards the negative direction of the X axis. The value is a floating point number. + * @param { number } dy - Vertical distance to translate. A positive number indicates a translation towards the positive direction of the Y axis, + * and a negative number indicates a translation towards the negative direction of the Y axis. The value is a floating point number. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -3744,15 +4350,14 @@ declare namespace drawing { */ preTranslate(dx: number, dy: number): void; /** - * Reset matrix to identity. + * Resets this matrix to an identity matrix. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ reset(): void; /** - * Maps src array of length count to dst array of equal or greater length. - * This can be thought of as moving the point to be mapped before applying matrix. - * @param { Array<common2D.Point> } src - points to transform. + * Maps a source point array to a destination point array by means of matrix transformation. + * @param { Array<common2D.Point> } src - Array of source points. * @returns { Array<common2D.Point> } Return mapped points array. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3760,17 +4365,33 @@ declare namespace drawing { * @since 12 */ mapPoints(src: Array<common2D.Point>): Array<common2D.Point>; + /** - * Return nine scalar values contained by Matrix. + * Forms a circle by radius and maps it to a ellipse, returns the average radius of the ellipse. + * The average radius is equal to the square root of the product of the major axis length and the minor axis length. + * @param { number } radius - circle size to map. + * @returns { number } Return average mapped radius. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + mapRadius(radius: number): number; + + /** + * Obtains all element values of this matrix. * @returns { Array<number> } nine scalar values contained by Matrix. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getAll(): Array<number>; /** - * Sets dst to bounds of src corners mapped by matrix transformation. - * @param { common2D.Rect } dst - Rect to map from. - * @param { common2D.Rect } src - Rect to map to. + * Sets the destination rectangle to the bounding rectangle of the shape obtained after transforming the source rectangle + * with a matrix transformation. As shown in the figure below, the blue rectangle represents the source rectangle, + * and the yellow rectangle is the shape obtained after a matrix transformation is applied to the source rectangle. + * Since the edges of the yellow rectangle are not aligned with the coordinate axes, it cannot be represented by a rectangle object. + * To address this issue, a destination rectangle (black rectangle) is defined as the bounding rectangle. + * @param { common2D.Rect } dst - Rectangle object, which is used to store the bounding rectangle. + * @param { common2D.Rect } src - Source rectangle. * @returns { boolean } Returns true if the mapped src is equal to the dst; returns false is not equal. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3779,14 +4400,14 @@ declare namespace drawing { */ mapRect(dst: common2D.Rect, src: common2D.Rect): boolean; /** - * Sets matrix to scale and translate src rect to dst rect. - * @param { common2D.Rect } src - Rect to map from. - * @param { common2D.Rect } dst - Rect to map to. - * @param { ScaleToFit } scaleToFit - Describes how matrix is constructed to map one rect to another. - * @returns { boolean } Returns true if dst is empty, and sets matrix to: - | 0 0 0 | - | 0 0 0 | - | 0 0 1 |. + * Sets this matrix to a transformation matrix that maps a source rectangle to a destination rectangle. + * @param { common2D.Rect } src - Source rectangle. + * @param { common2D.Rect } dst - Destination rectangle. + * @param { ScaleToFit } scaleToFit - Mapping mode from the source rectangle to the target rectangle. + * @returns { boolean } Check result. The value true means that the matrix can represent the mapping, and false means the opposite. + * If either the width or the height of the source rectangle is less than or equal to 0, the API returns false + * and sets the matrix to an identity matrix. If either the width or height of the destination rectangle is less than or equal to 0, + * the API returns true and sets the matrix to a matrix with all values 0, except for a perspective scaling coefficient of 1. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -3794,10 +4415,11 @@ declare namespace drawing { */ setRectToRect(src: common2D.Rect, dst: common2D.Rect, scaleToFit: ScaleToFit): boolean; /** - * Sets Matrix to map src to dst. Count must be zero or greater, and four or less. - * @param { Array<common2D.Point> } src - Point to map from - * @param { Array<common2D.Point> } dst - Point to map to - * @param { number } count - Number of Point in src and dst + * Sets this matrix to a transformation matrix that maps the source point array to the destination point array. + * Both the number of source points and that of destination points must be in the range [0, 4]. + * @param { Array<common2D.Point> } src - Array of source points. The array length must be the same as the value of count. + * @param { Array<common2D.Point> } dst - Array of destination points. The array length must be the same as the value of count. + * @param { number } count - Number of points in each array. The value is an integer. * @returns { boolean } Returns true if Matrix was constructed successfully * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3808,35 +4430,35 @@ declare namespace drawing { } /** - * Describes a scale-to-fit values. + * Enumerates the modes of scaling a source rectangle into a destination rectangle. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum ScaleToFit { /** - * Scales in x and y to fill destination Rect. + * Scales the source rectangle to completely fill the destination rectangle, potentially changing the aspect ratio of the source rectangle. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ FILL_SCALE_TO_FIT = 0, /** - * Scales and aligns to left and top. + * Scales the source rectangle, preserving its aspect ratio, to align it to the upper left corner of the destination rectangle. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ START_SCALE_TO_FIT = 1, /** - * Scales and aligns to center. + * Scales the source rectangle, preserving its aspect ratio, to align it to the center of the destination rectangle. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ CENTER_SCALE_TO_FIT = 2, /** - * Scales and aligns to right and bottom. + * Scales the source rectangle, preserving its aspect ratio, to align it to the lower right corner of the destination rectangle. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -3844,15 +4466,91 @@ declare namespace drawing { } /** - * Describes a region object. + * Describes a region, which is used to describe the region where the shape can be drawn. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class Region { /** - * Determines whether the test point is in the region. - * @param { number } x - Indicates the x coordinate of the point. The parameter must be an integer. - * @param { number } y - Indicates the y coordinate of the point. The parameter must be an integer. + * Creates an empty region. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + constructor(); + + /** + * Creates a deep copy of the specified region object. + * @param { Region } region - The region object to copy. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + constructor(region: Region); + + /** + * Creates a region with a rectangle. + * @param { number } left - Indicates the left edge of the rectangle. + * @param { number } top - Indicates the top edge of the rectangle. + * @param { number } right - Indicates the right edge of the rectangle. + * @param { number } bottom - Indicates the bottom edge of the rectangle. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + constructor(left: number, top: number, right: number, bottom: number); + + /** + * Query whether this region is equal to the other region. + * @param { Region } other - Indicates the region object for comparasion. + * @returns { boolean } Returns compare result. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + isEqual(other: Region): boolean; + + /** + * Query whether the region contains multiple rectangles. + * @returns { boolean } Returns true if the region contains more than one rectangle; + * <br>returns false otherwise. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + isComplex(): boolean; + + /** + * Query whether the region is empty . + * @returns { boolean } Returns true if the region is empty; returns false otherwise. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + isEmpty(): boolean; + + /** + * Gets the bounds of the region. + * @returns { common2D.Rect } Returns Rect object. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + getBounds(): common2D.Rect; + + /** Gets the boundary of the region, which represents by a path. + * Gets the bounds of the region. + * @returns { Path } Returns Path object. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + getBoundaryPath(): Path; + + /** + * Checks whether a point is contained in this region. + * @param { number } x - X coordinate of the point. The value must be an integer. If a decimal is passed in, the decimal part is rounded off. + * @param { number } y - Y coordinate of the point. The value must be an integer. If a decimal is passed in, the decimal part is rounded off. * @returns { boolean } Returns true if (x, y) is inside region; returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3862,8 +4560,8 @@ declare namespace drawing { isPointContained(x: number, y:number): boolean; /** - * Determines whether other region is in the region. - * @param { Region } other - Other region object. + * Checks whether another region is contained in this region. + * @param { Region } other - Region object. * @returns { boolean } Returns true if other region is completely inside the region object; * <br>returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -3874,9 +4572,9 @@ declare namespace drawing { isRegionContained(other: Region): boolean; /** - * Replaces region with the result of region op region. + * Performs an operation on this region and another region, and stores the resulting region in this Region object. * @param { Region } region - Region object. - * @param { RegionOp } regionOp - Operation type. + * @param { RegionOp } regionOp - Operation mode of the region. * @returns { boolean } Returns true if replaced region is not empty; returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3886,11 +4584,22 @@ declare namespace drawing { op(region: Region, regionOp: RegionOp): boolean; /** - * Determines whether rect and region does not intersect. - * @param { number } left - Left position of rectangle. The parameter must be an integer. - * @param { number } top - Top position of rectangle. The parameter must be an integer. - * @param { number } right - Right position of rectangle. The parameter must be an integer. - * @param { number } bottom - Bottom position of rectangle. The parameter must be an integer. + * Offsets the region by adding dx along the x-axis and dy along the y-axis. + * @param { number } dx - Indicates the x coordinate of the point. The parameter must be an integer. + * @param { number } dy - Indicates the y coordinate of the point. The parameter must be an integer. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + offset(dx: number, dy: number): void; + + /** + * Checks whether a rectangle do not intersect with this region. Actually, + * this API determines whether the rectangle does not intersect with the bounding rectangle of the region, and therefore the result may not be accurate. + * @param { number } left - Left position of the rectangle. The value must be an integer. If a decimal is passed in, the decimal part is rounded off. + * @param { number } top - Top position of the rectangle. The value must be an integer. If a decimal is passed in, the decimal part is rounded off. + * @param { number } right - Right position of the rectangle. The value must be an integer. If a decimal is passed in, the decimal part is rounded off. + * @param { number } bottom - Bottom position of the rectangle. The value must be an integer. If a decimal is passed in, the decimal part is rounded off. * @returns { boolean } Returns true if rect and region is not intersect; returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3900,8 +4609,19 @@ declare namespace drawing { quickReject(left: number, top: number, right: number, bottom: number): boolean; /** - * Sets the region to match outline of path within clip. - * @param { Path } path - Providing outline. + * Determines whether region is intersect with another. + * @param { Region } region - Indicates the other region for comparasion. + * @returns { boolean } Returns true if the region dose not intersect the other, or the region is empty; + * <br>returns false otherwise. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + quickRejectRegion(region: Region): boolean; + + /** + * Sets a region that matches the outline of a path within the cropping area. + * @param { Path } path - Path object. * @param { Region } clip - Region object. * @returns { boolean } Returns true if constructed region is not empty; returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -3912,11 +4632,11 @@ declare namespace drawing { setPath(path: Path, clip: Region): boolean; /** - * Sets a rect to region. - * @param { number } left - Left position of rectangle. The parameter must be an integer. - * @param { number } top - Top position of rectangle. The parameter must be an integer. - * @param { number } right - Right position of rectangle. The parameter must be an integer. - * @param { number } bottom - Bottom position of rectangle. The parameter must be an integer. + * Sets a rectangle. + * @param { number } left - Left position of the rectangle. The value must be an integer. If a decimal is passed in, the decimal part is rounded off. + * @param { number } top - Top position of the rectangle. The value must be an integer. If a decimal is passed in, the decimal part is rounded off. + * @param { number } right - Right position of the rectangle. The value must be an integer. If a decimal is passed in, the decimal part is rounded off. + * @param { number } bottom - Bottom position of the rectangle. The value must be an integer. If a decimal is passed in, the decimal part is rounded off. * @returns { boolean } Returns true if constructed region is not empty; returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -3924,10 +4644,27 @@ declare namespace drawing { * @since 12 */ setRect(left: number, top: number, right: number, bottom: number): boolean; + + /** + * Sets the region to the specified region. + * @param { Region } region - Region object. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + setRegion(region: Region): void; + + /** + * Sets the region to empty. + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + setEmpty(): void; } /** - * Enumerates of operations when two regions are combined. + * Enumerates the operations for combining two regions. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -3977,7 +4714,7 @@ declare namespace drawing { } /** - * Enumerates of corner radius position. + * Enumerates the corner positions of a rounded rectangle. * * @enum { number } * @syscap SystemCapability.Graphics.Drawing @@ -3985,28 +4722,28 @@ declare namespace drawing { */ enum CornerPos { /** - * Index of top-left corner radius. + * Top left corner of the rounded rectangle. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ TOP_LEFT_POS = 0, /** - * Index of top-right corner radius. + * Top right corner of the rounded rectangle. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ TOP_RIGHT_POS = 1, /** - * Index of bottom-right corner radius. + * Bottom right corner of the rounded rectangle. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ BOTTOM_RIGHT_POS = 2, /** - * Index of bottom-left corner radius. + * Bottom left corner of the rounded rectangle. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -4014,7 +4751,8 @@ declare namespace drawing { } /** - * Enumeration defines the constraint type. + * Enumerates the constraints on the source rectangle. + * It is used to specify whether to limit the sampling range within the source rectangle when drawing an image on a canvas. * * @enum { number } * @syscap SystemCapability.Graphics.Drawing @@ -4023,7 +4761,7 @@ declare namespace drawing { enum SrcRectConstraint { /** - * Using sampling only inside bounds in a slower manner. + * The sampling range is strictly confined to the source rectangle, resulting in a slow sampling speed. * * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -4031,7 +4769,7 @@ declare namespace drawing { STRICT = 0, /** - * Using sampling outside bounds in a faster manner. + * The sampling range is not limited to the source rectangle and can extend beyond it, allowing for a high sampling speed. * * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -4040,15 +4778,18 @@ declare namespace drawing { } /** - * The Tool class for drawing. + * A utility class that provides only static methods to convert data structs defined in other modules and common2D. * * @syscap SystemCapability.Graphics.Drawing * @since 15 */ class Tool { /** - * Make a common2D.Color variable that describes the color from ResourceColor. - * @param { ResourceColor } resourceColor - ResourceColor. + * Converts a color value of the ResourceColor type to a common2D.Color object. + * @param { ResourceColor } resourceColor - Color value of the ResourceColor type. (All four types of inputs are supported. + * The following provides 13 example inputs.) The fourth type of Resource supports only the construction method $r('belonging.type.name'). + * Ensure that the resource has been defined in the main/resources/base/element directory. (The types color, string, + * and integer are available for the belonging app, whereas only the type color is available for the belonging sys.) * @returns { common2D.Color } Returns a 32-bit (ARGB) variable that describes the color. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. @@ -4057,6 +4798,298 @@ declare namespace drawing { */ static makeColorFromResourceColor(resourceColor: ResourceColor): common2D.Color; } + + /** + * This class offers a comprehensive set of operations to handle for common2D Rect object. + * + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + class RectUtils { + /** + * Makes an uninitialized 2D rectangular object with zero dimensions and origin at (0, 0). + * + * @returns { common2D.Rect } - Returns an empty Rect object with all coordinates (left, top, right, bottom) set to 0. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static makeEmpty() : common2D.Rect; + + /** + * Makes a 2D rectangular object from boundary coordinates. + * @param { number } left - Indicates the X-coordinate of the left edge. + * @param { number } top - Indicates the Y-coordinate of the top edge. + * @param { number } right - Indicates the X-coordinate of the right edge. + * @param { number } bottom - Indicates the Y-coordinate of the bottom edge. + * @returns { common2D.Rect } - Returns an Rect object with the specific coordinates (left, top, right, bottom). + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static makeLtrb(left: number, top: number, right: number, bottom: number) : common2D.Rect; + + /** + * Makes a deep copy of a 2D rectangular object. + * @param { common2D.Rect } src - Indicates the source rectangle to copy. + * @returns { common2D.Rect } - Returns an Rect object has the same boundary coordinates with the source. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static makeCopy(src: common2D.Rect) : common2D.Rect; + + /** + * Gets the width of a 2D rectangular object. + * + * @param { common2D.Rect } rect - Indicates the Rect object to query. + * @returns { number } - Returns the width. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static getWidth(rect: common2D.Rect): number; + + /** + * Gets the height of a 2D rectangular object. + * + * @param { common2D.Rect } rect - Indicates the Rect object to query. + * @returns { number } - Returns the height. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static getHeight(rect: common2D.Rect): number; + + /** + * Calculates the x-coordinate of the center point of the 2D rectangular object. + * + * @param { common2D.Rect } rect - Indicates the Rect object to query. + * @returns { number } - Returns the center X coordinate. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static centerX(rect: common2D.Rect): number; + + /** + * Calculates the y-coordinate of the center point of the 2D rectangular object. + * + * @param { common2D.Rect } rect - Indicates the Rect object to query. + * @returns { number } - Returns the center Y coordinate. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static centerY(rect: common2D.Rect): number; + + /** + * Checks if one 2D rectangular object fully contains another. + * + * @param { common2D.Rect } rect - The container Rect object. + * @param { common2D.Rect } other - The Rect object to check for containment. + * @returns { boolean } - Returns true if 'rect' fully contains 'other'; returns false otherwise. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static contains(rect: common2D.Rect, other: common2D.Rect): boolean; + + /** + * Checks if one 2D rectangular object fully contains the specified boundary coordinates. + * + * @param { common2D.Rect } rect - The container Rect object. + * @param { number } left - Indicates the left boundary of the target region. + * @param { number } top - Indicates the top boundary of the target region. + * @param { number } right - Indicates the right boundary of the target region. + * @param { number } bottom - Indicates the bottom boundary of the target region. + * @returns { boolean } - Returns true if 'rect' fully contains the specified boundary coordinates; returns false otherwise. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static contains(rect: common2D.Rect, left: number, top: number, right: number, bottom: number): boolean; + + /** + * Checks if one 2D rectangular object contains a specific point. + * + * @param { common2D.Rect } rect - The container Rect object. + * @param { number } x - Indicates the X-coordinate of the point to check. + * @param { number } y - Indicates the Y-coordinate of the point to check. + * @returns { boolean } - Returns true if 'rect' contains the specified point; returns false otherwise. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static contains(rect: common2D.Rect, x: number, y: number): boolean; + + /** + * Modifies a 2D rectangular's boundaries by inward offsets. + * + * @param { common2D.Rect } rect - The Rect object to adjust. + * @param { number } left - Indicates the amount to add from the left boundary. + * @param { number } top - Indicates the amount to add from the top boundary. + * @param { number } right - Indicates the amount to substract from the right boundary. + * @param { number } bottom - Indicates the amount to substract from the bottom boundary. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static inset(rect: common2D.Rect, left: number, top: number, right: number, bottom: number): void; + + /** + * Relpace a 2D rectangular object by the intersection of itself and another. + * If the intersection is empty, nothing is done. + * + * @param { common2D.Rect } rect - Indicates the Rect object. + * @param { common2D.Rect } other - Indicates the other Rect object. + * @returns { boolean } - Returns true if have area in common and 'rect' will be replaced by the intersection; + * returns false if the intersection is empty and 'rect' will not be modified. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static intersect(rect: common2D.Rect, other: common2D.Rect): boolean; + + /** + * Checks if two 2D rectangular objects intersect. + * + * @param { common2D.Rect } rect - Indicates the Rect object. + * @param { common2D.Rect } other - Indicates the other Rect object. + * @returns { boolean } - Returns true if have area in common, otherwise return false. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static isIntersect(rect: common2D.Rect, other: common2D.Rect): boolean; + + /** + * Sets a 2D rectangular object to the union of itself and another. + * + * @param { common2D.Rect } rect - Indicates the Rect object. + * @param { common2D.Rect } other - Indicates the other Rect object. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static union(rect: common2D.Rect, other: common2D.Rect): void; + + /** + * Checks if the 2D rectangular object is empty. + * + * @param { common2D.Rect } rect - Indicates the Rect object. + * @returns { boolean } - Returns true if the rectangle is empty (left >= right or top >= bottom); returns false otherwise. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static isEmpty(rect: common2D.Rect): boolean; + + /** + * Offsets the 2D rectangular object by adding dx to its left and right coordinates, + * and adding dy to its top and bottom coordinates. + * + * @param { common2D.Rect } rect - Indicates the Rect object. + * @param { number } dx - Indicates the amount to add to the rectangle's left and right coordinates. + * @param { number } dy - Indicates the amount to add to the rectangle's top and bottom coordinates. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static offset(rect: common2D.Rect, dx: number, dy: number): void; + + /** + * Offsets the rectangle to a specific position and kepps the width and height unchanged. + * + * @param { common2D.Rect } rect - Indicates the Rect object. + * @param { number } newLeft - Indicates the new left coordinates. + * @param { number } newTop - Indicates the new top coordinates. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static offsetTo(rect: common2D.Rect, newLeft: number, newTop: number): void; + + /** + * Sets the boundary coordinates of a 2D rectangular object with that of another. + * @param { common2D.Rect } rect - Indicates the Rect object to be modified. + * @param { common2D.Rect } other - Indicates the source rectangle to copy. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static setRect(rect: common2D.Rect, other: common2D.Rect): void; + + /** + * Sets the boundary coordinates of a 2D rectangular object with that of specific value. + * @param { common2D.Rect } rect - Indicates the Rect object to be modified. + * @param { number } left - Indicates the X-coordinate of the left edge. + * @param { number } top - Indicates the Y-coordinate of the top edge. + * @param { number } right - Indicates the X-coordinate of the right edge. + * @param { number } bottom - Indicates the Y-coordinate of the bottom edge. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static setLtrb(rect: common2D.Rect, left: number, top: number, right: number, bottom: number): void; + + /** + * Sets the boundary coordinates of a 2D rectangular object to zero. + * @param { common2D.Rect } rect - Indicates the Rect object to be modified. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static setEmpty(rect: common2D.Rect): void; + + /** + * Normalizes the 2D rectangular object to ensuer validity. + * Swaps the left and right if the left is greater than right; + * and swaps top and bottom if the top is greater than bottom. + * If the edges are already valid, then nothing is done. + * + * @param { common2D.Rect } rect - Indicates the Rect object. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static sort(rect: common2D.Rect): void; + + /** + * Checks if the 2D rectangular object has the same coordinates value with another. + * + * @param { common2D.Rect } rect - Indicates the Rect object. + * @param { common2D.Rect } other - Indicates the other Rect object for comparison. + * @returns { boolean } Returns true if left, top, right and bottom of rect and other are equal; returns false otherwise. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @crossplatform + * @since 20 + */ + static isEqual(rect: common2D.Rect, other: common2D.Rect): boolean; + } } export default drawing; diff --git a/api/@ohos.graphics.hdrCapability.d.ts b/api/@ohos.graphics.hdrCapability.d.ts index 63db216d71c4e45e31b084fc1c22067b614be9fa..6b261e4f2b5d59a710fcfb81a60517f1a895cfbc 100644 --- a/api/@ohos.graphics.hdrCapability.d.ts +++ b/api/@ohos.graphics.hdrCapability.d.ts @@ -16,6 +16,7 @@ /** * @file * @kit ArkGraphics2D + * @arkts 1.1&1.2 */ import { AsyncCallback } from './@ohos.base'; @@ -33,7 +34,7 @@ import { AsyncCallback } from './@ohos.base'; * @namespace hdrCapability * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ declare namespace hdrCapability { /** @@ -49,7 +50,7 @@ declare namespace hdrCapability { * @enum { number } * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ enum HDRFormat { /** @@ -63,7 +64,7 @@ declare namespace hdrCapability { * * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ NONE = 0, /** @@ -77,7 +78,7 @@ declare namespace hdrCapability { * * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ VIDEO_HLG = 1, /** @@ -91,7 +92,7 @@ declare namespace hdrCapability { * * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ VIDEO_HDR10 = 2, /** @@ -105,7 +106,7 @@ declare namespace hdrCapability { * * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ VIDEO_HDR_VIVID = 3, /** @@ -119,7 +120,7 @@ declare namespace hdrCapability { * * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ IMAGE_HDR_VIVID_DUAL = 4, /** @@ -133,7 +134,7 @@ declare namespace hdrCapability { * * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ IMAGE_HDR_VIVID_SINGLE = 5, /** @@ -147,7 +148,7 @@ declare namespace hdrCapability { * * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ IMAGE_HDR_ISO_DUAL = 6, /** @@ -161,7 +162,7 @@ declare namespace hdrCapability { * * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ IMAGE_HDR_ISO_SINGLE = 7, } diff --git a/api/@ohos.graphics.scene.d.ts b/api/@ohos.graphics.scene.d.ts index 2d6b1d45679241d77858fcc109a881ef0d0d6c5c..bb398ee4e3118d486dd4b448e48f093cfe584a79 100644 --- a/api/@ohos.graphics.scene.d.ts +++ b/api/@ohos.graphics.scene.d.ts @@ -39,7 +39,9 @@ export { Vec2, Vec3, Vec4, Color, Rect, Quaternion, Aabb, Position3, Rotation3, * @since 12 */ export { SceneResourceType, SceneResource, Shader, MaterialType, Material, ShaderMaterial, - SubMesh, Mesh, Animation, EnvironmentBackgroundType, Environment, Image, MeshResource } from './graphics3d/SceneResources'; + SubMesh, Mesh, Animation, EnvironmentBackgroundType, Environment, Image, CullMode, Blend, + RenderSort, MaterialProperty, MetallicRoughnessMaterial, MeshResource, Morpher, + Sampler, SamplerFilter, SamplerAddressMode } from './graphics3d/SceneResources'; /** * Export scene nodes @@ -54,4 +56,5 @@ export { LayerMask, NodeType, Container, Node, Geometry, LightType, Light, SpotL * @syscap SystemCapability.ArkUi.Graphics3D * @since 12 */ -export { SceneResourceParameters, SceneNodeParameters, SceneResourceFactory, Scene, RenderParameters } from './graphics3d/Scene'; +export { SceneResourceParameters, SceneNodeParameters, SceneResourceFactory, Scene, RaycastResult, RaycastParameters, + RenderParameters, RenderResourceFactory, SceneComponent, RenderContext } from './graphics3d/Scene'; diff --git a/api/@ohos.graphics.sendableColorSpaceManager.d.ets b/api/@ohos.graphics.sendableColorSpaceManager.d.ets index e0db70e0ae7ac0c8a45acae9cef854b28a3e260d..b4e7e953ead3d336d4dc0bf0cd9c306800b539a8 100644 --- a/api/@ohos.graphics.sendableColorSpaceManager.d.ets +++ b/api/@ohos.graphics.sendableColorSpaceManager.d.ets @@ -51,7 +51,8 @@ declare namespace sendableColorSpaceManager { /** * Get the name of color space type. * @returns { colorSpaceManager.ColorSpace } Returns the name of color space type. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @since 12 @@ -61,7 +62,8 @@ declare namespace sendableColorSpaceManager { /** * Get white point(x, y) of color space. * @returns { collections.Array<number> } Returns the white point value of color space. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @since 12 @@ -71,7 +73,8 @@ declare namespace sendableColorSpaceManager { /** * Get gamma value of color space. * @returns { number } Returns the gamma value of color space. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @since 12 @@ -85,7 +88,8 @@ declare namespace sendableColorSpaceManager { * @returns { ColorSpaceManager } Returns a color space manager object created by provided type. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Incorrect parameter type. * 2.Parameter verification failed. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @since 12 @@ -99,7 +103,8 @@ declare namespace sendableColorSpaceManager { * @returns { ColorSpaceManager } Returns a color space manager object created by customized parameters. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Incorrect parameter type. * 2.Parameter verification failed. - * @throws { BusinessError } 18600001 - The parameter value is abnormal. + * @throws { BusinessError } 18600001 - Invalid parameter value. Possible cause: Used UNKNOWN or CUSTOM + * color space type enum values to directly create a colorSpaceManager object. * @syscap SystemCapability.Graphic.Graphic2D.ColorManager.Core * @crossplatform * @since 12 diff --git a/api/@ohos.graphics.text.d.ts b/api/@ohos.graphics.text.d.ts index edaf344f7d730927357d90f5ef2d9aa4098d1b98..2391c57664d9ff466c5544f9013e2336622303d1 100755 --- a/api/@ohos.graphics.text.d.ts +++ b/api/@ohos.graphics.text.d.ts @@ -21,7 +21,23 @@ import type drawing from './@ohos.graphics.drawing'; import type common2D from './@ohos.graphics.common2D'; /** - * Provides functions such as 2D graphics text paragraphs, text styles. + * The Text module provides a set of APIs for text layout and font management. + * It aims to deliver high-quality typesetting through features like character-to-glyph + * conversion, kerning, line breaking, alignment, and text measurement. Additionally, + * it provides font management capabilities, including font registration, font descriptors, + * and font collection management. + * + * This module provides the following classes for creating complex text paragraphs: + * + * TextStyle: defines the font type, size, spacing, and other text properties. + * FontCollection: manages a collection of different fonts. + * FontDescriptor: provides information about font descriptors. + * ParagraphStyle: controls line break and word break strategies for the entire paragraph. + * ParagraphBuilder: used to create different paragraph objects. + * Paragraph: created by calling build() of the ParagraphBuilder class. + * LineTypeset: created by calling buildLineTypeset() of the ParagraphBuilder class. + * TextLine: paragraph text on a line-by-line basis, obtained by calling getTextLines() of the Paragraph class. + * Run: text typesetting unit, obtained by calling getGlyphRuns() of the TextLine class. * * @namespace text * @syscap SystemCapability.Graphics.Drawing @@ -58,27 +74,61 @@ declare namespace text { CENTER = 2, /** - * Align the text at the start and end of the line. + * Justified, which means that each line (except the last line) is stretched so that every line has equal width, + * and the left and right margins are straight. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ JUSTIFY = 3, /** - * Align text from start, based on the direction of text, such as left-to-right or right-to-left. + * Align text from start, based on the TextDirection, such as left-to-right or right-to-left. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ START = 4, /** - * Align text from end, based on the direction of text, such as left-to-right or right-to-left, opposite to START. + * Align text from end, based on the TextDirection, such as left-to-right or right-to-left, opposite to START. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ END = 5, } + /** + * Enumerates the vertical alignment modes. + * @enum { number } + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + enum TextVerticalAlign { + /** + * Baseline alignment in the vertical direction. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + BASELINE = 0, + /** + * Bottom alignment in the vertical direction. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + BOTTOM = 1, + /** + * Center alignment in the vertical direction. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + CENTER = 2, + /** + * Top alignment in the vertical direction. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + TOP = 3 + } + /** * Enumerate text runs direction. * @enum { number } @@ -109,21 +159,21 @@ declare namespace text { */ enum BreakStrategy { /** - * The segmentation strategy is greedy. + * Fills the current line as much as possible without adding hyphens. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ GREEDY, /** - * The segmentation strategy is high quality. + * Optimizes layout and may add hyphens when necessary. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ HIGH_QUALITY, /** - * The segmentation strategy is balanced. + * Ensures consistent line width in a paragraph, adding hyphens if needed. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -138,28 +188,33 @@ declare namespace text { */ enum WordBreak { /** - * Normal word break strategy. + * Default mode that break words based on language-specific conventions. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ NORMAL, /** - * Breaks word by character. + * Allows breaks within any character in non-CJK text. (CJK means Chinese, Japanese, and Korean.) + * This value is suitable for Asian text that contains some non-Asian text. For example, + * it can be used to break consecutive English characters. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ BREAK_ALL, /** - * Breaks word by phrase. + * Allows breaks between any two characters in non-CJK text. It prioritizes breaking at whitespace + * or other natural breakpoints to keep words intact. If no breakpoints are found, it breaks between + * any two characters. For CJK text, this behaves like NORMAL. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ BREAK_WORD, /** - * Breaks word by hyphen. + * Attempts to break words at the end of a line using a hyphen. If a hyphen cannot be added, + * it behaves like BREAK_WORD. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ @@ -167,14 +222,14 @@ declare namespace text { } /** - * Decoration for text. + * Describes a text decoration. * @typedef Decoration * @syscap SystemCapability.Graphics.Drawing * @since 12 */ interface Decoration { /** - * Decorates text by line. + * Type of the decoration. The default value is NONE. * @type { ?TextDecorationType } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -182,7 +237,7 @@ declare namespace text { textDecoration?: TextDecorationType; /** - * Text color. + * Color of the decoration. The default value is transparent. * @type { ?common2D.Color } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -190,7 +245,7 @@ declare namespace text { color?: common2D.Color; /** - * Text decoration style. + * Style of the decoration. The default value is SOLID. * @type { ?TextDecorationStyle } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -198,7 +253,8 @@ declare namespace text { decorationStyle?: TextDecorationStyle; /** - * The thickness scale of decoration line. + * Scale factor for the thickness of the decoration line. The value is a floating point number. + * The default value is 1.0. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -207,7 +263,7 @@ declare namespace text { } /** - * Enumerates decoration line for text. + * Enumerates the text decoration types. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -243,7 +299,7 @@ declare namespace text { } /** - * Enumerates decoration line style. + * Enumerates the text decoration styles. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -371,14 +427,14 @@ declare namespace text { NORMAL, /** - * Slant font. + * Slant font. If no italic version is available for the current font, the oblique version will be used instead. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ ITALIC, /** - * Oblique font. + * Oblique font. If no oblique version is available for the current font, the italic version will be used instead. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -457,35 +513,35 @@ declare namespace text { } /** - * Enumerates of height mode of text. + * Enumerates the text height modifier patterns. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum TextHeightBehavior { /** - * Both ascend of first row and last row style. + * Allows the first line of the paragraph to rise and the last line to drop. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ ALL = 0x0, /** - * Forbidding ascend of first row style. + * Prevents the first line of a paragraph from rising. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ DISABLE_FIRST_ASCENT = 0x1, /** - * Forbidding ascend of last row style. + * Prevents the last line of a paragraph from dropping. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ DISABLE_LAST_ASCENT = 0x2, /** - * Neither ascend of first row nor last row style. + * Combines the effects of disabling the first line from rising and the last line from dropping. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -518,27 +574,28 @@ declare namespace text { /** * Enumerates of ellipsis mode. + * EllipsisMode.START and EllipsisMode.MIDDLE take effect only when text overflows in a single line. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum EllipsisMode { /** - * The ellipsis is shown in the start of text. + * Places the ellipsis in the text header. It is valid only when maxLines is set to 1 in ParagraphStyle. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ START, /** - * The ellipsis is shown in the middle of text. + * Places the ellipsis in the middle of the text. It is valid only when maxLines is set to 1 in ParagraphStyle. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ MIDDLE, /** - * The ellipsis is shown in the end of text. + * Places the ellipsis at the end of the text. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -553,21 +610,23 @@ declare namespace text { */ interface TextShadow { /** - * The color of text shadow. + * Color of the text shadow. The default value is black (255, 0, 0, 0). * @type { ?common2D.Color } The color of text shadow * @syscap SystemCapability.Graphics.Drawing * @since 12 */ color?: common2D.Color; /** - * The value sets offset of text shadow that based on the original text. + * Position of the text shadow relative to the text. + * The horizontal and vertical coordinates must be greater than or equal to 0. * @type { ?common2D.Point } The point of shadow * @syscap SystemCapability.Graphics.Drawing * @since 12 */ point?: common2D.Point; /** - * The value sets special effect radius of blurring text, it default is 0. + * The value sets special effect radius of blurring text. + * The value is a floating point number. The default value is 0.0px. * @type { ?number } The value about radius of blur, it type is "double" * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -576,14 +635,14 @@ declare namespace text { } /** - * Describes rect style of text. + * Describes the style of a rectangle. * @typedef RectStyle * @syscap SystemCapability.Graphics.Drawing * @since 12 */ interface RectStyle { /** - * The color of rect style. + * Color of the rectangle. * @type { common2D.Color } The color of rect style * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -591,7 +650,7 @@ declare namespace text { color: common2D.Color; /** - * Radius in left top of rect style. + * Left top radius of the rectangle. * @type { number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -599,7 +658,7 @@ declare namespace text { leftTopRadius: number; /** - * Radius in right top of rect style. + * Right top radius of the rectangle. * @type { number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -607,7 +666,7 @@ declare namespace text { rightTopRadius: number; /** - * Radius in right bottom of rect style. + * Right bottom radius of the rectangle. * @type { number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -615,7 +674,7 @@ declare namespace text { rightBottomRadius: number; /** - * Radius in left bottom of rect style. + * Left bottom radius of the rectangle. * @type { number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -631,14 +690,14 @@ declare namespace text { */ interface FontFeature { /** - * The name of font feature. + * String identified by the keyword in the font feature key-value pair. * @type { string } feature name * @syscap SystemCapability.Graphics.Drawing * @since 12 */ name: string; /** - * The value of font feature. + * Value in the font feature key-value pair. * @type { number } feature value * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -654,14 +713,14 @@ declare namespace text { */ interface FontVariation { /** - * The axis of font variation. + * String identified by the keyword in the font variation key-value pair. * @type { string } variation axis * @syscap SystemCapability.Graphics.Drawing * @since 12 */ axis: string; /** - * The value of font variation. + * Value in the font variation key-value pair. * @type { number } variation value * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -669,6 +728,33 @@ declare namespace text { value: number; } + /** + * Describes badge type of text. + * @typedef TextBadgeType + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + enum TextBadgeType { + /** + * No badge. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + TEXT_BADGE_NONE, + /** + * Superscript. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + TEXT_SUPERSCRIPT, + /** + * Subscript. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + TEXT_SUBSCRIPT, + } + /** * Describes text style. * @typedef TextStyle @@ -678,7 +764,7 @@ declare namespace text { interface TextStyle { /** - * Decoration of text. + * Text decoration. By default, no decoration is used. * @type { ?Decoration } decoration for text * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -686,7 +772,7 @@ declare namespace text { decoration?: Decoration; /** - * Color of text. + * Text color. The default color is white. * @type { ?common2D.Color } it is uint32_t type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -694,7 +780,9 @@ declare namespace text { color?: common2D.Color; /** - * Font weight of text. + * Font weight. The default value is W400. Currently, only the default system font supports font weight adjustment. + * For other fonts, if the weight is less than semi-bold (W600), there is no variation in stroke thickness. + * If the weight is greater than or equal to semi-bold, it might result in a fake bold effect. * @type { ?FontWeight } it is uint32_t type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -702,7 +790,7 @@ declare namespace text { fontWeight?: FontWeight; /** - * Font style of text. + * Font style. The default value is NORMAL. * @type { ?FontStyle } it is uint32_t type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -710,7 +798,7 @@ declare namespace text { fontStyle?: FontStyle; /** - * Base line of text. + * Text baseline type. The default value is ALPHABETIC. * @type { ?TextBaseline } it is uint32_t type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -718,7 +806,7 @@ declare namespace text { baseline?: TextBaseline; /** - * Font Families of text. + * Array of font families. By default, the array is empty, indicating that all system fonts are matched. * @type { ?Array<string> } fontfamily gather * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -726,7 +814,7 @@ declare namespace text { fontFamilies?: Array<string>; /** - * Font size of text. + * Font size, in units of px. The value is a floating point number. The default value is 14.0. * @type { ?number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -734,7 +822,9 @@ declare namespace text { fontSize?: number; /** - * Letter spacing of text. + * Letter spacing, in units of px. The value is a floating point number. + * The default value is 0.0. A positive value causes characters to spread farther apart, + * and a negative value bring characters closer together. * @type { ?number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -742,7 +832,7 @@ declare namespace text { letterSpacing?: number; /** - * Word spacing of text. + * Word spacing, in units of px. The value is a floating point number. The default value is 0.0. * @type { ?number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -750,7 +840,8 @@ declare namespace text { wordSpacing?: number; /** - * Height scale of text. + * Scale factor of the line height. The value is a floating point number. + * The default value is 1.0. This parameter is valid only when heightOnly is set to true. * @type { ?number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -758,7 +849,9 @@ declare namespace text { heightScale?: number; /** - * Half leading of text. + * Whether half leading is enabled. + * Half leading is the leading split in half and applied equally to the top and bottom edges. + * The value true means that half leading is enabled, and false means the opposite. The default value is false. * @type { ?boolean } it is boolean type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -766,8 +859,9 @@ declare namespace text { halfLeading?: boolean; /** - * Control the height calculation method of font blob, true means calculate the height of the blob by - * the font size, false means by the line height and leading. + * How the height of the text box is set. + * The value true means that the height of the text box is set based on the font size and the value of heightScale, + * and false means that the height is set based on the line height and line spacing. The default value is false. * @type { ?boolean } it is boolean type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -775,7 +869,7 @@ declare namespace text { heightOnly?: boolean; /** - * Text ellipsis. + * Ellipsis content, which will be used to replace the extra content. * @type { ?string } it is u16string type data. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -783,7 +877,7 @@ declare namespace text { ellipsis?: string; /** - * Text ellipsis mode. + * Ellipsis type. The default value is END, indicating that the ellipsis is at the end of a line. * @type { ?EllipsisMode } Ellipsis mode. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -791,7 +885,8 @@ declare namespace text { ellipsisMode?: EllipsisMode; /** - * Text locale. + * Locale. For example, 'en' indicates English, 'zh-Hans' indicates Simplified Chinese, + * and 'zh-Hant' indicates Traditional Chinese. For details, see ISO 639-1. The default value is an empty string. * @type { ?string } it is string type data. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -799,7 +894,7 @@ declare namespace text { locale?: string; /** - * The offset distance that the underline of text. + * Shift of the baseline. The value is a floating point number. The default value is 0.0px. * @type { ?number } it is double type data. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -823,7 +918,7 @@ declare namespace text { textShadows?: Array<TextShadow>; /** - * Rect style of text. + * Rectangle style of text. * @type { ?RectStyle } rect style for text. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -837,10 +932,18 @@ declare namespace text { * @since 12 */ fontVariations?: Array<FontVariation>; + + /** + * Text style available badge type. + * @type { ?TextBadgeType } The type of text badge type. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + badgeType?: TextBadgeType; } /** - * Provides the basis for graphics. + * Implements a collection of fonts. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -854,28 +957,67 @@ declare namespace text { static getGlobalInstance(): FontCollection; /** - * Load font. + * Loads a custom font. This API returns the result synchronously. + * In this API, name specifies the alias of the font, and the custom font effect can be displayed only when + * the value of name is set in fontFamilies in TextStyle. The supported font file formats are .ttf and .otf. * @param { string } name - the font name. - * @param { string | Resource } path - the path of the font file. + * @param { string | Resource } path - Path of the font file to import. The value must be + * **file://**absolute path of the font file or **rawfile/**directory or file name. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ loadFontSync(name: string, path: string | Resource): void; /** - * Load font. - * @param { string } name - The font name. - * @param { string | Resource } path - The path of the font file. - * @returns { Promise<void> } The promise returned by the function. + * Loads a custom font. This API uses a promise to return the result. + * In this API, name specifies the alias of the font, and the custom font effect can be displayed only when + * the value of name is set in fontFamilies in TextStyle. The supported font file formats are ttf and otf. + * @param { string } name - Name of the font. Any string is acceptable. + * @param { string | Resource } path - Path of the font file to load. + * The value must be **file://**absolute path of the font file or **rawfile/**directory or file name. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ loadFont(name: string, path: string | Resource): Promise<void>; + /** + * Unloads a custom font synchronously. This API returns the result synchronously. + * After unloading a font alias through this API, the corresponding custom font will no longer be available. + * All typography using the font alias should be destroyed and re-created. + * - Unloading a non-existent font alias has no effect and will **not** throw an error. + * - This operation only affects subsequent font usages. + * unload a font that is currently in used may lead to text rendering anomalies, + * including garbled characters or missing glyphs. + * @param { string } name - The alias of the font to unload. + * This must exactly match the name used when loading the font through. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + unloadFontSync(name: string): void; + + /** + * Unloads a custom font. This API uses a promise to return the result. + * After unloading a font alias through this API, the corresponding custom font will no longer be available. + * All typography using the font alias should be destroyed and re-created. + * - Unloading a non-existent font alias has no effect and will **not** throw an error. + * - This operation only affects subsequent font usages. + * unload a font that is currently in used may lead to text rendering anomalies, + * including garbled characters or missing glyphs. + * @param { string } name - The alias of the font to unload. + * This must exactly match the name used when loading the font through. + * @returns { Promise<void> } Promise that returns no value. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + unloadFont(name: string): Promise<void>; + /** * Clear font caches. + * The font cache has a memory limit and a clearing mechanism. It occupies limited memory. + * You are not advised to clear it unless otherwise required. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -883,14 +1025,15 @@ declare namespace text { } /** - * Describes strut style. + * Describes the strut style, which determines the line spacing, baseline alignment mode, + * and other properties related to the line height when drawing texts. The strut style is disabled by default. * @typedef StrutStyle * @syscap SystemCapability.Graphics.Drawing * @since 12 */ interface StrutStyle { /** - * The families of the font to use when calculating the strut. + * List of font families. By default, the list corresponds to the system's default fonts. * @type { ?Array<string> } fontfamily gather * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -898,7 +1041,7 @@ declare namespace text { fontFamilies?: Array<string>; /** - * The font style to use when calculating the strut. + * Font style. The default value is NORMAL. * @type { ?FontStyle } it is uint32_t type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -906,7 +1049,7 @@ declare namespace text { fontStyle?: FontStyle; /** - * The font width to use when calculating the strut. + * Font width. The default value is NORMAL. * @type { ?FontWidth } it is uint32_t type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -914,7 +1057,9 @@ declare namespace text { fontWidth?: FontWidth; /** - * The font weight to use when calculating the strut. + * Font weight. The default value is W400. The default system font supports font weight adjustment. + * For other fonts, if the weight is less than W600, there is no variation in stroke thickness. + * If the weight is greater than or equal to W600, it might result in a fake bold effect. * @type { ?FontWeight } it is uint32_t type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -922,7 +1067,7 @@ declare namespace text { fontWeight?: FontWeight; /** - * The size of the ascent plus descent in logical pixels. + * Font size, in units of px. The value is a floating point number. The default value is 14.0. * @type { ?number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -930,7 +1075,7 @@ declare namespace text { fontSize?: number; /** - * The minimum height of the strut, as a multiple of fontSize. + * Scale factor of the line height. The value is a floating point number. The default value is 1.0. * @type { ?number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -938,7 +1083,7 @@ declare namespace text { height?: number; /** - * The additional leading to apply to the strut as a multiple of Size. + * Custom leading to be applied to the strut. The value is a floating point number. The default value is -1.0. * @type { ?number } it is double type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -946,7 +1091,8 @@ declare namespace text { leading?: number; /** - * Whether the strut height should be forced. + * Whether to forcibly use the strut height for all lines. The value true means to forcibly use the strut height + * for all lines, and false means the opposite. The default value is false. * @type { ?boolean } it is boolean type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -954,7 +1100,8 @@ declare namespace text { forceHeight?: boolean; /** - * Whether the strut style should be enable. + * Whether to enable the strut style. + * The value true means to enable the strut style, and false means the opposite. The default value is false. * @type { ?boolean } it is boolean type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -962,7 +1109,8 @@ declare namespace text { enabled?: boolean; /** - * Whether the height is override. + * Whether to override the height. The value true means to override the height, and false means the opposite. + * The default value is false. * @type { ?boolean } it is boolean type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -970,7 +1118,9 @@ declare namespace text { heightOverride?: boolean; /** - * Whether the half leading is enable. + * Whether half leading is enabled. + * Half leading is the leading split in half and applied equally to the top and bottom edges. + * The value true means that half leading is enabled, and false means the opposite. The default value is false. * @type { ?boolean } it is boolean type data * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -986,7 +1136,7 @@ declare namespace text { */ interface ParagraphStyle { /** - * Text style of paragraph. + * Text style applied to the paragraph. The default value is the initial text style. * @type { ?TextStyle } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -994,7 +1144,7 @@ declare namespace text { textStyle?: TextStyle; /** - * Text runs direction. + * Text direction. The default value is LTR. * @type { ?TextDirection } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1002,7 +1152,7 @@ declare namespace text { textDirection?: TextDirection; /** - * Refers to how to align the horizontal position of text when displaying text. + * Text alignment mode. The default value is START. This parameter is invalid when the tab parameter is configured. * @type { ?TextAlign } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1010,7 +1160,7 @@ declare namespace text { align?: TextAlign; /** - * Word break strategy. + * Word break type. The default value is BREAK_WORD. * @type { ?WordBreak } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1018,7 +1168,7 @@ declare namespace text { wordBreak?: WordBreak; /** - * Maximum number of lines. + * Maximum number of lines. The value is an integer. The default value is 1e9. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1026,7 +1176,7 @@ declare namespace text { maxLines?: number; /** - * text segmentation strategy. + * Text break strategy. The default value is GREEDY. * @type { ?BreakStrategy } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1034,7 +1184,7 @@ declare namespace text { breakStrategy?: BreakStrategy; /** - * Strut style of paragraph. + * Strut style. The default value is the initial StrutStyle object. * @type { ?StrutStyle } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1042,7 +1192,7 @@ declare namespace text { strutStyle?: StrutStyle; /** - * Text height behavior of paragraph. + * Text height modifier pattern. The default value is ALL. * @type { ?TextHeightBehavior } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1050,33 +1200,56 @@ declare namespace text { textHeightBehavior?: TextHeightBehavior; /** - * Text tab of paragraph. Tab alignment does not take effect when text alignment is also set, Or when the ellipsis - * style is configured. When the tab is not set or the tab's location property is less than or equal to 0, - * it is the default space effect. And all tabs in the paragraph after the setting are aligned - * according to this tab effect. + * Alignment mode and position of the text after the tab character in a paragraph. By default, the tab character + * is replaced with a space. This parameter is invalid when it is used together with the align parameter or + * the ellipsis parameter in TextStyle. * @type { ?TextTab } * @syscap SystemCapability.Graphics.Drawing * @since 18 */ tab?: TextTab; + + /** + * Whether to optimize white spaces at the end of each line. + * @type { ?boolean } Boolean type data. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + trailingSpaceOptimized?: boolean; + + /** + * Whether to enable automatic spacing between Chinese and English for paragraph. + * @type { ?boolean } + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + autoSpace?: boolean; + + /** + * Vertical alignment mode of the paragraph. + * @type { ?TextVerticalAlign } + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + verticalAlign?: TextVerticalAlign; } /** - * Where to vertically align the placeholder relative to the surrounding text. + * Enumerates the vertical alignment modes of a placeholder relative to the surrounding text. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum PlaceholderAlignment { /** - * Match the baseline of the placeholder with the baseline. + * Aligns the baseline of the placeholder to the baseline of the text. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ OFFSET_AT_BASELINE, /** - * Align the bottom edge of the placeholder with the baseline such that the placeholder + * Aligns the bottom edge of the placeholder to the baseline of the text. * sits on top of the baseline. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1084,7 +1257,7 @@ declare namespace text { ABOVE_BASELINE, /** - * Align the top edge of the placeholder with the baseline specified in such that the placeholder + * Aligns the top edge of the placeholder to the baseline of the text. * hangs below the baseline. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1108,23 +1281,30 @@ declare namespace text { BOTTOM_OF_ROW_BOX, /** - * Align the middle of the placeholder with the middle of the text.When the placeholder is very tall, + * Align the middle of the placeholder with the middle of the text. When the placeholder is very tall, * the extra space will grow equally from the top and bottom of the line. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ CENTER_OF_ROW_BOX, + + /** + * Follow Paragraph setting, + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + FOLLOW_PARAGRAPH, } /** - * Provide a description of placeholder scope in creating typography. + * Describes the placeholder style. * @typedef PlaceholderSpan * @syscap SystemCapability.Graphics.Drawing * @since 12 */ interface PlaceholderSpan { /** - * The width of the placeholder. + * Width of the placeholder, in units of px. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1132,7 +1312,7 @@ declare namespace text { width: number; /** - * The height of the placeholder. + * Height of the placeholder, in units of px. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1140,7 +1320,7 @@ declare namespace text { height: number; /** - * Alignment mode of placeholder. + * Vertical alignment of the placeholder relative to the surrounding text. * @type { PlaceholderAlignment } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1148,7 +1328,7 @@ declare namespace text { align: PlaceholderAlignment; /** - * Baseline of placeholder. + * Type of the text baseline. * @type { TextBaseline } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1156,7 +1336,7 @@ declare namespace text { baseline: TextBaseline; /** - * Baseline offset of placeholder. + * Offset to the text baseline, in units of px. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1165,14 +1345,14 @@ declare namespace text { } /** - * Provides the definition of the range. + * Describes a left-closed and right-open interval. * @typedef Range * @syscap SystemCapability.Graphics.Drawing * @since 12 */ interface Range { /** - * Left index. + * Index of the leftmost point of the interval. The value is an integer. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1180,7 +1360,7 @@ declare namespace text { start: number; /** - * Right index. + * Index of the rightmost point of the interval. The value is an integer. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1189,14 +1369,14 @@ declare namespace text { } /** - * An enumeration of system font types. + * Enumerates the font types, which can be combined through bitwise OR operations. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 14 */ enum SystemFontType { /** - * All font types. + * All font types, including the system font type, style font type, and user-installed font type. * @syscap SystemCapability.Graphics.Drawing * @since 14 */ @@ -1210,14 +1390,14 @@ declare namespace text { GENERIC = 1 << 1, /** - * Stylish font type. + * Style font type. The style font type is designed for 2-in-1 devices. * @syscap SystemCapability.Graphics.Drawing * @since 14 */ STYLISH = 1 << 2, /** - * Installed font types. + * Font type that has been installed. * @syscap SystemCapability.Graphics.Drawing * @since 14 */ @@ -1232,14 +1412,15 @@ declare namespace text { } /** - * Font descriptor + * Describes the font descriptor information. * @typedef FontDescriptor * @syscap SystemCapability.Graphics.Drawing * @since 14 */ interface FontDescriptor { /** - * Font file path + * Absolute path of the font. Any string is acceptable, but the value must adhere to the system's path constraints. + * The default value is an empty string. * @type { ?string } * @syscap SystemCapability.Graphics.Drawing * @since 14 @@ -1247,7 +1428,7 @@ declare namespace text { path?: string; /** - * Font postScript name + * Unique name of the font. Any string is acceptable. The default value is an empty string. * @type { ?string } * @syscap SystemCapability.Graphics.Drawing * @since 14 @@ -1255,7 +1436,7 @@ declare namespace text { postScriptName?: string; /** - * Full font name + * Font name. Any string is acceptable. The default value is an empty string. * @type { ?string } * @syscap SystemCapability.Graphics.Drawing * @since 14 @@ -1263,7 +1444,7 @@ declare namespace text { fullName?: string; /** - * Font family name + * Family name of the font. Any string is acceptable. The default value is an empty string. * @type { ?string } * @syscap SystemCapability.Graphics.Drawing * @since 14 @@ -1271,7 +1452,7 @@ declare namespace text { fontFamily?: string; /** - * Font subfamily name + * Subfamily name of the font. Any string is acceptable. The default value is an empty string. * @type { ?string } * @syscap SystemCapability.Graphics.Drawing * @since 14 @@ -1279,7 +1460,7 @@ declare namespace text { fontSubfamily?: string; /** - * Font weight + * Font weight. The default value is 0. * @type { ?FontWeight } * @syscap SystemCapability.Graphics.Drawing * @since 14 @@ -1287,7 +1468,7 @@ declare namespace text { weight?: FontWeight; /** - * Font width + * Font width. The value is an integer ranging from 1 to 9. The default value is 0. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 14 @@ -1295,7 +1476,8 @@ declare namespace text { width?: number; /** - * Font slant, non-0 means italic. + * Whether the font is italic. The value 0 means that the font is not italic, and 1 means the opposite. + * The default value is 0. * @type { ?number } * @syscap SystemCapability.Graphics.Drawing * @since 14 @@ -1303,7 +1485,8 @@ declare namespace text { italic?: number; /** - * Whether the font is monospaced + * Whether the font is monospaced. The value true means that the font is monospaced, and false means the opposite. + * The default value is false. * @type { ?boolean } * @syscap SystemCapability.Graphics.Drawing * @since 14 @@ -1311,7 +1494,7 @@ declare namespace text { monoSpace?: boolean; /** - * Whether to support symbols + * Whether the font is symbolic. The value true means that the font is symbolic, and false means the opposite. * @type { ?boolean } * @syscap SystemCapability.Graphics.Drawing * @since 14 @@ -1320,35 +1503,37 @@ declare namespace text { } /** - * A paragraph retains the size and position of each glyph in the text and can be efficiently resized and painted. + * Implements a carrier that stores the text content and style. You can perform operations such as layout and drawing. + * Before calling any of the following APIs, you must use build() of the ParagraphBuilder class to + * create a Paragraph object. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class Paragraph { /** - * Calculates the positioning of all the glyphs. - * @param { number } width - Control how wide the text is allowed to be. + * Performs layout and calculates the positions of all glyphs. + * @param { number } width - Maximum width of a single line, in units of px. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ layoutSync(width: number): void; /** - * Calculates the positioning of all the glyphs. - * @param { number } width - Control how wide the text is allowed to be. - * @returns { Promise<void> } The promise returned by the function. + * Performs layout and calculates the positions of all glyphs. This API uses a promise to return the result. + * @param { number } width - Maximum width of a single line, in units of px. The value is a floating point number. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ layout(width: number): Promise<void>; /** - * Paint the laid out text onto the supplied canvas at (x, y). - * @param { drawing.Canvas } canvas - Object - * @param { number } x - Represents the X-axis position on the canvas. - * @param { number } y - Represents the Y-axis position on the canvas. + * Paints the text on the canvas with the coordinate point (x, y) as the upper left corner. + * @param { drawing.Canvas } canvas - Target canvas. + * @param { number } x - X coordinate of the upper left corner. The value is a floating point number. + * @param { number } y - Y coordinate of the upper left corner. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -1358,127 +1543,132 @@ declare namespace text { * Draw the laid out text onto the supplied canvas along the path and offset. * @param { drawing.Canvas } canvas - Canvas used to carry the drawn content and drawing status. * @param { drawing.Path } path - Path used to determine the position of the text. - * @param { number } hOffset - Horizontal offset along the path. - * @param { number } vOffset - Vertical offset along the path. + * @param { number } hOffset - Horizontal offset along the path direction. A positive number indicates a position + * that is ahead along the path from its start point, and a negative number indicates a position that is behind + * from the start point. + * @param { number } vOffset - Vertical offset along the path direction. A positive number indicates a position + * on the left side of the path, and a negative number indicates a position on the right side of the path. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ paintOnPath(canvas: drawing.Canvas, path: drawing.Path, hOffset: number, vOffset: number): void; /** - * Get max width of horizontal space this paragraph occupied. - * @returns { number } Max width of horizontal space. + * Obtains the maximum width of the line in the text. + * @returns { number } Maximum line width, in units of px. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getMaxWidth(): number; /** - * Get height of horizontal space this paragraph occupies. - * @returns { number } Height of horizontal space this paragraph occupies. + * Obtains the total height of the text. + * @returns { number } Total height, in units of px. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getHeight(): number; /** - * Get the longest line of horizontal space this paragraph occupies. - * @returns { number } The longest line of horizontal space this paragraph occupies. + * Obtains the longest line in the text. + * @returns { number } Longest line, in units of px. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getLongestLine(): number; /** - * Get the longest line of horizontal space this paragraph occupies, and this horizontal space contains the width - * of indent. - * @returns { number } The longest line with indent of horizontal space this paragraph occupies. + * Obtains the width of the longest line, including its indentation, in the text. + * You are advised to round up the return value. If the text content is empty, 0 is returned. + * @returns { number } Width of the longest line, including its indentation. + * The value is a floating point number, in px. * @syscap SystemCapability.Graphics.Drawing * @since 13 */ getLongestLineWithIndent(): number; /** - * Get the min intrinsic width of horizontal space this paragraph occupies. - * @returns { number } The min intrinsic width of horizontal space this paragraph occupies. + * Obtains the minimum intrinsic width of the paragraph. + * @returns { number } Minimum intrinsic width, in units of px. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getMinIntrinsicWidth(): number; /** - * Get the max intrinsic width. - * @returns { number } Intrinsic Width. + * Obtains the maximum intrinsic width of the paragraph. + * @returns { number } Maximum intrinsic width, in units of px. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getMaxIntrinsicWidth(): number; /** - * Get the alphabetic baseline. - * @returns { number } Alphabetic Baseline. + * Obtains the alphabetic baseline. + * @returns { number } Alphabetic baseline, in units of px. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getAlphabeticBaseline(): number; /** - * Get the ideographic baseline. - * @returns { number } Ideographic Baseline. + * Obtains the ideographic baseline. + * @returns { number } Ideographic baseline, in units of px. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getIdeographicBaseline(): number; /** - * Get the rects for range. - * @param { Range } range - The range to set. - * @param { RectWidthStyle } widthStyle - Width style to set. - * @param { RectHeightStyle } heightStyle - Height style to set. - * @returns { Array<TextBox> } The rects for range. + * Obtains the rectangles occupied by the characters in the range of the text under the given rectangle width and + * height. + * @param { Range } range - Range of the text. + * @param { RectWidthStyle } widthStyle - Width of the rectangle. + * @param { RectHeightStyle } heightStyle - Height of the rectangle. + * @returns { Array<TextBox> } Array holding the rectangles obtained. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getRectsForRange(range: Range, widthStyle: RectWidthStyle, heightStyle: RectHeightStyle): Array<TextBox>; /** - * Get the rects for placeholders. - * @returns { Array<TextBox> } The rects for placeholders. + * Obtains the rectangles occupied by all placeholders in the text. + * @returns { Array<TextBox> } Array holding the rectangles obtained. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getRectsForPlaceholders(): Array<TextBox>; /** - * Get the glyph position at coordinate. - * @param { number } x - the positionX of typography to set. - * @param { number } y - the positionY of typography to set. - * @returns { PositionWithAffinity } TextBlob object. + * Obtains the position of a glyph closest to the given coordinates. + * @param { number } x - X coordinate. The value is a floating point number. + * @param { number } y - Y coordinate. The value is a floating point number. + * @returns { PositionWithAffinity } Position of the glyph. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getGlyphPositionAtCoordinate(x: number, y: number): PositionWithAffinity; /** - * Find the start and end position of the word containing the glyphs of the given offset. - * @param { number } offset - offset value - * @returns { Range } The range value returned to the caller. + * Obtains the range of the word where the glyph with a given offset is located. + * @param { number } offset - Offset of the glyph. The value is an integer. + * @returns { Range } Range of the word. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getWordBoundary(offset: number): Range; /** - * Get line count. - * @returns { number } The line count value returned to the caller. + * Obtains the number of text lines. + * @returns { number } Number of text lines. The value is an integer. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getLineCount(): number; /** - * Get the line height of the specified line. - * @param { number } line - line number + * Obtains the height of a given line. + * @param { number } line - Index of the line. The value is an integer ranging from 0 to getLineCount() – 1. * @returns { number } The line height value returned to the caller. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1486,8 +1676,8 @@ declare namespace text { getLineHeight(line: number): number; /** - * Get the line width of the specified line. - * @param { number } line - line number + * Obtains the width of a given line. + * @param { number } line - Index of the line. The value is an integer ranging from 0 to getLineCount() – 1. * @returns { number } The line width value returned to the caller. * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1495,74 +1685,103 @@ declare namespace text { getLineWidth(line: number): number; /** - * Return whether it exceed the maximum lines of typography. - * @returns { boolean } The true indicates exceeding, the false indicates not exceeding. + * Checks whether the number of lines in the paragraph exceeds the maximum. + * @returns { boolean } Check result. The value true means that the number of lines exceeds the maximum, + * and false means the opposite. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ didExceedMaxLines(): boolean; /** - * Get the text lines of paragraph. - * @returns { Array<TextLine> } the tuple of TextLine. + * Obtains all the text lines. + * @returns { Array<TextLine> } Array of text lines. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getTextLines(): Array<TextLine>; /** - * Returns the visible text on the line (excluding a possible ellipsis). - * @param { number } lineNumber - a line number - * @param { boolean } includeSpaces - indicates if the whitespaces should be included - * @returns { Range } The range of text. + * Obtains the actually visible text range in the specified line, excluding any overflow ellipsis. + * @param { number } lineNumber - Line number of the text range, starting from 0. This API can only be used to + * obtain the bounds of existing lines. That is, the line number must start from 0, and the maximum line number + * is getLineCount - 1. + * @param { boolean } includeSpaces - Whether spaces are included. The value true means that spaces are contained, + * and false means the opposite. + * @returns { Range } Text range obtained. If the line index is invalid, start and end are both 0. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getActualTextRange(lineNumber: number, includeSpaces: boolean): Range; /** - * Returns the array of line metrics for a line of text. - * @returns { Array<LineMetrics> } Array of line metrics. + * Obtains an array of line measurement information. + * @returns { Array<LineMetrics> } Array of line measurement information. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getLineMetrics(): Array<LineMetrics>; /** - * Returns line metrics info for the line. - * @param { number } lineNumber - a line number - * @returns { LineMetrics | undefined } line metrics. + * Obtains the line measurement information of a line. + * @param { number } lineNumber - Line number, starting from 0. + * @returns { LineMetrics | undefined } LineMetrics object containing the measurement information if the specified + * line number is valid and the measurement information exists. If the line number is invalid or + * the measurement information cannot be obtained, undefined is returned. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getLineMetrics(lineNumber: number): LineMetrics | undefined; + + /** + * Synchronously updates the text color of the typography. + * @param { common2D.Color } color - Color of text. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + updateColor(color: common2D.Color): void; + + /** + * Synchronously updates text decoration. + * @param { Decoration } decoration - Decoration of text. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + updateDecoration(decoration: Decoration): void; } /** - * Provides the abilities to typeset by line. + * Implements a carrier that stores the text content and style. It can be used to compute layout details for + * individual lines of text. Before calling any of the following APIs, you must use buildLineTypeset() + * in the ParagraphBuilder class to create a LineTypeset object. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ class LineTypeset { /** - * Calculate the line breakpoint based on the width provided. - * @param { number } startIndex - The starting point for the line-break calculations. - * @param { number } width - The requested line-break width. - * @returns { number } A count of the characters from startIndex that would cause the line break. + * Obtains the number of characters that can fit in the layout from the specified position within a limited width. + * @param { number } startIndex - Start position (inclusive) for calculation. The value is an integer in the range + * [0, total number of text characters). If the parameter is invalid, an exception is thrown. + * @param { number } width - Layout width. The value is a floating point number greater than 0, in px. + * @returns { number } Number of characters. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getLineBreak(startIndex: number, width: number): number; /** - * Creates a text line object based on the text range provided. - * @param { number } startIndex - The starting index of the text range. - * @param { number } count - The characters count of the text range. - * @returns { TextLine } Text line object. + * Generates a text line object based on the specified layout range. + * @param { number } startIndex - Start position for layout calculation. The value is an integer in the + * range [0, total number of text characters). + * @param { number } count - Number of characters from the specified start position. The value is an integer in + * the range [0, total number of text characters). The sum of startIndex and count cannot be greater than + * the total number of text characters. When count is 0, the range is [startIndex, end of the text]. + * You can use getLineBreak to obtain the number of characters that can fit in the layout. + * @returns { TextLine } TextLine object generated based on the characters in the text range. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ @@ -1570,14 +1789,14 @@ declare namespace text { } /** - * Box that contain text. + * Describes the rectangle that holds the text. * @typedef TextBox * @syscap SystemCapability.Graphics.Drawing * @since 12 */ interface TextBox{ /** - * Rect of text box. + * Information about the rectangle. * @type { common2D.Rect } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1594,14 +1813,14 @@ declare namespace text { } /** - * Position and affinity. + * Describes the position and affinity of a glyph. * @typedef PositionWithAffinity * @syscap SystemCapability.Graphics.Drawing * @since 12 */ interface PositionWithAffinity { /** - * Position of text. + * Index of the glyph relative to the paragraph. The value is an integer. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1609,7 +1828,7 @@ declare namespace text { position: number; /** - * Affinity of text. + * Affinity of the position. * @type { Affinity } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -1618,21 +1837,22 @@ declare namespace text { } /** - * Enumerates rect width style. + * Enumerates the rectangle width styles. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum RectWidthStyle { /** - * Tight width. + * If letterSpacing is not set, the rectangle conforms tightly to the text it contains. + * However, if letterSpacing is set, a gap is introduced between the rectangle and text. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ TIGHT, /** - * Max width. + * The rectangle's width is extended to align with the widest rectangle across all lines. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -1640,22 +1860,21 @@ declare namespace text { } /** - * Enumerates rect height style. + * Enumerates the rectangle height styles. * @enum { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 */ enum RectHeightStyle { /** - * Provide tight bounding boxes that fit heights per run. + * Tight style. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ TIGHT, /** - * The height of the boxes will be the maximum height of all runs in the line. All rects in the same - * line will be the same height. + * Extends the height to match the highest rectangle in all lines. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -1721,7 +1940,7 @@ declare namespace text { */ class ParagraphBuilder { /** - * Constructor ParagraphBuilder. + * A constructor used to create a ParagraphBuilder object. * @param { ParagraphStyle } paragraphStyle - Paragraph style {@link ParagraphStyle} * @param { FontCollection } fontCollection - Font collection {@link FontCollection} * @syscap SystemCapability.Graphics.Drawing @@ -1730,55 +1949,63 @@ declare namespace text { constructor(paragraphStyle: ParagraphStyle, fontCollection: FontCollection); /** - * Push a style to the stack. - * @param { TextStyle } textStyle - Text style {@link TextStyle} + * Applies a new style to the current text blob. + * <p>**NOTE**</p> + * When you update the style of the current text blob, all text added afterward will use this new style. + * @param { TextStyle } textStyle - Text style, which describes various visual attributes of text, such as font, + * font size, color, font weight, word spacing, line spacing, decoration (such as underline and strikethrough), + * and text shadow. {@link TextStyle} * @syscap SystemCapability.Graphics.Drawing * @since 12 */ pushStyle(textStyle: TextStyle): void; /** - * Remove a style from the stack. + * Restores the previous text style. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ popStyle(): void; /** - * Adds text to the builder. - * @param { string } text - Text string + * Inserts a text string into the paragraph being built. + * @param { string } text - Exact text string inserted into the paragraph. If an invalid Unicode character is + * provided, it is displayed as �. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ addText(text: string): void; /** - * Add placeholder. - * @param { PlaceholderSpan } placeholderSpan - Placeholder Span {@link PlaceholderSpan} + * Inserts a placeholder into the paragraph being built. + * @param { PlaceholderSpan } placeholderSpan - Placeholder span, which describes the size, alignment, + * baseline type, and baseline offset of the placeholder. {@link PlaceholderSpan} * @syscap SystemCapability.Graphics.Drawing * @since 12 */ addPlaceholder(placeholderSpan: PlaceholderSpan): void; /** - * Create paragraph object. - * @returns { Paragraph } The paragraph value returned to the caller. + * Creates a paragraph object that can be used for subsequent layout and rendering. + * @returns { Paragraph } Paragraph object that can be used for subsequent rendering. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ build(): Paragraph; /** - * Create LineTypeset object. - * @returns { LineTypeset } The LineTypeset value returned to the caller. + * Builds a line typesetter. + * @returns { LineTypeset } LineTypeset object that can be used for subsequent rendering. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ buildLineTypeset(): LineTypeset; /** - * Add symbolId. - * @param { number } symbolId - Symbol Id + * Inserts a symbol into the paragraph being built. + * @param { number } symbolId - Symbol code to insert. The value is a hexadecimal number in the + * range 0xF0000-0xF0C97. For details about the configurable symbol codes (unicode values in the list view), + * see <a href="https://developer.huawei.com/consumer/cn/design/harmonyos-symbol/">HarmonyOS Symbol</a>. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -1786,14 +2013,17 @@ declare namespace text { } /** - * Provides the definition of the typographic bounds. + * Describes the typographic boundaries of a text line. These boundaries depend on the typographic font and font size, + * not on the characters themselves. For example, for the string " a b " (which has a space before "a" and a space + * after "b"), the typographic boundaries include the spaces at the beginning and end of the line. Similarly, + * the strings "j" and "E" have identical typographic boundaries, which are independent of the characters themselves. * @typedef TypographicBounds * @syscap SystemCapability.Graphics.Drawing * @since 18 */ interface TypographicBounds { /** - * Distance Retained Above Baseline. + * Ascent of a text line. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -1801,7 +2031,7 @@ declare namespace text { ascent: number; /** - * The distance that remains below the baseline. + * Descent of a text line. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -1809,7 +2039,7 @@ declare namespace text { descent: number; /** - * Line Spacing. + * Leading of a text line. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -1817,7 +2047,7 @@ declare namespace text { leading: number; /** - * The total width of the typesetting border. + * Width of the typographic boundaries. The value is a floating point number. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -1826,55 +2056,61 @@ declare namespace text { } /** - * Offset callback function of caret. + * Defines the callback used to receive the offset and index of each character in a text line object + * as its parameters. * * @typedef { function } CaretOffsetsCallback - * @param { number } offset - Character offset is traversed as an argument to the callback function. - * @param { number } index - Character index is traversed as an argument to the callback function. - * @param { boolean } leadingEdge - Whether the current offset is at the character front, as an argument to the + * @param { number } offset - Offset of each character in a text line. The value is a floating point number. + * @param { number } index - Index of each character in a text line. The value is an integer. + * @param { boolean } leadingEdge - Whether the cursor is located at the front of the character. The value true means + * that the cursor is located at the front of the character, that is, the offset does not contain the character + * width. The value false means that the cursor is located at the rear of the character, that is, the offset + * contains the character width. * callback function. - * @returns { boolean } The return value of the user-defined callback function. If false is returned, the traversal - * continues. If true is returned, the traversal stops. + * @returns { boolean } Whether to stop calling the callback. The value true means to stop calling the callback, + * and false means to continue calling the callback. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ type CaretOffsetsCallback = (offset: number, index: number, leadingEdge: boolean) => boolean; /** - * The structure of text line that provides the basis of paragraph for graphics. + * Implements a carrier that describes the basic text line structure of a paragraph. + * Before calling any of the following APIs, you must use getTextLines() of the Paragraph class or createLine() of + * the LineTypeset class to create a TextLine object. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class TextLine { /** - * Get the count of glyphs. - * @returns { number } The counts of glyphs. + * Obtains the number of glyphs in this text line. + * @returns { number } Number of glyphs. The value is an integer. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getGlyphCount(): number; /** - * Get the range of text line. - * @returns { Range } The range of text. + * Obtains the range of the text in this text line in the entire paragraph. + * @returns { Range } Range of the text in this text line in the entire paragraph. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getTextRange(): Range; /** - * Get the glyph runs of text line. - * @returns { Array<Run> } The tuple of glyph runs of text. + * Obtains the array of glyph runs in the text line. + * @returns { Array<Run> } Array of the runs obtained. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getGlyphRuns(): Array<Run>; /** - * Paint the range of text line. - * @param { drawing.Canvas } canvas - Canvas. - * @param { number } x - Represents the X-axis position on the canvas. - * @param { number } y - Represents the Y-axis position on the canvas. + * Paints this text line on the canvas with the coordinate point (x, y) as the upper left corner. + * @param { drawing.Canvas } canvas - Target canvas. + * @param { number } x - X coordinate of the upper left corner. The value is a floating point number. + * @param { number } y - Y coordinate of the upper left corner. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ @@ -1882,83 +2118,85 @@ declare namespace text { /** * Creates a truncated text line object. - * @param { number } width - The width of the truncated line. - * @param { EllipsisMode } ellipsisMode - Text ellipsis mode, EllipsisMode:MIDDLE is not supported. - * @param { string } ellipsis - Text ellipsis. + * @param { number } width - Width of the line after truncation. The value is a floating point number. + * @param { EllipsisMode } ellipsisMode - Ellipsis mode. Currently, only START and END are supported. + * @param { string } ellipsis - String used to mark a truncation. * @returns { TextLine } Truncated text line object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ createTruncatedLine(width: number, ellipsisMode: EllipsisMode, ellipsis: string): TextLine; /** - * Gets the text line typographic bounds. - * @returns { TypographicBounds } The text line of typographic bounds. + * Obtains the typographic boundaries of this text line. These boundaries depend on the typographic font and font + * size, but not on the characters themselves. For example, for the string " a b " (which has a space before + * "a" and a space after "b"), the typographic boundaries include the spaces at the beginning and end of the + * line. Similarly, the strings "j" and "E" have identical typographic boundaries, which are independent of + * the characters themselves. + * @returns { TypographicBounds } Typographic boundaries of the text line. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getTypographicBounds(): TypographicBounds; /** - * Gets the text line image bounds. - * @returns { common2D.Rect } Rect of text line. + * Obtains the image boundaries of this text line. The image boundaries, equivalent to visual boundaries, depend on + * the font, font size, and characters. For example, for the string " a b " (which has a space before "a" and + * a space after "b"), only "a b" are visible to users, and therefore the image boundaries do not include these + * spaces at the beginning and end of the line. For the strings "j" and "E", their image boundaries are + * different. Specifically, the width of the boundary for "j" is narrower than that for "E", and the height of + * the boundary for "j" is taller than that for "E". + * @returns { common2D.Rect } Image boundary of the text line. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getImageBounds(): common2D.Rect; /** - * Gets the tail space width. - * @returns { number } The tail space width. + * Obtains the width of the spaces at the end of this text line. + * @returns { number } Number of spaces at the end of the text line. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getTrailingSpaceWidth(): number; /** - * Gets the string index of the given position. - * @param { common2D.Point } point - The given position. - * @returns { number } The string index for a given position. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * Obtains the index of a character at the specified position in the original string. + * @param { common2D.Point } point - Position of the character. + * @returns { number } Index of the character in the text line. The value is an integer. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getStringIndexForPosition(point: common2D.Point): number; /** - * Gets the offset of the given string index. - * @param { number } index - The given string index. - * @returns { number } The offset for a given string index. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * Obtains the offset of a character with the specified index in this text line. + * @param { number } index - Index of the character. The value is an integer. + * @returns { number } Offset of the character with the specified index. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getOffsetForStringIndex(index: number): number; /** - * Enumerate caret offset and index in text lines. - * @param { CaretOffsetsCallback } callback - User-defined callback functions. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * Enumerates the offset and index of each character in a text line. + * @param { CaretOffsetsCallback } callback - Custom function, which contains the offset and index of each + * character in the text line. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ enumerateCaretOffsets(callback: CaretOffsetsCallback): void; /** - * Gets the text offset based on the given alignment factor and alignment width. - * @param { number } alignmentFactor - The coefficients that text needs to be aligned. - * Less than or equal to 0 is left justified, 0.5 is center justified, - * and greater than or equal to 1 is right justified. - * @param { number } alignmentWidth - The width of the text to be aligned. - * Returns 0 if it is less than the actual width of the text. - * @returns { number } The offset of the aligned text. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * Obtains the offset of this text line after alignment based on the alignment factor and alignment width. + * @param { number } alignmentFactor - Alignment factor, which determines how text is aligned. The value is a + * floating point number. A value less than or equal to 0.0 means that the text is left-aligned; a value + * between 0.0 and 0.5 means that the text is slightly left-aligned; the value 0.5 means that is text + * is centered; a value between 0.5 and 1 means that the text is slightly right-aligned; a value greater than + * or equal to 1.0 means that the text is right-aligned. + * @param { number } alignmentWidth - Alignment width, that is, the width of the text line. The value is a floating + * point number. If the width is less than the actual width of the text line, 0 is returned. + * @returns { number } Offset required for alignment. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ @@ -1966,120 +2204,148 @@ declare namespace text { } /** - * Independent rendering of text layout. + * Implements a unit for text layout. + * Before calling any of the following APIs, you must use getGlyphRuns() of the TextLine class to create a Run object. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ class Run { /** - * Gets the number of glyph. - * @returns { number } The number of glyph. + * Obtains the number of glyphs in this run. + * @returns { number } Number of glyphs. The value is an integer. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getGlyphCount(): number; /** - * Gets the glyph identifier for each character. - * @returns { Array<number> } Glyph identifier. + * Obtains the index of each glyph in this run. + * @returns { Array<number> } Array holding the index of each glyph in the run. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getGlyphs(): Array<number>; /** - * Gets the range glyph identifier for each character. - * @param { Range } range of run, range.start is the starting index of the run block, starting from 0. - * range.end is run length, if range.start and range.end are set to 0, then get all of the current run. - * @returns { Array<number> } Glyph identifier or undefined. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. + * Obtains the index of each glyph in the specified range of this run. + * @param { Range } range - Range of the glyphs, where range.start indicates the start position of the range, and + * range. end indicates the length of the range. If the length is 0, the range is from range.start to the end + * of the run. If range.end or range.start is set to a negative value, null, or undefined, undefined is + * returned. + * @returns { Array<number> } Array holding the index of each glyph in the run. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getGlyphs(range: Range): Array<number>; /** - * Gets the font position offset. - * @returns { Array<common2D.Point> } The position of the font in the layout. + * Obtains the position of each glyph relative to the respective line in this run. + * @returns { Array<common2D.Point> } Array holding the position of each glyph relative to the respective line in + * the run. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getPositions(): Array<common2D.Point>; /** - * Gets the range font position offset. - * @param { Range } range of run, range.start is the starting index of the run block, starting from 0. - * range.end is run length, if range.start and range.end are set to 0, then get all of the current run. - * @returns { Array<common2D.Point> } The position of the font in the layout or undefined. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. + * Obtains the position array of each glyph relative to the respective line within the specified range of this run. + * @param { Range } range - Range of the glyphs, where range.start indicates the start position of the range, and + * range. end indicates the length of the range. If the length is 0, the range is from range.start to the end of + * the run. If range.end or range.start is set to a negative value, null, or undefined, undefined is returned. + * @returns { Array<common2D.Point> } Array holding the position of each glyph relative to the respective line in + * the run. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getPositions(range: Range): Array<common2D.Point>; /** - * Gets the font position offset array. - * @returns { Array<common2D.Point> } The position offset of the font in the layout. + * Obtains the offset of each glyph in this run relative to its index. + * @returns { Array<common2D.Point> } Array holding the offset of each glyph in the run relative to its index. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getOffsets(): Array<common2D.Point>; /** - * Gets the font object instance. - * @returns { drawing.Font } The font object instance. + * Obtains the Font object of this run. + * @returns { drawing.Font } Font object of this run. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ getFont(): drawing.Font; /** - * Paint the laid out text onto the supplied canvas at (x, y). - * @param { drawing.Canvas } canvas - Object. - * @param { number } x - Represents the X-axis position on the canvas. - * @param { number } y - Represents the Y-axis position on the canvas. + * Paints this run on the canvas with the coordinate point (x, y) as the upper left corner. + * @param { drawing.Canvas } canvas - Target canvas. + * @param { number } x - X coordinate of the upper left corner. The value is a floating point number. + * @param { number } y - Y coordinate of the upper left corner. The value is a floating point number. * @syscap SystemCapability.Graphics.Drawing * @since 12 */ paint(canvas: drawing.Canvas, x: number, y: number): void; /** - * Gets the range of run glyph indices, the offset of the indices relative to the entire paragraph. - * @param { Range } range of run, range.start is the starting index of the run block, starting from 0. - * range.end is run length, if range.start range.and end are set to 0, then get all of the current run. - * @returns { Array<number> } The glyph indices or undefined. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. + * Obtains an array of character indices for glyphs within a specified range of this run, where the indices are + * offsets relative to the entire paragraph. + * @param { Range } range - Range of the glyphs, where range.start indicates the start position of the range, and + * range.end indicates the length of the range. If the length is 0, the range is from range.start to the end of + * the run. If range.end or range.start is set to a negative value, null, or undefined, undefined is returned. + * If this parameter is not passed, the entire run is obtained. + * @returns { Array<number> } Array of character indices. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getStringIndices(range?: Range): Array<number>; /** - * Gets the run glyph location and length. - * @returns { Range } The run of glyph location and length, Range.start is location, Range.end is length. + * Obtains the range of glyphs generated by this run. + * @returns { Range } Range of the glyphs, where start indicates the start position of the range, which is the + * index relative to the entire paragraph, and end indicates the length of the range. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getStringRange(): Range; /** - * Gets the run typographic bounds. - * @returns { TypographicBounds } The run of typographic bounds. + * Obtain the typographic boundaries of this run. These boundaries depend on the typographic font and font size, + * but not on the characters themselves. For example, for the string " a b " (which has a space before "a" and + * a space after "b"), the typographic boundaries include the spaces at the beginning and end of the line. + * @returns { TypographicBounds } Typographic boundaries of the run. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getTypographicBounds(): TypographicBounds; /** - * Gets the run image bounds. - * @returns { common2D.Rect } The run rect bounds. + * Obtains the image boundary of this run. The image boundary, equivalent to a visual boundary, is related to the + * font, font size, and characters. For example, for the string " a b " (which has a space before "a" and a + * space after "b"), only "a b" are visible to users, and therefore the image boundary does not include these + * spaces at the beginning and end. + * @returns { common2D.Rect } Image boundary of the run. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ getImageBounds(): common2D.Rect; + + /** + * Obtains the text direction of the run. + * @returns { TextDirection } Returns the text direction. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + getTextDirection(): TextDirection; + + /** + * Gets the glyph width array within the range. + * @param { Range } range - Range of the glyphs, where range.start indicates the start position of the range, and + * range.end indicates the length of the range. If the length is 0, the range is from range.start to the end of + * the run. + * @returns { Array<common2D.Point> } Array holding the advance width and height of each glyph. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + getAdvances(range: Range): Array<common2D.Point>; } /** @@ -2107,14 +2373,14 @@ declare namespace text { } /** - * Describes the metric information for a line of text in a text layout. + * Describes the measurement information of a single line of text in the text layout. * @typedef LineMetrics * @syscap SystemCapability.Graphics.Drawing * @since 12 */ interface LineMetrics { /** - * The indexes in the text buffer the line begins. + * Start index of the line in the text buffer. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2122,7 +2388,7 @@ declare namespace text { startIndex: number; /** - * The indexes in the text buffer the line ends. + * End index of the line in the text buffer. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2130,7 +2396,7 @@ declare namespace text { endIndex: number; /** - * The height of the text rise, the distance from the baseline to the top of the character. + * Ascent, that is, the distance from the baseline to the top of the character. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2138,7 +2404,7 @@ declare namespace text { ascent: number; /** - * The height of the text drop, the distance from the baseline to the bottom of the character. + * Descent, that is, the distance from the baseline to the bottom of the character. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2146,7 +2412,7 @@ declare namespace text { descent: number; /** - * The height of the current line is `round(ascent + descent)`. + * Height of the line, which is Math.round(ascent + descent). * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2162,7 +2428,7 @@ declare namespace text { width: number; /** - * The left edge of the line. The right edge can be obtained with `left + width`. + * Left edge of the line. The right edge is the value of left plus the value of width. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2170,7 +2436,7 @@ declare namespace text { left: number; /** - * The y position of the baseline for this line from the top of the paragraph. + * Y coordinate of the baseline in the line relative to the top of the paragraph. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2178,7 +2444,7 @@ declare namespace text { baseline: number; /** - * Zero indexed line number. + * Line number, starting from 0. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2186,7 +2452,7 @@ declare namespace text { lineNumber: number; /** - * Height from the top. + * Height from the top to the current line. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 12 @@ -2205,9 +2471,9 @@ declare namespace text { } /** - * Obtain the corresponding font full names array based on the font type. + * Obtains the full names of all fonts of the specified type. This API uses a promise to return the result. * @param { SystemFontType } fontType - System font type. - * @returns { Promise<Array<string>> } An array of font full names. + * @returns { Promise<Array<string>> } Promise used to return the full names of all fonts of the specified type. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing @@ -2216,11 +2482,13 @@ declare namespace text { function getSystemFontFullNamesByType(fontType: SystemFontType): Promise<Array<string>>; /** - * Get font details according to the font full name and the font type, supporting generic fonts, stylish fonts, and - * installed fonts. - * @param { string } fullName - Font full name. + * Obtains the font descriptor based on the font name and type. This API uses a promise to return the result. + * A font descriptor is a data structure that describes font features. It contains details of the font appearance and + * properties. + * @param { string } fullName - Font name, corresponding to the value of fullName in the name table of the + * corresponding font file. It is obtained by calling getSystemFontFullNamesByType. * @param { SystemFontType } fontType - System font type. - * @returns { Promise<FontDescriptor> } Returns the font descriptor. + * @returns { Promise<FontDescriptor> } Promise used to return the font descriptor. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @syscap SystemCapability.Graphics.Drawing @@ -2229,28 +2497,31 @@ declare namespace text { function getFontDescriptorByFullName(fullName: string, fontType: SystemFontType): Promise<FontDescriptor>; /** - * Obtain all system font descriptive symbols that match the specified font descriptor. - * @param { FontDescriptor } desc - Custom font descriptor, where the 'path' fields are not - * considered as valid matching values. If all fields are default values, get all font descriptors. - * @returns { Promise<Array<FontDescriptor>> } List of font descriptors, and an empty array will be returned - * if the matching fails. + * Obtains all system font descriptors that match the provided font descriptor. This API uses a promise to return the + * result. + * @param { FontDescriptor } desc - Font descriptor to match against. If this parameter is left unspecified, + * all system font descriptors are returned. If a specific value is provided, the matching is performed based on + * <br.the value provided. If the matching fails, an empty array is returned. + * @returns { Promise<Array<FontDescriptor>> } Promise used to return all matched system font descriptors, and an + * empty array will be returned if the matching fails. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types. + * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Graphics.Drawing * @since 18 */ function matchFontDescriptors(desc: FontDescriptor): Promise<Array<FontDescriptor>>; /** - * Text tab contains alignment type and location in paragraph style. + * Implements a paragraph-style text tab, which stores the alignment mode and position. * @typedef TextTab * @syscap SystemCapability.Graphics.Drawing * @since 18 */ interface TextTab { /** - * The alignment of tab. Support left alignment right alignment center alignment, - * other enumeration values are left alignment effect. + * Alignment mode of the text following the tab character in a paragraph. It can be set to LEFT, RIGHT, and CENTER + * defined in TextAlign. Other enumerated values have the effect of left alignment. The default value is left + * alignment. * @type { TextAlign } * @syscap SystemCapability.Graphics.Drawing * @since 18 @@ -2258,13 +2529,86 @@ declare namespace text { alignment: TextAlign; /** - * The position of the tab relative to the start of the line. + * Alignment position of the text following the tab character. The value is a floating point number, in px. + * The minimum value is 1.0. When the value is less than 1.0, the tab character is replaced with a space. * @type { number } * @syscap SystemCapability.Graphics.Drawing * @since 18 */ location: number; } + + /** + * Defines text rendering high contrast mode to enhance readability. + * @enum { number } + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + enum TextHighContrast { + /** + * Follow system's high contrast settings for text rendering. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + TEXT_FOLLOW_SYSTEM_HIGH_CONTRAST, + /** + * Disables high contrast rendering regardless of system settings. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + TEXT_APP_DISABLE_HIGH_CONTRAST, + /** + * Enable high contrast rendering regardless of system settings. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + TEXT_APP_ENABLE_HIGH_CONTRAST, + } + + /** + * Sets high contrast mode of text rendering. + * @param { TextHighContrast } action - High contrast mode. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + function setTextHighContrast(action: TextHighContrast): void; + + /** + * Visual representations for undefined (.notdef) glyphs. + * + * @enum { number } + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + enum TextUndefinedGlyphDisplay { + /** + * Use the font's built-in .notdef glyph. This respects font's internal .notdef glyph design, + * which might be an empty box, blank space, or custom symbol. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + USE_DEFAULT, + /** + * Always replace undefined glyphs with explicit tofu blocks, + * overriding the font's default behavior. Useful for debugging missing characters + * or enforcing consistent missing symbol display. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + USE_TOFU, + } + + /** + * Sets the glyph type to use when a character maps to the .notdef (undefined) glyph. + * affects all text rendered after this call. + * This configuration affects how the renderer displays characters that are not defined in the font: + * - The default behavior follows font's internal .notdef glyph design + * - Tofu blocks explicitly show missing characters as visible squares + * @param { TextUndefinedGlyphDisplay } noGlyphShow - The strategy for handling undefined glyphs. + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + function setTextUndefinedGlyphDisplay(noGlyphShow: TextUndefinedGlyphDisplay): void; } export default text; diff --git a/api/@ohos.graphics.uiEffect.d.ts b/api/@ohos.graphics.uiEffect.d.ts index e8e5fd8aac6c9d5817d07e5bd979b0ade1b75eb0..ddbdccd6a67961ec05d1929cdca6fb297fdd10cc 100644 --- a/api/@ohos.graphics.uiEffect.d.ts +++ b/api/@ohos.graphics.uiEffect.d.ts @@ -19,12 +19,16 @@ */ import { AsyncCallback } from './@ohos.base'; - +/*** if arkts 1.1 */ +import type common2D from './@ohos.graphics.common2D'; +import type image from './@ohos.multimedia.image'; +/*** endif */ /** * @namespace uiEffect * @syscap SystemCapability.Graphics.Drawing - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace uiEffect { @@ -32,7 +36,8 @@ declare namespace uiEffect { * The Filter for Component. * @typedef Filter * @syscap SystemCapability.Graphics.Drawing - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Filter { /** @@ -102,6 +107,104 @@ declare namespace uiEffect { * @since 13 */ distort(distortionK: number): Filter; + + /** + * Adds the content radius gradient blurring effect for the current component. The input parameter is the blurring radius. + * + * @param { number } value - the blurring radius. + * The larger the blurring radius, the more blurring the content, and if the value is 0, the content blurring effect is not blurring. + * @param { LinearGradientBlurOptions } options - the radius gradient blur options. + * @returns { Filter } - Returns radius gradient blur Filter. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.Graphics.Drawing + * @systemapi + * @since 19 + */ + radiusGradientBlur(value: number, options: LinearGradientBlurOptions): Filter; + + /** + * Sets the deformation effect controlled by bezier curves of the component. + * + * @param { Array<common2D.Point> } controlPoints - The bezier control points, 12 points needed. + * @returns { Filter } - Returns the Filter that the current effect have been added. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.Graphics.Drawing + * @systemapi + * @since 20 + */ + bezierWarp(controlPoints: Array<common2D.Point>): Filter; + + /** + * Sets the color gradient filter, may blend with alpha mask. + * + * @param { Array<Color> } colors + * @param { Array<common2D.Point> } positions + * @param { Array<number> } strengths + * @param { Mask } [alphaMask] + * @returns { Filter } - Returns the Filter that the current effect have been added. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.Graphics.Drawing + * @systemapi + * @since 20 + */ + colorGradient(colors: Array<Color>, positions: Array<common2D.Point>, strengths: Array<number>, + alphaMask?: Mask): Filter; + + /** + * Detects and glows edges of contents. + * + * @param { number } alpha + * @param { Color } [color] + * @param { Mask } [mask] + * @param { boolean } [bloom] + * @returns { Filter } - Returns the Filter that the current effect have been added. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.Graphics.Drawing + * @systemapi + * @since 20 + */ + edgeLight(alpha: number, color?: Color, mask?: Mask, bloom?: boolean): Filter; + + /** + * Sets distort effect with displacement map. + * + * @param { Mask } displacementMap + * @param { [number, number] } [factor] + * @returns { Filter } - Returns the Filter that the current effect have been added. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.Graphics.Drawing + * @systemapi + * @since 20 + */ + displacementDistort(displacementMap: Mask, factor?: [number, number]): Filter; + + /** + * Sets dispersion effect with mask map. + * + * @param { Mask } dispersionMap + * @param { number } alpha + * @param { [number, number] } [rFactor] + * @param { [number, number] } [gFactor] + * @param { [number, number] } [bFactor] + * @returns { Filter } - Returns the Filter that the current effect have been added. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.Graphics.Drawing + * @systemapi + * @since 20 + */ + maskDispersion(dispersionMap: Mask, alpha: number, rFactor?: [number, number], gFactor?: [number, number], + bFactor?: [number, number]): Filter; + + /** + * Applies a high dynamic range (HDR) brightness enhancement filter to the component. + * @param { number } ratio - The brightness multiplier ratio (1.0 = original, >1.0 = brighter). + * @returns { Filter } - Returns hdr brightness Filter. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.Graphics.Drawing + * @systemapi + * @since 20 + */ + hdrBrightnessRatio(ratio: number): Filter; } /** @@ -228,7 +331,8 @@ declare namespace uiEffect { * The VisualEffect of Component. * @typedef VisualEffect * @syscap SystemCapability.Graphics.Drawing - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ interface VisualEffect { /** @@ -237,7 +341,8 @@ declare namespace uiEffect { * @returns { VisualEffect } VisualEffects for the current effect have been added. * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ backgroundColorBlender(blender: BrightnessBlender): VisualEffect; } @@ -247,7 +352,8 @@ declare namespace uiEffect { * @typedef { BrightnessBlender } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 13 + * @since arkts {'1.1':'13', '1.2':'20'} + * @arkts 1.1&1.2 */ type Blender = BrightnessBlender; @@ -256,7 +362,8 @@ declare namespace uiEffect { * @typedef BrightnessBlender * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ interface BrightnessBlender { /** @@ -265,7 +372,8 @@ declare namespace uiEffect { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ cubicRate: number; @@ -275,7 +383,8 @@ declare namespace uiEffect { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ quadraticRate: number; @@ -285,7 +394,8 @@ declare namespace uiEffect { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ linearRate: number; @@ -295,7 +405,8 @@ declare namespace uiEffect { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ degree: number; @@ -305,7 +416,8 @@ declare namespace uiEffect { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ saturation: number; @@ -315,7 +427,8 @@ declare namespace uiEffect { * @type { [number, number, number] } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ positiveCoefficient: [number, number, number]; @@ -325,7 +438,8 @@ declare namespace uiEffect { * @type { [number, number, number] } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ negativeCoefficient: [number, number, number]; @@ -335,11 +449,89 @@ declare namespace uiEffect { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ fraction: number; } + /** + * The Color of Light. + * @typedef Color + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + interface Color { + /** + * Red component of color. + * @type { number } + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + red: number; + /** + * Green component of color. + * @type { number } + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + green: number; + /** + * Blue component of color + * @type { number } + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + blue: number; + /** + * Alpha component of color. + * @type { number } + * @syscap SystemCapability.Graphics.Drawing + * @since 20 + */ + alpha: number; + } + + /** + * Defines the mask for Filter or VisualEffect. + * @typedef { Mask } + * @syscap SystemCapability.Graphics.Drawing + * @systemapi + * @since 20 + */ + class Mask { + /** + * Create a Mask of ripple. + * @param { common2D.Point } center + * @param { number } radius + * @param { number } width + * @param { number } [offset] + * @returns { Mask } + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @systemapi + * @since 20 + */ + static createRippleMask(center: common2D.Point, radius: number, width: number, offset?: number): Mask; + + /** + * Create a Mask of pixelmap. + * @param { image.PixelMap } pixelMap + * @param { common2D.Rect } srcRect + * @param { common2D.Rect } dstRect + * @param { Color } [fillColor] + * @returns { Mask } + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Graphics.Drawing + * @systemapi + * @since 20 + */ + static createPixelMapMask(pixelMap: image.PixelMap, srcRect: common2D.Rect, dstRect: common2D.Rect, + fillColor?: Color): Mask; + } + /** * Create a Filter to add multiple effects to the component. * @returns { Filter } Returns the head node of Filter. @@ -352,7 +544,8 @@ declare namespace uiEffect { * Create a VisualEffect to add multiple effects to the component. * @returns { VisualEffect } Returns the head node of visualEffect. * @syscap SystemCapability.Graphics.Drawing - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function createEffect(): VisualEffect; @@ -362,7 +555,8 @@ declare namespace uiEffect { * @returns { BrightnessBlender } Returns the blender. * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function createBrightnessBlender(param: BrightnessBlenderParam): BrightnessBlender; } @@ -372,7 +566,8 @@ declare namespace uiEffect { * @typedef BrightnessBlenderParam * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare interface BrightnessBlenderParam { /** @@ -381,7 +576,8 @@ declare interface BrightnessBlenderParam { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ cubicRate: number; @@ -391,7 +587,8 @@ declare interface BrightnessBlenderParam { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ quadraticRate: number; @@ -401,7 +598,8 @@ declare interface BrightnessBlenderParam { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ linearRate: number; @@ -411,7 +609,8 @@ declare interface BrightnessBlenderParam { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ degree: number; @@ -421,7 +620,8 @@ declare interface BrightnessBlenderParam { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ saturation: number; @@ -431,7 +631,8 @@ declare interface BrightnessBlenderParam { * @type { [number, number, number] } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ positiveCoefficient: [number, number, number]; @@ -441,7 +642,8 @@ declare interface BrightnessBlenderParam { * @type { [number, number, number] } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ negativeCoefficient: [number, number, number]; @@ -451,7 +653,8 @@ declare interface BrightnessBlenderParam { * @type { number } * @syscap SystemCapability.Graphics.Drawing * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ fraction: number; } diff --git a/api/@ohos.hiSysEvent.d.ts b/api/@ohos.hiSysEvent.d.ts index f4401ee2f08647989b3fc08d8c27a9d9fb82a0bf..68feb315d7dceac77661e46aa0bf03bc987f7e28 100644 --- a/api/@ohos.hiSysEvent.d.ts +++ b/api/@ohos.hiSysEvent.d.ts @@ -16,6 +16,7 @@ /** * @file * @kit PerformanceAnalysisKit + * @arkts 1.1&1.2 */ import { AsyncCallback } from './@ohos.base'; @@ -28,7 +29,8 @@ import { AsyncCallback } from './@ohos.base'; * @namespace hiSysEvent * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace hiSysEvent { /** @@ -37,7 +39,8 @@ declare namespace hiSysEvent { * @enum {number} * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ enum EventType { /** @@ -45,7 +48,8 @@ declare namespace hiSysEvent { * * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ FAULT = 1, @@ -54,7 +58,8 @@ declare namespace hiSysEvent { * * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ STATISTIC = 2, @@ -63,7 +68,8 @@ declare namespace hiSysEvent { * * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ SECURITY = 3, @@ -72,7 +78,8 @@ declare namespace hiSysEvent { * * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ BEHAVIOR = 4 } @@ -83,7 +90,8 @@ declare namespace hiSysEvent { * @interface SysEventInfo * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ interface SysEventInfo { /** @@ -92,7 +100,8 @@ declare namespace hiSysEvent { * @type { string } * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ domain: string; @@ -102,7 +111,8 @@ declare namespace hiSysEvent { * @type { string } * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ name: string; @@ -112,7 +122,8 @@ declare namespace hiSysEvent { * @type { EventType } * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ eventType: EventType; @@ -130,7 +141,8 @@ declare namespace hiSysEvent { * @type { ?object } * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ params?: object; } @@ -154,7 +166,8 @@ declare namespace hiSysEvent { * @throws {BusinessError} 11200054 - The number of event parameters of the array type exceeds the limit. * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ function write(info: SysEventInfo): Promise<void>; @@ -177,7 +190,8 @@ declare namespace hiSysEvent { * @throws {BusinessError} 11200054 - The number of event parameters of the array type exceeds the limit. * @syscap SystemCapability.HiviewDFX.HiSysEvent * @systemapi hide for inner use - * @since 9 + * @since arkts {'1.1':'9','1.2':'20'} + * @arkts 1.1&1.2 */ function write(info: SysEventInfo, callback: AsyncCallback<void>): void; diff --git a/api/@ohos.hiTraceMeter.d.ts b/api/@ohos.hiTraceMeter.d.ts index a203466d09630807877aa4a788e4c5eaead91041..47b2820207864e15f14ebd668c453eefd80d8cf3 100644 --- a/api/@ohos.hiTraceMeter.d.ts +++ b/api/@ohos.hiTraceMeter.d.ts @@ -47,41 +47,94 @@ */ /** * Provides interfaces to trace a task for performance measure, the logs can be capture by the - * bytrace cmdline available on the device. + * hitrace cmdline on the device. * * <p>This interfaces trace the start, end, and value changes of key processes that last for at least 3 ms. * * <p>Example: * Track the beginning of a context: * <pre>{@code - * hiTraceMeter.startTrace("checkName", 111); + * hiTraceMeter.startAsyncTrace(hiTraceMeter.HiTraceOutputLevel.COMMERCIAL, "checkName", 111, "test", "key=value"); * }</pre> * Track the end of a context: * <pre>{@code - * hiTraceMeter.finishTrace("checkName", 111); + * hiTraceMeter.finishAsyncTrace(hiTraceMeter.HiTraceOutputLevel.COMMERCIAL, "checkName", 111); * }</pre> * To trace the number of layers, which is 3: * <pre>{@code - * hiTraceMeter.traceByValue("curLayer", 3); + * hiTraceMeter.traceByValue(hiTraceMeter.HiTraceOutputLevel.COMMERCIAL, "curLayer", 3); + * }</pre> + * + * <p>Each {@code startTrace} matches one {@code finishTrace}, and they must have the same name + * and taskId. + * + * <p>Each {@code startSyncTrace} matches one {@code finishSyncTrace}, and they must have the same + * level and name. + * + * <p>Each {@code startAsyncTrace} matches one {@code finishAsyncTrace}, and they must have the same + * level, name and taskId. + * + * @namespace hiTraceMeter + * @syscap SystemCapability.HiviewDFX.HiTrace + * @atomicservice + * @since 19 + */ +/** + * Provides interfaces to trace a task for performance measure, the logs can be capture by the + * hitrace cmdline on the device. + * + * <p>This interfaces trace the start, end, and value changes of key processes that last for at least 3 ms. + * + * <p>Example: + * Track the beginning of a context: + * <pre>{@code + * hiTraceMeter.startAsyncTrace(hiTraceMeter.HiTraceOutputLevel.COMMERCIAL, "checkName", 111, "test", "key=value"); + * }</pre> + * Track the end of a context: + * <pre>{@code + * hiTraceMeter.finishAsyncTrace(hiTraceMeter.HiTraceOutputLevel.COMMERCIAL, "checkName", 111); + * }</pre> + * To trace the number of layers, which is 3: + * <pre>{@code + * hiTraceMeter.traceByValue(hiTraceMeter.HiTraceOutputLevel.COMMERCIAL, "curLayer", 3); * }</pre> * * <p>Each {@code startTrace} matches one {@code finishTrace}, and they must have the same name * and taskId. * + * <p>Each {@code startSyncTrace} matches one {@code finishSyncTrace}, and they must have the same + * level and name. + * + * <p>Each {@code startAsyncTrace} matches one {@code finishAsyncTrace}, and they must have the same + * level, name and taskId. + * * @namespace hiTraceMeter * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform * @atomicservice - * @since 18 + * @since 20 + * @arkts 1.1&1.2 */ declare namespace hiTraceMeter { /** - * Enumerates the HiTrace output levels. The output level threshold system parameter determines the minimum output trace. + * Enumerates the HiTrace output levels. The output level threshold system parameter determines + * the minimum output trace. + * + * @enum { number } + * @syscap SystemCapability.HiviewDFX.HiTrace + * @atomicservice + * @since 19 + */ + /** + * Enumerates the HiTrace output levels. The output level threshold system parameter determines + * the minimum output trace. * * @enum { number } * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ enum HiTraceOutputLevel { /** @@ -89,34 +142,66 @@ declare namespace hiTraceMeter { * * @syscap SystemCapability.HiviewDFX.HiTrace * @atomicservice - * @since 18 + * @since 19 + */ + /** + * Ouput level only for debug usage. + * + * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform + * @atomicservice + * @since 20 */ DEBUG = 0, /** - * Output level for beta version usage. + * Output level for log version usage. + * + * @syscap SystemCapability.HiviewDFX.HiTrace + * @atomicservice + * @since 19 + */ + /** + * Output level for log version usage. * * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ INFO = 1, /** - * Output level for beta version usage, with higher priority than INFO. + * Output level for log version usage, with higher priority than INFO. + * + * @syscap SystemCapability.HiviewDFX.HiTrace + * @atomicservice + * @since 19 + */ + /** + * Output level for log version usage, with higher priority than INFO. * * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ CRITICAL = 2, /** - * Output level for commercial version usage. + * Output level for nolog version usage. + * + * @syscap SystemCapability.HiviewDFX.HiTrace + * @atomicservice + * @since 19 + */ + /** + * Output level for nolog version usage. * * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ COMMERCIAL = 3, @@ -125,7 +210,15 @@ declare namespace hiTraceMeter { * * @syscap SystemCapability.HiviewDFX.HiTrace * @atomicservice - * @since 18 + * @since 19 + */ + /** + * Output level range limit. + * + * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform + * @atomicservice + * @since 20 */ MAX = COMMERCIAL } @@ -155,7 +248,23 @@ declare namespace hiTraceMeter { * @param { number } taskId The unique id used to distinguish the tasks and match with the id in follow finishTrace. * @syscap SystemCapability.HiviewDFX.HiTrace * @atomicservice - * @since 18 + * @since 19 + */ + /** + * Records a trace marking it as the start of a task, can with the expected completion time between + * startTrace and finishTrace. + * + * This method is invoked at the start of a transaction to indicate that a task has started, whose name + * is specified by {@code name}, and the taskId is used to distinguish the tasks. It must be followed by + * {@link #finishTrace}, the name and taskId need to be the same. + * + * @param { string } name Indicates the task name. + * @param { number } taskId The unique id used to distinguish the tasks and match with the id in follow finishTrace. + * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 */ function startTrace(name: string, taskId: number): void; @@ -175,14 +284,29 @@ declare namespace hiTraceMeter { * Records a trace and marks it as the end of a task. * * This method is invoked at the end of a transaction to indicate that a task has ended, whose name - * is specified by {@code name}. This method must be invoked after the the startTrace. + * is specified by {@code name}. This method must be invoked after {@link #startTrace}. * * @param { string } name Indicates the task name. It must be the same with the {@code name} of startTrace. - * @param { number } taskId The unique id used to distinguish the tasks and must be the same with the . + * @param { number } taskId The unique id used to distinguish the tasks and must be the same with the * {@code taskId} of startTrace. * @syscap SystemCapability.HiviewDFX.HiTrace * @atomicservice - * @since 18 + * @since 19 + */ + /** + * Records a trace and marks it as the end of a task. + * + * This method is invoked at the end of a transaction to indicate that a task has ended, whose name + * is specified by {@code name}. This method must be invoked after {@link #startTrace}. + * + * @param { string } name Indicates the task name. It must be the same with the {@code name} of startTrace. + * @param { number } taskId The unique id used to distinguish the tasks and must be the same with the + * {@code taskId} of startTrace. + * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 */ function finishTrace(name: string, taskId: number): void; @@ -201,7 +325,17 @@ declare namespace hiTraceMeter { * @param { number } count Indicates the number of the count. * @syscap SystemCapability.HiviewDFX.HiTrace * @atomicservice - * @since 18 + * @since 19 + */ + /** + * Records a trace for generating a count, such as clock pulse and the number of layers. + * + * @param { string } name Indicates the name used to identify the count. + * @param { number } count Indicates the number of the count. + * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform + * @atomicservice + * @since 20 */ function traceByValue(name: string, count: number): void; @@ -214,11 +348,27 @@ declare namespace hiTraceMeter { * * @param { HiTraceOutputLevel } level Indicates trace output priority level. * @param { string } name Indicates the task name. - * @param { string } customArgs Indicates key=value pair to be outputed in trace; multiple pairs should use comma - * as seperator. + * @param { string } customArgs Indicates key=value pair to be output in trace; multiple pairs should use comma + * as separator. + * @syscap SystemCapability.HiviewDFX.HiTrace + * @atomicservice + * @since 19 + */ + /** + * Records a trace marking it as the start of a task. + * + * This method is invoked at the start of a transaction to indicate that a task has started, whose name + * is specified by {@code name}, and the taskId is used to distinguish the tasks. It must be followed by + * {@link #finishSyncTrace}, called by the same thread with the same level. + * + * @param { HiTraceOutputLevel } level Indicates trace output priority level. + * @param { string } name Indicates the task name. + * @param { string } customArgs Indicates key=value pair to be output in trace; multiple pairs should use comma + * as separator. * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ function startSyncTrace(level: HiTraceOutputLevel, name: string, customArgs?: string): void; @@ -227,12 +377,25 @@ declare namespace hiTraceMeter { * * This method is invoked at the end of a transaction to indicate that the nearest running task tracked by * startSyncTrace that has yet to be marked by finishSyncTrace, has ended. - * This method must be invoked after the the {@link #startSyncTrace}, by the same thread. + * This method must be invoked after {@link #startSyncTrace}, called by the same thread with the same level. + * + * @param { HiTraceOutputLevel } level Indicates trace output priority level. + * @syscap SystemCapability.HiviewDFX.HiTrace + * @atomicservice + * @since 19 + */ + /** + * Records a trace and marks it as the end of a task. + * + * This method is invoked at the end of a transaction to indicate that the nearest running task tracked by + * startSyncTrace that has yet to be marked by finishSyncTrace, has ended. + * This method must be invoked after {@link #startSyncTrace}, called by the same thread with the same level. * * @param { HiTraceOutputLevel } level Indicates trace output priority level. * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ function finishSyncTrace(level: HiTraceOutputLevel): void; @@ -245,28 +408,67 @@ declare namespace hiTraceMeter { * * @param { HiTraceOutputLevel } level Indicates trace output priority level. * @param { string } name Indicates the task name. - * @param { number } taskId The unique id used to distinguish the task and match with the id of the corresponding finishAsyncTrace. + * @param { number } taskId The unique id used to distinguish the task and match with the id of the + * corresponding finishAsyncTrace. * @param { string } customCategory Indicates the label to aggregate asynchronous task display. - * @param { string } customArgs Indicates key=value pair to be outputed in trace; multiple pairs should use comma as seperator. + * @param { string } customArgs Indicates key=value pair to be output in trace; multiple pairs should use comma + * as Separator. * @syscap SystemCapability.HiviewDFX.HiTrace * @atomicservice - * @since 18 + * @since 19 */ - function startAsyncTrace(level: HiTraceOutputLevel, name: string, taskId: number, customCategory: string, customArgs?: string): void; + /** + * Records a trace marking it as the start of a task. + * + * This method is invoked at the start of a transaction to indicate that a task has started, whose name + * is specified by {@code name}, and the taskId is used to distinguish the tasks. It must be followed by a + * corresponding {@link #finishAsyncTrace}, with the same level, name, and taskId. + * + * @param { HiTraceOutputLevel } level Indicates trace output priority level. + * @param { string } name Indicates the task name. + * @param { number } taskId The unique id used to distinguish the task and match with the id of the + * corresponding finishAsyncTrace. + * @param { string } customCategory Indicates the label to aggregate asynchronous task display. + * @param { string } customArgs Indicates key=value pair to be output in trace; multiple pairs should use comma + * as Separator. + * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform + * @atomicservice + * @since 20 + */ + function startAsyncTrace(level: HiTraceOutputLevel, name: string, taskId: number, customCategory: string, + customArgs?: string): void; /** * Records a trace and marks it as the end of a task. * * This method is invoked at the end of a transaction to indicate that a task has ended, whose name is specified - * by {@code name}. This method must be invoked after the the {@link #startAsyncTrace}, with the same level, name, and taskId. - * It is not required to be invoked by the same thread calling startAsyncTrace. + * by {@code name}. This method must be invoked after {@link #startAsyncTrace}, with the same level, name, + * and taskId. It is not required to be invoked by the same thread calling startAsyncTrace. * * @param { HiTraceOutputLevel } level Indicates trace output priority level. * @param { string } name Indicates the task name. - * @param { number } taskId The unique id used to distinguish the task and match with the id of the corresponding startAsyncTrace. + * @param { number } taskId The unique id used to distinguish the task and match with the id of the corresponding + * startAsyncTrace. * @syscap SystemCapability.HiviewDFX.HiTrace * @atomicservice - * @since 18 + * @since 19 + */ + /** + * Records a trace and marks it as the end of a task. + * + * This method is invoked at the end of a transaction to indicate that a task has ended, whose name is specified + * by {@code name}. This method must be invoked after {@link #startAsyncTrace}, with the same level, name, + * and taskId. It is not required to be invoked by the same thread calling startAsyncTrace. + * + * @param { HiTraceOutputLevel } level Indicates trace output priority level. + * @param { string } name Indicates the task name. + * @param { number } taskId The unique id used to distinguish the task and match with the id of the corresponding + * startAsyncTrace. + * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform + * @atomicservice + * @since 20 */ function finishAsyncTrace(level: HiTraceOutputLevel, name: string, taskId: number): void; @@ -278,7 +480,18 @@ declare namespace hiTraceMeter { * @param { number } count Indicates the number of the count. * @syscap SystemCapability.HiviewDFX.HiTrace * @atomicservice - * @since 18 + * @since 19 + */ + /** + * Records a trace for generating a count, such as clock pulse and the number of layers. + * + * @param { HiTraceOutputLevel } level Indicates trace output priority level. + * @param { string } name Indicates the name used to identify the count. + * @param { number } count Indicates the number of the count. + * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform + * @atomicservice + * @since 20 */ function traceByValue(level: HiTraceOutputLevel, name: string, count: number): void; @@ -288,7 +501,16 @@ declare namespace hiTraceMeter { * @returns { boolean } The status of whether the current process is allowed to output trace. * @syscap SystemCapability.HiviewDFX.HiTrace * @atomicservice - * @since 18 + * @since 19 + */ + /** + * Return whether the current process is allowed to output trace. + * + * @returns { boolean } The status of whether the current process is allowed to output trace. + * @syscap SystemCapability.HiviewDFX.HiTrace + * @crossplatform + * @atomicservice + * @since 20 */ function isTraceEnabled(): boolean; diff --git a/api/@ohos.hidebug.d.ts b/api/@ohos.hidebug.d.ts index 329efe1e955fa22d58250f8194ecab9e09b4c523..995a9767549d76dc82988d6c98ce0cea910f75c1 100644 --- a/api/@ohos.hidebug.d.ts +++ b/api/@ohos.hidebug.d.ts @@ -28,93 +28,105 @@ */ /** - * Provide interfaces related to debugger access and obtaining CPU, - * memory and other virtual machine information during runtime for JS programs + * This module provides multiple methods for debugging and profiling applications. With these methods, you can obtain + * memory, CPU, GPU, and GC data, collect process trace and profiler data, and dump VM heap snapshots. Since most APIs + * of this module are both performance-consuming and time-consuming, and are defined based on the HiDebug module, + * you are advised to use these APIs only during the application debugging and profiling phases. If the APIs are + * required in other scenarios, evaluate the impact of the APIs on application performance. * * @namespace hidebug * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @atomicservice * @since 12 */ - declare namespace hidebug { /** - * Get total native heap memory size + * Obtains the total number of bytes occupied by the total space (the sum of uordblks and fordblks obtained from + * mallinfo) held by a process, which is measured by the memory allocator. * - * @returns { bigint } Returns total native heap memory size. + * @returns { bigint } Returns the total number of bytes occupied by the total space. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 8 */ function getNativeHeapSize(): bigint; /** - * Get Native heap memory allocation size. - * @returns { bigint } Returns native heap memory allocation size. + * Obtains the total number of bytes occupied by the total allocated space (uordblks obtained from mallinfo) held by + * a process, which is measured by the memory allocator. + * @returns { bigint } Returns the total number of bytes occupied by the total allocated space. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 8 */ function getNativeHeapAllocatedSize(): bigint; /** - * Get Native heap memory free size + * Obtains the total number of bytes occupied by the total free space (fordblks obtained from mallinfo) + * held by a process, which is measured by the memory allocator. * - * @returns { bigint } Returns native heap memory free size. + * @returns { bigint } Returns the size of the memory occupied by the free normal blocks held by the process, in bytes. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 8 */ function getNativeHeapFreeSize(): bigint; /** - * Get the virtual set size memory of the application process + * Obtains the virtual set size used by the application process. This API is implemented by multiplying the value of + * size (number of memory pages) in the /proc/{pid}/statm node by the page size (4 KB per page). * - * @returns { bigint } Returns application process virtual set size memory information. + * @returns { bigint } Returns the virtual set size used by the application process, in KB. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 11 */ function getVss(): bigint; /** - * Get application process proportional set size memory information + * Obtains the size of the physical memory actually used by the application process. This API is implemented by + * summing up the values of **Pss** and **SwapPss** in the /proc/{pid}/smaps_rollup** node. * - * @returns { bigint } Returns application process proportional set size memory information. + * @returns { bigint } Returns the size of the physical memory actually used by the application process, in KB. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 8 */ function getPss(): bigint; /** - * Obtains the size of the shared dirty memory of a process. + * Obtains the size of the shared dirty memory of a process. This API is implemented by reading the value of + * Shared_Dirty in the /proc/{pid}/smaps_rollup node. * - * @returns { bigint } Returns the size of the shared dirty memory. + * @returns { bigint } Returns the size of the shared dirty memory of the process, in KB. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 8 */ function getSharedDirty(): bigint; /** - * Obtains the size of the private dirty memory of a process. - * @returns { bigint } Returns the size of the private dirty memory. + * Obtains the size of the private dirty memory of a process. This API is implemented by reading the value of + * Private_Dirty in the /proc/{pid}/smaps_rollup node. + * + * @returns { bigint } Returns the size of the private dirty memory of the process, in KB. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 9 */ function getPrivateDirty(): bigint; /** - * Obtains the cpu usage percent of a process. + * Obtains the CPU usage of a process. * - * @returns { number } Returns the cpu usage of a process. + * @returns { number } Returns the CPU usage of the process. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 9 */ function getCpuUsage(): number; /** - * Start CPU Profiling. - * The input parameter is a user-defined file name, excluding the file suffix. - * The generated file is in the files folder under the application directory. - * Such as "/data/accounts/account_0/appdata/[package name]/files/cpuprofiler-xxx.json" * - * @param { string } filename - Indicates the user-defined file name, excluding the file suffix. + * Starts the VM profiling method. startProfiling(filename: string) and stopProfiling() are called in pairs. + * startProfiling(filename: string) always occurs before stopProfiling(). You are advised not to call either of these + * methods repeatedly. Otherwise, an exception may occur. The generated file is in the files folder under the + * application directory. Such as "/data/accounts/account_0/appdata/[package name]/files/cpuprofiler-xxx.json" + * + * @param { string } filename - User-defined file name of the sampling data. The .json file is generated + * in the files directory of the application based on the specified file name. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 8 * @deprecated since 9 @@ -123,8 +135,9 @@ declare namespace hidebug { function startProfiling(filename: string): void; /** - * Stop CPU Profiling. - * It takes effect only when the CPU profiler is turned on + * Stops the VM profiling method. stopProfiling() and startProfiling(filename: string) are called in pairs. + * startProfiling(filename: string) always occurs before stopProfiling(). You are advised not to call either of these + * methods repeatedly. Otherwise, an exception may occur. It takes effect only when the CPU profiler is turned on. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 8 @@ -134,10 +147,10 @@ declare namespace hidebug { function stopProfiling(): void; /** - * Dump JS Virtual Machine Heap Snapshot. + * Exports the VM heap data and generates a filename.heapsnapshot file. * The input parameter is a user-defined file name, excluding the file suffix. * The generated file is in the files folder under the application directory. - * Such as "/data/accounts/account_0/appdata/[package name]/files/xxx.heapsnapshot" + * Such as "/data/accounts/account_0/appdata/[package name]/files/xxx.heapsnapshot". * * @param { string } filename - Indicates the user-defined file name, excluding the file suffix. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -148,11 +161,12 @@ declare namespace hidebug { function dumpHeapData(filename: string): void; /** - * Start CPU Profiling. - * The input parameter is a user-defined file name, excluding the file suffix. - * The generated file is in the files folder under the application directory. + * Starts the VM profiling method. startJsCpuProfiling(filename: string) and stopJsCpuProfiling() are called in pairs. + * startJsCpuProfiling(filename: string) always occurs before stopJsCpuProfiling(). You are advised not to call either + * of these methods repeatedly. Otherwise, an exception may occur. * - * @param { string } filename - Indicates the user-defined file name, excluding the file suffix. + * @param { string } filename - User-defined heap file name. The .heapsnapshot file is generated in the files + * directory of the application based on the specified file name. * @throws {BusinessError} 401 - the parameter check failed, Parameter type error * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 9 @@ -160,8 +174,9 @@ declare namespace hidebug { function startJsCpuProfiling(filename: string): void; /** - * Stop CPU Profiling. - * It takes effect only when the CPU profiler is turned on + * Stops the VM profiling method. stopJsCpuProfiling() and startJsCpuProfiling(filename: string) are called in pairs. + * startJsCpuProfiling() always occurs before stopJsCpuProfiling(). You are advised not to call either of these + * methods repeatedly. Otherwise, an exception may occur. It takes effect only when the CPU profiler is turned on * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 9 @@ -169,29 +184,30 @@ declare namespace hidebug { function stopJsCpuProfiling(): void; /** - * Dump JS Virtual Machine Heap Snapshot. + * Exports the heap data. * The input parameter is a user-defined file name, excluding the file suffix. * The generated file is in the files folder under the application directory. * - * @param { string } filename - Indicates the user-defined file name, excluding the file suffix. - * @throws {BusinessError} 401 - the parameter check failed, Parameter type error + * @param { string } filename - User-defined file name of the sampling data. The .heapsnapshot file is generated + * in the files directory of the application based on the specified file name. + * @throws {BusinessError} 401 - the parameter check failed, Parameter type error. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 9 */ function dumpJsHeapData(filename: string): void; /** - * Get a debugging dump of a system service by service id. + * Obtains system service information. * It need dump permission. * This API can be called only by system application. * * @permission ohos.permission.DUMP - * @param { number } serviceid - Indicates the id of the service ability. - * @param { number } fd - The file descriptor. - * @param { Array<string> } args - The args list of the system ability dump interface. - * @throws {BusinessError} 401 - the parameter check failed, Possible causes: + * @param { number } serviceid - Obtains the system service information based on the specified service ID. + * @param { number } fd - File descriptor to which data is written by the API. + * @param { Array<string> } args - Parameter list of the Dump API of the system service. + * @throws {BusinessError} 401 - the parameter check failed,Possible causes: * 1.the parameter type error - * 2.the args parameter is not string array + * 2.the args parameter is not string array. * @throws {BusinessError} 11400101 - ServiceId invalid. The system ability does not exist. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 9 @@ -199,9 +215,9 @@ declare namespace hidebug { function getServiceDump(serviceid: number, fd: number, args: Array<string>): void; /** - * Obtains the cpu usage of system. + * Obtains the CPU usage of the system. * - * @returns { number } Returns the cpu usage of system. + * @returns { number } Returns the CPU usage of the system. * @throws { BusinessError } 11400104 - The status of the system CPU usage is abnormal. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 @@ -209,7 +225,7 @@ declare namespace hidebug { function getSystemCpuUsage(): number; /** - * Application CPU usage of thread. + * Describes the CPU usage of a thread. * * @interface ThreadCpuUsage * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -225,7 +241,7 @@ declare namespace hidebug { */ threadId: number; /** - * Cpu usage of thread + * CPU usage of the thread. * * @type { number } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -235,16 +251,16 @@ declare namespace hidebug { } /** - * Get the CPU usage of all threads in the application. + * Obtains the CPU usage of application threads. * - * @returns { ThreadCpuUsage[] } Returns the CPU usage of all threads in the application. + * @returns { ThreadCpuUsage[] } Returns the CPU usage of all threads of the current application process. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ function getAppThreadCpuUsage(): ThreadCpuUsage[]; /** - * System memory information + * Describes the system memory information, including the total memory, free memory, and available memory. * * @interface SystemMemInfo * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -252,7 +268,8 @@ declare namespace hidebug { */ interface SystemMemInfo { /** - * Total system memory size, in kilobyte + * Total memory of the system, in KB. The value of this parameter is obtained by reading the value of + * MemTotal in the /proc/meminfo node. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -260,7 +277,8 @@ declare namespace hidebug { */ totalMem: bigint; /** - * System free memory size, in kilobyte + * Free memory of the system, in KB. The value of this parameter is obtained by reading the value of + * MemFree in the /proc/meminfo node. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -268,7 +286,8 @@ declare namespace hidebug { */ freeMem: bigint; /** - * System available memory size, in kilobyte + * Available memory of the system, in KB. The value of this parameter is obtained by reading the value of + * MemAvailable in the /proc/meminfo node. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -278,16 +297,16 @@ declare namespace hidebug { } /** - * Obtains the system memory size. + * Obtains system memory information. This API is implemented by reading data from the /proc/meminfo node. * - * @returns { SystemMemInfo } Returns system memory size. + * @returns { SystemMemInfo } Returns the system memory information. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ function getSystemMemInfo(): SystemMemInfo; /** - * Application process native memory information. + * Describes memory information of the application process. * * @interface NativeMemInfo * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -295,7 +314,9 @@ declare namespace hidebug { */ interface NativeMemInfo { /** - * Process proportional set size memory, in kilobyte + * Size of the occupied physical memory (including the proportionally allocated memory occupied by the shared + * library), in KB. The value of this parameter is obtained by summing up the values of Pss and SwapPss in the + * /proc/{pid}/smaps_rollup node. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -303,7 +324,9 @@ declare namespace hidebug { */ pss: bigint; /** - * Virtual set size memory, in kilobyte + * Size of the occupied virtual memory (including the memory occupied by the shared library), in KB. The value of + * this parameter is obtained by multiplying the value of size (number of memory pages) in the /proc/{pid}/statm + * node by the page size (4 KB per page). * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -311,7 +334,8 @@ declare namespace hidebug { */ vss: bigint; /** - * Resident set size, in kilobyte + * Size of the occupied physical memory (including the memory occupied by the shared library), in KB. + * The value of this parameter is obtained by reading the value of Rss in the /proc/{pid}/smaps_rollup node. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -319,7 +343,8 @@ declare namespace hidebug { */ rss: bigint; /** - * The size of the shared dirty memory, in kilobyte + * Size of the shared dirty memory, in KB. The value of this parameter is obtained by reading the value of + * Shared_Dirty in the /proc/{pid}/smaps_rollup node. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -327,7 +352,8 @@ declare namespace hidebug { */ sharedDirty: bigint; /** - * The size of the private dirty memory, in kilobyte + * Size of the private dirty memory, in KB. The value of this parameter is obtained by reading the value of + * Private_Dirty in the /proc/{pid}/smaps_rollup node. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -335,7 +361,8 @@ declare namespace hidebug { */ privateDirty: bigint; /** - * The size of the shared clean memory, in kilobyte + * Size of the shared clean memory, in KB. The value of this parameter is obtained by reading the value of + * Shared_Clean in the /proc/{pid}/smaps_rollup node. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -343,7 +370,8 @@ declare namespace hidebug { */ sharedClean: bigint; /** - * The size of the private clean memory, in kilobyte + * Size of the private clean memory, in KB. The value of this parameter is obtained by reading the value of + * Private_Clean in the /proc/{pid}/smaps_rollup node. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -353,16 +381,17 @@ declare namespace hidebug { } /** - * Obtains the memory information of application process. + * Obtains the memory information of the application process. This API is implemented by reading data from the + * /proc/{pid}/smaps_rollup and /proc/{pid}/statm node. * - * @returns { NativeMemInfo } Returns the native memory of a process. + * @returns { NativeMemInfo } Returns the memory information of the application process. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ function getAppNativeMemInfo(): NativeMemInfo; /** - * Application process memory limit + * Defines the memory limit of the application process. * * @interface MemoryLimit * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -370,7 +399,7 @@ declare namespace hidebug { */ interface MemoryLimit { /** - * The limit of the application process's resident set, in kilobyte + * Limit on the resident set size, in KB. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -378,7 +407,7 @@ declare namespace hidebug { */ rssLimit: bigint; /** - * The limit of the application process's virtual memory, in kilobyte + * Limit on the virtual memory size, in KB. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -386,7 +415,7 @@ declare namespace hidebug { */ vssLimit: bigint; /** - * The limit of the js vm heap size of current virtual machine, in kilobyte + * Limit on the JS VM heap size of the calling thread, in KB. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -394,7 +423,7 @@ declare namespace hidebug { */ vmHeapLimit: bigint; /** - * The limit of the total js vm heap size of process, in kilobyte + * Size limit of the JS heap memory of the process, in KB. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -404,16 +433,16 @@ declare namespace hidebug { } /** - * Obtains the memory limit of application process. + * Obtains the memory limit of an application process. * - * @returns { MemoryLimit } Returns memory limit of application. + * @returns { MemoryLimit } Returns the memory limit of the application process. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ function getAppMemoryLimit(): MemoryLimit; /** - * The memory information of application virtual machine. + * Describes the VM memory information. * * @interface VMMemoryInfo * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -421,7 +450,7 @@ declare namespace hidebug { */ interface VMMemoryInfo { /** - * Total size of current virtual machine Heap, in kilobyte + * Total heap size of the current VM, in KB. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -429,7 +458,7 @@ declare namespace hidebug { */ totalHeap: bigint; /** - * Used size of current virtual machine Heap, in kilobyte + * Heap size used by the current VM, in KB. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -437,7 +466,7 @@ declare namespace hidebug { */ heapUsed: bigint; /** - * All array object size of current virtual machine, in kilobyte + * Size of all array objects of the current VM, in KB. * * @type { bigint } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -447,16 +476,16 @@ declare namespace hidebug { } /** - * Obtains the memory information of application virtual machine. + * Obtains VM memory information. * - * @returns { VMMemoryInfo } Returns memory information of application virtual machine. + * @returns { VMMemoryInfo } Returns the VM memory information. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ function getAppVMMemoryInfo(): VMMemoryInfo; /** - * Enum for trace flag + * Describes types of trace collection threads, including the main thread and all threads. * * @enum { number } * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -464,14 +493,14 @@ declare namespace hidebug { */ enum TraceFlag { /** - * Only capture main thread trace + * The main thread of the application. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ MAIN_THREAD = 1, /** - * Capture all thread trace + * All threads of the application. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 @@ -480,7 +509,7 @@ declare namespace hidebug { } /** - * Provide trace tags + * Enumerates the tags used in trace collection. * * @namespace tags * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -488,224 +517,224 @@ declare namespace hidebug { */ namespace tags { /** - * Ability Manager tag. + * Ability Manager tag. The corresponding HiTrace command is tagName:ability. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const ABILITY_MANAGER: number; /** - * ARKUI development framework tag. + * ArkUI development framework. The corresponding HiTrace command is tagName:ace. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const ARKUI: number; /** - * ARK tag. + * JSVM VM. The corresponding HiTrace command is tagName:ark. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const ARK: number; /** - * Bluetooth tag. + * Bluetooth. The corresponding HiTrace command is tagName:bluetooth. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const BLUETOOTH: number; /** - * Common library subsystem tag. + * Common library subsystem. The corresponding HiTrace command is tagName:commonlibrary. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const COMMON_LIBRARY: number; /** - * Distributed hardware device manager tag. + * Distributed hardware device management. The corresponding HiTrace command is tagName:devicemanager. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const DISTRIBUTED_HARDWARE_DEVICE_MANAGER: number; /** - * Distributed audio tag. + * Distributed audio. The corresponding HiTrace command is tagName:daudio. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const DISTRIBUTED_AUDIO: number; /** - * Distributed camera tag. + * Distributed camera. The corresponding HiTrace command is tagName:dcamera. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const DISTRIBUTED_CAMERA: number; /** - * Distributed data manager module tag. + * Distributed data management. The corresponding HiTrace command is tagName:distributeddatamgr. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const DISTRIBUTED_DATA: number; /** - * Distributed hardware framework tag. + * Distributed hardware framework. The corresponding HiTrace command is tagName:dhfwk. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const DISTRIBUTED_HARDWARE_FRAMEWORK: number; /** - * Distributed input tag. + * Distributed input. The corresponding HiTrace command is tagName:dinput. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const DISTRIBUTED_INPUT: number; /** - * Distributed screen tag. + * Distributed screen. The corresponding HiTrace command is tagName:dscreen. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const DISTRIBUTED_SCREEN: number; /** - * Distributed scheduler tag. + * Distributed scheduler. The corresponding HiTrace command is tagName:dsched. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const DISTRIBUTED_SCHEDULER: number; /** - * FFRT tasks. + * FFRT task. The corresponding HiTrace command is tagName:ffrt. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const FFRT: number; /** - * File management tag. + * File management system. The corresponding HiTrace command is tagName:filemanagement. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const FILE_MANAGEMENT: number; /** - * Global resource manager tag. + * Global resource management. The corresponding HiTrace command is tagName:gresource. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const GLOBAL_RESOURCE_MANAGER: number; /** - * Graphics module tag. + * Graphics module. The corresponding HiTrace command is tagName:graphic. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const GRAPHICS: number; /** - * HDF subsystem tag. + * HDF subsystem. The corresponding HiTrace command is tagName:hdf. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const HDF: number; /** - * MISC module tag. + * MISC module. The corresponding HiTrace command is tagName:misc. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const MISC: number; /** - * Multimodal input module tag. + * Multi-modal input module. The corresponding HiTrace command is tagName:multimodalinput. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const MULTIMODAL_INPUT: number; /** - * Net tag. + * Network. The corresponding HiTrace command is tagName:net. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const NET: number; /** - * Notification module tag. + * Notification module. The corresponding HiTrace command is tagName:notification. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const NOTIFICATION: number; /** - * NWeb tag. + * Nweb. The corresponding HiTrace command is tagName:nweb. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const NWEB: number; /** - * OHOS generic tag. + * OHOS. The corresponding HiTrace command is tagName:ohos. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const OHOS: number; /** - * Power manager tag. + * Power management. The corresponding HiTrace command is tagName:power. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const POWER_MANAGER: number; /** - * RPC tag. + * RPC. The corresponding HiTrace command is tagName:rpc. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const RPC: number; /** - * SA tag. + * System capability management. The corresponding HiTrace command is tagName:samgr. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const SAMGR: number; /** - * Window manager tag. + * Window management. The corresponding HiTrace command is tagName:window. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const WINDOW_MANAGER: number; /** - * Audio module tag. + * Audio module. The corresponding HiTrace command is tagName:zaudio. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const AUDIO: number; /** - * Camera module tag. + * Camera module. The corresponding HiTrace command is tagName:zcamera. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const CAMERA: number; /** - * Image module tag. + * Image module. The corresponding HiTrace command is tagName:zimage. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ const IMAGE: number; /** - * Media module tag. + * Media module. The corresponding HiTrace command is tagName:zmedia. * * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 @@ -714,12 +743,15 @@ declare namespace hidebug { } /** - * Start capture application trace. + * Starts automatic trace collection in a specified scope. This API is a supplement to the HiTrace module. + * The performance consumption during trace collection increases with the collection scope. Therefore, before + * using this API, you are advised to run the hitrace command to capture trace logs and select the key scope + * of trace collection to improve the API performance. * - * @param { number[] } tags - Tag of trace. - * @param { TraceFlag } flag - Trace flag. - * @param { number } limitSize - Max size of trace file, in bytes, the max is 500MB. - * @returns { string } Returns absolute path of the trace file. + * @param { number[] } tags - Scope for trace collection. For details, see tags. + * @param { TraceFlag } flag - For details, see TraceFlag. + * @param { number } limitSize - Limit on the trace file size, in bytes. The maximum size of a single file is 500 MB. + * @returns { string } Returns the path of the trace file. * @throws { BusinessError } 401 - Invalid argument, Possible causes: * 1.The limit parameter is too small * 2.The parameter is not within the enumeration type @@ -733,17 +765,19 @@ declare namespace hidebug { function startAppTraceCapture(tags: number[], flag: TraceFlag, limitSize: number): string; /** - * Stop capture application trace. + * Stops application trace collection. Use startAppTraceCapture() to start collection before calling this API. + * If this API is called before trace collection or it is repeatedly called, an exception will occur. * - * @throws { BusinessError } 11400104 - The status of the trace is abnormal - * @throws { BusinessError } 11400105 - No capture trace running + * @throws { BusinessError } 11400104 - The status of the trace is abnormal. + * @throws { BusinessError } 11400105 - No capture trace running. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ function stopAppTraceCapture(): void; /** - * Collection statistics. + * Describes the key-value pair used to store GC statistics. This type does not support multi-thread operations. + * If this type is operated by multiple threads at the same time in an application, use a lock for it. * * @typedef { Record<string, number> } GcStats * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug @@ -752,19 +786,19 @@ declare namespace hidebug { type GcStats = Record<string, number>; /** - * Get the garbage collection statistics. + * Obtains all system GC statistics. * - * @returns { GcStats } Returns garbage collection statistics. + * @returns { GcStats } Returns the system GC statistics. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ function getVMRuntimeStats(): GcStats; /** - * Get the garbage collection statistics by statistical item. + * Obtains the specified system GC statistics based on parameters. * * @param { string } item - statistical item. - * @returns { number } Returns garbage collection statistics. + * @returns { number } Returns the item of the GC statistics to be obtained. * @throws { BusinessError } 401 - Possible causes: * 1. Invalid parameter, a string parameter required. * 2. Invalid parameter, unknown property. @@ -774,8 +808,7 @@ declare namespace hidebug { function getVMRuntimeStat(item: string): number; /** - * Set the resource limitation of application.Please note that this function is only valid - * when the developer options switch of setting is turned on. + * Sets the number of FDs, number of threads, JS memory, or native memory limit of the application. * * @param { string } type - resource type. It could be pss_memory、js_heap、fd、or thread. * @param { number } value - For different resource type, values could have different meaning: @@ -799,18 +832,19 @@ declare namespace hidebug { function setAppResourceLimit(type: string, value: number, enableDebugLog: boolean): void; /** - * Judge if the application is in debugged state, including either in arkui layer or native layer debugged state. + * Obtains the debugging state of an application process. If the Ark or native layer of the application process is in + * debugging state, true is returned. Otherwise, false is returned. * - * @returns { boolean } true if the application is debugged. + * @returns { boolean } true if the application is in the debugging state. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @since 12 */ function isDebugState(): boolean; /** - * Get the graphics memory of application + * Obtains the size of the GPU memory. This API uses a promise to return the result. * - * @returns { Promise<number> } Returns the graphics memory of application, in kilobyte. + * @returns { Promise<number> } Returns the size of the GPU memory, in KB. * @throws { BusinessError } 11400104 - Failed to get the application memory due to a remote exception. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @atomicservice @@ -819,9 +853,9 @@ declare namespace hidebug { function getGraphicsMemory(): Promise<number>; /** - * Get the graphics memory of application + * Obtains the size of the GPU memory synchronously. * - * @returns { number } Returns the graphics memory of application, in kilobyte. + * @returns { number } Returns the size of the GPU memory, in KB. * @throws { BusinessError } 11400104 - Failed to get the application memory due to a remote exception. * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug * @atomicservice @@ -830,17 +864,17 @@ declare namespace hidebug { function getGraphicsMemorySync(): number; /** - * Dump the raw heap snapshot of the JavaScript Virtual Machine for the current thread. - * + * Dumps the original heap snapshot of the VM for the current thread. The API uses a promise to return the path of the + * .rawheap file. You can use rawheap-translator to convert the generated file into a .heapsnapshot file for parsing. * The generated file will be stored in a folder within the application directory. However, since this file is usually * large, the system imposes restrictions on the frequency and number of calls to this function. Consequently, you * might fail to obtain the dump file due to quota limitations. These failures will persist until the quota is * regularly refreshed by the system. Therefore, it is advisable to delete the file immediately after you have * finished processing it. Moreover, it is recommended that you use this function in the gray - release version. * - * @param { boolean } needGC - Whether do GC before dump, default is true. - * @returns { Promise<string> } Returns the full path of raw heap snapshot file. - * @throws { BusinessError } 401 - Invalid parameter. + * @param { boolean } needGC - Whether GC is required when a heap snapshot is dumped. The default value is true. + * If this parameter is not specified, GC is triggered before dumping. + * @returns { Promise<string> } Returns the path of the generated snapshot file. * @throws { BusinessError } 11400106 - Quota exceeded. * @throws { BusinessError } 11400107 - Fork operation failed. * @throws { BusinessError } 11400108 - Failed to wait for the child process to finish. @@ -854,5 +888,66 @@ declare namespace hidebug { * @since 18 */ function dumpJsRawHeapData(needGC?: boolean): Promise<string>; + + /** + * GwpAsan Options. + * + * @interface GwpAsanOptions + * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug + * @since 20 + */ + interface GwpAsanOptions { + /** + * Control whether to enable GWP-ASan every time + * + * @type { ?boolean } + * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug + * @since 20 + */ + alwaysEnabled?: boolean; + /** + * sample rate of GWP-ASAN + * + * @type { ?number } + * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug + * @since 20 + */ + sampleRate?: number; + /** + * the max simutaneous allocations of GWP-ASAN + * + * @type { ?number } + * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug + * @since 20 + */ + maxSimutaneousAllocations?: number; + } + + /** + * Enable the GWP-ASAN grayscale of your application. + * @param { GwpAsanOptions } [options] - The options of GWP-ASAN grayscale. + * @param { number } [duration] - The duration days of GWP-ASAN grayscale. + * @throws { BusinessError } 11400114 - The number of GWP-ASAN applications of this device overflowed after last boot. + * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug + * @since 20 + */ + function enableGwpAsanGrayscale(options?: GwpAsanOptions, duration?: number): void; + + /** + * Disable the GWP-ASAN grayscale of your application. + * + * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug + * @since 20 + */ + function disableGwpAsanGrayscale(): void; + + /** + * Obtain the remaining days of GWP-ASan grayscale for your application. + * + * @returns { number } The remaining days of GWP-ASan grayscale. + * @syscap SystemCapability.HiviewDFX.HiProfiler.HiDebug + * @since 20 + */ + function getGwpAsanGrayscaleState(): number; } export default hidebug; diff --git a/api/@ohos.hilog.d.ts b/api/@ohos.hilog.d.ts index 34fa026bac8b53ddbe73f0310e0b82b663045395..88d6fe7cc0b989f463015fe8fcf729973713f0ed 100644 --- a/api/@ohos.hilog.d.ts +++ b/api/@ohos.hilog.d.ts @@ -16,6 +16,7 @@ /** * @file * @kit PerformanceAnalysisKit + * @arkts 1.1&1.2 */ /** @@ -40,7 +41,8 @@ * @syscap SystemCapability.HiviewDFX.HiLog * @crossplatform * @atomicservice -* @since 11 +* @since arkts {'1.1':'11','1.2':'20'} +* @arkts 1.1&1.2 */ declare namespace hilog { @@ -80,7 +82,20 @@ declare namespace hilog { * @atomicservice * @since 11 */ - function debug(domain: number, tag: string, format: string, ...args: any[]): void; + /** + * Outputs debug-level logs. + * + * @param { number } domain Indicates the service domain, which is a hexadecimal integer ranging from 0x0 to 0xFFFF + * @param { string } tag Identifies the log tag, length cannot exceed 32 bytes, the excess part will be truncated. + * @param { string } format Indicates the log format string. + * @param { (Object | undefined | null)[] }args Indicates the log parameters. + * @syscap SystemCapability.HiviewDFX.HiLog + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 + */ + function debug(domain: number, tag: string, format: string, ...args: (Object | undefined | null)[]): void; /** * Outputs info-level logs. @@ -118,7 +133,20 @@ declare namespace hilog { * @atomicservice * @since 11 */ - function info(domain: number, tag: string, format: string, ...args: any[]): void; + /** + * Outputs info-level logs. + * + * @param { number } domain Indicates the service domain, which is a hexadecimal integer ranging from 0x0 to 0xFFFF + * @param { string } tag Identifies the log tag, length cannot exceed 32 bytes, the excess part will be truncated. + * @param { string } format Indicates the log format string. + * @param { (Object | undefined | null)[] }args Indicates the log parameters. + * @syscap SystemCapability.HiviewDFX.HiLog + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 + */ + function info(domain: number, tag: string, format: string, ...args: (Object | undefined | null)[]): void; /** * Outputs warning-level logs. @@ -156,7 +184,20 @@ declare namespace hilog { * @atomicservice * @since 11 */ - function warn(domain: number, tag: string, format: string, ...args: any[]): void; + /** + * Outputs warning-level logs. + * + * @param { number } domain Indicates the service domain, which is a hexadecimal integer ranging from 0x0 to 0xFFFF + * @param { string } tag Identifies the log tag, length cannot exceed 32 bytes, the excess part will be truncated. + * @param { string } format Indicates the log format string. + * @param { (Object | undefined | null)[] }args Indicates the log parameters. + * @syscap SystemCapability.HiviewDFX.HiLog + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 + */ + function warn(domain: number, tag: string, format: string, ...args: (Object | undefined | null)[]): void; /** * Outputs error-level logs. @@ -194,7 +235,20 @@ declare namespace hilog { * @atomicservice * @since 11 */ - function error(domain: number, tag: string, format: string, ...args: any[]): void; + /** + * Outputs error-level logs. + * + * @param { number } domain Indicates the service domain, which is a hexadecimal integer ranging from 0x0 to 0xFFFF + * @param { string } tag Identifies the log tag, length cannot exceed 32 bytes, the excess part will be truncated. + * @param { string } format Indicates the log format string. + * @param { (Object | undefined | null)[] }args Indicates the log parameters. + * @syscap SystemCapability.HiviewDFX.HiLog + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 + */ + function error(domain: number, tag: string, format: string, ...args: (Object | undefined | null)[]): void; /** * Outputs fatal-level logs. @@ -232,7 +286,20 @@ declare namespace hilog { * @atomicservice * @since 11 */ - function fatal(domain: number, tag: string, format: string, ...args: any[]): void; + /** + * Outputs fatal-level logs. + * + * @param { number } domain Indicates the service domain, which is a hexadecimal integer ranging from 0x0 to 0xFFFF + * @param { string } tag Identifies the log tag, length cannot exceed 32 bytes, the excess part will be truncated. + * @param { string } format Indicates the log format string. + * @param { (Object | undefined | null)[] }args Indicates the log parameters. + * @syscap SystemCapability.HiviewDFX.HiLog + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 + */ + function fatal(domain: number, tag: string, format: string, ...args: (Object | undefined | null)[]): void; /** * Checks whether logs of the specified tag, and level can be printed. @@ -255,7 +322,8 @@ declare namespace hilog { * @returns { boolean } * @syscap SystemCapability.HiviewDFX.HiLog * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ function isLoggable(domain: number, tag: string, level: LogLevel): boolean; @@ -290,7 +358,8 @@ declare namespace hilog { * @syscap SystemCapability.HiviewDFX.HiLog * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ enum LogLevel { /** @@ -312,7 +381,8 @@ declare namespace hilog { * @syscap SystemCapability.HiviewDFX.HiLog * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ DEBUG = 3, /** @@ -334,7 +404,8 @@ declare namespace hilog { * @syscap SystemCapability.HiviewDFX.HiLog * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ INFO = 4, /** @@ -356,7 +427,8 @@ declare namespace hilog { * @syscap SystemCapability.HiviewDFX.HiLog * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ WARN = 5, /** @@ -378,7 +450,8 @@ declare namespace hilog { * @syscap SystemCapability.HiviewDFX.HiLog * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ ERROR = 6, /** @@ -400,7 +473,8 @@ declare namespace hilog { * @syscap SystemCapability.HiviewDFX.HiLog * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ FATAL = 7 } diff --git a/api/@ohos.hiviewdfx.hiAppEvent.d.ts b/api/@ohos.hiviewdfx.hiAppEvent.d.ts index 006f4261490b0a7285c8dff6d46a14837a6bb723..913450ea6a46cb539b0d4e3fb74666a884534023 100644 --- a/api/@ohos.hiviewdfx.hiAppEvent.d.ts +++ b/api/@ohos.hiviewdfx.hiAppEvent.d.ts @@ -48,18 +48,18 @@ import type { AsyncCallback } from './@ohos.base'; * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ declare namespace hiAppEvent { /** - * Enumerate application event types. + * Enumerates event types. * * @enum { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Enumerate application event types. + * Enumerates event types. * * @enum { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -67,13 +67,13 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Enumerate application event types. + * Enumerates event types. * * @enum { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ enum EventType { /** @@ -95,7 +95,7 @@ declare namespace hiAppEvent { * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ FAULT = 1, @@ -118,7 +118,7 @@ declare namespace hiAppEvent { * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ STATISTIC = 2, @@ -141,36 +141,36 @@ declare namespace hiAppEvent { * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ SECURITY = 3, /** - * User behavior event. + * Behavior event. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * User behavior event. + * Behavior event. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice * @since 11 */ /** - * User behavior event. + * Behavior event. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ BEHAVIOR = 4 } /** - * Preset domain. + * Provides domain name constants. * * @namespace domain * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -178,42 +178,46 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Preset domain. + * Provides domain name constants. * * @namespace domain * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ namespace domain { /** - * the domain of operating system. + * System domain. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice * @since 11 */ /** - * the domain of operating system. + * System domain. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ const OS: string; } /** - * Preset event. + * Provides event name constants, including system event name constants and application event name constants. + * <br>The application event name constants are optional custom event names reserved when you call Write for + * application event logging. * * @namespace event * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Preset event. + * Provides event name constants, including system event name constants and application event name constants. + * <br>The application event name constants are optional custom event names reserved when you call Write for + * application event logging. * * @namespace event * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -221,23 +225,25 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Preset event. + * Provides event name constants, including system event name constants and application event name constants. + * <br>The application event name constants are optional custom event names reserved when you call Write for + * application event logging. * * @namespace event * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ namespace event { /** - * User login event. + * User login event. This is a reserved application event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * User login event. + * User login event. This is a reserved application event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice @@ -246,13 +252,13 @@ declare namespace hiAppEvent { const USER_LOGIN: string; /** - * User logout event. + * User logout event. This is a reserved application event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * User logout event. + * User logout event. This is a reserved application event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice @@ -261,13 +267,13 @@ declare namespace hiAppEvent { const USER_LOGOUT: string; /** - * Distributed service event. + * Distributed service startup event. This is a reserved application event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Distributed service event. + * Distributed service startup event. This is a reserved application event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice @@ -276,24 +282,24 @@ declare namespace hiAppEvent { const DISTRIBUTED_SERVICE_START: string; /** - * crash event. + * Application crash event. This is a system event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice * @since 11 */ /** - * crash event. + * Application crash event. This is a system event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ const APP_CRASH: string; /** - * freeze event. + * Application freeze event. This is a system event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice @@ -302,7 +308,7 @@ declare namespace hiAppEvent { const APP_FREEZE: string; /** - * launch event. + * Event indicating the application launch duration. This is a system event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice @@ -311,7 +317,7 @@ declare namespace hiAppEvent { const APP_LAUNCH: string; /** - * scroll jank event. + * Event indicating frame loss during swiping. This is a system event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice @@ -320,7 +326,7 @@ declare namespace hiAppEvent { const SCROLL_JANK: string; /** - * cpu usage high event. + * Event indicating a high CPU usage. This is a system event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice @@ -329,7 +335,7 @@ declare namespace hiAppEvent { const CPU_USAGE_HIGH: string; /** - * battery usage event. + * Event indicating battery usage statistics. This is a system event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice @@ -338,7 +344,7 @@ declare namespace hiAppEvent { const BATTERY_USAGE: string; /** - * resource overlimit event. + * Event indicating an application resource leakage. This is a system event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice @@ -347,7 +353,7 @@ declare namespace hiAppEvent { const RESOURCE_OVERLIMIT: string; /** - * address sanitizer event. + * Address sanitizer event. This is a system event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice @@ -356,24 +362,34 @@ declare namespace hiAppEvent { const ADDRESS_SANITIZER: string; /** - * main thread jank event. + * Main thread jank event. This is a system event name constant. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice * @since 12 */ const MAIN_THREAD_JANK: string; + + /** + * App killed event. This is a system event name constant. + * + * @type { string } + * @syscap SystemCapability.HiviewDFX.HiAppEvent + * @atomicservice + * @since 20 + */ + const APP_KILLED: string; } /** - * Preset param. + * Provides parameter name constants. * * @namespace param * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Preset param. + * Provides parameter name constants. * * @namespace param * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -381,35 +397,35 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Preset param. + * Provides parameter name constants. * * @namespace param * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ namespace param { /** - * User id. + * Custom user ID. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * User id. + * Custom user ID. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice * @since 11 */ /** - * User id. + * Custom user ID. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ const USER_ID: string; @@ -432,38 +448,38 @@ declare namespace hiAppEvent { * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ const DISTRIBUTED_SERVICE_NAME: string; /** - * Distributed service instance id. + * Distributed service instance ID. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Distributed service instance id. + * Distributed service instance ID. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice * @since 11 */ /** - * Distributed service instance id. + * Distributed service instance ID. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ const DISTRIBUTED_SERVICE_INSTANCE_ID: string; } /** - * Application event logging configuration interface. + * Configures the application event logging function, such as setting the logging switch and directory storage quota. * - * @param { ConfigOption } config Application event logging configuration item object. + * @param { ConfigOption } config Configuration items for application event logging. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 11103001 - Invalid max storage quota value. * @static @@ -471,9 +487,9 @@ declare namespace hiAppEvent { * @since 9 */ /** - * Application event logging configuration interface. + * Configures the application event logging function, such as setting the logging switch and directory storage quota. * - * @param { ConfigOption } config Application event logging configuration item object. + * @param { ConfigOption } config Configuration items for application event logging. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11103001 - Invalid max storage quota value. @@ -483,9 +499,9 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Application event logging configuration interface. + * Configures the application event logging function, such as setting the logging switch and directory storage quota. * - * @param { ConfigOption } config Application event logging configuration item object. + * @param { ConfigOption } config Configuration items for application event logging. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11103001 - Invalid max storage quota value. @@ -493,19 +509,19 @@ declare namespace hiAppEvent { * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function configure(config: ConfigOption): void; /** - * Describe the options for the configuration. + * Provides configuration options for application event logging. * * @interface ConfigOption * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Describe the options for the configuration. + * Provides configuration options for application event logging. * * @interface ConfigOption * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -513,24 +529,28 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Describe the options for the configuration. + * Provides configuration options for application event logging. * * @interface ConfigOption * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ interface ConfigOption { /** - * Configuration item: application event logging switch. + * Whether to enable the event logging function. The default value is false. + * <br>If this parameter is set to true, the logging function is disabled. Otherwise, the logging function is + * enabled. * * @type { ?boolean } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Configuration item: application event logging switch. + * Whether to enable the event logging function. The default value is false. + * <br>If this parameter is set to true, the logging function is disabled. Otherwise, the logging function is + * enabled. * * @type { ?boolean } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -538,25 +558,45 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Configuration item: application event logging switch. + * Whether to enable the event logging function. The default value is false. + * <br>If this parameter is set to true, the logging function is disabled. Otherwise, the logging function is + * enabled. * * @type { ?boolean } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ disable?: boolean; /** - * Configuration item: event file directory storage quota size. + * Quota for the directory that stores event logging files. The default value is 10M. + * <br>It is recommended that the quota be less than or equal to 10 MB. Otherwise, the API efficiency may be + * affected. If the directory size exceeds the specified quota when application event logging is performed, event + * logging files in the directory will be cleared one by one based on the generation time to ensure that directory + * size does not exceed the quota. + * <br>The quota value must meet the following requirements: + * <br>- The quota value consists of only digits and a unit (which can be one of [b|k|kb|m|mb|g|gb|t|tb], which are + * case insensitive.) + * <br>- The quota value must start with a digit. You can determine whether to pass the unit. If the unit is left + * empty, b (that is, byte) is used by default. * * @type { ?string } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Configuration item: event file directory storage quota size. + * Quota for the directory that stores event logging files. The default value is 10M. + * <br>It is recommended that the quota be less than or equal to 10 MB. Otherwise, the API efficiency may be + * affected. If the directory size exceeds the specified quota when application event logging is performed, event + * logging files in the directory will be cleared one by one based on the generation time to ensure that directory + * size does not exceed the quota. + * <br>The quota value must meet the following requirements: + * <br>- The quota value consists of only digits and a unit (which can be one of [b|k|kb|m|mb|g|gb|t|tb], which are + * case insensitive.) + * <br>- The quota value must start with a digit. You can determine whether to pass the unit. If the unit is left + * empty, b (that is, byte) is used by default. * * @type { ?string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -567,14 +607,14 @@ declare namespace hiAppEvent { } /** - * Definition of written application event information. + * Defines parameters of the event information. * * @interface AppEventInfo * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Definition of written application event information. + * Defines parameters of the event information. * * @interface AppEventInfo * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -582,24 +622,26 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Definition of written application event information. + * Defines parameters of the event information. * * @interface AppEventInfo * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ interface AppEventInfo { /** - * The domain of the event. + * Event domain. The value is a string of up to 32 characters, including digits (0 to 9), letters (a to z), and + * underscores (_). It must start with a letter and cannot end with an underscore (_). * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The domain of the event. + * Event domain. The value is a string of up to 32 characters, including digits (0 to 9), letters (a to z), and + * underscores (_). It must start with a letter and cannot end with an underscore (_). * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -607,25 +649,30 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The domain of the event. + * Event domain. The value is a string of up to 32 characters, including digits (0 to 9), letters (a to z), and + * underscores (_). It must start with a letter and cannot end with an underscore (_). * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ domain: string; /** - * The name of the event. + * Event name. The value is string that contains a maximum of 48 characters, including digits (0 to 9), letters + * (a to z), underscore (_), and dollar sign ($). It must start with a letter or dollar sign ($) and end with a + * digit or letter. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The name of the event. + * Event name. The value is string that contains a maximum of 48 characters, including digits (0 to 9), letters + * (a to z), underscore (_), and dollar sign ($). It must start with a letter or dollar sign ($) and end with a + * digit or letter. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -633,25 +680,27 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The name of the event. + * Event name. The value is string that contains a maximum of 48 characters, including digits (0 to 9), letters + * (a to z), underscore (_), and dollar sign ($). It must start with a letter or dollar sign ($) and end with a + * digit or letter. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ name: string; /** - * The type of the event. + * Event type. * * @type { EventType } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The type of the event. + * Event type. * * @type { EventType } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -659,25 +708,51 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The type of the event. + * Event type. * * @type { EventType } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ eventType: EventType; /** - * The params of the event. + * Event parameter object, which consists of a parameter name and a parameter value. In system events, the fields + * contained in params are defined by system. For details about the fields, you can see the overviews of system + * events, for example, Crash Event Overview. For application events, you need to define the parameters of the + * Write API. The specifications are as follows: + * <br>- A parameter name is a string that contains a maximum of 32 characters, including digits (0 to 9), letters + * (a to z), underscore (_), and dollar sign ($). It must start with a letter or dollar sign ($) and end with a + * digit or letter. For example, testName and $123_name. + * <br>- The parameter value can be a string, number, boolean, or array. The string type parameter can contain a + * maximum of 8 x 1024 characters. If the length exceeds the limit, the parameter and its name will be discarded. + * The value of the number type parameter must be within the range of Number.MIN_SAFE_INTEGER to + * Number.MAX_SAFE_INTEGER. If the value exceeds the range, an uncertain value may be generated. The element type + * in the array type parameter can only be string, number, or boolean. The number of elements must be less than + * 100. If this limit is exceeded, excess elements will be discarded. + * <br>- The maximum number of parameters is 32. If this limit is exceeded, excess parameters will be discarded. * * @type { object } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The params of the event. + * Event parameter object, which consists of a parameter name and a parameter value. In system events, the fields + * contained in params are defined by system. For details about the fields, you can see the overviews of system + * events, for example, Crash Event Overview. For application events, you need to define the parameters of the + * Write API. The specifications are as follows: + * <br>- A parameter name is a string that contains a maximum of 32 characters, including digits (0 to 9), letters + * (a to z), underscore (_), and dollar sign ($). It must start with a letter or dollar sign ($) and end with a + * digit or letter. For example, testName and $123_name. + * <br>- The parameter value can be a string, number, boolean, or array. The string type parameter can contain a + * maximum of 8 x 1024 characters. If the length exceeds the limit, the parameter and its name will be discarded. + * The value of the number type parameter must be within the range of Number.MIN_SAFE_INTEGER to + * Number.MAX_SAFE_INTEGER. If the value exceeds the range, an uncertain value may be generated. The element type + * in the array type parameter can only be string, number, or boolean. The number of elements must be less than + * 100. If this limit is exceeded, excess elements will be discarded. + * <br>- The maximum number of parameters is 32. If this limit is exceeded, excess parameters will be discarded. * * @type { object } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -685,22 +760,39 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The params of the event. + * Event parameter object, which consists of a parameter name and a parameter value. In system events, the fields + * contained in params are defined by system. For details about the fields, you can see the overviews of system + * events, for example, Crash Event Overview. For application events, you need to define the parameters of the + * Write API. The specifications are as follows: + * <br>- A parameter name is a string that contains a maximum of 32 characters, including digits (0 to 9), letters + * (a to z), underscore (_), and dollar sign ($). It must start with a letter or dollar sign ($) and end with a + * digit or letter. For example, testName and $123_name. + * <br>- The parameter value can be a string, number, boolean, or array. The string type parameter can contain a + * maximum of 8 x 1024 characters. If the length exceeds the limit, the parameter and its name will be discarded. + * The value of the number type parameter must be within the range of Number.MIN_SAFE_INTEGER to + * Number.MAX_SAFE_INTEGER. If the value exceeds the range, an uncertain value may be generated. The element type + * in the array type parameter can only be string, number, or boolean. The number of elements must be less than + * 100. If this limit is exceeded, excess elements will be discarded. + * <br>- The maximum number of parameters is 32. If this limit is exceeded, excess parameters will be discarded. * * @type { object } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ params: object; } /** - * Write application event. + * Writes events of the AppEventInfo type. This API uses a promise to return the result. The event object written by + * calling this API is a custom object. To avoid conflicts with system events, you are not advised to write it to + * system events (system event name constants defined in Event). The events written by this API can be subscribed to + * through (addWatcher). * - * @param { AppEventInfo } info Application event information to be written. - * @returns { Promise<void> } Return Promise. + * @param { AppEventInfo } Application event object. You are advised to avoid the conflict between the custom event + * name and the system event name constant defined in Event. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 11100001 - Function disabled. * @throws { BusinessError } 11101001 - Invalid event domain. @@ -714,10 +806,14 @@ declare namespace hiAppEvent { * @since 9 */ /** - * Write application event. + * Writes events of the AppEventInfo type. This API uses a promise to return the result. The event object written by + * calling this API is a custom object. To avoid conflicts with system events, you are not advised to write it to + * system events (system event name constants defined in Event). The events written by this API can be subscribed to + * through (addWatcher). * - * @param { AppEventInfo } info Application event information to be written. - * @returns { Promise<void> } Return Promise. + * @param { AppEventInfo } info Application event object. You are advised to avoid the conflict between the custom + * event name and the system event name constant defined in Event. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11100001 - Function disabled. @@ -733,10 +829,14 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Write application event. + * Writes events of the AppEventInfo type. This API uses a promise to return the result. The event object written by + * calling this API is a custom object. To avoid conflicts with system events, you are not advised to write it to + * system events (system event name constants defined in Event). The events written by this API can be subscribed to + * through (addWatcher). * - * @param { AppEventInfo } info Application event information to be written. - * @returns { Promise<void> } Return Promise. + * @param { AppEventInfo } info Application event object. You are advised to avoid the conflict between the custom + * event name and the system event name constant defined in Event. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11100001 - Function disabled. @@ -750,15 +850,19 @@ declare namespace hiAppEvent { * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function write(info: AppEventInfo): Promise<void>; /** - * Write application event. + * Writes events of the AppEventInfo type. This API uses an asynchronous callback to return the result. The event + * object written by calling this API is a custom object. To avoid conflicts with system events, you are not advised + * to write it to system events (system event name constants defined in Event). The events written by this API can be + * subscribed to through (addWatcher). * - * @param { AppEventInfo } info Application event information to be written. - * @param { AsyncCallback<void> } callback Callback function. + * @param { AppEventInfo } info Application event object. You are advised to avoid the conflict between the custom + * event name and the system event name constant defined in Event. + * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 11100001 - Function disabled. * @throws { BusinessError } 11101001 - Invalid event domain. @@ -772,10 +876,14 @@ declare namespace hiAppEvent { * @since 9 */ /** - * Write application event. + * Writes events of the AppEventInfo type. This API uses an asynchronous callback to return the result. The event + * object written by calling this API is a custom object. To avoid conflicts with system events, you are not advised + * to write it to system events (system event name constants defined in Event). The events written by this API can be + * subscribed to through (addWatcher). * - * @param { AppEventInfo } info Application event information to be written. - * @param { AsyncCallback<void> } callback Callback function. + * @param { AppEventInfo } info Application event object. You are advised to avoid the conflict between the custom + * event name and the system event name constant defined in Event. + * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11100001 - Function disabled. @@ -791,10 +899,14 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Write application event. + * Writes events of the AppEventInfo type. This API uses an asynchronous callback to return the result. The event + * object written by calling this API is a custom object. To avoid conflicts with system events, you are not advised + * to write it to system events (system event name constants defined in Event). The events written by this API can be + * subscribed to through (addWatcher). * - * @param { AppEventInfo } info Application event information to be written. - * @param { AsyncCallback<void> } callback Callback function. + * @param { AppEventInfo } info Application event object. You are advised to avoid the conflict between the custom + * event name and the system event name constant defined in Event. + * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11100001 - Function disabled. @@ -808,12 +920,12 @@ declare namespace hiAppEvent { * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function write(info: AppEventInfo, callback: AsyncCallback<void>): void; /** - * Indicates possible parameter types. + * Type of a custom event parameter value. * * @typedef {number | string | boolean | Array<string>} * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -821,24 +933,35 @@ declare namespace hiAppEvent { * @since 12 */ /** - * Indicates possible parameter types. + * Type of a custom event parameter value. * * @typedef {number | string | boolean | Array<string>} * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ type ParamType = number | string | boolean | Array<string>; /** - * It is used to set custom parameters for events, including both system-subscribed events and custom events. - * Existing parameter will be overwritten, and non-existing parameter will be created. - * - * @param { Record<string, ParamType> } params The parameters of the event. - * @param { string } domain The domain of the event. - * @param { string } name The name of the event. - * @returns { Promise<void> } Return Promise. + * Sets custom event parameters. This API uses a promise to return the result. During the same lifecycle, system + * events and application events can be associated through event domain and event name. System events only support + * crash and freeze events. + * + * @param { Record<string, ParamType> } params Custom parameter object. The parameter name and value are defined as + * follows: + * <br>- A parameter name is a string that contains a maximum of 32 characters, including digits (0 to 9), letters + * (a to z), underscore (_), and dollar sign ($). It must start with a letter or dollar sign ($) and end with a digit + * or letter. + * <br>- The parameter value is of the ParamType and contains a maximum of 1024 characters. + * <br>- The number of parameters must be less than 64. + * @param { string } domain Event domain. The event domain can be associated with application events and system + * events (hiAppEvent.domain.OS). + * @param { string } name Event name. The default value is an empty string, which indicates all event names in the + * associated event domain. The event name can be associated with application events and system events. System events + * can be associated only with crash events (hiAppEvent.event.APP_CRASH) and freeze events + * (hiAppEvent.event.APP_FREEZE). + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11101007 - The number of parameter keys exceeds the limit. @@ -848,13 +971,24 @@ declare namespace hiAppEvent { * @since 12 */ /** - * It is used to set custom parameters for events, including both system-subscribed events and custom events. - * Existing parameter will be overwritten, and non-existing parameter will be created. - * - * @param { Record<string, ParamType> } params The parameters of the event. - * @param { string } domain The domain of the event. - * @param { string } name The name of the event. - * @returns { Promise<void> } Return Promise. + * Sets custom event parameters. This API uses a promise to return the result. During the same lifecycle, system + * events and application events can be associated through event domain and event name. System events only support + * crash and freeze events. + * + * @param { Record<string, ParamType> } params Custom parameter object. The parameter name and value are defined as + * follows: + * <br>- A parameter name is a string that contains a maximum of 32 characters, including digits (0 to 9), letters + * (a to z), underscore (_), and dollar sign ($). It must start with a letter or dollar sign ($) and end with a digit + * or letter. + * <br>- The parameter value is of the ParamType and contains a maximum of 1024 characters. + * <br>- The number of parameters must be less than 64. + * @param { string } domain Event domain. The event domain can be associated with application events and system + * events (hiAppEvent.domain.OS). + * @param { string } name Event name. The default value is an empty string, which indicates all event names in the + * associated event domain. The event name can be associated with application events and system events. System events + * can be associated only with crash events (hiAppEvent.event.APP_CRASH) and freeze events + * (hiAppEvent.event.APP_FREEZE). + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11101007 - The number of parameter keys exceeds the limit. @@ -862,16 +996,22 @@ declare namespace hiAppEvent { * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function setEventParam(params: Record<string, ParamType>, domain: string, name?: string): Promise<void>; /** - * Set the config for the os event. + * Sets the custom threshold triggering condition for an event. This API uses a promise to return the result. In the + * same lifecycle, you can customize the parameters related to the event threshold triggering condition based on the + * event name. Currently, only the MAIN_THREAD_JANK event is supported. For details about the parameter configuration, + * see Main Thread Jank Event Overview. * - * @param { string } name The name of the os event. - * @param { Record<string, ParamType> } config The config info of the os event. - * @returns { Promise<void> } Return Promise. + * @param { string } name Event name. + * @param { Record<string, ParamType> } config Custom parameter object. The parameter name and value are defined as + * follows: + * <br>- The parameter name contains a maximum of 1024 characters, which is of the string type and cannot be empty. + * <br>- The parameter value is of the ParamType and contains a maximum of 1024 characters. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3.Parameter verification failed. * @static @@ -882,14 +1022,16 @@ declare namespace hiAppEvent { function setEventConfig(name: string, config: Record<string, ParamType>): Promise<void>; /** - * Definition of the read event package. + * Defines parameters of an AppEventPackage object. This API is used to obtain detail information about an event + * package, which is obtained using the takeNext API. * * @interface AppEventPackage * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Definition of the read event package. + * Defines parameters of an AppEventPackage object. This API is used to obtain detail information about an event + * package, which is obtained using the takeNext API. * * @interface AppEventPackage * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -897,24 +1039,25 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Definition of the read event package. + * Defines parameters of an AppEventPackage object. This API is used to obtain detail information about an event + * package, which is obtained using the takeNext API. * * @interface AppEventPackage * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ interface AppEventPackage { /** - * The id of the package. + * Event package ID, which is named from 0 in ascending order. * * @type { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The id of the package. + * Event package ID, which is named from 0 in ascending order. * * @type { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -922,25 +1065,25 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The id of the package. + * Event package ID, which is named from 0 in ascending order. * * @type { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ packageId: number; /** - * The number of events contained in the package. + * Number of events in the event package. * * @type { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The number of events contained in the package. + * Number of events in the event package. * * @type { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -948,25 +1091,25 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The number of events contained in the package. + * Number of events in the event package. * * @type { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ row: number; /** - * The total size of events contained in the package. + * Event size of the event package, in bytes. * * @type { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The total size of events contained in the package. + * Event size of the event package, in bytes. * * @type { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -974,25 +1117,25 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The total size of events contained in the package. + * Event size of the event package, in bytes. * * @type { number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ size: number; /** - * The events data contained in the package. + * Event data in the event package. * * @type { string[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The events data contained in the package. + * Event data in the event package. * * @type { string[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1000,18 +1143,18 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The events data contained in the package. + * Event data in the event package. * * @type { string[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ data: string[]; /** - * The event json format data contained in the package. + * Event object group. * * @type { Array<AppEventInfo> } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1019,78 +1162,86 @@ declare namespace hiAppEvent { * @since 12 */ /** - * The event json format data contained in the package. + * Event object group. * * @type { Array<AppEventInfo> } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ appEventInfos: Array<AppEventInfo>; } /** - * Definition of event holder object, which is used to read the event data monitored by the watcher. + * Defines a subscription data holder for processing event information. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Definition of event holder object, which is used to read the event data monitored by the watcher. + * Defines a subscription data holder for processing event information. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice * @since 11 */ /** - * Definition of event holder object, which is used to read the event data monitored by the watcher. + * Defines a subscription data holder for processing event information. * * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ class AppEventPackageHolder { /** - * Constructor for AppEventPackageHolder. + * Constructs an AppEventPackageHolder instance. You can call addWatcher to add an event watcher, and then + * associate the AppEventPackageHolder instance with the watcher added in the application based on the watcher name. * - * @param { string } watcherName Name of the watcher to read. + * @param { string } watcherName Name of the event watcher added through addWatcher. If no watcher is added, no + * data is displayed by default. * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Constructor for AppEventPackageHolder. + * Constructs an AppEventPackageHolder instance. You can call addWatcher to add an event watcher, and then + * associate the AppEventPackageHolder instance with the watcher added in the application based on the watcher name. * - * @param { string } watcherName Name of the watcher to read. + * @param { string } watcherName Name of the event watcher added through addWatcher. If no watcher is added, no + * data is displayed by default. * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice * @since 11 */ /** - * Constructor for AppEventPackageHolder. + * Constructs an AppEventPackageHolder instance. You can call addWatcher to add an event watcher, and then + * associate the AppEventPackageHolder instance with the watcher added in the application based on the watcher name. * - * @param { string } watcherName Name of the watcher to read. + * @param { string } watcherName Name of the event watcher added through addWatcher. If no watcher is added, no + * data is displayed by default. * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ constructor(watcherName: string); /** - * Set the threshold size per read. + * Sets the threshold for the data size of the event package obtained each time. * - * @param { number } size Threshold size. + * @param { number } size Data size threshold, in bytes. The value range is [0, $2^{31}$-1]. If the value is out of + * the range, an exception is thrown. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 11104001 - Invalid size value. * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Set the threshold size per read. + * Sets the threshold for the data size of the event package obtained each time. * - * @param { number } size Threshold size. + * @param { number } size Data size threshold, in bytes. The value range is [0, $2^{31}$-1]. If the value is out of + * the range, an exception is thrown. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11104001 - Invalid size value. @@ -1099,23 +1250,26 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Set the threshold size per read. + * Sets the threshold for the data size of the event package obtained each time. * - * @param { number } size Threshold size. + * @param { number } size Data size threshold, in bytes. The value range is [0, $2^{31}$-1]. If the value is out of + * the range, an exception is thrown. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11104001 - Invalid size value. * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ setSize(size: number): void; /** - * Set the number of rows per read. + * Sets the number of data records of the event package obtained each time. When setRow() and setSize() are called + * at the same time, only setRow() takes effect. * - * @param { number } size Row size. + * @param { number } size Number of events. The value range is (0, $2^{31}$-1]. If the value is out of the range, an + * exception is thrown. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11104001 - Invalid size value. @@ -1124,55 +1278,72 @@ declare namespace hiAppEvent { * @since 12 */ /** - * Set the number of rows per read. + * Sets the number of data records of the event package obtained each time. When setRow() and setSize() are called + * at the same time, only setRow() takes effect. * - * @param { number } size Row size. + * @param { number } size Number of events. The value range is (0, $2^{31}$-1]. If the value is out of the range, an + * exception is thrown. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11104001 - Invalid size value. * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ setRow(size: number): void; /** - * Read the event data monitored by the watcher. + * Obtains the subscription event. + * <br>The system obtains the subscription event data based on the data size threshold specified by setSize or the + * number of data records specified by setRow. By default, one subscription event data record is obtained. When all + * subscription event data is obtained, null is returned. + * <br>When setRow and setSize are called at the same time, only setRow takes effect. * - * @returns { AppEventPackage } The read event package. + * @returns { AppEventPackage } Event package object. If all subscription event data has been retrieved, null is + * returned. * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Read the event data monitored by the watcher. + * Obtains the subscription event. + * <br>The system obtains the subscription event data based on the data size threshold specified by setSize or the + * number of data records specified by setRow. By default, one subscription event data record is obtained. When all + * subscription event data is obtained, null is returned. + * <br>When setRow and setSize are called at the same time, only setRow takes effect. * - * @returns { AppEventPackage } The read event package. + * @returns { AppEventPackage } Event package object. If all subscription event data has been retrieved, null is + * returned. * @syscap SystemCapability.HiviewDFX.HiAppEvent * @atomicservice * @since 11 */ /** - * Read the event data monitored by the watcher. + * Obtains the subscription event. + * <br>The system obtains the subscription event data based on the data size threshold specified by setSize or the + * number of data records specified by setRow. By default, one subscription event data record is obtained. When all + * subscription event data is obtained, null is returned. + * <br>When setRow and setSize are called at the same time, only setRow takes effect. * - * @returns { AppEventPackage } The read event package. + * @returns { AppEventPackage } Event package object. If all subscription event data has been retrieved, null is + * returned. * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ takeNext(): AppEventPackage; } /** - * Definition of the condition for triggering callback when the watcher monitors event data. + * Defines the triggering condition parameters of the onTrigger callback of a Watcher. * * @interface TriggerCondition * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Definition of the condition for triggering callback when the watcher monitors event data. + * Defines the triggering condition parameters of the onTrigger callback of a Watcher. * * @interface TriggerCondition * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1180,24 +1351,28 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Definition of the condition for triggering callback when the watcher monitors event data. + * Defines the triggering condition parameters of the onTrigger callback of a Watcher. * * @interface TriggerCondition * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ interface TriggerCondition { /** - * The number of write events that trigger callback. + * Total number of events that trigger callback. The value is a positive integer. The default value is 0, + * indicating that no callback is triggered. If this parameter is set to a negative value, the default + * value is used. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The number of write events that trigger callback. + * Total number of events that trigger callback. The value is a positive integer. The default value is 0, + * indicating that no callback is triggered. If this parameter is set to a negative value, the default + * value is used. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1205,25 +1380,31 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The number of write events that trigger callback. + * Total number of events that trigger callback. The value is a positive integer. The default value is 0, + * indicating that no callback is triggered. If this parameter is set to a negative value, the default + * value is used. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ row?: number; /** - * The size of write events that trigger callback. + * Total size of events that trigger callback. The value is a positive integer, in bytes. The default value is 0, + * indicating that no callback is triggered. If this parameter is set to a negative value, the default value is + * used. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The size of write events that trigger callback. + * Total size of events that trigger callback. The value is a positive integer, in bytes. The default value is 0, + * indicating that no callback is triggered. If this parameter is set to a negative value, the default value is + * used. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1231,25 +1412,31 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The size of write events that trigger callback. + * Total size of events that trigger callback. The value is a positive integer, in bytes. The default value is 0, + * indicating that no callback is triggered. If this parameter is set to a negative value, the default value is + * used. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ size?: number; /** - * The interval for triggering callback. + * Timeout interval for triggering callback. The value is a positive integer, in unit of 30s. The default value is + * 0, indicating that no callback is triggered. If this parameter is set to a negative value, the default value is + * used. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The interval for triggering callback. + * Timeout interval for triggering callback. The value is a positive integer, in unit of 30s. The default value is + * 0, indicating that no callback is triggered. If this parameter is set to a negative value, the default value is + * used. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1257,26 +1444,32 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The interval for triggering callback. + * Timeout interval for triggering callback. The value is a positive integer, in unit of 30s. The default value is + * 0, indicating that no callback is triggered. If this parameter is set to a negative value, the default value is + * used. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ timeOut?: number; } /** - * Definition of event filter object, which is used to filter events monitored by the watcher. + * Defines parameters of subscription filtering conditions of a Watcher. This API is used to set event filtering + * conditions in the event watcher to ensure that only the events that meet the filtering conditions are subscribed + * to. * * @interface AppEventFilter * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Definition of event filter object, which is used to filter events monitored by the watcher. + * Defines parameters of subscription filtering conditions of a Watcher. This API is used to set event filtering + * conditions in the event watcher to ensure that only the events that meet the filtering conditions are subscribed + * to. * * @interface AppEventFilter * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1284,24 +1477,28 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Definition of event filter object, which is used to filter events monitored by the watcher. + * Defines parameters of subscription filtering conditions of a Watcher. This API is used to set event filtering + * conditions in the event watcher to ensure that only the events that meet the filtering conditions are subscribed + * to. * * @interface AppEventFilter * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ interface AppEventFilter { /** - * The name of the event domain to be monitored by the watcher. + * Event domain, which can be the system event domain (hiAppEvent.domain.OS) or the event domain of the custom + * event information (AppEventInfo) passed through the Write API. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The name of the event domain to be monitored by the watcher. + * Event domain, which can be the system event domain (hiAppEvent.domain.OS) or the event domain of the custom + * event information (AppEventInfo) passed through the Write API. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1309,25 +1506,26 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The name of the event domain to be monitored by the watcher. + * Event domain, which can be the system event domain (hiAppEvent.domain.OS) or the event domain of the custom + * event information (AppEventInfo) passed through the Write API. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ domain: string; /** - * The types of the events to be monitored by the watcher. + * Event types. If this parameter is not set, events are not filtered by default. * * @type { ?EventType[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The types of the events to be monitored by the watcher. + * Event types. If this parameter is not set, events are not filtered by default. * * @type { ?EventType[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1335,18 +1533,18 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The types of the events to be monitored by the watcher. + * Event types. If this parameter is not set, events are not filtered by default. * * @type { ?EventType[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ eventTypes?: EventType[]; /** - * The names of the events to be monitored by the watcher. + * Names of the events to be subscribed. If this parameter is not set, events are not filtered by default. * * @type { ?string[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1354,19 +1552,20 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The names of the events to be monitored by the watcher. + * Names of the events to be subscribed. If this parameter is not set, events are not filtered by default. * * @type { ?string[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ names?: string[]; } /** - * Definition of event group. + * Defines parameters of the event group returned by a subscription. This API can be used to obtain detail + * information about an event group, which is often used in the onReceive callback of Watcher. * * @interface AppEventGroup * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1374,17 +1573,18 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Definition of event group. + * Defines parameters of the event group returned by a subscription. This API can be used to obtain detail + * information about an event group, which is often used in the onReceive callback of Watcher. * * @interface AppEventGroup * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ interface AppEventGroup { /** - * The name of the event. + * Event name. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1392,18 +1592,18 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The name of the event. + * Event name. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ name: string; /** - * The event array which is group by the name. + * Event object group. * * @type { Array<AppEventInfo> } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1411,26 +1611,28 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The event array which is group by the name. + * Event object group. * * @type { Array<AppEventInfo> } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ appEventInfos: Array<AppEventInfo>; } /** - * Definition of event watcher object, which is used to monitor written event data. + * Defines parameters for a Watcher object. This API is used to configure and manage event watchers to subscribe to + * and process specified events. * * @interface Watcher * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Definition of event watcher object, which is used to monitor written event data. + * Defines parameters for a Watcher object. This API is used to configure and manage event watchers to subscribe to + * and process specified events. * * @interface Watcher * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1438,24 +1640,29 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Definition of event watcher object, which is used to monitor written event data. + * Defines parameters for a Watcher object. This API is used to configure and manage event watchers to subscribe to + * and process specified events. * * @interface Watcher * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ interface Watcher { /** - * The name of watcher. + * Unique name of a watcher. The value contains a maximum of 32 characters, including digits (0 to 9), letters + * (a to z), underscore (_). It must start with a letter and end with a digit or letter. For example, testName1 + * and crash_Watcher. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The name of watcher. + * Unique name of a watcher. The value contains a maximum of 32 characters, including digits (0 to 9), letters + * (a to z), underscore (_). It must start with a letter and end with a digit or letter. For example, testName1 + * and crash_Watcher. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1463,25 +1670,29 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The name of watcher. + * Unique name of a watcher. The value contains a maximum of 32 characters, including digits (0 to 9), letters + * (a to z), underscore (_). It must start with a letter and end with a digit or letter. For example, testName1 + * and crash_Watcher. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ name: string; /** - * The condition for triggering callback. + * Subscription callback triggering condition. This parameter takes effect only when it is passed together with + * onTrigger. If this parameter is not set, the onTrigger callback is not triggered by default. * * @type { ?TriggerCondition } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The condition for triggering callback. + * Subscription callback triggering condition. This parameter takes effect only when it is passed together with + * onTrigger. If this parameter is not set, the onTrigger callback is not triggered by default. * * @type { ?TriggerCondition } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1489,25 +1700,28 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The condition for triggering callback. + * Subscription callback triggering condition. This parameter takes effect only when it is passed together with + * onTrigger. If this parameter is not set, the onTrigger callback is not triggered by default. * * @type { ?TriggerCondition } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ triggerCondition?: TriggerCondition; /** - * The event filters for monitoring events. + * Subscription filtering condition. This parameter is passed only when subscription events need to be filtered. + * If this parameter is not set, events are not filtered by default. * * @type { ?AppEventFilter[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The event filters for monitoring events. + * Subscription filtering condition. This parameter is passed only when subscription events need to be filtered. + * If this parameter is not set, events are not filtered by default. * * @type { ?AppEventFilter[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1515,25 +1729,34 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The event filters for monitoring events. + * Subscription filtering condition. This parameter is passed only when subscription events need to be filtered. + * If this parameter is not set, events are not filtered by default. * * @type { ?AppEventFilter[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ appEventFilters?: AppEventFilter[]; /** - * The callback function of watcher. + * Subscription callback. This parameter takes effect only when it is passed together with triggerCondition. + * The input arguments are described as follows: + * <br>curRow: total number of subscription events when the callback is triggered. + * <br>curSize: total size of subscribed events when the callback is triggered, in bytes. + * <br>holder: subscription data holder, which can be used to process subscribed events. * * @type { ?function } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * The callback function of watcher. + * Subscription callback. This parameter takes effect only when it is passed together with triggerCondition. + * The input arguments are described as follows: + * <br>curRow: total number of subscription events when the callback is triggered. + * <br>curSize: total size of subscribed events when the callback is triggered, in bytes. + * <br>holder: subscription data holder, which can be used to process subscribed events. * * @type { ?function } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1541,18 +1764,25 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The callback function of watcher. + * Subscription callback. This parameter takes effect only when it is passed together with triggerCondition. + * The input arguments are described as follows: + * <br>curRow: total number of subscription events when the callback is triggered. + * <br>curSize: total size of subscribed events when the callback is triggered, in bytes. + * <br>holder: subscription data holder, which can be used to process subscribed events. * * @type { ?function } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onTrigger?: (curRow: number, curSize: number, holder: AppEventPackageHolder) => void; /** - * The callback function, when watcher receive the event. + * Real-time subscription callback. Only this callback function is triggered if it is passed together with + * onTrigger. The input arguments are described as follows: + * <br>domain: domain name. + * <br>appEventGroups: event group. * * @type { ?function } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1560,22 +1790,25 @@ declare namespace hiAppEvent { * @since 11 */ /** - * The callback function, when watcher receive the event. + * Real-time subscription callback. Only this callback function is triggered if it is passed together with + * onTrigger. The input arguments are described as follows: + * <br>domain: domain name. + * <br>appEventGroups: event group. * * @type { ?function } * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onReceive?: (domain: string, appEventGroups: Array<AppEventGroup>) => void; } /** - * Add event watcher. + * Adds an event watcher. You can use the callback of the event watcher to subscribe to events. * - * @param { Watcher } watcher Watcher object for monitoring events. - * @returns { AppEventPackageHolder } Holder object, which is used to read the monitoring data of the watcher. + * @param { Watcher } watcher Event watcher. + * @returns { AppEventPackageHolder } Subscription data holder. If the subscription fails, null is returned. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 11102001 - Invalid watcher name. * @throws { BusinessError } 11102002 - Invalid filtering event domain. @@ -1587,10 +1820,10 @@ declare namespace hiAppEvent { * @since 9 */ /** - * Add event watcher. + * Adds an event watcher. You can use the callback of the event watcher to subscribe to events. * - * @param { Watcher } watcher Watcher object for monitoring events. - * @returns { AppEventPackageHolder } Holder object, which is used to read the monitoring data of the watcher. + * @param { Watcher } watcher Event watcher. + * @returns { AppEventPackageHolder } Subscription data holder. If the subscription fails, null is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11102001 - Invalid watcher name. @@ -1604,10 +1837,10 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Add event watcher. + * Adds an event watcher. You can use the callback of the event watcher to subscribe to events. * - * @param { Watcher } watcher Watcher object for monitoring events. - * @returns { AppEventPackageHolder } Holder object, which is used to read the monitoring data of the watcher. + * @param { Watcher } watcher Event watcher. + * @returns { AppEventPackageHolder } Subscription data holder. If the subscription fails, null is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11102001 - Invalid watcher name. @@ -1619,14 +1852,14 @@ declare namespace hiAppEvent { * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function addWatcher(watcher: Watcher): AppEventPackageHolder; /** - * Remove event watcher. + * Removes an event watcher. * - * @param { Watcher } watcher Watcher object for monitoring events. + * @param { Watcher } watcher Event watcher. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 11102001 - Invalid watcher name. * @static @@ -1634,9 +1867,9 @@ declare namespace hiAppEvent { * @since 9 */ /** - * Remove event watcher. + * Removes an event watcher. * - * @param { Watcher } watcher Watcher object for monitoring events. + * @param { Watcher } watcher Event watcher. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11102001 - Invalid watcher name. @@ -1646,9 +1879,9 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Remove event watcher. + * Removes an event watcher. * - * @param { Watcher } watcher Watcher object for monitoring events. + * @param { Watcher } watcher Event watcher. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @throws { BusinessError } 11102001 - Invalid watcher name. @@ -1656,19 +1889,19 @@ declare namespace hiAppEvent { * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function removeWatcher(watcher: Watcher): void; /** - * Clear all local logging data of the application. + * Clears local logging data of the application. * * @static * @syscap SystemCapability.HiviewDFX.HiAppEvent * @since 9 */ /** - * Clear all local logging data of the application. + * Clears local logging data of the application. * * @static * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1676,21 +1909,23 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Clear all local logging data of the application. + * Clears local logging data of the application. * * @static * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function clearData(): void; /** - * Set user ID. + * Sets a user ID, which is used for association when a Processor is configured. * - * @param { string } name The key of the user ID. - * @param { string } value The value of the user ID. + * @param { string } name Key of a user ID. The value is string that contains a maximum of 256 characters, including + * digits (0 to 9), letters (a to z), underscore (_), and dollar sign ($). It must not start with a digit. + * @param { string } value Value of a user ID. It can contain a maximum of 256 characters. If the value is null or + * left empty, the user ID is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @static @@ -1699,25 +1934,28 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Set user ID. + * Sets a user ID, which is used for association when a Processor is configured. * - * @param { string } name The key of the user ID. - * @param { string } value The value of the user ID. + * @param { string } name Key of a user ID. The value is string that contains a maximum of 256 characters, including + * digits (0 to 9), letters (a to z), underscore (_), and dollar sign ($). It must not start with a digit. + * @param { string } value Value of a user ID. It can contain a maximum of 256 characters. If the value is null or + * left empty, the user ID is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @static * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function setUserId(name: string, value: string): void; /** - * Get user ID. + * Obtains the value set through setUserId. * - * @param { string } name The key of the user ID. - * @returns { string } the user ID value. + * @param { string } name Key of a user ID. The value is string that contains a maximum of 256 characters, including + * digits (0 to 9), letters (a to z), underscore (_), and dollar sign ($). It must not start with a digit. + * @returns { string } Value of a user ID. If no user ID is found, an empty string is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @static @@ -1726,25 +1964,28 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Get user ID. + * Obtains the value set through setUserId. * - * @param { string } name The key of the user ID. - * @returns { string } the user ID value. + * @param { string } name Key of a user ID. The value is string that contains a maximum of 256 characters, including + * digits (0 to 9), letters (a to z), underscore (_), and dollar sign ($). It must not start with a digit. + * @returns { string } Value of a user ID. If no user ID is found, an empty string is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @static * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function getUserId(name: string): string; /** - * Set user property. + * Sets a user property, which is used for association when a Processor is configured. * - * @param { string } name The key of the user property. - * @param { string } value The value of the user property. + * @param { string } name Key of a user property. The value is string that contains a maximum of 256 characters, + * including digits (0 to 9), letters (a to z), underscore (_), and dollar sign ($). It must not start with a digit. + * @param { string } value Value of a user property. It can contain a maximum of 1024 characters. If the value is + * null or left empty, the user property is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @static @@ -1753,25 +1994,28 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Set user property. + * Sets a user property, which is used for association when a Processor is configured. * - * @param { string } name The key of the user property. - * @param { string } value The value of the user property. + * @param { string } name Key of a user property. The value is string that contains a maximum of 256 characters, + * including digits (0 to 9), letters (a to z), underscore (_), and dollar sign ($). It must not start with a digit. + * @param { string } value Value of a user property. It can contain a maximum of 1024 characters. If the value is + * null or left empty, the user property is cleared. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @static * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function setUserProperty(name: string, value: string): void; /** - * Get user property. + * Obtains the value set through setUserProperty. * - * @param { string } name The key of the user property. - * @returns { string } the user property value. + * @param { string } name Key of a user property. The value is string that contains a maximum of 256 characters, + * including digits (0 to 9), letters (a to z), underscore (_), and dollar sign ($). It must not start with a digit. + * @returns { string } Value of a user property. If no user ID is found, an empty string is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @static @@ -1780,22 +2024,23 @@ declare namespace hiAppEvent { * @since 11 */ /** - * Get user property. + * Obtains the value set through setUserProperty. * - * @param { string } name The key of the user property. - * @returns { string } the user property value. + * @param { string } name Key of a user property. The value is string that contains a maximum of 256 characters, + * including digits (0 to 9), letters (a to z), underscore (_), and dollar sign ($). It must not start with a digit. + * @returns { string } Value of a user property. If no user ID is found, an empty string is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @static * @syscap SystemCapability.HiviewDFX.HiAppEvent * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ function getUserProperty(name: string): string; /** - * Describe the event config to be reported by processor. + * Event description configuration that can be reported by the data processor * * @interface AppEventReportConfig * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1804,7 +2049,9 @@ declare namespace hiAppEvent { */ interface AppEventReportConfig { /** - * The domain of the event. + * Event domain. The value is a string that contains a maximum of 32 characters, including digits (0 to 9), letters + * (a to z), and underscore (_). It must start with a letter and cannot end with an underscore (_). The default + * value is an empty string. * * @type { ?string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1814,7 +2061,9 @@ declare namespace hiAppEvent { domain?: string; /** - * The name of the event. + * Event name. The value is string that contains a maximum of 48 characters, including digits (0 to 9), letters + * (a to z), underscore (_), and dollar sign ($). It must start with a letter or dollar sign ($) and end with a + * digit or letter. The default value is an empty string. * * @type { ?string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1824,7 +2073,8 @@ declare namespace hiAppEvent { name?: string; /** - * The realtime report event. + * Whether to report events in real time. The value true indicates that events are reported in real time, and the + * value false indicates the opposite. The default value is false. * * @type { ?boolean } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1835,7 +2085,7 @@ declare namespace hiAppEvent { } /** - * Definition of the processor. + * Defines a data processor for reporting and managing events. You can customize processor configurations as required. * * @interface Processor * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1844,7 +2094,8 @@ declare namespace hiAppEvent { */ interface Processor { /** - * The name of the processor. + * Name of a data processor. The value is string that contains a maximum of 256 characters, including digits (0 to + * 9), letters (a to z), underscore (_), and dollar sign ($). It must not start with a digit. * * @type { string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1854,7 +2105,8 @@ declare namespace hiAppEvent { name: string; /** - * The processor enable the developer to debug. + * Whether to enable the debug mode. The default value is false. The value true means to enable the debugging mode, + * and the value false means the opposite. * * @type { ?boolean } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1864,7 +2116,8 @@ declare namespace hiAppEvent { debugMode?: boolean; /** - * The server location which used for the processor to receive the data, defined by the processor. + * Server location information. It is left empty by default. The length of the input string cannot exceed 8 KB. If + * the length exceeds 8 KB, the default value is used. * * @type { ?string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1874,7 +2127,8 @@ declare namespace hiAppEvent { routeInfo?: string; /** - * The app ID is provided by the processor. + * Application ID. It is left empty by default. The length of the input string cannot exceed 8 KB. If the length + * exceeds 8 KB, the default value is used. * * @type { ?string } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1884,7 +2138,8 @@ declare namespace hiAppEvent { appId?: string; /** - * The processor report the event when start. + * Whether to report an event when the data processor starts. The default value is false. The value true means to + * report events, and the value false means the opposite. * * @type { ?boolean } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1894,7 +2149,8 @@ declare namespace hiAppEvent { onStartReport?: boolean; /** - * The processor report the event when the application onBackground. + * Whether to report an event when an application switches to the background. The default value is false. The value + * true means to report events, and the value false means the opposite. * * @type { ?boolean } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1904,7 +2160,8 @@ declare namespace hiAppEvent { onBackgroundReport?: boolean; /** - * The processor report the event according to the period. + * Interval for event reporting, in seconds. The input value must be greater than or equal to 0. If the input value + * is less than 0, the default value 0 is used and periodic reporting is not performed. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1914,7 +2171,9 @@ declare namespace hiAppEvent { periodReport?: number; /** - * The processor report the event according to the batch size. + * Event reporting threshold. When the number of events reaches the threshold, an event is reported. The value must + * be greater than 0 and less than 1000. If the value is not within the range, the default value 0 is used and no + * events are reported. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1924,7 +2183,8 @@ declare namespace hiAppEvent { batchReport?: number; /** - * The user ID names which the processor can report. + * Name array of user IDs that can be reported by the data processor. name corresponds to the name parameter of the + * setUserId API. The default value is an empty array. * * @type { ?string[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1934,7 +2194,8 @@ declare namespace hiAppEvent { userIds?: string[]; /** - * The user property names which the processor can report. + * Name array of user properties that can be reported by the data processor. name corresponds to the name parameter + * of the setUserProperty API. The default value is an empty array. * * @type { ?string[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1944,7 +2205,8 @@ declare namespace hiAppEvent { userProperties?: string[]; /** - * The events which the processor can report. + * Event description configuration array that can be reported by the data processor. The default value is an empty + * array. * * @type { ?AppEventReportConfig[] } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1954,7 +2216,9 @@ declare namespace hiAppEvent { eventConfigs?: AppEventReportConfig[]; /** - * The processor config id. + * Configuration ID for data processor. The input value must be greater than or equal to 0. If the input value is + * less than 0, the default value 0 is used. If the input value is greater than 0, the value uniquely identifies a + * data processor with its name. * * @type { ?number } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1964,7 +2228,13 @@ declare namespace hiAppEvent { configId?: number; /** - * The processor set custom config data. + * Custom extended parameters. If the input parameter name and value do not meet the specifications, extended + * parameters are not configured by default. The specifications are as follows: + * <br>- A parameter name is a string that contains a maximum of 32 characters, including digits (0 to 9), letters + * (a to z), underscore (_), and dollar sign ($). It must start with a letter or dollar sign ($) and end with a + * digit or letter. + * <br>- A parameter value is a string contains a maximum of 1024 characters. + * <br>- The number of parameters must be less than 32. * * @type { ?Record<string, string> } * @syscap SystemCapability.HiviewDFX.HiAppEvent @@ -1972,13 +2242,28 @@ declare namespace hiAppEvent { * @since 12 */ customConfigs?: Record<string, string>; + + /** + * Initialize the processor by reading the configuration file based on the name. + * + * @type { ?string } + * @syscap SystemCapability.HiviewDFX.HiAppEvent + * @atomicservice + * @since 20 + */ + configName?: string; } /** - * Add the processor, who can report the event. + * Adds a data processor to migrate event data to the cloud. You can preset the implementation of the processor on + * the device and set its properties based on its constraints. + * <br>The configuration information of Processor must be provided by the data processor. Yet, as no data processor + * is preset in the device for interaction for the moment, migrating events to the cloud is unavailable. * - * @param { Processor } processor The instance which report the event - * @returns { number } The processor unique ID. + * @param { Processor } processor Data processor. + * @returns { number } ID of the data processor of the reported event, which uniquely identifies the data processor + * and can be used to remove the data processor. If the operation fails, -1 is returned. If the operation is + * successful, a value greater than 0 is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @static @@ -1989,9 +2274,25 @@ declare namespace hiAppEvent { function addProcessor(processor: Processor): number; /** - * Remove the processor. + * Add the processor from config asynchronously, who can report the event. + * + * @param { string } processorName The name of the processor. + * @param { string } [configName] Initialize the processor by reading the configuration file based on the name. + * @returns { Promise<number> } The processor unique ID. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types. + * @static + * @syscap SystemCapability.HiviewDFX.HiAppEvent + * @atomicservice + * @since 20 + */ + function addProcessorFromConfig(processorName: string, configName?: string): Promise<number>; + + /** + * Removes the data processor of a reported event. * - * @param { number } id The processor unique ID. + * @param { number } id ID of a data processor. The value must be greater than 0. The value is obtained by calling + * addProcessor. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types. * @static diff --git a/api/@ohos.i18n.d.ts b/api/@ohos.i18n.d.ts index ed3ec67d2ecef4bb9d42a1374fea7312c2bb9180..6b78d6c6d72aaa58e35acfcd4e7ed187715f06de 100644 --- a/api/@ohos.i18n.d.ts +++ b/api/@ohos.i18n.d.ts @@ -19,7 +19,7 @@ */ import { BusinessError } from './@ohos.base'; -import intl from '@ohos.intl'; +import intl from './@ohos.intl'; /** * Provides international settings related APIs. @@ -36,16 +36,19 @@ import intl from '@ohos.intl'; * @crossplatform * @form * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace i18n { /** - * Obtains the country or region name localized for display on a given locale. + * Obtains the localized name of the specified country/region. * - * @param { string } country - The locale whose country or region name will be displayed. - * @param { string } locale - The locale used to display the country or region. - * @param { boolean } [sentenceCase] - Specifies whether the country or region name is displayed in sentence case. - * @returns { string } the country or region name localized for display on a given locale. + * @param { string } country - Specified country. + * @param { string } locale - System locale, which consists of the language, script, and country/region. + * @param { boolean } [sentenceCase] - Whether to use sentence case to display the text. The value "true" means to + * display the text in title case format, and the value "false" means to display + * the text in the default case format of the locale. The default value is true. + * @returns { string } Localized script for the specified country. * @syscap SystemCapability.Global.I18n * @since 7 * @deprecated since 9 @@ -54,12 +57,14 @@ declare namespace i18n { export function getDisplayCountry(country: string, locale: string, sentenceCase?: boolean): string; /** - * Obtains the language name localized for display on a given locale. + * Obtains the localized script for the specified language. * - * @param { string } language - The locale whose language name will be displayed. - * @param { string } locale - The locale used to display the language. - * @param { boolean } [sentenceCase] - Specifies whether the language name is displayed in sentence case. - * @returns { string } the language name localized for display on a given locale. + * @param { string } language - Specified language. + * @param { string } locale - System locale, which consists of the language, script, and country/region. + * @param { boolean } [sentenceCase] - Whether to use sentence case to display the text. The value "true" means to + * display the text in title case format, and the value "false" means to display + * the text in the default case format of the locale. The default value is true. + * @returns { string } Localized script for the specified language. * @syscap SystemCapability.Global.I18n * @since 7 * @deprecated since 9 @@ -68,9 +73,9 @@ declare namespace i18n { export function getDisplayLanguage(language: string, locale: string, sentenceCase?: boolean): string; /** - * Obtains the language currently used by the system. + * Obtains the system language. * - * @returns { string } the language currently used by the system. + * @returns { string } System language ID. * @syscap SystemCapability.Global.I18n * @since 7 * @deprecated since 9 @@ -79,9 +84,9 @@ declare namespace i18n { export function getSystemLanguage(): string; /** - * Obtains the region currently used by the system. + * Obtains the system region. * - * @returns { string } the region currently used by the system. + * @returns { string } System region ID. * @syscap SystemCapability.Global.I18n * @since 7 * @deprecated since 9 @@ -90,9 +95,9 @@ declare namespace i18n { export function getSystemRegion(): string; /** - * Obtains the locale currently used by the system. + * Obtains the system locale. * - * @returns { string } the locale currently used by the system. + * @returns { string } System locale ID. * @syscap SystemCapability.Global.I18n * @since 7 * @deprecated since 9 @@ -120,7 +125,8 @@ declare namespace i18n { * @crossplatform * @form * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export class System { /** @@ -149,13 +155,17 @@ declare namespace i18n { * @since 10 */ /** - * Obtains the country or region name localized for display on a given locale. + * Obtains the country/region display name in the specified language. * - * @param { string } country - The locale whose country or region name will be displayed. It must be a valid country. - * @param { string } locale - The locale used to display the country or region. It must be a valid locale. - * @param { boolean } [sentenceCase] - Specifies whether the country or region name is displayed in sentence case. - * @returns { string } the country or region name localized for display on a given locale. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } country - Valid country/region code. + * @param { string } locale - System locale, which consists of the language, script, and country/region. + * @param { boolean } [sentenceCase] - Whether to use sentence case to display the text. The value "true" means to + * display the text in title case format, and the value "false" means to + * display the text in the default case format of the locale. The default value + * is true. + * @returns { string } Country/region display name in the specified language. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @crossplatform @@ -190,13 +200,17 @@ declare namespace i18n { * @since 10 */ /** - * Obtains the language name localized for display on a given locale. + * Obtains the language display name in the specified language. * - * @param { string } language - The locale whose language name will be displayed. It must be a valid language. - * @param { string } locale - The locale used to display the language. It must be a valid locale. - * @param { boolean } [sentenceCase] - Specifies whether the language name is displayed in sentence case. - * @returns { string } the language name localized for display on a given locale. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } language - Valid language ID. + * @param { string } locale - System locale, which consists of the language, script, and country/region. + * @param { boolean } [sentenceCase] - Whether to use sentence case to display the text. The value "true" means to + * display the text in title case format, and the value "false" means to + * display the text in the default case format of the locale. The default value + * is true. + * @returns { string } Language display name in the specified language. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @crossplatform @@ -213,9 +227,9 @@ declare namespace i18n { * @since 9 */ /** - * Obtains all languages supported by the system. + * Obtains the list of system languages. * - * @returns { Array<string> } all languages supported by the system. + * @returns { Array<string> } List of system languages. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -233,11 +247,12 @@ declare namespace i18n { * @since 9 */ /** - * Obtains all regions supported by the system in the language. + * Obtains the list of countries/regions supported for the specified language. * - * @param { string } language - The language used to get the list of regions. It must be a valid language. - * @returns { Array<string> } all countries or regions supported by the system in the language. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } language - Valid language ID. + * @returns { Array<string> } List of countries/regions supported for the specified language. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice @@ -257,12 +272,16 @@ declare namespace i18n { * @since 9 */ /** - * Determine whether the current language or region is recommended. + * Checks whether a language is a suggested language in the specified region. It can be used for region-based + * language recommendation or language-based region recommendation. * - * @param { string } language - The language code. It must be a valid language. - * @param { string } [region] - The region code. It must be a valid region. - * @returns { boolean } whether the current language or region is recommended. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } language - Valid language ID, for example, "zh". + * @param { string } [region] - Valid region ID, for example, "CN". The default value is the country/region of the + * SIM card. + * @returns { boolean } Whether a language is a suggested language. The value "true" indicates that the language + * is a suggested language of the region, the the value "false" indicates the opposite. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice @@ -286,24 +305,27 @@ declare namespace i18n { * @since 10 */ /** - * Obtains the language currently used by the system. + * Obtains the current system language. * - * @returns { string } the language currently used by the system. + * @returns { string } Language ID. * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ static getSystemLanguage(): string; /** - * Set the language currently used by the system. + * Sets the system language. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { string } language - The language to be used. It must be a valid language. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } language - Valid language ID. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -327,23 +349,26 @@ declare namespace i18n { * @since 10 */ /** - * Obtains the region currently used by the system. + * Obtains the current system country/region. * - * @returns { string } the region currently used by the system. + * @returns { string } Country/region ID. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ static getSystemRegion(): string; /** - * Set the region currently used by the system. + * Sets the system region. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { string } region - The region to be used. It must be a valid region. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } region - Valid region ID. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -367,30 +392,62 @@ declare namespace i18n { * @since 10 */ /** - * Obtains the locale currently used by the system. + * Obtains the current system locale. * - * @returns { string } the locale currently used by the system. + * @returns { string } Locale ID. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead ohos.System.getSystemLocaleInstance */ static getSystemLocale(): string; /** - * Set the locale currently used by the system. + * Obtains the locale object currently used by the system. + * + * @returns { Intl.Locale } the locale object currently used by the system. + * @static + * @syscap SystemCapability.Global.I18n + * @crossplatform + * @atomicservice + * @since 20 + */ + static getSystemLocaleInstance(): Intl.Locale; + + /** + * Sets the system locale. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { string } locale - The locale to be used. It must be a valid locale. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } locale - System locale, which consists of the language, script, and country/region. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. * @since 9 + * @deprecated since 20 + * @useinstead ohos.System.setSystemLocaleInstance */ static setSystemLocale(locale: string): void; + /** + * Set the locale object currently used by the system. + * + * @permission ohos.permission.UPDATE_CONFIGURATION + * @param { Intl.Locale } locale - The locale to be used. It must be a valid locale. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the + * permission required tocall the API. + * @static + * @syscap SystemCapability.Global.I18n + * @since 20 + */ + static setSystemLocaleInstance(locale: Intl.Locale): void; + /** * Check out whether system is 24-hour system. * @@ -416,24 +473,29 @@ declare namespace i18n { * @since 11 */ /** - * Check out whether system is 24-hour system. + * Checks whether the 24-hour clock is used. * - * @returns { boolean } a boolean represent whether system is 24-hour system. + * @returns { boolean } Whether the 24-hour clock is used. The value "true" indicates that the 24-hour clock is + * used, the the value "false" means the opposite. * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ static is24HourClock(): boolean; /** - * Set 24-hour system. + * Sets whether to use the 24-hour clock. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { boolean } option - represent the boolean to be set. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { boolean } option - Whether to use the 24-hour clock. The value "true" means to use the 24-hour clock, + * the the value "false" means the opposite. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -442,13 +504,16 @@ declare namespace i18n { static set24HourClock(option: boolean): void; /** - * Add one language to preferred language List. + * Adds a preferred language to the specified position on the preferred language list. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { string } language - the language to be added. It must be a valid language. - * @param { number } [index] - the position of preferred language list to be inserted. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } language - Valid ID of the language to be added as a preferred language. + * @param { number } [index] - Position to which the preferred language is added. The default value is the length + * of the preferred language list. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -457,12 +522,14 @@ declare namespace i18n { static addPreferredLanguage(language: string, index?: number): void; /** - * Remove one language from preferred language list. + * Removes a preferred language from the specified position on the preferred language list. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { number } index - the position of removed language in preferred language list. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { number } index - Position of the preferred language to delete. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -478,9 +545,9 @@ declare namespace i18n { * @since 9 */ /** - * Access the system preferred language list. + * Obtains the list of preferred languages. * - * @returns { Array<string> } a string Array represent the preferred language list. + * @returns { Array<string> } List of preferred languages. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -495,9 +562,9 @@ declare namespace i18n { * @since 9 */ /** - * Get the first preferred language of system. + * Obtains the first language in the preferred language list. * - * @returns { string } a string represent the first preferred language of system. + * @returns { string } First language in the preferred language list. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -514,15 +581,32 @@ declare namespace i18n { * @since 11 */ /** - * Set the preferred language of App. + * Sets the preferred language of the application. Resources are loaded in the preferred language when the + * application is launched. If the preferred language is set to default, the application's language will be the + * same as the system language, and the setting will take effect upon cold starting of the application. * - * @param { string } language - the language to be set. It must be a valid language. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } language - Valid language ID or default. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 */ + /** + * Sets the preferred language of the application. Resources are loaded in the preferred language when the + * application is launched. If the preferred language is set to default, the application's language will be the + * same as the system language, and the setting will take effect upon cold starting of the application. + * + * @param { string } language - Valid language ID or default. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. + * @syscap SystemCapability.Global.I18n + * @crossplatform + * @atomicservice + * @since 20 + */ static setAppPreferredLanguage(language: string): void; /** @@ -533,22 +617,34 @@ declare namespace i18n { * @since 9 */ /** - * Get the preferred language of App. + * Obtains the preferred language of an application. * - * @returns { string } a string represent the preferred language of App. + * @returns { string } Preferred language of the application. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 */ + /** + * Obtains the preferred language of an application. + * + * @returns { string } Preferred language of the application. + * @syscap SystemCapability.Global.I18n + * @crossplatform + * @atomicservice + * @since 20 + */ static getAppPreferredLanguage(): string; /** - * Set whether to use local digit. + * Specifies whether to enable use of local digits. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { boolean } flag - a boolean variable represents whether to use local digit - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { boolean } flag - Whether to turn on the local digit switch. The value "true" means to turn on the local + * digit switch, and the value "false" indicates the opposite. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -564,9 +660,10 @@ declare namespace i18n { * @since 9 */ /** - * Get whether to use local digit. + * Checks whether use of local digits is enabled. * - * @returns { boolean } a boolean represents whether to use local digit. + * @returns { boolean } Whether use of local digits is enabled. The value "true" indicates that use of local digits + * is enabled, and the value "false" indicates the opposite. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -574,17 +671,17 @@ declare namespace i18n { static getUsingLocalDigit(): boolean; /** - * Gets the equivalent simplest representation of input language id. - * When no parameter is passed in, current system language's simplest representation will be returned. - * If current system language is a dialect language, then system language's simplest representation will be returned; - * If current system language is not a dialect language, but it has a dialect language which is supported by system, - * then the dialect language's simplest representation will be returned; - * If current system language is not a dialect language, and it doesn't have a dialect language which is supported by system, - * then the system language's simplest representation will be returned; + * Obtains the simplified representation of a language. For example, the simplified representation of "en-Latn-US" + * is "en", and that of "en-Latn-GB" is "en-GB". * - * @param { string } [language] - The language code. It must be a valid language. - * @returns { string } The equivalent simplest representation of language. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } [language] - Valid language ID. The default value is the system language. + * @returns { string } If language is not passed, the application checks for dialects supported by the system based + * on the system language and locale. If such a dialect is found, the simplified representation + * of the dialect is returned. Otherwise, the simplified representation of the system language + * is returned. If language is passed, the simplified representation of the specified language + * is returned. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice @@ -593,13 +690,13 @@ declare namespace i18n { static getSimplifiedLanguage(language?: string): string; /** - * Set user's preferrence for temperature type. + * Sets the temperature unit of the system. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { TemperatureType } type - Indicates a temperature type. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @param { TemperatureType } type - Temperature unit. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -608,9 +705,9 @@ declare namespace i18n { static setTemperatureType(type: TemperatureType): void; /** - * Get user's preferrence for temperature type. + * Obtains the temperature unit of the system. * - * @returns { TemperatureType } temperature type. + * @returns { TemperatureType } Temperature unit. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 @@ -618,11 +715,10 @@ declare namespace i18n { static getTemperatureType(): TemperatureType; /** - * Get temperature name by TemperatureType. + * Obtains the name of a temperature unit. * - * @param { TemperatureType } type - Indicates a temperature type. - * @returns { string } temperature name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { TemperatureType } type - Temperature unit. + * @returns { string } Name of the temperature unit, which can be "celsius", "fahrenheit", and "kelvin". * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice @@ -631,13 +727,13 @@ declare namespace i18n { static getTemperatureName(type: TemperatureType): string; /** - * Set user's preferrence for first day of week. + * Sets the first day of a week. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { WeekDay } type - one of week days. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @param { WeekDay } type - Start day of a week. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission + * required to call the API. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -646,18 +742,216 @@ declare namespace i18n { static setFirstDayOfWeek(type: WeekDay): void; /** - * Get user's preferrence for first day of week. + * Obtains the first day of a week in the system settings. * - * @returns { WeekDay } one of week days. + * @returns { WeekDay } Start day of a week. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 */ static getFirstDayOfWeek(): WeekDay; + + /** + * Gets collations supported by system locale. + * + * @returns { Map<string, string> } The map will containing the collation's identifier and name. + * If the map is empty of the collation for given locale does not need to be set. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static getSystemCollations(): Map<string, string>; + + /** + * Gets collation currently used by system locale. + * + * @returns { string } The identifier of the collation model used by system locale will be return. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static getUsingCollation(): string; + + /** + * Sets the system collation mode. + * + * @permission ohos.permission.UPDATE_CONFIGURATION + * @param { string } identifier - Identifier of the collation mode. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 8900001 - Invalid parameter. Possible causes: Parameter verification failed. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static setSystemCollation(identifier: string): void; + + /** + * Gets measurements supported by system locale. + * + * @returns { Map<string, string> } a map will containing identifier and name of measurements supported by system locale. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static getSystemMeasurements(): Map<string, string>; + + /** + * Gets measurement currently used by system locale. + * + * @returns { string } The identifier of measurement system using by system locale + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static getUsingMeasurement(): string; + + /** + * Sets the measurement system used by the system locale. + * + * @permission ohos.permission.UPDATE_CONFIGURATION + * @param { string } identifier - Identifier of the measurement system. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 8900001 - Invalid parameter. Possible causes: Parameter verification failed. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static setSystemMeasurement(identifier: string):void; + + /** + * Gets numbering system currently used by system locale. + * + * @returns { string } the numbering systems's identifier. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static getUsingNumberingSystems(): string; + + /** + * Sets the numbering system used by the system locale. + * + * @permission ohos.permission.UPDATE_CONFIGURATION + * @param { string } identifier - Identifier of the numbering system. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 8900001 - Invalid parameter. Possible causes: Parameter verification failed. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static setSystemNumberingSystem(identifier: string):void; + + /** + * Gets numbering systems supported by system locale. + * + * @returns { Map<string,string> } a map will containing the numbering system 's identifier and sample. + * If the map is empty, there is no local digit for given locale. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static getSystemNumberingSystems(): Map<string, string>; + + /** + * Gets commonly used number patterns for system locale. + * + * @returns { Map<string,string> } a map containing the used number patterns and example of system locale. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static getSystemNumberPatterns(): Map<string, string>; + + /** + * Sets the number pattern used by the system locale. + * + * @permission ohos.permission.UPDATE_CONFIGURATION + * @param { string } pattern - Identifier of the number pattern. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 8900001 - Invalid parameter. Possible causes: Parameter verification failed. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static setSystemNumberPattern(pattern: string): void; + + + /** + * Gets number pattern used by system locale. + * + * @returns { string } The number pattern identifier used by system locale + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static getUsingNumberPattern(): string; + + /** + * Gets numerical date patterns and examples supported by system locale. + * + * @returns { Map<string, string> } a map containing the date patterns and examples + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static getSystemNumericalDatePatterns(): Map<string, string>; + + /** + * Sets the numerical date pattern used by the system locale. + * + * @permission ohos.permission.UPDATE_CONFIGURATION + * @param { string } identifier - Identifier of the numerical date pattern. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 8900001 - Invalid parameter. Possible causes: Parameter verification failed. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static setSystemNumericalDatePattern(identifier : string): void; + + /** + * Gets numerical date pattern currently used by system locale. + * + * @returns { string } The numerical date pattern used by system locale + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @static + * @syscap SystemCapability.Global.I18n + * @systemapi + * @since 20 + */ + static getUsingNumericalDatePattern(): string; } /** - * Enumerates the week day. + * Enumerates the first day of a week. The value ranges from Monday to Sunday. * * @enum { number } * @syscap SystemCapability.Global.I18n @@ -666,7 +960,7 @@ declare namespace i18n { */ export enum WeekDay { /** - * Indicates Monday. + * Monday. * * @syscap SystemCapability.Global.I18n * @atomicservice @@ -675,7 +969,7 @@ declare namespace i18n { MON = 1, /** - * Indicates Tuesday. + * Tuesday. * * @syscap SystemCapability.Global.I18n * @atomicservice @@ -684,7 +978,7 @@ declare namespace i18n { TUE = 2, /** - * Indicates Wednesday. + * Wednesday. * * @syscap SystemCapability.Global.I18n * @atomicservice @@ -693,7 +987,7 @@ declare namespace i18n { WED = 3, /** - * Indicates Thursday. + * Thursday. * * @syscap SystemCapability.Global.I18n * @atomicservice @@ -702,7 +996,7 @@ declare namespace i18n { THU = 4, /** - * Indicates Friday. + * Friday. * * @syscap SystemCapability.Global.I18n * @atomicservice @@ -711,7 +1005,7 @@ declare namespace i18n { FRI = 5, /** - * Indicates Saturday. + * Saturday. * * @syscap SystemCapability.Global.I18n * @atomicservice @@ -720,7 +1014,7 @@ declare namespace i18n { SAT = 6, /** - * Indicates Sunday. + * Sunday. * * @syscap SystemCapability.Global.I18n * @atomicservice @@ -730,7 +1024,7 @@ declare namespace i18n { } /** - * Enumerates the temperature types. + * Enumerates temperature units. * * @enum { number } * @syscap SystemCapability.Global.I18n @@ -739,7 +1033,7 @@ declare namespace i18n { */ export enum TemperatureType { /** - * Celesius temperature type. + * Celesius. * * @syscap SystemCapability.Global.I18n * @atomicservice @@ -748,7 +1042,7 @@ declare namespace i18n { CELSIUS = 1, /** - * Fahrenheit temperature type. + * Fahrenheit. * * @syscap SystemCapability.Global.I18n * @atomicservice @@ -757,7 +1051,7 @@ declare namespace i18n { FAHRENHEIT = 2, /** - * Kelvin temperature type. + * Kelvin. * * @syscap SystemCapability.Global.I18n * @atomicservice @@ -777,14 +1071,15 @@ declare namespace i18n { */ export interface Util { /** - * Convert from unit to unit and format according to the locale. + * Converts one measurement unit into another and formats the unit based on the specified locale and style. * - * @param { UnitInfo } fromUnit - Information of the unit to be converted. - * @param { UnitInfo } toUnit - Information about the unit to be converted to. - * @param { number } value - Indicates the number to be formatted. - * @param { string } locale - The locale to be used. - * @param { string } [style] - The style of format. - * @returns { string } converted number and unit. + * @param { UnitInfo } fromUnit - Measurement unit to be converted. + * @param { UnitInfo } toUnit - Measurement unit to be converted to. + * @param { number } value - Value of the measurement unit to be converted. + * @param { string } locale - Locale ID used for formatting, for example, "zh-Hans-CN". + * @param { string } [style] - Style used for formatting. The value can be "long", "short", or "narrow". The + * default value is short. + * @returns { string } String obtained after formatting based on the measurement unit specified by toUnit. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -828,14 +1123,17 @@ declare namespace i18n { * @since 9 */ /** - * Convert from unit to unit and format according to the locale. + * Converts one measurement unit into another and formats the unit based on the specified locale and style. * - * @param { UnitInfo } fromUnit - Information of the unit to be converted. - * @param { UnitInfo } toUnit - Information about the unit to be converted to. - * @param { number } value - Indicates the number to be formatted. - * @param { string } locale - The locale to be used. - * @param { string } [style] - The style of format. - * @returns { string } converted number and unit. + * @param { UnitInfo } fromUnit - Measurement unit to be converted. + * @param { UnitInfo } toUnit - Measurement unit to be converted to. + * @param { number } value - Value of the measurement unit to be converted. + * @param { string } locale - Locale ID, which consists of the language, script, and country/region, for example, + * "zh-Hans-CN". + * @param { string } [style] - Style used for formatting. The value can be long, short, or narrow. The default + * value is short. For details about the meaning or display effect of different values, + * see Number and Unit of Measurement Formatting. + * @returns { string } String converted to the measurement unit after formatting. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -862,11 +1160,12 @@ declare namespace i18n { * @since 10 */ /** - * Get the order of year, month, day in the specified locale. Year, month, day are separated by '-'. - * 'y' stands for year, 'L' stands for month, d stands for day. + * Obtains the sequence of the year, month, and day in the specified locale. * - * @param { string } locale - Information of the locale. - * @returns { string } the string of 'y', 'L', 'd' joined by '-'. + * @param { string } locale - Locale ID, which consists of the language, script, and country/region, for example, + * "zh-Hans-CN". + * @returns { string } Sequence of the year, month, and day in the locale. "y" indicates the year, "L" indicates + * the month, and "d" indicates the day. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -886,12 +1185,14 @@ declare namespace i18n { * @since 11 */ /** - * Get the time period name for the specified hour. + * Obtains the localized expression of the specified time in the specified locale. * - * @param { number } hour - the hour value. - * @param { string } [locale] - specified the locale. Use current app locale by default. It must be a valid locale. - * @returns { string } the string of time period name. The return value may be empty string - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { number } hour - Specified time, for example, 16. + * @param { string } [locale] - System locale, which consists of the language, script, and country/region. for + * example, "zh-Hans-CN". The default value is the current system locale. + * @returns { string } Localized expression of the specified time in the specified locale. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice @@ -900,13 +1201,14 @@ declare namespace i18n { static getTimePeriodName(hour:number, locale?: string): string; /** - * Get the best matched locale in the specified list. + * Obtains the locale that best matches a region from the specified locale list. * - * @param { string } locale - the origin locale. It must be a valid locale. - * @param { string[] } localeList - a list of locales to be matched. It must be a valid locale. - * @returns { string } the string of the best matched locale name. - * The return value may be empty string due to none is matched. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } locale - Locale ID, for example, "zh-Hans-CN". + * @param { string[] } localeList - List of locale IDs. + * @returns { string } ID of the locale that best matches a region. If no matching locale is found, an empty string + * is returned. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @static * @syscap SystemCapability.Global.I18n @@ -917,11 +1219,14 @@ declare namespace i18n { static getBestMatchLocale(locale: string, localeList: string[]): string; /** - * Get a three-letter abbreviation of the specified language. + * Converts a language code from two letters to three letters. For example, the two-letter language code of Chinese + * is "zh", and the corresponding three-letter language code is "zho". For details, see + * [ISO 639](https://www.iso.org/iso-639-language-code). * - * @param { string } locale - the origin locale or language code. It must be a valid locale. - * @returns { string } 3 letter language code. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } locale - Two-letter code of the language to be converted, for example, "zh". + * @returns { string } Language code after conversion. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @static * @syscap SystemCapability.Global.I18n @@ -931,11 +1236,14 @@ declare namespace i18n { static getThreeLetterLanguage(locale: string): string; /** - * Get a three-letter abbreviation of the specified region. + * Converts a region code from two letters to three letters. For example, the two-letter region code of China is + * "CN", and the corresponding three-letter region code is "CHN". For details, see + * [ISO 3166](https://www.iso.org/iso-3166-country-codes.html). * - * @param { string } locale - the origin locale or region code. It must be a valid locale. - * @returns { string } 3 letter region code. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } locale - Two-letter country/region code to be converted, for example, "CN". + * @returns { string } Region code after conversion. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @static * @syscap SystemCapability.Global.I18n @@ -944,6 +1252,25 @@ declare namespace i18n { */ static getThreeLetterRegion(locale: string): string; + /** + * Localizes a file path for the specified locale. For example, /data/out/tmp is changed to tmp/out/data/ after + * localization. + * + * @param { string } path - Path to mirror, for example, "/data/out/tmp". + * @param [ string ] delimiter - Path delimiter. The default value is "/"". + * @param [ intl.Locale ] locale - Locale object. The default value is the current system locale. + * @returns { string } File path after localization. If the specified locale object corresponds to an RTL language, + * the processed file path contains a direction control character to ensure that the file path + * is displayed in mirror mode. + * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. + * @static + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 18 + * @deprecated since 20 + */ + static getUnicodeWrappedFilePath(path: string, delimiter?: string, locale?: intl.Locale): string; + /** * Get the localized file path. * Return the mirrored file path if the locale is RTL. Otherwise return the input file path. @@ -951,16 +1278,15 @@ declare namespace i18n { * * @param { string } path - the file path that needs to be localized. * @param [ string ] delimiter - the file path's delimiter. - * @param [ intl.Locale ] locale - the locale object used to localized file path. + * @param [ Intl.Locale ] locale - the locale object used to localized file path. * @returns { string } the localized file path. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. + * @throws { BusinessError } 8900001 - Invalid parameter. Possible causes: Parameter verification failed. * @static * @syscap SystemCapability.Global.I18n * @atomicservice - * @since 18 + * @since 20 */ - static getUnicodeWrappedFilePath(path: string, delimiter?: string, locale?: intl.Locale): string; + static getUnicodeWrappedFilePath(path: string, delimiter?: string, locale?: Intl.Locale): string; } /** @@ -971,7 +1297,7 @@ declare namespace i18n { * @since 8 */ /** - * Provides the options of unit. + * Defines the measurement unit information. * * @interface UnitInfo * @syscap SystemCapability.Global.I18n @@ -986,7 +1312,7 @@ declare namespace i18n { * @since 8 */ /** - * Unit name. + * Name of the measurement unit, for example, "meter", "inch", or "cup". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -1002,7 +1328,7 @@ declare namespace i18n { * @since 8 */ /** - * The measurement system of the unit. + * Measurement system. The value can be "SI", "US", or "UK". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -1028,7 +1354,7 @@ declare namespace i18n { * @since 11 */ /** - * Provides the options of PhoneNumberFormat. + * Options for PhoneNumberFormat object initialization. * * @interface PhoneNumberFormatOptions * @syscap SystemCapability.Global.I18n @@ -1060,7 +1386,10 @@ declare namespace i18n { * @since 11 */ /** - * Indicates the type to format phone number. + * Type of the phone number. The value can be "E164", "INTERNATIONAL", "NATIONAL", "RFC3966", or "TYPING". + * In API version 8, type is mandatory. In API version 9 or later, type is optional. + * In API version 12 or later, "TYPING" is supported, which indicates that the dialed number is formatted in real + * time. * * @type { ?string } * @syscap SystemCapability.Global.I18n @@ -1111,10 +1440,11 @@ declare namespace i18n { * @since 11 */ /** - * A constructor used to create a PhoneNumberFormat object. + * Creates a PhoneNumberFormat object. * - * @param { string } country - Indicates a character string containing the country information for the PhoneNumberFormat object. - * @param { PhoneNumberFormatOptions } [options] - format types: "E164", "RFC3966", "INTERNATIONAL", "NATIONAL". + * @param { string } country - Country/region to which the phone number to be formatted belongs. + * @param { PhoneNumberFormatOptions } [options] - Options for PhoneNumberFormat object initialization. + * The default value is "NATIONAL". * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1140,10 +1470,11 @@ declare namespace i18n { * @since 11 */ /** - * Judge whether phone number is valid. + * Checks whether the phone number is valid for the country/region in the PhoneNumberFormat object. * - * @param { string } number - Indicates the input phone number. - * @returns { boolean } a boolean indicates whether the input phone number is valid. + * @param { string } number - Phone number to be checked. + * @returns { boolean } Whether the phone number is valid. The value "true" indicates that the phone number is + * valid, and the value "false" indicates the opposite. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1169,10 +1500,10 @@ declare namespace i18n { * @since 11 */ /** - * Obtains the formatted phone number strings of number. + * Formats a phone number. * - * @param { string } number - Indicates the input phone number to be formatted. - * @returns { string } the formatted phone number. + * @param { string } number - Phone number to be formatted. + * @returns { string } Formatted phone number. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1190,11 +1521,12 @@ declare namespace i18n { * @since 9 */ /** - * Determine the location by phone number, and return it according to the specified regional language. + * Obtains the home location of a phone number. * - * @param { string } number - input phone number. - * @param { string } locale - locale ID. - * @returns { string } a string represents phone number's location. + * @param { string } number - Phone number. To obtain the home location of a number in other countries/regions, + * you need to prefix the number with 00 and the country code. + * @param { string } locale - System locale, which consists of the language, script, and country/region. + * @returns { string } Home location of the phone number. If the number is invalid, an empty string is returned. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1226,41 +1558,46 @@ declare namespace i18n { * @since 10 */ /** - * Get a Calendar instance specified by locale and type. + * Obtains the Calendar object for the specified locale and calendar type. * - * @param { string } locale - The locale used to get calendar. - * @param { string } [type] - If type is not specified, get locale's default Calendar, else get the specified type of Calendar. - * such as buddhist, chinese, coptic, ethiopic, hebrew, gregory, indian, islamic_civil, islamic_tbla, islamic_umalqura, - * japanese, persian. + * @param { string } locale - Locale ID, which consists of the language, script, and country/region, + * for example, zh-Hans-CN. + * @param { string } [type] - Calendar. The value can be: "buddhist", "chinese", "coptic", "ethiopic", + * "hebrew", "gregory", "indian", "islamic_civil", "islamic_tbla", + * "islamic_umalqura", "japanese", or "persian". The default value is the default + * calendar of the locale. For details about the meanings and application scenarios of + * different values, see Calendar Setting. * @returns { Calendar } Calendar object * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export function getCalendar(locale: string, type?: string): Calendar; - /** - * Provides the API for accessing Calendar name, time and date related information. - * - * @syscap SystemCapability.Global.I18n - * @since 7 - */ - /** - * Provides the API for accessing Calendar name, time and date related information. - * - * @syscap SystemCapability.Global.I18n - * @crossplatform - * @since 10 - */ - /** - * Provides the API for accessing Calendar name, time and date related information. - * - * @syscap SystemCapability.Global.I18n - * @crossplatform - * @atomicservice - * @since 12 - */ + /** + * Provides the API for accessing Calendar name, time and date related information. + * + * @syscap SystemCapability.Global.I18n + * @since 7 + */ + /** + * Provides the API for accessing Calendar name, time and date related information. + * + * @syscap SystemCapability.Global.I18n + * @crossplatform + * @since 10 + */ + /** + * Provides the API for accessing Calendar name, time and date related information. + * + * @syscap SystemCapability.Global.I18n + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ export class Calendar { /** * set the date. @@ -1278,9 +1615,9 @@ declare namespace i18n { * @since 10 */ /** - * set the date. + * Sets the date and time for a Calendar object. * - * @param { Date } date - Date object used to set the time and date. + * @param { Date } date - Date and time. Note: The month starts from 0. For example, 0 indicates January. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1304,9 +1641,10 @@ declare namespace i18n { * @since 10 */ /** - * set the time. + * Sets the date and time for a Calendar object. * - * @param { number } time - Indicates the elapsed milliseconds from 1970.1.1 00:00:00 GMT. + * @param { number } time - Unix timestamp, which indicates the number of milliseconds that have elapsed since the + * Unix epoch. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1340,14 +1678,14 @@ declare namespace i18n { * @since 10 */ /** - * Set the time + * Sets the year, month, day, hour, minute, and second for this Calendar object. * - * @param { number } year - The year field of the calendar, ranges from 0 to 9999. - * @param { number } month - The month field of the calendar, ranges from 0 to 11. - * @param { number } date - The day field of the calendar, ranges from 1 to 31. - * @param { number } hour - The hour field of the calendar, ranges from 0 to 23. - * @param { number } minute - The minute field of the calendar, ranges from 0 to 59. - * @param { number } second - the second field of the calendar, ranges from 0 to 59. + * @param { number } year - Year to set. + * @param { number } month - Month to set. Note: The month starts from 0. For example, 0 indicates January. + * @param { number } date - Day to set. + * @param { number } hour - Hour to set. The default value is the current system time. + * @param { number } minute - Minute to set. The default value is the current system time. + * @param { number } second - Second to set. The default value is the current system time. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1371,9 +1709,9 @@ declare namespace i18n { * @since 10 */ /** - * Set the timezone of this calendar. + * Sets the time zone of this Calendar object. * - * @param { string } timezone - The id of a timezone. + * @param { string } timezone - Valid time zone ID, for example, Asia/Shanghai. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1397,13 +1735,14 @@ declare namespace i18n { * @since 10 */ /** - * Get the timezone id of this calendar instance. + * Obtains the time zone ID of this Calendar object. * - * @returns { string } the timezone id of this calendar. + * @returns { string } Time zone ID. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getTimeZone(): string; @@ -1423,9 +1762,9 @@ declare namespace i18n { * @since 10 */ /** - * Get the start day of a week. 1 indicates Sunday, 7 indicates Saturday. + * Obtains the first day of a week for this Calendar object. * - * @returns { number } start day of a week. + * @returns { number } First day of a week. The value 1 indicates Sunday, and the value 7 indicates Saturday. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1449,9 +1788,9 @@ declare namespace i18n { * @since 10 */ /** - * Set the start day of a week. 1 indicates Sunday, 7 indicates Saturday. + * Sets the first day of a week for this Calendar object. * - * @param { number } value - Indicates the start day of a week. 1 indicates Sunday, 7 indicates Saturday. + * @param { number } value - Start day of a week. The value 1 indicates Sunday, and the value 7 indicates Saturday. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1475,9 +1814,9 @@ declare namespace i18n { * @since 10 */ /** - * Get the minimal days of a week, which is needed for the first day of a year. + * Obtains the minimum number of days in the first week for this Calendar object. * - * @returns { number } the minimal days of a week. + * @returns { number } Minimum number of days in the first week of a year. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1501,9 +1840,9 @@ declare namespace i18n { * @since 10 */ /** - * Set the minimal days of a week, which is needed for the first week of a year. + * Sets the minimum number of days in the first week for this Calendar object. * - * @param { number } value - The value to be set. + * @param { number } value - Minimum number of days in the first week of a year. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1533,16 +1872,16 @@ declare namespace i18n { * @since 10 */ /** - * Get the associated value with the field. + * Obtains the values of the calendar attributes in this Calendar object. * - * @param { string } field - Field values such as era, year, month, week_of_year, week_of_month, date, day_of_year, day_of_week - * day_of_week_in_month, hour, hour_of_day, minute, second, millisecond, zone_offset, dst_offset, year_woy, - * dow_local, extended_year, julian_day, milliseconds_in_day, is_leap_month. - * @returns { number } the associated value. + * @param { string } field - Calendar attributes. The following table lists the supported attribute values. + * @returns { number } Value of the calendar attribute. For example, if the year of the internal date of the + * current Calendar object is 1990, get('year') returns 1990. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ get(field: string): number; @@ -1555,10 +1894,11 @@ declare namespace i18n { * @since 8 */ /** - * Get calendar's name localized for display in the given locale. + * Obtains calendar display name in the specified language. * - * @param { string } locale - Locale used to get the localized name for this calendar. It must be a valid locale. - * @returns { string } the localized name of this calendar. + * @param { string } locale - System locale, which consists of the language, script, and country/region. + * @returns { string } Calendar display name in the specified language. For example, buddhist is displayed as + * Buddhist Calendar if the locale is en-US. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1585,11 +1925,12 @@ declare namespace i18n { * @since 10 */ /** - * Returns true if the given date is a weekend day. If the date is not given, - * the date object of this calendar is used. + * Checks whether a given date is a weekend in this Calendar object. * - * @param { Date } [date] - Date object whose attribute is desired. - * @returns { boolean } whether the date is a weekend day. + * @param { Date } [date] - Date and time. Note: The month starts from 0. For example, 0 indicates January. + * The default value is current date of the Calendar object. + * @returns { boolean } The value "true" indicates that the specified date is a weekend, and the value "false" + * indicates the opposite. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1610,12 +1951,14 @@ declare namespace i18n { * @since 11 */ /** - * Adds or subtract the specified amount of time to the given calendar field. + * Performs addition or subtraction on the calendar attributes of this Calendar object. * - * @param { string } field - field values such as year, month, week_of_year, week_of_month, date, day_of_year, day_of_week - * day_of_week_in_month, hour, hour_of_day, minute, second, millisecond - * @param { number } amount - the amount of date or time to be added to the field. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } field - Calendar attribute. The value can be any of the following: year, month, week_of_year, + * week_of_month, date, day_of_year, day_of_week, day_of_week_in_month, hour, + * hour_of_day, minute, second, millisecond. For details about the values, see get. + * @param { number } amount - Addition or subtraction amount. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @crossplatform @@ -1633,9 +1976,10 @@ declare namespace i18n { * @since 11 */ /** - * Get the UTC milliseconds. + * Obtains the timestamp of this Calendar object. * - * @returns { number } the calendar time as UTC milliseconds. + * @returns { number } Unix timestamp, which indicates the number of milliseconds that have elapsed since the + * Unix epoch. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1647,7 +1991,7 @@ declare namespace i18n { * Returns days comparison result. * * @param { Date } date - Date object to be compared. - * @returns { number } value of of the comparison result. A positive value indicates that the date is later, + * @returns { number } value of of the comparison result. A positive value indicates that the date is later, * and a negative value indicates that the date is earlier. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Global.I18n @@ -1655,12 +1999,15 @@ declare namespace i18n { * @since 11 */ /** - * Returns days comparison result. + * Compares the current date of this Calendar object with the specified date for the difference in the number of + * days. * - * @param { Date } date - Date object to be compared. - * @returns { number } value of of the comparison result. A positive value indicates that the date is later, - * and a negative value indicates that the date is earlier. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { Date } date - Date and time. Note: The month starts from 0. For example, 0 indicates January. + * @returns { number } Difference in the number of days. A positive number indicates that the calendar date is + * earlier, and a negative number indicates the opposite. The value is accurate to + * milliseconds. If the value is less than one day, it is considered as one day. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -1687,14 +2034,15 @@ declare namespace i18n { * @since 10 */ /** - * Judge whether the locale is RTL locale. + * Checks whether the input character is of the right to left (RTL) language. * - * @param { string } locale - The locale to be used. - * @returns { boolean } true representing the locale is an RTL locale + * @param { string } locale - Input character. If the input is a string, only the type of the first character is checked. + * @returns { boolean } true if the input character is of the RTL language, and false otherwise. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export function isRTL(locale: string): boolean; @@ -1707,10 +2055,13 @@ declare namespace i18n { * @since 8 */ /** - * Obtains a BreakIterator object for finding the location of break point in text. + * Obtains a BreakIterator object. The BreakIterator object maintains an internal break iterator that can be used to + * access various line break points. * - * @param { string } locale - the returned BreakIterator will adapt the rule, specified by the locale, to break text. - * @returns { BreakIterator } a newly constructed BreakIterator object. + * @param { string } locale - System locale, which consists of the language, script, and country/region. The + * generated BreakIterator object calculates the positions of line breaks based on + * the rules of the specified locale. + * @returns { BreakIterator } BreakIterator object. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1739,9 +2090,9 @@ declare namespace i18n { * @since 8 */ /** - * Obtains the current position of the BreakIterator instance. + * Obtains the position of the break iterator in the text. * - * @returns { number } the current position of the BreakIterator instance. + * @returns { number } Position of the break iterator in the text. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1757,10 +2108,9 @@ declare namespace i18n { * @since 8 */ /** - * Set the BreakIterator's position to the first break point, the first break point is always the beginning of the - * processed text. + * Moves the break iterator to the first line break point, which is always at the beginning of the processed text. * - * @returns { number } the index of the first break point. + * @returns { number } Offset of the first line break point in the processed text. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1776,10 +2126,10 @@ declare namespace i18n { * @since 8 */ /** - * Set the BreakIterator's position to the last break point. the last break point is always the index beyond the - * last character of the processed text. + * Moves the break iterator to the last line break point, which is always the next position after the end of the + * processed text. * - * @returns { number } the index of the last break point. + * @returns { number } Offset of the last line break point in the processed text. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1795,10 +2145,13 @@ declare namespace i18n { * @since 8 */ /** - * Set the BreakIterator's position to the nth break point from the current break point. + * Moves the break iterator backward by the specified number of line break points. * - * @param { number } [index] - indicates the number of break points to advance. If index is not given, n is treated as 1. - * @returns { number } the index of the BreakIterator after moving. If there is not enough break points, returns -1. + * @param { number } [index] - Number of line break points for moving the break iterator. The value is an integer. + * A positive number means to move the break iterator backward, and a negative number + * means to move the break iterator forward. The default value is 1. + * @returns { number } Position of the break iterator in the text after movement. The value -1 is returned if the + * position of the break iterator is outside of the processed text after movement. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1813,9 +2166,10 @@ declare namespace i18n { * @since 8 */ /** - * Set the BreakIterator's position to the break point preceding the current break point. + * Moves the break iterator foreward by one line break point. * - * @returns { number } the index of the BreakIterator after moving. If there is not enough break points, returns -1. + * @returns { number } Position of the break iterator in the text after movement. The value -1 is returned if the + * position of the break iterator is outside of the processed text after movement. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1830,9 +2184,9 @@ declare namespace i18n { * @since 8 */ /** - * Set the text to be processed. + * Sets the text to be processed by the BreakIterator object. * - * @param { string } text - Indicates the text to be processed by the BreakIterator. + * @param { string } text - Input text. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1848,10 +2202,11 @@ declare namespace i18n { * @since 8 */ /** - * Set the BreakIterator's position to the first break point following the specified offset. + * Moves the line break iterator to the line break point after the specified position. * - * @param { number } offset - * @returns { number } the index of the BreakIterator after moving. If there is not enough break points, returns -1. + * @param { number } offset - Offset of the line break point. + * @returns { number } Position of the break iterator in the text after movement. The value -1 is returned if the + * position of the break iterator is outside of the processed text after movement. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1866,9 +2221,9 @@ declare namespace i18n { * @since 8 */ /** - * Obtains the text being processed. + * Obtains the text processed by the BreakIterator object. * - * @returns { string } the text that is processed by the BreakIterator. + * @returns { string } Text being processed by the BreakIterator object. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1886,12 +2241,14 @@ declare namespace i18n { * @since 8 */ /** - * Returns true if the position indicated by the offset is a break point, otherwise false. The BreakIterator's - * position will be set to the position indicated by the offset if it returns true, otherwise the BreakIterator - * will be moved to the break point following the offset. + * Checks whether the specified position is a line break point. * - * @param { number } offset The offset to be checked. - * @returns { boolean } true if the offset is a break point. + * @param { number } offset - Specified position in the text. + * @returns { boolean } Whether the specified position is a line break point. The value "true" indicates that the + * specified position is a line break point, and the value "false" indicates the opposite. + * If true is returned, the break iterator is moved to the position specified by offset. + * Otherwise, the break iterator is moved to the text line break point after the position + * specified by offset, which is equivalent to calling following. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1909,11 +2266,11 @@ declare namespace i18n { * @since 8 */ /** - * Get IndexUtil object. + * Creates an IndexUtil object. * - * @param { string } [locale] - Indicates a character string containing the locale information, including - * the language and optionally the script and region, for the NumberFormat object. - * @returns { IndexUtil } IndexUtil object. + * @param { string } [locale] - System locale, which consists of the language, script, and country/region. + * The default value is the current system locale. + * @returns { IndexUtil } IndexUtil object created based on the specified locale ID. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1944,9 +2301,9 @@ declare namespace i18n { * @since 8 */ /** - * Get a list of labels for use as a UI index + * Obtains the index list of the current locale. * - * @returns { Array<string> } a list of labels + * @returns { Array<string> } Index list of the current locale. The first and last elements are "...". * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1961,9 +2318,9 @@ declare namespace i18n { * @since 8 */ /** - * Add the index characters from a Locale to the index. + * Adds the index list of a new locale to the index list of the current locale to form a composite list. * - * @param { string } locale - The locale whose index characters are to be added. + * @param { string } locale - System locale, which consists of the language, script, and country/region. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -1979,10 +2336,10 @@ declare namespace i18n { * @since 8 */ /** - * Get corresponding index of the input text. + * Obtains the index of the text object. * - * @param { string } text - input text - * @returns { string } index of the input text + * @param { string } text - text object. + * @returns { string } Index of the text object. If no proper index is found, an empty string is returned. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -2000,10 +2357,11 @@ declare namespace i18n { */ export class Character { /** - * Determines whether the specified code point is a digit character + * Checks whether the input character is a digit. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a digit character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character is a digit, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2012,10 +2370,11 @@ declare namespace i18n { isDigit(char: string): boolean; /** - * Determines if the specified character is a space character or not. + * Checks whether the input character is a space. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a space character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character is a space, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2024,10 +2383,11 @@ declare namespace i18n { isSpaceChar(char: string): boolean; /** - * Determines if the specified character is a whitespace character + * Checks whether the input character is a whitespace. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a whitespace character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character is a white space, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2036,10 +2396,11 @@ declare namespace i18n { isWhitespace(char: string): boolean; /** - * Determines if the specified character is a RTL character or not. + * Checks whether the input character is of the right to left (RTL) language. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a RTL character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character is of the RTL language, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2048,10 +2409,11 @@ declare namespace i18n { isRTL(char: string): boolean; /** - * Determines if the specified character is a Ideographic character or not. + * Checks whether the input character is an ideographic character. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a Ideographic character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character an ideographic character, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2060,10 +2422,11 @@ declare namespace i18n { isIdeograph(char: string): boolean; /** - * Determines if the specified character is a Letter or not. + * Checks whether the input character is a letter. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a Letter + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character a letter, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2072,10 +2435,11 @@ declare namespace i18n { isLetter(char: string): boolean; /** - * Determines if the specified character is a LowerCase character or not. + * Checks whether the input character is a lowercase letter. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a LowerCase character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character a lowercase letter, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2084,10 +2448,11 @@ declare namespace i18n { isLowerCase(char: string): boolean; /** - * Determines if the specified character is a UpperCase character or not. + * Checks whether the input character is an uppercase letter. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a UpperCase character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character an uppercase letter, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2096,10 +2461,11 @@ declare namespace i18n { isUpperCase(char: string): boolean; /** - * Get the general category value of the specified character. + * Obtains the type of the input character. * - * @param { string } char - the character to be tested - * @returns { string } the general category of the specified character. + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { string } Type of the input character. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2127,7 +2493,8 @@ declare namespace i18n { * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export class Unicode { /** @@ -2148,10 +2515,11 @@ declare namespace i18n { * @since 10 */ /** - * Determines whether the specified code point is a digit character + * Checks whether the input character is a digit. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a digit character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character is a digit, and false otherwise. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2177,10 +2545,11 @@ declare namespace i18n { * @since 10 */ /** - * Determines if the specified character is a space character or not. + * Checks whether the input character is a space. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a space character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character is a space, and false otherwise. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2206,10 +2575,11 @@ declare namespace i18n { * @since 10 */ /** - * Determines if the specified character is a whitespace character + * Checks whether the input character is a whitespace. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a whitespace character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character is a white space, and false otherwise. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2235,16 +2605,19 @@ declare namespace i18n { * @since 10 */ /** - * Determines if the specified character is a RTL character or not. + * Checks whether the input character is of the right to left (RTL) language. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a RTL character + * @param { string } ch - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character is of the RTL language, and false otherwise. + * @static * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - static isRTL(char: string): boolean; + static isRTL(ch: string): boolean; /** * Determines if the specified character is a Ideographic character or not. @@ -2264,10 +2637,11 @@ declare namespace i18n { * @since 10 */ /** - * Determines if the specified character is a Ideographic character or not. + * Checks whether the input character is an ideographic character. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a Ideographic character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character an ideographic character, and false otherwise. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2293,10 +2667,11 @@ declare namespace i18n { * @since 10 */ /** - * Determines if the specified character is a Letter or not. + * Checks whether the input character is a letter. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a Letter + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character a letter, and false otherwise. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2322,10 +2697,11 @@ declare namespace i18n { * @since 10 */ /** - * Determines if the specified character is a LowerCase character or not. + * Checks whether the input character is a lowercase letter. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a LowerCase character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character a lowercase letter, and false otherwise. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2351,10 +2727,11 @@ declare namespace i18n { * @since 10 */ /** - * Determines if the specified character is a UpperCase character or not. + * Checks whether the input character is an uppercase letter. * - * @param { string } char - the character to be tested - * @returns { boolean } true if the character is a UpperCase character + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { boolean } true if the input character an uppercase letter, and false otherwise. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2380,10 +2757,11 @@ declare namespace i18n { * @since 10 */ /** - * Get the general category value of the specified character. + * Obtains the type of the input character. * - * @param { string } char - the character to be tested - * @returns { string } the general category of the specified character. + * @param { string } char - Input character. If the input is a string, only the type of the first character is + * checked. + * @returns { string } Type of the input character. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2393,9 +2771,9 @@ declare namespace i18n { } /** - * check out whether system is 24-hour system. + * Checks whether the 24-hour clock is used. * - * @returns { boolean } a boolean represent whether system is 24-hour system. + * @returns { boolean } true if the 24-hour clock is used, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 7 * @deprecated since 9 @@ -2404,11 +2782,12 @@ declare namespace i18n { export function is24HourClock(): boolean; /** - * set 24-hour system. + * Sets the 24-hour clock. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { boolean } option - represent the boolean to be set. - * @returns { boolean } a boolean represent whether setting 24-hour system success. + * @param { boolean } option - Whether to enable the 24-hour clock. The value "true" means to enable the 24-hour + * clock, and the value "false" means the opposite. + * @returns { boolean } true if the setting is successful, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 7 * @deprecated since 9 @@ -2417,12 +2796,13 @@ declare namespace i18n { export function set24HourClock(option: boolean): boolean; /** - * Add one language to preferred language List. + * Adds a preferred language to the specified position on the preferred language list. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { string } language - the language to be added. - * @param { number } [index] - the position of preferred language list to be inserted. - * @returns { boolean } a boolean represent whether language added success. + * @param { string } language - Preferred language to add. + * @param { number } [index] - Position to which the preferred language is added. The default value is the length of + * the preferred language list. + * @returns { boolean } true if the operation is successful, and false otherwise. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2431,11 +2811,12 @@ declare namespace i18n { export function addPreferredLanguage(language: string, index?: number): boolean; /** - * Remove one language from preferred language list. + * Removes a preferred language from the specified position on the preferred language list. * * @permission ohos.permission.UPDATE_CONFIGURATION - * @param { number } index - the position of removed language in preferred language list. - * @returns { boolean } a boolean represent whether removed success. + * @param { number } index - Position of the preferred language to delete. + * @returns { boolean } Whether the operation is successful. The value "true" indicates that the operation is + * successful, and the value "false" indicates the opposite. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2444,9 +2825,9 @@ declare namespace i18n { export function removePreferredLanguage(index: number): boolean; /** - * Access the system preferred language list. + * Obtains the list of preferred languages. * - * @returns { Array<string> } a string Array represent the preferred language list. + * @returns { Array<string> } List of preferred languages. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2455,9 +2836,9 @@ declare namespace i18n { export function getPreferredLanguageList(): Array<string>; /** - * Get the first preferred language of system. + * Obtains the first language in the preferred language list. * - * @returns { string } a string represent the first preferred language of system. + * @returns { string } First language in the preferred language list. * @syscap SystemCapability.Global.I18n * @since 8 * @deprecated since 9 @@ -2483,14 +2864,15 @@ declare namespace i18n { * @since 10 */ /** - * Get the default TimeZone object or the TimeZone object corresponds to zoneID. + * Obtains the TimeZone object corresponding to the specified time zone ID. * - * @param { string } [zoneID] - TimeZone ID used to create TimeZone Object. - * @returns { TimeZone } a TimeZone object corresponds to zoneID. + * @param { string } [zoneID] - Time zone ID. The default value is the system time zone. + * @returns { TimeZone } TimeZone object corresponding to the time zone ID. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export function getTimeZone(zoneID?: string): TimeZone; @@ -2513,7 +2895,8 @@ declare namespace i18n { * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export class TimeZone { /** @@ -2532,9 +2915,9 @@ declare namespace i18n { * @since 10 */ /** - * Get the id of the TimeZone object. + * Obtains the ID of the specified TimeZone object. * - * @returns { string } a string represents the timezone id. + * @returns { string } Time zone ID corresponding to the TimeZone object. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2552,11 +2935,14 @@ declare namespace i18n { * @since 7 */ /** - * Get the displayName of the TimeZone Object under the locale. + * Obtains time zone display name in the specified language. * - * @param { string } [locale] - the locale tag use to display timezone object's name. - * @param { boolean } [isDST] - wether consider daylight saving time when display timezone object's name. - * @returns { string } a string represents the display name. + * @param { string } [locale] - System locale, which consists of the language, script, and country/region. + * The default value is the current system locale. + * @param { boolean } [isDST] - Whether DST information is displayed. The value "true" indicates that DST + * information is displayed, and the value "false" indicates the opposite. + * The default value is false. + * @returns { string } Time zone display name in the specified language. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -2579,9 +2965,9 @@ declare namespace i18n { * @since 10 */ /** - * Get the raw offset of the TimeZone object. + * Obtains the raw offset of the specified time zone. * - * @returns { number } a number represents the raw offset. + * @returns { number } Raw offset of the time zone, in milliseconds. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2607,10 +2993,11 @@ declare namespace i18n { * @since 10 */ /** - * Get the offset of the TimeZone object. + * Obtains the offset of the specified time zone at the specified time. * - * @param { number } [date] - Indicates a date use to compute offset. - * @returns { number } a number represents the offset with date. + * @param { number } [date] - Specified time, in milliseconds. The default value is the system time. + * @returns { number } Time zone offset, in milliseconds. When the DST is used, the time zone offset + * is the raw time zone offset plus the DST offset. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2634,9 +3021,9 @@ declare namespace i18n { * @since 10 */ /** - * Get available TimeZone ID list. + * Obtains the list of time zone IDs supported by the system. * - * @returns { Array<string> } a string array represents the available TimeZone ID list. + * @returns { Array<string> } List of time zone IDs supported by the system. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice @@ -2652,9 +3039,9 @@ declare namespace i18n { * @since 9 */ /** - * Get available Zone City ID list. + * Obtains the list of time zone city IDs supported by the system. * - * @returns { Array<string> } a string array represents the available Zone City ID list. + * @returns { Array<string> } List of time zone city IDs supported by the system. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -2671,11 +3058,11 @@ declare namespace i18n { * @since 9 */ /** - * Get City display name in a certain locale. + * Obtains time zone city display name in the specified language. * - * @param { string } cityID - Zone City ID. - * @param { string } locale - locale used to display city name. - * @returns { string } a string represents the display name of City in locale. + * @param { string } cityID - Time zone city ID. + * @param { string } locale - System locale, which consists of the language, script, and country/region. + * @returns { string } Time zone city display name in the specified language. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -2691,10 +3078,10 @@ declare namespace i18n { * @since 9 */ /** - * Get TimeZone Object from city ID. + * Creates a TimeZone object corresponding to the specified time zone city. * - * @param { string } cityID - Zone City ID. - * @returns { TimeZone } a TimeZone Object from city ID. + * @param { string } cityID - Time zone city ID. The value must be a time zone city ID supported by the system. + * @returns { TimeZone } TimeZone object corresponding to the specified time zone city ID. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -2714,18 +3101,90 @@ declare namespace i18n { */ /** - * Get the possible time zones from the specified longitude and latitude. + * Creates an array of TimeZone objects corresponding to the specified location. * - * @param { number } longitude value - * @param { number } latitude value - * @returns { Array<TimeZone> } Returns a TimeZone array from the specified longitude and latitude. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { number } longitude - Longitude. The value range is [-180, 179.9). A positive value is used for east + * longitude and a negative value is used for west longitude. + * @param { number } latitude - Latitude. The value range is [-90, 89.9). A positive value is used for north + * latitude and a negative value is used for south latitude. + * @returns { Array<TimeZone> } TimeZone objects corresponding to the specified location. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 */ static getTimezonesByLocation(longitude: number, latitude: number): Array<TimeZone>; + + /** + * Get the zone rules object corresponds to the timezone objects. + * + * @returns { ZoneRules } Returns a ZoneRuels object which defines timezone offset changing rule. + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 20 + */ + public getZoneRules(): ZoneRules; + } + + /** + * Provides the API for obtaining timezone offset changing rules information. + * + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 20 + */ + export class ZoneRules { + /** + * Get the next timezone offset transition after date. + * + * @param { number } [ date ] - Indicates milliseconds. + * @returns { ZoneOffsetTransition } Returns a timezone offset transition after date. + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 20 + */ + public nextTransition(date?: number): ZoneOffsetTransition; + } + + /** + * Provides the API for obtaining a timezone transition information. + * + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 20 + */ + export class ZoneOffsetTransition { + /** + * Obtains the timestamp of the change in the time zone offset. + * + * @returns { number } Timestamp of the change in the time zone offset. + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 20 + */ + public getMilliseconds(): number; + + /** + * Get the offset after time zone offset trasition. + * + * @returns { number } Returns the offset after time zone offset trasition. + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 20 + */ + public getOffsetAfter(): number; + + /** + * Get the offset before time zone offset trasition. + * + * @returns { number } Returns the offset before time zone offset trasition. + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 20 + */ + public getOffsetBefore(): number; } /** @@ -2750,9 +3209,9 @@ declare namespace i18n { * @since 9 */ /** - * Get a string array of all available transliterator ids. + * Obtains a list of IDs supported by the Transliterator object. * - * @returns { string[] } a string array of all available transliterator ids. + * @returns { string[] } List of IDs supported by the Transliterator object. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -2770,12 +3229,10 @@ declare namespace i18n { * @since 9 */ /** - * Get a Transliterator that is specified by id name. + * Creates a Transliterator object based on the specified ID. * - * @param { string } id - specified the type of Transliterator. id is formed by source and dest. Transliterator will transliterate - * the input string from source format to the dest format. For example, a Simplified Chinese to Latn - * Transliterator will transform the text written in Chinese to Latn characters. - * @returns { Transliterator } Transliterator that is specified by id name. + * @param { string } id - ID supported by the Transliterator object. + * @returns { Transliterator } Transliterator object. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -2791,10 +3248,10 @@ declare namespace i18n { * @since 9 */ /** - * Transform the input text. + * Converts the input text from the source format to the target format. * - * @param { string } text - text to be transliterated. - * @returns { string } the output text that is transliterated from source format to the dest format. + * @param { string } text - Input text. + * @returns { string } Text after conversion. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -2810,7 +3267,7 @@ declare namespace i18n { * @since 10 */ /** - * Enumerates the Normalizer modes. + * Enumerates text normalization modes. * * @enum { number } * @syscap SystemCapability.Global.I18n @@ -2900,11 +3357,12 @@ declare namespace i18n { * @since 10 */ /** - * Get a Normalizer that is specified by normalize mode. + * Obtains a Normalizer object. * - * @param { NormalizerMode } mode - specified the mode of Normalizer. It must be a valid mode. - * @returns { Normalizer } Transliterator that is specified by id name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { NormalizerMode } mode - Text normalization mode. + * @returns { Normalizer } Normalizer object for text normalization. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -2921,11 +3379,12 @@ declare namespace i18n { * @since 10 */ /** - * Get a normalized string of specified mode. + * Normalizes input strings. * - * @param { string } text - text to normalized. - * @returns { string } a normalized string from source. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } text - Input strings. + * @returns { string } Normalized strings. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -2934,7 +3393,7 @@ declare namespace i18n { } /** - * Enumerates the locale suggestion type modes. + * Represents the language or country/region suggestion type. * * @enum { number } * @syscap SystemCapability.Global.I18n @@ -2943,7 +3402,7 @@ declare namespace i18n { */ export enum SuggestionType { /** - * No correlation between language and region. + * Not a recommended language or country/region. * * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -2951,7 +3410,7 @@ declare namespace i18n { */ SUGGESTION_TYPE_NONE = 0, /** - * The language related to the specified region + * Country/region recommended by the system language or language recommended by the system country/region. * * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -2959,7 +3418,7 @@ declare namespace i18n { */ SUGGESTION_TYPE_RELATED = 1, /** - * The region is SIM card region. + * Language recommended by the country/region of the SIM card. * * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -2969,7 +3428,7 @@ declare namespace i18n { } /** - * Provides the options which is used to sort the locales. + * Represents the language or country/region sorting option. * * @interface SortOptions * @syscap SystemCapability.Global.I18n @@ -2978,7 +3437,8 @@ declare namespace i18n { */ export interface SortOptions { /** - * Locale code. + * Locale information, which consists of the language, script, and country/region, for example, "zh-Hans-CN". + * The default value is the current system locale. * * @type { ?string } * @syscap SystemCapability.Global.I18n @@ -2988,7 +3448,9 @@ declare namespace i18n { locale?: string; /** - * Whether to use local names for sorting + * Whether to use the local name for sorting. The value "true" means to use the local name for sorting, and the + * value "false" means the opposite. If getLanguageInfoArray is called, the default value of isUseLocalName is + * true. If getRegionInfoArray is called, the default value of isUseLocalName is false. * * @type { ?boolean } * @syscap SystemCapability.Global.I18n @@ -2998,7 +3460,9 @@ declare namespace i18n { isUseLocalName?: boolean; /** - * Whether to put the suggested item at the top + * Whether to move the recommended language or country/region to the top in the sorting result. The value "true" + * means to move the recommended language or country/region to the top, and the value "false" means the opposite. + * The default value is true. * * @type { ?boolean } * @syscap SystemCapability.Global.I18n @@ -3009,7 +3473,7 @@ declare namespace i18n { } /** - * Provide information for a language or region + * Represents the locale information, which consists of the language, script, and country/region. * * @interface LocaleItem * @syscap SystemCapability.Global.I18n @@ -3018,7 +3482,7 @@ declare namespace i18n { */ export interface LocaleItem { /** - * language or region id. + * Language code or country/region code, for example, "zh" or "CN". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -3028,7 +3492,7 @@ declare namespace i18n { id: string; /** - * The suggestion type of the language or region. + * Language or country/region suggestion type. * * @type { SuggestionType } * @syscap SystemCapability.Global.I18n @@ -3038,7 +3502,7 @@ declare namespace i18n { suggestionType: SuggestionType; /** - * The display name of the language or region in specified language + * Representation of ID in the specified locale in SystemLocaleManager. * * @type { string } * @syscap SystemCapability.Global.I18n @@ -3048,7 +3512,7 @@ declare namespace i18n { displayName: string; /** - * The display name of the language or region in local language + * Local name of the ID. * @type { ?string } * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -3058,7 +3522,7 @@ declare namespace i18n { } /** - * Provides the informations of one time zone city. + * Represents a time zone and city combination item. * * @interface TimeZoneCityItem * @syscap SystemCapability.Global.I18n @@ -3067,7 +3531,7 @@ declare namespace i18n { */ export interface TimeZoneCityItem { /** - * Time zone id. + * Time zone ID, for example, "Asia/Shanghai". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -3077,7 +3541,7 @@ declare namespace i18n { zoneId: string; /** - * City id. + * City ID, for example, "Shanghai". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -3087,7 +3551,7 @@ declare namespace i18n { cityId: string; /** - * The display name of the city. + * City display name in the system locale. * * @type { string } * @syscap SystemCapability.Global.I18n @@ -3097,7 +3561,8 @@ declare namespace i18n { cityDisplayName: string; /** - * The time zone offset for the city. + * Offset of the time zone ID. + * * @type { number } * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -3106,7 +3571,7 @@ declare namespace i18n { offset: number; /** - * The display name of the time zone for the city. + * Time zone display name in the system locale. * * @type { string } * @syscap SystemCapability.Global.I18n @@ -3116,7 +3581,8 @@ declare namespace i18n { zoneDisplayName: string; /** - * The time zone raw offset for the city. + * Fixed offset of the time zone ID. + * * @type { ?number } * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -3134,7 +3600,7 @@ declare namespace i18n { */ export class SystemLocaleManager { /** - * A constructor used to create a SystemLocaleManager object. + * Creates a SystemLocaleManager object. * * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -3155,13 +3621,14 @@ declare namespace i18n { * @since 10 */ /** - * Obtains sorted language array for setting or startup guide app. + * Obtains the list of languages after sorting. * - * @param { Array<string> } languages - The languages whose name will be sorted and displayed. - * @param { SortOptions } options - Sort options for locale item. - * @returns { Array<LocaleItem> } Locale Informations sorted for specified options. + * @param { Array<string> } languages - Valid IDs of the languages to be sorted. + * @param { SortOptions } options - Language sorting option. + * @returns { Array<LocaleItem> } Language list after sorting. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -3182,13 +3649,15 @@ declare namespace i18n { * @since 10 */ /** - * Obtains sorted region array for setting or startup guide app. + * Obtains the IDs of the countries or regions after sorting. * - * @param { Array<string> } regions - The regions whose name will be sorted and displayed. - * @param { SortOptions } options - Sort options for locale item. - * @returns { Array<LocaleItem> } Locale Informations sorted for specified options. + * @param { Array<string> } regions - Valid IDs of the countries or regions to be sorted. + * @param { SortOptions } options - Country/region sorting option. By default, locale is the current system + * locale, isUseLocalName is false, and isSuggestedFirst is true. + * @returns { Array<LocaleItem> } IDs of the countries or regions after sorting. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -3205,9 +3674,9 @@ declare namespace i18n { * @since 10 */ /** - * Obtains sorted time zone city info array for showing time zone list + * Obtains list of time zone city items after sorting. * - * @returns { Array<TimeZoneCityItem> } Time zone city information sorted by city name. + * @returns { Array<TimeZoneCityItem> } List of time zone city items after sorting. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @syscap SystemCapability.Global.I18n * @systemapi Hide this for inner system use. @@ -3224,7 +3693,7 @@ declare namespace i18n { * @since 11 */ /** - * Provides the informations of one holiday. + * Represents the holiday information. * * @interface HolidayInfoItem * @syscap SystemCapability.Global.I18n @@ -3240,7 +3709,7 @@ declare namespace i18n { * @since 11 */ /** - * Holiday base name. + * Holiday name. * * @type { string } * @syscap SystemCapability.Global.I18n @@ -3257,7 +3726,7 @@ declare namespace i18n { * @since 11 */ /** - * Holiday start year. + * Year of the holiday. * * @type { number } * @syscap SystemCapability.Global.I18n @@ -3274,7 +3743,7 @@ declare namespace i18n { * @since 11 */ /** - * Holiday start month. + * Month of the holiday. * * @type { number } * @syscap SystemCapability.Global.I18n @@ -3291,7 +3760,7 @@ declare namespace i18n { * @since 11 */ /** - * Holiday start day. + * Day of the holiday. * * @type { number } * @syscap SystemCapability.Global.I18n @@ -3308,7 +3777,7 @@ declare namespace i18n { * @since 11 */ /** - * Holiday local name array. + * Local names of the holiday. * * @type { ?Array<HolidayLocalName> } * @syscap SystemCapability.Global.I18n @@ -3326,7 +3795,7 @@ declare namespace i18n { * @since 11 */ /** - * Provides the informations holiday locale name. + * Represents the name of a holiday in different languages. * * @interface HolidayLocalName * @syscap SystemCapability.Global.I18n @@ -3342,7 +3811,7 @@ declare namespace i18n { * @since 11 */ /** - * Holiday locale name language id. + * Language, for example, "ar", "en", or "tr". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -3359,7 +3828,7 @@ declare namespace i18n { * @since 11 */ /** - * Holiday local name. + * Local name of a holiday. For example, the Turkish name of Sacrifice Feast is Kurban Bayrami. * * @type { string } * @syscap SystemCapability.Global.I18n @@ -3393,10 +3862,11 @@ declare namespace i18n { * @since 11 */ /** - * A constructor used to create a HolidayManager object. + * Creates a HolidayManager object for parsing holiday data. * - * @param { String } icsPath - the path of the iCalendar format file to create HolidayManager object. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { String } icsPath - Path of the .ics file with the read permission granted for applications. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice @@ -3415,12 +3885,13 @@ declare namespace i18n { * @since 11 */ /** - * Returns true if the given date is a holiday. If the date is not given, - * the date object of current time is used. + * Determines whether the specified date is a holiday. * - * @param { Date } [date] - Date object whose attribute is desired. - * @returns { boolean } whether the date is a holiday day. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { Date } [date] - Date and time. Note: The month starts from 0. For example, 0 indicates January. + * The default value is the current date. + * @returns { boolean } true if the specified date is a holiday, and false otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -3439,12 +3910,12 @@ declare namespace i18n { * @since 11 */ /** - * Obtains holiday info array for a specified year + * Obtains the holiday information list of the specified year. * - * @param { number } [year] - specified holiday year. If the year is not given, - * the current year is used. - * @returns { Array<HolidayInfoItem> } holiday information array for one year. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { number } [year] - Specified year, for example, 2023.<br>The default value is the current year. + * @returns { Array<HolidayInfoItem> } Holiday information list. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice @@ -3461,7 +3932,7 @@ declare namespace i18n { * @since 11 */ /** - * Provides the informations of one entity. + * Defines a list of entities. * * @interface EntityInfoItem * @syscap SystemCapability.Global.I18n @@ -3477,7 +3948,7 @@ declare namespace i18n { * @since 11 */ /** - * Entity begin position. + * Start position of the entity in the input string. * * @type { number } * @syscap SystemCapability.Global.I18n @@ -3494,7 +3965,7 @@ declare namespace i18n { * @since 11 */ /** - * Entity end position. + * End position of the entity the input string. * * @type { number } * @syscap SystemCapability.Global.I18n @@ -3511,7 +3982,8 @@ declare namespace i18n { * @since 11 */ /** - * Entity type. Field values such as phone_number, date + * Entity type. The value can be "phone_number" or "date". "phone_number" indicates that the entity is a phone + * number, and "date" indicates that the entity is a date. * * @type { string } * @syscap SystemCapability.Global.I18n @@ -3545,10 +4017,13 @@ declare namespace i18n { * @since 11 */ /** - * A constructor used to create a EntityRecognizer object. + * Creates an entityRecognizer object. This object is used to recognize entities in the text for the specified + * locale. * - * @param { string } [locale] - specified the locale. Use current app locale by default. It must be a valid locale. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } [locale] - Locale ID, which consists of the language, script, and country/region, for example, + * "zh-Hans-CN". The default value is the current system locale. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice @@ -3566,11 +4041,12 @@ declare namespace i18n { * @since 11 */ /** - * Obtains holiday info array for a specified text + * Obtains entity information in the text object. * - * @param { string } text - the text to find entities. - * @returns { Array<EntityInfoItem> } entity information array found. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { string } text - text object. + * @returns { Array<EntityInfoItem> } List of entities in the text. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 12 @@ -3578,36 +4054,69 @@ declare namespace i18n { findEntityInfo(text: string): Array<EntityInfoItem>; } + /** + * Obtains a SimpleDateTimeFormat object based on the specified pattern string. For details about the display + * differences between the objects obtained by this API and getSimpleDateTimeFormatBySkeleton, + * see SimpleDateTimeFormat. + * + * @param { string } pattern - Valid pattern. For details about the supported characters and their meanings, see + * [Date Field Symbol Table](https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table). + * This parameter also supports custom text enclosed in single quotation marks (''). + * @param { intl.Locale } [locale] - Locale object. The default value is the current system locale. + * @returns { SimpleDateTimeFormat } SimpleDateTimeFormat object. + * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 18 + * @deprecated since 20 + */ + export function getSimpleDateTimeFormatByPattern(pattern: string, locale?: intl.Locale): SimpleDateTimeFormat; + /** * Create a SimpleDateTimeFormat object by pattern and locale. * The default value of locale is the current system locale. * * @param { string } pattern - the pattern used to create SimpleDateTimeFormat object. - * @param [ intl.Locale ] locale - the intl.Locale object used to create intl.DateTimeFormat object. + * @param [ Intl.Locale ] locale - the Intl.Locale object used to create Intl.SimpleDateTimeFormat object. * @returns { SimpleDateTimeFormat } a SimpleDateTimeFormat object created from pattern. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 8900001 - Invalid parameter. Possible causes: Parameter verification failed. + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 20 + */ + export function getSimpleDateTimeFormatByPattern(pattern: string, locale?: Intl.Locale): SimpleDateTimeFormat; + + /** + * Obtains a SimpleDateTimeFormat object based on the specified skeleton. For details about the display differences + * between the objects obtained by this API and getSimpleDateTimeFormatByPattern, see SimpleDateTimeFormat. + * + * @param { string } skeleton - Valid skeleton. For details about the supported characters and their meanings, see + * [Date Field Symbol Table](https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table). + * This parameter does not support custom text. + * @param { intl.Locale } [locale] - Locale object. The default value is the current system locale. + * @returns { SimpleDateTimeFormat } SimpleDateTimeFormat object. * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 + * @deprecated since 20 */ - export function getSimpleDateTimeFormatByPattern(pattern: string, locale?: intl.Locale): SimpleDateTimeFormat; + export function getSimpleDateTimeFormatBySkeleton(skeleton: string, locale?: intl.Locale): SimpleDateTimeFormat; /** * Create a SimpleDateTimeFormat object by skeleton and locale. This method create a pattern by locale and skeleton, the pattern * includes locale specific separators, and the fields'order will be adjust for that locale. * The default value of locale is the current system locale. * - * @param { string } skeleton - the skeleton used to create intl.DateTimeFormat object. - * @param [ intl.Locale ] locale - the intl.Locale object used to create intl.DateTimeFormat object. + * @param { string } skeleton - the skeleton used to create SimpleDateTimeFormat object. + * @param [ Intl.Locale ] locale - the Intl.Locale object used to create SimpleDateTimeFormat object. * @returns { SimpleDateTimeFormat } a SimpleDateTimeFormat object created from skeleton. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. + * @throws { BusinessError } 8900001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @atomicservice - * @since 18 + * @since 20 */ - export function getSimpleDateTimeFormatBySkeleton(skeleton: string, locale?: intl.Locale): SimpleDateTimeFormat; + export function getSimpleDateTimeFormatBySkeleton(skeleton: string, locale?: Intl.Locale): SimpleDateTimeFormat; /** * Provide a simple date time formatting interface. @@ -3618,33 +4127,47 @@ declare namespace i18n { */ export class SimpleDateTimeFormat { /** - * Obtains the formatted date strings. + * Formats the date and time. * - * @param { Date } date - Indicates the Date object to be formatted. - * @returns { string } a date string formatted based on the specified locale. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { Date } date - Date and time. Note: The month starts from 0. For example, 0 indicates January. + * @returns { string } A string containing the formatted date and time. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 */ format(date: Date): string; - } + } + + /** + * Obtains a SimpleNumberFormat object based on the specified skeleton. + * + * @param { string } skeleton - Valid skeleton. For details about the supported characters and their meanings, see + * [Number Skeletons](https://unicode-org.github.io/icu/userguide/format_parse/numbers/skeletons.html#number-skeletons). + * @param { intl.Locale } [locale] - Locale object. The default value is the current system locale. + * @returns { SimpleNumberFormat } SimpleNumberFormat object. + * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. + * @syscap SystemCapability.Global.I18n + * @crossplatform + * @atomicservice + * @since 18 + * @deprecated since 20 + */ + export function getSimpleNumberFormatBySkeleton(skeleton: string, locale?: intl.Locale): SimpleNumberFormat; /** * Create a SimpleNumberFormat object by pattern and locale. * The default value of locale is the current system locale. * * @param { string } skeleton - the skeleton used to create SimpleNumberFormat object. - * @param [ intl.Locale ] locale - the intl.Locale object used to create SimpleNumberFormat object. + * @param [ Intl.Locale ] locale - the Intl.Locale object used to create SimpleNumberFormat object. * @returns { SimpleNumberFormat } a SimpleNumberFormat object created from pattern. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 890001 - Invalid parameter. Possible causes: Parameter verification failed. + * @throws { BusinessError } 8900001 - Invalid parameter. Possible causes: Parameter verification failed. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 18 + * @since 20 */ - export function getSimpleNumberFormatBySkeleton(skeleton: string, locale?: intl.Locale): SimpleNumberFormat; + export function getSimpleNumberFormatBySkeleton(skeleton: string, locale?: Intl.Locale): SimpleNumberFormat; /** * Provide a simple number formatting interface. @@ -3655,17 +4178,16 @@ declare namespace i18n { */ export class SimpleNumberFormat { /** - * Obtains the formatted number strings. + * Formats a number. * - * @param { number } value - Indicates the number to be formatted. - * @returns { string } a number string formatted based on the specified locale. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { number } value - Number to be formatted. + * @returns { string } Formatted number. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 */ format(value: number): string; - } + } /** * Provide a number formatting interface which could format number to StyleString. @@ -3676,32 +4198,44 @@ declare namespace i18n { */ export class StyledNumberFormat { /** - * A constructor used to create a StyledNumberFormat object. + * Creates a NumberFormat object for rich text display. * - * @param { intl.NumberFormat | SimpleNumberFormat } numberFormat - Indicates the number format object that used to format number. - * @param { StyledNumberFormatOptions } [ options ] - Indicates the options used to format the number. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { intl.NumberFormat | SimpleNumberFormat } numberFormat - NumberFormat object. + * @param { StyledNumberFormatOptions } [ options ] - Configuration options of the NumberFormat object. + * The default value is the default text style. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 + * @deprecated since 20 */ constructor(numberFormat: intl.NumberFormat | SimpleNumberFormat, options?: StyledNumberFormatOptions); /** - * Obtains the formatted number strings. + * A constructor used to create a StyledNumberFormat object. * - * @param { number } value - Indicates the number to be formatted. - * @returns { StyledString } a styled number string formatted based on the specified locale. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @param { Intl.NumberFormat | SimpleNumberFormat } numberFormat - Indicates the number format object that used to format number. + * @param { StyledNumberFormatOptions } [ options ] - Indicates the options used to format the number. + * @syscap SystemCapability.Global.I18n + * @atomicservice + * @since 20 + */ + constructor(numberFormat: Intl.NumberFormat | SimpleNumberFormat, options?: StyledNumberFormatOptions); + + + /** + * Formats a number as a rich text object. + * + * @param { number } value - Number to be formatted. + * @returns { StyledString } Rich text object after formatting. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 */ format(value: number): StyledString; - } + } /** - * Provides the options of StyledNumberFormat. + * Represents optional configuration items for the NumberFormat object. * * @interface StyledNumberFormatOptions * @syscap SystemCapability.Global.I18n @@ -3710,7 +4244,7 @@ declare namespace i18n { */ export interface StyledNumberFormatOptions { /** - * Indicates the integer part's style. + * Text style for the integer part. The default value is the default text style. * * @type { ?TextStyle } * @syscap SystemCapability.Global.I18n @@ -3720,7 +4254,7 @@ declare namespace i18n { integer?: TextStyle; /** - * Indicates the decimal part's style. + * Text style for the decimal point. The default value is the default text style. * * @type { ?TextStyle } * @syscap SystemCapability.Global.I18n @@ -3730,7 +4264,7 @@ declare namespace i18n { decimal?: TextStyle; /** - * Indicates the fraction part's style. + * Text style for the fraction part. The default value is the default text style. * * @type { ?TextStyle } * @syscap SystemCapability.Global.I18n @@ -3740,7 +4274,7 @@ declare namespace i18n { fraction?: TextStyle; /** - * Indicates the unit part's style. + * Text style for the unit. The default value is the default text style. * * @type { ?TextStyle } * @syscap SystemCapability.Global.I18n @@ -3748,6 +4282,6 @@ declare namespace i18n { * @since 18 */ unit?: TextStyle; - } + } } -export default i18n; +export default i18n; \ No newline at end of file diff --git a/api/@ohos.inputMethod.d.ts b/api/@ohos.inputMethod.d.ts index 1a6650f58d56ff52b624331e2f8c1ccb2a16365c..a49ab0b3dfebde0e3b3b8f7f4eb083721e6f3130 100644 --- a/api/@ohos.inputMethod.d.ts +++ b/api/@ohos.inputMethod.d.ts @@ -64,7 +64,8 @@ declare namespace inputMethod { * Input method setting * * @returns { InputMethodSetting } the object of InputMethodSetting. - * @throws { BusinessError } 12800007 - setter error. + * @throws { BusinessError } 12800007 - input method setter error. Possible cause: + * create InputmethodSetting object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -74,7 +75,8 @@ declare namespace inputMethod { * Input method controller * * @returns { InputMethodController } the object of InputMethodController. - * @throws { BusinessError } 12800006 - input method controller error. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -84,7 +86,8 @@ declare namespace inputMethod { * Get default input method * * @returns { InputMethodProperty } property of the default input method. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -94,7 +97,8 @@ declare namespace inputMethod { * Get system input method config ability * * @returns { ElementName } the information of system input method config ability. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -110,7 +114,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -122,7 +127,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -138,7 +144,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -150,7 +157,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -175,7 +183,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -189,7 +198,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -201,7 +211,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -217,7 +228,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -231,7 +243,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -243,7 +256,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -269,7 +283,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -282,7 +297,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -303,7 +319,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -316,7 +333,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -338,7 +356,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800005 - configuration persistence error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @systemapi * @since 11 @@ -436,7 +455,8 @@ declare namespace inputMethod { * @throws { BusinessError } 202 - not system application. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @systemapi * @since 11 @@ -451,7 +471,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800001 - bundle manager error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -468,7 +489,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 12800001 - bundle manager error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -479,7 +501,8 @@ declare namespace inputMethod { * * @param { AsyncCallback<Array<InputMethodSubtype>> } callback - the callback of listCurrentInputMethodSubtype. * @throws { BusinessError } 12800001 - bundle manager error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -490,7 +513,8 @@ declare namespace inputMethod { * * @returns { Promise<Array<InputMethodSubtype>> } the promise returned by the function. * @throws { BusinessError } 12800001 - bundle manager error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -506,7 +530,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 12800001 - bundle manager error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -522,7 +547,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 12800001 - bundle manager error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -538,7 +564,8 @@ declare namespace inputMethod { * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 12800001 - bundle manager error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -549,7 +576,8 @@ declare namespace inputMethod { * * @param { AsyncCallback<Array<InputMethodProperty>> } callback - the callback of getInputMethods. * @throws { BusinessError } 12800001 - bundle manager error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -560,7 +588,8 @@ declare namespace inputMethod { * * @returns { Promise<Array<InputMethodProperty>> } the promise returned by the function. * @throws { BusinessError } 12800001 - bundle manager error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -571,7 +600,8 @@ declare namespace inputMethod { * * @returns { Array<InputMethodProperty> } the list of all inputmethod. * @throws { BusinessError } 12800001 - bundle manager error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -599,10 +629,11 @@ declare namespace inputMethod { * Show input method setting extension dialog * * @param { AsyncCallback<boolean> } callback - the callback of showOptionalInputMethods. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 - * @deprecated since 16 + * @deprecated since 18 */ showOptionalInputMethods(callback: AsyncCallback<boolean>): void; @@ -610,10 +641,11 @@ declare namespace inputMethod { * Show input method setting extension dialog * * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 - * @deprecated since 16 + * @deprecated since 18 */ showOptionalInputMethods(): Promise<boolean>; @@ -640,11 +672,32 @@ declare namespace inputMethod { * * @returns { Promise<EnabledState> } the promise returned by the function. * @throws { BusinessError } 12800004 - not an input method application. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 15 */ getInputMethodState(): Promise<EnabledState>; + + /** + * + * Change inputmethod enabled status. + * + * @permission ohos.permission.CONNECT_IME_ABILITY + * @param { string } bundleName - Indicates the bundleName of the inputmethod. + * @param { string } extensionName - Indicates the extensionName of the inputmethod. + * @param { EnabledState } enabledState - Indicates the enabledState to be changed. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 201 - permissions check fails. + * @throws { BusinessError } 202 - not system application. + * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800018 - the input method is not found. + * @throws { BusinessError } 12800019 - current operation cannot be applied to the preconfigured default input method. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @systemapi + * @since 20 + */ + enableInputMethod(bundleName: string, extensionName: string, enabledState: EnabledState): Promise<void>; } /** @@ -661,8 +714,10 @@ declare namespace inputMethod { * @param { AsyncCallback<void> } callback - the callback of attach. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -675,8 +730,10 @@ declare namespace inputMethod { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -690,18 +747,35 @@ declare namespace inputMethod { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 15 */ attach(showKeyboard: boolean, textConfig: TextConfig, requestKeyboardReason: RequestKeyboardReason): Promise<void>; + + /** + * Discard the typing text + * + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800009 - input method client detached. + * @throws { BusinessError } 12800015 - the other side does not accept the request. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + discardTypingText(): Promise<void>; + /** * Show the text input and start typing. * * @param { AsyncCallback<void> } callback - the callback of showTextInput. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -711,8 +785,10 @@ declare namespace inputMethod { * Show the text input and start typing. * * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -723,8 +799,10 @@ declare namespace inputMethod { * * @param { RequestKeyboardReason } requestKeyboardReason - requestKeyboardReason of show the keyboard . * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 15 @@ -734,8 +812,10 @@ declare namespace inputMethod { * Hide the text input and stop typing. * * @param { AsyncCallback<void> } callback - the callback of hideTextInput. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -746,8 +826,10 @@ declare namespace inputMethod { * Hide the text input and stop typing. * * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -758,8 +840,10 @@ declare namespace inputMethod { * Detach the applications from the input method manager service. * * @param { AsyncCallback<void> } callback - the callback of detach. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -769,8 +853,10 @@ declare namespace inputMethod { * Detach the applications from the input method manager service. * * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -784,8 +870,10 @@ declare namespace inputMethod { * @param { AsyncCallback<void> } callback - the callback of setCallingWindow. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -800,8 +888,10 @@ declare namespace inputMethod { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -815,8 +905,10 @@ declare namespace inputMethod { * @param { AsyncCallback<void> } callback - the callback of updateCursor. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -830,8 +922,10 @@ declare namespace inputMethod { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -847,8 +941,10 @@ declare namespace inputMethod { * @param { AsyncCallback<void> } callback - the callback of changeSelection. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -864,8 +960,10 @@ declare namespace inputMethod { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -879,8 +977,10 @@ declare namespace inputMethod { * @param { AsyncCallback<void> } callback - the callback of updateAttribute. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -894,8 +994,10 @@ declare namespace inputMethod { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800009 - input method client detached. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 @@ -905,8 +1007,10 @@ declare namespace inputMethod { * Stop input session * * @param { AsyncCallback<boolean> } callback - the callback of stopInputSession. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -916,8 +1020,10 @@ declare namespace inputMethod { * Stop input session * * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -952,8 +1058,10 @@ declare namespace inputMethod { * @permission ohos.permission.CONNECT_IME_ABILITY * @param { AsyncCallback<void> } callback - the callback of showSoftKeyboard. * @throws { BusinessError } 201 - permissions check fails. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -966,8 +1074,10 @@ declare namespace inputMethod { * @permission ohos.permission.CONNECT_IME_ABILITY * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 201 - permissions check fails. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -980,8 +1090,10 @@ declare namespace inputMethod { * @permission ohos.permission.CONNECT_IME_ABILITY * @param { AsyncCallback<void> } callback - the callback of hideSoftKeyboard. * @throws { BusinessError } 201 - permissions check fails. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -994,8 +1106,10 @@ declare namespace inputMethod { * @permission ohos.permission.CONNECT_IME_ABILITY * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 201 - permissions check fails. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1009,7 +1123,8 @@ declare namespace inputMethod { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1. Incorrect parameter types. 2. Incorrect parameter length. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @throws { BusinessError } 12800009 - input method client detached. * @throws { BusinessError } 12800014 - the input method is in basic mode. * @throws { BusinessError } 12800015 - the other side does not accept the request. @@ -1336,6 +1451,52 @@ declare namespace inputMethod { * @since 10 */ off(type: 'getTextIndexAtCursor', callback?: () => number): void; + + /** + * <p>Subscribe 'setPreviewText' event.</p> + * <p>To support the preview text feature, developers should subscribe to this event before calling attach.</p> + * + * @param { 'setPreviewText' } type - the type of subscribe event. + * @param { SetPreviewTextCallback } callback - the callback of on('setPreviewText'). + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 17 + */ + on(type: 'setPreviewText', callback: SetPreviewTextCallback): void; + + /** + * Unsubscribe 'setPreviewText' event. + * + * @param { 'setPreviewText' } type - the type of unsubscribe event. + * @param { SetPreviewTextCallback } [callback] - optional, the callback of off('setPreviewText'). + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 17 + */ + off(type: 'setPreviewText', callback?: SetPreviewTextCallback): void; + + /** + * <p>Subscribe 'finishTextPreview' event.</p> + * <p>To support the preview text feature, developers should subscribe to this event before calling attach.</p> + * + * @param { 'finishTextPreview' } type - the type of subscribe event. + * @param { Callback<void> } callback - the callback of on('finishTextPreview'). + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 17 + */ + on(type: 'finishTextPreview', callback: Callback<void>): void; + + /** + * Unsubscribe 'finishTextPreview' event. + * + * @param { 'finishTextPreview' } type - the type of unsubscribe event. + * @param { Callback<void> } [callback] - optional, the callback of off('finishTextPreview'). + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 17 + */ + off(type: 'finishTextPreview', callback?: Callback<void>): void; } /** @@ -1428,6 +1589,16 @@ declare namespace inputMethod { */ readonly iconId?: number; + /** + * The enabledState of input method + * + * @type { ?EnabledState } + * @readonly + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + readonly enabledState?: EnabledState; + /** * The extra info of input method * @@ -1617,7 +1788,47 @@ declare namespace inputMethod { * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ - NUMBER_PASSWORD + NUMBER_PASSWORD, + + /** + * The text input type is SCREEN_LOCK_PASSWORD. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + SCREEN_LOCK_PASSWORD, + + /** + * The text input type is USER_NAME. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + USER_NAME, + + /** + * The text input type is NEW_PASSWORD. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + NEW_PASSWORD, + + /** + * The text input type is NUMBER_DECIMAL. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + NUMBER_DECIMAL, + + /** + * The text input type is ONE_TIME_CODE. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + ONE_TIME_CODE } /** @@ -1759,6 +1970,24 @@ declare namespace inputMethod { * @since 10 */ enterKeyType: EnterKeyType; + + /** + * Placeholder text in the edit box. + * + * @type { ?string } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + placeholder?: string; + + /** + * The name of the ability where the edit box is located. + * + * @type { ?string } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + abilityName?: string; } /** @@ -1867,6 +2096,25 @@ declare namespace inputMethod { * @since 10 */ windowId?: number; + + /** + *Indicates that this is a new edit box. + * + * @type { ?boolean } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + newEditBox?: boolean; + + /** + * Indicates the capitalize mode of the edit box. + * + * @type { ?CapitalizeMode } + * @default CapitalizeMode.NONE + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + capitalizeMode?: CapitalizeMode; } /** @@ -2058,6 +2306,58 @@ declare namespace inputMethod { */ OTHER = 20 } + + /** + * The callback of 'setPreviewText' event. + * + * @typedef { function } SetPreviewTextCallback. + * @param { text } string - text to be previewed. + * @param { range } Range - the range of the text to be replaced by the preview text. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 17 + */ + export type SetPreviewTextCallback = (text: string, range: Range) => void; + + /** + * Enumerates the capitalization mode. + * + * @enum { number } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + export enum CapitalizeMode { + /** + * Capitalize nothing. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + NONE = 0, + + /** + * Capitalize the first letter of each sentence. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + SENTENCES, + + /** + * Capitalize the first letter of each word. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + WORDS, + + /** + * Capitalize each letter. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + CHARACTERS + } } export default inputMethod; \ No newline at end of file diff --git a/api/@ohos.inputMethodEngine.d.ts b/api/@ohos.inputMethodEngine.d.ts index d5606d04e8f643cb8839dd55a1c77c4140d29767..95e6d264caff72e1fda5fc76c717acf11ffb623d 100644 --- a/api/@ohos.inputMethodEngine.d.ts +++ b/api/@ohos.inputMethodEngine.d.ts @@ -176,6 +176,38 @@ declare namespace inputMethodEngine { */ const PATTERN_PASSWORD_NUMBER: number; + /** + * Editor of type PATTERN_USER_NAME + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + const PATTERN_USER_NAME: number = 10; + + /** + * Editor of type PATTERN_NEW_PASSWORD + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + const PATTERN_NEW_PASSWORD: number = 11; + + /** + * Editor of type PATTERN_NUMBER_DECIMAL + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + const PATTERN_NUMBER_DECIMAL: number = 12; + + /** + * Editor of type PATTERN_ONE_TIME_CODE + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + const PATTERN_ONE_TIME_CODE: number = 13; + /** * Editor in SELECTING state * @@ -381,7 +413,8 @@ declare namespace inputMethodEngine { * Hide soft keyboard * * @param { AsyncCallback<void> } callback - indicates the callback function of hide. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -391,7 +424,8 @@ declare namespace inputMethodEngine { * Hide soft keyboard * * @returns { Promise<void> } the promise returned by the function - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -419,7 +453,8 @@ declare namespace inputMethodEngine { * Exit the current input type. This function can only be called by default input method configured by system. * * @param { AsyncCallback<void> } callback - the callback of exitCurrentInputType. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800010 - not the preconfigured default input method. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 @@ -430,7 +465,8 @@ declare namespace inputMethodEngine { * Exit the current input type. This function can only be called by default input method configured by system. * * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 12800008 - input method manager service error. + * @throws { BusinessError } 12800008 - input method manager service error. Possible cause: + * a system error, such as null pointer, IPC exception. * @throws { BusinessError } 12800010 - not the preconfigured default input method. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 @@ -665,11 +701,31 @@ declare namespace inputMethodEngine { */ off(type: 'callingDisplayDidChange', callback?: Callback<number>): void; + /** + * Subscribe 'discardTypingText'. + * + * @param { 'discardTypingText' } type - the type of subscribe event. + * @param { Callback<void> } callback - the callback of on('discardTypingText'). + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + on(type: 'discardTypingText', callback: Callback<void>): void; + + /** + * Unsubscribe 'discardTypingText'. + * + * @param { 'discardTypingText' } type - the type of unsubscribe event. + * @param { Callback<void> } callback - the callback of off('discardTypingText'). + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + off(type: 'discardTypingText', callback?: Callback<void>): void; + /** * Get input method's security mode. * * @returns { SecurityMode } return security mode. - * @throws { BusinessError } 12800004 - not an input method. + * @throws { BusinessError } 12800004 - not an input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 11 */ @@ -684,7 +740,7 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<Panel> } callback - the callback of createPanel. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; - * @throws { BusinessError } 12800004 - not an input method. + * @throws { BusinessError } 12800004 - not an input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -699,7 +755,7 @@ declare namespace inputMethodEngine { * @returns { Promise<Panel> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; - * @throws { BusinessError } 12800004 - not an input method. + * @throws { BusinessError } 12800004 - not an input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -892,7 +948,8 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<boolean> } callback - the callback of sendKeyFunction. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -905,7 +962,8 @@ declare namespace inputMethodEngine { * @returns { Promise<boolean> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -918,8 +976,10 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<boolean> } callback - the callback of deleteForward. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800002 - Input method engine error. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -932,8 +992,10 @@ declare namespace inputMethodEngine { * @returns { Promise<boolean> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800002 - Input method engine error. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -945,8 +1007,10 @@ declare namespace inputMethodEngine { * @param { number } length - length of text which will be deleted forward. It can't be less than 0. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800002 - input method engine error. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -959,8 +1023,10 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<boolean> } callback - the callback of deleteBackward. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800002 - Input method engine error. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -973,8 +1039,10 @@ declare namespace inputMethodEngine { * @returns { Promise<boolean> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800002 - Input method engine error. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -986,8 +1054,10 @@ declare namespace inputMethodEngine { * @param { number } length - length of text which will be deleted backward. It can't be less than 0. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800002 - input method engine error. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1000,8 +1070,10 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<boolean> } callback - the callback of insertText. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800002 - Input method engine error. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1014,8 +1086,10 @@ declare namespace inputMethodEngine { * @returns { Promise<boolean> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800002 - Input method engine error. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1027,8 +1101,10 @@ declare namespace inputMethodEngine { * @param { string } text - text which will be inserted. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800002 - input method engine error. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1041,8 +1117,10 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<string> } callback - the callback of getForward. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - Input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1055,8 +1133,10 @@ declare namespace inputMethodEngine { * @returns { Promise<string> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - Input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1069,8 +1149,10 @@ declare namespace inputMethodEngine { * @returns { string } the text string before cursor. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1083,8 +1165,10 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<string> } callback - the callback of getBackward. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - Input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1097,8 +1181,10 @@ declare namespace inputMethodEngine { * @returns { Promise<string> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - Input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1111,8 +1197,10 @@ declare namespace inputMethodEngine { * @returns { string } the text string after cursor. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1122,7 +1210,8 @@ declare namespace inputMethodEngine { * Get attribute about editor. * * @param { AsyncCallback<EditorAttribute> } callback - the callback of getEditorAttribute. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1132,7 +1221,8 @@ declare namespace inputMethodEngine { * Get attribute about editor. * * @returns { Promise<EditorAttribute> } the promise returned by the function. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1142,7 +1232,8 @@ declare namespace inputMethodEngine { * Get attribute about editor. * * @returns { EditorAttribute } the attribute of editor. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1155,7 +1246,8 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<void> } callback - the callback of moveCursor. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1168,7 +1260,8 @@ declare namespace inputMethodEngine { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 9 */ @@ -1180,7 +1273,8 @@ declare namespace inputMethodEngine { * @param { number } direction - Indicates the distance of cursor to be moved. It can't be less than 0. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1193,7 +1287,8 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<void> } callback - the callback of selectByRange. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1206,7 +1301,8 @@ declare namespace inputMethodEngine { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1218,7 +1314,8 @@ declare namespace inputMethodEngine { * @param { Range } range - indicates the range of selected text in editor. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1231,7 +1328,8 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<void> } callback - the callback of selectByMovement. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1244,7 +1342,8 @@ declare namespace inputMethodEngine { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1256,7 +1355,8 @@ declare namespace inputMethodEngine { * @param { Movement } movement - indicates the movement of cursor when selecting. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1267,8 +1367,10 @@ declare namespace inputMethodEngine { * * @param { AsyncCallback<number> } callback - the callback of getTextIndexAtCursor, number represents the index * number of text at cursor. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - Input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1279,8 +1381,10 @@ declare namespace inputMethodEngine { * * @returns { Promise<number> } the promise returned by the function, number represents the index number of text * at cursor. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - Input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1290,8 +1394,10 @@ declare namespace inputMethodEngine { * Get the index number of text at cursor. * * @returns { number } the index number of text at cursor. - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - Input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1304,8 +1410,10 @@ declare namespace inputMethodEngine { * @param { AsyncCallback<void> } callback - the callback of sendExtendAction. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - Input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1318,8 +1426,10 @@ declare namespace inputMethodEngine { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types - * @throws { BusinessError } 12800003 - input method client error. - * @throws { BusinessError } 12800006 - Input method controller error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. + * @throws { BusinessError } 12800006 - input method controller error. Possible cause: + * create InputmethodController object failed. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 10 */ @@ -1332,7 +1442,8 @@ declare namespace inputMethodEngine { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @throws { BusinessError } 12800010 - not the preconfigured default input method. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 12 @@ -1343,7 +1454,8 @@ declare namespace inputMethodEngine { * Get info of the calling window. * * @returns { Promise<WindowInfo> } the promise returned by the function. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @throws { BusinessError } 12800012 - the input method panel does not exist. * @throws { BusinessError } 12800013 - window manager service error. * @syscap SystemCapability.MiscServices.InputMethodFramework @@ -1359,7 +1471,8 @@ declare namespace inputMethodEngine { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @throws { BusinessError } 12800011 - text preview not supported. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 12 @@ -1373,7 +1486,8 @@ declare namespace inputMethodEngine { * @param { Range } range - the range of the text to be replaced by the preview text. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @throws { BusinessError } 12800011 - text preview not supported. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 12 @@ -1384,7 +1498,8 @@ declare namespace inputMethodEngine { * Finish the text preview. * * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @throws { BusinessError } 12800011 - text preview not supported. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 12 @@ -1394,7 +1509,8 @@ declare namespace inputMethodEngine { /** * Finish the text preview. * - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @throws { BusinessError } 12800011 - text preview not supported. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 12 @@ -1409,7 +1525,8 @@ declare namespace inputMethodEngine { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1. Incorrect parameter types. 2. Incorrect parameter length. - * @throws { BusinessError } 12800003 - input method client error. + * @throws { BusinessError } 12800003 - input method client error. Possible causes: + * 1.the edit box is not focused. 2.no edit box is bound to current input method application. * @throws { BusinessError } 12800009 - input method client detached. * @throws { BusinessError } 12800014 - the input method is in basic mode. * @throws { BusinessError } 12800015 - the other side does not accept the request. @@ -1428,6 +1545,34 @@ declare namespace inputMethodEngine { * @since 15 */ recvMessage(msgHandler?: MessageHandler): void; + /** + * Get input attachOptions. + * + * @returns { AttachOptions } return attach options. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 19 + */ + getAttachOptions(): AttachOptions; + /** + * Subscribe 'attachOptionsDidChange' event. + * + * @param { 'attachOptionsDidChange' } type - the type of subscribe event. + * @param { Callback<AttachOptions> } callback - the callback of on('attachOptionsDidChange'). + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 19 + */ + on(type: 'attachOptionsDidChange', callback: Callback<AttachOptions>): void; + /** + * Unsubscribe 'attachOptionsDidChange' event. + * + * @param { 'attachOptionsDidChange' } type - the type of unsubscribe event. + * @param { Callback<AttachOptions> } [callback] - optional, the callback of off('attachOptionsDidChange'). + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 19 + */ + off(type: 'attachOptionsDidChange', callback?: Callback<AttachOptions>): void; } /** @@ -1607,6 +1752,126 @@ declare namespace inputMethodEngine { DARK_IMMERSIVE } + /** + * Gradient mode. + * + * @enum { number } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + export enum GradientMode { + /** + * Disable gradient mode. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + NONE = 0, + /** + * Linear gradient mode. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + LINEAR_GRADIENT = 1, + } + + /** + * Fluid light mode. + * + * @enum { number } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @systemapi + * @since 20 + */ + export enum FluidLightMode { + /** + * Disable fluid light mode. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @systemapi + * @since 20 + */ + NONE = 0, + + /** + * Background fluid light mode. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @systemapi + * @since 20 + */ + BACKGROUND_FLUID_LIGHT = 1, + } + + /** + * Defines the immersive effect. + * + * @interface ImmersiveEffect + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + interface ImmersiveEffect { + + /** + * The height of the gradient effect. + * + * @type { number } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + gradientHeight: number; + + /** + * Gradient mode. + * + * @type { GradientMode } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + gradientMode: GradientMode; + + /** + * Fluid light mode. + * + * @type { ?FluidLightMode } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @systemapi + * @since 20 + */ + fluidLightMode?: FluidLightMode; + } + + /** + * RequestKeyboardReason of input click. + * + * @enum { number } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 19 + */ + export enum RequestKeyboardReason { + /** + * The request keyboard reason is NONE. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 19 + */ + NONE = 0, + /** + * The request keyboard reason is MOUSE. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 19 + */ + MOUSE = 1, + /** + * The request keyboard reason is TOUCH. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 19 + */ + TOUCH = 2, + /** + * The request keyboard reason is OTHER. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 19 + */ + OTHER = 20 + } + /** * A panel is a container used to hold soft keyboard, candidate list, or status bar. * @@ -1727,7 +1992,8 @@ declare namespace inputMethodEngine { * Starts moving a panel. The panel starts moving when pressed with finger or mouse and stops moving when released. * <p>It's Only used for STATUS_BAR panel.</p> * - * @throws { BusinessError } 12800002 - input method engine error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. * @throws { BusinessError } 12800013 - window manager service error. * @throws { BusinessError } 12800017 - invalid panel type or panel flag. * @syscap SystemCapability.MiscServices.InputMethodFramework @@ -1738,19 +2004,32 @@ declare namespace inputMethodEngine { * <p>It's Only used for STATUS_BAR panel.</p> * * @throws { BusinessError } 801 - capability not supported. - * @throws { BusinessError } 12800002 - input method engine error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. * @throws { BusinessError } 12800013 - window manager service error. * @throws { BusinessError } 12800017 - invalid panel type or panel flag. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 18 */ + /** + * Starts moving a panel. The panel starts moving when pressed with finger or mouse and stops moving when released. + * <p>It's only used for STATUS_BAR panel or SOFT_KEYBOARD panel with FLG_FLOATING or FLAG_CANDIDATE.</p> + * + * @throws { BusinessError } 801 - capability not supported. + * @throws { BusinessError } 12800002 - input method engine error. + * @throws { BusinessError } 12800013 - window manager service error. + * @throws { BusinessError } 12800017 - invalid panel type or panel flag. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ startMoving(): void; /** * Get the ID of the display where the input method panel is located. * * @returns { Promise<number> } the promise returned by the function. - * @throws { BusinessError } 12800002 - input method engine error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. * @throws { BusinessError } 12800013 - window manager service error. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 15 @@ -1955,7 +2234,6 @@ declare namespace inputMethodEngine { * * @param { 'sizeUpdate' } type - the type of subscribe event. * @param { SizeUpdateCallback } callback - the callback of on('sizeUpdate'). - * @throws { BusinessError } 202 - not system application. * @syscap SystemCapability.MiscServices.InputMethodFramework * @systemapi * @since 14 @@ -1980,7 +2258,8 @@ declare namespace inputMethodEngine { * @param { ImmersiveMode } mode - Immersive mode. * @throws { BusinessError } 401 - parameter error. Possible causes: * 1.Incorrect parameter types; 2.Parameter verification failed. - * @throws { BusinessError } 12800002 - input method engine error. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1.input method panel not created. 2.the input method application does not subscribe to related events. * @throws { BusinessError } 12800013 - window manager service error. * @syscap SystemCapability.MiscServices.InputMethodFramework * @since 15 @@ -1995,6 +2274,26 @@ declare namespace inputMethodEngine { * @since 15 */ getImmersiveMode(): ImmersiveMode; + + /** + * Set immersive effect. + * If a normal application uses the fluidLightMode property and sets it to a value other than NONE, + * the interface will throw 202. + * + * @param { ImmersiveEffect } effect - immersive effect. + * @throws { BusinessError } 801 - capability not supported. + * @throws { BusinessError } 12800002 - input method engine error. Possible causes: + * 1. input method panel not created. 2. the input method application does not subscribe to related events. + * @throws { BusinessError } 12800013 - window manager service error. + * @throws { BusinessError } 12800020 - invalid immersive effect. + * 1. The gradient mode and the fluid light mode can only be used when the immersive mode is enabled. + * 2. The fluid light mode can only be used when the gradient mode is enabled. + * 3. When the gradient mode is not enabled, the gradient height can only be 0. + * @throws { BusinessError } 12800021 - this operation is allowed only after adjustPanelRect or resize is called. + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + setImmersiveEffect(effect: ImmersiveEffect): void; } /** @@ -2071,6 +2370,57 @@ declare namespace inputMethodEngine { * @since 18 */ readonly displayId?: number; + + /** + * Placeholder text in the edit box. + * + * @type { ?string } + * @readonly + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + readonly placeholder?: string; + + /** + * The name of the ability where the edit box is located. + * + * @type { ?string } + * @readonly + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + readonly abilityName?: string; + + /** + * Editor's capitalization mode. + * + * @type { ?CapitalizeMode } + * @readonly + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + readonly capitalizeMode?: CapitalizeMode; + + /** + * Gradient mode. + * + * @type { ?GradientMode } + * @readonly + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + readonly gradientMode?: GradientMode; + + /** + * Fluid light mode. + * + * @type { ?FluidLightMode } + * @readonly + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @systemapi + * @since 20 + */ + readonly fluidLightMode?: FluidLightMode; } /** @@ -2548,6 +2898,64 @@ declare namespace inputMethodEngine { */ right: number; } + /** + * Attach options. + * + * @interface AttachOptions + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 19 + */ + export interface AttachOptions { + /** + * The reason for request keyboard. + * + * @type { ?RequestKeyboardReason } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 19 + */ + requestKeyboardReason?: RequestKeyboardReason; + } + + /** + * Enumerates the capitalization mode. + * + * @enum { number } + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + export enum CapitalizeMode { + /** + * Capitalize nothing. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + NONE = 0, + + /** + * Capitalize the first letter of each sentence. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + SENTENCES, + + /** + * Capitalize the first letter of each word. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + WORDS, + + /** + * Capitalize each letter. + * + * @syscap SystemCapability.MiscServices.InputMethodFramework + * @since 20 + */ + CHARACTERS + } } export default inputMethodEngine; diff --git a/api/@ohos.intl.d.ts b/api/@ohos.intl.d.ts index 54fa45dcad24705958624f48181c0371392018a2..5195cfd5e22dfbbedd92c1f6e4a292459b595878 100644 --- a/api/@ohos.intl.d.ts +++ b/api/@ohos.intl.d.ts @@ -50,7 +50,8 @@ * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace intl { /** @@ -85,7 +86,8 @@ declare namespace intl { * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface LocaleOptions { /** @@ -120,14 +122,19 @@ declare namespace intl { * @since 11 */ /** - * Indicates the calendar. + * Calendar parameter. The value can be: "buddhist", "chinese", "coptic", "dangi", "ethioaa", "ethiopic", + * "gregory", "hebrew", "indian", "islamic", "islamic-umalqura", "islamic-tbla", "islamic-civil", + * "islamic-rgsa", "iso8601", "japanese", "persian", "roc", or "islamicc". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.LocaleOptions.calendar */ calendar?: string; @@ -163,14 +170,18 @@ declare namespace intl { * @since 11 */ /** - * Indicates the collation. + * Collation parameter. The value can be: "big5han", "compat", "dict", "direct", "ducet", "emoji", "eor", "gb2312", + * "phonebk", "phonetic", "pinyin", "reformed, "search", "searchjl", "standard", "stroke", "trad", "unihan", "zhuyin" * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.LocaleOptions.collation */ collation?: string; @@ -206,14 +217,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the hourCycle. + * Hour cycle. The value can be: "h11", "h12", "h23", or "h24". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.LocaleOptions.hourCycle */ hourCycle?: string; @@ -249,14 +263,22 @@ declare namespace intl { * @since 11 */ /** - * Indicates the numberingSystem. + * Numbering system. The value can be: "adlm", "ahom", "arab", "arabext", "bali", "beng", "bhks", "brah", "cakm", + * "cham", "deva", "diak", "fullwide", "gong", "gonm", "gujr", "guru", "hanidec", "hmng", "hmnp", "java", "kali", + * "khmr", "knda", "lana", "lanatham", "laoo", "latn", "lepc", "limb", "mathbold", "mathdbl", "mathmono", + * "mathsanb", "mathsans", "mlym", "modi", "mong", "mroo", "mtei", "mymr", "mymrshan", "mymrtlng", "newa", "nkoo", + * "olck", "orya*", "osma", "rohg", "saur", "segment", "shrd", "sind", "sinh", "sora", "sund", "takr", "talu", + * "tamldec", "telu", "thai", "tibt", "tirh", "vaii", "wara", or "wcho". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.LocaleOptions.numberingSystem */ numberingSystem?: string; @@ -292,14 +314,18 @@ declare namespace intl { * @since 11 */ /** - * Indicates the numeric. + * Wether to use special sorting rules for digits. The value "true" means to use special sorting rules for digits, + * and the value "false" means the opposite. The default value is "false". * * @type { ?boolean } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.LocaleOptions.numeric */ numeric?: boolean; @@ -335,14 +361,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the caseFirst. + * Whether upper case or lower case is sorted first. The value can be "upper", "lower", or "false". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.LocaleOptions.caseFirst */ caseFirst?: string; } @@ -375,7 +404,8 @@ declare namespace intl { * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export class Locale { /** @@ -400,13 +430,16 @@ declare namespace intl { * @since 11 */ /** - * A constructor used to create a Locale object. + * Creates a Locale object. * * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead i18n.System.getSystemLocaleObject */ constructor(); @@ -441,16 +474,18 @@ declare namespace intl { * @since 11 */ /** - * A constructor used to create a Locale object. + * Creates a Locale object. * - * @param { string } locale - Indicates a character string containing the locale information, including - * the language and optionally the script and region. - * @param { LocaleOptions } options - Indicates Locale option object use to initialize the Locale object. + * @param { string } locale - Locale information, which consists of the language, script, and country/region. + * @param { LocaleOptions } [options] - Options for creating the Locale object. * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.Locale.constructor */ constructor(locale: string, options?: LocaleOptions); @@ -476,7 +511,7 @@ declare namespace intl { * @since 11 */ /** - * Indicates the language of the locale. + * Language associated with the locale, for example, "zh". The value complies with the ISO 639 standard. * * @type { string } * @syscap SystemCapability.Global.I18n @@ -484,6 +519,8 @@ declare namespace intl { * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.language */ language: string; @@ -509,7 +546,7 @@ declare namespace intl { * @since 11 */ /** - * Indicates the script of the locale. + * Script type of the language, for example, "Hans". The value complies with the Unicode ISO 15924 standard. * * @type { string } * @syscap SystemCapability.Global.I18n @@ -517,6 +554,8 @@ declare namespace intl { * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.script */ script: string; @@ -542,7 +581,7 @@ declare namespace intl { * @since 11 */ /** - * Indicates the region of the locale. + * Country/region associated with the locale, for example, "CN". The value complies with the ISO 3166 standard. * * @type { string } * @syscap SystemCapability.Global.I18n @@ -550,6 +589,8 @@ declare namespace intl { * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.region */ region: string; @@ -578,8 +619,7 @@ declare namespace intl { * @since 11 */ /** - * Indicates the basic locale information, which is returned as a substring of - * a complete locale string. + * Locale information, which consists of the language, script, and country/region, for example, "zh-Hans-CN". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -587,6 +627,8 @@ declare namespace intl { * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.baseName */ baseName: string; @@ -612,7 +654,8 @@ declare namespace intl { * @since 11 */ /** - * Indicates the case first style of the locale. + * Whether case is taken into account for the locale's collation rules. The value can be: "upper", "lower", or + * "false". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -620,6 +663,8 @@ declare namespace intl { * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.caseFirst */ caseFirst: string; @@ -645,7 +690,9 @@ declare namespace intl { * @since 11 */ /** - * Indicates the calendar. + * Calendar for the locale. The value can be: "buddhist", "chinese", "coptic", "dangi", "ethioaa", "ethiopic", + * "gregory", "hebrew", "indian", "islamic", "islamic-umalqura", "islamic-tbla", "islamic-civil", "islamic-rgsa", + * "iso8601", "japanese", "persian", "roc", or "islamicc". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -653,6 +700,8 @@ declare namespace intl { * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.calendar */ calendar: string; @@ -678,7 +727,8 @@ declare namespace intl { * @since 11 */ /** - * Indicates the collation. + * Collation rules for the locale. The value can be: "big5han", "compat", "dict", "direct", "ducet", "eor", + * "gb2312", "phonebk", "phonetic", "pinyin", "reformed", "searchjl", "stroke", "trad", "unihan", or "zhuyin". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -686,6 +736,8 @@ declare namespace intl { * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.collation */ collation: string; @@ -711,7 +763,7 @@ declare namespace intl { * @since 11 */ /** - * Indicates the hour cycle. + * Time system for the locale. The value can be: "h11", "h12", "h23", or "h24". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -719,6 +771,8 @@ declare namespace intl { * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.hourCycle */ hourCycle: string; @@ -744,7 +798,12 @@ declare namespace intl { * @since 11 */ /** - * Indicates the numbering system. + * Numbering system for the locale. The value can be: "adlm", "ahom", "arab", "arabext", "bali", "beng", "bhks", + * "brah", "cakm", "cham", "deva", "diak", "fullwide", "gong", "gonm", "gujr", "guru", "hanidec", "hmng", "hmnp", + * "java", "kali", "khmr", "knda", "lana", "lanatham", "laoo", "latn", "lepc", "limb", "mathbold", "mathdbl", + * "mathmono", "mathsanb", "mathsans", "mlym", "modi", "mong", "mroo", "mtei", "mymr", "mymrshan", "mymrtlng", + * "newa", "nkoo", "olck", "orya", "osma", "rohg", "saur", "segment", "shrd", "sind", "sinh", "sora", "sund", + * "takr", "talu", "tamldec", "telu", "thai", "tibt", "tirh", "vaii", "wara", or "wcho". * * @type { string } * @syscap SystemCapability.Global.I18n @@ -752,6 +811,8 @@ declare namespace intl { * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.numberingSystem */ numberingSystem: string; @@ -777,7 +838,8 @@ declare namespace intl { * @since 11 */ /** - * Indicates whether it is numeric. + * Wether to use special sorting rules for digits. The value "true" means to use special sorting rules for digits, + * and the value "false" means the opposite. The default value is "false". * * @type { boolean } * @syscap SystemCapability.Global.I18n @@ -785,6 +847,8 @@ declare namespace intl { * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.numeric */ numeric: boolean; @@ -813,14 +877,16 @@ declare namespace intl { * @since 11 */ /** - * Convert the locale information to string. + * Obtains the string that represents a Locale object. * - * @returns { string } locale information in string form. + * @returns { string } String that represents the Locale object. * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.toString */ toString(): string; @@ -849,14 +915,16 @@ declare namespace intl { * @since 11 */ /** - * Maximize the locale's base information. + * Maximizes locale information by supplementing the missing script and country/region information. * - * @returns { Locale } maximized locale. + * @returns { Locale } Locale object with the script and country/region information. * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.maximize */ maximize(): Locale; @@ -885,14 +953,16 @@ declare namespace intl { * @since 11 */ /** - * Minimize the locale's base information. + * Minimizes locale information by removing the script and country/region information. * - * @returns { Locale } minimized locale. + * @returns { Locale } Locale object without the script and country/region information. * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Locale.minimize */ minimize(): Locale; } @@ -922,14 +992,16 @@ declare namespace intl { * @since 11 */ /** - * Provides the options of date time format. + * Defines the options for a DateTimeOptions object. Since API version 9, the DateTimeOptions attribute is changed + * from mandatory to optional. * * @interface DateTimeOptions * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface DateTimeOptions { /** @@ -964,14 +1036,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the locale. + * Valid locale ID, for example, "zh-Hans-CN". The default value is the current system locale. * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.locale */ locale?: string; @@ -1007,14 +1082,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the dateStyle. + * Date display format. The value can be: "long", "short", "medium", "full", or "auto". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.dateStyle */ dateStyle?: string; @@ -1050,14 +1128,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the timeStyle. + * Time display format. The value can be: "long", "short", "medium", "full", or "auto". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.timeStyle */ timeStyle?: string; @@ -1093,14 +1174,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the hourCycle. + * Hour cycle. The value can be: "h11", "h12", "h23", or "h24". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.hourCycle */ hourCycle?: string; @@ -1136,14 +1220,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the timeZone. + * Time zone in use. The value is a valid IANA time zone ID. * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.timeZone */ timeZone?: string; @@ -1179,14 +1266,22 @@ declare namespace intl { * @since 11 */ /** - * Indicates the numberingSystem. - * + * Numbering system. The value can be: "adlm", "ahom", "arab", "arabext", "bali", "beng", "bhks", + * "brah", "cakm", "cham", "deva", "diak", "fullwide", "gong", "gonm", "gujr", "guru", "hanidec", "hmng", "hmnp", + * "java", "kali", "khmr", "knda", "lana", "lanatham", "laoo", "latn", "lepc", "limb", "mathbold", "mathdbl", + * "mathmono", "mathsanb", "mathsans", "mlym", "modi", "mong", "mroo", "mtei", "mymr", "mymrshan", "mymrtlng", + * "newa", "nkoo", "olck", "orya", "osma", "rohg", "saur", "segment", "shrd", "sind", "sinh", "sora", "sund", + * "takr", "talu", "tamldec", "telu", "thai", "tibt", "tirh", "vaii", "wara", or "wcho". + * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.numberingSystem */ numberingSystem?: string; @@ -1222,14 +1317,19 @@ declare namespace intl { * @since 11 */ /** - * Indicates the hour12. + * Whether to use the 12-hour clock. The value true means to use the 12-hour clock, and the value false means the + * opposite. If both hour12 and hourCycle are set, hourCycle does not take effect. If hour12 and hourCycle are not + * set and the 24-hour clock is turned on, the default value of hour12 is false. * * @type { ?boolean } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.hour12 */ hour12?: boolean; @@ -1265,14 +1365,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the weekday. + * Week display format. The value can be: "long", "short", "narrow", or "auto". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.weekday */ weekday?: string; @@ -1308,14 +1411,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the era. + * Epoch display format. The value can be: "long", "short", "narrow", or "auto". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.era */ era?: string; @@ -1351,14 +1457,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the year. + * Year display format. The value can be: "numeric" or "2-digit". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.year */ year?: string; @@ -1394,14 +1503,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the month. + * Month display format. The value can be: "numeric", "2-digit", "long", "short", "narrow", or "auto". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.month */ month?: string; @@ -1437,14 +1549,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the day. + * Day display format. The value can be: "numeric" or "2-digit". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.day */ day?: string; @@ -1480,14 +1595,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the hour. + * Hour display format. The value can be: "numeric" or "2-digit". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.hour */ hour?: string; @@ -1523,14 +1641,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the minute. + * Minute display format. The value can be: "numeric" or "2-digit". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.minute */ minute?: string; @@ -1566,14 +1687,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the second. + * Second display format. The value can be: "numeric" or "2-digit". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.second */ second?: string; @@ -1609,14 +1733,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the timeZoneName. + * Localized representation of a time zone name. The value can be: "long", "short", or "auto". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.timeZoneName */ timeZoneName?: string; @@ -1652,14 +1779,17 @@ declare namespace intl { * @since 11 */ /** - * Indicates the dayPeriod. + * Time period display format. The value can be: "long", "short", "narrow", or "auto". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.dayPeriod */ dayPeriod?: string; @@ -1695,14 +1825,19 @@ declare namespace intl { * @since 11 */ /** - * Indicates the localeMatcher. + * Locale matching algorithm. The value can be: + * "lookup": exact match. + * "best fit": best match. * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.localeMatcher */ localeMatcher?: string; @@ -1738,14 +1873,19 @@ declare namespace intl { * @since 11 */ /** - * Indicates the formatMatcher. + * Format matching algorithm. The value can be: + * "basic": exact match. + * "best fit": best match. * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeOptions.formatMatcher */ formatMatcher?: string; } @@ -1778,7 +1918,8 @@ declare namespace intl { * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export class DateTimeFormat { /** @@ -1803,13 +1944,16 @@ declare namespace intl { * @since 11 */ /** - * A constructor used to create a DateTimeFormat object. + * Creates a DateTimeOptions object for the specified locale. * * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeFormat.constructor */ constructor(); @@ -1844,16 +1988,20 @@ declare namespace intl { * @since 11 */ /** - * A constructor used to create a DateTimeFormat object. + * Creates a DateTimeOptions object for the specified locale. * - * @param { string | Array<string> } locale - Indicates character string containing the locale information, including - * the language and optionally the script and region, for the DateTimeFormat object. - * @param { DateTimeOptions } [options] - Indicates the options used to format the date. + * @param { string | Array<string> } locale - Locale ID or locale ID array. If the input is a locale ID array, the + * first valid locale ID is used. + * @param { DateTimeOptions } [options] - Options for creating the DateTimeOptions object.<br>If no options are + * set, the default values of year, month, and day are numeric. * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeFormat.constructor */ constructor(locale: string | Array<string>, options?: DateTimeOptions); @@ -1885,15 +2033,18 @@ declare namespace intl { * @since 11 */ /** - * Obtains the formatted date strings. + * Formats the date and time. * - * @param { Date } date - Indicates the Date object to be formatted. - * @returns { string } a date string formatted based on the specified locale. + * @param { Date } date - Date and time. Note: The month starts from 0. For example, 0 indicates January. + * @returns { string } A string containing the formatted date and time. * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeFormat.format */ format(date: Date): string; @@ -1928,16 +2079,19 @@ declare namespace intl { * @since 11 */ /** - * Obtains the formatted date strings of a date range. + * Formats date and time ranges. * - * @param { Date } startDate - Indicates the start date of the date range. - * @param { Date } endDate - Indicates the end date of the date range. + * @param { Date } startDate - Start date and time. Note: The month starts from 0. For example, 0 indicates + * January. + * @param { Date } endDate - End date and time. Note: The month starts from 0. For example, 0 indicates January. * @returns { string } a date string formatted based on the specified locale. * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.DateTimeFormat.formatRange */ formatRange(startDate: Date, endDate: Date): string; @@ -1966,14 +2120,17 @@ declare namespace intl { * @since 11 */ /** - * Obtains the options of the DateTimeFormat object. + * Obtains the options for creating a DateTimeOptions object. * - * @returns { DateTimeOptions } the options of the DateTimeFormat object. + * @returns { DateTimeOptions } Options for the DateTimeOptions object. * @syscap SystemCapability.Global.I18n * @crossplatform * @form * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.DateTimeFormat.resolvedOptions */ resolvedOptions(): DateTimeOptions; } @@ -1994,13 +2151,15 @@ declare namespace intl { * @since 10 */ /** - * Provides the options of number format. + * Options for creating the NumberFormat object. Since API version 9, the NumberOptions attribute is changed from + * mandatory to optional. * * @interface NumberOptions * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface NumberOptions { /** @@ -2026,13 +2185,16 @@ declare namespace intl { * @since 10 */ /** - * Indicates the locale. + * Valid locale ID, for example, "zh-Hans-CN". The default value is the current system locale. * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.locale */ locale?: string; @@ -2059,13 +2221,18 @@ declare namespace intl { * @since 10 */ /** - * Indicates the currency. + * Currency unit. The value must comply with the [ISO-4217 standard](https://www.iso.org/iso-4217-currency-codes.html), + * for example, "EUR", "CNY", and "USD". From API version 12, a three-digit number is supported, for example, "978", + * "156", or "840". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.currency */ currency?: string; @@ -2092,13 +2259,16 @@ declare namespace intl { * @since 10 */ /** - * Indicates the currencySign. + * urrency unit symbol. The value can be "standard" or "accounting". The default value is "standard". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.currencySign */ currencySign?: string; @@ -2125,13 +2295,17 @@ declare namespace intl { * @since 10 */ /** - * Indicates the currencyDisplay. + * Currency display mode. The value can be "symbol", "narrowSymbol", "code", or "name". + * The default value is "symbol". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.currencyDisplay */ currencyDisplay?: string; @@ -2158,13 +2332,19 @@ declare namespace intl { * @since 10 */ /** - * Indicates the unit. + * Unit name, for example, "meter", "inch", or "hectare". The combination units supported since API version 18 are + * as follows: "beat-per-minute", "body-weight-per-second", "breath-per-minute", "foot-per-hour", + * "jump-rope-per-minute", "meter-per-hour", "milliliter-per-minute-per-kilogram", "rotation-per-minute", + * "step-per-minute", and "stroke-per-minute". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.unit */ unit?: string; @@ -2191,13 +2371,16 @@ declare namespace intl { * @since 10 */ /** - * Indicates the unitDisplay. + * Display format of units. The value can be "long", "short", or "narrow". The default value is "short". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.unitDisplay */ unitDisplay?: string; @@ -2224,13 +2407,20 @@ declare namespace intl { * @since 10 */ /** - * Indicates the unitUsage. + * Application scenario of units. The value can be any of the following: "default", "area-land-agricult", + * "area-land-commercl", "area-land-residntl", "length-person", "length-person-small", "length-rainfall", + * "length-road", "length-road-small", "length-snowfall", "length-vehicle", "length-visiblty", + * "length-visiblty-small", "length-person-informal", "length-person-small-informal", "length-road-informal", + * "speed-road-travel", "speed-wind", "temperature-person", "temperature-weather", "volume-vehicle-fuel", + * "elapsed-time-second", "size-file-byte", or "size-shortfile-byte". The default value is "default". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 */ unitUsage?: string; @@ -2257,13 +2447,21 @@ declare namespace intl { * @since 10 */ /** - * Indicates the signDisplay. + * Number sign display format. The value can be: + * "auto": automatically determines whether to display the plus or minus sign. + * "never": do not display the plus or minus sign. + * "always": always displays the plus or minus sign. + * "exceptZero": displays the plus or minus sign for all values except 0. + * Default value: "auto". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.signDisplay */ signDisplay?: string; @@ -2290,13 +2488,16 @@ declare namespace intl { * @since 10 */ /** - * Indicates the compactDisplay. + * Compact display format. The value can be "long" or "short". The default value is "short". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.compactDisplay */ compactDisplay?: string; @@ -2323,13 +2524,17 @@ declare namespace intl { * @since 10 */ /** - * Indicates the notation. + * Number notation. The value can be: "standard", "scientific", "engineering", or "compact". + * The default value is "standard". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.notation */ notation?: string; @@ -2356,13 +2561,16 @@ declare namespace intl { * @since 10 */ /** - * Indicates the localeMatcher. + * Locale matching algorithm. The value can be "lookup" or "best fit". The default value is "best fit". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.localeMatcher */ localeMatcher?: string; @@ -2389,13 +2597,17 @@ declare namespace intl { * @since 10 */ /** - * Indicates the style. + * Number display format. The value can be "decimal", "currency", "percent", or "unit". + * The default value is "decimal". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.style */ style?: string; @@ -2422,13 +2634,21 @@ declare namespace intl { * @since 10 */ /** - * Indicates the numberingSystem. + * Numbering system. The value can be: "adlm", "ahom", "arab", "arabext", "bali", "beng", "bhks", + * "brah", "cakm", "cham", "deva", "diak", "fullwide", "gong", "gonm", "gujr", "guru", "hanidec", "hmng", "hmnp", + * "java", "kali", "khmr", "knda", "lana", "lanatham", "laoo", "latn", "lepc", "limb", "mathbold", "mathdbl", + * "mathmono", "mathsanb", "mathsans", "mlym", "modi", "mong", "mroo", "mtei", "mymr", "mymrshan", "mymrtlng", + * "newa", "nkoo", "olck", "orya", "osma", "rohg", "saur", "segment", "shrd", "sind", "sinh", "sora", "sund", + * "takr", "talu", "tamldec", "telu", "thai", "tibt", "tirh", "vaii", "wara", or "wcho". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.numberingSystem */ numberingSystem?: string; @@ -2455,13 +2675,17 @@ declare namespace intl { * @since 10 */ /** - * Indicates the useGrouping. + * Whether to enable grouping for display. The value "true" means to enable grouping for display, and the value + * "false" means the opposite. The default value is "true". * * @type { ?boolean } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.useGrouping */ useGrouping?: boolean; @@ -2488,13 +2712,17 @@ declare namespace intl { * @since 10 */ /** - * Indicates the minimumIntegerDigits. + * Minimum number of digits allowed in the integer part of a number. The value ranges from 1 to 21. + * The default value is 1. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.minimumIntegerDigits */ minimumIntegerDigits?: number; @@ -2521,13 +2749,17 @@ declare namespace intl { * @since 10 */ /** - * Indicates the minimumFractionDigits. + * Minimum number of digits in the fraction part of a number. The value ranges from 0 to 20. + * The default value is 0. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.minimumFractionDigits */ minimumFractionDigits?: number; @@ -2554,13 +2786,17 @@ declare namespace intl { * @since 10 */ /** - * Indicates the maximumFractionDigits. + * Maximum number of digits in the fraction part of a number. The value ranges from 1 to 21. + * The default value is 3. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.maximumFractionDigits */ maximumFractionDigits?: number; @@ -2587,13 +2823,16 @@ declare namespace intl { * @since 10 */ /** - * Indicates the minimumSignificantDigits. + * Minimum number of the least significant digits. The value ranges from 1 to 21. The default value is 1. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.minimumSignificantDigits */ minimumSignificantDigits?: number; @@ -2620,44 +2859,73 @@ declare namespace intl { * @since 10 */ /** - * Indicates the maximumSignificantDigits. + * Maximum number of the least significant digits. The value ranges from 1 to 21. The default value is 21. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.maximumSignificantDigits */ maximumSignificantDigits?: number; /** - * Indicates the priority of rounding when FractionDigits options conflicts with SignificantDigits options. + * Rounding priority used when both the maximum number of fraction digits and the maximum number of valid digits + * are set. The value can be: "auto", "morePrecision", or "lessPrecision". The value "morePrecision" indicates that + * the maximum number of fraction digits is used. The value "lessPrecision" indicates that the maximum number of + * valid digits is used. The default value is "auto". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.roundingPriority */ roundingPriority?: string; /** - * Indicates the increment at which rounding should take place relative to the calculated rounding magnitude. - * Possible value are 1, 2, 5, 10, 20, 25, 50, 100, 200, 250, 500, 1000, 2000, 2500, and 5000. Default value is 1. + * Rounding increment. The value can be: 1, 2, 5, 10, 20, 25, 50, 100, 200, 250, 500, 1000, 2000, 2500, or 5000. + * The default value is 1. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.roundingIncrement */ roundingIncrement?: number; /** - * Indicates the rounding mode. + * Rounding mode. The value can be: + * "ceil": rounding up. + * "floor": rounding down. + * "expand": rounding away from 0. + * "trunc": rounding toward 0. + * "halfCeil": half-rounding up; that is, rounding up when the decimal number is greater than or equal to half of + * the increment, and rounding down otherwise. + * "halfFloor": half-rounding down; that is, rounding up when the decimal number is greater than half of the + * increment, and rounding down otherwise. + * "halfExpand": half-rounding away from 0; that is, rounding away from 0 when the decimal number is greater than + * or equal to half of the increment, and rounding toward 0 otherwise. + * "halfTrunc": half-rounding toward 0; that is, rounding away from 0 when the decimal number is greater than half + * of the increment, and rounding toward 0 otherwise. + * "halfEven": half-rounding to the nearest even number; that is, rounding away from 0 when the decimal number is + * greater than half of the increment, rounding toward 0 when the decimal number is less than half of + * the increment, and rounding to the nearest even number when the decimal number is exactly half of + * the increment. + * The default value is "halfExpand". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 + * @deprecated since 20 + * @useinstead Intl.NumberOptions.roundingMode */ roundingMode?: string; } @@ -2681,7 +2949,8 @@ declare namespace intl { * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export class NumberFormat { /** @@ -2698,12 +2967,15 @@ declare namespace intl { * @since 10 */ /** - * A constructor used to create a NumberFormat object. + * Creates a NumberFormat object for the specified locale. * * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberFormat.constructor */ constructor(); @@ -2727,15 +2999,18 @@ declare namespace intl { * @since 10 */ /** - * A constructor used to create a NumberFormat object. + * Creates a NumberFormat object for the specified locale. * - * @param { string | Array<string> } locale - Indicates a character string containing the locale information, including - * the language and optionally the script and region, for the NumberFormat object. - * @param { NumberOptions } [options] - Indicates the options used to format the number. + * @param { string | Array<string> } locale - Locale ID or locale ID array. If the input is a locale ID array, + * the first valid locale ID is used. + * @param { NumberOptions } [options] - Options for creating the NumberFormat object. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberFormat.constructor */ constructor(locale: string | Array<string>, options?: NumberOptions); @@ -2757,26 +3032,31 @@ declare namespace intl { * @since 10 */ /** - * Obtains the formatted number string. + * Formats a number. * - * @param { number } number Indicates the number to be formatted. - * @returns { string } a number string formatted based on the specified locale. + * @param { number } number - Number to be formatted. + * @returns { string } Formatted number. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberFormat.format */ format(number: number): string; /** - * Obtains the formatted number range string. + * Formats a number range. * - * @param { number } startRange Indicates the starting number of range. - * @param { number } endRange Indicates the ending number of range. - * @returns { string } a number range string formatted based on the specified locale. + * @param { number } startRange - Start number. + * @param { number } endRange - End number. + * @returns { string } Formatted number range. * @syscap SystemCapability.Global.I18n * @atomicservice * @since 18 + * @deprecated since 20 + * @useinstead Intl.NumberFormat.formatRange */ formatRange(startRange: number, endRange: number): string; @@ -2796,13 +3076,16 @@ declare namespace intl { * @since 10 */ /** - * Obtains the options of the NumberFormat object. + * Obtains the options for creating a NumberFormat object. * - * @returns { NumberOptions } the options of the NumberFormat object. + * @returns { NumberOptions } Options for creating the NumberFormat object. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.NumberFormat.resolvedOptions */ resolvedOptions(): NumberOptions; } @@ -2823,7 +3106,7 @@ declare namespace intl { * @since 10 */ /** - * Provides the options of Collator + * Defines the options for creating a Collator object. * * @interface CollatorOptions * @syscap SystemCapability.Global.I18n @@ -2858,14 +3141,16 @@ declare namespace intl { * @since 10 */ /** - * The locale matching algorithm to use. - * Possible values are "lookup" and "best fit"; the default is "best fit". + * Locale matching algorithm. The value can be "lookup" or "best fit". The default value is "best fit". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + * @deprecated since 20 + * @useinstead Intl.CollatorOptions.localeMatcher */ localeMatcher?: string; @@ -2895,14 +3180,16 @@ declare namespace intl { * @since 10 */ /** - * Whether the comparison is for sorting or for searching for matching strings. - * Possible values are "sort" and "search"; the default is "sort". + * Whether the comparison is for sorting or for searching. The value can be "sort" or "search". + * The default value is "sort". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.CollatorOptions.usage */ usage?: string; @@ -2950,20 +3237,16 @@ declare namespace intl { * @since 10 */ /** - * Which differences in the strings should lead to non-zero result values. - * Possible values are "base", "accent", "case", "variant". - * "base" are used when only strings that differ in base letters compare as unequal. - * "accent" are used when only strings that differ in base letters or accents and - * other diacritic marks compare as unequal. - * "case" are used when only strings that differ in base letters or case compare as unequal. - * "variant" are used when Strings that differ in base letters, accents and other diacritic marks, - * or case compare as unequal. + * Differences in the strings that lead to non-zero return values. The value can be "base", "accent", "case", or + * "letiant". The default value is "variant". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.CollatorOptions.sensitivity */ sensitivity?: string; @@ -2990,16 +3273,18 @@ declare namespace intl { * @since 10 */ /** - * Whether punctuation should be ignored. Default value is false. + * Whether to ignore punctuation. The value "true" means to ignore punctuation, and the value "false" means the + * opposite. The default value is "false". * * @type { ?boolean } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.CollatorOptions.ignorePunctuation */ ignorePunctuation?: boolean; - /** * Variant collations for certain locales. * @@ -3023,13 +3308,17 @@ declare namespace intl { * @since 10 */ /** - * Variant collations for certain locales. + * Collation rule. The value can be any of the following: "big5han", "compat", "dict", "direct", "ducet", "eor", + * "gb2312", "phonebk", "phonetic", "pinyin", "reformed", "searchjl", "stroke", "trad", "unihan", or "zhuyin". + * The default value is "default". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.CollatorOptions.collation */ collation?: string; @@ -3056,13 +3345,16 @@ declare namespace intl { * @since 10 */ /** - * Whether numeric collation should be used. Default value is false. + * Whether to use numeric collation. The value "true" means to use numeric collation, and the value "false" means + * the opposite. The default value is "false". * * @type { ?boolean } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.CollatorOptions.numeric */ numeric?: boolean; @@ -3092,14 +3384,16 @@ declare namespace intl { * @since 10 */ /** - * Whether upper case or lower case should sort first. - * Possible values are "upper", "lower", or "false" (use the locale's default). + * Whether upper case or lower case is sorted first. The value can be "upper", "lower", or "false". + * The default value is "false". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.CollatorOptions.caseFirst */ caseFirst?: string; } @@ -3140,12 +3434,14 @@ declare namespace intl { * @since 10 */ /** - * A constructor used to create Collator object. + * Creates a Collator object. * * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Collator.constructor */ constructor(); /** @@ -3168,15 +3464,17 @@ declare namespace intl { * @since 10 */ /** - * A constructor used to create Collator Object; + * Creates a Collator object. * - * @param { string | Array<string> } locale - Indicates a character string containing the locale information, including - * the language and optionally the script and region, for the Collator object. - * @param { CollatorOptions } [options] - Indicates the options used to initialize Collator object. + * @param { string | Array<string> } locale - Locale ID or locale ID array. If the input is a locale ID array, + * the first valid locale ID is used. + * @param { CollatorOptions } [options] - Options for creating a Collator object. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Collator.constructor */ constructor(locale: string | Array<string>, options?: CollatorOptions); @@ -3206,18 +3504,19 @@ declare namespace intl { * @since 10 */ /** - * compares two strings according to the sort order of this Collator object + * Compares two strings based on the specified collation rules. * - * @param { string } first - The first string to compare. - * @param { string } second - The second string to compare. - * @returns { number } a number indicating how first compare to second: - * a negative value if string1 comes before string2; - * a positive value if string1 comes after string2; - * 0 if they are considered equal. + * @param { string } first - First string to compare. + * @param { string } second - Second string to compare. + * @returns { number } Comparison result. If the value is a negative number, the first string comes before the + * second string. If the value is 0, the first and second strings are in the same sequence. + * If the value is a positive number, the first string is comes after the second string. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Collator.compare */ compare(first: string, second: string): number; @@ -3239,14 +3538,15 @@ declare namespace intl { * @since 10 */ /** - * Returns a new object with properties that reflect the locale and collation options computed - * during initialization of the object. + * Obtains the options for creating a Collator object. * - * @returns { CollatorOptions } a CollatorOptions object with properties that reflect the properties of this object. + * @returns { CollatorOptions } Options for creating a Collator object. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.Collator.resolvedOptions */ resolvedOptions(): CollatorOptions; } @@ -3302,14 +3602,15 @@ declare namespace intl { * @since 10 */ /** - * The locale matching algorithm to use. - * Possible values are "lookup" and "best fit"; the default is "best fit". + * Locale matching algorithm. The value can be "lookup" or "best fit". The default value is "best fit". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.PluralRulesOptions.localeMatcher */ localeMatcher?: string; @@ -3336,13 +3637,16 @@ declare namespace intl { * @since 10 */ /** - * The type to use. Possible values are: "cardinal", "ordinal" + * Collation type. The value can be "cardinal" or "ordinal". The default value is "cardinal". The value "cardinal" + * indicates a cardinal number and the value "ordinal" indicates an ordinal number. * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.PluralRulesOptions.type */ type?: string; @@ -3372,14 +3676,16 @@ declare namespace intl { * @since 10 */ /** - * The minimum number of integer digits to use. - * Possible values are from 1 to 21; the default is 1. + * Minimum number of digits allowed in the integer part of a number. The value ranges from 1 to 21. + * The default value is 1. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.PluralRulesOptions.minimumIntegerDigits */ minimumIntegerDigits?: number; @@ -3409,14 +3715,16 @@ declare namespace intl { * @since 10 */ /** - * The minimum number of fraction digits to use. - * Possible values are from 0 to 20; the default for plain number and percent formatting is 0; + * Minimum number of digits in the fraction part of a number. The value ranges from 0 to 20. + * The default value is 0. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.PluralRulesOptions.minimumFractionDigits */ minimumFractionDigits?: number; @@ -3449,15 +3757,16 @@ declare namespace intl { * @since 10 */ /** - * The maximum number of fraction digits to use. - * Possible values are from 0 to 20; - * the default for plain number formatting is the larger of minimumFractionDigits and 3; + * Maximum number of digits in the fraction part of a number. The value ranges from 1 to 21. + * The default value is 3. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.PluralRulesOptions.maximumFractionDigits */ maximumFractionDigits?: number; @@ -3487,14 +3796,15 @@ declare namespace intl { * @since 10 */ /** - * The minimum number of significant digits to use. - * Possible values are from 1 to 21; the default is 1. + * Minimum number of the least significant digits. The value ranges from 1 to 21. The default value is 1. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.PluralRulesOptions.minimumSignificantDigits */ minimumSignificantDigits?: number; @@ -3524,14 +3834,15 @@ declare namespace intl { * @since 10 */ /** - * The maximum number of significant digits to use. - * Possible values are from 1 to 21; the default is 21. + * Maximum number of the least significant digits. The value ranges from 1 to 21. The default value is 21. * * @type { ?number } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.PluralRulesOptions.maximumSignificantDigits */ maximumSignificantDigits?: number; } @@ -3572,12 +3883,14 @@ declare namespace intl { * @since 10 */ /** - * A constructor used to create PluralRules object. + * Creates a PluralRules object to obtain the singular-plural type of numbers. * * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.PluralRules.constructor */ constructor(); @@ -3601,15 +3914,17 @@ declare namespace intl { * @since 10 */ /** - * A constructor used to create PluralRules object. + * Creates a PluralRules object to obtain the singular-plural type of numbers. * - * @param { string | Array<string> } locale - Indicates a character string containing the locale information, including - * the language and optionally the script and region, for the PluralRules object. - * @param { PluralRulesOptions } [options] - Indicates the options used to initialize PluralRules object. + * @param { string | Array<string> } locale - Locale ID or locale ID array. If the input is a locale ID array, + * the first valid locale ID is used. + * @param { PluralRulesOptions } [options] - Options for creating a PluralRules object. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.PluralRules.constructor */ constructor(locale: string | Array<string>, options?: PluralRulesOptions); @@ -3633,15 +3948,18 @@ declare namespace intl { * @since 10 */ /** - * Returns a string indicating which plural rule to use for locale-aware formatting. + * Obtains the singular-plural type of the specified number. * - * @param { number } n - The number to get a plural rule for. - * @returns { string } A string representing the pluralization category of the number, - * can be one of zero, one, two, few, many or other. + * @param { number } n - Number for which the singular-plural type is to be obtained. + * @returns { string } Singular-plural type. The value can be any of the following: "zero", "one", "two", "few", + * "many", "others". For details about the meanings of different values, see + * [Language Plural Rules](https://www.unicode.org/cldr/charts/45/supplemental/language_plural_rules.html). * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.PluralRules.select */ select(n: number): string; } @@ -3697,14 +4015,15 @@ declare namespace intl { * @since 10 */ /** - * The locale matching algorithm to use. - * Possible values are: lookup, best fit + * Locale matching algorithm. The value can be "lookup" or "best fit". The default value is "best fit". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormatInputOptions.localeMatcher */ localeMatcher?: string; @@ -3734,14 +4053,15 @@ declare namespace intl { * @since 10 */ /** - * The format of output message. - * Possible values are: always, auto + * Format of the output message. The value can be "always" or "auto". The default value is "always". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormatInputOptions.numeric */ numeric?: string; @@ -3771,14 +4091,16 @@ declare namespace intl { * @since 10 */ /** - * The length of the internationalized message. - * Possible values are: long, short, narrow + * Length of an internationalized message. The value can be "long", "short", or "narrow". + * The default value is "long". * * @type { ?string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormatInputOptions.style */ style?: string; } @@ -3822,13 +4144,15 @@ declare namespace intl { * @since 10 */ /** - * The BCP 47 language tag for the locale actually used. + * Locale ID, including the language, script, and region. * * @type { string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormatResolvedOptions.locale */ locale: string; @@ -3848,14 +4172,15 @@ declare namespace intl { * @since 10 */ /** - * The length of the internationalized message. - * Possible values are: long, short, narrow + * Length of an internationalized message. The value can be "long", "short", or "narrow". * * @type { string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormatResolvedOptions.style */ style: string; @@ -3875,14 +4200,15 @@ declare namespace intl { * @since 10 */ /** - * The format of output message. - * Possible values are: always, auto + * Format of the output message. The value can be "always" or "auto". * * @type { string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormatResolvedOptions.numeric */ numeric: string; @@ -3900,13 +4226,20 @@ declare namespace intl { * @since 10 */ /** - * The value requested using the Unicode extension key "nu" or filled in as a default. + * Numbering system. The value can be: "adlm", "ahom", "arab", "arabext", "bali", "beng", "bhks", + * "brah", "cakm", "cham", "deva", "diak", "fullwide", "gong", "gonm", "gujr", "guru", "hanidec", "hmng", "hmnp", + * "java", "kali", "khmr", "knda", "lana", "lanatham", "laoo", "latn", "lepc", "limb", "mathbold", "mathdbl", + * "mathmono", "mathsanb", "mathsans", "mlym", "modi", "mong", "mroo", "mtei", "mymr", "mymrshan", "mymrtlng", + * "newa", "nkoo", "olck", "orya", "osma", "rohg", "saur", "segment", "shrd", "sind", "sinh", "sora", "sund", + * "takr", "talu", "tamldec", "telu", "thai", "tibt", "tirh", "vaii", "wara", or "wcho". * * @type { string } * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormatResolvedOptions.numberingSystem */ numberingSystem: string; } @@ -3950,12 +4283,14 @@ declare namespace intl { * @since 10 */ /** - * A constructor used to create RelativeTimeFormat object. + * Creates a RelativeTimeFormat object. * * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormat.constructor */ constructor(); @@ -3979,15 +4314,17 @@ declare namespace intl { * @since 10 */ /** - * A constructor used to create RelativeTimeFormat object. + * Creates a RelativeTimeFormat object. * - * @param { string | Array<string> } locale - Indicates a character string containing the locale information, including - * the language and optionally the script and region, for the RelativeTimeFormat object. - * @param { RelativeTimeFormatInputOptions } [options] - Indicates the options used to initialize RelativeTimeFormat object. + * @param { string | Array<string> } locale - Locale ID or locale ID array. If the input is a locale ID array, + * the first valid locale ID is used. + * @param { RelativeTimeFormatInputOptions } [options] - Options for creating a RelativeTimeFormat object. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormat.constructor */ constructor(locale: string | Array<string>, options?: RelativeTimeFormatInputOptions); @@ -4013,16 +4350,18 @@ declare namespace intl { * @since 10 */ /** - * formats a value and unit according to the locale and formatting options of this object. + * Formats a relative time. * - * @param { number } value - Numeric value to use in the internationalized relative time message. - * @param { string } unit - Unit to use in the relative time internationalized message. - * Possible values are: year, quarter, month, week, day, hour, minute, second. - * @returns { string } formatted language-sensitive relative time. + * @param { number } value - Value to format. + * @param { string } unit - Unit of the relative time.<br>The value can be any of the following: "year", "quarter", + * "month", "week", "day", "hour", "minute", or "second". + * @returns { string } Relative time after formatting. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormat.format */ format(value: number, unit: string): string; @@ -4050,17 +4389,18 @@ declare namespace intl { * @since 10 */ /** - * returns an Array of objects representing the relative time format in parts that can be used for - * custom locale-aware formatting + * Formats the relative time. * - * @param { number } value - Numeric value to use in the internationalized relative time message. - * @param { string } unit - to use in the relative time internationalized message. - * Possible values are: year, quarter, month, week, day, hour, minute, second. - * @returns { Array<object> } an Array of objects representing the relative time format in parts + * @param { number } value - Value to format. + * @param { string } unit - Unit of the relative time.<br>The value can be any of the following: "year", "quarter", + * "month", "week", "day", "hour", "minute", or "second". + * @returns { Array<object> } to parts. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormat.formatToParts */ formatToParts(value: number, unit: string): Array<object>; @@ -4082,16 +4422,17 @@ declare namespace intl { * @since 10 */ /** - * Returns a new object with properties that reflect the locale and formatting options computed during - * initialization of the object. + * Defines the formatting options for a RelativeTimeFormat object. * - * @returns { RelativeTimeFormatResolvedOptions } RelativeTimeFormatOptions which reflect the locale and formatting options of the object. + * @returns { RelativeTimeFormatResolvedOptions } Options for the RelativeTimeFormat object. * @syscap SystemCapability.Global.I18n * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead Intl.RelativeTimeFormat.resolvedOptions */ resolvedOptions(): RelativeTimeFormatResolvedOptions; } } -export default intl; +export default intl; \ No newline at end of file diff --git a/api/@ohos.matrix4.d.ets b/api/@ohos.matrix4.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..b3d8a459df2d7beb5585b177ccb696628f5b1641 --- /dev/null +++ b/api/@ohos.matrix4.d.ets @@ -0,0 +1,1062 @@ +/* + * Copyright (c) 2020-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Used to do matrix operations + * + * @namespace matrix4 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ +/** + * Used to do matrix operations + * + * @namespace matrix4 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Used to do matrix operations + * + * @namespace matrix4 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +declare namespace matrix4 { + /** + * Set translation parameters + * + * @interface TranslateOption + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Set translation parameters + * + * @interface TranslateOption + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Set translation parameters + * + * @interface TranslateOption + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + interface TranslateOption { + /** + * Indicates the translation distance of the x-axis, in px. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Indicates the translation distance of the x-axis, in px. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Indicates the translation distance of the x-axis, in px. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + x?: number; + + /** + * Indicates the translation distance of the y-axis, in px. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Indicates the translation distance of the y-axis, in px. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Indicates the translation distance of the y-axis, in px. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + y?: number; + + /** + * Indicates the translation distance of the z-axis, in px. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Indicates the translation distance of the z-axis, in px. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Indicates the translation distance of the z-axis, in px. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + z?: number; + } + + /** + * Set scaling parameters + * + * @interface ScaleOption + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Set scaling parameters + * + * @interface ScaleOption + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Set scaling parameters + * + * @interface ScaleOption + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + interface ScaleOption { + /** + * Zoom factor of the x-axis. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Zoom factor of the x-axis. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Zoom factor of the x-axis. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + x?: number; + + /** + * Zoom factor of the y-axis. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Zoom factor of the y-axis. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Zoom factor of the y-axis. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + y?: number; + + /** + * Zoom factor of the z-axis. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Zoom factor of the z-axis. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Zoom factor of the z-axis. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + z?: number; + + /** + * Transform the x-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Transform the x-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Transform the x-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + centerX?: number; + + /** + * Transform the y-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Transform the y-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Transform the y-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + centerY?: number; + } + + /** + * Set Rotation Parameters. + * + * @interface RotateOption + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Set Rotation Parameters. + * + * @interface RotateOption + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Set Rotation Parameters. + * + * @interface RotateOption + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + interface RotateOption { + /** + * Axis of rotation vector x coordinate. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Axis of rotation vector x coordinate. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Axis of rotation vector x coordinate. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + x?: number; + + /** + * Axis of rotation vector y coordinate. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Axis of rotation vector y coordinate. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Axis of rotation vector y coordinate. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + y?: number; + + /** + * Axis of rotation vector z coordinate. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Axis of rotation vector z coordinate. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Axis of rotation vector z coordinate. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + z?: number; + + /** + * Transform the x-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Transform the x-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Transform the x-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + centerX?: number; + + /** + * Transform the y-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Transform the y-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Transform the y-axis coordinate of the center point. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + centerY?: number; + + /** + * Rotation angle. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Rotation angle. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Rotation angle. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + angle?: number; + } + + + /** + * Set poly to poly point. + * + * @interface Point + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface Point { + + /** + * Point x. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + x: number; + + /** + * Point y. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + y: number; + } + + /** + * Set poly to poly point options. + * + * @interface PolyToPolyOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface PolyToPolyOptions { + + /** + * Array of point coordinates for the source polygon. + * + * @type { Array<Point> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + src: Array<Point>; + + /** + * Start point index of the source polygon, which defaults to 0. + * @type { ?number } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + srcIndex?: number; + + /** + * Array of point coordinates for the target polygon. + * + * @type { Array<Point> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + dst:Array<Point>; + + /** + * Start index of the target polygon, which defaults to 0. + * + * @type { ?number } + * @default src.Length/2 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + dstIndex?: number; + + /** + * The number of points to be used. + * If it is 0, it returns the identity matrix. + * If it is 1, it returns a translation matrix that changed before two points. + * If it is 2-4, it returns a transformation matrix. + * @type { ?number } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + pointCount?:number; + + } + /** + * Matrix4Transit. + * + * @interface Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Matrix4Transit. + * + * @interface Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Matrix4Transit. + * + * @interface Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + interface Matrix4Transit { + /** + * Copy function of Matrix, which can copy a copy of the current matrix object. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Copy function of Matrix, which can copy a copy of the current matrix object. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Copy function of Matrix, which can copy a copy of the current matrix object. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + copy(): Matrix4Transit; + + /** + * The inverse function of Matrix returns an inverse matrix of the current matrix object, that is, the effect is exactly the opposite. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * The inverse function of Matrix returns an inverse matrix of the current matrix object, that is, the effect is exactly the opposite. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * The inverse function of Matrix returns an inverse matrix of the current matrix object, that is, the effect is exactly the opposite. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + invert(): Matrix4Transit; + + /** + * Matrix superposition function, which can superpose the effects of two matrices to generate a new matrix object. + * + * @param { Matrix4Transit } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Matrix superposition function, which can superpose the effects of two matrices to generate a new matrix object. + * + * @param { Matrix4Transit } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Matrix superposition function, which can superpose the effects of two matrices to generate a new matrix object. + * + * @param { Matrix4Transit } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + combine(options: Matrix4Transit): Matrix4Transit; + + /** + * Matrix translation function, which can add the x-axis, Y-axis, or Z-axis translation effect to the current matrix. + * + * @param { TranslateOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Matrix translation function, which can add the x-axis, Y-axis, or Z-axis translation effect to the current matrix. + * + * @param { TranslateOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Matrix translation function, which can add the x-axis, Y-axis, or Z-axis translation effect to the current matrix. + * + * @param { TranslateOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + translate(options: TranslateOption): Matrix4Transit; + + /** + * Scaling function of the Matrix, which can add the x-axis, Y-axis, or Z-axis scaling effect to the current matrix. + * + * @param { ScaleOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Scaling function of the Matrix, which can add the x-axis, Y-axis, or Z-axis scaling effect to the current matrix. + * + * @param { ScaleOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Scaling function of the Matrix, which can add the x-axis, Y-axis, or Z-axis scaling effect to the current matrix. + * + * @param { ScaleOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + scale(options: ScaleOption): Matrix4Transit; + + /** + * Skew function of the Matrix, which can add the x-axis, y-axis skew effect to the current matrix. + * Skew function takes a generic point with coordinates (x0, y0, z0) to the point (x0 + x*y0, y0 + y*x0, z0), + * where x, y are fixed parameters, called the shear factors. + * + * @param { number } x - the shear factor of x-axis. + * @param { number } y - the shear factor of y-axis. + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + skew(x: number, y: number): Matrix4Transit; + + /** + * Rotation function of the Matrix. You can add the x-axis, Y-axis, or Z-axis rotation effect to the current matrix. + * + * @param { RotateOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Rotation function of the Matrix. You can add the x-axis, Y-axis, or Z-axis rotation effect to the current matrix. + * + * @param { RotateOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Rotation function of the Matrix. You can add the x-axis, Y-axis, or Z-axis rotation effect to the current matrix. + * + * @param { RotateOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + rotate(options: RotateOption): Matrix4Transit; + + /** + * Matrix coordinate point conversion function, which can apply the current transformation effect to a coordinate point. + * + * @param { [number, number] } options + * @returns { [number, number] } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Matrix coordinate point conversion function, which can apply the current transformation effect to a coordinate point. + * + * @param { [number, number] } options + * @returns { [number, number] } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Matrix coordinate point conversion function, which can apply the current transformation effect to a coordinate point. + * + * @param { [number, number] } options + * @returns { [number, number] } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + transformPoint(options: [number, number]): [number, number]; + + /** + * Sets matrix to map src to dst. + * + * @param { PolyToPolyOptions } options - polyToPoly options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setPolyToPoly(options: PolyToPolyOptions): Matrix4Transit + + } + + /** + * Constructor of Matrix, which can create a fourth-order matrix based on the input parameters. The matrix is column-first. + * + * @param { [number,number,number,number,number,number,number,number,number,number,number,number,number,number,number,number] } options + * options indicates a fourth-order matrix + * The default value: + * [1, 0, 0, 0, + * 0, 1, 0, 0, + * 0, 0, 1, 0, + * 0, 0, 0, 1] + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Constructor of Matrix, which can create a fourth-order matrix based on the input parameters. The matrix is column-first. + * + * @param { [number,number,number,number,number,number,number,number,number,number,number,number,number,number,number,number] } options + * options indicates a fourth-order matrix + * The default value: + * [1, 0, 0, 0, + * 0, 1, 0, 0, + * 0, 0, 1, 0, + * 0, 0, 0, 1] + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Constructor of Matrix, which can create a fourth-order matrix based on the input parameters. The matrix is column-first. + * + * @param { [number,number,number,number,number,number,number,number,number,number,number,number,number,number,number,number] } options + * options indicates a fourth-order matrix + * The default value: + * [1, 0, 0, 0, + * 0, 1, 0, 0, + * 0, 0, 1, 0, + * 0, 0, 0, 1] + * Fourth-order matrix notes: + * m00 { number } -The x-axis scale value, the identity matrix defaults to 1. + * m01 { number } -The second value, the rotation of the xyz axis affects this value. + * m02 { number } -The third value, the rotation of the xyz axis affects this value. + * m03 { number } -Meaningless. + * m10 { number } -The fifth value, the rotation of the xyz axis affects this value. + * m11 { number } -The y-axis scales the value, and the identity matrix defaults to 1. + * m12 { number } -The 7th value, the rotation of the xyz axis affects this value. + * m13 { number } -Meaningless. + * m20 { number } -The 9th value, the rotation of the xyz axis affects this value. + * m21 { number } -The 10th value, xyz axis rotation affects this value. + * m22 { number } -The z-axis scale value, the identity matrix defaults to 1. + * m23 { number } -Meaningless. + * m30 { number } -The x-axis translation value in px, the identity matrix defaults to 0. + * m31 { number } -Y-axis translation value, in px, the identity matrix defaults to 0. + * m32 { number } -The z-axis translation value in px, the identity matrix defaults to 0. + * m33 { number } -It takes effect in homogeneous coordinates to produce a perspective projection effect. + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Constructor of Matrix, which can create a fourth-order matrix based on the input parameters. The matrix is column-first. + * + * @param { [number,number,number,number,number,number,number,number,number,number,number,number,number,number,number,number] } options + * options indicates a fourth-order matrix + * The default value: + * [1, 0, 0, 0, + * 0, 1, 0, 0, + * 0, 0, 1, 0, + * 0, 0, 0, 1] + * Fourth-order matrix notes: + * m00 { number } -The x-axis scale value, the identity matrix defaults to 1. + * m01 { number } -The second value, the rotation and skew of the xyz axis affects this value. + * m02 { number } -The third value, the rotation of the xyz axis affects this value. + * m03 { number } -The fourth value, the perspective projection affects this value. + * m10 { number } -The fifth value, the rotation and skew of the xyz axis affects this value. + * m11 { number } -The y-axis scales the value, and the identity matrix defaults to 1. + * m12 { number } -The 7th value, the rotation of the xyz axis affects this value. + * m13 { number } -The 8th value, the perspective projection affects this value. + * m20 { number } -The 9th value, the rotation of the xyz axis affects this value. + * m21 { number } -The 10th value, xyz axis rotation affects this value. + * m22 { number } -The z-axis scale value, the identity matrix defaults to 1. + * m23 { number } -The 12th value, the perspective projection affects this value. + * m30 { number } -The x-axis translation value in px, the identity matrix defaults to 0. + * m31 { number } -Y-axis translation value, in px, the identity matrix defaults to 0. + * m32 { number } -The z-axis translation value in px, the identity matrix defaults to 0. + * m33 { number } -It takes effect in homogeneous coordinates to produce a perspective projection effect. + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + function init( + options: [ + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number + ] + ): Matrix4Transit; + + /** + * Matrix initialization function, which can return an identity matrix object. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Matrix initialization function, which can return an identity matrix object. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Matrix initialization function, which can return an identity matrix object. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + function identity(): Matrix4Transit; + + /** + * Copy function of Matrix, which can copy a copy of the current matrix object. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 10 + */ + function copy(): Matrix4Transit; + + /** + * The inverse function of Matrix returns an inverse matrix of the current matrix object, that is, the effect is exactly the opposite. + * + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 10 + */ + function invert(): Matrix4Transit; + + /** + * Matrix superposition function, which can superpose the effects of two matrices to generate a new matrix object. + * + * @param { Matrix4Transit } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 10 + */ + function combine(options: Matrix4Transit): Matrix4Transit; + + /** + * Matrix translation function, which can add the x-axis, Y-axis, or Z-axis translation effect to the current matrix. + * + * @param { TranslateOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 10 + */ + function translate(options: TranslateOption): Matrix4Transit; + + /** + * Scaling function of the Matrix, which can add the x-axis, Y-axis, or Z-axis scaling effect to the current matrix. + * + * @param { ScaleOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 10 + */ + function scale(options: ScaleOption): Matrix4Transit; + + /** + * Rotation function of the Matrix. You can add the x-axis, Y-axis, or Z-axis rotation effect to the current matrix. + * + * @param { RotateOption } options + * @returns { Matrix4Transit } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 10 + */ + function rotate(options: RotateOption): Matrix4Transit; + + /** + * Matrix coordinate point conversion function, which can apply the current transformation effect to a coordinate point. + * + * @param { [number, number] } options + * @returns { [number, number] } Return to Matrix4Transit + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 10 + */ + function transformPoint(options: [number, number]): [number, number]; +} +export default matrix4; \ No newline at end of file diff --git a/api/@ohos.matrix4.d.ts b/api/@ohos.matrix4.d.ts index b3ecb07699a87125d1eea6c4997c217ea13e8882..ebf524195c484a3603b3f9253584ebd80ac08733 100644 --- a/api/@ohos.matrix4.d.ts +++ b/api/@ohos.matrix4.d.ts @@ -84,7 +84,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Indicates the translation distance of the x-axis, in px. + * Translation distance along the x-axis. + * <br>Unit: px. + * <br>Default value: **0**. + * <br>Value range: (-∞, +∞). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -110,7 +113,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Indicates the translation distance of the y-axis, in px. + * Translation distance along the y-axis. + * <br>Unit: px. + * <br>Default value: **0**. + * <br>Value range: (-∞, +∞). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -136,7 +142,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Indicates the translation distance of the z-axis, in px. + * Translation distance along the z-axis. + * <br>Unit: px. + * <br>Default value: **0**. + * <br>Value range: (-∞, +∞). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -188,7 +197,11 @@ declare namespace matrix4 { * @since 10 */ /** - * Zoom factor of the x-axis. + * Scaling multiple along the x-axis. x > 1: The image is scaled up along the x-axis. + * <br>0 < x < 1: The image is scaled down along the x-axis. + * <br>x < 0: The image is scaled in the reverse direction of the x-axis. + * <br>Default value: **1**. + * <br>Value range: (-∞, +∞). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -214,7 +227,11 @@ declare namespace matrix4 { * @since 10 */ /** - * Zoom factor of the y-axis. + * Scaling multiple along the y-axis. y > 1: The image is scaled up along the y-axis. + * <br>0 < y < 1: The image is scaled down along the y-axis. + * <br>y < 0: The image is scaled in the reverse direction of the y-axis. + * <br>Default value: **1**. + * <br>Value range: (-∞, +∞). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -240,7 +257,11 @@ declare namespace matrix4 { * @since 10 */ /** - * Zoom factor of the z-axis. + * Scaling multiple along the z-axis. z > 1: The image is scaled up along the z-axis. + * <br>0 < z < 1: The image is scaled down along the z-axis. + * <br>z < 0: The image is scaled in the reverse direction of the z-axis. + * <br>Default value: **1**. + * <br>Value range: (-∞, +∞). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -266,7 +287,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Transform the x-axis coordinate of the center point. + * X coordinate of the center point. + * <br>Unit: px. + * <br>Default value: X-coordinate of the component center. + * <br>Value range: (-∞, +∞). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -292,7 +316,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Transform the y-axis coordinate of the center point. + * Y coordinate of the center point. + * <br>Unit: px. + * <br>Default value: Y-coordinate of the component center. + * <br>Value range: (-∞, +∞). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -344,7 +371,9 @@ declare namespace matrix4 { * @since 10 */ /** - * Axis of rotation vector x coordinate. + * X coordinate of the rotation axis vector. + * <br>Default value: **0**. + * <br>Value range: (-∞, +∞). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -370,7 +399,9 @@ declare namespace matrix4 { * @since 10 */ /** - * Axis of rotation vector y coordinate. + * Y coordinate of the rotation axis vector. + * <br>Default value: **0**. + * <br>Value range: (-∞, +∞). * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -396,7 +427,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Axis of rotation vector z coordinate. + * Z coordinate of the rotation axis vector. + * <br>Default value: **0**. + * <br>Value range: (-∞, +∞). + * <br>**NOTE**<br>The rotation axis vector is valid only when at least one of **x**, **y**, and **z** is not 0. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -422,7 +456,12 @@ declare namespace matrix4 { * @since 10 */ /** - * Transform the x-axis coordinate of the center point. + * Additional x-axis offset of the transformation center relative to the component's anchor. + * <br>Unit: px. + * <br>Default value: **0**. + * <p>**NOTE**: + * <br>The value **0** indicates that the transformation center coincides with the component's x-axis anchor. + * </p> * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -448,7 +487,12 @@ declare namespace matrix4 { * @since 10 */ /** - * Transform the y-axis coordinate of the center point. + * Additional y-axis offset of the transformation center relative to the component's anchor. + * <br>Unit: px. + * <br>Default value: **0**. + * <p>**NOTE** + * <br>The value **0** indicates that the transformation center coincides with the component's y-axis anchor. + * </p> * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -475,6 +519,7 @@ declare namespace matrix4 { */ /** * Rotation angle. + * <br>Default value: **0**. * * @type { ?number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -592,14 +637,14 @@ declare namespace matrix4 { } /** - * Matrix4Transit. + * Implements a **Matrix4Transit** object. * * @interface Matrix4Transit * @syscap SystemCapability.ArkUI.ArkUI.Full * @since 7 */ /** - * Matrix4Transit. + * Implements a **Matrix4Transit** object. * * @interface Matrix4Transit * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -607,7 +652,7 @@ declare namespace matrix4 { * @since 10 */ /** - * Matrix4Transit. + * Implements a **Matrix4Transit** object. * * @interface Matrix4Transit * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -632,9 +677,9 @@ declare namespace matrix4 { * @since 10 */ /** - * Copy function of Matrix, which can copy a copy of the current matrix object. + * Copies this matrix object. * - * @returns { Matrix4Transit } Return to Matrix4Transit + * @returns { Matrix4Transit } Copy object of the current matrix. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -658,9 +703,9 @@ declare namespace matrix4 { * @since 10 */ /** - * The inverse function of Matrix returns an inverse matrix of the current matrix object, that is, the effect is exactly the opposite. + * Inverts this matrix object. The original matrix that calls this API will be changed. * - * @returns { Matrix4Transit } Return to Matrix4Transit + * @returns { Matrix4Transit } Inverse matrix object of the current matrix. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -686,10 +731,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Matrix superposition function, which can superpose the effects of two matrices to generate a new matrix object. + * Combines the effects of two matrices to generate a new matrix object. The original matrix that calls this API will be changed. * - * @param { Matrix4Transit } options - * @returns { Matrix4Transit } Return to Matrix4Transit + * @param { Matrix4Transit } options - Matrix object to be combined. + * @returns { Matrix4Transit } Object after matrix combination. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -715,10 +760,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Matrix translation function, which can add the x-axis, Y-axis, or Z-axis translation effect to the current matrix. + * Translates this matrix object along the x, y, and z axes. The original matrix that calls this API will be changed. * - * @param { TranslateOption } options - * @returns { Matrix4Transit } Return to Matrix4Transit + * @param { TranslateOption } options - Translation configuration. + * @returns { Matrix4Transit } Matrix object after the translation. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -744,10 +789,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Scaling function of the Matrix, which can add the x-axis, Y-axis, or Z-axis scaling effect to the current matrix. + * Scales this matrix object along the x, y, and z axes. The matrix that calls this API will be changed. * - * @param { ScaleOption } options - * @returns { Matrix4Transit } Return to Matrix4Transit + * @param { ScaleOption } options - Scaling configuration. + * @returns { Matrix4Transit } Matrix object after the scaling. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -756,13 +801,11 @@ declare namespace matrix4 { scale(options: ScaleOption): Matrix4Transit; /** - * Skew function of the Matrix, which can add the x-axis, y-axis skew effect to the current matrix. - * Skew function takes a generic point with coordinates (x0, y0, z0) to the point (x0 + x*y0, y0 + y*x0, z0), - * where x, y are fixed parameters, called the shear factors. + * Skews this matrix object along the x and y axes. The matrix that calls this API will be changed. * - * @param { number } x - the shear factor of x-axis. - * @param { number } y - the shear factor of y-axis. - * @returns { Matrix4Transit } Return to Matrix4Transit + * @param { number } x - Amount of skewing on the x-axis. + * @param { number } y - Amount of skewing on the y-axis. + * @returns { Matrix4Transit } Matrix object after the skewing. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -788,10 +831,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Rotation function of the Matrix. You can add the x-axis, Y-axis, or Z-axis rotation effect to the current matrix. + * Rotates this matrix object along the x, y, and z axes. The matrix that calls this API will be changed. * - * @param { RotateOption } options - * @returns { Matrix4Transit } Return to Matrix4Transit + * @param { RotateOption } options - Rotation configuration. + * @returns { Matrix4Transit } Matrix object after the rotation. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -817,10 +860,10 @@ declare namespace matrix4 { * @since 10 */ /** - * Matrix coordinate point conversion function, which can apply the current transformation effect to a coordinate point. + * Applies the current transformation effect to a coordinate point. * - * @param { [number, number] } options - * @returns { [number, number] } Return to Matrix4Transit + * @param { [number, number] } options - Point to be transformed. + * @returns { [number, number] } Point object after matrix transformation * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -905,32 +948,29 @@ declare namespace matrix4 { * @since 11 */ /** - * Constructor of Matrix, which can create a fourth-order matrix based on the input parameters. The matrix is column-first. + * Matrix constructor, which is used to create a 4 x 4 matrix with the input parameters. Column-major order is used. * * @param { [number,number,number,number,number,number,number,number,number,number,number,number,number,number,number,number] } options - * options indicates a fourth-order matrix - * The default value: - * [1, 0, 0, 0, - * 0, 1, 0, 0, - * 0, 0, 1, 0, - * 0, 0, 0, 1] + * A number array whose length is 16 (4 x 4). For details, see **4 x 4 matrix description**. + * <br>Value range of each number: (-∞, +∞). + * <br>Default value:<br>[1, 0, 0, 0,<br>0, 1, 0, 0,<br>0, 0, 1, 0,<br>0, 0, 0, 1]. * Fourth-order matrix notes: - * m00 { number } -The x-axis scale value, the identity matrix defaults to 1. - * m01 { number } -The second value, the rotation and skew of the xyz axis affects this value. - * m02 { number } -The third value, the rotation of the xyz axis affects this value. - * m03 { number } -The fourth value, the perspective projection affects this value. - * m10 { number } -The fifth value, the rotation and skew of the xyz axis affects this value. - * m11 { number } -The y-axis scales the value, and the identity matrix defaults to 1. - * m12 { number } -The 7th value, the rotation of the xyz axis affects this value. - * m13 { number } -The 8th value, the perspective projection affects this value. - * m20 { number } -The 9th value, the rotation of the xyz axis affects this value. - * m21 { number } -The 10th value, xyz axis rotation affects this value. - * m22 { number } -The z-axis scale value, the identity matrix defaults to 1. - * m23 { number } -The 12th value, the perspective projection affects this value. - * m30 { number } -The x-axis translation value in px, the identity matrix defaults to 0. - * m31 { number } -Y-axis translation value, in px, the identity matrix defaults to 0. - * m32 { number } -The z-axis translation value in px, the identity matrix defaults to 0. - * m33 { number } -It takes effect in homogeneous coordinates to produce a perspective projection effect. + * m00 { number } -Scaling value of the x-axis. The default value is **1** for the identity matrix. + * m01 { number } -The second value, which is affected by the rotation or tilt of the x, y, and z axes. + * m02 { number } -The third value, which is affected by the rotation of the x, y, and z axes. + * m03 { number } -The fourth value, which is affected by perspective projection. + * m10 { number } -The fifth value, which is affected by the rotation or tilt of the x, y, and z axes. + * m11 { number } -Scaling value of the y-axis. The default value is **1** for the identity matrix. + * m12 { number } -The seventh value, which is affected by the rotation of the x, y, and z axes. + * m13 { number } -The eighth value, which is affected by perspective projection. + * m20 { number } -The ninth value, which is affected by the rotation of the x, y, and z axes. + * m21 { number } -The tenth value, which is affected by the rotation of the x, y, and z axes. + * m22 { number } -Scaling value of the z-axis. The default value is **1** for the identity matrix. + * m23 { number } -The 12th value, which is affected by perspective projection. + * m30 { number } -Translation value of the x-axis, in px. The default value is **0** for the identity matrix. + * m31 { number } -Translation value of the y-axis, in px. The default value is **0** for the identity matrix. + * m32 { number } -Translation value of the z-axis, in px. The default value is **0** for the identity matrix. + * m33 { number } -Valid in homogeneous coordinates, presenting the perspective projection effect. * @returns { Matrix4Transit } Return to Matrix4Transit * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -974,9 +1014,9 @@ declare namespace matrix4 { * @since 10 */ /** - * Matrix initialization function, which can return an identity matrix object. + * Constructs an identity matrix. * - * @returns { Matrix4Transit } Return to Matrix4Transit + * @returns { Matrix4Transit } Identity matrix object. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice diff --git a/api/@ohos.measure.d.ets b/api/@ohos.measure.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..617503d81be79cc7b123421e8027a5ba4479bbd4 --- /dev/null +++ b/api/@ohos.measure.d.ets @@ -0,0 +1,402 @@ +/* + * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { FontStyle, FontWeight, TextAlign, TextOverflow, TextCase, WordBreak } from './arkui/component/enums' +import { SizeOptions } from './arkui/component/units'; +import { Resource } from './global/resource' + +/** + * Defines the options of MeasureText. + * + * @interface MeasureOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ +/** + * Defines the options of MeasureText. + * + * @interface MeasureOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Defines the options of MeasureText. + * + * @interface MeasureOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface MeasureOptions { + /** + * Text to display. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Text to display. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Text to display. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + textContent: string | Resource; + + /** + * Text display area of width. + * + * @type { ?(number | string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Text display area of width. + * + * @type { ?(number | string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constraintWidth?: number | string | Resource; + + /** + * Font Size. + * + * @type { ?(number | string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Font Size. + * + * @type { ?(number | string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontSize?: number | string | Resource; + + /** + * Font style. + * + * @type { ?(number | FontStyle) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Font style. + * + * @type { ?(number | FontStyle) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontStyle?: number | FontStyle; + + /** + * Font weight. + * + * @type { ?(number | string | FontWeight) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Font weight. + * + * @type { ?(number | string | FontWeight) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontWeight?: number | string | FontWeight; + + /** + * Font list of text. + * + * @type { ?(string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Font list of text. + * + * @type { ?(string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fontFamily?: string | Resource; + + /** + * Distance between text fonts. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Distance between text fonts. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + letterSpacing?: number | string; + + /** + * Alignment of text. + * + * @type { ?(number | TextAlign) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Alignment of text. + * + * @type { ?(number | TextAlign) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + textAlign?: number | TextAlign; + + /** + * Overflow mode of the font. + * + * @type { ?(number | TextOverflow) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Overflow mode of the font. + * + * @type { ?(number | TextOverflow) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + overflow?: number | TextOverflow; + + /** + * Maximum number of lines of text. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Maximum number of lines of text. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + maxLines?: number; + + /** + * Vertical center mode of the font. + * + * @type { ?(number | string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Vertical center mode of the font. + * + * @type { ?(number | string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + lineHeight?: number | string | Resource; + + /** + * Baseline offset. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Baseline offset. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + baselineOffset?: number | string; + + /** + * Type of letter in the text font + * + * @type { ?(number | TextCase) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Type of letter in the text font + * + * @type { ?(number | TextCase) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + textCase?: number | TextCase; + + /** + * Specify the indentation of the first line in a text-block. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Specify the indentation of the first line in a text-block. + * + * @type { ?(number | string) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + textIndent?: number | string; + + /** + * Set the word break type. + * + * @type { ?WordBreak } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set the word break type. + * + * @type { ?WordBreak } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + wordBreak?: WordBreak; +} + +/** + * Defines the Measure interface. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ +/** + * Defines the Measure interface. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class MeasureText { + /** + * Displays the textWidth. + * + * @param { MeasureOptions } options - Options. + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Displays the textWidth. + * + * @param { MeasureOptions } options - Options. + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Displays the textWidth. + * + * @param { MeasureOptions } options - Options. + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static measureText(options: MeasureOptions): number; + + /** + * Displays the text width and height. + * + * @param { MeasureOptions } options - Options of measure area occupied by text. + * @returns { SizeOptions } width and height for text to display \ + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 10 + */ + /** + * Displays the text width and height. + * + * @param { MeasureOptions } options - Options of measure area occupied by text. + * @returns { SizeOptions } width and height for text to display \ + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Displays the text width and height. + * + * @param { MeasureOptions } options - Options of measure area occupied by text. + * @returns { SizeOptions } width and height for text to display \ + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static measureTextSize(options: MeasureOptions): SizeOptions; +} diff --git a/api/@ohos.mediaquery.d.ets b/api/@ohos.mediaquery.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..4d345de895572f6e280ff7ba45d6ee15d00ddccc --- /dev/null +++ b/api/@ohos.mediaquery.d.ets @@ -0,0 +1,344 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { Callback } from './@ohos.base'; + +/** + * Used to do mediaquery operations. + * + * @namespace mediaquery + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ +/** + * Used to do mediaquery operations. + * + * @namespace mediaquery + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * Used to do mediaquery operations. + * + * @namespace mediaquery + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +/** + * Used to do mediaquery operations. + * + * @namespace mediaquery + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ +declare namespace mediaquery { + + /** + * Defines the Result of mediaquery. + * + * @interface MediaQueryResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Defines the Result of mediaquery. + * + * @interface MediaQueryResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Defines the Result of mediaquery. + * + * @interface MediaQueryResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Defines the Result of mediaquery. + * + * @interface MediaQueryResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + export interface MediaQueryResult { + /** + * Whether the match condition is met. + * This parameter is read-only. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Whether the match condition is met. + * This parameter is read-only. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Whether the match condition is met. + * This parameter is read-only. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Whether the match condition is met. + * This parameter is read-only. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + readonly matches: boolean; + + /** + * Matching condition of a media event. + * This parameter is read-only. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Matching condition of a media event. + * This parameter is read-only. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Matching condition of a media event. + * This parameter is read-only. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Matching condition of a media event. + * This parameter is read-only. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + readonly media: string; + } + + /** + * Defines the Listener of mediaquery. + * + * @interface MediaQueryListener + * @extends MediaQueryResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Defines the Listener of mediaquery. + * + * @interface MediaQueryListener + * @extends MediaQueryResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Defines the Listener of mediaquery. + * + * @interface MediaQueryListener + * @extends MediaQueryResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Defines the Listener of mediaquery. + * + * @interface MediaQueryListener + * @extends MediaQueryResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + export interface MediaQueryListener extends MediaQueryResult { + /** + * Registers a callback with the corresponding query condition by using the handle. + * This callback is triggered when the media attributes change. + * + * @param { 'change' } type + * @param { Callback<MediaQueryResult> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Registers a callback with the corresponding query condition by using the handle. + * This callback is triggered when the media attributes change. + * + * @param { 'change' } type + * @param { Callback<MediaQueryResult> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Registers a callback with the corresponding query condition by using the handle. + * This callback is triggered when the media attributes change. + * + * @param { 'change' } type + * @param { Callback<MediaQueryResult> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Registers a callback with the corresponding query condition by using the handle. + * This callback is triggered when the media attributes change. + * + * @param { 'change' } type + * @param { Callback<MediaQueryResult> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + on(type: 'change', callback: Callback<MediaQueryResult>): void; + + /** + * Deregisters a callback with the corresponding query condition by using the handle. + * This callback is not triggered when the media attributes chang. + * + * @param { 'change' } type + * @param { Callback<MediaQueryResult> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Deregisters a callback with the corresponding query condition by using the handle. + * This callback is not triggered when the media attributes chang. + * + * @param { 'change' } type + * @param { Callback<MediaQueryResult> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Deregisters a callback with the corresponding query condition by using the handle. + * This callback is not triggered when the media attributes chang. + * + * @param { 'change' } type + * @param { Callback<MediaQueryResult> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Deregisters a callback with the corresponding query condition by using the handle. + * This callback is not triggered when the media attributes chang. + * + * @param { 'change' } type + * @param { Callback<MediaQueryResult> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + off(type: 'change', callback?: Callback<MediaQueryResult>): void; + } + + /** + * Sets the media query criteria and returns the corresponding listening handle + * + * @param { string } condition + * @returns { MediaQueryListener } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Sets the media query criteria and returns the corresponding listening handle + * + * @param { string } condition + * @returns { MediaQueryListener } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Sets the media query criteria and returns the corresponding listening handle + * + * @param { string } condition + * @returns { MediaQueryListener } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + /** + * Sets the media query criteria and returns the corresponding listening handle + * + * @param { string } condition + * @returns { MediaQueryListener } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 12 + */ + export function matchMediaSync(condition: string): MediaQueryListener; +} + +export default mediaquery; \ No newline at end of file diff --git a/api/@ohos.multimedia.audio.d.ts b/api/@ohos.multimedia.audio.d.ts index e25e77e07181a248e875e76199089f3ca6302911..f815ccba3da8aeecd5db10de8bd901ed1526c6ca 100644 --- a/api/@ohos.multimedia.audio.d.ts +++ b/api/@ohos.multimedia.audio.d.ts @@ -156,6 +156,10 @@ declare namespace audio { */ /** * Obtains an {@link AudioManager} instance. + * <p><strong>NOTE</strong>: + * The {@link AudioManager} instance is not a singleton. + * </p> + * * @returns { AudioManager } this {@link AudioManager} object. * @syscap SystemCapability.Multimedia.Audio.Core * @crossplatform @@ -206,14 +210,32 @@ declare namespace audio { function createAudioCapturer(options: AudioCapturerOptions): Promise<AudioCapturer>; /** - * Obtains an {@link AudioRenderer} instance. This method uses an asynchronous callback to return the renderer instance. + * Obtains an {@link AudioRenderer} instance. + * This method uses an asynchronous callback to return the renderer instance. * @param { AudioRendererOptions } options - Renderer configurations. * @param { AsyncCallback<AudioRenderer> } callback - Callback used to return the audio renderer instance. * @syscap SystemCapability.Multimedia.Audio.Renderer * @since 8 */ /** - * Obtains an {@link AudioRenderer} instance. This method uses an asynchronous callback to return the renderer instance. + * Obtains an {@link AudioRenderer} instance. + * This method uses a promise to return the renderer instance. + * + * The AudioRenderer instance is used to play streaming audio data. + * When using AudioRenderer apis, there are many instructions for application + * to achieve better performance and lower power consumption: + * In music or audiobook background playback situation, you can have low power + * consumption by following this best practices document **Low-Power Rules in Music Playback Scenarios**. + * And for navigation situation, you can follow **Low-Power Rules in Navigation and Positioning Scenarios**. + * + * Application developer should also be careful when app goes to background, please check if your audio playback + * is still needed, see **Audio Resources** in best practices document. + * And avoiding to send silence audio data continuously to waste system resources, otherwise system will take + * control measures when this behavior is detected, see **Audio Playback** in best practices document. + * + * If you want to use AudioRenderer api to implement a music playback application, there are also many interactive + * scenes to consider, see **Developing an Audio Application** in best practices document. + * * @param { AudioRendererOptions } options - Renderer configurations. * @param { AsyncCallback<AudioRenderer> } callback - Callback used to return the audio renderer instance. * @syscap SystemCapability.Multimedia.Audio.Renderer @@ -223,14 +245,32 @@ declare namespace audio { function createAudioRenderer(options: AudioRendererOptions, callback: AsyncCallback<AudioRenderer>): void; /** - * Obtains an {@link AudioRenderer} instance. This method uses a promise to return the renderer instance. + * Obtains an {@link AudioRenderer} instance. + * This method uses a promise to return the renderer instance. * @param { AudioRendererOptions } options - Renderer configurations. * @returns { Promise<AudioRenderer> } Promise used to return the audio renderer instance. * @syscap SystemCapability.Multimedia.Audio.Renderer * @since 8 */ /** - * Obtains an {@link AudioRenderer} instance. This method uses a promise to return the renderer instance. + * Obtains an {@link AudioRenderer} instance. + * This method uses a promise to return the renderer instance. + * + * The AudioRenderer instance is used to play streaming audio data. + * When using AudioRenderer apis, there are many instructions for application + * to achieve better performance and lower power consumption: + * In music or audiobook background playback situation, you can have low power + * consumption by following this best practices document **Low-Power Rules in Music Playback Scenarios**. + * And for navigation situation, you can follow **Low-Power Rules in Navigation and Positioning Scenarios**. + * + * Application developer should also be careful when app goes to background, please check if your audio playback + * is still needed, see **Audio Resources** in best practices document. + * And avoiding to send silence audio data continuously to waste system resources, otherwise system will take + * control measures when this behavior is detected, see **Audio Playback** in best practices document. + * + * If you want to use AudioRenderer api to implement a music playback application, there are also many interactive + * scenes to consider, see **Developing an Audio Application** in best practices document. + * * @param { AudioRendererOptions } options - Renderer configurations. * @returns { Promise<AudioRenderer> } Promise used to return the audio renderer instance. * @syscap SystemCapability.Multimedia.Audio.Renderer @@ -379,7 +419,7 @@ declare namespace audio { * @since 8 */ /** - * Audio streams for voice calls. + * Audio volume type for voice calls. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform * @since 12 @@ -391,7 +431,7 @@ declare namespace audio { * @since 7 */ /** - * Audio streams for ringtones. + * Audio volume type for ringtones. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform * @since 12 @@ -403,7 +443,7 @@ declare namespace audio { * @since 7 */ /** - * Audio streams for media purpose. + * Audio volume type for media purpose. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform * @since 12 @@ -415,7 +455,7 @@ declare namespace audio { * @since 10 */ /** - * Audio volume for alarm purpose. + * Audio volume type for alarm purpose. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform * @since 12 @@ -427,27 +467,27 @@ declare namespace audio { * @since 10 */ /** - * Audio volume for accessibility purpose. + * Audio volume type for accessibility purpose. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform * @since 12 */ ACCESSIBILITY = 5, /** - * Audio stream for voice assistant. + * Audio volume type for voice assistant. * @syscap SystemCapability.Multimedia.Audio.Volume * @since 8 */ VOICE_ASSISTANT = 9, /** - * Audio volume for ultrasonic. + * Audio volume type for ultrasonic. * @syscap SystemCapability.Multimedia.Audio.Volume * @systemapi * @since 10 */ ULTRASONIC = 10, /** - * Audio stream for all common. + * Audio volume type for all common. * @syscap SystemCapability.Multimedia.Audio.Volume * @systemapi * @since 9 @@ -775,16 +815,24 @@ declare namespace audio { * @since 18 */ USB_DEVICE = 25, + /** + * Accessory devices, such as the mic on remote control. + * @syscap SystemCapability.Multimedia.Audio.Device + * @systemapi + * @since 19 + */ + ACCESSORY = 26, + /** * HDMI device, such as HDMI, ARC, eARC * @syscap SystemCapability.Multimedia.Audio.Device - * @since 18 + * @since 19 */ HDMI = 27, /** * Line connected digital output device, such as s/pdif * @syscap SystemCapability.Multimedia.Audio.Device - * @since 18 + * @since 19 */ LINE_DIGITAL = 28, /** @@ -794,6 +842,12 @@ declare namespace audio { * @since 18 */ REMOTE_DAUDIO = 29, + /** + * Nearlink Device. + * @syscap SystemCapability.Multimedia.Audio.Device + * @since 20 + */ + NEARLINK = 31, /** * Default device type. * @syscap SystemCapability.Multimedia.Audio.Device @@ -1525,7 +1579,7 @@ declare namespace audio { * @since 7 */ /** - * Voice communication usage. + * Used for network voice call, such as WeChat voice call, QQ voice call, etc. * @syscap SystemCapability.Multimedia.Audio.Core * @crossplatform * @atomicservice @@ -1698,7 +1752,7 @@ declare namespace audio { */ STREAM_USAGE_ULTRASONIC = 16, /** - * Video call usage. + * Used for network video call. * @syscap SystemCapability.Multimedia.Audio.Core * @atomicservice * @since 12 @@ -1886,7 +1940,7 @@ declare namespace audio { * @since 8 */ /** - * Audio renderer flags. + * Audio renderer flags. This method is currently reserved, suggest setting the default value to 0. * @type { number } * @syscap SystemCapability.Multimedia.Audio.Core * @crossplatform @@ -1899,7 +1953,7 @@ declare namespace audio { * will be affeted by app volume percentage setted by {@link setAppVolumePercentage} * @type { ?AudioVolumeMode } * @syscap SystemCapability.Multimedia.Audio.Volume - * @since 18 + * @since 19 */ volumeMode?: AudioVolumeMode; } @@ -2114,19 +2168,19 @@ declare namespace audio { */ enum AudioRendererRate { /** - * Normal rate. + * Normal playback render rate. * @syscap SystemCapability.Multimedia.Audio.Renderer * @since 8 */ RENDER_RATE_NORMAL = 0, /** - * Double rate. + * Double playback render rate. * @syscap SystemCapability.Multimedia.Audio.Renderer * @since 8 */ RENDER_RATE_DOUBLE = 1, /** - * Half rate. + * Half playback render rate. * @syscap SystemCapability.Multimedia.Audio.Renderer * @since 8 */ @@ -2269,6 +2323,20 @@ declare namespace audio { * @since 12 */ INTERRUPT_HINT_UNDUCK = 5, + + /** + * Mute the stream. + * @syscap SystemCapability.Multimedia.Audio.Renderer + * @since 20 + */ + INTERRUPT_HINT_MUTE = 6, + + /** + * Unmute the stream. + * @syscap SystemCapability.Multimedia.Audio.Renderer + * @since 20 + */ + INTERRUPT_HINT_UNMUTE = 7, } /** @@ -2527,7 +2595,7 @@ declare namespace audio { * @since 7 */ /** - * Implements audio volume and audio device management. + * Implements audio stream, volume, device, effect and many other management functions. * @typedef AudioManager * @syscap SystemCapability.Multimedia.Audio.Core * @crossplatform @@ -2535,9 +2603,9 @@ declare namespace audio { */ interface AudioManager { /** - * Sets the volume for a stream. This method uses an asynchronous callback to return the result. + * Sets the volume for a volume type. This method uses an asynchronous callback to return the result. * @permission ohos.permission.ACCESS_NOTIFICATION_POLICY - * @param { AudioVolumeType } volumeType - Audio stream type. + * @param { AudioVolumeType } volumeType - Audio volume type. * @param { number } volume - Volume to set. The value range can be obtained by calling getMinVolume and getMaxVolume. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @syscap SystemCapability.Multimedia.Audio.Volume @@ -2547,9 +2615,9 @@ declare namespace audio { */ setVolume(volumeType: AudioVolumeType, volume: number, callback: AsyncCallback<void>): void; /** - * Sets the volume for a stream. This method uses a promise to return the result. + * Sets the volume for a volume type. This method uses a promise to return the result. * @permission ohos.permission.ACCESS_NOTIFICATION_POLICY - * @param { AudioVolumeType } volumeType - Audio stream type. + * @param { AudioVolumeType } volumeType - Audio volume type. * @param { number } volume - Volume to set. The value range can be obtained by calling getMinVolume and getMaxVolume. * @returns { Promise<void> } Promise used to return the result. * @syscap SystemCapability.Multimedia.Audio.Volume @@ -2559,8 +2627,8 @@ declare namespace audio { */ setVolume(volumeType: AudioVolumeType, volume: number): Promise<void>; /** - * Obtains the volume of a stream. This method uses an asynchronous callback to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the volume of a volume type. This method uses an asynchronous callback to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. * @param { AsyncCallback<number> } callback - Callback used to return the volume. * @syscap SystemCapability.Multimedia.Audio.Volume * @since 7 @@ -2569,8 +2637,8 @@ declare namespace audio { */ getVolume(volumeType: AudioVolumeType, callback: AsyncCallback<number>): void; /** - * Obtains the volume of a stream. This method uses a promise to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the volume of a volume type. This method uses a promise to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. * @returns { Promise<number> } Promise used to return the volume. * @syscap SystemCapability.Multimedia.Audio.Volume * @since 7 @@ -2599,8 +2667,8 @@ declare namespace audio { */ getMinVolume(volumeType: AudioVolumeType): Promise<number>; /** - * Obtains the maximum volume allowed for a stream. This method uses an asynchronous callback to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the maximum volume allowed for a volume type. This method uses an asynchronous callback to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. * @param { AsyncCallback<number> } callback - Callback used to return the maximum volume. * @syscap SystemCapability.Multimedia.Audio.Volume * @since 7 @@ -2609,8 +2677,8 @@ declare namespace audio { */ getMaxVolume(volumeType: AudioVolumeType, callback: AsyncCallback<number>): void; /** - * Obtains the maximum volume allowed for a stream. This method uses a promise to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the maximum volume allowed for a volume type. This method uses a promise to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. * @returns { Promise<number> } Promise used to return the maximum volume. * @syscap SystemCapability.Multimedia.Audio.Volume * @since 7 @@ -2639,9 +2707,9 @@ declare namespace audio { */ getDevices(deviceFlag: DeviceFlag): Promise<AudioDeviceDescriptors>; /** - * Mutes a stream. This method uses an asynchronous callback to return the result. - * @param { AudioVolumeType } volumeType - Audio stream type. - * @param { boolean } mute - Mute status to set. The value true means to mute the stream, and false means the opposite. + * Mutes a volume type. This method uses an asynchronous callback to return the result. + * @param { AudioVolumeType } volumeType - Audio volume type. + * @param { boolean } mute - Mute status to set. The value true means to mute the volume type, and false means the opposite. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @syscap SystemCapability.Multimedia.Audio.Volume * @since 7 @@ -2650,9 +2718,9 @@ declare namespace audio { */ mute(volumeType: AudioVolumeType, mute: boolean, callback: AsyncCallback<void>): void; /** - * Mutes a stream. This method uses a promise to return the result. - * @param { AudioVolumeType } volumeType - Audio stream type. - * @param { boolean } mute - Mute status to set. The value true means to mute the stream, and false means the opposite. + * Mutes a volume type. This method uses a promise to return the result. + * @param { AudioVolumeType } volumeType - Audio volume type. + * @param { boolean } mute - Mute status to set. The value true means to mute the volume type, and false means the opposite. * @returns { Promise<void> } Promise used to return the result. * @syscap SystemCapability.Multimedia.Audio.Volume * @since 7 @@ -2869,7 +2937,8 @@ declare namespace audio { getExtraParameters(mainKey: string, subKeys?: Array<string>): Promise<Record<string, string>>; /** - * Sets a device to the active state. This method uses an asynchronous callback to return the result. + * Sets a device to the active state. Applications that are not in a call state cannot modify the calling device by this method. + * This method uses an asynchronous callback to return the result. * @param { ActiveDeviceType } deviceType - Audio device type. * @param { boolean } active - Active status to set. The value true means to set the device to the active * status, and false means the opposite. @@ -2881,7 +2950,8 @@ declare namespace audio { */ setDeviceActive(deviceType: ActiveDeviceType, active: boolean, callback: AsyncCallback<void>): void; /** - * Sets a device to the active state. This method uses a promise to return the result. + * Sets a device to the active state. Applications that are not in a call state cannot modify the calling device by this method. + * This method uses a promise to return the result. * @param { ActiveDeviceType } deviceType - Audio device type. * @param { boolean } active - Active status to set. The value true means to set the device to the active * status, and false means the opposite. @@ -2996,6 +3066,27 @@ declare namespace audio { */ getAudioSceneSync(): AudioScene; + /** + * Subscribes to audio scene change events. When system changes to communication status, registered clients + * will receive the callback. + * @param { 'audioSceneChange' } type - Type of the event to listen for. Only the audioSceneChange event is + * supported. + * @param { Callback<AudioScene> } callback - Callback used to obtain the latest audio scene. + * @syscap SystemCapability.Multimedia.Audio.Communication + * @since 20 + */ + on(type: 'audioSceneChange', callback: Callback<AudioScene>): void; + + /** + * Unsubscribes to audio scene change events. + * @param { 'audioSceneChange' } type - Type of the event to listen for. Only the audioSceneChange event is + * supported. + * @param { Callback<AudioScene> } callback - Callback used in subscription. + * @syscap SystemCapability.Multimedia.Audio.Communication + * @since 20 + */ + off(type: 'audioSceneChange', callback?: Callback<AudioScene>): void; + /** * Subscribes to device change events. When a device is connected/disconnected, registered clients will receive * the callback. @@ -3400,7 +3491,8 @@ declare namespace audio { * @since 9 */ /** - * Sets a device to the active state. This method uses an asynchronous callback to return the result. + * Sets a device to the active state. Only the current calling application can be set to take effect. + * This method uses an asynchronous callback to return the result. * @param { CommunicationDeviceType } deviceType - Audio device type. * @param { boolean } active - Active status to set. The value true means to set the device to * the active status, and false means the opposite. @@ -3420,7 +3512,8 @@ declare namespace audio { * @since 9 */ /** - * Sets a device to the active state. This method uses a promise to return the result. + * Sets a device to the active state. Only the current calling application can be set to take effect. + * This method uses a promise to return the result. * @param { CommunicationDeviceType } deviceType - Audio device type. * @param { boolean } active - Active status to set. The value true means to set the device to the active status, * and false means the opposite. @@ -3553,9 +3646,6 @@ declare namespace audio { * @param { AudioDeviceDescriptors } inputAudioDevices - Audio device descriptions * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Device * @systemapi @@ -3646,9 +3736,6 @@ declare namespace audio { * @param { AudioRendererFilter } filter - Audio renderer filter. * @returns { AudioDeviceDescriptors } The preferred devices. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Device * @systemapi @@ -3771,9 +3858,6 @@ declare namespace audio { * @param { AudioCapturerFilter } filter - Audio capturer filter. * @returns { AudioDeviceDescriptors } The preferred devices. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Device * @systemapi @@ -3906,9 +3990,6 @@ declare namespace audio { * @returns { Promise<void> } Promise used to return result. * @throws { BusinessError } 201 - Permisson denied. * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Device * @systemapi @@ -3924,9 +4005,6 @@ declare namespace audio { * @returns { Promise<void> } Promise used to return result. * @throws { BusinessError } 201 - Permisson denied. * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Device * @systemapi @@ -3941,9 +4019,6 @@ declare namespace audio { * @returns { Promise<void> } Promise used to return result. * @throws { BusinessError } 201 - Permisson denied. * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Device * @systemapi @@ -3956,9 +4031,6 @@ declare namespace audio { * @param { DeviceUsage } usage - Device usage, only output device usages can be accepted. * @returns { AudioDeviceDescriptors } Exclueded devices. * @throws { BusinessError } 202 - Not system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Device * @systemapi @@ -4170,9 +4242,6 @@ declare namespace audio { * Unsubscribes to audio renderer change events. * @param { 'audioRendererChange' } type - Type of the event to listen for. Only the audioRendererChange event is supported. * @param { Callback<AudioRendererChangeInfoArray> } callback - Callback invoked for the audio renderer change event. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Renderer * @crossplatform @@ -4232,9 +4301,6 @@ declare namespace audio { * Unsubscribes to audio capturer change events. * @param { 'audioCapturerChange' } type - Type of the event to listen for. Only the audioCapturerChange event is supported. * @param { Callback<AudioCapturerChangeInfoArray> } callback - Callback invoked for the audio capturer change event. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Capturer * @crossplatform @@ -4302,6 +4368,15 @@ declare namespace audio { * @since 12 */ isActiveSync(volumeType: AudioVolumeType): boolean; + /** + * Checks whether the specified audio source type supports echo cancellation + * @param { SourceType } sourceType Type of audio source. + * @returns { boolean } Check result. The value <b>true</b> means that the audio source type supports echo cancellation, and <b>false</b> means the opposite. + * @throws { BusinessError } 6800101 - Parameter verification failed. + * @syscap SystemCapability.Multimedia.Audio.Capturer + * @since 20 + */ + isAcousticEchoCancelerSupported(sourceType: SourceType): boolean; } /** @@ -4545,7 +4620,7 @@ declare namespace audio { */ /** * Obtains an AudioVolumeGroupManager instance. This method uses a promise to return the result. - * @param { number } groupId - volume group id, use LOCAL_VOLUME_GROUP_ID in default + * @param { number } groupId - volume group id, use {@link DEFAULT_VOLUME_GROUP_ID} in default * @returns { Promise<AudioVolumeGroupManager> } Promise used to return the result. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform @@ -4565,7 +4640,7 @@ declare namespace audio { */ /** * Obtains an AudioVolumeGroupManager instance. - * @param { number } groupId - volume group id, use LOCAL_VOLUME_GROUP_ID in default + * @param { number } groupId - volume group id, use {@link DEFAULT_VOLUME_GROUP_ID} in default * @returns { AudioVolumeGroupManager } The audio volume group manager instance. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -4584,13 +4659,10 @@ declare namespace audio { * @returns { Promise<number> } Promise used to return the result. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Volume * @systemapi - * @since 18 + * @since 19 */ getAppVolumePercentageForUid(uid: number): Promise<number>; @@ -4602,14 +4674,11 @@ declare namespace audio { * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @throws { BusinessError } 6800301 - Crash or blocking occurs in system process. * @syscap SystemCapability.Multimedia.Audio.Volume * @systemapi - * @since 18 + * @since 19 */ setAppVolumePercentageForUid(uid: number, volume: number): Promise<void>; @@ -4623,13 +4692,10 @@ declare namespace audio { * @returns { Promise<boolean> } Promise used to return the result. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Volume * @systemapi - * @since 18 + * @since 19 */ isAppVolumeMutedForUid(uid: number, owned: boolean): Promise<boolean>; @@ -4642,14 +4708,11 @@ declare namespace audio { * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @throws { BusinessError } 6800301 - Crash or blocking occurs in system process. * @syscap SystemCapability.Multimedia.Audio.Volume * @systemapi - * @since 18 + * @since 19 */ setAppVolumeMutedForUid(uid: number, muted: boolean): Promise<void>; @@ -4657,7 +4720,7 @@ declare namespace audio { * Get the volume for your app with range from 0 to 100. Applications with the same uid share the same volume. * @returns { Promise<number> } The application's volume percentage. The value range is from 0 to 100. * @syscap SystemCapability.Multimedia.Audio.Volume - * @since 18 + * @since 19 */ getAppVolumePercentage(): Promise<number>; @@ -4670,13 +4733,10 @@ declare namespace audio { * 'appVolumeChange' callback. * @param { number } volume - Volume to set. The value range is from 0 to 100. * @returns { Promise<void> } Promise used to return the result. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @throws { BusinessError } 6800301 - Crash or blocking occurs in system process. * @syscap SystemCapability.Multimedia.Audio.Volume - * @since 18 + * @since 19 */ setAppVolumePercentage(volume: number): Promise<void>; @@ -4728,13 +4788,10 @@ declare namespace audio { * @param { Callback<VolumeEvent> } callback - Callback used to get the app volume change event. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Volume * @systemapi - * @since 18 + * @since 19 */ on(type: 'appVolumeChangeForUid', uid: number, callback: Callback<VolumeEvent>): void; @@ -4746,13 +4803,10 @@ declare namespace audio { * @param { Callback<VolumeEvent> } callback - Callback used to obtain the invoking volume change event. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Volume * @systemapi - * @since 18 + * @since 19 */ off(type: 'appVolumeChangeForUid', callback?: Callback<VolumeEvent>): void; @@ -4761,12 +4815,9 @@ declare namespace audio { * or other system settings. * @param { 'appVolumeChange' } type - Type of the event to listen for. Only the appVolumeChange event is supported. * @param { Callback<VolumeEvent> } callback - Callback used to get the app volume change event. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Volume - * @since 18 + * @since 19 */ on(type: 'appVolumeChange', callback: Callback<VolumeEvent>): void; @@ -4775,14 +4826,37 @@ declare namespace audio { * @param { 'appVolumeChange' } type - Type of the event to be unregistered. Only the appVolumeChange event * is supported. * @param { Callback<VolumeEvent> } callback - Callback used to obtain the invoking volume change event. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Volume - * @since 18 + * @since 19 */ off(type: 'appVolumeChange', callback?: Callback<VolumeEvent>): void; + + /** + * Subscribes to active volume type changes. + * @param { 'activeVolumeTypeChange' } type - Type of the event to listen for. + * Only the activeVolumeTypeChange event is supported. + * @param { Callback<AudioVolumeType> } callback - Callback used to return the active volume type. + * @throws { BusinessError } 202 - Not system App. + * @throws { BusinessError } 6800101 - Parameter verification failed. + * @syscap SystemCapability.Multimedia.Audio.Volume + * @systemapi + * @since 20 + */ + on(type: 'activeVolumeTypeChange', callback: Callback<AudioVolumeType>): void; + + /** + * Unsubscribes from active volume type changes. + * @param { 'activeVolumeTypeChange' } type - Type of the event to unregister. + * Only the activeVolumeTypeChange event is supported. + * @param { Callback<AudioVolumeType> } callback - Callback used to return the active volume type. + * @throws { BusinessError } 202 - Not system App. + * @throws { BusinessError } 6800101 - Parameter verification failed. + * @syscap SystemCapability.Multimedia.Audio.Volume + * @systemapi + * @since 20 + */ + off(type: 'activeVolumeTypeChange', callback?: Callback<AudioVolumeType>): void; } /** @@ -4861,8 +4935,8 @@ declare namespace audio { * @since 9 */ /** - * Obtains the volume of a stream. This method uses an asynchronous callback to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the volume of a volume type. This method uses an asynchronous callback to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. * @param { AsyncCallback<number> } callback - Callback used to return the volume. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform @@ -4877,8 +4951,8 @@ declare namespace audio { * @since 9 */ /** - * Obtains the volume of a stream. This method uses a promise to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the volume of a volume type. This method uses a promise to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. * @returns { Promise<number> } Promise used to return the volume. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform @@ -4897,8 +4971,8 @@ declare namespace audio { * @since 10 */ /** - * Obtains the volume of a stream. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the volume of a volume type. + * @param { AudioVolumeType } volumeType - Audio volume type. * @returns { number } Current system volume level. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -4918,8 +4992,8 @@ declare namespace audio { * @since 9 */ /** - * Obtains the minimum volume allowed for a stream. This method uses an asynchronous callback to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the minimum volume allowed for a volume type. This method uses an asynchronous callback to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. * @param { AsyncCallback<number> } callback - Callback used to return the minimum volume. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform @@ -4934,8 +5008,8 @@ declare namespace audio { * @since 9 */ /** - * Obtains the minimum volume allowed for a stream. This method uses a promise to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the minimum volume allowed for a volume type. This method uses a promise to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. * @returns { Promise<number> } Promise used to return the minimum volume. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform @@ -4954,8 +5028,8 @@ declare namespace audio { * @since 10 */ /** - * Obtains the minimum volume allowed for a stream. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the minimum volume allowed for a volume type. + * @param { AudioVolumeType } volumeType - Audio volume type. * @returns { number } Min volume level. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -4975,8 +5049,8 @@ declare namespace audio { * @since 9 */ /** - * Obtains the maximum volume allowed for a stream. This method uses an asynchronous callback to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the maximum volume allowed for a volume type. This method uses an asynchronous callback to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. * @param { AsyncCallback<number> } callback - Callback used to return the maximum volume. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform @@ -4991,8 +5065,8 @@ declare namespace audio { * @since 9 */ /** - * Obtains the maximum volume allowed for a stream. This method uses a promise to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the maximum volume allowed for a volume type. This method uses a promise to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. * @returns { Promise<number> } Promise used to return the maximum volume. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform @@ -5011,8 +5085,8 @@ declare namespace audio { * @since 10 */ /** - * Obtains the maximum volume allowed for a stream. - * @param { AudioVolumeType } volumeType - Audio stream type. + * Obtains the maximum volume allowed for a volume type. + * @param { AudioVolumeType } volumeType - Audio volume type. * @returns { number } Max volume level. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -5056,10 +5130,10 @@ declare namespace audio { * @since 9 */ /** - * Checks whether a stream is muted. This method uses an asynchronous callback to return the query result. - * @param { AudioVolumeType } volumeType - Audio stream type. - * @param { AsyncCallback<boolean> } callback - Callback used to return the mute status of the stream. The - * value true means that the stream is muted, and false means the opposite. + * Checks whether a volume type is muted. This method uses an asynchronous callback to return the query result. + * @param { AudioVolumeType } volumeType - Audio volume type. + * @param { AsyncCallback<boolean> } callback - Callback used to return the mute status of the volume type. The + * value true means that the volume type is muted, and false means the opposite. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform * @since 12 @@ -5074,10 +5148,10 @@ declare namespace audio { * @since 9 */ /** - * Checks whether a stream is muted. This method uses a promise to return the result. - * @param { AudioVolumeType } volumeType - Audio stream type. - * @returns { Promise<boolean> } Promise used to return the mute status of the stream. The value true - * means that the stream is muted, and false means the opposite. + * Checks whether a volume type is muted. This method uses a promise to return the result. + * @param { AudioVolumeType } volumeType - Audio volume type. + * @returns { Promise<boolean> } Promise used to return the mute status of the volume type. The value true + * means that the volume type is muted, and false means the opposite. * @syscap SystemCapability.Multimedia.Audio.Volume * @crossplatform * @since 12 @@ -5096,10 +5170,10 @@ declare namespace audio { * @since 10 */ /** - * Checks whether a stream is muted. - * @param { AudioVolumeType } volumeType - Audio stream type. - * @returns { boolean } The mute status of the stream. The value true - * means that the stream is muted, and false means the opposite. + * Checks whether a volume type is muted. + * @param { AudioVolumeType } volumeType - Audio volume type. + * @returns { boolean } The mute status of the volume type. The value true + * means that the volume type is muted, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. @@ -5191,9 +5265,6 @@ declare namespace audio { * Unsubscribes to the ringer mode state change events. * @param { 'ringerModeChange' } type - Type of the event to listen for. * @param { Callback<AudioRingMode> } callback - Callback used to get the updated ringer mode. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Volume * @since 18 @@ -5983,9 +6054,6 @@ declare namespace audio { * When the spatialization enable state changes, registered clients will receive the callback. * @param { 'spatializationEnabledChangeForCurrentDevice' } type - Type of the event to listen for. * @param { Callback<boolean> } callback - Callback used to get the spatialization enable state. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Spatialization * @since 18 @@ -5996,9 +6064,6 @@ declare namespace audio { * Unsubscribes to the spatialization enable state change events by the current device. * @param { 'spatializationEnabledChangeForCurrentDevice' } type - Type of the event to listen for. * @param { Callback<boolean> } callback - Callback used to get the spatialization enable state. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Spatialization * @since 18 @@ -6034,9 +6099,6 @@ declare namespace audio { * Notice that only one effect property name in each effect property category should be set. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Caller is not a system application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. Possible causes: * 1. More than one effect property name of the same effect property category are in the input array. * 2. The input audioEffectProperties are not supported by the current device. @@ -6619,19 +6681,19 @@ declare namespace audio { * Volume mode. * @enum { number } * @syscap SystemCapability.Multimedia.Audio.Volume - * @since 18 + * @since 19 */ enum AudioVolumeMode { /** * Audio volume affected by system volume level. * @syscap SystemCapability.Multimedia.Audio.Volume - * @since 18 + * @since 19 */ SYSTEM_GLOBAL = 0, /** * Audio volume affected by app's individual percentage. * @syscap SystemCapability.Multimedia.Audio.Volume - * @since 18 + * @since 19 */ APP_INDIVIDUAL = 1 } @@ -6698,7 +6760,7 @@ declare namespace audio { * Audio volume mode of this volume event * @type { ?AudioVolumeMode } * @syscap SystemCapability.Multimedia.Audio.Volume - * @since 18 + * @since 19 */ volumeMode?: AudioVolumeMode; } @@ -6936,7 +6998,7 @@ declare namespace audio { * @since 11 */ /** - * Unknown. + * This is default device change reason. * @syscap SystemCapability.Multimedia.Audio.Device * @crossplatform * @atomicservice @@ -7076,7 +7138,7 @@ declare namespace audio { * Audio timestamp info. * @typedef AudioTimestampInfo * @syscap SystemCapability.Multimedia.Audio.Core - * @since 18 + * @since 19 */ interface AudioTimestampInfo { /** @@ -7084,7 +7146,7 @@ declare namespace audio { * @type { number } * @readonly * @syscap SystemCapability.Multimedia.Audio.Core - * @since 18 + * @since 19 */ readonly framePos: number; @@ -7093,7 +7155,7 @@ declare namespace audio { * @type { number } * @readonly * @syscap SystemCapability.Multimedia.Audio.Core - * @since 18 + * @since 19 */ readonly timestamp: number; } @@ -7277,7 +7339,7 @@ declare namespace audio { getAudioEffectMode(): Promise<AudioEffectMode>; /** - * Sets the current audio effect mode. This method uses an asynchronous callback to return the result. + * Sets audio effect mode for current audio renderer. This method uses an asynchronous callback to return the result. * @param { AudioEffectMode } mode - Audio effect mode. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: @@ -7289,7 +7351,7 @@ declare namespace audio { */ setAudioEffectMode(mode: AudioEffectMode, callback: AsyncCallback<void>): void; /** - * Sets the current audio effect mode. This method uses a promise to return the result. + * Sets audio effect mode for current audio renderer. This method uses a promise to return the result. * @param { AudioEffectMode } mode - Audio effect mode. * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: @@ -7367,9 +7429,10 @@ declare namespace audio { * @since 8 */ /** - * Obtains the timestamp in Unix epoch time (starts from January 1, 1970), in nanoseconds. This method uses an - * asynchronous callback to return the result. - * @param { AsyncCallback<number> } callback - Callback used to return the timestamp. + * Obtains the timestamp for audio frame that passed by system framework most recently. + * The timestamp is not accurate because audio device latency is not considered very thoughtfully. + * This method uses an asynchronous callback to return the result. + * @param { AsyncCallback<number> } callback - Callback used to return the audio timestamp based on the monotonic nanosecond system timer. * @syscap SystemCapability.Multimedia.Audio.Renderer * @crossplatform * @since 12 @@ -7383,9 +7446,10 @@ declare namespace audio { * @since 8 */ /** - * Obtains the timestamp in Unix epoch time (starts from January 1, 1970), in nanoseconds. This method uses a - * promise to return the result. - * @returns { Promise<number> } Promise used to return the timestamp. + * Obtains the timestamp for audio frame that passed by system framework most recently. + * The timestamp is not accurate because audio device latency is not considered very thoughtfully. + * This method uses a promise to return the result. + * @returns { Promise<number> } Promise used to return the audio timestamp based on the monotonic nanosecond system timer. * @syscap SystemCapability.Multimedia.Audio.Renderer * @crossplatform * @since 12 @@ -7398,8 +7462,9 @@ declare namespace audio { * @since 10 */ /** - * Obtains the timestamp in Unix epoch time (starts from January 1, 1970), in nanoseconds. - * @returns { number } The audio timestamp. + * Obtains the timestamp for audio frame that passed by system framework most recently. + * The timestamp is not accurate because audio device latency is not considered very thoughtfully. + * @returns { number } The audio timestamp based on the monotonic nanosecond system timer. * @syscap SystemCapability.Multimedia.Audio.Renderer * @crossplatform * @since 12 @@ -7412,7 +7477,7 @@ declare namespace audio { * @returns { Promise<AudioTimestampInfo> } The Promise used to return timestamp info. * @throws { BusinessError } 6800103 - Operation not permit at current state. * @syscap SystemCapability.Multimedia.Audio.Renderer - * @since 18 + * @since 19 */ getAudioTimestampInfo(): Promise<AudioTimestampInfo>; @@ -7422,7 +7487,7 @@ declare namespace audio { * @returns { AudioTimestampInfo } The returned timestamp info. * @throws { BusinessError } 6800103 - Operation not permit at current state. * @syscap SystemCapability.Multimedia.Audio.Renderer - * @since 18 + * @since 19 */ getAudioTimestampInfoSync(): AudioTimestampInfo; @@ -7538,6 +7603,11 @@ declare namespace audio { */ /** * Releases the renderer. This method uses an asynchronous callback to return the result. + * <p><strong>NOTE</strong>: + * The framework will not actively release audio streams in the Stop/Pause state. + * Please make sure to call this method to release the stream when it is no longer needed. + * </p> + * * @param { AsyncCallback<void> } callback - Callback used to return the result. * @syscap SystemCapability.Multimedia.Audio.Renderer * @crossplatform @@ -7552,6 +7622,11 @@ declare namespace audio { */ /** * Releases the renderer. This method uses a promise to return the result. + * <p><strong>NOTE</strong>: + * The framework will not actively release audio streams in the Stop/Pause state. + * Please make sure to call this method to release the stream when it is no longer needed. + * </p> + * * @returns { Promise<void> } Promise used to return the result. * @syscap SystemCapability.Multimedia.Audio.Renderer * @crossplatform @@ -8087,9 +8162,6 @@ declare namespace audio { * Unsubscribes audio interrupt events. * @param { 'audioInterrupt' } type - Type of the event to listen for. * @param { Callback<InterruptEvent> } callback - Callback used to listen for interrupt callback. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Interrupt * @since 18 @@ -8108,6 +8180,11 @@ declare namespace audio { /** * Subscribes to mark reached events. When the number of frames rendered reaches the value of the frame parameter, * the callback is invoked. + * <p><strong>NOTE</strong>: + * Before renderer release, the value of internal records frames will continue to increase, + * and operations such as stop/pause/flush/drain will not reset this value. + * </p> + * * @param { 'markReach' } type - Type of the event to listen for. Only the markReach event is supported. * @param { number } frame - Number of frames to trigger the event. The value must be greater than 0. * @param { Callback<number> } callback - Callback invoked when the event is triggered. @@ -8190,7 +8267,7 @@ declare namespace audio { * @since 8 */ /** - * Subscribes audio state change event callback. + * Subscribes audio renderer state change event callback. * @param { 'stateChange' } type - Type of the event to listen for. Only the stateChange event is supported. * @param { Callback<AudioState> } callback - Callback invoked when state change. * @syscap SystemCapability.Multimedia.Audio.Renderer @@ -8203,9 +8280,6 @@ declare namespace audio { * Unsubscribes audio state change event callback. * @param { 'stateChange' } type - Type of the event to listen for. * @param { Callback<AudioState> } callback - Callback invoked when state change. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Renderer * @since 18 @@ -8479,7 +8553,13 @@ declare namespace audio { * @syscap SystemCapability.Multimedia.Audio.Core * @since 14 */ - SOURCE_TYPE_UNPROCESSED = 14 + SOURCE_TYPE_UNPROCESSED = 14, + /** + * live broadcast source type. + * @syscap SystemCapability.Multimedia.Audio.Core + * @since 20 + */ + SOURCE_TYPE_LIVE = 17 } /** @@ -8856,9 +8936,10 @@ declare namespace audio { * @since 8 */ /** - * Obtains the timestamp in Unix epoch time (starts from January 1, 1970), in nanoseconds. This method uses an - * asynchronous callback to return the result. - * @param { AsyncCallback<number> } callback - Callback used to return the timestamp. + * Obtains the timestamp for audio frame that passed by system framework most recently. + * The timestamp is not accurate because audio device latency is not considered very thoughtfully. + * This method uses an asynchronous callback to return the result. + * @param { AsyncCallback<number> } callback - Callback used to return the audio timestamp based on the monotonic nanosecond system timer. * @syscap SystemCapability.Multimedia.Audio.Capturer * @crossplatform * @since 12 @@ -8872,9 +8953,10 @@ declare namespace audio { * @since 8 */ /** - * Obtains the timestamp in Unix epoch time (starts from January 1, 1970), in nanoseconds. This method uses a - * promise to return the result. - * @returns { Promise<number> } Promise used to return the timestamp. + * Obtains the timestamp for audio frame that passed by system framework most recently. + * The timestamp is not accurate because audio device latency is not considered very thoughtfully. + * This method uses a promise to return the result. + * @returns { Promise<number> } Promise used to return the audio timestamp based on the monotonic nanosecond system timer. * @syscap SystemCapability.Multimedia.Audio.Capturer * @crossplatform * @since 12 @@ -8887,8 +8969,9 @@ declare namespace audio { * @since 10 */ /** - * Obtains the timestamp in Unix epoch time (starts from January 1, 1970), in nanoseconds. - * @returns { number } The audio timestamp. + * Obtains the timestamp for audio frame that passed by system framework most recently. + * The timestamp is not accurate because audio device latency is not considered very thoughtfully. + * @returns { number } The audio timestamp based on the monotonic nanosecond system timer. * @syscap SystemCapability.Multimedia.Audio.Capturer * @crossplatform * @since 12 @@ -8901,7 +8984,7 @@ declare namespace audio { * @returns { Promise<AudioTimestampInfo> } The Promise used to return timestamp info. * @throws { BusinessError } 6800103 - Operation not permit at current state. * @syscap SystemCapability.Multimedia.Audio.Capturer - * @since 18 + * @since 19 */ getAudioTimestampInfo(): Promise<AudioTimestampInfo>; @@ -8911,7 +8994,7 @@ declare namespace audio { * @returns { AudioTimestampInfo } The returned timestamp info. * @throws { BusinessError } 6800103 - Operation not permit at current state. * @syscap SystemCapability.Multimedia.Audio.Capturer - * @since 18 + * @since 19 */ getAudioTimestampInfoSync(): AudioTimestampInfo; @@ -9064,6 +9147,17 @@ declare namespace audio { */ getOverflowCountSync(): number; + /** + * Set if capturer want to be muted instead of interrupted. should be set before start + * @param { boolean } muteWhenInterrupted - use {@code true} if application want its stream to be muted + * instead of interrupted. + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 6800103 - Operation not permit at current state. + * @syscap SystemCapability.Multimedia.Audio.Capturer + * @since 20 + */ + setWillMuteWhenInterrupted(muteWhenInterrupted: boolean): Promise<void>; + /** * Subscribes to mark reached events. When the number of frames captured reaches the value of the frame parameter, * the callback is invoked. @@ -9171,9 +9265,6 @@ declare namespace audio { * Unsubscribes audio state change event callback. * @param { 'stateChange' } type - Type of the event to listen for. * @param { Callback<AudioState> } callback - Callback used to listen for the audio state change event. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 6800101 - Parameter verification failed. * @syscap SystemCapability.Multimedia.Audio.Capturer * @since 18 @@ -9383,6 +9474,21 @@ declare namespace audio { * @since 12 */ off(type: 'readData', callback?: Callback<ArrayBuffer>): void; + + /** + * Sets default input device of this Capturer to DEVICE_TYPE_ACCESSORY. + * Other capturers' devices will not be affected by this method. + * This method can only be used before the capture stream starts. Besides, + * if audio accessory is not connected, this method will report fail. After + * calling this function, the input device of this capturer will not be affected + * by other interfaces. + * @throws { BusinessError } 202 - Caller is not a system application. + * @throws { BusinessError } 6800103 - Operation not permit at current state. + * @syscap SystemCapability.Multimedia.Audio.Capturer + * @systemapi + * @since 19 + */ + setInputDeviceToAccessory(): void; } /** @@ -10021,7 +10127,7 @@ declare namespace audio { * @since 10 */ /** - * Audio Effect Mode effect none. + * Audio Effect Mode effect none. This effect mode will disable audio effect process for current audio renderer. * @syscap SystemCapability.Multimedia.Audio.Renderer * @atomicservice * @since 12 diff --git a/api/@ohos.multimedia.audioHaptic.d.ts b/api/@ohos.multimedia.audioHaptic.d.ts index b768b4f5dc02ab080a23445578692e2d04b8ceb1..12f385ad8b1aafb141b5b3175480b5f561f02f99 100644 --- a/api/@ohos.multimedia.audioHaptic.d.ts +++ b/api/@ohos.multimedia.audioHaptic.d.ts @@ -162,6 +162,17 @@ declare namespace audioHaptic { * @since 11 */ createPlayer(id: number, options?: AudioHapticPlayerOptions): Promise<AudioHapticPlayer>; + + /** + * Register audio and haptic file represented by fd into manager. Audio and haptic works are paired while playing. + * After registering source, it will returns the source id. This method uses a promise to return the source id. + * @param { AudioHapticFileDescriptor } audioFd : The file descriptor of audio source from file system. + * @param { AudioHapticFileDescriptor } hapticFd : The file descriptor of haptic source from file system. + * @returns { Promise<number> } Promise used to return the source id. + * @syscap SystemCapability.Multimedia.AudioHaptic.Core + * @since 20 + */ + registerSourceFromFd(audioFd: AudioHapticFileDescriptor, hapticFd: AudioHapticFileDescriptor): Promise<number>; } /** @@ -186,6 +197,41 @@ declare namespace audioHaptic { AUDIO_HAPTIC_TYPE_HAPTIC = 1, } + /** + * Describes audio haptic file descriptor. + * Caller needs to ensure the fd is valid and the offset and length are correct. + * @typedef AudioHapticFileDescriptor + * @syscap SystemCapability.Multimedia.AudioHaptic.Core + * @since 20 + */ + interface AudioHapticFileDescriptor { + /** + * The file descriptor of the source. + * @type { number } + * @syscap SystemCapability.Multimedia.AudioHaptic.Core + * @since 20 + */ + fd: number; + + /** + * The length in bytes of the data to be read. + * By default, the length is the rest of bytes in the file from the offset. + * @type { ?number } + * @syscap SystemCapability.Multimedia.AudioHaptic.Core + * @since 20 + */ + length?: number; + + /** + * The offset into the file where the data to be read. + * By default, the offset is 0. + * @type { ?number } + * @syscap SystemCapability.Multimedia.AudioHaptic.Core + * @since 20 + */ + offset?: number + } + /** * Audio haptic player object. * @typedef AudioHapticPlayer @@ -270,6 +316,55 @@ declare namespace audioHaptic { * @since 11 */ off(type: 'audioInterrupt', callback?: Callback<audio.InterruptEvent>): void; + + /** + * Enable haptics when the ringer mode is silent mode. Should be called before playback starting. + * @param { boolean } enable - use {@code true} if application want to enable this feature. + * @throws { BusinessError } 202 - Caller is not a system application. + * @throws { BusinessError } 5400102 - Operate not permit. + * @syscap SystemCapability.Multimedia.AudioHaptic.Core + * @systemapi + * @since 20 + */ + enableHapticsInSilentMode(enable: boolean): void; + + /** + * Set audio volume for this player. This method uses a promise to return the result. + * @param { number } volume - Target audio volume. + * The value ranges from 0.00 to 1.00. 1.00 indicates the maximum volume (100%). + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 5400102 - Operate not permit. + * @throws { BusinessError } 5400105 - Service died. + * @throws { BusinessError } 5400108 - Parameter out of range. + * @syscap SystemCapability.Multimedia.AudioHaptic.Core + * @since 20 + */ + setVolume(volume: number): Promise<void>; + + /** + * Check whether the device supports haptics intensity adjustment. + * @returns { boolean } - {@code true} means supported. + * @throws { BusinessError } 202 - Caller is not a system application. + * @syscap SystemCapability.Multimedia.AudioHaptic.Core + * @systemapi + * @since 20 + */ + isHapticsIntensityAdjustmentSupported(): boolean; + + /** + * Set vibration intensity for this player. This method uses a promise to return the result. + * @param { number } intensity - Target Hpatics intensity value. + * The value ranges from 0.00 to 1.00. 1.00 indicates the maximum intensity (100%). + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 202 - Caller is not a system application. + * @throws { BusinessError } 801 - Function is not supported in current device. + * @throws { BusinessError } 5400102 - Operate not permit. + * @throws { BusinessError } 5400108 - Parameter out of range. + * @syscap SystemCapability.Multimedia.AudioHaptic.Core + * @systemapi + * @since 20 + */ + setHapticsIntensity(intensity: number): Promise<void>; } } export default audioHaptic; diff --git a/api/@ohos.multimedia.avInputCastPicker.d.ets b/api/@ohos.multimedia.avInputCastPicker.d.ets index caadd4dbddeecc1e74d6c7760db3973aef8b3033..cdeba2381c042bc7f5239dd71dd8376a2d289639 100644 --- a/api/@ohos.multimedia.avInputCastPicker.d.ets +++ b/api/@ohos.multimedia.avInputCastPicker.d.ets @@ -25,7 +25,7 @@ import { AVCastPickerState } from './@ohos.multimedia.avCastPickerParam'; * @struct { AVInputCastPicker } * @syscap SystemCapability.Multimedia.AVSession.AVInputCast * @atomicservice - * @since 18 + * @since 20 */ @Component export declare struct AVInputCastPicker { @@ -36,7 +36,7 @@ export declare struct AVInputCastPicker { * @type { ? CustomBuilder } * @syscap SystemCapability.Multimedia.AVSession.AVInputCast * @atomicservice - * @since 18 + * @since 20 */ @Prop customPicker?: CustomBuilder; @@ -46,7 +46,7 @@ export declare struct AVInputCastPicker { * @type { ?OnPickerStateCallback } * @syscap SystemCapability.Multimedia.AVSession.AVInputCast * @atomicservice - * @since 18 + * @since 20 */ onStateChange?: OnPickerStateCallback; } @@ -59,6 +59,6 @@ export declare struct AVInputCastPicker { * @returns { void } * @syscap SystemCapability.Multimedia.AVSession.AVInputCast * @atomicservice - * @since 18 + * @since 20 */ export type OnPickerStateCallback = (state: AVCastPickerState) => void; \ No newline at end of file diff --git a/api/@ohos.multimedia.avsession.d.ts b/api/@ohos.multimedia.avsession.d.ts index dc87a72b457ece2ace2b665b6adf4296571fe9ef..822492c7bf90014bfe3ccf2e8f1f0064e3496374 100644 --- a/api/@ohos.multimedia.avsession.d.ts +++ b/api/@ohos.multimedia.avsession.d.ts @@ -276,8 +276,6 @@ declare namespace avSession { * @returns { Promise<Array<AVSessionController>> } Promise for AVSessionController. * @throws { BusinessError } 201 - permission denied * @throws { BusinessError } 202 - Not System App. - * @throws { BusinessError } 401 - parameter check failed. 1.Mandatory parameters are left unspecified. - * 2.Parameter verification failed. * @throws { BusinessError } 6600101 - Session service exception. * @throws { BusinessError } 6600109 - The remote connection is not established. * @syscap SystemCapability.Multimedia.AVSession.Manager @@ -443,8 +441,6 @@ declare namespace avSession { * @param { DistributedSessionType } distributedSessionType - Indicates the distributed session type * @param { Callback<Array<AVSessionController>> } callback - The callback will return remote changed AVSessionController. * @throws { BusinessError } 202 - Not System App. - * @throws { BusinessError } 401 - parameter check failed. 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6600101 - Session service exception. * @syscap SystemCapability.Multimedia.AVSession.Manager * @systemapi @@ -458,8 +454,6 @@ declare namespace avSession { * @param { DistributedSessionType } distributedSessionType - Indicates the distributed session type * @param { Callback<Array<AVSessionController>> } callback - The callback will return remote changed AVSessionController. * @throws { BusinessError } 202 - Not System App. - * @throws { BusinessError } 401 - parameter check failed. 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 6600101 - Session service exception. * @syscap SystemCapability.Multimedia.AVSession.Manager * @systemapi @@ -597,6 +591,14 @@ declare namespace avSession { * @since 12 */ TYPE_DLNA = 4, + + /** + * This type indicates the device supports audio casting with high defination to get a better sound quality. + * @syscap SystemCapability.Multimedia.AVSession.AVCast + * @atomicservice + * @since 20 + */ + TYPE_CAST_PLUS_AUDIO = 8, } /** @@ -1939,6 +1941,8 @@ declare namespace avSession { * @syscap SystemCapability.Multimedia.AVSession.Core * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead ohos.multimedia.avsession.AVSessoin#on */ on(type: 'playFromAssetId', callback: (assetId: number) => void): void; @@ -1964,9 +1968,35 @@ declare namespace avSession { * @syscap SystemCapability.Multimedia.AVSession.Core * @atomicservice * @since 12 + * @deprecated since 20 + * @useinstead ohos.multimedia.avsession.AVSessoin#off */ off(type: 'playFromAssetId', callback?: (assetId: number) => void): void; + /** + * Subscribes to playWithAssetId events. + * @param { 'playWithAssetId' } type - Event type. + * @param { Callback<string> } callback - Callback used to handle the 'playWithAssetId' command. + * @throws { BusinessError } 6600101 - Session service exception. + * @throws { BusinessError } 6600102 - The session does not exist. + * @syscap SystemCapability.Multimedia.AVSession.Core + * @atomicservice + * @since 20 + */ + on(type: 'playWithAssetId', callback: Callback<string>): void; + + /** + * Unsubscribes to playWithAssetId events. + * @param { 'playWithAssetId' } type - Event type. + * @param { Callback<string> } callback - Callback used to handle the 'playWithAssetId' command. + * @throws { BusinessError } 6600101 - Session service exception. + * @throws { BusinessError } 6600102 - The session does not exist. + * @syscap SystemCapability.Multimedia.AVSession.Core + * @atomicservice + * @since 20 + */ + off(type: 'playWithAssetId', callback?: Callback<string>): void; + /** * Register seek command callback * @param { 'seek' } type - Registration Type 'seek' @@ -2117,6 +2147,31 @@ declare namespace avSession { */ off(type: 'setLoopMode', callback?: (mode: LoopMode) => void): void; + /** + * Register setTargetLoopMode command callback + * Application should change playmode to the loopmode which is requested. + * @param { 'setTargetLoopMode' } type - Registration Type 'setTargetLoopMode' + * @param { Callback<LoopMode> } callback - Used to handle setTargetLoopMode command.The callback provides the {@link LoopMode} + * @throws { BusinessError } 6600101 - Session service exception. + * @throws { BusinessError } 6600102 - The session does not exist. + * @syscap SystemCapability.Multimedia.AVSession.Core + * @atomicservice + * @since 18 + */ + on(type: 'setTargetLoopMode', callback: Callback<LoopMode>): void; + + /** + * Unregister setTargetLoopMode command callback + * @param { 'setTargetLoopMode' } type - Registration Type 'setTargetLoopMode' + * @param { Callback<LoopMode> } callback - Used to handle setTargetLoopMode command.The callback provides the {@link LoopMode} + * @throws { BusinessError } 6600101 - Session service exception. + * @throws { BusinessError } 6600102 - The session does not exist. + * @syscap SystemCapability.Multimedia.AVSession.Core + * @atomicservice + * @since 18 + */ + off(type: 'setTargetLoopMode', callback?: Callback<LoopMode>): void; + /** * Register toggle favorite command callback * @param { 'toggleFavorite' } type - Registration Type 'toggleFavorite' @@ -2834,7 +2889,7 @@ declare namespace avSession { * @throws { BusinessError } 6600101 - Session service exception * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ getSupportedDecoders(): Promise<Array<DecoderType>>; @@ -2842,12 +2897,10 @@ declare namespace avSession { * Get recommended resolution of remote player based on each decoder. * @param { DecoderType } decoderType - The decoder type. * @returns { Promise<ResolutionLevel> } ResolutionLevel returned through promise - * @throws { BusinessError } 401 - parameter check failed. 1.Mandatory parameters are left unspecified. - * 2.Parameter verification failed. * @throws { BusinessError } 6600101 - Session service exception * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ getRecommendedResolutionLevel(decoderType: DecoderType): Promise<ResolutionLevel>; @@ -2857,7 +2910,7 @@ declare namespace avSession { * @throws { BusinessError } 6600101 - Session service exception * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ getSupportedHdrCapabilities(): Promise<Array<hdrCapability.HDRFormat>>; @@ -2867,7 +2920,7 @@ declare namespace avSession { * @throws { BusinessError } 6600101 - Session service exception * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ getSupportedPlaySpeeds(): Promise<Array<number>>; @@ -3766,6 +3819,26 @@ declare namespace avSession { off(type: 'pickerStateChange', callback?: Callback<AVCastPickerState>) : void; } + /** + * Audio capabilities. + * + * @typedef AudioCapabilities + * @syscap SystemCapability.Multimedia.AVSession.AVCast + * @atomicservice + * @since 20 + */ + interface AudioCapabilities { + /** + * Audio stream information. + * @type { Array<audio.AudioStreamInfo> } + * @readonly + * @syscap SystemCapability.Multimedia.AVSession.AVCast + * @atomicservice + * @since 20 + */ + readonly streamInfos: Array<audio.AudioStreamInfo>; + } + /** * An option to make different picker usage * @@ -3956,14 +4029,14 @@ declare namespace avSession { * @enum { string } * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ enum DecoderType { /** * Defination of avc codec type. * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ OH_AVCODEC_MIMETYPE_VIDEO_AVC = "video/avc", @@ -3971,7 +4044,7 @@ declare namespace avSession { * Defination of hevc codec type. * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ OH_AVCODEC_MIMETYPE_VIDEO_HEVC = "video/hevc", @@ -3979,7 +4052,7 @@ declare namespace avSession { * Defination of audio vivid codec type. * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ OH_AVCODEC_MIMETYPE_AUDIO_VIVID = "audio/av3a", } @@ -3989,14 +4062,14 @@ declare namespace avSession { * @enum { number } * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ enum ResolutionLevel { /** * Defination of 480P which typically resolution is 640*480. * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ RESOLUTION_480P = 0, @@ -4004,7 +4077,7 @@ declare namespace avSession { * Defination of 720P which typically resolution is 1280*720. * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ RESOLUTION_720P = 1, @@ -4012,7 +4085,7 @@ declare namespace avSession { * Defination of 1080P which typically resolution is 1920*1080. * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ RESOLUTION_1080P = 2, @@ -4020,7 +4093,7 @@ declare namespace avSession { * Defination of 2K which typically resolution is 2560*1440. * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ RESOLUTION_2K = 3, @@ -4028,7 +4101,7 @@ declare namespace avSession { * Defination of 4K which typically resolution is 4096*3840. * @syscap SystemCapability.Multimedia.AVSession.AVCast * @atomicservice - * @since 18 + * @since 19 */ RESOLUTION_4K = 4, } @@ -4316,7 +4389,7 @@ declare namespace avSession { * @type { ?string } * @syscap SystemCapability.Multimedia.AVSession.Core * @atomicservice - * @since 18 + * @since 17 */ singleLyricText?: string; @@ -4637,6 +4710,14 @@ declare namespace avSession { */ dataSrc?: media.AVDataSrcDescriptor; + /** + * Pcm source type. The app should send pcm data directly to the system. + * @type { ?boolean} + * @syscap SystemCapability.Multimedia.AVSession.Core + * @since 20 + */ + pcmSrc?: boolean; + /** * The drm scheme supported by this resource which is represented by uuid. * @type { ?string } @@ -5529,6 +5610,15 @@ declare namespace avSession { * @since 13 */ mediumTypes?: number; + + /** + * When the device protocol is {@link ProtocolType.TYPE_HIGH_DEFINITION_AUDIO}, + * the device audio capabilities will be presented to let application choose proper resource to play. + * @type { ?AudioCapabilities } + * @syscap SystemCapability.Multimedia.AVSession.AVCast + * @since 20 + */ + audioCapabilities?: AudioCapabilities; } /** @@ -6684,8 +6774,6 @@ declare namespace avSession { * Get extra information for remote device, such as volume level, connected devices. * @param { string } extraEvent - the event name to get * @returns { Promise<ExtraInfo> } the value returned for such event - * @throws { BusinessError } 401 - parameter check failed. 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 6600101 - Session service exception. * @throws { BusinessError } 6600102 - The session does not exist. * @throws { BusinessError } 6600103 - The session controller does not exist. @@ -7380,8 +7468,26 @@ declare namespace avSession { * @atomicservice * @since 12 */ + /** + * The type of control command, add new support 'playFromAssetId' | 'answer' | 'hangUp' | 'toggleCallMute' + * @typedef { 'play' | 'pause' | 'stop' | 'playNext' | 'playPrevious' | 'fastForward' | 'rewind' | 'seek' | + * 'setSpeed' | 'setLoopMode' | 'toggleFavorite' | 'playFromAssetId' | 'answer' | 'hangUp' | + * 'toggleCallMute' | 'setTargetLoopMode' } AVControlCommandType + * @syscap SystemCapability.Multimedia.AVSession.Core + * @atomicservice + * @since 18 + */ + /** + * The type of control command, add new support 'playWithAssetId' + * @typedef { 'play' | 'pause' | 'stop' | 'playNext' | 'playPrevious' | 'fastForward' | 'rewind' | 'seek' | + * 'setSpeed' | 'setLoopMode' | 'toggleFavorite' | 'playFromAssetId' | 'playWithAssetId' | 'answer' | 'hangUp' | + * 'toggleCallMute' | 'setTargetLoopMode' } AVControlCommandType + * @syscap SystemCapability.Multimedia.AVSession.Core + * @atomicservice + * @since 20 + */ type AVControlCommandType = 'play' | 'pause' | 'stop' | 'playNext' | 'playPrevious' | 'fastForward' | 'rewind' | - 'seek' | 'setSpeed' | 'setLoopMode' | 'toggleFavorite' | 'playFromAssetId' | 'answer' | 'hangUp' | 'toggleCallMute'; + 'seek' | 'setSpeed' | 'setLoopMode' | 'toggleFavorite' | 'playFromAssetId' | 'playWithAssetId' | 'answer' | 'hangUp' | 'toggleCallMute' | 'setTargetLoopMode'; /** * The definition of command to be sent to the session diff --git a/api/@ohos.multimedia.camera.d.ts b/api/@ohos.multimedia.camera.d.ts index 24e430b4c868c80b1dfc0523ccae60264fddc0c7..ba44a7235e37b3f146b853f2a9d3a372f743a52c 100644 --- a/api/@ohos.multimedia.camera.d.ts +++ b/api/@ohos.multimedia.camera.d.ts @@ -46,6 +46,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Creates a CameraManager instance. + * + * @param { Context } context - Current application context. + * @returns { CameraManager } CameraManager instance. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ function getCameraManager(context: Context): CameraManager; /** @@ -55,6 +66,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enum for camera status. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum CameraStatus { /** * Appear status. @@ -62,6 +81,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Appear status. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_STATUS_APPEAR = 0, /** @@ -70,6 +96,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Disappear status. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_STATUS_DISAPPEAR = 1, /** @@ -78,6 +111,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Available status. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_STATUS_AVAILABLE = 2, /** @@ -86,6 +126,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unavailable status. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_STATUS_UNAVAILABLE = 3 } @@ -96,6 +143,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Enum for fold status. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum FoldStatus { /** * Non-foldable status. @@ -103,6 +158,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Non-foldable status. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ NON_FOLDABLE = 0, /** @@ -111,6 +173,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Expanded status. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ EXPANDED = 1, /** @@ -119,6 +188,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Folded status. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FOLDED = 2 } @@ -129,6 +205,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Profile for camera streams. + * + * @typedef Profile + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Profile { /** * Camera format. @@ -138,6 +222,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera format. + * + * @type { CameraFormat } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly format: CameraFormat; /** @@ -148,6 +241,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Resolution. The settings are the width and height of the camera's resolution, not the width and height of the actual output image. + * + * @type { Size } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly size: Size; } @@ -158,6 +260,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Frame rate range. + * + * @typedef FrameRateRange + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface FrameRateRange { /** * Min frame rate. @@ -167,6 +277,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Min frame rate. + * + * @type { number } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly min: number; /** @@ -177,6 +296,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Max frame rate. + * + * @type { number } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly max: number; } @@ -188,6 +316,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Video profile. + * + * @extends Profile + * @typedef VideoProfile + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface VideoProfile extends Profile { /** * Frame rate in unit fps (frames per second). @@ -197,6 +334,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Frame rate range, in fps (frames per second). + * + * @type { FrameRateRange } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly frameRateRange: FrameRateRange; } @@ -207,6 +353,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera output capability. + * + * @typedef CameraOutputCapability + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface CameraOutputCapability { /** * Preview profiles. @@ -216,6 +370,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Preview profiles. + * + * @type { Array<Profile> } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly previewProfiles: Array<Profile>; /** @@ -226,6 +389,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Photo profiles. + * + * @type { Array<Profile> } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly photoProfiles: Array<Profile>; /** @@ -236,6 +408,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Video profiles. + * + * @type { Array<VideoProfile> } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly videoProfiles: Array<VideoProfile>; /** @@ -257,6 +438,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * All the supported metadata Object Types. + * + * @type { Array<MetadataObjectType> } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly supportedMetadataObjectTypes: Array<MetadataObjectType>; } @@ -267,6 +457,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enum for camera error code. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum CameraErrorCode { /** * Parameter missing or parameter type incorrect. @@ -274,6 +472,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Parameter missing or parameter type incorrect. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ INVALID_ARGUMENT = 7400101, /** @@ -282,6 +487,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Operation not allowed. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ OPERATION_NOT_ALLOWED = 7400102, /** @@ -290,6 +502,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Session not config. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ SESSION_NOT_CONFIG = 7400103, /** @@ -298,6 +517,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Session not running. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ SESSION_NOT_RUNNING = 7400104, /** @@ -306,6 +532,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Session config locked. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ SESSION_CONFIG_LOCKED = 7400105, /** @@ -314,6 +547,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Device setting locked. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ DEVICE_SETTING_LOCKED = 7400106, /** @@ -322,6 +562,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Can not use camera cause of conflict. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CONFLICT_CAMERA = 7400107, /** @@ -330,6 +577,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera disabled cause of security reason. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ DEVICE_DISABLED = 7400108, /** @@ -338,6 +592,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Can not use camera cause of preempted. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ DEVICE_PREEMPTED = 7400109, /** @@ -346,6 +607,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Unresolved conflicts with current configurations. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ UNRESOLVED_CONFLICTS_WITH_CURRENT_CONFIGURATIONS = 7400110, /** @@ -372,6 +640,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera service fatal error. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ SERVICE_FATAL_ERROR = 7400201 } @@ -509,6 +784,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera Manager class, the camera manager instance needs to be get from the getCameraManager interface before using it. + * + * @interface CameraManager + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface CameraManager { /** * Gets supported camera descriptions. @@ -517,10 +800,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Gets the supported camera device objects and return the results synchronously. + * + * @returns { Array<CameraDevice> } An array of supported cameras. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getSupportedCameras(): Array<CameraDevice>; /** - * Gets supported output capability for specific camera. + * Queries the output capability supported by the camera device in the specified mode and returns the result synchronously. * * @param { CameraDevice } camera - Camera device. * @returns { CameraOutputCapability } The camera output capability. @@ -539,17 +830,36 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ - getSupportedSceneModes(camera: CameraDevice): Array<SceneMode>; - /** - * Gets supported output capability for specific camera. + * Gets supported scene mode for specific camera. * * @param { CameraDevice } camera - Camera device. - * @param { SceneMode } mode - Scene mode. + * @returns { Array<SceneMode> } An array of supported scene mode of camera. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + getSupportedSceneModes(camera: CameraDevice): Array<SceneMode>; + + /** + * Gets supported output capability for specific camera. + * + * @param { CameraDevice } camera - Camera device. + * @param { SceneMode } mode - Scene mode. * @returns { CameraOutputCapability } The camera output capability. * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Gets supported output capability for specific camera. + * + * @param { CameraDevice } camera - Camera device. + * @param { SceneMode } mode - Scene mode. + * @returns { CameraOutputCapability } The camera output capability. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getSupportedOutputCapability(camera: CameraDevice, mode: SceneMode): CameraOutputCapability; /** @@ -559,6 +869,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Queries whether the current camera is muted. + * + * @returns { boolean } Is camera muted. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isCameraMuted(): boolean; /** @@ -600,7 +918,7 @@ declare namespace camera { * @param { PolicyType } type - Type for indicating the calling role. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not System Application. - * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. * @syscap SystemCapability.Multimedia.Camera.Core * @systemapi * @since 12 @@ -629,6 +947,24 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Creates a CameraInput instance by camera. + * + * Before using this interface, first through the getSupportedCameras interface to query the current list of camera + * devices supported by the device, the developer needs to be based on specific scenarios to choose the camera device + * that meets the needs of the developer, and then use this interface to create a CameraInput instance. + * + * @permission ohos.permission.CAMERA + * @param { CameraDevice } camera - Camera device used to create the instance. + * @returns { CameraInput } Returns a CameraInput instance. Failure of an interface call returns the corresponding + * error code, which is of type CameraErrorCode. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ createCameraInput(camera: CameraDevice): CameraInput; /** @@ -655,6 +991,25 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Creates a CameraInput instance by camera position and type. + * + * @permission ohos.permission.CAMERA + * @param { CameraPosition } position - Camera position, first get the supported camera device + * objects through the getSupportedCameras interface, and then get the device position information + * based on the returned camera device objects. + * @param { CameraType } type - camera type, first get the supported camera device object through + * the getSupportedCameras interface, then get the device type information based on the returned + * camera device object. + * @returns { CameraInput } Returns a CameraInput instance. Failure of an interface call returns + * the corresponding error code, which is of type CameraErrorCode. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ createCameraInput(position: CameraPosition, type: CameraType): CameraInput; /** @@ -678,6 +1033,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Creates a PreviewOutput instance. + * + * @param { Profile } profile - Preview output profile. + * @param { string } surfaceId - Surface object id used in camera photo output. + * @returns { PreviewOutput } The PreviewOutput instance. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ createPreviewOutput(profile: Profile, surfaceId: string): PreviewOutput; /** @@ -692,6 +1059,19 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Creates a PreviewOutput instance without profile. + * You can use this method to create a preview output instance without a profile, This instance can + * only be used in a preconfiged session. + * + * @param { string } surfaceId - Surface object id used in camera preview output. + * @returns { PreviewOutput } The PreviewOutput instance. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ createPreviewOutput(surfaceId: string): PreviewOutput; /** @@ -733,6 +1113,21 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Creates a PhotoOutput instance without surfaceId. + * Call PhotoOutput capture interface will give a callback, + * {@link on(type: 'photoAvailable', callback: AsyncCallback<Photo>)} + * You can use this method to create a photo output instance without a profile, This instance can + * only be used in a preconfiged session. + * + * @param { Profile } profile - Photo output profile. + * @returns { PhotoOutput } The PhotoOutput instance. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ createPhotoOutput(profile?: Profile): PhotoOutput; /** @@ -756,6 +1151,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Creates a VideoOutput instance. + * + * @param { VideoProfile } profile - Video profile. + * @param { string } surfaceId - Surface object id used in camera video output. + * @returns { VideoOutput } The VideoOutput instance. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ createVideoOutput(profile: VideoProfile, surfaceId: string): VideoOutput; /** @@ -770,6 +1177,19 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Creates a VideoOutput instance without profile. + * You can use this method to create a video output instance without a profile, This instance can + * only be used in a preconfiged session. + * + * @param { string } surfaceId - Surface object id used in camera video output. + * @returns { VideoOutput } The VideoOutput instance. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ createVideoOutput(surfaceId: string): VideoOutput; /** @@ -791,6 +1211,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Creates a MetadataOutput instance. + * + * @param { Array<MetadataObjectType> } metadataObjectTypes - Array of MetadataObjectType. + * @returns { MetadataOutput } The MetadataOutput instance. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ createMetadataOutput(metadataObjectTypes: Array<MetadataObjectType>): MetadataOutput; /** @@ -830,8 +1261,69 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Gets a Session instance by specific scene mode. + * + * @param { SceneMode } mode - The modes supported by the camera. If the passed parameters are + * abnormal (e.g. out of range, passed null or undefined, etc.), the actual interface will not take effect. + * @returns { T } Session instance. Failure of an interface call returns the appropriate error code, + * which is of type CameraErrorCode. + * @throws { BusinessError } 7400101 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ createSession<T extends Session>(mode: SceneMode): T; + /** + * Queries a specified device based on position and type. + * + * @param { CameraPosition } position - Camera position. + * @param { CameraType } type - Camera type. + * @returns { CameraDevice } A device queried base on position and type. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Queries a specified device based on position and type. + * + * @param { CameraPosition } position - Camera position. + * @param { CameraType } type - Camera type. + * @returns { CameraDevice } A device queried base on position and type. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + getCameraDevice(position: CameraPosition, type: CameraType): CameraDevice; + + /** + * Obtains the concurrent information of specified cameras, + * the empty return means concurrency is not supported. + * + * @param { Array<CameraDevice> } cameras - Set of camera devices to be queried. + * @returns { Array<CameraConcurrentInfo> } Set of queried concurrent information. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Obtains the concurrent information of specified cameras, + * the empty return means concurrency is not supported. + * + * @param { Array<CameraDevice> } cameras - Set of camera devices to be queried. + * @returns { Array<CameraConcurrentInfo> } Set of queried concurrent information. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + getCameraConcurrentInfos(cameras: Array<CameraDevice>): Array<CameraConcurrentInfo>; + /** * Subscribes camera status change event callback. * @@ -840,6 +1332,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes camera status change event callback. + * + * @param { 'cameraStatus' } type - Event type. + * @param { AsyncCallback<CameraStatusInfo> } callback - Callback used to get the camera status change. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'cameraStatus', callback: AsyncCallback<CameraStatusInfo>): void; /** @@ -850,6 +1351,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from camera status change event callback. + * + * @param { 'cameraStatus' } type - Event type. + * @param { AsyncCallback<CameraStatusInfo> } callback - Callback used to get the camera status change. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'cameraStatus', callback?: AsyncCallback<CameraStatusInfo>): void; /** @@ -860,6 +1370,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Registers a listener for folding device fold state changes. Use callback asynchronous callback. + * + * @param { 'foldStatusChanged' } type - Event type. + * @param { AsyncCallback<FoldStatusInfo> } callback - Callback used to get the fold status change. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'foldStatusChange', callback: AsyncCallback<FoldStatusInfo>): void; /** @@ -870,6 +1389,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Unsubscribes from fold status change event callback. + * + * @param { 'foldStatusChanged' } type - Event type. + * @param { AsyncCallback<FoldStatusInfo> } callback - Callback used to get the fold status change. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'foldStatusChange', callback?: AsyncCallback<FoldStatusInfo>): void; /** @@ -1043,6 +1571,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Check if the device has a torch. + * + * @returns { boolean } this value that specifies whether the device has a torch. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isTorchSupported(): boolean; /** @@ -1052,6 +1588,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Check if a specifies torch mode is supported. + * @param { TorchMode } mode - torch mode. + * @returns { boolean } is torch mode supported. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isTorchModeSupported(mode: TorchMode): boolean; /** @@ -1061,6 +1605,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Get current torch mode. + * + * @returns { TorchMode } torch mode. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getTorchMode(): TorchMode; /** @@ -1081,6 +1633,25 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Set torch mode to the device. + * + * @param { TorchMode } mode - torch mode. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Set torch mode to the device. + * + * @param { TorchMode } mode - torch mode. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setTorchMode(mode: TorchMode): void; /** @@ -1091,6 +1662,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Subscribes torch status change event callback. + * + * @param { 'torchStatusChange' } type - Event type + * @param { AsyncCallback<TorchStatusInfo> } callback - Callback used to return the torch status change + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'torchStatusChange', callback: AsyncCallback<TorchStatusInfo>): void; /** @@ -1101,6 +1681,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Unsubscribes torch status change event callback. + * + * @param { 'torchStatusChange' } type - Event type + * @param { AsyncCallback<TorchStatusInfo> } callback - Callback used to return the torch status change + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'torchStatusChange', callback?: AsyncCallback<TorchStatusInfo>): void; } @@ -1111,6 +1700,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Torch status info. + * + * @typedef TorchStatusInfo + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface TorchStatusInfo { /** * is torch available @@ -1120,6 +1717,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * is torch available + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly isTorchAvailable: boolean; /** @@ -1130,8 +1736,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ - readonly isTorchActive: boolean; - + /** + * Whether the flashlight is activated or not. True means the flashlight is activated, false means the flashlight + * is not activated. + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + readonly isTorchActive: boolean; + /** * the current torch brightness level. * @@ -1140,6 +1756,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Flashlight brightness level, value range is [0,1], the closer to 1, the brighter it is. + * + * @type { number } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly torchLevel: number; } @@ -1150,6 +1775,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Enum for torch mode. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum TorchMode { /** * The device torch is always off. @@ -1157,6 +1790,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * The device torch is always off. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ OFF = 0, /** @@ -1165,6 +1805,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * The device torch is always on. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ ON = 1, /** @@ -1173,6 +1820,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * The device continuously monitors light levels and uses the torch when necessary. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ AUTO = 2 } @@ -1183,6 +1837,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * An instance of the interface returned by the camera manager's callback that represents camera state information. + * + * @typedef CameraStatusInfo + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface CameraStatusInfo { /** * Camera instance. @@ -1191,6 +1853,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera instance. + * + * @type { CameraDevice } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ camera: CameraDevice; /** @@ -1200,6 +1870,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Current camera status. + * + * @type { CameraStatus } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ status: CameraStatus; } @@ -1210,6 +1888,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Fold status info. + * + * @typedef FoldStatusInfo + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface FoldStatusInfo { /** * Gets supported camera devices under the current fold status. @@ -1219,6 +1905,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets supported camera devices under the current fold status. + * + * @type { Array<CameraDevice> } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly supportedCameras: Array<CameraDevice>; /** @@ -1229,6 +1924,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Current fold status. + * + * @type { FoldStatus } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly foldStatus: FoldStatus; } @@ -1317,6 +2021,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enum for camera type. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum CameraType { /** * Default camera type @@ -1324,6 +2036,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Default camera type + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_TYPE_DEFAULT = 0, /** @@ -1332,6 +2051,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Wide camera + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_TYPE_WIDE_ANGLE = 1, /** @@ -1340,6 +2066,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Ultra wide camera + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_TYPE_ULTRA_WIDE = 2, /** @@ -1348,6 +2081,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Telephoto camera + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_TYPE_TELEPHOTO = 3, /** @@ -1356,6 +2096,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * True depth camera + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_TYPE_TRUE_DEPTH = 4 } @@ -1366,6 +2113,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enum for camera connection type. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum ConnectionType { /** * Built-in camera. @@ -1373,6 +2128,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Built-in camera. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_CONNECTION_BUILT_IN = 0, /** @@ -1381,6 +2143,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera connected using USB + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_CONNECTION_USB_PLUGIN = 1, /** @@ -1389,6 +2158,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Remote camera + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_CONNECTION_REMOTE = 2 } @@ -1407,6 +2183,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 15 */ + /** + * Enum for remote camera device type. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum HostDeviceType { /** * Indicates an unknown device camera. @@ -1421,6 +2205,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 15 */ + /** + * Indicates an unknown device camera. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ UNKNOWN_TYPE = 0, /** @@ -1436,6 +2227,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 15 */ + /** + * Indicates a smartphone camera. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ PHONE = 0x0E, /** @@ -1451,6 +2249,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 15 */ + /** + * Indicates a tablet camera. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ TABLET = 0x11 } @@ -1461,6 +2266,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera device object. + * + * @typedef CameraDevice + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface CameraDevice { /** * Camera id attribute. @@ -1470,6 +2283,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera ID attribute. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly cameraId: string; /** @@ -1480,6 +2302,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera position attribute. + * + * @type { CameraPosition } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly cameraPosition: CameraPosition; /** @@ -1490,6 +2321,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera type attribute. + * + * @type { CameraType } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly cameraType: CameraType; /** @@ -1500,6 +2340,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera connection type attribute. + * + * @type { ConnectionType } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly connectionType: ConnectionType; /** @@ -1519,6 +2368,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 15 */ + /** + * Camera remote camera device name attribute. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly hostDeviceName: string; /** @@ -1538,6 +2396,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 15 */ + /** + * Camera remote camera device type attribute. + * + * @type { HostDeviceType } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly hostDeviceType: HostDeviceType; /** @@ -1548,6 +2415,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * The camera mounting angle, which does not change with screen rotation, takes values from 0° to 360° in degrees. + * + * @type { number } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly cameraOrientation: number; /** @@ -1569,6 +2445,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Size parameter. + * + * @typedef Size + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Size { /** * Height. @@ -1577,6 +2461,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Height. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ height: number; /** @@ -1586,6 +2478,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Width. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ width: number; } @@ -1596,6 +2496,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Point coordinates are used for focus and exposure configuration. + * + * @typedef Point + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Point { /** * x co-ordinate @@ -1604,6 +2512,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * x co-ordinate + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ x: number; /** @@ -1613,6 +2529,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * y co-ordinate + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ y: number; } @@ -1623,6 +2547,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera input object. + * + * @interface CameraInput + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface CameraInput { /** * Open camera. @@ -1634,6 +2566,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Open camera. + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400107 - Can not use camera cause of conflict. + * @throws { BusinessError } 7400108 - Camera disabled cause of security reason. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ open(callback: AsyncCallback<void>): void; /** @@ -1647,6 +2590,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Open camera. + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400107 - Can not use camera cause of conflict. + * @throws { BusinessError } 7400108 - Camera disabled cause of security reason. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ open(): Promise<void>; /** @@ -1660,8 +2615,48 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Open camera. + * + * @param { boolean } isSecureEnabled - Setting true enables the camera to be opened in a safe way, + * setting false does the opposite. Failure of an interface call returns an error code of type CameraErrorCode. + * @returns { Promise<bigint> } Promise used to return the result. + * @throws { BusinessError } 7400107 - Can not use camera cause of conflict. + * @throws { BusinessError } 7400108 - Camera disabled cause of security reason. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ open(isSecureEnabled: boolean): Promise<bigint>; + /** + * Open camera with specified concurrent type. + * + * @param { CameraConcurrentType } type - Camera concurrent type. + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400107 - Can not use camera cause of conflict. + * @throws { BusinessError } 7400108 - Camera disabled cause of security reason. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Open camera with specified concurrent type. + * + * @param { CameraConcurrentType } type - Camera concurrent type. + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400107 - Can not use camera cause of conflict. + * @throws { BusinessError } 7400108 - Camera disabled cause of security reason. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + open(type: CameraConcurrentType): Promise<void>; + /** * Close camera. * @@ -1670,6 +2665,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Close camera. + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ close(callback: AsyncCallback<void>): void; /** @@ -1680,6 +2684,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Close camera. + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ close(): Promise<void>; /** @@ -1705,6 +2718,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes to error events. + * + * @param { 'error' } type - Event type. + * @param { CameraDevice } camera - Camera device. + * @param { ErrorCallback } callback - Callback used to get the camera input errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'error', camera: CameraDevice, callback: ErrorCallback): void; /** @@ -1716,6 +2739,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from error events. + * + * @param { 'error' } type - Event type. + * @param { CameraDevice } camera - Camera device. + * @param { ErrorCallback } callback - Callback used to get the camera input errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'error', camera: CameraDevice, callback?: ErrorCallback): void; /** @@ -1729,18 +2762,31 @@ declare namespace camera { * @since 12 */ on(type: 'cameraOcclusionDetection', callback: AsyncCallback<CameraOcclusionDetectionResult>): void; - + + /** + * Unsubscribes from camera occlusion detection results. + * + * @param { 'cameraOcclusionDetection' } type - Event type. + * @param { AsyncCallback<CameraOcclusionDetectionResult> } callback - Callback used to get detection results. + * @throws { BusinessError } 202 - Not System Application. + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 12 + */ + off(type: 'cameraOcclusionDetection', callback?: AsyncCallback<CameraOcclusionDetectionResult>): void; + /** - * Unsubscribes from camera occlusion detection results. + * Sets the camera to be used as a camera at the specified position. * - * @param { 'cameraOcclusionDetection' } type - Event type. - * @param { AsyncCallback<CameraOcclusionDetectionResult> } callback - Callback used to get detection results. + * @param { CameraPosition } position - The positon used for the camera. * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. * @syscap SystemCapability.Multimedia.Camera.Core * @systemapi - * @since 12 + * @since 19 */ - off(type: 'cameraOcclusionDetection', callback?: AsyncCallback<CameraOcclusionDetectionResult>): void; + usedAsPosition(position: CameraPosition): void; /** * Control auxiliary. @@ -1749,7 +2795,6 @@ declare namespace camera { * @param { AuxiliaryStatus } auxiliaryStatus - Auxiliary status. * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - Not System Application. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 7400102 - Operation not allowed. * @throws { BusinessError } 7400201 - Camera service fatal error. * @syscap SystemCapability.Multimedia.Camera.Core @@ -1766,6 +2811,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Enumerates the camera scene modes. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum SceneMode { /** * Normal photo mode. @@ -1773,6 +2826,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Normal photo mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ NORMAL_PHOTO = 1, /** @@ -1781,6 +2841,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Normal video mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ NORMAL_VIDEO = 2, /** @@ -1870,6 +2937,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Secure camera mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ SECURE_PHOTO = 12, /** @@ -1925,6 +2999,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enum for camera format type. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum CameraFormat { /** * RGBA 8888 Format. @@ -1932,6 +3014,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * RGBA 8888 Format. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_FORMAT_RGBA_8888 = 3, /** @@ -1943,12 +3032,28 @@ declare namespace camera { */ CAMERA_FORMAT_DNG = 4, + /** + * Extreme Digital Format. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 18 + */ + CAMERA_FORMAT_DNG_XDRAW = 5, + /** * YUV 420 Format. * * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * YUV 420 Format. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_FORMAT_YUV_420_SP = 1003, /** @@ -1957,6 +3062,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * JPEG Format. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_FORMAT_JPEG = 2000, /** @@ -1965,6 +3077,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * YCBCR P010 Format. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_FORMAT_YCBCR_P010, /** @@ -1973,6 +3092,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * YCRCB P010 Format. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_FORMAT_YCRCB_P010, /** @@ -1981,6 +3107,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * HEIC Format. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ CAMERA_FORMAT_HEIC = 2003, /** @@ -2009,6 +3142,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enum for flash mode. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum FlashMode { /** * Close mode. @@ -2016,6 +3157,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Close mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FLASH_MODE_CLOSE = 0, /** @@ -2024,6 +3172,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Open mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FLASH_MODE_OPEN = 1, /** @@ -2032,6 +3187,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Auto mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FLASH_MODE_AUTO = 2, /** @@ -2040,6 +3202,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Always open mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FLASH_MODE_ALWAYS_OPEN = 3 } @@ -2082,6 +3251,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Flash Query object. + * + * @interface FlashQuery + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface FlashQuery { /** * Check if device has flash light. @@ -2100,6 +3277,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Check if device has flash light. + * Move to FlashQuery interface from Flash since 12. + * + * @returns { boolean } The flash light support status. + * @throws { BusinessError } 7400103 - Session not config, only throw in session usage. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ hasFlash(): boolean; /** @@ -2121,6 +3308,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Checks whether a specified flash mode is supported. + * Move to FlashQuery interface from Flash since 12. + * + * @param { FlashMode } flashMode - Flash mode + * @returns { boolean } Is the flash mode supported. + * @throws { BusinessError } 7400103 - Session not config, only throw in session usage. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isFlashModeSupported(flashMode: FlashMode): boolean; /** @@ -2144,6 +3342,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Flash object. + * + * @extends FlashQuery + * @interface Flash + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Flash extends FlashQuery { /** * Gets current flash mode. @@ -2153,6 +3360,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Gets current flash mode. + * + * @returns { FlashMode } The current flash mode. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getFlashMode(): FlashMode; /** @@ -2163,6 +3379,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Sets flash mode. + * + * @param { FlashMode } flashMode - Target flash mode. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setFlashMode(flashMode: FlashMode): void; /** @@ -2185,6 +3410,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enum for exposure mode. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum ExposureMode { /** * Lock exposure mode. @@ -2192,6 +3425,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Lock exposure mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ EXPOSURE_MODE_LOCKED = 0, /** @@ -2200,6 +3440,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Auto exposure mode. Exposure area center point can be set by AutoExposure.setMeteringPoint interface. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ EXPOSURE_MODE_AUTO = 1, /** @@ -2208,6 +3455,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Continuous automatic exposure. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ EXPOSURE_MODE_CONTINUOUS_AUTO = 2, /** @@ -2264,6 +3518,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * AutoExposureQuery object. + * + * @interface AutoExposureQuery + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface AutoExposureQuery { /** * Checks whether a specified exposure mode is supported. @@ -2284,6 +3546,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Checks whether a specified exposure mode is supported. + * Move to AutoExposureQuery interface from AutoExposure interface since 12. + * + * @param { ExposureMode } aeMode - Exposure mode + * @returns { boolean } Is the exposure mode supported. + * @throws { BusinessError } 7400103 - Session not config, only throw in session usage. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isExposureModeSupported(aeMode: ExposureMode): boolean; /** @@ -2303,6 +3576,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Query the exposure compensation range. + * Move to AutoExposureQuery interface from AutoExposure interface since 12. + * + * @returns { Array<number> } The array of compensation range. + * @throws { BusinessError } 7400103 - Session not config, only throw in session usage. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getExposureBiasRange(): Array<number>; /** @@ -2328,6 +3611,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * AutoExposure object. + * + * @extends AutoExposureQuery + * @interface AutoExposure + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface AutoExposure extends AutoExposureQuery { /** * Gets current exposure mode. @@ -2337,6 +3629,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Gets current exposure mode. + * + * @returns { ExposureMode } The current exposure mode. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getExposureMode(): ExposureMode; /** @@ -2347,6 +3648,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Sets Exposure mode. + * + * @param { ExposureMode } aeMode - Exposure mode + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setExposureMode(aeMode: ExposureMode): void; /** @@ -2357,35 +3668,52 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ - getMeteringPoint(): Point; - + /** + * Gets current metering point. + * + * @returns { Point } The current metering point. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + getMeteringPoint(): Point; + + /** + * Set the center point of the metering area. + * + * @param { Point } point - metering point + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 11 + */ /** * Set the center point of the metering area. * * @param { Point } point - metering point * @throws { BusinessError } 7400103 - Session not config. * @syscap SystemCapability.Multimedia.Camera.Core - * @since 11 + * @atomicservice + * @since 19 */ setMeteringPoint(point: Point): void; /** - * Query the exposure compensation range. + * Set exposure compensation. * - * @returns { Array<number> } The array of compensation range. + * @param { number } exposureBias - Exposure compensation * @throws { BusinessError } 7400103 - Session not config. * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ - getExposureBiasRange(): Array<number>; - /** * Set exposure compensation. * * @param { number } exposureBias - Exposure compensation + * @throws { BusinessError } 7400102 - Operation not allowed. * @throws { BusinessError } 7400103 - Session not config. * @syscap SystemCapability.Multimedia.Camera.Core - * @since 11 + * @since 12 */ /** * Set exposure compensation. @@ -2394,7 +3722,8 @@ declare namespace camera { * @throws { BusinessError } 7400102 - Operation not allowed. * @throws { BusinessError } 7400103 - Session not config. * @syscap SystemCapability.Multimedia.Camera.Core - * @since 12 + * @atomicservice + * @since 19 */ setExposureBias(exposureBias: number): void; @@ -2406,6 +3735,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Query the exposure value. + * + * @returns { number } The exposure value. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getExposureValue(): number; /** @@ -2441,6 +3779,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enum for focus mode. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum FocusMode { /** * Manual mode. @@ -2448,6 +3794,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Manual mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FOCUS_MODE_MANUAL = 0, /** @@ -2456,6 +3809,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Continuous auto mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FOCUS_MODE_CONTINUOUS_AUTO = 1, /** @@ -2464,6 +3824,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Auto mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FOCUS_MODE_AUTO = 2, /** @@ -2472,6 +3839,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Locked mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FOCUS_MODE_LOCKED = 3 } @@ -2482,6 +3856,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enum for focus state. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum FocusState { /** * Scan state. @@ -2489,6 +3871,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Scan state. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FOCUS_STATE_SCAN = 0, /** @@ -2497,6 +3886,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Focused state. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FOCUS_STATE_FOCUSED = 1, /** @@ -2505,6 +3901,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unfocused state. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FOCUS_STATE_UNFOCUSED = 2 } @@ -2620,6 +4023,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Focus Query object. + * + * @interface FocusQuery + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface FocusQuery { /** * Checks whether a specified focus mode is supported. @@ -2640,6 +4051,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Checks whether a specified focus mode is supported. + * Move to FocusQuery interface from Focus interface since 12. + * + * @param { FocusMode } afMode - Focus mode. + * @returns { boolean } Is the focus mode supported. + * @throws { BusinessError } 7400103 - Session not config, only throw in session usage. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isFocusModeSupported(afMode: FocusMode): boolean; /** @@ -2695,6 +4117,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Focus object. + * + * @extends FocusQuery + * @interface Focus + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Focus extends FocusQuery { /** * Gets current focus mode. @@ -2704,6 +4135,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Gets current focus mode. + * + * @returns { FocusMode } The current focus mode. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getFocusMode(): FocusMode; /** @@ -2714,6 +4154,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Sets focus mode. + * + * @param { FocusMode } afMode - Target focus mode. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setFocusMode(afMode: FocusMode): void; /** @@ -2724,6 +4173,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Sets focus point. + * + * @param { Point } point - Target focus point. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setFocusPoint(point: Point): void; /** @@ -2734,6 +4192,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Gets current focus point. + * + * @returns { Point } Used to get the current focus. Failure of the interface call will return the + * corresponding error code, which is of type CameraErrorCode. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getFocusPoint(): Point; /** @@ -2744,6 +4212,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Gets current focal length. + * + * @returns { number } The current focal point. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getFocalLength(): number; /** @@ -2873,14 +4350,27 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Enumerates the camera white balance modes. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ enum WhiteBalanceMode { /** - * Auto white balance mode. - * + * Automatic white balance mode. * @syscap SystemCapability.Multimedia.Camera.Core * @systemapi * @since 12 */ + /** + * Automatic white balance mode. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ AUTO = 0, /** @@ -2890,6 +4380,13 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Cloudy white balance mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ CLOUDY = 1, /** @@ -2899,6 +4396,13 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Incandescent white balance mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ INCANDESCENT = 2, /** @@ -2908,6 +4412,13 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Fluorescent white balance mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ FLUORESCENT = 3, /** @@ -2917,6 +4428,13 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Daylight white balance mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ DAYLIGHT = 4, /** @@ -2926,6 +4444,13 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Manual white balance mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ MANUAL = 5, /** @@ -2935,6 +4460,13 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Lock white balance mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ LOCKED = 6 } @@ -2946,6 +4478,14 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * White Balance Query object. + * + * @interface WhiteBalanceQuery + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ interface WhiteBalanceQuery { /** * Checks whether a specified white balance mode is supported. @@ -2959,6 +4499,16 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Checks whether the specified white balance mode is supported. + * @param { WhiteBalanceMode } mode White balance mode. + * @returns { boolean } Check result. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400103 - Session not config, only throw in session usage. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ isWhiteBalanceModeSupported(mode: WhiteBalanceMode): boolean; /** @@ -2971,6 +4521,15 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Query the white balance mode range. + * + * @returns { Array<number> } The array of white balance mode range. + * @throws { BusinessError } 7400103 - Session not config, only throw in session usage. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ getWhiteBalanceRange(): Array<number>; } @@ -2983,6 +4542,15 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * WhiteBalance object. + * + * @extends WhiteBalanceQuery + * @interface WhiteBalance + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ interface WhiteBalance extends WhiteBalanceQuery { /** * Gets current white balance mode. @@ -2994,6 +4562,14 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Obtains the white balance mode in use. + * @returns { WhiteBalanceMode } White balance mode. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ getWhiteBalanceMode(): WhiteBalanceMode; /** @@ -3007,6 +4583,16 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Sets white balance mode. + * + * @param { WhiteBalanceMode } mode - Target white balance mode. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ setWhiteBalanceMode(mode: WhiteBalanceMode): void; /** @@ -3019,18 +4605,37 @@ declare namespace camera { * @systemapi * @since 12 */ - getWhiteBalance(): number; - + /** + * Gets current white balance. + * + * @returns { number } The current white balance. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ + getWhiteBalance(): number; + + /** + * Sets white balance. + * + * @param { number } whiteBalance - White balance. + * @throws { BusinessError } 202 - Not System Application. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 12 + */ /** * Sets white balance. * * @param { number } whiteBalance - White balance. - * @throws { BusinessError } 202 - Not System Application. * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. * @throws { BusinessError } 7400103 - Session not config. * @syscap SystemCapability.Multimedia.Camera.Core - * @systemapi - * @since 12 + * @atomicservice + * @since 20 */ setWhiteBalance(whiteBalance: number): void; } @@ -3112,6 +4717,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Enum for smooth zoom mode. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum SmoothZoomMode { /** * Normal zoom mode. @@ -3119,6 +4732,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Normal zoom mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ NORMAL = 0 } @@ -3129,6 +4749,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * SmoothZoomInfo object + * + * @typedef SmoothZoomInfo + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface SmoothZoomInfo { /** * The duration of smooth zoom. @@ -3137,6 +4765,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * The duration of smooth zoom. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ duration: number; } @@ -3179,6 +4815,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Zoom query object. + * + * @interface ZoomQuery + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface ZoomQuery { /** * Gets all supported zoom ratio range. @@ -3197,6 +4841,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets all supported zoom ratio range. + * Move to ZoomQuery interface from Zoom since 12. + * + * @returns { Array<number> } The zoom ratio range. + * @throws { BusinessError } 7400103 - Session not config, only throw in session usage. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getZoomRatioRange(): Array<number>; /** @@ -3215,11 +4869,20 @@ declare namespace camera { /** * Zoom object. * - * extends ZoomQuery + * @extends ZoomQuery * @interface Zoom * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Zoom object. + * + * @extends ZoomQuery + * @interface Zoom + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Zoom extends ZoomQuery { /** * Gets zoom ratio. @@ -3238,6 +4901,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets zoom ratio. + * + * @returns { number } The zoom ratio value. + * @throws { BusinessError } 7400103 - Session not config. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getZoomRatio(): number; /** @@ -3248,6 +4921,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Sets zoom ratio. + * + * @param { number } zoomRatio - Target zoom ratio. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setZoomRatio(zoomRatio: number): void; /** @@ -3259,6 +4941,23 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Sets target zoom ratio by smooth method. + * + * @param { number } targetRatio - Target zoom ratio. + * @param { SmoothZoomMode } mode - Smooth zoom mode. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Sets target zoom ratio by smooth method. + * + * @param { number } targetRatio - Target zoom ratio. + * @param { SmoothZoomMode } mode - Smooth zoom mode. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setSmoothZoom(targetRatio: number, mode?: SmoothZoomMode): void; /** @@ -3291,6 +4990,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enum for video stabilization mode. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum VideoStabilizationMode { /** * Turn off video stablization. @@ -3298,6 +5005,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Turn off video stablization. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ OFF = 0, /** @@ -3306,6 +5020,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * LOW mode provides basic stabilization effect. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ LOW = 1, /** @@ -3314,6 +5035,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * MIDDLE mode means algorithms can achieve better effects than LOW mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ MIDDLE = 2, /** @@ -3322,6 +5050,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * HIGH mode means algorithms can achieve better effects than MIDDLE mode. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ HIGH = 3, /** @@ -3330,6 +5065,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * The stabilization algorithm is selected automatically. Selection of the stabilization algorithm is performed automatically. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ AUTO = 4 } @@ -3340,6 +5082,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Stabilization Query object. + * + * @interface StabilizationQuery + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface StabilizationQuery { /** * Check whether the specified video stabilization mode is supported. @@ -3360,6 +5110,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Check whether the specified video stabilization mode is supported. + * Move to StabilizationQuery interface from Stabilization since 12. + * + * @param { VideoStabilizationMode } vsMode - Video Stabilization mode. + * @returns { boolean } Is video stabilization mode supported. + * @throws { BusinessError } 7400103 - Session not config, only throw in session usage. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isVideoStabilizationModeSupported(vsMode: VideoStabilizationMode): boolean; } @@ -3371,6 +5132,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Stabilization object. + * + * @extends StabilizationQuery + * @interface Stabilization + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Stabilization extends StabilizationQuery { /** * Query the video stabilization mode currently in use. @@ -3380,6 +5150,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Query the video stabilization mode currently in use. + * + * @returns { VideoStabilizationMode } The current video stabilization mode. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getActiveVideoStabilizationMode(): VideoStabilizationMode; /** @@ -3390,6 +5169,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Set video stabilization mode. + * + * @param { VideoStabilizationMode } mode - video stabilization mode to set. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setVideoStabilizationMode(mode: VideoStabilizationMode): void; } @@ -3668,7 +5456,7 @@ declare namespace camera { * @since 12 */ setEffectSuggestionStatus(status: Array<EffectSuggestionStatus>): void; - + /** * Update the enable status of the effect suggestion type. * @@ -3746,7 +5534,7 @@ declare namespace camera { * @systemapi * @since 12 */ - PRIVACY = 1, + PRIVACY = 1 } /** @@ -3824,6 +5612,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Color Management Query object. + * + * @interface ColorManagementQuery + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface ColorManagementQuery { /** * Gets the supported color space types. @@ -3833,6 +5629,21 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets the supported color space types. + * + * @returns { Array<colorSpaceManager.ColorSpace> } The array of the supported color space for the session. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Gets the supported color space types. + * + * @returns { Array<colorSpaceManager.ColorSpace> } The array of the supported color space for the session. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getSupportedColorSpaces(): Array<colorSpaceManager.ColorSpace>; } @@ -3844,6 +5655,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Color Management object. + * + * @extends ColorManagementQuery + * @interface ColorManagement + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface ColorManagement extends ColorManagementQuery { /** * Gets the specific color space type. @@ -3853,6 +5673,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets the specific color space type. + * + * @returns { colorSpaceManager.ColorSpace } Current color space. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getActiveColorSpace(): colorSpaceManager.ColorSpace; /** @@ -3866,6 +5695,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Sets a color space for the session. + * + * @param { colorSpaceManager.ColorSpace } colorSpace - The type of color space. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - The colorSpace does not match the format. + * @throws { BusinessError } 7400103 - Session not config. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setColorSpace(colorSpace: colorSpaceManager.ColorSpace): void; } @@ -3876,6 +5717,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Auto Device Switch Query object. + * + * @interface AutoDeviceSwitchQuery + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface AutoDeviceSwitchQuery { /** * Check whether auto device switch is supported. @@ -3885,6 +5734,21 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Check whether auto device switch is supported. + * + * @returns { boolean } Is auto device switch supported. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Check whether auto device switch is supported. + * + * @returns { boolean } Is auto device switch supported. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isAutoDeviceSwitchSupported(): boolean; } @@ -3896,6 +5760,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Auto Device Switch object. + * + * @extends AutoDeviceSwitchQuery + * @interface AutoDeviceSwitch + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface AutoDeviceSwitch extends AutoDeviceSwitchQuery { /** * Enable auto device switch for session. @@ -3908,7 +5781,21 @@ declare namespace camera { * @throws { BusinessError } 7400103 - Session not config. * @throws { BusinessError } 7400201 - Camera service fatal error. * @syscap SystemCapability.Multimedia.Camera.Core - * @since 13 + * @since 13 + */ + /** + * Enable auto device switch for session. + * + * @param { boolean } enabled - enable auto device switch if TRUE. + * @throws { BusinessError } 7400101 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; + * 3. Parameters verification failed. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400103 - Session not config. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 */ enableAutoDeviceSwitch(enabled: boolean): void; } @@ -3920,6 +5807,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Auto Device Switch Status. + * + * @typedef AutoDeviceSwitchStatus + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface AutoDeviceSwitchStatus { /** * Notify whether device is switched. @@ -3929,6 +5824,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Notify whether device is switched. + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly isDeviceSwitched: boolean; /** @@ -3939,6 +5843,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Notify whether device capability is changed. + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly isDeviceCapabilityChanged: boolean; } @@ -3950,6 +5863,14 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Macro Query object. + * + * @interface MacroQuery + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface MacroQuery { /** * Determine whether camera macro is supported. @@ -3970,6 +5891,14 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Determine whether camera macro is supported. + * + * @returns { boolean } Is camera macro supported. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isMacroSupported(): boolean; } @@ -3982,6 +5911,15 @@ declare namespace camera { * @systemapi * @since 11 */ + /** + * Macro object. + * + * @extends MacroQuery + * @interface Macro + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Macro extends MacroQuery { /** * Enable macro for camera. @@ -4004,6 +5942,16 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Enable macro for camera. + * + * @param { boolean } enabled - enable macro for camera if TRUE. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enableMacro(enabled: boolean): void; } @@ -4033,6 +5981,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Session object. + * + * @interface Session + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Session { /** * Begin capture session config. @@ -4049,6 +6005,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Begin capture session config. + * + * @throws { BusinessError } 7400105 - Session config locked. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ beginConfig(): void; /** @@ -4060,6 +6025,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Commit capture session config. + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ commitConfig(callback: AsyncCallback<void>): void; /** @@ -4071,6 +6046,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Commit capture session config. + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ commitConfig(): Promise<void>; /** @@ -4082,6 +6067,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Determines whether the camera input can be added into the session. + * This method is valid between Session.beginConfig() and Session.commitConfig(). + * + * @param { CameraInput } cameraInput - Target camera input to add. + * @returns { boolean } You can add the input into the session. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ canAddInput(cameraInput: CameraInput): boolean; /** @@ -4107,6 +6102,29 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Adds a camera input. + * This method is valid between Session.beginConfig() and Session.commitConfig(). + * + * @param { CameraInput } cameraInput - Target camera input to add. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Adds a camera input. + * This method is valid between Session.beginConfig() and Session.commitConfig(). + * + * @param { CameraInput } cameraInput - Target camera input to add. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ addInput(cameraInput: CameraInput): void; /** @@ -4132,6 +6150,29 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Removes a camera input. + * This method is valid between Session.beginConfig() and Session.commitConfig(). + * + * @param { CameraInput } cameraInput - Target camera input to remove. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Removes a camera input. + * This method is valid between Session.beginConfig() and Session.commitConfig(). + * + * @param { CameraInput } cameraInput - Target camera input to remove. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ removeInput(cameraInput: CameraInput): void; /** @@ -4143,6 +6184,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Determines whether the camera output can be added into the session. + * This method is valid after Session.addInput(cameraInput) and before Session.commitConfig(). + * + * @param { CameraOutput } cameraOutput - Target camera output to add. + * @returns { boolean } You can add the output into the session. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ canAddOutput(cameraOutput: CameraOutput): boolean; /** @@ -4168,6 +6219,29 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Adds a camera output. + * This method is valid after Session.addInput(cameraInput) and before Session.commitConfig(). + * + * @param { CameraOutput } cameraOutput - Target camera output to add. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Adds a camera output. + * This method is valid after Session.addInput(cameraInput) and before Session.commitConfig(). + * + * @param { CameraOutput } cameraOutput - Target camera output to add. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ addOutput(cameraOutput: CameraOutput): void; /** @@ -4193,6 +6267,29 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Removes a camera output. + * This method is valid between Session.beginConfig() and Session.commitConfig(). + * + * @param { CameraOutput } cameraOutput - Target camera output to remove. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Removes a camera output. + * This method is valid between Session.beginConfig() and Session.commitConfig(). + * + * @param { CameraOutput } cameraOutput - Target camera output to remove. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ removeOutput(cameraOutput: CameraOutput): void; /** @@ -4214,6 +6311,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Starts capture session. + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400103 - Session not config. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ start(callback: AsyncCallback<void>): void; /** @@ -4235,6 +6343,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Starts capture session. + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @throws { BusinessError } 7400103 - Session not config. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ start(): Promise<void>; /** @@ -4245,6 +6364,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Stops capture session. + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ stop(callback: AsyncCallback<void>): void; /** @@ -4255,6 +6383,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Stops capture session. + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ stop(): Promise<void>; /** @@ -4265,6 +6402,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Release capture session instance. + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ release(callback: AsyncCallback<void>): void; /** @@ -4275,6 +6421,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Release capture session instance. + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ release(): Promise<void>; /** @@ -4580,7 +6735,11 @@ declare namespace camera { getMeteringPoint(): Point; /** - * Set the center point of the metering area. + * Set the center point of the exposure area, the exposure point should be located in the 0-1 coordinate system, + * which is {0, 0} in the upper left corner and {1, 1} in the bottom right corner. This coordinate system is + * based on the horizontal device orientation when the device charging port is on the right side, e.g. the preview + * interface layout of an application is based on the vertical direction when the device charging port is on the lower side, + * the layout width and height is {w, h}, and the touch point is {x, y}. Then the transformed coordinate point is {y/h, 1-x/w}. * * @param { Point } point - metering point * @throws { BusinessError } 7400103 - Session not config. @@ -4616,7 +6775,7 @@ declare namespace camera { setExposureBias(exposureBias: number): void; /** - * Query the exposure value. + * Queries the current exposure value. * * @returns { number } The exposure value. * @throws { BusinessError } 7400103 - Session not config. @@ -4628,7 +6787,7 @@ declare namespace camera { getExposureValue(): number; /** - * Checks whether a specified focus mode is supported. + * Queries whether a specified focus mode is supported. * * @param { FocusMode } afMode - Focus mode. * @returns { boolean } Is the focus mode supported. @@ -4883,7 +7042,16 @@ declare namespace camera { * * @enum { number } * @syscap SystemCapability.Multimedia.Camera.Core - * @since 12 + * @since 12 + */ + /** + * Types of preconfig, which used to configure session conveniently. + * Preconfig type contains common use cases of camera output. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 */ enum PreconfigType { /** @@ -4892,30 +7060,58 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * 720P output for preconfig. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ PRECONFIG_720P = 0, - + /** * 1080P output for preconfig. * * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * 1080P output for preconfig. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ PRECONFIG_1080P = 1, - + /** * 4K output for preconfig. * * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * 4K output for preconfig. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ PRECONFIG_4K = 2, - + /** * high quality output for preconfig. * * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * high quality output for preconfig. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ PRECONFIG_HIGH_QUALITY = 3 } @@ -4926,6 +7122,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * The aspect ratios of preconfig, which used to configure session conveniently. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum PreconfigRatio { /** * Aspect ratio 1:1 for preconfig. @@ -4933,22 +7137,43 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Aspect ratio 1:1 for preconfig. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ PRECONFIG_RATIO_1_1 = 0, - + /** * Aspect ratio 4:3 for preconfig. * * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Aspect ratio 4:3 for preconfig. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ PRECONFIG_RATIO_4_3 = 1, - + /** * Aspect ratio 16:9 for preconfig. * * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Aspect ratio 16:9 for preconfig. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ PRECONFIG_RATIO_16_9 = 2 } @@ -5064,10 +7289,10 @@ declare namespace camera { * @systemapi * @since 13 */ - EXITING = 3, + EXITING = 3 } - /** + /** * Tripod detection result. * * @extends SceneFeatureDetectionResult @@ -5166,13 +7391,29 @@ declare namespace camera { * @since 11 */ /** - * Photo session object. + * The Normal Photo Mode session category provides operations for flash, exposure, focus, zoom, and color space. * @extends Session, Flash, AutoExposure, Focus, Zoom, ColorManagement, AutoDeviceSwitch * @interface PhotoSession * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ - interface PhotoSession extends Session, Flash, AutoExposure, Focus, Zoom, ColorManagement, AutoDeviceSwitch { + /** + * Photo session object. + * @extends Session, Flash, AutoExposure, Focus, Zoom, ColorManagement, AutoDeviceSwitch, Macro + * @interface PhotoSession + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + /** + * Photo session object. + * @extends Session, Flash, AutoExposure, WhiteBalance, Focus, Zoom, ColorManagement, AutoDeviceSwitch, Macro + * @interface PhotoSession + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ + interface PhotoSession extends Session, Flash, AutoExposure, WhiteBalance, Focus, Zoom, ColorManagement, AutoDeviceSwitch, Macro { /** * Gets whether the choosed preconfig type can be used to configure photo session. * Must choose preconfig type from {@link PreconfigType}. @@ -5185,6 +7426,19 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets whether the choosed preconfig type can be used to configure photo session. + * Must choose preconfig type from {@link PreconfigType}. + * + * @param { PreconfigType } preconfigType - preconfig type. + * @param { PreconfigRatio } preconfigRatio - the aspect ratio of surface for preconfig, + * default value {@link PreconfigRatio#PRECONFIG_RATIO_4_3}. + * @returns { boolean } Whether the choosed preconfig type can be used. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ canPreconfig(preconfigType: PreconfigType, preconfigRatio?: PreconfigRatio): boolean; /** @@ -5198,6 +7452,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Configure photo session with the preconfig type. + * Must choose preconfig type from {@link PreconfigType}. + * + * @param { PreconfigType } preconfigType - preconfig type. + * @param { PreconfigRatio } preconfigRatio - the aspect ratio of surface for preconfig, + * default value {@link PreconfigRatio#PRECONFIG_RATIO_4_3} + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ preconfig(preconfigType: PreconfigType, preconfigRatio?: PreconfigRatio): void; /** @@ -5208,6 +7474,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Subscribes to error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the capture session errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'error', callback: ErrorCallback): void; /** @@ -5218,6 +7493,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Unsubscribes from error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the capture session errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'error', callback?: ErrorCallback): void; /** @@ -5228,6 +7512,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Subscribes focus state change event callback. + * + * @param { 'focusStateChange' } type - Event type. + * @param { AsyncCallback<FocusState> } callback - Callback used to get the focus state change. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'focusStateChange', callback: AsyncCallback<FocusState>): void; /** @@ -5238,6 +7531,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Unsubscribes from focus state change event callback. + * + * @param { 'focusStateChange' } type - Event type. + * @param { AsyncCallback<FocusState> } callback - Callback used to get the focus state change. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'focusStateChange', callback?: AsyncCallback<FocusState>): void; /** @@ -5248,6 +7550,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Subscribes zoom info event callback. + * + * @param { 'smoothZoomInfoAvailable' } type - Event type. + * @param { AsyncCallback<SmoothZoomInfo> } callback - Callback used to get the zoom info. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'smoothZoomInfoAvailable', callback: AsyncCallback<SmoothZoomInfo>): void; /** @@ -5258,6 +7569,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Unsubscribes from zoom info event callback. + * + * @param { 'smoothZoomInfoAvailable' } type - Event type. + * @param { AsyncCallback<SmoothZoomInfo> } callback - Callback used to get the zoom info. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'smoothZoomInfoAvailable', callback?: AsyncCallback<SmoothZoomInfo>): void; /** @@ -5340,6 +7660,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Subscribes to auto device switch status event callback. + * + * @param { 'autoDeviceSwitchStatusChange' } type - Event type. + * @param { AsyncCallback<AutoDeviceSwitchStatus> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'autoDeviceSwitchStatusChange', callback: AsyncCallback<AutoDeviceSwitchStatus>): void; /** @@ -5350,6 +7679,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Unsubscribes to auto device switch status event callback. + * + * @param { 'autoDeviceSwitchStatusChange' } type - Event type. + * @param { AsyncCallback<AutoDeviceSwitchStatus> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'autoDeviceSwitchStatusChange', callback?: AsyncCallback<AutoDeviceSwitchStatus>): void; /** @@ -5402,7 +7740,7 @@ declare namespace camera { } /** - * Video session object for system hap. + * Video session object used by the system camera. * * @extends VideoSession, Beauty, ColorEffect, ColorManagement, Macro * @interface VideoSessionForSys @@ -5411,7 +7749,7 @@ declare namespace camera { * @since 11 */ /** - * Video session object for system hap. + * Video session object used by the system camera. * * @extends VideoSession, Beauty, ColorEffect, ColorManagement, Macro, Aperture, ColorReservation * @interface VideoSessionForSys @@ -5419,7 +7757,16 @@ declare namespace camera { * @systemapi * @since 15 */ - interface VideoSessionForSys extends VideoSession, Beauty, ColorEffect, ColorManagement, Macro, Aperture, ColorReservation { + /** + * Video session object used by the system camera. + * + * @extends VideoSession, Beauty, ColorEffect, ColorManagement, Macro, Aperture, ColorReservation, EffectSuggestion + * @interface VideoSessionForSys + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 18 + */ + interface VideoSessionForSys extends VideoSession, Beauty, ColorEffect, ColorManagement, Macro, Aperture, ColorReservation, EffectSuggestion { } /** @@ -5429,6 +7776,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 14 */ + /** + * Enum for quality prioritization. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum QualityPrioritization { /** * High quality priority. @@ -5436,6 +7791,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 14 */ + /** + * High quality priority. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ HIGH_QUALITY = 0, /** @@ -5444,6 +7806,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 14 */ + /** + * Power balance priority. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ POWER_BALANCE = 1 } @@ -5463,7 +7832,25 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ - interface VideoSession extends Session, Flash, AutoExposure, Focus, Zoom, Stabilization, ColorManagement, AutoDeviceSwitch { + /** + * Video session object. + * + * @extends Session, Flash, AutoExposure, Focus, Zoom, Stabilization, ColorManagement, AutoDeviceSwitch, Macro + * @interface VideoSession + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + /** + * Video session object. + * + * @extends Session, Flash, AutoExposure, WhiteBalance, Focus, Zoom, Stabilization, ColorManagement, AutoDeviceSwitch, Macro + * @interface VideoSession + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ + interface VideoSession extends Session, Flash, AutoExposure, WhiteBalance, Focus, Zoom, Stabilization, ColorManagement, AutoDeviceSwitch, Macro { /** * Gets whether the choosed preconfig type can be used to configure video session. * Must choose preconfig type from {@link PreconfigType}. @@ -5476,6 +7863,19 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets whether the choosed preconfig type can be used to configure video session. + * Must choose preconfig type from {@link PreconfigType}. + * + * @param { PreconfigType } preconfigType - preconfig type. + * @param { PreconfigRatio } preconfigRatio - the aspect ratio of surface for preconfig, + * default value {@link PreconfigRatio#PRECONFIG_RATIO_16_9}. + * @returns { boolean } Whether the choosed preconfig type can be used. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ canPreconfig(preconfigType: PreconfigType, preconfigRatio?: PreconfigRatio): boolean; /** @@ -5489,6 +7889,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Configure video session with the preconfig type. + * Must choose preconfig type from {@link PreconfigType}. + * + * @param { PreconfigType } preconfigType - preconfig type. + * @param { PreconfigRatio } preconfigRatio - the aspect ratio of surface for preconfig, + * default value {@link PreconfigRatio#PRECONFIG_RATIO_16_9}. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ preconfig(preconfigType: PreconfigType, preconfigRatio?: PreconfigRatio): void; /** @@ -5499,6 +7911,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Subscribes to error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the capture session errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'error', callback: ErrorCallback): void; /** @@ -5509,25 +7930,52 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Unsubscribes from error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the capture session errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'error', callback?: ErrorCallback): void; /** - * Subscribes focus state change event callback. + * Subscribes focus state change event callback. + * + * @param { 'focusStateChange' } type - Event type. + * @param { AsyncCallback<FocusState> } callback - Callback used to get the focus state change. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 11 + */ + /** + * Subscribes focus state change event callback. + * + * @param { 'focusStateChange' } type - Event type. + * @param { AsyncCallback<FocusState> } callback - Callback used to get the focus state change. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + on(type: 'focusStateChange', callback: AsyncCallback<FocusState>): void; + + /** + * Unsubscribes from focus state change event callback. * * @param { 'focusStateChange' } type - Event type. * @param { AsyncCallback<FocusState> } callback - Callback used to get the focus state change. * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ - on(type: 'focusStateChange', callback: AsyncCallback<FocusState>): void; - /** * Unsubscribes from focus state change event callback. * * @param { 'focusStateChange' } type - Event type. * @param { AsyncCallback<FocusState> } callback - Callback used to get the focus state change. * @syscap SystemCapability.Multimedia.Camera.Core - * @since 11 + * @atomicservice + * @since 19 */ off(type: 'focusStateChange', callback?: AsyncCallback<FocusState>): void; @@ -5539,6 +7987,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Subscribes zoom info event callback. + * + * @param { 'smoothZoomInfoAvailable' } type - Event type. + * @param { AsyncCallback<SmoothZoomInfo> } callback - Callback used to get the zoom info. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'smoothZoomInfoAvailable', callback: AsyncCallback<SmoothZoomInfo>): void; /** @@ -5549,6 +8006,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Unsubscribes from zoom info event callback. + * + * @param { 'smoothZoomInfoAvailable' } type - Event type. + * @param { AsyncCallback<SmoothZoomInfo> } callback - Callback used to get the zoom info. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'smoothZoomInfoAvailable', callback?: AsyncCallback<SmoothZoomInfo>): void; /** @@ -5607,6 +8073,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Subscribes to auto device switch status event callback. + * + * @param { 'autoDeviceSwitchStatusChange' } type - Event type. + * @param { AsyncCallback<AutoDeviceSwitchStatus> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'autoDeviceSwitchStatusChange', callback: AsyncCallback<AutoDeviceSwitchStatus>): void; /** @@ -5617,6 +8092,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Unsubscribes to auto device switch status event callback. + * + * @param { 'autoDeviceSwitchStatusChange' } type - Event type. + * @param { AsyncCallback<AutoDeviceSwitchStatus> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'autoDeviceSwitchStatusChange', callback?: AsyncCallback<AutoDeviceSwitchStatus>): void; /** @@ -5643,6 +8127,29 @@ declare namespace camera { */ off(type: 'focusTrackingInfoAvailable', callback?: Callback<FocusTrackingInfo>): void; + /** + * Subscribes to effect suggestion change events. + * @param { 'effectSuggestionChange' } type - Event type. + * @param { AsyncCallback<EffectSuggestionType> } callback - Callback used to return the result. + * @throws { BusinessError } 202 - Not System Application.[object Object] + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 18 + */ + on(type: 'effectSuggestionChange', callback: AsyncCallback<EffectSuggestionType>): void; + + /** + * Unsubscribes from effect suggestion change events. + * + * @param { 'effectSuggestionChange' } type - Event type. + * @param { AsyncCallback<EffectSuggestionType> } callback - Callback used to return the result. + * @throws { BusinessError } 202 - Not System Application.[object Object] + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 18 + */ + off(type: 'effectSuggestionChange', callback?: AsyncCallback<EffectSuggestionType>): void; + /** * Gets session functions. * @@ -5680,6 +8187,20 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 14 */ + /** + * Sets quality prioritization. + * Setting to power balance reduces video quality to conserve power, suitable for long-duration recordings where + * video quality is less critical. + * + * @param { QualityPrioritization } quality - Target quality prioritization, with a default of HIGH_QUALITY. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @throws { BusinessError } 7400103 - Session not config. The session has not been committed or configured. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setQualityPrioritization(quality : QualityPrioritization) : void; /** @@ -6075,14 +8596,14 @@ declare namespace camera { } /** - * Portrait Photo session object. - * - * @extends Session, Flash, AutoExposure, Focus, Zoom, Beauty, ColorEffect, ColorManagement, Portrait, Aperture - * @interface PortraitPhotoSession - * @syscap SystemCapability.Multimedia.Camera.Core - * @systemapi - * @since 11 - */ + * Portrait Photo session object. + * + * @extends Session, Flash, AutoExposure, Focus, Zoom, Beauty, ColorEffect, ColorManagement, Portrait, Aperture + * @interface PortraitPhotoSession + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 11 + */ interface PortraitPhotoSession extends Session, Flash, AutoExposure, Focus, Zoom, Beauty, ColorEffect, ColorManagement, Portrait, Aperture { /** * Subscribes to error events. @@ -6200,14 +8721,14 @@ declare namespace camera { } /** - * Aperture video session object. - * - * @extends Session, Flash, AutoExposure, Focus, Zoom, ColorEffect, Aperture - * @interface ApertureVideoSession - * @syscap SystemCapability.Multimedia.Camera.Core - * @systemapi - * @since 12 - */ + * Aperture video session object. + * + * @extends Session, Flash, AutoExposure, Focus, Zoom, ColorEffect, Aperture + * @interface ApertureVideoSession + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 12 + */ interface ApertureVideoSession extends Session, Flash, AutoExposure, Focus, Zoom, ColorEffect, Aperture { /** * Subscribes to error events. @@ -7062,6 +9583,15 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Determine whether camera slow motion detection is supported. + * + * @returns { boolean } Is camera slow motion detection supported. + * @throws { BusinessError } 202 - Not System Application. + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 19 + */ isSlowMotionDetectionSupported(): boolean; /** @@ -7075,6 +9605,15 @@ declare namespace camera { * @systemapi * @since 12 */ + /** + * Set slow motion detection area. + * + * @param { Rect } area - Detection area. + * @throws { BusinessError } 202 - Not System Application. + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 19 + */ setSlowMotionDetectionArea(area: Rect): void; /** @@ -7106,7 +9645,7 @@ declare namespace camera { * High resolution session object. * * @extends Session, AutoExposure, Focus - * @interface HighResolutionPhotoSession + * @interface HighResolutionPhotoSession * @syscap SystemCapability.Multimedia.Camera.Core * @systemapi * @since 12 @@ -7362,7 +9901,25 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ - interface SecureSession extends Session, Flash, AutoExposure, Focus, Zoom { + /** + * Secure camera session object. + * + * @extends Session, Flash, AutoExposure, Focus, Zoom + * @interface SecureSession + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + /** + * Secure camera session object. + * + * @extends Session, Flash, AutoExposure, WhiteBalance, Focus, Zoom + * @interface SecureSession + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 20 + */ + interface SecureSession extends Session, Flash, AutoExposure, WhiteBalance, Focus, Zoom { /** * Add Secure output for camera. * @@ -7373,6 +9930,25 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Preview output is marked as secure out put by this interface. + * + * @param { PreviewOutput } previewOutput - Specify the output as a secure flow. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Add Secure output for camera. + * + * @param { PreviewOutput } previewOutput - Specify the output as a secure flow. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400102 - Operation not allowed. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ addSecureOutput(previewOutput: PreviewOutput): void; /** @@ -7383,6 +9959,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Subscribes to error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the capture session errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'error', callback: ErrorCallback): void; /** @@ -7393,6 +9978,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Unsubscribes from error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the capture session errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'error', callback?: ErrorCallback): void; /** @@ -7403,6 +9997,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Subscribes focus status change event callback. + * + * @param { 'focusStateChange' } type - Event type. + * @param { AsyncCallback<FocusState> } callback - Callback used to get the focus state change. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'focusStateChange', callback: AsyncCallback<FocusState>): void; /** @@ -7413,6 +10016,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Unsubscribes from focus status change event callback. + * + * @param { 'focusStateChange' } type - Event type. + * @param { AsyncCallback<FocusState> } callback - Callback used to get the focus state change. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'focusStateChange', callback?: AsyncCallback<FocusState>): void; } @@ -7840,6 +10452,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Camera output object. + * + * @interface CameraOutput + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface CameraOutput { /** * Release output instance. @@ -7849,6 +10469,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Release output instance. + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ release(callback: AsyncCallback<void>): void; /** @@ -7859,6 +10488,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Release output instance. + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ release(): Promise<void>; } @@ -7901,6 +10539,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Preview output object. + * + * @extends CameraOutput + * @interface PreviewOutput + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface PreviewOutput extends CameraOutput { /** * Start output instance. @@ -7956,6 +10603,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes frame start event callback. + * + * @param { 'frameStart' } type - Event type. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'frameStart', callback: AsyncCallback<void>): void; /** @@ -7966,6 +10622,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from frame start event callback. + * + * @param { 'frameStart' } type - Event type. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'frameStart', callback?: AsyncCallback<void>): void; /** @@ -7976,6 +10641,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes frame end event callback. + * + * @param { 'frameEnd' } type - Event type. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'frameEnd', callback: AsyncCallback<void>): void; /** @@ -7986,6 +10660,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from frame end event callback. + * + * @param { 'frameEnd' } type - Event type. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'frameEnd', callback?: AsyncCallback<void>): void; /** @@ -7996,6 +10679,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes to error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the preview output errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'error', callback: ErrorCallback): void; /** @@ -8006,6 +10698,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the preview output errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'error', callback?: ErrorCallback): void; /** @@ -8015,7 +10716,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ - getSupportedFrameRates(): Array<FrameRateRange> + /** + * Get supported frame rates which can be set during session running. + * + * @returns { Array<FrameRateRange> } The array of supported frame rate range. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + getSupportedFrameRates(): Array<FrameRateRange>; /** * Set a frame rate range. @@ -8027,7 +10736,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ - setFrameRate(minFps: number, maxFps: number): void + /** + * The supported frame rate range can be queried via the getSupportedFrameRates interface before setting. + * + * @param { number } minFps - Minimum frame rate per second. + * @param { number } maxFps - Maximum frame rate per second. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400110 - Unresolved conflicts with current configurations. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + setFrameRate(minFps: number, maxFps: number): void; /** * Get active frame rate range which has been set before. @@ -8036,15 +10756,33 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Queryable after setting the frame rate for the preview stream using the setFrameRate interface. + * + * @returns { FrameRateRange } The active frame rate range. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getActiveFrameRate(): FrameRateRange; /** + * Gets the current preconfig type if you had already call preconfig interface. * * @returns { Profile } The current preconfig type. * @throws { BusinessError } 7400201 - Camera service fatal error. * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets the current preconfig type if you had already call preconfig interface. + * + * @returns { Profile } The current preconfig type. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getActiveProfile(): Profile; /** @@ -8057,6 +10795,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets the preview rotation angle. + * + * @param { number } displayRotation - The current display rotation angle. + * @returns { ImageRotation } The preview rotation angle. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getPreviewRotation(displayRotation: number): ImageRotation; /** @@ -8069,6 +10818,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Sets the preview rotation angle. + * + * @param { ImageRotation } previewRotation - Preview display rotation angle. + * @param { boolean } isDisplayLocked - TRUE means the display is locked, if not set, the default is FALSE. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setPreviewRotation(previewRotation: ImageRotation, isDisplayLocked?: boolean): void; /** @@ -8221,7 +10981,7 @@ declare namespace camera { * @since 12 */ EFFECT_SUGGESTION_FOOD = 2, - + /** * Sky. * @@ -8238,7 +10998,16 @@ declare namespace camera { * @systemapi * @since 12 */ - EFFECT_SUGGESTION_SUNRISE_SUNSET = 4 + EFFECT_SUGGESTION_SUNRISE_SUNSET = 4, + + /** + * Stage. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 18 + */ + EFFECT_SUGGESTION_STAGE = 5 } /** @@ -8276,6 +11045,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enumerates the image rotation angles. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum ImageRotation { /** * The capture image rotates 0 degrees. @@ -8283,6 +11060,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * The capture image rotates 0 degrees. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ ROTATION_0 = 0, /** @@ -8291,6 +11075,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * The capture image rotates 90 degrees. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ ROTATION_90 = 90, /** @@ -8299,6 +11090,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * The capture image rotates 180 degrees. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ ROTATION_180 = 180, /** @@ -8307,6 +11105,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * The capture image rotates 270 degrees. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ ROTATION_270 = 270 } @@ -8317,6 +11122,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Photo capture location + * + * @typedef Location + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Location { /** * Latitude. @@ -8325,6 +11138,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Latitude. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ latitude: number; /** @@ -8334,6 +11155,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Longitude. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ longitude: number; /** @@ -8343,6 +11172,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Altitude. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ altitude: number; } @@ -8353,6 +11190,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Enumerates the image quality levels. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum QualityLevel { /** * High image quality. @@ -8360,6 +11205,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * High image quality. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ QUALITY_LEVEL_HIGH = 0, /** @@ -8368,6 +11220,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Medium image quality. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ QUALITY_LEVEL_MEDIUM = 1, /** @@ -8376,6 +11235,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Low image quality. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ QUALITY_LEVEL_LOW = 2 } @@ -8386,6 +11252,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Photo capture options to set. + * + * @typedef PhotoCaptureSetting + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface PhotoCaptureSetting { /** * Photo image quality. @@ -8394,6 +11268,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Photo image quality. + * + * @type { ?QualityLevel } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ quality?: QualityLevel; /** @@ -8403,6 +11285,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Photo rotation. + * + * @type { ?ImageRotation } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ rotation?: ImageRotation; /** @@ -8412,6 +11302,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Photo location. + * + * @type { ?Location } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ location?: Location; /** @@ -8421,6 +11319,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Set the mirror photo function switch, default to false. + * + * @type { ?boolean } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ mirror?: boolean; } @@ -8468,6 +11374,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Photo object + * + * @typedef Photo + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Photo { /** * Main image. @@ -8476,6 +11390,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Main image. + * + * @type { image.Image } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ main: image.Image; /** @@ -8505,6 +11427,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Release Photo object. + * + * @returns { Promise<void> } Promise used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ release(): Promise<void>; } @@ -8547,6 +11477,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Enumerates the camera video codec type. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum VideoCodecType { /** * Codec type AVC. @@ -8554,6 +11492,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Video encoding type AVC. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ AVC = 0, /** @@ -8562,6 +11507,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Video encoding type HEVC. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ HEVC = 1 } @@ -8573,6 +11525,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Photo output object. + * + * @extends CameraOutput + * @interface PhotoOutput + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface PhotoOutput extends CameraOutput { /** * Start capture output. @@ -8583,34 +11544,78 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ - capture(callback: AsyncCallback<void>): void; - /** * Start capture output. * - * @returns { Promise<void> } Promise used to return the result. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400104 - Session not running. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + capture(callback: AsyncCallback<void>): void; + + /** + * Start capture output. + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400104 - Session not running. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 10 + */ + /** + * Start capture output. + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400104 - Session not running. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + capture(): Promise<void>; + + /** + * Start capture output. + * + * @param { PhotoCaptureSetting } setting - Photo capture settings. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400104 - Session not running. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 10 + */ + /** + * Start capture output. + * + * @param { PhotoCaptureSetting } setting - Photo capture settings. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. * @throws { BusinessError } 7400104 - Session not running. * @throws { BusinessError } 7400201 - Camera service fatal error. * @syscap SystemCapability.Multimedia.Camera.Core - * @since 10 + * @atomicservice + * @since 19 */ - capture(): Promise<void>; + capture(setting: PhotoCaptureSetting, callback: AsyncCallback<void>): void; /** * Start capture output. * * @param { PhotoCaptureSetting } setting - Photo capture settings. - * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. * @throws { BusinessError } 7400104 - Session not running. * @throws { BusinessError } 7400201 - Camera service fatal error. * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ - capture(setting: PhotoCaptureSetting, callback: AsyncCallback<void>): void; - /** * Start capture output. + * Remove optional param. * * @param { PhotoCaptureSetting } setting - Photo capture settings. * @returns { Promise<void> } Promise used to return the result. @@ -8618,7 +11623,7 @@ declare namespace camera { * @throws { BusinessError } 7400104 - Session not running. * @throws { BusinessError } 7400201 - Camera service fatal error. * @syscap SystemCapability.Multimedia.Camera.Core - * @since 10 + * @since 11 */ /** * Start capture output. @@ -8630,7 +11635,8 @@ declare namespace camera { * @throws { BusinessError } 7400104 - Session not running. * @throws { BusinessError } 7400201 - Camera service fatal error. * @syscap SystemCapability.Multimedia.Camera.Core - * @since 11 + * @atomicservice + * @since 19 */ capture(setting: PhotoCaptureSetting): Promise<void>; @@ -8659,7 +11665,7 @@ declare namespace camera { * @systemapi * @since 11 */ - confirmCapture(); + confirmCapture(): void; /** * Confirm if the raw image delivery is supported @@ -8673,7 +11679,7 @@ declare namespace camera { * @since 13 */ isRawDeliverySupported(): boolean; - + /** * Enable raw image image delivery. * @@ -8767,6 +11773,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Get supported moving photo video codec types. + * + * @returns { Array<VideoCodecType> } An array of supported video codec types for moving photo. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getSupportedMovingPhotoVideoCodecTypes(): Array<VideoCodecType>; /** @@ -8777,6 +11792,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Sets codec type for moving photo, default to AVC. + * + * @param { VideoCodecType } codecType - Codec type for moving photo. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ setMovingPhotoVideoCodecType(codecType: VideoCodecType): void; /** @@ -8787,6 +11811,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Subscribes photo available event callback. + * + * @param { 'photoAvailable' } type - Event type. + * @param { AsyncCallback<Photo> } callback - Callback used to get the Photo. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'photoAvailable', callback: AsyncCallback<Photo>): void; /** @@ -8797,6 +11830,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Unsubscribes photo available event callback. + * + * @param { 'photoAvailable' } type - Event type. + * @param { AsyncCallback<Photo> } callback - Callback used to get the Photo. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'photoAvailable', callback?: AsyncCallback<Photo>): void; /** @@ -8824,13 +11866,30 @@ declare namespace camera { off(type: 'deferredPhotoProxyAvailable', callback?: AsyncCallback<DeferredPhotoProxy>): void; /** - * Subscribes photo asset event callback. + * Subscribes to photo asset event callback. * + * <p>This API processes deferred photo delivery data by quickly displaying low-quality images to give + * users the impression of faster photo capture, while also generating high-quality images to maintain the + * final output quality. For details about the design specifications, see {@link + * https://developer.huawei.com/consumer/en/doc/best-practices/bpta-camera-shot2see}. </p> * @param { 'photoAssetAvailable' } type - Event type. * @param { AsyncCallback<photoAccessHelper.PhotoAsset> } callback - Callback used to get the asset. * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Subscribes to photo asset event callback. + * + * <p>This API processes deferred photo delivery data by quickly displaying low-quality images to give + * users the impression of faster photo capture, while also generating high-quality images to maintain the + * final output quality. For details about the design specifications, see {@link + * https://developer.huawei.com/consumer/en/doc/best-practices/bpta-camera-shot2see}. </p> + * @param { 'photoAssetAvailable' } type - Event type. + * @param { AsyncCallback<photoAccessHelper.PhotoAsset> } callback - Callback used to get the asset. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'photoAssetAvailable', callback: AsyncCallback<photoAccessHelper.PhotoAsset>): void; /** @@ -8841,7 +11900,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ - off(type: 'photoAssetAvailable', callback?: AsyncCallback<photoAccessHelper.PhotoAsset>): void; + /** + * Unsubscribes photo asset event callback. + * + * @param { 'photoAssetAvailable' } type - Event type. + * @param { AsyncCallback<photoAccessHelper.PhotoAsset> } callback - Callback used to get the asset. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + off(type: 'photoAssetAvailable', callback?: AsyncCallback<photoAccessHelper.PhotoAsset>): void; /** * Check whether to support mirror photo. @@ -8850,6 +11918,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Check whether to support mirror photo. + * + * @returns { boolean } Is the mirror supported. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isMirrorSupported(): boolean; /** @@ -8862,6 +11938,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 13 */ + /** + * Enable mirror for photo capture. + * + * @param { boolean } enabled - enable photo mirror if TRUE. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400103 - Session not config. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enableMirror(enabled: boolean): void; /** @@ -8896,6 +11983,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Subscribes capture start event callback. + * + * @param { 'captureStartWithInfo' } type - Event type. + * @param { AsyncCallback<CaptureStartInfo> } callback - Callback used to get the capture start info. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'captureStartWithInfo', callback: AsyncCallback<CaptureStartInfo>): void; /** @@ -8906,6 +12002,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Unsubscribes from capture start event callback. + * + * @param { 'captureStartWithInfo' } type - Event type. + * @param { AsyncCallback<CaptureStartInfo> } callback - Callback used to get the capture start info. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'captureStartWithInfo', callback?: AsyncCallback<CaptureStartInfo>): void; /** @@ -8916,6 +12021,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes frame shutter event callback. + * + * @param { 'frameShutter' } type - Event type. + * @param { AsyncCallback<FrameShutterInfo> } callback - Callback used to get the frame shutter information. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'frameShutter', callback: AsyncCallback<FrameShutterInfo>): void; /** @@ -8926,6 +12040,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from frame shutter event callback. + * + * @param { 'frameShutter' } type - Event type. + * @param { AsyncCallback<FrameShutterInfo> } callback - Callback used to get the frame shutter information. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'frameShutter', callback?: AsyncCallback<FrameShutterInfo>): void; /** @@ -8936,6 +12059,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Subscribes frame shutter end event callback. + * + * @param { 'frameShutterEnd' } type - Event type. + * @param { AsyncCallback<FrameShutterEndInfo> } callback - Callback used to get the frame shutter end information. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'frameShutterEnd', callback: AsyncCallback<FrameShutterEndInfo>): void; /** @@ -8946,6 +12078,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Unsubscribes from frame shutter end event callback. + * + * @param { 'frameShutterEnd' } type - Event type. + * @param { AsyncCallback<FrameShutterEndInfo> } callback - Callback used to get the frame shutter end information. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'frameShutterEnd', callback?: AsyncCallback<FrameShutterEndInfo>): void; /** @@ -8956,6 +12097,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes capture end event callback. + * + * @param { 'captureEnd' } type - Listen to the event, fixed to 'captureEnd', when photoOutput is created successfully. + * This event can be triggered when the photoOutput is created successfully. + * @param { AsyncCallback<CaptureEndInfo> } callback - Callback used to get the capture end information. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'captureEnd', callback: AsyncCallback<CaptureEndInfo>): void; /** @@ -8966,6 +12117,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from capture end event callback. + * + * @param { 'captureEnd' } type - Event type. + * @param { AsyncCallback<CaptureEndInfo> } callback - Callback used to get the capture end information. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'captureEnd', callback?: AsyncCallback<CaptureEndInfo>): void; /** @@ -8976,6 +12136,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Subscribes capture ready event callback. After receiving the callback, can proceed to the next capture + * + * @param { 'captureReady' } type - Event type. + * @param { AsyncCallback<void> } callback - Callback used to notice capture ready. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'captureReady', callback: AsyncCallback<void>): void; /** @@ -8986,6 +12155,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Unsubscribes from capture ready event callback. + * + * @param { 'captureReady' } type - Event type. + * @param { AsyncCallback<void> } callback - Callback used to notice capture ready. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'captureReady', callback?: AsyncCallback<void>): void; /** @@ -8996,6 +12174,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Subscribes estimated capture duration event callback. + * + * @param { 'estimatedCaptureDuration' } type - Event type. + * @param { AsyncCallback<number> } callback - Callback used to notify the estimated capture duration (in milliseconds). + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'estimatedCaptureDuration', callback: AsyncCallback<number>): void; /** @@ -9006,6 +12193,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Unsubscribes from estimated capture duration event callback. + * + * @param { 'estimatedCaptureDuration' } type - Event type. + * @param { AsyncCallback<number> } callback - Callback used to notify the estimated capture duration (in milliseconds). + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'estimatedCaptureDuration', callback?: AsyncCallback<number>): void; /** @@ -9016,6 +12212,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes to error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the photo output errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'error', callback: ErrorCallback): void; /** @@ -9026,6 +12231,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the photo output errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'error', callback?: ErrorCallback): void; /** @@ -9036,6 +12250,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets the current preconfig type if you had already call preconfig interface. + * + * @returns { Profile } The current preconfig type. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getActiveProfile(): Profile; /** @@ -9151,7 +12374,7 @@ declare namespace camera { * @systemapi * @since 13 */ - isAutoCloudImageEnhancementSupported(): boolean; + isAutoCloudImageEnhancementSupported(): boolean; /** * Enable auto cloud image enhancement @@ -9164,7 +12387,7 @@ declare namespace camera { * @systemapi * @since 13 */ - enableAutoCloudImageEnhancement(enabled: boolean): void; + enableAutoCloudImageEnhancement(enabled: boolean): void; /** * Confirm if moving photo supported. @@ -9174,6 +12397,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Confirm if moving photo supported. + * + * @returns { boolean } TRUE if the moving photo is supported. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isMovingPhotoSupported(): boolean; /** @@ -9187,6 +12419,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Enable moving photo. + * + * @permission ohos.permission.MICROPHONE + * @param { boolean } enabled - Target state for moving photo. + * @throws { BusinessError } 201 - permission denied. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enableMovingPhoto(enabled: boolean): void; /** @@ -9199,6 +12443,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets the photo rotation angle. + * + * @param { number } deviceDegree - The current device rotation degree. + * @returns { ImageRotation } The photo rotation angle. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getPhotoRotation(deviceDegree: number): ImageRotation; /** @@ -9249,7 +12504,7 @@ declare namespace camera { * @systemapi * @since 18 */ - off(type: 'offlineDeliveryFinished', callback?: AsyncCallback<void>): void + off(type: 'offlineDeliveryFinished', callback?: AsyncCallback<void>): void; } /** @@ -9259,6 +12514,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Frame shutter callback info. + * + * @typedef FrameShutterInfo + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface FrameShutterInfo { /** * Capture id. @@ -9267,13 +12530,29 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ - captureId: number; + /** + * Capture id. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + captureId: number; + /** + * Timestamp for frame. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 10 + */ /** * Timestamp for frame. * * @type { number } * @syscap SystemCapability.Multimedia.Camera.Core - * @since 10 + * @atomicservice + * @since 19 */ timestamp: number; } @@ -9285,6 +12564,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Frame shutter end callback info. + * + * @typedef FrameShutterEndInfo + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface FrameShutterEndInfo { /** * Capture id. @@ -9293,6 +12580,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Capture id. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ captureId: number; } @@ -9303,6 +12598,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Capture start info. + * + * @typedef CaptureStartInfo + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface CaptureStartInfo { /** * Capture id. @@ -9311,6 +12614,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Capture id. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ captureId: number; /** * Time(in milliseconds) is the shutter time for the photo. @@ -9319,6 +12630,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 11 */ + /** + * Time(in milliseconds) is the shutter time for the photo. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ time: number; } @@ -9329,6 +12648,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Capture end info. + * + * @typedef CaptureEndInfo + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface CaptureEndInfo { /** * Capture id. @@ -9337,6 +12664,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Capture id. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ captureId: number; /** * Frame count. @@ -9345,6 +12680,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Frame count. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ frameCount: number; } @@ -9382,11 +12725,20 @@ declare namespace camera { /** * Video output object. * - * extends CameraOutput + * @extends CameraOutput * @interface VideoOutput * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Video output object. + * + * @extends CameraOutput + * @interface VideoOutput + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface VideoOutput extends CameraOutput { /** * Start video output. @@ -9397,6 +12749,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Start video output. + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400103 - Session not config. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ start(callback: AsyncCallback<void>): void; /** @@ -9408,6 +12770,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Start video output. + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400103 - Session not config. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ start(): Promise<void>; /** @@ -9417,6 +12789,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Stop video output. + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ stop(callback: AsyncCallback<void>): void; /** @@ -9426,6 +12806,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Stop video output. + * + * @returns { Promise<void> } Promise used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ stop(): Promise<void>; /** @@ -9444,6 +12832,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 15 */ + /** + * Determine whether video mirror is supported. + * + * @returns { boolean } Is video mirror supported. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ isMirrorSupported(): boolean; /** @@ -9466,6 +12862,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 15 */ + /** + * Enable mirror for video capture. + * + * @param { boolean } enabled - enable video mirror if TRUE. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400103 - Session not config. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enableMirror(enabled: boolean): void; /** @@ -9475,7 +12881,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ - getSupportedFrameRates(): Array<FrameRateRange> + /** + * Get supported frame rates which can be set during session running. + * + * @returns { Array<FrameRateRange> } The array of supported frame rate range. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + getSupportedFrameRates(): Array<FrameRateRange>; /** * Set a frame rate range. @@ -9487,7 +12901,18 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ - setFrameRate(minFps: number, maxFps: number): void + /** + * Set a frame rate range. + * + * @param { number } minFps - Minimum frame rate per second. + * @param { number } maxFps - Maximum frame rate per second. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400110 - Unresolved conflicts with current configurations. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + setFrameRate(minFps: number, maxFps: number): void; /** * Get active frame rate range which has been set before. @@ -9496,6 +12921,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Get active frame rate range which has been set before. + * + * @returns { FrameRateRange } The active frame rate range. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getActiveFrameRate(): FrameRateRange; /** @@ -9508,6 +12941,17 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets the video rotation angle. + * + * @param { number } deviceDegree - The current device rotation degree. + * @returns { ImageRotation } The video rotation angle. + * @throws { BusinessError } 7400101 - Parameter missing or parameter type incorrect. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getVideoRotation(deviceDegree: number): ImageRotation; /** @@ -9597,7 +13041,6 @@ declare namespace camera { * * @param { boolean } enabled - enable auto frame rate if TRUE. * @throws { BusinessError } 202 - Not System Application. - * @throws { BusinessError } 401 - Parameter missing or parameter type incorrect. * @throws { BusinessError } 7400103 - Session not config. * @syscap SystemCapability.Multimedia.Camera.Core * @systemapi @@ -9637,6 +13080,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes frame start event callback. + * + * @param { 'frameStart' } type - Event type. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'frameStart', callback: AsyncCallback<void>): void; /** @@ -9647,6 +13099,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from frame start event callback. + * + * @param { 'frameStart' } type - Event type. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'frameStart', callback?: AsyncCallback<void>): void; /** @@ -9657,6 +13118,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes frame end event callback. + * + * @param { 'frameEnd' } type - Event type. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'frameEnd', callback: AsyncCallback<void>): void; /** @@ -9667,6 +13137,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from frame end event callback. + * + * @param { 'frameEnd' } type - Event type. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'frameEnd', callback?: AsyncCallback<void>): void; /** @@ -9677,6 +13156,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes to error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the video output errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'error', callback: ErrorCallback): void; /** @@ -9687,6 +13175,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the video output errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'error', callback?: ErrorCallback): void; /** @@ -9697,6 +13194,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 12 */ + /** + * Gets the current preconfig type if you had already call preconfig interface. + * + * @returns { VideoProfile } The current preconfig type. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ getActiveProfile(): VideoProfile; /** @@ -9739,7 +13245,7 @@ declare namespace camera { * @systemapi * @since 12 */ - VIDEO_META_MAKER_INFO = 0, + VIDEO_META_MAKER_INFO = 0 } /** @@ -9749,6 +13255,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Metadata object type. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ enum MetadataObjectType { /** * Face detection type. @@ -9756,6 +13270,13 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Face detection type. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ FACE_DETECTION = 0, /** @@ -9875,37 +13396,77 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Rectangle definition. + * + * @typedef Rect + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface Rect { /** - * X coordinator of top left point. + * X coordinator of top left point. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 10 + */ + /** + * X coordinator of top left point. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + topLeftX: number; + /** + * Y coordinator of top left point. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 10 + */ + /** + * Y coordinator of top left point. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + topLeftY: number; + /** + * Width of this rectangle. * * @type { number } * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ - topLeftX: number; /** - * Y coordinator of top left point. + * Width of this rectangle. * * @type { number } * @syscap SystemCapability.Multimedia.Camera.Core - * @since 10 + * @atomicservice + * @since 19 */ - topLeftY: number; + width: number; /** - * Width of this rectangle. + * Height of this rectangle. * * @type { number } * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ - width: number; /** * Height of this rectangle. * * @type { number } * @syscap SystemCapability.Multimedia.Camera.Core - * @since 10 + * @atomicservice + * @since 19 */ height: number; } @@ -9927,7 +13488,7 @@ declare namespace camera { * @since 13 */ NEUTRAL = 0, - + /** * Emotion type: Sadness. * @@ -9945,7 +13506,7 @@ declare namespace camera { * @since 13 */ SMILE = 2, - + /** * Emotion type: Surprise. * @@ -9963,6 +13524,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Metadata object basis. + * + * @typedef MetadataObject + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface MetadataObject { /** * Metadata object type. @@ -9972,6 +13541,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Metadata object type. + * + * @type { MetadataObjectType } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly type: MetadataObjectType; /** * Metadata object timestamp in milliseconds. @@ -9981,6 +13559,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Metadata object timestamp in milliseconds. + * + * @type { number } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly timestamp: number; /** * The axis-aligned bounding box of detected metadata object. @@ -9990,6 +13577,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * The axis-aligned bounding box of detected metadata object. + * + * @type { Rect } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ readonly boundingBox: Rect; /** * Metadata object id. @@ -10100,7 +13696,7 @@ declare namespace camera { */ readonly rollAngle: number; } - + /** * Metadata object for human body. * @@ -10112,7 +13708,7 @@ declare namespace camera { */ interface MetadataHumanBodyObject extends MetadataObject { } - + /** * Metadata object for cat face. * @@ -10145,7 +13741,7 @@ declare namespace camera { */ readonly rightEyeBoundingBox: Rect; } - + /** * Metadata object for cat body. * @@ -10157,7 +13753,7 @@ declare namespace camera { */ interface MetadataCatBodyObject extends MetadataObject { } - + /** * Metadata object for dog face. * @@ -10262,11 +13858,20 @@ declare namespace camera { /** * Metadata Output object * - * extends CameraOutput + * @extends CameraOutput * @interface MetadataOutput * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Metadata Output object + * + * @extends CameraOutput + * @interface MetadataOutput + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ interface MetadataOutput extends CameraOutput { /** * Start output metadata @@ -10277,6 +13882,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Start output metadata + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @throws { BusinessError } 7400103 - Session not config. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ start(callback: AsyncCallback<void>): void; /** @@ -10288,6 +13903,16 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Start output metadata + * + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 7400103 - Session not config. + * @throws { BusinessError } 7400201 - Camera service fatal error. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ start(): Promise<void>; /** @@ -10297,6 +13922,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Stop output metadata + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ stop(callback: AsyncCallback<void>): void; /** @@ -10306,6 +13939,14 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Stop output metadata + * + * @returns { Promise<void> } Promise used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ stop(): Promise<void>; /** @@ -10344,6 +13985,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes to metadata objects available event callback. + * + * @param { 'metadataObjectsAvailable' } type - Event type. + * @param { AsyncCallback<Array<MetadataObject>> } callback - Callback used to get the available metadata objects. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'metadataObjectsAvailable', callback: AsyncCallback<Array<MetadataObject>>): void; /** @@ -10354,6 +14004,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from metadata objects available event callback. + * + * @param { 'metadataObjectsAvailable' } type - Event type. + * @param { AsyncCallback<Array<MetadataObject>> } callback - Callback used to get the available metadata objects. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'metadataObjectsAvailable', callback?: AsyncCallback<Array<MetadataObject>>): void; /** @@ -10364,6 +14023,15 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Subscribes to error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the video output errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ on(type: 'error', callback: ErrorCallback): void; /** @@ -10374,9 +14042,158 @@ declare namespace camera { * @syscap SystemCapability.Multimedia.Camera.Core * @since 10 */ + /** + * Unsubscribes from error events. + * + * @param { 'error' } type - Event type. + * @param { ErrorCallback } callback - Callback used to get the video output errors. + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ off(type: 'error', callback?: ErrorCallback): void; } + /** + * Enum for camera concurrent type. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Enum for camera concurrent type. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + enum CameraConcurrentType { + /** + * Cameras concurrency with limited capabilities. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Cameras concurrency with limited capabilities. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + CAMERA_LIMITED_CAPABILITY = 0, + + /** + * Cameras concurrency with full capabilities. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Cameras concurrency with full capabilities. + * + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + CAMERA_FULL_CAPABILITY = 1, + } + + /** + * Camera concurrent information. + * + * @interface CameraConcurrentInfo + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Camera concurrent information. + * + * @interface CameraConcurrentInfo + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + interface CameraConcurrentInfo { + /** + * Camera instance. + * + * @type { CameraDevice } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Camera instance. + * + * @type { CameraDevice } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + readonly device: CameraDevice; + + /** + * Camera concurrent type. + * + * @type { CameraConcurrentType } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Camera concurrent type. + * + * @type { CameraConcurrentType } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + readonly type: CameraConcurrentType; + + /** + * Supported scene modes. + * + * @type { Array<SceneMode> } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Supported scene modes. + * + * @type { Array<SceneMode> } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + readonly modes: Array<SceneMode>; + + /** + * Supported outputCapability. + * + * @type { Array<CameraOutputCapability> } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @since 18 + */ + /** + * Supported outputCapability. + * + * @type { Array<CameraOutputCapability> } + * @readonly + * @syscap SystemCapability.Multimedia.Camera.Core + * @atomicservice + * @since 19 + */ + readonly outputCapabilities: Array<CameraOutputCapability>; + } + /** * Enumerates the timelapse recording state. * @@ -10764,7 +14581,7 @@ declare namespace camera { */ setTimeLapsePreviewType(type: TimeLapsePreviewType): void; } - + /** * Enum for Depth Data Accuracy. * @@ -11239,6 +15056,46 @@ declare namespace camera { */ setColorReservation(type: ColorReservationType): void; } + + /** + * Quick thumbnail object + * + * @typedef QuickThumbnail + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 19 + */ + interface QuickThumbnail { + /** + * capture id. + * + * @type { number } + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 19 + */ + readonly captureId: number; + + /** + * Thumbnail image. + * + * @type { image.PixelMap } + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 19 + */ + thumbnailImage: image.PixelMap; + + /** + * Release quick thumbnail object. + * + * @returns { Promise<void> } Promise used to return the result. + * @syscap SystemCapability.Multimedia.Camera.Core + * @systemapi + * @since 19 + */ + release(): Promise<void>; + } } export default camera; diff --git a/api/@ohos.multimedia.cameraPicker.d.ts b/api/@ohos.multimedia.cameraPicker.d.ts index 0aaf06ab634d729c45695e09af149d08f537c456..9998900eda19b3ba50fb97af95a15b977c3e8bff 100644 --- a/api/@ohos.multimedia.cameraPicker.d.ts +++ b/api/@ohos.multimedia.cameraPicker.d.ts @@ -214,7 +214,8 @@ declare namespace cameraPicker { } /** - * Pick function to get a photo or video result. + * Launch the camera picker and configure it to photo or video mode base on the incoming media type. + * The photo or video result will be returned via a Promise upon completion of the operation. * * @param { Context } context - From UIExtensionAbility. * @param { Array<PickerMediaType> } mediaTypes - Pick media type. @@ -229,7 +230,8 @@ declare namespace cameraPicker { * @param { Context } context - From UIExtensionAbility. * @param { Array<PickerMediaType> } mediaTypes - Pick media type. * @param { PickerProfile } pickerProfile - Picker input Profile. - * @returns { Promise<PickerResult> } pick result. + * @returns { Promise<PickerResult> } Get the processed result of the camera picker using the Promise + * method. The return value is PickerResult. * @syscap SystemCapability.Multimedia.Camera.Core * @atomicservice * @since 12 diff --git a/api/@ohos.multimedia.image.d.ets b/api/@ohos.multimedia.image.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..85d84912bf6587e42666e22a704a06a786f66ad5 --- /dev/null +++ b/api/@ohos.multimedia.image.d.ets @@ -0,0 +1,3215 @@ +/* + * Copyright (C) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ImageKit + * @arkts 1.2 + */ + +import { AsyncCallback } from './@ohos.base'; +import type colorSpaceManager from './@ohos.graphics.colorSpaceManager'; +import type resourceManager from './@ohos.resourceManager'; +import type rpc from './@ohos.rpc'; + +/** + * This module provides the capability of image codec and access + * @namespace image + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +declare namespace image { + /** + * Enumerates pixel map formats. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + enum PixelMapFormat { + /** + * Indicates an unknown format. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + UNKNOWN = 0, + + /** + * Indicates that each pixel is stored on 16 bits. Only the R, G, and B components are encoded + * from the higher-order to the lower-order bits: red is stored with 5 bits of precision, + * green is stored with 6 bits of precision, and blue is stored with 5 bits of precision. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + RGB_565 = 2, + + /** + * Indicates that each pixel is stored on 32 bits. Each pixel contains 4 components:B(8bits), G(8bits), R(8bits), A(8bits) + * and are stored from the higher-order to the lower-order bits. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + RGBA_8888 = 3, + + /** + * Indicates that each pixel is stored on 32 bits. Each pixel contains 4 components:B(8bits), G(8bits), R(8bits), A(8bits) + * and are stored from the higher-order to the lower-order bits. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + BGRA_8888 = 4, + + /** + * Indicates that each pixel is stored on 24 bits. Each pixel contains 3 components:R(8bits), G(8bits), B(8bits) + * and are stored from the higher-order to the lower-order bits. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + RGB_888 = 5, + + /** + * Indicates that each pixel is stored on 8 bits. Each pixel contains 1 component:ALPHA(8bits) + * and is stored from the higher-order to the lower-order bits. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + ALPHA_8 = 6, + + /** + * Indicates that each pixel is stored on 32 bits. Each pixel contains 4 components:B(8bits), G(8bits), R(8bits), A(8bits) + * and are stored from the higher-order to the lower-order bits in F16. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + RGBA_F16 = 7, + + /** + * Indicates that the storage order is to store Y first and then V U alternately each occupies 8 bits + * and are stored from the higher-order to the lower-order bits. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + NV21 = 8, + + /** + * Indicates that the storage order is to store Y first and then U V alternately each occupies 8 bits + * and are stored from the higher-order to the lower-order bits. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + NV12 = 9, + + /** + * Indicates that each pixel is stored on 32 bits. Each pixel contains 4 components: + * R(10bits), G(10bits), B(10bits), A(2bits) and are stored from the higher-order to the lower-order bits. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + RGBA_1010102 = 10, + + /** + * Indicates that the storage order is to store Y first and then U V alternately each occupies 10 bits + * and are stored from the higher-order to the lower-order bits. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + YCBCR_P010 = 11, + + /** + * Indicates that the storage order is to store Y first and then V U alternately each occupies 10 bits + * and are stored from the higher-order to the lower-order bits. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + YCRCB_P010 = 12, + } + + /** + * Enumerates image resolution quality. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @systemapi + * @since 20 + */ + enum ResolutionQuality { + /** + * Low quality images, short decoding time. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @systemapi + * @since 20 + */ + LOW = 1, + + /** + * Medium quality images, moderate decoding time. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @systemapi + * @since 20 + */ + MEDIUM = 2, + + /** + * High quality images, longer decoding time. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @systemapi + * @since 20 + */ + HIGH = 3 + } + + /** + * Describes the size of an image. + * + * @typedef Size + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + interface Size { + /** + * Height + * + * @type { int } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + height: int; + + /** + * Width + * + * @type { int } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + width: int; + } + + /** + * Enumerates exchangeable image file format (Exif) information types of an image. + * + * @enum { string } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + enum PropertyKey { + /** + * Number of bits in each pixel of an image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + BITS_PER_SAMPLE = 'BitsPerSample', + + /** + * Image rotation mode. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + ORIENTATION = 'Orientation', + + /** + * Image length. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + IMAGE_LENGTH = 'ImageLength', + + /** + * Image width. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + IMAGE_WIDTH = 'ImageWidth', + + /** + * GPS latitude. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_LATITUDE = 'GPSLatitude', + + /** + * GPS longitude. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_LONGITUDE = 'GPSLongitude', + + /** + * GPS latitude reference. For example, N indicates north latitude and S indicates south latitude. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_LATITUDE_REF = 'GPSLatitudeRef', + + /** + * GPS longitude reference. For example, E indicates east longitude and W indicates west longitude. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_LONGITUDE_REF = 'GPSLongitudeRef', + + /** + * Shooting time + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + DATE_TIME_ORIGINAL = 'DateTimeOriginal', + + /** + * Exposure time + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + EXPOSURE_TIME = 'ExposureTime', + + /** + * Scene type + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_TYPE = 'SceneType', + + /** + * ISO speedratings + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + ISO_SPEED_RATINGS = 'ISOSpeedRatings', + + /** + * Aperture value + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + F_NUMBER = 'FNumber', + + /** + * Date time + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + DATE_TIME = 'DateTime', + + /** + * GPS time stamp + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + GPS_TIME_STAMP = 'GPSTimeStamp', + + /** + * GPS date stamp + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + GPS_DATE_STAMP = 'GPSDateStamp', + + /** + * Image description + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + IMAGE_DESCRIPTION = 'ImageDescription', + + /** + * Make + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + MAKE = 'Make', + + /** + * Model + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + MODEL = 'Model', + + /** + * Photo mode + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + PHOTO_MODE = 'PhotoMode', + + /** + * Sensitivity type + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + SENSITIVITY_TYPE = 'SensitivityType', + + /** + * Standard output sensitivity + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + STANDARD_OUTPUT_SENSITIVITY = 'StandardOutputSensitivity', + + /** + * Recommended exposure index + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + RECOMMENDED_EXPOSURE_INDEX = 'RecommendedExposureIndex', + + /** + * ISO speed + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + ISO_SPEED = 'ISOSpeedRatings', + + /** + * Aperture value + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + APERTURE_VALUE = 'ApertureValue', + + /** + * Exposure bias value + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + EXPOSURE_BIAS_VALUE = 'ExposureBiasValue', + + /** + * Metering mode + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + METERING_MODE = 'MeteringMode', + + /** + * Light source + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + LIGHT_SOURCE = 'LightSource', + + /** + * Flash + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + FLASH = 'Flash', + + /** + * Focal length + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + FOCAL_LENGTH = 'FocalLength', + + /** + * User comment + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + USER_COMMENT = 'UserComment', + + /** + * Pixel x dimension + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + PIXEL_X_DIMENSION = 'PixelXDimension', + + /** + * Pixel y dimension + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + PIXEL_Y_DIMENSION = 'PixelYDimension', + + /** + * White balance + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + WHITE_BALANCE = 'WhiteBalance', + + /** + * Focal length in 35mm film + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + FOCAL_LENGTH_IN_35_MM_FILM = 'FocalLengthIn35mmFilm', + + /** + * Capture mode + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + CAPTURE_MODE = 'HwMnoteCaptureMode', + + /** + * Physical aperture + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + PHYSICAL_APERTURE = 'HwMnotePhysicalAperture', + + /** + * Roll Angle + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + ROLL_ANGLE = 'HwMnoteRollAngle', + + /** + * Pitch Angle + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + PITCH_ANGLE = 'HwMnotePitchAngle', + + /** + * Capture Scene: Food + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_FOOD_CONF = 'HwMnoteSceneFoodConf', + + /** + * Capture Scene: Stage + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_STAGE_CONF = 'HwMnoteSceneStageConf', + + /** + * Capture Scene: Blue Sky + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_BLUE_SKY_CONF = 'HwMnoteSceneBlueSkyConf', + + /** + * Capture Scene: Green Plant + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_GREEN_PLANT_CONF = 'HwMnoteSceneGreenPlantConf', + + /** + * Capture Scene: Beach + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_BEACH_CONF = 'HwMnoteSceneBeachConf', + + /** + * Capture Scene: Snow + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_SNOW_CONF = 'HwMnoteSceneSnowConf', + + /** + * Capture Scene: Sunset + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_SUNSET_CONF = 'HwMnoteSceneSunsetConf', + + /** + * Capture Scene: Flowers + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_FLOWERS_CONF = 'HwMnoteSceneFlowersConf', + + /** + * Capture Scene: Night + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_NIGHT_CONF = 'HwMnoteSceneNightConf', + + /** + * Capture Scene: Text + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_TEXT_CONF = 'HwMnoteSceneTextConf', + + /** + * Face Count + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FACE_COUNT = 'HwMnoteFaceCount', + + /** + * Focus Mode + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FOCUS_MODE = 'HwMnoteFocusMode', + + /** + * The scheme used for image compression. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + COMPRESSION = 'Compression', + + /** + * Pixel composition, such as RGB or YCbCr. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + PHOTOMETRIC_INTERPRETATION = 'PhotometricInterpretation', + + /** + * For each strip, the byte offset of that strip. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + STRIP_OFFSETS = 'StripOffsets', + + /** + * The number of components per pixel. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SAMPLES_PER_PIXEL = 'SamplesPerPixel', + + /** + * The number of rows per strip of image data. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + ROWS_PER_STRIP = 'RowsPerStrip', + + /** + * The total number of bytes in each strip of image data. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + STRIP_BYTE_COUNTS = 'StripByteCounts', + + /** + * The image resolution in the width direction. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + X_RESOLUTION = 'XResolution', + + /** + * The image resolution in the height direction. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + Y_RESOLUTION = 'YResolution', + + /** + * Indicates whether pixel components are recorded in a chunky or planar format. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + PLANAR_CONFIGURATION = 'PlanarConfiguration', + + /** + * The unit used to measure XResolution and YResolution. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + RESOLUTION_UNIT = 'ResolutionUnit', + + /** + * The transfer function for the image, typically used for color correction. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + TRANSFER_FUNCTION = 'TransferFunction', + + /** + * The name and version of the software used to generate the image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SOFTWARE = 'Software', + + /** + * The name of the person who created the image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + ARTIST = 'Artist', + + /** + * The chromaticity of the white point of the image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + WHITE_POINT = 'WhitePoint', + + /** + * The chromaticity of the primary colors of the image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + PRIMARY_CHROMATICITIES = 'PrimaryChromaticities', + + /** + * The matrix coefficients for transformation from RGB to YCbCr image data. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + YCBCR_COEFFICIENTS = 'YCbCrCoefficients', + + /** + * The sampling ratio of chrominance components to the luminance component. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + YCBCR_SUB_SAMPLING = 'YCbCrSubSampling', + + /** + * The position of chrominance components in relation to the luminance component. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + YCBCR_POSITIONING = 'YCbCrPositioning', + + /** + * The reference black point value and reference white point value. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + REFERENCE_BLACK_WHITE = 'ReferenceBlackWhite', + + /** + * Copyright information for the image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + COPYRIGHT = 'Copyright', + + /** + * The offset to the start byte (SOI) of JPEG compressed thumbnail data. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + JPEG_INTERCHANGE_FORMAT = 'JPEGInterchangeFormat', + + /** + * The number of bytes of JPEG compressed thumbnail data. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + JPEG_INTERCHANGE_FORMAT_LENGTH = 'JPEGInterchangeFormatLength', + + /** + * The class of the program used by the camera to set exposure when the picture is taken. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + EXPOSURE_PROGRAM = 'ExposureProgram', + + /** + * Indicates the spectral sensitivity of each channel of the camera used. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SPECTRAL_SENSITIVITY = 'SpectralSensitivity', + + /** + * Indicates the Opto-Electric Conversion Function (OECF) specified in ISO 14524. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + OECF = 'OECF', + + /** + * The version of the Exif standard supported. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + EXIF_VERSION = 'ExifVersion', + + /** + * The date and time when the image was stored as digital data. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + DATE_TIME_DIGITIZED = 'DateTimeDigitized', + + /** + * Information specific to compressed data. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + COMPONENTS_CONFIGURATION = 'ComponentsConfiguration', + + /** + * The shutter speed, expressed as an APEX (Additive System of Photographic Exposure) value. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SHUTTER_SPEED = 'ShutterSpeedValue', + + /** + * The brightness value of the image, in APEX units. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + BRIGHTNESS_VALUE = 'BrightnessValue', + + /** + * The smallest F number of lens. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + MAX_APERTURE_VALUE = 'MaxApertureValue', + + /** + * The distance to the subject, measured in meters. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SUBJECT_DISTANCE = 'SubjectDistance', + + /** + * This tag indicate the location and area of the main subject in the overall scene. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SUBJECT_AREA = 'SubjectArea', + + /** + * A tag for manufacturers of Exif/DCF writers to record any desired information. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + MAKER_NOTE = 'MakerNote', + + /** + * A tag for record fractions of seconds for the DateTime tag. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SUBSEC_TIME = 'SubsecTime', + + /** + * A tag used to record fractions of seconds for the DateTimeOriginal tag. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SUBSEC_TIME_ORIGINAL = 'SubsecTimeOriginal', + + /** + * A tag used to record fractions of seconds for the DateTimeDigitized tag. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SUBSEC_TIME_DIGITIZED = 'SubsecTimeDigitized', + + /** + * This tag denotes the Flashpix format version supported by an FPXR file, enhancing device compatibility. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FLASHPIX_VERSION = 'FlashpixVersion', + + /** + * The color space information tag, often recorded as the color space specifier. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + COLOR_SPACE = 'ColorSpace', + + /** + * The name of an audio file related to the image data. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + RELATED_SOUND_FILE = 'RelatedSoundFile', + + /** + * Strobe energy at image capture, in BCPS. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FLASH_ENERGY = 'FlashEnergy', + + /** + * Camera or input device spatial frequency table. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SPATIAL_FREQUENCY_RESPONSE = 'SpatialFrequencyResponse', + + /** + * Pixels per FocalPlaneResolutionUnit in the image width. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FOCAL_PLANE_X_RESOLUTION = 'FocalPlaneXResolution', + + /** + * Pixels per FocalPlaneResolutionUnit in the image height. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FOCAL_PLANE_Y_RESOLUTION = 'FocalPlaneYResolution', + + /** + * Unit for measuring FocalPlaneXResolution and FocalPlaneYResolution. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FOCAL_PLANE_RESOLUTION_UNIT = 'FocalPlaneResolutionUnit', + + /** + * Location of the main subject, relative to the left edge. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SUBJECT_LOCATION = 'SubjectLocation', + + /** + * Selected exposure index at capture. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + EXPOSURE_INDEX = 'ExposureIndex', + + /** + * Image sensor type on the camera. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SENSING_METHOD = 'SensingMethod', + + /** + * Indicates the image source. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FILE_SOURCE = 'FileSource', + + /** + * Color filter array (CFA) geometric pattern of the image sensor. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + CFA_PATTERN = 'CFAPattern', + + /** + * Indicates special processing on image data. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + CUSTOM_RENDERED = 'CustomRendered', + + /** + * Exposure mode set when the image was shot. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + EXPOSURE_MODE = 'ExposureMode', + + /** + * Digital zoom ratio at the time of capture. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + DIGITAL_ZOOM_RATIO = 'DigitalZoomRatio', + + /** + * Type of scene captured. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_CAPTURE_TYPE = 'SceneCaptureType', + + /** + * Degree of overall image gain adjustment. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GAIN_CONTROL = 'GainControl', + + /** + * Direction of contrast processing applied by the camera. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + CONTRAST = 'Contrast', + + /** + * Direction of saturation processing applied by the camera. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SATURATION = 'Saturation', + + /** + * The direction of sharpness processing applied by the camera. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SHARPNESS = 'Sharpness', + + /** + * Information on picture-taking conditions for a specific camera model. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + DEVICE_SETTING_DESCRIPTION = 'DeviceSettingDescription', + + /** + * Indicates the distance range to the subject. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SUBJECT_DISTANCE_RANGE = 'SubjectDistanceRange', + + /** + * An identifier uniquely assigned to each image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + IMAGE_UNIQUE_ID = 'ImageUniqueID', + + /** + * The version of the GPSInfoIFD. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_VERSION_ID = 'GPSVersionID', + + /** + * Reference altitude used for GPS altitude. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_ALTITUDE_REF = 'GPSAltitudeRef', + + /** + * The altitude based on the reference in GPSAltitudeRef. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_ALTITUDE = 'GPSAltitude', + + /** + * The GPS satellites used for measurements. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_SATELLITES = 'GPSSatellites', + + /** + * The status of the GPS receiver when the image is recorded. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_STATUS = 'GPSStatus', + + /** + * The GPS measurement mode. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_MEASURE_MODE = 'GPSMeasureMode', + + /** + * The GPS DOP (data degree of precision). + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_DOP = 'GPSDOP', + + /** + * The unit used to express the GPS receiver speed of movement. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_SPEED_REF = 'GPSSpeedRef', + + /** + * The speed of GPS receiver movement. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_SPEED = 'GPSSpeed', + + /** + * The reference for giving the direction of GPS receiver movement. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_TRACK_REF = 'GPSTrackRef', + + /** + * The direction of GPS receiver movement. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_TRACK = 'GPSTrack', + + /** + * The reference for the image's direction. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_IMG_DIRECTION_REF = 'GPSImgDirectionRef', + + /** + * The direction of the image when captured. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_IMG_DIRECTION = 'GPSImgDirection', + + /** + * Geodetic survey data used by the GPS receiver. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_MAP_DATUM = 'GPSMapDatum', + + /** + * Indicates the latitude reference of the destination point. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_DEST_LATITUDE_REF = 'GPSDestLatitudeRef', + + /** + * The latitude of the destination point. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_DEST_LATITUDE = 'GPSDestLatitude', + + /** + * Indicates the longitude reference of the destination point. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_DEST_LONGITUDE_REF = 'GPSDestLongitudeRef', + + /** + * The longitude of the destination point. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_DEST_LONGITUDE = 'GPSDestLongitude', + + /** + * The reference for the bearing to the destination point. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_DEST_BEARING_REF = 'GPSDestBearingRef', + + /** + * The bearing to the destination point. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_DEST_BEARING = 'GPSDestBearing', + + /** + * The measurement unit for the distance to the target point. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_DEST_DISTANCE_REF = 'GPSDestDistanceRef', + + /** + * The distance to the destination point. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_DEST_DISTANCE = 'GPSDestDistance', + + /** + * A character string recording the name of the method used for location finding. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_PROCESSING_METHOD = 'GPSProcessingMethod', + + /** + * A character string recording the name of the GPS area. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_AREA_INFORMATION = 'GPSAreaInformation', + + /** + * This field denotes if differential correction was applied to GPS data, crucial for precise location accuracy. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_DIFFERENTIAL = 'GPSDifferential', + + /** + * The serial number of the camera body. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + BODY_SERIAL_NUMBER = 'BodySerialNumber', + + /** + * The name of the camera owner. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + CAMERA_OWNER_NAME = 'CameraOwnerName', + + /** + * Indicates whether the image is a composite image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + COMPOSITE_IMAGE = 'CompositeImage', + + /** + * The compression mode used for a compressed image, in unit bits per pixel. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + COMPRESSED_BITS_PER_PIXEL = 'CompressedBitsPerPixel', + + /** + * The DNGVersion tag encodes the four-tier version number for DNG specification compliance. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + DNG_VERSION = 'DNGVersion', + + /** + * DefaultCropSize specifies the final image size in raw coordinates, accounting for extra edge pixels. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + DEFAULT_CROP_SIZE = 'DefaultCropSize', + + /** + * Indicates the value of coefficient gamma. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GAMMA = 'Gamma', + + /** + * The tag indicate the ISO speed latitude yyy value of the camera or input device that is defined in ISO 12232. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + ISO_SPEED_LATITUDE_YYY = 'ISOSpeedLatitudeyyy', + + /** + * The tag indicate the ISO speed latitude zzz value of the camera or input device that is defined in ISO 12232. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + ISO_SPEED_LATITUDE_ZZZ = 'ISOSpeedLatitudezzz', + + /** + * The manufacturer of the lens. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + LENS_MAKE = 'LensMake', + + /** + * The model name of the lens. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + LENS_MODEL = 'LensModel', + + /** + * The serial number of the lens. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + LENS_SERIAL_NUMBER = 'LensSerialNumber', + + /** + * Specifications of the lens used. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + LENS_SPECIFICATION = 'LensSpecification', + + /** + * This tag provides a broad description of the data type in this subfile. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + NEW_SUBFILE_TYPE = 'NewSubfileType', + + /** + * This tag records the UTC offset for the DateTime tag, ensuring accurate timestamps regardless of location. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + OFFSET_TIME = 'OffsetTime', + + /** + * This tag records the UTC offset when the image was digitized, aiding in accurate timestamp adjustment. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + OFFSET_TIME_DIGITIZED = 'OffsetTimeDigitized', + + /** + * This tag records the UTC offset when the original image was created, crucial for time-sensitive applications. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + OFFSET_TIME_ORIGINAL = 'OffsetTimeOriginal', + + /** + * Exposure times of source images for a composite image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SOURCE_EXPOSURE_TIMES_OF_COMPOSITE_IMAGE = 'SourceExposureTimesOfCompositeImage', + + /** + * The number of source images used for a composite image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SOURCE_IMAGE_NUMBER_OF_COMPOSITE_IMAGE = 'SourceImageNumberOfCompositeImage', + + /** + * This deprecated tag indicates the data type in this subfile. Use NewSubfileType instead. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SUBFILE_TYPE = 'SubfileType', + + /** + * This tag indicates horizontal positioning errors in meters. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GPS_H_POSITIONING_ERROR = 'GPSHPositioningError', + + /** + * This tag indicates the sensitivity of the camera or input device when the image was shot. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + PHOTOGRAPHIC_SENSITIVITY = 'PhotographicSensitivity', + + /** + * Burst Number + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + BURST_NUMBER = 'HwMnoteBurstNumber', + + /** + * Face Conf + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FACE_CONF = 'HwMnoteFaceConf', + + /** + * Face Leye Center + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FACE_LEYE_CENTER = 'HwMnoteFaceLeyeCenter', + + /** + * Face Mouth Center + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FACE_MOUTH_CENTER = 'HwMnoteFaceMouthCenter', + + /** + * Face Pointer + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FACE_POINTER = 'HwMnoteFacePointer', + + /** + * Face Rect + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FACE_RECT = 'HwMnoteFaceRect', + + /** + * Face Reye Center + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FACE_REYE_CENTER = 'HwMnoteFaceReyeCenter', + + /** + * Face Smile Score + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FACE_SMILE_SCORE = 'HwMnoteFaceSmileScore', + + /** + * Face Version + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FACE_VERSION = 'HwMnoteFaceVersion', + + /** + * Front Camera + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + FRONT_CAMERA = 'HwMnoteFrontCamera', + + /** + * Scene Pointer + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_POINTER = 'HwMnoteScenePointer', + + /** + * Scene Version + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + SCENE_VERSION = 'HwMnoteSceneVersion', + + /** + * Is Xmage Supported + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + IS_XMAGE_SUPPORTED = 'HwMnoteIsXmageSupported', + + /** + * Xmage Mode + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + XMAGE_MODE = 'HwMnoteXmageMode', + + /** + * Xmage X1 Coordinate + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + XMAGE_LEFT = 'HwMnoteXmageLeft', + + /** + * Xmage Y1 Coordinate + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + XMAGE_TOP = 'HwMnoteXmageTop', + + /** + * Xmage X2 Coordinate + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + XMAGE_RIGHT = 'HwMnoteXmageRight', + + /** + * Xmage Y2 Coordinate + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + XMAGE_BOTTOM = 'HwMnoteXmageBottom', + + /** + * Cloud Enhancement Mode + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + CLOUD_ENHANCEMENT_MODE = 'HwMnoteCloudEnhancementMode', + + /** + * Wind Snapshot Mode + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + WIND_SNAPSHOT_MODE = 'HwMnoteWindSnapshotMode', + + /** + * GIF LOOP COUNT + * If infinite loop returns 0, other values represent the number of loops + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + GIF_LOOP_COUNT = 'GIFLoopCount' + } + + /** + * Enumerates alpha types. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + enum AlphaType { + /** + * Indicates an unknown alpha type. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + UNKNOWN = 0, + + /** + * Indicates that the image has no alpha channel, or all pixels in the image are fully opaque. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + OPAQUE = 1, + + /** + * Indicates that RGB components of each pixel in the image are premultiplied by alpha. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + PREMUL = 2, + + /** + * Indicates that RGB components of each pixel in the image are independent of alpha and are not premultiplied by alpha. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + UNPREMUL = 3 + } + + /** + * Enumerates decoding dynamic range. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + enum DecodingDynamicRange { + /** + * Decoding according to the content of the image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + AUTO = 0, + + /** + * Decoding to standard dynamic range. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + SDR = 1, + + /** + * Decoding to high dynamic range. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + HDR = 2 + } + + /** + * Enumerates packing dynamic range. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + enum PackingDynamicRange { + /** + * Packing according to the content of the image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + AUTO = 0, + + /** + * Packing to standard dynamic range. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + SDR = 1, + } + + /** + * Enumerates the anti-aliasing level. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @atomicservice + * @since 20 + */ + enum AntiAliasingLevel { + /** + * Nearest-neighbor interpolation algorithm. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @atomicservice + * @since 20 + */ + NONE = 0, + + /** + * Bilinear interpolation algorithm. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @atomicservice + * @since 20 + */ + LOW = 1, + + /** + * Bilinear interpolation algorithm with mipmap linear filtering. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @atomicservice + * @since 20 + */ + MEDIUM = 2, + + /** + * Cubic interpolation algorithm. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @atomicservice + * @since 20 + */ + HIGH = 3, + } + + /** + * Enum for image scale mode. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + enum ScaleMode { + /** + * Indicates the effect that fits the image into the target size. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + FIT_TARGET_SIZE = 0, + + /** + * Indicates the effect that scales an image to fill the target image area and center-crops the part outside the area. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + CENTER_CROP = 1 + } + + /** + * Enumerates the HDR metadata types that need to be stored in Pixelmap. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + enum HdrMetadataKey { + /** + * Indicate the types of metadata that image needs to use. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + HDR_METADATA_TYPE = 0, + + /** + * Static metadata key. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + HDR_STATIC_METADATA = 1, + + /** + * Dynamic metadata key. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + HDR_DYNAMIC_METADATA = 2, + + /** + * Gainmap metadata key. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + HDR_GAINMAP_METADATA = 3, + } + + /** + * Value for HDR_METADATA_TYPE. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + enum HdrMetadataType { + /** + * No metadata. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + NONE = 0, + + /** + * Indicates that metadata will be used for the base image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + BASE = 1, + + /** + * Indicates that metadata will be used for the gainmap image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + GAINMAP = 2, + + /** + * Indicates that metadata will be used for the alternate image. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + ALTERNATE = 3, + } + + /** + * Describes region information. + * + * @typedef Region + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + interface Region { + /** + * Image size. + * + * @type { Size } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + size: Size; + + /** + * x-coordinate at the upper left corner of the image. + * + * @type { int } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + x: int; + + /** + * y-coordinate at the upper left corner of the image. + * + * @type { int } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + y: int; + } + + /** + * Describes area information in an image. + * + * @typedef PositionArea + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + interface PositionArea { + /** + * Image data that will be read or written. + * + * @type { ArrayBuffer } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + pixels: ArrayBuffer; + + /** + * Offset for data reading. + * + * @type { int } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + offset: int; + + /** + * Number of bytes to read. + * + * @type { int } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + stride: int; + + /** + * Region to read. + * + * @type { Region } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + region: Region; + } + + /** + * Describes image information. + * + * @typedef ImageInfo + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + interface ImageInfo { + /** + * Indicates image dimensions specified by a {@link Size} interface. + * + * @type { Size } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + size: Size; + + /** + * Indicates image default density. + * + * @type { int } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + density: int; + + /** + * The number of byte per row. + * + * @type { int } + * @syscap SystemCapability.Multimedia.Image.Core + * @form + * @atomicservice + * @since 20 + */ + stride: int; + + /** + * Indicates image format. + * + * @type { PixelMapFormat } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + pixelFormat: PixelMapFormat; + + /** + * Indicates image alpha type. + * + * @type { AlphaType } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + alphaType: AlphaType; + + /** + * Indicates image mime type. + * + * @type { string } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ + mimeType: string; + + /** + * Indicates whether the image high dynamic range + * + * @type { boolean } + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + isHdr: boolean; + } + + /** + * Describes the option for image packing. + * + * @typedef PackingOption + * @syscap SystemCapability.Multimedia.Image.ImagePacker + * @crossplatform + * @atomicservice + * @since 20 + */ + interface PackingOption { + /** + * Multipurpose Internet Mail Extensions (MIME) format of the target image, for example, image/jpeg. + * + * @type { string } + * @syscap SystemCapability.Multimedia.Image.ImagePacker + * @crossplatform + * @atomicservice + * @since 20 + */ + format: string; + + /** + * Quality of the target image. The value is an integer ranging from 0 to 100. A larger value indicates better. + * + * @type { int } + * @syscap SystemCapability.Multimedia.Image.ImagePacker + * @crossplatform + * @atomicservice + * @since 20 + */ + quality: int; + + /** + * BufferSize of the target image. + * If this bufferSize is less than or equal to 0, it will be converted to 10MB. + * + * @type { ?int } + * @syscap SystemCapability.Multimedia.Image.ImagePacker + * @crossplatform + * @atomicservice + * @since 20 + */ + bufferSize?: int; + + /** + * The desired dynamic range of the target image. + * + * @type { ?PackingDynamicRange } + * @syscap SystemCapability.Multimedia.Image.ImagePacker + * @since 20 + */ + desiredDynamicRange?: PackingDynamicRange; + + /** + * Whether the image properties can be saved, like Exif. + * + * @type { ?boolean } + * @syscap SystemCapability.Multimedia.Image.ImagePacker + * @since 20 + */ + needsPackProperties?: boolean; + } + + /** + * Describes image properties. + * + * @typedef ImagePropertyOptions + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @since 20 + */ + interface ImagePropertyOptions { + /** + * Default property value. + * + * @type { ?string } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @since 20 + */ + defaultValue?: string; + } + + /** + * Describes image decoding parameters. + * + * @typedef DecodingOptions + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + interface DecodingOptions { + /** + * Number of image frames. + * + * @type { ?int } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + index?: int; + + /** + * Sampling ratio of the image pixel map. + * + * @type { ?int } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + sampleSize?: int; + + /** + * Rotation angle of the image pixel map. The value ranges from 0 to 360. + * + * @type { ?int } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + rotate?: int; + + /** + * Whether the image pixel map is editable. + * + * @type { ?boolean } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + editable?: boolean; + + /** + * Width and height of the image pixel map. The value (0, 0) indicates that the pixels are decoded + * based on the original image size. + * + * @type { ?Size } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + desiredSize?: Size; + + /** + * Cropping region of the image pixel map. + * + * @type { ?Region } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + desiredRegion?: Region; + + /** + * Data format of the image pixel map. + * + * @type { ?PixelMapFormat } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + desiredPixelFormat?: PixelMapFormat; + + /** + * The density for image pixel map. + * + * @type { ?int } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + fitDensity?: int; + + /** + * Color space of the image pixel map. + * + * @type { ?colorSpaceManager.ColorSpaceManager } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @since 20 + */ + desiredColorSpace?: colorSpaceManager.ColorSpaceManager; + + /** + * The desired dynamic range of the image pixelmap. + * + * @type { ?DecodingDynamicRange } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @since 20 + */ + desiredDynamicRange?: DecodingDynamicRange; + + /** + * Resolution Quality of the image. + * + * @type { ?ResolutionQuality } + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @systemapi + * @since 20 + */ + resolutionQuality?: ResolutionQuality; + } + + /** + * Initialization options for pixelmap. + * + * @typedef InitializationOptions + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + interface InitializationOptions { + /** + * PixelMap size. + * + * @type { Size } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + size: Size; + + /** + * PixelMap source format. + * + * @type { ?PixelMapFormat } + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + srcPixelFormat?: PixelMapFormat; + + /** + * PixelMap expected format. + * + * @type { ?PixelMapFormat } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + pixelFormat?: PixelMapFormat; + + /** + * Editable or not. + * + * @type { ?boolean } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + editable?: boolean; + + /** + * PixelMap expected alpha type. + * + * @type { ?AlphaType } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + alphaType?: AlphaType; + + /** + * PixelMap expected scaling effect. + * + * @type { ?ScaleMode } + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + scaleMode?: ScaleMode; + } + + /** + * Create an empty pixelmap. + * + * @param { InitializationOptions } options Initialization options for pixelmap. + * @returns { PixelMap } Returns the instance if the operation is successful;Otherwise, return undefined. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @since 20 + */ +function createPixelMapSync(options: InitializationOptions): PixelMap; + + /** + * Creates an ImageSource instance based on the URI. + * + * @param { string } uri Image source URI. + * @returns { ImageSource } returns the ImageSource instance if the operation is successful; returns undefined otherwise. + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @atomicservice + * @since 20 + */ + function createImageSource(uri: string): ImageSource; + + /** + * Creates an ImagePacker instance. + * + * @returns { ImagePacker } Returns the ImagePacker instance if the operation is successful; returns null otherwise. + * @syscap SystemCapability.Multimedia.Image.ImagePacker + * @crossplatform + * @atomicservice + * @since 20 + */ + function createImagePacker(): ImagePacker; + + /** + * PixelMap instance. + * + * @typedef PixelMap + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + interface PixelMap { + /** + * Reads image pixel map data and writes the data to an ArrayBuffer. This method uses + * a promise to return the result. + * + * @param { ArrayBuffer } dst A buffer to which the image pixel map data will be written. + * @returns { Promise<void> } A Promise instance used to return the operation result. If the operation fails, an error message is returned. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + readPixelsToBuffer(dst: ArrayBuffer): Promise<void>; + + /** + * Reads image pixel map data and writes the data to an ArrayBuffer. + * + * @param { ArrayBuffer } dst A buffer to which the image pixel map data will be written. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 501 - Resource Unavailable. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + readPixelsToBufferSync(dst: ArrayBuffer): void; + + /** + * Obtains pixel map information about this image. This method uses a promise to return the information. + * + * @returns { Promise<ImageInfo> } A Promise instance used to return the image pixel map information. If the operation fails, an error message is returned. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + getImageInfo(): Promise<ImageInfo>; + + /** + * Get image information from image source. + * + * @returns { ImageInfo } the image information. + * @throws { BusinessError } 501 - Resource Unavailable. + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + getImageInfoSync(): ImageInfo; + + /** + * Obtains the number of bytes in each line of the image pixel map. + * + * @returns { int } Number of bytes in each line. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + getBytesNumberPerRow(): int; + + /** + * Obtains the total number of bytes of the image pixel map. + * + * @returns { int } Total number of bytes. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + getPixelBytesNumber(): int; + + /** + * Obtains new pixel map with alpha information. This method uses a promise to return the information. + * + * @returns { Promise<PixelMap> } A Promise instance used to return the new image pixel map. If the operation fails, an error message is returned. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + createAlphaPixelmap(): Promise<PixelMap>; + + /** + * Obtains new pixel map with alpha information. + * + * @returns { PixelMap } return the new image pixel map. If the operation fails, an error message is returned. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Parameter verification failed. + * @throws { BusinessError } 501 - Resource Unavailable. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @atomicservice + * @since 20 + */ + createAlphaPixelmapSync(): PixelMap; + + /** + * Image zoom in width and height. + * + * @param { double } x The zoom value of width. + * @param { double } y The zoom value of height. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 501 - Resource Unavailable. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @atomicservice + * @since 20 + */ + scaleSync(x: double, y: double): void; + + /** + * Image zoom in width and height with anti-aliasing. + * + * @param { double } x The zoom value of width. + * @param { double } y The zoom value of height. + * @param { AntiAliasingLevel } level The anti-aliasing algorithm to be used. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 501 - Resource Unavailable. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @atomicservice + * @since 20 + */ + scaleSync(x: double, y: double, level: AntiAliasingLevel): void; + + /** + * Image flipping. + * + * @param { boolean } horizontal Is flip in horizontal. + * @param { boolean } vertical Is flip in vertical. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 501 - Resource Unavailable. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @atomicservice + * @since 20 + */ + flipSync(horizontal: boolean, vertical: boolean): void; + + /** + * Crop the image. This method uses a promise to return the result. + * + * @param { Region } region The region to crop. + * @returns { Promise<void> } A Promise instance used to return the operation result. If the operation fails, an error message is returned. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + crop(region: Region): Promise<void>; + + /** + * Crop the image. + * + * @param { Region } region The region to crop. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 501 - Resource Unavailable. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @atomicservice + * @since 20 + */ + cropSync(region: Region): void; + + /** + * Releases this PixelMap object. This method uses a promise to return the result. + * + * @returns { Promise<void> } A Promise instance used to return the instance release result. If the operation fails, an error message is returned. + * @syscap SystemCapability.Multimedia.Image.Core + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + release(): Promise<void>; + } + + /** + * Picture instance. + * + * @typedef Picture + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + interface Picture { + /** + * Obtains the pixel map of the main image. + * + * @returns { PixelMap } Returns the pixel map. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + getMainPixelmap(): PixelMap; + } + + /** + * Create a Picture object by the pixel map of the main image. + * + * @param { PixelMap } mainPixelmap The pixel map of the main image. + * @returns { Picture } Returns the Picture object. + * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types; 3.Parameter verification failed. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + function createPicture(mainPixelmap : PixelMap): Picture; + + /** + * AuxiliaryPicture instance. + * + * @typedef AuxiliaryPicture + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + interface AuxiliaryPicture { + /** + * Reads auxiliary picture data in an ArrayBuffer and writes the data to a AuxiliaryPicture object. This method + * uses a promise to return the result. + * + * @param { ArrayBuffer } data A buffer from which the auxiliary picture data will be read. + * @returns { Promise<void> } A Promise instance used to return the operation result. If the operation fails, an + * error message is returned. + * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 7600301 - Memory alloc failed. + * @throws { BusinessError } 7600302 - Memory copy failed. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + writePixelsFromBuffer(data: ArrayBuffer): Promise<void>; + + /** + * Reads image pixel map data and writes the data to an ArrayBuffer. This method uses + * a promise to return the result. + * + * @returns { Promise<ArrayBuffer> } A Promise instance used to return the pixel map data. + * @throws { BusinessError } 7600301 - Memory alloc failed. + * @throws { BusinessError } 7600302 - Memory copy failed. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + readPixelsToBuffer(): Promise<ArrayBuffer>; + + /** + * Obtains the type of auxiliary picture. + * + * @returns { AuxiliaryPictureType } Returns the type of auxiliary picture. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + getType(): AuxiliaryPictureType; + + /** + * Set the metadata of auxiliary picture. + * + * @param { MetadataType } metadataType The type of metadata. + * @param { Metadata } metadata The metadata of auxiliary picture. + * @returns { Promise<void> } A Promise instance used to return the operation result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 7600202 - Unsupported metadata. Possible causes: 1. Unsupported metadata type. 2. The + * metadata type does not match the auxiliary picture type. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + setMetadata(metadataType: MetadataType, metadata: Metadata): Promise<void> + + /** + * Obtains the metadata of auxiliary picture. + * + * @param { MetadataType } metadataType The type of metadata. + * @returns { Promise<Metadata> } Return the metadata of auxiliary picture. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 7600202 - Unsupported metadata. Possible causes: 1. Unsupported metadata type. 2. The + * metadata type does not match the auxiliary picture type. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + getMetadata(metadataType: MetadataType): Promise<Metadata> + + /** + * Releases this AuxiliaryPicture object. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + release():void + } + + /** + * Enumerates auxiliary picture type. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + enum AuxiliaryPictureType { + /** + * Gain map. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + GAINMAP = 1, + + /** + * Depth map. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + DEPTH_MAP = 2, + + /** + * Unrefocus map. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + UNREFOCUS_MAP = 3, + + /** + * Linear map. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + LINEAR_MAP = 4, + + /** + * Fragment map. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + FRAGMENT_MAP = 5, + } + + /** + * Enumerates metadata type. + * + * @enum { number } + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + enum MetadataType { + /** + * EXIF metadata. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + EXIF_METADATA = 1, + + /** + * Fragment metadata. + * + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + FRAGMENT_METADATA = 2, + } + + /** + * Metadata instance. + * + * @typedef Metadata + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + interface Metadata { + /** + * Obtains the value of properties in an image. This method uses a promise to return the property values in array + * of records. + * + * @param { Array<string> } key Name of the properties whose value is to be obtained. + * @returns { Promise<Record<string, string | null>> } Array of Records instance used to return the property values. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 7600202 - Unsupported metadata. Possible causes: 1. Unsupported metadata type. 2. The + * metadata type does not match the auxiliary picture type. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + getProperties(key: Array<string>): Promise<Record<string, string | null>> + + /** + * Modify the value of properties in an image with the specified keys. + * + * @param { Record<string, string | null> } records Array of the property Records whose values are to + * be modified. + * @returns { Promise<void> } A Promise instance used to return the operation result. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 7600202 - Unsupported metadata. Possible causes: 1. Unsupported metadata type. 2. The + * metadata type does not match the auxiliary picture type. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + setProperties(records: Record<string, string | null>): Promise<void> + + /** + * Obtains the value of all properties in an image. This method uses a promise to return the property values + * in array of records. + * + * @returns { Promise<Record<string, string | null>> } Array of Records instance used to return the property values. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + getAllProperties(): Promise<Record<string, string | null>> + + /** + * Obtains a clone of metadata. This method uses a promise to return the metadata. + * + * @returns { Promise<Metadata> } A Promise instance used to return the metadata. + * @throws { BusinessError } 7600301 - Memory alloc failed. + * @throws { BusinessError } 7600302 - Memory copy failed. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + clone(): Promise<Metadata> + } + + /** + * ImageSource instance. + * + * @typedef ImageSource + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + interface ImageSource { + /** + * Get image information from image source. + * + * @param { int } index Sequence number of an image. If this parameter is not specified, the default value 0 is used. + * @returns { Promise<ImageInfo> } A Promise instance used to return the image information. + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + getImageInfo(index?: int): Promise<ImageInfo>; + + /** + * Get image information from image source synchronously. + * + * @param { int } index - Index of sequence images. If this parameter is not specified, default value is 0. + * @returns { ImageInfo } The image information. + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @since 20 + */ + getImageInfoSync(index?: int): ImageInfo; + + /** + * Creates a PixelMap object based on image decoding parameters. This method uses a promise to + * return the object. + * + * @param { DecodingOptions } options Image decoding parameters. + * @returns { Promise<PixelMap> } A Promise instance used to return the PixelMap object. + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ + createPixelMap(options?: DecodingOptions): Promise<PixelMap>; + + /** + * Create a PixelMap object based on image decoding parameters synchronously. + * + * @param { DecodingOptions } options - Image decoding parameters. + * @returns { PixelMap } Return the PixelMap. If decoding fails, return undefined. + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @since 20 + */ + createPixelMapSync(options?: DecodingOptions): PixelMap; + + /** + * Releases an ImageSource instance and uses a promise to return the result. + * + * @returns { Promise<void> } A Promise instance used to return the operation result. + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @crossplatform + * @since 20 + */ + release(): Promise<void>; + } + + /** + * ImagePacker instance. + * + * @typedef ImagePacker + * @syscap SystemCapability.Multimedia.Image.ImagePacker + * @crossplatform + * @atomicservice + * @since 20 + */ + interface ImagePacker { + /** + * Releases an ImagePacker instance and uses a promise to return the result. + * + * @returns { Promise<void> } A Promise instance used to return the operation result. + * @syscap SystemCapability.Multimedia.Image.ImagePacker + * @crossplatform + * @since 20 + */ + release(): Promise<void>; + } +} + +export default image; diff --git a/api/@ohos.multimedia.image.d.ts b/api/@ohos.multimedia.image.d.ts index f6046d0e78d9345d8485315bd773d68aa372aa48..f4ea2ebec64ac06b84d54b86a6f9f6d138c3910c 100644 --- a/api/@ohos.multimedia.image.d.ts +++ b/api/@ohos.multimedia.image.d.ts @@ -597,14 +597,16 @@ declare namespace image { } /** - * Enumerates exchangeable image file format (Exif) information types of an image. + * Enumerates exchangeable image file format (Exif) information types of an image. This enumeration follows the EXIF + * standard. Please refer to the EXIF specification for more details. * * @enum { string } * @syscap SystemCapability.Multimedia.Image.Core * @since 7 */ /** - * Enumerates exchangeable image file format (Exif) information types of an image. + * Enumerates exchangeable image file format (Exif) information types of an image. This enumeration follows the EXIF + * standard. Please refer to the EXIF specification for more details. * * @enum { string } * @syscap SystemCapability.Multimedia.Image.Core @@ -613,13 +615,15 @@ declare namespace image { */ enum PropertyKey { /** - * Number of bits in each pixel of an image. + * The number of bits per image component. In this standard each component of the image is 8 bits, so the value for + * this tag is 8. In JPEG compressed data a JPEG marker is used instead of this tag. * * @syscap SystemCapability.Multimedia.Image.Core * @since 7 */ /** - * Number of bits in each pixel of an image. + * The number of bits per image component. In this standard each component of the image is 8 bits, so the value for + * this tag is 8. In JPEG compressed data a JPEG marker is used instead of this tag. * * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -628,13 +632,35 @@ declare namespace image { BITS_PER_SAMPLE = 'BitsPerSample', /** - * Image rotation mode. + * Image orientation. + * 1. "Top-left" - The image is not rotated. + * 2. "Top-right" - The image is mirrored horizontally. + * 3. "Bottom-right" - The image is rotated 180 degrees. + * 4. "Bottom-left" - The image is mirrored vertically. + * 5. "Left-top" - The image is mirrored horizontally, then rotated 270 degrees clockwise. + * 6. "Right-top" - The image is rotated 90 degrees clockwise. + * 7. "Right-bottom" - The image is mirrored horizontally, then rotated 90 degrees clockwise. + * 8. "Left-bottom" - The image is rotated 270 degrees clockwise. + * If an undefined value is read, the result will be "Unknown Value <number>". + * When retrieving the Orientation property, the value is returned as a string. + * When setting the Orientation property, both numeric values (1–8) and string labels are supported. * * @syscap SystemCapability.Multimedia.Image.Core * @since 7 */ /** - * Image rotation mode. + * Image orientation. + * 1. "Top-left" - The image is not rotated. + * 2. "Top-right" - The image is mirrored horizontally. + * 3. "Bottom-right" - The image is rotated 180 degrees. + * 4. "Bottom-left" - The image is mirrored vertically. + * 5. "Left-top" - The image is mirrored horizontally, then rotated 270 degrees clockwise. + * 6. "Right-top" - The image is rotated 90 degrees clockwise. + * 7. "Right-bottom" - The image is mirrored horizontally, then rotated 90 degrees clockwise. + * 8. "Left-bottom" - The image is rotated 270 degrees clockwise. + * If an undefined value is read, the result will be "Unknown Value <number>". + * When retrieving the Orientation property, the value is returned as a string. + * When setting the Orientation property, both numeric values (1–8) and string labels are supported. * * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -673,13 +699,19 @@ declare namespace image { IMAGE_WIDTH = 'ImageWidth', /** - * GPS latitude. + * GPS latitude. The latitude is expressed as three RATIONAL values giving the degrees, minutes, and + * seconds, respectively. If latitude is expressed as degrees, minutes and seconds, a typical format + * would be dd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes + * are given up to two decimal places, the format would be dd/1,mmmm/100,0/1. * * @syscap SystemCapability.Multimedia.Image.Core * @since 7 */ /** - * GPS latitude. + * GPS latitude. The latitude is expressed as three RATIONAL values giving the degrees, minutes, and + * seconds, respectively. If latitude is expressed as degrees, minutes and seconds, a typical format + * would be dd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes + * are given up to two decimal places, the format would be dd/1,mmmm/100,0/1. * * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -688,13 +720,19 @@ declare namespace image { GPS_LATITUDE = 'GPSLatitude', /** - * GPS longitude. + * GPS longitude. The longitude is expressed as three RATIONAL values giving the degrees, minutes, and + * seconds, respectively. If longitude is expressed as degrees, minutes and seconds, a typical format + * would be dd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes + * are given up to two decimal places, the format would be dd/1,mmmm/100,0/1. * * @syscap SystemCapability.Multimedia.Image.Core * @since 7 */ /** - * GPS longitude. + * GPS longitude. The longitude is expressed as three RATIONAL values giving the degrees, minutes, and + * seconds, respectively. If longitude is expressed as degrees, minutes and seconds, a typical format + * would be dd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of minutes + * are given up to two decimal places, the format would be dd/1,mmmm/100,0/1. * * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -733,13 +771,15 @@ declare namespace image { GPS_LONGITUDE_REF = 'GPSLongitudeRef', /** - * Shooting time + * The date and time when the original image data was generated. For a DSC the date and time the picture was taken + * are recorded. The format is "YYYY:MM:DD HH:MM:SS" with time shown in 24-hour format. * * @syscap SystemCapability.Multimedia.Image.Core * @since 9 */ /** - * Shooting time + * The date and time when the original image data was generated. For a DSC the date and time the picture was taken + * are recorded. The format is "YYYY:MM:DD HH:MM:SS" with time shown in 24-hour format. * * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -778,13 +818,13 @@ declare namespace image { SCENE_TYPE = 'SceneType', /** - * ISO speedratings + * Indicates the ISO Speed and ISO Latitude of the camera or input device as specified in ISO 12232. * * @syscap SystemCapability.Multimedia.Image.Core * @since 9 */ /** - * ISO speedratings + * Indicates the ISO Speed and ISO Latitude of the camera or input device as specified in ISO 12232. * * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -793,13 +833,13 @@ declare namespace image { ISO_SPEED_RATINGS = 'ISOSpeedRatings', /** - * Aperture value + * Aperture value, such as f/1.8. * * @syscap SystemCapability.Multimedia.Image.Core * @since 9 */ /** - * Aperture value + * Aperture value, such as f/1.8. * * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -808,7 +848,8 @@ declare namespace image { F_NUMBER = 'FNumber', /** - * Date time + * The date and time of image creation. In this standard it is the date and time the file was changed. The format + * is "YYYY:MM:DD HH:MM:SS" with time shown in 24-hour format. * * @syscap SystemCapability.Multimedia.Image.Core * @since 10 @@ -888,7 +929,7 @@ declare namespace image { RECOMMENDED_EXPOSURE_INDEX = 'RecommendedExposureIndex', /** - * ISO speed + * Indicates the ISO Speed and ISO Latitude of the camera or input device as specified in ISO 12232. * * @syscap SystemCapability.Multimedia.Image.Core * @since 10 @@ -896,7 +937,7 @@ declare namespace image { ISO_SPEED = 'ISOSpeedRatings', /** - * Aperture value + * The lens aperture. The unit is the APEX((Additive System of Photographic Exposure) value. * * @syscap SystemCapability.Multimedia.Image.Core * @since 10 @@ -1153,7 +1194,8 @@ declare namespace image { STRIP_OFFSETS = 'StripOffsets', /** - * The number of components per pixel. + * The number of components per pixel. As the standard applies to both RGB and YCbCr images, the tag value is set + * to 3. For JPEG-compressed images, this tag is replaced by corresponding JPEG markers. * * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -1360,7 +1402,9 @@ declare namespace image { EXIF_VERSION = 'ExifVersion', /** - * The date and time when the image was stored as digital data. + * The date and time when the image was stored as digital data. If, for example, an image was captured by DSC and + * at the same time the file was recorded, then the DateTimeOriginal and DateTimeDigitized will have the same + * contents. The format is "YYYY:MM:DD HH:MM:SS" with time shown in 24-hour format. * * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -2053,7 +2097,7 @@ declare namespace image { OFFSET_TIME_ORIGINAL = 'OffsetTimeOriginal', /** - * Exposure times of source images for a composite image. + * Exposure times of source images for a composite image, such as 1/33 sec. * * @syscap SystemCapability.Multimedia.Image.Core * @crossplatform @@ -2486,7 +2530,9 @@ declare namespace image { */ enum DecodingDynamicRange { /** - * Decoding according to the content of the image. + * Decoding according to the content of the image. If the image is an HDR image, it will be decoded as HDR content; + * otherwise, it will be decoded as SDR content. + * Imagesources created via {@link CreateIncrementalSource} will be decoded as SDR content. * * @syscap SystemCapability.Multimedia.Image.Core * @since 12 @@ -2502,7 +2548,7 @@ declare namespace image { SDR = 1, /** - * Decoding to high dynamic range. + * Decoding to high dynamic range. Imagesources created via {@link CreateIncrementalSource} will be decoded as SDR content. * * @syscap SystemCapability.Multimedia.Image.Core * @since 12 @@ -2519,7 +2565,8 @@ declare namespace image { */ enum PackingDynamicRange { /** - * Packing according to the content of the image. + * Packing according to the content of the image. If the image is an HDR image, it will be encoded as HDR content; + * otherwise, it will be encoded as SDR content. * * @syscap SystemCapability.Multimedia.Image.Core * @since 12 @@ -4445,8 +4492,10 @@ declare namespace image { */ interface HdrStaticMetadata { /** - * The X-coordinate of the primary colors. The length of the array is three. Store in the order of r, g, b. - * + * The X-coordinate of the primary colors. Specifies the normalized X-coordinates of the display device's three + * primary colors. The values are stored in an array of length 3, in the order of red, green, and blue (r, g, b). + * Each value is represented in units of 0.00002 and must fall within the range [0.0, 1.0]. + * * @type { Array<number> } * @syscap SystemCapability.Multimedia.Image.Core * @since 12 @@ -4454,8 +4503,10 @@ declare namespace image { displayPrimariesX: Array<number>; /** - * The Y-coordinate of the primary colors. The length of the array is three. Store in the order of r, g, b. - * + * The Y-coordinate of the primary colors. Specifies the normalized Y-coordinates of the display device's three + * primary colors. The values are stored in an array of length 3, in the order of red, green, and blue (r, g, b). + * Each value is represented in units of 0.00002 and must fall within the range [0.0, 1.0]. + * * @type { Array<number> } * @syscap SystemCapability.Multimedia.Image.Core * @since 12 @@ -4463,7 +4514,8 @@ declare namespace image { displayPrimariesY: Array<number>; /** - * The X-coordinate of the white point value. + * The X-coordinate of the white point value. Specifies the normalized X-coordinate of the white point. + * The value is represented in units of 0.00002 and must fall within the range [0.0, 1.0]. * * @type { number } * @syscap SystemCapability.Multimedia.Image.Core @@ -4472,7 +4524,8 @@ declare namespace image { whitePointX: number; /** - * The Y-coordinate of the white point value. + * The Y-coordinate of the white point value. Specifies the normalized Y-coordinate of the white point. + * The value is represented in units of 0.00002 and must fall within the range [0.0, 1.0]. * * @type { number } * @syscap SystemCapability.Multimedia.Image.Core @@ -4481,7 +4534,8 @@ declare namespace image { whitePointY: number; /** - * Max luminance. + * Maximum luminance of the image's primary display. + * The value is measured in units of 1, with a maximum allowed value of 65,535. * * @type { number } * @syscap SystemCapability.Multimedia.Image.Core @@ -4490,7 +4544,8 @@ declare namespace image { maxLuminance: number; /** - * Min luminance. + * Minimum luminance of the image's primary display. + * The value is measured in units of 0.0001, with a maximum allowed value of 6.55535. * * @type { number } * @syscap SystemCapability.Multimedia.Image.Core @@ -4500,6 +4555,7 @@ declare namespace image { /** * Maximum brightness of displayed content. + * The value is measured in units of 1, with a maximum allowed value of 65,535. * * @type { number } * @syscap SystemCapability.Multimedia.Image.Core @@ -4509,6 +4565,7 @@ declare namespace image { /** * Maximum average brightness of displayed content. + * The value is measured in units of 1, with a maximum allowed value of 65,535. * * @type { number } * @syscap SystemCapability.Multimedia.Image.Core @@ -4708,6 +4765,44 @@ declare namespace image { */ function createPixelMapSync(colors: ArrayBuffer, options: InitializationOptions): PixelMap; + /** + * Create pixelmap by data buffer based on opts, the memory type used by the PixelMap can be specified + * by allocatorType. By default, the system selects the memory type based on the image type, image size, + * platform capability, etc. When processing the PixelMap returned by this interface, please always + * consider the impact of stride. + * + * @param { ArrayBuffer } colors The image color buffer. + * @param { InitializationOptions } options Initialization options for pixelmap. + * @param { AllocatorType } allocatorType Indicate which memory type will be used by the returned PixelMap. + * @returns { Promise<PixelMap> } A Promise instance used to return the PixelMap object. + * @throws { BusinessError } 7600201 - Unsupported operation. + * @throws { BusinessError } 7600301 - Memory alloc failed. + * @throws { BusinessError } 7600302 - Memory copy failed. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + function createPixelMapUsingAllocator(colors: ArrayBuffer, options: InitializationOptions, + allocatorType?: AllocatorType): Promise<PixelMap>; + + /** + * Create pixelmap by data buffer based on opts, the memory type used by the PixelMap can be specified + * by allocatorType. By default, the system selects the memory type based on the image type, image size, + * platform capability, etc. When processing the PixelMap returned by this interface, please always + * consider the impact of stride. + * + * @param { ArrayBuffer } colors The image color buffer. + * @param { InitializationOptions } options Initialization options for pixelmap. + * @param { AllocatorType } allocatorType Indicate which memory type will be used by the returned PixelMap. + * @returns { PixelMap } Returns the instance if the operation is successful;Otherwise, return undefined. + * @throws { BusinessError } 7600201 - Unsupported operation. + * @throws { BusinessError } 7600301 - Memory alloc failed. + * @throws { BusinessError } 7600302 - Memory copy failed. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + function createPixelMapUsingAllocatorSync(colors: ArrayBuffer, options: InitializationOptions, + allocatorType?: AllocatorType): PixelMap; + /** * Create an empty pixelmap. * @@ -4721,6 +4816,22 @@ declare namespace image { */ function createPixelMapSync(options: InitializationOptions): PixelMap; + /** + * Create an empty pixelmap by data buffer based on opts, the memory type used by the PixelMap can be specified + * by allocatorType. By default, the system selects the memory type based on the image type, image size, + * platform capability, etc. When processing the PixelMap returned by this interface, please always + * consider the impact of stride. + * + * @param { InitializationOptions } options Initialization options for pixelmap. + * @param { AllocatorType } allocatorType Indicate which memory type will be used by the returned PixelMap. + * @returns { PixelMap } Returns the instance if the operation is successful;Otherwise, return undefined. + * @throws { BusinessError } 7600201 - Unsupported operation. + * @throws { BusinessError } 7600301 - Memory alloc failed. + * @syscap SystemCapability.Multimedia.Image.Core + * @since 20 + */ + function createPixelMapUsingAllocatorSync(options: InitializationOptions, allocatorType?: AllocatorType): PixelMap; + /** * Transforms pixelmap from unpremultiplied alpha format to premultiplied alpha format. * @@ -4798,14 +4909,17 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * * @param { rpc.MessageSequence } sequence - rpc.MessageSequence parameter. * @returns { PixelMap } Returns the instance if the operation is successful;Otherwise, an exception will be thrown. - * @throws { BusinessError } 62980096 - Operation failed. - * @throws { BusinessError } 62980097 - IPC error. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. + * @throws { BusinessError } 62980097 - IPC error. Possible cause: 1.IPC communication failed. 2. Image upload exception. + * 3. Decode process exception. 4. Insufficient memory. * @throws { BusinessError } 62980115 - Invalid input parameter. * @throws { BusinessError } 62980105 - Failed to get the data. * @throws { BusinessError } 62980177 - Abnormal API environment. * @throws { BusinessError } 62980178 - Failed to create the PixelMap. * @throws { BusinessError } 62980179 - Abnormal buffer size. * @throws { BusinessError } 62980180 - FD mapping failed. + * Possible cause: 1. Size and address does not match. 2. Memory map in memalloc failed. * @throws { BusinessError } 62980246 - Failed to read the PixelMap. * @syscap SystemCapability.Multimedia.Image.Core * @since 11 @@ -6686,7 +6800,8 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * * @param { rpc.MessageSequence } sequence rpc.MessageSequence parameter. * @throws { BusinessError } 62980115 - Invalid image parameter. - * @throws { BusinessError } 62980097 - IPC error. + * @throws { BusinessError } 62980097 - IPC error. Possible cause: 1.IPC communication failed. 2. Image upload exception. + * 3. Decode process exception. 4. Insufficient memory. * @syscap SystemCapability.Multimedia.Image.Core * @since 10 */ @@ -6698,8 +6813,10 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { rpc.MessageSequence } sequence rpc.MessageSequence parameter. * @returns { Promise<PixelMap> } A Promise instance used to return the PixelMap object. * @throws { BusinessError } 62980115 - Invalid image parameter. - * @throws { BusinessError } 62980097 - IPC error. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980097 - IPC error. Possible cause: 1.IPC communication failed. 2. Image upload exception. + * 3. Decode process exception. 4. Insufficient memory. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @syscap SystemCapability.Multimedia.Image.Core * @since 10 */ @@ -6904,7 +7021,7 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * 2.Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 501 - Resource unavailable. * @throws { BusinessError } 62980173 - The DMA memory does not exist. - * @throws { BusinessError } 62980302 - Memory copy failed. + * @throws { BusinessError } 62980302 - Memory copy failed. Possibly caused by invalid metadata value. * @syscap SystemCapability.Multimedia.Image.Core * @since 12 */ @@ -6928,10 +7045,10 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * * @returns { PixelMap } A instance used to return the PixelMap object. * @throws { BusinessError } 501 - Resource unavailable. - * @throws { BusinessError } 62980102 - Image malloc abnormal. - * @throws { BusinessError } 62980103 - Image types are not supported. - * @throws { BusinessError } 62980104 - Image initialization abnormal. - * @throws { BusinessError } 62980106 - The image data is to large. + * @throws { BusinessError } 62980102 - Image malloc abnormal. This status code is thrown when an error occurs during the process of copying data. + * @throws { BusinessError } 62980103 - Image YUV And ASTC types are not supported. + * @throws { BusinessError } 62980104 - Image initialization abnormal. This status code is thrown when an error occurs during the process of createing empty pixelmap. + * @throws { BusinessError } 62980106 - The image data is to large.This status code is thrown when an error occurs during the process of checking size. * @syscap SystemCapability.Multimedia.Image.Core * @since 18 */ @@ -6942,10 +7059,10 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * * @returns { Promise<PixelMap> } A Promise instance used to return the PixelMap object. * @throws { BusinessError } 501 - Resource unavailable. - * @throws { BusinessError } 62980102 - Image malloc abnormal. - * @throws { BusinessError } 62980103 - Image types are not supported. - * @throws { BusinessError } 62980104 - Image initialization abnormal. - * @throws { BusinessError } 62980106 - The image data is to large. + * @throws { BusinessError } 62980102 - Image malloc abnormal. This status code is thrown when an error occurs during the process of copying data. + * @throws { BusinessError } 62980103 - Image YUV And ASTC types are not supported. + * @throws { BusinessError } 62980104 - Image initialization abnormal. This status code is thrown when an error occurs during the process of createing empty pixelmap. + * @throws { BusinessError } 62980106 - The image data is to large.This status code is thrown when an error occurs during the process of checking size. * @syscap SystemCapability.Multimedia.Image.Core * @since 18 */ @@ -6962,7 +7079,7 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * 2.Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 501 - Resource unavailable. * @throws { BusinessError } 62980173 - The DMA memory does not exist. - * @throws { BusinessError } 62980302 - Memory copy failed. + * @throws { BusinessError } 62980302 - Memory copy failed. Possibly caused by invalid metadata value. * @syscap SystemCapability.Multimedia.Image.Core * @since 12 */ @@ -6970,7 +7087,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo } /** - * Picture instance. + * Picture instance. It is composed of a main pixelmap, auxiliary pictures and metadata. The main pixelmap contains + * the main visual content; auxiliary pictures store additional information related to the main pixelmap; + * and metadata stores other information associated with the image. * * @typedef Picture * @syscap SystemCapability.Multimedia.Image.Core @@ -6990,8 +7109,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains the hdr pixel map. This method uses a promise to return the PixelMap object. * * @returns { Promise<PixelMap> } A Promise instance used to return the PixelMap object. - * @throws { BusinessError } 7600901 - Unknown error. - * @throws { BusinessError } 7600201 - Unsupported operation. + * @throws { BusinessError } 7600901 - Inner unknown error. Please check the logs for detailed information. + * @throws { BusinessError } 7600201 - Unsupported operation. e.g.,1. The picture does not has a gainmap. + * 2. MainPixelMap's allocator type is not DMA. * @syscap SystemCapability.Multimedia.Image.Core * @since 13 */ @@ -7037,7 +7157,8 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. * 2.Incorrect parameter types. 3.Parameter verification failed. - * @throws { BusinessError } 7600202 - Unsupported metadata. Possible causes: Unsupported metadata type. + * @throws { BusinessError } 7600202 - Unsupported metadata. Possible causes: 1. Unsupported metadata type. 2. The + * metadata type does not match the auxiliary picture type. * @syscap SystemCapability.Multimedia.Image.Core * @since 13 */ @@ -7050,7 +7171,8 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @returns { Promise<Metadata> } Return the metadata of main picture. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. * 2.Incorrect parameter types. 3.Parameter verification failed. - * @throws { BusinessError } 7600202 - Unsupported metadata. Possible causes: Unsupported metadata type. + * @throws { BusinessError } 7600202 - Unsupported metadata. Possible causes: 1. Unsupported metadata type. 2. The + * metadata type does not match the auxiliary picture type. * @syscap SystemCapability.Multimedia.Image.Core * @since 13 */ @@ -7062,7 +7184,8 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { rpc.MessageSequence } sequence rpc.MessageSequence parameter. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. * 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 62980097 - IPC error. + * @throws { BusinessError } 62980097 - IPC error. Possible cause: 1.IPC communication failed. 2. Image upload exception. + * 3. Decode process exception. 4. Insufficient memory. * @syscap SystemCapability.Multimedia.Image.Core * @since 13 */ @@ -7088,6 +7211,24 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo */ function createPicture(mainPixelmap : PixelMap): Picture; + /** + * Creates a Picture object by a HDR PixelMap and a SDR PixelMap.A gainmap will be generated using the + * HDR and SDR PixelMap, and the returned Picture will contain the SDR PixelMap and the generated gainmap. + * + * @param { PixelMap } hdrPixelMap A HDR PixelMap, which PixelMapFormat should be RGBA_F16\RGBA_1010102\YCBCR_P010 + * and color space should be BT2020_HLG. + * @param { PixelMap } sdrPixelMap A SDR PixelMap, which PixelMapFormat should be RGBA_8888\NV21\NV12, + * and color space should be P3. + * @returns { Promise<Picture> } Returns the Picture object. + * @throws { BusinessError } 7600201 - Unsupported operation. HdrPixelMap's PixelMapFormat is not + * RGBA_F16\RGBA_1010102\YCBCR_P010, or its color space is not BT2020_HLG. Or sdrPixelMap's PixelMapFormat is not + * RGBA_8888\NV21\NV12, or its color space is not P3. + * @syscap SystemCapability.Multimedia.Image.Core + * @systemapi + * @since 20 + */ + function createPictureByHdrAndSdrPixelMap(hdrPixelMap: PixelMap, sdrPixelMap: PixelMap): Promise<Picture>; + /** * Creates a Picture object based on MessageSequence parameter. * @@ -7095,7 +7236,8 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @returns { Picture } Returns the Picture object. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified. * 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 62980097 - IPC error. + * @throws { BusinessError } 62980097 - IPC error. Possible cause: 1.IPC communication failed. 2. Image upload exception. + * 3. Decode process exception. 4. Insufficient memory. * @syscap SystemCapability.Multimedia.Image.Core * @since 13 */ @@ -7227,7 +7369,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo */ enum AuxiliaryPictureType { /** - * Gain map. + * Gain Map, which is an auxiliary image that describes how the brightness of each pixel should be scaled in order + * to correctly map image luminance between display devices with different dynamic ranges. It is typically used to + * convert a Standard Dynamic Range (SDR) image into a High Dynamic Range (HDR) image. * * @syscap SystemCapability.Multimedia.Image.Core * @since 13 @@ -7235,7 +7379,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo GAINMAP = 1, /** - * Depth map. + * Depth map, which stores the depth information of an image by capturing the distance between each pixel and + * the camera. It provides three-dimensional structural information of the scene and is commonly used for 3D + * reconstruction and scene understanding. * * @syscap SystemCapability.Multimedia.Image.Core * @since 13 @@ -7243,7 +7389,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo DEPTH_MAP = 2, /** - * Unrefocus map. + * Unrefocus map, representing an original portrait image with unfocused background, which provides a way to + * emphasize background blur inportrait photography. + * It helps users select the focus area during post-processing, enhancing creative flexibility. * * @syscap SystemCapability.Multimedia.Image.Core * @since 13 @@ -7251,7 +7399,8 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo UNREFOCUS_MAP = 3, /** - * Linear map. + * Linear map, used to provide an additional data perspective or supplementary information, typically for enhancing + * visual effects. It can contain a linear representation of lighting, color, or other visual elements in the scene. * * @syscap SystemCapability.Multimedia.Image.Core * @since 13 @@ -7259,7 +7408,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo LINEAR_MAP = 4, /** - * Fragment map. + * Fragment map, representing the region in the original image that is covered by a watermark. + * This image is used to restore or remove the effects of the watermark, helping to recover the image’s integrity + * and visual clarity. * * @syscap SystemCapability.Multimedia.Image.Core * @since 13 @@ -7504,7 +7655,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains information about an image with the specified sequence number and uses a callback * to return the result. * - * @param { number } index Sequence number of an image. + * @param { number } index Sequence number of an image. The default value is 0, indicating the first image. + * When the value is N, it refers to the (N-1)th image. In single-frame image scenarios, the value must be 0. + * In multi-frame image scenarios such as animations, the valid range is 0 to (frame count - 1). * @param { AsyncCallback<ImageInfo> } callback Callback used to return the image information. * @syscap SystemCapability.Multimedia.Image.ImageSource * @since 6 @@ -7513,7 +7666,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains information about an image with the specified sequence number and uses a callback * to return the result. * - * @param { number } index Sequence number of an image. + * @param { number } index Sequence number of an image. The default value is 0, indicating the first image. + * When the value is N, it refers to the (N-1)th image. In single-frame image scenarios, the value must be 0. + * In multi-frame image scenarios such as animations, the valid range is 0 to (frame count - 1). * @param { AsyncCallback<ImageInfo> } callback Callback used to return the image information. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -7523,7 +7678,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains information about an image with the specified sequence number and uses a callback * to return the result. * - * @param { number } index Sequence number of an image. + * @param { number } index Sequence number of an image. The default value is 0, indicating the first image. + * When the value is N, it refers to the (N-1)th image. In single-frame image scenarios, the value must be 0. + * In multi-frame image scenarios such as animations, the valid range is 0 to (frame count - 1). * @param { AsyncCallback<ImageInfo> } callback Callback used to return the image information. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -7534,7 +7691,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains information about an image with the specified sequence number and uses a callback * to return the result. * - * @param { number } index Sequence number of an image. + * @param { number } index Sequence number of an image. The default value is 0, indicating the first image. + * When the value is N, it refers to the (N-1)th image. In single-frame image scenarios, the value must be 0. + * In multi-frame image scenarios such as animations, the valid range is 0 to (frame count - 1). * @param { AsyncCallback<ImageInfo> } callback Callback used to return the image information. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -7583,7 +7742,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo /** * Get image information from image source. * - * @param { number } index Sequence number of an image. If this parameter is not specified, the default value 0 is used. + * @param { number } index Sequence number of an image. The default value is 0, indicating the first image. + * When the value is N, it refers to the (N-1)th image. In single-frame image scenarios, the value must be 0. + * In multi-frame image scenarios such as animations, the valid range is 0 to (frame count - 1). * @returns { Promise<ImageInfo> } A Promise instance used to return the image information. * @syscap SystemCapability.Multimedia.Image.ImageSource * @since 6 @@ -7591,7 +7752,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo /** * Get image information from image source. * - * @param { number } index Sequence number of an image. If this parameter is not specified, the default value 0 is used. + * @param { number } index Sequence number of an image. The default value is 0, indicating the first image. + * When the value is N, it refers to the (N-1)th image. In single-frame image scenarios, the value must be 0. + * In multi-frame image scenarios such as animations, the valid range is 0 to (frame count - 1). * @returns { Promise<ImageInfo> } A Promise instance used to return the image information. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -7600,7 +7763,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo /** * Get image information from image source. * - * @param { number } index Sequence number of an image. If this parameter is not specified, the default value 0 is used. + * @param { number } index Sequence number of an image. The default value is 0, indicating the first image. + * When the value is N, it refers to the (N-1)th image. In single-frame image scenarios, the value must be 0. + * In multi-frame image scenarios such as animations, the valid range is 0 to (frame count - 1). * @returns { Promise<ImageInfo> } A Promise instance used to return the image information. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -7610,7 +7775,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo /** * Get image information from image source. * - * @param { number } index Sequence number of an image. If this parameter is not specified, the default value 0 is used. + * @param { number } index Sequence number of an image. The default value is 0, indicating the first image. + * When the value is N, it refers to the (N-1)th image. In single-frame image scenarios, the value must be 0. + * In multi-frame image scenarios such as animations, the valid range is 0 to (frame count - 1). * @returns { Promise<ImageInfo> } A Promise instance used to return the image information. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -7623,7 +7790,9 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo /** * Get image information from image source synchronously. * - * @param { number } index - Index of sequence images. If this parameter is not specified, default value is 0. + * @param { number } index Sequence number of an image. The default value is 0, indicating the first image. + * When the value is N, it refers to the (N-1)th image. In single-frame image scenarios, the value must be 0. + * In multi-frame image scenarios such as animations, the valid range is 0 to (frame count - 1). * @returns { ImageInfo } The image information. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -7766,14 +7935,16 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @returns { Promise<PixelMap> } A Promise instance used to return the PixelMap object. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified. * 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 7700101 - Bad source. + * @throws { BusinessError } 7700101 - Bad source. e.g.,1. Image has invalid width or height. 2. Image source incomplete. + * 3. Read image data failed. 4. Codec create failed. * @throws { BusinessError } 7700102 - Unsupported mimetype. - * @throws { BusinessError } 7700103 - Image too large. + * @throws { BusinessError } 7700103 - Image too large. This status code is thrown when an error occurs during the process of + * checking size. * @throws { BusinessError } 7700201 - Unsupported allocator type, e.g., use share memory to decode a HDR image as * only DMA supported hdr metadata. * @throws { BusinessError } 7700203 - Unsupported options, e.g, cannot convert image into desired pixel format. - * @throws { BusinessError } 7700301 - Decode failed. - * @throws { BusinessError } 7700302 - Memory allocation failed. + * @throws { BusinessError } 7700301 - Failed to decode image. + * @throws { BusinessError } 7700302 - Failed to allocate memory. * @syscap SystemCapability.Multimedia.Image.ImageSource * @since 15 */ @@ -7801,14 +7972,16 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @returns { PixelMap } Return the PixelMap. If decoding fails, return undefined. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified. * 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 7700101 - Bad source. + * @throws { BusinessError } 7700101 - Bad source. e.g.,1. Image has invalid width or height. 2. Image source incomplete. + * 3. Read image data failed. 4. Codec create failed. * @throws { BusinessError } 7700102 - Unsupported mimetype. - * @throws { BusinessError } 7700103 - Image too large. + * @throws { BusinessError } 7700103 - Image too large. This status code is thrown when an error occurs during the process of + * checking size. * @throws { BusinessError } 7700201 - Unsupported allocator type, e.g., use share memory to decode a HDR image as * only DMA supported hdr metadata. * @throws { BusinessError } 7700203 - Unsupported options, e.g, cannot convert image into desired pixel format. - * @throws { BusinessError } 7700301 - Decode failed. - * @throws { BusinessError } 7700302 - Memory allocation failed. + * @throws { BusinessError } 7700301 - Failed to decode image. + * @throws { BusinessError } 7700302 - Failed to allocate memory. * @syscap SystemCapability.Multimedia.Image.ImageSource * @since 15 */ @@ -7816,24 +7989,27 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo /** * Creates a PixelMap array based on image decoding parameters. This method uses a promise to - * return the array. + * return the array. For animated images such as GIF and WebP, this interface returns the image data of each frame. + * For static images, it returns a single frame of image data. * * @param { DecodingOptions } options Image decoding parameters. * @returns { Promise<Array<PixelMap>> } A Promise instance used to return the PixelMap array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980099 - The shared memory data is abnormal. * @throws { BusinessError } 62980101 - The image data is abnormal. * @throws { BusinessError } 62980103 - The image data is not supported. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980109 - Failed to crop the image. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. - * @throws { BusinessError } 62980122 - The image decoding header is abnormal. + * @throws { BusinessError } 62980122 - Failed to decode the image header. * @throws { BusinessError } 62980137 - Invalid media operation. * @throws { BusinessError } 62980173 - The DMA memory does not exist. * @throws { BusinessError } 62980174 - The DMA memory data is abnormal. @@ -7843,20 +8019,23 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo */ /** * Creates a PixelMap array based on image decoding parameters. This method uses a promise to - * return the array. + * return the array. For animated images such as GIF and WebP, this interface returns the image data of each frame. + * For static images, it returns a single frame of image data. * * @param { DecodingOptions } options Image decoding parameters. * @returns { Promise<Array<PixelMap>> } A Promise instance used to return the PixelMap array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980099 - The shared memory data is abnormal. * @throws { BusinessError } 62980101 - The image data is abnormal. * @throws { BusinessError } 62980103 - The image data is not supported. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980109 - Failed to crop the image. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. @@ -7872,22 +8051,26 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo /** * Creates a PixelMap array. This method uses a callback to return the array. + * For animated images such as GIF and WebP, this interface returns the image data of each frame. + * For static images, it returns a single frame of image data. * * @param { AsyncCallback<Array<PixelMap>> } callback Callback used to return the PixelMap array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980099 - The shared memory data is abnormal. * @throws { BusinessError } 62980101 - The image data is abnormal. * @throws { BusinessError } 62980103 - The image data is not supported. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980109 - Failed to crop the image. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. - * @throws { BusinessError } 62980122 - The image decoding header is abnormal. + * @throws { BusinessError } 62980122 - Failed to decode the image header. * @throws { BusinessError } 62980137 - Invalid media operation. * @throws { BusinessError } 62980173 - The DMA memory does not exist. * @throws { BusinessError } 62980174 - The DMA memory data is abnormal. @@ -7897,18 +8080,22 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo */ /** * Creates a PixelMap array. This method uses a callback to return the array. + * For animated images such as GIF and WebP, this interface returns the image data of each frame. + * For static images, it returns a single frame of image data. * * @param { AsyncCallback<Array<PixelMap>> } callback Callback used to return the PixelMap array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980099 - The shared memory data is abnormal. * @throws { BusinessError } 62980101 - The image data is abnormal. * @throws { BusinessError } 62980103 - The image data is not supported. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980109 - Failed to crop the image. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. @@ -7924,24 +8111,27 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo /** * Creates a PixelMap array based on image decoding parameters. This method uses a callback to - * return the array. + * return the array. For animated images such as GIF and WebP, this interface returns the image data of each frame. + * For static images, it returns a single frame of image data. * * @param { DecodingOptions } options Image decoding parameters. * @param { AsyncCallback<Array<PixelMap>> } callback Callback used to return the PixelMap array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980099 - The shared memory data is abnormal. * @throws { BusinessError } 62980101 - The image data is abnormal. * @throws { BusinessError } 62980103 - The image data is not supported. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980109 - Failed to crop the image. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. - * @throws { BusinessError } 62980122 - The image decoding header is abnormal. + * @throws { BusinessError } 62980122 - Failed to decode the image header. * @throws { BusinessError } 62980137 - Invalid media operation. * @throws { BusinessError } 62980173 - The DMA memory does not exist. * @throws { BusinessError } 62980174 - The DMA memory data is abnormal. @@ -7951,20 +8141,23 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo */ /** * Creates a PixelMap array based on image decoding parameters. This method uses a callback to - * return the array. + * return the array. For animated images such as GIF and WebP, this interface returns the image data of each frame. + * For static images, it returns a single frame of image data. * * @param { DecodingOptions } options Image decoding parameters. * @param { AsyncCallback<Array<PixelMap>> } callback Callback used to return the PixelMap array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980099 - The shared memory data is abnormal. * @throws { BusinessError } 62980101 - The image data is abnormal. * @throws { BusinessError } 62980103 - The image data is not supported. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980109 - Failed to crop the image. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. @@ -7982,17 +8175,19 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains the array of delay time in an image. This method uses a promise to return the array. * * @returns { Promise<Array<number>> } A Promise instance used to return the array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. - * @throws { BusinessError } 62980122 - The image decoding header is abnormal. + * @throws { BusinessError } 62980122 - Failed to decode the image header. * @throws { BusinessError } 62980137 - Invalid media operation. - * @throws { BusinessError } 62980149 - Invalid media parameter. + * @throws { BusinessError } 62980149 - Invalid MIME type for the image source. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform * @since 10 @@ -8001,11 +8196,13 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains the array of delay time in an image. This method uses a promise to return the array. * * @returns { Promise<Array<number>> } A Promise instance used to return the array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. @@ -8022,17 +8219,19 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains the array of delay time in an image. This method uses a callback to return the array. * * @param { AsyncCallback<Array<number>> } callback Callback used to return the array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. - * @throws { BusinessError } 62980122 - The image decoding header is abnormal. + * @throws { BusinessError } 62980122 - Failed to decode the image header. * @throws { BusinessError } 62980137 - Invalid media operation. - * @throws { BusinessError } 62980149 - Invalid media parameter. + * @throws { BusinessError } 62980149 - Invalid MIME type for the image source. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform * @since 10 @@ -8041,11 +8240,13 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains the array of delay time in an image. This method uses a callback to return the array. * * @param { AsyncCallback<Array<number>> } callback Callback used to return the array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. @@ -8062,7 +8263,8 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains the array of disposal type in a gif image. This method uses a promise to return the array. * * @returns { Promise<Array<number>> } A Promise instance used to return the array. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980101 - The image data is abnormal. * @throws { BusinessError } 62980137 - Invalid media operation. * @throws { BusinessError } 62980149 - Invalid MIME type for the image source. @@ -8076,15 +8278,17 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains the count of frame in an image. This method uses a promise to return the number. * * @returns { Promise<number> } A Promise instance used to return the number. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. - * @throws { BusinessError } 62980122 - The image decoding header is abnormal. + * @throws { BusinessError } 62980122 - Failed to decode the image header. * @throws { BusinessError } 62980137 - Invalid media operation. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -8094,11 +8298,13 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains the count of frame in an image. This method uses a promise to return the number. * * @returns { Promise<number> } A Promise instance used to return the number. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. @@ -8114,15 +8320,17 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains the count of frame in an image. This method uses a callback to return the number. * * @param { AsyncCallback<number> } callback Callback used to return the number. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. - * @throws { BusinessError } 62980122 - The image decoding header is abnormal. + * @throws { BusinessError } 62980122 - Failed to decode the image header. * @throws { BusinessError } 62980137 - Invalid media operation. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -8132,11 +8340,13 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * Obtains the count of frame in an image. This method uses a callback to return the number. * * @param { AsyncCallback<number> } callback Callback used to return the number. - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. @@ -8156,17 +8366,19 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { ImagePropertyOptions } options - Index of the image. * @returns { Promise<string> } A Promise instance used to return the property value. If the operation fails, the default value is returned. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types;3.Parameter verification failed; - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980103 - The image data is not supported. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. - * @throws { BusinessError } 62980122 - The image decoding header is abnormal. - * @throws { BusinessError } 62980123 - Images in EXIF format are not supported. + * @throws { BusinessError } 62980122 - Failed to decode the image header. + * @throws { BusinessError } 62980123 - The image does not support EXIF decoding. * @throws { BusinessError } 62980135 - The EXIF value is invalid. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -8180,17 +8392,19 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { ImagePropertyOptions } options - Index of the image. * @returns { Promise<string> } A Promise instance used to return the property value. If the operation fails, the default value is returned. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types;3.Parameter verification failed; - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980103 - The image data is not supported. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980111 - The image source data is incomplete. * @throws { BusinessError } 62980112 - The image format does not match. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980115 - Invalid image parameter. * @throws { BusinessError } 62980116 - Failed to decode the image. * @throws { BusinessError } 62980118 - Failed to create the image plugin. * @throws { BusinessError } 62980122 - Failed to decode the image header. - * @throws { BusinessError } 62980123 - Images in EXIF format are not supported. + * @throws { BusinessError } 62980123 - The image does not support EXIF decoding. * @throws { BusinessError } 62980135 - The EXIF value is invalid. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -8285,9 +8499,11 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @returns { Promise<Record<PropertyKey, string|null>> } Array of Records instance used to return the * property values. If the operation fails, the null is returned. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed; - * @throws { BusinessError } 62980096 - The operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980110 - The image source data is incorrect. * @throws { BusinessError } 62980113 - Unknown image format. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. * @throws { BusinessError } 62980116 - Failed to decode the image. * @syscap SystemCapability.Multimedia.Image.ImageSource * @crossplatform @@ -8295,6 +8511,20 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo */ getImageProperties(key: Array<PropertyKey>): Promise<Record<PropertyKey, string|null>>; + /** + * Obtains the value of a property in the image. + * + * @param { PropertyKey } key Property name. + * @returns { string } Value of the property. + * @throws { BusinessError } 7700101 - Bad source. e.g.,1. Image has invalid width or height. 2. Image + * source incomplete. 3. Read image data failed. 4. Codec create failed. + * @throws { BusinessError } 7700102 - Unsupported MIME type. + * @throws { BusinessError } 7700202 - Unsupported metadata. For example, key is not supported. + * @syscap SystemCapability.Multimedia.Image.ImageSource + * @since 20 + */ + getImagePropertySync(key: PropertyKey): string; + /** * Modify the value of a property in an image with the specified key. This method uses a * promise to return the property value in a string. @@ -8303,7 +8533,7 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { string } value - The value to be set to property. * @returns { Promise<void> } A Promise instance used to return the property value. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; - * @throws { BusinessError } 62980123 - Images in EXIF format are not supported. + * @throws { BusinessError } 62980123 - The image does not support EXIF decoding. * @throws { BusinessError } 62980133 - The EXIF data is out of range. * @throws { BusinessError } 62980135 - The EXIF value is invalid. * @throws { BusinessError } 62980146 - The EXIF data failed to be written to the file. @@ -8523,7 +8753,7 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @returns { Promise<Picture> } A Promise instance used to return the Picture object. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified. * 2.Incorrect parameter types; 3.Parameter verification failed. - * @throws { BusinessError } 7700301 - Decode failed. + * @throws { BusinessError } 7700301 - Failed to decode image. * @syscap SystemCapability.Multimedia.Image.ImageSource * @since 13 */ @@ -8657,11 +8887,13 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { PackingOption } options Option for image packing. * @returns { Promise<ArrayBuffer> } A Promise instance used to return the compressed or packed data. * @throws { BusinessError } 401 - If the parameter is invalid. - * @throws { BusinessError } 62980096 - The Operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980101 - The image data is abnormal. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980113 - Unknown image format. - * @throws { BusinessError } 62980119 - If encoder occur error during encoding. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. + * @throws { BusinessError } 62980119 - Failed to encode the image. * @throws { BusinessError } 62980120 - Add pixelmap out of range. * @throws { BusinessError } 62980172 - Failed to encode icc. * @throws { BusinessError } 62980252 - Failed to create surface. @@ -8755,11 +8987,13 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { PackingOption } options Option for image packing. * @returns { Promise<ArrayBuffer> } A Promise instance used to return the compressed or packed data. * @throws { BusinessError } 401 - If the parameter is invalid. - * @throws { BusinessError } 62980096 - The Operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980101 - The image data is abnormal. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980113 - Unknown image format. - * @throws { BusinessError } 62980119 - If encoder occur error during encoding. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. + * @throws { BusinessError } 62980119 - Failed to encode the image. * @throws { BusinessError } 62980120 - Add pixelmap out of range. * @throws { BusinessError } 62980172 - Failed to encode icc. * @throws { BusinessError } 62980252 - Failed to create surface. @@ -8778,8 +9012,8 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @returns { Promise<ArrayBuffer> } encoded buffer. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified. * 2.Incorrect parameter types;3.Parameter verification failed. - * @throws { BusinessError } 7800201 - Unsupported options. - * @throws { BusinessError } 7800301 - Encoding failed. + * @throws { BusinessError } 7800201 - Unsupported packing options. + * @throws { BusinessError } 7800301 - Failed to encode image. * @syscap SystemCapability.Multimedia.Image.ImagePacker * @since 18 */ @@ -8792,12 +9026,14 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { number } fd ID of a file descriptor. * @param { PackingOption } options Options for image packing. * @param { AsyncCallback<void> } callback Callback used to return the operation result. - * @throws { BusinessError } 62980096 - The Operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980101 - The image data is abnormal. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980113 - Unknown image format. - * @throws { BusinessError } 62980115 - If the parameter is invalid. - * @throws { BusinessError } 62980119 - If encoder occur error during encoding. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. + * @throws { BusinessError } 62980115 - Invalid input parameter. + * @throws { BusinessError } 62980119 - Failed to encode the image. * @throws { BusinessError } 62980120 - Add pixelmap out of range. * @throws { BusinessError } 62980172 - Failed to encode icc. * @throws { BusinessError } 62980252 - Failed to create surface. @@ -8814,12 +9050,14 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { number } fd ID of a file descriptor. * @param { PackingOption } options Options for image packing. * @returns { Promise<void> } A Promise instance used to return the operation result. - * @throws { BusinessError } 62980096 - The Operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980101 - The image data is abnormal. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980113 - Unknown image format. - * @throws { BusinessError } 62980115 - If the parameter is invalid. - * @throws { BusinessError } 62980119 - If encoder occur error during encoding. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. + * @throws { BusinessError } 62980115 - Invalid input parameter. + * @throws { BusinessError } 62980119 - Failed to encode the image. * @throws { BusinessError } 62980120 - Add pixelmap out of range. * @throws { BusinessError } 62980172 - Failed to encode icc. * @throws { BusinessError } 62980252 - Failed to create surface. @@ -8836,12 +9074,14 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { number } fd ID of a file descriptor. * @param { PackingOption } options Options for image packing. * @param { AsyncCallback<void> } callback Callback used to return the operation result. - * @throws { BusinessError } 62980096 - The Operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980101 - The image data is abnormal. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980113 - Unknown image format. - * @throws { BusinessError } 62980115 - If the parameter is invalid. - * @throws { BusinessError } 62980119 - If encoder occur error during encoding. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. + * @throws { BusinessError } 62980115 - Invalid input parameter. + * @throws { BusinessError } 62980119 - Failed to encode the image. * @throws { BusinessError } 62980120 - Add pixelmap out of range. * @throws { BusinessError } 62980172 - Failed to encode icc. * @throws { BusinessError } 62980252 - Failed to create surface. @@ -8858,12 +9098,14 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @param { number } fd ID of a file descriptor. * @param { PackingOption } options Options for image packing. * @returns { Promise<void> } A Promise instance used to return the operation result. - * @throws { BusinessError } 62980096 - The Operation failed. + * @throws { BusinessError } 62980096 - The operation failed. Possible cause: 1.Image upload exception. + * 2. Decoding process exception. 3. Insufficient memory. * @throws { BusinessError } 62980101 - The image data is abnormal. - * @throws { BusinessError } 62980106 - The image is too large. + * @throws { BusinessError } 62980106 - The image data is too large. This status code is thrown when an error occurs during the process of checking size. * @throws { BusinessError } 62980113 - Unknown image format. - * @throws { BusinessError } 62980115 - If the parameter is invalid. - * @throws { BusinessError } 62980119 - If encoder occur error during encoding. + * The image data provided is not in a recognized or supported format, or it may be occorrupted. + * @throws { BusinessError } 62980115 - Invalid input parameter. + * @throws { BusinessError } 62980119 - Failed to encode the image. * @throws { BusinessError } 62980120 - Add pixelmap out of range. * @throws { BusinessError } 62980172 - Failed to encode icc. * @throws { BusinessError } 62980252 - Failed to create surface. @@ -8882,8 +9124,8 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo * @returns { Promise<void> } void. * @throws { BusinessError } 401 - Parameter error.Possible causes: 1.Mandatory parameters are left unspecified. * 2.Incorrect parameter types;3.Parameter verification failed. - * @throws { BusinessError } 7800201 - Unsupported options. - * @throws { BusinessError } 7800301 - Encoding failed. + * @throws { BusinessError } 7800201 - Unsupported packing options. + * @throws { BusinessError } 7800301 - Failed to encode image. * @syscap SystemCapability.Multimedia.Image.ImagePacker * @since 18 */ @@ -9295,6 +9537,24 @@ function createUnpremultipliedPixelMap(src: PixelMap, dst: PixelMap): Promise<vo */ release(): Promise<void>; } + + /** + * Obtains the image formats (MIME types) that can be decoded. + * + * @returns { string[] } Returns an array of the supported image formats. + * @syscap SystemCapability.Multimedia.ImageSource + * @since 20 + */ + function getImageSourceSupportedFormats(): string[]; + + /** + * Obtains the image formats (MIME types) that can be encoded. + * + * @returns { string[] } Returns an array of the supported image formats. + * @syscap SystemCapability.Multimedia.ImagePacker + * @since 20 + */ + function getImagePackerSupportedFormats(): string[]; } export default image; diff --git a/api/@ohos.multimedia.media.d.ts b/api/@ohos.multimedia.media.d.ts index 214da6eb636ee75d85f969eb0210e14e2f9f239c..769ebdfebd4b7c87ebb32ca82a3cbedd09ef5ec3 100755 --- a/api/@ohos.multimedia.media.d.ts +++ b/api/@ohos.multimedia.media.d.ts @@ -19,8 +19,8 @@ */ import { ErrorCallback, AsyncCallback, Callback } from './@ohos.base'; -import audio from "./@ohos.multimedia.audio"; -import photoAccessHelper from "./@ohos.file.photoAccessHelper"; +import audio from './@ohos.multimedia.audio'; +import photoAccessHelper from './@ohos.file.photoAccessHelper'; import type image from './@ohos.multimedia.image'; import type { SoundPool as _SoundPool } from './multimedia/soundPool'; import type { PlayParameters as _PlayParameters } from './multimedia/soundPool'; @@ -36,6 +36,9 @@ import type drm from './@ohos.multimedia.drm'; * @since 11 */ /** + * The multimedia subsystem provides a set of simple and easy-to-use APIs for you to access the system and + * use media resources. + * * @namespace media * @syscap SystemCapability.Multimedia.Media.Core * @crossplatform @@ -46,6 +49,7 @@ declare namespace media { /** * Creates an AVPlayer instance. * @param { AsyncCallback<AVPlayer> } callback - used to return AVPlayer instance if the operation is successful; returns null otherwise. + * The instance can be used to play audio and video. * @throws { BusinessError } 5400101 - No memory. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 @@ -59,8 +63,17 @@ declare namespace media { * @since 11 */ /** - * Creates an AVPlayer instance. - * @param { AsyncCallback<AVPlayer> } callback - used to return AVPlayer instance if the operation is successful; returns null otherwise. + * Creates an **AVPlayer** instance. This API uses an asynchronous callback to return the result. + * <br>**NOTE:**<br> + * You are advised to create a maximum of 16 **AVPlayer** instances for an application in both audio and video + * playback scenarios. + * + * The actual number of instances that can be created may be different. + * It depends on the specifications of the device chip in use. + * + * @param { AsyncCallback<AVPlayer> } callback - used to return the result. If the operation is successful, an + * **AVPlayer** instance is returned; otherwise, **null** is returned. The instance can be used to play + * audio and video. * @throws { BusinessError } 5400101 - No memory. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -70,14 +83,14 @@ declare namespace media { function createAVPlayer(callback: AsyncCallback<AVPlayer>): void; /** - * Creates an AVPlayer instance. + * Creates an AVPlayer instance. This API uses a promise to return the result. * @returns { Promise<AVPlayer> } A Promise instance used to return AVPlayer instance if the operation is successful; returns null otherwise. * @throws { BusinessError } 5400101 - No memory. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Creates an AVPlayer instance. + * Creates an AVPlayer instance. This API uses a promise to return the result. * @returns { Promise<AVPlayer> } A Promise instance used to return AVPlayer instance if the operation is successful; returns null otherwise. * @throws { BusinessError } 5400101 - No memory. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -85,8 +98,17 @@ declare namespace media { * @since 11 */ /** - * Creates an AVPlayer instance. - * @returns { Promise<AVPlayer> } A Promise instance used to return AVPlayer instance if the operation is successful; returns null otherwise. + * Creates an **AVPlayer** instance. This API uses a promise to return the result. + * <br>**NOTE:**<br> + * You are advised to create a maximum of 16 **AVPlayer** instances for an application in both audio and video + * playback scenarios. + * + * The actual number of instances that can be created may be different. It depends on the specifications of + * the device chip in use. + * + * @returns { Promise<AVPlayer> } A Promise instance used to return the result. If the operation is successful, an + * **AVPlayer** instance is returned; **null** is returned otherwise. The instance can be used to play + * audio and video. * @throws { BusinessError } 5400101 - No memory. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -103,8 +125,10 @@ declare namespace media { * @since 9 */ /** - * Creates an AVRecorder instance. - * @param { AsyncCallback<AVRecorder> } callback - used to return AVRecorder instance if the operation is successful; returns null otherwise. + * Creates an **AVRecorder** instance. This API uses an asynchronous callback to return the result. + * @param { AsyncCallback<AVRecorder> } callback - Callback used to return the result. If the operation is successful, + * an **AVRecorder** instance is returned; otherwise, **null** is returned. The instance can be used to record audio + * and video. * @throws { BusinessError } 5400101 - No memory. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -120,8 +144,10 @@ declare namespace media { * @since 9 */ /** - * Creates an AVRecorder instance. - * @returns { Promise<AVRecorder> } A Promise instance used to return AVRecorder instance if the operation is successful; returns null otherwise. + * Creates an **AVRecorder** instance. This API uses a promise to return the result. + * @returns { Promise<AVRecorder> } Promise used to return the result. If the operation is successful, + * an **AVRecorder** instance is returned; otherwise, **null** is returned. + * The instance can be used to record audio and video. * @throws { BusinessError } 5400101 - No memory. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -162,8 +188,9 @@ declare namespace media { * @since 12 */ /** - * Create MediaSource from url. - * @param { string } url : The location for the media source. + * Creates a media source for streaming media to be pre-downloaded. + * @param { string } url : Url of the media source. The following streaming media formats are supported: HLS, + * HTTP-FLV, DASH, and HTTPS. * @param { Record<string, string> } headers : Headers attached to network request while player request data. * @returns { MediaSource } MediaSource instance if the operation is successful; returns null otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. @@ -176,13 +203,14 @@ declare namespace media { function createMediaSourceWithUrl(url: string, headers?: Record<string, string>): MediaSource; /** - * Create media source from media stream array. - * @param { Array<MediaStream> } streams - The player uses it to get stream source info. + * Creates a multi-bitrate media source for streaming media. Currently, only the HTTP-FLV multi-bitrate + * media source is supported. + * @param { Array<MediaStream> } streams - Array of MediaStream objects. + * The supported streaming media format is HTTP-FLV. * @returns { MediaSource } MediaSource instance if the operation is successful; returns null otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice - * @since 18 + * @since 19 */ function createMediaSourceWithStreamData(streams: Array<MediaStream>): MediaSource; @@ -249,11 +277,23 @@ declare namespace media { function createVideoRecorder(): Promise<VideoRecorder>; /** - * Creates a soundPool instance. + * Creates a **SoundPool** instance. This API uses an asynchronous callback to return the result. + * + * **NOTE** + * - In versions earlier than API version 18, the bottom layer of the created **SoundPool** object is in singleton + * mode. Therefore, an application process can create only one **SoundPool** instance. + * - In API version 18 and later versions, the bottom layer of the created **SoundPool** object is in multiton mode. + * Therefore, an application process can create a maximum of 128 **SoundPool** instances. * - * @param {number} maxStreams The maximum number of simultaneous streams for this soundPool instance - * @param {audio.AudioRendererInfo} audioRenderInfo Audio renderer information - * @param {AsyncCallback<SoundPool>} callback Callback used to return soundPool instance if the operation is successful; returns null otherwise. + * @param {number} maxStreams - Maximum number of streams that can be played by the **SoundPool** instance. + * The value is an integer ranging from 1 to 32. + * @param {audio.AudioRendererInfo} audioRenderInfo - Audio renderer parameters. When the **usage** parameter + * in **audioRenderInfo** is set to **STREAM_USAGE_UNKNOWN**, **STREAM_USAGE_MUSIC**, **STREAM_USAGE_MOVIE**, or + * **STREAM_USAGE_AUDIOBOOK**, the SoundPool uses the audio mixing mode when playing a short sound, without + * interrupting the playback of other audios. + * @param {AsyncCallback<SoundPool>} callback - Callback used to return the result. If the operation is successful, a + * **SoundPool** instance is returned; otherwise, **null** is returned. + * The instance is used for loading and playback. * @throws { BusinessError } 5400101 - No memory. Return by callback. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 @@ -265,11 +305,20 @@ declare namespace media { ): void; /** - * Creates a soundPool instance. + * Creates a **SoundPool** instance. This API uses a promise to return the result. + * + * **NOTE** + * - In versions earlier than API version 18, the bottom layer of the created **SoundPool** object is in singleton + * mode. Therefore, an application process can create only one **SoundPool** instance. + * - In API version 18 and later versions, the bottom layer of the created **SoundPool** object is in multiton mode. + * Therefore, an application process can create a maximum of 128 **SoundPool** instances. * - * @param {number} maxStreams The maximum number of simultaneous streams for this soundPool instance - * @param {audio.AudioRendererInfo} audioRenderInfo Audio renderer information - * @returns {Promise<SoundPool>} A Promise instance used to return SoundPool instance if the operation is successful; returns null otherwise. + * @param {number} maxStreams - Maximum number of streams that can be played by the **SoundPool** instance. + * The value is an integer ranging from 1 to 32. + * @param {audio.AudioRendererInfo} audioRenderInfo - Audio renderer parameters. + * @returns {Promise<SoundPool>} Promise used to return the result. If the operation is successful, + * a **SoundPool** instance is returned; otherwise, **null** is returned. + * The instance is used for loading and playback. * @throws { BusinessError } 5400101 - No memory. Return by promise. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 @@ -277,34 +326,101 @@ declare namespace media { function createSoundPool(maxStreams: number, audioRenderInfo: audio.AudioRendererInfo): Promise<SoundPool>; /** - * Creates an AVScreenCaptureRecorder instance. - * @returns { Promise<AVScreenCaptureRecorder> } A Promise instance used to return AVScreenCaptureRecorder instance if the operation is successful; - * returns null otherwise. + * Creates a **SoundPool** instance. This API uses a promise to return the result. + * + * If a **SoundPool** instance created using [createSoundPool]{@link #createSoundPool} is used to play the same sound again, + * it stops the current audio and restarts the audio. However, if the instance is created using + * **createParallelSoundPool**, it keeps playing the first audio and starts the new one alongside it. + * + * @param {number} maxStreams - Maximum number of streams that can be played by the **SoundPool** instance. + * The value is an integer ranging from 1 to 32. + * @param {audio.AudioRendererInfo} audioRenderInfo - Audio renderer parameters. + * @returns {Promise<SoundPool>} Promise used to return the result. If the operation is successful, a **SoundPool** + * instance is returned; otherwise, **null** is returned. The instance is used for loading and playback. + * @throws { BusinessError } 5400101 - No memory. Return by promise. + * @throws { BusinessError } 202 - System API error. Return by promise. + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @systemapi + * @since 20 + */ + function createParallelSoundPool(maxStreams: number, audioRenderInfo: audio.AudioRendererInfo): Promise<SoundPool>; + + /** + * Creates an **AVScreenCaptureRecorder** instance. This API uses a promise to return the result. + * @returns { Promise<AVScreenCaptureRecorder> } Promise used to return the result. If the operation is successful, + * an **AVScreenCaptureRecorder** instance is returned; otherwise, **null** is returned. + * The instance can be used for screen capture. * @throws { BusinessError } 5400101 - No memory. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * let avScreenCaptureRecorder: media.AVScreenCaptureRecorder; + * media.createAVScreenCaptureRecorder().then((captureRecorder: media.AVScreenCaptureRecorder) => { + * if (captureRecorder != null) { + * avScreenCaptureRecorder = captureRecorder; + * console.info('Succeeded in createAVScreenCaptureRecorder'); + * } else { + * console.error('Failed to createAVScreenCaptureRecorder'); + * } + * }).catch((error: BusinessError) => { + * console.error(`createAVScreenCaptureRecorder catchCallback, error message:${error.message}`); + * }); */ function createAVScreenCaptureRecorder(): Promise<AVScreenCaptureRecorder>; /** - * Report user choice back to AVScreenCapture server + * Reports the user selection result in the screen capture privacy dialog box to the AVScreenCapture server to + * determine whether to start screen capture. Screen capture starts only when the user touches a button to + * continue the operation. + * This API is called by the system application that creates the dialog box. * - * @param {number} sessionId The AVScreenCapture server session ID. - * @param {string} choice Content chosen by user. + * @param {number} sessionId Session ID of the AVScreenCapture service, which is sent to the application when + * the AVScreenCapture server starts the privacy dialog box. + * @param {string} choice User choice, including whether screen capture is agreed, selected display ID, + * and window ID. For details, see JsonData in the example below. * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. 3.Parameter verification failed. + * 2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 5400101 - No memory. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @systemapi * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * import { media } from '@kit.MediaKit'; + * + * class JsonData { + * public choice: string = 'true' + * public displayId: number | null = -1 + * public missionId: number | null = -1 + * } + * let sessionId: number = 0; // Use the ID of the session that starts the process. + * + * try { + * const jsonData: JsonData = { + * choice: 'true', // Replace it with the user choice. + * displayId: -1, // Replace it with the ID of the display selected by the user. + * missionId: -1, // Replace it with the ID of the window selected by the user. + * } + * await media.reportAVScreenCaptureUserChoice(sessionId, JSON.stringify(jsonData)); + * } catch (error: BusinessError) { + * console.error(`reportAVScreenCaptureUserChoice error, error message: ${error.message}`); + * } */ function reportAVScreenCaptureUserChoice(sessionId: number, choice: string): Promise<void>; /** - * Creates a AVTranscoder instance. + * Creates an **AVTranscoder** instance. This API uses a promise to return the result. + * + * **NOTE** * - * @returns {Promise<AVTranscoder>} A Promise instance used to return AVTranscoder instance if the operation is successful; returns null otherwise. + * A maximum of 2 **AVTranscoder** instances can be created. + * + * @returns {Promise<AVTranscoder>} Promise used to return the result. If the operation is successful, an + * **AVTranscoder** instance is returned; otherwise, **null** is returned. The instance can be used for video + * transcoding. * @throws { BusinessError } 5400101 - No memory. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 @@ -312,20 +428,29 @@ declare namespace media { function createAVTranscoder(): Promise<AVTranscoder>; /** - * Get the ScreenCaptureMonitor instance + * Obtains a **ScreenCaptureMonitor** instance. This API uses a promise to return the result. * - * @returns { Promise<ScreenCaptureMonitor> } A Promise instance used to return ScreenCaptureMonitor instance if the operation is successful; returns null otherwise. + * @returns { Promise<ScreenCaptureMonitor> } Promise used to return the result. The instance can be used to query + * and monitor the status of the system screen recorder.<br>If the operation is successful, + * a **ScreenCaptureMonitor** instance is returned; otherwise, **null** is returned. * @throws { BusinessError } 202 - Not System App. * @throws { BusinessError } 5400101 - No memory. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @systemapi * @since 18 + * @example + * let screenCaptureMonitor: media.ScreenCaptureMonitor; + * try { + * screenCaptureMonitor = await media.getScreenCaptureMonitor(); + * } catch (err) { + * console.error(`getScreenCaptureMonitor failed, error message:${err.message}`); + * } */ function getScreenCaptureMonitor(): Promise<ScreenCaptureMonitor>; /** - * Manages and plays sound. Before calling an SoundPool method, you must use createSoundPool() - * to create an SoundPool instance. + * Provides APIs for loading, unloading, playing, and stopping playing system sounds, setting the volume, + * and setting the number of loops. * * @typedef { _SoundPool } * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -334,7 +459,7 @@ declare namespace media { type SoundPool = _SoundPool; /** - * Describes play parameters. + * Playback parameters of the sound pool. * * @typedef { _PlayParameters } * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -358,7 +483,8 @@ declare namespace media { * @since 11 */ /** - * Enumerates state change reason. + * Enumerates the reasons for the state transition of the **AVPlayer** or **AVRecorder** instance. + * The enum value is reported together with **state**. * * @enum { number } * @syscap SystemCapability.Multimedia.Media.Core @@ -379,7 +505,7 @@ declare namespace media { * @since 11 */ /** - * State changed by user operation. + * State transition triggered by user behavior. It happens when a user or the client calls an API. * @syscap SystemCapability.Multimedia.Media.Core * @crossplatform * @atomicservice @@ -399,7 +525,8 @@ declare namespace media { * @since 11 */ /** - * State changed by background action. + * State transition caused by background system behavior. For example, if an application does not have the permission of + * Media Controller, the application is forcibly suspended or stopped by the system when it switches to the background. * @syscap SystemCapability.Multimedia.Media.Core * @crossplatform * @atomicservice @@ -417,7 +544,7 @@ declare namespace media { * @since 11 */ /** - * Creates an AVMetadataExtractor instance. + * Creates an **AVMetadataExtractor** instance. This API uses a promise to return the result. * @returns { Promise<AVMetadataExtractor> } A Promise instance used to return AVMetadataExtractor instance * if the operation is successful; returns null otherwise. * @throws { BusinessError } 5400101 - No memory. Returned by promise. @@ -436,9 +563,10 @@ declare namespace media { * @since 11 */ /** - * Creates an AVMetadataExtractor instance. - * @param { AsyncCallback<AVMetadataExtractor> } callback - Callback used to return AVMetadataExtractor instance - * if the operation is successful; returns null otherwise. + * Creates an **AVMetadataExtractor** instance. This API uses an asynchronous callback to return the result. + * @param { AsyncCallback<AVMetadataExtractor> } callback - Callback used to return the result. If the operation is + * successful, **err** is **undefined** and **data** is the **AVMetadataExtractor** instance created; + * otherwise, **err** is an error object. * @throws { BusinessError } 5400101 - No memory. Returned by callback. * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -447,9 +575,10 @@ declare namespace media { function createAVMetadataExtractor(callback: AsyncCallback<AVMetadataExtractor>): void; /** - * Creates an AVImageGenerator instance. - * @returns { Promise<AVImageGenerator> } A Promise instance used to return AVImageGenerator instance - * if the operation is successful; returns null otherwise. + * Creates an **AVImageGenerator** instance. This API uses a promise to return the result. + * @returns { Promise<AVImageGenerator> } Promise used to return the result. If the operation is successful, + * an **AVImageGenerator** instance is returned; otherwise, **null** is returned. + * The API can be used to obtain a video thumbnail. * @throws { BusinessError } 5400101 - No memory. Returned by promise. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 @@ -457,9 +586,10 @@ declare namespace media { function createAVImageGenerator(): Promise<AVImageGenerator>; /** - * Creates an AVImageGenerator instance. - * @param { AsyncCallback<AVImageGenerator> } callback - Callback used to return AVImageGenerator instance - * if the operation is successful; returns null otherwise. + * Creates an **AVImageGenerator** instance. This API uses an asynchronous callback to return the result. + * @param { AsyncCallback<AVImageGenerator> } callback - Callback used to return the result. + * If the operation is successful, an **AVImageGenerator** instance is returned; otherwise, **null** is returned. + * The API can be used to obtain a video thumbnail. * @throws { BusinessError } 5400101 - No memory. Returned by callback. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 @@ -474,8 +604,10 @@ declare namespace media { * @since 11 */ /** - * Fetch media meta data or audio art picture from source. Before calling an AVMetadataExtractor method, - * you must use createAVMetadataExtractor() to create an AVMetadataExtractor instance. + * Fetch media meta data or audio art picture from source. Before calling an **AVMetadataExtractor** method, + * you must use [createAVMetadataExtractor()]{@link #createAVMetadataExtractor} to create an + * **AVMetadataExtractor** instance. + * * @typedef AVMetadataExtractor * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -489,7 +621,20 @@ declare namespace media { * @since 11 */ /** - * Media file descriptor. + * Media file descriptor, which specifies the data source. Before obtaining metadata, + * you must set the data source through either **fdSrc** or **dataSrc**. + * + * **Example:** + * + * There is a media file that stores continuous assets, the address offset is 0, and the byte length is 100. + * Its file descriptor is **AVFileDescriptor { fd = resourceHandle; offset = 0; length = 100; }**. + * + * **NOTE** + * - After the resource handle (FD) is transferred to an **AVMetadataExtractor** instance, + * do not use the resource handle to perform other read and write operations, including but not limited to + * transferring this handle to other **AVPlayer**, **AVMetadataExtractor**, **AVImageGenerator**, + * or **AVTranscoder** instance. Competition occurs when multiple **AVMetadataExtractor** use the same resource + * handle to read and write files at the same time, resulting in errors in obtaining data. * @type { ?AVFileDescriptor } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -504,7 +649,11 @@ declare namespace media { * @since 11 */ /** - * DataSource descriptor. + * Streaming media resource descriptor, which specifies the data source. Before obtaining metadata, + * you must set the data source through either **fdSrc** or **dataSrc**. + * + * When an application obtains a media file from the remote, you can set **dataSrc** to obtain the metadata before + * the application finishes the downloading. * @type { ?AVDataSrcDescriptor } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -521,8 +670,9 @@ declare namespace media { * @since 11 */ /** - * It will extract the resource to fetch media meta data info. - * @param { AsyncCallback<AVMetadata> } callback - A callback instance used to return when fetchMetadata completed. + * Obtains media metadata. This API uses an asynchronous callback to return the result. + * @param { AsyncCallback<AVMetadata> } callback - Callback used to return the result, + * which is an **AVMetadata** instance. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by callback. * @throws { BusinessError } 5400106 - Unsupported format. Returned by callback. * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor @@ -540,8 +690,8 @@ declare namespace media { * @since 11 */ /** - * It will extract the resource to fetch media meta data info. - * @returns { Promise<AVMetadata> } A Promise instance used to return when fetchMetadata completed. + * Obtains media metadata. This API uses a promise to return the result. + * @returns { Promise<AVMetadata> } Promise used to return the result, which is an **AVMetadata** instance. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by promise. * @throws { BusinessError } 5400106 - Unsupported format. Returned by promise. * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor @@ -560,8 +710,8 @@ declare namespace media { * @since 11 */ /** - * It will extract the audio resource to fetch an album cover. - * @param { AsyncCallback<image.PixelMap> } callback - A callback instance used + * Obtains the cover of the audio album. This API uses an asynchronous callback to return the result. + * @param { AsyncCallback<image.PixelMap> } callback - Callback used to return the album cover. * to return when fetchAlbumCover completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400106 - Unsupported format. Returned by callback. @@ -580,8 +730,8 @@ declare namespace media { * @since 11 */ /** - * It will extract the audio resource to fetch an album cover. - * @returns { Promise<image.PixelMap> } A Promise instance used to return when fetchAlbumCover completed. + * Obtains the cover of the audio album. This API uses a promise to return the result. + * @returns { Promise<image.PixelMap> } Promise used to return the album cover. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by promise. * @throws { BusinessError } 5400106 - Unsupported format. Returned by promise. * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor @@ -591,9 +741,36 @@ declare namespace media { fetchAlbumCover(): Promise<image.PixelMap>; /** - * Get timestamp according to frame index. - * @param { number } index - Index of the frame. - * @returns { Promise<number> } A Promise instance used to return frame timestamp, in microseconds. + * Sets the network media source URL and configures request headers. + * @param { string } url - The URL of the media resource. + * @param { Record<string, string> } headers - Optional request headers. + * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor + * @since 20 + */ + setUrlSource(url: string, headers?: Record<string, string>): void; + + /** + * It will decode the given video resource. Then fetch a picture + * at @timeUs according the given @options and @param . + * @param { number } timeUs - The time expected to fetch picture from the video resource. + * The unit is microsecond(us). + * @param { AVImageQueryOptions } options - The time options about the relationship + * between the given timeUs and a key frame, see @AVImageQueryOptions . + * @param { PixelMapParams } param - The output pixel map format params, see @PixelMapParams . + * @returns { Promise<image.PixelMap> } A Promise instance used to return the pixel map + * when fetchFrameByTime completed. + * @throws { BusinessError } 5400102 - Operation not allowed. Returned by promise. + * @throws { BusinessError } 5400106 - Unsupported format. Returned by promise. + * @throws { BusinessError } 5400108 - Parameter check failed. Returned by promise. + * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor + * @since 20 + */ + fetchFrameByTime(timeUs: number, options: AVImageQueryOptions, param: PixelMapParams): Promise<image.PixelMap>; + + /** + * Obtains the video timestamp corresponding to a video frame number. Only MP4 video files are supported. + * @param { number } index - Video frame number. + * @returns { Promise<number> } Promise used to return the timestamp, in microseconds. * @throws { BusinessError } 401 - The parameter check failed. Return by promise. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by promise. * @throws { BusinessError } 5400106 - Unsupported format. Returned by promise. @@ -604,9 +781,9 @@ declare namespace media { getTimeByFrameIndex(index: number): Promise<number>; /** - * Get frame index according to the given timestamp. - * @param { number } timeUs - Timestamp of the frame, in microseconds. - * @returns { Promise<number> } A Promise instance used to return frame index. + * Obtains the video frame number corresponding to a video timestamp. Only MP4 video files are supported. + * @param { number } timeUs - Video timestamp, in microseconds. + * @returns { Promise<number> } Promise used to return the video frame number. * @throws { BusinessError } 401 - The parameter check failed. Return by promise. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by promise. * @throws { BusinessError } 5400106 - Unsupported format. Returned by promise. @@ -624,8 +801,9 @@ declare namespace media { * @since 11 */ /** - * Release resources used for AVMetadataExtractor. - * @param { AsyncCallback<void> } callback - A callback instance used to return when release completed. + * Releases this **AVMetadataExtractor** instance. This API uses an asynchronous callback to return the result. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined**; otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by callback. * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -641,8 +819,8 @@ declare namespace media { * @since 11 */ /** - * Release resources used for AVMetadataExtractor. - * @returns { Promise<void> } A Promise instance used to return when release completed. + * Releases this **AVMetadataExtractor** instance. This API uses a promise to return the result. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by promise. * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -658,7 +836,9 @@ declare namespace media { * @since 11 */ /** - * Provides the container definition for media meta data. + * Defines the audio and video metadata. Parameters that are not declared as read-only in + * [AVRecorderConfig]{@link #AVRecorderConfig} can be used as input parameters for recording of + * [AVRecorder]{@link #AVRecorder}. * @typedef AVMetadata * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -673,8 +853,7 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the information about the album title - * of the media source. This field is readonly in current version. + * Title of the album. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -690,8 +869,7 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the information about the performer or - * artist associated with the media source. This field is readonly in current version. + * Artist of the album. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -707,8 +885,7 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the information about the artist of - * the media source. This field is readonly in current version. + * Artist of the media asset. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -724,8 +901,7 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the information about the author of - * the media source. This field is readonly in current version. + * Author of the media asset. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -741,8 +917,7 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the information about the created time of - * the media source. This field is readonly in current version. + * Time when the media asset is created. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -758,8 +933,8 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the information about the created or modified time - * with the specific date format of the media source. This field is readonly in current version. + * Time when the media asset is created. The value is in the YYYY-MM-DD HH:mm:ss format. + * This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -775,8 +950,7 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the information about the composer of - * the media source. This field is readonly in current version. + * Composer of the media asset. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -791,7 +965,7 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the playback duration of the media source. This field is readonly in current version. + * Duration of the media asset. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -807,8 +981,7 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the content type or genre of the data - * source. + * Type or genre of the media asset. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -823,7 +996,7 @@ declare namespace media { * @since 11 */ /** - * If this value exists the media contains audio content. This field is readonly in current version. + * Whether the media asset contains audio. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -838,7 +1011,7 @@ declare namespace media { * @since 11 */ /** - * If this value exists the media contains video content. This field is readonly in current version. + * Whether the media asset contains a video. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -854,8 +1027,8 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the mime type of the media source. Some - * example mime types include: "video/mp4", "audio/mp4", "audio/amr-wb". This field is readonly in current version. + * MIME type of the media asset. This parameter is read-only in the current version. + * Some example mime types include: "video/mp4", "audio/mp4", "audio/amr-wb". * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -871,8 +1044,7 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the number of tracks, such as audio, video, - * text, in the media source, such as a mp4 or 3gpp file. This field is readonly in current version. + * Number of tracks of the media asset. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -887,7 +1059,7 @@ declare namespace media { * @since 11 */ /** - * It is the audio sample rate, if available. This field is readonly in current version. + * Audio sampling rate, in Hz. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -902,7 +1074,8 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the media source title. This field is readonly in current version. + * Title of the media asset. This parameter is read-only in the current version. + * This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -917,7 +1090,7 @@ declare namespace media { * @since 11 */ /** - * If the media contains video, this key retrieves its height. This field is readonly in current version. + * Video height, in px. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -932,7 +1105,7 @@ declare namespace media { * @since 11 */ /** - * If the media contains video, this key retrieves its width. This field is readonly in current version. + * Video width, in px. This parameter is read-only in the current version. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -948,8 +1121,7 @@ declare namespace media { * @since 11 */ /** - * The metadata to retrieve the information about the video - * orientation. + * Video rotation direction, in degrees. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -958,7 +1130,7 @@ declare namespace media { videoOrientation?: string; /** - * This value exists if the video is HDR video.This field is readonly in current version. + * HDR type of the media asset. This parameter is read-only in the current version. * @type { ?HdrType } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @crossplatform @@ -967,7 +1139,7 @@ declare namespace media { hdrType?: HdrType; /** - * The geographical location info of the video. + * Geographical location of the media asset. * @type { ?Location } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @since 12 @@ -975,7 +1147,7 @@ declare namespace media { location?: Location; /** - * Custom parameter key-value map read from moov.meta.list. + * Custom key-value mappings obtained from **moov.meta.list**. * @type { ?Record<string, string> } * @syscap SystemCapability.Multimedia.Media.AVMetadataExtractor * @since 12 @@ -983,6 +1155,35 @@ declare namespace media { customInfo?: Record<string, string>; } + /** + * This interface is used to define the output image size. + * @typedef OutputSize + * @syscap SystemCapability.Multimedia.Media.AVImageGenerator + * @since 20 + */ + declare interface OutputSize { + /** + * The expected output frame image width. + * If the value is less then 0, the width will be the orginal width of the vido. + * If the value is 0 or no value is assigned, the scaling ratio will follow the specified height. + * If both width and height is not assigned, the output will be the original size of video frame. + * @type { ?number } + * @syscap SystemCapability.Multimedia.Media.AVImageGenerator + * @since 20 + */ + width?:number; + /** + * The expected output frame image height. + * If the value is less then 0, the height will be the orginal height of the vido. + * If the value is 0 or no value is assigned, the scaling ratio will follow the specified width. + * If both width and height is not assigned, the output will be the original size of video frame. + * @type { ?number } + * @syscap SystemCapability.Multimedia.Media.AVImageGenerator + * @since 20 + */ + height?: number; + } + /** * Enumerates options about the HDR Type of the video. * @enum { number } @@ -1009,15 +1210,28 @@ declare namespace media { } /** - * Generate an image from a video resource with the specific time. Before calling an AVImageGenerator method, - * you must use createAVImageGenerator() to create an AVImageGenerator instance. + * Provides APIs to obtain a thumbnail from a video. Before calling any API of **AVImageGenerator**, + * you must use [createAVImageGenerator()]{@link #createAVImageGenerator} to create an **AVImageGenerator** instance. + * * @typedef AVImageGenerator * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 */ interface AVImageGenerator { /** - * Media file descriptor. + * Media file descriptor, which specifies the data source. + * + * **Example:** + * + * There is a media file that stores continuous assets, the address offset is 0, and the byte length is 100. + * Its file descriptor is **AVFileDescriptor { fd = resourceHandle; offset = 0; length = 100; }**. + * + * **NOTE** + * - After the resource handle (FD) is transferred to an **AVImageGenerator** instance, + * do not use the resource handle to perform other read and write operations, including but not limited to + * transferring this handle to other **AVPlayer**, **AVMetadataExtractor**, **AVImageGenerator**, + * or **AVTranscoder** instance. Competition occurs when multiple **AVImageGenerator** + * use the same resource handle to read and write files at the same time, resulting in errors in obtaining data. * @type { ?AVFileDescriptor } * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 @@ -1025,14 +1239,13 @@ declare namespace media { fdSrc ?: AVFileDescriptor; /** - * It will fetch a picture at @timeUs from the given video resource. - * @param { number } timeUs - The time expected to fetch picture from the video resource. - * The unit is microsecond(us). - * @param { AVImageQueryOptions } options - The time options about the relationship - * between the given timeUs and a key frame, see @AVImageQueryOptions . - * @param { PixelMapParams } param - The output pixel map format params, see @PixelMapParams . - * @param { AsyncCallback<image.PixelMap> } callback - A callback instance used - * to return when fetchFrameByTime completed. + * Obtains a video thumbnail. This API uses an asynchronous callback to return the result. + * @param { number } timeUs - Time of the video for which a thumbnail is to be obtained, in μs. + * @param { AVImageQueryOptions } options - Relationship between the time passed in and the video frame. + * @param { PixelMapParams } param - Format parameters of the thumbnail to be obtained. + * @param { AsyncCallback<image.PixelMap> } callback - Callback used to return the result. If the operation is + * successful, **err** is **undefined** and **data** is the **PixelMap** instance obtained; otherwise, + * **err** is an error object. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by callback. * @throws { BusinessError } 5400106 - Unsupported format. Returned by callback. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator @@ -1042,15 +1255,11 @@ declare namespace media { callback: AsyncCallback<image.PixelMap>): void; /** - * It will decode the given video resource. Then fetch a picture - * at @timeUs according the given @options and @param . - * @param { number } timeUs - The time expected to fetch picture from the video resource. - * The unit is microsecond(us). - * @param { AVImageQueryOptions } options - The time options about the relationship - * between the given timeUs and a key frame, see @AVImageQueryOptions . - * @param { PixelMapParams } param - The output pixel map format params, see @PixelMapParams . - * @returns { Promise<image.PixelMap> } A Promise instance used to return the pixel map - * when fetchFrameByTime completed. + * Obtains a video thumbnail. This API uses a promise to return the result. + * @param { number } timeUs - Time of the video for which a thumbnail is to be obtained, in μs. + * @param { AVImageQueryOptions } options - Relationship between the time passed in and the video frame. + * @param { PixelMapParams } param - Format parameters of the thumbnail to be obtained. + * @returns { Promise<image.PixelMap> } Promise used to return the video thumbnail. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by promise. * @throws { BusinessError } 5400106 - Unsupported format. Returned by promise. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator @@ -1059,8 +1268,24 @@ declare namespace media { fetchFrameByTime(timeUs: number, options: AVImageQueryOptions, param: PixelMapParams): Promise<image.PixelMap>; /** - * Release resources used for AVImageGenerator. - * @param { AsyncCallback<void> } callback - A callback instance used to return when release completed. + * Supports extracting video thumbnails by proportional scaling + * @param { number } timeUs - The time expected to fetch picture from the video resource. + * The unit is microsecond(us). + * @param { AVImageQueryOptions } queryMode - Specify how to position the video frame + * @param { OutputSize } outputSize - This field is used to define the output size of frame. + * @returns { Promise<image.PixelMap> } Returns the output image object + * @throws { BusinessError } 5400102 Operation not allowed. Returned by promise. + * @throws { BusinessError } 5400106 Unsupported format. Returned by promise. + * @syscap SystemCapability.Multimedia.Media.AVImageGenerator + * @since 20 + */ + fetchScaledFrameByTime(timeUs: number, queryMode: AVImageQueryOptions, outputSize?: OutputSize): + Promise<image.PixelMap>; + + /** + * Releases this **AVImageGenerator** instance. This API uses an asynchronous callback to return the result. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined**; otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by callback. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 @@ -1068,8 +1293,8 @@ declare namespace media { release(callback: AsyncCallback<void>): void; /** - * Release resources used for AVImageGenerator. - * @returns { Promise<void> } A Promise instance used to return when release completed. + * Releases this **AVImageGenerator** instance. This API uses a promise to return the result. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operation not allowed. Returned by promise. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 @@ -1078,39 +1303,38 @@ declare namespace media { } /** - * Enumerates options about the relationship between the given timeUs and a key frame. + * Enumerates the relationship between the video frame and the time at which the video thumbnail is obtained. + * + * The time passed in for obtaining the thumbnail may be different from the time of the video frame for which + * the thumbnail is actually obtained. Therefore, you need to specify their relationship. * @enum { number } * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 */ enum AVImageQueryOptions { /** - * This option is used to fetch a key frame from the given media - * resource that is located right after or at the given time. + * The key frame at or next to the specified time is selected. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 */ AV_IMAGE_QUERY_NEXT_SYNC, /** - * This option is used to fetch a key frame from the given media - * resource that is located right before or at the given time. + * The key frame at or prior to the specified time is selected. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 */ AV_IMAGE_QUERY_PREVIOUS_SYNC, /** - * This option is used to fetch a key frame from the given media - * resource that is located closest to or at the given time. + * The key frame closest to the specified time is selected. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 */ AV_IMAGE_QUERY_CLOSEST_SYNC, /** - * This option is used to fetch a frame (maybe not keyframe) from - * the given media resource that is located closest to or at the given time. + * The frame (not necessarily a key frame) closest to the specified time is selected. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 */ @@ -1118,15 +1342,15 @@ declare namespace media { } /** - * Expected pixel map format for the fetched image from video resource. + * Defines the format parameters of the video thumbnail to be obtained. * @typedef PixelMapParams * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 */ interface PixelMapParams { /** - * Expected pixelmap's width, -1 means to keep consistent with the - * original dimensions of the given video resource. + * Width of the thumbnail. The value must be greater than 0 and less than or equal to the width of the original + * video. Otherwise, the returned thumbnail will not be scaled. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 @@ -1134,8 +1358,8 @@ declare namespace media { width?: number; /** - * Expected pixelmap's width, -1 means to keep consistent with the - * original dimensions of the given video resource. + * Height of the thumbnail. The value must be greater than 0 and less than or equal to the height of the original + * video. Otherwise, the returned thumbnail will not be scaled. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @since 12 @@ -1143,7 +1367,9 @@ declare namespace media { height?: number; /** - * Expected pixelmap's color format, see {@link PixelFormat}. + * Color format of the thumbnail. + * + * **System API**: This is a system API. * @type { ?PixelFormat } * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @systemapi @@ -1153,7 +1379,7 @@ declare namespace media { } /** - * Enumerates options about the expected color options for the fetched image. + * Enumerates the color formats supported by the video thumbnail. * @enum { number } * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @systemapi @@ -1161,7 +1387,7 @@ declare namespace media { */ enum PixelFormat { /** - * RGB_565 options. + * RGB_565. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @systemapi * @since 11 @@ -1169,7 +1395,7 @@ declare namespace media { RGB_565 = 2, /** - * RGBA_8888 options. + * RGBA_8888. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @systemapi * @since 11 @@ -1177,7 +1403,7 @@ declare namespace media { RGBA_8888 = 3, /** - * RGB_888 options. + * RGB_888. * @syscap SystemCapability.Multimedia.Media.AVImageGenerator * @systemapi * @since 11 @@ -1201,7 +1427,7 @@ declare namespace media { * @since 11 */ /** - * Enumerates ErrorCode types, return in BusinessError::code. + * Enumerates the media error codes, return in BusinessError::code. * * @enum { number } * @syscap SystemCapability.Multimedia.Media.Core @@ -1555,7 +1781,9 @@ declare namespace media { */ /** - * Describes AVPlayer states. + * Enumerates the states of the AVPlayer. Your application can proactively obtain the AVPlayer state through the + * **state** attribute or obtain the reported AVPlayer state by subscribing to the + * [stateChange]{@link #stateChange} event. * @typedef {'idle' | 'initialized' | 'prepared' | 'playing' | 'paused' | 'completed' | 'stopped' | 'released' | 'error'} * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -1565,10 +1793,10 @@ declare namespace media { type AVPlayerState = 'idle' | 'initialized' | 'prepared' | 'playing' | 'paused' | 'completed' | 'stopped' | 'released' | 'error'; /** - * Define the TrackChange Event callback. + * Describes the callback invoked for the track change event. * @typedef { function } OnTrackChangeHandler * @param { number } index - index number for change Track. - * @param { boolean } isSelected - Target index number for moving elements. + * @param { boolean } isSelected - Status of the track, that is, whether the track is selected. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 12 @@ -1576,7 +1804,7 @@ declare namespace media { type OnTrackChangeHandler = (index: number, isSelected: boolean) => void; /** - * Defines the OnStateChange callback. + * Describes the callback invoked for the AVPlayer state change event. * * @typedef { function } OnAVPlayerStateChangeHandle * @param { AVPlayerState } state - state for AVPlayer. @@ -1589,7 +1817,7 @@ declare namespace media { type OnAVPlayerStateChangeHandle = (state: AVPlayerState, reason: StateChangeReason) => void; /** - * Defines the OnBufferingUpdateHandler callback. + * Describes the callback invoked for the buffering update event. * * @typedef { function } OnBufferingUpdateHandler * @param { BufferingInfoType } infoType - define the Buffering info Type. @@ -1602,7 +1830,7 @@ declare namespace media { type OnBufferingUpdateHandler = (infoType: BufferingInfoType, value: number) => void; /** - * Defines the OnVideoSizeChangeHandler callback. + * Describes the callback invoked for the video size change event. * * @typedef { function } OnVideoSizeChangeHandler * @param { number } width - Value of video Width. @@ -1615,10 +1843,23 @@ declare namespace media { type OnVideoSizeChangeHandler = (width: number, height: number) => void; /** - * Defines the OnSuperResolutionChanged callback. + * Describes the callback used to listen for video super resolution status changes. If super resolution is enabled by + * using PlaybackStrategy, this callback is invoked to report the super resolution status changes. It is also invoked + * to report the initial status when the video starts. However, this callback is not invoked when super resolution is + * not enabled. + * + * Super resolution is automatically disabled in either of the following cases: + * + * 1.The current super resolution algorithm only works with videos that have a frame rate of 30 fps or lower. If the + * video frame rate exceeds 30 fps, or if the input frame rate exceeds the processing capability of the super + * resolution algorithm in scenarios such as fast playback, super resolution is automatically disabled. + * + * 2.The current super resolution algorithm supports input resolutions from 320 x 320 to 1920 x 1080, in px. If the + * input video resolution exceeds the range during playback, super resolution is automatically disabled. * * @typedef { function } OnSuperResolutionChanged - * @param { boolean } enabled - Super-resolution enabled or not. + * @param { boolean } enabled - Whether super resolution is enabled. The value **true** means that it is enabled, + * and **false** means the opposite. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 18 @@ -1626,7 +1867,7 @@ declare namespace media { type OnSuperResolutionChanged = (enabled: boolean) => void; /** - * SEI message. + * Describes the information of an SEI message. * * @typedef SeiMessage * @syscap SystemCapability.Multimedia.Media.Core @@ -1654,7 +1895,8 @@ declare namespace media { } /** - * Defines the OnSeiMessageHandle callback. + * Describes the handle used to obtain SEI messages. This is used when in subscriptions to SEI message events, + * and the callback returns detailed SEI information. * * @typedef { function } OnSeiMessageHandle * @param { Array<SeiMessage> } messages - SEI messages. @@ -1665,6 +1907,17 @@ declare namespace media { */ type OnSeiMessageHandle = (messages: Array<SeiMessage>, playbackPosition?: number) => void; + /** + * Defines the OnPlaybackRateDone callback. + * + * @typedef { function } OnPlaybackRateDone + * @param { number } rate - playback rate. + * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @atomicservice + * @since 20 + */ + type OnPlaybackRateDone = (rate: number) => void; + /** * Manages and plays media. Before calling an AVPlayer method, you must use createAVPlayer() * to create an AVPlayer instance. @@ -1684,7 +1937,15 @@ declare namespace media { */ /** * Manages and plays media. Before calling an AVPlayer method, you must use createAVPlayer() - * to create an AVPlayer instance. + * to create an **AVPlayer** instance. + * <br>For details about the audio and video playback demo, see Audio Playback and Video Playback. + * <br>**NOTE:**<br> + * When using the **AVPlayer** instance, you are advised to register the following callbacks to proactively + * obtain status changes: + * + * on('stateChange'): listens for AVPlayer state changes. + * + * on('error'): listens for error events. * * @typedef AVPlayer * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -1694,16 +1955,18 @@ declare namespace media { */ interface AVPlayer { /** - * Prepare audio/video playback, it will request resource for playing. - * @param { AsyncCallback<void> } callback - instance used to return when prepare completed. + * Prepare audio/video playback, it will request resource for playing. This API can be called + * only when the AVPlayer is in the initialized state. + * @param { AsyncCallback<void> } callback used to return the result when prepare completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400106 - Unsupported format. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Prepare audio/video playback, it will request resource for playing. - * @param { AsyncCallback<void> } callback - instance used to return when prepare completed. + * Prepare audio/video playback, it will request resource for playing. This API can be called + * only when the AVPlayer is in the initialized state. + * @param { AsyncCallback<void> } callback used to return the result when prepare completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400106 - Unsupported format. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -1711,8 +1974,15 @@ declare namespace media { * @since 11 */ /** - * Prepare audio/video playback, it will request resource for playing. - * @param { AsyncCallback<void> } callback - instance used to return when prepare completed. + * Prepare audio/video playback, it will request resource for playing. This API can be called only + * when the AVPlayer is in the initialized state. + * + * <p>If your application frequently switches between short videos, you can create multiple AVPlayer + * objects to prepare the next video in advance, thereby improving the switching performance. + * For details, see [Smooth Switchover Between Online Short Videos]{@link + * https://developer.huawei.com/consumer/en/doc/best-practices/bpta-smooth-switching}.</p> + * + * @param { AsyncCallback<void> } callback used to return the result when prepare completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400106 - Unsupported format. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -1723,16 +1993,18 @@ declare namespace media { prepare(callback: AsyncCallback<void>): void; /** - * Prepare audio/video playback, it will request resource for playing. - * @returns { Promise<void> } A Promise instance used to return when prepare completed. + * Prepare audio/video playback, it will request resource for playing. This API can be called + * only when the AVPlayer is in the initialized state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400106 - Unsupported format. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Prepare audio/video playback, it will request resource for playing. - * @returns { Promise<void> } A Promise instance used to return when prepare completed. + * Prepare audio/video playback, it will request resource for playing. This API can be called + * only when the AVPlayer is in the initialized state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400106 - Unsupported format. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -1740,8 +2012,15 @@ declare namespace media { * @since 11 */ /** - * Prepare audio/video playback, it will request resource for playing. - * @returns { Promise<void> } A Promise instance used to return when prepare completed. + * Prepare audio/video playback, it will request resource for playing. This API can be called + * only when the AVPlayer is in the initialized state. + * + * <p>If your application frequently switches between short videos, you can create multiple AVPlayer + * objects to prepare the next video in advance, thereby improving the switching performance. + * For details, see [Smooth Switchover Between Online Short Videos]{@link + * https://developer.huawei.com/consumer/en/doc/best-practices/bpta-smooth-switching}.</p> + * + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400106 - Unsupported format. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -1752,23 +2031,23 @@ declare namespace media { prepare(): Promise<void>; /** - * Play audio/video playback. - * @param { AsyncCallback<void> } callback - instance used to return when play completed. + * Play audio/video playback. This API can be called only when the AVPlayer is in the prepared, paused or completed state. + * @param { AsyncCallback<void> } callback used to return the result when play completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Play audio/video playback. - * @param { AsyncCallback<void> } callback - instance used to return when play completed. + * Play audio/video playback. This API can be called only when the AVPlayer is in the prepared, paused or completed state. + * @param { AsyncCallback<void> } callback used to return the result when play completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 11 */ /** - * Play audio/video playback. - * @param { AsyncCallback<void> } callback - instance used to return when play completed. + * Play audio/video playback. This API can be called only when the AVPlayer is in the prepared, paused or completed state. + * @param { AsyncCallback<void> } callback used to return the result when play completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -1778,23 +2057,23 @@ declare namespace media { play(callback: AsyncCallback<void>): void; /** - * Play audio/video playback. - * @returns { Promise<void> } A Promise instance used to return when play completed. + * Play audio/video playback. This API can be called only when the AVPlayer is in the prepared, paused or completed state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Play audio/video playback. - * @returns { Promise<void> } A Promise instance used to return when play completed. + * Play audio/video playback. This API can be called only when the AVplayer is in the prepared, paused or completed state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 11 */ /** - * Play audio/video playback. - * @returns { Promise<void> } A Promise instance used to return when play completed. + * Play audio/video playback. This API can be called only when the AVPlayer is in the prepared, paused or completed state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -1804,23 +2083,23 @@ declare namespace media { play(): Promise<void>; /** - * Pause audio/video playback. - * @param { AsyncCallback<void> } callback - instance used to return when pause completed. + * Pause audio/video playback. This API can be called only when the AVPlayer is in the playing state. + * @param { AsyncCallback<void> } callback used to return the result when pause completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Pause audio/video playback. - * @param { AsyncCallback<void> } callback - instance used to return when pause completed. + * Pause audio/video playback. This API can be called only when the AVPlayer is in the playing state. + * @param { AsyncCallback<void> } callback used to return the result when pause completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 11 */ /** - * Pause audio/video playback. - * @param { AsyncCallback<void> } callback - instance used to return when pause completed. + * Pause audio/video playback. This API can be called only when the AVPlayer is in the playing state. + * @param { AsyncCallback<void> } callback used to return the result when pause completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -1830,23 +2109,23 @@ declare namespace media { pause(callback: AsyncCallback<void>): void; /** - * Pause audio/video playback. - * @returns { Promise<void> } A Promise instance used to return when pause completed. + * Pause audio/video playback. This API can be called only when the AVPlayer is in the playing state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Pause audio/video playback. - * @returns { Promise<void> } A Promise instance used to return when pause completed. + * Pause audio/video playback. This API can be called only when the AVPlayer is in the playing state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 11 */ /** - * Pause audio/video playback. - * @returns { Promise<void> } A Promise instance used to return when pause completed. + * Pause audio/video playback. This API can be called only when the AVPlayer is in the playing state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -1856,23 +2135,26 @@ declare namespace media { pause(): Promise<void>; /** - * Stop audio/video playback. - * @param { AsyncCallback<void> } callback - instance used to return when stop completed. + * Stop audio/video playback. This API can be called only when the AVPlayer is in the prepared, + * playing, paused or completed state. + * @param { AsyncCallback<void> } callback used to return the result when stop completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Stop audio/video playback. - * @param { AsyncCallback<void> } callback - instance used to return when stop completed. + * Stop audio/video playback. This API can be called only when the AVPlayer is in the prepared, + * playing, paused or completed state. + * @param { AsyncCallback<void> } callback used to return the result when stop completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 11 */ /** - * Stop audio/video playback. - * @param { AsyncCallback<void> } callback - instance used to return when stop completed. + * Stop audio/video playback. This API can be called only when the AVPlayer is in the prepared, + * playing, paused or completed state. + * @param { AsyncCallback<void> } callback used to return the result when stop completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -1882,23 +2164,26 @@ declare namespace media { stop(callback: AsyncCallback<void>): void; /** - * Stop audio/video playback. - * @returns { Promise<void> } A Promise instance used to return when stop completed. + * Stop audio/video playback. This API can be called only when the AVPlayer is in the prepared, + * playing, paused or completed state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Stop audio/video playback. - * @returns { Promise<void> } A Promise instance used to return when stop completed. + * Stop audio/video playback. This API can be called only when the AVPlayer is in the prepared, + * playing, paused or completed state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 11 */ /** - * Stop audio/video playback. - * @returns { Promise<void> } A Promise instance used to return when stop completed. + * Stop audio/video playback. This API can be called only when the AVPlayer is in the prepared, + * playing, paused or completed state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -1908,23 +2193,26 @@ declare namespace media { stop(): Promise<void>; /** - * Reset AVPlayer, it will to idle state and can set src again. - * @param { AsyncCallback<void> } callback - instance used to return when reset completed. + * Reset AVPlayer, it will be set to idle state and can set src again. This API can be called only when + * the AVPlayer is in the initialized, prepared, playing, paused, completed, stopped or error state. + * @param { AsyncCallback<void> } callback used to return the result when reset completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Reset AVPlayer, it will to idle state and can set src again. - * @param { AsyncCallback<void> } callback - instance used to return when reset completed. + * Reset AVPlayer, it will be set to idle state and can set src again. This API can be called only when + * the AVPlayer is in the initialized, prepared, playing, paused, completed, stopped or error state. + * @param { AsyncCallback<void> } callback used to return the result when reset completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 11 */ /** - * Reset AVPlayer, it will to idle state and can set src again. - * @param { AsyncCallback<void> } callback - instance used to return when reset completed. + * Reset AVPlayer, it will be set to idle state and can set src again. This API can be called only when + * the AVPlayer is in the initialized, prepared, playing, paused, completed, stopped or error state. + * @param { AsyncCallback<void> } callback used to return the result when reset completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -1934,23 +2222,26 @@ declare namespace media { reset(callback: AsyncCallback<void>): void; /** - * Reset AVPlayer, it will to idle state and can set src again. - * @returns { Promise<void> } A Promise instance used to return when reset completed. + * Reset AVPlayer, it will be set to idle state and can set src again. This API can be called only when + * the AVPlayer is in the initialized, prepared, playing, paused, completed, stopped or error state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Reset AVPlayer, it will to idle state and can set src again. - * @returns { Promise<void> } A Promise instance used to return when reset completed. + * Reset AVPlayer, it will be set to idle state and can set src again. This API can be called only when + * the AVPlayer is in the initialized, prepared, playing, paused, completed, stopped or error state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 11 */ /** - * Reset AVPlayer, it will to idle state and can set src again. - * @returns { Promise<void> } A Promise instance used to return when reset completed. + * Reset AVPlayer, it will be set to idle state and can set src again. This API can be called only when + * the AVPlayer is in the initialized, prepared, playing, paused, completed, stopped or error state. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -1960,23 +2251,23 @@ declare namespace media { reset(): Promise<void>; /** - * Releases resources used for AVPlayer. - * @param { AsyncCallback<void> } callback - instance used to return when release completed. + * Releases resources used for AVPlayer. This API can be called when the AVPlayer is in any state except released. + * @param { AsyncCallback<void> } callback used to return the result when release completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Releases resources used for AVPlayer. - * @param { AsyncCallback<void> } callback - instance used to return when release completed. + * Releases resources used for AVPlayer. This API can be called when the AVPlayer is in any state except released. + * @param { AsyncCallback<void> } callback used to return the result when release completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 11 */ /** - * Releases resources used for AVPlayer. - * @param { AsyncCallback<void> } callback - instance used to return when release completed. + * Releases resources used for AVPlayer. This API can be called when the AVPlayer is in any state except released. + * @param { AsyncCallback<void> } callback used to return the result when release completed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -1986,23 +2277,23 @@ declare namespace media { release(callback: AsyncCallback<void>): void; /** - * Releases resources used for AVPlayer. - * @returns { Promise<void> } A Promise instance used to return when release completed. + * Releases resources used for AVPlayer. This API can be called when the AVPlayer is in any state except released. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Releases resources used for AVPlayer. - * @returns { Promise<void> } A Promise instance used to return when release completed. + * Releases resources used for AVPlayer. This API can be called when the AVPlayer is in any state except released. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 11 */ /** - * Releases resources used for AVPlayer. - * @returns { Promise<void> } A Promise instance used to return when release completed. + * Releases resources used for AVPlayer. This API can be called when the AVPlayer is in any state except released. + * @returns { Promise<void> } A Promise instance used to return the operation result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -2012,14 +2303,16 @@ declare namespace media { release(): Promise<void>; /** - * Jumps to the specified playback position. + * Jumps to the specified playback position. This API can be called only when the AVPlayer is in the prepared, + * playing, paused, or completed state. * @param { number } timeMs - Playback position to jump, should be in [0, duration]. * @param { SeekMode } mode - See @SeekMode . * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Jumps to the specified playback position. + * Jumps to the specified playback position. This API can be called only when the AVPlayer is in the prepared, + * playing, paused, or completed state. * @param { number } timeMs - Playback position to jump, should be in [0, duration]. * @param { SeekMode } mode - See @SeekMode . * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2027,9 +2320,14 @@ declare namespace media { * @since 11 */ /** - * Jumps to the specified playback position. - * @param { number } timeMs - Playback position to jump, should be in [0, duration]. - * @param { SeekMode } mode - See @SeekMode . + * Jumps to the specified playback position. This API can be called only when the AVPlayer is in the prepared, + * playing, paused, or completed state. + * You can check whether the seek operation takes effect by subscribing to the [seekDone]{@link #seekDone} event. + * This API is not supported in live mode. + * @param { number } timeMs - Playback position to jump, should be in [0, duration]. In SEEK_CONTINUOU mode, + * the value -1 can be used to indicate the end of SEEK_CONTINUOUS mode. + * @param { SeekMode } mode - See @SeekMode . The default value is **SEEK_PREV_SYNC**. + * Set this parameter only for video playback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2044,8 +2342,11 @@ declare namespace media { * @since 9 */ /** - * Sets the volume. - * @param { number } volume - Relative volume. The value ranges from 0.00 to 1.00. The value 1 indicates the maximum volume (100%). + * Sets the volume. This API can be called only when the AVPlayer is in the prepared, playing, + * paused, or completed state. + * You can check whether the setting takes effect by subscribing to the volumeChange event. + * @param { number } volume - Relative volume. The value ranges from 0.00 to 1.00. + * The value **1.00** indicates the maximum volume (100%). * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2069,8 +2370,12 @@ declare namespace media { * @since 11 */ /** - * Get all track infos in MediaDescription, should be called after data loaded callback. + * Obtains the audio and video track information. This API can be called only when the AVPlayer is in the prepared, + * playing, or paused state. To obtain information about all audio and video tracks, this API must be called after + * the data loading callback is triggered. This API uses an asynchronous callback to return the result. * @param { AsyncCallback<Array<MediaDescription>> } callback - Async callback return track info in MediaDescription. + * If the operation is successful, err is undefined and data is the MediaDescription array obtained; + * otherwise, err is an error object. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -2095,7 +2400,8 @@ declare namespace media { * @since 11 */ /** - * Get all track infos in MediaDescription, should be called after data loaded callback. + * Obtains the audio and video track information. This API can be called only when the AVPlayer is in the prepared, + * playing, or paused state. This API uses a promise to return the result. * @returns { Promise<Array<MediaDescription>> } A Promise instance used to return the track info in MediaDescription. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2106,7 +2412,8 @@ declare namespace media { getTrackDescription(): Promise<Array<MediaDescription>>; /** - * Get selected tracks, should be called after prepared state. + * Obtains the indexes of the selected audio or video tracks. This API can be called only when the AVPlayer + * is in the prepared, playing, or paused state. This API uses a promise to return the result. * @returns { Promise<Array<number>> } A Promise instance used to return selected track index. * @throws { BusinessError } 5400102 - Operation not allowed. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2116,9 +2423,11 @@ declare namespace media { getSelectedTracks(): Promise<Array<number>>; /** - * Select specific track to play. + * Selects a track when the AVPlayer is used to play a resource with multiple audio and video tracks. + * This API uses a promise to return the result. * @param { number } index - Track index returned by getTrackDescription#MD_KEY_TRACK_INDEX - * @param { SwitchMode } mode - set switchmode for track select behavior. + * @param { SwitchMode } mode - set switchmode for track select behavior. The default mode is SMOOTH. + * This parameter takes effect only for the switch of a video track for DASH streams. * @returns { Promise<void> } A Promise instance used to return when select track completed. * @throws { BusinessError } 401 - The parameter check failed. Return by promise. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. @@ -2129,7 +2438,8 @@ declare namespace media { selectTrack(index: number, mode?: SwitchMode): Promise<void>; /** - * Deselect specific track to play. + * Deselects a track when the AVPlayer is used to play a resource with multiple audio and video tracks. + * This API uses a promise to return the result. * @param { number } index : Track index returned by getTrackDescription#MD_KEY_TRACK_INDEX * @returns { Promise<void> } A Promise instance used to return when deselect track completed. * @throws { BusinessError } 401 - The parameter check failed. Return by promise. @@ -2141,9 +2451,11 @@ declare namespace media { deselectTrack(index: number): Promise<void>; /** - * Set MediaSource to AVPlayer, this interface is exclusive with fd/url/dataSrc assign. - * @param { MediaSource } src : MediaSource instance to be set to the avplayer instance. - * @param { PlaybackStrategy } strategy : Play strategy of the media source. + * Sets a source of streaming media that can be pre-downloaded, downloads the media data, and temporarily stores + * the data in the memory. For details about how to use the API, see Video Playback This API uses a promise to + * return the result. + * @param { MediaSource } src : Source of the streaming media to pre-download. + * @param { PlaybackStrategy } strategy : strategy for playing the pre-downloaded streaming media. * @returns { Promise<void> } A Promise instance used to return when setMediaSource completed. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. @@ -2155,8 +2467,10 @@ declare namespace media { setMediaSource(src: MediaSource, strategy?: PlaybackStrategy): Promise<void>; /** - * Add subtitle resource represented by FD to the player. - * @param { number } fd : The file descriptor of subtitle source from file system. + * Add subtitle resource represented by FD to the player. Currently, the external subtitle must be set after + * fdSrc of the video resource is set in an AVPlayer instance. This API uses a promise to return the result. + * @param { number } fd : The file descriptor of subtitle source from file system, which is obtained by + * calling resourceManager.getRawFd. * The caller is responsible to close the file descriptor. * @param { number } offset : The offset into the file where the data to be read, in bytes. * By default, the offset is zero. @@ -2172,7 +2486,8 @@ declare namespace media { addSubtitleFromFd(fd: number, offset?: number, length?: number): Promise<void>; /** - * Add subtitle resource represented by url to the player. After the Promise returns, + * Add subtitle resource represented by url to the player. Currently, the external subtitle must be set + * after fdSrc of the video resource is set in an AVPlayer instance. After the Promise returns, * subtitle info can be obtained by @getTrackDescription * @param { string } url : Address of external subtitle file. * @returns { Promise<void> } Promise used to return the result. @@ -2185,7 +2500,8 @@ declare namespace media { addSubtitleFromUrl(url: string): Promise<void>; /** - * Get statistic infos of current player. + * Get statistic infos of current player. This API can be called only when the AVPlayer is in the prepared, + * playing, or paused state. * @returns { Promise<PlaybackInfo> } Statistic infos of current player. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 12 @@ -2193,7 +2509,7 @@ declare namespace media { getPlaybackInfo(): Promise<PlaybackInfo>; /** - * Set playback strategy to AVPlayer. + * Set playback strategy to AVPlayer. This API can be called only when the AVPlayer is in the initialized state. * @param { PlaybackStrategy } strategy : specified strategy of the AVPlayer. * @returns { Promise<void> } A Promise instance used to return when setPlaybackStrategy completed. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types. 2. Parameter verification failed. @@ -2205,8 +2521,10 @@ declare namespace media { setPlaybackStrategy(strategy: PlaybackStrategy): Promise<void>; /** - * Mute specified media stream. - * @param { MediaType } mediaType - specified media Type, see @MediaType.. + * Mute specified media stream. This API can be called only when the AVPlayer is in the prepared, playing, + * paused, or completed state. + * @param { MediaType } mediaType - specified media Type, see [MediaType]{@link #MediaType}. + * The parameter can be set only to the audio format. * @param { boolean } muted - true for mute, false for unmute. * @returns { Promise<void> } A Promise instance used to return when setMediaMuted completed. * @throws { BusinessError } 401 - The parameter check failed. Return by promise. @@ -2218,7 +2536,9 @@ declare namespace media { setMediaMuted(mediaType: MediaType, muted: boolean): Promise<void>; /** - * Set playback start position and end position. + * Set playback start position and end position. After the setting, only the content in the specified range of + * the audio or video file is played. This API uses a promise to return the result. It can be used in the + * initialized, prepared, paused, stopped, or completed state. * @param { number } startTimeMs - Playback start position, should be in [0, duration), * -1 means that the start position is not set, * and the playback will start from 0. @@ -2238,28 +2558,32 @@ declare namespace media { setPlaybackRange(startTimeMs: number, endTimeMs: number, mode?: SeekMode) : Promise<void>; /** - * Get current playback position. - * @returns { number } return the time of current playback position - millisecond(ms) - * @throws { BusinessError } 5400102 - Operation not allowed. + * Checks whether the media source supports seek in SEEK_CONTINUOUS mode ([SeekMode]{@link #SeekMode}). + * The actual value is returned when this API is called in the prepared, playing, paused, or completed state. + * The value **false** is returned if it is called in other states. For devices that do not support the seek + * operation in SEEK_CONTINUOUS mode, false is returned. + * Should be called after {@link #prepare}. + * @returns { boolean } true: seek continuous is supported; + * false: seek continuous is not supported or the support status is uncertain. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 18 */ - getPlaybackPosition() : number; + isSeekContinuousSupported() : boolean; /** - * Check whether the media stream currently being played by the player supports seek continuous. - * Should be called after {@link #prepare}. - * @returns { boolean } true: seek continuous is supported; - * false: seek continuous is not supported or the support status is uncertain. + * Get current playback position. This API can be used in the prepared, playing, paused, or completed state. + * @returns { number } return the time of current playback position - millisecond(ms) + * @throws { BusinessError } 5400102 - Operation not allowed. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 18 */ - isSeekContinuousSupported() : boolean; + getPlaybackPosition() : number; /** - * Enable or disable super-resolution dynamically. + * Enable or disable super-resolution dynamically. This API can be called when the AVPlayer is in the + * initialized, prepared, playing, paused, completed, or stopped state. * Must enable super-resolution feature in {@link PlaybackStrategy} before calling {@link #prepare}. * See {@link #setPlaybackStrategy}, {@link #setMediaSource}. * @param { boolean } enabled - true: super-resolution enabled; false: super-resolution disabled. @@ -2275,14 +2599,17 @@ declare namespace media { setSuperResolution(enabled: boolean) : Promise<void>; /** - * Set video window size for super-resolution. + * Set video window size for super-resolution. This API can be called when the AVPlayer is in the initialized, + * prepared, playing, paused, completed, or stopped state. The input parameter values s must be in the range + * of 320 x 320 to 1920 x 1080 (in px). + * * Must enable super-resolution feature in {@link PlaybackStrategy} before calling {@link #prepare}. * See {@link #setPlaybackStrategy}, {@link #setMediaSource}. - * @param { number } width - width of the window. - * @param { number } height - height of the window. + * @param { number } width - width of the window. The value range is [320-1920], in px. + * @param { number } height - height of the window. The value range is [320-1080], in px. * @returns { Promise<void> } Promise used to return the result. - * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 401 - Parameter error. Return by promise. + * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5410003 - Super-resolution not supported. Return by promise. * @throws { BusinessError } 5410004 - Missing enable super-resolution feature in {@link PlaybackStrategy}. * Return by promise. @@ -2306,7 +2633,22 @@ declare namespace media { * @since 11 */ /** - * Media URI. Mainstream media formats are supported. + * Media URI. It can be set only when the AVPlayer is in the idle state. + * The video formats MP4, MPEG-TS, and MKV are supported. + * The audio formats M4A, AAC, MP3, OGG, WAV, FLAC, and AMR are supported. + * + * <br>**NOTE:**<br> + * To set a network playback path, you must declare the ohos.permission.INTERNET permission by following the + * instructions provided in Declaring Permissions. The error code 201 may be reported. + * + * WebM is no longer supported since API version 11. + * + * After the resource handle (FD) is transferred to an **AVPlayer** instance, do not use the resource handle to + * perform other read and write operations, including but not limited to transferring this handle to other + * **AVPlayer**, **AVMetadataExtractor**, **AVImageGenerator**, or **AVTranscoder** instance. Competition + * occurs when multiple AVPlayers use the same resource handle to read and write files at the same time, + * resulting in errors in obtaining data. + * * Network:http://xxx * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2328,7 +2670,14 @@ declare namespace media { * @since 11 */ /** - * Media file descriptor. Mainstream media formats are supported. + * Media file descriptor. It can be set only when the AVPlayer is in the idle state. + * This attribute is required when media assets of an application are continuously stored in a file. + * The video formats MP4, MPEG-TS, and MKV are supported. + * The audio formats M4A, AAC, MP3, OGG, WAV, FLAC, and AMR are supported. + * + * <br>**NOTE:**<br> + * WebM is no longer supported since API version 11. + * * @type { ?AVFileDescriptor } * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -2349,7 +2698,10 @@ declare namespace media { * @since 11 */ /** - * DataSource descriptor. Supports mainstream media formats. + * DataSource descriptor. It can be set only when the AVPlayer is in the idle state. Use scenario: An application + * starts playing a media file while the file is still being downloaded from the remote to the local host. + * The video formats MP4, MPEG-TS, and MKV are supported. + * The audio formats M4A, AAC, MP3, OGG, WAV, FLAC, and AMR are supported. * @type { ?AVDataSrcDescriptor } * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -2364,7 +2716,9 @@ declare namespace media { * @since 9 */ /** - * Whether to loop media playback. + * Whether to loop media playback. The value true means to loop playback, and false (default) means the opposite. + * It is a dynamic attribute and can be set only when the AVPlayer is in the prepared, playing, paused, + * or completed state. This setting is not supported in live mode. * @type { boolean } * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -2381,9 +2735,10 @@ declare namespace media { * @since 9 */ /** - * Describes audio interrupt mode, refer to {@link #audio.InterruptMode}. If it is not - * set, the default mode will be used. Set it before calling the {@link #play()} in the - * first time in order for the interrupt mode to become effective thereafter. + * Describes audio interrupt mode. If it is not set, the default mode will be used. The default value is + * **SHARE_MODE**. It is a dynamic attribute and can be set only when the AVPlayer is in the prepared, + * playing, paused, or completed state. Set it before calling the {@link #play()} in the first time in order + * for the interrupt mode to become effective thereafter. * @type { ?audio.InterruptMode } * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice @@ -2399,8 +2754,10 @@ declare namespace media { * @since 10 */ /** - * Describes audio renderer info, refer to {@link #audio.AudioRendererInfo}. Set it before - * calling the {@link #prepare()} in the first time in order for the audio renderer info to + * Describes audio renderer info. If the media source contains videos, the default value of usage is + * **STREAM_USAGE_MOVIE**. Otherwise, the default value of usage is **STREAM_USAGE_MUSIC**. This parameter can + * be set only when the AVPlayer is in the initialized state. + * Set it before calling the {@link #prepare()} in the first time in order for the audio renderer info to * become effective thereafter. * @type { ?audio.AudioRendererInfo } * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2415,7 +2772,9 @@ declare namespace media { * @since 10 */ /** - * Obtains the current audio effect mode, refer to {@link #audio.AudioEffectMode}. + * Obtains the current audio effect mode. The audio effect mode is a dynamic attribute and is restored + * to the default value **EFFECT_DEFAULT** when usage of audioRendererInfo is changed. + * It can be set only when the AVPlayer is in the prepared, playing, paused, or completed state. * @type { ?audio.AudioEffectMode } * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice @@ -2429,7 +2788,9 @@ declare namespace media { * @since 9 */ /** - * Current playback position. + * Current playback position, in ms. It can be used as a query parameter when the AVPlayer is in the prepared, + * playing, paused, or completed state. The value -1 indicates an invalid value. + * In live mode, -1 is returned by default. * @type { number } * @readonly * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2451,7 +2812,9 @@ declare namespace media { * @since 11 */ /** - * Playback duration, When the data source does not support seek, it returns - 1, such as a live broadcast scenario. + * Playback duration, in ms. It can be used as a query parameter when the AVPlayer is in the prepared, + * playing, paused, or completed state. + * When the data source does not support seek, it returns - 1, such as a live broadcast scenario. * @type { number } * @readonly * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2467,7 +2830,7 @@ declare namespace media { * @since 9 */ /** - * Playback state. + * Playback state. It can be used as a query parameter when the AVPlayer is in any state. * @type { AVPlayerState } * @readonly * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2489,7 +2852,11 @@ declare namespace media { * @since 11 */ /** - * Video player will use this id get a surface instance. + * Video player will use this id get a surface instance. This parameter can be set when the AVPlayer + * is in the initialized state. It can be set again when the AVPlayer is in the prepared, playing, paused, + * completed, or stopped state, in the prerequisite that the video window ID has been set in the initialized state. + * After the new setting is performed, the video is played in the new window. It is used to render the window + * for video playback and therefore is not required in audio-only playback scenarios. * @type { ?string } * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -2504,7 +2871,8 @@ declare namespace media { * @since 9 */ /** - * Video width, valid after prepared. + * Video width, in px, valid after prepared. It can be used as a query parameter when the AVPlayer is in the + * prepared, playing, paused, or completed state. * @type { number } * @readonly * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2515,12 +2883,13 @@ declare namespace media { readonly width: number; /** - * Video height, valid after prepared. + * Video height, in px, valid after prepared. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Video height, valid after prepared. + * Video height, in px, valid after prepared. It can be used as a query parameter when the AVPlayer is in the + * prepared, playing, paused, or completed state. * @type { number } * @readonly * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2554,7 +2923,9 @@ declare namespace media { * @since 9 */ /** - * Set payback speed. + * Set payback speed. This API can be called only when the AVPlayer is in the prepared, playing, paused, + * or completed state. You can check whether the setting takes effect by subscribing to the speedDone event. + * This API is not supported in live mode. * @param { PlaybackSpeed } speed - playback speed, see @PlaybackSpeed . * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform @@ -2563,6 +2934,18 @@ declare namespace media { */ setSpeed(speed: PlaybackSpeed): void; + /** + * Set playback rate. + * Supported states: prepared/playing/paused/completed. + * @param { number } rate - playback rate, valid range is 0.125 ~ 4. + * @throws { BusinessError } 5400108 - The parameter check failed, parameter value out of range. + * @throws { BusinessError } 5400102 - Operation not allowed, if invalid state or live stream. + * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @atomicservice + * @since 20 + */ + setPlaybackRate(rate: number): void; + /** * select a specified bitrate to playback, only valid for HLS protocol network stream. By default, the * player will select the appropriate bitrate according to the network connection speed. The @@ -2574,12 +2957,17 @@ declare namespace media { * @since 9 */ /** - * select a specified bitrate to playback, only valid for HLS protocol network stream. By default, the + * Select a specified bitrate to playback, only valid for HLS protocol network stream. By default, the * player will select the appropriate bitrate according to the network connection speed. The * available bitrate list reported by {@link #on('availableBitrates')}. Set it to select * a specified bitrate. If the specified bitrate is not in the list of available bitrate, the player - * will select the minimal and closest one from the available bitrate list. - * @param { number } bitrate - the playback bitrate must be expressed in bits per second. + * will select the minimal and closest one from the available bitrate list.This API can be called + * only when the AVPlayer is in the prepared, playing, paused, or completed state. + * @param { number } bitrate - Bit rate to set. Obtain the available bit rates of the current HLS/DASH + * stream by subscribing to the {@link #on('availableBitrates')} event. If the bit rate to set is not in + * the list of the available bit rates, the AVPlayer selects from the list the bit rate that is closed + * to the bit rate to set. If the length of the available bit rate list obtained through the event is 0, + * no bit rate can be set and the bitrateDone callback will not be triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2597,9 +2985,12 @@ declare namespace media { * @since 11 */ /** - * Set decryption session to codec module. + * Set decryption session to codec module. When receiving a mediaKeySystemInfoUpdate event, create the related + * configuration and set the decryption configuration based on the information in the reported event. + * Otherwise, the playback fails. * @param { drm.MediaKeySession } mediaKeySession - Handle of MediaKeySession to decrypt encrypted media. - * @param { boolean } secureVideoPath - Secure video path required or not. + * @param { boolean } secureVideoPath - Secure video path required or not. The value true means that a secure + * video channel is selected, and false means that a non-secure video channel is selected. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -2632,8 +3023,10 @@ declare namespace media { */ /** * Register listens for mediaKeySystemInfoUpdate events. - * @param { 'mediaKeySystemInfoUpdate' } type - Type of the event to listen for. - * @param { Callback<Array<drm.MediaKeySystemInfo>> } callback - Callback used to listen for the mediaKeySystemInfoUpdate event. + * @param { 'mediaKeySystemInfoUpdate' } type - Event type, which is **'mediaKeySystemInfoUpdate'** in this case. + * This event is triggered when the copyright protection information of the media asset being played changes. + * @param { Callback<Array<drm.MediaKeySystemInfo>> } callback - Callback invoked when the event is triggered. + * It reports a **MediaKeySystemInfo** array. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 12 @@ -2674,8 +3067,9 @@ declare namespace media { */ /** * Register listens for media playback stateChange event. - * @param { 'stateChange' } type - Type of the playback event to listen for. - * @param { OnAVPlayerStateChangeHandle } callback - Callback used to listen for the playback stateChange event. + * @param { 'stateChange' } type - Event type, which is **'stateChange'** in this case. + * This event can be triggered by both user operations and the system. + * @param { OnAVPlayerStateChangeHandle } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2698,7 +3092,7 @@ declare namespace media { /** * Unregister listens for media playback stateChange event. * @param { 'stateChange' } type - Type of the playback event to listen for. - * @param { OnAVPlayerStateChangeHandle } callback - Callback used to listen for stateChange event + * @param { OnAVPlayerStateChangeHandle } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2708,14 +3102,15 @@ declare namespace media { /** * Register listens for media playback volumeChange event. * @param { 'volumeChange' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback volume event. + * @param { Callback<number> } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 9 */ /** - * Register listens for media playback volumeChange event. - * @param { 'volumeChange' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback volume event. + * Subscribes to the event to check whether the volume is successfully set. + * @param { 'volumeChange' } type - This event is triggered each time **setVolume()** is called. + * @param { Callback<number> } callback - Callback invoked when the event is triggered. + * It reports the effective volume. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2729,13 +3124,24 @@ declare namespace media { * @since 9 */ /** - * Unregister listens for media playback volumeChange event. + * Unsubscribes from the event that checks whether the volume is successfully set. * @param { 'volumeChange' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback volume event. + * @param { Callback<number> } callback - Callback invoked when the event is triggered. + * It reports the effective volume. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @since 12 */ + /** + * Unsubscribes from the event that checks whether the volume is successfully set. + * @param { 'volumeChange' } type - Type of the playback event to listen for. + * @param { Callback<number> } callback - Callback invoked when the event is triggered. + * It reports the effective volume. + * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @crossplatform + * @atomicservice + * @since 20 + */ off(type: 'volumeChange', callback?: Callback<number>): void; /** * Register listens for media playback endOfStream event. @@ -2745,9 +3151,12 @@ declare namespace media { * @since 9 */ /** - * Register listens for media playback endOfStream event. - * @param { 'endOfStream' } type - Type of the playback event to listen for. - * @param { Callback<void> } callback - Callback used to listen for the playback end of stream. + * Subscribes to the event that indicates the end of the stream being played. If {@link #loop} = true is set, + * the AVPlayer seeks to the beginning of the stream and plays the stream again. If loop is not set, + * the completed state is reported through the {@link #stateChange} event. + * @param { 'endOfStream' } type - Type of the playback event to listen for. This event is triggered + * when the AVPlayer finishes playing the media asset. + * @param { Callback<void> } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2761,13 +3170,22 @@ declare namespace media { * @since 9 */ /** - * Unregister listens for media playback endOfStream event. + * Unsubscribes from the event that indicates the end of the stream being played. * @param { 'endOfStream' } type - Type of the playback event to listen for. - * @param { Callback<void> } callback - Callback used to listen for the playback end of stream. + * @param { Callback<void> } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @since 12 */ + /** + * Unregister listens for media playback endOfStream event. + * @param { 'endOfStream' } type - Type of the playback event to listen for. + * @param { Callback<void> } [callback] - Callback used to listen for the playback end of stream. + * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @crossplatform + * @atomicservice + * @since 20 + */ off(type: 'endOfStream', callback?: Callback<void>): void; /** * Register listens for media playback seekDone event. @@ -2785,9 +3203,15 @@ declare namespace media { * @since 11 */ /** - * Register listens for media playback seekDone event. - * @param { 'seekDone' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback seekDone event. + * Subscribes to the event to check whether the seek operation takes effect. + * @param { 'seekDone' } type - Type of the playback event to listen for. This event is triggered each time + * **seek()** is called, except in SEEK_CONTINUOUS mode. + * @param { Callback<number> } callback - Callback invoked when the event is triggered. + * It reports the time position requested by the user. + * + * For video playback, {@link #SeekMode} may cause the actual position to be different from that requested by + * the user.The exact position can be obtained from the currentTime attribute. The time in this callback + * only means that the requested seek operation is complete. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2808,9 +3232,14 @@ declare namespace media { * @since 11 */ /** - * Unregister listens for media playback seekDone event. + * Unsubscribes from the event that checks whether the seek operation takes effect. * @param { 'seekDone' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback seekDone event. + * @param { Callback<number> } callback - Callback invoked when the event is triggered. + * It reports the time position requested by the user. + * + * For video playback, SeekMode may cause the actual position to be different from that requested by the user. + * The exact position can be obtained from the currentTime attribute. The time in this callback only means + * that the requested seek operation is complete. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2825,9 +3254,11 @@ declare namespace media { * @since 9 */ /** - * Register listens for media playback speedDone event. + * Subscribes to the event to check whether the playback speed is successfully set. * @param { 'speedDone' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback speedDone event. + * This event is triggered each time **setSpeed()** is called. + * @param { Callback<number> } callback - Callback used to return the result. When the call of + * setSpeed is successful, the effective speed mode is reported. For details, see {@link #PlaybackSpeed}. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2841,14 +3272,44 @@ declare namespace media { * @since 9 */ /** - * Unregister listens for media playback speedDone event. + * Unsubscribes from the event that checks whether the playback speed is successfully set. * @param { 'speedDone' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback speedDone event. + * @param { Callback<number> } callback - Callback used to return the result. When the call of + * setSpeed is successful, the effective speed mode is reported. For details, see {@link #PlaybackSpeed}. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @since 12 */ + /** + * Unsubscribes from the event that checks whether the playback speed is successfully set. + * @param { 'speedDone' } type - Type of the playback event to listen for. + * @param { Callback<number> } callback - Callback used to return the result. When the call of + * setSpeed is successful, the effective speed mode is reported. For details, see {@link #PlaybackSpeed}. + * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @crossplatform + * @atomicservice + * @since 20 + */ off(type: 'speedDone', callback?: Callback<number>): void; + /** + * Register listens for media playbackRateDone event. + * @param { 'playbackRateDone' } type - Type of the playback event to listen for. + * @param { OnPlaybackRateDone } callback - Callback used to listen for the playbackRateDone event. + * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @atomicservice + * @since 20 + */ + on(type: 'playbackRateDone', callback: OnPlaybackRateDone): void; + + /** + * Unregister listens for media playbackRateDone event. + * @param { 'playbackRateDone' } type - Type of the playback event to listen for. + * @param { OnPlaybackRateDone } callback - Callback used to listen for the playbackRateDone event. + * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @atomicservice + * @since 20 + */ + off(type: 'playbackRateDone', callback?: OnPlaybackRateDone): void; /** * Register listens for media playback setBitrateDone event. * @param { 'bitrateDone' } type - Type of the playback event to listen for. @@ -2857,9 +3318,11 @@ declare namespace media { * @since 9 */ /** - * Register listens for media playback setBitrateDone event. + * Subscribes to the event to check whether the bit rate is successfully set. * @param { 'bitrateDone' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback setBitrateDone event. + * This event is triggered each time **setBitrate()** is called. + * @param { Callback<number> } callback - Callback invoked when the event is triggered. + * It reports the effective bit rate. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 12 @@ -2872,12 +3335,22 @@ declare namespace media { * @since 9 */ /** - * Unregister listens for media playback setBitrateDone event. + * Unsubscribes from the event that checks whether the bit rate is successfully set. * @param { 'bitrateDone' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback setBitrateDone event. + * @param { Callback<number> } callback - Callback invoked when the event is triggered. + * It reports the effective bit rate. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 12 */ + /** + * Unsubscribes from the event that checks whether the bit rate is successfully set. + * @param { 'bitrateDone' } type - Type of the playback event to listen for. + * @param { Callback<number> } callback - Callback invoked when the event is triggered. + * It reports the effective bit rate. + * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @atomicservice + * @since 20 + */ off(type: 'bitrateDone', callback?: Callback<number>): void; /** * Register listens for media playback timeUpdate event. @@ -2895,9 +3368,11 @@ declare namespace media { * @since 11 */ /** - * Register listens for media playback timeUpdate event. + * Subscribes to playback position changes. It is used to refresh the current position of the progress bar. + * By default, this event is reported every 100 ms. However, it is reported immediately upon + * a successful seek operation. * @param { 'timeUpdate' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback timeUpdate event. + * @param { Callback<number> } callback - Callback used to return the current time. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2918,9 +3393,9 @@ declare namespace media { * @since 11 */ /** - * Unregister listens for media playback timeUpdate event. + * Unsubscribes from playback position changes. * @param { 'timeUpdate' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback timeUpdate event. + * @param { Callback<number> } callback - Callback used to return the current time. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2935,9 +3410,11 @@ declare namespace media { * @since 9 */ /** - * Register listens for media playback durationUpdate event. + * Subscribes to media asset duration changes. It is used to refresh the length of the progress bar. By + * default, this event is reported once in the prepared state. However, it can be repeatedly reported for + * special streams that trigger duration changes. The **'durationUpdate'** event is not supported in live mode. * @param { 'durationUpdate' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback durationUpdate event. + * @param { Callback<number> } callback - Callback used to return the resource duration. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2951,13 +3428,22 @@ declare namespace media { * @since 9 */ /** - * Unregister listens for media playback durationUpdate event. + * Unsubscribes from media asset duration changes. * @param { 'durationUpdate' } type - Type of the playback event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the playback durationUpdate event. + * @param { Callback<number> } callback - Callback used to return the resource duration. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @since 12 */ + /** + * Unsubscribes from media asset duration changes. + * @param { 'durationUpdate' } type - Type of the playback event to listen for. + * @param { Callback<number> } callback - Callback used to return the resource duration. + * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @crossplatform + * @atomicservice + * @since 20 + */ off(type: 'durationUpdate', callback?: Callback<number>): void; /** @@ -2969,10 +3455,11 @@ declare namespace media { * @since 9 */ /** - * Register listens for video playback buffering events. + * Subscribes to audio and video buffer changes. This subscription is supported only in network + * playback scenarios. * @param { 'bufferingUpdate' } type - Type of the playback buffering update event to listen for. - * @param { OnBufferingUpdateHandler } callback - Callback used to listen for the buffering update event, - * return BufferingInfoType and the value. + * @param { OnBufferingUpdateHandler } callback - Callback invoked when the event is triggered, + * and return BufferingInfoType and the value. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -2988,10 +3475,10 @@ declare namespace media { * @since 9 */ /** - * Unregister listens for video playback buffering events. + * Unsubscribes from audio and video buffer changes. * @param { 'bufferingUpdate' } type - Type of the playback buffering update event to listen for. - * @param { OnBufferingUpdateHandler } callback - Callback used to listen for the buffering update event, - * return BufferingInfoType and the value. + * @param { OnBufferingUpdateHandler } callback - Callback invoked when the event is triggered., + * and return BufferingInfoType and the value. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -3006,9 +3493,12 @@ declare namespace media { * @since 9 */ /** - * Register listens for start render video frame events. + * Subscribes to the event that indicates rendering starts for the first frame. This subscription is + * supported only in video playback scenarios. This event only means that the playback service sends + * the first frame to the display module. The actual rendering effect depends on the rendering performance + * of the display service. * @param { 'startRenderFrame' } type - Type of the playback event to listen for. - * @param { Callback<void> } callback - Callback used to listen for the playback event return . + * @param { Callback<void> } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 12 @@ -3021,12 +3511,20 @@ declare namespace media { * @since 9 */ /** - * Unregister listens for start render video frame events. + * Unsubscribes from the event that indicates rendering starts for the first frame. * @param { 'startRenderFrame' } type - Type of the playback event to listen for. - * @param { Callback<void> } callback - Callback used to listen for the playback event return . + * @param { Callback<void> } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 12 */ + /** + * Unregister listens for start render video frame events. + * @param { 'startRenderFrame' } type - Type of the playback event to listen for. + * @param { Callback<void> } [callback] - Callback used to listen for the playback event return . + * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @atomicservice + * @since 20 + */ off(type: 'startRenderFrame', callback?: Callback<void>): void; /** @@ -3037,9 +3535,11 @@ declare namespace media { * @since 9 */ /** - * Register listens for video size change event. + * Subscribes to video size (width and height) changes. This subscription is supported only in video playback + * scenarios. By default, this event is reported only once in the prepared state. However, it is also reported + * upon resolution changes in the case of HLS streams. * @param { 'videoSizeChange' } type - Type of the playback event to listen for. - * @param { OnVideoSizeChangeHandler } callback - Callback used to listen for the playback event return video size. + * @param { OnVideoSizeChangeHandler } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -3053,9 +3553,9 @@ declare namespace media { * @since 9 */ /** - * Unregister listens for video size change event. + * Unsubscribes from video size changes. * @param { 'videoSizeChange' } type - Type of the playback event to listen for. - * @param { OnVideoSizeChangeHandler } callback - Callback used to listen for the playback event return video size. + * @param { OnVideoSizeChangeHandler } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -3070,7 +3570,9 @@ declare namespace media { * @since 9 */ /** - * Register listens for audio interrupt event, refer to {@link #audio.InterruptEvent} + * Register listens for audio interrupt event, refer to {@link #audio.InterruptEvent}. + * The application needs to perform corresponding processing based on different audio interruption events. + * For details, see Handling Audio Interruption Events. * @param { 'audioInterrupt' } type - Type of the playback event to listen for. * @param { Callback<audio.InterruptEvent> } callback - Callback used to listen for the playback event return audio interrupt info. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -3107,7 +3609,9 @@ declare namespace media { * Register listens for available bitrate list collect completed events for HLS protocol stream playback. * This event will be reported after the {@link #prepare} called. * @param { 'availableBitrates' } type - Type of the playback event to listen for. + * This event is triggered once after the AVPlayer switches to the prepared state. * @param { Callback<Array<number>> } callback - Callback used to listen for the playback event return available bitrate list. + * It returns an array that holds the available bit rates. If the array length is 0, no bit rate can be set. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -3185,8 +3689,11 @@ declare namespace media { * @since 12 */ /** - * Register listens for playback error events. - * @param { 'error' } type - Type of the playback error event to listen for. + * Subscribes to AVPlayer errors. This event is used only for error prompt and does not require the user to stop + * playback control. If AVPlayerState is also switched to error, call {@link #reset()} or {@link #release()} + * to exit the playback. + * @param { 'error' } type - Event type, which is **'error'** in this case. This event can be triggered by + * both user operations and the system. * @param { ErrorCallback } callback - Callback used to listen for the playback error event. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - The parameter check failed. @@ -3227,9 +3734,9 @@ declare namespace media { * @since 11 */ /** - * Unregister listens for playback error events. - * @param { 'error' } type - Type of the playback error event to listen for. - * @param { ErrorCallback } callback - Callback used to listen for the playback error event. + * Unsubscribes from AVPlayer errors. + * @param { 'error' } type - Event type, which is **'error'** in this case. + * @param { ErrorCallback } callback - Callback used to return the error code ID and error message. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @crossplatform * @atomicservice @@ -3248,10 +3755,15 @@ declare namespace media { * @since 11 */ /** - * Subscribes output device change event callback. - * The event is triggered when output device change for this stream. + * Subscribes to audio stream output device changes and reasons. This API uses an asynchronous callback + * to return the result. + * + * When subscribing to this event, you are advised to implement the player behavior when the device is + * connected or disconnected by referring to Responding to Audio Output Device Changes. * @param { 'audioOutputDeviceChangeWithInfo' } type - Type of the event to listen for. - * @param { Callback<audio.AudioStreamDeviceChangeInfo> } callback - Callback used to listen device change event. + * The event is triggered when the output device is changed. + * @param { Callback<audio.AudioStreamDeviceChangeInfo> } callback - Callback used to return the output device + * descriptor of the current audio stream and the change reason. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -3270,9 +3782,11 @@ declare namespace media { * @since 11 */ /** - * Unsubscribes output device change event callback. + * Unsubscribes from audio stream output device changes and reasons. This API uses an asynchronous callback + * to return the result. * @param { 'audioOutputDeviceChangeWithInfo' } type - Type of the event to listen for. - * @param { Callback<audio.AudioStreamDeviceChangeInfo> } callback - Callback used to listen device change event. + * @param { Callback<audio.AudioStreamDeviceChangeInfo> } callback - Callback used to return the output device + * descriptor of the current audio stream and the change reason. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -3282,9 +3796,12 @@ declare namespace media { off(type: 'audioOutputDeviceChangeWithInfo', callback?: Callback<audio.AudioStreamDeviceChangeInfo>): void; /** - * Subscribes listener for subtitle update event. + * Subscribes to subtitle update events. When external subtitles exist, the system notifies the application + * through the subscribed-to callback. An application can subscribe to only one subtitle update event. When + * the application initiates multiple subscriptions to this event, the last subscription is applied. * @param { 'subtitleUpdate' } type - Type of the event to listen for. - * @param { Callback<SubtitleInfo> } callback - Callback used to listen subtitle update event. + * The event is triggered when the external subtitle is updated. + * @param { Callback<SubtitleInfo> } callback - Callback invoked when the subtitle is updated. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 12 @@ -3292,9 +3809,10 @@ declare namespace media { on(type: 'subtitleUpdate', callback: Callback<SubtitleInfo>): void /** - * Unsubscribes listener for subtitle update event. + * Unsubscribes from subtitle update events. * @param { 'subtitleUpdate' } type - Type of the event to listen for. - * @param { Callback<SubtitleInfo> } callback - Callback used to listen subtitle update event. + * @param { Callback<SubtitleInfo> } callback - Callback that has been registered to listen for subtitle + * update events. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 12 @@ -3302,9 +3820,12 @@ declare namespace media { off(type: 'subtitleUpdate', callback?: Callback<SubtitleInfo>): void /** - * Subscribes listener for track change event. + * Subscribes to track change events. When the track changes, the system notifies the application through + * the subscribed-to callback. An application can subscribe to only one track change event. When the + * application initiates multiple subscriptions to this event, the last subscription is applied. * @param { 'trackChange' } type - Type of the event to listen for. - * @param { OnTrackChangeHandler } callback - Callback used to listen track change event. + * The event is triggered when the track changes. + * @param { OnTrackChangeHandler } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 12 @@ -3312,9 +3833,10 @@ declare namespace media { on(type: 'trackChange', callback: OnTrackChangeHandler): void /** - * Unsubscribes listener for track change event. + * Unsubscribes from track change events. * @param { 'trackChange' } type - Type of the event to listen for. - * @param { OnTrackChangeHandler } callback - Callback used to listen track change event. + * The event is triggered when the track changes. + * @param { OnTrackChangeHandler } callback - Callback that has been registered to listen for track changes. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 12 @@ -3322,9 +3844,12 @@ declare namespace media { off(type: 'trackChange', callback?: OnTrackChangeHandler): void /** - * Subscribes listener for trackinfo update event. + * Subscribes to track information update events. When the track information is updated, the system notifies the + * application through the subscribed-to callback. An application can subscribe to only one track change event. + * When the application initiates multiple subscriptions to this event, the last subscription is applied. * @param { 'trackInfoUpdate' } type - Type of the event to listen for. - * @param { Callback<Array<MediaDescription>> } callback - Callback used to listen trackinfo update event. + * The event is triggered when the track information is updated. + * @param { Callback<Array<MediaDescription>> } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 12 @@ -3332,9 +3857,11 @@ declare namespace media { on(type: 'trackInfoUpdate', callback: Callback<Array<MediaDescription>>): void /** - * Unsubscribes listener for trackinfo update event. + * Unsubscribes from track information update events. * @param { 'trackInfoUpdate' } type - Type of the event to listen for. - * @param { Callback<Array<MediaDescription>> } callback - Callback used to listen trackinfo update event. + * The event is triggered when the track information is updated. + * @param { Callback<Array<MediaDescription>> } callback - Callback that has been registered to listen for track + * information updates. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 12 @@ -3342,31 +3869,37 @@ declare namespace media { off(type: 'trackInfoUpdate', callback?: Callback<Array<MediaDescription>>): void /** - * Subscrips listener for audio playback amplitude update event. - * In each event, an array of amplitude is reported, large index indicates closer to current time. + * Subscribes to update events of the maximum audio level value, which is periodically reported when audio + * resources are played. * @param { 'amplitudeUpdate' } type - Type of the event to listen for. - * @param { Callback<Array<number>> } callback - Callback used to listen amplitude update event. + * The event is triggered when the amplitude changes. + * @param { Callback<Array<number>> } callback - Callback invoked when the event is triggered. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 13 */ on(type: 'amplitudeUpdate', callback: Callback<Array<number>>): void /** - * UnSubscrips listener for audio playback amplitude update event + * Unsubscribes from update events of the maximum amplitude. * @param { 'amplitudeUpdate' } type - Type of the event to listen for. - * @param { Callback<Array<number>> } callback - Callback used to listen amplitude update event. + * The event is triggered when the amplitude changes. + * @param { Callback<Array<number>> } callback - Callback that has been registered to listen for amplitude updates. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @since 13 */ off(type: 'amplitudeUpdate', callback?: Callback<Array<number>>): void /** - * Subscribes listener for video SEI message event, only for live video streaming. - * Call before the {@link #prepare}, repeated invocation overwrites the last subscribed callback and payload types. - * + * Subscribes to events indicating that a Supplemental Enhancement Information (SEI) message is received. This + * applies only to HTTP-FLV live streaming and is triggered when SEI messages are present in the video stream. + * You must initiate the subscription before calling {@link #prepare}. If you initiate multiple subscriptions + * to this event, the last subscription is applied. * @param { 'seiMessageReceived' } type - Type of the playback event to listen for. - * @param { Array<number> } payloadTypes - The subscribed payload types of the SEI message. - * @param { OnSeiMessageHandle } callback - Callback to listen SEI message event with subscribed payload types. + * The event is triggered when an SEI message is received. + * @param { Array<number> } payloadTypes - Array of subscribed-to payload types of SEI messages. Currently, + * only payloadType = 5 is supported. + * @param { OnSeiMessageHandle } callback - Callback used to listen for SEI message events and receive the + * subscribed-to payload types. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 18 @@ -3374,12 +3907,14 @@ declare namespace media { on(type: 'seiMessageReceived', payloadTypes: Array<number>, callback: OnSeiMessageHandle): void; /** - * Unsubscribes listener for video SEI message event. + * Unsubscribes from the events indicating that an SEI message is received. * @param { 'seiMessageReceived' } type - Type of the playback event to listen for. + * The event is triggered when an SEI message is received. * @param { Array<number> } payloadTypes - The payload types of the SEI message. * Null means unsubscribe all payload types. - * @param { OnSeiMessageHandle } callback - Callback to listen SEI message event with subscribed payload types. + * @param { OnSeiMessageHandle } callback - Callback used to listen for SEI message events and receive the + * subscribed-to payload types. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice * @since 18 @@ -3387,8 +3922,9 @@ declare namespace media { off(type: 'seiMessageReceived', payloadTypes?: Array<number>, callback?: OnSeiMessageHandle): void; /** - * Subscribes listener for super-resolution status changed event. + * Subscribes to the event indicating that super resolution is enabled or disabled. * @param { 'superResolutionChanged' } type - Type of the super-resolution event to listen for. + * The event is triggered when super resolution is enabled or disabled. * @param { OnSuperResolutionChanged } callback - Callback used to listen for the super-resolution changed event. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice @@ -3397,8 +3933,9 @@ declare namespace media { on(type:'superResolutionChanged', callback: OnSuperResolutionChanged): void; /** - * Unsubscribes listener for super-resolution status changed event. + * Unsubscribes from the event indicating that super resolution is enabled or disabled. * @param { 'superResolutionChanged' } type - Type of the super-resolution event to listen for. + * The event is triggered when super resolution is enabled or disabled. * @param { OnSuperResolutionChanged } callback - Callback used to listen for the super-resolution changed event. * @syscap SystemCapability.Multimedia.Media.AVPlayer * @atomicservice @@ -3645,10 +4182,16 @@ declare namespace media { /** * Defines the SourceOpenCallback function which is called by the service. client should process the incoming request * and return the unique handle to the open resource. + * <br>**NOTE:**<br> + * The client must return the handle immediately after processing the request. + * * @typedef { function } SourceOpenCallback - * @param { MediaSourceLoadingRequest } request - open request parameters. + * @param { MediaSourceLoadingRequest } request - Parameters for the resource open request, including detailed + * information about the requested resource and the data push method. * @returns { number } - return the handle of current resource open request. - * values less than or equal to zero mean failed. + * A value greater than 0 means the request is successful. + * A value less than or equal to 0 means it fails. + * - The handle for the request object is unique. * - client should return immediately. * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice @@ -3659,10 +4202,12 @@ declare namespace media { /** * Defines the SourceReadCallback function which is called by the service. Client should record the read requests * and push the data through the {@link #response} method of the request object when there is sufficient data. + * <br>**NOTE:**<br> + * The client must return the handle immediately after processing the request. * @typedef { function } SourceReadCallback - * @param { number } uuid - label the resource handle. - * @param { number } requestedOffset - current media data position from the start of the source. - * @param { number } requestedLength - current request length. + * @param { number } uuid - ID for the resource handle. + * @param { number } requestedOffset - Offset of the current media data relative to the start of the resource. + * @param { number } requestedLength - Length of the current request. * - -1 means reaching the end of the source, need to inform the player * of the end of the push through the {@link #finishLoading} method. * @returns { void } - client should return immediately. @@ -3674,8 +4219,10 @@ declare namespace media { /** * Defines the SourceCloseCallback function which is called by the service. Client should release related resources. + * <br>**NOTE:**<br> + * The client must return the handle immediately after processing the request. * @typedef { function } SourceCloseCallback - * @param { number } uuid - label the resource handle. + * @param { number } uuid - ID for the resource handle. * @returns { void } - client should return immediately. * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice @@ -3684,7 +4231,7 @@ declare namespace media { type SourceCloseCallback = (uuid: number) => void; /** - * Media data loader. User can customize media data loader. + * Defines a media data loader, which needs to be implemented by applications. * @typedef MediaSourceLoader * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice @@ -3803,7 +4350,8 @@ declare namespace media { url: string; /** - * Headers attached to network request while player request data. Client should set headers to the http request. + * HTTP request header. If the header exists, the application should set the header information in + * the HTTP request when downloading data. * @type { ?Record<string, string> } * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice @@ -3813,12 +4361,12 @@ declare namespace media { /** * The interface for application used to send requested data to AVPlayer. - * @param { number } uuid - label the resource handle. - * @param { number } offset - current media data position from start of the source. - * @param { ArrayBuffer } buffer - media data buffer which respond to the player. + * @param { number } uuid - ID for the resource handle. + * @param { number } offset - Offset of the current media data relative to the start of the resource. + * @param { ArrayBuffer } buffer - Media data sent to the player. * @returns { number } - accept bytes for current read. The value less than zero means failed. - * - 2, means player need current data any more, the client should stop current read process. - * - 3, means player buffer is full, the client should wait for next read. + * -2, means player need current data any more, the client should stop current read process. + * -3, means player buffer is full, the client should wait for next read. * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice * @since 18 @@ -3828,8 +4376,10 @@ declare namespace media { /** * The interface for application used to send respond header to AVPlayer * should be called before calling the {@link #respondData()} for the first time. - * @param { number } uuid - label the resource handle. + * @param { number } uuid - ID for the resource handle. * @param { ?Record<string, string> } [header] - header info in the http response. + * The application can intersect the header fields with the fields supported by the underlying layer for + * parsing or directly pass in all corresponding header information. * @param { ?string } [redirectUrl] - redirect url from the http response if exist. * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice @@ -3838,9 +4388,11 @@ declare namespace media { respondHeader(uuid: number, header?: Record<string, string>, redirectUrl?: string): void; /** - * The interface for application used to notify player current request state. - * @param { number } uuid - label the resource handle. - * @param { LoadingRequestError } state - the request state. + * Notifies the player of the current request status. After pushing all the data for a single resource, the + * application should send the **LOADING_ERROR_SUCCESS** state to notify the player that the resource push is + * complete. + * @param { number } uuid - ID for the resource handle. + * @param { LoadingRequestError } state - Request status. * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice * @since 18 @@ -3853,7 +4405,7 @@ declare namespace media { * @typedef MediaStream * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice - * @since 18 + * @since 19 */ interface MediaStream { /** @@ -3861,7 +4413,7 @@ declare namespace media { * @type { string } * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice - * @since 18 + * @since 19 */ url: string; @@ -3870,7 +4422,7 @@ declare namespace media { * @type { number } * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice - * @since 18 + * @since 19 */ width: number; @@ -3879,7 +4431,7 @@ declare namespace media { * @type { number } * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice - * @since 18 + * @since 19 */ height: number; @@ -3888,7 +4440,7 @@ declare namespace media { * @type { number } * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice - * @since 18 + * @since 19 */ bitrate: number; } @@ -3963,7 +4515,12 @@ declare namespace media { */ preferredHeight?: number; /** - * Choose a preferred buffer duration. + * Chooses a preferred buffer duration. + * + * <p>The preferred buffer duration in the playback policy, is used to set the buffer size. For details, + * see [Online Video Frame Freezing Optimization Practice]{@link + * https://developer.huawei.com/consumer/cn/doc/best-practices/bpta-online-video-playback-lags-practice}.</p> + * * @type { ?number } * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice @@ -4011,7 +4568,7 @@ declare namespace media { * @type { ?boolean } * @syscap SystemCapability.Multimedia.Media.Core * @atomicservice - * @since 18 + * @since 17 */ showFirstFrameOnPrepare?: boolean; @@ -4043,6 +4600,17 @@ declare namespace media { * @since 18 */ thresholdForAutoQuickPlay?: number + + /** + * Indicates whether to keep the decoder working when closing the media, + * which is used to facilitate quick opening of the media. Currently only supports video + * @type { ?boolean } The default value is false, which means that the corresponding decoder + * will be stopped when the media is closed to reduce power consumption. + * @syscap SystemCapability.Multimedia.Media.Core + * @atomicservice + * @since 20 + */ + keepDecodingOnMute?: boolean; } /** @@ -4164,8 +4732,9 @@ declare namespace media { * @since 11 */ /** - * DataSource descriptor. The caller needs to ensure that the fileSize and - * callback is valid. + * Defines the descriptor of an audio and video file, which is used in DataSource playback mode. + * Use scenario: An application can create a playback instance and start playback before it finishes + * downloading the audio and video resources. * * @typedef AVDataSrcDescriptor * @syscap SystemCapability.Multimedia.Media.AVPlayer @@ -4236,7 +4805,8 @@ declare namespace media { } /** - * Provides subtitle information. + * Provides subtitle information. When a subtitle update event is subscribed to, the information about the + * external subtitle is returned through a callback. * Can be synchronized to the time reported by AVPlayer#timeUpdate event * * @typedef SubtitleInfo @@ -4509,19 +5079,19 @@ declare namespace media { } /** - * Describes media recorder states. - * @typedef {'idle' | 'prepared' | 'started' | 'paused' | 'stopped' | 'released' | 'error'} - * @syscap SystemCapability.Multimedia.Media.AVRecorder - * @since 9 - */ - /** - * Describes media recorder states. - * @typedef {'idle' | 'prepared' | 'started' | 'paused' | 'stopped' | 'released' | 'error'} - * @syscap SystemCapability.Multimedia.Media.AVRecorder - * @crossplatform - * @atomicservice - * @since 12 - */ + * Describes media recorder states. + * @typedef {'idle' | 'prepared' | 'started' | 'paused' | 'stopped' | 'released' | 'error'} + * @syscap SystemCapability.Multimedia.Media.AVRecorder + * @since 9 + */ + /** + * Describes media recorder states. + * @typedef {'idle' | 'prepared' | 'started' | 'paused' | 'stopped' | 'released' | 'error'} + * @syscap SystemCapability.Multimedia.Media.AVRecorder + * @crossplatform + * @atomicservice + * @since 12 + */ type AVRecorderState = 'idle' | 'prepared' | 'started' | 'paused' | 'stopped' | 'released' | 'error'; /** @@ -4530,7 +5100,7 @@ declare namespace media { * @typedef { function } OnAVRecorderStateChangeHandler * @param { AVRecorderState } state - state value for AVRecorder. * @param { StateChangeReason } reason - reason for state change. - * @syscap SystemCapability.Multimedia.Media.AVPlayer + * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @atomicservice * @since 12 @@ -4570,18 +5140,52 @@ declare namespace media { * @since 9 */ /** - * Prepares for recording. + * Sets audio and video recording parameters. This API uses an asynchronous callback to return the result. * @permission ohos.permission.MICROPHONE - * @param { AVRecorderConfig } config - Recording parameters. - * @param { AsyncCallback<void> } callback - A callback instance used to return when prepare completed. + * @param { AVRecorderConfig } config - Audio and video recording parameters to set. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined**; otherwise, **err** is an error object. * @throws { BusinessError } 201 - Permission denied. Return by callback. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. 3.Parameter verification failed. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 5400102 - Operate not permit. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * // Configure the parameters based on those supported by the hardware device. + * let avRecorderProfile: media.AVRecorderProfile = { + * audioBitrate : 48000, + * audioChannels : 2, + * audioCodec : media.CodecMimeType.AUDIO_AAC, + * audioSampleRate : 48000, + * fileFormat : media.ContainerFormatType.CFT_MPEG_4, + * videoBitrate : 2000000, + * videoCodec : media.CodecMimeType.VIDEO_AVC, + * videoFrameWidth : 640, + * videoFrameHeight : 480, + * videoFrameRate : 30 + * } + * let avRecorderConfig: media.AVRecorderConfig = { + * audioSourceType : media.AudioSourceType.AUDIO_SOURCE_TYPE_MIC, + * videoSourceType : media.VideoSourceType.VIDEO_SOURCE_TYPE_SURFACE_YUV, + * profile : avRecorderProfile, + * url : 'fd://', // Before passing in an FD to this parameter, the file must be created by the caller and granted with the read and write permissions. Example value: fd://45. + * rotation: 0, // The value can be 0, 90, 180, or 270. If any other value is used, prepare() reports an error. + * location : { latitude : 30, longitude : 130 } + * } + * + * avRecorder.prepare(avRecorderConfig, (err: BusinessError) => { + * if (err) { + * console.error('Failed to prepare and error is ' + err.message); + * } else { + * console.info('Succeeded in preparing'); + * } + * }) */ prepare(config: AVRecorderConfig, callback: AsyncCallback<void>): void; @@ -4598,8 +5202,9 @@ declare namespace media { * @since 9 */ /** - * Prepares for recording. + * Sets audio and video recording parameters. This API uses a promise to return the result. * @permission ohos.permission.MICROPHONE + * This permission is required only if audio recording is involved. * @param { AVRecorderConfig } config - Recording parameters. * @returns { Promise<void> } A Promise instance used to return when prepare completed. * @throws { BusinessError } 201 - Permission denied. Return by promise. @@ -4611,50 +5216,142 @@ declare namespace media { * @crossplatform * @atomicservice * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * // Configure the parameters based on those supported by the hardware device. + * let avRecorderProfile: media.AVRecorderProfile = { + * audioBitrate : 48000, + * audioChannels : 2, + * audioCodec : media.CodecMimeType.AUDIO_AAC, + * audioSampleRate : 48000, + * fileFormat : media.ContainerFormatType.CFT_MPEG_4, + * videoBitrate : 2000000, + * videoCodec : media.CodecMimeType.VIDEO_AVC, + * videoFrameWidth : 640, + * videoFrameHeight : 480, + * videoFrameRate : 30 + * } + * let avRecorderConfig: media.AVRecorderConfig = { + * audioSourceType : media.AudioSourceType.AUDIO_SOURCE_TYPE_MIC, + * videoSourceType : media.VideoSourceType.VIDEO_SOURCE_TYPE_SURFACE_YUV, + * profile : avRecorderProfile, + * url : 'fd://', // Before passing in an FD to this parameter, the file must be created by the caller and granted with the read and write permissions. Example value: fd://45. + * rotation: 0, // The value can be 0, 90, 180, or 270. If any other value is used, prepare() reports an error. + * location : { latitude : 30, longitude : 130 } + * } + * + * avRecorder.prepare(avRecorderConfig).then(() => { + * console.info('Succeeded in preparing'); + * }).catch((err: BusinessError) => { + * console.error('Failed to prepare and catch error is ' + err.message); + * }); */ prepare(config: AVRecorderConfig): Promise<void>; /** - * Get AVRecorderConfig.it must be called after prepare. - * @param { AsyncCallback<AVRecorderConfig> } callback - Callback used to return the input config in AVRecorderConfig. + * Obtains the real-time configuration of this AVRecorder. + * This API uses an asynchronous callback to return the result. + * This API can be called only after prepare() is called. + * @param { AsyncCallback<AVRecorderConfig> } callback - Callback used to return the result. + * If the operation is successful, **err** is **undefined** and **data** is the real-time configuration obtained; + * otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operate not permit. Return by callback. * @throws { BusinessError } 5400103 - IO error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * let avConfig: media.AVRecorderConfig; + * + * avRecorder.getAVRecorderConfig((err: BusinessError, config: media.AVRecorderConfig) => { + * if (err) { + * console.error('Failed to get avConfig and error is ' + err.message); + * } else { + * console.info('Succeeded in getting AVRecorderConfig'); + * avConfig = config; + * } + * }); */ getAVRecorderConfig(callback: AsyncCallback<AVRecorderConfig>): void; /** - * Get AVRecorderConfig.it must be called after prepare. - * @returns { Promise<AVRecorderConfig> } A Promise instance used to return the input config in AVRecorderConfig. + * Obtains the real-time configuration of this AVRecorder. This API uses a promise to return the result. + * This API can be called only after prepare() is called. + * @returns { Promise<AVRecorderConfig> } Promise used to return the real-time configuration. * @throws { BusinessError } 5400102 - Operate not permit. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * let avConfig: media.AVRecorderConfig; + * + * avRecorder.getAVRecorderConfig().then((config: media.AVRecorderConfig) => { + * console.info('Succeeded in getting AVRecorderConfig'); + * avConfig = config; + * }).catch((err: BusinessError) => { + * console.error('Failed to get AVRecorderConfig and catch error is ' + err.message); + * }); */ getAVRecorderConfig(): Promise<AVRecorderConfig>; /** - * Get input surface.it must be called between prepare completed and start. - * @param { AsyncCallback<string> } callback - Callback used to return the input surface id in string. + * Obtains the surface required for recording. This API uses an asynchronous callback to return the result. + * The caller obtains the **surfaceBuffer** from this surface and fills in the corresponding video data. + * + * Note that the video data must carry the timestamp (in ns) and buffer size, and the start time of the timestamp + * must be based on the system startup time. + * + * This API can be called only after the prepare() API is called. + * @param { AsyncCallback<string> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined** and **data** is the surface ID obtained; otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operate not permit. Return by callback. * @throws { BusinessError } 5400103 - IO error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 9 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * let surfaceID: string; // The surfaceID is transferred to the camera API to create a videoOutput instance. + * + * avRecorder.getInputSurface((err: BusinessError, surfaceId: string) => { + * if (err) { + * console.error('Failed to do getInputSurface and error is ' + err.message); + * } else { + * console.info('Succeeded in doing getInputSurface'); + * surfaceID = surfaceId; + * } + * }); */ getInputSurface(callback: AsyncCallback<string>): void; /** - * Get input surface. it must be called between prepare completed and start. - * @returns { Promise<string> } A Promise instance used to return the input surface id in string. + * Obtains the surface required for recording. This API uses a promise to return the result. The caller obtains the **surfaceBuffer** from this surface and fills in the corresponding video data. + * + * Note that the video data must carry the timestamp (in ns) and buffer size, and the start time of the timestamp must be based on the system startup time. + * + * This API can be called only after the prepare() API is called. + * @returns { Promise<string> } Promise used to return the result. * @throws { BusinessError } 5400102 - Operate not permit. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 9 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * let surfaceID: string; // The surfaceID is transferred to the camera API to create a videoOutput instance. + * + * avRecorder.getInputSurface().then((surfaceId: string) => { + * console.info('Succeeded in getting InputSurface'); + * surfaceID = surfaceId; + * }).catch((err: BusinessError) => { + * console.error('Failed to get InputSurface and catch error is ' + err.message); + * }); */ getInputSurface(): Promise<string>; @@ -4675,39 +5372,114 @@ declare namespace media { getInputMetaSurface(type: MetaSourceType): Promise<string>; /** - * Check if the avrecorder has watermark capability. - * @returns { Promise<boolean> } A Promise instance used to return true or false when the function is finished. + * Checks whether the device supports the hardware digital watermark. This API uses a promise to return the result. + * + * This API can be called after the prepare(), start(), or paused() event is triggered. + * @returns { Promise<boolean> } Promise used to return the check result. The value **true** means that + * the device supports the hardware digital watermark, and **false** means the opposite. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @systemapi * @since 13 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.isWatermarkSupported().then((isWatermarkSupported: boolean) => { + * console.info(`Succeeded in get, isWatermarkSupported: ${isWatermarkSupported}`); + * }).catch((error: BusinessError) => { + * console.error(`Failed to get and catch error is ${error.message}`); + * }); */ isWatermarkSupported(): Promise<boolean>; /** - * Set watermark image to recorder. + * Sets a watermark for the AVRecorder. This API uses a promise to return the result. + * + * This API can be called only after the prepare() event is triggered and before + * the start() event is triggered. * @param { image.PixelMap } watermark : Watermark image. * @param { WatermarkConfig } config : Configures of the watermark. - * @returns { Promise<void> } A Promise instance used to return when the function is finished. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - The parameter check failed. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @systemapi * @since 13 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * import { image } from '@kit.ImageKit'; + * + * let watermark: image.PixelMap|undefined = undefined; // need data. + * let watermarkConfig: media.WatermarkConfig = { top: 100, left: 100 } + * + * avRecorder.setWatermark(watermark, watermarkConfig).then(() => { + * console.info('Succeeded in setWatermark'); + * }).catch((error: BusinessError) => { + * console.error(`Failed to setWatermark and catch error is ${error.message}`); + * }); */ setWatermark(watermark: image.PixelMap, config: WatermarkConfig): Promise<void> + + /** + * Sets custom metadata for the recording file of AVRecorder. + * + * This API can be called only after the prepare() event is successfully triggered and + * before the stop() API is called. + * Can be called after start, before stop. + * @param { Record<string, string> } metadata - Tag and value of the metadata in key-value pairs. + * <br>- The first string is the tag.<br>- The second string is the value. + * @throws { BusinessError } 202 - Not System App. + * @syscap SystemCapability.Multimedia.Media.AVRecorder + * @systemapi + * @since 19 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * let meta : Record<string, string> = { + * 'com.openharmony.userdefine':'10', + * 'com.openharmony.userdefine2':'20' + * }; + * + * avRecorder.setMetadata(meta); + */ + setMetadata(metadata: Record<string, string>): void; + /** - * Update the video orientation before recorder start. - * @param { number } rotation - Rotation angle, should be [0, 90, 180, 270]. + * Updates the video rotation angle. This API uses a promise to return the result. + * + * This API can be called only after the prepare() event is triggered and before the start() API is called. + * @param { number } rotation - Rotation angle, which can only be 0, 90, 180, or 270 degrees. * @returns { Promise<void> } A Promise instance used to return when the function is finished. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. 3.Parameter verification failed. + * 2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * let rotation = 90 + * + * avRecorder.updateRotation(rotation).then(() => { + * console.info('Succeeded in updateRotation'); + * }).catch((err: BusinessError) => { + * console.error('Failed to updateRotation and catch error is ' + err.message); + * }); */ updateRotation(rotation: number): Promise<void>; + /** + * Set if recorder want to be muted instead of interrupted. only available before prepare state + * @param { boolean } muteWhenInterrupted - use {@code true} if application want its stream to be muted + * instead of interrupted. + * @returns { Promise<void> } A Promise instance used to return when the function is finished. + * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. + * @throws { BusinessError } 5400105 - Service died. Return by promise. + * @syscap SystemCapability.Multimedia.Media.AVRecorder + * @since 20 + */ + setWillMuteWhenInterrupted(muteWhenInterrupted: boolean): Promise<void>; + /** * Start AVRecorder, it will to started state. * @param { AsyncCallback<void> } callback - A callback instance used to return when start completed. @@ -4718,14 +5490,28 @@ declare namespace media { * @since 9 */ /** - * Start AVRecorder, it will to started state. - * @param { AsyncCallback<void> } callback - A callback instance used to return when start completed. + * Starts recording. This API uses an asynchronous callback to return the result. + * + * For audio-only recording, this API can be called only after the prepare() API is called. + * For video-only recording, this API can be called only after the getInputSurface() API is called. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined**; otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operate not permit. Return by callback. * @throws { BusinessError } 5400103 - IO error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.start((err: BusinessError) => { + * if (err) { + * console.error('Failed to start AVRecorder and error is ' + err.message); + * } else { + * console.info('Succeeded in starting AVRecorder'); + * } + * }); */ start(callback: AsyncCallback<void>): void; @@ -4739,8 +5525,11 @@ declare namespace media { * @since 9 */ /** - * Start AVRecorder, it will to started state. - * @returns { Promise<void> } A Promise instance used to return when start completed. + * Starts recording. This API uses a promise to return the result. + * + * For audio-only recording, this API can be called only after the prepare() API is called. + * For video-only recording, this API can be called only after the getInputSurface() API is called. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operate not permit. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -4748,6 +5537,14 @@ declare namespace media { * @crossplatform * @atomicservice * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.start().then(() => { + * console.info('Succeeded in starting AVRecorder'); + * }).catch((err: BusinessError) => { + * console.error('Failed to start AVRecorder and catch error is ' + err.message); + * }); */ start(): Promise<void>; @@ -4761,14 +5558,27 @@ declare namespace media { * @since 9 */ /** - * Start AVRecorder, it will to paused state. - * @param { AsyncCallback<void> } callback - A callback instance used to return when pause completed. + * Pauses recording. This API uses an asynchronous callback to return the result. + * + * This API can be called only after the start() API is called. You can call resume() to resume recording. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined**; otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operate not permit. Return by callback. * @throws { BusinessError } 5400103 - IO error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.pause((err: BusinessError) => { + * if (err) { + * console.error('Failed to pause AVRecorder and error is ' + err.message); + * } else { + * console.info('Succeeded in pausing'); + * } + * }); */ pause(callback: AsyncCallback<void>): void; @@ -4782,8 +5592,10 @@ declare namespace media { * @since 9 */ /** - * Start AVRecorder, it will to paused state. - * @returns { Promise<void> } A Promise instance used to return when pause completed. + * Pauses recording. This API uses a promise to return the result. + * + * This API can be called only after the start()API is called. You can call resume() to resume recording. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operate not permit. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -4791,6 +5603,14 @@ declare namespace media { * @crossplatform * @atomicservice * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.pause().then(() => { + * console.info('Succeeded in pausing'); + * }).catch((err: BusinessError) => { + * console.error('Failed to pause AVRecorder and catch error is ' + err.message); + * }); */ pause(): Promise<void>; @@ -4804,14 +5624,27 @@ declare namespace media { * @since 9 */ /** - * Resume AVRecorder, it will to started state. - * @param { AsyncCallback<void> } callback - A callback instance used to return when resume completed. + * Resumes recording. This API uses an asynchronous callback to return the result. + * + * This API can be called only after the pause() API is called. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined**; otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operate not permit. Return by callback. * @throws { BusinessError } 5400103 - IO error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.resume((err: BusinessError) => { + * if (err) { + * console.error('Failed to resume AVRecorder and error is ' + err.message); + * } else { + * console.info('Succeeded in resuming AVRecorder'); + * } + * }); */ resume(callback: AsyncCallback<void>): void; @@ -4825,8 +5658,10 @@ declare namespace media { * @since 9 */ /** - * Resume AVRecorder, it will to started state. - * @returns { Promise<void> } A Promise instance used to return when resume completed. + * Resumes recording. This API uses a promise to return the result. + * + * This API can be called only after the pause() API is called. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operate not permit. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -4834,6 +5669,14 @@ declare namespace media { * @crossplatform * @atomicservice * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.resume().then(() => { + * console.info('Succeeded in resuming AVRecorder'); + * }).catch((err: BusinessError) => { + * console.error('Failed to resume AVRecorder failed and catch error is ' + err.message); + * }); */ resume(): Promise<void>; @@ -4847,14 +5690,30 @@ declare namespace media { * @since 9 */ /** - * Stop AVRecorder, it will to stopped state. - * @param { AsyncCallback<void> } callback - A callback instance used to return when stop completed. + * Stops recording. This API uses an asynchronous callback to return the result. + * + * This API can be called only after the start() or pause() API is called. + * + * For audio-only recording, you can call prepare() again for re-recording. + * For video-only recording or audio and video recording, you can call prepare() and getInputSurface() again for re-recording. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined**; otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operate not permit. Return by callback. * @throws { BusinessError } 5400103 - IO error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.stop((err: BusinessError) => { + * if (err) { + * console.error('Failed to stop AVRecorder and error is ' + err.message); + * } else { + * console.info('Succeeded in stopping AVRecorder'); + * } + * }); */ stop(callback: AsyncCallback<void>): void; @@ -4868,8 +5727,14 @@ declare namespace media { * @since 9 */ /** - * Stop AVRecorder, it will to stopped state. - * @returns { Promise<void> } A Promise instance used to return when stop completed. + * Stops recording. This API uses a promise to return the result. + * + * This API can be called only after the start() or pause() API is called. + * + * For audio-only recording, you can call prepare() again for re-recording. + * For video-only recording or audio and video recording, + * you can call prepare() getInputSurface() again for re-recording. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operate not permit. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -4877,6 +5742,14 @@ declare namespace media { * @crossplatform * @atomicservice * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.stop().then(() => { + * console.info('Succeeded in stopping AVRecorder'); + * }).catch((err: BusinessError) => { + * console.error('Failed to stop AVRecorder and catch error is ' + err.message); + * }); */ stop(): Promise<void>; @@ -4889,13 +5762,28 @@ declare namespace media { * @since 9 */ /** - * Reset AVRecorder, it will to idle state. - * @param { AsyncCallback<void> } callback - A callback instance used to return when reset completed. + * Resets audio and video recording. This API uses an asynchronous callback to return the result. + * + * For audio-only recording, you can call prepare() again for re-recording. + * For video-only recording or audio and video recording, + * you can call prepare() and getInputSurface() again for re-recording. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined**; otherwise, **err** is an error object. * @throws { BusinessError } 5400103 - IO error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.reset((err: BusinessError) => { + * if (err) { + * console.error('Failed to reset AVRecorder and error is ' + err.message); + * } else { + * console.info('Succeeded in resetting AVRecorder'); + * } + * }); */ reset(callback: AsyncCallback<void>): void; @@ -4908,13 +5796,25 @@ declare namespace media { * @since 9 */ /** - * Reset AVRecorder, it will to idle state. - * @returns { Promise<void> } A Promise instance used to return when reset completed. + * Resets audio and video recording. This API uses a promise to return the result. + * + * For audio-only recording, you can call prepare() again for re-recording. + * For video-only recording or audio and video recording, + * you can call prepare() and getInputSurface() again for re-recording. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.reset().then(() => { + * console.info('Succeeded in resetting AVRecorder'); + * }).catch((err: BusinessError) => { + * console.error('Failed to reset and catch error is ' + err.message); + * }); */ reset(): Promise<void>; @@ -4926,12 +5826,25 @@ declare namespace media { * @since 9 */ /** - * Releases resources used for AVRecorder, it will to released state. - * @param { AsyncCallback<void> } callback - A callback instance used to return when release completed. + * Releases the audio and video recording resources. This API uses an asynchronous callback to return the result. + * + * After the resources are released, you can no longer perform any operation on the **AVRecorder** instance. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined**; otherwise, **err** is an error object. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.release((err: BusinessError) => { + * if (err) { + * console.error('Failed to release AVRecorder and error is ' + err.message); + * } else { + * console.info('Succeeded in releasing AVRecorder'); + * } + * }); */ release(callback: AsyncCallback<void>): void; @@ -4943,75 +5856,177 @@ declare namespace media { * @since 9 */ /** - * Releases resources used for AVRecorder, it will to released state. - * @returns { Promise<void> } A Promise instance used to return when release completed. + * Releases the audio and video recording resources. This API uses a promise to return the result. + * + * After the resources are released, you can no longer perform any operation on the **AVRecorder** instance. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @atomicservice * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avRecorder.release().then(() => { + * console.info('Succeeded in releasing AVRecorder'); + * }).catch((err: BusinessError) => { + * console.error('Failed to release AVRecorder and catch error is ' + err.message); + * }); */ release(): Promise<void>; /** - * Get AudioCapturer info from current AVRecorder. - * @param { AsyncCallback<audio.AudioCapturerChangeInfo> } callback - A callback used to return AudioCapturerChangeInfo. + * Obtains the information about the current audio capturer. + * This API uses an asynchronous callback to return the result. + * + * This API can be called only after the **prepare()** API is called. + * If this API is called after **stop()** is successfully called, an error is reported. + * @param { AsyncCallback<audio.AudioCapturerChangeInfo> } callback - Callback used to return the result. + * If the operation is successful, **err** is **undefined** and **data** is the + * **audio.AudioCapturerChangeInfo** object obtained; otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operation not allowed. * @throws { BusinessError } 5400103 - I/O error. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 + * @example + * import { audio } from '@kit.AudioKit'; + * + * let currentCapturerInfo: audio.AudioCapturerChangeInfo; + * + * avRecorder.getCurrentAudioCapturerInfo((err: BusinessError, capturerInfo: audio.AudioCapturerChangeInfo) => { + * if (err) { + * console.error('Failed to get CurrentAudioCapturerInfo and error is ' + err.message); + * } else { + * console.info('Succeeded in getting CurrentAudioCapturerInfo'); + * currentCapturerInfo = capturerInfo; + * } + * }); */ getCurrentAudioCapturerInfo(callback: AsyncCallback<audio.AudioCapturerChangeInfo>): void; /** - * Get AudioCapturer info from current AVRecorder. - * @returns { Promise<audio.AudioCapturerChangeInfo> } A Promise instance used to return AudioCapturerChangeInfo. + * Obtains the information about the current audio capturer. This API uses a promise to return the result. + * + * This API can be called only after the **prepare()** API is called. + * If this API is called after **stop()** is successfully called, an error is reported. + * @returns { Promise<audio.AudioCapturerChangeInfo> } Promise used to return the audio capturer information. * @throws { BusinessError } 5400102 - Operation not allowed. * @throws { BusinessError } 5400103 - I/O error. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 + * @example + * import { audio } from '@kit.AudioKit'; + * + * let currentCapturerInfo: audio.AudioCapturerChangeInfo; + * + * avRecorder.getCurrentAudioCapturerInfo().then((capturerInfo: audio.AudioCapturerChangeInfo) => { + * console.info('Succeeded in getting CurrentAudioCapturerInfo'); + * currentCapturerInfo = capturerInfo; + * }).catch((err: BusinessError) => { + * console.error('Failed to get CurrentAudioCapturerInfo and catch error is ' + err.message); + * }); */ getCurrentAudioCapturerInfo(): Promise<audio.AudioCapturerChangeInfo>; /** - * Get max audio capturer amplitude from current AVRecorder. - * @param { AsyncCallback<number> } callback - A callback used to return max Amplitude. + * Obtains the maximum amplitude of the current audio capturer. + * This API uses an asynchronous callback to return the result. + * + * This API can be called only after the **prepare()** API is called. + * If this API is called after **stop()** is successfully called, an error is reported. + * + * The return value is the maximum amplitude within the duration from the time the maximum amplitude + * is obtained last time to the current time. For example, if you have obtained the maximum amplitude at 1s + * and you call this API again at 2s, then the return value is the maximum amplitude + * within the duration from 1s to 2s. + * @param { AsyncCallback<number> } callback - Callback used to return the result. If the operation is successful, + * **err** is **undefined** and **data** is the maximum amplitude obtained; otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operation not allowed. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 + * @example + * let maxAmplitude: number; + * + * avRecorder.getAudioCapturerMaxAmplitude((err: BusinessError, amplitude: number) => { + * if (err) { + * console.error('Failed to get AudioCapturerMaxAmplitude and error is ' + err.message); + * } else { + * console.info('Succeeded in getting AudioCapturerMaxAmplitude'); + * maxAmplitude = amplitude; + * } + * }); */ getAudioCapturerMaxAmplitude(callback: AsyncCallback<number>): void; /** - * Get max audio capturer amplitude from current AVRecorder. - * @returns { Promise<number> } A Promise instance used to return max Amplitude. + * Obtains the maximum amplitude of the current audio capturer. This API uses a promise to return the result. + * + * This API can be called only after the **prepare()** API is called. + * If this API is called after **stop()** is successfully called, an error is reported. + * + * The return value is the maximum amplitude within the duration from the time the maximum amplitude + * is obtained last time to the current time. For example, if you have obtained the maximum amplitude + * at 1s and you call this API again at 2s, then the return value is the maximum amplitude + * within the duration from 1s to 2s. + * @returns { Promise<number> } Promise used to return the maximum amplitude obtained. * @throws { BusinessError } 5400102 - Operation not allowed. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 + * @example + * let maxAmplitude: number; + * + * avRecorder.getAudioCapturerMaxAmplitude().then((amplitude: number) => { + * console.info('Succeeded in getting AudioCapturerMaxAmplitude'); + * maxAmplitude = amplitude; + * }).catch((err: BusinessError) => { + * console.error('Failed to get AudioCapturerMaxAmplitude and catch error is ' + err.message); + * }); */ getAudioCapturerMaxAmplitude(): Promise<number>; /** - * Get available encoder and encoder info for AVRecorder. - * @param { AsyncCallback<Array<EncoderInfo>> } callback - A callback used to return available encoder info. + * Obtains available encoders. This API uses an asynchronous callback to return the result. + * @param { AsyncCallback<Array<EncoderInfo>> } callback - Callback used to return the result. + * If the operation is successful, **err** is **undefined** and **data** is the available encoders obtained; otherwise, **err** is an error object. * @throws { BusinessError } 5400102 - Operation not allowed. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 + * @example + * let encoderInfo: media.EncoderInfo; + * + * avRecorder.getAvailableEncoder((err: BusinessError, info: media.EncoderInfo[]) => { + * if (err) { + * console.error('Failed to get AvailableEncoder and error is ' + err.message); + * } else { + * console.info('Succeeded in getting AvailableEncoder'); + * encoderInfo = info[0]; + * } + * }); */ getAvailableEncoder(callback: AsyncCallback<Array<EncoderInfo>>): void; /** - * Get available encoder and encoder info for AVRecorder. - * @returns { Promise<Array<EncoderInfo>> } A Promise instance used to return available encoder info. + * Obtains available encoders. This API uses an asynchronous callback to return the result. + * @returns { Promise<Array<EncoderInfo>> } Promise used to return the information about the available encoders. * @throws { BusinessError } 5400102 - Operation not allowed. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 + * @example + * let encoderInfo: media.EncoderInfo; + * + * avRecorder.getAvailableEncoder().then((info: media.EncoderInfo[]) => { + * console.info('Succeeded in getting AvailableEncoder'); + * encoderInfo = info[0]; + * }).catch((err: BusinessError) => { + * console.error('Failed to get AvailableEncoder and catch error is ' + err.message); + * }); */ getAvailableEncoder(): Promise<Array<EncoderInfo>>; @@ -5021,7 +6036,7 @@ declare namespace media { * @since 9 */ /** - * Recorder state. + * Enumerates the AVRecorder states. You can obtain the state through the **state** attribute. * @type { AVRecorderState } * @readonly * @syscap SystemCapability.Multimedia.Media.AVRecorder @@ -5032,20 +6047,29 @@ declare namespace media { readonly state: AVRecorderState; /** - * Listens for recording audioCapturerChange events. - * @param { 'audioCapturerChange' } type - Type of the audioCapturerChange event to listen for. - * @param { Callback<audio.AudioCapturerChangeInfo> } callback - Callback used to listen device change event. + * Subscribes to audio capturer configuration changes. Any configuration change triggers the callback that + * returns the entire configuration information. + * + * When the application initiates multiple subscriptions to this event, the last subscription is applied. + * @param { 'audioCapturerChange' } type - Event type, which is **'audioCapturerChange'** in this case. + * @param { Callback<audio.AudioCapturerChangeInfo> } callback - Callback used to return the entire configuration + * information about the audio capturer. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. 3.Parameter verification failed. + * 2. Incorrect parameter types. 3.Parameter verification failed. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 */ on(type: 'audioCapturerChange', callback: Callback<audio.AudioCapturerChangeInfo>): void; /** - * Listens for photo asset events. - * @param { 'photoAssetAvailable' } type - Type of the recording event to listen for. - * @param { Callback<photoAccessHelper.PhotoAsset> } callback - Callback used to listen for the photo asset event. + * Subscribes to media asset callback events. When FileGenerationMode is used during media file creation, + * the PhotoAsset object is called back to the application after the stop operation is complete. + * + * When the application initiates multiple subscriptions to this event, the last subscription is applied. + * @param { 'photoAssetAvailable' } type - Event type, which is **'photoAssetAvailable'** in this case. + * The event is triggered when a photo asset is available. + * @param { Callback<photoAccessHelper.PhotoAsset> } callback - Callback used to return the + * **PhotoAsset** object corresponding to the resource file created by the system. * @throws { BusinessError } 5400103 - IO error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder @@ -5062,9 +6086,11 @@ declare namespace media { * @since 9 */ /** - * Listens for recording stateChange events. - * @param { 'stateChange' } type - Type of the recording event to listen for. - * @param { OnAVRecorderStateChangeHandler } callback - Callback used to listen for the recorder stateChange event. + * Subscribes to AVRecorder state changes. An application can subscribe to only one AVRecorder state change event. + * When the application initiates multiple subscriptions to this event, the last subscription is applied. + * @param { 'stateChange' } type - Event type, which is **'stateChange'** in this case. + * This event can be triggered by both user operations and the system. + * @param { OnAVRecorderStateChangeHandler } callback - Callback invoked when the event is triggered. * @throws { BusinessError } 5400103 - IO error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.AVRecorder @@ -5108,9 +6134,14 @@ declare namespace media { * @since 11 */ /** - * Listens for recording error events. - * @param { 'error' } type - Type of the recording error event to listen for. - * @param { ErrorCallback } callback - Callback used to listen for the recorder error event. + * Subscribes to AVRecorder errors. This event is used only for error prompt and does not require the user to + * stop recording control. If the AVRecorderState is also switched to error, call reset() or release() + * to exit the recording. + * + * An application can subscribe to only one AVRecorder error event. When the application initiates multiple subscriptions to this event, the last subscription is applied. + * @param { 'error' } type - Event type, which is **'error'** in this case. + * This event is triggered when an error occurs during recording. + * @param { ErrorCallback } callback - Callback invoked when the event is triggered. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. @@ -5136,9 +6167,11 @@ declare namespace media { * @since 9 */ /** - * Cancel Listens for recording stateChange events. - * @param { 'stateChange' } type - Type of the recording stateChange event to listen for. - * @param { OnAVRecorderStateChangeHandler } callback - Callback used to listen for the recorder stateChange event. + * Unsubscribes from AVRecorder state changes. + * @param { 'stateChange' } type - Event type, which is **'stateChange'** in this case. + * This event can be triggered by both user operations and the system. + * @param { OnAVRecorderStateChangeHandler } callback - Callback invoked when the event is triggered. + * This parameter is supported since API version 12. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @atomicservice @@ -5153,9 +6186,12 @@ declare namespace media { * @since 9 */ /** - * Cancel Listens for recording error events. - * @param { 'error' } type - Type of the recording error event to listen for. - * @param { ErrorCallback } callback - Callback used to listen for the recorder error event. + * Unsubscribes from AVRecorder errors. After the unsubscription, + * your application can no longer receive AVRecorder errors. + * @param { 'error' } type - Event type, which is **'error'** in this case.<br>This event is triggered when + * an error occurs during recording. + * @param { ErrorCallback } callback - Callback invoked when the event is triggered. + * This parameter is supported since API version 12. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @atomicservice @@ -5170,18 +6206,21 @@ declare namespace media { * @since 11 */ /** - * Cancel Listens for recording audioCapturerChange events. - * @param { 'audioCapturerChange' } type - Type of the audioCapturerChange event to listen for. - * @param { Callback<audio.AudioCapturerChangeInfo> } callback - Callback used to listen device change event. + * Subscribes to audio capturer configuration changes. + * @param { 'audioCapturerChange' } type - Event type, which is **'audioCapturerChange'** in this case. + * @param { Callback<audio.AudioCapturerChangeInfo> } callback - Callback used to return the entire configuration + * information about the audio capturer. + * This parameter is supported since API version 12. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 12 */ off(type: 'audioCapturerChange', callback?: Callback<audio.AudioCapturerChangeInfo>): void; /** - * Cancel Listens for photo asset events. - * @param { 'photoAssetAvailable' } type - Type of the recording event to listen for. - * @param { Callback<photoAccessHelper.PhotoAsset> } callback - Callback used to listen for the photo asset event. + * Unsubscribes from media asset callback events. + * @param { 'photoAssetAvailable' } type - Event type, which is **'photoAssetAvailable'** in this case. + * @param { Callback<photoAccessHelper.PhotoAsset> } callback - Callback used to return the **PhotoAsset** object + * corresponding to the resource file created by the system. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 12 */ @@ -6580,6 +7619,17 @@ declare namespace media { * @since 12 */ VIDEO_SCALE_TYPE_FIT_CROP = 1, + + /** + * The content is scaled proportionally to fit the display area. + * If the aspect ratios of the two are inconsistent, the short side will be centered. + * @syscap SystemCapability.Multimedia.Media.VideoPlayer + * @crossplatform + * @atomicservice + * @since 20 + */ + VIDEO_SCALE_TYPE_SCALED_ASPECT = 2 + } /** @@ -6644,6 +7694,12 @@ declare namespace media { * @since 18 */ CFT_AMR = 'amr', + /** + * A audio container format type aac with ADTS. + * @syscap SystemCapability.Multimedia.Media.Core + * @since 20 + */ + CFT_AAC = 'aac', } /** @@ -7094,7 +8150,7 @@ declare namespace media { * @since 9 */ /** - * Enumerates audio source type for recorder. + * Enumerates the audio source types for video recording. * * @enum { number } * @syscap SystemCapability.Multimedia.Media.AVRecorder @@ -7109,7 +8165,7 @@ declare namespace media { * @since 9 */ /** - * Default audio source type. + * Default audio input source. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 @@ -7121,7 +8177,8 @@ declare namespace media { * @since 9 */ /** - * Source type mic. + * Microphone audio input source. + * <br>**Atomic service API**: This API can be used in atomic services since API version 12. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @atomicservice @@ -7129,29 +8186,29 @@ declare namespace media { */ AUDIO_SOURCE_TYPE_MIC = 1, /** - * Source type Voice recognition. - * @syscap SystemCapability.Multimedia.Media.AVRecorder - * @since 12 - */ + * Audio source in speech recognition scenarios. + * @syscap SystemCapability.Multimedia.Media.AVRecorder + * @since 12 + */ AUDIO_SOURCE_TYPE_VOICE_RECOGNITION = 2, /** - * Source type Voice communication. - * @syscap SystemCapability.Multimedia.Media.AVRecorder - * @since 12 - */ + * Voice communication source. + * @syscap SystemCapability.Multimedia.Media.AVRecorder + * @since 12 + */ AUDIO_SOURCE_TYPE_VOICE_COMMUNICATION = 7, /** - * Source type Voice message. - * @syscap SystemCapability.Multimedia.Media.AVRecorder - * @since 12 - */ + * Voice message source. + * @syscap SystemCapability.Multimedia.Media.AVRecorder + * @since 12 + */ AUDIO_SOURCE_TYPE_VOICE_MESSAGE = 10, /** - * Source type Camcorder. - * @syscap SystemCapability.Multimedia.Media.AVRecorder - * @since 12 - */ + * Audio source in camera recording scenarios. + * @syscap SystemCapability.Multimedia.Media.AVRecorder + * @since 12 + */ AUDIO_SOURCE_TYPE_CAMCORDER = 13, } @@ -7163,7 +8220,7 @@ declare namespace media { * @since 9 */ /** - * Enumerates video source type for recorder. + * Enumerates the video source types for video recording. * * @enum { number } * @syscap SystemCapability.Multimedia.Media.AVRecorder @@ -7177,7 +8234,7 @@ declare namespace media { * @since 9 */ /** - * Surface raw data. + * The input surface carries raw data. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 @@ -7189,7 +8246,7 @@ declare namespace media { * @since 9 */ /** - * Surface ES data. + * The input surface carries ES data. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @since 12 @@ -7216,7 +8273,7 @@ declare namespace media { } /** - * Enumerates mode of creating recorder file + * Enumerates the modes for creating media files. * * @enum { number } * @syscap SystemCapability.Multimedia.Media.AVRecorder @@ -7224,18 +8281,20 @@ declare namespace media { */ enum FileGenerationMode { /** - * file created by app + * The application creates a media file in the sandbox. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 12 */ APP_CREATE = 0, /** - * file created by system, valid only in camera scene. + * The system creates a media file. Currently, this mode takes effect only in camera recording scenarios. + * The URL set by the application is ignored. * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 12 */ AUTO_CREATE_CAMERA_SCENE = 1, } + /** * Provides the video recorder configuration definitions. * @@ -7299,7 +8358,7 @@ declare namespace media { } /** - * Provides encoder info. + * Describes the information about an encoder. * * @typedef EncoderInfo * @syscap SystemCapability.Multimedia.Media.AVRecorder @@ -7307,7 +8366,7 @@ declare namespace media { */ interface EncoderInfo { /** - * encoder format MIME + * MIME type of the encoder. * @type { CodecMimeType } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 @@ -7315,7 +8374,7 @@ declare namespace media { mimeType: CodecMimeType; /** - * encoder type, audio or video + * Encoder type. The value **audio** means an audio encoder, and **video** means a video encoder. * @type { string } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 @@ -7323,7 +8382,7 @@ declare namespace media { type: string; /** - * audio or video encoder bitRate range + * Bit rate range of the encoder, with the minimum and maximum bit rates specified. * @type { ?Range } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 @@ -7331,7 +8390,8 @@ declare namespace media { bitRate?: Range; /** - * video encoder frame rate range + * Video frame rate range, with the minimum and maximum frame rates specified. + * This parameter is available only for video encoders. * @type { ?Range } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 @@ -7339,7 +8399,8 @@ declare namespace media { frameRate?: Range; /** - * video encoder width range + * Video frame width range, with the minimum and maximum widths specified. + * This parameter is available only for video encoders. * @type { ?Range } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 @@ -7347,7 +8408,8 @@ declare namespace media { width?: Range; /** - * video encoder height range + * Video frame height range, with the minimum and maximum heights specified. + * This parameter is available only for video encoders. * @type { ?Range } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 @@ -7355,7 +8417,8 @@ declare namespace media { height?: Range; /** - * audio encoder channel range + * Number of audio channels for the audio capturer, with the minimum and maximum numbers of audio channels specified. + * This parameter is available only for audio encoders. * @type { ?Range } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 @@ -7363,7 +8426,8 @@ declare namespace media { channels?: Range; /** - * audio encoder sample rate collection + * Audio sampling rate, including all available audio sampling rates. The value depends on the encoder type, + * and this parameter is available only for audio encoders. * @type { ?Array<number> } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 @@ -7380,7 +8444,7 @@ declare namespace media { */ interface Range { /** - * lower limit of the range + * Minimum value. * @type { number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 @@ -7388,7 +8452,7 @@ declare namespace media { min: number; /** - * upper limit of the range + * Maximum value. * @type { number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 11 @@ -7404,7 +8468,7 @@ declare namespace media { * @since 9 */ /** - * Provides the media recorder profile definitions. + * Describes the audio and video recording profile. * * @typedef AVRecorderProfile * @syscap SystemCapability.Multimedia.Media.AVRecorder @@ -7419,7 +8483,16 @@ declare namespace media { * @since 9 */ /** - * Indicates the audio bitrate. + * Audio encoding bit rate. This parameter is mandatory for audio recording.<br>Supported bit rate ranges: + * <br>- Range [32000 - 500000] for the AAC encoding format.<br>- Range [64000] for the G.711 μ-law encoding format. + * <br>- Range [8000, 16000, 32000, 40000, 48000, 56000, 64000, 80000, 96000, 112000, 128000, 160000, 192000, + * 224000, 256000, 320000] for the MP3 encoding format.<br>When the MP3 encoding format is used, + * the mapping between the sampling rate and bit rate is as follows:<br>- When the sampling rate is lower than + * 16 kHZ, the bit rate range is [8000 - 64000].<br>- When the sampling rate ranges from 16 kHz to 32 kHz, + * the bit rate range is [8000 - 160000].<br>- When the sampling rate is greater than 32 kHz, the bit rate range + * is [32000 - 320000].<br>- Range [4750, 5150, 5900, 6700, 7400, 7950, 10200, 12200] for + * the AMR-NB encoding format.<br>- Range [6600, 8850, 12650, 14250, 15850, 18250, 19850, 23050, 23850] for the + * AMR-WB encoding format.<br>**Atomic service API**: This API can be used in atomic services since API version 12. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7434,7 +8507,10 @@ declare namespace media { * @since 9 */ /** - * Indicates the number of audio channels. + * Number of audio channels. This parameter is mandatory for audio recording.<br>- Range [1 - 8] for the + * AAC encoding format.<br>- Range [1] for the G.711 μ-law encoding format.<br>- Range [1 - 2] for the MP3 encoding + * format.<br>- Range [1] for the AMR-NB and AMR-WB encoding formats.<br>**Atomic service API**: This API can be + * used in atomic services since API version 12. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7449,7 +8525,9 @@ declare namespace media { * @since 9 */ /** - * Indicates the audio encoding format. + * Audio encoding format. This parameter is mandatory for audio recording. Currently, AUDIO_AAC, AUDIO_MP3, + * AUDIO_G711MU, AUDIO_AMR_NB, and AUDIO_AMR_WB are supported.<br>**Atomic service API**: This API can be used in + * atomic services since API version 12. * @type { ?CodecMimeType } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7464,7 +8542,12 @@ declare namespace media { * @since 9 */ /** - * Indicates the audio sampling rate. + * Audio sampling rate. This parameter is mandatory for audio recording.<br>Supported sampling rate ranges: + * <br>- Range [8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000, 64000, 88200, 96000] for the AAC + * encoding format.<br>- Range [8000] for the G.711 μ-law encoding format.<br>- Range [8000, 11025, 12000, 16000, + * 22050, 24000, 32000, 44100, 48000] for the MP3 encoding format.<br>- Range [8000] for the AMR-NB encoding format. + * <br>- Range [16000] for the AMR-WB encoding format.<br>Variable bit rate. The bit rate is for reference only. + * <br>**Atomic service API**: This API can be used in atomic services since API version 12. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7479,7 +8562,9 @@ declare namespace media { * @since 9 */ /** - * Indicates the output file format. + * Container format of a file. This parameter is mandatory. Currently, the MP4, M4A, MP3, WAV, and AMR container + * formats are supported. The AUDIO_MP3 encoding format cannot be used in the MP4 container format.<br>**Atomic + * service API**: This API can be used in atomic services since API version 12. * @type { ContainerFormatType } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7494,7 +8579,7 @@ declare namespace media { * @since 9 */ /** - * Indicates the video bitrate. + * Video encoding bit rate. This parameter is mandatory for video recording. The value range is [10000 - 100000000]. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7508,7 +8593,7 @@ declare namespace media { * @since 9 */ /** - * Indicates the video encoding format. + * Video encoding format. This parameter is mandatory for video recording. Currently, VIDEO_AVC is supported. * @type { ?CodecMimeType } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7522,7 +8607,7 @@ declare namespace media { * @since 9 */ /** - * Indicates the video width. + * Width of a video frame. This parameter is mandatory for video recording. The value range is [176 - 4096]. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7536,7 +8621,7 @@ declare namespace media { * @since 9 */ /** - * Indicates the video height. + * Height of a video frame. This parameter is mandatory for video recording. The value range is [144 - 4096]. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7550,7 +8635,7 @@ declare namespace media { * @since 9 */ /** - * Indicates the video frame rate. + * Video frame rate. This parameter is mandatory for video recording. The value range is [1 - 60]. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7565,7 +8650,8 @@ declare namespace media { * @since 11 */ /** - * Whether to record HDR video. + * HDR encoding. This parameter is optional for video recording. The default value is **false**, and there is no + * requirement on the encoding format. When **isHdr** is set to **true**, the encoding format must be **video/hevc**. * @type { ?boolean } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7574,7 +8660,9 @@ declare namespace media { isHdr?: boolean; /** - * Whether to encode the video in temporal scale mode. + * Whether temporal layered encoding is supported. This parameter is optional for video recording. The default value + * is **false**. If this parameter is set to **true**, some frames in the video output streams can be skipped + * without being encoded. * @type { ?boolean } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7583,7 +8671,7 @@ declare namespace media { enableTemporalScale?: boolean; /** - * Whether to enble video encoding policy to quality stable encoding. + * Whether to enable video encoding policy to quality stable encoding. * @type { ?boolean } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @systemapi @@ -7600,7 +8688,12 @@ declare namespace media { * @since 9 */ /** - * Provides the media recorder configuration definitions. + * Describes the audio and video recording parameters. + * + * The **audioSourceType** and **videoSourceType** parameters are used to distinguish audio-only recording, + * video-only recording, and audio and video recording. For audio-only recording, set only **audioSourceType**. + * For video-only recording, set only **videoSourceType**. For audio and video recording, set both **audioSourceType** + * and **videoSourceType**. * * @typedef AVRecorderConfig * @syscap SystemCapability.Multimedia.Media.AVRecorder @@ -7615,7 +8708,8 @@ declare namespace media { * @since 9 */ /** - * Audio source type, details see @AudioSourceType . + * Type of the audio source to record. This parameter is mandatory for audio recording.<br>**Atomic service API**: + * This API can be used in atomic services since API version 12. * @type { ?AudioSourceType } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7629,7 +8723,7 @@ declare namespace media { * @since 9 */ /** - * Video source type, details see @VideoSourceType . + * Type of the video source to record. This parameter is mandatory for video recording. * @type { ?VideoSourceType } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7650,7 +8744,8 @@ declare namespace media { * @since 9 */ /** - * Video recorder profile, details see @AVRecorderProfile . + * Recording profile. This parameter is mandatory.<br>**Atomic service API**: This API can be used in atomic + * services since API version 12. * @type { AVRecorderProfile } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform @@ -7665,35 +8760,27 @@ declare namespace media { * @since 9 */ /** - * File output uri, support a kind of uri now. - * format like: "fd://" + "context". + * Recording output URL: fd://xx (fd number).<br>This parameter is mandatory.<br>**Atomic service API**: + * This API can be used in atomic services since API version 12. * @type { string } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @crossplatform * @atomicservice * @since 12 */ - /** - * File output uri, support a kind of uri now. - * format like: "fd://" + "context". - * @type { ?string } - * @syscap SystemCapability.Multimedia.Media.AVRecorder - * @crossplatform - * @atomicservice - * @since 18 - */ - url?: string; + url: string; /** - * Mode of creating recorder file, details see @FileGenerationMode. + * Mode for creating the file, which is used together with on('photoAssetAvailable'). * @type { ?FileGenerationMode } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 12 */ fileGenerationMode?: FileGenerationMode; /** - * Sets the video rotation angle in output file, and for the file to playback, mp4 support - * the range of rotation angle should be {0, 90, 180, 270}, default is 0. + * Rotation angle of the recorded video. The value can be 0 (default), 90, 180, or 270 for MP4 videos.<br>This API + * is supported since API version 6 and deprecated since API version 12. You are advised to use + * **AVMetadata.videoOrientation** instead. If both parameters are set, **AVMetadata.videoOrientation** is used. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 9 @@ -7702,7 +8789,9 @@ declare namespace media { */ rotation?: number; /** - * Geographical location information. + * Geographical location of the recorded video. By default, the geographical location information is not recorded. + * <br>This API is supported since API version 6 and deprecated since API version 12. You are advised to use + * **AVMetadata.location** instead. If both parameters are set, **AVMetadata.location** is used. * @type { ?Location } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 9 @@ -7711,18 +8800,21 @@ declare namespace media { */ location?: Location; /** - * Set global metadata info. Details see @AVMetadata + * Metadata. For details, see @AVMetadata. * @type { ?AVMetadata } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 12 */ metadata?: AVMetadata; /** - * Set the longest duration allowed for current recording. + * Maximum recording duration, in seconds. The value range is [1, 2^31-1]. If an invalid value is provided, + * it is reset to the maximum allowed duration. Once the recording reaches the specified duration, + * it stops automatically and notifies via the **stateChange** callback that the recording has stopped: + * AVRecorderState = 'stopped', StateChangeReason = BACKGROUND. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVRecorder * @since 18 - */ + */ maxDuration?: number; } @@ -8049,7 +9141,7 @@ declare namespace media { } /** - * Enumerates AVScreenCaptureRecord preset types. + * Enumerates the encoding and container formats used during screen capture. * * @enum { number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture @@ -8057,13 +9149,13 @@ declare namespace media { */ enum AVScreenCaptureRecordPreset { /** - * Screen record normal type, h264/aac mp4 + * The H.264 video encoding format, AAC audio encoding format, and MP4 container format are used. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREEN_RECORD_PRESET_H264_AAC_MP4 = 0, /** - * Screen record high efficient type, h265/aac mp4 + * The H.265 video encoding format, AAC audio encoding format, and MP4 container format are used. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ @@ -8071,7 +9163,7 @@ declare namespace media { } /** - * Enumerates fill modes of video stream in screen recording. + * Enumerates the video fill modes during screen capture. * * @enum { number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture @@ -8079,13 +9171,13 @@ declare namespace media { */ enum AVScreenCaptureFillMode { /** - * Keep the scale the same as that of the original image + * Keeps the original aspect ratio, matching the aspect ratio of the physical screen. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 18 */ PRESERVE_ASPECT_RATIO = 0, /** - * Fit the configured width and height + * Stretches the image to fit the specified dimensions. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 18 */ @@ -8093,7 +9185,7 @@ declare namespace media { } /** - * Enumerates AVScreenCapture callback state type. + * Enumerates the screen capture states used in callbacks. * * @enum { number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture @@ -8101,67 +9193,67 @@ declare namespace media { */ enum AVScreenCaptureStateCode { /** - * Screen capture started + * Screen capture is started. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREENCAPTURE_STATE_STARTED = 0, /** - * Screen capture canceled + * Screen capture is canceled. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREENCAPTURE_STATE_CANCELED = 1, /** - * Screen capture stopped by user + * Screen capture is manually stopped by the user. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREENCAPTURE_STATE_STOPPED_BY_USER = 2, /** - * Screen capture stopped by interrupt + * Screen capture is interrupted by another screen capture. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREENCAPTURE_STATE_INTERRUPTED_BY_OTHER = 3, /** - * Screen capture stopped by phone call + * Screen capture is interrupted by an incoming call. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREENCAPTURE_STATE_STOPPED_BY_CALL = 4, /** - * Screen capture microphone not available + * The microphone is unavailable during screen capture. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREENCAPTURE_STATE_MIC_UNAVAILABLE = 5, /** - * Screen capture microphone is muted by user + * The microphone is muted by the user. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREENCAPTURE_STATE_MIC_MUTED_BY_USER = 6, /** - * Screen capture microphone is unmuted by user + * The microphone is unmuted by the user. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREENCAPTURE_STATE_MIC_UNMUTED_BY_USER = 7, /** - * Screen capture enter private scene + * The system enters a privacy page during screen capture. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREENCAPTURE_STATE_ENTER_PRIVATE_SCENE = 8, /** - * Screen capture exit private scene + * The system exits a privacy page during screen capture. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ SCREENCAPTURE_STATE_EXIT_PRIVATE_SCENE = 9, /** - * Screen capture stopped by user switches + * Screen capture is interrupted by system user switchover. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ @@ -8169,7 +9261,36 @@ declare namespace media { } /** - * Provides the media AVScreenCaptureRecord config definition. + * Provides the media AVScreenCaptureStrategy definition. + * + * @typedef AVScreenCaptureStrategy + * @syscap SystemCapability.Multimedia.Media.AVScreenCapture + * @since 20 + */ + interface AVScreenCaptureStrategy { + /** + * Defines whether to enable device-level content recording + * @type { ?boolean } Record according to the display device where the logical screen is located if set True + * @default false + * @syscap SystemCapability.Multimedia.Media.AVScreenCapture + * @systemapi + * @since 20 + */ + enableDeviceLevelCapture?: boolean; + + /** + * Allows starting or maintaining screen capture during a call + * @type { ?boolean } The default value is false, + * which means that the recording is ended during the call or the recording cannot be initiated. + * @default {false} [Required if provided] + * @syscap SystemCapability.Multimedia.Media.AVScreenCapture + * @since 20 + */ + keepCaptureDuringCall?: boolean; + } + + /** + * Defines the screen capture parameters. * * @typedef AVScreenCaptureRecordConfig * @syscap SystemCapability.Multimedia.Media.AVScreenCapture @@ -8177,80 +9298,91 @@ declare namespace media { */ interface AVScreenCaptureRecordConfig { /** - * Indicates record file descriptor. + * FD of the file output. * @type { number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ fd: number; /** - * Indicates video frame width. + * Video width, in px. The default value varies according to the display in use. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ frameWidth?: number; /** - * Indicates video frame height. + * Video height, in px. The default value varies according to the display in use. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ frameHeight?: number; /** - * Indicates video bitrate. + * Video bit rate. The default value is **10000000**. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ videoBitrate?: number; /** - * Indicates audio sample rate. + * Audio sampling rate. This value is used for both internal capture and external capture (using microphones). + * Only **48000** (default value) and **16000** are supported. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ audioSampleRate?: number; /** - * Indicates audio channel count. + * Number of audio channels. This value is used for both internal capture and external capture (using microphones). + * Only **1** and **2** (default) are supported. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ audioChannelCount?: number; /** - * Indicates audio bitrate. + * Audio bit rate. This value is used for both internal capture and external capture (using microphones). + * The default value is **96000**. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ audioBitrate?: number; /** - * Indicates AVScreenCaptureRecordPreset, details see @AVScreenCaptureRecordPreset + * Encoding and container format used. The default value is **SCREEN_RECORD_PRESET_H264_AAC_MP4**. * @type { ?AVScreenCaptureRecordPreset } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 */ preset?: AVScreenCaptureRecordPreset; /** - * Indicates the screen to be recorded. + * ID of the display used for screen capture. By default, the main screen is captured. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 15 */ displayId?: number; /** - * Indicates the fill mode of video, details see @AVScreenCaptureFillMode + * Video fill mode during screen capture. * @type { ?AVScreenCaptureFillMode } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 18 */ fillMode?: AVScreenCaptureFillMode; + /** + * Screen Capture Policy Configuration Fields + * @type { ?AVScreenCaptureStrategy } Screen capture policy configuration values + * @default {default value of the property} [Required if provided] + * @syscap SystemCapability.Multimedia.Media.AVScreenCapture + * @since 20 + */ + strategy?: AVScreenCaptureStrategy; } /** - * Provides screen capture record. Before calling an AVScreenCaptureRecorder method, you must use createAVScreenCaptureRecorder() - * to create an AVScreenCaptureRecorder instance. + * Provides APIs to manage screen capture. Before calling any API in **AVScreenCaptureRecorder**, + * you must use createAVScreenCaptureRecorder() to create an **AVScreenCaptureRecorder** instance. * * @typedef AVScreenCaptureRecorder * @syscap SystemCapability.Multimedia.Media.AVScreenCapture @@ -8258,112 +9390,194 @@ declare namespace media { */ interface AVScreenCaptureRecorder { /** - * Init AVScreenCaptureRecorder. - * @param { AVScreenCaptureRecordConfig } config - AVScreenCaptureRecorder config. - * @returns { Promise<void> } A Promise instance used to return when init completed. + * Initializes screen capture and sets screen capture parameters. This API uses a promise to return the result. + * @param { AVScreenCaptureRecordConfig } config - Screen capture parameters to set. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * let avCaptureConfig: media.AVScreenCaptureRecordConfig = { + * fd: 0, // Before passing in an FD to this parameter, the file must be created by the caller and granted with the write permissions. + * frameWidth: 640, + * frameHeight: 480 + * // Add other parameters. + * } + * + * avScreenCaptureRecorder.init(avCaptureConfig).then(() => { + * console.info('Succeeded in initing avScreenCaptureRecorder'); + * }).catch((err: BusinessError) => { + * console.info('Failed to init avScreenCaptureRecorder, error: ' + err.message); + * }) */ init(config: AVScreenCaptureRecordConfig): Promise<void>; /** - * Start screen capture recording. - * @returns { Promise<void> } A Promise instance used to return when startRecording completed. + * Starts screen capture. This API uses a promise to return the result. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avScreenCaptureRecorder.startRecording().then(() => { + * console.info('Succeeded in starting avScreenCaptureRecorder'); + * }).catch((err: BusinessError) => { + * console.info('Failed to start avScreenCaptureRecorder, error: ' + err.message); + * }) */ startRecording(): Promise<void>; /** - * Stop screen capture recording. - * @returns { Promise<void> } A Promise instance used to return when stopRecording completed. + * Stops screen capture. This API uses a promise to return the result. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avScreenCaptureRecorder.stopRecording().then(() => { + * console.info('Succeeded in stopping avScreenCaptureRecorder'); + * }).catch((err: BusinessError) => { + * console.info('Failed to stop avScreenCaptureRecorder, error: ' + err.message); + * }) */ stopRecording(): Promise<void>; /** - * Skip some windows' privacy mode of current app during the screen recording. - * @param { Array<number> } windowIDs - windowID list to be skipped privacy mode . - * @returns { Promise<void> } A Promise instance used to return when skipPrivacyMode completed. + * During screen capture, the application can exempt its privacy windows from security purposes. + * This API uses a promise to return the result. + * For example, if a user enters a password in this application during screen capture, + * the application will not display a black screen. + * @param { Array<number> } windowIDs - IDs of windows that require privacy exemption, including the main window + * IDs and subwindow IDs. For details about how to obtain window properties. + * @returns { Promise<void> } Promise used to return the window IDs. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * let windowIDs = []; + * avScreenCaptureRecorder.skipPrivacyMode(windowIDs).then(() => { + * console.info('Succeeded in skipping privacy mode'); + * }).catch((err: BusinessError) => { + * console.info('Failed to skip privacy mode, error: ' + err.message); + * }) */ skipPrivacyMode(windowIDs: Array<number>): Promise<void>; /** - * Set microphone enable or disable. - * @param { boolean } enable - Set microphone enable or disable during recording. - * @returns { Promise<void> } A Promise instance used to return when setMicEnabled completed. + * Enables or disables the microphone. This API uses a promise to return the result. + * @param { boolean } enable - Whether to enable or disable the microphone. The value **true** means to enable + * the microphone, and **false** means the opposite. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avScreenCaptureRecorder.setMicEnabled(true).then(() => { + * console.info('Succeeded in setMicEnabled avScreenCaptureRecorder'); + * }).catch((err: BusinessError) => { + * console.info('Failed to setMicEnabled avScreenCaptureRecorder, error: ' + err.message); + * }) */ setMicEnabled(enable: boolean): Promise<void>; /** - * Release screen capture recording. - * @returns { Promise<void> } A Promise instance used to return when release completed. + * Releases this **AVScreenCaptureRecorder** instance. This API uses a promise to return the result. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * import { BusinessError } from '@kit.BasicServicesKit'; + * + * avScreenCaptureRecorder.release().then(() => { + * console.info('Succeeded in releasing avScreenCaptureRecorder'); + * }).catch((err: BusinessError) => { + * console.info('Faile to release avScreenCaptureRecorder, error: ' + err.message); + * }) */ release(): Promise<void>; /** - * Listens for AVScreenCaptureRecord info callback. - * @param { 'stateChange' } type - Type of the AVScreenCaptureRecord event to listen for. - * @param { Callback<AVScreenCaptureStateCode> } callback - Callback used to listen for the AVScreenCaptureRecord info return. + * Subscribes to screen capture state changes. An application can subscribe to only one screen capture + * state change event. When the application initiates multiple subscriptions to this event, + * the last subscription is applied. + * @param { 'stateChange' } type - Event type, which is **'stateChange'** in this case. + * @param { Callback<AVScreenCaptureStateCode> } callback - Callback invoked when the event is triggered. + * AVScreenCaptureStateCode indicates the new state. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * avScreenCaptureRecorder.on('stateChange', (state: media.AVScreenCaptureStateCode) => { + * console.info('avScreenCaptureRecorder stateChange to ' + state); + * }) */ on(type: 'stateChange', callback: Callback<AVScreenCaptureStateCode>): void; /** - * Listens for AVScreenCaptureRecord info callback. - * @param { 'error' } type - Type of the AVScreenCaptureRecord event to listen for. - * @param { ErrorCallback } callback - Callback used to listen for the AVScreenCaptureRecord error return. + * Subscribes to AVScreenCaptureRecorder errors. You can handle the errors based on the application logic. + * An application can subscribe to only one AVScreenCaptureRecorder error event. + * When the application initiates multiple subscriptions to this event, the last subscription is applied. + * @param { 'error' } type - Event type, which is **'error'** in this case. + * @param { ErrorCallback } callback - Callback invoked when the event is triggered. * @throws { BusinessError } 201 - permission denied. * @throws { BusinessError } 5400103 - IO error. Return by ErrorCallback. * @throws { BusinessError } 5400105 - Service died. Return by ErrorCallback. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * avScreenCaptureRecorder.on('error', (err: BusinessError) => { + * console.error('avScreenCaptureRecorder error:' + err.message); + * }) */ on(type: 'error', callback: ErrorCallback): void; /** - * Unregister listens for AVScreenCaptureRecord info callback. - * @param { 'stateChange' } type - Type of the AVScreenCaptureRecord event to listen for. - * @param { Callback<AVScreenCaptureStateCode> } callback - Callback used to listen for the AVScreenCaptureRecord info return. + * Unsubscribes from screen capture state changes. You can specify a callback to cancel the specified subscription. + * @param { 'stateChange' } type - Event type, which is **'stateChange'** in this case. + * @param { Callback<AVScreenCaptureStateCode> } callback - Callback used for unsubscription. + * AVScreenCaptureStateCode indicates the new state. If this parameter is not specified, + * the last subscription is canceled. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * avScreenCaptureRecorder.off('stateChange'); */ off(type: 'stateChange', callback?: Callback<AVScreenCaptureStateCode>): void; /** - * Unregister listens for AVScreenCaptureRecord error callback. - * @param { 'error' } type - Type of the AVScreenCaptureRecord event to listen for. - * @param { ErrorCallback } callback - Callback used to listen for the AVScreenCaptureRecord error return. + * Unsubscribes from AVScreenCaptureRecorder errors. You can specify a callback to cancel + * the specified subscription. + * @param { 'error' } type - Event type, which is **'error'** in this case. + * @param { ErrorCallback } callback - Callback used for unsubscription. If this parameter is not specified, + * the last subscription is canceled. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @since 12 + * @example + * avScreenCaptureRecorder.off('error'); */ off(type: 'error', callback?: ErrorCallback): void; } /** - * Provides the video transcode configuration definitions + * Describes the video transcoding parameters. * * @typedef AVTranscoderConfig * @syscap SystemCapability.Multimedia.Media.AVTranscoder @@ -8371,7 +9585,7 @@ declare namespace media { */ interface AVTranscoderConfig { /** - * Indicates the audio bitrate. + * Bitrate of the output audio, in bit/s. The value range is [1-500000]. The default value is 48 kbit/s. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 @@ -8379,7 +9593,7 @@ declare namespace media { audioBitrate?: number; /** - * Indicates the audio encoding format. + * Encoding format of the output audio. Currently, only AAC is supported. The default value is **AAC**. * @type { ?CodecMimeType } * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 @@ -8387,7 +9601,7 @@ declare namespace media { audioCodec?: CodecMimeType; /** - * Indicates the output file format. + * Container format of the output video file. Currently, only MP4 is supported. * @type { ContainerFormatType } * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 @@ -8395,7 +9609,9 @@ declare namespace media { fileFormat: ContainerFormatType; /** - * Indicates the video bitrate. + * Bitrate of the output video, in bit/s. The default bitrate depends on the resolution of the output video. + * The default bitrate is 1 Mbit/s for the resolution in the range [240p, 480P], + * 2 Mbit/s for the range (480P,720P], 4 Mbit/s for the range (720P,1080P], and 8 Mbit/s for 1080p or higher. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 @@ -8403,7 +9619,8 @@ declare namespace media { videoBitrate?: number; /** - * Indicates the video encoding foramt. + * Encoding format of the output video. Currently, only AVC and HEVC are supported. + * If the source video is in HEVC format, the default value is **HEVC**. Otherwise, the default value is **AVC**. * @type { ?CodecMimeType } * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 @@ -8411,26 +9628,27 @@ declare namespace media { videoCodec?: CodecMimeType; /** - * Indicates the video width. + * Width of the output video frame, in px. The value range is [240 - 3840]. + * The default value is the width of the source video frame. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 */ videoFrameWidth?: number; - + /** - * Indicates the video height. + * Height of the output video frame, in px. The value range is [240 - 2160]. + * The default value is the height of the source video frame. * @type { ?number } * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 */ videoFrameHeight?: number; } - + /** - * Transcode a source video file to a destination video file. - * Before calling an AVTranscoder method, you must use @createAVTranscoder - * to create an AVTranscoder instance. + * A transcoding management class that provides APIs to transcode videos. Before calling any API in **AVTranscoder**, + * you must use [createAVTranscoder()]{@link #createAVTranscoder} to create an **AVTranscoder** instance. * * @typedef AVTranscoder * @syscap SystemCapability.Multimedia.Media.AVTranscoder @@ -8438,7 +9656,19 @@ declare namespace media { */ interface AVTranscoder { /** - * Source media file descriptor. Mainstream media formats are supported. + * Source media file descriptor, which specifies the data source. + * + * **Example:** + * + * There is a media file that stores continuous assets, the address offset is 0, and the byte length is 100. + * Its file descriptor is **AVFileDescriptor { fd = resourceHandle; offset = 0; length = 100; }**. + * + * **NOTE** + * - After the resource handle (FD) is transferred to an **AVTranscoder** instance, do not use the resource handle + * to perform other read and write operations, including but not limited to transferring this handle to other + * **AVPlayer**, **AVMetadataExtractor**, **AVImageGenerator**, or **AVTranscoder** instance. + * Competition occurs when multiple **AVTranscoders** use the same resource handle to read and write files + * at the same time, resulting in errors in obtaining data. * @type { AVFileDescriptor } * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 @@ -8446,7 +9676,15 @@ declare namespace media { fdSrc: AVFileDescriptor; /** - * Destination media file descriptor. Mainstream media formats are supported. + * Destination media file descriptor, which specifies the data source. After creating an **AVTranscoder** instance, + * you must set both **fdSrc** and **fdDst**. + * + * **NOTE** + * - After the resource handle (FD) is transferred to an **AVTranscoder** instance, do not use the resource handle + * to perform other read and write operations, including but not limited to transferring this handle to other + * **AVPlayer**, **AVMetadataExtractor**, **AVImageGenerator**, or **AVTranscoder** instance. + * Competition occurs when multiple AVTranscoders use the same resource handle to read and write files + * at the same time, resulting in errors in obtaining data. * @type { number } * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 @@ -8454,11 +9692,12 @@ declare namespace media { fdDst: number; /** - * Prepares for transcoding. - * @param { AVTranscoderConfig } config : Recording parameters. - * @returns { Promise<void> } A promise instance used to return when prepare completes. + * Sets video transcoding parameters. This API uses a promise to return the result. + * @param { AVTranscoderConfig } config - Video transcoding parameters to set. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - The parameter check failed. Return by promise. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. + * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @throws { BusinessError } 5400106 - Unsupported format. Returned by promise. * @syscap SystemCapability.Multimedia.Media.AVTranscoder @@ -8467,8 +9706,10 @@ declare namespace media { prepare(config: AVTranscoderConfig): Promise<void>; /** - * Start AVTranscoder. - * @returns { Promise<void> } A promise instance used to return when start completes. + * Starts transcoding. This API uses a promise to return the result. + * + * This API can be called only after the [prepare()]{@link AVTranscoder.prepare} API is called. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -8478,8 +9719,11 @@ declare namespace media { start(): Promise<void>; /** - * Pause AVTranscoder. - * @returns { Promise<void> } A promise instance used to return when pause completes. + * Pauses transcoding. This API uses a promise to return the result. + * + * This API can be called only after the [start()]{@link AVTranscoder.start} API is called. + * You can call [resume()]{@link AVTranscoder.resume} to resume transcoding. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -8489,8 +9733,10 @@ declare namespace media { pause(): Promise<void>; /** - * Resume AVTranscoder. - * @returns { Promise<void> } A promise instance used to return when resume completes. + * Resumes transcoding. This API uses a promise to return the result. + * + * This API can be called only after the [pause()]{@link AVTranscoder.pause} API is called. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -8500,8 +9746,10 @@ declare namespace media { resume(): Promise<void>; /** - * Cancel AVTranscoder. - * @returns { Promise<void> } A promise instance used to return when cancel completes. + * Cancels transcoding. This API uses a promise to return the result. + * This API can be called only after the [prepare()]{@link AVTranscoder.prepare}, [start()]{@link AVTranscoder.start}, + * [pause()]{@link AVTranscoder.pause}, or [resume()]{@link AVTranscoder.resume} API is called. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400103 - IO error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -8511,8 +9759,10 @@ declare namespace media { cancel(): Promise<void>; /** - * Release resources used for AVTranscoder. - * @returns { Promise<void> } A promise instance used to return when cancel completes. + * Releases the video transcoding resources. This API uses a promise to return the result. + * + * After the resources are released, you can no longer perform any operation on the **AVTranscoder** instance. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.AVTranscoder @@ -8521,18 +9771,31 @@ declare namespace media { release(): Promise<void>; /** - * Register listener for trancoding complete event. - * @param { 'complete' } type - Type of the event to listen for. - * @param { Callback<void> } callback - Callback used to listen for the complete event. + * Subscribes to the event indicating that transcoding is complete. + * An application can subscribe to only one transcoding completion event. + * When the application initiates multiple subscriptions to this event, the last subscription is applied. + * + * When this event is reported, the current transcoding operation is complete. + * You need to call [release()]{@link AVTranscoder.release} to exit the transcoding. + * @param { 'complete' } type - Event type, which is **'complete'** in this case. + * This event is triggered by the system during transcoding. + * @param { Callback<void> } callback - Callback that has been registered to listen for + * transcoding completion events. * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 */ on(type:'complete', callback: Callback<void>):void; /** - * Register listener for trancoding error event. - * @param { 'error' } type - Type of the event to listen for. - * @param { ErrorCallback } callback - Callback used to listen for the error event. + * Subscribes to AVTranscoder errors. If this event is reported, call [release()]{@link AVTranscoder.release} + * to exit the transcoding. + * + * An application can subscribe to only one AVTranscoder error event. + * When the application initiates multiple subscriptions to this event, the last subscription is applied. + * @param { 'error' } type - Event type, which is **'error'** in this case. + * + * This event is triggered when an error occurs during transcoding. + * @param { ErrorCallback } callback - Callback invoked when the event is triggered. * @throws { BusinessError } 401 - The parameter check failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 5400101 - No memory. @@ -8547,36 +9810,47 @@ declare namespace media { on(type:'error', callback: ErrorCallback):void; /** - * Register listener for trancoding progressUpdate event. - * @param { 'progressUpdate' } type - Type of the event to listen for. - * @param { Callback<number> } callback - Callback used to listen for the progressUpdate event. + * Subscribes to transcoding progress updates. An application can subscribe to only one transcoding progress update + * event. When the application initiates multiple subscriptions to this event, the last subscription is applied. + * @param { 'progressUpdate' } type - Event type, which is **'progressUpdate'** in this case. + * This event is triggered by the system during transcoding. + * @param { Callback<number> } callback - Callback invoked when the event is triggered. + * **progress** is a number that indicates the current transcoding progress. * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 */ on(type:'progressUpdate', callback: Callback<number>):void; /** - * Unregister listener for trancoding complete event. - * @param { 'complete' } type - Type of the event to listen for. - * @param { Callback<void> } [callback] - Callback used to listen for the complete event. + * Unsubscribes from the event indicating that transcoding is complete. + * @param { 'complete' } type - Event type, which is **'complete'** in this case. + * This event can be triggered by both user operations and the system. + * @param { Callback<void> } callback - Callback that has been registered to listen for + * transcoding completion events. * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 */ off(type:'complete', callback?: Callback<void>):void; /** - * Unregister listener for trancoding error event. - * @param { 'error' } type - Type of the event to listen for. - * @param { ErrorCallback } [callback] - Callback used to listen for the error event. + * Unsubscribes from AVTranscoder errors. After the unsubscription, your application can no longer + * receive AVTranscoder errors. + * @param { 'error' } type - Event type, which is **'error'** in this case. + * + * This event is triggered when an error occurs during transcoding. + * @param { ErrorCallback } callback - Callback that has been registered to listen for AVTranscoder errors. * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 */ off(type:'error', callback?: ErrorCallback):void; /** - * Unregister listener for trancoding progressUpdate event. - * @param { 'progressUpdate' } type - Type of the event to listen for. - * @param { Callback<number> } [callback] - Callback used to listen for the progressUpdate event. + * Unsubscribes from transcoding progress updates. + * @param { 'progressUpdate' } type - Event type, which is **'progressUpdate'** in this case. + * This event can be triggered by both user operations and the system. + * @param { Callback<number> } callback - Called that has been registered to listen for progress updates. + * You are advised to use the default value because only the last registered callback is retained in the current + * callback mechanism. * @syscap SystemCapability.Multimedia.Media.AVTranscoder * @since 12 */ @@ -8584,7 +9858,7 @@ declare namespace media { } /** - * Enumerates event type of Screen Capture. + * Enumerates the states available for the system screen recorder. * * @enum { number } * @syscap SystemCapability.Multimedia.Media.AVScreenCapture @@ -8593,14 +9867,14 @@ declare namespace media { */ enum ScreenCaptureEvent { /** - * Screen capture started + * The system screen recorder starts screen capture. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @systemapi * @since 18 */ SCREENCAPTURE_STARTED = 0, /** - * Screen capture stopped + * The system screen recorder stops screen capture. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @systemapi * @since 18 @@ -8609,7 +9883,8 @@ declare namespace media { } /** - * Provides screen capture info. + * A class that provides APIs to query and monitor the system screen recorder status. Before calling any API, + * you must use getScreenCaptureMonitor() to obtain a ScreenCaptureMonitor instance. * * @typedef ScreenCaptureMonitor * @syscap SystemCapability.Multimedia.Media.AVScreenCapture @@ -8618,29 +9893,42 @@ declare namespace media { */ interface ScreenCaptureMonitor { /** - * Listens for state change of system screen recorder. - * @param { 'systemScreenRecorder' } type - Type of the screen capture event to listen for. - * @param { Callback<ScreenCaptureEvent> } callback - Callback used to listen for the screen capture event return. + * Subscribes to state change events of the system screen recorder. From the ScreenCaptureEvent event reported, + * you can determine whether the system screen recorder is working. + * @param { 'systemScreenRecorder' } type - Event type, which is **'systemScreenRecorder'** in this case. + * This event is triggered when the state of the system screen recorder changes. + * @param { Callback<ScreenCaptureEvent> } callback - Callback invoked when the event is triggered, + * where ScreenCaptureEvent indicates the new state. * @throws { BusinessError } 202 - Not System App. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @systemapi * @since 18 + * @example + * // This event is reported when the state of the system screen recorder changes. + * screenCaptureMonitor.on('systemScreenRecorder', (event: media.ScreenCaptureEvent) => { + * // Set the 'systemScreenRecorder' event callback. + * console.info(`system ScreenRecorder event: ${event}`); + * }) */ on(type: 'systemScreenRecorder', callback: Callback<ScreenCaptureEvent>): void; /** - * Unregister listens for state change of system screen recorder. - * @param { 'systemScreenRecorder' } type - Type of the screen capture event to listen for. - * @param { Callback<ScreenCaptureEvent> } callback - Callback used to listen for the screen capture event return. + * Unsubscribes from state change events of the system screen recorder. + * @param { 'systemScreenRecorder' } type - Event type, which is **'systemScreenRecorder'** in this case. + * This event is triggered when the state of the system screen recorder changes. + * @param { Callback<ScreenCaptureEvent> } callback - Callback invoked when the event is triggered, + * where ScreenCaptureEvent indicates the new state. If this parameter is not specified, the last subscription event is canceled. * @throws { BusinessError } 202 - Not System App. * @syscap SystemCapability.Multimedia.Media.AVScreenCapture * @systemapi * @since 18 + * @example + * screenCaptureMonitor.off('systemScreenRecorder'); */ off(type: 'systemScreenRecorder', callback?: Callback<ScreenCaptureEvent>): void; /** - * Whether the system recorder is working. + * Whether the system screen recorder is working. * @type { boolean } * @readonly * @syscap SystemCapability.Multimedia.Media.AVScreenCapture diff --git a/api/@ohos.multimedia.movingphotoview.d.ts b/api/@ohos.multimedia.movingphotoview.d.ts index b748575f4c5732fbefbe2aa9ff22a80f9d3ec5bf..44055a162b614aea10094a115b66231f2c134a32 100644 --- a/api/@ohos.multimedia.movingphotoview.d.ts +++ b/api/@ohos.multimedia.movingphotoview.d.ts @@ -174,6 +174,15 @@ declare interface MovingPhotoViewOptions { * @since 14 */ dynamicRangeMode?: DynamicRangeMode; + /** + * the watermask of the cover photo whether to contain during movingphoto playback + * + * @type { ?boolean } + * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core + * @systemapi + * @since 19 + */ + playWithMask?: boolean; } /** * Defines the moving photo view interface. diff --git a/api/@ohos.multimedia.systemSoundManager.d.ts b/api/@ohos.multimedia.systemSoundManager.d.ts index da2d54e8d9765bef2d832fc538c3a0012e368439..41c9160030792bde124392f3f1716bf7ddbfa18b 100644 --- a/api/@ohos.multimedia.systemSoundManager.d.ts +++ b/api/@ohos.multimedia.systemSoundManager.d.ts @@ -35,6 +35,80 @@ import type { SystemToneOptions as _SystemToneOptions } from './multimedia/syste * @since 10 */ declare namespace systemSoundManager { + + /** + * Error enum for system sound. + * @enum { number } + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + enum SystemSoundError { + /** + * IO error. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + ERROR_IO = 5400103, + + /** + * No error. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + ERROR_OK = 20700000, + + /** + * Type mismatch. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + ERROR_TYPE_MISMATCH = 20700001, + + /** + * Unsupported operation. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + ERROR_UNSUPPORTED_OPERATION = 20700003, + + /** + * Data size exceeds the limit. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + ERROR_DATA_TOO_LARGE = 20700004, + + /** + * The number of files exceeds the limit. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + ERROR_TOO_MANY_FILES = 20700005, + + /** + * Insufficient ROM space. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + ERROR_INSUFFICIENT_ROM = 20700006, + + /** + * Invalid parameter. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + ERROR_INVALID_PARAM = 20700007 + } + /** * Enum for ringtone type. * @enum { number } @@ -137,6 +211,31 @@ declare namespace systemSoundManager { CUSTOMIZED = 1, } + /** + * Enum for media type. + * @enum { number } + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + enum MediaType { + /** + * Media type for audio. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + AUDIO = 0, + + /** + * Media type for vide. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + VIDEO = 1, + } + /** * Define the ringtone category. * @syscap SystemCapability.Multimedia.SystemSound.Core @@ -169,6 +268,15 @@ declare namespace systemSoundManager { */ const TONE_CATEGORY_ALARM:number; + /** + * Define the contact tone category. + * @constant + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + const TONE_CATEGORY_CONTACTS:16; + /** * Tone attributes. * @typedef ToneAttrs @@ -269,6 +377,27 @@ declare namespace systemSoundManager { * @since 12 */ getCategory(): number; + + /** + * Sets media type. + * @param { MediaType } type - Target media type. + * @throws { BusinessError } 202 - Caller is not a system application. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + setMediaType(type: MediaType): void; + + /** + * Gets media type. This function returns {@link MediaType#AUDIO} if the media type has not been changed + * by {@link setMediaType}. + * @returns { MediaType } Media type. + * @throws { BusinessError } 202 - Caller is not a system application. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + getMediaType(): MediaType; } /** @@ -576,6 +705,18 @@ declare namespace systemSoundManager { */ getRingtoneUri(context: BaseContext, type: RingtoneType): Promise<string>; + /** + * Gets the ringtone attribute which is in use. + * @param { RingtoneType } type - Ringtone type to get. + * @returns { Promise<ToneAttrs> } Promise used to return the ringtone attribute in system. + * @throws { BusinessError } 202 - Caller is not a system application. + * @throws { BusinessError } 5400103 - I/O error. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + getCurrentRingtoneAttribute(type: RingtoneType): Promise<ToneAttrs>; + /** * Gets attributes of the default ringtone. * @param { BaseContext } context - Current application context. @@ -810,7 +951,21 @@ declare namespace systemSoundManager { * @systemapi * @since 12 */ - openAlarmTone(context: BaseContext, uri: string): Promise<number> + openAlarmTone(context: BaseContext, uri: string): Promise<number>; + + /** + * Open tone list in batch. + * @param { Array<string> } uriList - List of uri to open. The length must be no more than 1024. + * @returns { Promise<Array<[string, number, SystemSoundError]>> } Promise used to return results of this operation. + * In each returned array number, the first item is uri of tone, the second item is fd, and the third item is error + * code. If the uri open failed, the fd will be -1, and the reason is indicated by the error code. + * @throws { BusinessError } 202 - Calleris not a system application. + * @throws { BusinessError } 20700007 - Parameter is invalid, e.g. the length of uriList is too long. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + openToneList(uriList: Array<string>): Promise<Array<[string, number, SystemSoundError]>>; /** * Close fd. @@ -845,6 +1000,27 @@ declare namespace systemSoundManager { * @systemapi * @since 12 */ + /** + * Add customized tone into ringtone library. + * @permission ohos.permission.WRITE_RINGTONE + * @param { BaseContext } context - Current application context. + * @param { ToneAttrs } toneAttr - Tone attributes created by {@link createCustomizedToneAttrs}. + * @param { string } externalUri - Tone uri in external storage. + * @returns { Promise<string> } Tone uri after adding into ringtone library. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Caller is not a system application. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @throws { BusinessError } 5400102 - Operation is not allowed, e.g. ringtone to add is not customized. + * @throws { BusinessError } 5400103 - I/O error. + * @throws { BusinessError } 20700004 - Data size exceeds the limit. + * @throws { BusinessError } 20700005 - The number of files exceeds the limit. + * @throws { BusinessError } 20700006 - Insufficient ROM space. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ addCustomizedTone(context: BaseContext, toneAttr: ToneAttrs, externalUri: string): Promise<string>; /** @@ -869,6 +1045,31 @@ declare namespace systemSoundManager { * @systemapi * @since 12 */ + /** + * Add customized tone into ringtone library. + * @permission ohos.permission.WRITE_RINGTONE + * @param { BaseContext } context - Current application context. + * @param { ToneAttrs } toneAttr - Tone attributes created by {@link createCustomizedToneAttrs}. + * @param { number } fd - File descriptor. + * @param { number } [offset] - The offset in the file where the data to be read, in bytes. By default, the offset + * is zero. + * @param { number } [length] - The length in bytes of the data to be read. By default, the length is the rest of + * bytes in the file from the offset. + * @returns { Promise<string> } Tone uri after adding into ringtone library. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Caller is not a system application. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @throws { BusinessError } 5400102 - Operation is not allowed, e.g. ringtone to add is not customized. + * @throws { BusinessError } 5400103 - I/O error. + * @throws { BusinessError } 20700004 - Data size exceeds the limit. + * @throws { BusinessError } 20700005 - The number of files exceeds the limit. + * @throws { BusinessError } 20700006 - Insufficient ROM space. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ addCustomizedTone(context: BaseContext, toneAttr: ToneAttrs, fd: number, offset?: number, length?: number) : Promise<string>; @@ -891,6 +1092,21 @@ declare namespace systemSoundManager { */ removeCustomizedTone(context: BaseContext, uri:string): Promise<void>; + /** + * Remove customized tone list in batch. + * @permission ohos.permission.WRITE_RINGTONE + * @param { Array<string> } uriList - Uri list to remove. The length must be no more than 1024. + * @returns { Promise<Array<[string, SystemSoundError]>> } Promise used to return removing result array. In each + * array memeber, the first item is the tone uri, and the second item is the error code. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Caller is not a system application. + * @throws { BusinessError } 20700007 - Prameter is invalid, e.g. the length of uriList is too long. + * @syscap SystemCapability.Multimedia.SystemSound.Core + * @systemapi + * @since 20 + */ + removeCustomizedToneList(uriList: Array<string>): Promise<Array<[string, SystemSoundError]>>; + /** * Get haptics settings. * @param { BaseContext } context - Current application context. diff --git a/api/@ohos.multimodalAwareness.deviceStatus.d.ts b/api/@ohos.multimodalAwareness.deviceStatus.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..5a1d458080bb8a9aae502ffc6d423251ee076ff5 --- /dev/null +++ b/api/@ohos.multimodalAwareness.deviceStatus.d.ts @@ -0,0 +1,133 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit MultimodalAwarenessKit + */ + +import type { Callback } from "./@ohos.base"; + +/** + * This module provides the capability to subscribe to report the device status. + * + * @namespace deviceStatus + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @since 18 + */ + +declare namespace deviceStatus { + /** + * Enum for steady standing status. + * + * @enum { number } SteadyStandingStatus + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @since 18 + */ + export enum SteadyStandingStatus { + /** + * indicates exit status + * + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @since 18 + */ + STATUS_EXIT = 0, + /** + * indicates enter status + * + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @since 18 + */ + STATUS_ENTER = 1 + } + + /** + * Interface for device rotation radian + * @interface DeviceRotationRadian + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @systemapi + * @since 20 + */ + export interface DeviceRotationRadian { + /** + * indicates X-RotationRadian + * @type { number } + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @systemapi + * @since 20 + */ + x: number; + /** + * indicates Y-RotationRadian + * @type { number } + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @systemapi + * @since 20 + */ + y: number; + /** + * indicates Z-RotationRadian + * @type { number } + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @systemapi + * @since 20 + */ + z: number; + } + + /** + * Subscribe to detect the steady standing status + * @param { 'steadyStandingDetect' } type - Indicates the event type. + * @param { Callback<SteadyStandingStatus> } callback - Indicates the callback for getting the event data. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited + * <br> device capabilities. + * @throws { BusinessError } 32500001 - Service exception. + * @throws { BusinessError } 32500002 - Subscription failed. + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @since 18 + */ + function on(type: 'steadyStandingDetect', callback: Callback<SteadyStandingStatus>): void; + + /** + * Unsubscribe to detect the steady standing status + * @param { 'steadyStandingDetect' } type - Indicates the event type. + * @param { Callback<SteadyStandingStatus> } callback - Indicates the callback for getting the event data. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited + * <br> device capabilities. + * @throws { BusinessError } 32500001 - Service exception. + * @throws { BusinessError } 32500003 - Unsubscription failed. + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @since 18 + */ + function off(type: 'steadyStandingDetect', callback?: Callback<SteadyStandingStatus>): void; + + /** + * Get the device rotation radian + * @returns { Promise<DeviceRotationRadian> } The result of device roatation radian. + * @throws { BusinessError } 202 - Permission check failed. A non-system application uses the system API. + * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited + * <br> device capabilities. + * @throws { BusinessError } 32500001 - Service exception. + * @syscap SystemCapability.MultimodalAwareness.DeviceStatus + * @systemapi + * @since 20 + */ + function getDeviceRotationRadian(): Promise<DeviceRotationRadian>; +} +export default deviceStatus; diff --git a/api/@ohos.multimodalAwareness.metadataBinding.d.ts b/api/@ohos.multimodalAwareness.metadataBinding.d.ts index 83b1f206a45d63369a4284dacd3320e1f89acb0b..3ab51b82eb75a18277792a542cf7481c243e53f6 100644 --- a/api/@ohos.multimodalAwareness.metadataBinding.d.ts +++ b/api/@ohos.multimodalAwareness.metadataBinding.d.ts @@ -26,7 +26,7 @@ import type { Callback } from './@ohos.base'; * @namespace metadataBinding * @syscap SystemCapability.MultimodalAwareness.MetadataBinding * @atomicservice - * @since 15 + * @since 18 */ declare namespace metadataBinding { /** @@ -35,12 +35,11 @@ declare namespace metadataBinding { * @param { string } metadata - Coded metadata * @returns { Promise<image.PixelMap> } encoded image * @throws { BusinessError } 202 - Permission check failed. A non-system application uses the system API. - * @throws { BusinessError } 401 - Parameter error. Parameter verification failed. * @throws { BusinessError } 32100001 - Internal handling failed. File creation failed - * @throws { BusinessError } 32100002 - Encode process fail. + * @throws { BusinessError } 32100002 - Encode process fail. Possible causes: 1. Image processing error; 2. Channel coding error * @syscap SystemCapability.MultimodalAwareness.MetadataBinding * @systemapi - * @since 15 + * @since 18 */ function encodeImage(srcImage: image.PixelMap, metadata: string): Promise<image.PixelMap>; @@ -48,13 +47,12 @@ declare namespace metadataBinding { * MetadataBinding provides decode capabilities * @param { image.PixelMap } encodedImage - Encoded image * @returns { Promise<string> } decode result - * @throws { BusinessError } 401 - Parameter error. Parameter verification failed. * @throws { BusinessError } 202 - Permission check failed. A non-system application uses the system API. * @throws { BusinessError } 32100001 - Internal handling failed. File read failed. - * @throws { BusinessError } 32100003 - Decode process fail. + * @throws { BusinessError } 32100003 - Decode process fail. Possible causes: 1. Image is not an encoded Image; 2. Image destroyed, decoding failed * @syscap SystemCapability.MultimodalAwareness.MetadataBinding * @systemapi - * @since 15 + * @since 18 */ function decodeImage(encodedImage: image.PixelMap): Promise<string>; @@ -63,22 +61,20 @@ declare namespace metadataBinding { * @param { string } bundleName - Bundle name of a third-party application * @returns { Promise<string> } third-party app callback the meta data * @throws { BusinessError } 202 - Permission check failed. A non-system application uses the system API. - * @throws { BusinessError } 401 - Parameter error. Parameter verification failed. * @throws { BusinessError } 32100001 - Internal handling failed. Obtain metadata failed. * @syscap SystemCapability.MultimodalAwareness.MetadataBinding * @systemapi - * @since 15 + * @since 18 */ function notifyMetadataBindingEvent(bundleName: string): Promise<string>; /** * set the Metadata to the screenshot app * @param { string } metadata - the Metadata of a Third-Party App - * @throws { BusinessError } 401 - Parameter error. Parameter verification failed. * @throws { BusinessError } 32100001 - Internal handling failed. Set Meta data to screenshot app fail. * @syscap SystemCapability.MultimodalAwareness.MetadataBinding * @atomicservice - * @since 15 + * @since 18 */ function submitMetadata(metadata: string): void; @@ -87,12 +83,11 @@ declare namespace metadataBinding { * @param { 'operationSubmitMetadata' } type - Event Type * @param { string } bundleName - Bundle name of a third-party application * @param { Callback<number> } callback - Call back the screenshot event - * @throws { BusinessError } 401 - Parameter error. Parameter verification failed. * @throws { BusinessError } 32100001 - Internal handling failed. Service exception. - * @throws { BusinessError } 32100004 - Subscribe Failed. + * @throws { BusinessError } 32100004 - Subscribe Failed. Possible causes: 1. Abnormal system capability; 2. IPC communication abnormality; 3. Algorithm loading exception * @syscap SystemCapability.MultimodalAwareness.MetadataBinding * @atomicservice - * @since 15 + * @since 18 */ function on(type: 'operationSubmitMetadata', bundleName: string, callback: Callback<number>): void; @@ -101,14 +96,13 @@ declare namespace metadataBinding { * @param { 'operationSubmitMetadata' } type - Event Type * @param { string } bundleName - Bundle name of a third-party application * @param { Callback<number> } callback - Call back the screenshot event - * @throws { BusinessError } 401 - Parameter error. Parameter verification failed. * @throws { BusinessError } 32100001 - Internal handling failed. Service exception. - * @throws { BusinessError } 32100005 - Unsubscribe Failed. + * @throws { BusinessError } 32100005 - Unsubscribe Failed. Possible causes: 1. Abnormal system capability; 2. IPC communication abnormality * @syscap SystemCapability.MultimodalAwareness.MetadataBinding * @atomicservice - * @since 15 + * @since 18 */ function off(type: 'operationSubmitMetadata', bundleName: string, callback?: Callback<number>): void; } -export default metadataBinding +export default metadataBinding; diff --git a/api/@ohos.multimodalAwareness.motion.d.ts b/api/@ohos.multimodalAwareness.motion.d.ts index 253ca6c1a62df3a0c5857fe6b439c47d2d9423b9..57f3475b7e9742e296e268736c5f0ae15c685067 100644 --- a/api/@ohos.multimodalAwareness.motion.d.ts +++ b/api/@ohos.multimodalAwareness.motion.d.ts @@ -24,7 +24,7 @@ import type { Callback } from "./@ohos.base"; * This module provides the capability to subscribe to report the action or motion. * * @namespace motion - * @syscap SystemCapability.MultimodalAwarness.Motion + * @syscap SystemCapability.MultimodalAwareness.Motion * @since 15 */ @@ -33,33 +33,78 @@ declare namespace motion { * Enum for operating hand status. * * @enum { number } OperatingHandStatus - * @syscap SystemCapability.MultimodalAwarness.Motion + * @syscap SystemCapability.MultimodalAwareness.Motion * @since 15 */ export enum OperatingHandStatus { /** * indicates nothing has been detected. * - * @syscap SystemCapability.MultimodalAwarness.Motion + * @syscap SystemCapability.MultimodalAwareness.Motion * @since 15 */ UNKNOWN_STATUS = 0, /** * indicates the operating hand is left hand. * - * @syscap SystemCapability.MultimodalAwarness.Motion + * @syscap SystemCapability.MultimodalAwareness.Motion * @since 15 */ LEFT_HAND_OPERATED = 1, /** * indicates the operating hand is right hand. * - * @syscap SystemCapability.MultimodalAwarness.Motion + * @syscap SystemCapability.MultimodalAwareness.Motion * @since 15 */ RIGHT_HAND_OPERATED = 2 } + /** + * Enum for holding hand status + * + * @enum { number } HoldingHandStatus + * @syscap SystemCapability.MultimodalAwareness.Motion + * @since 20 + */ + export enum HoldingHandStatus { + /** + * indicates no helding has been detected. + * + * @syscap SystemCapability.MultimodalAwareness.Motion + * @since 20 + */ + NOT_HELD = 0, + /** + * indicates holding with the left hand. + * + * @syscap SystemCapability.MultimodalAwareness.Motion + * @since 20 + */ + LEFT_HAND_HELD = 1, + /** + * indicates holding with the right hand. + * + * @syscap SystemCapability.MultimodalAwareness.Motion + * @since 20 + */ + RIGHT_HAND_HELD = 2, + /** + * indicates holding with both hands. + * + * @syscap SystemCapability.MultimodalAwareness.Motion + * @since 20 + */ + BOTH_HANDS_HELD = 3, + /** + * indicates nothing has been detected. + * + * @syscap SystemCapability.MultimodalAwareness.Motion + * @since 20 + */ + UNKNOWN_STATUS = 16 + } + /** * Subscribe to detect the operating hand changed event. * @permission ohos.permission.ACTIVITY_MOTION @@ -70,9 +115,11 @@ declare namespace motion { * @throws { BusinessError } 401 - Parameter error. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited * <br> device capabilities. - * @throws { BusinessError } 31500001 - Service exception. - * @throws { BusinessError } 31500002 - Subscribe Failed. - * @syscap SystemCapability.MultimodalAwarness.Motion + * @throws { BusinessError } 31500001 - Service exception. Possible causes: 1. A system error, such as null pointer, container-related exception; + * <br>2. N-API invocation exception, invalid N-API status. + * @throws { BusinessError } 31500002 - Subscription failed. Possible causes: 1. Callback registration failure; + * <br>2. Failed to bind native object to js wrapper; 3. N-API invocation exception, invalid N-API status; 4. IPC request exception. + * @syscap SystemCapability.MultimodalAwareness.Motion * @since 15 */ function on(type: 'operatingHandChanged', callback: Callback<OperatingHandStatus>): void; @@ -87,9 +134,11 @@ declare namespace motion { * @throws { BusinessError } 401 - Parameter error. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited * <br> device capabilities. - * @throws { BusinessError } 31500001 - Service exception. - * @throws { BusinessError } 31500003 - Unsubscribe Failed. - * @syscap SystemCapability.MultimodalAwarness.Motion + * @throws { BusinessError } 31500001 - Service exception. Possible causes: 1. A system error, such as null pointer, container-related exception; + * <br>2. N-API invocation exception, invalid N-API status. + * @throws { BusinessError } 31500003 - Unsubscription failed. Possible causes: 1. Callback failure; + * <br>2. N-API invocation exception, invalid N-API status; 3. IPC request exception. + * @syscap SystemCapability.MultimodalAwareness.Motion * @since 15 */ function off(type: 'operatingHandChanged', callback?: Callback<OperatingHandStatus>): void; @@ -102,10 +151,47 @@ declare namespace motion { * <br> status forbidden by permission: ohos.permission.ACTIVITY_MOTION. * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited * <br> device capabilities. - * @throws { BusinessError } 31500001 - Service exception. - * @syscap SystemCapability.MultimodalAwarness.Motion + * @throws { BusinessError } 31500001 - Service exception. Possible causes: 1. A system error, such as null pointer, container-related exception; + * <br>2. N-API invocation exception, invalid N-API status. + * @syscap SystemCapability.MultimodalAwareness.Motion * @since 15 */ function getRecentOperatingHandStatus(): OperatingHandStatus; + + /** + * Subscribe the holding hand change event. + * @permission ohos.permission.ACTIVITY_MOTION + * @param { 'holdingHandChanged' } type - Indicates the event type. + * @param { Callback<HoldingHandStatus> } callback - Indicates the callback for getting the event data. + * @throws { BusinessError } 201 - Permission denied. An attempt was made to subscribe holdingHandChanged + * <br> event forbidden by permission: ohos.permission.ACTIVITY_MOTION. + * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited + * <br> device capabilities. + * @throws { BusinessError } 31500001 - Service exception. Possible causes: 1. A system error, such as null pointer, container-related exception; + * <br>2. N-API invocation exception, invalid N-API status. + * @throws { BusinessError } 31500002 - Subscribe Failed. Possible causes: 1. Callback registration failure; + * <br>2. Failed to bind native object to js wrapper; 3. N-API invocation exception, invalid N-API status; 4. IPC request exception. + * @syscap SystemCapability.MultimodalAwareness.Motion + * @since 20 + */ + function on(type: 'holdingHandChanged', callback: Callback<HoldingHandStatus>): void; + + /** + * Unsubscribe the holding hand change event. + * @permission ohos.permission.ACTIVITY_MOTION + * @param { 'holdingHandChanged' } type - Indicates the event type. + * @param { Callback<HoldingHandStatus> } callback - Indicates the callback for getting the event data. + * @throws { BusinessError } 201 - Permission denied. An attempt was made to unsubscribe holdingHandChanged + * <br> event forbidden by permission: ohos.permission.ACTIVITY_MOTION. + * @throws { BusinessError } 801 - Capability not supported. Function can not work correctly due to limited + * <br> device capabilities. + * @throws { BusinessError } 31500001 - Service exception. Possible causes: 1. A system error, such as null pointer, container-related exception; + * <br>2. N-API invocation exception, invalid N-API status. + * @throws { BusinessError } 31500003 - Unsubscribe Failed. Possible causes: 1. Callback removal failure; + * <br>2. N-API invocation exception, invalid N-API status; 3. IPC request exception. + * @syscap SystemCapability.MultimodalAwareness.Motion + * @since 20 + */ + function off(type: 'holdingHandChanged', callback?: Callback<HoldingHandStatus>): void; } export default motion; diff --git a/api/@ohos.multimodalInput.infraredEmitter.d.ts b/api/@ohos.multimodalInput.infraredEmitter.d.ts index 13d9f50bc0ae4812a7e7e1f956a7ed21764f3df6..52ccddd6d03942419839febce3a1b8f2f9694362 100644 --- a/api/@ohos.multimodalInput.infraredEmitter.d.ts +++ b/api/@ohos.multimodalInput.infraredEmitter.d.ts @@ -19,7 +19,7 @@ */ /** - * Declares the APIs for configuring attributes of the IR emitter. + * The infraredEmitter module generates IR signals of the specified frequency and size, and queries the frequency range supported by the device. * * @namespace infraredEmitter * @syscap SystemCapability.MultimodalInput.Input.InfraredEmitter @@ -27,7 +27,7 @@ */ declare namespace infraredEmitter { /** - * Infrared frequency range supported by the IR emitter. + * Defines the frequency range of IR signals. * * @interface InfraredFrequency * @syscap SystemCapability.MultimodalInput.Input.InfraredEmitter @@ -35,7 +35,7 @@ declare namespace infraredEmitter { * @since 12 */ /** - * Infrared frequency range supported by the IR emitter. + * Defines the frequency range of IR signals. * * @interface InfraredFrequency * @syscap SystemCapability.MultimodalInput.Input.InfraredEmitter @@ -43,7 +43,7 @@ declare namespace infraredEmitter { */ interface InfraredFrequency { /** - * Maximum frequency. + * Maximum frequency, in Hz. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InfraredEmitter @@ -51,7 +51,7 @@ declare namespace infraredEmitter { * @since 12 */ /** - * Maximum frequency. + * Maximum frequency, in Hz. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InfraredEmitter @@ -60,7 +60,7 @@ declare namespace infraredEmitter { max: number; /** - * Minimum frequency. + * Minimum frequency, in Hz. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InfraredEmitter @@ -68,7 +68,7 @@ declare namespace infraredEmitter { * @since 12 */ /** - * Minimum frequency. + * Minimum frequency, in Hz. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InfraredEmitter @@ -78,11 +78,13 @@ declare namespace infraredEmitter { } /** - * Transmitted IR signal. + * Generates IR signals at the specified frequency and level. * * @permission ohos.permission.MANAGE_INPUT_INFRARED_EMITTER * @param { number} infraredFrequency - IR infrared frequency, in Hz. - * @param { Array<number>} pattern - Pattern of signal transmission in alternate on/off mode, in microseconds. + * @param { Array<number>} pattern - IR level signal, in μs. The value must be an even number within the value range of [0,1024]. + * For example, in the IR level signal array [100,200,300,400], 100 μs is a high-level signal, + * 200 μs is a low-level signal, 300 μs is a high-level signal, and 400 μs is a low-level signal. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -92,11 +94,13 @@ declare namespace infraredEmitter { * @since 12 */ /** - * Transmitted IR signal. + * Generates IR signals at the specified frequency and level. * * @permission ohos.permission.MANAGE_INPUT_INFRARED_EMITTER * @param { number} infraredFrequency - IR infrared frequency, in Hz. - * @param { Array<number>} pattern - Pattern of signal transmission in alternate on/off mode, in microseconds. + * @param { Array<number>} pattern - IR level signal, in μs. The value must be an even number within the value range of [0,1024]. + * For example, in the IR level signal array [100,200,300,400], 100 μs is a high-level signal, + * 200 μs is a low-level signal, 300 μs is a high-level signal, and 400 μs is a low-level signal. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -106,10 +110,10 @@ declare namespace infraredEmitter { function transmitInfrared(infraredFrequency: number, pattern: Array<number>): void; /** - * Obtains the infrared frequency supported by the IR emitter. + * Queries the frequency range of IR signals supported by the mobile phone. * * @permission ohos.permission.MANAGE_INPUT_INFRARED_EMITTER - * @returns { Array<InfraredFrequency> } The return value is an array of InfraredFrequency objects, indicating the infrared frequency ranges supported by the IR emitter. + * @returns { Array<InfraredFrequency> } Frequency range, including multiple groups of maximum and minimum frequencies. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system application. * @syscap SystemCapability.MultimodalInput.Input.InfraredEmitter @@ -117,10 +121,10 @@ declare namespace infraredEmitter { * @since 12 */ /** - * Obtains the infrared frequency supported by the IR emitter. + * Queries the frequency range of IR signals supported by the mobile phone. * * @permission ohos.permission.MANAGE_INPUT_INFRARED_EMITTER - * @returns { Array<InfraredFrequency> } The return value is an array of InfraredFrequency objects, indicating the infrared frequency ranges supported by the IR emitter. + * @returns { Array<InfraredFrequency> } Frequency range, including multiple groups of maximum and minimum frequencies. * @throws { BusinessError } 201 - Permission denied. * @syscap SystemCapability.MultimodalInput.Input.InfraredEmitter * @since 15 diff --git a/api/@ohos.multimodalInput.inputConsumer.d.ts b/api/@ohos.multimodalInput.inputConsumer.d.ts index d8c36bfdcda789d8e711926ffc04d0e61ed4626a..b2972e7bd20a3ad5ca7538d9beb26147a3eea113 100644 --- a/api/@ohos.multimodalInput.inputConsumer.d.ts +++ b/api/@ohos.multimodalInput.inputConsumer.d.ts @@ -18,79 +18,99 @@ * @kit InputKit */ +/*** if arkts 1.1 */ import { Callback } from './@ohos.base'; import { KeyEvent } from './@ohos.multimodalInput.keyEvent'; +/*** endif */ +/*** if arkts 1.2 */ +import { Callback } from './@ohos.base'; +/*** endif */ /** - * The event of key input management module is configured to subscribe and unsubscribe system keys. + * The inputConsumer module provides APIs for subscribing to and unsubscribing from global shortcut keys. * * @namespace inputConsumer * @syscap SystemCapability.MultimodalInput.Input.InputConsumer - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace inputConsumer { /** - * Defines event of key that user want to subscribe or unsubscribe. + * Represents combination key options. * * @interface KeyOptions * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @systemapi hide for inner use - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ interface KeyOptions { /** - * The pre-keys that want to subscribe or unsubscribe. + * Preceding key set. The number of preceding keys ranges from 0 to 4. There is no requirement on the sequence of the keys. + * For example, in the combination keys Ctrl+Alt+A, Ctrl+Alt are called preceding keys. * * @type { Array<number> } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @systemapi hide for inner use - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ preKeys: Array<number>; /** - * The post position key that want to subscribe or unsubscribe. + * Final key. This parameter is mandatory. A callback is triggered by the final key. + * For example, in the combination keys Ctrl+Alt+A, A is called the final key. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @systemapi hide for inner use - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ finalKey: number; /** - * The final key press down or up. + * Whether the final key is pressed. + * The value true indicates that the key is pressed, and the value false indicates the opposite. * * @type { boolean } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @systemapi hide for inner use - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ isFinalKeyDown: boolean; /** - * Duration of final key press. + * Duration for holding down the key, in μs. + * If the value of this field is 0, a callback is triggered immediately. + * If the value of this field is greater than 0 and isFinalKeyDown is true, + * a callback is triggered when the key keeps being pressed after the specified duration expires. + * If isFinalKeyDown is false, a callback is triggered when the key is released before the specified duration expires. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @systemapi hide for inner use - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ finalKeyDownDuration: number; /** - * Whether to report repeated key events. By default, the value is true if it is left unspecified. + * Whether to report repeated key events. The value true means to report repeated key events, and the value false means the opposite. + * The default value is true. * * @type { ?boolean } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @systemapi hide for inner use - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ isRepeat?: boolean; } /** - * Defines the shortcut key structure. + * Defines shortcut key options. * * @typedef HotkeyOptions * @syscap SystemCapability.MultimodalInput.Input.InputConsumer @@ -98,7 +118,9 @@ declare namespace inputConsumer { */ interface HotkeyOptions { /** - * Defines modifier keys. One or two modifier keys are supported. + * Modifier key set (including Ctrl, Shift, and Alt). A maximum of two modifier keys are supported. + * There is no requirement on the sequence of modifier keys. + * For example, in Ctrl+Shift+Esc, Ctrl and Shift are modifier keys. * * @type { Array<number> } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer @@ -107,7 +129,8 @@ declare namespace inputConsumer { preKeys: Array<number>; /** - * Defines modified keys. + * Modified key, which can be any key except the modifier keys and Meta key. For details about the keys, see Keycode. + * For example, in Ctrl+Shift+Esc, Esc is the modified key. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer @@ -116,8 +139,9 @@ declare namespace inputConsumer { finalKey: number; /** - * Whether to report repeated key events. By default, the value is true if it is left unspecified. - * + * Whether to report repeated key events. The value true means to report repeated key events, and the value false means the opposite. + * The default value is true. + * * @type { ?boolean } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @since 14 @@ -126,7 +150,7 @@ declare namespace inputConsumer { } /** - * Key consunption settings. + * Sets the key event consumption configuration. * * @typedef KeyPressedConfig * @syscap SystemCapability.MultimodalInput.Input.InputConsumer @@ -134,7 +158,7 @@ declare namespace inputConsumer { */ interface KeyPressedConfig { /** - * Key value. Currently listening is supported only for KEYCODE_VOLUME_UP and KEYCODE_VOLUME_DOWN keys. + * Key value. Currently, only the KEYCODE_VOLUME_UP and KEYCODE_VOLUME_DOWN keys are supported. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer @@ -143,8 +167,7 @@ declare namespace inputConsumer { key: number; /** - * Key event type. The value 1 indicates key press and the value 2 indicates key release. Currently - * listening is supported only for key press events. + * Key event type. Currently, this parameter can only be set to 1, indicating key press. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer @@ -153,7 +176,7 @@ declare namespace inputConsumer { action: number; /** - * Whether to report repeated key events. + * The value true means to report repeated key events, and the value false means the opposite. The default value is true. * * @type { boolean } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer @@ -163,7 +186,7 @@ declare namespace inputConsumer { } /** - * Shield mode. + * Enumerates shortcut key shield modes. * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.InputConsumer @@ -172,7 +195,7 @@ declare namespace inputConsumer { */ enum ShieldMode { /** - * Factory mode shield all key events + * Factory mode, which means to shield all shortcut keys. * * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @systemapi hide for inner use @@ -182,11 +205,13 @@ declare namespace inputConsumer { } /** - * Subscribe system keys. - * - * @param { 'key' } type - type of the inputevent about input which is to be subscribed. - * @param { KeyOptions } keyOptions - the key events about input which is to be subscribed. - * @param { Callback<KeyOptions> } callback - callback function, receive reported data. + * Enables listening for combination key events. + * This API uses an asynchronous callback to return the combination key data when a combination key event that meets the specified condition occurs. + * + * @param { 'key' } type - Event type. Currently, only key is supported. + * @param { KeyOptions } keyOptions - Combination key options. + * @param { Callback<KeyOptions> } callback - Callback used to return the combination key data + * when a combination key event that meets the specified condition occurs. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputConsumer @@ -194,26 +219,30 @@ declare namespace inputConsumer { * @since 8 */ /** - * Subscribe system keys. - * - * @param { 'key' } type - type of the inputevent about input which is to be subscribed. - * @param { KeyOptions } keyOptions - the key events about input which is to be subscribed. - * @param { Callback<KeyOptions> } callback - callback function, receive reported data. + * Enables listening for combination key events. + * This API uses an asynchronous callback to return the combination key data when a combination key event that meets the specified condition occurs. + * + * @param { 'key' } type - Event type. Currently, only key is supported. + * @param { KeyOptions } keyOptions - Combination key options. + * @param { Callback<KeyOptions> } callback - Callback used to return the combination key data + * when a combination key event that meets the specified condition occurs. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @systemapi hide for inner use - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function on(type: 'key', keyOptions: KeyOptions, callback: Callback<KeyOptions>): void; /** - * Subscribe system keys. + * Disables listening for combination key events. * - * @param { 'key' } type - type of the inputevent about input which is to be subscribed. - * @param { KeyOptions } keyOptions - the key events about input which is to be subscribed. - * @param { Callback<KeyOptions> } callback - callback function, receive reported data. + * @param { 'key' } type - Event type. Currently, only key is supported. + * @param { KeyOptions } keyOptions - Combination key options. + * @param { Callback<KeyOptions> } callback - Callback to unregister. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputConsumer @@ -221,27 +250,29 @@ declare namespace inputConsumer { * @since 8 */ /** - * Subscribe system keys. + * Disables listening for combination key events. * - * @param { 'key' } type - type of the inputevent about input which is to be subscribed. - * @param { KeyOptions } keyOptions - the key events about input which is to be subscribed. - * @param { Callback<KeyOptions> } callback - callback function, receive reported data. + * @param { 'key' } type - Event type. Currently, only key is supported. + * @param { KeyOptions } keyOptions - Combination key options. + * @param { Callback<KeyOptions> } callback - Callback to unregister. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @systemapi hide for inner use - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function off(type: 'key', keyOptions: KeyOptions, callback?: Callback<KeyOptions>): void; /** - * Sets whether shield key event interception, only support shield key event. + * Sets the shortcut key shield status. * * @permission ohos.permission.INPUT_CONTROL_DISPATCHING - * @param { ShieldMode } shieldMode - According the shield mode select shield key event range. - * @param { boolean } isShield - Indicates whether control key event dispatch. The value <b>true</b> indicates - * all key events directly dispatch to window, if the value <b>false</b> indicates not shield shortcut key. + * @param { ShieldMode } shieldMode - Shortcut key shield mode. Currently, only FACTORY_MODE is supported, which means to shield all shortcut keys. + * @param { boolean } isShield - Whether to enable shortcut key shielding. + * The value true means to enable shortcut key shielding, and the value false indicates the opposite. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -253,10 +284,10 @@ declare namespace inputConsumer { function setShieldStatus(shieldMode: ShieldMode, isShield: boolean): void; /** - * Gets shield event interception status corresponding to shield mode + * Obtains the shortcut key shield status. * * @permission ohos.permission.INPUT_CONTROL_DISPATCHING - * @param { ShieldMode } shieldMode - According the shield mode select shield key event range. + * @param { ShieldMode } shieldMode - Shortcut key shield mode. Currently, only FACTORY_MODE is supported, which means to shield all shortcut keys. * @returns { boolean } Returns true if shield event interception, returns false otherwise. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permission error. @@ -271,7 +302,7 @@ declare namespace inputConsumer { /** * Obtains all system hotkeys. This API uses a promise to return the result. * - * @returns { Promise<Array<HotkeyOptions>> } All system hotkeys. + * @returns { Promise<Array<HotkeyOptions>> } Promise used to return the list of all system shortcut keys. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @since 14 @@ -279,11 +310,12 @@ declare namespace inputConsumer { function getAllSystemHotkeys(): Promise<Array<HotkeyOptions>>; /** - * Listening for hotkey event changes. - * - * @param { 'hotkeyChange' } type - Type of the hotkey events. - * @param { HotkeyOptions } hotkeyOptions - hotkey events. - * @param { Callback<HotkeyOptions> } callback - Callback used to return hotkey events. + * Subscribes to application shortcut key change events based on the specified options. + * This API uses an asynchronous callback to return the result. + * + * @param { 'hotkeyChange' } type - Event type. This parameter has a fixed value of hotkeyChange. + * @param { HotkeyOptions } hotkeyOptions - Shortcut key options. + * @param { Callback<HotkeyOptions> } callback - Callback used to return the application shortcut key change event. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. @@ -292,49 +324,52 @@ declare namespace inputConsumer { * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @since 14 */ - function on(type: 'hotkeyChange', hotkeyOptions: HotkeyOptions, callback: Callback<HotkeyOptions>): void + function on(type: 'hotkeyChange', hotkeyOptions: HotkeyOptions, callback: Callback<HotkeyOptions>): void; /** - * Unsubscribe from hotkey event changes. - * - * @param { 'hotkeyChange' } type - Type of the hotkey events. - * @param { HotkeyOptions } hotkeyOptions - Hotkey events. - * @param { Callback<HotkeyOptions> } callback - Callback used to return hotkey events. + * Unsubscribes from application shortcut key change events. + * + * @param { 'hotkeyChange' } type - Event type. This parameter has a fixed value of hotkeyChange. + * @param { HotkeyOptions } hotkeyOptions - Shortcut key options. + * @param { Callback<HotkeyOptions> } callback - Callback to unregister. + * If this parameter is left unspecified, listening will be disabled for all callbacks registered for the specified shortcut key options. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @since 14 */ - function off(type: 'hotkeyChange', hotkeyOptions: HotkeyOptions, callback?: Callback<HotkeyOptions>): void + function off(type: 'hotkeyChange', hotkeyOptions: HotkeyOptions, callback?: Callback<HotkeyOptions>): void; /** - * Consumed key events. Only the VolumeUp and VolumeDown keys are supported. When the current application process - * is the focus window's process, a callback will be triggered if the user operates the specified key. + * Subscribes to key press events. This API uses an asynchronous callback to return the result. + * If the current application is in the foreground focus window, a callback is triggered when the specified key is pressed. * - * @param { 'keyPressed' } type - Type of the key events. - * @param { KeyPressedConfig } options - Key consumption settings. - * @param { Callback<KeyEvent> } callback - Callback used to return key events. + * @param { 'keyPressed' } type - Event type. This parameter has a fixed value of keyPressed. + * @param { KeyPressedConfig } options - Sets the key event consumption configuration. + * @param { Callback<KeyEvent> } callback - Callback used to return key press events. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @since 16 */ - function on(type: 'keyPressed', options: KeyPressedConfig, callback: Callback<KeyEvent>): void + function on(type: 'keyPressed', options: KeyPressedConfig, callback: Callback<KeyEvent>): void; /** - * Cancels consumption of key events. + * Unsubscribes from key press events. + * This API uses an asynchronous callback to return the result. * - * @param { 'keyPressed' } type - Type of the hotkey events. - * @param { Callback<KeyEvent> } callback - Callback used to return hotkey events. + * @param { 'keyPressed' } type - Event type. This parameter has a fixed value of keyPressed. + * @param { Callback<KeyEvent> } callback - Callback to unregister. + * If this parameter is not specified, listening will be disabled for all registered callbacks. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.MultimodalInput.Input.InputConsumer * @since 16 */ - function off(type: 'keyPressed', callback?: Callback<KeyEvent>): void + function off(type: 'keyPressed', callback?: Callback<KeyEvent>): void; } export default inputConsumer; \ No newline at end of file diff --git a/api/@ohos.multimodalInput.inputDevice.d.ts b/api/@ohos.multimodalInput.inputDevice.d.ts index b1ed681edf92a5ff5929223f0f6e8c2453a59766..c6d707612f4d0372d9b04e2d7a581d8d686e3ad1 100644 --- a/api/@ohos.multimodalInput.inputDevice.d.ts +++ b/api/@ohos.multimodalInput.inputDevice.d.ts @@ -18,38 +18,51 @@ * @kit InputKit */ +/*** if arkts 1.1 */ import type { Callback, AsyncCallback } from './@ohos.base'; import type { KeyCode } from './@ohos.multimodalInput.keyCode'; +/*** endif */ +/*** if arkts 1.2 */ +import { Callback, AsyncCallback } from './@ohos.base'; +/*** endif */ /** - * The input device management module is configured to obtain an ID and device information of an input device. - * + * The inputDevice module implements input device management functions such as listening for the connection + * and disconnection of input devices and querying input device information such as the device name. + * * @namespace inputDevice * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace inputDevice { /** - * Add or remove device + * Enumerates hot swap events. + * * @typedef { 'add' | 'remove' } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ type ChangedType = 'add' | 'remove'; /** - * The type of input device + * Enumerates input source of the axis. For example, if a mouse reports an x-axis event, the input source of the x-axis is the mouse. + * * @typedef { 'keyboard' | 'mouse' | 'touchpad' | 'touchscreen' | 'joystick' | 'trackball' } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ type SourceType = 'keyboard' | 'mouse' | 'touchpad' | 'touchscreen' | 'joystick' | 'trackball'; /** - * Axis Type of the input event + * Defines the axis type of an input device. + * * @typedef { 'touchmajor'| 'touchminor' | 'orientation' | 'x' | 'y' | 'pressure' | 'toolminor' | 'toolmajor' | 'null' } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ type AxisType = 'touchmajor' @@ -63,13 +76,15 @@ declare namespace inputDevice { | 'null'; /** + * Enumerates keyboard types. + * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 9 */ enum KeyboardType { /** - * None + * Keyboard without keys. * * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 9 @@ -77,7 +92,7 @@ declare namespace inputDevice { NONE = 0, /** - * Unknown key + * Keyboard with unknown keys. * * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 9 @@ -85,7 +100,7 @@ declare namespace inputDevice { UNKNOWN = 1, /** - * Alphabetical keyboard + * Full keyboard. * * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 9 @@ -93,7 +108,7 @@ declare namespace inputDevice { ALPHABETIC_KEYBOARD = 2, /** - * Digital keyboard + * Keypad. * * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 9 @@ -101,7 +116,7 @@ declare namespace inputDevice { DIGITAL_KEYBOARD = 3, /** - * Stylus + * Stylus. * * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 9 @@ -109,7 +124,7 @@ declare namespace inputDevice { HANDWRITING_PEN = 4, /** - * Remote control + * Remote control. * * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 9 @@ -118,7 +133,7 @@ declare namespace inputDevice { } /** - * Enumerates function keys. + * Enumerates function key types. * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice @@ -126,7 +141,7 @@ declare namespace inputDevice { */ enum FunctionKey { /** - * CapsLock key. Enabling or disabling the CapsLock key is allowed only for input keyboard extensions. + * CapsLock key. This key can be enabled or disabled only for the input keyboard extension. * * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 15 @@ -135,49 +150,57 @@ declare namespace inputDevice { } /** - * Defines the listener for input device events. + * Provides hot swap information about an input device. * * @interface DeviceListener * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ interface DeviceListener { /** - * Type of the input device event. The options are add and remove. + * Device change type, which indicates whether an input device is inserted or removed. * * @type { ChangedType } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ type: ChangedType; /** - * ID of the input device for the reported input device event. - * + * Unique ID of the input device. + * If a physical device is repeatedly reinstalled or restarted, its ID may change. + * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ deviceId: number; } /** - * Starts listening for an input device event. - * - * @param { 'change' } type - Type of the input device event, which is **change**. - * @param { Callback<DeviceListener> } listener - Callback for the input device event. + * Enables listening for device hot swap events. + * When performing this operation, you need to connect to external devices such as a mouse, keyboard, and touchscreen. + * + * @param { 'change' } type - Event type. This field has a fixed value of change. + * @param { Callback<DeviceListener> } listener - Listener for events of the input device. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function on(type: 'change', listener: Callback<DeviceListener>): void; /** - * Stops listening for an input device event. - * - * @param { 'change' } type - Type of the input device event, which is **change**. - * @param { Callback<DeviceListener> } listener - Callback for the input device event. + * Disables listening for device hot swap events. + * This API is called before the application exits. + * + * @param { 'change' } type - Event type. This field has a fixed value of change. + * @param { Callback<DeviceListener> } listener - Callback to unregister. + * If this parameter is left unspecified, listening for hot swap events of all input devices will be canceled. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice @@ -186,94 +209,102 @@ declare namespace inputDevice { function off(type: 'change', listener?: Callback<DeviceListener>): void; /** - * Defines axis information about events that can be reported by an input device. - * For example, a touchscreen may report information such as x, y, and pressure, - * which indicate the x-axis coordinate, y-axis coordinate, and pressure, respectively. + * Defines the axis range of an input device. * * @interface AxisRange * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ interface AxisRange { /** - * Input source type of the axis. For example, if a mouse reports an x-axis event, - * the source of the x-axis is the mouse. + * Input source of the axis. * * @type { SourceType } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ source: SourceType; /** - * Type of the axis. for example, the x-axis, y-axis, and pressure axis. + * Axis type. * * @type { AxisType } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ axis: AxisType; /** - * Maximum value of the data reported on this axis. + * Maximum value of the axis. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ max: number; /** - * Minimum value of the data reported on this axis. + * Minimum value of the axis. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ min: number; /** - * Fuzz value of the data reported on this axis. + * Fuzzy value of the axis. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ fuzz: number; /** - * Flat value of the data reported on this axis. + * Benchmark value of the axis. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ flat: number; /** - * Resolution value of the data reported on this axis. + * Resolution of the axis. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ resolution: number; } /** - * Defines the information about an input device. + * Provides information about an input device. * * @interface InputDeviceData * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ interface InputDeviceData { /** - * Id of the input device. - * + * Unique ID of the input device. + * If the same physical device is repeatedly reinstalled or restarted, its ID may change. + * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ id: number; @@ -282,88 +313,99 @@ declare namespace inputDevice { * * @type { string } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ name: string; /** - * Source type supported by the input device. For example, if a keyboard is attached with a touchpad, - * the device has two input sources: keyboard and touchpad. + * Input sources supported by the input device. An input device can have multiple input sources. + * For example, if a keyboard is equipped with a touchpad, the input device supports both keyboard + * and touchpad input capabilities. * * @type { Array<SourceType> } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ sources: Array<SourceType>; /** - * Axis range of the input device. + * Axis information of the input device. * * @type { Array<AxisRange> } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ axisRanges: Array<AxisRange>; /** - * Bus of the input device. + * Bus type of the input device. By default, the bus type reported by the input device prevails. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ bus: number; /** - * Product of the input device. + * Product information of the input device. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ product: number; /** - * Vendor of the input device. + * Vendor information of the input device. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ vendor: number; /** - * Version of the input device. + * Version information of the input device. * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ version: number; /** - * Physical path of the input device. + * Physical address of the input device. * * @type { string } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ phys: string; /** - * Unique identifier of the input device. + * Unique ID of the input device. * * @type { string } * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ uniq: string; } /** * Obtains the IDs of all input devices. - * - * @param { AsyncCallback<Array<number>> } callback - Callback function, receive reported data + * This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<Array<number>> } callback - Callback used to return the IDs of all input devices. * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 8 * @deprecated since 9 @@ -373,8 +415,9 @@ declare namespace inputDevice { /** * Obtains the IDs of all input devices. - * - * @returns { Promise<Array<number>> } + * This API uses a promise to return the result. + * + * @returns { Promise<Array<number>> } Promise used to return the IDs of all input devices. * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 8 * @deprecated since 9 @@ -383,10 +426,11 @@ declare namespace inputDevice { function getDeviceIds(): Promise<Array<number>>; /** - * Obtain the information about an input device. - * - * @param { number } deviceId - ID of the input device whose information is to be obtained. - * @param { AsyncCallback<InputDeviceData> } callback - Callback function, receive reported data + * Obtains the information about the input device with the specified ID. + * This API uses an asynchronous callback to return the result. + * + * @param { number } deviceId - ID of the input device. + * @param { AsyncCallback<InputDeviceData> } callback - Callback used to return the information about the input device. * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 8 * @deprecated since 9 @@ -395,10 +439,11 @@ declare namespace inputDevice { function getDevice(deviceId: number, callback: AsyncCallback<InputDeviceData>): void; /** - * Obtain the information about an input device. - * - * @param { number } deviceId - ID of the input device whose information is to be obtained. - * @returns { Promise<InputDeviceData> } + * Obtains the information about the input device with the specified ID. + * This API uses a promise to return the result. + * + * @param { number } deviceId - ID of the input device. + * @returns { Promise<InputDeviceData> } Promise used to return the information about the input device. * @syscap SystemCapability.MultimodalInput.Input.InputDevice * @since 8 * @deprecated since 9 @@ -408,53 +453,63 @@ declare namespace inputDevice { /** * Obtains the IDs of all input devices. - * - * @param { AsyncCallback<Array<number>> } callback - Callback function, receive reported data + * This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<Array<number>> } callback - Callback used to return the IDs of all input devices. id is the unique ID of an input device. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function getDeviceList(callback: AsyncCallback<Array<number>>): void; /** * Obtains the IDs of all input devices. - * - * @returns { Promise<Array<number>> } + * This API uses a promise to return the result. + * + * @returns { Promise<Array<number>> } - Promise used to return the IDs of all input devices. * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function getDeviceList(): Promise<Array<number>>; /** - * Obtain the information about an input device. - * - * @param { number } deviceId - ID of the input device whose information is to be obtained. - * @param { AsyncCallback<InputDeviceData> } callback - Callback function, receive reported data + * Obtains information about the specified input device. + * This API uses an asynchronous callback to return the result. + * + * @param { number } deviceId - ID of the input device. + * @param { AsyncCallback<InputDeviceData> } callback - Callback used to return information about the input device, + * including device ID, name, supported source, physical address, version information, and product information. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function getDeviceInfo(deviceId: number, callback: AsyncCallback<InputDeviceData>): void; /** - * Obtain the information about an input device. - * - * @param { number } deviceId - ID of the input device whose information is to be obtained. - * @returns { Promise<InputDeviceData> } + * Obtains the information about the input device with the specified ID. + * This API uses a promise to return the result. + * + * @param { number } deviceId - ID of the input device. + * @returns { Promise<InputDeviceData> } Promise used to return the information about the input device. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function getDeviceInfo(deviceId: number): Promise<InputDeviceData>; /** - * Obtain the information about an input device. + * Obtains information about the specified input device. * - * @param { number } deviceId - ID of the input device whose information is to be obtained. - * @returns { InputDeviceData } + * @param { number } deviceId - ID of the input device. + * @returns { InputDeviceData } Information about the input device, including device ID, name, supported source, + * physical address, version information, and product information. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice @@ -463,11 +518,12 @@ declare namespace inputDevice { function getDeviceInfoSync(deviceId: number): InputDeviceData; /** - * Checks whether the specified key codes of an input device are supported. - * - * @param { number } deviceId - ID of the input device. - * @param { Array<KeyCode> } keys - Key codes of the input device, You can query maximum of five key codes at a time. - * @param { AsyncCallback<Array<boolean>> } callback -Indicates whether the specified key codes are supported. + * Checks whether the input device supports the specified keys. + * This API uses an asynchronous callback to return the result. + * + * @param { number } deviceId - ID of the input device. The device ID changes if the same physical device is repeatedly removed and inserted. + * @param { Array<KeyCode> } keys - Keycodes to be queried. A maximum of five keycodes can be specified. + * @param { AsyncCallback<Array<boolean>> } callback -Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice @@ -476,10 +532,10 @@ declare namespace inputDevice { function supportKeys(deviceId: number, keys: Array<KeyCode>, callback: AsyncCallback<Array<boolean>>): void; /** - * Checks whether the specified key codes of an input device are supported. + * Checks whether the input device supports the specified keys. This API uses a promise to return the result. * - * @param { number } deviceId - ID of the input device. - * @param { Array<KeyCode> } keys - Key codes of the input device, You can query maximum of five key codes at a time. + * @param { number } deviceId - ID of the input device. The device ID changes if the same physical device is repeatedly removed and inserted. + * @param { Array<KeyCode> } keys - Keycodes to be queried. A maximum of five keycodes can be specified. * @returns { Promise<Array<boolean>> } Returns a result indicating whether the specified key codes are supported. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -489,11 +545,12 @@ declare namespace inputDevice { function supportKeys(deviceId: number, keys: Array<KeyCode>): Promise<Array<boolean>>; /** - * Checks whether the specified key codes of an input device are supported. + * Checks whether the input device supports the specified keys. * - * @param { number } deviceId - ID of the input device. - * @param { Array<KeyCode> } keys - Key codes of the input device, You can query maximum of five key codes at a time. - * @returns { Array<boolean> } Returns a result indicating whether the specified key codes are supported. + * @param { number } deviceId - ID of the input device. The device ID changes if the same physical device is repeatedly removed and inserted. + * @param { Array<KeyCode> } keys - Keycodes to be queried. A maximum of five keycodes can be specified. + * @returns { Array<boolean> } Result indicating whether the input device supports the keycode value. + * The value true indicates yes, and the value false indicates no. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice @@ -502,10 +559,12 @@ declare namespace inputDevice { function supportKeysSync(deviceId: number, keys: Array<KeyCode>): Array<boolean>; /** - * Query the keyboard type of the input device. - * - * @param { number } deviceId - ID of the specified input device. - * @param { AsyncCallback<KeyboardType> } callback - Returns the keyboard type. + * Obtains the keyboard type of the input device, such as full keyboard and numeric keypad. + * This API uses an asynchronous callback to return the result. + * The keyboard type of the input device is subject to the result returned by the API. + * + * @param { number } deviceId - Unique ID of the input device. If the same physical device is repeatedly reinstalled or restarted, its ID may change. + * @param { AsyncCallback<KeyboardType> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice @@ -514,10 +573,11 @@ declare namespace inputDevice { function getKeyboardType(deviceId: number, callback: AsyncCallback<KeyboardType>): void; /** - * Query the keyboard type of the input device. - * - * @param { number } deviceId - ID of the specified input device. - * @returns { Promise<KeyboardType> } Returns the keyboard type. + * Obtains the keyboard type of an input device. + * This API uses a promise to return the result. + * + * @param { number } deviceId - Unique ID of the input device. If the same physical device is repeatedly reinstalled or restarted, its ID may change. + * @returns { Promise<KeyboardType> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice @@ -526,10 +586,10 @@ declare namespace inputDevice { function getKeyboardType(deviceId: number): Promise<KeyboardType>; /** - * Query the keyboard type of the input device. + * Obtains the keyboard type of the input device. * - * @param { number } deviceId - ID of the specified input device. - * @returns { KeyboardType } Returns the keyboard type. + * @param { number } deviceId - Unique ID of the input device. If the same physical device is repeatedly reinstalled or restarted, its ID may change. + * @returns { KeyboardType } Keyboard type. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputDevice @@ -538,9 +598,10 @@ declare namespace inputDevice { function getKeyboardTypeSync(deviceId: number): KeyboardType; /** - * Setting the Keyboard Repetition Delay. - * - * @param { number } delay - Repeat delay time, the unit is ms. + * Sets the keyboard repeat delay. + * This API uses an asynchronous callback to return the result. + * + * @param { number } delay - Keyboard repeat delay, in ms. The value range is [300, 1000] and the default value is 500. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -552,10 +613,11 @@ declare namespace inputDevice { function setKeyboardRepeatDelay(delay: number, callback: AsyncCallback<void>): void; /** - * Setting the Keyboard Repetition Delay. - * - * @param { number } delay - Repeat delay time, the unit is ms. - * @returns { Promise<void> } Returns the result through a promise. + * Sets the keyboard repeat delay. + * This API uses a promise to return the result. + * + * @param { number } delay - Keyboard repeat delay, in ms. The value range is [300, 1000] and the default value is 500. + * @returns { Promise<void> } A promise that returns no value. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -566,9 +628,10 @@ declare namespace inputDevice { function setKeyboardRepeatDelay(delay: number): Promise<void>; /** - * Get the Keyboard Repetition Delay. - * - * @param { AsyncCallback<number> } callback - Callback used to return the result. + * Obtains the keyboard repeat delay. + * This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<number> } callback - Callback used to return the keyboard repeat delay. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -579,9 +642,10 @@ declare namespace inputDevice { function getKeyboardRepeatDelay(callback: AsyncCallback<number>): void; /** - * Get the Keyboard Repetition Delay. - * - * @returns { Promise<number> } Returns the result through a promise. + * Obtains the keyboard repeat delay. + * This API uses a promise to return the result. + * + * @returns { Promise<number> } Promise used to return the keyboard repeat delay. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -592,9 +656,10 @@ declare namespace inputDevice { function getKeyboardRepeatDelay(): Promise<number>; /** - * Setting the Keyboard Key Repetition Rate. - * - * @param { number } rate - Repetition rate, the unit is ms. + * Sets the keyboard repeat rate. + * This API uses an asynchronous callback to return the result. + * + * @param { number } rate - Keyboard repeat rate, in ms/time. The value range is [36, 100] and the default value is 50. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -606,10 +671,11 @@ declare namespace inputDevice { function setKeyboardRepeatRate(rate: number, callback: AsyncCallback<void>): void; /** - * Setting the Keyboard Key Repetition Rate. - * - * @param { number } rate - Repetition rate, the unit is ms. - * @returns { Promise<void> } Returns the result through a promise. + * Sets the keyboard repeat rate. + * This API uses a promise to return the result. + * + * @param { number } rate - Keyboard repeat rate, in ms/time. The value range is [36, 100] and the default value is 50. + * @returns { Promise<void> } A promise that returns no value. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -620,9 +686,10 @@ declare namespace inputDevice { function setKeyboardRepeatRate(rate: number): Promise<void>; /** - * Get Keyboard Key Repetition Rate. - * - * @param { AsyncCallback<number> } callback - Callback used to return the result. + * Obtains the keyboard repeat rate. + * This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<number> } callback - Callback used to return the keyboard repeat rate. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -633,9 +700,10 @@ declare namespace inputDevice { function getKeyboardRepeatRate(callback: AsyncCallback<number>): void; /** - * Get Keyboard Key Repetition Rate. - * - * @returns { Promise<number> } Returns the result through a promise. + * Obtains the keyboard repeat rate. + * This API uses a promise to return the result. + * + * @returns { Promise<number> } Promise used to return the keyboard repeat rate. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -646,7 +714,8 @@ declare namespace inputDevice { function getKeyboardRepeatRate(): Promise<number>; /** - * Obtains the interval since the last input. + * Obtains the interval (including the device sleep time) elapsed since the last system input event. + * This API uses a promise to return the result. * * @returns { Promise<number> } Promise used to return the interval since the last input. * @syscap SystemCapability.MultimodalInput.Input.InputDevice @@ -655,11 +724,14 @@ declare namespace inputDevice { function getIntervalSinceLastInput(): Promise<number>; /** - * Enabling and disabling the device node. - * + * Sets the input switch status of an input device. Take the touchscreen as an example. + * If the input switch is off, the touchscreen does not respond when being touched. + * If the input switch is on, the touchscreen wakes up when being touched. + * * @permission ohos.permission.INPUT_DEVICE_CONTROLLER * @param { number } deviceId - Device id. - * @param { boolean } enabled - Device node status. + * @param { boolean } enabled - Switch status of the input device. The value true indicates that the input device is enabled, + * and the value false indicates the opposite. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 201 - Permission verification failed. * The application does not have the permission required to call the API @@ -677,11 +749,13 @@ declare namespace inputDevice { function setInputDeviceEnabled(deviceId: number, enabled: boolean): Promise<void>; /** - * Sets whether to enable the function key. - * + * Specifies whether to enable a function key (for example, CapsLock). + * This API uses a promise to return the result. + * * @permission ohos.permission.INPUT_KEYBOARD_CONTROLLER - * @param { number } functionKey - Function key. - * @param { boolean } enabled - Whether to enable or disable the function key. + * @param { number } functionKey - Type of the function key. + * @param { boolean } enabled - Status of the function key. The value true indicates that the function key is enabled, + * and the value false indicates the opposite. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 201 - Permission verification failed. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -694,10 +768,12 @@ declare namespace inputDevice { function setFunctionKeyEnabled(functionKey: FunctionKey, enabled: boolean): Promise<void>; /** - * Checks whether the function key is enabled. - * - * @param { number } functionKey - Function key. - * @returns { Promise<boolean> } Returns the result through a promise. + * Checks whether the specified function key (for example, CapsLock) is enabled. + * This API uses a promise to return the result. + * + * @param { number } functionKey - Type of the function key. + * @returns { Promise<boolean> } Promise used to return the result. The value true indicates that the function key is enabled, + * and the value false indicates the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 3900002 - There is currently no keyboard device connected. diff --git a/api/@ohos.multimodalInput.inputDeviceCooperate.d.ts b/api/@ohos.multimodalInput.inputDeviceCooperate.d.ts index b0ae78993a0a609754d534c0ed954861bf050619..c302bdac7e8f3882ff68fe0a818e3e3ebf4e8e6a 100644 --- a/api/@ohos.multimodalInput.inputDeviceCooperate.d.ts +++ b/api/@ohos.multimodalInput.inputDeviceCooperate.d.ts @@ -21,7 +21,7 @@ import { AsyncCallback } from "./@ohos.base"; /** - * Events for input devices + * The inputDeviceCooperate module implements screen hopping for two or more networked devices to share the keyboard and mouse for collaborative operations. * * @namespace inputDeviceCooperate * @syscap SystemCapability.MultimodalInput.Input.Cooperator @@ -31,7 +31,8 @@ import { AsyncCallback } from "./@ohos.base"; declare namespace inputDeviceCooperate { /** - * Enumerates mouse traversal events. + * Enumerates screen hopping event. + * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.Cooperator * @systemapi hide for inner use. @@ -39,7 +40,8 @@ declare namespace inputDeviceCooperate { */ enum EventMsg { /** - * Mouse traversal message: mouse traversal is enabled. + * Screen hopping starts. + * * @syscap SystemCapability.MultimodalInput.Input.Cooperator * @systemapi hide for inner use * @since 9 @@ -47,7 +49,7 @@ declare namespace inputDeviceCooperate { MSG_COOPERATE_INFO_START = 200, /** - * Mouse traversal message: mouse traversal is successful. + * Screen hopping succeeds. * * @syscap SystemCapability.MultimodalInput.Input.Cooperator * @systemapi hide for inner use @@ -56,7 +58,8 @@ declare namespace inputDeviceCooperate { MSG_COOPERATE_INFO_SUCCESS = 201, /** - * Mouse traversal message: mouse traversal fails. + * Screen hopping fails. + * * @syscap SystemCapability.MultimodalInput.Input.Cooperator * @systemapi hide for inner use * @since 9 @@ -64,7 +67,7 @@ declare namespace inputDeviceCooperate { MSG_COOPERATE_INFO_FAIL = 202, /** - * Mouse traversal status: mouse traversal is enabled. + * Screen hopping is enabled. * * @syscap SystemCapability.MultimodalInput.Input.Cooperator * @systemapi hide for inner use @@ -73,7 +76,7 @@ declare namespace inputDeviceCooperate { MSG_COOPERATE_STATE_ON = 500, /** - * Mouse traversal status: mouse traversal is disabled. + * Screen hopping is disabled. * * @syscap SystemCapability.MultimodalInput.Input.Cooperator * @systemapi hide for inner use @@ -83,10 +86,11 @@ declare namespace inputDeviceCooperate { } /** - * Enable or disable the mouse traversal. - * - * @param { boolean } enable Whether to enable mouse traversal. - * @param { AsyncCallback<void> } callback Asynchronous callback function. + * Specifies whether to enable screen hopping. + * This API uses an asynchronous callback to return the result. + * + * @param { boolean } enable Whether to enable screen hopping. + * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Cooperator @@ -94,10 +98,11 @@ declare namespace inputDeviceCooperate { * @since 9 */ /** - * Enable or disable the mouse traversal. - * - * @param { boolean } enable Whether to enable mouse traversal. - * @param { AsyncCallback<void> } callback Asynchronous callback function. + * Specifies whether to enable screen hopping. + * This API uses an asynchronous callback to return the result. + * + * @param { boolean } enable Whether to enable screen hopping. + * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -108,10 +113,11 @@ declare namespace inputDeviceCooperate { function enable(enable: boolean, callback: AsyncCallback<void>): void; /** - * Enable or disable the mouse traversal. - * - * @param enable Whether to enable mouse traversal. - * @returns { Promise<void> } Promise returned by this function + * Specifies whether to enable screen hopping. + * This API uses a promise to return the result. + * + * @param enable Whether to enable screen hopping. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Cooperator @@ -119,10 +125,11 @@ declare namespace inputDeviceCooperate { * @since 9 */ /** - * Enable or disable the mouse traversal. - * - * @param enable Whether to enable mouse traversal. - * @returns { Promise<void> } Promise returned by this function + * Specifies whether to enable screen hopping. + * This API uses a promise to return the result. + * + * @param enable Whether to enable screen hopping. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -133,11 +140,12 @@ declare namespace inputDeviceCooperate { function enable(enable: boolean): Promise<void>; /** - * Starts mouse traversal. - * - * @param { string } sinkDeviceDescriptor Descriptor of the target network for mouse traversal. - * @param { number } srcInputDeviceId Identifier of the peripheral device for mouse traversal. - * @param { AsyncCallback<void> } callback Asynchronous callback function. + * Starts screen hopping. + * This API uses an asynchronous callback to return the result. + * + * @param { string } sinkDeviceDescriptor Descriptor of the target device for screen hopping. + * @param { number } srcInputDeviceId ID of the target device for screen hopping. + * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 4400001 - Incorrect descriptor for the target device. @@ -147,11 +155,12 @@ declare namespace inputDeviceCooperate { * @since 9 */ /** - * Starts mouse traversal. - * - * @param { string } sinkDeviceDescriptor Descriptor of the target network for mouse traversal. - * @param { number } srcInputDeviceId Identifier of the peripheral device for mouse traversal. - * @param { AsyncCallback<void> } callback Asynchronous callback function. + * Starts screen hopping. + * This API uses an asynchronous callback to return the result. + * + * @param { string } sinkDeviceDescriptor Descriptor of the target device for screen hopping. + * @param { number } srcInputDeviceId ID of the target device for screen hopping. + * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -164,11 +173,12 @@ declare namespace inputDeviceCooperate { function start(sinkDeviceDescriptor: string, srcInputDeviceId: number, callback: AsyncCallback<void>): void; /** - * Starts mouse traversal. - * - * @param { string } sinkDeviceDescriptor Descriptor of the target network for mouse traversal. - * @param { number } srcInputDeviceId Identifier of the peripheral device for mouse traversal. - * @returns { Promise<void> } Promise returned by this function + * Starts screen hopping. + * This API uses a promise to return the result. + * + * @param { string } sinkDeviceDescriptor Descriptor of the target device for screen hopping. + * @param { number } srcInputDeviceId ID of the target device for screen hopping. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 4400001 - Incorrect descriptor for the target device. @@ -178,11 +188,12 @@ declare namespace inputDeviceCooperate { * @since 9 */ /** - * Starts mouse traversal. - * - * @param { string } sinkDeviceDescriptor Descriptor of the target network for mouse traversal. - * @param { number } srcInputDeviceId Identifier of the peripheral device for mouse traversal. - * @returns { Promise<void> } Promise returned by this function + * Starts screen hopping. + * This API uses a promise to return the result. + * + * @param { string } sinkDeviceDescriptor Descriptor of the target device for screen hopping. + * @param { number } srcInputDeviceId ID of the target device for screen hopping. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -195,9 +206,10 @@ declare namespace inputDeviceCooperate { function start(sinkDeviceDescriptor: string, srcInputDeviceId: number): Promise<void>; /** - * Stops mouse traversal. - * - * @param { AsyncCallback<void> } callback Asynchronous callback function. + * Stops screen hopping. + * This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Cooperator @@ -205,9 +217,10 @@ declare namespace inputDeviceCooperate { * @since 9 */ /** - * Stops mouse traversal. - * - * @param { AsyncCallback<void> } callback Asynchronous callback function. + * Stops screen hopping. + * This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -218,17 +231,19 @@ declare namespace inputDeviceCooperate { function stop(callback: AsyncCallback<void>): void; /** - * Stops mouse traversal. + * Stops screen hopping. + * This API uses a promise to return the result. * - * @returns { Promise<void> } Promise returned by this function + * @returns { Promise<void> } Promise used to return the result. * @syscap SystemCapability.MultimodalInput.Input.Cooperator * @systemapi hide for inner use * @since 9 */ /** - * Stops mouse traversal. + * Stops screen hopping. + * This API uses a promise to return the result. * - * @returns { Promise<void> } Promise returned by this function + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @syscap SystemCapability.MultimodalInput.Input.Cooperator * @systemapi hide for inner use @@ -237,10 +252,11 @@ declare namespace inputDeviceCooperate { function stop(): Promise<void>; /** - * Obtains the status of the mouse traversal switch. - * - * @param {string} deviceDescriptor Descriptor of the target network for mouse traversal. - * @param {AsyncCallback<{ state: boolean }>} callback Asynchronous callback used to receive the status of the mouse traversal switch. + * Checks whether screen hopping is enabled. + * This API uses an asynchronous callback to return the result. + * + * @param {string} deviceDescriptor Descriptor of the target device for screen hopping. + * @param {AsyncCallback<{ state: boolean }>} callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Cooperator @@ -248,10 +264,11 @@ declare namespace inputDeviceCooperate { * @since 9 */ /** - * Obtains the status of the mouse traversal switch. - * - * @param {string} deviceDescriptor Descriptor of the target network for mouse traversal. - * @param {AsyncCallback<{ state: boolean }>} callback Asynchronous callback used to receive the status of the mouse traversal switch. + * Checks whether screen hopping is enabled. + * This API uses an asynchronous callback to return the result. + * + * @param {string} deviceDescriptor Descriptor of the target device for screen hopping. + * @param {AsyncCallback<{ state: boolean }>} callback Callback used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -262,10 +279,12 @@ declare namespace inputDeviceCooperate { function getState(deviceDescriptor: string, callback: AsyncCallback<{ state: boolean }>): void; /** - * Obtains the status of the mouse traversal switch. - * - * @param deviceDescriptor Descriptor of the target network for mouse traversal. - * @returns { Promise<{ state: boolean }> } A promise used by returning state + * Checks whether screen hopping is enabled. + * This API uses a promise to return the result. + * + * @param deviceDescriptor Descriptor of the target device for screen hopping. + * @returns { Promise<{ state: boolean }> } Promise used to return the result. + * The value true indicates that screen hopping is enabled, and the false indicates the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Cooperator @@ -273,10 +292,12 @@ declare namespace inputDeviceCooperate { * @since 9 */ /** - * Obtains the status of the mouse traversal switch. - * - * @param deviceDescriptor Descriptor of the target network for mouse traversal. - * @returns { Promise<{ state: boolean }> } A promise used by returning state + * Checks whether screen hopping is enabled. + * This API uses a promise to return the result. + * + * @param deviceDescriptor Descriptor of the target device for screen hopping. + * @returns { Promise<{ state: boolean }> } Promise used to return the result. + * The value true indicates that screen hopping is enabled, and the false indicates the opposite. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -287,10 +308,10 @@ declare namespace inputDeviceCooperate { function getState(deviceDescriptor: string): Promise<{ state: boolean }>; /** - * Enables listening for mouse traversal events. + * Enables listening for screen hopping status change events. * - * @param { 'cooperation' } type Registration type. - * @param { AsyncCallback<{ deviceDescriptor: string, eventMsg: EventMsg }> } callback Asynchronous callback used to receive mouse traversal events. + * @param { 'cooperation' } type Event type. The value is cooperation. + * @param { AsyncCallback<{ deviceDescriptor: string, eventMsg: EventMsg }> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Cooperator @@ -298,10 +319,10 @@ declare namespace inputDeviceCooperate { * @since 9 */ /** - * Enables listening for mouse traversal events. + * Enables listening for screen hopping status change events. * - * @param { 'cooperation' } type Registration type. - * @param { AsyncCallback<{ deviceDescriptor: string, eventMsg: EventMsg }> } callback Asynchronous callback used to receive mouse traversal events. + * @param { 'cooperation' } type Event type. The value is cooperation. + * @param { AsyncCallback<{ deviceDescriptor: string, eventMsg: EventMsg }> } callback Callback used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -312,10 +333,11 @@ declare namespace inputDeviceCooperate { function on(type: 'cooperation', callback: AsyncCallback<{ deviceDescriptor: string, eventMsg: EventMsg }>): void; /** - * Disables listening for mouse traversal events. + * Disables listening for screen hopping status change events. * - * @param { 'cooperation' } type Registration type. - * @param { AsyncCallback<void> } callback Asynchronous callback used to return the result. + * @param { 'cooperation' } type Event type. The value is cooperation. + * @param { AsyncCallback<void> } callback Callback to be unregistered. + * If this parameter is not specified, all callbacks registered by the current application will be unregistered. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Cooperator @@ -323,10 +345,11 @@ declare namespace inputDeviceCooperate { * @since 9 */ /** - * Disables listening for mouse traversal events. + * Disables listening for screen hopping status change events. * - * @param { 'cooperation' } type Registration type. - * @param { AsyncCallback<void> } callback Asynchronous callback used to return the result. + * @param { 'cooperation' } type Event type. The value is cooperation. + * @param { AsyncCallback<void> } callback Callback to be unregistered. + * If this parameter is not specified, all callbacks registered by the current application will be unregistered. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. diff --git a/api/@ohos.multimodalInput.inputEventClient.d.ts b/api/@ohos.multimodalInput.inputEventClient.d.ts index fc4b4d1811a0659e0d4c8891e30cf71b847b33ad..150b64d5026bf97d90fb31517052a95515462f8f 100644 --- a/api/@ohos.multimodalInput.inputEventClient.d.ts +++ b/api/@ohos.multimodalInput.inputEventClient.d.ts @@ -21,7 +21,7 @@ import { MouseEvent } from './@ohos.multimodalInput.mouseEvent'; import { TouchEvent } from './@ohos.multimodalInput.touchEvent'; /** - * Global Key Event Injection + * The inputEventClient module implements the input event injection capability. * * @namespace inputEventClient * @syscap SystemCapability.MultimodalInput.Input.InputSimulator @@ -30,7 +30,7 @@ import { TouchEvent } from './@ohos.multimodalInput.touchEvent'; */ declare namespace inputEventClient { /** - * Defines event of key that user want to inject. + * Defines the key event to inject. * * @interface KeyEvent * @syscap SystemCapability.MultimodalInput.Input.InputSimulator @@ -39,7 +39,8 @@ declare namespace inputEventClient { */ interface KeyEvent { /** - * The status of key. + * Whether the key is pressed. + * The value true indicates that the key is pressed, and the value false indicates the opposite. * @type { boolean } * @syscap SystemCapability.MultimodalInput.Input.InputSimulator * @systemapi hide for inner use @@ -48,7 +49,7 @@ declare namespace inputEventClient { isPressed: boolean; /** - * The keyCode value of key. + * Keycode value. Currently, only the KEYCODE_BACK key is supported. * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputSimulator * @systemapi hide for inner use @@ -57,7 +58,7 @@ declare namespace inputEventClient { keyCode: number; /** - * Key hold duration. + * Duration for pressing a key, in μs. * @type { number } * @syscap SystemCapability.MultimodalInput.Input.InputSimulator * @systemapi hide for inner use @@ -66,7 +67,8 @@ declare namespace inputEventClient { keyDownDuration: number; /** - * Whether the key is blocked. + * Whether the key event can be intercepted. + * The value true indicates that the key event can be intercepted, and the value false indicates the opposite. * @type { boolean } * @syscap SystemCapability.MultimodalInput.Input.InputSimulator * @systemapi hide for inner use @@ -76,7 +78,7 @@ declare namespace inputEventClient { } /** - * Defines event of mouse that user want to inject. + * Defines the mouse event data. * * @interface MouseEventData * @syscap SystemCapability.MultimodalInput.Input.InputSimulator @@ -85,7 +87,7 @@ declare namespace inputEventClient { */ interface MouseEventData { /** - * Inject mouse event. + * Mouse event data. * * @type { MouseEvent } * @syscap SystemCapability.MultimodalInput.Input.InputSimulator @@ -96,7 +98,7 @@ declare namespace inputEventClient { } /** - * Defines event of touch that user want to inject. + * Defines the touchscreen event data. * * @interface TouchEventData * @syscap SystemCapability.MultimodalInput.Input.InputSimulator @@ -105,7 +107,7 @@ declare namespace inputEventClient { */ interface TouchEventData { /** - * Inject touch event. + * Touchscreen event data. * * @type { TouchEvent } * @syscap SystemCapability.MultimodalInput.Input.InputSimulator @@ -116,7 +118,7 @@ declare namespace inputEventClient { } /** - * Defines event of key that user want to inject. + * Defines the key event to inject. * * @interface KeyEventData * @syscap SystemCapability.MultimodalInput.Input.InputSimulator @@ -125,7 +127,7 @@ declare namespace inputEventClient { */ interface KeyEventData { /** - * Inject key event. + * Key event to inject. * * @type { KeyEvent } * @syscap SystemCapability.MultimodalInput.Input.InputSimulator @@ -136,9 +138,9 @@ declare namespace inputEventClient { } /** - * Inject system keys. + * Injects key events (for both single keys and combination keys). * - * @param { KeyEventData } keyEvent - the key event to be injected. + * @param { KeyEventData } keyEvent - Key event to inject. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -147,10 +149,10 @@ declare namespace inputEventClient { * @since 11 */ /** - * Inject system keys. + * Injects key events (for both single keys and combination keys). * * @permission ohos.permission.INJECT_INPUT_EVENT - * @param { KeyEventData } keyEvent - the key event to be injected. + * @param { KeyEventData } keyEvent - Key event to inject. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -162,9 +164,9 @@ declare namespace inputEventClient { function injectKeyEvent(keyEvent: KeyEventData): void; /** - * Inject system keys. + * Injects keys (including single keys and combination keys). * - * @param { { KeyEvent } } KeyEvent - the key event to be injected. + * @param { { KeyEvent } } KeyEvent - Key event to inject. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputSimulator @@ -172,10 +174,10 @@ declare namespace inputEventClient { * @since 8 */ /** - * Inject system keys. + * Injects keys (including single keys and combination keys). * * @permission ohos.permission.INJECT_INPUT_EVENT - * @param { { KeyEvent } } KeyEvent - the key event to be injected. + * @param { { KeyEvent } } KeyEvent - Key event to inject. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -187,9 +189,9 @@ declare namespace inputEventClient { function injectEvent({ KeyEvent: KeyEvent }): void; /** - * Inject mouse event. + * Injects a mouse/touchpad event. * - * @param { MouseEventData } mouseEvent - the mouse event to be injected. + * @param { MouseEventData } mouseEvent - Mouse/touchpad event to inject. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -198,10 +200,10 @@ declare namespace inputEventClient { * @since 11 */ /** - * Inject mouse event. + * Injects a mouse/touchpad event. * * @permission ohos.permission.INJECT_INPUT_EVENT - * @param { MouseEventData } mouseEvent - the mouse event to be injected. + * @param { MouseEventData } mouseEvent - Mouse/touchpad event to inject. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -213,9 +215,9 @@ declare namespace inputEventClient { function injectMouseEvent(mouseEvent: MouseEventData): void; /** - * Inject touch event. + * Injects a touchscreen event. * - * @param { TouchEventData } touchEvent - the touch event to be injected. + * @param { TouchEventData } touchEvent - Touchscreen event to inject. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -224,10 +226,10 @@ declare namespace inputEventClient { * @since 11 */ /** - * Inject touch event. + * Injects a touchscreen event. * * @permission ohos.permission.INJECT_INPUT_EVENT - * @param { TouchEventData } touchEvent - the touch event to be injected. + * @param { TouchEventData } touchEvent - Touchscreen event to inject. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -239,10 +241,10 @@ declare namespace inputEventClient { function injectTouchEvent(touchEvent: TouchEventData): void; /** - * Permit event injection permission. + * Specifies whether to authorize event injection. * * @permission ohos.permission.INJECT_INPUT_EVENT - * @param { boolean } result - Authorization result. + * @param { boolean } result - Authorization result. The value true indicates that event injection is allowed, and the value false indicates the opposite. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; diff --git a/api/@ohos.multimodalInput.inputMonitor.d.ts b/api/@ohos.multimodalInput.inputMonitor.d.ts index e0ddd4572d8774893605f0e63df7442a117ff119..1737a3d1aceeff0d6f4d1088adde0a64c7f68a78 100644 --- a/api/@ohos.multimodalInput.inputMonitor.d.ts +++ b/api/@ohos.multimodalInput.inputMonitor.d.ts @@ -29,7 +29,7 @@ import type { KeyEvent } from './@ohos.multimodalInput.keyEvent'; import type { KeyCode } from './@ohos.multimodalInput.keyCode'; /** - * Global input event listener + * The inputMonitor module implements listening for events of input devices, including the touchscreen, mouse, touchpad, etc. * System API, available only to system processes * * @namespace inputMonitor @@ -39,8 +39,7 @@ import type { KeyCode } from './@ohos.multimodalInput.keyCode'; */ declare namespace inputMonitor { /** - * Callback used to receive touch input events. If **true** is returned, the touch input is consumed, - * and the system performs the closing operation. + * Defines the callback for touch (touchscreen) events. * * @interface TouchEventReceiver * @syscap SystemCapability.MultimodalInput.Input.InputMonitor @@ -52,7 +51,8 @@ declare namespace inputMonitor { * Callback used to receive touch input events. * * @param { TouchEvent } touchEvent - the reported touch event. - * @returns { Boolean } Returns true indicates the touch input is consumed, the value false indicates opposite. + * @returns { Boolean } Result indicating whether the touch event will be dispatched to the window. + * The value true indicates that the touch event will be dispatched to the window, and the value false indicates the opposite. * @syscap SystemCapability.MultimodalInput.Input.InputMonitor * @systemapi hide for inner use * @since 7 @@ -61,11 +61,11 @@ declare namespace inputMonitor { } /** - * Listens for touch input events. + * Enables listening for global touch (touchscreen) events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'touch' } type - Event type, which is **touch**. - * @param { TouchEventReceiver } receiver - Callback used to receive the reported data. + * @param { 'touch' } type - Event type. This field has a fixed value of touch. + * @param { TouchEventReceiver } receiver - Callback used to return touch events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -74,11 +74,11 @@ declare namespace inputMonitor { * @since 7 */ /** - * Listens for touch input events. + * Enables listening for global touch (touchscreen) events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'touch' } type - Event type, which is **touch**. - * @param { TouchEventReceiver } receiver - Callback used to receive the reported data. + * @param { 'touch' } type - Event type. This field has a fixed value of touch. + * @param { TouchEventReceiver } receiver - Callback used to return touch events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -90,11 +90,11 @@ declare namespace inputMonitor { function on(type: 'touch', receiver: TouchEventReceiver): void; /** - * Listens for mouse input events. + * Enables listening for global mouse events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'mouse' } type - Event type, which is **mouse**. - * @param { Callback<MouseEvent> } receiver - Callback used to receive the reported data. + * @param { 'mouse' } type - Event type. This field has a fixed value of mouse. + * @param { Callback<MouseEvent> } receiver - Callback used to return mouse events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -103,11 +103,11 @@ declare namespace inputMonitor { * @since 9 */ /** - * Listens for mouse input events. + * Enables listening for global mouse events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'mouse' } type - Event type, which is **mouse**. - * @param { Callback<MouseEvent> } receiver - Callback used to receive the reported data. + * @param { 'mouse' } type - Event type. This field has a fixed value of mouse. + * @param { Callback<MouseEvent> } receiver - Callback used to return mouse events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -119,12 +119,12 @@ declare namespace inputMonitor { function on(type: 'mouse', receiver: Callback<MouseEvent>): void; /** - * Listens for mouse input events when the mouse arrow is within the specified rectangular area. + * Enables listening for mouse events. When the mouse pointer moves to the specified rectangular area, a callback is triggered. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'mouse' } type - Event type, which is **mouse**. - * @param { display.Rect[] } rect - A specified rectangular area that can trigger a callback, with a maximum of two. - * @param { Callback<MouseEvent> } receiver - Callback used to receive the reported data. + * @param { 'mouse' } type - Event type. This field has a fixed value of mouse. + * @param { display.Rect[] } rect - Rectangular area where a callback is triggered. One or two rectangular areas can be specified. + * @param { Callback<MouseEvent> } receiver - Callback used to return mouse events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -133,12 +133,12 @@ declare namespace inputMonitor { * @since 11 */ /** - * Listens for mouse input events when the mouse arrow is within the specified rectangular area. + * Enables listening for mouse events. When the mouse pointer moves to the specified rectangular area, a callback is triggered. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'mouse' } type - Event type, which is **mouse**. - * @param { display.Rect[] } rect - A specified rectangular area that can trigger a callback, with a maximum of two. - * @param { Callback<MouseEvent> } receiver - Callback used to receive the reported data. + * @param { 'mouse' } type - Event type. This field has a fixed value of mouse. + * @param { display.Rect[] } rect - Rectangular area where a callback is triggered. One or two rectangular areas can be specified. + * @param { Callback<MouseEvent> } receiver - Callback used to return mouse events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -150,11 +150,12 @@ declare namespace inputMonitor { function on(type: 'mouse', rect: display.Rect[], receiver: Callback<MouseEvent>): void; /** - * Cancel listening for touch input events. + * Disables listening for global touch (touchscreen) events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'touch' } type - Event type, which is **touch**. - * @param { TouchEventReceiver } receiver - Callback used to receive the reported data. + * @param { 'touch' } type - Event type. This field has a fixed value of touch. + * @param { TouchEventReceiver } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -163,11 +164,12 @@ declare namespace inputMonitor { * @since 7 */ /** - * Cancel listening for touch input events. + * Disables listening for global touch (touchscreen) events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'touch' } type - Event type, which is **touch**. - * @param { TouchEventReceiver } receiver - Callback used to receive the reported data. + * @param { 'touch' } type - Event type. This field has a fixed value of touch. + * @param { TouchEventReceiver } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -179,11 +181,12 @@ declare namespace inputMonitor { function off(type: 'touch', receiver?: TouchEventReceiver): void; /** - * Cancel listening for mouse input events. + * Disables listening for global mouse events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'mouse' } type - Event type, which is **mouse**. - * @param { Callback<MouseEvent> } receiver - Callback used to receive the reported data. + * @param { 'mouse' } type - Event type. This field has a fixed value of mouse. + * @param { Callback<MouseEvent> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -192,11 +195,12 @@ declare namespace inputMonitor { * @since 9 */ /** - * Cancel listening for mouse input events. + * Disables listening for global mouse events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'mouse' } type - Event type, which is **mouse**. - * @param { Callback<MouseEvent> } receiver - Callback used to receive the reported data. + * @param { 'mouse' } type - Event type. This field has a fixed value of mouse. + * @param { Callback<MouseEvent> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -208,11 +212,11 @@ declare namespace inputMonitor { function off(type: 'mouse', receiver?: Callback<MouseEvent>): void; /** - * Listens for touchPad pinch events. + * Enables listening for global touchpad pinch events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'pinch' } type - Event type, which is **pinch**. - * @param { Callback<Pinch> } receiver - Callback used to receive the reported data. + * @param { 'pinch' } type - Event type. This field has a fixed value of pinch. + * @param { Callback<Pinch> } receiver - Callback used to return pinch events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -224,11 +228,12 @@ declare namespace inputMonitor { function on(type: 'pinch', receiver: Callback<Pinch>): void; /** - * Cancel listening for touchPad pinch events. + * Disables listening for global touchpad pinch events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'pinch' } type - Event type, which is **pinch**. - * @param { Callback<Pinch> } receiver - Callback used to receive the reported data. + * @param { 'pinch' } type - Event type. This field has a fixed value of pinch. + * @param { Callback<Pinch> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -240,12 +245,12 @@ declare namespace inputMonitor { function off(type: 'pinch', receiver?: Callback<Pinch>): void; /** - * Listens for touchPad fingers pinch events. + * Enables listening for global touchpad pinch events. * * @permission ohos.permission.INPUT_MONITORING * @param { 'pinch' } type - Event type, which is **pinch**. - * @param { number } fingers - the number of fingers. - * @param { Callback<Pinch> } receiver - Callback used to receive the reported data. + * @param { number } fingers - Number of fingers that trigger the pinch. The value must be greater than or equal to 2. + * @param { Callback<Pinch> } receiver - Callback used to return pinch events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -257,12 +262,13 @@ declare namespace inputMonitor { function on(type: 'pinch', fingers: number, receiver: Callback<Pinch>): void; /** - * Cancel listening for touchPad fingers pinch events. + * Disables listening for global touchpad pinch events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'pinch' } type - Event type, which is **pinch**. - * @param { number } fingers - the number of fingers. - * @param { Callback<Pinch> } receiver - Callback used to receive the reported data. + * @param { 'pinch' } type - Event type. This field has a fixed value of pinch. + * @param { number } fingers - Number of fingers that trigger the pinch. The value must be greater than or equal to 2. + * @param { Callback<Pinch> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -274,12 +280,12 @@ declare namespace inputMonitor { function off(type: 'pinch', fingers: number, receiver?: Callback<Pinch>): void; /** - * Listens for touchPad fingers rotate events. + * Enables listening for rotation events of the touchpad. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'rotate' } type - Event type, which is **rotate**. - * @param { number } fingers - the number of fingers. - * @param { Callback<Rotate> } receiver - Callback used to receive the reported data. + * @param { 'rotate' } type - Event type. This field has a fixed value of rotate. + * @param { number } fingers - Number of fingers that trigger a rotation. The value must not be greater than 2. + * @param { Callback<Rotate> } receiver - Callback used to return rotation events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -291,12 +297,13 @@ declare namespace inputMonitor { function on(type: 'rotate', fingers: number, receiver: Callback<Rotate>): void; /** - * Cancel listening for touchPad fingers rotate events. + * Disables listening for rotation events of the touchpad. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'rotate' } type - Event type, which is **rotate**. - * @param { number } fingers - the number of fingers. - * @param { Callback<Rotate> } receiver - Callback used to receive the reported data. + * @param { 'rotate' } type - Event type. This field has a fixed value of rotate. + * @param { number } fingers - Number of fingers that trigger a rotation. The value must not be greater than 2. + * @param { Callback<Rotate> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -308,11 +315,11 @@ declare namespace inputMonitor { function off(type: 'rotate', fingers: number, receiver?: Callback<Rotate>): void; /** - * Listens for touchPad three fingers swipe events. + * Enables listening for three-finger swipe events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'threeFingersSwipe' } type - Event type, which is **threeFingersSwipe**. - * @param { Callback<ThreeFingersSwipe> } receiver - Callback used to receive the reported data. + * @param { 'threeFingersSwipe' } type - Event type. This field has a fixed value of threeFingersSwipe. + * @param { Callback<ThreeFingersSwipe> } receiver - Callback used to return three-finger swipe events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -324,11 +331,12 @@ declare namespace inputMonitor { function on(type: 'threeFingersSwipe', receiver: Callback<ThreeFingersSwipe>): void; /** - * Cancel listening touchPad three fingers swipe events. + * Disables listening for three-finger swipe events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'threeFingersSwipe' } type - Event type, which is **threeFingersSwipe**. - * @param { Callback<ThreeFingersSwipe> } receiver - Callback used to receive the reported data. + * @param { 'threeFingersSwipe' } type - Event type. This field has a fixed value of threeFingersSwipe. + * @param { Callback<ThreeFingersSwipe> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -340,11 +348,11 @@ declare namespace inputMonitor { function off(type: 'threeFingersSwipe', receiver?: Callback<ThreeFingersSwipe>): void; /** - * Listens for touchPad four fingers swipe events. + * Enables listening for four-finger swipe events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'fourFingersSwipe' } type - Event type, which is **fourFingersSwipe**.. - * @param { Callback<FourFingersSwipe> } receiver - Callback used to receive the reported data. + * @param { 'fourFingersSwipe' } type - Event type. This field has a fixed value of fourFingersSwipe. + * @param { Callback<FourFingersSwipe> } receiver - Callback used to return four-finger swipe events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -356,11 +364,12 @@ declare namespace inputMonitor { function on(type: 'fourFingersSwipe', receiver: Callback<FourFingersSwipe>): void; /** - * Cancel listening touchPad four finger swipe events. + * Disables listening for four-finger swipe events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'fourFingersSwipe' } type - Event type, which is **fourFingersSwipe**. - * @param { Callback<FourFingersSwipe> } receiver - Callback used to receive the reported data. + * @param { 'fourFingersSwipe' } type - Event type. This field has a fixed value of fourFingersSwipe. + * @param { Callback<FourFingersSwipe> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -372,11 +381,11 @@ declare namespace inputMonitor { function off(type: 'fourFingersSwipe', receiver?: Callback<FourFingersSwipe>): void; /** - * Listens for touchPad three fingers tap events. + * Enables listening for three-finger tap events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'threeFingersTap' } type - Event type, which is **threeFingersTap**. - * @param { Callback<ThreeFingersTap> } receiver - Callback used to receive the reported data. + * @param { 'threeFingersTap' } type - Event type. This field has a fixed value of threeFingersTap. + * @param { Callback<ThreeFingersTap> } receiver - Callback used to return three-finger tap events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -388,11 +397,12 @@ declare namespace inputMonitor { function on(type: 'threeFingersTap', receiver: Callback<ThreeFingersTap>): void; /** - * Cancel listening touchPad three fingers tap events. + * Disables listening for three-finger tap events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'threeFingersTap' } type - Event type, which is **threeFingersTap**. - * @param { Callback<ThreeFingersTap> } receiver - Callback used to receive the reported data. + * @param { 'threeFingersTap' } type - Event type. This field has a fixed value of threeFingersTap. + * @param { Callback<ThreeFingersTap> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - SystemAPI permit error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -466,17 +476,18 @@ declare namespace inputMonitor { function off(type: 'swipeInward', receiver?: Callback<SwipeInward>): void; /** - * Enables listening touchscreen swipe gesture events. + * Enables listening for touchscreen swipe events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'touchscreenSwipe' } type - Touchscreen gesture type. - * @param { number } fingers - Number of fingers. - * @param { Callback<TouchGestureEvent> } receiver - Callback used to receive reported data. + * @param { 'touchscreenSwipe' } type - Event type. This field has a fixed value of touchscreenSwipe. + * @param { number } fingers - Number of fingers that trigger the swipe. The value range is [3, 5]. + * @param { Callback<TouchGestureEvent> } receiver - Callback used to return touchscreen swipe events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Caller is not a system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. + * 3.Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputMonitor * @systemapi hide for inner use * @since 18 @@ -484,17 +495,19 @@ declare namespace inputMonitor { function on(type: 'touchscreenSwipe', fingers: number, receiver: Callback<TouchGestureEvent>): void; /** - * Disables listening touchscreen swipe gesture events. + * Disables listening for touchscreen swipe events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'touchscreenSwipe' } type - Touchscreen gesture type. - * @param { number } fingers - Number of fingers. - * @param { Callback<TouchGestureEvent> } receiver - Callback used to receive reported data. + * @param { 'touchscreenSwipe' } type - Event type. This field has a fixed value of touchscreenSwipe. + * @param { number } fingers - Number of fingers that trigger the swipe. The value range is [3, 5]. + * @param { Callback<TouchGestureEvent> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Caller is not a system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. + * 3.Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputMonitor * @systemapi hide for inner use * @since 18 @@ -502,17 +515,18 @@ declare namespace inputMonitor { function off(type: 'touchscreenSwipe', fingers: number, receiver?: Callback<TouchGestureEvent>): void; /** - * Enables listening touchscreen pinch gesture events. + * Enables listening for touchscreen pinch events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'touchscreenPinch' } type - Touch screen gesture type. - * @param { number } fingers - Number of fingers. - * @param { Callback<TouchGestureEvent> } receiver - Callback used to receive reported data. + * @param { 'touchscreenPinch' } type - Event type. This field has a fixed value of touchscreenPinch. + * @param { number } fingers - Number of fingers that trigger the pinch. The value range is [4, 5]. + * @param { Callback<TouchGestureEvent> } receiver - Callback used to return touchscreen pinch events asynchronously. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Caller is not a system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. + * 3.Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputMonitor * @systemapi hide for inner use * @since 18 @@ -520,17 +534,19 @@ declare namespace inputMonitor { function on(type: 'touchscreenPinch', fingers: number, receiver: Callback<TouchGestureEvent>): void; /** - * Disables listening touchscreen pinch gesture events. + * Disables listening for touchscreen pinch events. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'touchscreenPinch' } type - Touchscreen gesture type. - * @param { number } fingers - Number of fingers. - * @param { Callback<TouchGestureEvent> } receiver - Callback used to receive reported data. + * @param { 'touchscreenPinch' } type - Event type. This field has a fixed value of touchscreenPinch. + * @param { number } fingers - Number of fingers that trigger the pinch. The value range is [4, 5]. + * @param { Callback<TouchGestureEvent> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Caller is not a system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. + * 3.Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.InputMonitor * @systemapi hide for inner use * @since 18 @@ -538,12 +554,13 @@ declare namespace inputMonitor { function off(type: 'touchscreenPinch', fingers: number, receiver?: Callback<TouchGestureEvent>): void; /** - * Enables listening for release events of specified keys, such as the logo, power, and volume keys. + * Listens for the press and release events of the specified key, which can be the META_LEFT, META_RIGHT, power, or volume key. * * @permission ohos.permission.INPUT_MONITORING - * @param { 'keyPressed' } type - Event type, which is **keyPressed**. - * @param { Array<KeyCode> } keys - Key list. - * @param { Callback<KeyEvent> } receiver - Callback used to receive the reported data. + * @param { 'keyPressed' } type - Event type. This parameter has a fixed value of keyPressed. + * @param { Array<KeyCode> } keys - Key code list. + * The options are KEYCODE_META_LEFT, KEYCODE_META_RIGHT, KEYCODE_POWER, KEYCODE_VOLUME_DOWN, and KEYCODE_VOLUME_UP. + * @param { Callback<KeyEvent> } receiver - Callback used to receive reported data. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -556,11 +573,13 @@ declare namespace inputMonitor { function on(type: 'keyPressed', keys: Array<KeyCode>, receiver: Callback<KeyEvent>): void; /** - * Disables listening for release events of specified keys. + * Cancels listening for the press and release events of the specified key, which can be the META_LEFT, META_RIGHT, power, or volume key. + * This API must be used together with inputMonitor.on ('keyPressed'). * * @permission ohos.permission.INPUT_MONITORING - * @param { 'keyPressed' } type - Event type, which is **keyPressed**. - * @param { Callback<KeyEvent> } receiver - Callback used to receive the reported data. + * @param { 'keyPressed' } type - Event type. This parameter has a fixed value of keyPressed. + * @param { Callback<KeyEvent> } receiver - Callback for which listening is disabled. + * If this parameter is not specified, listening will be disabled for all callbacks registered by the current application. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; diff --git a/api/@ohos.multimodalInput.intentionCode.d.ts b/api/@ohos.multimodalInput.intentionCode.d.ts index 79445f8cc2a961ba785b56c8d962f5ff9ba2d96f..ee127fa5db0eb42d848113e48c0b91c0d5c85f5c 100644 --- a/api/@ohos.multimodalInput.intentionCode.d.ts +++ b/api/@ohos.multimodalInput.intentionCode.d.ts @@ -23,7 +23,8 @@ * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * IntentionCode @@ -31,21 +32,24 @@ * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export declare enum IntentionCode { /** * INTENTION_UNKNOWN * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_UNKNOWN * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_UNKNOWN = -1, @@ -53,14 +57,16 @@ export declare enum IntentionCode { * INTENTION_UP * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_UP * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_UP = 1, @@ -68,14 +74,16 @@ export declare enum IntentionCode { * INTENTION_DOWN * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_DOWN * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_DOWN = 2, @@ -83,14 +91,16 @@ export declare enum IntentionCode { * INTENTION_LEFT * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_LEFT * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_LEFT = 3, @@ -98,14 +108,16 @@ export declare enum IntentionCode { * INTENTION_RIGHT * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_RIGHT * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_RIGHT = 4, @@ -113,14 +125,16 @@ export declare enum IntentionCode { * INTENTION_SELECT * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_SELECT * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_SELECT = 5, @@ -128,14 +142,16 @@ export declare enum IntentionCode { * INTENTION_ESCAPE * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_ESCAPE * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_ESCAPE = 6, @@ -143,14 +159,16 @@ export declare enum IntentionCode { * INTENTION_BACK * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_BACK * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_BACK = 7, @@ -158,14 +176,16 @@ export declare enum IntentionCode { * INTENTION_FORWARD * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_FORWARD * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_FORWARD = 8, @@ -173,14 +193,16 @@ export declare enum IntentionCode { * INTENTION_MENU * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_MENU * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_MENU = 9, @@ -188,14 +210,16 @@ export declare enum IntentionCode { * INTENTION_PAGE_UP * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_PAGE_UP * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_PAGE_UP = 11, @@ -203,14 +227,16 @@ export declare enum IntentionCode { * INTENTION_PAGE_DOWN * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_PAGE_DOWN * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_PAGE_DOWN = 12, @@ -218,14 +244,16 @@ export declare enum IntentionCode { * INTENTION_ZOOM_OUT * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_ZOOM_OUT * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_ZOOM_OUT = 13, @@ -233,14 +261,16 @@ export declare enum IntentionCode { * INTENTION_ZOOM_IN * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * INTENTION_ZOOM_IN * * @syscap SystemCapability.MultimodalInput.Input.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ INTENTION_ZOOM_IN = 14 } diff --git a/api/@ohos.multimodalInput.keyCode.d.ts b/api/@ohos.multimodalInput.keyCode.d.ts index c555f3ff6b641919cced79f898ae36afb15c0d9b..8c5e443fc2b79ef172fe8b158d02a7b8aa2b8d6e 100644 --- a/api/@ohos.multimodalInput.keyCode.d.ts +++ b/api/@ohos.multimodalInput.keyCode.d.ts @@ -19,14 +19,14 @@ */ /** - * KeyCode + * The keyCode module provides keycode values for key devices, such as the keyboard, power key, camera key, and the like. * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 */ /** - * KeyCode + * The keyCode module provides keycode values for key devices, such as the keyboard, power key, camera key, and the like. * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.Core @@ -66,6 +66,14 @@ export declare enum KeyCode { */ KEYCODE_BACK = 2, + /** + * KEYCODE_HEADSETHOOK + * + * @syscap SystemCapability.MultimodalInput.Input.Core + * @since 20 + */ + KEYCODE_HEADSETHOOK = 6, + /** * KEYCODE_SEARCH * @@ -645,7 +653,7 @@ export declare enum KeyCode { KEYCODE_SYM = 2051, /** - * KEYCODE_EXPLORER + * Explorer key, which is used to start the explorer application * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -653,7 +661,7 @@ export declare enum KeyCode { KEYCODE_EXPLORER = 2052, /** - * KEYCODE_ENVELOPE + * Email key, which is used to start the email application * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -677,7 +685,7 @@ export declare enum KeyCode { KEYCODE_DEL = 2055, /** - * KEYCODE_GRAVE + * Key / * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -685,7 +693,7 @@ export declare enum KeyCode { KEYCODE_GRAVE = 2056, /** - * KEYCODE_MINUS + * Key - * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -693,7 +701,7 @@ export declare enum KeyCode { KEYCODE_MINUS = 2057, /** - * KEYCODE_EQUALS + * Key = * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -701,7 +709,7 @@ export declare enum KeyCode { KEYCODE_EQUALS = 2058, /** - * KEYCODE_LEFT_BRACKET + * Key [ * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -709,7 +717,7 @@ export declare enum KeyCode { KEYCODE_LEFT_BRACKET = 2059, /** - * KEYCODE_RIGHT_BRACKET + * Key ] * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -717,7 +725,7 @@ export declare enum KeyCode { KEYCODE_RIGHT_BRACKET = 2060, /** - * KEYCODE_BACKSLASH + * Key \ * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -725,7 +733,7 @@ export declare enum KeyCode { KEYCODE_BACKSLASH = 2061, /** - * KEYCODE_SEMICOLON + * Key ; * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -733,7 +741,7 @@ export declare enum KeyCode { KEYCODE_SEMICOLON = 2062, /** - * KEYCODE_APOSTROPHE + * Key ' * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -741,7 +749,7 @@ export declare enum KeyCode { KEYCODE_APOSTROPHE = 2063, /** - * KEYCODE_SLASH + * Key / * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -749,7 +757,7 @@ export declare enum KeyCode { KEYCODE_SLASH = 2064, /** - * KEYCODE_AT + * Key @ * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -757,7 +765,7 @@ export declare enum KeyCode { KEYCODE_AT = 2065, /** - * KEYCODE_PLUS + * Key + * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1059,7 +1067,7 @@ export declare enum KeyCode { KEYCODE_F12 = 2101, /** - * KEYCODE_NUM_LOCK + * Number Lock key on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1067,7 +1075,7 @@ export declare enum KeyCode { KEYCODE_NUM_LOCK = 2102, /** - * KEYCODE_NUMPAD_0 + * Key 0 on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1075,7 +1083,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_0 = 2103, /** - * KEYCODE_NUMPAD_1 + * Key 1 on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1083,7 +1091,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_1 = 2104, /** - * KEYCODE_NUMPAD_2 + * Key 2 on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1091,7 +1099,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_2 = 2105, /** - * KEYCODE_NUMPAD_3 + * Key 3 on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1099,7 +1107,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_3 = 2106, /** - * KEYCODE_NUMPAD_4 + * Key 4 on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1107,7 +1115,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_4 = 2107, /** - * KEYCODE_NUMPAD_5 + * Key 5 on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1115,7 +1123,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_5 = 2108, /** - * KEYCODE_NUMPAD_6 + * Key 6 on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1123,7 +1131,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_6 = 2109, /** - * KEYCODE_NUMPAD_7 + * Key 7 on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1131,7 +1139,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_7 = 2110, /** - * KEYCODE_NUMPAD_8 + * Key 8 on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1139,7 +1147,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_8 = 2111, /** - * KEYCODE_NUMPAD_9 + * Key 9 on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1147,7 +1155,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_9 = 2112, /** - * KEYCODE_NUMPAD_DIVIDE + * Key / on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1155,7 +1163,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_DIVIDE = 2113, /** - * KEYCODE_NUMPAD_MULTIPLY + * Key ) on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1163,7 +1171,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_MULTIPLY = 2114, /** - * KEYCODE_NUMPAD_SUBTRACT + * Key - on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1171,7 +1179,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_SUBTRACT = 2115, /** - * KEYCODE_NUMPAD_ADD + * Key + on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1179,7 +1187,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_ADD = 2116, /** - * KEYCODE_NUMPAD_DOT + * Key . on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1187,7 +1195,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_DOT = 2117, /** - * KEYCODE_NUMPAD_COMMA + * Key , on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1195,7 +1203,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_COMMA = 2118, /** - * KEYCODE_NUMPAD_ENTER + * Enter key on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1203,7 +1211,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_ENTER = 2119, /** - * KEYCODE_NUMPAD_EQUALS + * Key = on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1211,7 +1219,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_EQUALS = 2120, /** - * KEYCODE_NUMPAD_LEFT_PAREN + * Key ( on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1219,7 +1227,7 @@ export declare enum KeyCode { KEYCODE_NUMPAD_LEFT_PAREN = 2121, /** - * KEYCODE_NUMPAD_RIGHT_PAREN + * Key ) on numeric keypad * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -1235,7 +1243,7 @@ export declare enum KeyCode { KEYCODE_VIRTUAL_MULTITASK = 2210, /** - * KEYCODE_BUTTON_A + * Joystick key A * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1243,7 +1251,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_A = 2301, /** - * KEYCODE_BUTTON_B + * Joystick key B * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1251,7 +1259,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_B = 2302, /** - * KEYCODE_BUTTON_X + * Joystick key X * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1259,7 +1267,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_X = 2304, /** - * KEYCODE_BUTTON_Y + * Joystick key Y * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1267,7 +1275,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_Y = 2305, /** - * KEYCODE_BUTTON_L1 + * Joystick key L1 * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1275,7 +1283,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_L1 = 2307, /** - * KEYCODE_BUTTON_R1 + * Joystick key R1 * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1283,7 +1291,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_R1 = 2308, /** - * KEYCODE_BUTTON_L2 + * Joystick key L2 * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1291,7 +1299,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_L2 = 2309, /** - * KEYCODE_BUTTON_R2 + * Joystick key R2 * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1299,7 +1307,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_R2 = 2310, /** - * KEYCODE_BUTTON_SELECT + * Joystick key Select * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1307,7 +1315,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_SELECT = 2311, /** - * KEYCODE_BUTTON_START + * Joystick key Start * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1315,7 +1323,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_START = 2312, /** - * KEYCODE_BUTTON_MODE + * Joystick key Mode * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1323,7 +1331,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_MODE = 2313, /** - * KEYCODE_BUTTON_THUMBL + *Joystick key THUMBL * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1331,7 +1339,7 @@ export declare enum KeyCode { KEYCODE_BUTTON_THUMBL = 2314, /** - * KEYCODE_BUTTON_THUMBR + * Joystick key THUMBR * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 15 @@ -1547,7 +1555,7 @@ export declare enum KeyCode { KEYCODE_HELP = 2625, /** - * KEYCODE_CALC + * Calc key, which is used to start the calculator application * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -2339,7 +2347,7 @@ export declare enum KeyCode { KEYCODE_BRIGHTNESS_MAX = 2725, /** - * KEYCODE_KBDINPUTASSIST_PREV + * Assist_Previous key, used to view historical inputs * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -2347,7 +2355,7 @@ export declare enum KeyCode { KEYCODE_KBDINPUTASSIST_PREV = 2726, /** - * KEYCODE_KBDINPUTASSIST_NEXT + * Assist_Next key, used to view predictive inputs * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -2355,7 +2363,7 @@ export declare enum KeyCode { KEYCODE_KBDINPUTASSIST_NEXT = 2727, /** - * KEYCODE_KBDINPUTASSIST_PREVGROUP + * Assist_Previous_Group key, used to switch to the previous input method in the input group * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -2363,7 +2371,7 @@ export declare enum KeyCode { KEYCODE_KBDINPUTASSIST_PREVGROUP = 2728, /** - * KEYCODE_KBDINPUTASSIST_NEXTGROUP + * Assist_Next_Group key, used to switch to the next input method in the input group * * @syscap SystemCapability.MultimodalInput.Input.Core * @since 9 @@ -2864,5 +2872,13 @@ export declare enum KeyCode { * @syscap SystemCapability.MultimodalInput.Input.Core * @since 18 */ - KEYCODE_DAGGER_LONG_PRESS = 3213 + KEYCODE_DAGGER_LONG_PRESS = 3213, + + /** + * KEYCODE_DIV + * + * @syscap SystemCapability.MultimodalInput.Input.Core + * @since 20 + */ + KEYCODE_DIV = 3220 } diff --git a/api/@ohos.multimodalInput.pointer.d.ts b/api/@ohos.multimodalInput.pointer.d.ts index 5d289d172a90e0c0f6f858095c3777ed9fbbe51c..0491653da2e40fb95007ea90c2c4c448acb5600d 100644 --- a/api/@ohos.multimodalInput.pointer.d.ts +++ b/api/@ohos.multimodalInput.pointer.d.ts @@ -18,46 +18,56 @@ * @kit InputKit */ +/*** if arkts 1.1 */ import type { AsyncCallback } from './@ohos.base'; import type image from './@ohos.multimedia.image'; +/*** endif */ +/*** if arkts 1.2 */ +import { AsyncCallback } from './@ohos.base'; +import image from './@ohos.multimedia.image'; +/*** endif */ /** - * Declares interfaces related to mouse pointer attributes. + * The pointer module provides APIs related to pointer attribute management, such as querying and setting pointer attributes. * * @namespace pointer * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 9 */ /** - * Declares interfaces related to mouse pointer attributes. + * The pointer module provides APIs related to pointer attribute management, such as querying and setting pointer attributes. * * @namespace pointer * @syscap SystemCapability.MultimodalInput.Input.Pointer * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace pointer { /** - * Pointer style. + * Enumerates mouse pointer styles. * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 9 */ /** - * Pointer style. + * Enumerates mouse pointer styles. * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.Pointer * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ enum PointerStyle { /** * Default * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ DEFAULT, @@ -65,7 +75,8 @@ declare namespace pointer { * East arrow * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ EAST, @@ -73,7 +84,8 @@ declare namespace pointer { * West arrow * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ WEST, @@ -81,7 +93,8 @@ declare namespace pointer { * South arrow * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ SOUTH, @@ -89,7 +102,8 @@ declare namespace pointer { * North arrow * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ NORTH, @@ -97,7 +111,8 @@ declare namespace pointer { * East-west arrow * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ WEST_EAST, @@ -105,7 +120,8 @@ declare namespace pointer { * North-south arrow * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ NORTH_SOUTH, @@ -113,7 +129,8 @@ declare namespace pointer { * North-east arrow * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ NORTH_EAST, @@ -121,7 +138,8 @@ declare namespace pointer { * North-west arrow * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ NORTH_WEST, @@ -129,7 +147,8 @@ declare namespace pointer { * South-east arrow * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ SOUTH_EAST, @@ -137,7 +156,8 @@ declare namespace pointer { * South-west arrow * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ SOUTH_WEST, @@ -145,7 +165,8 @@ declare namespace pointer { * Northeast and southwest adjustment * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ NORTH_EAST_SOUTH_WEST, @@ -153,7 +174,8 @@ declare namespace pointer { * Northwest and southeast adjustment * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ NORTH_WEST_SOUTH_EAST, @@ -161,7 +183,8 @@ declare namespace pointer { * Cross (accurate selection) * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ CROSS, @@ -169,7 +192,8 @@ declare namespace pointer { * Copy * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ CURSOR_COPY, @@ -177,7 +201,8 @@ declare namespace pointer { * Forbid * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ CURSOR_FORBID, @@ -185,7 +210,8 @@ declare namespace pointer { * Sucker * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ COLOR_SUCKER, @@ -193,7 +219,8 @@ declare namespace pointer { * Grabbing hand * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ HAND_GRABBING, @@ -201,7 +228,8 @@ declare namespace pointer { * Opening hand * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ HAND_OPEN, @@ -209,7 +237,8 @@ declare namespace pointer { * Hand-shaped pointer * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ HAND_POINTING, @@ -217,7 +246,8 @@ declare namespace pointer { * Help * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ HELP, @@ -225,7 +255,8 @@ declare namespace pointer { * Move * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MOVE, @@ -233,7 +264,8 @@ declare namespace pointer { * Left and right resizing * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ RESIZE_LEFT_RIGHT, @@ -241,7 +273,8 @@ declare namespace pointer { * Up and down resizing * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ RESIZE_UP_DOWN, @@ -249,7 +282,8 @@ declare namespace pointer { * Screenshot crosshair * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ SCREENSHOT_CHOOSE, @@ -257,7 +291,8 @@ declare namespace pointer { * Screenshot * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ SCREENSHOT_CURSOR, @@ -265,7 +300,8 @@ declare namespace pointer { * Text selection * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ TEXT_CURSOR, @@ -273,7 +309,8 @@ declare namespace pointer { * Zoom in * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ ZOOM_IN, @@ -281,7 +318,8 @@ declare namespace pointer { * Zoom out * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ ZOOM_OUT, @@ -289,7 +327,8 @@ declare namespace pointer { * Scrolling east * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_EAST, @@ -297,7 +336,8 @@ declare namespace pointer { * Scrolling west * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_WEST, @@ -305,7 +345,8 @@ declare namespace pointer { * Scrolling south * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_SOUTH, @@ -313,7 +354,8 @@ declare namespace pointer { * Scrolling north * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_NORTH, @@ -321,7 +363,8 @@ declare namespace pointer { * Scrolling north and south * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_NORTH_SOUTH, @@ -329,7 +372,8 @@ declare namespace pointer { * Scrolling northeast * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_NORTH_EAST, @@ -337,7 +381,8 @@ declare namespace pointer { * Scrolling northwest * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_NORTH_WEST, @@ -345,7 +390,8 @@ declare namespace pointer { * Scrolling southeast * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_SOUTH_EAST, @@ -353,7 +399,8 @@ declare namespace pointer { * Scrolling southwest * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_SOUTH_WEST, @@ -361,7 +408,8 @@ declare namespace pointer { * Moving as a cone in four directions * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_NORTH_SOUTH_WEST_EAST, @@ -369,7 +417,8 @@ declare namespace pointer { * Horizontal text selection * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ HORIZONTAL_TEXT_CURSOR, @@ -377,7 +426,8 @@ declare namespace pointer { * Precise selection * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ CURSOR_CROSS, @@ -385,7 +435,8 @@ declare namespace pointer { * Cursor with circle style * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ CURSOR_CIRCLE, @@ -393,14 +444,16 @@ declare namespace pointer { * Loading state with dynamic cursor * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Loading state with dynamic cursor * * @syscap SystemCapability.MultimodalInput.Input.Pointer * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ LOADING, @@ -408,14 +461,16 @@ declare namespace pointer { * Running state with dynamic cursor * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Running state with dynamic cursor * * @syscap SystemCapability.MultimodalInput.Input.Pointer * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ RUNNING, @@ -423,7 +478,8 @@ declare namespace pointer { * Scrolling east and west * * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ MIDDLE_BTN_EAST_WEST } @@ -453,7 +509,7 @@ declare namespace pointer { } /** - * Device right menu type. + * Enumerates shortcut menu triggering modes. * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.Pointer @@ -461,30 +517,45 @@ declare namespace pointer { */ enum RightClickType { /** - * Touchpad right button + * Tapping the right-button area of the touchpad. * * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 10 */ TOUCHPAD_RIGHT_BUTTON = 1, /** - * Touchpad left button + * Tapping the left-button area of the touchpad. * * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 10 */ TOUCHPAD_LEFT_BUTTON = 2, /** - * Touchpad two fingers tap + * Tapping or pressing the touchpad with two fingers. * * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 10 */ TOUCHPAD_TWO_FINGER_TAP = 3, + /** + * Touchpad two fingers tap or right button. + * + * @syscap SystemCapability.MultimodalInput.Input.Pointer + * @since 20 + */ + TOUCHPAD_TWO_FINGER_TAP_OR_RIGHT_BUTTON = 4, + + /** + * Touchpad two fingers tap or left button. + * + * @syscap SystemCapability.MultimodalInput.Input.Pointer + * @since 20 + */ + TOUCHPAD_TWO_FINGER_TAP_OR_LEFT_BUTTON = 5, } /** - * Defines a custom cursor. + * Pixel map resource. * * @interface CustomCursor * @syscap SystemCapability.MultimodalInput.Input.Pointer @@ -492,21 +563,26 @@ declare namespace pointer { */ interface CustomCursor { /** - * pixelMap - Custom cursor. The size limit is 256 x 256. + * Defines a custom cursor. The minimum size is subject to the minimum limit of the image. The maximum size is 256 x 256 px. + * * @type { image.PixelMap } * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 15 */ pixelMap: image.PixelMap; /** - * focusX - Horizontal coordinate of the focus of the custom cursor. It is subject to the size of the custom cursor. + * Horizontal coordinate of the cursor focus. The coordinates are restricted by the size of the custom cursor. + * The minimum value is 0, and the maximum value is the maximum width of the image. The default value is 0 if the parameter is left empty. + * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 15 */ focusX?: number; /** - * focusY - Vertical coordinate of the focus of the custom cursor. It is subject to the size of the custom cursor. + * Vertical coordinate of the cursor focus. The coordinates are restricted by the size of the custom cursor. + * The minimum value is 0, and the maximum value is the maximum height of the image. The default value is 0 if the parameter is left empty. + * * @type { number } * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 15 @@ -515,7 +591,7 @@ declare namespace pointer { } /** - * Specifies custom cursor config. + * Defines the custom cursor configuration. * * @interface CursorConfig * @syscap SystemCapability.MultimodalInput.Input.Pointer @@ -523,7 +599,10 @@ declare namespace pointer { */ interface CursorConfig { /** - * followSystem - Whether to adjust the cursor size based on the system settings. + * Whether to adjust the cursor size based on system settings. + * The value true means to adjust the cursor size based on system settings, and the value false means to use the custom cursor size. + * The adjustment range is [size of the cursor image, 256 x 256]. + * * @type { boolean } * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 15 @@ -532,9 +611,9 @@ declare namespace pointer { } /** - * Sets the pointer moving speed. + * Sets the moving speed of the mouse pointer. This API uses an asynchronous callback to return the result. * - * @param { number } speed - Pointer moving speed, which is any number. + * @param { number } speed - Moving speed of the mouse pointer. The value ranges from 1 to 20. The default value is 10. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -543,9 +622,9 @@ declare namespace pointer { * @since 9 */ /** - * Sets the pointer moving speed. + * Sets the moving speed of the mouse pointer. This API uses an asynchronous callback to return the result. * - * @param { number } speed - Pointer moving speed, which is any number. + * @param { number } speed - Moving speed of the mouse pointer. The value ranges from 1 to 20. The default value is 10. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -557,9 +636,9 @@ declare namespace pointer { function setPointerSpeed(speed: number, callback: AsyncCallback<void>): void; /** - * Sets the pointer moving speed. + * Sets the moving speed of the mouse pointer. This API uses a promise to return the result. * - * @param { number } speed - Pointer moving speed, which is any number. + * @param { number } speed - Moving speed of the mouse pointer. The value ranges from 1 to 20. The default value is 10. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -568,9 +647,9 @@ declare namespace pointer { * @since 9 */ /** - * Sets the pointer moving speed. + * Sets the moving speed of the mouse pointer. This API uses a promise to return the result. * - * @param { number } speed - Pointer moving speed, which is any number. + * @param { number } speed - Moving speed of the mouse pointer. The value ranges from 1 to 20. The default value is 10. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -582,9 +661,9 @@ declare namespace pointer { function setPointerSpeed(speed: number): Promise<void>; /** - * Sets the pointer moving speed through sync mode. + * Sets the moving speed of the mouse pointer. This API returns the result synchronously. * - * @param { number } speed - Pointer moving speed, which is any number. + * @param { number } speed - Moving speed of the mouse pointer. The value ranges from 1 to 20. The default value is 10. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -595,7 +674,7 @@ declare namespace pointer { function setPointerSpeedSync(speed: number): void; /** - * Queries the pointer moving speed. + * Obtains the moving speed of the mouse pointer. This API uses an asynchronous callback to return the result. * * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -605,7 +684,7 @@ declare namespace pointer { * @since 9 */ /** - * Queries the pointer moving speed. + * Obtains the moving speed of the mouse pointer. This API uses an asynchronous callback to return the result. * * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. @@ -618,17 +697,17 @@ declare namespace pointer { function getPointerSpeed(callback: AsyncCallback<number>): void; /** - * Queries the pointer moving speed. + * Obtains the moving speed of the mouse pointer. This API uses a promise to return the result. * - * @returns { Promise<number> } Returns the result through a promise. + * @returns { Promise<number> } Promise used to return the result. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @systemapi hide for inner use * @since 9 */ /** - * Queries the pointer moving speed. + * Obtains the moving speed of the mouse pointer. This API uses a promise to return the result. * - * @returns { Promise<number> } Returns the result through a promise. + * @returns { Promise<number> } Promise used to return the result. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @systemapi hide for inner use @@ -637,7 +716,8 @@ declare namespace pointer { function getPointerSpeed(): Promise<number>; /** - * Queries the pointer moving speed through sync mode. + * Obtains the moving speed of the mouse pointer. This API returns the result synchronously. + * * @returns { number } Returns the pointer speed through sync mode. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -649,7 +729,7 @@ declare namespace pointer { function getPointerSpeedSync(): number; /** - * Sets the pointer style. + * Sets the mouse pointer style. This API uses an asynchronous callback to return the result. * * @param { number } windowId - Window ID. * @param { PointerStyle } pointerStyle - Pointer style. @@ -657,25 +737,27 @@ declare namespace pointer { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function setPointerStyle(windowId: number, pointerStyle: PointerStyle, callback: AsyncCallback<void>): void; /** - * Sets the pointer style. + * Sets the mouse pointer style. This API uses a promise to return the result. * * @param { number } windowId - Window ID. * @param { PointerStyle } pointerStyle - Pointer style. - * @returns { Promise<void> } Returns the result through a promise. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function setPointerStyle(windowId: number, pointerStyle: PointerStyle): Promise<void>; /** - * Sets the pointer style through sync mode. + * Sets the mouse pointer style. This API returns the result synchronously. * * @param { number } windowId - Window ID. * @param { PointerStyle } pointerStyle - Pointer style. @@ -687,10 +769,10 @@ declare namespace pointer { function setPointerStyleSync(windowId: number, pointerStyle: PointerStyle): void; /** - * Queries the pointer style. + * Obtains the mouse pointer style. This API uses an asynchronous callback to return the result. * * @param { number } windowId - Window ID. - * @param { AsyncCallback<PointerStyle> } callback - Callback used to return the result. + * @param { AsyncCallback<PointerStyle> } callback - Callback used to return the mouse pointer style. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Pointer @@ -699,10 +781,11 @@ declare namespace pointer { function getPointerStyle(windowId: number, callback: AsyncCallback<PointerStyle>): void; /** - * Queries the pointer style. + * Obtains the mouse pointer style. This API uses a promise to return the result. * - * @param { number } windowId - Window ID. - * @returns { Promise<PointerStyle> } Returns the result through a promise. + * @param { number } windowId - Window ID. The value is an integer greater than or equal to -1. + * The value -1 indicates the global window. + * @returns { Promise<PointerStyle> } Promise used to return the mouse pointer style. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Pointer @@ -711,9 +794,10 @@ declare namespace pointer { function getPointerStyle(windowId: number): Promise<PointerStyle>; /** - * Queries the pointer style through sync mode. + * Obtains the mouse pointer style, such as the east arrow, west arrow, south arrow, and north arrow. + * This API returns the result synchronously. * - * @param { number } windowId - Window ID. + * @param { number } windowId - Window ID. The default value is -1, indicating the global mouse pointer style. * @returns { PointerStyle } Returns the pointerStyle. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -723,34 +807,34 @@ declare namespace pointer { function getPointerStyleSync(windowId: number): PointerStyle; /** - * Sets whether the pointer icon is visible. + * Sets the visible status of the mouse pointer. This API uses an asynchronous callback to return the result. * - * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer + * @param { boolean } visible Whether the mouse pointer is visible. The value true indicates that the pointer * icon is visible, and the value false indicates the opposite. - * @param { AsyncCallback<void> } callback - Callback for the input device event. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 9 */ /** - * Sets whether the pointer icon is visible. + * Sets the visible status of the mouse pointer. This API uses an asynchronous callback to return the result. * - * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer + * @param { boolean } visible Whether the mouse pointer is visible. The value true indicates that the pointer * icon is visible, and the value false indicates the opposite. - * @param { AsyncCallback<void> } callback - Callback for the input device event. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported; * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 14 + * @since 18 */ function setPointerVisible(visible: boolean, callback: AsyncCallback<void>): void; /** - * Sets whether the pointer icon is visible. + * Sets the visible status of the mouse pointer. This API uses a promise to return the result. * - * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer + * @param { boolean } visible Whether the mouse pointer is visible. The value true indicates that the pointer * icon is visible, and the value false indicates the opposite. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -759,23 +843,23 @@ declare namespace pointer { * @since 9 */ /** - * Sets whether the pointer icon is visible. + * Sets the visible status of the mouse pointer. This API uses a promise to return the result. * - * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer + * @param { boolean } visible Whether the mouse pointer is visible. The value true indicates that the pointer * icon is visible, and the value false indicates the opposite. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported; * @syscap SystemCapability.MultimodalInput.Input.Pointer - * @since 14 + * @since 18 */ function setPointerVisible(visible: boolean): Promise<void>; /** - * Sets whether the pointer icon is visible through sync mode. + * Sets the visible status of the mouse pointer. This API returns the result synchronously. * - * @param { boolean } visible Whether the pointer icon is visible. The value true indicates that the pointer + * @param { boolean } visible Whether the mouse pointer is visible. The value true indicates that the pointer * icon is visible, and the value false indicates the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -785,10 +869,10 @@ declare namespace pointer { function setPointerVisibleSync(visible: boolean): void; /** - * Checks whether the pointer icon is visible. + * Checks the visible status of the mouse pointer. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Returns <b>true</b> if the pointer icon is visible, - * returns <b>false</b> otherwise. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * The value true indicates that the mouse pointer is visible, and the value false indicates the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Pointer @@ -797,28 +881,31 @@ declare namespace pointer { function isPointerVisible(callback: AsyncCallback<boolean>): void; /** - * Checks whether the pointer icon is visible. + * Obtains the visible status of the mouse pointer. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns <b>true</b> if the pointer icon is visible; returns <b>false</b> otherwise. + * @returns { Promise<boolean> } Promise used to return the visible status of the mouse pointer. + * The value true indicates that the mouse pointer is visible, and the value false indicates the opposite. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 9 */ function isPointerVisible(): Promise<boolean>; /** - * Checks whether the pointer icon is visible through sync mode. + * Obtains the visible status of the mouse pointer. This API returns the result synchronously. * - * @returns { boolean } Returns true if the pointer icon is visible, returns false otherwise. + * @returns { boolean } Visible status of the mouse pointer. + * The value true indicates that the mouse pointer is visible, and the value false indicates the opposite. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 10 */ function isPointerVisibleSync(): boolean; /** - * Set the color of pointer. + * Sets the pointer color. This API uses an asynchronous callback to return the result. * - * @param { number } color - Indicates the color of pointer. - * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @param { number } color - Pointer color. The default value is black (0x000000). + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * If the operation is successful, err is undefined. Otherwise, err is an error object. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -829,10 +916,10 @@ declare namespace pointer { function setPointerColor(color: number, callback: AsyncCallback<void>): void; /** - * Set the color of pointer. + * Sets the pointer color. This API uses a promise to return the result. * - * @param { number } color - Indicates the color of pointer. - * @returns { Promise<void> } Returns the result through a promise. + * @param { number } color - Pointer color. The default value is black (0x000000). + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -843,9 +930,9 @@ declare namespace pointer { function setPointerColor(color: number): Promise<void>; /** - * Set the color of pointer. + * Sets the pointer color. This API returns the result synchronously. * - * @param { number } color - Indicates the color of pointer. + * @param { number } color - Pointer color. The default value is black (0x000000). * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -856,7 +943,7 @@ declare namespace pointer { function setPointerColorSync(color: number): void; /** - * Get the color of pointer. + * Obtains the pointer color. This API uses an asynchronous callback to return the result. * * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. @@ -869,9 +956,9 @@ declare namespace pointer { function getPointerColor(callback: AsyncCallback<number>): void; /** - * Get the color of pointer. + * Obtains the pointer color. This API uses a promise to return the result. * - * @returns { Promise<number> } Returns the result through a promise. + * @returns { Promise<number> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @systemapi hide for inner use. @@ -880,9 +967,9 @@ declare namespace pointer { function getPointerColor(): Promise<number>; /** - * Get the color of pointer. + * Obtains the pointer color. This API returns the result synchronously. * - * @returns { number } Returns the pointer color through sync mode. + * @returns { number } Pointer color. * @throws { BusinessError } 202 - SystemAPI permission error. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @systemapi hide for inner use. @@ -891,10 +978,11 @@ declare namespace pointer { function getPointerColorSync(): number; /** - * Set the size of pointer. + * Sets the pointer size. This API uses an asynchronous callback to return the result. * - * @param { number } size - Indicates the size of pointer. - * @param { AsyncCallback<void> } callback - Callback used to return the result. + * @param { number } size - Pointer size. The value ranges from 1 to 7. The default value is 1. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * If the operation is successful, err is undefined. Otherwise, err is an error object. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -905,9 +993,9 @@ declare namespace pointer { function setPointerSize(size: number, callback: AsyncCallback<void>): void; /** - * Set the size of pointer. + * Sets the pointer size. This API uses a promise to return the result. * - * @param { number } size - Indicates the size of pointer. + * @param { number } size - Pointer size. The value ranges from 1 to 7. The default value is 1. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -919,9 +1007,9 @@ declare namespace pointer { function setPointerSize(size: number): Promise<void>; /** - * Set the size of pointer. + * Sets the pointer size. This API returns the result synchronously. * - * @param { number } size - Indicates the size of pointer. + * @param { number } size - Pointer size. The value ranges from 1 to 7. The default value is 1. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -932,7 +1020,7 @@ declare namespace pointer { function setPointerSizeSync(size: number): void; /** - * Get the size of pointer. + * Obtains the pointer size. This API uses an asynchronous callback to return the result. * * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. @@ -945,9 +1033,9 @@ declare namespace pointer { function getPointerSize(callback: AsyncCallback<number>): void; /** - * Get the size of pointer. + * Obtains the pointer size. This API uses a promise to return the result. * - * @returns { Promise<number> } Returns the result through a promise. + * @returns { Promise<number> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @systemapi hide for inner use. @@ -956,9 +1044,9 @@ declare namespace pointer { function getPointerSize(): Promise<number>; /** - * Get the size of pointer. + * Obtains the pointer size. This API returns the result synchronously. * - * @returns { number } Returns the pointer size through sync mode. + * @returns { number } Pointer size. * @throws { BusinessError } 202 - SystemAPI permission error. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @systemapi hide for inner use. @@ -967,10 +1055,9 @@ declare namespace pointer { function getPointerSizeSync(): number; /** - * Sets mouse primary button. + * Sets the primary button of the mouse. This API uses an asynchronous callback to return the result. * - * @param { PrimaryButton } primary - Indicates mouse primary button. The value LEFT indicates that mouse primary - * button is left button, and the value RIGHT indicates that mouse primary button is right button. + * @param { PrimaryButton } primary - ID of the primary mouse button. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -982,11 +1069,10 @@ declare namespace pointer { function setMousePrimaryButton(primary: PrimaryButton, callback: AsyncCallback<void>): void; /** - * Sets mouse primary button. + * Sets the primary button of the mouse. This API uses a promise to return the result. * - * @param { PrimaryButton } primary - Indicates mouse primary button. The value LEFT indicates that mouse primary - * button is left button, and the value RIGHT indicates that mouse primary button is right button. - * @returns { Promise<void> } Returns the result through a promise. + * @param { PrimaryButton } primary - ID of the primary mouse button. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -997,7 +1083,7 @@ declare namespace pointer { function setMousePrimaryButton(primary: PrimaryButton): Promise<void>; /** - * Gets mouse primary button. + * Obtains the primary button of the mouse. This API uses an asynchronous callback to return the result. * * @param { AsyncCallback<PrimaryButton> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. @@ -1010,9 +1096,9 @@ declare namespace pointer { function getMousePrimaryButton(callback: AsyncCallback<PrimaryButton>): void; /** - * Gets mouse primary button. + * Obtains the primary button of the mouse. This API uses a promise to return the result. * - * @returns { Promise<PrimaryButton> } Returns the result through a promise. + * @returns { Promise<PrimaryButton> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1023,10 +1109,10 @@ declare namespace pointer { function getMousePrimaryButton(): Promise<PrimaryButton>; /** - * Sets whether the mouse hover scroll is enabled in inactive window. + * Sets the status of the mouse hover scroll switch. This API uses an asynchronous callback to return the result. * - * @param { boolean } state - Indicates whether the mouse hover scroll is enabled in inactive window. The value true - * indicates that the mouse hover scroll is enabled, and the value false indicates the opposite. + * @param { boolean } state - Status of the mouse hover scroll switch. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1038,10 +1124,10 @@ declare namespace pointer { function setHoverScrollState(state: boolean, callback: AsyncCallback<void>): void; /** - * Sets whether mouse hover scroll is enabled in inactive window. + * Sets the status of the mouse hover scroll switch. This API uses a promise to return the result. * - * @param { boolean } state - Indicates whether the mouse hover scroll is enabled in inactive window. The value true - * indicates that the mouse hover scroll is enabled, and the value false indicates the opposite. + * @param { boolean } state - Status of the mouse hover scroll switch. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1053,9 +1139,10 @@ declare namespace pointer { function setHoverScrollState(state: boolean): Promise<void>; /** - * Gets a status whether the mouse hover scroll is enabled in inactive window. + * Obtains the status of the mouse hover scroll switch. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * @param { AsyncCallback<boolean> } callback - Obtains the status of the mouse hover scroll switch. + * This API uses an asynchronous callback to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1066,9 +1153,10 @@ declare namespace pointer { function getHoverScrollState(callback: AsyncCallback<boolean>): void; /** - * Gets a status whether mouse hover scroll is enabled in inactive window. + * Obtains the status of the mouse hover scroll switch. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns the result through a promise. + * @returns { Promise<boolean> } Promise used to return the result. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1079,9 +1167,9 @@ declare namespace pointer { function getHoverScrollState(): Promise<boolean>; /** - * Set the number of mouse scrolling rows. + * Sets the number of mouse scroll rows. This API uses an asynchronous callback to return the result. * - * @param { number } rows - Indicates the number of mouse scrolling rows. + * @param { number } rows - Number of mouse scroll rows. The value ranges from 1 to 100. The default value is 3. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1093,9 +1181,9 @@ declare namespace pointer { function setMouseScrollRows(rows: number, callback: AsyncCallback<void>): void; /** - * Set the number of mouse scrolling rows. + * Sets the number of mouse scroll rows. This API uses a promise to return the result. * - * @param { number } rows - Indicates the number of mouse scrolling rows. + * @param { number } rows - Number of mouse scroll rows. The value ranges from 1 to 100. The default value is 3. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1107,7 +1195,7 @@ declare namespace pointer { function setMouseScrollRows(rows: number): Promise<void>; /** - * Get the number of mouse scrolling rows. + * Obtains the number of mouse scroll rows. This API uses an asynchronous callback to return the result. * * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. @@ -1120,9 +1208,9 @@ declare namespace pointer { function getMouseScrollRows(callback: AsyncCallback<number>): void; /** - * Get the number of mouse scrolling rows. + * Obtains the moving speed of the mouse pointer. This API uses a promise to return the result. * - * @returns { Promise<number> } Returns the result through a promise. + * @returns { Promise<number> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1133,9 +1221,10 @@ declare namespace pointer { function getMouseScrollRows(): Promise<number>; /** - * Set touchpad scroll switch. + * Sets the scroll switch of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { boolean } state - Indicates whether the touchpad scroll switch is enabled + * @param { boolean } state - Scroll switch status. The value true indicates that the switch is enabled, + * and the value false indicates the opposite. The default value is true. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1147,10 +1236,11 @@ declare namespace pointer { function setTouchpadScrollSwitch(state: boolean, callback: AsyncCallback<void>): void; /** - * Set touchpad scroll switch. + * Sets the scroll switch of the touchpad. This API uses a promise to return the result. * - * @param { boolean } state - Indicates whether the touchpad scroll switch is enabled - * @returns { Promise<void> } Returns the result through a promise. + * @param { boolean } state - Scroll switch status. The value true indicates that the switch is enabled, + * and the value false indicates the opposite. The default value is true. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1161,9 +1251,10 @@ declare namespace pointer { function setTouchpadScrollSwitch(state: boolean): Promise<void>; /** - * Get touchpad scroll switch state. + * Obtains the scroll switch status of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1174,9 +1265,10 @@ declare namespace pointer { function getTouchpadScrollSwitch(callback: AsyncCallback<boolean>): void; /** - * Get touchpad scroll switch state. + * Obtains the scroll switch status of the touchpad. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns the result through a promise. + * @returns { Promise<boolean> } Promise used to return the result. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1187,9 +1279,11 @@ declare namespace pointer { function getTouchpadScrollSwitch(): Promise<boolean>; /** - * Set touchpad scroll direction. + * Sets the scroll direction of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { boolean } state - Indicates whether the touchpad scroll direction is forward or reverse + * @param { boolean } state - Scroll direction of the touchpad. + * The value true indicates that the scroll direction is the same as the finger moving direction, and the value false indicates the opposite. + * The default value is true. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1201,10 +1295,12 @@ declare namespace pointer { function setTouchpadScrollDirection(state: boolean, callback: AsyncCallback<void>): void; /** - * Set touchpad scroll direction. + * Sets the scroll direction of the touchpad. This API uses a promise to return the result. * - * @param { boolean } state - Indicates whether the touchpad scroll direction is forward or reverse - * @returns { Promise<void> } Returns the result through a promise. + * @param { boolean } state - Scroll direction of the touchpad. + * The value true indicates that the scroll direction is the same as the finger moving direction, and the value false indicates the opposite. + * The default value is true. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1215,9 +1311,11 @@ declare namespace pointer { function setTouchpadScrollDirection(state: boolean): Promise<void>; /** - * Get touchpad scroll direction. + * Obtains the scroll direction of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * The value true indicates that the scroll direction is the same as the finger moving direction, and the value false indicates the opposite. + * The default value is true. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1228,9 +1326,11 @@ declare namespace pointer { function getTouchpadScrollDirection(callback: AsyncCallback<boolean>): void; /** - * Get touchpad scroll direction. + * Obtains the scroll direction of the touchpad. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns the result through a promise. + * @returns { Promise<boolean> } Promise used to return the result. + * The value true indicates that the scroll direction is the same as the finger moving direction, and the value false indicates the opposite. + * The default value is true. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1241,9 +1341,10 @@ declare namespace pointer { function getTouchpadScrollDirection(): Promise<boolean>; /** - * Set touchpad tap switch. + * Sets the tap switch of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { boolean } state - Indicates whether the touchpad tap switch is enabled + * @param { boolean } state - Tap switch status of the touchpad The value true indicates that the switch is enabled, + * and the value false indicates the opposite. The default value is true. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1255,9 +1356,10 @@ declare namespace pointer { function setTouchpadTapSwitch(state: boolean, callback: AsyncCallback<void>): void; /** - * Set touchpad tap switch. + * Sets the tap switch of the touchpad. This API uses a promise to return the result. * - * @param { boolean } state - Indicates whether the touchpad tap switch is enabled + * @param { boolean } state - Tap switch status of the touchpad. The value true indicates that the switch is enabled, + * and the value false indicates the opposite. The default value is true. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1269,9 +1371,10 @@ declare namespace pointer { function setTouchpadTapSwitch(state: boolean): Promise<void>; /** - * Get touchpad tap switch state. + * Obtains the tap switch status of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1282,9 +1385,10 @@ declare namespace pointer { function getTouchpadTapSwitch(callback: AsyncCallback<boolean>): void; /** - * Get touchpad tap switch state. + * Obtains the tap switch status of the touchpad. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns the result through a promise. + * @returns { Promise<boolean> } Promise used to return the result. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1295,9 +1399,9 @@ declare namespace pointer { function getTouchpadTapSwitch(): Promise<boolean>; /** - * Set touchpad pointer speed. + * Sets the mouse pointer moving speed of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { number } speed - Indicates the number of touchpad pointer speed. + * @param { number } speed - Mouse pointer moving speed of the touchpad. The value range is [1,11]. The default value is 6. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1309,9 +1413,9 @@ declare namespace pointer { function setTouchpadPointerSpeed(speed: number, callback: AsyncCallback<void>): void; /** - * Set touchpad pointer speed. + * Sets the mouse pointer moving speed of the touchpad. This API uses a promise to return the result. * - * @param { number } speed - Indicates the number of touchpad pointer speed. + * @param { number } speed - Mouse pointer moving speed of the touchpad. The value range is [1,11]. The default value is 6. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1323,7 +1427,7 @@ declare namespace pointer { function setTouchpadPointerSpeed(speed: number): Promise<void>; /** - * Get touchpad pointer speed. + * Obtains the mouse pointer moving speed of the touchpad. This API uses an asynchronous callback to return the result. * * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. @@ -1336,9 +1440,9 @@ declare namespace pointer { function getTouchpadPointerSpeed(callback: AsyncCallback<number>): void; /** - * Get touchpad pointer speed. + * Obtains the mouse pointer moving speed of the touchpad. This API uses a promise to return the result. * - * @returns { Promise<number> } Returns the result through a promise. + * @returns { Promise<number> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1349,9 +1453,10 @@ declare namespace pointer { function getTouchpadPointerSpeed(): Promise<number>; /** - * Set touchpad pinch switch. + * Sets the pinch switch of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { boolean } state - Indicates whether the touchpad pinch switch is enabled + * @param { boolean } state - Pinch switch status of the touchpad. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1363,10 +1468,11 @@ declare namespace pointer { function setTouchpadPinchSwitch(state: boolean, callback: AsyncCallback<void>): void; /** - * Set touchpad pinch switch. + * Sets the pinch switch of the touchpad. This API uses a promise to return the result. * - * @param { boolean } state - Indicates whether the touchpad pinch switch is enabled - * @returns { Promise<void> } Returns the result through a promise. + * @param { boolean } state - Pinch switch status of the touchpad. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1377,9 +1483,10 @@ declare namespace pointer { function setTouchpadPinchSwitch(state: boolean): Promise<void>; /** - * Get touchpad pinch switch state. + * Obtains the pinch switch status of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1390,9 +1497,10 @@ declare namespace pointer { function getTouchpadPinchSwitch(callback: AsyncCallback<boolean>): void; /** - * Get touchpad pinch switch state. + * Obtains the pinch switch status of the touchpad. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns the result through a promise. + * @returns { Promise<boolean> } Promise used to return the result. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1403,9 +1511,10 @@ declare namespace pointer { function getTouchpadPinchSwitch(): Promise<boolean>; /** - * Set touchpad swipe switch. + * Sets the multi-finger swipe switch of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { boolean } state - Indicates whether the touchpad swipe switch is enabled + * @param { boolean } state - Swipe switch status of the touchpad. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1417,10 +1526,11 @@ declare namespace pointer { function setTouchpadSwipeSwitch(state: boolean, callback: AsyncCallback<void>): void; /** - * Set touchpad swipe switch. + * Sets the swipe switch of the touchpad. This API uses a promise to return the result. * - * @param { boolean } state - Indicates whether the touchpad swipe switch is enabled - * @returns { Promise<void> } Returns the result through a promise. + * @param { boolean } state - Swipe switch status of the touchpad. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1431,9 +1541,10 @@ declare namespace pointer { function setTouchpadSwipeSwitch(state: boolean): Promise<void>; /** - * Get touchpad swipe switch state. + * Obtains the multi-finger swipe switch status of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1444,9 +1555,10 @@ declare namespace pointer { function getTouchpadSwipeSwitch(callback: AsyncCallback<boolean>): void; /** - * Get touchpad swipe switch state. + * Obtains the multi-finger swipe switch status of the touchpad. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns the result through a promise. + * @returns { Promise<boolean> } Promise used to return the result. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. The default value is true. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1457,9 +1569,15 @@ declare namespace pointer { function getTouchpadSwipeSwitch(): Promise<boolean>; /** - * Set touchpad right click type. + * Sets the shortcut menu type of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { RightClickType } type - Indicates the type of touchpad right button menu. + * @param { RightClickType } type - Shortcut menu type of the touchpad. + - TOUCHPAD_RIGHT_BUTTON: Tapping the right-button area of the touchpad. + - TOUCHPAD_LEFT_BUTTON: Tapping the left-button area of the touchpad. + - TOUCHPAD_TWO_FINGER_TAP: Tapping or pressing the touchpad with two fingers. + - TOUCHPAD_TWO_FINGER_TAP_OR_RIGHT_BUTTON: Tapping or pressing the touchpad with two fingers, or tapping the right-button area of the touchpad. + - TOUCHPAD_TWO_FINGER_TAP_OR_LEFT_BUTTON: Tapping or pressing the touchpad with two fingers, or tapping the left-button area of the touchpad. + * The default value is TOUCHPAD_TWO_FINGER_TAP_OR_RIGHT_BUTTON. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1471,10 +1589,16 @@ declare namespace pointer { function setTouchpadRightClickType(type: RightClickType, callback: AsyncCallback<void>): void; /** - * Set touchpad right click type. + * Sets the shortcut menu type of the touchpad. This API uses a promise to return the result. * - * @param { RightClickType } type - Indicates the type of touchpad right click. - * @returns { Promise<void> } Returns the result through a promise. + * @param { RightClickType } type - Shortcut menu type of the touchpad. + - TOUCHPAD_RIGHT_BUTTON: Tapping the right-button area of the touchpad. + - TOUCHPAD_LEFT_BUTTON: Tapping the left-button area of the touchpad. + - TOUCHPAD_TWO_FINGER_TAP: Tapping or pressing the touchpad with two fingers. + - TOUCHPAD_TWO_FINGER_TAP_OR_RIGHT_BUTTON: Tapping or pressing the touchpad with two fingers, or tapping the right-button area of the touchpad. + - TOUCHPAD_TWO_FINGER_TAP_OR_LEFT_BUTTON: Tapping or pressing the touchpad with two fingers, or tapping the left-button area of the touchpad. + * The default value is TOUCHPAD_TWO_FINGER_TAP_OR_RIGHT_BUTTON. + * @returns { Promise<void> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1485,9 +1609,9 @@ declare namespace pointer { function setTouchpadRightClickType(type: RightClickType): Promise<void>; /** - * Get touchpad right click type. + * Obtains the shortcut menu type of the touchpad. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<RightClickType> } callback - Callback used to return the result of right click type. + * @param { AsyncCallback<RightClickType> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1498,9 +1622,9 @@ declare namespace pointer { function getTouchpadRightClickType(callback: AsyncCallback<RightClickType>): void; /** - * Get touchpad right click type. + * Obtains the shortcut menu type of the touchpad. This API uses a promise to return the result. * - * @returns { Promise<RightClickType> } Returns the result of right click type through a promise. + * @returns { Promise<RightClickType> } Promise used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1511,13 +1635,13 @@ declare namespace pointer { function getTouchpadRightClickType(): Promise<RightClickType>; /** - * Sets the custom cursor. + * Sets the custom cursor style. This API uses a promise to return the result. * * @param { number } windowId - Window ID. - * @param { image.PixelMap } pixelMap - the cursor of pixelMap. - * @param { number } focusX - focus x. - * @param { number } focusY - focus y. - * @returns { Promise<void> } Returns the result through a promise. + * @param { image.PixelMap } pixelMap - Pixel map resource. + * @param { number } focusX - Focus x of the custom cursor. The value is greater than or equal to 0. The default value is 0. + * @param { number } focusY - Focus y of the custom cursor. The value is greater than or equal to 0. The default value is 0. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Pointer @@ -1526,12 +1650,12 @@ declare namespace pointer { function setCustomCursor(windowId: number, pixelMap: image.PixelMap, focusX?: number, focusY?: number): Promise<void>; /** - * Sets the custom cursor through sync mode. + * Sets a custom cursor. This API returns the result synchronously. * - * @param { number } windowId - Window ID. - * @param { image.PixelMap } pixelMap - the cursor of pixelMap. - * @param { number } focusX - focus x. - * @param { number } focusY - focus y. + * @param { number } windowId - Window ID. The value must be an integer greater than 0. + * @param { image.PixelMap } pixelMap - Pixel map resource. + * @param { number } focusX - Focus x of the custom cursor. The value is greater than or equal to 0. The default value is 0. + * @param { number } focusY - Focus y of the custom cursor. The value is greater than or equal to 0. The default value is 0. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.MultimodalInput.Input.Pointer @@ -1540,25 +1664,30 @@ declare namespace pointer { function setCustomCursorSync(windowId: number, pixelMap: image.PixelMap, focusX?: number, focusY?: number): void; /** - * Sets the custom cursor. You can set whether to adjust the cursor size based on the system settings. + * Sets the custom cursor style. This API uses a promise to return the result. + * The cursor may be switched back to the system style in the following cases: application window layout change, hot zone switching, + * page redirection, moving of the cursor out of the window and then back to the window, or moving of the cursor in different areas of the window. + * In this case, you need to reset the cursor style. * * @param { number } windowId - Window ID. - * @param { CustomCursor } cursor - Custom cursor, including the custom cursor resource and focus position. - * @param { CursorConfig } config - Custom cursor config. - * @returns { Promise<void> } Returns the result through a promise. + * @param { CustomCursor } cursor - Pixel map resource. + * @param { CursorConfig } config - Custom cursor configuration, which specifies whether to adjust the cursor size based on system settings. + * If followSystem in CursorConfig is set to true, the supported adjustment range is [size of the cursor image, 256 x 256]. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Abnormal windowId parameter passed in; * <br>2. Abnormal pixelMap parameter passed in; 3. Abnormal focusX parameter passed in; * <br>4. Abnormal focusY parameter passed in. - * @throws { BusinessError } 26500001 - Invalid windowId. + * @throws { BusinessError } 26500001 - Invalid windowId. Possible causes: The window id does not belong to the current process. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @since 15 */ function setCustomCursor(windowId: number, cursor: CustomCursor, config: CursorConfig): Promise<void>; /** - * Set touchpad double tap and drag state. + * Sets the double-tap and drag switch for the touchpad. This API uses an asynchronous callback to return the result. * - * @param { boolean } isOpen - Indicates whether the touchpad double tap and drag is enabled + * @param { boolean } isOpen - Status of the double-tap and drag switch. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1570,9 +1699,10 @@ declare namespace pointer { function setTouchpadDoubleTapAndDragState(isOpen: boolean, callback: AsyncCallback<void>): void; /** - * Set touchpad double tap and drag state. + * Sets the double-tap and drag switch for the touchpad. This API uses a promise to return the result. * - * @param { boolean } isOpen - Indicates whether the touchpad double tap and drag is enabled + * @param { boolean } isOpen - Status of the double-tap and drag switch. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -1584,9 +1714,10 @@ declare namespace pointer { function setTouchpadDoubleTapAndDragState(isOpen: boolean): Promise<void>; /** - * Get touchpad double tap and drag state. + * Obtains the status of the double-tap and drag switch for the touchpad. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Callback used to return the result. + * @param { AsyncCallback<boolean> } callback - Callback used to return the status of the double-tap drag switch. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -1597,9 +1728,10 @@ declare namespace pointer { function getTouchpadDoubleTapAndDragState(callback: AsyncCallback<boolean>): void; /** - * Get touchpad double tap and drag state. + * Obtains the status of the double-tap and drag switch for the touchpad. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns the result through a promise. + * @returns { Promise<boolean> } Promise used to return the status of the touchpad double-tap drag switch. + * The value true indicates that the switch is enabled, and the value false indicates the opposite. * @throws { BusinessError } 202 - SystemAPI permission error. * @syscap SystemCapability.MultimodalInput.Input.Pointer * @systemapi hide for inner use. diff --git a/api/@ohos.multimodalInput.shortKey.d.ts b/api/@ohos.multimodalInput.shortKey.d.ts index 8aa54864f0d5b359ffa4235b5c3b7ef6bce65fdb..d9436672cf2c72bab193bb906773ed73be5dafea 100644 --- a/api/@ohos.multimodalInput.shortKey.d.ts +++ b/api/@ohos.multimodalInput.shortKey.d.ts @@ -20,7 +20,8 @@ import type { AsyncCallback } from './@ohos.base'; /** - * Declares interfaces related to short key attributes. + * The shortKey module provides APIs to set the delay for starting an ability using a shortcut key. + * For example, you can set the delay to 3 seconds so that a screenshot is taken when you press and hold the shortcut key for 3 seconds. * * @namespace shortKey * @syscap SystemCapability.MultimodalInput.Input.ShortKey @@ -30,10 +31,14 @@ import type { AsyncCallback } from './@ohos.base'; declare namespace shortKey { /** - * Sets short key down duration. - * @param { string } businessKey - The key for business which should be applied to MMI. - * @param { number } delay - Duration of short key press which should be limited to 0-4000ms. - * @param { AsyncCallback<void> } callback - Callback used to return the result. + * Sets the delay for starting an ability using shortcut keys. + * This API uses an asynchronous callback to return the result. + * + * @param { string } businessKey - Unique service ID registered on the multimodal side. + * It corresponds to businessId in the ability_launch_config.json file. You need to query this parameter on your own before calling the API. + * @param { number } delay - Delay for starting an ability using shortcut keys, in milliseconds. This field is invalid only when shortcut keys are used. + * @param { AsyncCallback<void> } callback - Callback used to return the result. + * If the operation is successful, err is undefined. Otherwise, err is an error object. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. @@ -44,9 +49,12 @@ declare namespace shortKey { function setKeyDownDuration(businessKey: string, delay: number, callback: AsyncCallback<void>): void; /** - * Sets short key down duration. - * @param { string } businessKey - The key for business which should be applied to MMI. - * @param { number } delay - Duration of short key press which should be limited to 0-4000ms. + * Sets the delay for starting an ability using shortcut keys. + * This API uses a promise to return the result. + * + * @param { string } businessKey - Unique service ID registered on the multimodal side. + * It corresponds to businessId in the ability_launch_config.json file. You need to query this parameter on your own before calling the API. + * @param { number } delay - Delay for starting an ability using shortcut keys, in milliseconds. This field is invalid only when shortcut keys are used. * @returns { Promise<void> } Returns the result through a promise. * @throws { BusinessError } 202 - SystemAPI permission error. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; @@ -70,7 +78,7 @@ export default shortKey; */ export declare enum FingerprintAction { /** - * Key touching. + * Pressing down. * * @syscap SystemCapability.MultimodalInput.Input.Core * @systemapi Hide this for inner system use. @@ -79,7 +87,7 @@ export declare enum FingerprintAction { DOWN = 0, /** - * Finger lifting. + * Lifting up. * * @syscap SystemCapability.MultimodalInput.Input.Core * @systemapi Hide this for inner system use. @@ -88,7 +96,7 @@ export declare enum FingerprintAction { UP = 1, /** - * Sliding on the fingerprint key. + * Sliding. * * @syscap SystemCapability.MultimodalInput.Input.Core * @systemapi Hide this for inner system use. @@ -97,7 +105,7 @@ export declare enum FingerprintAction { SLIDE = 2, /** - * Second touch during the double-click process. + * Retouching. * * @syscap SystemCapability.MultimodalInput.Input.Core * @systemapi Hide this for inner system use. @@ -106,7 +114,7 @@ export declare enum FingerprintAction { RETOUCH = 3, /** - * Double-click event. + * Clicking. * * @syscap SystemCapability.MultimodalInput.Input.Core * @systemapi Hide this for inner system use. @@ -116,7 +124,7 @@ export declare enum FingerprintAction { } /** - * Fingerprint key event. + * Defines the key event type and the offset position relative to the key. * * @interface FingerprintEvent * @syscap SystemCapability.MultimodalInput.Input.Core diff --git a/api/@ohos.multimodalInput.touchEvent.d.ts b/api/@ohos.multimodalInput.touchEvent.d.ts index 711139c69db7900793f57922cd0edebcbfc8d6c1..502dc81171dc061f56718870bf0d59f4f3a39efa 100644 --- a/api/@ohos.multimodalInput.touchEvent.d.ts +++ b/api/@ohos.multimodalInput.touchEvent.d.ts @@ -172,14 +172,16 @@ export declare enum SourceType { * * @enum { number } * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 18 + * @systemapi Hide this for inner system use. + * @since 19 */ export declare enum FixedMode { /** * Not fix. * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 18 + * @systemapi Hide this for inner system use. + * @since 19 */ NONE = 0, @@ -187,9 +189,10 @@ export declare enum FixedMode { * One hand mode. * * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 18 + * @systemapi Hide this for inner system use. + * @since 19 */ - ONE_HAND = 1 + AUTO = 1 } /** @@ -348,7 +351,8 @@ export declare interface Touch { * fixedDisplayX - Corrected value of the screen x coordinate. * @type { number } * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 18 + * @systemapi Hide this for inner system use. + * @since 19 */ fixedDisplayX?: number; @@ -356,7 +360,8 @@ export declare interface Touch { * fixedDisplayY - Corrected value of the screen y coordinate. * @type { number } * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 18 + * @systemapi Hide this for inner system use. + * @since 19 */ fixedDisplayY?: number; } @@ -407,7 +412,8 @@ export declare interface TouchEvent extends InputEvent { * * @type { FixedMode } * @syscap SystemCapability.MultimodalInput.Input.Core - * @since 18 + * @systemapi Hide this for inner system use. + * @since 19 */ fixedMode?: FixedMode; } \ No newline at end of file diff --git a/api/@ohos.net.connection.d.ts b/api/@ohos.net.connection.d.ts index fe160e86d3ebeb31bc4afe85eba292acb6dbd7b1..143fef17a680dde99f3748c17a947f38d9b2fccf 100644 --- a/api/@ohos.net.connection.d.ts +++ b/api/@ohos.net.connection.d.ts @@ -19,8 +19,11 @@ */ import type { AsyncCallback, Callback } from './@ohos.base'; + +/*** if arkts 1.1 */ import type http from './@ohos.net.http'; import type socket from './@ohos.net.socket'; +/*** endif */ /** * Provides interfaces to manage and use data networks. @@ -41,7 +44,8 @@ import type socket from './@ohos.net.socket'; * @syscap SystemCapability.Communication.NetManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace connection { /** @@ -75,6 +79,7 @@ declare namespace connection { * @typedef { socket.TCPSocket } * @syscap SystemCapability.Communication.NetStack * @crossplatform + * @atomicservice * @since 10 */ type TCPSocket = socket.TCPSocket; @@ -89,6 +94,7 @@ declare namespace connection { * @typedef { socket.UDPSocket } * @syscap SystemCapability.Communication.NetStack * @crossplatform + * @atomicservice * @since 10 */ type UDPSocket = socket.UDPSocket; @@ -148,7 +154,8 @@ declare namespace connection { * @throws { BusinessError } 2100003 - System internal error. * @syscap SystemCapability.Communication.NetManager.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ function getDefaultNet(callback: AsyncCallback<NetHandle>): void; @@ -174,7 +181,8 @@ declare namespace connection { * @throws { BusinessError } 2100003 - System internal error. * @syscap SystemCapability.Communication.NetManager.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ function getDefaultNet(): Promise<NetHandle>; @@ -200,7 +208,8 @@ declare namespace connection { * @throws { BusinessError } 2100003 - System internal error. * @syscap SystemCapability.Communication.NetManager.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ function getDefaultNetSync(): NetHandle; @@ -1425,7 +1434,8 @@ declare namespace connection { * @syscap SystemCapability.Communication.NetManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ export interface NetHandle { /** @@ -1447,7 +1457,8 @@ declare namespace connection { * @syscap SystemCapability.Communication.NetManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ netId: number; @@ -1854,6 +1865,7 @@ declare namespace connection { * Indicates that the network is based on a bluetooth network. * @syscap SystemCapability.Communication.NetManager.Core * @crossplatform + * @atomicservice * @since 12 */ BEARER_BLUETOOTH = 2, diff --git a/api/@ohos.net.ethernet.d.ts b/api/@ohos.net.ethernet.d.ts index e4868ce6499de5d9e7ce70ae8e7992f11903d94b..38b2257ba4ada4474f0ce7d313b38af448605ccd 100644 --- a/api/@ohos.net.ethernet.d.ts +++ b/api/@ohos.net.ethernet.d.ts @@ -247,6 +247,19 @@ declare namespace ethernet { */ function getMacAddress(): Promise<Array<MacAddressInfo>>; + /** + * Get the ethernet mac address list. + * @permission ohos.permission.GET_NETWORK_INFO + * @returns { Promise<Array<EthernetDeviceInfos>> } the promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - Non-system applications use system APIs. + * @throws { BusinessError } 2201005 - Device information does not exist. + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + function getEthernetDeviceInfos(): Promise<Array<EthernetDeviceInfos>>; + /** * Defines the network configuration for the Ethernet connection. * @interface InterfaceConfiguration @@ -418,6 +431,103 @@ declare namespace ethernet { */ macAddress: string; } + + /** + * Defines the device information of the Ethernet. + * @interface EthernetDeviceInfos + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + export interface EthernetDeviceInfos { + /** + * Ethernet interface name. + * @type { string } + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + ifaceName: string; + + /** + * Ethernet device name. + * @type { string } + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + deviceName: string; + + /** + * Device connection mode. + * @type { DeviceConnectionType } + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + connectionMode: DeviceConnectionType; + + /** + * Supplier name of device. + * @type { string } + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + supplierName: string; + + /** + * Supplier id of device. + * @type { string } + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + supplierId: string; + + /** + * Product name of device. + * @type { string } + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + productName: string; + + /** + * Maximum Rate of device. + * @type { string } + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + maximumRate: string; + } + + /** + * Defines the Device Connection Mode of the Ethernet. + * @enum {number} + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + export enum DeviceConnectionType { + /** + * Ethernet in built-in mode. + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + BUILT_IN = 0, + + /** + * Ethernet in external mode. For example, an ethernet connection via USB. + * @syscap SystemCapability.Communication.NetManager.Ethernet + * @systemapi Hide this for inner system use. + * @since 20 + */ + EXTERNAL = 1 + } } export default ethernet; \ No newline at end of file diff --git a/api/@ohos.net.http.d.ts b/api/@ohos.net.http.d.ts index f1749c665707c82d5c9a4e9263523ddcd6bda412..c6f57786217bf276d0c31eddb5667e440cd3e325 100644 --- a/api/@ohos.net.http.d.ts +++ b/api/@ohos.net.http.d.ts @@ -1108,7 +1108,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @since 6 */ @@ -1147,7 +1147,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @since 10 @@ -1187,7 +1187,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1229,7 +1229,7 @@ declare namespace http { * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1272,7 +1272,7 @@ declare namespace http { * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300997 - Cleartext traffic not permitted. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1316,7 +1316,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @since 6 */ @@ -1356,7 +1356,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @since 10 @@ -1397,7 +1397,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1440,7 +1440,7 @@ declare namespace http { * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1484,7 +1484,7 @@ declare namespace http { * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300997 - Cleartext traffic not permitted. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1528,7 +1528,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @since 6 */ @@ -1568,7 +1568,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @since 10 @@ -1609,7 +1609,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1652,7 +1652,7 @@ declare namespace http { * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1696,7 +1696,7 @@ declare namespace http { * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300997 - Cleartext traffic not permitted. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1740,7 +1740,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @since 10 */ @@ -1781,7 +1781,7 @@ declare namespace http { * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @since 12 */ @@ -1822,7 +1822,7 @@ declare namespace http { * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @atomicservice * @since 15 @@ -1865,7 +1865,7 @@ declare namespace http { * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300997 - Cleartext traffic not permitted. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1909,7 +1909,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @since 10 */ @@ -1950,7 +1950,7 @@ declare namespace http { * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @since 12 */ @@ -1991,7 +1991,7 @@ declare namespace http { * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @atomicservice * @since 15 @@ -2034,7 +2034,7 @@ declare namespace http { * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300997 - Cleartext traffic not permitted. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -2078,7 +2078,7 @@ declare namespace http { * @throws { BusinessError } 2300077 - The SSL CA certificate does not exist or is inaccessible. * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @since 10 */ @@ -2119,7 +2119,7 @@ declare namespace http { * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @since 12 */ @@ -2160,7 +2160,7 @@ declare namespace http { * @throws { BusinessError } 2300078 - Remote file not found. * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @atomicservice * @since 15 @@ -2203,7 +2203,7 @@ declare namespace http { * @throws { BusinessError } 2300094 - Authentication error. * @throws { BusinessError } 2300997 - Cleartext traffic not permitted. * @throws { BusinessError } 2300998 - It is not allowed to access this domain. - * @throws { BusinessError } 2300999 - Unknown error. + * @throws { BusinessError } 2300999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice diff --git a/api/@ohos.net.webSocket.d.ts b/api/@ohos.net.webSocket.d.ts index 30729c55393cef1d920903fd1ff30cff03c0bc15..27a9c8f7e9cb44ce6a734fd318638a5a2d09896a 100644 --- a/api/@ohos.net.webSocket.d.ts +++ b/api/@ohos.net.webSocket.d.ts @@ -410,7 +410,7 @@ declare namespace webSocket { * @param { AsyncCallback<boolean> } callback - the callback of connect. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 2302999 - Websocket other unknown error. + * @throws { BusinessError } 2302999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @since 10 @@ -422,7 +422,7 @@ declare namespace webSocket { * @param { AsyncCallback<boolean> } callback - the callback of connect. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 2302999 - Websocket other unknown error. + * @throws { BusinessError } 2302999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -439,7 +439,7 @@ declare namespace webSocket { * @throws { BusinessError } 2302002 - Websocket certificate file does not exist. * @throws { BusinessError } 2302003 - Websocket connection already exists. * @throws { BusinessError } 2302998 - It is not allowed to access this domain. - * @throws { BusinessError } 2302999 - Websocket other unknown error. + * @throws { BusinessError } 2302999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -466,7 +466,7 @@ declare namespace webSocket { * @param { AsyncCallback<boolean> } callback - the callback of connect. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 2302999 - Websocket other unknown error. + * @throws { BusinessError } 2302999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @since 10 @@ -479,7 +479,7 @@ declare namespace webSocket { * @param { AsyncCallback<boolean> } callback - the callback of connect. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 2302999 - Websocket other unknown error. + * @throws { BusinessError } 2302999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -497,7 +497,7 @@ declare namespace webSocket { * @throws { BusinessError } 2302002 - Websocket certificate file does not exist. * @throws { BusinessError } 2302003 - Websocket connection already exists. * @throws { BusinessError } 2302998 - It is not allowed to access this domain. - * @throws { BusinessError } 2302999 - Websocket other unknown error. + * @throws { BusinessError } 2302999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -524,7 +524,7 @@ declare namespace webSocket { * @returns { Promise<boolean> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 2302999 - Websocket other unknown error. + * @throws { BusinessError } 2302999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @since 10 @@ -537,7 +537,7 @@ declare namespace webSocket { * @returns { Promise<boolean> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 2302999 - Websocket other unknown error. + * @throws { BusinessError } 2302999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -555,7 +555,7 @@ declare namespace webSocket { * @throws { BusinessError } 2302002 - Websocket certificate file does not exist. * @throws { BusinessError } 2302003 - Websocket connection already exists. * @throws { BusinessError } 2302998 - It is not allowed to access this domain. - * @throws { BusinessError } 2302999 - Websocket other unknown error. + * @throws { BusinessError } 2302999 - Internal error. * @syscap SystemCapability.Communication.NetStack * @crossplatform * @atomicservice @@ -1007,6 +1007,296 @@ declare namespace webSocket { */ off(type: 'headerReceive', callback?: Callback<ResponseHeaders>): void; } + + /** + * Creates a web socket Server. + * @returns { WebSocketServer } the WebSocketServer Object. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + function createWebSocketServer(): WebSocketServer; + + /** + * Defines parameters for a WebSocket Server. + * @interface WebSocketServerConfig + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + export interface WebSocketServerConfig { + /** + * Network card that the server listens on. + * The server listens on this specific address. It's 0.0.0.0 by default. + * @type {?string} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + serverIP?: string; + + /** + * Port number that the server listens on. + * @type {number} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + serverPort: number; + + /** + * Server cert. + * @type {?ServerCert} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + serverCert?: ServerCert; + + /** + * Maximum number of concurrent clients. When it's reached, the server will reject new connections. + * @type { number } + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + maxConcurrentClientsNumber: number; + + /** + * Self defined protocol. + * @type {?string} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + protocol?: string; + + /** + * Maximum number of one client's connections. When it's reached, the server will reject new connections. + * @type {number} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + maxConnectionsForOneClient: number; + } + + /** + * The serverCert field of the server certificate, which includes two attributes: + * File paths of server certificate (certPath) and certificate private key (keyPath). Only support PEM format. + * @interface ServerCert + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + export interface ServerCert { + /** + * File path for the server cert. + * @type {string} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + certPath: string; + + /** + * The path of the server certificate private key file. + * @type {string} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + keyPath: string; + } + + /** + * Info about the connection from each specific client. + * @interface WebSocketConnection + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + export interface WebSocketConnection { + /** + * IP address of the client. + * @type {string} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + clientIP: string; + + /** + * Port of the client. + * @type {number} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + clientPort: number; + } + + /** + * Info about the message received from a specific client. + * @interface WebSocketMessage + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + export interface WebSocketMessage { + /** + * Contend of the message. + * @type {string | ArrayBuffer} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + data: string | ArrayBuffer; + + /** + * The connection where the message comes from. + * @type {WebSocketConnection} + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + clientConnection: WebSocketConnection; + } + + /** + * Callback function when a client connection is closed. + * @typedef { function } ClientConnectionCloseCallback + * @param { WebSocketConnection } clientConnection - the connection which is closed. + * @param { CloseResult } closeReason - the error code and reason why the connection is closed. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + export type ClientConnectionCloseCallback = (clientConnection: WebSocketConnection, closeReason: CloseResult) => void; + + /** + * <p>Defines a WebSocketServer object. Before invoking WebSocketServer APIs, + * you need to call webSocketServer.createWebSocketServer to create a WebSocket Server.</p> + * @interface WebSocketServer + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + export interface WebSocketServer { + /** + * Start the WebSocket Server, and listen to a given port. + * @permission ohos.permission.INTERNET + * @param { WebSocketServerConfig } config - setting for the server, such as ip address and port to listen to. + * @returns { Promise<boolean> } Indicating whether the server starts sucessfully. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 2302002 - Websocket certificate file does not exist. + * @throws { BusinessError } 2302004 - Can't listen on the given NIC. + * @throws { BusinessError } 2302005 - Can't listen on the given Port. + * @throws { BusinessError } 2302999 - Websocket other unknown error. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + start(config: WebSocketServerConfig): Promise<boolean>; + + /** + * List all alive connections. + * @permission ohos.permission.INTERNET + * @returns { WebSocketConnection[] } an array consists connections from all clients. + * @throws { BusinessError } 201 - Permission denied. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + listAllConnections(): WebSocketConnection[]; + + /** + * Close a given WebSocket connection. + * @permission ohos.permission.INTERNET + * @param { WebSocketConnection } connection - which on to be closed. + * @param { webSocket.WebSocketCloseOptions } options - Optional parameters {@link WebSocketCloseOptions}. + * @returns { Promise<boolean> } Indicating whether the connection is closed sucessfully. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 2302006 - websocket connection does not exist. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + close(connection: WebSocketConnection, options?: webSocket.WebSocketCloseOptions): Promise<boolean>; + + /** + * Send a message using a specific connection. + * @permission ohos.permission.INTERNET + * @param { string | ArrayBuffer } data - What to send. It can be a string or an ArrayBuffer. + * @param { WebSocketConnection } connection - Where to sent. + * @returns { Promise<boolean> } Indicating whether the message is sent sucessfully. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 2302006 - websocket connection does not exist. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + send(data: string | ArrayBuffer, connection: WebSocketConnection): Promise<boolean>; + + /** + * Stop listening. + * @permission ohos.permission.INTERNET + * @returns { Promise<boolean> } The Indicating whether the server stops sucessfully. + * @throws { BusinessError } 201 - Permission denied. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + stop(): Promise<boolean>; + + /** + * Enables listening for the error events of a WebSocket Server. + * @param { 'error' } type - event indicating that the WebSocket Server has encountered an error. + * @param { ErrorCallback } callback - the callback used to return the result. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + on(type: 'error', callback: ErrorCallback): void; + + /** + * Enables listening for events that a client requested to connect the server. + * @param { 'connect' } type - event indicating that a client requested to connect the server. + * @param { Callback<WebSocketConnection> } callback - the callback used to return the result. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + on(type: 'connect', callback: Callback<WebSocketConnection>): void; + + /** + * Enables listening for events that the server received a message. + * @param { 'messageReceive' } type - event indicating that the server received a message. + * @param { Callback<WebSocketMessage> } callback - the callback used to return the result. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + on(type: 'messageReceive', callback: Callback<WebSocketMessage>): void; + + /** + * Enables listening for events that a connection from a given client has been closed. + * @param { 'close' } type - event indicating that a connection from a given client has been closed. + * @param { ClientConnectionCloseCallback } callback - the callback function when a client connection is closed. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + on(type: 'close', callback: ClientConnectionCloseCallback): void; + + /** + * Cancels listening for the error events of a WebSocket Server. + * @param { 'error' } type - event indicating that the WebSocket Server has encountered an error. + * @param { ErrorCallback } callback - the callback used to return the result. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + off(type: 'error', callback?: ErrorCallback): void; + + /** + * Cancels listening for events that a client requested to connect the server. + * @param { 'connect' } type - event indicating that a client requested to connect the server. + * @param { Callback<WebSocketConnection> } callback - the callback used to return the result. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + off(type: 'connect', callback?: Callback<WebSocketConnection>): void; + + /** + * Cancels listening for events that a connection from a given client has been closed. + * @param { 'close' } type - event indicating that a connection from a given client has been closed. + * @param { ClientConnectionCloseCallback } callback - the callback used to return the result. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + off(type: 'close', callback?: ClientConnectionCloseCallback): void; + + /** + * Cancels listening for events that the server received a message. + * @param { 'messageReceive' } type - event indicating that the server received a message. + * @param { Callback<WebSocketMessage> } callback - the callback used to return the result. + * @syscap SystemCapability.Communication.NetStack + * @since 19 + */ + off(type: 'messageReceive', callback?: Callback<WebSocketMessage>): void; + } } export default webSocket; \ No newline at end of file diff --git a/api/@ohos.nfc.cardEmulation.d.ts b/api/@ohos.nfc.cardEmulation.d.ts index 0a088d9bb9237fe4ebea0dd2455be0a0419f1cab..7731d7ec91d10398d866bba77a605941a2557b2b 100644 --- a/api/@ohos.nfc.cardEmulation.d.ts +++ b/api/@ohos.nfc.cardEmulation.d.ts @@ -350,7 +350,6 @@ declare namespace cardEmulation { * @param { 'hceCmd' } type - The type to unregister event. * @param { AsyncCallback<number[]> } callback - The callback used to listen for the event. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Invalid parameter. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.Communication.NFC.CardEmulation * @atomicservice diff --git a/api/@ohos.notificationManager.d.ts b/api/@ohos.notificationManager.d.ts index a844fb08b4465900622a6578000ea378e2e2a288..0e42bac07501eed08bdd2cd481ef23be689c0444 100644 --- a/api/@ohos.notificationManager.d.ts +++ b/api/@ohos.notificationManager.d.ts @@ -48,28 +48,16 @@ import { NotificationUserInput as _NotificationUserInput } from './notification/ import type UIAbilityContext from './application/UIAbilityContext'; /** - * Manages notifications. - * <p>Generally, only system applications have permissions on notification subscription and unsubscribe. - * You can specify the content of a notification to be published and the content is carried by - * {@link NotificationRequest}. A notification ID is unique in an application and must be specified - * when using {@link NotificationRequest} to carry the notification content. If a notification - * with this ID has been published and you need to use this ID to publish another notification, - * the original notification will be updated. In addition, the notification ID can be used to cancel - * a notification by calling the {@link #cancel(int)} method. + * The NotificationManager module provides notification management capabilities, covering notifications, + * notification slots, notification enabled status, and notification badge status. * * @namespace notificationManager * @syscap SystemCapability.Notification.Notification * @since 9 */ /** - * Manages notifications. - * <p>Generally, only system applications have permissions on notification subscription and unsubscribe. - * You can specify the content of a notification to be published and the content is carried by - * {@link NotificationRequest}. A notification ID is unique in an application and must be specified - * when using {@link NotificationRequest} to carry the notification content. If a notification - * with this ID has been published and you need to use this ID to publish another notification, - * the original notification will be updated. In addition, the notification ID can be used to cancel - * a notification by calling the {@link #cancel(int)} method. + * The NotificationManager module provides notification management capabilities, covering notifications, + * notification slots, notification enabled status, and notification badge status. * * @namespace notificationManager * @syscap SystemCapability.Notification.Notification @@ -79,12 +67,11 @@ import type UIAbilityContext from './application/UIAbilityContext'; */ declare namespace notificationManager { /** - * Publishes a notification. - * <p>If a notification with the same ID has been published by the current application and has not been deleted, - * this method will update the notification. + * Publish a notification. This API uses an asynchronous callback to return the result. + * If the ID and label of the new notification are the same as that of the previous notification, the new one replaces the previous one. * - * @param { NotificationRequest } request - notification request - * @param { AsyncCallback<void> } callback - The callback of publish. + * @param { NotificationRequest } request - Content and related configuration of the notification to publish. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -98,12 +85,11 @@ declare namespace notificationManager { * @since 9 */ /** - * Publishes a notification. - * <p>If a notification with the same ID has been published by the current application and has not been deleted, - * this method will update the notification. + * Publish a notification. This API uses an asynchronous callback to return the result. + * If the ID and label of the new notification are the same as that of the previous notification, the new one replaces the previous one. * - * @param { NotificationRequest } request - notification request - * @param { AsyncCallback<void> } callback - The callback of publish. + * @param { NotificationRequest } request - Content and related configuration of the notification to publish. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -122,12 +108,11 @@ declare namespace notificationManager { * @since 11 */ /** - * Publishes a notification. - * <p>If a notification with the same ID has been published by the current application and has not been deleted, - * this method will update the notification. + * Publish a notification. This API uses an asynchronous callback to return the result. + * If the ID and label of the new notification are the same as that of the previous notification, the new one replaces the previous one. * - * @param { NotificationRequest } request - notification request - * @param { AsyncCallback<void> } callback - The callback of publish. + * @param { NotificationRequest } request - Content and related configuration of the notification to publish. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -141,6 +126,7 @@ declare namespace notificationManager { * @throws { BusinessError } 1600014 - No permission. * @throws { BusinessError } 1600015 - The current notification status does not support duplicate configurations. * @throws { BusinessError } 1600016 - The notification version for this update is too low. + * @throws { BusinessError } 1600020 - The application is not allowed to send notifications due to permission settings. * @throws { BusinessError } 2300007 - Network unreachable. * @syscap SystemCapability.Notification.Notification * @crossplatform @@ -149,12 +135,11 @@ declare namespace notificationManager { function publish(request: NotificationRequest, callback: AsyncCallback<void>): void; /** - * Publishes a notification. - * <p>If a notification with the same ID has been published by the current application and has not been deleted, - * this method will update the notification. + * Publish a notification. This API uses a promise to return the URI of the file in the destination directory. + * If the ID and label of the new notification are the same as that of the previous notification, the new one replaces the previous one. * - * @param { NotificationRequest } request - notification request - * @returns { Promise<void> } The promise returned by the function. + * @param { NotificationRequest } request - Content and related configuration of the notification to publish. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -168,12 +153,11 @@ declare namespace notificationManager { * @since 9 */ /** - * Publishes a notification. - * <p>If a notification with the same ID has been published by the current application and has not been deleted, - * this method will update the notification. + * Publish a notification. This API uses a promise to return the URI of the file in the destination directory. + * If the ID and label of the new notification are the same as that of the previous notification, the new one replaces the previous one. * - * @param { NotificationRequest } request - notification request - * @returns { Promise<void> } The promise returned by the function. + * @param { NotificationRequest } request - Content and related configuration of the notification to publish. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -192,12 +176,11 @@ declare namespace notificationManager { * @since 11 */ /** - * Publishes a notification. - * <p>If a notification with the same ID has been published by the current application and has not been deleted, - * this method will update the notification. + * Publish a notification. This API uses a promise to return the URI of the file in the destination directory. + * If the ID and label of the new notification are the same as that of the previous notification, the new one replaces the previous one. * - * @param { NotificationRequest } request - notification request - * @returns { Promise<void> } The promise returned by the function. + * @param { NotificationRequest } request - Content and related configuration of the notification to publish. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -211,6 +194,7 @@ declare namespace notificationManager { * @throws { BusinessError } 1600014 - No permission. * @throws { BusinessError } 1600015 - The current notification status does not support duplicate configurations. * @throws { BusinessError } 1600016 - The notification version for this update is too low. + * @throws { BusinessError } 1600020 - The application is not allowed to send notifications due to permission settings. * @throws { BusinessError } 2300007 - Network unreachable. * @syscap SystemCapability.Notification.Notification * @crossplatform @@ -292,6 +276,7 @@ declare namespace notificationManager { * @throws { BusinessError } 1600014 - No permission. * @throws { BusinessError } 1600015 - The current notification status does not support duplicate configurations. * @throws { BusinessError } 1600016 - The notification version for this update is too low. + * @throws { BusinessError } 1600020 - The application is not allowed to send notifications due to permission settings. * @throws { BusinessError } 2300007 - Network unreachable. * @syscap SystemCapability.Notification.Notification * @systemapi @@ -373,6 +358,7 @@ declare namespace notificationManager { * @throws { BusinessError } 1600014 - No permission. * @throws { BusinessError } 1600015 - The current notification status does not support duplicate configurations. * @throws { BusinessError } 1600016 - The notification version for this update is too low. + * @throws { BusinessError } 1600020 - The application is not allowed to send notifications due to permission settings. * @throws { BusinessError } 2300007 - Network unreachable. * @syscap SystemCapability.Notification.Notification * @systemapi @@ -403,6 +389,7 @@ declare namespace notificationManager { * @throws { BusinessError } 1600012 - No memory space. * @throws { BusinessError } 1600015 - The current notification status does not support duplicate configurations. * @throws { BusinessError } 1600016 - The notification version for this update is too low. + * @throws { BusinessError } 1600020 - The application is not allowed to send notifications due to permission settings. * @throws { BusinessError } 2300007 - Network unreachable. * @syscap SystemCapability.Notification.Notification * @systemapi @@ -438,6 +425,7 @@ declare namespace notificationManager { * @throws { BusinessError } 1600012 - No memory space. * @throws { BusinessError } 1600015 - The current notification status does not support duplicate configurations. * @throws { BusinessError } 1600016 - The notification version for this update is too low. + * @throws { BusinessError } 1600020 - The application is not allowed to send notifications due to permission settings. * @throws { BusinessError } 2300007 - Network unreachable. * @syscap SystemCapability.Notification.Notification * @systemapi @@ -467,6 +455,7 @@ declare namespace notificationManager { * @throws { BusinessError } 1600012 - No memory space. * @throws { BusinessError } 1600015 - The current notification status does not support duplicate configurations. * @throws { BusinessError } 1600016 - The notification version for this update is too low. + * @throws { BusinessError } 1600020 - The application is not allowed to send notifications due to permission settings. * @throws { BusinessError } 2300007 - Network unreachable. * @syscap SystemCapability.Notification.Notification * @systemapi @@ -475,10 +464,10 @@ declare namespace notificationManager { function publishAsBundle(representativeBundle: BundleOption, request: NotificationRequest): Promise<void>; /** - * Cancel a notification with the specified ID. + * Cancels a notification with the specified ID. This API uses an asynchronous callback to return the result. * - * @param { number } id - ID of the notification to cancel, which must be unique in the application. - * @param { AsyncCallback<void> } callback - The callback of cancel. + * @param { number } id - Notification ID. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -489,10 +478,10 @@ declare namespace notificationManager { * @since 9 */ /** - * Cancel a notification with the specified ID. + * Cancels a notification with the specified ID. This API uses an asynchronous callback to return the result. * - * @param { number } id - ID of the notification to cancel, which must be unique in the application. - * @param { AsyncCallback<void> } callback - The callback of cancel. + * @param { number } id - Notification ID. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -506,11 +495,11 @@ declare namespace notificationManager { function cancel(id: number, callback: AsyncCallback<void>): void; /** - * Cancel a notification with the specified label and ID. + * Cancels a notification with the specified ID and label. This API uses an asynchronous callback to return the result. * - * @param { number } id - ID of the notification to cancel, which must be unique in the application. - * @param { string } label - Label of the notification to cancel. - * @param { AsyncCallback<void> } callback - The callback of cancel. + * @param { number } id - Notification ID. + * @param { string } label - Notification label. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -523,11 +512,11 @@ declare namespace notificationManager { function cancel(id: number, label: string, callback: AsyncCallback<void>): void; /** - * Cancel a notification with the specified label and ID. + * Cancels a notification with the specified ID and optional label. This API uses a promise to return the result. * - * @param { number } id - ID of the notification to cancel, which must be unique in the application. - * @param { string } [label] - Label of the notification to cancel. - * @returns { Promise<void> } The promise returned by the function. + * @param { number } id - Notification ID. + * @param { string } [label] - Notification label. This parameter is left empty by default. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -638,9 +627,9 @@ declare namespace notificationManager { function cancelAsBundle(representativeBundle: BundleOption, id: number): Promise<void>; /** - * Cancel all notifications of the current application. + * Cancels all notifications of this application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<void> } callback - The callback of cancelAll. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -650,9 +639,9 @@ declare namespace notificationManager { * @since 9 */ /** - * Cancel all notifications of the current application. + * Cancels all notifications of this application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<void> } callback - The callback of cancelAll. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -665,9 +654,9 @@ declare namespace notificationManager { function cancelAll(callback: AsyncCallback<void>): void; /** - * Cancel all notifications of the current application. + * Cancels all notifications of this application. This API uses a promise to return the result. * - * @returns { Promise<void> } The promise returned by the function. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -675,9 +664,9 @@ declare namespace notificationManager { * @since 9 */ /** - * Cancel all notifications of the current application. + * Cancels all notifications of this application. This API uses a promise to return the result. * - * @returns { Promise<void> } The promise returned by the function. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -728,10 +717,10 @@ declare namespace notificationManager { function addSlot(slot: NotificationSlot): Promise<void>; /** - * Adds a slot type. + * Adds a notification slot of a specified type. This API uses an asynchronous callback to return the result. * - * @param { SlotType } type - Slot type to add. - * @param { AsyncCallback<void> } callback - The callback of addSlot. + * @param { SlotType } type - Type of the notification slot to add. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -744,10 +733,10 @@ declare namespace notificationManager { function addSlot(type: SlotType, callback: AsyncCallback<void>): void; /** - * Adds a slot type. - * - * @param { SlotType } type - Slot type to add. - * @returns { Promise<void> } The promise returned by the function. + * Adds a notification slot of a specified type. This API uses a promise to return the result. + * + * @param { SlotType } type - Type of the notification slot to add. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -800,10 +789,11 @@ declare namespace notificationManager { function addSlots(slots: Array<NotificationSlot>): Promise<void>; /** - * Obtains a notification slot of the specified slot type. + * Obtains a notification slot of a specified type. This API uses an asynchronous callback to return the result. * - * @param { SlotType } slotType - Type of the notification slot to obtain. - * @param { AsyncCallback<NotificationSlot> } callback - The callback is used to return the NotificationSlot. + * @param { SlotType } slotType - Type of a notification slot, including social communication, service notification, and content consultation. + * @param { AsyncCallback<NotificationSlot> } callback - Callback used to return the result. If the operation is successful, err is undefined + * and data is the obtained NotificationSlot; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -815,10 +805,10 @@ declare namespace notificationManager { function getSlot(slotType: SlotType, callback: AsyncCallback<NotificationSlot>): void; /** - * Obtains a notification slot of the specified slot type. + * Obtains a notification slot of a specified type. This API uses a promise to return the result. * - * @param { SlotType } slotType - Type of the notification slot to obtain. - * @returns { Promise<NotificationSlot> } Returns the NotificationSlot. + * @param { SlotType } slotType - Type of a notification slot, such as social communication, service notification, content consultation, and so on. + * @returns { Promise<NotificationSlot> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -830,10 +820,10 @@ declare namespace notificationManager { function getSlot(slotType: SlotType): Promise<NotificationSlot>; /** - * Obtains all NotificationSlot objects created by the current application. + * Obtains all notification slots of this application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<Array<NotificationSlot>> } callback - The callback is used to return all notification slots - * of this application. + * @param { AsyncCallback<Array<NotificationSlot>> } callback - Callback used to return the result. If the operation is successful, err is undefined + * and data is the obtained NotificationSlot array; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -845,9 +835,9 @@ declare namespace notificationManager { function getSlots(callback: AsyncCallback<Array<NotificationSlot>>): void; /** - * Obtains all NotificationSlot objects created by the current application. + * Obtains all notification slots of this application. This API uses a promise to return the result. * - * @returns { Promise<Array<NotificationSlot>> } Returns all notification slots of this application. + * @returns { Promise<Array<NotificationSlot>> } Promise used to return all notification slots of the current application. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -873,10 +863,10 @@ declare namespace notificationManager { function getAllNotificationEnabledBundles(): Promise<Array<BundleOption>>; /** - * Removes a NotificationSlot of the specified SlotType created by the current application. + * Removes a notification slot of a specified type for this application. This API uses an asynchronous callback to return the result. * - * @param { SlotType } slotType - Type of the NotificationSlot to remove. - * @param { AsyncCallback<void> } callback - The callback of removeSlot. + * @param { SlotType } slotType - Type of a notification slot, including social communication, service notification, and content consultation. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -888,10 +878,10 @@ declare namespace notificationManager { function removeSlot(slotType: SlotType, callback: AsyncCallback<void>): void; /** - * Removes a NotificationSlot of the specified SlotType created by the current application. + * Removes a notification slot of a specified type for this application. This API uses a promise to return the result. * - * @param { SlotType } slotType - Type of the NotificationSlot to remove. - * @returns { Promise<void> } The promise returned by the function. + * @param { SlotType } slotType - Type of a notification slot, including social communication, service notification, and content consultation. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -903,9 +893,10 @@ declare namespace notificationManager { function removeSlot(slotType: SlotType): Promise<void>; /** - * Removes all NotificationSlot objects created by the current application. + * Removes all notification slots for this application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<void> } callback - The callback of removeAllSlots. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; + * otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -917,9 +908,9 @@ declare namespace notificationManager { function removeAllSlots(callback: AsyncCallback<void>): void; /** - * Removes all NotificationSlot objects created by the current application. + * Removes all notification slots for this application. This API uses a promise to return the result. * - * @returns { Promise<void> } The promise returned by the function. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -1011,10 +1002,10 @@ declare namespace notificationManager { function isNotificationEnabled(bundle: BundleOption): Promise<boolean>; /** - * Checks whether this application allows to publish notifications. + * Checks whether notification is enabled for the specified application. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.NOTIFICATION_CONTROLLER - * @param { AsyncCallback<boolean> } callback - The callback of isNotificationEnabled. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. The value true means that the notification is enabled, and false means the opposite. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system application to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. @@ -1027,9 +1018,9 @@ declare namespace notificationManager { * @since 9 */ /** - * Checks whether this application allows to publish notifications. + * Checks whether notification is enabled for the specified application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - The callback of isNotificationEnabled. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. The value true means that the notification is enabled, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -1041,9 +1032,9 @@ declare namespace notificationManager { * @since 11 */ /** - * Checks whether this application allows to publish notifications. + * Checks whether notification is enabled for the specified application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - The callback of isNotificationEnabled. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. The value true means that the notification is enabled, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -1058,10 +1049,10 @@ declare namespace notificationManager { function isNotificationEnabled(callback: AsyncCallback<boolean>): void; /** - * Checks whether this application allows to publish notifications. + * Checks whether notification is enabled for the specified application. This API uses a promise to return the result. * * @permission ohos.permission.NOTIFICATION_CONTROLLER - * @returns { Promise<boolean> } The promise returned by the function. + * @returns { Promise<boolean> } Promise used to return the result. The value true means that the notification is enabled, and false means the opposite. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system application to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. @@ -1074,9 +1065,9 @@ declare namespace notificationManager { * @since 9 */ /** - * Checks whether this application allows to publish notifications. + * Checks whether notification is enabled for the specified application. This API uses a promise to return the result. * - * @returns { Promise<boolean> } The promise returned by the function. + * @returns { Promise<boolean> } Promise used to return the result. The value true means that the notification is enabled, and false means the opposite. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -1086,9 +1077,9 @@ declare namespace notificationManager { * @since 11 */ /** - * Checks whether this application allows to publish notifications. + * Checks whether notification is enabled for the specified application. This API uses a promise to return the result. * - * @returns { Promise<boolean> } The promise returned by the function. + * @returns { Promise<boolean> } Promise used to return the result. The value true means that the notification is enabled, and false means the opposite. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -1101,9 +1092,10 @@ declare namespace notificationManager { function isNotificationEnabled(): Promise<boolean>; /** - * Checks whether this application allows to publish notifications. + * Checks whether notification is enabled for the specified application. This API returns the result synchronously. * - * @returns { boolean } Returned by the function. + * @returns { boolean } Result of the notification enabling status. The value true means that the notification is enabled, + * and false means the opposite. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -1630,9 +1622,10 @@ declare namespace notificationManager { function getAllActiveNotifications(): Promise<Array<NotificationRequest>>; /** - * Obtains the number of all active notifications. + * Obtains the number of active notifications of this application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<number> } callback - The callback of getActiveNotificationCount. + * @param { AsyncCallback<number> } callback - Callback used to return the result. If the operation is successful, err is undefined and data is the + * obtained number of active notifications; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -1644,9 +1637,9 @@ declare namespace notificationManager { function getActiveNotificationCount(callback: AsyncCallback<number>): void; /** - * Obtains the number of all active notifications. + * Obtains the number of active notifications of this application. This API uses a promise to return the result. * - * @returns { Promise<number> } The promise returned by the function. + * @returns { Promise<number> } Promise used to return the result. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -1656,9 +1649,11 @@ declare namespace notificationManager { function getActiveNotificationCount(): Promise<number>; /** - * Obtains an array of active notifications. + * Obtains the active notifications of this application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<Array<NotificationRequest>> } callback - The callback of getActiveNotifications. + * @param { AsyncCallback<Array<NotificationRequest>> } callback - Callback used to return the result. If the operation is successful, + * err is undefined and data is the obtained NotificationRequest array; + * otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -1670,9 +1665,9 @@ declare namespace notificationManager { function getActiveNotifications(callback: AsyncCallback<Array<NotificationRequest>>): void; /** - * Obtains an array of active notifications. + * Obtains the active notifications of this application. This API uses a promise to return the result. * - * @returns { Promise<Array<NotificationRequest>> } The promise returned by the function. + * @returns { Promise<Array<NotificationRequest>> } Promise used to return the result. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -1716,10 +1711,11 @@ declare namespace notificationManager { function getActiveNotificationByFilter(filter: NotificationFilter): Promise<NotificationRequest>; /** - * Cancel the notification of a specified group for this application. + * Cancels notifications under a notification group of this application. This API uses an asynchronous callback to return the result. * - * @param { string } groupName - The name of the group. - * @param { AsyncCallback<void> } callback - The callback of cancelGroup. + * @param { string } groupName - Name of the notification group, which is specified through NotificationRequest when the notification is published. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; otherwise, + * err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -1731,10 +1727,10 @@ declare namespace notificationManager { function cancelGroup(groupName: string, callback: AsyncCallback<void>): void; /** - * Cancel the notification of a specified group for this application. + * Cancels notifications under a notification group of this application. This API uses a promise to return the result. * - * @param { string } groupName - The name of the group. - * @returns { Promise<void> } The promise returned by the function. + * @param { string } groupName - Name of the notification group, which is specified through NotificationRequest when the notification is published. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2113,6 +2109,7 @@ declare namespace notificationManager { * @throws { BusinessError } 202 - Not system application to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -2129,6 +2126,7 @@ declare namespace notificationManager { * @returns { Promise<boolean> } Returns whether Do Not Disturb mode is supported. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Not system application to call the interface. + * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -2139,10 +2137,11 @@ declare namespace notificationManager { function isSupportDoNotDisturbMode(): Promise<boolean>; /** - * Obtains whether the template is supported by the system. + * Checks whether a specified template is supported before using NotificationTemplate to publish a notification. This API uses an asynchronous callback to return the result. * - * @param { string } templateName - Name of template to be Obtained. - * @param { AsyncCallback<boolean> } callback - The callback is used to return whether the template is supported. + * @param { string } templateName - Template name. Currently, only downloadTemplate is supported. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. The value true means that the specified template is supported, + * and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2154,10 +2153,10 @@ declare namespace notificationManager { function isSupportTemplate(templateName: string, callback: AsyncCallback<boolean>): void; /** - * Obtains whether the template is supported by the system. + * Checks whether a specified template is supported before using NotificationTemplate to publish a notification. This API uses a promise to return the result. * - * @param { string } templateName - Name of template to be Obtained. - * @returns { Promise<boolean> } Returns whether the template is supported. + * @param { string } templateName - Template name. Currently, only downloadTemplate is supported. + * @returns { Promise<boolean> } Promise used to return the result. The value true means that the specified template is supported, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2169,9 +2168,10 @@ declare namespace notificationManager { function isSupportTemplate(templateName: string): Promise<boolean>; /** - * Request permission to send notification. + * Requests notification to be enabled for this application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<void> } callback - The callback of requestEnableNotification. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; + * otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2181,9 +2181,10 @@ declare namespace notificationManager { * @since 9 */ /** - * Request permission to send notification. + * Requests notification to be enabled for this application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<void> } callback - The callback of requestEnableNotification. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; + * otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2195,9 +2196,10 @@ declare namespace notificationManager { * @since 11 */ /** - * Request permission to send notification. + * Requests notification to be enabled for this application. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<void> } callback - The callback of requestEnableNotification. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; + * otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2214,10 +2216,12 @@ declare namespace notificationManager { function requestEnableNotification(callback: AsyncCallback<void>): void; /** - * Request permission to send notification. + * Requests notification to be enabled for this application. You can call this API to display a dialog box prompting the user to enable + * notification for your application before publishing a notification. This API uses an asynchronous callback to return the result. * - * @param { UIAbilityContext } context - The context indicates the ability context you want to bind; - * @param { AsyncCallback<void> } callback - The callback of requestEnableNotification. + * @param { UIAbilityContext } context - Ability context bound to the notification dialog box. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; + * otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2228,10 +2232,12 @@ declare namespace notificationManager { * @since 10 */ /** - * Request permission to send notification. + * Requests notification to be enabled for this application. You can call this API to display a dialog box prompting the user to enable + * notification for your application before publishing a notification. This API uses an asynchronous callback to return the result. * - * @param { UIAbilityContext } context - The context indicates the ability context you want to bind; - * @param { AsyncCallback<void> } callback - The callback of requestEnableNotification. + * @param { UIAbilityContext } context - Ability context bound to the notification dialog box. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; + * otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2244,10 +2250,12 @@ declare namespace notificationManager { * @since 11 */ /** - * Request permission to send notification. + * Requests notification to be enabled for this application. You can call this API to display a dialog box prompting the user to enable + * notification for your application before publishing a notification. This API uses an asynchronous callback to return the result. * - * @param { UIAbilityContext } context - The context indicates the ability context you want to bind; - * @param { AsyncCallback<void> } callback - The callback of requestEnableNotification. + * @param { UIAbilityContext } context - Ability context bound to the notification dialog box. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, err is undefined; + * otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2263,9 +2271,9 @@ declare namespace notificationManager { function requestEnableNotification(context: UIAbilityContext, callback: AsyncCallback<void>): void; /** - * Request permission to send notification. + * Requests notification to be enabled for this application. This API uses a promise to return the URI of the file in the destination directory. * - * @returns { Promise<void> } The promise returned by the function. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -2273,9 +2281,9 @@ declare namespace notificationManager { * @since 9 */ /** - * Request permission to send notification. + * Requests notification to be enabled for this application. This API uses a promise to return the URI of the file in the destination directory. * - * @returns { Promise<void> } The promise returned by the function. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -2285,9 +2293,9 @@ declare namespace notificationManager { * @since 11 */ /** - * Request permission to send notification. + * Requests notification to be enabled for this application. This API uses a promise to return the URI of the file in the destination directory. * - * @returns { Promise<void> } The promise returned by the function. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -2302,10 +2310,11 @@ declare namespace notificationManager { function requestEnableNotification(): Promise<void>; /** - * Request permission to send notification. + * Requests notification to be enabled for this application. You can call this API to display a dialog box prompting the user to enable + * notification for your application before publishing a notification. This API uses a promise to return the result. * - * @param { UIAbilityContext } context - The context indicates the ability context you want to bind; - * @returns { Promise<void> } The promise returned by the function. + * @param { UIAbilityContext } context - Ability context bound to the notification dialog box. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2316,10 +2325,11 @@ declare namespace notificationManager { * @since 10 */ /** - * Request permission to send notification. + * Requests notification to be enabled for this application. You can call this API to display a dialog box prompting the user to enable + * notification for your application before publishing a notification. This API uses a promise to return the result. * - * @param { UIAbilityContext } context - The context indicates the ability context you want to bind; - * @returns { Promise<void> } The promise returned by the function. + * @param { UIAbilityContext } context - Ability context bound to the notification dialog box. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2332,10 +2342,11 @@ declare namespace notificationManager { * @since 11 */ /** - * Request permission to send notification. + * Requests notification to be enabled for this application. You can call this API to display a dialog box prompting the user to enable + * notification for your application before publishing a notification. This API uses a promise to return the result. * - * @param { UIAbilityContext } context - The context indicates the ability context you want to bind; - * @returns { Promise<void> } The promise returned by the function. + * @param { UIAbilityContext } context - Ability context bound to the notification dialog box. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2429,10 +2440,9 @@ declare namespace notificationManager { function setDistributedEnable(enable: boolean): Promise<void>; /** - * Obtains whether the device supports distributed notification. + * Checks whether distributed notification is enabled on this device. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - The callback is used to return whether the distributed - * notification is supported. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. The value true means that distributed notification is enabled, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -2445,9 +2455,9 @@ declare namespace notificationManager { function isDistributedEnabled(callback: AsyncCallback<boolean>): void; /** - * Obtains whether the device supports distributed notification. + * Checks whether distributed notification is enabled on this device. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns whether the distributed notification is supported. + * @returns { Promise<boolean> } Promise used to return the result. The value true means that distributed notification is enabled, and false means the opposite. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -3272,10 +3282,12 @@ declare namespace notificationManager { function getSyncNotificationEnabledWithoutApp(userId: number): Promise<boolean>; /** - * Set badge number. + * Sets the notification badge number. This API uses an asynchronous callback to return the result. * - * @param { number } badgeNumber - Badge number. - * @param { AsyncCallback<void> } callback - callback - The callback of setBadgeNumber.. + * @param { number } badgeNumber - Notification badge number to set. If badgeNumber is set to 0, badges are cleared; + * if the value is greater than 99, 99+ is displayed on the badge. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -3286,10 +3298,12 @@ declare namespace notificationManager { * @since 10 */ /** - * Set badge number. + * Sets the notification badge number. This API uses an asynchronous callback to return the result. * - * @param { number } badgeNumber - Badge number. - * @param { AsyncCallback<void> } callback - callback - The callback of setBadgeNumber.. + * @param { number } badgeNumber - Notification badge number to set. If badgeNumber is set to 0, badges are cleared; + * if the value is greater than 99, 99+ is displayed on the badge. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -3301,10 +3315,12 @@ declare namespace notificationManager { * @since 12 */ /** - * Set badge number. + * Sets the notification badge number. This API uses an asynchronous callback to return the result. * - * @param { number } badgeNumber - Badge number. - * @param { AsyncCallback<void> } callback - callback - The callback of setBadgeNumber.. + * @param { number } badgeNumber - Notification badge number to set. If badgeNumber is set to 0, badges are cleared; + * if the value is greater than 99, 99+ is displayed on the badge. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * err is undefined; otherwise, err is an error object. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. @@ -3319,10 +3335,11 @@ declare namespace notificationManager { function setBadgeNumber(badgeNumber: number, callback: AsyncCallback<void>): void; /** - * Set badge number. + * Sets the notification badge number. This API uses a promise to return the result. * - * @param { number } badgeNumber - Badge number. - * @returns { Promise<void> } The promise returned by the function. + * @param { number } badgeNumber - Notification badge number to set. If badgeNumber is set to 0, badges are cleared; + * if the value is greater than 99, 99+ is displayed on the badge. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -3333,10 +3350,11 @@ declare namespace notificationManager { * @since 10 */ /** - * Set badge number. + * Sets the notification badge number. This API uses a promise to return the result. * - * @param { number } badgeNumber - Badge number. - * @returns { Promise<void> } The promise returned by the function. + * @param { number } badgeNumber - Notification badge number to set. If badgeNumber is set to 0, badges are cleared; + * if the value is greater than 99, 99+ is displayed on the badge. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 1600001 - Internal error. @@ -3348,10 +3366,11 @@ declare namespace notificationManager { * @since 12 */ /** - * Set badge number. + * Sets the notification badge number. This API uses a promise to return the result. * - * @param { number } badgeNumber - Badge number. - * @returns { Promise<void> } The promise returned by the function. + * @param { number } badgeNumber - Notification badge number to set. If badgeNumber is set to 0, badges are cleared; + * if the value is greater than 99, 99+ is displayed on the badge. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. @@ -3429,7 +3448,6 @@ declare namespace notificationManager { * @throws { BusinessError } 202 - Not system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 1600001 - Internal error. * @syscap SystemCapability.Notification.Notification * @systemapi @@ -3466,7 +3484,6 @@ declare namespace notificationManager { * @throws { BusinessError } 202 - Not system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -3500,7 +3517,6 @@ declare namespace notificationManager { * @throws { BusinessError } 202 - Not system application. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 1600001 - Internal error. * @syscap SystemCapability.Notification.Notification * @systemapi @@ -3671,6 +3687,18 @@ declare namespace notificationManager { */ function getSlotFlagsByBundle(bundle: BundleOption): Promise<number>; + /** + * Obtains a notification setting of the calling application. + * + * @returns { Promise<NotificationSetting> } Returns notificationsetting of this application. + * @throws { BusinessError } 1600001 - Internal error. + * @throws { BusinessError } 1600002 - Marshalling or unmarshalling error. + * @throws { BusinessError } 1600003 - Failed to connect to the service. + * @syscap SystemCapability.Notification.Notification + * @since 20 + */ + function getNotificationSetting(): Promise<NotificationSetting>; + /** * Add do not disturb notification templates. * @@ -3789,9 +3817,10 @@ declare namespace notificationManager { function setAdditionalConfig(key: string, value: string): Promise<number>; /** - * Request open the notification settings pop-up window. + * Opens the notification settings page of the application, which is displayed in semi-modal mode and can be used to set + * the notification enabling and notification mode. This API uses a promise to return the URI of the file in the destination directory. * - * @param { UIAbilityContext } context - The context indicates the ability context you want to bind; + * @param { UIAbilityContext } context - Ability context bound to the notification settings page. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 1600001 - Internal error. * @throws { BusinessError } 1600003 - Failed to connect to the service. @@ -3801,9 +3830,10 @@ declare namespace notificationManager { * @since 13 */ /** - * Request open the notification settings pop-up window. + * Opens the notification settings page of the application, which is displayed in semi-modal mode and can be used to set + * the notification enabling and notification mode. This API uses a promise to return the URI of the file in the destination directory. * - * @param { UIAbilityContext } context - The context indicates the ability context you want to bind; + * @param { UIAbilityContext } context - Ability context bound to the notification settings page. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 1600001 - Internal error. @@ -4086,14 +4116,41 @@ declare namespace notificationManager { } /** - * Describes NotificationSlot types. + * Describes a NotificationSetting instance. + * + * @typedef NotificationSetting + * @syscap SystemCapability.Notification.Notification + * @since 20 + */ + export interface NotificationSetting { + /** + * Indicates whether vibration is enabled. + * + * @type { boolean } + * @syscap SystemCapability.Notification.Notification + * @since 20 + */ + vibrationEnabled: boolean; + + /** + * Indicates whether sound is enabled. + * + * @type { boolean } + * @syscap SystemCapability.Notification.Notification + * @since 20 + */ + soundEnabled: boolean; + } + + /** + * Enumerates the notification slot types. * * @enum { number } * @syscap SystemCapability.Notification.Notification * @since 9 */ /** - * Describes NotificationSlot types. + * Enumerates the notification slot types. * * @enum { number } * @syscap SystemCapability.Notification.Notification @@ -4102,13 +4159,13 @@ declare namespace notificationManager { */ export enum SlotType { /** - * NotificationSlot of an unknown type. + * Unknown type. This type corresponds to SlotLevel being LEVEL_MIN. * * @syscap SystemCapability.Notification.Notification * @since 9 */ /** - * NotificationSlot of an unknown type. + * Unknown type. This type corresponds to SlotLevel being LEVEL_MIN. * * @syscap SystemCapability.Notification.Notification * @atomicservice @@ -4117,13 +4174,13 @@ declare namespace notificationManager { UNKNOWN_TYPE = 0, /** - * NotificationSlot for social communication. + * Notification slot for social communication. This type corresponds to SlotLevel being LEVEL_HIGH. * * @syscap SystemCapability.Notification.Notification * @since 9 */ /** - * NotificationSlot for social communication. + * Notification slot for social communication. This type corresponds to SlotLevel being LEVEL_HIGH. * * @syscap SystemCapability.Notification.Notification * @atomicservice @@ -4132,13 +4189,13 @@ declare namespace notificationManager { SOCIAL_COMMUNICATION = 1, /** - * NotificationSlot for service information. + * Notification slot for service information. This type corresponds to SlotLevel being LEVEL_HIGH. * * @syscap SystemCapability.Notification.Notification * @since 9 */ /** - * NotificationSlot for service information. + * Notification slot for service information. This type corresponds to SlotLevel being LEVEL_HIGH. * * @syscap SystemCapability.Notification.Notification * @atomicservice @@ -4147,13 +4204,13 @@ declare namespace notificationManager { SERVICE_INFORMATION = 2, /** - * NotificationSlot for content information. + * Notification slot for content consultation. This type corresponds to SlotLevel being LEVEL_MIN. * * @syscap SystemCapability.Notification.Notification * @since 9 */ /** - * NotificationSlot for content information. + * Notification slot for content consultation. This type corresponds to SlotLevel being LEVEL_MIN. * * @syscap SystemCapability.Notification.Notification * @atomicservice @@ -4162,13 +4219,15 @@ declare namespace notificationManager { CONTENT_INFORMATION = 3, /** - * NotificationSlot for live view. + * Live view. A third-party application cannot directly create a notification of this slot type. After the system proxy creates a system live view, + * the third-party application releases a notification with the same ID to update the specified content. This type corresponds to SlotLevel being LEVEL_DEFAULT. * * @syscap SystemCapability.Notification.Notification * @since 11 */ /** - * NotificationSlot for live view. + * Live view. A third-party application cannot directly create a notification of this slot type. After the system proxy creates a system live view, + * the third-party application releases a notification with the same ID to update the specified content. This type corresponds to SlotLevel being LEVEL_DEFAULT. * * @syscap SystemCapability.Notification.Notification * @atomicservice @@ -4177,13 +4236,15 @@ declare namespace notificationManager { LIVE_VIEW = 4, /** - * NotificationSlot for customer service. + * Customer service message. This type is used for messages between users and customer service providers. The messages must be initiated by users. + * This type corresponds to SlotLevel being LEVEL_DEFAULT. * * @syscap SystemCapability.Notification.Notification * @since 11 */ /** - * NotificationSlot for customer service. + * Customer service message. This type is used for messages between users and customer service providers. The messages must be initiated by users. + * This type corresponds to SlotLevel being LEVEL_DEFAULT. * * @syscap SystemCapability.Notification.Notification * @atomicservice @@ -4201,13 +4262,13 @@ declare namespace notificationManager { EMERGENCY_INFORMATION = 10, /** - * NotificationSlot for other purposes. + * Notification slot for other purposes. This type corresponds to SlotLevel being LEVEL_MIN. * * @syscap SystemCapability.Notification.Notification * @since 9 */ /** - * NotificationSlot for other purposes. + * Notification slot for other purposes. This type corresponds to SlotLevel being LEVEL_MIN. * * @syscap SystemCapability.Notification.Notification * @atomicservice @@ -4217,14 +4278,14 @@ declare namespace notificationManager { } /** - * Describes notification content types. + * Enumerates the notification content types. * * @enum { number } * @syscap SystemCapability.Notification.Notification * @since 9 */ /** - * Describes notification content types. + * Enumerates the notification content types. * * @enum { number } * @syscap SystemCapability.Notification.Notification @@ -4312,13 +4373,15 @@ declare namespace notificationManager { NOTIFICATION_CONTENT_MULTILINE, /** - * System local live view notification. + * Live view notification. A third-party application cannot directly create a notification of this type. + * After the system proxy creates a system live view, the third-party application releases a notification with the same ID to update the specified content. * * @syscap SystemCapability.Notification.Notification * @since 11 */ /** - * System local live view notification. + * Live view notification. A third-party application cannot directly create a notification of this type. + * After the system proxy creates a system live view, the third-party application releases a notification with the same ID to update the specified content. * * @syscap SystemCapability.Notification.Notification * @atomicservice @@ -4327,13 +4390,13 @@ declare namespace notificationManager { NOTIFICATION_CONTENT_SYSTEM_LIVE_VIEW, /** - * Common live view notification. + * Common live view notification. Only system applications are supported. * * @syscap SystemCapability.Notification.Notification * @since 11 */ /** - * Common live view notification. + * Common live view notification. Only system applications are supported. * * @syscap SystemCapability.Notification.Notification * @atomicservice @@ -4343,7 +4406,7 @@ declare namespace notificationManager { } /** - * Indicates the level of the slot + * Enumerates the notification level. * * @enum { number } * @syscap SystemCapability.Notification.Notification @@ -4351,7 +4414,7 @@ declare namespace notificationManager { */ export enum SlotLevel { /** - * Indicates that the notification function is disabled. + * Notification is disabled. * * @syscap SystemCapability.Notification.Notification * @since 9 @@ -4359,8 +4422,7 @@ declare namespace notificationManager { LEVEL_NONE = 0, /** - * Indicates that the notification function is enabled but notification - * icons are not displayed in the status bar, with no banner or prompt tone. + * Notification is enabled, but the notification icon is not displayed in the status bar, with no banner and alert tone. * * @syscap SystemCapability.Notification.Notification * @since 9 @@ -4368,8 +4430,7 @@ declare namespace notificationManager { LEVEL_MIN = 1, /** - * Indicates that the notification function is enabled and notification - * icons are displayed in the status bar, with no banner or prompt tone. + * Notification is enabled, and the notification icon is displayed in the status bar, with no banner and alert tone. * * @syscap SystemCapability.Notification.Notification * @since 9 @@ -4377,8 +4438,7 @@ declare namespace notificationManager { LEVEL_LOW = 2, /** - * Indicates that the notification function is enabled and notification - * icons are displayed in the status bar, with no banner but with a prompt tone. + * Notification is enabled, and the notification icon is displayed in the status bar, with an alert tone but no banner. * * @syscap SystemCapability.Notification.Notification * @since 9 @@ -4386,8 +4446,7 @@ declare namespace notificationManager { LEVEL_DEFAULT = 3, /** - * Indicates that the notification function is enabled and notification - * icons are displayed in the status bar, with a banner and a prompt tone. + * Notification is enabled, and the notification icon is displayed in the status bar, with an alert tone and banner. * * @syscap SystemCapability.Notification.Notification * @since 9 diff --git a/api/@ohos.pasteboard.d.ts b/api/@ohos.pasteboard.d.ts old mode 100755 new mode 100644 index 6e8ab17c15a0864fc79e92eb72d339b36cf71964..c5d0d860fd0e1477f49c7494119bc4c40078c961 --- a/api/@ohos.pasteboard.d.ts +++ b/api/@ohos.pasteboard.d.ts @@ -21,7 +21,9 @@ import { AsyncCallback } from './@ohos.base'; import Want from './@ohos.app.ability.Want'; import image from './@ohos.multimedia.image'; +/*** if arkts 1.1 */ import unifiedDataChannel from './@ohos.data.unifiedDataChannel'; +/*** endif */ /** * systemPasteboard @@ -34,7 +36,8 @@ import unifiedDataChannel from './@ohos.data.unifiedDataChannel'; * @namespace pasteboard * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace pasteboard { /** @@ -62,7 +65,8 @@ declare namespace pasteboard { * @constant * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ const MIMETYPE_TEXT_HTML = 'text/html'; /** @@ -76,7 +80,8 @@ declare namespace pasteboard { * @constant * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ const MIMETYPE_TEXT_WANT = 'text/want'; /** @@ -90,7 +95,8 @@ declare namespace pasteboard { * @constant * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ const MIMETYPE_TEXT_PLAIN = 'text/plain'; /** @@ -104,7 +110,8 @@ declare namespace pasteboard { * @constant * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ const MIMETYPE_TEXT_URI = 'text/uri'; /** @@ -118,7 +125,8 @@ declare namespace pasteboard { * @constant * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ const MIMETYPE_PIXELMAP = 'pixelMap'; @@ -133,7 +141,8 @@ declare namespace pasteboard { * @typedef { string | image.PixelMap | Want | ArrayBuffer } * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ type ValueType = string | image.PixelMap | Want | ArrayBuffer; @@ -193,7 +202,7 @@ declare namespace pasteboard { * @since 9 */ /** - * Creates a PasteData object with MIME type and value. + * Creates a PasteData object of the specified type. * @param { string } mimeType - indicates MIME type of value, its size cannot be greater than 1024 bytes. * @param { ValueType } value - indicates the content that is set to PasteData. * @returns { PasteData } a new PasteData object which contains mimeType and value. @@ -202,7 +211,8 @@ declare namespace pasteboard { * 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function createData(mimeType: string, value: ValueType): PasteData; @@ -214,7 +224,8 @@ declare namespace pasteboard { * 2. Incorrect parameters types; * 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Pasteboard - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ function createData(data: Record<string, ValueType>): PasteData; @@ -274,10 +285,10 @@ declare namespace pasteboard { * @since 9 */ /** - * Creates a record object with MIME type and value. + * Creates a PasteDataRecord object of the specified type. * @param { string } mimeType - indicates MIME type of value, its size cannot be greater than 1024 bytes. - * @param { ValueType } value - content to be saved. - * @returns { PasteDataRecord } a new PasteDataRecord object which contains mimeType and value. + * @param { ValueType } value - Data content of the specified type. + * @returns { PasteDataRecord } A new paste data record of a specified type. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types; * 3. Parameter verification failed. @@ -298,7 +309,8 @@ declare namespace pasteboard { * @returns { SystemPasteboard } The system clipboard object * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function getSystemPasteboard(): SystemPasteboard; @@ -313,7 +325,8 @@ declare namespace pasteboard { * @enum { number } * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ enum ShareOption { /** @@ -322,10 +335,11 @@ declare namespace pasteboard { * @since 9 */ /** - * INAPP indicates that only paste in the same app is allowed. + * INAPP indicates that only intra-application pasting is allowed. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ INAPP, /** @@ -334,10 +348,11 @@ declare namespace pasteboard { * @since 9 */ /** - * LOCALDEVICE indicates that paste in any app in this device is allowed. + * LOCALDEVICE indicates that paste is allowed in any application. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ LOCALDEVICE, /** @@ -346,10 +361,11 @@ declare namespace pasteboard { * @since 9 */ /** - * CROSSDEVICE indicates that paste in any app across devices is allowed. + * CROSSDEVICE indicates that paste is allowed in any application across devices. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 * @deprecated since 12 */ CROSSDEVICE @@ -390,11 +406,13 @@ declare namespace pasteboard { * @since 7 */ /** - * Paste data property. + * Defines the properties of all data records on the pasteboard, including the timestamp, data type, pasteable range, + * and additional data. The defined properties can be applied to the pasteboard only with the setProperty method. * @interface PasteDataProperty * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface PasteDataProperty { /** @@ -440,7 +458,8 @@ declare namespace pasteboard { * @type { string } * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ tag: string; /** @@ -456,7 +475,8 @@ declare namespace pasteboard { * @readonly * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly timestamp: number; /** @@ -486,7 +506,8 @@ declare namespace pasteboard { * @type { ShareOption } * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ shareOption: ShareOption; } @@ -502,7 +523,8 @@ declare namespace pasteboard { * @interface PasteDataRecord * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface PasteDataRecord { /** @@ -544,7 +566,8 @@ declare namespace pasteboard { * @type { string } * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ mimeType: string; /** @@ -558,7 +581,8 @@ declare namespace pasteboard { * @type { string } * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ plainText: string; /** @@ -572,7 +596,8 @@ declare namespace pasteboard { * @type { string } * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ uri: string; /** @@ -690,7 +715,8 @@ declare namespace pasteboard { * @interface PasteData * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface PasteData { /** @@ -724,7 +750,8 @@ declare namespace pasteboard { * @param { PasteDataRecord } record - The content of a new record. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ addRecord(record: PasteDataRecord): void; @@ -778,7 +805,8 @@ declare namespace pasteboard { * 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ addRecord(mimeType: string, value: ValueType): void; @@ -898,7 +926,8 @@ declare namespace pasteboard { * @returns { PasteDataProperty } PasteDataProperty type of PasteDataProperty * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getProperty(): PasteDataProperty; @@ -917,7 +946,8 @@ declare namespace pasteboard { * 2. Incorrect parameters types. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setProperty(property: PasteDataProperty): void; @@ -953,7 +983,8 @@ declare namespace pasteboard { * @throws { BusinessError } 12900001 - The index is out of the record. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getRecord(index: number): PasteDataRecord; @@ -968,7 +999,8 @@ declare namespace pasteboard { * @returns { number } The number of the clipboard contents * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getRecordCount(): number; @@ -1058,7 +1090,7 @@ declare namespace pasteboard { /** * Replaces a specified record with a new one. * @param { number } index - indicates the record index in PasteData. - * @param { PasteDataRecord } record - the content of a new record. + * @param { PasteDataRecord } record - the content of the replaced record. * @returns { boolean } The query returns True on success, or False on failure. * @syscap SystemCapability.MiscServices.Pasteboard * @since 7 @@ -1080,7 +1112,7 @@ declare namespace pasteboard { /** * Replaces a specified record with a new one. * @param { number } index - indicates the record index in PasteData. - * @param { PasteDataRecord } record - the content of a new record. + * @param { PasteDataRecord } record - the content of the replaced record. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. * @throws { BusinessError } 12900001 - The index is out of the record. @@ -1268,7 +1300,8 @@ declare namespace pasteboard { * @interface SystemPasteboard * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface SystemPasteboard { /** @@ -1297,7 +1330,7 @@ declare namespace pasteboard { /** * Checks whether the data is remote. * @returns { boolean } True is remote data, else false. - * @throws { BusinessError } 12900005 - Request timed out. + * @throws { BusinessError } 12900005 - Excessive processing time for internal data. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 11 @@ -1305,12 +1338,13 @@ declare namespace pasteboard { isRemoteData(): boolean; /** - * Gets source of data. - * @returns { string } data source. - * @throws { BusinessError } 12900005 - Request timed out. + * Obtains the application bundle name of the data source. + * @returns { string } Application bundle name of the data source. + * @throws { BusinessError } 12900005 - Excessive processing time for internal data. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getDataSource(): string; @@ -1320,10 +1354,11 @@ declare namespace pasteboard { * @returns { boolean } if having mimeType in PasteData returns true, else returns false. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 12900005 - Request timed out. + * @throws { BusinessError } 12900005 - Excessive processing time for internal data. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ hasDataType(mimeType: string): boolean; @@ -1364,7 +1399,8 @@ declare namespace pasteboard { * 2. Incorrect parameters types. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ clearData(callback: AsyncCallback<void>): void; @@ -1379,13 +1415,14 @@ declare namespace pasteboard { * @returns { Promise<void> } the promise returned by the clearData. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ clearData(): Promise<void>; /** * Clears the pasteboard. - * @throws { BusinessError } 12900005 - Request timed out. + * @throws { BusinessError } 12900005 - Excessive processing time for internal data. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 11 @@ -1419,7 +1456,7 @@ declare namespace pasteboard { * @param { AsyncCallback<PasteData> } callback - the callback of getData. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. * @syscap SystemCapability.MiscServices.Pasteboard * @since 9 */ @@ -1428,7 +1465,7 @@ declare namespace pasteboard { * @param { AsyncCallback<PasteData> } callback - the callback of getData. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 11 @@ -1441,7 +1478,7 @@ declare namespace pasteboard { * permission required to call the API. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 12 @@ -1451,14 +1488,14 @@ declare namespace pasteboard { /** * Gets pastedata from the system pasteboard. * @returns { Promise<PasteData> } the promise returned by the getData. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. * @syscap SystemCapability.MiscServices.Pasteboard * @since 9 */ /** * Gets pastedata from the system pasteboard. * @returns { Promise<PasteData> } the promise returned by the getData. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 11 @@ -1469,7 +1506,7 @@ declare namespace pasteboard { * @returns { Promise<PasteData> } the promise returned by the getData. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the * permission required to call the API. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 12 @@ -1479,7 +1516,7 @@ declare namespace pasteboard { /** * Gets pasteData from the system pasteboard. * @returns { PasteData } a new PasteData. - * @throws { BusinessError } 12900005 - Request timed out. + * @throws { BusinessError } 12900005 - Excessive processing time for internal data. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 11 @@ -1490,10 +1527,11 @@ declare namespace pasteboard { * @returns { PasteData } a new PasteData. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the * permission required to call the API. - * @throws { BusinessError } 12900005 - Request timed out. + * @throws { BusinessError } 12900005 - Excessive processing time for internal data. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getDataSync(): PasteData; @@ -1556,7 +1594,7 @@ declare namespace pasteboard { /** * Checks whether there is content in the system pasteboard. * @returns { boolean } True exists, false does not exist. - * @throws { BusinessError } 12900005 - Request timed out. + * @throws { BusinessError } 12900005 - Excessive processing time for internal data. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 11 @@ -1593,8 +1631,8 @@ declare namespace pasteboard { * @param { AsyncCallback<void> } callback - the callback of setData. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified. * 2. Incorrect parameters types. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. - * @throws { BusinessError } 12900004 - Replication is prohibited. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787278 - Replication is prohibited. * @syscap SystemCapability.MiscServices.Pasteboard * @since 9 */ @@ -1604,11 +1642,12 @@ declare namespace pasteboard { * @param { AsyncCallback<void> } callback - the callback of setData. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. - * @throws { BusinessError } 12900004 - Replication is prohibited. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787278 - Replication is prohibited. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setData(data: PasteData, callback: AsyncCallback<void>): void; @@ -1618,8 +1657,8 @@ declare namespace pasteboard { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. - * @throws { BusinessError } 12900004 - Replication is prohibited. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787278 - Replication is prohibited. * @syscap SystemCapability.MiscServices.Pasteboard * @since 9 */ @@ -1629,11 +1668,12 @@ declare namespace pasteboard { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. - * @throws { BusinessError } 12900004 - Replication is prohibited. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787278 - Replication is prohibited. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setData(data: PasteData): Promise<void>; @@ -1642,7 +1682,7 @@ declare namespace pasteboard { * @param { PasteData } data - PasteData will be written to the clipboard. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 12900005 - Request timed out. + * @throws { BusinessError } 12900005 - Excessive processing time for internal data. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 11 @@ -1655,7 +1695,7 @@ declare namespace pasteboard { * @returns { Promise<unifiedDataChannel.UnifiedData> } the promise returned by the getData. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the * permission required to call the API. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 12 @@ -1668,7 +1708,7 @@ declare namespace pasteboard { * @returns { unifiedDataChannel.UnifiedData } a new UnifiedData. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the * permission required to call the API. - * @throws { BusinessError } 12900005 - Request timed out. + * @throws { BusinessError } 12900005 - Excessive processing time for internal data. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 12 @@ -1681,8 +1721,8 @@ declare namespace pasteboard { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. - * @throws { BusinessError } 12900004 - Replication is prohibited. + * @throws { BusinessError } 27787277 - Another copy or paste operation is in progress. + * @throws { BusinessError } 27787278 - Replication is prohibited. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 12 @@ -1694,7 +1734,7 @@ declare namespace pasteboard { * @param { unifiedDataChannel.UnifiedData } data - Unified data will be written to the pasteboard. * @throws { BusinessError } 401 - Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameters types. - * @throws { BusinessError } 12900005 - Request timed out. + * @throws { BusinessError } 12900005 - Excessive processing time for internal data. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 12 @@ -1792,10 +1832,10 @@ declare namespace pasteboard { * permission required to call the API. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 12900003 - Another copy or paste operation is in progress. - * @throws { BusinessError } 12900007 - Copy file failed. + * @throws { BusinessError } 12900007 - Invalid destUri or file system error. * @throws { BusinessError } 12900008 - Failed to start progress. * @throws { BusinessError } 12900009 - Progress exits abnormally. - * @throws { BusinessError } 12900010 - Get pasteData error. + * @throws { BusinessError } 12900010 - System error occurred during paste execution. * @syscap SystemCapability.MiscServices.Pasteboard * @atomicservice * @since 15 diff --git a/api/@ohos.pluginComponent.d.ets b/api/@ohos.pluginComponent.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..5f79e3d5e1f839e9f833ff1489d5993f2f0c87c2 --- /dev/null +++ b/api/@ohos.pluginComponent.d.ets @@ -0,0 +1,679 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { AsyncCallback } from './@ohos.base'; +import Want from './@ohos.app.ability.Want'; + +/** + * Plugin component template property. + * + * @interface PluginComponentTemplate + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ +/** + * Plugin component template property. + * + * @interface PluginComponentTemplate + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ +export interface PluginComponentTemplate { + /** + * Defines the source + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines the source + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + source: string; + + /** + * Defines the ability + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines the ability + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + ability: string; +} + +/** + * Plugin component manager interface. + * + * @namespace pluginComponentManager + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ +/** + * Plugin component manager interface. + * + * @namespace pluginComponentManager + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ +declare namespace pluginComponentManager { + /** + * Defines KVObject + * + * @typedef { object } KVObject + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines KVObject + * + * @typedef { object } KVObject + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export type KVObject = Record<string, number |string | boolean | [] | Record<string, number |string | boolean | []>> + + /** + * Plugin component push parameters. + * + * @interface PushParameters + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Plugin component push parameters. + * + * @interface PushParameters + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface PushParameters { + /** + * Defines want. + * + * @type { Want } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines want. + * + * @type { Want } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + want: Want; + + /** + * Defines name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + name: string; + + /** + * Defines data. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines data. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + data: KVObject; + + /** + * Defines extraData. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines extraData. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + extraData: KVObject; + + /** + * Defines jsonPath. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines jsonPath. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + jsonPath?: string; + } + + /** + * Plugin component push parameters which is used in push function. + * + * @interface PushParameterForStage + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + export interface PushParameterForStage { + /** + * Defines owner. + * + * @type { Want } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + owner: Want; + + /** + * Defines target. + * + * @type { Want } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + target: Want; + + /** + * Defines name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + name: string; + + /** + * Defines data. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + data: KVObject; + + /** + * Defines extraData. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + extraData: KVObject; + + /** + * Defines jsonPath. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + jsonPath?: string; + } + + /** + * Plugin component request parameters. + * + * @interface RequestParameters + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Plugin component request parameters. + * + * @interface RequestParameters + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface RequestParameters { + /** + * Defines want. + * + * @type { Want } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines want. + * + * @type { Want } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + want: Want; + + /** + * Defines name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + name: string; + + /** + * Defines data. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines data. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + data: KVObject; + + /** + * Defines jsonPath. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines jsonPath. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + jsonPath?: string; + } + + /** + * Plugin component request parameters which is used in request function. + * + * @interface RequestParameterForStage + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + export interface RequestParameterForStage { + /** + * Defines owner. + * + * @type { Want } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + owner: Want; + + /** + * Defines target. + * + * @type { Want } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + target: Want; + /** + * Defines name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + name: string; + + /** + * Defines data. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + data: KVObject; + + /** + * Defines jsonPath. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 9 + */ + jsonPath?: string; + } + + /** + * Plugin component request callback parameters. + * + * @interface RequestCallbackParameters + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Plugin component request callback parameters. + * + * @interface RequestCallbackParameters + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface RequestCallbackParameters { + + /** + * Defines componentTemplate. + * + * @type { PluginComponentTemplate } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines componentTemplate. + * + * @type { PluginComponentTemplate } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + componentTemplate: PluginComponentTemplate; + + /** + * Defines data. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines data. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + data: KVObject; + + /** + * Defines extraData. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines extraData. + * + * @type { KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + extraData: KVObject; + } + + /** + * Plugin component request event result value. + * + * @interface RequestEventResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Plugin component request event result value. + * + * @interface RequestEventResult + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export interface RequestEventResult { + /** + * Defines template. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines template. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + template?: string; + + /** + * Defines data. + * + * @type { ?KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines data. + * + * @type { ?KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + data?: KVObject; + + /** + * Defines extraData. + * + * @type { ?KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Defines extraData. + * + * @type { ?KVObject } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + extraData?: KVObject; + } + + /** + * Plugin component push event callback. + * + * @typedef { function } OnPushEventCallback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Plugin component push event callback. + * + * @typedef { function } OnPushEventCallback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export type OnPushEventCallback = (source: Want, template: PluginComponentTemplate, data: KVObject, + extraData: KVObject) => void; + + /** + * Plugin component request event callback. + * + * @typedef { function } OnRequestEventCallback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Plugin component request event callback. + * + * @typedef { function } OnRequestEventCallback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + + export type OnRequestEventCallback = (source: Want, name: string, data: KVObject) => RequestEventResult; + + /** + * Plugin component push method. + * + * @param { PushParameters } param + * @param { AsyncCallback<void> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Plugin component push method. + * + * @param { PushParameters } param + * @param { AsyncCallback<void> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export function push(param: PushParameters, callback: AsyncCallback<void>): void; + + /** + * Plugin component request method. + * + * @param { RequestParameters } param + * @param { AsyncCallback<RequestCallbackParameters> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Plugin component request method. + * + * @param { RequestParameters } param + * @param { AsyncCallback<RequestCallbackParameters> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export function request(param: RequestParameters, callback: AsyncCallback<RequestCallbackParameters>): void; + + /** + * Plugin component push method used to send the information of the template it provides. + * + * @param { PushParameterForStage } param - Plugin component push parameters for stage. + * @param { AsyncCallback<void> } callback - Plugin component push event callback. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @StageModelOnly + * @since 9 + */ + export function push(param: PushParameterForStage, callback: AsyncCallback<void>): void; + + /** + * Plugin component request method used to send a request for the information of the template it wants. + * + * @param { RequestParameterForStage } param - Plugin component request parameters for stage. + * @param { AsyncCallback<RequestCallbackParameters> } callback - Plugin component request event callback. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @StageModelOnly + * @since 9 + */ + export function request(param: RequestParameterForStage, callback: AsyncCallback<RequestCallbackParameters>): void; + + /** + * Plugin component event listener. + * + * @param { string } eventType + * @param { OnPushEventCallback | OnRequestEventCallback } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Plugin component event listener. + * + * @param { string } eventType + * @param { OnPushEventCallback | OnRequestEventCallback } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + export function on(eventType: string, callback: OnPushEventCallback | OnRequestEventCallback): void; +} + +export default pluginComponentManager; \ No newline at end of file diff --git a/api/@ohos.power.d.ts b/api/@ohos.power.d.ts index 4b41504996fb80e88258f770f724eb83aaa56649..0bdb72dc4fa982c01aa1098894afdb170ae9ecb5 100644 --- a/api/@ohos.power.d.ts +++ b/api/@ohos.power.d.ts @@ -105,7 +105,6 @@ declare namespace power { * The screen will be on if device is active, screen will be off otherwise. * * @returns { boolean } Returns true if the device is active; returns false otherwise. - * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @since 9 */ @@ -135,7 +134,7 @@ declare namespace power { * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @systemapi - * @since 18 + * @since 19 */ function wakeup(detail: string): void; @@ -171,7 +170,7 @@ declare namespace power { * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @systemapi - * @since 18 + * @since 19 */ function suspend(isImmediate?: boolean): void; @@ -179,7 +178,6 @@ declare namespace power { * Obtains the power mode of the current device. For details, see {@link DevicePowerMode}. * * @returns { DevicePowerMode } The power mode {@link DevicePowerMode} of current device . - * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @since 9 */ @@ -195,7 +193,6 @@ declare namespace power { * @throws { BusinessError } 201 – Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Parameter verification failed. - * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @systemapi * @since 9 @@ -212,7 +209,6 @@ declare namespace power { * @throws { BusinessError } 201 – Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Parameter verification failed. - * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @systemapi * @since 9 @@ -251,7 +247,7 @@ declare namespace power { * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @systemapi - * @since 18 + * @since 19 */ function hibernate(clearMemory: boolean): void; @@ -277,7 +273,7 @@ declare namespace power { * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @systemapi - * @since 18 + * @since 19 */ function setScreenOffTime(timeout: number): void; diff --git a/api/@ohos.print.d.ts b/api/@ohos.print.d.ts index f78f22a71e800b7be52a2cbbe1bb1cbc43d06fef..df0fe3f877103d0f8572a2841b3a90a55f27aece 100644 --- a/api/@ohos.print.d.ts +++ b/api/@ohos.print.d.ts @@ -26,7 +26,8 @@ import type Context from './application/Context'; * * @namespace print * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace print { @@ -34,7 +35,8 @@ declare namespace print { * PrintTask provide event callback. * @interface PrintTask * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface PrintTask { /** @@ -45,7 +47,8 @@ declare namespace print { * @throws { BusinessError } 201 - the application does not have permission to call this function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'block', callback: Callback<void>): void; @@ -57,7 +60,8 @@ declare namespace print { * @throws { BusinessError } 201 - the application does not have permission to call this function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'succeed', callback: Callback<void>): void; @@ -69,7 +73,8 @@ declare namespace print { * @throws { BusinessError } 201 - the application does not have permission to call this function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'fail', callback: Callback<void>): void; @@ -81,7 +86,8 @@ declare namespace print { * @throws { BusinessError } 201 - the application does not have permission to call this function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'cancel', callback: Callback<void>): void; @@ -93,7 +99,8 @@ declare namespace print { * @throws { BusinessError } 201 - the application does not have permission to call this function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'block', callback?: Callback<void>): void; @@ -105,7 +112,8 @@ declare namespace print { * @throws { BusinessError } 201 - the application does not have permission to call this function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'succeed', callback?: Callback<void>): void; @@ -117,7 +125,8 @@ declare namespace print { * @throws { BusinessError } 201 - the application does not have permission to call this function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'fail', callback?: Callback<void>): void; @@ -129,7 +138,8 @@ declare namespace print { * @throws { BusinessError } 201 - the application does not have permission to call this function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'cancel', callback?: Callback<void>): void; } @@ -179,7 +189,8 @@ declare namespace print { * @throws { BusinessError } 201 - the application does not have permission to call this function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function print(files: Array<string>, callback: AsyncCallback<PrintTask>): void; @@ -191,7 +202,8 @@ declare namespace print { * @throws { BusinessError } 201 - the application does not have permission to call this function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function print(files: Array<string>): Promise<PrintTask>; @@ -330,7 +342,8 @@ declare namespace print { * @typedef PrintMargin * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface PrintMargin { /** @@ -338,7 +351,8 @@ declare namespace print { * @type { ?number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ top?: number; @@ -347,7 +361,8 @@ declare namespace print { * @type { ?number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ bottom?: number; @@ -356,7 +371,8 @@ declare namespace print { * @type { ?number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ left?: number; @@ -365,7 +381,8 @@ declare namespace print { * @type { ?number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ right?: number; } @@ -375,7 +392,8 @@ declare namespace print { * @typedef PrinterRange * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface PrinterRange { /** @@ -383,7 +401,8 @@ declare namespace print { * @type { ?number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ startPage?: number; @@ -392,7 +411,8 @@ declare namespace print { * @type { ?number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ endPage?: number; @@ -401,7 +421,8 @@ declare namespace print { * @type { ?Array<number> } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ pages?: Array<number>; } @@ -411,7 +432,8 @@ declare namespace print { * @typedef PreviewAttribute * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface PreviewAttribute { /** @@ -419,7 +441,8 @@ declare namespace print { * @type { PrinterRange } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ previewRange: PrinterRange; @@ -428,7 +451,8 @@ declare namespace print { * @type { ?number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ result?: number; } @@ -438,7 +462,8 @@ declare namespace print { * @typedef PrintResolution * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface PrintResolution { /** @@ -446,7 +471,8 @@ declare namespace print { * @type { string } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ id: string; @@ -455,7 +481,8 @@ declare namespace print { * @type { number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ horizontalDpi: number; @@ -464,7 +491,8 @@ declare namespace print { * @type { number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ verticalDpi: number; } @@ -514,7 +542,8 @@ declare namespace print { * @typedef PrinterCapability * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface PrinterCapability { /** @@ -522,7 +551,8 @@ declare namespace print { * @type { number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ colorMode: number; @@ -531,7 +561,8 @@ declare namespace print { * @type { number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ duplexMode: number; @@ -540,7 +571,8 @@ declare namespace print { * @type { Array<PrintPageSize> } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ pageSize: Array<PrintPageSize>; @@ -549,7 +581,8 @@ declare namespace print { * @type { ?Array<PrintResolution> } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ resolution?: Array<PrintResolution>; @@ -558,7 +591,8 @@ declare namespace print { * @type { ?PrintMargin } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ minMargin?: PrintMargin; @@ -577,7 +611,8 @@ declare namespace print { * @typedef PrinterInfo * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface PrinterInfo { /** @@ -585,7 +620,8 @@ declare namespace print { * @type { string } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ printerId: string; @@ -594,7 +630,8 @@ declare namespace print { * @type { string } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ printerName: string; @@ -603,7 +640,8 @@ declare namespace print { * @type { PrinterState } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ printerState: PrinterState; @@ -612,7 +650,8 @@ declare namespace print { * @type { ?number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ printerIcon?: number; @@ -621,7 +660,8 @@ declare namespace print { * @type { ?string } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ description?: string; @@ -630,7 +670,8 @@ declare namespace print { * @type { ?PrinterCapability } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ capability?: PrinterCapability; @@ -639,7 +680,8 @@ declare namespace print { * @type { ?Object } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ options?: Object; } @@ -649,7 +691,8 @@ declare namespace print { * @typedef PrintJob * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface PrintJob { /** @@ -657,7 +700,8 @@ declare namespace print { * @type { Array<number> } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ fdList: Array<number>; @@ -666,7 +710,8 @@ declare namespace print { * @type { string } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ jobId: string; @@ -675,7 +720,8 @@ declare namespace print { * @type { string } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ printerId: string; @@ -684,7 +730,8 @@ declare namespace print { * @type { PrintJobState } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ jobState: PrintJobState; @@ -702,7 +749,8 @@ declare namespace print { * @type { number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ copyNumber: number; @@ -711,7 +759,8 @@ declare namespace print { * @type { PrinterRange } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ pageRange: PrinterRange; @@ -720,7 +769,8 @@ declare namespace print { * @type { boolean } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ isSequential: boolean; @@ -729,7 +779,8 @@ declare namespace print { * @type { PrintPageSize } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ pageSize: PrintPageSize; @@ -738,7 +789,8 @@ declare namespace print { * @type { boolean } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ isLandscape: boolean; @@ -747,7 +799,8 @@ declare namespace print { * @type { number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ colorMode: number; @@ -756,7 +809,8 @@ declare namespace print { * @type { number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ duplexMode: number; @@ -765,7 +819,8 @@ declare namespace print { * @type { ?PrintMargin } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ margin?: PrintMargin; @@ -774,7 +829,8 @@ declare namespace print { * @type { ?PreviewAttribute } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ preview?: PreviewAttribute; @@ -783,7 +839,8 @@ declare namespace print { * @type { ?Object } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ options?: Object; } @@ -1321,6 +1378,13 @@ declare namespace print { */ PRINT_JOB_RUNNING_CONVERTING_FILES = 27, + /** + * Print file uploading exception. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + PRINT_JOB_BLOCK_FILE_UPLOADING_ERROR = 30, + /** * Print unknown issue. * @syscap SystemCapability.Print.PrintFramework @@ -1405,6 +1469,13 @@ declare namespace print { * @since 14 */ E_PRINT_FILE_IO = 13100007, + + /** + * Number of files exceeding the upper limit. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + E_PRINT_TOO_MANY_FILES = 13100010, } /** @@ -1441,7 +1512,8 @@ declare namespace print { * @typedef PrinterExtensionInfo * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ interface PrinterExtensionInfo { /** @@ -1449,7 +1521,8 @@ declare namespace print { * @type { string } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ extensionId: string; @@ -1458,7 +1531,8 @@ declare namespace print { * @type { string } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ vendorId: string; @@ -1467,7 +1541,8 @@ declare namespace print { * @type { string } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ vendorName: string; @@ -1476,7 +1551,8 @@ declare namespace print { * @type { number } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ vendorIcon: number; @@ -1485,7 +1561,8 @@ declare namespace print { * @type { string } * @syscap SystemCapability.Print.PrintFramework * @systemapi - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ version: string; } @@ -1498,7 +1575,8 @@ declare namespace print { * @throws { BusinessError } 202 - not system application * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function queryAllPrinterExtensionInfos(callback: AsyncCallback<Array<PrinterExtensionInfo>>): void; @@ -1510,7 +1588,8 @@ declare namespace print { * @throws { BusinessError } 202 - not system application * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function queryAllPrinterExtensionInfos(): Promise<Array<PrinterExtensionInfo>>; @@ -1525,7 +1604,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function startDiscoverPrinter(extensionList: Array<string>, callback: AsyncCallback<void>): void; @@ -1540,7 +1620,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function startDiscoverPrinter(extensionList: Array<string>): Promise<void>; @@ -1552,7 +1633,8 @@ declare namespace print { * @throws { BusinessError } 202 - not system application * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function stopDiscoverPrinter(callback: AsyncCallback<void>): void; @@ -1564,7 +1646,8 @@ declare namespace print { * @throws { BusinessError } 202 - not system application * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function stopDiscoverPrinter(): Promise<void>; @@ -1578,7 +1661,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function connectPrinter(printerId: string, callback: AsyncCallback<void>): void; @@ -1592,7 +1676,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function connectPrinter(printerId: string): Promise<void>; @@ -1606,7 +1691,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function disconnectPrinter(printerId: string, callback: AsyncCallback<void>): void; @@ -1620,7 +1706,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function disconnectPrinter(printerId: string): Promise<void>; @@ -1634,7 +1721,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function queryPrinterCapability(printerId: string, callback: AsyncCallback<void>): void; @@ -1648,7 +1736,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function queryPrinterCapability(printerId: string): Promise<void>; @@ -1662,7 +1751,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function startPrintJob(jobInfo: PrintJob, callback: AsyncCallback<void>): void; @@ -1676,7 +1766,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function startPrintJob(jobInfo: PrintJob): Promise<void>; @@ -1690,7 +1781,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function cancelPrintJob(jobId: string, callback: AsyncCallback<void>): void; @@ -1704,7 +1796,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function cancelPrintJob(jobId: string): Promise<void>; @@ -1718,7 +1811,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function requestPrintPreview(jobInfo: PrintJob, callback: Callback<number>): void; @@ -1732,7 +1826,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function requestPrintPreview(jobInfo: PrintJob): Promise<number>; @@ -1746,7 +1841,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function on(type: 'printerStateChange', callback: (state: PrinterState, info: PrinterInfo) => void): void; @@ -1760,7 +1856,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function off(type: 'printerStateChange', callback?: Callback<boolean>): void; @@ -1774,7 +1871,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function on(type: 'jobStateChange', callback: (state: PrintJobState, job: PrintJob) => void): void; @@ -1788,7 +1886,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function off(type: 'jobStateChange', callback?: Callback<boolean>): void; @@ -1802,7 +1901,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function on(type: 'extInfoChange', callback: (extensionId: string, info: string) => void): void; @@ -1816,7 +1916,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function off(type: 'extInfoChange', callback?: Callback<boolean>): void; @@ -1830,7 +1931,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function addPrinters(printers: Array<PrinterInfo>, callback: AsyncCallback<void>): void; @@ -1844,7 +1946,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function addPrinters(printers: Array<PrinterInfo>): Promise<void>; @@ -1858,7 +1961,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function removePrinters(printerIds: Array<string>, callback: AsyncCallback<void>): void; @@ -1872,7 +1976,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function removePrinters(printerIds: Array<string>): Promise<void>; @@ -1886,7 +1991,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function updatePrinters(printers: Array<PrinterInfo>, callback: AsyncCallback<void>): void; @@ -1900,7 +2006,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function updatePrinters(printers: Array<PrinterInfo>): Promise<void>; @@ -1915,7 +2022,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function updatePrinterState(printerId: string, state: PrinterState, callback: AsyncCallback<void>): void; @@ -1930,7 +2038,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function updatePrinterState(printerId: string, state: PrinterState): Promise<void>; @@ -1946,7 +2055,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function updatePrintJobState(jobId: string, state: PrintJobState, subState: PrintJobSubState, callback: AsyncCallback<void>): void; @@ -1962,7 +2072,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function updatePrintJobState(jobId: string, state: PrintJobState, subState: PrintJobSubState): Promise<void>; @@ -1976,7 +2087,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function updateExtensionInfo(info: string, callback: AsyncCallback<void>): void; @@ -1990,7 +2102,8 @@ declare namespace print { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 */ function updateExtensionInfo(info: string): Promise<void>; @@ -2002,7 +2115,8 @@ declare namespace print { * @throws { BusinessError } 202 - not system application * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 * @deprecated since 11 * @useinstead print#queryPrintJobList */ @@ -2016,7 +2130,8 @@ declare namespace print { * @throws { BusinessError } 202 - not system application * @syscap SystemCapability.Print.PrintFramework * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10','1.2':'20'} + * @arkts 1.1&1.2 * @deprecated since 11 * @useinstead print#queryPrintJobList */ @@ -2123,13 +2238,11 @@ declare namespace print { /** * Get all added printers. - * @permission ohos.permission.MANAGE_PRINT_JOB + * @permission ohos.permission.MANAGE_PRINT_JOB or ohos.permission.PRINT * @returns { Promise<Array<string>> } the promise returned by the function. * @throws { BusinessError } 201 - the application does not have permission to call this function. - * @throws { BusinessError } 202 - not system application * @syscap SystemCapability.Print.PrintFramework - * @systemapi Hide this for inner system use. - * @since 12 + * @since 18 */ function getAddedPrinters(): Promise<Array<string>>; @@ -2272,6 +2385,22 @@ declare namespace print { */ printerMake?: string; + /** + * Printer preferences. + * @type { ?PrinterPreferences } + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + preferences?: PrinterPreferences; + + /** + * Printer alias. + * @type { ?string } + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + alias?: string; + /** * Detail information in json format. * @type { ?string } @@ -2446,6 +2575,249 @@ declare namespace print { PRINTER_UNAVAILABLE = 2, } + /** + * defines printer preferences. + * @typedef PrinterPreferences + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + interface PrinterPreferences { + /** + * Default duplex mode. + * @type { ?PrintDuplexMode } + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + defaultDuplexMode?: PrintDuplexMode; + + /** + * Default quality. + * @type { ?PrintQuality } + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + defaultPrintQuality?: PrintQuality; + + /** + * Default media type. + * @type { ?string } + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + defaultMediaType?: string; + + /** + * Default page size id. + * @type { ?string } + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + defaultPageSizeId?: string; + + /** + * Default orientation mode. + * @type { ?PrintOrientationMode } + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + defaultOrientation?: PrintOrientationMode; + + /** + * Default margins. + * @type { ?boolean } + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + borderless?: boolean; + + /** + * Detailed printer preferences in json format. + * @type { ?string } + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + options?: string; + } + + /** + * Enumeration of Printer Change Events. + * @enum { number } PrinterEvent + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + enum PrinterEvent { + /** + * Printer added. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + PRINTER_EVENT_ADDED = 0, + + /** + * Printer deleted. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + PRINTER_EVENT_DELETED = 1, + + /** + * Printer state changed. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + PRINTER_EVENT_STATE_CHANGED = 2, + + /** + * Printer info changed. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + PRINTER_EVENT_INFO_CHANGED = 3, + + /** + * Printer preference changed. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + PRINTER_EVENT_PREFERENCE_CHANGED = 4, + + /** + * Last used printer changed. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + PRINTER_EVENT_LAST_USED_PRINTER_CHANGED = 5, + } + + /** + * Enumeration of default printer type. + * @enum { number } DefaultPrinterType + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + enum DefaultPrinterType { + /** + * Default printer set by user. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + DEFAULT_PRINTER_TYPE_SET_BY_USER = 0, + + /** + * The last used printer is used as the default printer. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + DEFAULT_PRINTER_TYPE_LAST_USED_PRINTER = 1, + } + + /** + * Update the information of the specific added printer. + * @permission ohos.permission.MANAGE_PRINT_JOB + * @param { PrinterInformation } printerInformation - Indicates the printer to be updated. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 201 - the application does not have permission to call this function. + * @throws { BusinessError } 202 - not system application + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @syscap SystemCapability.Print.PrintFramework + * @systemapi Hide this for inner system use. + * @since 18 + */ + function updatePrinterInformation(printerInformation: PrinterInformation): Promise<void>; + + /** + * Save the preferences set by the user. + * @permission ohos.permission.MANAGE_PRINT_JOB + * @param { string } printerId - Indicates the printer to be updated. + * @param { PrinterPreferences } printerPreferences - Indicates the printer preferences set by the user. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 201 - the application does not have permission to call this function. + * @throws { BusinessError } 202 - not system application + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @syscap SystemCapability.Print.PrintFramework + * @systemapi Hide this for inner system use. + * @since 18 + */ + function setPrinterPreferences(printerId: string, printerPreferences: PrinterPreferences): Promise<void>; + + /** + * Discover all usb printers. + * @permission ohos.permission.MANAGE_PRINT_JOB + * @returns { Promise<Array<PrinterInformation>> } the promise returned by the function. + * @throws { BusinessError } 201 - the application does not have permission to call this function. + * @throws { BusinessError } 202 - not system application + * @syscap SystemCapability.Print.PrintFramework + * @systemapi Hide this for inner system use. + * @since 18 + */ + function discoverUsbPrinters(): Promise<Array<PrinterInformation>>; + + /** + * Save the default printer set by the user. + * @permission ohos.permission.MANAGE_PRINT_JOB + * @param { string } printerId - Indicates the printer to be set as the default printer. + * @param { DefaultPrinterType } type - Indicates the default printer type. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 201 - the application does not have permission to call this function. + * @throws { BusinessError } 202 - not system application + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @syscap SystemCapability.Print.PrintFramework + * @systemapi Hide this for inner system use. + * @since 18 + */ + function setDefaultPrinter(printerId: string, type: DefaultPrinterType): Promise<void>; + + /** + * Notify print service of application event. + * @permission ohos.permission.MANAGE_PRINT_JOB + * @param { ApplicationEvent } event - Indicates the event to be notified. + * @param { string } jobId - Indicates the job id. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 201 - the application does not have permission to call this function. + * @throws { BusinessError } 202 - not system application + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @syscap SystemCapability.Print.PrintFramework + * @systemapi Hide this for inner system use. + * @since 18 + */ + function notifyPrintServiceEvent(event: ApplicationEvent, jobId: string): Promise<void>; + + /** + * Defines the callback type used in registering to listen for PrinterEvent. + * The value of event indicates the information of PrinterEvent. + * The value of printerInformation indicates the latest printer information. + * + * @typedef { function } PrinterChangeCallback + * @param { PrinterEvent } event - the information of PrinterEvent + * @param { PrinterInformation } printerInformation - the information of the latest printer + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + type PrinterChangeCallback = (event: PrinterEvent, printerInformation: PrinterInformation) => void; + + /** + * Register event callback for the change of printer. + * @permission ohos.permission.PRINT + * @param { 'printerChange' } type - Indicates change of printer. + * @param { PrinterChangeCallback } callback - The callback function for change of printer. + * @throws { BusinessError } 201 - the application does not have permission to call this function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + function on(type: 'printerChange', callback: PrinterChangeCallback): void; + + /** + * Unregister event callback for the change of printer. + * @permission ohos.permission.PRINT + * @param { 'printerChange' } type - Indicates change of printer. + * @param { PrinterChangeCallback } [callback] - The callback function for change of printer. + * @throws { BusinessError } 201 - the application does not have permission to call this function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @syscap SystemCapability.Print.PrintFramework + * @since 18 + */ + function off(type: 'printerChange', callback?: PrinterChangeCallback): void; } export default print; \ No newline at end of file diff --git a/api/@ohos.privacyManager.d.ets b/api/@ohos.privacyManager.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..5ab60089ee818affa1955c7c057d5bb7668c38f1 --- /dev/null +++ b/api/@ohos.privacyManager.d.ets @@ -0,0 +1,651 @@ +/* + * Copyright (c) 2021-2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit AbilityKit + */ +import { AsyncCallback, Callback } from './@ohos.base'; +import { Permissions } from './permissions'; +/** + * @namespace privacyManager + * @syscap SystemCapability.Security.AccessToken + * @since 20 + */ +declare namespace privacyManager { + /** + * Adds an access record of a sensitive permission. + * + * @permission ohos.permission.PERMISSION_USED_STATS + * @param { int } tokenID - Token ID of the application. + * @param { Permissions } permissionName - Name of the permission accessed. + * @param { int } successCount - Number of successful accesses to the permission. + * @param { int } failCount - Number of failed accesses to the permission. + * @param { AddPermissionUsedRecordOptions } options - Options to be added. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". + * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, the count value is invalid, + * or usedType in AddPermissionUsedRecordOptions is invalid. + * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100007 - The service is abnormal. + * @throws { BusinessError } 12100008 - Out of memory. + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + function addPermissionUsedRecord(tokenID: int, permissionName: Permissions, successCount: int, failCount: int, options?: AddPermissionUsedRecordOptions): Promise<void>; + /** + * Adds access record of sensitive permission. + * + * @permission ohos.permission.PERMISSION_USED_STATS + * @param { int } tokenID - Token ID of the application. + * @param { Permissions } permissionName - Name of the permission to be added. + * @param { int } successCount - Access count. + * @param { int } failCount - Reject count. + * @param { AsyncCallback<void> } callback - Asynchronous callback interface. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". + * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the count value is invalid. + * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100007 - The service is abnormal. + * @throws { BusinessError } 12100008 - Out of memory. + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + function addPermissionUsedRecord(tokenID: int, permissionName: Permissions, successCount: int, failCount: int, callback: AsyncCallback<void>): void; + /** + * Subscribes to the change of active state of the specified permission. + * + * @permission ohos.permission.PERMISSION_USED_STATS + * @param { 'activeStateChange' } type - Event type. This parameter cannot change. + * @param { Array<Permissions> } permissionList - Indicates the permission list, which are specified. This parameter cannot be null or empty. + * @param { Callback<ActiveChangeResponse> } callback Callback for listening permission change. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". + * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, or the permissionName exceeds 256 characters. + * @throws { BusinessError } 12100004 - The API is used repeatedly with the same input. + * @throws { BusinessError } 12100005 - The registration time has exceeded the limitation. + * @throws { BusinessError } 12100007 - The service is abnormal. + * @throws { BusinessError } 12100008 - Out of memory. + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + function on(type: 'activeStateChange', permissionList: Array<Permissions>, callback: Callback<ActiveChangeResponse>): void; + /** + * Unsubscribes to the change of active state of the specified permission. + * + * @permission ohos.permission.PERMISSION_USED_STATS + * @param { 'activeStateChange' } type - Event type. This parameter cannot change. + * @param { Array<Permissions> } permissionList - Indicates the permission list, which are specified. This parameter cannot be null or empty. + * @param { Callback<ActiveChangeResponse> } callback - Callback for listening permission change. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. + * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". + * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. + * @throws { BusinessError } 12100001 - Invalid parameter. The permissionNames in the list are all invalid, or the list size exceeds 1024 bytes. + * @throws { BusinessError } 12100004 - The API is not used in pair with 'on'. + * @throws { BusinessError } 12100007 - The service is abnormal. + * @throws { BusinessError } 12100008 - Out of memory. + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + function off(type: 'activeStateChange', permissionList: Array<Permissions>, callback?: Callback<ActiveChangeResponse>): void; + /** + * Enum for permission for status. + * + * @enum { int } PermissionActiveStatus + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + enum PermissionActiveStatus { + /** + * permission is not used yet. + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + PERM_INACTIVE = 0, + /** + * permission is used in front_end. + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + PERM_ACTIVE_IN_FOREGROUND = 1, + /** + * permission is used in back_end. + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + PERM_ACTIVE_IN_BACKGROUND = 2 + } + /** + * Indicates the response of permission active status. + * + * @interface ActiveChangeResponse + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + interface ActiveChangeResponse { + /** + * AccessTokenID which called the interface + * + * @type { ?int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + callingTokenId?: int; + /** + * AccessTokenID + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + tokenId: int; + /** + * The permission name + * + * @type { Permissions } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + permissionName: Permissions; + /** + * The device id + * + * @type { string } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + deviceId: string; + /** + * The active status name + * + * @type { PermissionActiveStatus } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + activeStatus: PermissionActiveStatus; + /** + * Used type of the permission accessed. + * + * @type { ?PermissionUsedType } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + usedType?: PermissionUsedType; + } + /** + * PermissionUsageFlag. + * + * @enum { int } PermissionUsageFlag + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + enum PermissionUsageFlag { + /** + * permission used summary + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + FLAG_PERMISSION_USAGE_SUMMARY = 0, + /** + * permission used detail + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + FLAG_PERMISSION_USAGE_DETAIL = 1 + } + /** + * Provides request of querying permission used records. + * + * @interface PermissionUsedRequest + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + interface PermissionUsedRequest { + /** + * AccessTokenID + * + * @type { ?int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + tokenId?: int; + /** + * Distribute flag + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + isRemote?: boolean; + /** + * The device id + * + * @type { ?string } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + deviceId?: string; + /** + * The bundle name + * + * @type { ?string } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + bundleName?: string; + /** + * The list of permission name + * + * @type { ?Array<Permissions> } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + permissionNames?: Array<Permissions>; + /** + * The begin time, in milliseconds + * + * @type { ?int } + * @default 0 + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + beginTime?: int; + /** + * The end time, in milliseconds + * + * @type { ?int } + * @default 0 + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + endTime?: int; + /** + * The permission usage flag + * + * @type { PermissionUsageFlag } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + flag: PermissionUsageFlag; + } + /** + * Provides response of querying permission used records. + * + * @interface PermissionUsedResponse + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + interface PermissionUsedResponse { + /** + * The begin time, in milliseconds + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + beginTime: int; + /** + * The end time, in milliseconds + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + endTime: int; + /** + * The list of permission used records of bundle + * + * @type { Array<BundleUsedRecord> } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + bundleRecords: Array<BundleUsedRecord>; + } + /** + * BundleUsedRecord. + * + * @interface BundleUsedRecord + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + interface BundleUsedRecord { + /** + * AccessTokenID + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + tokenId: int; + /** + * Distribute flag + * + * @type { boolean } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + isRemote: boolean; + /** + * The device id + * + * @type { string } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + deviceId: string; + /** + * The bundle name + * + * @type { string } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + bundleName: string; + /** + * The list of permission used records + * + * @type { Array<PermissionUsedRecord> } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + permissionRecords: Array<PermissionUsedRecord>; + } + /** + * PermissionUsedRecord. + * + * @interface PermissionUsedRecord + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + interface PermissionUsedRecord { + /** + * The permission name + * + * @type { Permissions } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + permissionName: Permissions; + /** + * The access counts + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + accessCount: int; + /** + * The reject counts + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + rejectCount: int; + /** + * The last access time, in milliseconds + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + lastAccessTime: int; + /** + * The last reject time, in milliseconds + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + lastRejectTime: int; + /** + * The last access duration, in milliseconds + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + lastAccessDuration: int; + /** + * The list of access records of details + * + * @type { Array<UsedRecordDetail> } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + accessRecords: Array<UsedRecordDetail>; + /** + * The list of reject records of details + * + * @type { Array<UsedRecordDetail> } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + rejectRecords: Array<UsedRecordDetail>; + } + /** + * UsedRecordDetail. + * + * @interface UsedRecordDetail + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + interface UsedRecordDetail { + /** + * The status + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + status: int; + /** + * Indicates the status of lockscreen. + * + * @type { ?int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + lockScreenStatus?: int; + /** + * Timestamp, in milliseconds + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + timestamp: int; + /** + * The value of successCount or failCount passed in to addPermissionUsedRecord. + * + * @type { ?int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + count?: int; + /** + * Access duration, in milliseconds + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + accessDuration: int; + /** + * Used type of the permission accessed. + * + * @type { ?PermissionUsedType } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + usedType?: PermissionUsedType; + } + /** + * Enumerates the means by which sensitive resources are accessed. + * + * @enum { int } PermissionUsedType + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + enum PermissionUsedType { + /** + * Sensitive resources are accessed with the declared permission or permission granted by the user. + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + NORMAL_TYPE = 0, + /** + * Sensitive resources are accessed through a picker. + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + PICKER_TYPE = 1, + /** + * Sensitive resources are accessed through a security component. + * + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + SECURITY_COMPONENT_TYPE = 2 + } + /** + * Information about the permission used type. + * + * @interface PermissionUsedTypeInfo + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + interface PermissionUsedTypeInfo { + /** + * Token ID of the application. + * + * @type { int } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + tokenId: int; + /** + * Name of the permission accessed. + * + * @type { Permissions } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + permissionName: Permissions; + /** + * Used type of the permission accessed. + * + * @type { PermissionUsedType } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + usedType: PermissionUsedType; + } + /** + * Additional information to add. + * + * @interface AddPermissionUsedRecordOptions + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + interface AddPermissionUsedRecordOptions { + /** + * Used type of the permission accessed. + * + * @type { ?PermissionUsedType } + * @syscap SystemCapability.Security.AccessToken + * @systemapi + * @since 20 + */ + usedType?: PermissionUsedType; + } +} +export default privacyManager; +export { Permissions }; diff --git a/api/@ohos.privacyManager.d.ts b/api/@ohos.privacyManager.d.ts index fe192c0af42fceb2251aa333ca4fe0102b55842f..22f557c3aaf9b951cf4419460ab5dcac5e4e4ffa 100644 --- a/api/@ohos.privacyManager.d.ts +++ b/api/@ohos.privacyManager.d.ts @@ -41,7 +41,7 @@ declare namespace privacyManager { * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the count value is invalid. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. * @syscap SystemCapability.Security.AccessToken @@ -64,7 +64,7 @@ declare namespace privacyManager { * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, the count value is invalid, * or usedType in AddPermissionUsedRecordOptions is invalid. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. * @syscap SystemCapability.Security.AccessToken @@ -93,7 +93,7 @@ declare namespace privacyManager { * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the count value is invalid. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. * @syscap SystemCapability.Security.AccessToken @@ -117,9 +117,9 @@ declare namespace privacyManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The value of flag in request is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The value of flag, begin, or end in request is invalid. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. * @syscap SystemCapability.Security.AccessToken @@ -137,9 +137,9 @@ declare namespace privacyManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The value of flag in request is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The value of flag, begin, or end in request is invalid. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. * @syscap SystemCapability.Security.AccessToken @@ -161,9 +161,10 @@ declare namespace privacyManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the count value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, + * or the type of the specified tokenID is not of the application type. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100004 - The API is used repeatedly with the same input. * It means the application specified by the tokenID has been using the specified permission. * @throws { BusinessError } 12100007 - The service is abnormal. @@ -186,9 +187,10 @@ declare namespace privacyManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the count value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, + * the type of the specified tokenID is not of the application type, or usedType is invalid. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100004 - The API is used repeatedly with the same input. * It means the application specified by the tokenID has been using the specified permission. * @throws { BusinessError } 12100007 - The service is abnormal. @@ -214,9 +216,10 @@ declare namespace privacyManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the count value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, + * or the type of the specified tokenID is not of the application type. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100004 - The API is used repeatedly with the same input. * It means the application specified by the tokenID has been using the specified permission. * @throws { BusinessError } 12100007 - The service is abnormal. @@ -237,9 +240,10 @@ declare namespace privacyManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the count value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, + * or the type of the specified tokenID is not of the application type. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100004 - The API is not used in pair with 'startUsingPermission'. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. @@ -260,9 +264,10 @@ declare namespace privacyManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the count value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, + * or the type of the specified tokenID is not of the application type. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100004 - The API is not used in pair with 'startUsingPermission'. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. @@ -286,9 +291,10 @@ declare namespace privacyManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, or the count value is invalid. + * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, the permissionName exceeds 256 characters, + * or the type of the specified tokenID is not of the application type. * @throws { BusinessError } 12100002 - The specified tokenID does not exist or refer to an application process. - * @throws { BusinessError } 12100003 - The specified permission does not exist or is not an user_grant permission. + * @throws { BusinessError } 12100003 - The specified permission does not exist or is not a user_grant permission. * @throws { BusinessError } 12100004 - The API is not used in pair with 'startUsingPermission'. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. @@ -308,9 +314,9 @@ declare namespace privacyManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The tokenID is 0, or the permissionName exceeds 256 characters. + * @throws { BusinessError } 12100001 - Invalid parameter. The permissionList exceeds the size limit, or the permissionNames in the list are all invalid. * @throws { BusinessError } 12100004 - The API is used repeatedly with the same input. - * @throws { BusinessError } 12100005 - The registration time has exceeded the limitation. + * @throws { BusinessError } 12100005 - The registration time has exceeded the limit. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. * @syscap SystemCapability.Security.AccessToken @@ -333,7 +339,7 @@ declare namespace privacyManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 202 - Not system app. Interface caller is not a system app. - * @throws { BusinessError } 12100001 - Invalid parameter. The permissionNames in the list are all invalid, or the list size exceeds 1024 bytes. + * @throws { BusinessError } 12100001 - Invalid parameter. The permissionList is not in the listening list. * @throws { BusinessError } 12100004 - The API is not used in pair with 'on'. * @throws { BusinessError } 12100007 - The service is abnormal. * @throws { BusinessError } 12100008 - Out of memory. diff --git a/api/@ohos.process.d.ts b/api/@ohos.process.d.ts index a456ea9fba85042e452e1d5885a5297a21570273..24eb260adab3ce0a11658c037b72ce2ec3e55e49 100644 --- a/api/@ohos.process.d.ts +++ b/api/@ohos.process.d.ts @@ -211,9 +211,9 @@ declare namespace process { * @since 10 */ /** - * Returns a boolean whether the specified uid belongs to a particular application. + * Checks whether a UID belongs to this application. * - * @param { number } v - An id. + * @param { number } v - UID. which can be obtained by running process.uid. * @returns { boolean } Return a boolean whether the specified uid belongs to a particular application. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -249,9 +249,9 @@ declare namespace process { * @since 10 */ /** - * Returns the uid based on the specified user name. + * Obtains the UID of a user from the user database of the system based on the specified user name. * - * @param { string } v - Process name. + * @param { string } v - User name. * @returns { number } Return the uid based on the specified user name. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -287,9 +287,9 @@ declare namespace process { * @since 10 */ /** - * Returns the thread priority based on the specified tid. + * Obtains the thread priority based on the specified TID. * - * @param { number } v - The tid of the process. + * @param { number } v - TID. * @returns { number } Return the thread priority based on the specified tid. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -325,9 +325,9 @@ declare namespace process { * @since 10 */ /** - * Returns the system configuration at runtime. + * Obtains the system configuration. * - * @param { number } name - Parameters defined by the system configuration. + * @param { number } name - System configuration parameter name. * @returns { number } Return the system configuration at runtime. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -363,9 +363,9 @@ declare namespace process { * @since 10 */ /** - * Returns the system value for environment variables. + * Obtains the value of an environment variable. * - * @param { string } name - Parameters defined by the system environment variables. + * @param { string } name - Environment variable name. * @returns { string } Return the system value for environment variables. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -399,9 +399,9 @@ declare namespace process { * @since 10 */ /** - * Process exit + * Terminates this process. * - * @param { number } code - Process exit code. + * @param { number } code - Exit code of the process. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. @@ -438,10 +438,10 @@ declare namespace process { * @since 10 */ /** - * Return whether the signal was sent successfully + * Sends a signal to the specified process to terminate it. * - * @param { number } signal - Signal sent. - * @param { number } pid - Send signal to target pid. + * @param { number } signal - Signal to send. + * @param { number } pid - PID of the process, to which the signal will be sent. * @returns { boolean } Return the result of the signal. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -581,7 +581,7 @@ declare namespace process { * @since 8 */ /** - * Returns a boolean whether the process is isolated. + * Checks whether this process is isolated. * * @returns { boolean } Return boolean whether the process is isolated. * @syscap SystemCapability.Utils.Lang @@ -618,7 +618,7 @@ declare namespace process { * @since 10 */ /** - * Returns a boolean whether the process is running in a 64-bit environment. + * Checks whether this process is running in a 64-bit environment. * * @returns { boolean } Return a boolean whether the process is running in a 64-bit environment. * @syscap SystemCapability.Utils.Lang @@ -668,7 +668,7 @@ declare namespace process { * @since 10 */ /** - * Returns the elapsed real time (in milliseconds) taken from the start of the system to the start of the process. + * Obtains the duration, in milliseconds, from the time the system starts to the time the process starts. * * @returns { number } Return the start of the system to the start of the process. * @syscap SystemCapability.Utils.Lang @@ -694,7 +694,7 @@ declare namespace process { * @since 10 */ /** - * Returns the cpu time (in milliseconds) from the time when the process starts to the current time. + * Obtains the CPU time (in milliseconds) from the time the process starts to the current time. * * @returns { number } Return the cpu time (in milliseconds) from the time when the process starts to the current time. * @syscap SystemCapability.Utils.Lang @@ -837,7 +837,8 @@ declare namespace process { * @since 10 */ /** - * Abort current process + * Aborts a process and generates a core file. This method will cause a process to exit immediately. Exercise caution + * when using this method. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -919,7 +920,7 @@ declare namespace process { * @since 10 */ /** - * Returns the running time of the system + * Obtains the running time of this process. * * @returns { number } Return the running time of the system. * @syscap SystemCapability.Utils.Lang diff --git a/api/@ohos.prompt.d.ets b/api/@ohos.prompt.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..6aa7d47b9ad0ae1cc588523569e4ddc2f5a44907 --- /dev/null +++ b/api/@ohos.prompt.d.ets @@ -0,0 +1,259 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + + +import { AsyncCallback } from './@ohos.base'; + +/** + * @namespace prompt + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + * @useinstead ohos.promptAction + */ + declare namespace prompt { + + /** + * @interface ShowToastOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + interface ShowToastOptions { + + /** + * Text to display. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + message: string; + + /** + * Duration of toast dialog box. The default value is 1500. + * The recommended value ranges from 1500 ms to 10000ms. + * NOTE: A value less than 1500 is automatically changed to 1500. The maximum value is 10000 ms. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + duration?: number; + + /** + * The distance between toast dialog box and the bottom of screen. + * + * @type { ?(string | number) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + bottom?: string | number; + } + + /** + * @interface Button + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + interface Button { + + /** + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + text: string; + + /** + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + color: string; + } + + /** + * @interface ShowDialogSuccessResponse + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + interface ShowDialogSuccessResponse { + + /** + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + index: number; + } + + /** + * @interface ShowDialogOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + interface ShowDialogOptions { + + /** + * Title of the text to display. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + title?: string; + + /** + * Text body. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + message?: string; + + /** + * Array of buttons in the dialog box. + * The array structure is {text:'button', color: '#666666'}. + * One to three buttons are supported. The first button is of the positiveButton type, the second is of the negativeButton type, and the third is of the neutralButton type. + * + * @type { ?[Button, Button | undefined, Button | undefined] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + buttons?: [Button, Button | undefined, Button | undefined]; + } + + /** + * @interface ActionMenuSuccessResponse + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + interface ActionMenuSuccessResponse { + + /** + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + index: number; + } + + /** + * @interface ActionMenuOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + interface ActionMenuOptions { + + /** + * Title of the text to display. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + title?: string; + + /** + * Array of buttons in the dialog box. + * The array structure is {text:'button', color: '#666666'}. + * One to six buttons are supported. + * + * @type { [Button, Button | undefined, Button | undefined, Button | undefined, Button | undefined, Button | undefined] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + buttons: [Button, Button | undefined, Button | undefined, Button | undefined, Button | undefined, Button | undefined]; + } + + /** + * Displays the notification text. + * + * @param { ShowToastOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + function showToast(options: ShowToastOptions): void; + + /** + * Displays the dialog box. + * + * @param { ShowDialogOptions } options - Options. + * @param { AsyncCallback<ShowDialogSuccessResponse> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + function showDialog(options: ShowDialogOptions, callback: AsyncCallback<ShowDialogSuccessResponse>): void; + + /** + * Displays the dialog box. + * + * @param { ShowDialogOptions } options - Options. + * @returns { Promise<ShowDialogSuccessResponse> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + function showDialog(options: ShowDialogOptions): Promise<ShowDialogSuccessResponse>; + + /** + * Displays the menu. + * + * @param { ActionMenuOptions } options - Options. + * @param { AsyncCallback<ActionMenuSuccessResponse> } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + function showActionMenu(options: ActionMenuOptions, callback: AsyncCallback<ActionMenuSuccessResponse>): void; + + /** + * Displays the menu. + * + * @param { ActionMenuOptions } options - Options. + * @returns { Promise<ActionMenuSuccessResponse> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + */ + function showActionMenu(options: ActionMenuOptions): Promise<ActionMenuSuccessResponse>; +} +export default prompt; \ No newline at end of file diff --git a/api/@ohos.promptAction.d.ets b/api/@ohos.promptAction.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..ceed2c49d243f1be77924e04e3bc5351dbe6b8f1 --- /dev/null +++ b/api/@ohos.promptAction.d.ets @@ -0,0 +1,1060 @@ +/* + * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file +* @kit ArkUI +*/ + + +import { ResourceColor, Offset, Dimension, EdgeStyles, EdgeColors } from './arkui/component/units'; +import { AsyncCallback,Callback } from './@ohos.base'; +import { BlurStyle, ShadowOptions, ShadowStyle, HoverModeAreaType, Rectangle, TransitionEffect, KeyboardAvoidMode, CustomBuilder, DismissReason } from './arkui/component/common'; +import { BorderStyle,Alignment } from './arkui/component/enums'; +import { EdgeWidths, BorderRadiuses} from './arkui/component/units' +import { Resource } from './global/resource' + + + +/** + * @namespace promptAction + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +declare namespace promptAction { + + + /** + * @typedef ShowToastOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export interface ShowToastOptions { + + + + /** + * Text to display. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + message: string | Resource; + + + + /** + * Duration of toast dialog box. The default value is 1500. + * The recommended value ranges from 1500ms to 10000ms. + * NOTE: A value less than 1500 is automatically changed to 1500. The maximum value is 10000ms. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + duration?: number; + + + + /** + * The distance between toast dialog box and the bottom of screen. + * + * @type { ?(string | number) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + bottom?: string | number; + + + /** + * Determine the show mode of the toast. + * + * @type { ?ToastShowMode } + * @default ToastShowMode.DEFAULT + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + showMode?: ToastShowMode; + /** + * Defines the toast alignment of the screen. + * + * @type { ?Alignment } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + alignment?: Alignment; + /** + * Defines the toast offset. + * + * @type { ?Offset } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + offset?: Offset; + /** + * Background color of toast. + * + * @type { ?ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundColor?: ResourceColor; + /** + * Text color of toast. + * + * @type { ?ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + textColor?: ResourceColor; + /** + * Background blur Style of toast. + * + * @type { ?BlurStyle } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundBlurStyle?: BlurStyle; + /** + * Shadow of toast. + * + * @type { ?(ShadowOptions | ShadowStyle) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + shadow?: ShadowOptions | ShadowStyle; + + /** + * Define whether to respond to the hover mode. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + enableHoverMode?: boolean; + + /** + * Defines the toast's diaplay area in hover mode. + * + * @type { ?HoverModeAreaType } + * @default HoverModeAreaType.BOTTOM_SCREEN + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + hoverModeArea?: HoverModeAreaType; + } + + + /** + * Enum for the toast showMode. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export enum ToastShowMode { + + /** + * Toast shows in app. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + DEFAULT = 0, + + + /** + * Toast shows at the top. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + TOP_MOST = 1, + + /** + * Toast shows in SYSTEM_TOAST window. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + SYSTEM_TOP_MOST = 2 + } + + + + /** + * @typedef Button + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export interface Button { + + + + /** + * The text displayed in the button. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + text: string | Resource; + + + + /** + * The foreground color of button. + * + * @type { string | Resource } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + color: string | Resource; + /** + * Define whether the button responds to Enter/Space key by default. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + primary?: boolean; + } + + + + /** + * @typedef ShowDialogSuccessResponse + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export interface ShowDialogSuccessResponse { + + + + /** + * Index of the selected button, starting from 0. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + index: number; + } + + + + /** + * @typedef ShowDialogOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export interface ShowDialogOptions { + + + + /** + * Title of the text to display. + * + * @type { ?(string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + title?: string | Resource; + + + + /** + * Text body. + * + * @type { ?(string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + message?: string | Resource; + + + + /** + * Array of buttons in the dialog box. + * The array structure is {text:'button', color: '#666666'}. + * More than one buttons are supported. + * + * @type { ?Array<Button> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + buttons?: Array<Button>; + + + /** + * Mask Region of dialog. The size can't exceed the main window. + * + * @type { ?Rectangle } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + maskRect?: Rectangle; + + /** + * Defines the dialog offset. + * + * @type { ?Offset } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + offset?: Offset; + + + /** + * Whether to display in the sub window. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + showInSubWindow?: boolean; + + + /** + * Whether it is a modal dialog + * @type { ?boolean } + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + isModal?: boolean; + + /** + * Defines the dialog's background color. + * + * @type { ?ResourceColor } + * @default Color.Transparent + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundColor?: ResourceColor; + + /** + * Defines the dialog's background blur Style + * + * @type { ?BlurStyle } + * @default BlurStyle.COMPONENT_ULTRA_THICK + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundBlurStyle?: BlurStyle; + + /** + * Defines the dialog's shadow. + * + * @type { ?(ShadowOptions | ShadowStyle) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + shadow?: ShadowOptions | ShadowStyle; + + /** + * Defines whether to respond to the hover mode. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + enableHoverMode?: boolean; + + /** + * Defines the dialog's display area in hover mode. + * + * @type { ?HoverModeAreaType } + * @default HoverModeAreaType.BOTTOM_SCREEN + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + hoverModeArea?: HoverModeAreaType; + } + + + /** + * Dialog base options + * + * @typedef BaseDialogOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface BaseDialogOptions { + + /** + * Mask Region of dialog. The size can't exceed the main window. + * + * @type { ?Rectangle } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + maskRect?: Rectangle; + + + + + /** + * Defines the dialog offset. + * + * @type { ?Offset } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + offset?: Offset; + + + /** + * Whether to display in the sub window. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + showInSubWindow?: boolean; + + + /** + * Whether it is a modal dialog + * @type { ?boolean } + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + isModal?: boolean; + + /** + * Allows users to click the mask layer to exit. + * + * @type { ?boolean } + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + autoCancel?: boolean; + + /** + * Transition parameters of opening/closing custom dialog. + * + * @type { ?TransitionEffect } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + transition?: TransitionEffect; + + /** + * Defines custom dialog maskColor + * + * @type { ?ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + maskColor?: ResourceColor; + + /** + * Callback function when the CustomDialog interactive dismiss. + * + * @type { ?Callback<DismissDialogAction> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onWillDismiss?: Callback<DismissDialogAction>; + + /** + * Callback function when the dialog appears. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onDidAppear?: () => void; + + /** + * Callback function when the dialog disappears. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onDidDisappear?: () => void; + + /** + * Callback function before the dialog openAnimation starts. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onWillAppear?: () => void; + + /** + * Callback function before the dialog closeAnimation starts. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onWillDisappear?: () => void; + + /** + * Defines the customDialog's keyboard avoid mode + * + * @type { ?KeyboardAvoidMode } + * @default KeyboardAvoidMode.DEFAULT + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + keyboardAvoidMode?: KeyboardAvoidMode; + + /** + * Defines whether to respond to the hover mode. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + enableHoverMode?: boolean; + + /** + * Defines the customDialog's display area in hover mode. + * + * @type { ?HoverModeAreaType } + * @default HoverModeAreaType.BOTTOM_SCREEN + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + hoverModeArea?: HoverModeAreaType; + } + + + /** + * Dialog's custom content options + * + * @interface CustomDialogOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface CustomDialogOptions extends BaseDialogOptions { + + /** + * Allow developer custom dialog's content. + * + * @type { CustomBuilder } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + builder: CustomBuilder; + + /** + * Defines the custom dialog's background color. + * + * @type { ?ResourceColor } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundColor?: ResourceColor; + + /** + * Defines the custom dialog's corner radius. + * + * @type { ?(Dimension | BorderRadiuses) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + cornerRadius?: Dimension | BorderRadiuses; + + /** + * Defines the custom dialog's width. + * + * @type { ?Dimension } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + width?: Dimension; + + /** + * Defines the custom dialog's height. + * + * @type { ?Dimension } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + height?: Dimension; + + /** + * Defines the custom dialog's border width. + * + * @type { ?(Dimension | EdgeWidths) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + borderWidth?: Dimension | EdgeWidths; + + /** + * Defines the custom dialog's border color. + * + * @type { ?(ResourceColor | EdgeColors) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + borderColor?: ResourceColor | EdgeColors; + + /** + * Defines the custom dialog's border style. + * + * @type { ?(BorderStyle | EdgeStyles) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + borderStyle?: BorderStyle | EdgeStyles; + + /** + * Defines the custom dialog's shadow. + * + * @type { ?(ShadowOptions | ShadowStyle) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + shadow?: ShadowOptions | ShadowStyle; + + /** + * Defines the customDialog's background blur Style + * + * @type { ?BlurStyle } + * @default BlurStyle.COMPONENT_ULTRA_THICK + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + backgroundBlurStyle?: BlurStyle; + } + + + + /** + * @typedef ActionMenuSuccessResponse + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export interface ActionMenuSuccessResponse { + + + /** + * Index of the selected button, starting from 0. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + index: number; + } + + + + /** + * @typedef ActionMenuOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export interface ActionMenuOptions { + + + /** + * Title of the text to display. + * + * @type { ?(string | Resource) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + title?: string | Resource; + + + + /** + * Array of buttons in the dialog box. + * The array structure is {text:'button', color: '#666666'}. + * One to six buttons are supported. + * + * @type { [Button, Button | undefined, Button | undefined, Button | undefined, Button | undefined, Button | undefined] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + buttons: [Button, Button | undefined, Button | undefined, Button | undefined, Button | undefined, Button | undefined]; + + + /** + * Whether to display in the sub window. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + showInSubWindow?: boolean; + + + /** + * Whether it is a modal dialog + * @type { ?boolean } + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + isModal?: boolean; + } + + + + /** + * Displays the notification text. + * + * @param { ShowToastOptions } options - Options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function showToast(options: ShowToastOptions): void; + + /** + * Displays the notification text. + * + * @param { ShowToastOptions } options - Options. + * @returns { Promise<number> } return the toast id that will be used by closeToast. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 16 + */ + export function openToast(options: ShowToastOptions): Promise<number>; + + /** + * Close the notification text. + * + * @param { number } toastId - the toast id that returned by openToast. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 16 + */ + export function closeToast(toastId: number): void; + + + + /** + * Displays the dialog box. + * + * @param { ShowDialogOptions } options - Options. + * @param { AsyncCallback<ShowDialogSuccessResponse> } callback - the callback of showDialog. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function showDialog(options: ShowDialogOptions, callback: AsyncCallback<ShowDialogSuccessResponse>): void; + + + + /** + * Displays the dialog box. + * + * @param { ShowDialogOptions } options - Options. + * @returns { Promise<ShowDialogSuccessResponse> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function showDialog(options: ShowDialogOptions): Promise<ShowDialogSuccessResponse>; + + + /** + * Open the custom dialog. + * + * @param { CustomDialogOptions } options - Options. + * @returns { Promise<number> } return the dialog id that will be used by closeCustomDialog. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function openCustomDialog(options: CustomDialogOptions): Promise<number>; + + + /** + * Close the custom dialog. + * + * @param { number } dialogId - the dialog id that returned by openCustomDialog. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function closeCustomDialog(dialogId: number): void; + + + + /** + * Displays the menu. + * + * @param { ActionMenuOptions } options - Options. + * @param { AsyncCallback<ActionMenuSuccessResponse> } callback - the callback of showActionMenu. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function showActionMenu(options: ActionMenuOptions, callback: AsyncCallback<ActionMenuSuccessResponse>): void; + + + + /** + * Displays the dialog box. + * + * @param { ActionMenuOptions } options - Options. + * @returns { Promise<ActionMenuSuccessResponse> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function showActionMenu(options: ActionMenuOptions): Promise<ActionMenuSuccessResponse>; +} + +/** + * Component dialog dismiss action. + * + * @interface DismissDialogAction + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface DismissDialogAction { + /** + * Defines dialog dismiss function. + * + * @type { Callback<void> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + dismiss: Callback<void>; + + /** + * Dismiss reason type. + * + * @type { DismissReason } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + reason: DismissReason; +} +export default promptAction; \ No newline at end of file diff --git a/api/@ohos.promptAction.d.ts b/api/@ohos.promptAction.d.ts index a07be30d8f91644099104719bba320177dc30eca..a8cb2fa5a4d7b7d591ff8bee03ec7011782f7ecd 100644 --- a/api/@ohos.promptAction.d.ts +++ b/api/@ohos.promptAction.d.ts @@ -104,7 +104,7 @@ export class LevelOrder { * @atomicservice * @since 18 */ - static clamp(order: number): LevelOrder + static clamp(order: number): LevelOrder; /** * Get the order from LevelOrder object. @@ -115,7 +115,7 @@ export class LevelOrder { * @atomicservice * @since 18 */ - getOrder(): number + getOrder(): number; } /** @@ -768,7 +768,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; @@ -779,7 +779,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; @@ -825,7 +825,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onDidAppear?: Callback<void>; @@ -836,7 +836,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onDidDisappear?: Callback<void>; @@ -847,7 +847,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onWillAppear?: Callback<void>; @@ -858,7 +858,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onWillDisappear?: Callback<void>; @@ -910,6 +910,77 @@ declare namespace promptAction { levelOrder?: LevelOrder; } + /** + * Enum for state. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + enum CommonState { + /** + * Indicates it is uninitialized. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + UNINITIALIZED = 0, + + /** + * Indicates it is initialized. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + INITIALIZED = 1, + + /** + * Indicates it is appearig. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + APPEARING = 2, + + /** + * Indicates it is appeared. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + APPEARED = 3, + + /** + * Indicates it is disappearing. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + DISAPPEARING = 4, + + /** + * Indicates it is disappeared. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + DISAPPEARED = 5, + } + /** * The class used to control common dialog. * @@ -938,6 +1009,17 @@ declare namespace promptAction { * @since 18 */ close(): void; + + /** + * Get the state. + * + * @returns { CommonState } return the state. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + getState(): CommonState; } /** @@ -1096,7 +1178,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ dialogTransition?: TransitionEffect; @@ -1107,7 +1189,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ maskTransition?: TransitionEffect; @@ -1202,7 +1284,7 @@ declare namespace promptAction { enableHoverMode?: boolean; /** - * Defines the customDialog's display area in hover mode. + * Defines the dialog's display area in hover mode. * * @type { ?HoverModeAreaType } * @default HoverModeAreaType.BOTTOM_SCREEN @@ -1220,7 +1302,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundBlurStyleOptions?: BackgroundBlurStyleOptions; @@ -1231,7 +1313,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ backgroundEffect?: BackgroundEffectOptions; @@ -1301,7 +1383,7 @@ declare namespace promptAction { * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ focusable?: boolean; } @@ -1810,6 +1892,50 @@ declare namespace promptAction { * @since 15 */ immersiveMode?: ImmersiveMode; + + /** + * Callback function when the menu appears. + * + * @type { ?Callback<void> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onDidAppear?: Callback<void>; + + /** + * Callback function when the menu disappears. + * + * @type { ?Callback<void> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onDidDisappear?: Callback<void>; + + /** + * Callback function before the menu openAnimation starts. + * + * @type { ?Callback<void> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onWillAppear?: Callback<void>; + + /** + * Callback function before the menu closeAnimation starts. + * + * @type { ?Callback<void> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onWillDisappear?: Callback<void>; } /** @@ -1881,6 +2007,7 @@ declare namespace promptAction { * <br> 2. Incorrect parameters types. * <br> 3. Parameter verification failed. * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 103401 - Cannot find the toast. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice diff --git a/api/@ohos.reminderAgentManager.d.ts b/api/@ohos.reminderAgentManager.d.ts index 411eea1a8c64fca66b4e0c2edda1404c60c32f86..9573ba823788adcda68e8a7e63ef985999f10562 100644 --- a/api/@ohos.reminderAgentManager.d.ts +++ b/api/@ohos.reminderAgentManager.d.ts @@ -222,6 +222,21 @@ declare namespace reminderAgentManager { */ function getAllValidReminders(): Promise<Array<ReminderInfo>>; + /** + * Updates a reminder. + * + * @permission ohos.permission.PUBLISH_AGENT_REMINDER + * @param { reminderId } number - Indicates the reminder id. + * @param { ReminderRequest } reminderReq - Indicates the reminder. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 1700003 - The reminder does not exist. + * @throws { BusinessError } 1700007 - If the input parameter is not valid parameter. + * @syscap SystemCapability.Notification.ReminderAgent + * @since 20 + */ + function updateReminder(reminderId: number, reminderReq: ReminderRequest): Promise<void>; + /** * Declares action button type. * @@ -461,6 +476,32 @@ declare namespace reminderAgentManager { abilityName: string; } + /** + * Declares ring channel. + * + * @enum { number } + * + * @syscap SystemCapability.Notification.ReminderAgent + * @since 20 + */ + export enum RingChannel { + /** + * Ring channel alarm. + * + * @syscap SystemCapability.Notification.ReminderAgent + * @since 20 + */ + RING_CHANNEL_ALARM = 0, + + /** + * Ring channel alarm. + * + * @syscap SystemCapability.Notification.ReminderAgent + * @since 20 + */ + RING_CHANNEL_MEDIA = 1, + } + /** * Reminder Common information. * @@ -523,6 +564,15 @@ declare namespace reminderAgentManager { */ ringDuration?: number; + /** + * Type of the ring channel. + * + * @type { ?RingChannel } + * @syscap SystemCapability.Notification.ReminderAgent + * @since 20 + */ + ringChannel?: RingChannel; + /** * Number of reminder snooze times. * diff --git a/api/@ohos.request.d.ts b/api/@ohos.request.d.ts index 765fb4a1efd14d35e050b1d8625ac883640f7b2c..082e31d35afa05f0dae9ad9f30a7f0564baba2a0 100644 --- a/api/@ohos.request.d.ts +++ b/api/@ohos.request.d.ts @@ -23,13 +23,13 @@ import { Callback } from './@ohos.base'; import BaseContext from './application/BaseContext'; /** - * upload and download + * Upload and download * * @namespace request * @since 6 */ /** - * upload and download + * Upload and download * * @namespace request * @syscap SystemCapability.Request.FileTransferAgent @@ -37,23 +37,24 @@ import BaseContext from './application/BaseContext'; * @since 10 */ /** - * upload and download + * Upload and download * * @namespace request * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace request { /** - * Error code 201 - the permissions check fails. + * Error code 201 - The permissions check fails. * * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Error code 201 - the permissions check fails. + * Error code 201 - The permissions check fails. * * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -61,13 +62,13 @@ declare namespace request { */ const EXCEPTION_PERMISSION: number; /** - * Error code 401 - the parameters check fails. + * Error code 401 - The parameters check fails. * * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Error code 401 - the parameters check fails. + * Error code 401 - The parameters check fails. * * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -75,13 +76,13 @@ declare namespace request { */ const EXCEPTION_PARAMCHECK: number; /** - * Error code 801 - call unsupported api. + * Error code 801 - Call unsupported api. * * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Error code 801 - call unsupported api. + * Error code 801 - Call unsupported api. * * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -89,13 +90,13 @@ declare namespace request { */ const EXCEPTION_UNSUPPORTED: number; /** - * Error code 13400001 - file operation error. + * Error code 13400001 - Invalid file or file system error. * * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Error code 13400001 - file operation error. + * Error code 13400001 - Invalid file or file system error. * * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -103,13 +104,13 @@ declare namespace request { */ const EXCEPTION_FILEIO: number; /** - * Error code 13400002 - bad file path. + * Error code 13400002 - File path not supported or invalid. * * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Error code 13400002 - bad file path. + * Error code 13400002 - File path not supported or invalid. * * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -117,13 +118,13 @@ declare namespace request { */ const EXCEPTION_FILEPATH: number; /** - * Error code 13400003 - task service ability error. + * Error code 13400003 - Task service ability error. * * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Error code 13400003 - task service ability error. + * Error code 13400003 - Task service ability error. * * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -131,13 +132,13 @@ declare namespace request { */ const EXCEPTION_SERVICE: number; /** - * Error code 13499999 - others error. + * Error code 13499999 - Others error. * * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Error code 13499999 - others error. + * Error code 13499999 - Others error. * * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -498,7 +499,7 @@ declare namespace request { * @permission ohos.permission.INTERNET * @param { DownloadConfig } config Download config * @param { AsyncCallback<DownloadTask> } callback Indicate the callback function to receive DownloadTask. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @FAModelOnly * @since 6 @@ -514,11 +515,11 @@ declare namespace request { * @param { BaseContext } context Indicates the application BaseContext. * @param { DownloadConfig } config Download config * @param { AsyncCallback<DownloadTask> } callback Indicate the callback function to receive DownloadTask. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400001 - file operation error - * @throws { BusinessError } 13400002 - bad file path + * @throws { BusinessError } 13400001 - Invalid file or file system error. + * @throws { BusinessError } 13400002 - File path not supported or invalid. * @throws { BusinessError } 13400003 - task service ability error * @syscap SystemCapability.MiscServices.Download * @since 9 @@ -530,12 +531,12 @@ declare namespace request { * @param { BaseContext } context Indicates the application BaseContext. * @param { DownloadConfig } config Download config * @param { AsyncCallback<DownloadTask> } callback Indicate the callback function to receive DownloadTask. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400001 - file operation error - * @throws { BusinessError } 13400002 - bad file path - * @throws { BusinessError } 13400003 - task service ability error + * @throws { BusinessError } 13400001 - Invalid file or file system error. + * @throws { BusinessError } 13400002 - File path not supported or invalid. + * @throws { BusinessError } 13400003 - Task service ability error. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 @@ -548,7 +549,7 @@ declare namespace request { * @permission ohos.permission.INTERNET * @param { DownloadConfig } config Download config * @returns { Promise<DownloadTask> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @FAModelOnly * @since 6 @@ -564,11 +565,11 @@ declare namespace request { * @param { BaseContext } context Indicates the application BaseContext. * @param { DownloadConfig } config Download config * @returns { Promise<DownloadTask> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400001 - file operation error - * @throws { BusinessError } 13400002 - bad file path + * @throws { BusinessError } 13400001 - Invalid file or file system error. + * @throws { BusinessError } 13400002 - File path not supported or invalid. * @throws { BusinessError } 13400003 - task service ability error * @syscap SystemCapability.MiscServices.Download * @since 9 @@ -580,12 +581,12 @@ declare namespace request { * @param { BaseContext } context Indicates the application BaseContext. * @param { DownloadConfig } config Download config * @returns { Promise<DownloadTask> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400001 - file operation error - * @throws { BusinessError } 13400002 - bad file path - * @throws { BusinessError } 13400003 - task service ability error + * @throws { BusinessError } 13400001 - Invalid file or file system error. + * @throws { BusinessError } 13400002 - File path not supported or invalid. + * @throws { BusinessError } 13400003 - Task service ability error. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 @@ -598,7 +599,7 @@ declare namespace request { * @permission ohos.permission.INTERNET * @param { UploadConfig } config Upload config * @param { AsyncCallback<UploadTask> } callback Indicate the callback function to receive UploadTask. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Upload * @FAModelOnly * @since 6 @@ -614,10 +615,10 @@ declare namespace request { * @param { BaseContext } context Indicates the application BaseContext. * @param { UploadConfig } config Upload config * @param { AsyncCallback<UploadTask> } callback Indicate the callback function to receive UploadTask. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400002 - bad file path + * @throws { BusinessError } 13400002 - File path not supported or invalid. * @syscap SystemCapability.MiscServices.Upload * @since 9 */ @@ -628,10 +629,10 @@ declare namespace request { * @param { BaseContext } context Indicates the application BaseContext. * @param { UploadConfig } config Upload config * @param { AsyncCallback<UploadTask> } callback Indicate the callback function to receive UploadTask. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400002 - bad file path + * @throws { BusinessError } 13400002 - File path not supported or invalid. * @syscap SystemCapability.MiscServices.Upload * @crossplatform * @since 10 @@ -644,7 +645,7 @@ declare namespace request { * @permission ohos.permission.INTERNET * @param { UploadConfig } config Upload config * @returns { Promise<UploadTask> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Upload * @FAModelOnly * @since 6 @@ -660,10 +661,10 @@ declare namespace request { * @param { BaseContext } context Indicates the application BaseContext. * @param { UploadConfig } config Upload config * @returns { Promise<UploadTask> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400002 - bad file path + * @throws { BusinessError } 13400002 - File path not supported or invalid. * @syscap SystemCapability.MiscServices.Upload * @since 9 */ @@ -674,10 +675,10 @@ declare namespace request { * @param { BaseContext } context Indicates the application BaseContext. * @param { UploadConfig } config Upload config * @returns { Promise<UploadTask> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400002 - bad file path + * @throws { BusinessError } 13400002 - File path not supported or invalid. * @syscap SystemCapability.MiscServices.Upload * @crossplatform * @since 10 @@ -685,7 +686,8 @@ declare namespace request { function uploadFile(context: BaseContext, config: UploadConfig): Promise<UploadTask>; /** - * DownloadConfig data Structure + * DownloadConfig data structure. + * Defines the download task configuration. * * @interface DownloadConfig * @syscap SystemCapability.MiscServices.Download @@ -693,7 +695,8 @@ declare namespace request { * @name DownloadConfig */ /** - * DownloadConfig data Structure + * DownloadConfig data structure. + * Defines the download task configuration. * * @typedef DownloadConfig * @syscap SystemCapability.MiscServices.Download @@ -804,13 +807,13 @@ declare namespace request { */ networkType?: number; /** - * Sets the path for downloads. + * Sets the path where the downloaded file is stored. * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * Sets the path for downloads. + * Sets the path where the downloaded file is stored. * * @type { ?string } * @syscap SystemCapability.MiscServices.Download @@ -851,7 +854,8 @@ declare namespace request { } /** - * DownloadInfo data Structure + * DownloadInfo data structure. + * Defines the download task information. * * @interface DownloadInfo * @syscap SystemCapability.MiscServices.Download @@ -859,7 +863,8 @@ declare namespace request { * @name DownloadInfo */ /** - * DownloadInfo data Structure + * DownloadInfo data structure. + * Defines the download task information. * * @typedef DownloadInfo * @syscap SystemCapability.MiscServices.Download @@ -868,13 +873,13 @@ declare namespace request { */ interface DownloadInfo { /** - * the description of a file to be downloaded. + * The description of a file to be downloaded. * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * the description of a file to be downloaded. + * The description of a file to be downloaded. * * @type { string } * @syscap SystemCapability.MiscServices.Download @@ -883,13 +888,13 @@ declare namespace request { */ description: string; /** - * the real-time downloads size (in bytes). + * The real-time downloads size (in bytes). * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * the real-time downloads size (in bytes). + * The real-time downloads size (in bytes). * * @type { number } * @syscap SystemCapability.MiscServices.Download @@ -898,13 +903,13 @@ declare namespace request { */ downloadedBytes: number; /** - * the ID of a file to be downloaded. + * The ID of a file to be downloaded. * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * the ID of a file to be downloaded. + * The ID of a file to be downloaded. * * @type { number } * @syscap SystemCapability.MiscServices.Download @@ -913,13 +918,13 @@ declare namespace request { */ downloadId: number; /** - * a download failure cause, which can be any DownloadSession.ERROR_* constant. + * Cause of the download failure, which can be any DownloadSession.ERROR_* constant. * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * a download failure cause, which can be any DownloadSession.ERROR_* constant. + * Cause of the download failure, which can be any DownloadSession.ERROR_* constant. * * @type { number } * @syscap SystemCapability.MiscServices.Download @@ -928,13 +933,13 @@ declare namespace request { */ failedReason: number; /** - * the name of a file to be downloaded. + * The name of a file to be downloaded. * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * the name of a file to be downloaded. + * The name of a file to be downloaded. * * @type { string } * @syscap SystemCapability.MiscServices.Download @@ -943,13 +948,13 @@ declare namespace request { */ fileName: string; /** - * the URI of a stored file. + * The URI of a stored file. * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * the URI of a stored file. + * The URI of a stored file. * * @type { string } * @syscap SystemCapability.MiscServices.Download @@ -958,13 +963,13 @@ declare namespace request { */ filePath: string; /** - * the reason why a session is paused, which can be any DownloadSession.PAUSED_* constant. + * Cause of download pause which can be any DownloadSession.PAUSED_* constant. * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * the reason why a session is paused, which can be any DownloadSession.PAUSED_* constant. + * Cause of download pause, which can be any DownloadSession.PAUSED_* constant. * * @type { number } * @syscap SystemCapability.MiscServices.Download @@ -973,13 +978,13 @@ declare namespace request { */ pausedReason: number; /** - * the download status code, which can be any DownloadSession.SESSION_* constant. + * The download task status code, which can be any DownloadSession.SESSION_* constant. * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * the download status code, which can be any DownloadSession.SESSION_* constant. + * The download task status code, which can be any DownloadSession.SESSION_* constant. * * @type { number } * @syscap SystemCapability.MiscServices.Download @@ -988,13 +993,13 @@ declare namespace request { */ status: number; /** - * the URI of files to be downloaded. + * The URI of files to be downloaded. * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * the URI of files to be downloaded. + * The URI of files to be downloaded. * * @type { string } * @syscap SystemCapability.MiscServices.Download @@ -1003,13 +1008,13 @@ declare namespace request { */ targetURI: string; /** - * the title of a file to be downloaded. + * The title of a file to be downloaded. * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * the title of a file to be downloaded. + * The title of a file to be downloaded. * * @type { string } * @syscap SystemCapability.MiscServices.Download @@ -1018,13 +1023,13 @@ declare namespace request { */ downloadTitle: string; /** - * the total size of files to be downloaded (in bytes). + * The total size of files to be downloaded (in bytes). * * @syscap SystemCapability.MiscServices.Download * @since 7 */ /** - * the total size of files to be downloaded (in bytes). + * The total size of files to be downloaded (in bytes). * * @type { number } * @syscap SystemCapability.MiscServices.Download @@ -1035,14 +1040,16 @@ declare namespace request { } /** - * Download task interface + * Download task interface. + * Implements file downloads. * * @interface DownloadTask * @syscap SystemCapability.MiscServices.Download * @since 6 */ /** - * Download task interface + * Download task interface. + * Implements file downloads. * * @typedef DownloadTask * @syscap SystemCapability.MiscServices.Download @@ -1052,6 +1059,7 @@ declare namespace request { interface DownloadTask { /** * Called when the current download session is in process. + * Subscribes to download progress events. * * @param { 'progress' } type progress Indicates the download task progress. * @param { function } callback @@ -1063,6 +1071,7 @@ declare namespace request { */ /** * Called when the current download session is in process. + * Subscribes to download progress events. * * @param { 'progress' } type progress Indicates the download task progress. * @param { function } callback @@ -1075,13 +1084,14 @@ declare namespace request { */ /** * Called when the current download session is in process. + * Subscribes to download progress events. * * @param { 'progress' } type progress Indicates the download task progress. * @param { function } callback * <br>The callback function for the download progress change event * <br>receivedSize the length of downloaded data, in bytes * <br>totalSize the length of data expected to be downloaded, in bytes. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -1091,6 +1101,7 @@ declare namespace request { /** * Called when the current download session is in process. + * Unsubscribes from download progress events. * * @param { 'progress' } type progress Indicates the download task progress. * @param { function } [callback] @@ -1102,6 +1113,7 @@ declare namespace request { */ /** * Called when the current download session is in process. + * Unsubscribes from download progress events. * * @param { 'progress' } type progress Indicates the download task progress. * @param { function } [callback] @@ -1114,13 +1126,14 @@ declare namespace request { */ /** * Called when the current download session is in process. + * Unsubscribes from download progress events. * * @param { 'progress' } type progress Indicates the download task progress. * @param { function } [callback] * <br>The callback function for the download progress change event * <br>receivedSize the length of downloaded data, in bytes * <br>totalSize the length of data expected to be downloaded, in bytes. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -1130,6 +1143,7 @@ declare namespace request { /** * Called when the current download session complete pause or remove. + * Subscribes to download events. * * @param { 'complete' | 'pause' | 'remove' } type Indicates the download session event type * complete: download task completed, @@ -1141,6 +1155,7 @@ declare namespace request { */ /** * Called when the current download session complete pause or remove. + * Subscribes to download events. * * @param { 'complete' | 'pause' | 'remove' } type Indicates the download session event type * complete: download task completed, @@ -1153,13 +1168,14 @@ declare namespace request { */ /** * Called when the current download session complete pause or remove. + * Subscribes to download events. * * @param { 'complete' | 'pause' | 'remove' } type Indicates the download session event type * <br>complete: download task completed, * <br>pause: download task stopped, * <br>remove: download task deleted. * @param { function } callback The callback function for the download complete pause or remove change event. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -1169,6 +1185,7 @@ declare namespace request { /** * Called when the current download session complete pause or remove. + * Unsubscribes from download events. * * @param { 'complete' | 'pause' | 'remove' } type Indicates the download session event type * complete: download task completed, @@ -1180,6 +1197,7 @@ declare namespace request { */ /** * Called when the current download session complete pause or remove. + * Unsubscribes from download events. * * @param { 'complete' | 'pause' | 'remove' } type Indicates the download session event type * complete: download task completed, @@ -1192,13 +1210,14 @@ declare namespace request { */ /** * Called when the current download session complete pause or remove. + * Unsubscribes from download events. * * @param { 'complete' | 'pause' | 'remove' } type Indicates the download session event type * <br>complete: download task completed, * <br>pause: download task stopped, * <br>remove: download task deleted. * @param { function } [callback] The callback function for the download complete pause or remove change event. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -1208,6 +1227,7 @@ declare namespace request { /** * Called when the current download session fails. + * Subscribes to download failure events. * * @param { 'fail' } type Indicates the download session type, fail: download task has failed. * @param { function } callback The callback function for the download fail change event @@ -1217,6 +1237,7 @@ declare namespace request { */ /** * Called when the current download session fails. + * Subscribes to download failure events. * * @param { 'fail' } type Indicates the download session type, fail: download task has failed. * @param { function } callback The callback function for the download fail change event @@ -1227,11 +1248,12 @@ declare namespace request { */ /** * Called when the current download session fails. + * Subscribes to download failure events. * * @param { 'fail' } type Indicates the download session type, fail: download task has failed. * @param { function } callback The callback function for the download fail change event * <br>err The error code for download task. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -1241,6 +1263,7 @@ declare namespace request { /** * Called when the current download session fails. + * Unsubscribes from download failure events. * * @param { 'fail' } type Indicates the download session type, fail: download task has failed. * @param { function } [callback] Indicate the callback function to receive err. @@ -1250,6 +1273,7 @@ declare namespace request { */ /** * Called when the current download session fails. + * Unsubscribes from download failure events. * * @param { 'fail' } type Indicates the download session type, fail: download task has failed. * @param { function } [callback] Indicate the callback function to receive err. @@ -1260,11 +1284,12 @@ declare namespace request { */ /** * Called when the current download session fails. + * Unsubscribes from download failure events. * * @param { 'fail' } type Indicates the download session type, fail: download task has failed. * @param { function } [callback] Indicate the callback function to receive err. * <br>err The error code for download task. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Download * @crossplatform @@ -1277,7 +1302,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback Indicates asynchronous invoking Result. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @since 6 * @deprecated since 9 @@ -1290,7 +1315,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @since 6 * @deprecated since 9 @@ -1303,7 +1328,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<void> } callback Indicates asynchronous invoking Result. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @since 7 * @deprecated since 9 @@ -1316,7 +1341,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @since 7 * @deprecated since 9 @@ -1329,7 +1354,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<void> } callback Indicates asynchronous invoking Result. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @since 7 * @deprecated since 9 @@ -1342,7 +1367,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @since 7 * @deprecated since 9 @@ -1355,7 +1380,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<DownloadInfo> } callback Indicate the callback function to receive download info. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @since 7 * @deprecated since 9 @@ -1368,7 +1393,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<DownloadInfo> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @since 7 * @deprecated since 9 @@ -1381,7 +1406,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<string> } callback Indicate the callback function to receive download file MIME type. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @since 7 * @deprecated since 9 @@ -1394,7 +1419,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<string> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @since 7 * @deprecated since 9 @@ -1407,8 +1432,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @since 9 */ @@ -1417,8 +1442,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 @@ -1428,7 +1453,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 12 @@ -1440,8 +1465,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @since 9 */ @@ -1450,8 +1475,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 @@ -1461,7 +1486,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 12 @@ -1473,8 +1498,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @since 9 */ @@ -1483,8 +1508,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 @@ -1494,7 +1519,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 12 @@ -1506,8 +1531,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @since 9 */ @@ -1516,8 +1541,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 @@ -1527,7 +1552,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 12 @@ -1539,8 +1564,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @since 9 */ @@ -1549,8 +1574,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 @@ -1560,7 +1585,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 12 @@ -1572,8 +1597,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @since 9 */ @@ -1582,8 +1607,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 @@ -1593,7 +1618,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 12 @@ -1601,32 +1626,35 @@ declare namespace request { restore(): Promise<boolean>; /** - * Get the download task info + * Get the download task info. + * Obtains the information about this download task. * * @permission ohos.permission.INTERNET * @param { AsyncCallback<DownloadInfo> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Get the download task info + * Get the download task info. + * Obtains the information about this download task. * * @permission ohos.permission.INTERNET * @param { AsyncCallback<DownloadInfo> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 */ /** - * Get the download task info + * Get the download task info. + * Obtains the information about this download task. * * @permission ohos.permission.INTERNET * @param { AsyncCallback<DownloadInfo> } callback - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 12 @@ -1634,32 +1662,35 @@ declare namespace request { getTaskInfo(callback: AsyncCallback<DownloadInfo>): void; /** - * Get the download task info + * Get the download task info. + * Obtains the information about this download task. * * @permission ohos.permission.INTERNET * @returns { Promise<DownloadInfo> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Get the download task info + * Get the download task info. + * Obtains the information about this download task. * * @permission ohos.permission.INTERNET * @returns { Promise<DownloadInfo> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 */ /** - * Get the download task info + * Get the download task info. + * Obtains the information about this download task. * * @permission ohos.permission.INTERNET * @returns { Promise<DownloadInfo> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 12 @@ -1667,32 +1698,35 @@ declare namespace request { getTaskInfo(): Promise<DownloadInfo>; /** - * Get mimetype of the download task + * Get mimetype of the download task. + * Obtains the MimeType of this download task. * * @permission ohos.permission.INTERNET * @param { AsyncCallback<string> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Get mimetype of the download task + * Get mimetype of the download task. + * Obtains the MimeType of this download task. * * @permission ohos.permission.INTERNET * @param { AsyncCallback<string> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 */ /** - * Get mimetype of the download task + * Get mimetype of the download task. + * Obtains the MimeType of this download task. * * @permission ohos.permission.INTERNET * @param { AsyncCallback<string> } callback - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 12 @@ -1700,32 +1734,35 @@ declare namespace request { getTaskMimeType(callback: AsyncCallback<string>): void; /** - * Get mimetype of the download task + * Get mimetype of the download task. + * Obtains the MimeType of this download task. * * @permission ohos.permission.INTERNET * @returns { Promise<string> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @since 9 */ /** - * Get mimetype of the download task + * Get mimetype of the download task. + * Obtains the MimeType of this download task. * * @permission ohos.permission.INTERNET * @returns { Promise<string> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 10 */ /** - * Get mimetype of the download task + * Get mimetype of the download task. + * Obtains the MimeType of this download task. * * @permission ohos.permission.INTERNET * @returns { Promise<string> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Download * @crossplatform * @since 12 @@ -1734,7 +1771,8 @@ declare namespace request { } /** - * File data Structure + * File data structure. + * Defines the file list in UploadConfig. * * @interface File * @syscap SystemCapability.MiscServices.Download @@ -1742,7 +1780,8 @@ declare namespace request { * @name File */ /** - * File data Structure + * File data structure. + * Defines the file list in UploadConfig. * * @typedef File * @syscap SystemCapability.MiscServices.Download @@ -1813,7 +1852,8 @@ declare namespace request { } /** - * RequestData data Structure + * RequestData data structure. + * Defines the form data in UploadConfig. * * @interface RequestData * @syscap SystemCapability.MiscServices.Download @@ -1821,7 +1861,8 @@ declare namespace request { * @name RequestData */ /** - * RequestData data Structure + * RequestData data structure. + * Defines the form data in UploadConfig. * * @typedef RequestData * @syscap SystemCapability.MiscServices.Download @@ -1862,7 +1903,8 @@ declare namespace request { } /** - * UploadConfig data Structure + * UploadConfig data structure. + * Describes the configuration of an upload task. * * @interface UploadConfig * @syscap SystemCapability.MiscServices.Upload @@ -1870,7 +1912,8 @@ declare namespace request { * @name UploadConfig */ /** - * UploadConfig data Structure + * UploadConfig data structure. + * Describes the configuration of an upload task. * * @typedef UploadConfig * @syscap SystemCapability.MiscServices.Upload @@ -1982,13 +2025,13 @@ declare namespace request { */ files: Array<File>; /** - * The requested form data. + * The requested form data in the request body. * * @syscap SystemCapability.MiscServices.Upload * @since 6 */ /** - * The requested form data. + * The requested form data in the request body. * * @type { Array<RequestData> } * @syscap SystemCapability.MiscServices.Upload @@ -1999,7 +2042,8 @@ declare namespace request { } /** - * TaskState data Structure + * TaskState data structure. + * Implements a TaskState object. * * @interface TaskState * @syscap SystemCapability.MiscServices.Upload @@ -2007,7 +2051,8 @@ declare namespace request { * @name TaskState */ /** - * TaskState data Structure + * TaskState data structure. + * Implements a TaskState object. * * @typedef TaskState * @syscap SystemCapability.MiscServices.Upload @@ -2031,13 +2076,17 @@ declare namespace request { */ path: string; /** - * Upload task return value. + * Return value of an upload task. + * The value 0 means that the task is successful, + * and other values means that the task fails. * * @syscap SystemCapability.MiscServices.Upload * @since 9 */ /** - * Upload task return value. + * Return value of an upload task. + * The value 0 means that the task is successful, + * and other values means that the task fails. * * @type { number } * @syscap SystemCapability.MiscServices.Upload @@ -2063,14 +2112,16 @@ declare namespace request { } /** - * Upload task interface + * Upload task interface. + * Implements file uploads. * * @interface UploadTask * @syscap SystemCapability.MiscServices.Download * @since 6 */ /** - * Upload task interface + * Upload task interface. + * Implements file uploads. * * @typedef UploadTask * @syscap SystemCapability.MiscServices.Download @@ -2080,6 +2131,7 @@ declare namespace request { interface UploadTask { /** * Called when the current upload session is in process. + * Subscribes to upload progress events. * * @param { 'progress' } type progress Indicates the upload task progress. * @param { function } callback @@ -2091,6 +2143,7 @@ declare namespace request { */ /** * Called when the current upload session is in process. + * Subscribes to upload progress events. * * @param { 'progress' } type progress Indicates the upload task progress. * @param { function } callback @@ -2103,13 +2156,14 @@ declare namespace request { */ /** * Called when the current upload session is in process. + * Subscribes to upload progress events. * * @param { 'progress' } type progress Indicates the upload task progress. * @param { function } callback * <br>The callback function for the upload progress change event * <br>uploadedSize The length of uploaded data, in bytes * <br>totalSize The length of data expected to be uploaded, in bytes. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Upload * @crossplatform @@ -2119,6 +2173,7 @@ declare namespace request { /** * Called when the current upload session is in process. + * Unsubscribes from download progress events. * * @param { 'progress' } type progress Indicates the upload task progress. * @param { function } [callback] @@ -2130,6 +2185,7 @@ declare namespace request { */ /** * Called when the current upload session is in process. + * Unsubscribes from download progress events. * * @param { 'progress' } type progress Indicates the upload task progress. * @param { function } [callback] @@ -2142,13 +2198,14 @@ declare namespace request { */ /** * Called when the current upload session is in process. + * Unsubscribes from download progress events. * * @param { 'progress' } type progress Indicates the upload task progress. * @param { function } [callback] * <br>The callback function for the upload progress change event * <br>uploadedSize The length of uploaded data, in bytes * <br>totalSize The length of data expected to be uploaded, in bytes. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Upload * @crossplatform @@ -2158,6 +2215,7 @@ declare namespace request { /** * Called when the header of the current upload session has been received. + * Subscribes to HTTP response events for the upload task. * * @param { 'headerReceive' } type headerReceive Indicates the upload task headed receive. * @param { function } callback The callback function for the HTTP Response Header event @@ -2167,6 +2225,7 @@ declare namespace request { */ /** * Called when the header of the current upload session has been received. + * Subscribes to HTTP response events for the upload task. * * @param { 'headerReceive' } type headerReceive Indicates the upload task headed receive. * @param { function } callback The callback function for the HTTP Response Header event @@ -2177,11 +2236,12 @@ declare namespace request { */ /** * Called when the header of the current upload session has been received. + * Subscribes to HTTP response events for the upload task. * * @param { 'headerReceive' } type headerReceive Indicates the upload task headed receive. * @param { function } callback The callback function for the HTTP Response Header event * <br>header HTTP Response Header returned by the developer server. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Upload * @crossplatform @@ -2191,6 +2251,7 @@ declare namespace request { /** * Called when the header of the current upload session has been received. + * Unsubscribes from HTTP response events for the upload task. * * @param { 'headerReceive' } type headerReceive Indicates the upload task headed receive. * @param { function } [callback] The callback function for the HTTP Response Header event @@ -2200,6 +2261,7 @@ declare namespace request { */ /** * Called when the header of the current upload session has been received. + * Unsubscribes from HTTP response events for the upload task. * * @param { 'headerReceive' } type headerReceive Indicates the upload task headed receive. * @param { function } [callback] The callback function for the HTTP Response Header event @@ -2210,11 +2272,12 @@ declare namespace request { */ /** * Called when the header of the current upload session has been received. + * Unsubscribes from HTTP response events for the upload task. * * @param { 'headerReceive' } type headerReceive Indicates the upload task headed receive. * @param { function } [callback] The callback function for the HTTP Response Header event * <br>header HTTP Response Header returned by the developer server. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Upload * @crossplatform @@ -2250,7 +2313,7 @@ declare namespace request { * <br>complete: upload task completed * <br>fail: upload task failed * @param { Callback<Array<TaskState>> } callback The callback function for the upload complete or fail change event. - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Upload * @crossplatform @@ -2286,7 +2349,7 @@ declare namespace request { * <br>complete: upload task completed * <br>fail: upload task failed * @param { Callback<Array<TaskState>> } [callback] - * @throws { BusinessError } 401 - the parameters check fails. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - The parameters check fails. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.MiscServices.Upload * @crossplatform @@ -2299,7 +2362,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback Indicates asynchronous invoking Result. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Upload * @since 6 * @deprecated since 9 @@ -2312,7 +2375,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Upload * @since 6 * @deprecated since 9 @@ -2325,8 +2388,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Upload * @since 9 */ @@ -2335,8 +2398,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Upload * @crossplatform * @since 10 @@ -2346,7 +2409,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @param { AsyncCallback<boolean> } callback - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Upload * @crossplatform * @since 12 @@ -2358,8 +2421,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Upload * @since 9 */ @@ -2368,8 +2431,8 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails - * @throws { BusinessError } 401 - the parameters check fails + * @throws { BusinessError } 201 - The permissions check fails. + * @throws { BusinessError } 401 - The parameters check fails. * @syscap SystemCapability.MiscServices.Upload * @crossplatform * @since 10 @@ -2379,7 +2442,7 @@ declare namespace request { * * @permission ohos.permission.INTERNET * @returns { Promise<boolean> } the promise returned by the function. - * @throws { BusinessError } 201 - the permissions check fails + * @throws { BusinessError } 201 - The permissions check fails. * @syscap SystemCapability.MiscServices.Upload * @crossplatform * @since 12 @@ -2426,7 +2489,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ namespace agent { /** @@ -2443,7 +2507,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ enum Action { /** @@ -2458,7 +2523,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ DOWNLOAD, /** @@ -2473,7 +2539,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ UPLOAD } @@ -2623,11 +2690,13 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface FileSpec { /** * A relative path string, like "./xxx/yyy/zzz.html", "xxx/yyy/zzz.html", in the caller's cache directory. + * Provides the file information of a table item. * * @type { string } * @syscap SystemCapability.Request.FileTransferAgent @@ -2635,6 +2704,7 @@ declare namespace request { */ /** * A relative path string, like "./xxx/yyy/zzz.html", "xxx/yyy/zzz.html", in the caller's cache directory. + * Provides the file information of a table item. * * @type { string } * @syscap SystemCapability.Request.FileTransferAgent @@ -2655,7 +2725,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ path: string; /** @@ -2702,11 +2773,13 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ filename?: string; /** * The extras for the file information. + * This parameter is not included in HTTP requests. * * @type { ?object } * @syscap SystemCapability.Request.FileTransferAgent @@ -2714,6 +2787,7 @@ declare namespace request { */ /** * The extras for the file information. + * This parameter is not included in HTTP requests. * * @type { ?object } * @syscap SystemCapability.Request.FileTransferAgent @@ -2738,7 +2812,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface FormItem { /** @@ -2755,7 +2830,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ name: string; /** @@ -2772,13 +2848,14 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ value: string | FileSpec | Array<FileSpec>; } /** - * Options of the custom notification of backend tasks. + * Describes the custom information of the notification bar. * * @typedef Notification * @syscap SystemCapability.Request.FileTransferAgent @@ -2805,10 +2882,85 @@ declare namespace request { * @since 15 */ text?: string; + /** + * Disables the notification. + * If the value is false, a notification will be displayed, otherwise nothing will be displayed. + * If not specified, the value is false. + * + * @type { ?boolean } + * @syscap SystemCapability.Request.FileTransferAgent + * @systemapi Hide this for inner system use. + * @since 20 + */ + disable?: boolean; + } + + /** + * Options of the minimum speed of the task. + * + * @typedef MinSpeed + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + interface MinSpeed { + /** + * The minimum speed of the task, in bytes per second. + * If the speed of the task is lower than this value for a period of time, the task fails. + * If the value is set to 0, no minimum speed limit will be activated. + * + * @type { number } + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + speed: number; + /** + * Duration of the speed which is allowed to be below the minimum speed, in seconds. + * If the speed of the task is lower than this value for a period of time, the task fails. + * If the value is set to 0, no minimum speed limit will be activated. + * + * @type { number } + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + duration: number; + } + + /** + * Options of the custom task timeout. + * + * @typedef Timeout + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + interface Timeout { + /** + * The connection timeout of the task, in seconds. + * Connection timeout is the maximum time required for a client and a server to establish a connection. + * If this value is not specified, use default value instead. The default value is 60 seconds. + * The minimum value allowed is 1 second. + * + * @type { ?number } + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + connectionTimeout?: number; + /** + * Total timeout of the task, in seconds. + * Total timeout includes the time to establish a connection, send a request and receive a response. + * If this value is not specified, use default value instead. The default value is 604,800 seconds(1 week). + * The minimum value allowed is 1 second. + * The maximum value allowed is 604,800 seconds(1 week). + * + * @type { ?number } + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + totalTimeout?: number; } /** * The configurations for a task. + * Provides the configuration information of an upload or download task. * Using a flexible configuration for clear upload and download functions. * If without emphasis, an option is for any task. * @@ -2818,6 +2970,7 @@ declare namespace request { */ /** * The configurations for a task. + * Provides the configuration information of an upload or download task. * Using a flexible configuration for clear upload and download functions. * If without emphasis, an option is for any task. * @@ -2825,7 +2978,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Config { /** @@ -2842,7 +2996,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ action: Action; /** @@ -2875,7 +3030,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ url: string; /** @@ -2943,12 +3099,11 @@ declare namespace request { * @atomicservice * @since 11 */ - mode?: Mode; /** * The solution choice when path already exists during download. * Currently support: - * true, rewrite the existed file. + * true, rewrite the existed file; * false, go to fail. * * @type { ?boolean } @@ -2959,7 +3114,7 @@ declare namespace request { * The solution choice when path already exists during download. * The default is false. * Currently support: - * true, rewrite the existed file. + * true, rewrite the existed file; * false, go to fail. * * @type { ?boolean } @@ -2989,7 +3144,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ method?: string; /** @@ -3017,7 +3173,7 @@ declare namespace request { * The arguments, it can be any text, uses json usually. * For download, it can be raw string, the default is empty string. * For upload, it can be form items, the default is a empty form. - * there must be one `FileSpec` item at least or will be a parameter error. + * There must be one `FileSpec` item at least or will be a parameter error. * * @type { ?(string | Array<FormItem>) } * @syscap SystemCapability.Request.FileTransferAgent @@ -3027,13 +3183,14 @@ declare namespace request { * The arguments, it can be any text, uses json usually. * For download, it can be raw string, the default is empty string. * For upload, it can be form items, the default is a empty form. - * there must be one `FileSpec` item at least or will be a parameter error. + * There must be one `FileSpec` item at least or will be a parameter error. * * @type { ?(string | Array<FormItem>) } * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ data?: string | Array<FormItem>; /** @@ -3073,11 +3230,13 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ saveas?: string; /** - * The network. + * Network used for the task. + * The default value is ANY (Wi-Fi or cellular). * * @type { ?Network } * @default Network.ANY @@ -3085,7 +3244,8 @@ declare namespace request { * @since 10 */ /** - * The network. + * Network used for the task. + * The default value is ANY (Wi-Fi or cellular). * * @type { ?Network } * @default Network.ANY @@ -3336,6 +3496,7 @@ declare namespace request { priority?: number; /** * The extras for the configuration. + * This parameter is left empty by default. * * @type { ?object } * @syscap SystemCapability.Request.FileTransferAgent @@ -3343,6 +3504,7 @@ declare namespace request { */ /** * The extras for the configuration. + * This parameter is left empty by default. * * @type { ?object } * @syscap SystemCapability.Request.FileTransferAgent @@ -3370,6 +3532,22 @@ declare namespace request { * @since 15 */ notification?: Notification; + /** + * Customizes the minimum speed of the task. + * + * @type { ?MinSpeed } + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + minSpeed?: MinSpeed; + /** + * Customizes the timeout of the task. + * + * @type { ?Timeout } + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + timeout?: Timeout; } /** @@ -3386,7 +3564,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ enum State { /** @@ -3401,7 +3580,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ INITIALIZED = 0x00, /** @@ -3416,7 +3596,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WAITING = 0x10, /** @@ -3431,7 +3612,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ RUNNING = 0x20, /** @@ -3446,7 +3628,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ RETRYING = 0x21, /** @@ -3461,7 +3644,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PAUSED = 0x30, /** @@ -3476,7 +3660,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ STOPPED = 0x31, /** @@ -3491,7 +3676,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPLETED = 0x40, /** @@ -3506,7 +3692,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ FAILED = 0x41, /** @@ -3521,7 +3708,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ REMOVED = 0x50 } @@ -3556,7 +3744,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Progress { /** @@ -3575,7 +3764,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly state: State; /** @@ -3594,7 +3784,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly index: number; /** @@ -3613,11 +3804,12 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly processed: number; /** - * The sizes of files in a task. + * The sizes of files in a task, in bytes. * * @type { Array<number> } * @readonly @@ -3625,7 +3817,7 @@ declare namespace request { * @since 10 */ /** - * The sizes of files in a task. + * The sizes of files in a task, in bytes. * * @type { Array<number> } * @readonly @@ -3799,7 +3991,14 @@ declare namespace request { * @atomicservice * @since 12 */ - REDIRECT = 0x80 + REDIRECT = 0x80, + /** + * Indicates the speed of the task is too slow. + * + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + LOW_SPEED = 0x90 } /** @@ -4291,11 +4490,13 @@ declare namespace request { /** * The HTTP response. + * Describes the data structure of the task response header. * * @interface HttpResponse * @syscap SystemCapability.Request.FileTransferAgent * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ interface HttpResponse { /** @@ -4305,7 +4506,8 @@ declare namespace request { * @readonly * @syscap SystemCapability.Request.FileTransferAgent * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly version: string, /** @@ -4315,7 +4517,8 @@ declare namespace request { * @readonly * @syscap SystemCapability.Request.FileTransferAgent * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly statusCode: number, /** @@ -4325,7 +4528,8 @@ declare namespace request { * @readonly * @syscap SystemCapability.Request.FileTransferAgent * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly reason: string, /** @@ -4340,6 +4544,44 @@ declare namespace request { readonly headers: Map<string, Array<string>>, } + /** + * Reason for task waiting. + * + * @enum { number } + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + enum WaitingReason { + /** + * Indicates the task is waiting for running queue to be free. + * + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + TASK_QUEUE_FULL = 0x00, + /** + * Indicates the task is waiting for network to recover. + * + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + NETWORK_NOT_MATCH = 0x01, + /** + * Indicates the task is waiting for app to return to the foreground. + * + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + APP_BACKGROUND = 0x02, + /** + * Indicates the task is waiting for user to become activated. + * + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + USER_INACTIVATED = 0x03, + } + /** * The task entry. * New task' status is "initialized" and enqueue. @@ -4364,7 +4606,8 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Task { /** @@ -4407,6 +4650,7 @@ declare namespace request { config: Config; /** * Enable the specified callback for a frontend task. + * Subscribes to task progress changes. * * @param { 'progress' } event event types. * @param { function } callback callback function with a `Progress` argument. @@ -4418,6 +4662,7 @@ declare namespace request { */ /** * Enables the specified callback. + * Subscribes to task progress changes. * * @param { 'progress' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4431,6 +4676,7 @@ declare namespace request { on(event: 'progress', callback: (progress: Progress) => void): void; /** * Disable the specified callback for a frontend task. + * Unsubscribes from task progress events. * * @param { 'progress' } event event types. * @param { function } callback callback function with a `Progress` argument. @@ -4442,6 +4688,7 @@ declare namespace request { */ /** * Disables the specified callback. + * Unsubscribes from task progress events. * * @param { 'progress' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4455,17 +4702,19 @@ declare namespace request { off(event: 'progress', callback?: (progress: Progress) => void): void; /** * Enable the specified callback for a frontend task. + * Subscribes to task completion events. * * @param { 'completed' } event event types. * @param { function } callback callback function with a `Progress` argument. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 21900005 - task mode error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Enables the specified callback. + * Subscribes to task completion events. * * @param { 'completed' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4474,22 +4723,25 @@ declare namespace request { * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ on(event: 'completed', callback: (progress: Progress) => void): void; /** * Disable the specified callback for a frontend task. + * Unsubscribes from task completion events. * * @param { 'completed' } event event types. * @param { function } callback callback function with a `Progress` argument. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 21900005 - task mode error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Disables the specified callback. + * Unsubscribes from task completion events. * * @param { 'completed' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4503,17 +4755,19 @@ declare namespace request { off(event: 'completed', callback?: (progress: Progress) => void): void; /** * Enable the specified callback for a frontend task. + * Subscribes to task failure events. * * @param { 'failed' } event event types. * @param { function } callback callback function with a `Progress` argument. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 21900005 - task mode error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Enables the specified callback. + * Subscribes to task failure events. * * @param { 'failed' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4527,17 +4781,19 @@ declare namespace request { on(event: 'failed', callback: (progress: Progress) => void): void; /** * Disable the specified callback for a frontend task. + * Unsubscribes from task failure events. * * @param { 'failed' } event event types. * @param { function } callback callback function with a `Progress` argument. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 21900005 - task mode error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Disables the specified callback. + * Unsubscribes from task failure events. * * @param { 'failed' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4551,6 +4807,7 @@ declare namespace request { off(event: 'failed', callback?: (progress: Progress) => void): void; /** * Enables the specified callback. + * Subscribes to task pause events. * * @param { 'pause' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4562,6 +4819,7 @@ declare namespace request { on(event: 'pause', callback: (progress: Progress) => void): void; /** * Disables the specified callback. + * Unsubscribes from the foreground task pause event. * * @param { 'pause' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4573,6 +4831,7 @@ declare namespace request { off(event: 'pause', callback?: (progress: Progress) => void): void; /** * Enables the specified callback. + * Subscribes to task resume events. * * @param { 'resume' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4584,6 +4843,7 @@ declare namespace request { on(event: 'resume', callback: (progress: Progress) => void): void; /** * Disables the specified callback. + * Unsubscribes from the foreground task resume event. * * @param { 'resume' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4595,6 +4855,7 @@ declare namespace request { off(event: 'resume', callback?: (progress: Progress) => void): void; /** * Enables the specified callback. + * Subscribes to task removal events. * * @param { 'remove' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4606,6 +4867,7 @@ declare namespace request { on(event: 'remove', callback: (progress: Progress) => void): void; /** * Disables the specified callback. + * Unsubscribes from the task removal event. * * @param { 'remove' } event - event types. * @param { function } callback - callback function with a `Progress` argument. @@ -4617,6 +4879,7 @@ declare namespace request { off(event: 'remove', callback?: (progress: Progress) => void): void; /** * Enables the response callback. + * Subscribes to task response headers. * * @param { 'response' } event - event types. * @param { Callback<HttpResponse> } callback - callback function with an `HttpResponse` argument. @@ -4624,11 +4887,13 @@ declare namespace request { * <br>2. Incorrect parameter type. 3. Parameter verification failed. * @syscap SystemCapability.Request.FileTransferAgent * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ on(event: 'response', callback: Callback<HttpResponse>): void; /** * Disables the response callback. + * Unsubscribes from task response headers. * * @param { 'response' } event - event types. * @param { Callback<HttpResponse> } callback - callback function with an `HttpResponse` argument. @@ -4639,14 +4904,62 @@ declare namespace request { * @since 12 */ off(event: 'response', callback?: Callback<HttpResponse>): void; + /** + * Enables the 'faultOccur' callback. + * This callback is triggered when the task failed. + * The returned `Faults` will contain the reason why the task failed. + * + * @param { 'faultOccur' } event - event types. + * @param { Callback<Faults> } callback - callback function with a `Faults` argument. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. + * <br>2. Incorrect parameter type. 3. Parameter verification failed. + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + on(event: 'faultOccur', callback: Callback<Faults>): void; + /** + * Disables the 'faultOccur' callback. + * + * @param { 'faultOccur' } event - event types. + * @param { Callback<Faults> } callback - callback function with a `Faults` argument. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. + * <br>2. Incorrect parameter type. 3. Parameter verification failed. + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + off(event: 'faultOccur', callback?: Callback<Faults>): void; + /** + * Enables the wait callback. + * This callback is triggered when the task changes from other states to the waiting state. + * The returned `WaitingReason` will contain the reason why the task enters waiting state. + * + * @param { 'wait' } event - event types. + * @param { Callback<WaitingReason> } callback - callback function with an `WaitingReason` argument. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. + * <br>2. Incorrect parameter type. 3. Parameter verification failed. + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + on(event: 'wait', callback: Callback<WaitingReason>): void; + /** + * Disables the wait callback. + * + * @param { 'wait' } event - event types. + * @param { Callback<WaitingReason> } callback - callback function with an `WaitingReason` argument. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. + * <br>2. Incorrect parameter type. 3. Parameter verification failed. + * @syscap SystemCapability.Request.FileTransferAgent + * @since 20 + */ + off(event: 'wait', callback?: Callback<WaitingReason>): void; /** * Starts the task. * * @permission ohos.permission.INTERNET * @param { AsyncCallback<void> } callback callback function with a boolean argument indicating the calling result. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ @@ -4656,8 +4969,8 @@ declare namespace request { * @permission ohos.permission.INTERNET * @param { AsyncCallback<void> } callback callback function with a boolean argument indicating the calling result. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice @@ -4671,12 +4984,13 @@ declare namespace request { * @permission ohos.permission.INTERNET * @param { AsyncCallback<void> } callback callback function with a boolean argument indicating the calling result. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ start(callback: AsyncCallback<void>): void; /** @@ -4685,8 +4999,8 @@ declare namespace request { * @permission ohos.permission.INTERNET * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ @@ -4696,8 +5010,8 @@ declare namespace request { * @permission ohos.permission.INTERNET * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice @@ -4711,30 +5025,31 @@ declare namespace request { * @permission ohos.permission.INTERNET * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ start(): Promise<void>; /** * Pauses the background task. * * @param { AsyncCallback<void> } callback callback function with a boolean argument indicating the calling result. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900005 - task mode error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** - * Pauses the task. + * Pauses a task that is waiting, running, or retrying. * * @param { AsyncCallback<void> } callback - callback function with a boolean argument indicating the calling result. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 11 */ @@ -4743,18 +5058,18 @@ declare namespace request { * Pauses the background task. * * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900005 - task mode error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** - * Pauses the task. + * Pauses a task that is waiting, running, or retrying. * * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 11 */ @@ -4765,20 +5080,20 @@ declare namespace request { * @permission ohos.permission.INTERNET * @param { AsyncCallback<void> } callback callback function with a boolean argument indicating the calling result. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900005 - task mode error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** - * Resumes the task. + * Resumes a paused task. * * @permission ohos.permission.INTERNET * @param { AsyncCallback<void> } callback - callback function with a boolean argument indicating the calling result. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 11 */ @@ -4789,39 +5104,39 @@ declare namespace request { * @permission ohos.permission.INTERNET * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900005 - task mode error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** - * Resumes the task. + * Resumes a paused task. * * @permission ohos.permission.INTERNET * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 11 */ resume(): Promise<void>; /** - * Stops the task. + * Stop a running, waiting, or retrying task. * * @param { AsyncCallback<void> } callback callback function with a boolean argument indicating the calling result. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** - * Stops the task. + * Stop a running, waiting, or retrying task. * * @param { AsyncCallback<void> } callback callback function with a boolean argument indicating the calling result. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice @@ -4829,20 +5144,20 @@ declare namespace request { */ stop(callback: AsyncCallback<void>): void; /** - * Stops the task. + * Stop a running, waiting, or retrying task. * * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** - * Stops the task. + * Stop a running, waiting, or retrying task. * * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900007 - task state error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900007 - Operation with wrong task state. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice @@ -4855,9 +5170,9 @@ declare namespace request { * * @param { number } speed - the maximum transfer speed of the task, in bytes per second. * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. + * @throws { BusinessError } 13400003 - Task service ability error. * @syscap SystemCapability.Request.FileTransferAgent * @since 18 */ @@ -4876,36 +5191,37 @@ declare namespace request { * @param { BaseContext } context context of the caller. * @param { Config } config configurations for a task. * @param { AsyncCallback<Task> } callback indicate the callback function to receive Task. - * @throws { BusinessError } 201 - permission denied. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400001 - file operation error. - * @throws { BusinessError } 13400003 - task service ability error. + * @throws { BusinessError } 13400001 - Invalid file or file system error. + * @throws { BusinessError } 13400003 - Task service ability error. * @throws { BusinessError } 21900004 - the application task queue is full. - * @throws { BusinessError } 21900005 - task mode error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Creates a task for upload or download and enqueue it. * When an application enters the background, the frontend tasks associated - * with it will gradually be paused until the application returns to the foreground. + * with it will gradually be paused until the application returns to the foreground. * * @permission ohos.permission.INTERNET * @param { BaseContext } context context of the caller. * @param { Config } config configurations for a task. * @param { AsyncCallback<Task> } callback indicate the callback function to receive Task. - * @throws { BusinessError } 201 - permission denied. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400001 - file operation error. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900004 - the application task queue is full. - * @throws { BusinessError } 21900005 - task mode error. + * @throws { BusinessError } 13400001 - Invalid file or file system error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900004 - The application task queue is full. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function create(context: BaseContext, config: Config, callback: AsyncCallback<Task>): void; @@ -4921,13 +5237,13 @@ declare namespace request { * @param { BaseContext } context context of the caller. * @param { Config } config configurations for a task. * @returns { Promise<Task> } the promise returned by the function. - * @throws { BusinessError } 201 - permission denied. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400001 - file operation error. - * @throws { BusinessError } 13400003 - task service ability error. + * @throws { BusinessError } 13400001 - Invalid file or file system error. + * @throws { BusinessError } 13400003 - Task service ability error. * @throws { BusinessError } 21900004 - the application task queue is full. - * @throws { BusinessError } 21900005 - task mode error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ @@ -4940,31 +5256,33 @@ declare namespace request { * @param { BaseContext } context context of the caller. * @param { Config } config configurations for a task. * @returns { Promise<Task> } the promise returned by the function. - * @throws { BusinessError } 201 - permission denied. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400001 - file operation error. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900004 - the application task queue is full. - * @throws { BusinessError } 21900005 - task mode error. + * @throws { BusinessError } 13400001 - Invalid file or file system error. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900004 - The application task queue is full. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function create(context: BaseContext, config: Config): Promise<Task>; /** * Gets the task with the specified id. + * Obtains task information based on the task ID. * * @param { BaseContext } context - context of the caller. * @param { string } id - the id of the task. * @param { string } token - the token of the task, length between 8 and 2048 bytes. * @returns { Promise<Task> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @since 11 */ @@ -4976,10 +5294,10 @@ declare namespace request { * * @param { string } id the task id. * @param { AsyncCallback<void> } callback callback function with a boolean argument indicating success or not. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ @@ -4989,10 +5307,10 @@ declare namespace request { * * @param { string } id the task id. * @param { AsyncCallback<void> } callback callback function with a boolean argument indicating success or not. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice @@ -5006,10 +5324,10 @@ declare namespace request { * * @param { string } id the task id. * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ @@ -5019,10 +5337,10 @@ declare namespace request { * * @param { string } id the task id. * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @atomicservice @@ -5032,25 +5350,27 @@ declare namespace request { /** * Shows specified task details belongs to the caller. + * Queries a task details based on the task ID. * * @param { string } id the task id. * @param { AsyncCallback<TaskInfo> } callback callback function with a `TaskInfo` argument for informations of the current task. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Shows specified task details belongs to the caller. + * Queries a task details based on the task ID. * * @param { string } id the task id. * @param { AsyncCallback<TaskInfo> } callback callback function with a `TaskInfo` argument for informations of the current task. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @since 11 @@ -5059,25 +5379,27 @@ declare namespace request { /** * Shows specified task details belongs to the caller. + * Queries a task details based on the task ID. * * @param { string } id the task id. * @returns { Promise<TaskInfo> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Shows specified task details belongs to the caller. + * Queries a task details based on the task ID. * * @param { string } id the task id. * @returns { Promise<TaskInfo> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @since 11 @@ -5086,27 +5408,29 @@ declare namespace request { /** * Touches specified task with token. + * Queries the task details based on the task ID and token. * * @param { string } id the task id. * @param { string } token the in-application isolation key. * @param { AsyncCallback<TaskInfo> } callback callback function with a `TaskInfo` argument for informations of the current task. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Touches specified task with token. + * Queries the task details based on the task ID and token. * * @param { string } id the task id. * @param { string } token the in-application isolation key, length between 8 and 2048 bytes. * @param { AsyncCallback<TaskInfo> } callback callback function with a `TaskInfo` argument for informations of the current task. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @since 11 @@ -5115,27 +5439,29 @@ declare namespace request { /** * Touches specified task with token. + * Queries the task details based on the task ID and token. * * @param { string } id the task id. * @param { string } token the in-application isolation key, length between 8 and 2048 bytes. * @returns { Promise<TaskInfo> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Touches specified task with token. + * Queries the task details based on the task ID and token. * * @param { string } id the task id. * @param { string } token the in-application isolation key, length between 8 and 2048 bytes. * @returns { Promise<TaskInfo> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @since 11 @@ -5144,21 +5470,23 @@ declare namespace request { /** * Searches tasks, for system. + * Searches for task IDs based on Filter. * * @param { AsyncCallback<Array<string>> } callback callback function with a `Array<string>` argument contains task ids match filter. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Incorrect parameter type. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter type. * <br>2. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. + * @throws { BusinessError } 13400003 - Task service ability error. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Searches tasks, for system. + * Searches for task IDs based on Filter. * * @param { AsyncCallback<Array<string>> } callback callback function with a `Array<string>` argument contains task ids match filter. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Incorrect parameter type. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter type. * <br>2. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. + * @throws { BusinessError } 13400003 - Task service ability error. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @since 11 @@ -5167,23 +5495,25 @@ declare namespace request { /** * Searches tasks, for system. + * Searches for task IDs based on Filter. * * @param { Filter } filter an instance of `Filter`. * @param { AsyncCallback<Array<string>> } callback callback function with a `Array<string>` argument contains task ids match filter. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Incorrect parameter type. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter type. * <br>2. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. + * @throws { BusinessError } 13400003 - Task service ability error. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Searches tasks, for system. + * Searches for task IDs based on Filter. * * @param { Filter } filter an instance of `Filter`. * @param { AsyncCallback<Array<string>> } callback callback function with a `Array<string>` argument contains task ids match filter. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Incorrect parameter type. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter type. * <br>2. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. + * @throws { BusinessError } 13400003 - Task service ability error. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @since 11 @@ -5192,23 +5522,25 @@ declare namespace request { /** * Searches tasks, for system. + * Searches for task IDs based on Filter. * * @param { Filter } filter an instance of `Filter`. * @returns { Promise<Array<string>> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Incorrect parameter type. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter type. * <br>2. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. + * @throws { BusinessError } 13400003 - Task service ability error. * @syscap SystemCapability.Request.FileTransferAgent * @since 10 */ /** * Searches tasks, for system. + * Searches for task IDs based on Filter. * * @param { Filter } filter an instance of `Filter`. * @returns { Promise<Array<string>> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Incorrect parameter type. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter type. * <br>2. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. + * @throws { BusinessError } 13400003 - Task service ability error. * @syscap SystemCapability.Request.FileTransferAgent * @crossplatform * @since 11 @@ -5217,16 +5549,17 @@ declare namespace request { /** * Queries specified task details. + * Creates a group based on GroupConfig * * @permission ohos.permission.DOWNLOAD_SESSION_MANAGER or ohos.permission.UPLOAD_SESSION_MANAGER * @param { string } id the task id. * @param { AsyncCallback<TaskInfo> } callback callback function with a `TaskInfo` argument for informations of the current task. - * @throws { BusinessError } 201 - permission denied. + * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - permission verification failed, application which is not a system application uses system API. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @systemapi Hide this for inner system use. * @since 10 @@ -5239,12 +5572,12 @@ declare namespace request { * @permission ohos.permission.DOWNLOAD_SESSION_MANAGER or ohos.permission.UPLOAD_SESSION_MANAGER * @param { string } id the task id. * @returns { Promise<TaskInfo> } the promise returned by the function. - * @throws { BusinessError } 201 - permission denied. + * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - permission verification failed, application which is not a system application uses system API. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900006 - task not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900006 - Task removed or not found. * @syscap SystemCapability.Request.FileTransferAgent * @systemapi Hide this for inner system use. * @since 10 @@ -5252,8 +5585,8 @@ declare namespace request { function query(id: string): Promise<TaskInfo>; /** - * The config of the task group. - * + * Describes group configuration options for download tasks. + * * @typedef GroupConfig * @syscap SystemCapability.Request.FileTransferAgent * @since 15 @@ -5264,7 +5597,7 @@ declare namespace request { * If true, progress, completed, and failed notifications will be displayed. * If false, only completed or failed notifications will be displayed. * The default value is false. - * + * * @type { ?boolean } * @syscap SystemCapability.Request.FileTransferAgent * @since 15 @@ -5272,7 +5605,7 @@ declare namespace request { gauge?: boolean; /** * Customizes the notification of the task group. - * + * * @type { Notification } * @syscap SystemCapability.Request.FileTransferAgent * @since 15 @@ -5282,30 +5615,33 @@ declare namespace request { /** * Creates a background download task notification group. - * + * Creates a group based on GroupConfig and returns the group ID. + * * @param { GroupConfig } config - config of the group. * @returns { Promise<string> } the gid of the group. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. + * @throws { BusinessError } 13400003 - Task service ability error. * @syscap SystemCapability.Request.FileTransferAgent * @since 15 */ function createGroup(config: GroupConfig): Promise<string>; /** - * Adds a newly created background download task to the target group. - * + * Attaches multiple download task IDs to a specified group ID. + * If any task ID does not meet the attachment conditions, + * all tasks in the list will not be added to the group. + * * @param { string } gid - the gid of the target group. * @param { string[] } tids - the tid list of tasks to be attached. * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900005 - task mode error. - * @throws { BusinessError } 21900006 - task not found. - * @throws { BusinessError } 21900007 - task state error. - * @throws { BusinessError } 21900008 - group deleted or not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900005 - Operation with wrong task mode. + * @throws { BusinessError } 21900006 - Task removed or not found. + * @throws { BusinessError } 21900007 - Operation with wrong task state. + * @throws { BusinessError } 21900008 - Group deleted or not found. * @syscap SystemCapability.Request.FileTransferAgent * @since 15 */ @@ -5314,13 +5650,13 @@ declare namespace request { /** * Deletes the target group, no more new tasks can be added to this group. * If all tasks in this group end, completed or failed notifications will be displayed. - * + * * @param { string } gid - the gid of the target group. * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - parameter error. Possible causes: 1. Missing mandatory parameters. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Missing mandatory parameters. * <br>2. Incorrect parameter type. 3. Parameter verification failed. - * @throws { BusinessError } 13400003 - task service ability error. - * @throws { BusinessError } 21900008 - group deleted or not found. + * @throws { BusinessError } 13400003 - Task service ability error. + * @throws { BusinessError } 21900008 - Group deleted or not found. * @syscap SystemCapability.Request.FileTransferAgent * @since 15 */ diff --git a/api/@ohos.resourceManager.d.ts b/api/@ohos.resourceManager.d.ts index a5b9f8b882be892a4c9824c327c724b31e25cbf6..b01f284d5706d6ba3d204e53ab497317293191c7 100644 --- a/api/@ohos.resourceManager.d.ts +++ b/api/@ohos.resourceManager.d.ts @@ -18,10 +18,14 @@ * @kit LocalizationKit */ +/*** if arkts 1.1&1.2 */ import { RawFileDescriptor as _RawFileDescriptor } from './global/rawFileDescriptor'; import { Resource as _Resource } from './global/resource'; import { AsyncCallback as _AsyncCallback } from './@ohos.base'; +/*** endif */ +/*** if arkts 1.1 */ import { DrawableDescriptor } from './@ohos.arkui.drawableDescriptor'; +/*** endif */ /** * Provides resource related APIs. @@ -45,7 +49,8 @@ import { DrawableDescriptor } from './@ohos.arkui.drawableDescriptor'; * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace resourceManager { /** @@ -831,7 +836,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export function getSystemResourceManager(): ResourceManager; @@ -857,7 +863,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface ResourceManager { /** @@ -924,7 +931,8 @@ declare namespace resourceManager { * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getStringValue(resource: Resource, callback: _AsyncCallback<string>): void; @@ -968,7 +976,8 @@ declare namespace resourceManager { * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getStringValue(resource: Resource): Promise<string>; @@ -2339,7 +2348,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getStringSync(resId: number): string; @@ -2375,6 +2385,25 @@ declare namespace resourceManager { * @since 11 */ getStringSync(resId: number, ...args: Array<string | number>): string; + + /** + * Obtains string resources associated with a specified resource ID. + * + * @param { number } resId - Indicates the resource ID. + * @param { (string | number)[] } args - Indicates the formatting string resource parameters. + * @returns { string } The character string corresponding to the resource ID. + * @throws { BusinessError } 401 - If the input parameter invalid. Possible causes: Incorrect parameter types. + * @throws { BusinessError } 9001001 - Invalid resource ID. + * @throws { BusinessError } 9001002 - No matching resource is found based on the resource ID. + * @throws { BusinessError } 9001006 - The resource is referenced cyclically. + * @throws { BusinessError } 9001007 - Failed to format the resource obtained based on the resource ID. + * @syscap SystemCapability.Global.ResourceManager + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getStringSync(resId: number, ...args: (string | number)[]): string; /** * Obtains string resources associated with a specified resource object. @@ -2416,7 +2445,8 @@ declare namespace resourceManager { * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getStringSync(resource: Resource): string; @@ -2454,6 +2484,26 @@ declare namespace resourceManager { * @since 11 */ getStringSync(resource: Resource, ...args: Array<string | number>): string; + + /** + * Obtains string resources associated with a specified resource object. + * + * @param { Resource } resource - Indicates the resource object. + * @param { (string | number)[] } args - Indicates the formatting string resource parameters. + * @returns { string } The character string corresponding to the resource object. + * @throws { BusinessError } 401 - If the input parameter invalid. Possible causes: Incorrect parameter types. + * @throws { BusinessError } 9001001 - Invalid resource ID. + * @throws { BusinessError } 9001002 - No matching resource is found based on the resource ID. + * @throws { BusinessError } 9001006 - The resource is referenced cyclically. + * @throws { BusinessError } 9001007 - Failed to format the resource obtained based on the resource ID. + * @syscap SystemCapability.Global.ResourceManager + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getStringSync(resource: Resource, ...args: (string | number)[]): string; /** * Obtains string resources associated with a specified resource name. @@ -2692,7 +2742,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getNumber(resId: number): number; @@ -2736,7 +2787,8 @@ declare namespace resourceManager { * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getNumber(resource: Resource): number; @@ -2842,7 +2894,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getStringValue(resId: number, callback: _AsyncCallback<string>): void; @@ -2883,7 +2936,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getStringValue(resId: number): Promise<string>; @@ -3082,7 +3136,6 @@ declare namespace resourceManager { * @param { Array<string | number> } args - Indicates the formatting string resource parameters. * @returns { string } The singular-plural character string represented by the ID string * corresponding to the specified number. - * @throws { BusinessError } 401 - If the input parameter invalid. Possible causes: Incorrect parameter types. * @throws { BusinessError } 9001001 - Invalid resource ID. * @throws { BusinessError } 9001002 - No matching resource is found based on the resource ID. * @throws { BusinessError } 9001006 - The resource is referenced cyclically. @@ -3094,6 +3147,27 @@ declare namespace resourceManager { */ getIntPluralStringValueSync(resId: number, num: number, ...args: Array<string | number>): string; + /** + * Obtains the singular-plural character string represented by the ID string corresponding to + * the specified number. + * + * @param { number } resId - Indicates the resource ID. + * @param { number } num - An integer used to get the correct string for the current plural rules. + * @param { (string | number)[] } args - Indicates the formatting string resource parameters. + * @returns { string } The singular-plural character string represented by the ID string + * corresponding to the specified number. + * @throws { BusinessError } 9001001 - Invalid resource ID. + * @throws { BusinessError } 9001002 - No matching resource is found based on the resource ID. + * @throws { BusinessError } 9001006 - The resource is referenced cyclically. + * @throws { BusinessError } 9001007 - Failed to format the resource obtained based on the resource ID. + * @syscap SystemCapability.Global.ResourceManager + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getIntPluralStringValueSync(resId: number, num: number, ...args: (string | number)[]): string; + /** * Obtains the singular-plural character string represented by the resource object string corresponding to the * specified number. @@ -3103,7 +3177,6 @@ declare namespace resourceManager { * @param { Array<string | number> } args - Indicates the formatting string resource parameters. * @returns { string } The singular-plural character string represented by the ID string * corresponding to the specified number. - * @throws { BusinessError } 401 - If the input parameter invalid. Possible causes: Incorrect parameter types. * @throws { BusinessError } 9001001 - Invalid resource ID. * @throws { BusinessError } 9001002 - No matching resource is found based on the resource ID. * @throws { BusinessError } 9001006 - The resource is referenced cyclically. @@ -3116,6 +3189,28 @@ declare namespace resourceManager { */ getIntPluralStringValueSync(resource: Resource, num: number, ...args: Array<string | number>): string; + /** + * Obtains the singular-plural character string represented by the resource object string corresponding to the + * specified number. + * + * @param { Resource } resource - Indicates the resource object. + * @param { number } num - An integer used to get the correct string for the current plural rules. + * @param { (string | number)[] } args - Indicates the formatting string resource parameters. + * @returns { string } The singular-plural character string represented by the ID string + * corresponding to the specified number. + * @throws { BusinessError } 9001001 - Invalid resource ID. + * @throws { BusinessError } 9001002 - No matching resource is found based on the resource ID. + * @throws { BusinessError } 9001006 - The resource is referenced cyclically. + * @throws { BusinessError } 9001007 - Failed to format the resource obtained based on the resource ID. + * @syscap SystemCapability.Global.ResourceManager + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getIntPluralStringValueSync(resource: Resource, num: number, ...args: (string | number)[]): string; + /** * Obtains the singular-plural character string represented by the name string corresponding to * the specified number. @@ -3125,7 +3220,6 @@ declare namespace resourceManager { * @param { Array<string | number> } args - Indicates the formatting string resource parameters. * @returns { string } The singular-plural character string represented by the name string * corresponding to the specified number. - * @throws { BusinessError } 401 - If the input parameter invalid. Possible causes: Incorrect parameter types. * @throws { BusinessError } 9001003 - Invalid resource name. * @throws { BusinessError } 9001004 - No matching resource is found based on the resource name. * @throws { BusinessError } 9001006 - The resource is referenced cyclically. @@ -3137,6 +3231,27 @@ declare namespace resourceManager { */ getIntPluralStringByNameSync(resName: string, num: number, ...args: Array<string | number>): string; + /** + * Obtains the singular-plural character string represented by the name string corresponding to + * the specified number. + * + * @param { string } resName - Indicates the resource name. + * @param { number } num - An integer used to get the correct string for the current plural rules. + * @param { (string | number)[] } args - Indicates the formatting string resource parameters. + * @returns { string } The singular-plural character string represented by the name string + * corresponding to the specified number. + * @throws { BusinessError } 9001003 - Invalid resource name. + * @throws { BusinessError } 9001004 - No matching resource is found based on the resource name. + * @throws { BusinessError } 9001006 - The resource is referenced cyclically. + * @throws { BusinessError } 9001008 - Failed to format the resource obtained based on the resource name. + * @syscap SystemCapability.Global.ResourceManager + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getIntPluralStringByNameSync(resName: string, num: number, ...args: (string | number)[]): string; + /** * Obtains the singular-plural character string represented by the ID string corresponding to * the specified number. @@ -3146,7 +3261,6 @@ declare namespace resourceManager { * @param { Array<string | number> } args - Indicates the formatting string resource parameters. * @returns { string } The singular-plural character string represented by the ID string * corresponding to the specified number. - * @throws { BusinessError } 401 - If the input parameter invalid. Possible causes: Incorrect parameter types. * @throws { BusinessError } 9001001 - Invalid resource ID. * @throws { BusinessError } 9001002 - No matching resource is found based on the resource ID. * @throws { BusinessError } 9001006 - The resource is referenced cyclically. @@ -3158,6 +3272,27 @@ declare namespace resourceManager { */ getDoublePluralStringValueSync(resId: number, num: number, ...args: Array<string | number>): string; + /** + * Obtains the singular-plural character string represented by the ID string corresponding to + * the specified number. + * + * @param { number } resId - Indicates the resource ID. + * @param { number } num - A double parameter used to get the correct string for the current plural rules. + * @param { (string | number)[] } args - Indicates the formatting string resource parameters. + * @returns { string } The singular-plural character string represented by the ID string + * corresponding to the specified number. + * @throws { BusinessError } 9001001 - Invalid resource ID. + * @throws { BusinessError } 9001002 - No matching resource is found based on the resource ID. + * @throws { BusinessError } 9001006 - The resource is referenced cyclically. + * @throws { BusinessError } 9001007 - Failed to format the resource obtained based on the resource ID. + * @syscap SystemCapability.Global.ResourceManager + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getDoublePluralStringValueSync(resId: number, num: number, ...args: (string | number)[]): string; + /** * Obtains the singular-plural character string represented by the resource object string corresponding to the * specified number. @@ -3167,7 +3302,6 @@ declare namespace resourceManager { * @param { Array<string | number> } args - Indicates the formatting string resource parameters. * @returns { string } The singular-plural character string represented by the ID string * corresponding to the specified number. - * @throws { BusinessError } 401 - If the input parameter invalid. Possible causes: Incorrect parameter types. * @throws { BusinessError } 9001001 - Invalid resource ID. * @throws { BusinessError } 9001002 - No matching resource is found based on the resource ID. * @throws { BusinessError } 9001006 - The resource is referenced cyclically. @@ -3180,6 +3314,28 @@ declare namespace resourceManager { */ getDoublePluralStringValueSync(resource: Resource, num: number, ...args: Array<string | number>): string; + /** + * Obtains the singular-plural character string represented by the resource object string corresponding to the + * specified number. + * + * @param { Resource } resource - Indicates the resource object. + * @param { number } num - A double parameter used to get the correct string for the current plural rules. + * @param { (string | number)[] } args - Indicates the formatting string resource parameters. + * @returns { string } The singular-plural character string represented by the ID string + * corresponding to the specified number. + * @throws { BusinessError } 9001001 - Invalid resource ID. + * @throws { BusinessError } 9001002 - No matching resource is found based on the resource ID. + * @throws { BusinessError } 9001006 - The resource is referenced cyclically. + * @throws { BusinessError } 9001007 - Failed to format the resource obtained based on the resource ID. + * @syscap SystemCapability.Global.ResourceManager + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getDoublePluralStringValueSync(resource: Resource, num: number, ...args: (string | number)[]): string; + /** * Obtains the singular-plural character string represented by the name string corresponding to * the specified number. @@ -3189,7 +3345,6 @@ declare namespace resourceManager { * @param { Array<string | number> } args - Indicates the formatting string resource parameters. * @returns { string } The singular-plural character string represented by the name string * corresponding to the specified number. - * @throws { BusinessError } 401 - If the input parameter invalid. Possible causes: Incorrect parameter types. * @throws { BusinessError } 9001003 - Invalid resource name. * @throws { BusinessError } 9001004 - No matching resource is found based on the resource name. * @throws { BusinessError } 9001006 - The resource is referenced cyclically. @@ -3201,6 +3356,27 @@ declare namespace resourceManager { */ getDoublePluralStringByNameSync(resName: string, num: number, ...args: Array<string | number>): string; + /** + * Obtains the singular-plural character string represented by the name string corresponding to + * the specified number. + * + * @param { string } resName - Indicates the resource name. + * @param { number } num - A double parameter used to get the correct string for the current plural rules. + * @param { (string | number)[] } args - Indicates the formatting string resource parameters. + * @returns { string } The singular-plural character string represented by the name string + * corresponding to the specified number. + * @throws { BusinessError } 9001003 - Invalid resource name. + * @throws { BusinessError } 9001004 - No matching resource is found based on the resource name. + * @throws { BusinessError } 9001006 - The resource is referenced cyclically. + * @throws { BusinessError } 9001008 - Failed to format the resource obtained based on the resource name. + * @syscap SystemCapability.Global.ResourceManager + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getDoublePluralStringByNameSync(resName: string, num: number, ...args: (string | number)[]): string; + /** * Obtains the content of the media file corresponding to a specified resource ID in callback mode. * @@ -3511,7 +3687,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getRawFileContent(path: string, callback: _AsyncCallback<Uint8Array>): void; @@ -3546,7 +3723,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getRawFileContent(path: string): Promise<Uint8Array>; @@ -4087,7 +4265,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getColorSync(resId: number) : number; @@ -4117,7 +4296,8 @@ declare namespace resourceManager { * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getColorSync(resource: Resource) : number; @@ -4283,7 +4463,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getRawFileContentSync(path: string): Uint8Array; @@ -4861,7 +5042,8 @@ declare namespace resourceManager { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export type Resource = _Resource; } diff --git a/api/@ohos.resourceschedule.backgroundProcessManager.d.ts b/api/@ohos.resourceschedule.backgroundProcessManager.d.ts index 8e8c321e1dfb202eb64ea887997c436459613b87..cd25b3cc13dff1929b46e10da94b888d78aa1f23 100644 --- a/api/@ohos.resourceschedule.backgroundProcessManager.d.ts +++ b/api/@ohos.resourceschedule.backgroundProcessManager.d.ts @@ -23,7 +23,7 @@ * * @namespace backgroundProcessManager * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager - * @since 15 + * @since 17 */ declare namespace backgroundProcessManager { /** @@ -31,14 +31,14 @@ declare namespace backgroundProcessManager { * * @enum { number } * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager - * @since 15 + * @since 17 */ export enum ProcessPriority { /** * Means the process has stopped working and in the background * * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager - * @since 15 + * @since 17 */ PROCESS_BACKGROUND = 1, @@ -46,11 +46,37 @@ declare namespace backgroundProcessManager { * Means the process is working in the background * * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager - * @since 15 + * @since 17 */ PROCESS_INACTIVE = 2, } + /** + * Describes the status of the power saving mode. + * + * @enum { number } + * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager + * @since 20 + */ + export enum PowerSaveMode { + /** + * Means the process request not to entry power saving mode + * This setting may be overridden by settings in Task Manager + * + * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager + * @since 20 + */ + EFFICIENCY_MODE = 1, + + /** + * Means the process operating mode follows the system and may entry power saving mode + * + * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager + * @since 20 + */ + DEFAULT_MODE = 2, + } + /** * Set the priority of process. * @@ -58,9 +84,8 @@ declare namespace backgroundProcessManager { * @param { ProcessPriority } priority - Indicates the priority to set. Specific priority can be referenced ProcessPriority * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: priority is out of range. - * @throws { BusinessError } 31800001 - remote error. Possible causes: remote is not work. * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager - * @since 15 + * @since 17 */ function setProcessPriority(pid: number, priority: ProcessPriority): Promise<void>; @@ -69,11 +94,46 @@ declare namespace backgroundProcessManager { * * @param { number } pid - Indicates the pid of the process to be reset. * @returns { Promise<void> } The promise returned by the function. - * @throws { BusinessError } 31800001 - remote error. Possible causes: remote is not work. * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager - * @since 15 + * @since 17 */ function resetProcessPriority(pid: number): Promise<void>; + + /** + * Set the power saving mode of process. The setting may fail due to user setting reasons or + * <br> system scheduling reasons. + * + * @permission ohos.permission.BACKGROUND_MANAGER_POWER_SAVE_MODE + * @param { number } pid - Indicates the pid of the power saving mode to be set. + * @param { PowerSaveMode } powerSaveMode - Indicates the power saving mode that needs to be set. + * <br> For details, please refer to PowerSaveModeStatus. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 31800002 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified; + * <br> 2. Incorrect parameter types; 3. PowerSaveMode status is out of range. + * @throws { BusinessError } 31800003 - Setup error, This setting is overridden by setting in Task Manager. + * @throws { BusinessError } 31800004 - The setting failed due to system scheduling reasons. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager + * @since 20 + */ + function setPowerSaveMode(pid: number, powerSaveMode: PowerSaveMode): Promise<void>; + + /** + * Check if the process is in power saving mode. + * + * @permission ohos.permission.BACKGROUND_MANAGER_POWER_SAVE_MODE + * @param { number } pid - Indicates the process to be checked is the pid of the power saving mode. + * @returns { Promise<boolean> } The promise returns whether it is in power saving mode. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 31800002 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Resourceschedule.BackgroundProcessManager + * @since 20 + */ + function isPowerSaveMode(pid: number): Promise<boolean>; } export default backgroundProcessManager; diff --git a/api/@ohos.resourceschedule.backgroundTaskManager.d.ts b/api/@ohos.resourceschedule.backgroundTaskManager.d.ts index 30b520de7ae83dcd678355f85ed13ed8081ae5e4..c5bb4124f4bb894623f87175af8b2e33235dca47 100644 --- a/api/@ohos.resourceschedule.backgroundTaskManager.d.ts +++ b/api/@ohos.resourceschedule.backgroundTaskManager.d.ts @@ -65,6 +65,32 @@ declare namespace backgroundTaskManager { actualDelayTime: number; } + /** + * The callback info of transient task. + * + * @interface TransientTaskInfo + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask + * @since 20 + */ + interface TransientTaskInfo { + /** + * Total remaining quota of an application in one day. + * + * @type { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask + * @since 20 + */ + remainingQuota: number; + /** + * The info list of delay suspend. + * + * @type { DelaySuspendInfo[] } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask + * @since 20 + */ + transientTasks: DelaySuspendInfo[]; + } + /** * The info of continuous task notification. * @@ -137,6 +163,228 @@ declare namespace backgroundTaskManager { id: number; } + /** + * The continuous task active info. + * + * @interface ContinuousTaskActiveInfo + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + interface ContinuousTaskActiveInfo { + /** + * The id of active continuous task. + * + * @type { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + id: number; + } + + /** + * The continuous task info. + * + * @interface ContinuousTaskInfo + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + interface ContinuousTaskInfo { + /** + * The ability name of apply continuous task. + * + * @type { string } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + abilityName: string; + /** + * The uid of apply continuous task. + * + * @type { number} + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + uid: number; + /** + * The pid of apply continuous task. + * + * @type { number} + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + pid: number; + /** + * Is apply continuous task from webview. + * + * @type { boolean } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + isFromWebView: boolean; + /** + * Background modes of apply continuous task. + * + * @type { string[] } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + backgroundModes: string[]; + /** + * Background sub modes of apply continuous task. + * + * @type { string[] } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + backgroundSubModes: string[]; + /** + * The notification id of apply continuous task. + * + * @type { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + notificationId: number; + /** + * The continuous task id of apply continuous task. + * @type { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + continuousTaskId: number; + /** + * The ability id of apply continuous task. + * @type { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + abilityId: number; + /** + * The wantAgent bundle name of apply continuous task. + * @type { string } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + wantAgentBundleName: string; + /** + * The wantAgent ability name of apply continuous task. + * @type { string } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + wantAgentAbilityName: string; + } + + /** + * The continuous task suspend info. + * + * @interface ContinuousTaskSuspendInfo + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + interface ContinuousTaskSuspendInfo { + /** + * The id of suspended continuous task. + * + * @type { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + continuousTaskId: number; + + /** + * The suspend state of continuous task. + * + * @type { boolean } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + suspendState: boolean; + + /** + * The suspend reason of continuous task. + * + * @type { ContinuousTaskSuspendReason } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + suspendReason: ContinuousTaskSuspendReason; + } + + /** + * Efficiency Resources information. + * + * @interface EfficiencyResourcesInfo + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply + * @systemapi Hide this for inner system use. + * @since 20 + */ + interface EfficiencyResourcesInfo { + /** + * The set of resource types that app wants to apply. + * + * @type { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply + * @systemapi Hide this for inner system use. + * @since 20 + */ + resourceTypes: number; + /** + * The duration that the resource can be used most. + * + * @type { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply + * @systemapi Hide this for inner system use. + * @since 20 + */ + timeout: number; + /** + * True if the apply action is persistent, else false. Default value is false. + * + * @type { boolean } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply + * @systemapi Hide this for inner system use. + * @since 20 + */ + isPersistent: boolean; + /** + * True if apply action is for process, false is for package. Default value is false. + * + * @type { boolean } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply + * @systemapi Hide this for inner system use. + * @since 20 + */ + isForProcess: boolean; + /** + * The apply reason. + * + * @type { string } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply + * @systemapi Hide this for inner system use. + * @since 20 + */ + reason: string; + /** + * The uid of apply efficiency resources. + * + * @type { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply + * @systemapi Hide this for inner system use. + * @since 20 + */ + uid: number; + /** + * The pid of apply efficiency resources. + * + * @type { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply + * @systemapi Hide this for inner system use. + * @since 20 + */ + pid: number; + } + /** * Cancels delayed transition to the suspended state. * @@ -144,7 +392,8 @@ declare namespace backgroundTaskManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9800003 - Internal transaction failed. * @throws { BusinessError } 9800004 - System service operation failed. * @throws { BusinessError } 9900001 - Caller information verification failed for a transient task. @@ -162,7 +411,8 @@ declare namespace backgroundTaskManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9800003 - Internal transaction failed. * @throws { BusinessError } 9800004 - System service operation failed. * @throws { BusinessError } 9900001 - Caller information verification failed for a transient task. @@ -180,7 +430,8 @@ declare namespace backgroundTaskManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9800003 - Internal transaction failed. * @throws { BusinessError } 9800004 - System service operation failed. * @throws { BusinessError } 9900001 - Caller information verification failed for a transient task. @@ -199,7 +450,8 @@ declare namespace backgroundTaskManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9800003 - Internal transaction failed. * @throws { BusinessError } 9800004 - System service operation failed. * @throws { BusinessError } 9900001 - Caller information verification failed for a transient task. @@ -209,6 +461,19 @@ declare namespace backgroundTaskManager { */ function requestSuspendDelay(reason: string, callback: Callback<void>): DelaySuspendInfo; + /** + * Obtains transient task info before an application enters the suspended state. + * + * @returns { Promise<TransientTaskInfo> } The promise returns the transient task info. + * @throws { BusinessError } 9900001 - Caller information verification failed for a transient task. + * @throws { BusinessError } 9900003 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 9900004 - System service operation failed. + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask + * @since 20 + */ + function getTransientTaskInfo(): Promise<TransientTaskInfo>; + /** * Service ability uses this method to request start running in background. * <p> System will publish a notification related to the this service. </p> @@ -246,7 +511,8 @@ declare namespace backgroundTaskManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9800003 - Internal transaction failed. * @throws { BusinessError } 9800004 - System service operation failed. * @throws { BusinessError } 9800005 - Continuous task verification failed. @@ -295,7 +561,8 @@ declare namespace backgroundTaskManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9800003 - Internal transaction failed. * @throws { BusinessError } 9800004 - System service operation failed. * @throws { BusinessError } 9800005 - Continuous task verification failed. @@ -320,7 +587,8 @@ declare namespace backgroundTaskManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9800003 - Internal transaction failed. * @throws { BusinessError } 9800004 - System service operation failed. * @throws { BusinessError } 9800005 - Continuous task verification failed. @@ -343,7 +611,8 @@ declare namespace backgroundTaskManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9800003 - Internal transaction failed. * @throws { BusinessError } 9800004 - System service operation failed. * @throws { BusinessError } 9800005 - Continuous task verification failed. @@ -390,6 +659,24 @@ declare namespace backgroundTaskManager { * @atomicservice * @since 12 */ + /** + * Service ability uses this method to request stop running in background. + * + * @param { Context } context - App running context. + * @param { AsyncCallback<void> } callback - The callback of the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * @throws { BusinessError } 9800001 - Memory operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 9800003 - Internal transaction failed. + * @throws { BusinessError } 9800004 - System service operation failed. + * @throws { BusinessError } 9800005 - Continuous task verification failed. + * @throws { BusinessError } 9800006 - Notification verification failed for a continuous task. + * @throws { BusinessError } 9800007 - Continuous task storage failed. + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @atomicservice + * @since 19 + */ function stopBackgroundRunning(context: Context, callback: AsyncCallback<void>): void; /** @@ -427,8 +714,42 @@ declare namespace backgroundTaskManager { * @atomicservice * @since 12 */ + /** + * Service ability uses this method to request stop running in background. + * + * @param { Context } context - App running context. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * @throws { BusinessError } 9800001 - Memory operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 9800003 - Internal transaction failed. + * @throws { BusinessError } 9800004 - System service operation failed. + * @throws { BusinessError } 9800005 - Continuous task verification failed. + * @throws { BusinessError } 9800006 - Notification verification failed for a continuous task. + * @throws { BusinessError } 9800007 - Continuous task storage failed. + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @atomicservice + * @since 19 + */ function stopBackgroundRunning(context: Context): Promise<void>; + /** + * Obtains all the continuous tasks before an application enters the suspended state. + * + * @permission ohos.permission.KEEP_BACKGROUND_RUNNING + * @param { Context } context - App running context. + * @returns { Promise<ContinuousTaskInfo[]> } The promise returns the continuous task info. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 9800004 - System service operation failed. + * @throws { BusinessError } 9800005 - Continuous task verification failed. + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + function getAllContinuousTasks(context: Context): Promise<ContinuousTaskInfo[]>; + /** * Apply or unapply efficiency resources. * @@ -438,7 +759,8 @@ declare namespace backgroundTaskManager { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9800003 - Internal transaction failed. * @throws { BusinessError } 9800004 - System service operation failed. * @throws { BusinessError } 18700001 - Caller information verification failed for an energy resource request. @@ -455,7 +777,8 @@ declare namespace backgroundTaskManager { * @throws { BusinessError } 202 - Not System App. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9800003 - Internal transaction failed. * @throws { BusinessError } 9800004 - System service operation failed. * @throws { BusinessError } 18700001 - Caller information verification failed for an energy resource request. @@ -465,6 +788,21 @@ declare namespace backgroundTaskManager { */ function resetAllEfficiencyResources(): void; + /** + * Obtains all the efficiency resources of current application. + * + * @returns { Promise<EfficiencyResourcesInfo[]> } The promise returns the efficiency resources info. + * @throws { BusinessError } 202 - Not System App. + * @throws { BusinessError } 18700001 - Caller information verification failed for an energy resource request. + * @throws { BusinessError } 18700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 18700004 - System service operation failed. + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply + * @systemapi + * @since 20 + */ + function getAllEfficiencyResources(): Promise<EfficiencyResourcesInfo[]>; + /** * Register continuous task cancel callback. * @@ -493,6 +831,58 @@ declare namespace backgroundTaskManager { */ function off(type: 'continuousTaskCancel', callback?: Callback<ContinuousTaskCancelInfo>): void; + /** + * Register continuous task suspend callback. + * + * @permission ohos.permission.KEEP_BACKGROUND_RUNNING + * @param { 'continuousTaskSuspend' } type - The type of continuous task suspend. + * @param { Callback<ContinuousTaskSuspendInfo> } callback - the callback of continuous task suspend. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 9800005 - Continuous task verification failed. + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + function on(type: 'continuousTaskSuspend', callback: Callback<ContinuousTaskSuspendInfo>): void; + + /** + * Unregister continuous task suspend callback. + * + * @permission ohos.permission.KEEP_BACKGROUND_RUNNING + * @param { 'continuousTaskSuspend' } type - The type of continuous task suspend. + * @param { Callback<ContinuousTaskSuspendInfo> } callback - the callback of continuous task suspend. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 9800005 - Continuous task verification failed. + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + function off(type: 'continuousTaskSuspend', callback?: Callback<ContinuousTaskSuspendInfo>): void; + + /** + * Register continuous task active callback. + * + * @permission ohos.permission.KEEP_BACKGROUND_RUNNING + * @param { 'continuousTaskActive' } type - The type of continuous task active. + * @param { Callback<ContinuousTaskActiveInfo> } callback - the callback of continuous task active. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 9800005 - Continuous task verification failed. + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + function on(type: 'continuousTaskActive', callback: Callback<ContinuousTaskActiveInfo>): void; + + /** + * Unregister continuous task suspend callback. + * + * @permission ohos.permission.KEEP_BACKGROUND_RUNNING + * @param { 'continuousTaskActive' } type - The type of continuous task active. + * @param { Callback<ContinuousTaskActiveInfo> } callback - the callback of continuous task active. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 9800005 - Continuous task verification failed. + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + function off(type: 'continuousTaskActive', callback?: Callback<ContinuousTaskActiveInfo>): void; + /** * Supported background mode. * @@ -887,6 +1277,87 @@ declare namespace backgroundTaskManager { */ SUB_MODE = 'subMode' } + + /** + * Type of continuous task suspend reason. + * + * @enum { number } + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + export enum ContinuousTaskSuspendReason { + /** + * Low network speed when request data transfer mode. + * + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + SYSTEM_SUSPEND_DATA_TRANSFER_LOW_SPEED = 4, + + /** + * Not use avsession when request audio playback mode. + * + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + SYSTEM_SUSPEND_AUDIO_PLAYBACK_NOT_USE_AVSESSION = 5, + + /** + * Audio is not running when request audio playback mode. + * + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + SYSTEM_SUSPEND_AUDIO_PLAYBACK_NOT_RUNNING = 6, + + /** + * Audio is not running when request audio recording mode. + * + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + SYSTEM_SUSPEND_AUDIO_RECORDING_NOT_RUNNING = 7, + + /** + * Not use location when request location mode. + * + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + SYSTEM_SUSPEND_LOCATION_NOT_USED = 8, + + /** + * Not use bluetooth when request bluetooth interaction mode. + * + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + SYSTEM_SUSPEND_BLUETOOTH_NOT_USED = 9, + + /** + * Not use multi device when request multi-device connection mode. + * + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + SYSTEM_SUSPEND_MULTI_DEVICE_NOT_USED = 10, + + /** + * Use some mode illegally. + * + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + SYSTEM_SUSPEND_USED_ILLEGALLY = 11, + + /** + * System load warning. + * + * @syscap SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask + * @since 20 + */ + SYSTEM_SUSPEND_SYSTEM_LOAD_WARNING = 12, + } } export default backgroundTaskManager; diff --git a/api/@ohos.resourceschedule.deviceStandby.d.ts b/api/@ohos.resourceschedule.deviceStandby.d.ts index 46344d2d7808b8d062da4f2493441021999568f0..41d6146e203e3a796d99be8ff07b737c271298c4 100644 --- a/api/@ohos.resourceschedule.deviceStandby.d.ts +++ b/api/@ohos.resourceschedule.deviceStandby.d.ts @@ -39,9 +39,9 @@ declare namespace deviceStandby { * @throws { BusinessError } 202 - Not System App. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. - * @throws { BusinessError } 9800003 - Inner transact failed. - * @throws { BusinessError } 9800004 - System service operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters. + * @throws { BusinessError } 9800003 - Failed to complete inner transaction. + * @throws { BusinessError } 9800004 - Failed to get device standby service. Possible cause: A necessary system service is not ready. * @throws { BusinessError } 18700001 - Caller information verification failed. * @syscap SystemCapability.ResourceSchedule.DeviceStandby * @systemapi Hide this for inner system use. @@ -59,9 +59,9 @@ declare namespace deviceStandby { * @throws { BusinessError } 202 - Not System App. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. - * @throws { BusinessError } 9800003 - Inner transact failed. - * @throws { BusinessError } 9800004 - System service operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters. + * @throws { BusinessError } 9800003 - Failed to complete inner transaction. + * @throws { BusinessError } 9800004 - Failed to get device standby service. Possible cause: A necessary system service is not ready. * @throws { BusinessError } 18700001 - Caller information verification failed. * @syscap SystemCapability.ResourceSchedule.DeviceStandby * @systemapi Hide this for inner system use. @@ -78,9 +78,9 @@ declare namespace deviceStandby { * @throws { BusinessError } 202 - Not System App. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. - * @throws { BusinessError } 9800003 - Inner transact failed. - * @throws { BusinessError } 9800004 - System service operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters. + * @throws { BusinessError } 9800003 - Failed to complete inner transaction. + * @throws { BusinessError } 9800004 - Failed to get device standby service. Possible cause: A necessary system service is not ready. * @throws { BusinessError } 18700001 - Caller information verification failed. * @syscap SystemCapability.ResourceSchedule.DeviceStandby * @systemapi Hide this for inner system use. @@ -97,9 +97,9 @@ declare namespace deviceStandby { * @throws { BusinessError } 202 - Not System App. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 9800001 - Memory operation failed. - * @throws { BusinessError } 9800002 - Parcel operation failed. - * @throws { BusinessError } 9800003 - Inner transact failed. - * @throws { BusinessError } 9800004 - System service operation failed. + * @throws { BusinessError } 9800002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters. + * @throws { BusinessError } 9800003 - Failed to complete inner transaction. + * @throws { BusinessError } 9800004 - Failed to get device standby service. Possible cause: A necessary system service is not ready. * @throws { BusinessError } 18700001 - Caller information verification failed. * @syscap SystemCapability.ResourceSchedule.DeviceStandby * @systemapi Hide this for inner system use. diff --git a/api/@ohos.resourceschedule.usageStatistics.d.ts b/api/@ohos.resourceschedule.usageStatistics.d.ts index 216c70f3b4797ff979035e0d6a568fb1f6cf7951..c27d16e1fa25d2fbdd8cec8d22137640bcb47b37 100644 --- a/api/@ohos.resourceschedule.usageStatistics.d.ts +++ b/api/@ohos.resourceschedule.usageStatistics.d.ts @@ -485,9 +485,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup * @systemapi Hide this for inner system use. @@ -509,9 +510,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup * @systemapi Hide this for inner system use. @@ -533,9 +535,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup * @systemapi Hide this for inner system use. @@ -556,9 +559,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000005 - Application is not installed. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10100002 - Failed to get the application group information. @@ -581,9 +585,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000005 - Application is not installed. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10100002 - Failed to get the application group information. @@ -605,9 +610,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000005 - Application is not installed. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10100002 - Failed to get the application group information. @@ -631,9 +637,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000005 - Application is not installed. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10100002 - Failed to get the application group information. @@ -657,9 +664,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000005 - Application is not installed. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10100002 - Failed to get the application group information. @@ -682,9 +690,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000005 - Application is not installed. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10100002 - Failed to get the application group information. @@ -716,9 +725,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -741,9 +751,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -774,9 +785,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -798,9 +810,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -880,9 +893,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -912,9 +926,10 @@ declare namespace usageStatistics { * @throws { BusinessError } 401 - Parameter error. Possible cause: Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -941,9 +956,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -966,9 +982,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -989,9 +1006,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -1012,9 +1030,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -1036,9 +1055,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -1060,9 +1080,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -1083,9 +1104,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -1106,9 +1128,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -1194,9 +1217,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10100001 - Repeated operation on the application group. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup @@ -1218,9 +1242,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10100001 - Repeated operation on the application group. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup @@ -1242,9 +1267,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10100001 - Repeated operation on the application group. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup * @systemapi Hide this for inner system use. @@ -1265,9 +1291,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10100001 - Repeated operation on the application group. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup * @systemapi Hide this for inner system use. @@ -1286,9 +1313,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10100001 - Repeated operation on the application group. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup * @systemapi Hide this for inner system use. @@ -1307,9 +1335,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10100001 - Repeated operation on the application group. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.AppGroup * @systemapi Hide this for inner system use. @@ -1331,9 +1360,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -1356,9 +1386,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -1381,9 +1412,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App @@ -1410,9 +1442,10 @@ declare namespace usageStatistics { * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 10000001 - Memory operation failed. - * @throws { BusinessError } 10000002 - Parcel operation failed. - * @throws { BusinessError } 10000003 - System service operation failed. - * @throws { BusinessError } 10000004 - IPC failed. + * @throws { BusinessError } 10000002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. + * @throws { BusinessError } 10000003 - Failed to get system ability manager. + * @throws { BusinessError } 10000004 - Failed to access the device usage service. * @throws { BusinessError } 10000006 - Failed to get the application information. * @throws { BusinessError } 10000007 - Failed to get the system time. * @syscap SystemCapability.ResourceSchedule.UsageStatistics.App diff --git a/api/@ohos.resourceschedule.workScheduler.d.ts b/api/@ohos.resourceschedule.workScheduler.d.ts index 32cbeaa689bf3a2e1533c1bc3342377f780d44fc..fbe64d4053175ddf061f6f1e2d1412e8da2269b0 100644 --- a/api/@ohos.resourceschedule.workScheduler.d.ts +++ b/api/@ohos.resourceschedule.workScheduler.d.ts @@ -192,7 +192,8 @@ declare namespace workScheduler { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @throws { BusinessError } 9700004 - Check on workInfo failed. * @throws { BusinessError } 9700005 - Calling startWork failed. @@ -210,7 +211,8 @@ declare namespace workScheduler { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types; 3. Parameter verification failed. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @throws { BusinessError } 9700004 - Check on workInfo failed. * @syscap SystemCapability.ResourceSchedule.WorkScheduler @@ -226,7 +228,8 @@ declare namespace workScheduler { * @param { AsyncCallback<WorkInfo> } callback - The callback of the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: Parameter verification failed. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @throws { BusinessError } 9700004 - Check on workInfo failed. * @syscap SystemCapability.ResourceSchedule.WorkScheduler @@ -242,7 +245,8 @@ declare namespace workScheduler { * @returns { Promise<WorkInfo> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: Parameter verification failed. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @throws { BusinessError } 9700004 - Check on workInfo failed. * @syscap SystemCapability.ResourceSchedule.WorkScheduler @@ -259,7 +263,8 @@ declare namespace workScheduler { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @syscap SystemCapability.ResourceSchedule.WorkScheduler * @StageModelOnly @@ -275,7 +280,8 @@ declare namespace workScheduler { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @syscap SystemCapability.ResourceSchedule.WorkScheduler * @StageModelOnly @@ -290,7 +296,8 @@ declare namespace workScheduler { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @syscap SystemCapability.ResourceSchedule.WorkScheduler * @StageModelOnly @@ -304,7 +311,8 @@ declare namespace workScheduler { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameters types. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @syscap SystemCapability.ResourceSchedule.WorkScheduler * @StageModelOnly @@ -320,7 +328,8 @@ declare namespace workScheduler { * @returns { boolean } true if last work running is timeout, otherwise false. * @throws { BusinessError } 401 - Parameter error. Possible causes: Parameter verification failed. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @throws { BusinessError } 9700004 - Check on workInfo failed. * @syscap SystemCapability.ResourceSchedule.WorkScheduler @@ -337,7 +346,8 @@ declare namespace workScheduler { * @param { AsyncCallback<boolean> } callback - The callback of the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: Parameter verification failed. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @throws { BusinessError } 9700004 - Check on workInfo failed. * @syscap SystemCapability.ResourceSchedule.WorkScheduler @@ -353,7 +363,8 @@ declare namespace workScheduler { * @returns { Promise<boolean> } True if last work running is timeout, otherwise false. * @throws { BusinessError } 401 - Parameter error. Possible causes: Parameter verification failed. * @throws { BusinessError } 9700001 - Memory operation failed. - * @throws { BusinessError } 9700002 - Parcel operation failed. + * @throws { BusinessError } 9700002 - Failed to write data into parcel. Possible reasons: 1. Invalid parameters; + * <br> 2. Failed to apply for memory. * @throws { BusinessError } 9700003 - System service operation failed. * @throws { BusinessError } 9700004 - Check on workInfo failed. * @syscap SystemCapability.ResourceSchedule.WorkScheduler diff --git a/api/@ohos.router.d.ets b/api/@ohos.router.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..a884b22fba088fb58736fa5ba8ffdefacaf80c01 --- /dev/null +++ b/api/@ohos.router.d.ets @@ -0,0 +1,1302 @@ +/* + * Copyright (c) 2021 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { AsyncCallback } from './@ohos.base'; + +/** + * @namespace router + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ +/** + * @namespace router + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ +/** + * @namespace router + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ +declare namespace router { + /** + * Router Mode + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Router Mode + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Router Mode + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export enum RouterMode { + /** + * Default route mode. + * The page will be added to the top of the page stack. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Default route mode. + * The page will be added to the top of the page stack. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Default route mode. + * The page will be added to the top of the page stack. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + Standard, + + /** + * Single route mode. + * If the target page already has the same url page in the page stack, + * the same url page closest to the top of the stack will be moved to the top of the stack. + * If the target page url does not exist in the page stack, route will use default route mode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Single route mode. + * If the target page already has the same url page in the page stack, + * the same url page closest to the top of the stack will be moved to the top of the stack. + * If the target page url does not exist in the page stack, route will use default route mode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Single route mode. + * If the target page already has the same url page in the page stack, + * the same url page closest to the top of the stack will be moved to the top of the stack. + * If the target page url does not exist in the page stack, route will use default route mode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + Single, + } + + /** + * @typedef RouterOptions + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 8 + */ + /** + * @typedef RouterOptions + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 11 + */ + export interface RouterOptions { + /** + * URI of the destination page, which supports the following formats: + * 1. Absolute path of the page, which is provided by the pages list in the config.json file. + * Example: + * pages/index/index + * pages/detail/detail + * 2. Particular path. If the URI is a slash (/), the home page is displayed. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 8 + */ + /** + * URI of the destination page, which supports the following formats: + * 1. Absolute path of the page, which is provided by the pages list in the config.json file. + * Example: + * pages/index/index + * pages/detail/detail + * 2. Particular path. If the URI is a slash (/), the home page is displayed. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 11 + */ + url: string; + + /** + * Data that needs to be passed to the destination page during navigation. + * After the destination page is displayed, the parameter can be directly used for the page. + * For example, this.data1 (data1 is the key value of the params used for page navigation.) + * + * @type { ?Object } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 8 + */ + /** + * Data that needs to be passed to the destination page during navigation. + * After the destination page is displayed, the parameter can be directly used for the page. + * For example, this.data1 (data1 is the key value of the params used for page navigation.) + * + * @type { ?Object } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 11 + */ + params?: Object; + + /** + * Set router page stack can be recovered after application is destroyed. When router page stack is recovered, + * top page will be recovered, other page recovered when it backs. the default value is 'true'. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 13 + */ + recoverable?: boolean; + } + + /** + * @typedef RouterState + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * @typedef RouterState + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * @typedef RouterState + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export interface RouterState { + /** + * Index of the current page in the stack. + * NOTE: The index starts from 1 from the bottom to the top of the stack. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Index of the current page in the stack. + * NOTE: The index starts from 1 from the bottom to the top of the stack. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Index of the current page in the stack. + * NOTE: The index starts from 1 from the bottom to the top of the stack. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + index: number; + + /** + * Name of the current page, that is, the file name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Name of the current page, that is, the file name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Name of the current page, that is, the file name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + name: string; + + /** + * Path of the current page. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Path of the current page. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Path of the current page. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + path: string; + + /** + * Data that passed to the destination page during navigation. + * + * @type { Object } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + params: Object; + } + + /** + * @typedef EnableAlertOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * @typedef EnableAlertOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * @typedef EnableAlertOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export interface EnableAlertOptions { + /** + * dialog context. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * dialog context. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * dialog context. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + message: string; + } + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + * @useinstead ohos.router.router#pushUrl + */ + export function push(options: RouterOptions): void; + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function pushUrl(options: RouterOptions, callback: AsyncCallback<void>): void; + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function pushUrl(options: RouterOptions): Promise<void>; + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of pushUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function pushUrl(options: RouterOptions, mode: RouterMode, callback: AsyncCallback<void>): void; + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100002 - Uri error. The URI of the page to redirect is incorrect or does not exist + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function pushUrl(options: RouterOptions, mode: RouterMode): Promise<void>; + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { RouterOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 8 + * @deprecated since 9 + * @useinstead ohos.router.router#replaceUrl + */ + export function replace(options: RouterOptions): void; + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { RouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of replaceUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 9 + */ + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { RouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of replaceUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 11 + */ + export function replaceUrl(options: RouterOptions, callback: AsyncCallback<void>): void; + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { RouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 9 + */ + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { RouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 11 + */ + export function replaceUrl(options: RouterOptions): Promise<void>; + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { RouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of replaceUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 9 + */ + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { RouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of replaceUrl. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 11 + */ + export function replaceUrl(options: RouterOptions, mode: RouterMode, callback: AsyncCallback<void>): void; + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { RouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Failed to get the delegate. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 9 + */ + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { RouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Failed to get the delegate. This error code is thrown only in the standard system. + * @throws { BusinessError } 200002 - Uri error. The URI of the page to be used for replacement is incorrect or does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 11 + */ + export function replaceUrl(options: RouterOptions, mode: RouterMode): Promise<void>; + + /** + * Returns to the previous page or a specified page. + * + * @param { RouterOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Returns to the previous page or a specified page. + * + * @param { RouterOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Returns to the previous page or a specified page. + * + * @param { RouterOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function back(options?: RouterOptions): void; + + /** + * Returns to the specified page. + * + * @param { number } index - index of page. + * @param { Object } [params] - params of page. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function back(index: number, params?: Object): void; + + /** + * Clears all historical pages and retains only the current page at the top of the stack. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Clears all historical pages and retains only the current page at the top of the stack. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Clears all historical pages and retains only the current page at the top of the stack. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function clear(): void; + + /** + * Obtains the number of pages in the current stack. + * + * @returns { string } Number of pages in the stack. The maximum value is 32. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Obtains the number of pages in the current stack. + * + * @returns { string } Number of pages in the stack. The maximum value is 32. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Obtains the number of pages in the current stack. + * + * @returns { string } Number of pages in the stack. The maximum value is 32. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function getLength(): string; + + /** + * Obtains information about the current page state. + * + * @returns { RouterState } Page state. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Obtains information about the current page state. + * + * @returns { RouterState } Page state. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Obtains information about the current page state. + * + * @returns { RouterState } Page state. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function getState(): RouterState; + + /** + * Obtains page information by index. + * + * @param { number } index - Index of page. + * @returns { RouterState | undefined } Page state. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function getStateByIndex(index: number): RouterState | undefined; + + /** + * Obtains page information by url. + * + * @param { string } url - URL of page. + * @returns { Array<RouterState> } Page state. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export function getStateByUrl(url: string): Array<RouterState>; + + /** + * Pop up dialog to ask whether to back + * + * @param { EnableAlertOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + * @useinstead ohos.router.router#showAlertBeforeBackPage + */ + export function enableAlertBeforeBackPage(options: EnableAlertOptions): void; + + /** + * Pop up alert dialog to ask whether to back + * + * @param { EnableAlertOptions } options - Options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Pop up alert dialog to ask whether to back + * + * @param { EnableAlertOptions } options - Options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Pop up alert dialog to ask whether to back + * + * @param { EnableAlertOptions } options - Options. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function showAlertBeforeBackPage(options: EnableAlertOptions): void; + + /** + * Cancel enableAlertBeforeBackPage + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + * @deprecated since 9 + * @useinstead ohos.router.router#hideAlertBeforeBackPage + */ + export function disableAlertBeforeBackPage(): void; + + /** + * Hide alert before back page + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 9 + */ + /** + * Hide alert before back page + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Hide alert before back page + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function hideAlertBeforeBackPage(): void; + + /** + * Obtains information about the current page params. + * + * @returns { Object } Page params. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Obtains information about the current page params. + * + * @returns { Object } Page params. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Obtains information about the current page params. + * + * @returns { Object } Page params. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function getParams(): Object; + + /** + * @typedef NamedRouterOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * @typedef NamedRouterOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export interface NamedRouterOptions { + /** + * Name of the destination named route. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Name of the destination named route. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + name: string; + + /** + * Data that needs to be passed to the destination page during navigation. + * + * @type { ?Object } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Data that needs to be passed to the destination page during navigation. + * + * @type { ?Object } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + params?: Object; + + /** + * Set router page stack can be recovered after application is destroyed. When router page stack is recovered, + * top page will be recovered, other page recovered when it backs. the default value is 'true'. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 13 + */ + recoverable?: boolean; + } + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { NamedRouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of pushNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { NamedRouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of pushNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function pushNamedRoute(options: NamedRouterOptions, callback: AsyncCallback<void>): void; + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { NamedRouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { NamedRouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function pushNamedRoute(options: NamedRouterOptions): Promise<void>; + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { NamedRouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of pushNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { NamedRouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of pushNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function pushNamedRoute(options: NamedRouterOptions, mode: RouterMode, callback: AsyncCallback<void>): void; + + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { NamedRouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { NamedRouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Internal error. + * @throws { BusinessError } 100003 - Page stack error. Too many pages are pushed. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function pushNamedRoute(options: NamedRouterOptions, mode: RouterMode): Promise<void>; + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { NamedRouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of replaceNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { NamedRouterOptions } options - Options. + * @param { AsyncCallback<void> } callback - the callback of replaceNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function replaceNamedRoute(options: NamedRouterOptions, callback: AsyncCallback<void>): void; + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { NamedRouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { NamedRouterOptions } options - Options. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function replaceNamedRoute(options: NamedRouterOptions): Promise<void>; + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { NamedRouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of replaceNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { NamedRouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @param { AsyncCallback<void> } callback - the callback of replaceNamedRoute. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - The UI execution context is not found. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function replaceNamedRoute(options: NamedRouterOptions, mode: RouterMode, callback: AsyncCallback<void>): void; + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { NamedRouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Failed to get the delegate. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 10 + */ + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { NamedRouterOptions } options - Options. + * @param { RouterMode } mode - RouterMode. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 100001 - Failed to get the delegate. This error code is thrown only in the standard system. + * @throws { BusinessError } 100004 - Named route error. The named route does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 11 + */ + export function replaceNamedRoute(options: NamedRouterOptions, mode: RouterMode): Promise<void>; +} +export default router; \ No newline at end of file diff --git a/api/@ohos.router.d.ts b/api/@ohos.router.d.ts index 94200d96b24a4d347faf89724600185b6fa50cd1..0360bc4fd14b1e5990be970208b811e9be4f0ece 100644 --- a/api/@ohos.router.d.ts +++ b/api/@ohos.router.d.ts @@ -140,7 +140,7 @@ declare namespace router { * @syscap SystemCapability.ArkUI.ArkUI.Lite * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ interface RouterOptions { /** @@ -180,7 +180,7 @@ declare namespace router { * @syscap SystemCapability.ArkUI.ArkUI.Lite * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ url: string; @@ -212,7 +212,7 @@ declare namespace router { * @syscap SystemCapability.ArkUI.ArkUI.Lite * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ params?: Object; diff --git a/api/@ohos.rpc.d.ts b/api/@ohos.rpc.d.ts index 8d7f2fc116ced8c0dff6426865ef0721576d7917..b2efd9bbf2f56a9225ad48274955a1912867657b 100644 --- a/api/@ohos.rpc.d.ts +++ b/api/@ohos.rpc.d.ts @@ -18,14 +18,17 @@ * @kit IPCKit */ +/*** if arkts 1.1 */ import type { AsyncCallback } from './@ohos.base'; +/*** endif */ /** * This module provides inter process communication capability. * * @namespace rpc * @syscap SystemCapability.Communication.IPC.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace rpc { /** @@ -1169,7 +1172,8 @@ declare namespace rpc { * {@link Parcelable}, and ParcelableArray. * * @syscap SystemCapability.Communication.IPC.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ class MessageSequence { /** @@ -1235,7 +1239,8 @@ declare namespace rpc { * @returns { string } Return a string value. * @throws { BusinessError } 1900010 - Failed to read data from the message sequence. * @syscap SystemCapability.Communication.IPC.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ readInterfaceToken(): string; @@ -1495,7 +1500,8 @@ declare namespace rpc { * 4.The number of bytes copied to the buffer is different from the length of the obtained string. * @throws { BusinessError } 1900009 - Failed to write data to the message sequence. * @syscap SystemCapability.Communication.IPC.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ writeString(val: string): void; @@ -1702,7 +1708,7 @@ declare namespace rpc { writeRemoteObjectArray(objectArray: IRemoteObject[]): void; /** - * Reads a byte value from the {@link MessageParcel} object. + * Reads a byte value from the {@link MessageSequence} object. * * @returns { number } Return a byte value. * @throws { BusinessError } 1900010 - Failed to read data from the message sequence. @@ -1787,7 +1793,8 @@ declare namespace rpc { * @returns { string } Return a string value. * @throws { BusinessError } 1900010 - Failed to read data from the message sequence. * @syscap SystemCapability.Communication.IPC.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ readString(): string; @@ -2130,7 +2137,7 @@ declare namespace rpc { * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.The number of parameters is incorrect; * 2.The parameter is not an instance of the Ashmem object. - * @throws { BusinessError } 1900003 - Failed to write data to the shared memory. + * @throws { BusinessError } 1900009 - Failed to write data to the message sequence. * @syscap SystemCapability.Communication.IPC.Core * @since 9 */ @@ -2303,7 +2310,8 @@ declare namespace rpc { * * @typedef Parcelable * @syscap SystemCapability.Communication.IPC.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Parcelable { /** @@ -2442,7 +2450,8 @@ declare namespace rpc { * a specific file, and send messages. * * @syscap SystemCapability.Communication.IPC.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ abstract class IRemoteObject { /** @@ -2682,7 +2691,8 @@ declare namespace rpc { * @returns { string } Return the interface descriptor. * @throws { BusinessError } 1900008 - The proxy or remote object is invalid. * @syscap SystemCapability.Communication.IPC.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ getDescriptor(): string; @@ -2757,7 +2767,8 @@ declare namespace rpc { * Public Message Option, using the specified flag type, constructs the specified MessageOption object. * * @syscap SystemCapability.Communication.IPC.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ class MessageOption { /** @@ -2818,7 +2829,8 @@ declare namespace rpc { * @param { number } syncFlags - Specifies whether the SendRequest is called synchronously (default) or asynchronously. * @param { number } waitTime - Maximum wait time for a RPC call. The default value is TF_WAIT_TIME. * @syscap SystemCapability.Communication.IPC.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(syncFlags?: number, waitTime?: number); @@ -2831,6 +2843,16 @@ declare namespace rpc { */ constructor(async?: boolean); + /** + * A constructor used to create a MessageOption instance. + * + * @param { boolean } isAsync - Specifies whether the SendRequest is called synchronously (default) or asynchronously. + * @syscap SystemCapability.Communication.IPC.Core + * @since 20 + * @arkts 1.2 + */ + constructor(isAsync: boolean); + /** * Obtains the SendRequest call flag, which can be synchronous or asynchronous. * @@ -2897,7 +2919,8 @@ declare namespace rpc { * * @extends IRemoteObject * @syscap SystemCapability.Communication.IPC.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ class RemoteObject extends IRemoteObject { /** @@ -2905,7 +2928,8 @@ declare namespace rpc { * * @param { string } descriptor - Specifies interface descriptor. * @syscap SystemCapability.Communication.IPC.Core - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(descriptor: string); @@ -2955,7 +2979,8 @@ declare namespace rpc { * @returns { string } Return the interface descriptor. * @throws { BusinessError } 1900008 - The proxy or remote object is invalid. * @syscap SystemCapability.Communication.IPC.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ getDescriptor(): string; @@ -2965,16 +2990,17 @@ declare namespace rpc { * your own service logic when you are using IPC. * * @param { number } code - Indicates the service request code sent from the peer end. - * @param { MessageSequence } data - Indicates the {@link MessageParcel} object sent from the peer end. + * @param { MessageSequence } data - Indicates the {@link MessageSequence} object sent from the peer end. * @param { MessageSequence } reply - Indicates the response message object sent from the remote service. - * The local service writes the response data to the {@link MessageParcel} object. + * The local service writes the response data to the {@link MessageSequence} object. * @param { MessageOption } options - Indicates whether the operation is synchronous or asynchronous. * @returns { boolean | Promise<boolean> } * Return a simple boolean which is {@code true} if the operation succeeds; * {{@code false} otherwise} when the function call is synchronous. * Return a promise object with a boolean when the function call is asynchronous. * @syscap SystemCapability.Communication.IPC.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ onRemoteMessageRequest( code: number, @@ -3180,7 +3206,8 @@ declare namespace rpc { * * @extends IRemoteObject * @syscap SystemCapability.Communication.IPC.Core - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ class RemoteProxy extends IRemoteObject { /** @@ -3344,7 +3371,8 @@ declare namespace rpc { * @throws { BusinessError } 1900007 - communication failed. * @throws { BusinessError } 1900008 - The proxy or remote object is invalid. * @syscap SystemCapability.Communication.IPC.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ getDescriptor(): string; diff --git a/api/@ohos.runningLock.d.ts b/api/@ohos.runningLock.d.ts index 3a01eb3e4cde24ea80650cff46d6d527a801c434..a2f1725ae501487b02129a4fe8a65f4b7b1e2e98 100644 --- a/api/@ohos.runningLock.d.ts +++ b/api/@ohos.runningLock.d.ts @@ -65,7 +65,6 @@ declare namespace runningLock { * timeout parameter must be of type number. * @throws { BusinessError } 201 – If the permission is denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; - * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @since 9 */ @@ -86,7 +85,6 @@ declare namespace runningLock { * Checks whether a lock is held or in use. * * @returns { boolean } Returns true if the lock is held or in use; returns false if the lock has been released. - * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @since 9 */ @@ -110,7 +108,6 @@ declare namespace runningLock { * * @permission ohos.permission.RUNNING_LOCK * @throws { BusinessError } 201 – If the permission is denied. - * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @since 9 */ @@ -182,7 +179,6 @@ declare namespace runningLock { * @returns { boolean } Whether the specified {@link RunningLockType} is supported. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; * 2. Parameter verification failed. - * @throws { BusinessError } 4900101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.PowerManager.Core * @since 9 */ diff --git a/api/@ohos.screen.d.ts b/api/@ohos.screen.d.ts index 7f1c9526ee9ddec5ca96836dcf0f1a731ab41956..4ae3c4b796f33524277aeb0f48bab28443792026 100644 --- a/api/@ohos.screen.d.ts +++ b/api/@ohos.screen.d.ts @@ -27,7 +27,8 @@ import image from './@ohos.multimedia.image'; * @namespace screen * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace screen { /** @@ -65,7 +66,8 @@ declare namespace screen { * <br>2. Incorrect parameter types. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function on(eventType: 'connect' | 'disconnect' | 'change', callback: Callback<number>): void; @@ -81,7 +83,8 @@ declare namespace screen { * <br>2. Incorrect parameter types. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ function off(eventType: 'connect' | 'disconnect' | 'change', callback?: Callback<number>): void; @@ -190,13 +193,10 @@ declare namespace screen { * @param { Rect } mainScreenRegion mirror screen region * @returns { Promise<number> } Promise used to return the group ID of the secondary screens * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. * @throws { BusinessError } 1400001 - Invalid display or screen. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @atomicservice - * @since 15 + * @since 19 */ function makeMirrorWithRegion(mainScreen: number, mirrorScreen: Array<number>, mainScreenRegion: Rect): Promise<number>; @@ -364,7 +364,7 @@ declare namespace screen { * @throws { BusinessError } 1400003 - This display manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. - * @since 18 + * @since 19 */ function setScreenPrivacyMaskImage(screenId: number, image?: image.PixelMap): Promise<void>; @@ -785,7 +785,7 @@ declare namespace screen { setOrientation(orientation: Orientation): Promise<void>; /** - * Active the mode + * Set the active mode of the screen. * * @param { number } modeIndex Index of the mode to set. * @param { AsyncCallback<void> } callback Callback used to return the result. @@ -800,7 +800,7 @@ declare namespace screen { setScreenActiveMode(modeIndex: number, callback: AsyncCallback<void>): void; /** - * Active the mode + * Sets the active mode of the screen. * * @param { number } modeIndex Index of the mode to set. * @returns { Promise<void> } Promise that returns no value. @@ -901,7 +901,7 @@ declare namespace screen { } /** - * The information of the screen + * The information of the screen mode * * @interface ScreenModeInfo * @syscap SystemCapability.WindowManager.WindowManager.Core @@ -910,7 +910,7 @@ declare namespace screen { */ interface ScreenModeInfo { /** - * Screen id + * Mode id * * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core @@ -956,8 +956,7 @@ declare namespace screen { * @interface Rect * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @atomicservice - * @since 15 + * @since 19 */ interface Rect { /** @@ -966,8 +965,7 @@ declare namespace screen { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @atomicservice - * @since 15 + * @since 19 */ left: number; @@ -977,8 +975,7 @@ declare namespace screen { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @atomicservice - * @since 15 + * @since 19 */ top: number; @@ -988,8 +985,7 @@ declare namespace screen { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @atomicservice - * @since 15 + * @since 19 */ width: number; @@ -999,8 +995,7 @@ declare namespace screen { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @atomicservice - * @since 15 + * @since 19 */ height: number; } diff --git a/api/@ohos.screenshot.d.ts b/api/@ohos.screenshot.d.ts index 6a4afb6997c6ee0f6111d7e33391c65289c449f1..9e1ecf8c65307ef0c809bf2bc46011ac94ef1804 100644 --- a/api/@ohos.screenshot.d.ts +++ b/api/@ohos.screenshot.d.ts @@ -303,14 +303,14 @@ declare namespace screenshot { */ isNotificationNeeded?: boolean; /** - * The capture action is need pointer. + * The capture action is need take screenshots of all displays on this screen. * * @type { ?boolean } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 14 + * @since 20 */ - isPointerNeeded?: boolean; + isCaptureFullOfScreen?: boolean; } } diff --git a/api/@ohos.secureElement.d.ts b/api/@ohos.secureElement.d.ts index 44242f31a3b6b180ab55543e2567a314e0d0f9b7..bfc650866ef9ba406a9ebdf078b3606a21aae823 100644 --- a/api/@ohos.secureElement.d.ts +++ b/api/@ohos.secureElement.d.ts @@ -66,7 +66,6 @@ declare namespace omapi { * * @param { 'stateChanged' } type - The type to register. * @param { Callback<ServiceState> } callback - The callback used to listen for the state change event. - * @throws { BusinessError } 401 - Invalid parameter. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.Communication.SecureElement * @since 18 @@ -78,7 +77,6 @@ declare namespace omapi { * * @param { 'stateChanged' } type - The type to register. * @param { Callback<ServiceState> } callback - The callback used to listen for the state change event. - * @throws { BusinessError } 401 - Invalid parameter. * @throws { BusinessError } 801 - Capability not supported. * @syscap SystemCapability.Communication.SecureElement * @since 18 diff --git a/api/@ohos.security.asset.d.ts b/api/@ohos.security.asset.d.ts index 3f14f6ba4ff72b004dfaa077196d05549b5b74f0..af6ec065e677080e420eb96b9324c7f7335eb815 100644 --- a/api/@ohos.security.asset.d.ts +++ b/api/@ohos.security.asset.d.ts @@ -65,12 +65,12 @@ declare namespace asset { * @since 11 */ /** - * Add an Asset. - * Permission ohos.permission.STORE_PERSISTENT_DATA is required when the Asset needs to be stored persistently - * by setting {@link Tag.IS_PERSISTENT} tag. + * Add an asset. This API uses a promise to return the result. + * To set {@link Tag.IS_PERSISTENT}, the application must have the ohos.permission.STORE_PERSISTENT_DATA permission. * - * @param { AssetMap } attributes - a map object containing attributes of the Asset to be added. - * @returns { Promise<void> } the promise object returned by the function. + * @param { AssetMap } attributes - Attributes of the asset to add, including the asset plaintext, + * access control attributes, and custom data. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 201 - The caller doesn't have the permission. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -157,11 +157,11 @@ declare namespace asset { * @since 12 */ /** - * Add an Asset. - * Permission ohos.permission.STORE_PERSISTENT_DATA is required when the Asset needs to be stored persistently - * by setting {@link Tag.IS_PERSISTENT} tag. + * Add an asset. This API returns the result synchronously. + * To set {@link Tag.IS_PERSISTENT}, the application must have the ohos.permission.STORE_PERSISTENT_DATA permission. * - * @param { AssetMap } attributes - a map object containing attributes of the Asset to be added. + * @param { AssetMap } attributes - Attributes of the asset to add, including the asset plaintext, + * access control attributes, and custom data. * @throws { BusinessError } 201 - The caller doesn't have the permission. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -208,10 +208,11 @@ declare namespace asset { * @since 11 */ /** - * Remove one or more Assets that match a search query. + * Removes one or more assets. This API uses a promise to return the result. * - * @param { AssetMap } query - a map object containing attributes of the Asset to be removed. - * @returns { Promise<void> } the promise object returned by the function. + * @param { AssetMap } query - Attributes of the asset to remove, such as the asset alias, + * access control attributes, and custom data. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Incorrect parameter types. * 2. Parameter verification failed. @@ -281,9 +282,10 @@ declare namespace asset { * @since 12 */ /** - * Remove one or more Assets that match a search query. + * Removes one or more assets. This API returns the result synchronously. * - * @param { AssetMap } query - a map object containing attributes of the Asset to be removed. + * @param { AssetMap } query - Attributes of the asset to remove, such as the asset alias, + * access control attributes, and custom data. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Incorrect parameter types. * 2. Parameter verification failed. @@ -329,11 +331,12 @@ declare namespace asset { * @since 11 */ /** - * Update an Asset that matches a search query. + * Updates an asset. This API uses a promise to return the result. * - * @param { AssetMap } query - a map object containing attributes of the Asset to be updated. - * @param { AssetMap } attributesToUpdate - a map object containing attributes with new values. - * @returns { Promise<void> } the promise object returned by the function. + * @param { AssetMap } query - Attributes of the asset to update, such as the asset alias, + * access control attributes, and custom data. + * @param { AssetMap } attributesToUpdate - New attributes of the asset, such as the asset plaintext and custom data. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -413,10 +416,11 @@ declare namespace asset { * @since 12 */ /** - * Update an Asset that matches a search query. + * Updates an asset. This API returns the result synchronously. * - * @param { AssetMap } query - a map object containing attributes of the Asset to be updated. - * @param { AssetMap } attributesToUpdate - a map object containing attributes with new values. + * @param { AssetMap } query - Attributes of the asset to update, such as the asset alias, + * access control attributes, and custom data. + * @param { AssetMap } attributesToUpdate - New attributes of the asset, such as the asset plaintext and custom data. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -464,10 +468,13 @@ declare namespace asset { * @since 11 */ /** - * Preprocessing (e.g. get challenge) for querying one or more Assets that require user authentication. + * Performs preprocessing for the asset query. This API is used when user authentication is required for + * the access to the asset. After the user authentication is successful, call {@link query} and + * {@link postQuery}. This API uses a promise to return the result. * - * @param { AssetMap } query - a map object containing attributes of the Asset to be queried. - * @returns { Promise<Uint8Array> } the promise object returned by the function. + * @param { AssetMap } query - Attributes of the asset to query, such as the asset alias, + * access control attributes, and custom data. + * @returns { Promise<Uint8Array> } Promise used to return a challenge value. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Incorrect parameter types. * 2. Parameter verification failed. @@ -548,10 +555,13 @@ declare namespace asset { * @since 12 */ /** - * Preprocessing (e.g. get challenge) for querying one or more Assets that require user authentication. + * Performs preprocessing for the asset query. This API is used when user authentication is required for + * the access to the asset. After the user authentication is successful, call {@link querySync} and + * {@link postQuerySync}. This API returns the result synchronously. * - * @param { AssetMap } query - a map object containing attributes of the Asset to be queried. - * @returns { Uint8Array } the challenge value to be used when {@link querySync} is called. + * @param { AssetMap } query - Attributes of the asset to query, such as the asset alias, + * access control attributes, and custom data. + * @returns { Uint8Array } Challenge value. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Incorrect parameter types. * 2. Parameter verification failed. @@ -599,10 +609,14 @@ declare namespace asset { * @since 11 */ /** - * Query one or more Assets that match a search query. + * Queries one or more assets. If user authentication is required for the access to the asset, + * call {@link preQuery} before this API and call {@link postQuery} after this API. + * For details about the development procedure, see Querying an Asset with User Authentication. + * This API uses a promise to return the result. * - * @param { AssetMap } query - a map object containing attributes of the Asset to be queried. - * @returns { Promise<Array<AssetMap>> } the promise object returned by the function. + * @param { AssetMap } query - Attributes of the asset to query, such as the asset alias, + * access control attributes, and custom data. + * @returns { Promise<Array<AssetMap>> } Promise used to return the result obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Incorrect parameter types. * 2. Parameter verification failed. @@ -682,10 +696,14 @@ declare namespace asset { * @since 12 */ /** - * Query one or more Assets that match a search query. + * Queries one or more assets. If user authentication is required for the access to the asset, + * call {@link preQuerySync} before this API and call {@link postQuerySync} after this API. + * For details about the development procedure, see Querying an Asset with User Authentication. + * This API returns the result synchronously. * - * @param { AssetMap } query - a map object containing attributes of the Asset to be queried. - * @returns { Array<AssetMap> } the query result. + * @param { AssetMap } query - Attributes of the asset to query, such as the asset alias, + * access control attributes, and custom data. + * @returns { Array<AssetMap> } Array of query results. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Incorrect parameter types. * 2. Parameter verification failed. @@ -727,10 +745,13 @@ declare namespace asset { * @since 11 */ /** - * Post-processing (e.g. release cached resource) for querying multiple Assets that require user authentication. + * Performs postprocessing for the asset query. This API is used when user authentication is required for + * the access to the asset. This API must be used with {@link preQuery} together. + * This API uses a promise to return the result. * - * @param { AssetMap } handle - a map object containing the handle returned by {@link preQuery}. - * @returns { Promise<void> } the promise object returned by the function. + * @param { AssetMap } handle - Handle of the query operation, + * including the challenge value returned by {@link preQuery}. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -792,9 +813,12 @@ declare namespace asset { * @since 12 */ /** - * Post-processing (e.g. release cached resource) for querying multiple Assets that require user authentication. + * Performs postprocessing for the asset query. This API is used when user authentication is required for + * the access to the asset. This API must be used with {@link preQuerySync} together. + * This API returns the result synchronously. * - * @param { AssetMap } handle - a map object containing the handle returned by {@link preQuerySync}. + * @param { AssetMap } handle - Handle of the query operation, + * including the challenge value returned by {@link preQuerySync}. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -811,6 +835,25 @@ declare namespace asset { */ function postQuerySync(handle: AssetMap): void; + /** + * The ASSET service provides the ability to synchronize Assets between devices. + * This function is used to query the synchronization result. + * + * @param { AssetMap } query - a map object containing attributes of the Asset to be synchronized. + * @returns { Promise<SyncResult> } a promise object that can be resolved into the result of asset synchronization. + * @throws { BusinessError } 24000001 - The ASSET service is unavailable. + * @throws { BusinessError } 24000006 - Insufficient memory. + * @throws { BusinessError } 24000010 - IPC failed. + * @throws { BusinessError } 24000011 - Calling the Bundle Manager service failed. + * @throws { BusinessError } 24000012 - Calling the OS Account service failed. + * @throws { BusinessError } 24000013 - Calling the Access Token service failed. + * @throws { BusinessError } 24000014 - The file operation failed. + * @throws { BusinessError } 24000018 - Parameter verification failed. + * @syscap SystemCapability.Security.Asset + * @since 20 + */ + function querySyncResult(query: AssetMap): Promise<SyncResult>; + /** * A Map type containing tag-value pairs that describe the attributes of an Asset. * @@ -819,7 +862,7 @@ declare namespace asset { * @since 11 */ /** - * A Map type containing tag-value pairs that describe the attributes of an Asset. + * Represents a set of asset attributes in the form of KV pairs. * * @typedef { Map<Tag, Value> } * @syscap SystemCapability.Security.Asset @@ -836,7 +879,7 @@ declare namespace asset { * @since 11 */ /** - * A type that indicates the secret or attribute value of an Asset tag. + * Represents the value of each attribute in {@link AssetMap}. * * @typedef { boolean | number | Uint8Array } * @syscap SystemCapability.Security.Asset @@ -853,7 +896,7 @@ declare namespace asset { * @since 11 */ /** - * An enum type indicates when the Asset is accessible. + * Enumerates the types of access control based on the lock screen status. * * @enum { number } * @syscap SystemCapability.Security.Asset @@ -868,7 +911,7 @@ declare namespace asset { * @since 11 */ /** - * The secret value in the Asset can only be accessed after the device is powered on. + * The asset can be accessed after the device is powered on. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -882,7 +925,10 @@ declare namespace asset { * @since 11 */ /** - * The secret value in the Asset can only be accessed after the device is first unlocked. + * The asset can be accessed only after the device is unlocked for the first time. + * <p><strong>NOTE</strong>: + * If no lock screen password is set, this option is equivalent to <strong>DEVICE_POWERED_ON</strong>. + * </p> * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -896,7 +942,10 @@ declare namespace asset { * @since 11 */ /** - * The secret value in the Asset can only be accessed while the device is unlocked. + * The asset can be accessed only when the device is unlocked. + * <p><strong>NOTE</strong>: + * If no lock screen password is set, this option is equivalent to <strong>DEVICE_POWERED_ON</strong>. + * </p> * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -913,7 +962,7 @@ declare namespace asset { * @since 11 */ /** - * An enum type indicates the user authentication type for Asset access control. + * Enumerates the types of user authentication supported by an asset. * * @enum { number } * @syscap SystemCapability.Security.Asset @@ -928,7 +977,7 @@ declare namespace asset { * @since 11 */ /** - * The access to an Asset doesn't require user authentication. + * No user authentication is required before the asset is accessed. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -942,7 +991,8 @@ declare namespace asset { * @since 11 */ /** - * The access to an Asset requires user authentication using either PIN/pattern/password or biometric traits. + * The asset can be accessed if any user authentication (such as PIN, facial, or fingerprint authentication) + * is successful. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -959,7 +1009,10 @@ declare namespace asset { * @since 11 */ /** - * An enum type indicates the type of Asset synchronization. + * Enumerates the sync types supported by an asset. + * <p><strong>NOTE</strong>: + * This field is an embedded parameter. Currently, asset sync is not supported. + * </p> * * @enum { number } * @syscap SystemCapability.Security.Asset @@ -974,7 +1027,7 @@ declare namespace asset { * @since 11 */ /** - * An Asset with this attribute value is never allowed to be transferred out. + * Asset sync is not allowed. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -988,7 +1041,7 @@ declare namespace asset { * @since 11 */ /** - * An Asset with this attribute value can only be restored to the device from which it was transferred out. + * Asset sync is allowed only on the local device, for example, in data restore on the local device. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1002,7 +1055,7 @@ declare namespace asset { * @since 11 */ /** - * An Asset with this attribute value can only be transferred out to a trusted device (user authorized). + * Asset sync is allowed only between trusted devices, for example, in the case of cloning. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1016,7 +1069,8 @@ declare namespace asset { * @since 12 */ /** - * An Asset with this attribute value can only be transferred out to devices logged in with trusted accounts. + * Asset sync is allowed only between the devices that are logged in with trusted accounts, for example, + * in cloud sync scenarios. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1057,7 +1111,7 @@ declare namespace asset { * @since 11 */ /** - * An enum type indicates the strategy for conflict resolution when handling duplicated Asset alias. + * Enumerates the policies for resolving conflicts (for example, a duplicate alias) when an asset is added. * * @enum { number } * @syscap SystemCapability.Security.Asset @@ -1072,7 +1126,7 @@ declare namespace asset { * @since 11 */ /** - * Directly overwrite an Asset with duplicated alias when a conflict is detected. + * Overwrite the original asset. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1086,7 +1140,7 @@ declare namespace asset { * @since 11 */ /** - * Throw an error so that the caller can take measures when a conflict is detected. + * Throw an exception for the service to perform subsequent processing. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1103,7 +1157,7 @@ declare namespace asset { * @since 11 */ /** - * An enum type indicates the return type of the queried Asset. + * Enumerates the type of information returned by an asset query operation. * * @enum { number } * @syscap SystemCapability.Security.Asset @@ -1118,7 +1172,10 @@ declare namespace asset { * @since 11 */ /** - * Specify that the return data should contain both secret value and attributes. + * The query result contains the asset plaintext and its attributes. + * <p><strong>NOTE</strong>: + * Use this option when you need to query the plaintext of a single asset. + * </p> * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1132,7 +1189,10 @@ declare namespace asset { * @since 11 */ /** - * Specify that the return data contains only attributes. + * The query result contains only the asset attributes. + * <p><strong>NOTE</strong>: + * Use this option when you need to query attributes of multiple assets. + * </p> * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1142,7 +1202,7 @@ declare namespace asset { } /** - * An enum type indicates the additional action to be performed during operation. + * Enumerates the types of additional operation to perform. * * @enum { number } * @syscap SystemCapability.Security.Asset @@ -1150,14 +1210,14 @@ declare namespace asset { */ enum OperationType { /** - * Synchronization is required during operation. + * Sync. * * @syscap SystemCapability.Security.Asset * @since 12 */ NEED_SYNC = 0, /** - * Logout is required during operation. + * Logout. * * @syscap SystemCapability.Security.Asset * @since 12 @@ -1165,6 +1225,43 @@ declare namespace asset { NEED_LOGOUT = 1, } + /** + * Interface of synchronization result. + * + * @typedef SyncResult + * @syscap SystemCapability.Security.Asset + * @since 20 + */ + interface SyncResult { + /** + * The result code of synchronization. + * + * @type { number } + * @readonly + * @syscap SystemCapability.Security.Asset + * @since 20 + */ + readonly resultCode: number; + /** + * The total count of synchronized Assets. + * + * @type { ?number } + * @readonly + * @syscap SystemCapability.Security.Asset + * @since 20 + */ + readonly totalCount?: number; + /** + * The count of Assets that fail to synchronize. + * + * @type { ?number } + * @readonly + * @syscap SystemCapability.Security.Asset + * @since 20 + */ + readonly failedCount?: number; + } + /** * An enum type containing the data type definitions for Asset attribute value. * @@ -1173,7 +1270,7 @@ declare namespace asset { * @since 11 */ /** - * An enum type containing the data type definitions for Asset attribute value. + * Enumerates the asset attribute types. * * @enum { number } * @syscap SystemCapability.Security.Asset @@ -1188,7 +1285,7 @@ declare namespace asset { * @since 11 */ /** - * The data type of Asset attribute value is bool. + * Boolean. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1202,7 +1299,7 @@ declare namespace asset { * @since 11 */ /** - * The data type of Asset attribute value is uint32. + * Number. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1216,7 +1313,7 @@ declare namespace asset { * @since 11 */ /** - * The data type of Asset attribute value is byte array. + * Byte array. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1233,7 +1330,7 @@ declare namespace asset { * @since 11 */ /** - * An enum type containing the Asset attribute tags. + * Enumerate the keys of asset attributes ({@link AssetMap}), which are in key-value (KV) pairs. * * @enum { number } * @syscap SystemCapability.Security.Asset @@ -1248,7 +1345,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the sensitive user data such as passwords and tokens. + * Asset plaintext. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1262,7 +1359,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array identifying an Asset. + * Asset alias, which uniquely identifies an asset. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1276,7 +1373,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a 32-bit unsigned integer indicating when the Asset can be accessed. + * Access control based on the lock screen status. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1290,7 +1387,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a bool indicating whether a screen lock password is required for the device. + * Whether the asset is accessible only when a lock screen password is set. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1304,7 +1401,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a 32-bit unsigned integer indicating the user authentication type for Asset access control. + * Type of user authentication required for accessing the asset. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1318,7 +1415,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a 32-bit unsigned integer indicating the validity period in seconds of user authentication. + * Validity period of the user authentication. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1332,7 +1429,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the authentication challenge for anti-replay protection. + * Challenge for the user authentication. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1346,7 +1443,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the authentication token after a user is verified. + * Authorization token obtained after the user authentication is successful. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1360,7 +1457,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a 32-bit unsigned integer indicating the type of Asset synchronization. + * Asset sync type. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1368,7 +1465,7 @@ declare namespace asset { */ SYNC_TYPE = TagType.NUMBER | 0x10, /** - * A tag whose value is a bool indicating whether Asset is stored persistently. + * Whether to retain the asset when the application is uninstalled. * * @syscap SystemCapability.Security.Asset * @since 11 @@ -1381,7 +1478,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the first user-defined Asset data label (not allow to update). + * Additional asset data customized by the service with integrity protection. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1395,7 +1492,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the second user-defined Asset data label (not allow to update). + * Additional asset data customized by the service with integrity protection. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1409,7 +1506,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the third user-defined Asset data label (not allow to update). + * Additional asset data customized by the service with integrity protection. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1423,7 +1520,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the fourth user-defined Asset data label (not allow to update). + * Additional asset data customized by the service with integrity protection. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1437,7 +1534,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the first user-defined Asset data label (allow to update). + * Additional asset data customized by the service without integrity protection. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1451,7 +1548,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the second user-defined Asset data label (allow to update). + * Additional asset data customized by the service without integrity protection. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1465,7 +1562,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the third user-defined Asset data label (allow to update). + * Additional asset data customized by the service without integrity protection. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1479,7 +1576,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a byte array indicating the fourth user-defined Asset data label (allow to update). + * Additional asset data customized by the service without integrity protection. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1494,8 +1591,8 @@ declare namespace asset { * @since 12 */ /** - * A local tag whose value is a byte array indicating the first user-defined Asset data label (allow to update). - * The information of a local tag will not be synchronized. + * Local information about the asset. The value is assigned by the service without integrity protection and + * will not be synced. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1510,8 +1607,8 @@ declare namespace asset { * @since 12 */ /** - * A local tag whose value is a byte array indicating the second user-defined Asset data label (allow to update). - * The information of a local tag will not be synchronized. + * Local information about the asset. The value is assigned by the service without integrity protection and + * will not be synced. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1526,8 +1623,8 @@ declare namespace asset { * @since 12 */ /** - * A local tag whose value is a byte array indicating the third user-defined Asset data label (allow to update). - * The information of a local tag will not be synchronized. + * Local information about the asset. The value is assigned by the service without integrity protection and + * will not be synced. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1542,8 +1639,8 @@ declare namespace asset { * @since 12 */ /** - * A local tag whose value is a byte array indicating the fourth user-defined Asset data label (allow to update). - * The information of a local tag will not be synchronized. + * Local information about the asset. The value is assigned by the service without integrity protection and + * will not be synced. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1557,7 +1654,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a 32-bit unsigned integer indicating the return type of the queried Asset. + * Type of the asset query result to return. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1571,7 +1668,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a 32-bit unsigned integer indicating the maximum number of returned Assets in one query. + * Maximum number of asset records to return. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1585,7 +1682,10 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a 32-bit unsigned integer indicating the offset of return data in batch query. + * Offset of the asset query result. + * <p><strong>NOTE</strong>: + * This parameter specifies the starting asset record to return in batch asset query. + * </p> * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1599,7 +1699,11 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a 32-bit unsigned integer indicating how the query results are sorted. + * Sorting order of the query results. Currently, the results can be sorted only by + * <strong>ASSET_TAG_DATA_LABEL</strong>. + * <p><strong>NOTE</strong>: + * By default, assets are returned in the order in which they are added. + * </p> * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1613,7 +1717,7 @@ declare namespace asset { * @since 11 */ /** - * A tag whose value is a 32-bit unsigned integer indicating the strategy for resolving Asset conflicts. + * Policy for resolving the conflict (for example, a duplicate alias). * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1627,7 +1731,7 @@ declare namespace asset { * @since 12 */ /** - * A tag whose value is a byte array indicating the update time of an Asset. + * Data update time, in timestamp. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1635,14 +1739,14 @@ declare namespace asset { */ UPDATE_TIME = TagType.BYTES | 0x45, /** - * A tag whose value is a 32-bit unsigned integer indicating the additional action to be performed during operation. + * Additional operation type. * * @syscap SystemCapability.Security.Asset * @since 12 */ OPERATION_TYPE = TagType.NUMBER | 0x46, /** - * A tag whose value is a bool indicating whether the attributes of an asset are required to be encrypted. + * Whether to encrypt the additional asset information customized by the service. * * @syscap SystemCapability.Security.Asset * @atomicservice @@ -1650,7 +1754,7 @@ declare namespace asset { */ REQUIRE_ATTR_ENCRYPTED = TagType.BOOL | 0x47, /** - * A tag whose value is a byte array indicating the group id an asset belongs to. + * Group to which the asset belongs. * * @syscap SystemCapability.Security.Asset * @since 18 @@ -1673,7 +1777,7 @@ declare namespace asset { * @since 11 */ /** - * An enum type containing the Asset error codes. + * Enumerates the error codes. * * @enum { number } * @syscap SystemCapability.Security.Asset @@ -1947,6 +2051,14 @@ declare namespace asset { * @since 14 */ UNSUPPORTED = 24000017, + /** + * The error code indicates that verifying the parameter failed. + * + * @syscap SystemCapability.Security.Asset + * @atomicservice + * @since 20 + */ + PARAM_VERIFICATION_FAILED = 24000018, } } diff --git a/api/@ohos.security.cert.d.ts b/api/@ohos.security.cert.d.ts index 46327cf1317a8a65bd2ab361b3e9c4d9438ee565..54ceff022aa3b26457d1f2f42573f7214cc21585 100644 --- a/api/@ohos.security.cert.d.ts +++ b/api/@ohos.security.cert.d.ts @@ -1,6334 +1,6618 @@ -/* - * Copyright (c) 2022-2024 Huawei Device Co., Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * @file - * @kit DeviceCertificateKit - */ -import type { AsyncCallback } from './@ohos.base'; -import cryptoFramework from './@ohos.security.cryptoFramework'; - -/** - * Provides a series of capabilities related to certificates, - * which supports parsing, verification, and output of certificates, extensions, and CRLs. - * - * @namespace cert - * @syscap SystemCapability.Security.Cert - * @since 9 - */ -/** - * Provides a series of capabilities related to certificates, - * which supports parsing, verification, and output of certificates, extensions, and CRLs. - * - * @namespace cert - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ -/** - * Provides a series of capabilities related to certificates, - * which supports parsing, verification, and output of certificates, extensions, and CRLs. - * - * @namespace cert - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ -declare namespace cert { - /** - * Enum for result code - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Enum for result code - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Enum for result code - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - enum CertResult { - /** - * Indicates that input parameters is invalid. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates that input parameters is invalid. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates that input parameters is invalid. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - INVALID_PARAMS = 401, - - /** - * Indicates that function or algorithm is not supported. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates that function or algorithm is not supported. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates that function or algorithm is not supported. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - NOT_SUPPORT = 801, - - /** - * Indicates the memory error. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates the memory error. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates the memory error. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ERR_OUT_OF_MEMORY = 19020001, - - /** - * Indicates that runtime error. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates that runtime error. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates that runtime error. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ERR_RUNTIME_ERROR = 19020002, - - /** - * Indicates the crypto operation error. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates the crypto operation error. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates the crypto operation error. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ERR_CRYPTO_OPERATION = 19030001, - - /** - * Indicates that the certificate signature verification failed. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates that the certificate signature verification failed. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates that the certificate signature verification failed. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ERR_CERT_SIGNATURE_FAILURE = 19030002, - - /** - * Indicates that the certificate has not taken effect. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates that the certificate has not taken effect. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates that the certificate has not taken effect. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ERR_CERT_NOT_YET_VALID = 19030003, - - /** - * Indicates that the certificate has expired. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates that the certificate has expired. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates that the certificate has expired. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ERR_CERT_HAS_EXPIRED = 19030004, - - /** - * Indicates a failure to obtain the certificate issuer. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates a failure to obtain the certificate issuer. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates a failure to obtain the certificate issuer. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY = 19030005, - - /** - * The key cannot be used for signing a certificate. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * The key cannot be used for signing a certificate. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The key cannot be used for signing a certificate. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ERR_KEYUSAGE_NO_CERTSIGN = 19030006, - - /** - * The key cannot be used for digital signature. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * The key cannot be used for digital signature. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The key cannot be used for digital signature. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE = 19030007, - - /** - * The password may be wrong. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - ERR_MAYBE_WRONG_PASSWORD = 19030008 - } - - /** - * Provides the data blob type. - * - * @typedef DataBlob - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Provides the data blob type. - * - * @typedef DataBlob - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides the data blob type. - * - * @typedef DataBlob - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface DataBlob { - /** - * Indicates the content of data blob. - * - * @type { Uint8Array } - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates the content of data blob. - * - * @type { Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates the content of data blob. - * - * @type { Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - data: Uint8Array; - } - - /** - * Provides the data array type. - * - * @typedef DataArray - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Provides the data array type. - * - * @typedef DataArray - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides the data array type. - * - * @typedef DataArray - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface DataArray { - /** - * Indicates the content of data array. - * - * @type { Array<Uint8Array> } - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Indicates the content of data array. - * - * @type { Array<Uint8Array> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates the content of data array. - * - * @type { Array<Uint8Array> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - data: Array<Uint8Array>; - } - - /** - * Enum for supported cert encoding format. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Enum for supported cert encoding format. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Enum for supported cert encoding format. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - enum EncodingFormat { - /** - * The value of cert DER format. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * The value of cert DER format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The value of cert DER format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - FORMAT_DER = 0, - - /** - * The value of cert PEM format. - * - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * The value of cert PEM format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The value of cert PEM format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - FORMAT_PEM = 1, - - /** - * The value of cert chain PKCS7 format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The value of cert chain PKCS7 format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - FORMAT_PKCS7 = 2 - } - - /** - * Enum for the certificate item type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Enum for the certificate item type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Enum for the certificate item type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - enum CertItemType { - /** - * Indicates to get certificate TBS(to be signed) value. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to get certificate TBS(to be signed) value. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to get certificate TBS(to be signed) value. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - CERT_ITEM_TYPE_TBS = 0, - - /** - * Indicates to get certificate public key. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to get certificate public key. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to get certificate public key. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - CERT_ITEM_TYPE_PUBLIC_KEY = 1, - - /** - * Indicates to get certificate issuer unique id value. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to get certificate issuer unique id value. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to get certificate issuer unique id value. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - CERT_ITEM_TYPE_ISSUER_UNIQUE_ID = 2, - - /** - * Indicates to get certificate subject unique id value. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to get certificate subject unique id value. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to get certificate subject unique id value. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - CERT_ITEM_TYPE_SUBJECT_UNIQUE_ID = 3, - - /** - * Indicates to get certificate extensions value. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to get certificate extensions value. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to get certificate extensions value. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - CERT_ITEM_TYPE_EXTENSIONS = 4 - } - - /** - * Enumerates for the certificate extension object identifier (OID) types. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Enumerates for the certificate extension object identifier (OID) types. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Enumerates for the certificate extension object identifier (OID) types. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - enum ExtensionOidType { - /** - * Indicates to obtain all types of OIDs, including critical and uncritical types. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to obtain all types of OIDs, including critical and uncritical types. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to obtain all types of OIDs, including critical and uncritical types. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - EXTENSION_OID_TYPE_ALL = 0, - - /** - * Indicates to obtain OIDs of the critical type. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to obtain OIDs of the critical type. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to obtain OIDs of the critical type. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - EXTENSION_OID_TYPE_CRITICAL = 1, - - /** - * Indicates to obtain OIDs of the uncritical type. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to obtain OIDs of the uncritical type. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to obtain OIDs of the uncritical type. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - EXTENSION_OID_TYPE_UNCRITICAL = 2 - } - - /** - * Enum for the certificate extension entry type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Enum for the certificate extension entry type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Enum for the certificate extension entry type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - enum ExtensionEntryType { - /** - * Indicates to get extension entry. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to get extension entry. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to get extension entry. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - EXTENSION_ENTRY_TYPE_ENTRY = 0, - - /** - * Indicates to get extension entry critical. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to get extension entry critical. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to get extension entry critical. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - EXTENSION_ENTRY_TYPE_ENTRY_CRITICAL = 1, - - /** - * Indicates to get extension entry value. - * - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Indicates to get extension entry value. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Indicates to get extension entry value. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - EXTENSION_ENTRY_TYPE_ENTRY_VALUE = 2 - } - - /** - * Provides the cert encoding blob type. - * - * @typedef EncodingBlob - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Provides the cert encoding blob type. - * - * @typedef EncodingBlob - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides the cert encoding blob type. - * - * @typedef EncodingBlob - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface EncodingBlob { - /** - * The data input. - * - * @type { Uint8Array } - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * The data input. - * - * @type { Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The data input. - * - * @type { Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - data: Uint8Array; - /** - * The data encoding format. - * - * @type { EncodingFormat } - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * The data encoding format. - * - * @type { EncodingFormat } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The data encoding format. - * - * @type { EncodingFormat } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - encodingFormat: EncodingFormat; - } - - /** - * Provides the cert chain data type. - * - * @typedef CertChainData - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Provides the cert chain data type. - * - * @typedef CertChainData - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides the cert chain data type. - * - * @typedef CertChainData - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface CertChainData { - /** - * The data input. - * - * @type { Uint8Array } - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * The data input. - * - * @type { Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The data input. - * - * @type { Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - data: Uint8Array; - /** - * The number of certs. - * - * @type { number } - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * The number of certs. - * - * @type { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The number of certs. - * - * @type { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - count: number; - /** - * The data encoding format. - * - * @type { EncodingFormat } - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * The data encoding format. - * - * @type { EncodingFormat } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The data encoding format. - * - * @type { EncodingFormat } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - encodingFormat: EncodingFormat; - } - - /** - * Enum for Encoding type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - enum EncodingType { - /** - * Indicates to utf8 type. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ENCODING_UTF8 = 0 - } - - /** - * Provides the x509 cert type. - * - * @typedef X509Cert - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Provides the x509 cert type. - * - * @typedef X509Cert - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides the x509 cert type. - * - * @typedef X509Cert - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface X509Cert { - /** - * Verify the X509 cert. - * - * @param { cryptoFramework.PubKey } key - public key to verify cert. - * @param { AsyncCallback<void> } callback - the callback of verify. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Verify the X509 cert. - * - * @param { cryptoFramework.PubKey } key - public key to verify cert. - * @param { AsyncCallback<void> } callback - the callback of verify. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Verify the X509 cert. - * - * @param { cryptoFramework.PubKey } key - public key to verify cert. - * @param { AsyncCallback<void> } callback - the callback of verify. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - verify(key: cryptoFramework.PubKey, callback: AsyncCallback<void>): void; - - /** - * Verify the X509 cert. - * - * @param { cryptoFramework.PubKey } key - public key to verify cert. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Verify the X509 cert. - * - * @param { cryptoFramework.PubKey } key - public key to verify cert. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Verify the X509 cert. - * - * @param { cryptoFramework.PubKey } key - public key to verify cert. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - verify(key: cryptoFramework.PubKey): Promise<void>; - - /** - * Get X509 cert encoded data. - * - * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert encoded data. - * - * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert encoded data. - * - * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getEncoded(callback: AsyncCallback<EncodingBlob>): void; - - /** - * Get X509 cert encoded data. - * - * @returns { Promise<EncodingBlob> } the promise of X509 cert encoded data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert encoded data. - * - * @returns { Promise<EncodingBlob> } the promise of X509 cert encoded data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert encoded data. - * - * @returns { Promise<EncodingBlob> } the promise of X509 cert encoded data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getEncoded(): Promise<EncodingBlob>; - - /** - * Get X509 cert public key. - * - * @returns { cryptoFramework.PubKey } X509 cert pubKey. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert public key. - * - * @returns { cryptoFramework.PubKey } X509 cert pubKey. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert public key. - * - * @returns { cryptoFramework.PubKey } X509 cert pubKey. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getPublicKey(): cryptoFramework.PubKey; - - /** - * Check the X509 cert validity with date. - * - * @param { string } date - indicates the cert date. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Check the X509 cert validity with date. - * - * @param { string } date - indicates the cert date. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Check the X509 cert validity with date. - * - * @param { string } date - indicates the cert date. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - checkValidityWithDate(date: string): void; - - /** - * Get X509 cert version. - * - * @returns { number } X509 cert version. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert version. - * - * @returns { number } X509 cert version. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert version. - * - * @returns { number } X509 cert version. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getVersion(): number; - - /** - * Get X509 cert serial number. - * - * @returns { number } X509 cert serial number. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 10 - * @useinstead ohos.security.cert.X509Cert.getCertSerialNumber - */ - getSerialNumber(): number; - - /** - * Get X509 cert serial number. - * - * @returns { bigint } X509 cert serial number. - * @throws { BusinessError } 19020002 - runtime error. - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Get X509 cert serial number. - * - * @returns { bigint } X509 cert serial number. - * @throws { BusinessError } 19020002 - runtime error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert serial number. - * - * @returns { bigint } X509 cert serial number. - * @throws { BusinessError } 19020002 - runtime error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getCertSerialNumber(): bigint; - - /** - * Get X509 cert issuer name. - * - * @returns { DataBlob } X509 cert issuer name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert issuer name. - * - * @returns { DataBlob } X509 cert issuer name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert issuer name. - * - * @returns { DataBlob } X509 cert issuer name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getIssuerName(): DataBlob; - - /** - * Get X509 cert subject name. - * - * @returns { DataBlob } X509 cert subject name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert subject name. - * - * @returns { DataBlob } X509 cert subject name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert subject name. - * - * @param { EncodingType } [encodingType] indicates the encoding type, if the encoding type parameter is not set, - * the default ASCII encoding is used. - * @returns { DataBlob } X509 cert subject name. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Incorrect parameter types; - * <br>2. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSubjectName(encodingType?: EncodingType): DataBlob; - - /** - * Get X509 cert not before time. - * - * @returns { string } X509 cert not before time. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert not before time. - * - * @returns { string } X509 cert not before time. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert not before time. - * - * @returns { string } X509 cert not before time. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getNotBeforeTime(): string; - - /** - * Get X509 cert not after time. - * - * @returns { string } X509 cert not after time. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert not after time. - * - * @returns { string } X509 cert not after time. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert not after time. - * - * @returns { string } X509 cert not after time. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getNotAfterTime(): string; - - /** - * Get X509 cert signature. - * - * @returns { DataBlob } X509 cert signature. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert signature. - * - * @returns { DataBlob } X509 cert signature. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert signature. - * - * @returns { DataBlob } X509 cert signature. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSignature(): DataBlob; - - /** - * Get X509 cert signature's algorithm name. - * - * @returns { string } X509 cert signature's algorithm name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert signature's algorithm name. - * - * @returns { string } X509 cert signature's algorithm name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert signature's algorithm name. - * - * @returns { string } X509 cert signature's algorithm name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSignatureAlgName(): string; - - /** - * Get X509 cert signature's algorithm oid. - * - * @returns { string } X509 cert signature's algorithm oid. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert signature's algorithm oid. - * - * @returns { string } X509 cert signature's algorithm oid. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert signature's algorithm oid. - * - * @returns { string } X509 cert signature's algorithm oid. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSignatureAlgOid(): string; - - /** - * Get X509 cert signature's algorithm name. - * - * @returns { DataBlob } X509 cert signature's algorithm name. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert signature's algorithm name. - * - * @returns { DataBlob } X509 cert signature's algorithm name. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert signature's algorithm name. - * - * @returns { DataBlob } X509 cert signature's algorithm name. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSignatureAlgParams(): DataBlob; - - /** - * Get X509 cert key usage. - * - * @returns { DataBlob } X509 cert key usage. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert key usage. - * - * @returns { DataBlob } X509 cert key usage. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert key usage. - * - * @returns { DataBlob } X509 cert key usage. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getKeyUsage(): DataBlob; - - /** - * Get X509 cert extended key usage. - * - * @returns { DataArray } X509 cert extended key usage. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert extended key usage. - * - * @returns { DataArray } X509 cert extended key usage. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert extended key usage. - * - * @returns { DataArray } X509 cert extended key usage. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getExtKeyUsage(): DataArray; - - /** - * Get X509 cert basic constraints path len. - * - * @returns { number } X509 cert basic constraints path len. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert basic constraints path len. - * - * @returns { number } X509 cert basic constraints path len. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert basic constraints path len. - * - * @returns { number } X509 cert basic constraints path len. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getBasicConstraints(): number; - - /** - * Get X509 cert subject alternative name. - * - * @returns { DataArray } X509 cert subject alternative name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert subject alternative name. - * - * @returns { DataArray } X509 cert subject alternative name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert subject alternative name. - * - * @returns { DataArray } X509 cert subject alternative name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSubjectAltNames(): DataArray; - - /** - * Get X509 cert issuer alternative name. - * - * @returns { DataArray } X509 cert issuer alternative name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Get X509 cert issuer alternative name. - * - * @returns { DataArray } X509 cert issuer alternative name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get X509 cert issuer alternative name. - * - * @returns { DataArray } X509 cert issuer alternative name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getIssuerAltNames(): DataArray; - - /** - * Get certificate item value. - * - * @param { CertItemType } itemType - * @returns { DataBlob } cert item value. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Get certificate item value. - * - * @param { CertItemType } itemType - * @returns { DataBlob } cert item value. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get certificate item value. - * - * @param { CertItemType } itemType - * @returns { DataBlob } cert item value. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getItem(itemType: CertItemType): DataBlob; - - /** - * Check the X509 cert if match the parameters. - * - * @param { X509CertMatchParameters } param - indicate the match parameters. - * @returns { boolean } true - match X509Cert, false - not match. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Check the X509 cert if match the parameters. - * - * @param { X509CertMatchParameters } param - indicate the match parameters. - * @returns { boolean } true - match X509Cert, false - not match. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - match(param: X509CertMatchParameters): boolean; - - /** - * Obtain CRL distribution points. - * - * @returns { DataArray } X509 cert CRL distribution points. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getCRLDistributionPoint(): DataArray; - - /** - * Get X500 distinguished name of the issuer. - * - * @returns { X500DistinguishedName } X500 distinguished name object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getIssuerX500DistinguishedName(): X500DistinguishedName; - - /** - * Get X500 distinguished name of the subject. - * - * @returns { X500DistinguishedName } X500 distinguished name object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSubjectX500DistinguishedName(): X500DistinguishedName; - - /** - * Get the string type data of the object. - * - * @returns { string } the string type data of the object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - toString(): string; - - /** - * Get the hash value of DER format data. - * - * @returns { Uint8Array } the hash value of DER format data. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - hashCode(): Uint8Array; - - /** - * Get the extension der encoding data for the corresponding entity. - * - * @returns { CertExtension } the certExtension object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getExtensionsObject(): CertExtension; - } - - /** - * Provides to create X509 certificate object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert data. - * @param { AsyncCallback<X509Cert> } callback - the callback of createX509Cert. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Provides to create X509 certificate object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert data. - * @param { AsyncCallback<X509Cert> } callback - the callback of createX509Cert. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides to create X509 certificate object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert data. - * @param { AsyncCallback<X509Cert> } callback - the callback of createX509Cert. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createX509Cert(inStream: EncodingBlob, callback: AsyncCallback<X509Cert>): void; - - /** - * Provides to create X509 certificate object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert data. - * @returns { Promise<X509Cert> } the promise of X509 cert instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Provides to create X509 certificate object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert data. - * @returns { Promise<X509Cert> } the promise of X509 cert instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides to create X509 certificate object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert data. - * @returns { Promise<X509Cert> } the promise of X509 cert instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createX509Cert(inStream: EncodingBlob): Promise<X509Cert>; - - /** - * The CertExtension interface is used to parse and verify certificate extension. - * - * @typedef CertExtension - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * The CertExtension interface is used to parse and verify certificate extension. - * - * @typedef CertExtension - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The CertExtension interface is used to parse and verify certificate extension. - * - * @typedef CertExtension - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface CertExtension { - /** - * Get certificate extension encoded data. - * - * @returns { EncodingBlob } cert extension encoded data. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Get certificate extension encoded data. - * - * @returns { EncodingBlob } cert extension encoded data. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get certificate extension encoded data. - * - * @returns { EncodingBlob } cert extension encoded data. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getEncoded(): EncodingBlob; - - /** - * Get certificate extension oid list. - * - * @param { ExtensionOidType } valueType - * @returns { DataArray } cert extension OID list value. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Get certificate extension oid list. - * - * @param { ExtensionOidType } valueType - * @returns { DataArray } cert extension OID list value. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get certificate extension oid list. - * - * @param { ExtensionOidType } valueType - * @returns { DataArray } cert extension OID list value. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getOidList(valueType: ExtensionOidType): DataArray; - - /** - * Get certificate extension entry. - * - * @param { ExtensionEntryType } valueType - * @param { DataBlob } oid - * @returns { DataBlob } cert extension entry value. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Get certificate extension entry. - * - * @param { ExtensionEntryType } valueType - * @param { DataBlob } oid - * @returns { DataBlob } cert extension entry value. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get certificate extension entry. - * - * @param { ExtensionEntryType } valueType - * @param { DataBlob } oid - * @returns { DataBlob } cert extension entry value. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getEntry(valueType: ExtensionEntryType, oid: DataBlob): DataBlob; - - /** - * Check whether the certificate is a CA(The keyusage contains signature usage and the value of cA in BasicConstraints is true). - * If not a CA, return -1, otherwise return the path length constraint in BasicConstraints. - * If the certificate is a CA and the path length constraint does not appear, then return -2 to indicate that there is no limit to path length. - * - * @returns { number } path length constraint. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Check whether the certificate is a CA(The keyusage contains signature usage and the value of cA in BasicConstraints is true). - * If not a CA, return -1, otherwise return the path length constraint in BasicConstraints. - * If the certificate is a CA and the path length constraint does not appear, then return -2 to indicate that there is no limit to path length. - * - * @returns { number } path length constraint. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Check whether the certificate is a CA(The keyusage contains signature usage and the value of cA in BasicConstraints is true). - * If not a CA, return -1, otherwise return the path length constraint in BasicConstraints. - * If the certificate is a CA and the path length constraint does not appear, then return -2 to indicate that there is no limit to path length. - * - * @returns { number } path length constraint. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - checkCA(): number; - - /** - * Check if exists Unsupported critical extension. - * - * @returns { boolean } true - exists unsupported critical extension, false - else. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Check if exists Unsupported critical extension. - * - * @returns { boolean } true - exists unsupported critical extension, false - else. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - hasUnsupportedCriticalExtension(): boolean; - } - - /** - * Provides to create certificate extension object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert extensions data. - * @param { AsyncCallback<CertExtension> } callback - the callback of of certificate extension instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Provides to create certificate extension object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert extensions data. - * @param { AsyncCallback<CertExtension> } callback - the callback of of certificate extension instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides to create certificate extension object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert extensions data. - * @param { AsyncCallback<CertExtension> } callback - the callback of of certificate extension instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createCertExtension(inStream: EncodingBlob, callback: AsyncCallback<CertExtension>): void; - - /** - * Provides to create certificate extension object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert extensions data. - * @returns { Promise<CertExtension> } the promise of certificate extension instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @since 10 - */ - /** - * Provides to create certificate extension object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert extensions data. - * @returns { Promise<CertExtension> } the promise of certificate extension instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides to create certificate extension object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert extensions data. - * @returns { Promise<CertExtension> } the promise of certificate extension instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createCertExtension(inStream: EncodingBlob): Promise<CertExtension>; - - /** - * Interface of X509CrlEntry. - * - * @typedef X509CrlEntry - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRLEntry - */ - interface X509CrlEntry { - /** - * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. - * - * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRLEntry#getEncoded - */ - getEncoded(callback: AsyncCallback<EncodingBlob>): void; - - /** - * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. - * - * @returns { Promise<EncodingBlob> } the promise of crl entry blob data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRLEntry#getEncoded - */ - getEncoded(): Promise<EncodingBlob>; - - /** - * Get the serial number from this x509crl entry. - * - * @returns { number } serial number of crl entry. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRLEntry#getSerialNumber - */ - getSerialNumber(): number; - - /** - * Get the issuer of the x509 certificate described by this entry. - * - * @returns { DataBlob } DataBlob of issuer. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRLEntry#getCertIssuer - */ - getCertIssuer(): DataBlob; - - /** - * Get the revocation date from x509crl entry. - * - * @returns { string } string of revocation date. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRLEntry#getRevocationDate - */ - getRevocationDate(): string; - } - - /** - * Interface of X509CRLEntry. - * - * @typedef X509CRLEntry - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Interface of X509CRLEntry. - * - * @typedef X509CRLEntry - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface X509CRLEntry { - /** - * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. - * - * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. - * - * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getEncoded(callback: AsyncCallback<EncodingBlob>): void; - - /** - * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. - * - * @returns { Promise<EncodingBlob> } the promise of CRL entry blob data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. - * - * @returns { Promise<EncodingBlob> } the promise of CRL entry blob data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getEncoded(): Promise<EncodingBlob>; - - /** - * Get the serial number from this x509CRL entry. - * - * @returns { bigint } serial number of CRL entry. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the serial number from this x509CRL entry. - * - * @returns { bigint } serial number of CRL entry. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSerialNumber(): bigint; - - /** - * Get the issuer of the x509 certificate described by this entry. - * - * @returns { DataBlob } DataBlob of issuer. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the issuer of the x509 certificate described by this entry. - * - * @returns { DataBlob } DataBlob of issuer. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getCertIssuer(): DataBlob; - - /** - * Get the revocation date from x509CRL entry. - * - * @returns { string } string of revocation date. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the revocation date from x509CRL entry. - * - * @returns { string } string of revocation date. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getRevocationDate(): string; - - /** - * Get Extensions of CRL Entry. - * - * @returns { DataBlob } DataBlob of extensions - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get Extensions of CRL Entry. - * - * @returns { DataBlob } DataBlob of extensions - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getExtensions(): DataBlob; - - /** - * Check if CRL Entry has extension . - * - * @returns { boolean } true - CRL Entry has extension, false - else. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Check if CRL Entry has extension . - * - * @returns { boolean } true - CRL Entry has extension, false - else. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - hasExtensions(): boolean; - - /** - * Get X500 distinguished name of the issuer. - * - * @returns { X500DistinguishedName } X500 distinguished name object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getCertIssuerX500DistinguishedName(): X500DistinguishedName; - - /** - * Get the string type data of the object. - * - * @returns { string } the string type data of the object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - toString(): string; - - /** - * Get the hash value of DER format data. - * - * @returns { Uint8Array } the hash value of DER format data. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - hashCode(): Uint8Array; - - /** - * Get the extension der encoding data for the corresponding entity. - * - * @returns { CertExtension } the certExtension object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getExtensionsObject(): CertExtension; - } - - /** - * Interface of X509Crl. - * - * @typedef X509Crl - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL - */ - interface X509Crl { - /** - * Check if the given certificate is on this CRL. - * - * @param { X509Cert } cert - input cert data. - * @returns { boolean } result of Check cert is revoked or not. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#isRevoked - */ - isRevoked(cert: X509Cert): boolean; - - /** - * Returns the type of this CRL. - * - * @returns { string } string of crl type. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getType - */ - getType(): string; - - /** - * Get the der coding format. - * - * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getEncoded - */ - getEncoded(callback: AsyncCallback<EncodingBlob>): void; - - /** - * Get the der coding format. - * - * @returns { Promise<EncodingBlob> } the promise of crl blob data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getEncoded - */ - getEncoded(): Promise<EncodingBlob>; - - /** - * Use the public key to verify the signature of CRL. - * - * @param { cryptoFramework.PubKey } key - input public Key. - * @param { AsyncCallback<void> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#verify - */ - verify(key: cryptoFramework.PubKey, callback: AsyncCallback<void>): void; - - /** - * Use the public key to verify the signature of CRL. - * - * @param { cryptoFramework.PubKey } key - input public Key. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#verify - */ - verify(key: cryptoFramework.PubKey): Promise<void>; - - /** - * Get version number from CRL. - * - * @returns { number } version of crl. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getVersion - */ - getVersion(): number; - - /** - * Get the issuer name from CRL. Issuer means the entity that signs and publishes the CRL. - * - * @returns { DataBlob } issuer name of crl. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getIssuerName - */ - getIssuerName(): DataBlob; - - /** - * Get lastUpdate value from CRL. - * - * @returns { string } last update of crl. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getLastUpdate - */ - getLastUpdate(): string; - - /** - * Get nextUpdate value from CRL. - * - * @returns { string } next update of crl. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getNextUpdate - */ - getNextUpdate(): string; - - /** - * This method can be used to find CRL entries in specified CRLs. - * - * @param { number } serialNumber - serial number of crl. - * @returns { X509CrlEntry } next update of crl. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getRevokedCert - */ - getRevokedCert(serialNumber: number): X509CrlEntry; - - /** - * This method can be used to find CRL entries in specified cert. - * - * @param { X509Cert } cert - cert of x509. - * @returns { X509CrlEntry } X509CrlEntry instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getRevokedCertWithCert - */ - getRevokedCertWithCert(cert: X509Cert): X509CrlEntry; - - /** - * Get all entries in this CRL. - * - * @param { AsyncCallback<Array<X509CrlEntry>> } callback - the callback of getRevokedCerts. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getRevokedCerts - */ - getRevokedCerts(callback: AsyncCallback<Array<X509CrlEntry>>): void; - - /** - * Get all entries in this CRL. - * - * @returns { Promise<Array<X509CrlEntry>> } the promise of X509CrlEntry instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getRevokedCerts - */ - getRevokedCerts(): Promise<Array<X509CrlEntry>>; - - /** - * Get the CRL information encoded by Der from this CRL. - * - * @returns { DataBlob } DataBlob of tbs info. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getTBSInfo - */ - getTbsInfo(): DataBlob; - - /** - * Get signature value from CRL. - * - * @returns { DataBlob } DataBlob of signature. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getSignature - */ - getSignature(): DataBlob; - - /** - * Get the signature algorithm name of the CRL signature algorithm. - * - * @returns { string } string of signature algorithm name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getSignatureAlgName - */ - getSignatureAlgName(): string; - - /** - * Get the signature algorithm oid string from CRL. - * - * @returns { string } string of signature algorithm oid. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getSignatureAlgOid - */ - getSignatureAlgOid(): string; - - /** - * Get the der encoded signature algorithm parameters from the CRL signature algorithm. - * - * @returns { DataBlob } DataBlob of signature algorithm params. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert.X509CRL#getSignatureAlgParams - */ - getSignatureAlgParams(): DataBlob; - } - - /** - * Provides to create X509 CRL object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicates the input CRL data. - * @param { AsyncCallback<X509Crl> } callback - the callback of createX509Crl to return x509 CRL instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert#createX509CRL - */ - function createX509Crl(inStream: EncodingBlob, callback: AsyncCallback<X509Crl>): void; - - /** - * Provides to create X509 CRL object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicates the input CRL data. - * @returns { Promise<X509Crl> } the promise of x509 CRL instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @since 9 - * @deprecated since 11 - * @useinstead ohos.security.cert#createX509CRL - */ - function createX509Crl(inStream: EncodingBlob): Promise<X509Crl>; - - /** - * Interface of X509CRL. - * - * @typedef X509CRL - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Interface of X509CRL. - * - * @typedef X509CRL - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface X509CRL { - /** - * Check if the given certificate is on this CRL. - * - * @param { X509Cert } cert - input cert data. - * @returns { boolean } result of Check cert is revoked or not. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Check if the given certificate is on this CRL. - * - * @param { X509Cert } cert - input cert data. - * @returns { boolean } result of Check cert is revoked or not. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - isRevoked(cert: X509Cert): boolean; - - /** - * Returns the type of this CRL. - * - * @returns { string } string of CRL type. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Returns the type of this CRL. - * - * @returns { string } string of CRL type. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getType(): string; - - /** - * Get the der coding format. - * - * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the der coding format. - * - * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getEncoded(callback: AsyncCallback<EncodingBlob>): void; - - /** - * Get the der coding format. - * - * @returns { Promise<EncodingBlob> } the promise of CRL blob data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the der coding format. - * - * @returns { Promise<EncodingBlob> } the promise of CRL blob data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getEncoded(): Promise<EncodingBlob>; - - /** - * Use the public key to verify the signature of CRL. - * - * @param { cryptoFramework.PubKey } key - input public Key. - * @param { AsyncCallback<void> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Use the public key to verify the signature of CRL. - * - * @param { cryptoFramework.PubKey } key - input public Key. - * @param { AsyncCallback<void> } callback - the callback of getEncoded. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - verify(key: cryptoFramework.PubKey, callback: AsyncCallback<void>): void; - - /** - * Use the public key to verify the signature of CRL. - * - * @param { cryptoFramework.PubKey } key - input public Key. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Use the public key to verify the signature of CRL. - * - * @param { cryptoFramework.PubKey } key - input public Key. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - verify(key: cryptoFramework.PubKey): Promise<void>; - - /** - * Get version number from CRL. - * - * @returns { number } version of CRL. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get version number from CRL. - * - * @returns { number } version of CRL. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getVersion(): number; - - /** - * Get the issuer name from CRL. Issuer means the entity that signs and publishes the CRL. - * - * @returns { DataBlob } issuer name of CRL. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the issuer name from CRL. Issuer means the entity that signs and publishes the CRL. - * - * @returns { DataBlob } issuer name of CRL. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getIssuerName(): DataBlob; - - /** - * Get lastUpdate value from CRL. - * - * @returns { string } last update of CRL. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get lastUpdate value from CRL. - * - * @returns { string } last update of CRL. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getLastUpdate(): string; - - /** - * Get nextUpdate value from CRL. - * - * @returns { string } next update of CRL. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get nextUpdate value from CRL. - * - * @returns { string } next update of CRL. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getNextUpdate(): string; - - /** - * This method can be used to find CRL entries in specified CRLs. - * - * @param { bigint } serialNumber - serial number of CRL. - * @returns { X509CRLEntry } next update of CRL. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * This method can be used to find CRL entries in specified CRLs. - * - * @param { bigint } serialNumber - serial number of CRL. - * @returns { X509CRLEntry } next update of CRL. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getRevokedCert(serialNumber: bigint): X509CRLEntry; - - /** - * This method can be used to find CRL entries in specified cert. - * - * @param { X509Cert } cert - cert of x509. - * @returns { X509CRLEntry } X509CRLEntry instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * This method can be used to find CRL entries in specified cert. - * - * @param { X509Cert } cert - cert of x509. - * @returns { X509CRLEntry } X509CRLEntry instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getRevokedCertWithCert(cert: X509Cert): X509CRLEntry; - - /** - * Get all entries in this CRL. - * - * @param { AsyncCallback<Array<X509CRLEntry>> } callback - the callback of getRevokedCerts. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get all entries in this CRL. - * - * @param { AsyncCallback<Array<X509CRLEntry>> } callback - the callback of getRevokedCerts. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getRevokedCerts(callback: AsyncCallback<Array<X509CRLEntry>>): void; - - /** - * Get all entries in this CRL. - * - * @returns { Promise<Array<X509CRLEntry>> } the promise of X509CRLEntry instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get all entries in this CRL. - * - * @returns { Promise<Array<X509CRLEntry>> } the promise of X509CRLEntry instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getRevokedCerts(): Promise<Array<X509CRLEntry>>; - - /** - * Get the CRL information encoded by Der from this CRL. - * - * @returns { DataBlob } DataBlob of tbs info. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the CRL information encoded by Der from this CRL. - * - * @returns { DataBlob } DataBlob of tbs info. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getTBSInfo(): DataBlob; - - /** - * Get signature value from CRL. - * - * @returns { DataBlob } DataBlob of signature. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get signature value from CRL. - * - * @returns { DataBlob } DataBlob of signature. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSignature(): DataBlob; - - /** - * Get the signature algorithm name of the CRL signature algorithm. - * - * @returns { string } string of signature algorithm name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the signature algorithm name of the CRL signature algorithm. - * - * @returns { string } string of signature algorithm name. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSignatureAlgName(): string; - - /** - * Get the signature algorithm oid string from CRL. - * - * @returns { string } string of signature algorithm oid. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the signature algorithm oid string from CRL. - * - * @returns { string } string of signature algorithm oid. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSignatureAlgOid(): string; - - /** - * Get the der encoded signature algorithm parameters from the CRL signature algorithm. - * - * @returns { DataBlob } DataBlob of signature algorithm params. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the der encoded signature algorithm parameters from the CRL signature algorithm. - * - * @returns { DataBlob } DataBlob of signature algorithm params. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getSignatureAlgParams(): DataBlob; - - /** - * Get Extensions of CRL Entry. - * - * @returns { DataBlob } DataBlob of extensions - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get Extensions of CRL Entry. - * - * @returns { DataBlob } DataBlob of extensions - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getExtensions(): DataBlob; - - /** - * Check if the X509 CRL match the parameters. - * - * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. - * @returns { boolean } true - match X509CRL, false - not match. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Check if the X509 CRL match the parameters. - * - * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. - * @returns { boolean } true - match X509CRL, false - not match. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - match(param: X509CRLMatchParameters): boolean; - - /** - * Get X500 distinguished name of the issuer. - * - * @returns { X500DistinguishedName } X500 distinguished name object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getIssuerX500DistinguishedName(): X500DistinguishedName; - - /** - * Get the string type data of the object. - * - * @returns { string } the string type data of the object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - toString(): string; - - /** - * Get the hash value of DER format data. - * - * @returns { Uint8Array } the hash value of DER format data. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - hashCode(): Uint8Array; - - /** - * Get the extension der encoding data for the corresponding entity. - * - * @returns { CertExtension } the certExtension object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getExtensionsObject(): CertExtension; - } - - /** - * Provides to create X509 CRL object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicates the input CRL data. - * @param { AsyncCallback<X509CRL> } callback - the callback of createX509CRL to return x509 CRL instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides to create X509 CRL object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicates the input CRL data. - * @param { AsyncCallback<X509CRL> } callback - the callback of createX509CRL to return x509 CRL instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createX509CRL(inStream: EncodingBlob, callback: AsyncCallback<X509CRL>): void; - - /** - * Provides to create X509 CRL object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicates the input CRL data. - * @returns { Promise<X509CRL> } the promise of x509 CRL instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides to create X509 CRL object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicates the input CRL data. - * @returns { Promise<X509CRL> } the promise of x509 CRL instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createX509CRL(inStream: EncodingBlob): Promise<X509CRL>; - - /** - * Certification chain validator. - * - * @typedef CertChainValidator - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Certification chain validator. - * - * @typedef CertChainValidator - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Certification chain validator. - * - * @typedef CertChainValidator - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface CertChainValidator { - /** - * Validate the cert chain. - * - * @param { CertChainData } certChain - indicate the cert chain validator data. - * @param { AsyncCallback<void> } callback - the callback of validate. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Validate the cert chain. - * - * @param { CertChainData } certChain - indicate the cert chain validator data. - * @param { AsyncCallback<void> } callback - the callback of validate. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Validate the cert chain. - * - * @param { CertChainData } certChain - indicate the cert chain validator data. - * @param { AsyncCallback<void> } callback - the callback of validate. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - validate(certChain: CertChainData, callback: AsyncCallback<void>): void; - - /** - * Validate the cert chain. - * - * @param { CertChainData } certChain - indicate the cert chain validator data. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Validate the cert chain. - * - * @param { CertChainData } certChain - indicate the cert chain validator data. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Validate the cert chain. - * - * @param { CertChainData } certChain - indicate the cert chain validator data. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - validate(certChain: CertChainData): Promise<void>; - - /** - * The cert chain related algorithm. - * - * @type { string } - * @readonly - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * The cert chain related algorithm. - * - * @type { string } - * @readonly - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The cert chain related algorithm. - * - * @type { string } - * @readonly - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - readonly algorithm: string; - } - - /** - * Provides to create certificate chain object. The returned object provides the verification capability. - * - * @param { string } algorithm - indicates the cert chain validator type. - * @returns { CertChainValidator } the cert chain validator instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @since 9 - */ - /** - * Provides to create certificate chain object. The returned object provides the verification capability. - * - * @param { string } algorithm - indicates the cert chain validator type. - * @returns { CertChainValidator } the cert chain validator instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides to create certificate chain object. The returned object provides the verification capability. - * - * @param { string } algorithm - indicates the cert chain validator type. - * @returns { CertChainValidator } the cert chain validator instance. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createCertChainValidator(algorithm: string): CertChainValidator; - - /** - * Enum for general name use type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - enum GeneralNameType { - /** - * Indicates the name used for other. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - GENERAL_NAME_TYPE_OTHER_NAME = 0, - - /** - * Indicates the name used for RFC822. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - GENERAL_NAME_TYPE_RFC822_NAME = 1, - - /** - * Indicates the name used for DNS. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - GENERAL_NAME_TYPE_DNS_NAME = 2, - - /** - * Indicates the name used for X.400 address. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - GENERAL_NAME_TYPE_X400_ADDRESS = 3, - - /** - * Indicates the name used for X.500 directory. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - GENERAL_NAME_TYPE_DIRECTORY_NAME = 4, - - /** - * Indicates the name used for EDI. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - GENERAL_NAME_TYPE_EDI_PARTY_NAME = 5, - - /** - * Indicates the name used for URI. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - GENERAL_NAME_TYPE_UNIFORM_RESOURCE_ID = 6, - - /** - * Indicates the name used for IP address. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - GENERAL_NAME_TYPE_IP_ADDRESS = 7, - - /** - * Indicates the name used for registered ID. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - GENERAL_NAME_TYPE_REGISTERED_ID = 8 - } - - /** - * GeneralName object - * - * @typedef GeneralName - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface GeneralName { - /** - * The general name type. - * - * @type { GeneralNameType } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - type: GeneralNameType; - - /** - * The general name in DER format - * - * @type { ?Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - name?: Uint8Array; - } - - /** - * X509 Cert match parameters - * - * @typedef X509CertMatchParameters - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * X509 Cert match parameters - * - * @typedef X509CertMatchParameters - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface X509CertMatchParameters { - /** - * To match SubjectAlternativeNames of cert extensions: - * [Rule] - * null : Do not match. - * NOT null : match after [matchAllSubjectAltNames] - * - * @type { ?Array<GeneralName> } SubjectAlternativeNames is in DER encoding format - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - subjectAlternativeNames?: Array<GeneralName>; - - /** - * Indicate if match all subject alternate name: - * [Rule] - * true : match if [subjectAlternativeNames] is equal with all of [SubjectAlternativeNames of cert extensions] - * false : match if [subjectAlternativeNames] is only equal with one of [SubjectAlternativeNames of cert extensions] - * - * @type { ?boolean } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - matchAllSubjectAltNames?: boolean; - - /** - * To match AuthorityKeyIdentifier of cert extensions in DER encoding: - * [Rule] - * null : Do not match. - * NOT null : match if it is equal with [AuthorityKeyIdentifier of cert extensions] in DER encoding - * - * @type { ?Uint8Array } the key identifier - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - authorityKeyIdentifier?: Uint8Array; - - /** - * To match BaseConstraints.pathLenConstraint of cert extensions: - * [Rule] - * >=0 : The certificate must contain BaseConstraints extension, and the cA field in the extension takes. - * -2 : The cA field in the BaseConstraints extension of the certificate must be set to false or the certificate does not contain BaseConstraints extension. - * other : Do not match. - * - * @type { ?number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - minPathLenConstraint?: number; - - /** - * To match X509Cert: - * [Rule] - * null : Do not match. - * NOT null : match if x509Cert.getEncoding is equal. - * - * @type { ?X509Cert } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * To match X509Cert: - * [Rule] - * null : Do not match. - * NOT null : match if x509Cert.getEncoding is equal. - * - * @type { ?X509Cert } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - x509Cert?: X509Cert; - - /** - * To match the validDate of cert: - * [Rule] - * null : Do not match. - * NOT null : match if [notBefore of cert] <= [validDate] <= [notAfter of cert]. - * - * @type { ?string } format is YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * To match the validDate of cert: - * [Rule] - * null : Do not match. - * NOT null : match if [notBefore of cert] <= [validDate] <= [notAfter of cert]. - * - * @type { ?string } format is YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - validDate?: string; - - /** - * To match the issuer of cert: - * [Rule] - * null : Do not match. - * NOT null : match if it is equal with [issuer of cert] in DER encoding. - * - * @type { ?Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * To match the issuer of cert: - * [Rule] - * null : Do not match. - * NOT null : match if it is equal with [issuer of cert] in DER encoding. - * - * @type { ?Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - issuer?: Uint8Array; - - /** - * To match the ExtendedKeyUsage of cert extensions: - * [Rule] - * null : Do not match. - * NOT null : match ok if [ExtendedKeyUsage of cert extensions] is null, or - * [ExtendedKeyUsage of cert extensions] include [extendedKeyUsage]. - * - * @type { ?Array<string> } array of oIDs. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - extendedKeyUsage?: Array<string>; - - /** - * The X509Certificate must have subject and subject alternative names that meet the specified name constraints: - * [Rule] - * null : Do not match. - * NOT null : match ok if [NameConstraints of cert extensions] is null, or - * [NameConstraints of cert extensions] include [nameConstraints]. - * - * @type { ?Uint8Array } ASN.1 DER encoded form of nameConstraints - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - nameConstraints?: Uint8Array; - - /** - * The X509Certificate must have subject and subject alternative names that meet the specified name constraints: - * [Rule] - * null : Do not match. - * NOT null : match ok if [Certificate Policies of cert extensions] is null, or - * [Certificate Policies of cert extensions] include [certPolicy]. - * - * @type { ?Array<string> } array of oIDs. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - certPolicy?: Array<string>; - - /** - * The specified date must fall within the private key validity period for the X509Certificate: - * [Rule] - * null : Do not match. - * NOT null : match ok if [Private Key Valid Period of cert extensions] is null, or - * [privateKeyValid] fall in [Private Key Valid Period of cert extensions]. - * - * @type { ?string } format is YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - privateKeyValid?: string; - - /** - * To match the KeyUsage of cert extensions: - * [Rule] - * null : Do not match. - * NOT null : match ok if [KeyUsage of cert extensions] is null, or - * [KeyUsage of cert extensions] include [keyUsage]. - * - * @type { ?Array<boolean> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * To match the KeyUsage of cert extensions: - * [Rule] - * null : Do not match. - * NOT null : match ok if [KeyUsage of cert extensions] is null, or - * [KeyUsage of cert extensions] include [keyUsage]. - * - * @type { ?Array<boolean> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - keyUsage?: Array<boolean>; - - /** - * The specified serial number must match the serialnumber for the X509Certificate: - * [Rule] - * null : Do not match. - * NOT null : match ok if it is equal with [serialNumber of cert]. - * - * @type { ?bigint } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The specified serial number must match the serialnumber for the X509Certificate: - * [Rule] - * null : Do not match. - * NOT null : match ok if it is equal with [serialNumber of cert]. - * - * @type { ?bigint } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - serialNumber?: bigint; - - /** - * The specified value must match the subject for the X509Certificate: - * [Rule] - * null : Do not match. - * NOT null : match ok if it is equal with [subject of cert]. - * - * @type { ?Uint8Array } subject in DER encoding format - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The specified value must match the subject for the X509Certificate: - * [Rule] - * null : Do not match. - * NOT null : match ok if it is equal with [subject of cert]. - * - * @type { ?Uint8Array } subject in DER encoding format - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - subject?: Uint8Array; - - /** - * The specified value must match the Subject Key Identifier extension for the X509Certificate: - * [Rule] - * null : Do not match. - * NOT null : match ok if it is equal with [Subject Key Identifier of cert extensions]. - * - * @type { ?Uint8Array } subjectKeyIdentifier in DER encoding format ?? - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - subjectKeyIdentifier?: Uint8Array; - - /** - * The specified value must match the publicKey for the X509Certificate: - * [Rule] - * null : Do not match. - * NOT null : match ok if it is equal with [publicKey of cert]. - * - * @type { ?DataBlob } publicKey - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The specified value must match the publicKey for the X509Certificate: - * [Rule] - * null : Do not match. - * NOT null : match ok if it is equal with [publicKey of cert]. - * - * @type { ?DataBlob } publicKey - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - publicKey?: DataBlob; - - /** - * The specified value must match the publicKey for the X509Certificate: - * [Rule] - * null : Do not match. - * NOT null : match ok if it is equal with [publicKey of cert]. - * - * @type { ?string } the object identifier (OID) of the signature algorithm to check. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The specified value must match the publicKey for the X509Certificate: - * [Rule] - * null : Do not match. - * NOT null : match ok if it is equal with [publicKey of cert]. - * - * @type { ?string } the object identifier (OID) of the signature algorithm to check. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - publicKeyAlgID?: string; - } - - /** - * X509 CRL match parameters - * - * @typedef X509CRLMatchParameters - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * X509 CRL match parameters - * - * @typedef X509CRLMatchParameters - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface X509CRLMatchParameters { - /** - * To match the issuer of cert: - * [Rule] - * null : Do not match. - * NOT null : match if it is equal with [issuer of cert] in DER encoding. - * - * @type { ?Array<Uint8Array> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * To match the issuer of cert: - * [Rule] - * null : Do not match. - * NOT null : match if it is equal with [issuer of cert] in DER encoding. - * - * @type { ?Array<Uint8Array> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - issuer?: Array<Uint8Array>; - - /** - * To match X509Cert: - * [Rule] - * null : Do not match. - * NOT null : match if x509Cert.getEncoding is equal. - * - * @type { ?X509Cert } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * To match X509Cert: - * [Rule] - * null : Do not match. - * NOT null : match if x509Cert.getEncoding is equal. - * - * @type { ?X509Cert } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - x509Cert?: X509Cert; - - /** - * To match updateDateTime of CRL: - * [Rule] - * null : Do not verify. - * NOT null : verify if [thisUpdate in CRL] <= updateDateTime <= [nextUpdate in CRL] - * - * @type { ?string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - updateDateTime?: string; - - /** - * To match the maximum of CRL number extension: - * [Rule] - * null : Do not verify. - * NOT null : verify if [CRL number extension] <= maxCRL. - * - * @type { ?bigint } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - maxCRL?: bigint; - - /** - * To match the minimum of CRL number extension: - * [Rule] - * null : Do not verify. - * NOT null : verify if [CRL number extension] >= minCRL. - * - * @type { ?bigint } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - minCRL?: bigint; - } - - /** - * The certificate and CRL collection object. - * - * @typedef CertCRLCollection - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The certificate and CRL collection object. - * - * @typedef CertCRLCollection - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface CertCRLCollection { - /** - * return all Array<X509Cert> which match X509CertMatchParameters - * - * @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object. - * @returns { Promise<Array<X509Cert>> } - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * return all Array<X509Cert> which match X509CertMatchParameters - * - * @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object. - * @returns { Promise<Array<X509Cert>> } - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - selectCerts(param: X509CertMatchParameters): Promise<Array<X509Cert>>; - - /** - * return the X509 Cert which match X509CertMatchParameters - * - * @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object. - * @param { AsyncCallback<Array<X509Cert>> } callback - the callback of select cert. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * return the X509 Cert which match X509CertMatchParameters - * - * @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object. - * @param { AsyncCallback<Array<X509Cert>> } callback - the callback of select cert. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - selectCerts(param: X509CertMatchParameters, callback: AsyncCallback<Array<X509Cert>>): void; - - /** - * return all X509 CRL which match X509CRLMatchParameters - * - * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. - * @returns { Promise<Array<X509CRL>> } - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * return all X509 CRL which match X509CRLMatchParameters - * - * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. - * @returns { Promise<Array<X509CRL>> } - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - selectCRLs(param: X509CRLMatchParameters): Promise<Array<X509CRL>>; - - /** - * return all X509 CRL which match X509CRLMatchParameters - * - * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. - * @param { AsyncCallback<Array<X509CRL>> } callback - the callback of select CRL. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * return all X509 CRL which match X509CRLMatchParameters - * - * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. - * @param { AsyncCallback<Array<X509CRL>> } callback - the callback of select CRL. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - selectCRLs(param: X509CRLMatchParameters, callback: AsyncCallback<Array<X509CRL>>): void; - } - - /** - * create object CertCRLCollection - * - * @param { Array<X509Cert> } certs - array of X509Cert. - * @param { Array<X509CRL> } [options] crls - array of X509CRL. - * @returns { CertCRLCollection } - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * create object CertCRLCollection - * - * @param { Array<X509Cert> } certs - array of X509Cert. - * @param { Array<X509CRL> } [crls] - array of X509CRL. - * @returns { CertCRLCollection } - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createCertCRLCollection(certs: Array<X509Cert>, crls?: Array<X509CRL>): CertCRLCollection; - - /** - * X509 Certification chain object. - * - * @typedef X509CertChain - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * X509 Certification chain object. - * - * @typedef X509CertChain - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface X509CertChain { - /** - * Get the X509 certificate list. - * - * @returns { Array<X509Cert> } the X509 certificate list. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Get the X509 certificate list. - * - * @returns { Array<X509Cert> } the X509 certificate list. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getCertList(): Array<X509Cert>; - - /** - * Validate the cert chain with validate parameters. - * - * @param { CertChainValidationParameters } param - indicate the cert chain Validate parameters. - * @returns { Promise<CertChainValidationResult> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Validate the cert chain with validate parameters. - * - * @param { CertChainValidationParameters } param - indicate the cert chain Validate parameters. - * @returns { Promise<CertChainValidationResult> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - validate(param: CertChainValidationParameters): Promise<CertChainValidationResult>; - - /** - * Validate the cert chain with validate parameters. - * - * @param { CertChainValidationParameters } param - indicate the cert chain validate parameters. - * @param { AsyncCallback<CertChainValidationResult> } callback - indicate the cert chain validate result. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Validate the cert chain with validate parameters. - * - * @param { CertChainValidationParameters } param - indicate the cert chain validate parameters. - * @param { AsyncCallback<CertChainValidationResult> } callback - indicate the cert chain validate result. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - validate(param: CertChainValidationParameters, callback: AsyncCallback<CertChainValidationResult>): void; - - /** - * Get the string type data of the object. - * - * @returns { string } the string type data of the object. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - toString(): string; - - /** - * Get the hash value of DER format data. - * - * @returns { Uint8Array } the hash value of DER format data. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - hashCode(): Uint8Array; - } - - /** - * Provides to create X509 certificate chain object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert data. - * @returns { Promise<X509CertChain> } - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides to create X509 certificate chain object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert data. - * @returns { Promise<X509CertChain> } - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createX509CertChain(inStream: EncodingBlob): Promise<X509CertChain>; - - /** - * Provides to create X509 certificate chain object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert data. - * @param { AsyncCallback<X509CertChain> } callback - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides to create X509 certificate chain object. - * The returned object provides the data parsing or verification capability. - * - * @param { EncodingBlob } inStream - indicate the input cert data. - * @param { AsyncCallback<X509CertChain> } callback - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createX509CertChain(inStream: EncodingBlob, callback: AsyncCallback<X509CertChain>): void; - - /** - * Create certificate chain object with certificate array. - * - * @param { Array<X509Cert> } certs - indicate the certificate array. - * @returns { X509CertChain } the certificate chain object. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Create certificate chain object with certificate array. - * - * @param { Array<X509Cert> } certs - indicate the certificate array. - * @returns { X509CertChain } the certificate chain object. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createX509CertChain(certs: Array<X509Cert>): X509CertChain; - - /** - * Create and validate a certificate chain with the build parameters. - * - * @param { CertChainBuildParameters } param - indicate the certificate chain build parameters. - * @returns { Promise<CertChainBuildResult> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function buildX509CertChain(param: CertChainBuildParameters): Promise<CertChainBuildResult>; - - /** - * The encoding base format. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - enum EncodingBaseFormat { - /** - * PEM format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - PEM = 0, - - /** - * DER format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - DER = 1, - } - - /** - * PKCS12 data. - * - * @typedef Pkcs12Data - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - interface Pkcs12Data { - /** - * The private key. - * - * @type { ?(string | Uint8Array) } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - privateKey?: string | Uint8Array; - - /** - * The certificate corresponding to the private key. - * - * @type { ?X509Cert } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - cert?: X509Cert; - - /** - * The other certificates. - * - * @type { ?Array<X509Cert> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - otherCerts?: Array<X509Cert>; - } - - /** - * PKCS12 parsing config. - * - * @typedef Pkcs12ParsingConfig - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - interface Pkcs12ParsingConfig { - /** - * The password of the PKCS12. - * - * @type { string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - password: string; - - /** - * Whether to get the private key. - * - * @type { ?boolean } - * @default true - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - needsPrivateKey?: boolean; - - /** - * The output format of the private key. - * - * @type { ?EncodingBaseFormat } - * @default EncodingBaseFormat.PEM - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - privateKeyFormat?: EncodingBaseFormat; - - /** - * Whether to get the certificate corresponding to the private key. - * - * @type { ?boolean } - * @default true - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - needsCert?: boolean; - - /** - * Whether to get other certificates. - * - * @type { ?boolean } - * @default false - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - needsOtherCerts?: boolean; - } - - /** - * Parse PKCS12. - * - * @param { Uint8Array } data - the PKCS12 data. - * @param { Pkcs12ParsingConfig } config - the configuration for parsing PKCS12. - * @returns { Pkcs12Data } the Pkcs12Data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030008 - maybe wrong password. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - function parsePkcs12(data: Uint8Array, config: Pkcs12ParsingConfig): Pkcs12Data; - - /** - * Get trust anchor array from specified P12. - * - * @param { Uint8Array } keystore - the file path of the P12. - * @param { string } pwd - the password of the P12. - * @returns { Promise<Array<X509TrustAnchor>> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createTrustAnchorsWithKeyStore(keystore: Uint8Array, pwd: string): Promise<Array<X509TrustAnchor>>; - - /** - * Create X500DistinguishedName object with the name in string format. - * - * @param { string } nameStr - the string format of the Name type defined by X509. - * @returns { Promise<X500DistinguishedName> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createX500DistinguishedName(nameStr: string): Promise<X500DistinguishedName>; - - /** - * Create X500DistinguishedName object with the name in DER format. - * - * @param { Uint8Array } nameDer - the DER format of the Name type defined by X509. - * @returns { Promise<X500DistinguishedName> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030002 - the certificate signature verification failed. - * @throws { BusinessError } 19030003 - the certificate has not taken effect. - * @throws { BusinessError } 19030004 - the certificate has expired. - * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. - * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. - * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - function createX500DistinguishedName(nameDer: Uint8Array): Promise<X500DistinguishedName>; - - /** - * Provides the x500 distinguished name type. - * - * @typedef X500DistinguishedName - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface X500DistinguishedName { - /** - * Get distinguished name string. - * - * @returns { string } distinguished name string. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getName(): string; - - /** - * Get distinguished name string by type. - * - * @param { string } type - the specified type name. - * @returns { Array<string> } distinguished name string. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getName(type: string): Array<string>; - - /** - * Get distinguished name in der coding format. - * - * @returns { EncodingBlob } distinguished name encoded data. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - getEncoded(): EncodingBlob; - } - - /** - * Provides the x509 trust anchor type. - * - * @typedef X509TrustAnchor - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides the x509 trust anchor type. - * - * @typedef X509TrustAnchor - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface X509TrustAnchor { - /** - * The trust CA cert. - * - * @type { ?X509Cert } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The trust CA cert. - * - * @type { ?X509Cert } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - CACert?: X509Cert; - - /** - * The trust CA public key in DER format. - * - * @type { ?Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The trust CA public key in DER format. - * - * @type { ?Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - CAPubKey?: Uint8Array; - - /** - * The trust CA subject in DER format. - * - * @type { ?Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The trust CA subject in DER format. - * - * @type { ?Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - CASubject?: Uint8Array; - - /** - * The name constraints in DER format. - * - * @type { ?Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - nameConstraints?: Uint8Array; - } - - /** - * Enum for revocation check option. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - enum RevocationCheckOptions { - /** - * Indicates priority to use OCSP for verification. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - REVOCATION_CHECK_OPTION_PREFER_OCSP = 0, - - /** - * Indicates support for verifying revocation status by accessing the network to obtain CRL or OCSP responses. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - REVOCATION_CHECK_OPTION_ACCESS_NETWORK, - - /** - * Indicates when the 'REVOCATION_CHECK_OPTION_ACCESS_NETWORK' option is turned on, it is effective. - * If the preferred verification method is unable to verify the certificate status due to network reasons, - * an alternative solution will be used for verification. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - REVOCATION_CHECK_OPTION_FALLBACK_NO_PREFER, - - /** - * Indicates when the 'REVOCATION_CHECK_OPTION_ACCESS_NETWORK' option is turned on, it is effective. - * If both the CRL and OCSP responses obtained online cannot verify the certificate status due to network reasons, - * the locally set CRL and OCSP responses will be used for verification. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - REVOCATION_CHECK_OPTION_FALLBACK_LOCAL - } - - /** - * Enum for validation policy type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - enum ValidationPolicyType { - /** - * Indicates not need to verify the sslHostname field in the certificate. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - VALIDATION_POLICY_TYPE_X509 = 0, - - /** - * Indicates need to verify the sslHostname field in the certificate. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - VALIDATION_POLICY_TYPE_SSL - } - - /** - * Enum for validation keyusage type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - enum KeyUsageType { - /** - * Indicates the certificate public key can be used for digital signature operations. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - KEYUSAGE_DIGITAL_SIGNATURE = 0, - - /** - * Indicates certificate public key can be used for non repudiation operations, preventing the signer from denying their signature. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - KEYUSAGE_NON_REPUDIATION, - - /** - * Indicates certificate public key can be used for key encryption operations, for encrypting symmetric keys, etc. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - KEYUSAGE_KEY_ENCIPHERMENT, - - /** - * Indicates certificate public key can be used for data encryption operations, to encrypt data. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - KEYUSAGE_DATA_ENCIPHERMENT, - - /** - * Indicates certificate public key can be used for key negotiation operations, to negotiate shared keys. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - KEYUSAGE_KEY_AGREEMENT, - - /** - * Indicates certificate public key can be used for certificate signing operations. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - KEYUSAGE_KEY_CERT_SIGN, - - /** - * Indicates certificate public key can be used for signing operations on certificate revocation lists (CRLs). - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - KEYUSAGE_CRL_SIGN, - - /** - * Indicates the key can only be used for encryption operations and cannot be used for decryption operations. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - KEYUSAGE_ENCIPHER_ONLY, - - /** - * Indicates the key can only be used for decryption operations and cannot be used for encryption operations. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - KEYUSAGE_DECIPHER_ONLY - } - - /** - * Provides the certificate chain validate revocation parameters. - * - * @typedef RevocationCheckParameter - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface RevocationCheckParameter { - /** - * The additional field for sending OCSP requests. - * - * @type { ?Array<Uint8Array> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ocspRequestExtension?: Array<Uint8Array>; - - /** - * The server URL address for sending requests to OCSP. - * - * @type { ?string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ocspResponderURI?: string; - - /** - * The signing certificate for verifying OCSP response signatures. - * - * @type { ?X509Cert } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ocspResponderCert?: X509Cert; - - /** - * The OCSP response message returned by an OCSP server. - * - * @type { ?Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ocspResponses?: Uint8Array; - - /** - * The URL address for downloading the CRL list. - * - * @type { ?string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - crlDownloadURI?: string; - - /** - * The certificate revocation status verification option. - * - * @type { ?Array<RevocationCheckOptions> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - options?: Array<RevocationCheckOptions>; - - /** - * The digest used to generate the ocsp cert id. - * - * @type { ?string } - * @default SHA256 - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - ocspDigest?: string; - } - - /** - * Provides the certificate chain validate parameters type. - * - * @typedef CertChainValidationParameters - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Provides the certificate chain validate parameters type. - * - * @typedef CertChainValidationParameters - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface CertChainValidationParameters { - /** - * The datetime to verify the certificate chain validity period. - * - * @type { ?string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The datetime to verify the certificate chain validity period. - * - * @type { ?string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - date?: string; - - /** - * The trust ca certificates to verify the certificate chain. - * - * @type { Array<X509TrustAnchor> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The trust ca certificates to verify the certificate chain. - * - * @type { Array<X509TrustAnchor> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - trustAnchors: Array<X509TrustAnchor>; - - /** - * The cert and CRL list to build cert chain and verify the certificate chain revocation state. - * - * @type { ?Array<CertCRLCollection> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The cert and CRL list to build cert chain and verify the certificate chain revocation state. - * - * @type { ?Array<CertCRLCollection> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - certCRLs?: Array<CertCRLCollection>; - - /** - * The revocation parameters to verify the certificate chain revocation status. - * - * @type { ?RevocationCheckParameter } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - revocationCheckParam?: RevocationCheckParameter; - - /** - * The policy to verify the certificate chain validity. - * - * @type { ?ValidationPolicyType } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - policy?: ValidationPolicyType; - - /** - * The sslHostname to verify the certificate chain validity. - * - * @type { ?string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - sslHostname?: string; - - /** - * The keyUsage to verify the certificate chain validity. - * - * @type { ?Array<KeyUsageType> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - keyUsage?: Array<KeyUsageType>; - } - - /** - * Certification chain validate result. - * - * @typedef CertChainValidationResult - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * Certification chain validate result. - * - * @typedef CertChainValidationResult - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface CertChainValidationResult { - /** - * The cert chain trust anchor. - * - * @type { X509TrustAnchor } - * @readonly - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The cert chain trust anchor. - * - * @type { X509TrustAnchor } - * @readonly - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - readonly trustAnchor: X509TrustAnchor; - - /** - * The target certificate. - * - * @type { X509Cert } - * @readonly - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @since 11 - */ - /** - * The target certificate. - * - * @type { X509Cert } - * @readonly - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - readonly entityCert: X509Cert; - } - - /** - * Provides the certificate chain build parameters type. - * - * @typedef CertChainBuildParameters - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface CertChainBuildParameters { - /** - * The certificate match parameters to selects certificate from the certificate collection. - * - * @type { X509CertMatchParameters } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - certMatchParameters: X509CertMatchParameters; - - /** - * The maximum length of the certificate chain to be built. - * - * @type { ?number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - maxLength?: number; - - /** - * The CertChain validation parameters. - * - * @type { CertChainValidationParameters } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - validationParameters: CertChainValidationParameters; - } - - /** - * Certification chain build result. - * - * @typedef CertChainBuildResult - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - interface CertChainBuildResult { - /** - * The certificate chain of build result. - * - * @type { X509CertChain } - * @readonly - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - readonly certChain: X509CertChain; - - /** - * The certificate chain validation result. - * - * @type { CertChainValidationResult } - * @readonly - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 12 - */ - readonly validationResult: CertChainValidationResult; - } - - /** - * Enum for CMS content type. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - enum CmsContentType { - /** - * Signed data. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - SIGNED_DATA = 0 - } - - /** - * Enum for CMS content data format. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - enum CmsContentDataFormat { - /** - * Binary format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - BINARY = 0, - - /** - * Text format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - TEXT = 1 - } - - /** - * Enum for CMS format. - * - * @enum { number } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - enum CmsFormat { - /** - * PEM format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - PEM = 0, - - /** - * DER format. - * - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - DER = 1 - } - - /** - * Private key info. - * - * @typedef PrivateKeyInfo - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - interface PrivateKeyInfo { - /** - * The unencrypted or encrypted private key, in PEM or DER format. - * - * @type { string | Uint8Array } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - key: string | Uint8Array; - - /** - * The password of the private key, if the private key is encrypted. - * - * @type { ?string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - password?: string; - } - - /** - * Configuration options for CMS signer. - * - * @typedef CmsSignerConfig - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - interface CmsSignerConfig { - /** - * Digest algorithm name, such as "SHA384". - * - * @type { string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - mdName: string; - - /** - * Whether to add the certificate. - * - * @type { ?boolean } - * @default true - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - addCert?: boolean; - - /** - * Whether to add the signature attributes. - * - * @type { ?boolean } - * @default true - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - addAttr?: boolean; - - /** - * Whether to add the smime capibilities to the signature attributes. - * - * @type { ?boolean } - * @default true - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - addSmimeCapAttr?: boolean - } - - /** - * CMS generator options. - * - * @typedef CmsGeneratorOptions - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - interface CmsGeneratorOptions { - /** - * The format of the content data. - * - * @type { ?CmsContentDataFormat } - * @default CmsContentDataFormat.BINARY - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - contentDataFormat?: CmsContentDataFormat; - - /** - * The output format of the CMS final data. - * - * @type { ?CmsFormat } - * @default CmsFormat.DER - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - outFormat?: CmsFormat; - - /** - * Whether the CMS final data does not contain original content data. - * - * @type { ?boolean } - * @default false - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - isDetached?: boolean; - } - - /** - * Provides the interface for generating CMS. - * - * @typedef CmsGenerator - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - interface CmsGenerator { - /** - * Used to add the signer info. - * - * @param { X509Cert } cert - the signer certificate. - * @param { PrivateKeyInfo } keyInfo - the private key info of the signer certificate. - * @param { CmsSignerConfig } config - the configuration for CMS signer. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030008 - maybe wrong password. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - addSigner(cert: X509Cert, keyInfo: PrivateKeyInfo, config: CmsSignerConfig): void; - - /** - * Used to add the certificate, such as the issuer certificate of the signer certificate. - * - * @param { X509Cert } cert - the certificate. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - addCert(cert: X509Cert): void; - - /** - * Used to obtain the CMS final data, such as CMS signed data. - * - * @param { Uint8Array } data - the content data for CMS operation. - * @param { CmsGeneratorOptions } options - the configuration options for CMS operation. - * @returns { Promise<Uint8Array | string> } the promise returned by the function. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - doFinal(data: Uint8Array, options?: CmsGeneratorOptions): Promise<Uint8Array | string>; - - /** - * Used to obtain the CMS final data, such as CMS signed data. - * - * @param { Uint8Array } data - the content data for CMS operation. - * @param { CmsGeneratorOptions } options - the configuration options for CMS operation. - * @returns { Uint8Array | string } the CMS final data. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - doFinalSync(data: Uint8Array, options?: CmsGeneratorOptions): Uint8Array | string; - } - - /** - * Used to create CmsGenerator. - * - * @param { CmsContentType } contentType - the CMS content type. - * @returns { CmsGenerator } the CmsGenerator. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - function createCmsGenerator(contentType: CmsContentType): CmsGenerator; - - /** - * Additional information about the subject of the certificate. - * - * @typedef CsrAttribute - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - interface CsrAttribute { - /** - * Attribute type. - * - * @type { string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - type: string; - - /** - * Attribute value. - * - * @type { string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - value: string; - } - - /** - * Configuration for generating a certificate signing request. - * - * @typedef CsrGenerationConfig - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - interface CsrGenerationConfig { - /** - * The subject. - * - * @type { X500DistinguishedName } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - subject: X500DistinguishedName; - - /** - * The message digest name, such as "SHA384". - * - * @type { string } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - mdName: string; - - /** - * The attributes. - * - * @type { ?Array<CsrAttribute> } - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - attributes?: Array<CsrAttribute>; - - /** - * The output format of CSR. - * - * @type { ?EncodingBaseFormat } - * @default EncodingBaseFormat.PEM - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - outFormat?: EncodingBaseFormat; - } - - /** - * Used to generate certificate signing request. - * - * @param { PrivateKeyInfo } keyInfo - the private key info. - * @param { CsrGenerationConfig } config - the configuration for generating CSR. - * @returns { string | Uint8Array } the CSR in PEM or DER format. - * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 19020001 - memory error. - * @throws { BusinessError } 19020002 - runtime error. - * @throws { BusinessError } 19030001 - crypto operation error. - * @throws { BusinessError } 19030008 - maybe wrong password. - * @syscap SystemCapability.Security.Cert - * @crossplatform - * @atomicservice - * @since 18 - */ - function generateCsr(keyInfo: PrivateKeyInfo, config: CsrGenerationConfig): string | Uint8Array; -} - -export default cert; +/* + * Copyright (c) 2022-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit DeviceCertificateKit + */ +import type { AsyncCallback } from './@ohos.base'; +import cryptoFramework from './@ohos.security.cryptoFramework'; + +/** + * Provides a series of capabilities related to certificates, + * which supports parsing, verification, and output of certificates, extensions, and CRLs. + * + * @namespace cert + * @syscap SystemCapability.Security.Cert + * @since 9 + */ +/** + * Provides a series of capabilities related to certificates, + * which supports parsing, verification, and output of certificates, extensions, and CRLs. + * + * @namespace cert + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ +/** + * Provides a series of capabilities related to certificates, + * which supports parsing, verification, and output of certificates, extensions, and CRLs. + * + * @namespace cert + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 + */ +declare namespace cert { + /** + * Enum for result code + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Enum for result code + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Enum for result code + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + enum CertResult { + /** + * Indicates that input parameters is invalid. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates that input parameters is invalid. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates that input parameters is invalid. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + INVALID_PARAMS = 401, + + /** + * Indicates that function or algorithm is not supported. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates that function or algorithm is not supported. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates that function or algorithm is not supported. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + NOT_SUPPORT = 801, + + /** + * Indicates the memory malloc failed. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates the memory malloc failed. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates the memory malloc failed. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ERR_OUT_OF_MEMORY = 19020001, + + /** + * Indicates that runtime error. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates that runtime error. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates that runtime error. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ERR_RUNTIME_ERROR = 19020002, + + /** + * Indicates that parameter check failed. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 20 + */ + ERR_PARAMETER_CHECK_FAILED = 19020003, + + /** + * Indicates the crypto operation error. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates the crypto operation error. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates the crypto operation error. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ERR_CRYPTO_OPERATION = 19030001, + + /** + * Indicates that the certificate signature verification failed. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates that the certificate signature verification failed. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates that the certificate signature verification failed. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ERR_CERT_SIGNATURE_FAILURE = 19030002, + + /** + * Indicates that the certificate has not taken effect. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates that the certificate has not taken effect. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates that the certificate has not taken effect. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ERR_CERT_NOT_YET_VALID = 19030003, + + /** + * Indicates that the certificate has expired. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates that the certificate has expired. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates that the certificate has expired. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ERR_CERT_HAS_EXPIRED = 19030004, + + /** + * Indicates a failure to obtain the certificate issuer. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates a failure to obtain the certificate issuer. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates a failure to obtain the certificate issuer. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY = 19030005, + + /** + * The key cannot be used for signing a certificate. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * The key cannot be used for signing a certificate. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The key cannot be used for signing a certificate. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ERR_KEYUSAGE_NO_CERTSIGN = 19030006, + + /** + * The key cannot be used for digital signature. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * The key cannot be used for digital signature. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The key cannot be used for digital signature. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE = 19030007, + + /** + * The password may be wrong. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + ERR_MAYBE_WRONG_PASSWORD = 19030008 + } + + /** + * Provides the data blob type. + * + * @typedef DataBlob + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Provides the data blob type. + * + * @typedef DataBlob + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides the data blob type. + * + * @typedef DataBlob + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface DataBlob { + /** + * Indicates the content of data blob. + * + * @type { Uint8Array } + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates the content of data blob. + * + * @type { Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates the content of data blob. + * + * @type { Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + data: Uint8Array; + } + + /** + * Provides the data array type. + * + * @typedef DataArray + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Provides the data array type. + * + * @typedef DataArray + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides the data array type. + * + * @typedef DataArray + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface DataArray { + /** + * Indicates the content of data array. + * + * @type { Array<Uint8Array> } + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Indicates the content of data array. + * + * @type { Array<Uint8Array> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates the content of data array. + * + * @type { Array<Uint8Array> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + data: Array<Uint8Array>; + } + + /** + * Enum for supported cert encoding format. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Enum for supported cert encoding format. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Enum for supported cert encoding format. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + enum EncodingFormat { + /** + * The value of cert DER format. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * The value of cert DER format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The value of cert DER format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + FORMAT_DER = 0, + + /** + * The value of cert PEM format. + * + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * The value of cert PEM format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The value of cert PEM format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + FORMAT_PEM = 1, + + /** + * The value of cert chain PKCS7 format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The value of cert chain PKCS7 format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + FORMAT_PKCS7 = 2 + } + + /** + * Enum for the certificate item type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Enum for the certificate item type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Enum for the certificate item type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + enum CertItemType { + /** + * Indicates to get certificate TBS(to be signed) value. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to get certificate TBS(to be signed) value. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to get certificate TBS(to be signed) value. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + CERT_ITEM_TYPE_TBS = 0, + + /** + * Indicates to get certificate public key. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to get certificate public key. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to get certificate public key. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + CERT_ITEM_TYPE_PUBLIC_KEY = 1, + + /** + * Indicates to get certificate issuer unique id value. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to get certificate issuer unique id value. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to get certificate issuer unique id value. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + CERT_ITEM_TYPE_ISSUER_UNIQUE_ID = 2, + + /** + * Indicates to get certificate subject unique id value. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to get certificate subject unique id value. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to get certificate subject unique id value. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + CERT_ITEM_TYPE_SUBJECT_UNIQUE_ID = 3, + + /** + * Indicates to get certificate extensions value. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to get certificate extensions value. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to get certificate extensions value. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + CERT_ITEM_TYPE_EXTENSIONS = 4 + } + + /** + * Enumerates for the certificate extension object identifier (OID) types. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Enumerates for the certificate extension object identifier (OID) types. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Enumerates for the certificate extension object identifier (OID) types. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + enum ExtensionOidType { + /** + * Indicates to obtain all types of OIDs, including critical and uncritical types. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to obtain all types of OIDs, including critical and uncritical types. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to obtain all types of OIDs, including critical and uncritical types. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + EXTENSION_OID_TYPE_ALL = 0, + + /** + * Indicates to obtain OIDs of the critical type. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to obtain OIDs of the critical type. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to obtain OIDs of the critical type. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + EXTENSION_OID_TYPE_CRITICAL = 1, + + /** + * Indicates to obtain OIDs of the uncritical type. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to obtain OIDs of the uncritical type. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to obtain OIDs of the uncritical type. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + EXTENSION_OID_TYPE_UNCRITICAL = 2 + } + + /** + * Enum for the certificate extension entry type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Enum for the certificate extension entry type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Enum for the certificate extension entry type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + enum ExtensionEntryType { + /** + * Indicates to get extension entry. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to get extension entry. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to get extension entry. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + EXTENSION_ENTRY_TYPE_ENTRY = 0, + + /** + * Indicates to get extension entry critical. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to get extension entry critical. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to get extension entry critical. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + EXTENSION_ENTRY_TYPE_ENTRY_CRITICAL = 1, + + /** + * Indicates to get extension entry value. + * + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Indicates to get extension entry value. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Indicates to get extension entry value. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + EXTENSION_ENTRY_TYPE_ENTRY_VALUE = 2 + } + + /** + * Provides the cert encoding blob type. + * + * @typedef EncodingBlob + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Provides the cert encoding blob type. + * + * @typedef EncodingBlob + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides the cert encoding blob type. + * + * @typedef EncodingBlob + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface EncodingBlob { + /** + * The data input. + * + * @type { Uint8Array } + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * The data input. + * + * @type { Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The data input. + * + * @type { Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + data: Uint8Array; + /** + * The data encoding format. + * + * @type { EncodingFormat } + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * The data encoding format. + * + * @type { EncodingFormat } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The data encoding format. + * + * @type { EncodingFormat } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + encodingFormat: EncodingFormat; + } + + /** + * Provides the cert chain data type. + * + * @typedef CertChainData + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Provides the cert chain data type. + * + * @typedef CertChainData + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides the cert chain data type. + * + * @typedef CertChainData + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface CertChainData { + /** + * The data input. + * + * @type { Uint8Array } + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * The data input. + * + * @type { Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The data input. + * + * @type { Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + data: Uint8Array; + /** + * The number of certs. + * + * @type { number } + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * The number of certs. + * + * @type { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The number of certs. + * + * @type { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + count: number; + /** + * The data encoding format. + * + * @type { EncodingFormat } + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * The data encoding format. + * + * @type { EncodingFormat } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The data encoding format. + * + * @type { EncodingFormat } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + encodingFormat: EncodingFormat; + } + + /** + * Enum for Encoding type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + enum EncodingType { + /** + * Indicates to utf8 type. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ENCODING_UTF8 = 0 + } + + /** + * Provides the x509 cert type. + * + * @typedef X509Cert + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Provides the x509 cert type. + * + * @typedef X509Cert + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides the x509 cert type. + * + * @typedef X509Cert + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface X509Cert { + /** + * Verify the X509 cert. + * + * @param { cryptoFramework.PubKey } key - public key to verify cert. + * @param { AsyncCallback<void> } callback - the callback of verify. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Verify the X509 cert. + * + * @param { cryptoFramework.PubKey } key - public key to verify cert. + * @param { AsyncCallback<void> } callback - the callback of verify. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Verify the X509 cert. + * + * @param { cryptoFramework.PubKey } key - public key to verify cert. + * @param { AsyncCallback<void> } callback - the callback of verify. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + verify(key: cryptoFramework.PubKey, callback: AsyncCallback<void>): void; + + /** + * Verify the X509 cert. + * + * @param { cryptoFramework.PubKey } key - public key to verify cert. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Verify the X509 cert. + * + * @param { cryptoFramework.PubKey } key - public key to verify cert. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Verify the X509 cert. + * + * @param { cryptoFramework.PubKey } key - public key to verify cert. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + verify(key: cryptoFramework.PubKey): Promise<void>; + + /** + * Get X509 cert encoded data. + * + * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert encoded data. + * + * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert encoded data. + * + * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getEncoded(callback: AsyncCallback<EncodingBlob>): void; + + /** + * Get X509 cert encoded data. + * + * @returns { Promise<EncodingBlob> } the promise of X509 cert encoded data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert encoded data. + * + * @returns { Promise<EncodingBlob> } the promise of X509 cert encoded data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert encoded data. + * + * @returns { Promise<EncodingBlob> } the promise of X509 cert encoded data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getEncoded(): Promise<EncodingBlob>; + + /** + * Get X509 cert public key. + * + * @returns { cryptoFramework.PubKey } X509 cert pubKey. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert public key. + * + * @returns { cryptoFramework.PubKey } X509 cert pubKey. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert public key. + * + * @returns { cryptoFramework.PubKey } X509 cert pubKey. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getPublicKey(): cryptoFramework.PubKey; + + /** + * Check the X509 cert validity with date. + * + * @param { string } date - indicates the cert date. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Check the X509 cert validity with date. + * + * @param { string } date - indicates the cert date. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Check the X509 cert validity with date. + * + * @param { string } date - indicates the cert date. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + checkValidityWithDate(date: string): void; + + /** + * Get X509 cert version. + * + * @returns { number } X509 cert version. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert version. + * + * @returns { number } X509 cert version. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert version. + * + * @returns { number } X509 cert version. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getVersion(): number; + + /** + * Get X509 cert serial number. + * + * @returns { number } X509 cert serial number. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 10 + * @useinstead ohos.security.cert.X509Cert.getCertSerialNumber + */ + getSerialNumber(): number; + + /** + * Get X509 cert serial number. + * + * @returns { bigint } X509 cert serial number. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Get X509 cert serial number. + * + * @returns { bigint } X509 cert serial number. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert serial number. + * + * @returns { bigint } X509 cert serial number. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getCertSerialNumber(): bigint; + + /** + * Get X509 cert issuer name. + * + * @returns { DataBlob } X509 cert issuer name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert issuer name. + * + * @returns { DataBlob } X509 cert issuer name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert issuer name. + * + * @returns { DataBlob } X509 cert issuer name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getIssuerName(): DataBlob; + + /** + * Get X509 cert issuer name according to the encoding type. + * + * @param { EncodingType } encodingType indicates the encoding type. + * @returns { string } X509 cert issuer name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19020003 - parameter check failed. Possible causes: + * <br>1. The value of encodingType is not in the EncodingType enumeration range. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 20 + */ + getIssuerName(encodingType: EncodingType): string; + + /** + * Get X509 cert subject name. + * + * @returns { DataBlob } X509 cert subject name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert subject name. + * + * @returns { DataBlob } X509 cert subject name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert subject name. + * + * @param { EncodingType } [encodingType] indicates the encoding type, if the encoding type parameter is not set, + * the default ASCII encoding is used. + * @returns { DataBlob } X509 cert subject name. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Incorrect parameter types; + * <br>2. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSubjectName(encodingType?: EncodingType): DataBlob; + + /** + * Get X509 cert not before time. + * + * @returns { string } X509 cert not before time. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert not before time. + * + * @returns { string } X509 cert not before time. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert not before time. + * + * @returns { string } X509 cert not before time. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getNotBeforeTime(): string; + + /** + * Get X509 cert not after time. + * + * @returns { string } X509 cert not after time. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert not after time. + * + * @returns { string } X509 cert not after time. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert not after time. + * + * @returns { string } X509 cert not after time. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getNotAfterTime(): string; + + /** + * Get X509 cert signature. + * + * @returns { DataBlob } X509 cert signature. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert signature. + * + * @returns { DataBlob } X509 cert signature. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert signature. + * + * @returns { DataBlob } X509 cert signature. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSignature(): DataBlob; + + /** + * Get X509 cert signature's algorithm name. + * + * @returns { string } X509 cert signature's algorithm name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert signature's algorithm name. + * + * @returns { string } X509 cert signature's algorithm name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert signature's algorithm name. + * + * @returns { string } X509 cert signature's algorithm name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSignatureAlgName(): string; + + /** + * Get X509 cert signature's algorithm oid. + * + * @returns { string } X509 cert signature's algorithm oid. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert signature's algorithm oid. + * + * @returns { string } X509 cert signature's algorithm oid. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert signature's algorithm oid. + * + * @returns { string } X509 cert signature's algorithm oid. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSignatureAlgOid(): string; + + /** + * Get X509 cert signature's algorithm name. + * + * @returns { DataBlob } X509 cert signature's algorithm name. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert signature's algorithm name. + * + * @returns { DataBlob } X509 cert signature's algorithm name. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert signature's algorithm name. + * + * @returns { DataBlob } X509 cert signature's algorithm name. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSignatureAlgParams(): DataBlob; + + /** + * Get X509 cert key usage. + * + * @returns { DataBlob } X509 cert key usage. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert key usage. + * + * @returns { DataBlob } X509 cert key usage. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert key usage. + * + * @returns { DataBlob } X509 cert key usage. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getKeyUsage(): DataBlob; + + /** + * Get X509 cert extended key usage. + * + * @returns { DataArray } X509 cert extended key usage. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert extended key usage. + * + * @returns { DataArray } X509 cert extended key usage. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert extended key usage. + * + * @returns { DataArray } X509 cert extended key usage. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getExtKeyUsage(): DataArray; + + /** + * Get X509 cert basic constraints path len. + * + * @returns { number } X509 cert basic constraints path len. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert basic constraints path len. + * + * @returns { number } X509 cert basic constraints path len. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert basic constraints path len. + * + * @returns { number } X509 cert basic constraints path len. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getBasicConstraints(): number; + + /** + * Get X509 cert subject alternative name. + * + * @returns { DataArray } X509 cert subject alternative name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert subject alternative name. + * + * @returns { DataArray } X509 cert subject alternative name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert subject alternative name. + * + * @returns { DataArray } X509 cert subject alternative name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSubjectAltNames(): DataArray; + + /** + * Get X509 cert issuer alternative name. + * + * @returns { DataArray } X509 cert issuer alternative name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Get X509 cert issuer alternative name. + * + * @returns { DataArray } X509 cert issuer alternative name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get X509 cert issuer alternative name. + * + * @returns { DataArray } X509 cert issuer alternative name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getIssuerAltNames(): DataArray; + + /** + * Get certificate item value. + * + * @param { CertItemType } itemType + * @returns { DataBlob } cert item value. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Get certificate item value. + * + * @param { CertItemType } itemType + * @returns { DataBlob } cert item value. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get certificate item value. + * + * @param { CertItemType } itemType + * @returns { DataBlob } cert item value. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getItem(itemType: CertItemType): DataBlob; + + /** + * Check the X509 cert if match the parameters. + * + * @param { X509CertMatchParameters } param - indicate the match parameters. + * @returns { boolean } true - match X509Cert, false - not match. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Check the X509 cert if match the parameters. + * + * @param { X509CertMatchParameters } param - indicate the match parameters. + * @returns { boolean } true - match X509Cert, false - not match. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + match(param: X509CertMatchParameters): boolean; + + /** + * Obtain CRL distribution points. + * + * @returns { DataArray } X509 cert CRL distribution points. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getCRLDistributionPoint(): DataArray; + + /** + * Get X500 distinguished name of the issuer. + * + * @returns { X500DistinguishedName } X500 distinguished name object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getIssuerX500DistinguishedName(): X500DistinguishedName; + + /** + * Get X500 distinguished name of the subject. + * + * @returns { X500DistinguishedName } X500 distinguished name object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSubjectX500DistinguishedName(): X500DistinguishedName; + + /** + * Get the string type data of the object. + * + * @returns { string } the string type data of the object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + toString(): string; + + /** + * Get the string type data of the object according to the encoding type. + * + * @param { EncodingType } encodingType indicates the encoding type. + * @returns { string } the string type data of the object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19020003 - parameter check failed. Possible causes: + * <br>1. The value of encodingType is not in the EncodingType enumeration range. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 20 + */ + toString(encodingType: EncodingType): string; + + /** + * Get the hash value of DER format data. + * + * @returns { Uint8Array } the hash value of DER format data. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + hashCode(): Uint8Array; + + /** + * Get the extension der encoding data for the corresponding entity. + * + * @returns { CertExtension } the certExtension object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getExtensionsObject(): CertExtension; + } + + /** + * Provides to create X509 certificate object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert data. + * @param { AsyncCallback<X509Cert> } callback - the callback of createX509Cert. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Provides to create X509 certificate object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert data. + * @param { AsyncCallback<X509Cert> } callback - the callback of createX509Cert. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides to create X509 certificate object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert data. + * @param { AsyncCallback<X509Cert> } callback - the callback of createX509Cert. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createX509Cert(inStream: EncodingBlob, callback: AsyncCallback<X509Cert>): void; + + /** + * Provides to create X509 certificate object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert data. + * @returns { Promise<X509Cert> } the promise of X509 cert instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Provides to create X509 certificate object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert data. + * @returns { Promise<X509Cert> } the promise of X509 cert instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides to create X509 certificate object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert data. + * @returns { Promise<X509Cert> } the promise of X509 cert instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createX509Cert(inStream: EncodingBlob): Promise<X509Cert>; + + /** + * The CertExtension interface is used to parse and verify certificate extension. + * + * @typedef CertExtension + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * The CertExtension interface is used to parse and verify certificate extension. + * + * @typedef CertExtension + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The CertExtension interface is used to parse and verify certificate extension. + * + * @typedef CertExtension + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface CertExtension { + /** + * Get certificate extension encoded data. + * + * @returns { EncodingBlob } cert extension encoded data. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Get certificate extension encoded data. + * + * @returns { EncodingBlob } cert extension encoded data. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get certificate extension encoded data. + * + * @returns { EncodingBlob } cert extension encoded data. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getEncoded(): EncodingBlob; + + /** + * Get certificate extension oid list. + * + * @param { ExtensionOidType } valueType + * @returns { DataArray } cert extension OID list value. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Get certificate extension oid list. + * + * @param { ExtensionOidType } valueType + * @returns { DataArray } cert extension OID list value. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get certificate extension oid list. + * + * @param { ExtensionOidType } valueType + * @returns { DataArray } cert extension OID list value. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getOidList(valueType: ExtensionOidType): DataArray; + + /** + * Get certificate extension entry. + * + * @param { ExtensionEntryType } valueType + * @param { DataBlob } oid + * @returns { DataBlob } cert extension entry value. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Get certificate extension entry. + * + * @param { ExtensionEntryType } valueType + * @param { DataBlob } oid + * @returns { DataBlob } cert extension entry value. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get certificate extension entry. + * + * @param { ExtensionEntryType } valueType + * @param { DataBlob } oid + * @returns { DataBlob } cert extension entry value. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getEntry(valueType: ExtensionEntryType, oid: DataBlob): DataBlob; + + /** + * Check whether the certificate is a CA(The keyusage contains signature usage and the value of cA in BasicConstraints is true). + * If not a CA, return -1, otherwise return the path length constraint in BasicConstraints. + * If the certificate is a CA and the path length constraint does not appear, then return -2 to indicate that there is no limit to path length. + * + * @returns { number } path length constraint. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Check whether the certificate is a CA(The keyusage contains signature usage and the value of cA in BasicConstraints is true). + * If not a CA, return -1, otherwise return the path length constraint in BasicConstraints. + * If the certificate is a CA and the path length constraint does not appear, then return -2 to indicate that there is no limit to path length. + * + * @returns { number } path length constraint. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Check whether the certificate is a CA(The keyusage contains signature usage and the value of cA in BasicConstraints is true). + * If not a CA, return -1, otherwise return the path length constraint in BasicConstraints. + * If the certificate is a CA and the path length constraint does not appear, then return -2 to indicate that there is no limit to path length. + * + * @returns { number } path length constraint. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + checkCA(): number; + + /** + * Check if exists Unsupported critical extension. + * + * @returns { boolean } true - exists unsupported critical extension, false - else. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Check if exists Unsupported critical extension. + * + * @returns { boolean } true - exists unsupported critical extension, false - else. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + hasUnsupportedCriticalExtension(): boolean; + } + + /** + * Provides to create certificate extension object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert extensions data. + * @param { AsyncCallback<CertExtension> } callback - the callback of of certificate extension instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Provides to create certificate extension object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert extensions data. + * @param { AsyncCallback<CertExtension> } callback - the callback of of certificate extension instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides to create certificate extension object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert extensions data. + * @param { AsyncCallback<CertExtension> } callback - the callback of of certificate extension instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createCertExtension(inStream: EncodingBlob, callback: AsyncCallback<CertExtension>): void; + + /** + * Provides to create certificate extension object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert extensions data. + * @returns { Promise<CertExtension> } the promise of certificate extension instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 10 + */ + /** + * Provides to create certificate extension object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert extensions data. + * @returns { Promise<CertExtension> } the promise of certificate extension instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides to create certificate extension object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert extensions data. + * @returns { Promise<CertExtension> } the promise of certificate extension instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createCertExtension(inStream: EncodingBlob): Promise<CertExtension>; + + /** + * Interface of X509CrlEntry. + * + * @typedef X509CrlEntry + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRLEntry + */ + interface X509CrlEntry { + /** + * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. + * + * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRLEntry#getEncoded + */ + getEncoded(callback: AsyncCallback<EncodingBlob>): void; + + /** + * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. + * + * @returns { Promise<EncodingBlob> } the promise of crl entry blob data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRLEntry#getEncoded + */ + getEncoded(): Promise<EncodingBlob>; + + /** + * Get the serial number from this x509crl entry. + * + * @returns { number } serial number of crl entry. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRLEntry#getSerialNumber + */ + getSerialNumber(): number; + + /** + * Get the issuer of the x509 certificate described by this entry. + * + * @returns { DataBlob } DataBlob of issuer. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRLEntry#getCertIssuer + */ + getCertIssuer(): DataBlob; + + /** + * Get the revocation date from x509crl entry. + * + * @returns { string } string of revocation date. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRLEntry#getRevocationDate + */ + getRevocationDate(): string; + } + + /** + * Interface of X509CRLEntry. + * + * @typedef X509CRLEntry + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Interface of X509CRLEntry. + * + * @typedef X509CRLEntry + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface X509CRLEntry { + /** + * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. + * + * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. + * + * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getEncoded(callback: AsyncCallback<EncodingBlob>): void; + + /** + * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. + * + * @returns { Promise<EncodingBlob> } the promise of CRL entry blob data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence. + * + * @returns { Promise<EncodingBlob> } the promise of CRL entry blob data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getEncoded(): Promise<EncodingBlob>; + + /** + * Get the serial number from this x509CRL entry. + * + * @returns { bigint } serial number of CRL entry. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the serial number from this x509CRL entry. + * + * @returns { bigint } serial number of CRL entry. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSerialNumber(): bigint; + + /** + * Get the issuer of the x509 certificate described by this entry. + * + * @returns { DataBlob } DataBlob of issuer. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the issuer of the x509 certificate described by this entry. + * + * @returns { DataBlob } DataBlob of issuer. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getCertIssuer(): DataBlob; + + /** + * Get the issuer name of the x509 certificate described by this entry according to the encoding type. + * + * @param { EncodingType } encodingType indicates the encoding type. + * @returns { string } issuer name. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19020003 - parameter check failed. Possible causes: + * <br>1. The value of encodingType is not in the EncodingType enumeration range. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 20 + */ + getCertIssuer(encodingType: EncodingType): string; + + /** + * Get the revocation date from x509CRL entry. + * + * @returns { string } string of revocation date. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the revocation date from x509CRL entry. + * + * @returns { string } string of revocation date. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getRevocationDate(): string; + + /** + * Get Extensions of CRL Entry. + * + * @returns { DataBlob } DataBlob of extensions + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get Extensions of CRL Entry. + * + * @returns { DataBlob } DataBlob of extensions + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getExtensions(): DataBlob; + + /** + * Check if CRL Entry has extension . + * + * @returns { boolean } true - CRL Entry has extension, false - else. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Check if CRL Entry has extension . + * + * @returns { boolean } true - CRL Entry has extension, false - else. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + hasExtensions(): boolean; + + /** + * Get X500 distinguished name of the issuer. + * + * @returns { X500DistinguishedName } X500 distinguished name object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getCertIssuerX500DistinguishedName(): X500DistinguishedName; + + /** + * Get the string type data of the object. + * + * @returns { string } the string type data of the object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + toString(): string; + + /** + * Get the hash value of DER format data. + * + * @returns { Uint8Array } the hash value of DER format data. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + hashCode(): Uint8Array; + + /** + * Get the extension der encoding data for the corresponding entity. + * + * @returns { CertExtension } the certExtension object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getExtensionsObject(): CertExtension; + } + + /** + * Interface of X509Crl. + * + * @typedef X509Crl + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL + */ + interface X509Crl { + /** + * Check if the given certificate is on this CRL. + * + * @param { X509Cert } cert - input cert data. + * @returns { boolean } result of Check cert is revoked or not. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#isRevoked + */ + isRevoked(cert: X509Cert): boolean; + + /** + * Returns the type of this CRL. + * + * @returns { string } string of crl type. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getType + */ + getType(): string; + + /** + * Get the der coding format. + * + * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getEncoded + */ + getEncoded(callback: AsyncCallback<EncodingBlob>): void; + + /** + * Get the der coding format. + * + * @returns { Promise<EncodingBlob> } the promise of crl blob data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getEncoded + */ + getEncoded(): Promise<EncodingBlob>; + + /** + * Use the public key to verify the signature of CRL. + * + * @param { cryptoFramework.PubKey } key - input public Key. + * @param { AsyncCallback<void> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#verify + */ + verify(key: cryptoFramework.PubKey, callback: AsyncCallback<void>): void; + + /** + * Use the public key to verify the signature of CRL. + * + * @param { cryptoFramework.PubKey } key - input public Key. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#verify + */ + verify(key: cryptoFramework.PubKey): Promise<void>; + + /** + * Get version number from CRL. + * + * @returns { number } version of crl. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getVersion + */ + getVersion(): number; + + /** + * Get the issuer name from CRL. Issuer means the entity that signs and publishes the CRL. + * + * @returns { DataBlob } issuer name of crl. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getIssuerName + */ + getIssuerName(): DataBlob; + + /** + * Get lastUpdate value from CRL. + * + * @returns { string } last update of crl. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getLastUpdate + */ + getLastUpdate(): string; + + /** + * Get nextUpdate value from CRL. + * + * @returns { string } next update of crl. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getNextUpdate + */ + getNextUpdate(): string; + + /** + * This method can be used to find CRL entries in specified CRLs. + * + * @param { number } serialNumber - serial number of crl. + * @returns { X509CrlEntry } next update of crl. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getRevokedCert + */ + getRevokedCert(serialNumber: number): X509CrlEntry; + + /** + * This method can be used to find CRL entries in specified cert. + * + * @param { X509Cert } cert - cert of x509. + * @returns { X509CrlEntry } X509CrlEntry instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getRevokedCertWithCert + */ + getRevokedCertWithCert(cert: X509Cert): X509CrlEntry; + + /** + * Get all entries in this CRL. + * + * @param { AsyncCallback<Array<X509CrlEntry>> } callback - the callback of getRevokedCerts. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getRevokedCerts + */ + getRevokedCerts(callback: AsyncCallback<Array<X509CrlEntry>>): void; + + /** + * Get all entries in this CRL. + * + * @returns { Promise<Array<X509CrlEntry>> } the promise of X509CrlEntry instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getRevokedCerts + */ + getRevokedCerts(): Promise<Array<X509CrlEntry>>; + + /** + * Get the CRL information encoded by Der from this CRL. + * + * @returns { DataBlob } DataBlob of tbs info. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getTBSInfo + */ + getTbsInfo(): DataBlob; + + /** + * Get signature value from CRL. + * + * @returns { DataBlob } DataBlob of signature. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getSignature + */ + getSignature(): DataBlob; + + /** + * Get the signature algorithm name of the CRL signature algorithm. + * + * @returns { string } string of signature algorithm name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getSignatureAlgName + */ + getSignatureAlgName(): string; + + /** + * Get the signature algorithm oid string from CRL. + * + * @returns { string } string of signature algorithm oid. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getSignatureAlgOid + */ + getSignatureAlgOid(): string; + + /** + * Get the der encoded signature algorithm parameters from the CRL signature algorithm. + * + * @returns { DataBlob } DataBlob of signature algorithm params. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert.X509CRL#getSignatureAlgParams + */ + getSignatureAlgParams(): DataBlob; + } + + /** + * Provides to create X509 CRL object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicates the input CRL data. + * @param { AsyncCallback<X509Crl> } callback - the callback of createX509Crl to return x509 CRL instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert#createX509CRL + */ + function createX509Crl(inStream: EncodingBlob, callback: AsyncCallback<X509Crl>): void; + + /** + * Provides to create X509 CRL object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicates the input CRL data. + * @returns { Promise<X509Crl> } the promise of x509 CRL instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @syscap SystemCapability.Security.Cert + * @since 9 + * @deprecated since 11 + * @useinstead ohos.security.cert#createX509CRL + */ + function createX509Crl(inStream: EncodingBlob): Promise<X509Crl>; + + /** + * Interface of X509CRL. + * + * @typedef X509CRL + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Interface of X509CRL. + * + * @typedef X509CRL + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface X509CRL { + /** + * Check if the given certificate is on this CRL. + * + * @param { X509Cert } cert - input cert data. + * @returns { boolean } result of Check cert is revoked or not. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Check if the given certificate is on this CRL. + * + * @param { X509Cert } cert - input cert data. + * @returns { boolean } result of Check cert is revoked or not. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + isRevoked(cert: X509Cert): boolean; + + /** + * Returns the type of this CRL. + * + * @returns { string } string of CRL type. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Returns the type of this CRL. + * + * @returns { string } string of CRL type. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getType(): string; + + /** + * Get the der coding format. + * + * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the der coding format. + * + * @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getEncoded(callback: AsyncCallback<EncodingBlob>): void; + + /** + * Get the der coding format. + * + * @returns { Promise<EncodingBlob> } the promise of CRL blob data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the der coding format. + * + * @returns { Promise<EncodingBlob> } the promise of CRL blob data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getEncoded(): Promise<EncodingBlob>; + + /** + * Use the public key to verify the signature of CRL. + * + * @param { cryptoFramework.PubKey } key - input public Key. + * @param { AsyncCallback<void> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Use the public key to verify the signature of CRL. + * + * @param { cryptoFramework.PubKey } key - input public Key. + * @param { AsyncCallback<void> } callback - the callback of getEncoded. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + verify(key: cryptoFramework.PubKey, callback: AsyncCallback<void>): void; + + /** + * Use the public key to verify the signature of CRL. + * + * @param { cryptoFramework.PubKey } key - input public Key. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Use the public key to verify the signature of CRL. + * + * @param { cryptoFramework.PubKey } key - input public Key. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + verify(key: cryptoFramework.PubKey): Promise<void>; + + /** + * Get version number from CRL. + * + * @returns { number } version of CRL. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get version number from CRL. + * + * @returns { number } version of CRL. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getVersion(): number; + + /** + * Get the issuer name from CRL. Issuer means the entity that signs and publishes the CRL. + * + * @returns { DataBlob } issuer name of CRL. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the issuer name from CRL. Issuer means the entity that signs and publishes the CRL. + * + * @returns { DataBlob } issuer name of CRL. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getIssuerName(): DataBlob; + + /** + * Get the issuer name from CRL according to the encoding type. + * + * @param { EncodingType } encodingType indicates the encoding type. + * @returns { string } issuer name of CRL. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19020003 - parameter check failed. Possible causes: + * <br>1. The value of encodingType is not in the EncodingType enumeration range. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 20 + */ + getIssuerName(encodingType: EncodingType): string; + + /** + * Get lastUpdate value from CRL. + * + * @returns { string } last update of CRL. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get lastUpdate value from CRL. + * + * @returns { string } last update of CRL. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getLastUpdate(): string; + + /** + * Get nextUpdate value from CRL. + * + * @returns { string } next update of CRL. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get nextUpdate value from CRL. + * + * @returns { string } next update of CRL. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getNextUpdate(): string; + + /** + * This method can be used to find CRL entries in specified CRLs. + * + * @param { bigint } serialNumber - serial number of CRL. + * @returns { X509CRLEntry } next update of CRL. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * This method can be used to find CRL entries in specified CRLs. + * + * @param { bigint } serialNumber - serial number of CRL. + * @returns { X509CRLEntry } next update of CRL. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getRevokedCert(serialNumber: bigint): X509CRLEntry; + + /** + * This method can be used to find CRL entries in specified cert. + * + * @param { X509Cert } cert - cert of x509. + * @returns { X509CRLEntry } X509CRLEntry instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * This method can be used to find CRL entries in specified cert. + * + * @param { X509Cert } cert - cert of x509. + * @returns { X509CRLEntry } X509CRLEntry instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getRevokedCertWithCert(cert: X509Cert): X509CRLEntry; + + /** + * Get all entries in this CRL. + * + * @param { AsyncCallback<Array<X509CRLEntry>> } callback - the callback of getRevokedCerts. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get all entries in this CRL. + * + * @param { AsyncCallback<Array<X509CRLEntry>> } callback - the callback of getRevokedCerts. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getRevokedCerts(callback: AsyncCallback<Array<X509CRLEntry>>): void; + + /** + * Get all entries in this CRL. + * + * @returns { Promise<Array<X509CRLEntry>> } the promise of X509CRLEntry instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get all entries in this CRL. + * + * @returns { Promise<Array<X509CRLEntry>> } the promise of X509CRLEntry instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getRevokedCerts(): Promise<Array<X509CRLEntry>>; + + /** + * Get the CRL information encoded by Der from this CRL. + * + * @returns { DataBlob } DataBlob of tbs info. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the CRL information encoded by Der from this CRL. + * + * @returns { DataBlob } DataBlob of tbs info. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getTBSInfo(): DataBlob; + + /** + * Get signature value from CRL. + * + * @returns { DataBlob } DataBlob of signature. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get signature value from CRL. + * + * @returns { DataBlob } DataBlob of signature. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSignature(): DataBlob; + + /** + * Get the signature algorithm name of the CRL signature algorithm. + * + * @returns { string } string of signature algorithm name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the signature algorithm name of the CRL signature algorithm. + * + * @returns { string } string of signature algorithm name. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSignatureAlgName(): string; + + /** + * Get the signature algorithm oid string from CRL. + * + * @returns { string } string of signature algorithm oid. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the signature algorithm oid string from CRL. + * + * @returns { string } string of signature algorithm oid. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSignatureAlgOid(): string; + + /** + * Get the der encoded signature algorithm parameters from the CRL signature algorithm. + * + * @returns { DataBlob } DataBlob of signature algorithm params. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the der encoded signature algorithm parameters from the CRL signature algorithm. + * + * @returns { DataBlob } DataBlob of signature algorithm params. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getSignatureAlgParams(): DataBlob; + + /** + * Get Extensions of CRL Entry. + * + * @returns { DataBlob } DataBlob of extensions + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get Extensions of CRL Entry. + * + * @returns { DataBlob } DataBlob of extensions + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getExtensions(): DataBlob; + + /** + * Check if the X509 CRL match the parameters. + * + * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. + * @returns { boolean } true - match X509CRL, false - not match. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Check if the X509 CRL match the parameters. + * + * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. + * @returns { boolean } true - match X509CRL, false - not match. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + match(param: X509CRLMatchParameters): boolean; + + /** + * Get X500 distinguished name of the issuer. + * + * @returns { X500DistinguishedName } X500 distinguished name object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getIssuerX500DistinguishedName(): X500DistinguishedName; + + /** + * Get the string type data of the object. + * + * @returns { string } the string type data of the object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + toString(): string; + + /** + * Get the string type data of the object according to the encoding type. + * + * @param { EncodingType } encodingType indicates the encoding type. + * @returns { string } the string type data of the object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19020003 - parameter check failed. Possible causes: + * <br>1. The value of encodingType is not in the EncodingType enumeration range. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 20 + */ + toString(encodingType: EncodingType): string; + + /** + * Get the hash value of DER format data. + * + * @returns { Uint8Array } the hash value of DER format data. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + hashCode(): Uint8Array; + + /** + * Get the extension der encoding data for the corresponding entity. + * + * @returns { CertExtension } the certExtension object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getExtensionsObject(): CertExtension; + } + + /** + * Provides to create X509 CRL object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicates the input CRL data. + * @param { AsyncCallback<X509CRL> } callback - the callback of createX509CRL to return x509 CRL instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides to create X509 CRL object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicates the input CRL data. + * @param { AsyncCallback<X509CRL> } callback - the callback of createX509CRL to return x509 CRL instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createX509CRL(inStream: EncodingBlob, callback: AsyncCallback<X509CRL>): void; + + /** + * Provides to create X509 CRL object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicates the input CRL data. + * @returns { Promise<X509CRL> } the promise of x509 CRL instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides to create X509 CRL object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicates the input CRL data. + * @returns { Promise<X509CRL> } the promise of x509 CRL instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createX509CRL(inStream: EncodingBlob): Promise<X509CRL>; + + /** + * Certification chain validator. + * + * @typedef CertChainValidator + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Certification chain validator. + * + * @typedef CertChainValidator + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Certification chain validator. + * + * @typedef CertChainValidator + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface CertChainValidator { + /** + * Validate the cert chain. + * + * @param { CertChainData } certChain - indicate the cert chain validator data. + * @param { AsyncCallback<void> } callback - the callback of validate. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Validate the cert chain. + * + * @param { CertChainData } certChain - indicate the cert chain validator data. + * @param { AsyncCallback<void> } callback - the callback of validate. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Validate the cert chain. + * + * @param { CertChainData } certChain - indicate the cert chain validator data. + * @param { AsyncCallback<void> } callback - the callback of validate. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + validate(certChain: CertChainData, callback: AsyncCallback<void>): void; + + /** + * Validate the cert chain. + * + * @param { CertChainData } certChain - indicate the cert chain validator data. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Validate the cert chain. + * + * @param { CertChainData } certChain - indicate the cert chain validator data. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Validate the cert chain. + * + * @param { CertChainData } certChain - indicate the cert chain validator data. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + validate(certChain: CertChainData): Promise<void>; + + /** + * The cert chain related algorithm. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * The cert chain related algorithm. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The cert chain related algorithm. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + readonly algorithm: string; + } + + /** + * Provides to create certificate chain object. The returned object provides the verification capability. + * + * @param { string } algorithm - indicates the cert chain validator type. + * @returns { CertChainValidator } the cert chain validator instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @since 9 + */ + /** + * Provides to create certificate chain object. The returned object provides the verification capability. + * + * @param { string } algorithm - indicates the cert chain validator type. + * @returns { CertChainValidator } the cert chain validator instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides to create certificate chain object. The returned object provides the verification capability. + * + * @param { string } algorithm - indicates the cert chain validator type. + * @returns { CertChainValidator } the cert chain validator instance. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createCertChainValidator(algorithm: string): CertChainValidator; + + /** + * Enum for general name use type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + enum GeneralNameType { + /** + * Indicates the name used for other. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + GENERAL_NAME_TYPE_OTHER_NAME = 0, + + /** + * Indicates the name used for RFC822. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + GENERAL_NAME_TYPE_RFC822_NAME = 1, + + /** + * Indicates the name used for DNS. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + GENERAL_NAME_TYPE_DNS_NAME = 2, + + /** + * Indicates the name used for X.400 address. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + GENERAL_NAME_TYPE_X400_ADDRESS = 3, + + /** + * Indicates the name used for X.500 directory. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + GENERAL_NAME_TYPE_DIRECTORY_NAME = 4, + + /** + * Indicates the name used for EDI. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + GENERAL_NAME_TYPE_EDI_PARTY_NAME = 5, + + /** + * Indicates the name used for URI. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + GENERAL_NAME_TYPE_UNIFORM_RESOURCE_ID = 6, + + /** + * Indicates the name used for IP address. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + GENERAL_NAME_TYPE_IP_ADDRESS = 7, + + /** + * Indicates the name used for registered ID. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + GENERAL_NAME_TYPE_REGISTERED_ID = 8 + } + + /** + * GeneralName object + * + * @typedef GeneralName + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface GeneralName { + /** + * The general name type. + * + * @type { GeneralNameType } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + type: GeneralNameType; + + /** + * The general name in DER format + * + * @type { ?Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + name?: Uint8Array; + } + + /** + * X509 Cert match parameters + * + * @typedef X509CertMatchParameters + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * X509 Cert match parameters + * + * @typedef X509CertMatchParameters + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface X509CertMatchParameters { + /** + * To match SubjectAlternativeNames of cert extensions: + * [Rule] + * null : Do not match. + * NOT null : match after [matchAllSubjectAltNames] + * + * @type { ?Array<GeneralName> } SubjectAlternativeNames is in DER encoding format + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + subjectAlternativeNames?: Array<GeneralName>; + + /** + * Indicate if match all subject alternate name: + * [Rule] + * true : match if [subjectAlternativeNames] is equal with all of [SubjectAlternativeNames of cert extensions] + * false : match if [subjectAlternativeNames] is only equal with one of [SubjectAlternativeNames of cert extensions] + * + * @type { ?boolean } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + matchAllSubjectAltNames?: boolean; + + /** + * To match AuthorityKeyIdentifier of cert extensions in DER encoding: + * [Rule] + * null : Do not match. + * NOT null : match if it is equal with [AuthorityKeyIdentifier of cert extensions] in DER encoding + * + * @type { ?Uint8Array } the key identifier + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + authorityKeyIdentifier?: Uint8Array; + + /** + * To match BaseConstraints.pathLenConstraint of cert extensions: + * [Rule] + * >=0 : The certificate must contain BaseConstraints extension, and the cA field in the extension takes. + * -2 : The cA field in the BaseConstraints extension of the certificate must be set to false or the certificate does not contain BaseConstraints extension. + * other : Do not match. + * + * @type { ?number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + minPathLenConstraint?: number; + + /** + * To match X509Cert: + * [Rule] + * null : Do not match. + * NOT null : match if x509Cert.getEncoding is equal. + * + * @type { ?X509Cert } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * To match X509Cert: + * [Rule] + * null : Do not match. + * NOT null : match if x509Cert.getEncoding is equal. + * + * @type { ?X509Cert } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + x509Cert?: X509Cert; + + /** + * To match the validDate of cert: + * [Rule] + * null : Do not match. + * NOT null : match if [notBefore of cert] <= [validDate] <= [notAfter of cert]. + * + * @type { ?string } format is YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * To match the validDate of cert: + * [Rule] + * null : Do not match. + * NOT null : match if [notBefore of cert] <= [validDate] <= [notAfter of cert]. + * + * @type { ?string } format is YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + validDate?: string; + + /** + * To match the issuer of cert: + * [Rule] + * null : Do not match. + * NOT null : match if it is equal with [issuer of cert] in DER encoding. + * + * @type { ?Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * To match the issuer of cert: + * [Rule] + * null : Do not match. + * NOT null : match if it is equal with [issuer of cert] in DER encoding. + * + * @type { ?Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + issuer?: Uint8Array; + + /** + * To match the ExtendedKeyUsage of cert extensions: + * [Rule] + * null : Do not match. + * NOT null : match ok if [ExtendedKeyUsage of cert extensions] is null, or + * [ExtendedKeyUsage of cert extensions] include [extendedKeyUsage]. + * + * @type { ?Array<string> } array of oIDs. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + extendedKeyUsage?: Array<string>; + + /** + * The X509Certificate must have subject and subject alternative names that meet the specified name constraints: + * [Rule] + * null : Do not match. + * NOT null : match ok if [NameConstraints of cert extensions] is null, or + * [NameConstraints of cert extensions] include [nameConstraints]. + * + * @type { ?Uint8Array } ASN.1 DER encoded form of nameConstraints + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + nameConstraints?: Uint8Array; + + /** + * The X509Certificate must have subject and subject alternative names that meet the specified name constraints: + * [Rule] + * null : Do not match. + * NOT null : match ok if [Certificate Policies of cert extensions] is null, or + * [Certificate Policies of cert extensions] include [certPolicy]. + * + * @type { ?Array<string> } array of oIDs. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + certPolicy?: Array<string>; + + /** + * The specified date must fall within the private key validity period for the X509Certificate: + * [Rule] + * null : Do not match. + * NOT null : match ok if [Private Key Valid Period of cert extensions] is null, or + * [privateKeyValid] fall in [Private Key Valid Period of cert extensions]. + * + * @type { ?string } format is YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + privateKeyValid?: string; + + /** + * To match the KeyUsage of cert extensions: + * [Rule] + * null : Do not match. + * NOT null : match ok if [KeyUsage of cert extensions] is null, or + * [KeyUsage of cert extensions] include [keyUsage]. + * + * @type { ?Array<boolean> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * To match the KeyUsage of cert extensions: + * [Rule] + * null : Do not match. + * NOT null : match ok if [KeyUsage of cert extensions] is null, or + * [KeyUsage of cert extensions] include [keyUsage]. + * + * @type { ?Array<boolean> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + keyUsage?: Array<boolean>; + + /** + * The specified serial number must match the serialnumber for the X509Certificate: + * [Rule] + * null : Do not match. + * NOT null : match ok if it is equal with [serialNumber of cert]. + * + * @type { ?bigint } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The specified serial number must match the serialnumber for the X509Certificate: + * [Rule] + * null : Do not match. + * NOT null : match ok if it is equal with [serialNumber of cert]. + * + * @type { ?bigint } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + serialNumber?: bigint; + + /** + * The specified value must match the subject for the X509Certificate: + * [Rule] + * null : Do not match. + * NOT null : match ok if it is equal with [subject of cert]. + * + * @type { ?Uint8Array } subject in DER encoding format + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The specified value must match the subject for the X509Certificate: + * [Rule] + * null : Do not match. + * NOT null : match ok if it is equal with [subject of cert]. + * + * @type { ?Uint8Array } subject in DER encoding format + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + subject?: Uint8Array; + + /** + * The specified value must match the Subject Key Identifier extension for the X509Certificate: + * [Rule] + * null : Do not match. + * NOT null : match ok if it is equal with [Subject Key Identifier of cert extensions]. + * + * @type { ?Uint8Array } subjectKeyIdentifier in DER encoding format ?? + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + subjectKeyIdentifier?: Uint8Array; + + /** + * The specified value must match the publicKey for the X509Certificate: + * [Rule] + * null : Do not match. + * NOT null : match ok if it is equal with [publicKey of cert]. + * + * @type { ?DataBlob } publicKey + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The specified value must match the publicKey for the X509Certificate: + * [Rule] + * null : Do not match. + * NOT null : match ok if it is equal with [publicKey of cert]. + * + * @type { ?DataBlob } publicKey + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + publicKey?: DataBlob; + + /** + * The specified value must match the publicKey for the X509Certificate: + * [Rule] + * null : Do not match. + * NOT null : match ok if it is equal with [publicKey of cert]. + * + * @type { ?string } the object identifier (OID) of the signature algorithm to check. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The specified value must match the publicKey for the X509Certificate: + * [Rule] + * null : Do not match. + * NOT null : match ok if it is equal with [publicKey of cert]. + * + * @type { ?string } the object identifier (OID) of the signature algorithm to check. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + publicKeyAlgID?: string; + } + + /** + * X509 CRL match parameters + * + * @typedef X509CRLMatchParameters + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * X509 CRL match parameters + * + * @typedef X509CRLMatchParameters + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface X509CRLMatchParameters { + /** + * To match the issuer of cert: + * [Rule] + * null : Do not match. + * NOT null : match if it is equal with [issuer of cert] in DER encoding. + * + * @type { ?Array<Uint8Array> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * To match the issuer of cert: + * [Rule] + * null : Do not match. + * NOT null : match if it is equal with [issuer of cert] in DER encoding. + * + * @type { ?Array<Uint8Array> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + issuer?: Array<Uint8Array>; + + /** + * To match X509Cert: + * [Rule] + * null : Do not match. + * NOT null : match if x509Cert.getEncoding is equal. + * + * @type { ?X509Cert } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * To match X509Cert: + * [Rule] + * null : Do not match. + * NOT null : match if x509Cert.getEncoding is equal. + * + * @type { ?X509Cert } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + x509Cert?: X509Cert; + + /** + * To match updateDateTime of CRL: + * [Rule] + * null : Do not verify. + * NOT null : verify if [thisUpdate in CRL] <= updateDateTime <= [nextUpdate in CRL] + * + * @type { ?string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + updateDateTime?: string; + + /** + * To match the maximum of CRL number extension: + * [Rule] + * null : Do not verify. + * NOT null : verify if [CRL number extension] <= maxCRL. + * + * @type { ?bigint } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + maxCRL?: bigint; + + /** + * To match the minimum of CRL number extension: + * [Rule] + * null : Do not verify. + * NOT null : verify if [CRL number extension] >= minCRL. + * + * @type { ?bigint } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + minCRL?: bigint; + } + + /** + * The certificate and CRL collection object. + * + * @typedef CertCRLCollection + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The certificate and CRL collection object. + * + * @typedef CertCRLCollection + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface CertCRLCollection { + /** + * return all Array<X509Cert> which match X509CertMatchParameters + * + * @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object. + * @returns { Promise<Array<X509Cert>> } + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * return all Array<X509Cert> which match X509CertMatchParameters + * + * @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object. + * @returns { Promise<Array<X509Cert>> } + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + selectCerts(param: X509CertMatchParameters): Promise<Array<X509Cert>>; + + /** + * return the X509 Cert which match X509CertMatchParameters + * + * @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object. + * @param { AsyncCallback<Array<X509Cert>> } callback - the callback of select cert. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * return the X509 Cert which match X509CertMatchParameters + * + * @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object. + * @param { AsyncCallback<Array<X509Cert>> } callback - the callback of select cert. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + selectCerts(param: X509CertMatchParameters, callback: AsyncCallback<Array<X509Cert>>): void; + + /** + * return all X509 CRL which match X509CRLMatchParameters + * + * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. + * @returns { Promise<Array<X509CRL>> } + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * return all X509 CRL which match X509CRLMatchParameters + * + * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. + * @returns { Promise<Array<X509CRL>> } + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + selectCRLs(param: X509CRLMatchParameters): Promise<Array<X509CRL>>; + + /** + * return all X509 CRL which match X509CRLMatchParameters + * + * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. + * @param { AsyncCallback<Array<X509CRL>> } callback - the callback of select CRL. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * return all X509 CRL which match X509CRLMatchParameters + * + * @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object. + * @param { AsyncCallback<Array<X509CRL>> } callback - the callback of select CRL. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + selectCRLs(param: X509CRLMatchParameters, callback: AsyncCallback<Array<X509CRL>>): void; + } + + /** + * create object CertCRLCollection + * + * @param { Array<X509Cert> } certs - array of X509Cert. + * @param { Array<X509CRL> } [options] crls - array of X509CRL. + * @returns { CertCRLCollection } + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * create object CertCRLCollection + * + * @param { Array<X509Cert> } certs - array of X509Cert. + * @param { Array<X509CRL> } [crls] - array of X509CRL. + * @returns { CertCRLCollection } + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createCertCRLCollection(certs: Array<X509Cert>, crls?: Array<X509CRL>): CertCRLCollection; + + /** + * X509 Certification chain object. + * + * @typedef X509CertChain + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * X509 Certification chain object. + * + * @typedef X509CertChain + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface X509CertChain { + /** + * Get the X509 certificate list. + * + * @returns { Array<X509Cert> } the X509 certificate list. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Get the X509 certificate list. + * + * @returns { Array<X509Cert> } the X509 certificate list. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getCertList(): Array<X509Cert>; + + /** + * Validate the cert chain with validate parameters. + * + * @param { CertChainValidationParameters } param - indicate the cert chain Validate parameters. + * @returns { Promise<CertChainValidationResult> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Validate the cert chain with validate parameters. + * + * @param { CertChainValidationParameters } param - indicate the cert chain Validate parameters. + * @returns { Promise<CertChainValidationResult> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + validate(param: CertChainValidationParameters): Promise<CertChainValidationResult>; + + /** + * Validate the cert chain with validate parameters. + * + * @param { CertChainValidationParameters } param - indicate the cert chain validate parameters. + * @param { AsyncCallback<CertChainValidationResult> } callback - indicate the cert chain validate result. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Validate the cert chain with validate parameters. + * + * @param { CertChainValidationParameters } param - indicate the cert chain validate parameters. + * @param { AsyncCallback<CertChainValidationResult> } callback - indicate the cert chain validate result. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + validate(param: CertChainValidationParameters, callback: AsyncCallback<CertChainValidationResult>): void; + + /** + * Get the string type data of the object. + * + * @returns { string } the string type data of the object. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + toString(): string; + + /** + * Get the hash value of DER format data. + * + * @returns { Uint8Array } the hash value of DER format data. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + hashCode(): Uint8Array; + } + + /** + * Provides to create X509 certificate chain object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert data. + * @returns { Promise<X509CertChain> } + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides to create X509 certificate chain object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert data. + * @returns { Promise<X509CertChain> } + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createX509CertChain(inStream: EncodingBlob): Promise<X509CertChain>; + + /** + * Provides to create X509 certificate chain object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert data. + * @param { AsyncCallback<X509CertChain> } callback + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides to create X509 certificate chain object. + * The returned object provides the data parsing or verification capability. + * + * @param { EncodingBlob } inStream - indicate the input cert data. + * @param { AsyncCallback<X509CertChain> } callback + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createX509CertChain(inStream: EncodingBlob, callback: AsyncCallback<X509CertChain>): void; + + /** + * Create certificate chain object with certificate array. + * + * @param { Array<X509Cert> } certs - indicate the certificate array. + * @returns { X509CertChain } the certificate chain object. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Create certificate chain object with certificate array. + * + * @param { Array<X509Cert> } certs - indicate the certificate array. + * @returns { X509CertChain } the certificate chain object. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createX509CertChain(certs: Array<X509Cert>): X509CertChain; + + /** + * Create and validate a certificate chain with the build parameters. + * + * @param { CertChainBuildParameters } param - indicate the certificate chain build parameters. + * @returns { Promise<CertChainBuildResult> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function buildX509CertChain(param: CertChainBuildParameters): Promise<CertChainBuildResult>; + + /** + * The encoding base format. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + enum EncodingBaseFormat { + /** + * PEM format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + PEM = 0, + + /** + * DER format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + DER = 1, + } + + /** + * PKCS12 data. + * + * @typedef Pkcs12Data + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + interface Pkcs12Data { + /** + * The private key. + * + * @type { ?(string | Uint8Array) } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + privateKey?: string | Uint8Array; + + /** + * The certificate corresponding to the private key. + * + * @type { ?X509Cert } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + cert?: X509Cert; + + /** + * The other certificates. + * + * @type { ?Array<X509Cert> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + otherCerts?: Array<X509Cert>; + } + + /** + * PKCS12 parsing config. + * + * @typedef Pkcs12ParsingConfig + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + interface Pkcs12ParsingConfig { + /** + * The password of the PKCS12. + * + * @type { string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + password: string; + + /** + * Whether to get the private key. + * + * @type { ?boolean } + * @default true + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + needsPrivateKey?: boolean; + + /** + * The output format of the private key. + * + * @type { ?EncodingBaseFormat } + * @default EncodingBaseFormat.PEM + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + privateKeyFormat?: EncodingBaseFormat; + + /** + * Whether to get the certificate corresponding to the private key. + * + * @type { ?boolean } + * @default true + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + needsCert?: boolean; + + /** + * Whether to get other certificates. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + needsOtherCerts?: boolean; + } + + /** + * Parse PKCS12. + * + * @param { Uint8Array } data - the PKCS12 data. + * @param { Pkcs12ParsingConfig } config - the configuration for parsing PKCS12. + * @returns { Pkcs12Data } the Pkcs12Data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030008 - maybe wrong password. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + function parsePkcs12(data: Uint8Array, config: Pkcs12ParsingConfig): Pkcs12Data; + + /** + * Get trust anchor array from specified P12. + * + * @param { Uint8Array } keystore - the file path of the P12. + * @param { string } pwd - the password of the P12. + * @returns { Promise<Array<X509TrustAnchor>> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createTrustAnchorsWithKeyStore(keystore: Uint8Array, pwd: string): Promise<Array<X509TrustAnchor>>; + + /** + * Create X500DistinguishedName object with the name in string format. + * + * @param { string } nameStr - the string format of the Name type defined by X509. + * @returns { Promise<X500DistinguishedName> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createX500DistinguishedName(nameStr: string): Promise<X500DistinguishedName>; + + /** + * Create X500DistinguishedName object with the name in DER format. + * + * @param { Uint8Array } nameDer - the DER format of the Name type defined by X509. + * @returns { Promise<X500DistinguishedName> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030002 - the certificate signature verification failed. + * @throws { BusinessError } 19030003 - the certificate has not taken effect. + * @throws { BusinessError } 19030004 - the certificate has expired. + * @throws { BusinessError } 19030005 - failed to obtain the certificate issuer. + * @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate. + * @throws { BusinessError } 19030007 - the key cannot be used for digital signature. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + function createX500DistinguishedName(nameDer: Uint8Array): Promise<X500DistinguishedName>; + + /** + * Provides the x500 distinguished name type. + * + * @typedef X500DistinguishedName + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface X500DistinguishedName { + /** + * Get distinguished name string in ASCII encoding type. + * + * @returns { string } distinguished name string. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getName(): string; + + /** + * Get distinguished name string according to the encoding type. + * + * @param { EncodingType } encodingType - the specified encoding type. + * @returns { string } distinguished name string. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19020003 - parameter check failed. Possible causes: + * <br>1. The value of encodingType is not in the EncodingType enumeration range. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 20 + */ + getName(encodingType: EncodingType): string; + + /** + * Get distinguished name string by type. + * + * @param { string } type - the specified type name. + * @returns { Array<string> } distinguished name string. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getName(type: string): Array<string>; + + /** + * Get distinguished name in der coding format. + * + * @returns { EncodingBlob } distinguished name encoded data. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + getEncoded(): EncodingBlob; + } + + /** + * Provides the x509 trust anchor type. + * + * @typedef X509TrustAnchor + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides the x509 trust anchor type. + * + * @typedef X509TrustAnchor + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface X509TrustAnchor { + /** + * The trust CA cert. + * + * @type { ?X509Cert } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The trust CA cert. + * + * @type { ?X509Cert } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + CACert?: X509Cert; + + /** + * The trust CA public key in DER format. + * + * @type { ?Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The trust CA public key in DER format. + * + * @type { ?Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + CAPubKey?: Uint8Array; + + /** + * The trust CA subject in DER format. + * + * @type { ?Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The trust CA subject in DER format. + * + * @type { ?Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + CASubject?: Uint8Array; + + /** + * The name constraints in DER format. + * + * @type { ?Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + nameConstraints?: Uint8Array; + } + + /** + * Enum for revocation check option. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + enum RevocationCheckOptions { + /** + * Indicates priority to use OCSP for verification. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + REVOCATION_CHECK_OPTION_PREFER_OCSP = 0, + + /** + * Indicates support for verifying revocation status by accessing the network to obtain CRL or OCSP responses. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + REVOCATION_CHECK_OPTION_ACCESS_NETWORK, + + /** + * Indicates when the 'REVOCATION_CHECK_OPTION_ACCESS_NETWORK' option is turned on, it is effective. + * If the preferred verification method is unable to verify the certificate status due to network reasons, + * an alternative solution will be used for verification. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + REVOCATION_CHECK_OPTION_FALLBACK_NO_PREFER, + + /** + * Indicates when the 'REVOCATION_CHECK_OPTION_ACCESS_NETWORK' option is turned on, it is effective. + * If both the CRL and OCSP responses obtained online cannot verify the certificate status due to network reasons, + * the locally set CRL and OCSP responses will be used for verification. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + REVOCATION_CHECK_OPTION_FALLBACK_LOCAL + } + + /** + * Enum for validation policy type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + enum ValidationPolicyType { + /** + * Indicates not need to verify the sslHostname field in the certificate. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + VALIDATION_POLICY_TYPE_X509 = 0, + + /** + * Indicates need to verify the sslHostname field in the certificate. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + VALIDATION_POLICY_TYPE_SSL + } + + /** + * Enum for validation keyusage type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + enum KeyUsageType { + /** + * Indicates the certificate public key can be used for digital signature operations. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + KEYUSAGE_DIGITAL_SIGNATURE = 0, + + /** + * Indicates certificate public key can be used for non repudiation operations, preventing the signer from denying their signature. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + KEYUSAGE_NON_REPUDIATION, + + /** + * Indicates certificate public key can be used for key encryption operations, for encrypting symmetric keys, etc. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + KEYUSAGE_KEY_ENCIPHERMENT, + + /** + * Indicates certificate public key can be used for data encryption operations, to encrypt data. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + KEYUSAGE_DATA_ENCIPHERMENT, + + /** + * Indicates certificate public key can be used for key negotiation operations, to negotiate shared keys. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + KEYUSAGE_KEY_AGREEMENT, + + /** + * Indicates certificate public key can be used for certificate signing operations. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + KEYUSAGE_KEY_CERT_SIGN, + + /** + * Indicates certificate public key can be used for signing operations on certificate revocation lists (CRLs). + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + KEYUSAGE_CRL_SIGN, + + /** + * Indicates the key can only be used for encryption operations and cannot be used for decryption operations. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + KEYUSAGE_ENCIPHER_ONLY, + + /** + * Indicates the key can only be used for decryption operations and cannot be used for encryption operations. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + KEYUSAGE_DECIPHER_ONLY + } + + /** + * Provides the certificate chain validate revocation parameters. + * + * @typedef RevocationCheckParameter + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface RevocationCheckParameter { + /** + * The additional field for sending OCSP requests. + * + * @type { ?Array<Uint8Array> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ocspRequestExtension?: Array<Uint8Array>; + + /** + * The server URL address for sending requests to OCSP. + * + * @type { ?string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ocspResponderURI?: string; + + /** + * The signing certificate for verifying OCSP response signatures. + * + * @type { ?X509Cert } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ocspResponderCert?: X509Cert; + + /** + * The OCSP response message returned by an OCSP server. + * + * @type { ?Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ocspResponses?: Uint8Array; + + /** + * The URL address for downloading the CRL list. + * + * @type { ?string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + crlDownloadURI?: string; + + /** + * The certificate revocation status verification option. + * + * @type { ?Array<RevocationCheckOptions> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + options?: Array<RevocationCheckOptions>; + + /** + * The digest used to generate the ocsp cert id. + * + * @type { ?string } + * @default SHA256 + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + ocspDigest?: string; + } + + /** + * Provides the certificate chain validate parameters type. + * + * @typedef CertChainValidationParameters + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Provides the certificate chain validate parameters type. + * + * @typedef CertChainValidationParameters + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface CertChainValidationParameters { + /** + * The datetime to verify the certificate chain validity period. + * + * @type { ?string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The datetime to verify the certificate chain validity period. + * + * @type { ?string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + date?: string; + + /** + * The trust ca certificates to verify the certificate chain. + * + * @type { Array<X509TrustAnchor> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The trust ca certificates to verify the certificate chain. + * + * @type { Array<X509TrustAnchor> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + trustAnchors: Array<X509TrustAnchor>; + + /** + * The cert and CRL list to build cert chain and verify the certificate chain revocation state. + * + * @type { ?Array<CertCRLCollection> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The cert and CRL list to build cert chain and verify the certificate chain revocation state. + * + * @type { ?Array<CertCRLCollection> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + certCRLs?: Array<CertCRLCollection>; + + /** + * The revocation parameters to verify the certificate chain revocation status. + * + * @type { ?RevocationCheckParameter } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + revocationCheckParam?: RevocationCheckParameter; + + /** + * The policy to verify the certificate chain validity. + * + * @type { ?ValidationPolicyType } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + policy?: ValidationPolicyType; + + /** + * The sslHostname to verify the certificate chain validity. + * + * @type { ?string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + sslHostname?: string; + + /** + * The keyUsage to verify the certificate chain validity. + * + * @type { ?Array<KeyUsageType> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + keyUsage?: Array<KeyUsageType>; + } + + /** + * Certification chain validate result. + * + * @typedef CertChainValidationResult + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * Certification chain validate result. + * + * @typedef CertChainValidationResult + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface CertChainValidationResult { + /** + * The cert chain trust anchor. + * + * @type { X509TrustAnchor } + * @readonly + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The cert chain trust anchor. + * + * @type { X509TrustAnchor } + * @readonly + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + readonly trustAnchor: X509TrustAnchor; + + /** + * The target certificate. + * + * @type { X509Cert } + * @readonly + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @since 11 + */ + /** + * The target certificate. + * + * @type { X509Cert } + * @readonly + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + readonly entityCert: X509Cert; + } + + /** + * Provides the certificate chain build parameters type. + * + * @typedef CertChainBuildParameters + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface CertChainBuildParameters { + /** + * The certificate match parameters to selects certificate from the certificate collection. + * + * @type { X509CertMatchParameters } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + certMatchParameters: X509CertMatchParameters; + + /** + * The maximum length of the certificate chain to be built. + * + * @type { ?number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + maxLength?: number; + + /** + * The CertChain validation parameters. + * + * @type { CertChainValidationParameters } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + validationParameters: CertChainValidationParameters; + } + + /** + * Certification chain build result. + * + * @typedef CertChainBuildResult + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + interface CertChainBuildResult { + /** + * The certificate chain of build result. + * + * @type { X509CertChain } + * @readonly + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + readonly certChain: X509CertChain; + + /** + * The certificate chain validation result. + * + * @type { CertChainValidationResult } + * @readonly + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 12 + */ + readonly validationResult: CertChainValidationResult; + } + + /** + * Enum for CMS content type. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + enum CmsContentType { + /** + * Signed data. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + SIGNED_DATA = 0 + } + + /** + * Enum for CMS content data format. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + enum CmsContentDataFormat { + /** + * Binary format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + BINARY = 0, + + /** + * Text format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + TEXT = 1 + } + + /** + * Enum for CMS format. + * + * @enum { number } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + enum CmsFormat { + /** + * PEM format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + PEM = 0, + + /** + * DER format. + * + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + DER = 1 + } + + /** + * Private key info. + * + * @typedef PrivateKeyInfo + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + interface PrivateKeyInfo { + /** + * The unencrypted or encrypted private key, in PEM or DER format. + * + * @type { string | Uint8Array } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + key: string | Uint8Array; + + /** + * The password of the private key, if the private key is encrypted. + * + * @type { ?string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + password?: string; + } + + /** + * Configuration options for CMS signer. + * + * @typedef CmsSignerConfig + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + interface CmsSignerConfig { + /** + * Digest algorithm name, such as "SHA384". + * + * @type { string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + mdName: string; + + /** + * Whether to add the certificate. + * + * @type { ?boolean } + * @default true + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + addCert?: boolean; + + /** + * Whether to add the signature attributes. + * + * @type { ?boolean } + * @default true + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + addAttr?: boolean; + + /** + * Whether to add the smime capibilities to the signature attributes. + * + * @type { ?boolean } + * @default true + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + addSmimeCapAttr?: boolean + } + + /** + * CMS generator options. + * + * @typedef CmsGeneratorOptions + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + interface CmsGeneratorOptions { + /** + * The format of the content data. + * + * @type { ?CmsContentDataFormat } + * @default CmsContentDataFormat.BINARY + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + contentDataFormat?: CmsContentDataFormat; + + /** + * The output format of the CMS final data. + * + * @type { ?CmsFormat } + * @default CmsFormat.DER + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + outFormat?: CmsFormat; + + /** + * Whether the CMS final data does not contain original content data. + * + * @type { ?boolean } + * @default false + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + isDetached?: boolean; + } + + /** + * Provides the interface for generating CMS. + * + * @typedef CmsGenerator + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + interface CmsGenerator { + /** + * Used to add the signer info. + * + * @param { X509Cert } cert - the signer certificate. + * @param { PrivateKeyInfo } keyInfo - the private key info of the signer certificate. + * @param { CmsSignerConfig } config - the configuration for CMS signer. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030008 - maybe wrong password. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + addSigner(cert: X509Cert, keyInfo: PrivateKeyInfo, config: CmsSignerConfig): void; + + /** + * Used to add the certificate, such as the issuer certificate of the signer certificate. + * + * @param { X509Cert } cert - the certificate. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + addCert(cert: X509Cert): void; + + /** + * Used to obtain the CMS final data, such as CMS signed data. + * + * @param { Uint8Array } data - the content data for CMS operation. + * @param { CmsGeneratorOptions } options - the configuration options for CMS operation. + * @returns { Promise<Uint8Array | string> } the promise returned by the function. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + doFinal(data: Uint8Array, options?: CmsGeneratorOptions): Promise<Uint8Array | string>; + + /** + * Used to obtain the CMS final data, such as CMS signed data. + * + * @param { Uint8Array } data - the content data for CMS operation. + * @param { CmsGeneratorOptions } options - the configuration options for CMS operation. + * @returns { Uint8Array | string } the CMS final data. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + doFinalSync(data: Uint8Array, options?: CmsGeneratorOptions): Uint8Array | string; + } + + /** + * Used to create CmsGenerator. + * + * @param { CmsContentType } contentType - the CMS content type. + * @returns { CmsGenerator } the CmsGenerator. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + function createCmsGenerator(contentType: CmsContentType): CmsGenerator; + + /** + * Additional information about the subject of the certificate. + * + * @typedef CsrAttribute + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + interface CsrAttribute { + /** + * Attribute type. + * + * @type { string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + type: string; + + /** + * Attribute value. + * + * @type { string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + value: string; + } + + /** + * Configuration for generating a certificate signing request. + * + * @typedef CsrGenerationConfig + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + interface CsrGenerationConfig { + /** + * The subject. + * + * @type { X500DistinguishedName } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + subject: X500DistinguishedName; + + /** + * The message digest name, such as "SHA384". + * + * @type { string } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + mdName: string; + + /** + * The attributes. + * + * @type { ?Array<CsrAttribute> } + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + attributes?: Array<CsrAttribute>; + + /** + * The output format of CSR. + * + * @type { ?EncodingBaseFormat } + * @default EncodingBaseFormat.PEM + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + outFormat?: EncodingBaseFormat; + } + + /** + * Used to generate certificate signing request. + * + * @param { PrivateKeyInfo } keyInfo - the private key info. + * @param { CsrGenerationConfig } config - the configuration for generating CSR. + * @returns { string | Uint8Array } the CSR in PEM or DER format. + * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 19020001 - memory malloc failed. + * @throws { BusinessError } 19020002 - runtime error. Possible causes: 1. Memory copy failed; + * <br>2. A null pointer occurs inside the system; 3. Failed to convert parameters between ArkTS and C. + * @throws { BusinessError } 19030001 - crypto operation error. + * @throws { BusinessError } 19030008 - maybe wrong password. + * @syscap SystemCapability.Security.Cert + * @crossplatform + * @atomicservice + * @since 18 + */ + function generateCsr(keyInfo: PrivateKeyInfo, config: CsrGenerationConfig): string | Uint8Array; +} + +export default cert; diff --git a/api/@ohos.security.certManager.d.ts b/api/@ohos.security.certManager.d.ts index 278e77f5c5de6c49bffebd3bd6841085ad3d9840..1ff0fe378b6a504aca8e41f3761c757c967e12ab 100644 --- a/api/@ohos.security.certManager.d.ts +++ b/api/@ohos.security.certManager.d.ts @@ -62,7 +62,8 @@ declare namespace certificateManager { CM_ERROR_INVALID_PARAMS = 401, /** - * Indicates that internal error. + * Indicates that internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * * @syscap SystemCapability.Security.CertificateManager * @since 11 @@ -107,7 +108,15 @@ declare namespace certificateManager { * @syscap SystemCapability.Security.CertificateManager * @since 18 */ - CM_ERROR_DEVICE_ENTER_ADVSECMODE = 17500007 + CM_ERROR_DEVICE_ENTER_ADVSECMODE = 17500007, + + /** + * Indicates that the device does not support the specified certificate store path. + * + * @syscap SystemCapability.Security.CertificateManager + * @since 20 + */ + CM_ERROR_STORE_PATH_NOT_SUPPORTED = 17500009 } /** @@ -621,7 +630,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500003 - The keystore is in an invalid format or the keystore password is incorrect. * @syscap SystemCapability.Security.CertificateManager * @since 11 @@ -637,7 +647,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500003 - The keystore is in an invalid format or the keystore password is incorrect. * @throws { BusinessError } 17500004 - The number of certificates or credentials reaches the maximum allowed. * @syscap SystemCapability.Security.CertificateManager @@ -661,7 +672,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500003 - The keystore is in an invalid format or the keystore password is incorrect. * @syscap SystemCapability.Security.CertificateManager * @since 11 @@ -677,7 +689,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500003 - The keystore is in an invalid format or the keystore password is incorrect. * @throws { BusinessError } 17500004 - The number of certificates or credentials reaches the maximum allowed. * @syscap SystemCapability.Security.CertificateManager @@ -694,7 +707,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - The certificate does not exist. * @syscap SystemCapability.Security.CertificateManager * @since 11 @@ -710,7 +724,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - The certificate does not exist. * @syscap SystemCapability.Security.CertificateManager * @since 11 @@ -726,7 +741,8 @@ declare namespace certificateManager { * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @systemapi * @since 11 @@ -740,7 +756,8 @@ declare namespace certificateManager { * @returns { Promise<CMResult> } The promise returned by the function. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @systemapi * @since 11 @@ -756,7 +773,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - The certificate does not exist. * @syscap SystemCapability.Security.CertificateManager * @since 11 @@ -772,7 +790,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - The certificate does not exist. * @syscap SystemCapability.Security.CertificateManager * @since 11 @@ -789,7 +808,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - The certificate does not exist. * @syscap SystemCapability.Security.CertificateManager * @since 11 @@ -804,7 +824,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - The certificate does not exist. * @throws { BusinessError } 17500005 - The application is not authorized by the user. * @syscap SystemCapability.Security.CertificateManager @@ -822,7 +843,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - The certificate does not exist. * @syscap SystemCapability.Security.CertificateManager * @since 11 @@ -837,7 +859,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - The certificate does not exist. * @throws { BusinessError } 17500005 - The application is not authorized by the user. * @syscap SystemCapability.Security.CertificateManager @@ -855,7 +878,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 11 */ @@ -871,7 +895,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 11 */ @@ -886,7 +911,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 11 */ @@ -902,7 +928,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 11 */ @@ -918,7 +945,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 11 */ @@ -933,7 +961,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 11 */ @@ -948,7 +977,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 11 */ @@ -963,7 +993,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - The certificate does not exist. * @throws { BusinessError } 17500005 - The application is not authorized by the user. * @syscap SystemCapability.Security.CertificateManager @@ -980,7 +1011,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 12 */ @@ -992,7 +1024,8 @@ declare namespace certificateManager { * @permission ohos.permission.ACCESS_CERT_MANAGER * @returns { Promise<CMResult> } The promise returned by the function. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 12 */ @@ -1007,7 +1040,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 18 */ @@ -1022,7 +1056,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - The certificate does not exist. * @syscap SystemCapability.Security.CertificateManager * @since 12 @@ -1036,7 +1071,8 @@ declare namespace certificateManager { * @returns { Promise<CMResult> } The promise returned by the function. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @systemapi * @since 12 @@ -1049,7 +1085,8 @@ declare namespace certificateManager { * @permission ohos.permission.ACCESS_CERT_MANAGER * @returns { Promise<CMResult> } The private certificates installed by the application. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 13 */ @@ -1106,6 +1143,31 @@ declare namespace certificateManager { GLOBAL_USER = 2 } + /** + * Enum for the certificate algorithm type. + * + * @enum { number } + * @syscap SystemCapability.Security.CertificateManager + * @since 20 + */ + export enum CertAlgorithm { + /** + * Indicates that the international cryptography algorithms, such as RSA, ECC NIST. + * + * @syscap SystemCapability.Security.CertificateManager + * @since 20 + */ + INTERNATIONAL = 1, + + /** + * Indicates that the Commercial Password algorithms, such as SM2, SM4. + * + * @syscap SystemCapability.Security.CertificateManager + * @since 20 + */ + SM = 2, + } + /** * Provides the certificate file store property type. * @@ -1131,6 +1193,15 @@ declare namespace certificateManager { * @since 18 */ certScope?: CertScope; + + /** + * Indicates the certificate algorithm type. This parameter is valid only when certType is set to CA_CERT_SYSTEM. default value is INTERNATIONAL. + * + * @type { ?CertAlgorithm } + * @syscap SystemCapability.Security.CertificateManager + * @since 20 + */ + certAlg?: CertAlgorithm; } /** @@ -1140,10 +1211,24 @@ declare namespace certificateManager { * @returns { string } the certificate file store path. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManager * @since 18 */ + /** + * Get the certificate file store path. + * + * @param { CertStoreProperty } property - Indicates the certificate file store path property. + * @returns { string } the certificate file store path. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. + * @throws { BusinessError } 17500009 - The device does not support the specified certificate store path, such as the overseas device does not support the certificate which algorithm is SM. + * @syscap SystemCapability.Security.CertificateManager + * @since 20 + */ function getCertificateStorePath(property: CertStoreProperty): string; /** @@ -1156,7 +1241,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500003 - Indicates that the certificate is in an invalid format. * @throws { BusinessError } 17500004 - Indicates that the number of certificates reaches the maximum allowed. * @throws { BusinessError } 17500007 - Indicates that the device enters advanced security mode. In this mode, the user CA certificate cannot be installed. @@ -1173,7 +1259,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500002 - Indicates that the certificate does not exist. * @syscap SystemCapability.Security.CertificateManager * @since 18 @@ -1192,7 +1279,8 @@ declare namespace certificateManager { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17500001 - Internal error. + * @throws { BusinessError } 17500001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 17500003 - The keystore is in an invalid format or the keystore password is incorrect. * @throws { BusinessError } 17500004 - The number of certificates or credentials reaches the maximum allowed. * @syscap SystemCapability.Security.CertificateManager diff --git a/api/@ohos.security.certManagerDialog.d.ts b/api/@ohos.security.certManagerDialog.d.ts index 445f047e9aa09bdb83f02649926fc9725908be25..1f0de777eb0d49c5cb58439d2dc5fb2d4f6ae317 100644 --- a/api/@ohos.security.certManagerDialog.d.ts +++ b/api/@ohos.security.certManagerDialog.d.ts @@ -142,7 +142,8 @@ declare namespace certificateManagerDialog { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 29700001 - Internal error. + * @throws { BusinessError } 29700001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @syscap SystemCapability.Security.CertificateManagerDialog * @stagemodelonly * @since 13 @@ -219,7 +220,8 @@ declare namespace certificateManagerDialog { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 29700001 - Internal error. + * @throws { BusinessError } 29700001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 29700002 - The user cancels the installation operation. * @throws { BusinessError } 29700003 - The user install certificate failed in the certificate manager dialog. * @throws { BusinessError } 29700004 - The API is not supported on this device. @@ -239,7 +241,8 @@ declare namespace certificateManagerDialog { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 29700001 - Internal error. + * @throws { BusinessError } 29700001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 29700002 - The user cancels the installation operation. * @throws { BusinessError } 29700003 - The user install certificate failed in the certificate manager dialog, such as the certificate is in an invalid format. * @throws { BusinessError } 29700004 - The API is not supported on this device. @@ -261,7 +264,8 @@ declare namespace certificateManagerDialog { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 29700001 - Internal error. + * @throws { BusinessError } 29700001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 29700002 - The user cancels the uninstallation operation. * @throws { BusinessError } 29700003 - The user uninstall certificate failed in the certificate manager dialog, such as the certificate uri is not exist. * @throws { BusinessError } 29700004 - The API is not supported on this device. @@ -303,7 +307,8 @@ declare namespace certificateManagerDialog { * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 29700001 - Internal error. + * @throws { BusinessError } 29700001 - Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. * @throws { BusinessError } 29700003 - Show the certificate detail dialog fail, such as the certificate is in an invalid format. * @throws { BusinessError } 29700004 - The API is not supported on this device. * @syscap SystemCapability.Security.CertificateManagerDialog @@ -311,6 +316,27 @@ declare namespace certificateManagerDialog { * @since 18 */ function openCertificateDetailDialog(context: common.Context, cert: Uint8Array, property: CertificateDialogProperty): Promise<void>; + + /** + * Opens the authorization page of the certificate management dialog box. On the page displayed, the user can + * authorize a certificate for the application. + * + * @permission ohos.permission.ACCESS_CERT_MANAGER + * @param { common.Context } context Context of the HAP. + * @returns { Promise<string> } Promise used to return the URI of the certificate authorized. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the + * permission required to call the API. + * @throws { BusinessError } 401 - Invalid parameter. Possible causes: 1. A mandatory parameter is left + * unspecified. + * 2. Incorrect parameter type. 3. Parameter verification failed. + * @throws { BusinessError } 29700001 Internal error. Possible causes: 1. IPC communication failed; + * <br>2. Memory operation error; 3. File operation error. + * @throws { BusinessError } 29700002 The user cancels the authorization. + * @syscap SystemCapability.Security.CertificateManagerDialog + * @stagemodelonly + * @since 20 + */ + function openAuthorizeDialog(context: common.Context): Promise<string>; } export default certificateManagerDialog; diff --git a/api/@ohos.security.cryptoFramework.d.ts b/api/@ohos.security.cryptoFramework.d.ts index deb0aa9a015e5caffda5a878b5fcddec53cf9196..df5fa62fb09df39d59774ae2da8dc96c3e6e9cdf 100644 --- a/api/@ohos.security.cryptoFramework.d.ts +++ b/api/@ohos.security.cryptoFramework.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Copyright (c) 2022-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -35,7 +35,8 @@ import type { AsyncCallback, Callback } from './@ohos.base'; * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace cryptoFramework { /** @@ -95,13 +96,13 @@ declare namespace cryptoFramework { NOT_SUPPORT = 801, /** - * Indicates the memory error. + * Indicates the memory operation failed. * * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ /** - * Indicates the memory error. + * Indicates the memory operation failed. * * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -111,20 +112,20 @@ declare namespace cryptoFramework { ERR_OUT_OF_MEMORY = 17620001, /** - * Indicates that runtime error. + * Indicates that failed to convert parameters between arkts and c. * * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ /** - * Indicates that runtime error. + * Indicates that failed to convert parameters between arkts and c. * * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 */ /** - * Indicates that runtime error. + * Indicates that failed to convert parameters between arkts and c. * * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -133,6 +134,16 @@ declare namespace cryptoFramework { */ ERR_RUNTIME_ERROR = 17620002, + /** + * Indicates that parameter check failed. + * + * @syscap SystemCapability.Security.CryptoFramework + * @crossplatform + * @atomicservice + * @since 20 + */ + ERR_PARAMETER_CHECK_FAILED = 17620003, + /** * Indicates that crypto operation error. * @@ -158,13 +169,14 @@ declare namespace cryptoFramework { * @since 9 */ /** - * Provides the data blob type. + * Defines a buffer array of the Binary Large Object (BLOB) type. * * @typedef DataBlob * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ interface DataBlob { /** @@ -181,7 +193,8 @@ declare namespace cryptoFramework { * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11','1.2':'20'} + * @arkts 1.1&1.2 */ data: Uint8Array; } @@ -202,7 +215,8 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Provides the ParamsSpec type, including the algorithm name. + * Encapsulates the parameters used for encryption or decryption.You need to construct its child class object and + * pass it to init for symmetric encryption or decryption. * * @typedef ParamsSpec * @syscap SystemCapability.Security.CryptoFramework.Cipher @@ -256,7 +270,8 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Provides the IvParamsSpec type, including the parameter iv. + * Defines the child class of ParamsSpec. It is a parameter of init for symmetric encryption or decryption. + * IvParamsSpec applies to the cipher modes such as CBC, CTR, OFB, and CFB, which use only the IV. * * @typedef IvParamsSpec * @extends ParamsSpec @@ -282,7 +297,11 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Indicates the algorithm parameters such as iv. + * IV for encryption or decryption. + * Options: + * - AES CBC, CTR, OFB, or CFB mode: 16-byte IV + * - 3DES CBC, OFB, or CFB mode: 8-byte IV + * - SM4 CBC, CTR, OFB, or CFB mode: 16-byte IV * * @type { DataBlob } * @syscap SystemCapability.Security.CryptoFramework.Cipher @@ -523,7 +542,7 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Enum for obtain the crypto operation. + * Enumerates the cryptographic operations. * * @enum { number } * @syscap SystemCapability.Security.CryptoFramework.Cipher @@ -580,7 +599,7 @@ declare namespace cryptoFramework { } /** - * Asymmetric key encoding configuration. + * Represents the RSA private key encoding parameters. You can use it to generate an encoded private key string with the specified algorithm and password. * * @typedef KeyEncodingConfig * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey @@ -630,12 +649,14 @@ declare namespace cryptoFramework { */ /** * Provides the Key type, which is the common parent class of keys. + * Before performing cryptographic operations, you need to construct a child class object of Key and pass it to init of the Cipher instance. * * @typedef Key * @syscap SystemCapability.Security.CryptoFramework.Key * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface Key { /** @@ -643,7 +664,7 @@ declare namespace cryptoFramework { * * @returns { DataBlob } the binary data of the key object. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -653,7 +674,7 @@ declare namespace cryptoFramework { * * @returns { DataBlob } the binary data of the key object. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -661,10 +682,13 @@ declare namespace cryptoFramework { */ /** * Encode the key object to binary data. + * The key can be a symmetric key, public key, or private key. + * The public key must be in DER encoding format and comply with the ASN.1 syntax and X.509 specifications. + * The private key must be in DER encoding format and comply with the ASN.1 syntax and PKCS#8 specifications. * * @returns { DataBlob } the binary data of the key object. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key * @crossplatform @@ -720,7 +744,7 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Indicates the algorithm name of the key object. + * Indicates the algorithm name of the key object. This parameter contains the key length if the key is a symmetric key. * * @type { string } * @readonly @@ -750,14 +774,16 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Provides the SymKey type, which is used for symmetric cryptography. + * Provides APIs for symmetric key operations. + * Its objects need to be passed to init of the Cipher instance in symmetric encryption and decryption. * * @typedef SymKey * @extends Key * @syscap SystemCapability.Security.CryptoFramework.Key.SymKey * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface SymKey extends Key { /** @@ -774,7 +800,8 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Reset the key data to zero in the memory. + * Clears the keys in the memory. This API returns the result synchronously. + * You are advised to use this API when symmetric key instances are no longer used. * * @syscap SystemCapability.Security.CryptoFramework.Key.SymKey * @crossplatform @@ -802,7 +829,7 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Provides the private key type. + * Provides the private key type. It needs to be passed in during asymmetric encryption and decryption, signing, and key agreement. * * @typedef PriKey * @extends Key @@ -842,7 +869,8 @@ declare namespace cryptoFramework { * @returns { bigint | string | number } the specified parameters value. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -854,7 +882,8 @@ declare namespace cryptoFramework { * @returns { bigint | string | number } the specified parameters value. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -867,7 +896,8 @@ declare namespace cryptoFramework { * @returns { bigint | string | number } the specified parameters value. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -883,7 +913,7 @@ declare namespace cryptoFramework { * @returns { DataBlob } the binary data of the key object in DER format. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -894,12 +924,13 @@ declare namespace cryptoFramework { /** * Encode the private key object to string in PEM format. + * The key can be an RSA public or private key. The private key must comply with PKCS8 or PKCS1 specifications and PEM encoding format. * * @param { string } format - indicates the encoding format. * @returns { string } the string of the key object in PEM format. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -910,13 +941,15 @@ declare namespace cryptoFramework { /** * Encode the private key object to string in PEM format. + * The key can be an RSA public or private key. The private key must comply with PKCS8 or PKCS1 specifications and PEM encoding format. * * @param { string } format - indicates the encoding format. * @param { KeyEncodingConfig } config - indicates the encoding configuration. * @returns { string } the string of the key object in PEM format. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -961,7 +994,7 @@ declare namespace cryptoFramework { * @returns { bigint | string | number } the specified parameters value. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -973,7 +1006,7 @@ declare namespace cryptoFramework { * @returns { bigint | string | number } the specified parameters value. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -986,7 +1019,8 @@ declare namespace cryptoFramework { * @returns { bigint | string | number } the specified parameters value. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 801 - this operation is not supported. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -997,12 +1031,13 @@ declare namespace cryptoFramework { /** * Encode the public key object to binary data in DER format. + * Currently, only compressed and uncompressed ECC public key data can be obtained. * * @param { string } format - indicates the encoding format. * @returns { DataBlob } the binary data of the key object in DER format. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1013,12 +1048,13 @@ declare namespace cryptoFramework { /** * Encode the public key object to string in PEM format. + * The public key must comply with the X.509 specifications, PKCS1 specifications, and PEM encoding format. * * @param { string } format - indicates the encoding format. * @returns { string } the string of the key object in PEM format. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1129,7 +1165,7 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Provides the random interface. + * Provides APIs for computing random numbers and setting seeds. * * @typedef Random * @syscap SystemCapability.Security.CryptoFramework.Rand @@ -1145,7 +1181,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback used to return random DataBlob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -1157,7 +1193,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback used to return random DataBlob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -1171,7 +1207,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback used to return random DataBlob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Rand * @crossplatform @@ -1187,7 +1223,7 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise used to return the generated random blob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -1199,7 +1235,7 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise used to return the generated random blob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -1213,7 +1249,7 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise used to return the generated random blob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Rand * @crossplatform @@ -1229,7 +1265,7 @@ declare namespace cryptoFramework { * @returns { DataBlob } return the generated random blob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -1241,7 +1277,7 @@ declare namespace cryptoFramework { * @returns { DataBlob } return the generated random blob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -1255,7 +1291,7 @@ declare namespace cryptoFramework { * @returns { DataBlob } return the generated random blob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Rand * @crossplatform @@ -1268,7 +1304,7 @@ declare namespace cryptoFramework { * Set seed by given DataBlob. * * @param { DataBlob } seed - indicates the seed DataBlob. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 9 @@ -1277,7 +1313,7 @@ declare namespace cryptoFramework { * Set seed by given DataBlob. * * @param { DataBlob } seed - indicates the seed DataBlob. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @atomicservice @@ -1287,7 +1323,7 @@ declare namespace cryptoFramework { * Set seed by given DataBlob. * * @param { DataBlob } seed - indicates the seed DataBlob. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Rand * @crossplatform * @atomicservice @@ -1314,7 +1350,7 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Indicates the random generation algorithm name. + * Indicates the random generation algorithm name. Currently, only CTR_DRBG is supported. * * @type { string } * @readonly @@ -1330,7 +1366,7 @@ declare namespace cryptoFramework { * Create a random generator instance. * * @returns { Random } returns the created rand instance. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -1338,7 +1374,7 @@ declare namespace cryptoFramework { * Create a random generator instance. * * @returns { Random } returns the created rand instance. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @atomicservice @@ -1348,7 +1384,7 @@ declare namespace cryptoFramework { * Create a random generator instance. * * @returns { Random } returns the created rand instance. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Rand * @crossplatform * @atomicservice @@ -1386,7 +1422,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Incorrect parameter types; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -1396,7 +1432,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Incorrect parameter types; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -1407,7 +1443,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Incorrect parameter types; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1422,7 +1458,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -1433,7 +1469,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -1445,7 +1481,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1460,7 +1496,7 @@ declare namespace cryptoFramework { * @returns { KeyPair } return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1477,7 +1513,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -1490,7 +1526,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -1504,7 +1540,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1521,7 +1557,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -1534,7 +1570,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -1548,7 +1584,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1565,7 +1601,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -1578,7 +1614,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -1592,7 +1628,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1609,7 +1645,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -1622,7 +1658,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -1636,7 +1672,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1653,7 +1689,7 @@ declare namespace cryptoFramework { * @returns { KeyPair } return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1670,7 +1706,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1688,7 +1724,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1705,7 +1741,7 @@ declare namespace cryptoFramework { * @returns { KeyPair } return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1723,7 +1759,7 @@ declare namespace cryptoFramework { * @returns { KeyPair } return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -1784,14 +1820,15 @@ declare namespace cryptoFramework { * @syscap SystemCapability.Security.CryptoFramework.Key.SymKey * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface SymKeyGenerator { /** * Generate a symmetric key object randomly. * * @param { AsyncCallback<SymKey> } callback - the callback of generateSymKey. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -1799,7 +1836,7 @@ declare namespace cryptoFramework { * Generate a symmetric key object randomly. * * @param { AsyncCallback<SymKey> } callback - the callback of generateSymKey. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -1808,7 +1845,7 @@ declare namespace cryptoFramework { * Generate a symmetric key object randomly. * * @param { AsyncCallback<SymKey> } callback - the callback of generateSymKey. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Key.SymKey * @crossplatform * @atomicservice @@ -1820,7 +1857,7 @@ declare namespace cryptoFramework { * Generate a symmetric key object randomly. * * @returns { Promise<SymKey> } the promise returned by the function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -1828,7 +1865,7 @@ declare namespace cryptoFramework { * Generate a symmetric key object randomly. * * @returns { Promise<SymKey> } the promise returned by the function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -1837,7 +1874,7 @@ declare namespace cryptoFramework { * Generate a symmetric key object randomly. * * @returns { Promise<SymKey> } the promise returned by the function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Key.SymKey * @crossplatform * @atomicservice @@ -1849,7 +1886,7 @@ declare namespace cryptoFramework { * Generate a symmetric key object randomly. * * @returns { SymKey } return SymKey. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Key.SymKey * @crossplatform * @atomicservice @@ -1864,7 +1901,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<SymKey> } callback - the callback of generateSymKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -1875,7 +1912,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<SymKey> } callback - the callback of generateSymKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -1887,7 +1924,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<SymKey> } callback - the callback of generateSymKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Key.SymKey * @crossplatform * @atomicservice @@ -1902,7 +1939,7 @@ declare namespace cryptoFramework { * @returns { Promise<SymKey> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -1913,7 +1950,7 @@ declare namespace cryptoFramework { * @returns { Promise<SymKey> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -1925,7 +1962,7 @@ declare namespace cryptoFramework { * @returns { Promise<SymKey> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Key.SymKey * @crossplatform * @atomicservice @@ -1940,11 +1977,12 @@ declare namespace cryptoFramework { * @returns { SymKey } return SymKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Key.SymKey * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ convertKeySync(key: DataBlob): SymKey; @@ -1986,7 +2024,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -1998,7 +2036,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -2011,7 +2049,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform * @atomicservice @@ -2053,12 +2091,14 @@ declare namespace cryptoFramework { * @syscap SystemCapability.Security.CryptoFramework.Key.SymKey * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ function createSymKeyGenerator(algName: string): SymKeyGenerator; /** - * Specifies the Mac parameters. + * Represents the message authentication code (MAC) parameters. + * You need to construct a child class object and use it as a parameter when generating a HMAC or CMAC. * * @typedef MacSpec * @syscap SystemCapability.Security.CryptoFramework.Mac @@ -2080,7 +2120,7 @@ declare namespace cryptoFramework { } /** - * Specifies the HMAC parameters. + * Represents the child class of MacSpec. It is used as an input parameter for HMAC generation. * * @extends MacSpec * @typedef HmacSpec @@ -2103,7 +2143,7 @@ declare namespace cryptoFramework { } /** - * Specifies the CMAC parameters. + * Represents the child class of MacSpec. It is used as an input parameter for CMAC generation. * * @extends MacSpec * @typedef CmacSpec @@ -2142,12 +2182,14 @@ declare namespace cryptoFramework { */ /** * Provides the Mac type, which is used for Mac generation. + * Before using any API of the Mac class, you must create a Mac instance by using createMac. * * @typedef Mac * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ interface Mac { /** @@ -2157,6 +2199,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the init function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -2168,6 +2211,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the init function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -2175,11 +2219,14 @@ declare namespace cryptoFramework { */ /** * Init mac with given SymKey. + * This API uses an asynchronous callback to return the result. init, update, and doFinal must be used together. + * init and doFinal are mandatory, and update is optional. * * @param { SymKey } key - indicates the SymKey. * @param { AsyncCallback<void> } callback - the callback of the init function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform @@ -2195,6 +2242,7 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -2206,6 +2254,7 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -2213,11 +2262,14 @@ declare namespace cryptoFramework { */ /** * Init mac with given SymKey. + * This API uses an asynchronous callback to return the result. init, update, and doFinal must be used together. + * init and doFinal are mandatory, and update is optional. * * @param { SymKey } key - indicates the SymKey. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform @@ -2228,15 +2280,19 @@ declare namespace cryptoFramework { /** * Init mac with given SymKey. + * This API uses an asynchronous callback to return the result. init, update, and doFinal must be used together. + * init and doFinal are mandatory, and update is optional. * * @param { SymKey } key - indicates the SymKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ initSync(key: SymKey): void; @@ -2247,6 +2303,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the update function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -2258,6 +2315,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the update function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -2270,6 +2328,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the update function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform @@ -2285,6 +2344,7 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -2296,6 +2356,7 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -2308,6 +2369,7 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform @@ -2322,11 +2384,13 @@ declare namespace cryptoFramework { * @param { DataBlob } input - indicates the DataBlob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ updateSync(input: DataBlob): void; @@ -2334,7 +2398,7 @@ declare namespace cryptoFramework { * Output the result of mac calculation. * * @param { AsyncCallback<DataBlob> } callback - the callback of the doFinal function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -2343,7 +2407,7 @@ declare namespace cryptoFramework { * Output the result of mac calculation. * * @param { AsyncCallback<DataBlob> } callback - the callback of the doFinal function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -2353,7 +2417,7 @@ declare namespace cryptoFramework { * Output the result of mac calculation. * * @param { AsyncCallback<DataBlob> } callback - the callback of the doFinal function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform @@ -2366,7 +2430,7 @@ declare namespace cryptoFramework { * Output the result of mac calculation. * * @returns { Promise<DataBlob> } the promise returned by the function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -2375,7 +2439,7 @@ declare namespace cryptoFramework { * Output the result of mac calculation. * * @returns { Promise<DataBlob> } the promise returned by the function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -2385,7 +2449,7 @@ declare namespace cryptoFramework { * Output the result of mac calculation. * * @returns { Promise<DataBlob> } the promise returned by the function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform @@ -2400,13 +2464,14 @@ declare namespace cryptoFramework { * @returns { DataBlob } the sync returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ doFinalSync(): DataBlob; @@ -2476,7 +2541,7 @@ declare namespace cryptoFramework { * @returns { Mac } returns the created mac instance. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -2487,35 +2552,36 @@ declare namespace cryptoFramework { * @returns { Mac } returns the created mac instance. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 */ /** - * Provides the mac create func. + * Creates a Mac instance for MAC operations. * * @param { string } algName - indicates the mac algorithm name. * @returns { Mac } returns the created mac instance. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12','1.2':'20'} + * @arkts 1.1&1.2 */ function createMac(algName: string): Mac; /** - * Provides the mac create func. + * Creates a Mac instance for MAC operations. * * @param { MacSpec } macSpec - indicates the mac parameters. * @returns { Mac } returns the created mac instance. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Mac * @crossplatform @@ -2541,6 +2607,7 @@ declare namespace cryptoFramework { */ /** * Provides the Md type, which is used for Md generation. + * Before using any API of the Md class, you must create an Md instance by using createMd. * * @typedef Md * @syscap SystemCapability.Security.CryptoFramework.MessageDigest @@ -2556,6 +2623,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the update function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -2567,6 +2635,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the update function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -2579,6 +2648,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the update function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.MessageDigest * @crossplatform @@ -2594,6 +2664,7 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -2605,6 +2676,7 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -2617,6 +2689,7 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.MessageDigest * @crossplatform @@ -2631,6 +2704,7 @@ declare namespace cryptoFramework { * @param { DataBlob } input - indicates the DataBlob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.MessageDigest * @crossplatform @@ -2643,7 +2717,7 @@ declare namespace cryptoFramework { * Output the result of md calculation. * * @param { AsyncCallback<DataBlob> } callback - the callback of the digest function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -2652,7 +2726,7 @@ declare namespace cryptoFramework { * Output the result of md calculation. * * @param { AsyncCallback<DataBlob> } callback - the callback of the digest function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -2662,7 +2736,7 @@ declare namespace cryptoFramework { * Output the result of md calculation. * * @param { AsyncCallback<DataBlob> } callback - the callback of the digest function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.MessageDigest * @crossplatform @@ -2675,7 +2749,7 @@ declare namespace cryptoFramework { * Output the result of md calculation. * * @returns { Promise<DataBlob> } the promise returned by the function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -2684,7 +2758,7 @@ declare namespace cryptoFramework { * Output the result of md calculation. * * @returns { Promise<DataBlob> } the promise returned by the function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -2694,7 +2768,7 @@ declare namespace cryptoFramework { * Output the result of md calculation. * * @returns { Promise<DataBlob> } the promise returned by the function. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.MessageDigest * @crossplatform @@ -2709,8 +2783,8 @@ declare namespace cryptoFramework { * @returns { DataBlob } the sync returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.MessageDigest * @crossplatform @@ -2785,7 +2859,7 @@ declare namespace cryptoFramework { * @returns { Md } returns the created md instance. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -2796,19 +2870,19 @@ declare namespace cryptoFramework { * @returns { Md } returns the created md instance. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 */ /** - * Provides the md create func. + * Creates an Md instance for MD operations. * * @param { string } algName - indicates the md algorithm name. * @returns { Md } returns the created md instance. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.MessageDigest * @crossplatform * @atomicservice @@ -2833,6 +2907,7 @@ declare namespace cryptoFramework { */ /** * Enum for encryption specified parameters. + * You can use setCipherSpec to set cipher parameters, and use getCipherSpec to obtain cipher parameters. * * @enum { number } * @syscap SystemCapability.Security.CryptoFramework.Cipher @@ -2968,6 +3043,7 @@ declare namespace cryptoFramework { */ /** * Enum for signature specified parameters, also used for verification. + * You can use setSignSpec and setVerifySpec to set these parameters, and use getSignSpec and getVerifySpec to obtain the parameters. * * @enum { number } * @syscap SystemCapability.Security.CryptoFramework.Signature @@ -3146,8 +3222,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the init function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -3161,8 +3237,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the init function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3170,6 +3246,7 @@ declare namespace cryptoFramework { */ /** * Init the crypto operation with the given crypto mode, key and parameters. + * init, update, and doFinal must be used together. init and doFinal are mandatory, and update is optional. * * @param { CryptoMode } opMode - indicates the crypto mode is encryption or decryption. * @param { Key } key - indicates the symmetric key or the asymmetric key. @@ -3177,8 +3254,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the init function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3196,8 +3273,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the init function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -3211,8 +3288,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the init function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3220,6 +3297,7 @@ declare namespace cryptoFramework { */ /** * Init the crypto operation with the given crypto mode, key and parameters. + * init, update, and doFinal must be used together. init and doFinal are mandatory, and update is optional. * * @param { CryptoMode } opMode - indicates the crypto mode is encryption or decryption. * @param { Key } key - indicates the symmetric key or the asymmetric key. @@ -3227,8 +3305,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the callback of the init function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3246,8 +3324,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -3261,8 +3339,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3270,6 +3348,7 @@ declare namespace cryptoFramework { */ /** * Init the crypto operation with the given crypto mode, key and parameters. + * init, update, and doFinal must be used together. init and doFinal are mandatory, and update is optional. * * @param { CryptoMode } opMode - indicates the crypto mode is encryption or decryption. * @param { Key } key - indicates the symmetric key or the asymmetric key. @@ -3277,8 +3356,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3296,8 +3375,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -3311,8 +3390,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3320,6 +3399,7 @@ declare namespace cryptoFramework { */ /** * Init the crypto operation with the given crypto mode, key and parameters. + * init, update, and doFinal must be used together. init and doFinal are mandatory, and update is optional. * * @param { CryptoMode } opMode - indicates the crypto mode is encryption or decryption. * @param { Key } key - indicates the symmetric key or the asymmetric key. @@ -3327,8 +3407,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3339,14 +3419,15 @@ declare namespace cryptoFramework { /** * Init the crypto operation with the given crypto mode, key and parameters. + * init, update, and doFinal must be used together. init and doFinal are mandatory, and update is optional. * * @param { CryptoMode } opMode - indicates the crypto mode is encryption or decryption. * @param { Key } key - indicates the symmetric key or the asymmetric key. * @param { ParamsSpec | null } params - indicates the algorithm parameters such as IV. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3363,8 +3444,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback of the update function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -3377,8 +3458,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback of the update function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3392,8 +3473,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback of the update function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3410,8 +3491,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -3424,8 +3505,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3439,8 +3520,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3457,8 +3538,8 @@ declare namespace cryptoFramework { * @returns { DataBlob } cipherText when encrypted or plainText when decrypted. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3475,8 +3556,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback of the doFinal function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -3489,8 +3570,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback of the doFinal function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3504,8 +3585,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback of the doFinal function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3522,8 +3603,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback of the doFinal function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -3536,8 +3617,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback of the doFinal function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3551,8 +3632,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback of the doFinal function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3569,8 +3650,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -3583,8 +3664,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3598,8 +3679,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3616,8 +3697,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -3630,8 +3711,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3645,8 +3726,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise returned by the function. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3663,8 +3744,8 @@ declare namespace cryptoFramework { * @returns { DataBlob } cipherText when encrypted or plainText when decrypted. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3682,7 +3763,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -3696,7 +3777,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3711,7 +3792,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3729,7 +3810,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -3743,7 +3824,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -3758,7 +3839,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform @@ -3807,7 +3888,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -3821,7 +3902,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -3837,7 +3918,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Cipher * @crossplatform * @atomicservice @@ -3862,6 +3943,7 @@ declare namespace cryptoFramework { */ /** * Provides the Sign type, which is used for generating signatures. + * Before using any API of the Sign class, you must create a Sign instance by using createSign. * * @typedef Sign * @syscap SystemCapability.Security.CryptoFramework.Signature @@ -3877,8 +3959,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the call back function return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -3890,22 +3972,23 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the call back function return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 */ /** - * Used to init environment. + * Initializes the Sign instance with a private key. + * init, update, and sign must be used together. init and sign are mandatory, and update is optional. * * @param { PriKey } priKey - the private key. * @param { AsyncCallback<void> } callback - the call back function return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -3921,8 +4004,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -3934,22 +4017,23 @@ declare namespace cryptoFramework { * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 */ /** - * Used to init environment. + * Initializes the Sign instance with a private key. + * init, update, and sign must be used together. init and sign are mandatory, and update is optional. * * @param { PriKey } priKey - the private key. * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -3959,13 +4043,14 @@ declare namespace cryptoFramework { init(priKey: PriKey): Promise<void>; /** - * Used to init environment. + * Initializes the Sign instance with a private key. + * init, update, and sign must be used together. init and sign are mandatory, and update is optional. * * @param { PriKey } priKey - the private key. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -3981,8 +4066,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the call back function return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -3994,8 +4079,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - the call back function return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4003,13 +4088,14 @@ declare namespace cryptoFramework { */ /** * Used to append the message need to be signed. + * This API can be called only after the Sign instance is initialized by using init. * * @param { DataBlob } data - the data need to be signed. * @param { AsyncCallback<void> } callback - the call back function return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4025,8 +4111,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -4038,8 +4124,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4047,13 +4133,14 @@ declare namespace cryptoFramework { */ /** * Used to append the message need to be signed. + * This API can be called only after the Sign instance is initialized by using init. * * @param { DataBlob } data - the data need to be signed. * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4064,12 +4151,13 @@ declare namespace cryptoFramework { /** * Used to append the message need to be signed. + * This API can be called only after the Sign instance is initialized by using init. * * @param { DataBlob } data - the data need to be signed. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4085,8 +4173,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -4098,8 +4186,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4112,8 +4200,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4129,8 +4217,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -4142,8 +4230,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4156,8 +4244,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4173,8 +4261,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -4186,8 +4274,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4200,8 +4288,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4217,8 +4305,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -4230,8 +4318,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4244,8 +4332,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4261,8 +4349,8 @@ declare namespace cryptoFramework { * @returns { DataBlob } return the signed message. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4280,7 +4368,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -4294,7 +4382,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4309,7 +4397,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4327,7 +4415,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4342,7 +4430,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4360,7 +4448,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -4374,7 +4462,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4389,7 +4477,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4445,6 +4533,8 @@ declare namespace cryptoFramework { */ /** * Provides the Verify interface, which is used for verifying signatures. + * Before using any API of the Verify class, you must create a Verify instance by using createVerify. + * Invoke init, update, and sign in this class in sequence to complete the signature verification. * * @typedef Verify * @syscap SystemCapability.Security.CryptoFramework.Signature @@ -4460,8 +4550,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -4473,22 +4563,22 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 */ /** - * Used to init environment. + * Initializes the Verify instance with a public key. * * @param { PubKey } pubKey - the public key. * @param { AsyncCallback<void> } callback - return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4504,8 +4594,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -4517,22 +4607,22 @@ declare namespace cryptoFramework { * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 */ /** - * Used to init environment. + * Initializes the Verify instance with a public key. * * @param { PubKey } pubKey - the public key. * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4542,13 +4632,13 @@ declare namespace cryptoFramework { init(pubKey: PubKey): Promise<void>; /** - * Used to init environment. + * Initializes the Verify instance with a public key. * * @param { PubKey } pubKey - the public key. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4564,8 +4654,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -4577,8 +4667,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4591,8 +4681,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<void> } callback - return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4608,8 +4698,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -4621,8 +4711,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4635,8 +4725,8 @@ declare namespace cryptoFramework { * @returns { Promise<void> } return nothing. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4651,8 +4741,8 @@ declare namespace cryptoFramework { * @param { DataBlob } data - the data need to be verified. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4669,8 +4759,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<boolean> } callback - return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -4683,8 +4773,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<boolean> } callback - return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4698,8 +4788,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<boolean> } callback - return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4716,8 +4806,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<boolean> } callback - return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -4730,8 +4820,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<boolean> } callback - return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4745,8 +4835,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<boolean> } callback - return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4763,8 +4853,8 @@ declare namespace cryptoFramework { * @returns { Promise<boolean> } return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -4777,8 +4867,8 @@ declare namespace cryptoFramework { * @returns { Promise<boolean> } return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4792,8 +4882,8 @@ declare namespace cryptoFramework { * @returns { Promise<boolean> } return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4810,8 +4900,8 @@ declare namespace cryptoFramework { * @returns { Promise<boolean> } return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -4824,8 +4914,8 @@ declare namespace cryptoFramework { * @returns { Promise<boolean> } return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4839,8 +4929,8 @@ declare namespace cryptoFramework { * @returns { Promise<boolean> } return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4857,8 +4947,8 @@ declare namespace cryptoFramework { * @returns { boolean } return the verify result. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4875,8 +4965,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob | null> } the promise used to return the recovered data. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4893,8 +4983,8 @@ declare namespace cryptoFramework { * @returns { DataBlob | null } return the recovered data. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4912,7 +5002,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -4926,7 +5016,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4941,7 +5031,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4959,7 +5049,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -4974,7 +5064,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -4992,7 +5082,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -5006,7 +5096,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -5021,7 +5111,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform @@ -5068,7 +5158,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -5080,7 +5170,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -5093,7 +5183,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform * @atomicservice @@ -5109,7 +5199,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -5121,7 +5211,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -5134,7 +5224,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Signature * @crossplatform * @atomicservice @@ -5159,6 +5249,7 @@ declare namespace cryptoFramework { */ /** * Provides key agreement function. + * Before using any API of the KeyAgreement class, you must create a KeyAgreement instance by using createKeyAgreement. * * @typedef KeyAgreement * @syscap SystemCapability.Security.CryptoFramework.KeyAgreement @@ -5175,8 +5266,8 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - return the secret. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -5189,23 +5280,23 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - return the secret. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 */ /** - * Used to generate secret. + * Generates a shared secret based on the given private key and public key. * * @param { PriKey } priKey - the private key. * @param { PubKey } pubKey - the public key. * @param { AsyncCallback<DataBlob> } callback - return the secret. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.KeyAgreement * @crossplatform @@ -5222,8 +5313,8 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise used to return secret. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 9 @@ -5236,23 +5327,23 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise used to return secret. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 */ /** - * Used to generate secret. + * Generates a shared secret based on the given private key and public key. * * @param { PriKey } priKey - the private key. * @param { PubKey } pubKey - the public key. * @returns { Promise<DataBlob> } the promise used to return secret. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.KeyAgreement * @crossplatform @@ -5262,15 +5353,15 @@ declare namespace cryptoFramework { generateSecret(priKey: PriKey, pubKey: PubKey): Promise<DataBlob>; /** - * Used to generate secret. + * Generates a shared secret based on the given private key and public key. * * @param { PriKey } priKey - the private key. * @param { PubKey } pubKey - the public key. * @returns { DataBlob } the promise used to return secret. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.KeyAgreement * @crossplatform @@ -5317,7 +5408,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 9 */ @@ -5329,7 +5420,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -5342,7 +5433,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.KeyAgreement * @crossplatform * @atomicservice @@ -6229,8 +6320,9 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Specifies the set of parameters used in the DSA algorithm. - * + * Specifies the set of parameters used in the DSA algorithm. It can be used to randomly generate a public or private key. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. + * * @typedef DSACommonParamsSpec * @extends AsyKeySpec * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey @@ -6337,6 +6429,7 @@ declare namespace cryptoFramework { */ /** * Specifies the DSA public key with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef DSAPubKeySpec * @extends AsyKeySpec @@ -6418,6 +6511,7 @@ declare namespace cryptoFramework { */ /** * Specifies the DSA keypair with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef DSAKeyPairSpec * @extends AsyKeySpec @@ -6522,7 +6616,7 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Specifies an elliptic curve finite field. + * Specifies an elliptic curve finite field. Currently, only the Fp field is supported. * * @typedef ECField * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey @@ -6712,7 +6806,7 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Specifies the set of common parameters used in the ECC algorithm. + * Specifies the set of common parameters used in the ECC algorithm. It can be used to randomly generate a public or private key. * * @typedef ECCCommonParamsSpec * @extends AsyKeySpec @@ -6898,6 +6992,7 @@ declare namespace cryptoFramework { */ /** * Specifies the ECC private key with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef ECCPriKeySpec * @extends AsyKeySpec @@ -6979,6 +7074,7 @@ declare namespace cryptoFramework { */ /** * Specifies the ECC public key with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef ECCPubKeySpec * @extends AsyKeySpec @@ -7060,6 +7156,7 @@ declare namespace cryptoFramework { */ /** * Specifies the ECC keypair with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef ECCKeyPairSpec * @extends AsyKeySpec @@ -7156,7 +7253,7 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Key utilities for ECC Algorithm. + * Provides APIs for generating common parameters for an asymmetric key pair based on the elliptic curve name. * * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -7172,21 +7269,21 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @static * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 */ /** - * Create the common parameter set based on the curve name. + * Generates common parameters for an asymmetric key pair based on the specified name identifier (NID) of an elliptic curve. * * @param { string } curveName - indicates curve name according to the ECC elliptic curve. * @returns { ECCCommonParamsSpec } the ECC common params spec obj. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @static * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -7203,7 +7300,7 @@ declare namespace cryptoFramework { * @returns { Point } the ECC point object. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @static * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey @@ -7222,7 +7319,7 @@ declare namespace cryptoFramework { * @returns { Uint8Array } the encoded point data. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @static * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey @@ -7243,7 +7340,8 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Specifies the set of common parameters used in the DH algorithm. + * Specifies the set of common parameters used in the DH algorithm. It can be used to randomly generate a public or private key. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef DHCommonParamsSpec * @extends AsyKeySpec @@ -7322,6 +7420,7 @@ declare namespace cryptoFramework { */ /** * Specifies the DH private key with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef DHPriKeySpec * @extends AsyKeySpec @@ -7381,6 +7480,7 @@ declare namespace cryptoFramework { */ /** * Specifies the DH public key with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef DHPubKeySpec * @extends AsyKeySpec @@ -7440,6 +7540,7 @@ declare namespace cryptoFramework { */ /** * Specifies the DH keypair with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef DHKeyPairSpec * @extends AsyKeySpec @@ -7515,7 +7616,7 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Key utilities for DH Algorithm. + * Provides APIs for generating common parameters for a DH key based on the prime p length and the private key length. * * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -7532,7 +7633,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @static * @syscap SystemCapability.Security.CryptoFramework @@ -7540,7 +7641,7 @@ declare namespace cryptoFramework { * @since 11 */ /** - * Create the common parameter set. + * Generates common parameters for a DH key based on the prime p length and the private key length. * * @param { number } pLen - indicates the byte length of the prime p. * @param { number } [skLen] - indicates the byte length of the private key. @@ -7548,7 +7649,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @static * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey @@ -7570,6 +7671,7 @@ declare namespace cryptoFramework { */ /** * Specifies the ED25519 private key with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef ED25519PriKeySpec * @extends AsyKeySpec @@ -7610,6 +7712,7 @@ declare namespace cryptoFramework { */ /** * Specifies the ED25519 public key with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef ED25519PubKeySpec * @extends AsyKeySpec @@ -7650,6 +7753,7 @@ declare namespace cryptoFramework { */ /** * Specifies the ED25519 keypair with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef ED25519KeyPairSpec * @extends AsyKeySpec @@ -7709,6 +7813,7 @@ declare namespace cryptoFramework { */ /** * Specifies the X25519 private key with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef X25519PriKeySpec * @extends AsyKeySpec @@ -7749,6 +7854,7 @@ declare namespace cryptoFramework { */ /** * Specifies the X25519 public key with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef X25519PubKeySpec * @extends AsyKeySpec @@ -7789,6 +7895,7 @@ declare namespace cryptoFramework { */ /** * Specifies the X25519 keypair with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef X25519KeyPairSpec * @extends AsyKeySpec @@ -7856,6 +7963,7 @@ declare namespace cryptoFramework { */ /** * Specifies the set of common parameters used in the RSA algorithm. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef RSACommonParamsSpec * @extends AsyKeySpec @@ -7911,6 +8019,7 @@ declare namespace cryptoFramework { */ /** * Specifies the RSA public key with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef RSAPubKeySpec * @extends AsyKeySpec @@ -7992,6 +8101,7 @@ declare namespace cryptoFramework { */ /** * Specifies the RSA keypair with its associated parameters. + * To generate a key based on key parameters, pass it to createAsyKeyGeneratorBySpec to create a key generator. * * @typedef RSAKeyPairSpec * @extends AsyKeySpec @@ -8097,6 +8207,7 @@ declare namespace cryptoFramework { */ /** * The AsyKeyGeneratorBySpec provides the ability to generate key with its associated parameters. + * Before using the APIs of this class, you need to use createAsyKeyGeneratorBySpec to create an AsyKeyGeneratorBySpec instance. * * @typedef AsyKeyGeneratorBySpec * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey @@ -8110,7 +8221,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Incorrect parameter types; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -8120,7 +8231,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Incorrect parameter types; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -8131,7 +8242,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Incorrect parameter types; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -8146,7 +8257,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -8157,7 +8268,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -8169,7 +8280,7 @@ declare namespace cryptoFramework { * @returns { Promise<KeyPair> } the promise used to return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -8184,7 +8295,7 @@ declare namespace cryptoFramework { * @returns { KeyPair } return keypair. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -8198,7 +8309,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<PriKey> } callback - the callback used to return PriKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Mandatory parameters are left unspecified; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -8208,7 +8319,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<PriKey> } callback - the callback used to return PriKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Mandatory parameters are left unspecified; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -8219,7 +8330,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<PriKey> } callback - the callback used to return PriKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Mandatory parameters are left unspecified; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -8234,7 +8345,7 @@ declare namespace cryptoFramework { * @returns { Promise<PriKey> } the promise used to return PriKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -8245,7 +8356,7 @@ declare namespace cryptoFramework { * @returns { Promise<PriKey> } the promise used to return PriKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -8257,7 +8368,7 @@ declare namespace cryptoFramework { * @returns { Promise<PriKey> } the promise used to return PriKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -8272,7 +8383,7 @@ declare namespace cryptoFramework { * @returns { PriKey } return PriKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -8286,7 +8397,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<PubKey> } callback - the callback used to return PubKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Incorrect parameter types; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -8296,7 +8407,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<PubKey> } callback - the callback used to return PubKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Incorrect parameter types; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -8307,7 +8418,7 @@ declare namespace cryptoFramework { * * @param { AsyncCallback<PubKey> } callback - the callback used to return PubKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: Incorrect parameter types; - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -8322,7 +8433,7 @@ declare namespace cryptoFramework { * @returns { Promise<PubKey> } the promise used to return PubKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @since 10 @@ -8333,7 +8444,7 @@ declare namespace cryptoFramework { * @returns { Promise<PubKey> } the promise used to return PubKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -8345,7 +8456,7 @@ declare namespace cryptoFramework { * @returns { Promise<PubKey> } the promise used to return PubKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -8360,7 +8471,7 @@ declare namespace cryptoFramework { * @returns { PubKey } return PubKey. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform @@ -8407,7 +8518,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @since 10 */ @@ -8419,7 +8530,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -8432,7 +8543,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Key.AsymKey * @crossplatform * @atomicservice @@ -8450,6 +8561,7 @@ declare namespace cryptoFramework { */ /** * Specifies the key derivation function parameters. + * When the key derivation function is used to derive a key, you need to construct and pass in a child class object of KdfSpec. * * @typedef KdfSpec * @syscap SystemCapability.Security.CryptoFramework.Kdf @@ -8730,6 +8842,7 @@ declare namespace cryptoFramework { */ /** * The key derivation function object provides the ability to derive key with its associated parameters. + * Before using APIs of this class, you need to create an instance of this class by using createKdf. * * @typedef Kdf * @syscap SystemCapability.Security.CryptoFramework.Kdf @@ -8745,7 +8858,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback used to return dataBlob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -8758,7 +8871,7 @@ declare namespace cryptoFramework { * @param { AsyncCallback<DataBlob> } callback - the callback used to return dataBlob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Kdf * @crossplatform @@ -8774,7 +8887,7 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise used to return dataBlob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform @@ -8787,7 +8900,7 @@ declare namespace cryptoFramework { * @returns { Promise<DataBlob> } the promise used to return dataBlob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Kdf * @crossplatform @@ -8803,8 +8916,8 @@ declare namespace cryptoFramework { * @returns { DataBlob } the sync used to return dataBlob. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. - * @throws { BusinessError } 17620002 - runtime error. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. * @throws { BusinessError } 17630001 - crypto operation error. * @syscap SystemCapability.Security.CryptoFramework.Kdf * @crossplatform @@ -8843,7 +8956,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework * @crossplatform * @since 11 @@ -8856,7 +8969,7 @@ declare namespace cryptoFramework { * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 801 - this operation is not supported. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @syscap SystemCapability.Security.CryptoFramework.Kdf * @crossplatform * @atomicservice @@ -8936,7 +9049,7 @@ declare namespace cryptoFramework { * @returns { DataBlob } the SM2 ciphertext in ASN.1 format. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @static * @syscap SystemCapability.Security.CryptoFramework.Cipher @@ -8954,7 +9067,7 @@ declare namespace cryptoFramework { * @returns { SM2CipherTextSpec } the specific data of SM2 ciphertext. * @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17620001 - memory error. + * @throws { BusinessError } 17620001 - memory operation failed. * @throws { BusinessError } 17630001 - crypto operation error. * @static * @syscap SystemCapability.Security.CryptoFramework.Cipher @@ -8964,6 +9077,86 @@ declare namespace cryptoFramework { */ static getCipherTextSpec(cipherText: DataBlob, mode?: string): SM2CipherTextSpec; } + + /** + * Defines the ECC signature spec, also works with SM2 signature. + * + * @typedef EccSignatureSpec + * @syscap SystemCapability.Security.CryptoFramework.Signature + * @crossplatform + * @atomicservice + * @since 20 + */ + + interface EccSignatureSpec { + /** + * Indicates the r value of the signature. + * + * @type { bigint } + * @syscap SystemCapability.Security.CryptoFramework.Signature + * @crossplatform + * @atomicservice + * @since 20 + */ + r: bigint; + + /** + * Indicates the s value of the signature. + * + * @type { bigint } + * @syscap SystemCapability.Security.CryptoFramework.Signature + * @crossplatform + * @atomicservice + * @since 20 + */ + s: bigint; + } + + /** + * Utilities for signature operations. + * + * @syscap SystemCapability.Security.CryptoFramework.Signature + * @crossplatform + * @atomicservice + * @since 20 + */ + class SignatureUtils { + /** + * Generates the ECC signature spec from the ECC signature in DER format. + * + * @param { Uint8Array } data - indicates the signature in DER format. + * @returns { EccSignatureSpec } the ECC signature spec. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. + * @throws { BusinessError } 17620003 - parameter check failed. Possible causes: + * <br>1. The length of the data parameter is 0 or too large. + * @throws { BusinessError } 17630001 - crypto operation error. + * @static + * @syscap SystemCapability.Security.CryptoFramework.Signature + * @crossplatform + * @atomicservice + * @since 20 + */ + static genEccSignatureSpec(data: Uint8Array): EccSignatureSpec; + + /** + * Generates the ECC signature in DER format according to the ECC signature spec. + * + * @param { EccSignatureSpec } spec - indicates the ECC signature spec. + * @returns { Uint8Array } the signature in DER format. + * @throws { BusinessError } 17620001 - memory operation failed. + * @throws { BusinessError } 17620002 - failed to convert parameters between arkts and c. + * @throws { BusinessError } 17620003 - parameter check failed. Possible causes: + * <br>1. The r or s value of the spec parameter is 0 or too large. + * @throws { BusinessError } 17630001 - crypto operation error. + * @static + * @syscap SystemCapability.Security.CryptoFramework.Signature + * @crossplatform + * @atomicservice + * @since 20 + */ + static genEccSignature(spec: EccSignatureSpec): Uint8Array; + } } export default cryptoFramework; diff --git a/api/@ohos.security.huks.d.ts b/api/@ohos.security.huks.d.ts index de68e9ebd19b5d8dd9b00166f84a8d0693b0c070..2482bf2bdfa6bd3a66647af0ddfc443eed4d278a 100644 --- a/api/@ohos.security.huks.d.ts +++ b/api/@ohos.security.huks.d.ts @@ -63,11 +63,14 @@ declare namespace huks { function generateKey(keyAlias: string, options: HuksOptions): Promise<HuksResult>; /** - * Generate Key. - * + * Generates a key. This API uses an asynchronous callback to return the result. + * * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<void> } callback - the callback of generateKeyItem. + * @param { HuksOptions } options - Tags required for generating the key. The algorithm, key purpose, + * and key length are mandatory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * this API does not return the key content because the key is always protected in a TEE. If an exception occurs in + * the generation process, an error is captured. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -79,19 +82,22 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** - * Generate Key. + * Generates a key. This API uses an asynchronous callback to return the result. * * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<void> } callback - the callback of generateKeyItem. + * @param { HuksOptions } options - Tags required for generating the key. The algorithm, key purpose, + * and key length are mandatory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * this API does not return the key content because the key is always protected in a TEE. If an exception occurs in + * the generation process, an error is captured. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -103,10 +109,10 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 @@ -114,10 +120,13 @@ declare namespace huks { function generateKeyItem(keyAlias: string, options: HuksOptions, callback: AsyncCallback<void>): void; /** - * Generate Key. + * Generates a key. This API uses a promise to return the result. Because the key is always + * protected in a trusted environment (such as a TEE), the promise does not return the key content. + * It returns only the information indicating whether the API is successfully called. * * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. + * @param { HuksOptions } options - Tags required for generating the key. The algorithm, key purpose, + * and key length are mandatory. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -130,18 +139,21 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Generate Key. + * Generates a key. This API uses a promise to return the result. Because the key is always + * protected in a trusted environment (such as a TEE), the promise does not return the key content. + * It returns only the information indicating whether the API is successfully called. * * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. + * @param { HuksOptions } options - Tags required for generating the key. The algorithm, key purpose, + * and key length are mandatory. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -154,10 +166,10 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 11 @@ -186,10 +198,10 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @systemapi this method can be used only by system applications. * @since 12 @@ -223,11 +235,15 @@ declare namespace huks { function deleteKey(keyAlias: string, options: HuksOptions): Promise<HuksResult>; /** - * Delete Key. + * Deletes a key. This API uses an asynchronous callback to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<void> } callback - the callback of deleteKeyItem. + * @param { string } keyAlias - Alias of the key to delete. It must be the key alias passed in when the key + * was generated. + * @param { HuksOptions } options - Properties of the key to delete. For example, you can pass in HuksAuthStorageLevel + * to specify the security level of the key to delete. HuksAuthStorageLevel can be left empty, which means the default + * value HUKS_AUTH_STORAGE_LEVEL_DE is used. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * no err value is returned; otherwise, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -236,17 +252,21 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** - * Delete Key. + * Deletes a key. This API uses an asynchronous callback to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<void> } callback - the callback of deleteKeyItem. + * @param { string } keyAlias - Alias of the key to delete. It must be the key alias passed in when the key + * was generated. + * @param { HuksOptions } options - Properties of the key to delete. For example, you can pass in HuksAuthStorageLevel + * to specify the security level of the key to delete. HuksAuthStorageLevel can be left empty, which means the default + * value HUKS_AUTH_STORAGE_LEVEL_DE is used. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * no err value is returned; otherwise, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -255,7 +275,7 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -264,10 +284,13 @@ declare namespace huks { function deleteKeyItem(keyAlias: string, options: HuksOptions, callback: AsyncCallback<void>): void; /** - * Delete Key. + * Deletes a key. This API uses a promise to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. + * @param { string } keyAlias - Alias of the key to delete. It must be the key alias passed in when the key + * was generated. + * @param { HuksOptions } options - Options for deleting the key. For example, you can pass in HuksAuthStorageLevel to + * specify the security level of the key to delete. HuksAuthStorageLevel can be left empty, which means the default + * value HUKS_AUTH_STORAGE_LEVEL_DE is used. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -277,16 +300,19 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Delete Key. + * Deletes a key. This API uses a promise to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. + * @param { string } keyAlias - Alias of the key to delete. It must be the key alias passed in when the key + * was generated. + * @param { HuksOptions } options - Options for deleting the key. For example, you can pass in HuksAuthStorageLevel to + * specify the security level of the key to delete. HuksAuthStorageLevel can be left empty, which means the default + * value HUKS_AUTH_STORAGE_LEVEL_DE is used. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -296,7 +322,7 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -323,7 +349,7 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @systemapi this method can be used only by system applications. @@ -358,11 +384,13 @@ declare namespace huks { function importKey(keyAlias: string, options: HuksOptions): Promise<HuksResult>; /** - * Import Key. + * Imports a key in plaintext. This API uses an asynchronous callback to return the result. * * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<void> } callback - the callback of importKeyItem. + * @param { HuksOptions } options - Tags required for the import and key to import. The algorithm, key purpose, and + * key length are mandatory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, no + * error value is returned; otherwise, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -375,19 +403,21 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Import Key. + * Imports a key in plaintext. This API uses an asynchronous callback to return the result. * * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<void> } callback - the callback of importKeyItem. + * @param { HuksOptions } options - Tags required for the import and key to import. The algorithm, key purpose, and + * key length are mandatory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, no + * error value is returned; otherwise, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -400,20 +430,22 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 11 */ /** - * Import Key. + * Imports a key in plaintext. This API uses an asynchronous callback to return the result. * * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<void> } callback - the callback of importKeyItem. + * @param { HuksOptions } options - Tags required for the import and key to import. The algorithm, key purpose, and + * key length are mandatory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, no + * error value is returned; otherwise, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -426,10 +458,10 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -437,10 +469,11 @@ declare namespace huks { function importKeyItem(keyAlias: string, options: HuksOptions, callback: AsyncCallback<void>): void; /** - * Import Key. + * Imports a key in plaintext. This API uses a promise to return the result. * * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. + * @param { HuksOptions } options - Tags required for the import and key to import. The algorithm, key purpose, and + * key length are mandatory. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -454,18 +487,19 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Import Key. + * Imports a key in plaintext. This API uses a promise to return the result. * * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. + * @param { HuksOptions } options - Tags required for the import and key to import. The algorithm, key purpose, and + * key length are mandatory. * @returns { Promise<void> } the promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -479,10 +513,10 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 11 @@ -512,10 +546,10 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @systemapi this method can be used only by system applications. * @since 12 @@ -523,12 +557,14 @@ declare namespace huks { function importKeyItemAsUser(userId: number, keyAlias: string, huksOptions: HuksOptions): Promise<void>; /** - * Import Wrapped Key. + * Imports a wrapped key. This API uses an asynchronous callback to return the result. * - * @param { string } keyAlias - keyAlias indicates the name of key to be imported. - * @param { string } wrappingKeyAlias - wrappingKeyAlias indicates the name of key for wrapping the key to be imported. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<void> } callback - the callback of importWrappedKeyItem. + * @param { string } keyAlias - Alias of the wrapped key to import. + * @param { string } wrappingKeyAlias - Alias of the data used to unwrap the key imported. + * @param { HuksOptions } options - Tags required for the import and the wrapped key to import. + * The algorithm, key purpose, and key length are mandatory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * no err value is returned; otherwise, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -541,20 +577,22 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Import Wrapped Key. + * Imports a wrapped key. This API uses an asynchronous callback to return the result. * - * @param { string } keyAlias - keyAlias indicates the name of key to be imported. - * @param { string } wrappingKeyAlias - wrappingKeyAlias indicates the name of key for wrapping the key to be imported. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<void> } callback - the callback of importWrappedKeyItem. + * @param { string } keyAlias - Alias of the wrapped key to import. + * @param { string } wrappingKeyAlias - Alias of the data used to unwrap the key imported. + * @param { HuksOptions } options - Tags required for the import and the wrapped key to import. + * The algorithm, key purpose, and key length are mandatory. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the operation is successful, + * no err value is returned; otherwise, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -567,10 +605,10 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -606,10 +644,10 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @systemapi this method can be used only by system applications. * @since 12 @@ -617,12 +655,13 @@ declare namespace huks { function importWrappedKeyItemAsUser(userId: number, keyAlias: string, wrappingKeyAlias: string, huksOptions: HuksOptions): Promise<void>; /** - * Import Wrapped Key. + * Imports a wrapped key. This API uses a promise to return the result. * - * @param { string } keyAlias - keyAlias indicates the name of key to be imported. - * @param { string } wrappingKeyAlias - wrappingKeyAlias indicates the name of key for wrapping the key to be imported. - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<void> } the promise returned by the function. + * @param { string } keyAlias - Alias of the wrapped key to import. + * @param { string } wrappingKeyAlias - Alias of the data used to unwrap the key imported. + * @param { HuksOptions } options - Tags required for the import and the wrapped key to import. The algorithm, key + * purpose, and key length are mandatory. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -635,20 +674,21 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Import Wrapped Key. + * Imports a wrapped key. This API uses a promise to return the result. * - * @param { string } keyAlias - keyAlias indicates the name of key to be imported. - * @param { string } wrappingKeyAlias - wrappingKeyAlias indicates the name of key for wrapping the key to be imported. - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<void> } the promise returned by the function. + * @param { string } keyAlias - Alias of the wrapped key to import. + * @param { string } wrappingKeyAlias - Alias of the data used to unwrap the key imported. + * @param { HuksOptions } options - Tags required for the import and the wrapped key to import. The algorithm, key + * purpose, and key length are mandatory. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -661,10 +701,10 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000013 - queried credential does not exist * @throws { BusinessError } 12000014 - memory is insufficient - * @throws { BusinessError } 12000015 - call service failed + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -698,11 +738,13 @@ declare namespace huks { function exportKey(keyAlias: string, options: HuksOptions): Promise<HuksResult>; /** - * Export Key. + * Exports a key. This API uses an asynchronous callback to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of exportKeyItem. + * @param { string } keyAlias - Key alias, which must be the same as the alias used when the key was generated. + * @param { HuksOptions } options - Empty object (leave this parameter empty). + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the result. If the operation is + * successful, no err value is returned and outData contains the public key exported. Otherwise, + * an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -715,17 +757,19 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Export Key. + * Exports a key. This API uses an asynchronous callback to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of exportKeyItem. + * @param { string } keyAlias - Key alias, which must be the same as the alias used when the key was generated. + * @param { HuksOptions } options - Empty object (leave this parameter empty). + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the result. If the operation is + * successful, no err value is returned and outData contains the public key exported. Otherwise, + * an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -738,7 +782,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -769,7 +813,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @systemapi this method can be used only by system applications. @@ -778,11 +822,12 @@ declare namespace huks { function exportKeyItemAsUser(userId: number, keyAlias: string, huksOptions: HuksOptions): Promise<HuksReturnResult>; /** - * Export Key. + * Exports a key. This API uses a promise to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { string } keyAlias - Key alias, which must be the same as the alias used when the key was generated. + * @param { HuksOptions } options - Empty object (leave this parameter empty). + * @returns { Promise<HuksReturnResult> } Promise used to return the result. If the operation is successful, outData + * in HuksReturnResult is the public key exported. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -795,17 +840,18 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Export Key. + * Exports a key. This API uses a promise to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { string } keyAlias - Key alias, which must be the same as the alias used when the key was generated. + * @param { HuksOptions } options - Empty object (leave this parameter empty). + * @returns { Promise<HuksReturnResult> } Promise used to return the result. If the operation is successful, outData + * in HuksReturnResult is the public key exported. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -818,7 +864,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -853,11 +899,13 @@ declare namespace huks { function getKeyProperties(keyAlias: string, options: HuksOptions): Promise<HuksResult>; /** - * Get properties of the key. + * Obtains key properties. This API uses an asynchronous callback to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of getKeyItemProperties. + * @param { string } keyAlias - Key alias, which must be the same as the alias used when the key was generated. + * @param { HuksOptions } options - Empty object (leave this parameter empty). + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the result. If the operation is + * successful, no err value is returned and properties contains the parameters required for generating the key. If the + * operation fails, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -870,17 +918,19 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Get properties of the key. + * Obtains key properties. This API uses an asynchronous callback to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of getKeyItemProperties. + * @param { string } keyAlias - Key alias, which must be the same as the alias used when the key was generated. + * @param { HuksOptions } options - Empty object (leave this parameter empty). + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the result. If the operation is + * successful, no err value is returned and properties contains the parameters required for generating the key. If the + * operation fails, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -893,7 +943,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -928,7 +978,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @systemapi this method can be used only by system applications. @@ -937,11 +987,12 @@ declare namespace huks { function getKeyItemPropertiesAsUser(userId: number, keyAlias: string, huksOptions: HuksOptions): Promise<HuksReturnResult>; /** - * Get properties of the key. + * Obtains key properties. This API uses a promise to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { string } keyAlias - Key alias, which must be the same as the alias used when the key was generated. + * @param { HuksOptions } options - Empty object (leave this parameter empty). + * @returns { Promise<HuksReturnResult> } Promise used to return the result. If the operation is successful, + * properties in HuksReturnResult holds the parameters required for generating the key. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -954,17 +1005,18 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Get properties of the key. + * Obtains key properties. This API uses a promise to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { string } keyAlias - Key alias, which must be the same as the alias used when the key was generated. + * @param { HuksOptions } options - Empty object (leave this parameter empty). + * @returns { Promise<HuksReturnResult> } Promise used to return the result. If the operation is successful, + * properties in HuksReturnResult holds the parameters required for generating the key. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -977,7 +1029,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -1012,11 +1064,14 @@ declare namespace huks { function isKeyExist(keyAlias: string, options: HuksOptions): Promise<boolean>; /** - * Check whether the key exists. + * Checks whether a key exists. This API uses an asynchronous callback to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<boolean> } callback - the callback of isKeyItemExist. + * @param { string } keyAlias - Alias of the key to check. + * @param { HuksOptions } options - Options for checking the key. For example, you can pass in HuksAuthStorageLevel to + * specify the security level of the key to check. HuksAuthStorageLevel can be left empty, which means the default + * value HUKS_AUTH_STORAGE_LEVEL_DE is used. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. If the key exists, data is true. + * If the key does not exist, error is the error code. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1028,7 +1083,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @since 9 @@ -1036,11 +1091,13 @@ declare namespace huks { function isKeyItemExist(keyAlias: string, options: HuksOptions, callback: AsyncCallback<boolean>): void; /** - * Check whether the key exists. + * Checks whether a key exists. This API uses a promise to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<boolean> } the promise returned by the function. + * @param { string } keyAlias - Alias of the key to check. + * @param { HuksOptions } options - Options for checking the key. For example, you can pass in HuksAuthStorageLevel to + * specify the security level of the key to check. HuksAuthStorageLevel can be left empty, which means the default + * value HUKS_AUTH_STORAGE_LEVEL_DE is used. + * @returns { Promise<boolean> } Promise used to return the result. If the key exists, then() performs subsequent * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1052,7 +1109,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 @@ -1060,11 +1117,14 @@ declare namespace huks { function isKeyItemExist(keyAlias: string, options: HuksOptions): Promise<boolean>; /** - * Check whether the key exists. + * Checks whether a key exists. This API uses an asynchronous callback to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<boolean> } callback - the callback of isKeyItemExist. + * @param { string } keyAlias - Alias of the key to check. + * @param { HuksOptions } options - Options for checking the key. For example, you can pass in HuksAuthStorageLevel to + * specify the security level of the key to check. HuksAuthStorageLevel can be left empty, which means the default + * value HUKS_AUTH_STORAGE_LEVEL_DE is used. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. If the key exists, data is true. + * Otherwise, data is false. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1075,7 +1135,7 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -1104,7 +1164,7 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @systemapi this method can be used only by system applications. @@ -1113,11 +1173,14 @@ declare namespace huks { function hasKeyItemAsUser(userId: number, keyAlias: string, huksOptions: HuksOptions): Promise<boolean>; /** - * Check whether the key exists. + * Checks whether a key exists. This API uses a promise to return the result. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<boolean> } the promise returned by the function. + * @param { string } keyAlias - Alias of the key to check. + * @param { HuksOptions } options - Options for checking the key. For example, you can pass in HuksAuthStorageLevel to + * specify the security level of the key to check. HuksAuthStorageLevel can be left empty, which means the default + * value HUKS_AUTH_STORAGE_LEVEL_DE is used. + * @returns { Promise<boolean> } Promise used to return the result. If the key exists, true is returned. If the key + * does not exist, false is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1128,7 +1191,7 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -1163,11 +1226,13 @@ declare namespace huks { function init(keyAlias: string, options: HuksOptions): Promise<HuksHandle>; /** - * Init Operation. + * Initializes a session for a key operation. This API uses an asynchronous callback to return the + * result. huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<HuksSessionHandle> } callback - the callback of initSession. + * @param { string } keyAlias - Alias of the key involved in the initSession operation. + * @param { HuksOptions } options - Parameter set used for the initSession operation. + * @param { AsyncCallback<HuksSessionHandle> } callback - Callback used to return a session handle for subsequent + * operations. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1181,17 +1246,19 @@ declare namespace huks { * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000010 - the number of sessions has reached limit * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** - * Init Operation. + * Initializes a session for a key operation. This API uses an asynchronous callback to return the + * result. huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @param { AsyncCallback<HuksSessionHandle> } callback - the callback of initSession. + * @param { string } keyAlias - Alias of the key involved in the initSession operation. + * @param { HuksOptions } options - Parameter set used for the initSession operation. + * @param { AsyncCallback<HuksSessionHandle> } callback - Callback used to return a session handle for subsequent + * operations. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1205,7 +1272,7 @@ declare namespace huks { * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000010 - the number of sessions has reached limit * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -1214,11 +1281,12 @@ declare namespace huks { function initSession(keyAlias: string, options: HuksOptions, callback: AsyncCallback<HuksSessionHandle>): void; /** - * Init Operation. + * Initializes a session for a key operation. This API uses a promise to return the result. + * huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<HuksSessionHandle> } the promise returned by the function. + * @param { string } keyAlias - Alias of the key involved in the initSession operation. + * @param { HuksOptions } options - Parameter set used for the initSession operation. + * @returns { Promise<HuksSessionHandle> } Promise used to return a session handle for subsequent operations. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1232,17 +1300,18 @@ declare namespace huks { * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000010 - the number of sessions has reached limit * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Init Operation. + * Initializes a session for a key operation. This API uses a promise to return the result. + * huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<HuksSessionHandle> } the promise returned by the function. + * @param { string } keyAlias - Alias of the key involved in the initSession operation. + * @param { HuksOptions } options - Parameter set used for the initSession operation. + * @returns { Promise<HuksSessionHandle> } Promise used to return a session handle for subsequent operations. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1256,7 +1325,7 @@ declare namespace huks { * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000010 - the number of sessions has reached limit * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -1288,7 +1357,7 @@ declare namespace huks { * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000010 - the number of sessions has reached limit * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @systemapi this method can be used only by system applications. @@ -1325,11 +1394,12 @@ declare namespace huks { function update(handle: number, token?: Uint8Array, options: HuksOptions): Promise<HuksResult>; /** - * Update Operation. + * Updates the key operation by segment. This API uses an asynchronous callback to return the result. + * huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the update operation. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of updateSession. + * @param { number } handle - Handle for the updateSession operation. + * @param { HuksOptions } options - Parameter set used for the updateSession operation. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the updateSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1345,17 +1415,18 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** - * Update Operation. + * Updates the key operation by segment. This API uses an asynchronous callback to return the result. + * huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the update operation. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of updateSession. + * @param { number } handle - Handle for the updateSession operation. + * @param { HuksOptions } options - Parameter set used for the updateSession operation. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the updateSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1371,7 +1442,7 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -1380,12 +1451,13 @@ declare namespace huks { function updateSession(handle: number, options: HuksOptions, callback: AsyncCallback<HuksReturnResult>): void; /** - * Update Operation. + * Updates the key operation by segment. This API uses an asynchronous callback to return the result. + * huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the update operation. - * @param { Uint8Array } token - token indicates the value of auth token from USER IAM service. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of updateSession. + * @param { number } handle - Handle for the updateSession operation. + * @param { HuksOptions } options - Parameter set used for the updateSession operation. + * @param { Uint8Array } token - Authentication token for refined key access control. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the updateSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1401,18 +1473,19 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Update Operation. + * Updates the key operation by segment. This API uses an asynchronous callback to return the result. + * huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the update operation. - * @param { Uint8Array } token - token indicates the value of auth token from USER IAM service. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of updateSession. + * @param { number } handle - Handle for the updateSession operation. + * @param { HuksOptions } options - Parameter set used for the updateSession operation. + * @param { Uint8Array } token - Authentication token for refined key access control. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the updateSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1428,7 +1501,7 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -1442,12 +1515,14 @@ declare namespace huks { ): void; /** - * Update Operation. + * Updates the key operation by segment. This API uses a promise to return the result. huks.initSession, + * huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the update operation. - * @param { Uint8Array } token - token indicates the value of auth token from USER IAM service. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { number } handle - Handle for the updateSession operation. + * @param { HuksOptions } options - Parameter set used for the updateSession operation. + * @param { Uint8Array } token - Authentication token for refined key access control. If this parameter is left blank, + * refined key access control is not performed. + * @returns { Promise<HuksReturnResult> } Promise used to return the updateSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1463,18 +1538,20 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Update Operation. + * Updates the key operation by segment. This API uses a promise to return the result. huks.initSession, + * huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the update operation. - * @param { Uint8Array } token - token indicates the value of auth token from USER IAM service. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { number } handle - Handle for the updateSession operation. + * @param { HuksOptions } options - Parameter set used for the updateSession operation. + * @param { Uint8Array } token - Authentication token for refined key access control. If this parameter is left blank, + * refined key access control is not performed. + * @returns { Promise<HuksReturnResult> } Promise used to return the updateSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1490,7 +1567,7 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -1525,11 +1602,12 @@ declare namespace huks { function finish(handle: number, options: HuksOptions): Promise<HuksResult>; /** - * Finish Operation. + * Finishes the key operation. This API uses an asynchronous callback to return the result. + * huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the finish operation. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of finishSession. + * @param { number } handle - Handle for the finishSession operation. + * @param { HuksOptions } options - Parameter set used for the finishSession operation. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the finishSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1545,17 +1623,18 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** - * Finish Operation. + * Finishes the key operation. This API uses an asynchronous callback to return the result. + * huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the finish operation. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of finishSession. + * @param { number } handle - Handle for the finishSession operation. + * @param { HuksOptions } options - Parameter set used for the finishSession operation. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the finishSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1571,7 +1650,7 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -1580,12 +1659,13 @@ declare namespace huks { function finishSession(handle: number, options: HuksOptions, callback: AsyncCallback<HuksReturnResult>): void; /** - * Finish Operation. + * Finishes the key operation. This API uses an asynchronous callback to return the result. + * huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the finish operation. - * @param { Uint8Array } token - token indicates the value of auth token from USER IAM service. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of finishSession. + * @param { number } handle - Handle for the finishSession operation. + * @param { HuksOptions } options - Parameter set used for the finishSession operation. + * @param { Uint8Array } token - Authentication token for refined key access control. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the finishSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1601,18 +1681,19 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Finish Operation. + * Finishes the key operation. This API uses an asynchronous callback to return the result. + * huks.initSession, huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the finish operation. - * @param { Uint8Array } token - token indicates the value of auth token from USER IAM service. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of finishSession. + * @param { number } handle - Handle for the finishSession operation. + * @param { HuksOptions } options - Parameter set used for the finishSession operation. + * @param { Uint8Array } token - Authentication token for refined key access control. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the finishSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1628,7 +1709,7 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -1642,12 +1723,14 @@ declare namespace huks { ): void; /** - * Finish Operation. + * Finishes the key operation. This API uses a promise to return the result. huks.initSession, + * huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the finish operation. - * @param { Uint8Array } token - token indicates the value of auth token from USER IAM service. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { number } handle - Handle for the finishSession operation. + * @param { HuksOptions } options - Parameter set used for the finishSession operation. + * @param { Uint8Array } token - Authentication token for refined key access control. If this parameter is left blank, + * refined key access control is not performed. + * @returns { Promise<HuksReturnResult> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1663,18 +1746,20 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Finish Operation. + * Finishes the key operation. This API uses a promise to return the result. huks.initSession, + * huks.updateSession, and huks.finishSession must be used together. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the finish operation. - * @param { Uint8Array } token - token indicates the value of auth token from USER IAM service. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { number } handle - Handle for the finishSession operation. + * @param { HuksOptions } options - Parameter set used for the finishSession operation. + * @param { Uint8Array } token - Authentication token for refined key access control. If this parameter is left blank, + * refined key access control is not performed. + * @returns { Promise<HuksReturnResult> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1690,7 +1775,7 @@ declare namespace huks { * @throws { BusinessError } 12000008 - verify auth token failed * @throws { BusinessError } 12000009 - auth token is already timeout * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -1725,11 +1810,11 @@ declare namespace huks { function abort(handle: number, options: HuksOptions): Promise<HuksResult>; /** - * Abort Operation. + * Aborts a key operation. This API uses an asynchronous callback to return the result. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the abort operation. - * @param { AsyncCallback<void> } callback - the callback of abortSession. + * @param { number } handle - Handle for the abortSession operation. + * @param { HuksOptions } options - Parameter set used for the abortSession operation. + * @param { AsyncCallback<void> } callback - Callback used to return the abortSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1738,17 +1823,17 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** - * Abort Operation. + * Aborts a key operation. This API uses an asynchronous callback to return the result. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the abort operation. - * @param { AsyncCallback<void> } callback - the callback of abortSession. + * @param { number } handle - Handle for the abortSession operation. + * @param { HuksOptions } options - Parameter set used for the abortSession operation. + * @param { AsyncCallback<void> } callback - Callback used to return the abortSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1757,7 +1842,7 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -1766,11 +1851,11 @@ declare namespace huks { function abortSession(handle: number, options: HuksOptions, callback: AsyncCallback<void>): void; /** - * Abort Operation. + * Aborts a key operation. This API uses a promise to return the result. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the abort operation. - * @returns { Promise<void> } the promise returned by the function. + * @param { number } handle - Handle for the abortSession operation. + * @param { HuksOptions } options - Parameter set used for the abortSession operation. + * @returns { Promise<void> } Promise used to return the abortSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1779,17 +1864,17 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Abort Operation. + * Aborts a key operation. This API uses a promise to return the result. * - * @param { number } handle - indicates the handle of the init operation. - * @param { HuksOptions } options - options indicates the properties of the abort operation. - * @returns { Promise<void> } the promise returned by the function. + * @param { number } handle - Handle for the abortSession operation. + * @param { HuksOptions } options - Parameter set used for the abortSession operation. + * @returns { Promise<void> } Promise used to return the abortSession operation result. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1798,7 +1883,7 @@ declare namespace huks { * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -1807,12 +1892,13 @@ declare namespace huks { function abortSession(handle: number, options: HuksOptions): Promise<void>; /** - * Key Attestation. This API can be called only by system applications. + * Obtains the certificate used to attest a key. This API uses an asynchronous callback to return the result. * * @permission ohos.permission.ATTEST_KEY - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key attestation operation. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of attestKeyItem. + * @param { string } keyAlias - Alias of the key. The certificate to be obtained stores the key. + * @param { HuksOptions } options - Parameters and data required for obtaining the certificate. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the result. If the operation is + * successful, no err value is returned; otherwise, an error code is returned. * @throws { BusinessError } 201 - check permission failed * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -1826,7 +1912,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 @@ -1856,7 +1942,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @systemapi this method can be used only by system applications. @@ -1865,12 +1951,13 @@ declare namespace huks { function attestKeyItemAsUser(userId: number, keyAlias: string, huksOptions: HuksOptions): Promise<HuksReturnResult>; /** - * Key Attestation. This API can be called only by system applications. + * Obtains the certificate used to attest a key. This API uses a promise to return the result. * * @permission ohos.permission.ATTEST_KEY - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key attestation operation. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { string } keyAlias - Alias of the key. The certificate to be obtained stores the key. + * @param { HuksOptions } options - Parameters and data required for obtaining the certificate. + * @returns { Promise<HuksReturnResult> } Promise used to return the result. If the operation is successful, + * certChains in HuksReturnResult is the certificate chain obtained. * @throws { BusinessError } 201 - check permission failed * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. @@ -1884,7 +1971,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 9 @@ -1892,11 +1979,15 @@ declare namespace huks { function attestKeyItem(keyAlias: string, options: HuksOptions): Promise<HuksReturnResult>; /** - * Key Attestation with anonymous certificate. + * Obtains the certificate for anonymous attestation. This API uses an asynchronous callback to return + * the result. This operation requires Internet access and takes time. If error code 12000012 is returned, the network + * is abnormal. If the device is not connected to the network, display a message, indicating that the network is not + * connected. If the network is connected, the failure may be caused by network jitter. Try again later. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key attestation operation. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of attestKeyItem. + * @param { string } keyAlias - Alias of the key. The certificate to be obtained stores the key. + * @param { HuksOptions } options - Parameters and data required for obtaining the certificate. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the result. If the operation is + * successful, no err value is returned; otherwise, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1909,17 +2000,21 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 11 */ /** - * Key Attestation with anonymous certificate. + * Obtains the certificate for anonymous attestation. This API uses an asynchronous callback to return + * the result. This operation requires Internet access and takes time. If error code 12000012 is returned, the network + * is abnormal. If the device is not connected to the network, display a message, indicating that the network is not + * connected. If the network is connected, the failure may be caused by network jitter. Try again later. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key attestation operation. - * @param { AsyncCallback<HuksReturnResult> } callback - the callback of attestKeyItem. + * @param { string } keyAlias - Alias of the key. The certificate to be obtained stores the key. + * @param { HuksOptions } options - Parameters and data required for obtaining the certificate. + * @param { AsyncCallback<HuksReturnResult> } callback - Callback used to return the result. If the operation is + * successful, no err value is returned; otherwise, an error code is returned. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1932,7 +2027,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -1963,7 +2058,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @systemapi this method can be used only by system applications. @@ -1972,11 +2067,15 @@ declare namespace huks { function anonAttestKeyItemAsUser(userId: number, keyAlias: string, huksOptions: HuksOptions): Promise<HuksReturnResult>; /** - * Key Attestation with anonymous certificate. + * Obtains the certificate for anonymous attestation. This API uses a promise to return the result. This + * operation requires Internet access and takes time. If error code 12000012 is returned, the network is abnormal. If + * the device is not connected to the network, display a message, indicating that the network is not connected. If the + * network is connected, the failure may be caused by network jitter. Try again later. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key attestation operation. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { string } keyAlias - Alias of the key. The certificate to be obtained stores the key. + * @param { HuksOptions } options - Parameters and data required for obtaining the certificate. + * @returns { Promise<HuksReturnResult> } Promise used to return the result. If the operation is successful, + * certChains in HuksReturnResult is the certificate chain obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -1989,17 +2088,21 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @since 11 */ /** - * Key Attestation with anonymous certificate. + * Obtains the certificate for anonymous attestation. This API uses a promise to return the result. This + * operation requires Internet access and takes time. If error code 12000012 is returned, the network is abnormal. If + * the device is not connected to the network, display a message, indicating that the network is not connected. If the + * network is connected, the failure may be caused by network jitter. Try again later. * - * @param { string } keyAlias - keyAlias indicates the key's name. - * @param { HuksOptions } options - options indicates the properties of the key attestation operation. - * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @param { string } keyAlias - Alias of the key. The certificate to be obtained stores the key. + * @param { HuksOptions } options - Parameters and data required for obtaining the certificate. + * @returns { Promise<HuksReturnResult> } Promise used to return the result. If the operation is successful, + * certChains in HuksReturnResult is the certificate chain obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. @@ -2012,7 +2115,7 @@ declare namespace huks { * @throws { BusinessError } 12000005 - IPC communication failed * @throws { BusinessError } 12000006 - error occurred in crypto engine * @throws { BusinessError } 12000011 - queried entity does not exist - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -2021,10 +2124,10 @@ declare namespace huks { function anonAttestKeyItem(keyAlias: string, options: HuksOptions): Promise<HuksReturnResult>; /** - * Get the sdk version. + * Obtains the SDK version of the current system. * - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { string } the character string of the sdk version. + * @param { HuksOptions } options - Empty object, which is used to hold the SDK version. + * @returns { string } SDK version obtained. * @syscap SystemCapability.Security.Huks.Extension * @since 8 * @deprecated since 11 @@ -2032,17 +2135,17 @@ declare namespace huks { function getSdkVersion(options: HuksOptions): string; /** - * list the key aliases. + * Lists key aliases. This API uses a promise to return the result. * - * @param { HuksOptions } options - options indicates the properties of the key. - * @returns { Promise<HuksListAliasesReturnResult> } the promise returned by the function. + * @param { HuksOptions } options - Parameters for listing key aliases. + * @returns { Promise<HuksListAliasesReturnResult> } Promise used to return the key aliases obtained. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. * 3. Parameter verification failed. * @throws { BusinessError } 12000004 - operating file failed * @throws { BusinessError } 12000005 - IPC communication failed - * @throws { BusinessError } 12000012 - external error + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal * @throws { BusinessError } 12000014 - memory is insufficient * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -2051,14 +2154,59 @@ declare namespace huks { function listAliases(options: HuksOptions): Promise<HuksListAliasesReturnResult>; /** - * Interface of huks param. + * Export the wrapped key protected by a specific key. + * + * @param { string } keyAlias - keyAlias indicates the key's name. + * @param { HuksOptions } params - params indicates the export properties. + * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @throws { BusinessError } 801 - api is not supported + * @throws { BusinessError } 12000002 - algorithm param is missing + * @throws { BusinessError } 12000003 - algorithm param is invalid + * @throws { BusinessError } 12000004 - operating file failed + * @throws { BusinessError } 12000005 - IPC communication failed + * @throws { BusinessError } 12000006 - error occurred in crypto engine + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal + * @throws { BusinessError } 12000014 - memory is insufficient + * @throws { BusinessError } 12000018 - the input parameter is invalid + * @syscap SystemCapability.Security.Huks.Core + * @since 20 + */ + function wrapKeyItem(keyAlias: string, params: HuksOptions): Promise<HuksReturnResult>; + + /** + * Import the wrapped key protected by a specific key + * + * @param { string } keyAlias - keyAlias indicates the key's name. + * @param { HuksOptions } params - params indicates the import properties. + * @param { Uint8Array } wrappedKey -indicates the wrapped key. + * @returns { Promise<HuksReturnResult> } the promise returned by the function. + * @throws { BusinessError } 801 - api is not supported + * @throws { BusinessError } 12000002 - algorithm param is missing + * @throws { BusinessError } 12000003 - algorithm param is invalid + * @throws { BusinessError } 12000004 - operating file failed + * @throws { BusinessError } 12000005 - IPC communication failed + * @throws { BusinessError } 12000006 - error occurred in crypto engine + * @throws { BusinessError } 12000007 - this credential is already invalidated permanently + * @throws { BusinessError } 12000008 - verify auth token failed + * @throws { BusinessError } 12000009 - auth token is already timeout + * @throws { BusinessError } 12000012 - Device environment or input parameter abnormal + * @throws { BusinessError } 12000014 - memory is insufficient + * @throws { BusinessError } 12000015 - Failed to obtain the security information via UserIAM + * @throws { BusinessError } 12000018 - the input parameter is invalid + * @syscap SystemCapability.Security.Huks.Core + * @since 20 + */ + function unwrapKeyItem(keyAlias: string, params: HuksOptions, wrappedKey: Uint8Array): Promise<HuksReturnResult>; + + /** + * Defines the param field in the properties array of options used in the APIs. * * @typedef HuksParam * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Interface of huks param. + * Defines the param field in the properties array of options used in the APIs. * * @typedef HuksParam * @syscap SystemCapability.Security.Huks.Core @@ -2124,14 +2272,14 @@ declare namespace huks { } /** - * Interface of huks handle. + * Defines the struct for a HUKS handle. * * @typedef HuksSessionHandle * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** - * Interface of huks handle. + * Defines the struct for a HUKS handle. * * @typedef HuksSessionHandle * @syscap SystemCapability.Security.Huks.Core @@ -2164,14 +2312,14 @@ declare namespace huks { } /** - * Interface of huks option. + * Defines options used in the APIs. * * @typedef HuksOptions * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Interface of huks option. + * Defines options used in the APIs. * * @typedef HuksOptions * @syscap SystemCapability.Security.Huks.Core @@ -2244,14 +2392,14 @@ declare namespace huks { } /** - * Interface of huks result. + * Represents the result returned. * * @typedef HuksReturnResult * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** - * Interface of huks result. + * Represents the result returned. * * @typedef HuksReturnResult * @syscap SystemCapability.Security.Huks.Core @@ -2295,7 +2443,7 @@ declare namespace huks { } /** - * Interface of huks ListAliases result. + * Represents an array of key aliases. * * @typedef HuksListAliasesReturnResult * @syscap SystemCapability.Security.Huks.Extension @@ -2730,14 +2878,14 @@ declare namespace huks { } /** - * Enum for huks exception error code. + * Enumerates the error codes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** - * Enum for huks exception error code. + * Enumerates the error codes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -2746,217 +2894,311 @@ declare namespace huks { */ export enum HuksExceptionErrCode { /** + * Permission verification failed. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * Permission verification failed. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_PERMISSION_FAIL = 201, /** - * Non-system applications are not allowed to use system APIs. + * The caller is not a system application and cannot call the system API. * * @syscap SystemCapability.Security.Huks.Core * @since 12 */ HUKS_ERR_CODE_NOT_SYSTEM_APP = 202, /** + * Invalid parameters are detected. Possible causes: + * 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. + * 3. Parameter verification failed. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * Invalid parameters are detected. Possible causes: + * 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. + * 3. Parameter verification failed. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_ILLEGAL_ARGUMENT = 401, /** + * The API is not supported. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * The API is not supported. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_NOT_SUPPORTED_API = 801, /** + * The feature is not supported. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * The feature is not supported. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_FEATURE_NOT_SUPPORTED = 12000001, /** + * Key algorithm parameters are missing. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * Key algorithm parameters are missing. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_MISSING_CRYPTO_ALG_ARGUMENT = 12000002, /** + * Invalid key algorithm parameters are detected. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * Invalid key algorithm parameters are detected. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_INVALID_CRYPTO_ALG_ARGUMENT = 12000003, /** + * The file operation failed. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * The file operation failed. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_FILE_OPERATION_FAIL = 12000004, /** + * The communication failed. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * The communication failed. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_COMMUNICATION_FAIL = 12000005, /** + * Failed to operate the algorithm library. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * Failed to operate the algorithm library. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_CRYPTO_FAIL = 12000006, /** + * Failed to access the key because the key has expired. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * Failed to access the key because the key has expired. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_KEY_AUTH_PERMANENTLY_INVALIDATED = 12000007, /** + * Failed to access the key because the authentication has failed. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * Failed to access the key because the authentication has failed. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_KEY_AUTH_VERIFY_FAILED = 12000008, /** + * Key access timed out. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * Key access timed out. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_KEY_AUTH_TIME_OUT = 12000009, /** + * The number of key operation sessions has reached the limit. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * The number of key operation sessions has reached the limit. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_SESSION_LIMIT = 12000010, /** + * The target object does not exist. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * The target object does not exist. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_ITEM_NOT_EXIST = 12000011, /** + * An external error occurs. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * An external error occurs. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_EXTERNAL_ERROR = 12000012, /** + * The credential does not exist. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * The credential does not exist. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_CREDENTIAL_NOT_EXIST = 12000013, /** + * The memory is insufficient. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * The memory is insufficient. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_INSUFFICIENT_MEMORY = 12000014, /** + * Failed to call other system services. + * * @syscap SystemCapability.Security.Huks.Core * @since 9 */ /** + * Failed to call other system services. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ERR_CODE_CALL_SERVICE_FAILED = 12000015, /** - * A device password is required but not set. + * The required lock screen password is not set. * * @syscap SystemCapability.Security.Huks.Extension * @since 11 */ /** - * A device password is required but not set. + * The required lock screen password is not set. * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ - HUKS_ERR_CODE_DEVICE_PASSWORD_UNSET = 12000016 + HUKS_ERR_CODE_DEVICE_PASSWORD_UNSET = 12000016, + /** + * The key with same alias is already exist. + * + * @syscap SystemCapability.Security.Huks.Core + * @atomicservice + * @since 20 + */ + HUKS_ERR_CODE_KEY_ALREADY_EXIST = 12000017, + /** + * The input parameter is invalid. + * + * @syscap SystemCapability.Security.Huks.Core + * @atomicservice + * @since 20 + */ + HUKS_ERR_CODE_INVALID_ARGUMENT = 12000018, } /** - * Enum for huks key purpose. + * Enumerates the key purposes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Enum for huks key purpose. + * Enumerates the key purposes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -2965,13 +3207,13 @@ declare namespace huks { */ export enum HuksKeyPurpose { /** - * Usable with RSA, EC and AES keys. + * Used to encrypt the plaintext. * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Usable with RSA, EC and AES keys. + * Used to encrypt the plaintext. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -2979,13 +3221,13 @@ declare namespace huks { */ HUKS_KEY_PURPOSE_ENCRYPT = 1, /** - * Usable with RSA, EC and AES keys. + * Used to decrypt the cipher text. * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Usable with RSA, EC and AES keys. + * Used to decrypt the cipher text. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -2993,84 +3235,98 @@ declare namespace huks { */ HUKS_KEY_PURPOSE_DECRYPT = 2, /** - * Usable with RSA, EC keys. + * Used for signing. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** - * Usable with RSA, EC keys. + * Used for signing. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_PURPOSE_SIGN = 4, /** - * Usable with RSA, EC keys. + * Used to verify the signature. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** - * Usable with RSA, EC keys. + * Used to verify the signature. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_PURPOSE_VERIFY = 8, /** - * Usable with EC keys. + * Used to derive a key. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** - * Usable with EC keys. + * Used to derive a key. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_PURPOSE_DERIVE = 16, /** - * Usable with wrap key. + * Used for an encrypted export. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** - * Usable with wrap key. + * Used for an encrypted export. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_PURPOSE_WRAP = 32, /** - * Usable with unwrap key. + * Used for an encrypted import. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** - * Usable with unwrap key. + * Used for an encrypted import. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_PURPOSE_UNWRAP = 64, /** - * Usable with mac. + * Used to generate a message authentication code (MAC). + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** - * Usable with mac. + * Used to generate a message authentication code (MAC). + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_PURPOSE_MAC = 128, /** - * Usable with agree. + * Used for key agreement. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** - * Usable with agree. + * Used for key agreement. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3079,96 +3335,130 @@ declare namespace huks { } /** - * Enum for huks key digest. + * Enumerates the digest algorithms. * * @enum { number } + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** - * Enum for huks key digest. + * Enumerates the digest algorithms. * * @enum { number } + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ export enum HuksKeyDigest { /** + * No digest algorithm. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * No digest algorithm. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_DIGEST_NONE = 0, /** + * MD5. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * MD5. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_DIGEST_MD5 = 1, /** + * SM3. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * SM3. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_DIGEST_SM3 = 2, /** + * SHA-1. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * SHA-1. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_DIGEST_SHA1 = 10, /** + * SHA-224. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * SHA-224. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_DIGEST_SHA224 = 11, /** + * SHA-256. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * SHA-256. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_DIGEST_SHA256 = 12, /** + * SHA-384. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * SHA-384. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_DIGEST_SHA384 = 13, /** + * SHA-512. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * SHA-512. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3177,14 +3467,14 @@ declare namespace huks { } /** - * Enum for huks key padding. + * Enumerates the padding algorithms. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Enum for huks key padding. + * Enumerates the padding algorithms. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -3193,72 +3483,100 @@ declare namespace huks { */ export enum HuksKeyPadding { /** + * No padding algorithm is used. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * No padding algorithm is used. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_PADDING_NONE = 0, /** + * Optimal Asymmetric Encryption Padding (OAEP). + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Optimal Asymmetric Encryption Padding (OAEP). + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_PADDING_OAEP = 1, /** + * Probabilistic Signature Scheme (PSS). + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Probabilistic Signature Scheme (PSS). + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_PADDING_PSS = 2, /** + * Public Key Cryptography Standards (PKCS) #1 v1.5. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Public Key Cryptography Standards (PKCS) #1 v1.5. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_PADDING_PKCS1_V1_5 = 3, /** + * PKCS #5. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * PKCS #5. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_PADDING_PKCS5 = 4, /** + * PKCS #7. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * PKCS #7. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_PADDING_PKCS7 = 5, /** + * ISO_IEC_9796_2. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_PADDING_ISO_IEC_9796_2 = 6, /** + * ISO_IEC_9797_1. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3267,14 +3585,14 @@ declare namespace huks { } /** - * Enum for huks cipher mode. + * Enumerates the cipher modes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Enum for huks cipher mode. + * Enumerates the cipher modes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -3283,47 +3601,63 @@ declare namespace huks { */ export enum HuksCipherMode { /** + * Electronic Code Block (ECB) mode. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Electronic Code Block (ECB) mode. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_MODE_ECB = 1, /** + * Cipher Block Chaining (CBC) mode. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Cipher Block Chaining (CBC) mode. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_MODE_CBC = 2, /** + * Counter (CTR) mode. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Counter (CTR) mode. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_MODE_CTR = 3, /** + * Output Feedback (OFB) mode. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Output Feedback (OFB) mode. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_MODE_OFB = 4, /** - * Cipher Feedback (CFB) mode + * Ciphertext Feedback (CFB) mode. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -3331,10 +3665,14 @@ declare namespace huks { */ HUKS_MODE_CFB = 5, /** + * Counter with CBC-MAC (CCM) mode. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Counter with CBC-MAC (CCM) mode. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3342,10 +3680,14 @@ declare namespace huks { HUKS_MODE_CCM = 31, /** + * Galois/Counter (GCM) mode. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Galois/Counter (GCM) mode. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 @@ -3354,14 +3696,14 @@ declare namespace huks { } /** - * Enum for huks key size. + * Enumerates the key sizes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Enum for huks key size. + * Enumerates the key sizes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -3370,60 +3712,83 @@ declare namespace huks { */ export enum HuksKeySize { /** + * Rivest-Shamir-Adleman (RSA) key of 512 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Rivest-Shamir-Adleman (RSA) key of 512 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_RSA_KEY_SIZE_512 = 512, /** + * RSA key of 768 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * RSA key of 768 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_RSA_KEY_SIZE_768 = 768, /** + * RSA key of 1024 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * RSA key of 1024 bits. * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_RSA_KEY_SIZE_1024 = 1024, /** + * RSA key of 2048 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * RSA key of 2048 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_RSA_KEY_SIZE_2048 = 2048, /** + * RSA key of 3072 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * RSA key of 3072 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_RSA_KEY_SIZE_3072 = 3072, /** + * RSA key of 4096 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * RSA key of 4096 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3431,40 +3796,56 @@ declare namespace huks { HUKS_RSA_KEY_SIZE_4096 = 4096, /** + * Elliptic Curve Cryptography (ECC) key of 224 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Elliptic Curve Cryptography (ECC) key of 224 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ECC_KEY_SIZE_224 = 224, /** + * ECC key of 256 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * ECC key of 256 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ECC_KEY_SIZE_256 = 256, /** + * ECC key of 384 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * ECC key of 384 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ECC_KEY_SIZE_384 = 384, /** + * ECC key of 521 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * ECC key of 521 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3472,30 +3853,42 @@ declare namespace huks { HUKS_ECC_KEY_SIZE_521 = 521, /** + * Advanced Encryption Standard (AES) key of 128 bits. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Advanced Encryption Standard (AES) key of 128 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_AES_KEY_SIZE_128 = 128, /** + * AES key of 192 bits. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * AES key of 192 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_AES_KEY_SIZE_192 = 192, /** + * AES key of 256 bits. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * AES key of 256 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 @@ -3503,6 +3896,8 @@ declare namespace huks { HUKS_AES_KEY_SIZE_256 = 256, /** + * AES key of 512 bits. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 * @deprecated since 11 @@ -3510,10 +3905,14 @@ declare namespace huks { HUKS_AES_KEY_SIZE_512 = 512, /** + * Curve25519 key of 256 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Curve25519 key of 256 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3521,30 +3920,42 @@ declare namespace huks { HUKS_CURVE25519_KEY_SIZE_256 = 256, /** + * Diffie-Hellman (DH) key of 2048 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Diffie-Hellman (DH) key of 2048 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_DH_KEY_SIZE_2048 = 2048, /** + * DH key of 3072 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * DH key of 3072 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_DH_KEY_SIZE_3072 = 3072, /** + * DH key of 4096 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * DH key of 4096 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3552,38 +3963,52 @@ declare namespace huks { HUKS_DH_KEY_SIZE_4096 = 4096, /** + * ShangMi2 (SM2) key of 256 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * ShangMi2 (SM2) key of 256 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_SM2_KEY_SIZE_256 = 256, /** + * ShangMi4 (SM4) key of 128 bits. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * ShangMi4 (SM4) key of 128 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_SM4_KEY_SIZE_128 = 128, /** + * DES key of 64 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_DES_KEY_SIZE_64 = 64, /** + * 3DES key of 128 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_3DES_KEY_SIZE_128 = 128, /** + * 3DES key of 192 bits. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3592,14 +4017,14 @@ declare namespace huks { } /** - * Enum for huks key algorithm. + * Enumerates the key algorithms. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Enum for huks key algorithm. + * Enumerates the key algorithms. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -3608,30 +4033,42 @@ declare namespace huks { */ export enum HuksKeyAlg { /** + * RSA. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * RSA. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_RSA = 1, /** + * ECC. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * ECC. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_ECC = 2, /** + * DSA. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * DSA. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3639,40 +4076,56 @@ declare namespace huks { HUKS_ALG_DSA = 3, /** + * AES. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * AES. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_ALG_AES = 20, /** + * HMAC. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * HMAC. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_HMAC = 50, /** + * HKDF. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * HKDF. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_HKDF = 51, /** + * PBKDF2. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * PBKDF2. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3680,40 +4133,56 @@ declare namespace huks { HUKS_ALG_PBKDF2 = 52, /** + * ECDH. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * ECDH. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_ECDH = 100, /** + * X25519. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * X25519. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_X25519 = 101, /** + * Ed25519. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Ed25519. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_ED25519 = 102, /** + * DH. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * DH. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3721,48 +4190,66 @@ declare namespace huks { HUKS_ALG_DH = 103, /** + * SM2. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * SM2. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_SM2 = 150, /** + * SM3. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * SM3. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_SM3 = 151, /** + * SM4. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * SM4. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_SM4 = 152, /** + * DES. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_DES = 160, /** + * 3DES. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_ALG_3DES = 161, /** + * CMAC. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3771,14 +4258,14 @@ declare namespace huks { } /** - * Enum for huks unwrap suite. + * Enumerates the algorithm suites that can be used for importing a key in ciphertext. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Enum for huks unwrap suite. + * Enumerates the algorithm suites that can be used for importing a key in ciphertext. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -3787,20 +4274,28 @@ declare namespace huks { */ export enum HuksUnwrapSuite { /** + * Use X25519 for key agreement and then use AES-256 GCM to encrypt the key. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Use X25519 for key agreement and then use AES-256 GCM to encrypt the key. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_UNWRAP_SUITE_X25519_AES_256_GCM_NOPADDING = 1, /** + * Use ECDH for key agreement and then use AES-256 GCM to encrypt the key. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Use ECDH for key agreement and then use AES-256 GCM to encrypt the key. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3809,14 +4304,14 @@ declare namespace huks { } /** - * Enum for huks key generate type. + * Enumerates the key generation types. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** - * Enum for huks key generate type. + * Enumerates the key generation types. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -3825,30 +4320,42 @@ declare namespace huks { */ export enum HuksKeyGenerateType { /** + * Key generated by default. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Key generated by default. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_GENERATE_TYPE_DEFAULT = 0, /** + * Derived key. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Derived key. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_GENERATE_TYPE_DERIVE = 1, /** + * Key generated by agreement. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Key generated by agreement. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3857,14 +4364,14 @@ declare namespace huks { } /** - * Enum for huks key flag. + * Enumerates the key generation modes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Enum for huks key flag. + * Enumerates the key generation modes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -3873,40 +4380,56 @@ declare namespace huks { */ export enum HuksKeyFlag { /** + * Import a key using an API. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Import a key using an API. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_FLAG_IMPORT_KEY = 1, /** + * Generate a key by using an API. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Generate a key by using an API. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_FLAG_GENERATE_KEY = 2, /** + * Generate a key by using a key agreement API. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Generate a key by using a key agreement API. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_FLAG_AGREE_KEY = 3, /** + * Derive a key by using an API. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Derive a key by using an API. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -3915,14 +4438,14 @@ declare namespace huks { } /** - * Enum for huks key storage type. + * Enumerates the key storage modes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Enum for huks key storage type. + * Enumerates the key storage modes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -3931,25 +4454,33 @@ declare namespace huks { */ export enum HuksKeyStorageType { /** + * The key is managed locally. NOTE: This tag is deprecated since API version 10. No substitute is + * provided because this tag is not used in key management. In key derivation scenarios, use + * HUKS_STORAGE_ONLY_USED_IN_HUKS or HUKS_STORAGE_KEY_EXPORT_ALLOWED. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 * @deprecated since 10 */ HUKS_STORAGE_TEMP = 0, /** + * The key is managed by the HUKS service. NOTE: This tag is deprecated since API version 10. No + * substitute is provided because this tag is not used in key management. In key derivation scenarios, use + * HUKS_STORAGE_ONLY_USED_IN_HUKS or HUKS_STORAGE_KEY_EXPORT_ALLOWED. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 * @deprecated since 10 */ HUKS_STORAGE_PERSISTENT = 1, /** - * The key is stored and used only in HUKS. It is mutually exclusive with HUKS_STORAGE_KEY_EXPORT_ALLOWED. + * The key derived from the master key is stored in the HUKS and managed by the HUKS. * * @syscap SystemCapability.Security.Huks.Extension * @since 10 */ /** - * The key is stored and used only in HUKS. It is mutually exclusive with HUKS_STORAGE_KEY_EXPORT_ALLOWED. + * The key derived from the master key is stored in the HUKS and managed by the HUKS. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -3957,13 +4488,13 @@ declare namespace huks { */ HUKS_STORAGE_ONLY_USED_IN_HUKS = 2, /** - * The key can be exported. It is mutually exclusive with HUKS_STORAGE_ONLY_USED_IN_HUKS. + * The key derived from the master key is exported to the service, and not managed by the HUKS. * * @syscap SystemCapability.Security.Huks.Extension * @since 10 */ /** - * The key can be exported. It is mutually exclusive with HUKS_STORAGE_ONLY_USED_IN_HUKS. + * The key derived from the master key is exported to the service, and not managed by the HUKS. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -3973,14 +4504,16 @@ declare namespace huks { } /** - * Enum for huks import key type. + * Enumerates the types of keys to import. By default, a public key is imported. This field is not + * required when a symmetric key is imported. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Enum for huks import key type. + * Enumerates the types of keys to import. By default, a public key is imported. This field is not + * required when a symmetric key is imported. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -3989,30 +4522,42 @@ declare namespace huks { */ export enum HuksImportKeyType { /** + * Public key. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Public key. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_TYPE_PUBLIC_KEY = 0, /** + * Private key. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Private key. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_KEY_TYPE_PRIVATE_KEY = 1, /** + * Public and private key pair. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Public and private key pair. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -4021,14 +4566,16 @@ declare namespace huks { } /** - * Enum for rsa salt len type. + * Enumerates the salt_len types to set when PSS padding is used in RSA signing or signature + * verification. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 10 */ /** - * Enum for rsa salt len type. + * Enumerates the salt_len types to set when PSS padding is used in RSA signing or signature + * verification. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -4037,13 +4584,13 @@ declare namespace huks { */ export enum HuksRsaPssSaltLenType { /** - * Salt length that matches the digest length. + * salt_len is set to the digest length. * * @syscap SystemCapability.Security.Huks.Extension * @since 10 */ /** - * Salt length that matches the digest length. + * salt_len is set to the digest length. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -4052,13 +4599,13 @@ declare namespace huks { HUKS_RSA_PSS_SALT_LEN_DIGEST = 0, /** - * Maximum salt length. + * salt_len is set to the maximum length. * * @syscap SystemCapability.Security.Huks.Extension * @since 10 */ /** - * Maximum salt length. + * salt_len is set to the maximum length. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -4068,14 +4615,14 @@ declare namespace huks { } /** - * Enum for huks user auth type. + * Enumerates the user authentication types. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Enum for huks user auth type. + * Enumerates the user authentication types. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension @@ -4084,46 +4631,65 @@ declare namespace huks { */ export enum HuksUserAuthType { /** + * Fingerprint authentication. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Fingerprint authentication. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_USER_AUTH_TYPE_FINGERPRINT = 1 << 0, /** + * Facial authentication. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Facial authentication. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_USER_AUTH_TYPE_FACE = 1 << 1, /** + * PIN authentication. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * PIN authentication. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ - HUKS_USER_AUTH_TYPE_PIN = 1 << 2 + HUKS_USER_AUTH_TYPE_PIN = 1 << 2, + /** + * Tui pin auth type. + * + * @syscap SystemCapability.Security.Huks.Extension + * @since 20 + */ + HUKS_USER_AUTH_TYPE_TUI_PIN = 1 << 5 } /** - * Enum for huks auth access type. + * Enumerates the access control types. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Enum for huks auth access type. + * Enumerates the access control types. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension @@ -4132,33 +4698,41 @@ declare namespace huks { */ export enum HuksAuthAccessType { /** + * The key becomes invalid after the password is cleared. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * The key becomes invalid after the password is cleared. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_AUTH_ACCESS_INVALID_CLEAR_PASSWORD = 1 << 0, /** + * The key becomes invalid after a new biometric feature is added. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * The key becomes invalid after a new biometric feature is added. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_AUTH_ACCESS_INVALID_NEW_BIO_ENROLL = 1 << 1, /** - * Auth type for always valid. + * The key is always valid. * * @syscap SystemCapability.Security.Huks.Extension * @since 11 */ /** - * Auth type for always valid. + * The key is always valid. * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -4168,7 +4742,7 @@ declare namespace huks { } /** - * Enum for huks user auth mode. + * Enumerates the user authentication modes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension @@ -4177,7 +4751,7 @@ declare namespace huks { */ export enum HuksUserAuthMode { /** - * Auth mode for local scenarios. + * Local authentication. * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -4185,7 +4759,7 @@ declare namespace huks { */ HUKS_USER_AUTH_MODE_LOCAL = 0, /** - * Auth mode for co-auth scenarios. + * Cross-device collaborative authentication. * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -4194,14 +4768,14 @@ declare namespace huks { HUKS_USER_AUTH_MODE_COAUTH = 1, } /** - * Enum for huks key file storage authentication level. + * Enumerates the storage security levels of a key. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 11 */ - /** - * Enum for huks key file storage authentication level. + /** + * Enumerates the storage security levels of a key. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -4210,36 +4784,42 @@ declare namespace huks { */ export enum HuksAuthStorageLevel { /** - * Key file storage security level for device encryption standard. + * The key can be accessed only after the device is started. + * * @syscap SystemCapability.Security.Huks.Extension * @since 11 */ /** - * Key file storage security level for device encryption standard. + * The key can be accessed only after the device is started. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_AUTH_STORAGE_LEVEL_DE = 0, /** - * Key file storage security level for credential encryption standard. + * The key can be accessed only after the first unlock of the device. + * * @syscap SystemCapability.Security.Huks.Extension * @since 11 */ /** - * Key file storage security level for credential encryption standard. + * The key can be accessed only after the first unlock of the device. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_AUTH_STORAGE_LEVEL_CE = 1, /** - * Key file storage security level for enhanced credential encryption standard. + * The key can be accessed only when the device is unlocked. + * * @syscap SystemCapability.Security.Huks.Extension * @since 11 */ /** - * Key file storage security level for enhanced credential encryption standard. + * The key can be accessed only when the device is unlocked. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -4248,14 +4828,14 @@ declare namespace huks { } /** - * Enum for huks auth access challenge type. + * Enumerates the types of the challenges generated when a key is used. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Enum for huks auth access challenge type. + * Enumerates the types of the challenges generated when a key is used. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension @@ -4264,30 +4844,42 @@ declare namespace huks { */ export enum HuksChallengeType { /** + * Normal challenge, which is of 32 bytes by default. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Normal challenge, which is of 32 bytes by default. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_CHALLENGE_TYPE_NORMAL = 0, /** + * Custom challenge, which supports only one authentication for multiple keys. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Custom challenge, which supports only one authentication for multiple keys. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_CHALLENGE_TYPE_CUSTOM = 1, /** + * Challenge is not required. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Challenge is not required. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -4296,14 +4888,14 @@ declare namespace huks { } /** - * Enum for huks challenge position. + * Enumerates the positions of the 8-byte valid value in a custom challenge generated. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Enum for huks challenge position. + * Enumerates the positions of the 8-byte valid value in a custom challenge generated. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension @@ -4312,40 +4904,56 @@ declare namespace huks { */ export enum HuksChallengePosition { /** + * Bytes 0 to 7. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Bytes 0 to 7. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_CHALLENGE_POS_0 = 0, /** + * Bytes 8 to 15. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Bytes 8 to 15. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_CHALLENGE_POS_1, /** + * Bytes 16 to 23. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Bytes 16 to 23. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_CHALLENGE_POS_2, /** + * Bytes 24 to 31. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Bytes 24 to 31. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -4354,14 +4962,14 @@ declare namespace huks { } /** - * Enum for huks secure sign type. + * Enumerates the signature types of the key generated or imported. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Enum for huks secure sign type. + * Enumerates the signature types of the key generated or imported. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension @@ -4370,10 +4978,18 @@ declare namespace huks { */ export enum HuksSecureSignType { /** + * The signature carries authentication information. This field is specified when a key is generated or + * imported. When the key is used for signing, the data will be added with the authentication information and then + * be signed. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * The signature carries authentication information. This field is specified when a key is generated or + * imported. When the key is used for signing, the data will be added with the authentication information and then + * be signed. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -4382,14 +4998,14 @@ declare namespace huks { } /** - * Enum for huks ipc send type. + * Enumerates the tag transfer modes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** - * Enum for huks ipc send type. + * Enumerates the tag transfer modes. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -4398,20 +5014,28 @@ declare namespace huks { */ export enum HuksSendType { /** + * The tag is sent asynchronously. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * The tag is sent asynchronously. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_SEND_TYPE_ASYNC = 0, /** + * The tag is sent synchronously. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * The tag is sent synchronously. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -4420,14 +5044,33 @@ declare namespace huks { } /** - * Enum for huks base tag type. + * Enum for key wrap type + * + * @enum { number } + * @syscap SystemCapability.Security.Huks.Core + * @atomicservice + * @since 20 + */ + export enum HuksKeyWrapType { + /** + * The hardware unique key wrap type + * + * @syscap SystemCapability.Security.Huks.Core + * @atomicservice + * @since 20 + */ + HUKS_KEY_WRAP_TYPE_HUK_BASED = 2, + } + + /** + * Enumerates the tag data types. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Enum for huks base tag type. + * Enumerates the tag data types. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -4436,60 +5079,84 @@ declare namespace huks { */ export enum HuksTagType { /** + * Invalid tag type. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Invalid tag type. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_TYPE_INVALID = 0 << 28, /** + * Number of the int type. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Number of the int type. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_TYPE_INT = 1 << 28, /** + * Number of the uint type. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Number of the uint type. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_TYPE_UINT = 2 << 28, /** + * BigInt. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * BigInt. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_TYPE_ULONG = 3 << 28, /** + * Boolean. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Boolean. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_TYPE_BOOL = 4 << 28, /** + * Uint8Array. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Uint8Array. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 @@ -4498,14 +5165,14 @@ declare namespace huks { } /** - * Enum for huks tag. + * Enumerates the tags used to invoke parameters. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Enum for huks tag. + * Enumerates the tags used to invoke parameters. * * @enum { number } * @syscap SystemCapability.Security.Huks.Core @@ -4524,30 +5191,42 @@ declare namespace huks { /* Base algorithm TAG: 1 - 200 */ /** + * Algorithm. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Algorithm. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_ALGORITHM = HuksTagType.HUKS_TAG_TYPE_UINT | 1, /** + * Purpose of the key. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Purpose of the key. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_PURPOSE = HuksTagType.HUKS_TAG_TYPE_UINT | 2, /** + * Key size. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Key size. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 @@ -4555,50 +5234,70 @@ declare namespace huks { HUKS_TAG_KEY_SIZE = HuksTagType.HUKS_TAG_TYPE_UINT | 3, /** + * Digest algorithm. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Digest algorithm. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_DIGEST = HuksTagType.HUKS_TAG_TYPE_UINT | 4, /** + * Padding mode. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Padding mode. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_PADDING = HuksTagType.HUKS_TAG_TYPE_UINT | 5, /** + * Cipher mode. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Cipher mode. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_BLOCK_MODE = HuksTagType.HUKS_TAG_TYPE_UINT | 6, /** + * Key type. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Key type. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_KEY_TYPE = HuksTagType.HUKS_TAG_TYPE_UINT | 7, /** + * Associated authentication data. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Associated authentication data. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 @@ -4606,20 +5305,28 @@ declare namespace huks { HUKS_TAG_ASSOCIATED_DATA = HuksTagType.HUKS_TAG_TYPE_BYTES | 8, /** + * Nonce for key encryption and decryption. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Nonce for key encryption and decryption. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_NONCE = HuksTagType.HUKS_TAG_TYPE_BYTES | 9, /** + * IV. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * IV. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -4627,13 +5334,13 @@ declare namespace huks { HUKS_TAG_IV = HuksTagType.HUKS_TAG_TYPE_BYTES | 10, /** - * Key derivation TAG. + * Information generated during key derivation. * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * Key derivation TAG. + * Information generated during key derivation. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -4641,10 +5348,14 @@ declare namespace huks { */ HUKS_TAG_INFO = HuksTagType.HUKS_TAG_TYPE_BYTES | 11, /** + * Salt value used for key derivation. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Salt value used for key derivation. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -4657,10 +5368,14 @@ declare namespace huks { */ HUKS_TAG_PWD = HuksTagType.HUKS_TAG_TYPE_BYTES | 13, /** + * Number of iterations for key derivation. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Number of iterations for key derivation. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -4668,13 +5383,13 @@ declare namespace huks { HUKS_TAG_ITERATION = HuksTagType.HUKS_TAG_TYPE_UINT | 14, /** - * choose from enum HuksKeyGenerateType. + * Key generation type. * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * choose from enum HuksKeyGenerateType. + * Key generation type. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -4701,60 +5416,84 @@ declare namespace huks { */ HUKS_TAG_DERIVE_ALG = HuksTagType.HUKS_TAG_TYPE_UINT | 18, /** + * Type of the algorithm used for key agreement. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Type of the algorithm used for key agreement. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_AGREE_ALG = HuksTagType.HUKS_TAG_TYPE_UINT | 19, /** + * Public key alias used in key agreement. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Public key alias used in key agreement. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_AGREE_PUBLIC_KEY_IS_KEY_ALIAS = HuksTagType.HUKS_TAG_TYPE_BOOL | 20, /** + * Private key alias used in key agreement. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Private key alias used in key agreement. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_AGREE_PRIVATE_KEY_ALIAS = HuksTagType.HUKS_TAG_TYPE_BYTES | 21, /** + * Public key used in key agreement. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Public key used in key agreement. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_AGREE_PUBLIC_KEY = HuksTagType.HUKS_TAG_TYPE_BYTES | 22, /** + * Key alias. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Key alias. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 */ HUKS_TAG_KEY_ALIAS = HuksTagType.HUKS_TAG_TYPE_BYTES | 23, /** + * Size of the derived key. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Size of the derived key. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -4762,13 +5501,13 @@ declare namespace huks { HUKS_TAG_DERIVE_KEY_SIZE = HuksTagType.HUKS_TAG_TYPE_UINT | 24, /** - * Choose from enum HuksImportKeyType + * Type of the imported key. * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** - * Choose from enum HuksImportKeyType + * Type of the imported key. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -4777,10 +5516,14 @@ declare namespace huks { HUKS_TAG_IMPORT_KEY_TYPE = HuksTagType.HUKS_TAG_TYPE_UINT | 25, /** + * Algorithm suite required for encrypted imports. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Algorithm suite required for encrypted imports. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -4788,13 +5531,13 @@ declare namespace huks { HUKS_TAG_UNWRAP_ALGORITHM_SUITE = HuksTagType.HUKS_TAG_TYPE_UINT | 26, /** - * Key storage type, which can be HUKS_STORAGE_ONLY_USED_IN_HUKS or HUKS_STORAGE_KEY_EXPORT_ALLOWED. + * Storage type of the derived key or agreed key. * * @syscap SystemCapability.Security.Huks.Extension * @since 10 */ /** - * Key storage type, which can be HUKS_STORAGE_ONLY_USED_IN_HUKS or HUKS_STORAGE_KEY_EXPORT_ALLOWED. + * Storage type of the derived key or agreed key. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -4803,13 +5546,13 @@ declare namespace huks { HUKS_TAG_DERIVED_AGREED_KEY_STORAGE_FLAG = HuksTagType.HUKS_TAG_TYPE_UINT | 29, /** - * RSA salt length type. For details, see HuksRsaPssSaltLenType. + * Type of the rsa_pss_salt_length. * * @syscap SystemCapability.Security.Huks.Extension * @since 10 */ /** - * RSA salt length type. For details, see HuksRsaPssSaltLenType. + * Type of the rsa_pss_salt_length. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -4855,60 +5598,92 @@ declare namespace huks { /* Other authentication related TAG: 301 - 500 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_ALL_USERS = HuksTagType.HUKS_TAG_TYPE_BOOL | 301, /** + * ID of the user to which the key belongs. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * ID of the user to which the key belongs. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_USER_ID = HuksTagType.HUKS_TAG_TYPE_UINT | 302, /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_NO_AUTH_REQUIRED = HuksTagType.HUKS_TAG_TYPE_BOOL | 303, /** + * User authentication type. For details, see HuksUserAuthType. This parameter must be set together with + * HuksAuthAccessType. You can set a maximum of two user authentication types at a time. For example, if + * HuksAuthAccessType is HUKS_SECURE_ACCESS_INVALID_NEW_BIO_ENROLL, you can set the user authentication type to + * HUKS_USER_AUTH_TYPE_FACE, HUKS_USER_AUTH_TYPE_FINGERPRINT or + * HUKS_USER_AUTH_TYPE_FACE | HUKS_USER_AUTH_TYPE_FINGERPRINT. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * User authentication type. For details, see HuksUserAuthType. This parameter must be set together with + * HuksAuthAccessType. You can set a maximum of two user authentication types at a time. For example, if + * HuksAuthAccessType is HUKS_SECURE_ACCESS_INVALID_NEW_BIO_ENROLL, you can set the user authentication type to + * HUKS_USER_AUTH_TYPE_FACE, HUKS_USER_AUTH_TYPE_FINGERPRINT or + * HUKS_USER_AUTH_TYPE_FACE | HUKS_USER_AUTH_TYPE_FINGERPRINT. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_TAG_USER_AUTH_TYPE = HuksTagType.HUKS_TAG_TYPE_UINT | 304, /** + * One-time validity period of the authentication token. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * One-time validity period of the authentication token. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_TAG_AUTH_TIMEOUT = HuksTagType.HUKS_TAG_TYPE_UINT | 305, /** + * Authentication token. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Authentication token. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -4917,10 +5692,16 @@ declare namespace huks { /* Key secure access control and user auth TAG */ /** + * Access control type. For details, see HuksAuthAccessType. This parameter must be set together with + * HuksUserAuthType. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Access control type. For details, see HuksAuthAccessType. This parameter must be set together with + * HuksUserAuthType. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -4928,10 +5709,14 @@ declare namespace huks { HUKS_TAG_KEY_AUTH_ACCESS_TYPE = HuksTagType.HUKS_TAG_TYPE_UINT | 307, /** + * Signature type of the key generated or imported. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Signature type of the key generated or imported. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -4939,10 +5724,14 @@ declare namespace huks { HUKS_TAG_KEY_SECURE_SIGN_TYPE = HuksTagType.HUKS_TAG_TYPE_UINT | 308, /** + * Type of the challenge generated for a key. For details, see HuksChallengeType. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Type of the challenge generated for a key. For details, see HuksChallengeType. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -4950,10 +5739,14 @@ declare namespace huks { HUKS_TAG_CHALLENGE_TYPE = HuksTagType.HUKS_TAG_TYPE_UINT | 309, /** + * Position of the 8-byte valid value in a custom challenge. For details, see HuksChallengePosition. + * * @syscap SystemCapability.Security.Huks.Extension * @since 9 */ /** + * Position of the 8-byte valid value in a custom challenge. For details, see HuksChallengePosition. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -4961,13 +5754,13 @@ declare namespace huks { HUKS_TAG_CHALLENGE_POS = HuksTagType.HUKS_TAG_TYPE_UINT | 310, /** - * Supported key secure access control purpose tag, the value from enum HuksKeyPurpose. + * Key authentication purpose. * * @syscap SystemCapability.Security.Huks.Extension * @since 10 */ /** - * Supported key secure access control purpose tag, the value from enum HuksKeyPurpose. + * Key authentication purpose. * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -4976,13 +5769,13 @@ declare namespace huks { HUKS_TAG_KEY_AUTH_PURPOSE = HuksTagType.HUKS_TAG_TYPE_UINT | 311, /** - * Security level of access control for key file storage, whose optional values are from enum HuksAuthStorageLevel. + * Key storage security level, which is a value of HuksAuthStorageLevel. * * @syscap SystemCapability.Security.Huks.Extension * @since 11 */ /** - * Security level of access control for key file storage, whose optional values are from enum HuksAuthStorageLevel. + * Key storage security level, which is a value of HuksAuthStorageLevel. * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -4991,7 +5784,8 @@ declare namespace huks { HUKS_TAG_AUTH_STORAGE_LEVEL = HuksTagType.HUKS_TAG_TYPE_UINT | 316, /** - * Authentication mode of the user authtoken, whose optional values are from enum HuksUserAuthMode. + * User authentication mode, which is a value of HuksUserAuthMode. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -5000,20 +5794,28 @@ declare namespace huks { /* Attestation related TAG: 501 - 600 */ /** + * Challenge value used in the attestation. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Challenge value used in the attestation. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_TAG_ATTESTATION_CHALLENGE = HuksTagType.HUKS_TAG_TYPE_BYTES | 501, /** + * Application ID used in the attestation. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Application ID used in the attestation. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -5068,10 +5870,14 @@ declare namespace huks { */ HUKS_TAG_ATTESTATION_ID_MODEL = HuksTagType.HUKS_TAG_TYPE_BYTES | 510, /** + * Key alias used in the attestation. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Key alias used in the attestation. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 @@ -5090,25 +5896,41 @@ declare namespace huks { */ HUKS_TAG_ATTESTATION_ID_UDID = HuksTagType.HUKS_TAG_TYPE_BYTES | 513, /** + * Security level used in the attestation. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Security level used in the attestation. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_TAG_ATTESTATION_ID_SEC_LEVEL_INFO = HuksTagType.HUKS_TAG_TYPE_BYTES | 514, /** + * Version information used in the attestation. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Version information used in the attestation. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_TAG_ATTESTATION_ID_VERSION_INFO = HuksTagType.HUKS_TAG_TYPE_BYTES | 515, + /** + * The tag indicates wheather to override the key with same alias. + * + * @syscap SystemCapability.Security.Huks.Core + * @atomicservice + * @since 20 + */ + HUKS_TAG_KEY_OVERRIDE = HuksTagType.HUKS_TAG_TYPE_BOOL | 520, /* * Other reserved TAG: 601 - 1000 @@ -5117,23 +5939,27 @@ declare namespace huks { */ /** + * Whether to use the alias passed in during key generation. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Whether to use the alias passed in during key generation. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_IS_KEY_ALIAS = HuksTagType.HUKS_TAG_TYPE_BOOL | 1001, /** - * choose from enum HuksKeyStorageType. + * Key storage mode. * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * choose from enum HuksKeyStorageType. + * Key storage mode. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -5141,53 +5967,69 @@ declare namespace huks { */ HUKS_TAG_KEY_STORAGE_FLAG = HuksTagType.HUKS_TAG_TYPE_UINT | 1002, /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_IS_ALLOWED_WRAP = HuksTagType.HUKS_TAG_TYPE_BOOL | 1003, /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_KEY_WRAP_TYPE = HuksTagType.HUKS_TAG_TYPE_UINT | 1004, /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice * @since 12 */ HUKS_TAG_KEY_AUTH_ID = HuksTagType.HUKS_TAG_TYPE_BYTES | 1005, /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_KEY_ROLE = HuksTagType.HUKS_TAG_TYPE_UINT | 1006, /** - * choose from enum HuksKeyFlag. + * Flag of the key. * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** - * choose from enum HuksKeyFlag. + * Flag of the key. * * @syscap SystemCapability.Security.Huks.Core * @atomicservice @@ -5195,10 +6037,14 @@ declare namespace huks { */ HUKS_TAG_KEY_FLAG = HuksTagType.HUKS_TAG_TYPE_UINT | 1007, /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -5217,10 +6063,14 @@ declare namespace huks { */ HUKS_TAG_SECURE_KEY_UUID = HuksTagType.HUKS_TAG_TYPE_BYTES | 1010, /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -5228,13 +6078,13 @@ declare namespace huks { HUKS_TAG_KEY_DOMAIN = HuksTagType.HUKS_TAG_TYPE_UINT | 1011, /** - * Key access control based on device password setting status. True means the key can only be generated and used when the password is set. + * Whether the key is accessible only when the user sets a lock screen password. * * @syscap SystemCapability.Security.Huks.Extension * @since 11 */ /** - * Key access control based on device password setting status. True means the key can only be generated and used when the password is set. + * Whether the key is accessible only when the user sets a lock screen password. * * @syscap SystemCapability.Security.Huks.Extension * @atomicservice @@ -5275,10 +6125,14 @@ declare namespace huks { */ HUKS_TAG_CRYPTO_CTX = HuksTagType.HUKS_TAG_TYPE_ULONG | 10005, /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 @@ -5298,10 +6152,14 @@ declare namespace huks { HUKS_TAG_PAYLOAD_LEN = HuksTagType.HUKS_TAG_TYPE_UINT | 10008, /** + * Used to pass in the AEAD in GCM mode. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Used to pass in the AEAD in GCM mode. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 11 @@ -5338,30 +6196,42 @@ declare namespace huks { */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_SYMMETRIC_KEY_DATA = HuksTagType.HUKS_TAG_TYPE_BYTES | 20001, /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 */ HUKS_TAG_ASYMMETRIC_PUBLIC_KEY_DATA = HuksTagType.HUKS_TAG_TYPE_BYTES | 20002, /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Extension * @since 8 */ /** + * Reserved. + * * @syscap SystemCapability.Security.Huks.Core * @atomicservice * @since 12 diff --git a/api/@ohos.sensor.d.ts b/api/@ohos.sensor.d.ts index 6587cae21a1803ac1298e0fd1b1c66438d6a8f9d..e72a935f0f6f29b406d53faeecc43651451dad78 100644 --- a/api/@ohos.sensor.d.ts +++ b/api/@ohos.sensor.d.ts @@ -31,7 +31,8 @@ import { AsyncCallback, Callback } from './@ohos.base'; * @namespace sensor * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace sensor { /** @@ -237,7 +238,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @systemapi * @since 10 @@ -249,7 +251,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @throws { BusinessError } 202 - Permission check failed. A non-system application uses the system API. * @syscap SystemCapability.Sensors.Sensor * @systemapi @@ -264,7 +267,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @systemapi * @since 10 @@ -276,7 +280,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @throws { BusinessError } 202 - Permission check failed. A non-system application uses the system API. * @syscap SystemCapability.Sensors.Sensor * @systemapi @@ -293,7 +298,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -306,7 +312,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @atomicservice * @since 11 @@ -323,7 +330,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -337,7 +345,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -350,7 +359,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -364,7 +374,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -377,7 +388,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -393,7 +405,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -406,7 +419,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @atomicservice * @since 11 @@ -423,7 +437,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -437,7 +452,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -452,7 +468,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -466,7 +483,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -482,7 +500,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -496,7 +515,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -511,7 +531,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -525,7 +546,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -536,7 +558,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @atomicservice * @since 11 @@ -544,6 +567,22 @@ declare namespace sensor { function on(type: SensorId.ORIENTATION, callback: Callback<OrientationResponse>, options?: Options): void; + /** + * Subscribe to orientation sensor data. + * @param { 'ORIENTATION' } type - Indicate the sensor type to listen for, {@code SensorId.ORIENTATION}. + * @param { Callback<OrientationResponse> } callback - callback orientation data. + * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br> 2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 14500101 - Service exception. + * @syscap SystemCapability.Sensors.Sensor + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + function on(type: 'ORIENTATION', callback: Callback<OrientationResponse>, + options?: Options): void; + /** * Subscribe to pedometer sensor data. * @permission ohos.permission.ACTIVITY_MOTION @@ -553,7 +592,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -568,7 +608,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -582,7 +623,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -595,7 +637,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -609,7 +652,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -623,7 +667,8 @@ declare namespace sensor { * @param { Options } [options] - Optional parameters specifying the interval at which sensor data is reported, {@code Options}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -638,7 +683,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -652,7 +698,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -664,7 +711,8 @@ declare namespace sensor { * @param { Callback<LightResponse> } callback - callback ambient data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -676,7 +724,8 @@ declare namespace sensor { * @param { Callback<AmbientTemperatureResponse> } callback - callback temperature data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -688,7 +737,8 @@ declare namespace sensor { * @param { Callback<BarometerResponse> } callback - callback barometer data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -700,7 +750,8 @@ declare namespace sensor { * @param { Callback<GravityResponse> } callback - callback gravity data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -714,7 +765,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -728,7 +780,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -740,7 +793,8 @@ declare namespace sensor { * @param { Callback<HallResponse> } callback - callback uncalibrated gyroscope data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -754,7 +808,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -766,7 +821,8 @@ declare namespace sensor { * @param { Callback<HumidityResponse> } callback - callback humidity data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -780,7 +836,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -792,7 +849,8 @@ declare namespace sensor { * @param { Callback<MagneticFieldResponse> } callback - callback magnetic field data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -805,7 +863,8 @@ declare namespace sensor { * @param { Callback<MagneticFieldUncalibratedResponse> } callback - callback uncalibrated magnetic field data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -817,7 +876,8 @@ declare namespace sensor { * @param { Callback<OrientationResponse> } callback - callback orientation data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -831,7 +891,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -845,7 +906,8 @@ declare namespace sensor { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -857,7 +919,8 @@ declare namespace sensor { * @param { Callback<ProximityResponse> } callback - callback proximity data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -869,7 +932,8 @@ declare namespace sensor { * @param { Callback<RotationVectorResponse> } callback - callback rotation vector data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -881,7 +945,8 @@ declare namespace sensor { * @param { Callback<SignificantMotionResponse> } callback - callback significant motion data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -893,7 +958,8 @@ declare namespace sensor { * @param { Callback<WearDetectionResponse> } callback - callback wear detection data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * * @syscap SystemCapability.Sensors.Sensor * @since 9 @@ -923,6 +989,20 @@ declare namespace sensor { */ function off(type: SensorId.COLOR, callback?: Callback<ColorResponse>): void; + /** + * Unsubscribe to color sensor data. + * @param { SensorId.COLOR } type - Indicate the sensor type to listen for, {@code SensorId.COLOR}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<ColorResponse> } [callback] - callback color data. + * @throws { BusinessError } 202 - Permission check failed. A non-system application uses the system API. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @systemapi + * @since 19 + */ + function off(type: SensorId.COLOR, sensorInfoParam?: SensorInfoParam, callback?: Callback<ColorResponse>): void; + /** * Unsubscribe to sar sensor data. * @param { SensorId.SAR } type - Indicate the sensor type to listen for, {@code SensorId.SAR}. @@ -946,6 +1026,20 @@ declare namespace sensor { */ function off(type: SensorId.SAR, callback?: Callback<SarResponse>): void; + /** + * Unsubscribe to sar sensor data. + * @param { SensorId.SAR } type - Indicate the sensor type to listen for, {@code SensorId.SAR}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<SarResponse> } [callback] - callback sar data. + * @throws { BusinessError } 202 - Permission check failed. A non-system application uses the system API. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @systemapi + * @since 19 + */ + function off(type: SensorId.SAR, sensorInfoParam?: SensorInfoParam, callback?: Callback<SarResponse>): void; + /** * Unsubscribe to accelerometer sensor data. * @permission ohos.permission.ACCELEROMETER @@ -971,6 +1065,21 @@ declare namespace sensor { */ function off(type: SensorId.ACCELEROMETER, callback?: Callback<AccelerometerResponse>): void; + /** + * Unsubscribe to accelerometer sensor data. + * @permission ohos.permission.ACCELEROMETER + * @param { SensorId.ACCELEROMETER } type - Indicate the sensor type to listen for, {@code SensorId.ACCELEROMETER}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<AccelerometerResponse> } [callback] - callback accelerometer data. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @atomicservice + * @since 19 + */ + function off(type: SensorId.ACCELEROMETER, sensorInfoParam?: SensorInfoParam, callback?: Callback<AccelerometerResponse>): void; + /** * Unsubscribe to uncalibrated accelerometer sensor data. * @permission ohos.permission.ACCELEROMETER @@ -985,6 +1094,21 @@ declare namespace sensor { */ function off(type: SensorId.ACCELEROMETER_UNCALIBRATED, callback?: Callback<AccelerometerUncalibratedResponse>): void; + /** + * Unsubscribe to uncalibrated accelerometer sensor data. + * @permission ohos.permission.ACCELEROMETER + * @param { SensorId.ACCELEROMETER_UNCALIBRATED } type - Indicate the sensor type to listen for, + * {@code SensorId.ACCELEROMETER_UNCALIBRATED}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<AccelerometerUncalibratedResponse> } [callback] - callback uncalibrated accelerometer data. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.ACCELEROMETER_UNCALIBRATED, sensorInfoParam?: SensorInfoParam, callback?: Callback<AccelerometerUncalibratedResponse>): void; + /** * Unsubscribe to ambient light sensor data. * @param { SensorId.AMBIENT_LIGHT } type - Indicate the sensor type to listen for, {@code SensorId.AMBIENT_LIGHT}. @@ -996,6 +1120,18 @@ declare namespace sensor { */ function off(type: SensorId.AMBIENT_LIGHT, callback?: Callback<LightResponse>): void; + /** + * Unsubscribe to ambient light sensor data. + * @param { SensorId.AMBIENT_LIGHT } type - Indicate the sensor type to listen for, {@code SensorId.AMBIENT_LIGHT}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<LightResponse> } [callback] - callback ambient data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.AMBIENT_LIGHT, sensorInfoParam?: SensorInfoParam, callback?: Callback<LightResponse>): void; + /** * Unsubscribe to ambient temperature sensor data. * @param { SensorId.AMBIENT_TEMPERATURE } type - Indicate the sensor type to listen for, {@code SensorId.AMBIENT_TEMPERATURE}. @@ -1007,6 +1143,18 @@ declare namespace sensor { */ function off(type: SensorId.AMBIENT_TEMPERATURE, callback?: Callback<AmbientTemperatureResponse>): void; + /** + * Unsubscribe to ambient temperature sensor data. + * @param { SensorId.AMBIENT_TEMPERATURE } type - Indicate the sensor type to listen for, {@code SensorId.AMBIENT_TEMPERATURE}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<AmbientTemperatureResponse> } [callback] - callback temperature data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.AMBIENT_TEMPERATURE, sensorInfoParam?: SensorInfoParam, callback?: Callback<AmbientTemperatureResponse>): void; + /** * Unsubscribe to barometer sensor data. * @param { SensorId.BAROMETER } type - Indicate the sensor type to listen for, {@code SensorId.BAROMETER}. @@ -1018,6 +1166,18 @@ declare namespace sensor { */ function off(type: SensorId.BAROMETER, callback?: Callback<BarometerResponse>): void; + /** + * Unsubscribe to barometer sensor data. + * @param { SensorId.BAROMETER } type - Indicate the sensor type to listen for, {@code SensorId.BAROMETER}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<BarometerResponse> } [callback] - callback barometer data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.BAROMETER, sensorInfoParam?: SensorInfoParam, callback?: Callback<BarometerResponse>): void; + /** * Unsubscribe to gravity sensor data. * @param { SensorId.GRAVITY } type - Indicate the sensor type to listen for, {@code SensorId.GRAVITY}. @@ -1029,6 +1189,18 @@ declare namespace sensor { */ function off(type: SensorId.GRAVITY, callback?: Callback<GravityResponse>): void; + /** + * Unsubscribe to gravity sensor data. + * @param { SensorId.GRAVITY } type - Indicate the sensor type to listen for, {@code SensorId.GRAVITY}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<GravityResponse> } [callback] - callback gravity data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.GRAVITY, sensorInfoParam?: SensorInfoParam, callback?: Callback<GravityResponse>): void; + /** * Unsubscribe to gyroscope sensor data. * @permission ohos.permission.GYROSCOPE @@ -1054,6 +1226,21 @@ declare namespace sensor { */ function off(type: SensorId.GYROSCOPE, callback?: Callback<GyroscopeResponse>): void; + /** + * Unsubscribe to gyroscope sensor data. + * @permission ohos.permission.GYROSCOPE + * @param { SensorId.GYROSCOPE } type - Indicate the sensor type to listen for, {@code SensorId.GYROSCOPE}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<GyroscopeResponse> } [callback] - callback gyroscope data. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @atomicservice + * @since 19 + */ + function off(type: SensorId.GYROSCOPE, sensorInfoParam?: SensorInfoParam, callback?: Callback<GyroscopeResponse>): void; + /** * Unsubscribe to uncalibrated gyroscope sensor data. * @permission ohos.permission.GYROSCOPE @@ -1067,6 +1254,20 @@ declare namespace sensor { */ function off(type: SensorId.GYROSCOPE_UNCALIBRATED, callback?: Callback<GyroscopeUncalibratedResponse>): void; + /** + * Unsubscribe to uncalibrated gyroscope sensor data. + * @permission ohos.permission.GYROSCOPE + * @param { SensorId.GYROSCOPE_UNCALIBRATED } type - Indicate the sensor type to listen for, {@code SensorId.GYROSCOPE_UNCALIBRATED}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<GyroscopeUncalibratedResponse> } [callback] - callback uncalibrated gyroscope data. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.GYROSCOPE_UNCALIBRATED, sensorInfoParam?: SensorInfoParam, callback?: Callback<GyroscopeUncalibratedResponse>): void; + /** * Unsubscribe to hall sensor data. * @param { SensorId.HALL } type - Indicate the sensor type to listen for, {@code SensorId.HALL}. @@ -1078,6 +1279,18 @@ declare namespace sensor { */ function off(type: SensorId.HALL, callback?: Callback<HallResponse>): void; + /** + * Unsubscribe to hall sensor data. + * @param { SensorId.HALL } type - Indicate the sensor type to listen for, {@code SensorId.HALL}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<HallResponse> } [callback] - callback uncalibrated gyroscope data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.HALL, sensorInfoParam?: SensorInfoParam, callback?: Callback<HallResponse>): void; + /** * Unsubscribe to heart rate sensor data. * @permission ohos.permission.READ_HEALTH_DATA @@ -1091,6 +1304,20 @@ declare namespace sensor { */ function off(type: SensorId.HEART_RATE, callback?: Callback<HeartRateResponse>): void; + /** + * Unsubscribe to heart rate sensor data. + * @permission ohos.permission.READ_HEALTH_DATA + * @param { SensorId.HEART_RATE } type - Indicate the sensor type to listen for, {@code SensorId.HEART_RATE}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<HeartRateResponse> } [callback] - callback heart rate data. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.HEART_RATE, sensorInfoParam?: SensorInfoParam, callback?: Callback<HeartRateResponse>): void; + /** * Unsubscribe to humidity sensor data. * @param { SensorId.HUMIDITY } type - Indicate the sensor type to listen for, {@code SensorId.HUMIDITY}. @@ -1102,6 +1329,18 @@ declare namespace sensor { */ function off(type: SensorId.HUMIDITY, callback?: Callback<HumidityResponse>): void; + /** + * Unsubscribe to humidity sensor data. + * @param { SensorId.HUMIDITY } type - Indicate the sensor type to listen for, {@code SensorId.HUMIDITY}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<HumidityResponse> } [callback] - callback humidity data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.HUMIDITY, sensorInfoParam?: SensorInfoParam, callback?: Callback<HumidityResponse>): void; + /** * Unsubscribe to linear acceleration sensor data. * @permission ohos.permission.ACCELEROMETER @@ -1115,6 +1354,20 @@ declare namespace sensor { */ function off(type: SensorId.LINEAR_ACCELEROMETER, callback?: Callback<LinearAccelerometerResponse>): void; + /** + * Unsubscribe to linear acceleration sensor data. + * @permission ohos.permission.ACCELEROMETER + * @param { SensorId.LINEAR_ACCELEROMETER } type - Indicate the sensor type to listen for, {@code SensorId.LINEAR_ACCELEROMETER}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<LinearAccelerometerResponse> } [callback] - callback linear acceleration data. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.LINEAR_ACCELEROMETER, sensorInfoParam?: SensorInfoParam, callback?: Callback<LinearAccelerometerResponse>): void; + /** * Unsubscribe to magnetic field sensor data. * @param { SensorId.MAGNETIC_FIELD } type - Indicate the sensor type to listen for, {@code SensorId.MAGNETIC_FIELD}. @@ -1126,6 +1379,18 @@ declare namespace sensor { */ function off(type: SensorId.MAGNETIC_FIELD, callback?: Callback<MagneticFieldResponse>): void; + /** + * Unsubscribe to magnetic field sensor data. + * @param { SensorId.MAGNETIC_FIELD } type - Indicate the sensor type to listen for, {@code SensorId.MAGNETIC_FIELD}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<MagneticFieldResponse> } [callback] - callback magnetic field data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.MAGNETIC_FIELD, sensorInfoParam?: SensorInfoParam, callback?: Callback<MagneticFieldResponse>): void; + /** * Unsubscribe to uncalibrated magnetic field sensor data. * @param { SensorId.MAGNETIC_FIELD_UNCALIBRATED } type - Indicate the sensor type to listen for, @@ -1138,6 +1403,19 @@ declare namespace sensor { */ function off(type: SensorId.MAGNETIC_FIELD_UNCALIBRATED, callback?: Callback<MagneticFieldUncalibratedResponse>): void; + /** + * Unsubscribe to uncalibrated magnetic field sensor data. + * @param { SensorId.MAGNETIC_FIELD_UNCALIBRATED } type - Indicate the sensor type to listen for, + * {@code SensorId.MAGNETIC_FIELD_UNCALIBRATED}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<MagneticFieldUncalibratedResponse> } [callback] - callback uncalibrated magnetic field data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.MAGNETIC_FIELD_UNCALIBRATED, sensorInfoParam?: SensorInfoParam, callback?: Callback<MagneticFieldUncalibratedResponse>): void; + /** * Unsubscribe to orientation sensor data. * @param { SensorId.ORIENTATION } type - Indicate the sensor type to listen for, {@code SensorId.ORIENTATION}. @@ -1159,6 +1437,32 @@ declare namespace sensor { */ function off(type: SensorId.ORIENTATION, callback?: Callback<OrientationResponse>): void; + /** + * Unsubscribe to orientation sensor data. + * @param { SensorId.ORIENTATION } type - Indicate the sensor type to listen for, {@code SensorId.ORIENTATION}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<OrientationResponse> } [callback] - callback orientation data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @atomicservice + * @since 19 + */ + function off(type: SensorId.ORIENTATION, sensorInfoParam?: SensorInfoParam, callback?: Callback<OrientationResponse>): void; + + /** + * Unsubscribe to orientation sensor data. + * @param { 'ORIENTATION' } type - Indicate the sensor type to listen for, {@code SensorId.ORIENTATION}. + * @param { Callback<OrientationResponse> } callback - callback orientation data. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br> 2. Incorrect parameter types; 3. Parameter verification failed. + * @syscap SystemCapability.Sensors.Sensor + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + function off(type: 'ORIENTATION', callback?: Callback<OrientationResponse>): void; + /** * Unsubscribe to pedometer sensor data. * @permission ohos.permission.ACTIVITY_MOTION @@ -1172,6 +1476,20 @@ declare namespace sensor { */ function off(type: SensorId.PEDOMETER, callback?: Callback<PedometerResponse>): void; + /** + * Unsubscribe to pedometer sensor data. + * @permission ohos.permission.ACTIVITY_MOTION + * @param { SensorId.PEDOMETER } type - Indicate the sensor type to listen for, {@code SensorId.PEDOMETER}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<PedometerResponse> } [callback] - callback pedometer data. + * @throws { BusinessError } 201 - Permission denied + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.PEDOMETER, sensorInfoParam?: SensorInfoParam, callback?: Callback<PedometerResponse>): void; + /** * Unsubscribe to pedometer detection sensor data. * @permission ohos.permission.ACTIVITY_MOTION @@ -1185,6 +1503,20 @@ declare namespace sensor { */ function off(type: SensorId.PEDOMETER_DETECTION, callback?: Callback<PedometerDetectionResponse>): void; + /** + * Unsubscribe to pedometer detection sensor data. + * @permission ohos.permission.ACTIVITY_MOTION + * @param { SensorId.PEDOMETER_DETECTION } type - Indicate the sensor type to listen for, {@code SensorId.PEDOMETER_DETECTION}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<PedometerDetectionResponse> } [callback] - callback pedometer detection data. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.PEDOMETER_DETECTION, sensorInfoParam?: SensorInfoParam, callback?: Callback<PedometerDetectionResponse>): void; + /** * Unsubscribe to proximity sensor data. * @param { SensorId.PROXIMITY } type - Indicate the sensor type to listen for, {@code SensorId.PROXIMITY}. @@ -1195,6 +1527,18 @@ declare namespace sensor { * @since 9 */ function off(type: SensorId.PROXIMITY, callback?: Callback<ProximityResponse>): void; + + /** + * Unsubscribe to proximity sensor data. + * @param { SensorId.PROXIMITY } type - Indicate the sensor type to listen for, {@code SensorId.PROXIMITY}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<ProximityResponse> } [callback] - callback proximity data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.PROXIMITY, sensorInfoParam?: SensorInfoParam, callback?: Callback<ProximityResponse>): void; /** * Unsubscribe to rotation vector sensor data. @@ -1207,6 +1551,18 @@ declare namespace sensor { */ function off(type: SensorId.ROTATION_VECTOR, callback?: Callback<RotationVectorResponse>): void; + /** + * Unsubscribe to rotation vector sensor data. + * @param { SensorId.ROTATION_VECTOR } type - Indicate the sensor type to listen for, {@code SensorId.ROTATION_VECTOR}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<RotationVectorResponse> } [callback] - callback rotation vector data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.ROTATION_VECTOR, sensorInfoParam?: SensorInfoParam, callback?: Callback<RotationVectorResponse>): void; + /** * Unsubscribe to significant motion sensor data. * @param { SensorId.SIGNIFICANT_MOTION } type - Indicate the sensor type to listen for, {@code SensorId.SIGNIFICANT_MOTION}. @@ -1218,6 +1574,18 @@ declare namespace sensor { */ function off(type: SensorId.SIGNIFICANT_MOTION, callback?: Callback<SignificantMotionResponse>): void; + /** + * Unsubscribe to significant motion sensor data. + * @param { SensorId.SIGNIFICANT_MOTION } type - Indicate the sensor type to listen for, {@code SensorId.SIGNIFICANT_MOTION}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<SignificantMotionResponse> } [callback] - callback significant motion data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.SIGNIFICANT_MOTION, sensorInfoParam?: SensorInfoParam, callback?: Callback<SignificantMotionResponse>): void; + /** * Unsubscribe to wear detection sensor data. * @param { SensorId.WEAR_DETECTION } type - Indicate the sensor type to listen for, {@code SensorId.WEAR_DETECTION}. @@ -1229,6 +1597,18 @@ declare namespace sensor { */ function off(type: SensorId.WEAR_DETECTION, callback?: Callback<WearDetectionResponse>): void; + /** + * Unsubscribe to wear detection sensor data. + * @param { SensorId.WEAR_DETECTION } type - Indicate the sensor type to listen for, {@code SensorId.WEAR_DETECTION}. + * @param { SensorInfoParam } [sensorInfoParam] - Parameters of sensor on the device. + * @param { Callback<WearDetectionResponse> } [callback] - callback wear detection data. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: SensorId.WEAR_DETECTION, sensorInfoParam?: SensorInfoParam, callback?: Callback<WearDetectionResponse>): void; + /** * Subscribe to sensor data, If the API is called multiple times, the last call takes effect. * @permission ohos.permission.ACCELEROMETER @@ -2137,6 +2517,39 @@ declare namespace sensor { * @since 9 */ power:number; + + /** + * Index of sensors of the same type. + * @type { ?number } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + sensorIndex?: number; + + /** + * Device ID which the sensors attached. + * @type { ?number } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + deviceId?: number; + + /** + * Name of the device. + * + * @type { ?string } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + deviceName?: string; + + /** + * Is the device a local device or an external device + * @type { ?boolean } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + isLocalSensor?: boolean; } /** @@ -2145,7 +2558,8 @@ declare namespace sensor { * @param { AsyncCallback<Sensor> } callback - callback sensor info. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2155,7 +2569,8 @@ declare namespace sensor { * @param { AsyncCallback<Sensor> } callback - callback sensor info. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @throws { BusinessError } 14500102 - The sensor is not supported by the device. * @syscap SystemCapability.Sensors.Sensor * @since 12 @@ -2168,7 +2583,8 @@ declare namespace sensor { * @returns { Promise<Sensor> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2178,7 +2594,8 @@ declare namespace sensor { * @returns { Promise<Sensor> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @throws { BusinessError } 14500102 - The sensor is not supported by the device. * @syscap SystemCapability.Sensors.Sensor * @since 12 @@ -2191,19 +2608,31 @@ declare namespace sensor { * @returns { Sensor } Returns sensor information. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @throws { BusinessError } 14500102 - The sensor is not supported by the device. * @syscap SystemCapability.Sensors.Sensor * @since 12 */ function getSingleSensorSync(type: SensorId): Sensor; + /** + * Synchronously obtains the sensor information of the specified device and type. + * @param { SensorId } type - Indicate the sensor type, {@code SensorId}. + * @param { number } [deviceId] - Device ID which the sensors attached. If not specified, the local device will be used. + * @returns { Array<Sensor> } Returns sensor information. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function getSingleSensorByDeviceSync(type: SensorId, deviceId?: number): Array<Sensor>; + /** * Obtains all sensor information on the device. * @param { AsyncCallback<Array<Sensor>> } callback - callback sensor list. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2214,7 +2643,8 @@ declare namespace sensor { * @returns { Promise<Array<Sensor>> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2223,12 +2653,22 @@ declare namespace sensor { /** * Synchronously obtains all sensor information on the device. * @returns { Array<Sensor> } Return a list of sensor information. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 12 */ function getSensorListSync(): Array<Sensor>; + /** + * Synchronously obtains all sensor information on the device. + * @param { number } [deviceId] - Device ID which the sensors attached. If not specified, the local device will be used. + * @returns { Array<Sensor> } Return a list of sensor information. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function getSensorListByDeviceSync(deviceId?: number): Array<Sensor>; + /** * Indicates geomagnetic field data. * @typedef GeomagneticResponse @@ -2359,7 +2799,8 @@ declare namespace sensor { * @param { AsyncCallback<GeomagneticResponse> } callback - callback geomagnetic field. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2373,7 +2814,8 @@ declare namespace sensor { * @returns { Promise<GeomagneticResponse> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2410,7 +2852,8 @@ declare namespace sensor { * @param { AsyncCallback<number> } callback - callback device altitude. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2423,7 +2866,8 @@ declare namespace sensor { * @returns { Promise<number> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2457,7 +2901,8 @@ declare namespace sensor { * @param { AsyncCallback<number> } callback - callback inclination in radians. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2469,7 +2914,8 @@ declare namespace sensor { * @returns { Promise<number> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2507,7 +2953,8 @@ declare namespace sensor { * @param { AsyncCallback<Array<number>> } callback - callback angle variation. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2521,7 +2968,8 @@ declare namespace sensor { * @returns { Promise<Array<number>> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2555,7 +3003,8 @@ declare namespace sensor { * @param { AsyncCallback<Array<number>> } callback - callback rotation matrix. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2567,7 +3016,8 @@ declare namespace sensor { * @returns { Promise<Array<number>> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2627,7 +3077,8 @@ declare namespace sensor { * @param { AsyncCallback<Array<number>> } callback - callback rotation matrix. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2641,7 +3092,8 @@ declare namespace sensor { * @returns { Promise<Array<number>> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2675,7 +3127,8 @@ declare namespace sensor { * @param { AsyncCallback<Array<number>> } callback - callback a normalized quaternion. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2687,7 +3140,8 @@ declare namespace sensor { * @returns { Promise<Array<number>> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2721,7 +3175,8 @@ declare namespace sensor { * @param { AsyncCallback<Array<number>> } callback - callback the angle of rotation around the z, x, y axis. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2733,7 +3188,8 @@ declare namespace sensor { * @returns { Promise<Array<number>> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2794,7 +3250,8 @@ declare namespace sensor { * @param { AsyncCallback<RotationMatrixResponse> } callback - callback rotation matrix and inclination matrix. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2807,7 +3264,8 @@ declare namespace sensor { * @returns { Promise<RotationMatrixResponse> } Promise used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 14500101 - Service exception. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. * @syscap SystemCapability.Sensors.Sensor * @since 9 */ @@ -2824,7 +3282,8 @@ declare namespace sensor { * @typedef Options * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Options { /** @@ -2838,9 +3297,18 @@ declare namespace sensor { * @type { ?(number | SensorFrequency) } * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interval?: number | SensorFrequency; + + /** + * Parameters of sensor on the device. + * @type { ?SensorInfoParam } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + sensorInfoParam?: SensorInfoParam; } /** @@ -2848,7 +3316,8 @@ declare namespace sensor { * @typedef {'game' | 'ui' | 'normal'} * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ type SensorFrequency = 'game' | 'ui' | 'normal'; @@ -3035,14 +3504,16 @@ declare namespace sensor { * @enum { number } * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ enum SensorAccuracy { /** * The sensor data is unreliable. It is possible that the sensor does not contact with the device to measure. * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ACCURACY_UNRELIABLE = 0, @@ -3050,7 +3521,8 @@ declare namespace sensor { * The sensor data is at a low accuracy level. The data must be calibrated based on the environment before being used. * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ACCURACY_LOW = 1, @@ -3058,7 +3530,8 @@ declare namespace sensor { * The sensor data is at a medium accuracy level. You are advised to calibrate the data based on the environment before using it. * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ACCURACY_MEDIUM = 2, @@ -3066,7 +3539,8 @@ declare namespace sensor { * The sensor data is at a high accuracy level. The data can be used directly. * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ACCURACY_HIGH = 3 } @@ -3082,7 +3556,8 @@ declare namespace sensor { * @typedef Response * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Response { /** @@ -3096,7 +3571,8 @@ declare namespace sensor { * @type { number } * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ timestamp: number; @@ -3105,7 +3581,8 @@ declare namespace sensor { * @type { SensorAccuracy } * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ accuracy: SensorAccuracy; } @@ -3304,7 +3781,8 @@ declare namespace sensor { * @typedef OrientationResponse * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface OrientationResponse extends Response { /** @@ -3318,7 +3796,8 @@ declare namespace sensor { * @type { number } * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ alpha: number; @@ -3333,7 +3812,8 @@ declare namespace sensor { * @type { number } * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ beta: number; @@ -3348,7 +3828,8 @@ declare namespace sensor { * @type { number } * @syscap SystemCapability.Sensors.Sensor * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ gamma: number; } @@ -3835,6 +4316,112 @@ declare namespace sensor { */ absorptionRatio: number; } + + /** + * Start listening on device status changes. + * @param { 'sensorStatusChange' } type - event of the listening. + * @param { Callback<SensorStatusEvent> } callback - callback of sensor status. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function on(type: 'sensorStatusChange', callback: Callback<SensorStatusEvent>): void; + + /** + * Stop listening on device status changes. + * @param { 'sensorStatusChange' } type - event of the listening + * @param { Callback<SensorStatusEvent> } [callback] - callback of sensor status. + * @throws { BusinessError } 14500101 - Service exception. Possible causes: 1. Sensor hdf service exception; + * <br> 2. Sensor service ipc exception;3. Sensor data channel exception. + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + function off(type: 'sensorStatusChange', callback?: Callback<SensorStatusEvent>): void; + + /** + * Defines the data structure of the device status change event. + * @typedef SensorStatusEvent + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + interface SensorStatusEvent { + /** + * Indicates the timestamp of the status change. + * @type { number } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + timestamp: number; + + /** + * Sensor type id. + * @type { number } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + sensorId: number; + + /** + * Index of sensors of the same type. + * @type { number } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + sensorIndex: number; + + /** + * Whether the device is online, true indicates online, false indicates offline. + * + * @type { boolean } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + isSensorOnline: boolean; + + /** + * Device ID. + * @type { number } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + deviceId: number; + + /** + * Device name. + * @type { string } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + deviceName: string; + } + + /** + * Parameters of sensor on the device. + * @typedef SensorInfoParam + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + interface SensorInfoParam { + /** + * Unique identifier for the device that contains one or multiple sensors. + * By default, deviceId may default to querying or controlling the local default sensor. + * + * @type { ?number } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + deviceId?: number; + + /** + * Index of sensors of the same type. By default, it controls default sensors of the sensor type. + * @type { ?number } + * @syscap SystemCapability.Sensors.Sensor + * @since 19 + */ + sensorIndex?: number; + } + } export default sensor; \ No newline at end of file diff --git a/api/@ohos.settings.d.ts b/api/@ohos.settings.d.ts index 84a80429cbf74f008ddec3d86508c6d55ce50841..a6324e71d89a4b097a012890d587e355aca7f370 100644 --- a/api/@ohos.settings.d.ts +++ b/api/@ohos.settings.d.ts @@ -1076,6 +1076,7 @@ declare namespace settings { /** * Get value from settingsdata + * [USER_SECURE] domain need ohos.permission.MANAGE_SECURE_SETTINGS permission. * * @param { Context } context - Indicates the Context used to access the database. * @param { string } name - Indicates the name of the character string. @@ -1125,7 +1126,7 @@ declare namespace settings { /** * Set settingsdata value. * - * @permission ohos.permission.MANAGE_SECURE_SETTINGS + * @permission ohos.permission.MANAGE_SETTINGS * @param { Context } context - Indicates Context or dataAbilityHelper instance. * @param { string } name - Indicates the name of the character string. * @param { string } value - Indicates the value of the character string. @@ -1139,7 +1140,7 @@ declare namespace settings { /** * Set settingsdata value. * - * @permission ohos.permission.MANAGE_SECURE_SETTINGS + * @permission ohos.permission.MANAGE_SETTINGS * @param { Context } context - Indicates Context or dataAbilityHelper instance. * @param { string } name - Indicates the name of the character string. * @param { string } value - Indicates the value of the character string. @@ -1152,8 +1153,10 @@ declare namespace settings { /** * Set settingsdata value. + * [DEVICE_SHARED, USER_PROPERTY] domain need ohos.permission.MANAGE_SETTINGS permission. + * [USER_SECURE] domain need ohos.permission.MANAGE_SECURE_SETTINGS permission. * - * @permission ohos.permission.MANAGE_SECURE_SETTINGS + * @permission ohos.permission.MANAGE_SECURE_SETTINGS or ohos.permission.MANAGE_SETTINGS * @param { Context } context - Indicates Context instance. * @param { string } name - Indicates the name of the character string. * @param { string } value - Indicates the value of the character string. @@ -1246,7 +1249,8 @@ declare namespace settings { function getValueSync(context: Context, name: string, defValue: string): string; /** - * Get value from settingsdata(synchronous method) + * Get value from settingsdata(synchronous method). + * [USER_SECURE] domain need ohos.permission.MANAGE_SECURE_SETTINGS permission. * * @param { Context } context - Indicates Context instance * @param { string } name - Indicates the name of the character string. @@ -1278,7 +1282,7 @@ declare namespace settings { /** * Set settingsdata value(synchronous method) * - * @permission ohos.permission.MANAGE_SECURE_SETTINGS + * @permission ohos.permission.MANAGE_SETTINGS * @param { Context } context - Indicates Context or dataAbilityHelper instance. * @param { string } name - Indicates the name of the character string. * @param { string } value - Indicates the value of the character string. @@ -1290,9 +1294,11 @@ declare namespace settings { function setValueSync(context: Context, name: string, value: string): boolean; /** - * Set settingsdata value(synchronous method) + * Set settingsdata value(synchronous method). + * [DEVICE_SHARED, USER_PROPERTY] domain need ohos.permission.MANAGE_SETTINGS permission. + * [USER_SECURE] domain need ohos.permission.MANAGE_SECURE_SETTINGS permission. * - * @permission ohos.permission.MANAGE_SECURE_SETTINGS + * @permission ohos.permission.MANAGE_SECURE_SETTINGS or ohos.permission.MANAGE_SETTINGS * @param { Context } context - Indicates Context instance. * @param { string } name - Indicates the name of the character string. * @param { string } value - Indicates the value of the character string. @@ -1307,6 +1313,7 @@ declare namespace settings { /** * Monitor registration key(synchronous method) + * [USER_SECURE] domain need ohos.permission.MANAGE_SECURE_SETTINGS permission. * * @param { Context } context - Indicates Context instance. * @param { string } name - Indicates the name of the character string. @@ -1321,6 +1328,7 @@ declare namespace settings { /** * Monitor unregister key(synchronous method) + * [USER_SECURE] domain need ohos.permission.MANAGE_SECURE_SETTINGS permission. * * @param { Context } context - Indicates Context instance. * @param { string } name - Indicates the name of the character string. diff --git a/api/@ohos.systemDateTime.d.ts b/api/@ohos.systemDateTime.d.ts index bc106dd6d3b3af6f1c389a85f5d1c8ab70b4e05c..330da468cbd6affcbda09bc97fd1040f70886c81 100644 --- a/api/@ohos.systemDateTime.d.ts +++ b/api/@ohos.systemDateTime.d.ts @@ -33,7 +33,8 @@ import { AsyncCallback } from './@ohos.base'; * @namespace systemDateTime * @syscap SystemCapability.MiscServices.Time * @crossplatform - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace systemDateTime { /** @@ -115,7 +116,8 @@ declare namespace systemDateTime { * @returns { number } The timestamp returned of getTime. * @syscap SystemCapability.MiscServices.Time * @crossplatform - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ function getTime(isNanoseconds?: boolean): number; @@ -381,7 +383,8 @@ declare namespace systemDateTime { * @param { AsyncCallback<string> } callback - The callback of getTimezone * @syscap SystemCapability.MiscServices.Time * @crossplatform - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ function getTimezone(callback: AsyncCallback<string>): void; @@ -406,7 +409,8 @@ declare namespace systemDateTime { * @returns { Promise<string> } The promise returned by the function * @syscap SystemCapability.MiscServices.Time * @crossplatform - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ function getTimezone(): Promise<string>; @@ -423,7 +427,8 @@ declare namespace systemDateTime { * @returns { string } The timezone returned of getTimezoneSync. * @syscap SystemCapability.MiscServices.Time * @crossplatform - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ function getTimezoneSync(): string; diff --git a/api/@ohos.systemParameterEnhance.d.ts b/api/@ohos.systemParameterEnhance.d.ts index f9dab8649c18ee11a3bd4a97d2c1e741fee79d67..44b2b5f99c2e4017e98bade87c56f7a39ceccd20 100644 --- a/api/@ohos.systemParameterEnhance.d.ts +++ b/api/@ohos.systemParameterEnhance.d.ts @@ -16,6 +16,7 @@ /** * @file * @kit BasicServicesKit + * @arkts 1.1&1.2 */ import { AsyncCallback, BusinessError } from './@ohos.base'; diff --git a/api/@ohos.taskpool.d.ts b/api/@ohos.taskpool.d.ts index f7307bffad368c53632879260382b5a6d43c902e..e6195ee409cb1e78c0daf435cff19d16ebf21e4f 100644 --- a/api/@ohos.taskpool.d.ts +++ b/api/@ohos.taskpool.d.ts @@ -59,7 +59,7 @@ declare namespace taskpool { * @since 10 */ /** - * The Priority defines the task priority. + * Enumerates the priorities available for created tasks. * * @enum { number } Priority * @syscap SystemCapability.Utils.Lang @@ -82,7 +82,7 @@ declare namespace taskpool { * @since 10 */ /** - * set task priority to high. + * The task has a high priority. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -105,7 +105,7 @@ declare namespace taskpool { * @since 10 */ /** - * set task priority to medium. + * The task has a medium priority. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -128,7 +128,7 @@ declare namespace taskpool { * @since 10 */ /** - * set task priority to low. + * The task has a low priority. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -137,7 +137,7 @@ declare namespace taskpool { */ LOW = 2, /** - * set task priority to idle. + * The task is a background task. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -148,7 +148,7 @@ declare namespace taskpool { } /** - * Indicates the type of callback to be registered. + * Describes a callback function. * * @typedef { function } CallbackFunction * @syscap SystemCapability.Utils.Lang @@ -159,10 +159,10 @@ declare namespace taskpool { type CallbackFunction = () => void; /** - * Indicates the type of callback with error code to be registered. + * Describes a callback function with an error message. * * @typedef { function } CallbackFunctionWithError - * @param { Error } e - the error message. + * @param { Error } e - Error message. * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice @@ -184,7 +184,9 @@ declare namespace taskpool { * @since 10 */ /** - * The Task class provides an interface to create a task. + * Implements a task. Before calling any APIs in Task, you must use constructor to create a Task instance. + * A task can be executed for multiple times, placed in a task group, serial queue, or asynchronous queue for execution, + * or added with dependencies for execution. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -214,10 +216,12 @@ declare namespace taskpool { * @since 10 */ /** - * Create a Task instance. + * A constructor used to create a Task instance. * - * @param { Function } func - func func Concurrent function to execute in taskpool. - * @param { Object[] } args - args args The concurrent function arguments. + * @param { Function } func - Function to be executed. The function must be decorated using @Concurrent. + * For details about the supported return value types of the function, see Sequenceable Data Types. + * @param { Object[] } args - Arguments of the function. For details about the supported parameter types, + * see Sequenceable Data Types. The default value is undefined. * @throws { BusinessError } 401 - The input parameters are invalid. * @throws { BusinessError } 10200014 - The function is not marked as concurrent. * @syscap SystemCapability.Utils.Lang @@ -228,11 +232,13 @@ declare namespace taskpool { constructor(func: Function, ...args: Object[]); /** - * Create a Task instance. + * A constructor used to create a Task instance, with the task name specified. * - * @param { string } name - name name The name of Task. - * @param { Function } func - func func Concurrent function to execute in taskpool. - * @param { Object[] } args - args args The concurrent function arguments. + * @param { string } name - Task name. + * @param { Function } func - Function to be executed. The function must be decorated using @Concurrent. + * For details about the supported return value types of the function, see Sequenceable Data Types. + * @param { Object[] } args - Arguments of the function. For details about the supported parameter types, + * see Sequenceable Data Types. The default value is undefined. * @throws { BusinessError } 401 - The input parameters are invalid. * @throws { BusinessError } 10200014 - The function is not marked as concurrent. * @syscap SystemCapability.Utils.Lang @@ -252,7 +258,8 @@ declare namespace taskpool { * @since 10 */ /** - * Check current running Task is canceled or not. + * Checks whether the running task is canceled. Before using this API, you must create a Task instance. + * isCanceled must be used together with taskpool.cancel. If cancel is not called, isCanceled returns false by default. * * @returns { boolean } Returns {@code true} if current running task is canceled; returns {@code false} otherwise. * @static @@ -264,9 +271,14 @@ declare namespace taskpool { static isCanceled(): boolean; /** - * Send data back to the host side and trigger the registered callback + * Sends data to the host thread and triggers the registered callback. Before using this API, you must create a Task instance. + * NOTE: + * 1.The API is called in the TaskPool thread. + * 2.Do not use this API in a callback function. + * 3.Before calling this API, ensure that the callback function for processing data has been registered in the host thread. * - * @param { Object[] } args - Data to be used as the input parameter of the registered callback. + * @param { Object[] } args - Data to be used as the input parameter of the registered callback. For details about + * the supported parameter types, see Sequenceable Data Types. The default value is undefined. * @throws { BusinessError } 401 - The input parameters are invalid. * @throws { BusinessError } 10200006 - An exception occurred during serialization. * @throws { BusinessError } 10200022 - The function is not called in the TaskPool thread. @@ -290,9 +302,15 @@ declare namespace taskpool { * @since 10 */ /** - * Set transfer list for this task. + * Sets the task transfer list. Before using this API, you must create a Task instance. If this API is not called, + * the ArrayBuffer in the data is transferred by default. + * NOTE: + * This API is used to set the task transfer list in the form of ArrayBuffer in the task pool. + * The ArrayBuffer instance does not copy the content in the task to the worker thread during transfer. + * Instead, it transfers the buffer control right to the worker thread. After the transfer, the ArrayBuffer instance + * becomes invalid. An empty ArrayBuffer will not be transferred. * - * @param { ArrayBuffer[] } [transfer] - transfer Transfer list of this task, empty array is default. + * @param { ArrayBuffer[] } [transfer] - ArrayBuffer instance holding the objects to transfer. The default value is an empty array. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. * @throws { BusinessError } 10200029 - An ArrayBuffer cannot be set as both a transfer list and a clone list. * @syscap SystemCapability.Utils.Lang @@ -303,10 +321,13 @@ declare namespace taskpool { setTransferList(transfer?: ArrayBuffer[]): void; /** - * Set clone list for this task. + * Sets the task clone list. Before using this API, you must create a Task instance. + * NOTE: + * This API must be used together with the @Sendable decorator. Otherwise, an exception is thrown. * - * @param { Object[] | ArrayBuffer[] } cloneList - Sendable objects or arrayBuffer objects in this list - * will be transmitted to worker thread in a copy way. + * @param { Object[] | ArrayBuffer[] } cloneList - The type of the passed-in array must be sendable data types or ArrayBuffer. + * All Sendable class instances or ArrayBuffer objects passed in to cloneList are transferred in copy mode between threads. + * This means that any modification to the destination objects does not affect the original objects. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -320,9 +341,12 @@ declare namespace taskpool { setCloneList(cloneList: Object[] | ArrayBuffer[]): void; /** - * Register a callback for this task to receive and handle data from the taskpool worker thread. + * Registers a callback for a task to receive and process data from the worker thread. Before using this API, you must create a Task instance. + * NOTE: + * If multiple callbacks are registered for the same task, only the last registration takes effect. * - * @param { Function } [callback] - Callback to be registered and executed later on the host side. + * @param { Function } [callback] - Callback function for processing the data received. The data sent to the host + * thread is transferred to the callback as an input parameter. If no value is passed in, all the registered callbacks are canceled. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -361,9 +385,12 @@ declare namespace taskpool { * @since 12 */ /** - * Add dependencies on the task array for this task. + * Adds dependent tasks for this task. Before using this API, you must create a Task instance. + * The task and its dependent tasks cannot be a task in a task group, serial queue, or asynchronous queue, + * a task that has been executed, or a periodic task. A task with a dependency relationship (a task that depends + * on another task or a task that is depended on) cannot be executed multiple times. * - * @param { Task[] } tasks - An array of dependent tasks. + * @param { Task[] } tasks - Array of tasks on which the current task depends. The default value is undefined. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br>1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; @@ -408,9 +435,9 @@ declare namespace taskpool { * @since 12 */ /** - * Remove dependencies on the task array for this task. + * Removes dependent tasks for this task. Before using this API, you must create a Task instance. * - * @param { Task[] } tasks - An array of dependent tasks. + * @param { Task[] } tasks - Array of tasks on which the current task depends. The default value is undefined. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br>1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; @@ -426,9 +453,10 @@ declare namespace taskpool { removeDependency(...tasks: Task[]): void; /** - * Register a callback and call it when the task is enqueued. + * Register a callback function and call it when a task is enqueued. + * The registration must be carried out before the task is executed. Otherwise, an exception is thrown. * - * @param { CallbackFunction } [callback] - Callback to be registered and executed later on the host side. + * @param { CallbackFunction } [callback] - Callback function to register. * @throws { BusinessError } 401 - The input parameters are invalid. * @throws { BusinessError } 10200034 - The executed task does not support the registration of listeners. * @syscap SystemCapability.Utils.Lang @@ -439,9 +467,10 @@ declare namespace taskpool { onEnqueued(callback: CallbackFunction): void; /** - * Register a callback and call it when the task before execute. + * Register a callback function and call it when the execution of a task starts. + * The registration must be carried out before the task is executed. Otherwise, an exception is thrown. * - * @param { CallbackFunction } [callback] - Callback to be registered and executed later on the host side. + * @param { CallbackFunction } [callback] - Callback function to register. * @throws { BusinessError } 401 - The input parameters are invalid. * @throws { BusinessError } 10200034 - The executed task does not support the registration of listeners. * @syscap SystemCapability.Utils.Lang @@ -452,9 +481,10 @@ declare namespace taskpool { onStartExecution(callback: CallbackFunction): void; /** - * Register a callback and call it when the task fails to execute. + * Register a callback function and call it when a task fails to be executed. + * The registration must be carried out before the task is executed. Otherwise, an exception is thrown. * - * @param { CallbackFunctionWithError } [callback] - Callback to be registered and executed later on the host side. + * @param { CallbackFunctionWithError } [callback] - Callback function to register. * @throws { BusinessError } 401 - The input parameters are invalid. * @throws { BusinessError } 10200034 - The executed task does not support the registration of listeners. * @syscap SystemCapability.Utils.Lang @@ -465,9 +495,10 @@ declare namespace taskpool { onExecutionFailed(callback: CallbackFunctionWithError): void; /** - * Register a callback and call it when the task successfully executes. + * Register a callback function and call it when a task is executed successfully. + * The registration must be carried out before the task is executed. Otherwise, an exception is thrown. * - * @param { CallbackFunction } [callback] - Callback to be registered and executed later on the host side. + * @param { CallbackFunction } [callback] - Callback function to register. * @throws { BusinessError } 401 - The input parameters are invalid. * @throws { BusinessError } 10200034 - The executed task does not support the registration of listeners. * @syscap SystemCapability.Utils.Lang @@ -478,7 +509,7 @@ declare namespace taskpool { onExecutionSucceeded(callback: CallbackFunction): void; /** - * Check if the task has been completed. + * Checks whether the task is complete. * * @returns { boolean } Returns {@code true} if the task has been completed; returns {@code false} otherwise. * @syscap SystemCapability.Utils.Lang @@ -504,7 +535,7 @@ declare namespace taskpool { * @since 10 */ /** - * Concurrent function to execute in taskpool. + * Function to be passed in during task creation. For details about the supported return value types of the function, see Sequenceable Data Types. * * @type { Function } * @syscap SystemCapability.Utils.Lang @@ -529,7 +560,7 @@ declare namespace taskpool { * @since 10 */ /** - * The concurrent function arguments. + * Arguments of the function. For details about the supported parameter types, see Sequenceable Data Types. * * @type { ?Object[] } * @syscap SystemCapability.Utils.Lang @@ -540,7 +571,7 @@ declare namespace taskpool { arguments?: Object[]; /** - * Task name. + * Name of the task specified when the task is created. * * @type { string } * @syscap SystemCapability.Utils.Lang @@ -551,7 +582,7 @@ declare namespace taskpool { name: string; /** - * Task identity. + * Task ID. * * @type { number } * @default 0 @@ -562,7 +593,7 @@ declare namespace taskpool { taskId: number; /** - * Total duration of task execution. + * Total execution time of the task. in ms. * * @type { number } * @default 0 @@ -574,7 +605,7 @@ declare namespace taskpool { totalDuration: number; /** - * IO duration of task execution. + * Asynchronous I/O time of the task. in ms. * * @type { number } * @default 0 @@ -586,7 +617,7 @@ declare namespace taskpool { ioDuration: number; /** - * CPU duration of task execution. + * CPU time of the task. in ms. * * @type { number } * @default 0 @@ -606,7 +637,12 @@ declare namespace taskpool { * @since 10 */ /** - * The TaskGroup class provides an interface to create a task group. + * Implements a task group, in which tasks are associated with each other and all tasks are executed at a time. + * If all the tasks are executed normally, an array of task results is returned asynchronously, and the sequence of + * elements in the array is the same as the sequence of tasks added by calling addTask. If any task fails, + * the corresponding exception is thrown. If multiple tasks in the task group fail, the exception of the first failed + * task is thrown. A task group can be executed for multiple times, but no task can be added after the task group is executed. + * Before calling any APIs in TaskGroup, you must use constructor to create a TaskGroup instance. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -622,7 +658,7 @@ declare namespace taskpool { * @since 10 */ /** - * Create a TaskGroup instance. + * Constructor used to create a TaskGroup instance. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -632,9 +668,9 @@ declare namespace taskpool { constructor(); /** - * Create a TaskGroup instance. + * A constructor used to create a TaskGroup instance, with the task group name specified. * - * @param { string } name - name name The name of taskGroup. + * @param { string } name - Task group name. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -661,10 +697,12 @@ declare namespace taskpool { * @since 10 */ /** - * Add a Concurrent function into task group. + * Adds the function to be executed to this task group. Before using this API, you must create a TaskGroup instance. * - * @param { Function } func - func func Concurrent function to add in task group. - * @param { Object[] } args - args args The concurrent function arguments. + * @param { Function } func - Function to be executed. The function must be decorated using @Concurrent. + * For details about the supported return value types of the function, see Sequenceable Data Types. + * @param { Object[] } args - Arguments of the function. For details about the supported parameter types, + * see Sequenceable Data Types. The default value is undefined. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -720,9 +758,11 @@ declare namespace taskpool { * @since 12 */ /** - * Add a Task into TaskGroup. + * Adds a created task to this task group. Before using this API, you must create a TaskGroup instance. + * Tasks in another task group, serial queue, or asynchronous queue, dependent tasks, continuous tasks, + * tasks that have been executed, and periodic tasks cannot be added to the task group. * - * @param { Task } task - The task want to add in task group. + * @param { Task } task - Task to be added to the task group. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br>1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; @@ -738,7 +778,7 @@ declare namespace taskpool { addTask(task: Task): void; /** - * TaskGroup name. + * Name of the task group specified when the task group is created. * * @type { string } * @syscap SystemCapability.Utils.Lang @@ -750,7 +790,8 @@ declare namespace taskpool { } /** - * The SequenceRunner class provides an interface to create a task sequence runner. + * Implements a serial queue, in which all tasks are executed in sequence. Before calling any APIs in SequenceRunner, + * you must use constructor to create a SequenceRunner instance. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -759,9 +800,9 @@ declare namespace taskpool { */ class SequenceRunner { /** - * Create a SequenceRunner instance. + * A constructor used to create a SequenceRunner instance. * - * @param { Priority } priority - Task execution priority, MEDIUM is default. + * @param { Priority } priority - Priority of the task. The default value is taskpool.Priority.MEDIUM. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Incorrect parameter types; * 2.Parameter verification failed. @@ -773,10 +814,14 @@ declare namespace taskpool { constructor(priority?: Priority); /** - * Create or get a SequenceRunner instance by name. + * A constructor used to create a SequenceRunner instance. This instance represents a global serial queue. + * If the passed-in name is the same as an existing name, the same serial queue is returned. + * NOTE: + * 1.The bottom layer uses the singleton mode to ensure that the same instance is obtained when a serial queue with the same name is created. + * 2.The priority of a serial queue cannot be modified. * - * @param { string } name - SequenceRunner name, if name is the same, will return the same SequenceRunner. - * @param { Priority } priority - Task execution priority, MEDIUM is default. + * @param { string } name - Name of a serial queue. + * @param { Priority } priority - Priority of the task. The default value is taskpool.Priority.MEDIUM. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @syscap SystemCapability.Utils.Lang @@ -819,9 +864,13 @@ declare namespace taskpool { * @since 12 */ /** - * Execute a concurrent function. + * Adds a task to the serial queue for execution. Before using this API, you must create a SequenceRunner instance. + * Tasks in another task group, serial queue, or asynchronous queue, dependent tasks, and tasks that have been executed cannot be added to the serial queue. + * NOTE: + * 1.Tasks that depend others cannot be added to the serial queue. + * 2.The failure or cancellation of a task does not affect the execution of subsequent tasks in the serial queue. * - * @param { Task } task - The task want to execute. + * @param { Task } task - Task to be added to the serial queue. * @returns { Promise<Object> } * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br>1. Mandatory parameters are left unspecified; @@ -839,7 +888,10 @@ declare namespace taskpool { } /** - * The LongTask class provides an interface to create a task that has no upper limit on execution time. + * Describes a continuous task. LongTask inherits from Task. No upper limit is set for the execution time of a continuous task, + * and no timeout exception is thrown if a continuous task runs for a long period of time. However, a continuous task cannot be + * executed in a task group or executed for multiple times. The thread for executing a continuous task exists until terminateTask + * is called after the execution is complete. The thread is reclaimed when it is idle. * * @extends Task * @syscap SystemCapability.Utils.Lang @@ -859,7 +911,9 @@ declare namespace taskpool { * @since 13 */ /** - * The GenericsTask class provides an interface to create a task with generics. + * Implements a generic task. GenericsTask inherits from Task. During the creation of a generic task, the passed-in + * parameter types and return value types of concurrent functions are verified in the compilation phase. + * Other behaviors are the same as those during the creation of a task. * * @extends Task * @syscap SystemCapability.Utils.Lang @@ -880,10 +934,12 @@ declare namespace taskpool { * @since 13 */ /** - * Create a GenericsTask instance. + * A constructor used to create a GenericsTask object. * - * @param { (...args: A) => R | Promise<R> } func - Concurrent function to execute in taskpool. - * @param { A } args - The concurrent function arguments. + * @param { (...args: A) => R | Promise<R> } func - Function to be executed. The function must be decorated using @Concurrent. + * For details about the supported return value types of the function, see Sequenceable Data Types. + * @param { A } args - Arguments of the function. For details about the supported parameter types, see Sequenceable Data Types. + * The default value is undefined. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. * @throws { BusinessError } 10200014 - The function is not marked as concurrent. * @syscap SystemCapability.Utils.Lang @@ -906,11 +962,13 @@ declare namespace taskpool { * @since 13 */ /** - * Create a GenericsTask instance. + * A constructor used to create a GenericsTask instance, with the task name specified. * - * @param { string } name - The name of GenericsTask. - * @param { (...args: A) => R | Promise<R> } func - Concurrent function to execute in taskpool. - * @param { A } args - The concurrent function arguments. + * @param { string } name - Name of the generic task. + * @param { (...args: A) => R | Promise<R> } func - Function to be executed. The function must be decorated using @Concurrent. + * For details about the supported return value types of the function, see Sequenceable Data Types. + * @param { A } args - Arguments of the function. For details about the supported parameter types, see Sequenceable Data Types. + * The default value is undefined. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. * @throws { BusinessError } 10200014 - The function is not marked as concurrent. * @syscap SystemCapability.Utils.Lang @@ -930,7 +988,10 @@ declare namespace taskpool { * @since 10 */ /** - * The State defines the task state. + * Enumerates the task states. After a task is created and execute() is called, the task is placed in the internal + * queue of the task pool and the state is WAITING. When the task is being executed by the worker thread of the task pool, + * the state changes to RUNNING. After the task is executed and the result is returned, the state is reset to WAITING. + * When the task is proactively canceled, the state changes to CANCELED. * * @enum { number } State * @syscap SystemCapability.Utils.Lang @@ -947,7 +1008,7 @@ declare namespace taskpool { * @since 10 */ /** - * the task state is waiting. + * The task is waiting. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -964,7 +1025,7 @@ declare namespace taskpool { * @since 10 */ /** - * the task state is running. + * The task is running. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -981,7 +1042,7 @@ declare namespace taskpool { * @since 10 */ /** - * the task state is canceled. + * The task is canceled. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -999,7 +1060,7 @@ declare namespace taskpool { * @since 10 */ /** - * Indicates the internal information of the worker thread. + * Describes the internal information about a task. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -1017,7 +1078,7 @@ declare namespace taskpool { * @since 10 */ /** - * Task identity. + * Task ID. * * @type { number } * @default 0 @@ -1058,7 +1119,7 @@ declare namespace taskpool { * @since 10 */ /** - * Duration of task execution. + * Duration that the task has been executed, in ms. If the return value is 0, the task is not running. If the return value is empty, no task is running. * * @type { ?number } * @syscap SystemCapability.Utils.Lang @@ -1088,7 +1149,7 @@ declare namespace taskpool { * @since 10 */ /** - * Indicates the internal information of the worker thread. + * Describes the internal information about a worker thread. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -1106,7 +1167,7 @@ declare namespace taskpool { * @since 10 */ /** - * Thread id. + * ID of the worker thread. If the return value is empty, no task is running. * * @type { number } * @default 0 @@ -1126,7 +1187,7 @@ declare namespace taskpool { * @since 10 */ /** - * Task id list that running on current thread. + * IDs of tasks running on the calling thread. If the return value is empty, no task is running. * * @type { ?number[] } * @syscap SystemCapability.Utils.Lang @@ -1145,7 +1206,7 @@ declare namespace taskpool { * @since 10 */ /** - * Thread priority. + * Priority of the calling thread. If the return value is empty, no task is running. * * @type { ?Priority } * @syscap SystemCapability.Utils.Lang @@ -1164,7 +1225,7 @@ declare namespace taskpool { * @since 10 */ /** - * Indicates the internal information of the taskpool. + * Describes the internal information about a task pool. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -1181,7 +1242,7 @@ declare namespace taskpool { * @since 10 */ /** - * An array of taskpool thread information. + * Internal information about the worker threads. * * @type { ThreadInfo[] } * @syscap SystemCapability.Utils.Lang @@ -1200,7 +1261,7 @@ declare namespace taskpool { * @since 10 */ /** - * An array of taskpool task information. + * Internal information about the tasks. * * @type { TaskInfo[] } * @syscap SystemCapability.Utils.Lang @@ -1263,10 +1324,13 @@ declare namespace taskpool { * @since 11 */ /** - * Execute a concurrent function. + * Places a function to be executed in the internal queue of the task pool. The function is not executed immediately. + * It waits to be distributed to the worker thread for execution. In this mode, the function cannot be canceled. * - * @param { Function } func - func func Concurrent function want to execute. - * @param { Object[] } args - args args The concurrent function arguments. + * @param { Function } func - Function to be executed. The function must be decorated using @Concurrent. + * For details about the supported return value types of the function, see Sequenceable Data Types. + * @param { Object[] } args - Arguments of the function. For details about the supported parameter types, + * see Sequenceable Data Types. The default value is undefined. * @returns { Promise<Object> } * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -1295,10 +1359,13 @@ declare namespace taskpool { * @since 13 */ /** - * Execute a concurrent function with generics. + * Verifies the passed-in parameter types and return value type of a concurrent function, + * and places the function to execute in the internal queue of the task pool. * - * @param { (...args: A) => R | Promise<R> } func - Concurrent function want to execute. - * @param { A } args - The concurrent function arguments. + * @param { (...args: A) => R | Promise<R> } func - Function to be executed. The function must be decorated using @Concurrent. + * For details about the supported return value types of the function, see Sequenceable Data Types. + * @param { A } args - Arguments of the function. For details about the supported parameter types, + * see Sequenceable Data Types. The default value is undefined. * @returns { Promise<R> } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. * @throws { BusinessError } 10200006 - An exception occurred during serialization. @@ -1380,10 +1447,13 @@ declare namespace taskpool { * @since 12 */ /** - * Execute a concurrent task. + * Places a task in the internal queue of the task pool. The task is not executed immediately. It waits to be distributed + * to the worker thread for execution. In this mode, you can set the task priority and call cancel() to cancel the task. + * The task cannot be a task in a task group, serial queue, or asynchronous queue. This API can be called only once for + * a continuous task, but multiple times for a non-continuous task. * - * @param { Task } task - The task want to execute. - * @param { Priority } [priority] - Task priority, MEDIUM is default. + * @param { Task } task - Task to be executed. + * @param { Priority } [priority] - Priority of the task. The default value is taskpool.Priority.MEDIUM. * @returns { Promise<Object> } * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br>1. Mandatory parameters are left unspecified; @@ -1415,10 +1485,10 @@ declare namespace taskpool { * @since 13 */ /** - * Execute a concurrent task with generics. + * Verifies the passed-in parameter types and return value type of a concurrent function, and places the generic task in the internal queue of the task pool. * - * @param { GenericsTask<A, R> } task - The task want to execute. - * @param { Priority } [priority] - Task priority, MEDIUM is default. + * @param { GenericsTask<A, R> } task - Generic task to be executed. + * @param { Priority } [priority] - Priority of the task. The default value is taskpool.Priority.MEDIUM. * @returns { Promise<R> } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. * @throws { BusinessError } 10200006 - An exception occurred during serialization. @@ -1448,10 +1518,12 @@ declare namespace taskpool { * @since 10 */ /** - * Execute a concurrent task group. + * Places a task group in the internal queue of the task pool. The tasks in the task group are not executed immediately. + * They wait to be distributed to the worker thread for execution. After all tasks in the task group are executed, + * a result array is returned. This API applies when you want to execute a group of associated tasks. * - * @param { TaskGroup } group - group group The task group want to execute. - * @param { Priority } [priority] - priority priority Task group priority, MEDIUM is default. + * @param { TaskGroup } group - Task group to be executed. + * @param { Priority } [priority] - Priority of the task group. The default value is taskpool.Priority.MEDIUM. * @returns { Promise<Object[]> } * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -1503,11 +1575,13 @@ declare namespace taskpool { * @since 12 */ /** - * Execute a concurrent task after the specified time. + * Executes a task after a given delay. In this mode, you can set the task priority and call cancel() to cancel the task. + * The task cannot be a task in a task group, serial queue, or asynchronous queue, or a periodic task. + * This API can be called only once for a continuous task, but multiple times for a non-continuous task. * - * @param { number } delayTime - The time want to delay. - * @param { Task } task - The task want to execute. - * @param { Priority } [priority] - Task priority, MEDIUM is default. + * @param { number } delayTime - Delay, in ms. + * @param { Task } task - Task to be executed with a delay. + * @param { Priority } [priority] - Priority of the task. The default value is taskpool.Priority.MEDIUM. * @returns { Promise<Object> } * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br>1. Mandatory parameters are left unspecified; @@ -1540,11 +1614,11 @@ declare namespace taskpool { * @since 13 */ /** - * Execute a concurrent task with generics after the specified time. + * Verifies the passed-in parameter types and return value type of a concurrent function, and executes the generic task with a delay. * - * @param { number } delayTime - The time want to delay. - * @param { GenericsTask<A, R> } task - The task want to execute. - * @param { Priority } [priority] - Task priority, MEDIUM is default. + * @param { number } delayTime - Delay, in ms. + * @param { GenericsTask<A, R> } task - Generic task to be executed with a delay. + * @param { Priority } [priority] - Priority of the task. The default value is taskpool.Priority.MEDIUM. * @returns { Promise<R> } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. * @throws { BusinessError } 10200028 - The delayTime is less than zero. @@ -1577,11 +1651,12 @@ declare namespace taskpool { * @since 12 */ /** - * Execute a concurrent task periodically. + * Executes a task periodically. In this execution mode, you can set the task priority and call cancel() to cancel the execution. + * A periodic task cannot be a task in a task group, serial queue, or asynchronous queue. It cannot call execute() again or have a dependency relationship. * - * @param { number } period - The period in milliseconds for executing task. - * @param { Task } task - The task want to execute. - * @param { Priority } [priority] - Task priority, MEDIUM is default. + * @param { number } period - Execution period, in ms. + * @param { Task } task - Task to be executed. + * @param { Priority } [priority] - Priority of the task. The default value is taskpool.Priority.MEDIUM. * @throws { BusinessError } 401 - Parameter error. Possible causes: * <br>1. Mandatory parameters are left unspecified; * <br>2. Incorrect parameter types; @@ -1614,11 +1689,12 @@ declare namespace taskpool { * @since 13 */ /** - * Execute a concurrent task with generics periodically. + * Verifies the passed-in parameter types and return value type of a concurrent function, and executes the generic task + * periodically at an interval specified by period. * - * @param { number } period - The period in milliseconds for executing task. - * @param { GenericsTask<A, R> } task - The task want to execute. - * @param { Priority } [priority] - Task priority, MEDIUM is default. + * @param { number } period - Execution period, in ms. + * @param { GenericsTask<A, R> } task - Generic task to be executed periodically. + * @param { Priority } [priority] - Priority of the task. The default value is taskpool.Priority.MEDIUM. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. * @throws { BusinessError } 10200006 - An exception occurred during serialization. * @throws { BusinessError } 10200014 - The function is not marked as concurrent. @@ -1673,13 +1749,13 @@ declare namespace taskpool { * @since 11 */ /** - * Cancel a concurrent task. + * Cancels a task in the task pool. If the task is in the internal queue of the task pool, the task will not be executed + * after being canceled, and an exception indicating task cancellation is returned. If the task has been distributed to + * the worker thread of the task pool, canceling the task does not affect the task execution, and the execution result + * is returned in the catch branch. You can use isCanceled() to check the task cancellation status. In other words, + * taskpool.cancel takes effect before taskpool.execute or taskpool.executeDelayed is called. * - * @param { Task } task - task task The task want to cancel. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. + * @param { Task } task - Task to cancel. * @throws { BusinessError } 10200015 - The task to cancel does not exist. * @throws { BusinessError } 10200055 - The asyncRunner task has been canceled. * @syscap SystemCapability.Utils.Lang @@ -1703,9 +1779,9 @@ declare namespace taskpool { * @since 10 */ /** - * Cancel a concurrent task group. + * Cancels a task group in the task pool. If a task group is canceled before all the tasks in it are finished, undefined is returned. * - * @param { TaskGroup } group - group group The task group want to cancel. + * @param { TaskGroup } group - Task group to cancel. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -1719,13 +1795,15 @@ declare namespace taskpool { function cancel(group: TaskGroup): void; /** - * Cancel a concurrent task. + * Cancels a task in the task pool by task ID. If the task is in the internal queue of the task pool, + * the task will not be executed after being canceled, and an exception indicating task cancellation is returned. + * If the task has been distributed to the worker thread of the task pool, canceling the task does not affect the task execution, + * and the execution result is returned in the catch branch. You can use isCanceled() to check the task cancellation status. + * In other words, taskpool.cancel takes effect before taskpool.execute or taskpool.executeDelayed is called. + * If taskpool.cancel is called by other threads, note that the cancel operation, which is asynchronous, + * may take effect for later calls of taskpool.execute or taskpool.executeDelayed. * - * @param { number } taskId - The task want to cancel. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. + * @param { number } taskId - ID of the task to cancel. * @throws { BusinessError } 10200015 - The task to cancel does not exist. * @throws { BusinessError } 10200055 - The asyncRunner task has been canceled. * @syscap SystemCapability.Utils.Lang @@ -1743,7 +1821,7 @@ declare namespace taskpool { * @since 10 */ /** - * Get task pool internal information. + * Obtains internal information about this task pool, including thread information and task information. * * @returns { TaskPoolInfo } * @syscap SystemCapability.Utils.Lang @@ -1754,9 +1832,10 @@ declare namespace taskpool { function getTaskPoolInfo(): TaskPoolInfo; /** - * Terminate a long task. + * Terminates a continuous task in the task pool. It is called after the continuous task is complete. + * After the task is terminated, the thread that executes the task may be reclaimed. * - * @param { LongTask } longTask - The long task want to terminate. + * @param { LongTask } longTask - Continuous task to terminate. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -1769,9 +1848,9 @@ declare namespace taskpool { function terminateTask(longTask: LongTask): void; /** - * Check if the function is a concurrent function. + * Checks whether a function is a concurrent function. * - * @param { Function } func - The function name to check. + * @param { Function } func - Function to check. * @returns { boolean } Returns {@code true} if it is a concurrent function; returns {@code false} otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -1782,10 +1861,11 @@ declare namespace taskpool { * @atomicservice * @since 12 */ - function isConcurrent(func: Function): boolean; + function isConcurrent(func: Function): boolean; /** - * The AsyncRunner class provides an interface to create an async runner. + * Implements an asynchronous queue, for which you can specify the task execution concurrency and queuing policy. + * Before calling any APIs in AsyncRunner, you must use constructor to create an AsyncRunner instance. * * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -1793,10 +1873,15 @@ declare namespace taskpool { */ export class AsyncRunner { /** - * Create a AsyncRunner instance. + * A constructor used to create an AsyncRunner instance. It constructs a non-global asynchronous queue. + * Even when the parameters passed are the same, it returns different asynchronous queues. * - * @param { number } runningCapacity - The maximum task execution capacity. - * @param { ?number } waitingCapacity - The waiting task capacity, 0 is default, means no limit on waiting task capacity. + * @param { number } runningCapacity - Maximum number of tasks that can run concurrently. The value must be a positive integer. + * If a negative number is passed, an error is reported. If a non-integer is passed, the value is rounded down. + * @param { ?number } waitingCapacity - Maximum number of tasks that can be queued. The value must be greater than or equal to 0. + * If a negative number is passed, an error is reported. If a non-integer is passed, the value is rounded down. + * The default value is 0, indicating that there is no limit to the number of tasks that can wait. + * If a value greater than 0 is passed, tasks will be discarded from the front of the queue once the queue size exceeds this limit, implementing a discard policy. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @syscap SystemCapability.Utils.Lang @@ -1806,11 +1891,19 @@ declare namespace taskpool { constructor(runningCapacity: number, waitingCapacity?: number); /** - * Create or get a AsyncRunner instance by name. + * A constructor used to create an AsyncRunner instance. It constructs a global asynchronous queue. + * If the passed-in name is the same as an existing name, the same asynchronous queue is returned. + * NOTE: + * 1.The bottom layer uses the singleton mode to ensure that the same instance is obtained when an asynchronous queue with the same name is created. + * 2.The task execution concurrency and waiting capacity cannot be modified. * - * @param { string } name - AsyncRunner name, if name is the same, will return the same asyncRunner. - * @param { number } runningCapacity - The maximum task execution capacity. - * @param { ?number } waitingCapacity - The waiting task capacity, 0 is default, means no limit on waiting task capacity. + * @param { string } name - Name of an asynchronous queue. + * @param { number } runningCapacity - Maximum number of tasks that can run concurrently. The value must be a positive integer. + * If a negative number is passed, an error is reported. If a non-integer is passed, the value is rounded down. + * @param { ?number } waitingCapacity - Maximum number of tasks that can be queued. The value must be greater than or equal to 0. + * If a negative number is passed, an error is reported. If a non-integer is passed, the value is rounded down. + * The default value is 0, indicating that there is no limit to the number of tasks that can wait. + * If a value greater than 0 is passed, tasks will be discarded from the front of the queue once the queue size exceeds this limit, implementing a discard policy. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @syscap SystemCapability.Utils.Lang @@ -1820,13 +1913,19 @@ declare namespace taskpool { constructor(name: string, runningCapacity: number, waitingCapacity?: number); /** - * Execute a concurrent function. + * Adds a task to the asynchronous queue for execution. Before using this API, you must create an AsyncRunner instance. + * NOTE: + * Tasks in a task group cannot be added to the asynchronous queue. + * Tasks in a serial queue cannot be added to the asynchronous queue. + * Tasks in other asynchronous queues cannot be added to the asynchronous queue. + * Periodic tasks cannot be added to the asynchronous queue. + * Delayed tasks cannot be added to the asynchronous queue. + * Tasks that depend others cannot be added to the asynchronous queue. + * Tasks that have been executed cannot be added to the asynchronous queue. * - * @param { Task } task - The task want to execute. - * @param { ?Priority } priority - Task execution priority, MEDIUM is default. + * @param { Task } task - Task to be added to the asynchronous queue. + * @param { ?Priority } priority - Priority of the task. The default value is taskpool.Priority.MEDIUM. * @returns { Promise<Object> } - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 10200006 - An exception occurred during serialization. * @throws { BusinessError } 10200025 - dependent task not allowed. * @throws { BusinessError } 10200051 - The periodic task cannot be executed again. @@ -1838,6 +1937,39 @@ declare namespace taskpool { */ execute(task: Task, priority?: Priority): Promise<Object>; } + + /** + * Defines the task result interface + * + * @interface TaskResult + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + interface TaskResult { + /** + * the result returned by the task + * + * @type { ?Object } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + result?: Object; + + /** + * the error thrown by the task + * + * @type { ?(Error | Object) } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + error?: Error | Object; + } } export default taskpool; diff --git a/api/@ohos.telephony.data.d.ts b/api/@ohos.telephony.data.d.ts index 259f288bc1ed582ee7fb020e626cb7560c24efdc..5a74b8ae56f474675ca6309db9718d69b8a99f68 100644 --- a/api/@ohos.telephony.data.d.ts +++ b/api/@ohos.telephony.data.d.ts @@ -70,7 +70,7 @@ declare namespace data { * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. * @throws { BusinessError } 8300004 - No SIM card found. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @throws { BusinessError } 8301001 - SIM card is not activated. * @syscap SystemCapability.Telephony.CellularData * @systemapi Hide this for inner system use. @@ -93,7 +93,7 @@ declare namespace data { * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. * @throws { BusinessError } 8300004 - No SIM card found. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @throws { BusinessError } 8301001 - SIM card is not activated. * @syscap SystemCapability.Telephony.CellularData * @systemapi Hide this for inner system use. @@ -166,7 +166,7 @@ declare namespace data { * @throws { BusinessError } 8300001 - Invalid parameter value. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @since 7 */ @@ -181,7 +181,7 @@ declare namespace data { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @since 7 */ @@ -196,7 +196,7 @@ declare namespace data { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error code. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @since 12 */ @@ -214,7 +214,7 @@ declare namespace data { * @throws { BusinessError } 8300001 - Invalid parameter value. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @systemapi Hide this for inner system use. * @since 7 @@ -230,7 +230,7 @@ declare namespace data { * @throws { BusinessError } 202 - Non-system applications use system APIs. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @systemapi Hide this for inner system use. * @since 7 @@ -249,7 +249,7 @@ declare namespace data { * @throws { BusinessError } 8300001 - Invalid parameter value. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @systemapi Hide this for inner system use. * @since 7 @@ -265,7 +265,7 @@ declare namespace data { * @throws { BusinessError } 202 - Non-system applications use system APIs. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @systemapi Hide this for inner system use. * @since 7 @@ -287,7 +287,7 @@ declare namespace data { * @throws { BusinessError } 8300001 - Invalid parameter value. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @since 7 */ @@ -307,7 +307,7 @@ declare namespace data { * @throws { BusinessError } 8300001 - Invalid parameter value. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @since 7 */ @@ -327,7 +327,7 @@ declare namespace data { * @throws { BusinessError } 8300001 - Invalid parameter value. * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error code. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @since 12 */ @@ -347,7 +347,7 @@ declare namespace data { * @throws { BusinessError } 8300001 - Invalid parameter value. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @systemapi Hide this for inner system use. * @since 7 @@ -368,7 +368,7 @@ declare namespace data { * @throws { BusinessError } 8300001 - Invalid parameter value. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @systemapi Hide this for inner system use. * @since 7 @@ -389,7 +389,7 @@ declare namespace data { * @throws { BusinessError } 8300001 - Invalid parameter value. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @systemapi Hide this for inner system use. * @since 7 @@ -410,7 +410,7 @@ declare namespace data { * @throws { BusinessError } 8300001 - Invalid parameter value. * @throws { BusinessError } 8300002 - Service connection failed. * @throws { BusinessError } 8300003 - System internal error. - * @throws { BusinessError } 8300999 - Unknown error. + * @throws { BusinessError } 8300999 - Internal error. * @syscap SystemCapability.Telephony.CellularData * @systemapi Hide this for inner system use. * @since 7 diff --git a/api/@ohos.telephony.esim.d.ts b/api/@ohos.telephony.esim.d.ts index 26ac5e8a5296779a31b53f84cf2855942d86722e..8e2f80afe0fb1accb7559c9f9ace1e7fe6189af6 100644 --- a/api/@ohos.telephony.esim.d.ts +++ b/api/@ohos.telephony.esim.d.ts @@ -26,7 +26,7 @@ import type { AsyncCallback } from './@ohos.base'; * * @namespace eSIM * @syscap SystemCapability.Telephony.CoreService.Esim - * @since 16 + * @since 18 */ declare namespace eSIM { /** @@ -34,12 +34,11 @@ declare namespace eSIM { * * @param { number } slotId - Indicates the card slot index number. * @returns { boolean } Returns {@code true} if the eSIM capability is supported; returns {@code false} otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim - * @since 16 + * @since 18 */ function isSupported(slotId: number): boolean; @@ -51,13 +50,12 @@ declare namespace eSIM { * @returns { Promise<boolean> } Returns {@code true} if the profile is added successfully; * returns {@code false} otherwise. * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim - * @since 16 + * @since 18 */ function addProfile(profile: DownloadableProfile): Promise<boolean>; @@ -69,14 +67,13 @@ declare namespace eSIM { * @returns { Promise<string> } Returns the EID. When eUICC is not ready, the return value may be null. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function getEid(slotId: number): Promise<string>; @@ -88,14 +85,13 @@ declare namespace eSIM { * @returns { Promise<OsuStatus> } Return the status of eUICC OS upgrade. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function getOsuStatus(slotId: number): Promise<OsuStatus>; @@ -107,14 +103,13 @@ declare namespace eSIM { * @returns { Promise<OsuStatus> } Return the status of OS upgrade when OS upgrade status changed. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function startOsu(slotId: number): Promise<OsuStatus>; @@ -131,14 +126,13 @@ declare namespace eSIM { * @returns { Promise<GetDownloadableProfileMetadataResult> } Return the metadata for profile. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function getDownloadableProfileMetadata(slotId: number, portIndex: number, profile: DownloadableProfile, forceDisableProfile: boolean): Promise<GetDownloadableProfileMetadataResult>; @@ -156,14 +150,13 @@ declare namespace eSIM { * available for download on this device. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function getDownloadableProfiles(slotId: number, portIndex: number, forceDisableProfile: boolean): Promise<GetDownloadableProfilesResult>; @@ -179,14 +172,13 @@ declare namespace eSIM { * @returns { Promise<DownloadProfileResult> } Return the given downloadableProfile. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function downloadProfile(slotId: number, portIndex: number, profile: DownloadableProfile, configuration: DownloadConfiguration): Promise<DownloadProfileResult>; @@ -199,14 +191,13 @@ declare namespace eSIM { * @returns { Promise<GetEuiccProfileInfoListResult> } Return a list of eUICC profile information. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function getEuiccProfileInfoList(slotId: number): Promise<GetEuiccProfileInfoListResult>; @@ -219,14 +210,13 @@ declare namespace eSIM { * the return value may be null. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function getEuiccInfo(slotId: number): Promise<EuiccInfo>; @@ -239,14 +229,13 @@ declare namespace eSIM { * @returns { Promise<ResultCode> } Returns the response to deletes the given profile. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function deleteProfile(slotId: number, iccid: string): Promise<ResultCode>; @@ -263,14 +252,13 @@ declare namespace eSIM { * @returns { Promise<ResultCode> } Returns the response to switch profile. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function switchToProfile(slotId: number, portIndex: number, iccid: string, forceDisableProfile: boolean): Promise<ResultCode>; @@ -285,14 +273,13 @@ declare namespace eSIM { * @returns { Promise<ResultCode> } Returns the result of the set nickname operation. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function setProfileNickname(slotId: number, iccid: string, nickname: string): Promise<ResultCode>; @@ -305,14 +292,13 @@ declare namespace eSIM { * @returns { Promise<ResultCode> } Returns the result of the reset operation. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function resetMemory(slotId: number, options?:ResetOption): Promise<ResultCode>; @@ -324,14 +310,13 @@ declare namespace eSIM { * @returns { Promise<ResultCode> } Returns the result code. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function reserveProfilesForFactoryRestore(slotId: number): Promise<ResultCode>; @@ -344,14 +329,13 @@ declare namespace eSIM { * @returns { Promise<ResultCode> } Returns the result code. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function setDefaultSmdpAddress(slotId: number, address: string): Promise<ResultCode>; @@ -363,14 +347,13 @@ declare namespace eSIM { * @returns { Promise<string> } Returns the default SM-DP+ address. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function getDefaultSmdpAddress(slotId: number): Promise<string>; @@ -386,14 +369,13 @@ declare namespace eSIM { * @returns { Promise<ResultCode> } Returns the result code. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Non-system applications use system APIs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * 2. Incorrect parameter types. 3. Invalid parameter value. + * @throws { BusinessError } 401 - Invalid parameter value. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3120001 - Service connection failed. * @throws { BusinessError } 3120002 - System internal error. * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ function cancelSession(slotId: number, transactionId: string, cancelReason: CancelReason): Promise<ResultCode>; @@ -403,7 +385,7 @@ declare namespace eSIM { * @interface AccessRule * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export interface AccessRule { /** @@ -412,7 +394,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ certificateHashHexStr: string; @@ -422,7 +404,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ packageName: string; @@ -432,7 +414,7 @@ declare namespace eSIM { * @type { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ accessType: number; } @@ -442,7 +424,7 @@ declare namespace eSIM { * * @interface DownloadableProfile * @syscap SystemCapability.Telephony.CoreService.Esim - * @since 16 + * @since 18 */ export interface DownloadableProfile { /** @@ -450,7 +432,7 @@ declare namespace eSIM { * * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim - * @since 16 + * @since 18 */ activationCode: string; @@ -459,7 +441,7 @@ declare namespace eSIM { * * @type { ?string } * @syscap SystemCapability.Telephony.CoreService.Esim - * @since 16 + * @since 18 */ confirmationCode?: string; @@ -468,7 +450,7 @@ declare namespace eSIM { * * @type { ?string } * @syscap SystemCapability.Telephony.CoreService.Esim - * @since 16 + * @since 18 */ carrierName?: string; @@ -477,7 +459,7 @@ declare namespace eSIM { * * @type { ?Array<AccessRule> } * @syscap SystemCapability.Telephony.CoreService.Esim - * @since 16 + * @since 18 */ accessRules?: Array<AccessRule>; } @@ -488,7 +470,7 @@ declare namespace eSIM { * @interface GetDownloadableProfileMetadataResult * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export interface GetDownloadableProfileMetadataResult { /** @@ -497,7 +479,7 @@ declare namespace eSIM { * @type { DownloadableProfile } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ downloadableProfile: DownloadableProfile; @@ -507,7 +489,7 @@ declare namespace eSIM { * @type { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ pprType: number; @@ -517,7 +499,7 @@ declare namespace eSIM { * @type { boolean } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ pprFlag: boolean; @@ -527,7 +509,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ iccid: string; @@ -537,7 +519,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ serviceProviderName: string; @@ -547,7 +529,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ profileName: string; @@ -557,7 +539,7 @@ declare namespace eSIM { * @type { ProfileClass } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ profileClass: ProfileClass; @@ -567,7 +549,7 @@ declare namespace eSIM { * @type { SolvableErrors } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ solvableErrors: SolvableErrors; @@ -577,7 +559,7 @@ declare namespace eSIM { * @type { ResultCode } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ responseResult: ResultCode; } @@ -588,7 +570,7 @@ declare namespace eSIM { * @interface GetDownloadableProfilesResult * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export interface GetDownloadableProfilesResult { /** @@ -597,7 +579,7 @@ declare namespace eSIM { * @type { ResultCode } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ responseResult: ResultCode; @@ -607,7 +589,7 @@ declare namespace eSIM { * @type { Array<DownloadableProfile> } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ downloadableProfiles: Array<DownloadableProfile>; } @@ -618,7 +600,7 @@ declare namespace eSIM { * @interface DownloadProfileResult * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export interface DownloadProfileResult { /** @@ -627,7 +609,7 @@ declare namespace eSIM { * @type { ResultCode } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ responseResult: ResultCode; @@ -637,7 +619,7 @@ declare namespace eSIM { * @type { SolvableErrors } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ solvableErrors: SolvableErrors; @@ -647,7 +629,7 @@ declare namespace eSIM { * @type { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ cardId: number; } @@ -658,7 +640,7 @@ declare namespace eSIM { * @interface GetEuiccProfileInfoListResult * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export interface GetEuiccProfileInfoListResult { /** @@ -667,7 +649,7 @@ declare namespace eSIM { * @type { ResultCode } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ responseResult: ResultCode; @@ -677,7 +659,7 @@ declare namespace eSIM { * @type { Array<EuiccProfile> } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ profiles: Array<EuiccProfile>; @@ -687,7 +669,7 @@ declare namespace eSIM { * @type { boolean } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ isRemovable: boolean; } @@ -698,7 +680,7 @@ declare namespace eSIM { * @interface OperatorId * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export interface OperatorId { /** @@ -707,7 +689,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ mcc: string; @@ -717,7 +699,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ mnc: string; @@ -727,7 +709,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ gid1: string; @@ -737,7 +719,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ gid2: string; } @@ -748,7 +730,7 @@ declare namespace eSIM { * @interface EuiccProfile * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export interface EuiccProfile { /** @@ -757,7 +739,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ iccid: string; @@ -767,7 +749,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ nickName: string; @@ -777,7 +759,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ serviceProviderName: string; @@ -787,7 +769,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ profileName: string; @@ -797,7 +779,7 @@ declare namespace eSIM { * @type { ProfileState } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ state: ProfileState; @@ -807,7 +789,7 @@ declare namespace eSIM { * @type { ProfileClass } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ profileClass: ProfileClass; @@ -817,7 +799,7 @@ declare namespace eSIM { * @type { OperatorId } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ operatorId: OperatorId; @@ -827,7 +809,7 @@ declare namespace eSIM { * @type { PolicyRules } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ policyRules: PolicyRules; @@ -837,7 +819,7 @@ declare namespace eSIM { * @type { Array<AccessRule> } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ accessRules: Array<AccessRule>; } @@ -848,7 +830,7 @@ declare namespace eSIM { * @interface EuiccInfo * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export interface EuiccInfo { /** @@ -857,7 +839,7 @@ declare namespace eSIM { * @type { string } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ osVersion: string; } @@ -868,7 +850,7 @@ declare namespace eSIM { * @enum { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export enum ResetOption { /** @@ -876,7 +858,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ DELETE_OPERATIONAL_PROFILES = 1, @@ -885,7 +867,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ DELETE_FIELD_LOADED_TEST_PROFILES = 1 << 1, @@ -894,7 +876,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESET_DEFAULT_SMDP_ADDRESS = 1 << 2, } @@ -905,7 +887,7 @@ declare namespace eSIM { * @enum { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export enum OsuStatus { /** @@ -913,7 +895,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ EUICC_UPGRADE_IN_PROGRESS = 1, @@ -922,7 +904,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ EUICC_UPGRADE_FAILED = 2, @@ -931,7 +913,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ EUICC_UPGRADE_SUCCESSFUL = 3, @@ -940,7 +922,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ EUICC_UPGRADE_ALREADY_LATEST = 4, @@ -949,7 +931,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ EUICC_UPGRADE_SERVICE_UNAVAILABLE = 5, } @@ -960,7 +942,7 @@ declare namespace eSIM { * @enum { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export enum ResultCode { /** @@ -968,7 +950,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_SOLVABLE_ERRORS = -2, @@ -977,7 +959,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_MUST_DISABLE_PROFILE = -1, @@ -986,7 +968,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_OK = 0, @@ -995,7 +977,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_GET_EID_FAILED = 201, @@ -1004,7 +986,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_ACTIVATION_CODE_CHANGED = 203, @@ -1013,7 +995,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_ACTIVATION_CODE_INVALID = 204, @@ -1022,7 +1004,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_SMDP_ADDRESS_INVALID = 205, @@ -1031,7 +1013,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_EUICC_INFO_INVALID = 206, @@ -1040,7 +1022,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_TLS_HANDSHAKE_FAILED = 207, @@ -1049,7 +1031,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_CERTIFICATE_IO_ERROR = 208, @@ -1058,7 +1040,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_CERTIFICATE_RESPONSE_TIMEOUT = 209, @@ -1067,7 +1049,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_AUTHENTICATION_FAILED = 210, @@ -1076,7 +1058,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_RESPONSE_HTTP_FAILED = 211, @@ -1085,7 +1067,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_CONFIRMATION_CODE_INCORRECT = 212, @@ -1094,7 +1076,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_EXCEEDED_CONFIRMATION_CODE_TRY_LIMIT = 213, @@ -1103,7 +1085,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_NO_PROFILE_ON_SERVER = 214, @@ -1112,7 +1094,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_TRANSACTION_ID_INVALID = 215, @@ -1121,7 +1103,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_SERVER_ADDRESS_INVALID = 216, @@ -1130,7 +1112,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_GET_BOUND_PROFILE_PACKAGE_FAILED = 217, @@ -1139,7 +1121,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_USER_CANCEL_DOWNLOAD = 218, @@ -1148,7 +1130,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_SERVER_UNAVAILABLE = 220, @@ -1157,7 +1139,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_PROFILE_NON_DELETE = 223, @@ -1166,7 +1148,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_SMDP_ADDRESS_INCORRECT = 226, @@ -1175,7 +1157,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_ANALYZE_AUTHENTICATION_SERVER_RESPONSE_FAILED = 228, @@ -1184,7 +1166,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_ANALYZE_AUTHENTICATION_CLIENT_RESPONSE_FAILED = 229, @@ -1193,7 +1175,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_ANALYZE_AUTHENTICATION_CLIENT_MATCHING_ID_REFUSED = 231, @@ -1202,7 +1184,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_PROFILE_TYPE_ERROR_AUTHENTICATION_STOPPED = 233, @@ -1211,7 +1193,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_CARRIER_SERVER_REFUSED_ERRORS = 249, @@ -1220,7 +1202,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_CERTIFICATE_INVALID = 251, @@ -1229,7 +1211,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_OUT_OF_MEMORY = 263, @@ -1238,7 +1220,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_PPR_FORBIDDEN = 268, @@ -1247,7 +1229,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_NOTHING_TO_DELETE = 270, @@ -1256,7 +1238,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_PPR_NOT_MATCH = 276, @@ -1265,7 +1247,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_CAT_BUSY = 283, @@ -1274,7 +1256,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_PROFILE_EID_INVALID = 284, @@ -1283,7 +1265,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_DOWNLOAD_TIMEOUT = 287, @@ -1292,7 +1274,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ RESULT_SGP_22_OTHER = 400, } @@ -1303,7 +1285,7 @@ declare namespace eSIM { * @enum { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export enum CancelReason { /** @@ -1311,7 +1293,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ CANCEL_REASON_END_USER_REJECTION = 0, @@ -1320,7 +1302,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ CANCEL_REASON_POSTPONED = 1, @@ -1329,7 +1311,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ CANCEL_REASON_TIMEOUT = 2, @@ -1338,7 +1320,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ CANCEL_REASON_PPR_NOT_ALLOWED = 3, } @@ -1349,7 +1331,7 @@ declare namespace eSIM { * @enum { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export enum ProfileState { /** @@ -1357,7 +1339,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ PROFILE_STATE_UNSPECIFIED = -1, @@ -1366,7 +1348,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ PROFILE_STATE_DISABLED = 0, @@ -1375,7 +1357,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ PROFILE_STATE_ENABLED = 1, } @@ -1386,7 +1368,7 @@ declare namespace eSIM { * @enum { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export enum ProfileClass { /** @@ -1394,7 +1376,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ PROFILE_CLASS_UNSPECIFIED = -1, @@ -1403,7 +1385,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ PROFILE_CLASS_TEST = 0, @@ -1412,7 +1394,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ PROFILE_CLASS_PROVISIONING = 1, @@ -1421,7 +1403,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ PROFILE_CLASS_OPERATIONAL = 2, } @@ -1432,7 +1414,7 @@ declare namespace eSIM { * @enum { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export enum PolicyRules { /** @@ -1440,7 +1422,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ POLICY_RULE_DISABLE_NOT_ALLOWED = 1, @@ -1449,7 +1431,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ POLICY_RULE_DELETE_NOT_ALLOWED = 1 << 1, @@ -1458,7 +1440,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ POLICY_RULE_DISABLE_AND_DELETE = 1 << 2, } @@ -1469,7 +1451,7 @@ declare namespace eSIM { * @enum { number } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export enum SolvableErrors { /** @@ -1477,7 +1459,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ SOLVABLE_ERROR_NEED_CONFIRMATION_CODE = 1 << 0, @@ -1486,7 +1468,7 @@ declare namespace eSIM { * * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ SOLVABLE_ERROR_NEED_POLICY_RULE = 1 << 1, } @@ -1497,7 +1479,7 @@ declare namespace eSIM { * @interface DownloadConfiguration * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ export interface DownloadConfiguration { /** @@ -1506,7 +1488,7 @@ declare namespace eSIM { * @type { boolean } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ switchAfterDownload: boolean; @@ -1518,7 +1500,7 @@ declare namespace eSIM { * @type { boolean } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ forceDisableProfile: boolean; @@ -1529,7 +1511,7 @@ declare namespace eSIM { * @type { boolean } * @syscap SystemCapability.Telephony.CoreService.Esim * @systemapi Hide this for inner system use. - * @since 16 + * @since 18 */ isPprAllowed: boolean; } diff --git a/api/@ohos.telephony.radio.d.ts b/api/@ohos.telephony.radio.d.ts index 8a39228dd9b51e6b3547d46bfc7b4587446106ef..861032960859f6155fed3c54f82fd8828047b2da 100644 --- a/api/@ohos.telephony.radio.d.ts +++ b/api/@ohos.telephony.radio.d.ts @@ -169,6 +169,18 @@ declare namespace radio { */ function getRadioTech(slotId: number): Promise<NetworkRadioTech>; + /** + * Obtains radio access technology (RAT) of the registered network. + * + * @permission ohos.permission.GET_NETWORK_INFO + * @param { number } slotId - Indicates the card slot index number, + * ranging from 0 to the maximum card slot index number supported by the device. + * @returns { NetworkRadioTech } Returns the RAT of PS domain and CS domain of registered network. + * @syscap SystemCapability.Telephony.CoreService + * @since 18 + */ + function getRadioTechSync(slotId: number): NetworkRadioTech; + /** * Obtains the network state of the registered network. * @@ -194,6 +206,7 @@ declare namespace radio { * @permission ohos.permission.GET_NETWORK_INFO * @param { number } slotId - Indicates the card slot index number, * ranging from 0 to the maximum card slot index number supported by the device. + * if no slotId is provided, the default slotId is 0. * @returns { Promise<NetworkState> } Returns the NetworkState object. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. diff --git a/api/@ohos.test.PerfTest.d.ts b/api/@ohos.test.PerfTest.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..0ae947b6ff13e859118140237c89eeb663d4aad1 --- /dev/null +++ b/api/@ohos.test.PerfTest.d.ts @@ -0,0 +1,387 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit TestKit + */ + +import { Callback } from './@ohos.base'; + +/** + * Enumerates the metric type of performance test. + * + * @enum { number } + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ +declare enum PerfMetric { + /** + * Duration of the single execution, the unit is ms. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + DURATION = 0, + + /** + * Process CPU load during a single execution, the unit is %. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + CPU_LOAD = 1, + + /** + * Process CPU usage during a single execution, the unit is %. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + CPU_USAGE = 2, + + /** + * Memory change before and after a single execution, including the shared library, the unit is KB. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + MEMORY_RSS = 3, + + /** + * Memory change before and after a single execution, excluding shared libraries, the unit is KB. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + MEMORY_PSS = 4, + + /** + * Application start response delay, the unit is ms. + * Marks: + * 1) Delay calculation is restricted by system dotting reporting. The start time is the time when the click event is reported, + * and the end time of the response delay is the time when the system responds to the first frame after the click. + * It is different from the end-to-end user-perceived delay. + * 2) Application start delay can be collected in the following scenarios: clicking the application icon on the desktop; + * clicking the application on the Multi-Task Center; clicking the application icon on the Dock; + * clicking the application icon on the application center. + * 3) This metric does not support the test of current application. + * 4) During the test, only the data of the first startup of the specified application can be collected. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + APP_START_RESPONSE_TIME = 5, + + /** + * Application start completion delay, the unit is ms. + * Marks: + * 1) Delay calculation is restricted by system dotting reporting. The start time is the time when the click event is reported, + * and the end time of the completion delay is the time when the first frame is displayed after the application is started. + * It is different from the end-to-end user-perceived delay. + * 2) Application start delay can be collected in the following scenarios: clicking the application icon on the desktop; + * clicking the application on the Multi-Task Center; clicking the application icon on the Dock; + * clicking the application icon on the application center. + * 3) This metric does not support the test of current application. + * 4) During the test, only the data of the first start of specified application can be collected. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + APP_START_COMPLETE_TIME = 6, + + /** + * Page switching completion delay, the unit is ms. + * Marks: + * 1) Delay calculation is restricted by system dotting and reporting. The start time is the time when the click event is reported, + * and the end time of the completion delay is the time when the first frame is displayed after page is switched. + * It is different from the end-to-end user-perceived delay. + * 2) Page switching delay can be collected in the page switchover scenario of the Router or Navigation component. + * 3) During the test, only the data of the first page switching in specified application can be collected. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + PAGE_SWITCH_COMPLETE_TIME = 7, + + /** + * List sliding frame rate, the unit is fps. + * Mark: + * 1) List sliding frame rate: refers to the frequency at which the screen can be refreshed when the list is sliding. + * Only the sliding frame rate of the List, grid, scroll, and waterflow scroll components of ArKUI subsystems can be collected. + * 2) During the test, only the data of the first sliding of the component in specified application can be collected. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + LIST_SWIPE_FPS = 8, +} + +/** + * Test task execution strategy, which is used to initialize the PerfTest object in {@link PerfTest.create}. + * + * @typedef PerfTestStrategy + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ +declare interface PerfTestStrategy { + /** + * List of performance metrics to be collected. + * + * @type { Array<PerfMetric> } + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + metrics: Array<PerfMetric>; + + /** + * Code segment for performance testing. + * The input parameter type of actionCode is {@link Callback<boolean>}. As actionCode can be defined as asynchronous function, + * developers need to invoke this callback function when the execution of actionCode is complete, + * to help PerfTest identify the time when the execution of the actionCode is complete. + * For example, the input parameter callback function of actionCode is defined as "(finish: Callback<boolean>)". + * When actionCode is executed completly, "finish(true)" should be invoked, the value true indicates actionCode is successfully executed. + * When an exception occurs, "finish(false)" should be invoked, the value false indicates actionCode is unsuccessfully executed. + * + * @type { Callback<Callback<boolean>> } + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + actionCode: Callback<Callback<boolean>>; + + /** + * Reset code segment after each test. It is executed after {@link actionCode}. Data collection is not performed during this execution. + * The input parameter type of resetCode is {@link Callback<boolean>}. As resetCode can be defined as asynchronous function, + * developers need to invoke this callback function when the execution of resetCode is complete, + * to help PerfTest identify the time when the execution of the resetCode is complete. + * For example, the input parameter callback function of resetCode is defined as "(finish: Callback<boolean>)". + * When resetCode is executed completly, "finish(true)" should be invoked, the value true indicates resetCode is successfully executed. + * When an exception occurs, "finish(false)" should be invoked, the value false indicates resetCode is unsuccessfully executed. + * + * @type { ?Callback<Callback<boolean>> } + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + resetCode?: Callback<Callback<boolean>>; + + /** + * The package name of the application to be tested. The default value is the package name of current application. + * + * @type { ?string } + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + bundleName?: string; + + /** + * Iterations of the test, default is 5. + * + * @type { ?number } + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + iterations?: number; + + /** + * Timeout in millisecond for executing a single-time {@link actionCode} or {@link resetCode}, default is 10000. + * + * @type { ?number } + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + timeout?: number; +} + +/** + * Test results of specified performance metric. + * + * @typedef PerfMeasureResult + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ +declare interface PerfMeasureResult { + /** + * The metric this result belongs to. + * + * @type { PerfMetric } + * @readonly + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + readonly metric: PerfMetric; + + /** + * The round values of the specified metric in the test. + * + * @type { Array<number> } + * @readonly + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + readonly roundValues: Array<number>; + + /** + * The maximum of the specified metric in the test. + * + * @type { number } + * @readonly + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + readonly maximum: number; + + /** + * The minimum of the specified metric in the test. + * + * @type { number } + * @readonly + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + readonly minimum: number; + + /** + * The average of the specified metric in the test. + * + * @type { number } + * @readonly + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + readonly average: number; +} + +/** + * The unified facade of PerformanceTest framework, can be used to executing the performance test task. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ +declare class PerfTest { + /** + * Create an {@link PerfTest} object. + * + * @param { PerfTestStrategy } strategy - test task execution strategy. + * @returns { PerfTest } the {@link PerfTest} object. + * @throws { BusinessError } 32400001 - Initialization failed. + * @throws { BusinessError } 32400002 - Internal error. Possible causes: 1. IPC connection failed. 2. The object does not exist. + * @throws { BusinessError } 32400003 - Parameter verification failed. + * @throws { BusinessError } 32400007 - The API does not support concurrent calls. + * @static + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + static create(strategy: PerfTestStrategy): PerfTest; + + /** + * Start the performance test. + * + * @returns { Promise<void> } + * @throws { BusinessError } 32400002 - Internal error. Possible causes: 1. IPC connection failed. 2. The object does not exist. + * @throws { BusinessError } 32400004 - Failed to execute the callback. Possible causes: 1. An exception is thrown in the callback. 2. Callback execution timed out. + * @throws { BusinessError } 32400005 - Failed to collect metric data. + * @throws { BusinessError } 32400007 - The API does not support concurrent calls. + * + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + run(): Promise<void>; + + /** + * Get the test result of a specified performance metric. If no test result exist, -1 is returned for all results. + * + * @param { PerfMetric } metric - performance metric for which the result will be get. + * @returns { PerfMeasureResult } test results of specified performance metric. + * @throws { BusinessError } 32400002 - Internal error. Possible causes: 1. IPC connection failed. 2. The object does not exist. + * @throws { BusinessError } 32400003 - Parameter verification failed. + * @throws { BusinessError } 32400006 - Failed to obtain the measurement result. + * @throws { BusinessError } 32400007 - The API does not support concurrent calls. + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + getMeasureResult(metric: PerfMetric): PerfMeasureResult; + + /** + * Destroy the {@link PerfTest} object. + * @throws { BusinessError } 32400002 - Internal error. Possible causes: 1. IPC connection failed. 2. The object does not exist. + * @throws { BusinessError } 32400007 - The API does not support concurrent calls. + * @syscap SystemCapability.Test.PerfTest + * @atomicservice + * @since 20 + * @test + */ + destroy(): void; +} + +export { + PerfMetric, + PerfTestStrategy, + PerfMeasureResult, + PerfTest +}; diff --git a/api/@ohos.thermal.d.ts b/api/@ohos.thermal.d.ts index d5a8dd0429f674db2c1ffaff2f6300af6155f1a8..28c9b0938c8186484802bfb185ce17db896a3606 100644 --- a/api/@ohos.thermal.d.ts +++ b/api/@ohos.thermal.d.ts @@ -119,7 +119,6 @@ declare namespace thermal { * @param { Callback<ThermalLevel> } callback Callback of thermal level changes. * this param is a function type. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; - * @throws { BusinessError } 4800101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.ThermalManager * @since 9 */ @@ -141,7 +140,6 @@ declare namespace thermal { * * @param { Callback<void> } callback Callback of thermal level changes. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; - * @throws { BusinessError } 4800101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.ThermalManager * @since 9 */ @@ -162,7 +160,6 @@ declare namespace thermal { * Obtains the current thermal level. * * @returns { ThermalLevel } The thermal level. - * @throws { BusinessError } 4800101 - Failed to connect to the service. * @syscap SystemCapability.PowerManager.ThermalManager * @since 9 */ diff --git a/api/@ohos.uiAppearance.d.ts b/api/@ohos.uiAppearance.d.ts index 565c63ff0521b87e6a5d97bd8de2736917654a54..6754f3428ef29f93521dc2ace737bed7aa15917c 100644 --- a/api/@ohos.uiAppearance.d.ts +++ b/api/@ohos.uiAppearance.d.ts @@ -28,6 +28,13 @@ import type { AsyncCallback } from './@ohos.base'; * @systemapi hide this for inner system use * @since 10 */ + /** + * Provide APIs to set system uiAppearance. + * + * @namespace uiAppearance + * @syscap SystemCapability.ArkUI.UiAppearance + * @since 20 + */ declare namespace uiAppearance { /** * Enumerates dark-mode. @@ -37,6 +44,13 @@ declare namespace uiAppearance { * @systemapi hide this for inner system use * @since 10 */ + /** + * Enumerates dark-mode. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.UiAppearance + * @since 20 + */ enum DarkMode { /** * Always display with dark mode. @@ -45,6 +59,12 @@ declare namespace uiAppearance { * @systemapi hide this for inner system use * @since 10 */ + /** + * Always display with dark mode. + * + * @syscap SystemCapability.ArkUI.UiAppearance + * @since 20 + */ ALWAYS_DARK = 0, /** @@ -54,6 +74,12 @@ declare namespace uiAppearance { * @systemapi hide this for inner system use * @since 10 */ + /** + * Always display with light mode. + * + * @syscap SystemCapability.ArkUI.UiAppearance + * @since 20 + */ ALWAYS_LIGHT = 1 } @@ -108,6 +134,18 @@ declare namespace uiAppearance { * @systemapi hide this for inner system use * @since 10 */ + /** + * Acquire the current dark-mode. + * + * @returns { DarkMode } current dark-mode. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 500001 - Internal error. + * @syscap SystemCapability.ArkUI.UiAppearance + * @since 20 + */ function getDarkMode(): DarkMode; /** @@ -145,6 +183,18 @@ declare namespace uiAppearance { * @systemapi hide this for inner system use * @since 12 */ + /** + * Acquire the current font-scale. + * + * @returns { number } current font-scale. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 500001 - Internal error. + * @syscap SystemCapability.ArkUI.UiAppearance + * @since 20 + */ function getFontScale(): number; /** @@ -182,6 +232,18 @@ declare namespace uiAppearance { * @systemapi hide this for inner system use * @since 12 */ + /** + * Acquire the current font-weight-scale. + * + * @returns { number } current font-weight-scale. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 500001 - Internal error. + * @syscap SystemCapability.ArkUI.UiAppearance + * @since 20 + */ function getFontWeightScale(): number; } export default uiAppearance; diff --git a/api/@ohos.uiExtensionHost.d.ets b/api/@ohos.uiExtensionHost.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..01992c20ce246a75449ee96b436b2565105ce9f9 --- /dev/null +++ b/api/@ohos.uiExtensionHost.d.ets @@ -0,0 +1,289 @@ +/* + * Copyright (c) 2023-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + + +import { Callback } from './@ohos.base'; +import window from './@ohos.window'; +/** + * uiExtensionHost. + * + * @namespace uiExtensionHost + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + declare namespace uiExtensionHost { + /** + * Window Info + * + * @typedef WindowInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 16 + */ + export interface WindowInfo { + /** + * Type of the area. + * + * @typedef { window.AvoidAreaType } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 16 + */ + type: window.AvoidAreaType; + /** + * Area where the window cannot be displayed. + * + * @typedef { window.AvoidArea } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 16 + */ + area: window.AvoidArea; + } + + /** + * Transition Controller + * + * @interface UIExtensionHostWindowProxy + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + export interface UIExtensionHostWindowProxy { + /** + * Get the avoid area + * + * @param { window.AvoidAreaType } type - Type of the area + * @returns { window.AvoidArea } Area where the window cannot be displayed. + * @throws { BusinessError } 401 - Parameter error. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + getWindowAvoidArea(type: window.AvoidAreaType): window.AvoidArea; + + /** + * Register the callback of avoidAreaChange + * + * @param { 'avoidAreaChange' } type - The value is fixed at 'avoidAreaChange', indicating the event of changes to the avoid area. + * @param { Callback<{ type: window.AvoidAreaType, area: window.AvoidArea }> } callback - Callback used to return the area. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + /** + * Register the callback of avoidAreaChange + * + * @param { 'avoidAreaChange' } type - The value is fixed at 'avoidAreaChange', indicating the event of changes to the avoid area. + * @param { Callback<WindowInfo> } callback - Callback used to return the area. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 16 + */ + // on(type: 'avoidAreaChange', callback: Callback<WindowInfo>): void; + on<T>(type: string, callback: Callback<T>):void; + + /** + * Unregister the callback of avoidAreaChange + * + * @param { 'avoidAreaChange' } type - The value is fixed at 'avoidAreaChange', indicating the event of changes to the avoid area. + * @param { Callback<{ type: window.AvoidAreaType, area: window.AvoidArea }> } callback - Callback used to return the area. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + /** + * Unregister the callback of avoidAreaChange + * + * @param { 'avoidAreaChange' } type - The value is fixed at 'avoidAreaChange', indicating the event of changes to the avoid area. + * @param { Callback<WindowInfo> } callback - Callback used to return the area. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 16 + */ + // off(type: 'avoidAreaChange', callback?: Callback<WindowInfo>): void; + off<T>(type: string, callback?: Callback<T>): void; + + /** + * Register the callback of windowSizeChange + * + * @param { 'windowSizeChange' } type - The value is fixed at 'windowSizeChange', indicating the window size change event. + * @param { Callback<window.Size> } callback - Callback used to return the window size. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + // on(type: 'windowSizeChange', callback: Callback<window.Size>): void; + + /** + * Unregister the callback of windowSizeChange + * + * @param { 'windowSizeChange' } type - The value is fixed at 'windowSizeChange', indicating the window size change event. + * @param { Callback<window.Size> } callback - Callback used to return the window size. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + // off(type: 'windowSizeChange', callback?: Callback<window.Size>): void; + + /** + * The properties of the UIExtension window + * + * @type { UIExtensionHostWindowProxyProperties } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + properties: UIExtensionHostWindowProxyProperties; + + /** + * Hide the non-secure windows + * + * @param { boolean } shouldHide - Hide the non-secure windows if true, otherwise means the opposite. + * @returns { Promise<void> } - The promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + /** + * Hide the non-secure windows. + * When called by modal UIExtension and shouldHide == false, the "ohos.permission.ALLOW_SHOW_NON_SECURE_WINDOWS" permission is required. + * + * @permission ohos.permission.ALLOW_SHOW_NON_SECURE_WINDOWS + * @param { boolean } shouldHide - Hide the non-secure windows if true, otherwise means the opposite. + * @returns { Promise<void> } - The promise returned by the function. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 1300002 - Abnormal state. Possible causes: + * <br> 1. Permission denied. Interface caller does not have permission "ohos.permission.ALLOW_SHOW_NON_SECURE_WINDOWS". + * <br> 2. The UIExtension window proxy is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + hideNonSecureWindows(shouldHide: boolean): Promise<void>; + + /** + * Create sub window. + * + * @param { string } name - window name of sub window + * @param { window.SubWindowOptions } subWindowOptions - options of sub window creation + * @returns { Promise<window.Window> } Promise used to return the subwindow. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300005 - This window proxy is abnormal. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @StageModelOnly + * @since 12 + */ + createSubWindowWithOptions(name: string, subWindowOptions: window.SubWindowOptions): Promise<window.Window>; + + /** + * Set the watermark flag on the UIExtension window + * + * @param { boolean } enable - Add water mark flag to the UIExtension window if true, or remove flag if false + * @returns { Promise<void> } - The promise returned by the function + * @throws { BusinessError } 1300002 - The UIExtension window proxy is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300008 - The display device is abnormal. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 12 + */ + setWaterMarkFlag(enable: boolean): Promise<void>; + + /** + * Hide the display content when snapshot. + * + * @param { boolean } shouldHide - Hide the display content of UIExtensionAbility when the host application takes snapshots if true, + * otherwise means the opposite. + * @returns { Promise<void> } - The promise returned by the function. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br> 1. Mandatory parameters are left unspecified. + * <br> 2. Incorrect parameters types. + * <br> 3. Parameter verification failed. + * @throws { BusinessError } 1300002 - Abnormal state. Possible causes: + * <br> 1. The UIExtension window proxy is abnormal. + * <br> 2. Not the UIExtensionAbility process calling. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 13 + */ + hidePrivacyContentForHost(shouldHide: boolean): Promise<void>; + } + + /** + * Properties of UIExtension window + * + * @interface UIExtensionHostWindowProxyProperties + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + export interface UIExtensionHostWindowProxyProperties { + /** + * The position and size of the UIExtension window + * + * @type { window.Rect } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @systemapi + * @since 11 + */ + uiExtensionHostWindowProxyRect: window.Rect; + } +} +export default uiExtensionHost; \ No newline at end of file diff --git a/api/@ohos.uiExtensionHost.d.ts b/api/@ohos.uiExtensionHost.d.ts index 61d299c116e4f1890650c42402966f40e426e053..12b73d66a13f54ef5433dda6a6e3ba6cf43b5c6a 100644 --- a/api/@ohos.uiExtensionHost.d.ts +++ b/api/@ohos.uiExtensionHost.d.ts @@ -168,7 +168,6 @@ declare namespace uiExtensionHost { * <br> 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window proxy is abnormal. * @syscap SystemCapability.ArkUI.ArkUI.Full * @systemapi * @StageModelOnly diff --git a/api/@ohos.update.d.ts b/api/@ohos.update.d.ts index 8f6b97e8d4e6719d328c67f8d3df700db36de4ea..3966e6a81651b8f643d69539005bd3bf4ae2a718 100644 --- a/api/@ohos.update.d.ts +++ b/api/@ohos.update.d.ts @@ -936,6 +936,16 @@ declare namespace update { * @since 9 */ descriptionInfo: DescriptionInfo; + + /** + * Ota mode + * + * @type { ?OtaMode } + * @syscap SystemCapability.Update.UpdateService + * @systemapi hide for inner use. + * @since 20 + */ + otaMode?: OtaMode } /** @@ -1621,6 +1631,52 @@ declare namespace update { LIVE_AND_COLD = 3 } + /** + * Enumerates ota mode. + * + * @enum { number } + * @syscap SystemCapability.Update.UpdateService + * @systemapi hide for inner use. + * @since 20 + */ + export enum OtaMode { + /** + * Regular update. + * + * @syscap SystemCapability.Update.UpdateService + * @systemapi hide for inner use. + * @since 20 + */ + REGULAR_OTA = 0, + + /** + * Stream update. + * + * @syscap SystemCapability.Update.UpdateService + * @systemapi hide for inner use. + * @since 20 + */ + STREAM_OTA = 1, + + /** + * AB regular update. + * + * @syscap SystemCapability.Update.UpdateService + * @systemapi hide for inner use. + * @since 20 + */ + AB_REGULAR_OTA = 2, + + /** + * AB stream update. + * + * @syscap SystemCapability.Update.UpdateService + * @systemapi hide for inner use. + * @since 20 + */ + AB_STREAM_OTA = 3 + } + /** * Enumerates description type. * diff --git a/api/@ohos.uri.d.ts b/api/@ohos.uri.d.ts index 99378486aca3472d6405002a640c3d035ccec8dc..0567d481bbb064f95e67eff90c5ec0b6c675ef17 100644 --- a/api/@ohos.uri.d.ts +++ b/api/@ohos.uri.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace uri { /** @@ -64,7 +65,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 * @name URI */ class URI { @@ -108,7 +110,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(uri: string); /** @@ -133,7 +136,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ toString(): string; @@ -183,7 +187,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ equalsTo(other: URI): boolean; @@ -209,7 +214,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ checkIsAbsolute(): boolean; @@ -235,7 +241,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ normalize(): URI; /** @@ -252,6 +259,21 @@ declare namespace uri { * @since 12 */ getQueryValue(key: string): string; + /** + * Searches the query string for the first value with the given key. + * + * @param { string } key - Given the first value of the key. + * @returns { string | null } Return decoded value, If no corresponding value is found return a null object. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getQueryValue(key: string): string | null; /** * Encodes the key and value and then appends the result to the query string. * @@ -264,7 +286,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ addQueryValue(key: string, value: string): URI; /** @@ -277,6 +300,17 @@ declare namespace uri { * @since 12 */ getQueryNames(): string[]; + /** + * Returns a set of the unique names of all query parameters. + * + * @returns { Array<string> } Return a set of decoded names. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getQueryNames(): Array<string>; /** * Searches the query string for parameter values with the given key. * @@ -291,6 +325,19 @@ declare namespace uri { * @since 12 */ getQueryValues(key: string): string[]; + + /** + * Searches the query string for parameter values with the given key. + * + * @param { string } key - The key it will be encoded with. + * @returns { Array<string> } Return a set of decoded values. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getQueryValues(key: string): Array<string>; /** * Searches the query string for the first value with the given key and interprets it as a boolean value. * @@ -303,7 +350,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getBooleanQueryValue(key: string, defaultValue: boolean): boolean; /** @@ -313,7 +361,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clearQuery(): URI; /** @@ -323,7 +372,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getLastSegment(): string; /** @@ -336,6 +386,17 @@ declare namespace uri { * @since 12 */ getSegment(): string[]; + /** + * Gets the decoded path segments. + * + * @returns { Array<string> } Return decoded path segments, each without a leading or trailing "/". + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getSegment(): Array<string>; /** * Encodes the given path segment and appends it to the path. * @@ -347,7 +408,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ addSegment(pathSegment: string): URI; /** @@ -361,7 +423,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ addEncodedSegment(pathSegment: string): URI; /** @@ -371,7 +434,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ checkHierarchical(): boolean; /** @@ -381,7 +445,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ checkOpaque(): boolean; /** @@ -391,7 +456,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ checkRelative(): boolean; /** @@ -408,7 +474,8 @@ declare namespace uri { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ static createFromParts(scheme: string, ssp: string, fragment: string): URI; /** @@ -768,6 +835,334 @@ declare namespace uri { * @since 12 */ encodedSSP: string; + /** + * Gets the protocol part of the URI. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get scheme(): string | null; + + /** + * Sets the protocol part of the URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set scheme(input: string | null); + + /** + * Gets Obtains the user information part of the URI. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get userInfo(): string | null; + + /** + * Sets Obtains the user information part of the URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set userInfo(input: string | null); + + /** + * Gets the hostname portion of the URI without a port. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @since 20 + * @arkts 1.2 + */ + get host(): string | null; + + /** + * Gets the port portion of the URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 20 + * @arkts 1.2 + */ + get port(): string; + + /** + * Gets the path portion of the URI. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get path(): string | null; + + /** + * Sets the path portion of the URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set path(input: string | null); + + /** + * Gets the query portion of the URI + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get query(): string | null; + + /** + * Sets the query portion of the URI + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set query(input: string | null); + + /** + * Gets the fragment part of the URI. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get fragment(): string | null; + + /** + * Sets the fragment part of the URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set fragment(input: string | null); + + /** + * Gets the decoding permission component part of this URI. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get authority(): string | null; + + /** + * Sets the decoding permission component part of this URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set authority(input: string | null); + + /** + * Gets the decoding scheme-specific part of the URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get ssp(): string; + + /** + * Sets the decoding scheme-specific part of the URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set ssp(input: string | null); + + /** + * Gets Obtains the encoded user information part of the URI. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get encodedUserInfo(): string | null; + /** + * Sets Obtains the encoded user information part of the URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set encodedUserInfo(input: string | null); + + /** + * Gets the encoded path portion of the URI. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get encodedPath(): string | null; + /** + * Sets the encoded path portion of the URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set encodedPath(input: string | null); + + /** + * Gets the encoded query component from this URI. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get encodedQuery(): string | null; + /** + * Sets the encoded query component from this URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set encodedQuery(input: string | null); + + /** + * Gets the encoded fragment part of this URI, everything after the '#'. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get encodedFragment(): string | null; + /** + * Sets the encoded fragment part of this URI, everything after the '#'. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set encodedFragment(input: string | null); + + /** + * Gets the encoded authority part of this URI. + * + * @type { string | null } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get encodedAuthority(): string | null; + /** + * Sets the encoded authority part of this URI. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set encodedAuthority(input: string | null); + + /** + * Gets the scheme-specific part of this URI, i.e. everything between the scheme separator ':' and + * the fragment separator '#'. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get encodedSSP(): string; + + /** + * Sets the scheme-specific part of this URI, i.e. everything between the scheme separator ':' and + * the fragment separator '#'. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set encodedSSP(input: string | null); } } export default uri; diff --git a/api/@ohos.url.d.ts b/api/@ohos.url.d.ts index 41550b4dddd35ed53bc3aa1f3a83628747268078..228d1458347110dcb4b794d3bd2795f177c900c3 100644 --- a/api/@ohos.url.d.ts +++ b/api/@ohos.url.d.ts @@ -40,1210 +40,1578 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace url { - /** - * The URLSearchParams interface defines some practical methods to process URL query strings. - * - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams - * @name URLSearchParams - */ - class URLSearchParams { /** - * A parameterized constructor used to create an URLSearchParams instance. - * As the input parameter of the constructor function, init supports four types. - * The input parameter is a character string two-dimensional array. - * The input parameter is the object list. - * The input parameter is a character string. - * The input parameter is the URLSearchParams object. + * The URLSearchParams interface defines some practical methods to process URL query strings. * - * @param { string[][] | Record<string, string> | string | URLSearchParams } init - init init * @syscap SystemCapability.Utils.Lang * @since 7 * @deprecated since 9 - * @useinstead ohos.url.URLParams.constructor - */ - constructor(init?: string[][] | Record<string, string> | string | URLSearchParams); + * @useinstead ohos.url.URLParams + * @name URLSearchParams + */ + class URLSearchParams { + /** + * A parameterized constructor used to create an URLSearchParams instance. + * As the input parameter of the constructor function, init supports four types. + * The input parameter is a character string two-dimensional array. + * The input parameter is the object list. + * The input parameter is a character string. + * The input parameter is the URLSearchParams object. + * + * @param { string[][] | Record<string, string> | string | URLSearchParams } init - init init + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.constructor + */ + constructor(init?: string[][] | Record<string, string> | string | URLSearchParams); - /** - * Appends a specified key/value pair as a new search parameter. - * - * @param { string } name - name name Key name of the search parameter to be inserted. - * @param { string } value - value value Values of search parameters to be inserted. - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.append - */ - append(name: string, value: string): void; + /** + * Appends a specified key/value pair as a new search parameter. + * + * @param { string } name - name name Key name of the search parameter to be inserted. + * @param { string } value - value value Values of search parameters to be inserted. + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.append + */ + append(name: string, value: string): void; - /** - * Deletes the given search parameter and its associated value,from the list of all search parameters. - * - * @param { string } name - name name Name of the key-value pair to be deleted. - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.delete - */ - delete(name: string): void; + /** + * Deletes the given search parameter and its associated value,from the list of all search parameters. + * + * @param { string } name - name name Name of the key-value pair to be deleted. + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.delete + */ + delete(name: string): void; - /** - * Returns all key-value pairs associated with a given search parameter as an array. - * - * @param { string } name - name name Specifies the name of a key value. - * @returns { string[] } string[] Returns all key-value pairs with the specified name. - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.getAll - */ - getAll(name: string): string[]; + /** + * Returns all key-value pairs associated with a given search parameter as an array. + * + * @param { string } name - name name Specifies the name of a key value. + * @returns { string[] } string[] Returns all key-value pairs with the specified name. + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.getAll + */ + getAll(name: string): string[]; - /** - * Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. - * The first item of Array is name, and the second item of Array is value. - * - * @returns { IterableIterator<[string, string]> } Returns an iterator for ES6. - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.entries - */ - entries(): IterableIterator<[string, string]>; + /** + * Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. + * The first item of Array is name, and the second item of Array is value. + * + * @returns { IterableIterator<[string, string]> } Returns an iterator for ES6. + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.entries + */ + entries(): IterableIterator<[string, string]>; - /** - * Callback functions are used to traverse key-value pairs on the URLSearchParams instance object. - * - * @param { function } callbackFn - callbackFn callbackFn Current traversal key value. - * @param { Object } thisArg - thisArg thisArg thisArg to be used as this value for when callbackFn is called - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.forEach - */ - forEach(callbackFn: (value: string, key: string, searchParams: URLSearchParams) => void, thisArg?: Object): void; + /** + * Callback functions are used to traverse key-value pairs on the URLSearchParams instance object. + * + * @param { function } callbackFn - callbackFn callbackFn Current traversal key value. + * @param { Object } thisArg - thisArg thisArg thisArg to be used as this value for when callbackFn is called + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.forEach + */ + forEach(callbackFn: (value: string, key: string, searchParams: URLSearchParams) => void, thisArg?: Object): void; - /** - * Returns the first value associated to the given search parameter. - * - * @param { string } name - name name Specifies the name of a key-value pair. - * @returns { string | null } Returns the first value found by name. If no value is found, null is returned. - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.get - */ - get(name: string): string | null; + /** + * Returns the first value associated to the given search parameter. + * + * @param { string } name - name name Specifies the name of a key-value pair. + * @returns { string | null } Returns the first value found by name. If no value is found, null is returned. + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.get + */ + get(name: string): string | null; - /** - * Returns a Boolean that indicates whether a parameter with the specified name exists. - * - * @param { string } name - name name Specifies the name of a key-value pair. - * @returns { boolean } Returns a Boolean value that indicates whether a found - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.has - */ - has(name: string): boolean; + /** + * Returns a Boolean that indicates whether a parameter with the specified name exists. + * + * @param { string } name - name name Specifies the name of a key-value pair. + * @returns { boolean } Returns a Boolean value that indicates whether a found + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.has + */ + has(name: string): boolean; - /** - * Sets the value associated with a given search parameter to the - * given value. If there were several matching values, this method - * deletes the others. If the search parameter doesn't exist, this - * method creates it. - * - * @param { string } name - name name Key name of the parameter to be set. - * @param { string } value - value value Indicates the parameter value to be set. - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.set - */ - set(name: string, value: string): void; + /** + * Sets the value associated with a given search parameter to the + * given value. If there were several matching values, this method + * deletes the others. If the search parameter doesn't exist, this + * method creates it. + * + * @param { string } name - name name Key name of the parameter to be set. + * @param { string } value - value value Indicates the parameter value to be set. + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.set + */ + set(name: string, value: string): void; - /** - * Sort all key/value pairs contained in this object in place and return undefined. - * - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.sort - */ - sort(): void; + /** + * Sort all key/value pairs contained in this object in place and return undefined. + * + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.sort + */ + sort(): void; - /** - * Returns an iterator allowing to go through all keys contained in this object. - * - * @returns { IterableIterator<string> } Returns an ES6 Iterator over the names of each name-value pair. - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.keys - */ - keys(): IterableIterator<string>; + /** + * Returns an iterator allowing to go through all keys contained in this object. + * + * @returns { IterableIterator<string> } Returns an ES6 Iterator over the names of each name-value pair. + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.keys + */ + keys(): IterableIterator<string>; - /** - * Returns an iterator allowing to go through all values contained in this object. - * - * @returns { IterableIterator<string> } Returns an ES6 Iterator over the values of each name-value pair. - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.values - */ - values(): IterableIterator<string>; + /** + * Returns an iterator allowing to go through all values contained in this object. + * + * @returns { IterableIterator<string> } Returns an ES6 Iterator over the values of each name-value pair. + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.values + */ + values(): IterableIterator<string>; - /** - * Returns an iterator allowing to go through all key/value - * pairs contained in this object. - * @returns { IterableIterator<[string, string]> } Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. - * The first item of Array is name, and the second item of Array is value. - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.[Symbol.iterator] - */ - [Symbol.iterator](): IterableIterator<[string, string]>; + /** + * Returns an iterator allowing to go through all key/value + * pairs contained in this object. + * @returns { IterableIterator<[string, string]> } Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. + * The first item of Array is name, and the second item of Array is value. + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.[Symbol.iterator] + */ + [Symbol.iterator](): IterableIterator<[string, string]>; - /** - * Returns a query string suitable for use in a URL. - * - * @returns { string } Returns a search parameter serialized as a string, percent-encoded if necessary. - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URLParams.toString - */ - toString(): string; - } - - /** - * The URLParams interface defines some practical methods to process URL query strings. - * - * @syscap SystemCapability.Utils.Lang - * @since 9 - * @name URLParams - */ - /** - * The URLParams interface defines some practical methods to process URL query strings. - * - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - * @name URLParams - */ - /** - * The URLParams interface defines some practical methods to process URL query strings. - * - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - * @name URLParams - */ - class URLParams { - /** - * A parameterized constructor used to create an URLParams instance. - * As the input parameter of the constructor function, init supports four types. - * The input parameter is a character string two-dimensional array. - * The input parameter is the object list. - * The input parameter is a character string. - * The input parameter is the URLParams object. - * - * @param { string[][] | Record<string, string> | string | URLParams } [init] - init init - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * A parameterized constructor used to create an URLParams instance. - * As the input parameter of the constructor function, init supports four types. - * The input parameter is a character string two-dimensional array. - * The input parameter is the object list. - * The input parameter is a character string. - * The input parameter is the URLParams object. - * - * @param { string[][] | Record<string, string> | string | URLParams } [init] - init init - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * A parameterized constructor used to create an URLParams instance. - * As the input parameter of the constructor function, init supports four types. - * The input parameter is a character string two-dimensional array. - * The input parameter is the object list. - * The input parameter is a character string. - * The input parameter is the URLParams object. - * - * @param { string[][] | Record<string, string> | string | URLParams } [init] - init init - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - constructor(init?: string[][] | Record<string, string> | string | URLParams); + /** + * Returns a query string suitable for use in a URL. + * + * @returns { string } Returns a search parameter serialized as a string, percent-encoded if necessary. + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URLParams.toString + */ + toString(): string; + } /** - * Appends a specified key/value pair as a new search parameter. + * The URLParams interface defines some practical methods to process URL query strings. * - * @param { string } name - name name Key name of the search parameter to be inserted. - * @param { string } value - value value Values of search parameters to be inserted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. * @syscap SystemCapability.Utils.Lang * @since 9 + * @name URLParams */ /** - * Appends a specified key/value pair as a new search parameter. + * The URLParams interface defines some practical methods to process URL query strings. * - * @param { string } name - name name Key name of the search parameter to be inserted. - * @param { string } value - value value Values of search parameters to be inserted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. * @syscap SystemCapability.Utils.Lang * @crossplatform * @since 10 + * @name URLParams */ /** - * Appends a specified key/value pair as a new search parameter. + * The URLParams interface defines some practical methods to process URL query strings. * - * @param { string } name - name name Key name of the search parameter to be inserted. - * @param { string } value - value value Values of search parameters to be inserted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 - */ - append(name: string, value: string): void; + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + * @name URLParams + */ + class URLParams { + /** + * A parameterized constructor used to create an URLParams instance. + * As the input parameter of the constructor function, init supports four types. + * The input parameter is a character string two-dimensional array. + * The input parameter is the object list. + * The input parameter is a character string. + * The input parameter is the URLParams object. + * + * @param { string[][] | Record<string, string> | string | URLParams } [init] - init init + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * A parameterized constructor used to create an URLParams instance. + * As the input parameter of the constructor function, init supports four types. + * The input parameter is a character string two-dimensional array. + * The input parameter is the object list. + * The input parameter is a character string. + * The input parameter is the URLParams object. + * + * @param { string[][] | Record<string, string> | string | URLParams } [init] - init init + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * A parameterized constructor used to create an URLParams instance. + * As the input parameter of the constructor function, init supports four types. + * The input parameter is a character string two-dimensional array. + * The input parameter is the object list. + * The input parameter is a character string. + * The input parameter is the URLParams object. + * + * @param { string[][] | Record<string, string> | string | URLParams } [init] - init init + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types; 2.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + constructor(init?: string[][] | Record<string, string> | string | URLParams); - /** - * Deletes the given search parameter and its associated value,from the list of all search parameters. - * - * @param { string } name - name name Name of the key-value pair to be deleted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Deletes the given search parameter and its associated value,from the list of all search parameters. - * - * @param { string } name - name name Name of the key-value pair to be deleted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Deletes the given search parameter and its associated value,from the list of all search parameters. - * - * @param { string } name - name name Name of the key-value pair to be deleted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - delete(name: string): void; + /** + * A parameterized constructor used to create an URLParams instance. + * As the input parameter of the constructor function, init supports four types. + * The input parameter is a character string two-dimensional array. + * The input parameter is the object list. + * The input parameter is a character string. + * The input parameter is the URLParams object. + * + * @param { [string, string][] | Record<string, string> | string | URLParams } [init] - init init + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + constructor(init?: [string, string][] | Record<string, string> | string | URLParams); - /** - * Returns all key-value pairs associated with a given search parameter as an array. - * - * @param { string } name - name name Specifies the name of a key value. - * @returns { string[] } string[] Returns all key-value pairs with the specified name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Returns all key-value pairs associated with a given search parameter as an array. - * - * @param { string } name - name name Specifies the name of a key value. - * @returns { string[] } string[] Returns all key-value pairs with the specified name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Returns all key-value pairs associated with a given search parameter as an array. - * - * @param { string } name - name name Specifies the name of a key value. - * @returns { string[] } string[] Returns all key-value pairs with the specified name. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - getAll(name: string): string[]; + /** + * Appends a specified key/value pair as a new search parameter. + * + * @param { string } name - name name Key name of the search parameter to be inserted. + * @param { string } value - value value Values of search parameters to be inserted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Appends a specified key/value pair as a new search parameter. + * + * @param { string } name - name name Key name of the search parameter to be inserted. + * @param { string } value - value value Values of search parameters to be inserted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Appends a specified key/value pair as a new search parameter. + * + * @param { string } name - name name Key name of the search parameter to be inserted. + * @param { string } value - value value Values of search parameters to be inserted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + append(name: string, value: string): void; - /** - * Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. - * The first item of Array is name, and the second item of Array is value. - * - * @returns { IterableIterator<[string, string]> } Returns an iterator for ES6. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. - * The first item of Array is name, and the second item of Array is value. - * - * @returns { IterableIterator<[string, string]> } Returns an iterator for ES6. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. - * The first item of Array is name, and the second item of Array is value. - * - * @returns { IterableIterator<[string, string]> } Returns an iterator for ES6. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - entries(): IterableIterator<[string, string]>; + /** + * Deletes the given search parameter and its associated value,from the list of all search parameters. + * + * @param { string } name - name name Name of the key-value pair to be deleted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Deletes the given search parameter and its associated value,from the list of all search parameters. + * + * @param { string } name - name name Name of the key-value pair to be deleted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Deletes the given search parameter and its associated value,from the list of all search parameters. + * + * @param { string } name - name name Name of the key-value pair to be deleted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + delete(name: string): void; - /** - * Callback functions are used to traverse key-value pairs on the URLParams instance object. - * - * @param { function } callbackFn - callbackFn value Current traversal key value, - * key Indicates the name of the key that is traversed. - * @param { Object } [thisArg] - thisArg thisArg to be used as this value for when callbackFn is called - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Callback functions are used to traverse key-value pairs on the URLParams instance object. - * - * @param { function } callbackFn - callbackFn value Current traversal key value, - * key Indicates the name of the key that is traversed. - * @param { Object } [thisArg] - thisArg thisArg to be used as this value for when callbackFn is called - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Callback functions are used to traverse key-value pairs on the URLParams instance object. - * - * @param { function } callbackFn - callbackFn value Current traversal key value, - * key Indicates the name of the key that is traversed. - * @param { Object } [thisArg] - thisArg thisArg to be used as this value for when callbackFn is called - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - forEach(callbackFn: (value: string, key: string, searchParams: URLParams) => void, thisArg?: Object): void; + /** + * Returns all key-value pairs associated with a given search parameter as an array. + * + * @param { string } name - name name Specifies the name of a key value. + * @returns { string[] } string[] Returns all key-value pairs with the specified name. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Returns all key-value pairs associated with a given search parameter as an array. + * + * @param { string } name - name name Specifies the name of a key value. + * @returns { string[] } string[] Returns all key-value pairs with the specified name. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Returns all key-value pairs associated with a given search parameter as an array. + * + * @param { string } name - name name Specifies the name of a key value. + * @returns { string[] } string[] Returns all key-value pairs with the specified name. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + getAll(name: string): string[]; - /** - * Returns the first value associated to the given search parameter. - * - * @param { string } name - name name Specifies the name of a key-value pair. - * @returns { string | null } Returns the first value found by name. If no value is found, null is returned. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Returns the first value associated to the given search parameter. - * - * @param { string } name - name name Specifies the name of a key-value pair. - * @returns { string | null } Returns the first value found by name. If no value is found, null is returned. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Returns the first value associated to the given search parameter. - * - * @param { string } name - name name Specifies the name of a key-value pair. - * @returns { string | null } Returns the first value found by name. If no value is found, null is returned. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - get(name: string): string | null; + /** + * Returns all key-value pairs associated with a given search parameter as an array. + * + * @param { string } name - name name Specifies the name of a key value. + * @returns { Array<string> } Array<string> Returns all key-value pairs with the specified name. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getAll(name: string): Array<string>; - /** - * Returns a Boolean that indicates whether a parameter with the specified name exists. - * - * @param { string } name - name name Specifies the name of a key-value pair. - * @returns { boolean } Returns a Boolean value that indicates whether a found - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Returns a Boolean that indicates whether a parameter with the specified name exists. - * - * @param { string } name - name name Specifies the name of a key-value pair. - * @returns { boolean } Returns a Boolean value that indicates whether a found - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Returns a Boolean that indicates whether a parameter with the specified name exists. - * - * @param { string } name - name name Specifies the name of a key-value pair. - * @returns { boolean } Returns a Boolean value that indicates whether a found - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - has(name: string): boolean; + /** + * Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. + * The first item of Array is name, and the second item of Array is value. + * + * @returns { IterableIterator<[string, string]> } Returns an iterator for ES6. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. + * The first item of Array is name, and the second item of Array is value. + * + * @returns { IterableIterator<[string, string]> } Returns an iterator for ES6. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. + * The first item of Array is name, and the second item of Array is value. + * + * @returns { IterableIterator<[string, string]> } Returns an iterator for ES6. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + entries(): IterableIterator<[string, string]>; + + /** + * Callback functions are used to traverse key-value pairs on the URLParams instance object. + * + * @param { function } callbackFn - callbackFn value Current traversal key value, + * key Indicates the name of the key that is traversed. + * @param { Object } [thisArg] - thisArg thisArg to be used as this value for when callbackFn is called + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Callback functions are used to traverse key-value pairs on the URLParams instance object. + * + * @param { function } callbackFn - callbackFn value Current traversal key value, + * key Indicates the name of the key that is traversed. + * @param { Object } [thisArg] - thisArg thisArg to be used as this value for when callbackFn is called + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Callback functions are used to traverse key-value pairs on the URLParams instance object. + * + * @param { function } callbackFn - callbackFn value Current traversal key value, + * key Indicates the name of the key that is traversed. + * @param { Object } [thisArg] - thisArg thisArg to be used as this value for when callbackFn is called + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + forEach(callbackFn: (value: string, key: string, searchParams: URLParams) => void, thisArg?: Object): void; + + /** + * Iterates over a collection (e.g., URLs) and executes a callback function for each element. + * + * @param { UrlCbFn } callbackFn - A callback function to execute for each element. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackFn: UrlCbFn): void; + + /** + * Returns the first value associated to the given search parameter. + * + * @param { string } name - name name Specifies the name of a key-value pair. + * @returns { string | null } Returns the first value found by name. If no value is found, null is returned. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Returns the first value associated to the given search parameter. + * + * @param { string } name - name name Specifies the name of a key-value pair. + * @returns { string | null } Returns the first value found by name. If no value is found, null is returned. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Returns the first value associated to the given search parameter. + * + * @param { string } name - name name Specifies the name of a key-value pair. + * @returns { string | null } Returns the first value found by name. If no value is found, null is returned. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + get(name: string): string | null; + + /** + * Returns the first value associated to the given search parameter. + * + * @param { string } name - name name Specifies the name of a key-value pair. + * @returns { string | undefined } Returns the first value found by name. + * If no value is found, undefined is returned. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get(name: string): string | undefined; + + /** + * Returns a Boolean that indicates whether a parameter with the specified name exists. + * + * @param { string } name - name name Specifies the name of a key-value pair. + * @returns { boolean } Returns a Boolean value that indicates whether a found + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Returns a Boolean that indicates whether a parameter with the specified name exists. + * + * @param { string } name - name name Specifies the name of a key-value pair. + * @returns { boolean } Returns a Boolean value that indicates whether a found + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Returns a Boolean that indicates whether a parameter with the specified name exists. + * + * @param { string } name - name name Specifies the name of a key-value pair. + * @returns { boolean } Returns a Boolean value that indicates whether a found + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + has(name: string): boolean; + + /** + * Sets the value associated with a given search parameter to the + * given value. If there were several matching values, this method + * deletes the others. If the search parameter doesn't exist, this + * method creates it. + * + * @param { string } name - name name Key name of the parameter to be set. + * @param { string } value - value value Indicates the parameter value to be set. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Sets the value associated with a given search parameter to the + * given value. If there were several matching values, this method + * deletes the others. If the search parameter doesn't exist, this + * method creates it. + * + * @param { string } name - name name Key name of the parameter to be set. + * @param { string } value - value value Indicates the parameter value to be set. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Sets the value associated with a given search parameter to the + * given value. If there were several matching values, this method + * deletes the others. If the search parameter doesn't exist, this + * method creates it. + * + * @param { string } name - name name Key name of the parameter to be set. + * @param { string } value - value value Indicates the parameter value to be set. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + set(name: string, value: string): void; + + /** + * Sort all key/value pairs contained in this object in place and return undefined. + * + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Sort all key/value pairs contained in this object in place and return undefined. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Sort all key/value pairs contained in this object in place and return undefined. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + sort(): void; + + /** + * Returns an iterator allowing to go through all keys contained in this object. + * + * @returns { IterableIterator<string> } Returns an ES6 Iterator over the names of each name-value pair. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Returns an iterator allowing to go through all keys contained in this object. + * + * @returns { IterableIterator<string> } Returns an ES6 Iterator over the names of each name-value pair. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Returns an iterator allowing to go through all keys contained in this object. + * + * @returns { IterableIterator<string> } Returns an ES6 Iterator over the names of each name-value pair. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + keys(): IterableIterator<string>; + + /** + * Returns an iterator allowing to go through all values contained in this object. + * + * @returns { IterableIterator<string> } Returns an ES6 Iterator over the values of each name-value pair. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Returns an iterator allowing to go through all values contained in this object. + * + * @returns { IterableIterator<string> } Returns an ES6 Iterator over the values of each name-value pair. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Returns an iterator allowing to go through all values contained in this object. + * + * @returns { IterableIterator<string> } Returns an ES6 Iterator over the values of each name-value pair. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + values(): IterableIterator<string>; + + /** + * Returns an iterator allowing to go through all key/value + * pairs contained in this object. + * + * @returns { IterableIterator<[string, string]> } Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. + * The first item of Array is name, and the second item of Array is value. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Returns an iterator allowing to go through all key/value + * pairs contained in this object. + * + * @returns { IterableIterator<[string, string]> } Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. + * The first item of Array is name, and the second item of Array is value. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Returns an iterator allowing to go through all key/value + * pairs contained in this object. + * + * @returns { IterableIterator<[string, string]> } Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. + * The first item of Array is name, and the second item of Array is value. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + [Symbol.iterator](): IterableIterator<[string, string]>; + + /** + * Returns an iterator allowing to go through all key/value + * pairs contained in this object. + * + * @returns { IterableIterator<[string, string]> } Returns an ES6 iterator. + * Each item of the iterator is a JavaScript Array. + * The first item of Array is name, and the second item of Array is value. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<[string, string]>; + + /** + * Returns a query string suitable for use in a URL. + * + * @returns { string } Returns a search parameter serialized as a string, percent-encoded if necessary. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Returns a query string suitable for use in a URL. + * + * @returns { string } Returns a search parameter serialized as a string, percent-encoded if necessary. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Returns a query string suitable for use in a URL. + * + * @returns { string } Returns a search parameter serialized as a string, percent-encoded if necessary. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + toString(): string; + } /** - * Sets the value associated with a given search parameter to the - * given value. If there were several matching values, this method - * deletes the others. If the search parameter doesn't exist, this - * method creates it. + * The interface of URL is used to parse, construct, normalize, and encode URLs. * - * @param { string } name - name name Key name of the parameter to be set. - * @param { string } value - value value Indicates the parameter value to be set. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. * @syscap SystemCapability.Utils.Lang - * @since 9 + * @since 7 + * @name URL */ /** - * Sets the value associated with a given search parameter to the - * given value. If there were several matching values, this method - * deletes the others. If the search parameter doesn't exist, this - * method creates it. + * The interface of URL is used to parse, construct, normalize, and encode URLs. * - * @param { string } name - name name Key name of the parameter to be set. - * @param { string } value - value value Indicates the parameter value to be set. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. * @syscap SystemCapability.Utils.Lang * @crossplatform * @since 10 + * @name URL */ /** - * Sets the value associated with a given search parameter to the - * given value. If there were several matching values, this method - * deletes the others. If the search parameter doesn't exist, this - * method creates it. + * The interface of URL is used to parse, construct, normalize, and encode URLs. * - * @param { string } name - name name Key name of the parameter to be set. - * @param { string } value - value value Indicates the parameter value to be set. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 - */ - set(name: string, value: string): void; + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + * @name URL + */ + class URL { + /** + * URL constructor, which is used to instantiate a URL object. + * url: Absolute or relative input URL to resolve. Base is required if input is relative. + * If input is an absolute value, base ignores the value. + * base: Base URL to parse if input is not absolute. + * + * @param { string } url - url url + * @param { string | URL } base - base base + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URL.parseURL + */ + constructor(url: string, base?: string | URL); + + /** + * URL constructor, which is used to instantiate a URL object. + * + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * URL constructor, which is used to instantiate a URL object. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * URL constructor, which is used to instantiate a URL object. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + constructor(); + + /** + * Replaces the original constructor to process arguments and return a url object. + * + * @param { string } url - url url Absolute or relative input URL to resolve. Base is required if input is relative. + * If input is an absolute value, base ignores the value. + * @param { string | URL } [base] - base base Base URL to parse if input is not absolute. + * @returns { URL } + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @throws { BusinessError } 10200002 - Invalid url string. + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Replaces the original constructor to process arguments and return a url object. + * + * @param { string } url - url url Absolute or relative input URL to resolve. Base is required if input is relative. + * If input is an absolute value, base ignores the value. + * @param { string | URL } [base] - base base Base URL to parse if input is not absolute. + * @returns { URL } + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @throws { BusinessError } 10200002 - Invalid url string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Replaces the original constructor to process arguments and return a url object. + * + * @param { string } url - url url Absolute or relative input URL to resolve. Base is required if input is relative. + * If input is an absolute value, base ignores the value. + * @param { string | URL } [base] - base base Base URL to parse if input is not absolute. + * @returns { URL } + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @throws { BusinessError } 10200002 - Invalid url string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + static parseURL(url: string, base?: string | URL): URL; + + /** + * Returns the serialized URL as a string. + * + * @returns { string } Returns the serialized URL as a string. + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Returns the serialized URL as a string. + * + * @returns { string } Returns the serialized URL as a string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Returns the serialized URL as a string. + * + * @returns { string } Returns the serialized URL as a string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + toString(): string; + + /** + * Returns the serialized URL as a string. + * + * @returns { string } Returns the serialized URL as a string. + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Returns the serialized URL as a string. + * + * @returns { string } Returns the serialized URL as a string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Returns the serialized URL as a string. + * + * @returns { string } Returns the serialized URL as a string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 + */ + toJSON(): string; + + /** + * Gets and sets the fragment portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets and sets the fragment portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets and sets the fragment portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + hash: string; + + /** + * Gets and sets the host portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets and sets the host portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets and sets the host portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + host: string; + + /** + * Gets and sets the host name portion of the URL,not include the port. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets and sets the host name portion of the URL,not include the port. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets and sets the host name portion of the URL,not include the port. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + hostname: string; + + /** + * Gets and sets the serialized URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets and sets the serialized URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets and sets the serialized URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + href: string; + + /** + * Gets the read-only serialization of the URL's origin. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets the read-only serialization of the URL's origin. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets the read-only serialization of the URL's origin. + * + * @type { string } + * @readonly + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + readonly origin: string; + + /** + * Gets and sets the password portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets and sets the password portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets and sets the password portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + password: string; + + /** + * Gets and sets the path portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets and sets the path portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets and sets the path portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + pathname: string; + + /** + * Gets and sets the port portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets and sets the port portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets and sets the port portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + port: string; + + /** + * Gets and sets the protocol portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets and sets the protocol portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets and sets the protocol portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + protocol: string; + + /** + * Gets and sets the serialized query portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets and sets the serialized query portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets and sets the serialized query portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + search: string; + + /** + * Gets and sets the fragment portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get hash(): string; + + /** + * Gets and sets the fragment portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set hash(hash: string); + + /** + * Gets and sets the host portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get host(): string; + + /** + * Gets and sets the host portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set host(host: string); + + /** + * Gets and sets the host name portion of the URL,not include the port. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get hostname(): string; + + /** + * Gets and sets the host name portion of the URL,not include the port. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set hostname(hostname: string); + + /** + * Gets and sets the serialized URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get href(): string; + + /** + * Gets and sets the serialized URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set href(href: string); + + /** + * Gets the read-only serialization of the URL's origin. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get origin(): string; + + /** + * Gets and sets the password portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get password(): string; + + /** + * Gets and sets the password portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set password(password: string); + + /** + * Gets and sets the path portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get pathname(): string; + + /** + * Gets and sets the path portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set pathname(pathname: string); + + /** + * Gets and sets the port portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get port(): string; + + /** + * Gets and sets the port portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set port(port: string); + + /** + * Gets and sets the protocol portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get protocol(): string; + + /** + * Gets and sets the protocol portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set protocol(protocol: string); + + /** + * Gets and sets the serialized query portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get search(): string; + + /** + * Gets and sets the serialized query portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set search(search: string); + /** + * Gets the URLParams object that represents the URL query parameter. + * This property is read-only, but URLParams provides an object that can be used to change + * the URL instance. To replace the entire query parameter for a URL, use url.searchsetter. + * + * @type { URLParams } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get params(): URLParams; + + /** + * Gets and sets the username portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get username(): string; + + /** + * Gets and sets the username portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set username(username: string); + + /** + * Gets the URLSearchParams object that represents the URL query parameter. + * This property is read-only, but URLSearchParams provides an object that can be used to change + * the URL instance. To replace the entire query parameter for a URL, use url.searchsetter. + * + * @syscap SystemCapability.Utils.Lang + * @since 7 + * @deprecated since 9 + * @useinstead ohos.url.URL.params + */ + readonly searchParams: URLSearchParams; + + /** + * Gets the URLParams object that represents the URL query parameter. + * This property is read-only, but URLParams provides an object that can be used to change + * the URL instance. To replace the entire query parameter for a URL, use url.searchsetter. + * + * @type { URLParams } + * @syscap SystemCapability.Utils.Lang + * @since 9 + */ + /** + * Gets the URLParams object that represents the URL query parameter. + * This property is read-only, but URLParams provides an object that can be used to change + * the URL instance. To replace the entire query parameter for a URL, use url.searchsetter. + * + * @type { URLParams } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets the URLParams object that represents the URL query parameter. + * This property is read-only, but URLParams provides an object that can be used to change + * the URL instance. To replace the entire query parameter for a URL, use url.searchsetter. + * + * @type { URLParams } + * @readonly + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + readonly params: URLParams; + + /** + * Gets and sets the username portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @since 7 + */ + /** + * Gets and sets the username portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @since 10 + */ + /** + * Gets and sets the username portion of the URL. + * + * @type { string } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 11 + */ + username: string; + } /** - * Sort all key/value pairs contained in this object in place and return undefined. - * - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Sort all key/value pairs contained in this object in place and return undefined. + * The type of URL callback function. * + * @typedef { function } UrlCbFn + * @param { string } value - The value of the URL parameter. + * @param { string } key - The key of the URL parameter. + * @param { URLParams } searchParams - The URLParams object containing all parameters. + * @returns { void } This callback does not return a value. * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Sort all key/value pairs contained in this object in place and return undefined. - * - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - sort(): void; - - /** - * Returns an iterator allowing to go through all keys contained in this object. - * - * @returns { IterableIterator<string> } Returns an ES6 Iterator over the names of each name-value pair. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Returns an iterator allowing to go through all keys contained in this object. - * - * @returns { IterableIterator<string> } Returns an ES6 Iterator over the names of each name-value pair. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Returns an iterator allowing to go through all keys contained in this object. - * - * @returns { IterableIterator<string> } Returns an ES6 Iterator over the names of each name-value pair. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - keys(): IterableIterator<string>; - - /** - * Returns an iterator allowing to go through all values contained in this object. - * - * @returns { IterableIterator<string> } Returns an ES6 Iterator over the values of each name-value pair. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Returns an iterator allowing to go through all values contained in this object. - * - * @returns { IterableIterator<string> } Returns an ES6 Iterator over the values of each name-value pair. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Returns an iterator allowing to go through all values contained in this object. - * - * @returns { IterableIterator<string> } Returns an ES6 Iterator over the values of each name-value pair. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - values(): IterableIterator<string>; - - /** - * Returns an iterator allowing to go through all key/value - * pairs contained in this object. - * - * @returns { IterableIterator<[string, string]> } Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. - * The first item of Array is name, and the second item of Array is value. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Returns an iterator allowing to go through all key/value - * pairs contained in this object. - * - * @returns { IterableIterator<[string, string]> } Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. - * The first item of Array is name, and the second item of Array is value. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Returns an iterator allowing to go through all key/value - * pairs contained in this object. - * - * @returns { IterableIterator<[string, string]> } Returns an ES6 iterator. Each item of the iterator is a JavaScript Array. - * The first item of Array is name, and the second item of Array is value. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - [Symbol.iterator](): IterableIterator<[string, string]>; - - /** - * Returns a query string suitable for use in a URL. - * - * @returns { string } Returns a search parameter serialized as a string, percent-encoded if necessary. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Returns a query string suitable for use in a URL. - * - * @returns { string } Returns a search parameter serialized as a string, percent-encoded if necessary. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Returns a query string suitable for use in a URL. - * - * @returns { string } Returns a search parameter serialized as a string, percent-encoded if necessary. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - toString(): string; - } - - /** - * The interface of URL is used to parse, construct, normalize, and encode URLs. - * - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @name URL - */ - /** - * The interface of URL is used to parse, construct, normalize, and encode URLs. - * - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - * @name URL - */ - /** - * The interface of URL is used to parse, construct, normalize, and encode URLs. - * - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - * @name URL - */ - class URL { - /** - * URL constructor, which is used to instantiate a URL object. - * url: Absolute or relative input URL to resolve. Base is required if input is relative. - * If input is an absolute value, base ignores the value. - * base: Base URL to parse if input is not absolute. - * - * @param { string } url - url url - * @param { string | URL } base - base base - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URL.parseURL - */ - constructor(url: string, base?: string | URL); - - /** - * URL constructor, which is used to instantiate a URL object. - * - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * URL constructor, which is used to instantiate a URL object. - * - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * URL constructor, which is used to instantiate a URL object. - * - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - constructor(); - - /** - * Replaces the original constructor to process arguments and return a url object. - * - * @param { string } url - url url Absolute or relative input URL to resolve. Base is required if input is relative. - * If input is an absolute value, base ignores the value. - * @param { string | URL } [base] - base base Base URL to parse if input is not absolute. - * @returns { URL } - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @throws { BusinessError } 10200002 - Invalid url string. - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Replaces the original constructor to process arguments and return a url object. - * - * @param { string } url - url url Absolute or relative input URL to resolve. Base is required if input is relative. - * If input is an absolute value, base ignores the value. - * @param { string | URL } [base] - base base Base URL to parse if input is not absolute. - * @returns { URL } - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @throws { BusinessError } 10200002 - Invalid url string. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Replaces the original constructor to process arguments and return a url object. - * - * @param { string } url - url url Absolute or relative input URL to resolve. Base is required if input is relative. - * If input is an absolute value, base ignores the value. - * @param { string | URL } [base] - base base Base URL to parse if input is not absolute. - * @returns { URL } - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types; - * 3.Parameter verification failed. - * @throws { BusinessError } 10200002 - Invalid url string. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - static parseURL(url: string, base?: string | URL): URL; - - /** - * Returns the serialized URL as a string. - * - * @returns { string } Returns the serialized URL as a string. - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Returns the serialized URL as a string. - * - * @returns { string } Returns the serialized URL as a string. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Returns the serialized URL as a string. - * - * @returns { string } Returns the serialized URL as a string. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - toString(): string; - - /** - * Returns the serialized URL as a string. - * - * @returns { string } Returns the serialized URL as a string. - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Returns the serialized URL as a string. - * - * @returns { string } Returns the serialized URL as a string. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Returns the serialized URL as a string. - * - * @returns { string } Returns the serialized URL as a string. - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - toJSON(): string; - - /** - * Gets and sets the fragment portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets and sets the fragment portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets and sets the fragment portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - hash: string; - - /** - * Gets and sets the host portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets and sets the host portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets and sets the host portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - host: string; - - /** - * Gets and sets the host name portion of the URL,not include the port. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets and sets the host name portion of the URL,not include the port. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets and sets the host name portion of the URL,not include the port. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - hostname: string; - - /** - * Gets and sets the serialized URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets and sets the serialized URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets and sets the serialized URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - href: string; - - /** - * Gets the read-only serialization of the URL's origin. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets the read-only serialization of the URL's origin. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets the read-only serialization of the URL's origin. - * - * @type { string } - * @readonly - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - readonly origin: string; - - /** - * Gets and sets the password portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets and sets the password portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets and sets the password portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - password: string; - - /** - * Gets and sets the path portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets and sets the path portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets and sets the path portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - pathname: string; - - /** - * Gets and sets the port portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets and sets the port portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets and sets the port portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - port: string; - - /** - * Gets and sets the protocol portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets and sets the protocol portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets and sets the protocol portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - protocol: string; - - /** - * Gets and sets the serialized query portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets and sets the serialized query portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets and sets the serialized query portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - search: string; - - /** - * Gets the URLSearchParams object that represents the URL query parameter. - * This property is read-only, but URLSearchParams provides an object that can be used to change - * the URL instance. To replace the entire query parameter for a URL, use url.searchsetter. - * - * @syscap SystemCapability.Utils.Lang - * @since 7 - * @deprecated since 9 - * @useinstead ohos.url.URL.params - */ - readonly searchParams: URLSearchParams; - - /** - * Gets the URLParams object that represents the URL query parameter. - * This property is read-only, but URLParams provides an object that can be used to change - * the URL instance. To replace the entire query parameter for a URL, use url.searchsetter. - * - * @type { URLParams } - * @syscap SystemCapability.Utils.Lang - * @since 9 - */ - /** - * Gets the URLParams object that represents the URL query parameter. - * This property is read-only, but URLParams provides an object that can be used to change - * the URL instance. To replace the entire query parameter for a URL, use url.searchsetter. - * - * @type { URLParams } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets the URLParams object that represents the URL query parameter. - * This property is read-only, but URLParams provides an object that can be used to change - * the URL instance. To replace the entire query parameter for a URL, use url.searchsetter. - * - * @type { URLParams } - * @readonly - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @atomicservice - * @since 11 - */ - readonly params: URLParams; - - /** - * Gets and sets the username portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @since 7 - */ - /** - * Gets and sets the username portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform - * @since 10 - */ - /** - * Gets and sets the username portion of the URL. - * - * @type { string } - * @syscap SystemCapability.Utils.Lang - * @crossplatform * @atomicservice - * @since 11 + * @since 20 + * @arkts 1.2 */ - username: string; - } + type UrlCbFn = (value: string, key: string, searchParams: URLParams) => void; } export default url; + \ No newline at end of file diff --git a/api/@ohos.usbManager.d.ts b/api/@ohos.usbManager.d.ts index 7f1460830e23c27f9a09d27cfa54737a4548ea8e..ab4f915f8156b401dca43238c7d2a8f56cbdc682 100644 --- a/api/@ohos.usbManager.d.ts +++ b/api/@ohos.usbManager.d.ts @@ -1,2374 +1,2396 @@ -/* - * Copyright (c) 2023-2024 Huawei Device Co., Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * @file - * @kit BasicServicesKit - */ - -import { AsyncCallback } from '@kit.BasicServicesKit'; - -/** - * This module provides the capability of manage USB device. - * - * @namespace usbManager - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ -declare namespace usbManager { - /** - * Obtains the USB device list. - * - * @returns { Array<Readonly<USBDevice>> } USB device list. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Obtains the USB device list. - * - * @returns { Array<Readonly<USBDevice>> } USB device list. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function getDevices(): Array<Readonly<USBDevice>>; - - /** - * Connects to the USB device based on the device information returned by getDevices(). - * - * @param { USBDevice } device - USB device on the device list returned by getDevices(). It cannot be empty. - * @returns { Readonly<USBDevicePipe> } object for data transfer. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Connects to the USB device based on the device information returned by getDevices(). - * - * @param { USBDevice } device - USB device on the device list returned by getDevices(). It cannot be empty. - * @returns { Readonly<USBDevicePipe> } object for data transfer. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function connectDevice(device: USBDevice): Readonly<USBDevicePipe>; - - /** - * Checks whether the application has the permission to access the device. - * - * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. - * @returns { boolean } indicates if the user has the permission to access the device. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Checks whether the application has the permission to access the device. - * - * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. - * @returns { boolean } indicates if the user has the permission to access the device. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function hasRight(deviceName: string): boolean; - - /** - * Requests the permission for a given application to access the USB device. - * The system application has access to the device by default, and there is no need to call this interface to apply. - * - * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. - * @returns { Promise<boolean> } indicates if the device access permissions are granted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Requests the permission for a given application to access the USB device. - * The system application has access to the device by default, and there is no need to call this interface to apply. - * - * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. - * @returns { Promise<boolean> } indicates if the device access permissions are granted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function requestRight(deviceName: string): Promise<boolean>; - - /** - * Remove the permission for a given application to access the USB device. - * The system application has access to the device by default, and calling this interface will not have any impact. - * - * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. - * @returns { boolean } indicates if the device access permissions are removed. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Remove the permission for a given application to access the USB device. - * The system application has access to the device by default, and calling this interface will not have any impact. - * - * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. - * @returns { boolean } indicates if the device access permissions are removed. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function removeRight(deviceName: string): boolean; - - /** - * Add device access permission. - * The system application has access to the device by default, and calling this interface will not have any impact. - * - * @param { string } bundleName - refers to application that require access permissions. It cannot be empty. - * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. - * @returns { boolean } value to indicate whether the permission is granted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - * @deprecated since 12 - * @useinstead ohos.usbManager/usbManager#addDeviceAccessRight - */ - function addRight(bundleName: string, deviceName: string): boolean; - - /** - * Converts the string descriptor of a given USB function list to a numeric mask combination. - * - * @param { string } funcs - descriptor of the supported function list. It cannot be empty. - * @returns { number } the numeric mask combination of the function list. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - * @deprecated since 12 - * @useinstead ohos.usbManager/usbManager#getFunctionsFromString - */ - function usbFunctionsFromString(funcs: string): number; - - /** - * Converts the numeric mask combination of a given USB function list to a string descriptor. - * - * @param { FunctionType } funcs - numeric mask combination of the function list. The type of funcs must be number. It cannot be empty. - * @returns { string } - descriptor of the supported function list. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - * @deprecated since 12 - * @useinstead ohos.usbManager/usbManager#getStringFromFunctions - */ - function usbFunctionsToString(funcs: FunctionType): string; - - /** - * Sets the current USB function list in Device mode. - * - * @param { FunctionType } funcs - numeric mask combination of the supported function list. It cannot be empty. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 14400002 - Permission denied. The HDC is disabled by the system. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - * @deprecated since 12 - * @useinstead ohos.usbManager/usbManager#setDeviceFunctions - */ - function setCurrentFunctions(funcs: FunctionType): Promise<void>; - - /** - * Obtains the numeric mask combination for the current USB function list in Device mode. - * - * @returns { FunctionType } the numeric mask combination for the current USB function list in FunctionType. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - * @deprecated since 12 - * @useinstead ohos.usbManager/usbManager#getDeviceFunctions - */ - function getCurrentFunctions(): FunctionType; - - /* usb port functions begin */ - /** - * Obtains the USBPort list. - * - * @returns { Array<USBPort> } the USBPort list. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - * @deprecated since 12 - * @useinstead ohos.usbManager/usbManager#getPortList - */ - function getPorts(): Array<USBPort>; - - /** - * Gets the mask combination for the supported mode list of the specified USBPort. - * - * @param { number } portId - unique ID of the port. It cannot be empty. - * @returns { PortModeType } the mask combination for the supported mode list in PortModeType. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - * @deprecated since 12 - * @useinstead ohos.usbManager/usbManager#getPortSupportModes - */ - function getSupportedModes(portId: number): PortModeType; - - /** - * Sets the role types supported by the specified USBPort, which can be powerRole (for charging) and dataRole (for data transfer). - * - * @param { number } portId - unique ID of the port. It cannot be empty. - * @param { PowerRoleType } powerRole - charging role. It cannot be empty. - * @param { DataRoleType } dataRole - data role. It cannot be empty. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - * @deprecated since 12 - * @useinstead ohos.usbManager/usbManager#setPortRoleTypes - */ - function setPortRoles(portId: number, powerRole: PowerRoleType, dataRole: DataRoleType): Promise<void>; - - /** - * Add USB device access right. - * The system application has access to the device by default, and calling this interface will not have any impact. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { string } tokenId - refers to application that require access permissions. It cannot be empty. - * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. - * @returns { boolean } value to indicate whether the permission is granted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 12 - */ - /** - * Add USB device access right. - * The system application has access to the device by default, and calling this interface will not have any impact. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { string } tokenId - refers to application that require access permissions. It cannot be empty. - * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. - * @returns { boolean } value to indicate whether the permission is granted. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 18 - */ - function addDeviceAccessRight(tokenId: string, deviceName: string): boolean; - - /** - * Converts the string descriptor of a given USB function list to a numeric mask combination. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { string } funcs - descriptor of the supported function list. It cannot be empty. - * @returns { number } the numeric mask combination of the function list. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 12 - */ - /** - * Converts the string descriptor of a given USB function list to a numeric mask combination. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { string } funcs - descriptor of the supported function list. It cannot be empty. - * @returns { number } the numeric mask combination of the function list. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 18 - */ - function getFunctionsFromString(funcs: string): number; - - /** - * Converts the numeric mask combination of a given USB function list to a string descriptor. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { FunctionType } funcs - numeric mask combination of the function list. It cannot be empty. - * @returns { string } - descriptor of the supported function list. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 12 - */ - /** - * Converts the numeric mask combination of a given USB function list to a string descriptor. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { FunctionType } funcs - numeric mask combination of the function list. It cannot be empty. - * @returns { string } - descriptor of the supported function list. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 18 - */ - function getStringFromFunctions(funcs: FunctionType): string; - - /** - * Sets the current USB function list in Device mode. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { FunctionType } funcs - numeric mask combination of the supported function list. It cannot be empty. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 14400002 - Permission denied. The HDC is disabled by the system. - * @throws { BusinessError } 14400006 - Unsupported operation. The function is not supported. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 12 - */ - /** - * Sets the current USB function list in Device mode. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { FunctionType } funcs - numeric mask combination of the supported function list. It cannot be empty. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400002 - Permission denied. The HDC is disabled by the system. - * @throws { BusinessError } 14400006 - Unsupported operation. The function is not supported. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 18 - */ - function setDeviceFunctions(funcs: FunctionType): Promise<void>; - - /** - * Obtains the numeric mask combination for the current USB function list in Device mode. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @returns { FunctionType } the numeric mask combination for the current USB function list in FunctionType. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 12 - */ - /** - * Obtains the numeric mask combination for the current USB function list in Device mode. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @returns { FunctionType } the numeric mask combination for the current USB function list in FunctionType. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 18 - */ - function getDeviceFunctions(): FunctionType; - - /* usb port functions begin */ - /** - * Obtains the USBPort list. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @returns { Array<USBPort> } the USBPort list. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 12 - */ - /* usb port functions begin */ - /** - * Obtains the USBPort list. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @returns { Array<USBPort> } the USBPort list. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 18 - */ - function getPortList(): Array<USBPort>; - - /** - * Gets the mask combination for the supported mode list of the specified USBPort. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { number } portId - unique ID of the port. It cannot be empty. - * @returns { PortModeType } the mask combination for the supported mode list in PortModeType. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 12 - */ - /** - * Gets the mask combination for the supported mode list of the specified USBPort. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { number } portId - unique ID of the port. It cannot be empty. - * @returns { PortModeType } the mask combination for the supported mode list in PortModeType. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 18 - */ - function getPortSupportModes(portId: number): PortModeType; - - /** - * Sets the role types supported by the specified USBPort, which can be powerRole (for charging) and dataRole (for data transfer). - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { number } portId - unique ID of the port. It cannot be empty. - * @param { PowerRoleType } powerRole - charging role. It cannot be empty. - * @param { DataRoleType } dataRole - data role. It cannot be empty. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 14400003 - Unsupported operation. The current device does not support port role switching. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 12 - */ - /** - * Sets the role types supported by the specified USBPort, which can be powerRole (for charging) and dataRole (for data transfer). - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { number } portId - unique ID of the port. It cannot be empty. - * @param { PowerRoleType } powerRole - charging role. It cannot be empty. - * @param { DataRoleType } dataRole - data role. It cannot be empty. - * @returns { Promise<void> } the promise returned by the function. - * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400003 - Unsupported operation. The current device does not support port role switching. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 18 - */ - function setPortRoleTypes(portId: number, powerRole: PowerRoleType, dataRole: DataRoleType): Promise<void>; - - /** - * Adds USB accessory access right. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { number } tokenId - refers to application that require access permissions. It cannot be empty. - * @param { USBAccessory } accessory - USB accessory. It cannot be empty. - * @throws { BusinessError } 201 - The permission check failed. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @throws { BusinessError } 14400005 - Database operation exception. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 14 - */ - /** - * Adds USB accessory access right. - * - * @permission ohos.permission.MANAGE_USB_CONFIG - * @param { number } tokenId - refers to application that require access permissions. It cannot be empty. - * @param { USBAccessory } accessory - USB accessory. It cannot be empty. - * @throws { BusinessError } 201 - The permission check failed. - * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @throws { BusinessError } 14400005 - Database operation exception. - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 18 - */ - function addAccessoryRight(tokenId: number, accessory: USBAccessory): void; - - /* usb pipe functions begin */ - /** - * Claims a USB interface. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. - * @param { USBInterface } iface - USB interface, which is used to determine the interface to claim. It cannot be empty. - * @param { boolean } [force] - optional parameter that determines whether to forcibly claim the USB interface. - * @returns { number } returns **0** if the USB interface is successfully claimed; returns an error code otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Claims a USB interface. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. - * @param { USBInterface } iface - USB interface, which is used to determine the interface to claim. It cannot be empty. - * @param { boolean } [force] - optional parameter that determines whether to forcibly claim the USB interface. - * @returns { number } returns **0** if the USB interface is successfully claimed; returns an error code otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function claimInterface(pipe: USBDevicePipe, iface: USBInterface, force?: boolean): number; - - /** - * Releases a USB interface. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. - * @param { USBInterface } iface - USB interface, which is used to determine the interface to release. It cannot be empty. - * @returns { number } returns **0** if the USB interface is successfully released; returns an error code otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Releases a USB interface. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. - * @param { USBInterface } iface - USB interface, which is used to determine the interface to release. It cannot be empty. - * @returns { number } returns **0** if the USB interface is successfully released; returns an error code otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function releaseInterface(pipe: USBDevicePipe, iface: USBInterface): number; - - /** - * Sets the device configuration. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. - * @param { USBConfiguration } config - device configuration. It cannot be empty. - * @returns { number } returns **0** if the device configuration is successfully set; returns an error code otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Sets the device configuration. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. - * @param { USBConfiguration } config - device configuration. It cannot be empty. - * @returns { number } returns **0** if the device configuration is successfully set; returns an error code otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function setConfiguration(pipe: USBDevicePipe, config: USBConfiguration): number; - - /** - * Sets a USB interface. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. - * @param { USBInterface } iface - USB interface, which is used to determine the interface to set. It cannot be empty. - * @returns { number } returns **0** if the USB interface is successfully set; return an error code otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Sets a USB interface. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. - * @param { USBInterface } iface - USB interface, which is used to determine the interface to set. It cannot be empty. - * @returns { number } returns **0** if the USB interface is successfully set; return an error code otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function setInterface(pipe: USBDevicePipe, iface: USBInterface): number; - - /** - * Obtains the raw USB descriptor. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. - * @returns { Uint8Array } returns the raw descriptor data. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Obtains the raw USB descriptor. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. - * @returns { Uint8Array } returns the raw descriptor data. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function getRawDescriptor(pipe: USBDevicePipe): Uint8Array; - - /** - * Obtains the file descriptor. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. - * @returns { number } returns the file descriptor of the USB device. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Obtains the file descriptor. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. - * @returns { number } returns the file descriptor of the USB device. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function getFileDescriptor(pipe: USBDevicePipe): number; - - /** - * Performs control transfer. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. - * @param { USBControlParams } controlparam - control transfer parameters. It cannot be empty. - * @param { number } [timeout] - timeout duration. This parameter is optional. The default value is **0**, indicating no timeout. - * @returns { Promise<number> } returns the size of the transmitted or received data block if the control transfer is successful; - * return -1 if an exception occurs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - * @deprecated since 12 - * @useinstead ohos.usbManager/usbManager#usbControlTransfer - */ - function controlTransfer(pipe: USBDevicePipe, controlparam: USBControlParams, timeout?: number): Promise<number>; - - /** - * Performs usb control transfer. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. - * @param { USBDeviceRequestParams } requestparam - control transfer parameters. It cannot be empty. - * @param { number } [timeout] - timeout duration. This parameter is optional. The default value is **0**, indicating no timeout. - * @returns { Promise<number> } returns the size of the transmitted or received data block if the control transfer is successful; - * return -1 if an exception occurs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 12 - */ - /** - * Performs usb control transfer. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. - * @param { USBDeviceRequestParams } requestparam - control transfer parameters. It cannot be empty. - * @param { number } [timeout] - timeout duration. This parameter is optional. The default value is **0**, indicating no timeout. - * @returns { Promise<number> } returns the size of the transmitted or received data block if the control transfer is successful; - * return -1 if an exception occurs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function usbControlTransfer(pipe: USBDevicePipe, requestparam: USBDeviceRequestParams, timeout?: number): Promise<number>; - - /** - * Performs bulk transfer. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. - * @param { USBEndpoint } endpoint - USB endpoint, which is used to determine the USB port for data transfer. It cannot be empty. - * @param { Uint8Array } buffer - buffer for writing or reading data. It cannot be empty. - * @param { number } [timeout] - timeout duration. This parameter is optional. The default value is **0**, indicating no timeout. - * @returns { Promise<number> } the size of the transmitted or received data block if the control transfer is successful; - * return -1 if an exception occurs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Performs bulk transfer. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. - * @param { USBEndpoint } endpoint - USB endpoint, which is used to determine the USB port for data transfer. It cannot be empty. - * @param { Uint8Array } buffer - buffer for writing or reading data. It cannot be empty. - * @param { number } [timeout] - timeout duration. This parameter is optional. The default value is **0**, indicating no timeout. - * @returns { Promise<number> } the size of the transmitted or received data block if the control transfer is successful; - * return -1 if an exception occurs. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function bulkTransfer( - pipe: USBDevicePipe, - endpoint: USBEndpoint, - buffer: Uint8Array, - timeout?: number - ): Promise<number>; - - /** - * Closes a USB device pipe. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. - * @returns { number } returns **0** if the USB device pipe is closed successfully; return an error code otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - /** - * Closes a USB device pipe. - * - * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. - * @returns { number } returns **0** if the USB device pipe is closed successfully; return an error code otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function closePipe(pipe: USBDevicePipe): number; - - /** - * Checks whether the application has the right to access the USB accessory. - * - * @param { USBAccessory } accessory - USB accessory. It cannot be empty. - * @returns { boolean } indicates if the user has the right to access the USB accessory. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @throws { BusinessError } 14400005 - Database operation exception. - * @throws { BusinessError } 14401001 - The target USBAccessory not matched. - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - /** - * Checks whether the application has the right to access the USB accessory. - * - * @param { USBAccessory } accessory - USB accessory. It cannot be empty. - * @returns { boolean } indicates if the user has the right to access the USB accessory. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @throws { BusinessError } 14400005 - Database operation exception. - * @throws { BusinessError } 14401001 - The target USBAccessory not matched. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function hasAccessoryRight(accessory: USBAccessory): boolean; - - /** - * Requests the right for a given application to access the USB accessory. - * - * @param { USBAccessory } accessory - USB accessory. It cannot be empty. - * @returns { Promise<boolean> } indicates if the USB accessory access right are granted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @throws { BusinessError } 14400005 - Database operation exception. - * @throws { BusinessError } 14401001 - The target USBAccessory not matched. - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - /** - * Requests the right for a given application to access the USB accessory. - * - * @param { USBAccessory } accessory - USB accessory. It cannot be empty. - * @returns { Promise<boolean> } indicates if the USB accessory access right are granted. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @throws { BusinessError } 14400005 - Database operation exception. - * @throws { BusinessError } 14401001 - The target USBAccessory not matched. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function requestAccessoryRight(accessory: USBAccessory): Promise<boolean>; - - /** - * Cancels the right for a given application to access the USB accessory. - * - * @param { USBAccessory } accessory - USB accessory. It cannot be empty. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @throws { BusinessError } 14400005 - Database operation exception. - * @throws { BusinessError } 14401001 - The target USBAccessory not matched. - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - /** - * Cancels the right for a given application to access the USB accessory. - * - * @param { USBAccessory } accessory - USB accessory. It cannot be empty. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @throws { BusinessError } 14400005 - Database operation exception. - * @throws { BusinessError } 14401001 - The target USBAccessory not matched. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function cancelAccessoryRight(accessory: USBAccessory): void; - - /** - * Obtains the USB Accessory list. - * - * @returns { Array<Readonly<USBAccessory>> } USB accessory list. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - /** - * Obtains the USB Accessory list. - * - * @returns { Array<Readonly<USBAccessory>> } USB accessory list. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function getAccessoryList(): Array<Readonly<USBAccessory>>; - - /** - * Obtains the accessory handle and opens accessory file descriptor. - * - * @param { USBAccessory } accessory - accessory, which is used to determine the accessory. It cannot be empty. - * @returns { USBAccessoryHandle } returns the handle of the accessory. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 14400001 - Permission denied. Call requestAccessoryRight to get the right first. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @throws { BusinessError } 14401001 - The target USBAccessory not matched. - * @throws { BusinessError } 14401002 - Failed to open the native accessory node. - * @throws { BusinessError } 14401003 - Cannot reopen the accessory. - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - /** - * Obtains the accessory handle and opens accessory file descriptor. - * - * @param { USBAccessory } accessory - accessory, which is used to determine the accessory. It cannot be empty. - * @returns { USBAccessoryHandle } returns the handle of the accessory. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400001 - Permission denied. Call requestAccessoryRight to get the right first. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @throws { BusinessError } 14401001 - The target USBAccessory not matched. - * @throws { BusinessError } 14401002 - Failed to open the native accessory node. - * @throws { BusinessError } 14401003 - Cannot reopen the accessory. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function openAccessory(accessory: USBAccessory): USBAccessoryHandle; - - /** - * Closes the accessory file descriptor. - * - * @param { USBAccessoryHandle } accessoryHandle - Accessory handle to be closed. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - /** - * Closes the accessory file descriptor. - * - * @param { USBAccessoryHandle } accessoryHandle - Accessory handle to be closed. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400004 - Service exception. Possible causes: - * <br>1. No accessory is plugged in. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function closeAccessory(accessoryHandle: USBAccessoryHandle): void; - - /** - * Represents the USB endpoint from which data is sent or received. You can obtain the USB endpoint through USBInterface. - * - * @typedef USBEndpoint - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - interface USBEndpoint { - /** - * Endpoint address - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - address: number; - - /** - * Endpoint attributes - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - attributes: number; - - /** - * Endpoint interval - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - interval: number; - - /** - * Maximum size of data packets on the endpoint - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - maxPacketSize: number; - - /** - * Endpoint direction - * - * @type { USBRequestDirection } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - direction: USBRequestDirection; - - /** - * Endpoint number - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - number: number; - - /** - * Endpoint type - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - type: number; - - /** - * Unique ID defined by USBInterface.id, which indicates the interface to which the endpoint belongs - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - interfaceId: number; - } - - /** - * Represents a USB interface. One config can contain multiple **USBInterface** instances, each providing a specific function. - * - * @typedef USBInterface - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - interface USBInterface { - /** - * Unique ID of the USB interface - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - id: number; - - /** - * Interface protocol - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - protocol: number; - - /** - * Device type - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - clazz: number; - - /** - * Device subclass - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - subClass: number; - - /** - * Alternation between descriptors of the same USB interface - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - alternateSetting: number; - - /** - * Interface name - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - name: string; - - /** - * USBEndpoint that belongs to the USB interface - * - * @type { Array<USBEndpoint> } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - endpoints: Array<USBEndpoint>; - } - - /** - * USB configuration. One USBDevice can contain multiple USBConfiguration instances. - * - * @typedef USBConfiguration - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - interface USBConfiguration { - /** - * Unique ID of the USB configuration - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - id: number; - - /** - * Configuration attributes - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - attributes: number; - - /** - * Maximum power consumption, in mA - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - maxPower: number; - - /** - * Configuration name, which can be left empty - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - name: string; - - /** - * Support for remote wakeup - * - * @type { boolean } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - isRemoteWakeup: boolean; - - /** - * Support for independent power supplies - * - * @type { boolean } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - isSelfPowered: boolean; - - /** - * Supported interface attributes - * - * @type { Array<USBInterface> } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - interfaces: Array<USBInterface>; - } - - /** - * Represents a USB device. - * - * @typedef USBDevice - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - interface USBDevice { - /** - * Bus address - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - busNum: number; - - /** - * Device address - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - devAddress: number; - - /** - * Device SN - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - serial: string; - - /** - * Device name - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - name: string; - - /** - * Device manufacturer - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - manufacturerName: string; - - /** - * Product information - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - productName: string; - - /** - * Product version - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - version: string; - - /** - * Vendor ID - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - vendorId: number; - - /** - * Product ID - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - productId: number; - - /** - * Device class - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - clazz: number; - - /** - * Device subclass - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - subClass: number; - - /** - * Device protocol code - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - protocol: number; - - /** - * Device configuration descriptor information - * - * @type { Array<USBConfiguration> } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - configs: Array<USBConfiguration>; - } - - /** - * Represents a USB device pipe, which is used to determine the USB device. - * - * @typedef USBDevicePipe - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - interface USBDevicePipe { - /** - * Bus address. - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - busNum: number; - - /** - * Device address - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - devAddress: number; - } - - /** - * Enumerates power role types. - * - * @enum { number } - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - export enum PowerRoleType { - /** - * None - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - NONE = 0, - - /** - * External power supply - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - SOURCE = 1, - - /** - * Internal power supply - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - SINK = 2 - } - - /** - * Enumerates data role types. - * - * @enum { number } - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - export enum DataRoleType { - /** - * None - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - NONE = 0, - - /** - * Host mode - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - HOST = 1, - - /** - * Device mode - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - DEVICE = 2 - } - - /** - * Enumerates port mode types - * - * @enum { number } - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - export enum PortModeType { - /** - * None - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - NONE = 0, - - /** - * Upstream facing port, which functions as the sink of power supply - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - UFP = 1, - - /** - * Downstream facing port, which functions as the source of power supply - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - DFP = 2, - - /** - * Dynamic reconfiguration port (DRP), which can function as the DFP (host) or UFP (device). It is not supported currently. - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - DRP = 3, - - /** - * Not supported currently - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - NUM_MODES = 4 - } - - /** - * Enumerates USB device port roles. - * - * @typedef USBPortStatus - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - interface USBPortStatus { - /** - * USB mode - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - currentMode: number; - - /** - * Power role - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - currentPowerRole: number; - - /** - * Data role - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - currentDataRole: number; - } - - /** - * Represents a USB device port. - * - * @typedef USBPort - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - interface USBPort { - /** - * Unique ID of the USB port - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - id: number; - - /** - * Mask combination for the supported mode list of the USB port - * - * @type { PortModeType } - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - supportedModes: PortModeType; - - /** - * USB port role - * - * @type { USBPortStatus } - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - status: USBPortStatus; - } - - /** - * Represents control transfer parameters. - * - * @typedef USBControlParams - * @syscap SystemCapability.USB.USBManager - * @since 9 - * @deprecated since 16 - * @useinstead ohos.usbManager/usbManager#USBDeviceRequestParams - */ - interface USBControlParams { - /** - * Request type - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - * @deprecated since 16 - */ - request: number; - - /** - * Request target type - * - * @type { USBRequestTargetType } - * @syscap SystemCapability.USB.USBManager - * @since 9 - * @deprecated since 16 - */ - target: USBRequestTargetType; - - /** - * Control request type - * - * @type { USBControlRequestType } - * @syscap SystemCapability.USB.USBManager - * @since 9 - * @deprecated since 16 - */ - reqType: USBControlRequestType; - - /** - * Request parameter value - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - * @deprecated since 16 - */ - value: number; - - /** - * Index of the parameter value - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - * @deprecated since 16 - */ - index: number; - - /** - * Data written to or read from the buffer - * - * @type { Uint8Array } - * @syscap SystemCapability.USB.USBManager - * @since 9 - * @deprecated since 16 - */ - data: Uint8Array; - } - - /** - * Represents control transfer parameters. - * - * @typedef USBDeviceRequestParams - * @syscap SystemCapability.USB.USBManager - * @since 12 - */ - interface USBDeviceRequestParams { - /** - * Bit map request type - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 12 - */ - bmRequestType: number; - - /** - * Byte request - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 12 - */ - bRequest: number; - - /** - * Request parameter word value - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 12 - */ - wValue: number; - - /** - * Word index of the parameter value - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 12 - */ - wIndex: number; - - /** - * Word length of the parameter value - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 12 - */ - wLength: number; - - /** - * Data written to or read from the buffer - * - * @type { Uint8Array } - * @syscap SystemCapability.USB.USBManager - * @since 12 - */ - data: Uint8Array; - } - - /** - * Enumerates USB request target types. - * - * @enum { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - export enum USBRequestTargetType { - /** - * USB device - * - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - USB_REQUEST_TARGET_DEVICE = 0, - - /** - * USB interface - * - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - USB_REQUEST_TARGET_INTERFACE = 1, - - /** - * Endpoint - * - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - USB_REQUEST_TARGET_ENDPOINT = 2, - - /** - * Others - * - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - USB_REQUEST_TARGET_OTHER = 3 - } - - /** - * Enumerates control request types. - * - * @enum { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - export enum USBControlRequestType { - /** - * Standard - * - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - USB_REQUEST_TYPE_STANDARD = 0, - - /** - * Class - * - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - USB_REQUEST_TYPE_CLASS = 1, - - /** - * Vendor - * - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - USB_REQUEST_TYPE_VENDOR = 2 - } - - /** - * Enumerates request directions. - * - * @enum { number } - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - export enum USBRequestDirection { - /** - * Request for writing data from the host to the device - * - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - USB_REQUEST_DIR_TO_DEVICE = 0, - - /** - * Request for reading data from the device to the host - * - * @syscap SystemCapability.USB.USBManager - * @since 9 - */ - USB_REQUEST_DIR_FROM_DEVICE = 0x80 - } - - /** - * Enumerates function modes. - * - * @enum { number } - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - export enum FunctionType { - /** - * None - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - NONE = 0, - - /** - * Serial port device - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - ACM = 1, - - /** - * Ethernet port device - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - ECM = 2, - - /** - * HDC device - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - HDC = 4, - - /** - * MTP device - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - MTP = 8, - - /** - * PTP device - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - PTP = 16, - - /** - * RNDIS device - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - RNDIS = 32, - - /** - * MIDI device - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - MIDI = 64, - - /** - * Audio source device - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - AUDIO_SOURCE = 128, - - /** - * NCM device - * - * @syscap SystemCapability.USB.USBManager - * @systemapi - * @since 9 - */ - NCM = 256 - } - - /** - * Represents a USB Accessory. - * - * @typedef USBAccessory - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - interface USBAccessory { - /** - * The manufacturer name of the accessory. - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - manufacturer: string; - - /** - * The product of the accessory. - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - product: string; - - /** - * The user visible description of the accessory. - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - description: string; - - /** - * The version of the accessory. - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - version: string; - - /** - * The serial number of the accessory. - * - * @type { string } - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - serialNumber: string; - } - - /** - * Handle of accessory. - * - * @typedef USBAccessoryHandle - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - interface USBAccessoryHandle { - /** - * The file descriptor of the accessory.The valid USBAccessoryHandle.accessoryFd is a positive value. - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 14 - */ - accessoryFd: number; - } - - /** - * Usb transfer flag. - * - * @enum { number } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - export enum UsbTransferFlags { - /** - * Report short frames as errors - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - USB_TRANSFER_SHORT_NOT_OK = 0, - - /** - * Automatically free transfer buffer - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - USB_TRANSFER_FREE_BUFFER = 1, - - /** - * Automatically free transfer after callback returns - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - USB_TRANSFER_FREE_TRANSFER = 2, - - /** - * Transmissions that are multiples of wMaxPacketSize will add an additional zero packet. - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - USB_TRANSFER_ADD_ZERO_PACKET = 3 - } - - /** - * Usb transfer status. - * - * @enum { number } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - export enum UsbTransferStatus { - /** - * Transfer completed - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - TRANSFER_COMPLETED = 0, - - /** - * Transfer failed - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - TRANSFER_ERROR = 1, - - /** - * Transfer timed out - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - TRANSFER_TIMED_OUT = 2, - - /** - * Transfer was canceled - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - TRANSFER_CANCELED = 3, - - /** - * For bulk/interrupt endpoints: halt condition detected (endpoint - * stalled). For control endpoints: control request not supported. - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - TRANSFER_STALL = 4, - - /** - * Device was disconnected - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - TRANSFER_NO_DEVICE = 5, - - /** - * Device sent more data than requested - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - TRANSFER_OVERFLOW = 6 - } - - /** - * USB DATA transfer type. - * - * @enum { number } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - export enum UsbEndpointTransferType { - /** - * Isochronous endpoint - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - TRANSFER_TYPE_ISOCHRONOUS = 0x1, - - /** - * Bulk endpoint - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - TRANSFER_TYPE_BULK = 0x2, - - /** - * Interrupt endpoint - * - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - TRANSFER_TYPE_INTERRUPT = 0x3 - } - - /** - * Isochronous packet descriptors, only for isochronous transfers. - * - * @typedef UsbIsoPacketDescriptor - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - interface UsbIsoPacketDescriptor { - /** - * Length of data to request in this packet - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - length: number; - - /** - * Amount of data that was actually transferred - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - actualLength: number; - - /** - * Status code for this packet - * - * @type { UsbTransferStatus } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - status: UsbTransferStatus; - } - - /** - * submit transfer callback. - * - * @typedef SubmitTransferCallback - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - interface SubmitTransferCallback { - /** - * Actual length of data that was transferred. Read-only, and only for - * use within transfer callback function. Not valid for isochronous endpoint transfers. - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - actualLength: number; - - /** - * The status of the transfer. Read-only, and only for use within transfer callback function. - * - * @type { UsbTransferStatus } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - status: UsbTransferStatus; - - /** - * Isochronous packet descriptors, for isochronous transfers only. - * - * @type { Array<Readonly<UsbIsoPacketDescriptor>> } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - isoPacketDescs: Array<Readonly<UsbIsoPacketDescriptor>>; - } - - /** - * As a generic USB data transfer interface. The Client populates this interface and - * submits it in order to request a transfer. - * - * @typedef UsbDataTransferParams - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - interface UsbDataTransferParams { - /** - * Pipe of the device that this data transfer will be submitted to. - * - * @type { USBDevicePipe } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - devPipe: USBDevicePipe; - - /** - * A bitwise OR combination of UsbTransferFlags. - * - * @type { UsbTransferFlags } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - flags: UsbTransferFlags; - - /** - * Address of the endpoint where this transfer will be sent. - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - endpoint: number; - - /** - * Type of the transfer - * - * @type { UsbEndpointTransferType } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - type: UsbEndpointTransferType; - - /** - * Timeout for this transfer in milliseconds. A value of 0 indicates no timeout. - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - timeout: number; - - /** - * Length of the data buffer. Must be non-negative. - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - length: number; - - /** - * Callback function. This will be invoked when the transfer completes, fails, or is canceled. - * - * @type { AsyncCallback<SubmitTransferCallback> } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - callback: AsyncCallback<SubmitTransferCallback>; - - /** - * User context data. Useful for associating specific data to a transfer - * that can be accessed from within the callback function. - * - * @type { Uint8Array } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - userData: Uint8Array; - - /** - * Data buffer - * - * @type { Uint8Array } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - buffer: Uint8Array; - - /** - * Count of isochronous packets. Only used for I/O with isochronous endpoints. Must be non-negative. - * - * @type { number } - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - isoPacketCount: number; - } - - /** - * Submit USB data transfer. - * - * @param { transfer } As a generic USB data transfer interface. The Client populates this interface and - * submits it in order to request a transfer - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. - * @throws { BusinessError } 14400007 - Resource busy. - * @throws { BusinessError } 14400008 - No such device (it may have been disconnected). - * @throws { BusinessError } 14400009 - Insufficient memory. - * @throws { BusinessError } 14400012 - Transmission I/O error. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function usbSubmitTransfer(transfer: UsbDataTransferParams): void; - - /** - * Cancel USB data transfer. - * - * @param { transfer } Cancel the target transfer - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * <br>1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. - * @throws { BusinessError } 14400008 - No such device (it may have been disconnected). - * @throws { BusinessError } 14400010 - Other USB error. Possible causes: - * <br>1.Unrecognized discard error code. - * @throws { BusinessError } 14400011 - The transfer is not in progress, or is already complete or cancelled. - * @syscap SystemCapability.USB.USBManager - * @since 18 - */ - function usbCancelTransfer(transfer: UsbDataTransferParams): void; -} - -export default usbManager; +/* + * Copyright (c) 2023-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit BasicServicesKit + */ + +import { AsyncCallback } from './@ohos.base'; + +/** + * This module provides the capability of manage USB device. + * + * @namespace usbManager + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ +declare namespace usbManager { + /** + * Obtains the USB device list. + * + * @returns { Array<Readonly<USBDevice>> } USB device list. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Obtains the USB device list. + * + * @returns { Array<Readonly<USBDevice>> } USB device list. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function getDevices(): Array<Readonly<USBDevice>>; + + /** + * Connects to the USB device based on the device information returned by getDevices(). + * + * @param { USBDevice } device - USB device on the device list returned by getDevices(). It cannot be empty. + * @returns { Readonly<USBDevicePipe> } object for data transfer. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Connects to the USB device based on the device information returned by getDevices(). + * + * @param { USBDevice } device - USB device on the device list returned by getDevices(). It cannot be empty. + * @returns { Readonly<USBDevicePipe> } object for data transfer. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function connectDevice(device: USBDevice): Readonly<USBDevicePipe>; + + /** + * Checks whether the application has the permission to access the device. + * + * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. + * @returns { boolean } indicates if the user has the permission to access the device. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Checks whether the application has the permission to access the device. + * + * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. + * @returns { boolean } indicates if the user has the permission to access the device. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function hasRight(deviceName: string): boolean; + + /** + * Requests the permission for a given application to access the USB device. + * The system application has access to the device by default, and there is no need to call this interface to apply. + * + * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. + * @returns { Promise<boolean> } indicates if the device access permissions are granted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Requests the permission for a given application to access the USB device. + * The system application has access to the device by default, and there is no need to call this interface to apply. + * + * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. + * @returns { Promise<boolean> } indicates if the device access permissions are granted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function requestRight(deviceName: string): Promise<boolean>; + + /** + * Remove the permission for a given application to access the USB device. + * The system application has access to the device by default, and calling this interface will not have any impact. + * + * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. + * @returns { boolean } indicates if the device access permissions are removed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Remove the permission for a given application to access the USB device. + * The system application has access to the device by default, and calling this interface will not have any impact. + * + * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. + * @returns { boolean } indicates if the device access permissions are removed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function removeRight(deviceName: string): boolean; + + /** + * Add device access permission. + * The system application has access to the device by default, and calling this interface will not have any impact. + * + * @param { string } bundleName - refers to application that require access permissions. It cannot be empty. + * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. + * @returns { boolean } value to indicate whether the permission is granted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + * @deprecated since 12 + * @useinstead ohos.usbManager/usbManager#addDeviceAccessRight + */ + function addRight(bundleName: string, deviceName: string): boolean; + + /** + * Converts the string descriptor of a given USB function list to a numeric mask combination. + * + * @param { string } funcs - descriptor of the supported function list. It cannot be empty. + * @returns { number } the numeric mask combination of the function list. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + * @deprecated since 12 + * @useinstead ohos.usbManager/usbManager#getFunctionsFromString + */ + function usbFunctionsFromString(funcs: string): number; + + /** + * Converts the numeric mask combination of a given USB function list to a string descriptor. + * + * @param { FunctionType } funcs - numeric mask combination of the function list. The type of funcs must be number. It cannot be empty. + * @returns { string } - descriptor of the supported function list. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + * @deprecated since 12 + * @useinstead ohos.usbManager/usbManager#getStringFromFunctions + */ + function usbFunctionsToString(funcs: FunctionType): string; + + /** + * Sets the current USB function list in Device mode. + * + * @param { FunctionType } funcs - numeric mask combination of the supported function list. It cannot be empty. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 14400002 - Permission denied. The HDC is disabled by the system. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + * @deprecated since 12 + * @useinstead ohos.usbManager/usbManager#setDeviceFunctions + */ + function setCurrentFunctions(funcs: FunctionType): Promise<void>; + + /** + * Obtains the numeric mask combination for the current USB function list in Device mode. + * + * @returns { FunctionType } the numeric mask combination for the current USB function list in FunctionType. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + * @deprecated since 12 + * @useinstead ohos.usbManager/usbManager#getDeviceFunctions + */ + function getCurrentFunctions(): FunctionType; + /* usb port functions begin */ + /** + * Obtains the USBPort list. + * + * @returns { Array<USBPort> } the USBPort list. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + * @deprecated since 12 + * @useinstead ohos.usbManager/usbManager#getPortList + */ + function getPorts(): Array<USBPort>; + + /** + * Gets the mask combination for the supported mode list of the specified USBPort. + * + * @param { number } portId - unique ID of the port. It cannot be empty. + * @returns { PortModeType } the mask combination for the supported mode list in PortModeType. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + * @deprecated since 12 + * @useinstead ohos.usbManager/usbManager#getPortSupportModes + */ + function getSupportedModes(portId: number): PortModeType; + + /** + * Sets the role types supported by the specified USBPort, which can be powerRole (for charging) and dataRole (for data transfer). + * + * @param { number } portId - unique ID of the port. It cannot be empty. + * @param { PowerRoleType } powerRole - charging role. It cannot be empty. + * @param { DataRoleType } dataRole - data role. It cannot be empty. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + * @deprecated since 12 + * @useinstead ohos.usbManager/usbManager#setPortRoleTypes + */ + function setPortRoles(portId: number, powerRole: PowerRoleType, dataRole: DataRoleType): Promise<void>; + + /** + * Add USB device access right. + * The system application has access to the device by default, and calling this interface will not have any impact. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { string } tokenId - refers to application that require access permissions. It cannot be empty. + * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. + * @returns { boolean } value to indicate whether the permission is granted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 12 + */ + /** + * Add USB device access right. + * The system application has access to the device by default, and calling this interface will not have any impact. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { string } tokenId - refers to application that require access permissions. It cannot be empty. + * @param { string } deviceName - device name defined by USBDevice.name. It cannot be empty. + * @returns { boolean } value to indicate whether the permission is granted. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 18 + */ + function addDeviceAccessRight(tokenId: string, deviceName: string): boolean; + + /** + * Converts the string descriptor of a given USB function list to a numeric mask combination. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { string } funcs - descriptor of the supported function list. It cannot be empty. + * @returns { number } the numeric mask combination of the function list. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 12 + */ + /** + * Converts the string descriptor of a given USB function list to a numeric mask combination. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { string } funcs - descriptor of the supported function list. It cannot be empty. + * @returns { number } the numeric mask combination of the function list. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 18 + */ + function getFunctionsFromString(funcs: string): number; + + /** + * Converts the numeric mask combination of a given USB function list to a string descriptor. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { FunctionType } funcs - numeric mask combination of the function list. It cannot be empty. + * @returns { string } - descriptor of the supported function list. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 12 + */ + /** + * Converts the numeric mask combination of a given USB function list to a string descriptor. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { FunctionType } funcs - numeric mask combination of the function list. It cannot be empty. + * @returns { string } - descriptor of the supported function list. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 18 + */ + function getStringFromFunctions(funcs: FunctionType): string; + + /** + * Sets the current USB function list in Device mode. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { FunctionType } funcs - numeric mask combination of the supported function list. It cannot be empty. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 14400002 - Permission denied. The HDC is disabled by the system. + * @throws { BusinessError } 14400006 - Unsupported operation. The function is not supported. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 12 + */ + /** + * Sets the current USB function list in Device mode. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { FunctionType } funcs - numeric mask combination of the supported function list. It cannot be empty. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400002 - Permission denied. The HDC is disabled by the system. + * @throws { BusinessError } 14400006 - Unsupported operation. The function is not supported. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 18 + */ + function setDeviceFunctions(funcs: FunctionType): Promise<void>; + + /** + * Obtains the numeric mask combination for the current USB function list in Device mode. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @returns { FunctionType } the numeric mask combination for the current USB function list in FunctionType. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 12 + */ + /** + * Obtains the numeric mask combination for the current USB function list in Device mode. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @returns { FunctionType } the numeric mask combination for the current USB function list in FunctionType. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 18 + */ + function getDeviceFunctions(): FunctionType; + /* usb port functions begin */ + /** + * Obtains the USBPort list. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @returns { Array<USBPort> } the USBPort list. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 12 + */ + /* usb port functions begin */ + /** + * Obtains the USBPort list. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @returns { Array<USBPort> } the USBPort list. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 18 + */ + function getPortList(): Array<USBPort>; + + /** + * Gets the mask combination for the supported mode list of the specified USBPort. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { number } portId - unique ID of the port. It cannot be empty. + * @returns { PortModeType } the mask combination for the supported mode list in PortModeType. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 12 + */ + /** + * Gets the mask combination for the supported mode list of the specified USBPort. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { number } portId - unique ID of the port. It cannot be empty. + * @returns { PortModeType } the mask combination for the supported mode list in PortModeType. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 18 + */ + function getPortSupportModes(portId: number): PortModeType; + + /** + * Sets the role types supported by the specified USBPort, which can be powerRole (for charging) and dataRole (for data transfer). + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { number } portId - unique ID of the port. It cannot be empty. + * @param { PowerRoleType } powerRole - charging role. It cannot be empty. + * @param { DataRoleType } dataRole - data role. It cannot be empty. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 14400003 - Unsupported operation. The current device does not support port role switching. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 12 + */ + /** + * Sets the role types supported by the specified USBPort, which can be powerRole (for charging) and dataRole (for data transfer). + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { number } portId - unique ID of the port. It cannot be empty. + * @param { PowerRoleType } powerRole - charging role. It cannot be empty. + * @param { DataRoleType } dataRole - data role. It cannot be empty. + * @returns { Promise<void> } the promise returned by the function. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400003 - Unsupported operation. The current device does not support port role switching. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 18 + */ + function setPortRoleTypes(portId: number, powerRole: PowerRoleType, dataRole: DataRoleType): Promise<void>; + + /** + * Adds USB accessory access right. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { number } tokenId - refers to application that require access permissions. It cannot be empty. + * @param { USBAccessory } accessory - USB accessory. It cannot be empty. + * @throws { BusinessError } 201 - The permission check failed. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @throws { BusinessError } 14400005 - Database operation exception. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 14 + */ + /** + * Adds USB accessory access right. + * + * @permission ohos.permission.MANAGE_USB_CONFIG + * @param { number } tokenId - refers to application that require access permissions. It cannot be empty. + * @param { USBAccessory } accessory - USB accessory. It cannot be empty. + * @throws { BusinessError } 201 - The permission check failed. + * @throws { BusinessError } 202 - Permission denied. Normal application do not have permission to use system api. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @throws { BusinessError } 14400005 - Database operation exception. + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 18 + */ + function addAccessoryRight(tokenId: number, accessory: USBAccessory): void; + /* usb pipe functions begin */ + /** + * Claims a USB interface. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. + * @param { USBInterface } iface - USB interface, which is used to determine the interface to claim. It cannot be empty. + * @param { boolean } [force] - optional parameter that determines whether to forcibly claim the USB interface. + * @returns { number } returns **0** if the USB interface is successfully claimed; returns an error code otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Claims a USB interface. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. + * @param { USBInterface } iface - USB interface, which is used to determine the interface to claim. It cannot be empty. + * @param { boolean } [force] - optional parameter that determines whether to forcibly claim the USB interface. + * @returns { number } returns **0** if the USB interface is successfully claimed; returns an error code otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function claimInterface(pipe: USBDevicePipe, iface: USBInterface, force?: boolean): number; + + /** + * Releases a USB interface. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. + * @param { USBInterface } iface - USB interface, which is used to determine the interface to release. It cannot be empty. + * @returns { number } returns **0** if the USB interface is successfully released; returns an error code otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Releases a USB interface. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. + * @param { USBInterface } iface - USB interface, which is used to determine the interface to release. It cannot be empty. + * @returns { number } returns **0** if the USB interface is successfully released; returns an error code otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function releaseInterface(pipe: USBDevicePipe, iface: USBInterface): number; + + /** + * Sets the device configuration. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. + * @param { USBConfiguration } config - device configuration. It cannot be empty. + * @returns { number } returns **0** if the device configuration is successfully set; returns an error code otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Sets the device configuration. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. + * @param { USBConfiguration } config - device configuration. It cannot be empty. + * @returns { number } returns **0** if the device configuration is successfully set; returns an error code otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function setConfiguration(pipe: USBDevicePipe, config: USBConfiguration): number; + + /** + * Sets a USB interface. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. + * @param { USBInterface } iface - USB interface, which is used to determine the interface to set. It cannot be empty. + * @returns { number } returns **0** if the USB interface is successfully set; return an error code otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Sets a USB interface. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. + * @param { USBInterface } iface - USB interface, which is used to determine the interface to set. It cannot be empty. + * @returns { number } returns **0** if the USB interface is successfully set; return an error code otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function setInterface(pipe: USBDevicePipe, iface: USBInterface): number; + + /** + * Obtains the raw USB descriptor. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. + * @returns { Uint8Array } returns the raw descriptor data. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Obtains the raw USB descriptor. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the bus number and device address. It cannot be empty. + * @returns { Uint8Array } returns the raw descriptor data. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function getRawDescriptor(pipe: USBDevicePipe): Uint8Array; + + /** + * Obtains the file descriptor. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. + * @returns { number } returns the file descriptor of the USB device. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Obtains the file descriptor. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. + * @returns { number } returns the file descriptor of the USB device. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function getFileDescriptor(pipe: USBDevicePipe): number; + + /** + * Performs control transfer. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. + * @param { USBControlParams } controlparam - control transfer parameters. It cannot be empty. + * @param { number } [timeout] - timeout duration. This parameter is optional. The default value is **0**, indicating no timeout. + * @returns { Promise<number> } returns the size of the transmitted or received data block if the control transfer is successful; + * return -1 if an exception occurs. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + * @deprecated since 12 + * @useinstead ohos.usbManager/usbManager#usbControlTransfer + */ + function controlTransfer(pipe: USBDevicePipe, controlparam: USBControlParams, timeout?: number): Promise<number>; + + /** + * Performs usb control transfer. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. + * @param { USBDeviceRequestParams } requestparam - control transfer parameters. It cannot be empty. + * @param { number } [timeout] - timeout duration. This parameter is optional. The default value is **0**, indicating no timeout. + * @returns { Promise<number> } returns the size of the transmitted or received data block if the control transfer is successful; + * return -1 if an exception occurs. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 12 + */ + /** + * Performs usb control transfer. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. + * @param { USBDeviceRequestParams } requestparam - control transfer parameters. It cannot be empty. + * @param { number } [timeout] - timeout duration. This parameter is optional. The default value is **0**, indicating no timeout. + * @returns { Promise<number> } returns the size of the transmitted or received data block if the control transfer is successful; + * return -1 if an exception occurs. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function usbControlTransfer(pipe: USBDevicePipe, requestparam: USBDeviceRequestParams, timeout?: number): Promise<number>; + + /** + * Performs bulk transfer. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. + * @param { USBEndpoint } endpoint - USB endpoint, which is used to determine the USB port for data transfer. It cannot be empty. + * @param { Uint8Array } buffer - buffer for writing or reading data. It cannot be empty. + * @param { number } [timeout] - timeout duration. This parameter is optional. The default value is **0**, indicating no timeout. + * @returns { Promise<number> } the size of the transmitted or received data block if the control transfer is successful; + * return -1 if an exception occurs. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Performs bulk transfer. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. + * @param { USBEndpoint } endpoint - USB endpoint, which is used to determine the USB port for data transfer. It cannot be empty. + * @param { Uint8Array } buffer - buffer for writing or reading data. It cannot be empty. + * @param { number } [timeout] - timeout duration. This parameter is optional. The default value is **0**, indicating no timeout. + * @returns { Promise<number> } the size of the transmitted or received data block if the control transfer is successful; + * return -1 if an exception occurs. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function bulkTransfer( + pipe: USBDevicePipe, + endpoint: USBEndpoint, + buffer: Uint8Array, + timeout?: number + ): Promise<number>; + + /** + * Closes a USB device pipe. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. + * @returns { number } returns **0** if the USB device pipe is closed successfully; return an error code otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + /** + * Closes a USB device pipe. + * + * @param { USBDevicePipe } pipe - device pipe, which is used to determine the USB device. It cannot be empty. + * @returns { number } returns **0** if the USB device pipe is closed successfully; return an error code otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1.Mandatory parameters are left unspecified. + * <br>2.Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function closePipe(pipe: USBDevicePipe): number; + + /** + * Checks whether the application has the right to access the USB accessory. + * + * @param { USBAccessory } accessory - USB accessory. It cannot be empty. + * @returns { boolean } indicates if the user has the right to access the USB accessory. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @throws { BusinessError } 14400005 - Database operation exception. + * @throws { BusinessError } 14401001 - The target USBAccessory not matched. + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + /** + * Checks whether the application has the right to access the USB accessory. + * + * @param { USBAccessory } accessory - USB accessory. It cannot be empty. + * @returns { boolean } indicates if the user has the right to access the USB accessory. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @throws { BusinessError } 14400005 - Database operation exception. + * @throws { BusinessError } 14401001 - The target USBAccessory not matched. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function hasAccessoryRight(accessory: USBAccessory): boolean; + + /** + * Requests the right for a given application to access the USB accessory. + * + * @param { USBAccessory } accessory - USB accessory. It cannot be empty. + * @returns { Promise<boolean> } indicates if the USB accessory access right are granted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @throws { BusinessError } 14400005 - Database operation exception. + * @throws { BusinessError } 14401001 - The target USBAccessory not matched. + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + /** + * Requests the right for a given application to access the USB accessory. + * + * @param { USBAccessory } accessory - USB accessory. It cannot be empty. + * @returns { Promise<boolean> } indicates if the USB accessory access right are granted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @throws { BusinessError } 14400005 - Database operation exception. + * @throws { BusinessError } 14401001 - The target USBAccessory not matched. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function requestAccessoryRight(accessory: USBAccessory): Promise<boolean>; + + /** + * Cancels the right for a given application to access the USB accessory. + * + * @param { USBAccessory } accessory - USB accessory. It cannot be empty. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @throws { BusinessError } 14400005 - Database operation exception. + * @throws { BusinessError } 14401001 - The target USBAccessory not matched. + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + /** + * Cancels the right for a given application to access the USB accessory. + * + * @param { USBAccessory } accessory - USB accessory. It cannot be empty. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @throws { BusinessError } 14400005 - Database operation exception. + * @throws { BusinessError } 14401001 - The target USBAccessory not matched. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function cancelAccessoryRight(accessory: USBAccessory): void; + + /** + * Obtains the USB Accessory list. + * + * @returns { Array<Readonly<USBAccessory>> } USB accessory list. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + /** + * Obtains the USB Accessory list. + * + * @returns { Array<Readonly<USBAccessory>> } USB accessory list. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function getAccessoryList(): Array<Readonly<USBAccessory>>; + + /** + * Obtains the accessory handle and opens accessory file descriptor. + * + * @param { USBAccessory } accessory - accessory, which is used to determine the accessory. It cannot be empty. + * @returns { USBAccessoryHandle } returns the handle of the accessory. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @throws { BusinessError } 14401001 - The target USBAccessory not matched. + * @throws { BusinessError } 14401002 - Failed to open the native accessory node. + * @throws { BusinessError } 14401003 - Cannot reopen the accessory. + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + /** + * Obtains the accessory handle and opens accessory file descriptor. + * + * @param { USBAccessory } accessory - accessory, which is used to determine the accessory. It cannot be empty. + * @returns { USBAccessoryHandle } returns the handle of the accessory. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @throws { BusinessError } 14401001 - The target USBAccessory not matched. + * @throws { BusinessError } 14401002 - Failed to open the native accessory node. + * @throws { BusinessError } 14401003 - Cannot reopen the accessory. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function openAccessory(accessory: USBAccessory): USBAccessoryHandle; + + /** + * Closes the accessory file descriptor. + * + * @param { USBAccessoryHandle } accessoryHandle - Accessory handle to be closed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + /** + * Closes the accessory file descriptor. + * + * @param { USBAccessoryHandle } accessoryHandle - Accessory handle to be closed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * <br>1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400004 - Service exception. Possible causes: + * <br>1. No accessory is plugged in. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function closeAccessory(accessoryHandle: USBAccessoryHandle): void; + + /** + * Represents the USB endpoint from which data is sent or received. You can obtain the USB endpoint through USBInterface. + * + * @typedef USBEndpoint + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + interface USBEndpoint { + /** + * Endpoint address + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + address: number; + + /** + * Endpoint attributes + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + attributes: number; + + /** + * Endpoint interval + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + interval: number; + + /** + * Maximum size of data packets on the endpoint + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + maxPacketSize: number; + + /** + * Endpoint direction + * + * @type { USBRequestDirection } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + direction: USBRequestDirection; + + /** + * Endpoint number + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + number: number; + + /** + * Endpoint type + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + type: number; + + /** + * Unique ID defined by USBInterface.id, which indicates the interface to which the endpoint belongs + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + interfaceId: number; + + + + } + + /** + * Represents a USB interface. One config can contain multiple **USBInterface** instances, each providing a specific function. + * + * @typedef USBInterface + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + interface USBInterface { + /** + * Unique ID of the USB interface + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + id: number; + + /** + * Interface protocol + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + protocol: number; + + /** + * Device type + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + clazz: number; + + /** + * Device subclass + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + subClass: number; + + /** + * Alternation between descriptors of the same USB interface + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + alternateSetting: number; + + /** + * Interface name + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + name: string; + + /** + * USBEndpoint that belongs to the USB interface + * + * @type { Array<USBEndpoint> } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + endpoints: Array<USBEndpoint>; + } + + /** + * USB configuration. One USBDevice can contain multiple USBConfiguration instances. + * + * @typedef USBConfiguration + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + interface USBConfiguration { + /** + * Unique ID of the USB configuration + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + id: number; + + /** + * Configuration attributes + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + attributes: number; + + /** + * Maximum power consumption, in mA + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + maxPower: number; + + /** + * Configuration name, which can be left empty + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + name: string; + + /** + * Support for remote wakeup + * + * @type { boolean } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + isRemoteWakeup: boolean; + + /** + * Support for independent power supplies + * + * @type { boolean } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + isSelfPowered: boolean; + + /** + * Supported interface attributes + * + * @type { Array<USBInterface> } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + interfaces: Array<USBInterface>; + } + + /** + * Represents a USB device. + * + * @typedef USBDevice + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + interface USBDevice { + /** + * Bus address + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + busNum: number; + + /** + * Device address + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + devAddress: number; + + /** + * Device SN + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + serial: string; + + /** + * Device name + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + name: string; + + /** + * Device manufacturer + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + manufacturerName: string; + + /** + * Product information + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + productName: string; + + /** + * Product version + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + version: string; + + /** + * Vendor ID + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + vendorId: number; + + /** + * Product ID + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + productId: number; + + /** + * Device class + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + clazz: number; + + /** + * Device subclass + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + subClass: number; + + /** + * Device protocol code + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + protocol: number; + + /** + * Device configuration descriptor information + * + * @type { Array<USBConfiguration> } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + configs: Array<USBConfiguration>; + } + + /** + * Represents a USB device pipe, which is used to determine the USB device. + * + * @typedef USBDevicePipe + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + interface USBDevicePipe { + /** + * Bus address. + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + busNum: number; + + /** + * Device address + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + devAddress: number; + } + + /** + * Enumerates power role types. + * + * @enum { number } + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + export enum PowerRoleType { + /** + * None + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + NONE = 0, + + /** + * External power supply + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + SOURCE = 1, + + /** + * Internal power supply + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + SINK = 2 + } + + /** + * Enumerates data role types. + * + * @enum { number } + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + export enum DataRoleType { + /** + * None + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + NONE = 0, + + /** + * Host mode + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + HOST = 1, + + /** + * Device mode + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + DEVICE = 2 + } + + /** + * Enumerates port mode types + * + * @enum { number } + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + export enum PortModeType { + /** + * None + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + NONE = 0, + + /** + * Upstream facing port, which functions as the sink of power supply + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + UFP = 1, + + /** + * Downstream facing port, which functions as the source of power supply + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + DFP = 2, + + /** + * Dynamic reconfiguration port (DRP), which can function as the DFP (host) or UFP (device). It is not supported currently. + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + DRP = 3, + + /** + * Not supported currently + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + NUM_MODES = 4 + } + + /** + * Enumerates USB device port roles. + * + * @typedef USBPortStatus + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + interface USBPortStatus { + /** + * USB mode + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + currentMode: number; + + /** + * Power role + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + currentPowerRole: number; + + /** + * Data role + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + currentDataRole: number; + } + + /** + * Represents a USB device port. + * + * @typedef USBPort + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + interface USBPort { + /** + * Unique ID of the USB port + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + id: number; + + /** + * Mask combination for the supported mode list of the USB port + * + * @type { PortModeType } + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + supportedModes: PortModeType; + + /** + * USB port role + * + * @type { USBPortStatus } + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + status: USBPortStatus; + } + + /** + * Represents control transfer parameters. + * + * @typedef USBControlParams + * @syscap SystemCapability.USB.USBManager + * @since 9 + * @deprecated since 18 + * @useinstead ohos.usbManager/usbManager#USBDeviceRequestParams + */ + interface USBControlParams { + /** + * Request type + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + * @deprecated since 18 + */ + request: number; + + /** + * Request target type + * + * @type { USBRequestTargetType } + * @syscap SystemCapability.USB.USBManager + * @since 9 + * @deprecated since 18 + */ + target: USBRequestTargetType; + + /** + * Control request type + * + * @type { USBControlRequestType } + * @syscap SystemCapability.USB.USBManager + * @since 9 + * @deprecated since 18 + */ + reqType: USBControlRequestType; + + /** + * Request parameter value + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + * @deprecated since 18 + */ + value: number; + + /** + * Index of the parameter value + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + * @deprecated since 18 + */ + index: number; + + /** + * Data written to or read from the buffer + * + * @type { Uint8Array } + * @syscap SystemCapability.USB.USBManager + * @since 9 + * @deprecated since 18 + */ + data: Uint8Array; + } + + /** + * Represents control transfer parameters. + * + * @typedef USBDeviceRequestParams + * @syscap SystemCapability.USB.USBManager + * @since 12 + */ + interface USBDeviceRequestParams { + /** + * Bit map request type + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 12 + */ + bmRequestType: number; + + /** + * Byte request + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 12 + */ + bRequest: number; + + /** + * Request parameter word value + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 12 + */ + wValue: number; + + /** + * Word index of the parameter value + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 12 + */ + wIndex: number; + + /** + * Word length of the parameter value + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 12 + */ + wLength: number; + + /** + * Data written to or read from the buffer + * + * @type { Uint8Array } + * @syscap SystemCapability.USB.USBManager + * @since 12 + */ + data: Uint8Array; + } + + /** + * Enumerates USB request target types. + * + * @enum { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + export enum USBRequestTargetType { + /** + * USB device + * + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + USB_REQUEST_TARGET_DEVICE = 0, + + /** + * USB interface + * + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + USB_REQUEST_TARGET_INTERFACE = 1, + + /** + * Endpoint + * + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + USB_REQUEST_TARGET_ENDPOINT = 2, + + /** + * Others + * + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + USB_REQUEST_TARGET_OTHER = 3 + } + + /** + * Enumerates control request types. + * + * @enum { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + export enum USBControlRequestType { + /** + * Standard + * + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + USB_REQUEST_TYPE_STANDARD = 0, + + /** + * Class + * + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + USB_REQUEST_TYPE_CLASS = 1, + + /** + * Vendor + * + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + USB_REQUEST_TYPE_VENDOR = 2 + } + + /** + * Enumerates request directions. + * + * @enum { number } + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + export enum USBRequestDirection { + /** + * Request for writing data from the host to the device + * + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + USB_REQUEST_DIR_TO_DEVICE = 0, + + /** + * Request for reading data from the device to the host + * + * @syscap SystemCapability.USB.USBManager + * @since 9 + */ + USB_REQUEST_DIR_FROM_DEVICE = 0x80 + } + + /** + * Enumerates function modes. + * + * @enum { number } + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + export enum FunctionType { + /** + * None + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + NONE = 0, + + /** + * Serial port device + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + ACM = 1, + + /** + * Ethernet port device + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + ECM = 2, + + /** + * HDC device + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + HDC = 4, + + /** + * MTP device + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + MTP = 8, + + /** + * PTP device + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + PTP = 16, + + /** + * RNDIS device + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + RNDIS = 32, + + /** + * MIDI device + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + MIDI = 64, + + /** + * Audio source device + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + AUDIO_SOURCE = 128, + + /** + * NCM device + * + * @syscap SystemCapability.USB.USBManager + * @systemapi + * @since 9 + */ + NCM = 256 + } + + /** + * Represents a USB Accessory. + * + * @typedef USBAccessory + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + interface USBAccessory { + /** + * The manufacturer name of the accessory. + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + manufacturer: string; + + /** + * The product of the accessory. + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + product: string; + + /** + * The user visible description of the accessory. + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + description: string; + + /** + * The version of the accessory. + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + version: string; + + /** + * The serial number of the accessory. + * + * @type { string } + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + serialNumber: string; + } + + /** + * Handle of accessory. + * + * @typedef USBAccessoryHandle + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + interface USBAccessoryHandle { + /** + * The file descriptor of the accessory.The valid USBAccessoryHandle.accessoryFd is a positive value. + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 14 + */ + accessoryFd: number; + } + + /** + * Usb transfer flag. + * + * @enum { number } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + export enum UsbTransferFlags { + /** + * Report short frames as errors + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + USB_TRANSFER_SHORT_NOT_OK = 0, + + /** + * Automatically free transfer buffer + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + USB_TRANSFER_FREE_BUFFER = 1, + + /** + * Automatically free transfer after callback returns + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + USB_TRANSFER_FREE_TRANSFER = 2, + + /** + * Transmissions that are multiples of wMaxPacketSize will add an additional zero packet. + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + USB_TRANSFER_ADD_ZERO_PACKET = 3 + } + + /** + * Usb transfer status. + * + * @enum { number } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + export enum UsbTransferStatus { + /** + * Transfer completed + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + TRANSFER_COMPLETED = 0, + + /** + * Transfer failed + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + TRANSFER_ERROR = 1, + + /** + * Transfer timed out + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + TRANSFER_TIMED_OUT = 2, + + /** + * Transfer was canceled + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + TRANSFER_CANCELED = 3, + + /** + * For bulk/interrupt endpoints: halt condition detected (endpoint + * stalled). For control endpoints: control request not supported. + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + TRANSFER_STALL = 4, + + /** + * Device was disconnected + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + TRANSFER_NO_DEVICE = 5, + + /** + * Device sent more data than requested + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + TRANSFER_OVERFLOW = 6 + } + + /** + * USB DATA transfer type. + * + * @enum { number } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + export enum UsbEndpointTransferType { + /** + * Isochronous endpoint + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + TRANSFER_TYPE_ISOCHRONOUS = 0x1, + + /** + * Bulk endpoint + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + TRANSFER_TYPE_BULK = 0x2, + + /** + * Interrupt endpoint + * + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + TRANSFER_TYPE_INTERRUPT = 0x3 + } + + /** + * Isochronous packet descriptors, only for isochronous transfers. + * + * @typedef UsbIsoPacketDescriptor + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + interface UsbIsoPacketDescriptor { + /** + * Length of data to request in this packet + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + length: number; + + /** + * Amount of data that was actually transferred + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + actualLength: number; + + /** + * Status code for this packet + * + * @type { UsbTransferStatus } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + status: UsbTransferStatus; + } + + /** + * submit transfer callback. + * + * @typedef SubmitTransferCallback + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + interface SubmitTransferCallback { + /** + * Actual length of data that was transferred. Read-only, and only for + * use within transfer callback function. Not valid for isochronous endpoint transfers. + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + actualLength: number; + + /** + * The status of the transfer. Read-only, and only for use within transfer callback function. + * + * @type { UsbTransferStatus } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + status: UsbTransferStatus; + + /** + * Isochronous packet descriptors, for isochronous transfers only. + * + * @type { Array<Readonly<UsbIsoPacketDescriptor>> } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + isoPacketDescs: Array<Readonly<UsbIsoPacketDescriptor>>; + } + + /** + * As a generic USB data transfer interface. The Client populates this interface and + * submits it in order to request a transfer. + * + * @typedef UsbDataTransferParams + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + interface UsbDataTransferParams { + /** + * Pipe of the device that this data transfer will be submitted to. + * + * @type { USBDevicePipe } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + devPipe: USBDevicePipe; + + /** + * A bitwise OR combination of UsbTransferFlags. + * + * @type { UsbTransferFlags } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + flags: UsbTransferFlags; + + /** + * Address of the endpoint where this transfer will be sent. + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + endpoint: number; + + /** + * Type of the transfer + * + * @type { UsbEndpointTransferType } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + type: UsbEndpointTransferType; + + /** + * Timeout for this transfer in milliseconds. A value of 0 indicates no timeout. + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + timeout: number; + + /** + * Length of the data buffer. Must be non-negative. + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + length: number; + + /** + * Callback function. This will be invoked when the transfer completes, fails, or is canceled. + * + * @type { AsyncCallback<SubmitTransferCallback> } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + callback: AsyncCallback<SubmitTransferCallback>; + + /** + * User context data. Useful for associating specific data to a transfer + * that can be accessed from within the callback function. + * + * @type { Uint8Array } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + userData: Uint8Array; + + /** + * Data buffer + * + * @type { Uint8Array } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + buffer: Uint8Array; + + /** + * Count of isochronous packets. Only used for I/O with isochronous endpoints. Must be non-negative. + * + * @type { number } + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + isoPacketCount: number; + } + + /** + * Submit USB data transfer. + * + * @param { transfer } As a generic USB data transfer interface. The Client populates this interface and + * submits it in order to request a transfer + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. + * @throws { BusinessError } 14400007 - Resource busy. Possible causes: + * <br>1. The transfer has already been submitted. + * <br>2. The interface is claimed by another program or driver. + * @throws { BusinessError } 14400008 - No such device (it may have been disconnected). + * @throws { BusinessError } 14400009 - Insufficient memory. Possible causes: + * <br>1. Memory allocation failed. + * @throws { BusinessError } 14400012 - Transmission I/O error. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function usbSubmitTransfer(transfer: UsbDataTransferParams): void; + + /** + * Cancel USB data transfer. + * + * @param { transfer } Cancel the target transfer + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. + * @throws { BusinessError } 14400008 - No such device (it may have been disconnected). + * @throws { BusinessError } 14400010 - Other USB error. Possible causes: + * <br>1.Unrecognized discard error code. + * @throws { BusinessError } 14400011 - The transfer is not in progress, or is already complete or cancelled. + * @syscap SystemCapability.USB.USBManager + * @since 18 + */ + function usbCancelTransfer(transfer: UsbDataTransferParams): void; + + /** + * Perform a USB port reset to reinitialize a usb device. The operation will attempt to restore the previous configuration + * and alternate interface settings after the reset has completed. + * + * @param { USBDevicePipe } pipe - Represents a USB device,which is the target object to be restarted.It cannot be empty. + * @returns { boolean } If the restart operation is successful, return {@code true}; if the restart operation fails, return {@code false}. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 14400001 - Access right denied. Call requestRight to get the USBDevicePipe access right first. + * @throws { BusinessError } 14400004 -Service exception. Possible causes: 1. No accessory is plugged in.. + * @throws { BusinessError } 14400008 - No such device(it may have been disconnected) + * @throws { BusinessError } 14400010 - Other USB error. Possible causes: + * <br>1.Unrecognized discard error code. + * @throws { BusinessError } 14400013 - The USBDevicePipe validity check failed. Possible causes: + * <br>1.The input parameters fail the validation check. + * <br>2.The call chain used to obtain the input parameters is not reasonable. + * @syscap SystemCapability.USB.USBManager + * @since 20 + */ + function resetUsbDevice(pipe: USBDevicePipe): boolean; + + + + + +} + +export default usbManager; \ No newline at end of file diff --git a/api/@ohos.usbManager.serial.d.ts b/api/@ohos.usbManager.serial.d.ts index 6cfe5b88cb71f21a6d5ab13933f478af9838c4ae..621b6a5918e014125856affabd2c68a989565107 100644 --- a/api/@ohos.usbManager.serial.d.ts +++ b/api/@ohos.usbManager.serial.d.ts @@ -22,7 +22,7 @@ * Provides APIs for managing USB-to-virtual serial ports and implementing USB-to-virtual serial port communication. * @namespace serialManager * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ declare namespace serialManager { @@ -30,7 +30,7 @@ declare namespace serialManager { * Obtains the serial port device list. * @returns { Readonly<SerialPort>[]} Returns the list of serial port devices obtained. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function getPortList(): Readonly<SerialPort>[]; @@ -41,9 +41,9 @@ declare namespace serialManager { * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14400005 Database operation exception. * @throws { BusinessError } 31400001 Serial port management exception. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function hasSerialRight(portId: number): boolean; @@ -54,9 +54,9 @@ declare namespace serialManager { * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14400005 Database operation exception. * @throws { BusinessError } 31400001 Serial port management exception. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function requestSerialRight(portId: number): Promise<boolean>; @@ -70,10 +70,10 @@ declare namespace serialManager { * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 14400005 Database operation exception. * @throws { BusinessError } 31400001 Serial port management exception. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @syscap SystemCapability.USB.USBManager.Serial * @systemapi - * @since 18 + * @since 19 */ function addSerialRight(tokenId: number, portId: number): void; @@ -84,9 +84,9 @@ declare namespace serialManager { * @throws { BusinessError } 14400005 Database operation exception. * @throws { BusinessError } 31400001 Serial port management exception. * @throws { BusinessError } 31400002 Access denied. Call requestSerialRight to request user authorization first. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function cancelSerialRight(portId: number): void; @@ -96,10 +96,10 @@ declare namespace serialManager { * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 31400001 Serial port management exception. * @throws { BusinessError } 31400002 Access denied. Call requestSerialRight to request user authorization first. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @throws { BusinessError } 31400004 The serial port device is occupied. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function open(portId: number): void; @@ -108,10 +108,10 @@ declare namespace serialManager { * @param { number} portId ID of the target device. For details, see <b>SerialPort.portId</b>. * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 31400001 Serial port management exception. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @throws { BusinessError } 31400005 The serial port device is not opened. Call the open API first. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function close(portId: number): void; @@ -121,10 +121,10 @@ declare namespace serialManager { * @returns { Readonly<SerialAttribute>} Communication parameters obtained, which are read-only. * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 31400001 Serial port management exception. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @throws { BusinessError } 31400005 The serial port device is not opened. Call the open API first. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function getAttribute(portId: number): Readonly<SerialAttribute>; @@ -134,10 +134,10 @@ declare namespace serialManager { * @param { SerialAttribute} attribute Communication parameters to set. * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 31400001 Serial port management exception. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @throws { BusinessError } 31400005 The serial port device is not opened. Call the open API first. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function setAttribute(portId: number, attribute: SerialAttribute): void; @@ -149,12 +149,14 @@ declare namespace serialManager { * @returns { Promise<number> } Promise used to return the length of the data read. * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 31400001 Serial port management exception. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @throws { BusinessError } 31400005 The serial port device is not opened. Call the open API first. * @throws { BusinessError } 31400006 Data transfer timed out. - * @throws { BusinessError } 31400007 I/O exception. + * @throws { BusinessError } 31400007 I/O exception. Possible causes: + * <br>1. The transfer was canceled. + * <br>2. The device offered more data than allowed. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function read(portId: number, buffer: Uint8Array, timeout?: number): Promise<number>; @@ -166,12 +168,14 @@ declare namespace serialManager { * @returns {number} Length of the data read. * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 31400001 Serial port management exception. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @throws { BusinessError } 31400005 The serial port device is not opened. Call the open API first. * @throws { BusinessError } 31400006 Data transfer timed out. - * @throws { BusinessError } 31400007 I/O exception. + * @throws { BusinessError } 31400007 I/O exception. Possible causes: + * <br>1. The transfer was canceled. + * <br>2. The device offered more data than allowed. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function readSync(portId: number, buffer: Uint8Array, timeout?: number): number; @@ -183,12 +187,14 @@ declare namespace serialManager { * @returns { Promise<number> } Promise used to return the length of the data written. * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 31400001 Serial port management exception. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @throws { BusinessError } 31400005 The serial port device is not opened. Call the open API first. * @throws { BusinessError } 31400006 Data transfer timed out. - * @throws { BusinessError } 31400007 I/O exception. + * @throws { BusinessError } 31400007 I/O exception. Possible causes: + * <br>1. The transfer was canceled. + * <br>2. The device offered more data than allowed. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function write(portId: number, buffer: Uint8Array, timeout?: number): Promise<number>; @@ -200,12 +206,14 @@ declare namespace serialManager { * @returns { number } Length of the data written. * @throws { BusinessError } 401 Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 31400001 Serial port management exception. - * @throws { BusinessError } 31400003 Device does not exist. + * @throws { BusinessError } 31400003 PortId does not exist. * @throws { BusinessError } 31400005 The serial port device is not opened. Call the open API first. * @throws { BusinessError } 31400006 Data transfer timed out. - * @throws { BusinessError } 31400007 I/O exception. + * @throws { BusinessError } 31400007 I/O exception. Possible causes: + * <br>1. The transfer was canceled. + * <br>2. The device offered more data than allowed. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ function writeSync(portId: number, buffer: Uint8Array, timeout?: number): number; @@ -213,7 +221,7 @@ declare namespace serialManager { * Represents a serial port device. * @typedef SerialPort * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ interface SerialPort { @@ -221,7 +229,7 @@ declare namespace serialManager { * Serial port device ID. * @type { number } * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ portId: number; @@ -229,7 +237,7 @@ declare namespace serialManager { * Serial port device name. * @type { string } * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ deviceName: string; } @@ -237,7 +245,7 @@ declare namespace serialManager { * Represents the communication parameters of a serial port device. * @typedef SerialAttribute * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ interface SerialAttribute { @@ -245,7 +253,7 @@ declare namespace serialManager { * Baud rate. * @type { BaudRates } * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ baudRate: BaudRates; @@ -254,7 +262,7 @@ declare namespace serialManager { * @type { DataBits } * @default DATABIT_8 * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ dataBits?: DataBits; @@ -263,7 +271,7 @@ declare namespace serialManager { * @type { Parity } * @default NONE * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ parity?: Parity; @@ -272,7 +280,7 @@ declare namespace serialManager { * @type { StopBits } * @default STOPBIT_1 * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ stopBits?: StopBits; } @@ -280,35 +288,35 @@ declare namespace serialManager { * Enumerates the baud rates of a serial port device, in bit/s. * @enum { number } * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ enum BaudRates { /** * The baud rate is 50 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_50 = 50, /** * The baud rate is 75 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_75 = 75, /** * The baud rate is 110 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_110 = 110, /** * The baud rate is 134 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_134 = 134, @@ -316,182 +324,182 @@ declare namespace serialManager { * The baud rate is 150 bit/s. * * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_150 = 150, /** * The baud rate is 200 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_200 = 200, /** * The baud rate is 300 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_300 = 300, /** * The baud rate is 600 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_600 = 600, /** * The baud rate is 1200 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_1200 = 1200, /** * The baud rate is 1800 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_1800 = 1800, /** * The baud rate is 2400 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_2400 = 2400, /** * The baud rate is 4800 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_4800 = 4800, /** * The baud rate is 9600 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_9600 = 9600, /** * The baud rate is 19200 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_19200 = 19200, /** * The baud rate is 38400 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_38400 = 38400, /** * The baud rate is 57600 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_57600 = 57600, /** * The baud rate is 115200 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_115200 = 115200, /** * The baud rate is 230400 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_230400 = 230400, /** * The baud rate is 460800 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_460800 = 460800, /** * The baud rate is 500000 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_500000 = 500000, /** * The baud rate is 576000 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_576000 = 576000, /** * The baud rate is 921600 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_921600 = 921600, /** * The baud rate is 1000000 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_1000000 = 1000000, /** * The baud rate is 1152000 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_1152000 = 1152000, /** * The baud rate is 1500000 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_1500000 = 1500000, /** * The baud rate is 2000000 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_2000000 = 2000000, /** * The baud rate is 2500000 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_2500000 = 2500000, /** * The baud rate is 3000000 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_3000000 = 3000000, /** * The baud rate is 3500000 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_3500000 = 3500000, /** * The baud rate is 4000000 bit/s. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ BAUDRATE_4000000 = 4000000 } @@ -499,85 +507,78 @@ declare namespace serialManager { * Enumerates the data bits of a serial port device. * @enum { number } * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ enum DataBits { /** * The number of data bits is 8. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ DATABIT_8 = 8, /** * The number of data bits is 7. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ DATABIT_7 = 7, /** * The number of data bits is 6. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ DATABIT_6 = 6, /** * The number of data bits is 5. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ - DATABIT_5 = 5, - - /** - * The number of data bits is 4. - * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 - */ - DATABIT_4 = 4 + DATABIT_5 = 5 } /** * Enumerates the parity bits of a serial port device. * @enum { number } * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ enum Parity { /** * No parity. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ PARITY_NONE = 0, /** * Odd parity. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ PARITY_ODD = 1, /** * Even parity. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ PARITY_EVEN = 2, /** * Mark parity, whose parity bit is always <b class="+ topic/ph hi-d/b " id="b1627884485115">1</b>. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ PARITY_MARK = 3, /** * Space parity, whose parity bit is always <b class="+ topic/ph hi-d/b " id="b1551818484291">0</b>. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ PARITY_SPACE = 4 } @@ -585,30 +586,23 @@ declare namespace serialManager { * Enumerates the stop bits for serial port communication. * @enum { number } * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ enum StopBits { /** * The number of stop bits is 1. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ STOPBIT_1 = 0, - /** - * The number of stop bits is 1.5. - * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 - */ - STOPBIT_1P5 = 1, - /** * The number of stop bits is 2. * @syscap SystemCapability.USB.USBManager.Serial - * @since 18 + * @since 19 */ - STOPBIT_2 = 2 + STOPBIT_2 = 1 } } diff --git a/api/@ohos.userIAM.faceAuth.d.ts b/api/@ohos.userIAM.faceAuth.d.ts index 9ac64b94cac7d1dd435705565bf34764bae6e5d4..f0876d95a9beaa199f5a9547e56466349492abbe 100644 --- a/api/@ohos.userIAM.faceAuth.d.ts +++ b/api/@ohos.userIAM.faceAuth.d.ts @@ -50,7 +50,7 @@ declare namespace faceAuth { * @param { string } surfaceId Indicates surface id for face enroll preview. * @throws { BusinessError } 201 - Permission verification failed. * @throws { BusinessError } 202 - The caller is not a system application. - * @throws { BusinessError } 12700001 - Operation failed. + * @throws { BusinessError } 12700001 - The service is unavailable. * @syscap SystemCapability.UserIAM.UserAuth.FaceAuth * @systemapi Hide this for inner system use. * @since 9 diff --git a/api/@ohos.userIAM.userAuth.d.ts b/api/@ohos.userIAM.userAuth.d.ts index 0676ca27e708aaf684ff8ffd1dc853fbe34d039b..015bd1c5e39199c2e4509a975c6e6a0869ed30f6 100644 --- a/api/@ohos.userIAM.userAuth.d.ts +++ b/api/@ohos.userIAM.userAuth.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023 Huawei Device Co., Ltd. + * Copyright (c) 2023-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -28,7 +28,8 @@ import type { AsyncCallback } from './@ohos.base'; * @since 6 */ /** - * User authentication + * The userAuth module provides APIs for user authentication, which applies to scenarios such as device unlocking, + * payment, and application login. * * @namespace userAuth * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -37,7 +38,7 @@ import type { AsyncCallback } from './@ohos.base'; */ declare namespace userAuth { /** - * The maximum allowable reuse duration is 300000 milliseconds. + * Maximum reuse duration of the authentication result, in milliseconds. The value is 300000. * * @constant * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -673,7 +674,7 @@ declare namespace userAuth { * @since 8 */ /** - * Credential type for authentication. + * Enumerates the identity authentication types. * * @enum { number } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -688,7 +689,7 @@ declare namespace userAuth { * @since 10 */ /** - * Authentication type pin. + * PIN authentication. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -703,7 +704,7 @@ declare namespace userAuth { * @since 8 */ /** - * Authentication type face. + * Facial authentication. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -718,7 +719,7 @@ declare namespace userAuth { * @since 8 */ /** - * Authentication type fingerprint. + * Fingerprint authentication. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -727,7 +728,7 @@ declare namespace userAuth { FINGERPRINT = 4, /** - * Authentication type private pin. + * Privacy password authentication. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @systemapi Hide this for inner system use. @@ -744,7 +745,9 @@ declare namespace userAuth { * @since 8 */ /** - * Trust level of authentication results. + * Enumerates the trust levels of the authentication result. + * For details about typical scenarios and examples, see Principles for Classifying Biometric + * Authentication Trust Levels. * * @enum { number } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -759,7 +762,9 @@ declare namespace userAuth { * @since 8 */ /** - * Authentication result trusted level 1. + * Authentication trust level 1. The authentication of this level can identify individual users and provides + * limited liveness detection capabilities. It is applicable to scenarios such as service risk control and + * access to common personal data. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -774,7 +779,9 @@ declare namespace userAuth { * @since 8 */ /** - * Authentication result trusted level 2. + * Authentication trust level 2. The authentication of this level can accurately identify individual users and + * provides regular liveness detection capabilities. It is applicable to scenarios such as device unlocking + * and application login. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -789,7 +796,8 @@ declare namespace userAuth { * @since 8 */ /** - * Authentication result trusted level 3. + * Authentication trust level 3. The authentication of this level can accurately identify individual users and + * provides strong liveness detection capabilities. It is applicable to scenarios such as device unlocking. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -804,7 +812,8 @@ declare namespace userAuth { * @since 8 */ /** - * Authentication result trusted level 4. + * Authentication trust level 4. The authentication of this level can accurately identify individual users and + * provides powerful liveness detection capabilities. It is applicable to scenarios such as small-amount payment. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1022,11 +1031,25 @@ declare namespace userAuth { * @since 9 */ /** - * Check whether the authentication capability is available. + * Checks whether the specified authentication capability is supported. + * + * <p><strong>NOTE</strong>: + * <br>Error code 12500005 is returned if the authentication executor is not registered and the specified + * authentication capability is not supported. + * <br>Error code 12500006 is returned if the authentication executor has been registered, the authentication + * functionality is not disabled, but the authentication trust level is lower than that specified by the service. + * <br>Error code 12500010 is returned if the authentication executor has been registered, the authentication + * functionality is not disabled, but the user has not enrolled credential. + * <br>Error code 12500013 is returned if the authentication executor has been registered, the authentication + * functionality is not disabled, but the password has expired. + * <br>If getAvailableStatus is called to check whether lock screen password authentication at ATL4 is supported + * for a user who has enrolled a 4-digit PIN as the lock screen password (the authentication trust level is ATL3), + * error code 12500010 will be returned. + * </p> * * @permission ohos.permission.ACCESS_BIOMETRIC - * @param { UserAuthType } authType - Credential type for authentication. - * @param { AuthTrustLevel } authTrustLevel - Trust level of authentication result. + * @param { UserAuthType } authType - Authentication type. PIN is supported since API version 11. + * @param { AuthTrustLevel } authTrustLevel - Authentication trust level. * @throws { BusinessError } 201 - Permission verification failed. * @throws { BusinessError } 401 - Incorrect parameters. Possible causes: * <br>1. Mandatory parameters are left unspecified. @@ -1042,7 +1065,7 @@ declare namespace userAuth { function getAvailableStatus(authType: UserAuthType, authTrustLevel: AuthTrustLevel): void; /** - * Enrolled state. + * Represents the state of a credential enrolled. * * @typedef EnrolledState * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1051,7 +1074,7 @@ declare namespace userAuth { */ interface EnrolledState { /** - * The credential digest. + * Credential digest, which is randomly generated when a credential is added. * * @type { number } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1061,7 +1084,7 @@ declare namespace userAuth { credentialDigest: number; /** - * The credential count. + * Number of enrolled credentials. * * @type { number } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1072,11 +1095,11 @@ declare namespace userAuth { } /** - * Get the state of enrolled credentials which varies as credentials change. + * Obtains the credential state. * * @permission ohos.permission.ACCESS_BIOMETRIC - * @param { UserAuthType } authType - Credential type for authentication. - * @returns { EnrolledState } Returns the enrolled state. + * @param { UserAuthType } authType - Authentication type. + * @returns { EnrolledState } Credential state obtained if the operation is successful. * @throws { BusinessError } 201 - Permission verification failed. * @throws { BusinessError } 401 - Incorrect parameters. Possible causes: * <br>1. Mandatory parameters are left unspecified. @@ -1108,7 +1131,7 @@ declare namespace userAuth { function getAuthInstance(challenge: Uint8Array, authType: UserAuthType, authTrustLevel: AuthTrustLevel): AuthInstance; /** - * Window mode type for user authentication widget. + * Enumerates the window types of the authentication widget. * * @enum { number } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1136,7 +1159,7 @@ declare namespace userAuth { } /** - * The mode for reusing unlock authentication result. + * Enumerates the modes for reusing authentication results. * * @enum { number } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1145,8 +1168,8 @@ declare namespace userAuth { */ enum ReuseMode { /** - * Authentication type relevant.The unlock authentication result can be reused only when the result is within - * valid duration as well as it comes from one of specified UserAuthTypes of the AuthParam. + * The device unlock authentication result can be reused within the validity period if the authentication type + * matches any of the authentication types specified for this authentication. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1155,8 +1178,8 @@ declare namespace userAuth { AUTH_TYPE_RELEVANT = 1, /** - * Authentication type irrelevant.The unlock authentication result can be reused as long as the result is within - * valid duration. + * The device unlock authentication result can be reused within the validity period regardless of the + * authentication type. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1165,9 +1188,9 @@ declare namespace userAuth { AUTH_TYPE_IRRELEVANT = 2, /** - * Caller irrelevant authentication type relevant.The latest authentication result (not only unlock authentication - * result) can be reused only when the result is within valid duration as well as it comes from one of specified - * UserAuthTypes of the AuthParam. + * Any identity authentication result (including device unlock authentication result) can be reused within the + * validity period if the authentication type matches any of the authentication types specified for + * this authentication. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1176,8 +1199,8 @@ declare namespace userAuth { CALLER_IRRELEVANT_AUTH_TYPE_RELEVANT = 3, /** - * Caller irrelevant authentication type irrelevant.The latest authentication result (not only unlock - * authentication result) can be reused as long as the result is within valid duration. + * Any identity authentication result (including device unlock authentication result) can be reused within the + * validity period regardless of the authentication type. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1187,7 +1210,18 @@ declare namespace userAuth { } /** - * Reuse unlock authentication result. + * Represents information about the authentication result reuse. + * + * <p><strong>NOTE</strong>: + * <br>If the credential changes within the reuse duration after a successful identity authentication + * (including device unlock authentication), the authentication result can still be reused and the actual + * EnrolledState is returned in the authentication result. + * <br>If the credential used for the previous authentication has been deleted when the authentication + * result is used: + * 1.If the deleted credential is face or fingerprint, the authentication result can still be reused, but + * credentialCount and credentialDigest in the EnrolledState returned are both 0. + * 2.If the deleted credential is a lock screen password, the reuse will fail. + * </p> * * @typedef ReuseUnlockResult * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1196,7 +1230,7 @@ declare namespace userAuth { */ interface ReuseUnlockResult { /** - * The mode for reusing unlock authentication result. + * Authentication result reuse mode. * * @type { ReuseMode } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1206,7 +1240,8 @@ declare namespace userAuth { reuseMode: ReuseMode; /** - * The allowable reuse duration.The value of the duration should be between 0 and MAX_ALLOWABLE_REUSE_DURATION. + * Period for which the authentication result can be reused. The value must be greater than 0 and less + * than MAX_ALLOWABLE_REUSE_DURATION. * * @type { number } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1224,7 +1259,7 @@ declare namespace userAuth { * @since 10 */ /** - * Auth parameter. + * Defines the user authentication parameters. * * @typedef AuthParam * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1240,7 +1275,8 @@ declare namespace userAuth { * @since 10 */ /** - * Pass in challenge value. + * Random challenge value, which can be used to prevent replay attacks. + * It cannot exceed 32 bytes and can be passed in Uint8Array([]) format. * * @type { Uint8Array } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1257,7 +1293,7 @@ declare namespace userAuth { * @since 10 */ /** - * Credential type for authentication. + * Authentication type list, which specifies the types of authentication provided on the user authentication page. * * @type { UserAuthType[] } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1274,7 +1310,7 @@ declare namespace userAuth { * @since 10 */ /** - * Trust level of authentication result. + * Authentication trust level. For details, see Principles for Classifying Biometric Authentication Trust Levels. * * @type { AuthTrustLevel } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1284,7 +1320,7 @@ declare namespace userAuth { authTrustLevel: AuthTrustLevel; /** - * Reuse unlock authentication result. + * Information about the authentication result reuse. * * @type { ?ReuseUnlockResult } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1294,9 +1330,10 @@ declare namespace userAuth { reuseUnlockResult?: ReuseUnlockResult; /** - * The user id to authenticate. + * ID of the user to be authenticated. * * @type { ?number } + * @default The ID of the current user. The value is a positive integer greater than or equal to 0. * @syscap SystemCapability.UserIAM.UserAuth.Core * @systemapi Hide this for inner system use. * @since 18 @@ -1312,7 +1349,7 @@ declare namespace userAuth { * @since 10 */ /** - * Auth widget parameter. + * Represents the information presented on the user authentication page. * * @typedef WidgetParam * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1328,7 +1365,7 @@ declare namespace userAuth { * @since 10 */ /** - * Title of widget. + * Title of the user authentication page. It cannot exceed 500 characters. * * @type { string } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1345,7 +1382,9 @@ declare namespace userAuth { * @since 10 */ /** - * The description text of navigation button. + * Text on the navigation button. It cannot exceed 60 characters. It is supported in single fingerprint or facial + * authentication before API version 18. Since API version 18, it is also supported in combined facial and + * fingerprint authentication. * * @type { ?string } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1355,7 +1394,7 @@ declare namespace userAuth { navigationButtonText?: string; /** - * Display type of widget. + * Display format of the user authentication page. * * @type { ?WindowModeType } * @default WindowModeType.DIALOG_BOX @@ -1366,8 +1405,9 @@ declare namespace userAuth { windowMode?: WindowModeType; /** - * Display the authentication dialog in modal application mode. This mode is supported only on PC. Without this - * parameter or on other kind of devices, the authentication dialog would be displayed in modal system mode. + * Whether to display the authentication dialog box in modal application mode. This mode is applicable only + * to 2-in-1 devices. If this mode is not used or other types of devices are used, the authentication dialog + * box is displayed in modal system mode. * * @type { ?Context } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1385,7 +1425,8 @@ declare namespace userAuth { * @since 10 */ /** - * Authentication result: authentication token, credential type for authentication succeed. + * Represents the user authentication result. If the authentication is successful, the authentication type and token + * information are returned. * * @typedef UserAuthResult * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1401,7 +1442,8 @@ declare namespace userAuth { * @since 10 */ /** - * The authentication result. + * User authentication result. If the authentication is successful, SUCCESS is returned. Otherwise, an error code + * is returned. For details, see UserAuthResultCode. * * @type { number } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1418,7 +1460,7 @@ declare namespace userAuth { * @since 10 */ /** - * The authentication result if the authentication is passed. + * Authentication token information. * * @type { ?Uint8Array } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1435,7 +1477,7 @@ declare namespace userAuth { * @since 10 */ /** - * Credential type for authentication succeed. + * Authentication type. * * @type { ?UserAuthType } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1445,8 +1487,7 @@ declare namespace userAuth { authType?: UserAuthType; /** - * The enrolled state for authentication succeed. EnrolledState would be returned when the authentication has - * passed. + * Credential state. * * @type { ?EnrolledState } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1464,7 +1505,7 @@ declare namespace userAuth { * @since 10 */ /** - * Asynchronous callback of authentication operation. + * Provides callbacks to return the authentication result. * * @interface IAuthCallback * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1481,8 +1522,8 @@ declare namespace userAuth { * @since 10 */ /** - * The authentication result code is returned through the callback. - * If the authentication is passed, the authentication token is returned in extraInfo. + * Called to return the authentication result. If the authentication is successful, + * UserAuthResult contains the token information. * * @param { UserAuthResult } result - Authentication result information. * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1500,7 +1541,8 @@ declare namespace userAuth { * @since 10 */ /** - * User authentication instance, used to initiate a complete authentication. + * Provides APIs for user authentication. The user authentication widget is supported. Before using the APIs + * of UserAuthInstance, you must obtain a UserAuthInstance instance by using getUserAuthInstance. * * @interface UserAuthInstance * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1522,10 +1564,10 @@ declare namespace userAuth { * @since 10 */ /** - * Turn on widget authentication result event listening. + * Subscribes to the user authentication result. * - * @param { 'result' } type - Indicates the type of event. - * @param { IAuthCallback } callback - Indicates the listener. + * @param { 'result' } type - Event type. The value is result, which indicates the authentication result. + * @param { IAuthCallback } callback - Callback used to return the user authentication result. * @throws { BusinessError } 401 - Incorrect parameters. Possible causes: * <br>1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. @@ -1551,10 +1593,14 @@ declare namespace userAuth { * @since 10 */ /** - * Turn off widget authentication result event listening. + * Unsubscribes from the user authentication result. * - * @param { 'result' } type - Indicates the type of event. - * @param { IAuthCallback } callback - Indicates the listener. + * <p><strong>NOTE</strong>: + * <br>The UserAuthInstance instance used to invoke this API must be the one used to subscribe to the event. + * </p> + * + * @param { 'result' } type - Event type. The value is result, which indicates the authentication result. + * @param { IAuthCallback } callback - Callback to unregister. * @throws { BusinessError } 401 - Incorrect parameters. Possible causes: * <br>1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. @@ -1608,6 +1654,36 @@ declare namespace userAuth { * @atomicservice * @since 12 */ + /** + * Starts authentication. + * + * <p><strong>NOTE</strong>: + * <br>Each UserAuthInstance can be used for authentication only once. + * <br>Starting from API version 20, only system applications can apply for the + * ohos.permission.USER_AUTH_FROM_BACKGROUND permission. + * </p> + * + * @permission ohos.permission.ACCESS_BIOMETRIC or ohos.permission.USER_AUTH_FROM_BACKGROUND + * @throws { BusinessError } 201 - Permission verification failed. Possible causes: + * <br>1. No permission to access biometric. + * <br>2. No permission to start authentication from background. + * @throws { BusinessError } 401 - Incorrect parameters. Possible causes: + * <br>1. Incorrect parameter types. + * @throws { BusinessError } 12500001 - Authentication failed. + * @throws { BusinessError } 12500002 - General operation error. + * @throws { BusinessError } 12500003 - Authentication canceled. + * @throws { BusinessError } 12500004 - Authentication timeout. + * @throws { BusinessError } 12500005 - The authentication type is not supported. + * @throws { BusinessError } 12500006 - The authentication trust level is not supported. + * @throws { BusinessError } 12500007 - Authentication service is busy. + * @throws { BusinessError } 12500009 - Authentication is locked out. + * @throws { BusinessError } 12500010 - The type of credential has not been enrolled. + * @throws { BusinessError } 12500011 - Switched to the custom authentication process. + * @throws { BusinessError } 12500013 - Operation failed because of PIN expired. + * @syscap SystemCapability.UserIAM.UserAuth.Core + * @atomicservice + * @since 20 + */ start(): void; /** @@ -1622,7 +1698,11 @@ declare namespace userAuth { * @since 10 */ /** - * Cancel this authentication. + * Cancels this authentication. + * + * <p><strong>NOTE</strong>: + * <br>UserAuthInstance must be the instance being authenticated. + * </p> * * @permission ohos.permission.ACCESS_BIOMETRIC * @throws { BusinessError } 201 - Permission verification failed. @@ -1653,7 +1733,11 @@ declare namespace userAuth { * @since 10 */ /** - * Get user authentication instance with widget. + * Obtains a UserAuthInstance instance for user authentication. The user authentication widget is also supported. + * + * <p><strong>NOTE</strong>: + * <br>Each UserAuthInstance can be used for authentication only once. + * </p> * * @param { AuthParam } authParam - Auth parameter. * @param { WidgetParam } widgetParam - Widget parameter. @@ -1672,7 +1756,7 @@ declare namespace userAuth { function getUserAuthInstance(authParam: AuthParam, widgetParam: WidgetParam): UserAuthInstance; /** - * Notice type for user authentication. + * Defines the type of the user authentication notification. * * @enum { number } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1681,7 +1765,7 @@ declare namespace userAuth { */ enum NoticeType { /** - * Notice from widget. + * Notification from the user authentication widget. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @systemapi Hide this for inner system use. @@ -1691,11 +1775,11 @@ declare namespace userAuth { } /** - * Send notice to user authentication. + * Sends a notification from the user authentication widget. * * @permission ohos.permission.SUPPORT_USER_AUTH - * @param { NoticeType } noticeType - Notice type for user authentication. - * @param { string } eventData - The event data from widget. + * @param { NoticeType } noticeType - Notification type. + * @param { string } eventData - Event data. The data cannot exceed 65536 bytes. * @throws { BusinessError } 201 - Permission verification failed. * @throws { BusinessError } 202 - The caller is not a system application. * @throws { BusinessError } 401 - Incorrect parameters. Possible causes: @@ -1717,7 +1801,7 @@ declare namespace userAuth { * @since 9 */ /** - * Enum for operation result. + * Enumerates the authentication result codes. * * @enum { number } * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1732,7 +1816,7 @@ declare namespace userAuth { * @since 9 */ /** - * Indicates that the result is success or ability is supported. + * The authentication is successful. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1747,7 +1831,7 @@ declare namespace userAuth { * @since 9 */ /** - * Indicates that the authentication result is failed. + * The authentication failed. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1762,7 +1846,7 @@ declare namespace userAuth { * @since 9 */ /** - * Indicates other errors. + * A general operation error occurred. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1777,7 +1861,7 @@ declare namespace userAuth { * @since 9 */ /** - * Indicates that this operation is canceled. + * The authentication is canceled. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1792,7 +1876,7 @@ declare namespace userAuth { * @since 9 */ /** - * Indicates that this operation is time-out. + * The authentication has timed out. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1807,7 +1891,7 @@ declare namespace userAuth { * @since 9 */ /** - * Indicates that this authentication type is not supported. + * The authentication type is not supported. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1822,7 +1906,7 @@ declare namespace userAuth { * @since 9 */ /** - * Indicates that the authentication trust level is not supported. + * The authentication trust level is not supported. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1837,7 +1921,7 @@ declare namespace userAuth { * @since 9 */ /** - * Indicates that the authentication task is busy. Wait for a few seconds and try again. + * The system does not respond. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1852,7 +1936,7 @@ declare namespace userAuth { * @since 9 */ /** - * Indicates that the authenticator is locked. + * The authentication executor is locked. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1867,7 +1951,7 @@ declare namespace userAuth { * @since 9 */ /** - * Indicates that the user has not enrolled the authenticator. + * The user has not enrolled the specified system identity authentication credential. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1882,7 +1966,8 @@ declare namespace userAuth { * @since 10 */ /** - * Indicates that this operation is canceled from widget's navigation button. + * The user cancels the system authentication and selects a custom authentication of the application. + * The caller needs to launch the custom authentication page. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1891,7 +1976,7 @@ declare namespace userAuth { CANCELED_FROM_WIDGET = 12500011, /** - * Indicates that current operation failed because of PIN expired. + * The authentication failed because the lock screen password has expired. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @atomicservice @@ -1900,7 +1985,7 @@ declare namespace userAuth { PIN_EXPIRED = 12500013, /** - * Indicates that current operation failed because of authToken integrity check failed. + * The AuthToken is invalid. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @systemapi Hide this for inner system use. @@ -1909,7 +1994,8 @@ declare namespace userAuth { AUTH_TOKEN_CHECK_FAILED = 12500015, /** - * Indicates that current operation failed because of authToken has expired. + * The interval between the AuthToken issuance time and the AuthToken verification time exceeds + * the maximum validity period. * * @syscap SystemCapability.UserIAM.UserAuth.Core * @systemapi Hide this for inner system use. @@ -1919,7 +2005,8 @@ declare namespace userAuth { } /** - * User authentication widget's manager, used to manage widget's client. + * Provides APIs for managing the user authentication widget. You can use the APIs to register the user + * authentication widget with UserAuthWidgetMgr for management and scheduling. * * @interface UserAuthWidgetMgr * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1928,10 +2015,12 @@ declare namespace userAuth { */ interface UserAuthWidgetMgr { /** - * Turn on authentication widget command event listening. + * Subscribes to commands from the user authentication framework for the user authentication widget. * - * @param { 'command' } type - Indicates the type of event. - * @param { IAuthWidgetCallback } callback - Indicates the listener. + * @param { 'command' } type - Event type. The vlaue is command, which indicates the command sent from the user + * authentication framework to the user authentication widget. + * @param { IAuthWidgetCallback } callback - Callback used to return the command from the user authentication + * framework to the user authentication widget. * @throws { BusinessError } 401 - Incorrect parameters. Possible causes: * <br>1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. @@ -1944,10 +2033,11 @@ declare namespace userAuth { on(type: 'command', callback: IAuthWidgetCallback): void; /** - * Turn off authentication widget command event listening. + * Unsubscribes from commands sent from the user authentication framework. * - * @param { 'command' } type - Indicates the type of event. - * @param { IAuthWidgetCallback } callback - Indicates the listener. + * @param { 'command' } type - Event type. The value is command, which indicates the command sent from the user + * authentication framework to the user authentication widget. + * @param { IAuthWidgetCallback } callback - Callback to unregister. * @throws { BusinessError } 401 - Incorrect parameters. Possible causes: * <br>1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. @@ -1961,11 +2051,15 @@ declare namespace userAuth { } /** - * Get authentication instance with widget. + * Obtains a UserAuthWidgetMgr instance for user authentication. + * + * <p><strong>NOTE</strong>: + * <br>A UserAuthInstance instance can be used for an authentication only once. + * </p> * * @permission ohos.permission.SUPPORT_USER_AUTH - * @param { number } version - The version of widget. - * @returns { UserAuthWidgetMgr } Returns an authentication manager. + * @param { number } version - Version of the user authentication widget. + * @returns { UserAuthWidgetMgr } UserAuthWidgetMgr instance obtained. * @throws { BusinessError } 201 - Permission verification failed. * @throws { BusinessError } 202 - The caller is not a system application. * @throws { BusinessError } 401 - Incorrect parameters. Possible causes: @@ -1979,7 +2073,8 @@ declare namespace userAuth { function getUserAuthWidgetMgr(version: number): UserAuthWidgetMgr; /** - * Asynchronous callback of authentication widget operation. + * Provides the callback for returning the commands sent from the user authentication framework + * to the user authentication widget. * * @interface IAuthWidgetCallback * @syscap SystemCapability.UserIAM.UserAuth.Core @@ -1988,9 +2083,10 @@ declare namespace userAuth { */ interface IAuthWidgetCallback { /** - * The command data for authentication with widget is sent through the callback. + * Called to return the command sent from the user authentication framework to the user authentication widget. * - * @param { string } cmdData - The command data for authentication with widget. + * @param { string } cmdData - Command sent from the user authentication framework to the user + * authentication widget. * @syscap SystemCapability.UserIAM.UserAuth.Core * @systemapi Hide this for inner system use. * @since 10 diff --git a/api/@ohos.util.ArrayList.d.ts b/api/@ohos.util.ArrayList.d.ts index f474f87a3d39c2f47be7928badc1a1d5cf5f0577..f8853a19013f96f676e48456494002c1d3302b1d 100644 --- a/api/@ohos.util.ArrayList.d.ts +++ b/api/@ohos.util.ArrayList.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class ArrayList<T> { /** @@ -65,7 +66,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -93,6 +95,17 @@ declare class ArrayList<T> { * @since 12 */ length: number; + /** + * Gets the element number of the ArrayList. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; /** * Appends the specified element to the end of this arraylist. * @@ -121,7 +134,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ add(element: T): boolean; /** @@ -173,7 +187,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ insert(element: T, index: number): void; /** @@ -204,7 +219,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ has(element: T): boolean; /** @@ -238,7 +254,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getIndexOf(element: T): number; /** @@ -278,7 +295,7 @@ declare class ArrayList<T> { * * @param { number } index - index index the index in the arraylist * @returns { T } the T type ,returns undefined if arraylist is empty,If the index is - * @throws { BusinessError } 10200001 - The value of index is out of range. + * @throws { BusinessError } 10200001 - The value of "index" is out of range. * @throws { BusinessError } 10200011 - The removeByIndex method cannot be bound. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -287,7 +304,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ removeByIndex(index: number): T; /** @@ -324,7 +342,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ remove(element: T): boolean; /** @@ -358,7 +377,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getLastIndexOf(element: T): number; /** @@ -404,7 +424,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ removeByRange(fromIndex: number, toIndex: number): void; /** @@ -459,6 +480,19 @@ declare class ArrayList<T> { * @since 12 */ replaceAllElements(callbackFn: (value: T, index?: number, arrlist?: ArrayList<T>) => T, thisArg?: Object): void; + + /** + * Replaces each element of this arrayList with the result of applying the operator to that element. + * + * @param { ArrayListCbFn1<T> } callbackFn - A callback function to execute for each element. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + replaceAllElements(callbackFn: ArrayListCbFn1<T>): void; + /** * Executes a provided function once for each value in the arraylist object. * @@ -511,6 +545,19 @@ declare class ArrayList<T> { * @since 12 */ forEach(callbackFn: (value: T, index?: number, arrlist?: ArrayList<T>) => void, thisArg?: Object): void; + + /** + * Iterates over elements in a generic ArrayList and executes a callback function for each element. + * + * @param { ArrayListCbFn<T> } callbackFn - A callback function to execute for each element. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackFn: ArrayListCbFn<T>): void; + /** * Sorts this arraylist according to the order induced by the specified comparator,without comparator this parameter, * it will default to ASCII sorting @@ -560,7 +607,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ sort(comparator?: (firstValue: T, secondValue: T) => number): void; /** @@ -609,7 +657,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ subArrayList(fromIndex: number, toIndex: number): ArrayList<T>; /** @@ -637,7 +686,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): void; /** @@ -665,7 +715,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clone(): ArrayList<T>; /** @@ -693,7 +744,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getCapacity(): number; /** @@ -721,7 +773,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ convertToArray(): Array<T>; /** @@ -749,7 +802,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmpty(): boolean; /** @@ -765,6 +819,33 @@ declare class ArrayList<T> { * @since 12 */ [index: number]: T; + + /** + * Returns the item at that index. + * + * @param { number } index - The zero-based index of the desired code unit. + * @returns { T } The element in the arrayList matching the given index. + * @throws { BusinessError } 10200001 - The value of index is out of range. + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_get(index: number): T; + + /** + * Set the value of item at that index. + * + * @param { number } index - The index of the element to set. + * @param { T } value - The value to set at the specified index. + * @throws { BusinessError } 10200001 - The value of index is out of range. + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_set(index: number, value: T): void; + /** * If the newCapacity provided by the user is greater than or equal to length, * change the capacity of the arraylist to newCapacity, otherwise the capacity will not be changed @@ -802,7 +883,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ increaseCapacityTo(newCapacity: number): void; /** @@ -827,7 +909,8 @@ declare class ArrayList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ trimToCurrentLength(): void; /** @@ -858,6 +941,48 @@ declare class ArrayList<T> { * @since 12 */ [Symbol.iterator](): IterableIterator<T>; + + /** + * Returns an iterator. Each item of the iterator is a ArkTS Object + * + * @returns { IterableIterator<T> } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<T>; } + /** + * The type of ArrayList callback function. + * + * @typedef { function } ArrayListCbFn + * @param { T } value - The current element being processed + * @param { number } index - The index of the current element + * @param { ArrayList<T> } arrlist - The ArrayList instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + type ArrayListCbFn<T> = (value: T, index: number, arrlist: ArrayList<T>) => void; + + /** + * The type of ArrayList callback function. + * + * @typedef { function } ArrayListCbFn + * @param { T } value - The current element being processed + * @param { number } index - The index of the current element + * @param { ArrayList<T> } arrlist - The ArrayList instance being traversed + * @returns { T } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + type ArrayListCbFn1<T> = (value: T, index?: number, arrlist?: ArrayList<T>) => T; + export default ArrayList; diff --git a/api/@ohos.util.Deque.d.ts b/api/@ohos.util.Deque.d.ts index 9eb396a3fc85896bb907aa2bf6f33b1a5236128a..8e4758b126ebe044d827f4c34ffd5d1fa807989f 100644 --- a/api/@ohos.util.Deque.d.ts +++ b/api/@ohos.util.Deque.d.ts @@ -43,7 +43,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class Deque<T> { /** @@ -68,7 +69,8 @@ declare class Deque<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -96,6 +98,17 @@ declare class Deque<T> { * @since 12 */ length: number; + /** + * Gets the element number of the Deque. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; /** * Inserts an element into the deque header. * @@ -121,7 +134,8 @@ declare class Deque<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ insertFront(element: T): void; /** @@ -149,7 +163,8 @@ declare class Deque<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ insertEnd(element: T): void; /** @@ -180,7 +195,8 @@ declare class Deque<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ has(element: T): boolean; /** @@ -211,6 +227,19 @@ declare class Deque<T> { * @since 12 */ getFirst(): T; + + /** + * Obtains the header element of a deque. + * + * @returns { T | undefined } the first element of the deque if it exists, otherwise returns undefined. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getFirst(): T | undefined; + /** * Obtains the end element of a deque. * @@ -239,6 +268,19 @@ declare class Deque<T> { * @since 12 */ getLast(): T; + + /** + * Obtains the end element of a deque. + * + * @returns { T | undefined } the last element of the deque if it exists, otherwise returns undefined. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getLast(): T | undefined; + /** * Obtains the header element of a deque and delete the element. * @@ -267,6 +309,19 @@ declare class Deque<T> { * @since 12 */ popFirst(): T; + + /** + * Obtains the header element of a deque and delete the element. + * + * @returns { T | undefined } the deleted element of the deque if it exists, otherwise returns undefined. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + popFirst(): T | undefined; + /** * Obtains the end element of a deque and delete the element. * @@ -295,6 +350,19 @@ declare class Deque<T> { * @since 12 */ popLast(): T; + + /** + * Obtains the end element of a deque and delete the element. + * + * @returns { T | undefined } the deleted element of the deque if it exists, otherwise returns undefined. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + popLast(): T | undefined; + /** * Executes a provided function once for each value in the deque object. * @@ -347,6 +415,44 @@ declare class Deque<T> { * @since 12 */ forEach(callbackFn: (value: T, index?: number, deque?: Deque<T>) => void, thisArg?: Object): void; + + /** + * Iterates over elements in a generic Deque (double-ended queue) and executes a callback function for each element. + * + * @param { DequeCbFnforEach<T> } callbackFn - A callback function to execute for each element. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackFn: DequeCbFnforEach<T>): void; + /** + * Returns the byte at the specified index. + * + * @param { number } index - The zero-based index of the desired code unit. + * @returns { T } The element in the deque matching the given index. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_get(index: number): T; + + /** + * Sets the byte at the specified index. + * + * @param { number } index – The index of the element to set. + * @param { T } value – The value to set at the specified index. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_set(index: number, value: T): void; + /** * returns an iterator.Each item of the iterator is a Javascript Object * @@ -375,6 +481,33 @@ declare class Deque<T> { * @since 12 */ [Symbol.iterator](): IterableIterator<T>; + + /** + * Returns an iterator. Each item of the iterator is a ArkTS Object + * + * @returns { IterableIterator<T> } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<T>; } + /** + * The type of Deque forEach callback function. + * + * @typedef { function } DequeCbFnforEach + * @param { T } value - The current element being processed + * @param { number } index - The index of the current element + * @param { Deque<T> } deque - The Deque instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + type DequeCbFnforEach<T> = (value: T, index: number, deque: Deque<T>) => void; + export default Deque; diff --git a/api/@ohos.util.HashMap.d.ts b/api/@ohos.util.HashMap.d.ts index 730a29a547b15c1737bddd580a60d04d8da12717..7ade3272fd8cad35b3691c6bc958b37f44454bb1 100644 --- a/api/@ohos.util.HashMap.d.ts +++ b/api/@ohos.util.HashMap.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class HashMap<K, V> { /** @@ -65,7 +66,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -93,6 +95,17 @@ declare class HashMap<K, V> { * @since 12 */ length: number; + /** + * Gets the element number of the HashMap. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; /** * Returns whether the Map object contains elements * @@ -118,7 +131,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmpty(): boolean; /** @@ -149,7 +163,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ hasKey(key: K): boolean; /** @@ -180,7 +195,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ hasValue(value: V): boolean; /** @@ -214,6 +230,20 @@ declare class HashMap<K, V> { * @since 12 */ get(key: K): V; + + /** + * Returns a specified element in a Map object, or undefined if there is no corresponding element + * + * @param { K } key - key key the index in HashMap + * @returns { V | undefined } value or undefined + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get(key: K): V | undefined; + /** * Adds all element groups in one map to another map * @@ -248,7 +278,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setAll(map: HashMap<K, V>): void; /** @@ -288,7 +319,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ set(key: K, value: V): Object; /** @@ -322,6 +354,20 @@ declare class HashMap<K, V> { * @since 12 */ remove(key: K): V; + + /** + * Remove a specified element from a Map object + * + * @param { K } key - key key Target to be deleted + * @returns { V | undefined } Tthe value associated with the key if it was removed, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + remove(key: K): V | undefined; + /** * Clear all element groups in the map * @@ -344,7 +390,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): void; /** @@ -372,7 +419,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ keys(): IterableIterator<K>; /** @@ -400,7 +448,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ values(): IterableIterator<V>; /** @@ -434,7 +483,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ replace(key: K, newValue: V): boolean; /** @@ -492,6 +542,19 @@ declare class HashMap<K, V> { * @since 12 */ forEach(callbackFn: (value?: V, key?: K, map?: HashMap<K, V>) => void, thisArg?: Object): void; + + /** + * Iterates over all key-value pairs in the HashMap and executes a callback function for each entry. + * + * @param { HashMapCbFn<K, V> } callbackFn - A callback function to execute for each key-value pair. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackFn: HashMapCbFn<K, V>): void; + /** * Returns a new Iterator object that contains the [key, value] pairs for each element in the Map object in insertion order * @@ -517,7 +580,8 @@ declare class HashMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ entries(): IterableIterator<[K, V]>; /** @@ -548,6 +612,33 @@ declare class HashMap<K, V> { * @since 12 */ [Symbol.iterator](): IterableIterator<[K, V]>; + + /** + * returns an iterator.Each item of the iterator is a Javascript Object + * + * @returns { IterableIterator<[K, V]> } an iterator for the HashMap + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<[K, V]>; } + /** + * The type of HashMap callback function. + * + * @typedef { function } HashMapCbFn + * @param { V } value - The value of the current entry + * @param { K } key - The key of the current entry + * @param { HashMap<K, V> } map - The HashMap instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + type HashMapCbFn<K, V> = (value: V, key: K, map: HashMap<K, V>) => void; + export default HashMap; diff --git a/api/@ohos.util.HashSet.d.ts b/api/@ohos.util.HashSet.d.ts index 7d86579d11838cf3a6b489d0dc1ed2520d33bdbb..654a6e7c8f42d6b1915096ee33811be6f1711005 100644 --- a/api/@ohos.util.HashSet.d.ts +++ b/api/@ohos.util.HashSet.d.ts @@ -37,7 +37,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class HashSet<T> { /** @@ -62,7 +63,8 @@ declare class HashSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -90,6 +92,17 @@ declare class HashSet<T> { * @since 12 */ length: number; + /** + * Gets the element number of the HashSet. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; /** * Returns whether the Set object contains elements * @@ -115,7 +128,8 @@ declare class HashSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmpty(): boolean; /** @@ -158,7 +172,8 @@ declare class HashSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ has(value: T): boolean; /** @@ -201,7 +216,8 @@ declare class HashSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ add(value: T): boolean; /** @@ -244,7 +260,8 @@ declare class HashSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ remove(value: T): boolean; /** @@ -269,7 +286,8 @@ declare class HashSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): void; /** @@ -324,6 +342,19 @@ declare class HashSet<T> { * @since 12 */ forEach(callbackFn: (value?: T, key?: T, set?: HashSet<T>) => void, thisArg?: Object): void; + + /** + * Iterates over all elements in the HashSet and executes a callback function for each element. + * + * @param { HashSetCbFn<T> } callbackFn - A callback function to execute for each element. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackFn: HashSetCbFn<T>): void; + /** * Returns a new Iterator object that contains the values contained in this set * @@ -349,7 +380,8 @@ declare class HashSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ values(): IterableIterator<T>; /** @@ -377,7 +409,8 @@ declare class HashSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ entries(): IterableIterator<[T, T]>; /** @@ -408,6 +441,33 @@ declare class HashSet<T> { * @since 12 */ [Symbol.iterator](): IterableIterator<T>; + + /** + * returns an iterator.Each item of the iterator is a Javascript Object + * + * @returns { IterableIterator<T> } an iterator for the HashSet + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<T>; } +/** + * The type of HashSet callback function. + * + * @typedef { function } HashSetCbFn + * @param { T } value - The current element being processed + * @param { T } key - [Deprecated] HashSet does not use key-value pairs, this parameter exists only for API compatibility + * @param { HashSet<T> } set - The HashSet instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type HashSetCbFn<T> = (value: T, key: T, set: HashSet<T>) => void; + export default HashSet; diff --git a/api/@ohos.util.LightWeightMap.d.ts b/api/@ohos.util.LightWeightMap.d.ts index 64c50f29dfb32de8482c9a3d443ba75c54b864d4..4b64ae7b160b28c5f8441a1079fdbf869f04c782 100644 --- a/api/@ohos.util.LightWeightMap.d.ts +++ b/api/@ohos.util.LightWeightMap.d.ts @@ -37,7 +37,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class LightWeightMap<K, V> { /** @@ -62,7 +63,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -90,6 +92,17 @@ declare class LightWeightMap<K, V> { * @since 12 */ length: number; + /** + * Gets the element number of the LightWeightMap. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; /** * Returns whether this map has all the object in a specified map * @@ -127,7 +140,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ hasAll(map: LightWeightMap<K, V>): boolean; /** @@ -158,7 +172,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ hasKey(key: K): boolean; /** @@ -189,7 +204,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ hasValue(value: V): boolean; /** @@ -229,7 +245,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ increaseCapacityTo(minimumCapacity: number): void; /** @@ -257,7 +274,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ entries(): IterableIterator<[K, V]>; /** @@ -291,6 +309,20 @@ declare class LightWeightMap<K, V> { * @since 12 */ get(key: K): V; + + /** + * Returns the value to which the specified key is mapped, or undefined if this map contains no mapping for the key + * + * @param { K } key - key key the index in LightWeightMap + * @returns { V | undefined } value if associated with key presents, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get(key: K): V | undefined; + /** * Obtains the index of the key equal to a specified key in an LightWeightMap container * @@ -319,7 +351,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getIndexOfKey(key: K): number; /** @@ -350,7 +383,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getIndexOfValue(value: V): number; /** @@ -378,7 +412,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmpty(): boolean; /** @@ -427,6 +462,27 @@ declare class LightWeightMap<K, V> { * @since 12 */ getKeyAt(index: number): K; + + /** + * Obtains the key at the location identified by index in an LightWeightMap container + * + * @param { number } index - index index Target subscript for search + * @returns { K | undefined } the key of key-value pairs + * @throws { BusinessError } 10200011 - The getKeyAt method cannot be bound. + * @throws { BusinessError } 10200001 - The value of index is out of range. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getKeyAt(index: number): K | undefined; + + /** * Obtains a ES6 iterator that contains all the keys of an LightWeightMap container * @@ -452,7 +508,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ keys(): IterableIterator<K>; /** @@ -489,7 +546,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setAll(map: LightWeightMap<K, V>): void; /** @@ -523,7 +581,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ set(key: K, value: V): Object; /** @@ -557,6 +616,20 @@ declare class LightWeightMap<K, V> { * @since 12 */ remove(key: K): V; + + /** + * Remove the mapping for this key from this map if present + * + * @param { K } key - key key Target to be deleted + * @returns { V | undefined } the value associated with the key if it was removed, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + remove(key: K): V | undefined; + /** * Deletes a key-value pair at the location identified by index from an LightWeightMap container * @@ -594,7 +667,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ removeAt(index: number): boolean; /** @@ -622,7 +696,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): void; /** @@ -671,7 +746,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setValueAt(index: number, newValue: V): boolean; /** @@ -729,6 +805,19 @@ declare class LightWeightMap<K, V> { * @since 12 */ forEach(callbackFn: (value?: V, key?: K, map?: LightWeightMap<K, V>) => void, thisArg?: Object): void; + + /** + * Iterates over all key-value pairs in the LightWeightMap and executes a callback function for each entry. + * + * @param { LightWeightMapCbFn<K, V> } callbackFn - A callback function that will be executed for each key-value pair. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackFn: LightWeightMapCbFn<K, V>): void; + /** * returns an ES6 iterator.Each item of the iterator is a Javascript Object * @@ -757,6 +846,19 @@ declare class LightWeightMap<K, V> { * @since 12 */ [Symbol.iterator](): IterableIterator<[K, V]>; + + /** + * returns an ES6 iterator.Each item of the iterator is a Javascript Object + * + * @returns { IterableIterator<[K, V]> } an iterator for the LightWeightMap + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<[K, V]>; + /** * Obtains a string that contains all the keys and values in an LightWeightMap container * @@ -782,7 +884,8 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ toString(): String; /** @@ -831,6 +934,26 @@ declare class LightWeightMap<K, V> { * @since 12 */ getValueAt(index: number): V; + + /** + * Obtains the value identified by index in an LightWeightMap container + * + * @param { number } index - index index Target subscript for search + * @returns { V | undefined } the value of key-value pairs + * @throws { BusinessError } 10200011 - The getValueAt method cannot be bound. + * @throws { BusinessError } 10200001 - The value of index is out of range. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getValueAt(index: number): V | undefined; + /** * Returns an iterator of the values contained in this map * @@ -856,9 +979,25 @@ declare class LightWeightMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ values(): IterableIterator<V>; } + /** + * The type of LightWeightMap callback function. + * + * @typedef { function } LightWeightMapCbFn + * @param { V } value - The value of the current entry + * @param { K } key - The key of the current entry + * @param { LightWeightMap<K, V> } map - The LightWeightMap instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + type LightWeightMapCbFn<K, V> = (value: V, key: K, map: LightWeightMap<K, V>) => void; + export default LightWeightMap; diff --git a/api/@ohos.util.LightWeightSet.d.ts b/api/@ohos.util.LightWeightSet.d.ts index ffde49ae6751e5cf33a5430d7a2ebc83a4983da1..612b677db1d98cfa7662c04846177a593ce3bf91 100644 --- a/api/@ohos.util.LightWeightSet.d.ts +++ b/api/@ohos.util.LightWeightSet.d.ts @@ -37,7 +37,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class LightWeightSet<T> { /** @@ -62,7 +63,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -90,6 +92,19 @@ declare class LightWeightSet<T> { * @since 12 */ length: number; + + /** + * Gets the element number of the LightWeightSet. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; + /** * If the set does not contain the element, the specified element is added * @@ -118,7 +133,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ add(obj: T): boolean; /** @@ -158,7 +174,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ addAll(set: LightWeightSet<T>): boolean; /** @@ -198,7 +215,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ hasAll(set: LightWeightSet<T>): boolean; /** @@ -229,7 +247,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ has(key: T): boolean; /** @@ -296,7 +315,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ increaseCapacityTo(minimumCapacity: number): void; /** @@ -327,7 +347,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getIndexOf(key: T): number; /** @@ -361,6 +382,20 @@ declare class LightWeightSet<T> { * @since 12 */ remove(key: T): T; + + /** + * Deletes an object of a specified Object type from an LightWeightSet container + * + * @param { T } key - key key Target to be deleted + * @returns { T | undefined } the removed value if it was present, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + remove(key: T): T | undefined; + /** * Deletes an object at the location identified by index from an LightWeightSet container * @@ -398,7 +433,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ removeAt(index: number): boolean; /** @@ -426,7 +462,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): void; /** @@ -484,6 +521,20 @@ declare class LightWeightSet<T> { * @since 12 */ forEach(callbackFn: (value?: T, key?: T, set?: LightWeightSet<T>) => void, thisArg?: Object): void; + + /** + * Executes the given callback function once for each real key in the map. + * It does not perform functions on deleted keys. + * + * @param { LightWeightSetForEachCb<T> } callbackFn - A callback function to execute for each element. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackFn: LightWeightSetForEachCb<T>): void; + /** * returns an ES6 iterator.Each item of the iterator is a Javascript Object * @@ -512,6 +563,19 @@ declare class LightWeightSet<T> { * @since 12 */ [Symbol.iterator](): IterableIterator<T>; + + /** + * returns an ES6 iterator.Each item of the iterator is a Javascript Object + * + * @returns { IterableIterator<T> } an iterator for the LightWeightSet + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<T>; + /** * Obtains a string that contains all the keys and values in an LightWeightSet container * @@ -534,7 +598,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ toString(): String; /** @@ -562,7 +627,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ toArray(): Array<T>; /** @@ -605,6 +671,20 @@ declare class LightWeightSet<T> { * @since 12 */ getValueAt(index: number): T; + + /** + * Obtains the object at the location identified by index in an LightWeightSet container + * + * @param { number } index - index index Target subscript for search + * @returns { T | undefined } the value at the specified index, or undefined if the index out of range + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getValueAt(index: number): T | undefined; + /** * Returns a ES6 iterator of the values contained in this Set * @@ -630,7 +710,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ values(): IterableIterator<T>; /** @@ -658,7 +739,8 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ entries(): IterableIterator<[T, T]>; /** @@ -686,9 +768,25 @@ declare class LightWeightSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmpty(): boolean; } +/** + * The type of LightWeightSet callback function. + * + * @typedef { function } LightWeightSetForEachCb + * @param { T } value - The value of current element + * @param { T } key - The key of current element(same as value) + * @param { LightWeightSet<T> } set - The LightWeightSet instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type LightWeightSetForEachCb<T> = (value: T, key: T, set: LightWeightSet<T>) => void + export default LightWeightSet; diff --git a/api/@ohos.util.LinkedList.d.ts b/api/@ohos.util.LinkedList.d.ts index cf4c177b15e444737237c675a36f3008fa6ffd48..3a7446a2c936e632ae0ccf503859771e49283203 100644 --- a/api/@ohos.util.LinkedList.d.ts +++ b/api/@ohos.util.LinkedList.d.ts @@ -38,12 +38,13 @@ /** * LinkedList is implemented based on the doubly linked list. Each node of the doubly linked list has * references pointing to the previous element and the next element. When querying an element, - * the system traverses the list from the beginning or end. + * the system traverses the list from the beginning or end. * * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class LinkedList<T> { /** @@ -68,7 +69,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -96,6 +98,19 @@ declare class LinkedList<T> { * @since 12 */ length: number; + + /** + * Gets the element number of the LinkedList. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; + /** * Appends the specified element to the end of this linkedlist. * @@ -124,7 +139,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ add(element: T): boolean; /** @@ -170,7 +186,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ insert(index: number, element: T): void; /** @@ -216,6 +233,21 @@ declare class LinkedList<T> { * @since 12 */ get(index: number): T; + + /** + * Returns the element at the specified position in this linkedList, + * or returns undefined if this linkedList is empty + * + * @param { number } index - specified position + * @returns { T | undefined} the element at the specified index, or undefined if the index is out of range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get(index: number): T | undefined; + /** * Inserts the specified element at the beginning of this LinkedList. * @@ -241,7 +273,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ addFirst(element: T): void; /** @@ -275,6 +308,20 @@ declare class LinkedList<T> { * @since 12 */ removeFirst(): T; + + /** + * Retrieves and removes the head (first element) of this linkedList. + * + * @returns { T | undefined } the head of this list + * @throws { BusinessError } 10200010 - Container is empty. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + removeFirst(): T | undefined; + /** * Removes and returns the last element from this linkedlist. * @@ -306,6 +353,20 @@ declare class LinkedList<T> { * @since 12 */ removeLast(): T; + + /** + * Removes and returns the last element from this linkedList. + * + * @returns { T | undefined } the head of this list + * @throws { BusinessError } 10200010 - Container is empty. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + removeLast(): T | undefined; + /** * Check if linkedlist contains the specified element * @@ -334,7 +395,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ has(element: T): boolean; /** @@ -368,7 +430,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getIndexOf(element: T): number; /** @@ -420,6 +483,23 @@ declare class LinkedList<T> { * @since 12 */ removeByIndex(index: number): T; + + /** + * Find the corresponding element according to the index. + * + * @param { number } index - the index in the linkedList + * @returns { T | undefined } the T type, if the index is + * out of bounds (greater than or equal to length or less than 0), throw an exception + * @throws { BusinessError } 10200001 - The value of "index" is out of range. It must be >= 0 && <= ${length}. + * Received value is: ${index} + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + removeByIndex(index: number): T | undefined; + /** * Removes the first occurrence of the specified element from this linkedlist, * if it is present. If the linkedlist does not contain the element, it is @@ -454,7 +534,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ remove(element: T): boolean; /** @@ -497,7 +578,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ removeFirstFound(element: T): boolean; /** @@ -540,7 +622,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ removeLastFound(element: T): boolean; /** @@ -574,7 +657,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getLastIndexOf(element: T): number; /** @@ -608,6 +692,20 @@ declare class LinkedList<T> { * @since 12 */ getFirst(): T; + + /** + * Returns the first element (the item at index 0) of this linkedList. + * or returns undefined if linkedList is empty + * + * @returns { T | undefined } the T type, returns undefined if linkedList is empty + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getFirst(): T | undefined; + /** * Returns the Last element (the item at index length-1) of this linkedlist. * or returns undefined if linkedlist is empty @@ -639,6 +737,20 @@ declare class LinkedList<T> { * @since 12 */ getLast(): T; + + /** + * Returns the Last element (the item at index length - 1) of this linkedList. + * or returns undefined if linkedList is empty + * + * @returns { T | undefined } the T type, returns undefined if linkedList is empty + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getLast(): T | undefined; + /** * Replaces the element at the specified position in this Vector with the specified element * @@ -688,6 +800,25 @@ declare class LinkedList<T> { * @since 12 */ set(index: number, element: T): T; + + /** + * Replaces the element at the specified position in this Vector with the specified element + * + * @param { number } index - index index index to find + * @param { T } element - element element replaced element + * @returns { T | undefined } the T type ,returns undefined if linkedList is empty + * @throws { BusinessError } 10200001 - The value of index is out of range. + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types; + * 3.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set(index: number, element: T): T | undefined; + /** * Replaces each element of this linkedlist with the result of applying the operator to that element. * @@ -749,6 +880,19 @@ declare class LinkedList<T> { * @since 12 */ forEach(callbackFn: (value: T, index?: number, LinkedList?: LinkedList<T>) => void, thisArg?: Object): void; + + /** + * Replaces each element of this linkedList with the result of applying the operator to that element. + * + * @param { LinkedListForEachCb } callbackFn - callbackFn + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackfn: LinkedListForEachCb<T>): void; + /** * Removes all of the elements from this linkedlist.The linkedlist will * be empty after this call returns.length becomes 0 @@ -774,7 +918,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): void; /** @@ -802,7 +947,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clone(): LinkedList<T>; /** @@ -830,7 +976,8 @@ declare class LinkedList<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ convertToArray(): Array<T>; /** @@ -861,6 +1008,34 @@ declare class LinkedList<T> { * @since 12 */ [Symbol.iterator](): IterableIterator<T>; + + /** + * returns an iterator. Each item of the iterator is a ArkTS Object + * + * @returns { IterableIterator<T> } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<T>; + } +/** + * The type of LinkedList callback function. + * + * @typedef { function } LinkedListForEachCb + * @param { T } value - The value of current element + * @param { number } index - The index of current element + * @param { LinkedList<T> } linkedList - The LinkedList instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type LinkedListForEachCb<T> = (value: T, index: number, linkedList: LinkedList<T>) => void + export default LinkedList; diff --git a/api/@ohos.util.List.d.ts b/api/@ohos.util.List.d.ts index de4717e0a3418e639939a9957685d868810ec50b..5967f7ce6c9db96aee26e5a8ab2ef4f2c6437873 100644 --- a/api/@ohos.util.List.d.ts +++ b/api/@ohos.util.List.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class List<T> { /** @@ -65,7 +66,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -93,6 +95,19 @@ declare class List<T> { * @since 12 */ length: number; + + /** + * Gets the element number of the List. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; + /** * Appends the specified element to the end of this list. * @@ -121,7 +136,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ add(element: T): boolean; /** @@ -167,7 +183,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ insert(element: T, index: number): void; /** @@ -213,6 +230,21 @@ declare class List<T> { * @since 12 */ get(index: number): T; + + /** + * Returns the element at the specified position in this list, + * or returns undefined if this list is empty + * + * @param { number } index - specified position + * @returns { T | undefined} the element at the specified index, or undefined if the index is out of range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get(index: number): T | undefined; + /** * Check if list contains the specified element * @@ -241,7 +273,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ has(element: T): boolean; /** @@ -275,7 +308,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getIndexOf(element: T): number; /** @@ -324,6 +358,23 @@ declare class List<T> { * @since 12 */ removeByIndex(index: number): T; + + /** + * Find the corresponding element according to the index. + * + * @param { number } index - the index in the linkedList + * @returns { T | undefined } the T type, if the index is + * out of bounds (greater than or equal to length or less than 0), throw an exception + * @throws { BusinessError } 10200001 - The value of "index" is out of range. It must be >= 0 && <= ${length - 1}. + * Received value is: ${index} + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + removeByIndex(index: number): T | undefined; + /** * Removes the first occurrence of the specified element from this list, * if it is present. If the list does not contain the element, it is @@ -358,7 +409,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ remove(element: T): boolean; /** @@ -392,7 +444,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getLastIndexOf(element: T): number; /** @@ -457,6 +510,33 @@ declare class List<T> { * @since 12 */ getLast(): T; + + /** + * Returns the first element (the item at index 0) of this list. + * or returns undefined if list is empty + * + * @returns { T | undefined } the T type, returns undefined if list is empty + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getFirst(): T | undefined; + + /** + * Returns the Last element (the item at index length-1) of this list. + * or returns undefined if list is empty + * + * @returns { T | undefined } the T type, returns undefined if list is empty + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getLast(): T | undefined; + /** * Replaces the element at the specified position in this List with the specified element * @@ -503,6 +583,21 @@ declare class List<T> { * @since 12 */ set(index: number, element: T): T; + /** + * Replaces the element at the specified position in this List with the specified element + * + * @param { number } index - index to find + * @param { T } element - replaced element + * @returns { T | undefined } the T type, returns undefined if linkedList is empty + * @throws { BusinessError } 10200001 - The value of "index" is out of range. It must be >= 0 && <= ${length - 1}. + * Received value is: ${index} + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + set(index: number, element: T): T | undefined; /** * Compares the specified object with this list for equality.if the object are the same as this list * return true, otherwise return false. @@ -534,7 +629,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ equal(obj: Object): boolean; /** @@ -589,6 +685,19 @@ declare class List<T> { * @since 12 */ forEach(callbackFn: (value: T, index?: number, List?: List<T>) => void, thisArg?: Object): void; + + /** + * Replaces each element of this list with the result of applying the operator to that element. + * + * @param { ListForEachCb } callbackFn - callbackFn + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackfn: ListForEachCb<T>): void; + /** * Sorts this list according to the order induced by the specified comparator * @@ -635,7 +744,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ sort(comparator: (firstValue: T, secondValue: T) => number): void; /** @@ -663,7 +773,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): void; /** @@ -709,7 +820,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getSubList(fromIndex: number, toIndex: number): List<T>; /** @@ -764,6 +876,19 @@ declare class List<T> { * @since 12 */ replaceAllElements(callbackFn: (value: T, index?: number, list?: List<T>) => T, thisArg?: Object): void; + + /** + * Replaces each element of this list with the result of applying the operator to that element. + * + * @param { ListReplaceCb } callbackFn - callbackFn + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + replaceAllElements(callbackfn: ListReplaceCb<T>): void; + /** * convert list to array * @@ -789,7 +914,8 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ convertToArray(): Array<T>; /** @@ -817,9 +943,36 @@ declare class List<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmpty(): boolean; + /** + * Returns the item at that index + * + * @param { number } index - the zero-based index of the desired code unit. + * @returns { T | undefined } the element in the list matching the given index, + * or undefined if the index is out of range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_get(index: number): T | undefined; + + /** + * Set the value of item at that index. + * + * @param { number } index – the index of the element to set. + * @param { T } value – the value to set at the specified index + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_set(index: number, value: T): void; /** * returns an iterator.Each item of the iterator is a Javascript Object * @@ -848,6 +1001,49 @@ declare class List<T> { * @since 12 */ [Symbol.iterator](): IterableIterator<T>; + + /** + * returns an iterator. Each item of the iterator is a ArkTS Object + * + * @returns { IterableIterator<T> } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<T>; + } +/** + * The type of List callback function. + * + * @typedef { function } ListForEachCb + * @param { T } value - The value of current element + * @param { number } index - The index of current element + * @param { List<T> } list - The List instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type ListForEachCb<T> = (value: T, index: number, list: List<T>) => void + +/** + * The type of List callback function. + * + * @typedef { function } LinkedListForEachCb + * @param { T } value - The old value of current element + * @param { number } index - The index of current element + * @param { List<T> } list - The List instance being traversed + * @returns { T } - The new value of current element + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type ListReplaceCb<T> = (value: T, index: number, list: List<T>) => T + export default List; diff --git a/api/@ohos.util.PlainArray.d.ts b/api/@ohos.util.PlainArray.d.ts index 4da484961b12ef65706d2666804b786cd9a629c6..6b28d6ba1121cdb78e75016f0395d057e5a114e0 100644 --- a/api/@ohos.util.PlainArray.d.ts +++ b/api/@ohos.util.PlainArray.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class PlainArray<T> { /** @@ -65,7 +66,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -93,6 +95,19 @@ declare class PlainArray<T> { * @since 12 */ length: number; + + /** + * Gets the element number of the PlainArray. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; + /** * Appends a key-value pair to PlainArray * @@ -130,7 +145,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ add(key: number, value: T): void; /** @@ -155,7 +171,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): void; /** @@ -183,7 +200,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clone(): PlainArray<T>; /** @@ -223,7 +241,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ has(key: number): boolean; /** @@ -266,6 +285,21 @@ declare class PlainArray<T> { * @since 12 */ get(key: number): T; + + /** + * Queries the value associated with the specified key + * + * @param { number } key - looking for goals + * @returns { T | undefined } the value of key-value pairs + * @throws { BusinessError } 10200001 - The value of index is out of range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get(key: number): T | undefined; + /** * Queries the index for a specified key * @@ -303,7 +337,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getIndexOfKey(key: number): number; /** @@ -334,7 +369,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getIndexOfValue(value: T): number; /** @@ -362,7 +398,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmpty(): boolean; /** @@ -402,7 +439,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getKeyAt(index: number): number; /** @@ -445,6 +483,21 @@ declare class PlainArray<T> { * @since 12 */ remove(key: number): T; + + /** + * Remove the key-value pair based on a specified key if it exists and return the value + * + * @param { number } key - target to be deleted + * @returns { T | undefined } target mapped value, or undefined if key is not exist + * @throws { BusinessError } 10200001 - The value of index is out of range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + remove(key: number): T | undefined; + /** * Remove the key-value pair at a specified index if it exists and return the value * @@ -485,6 +538,21 @@ declare class PlainArray<T> { * @since 12 */ removeAt(index: number): T; + + /** + * Remove the key-value pair at a specified index if it exists and return the value + * + * @param { number } index - target subscript for search + * @returns { T | undefined } the T type, or undefined if container is empty + * @throws { BusinessError } 10200001 - The value of index is out of range. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + removeAt(index: number): T | undefined; + /** * Remove a group of key-value pairs from a specified index * @@ -528,7 +596,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ removeRangeFrom(index: number, size: number): number; /** @@ -571,7 +640,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setValueAt(index: number, value: T): void; /** @@ -599,7 +669,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ toString(): String; /** @@ -642,7 +713,8 @@ declare class PlainArray<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getValueAt(index: number): T; /** @@ -697,6 +769,19 @@ declare class PlainArray<T> { * @since 12 */ forEach(callbackFn: (value: T, index?: number, PlainArray?: PlainArray<T>) => void, thisArg?: Object): void; + + /** + * Executes a provided function once for each value in the PlainArray object. + * + * @param { PlainArrayForEachCb<T> } callbackFn - callbackFn + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackFn: PlainArrayForEachCb<T>): void; + /** * returns an iterator.Each item of the iterator is a Javascript Object * @@ -725,6 +810,34 @@ declare class PlainArray<T> { * @since 12 */ [Symbol.iterator](): IterableIterator<[number, T]>; + + /** + * returns an iterator. Each item of the iterator is a ArkTS Object + * + * @returns { IterableIterator<[number, T]> } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<[number, T]>; + } +/** + * The type of PlainArray callback function. + * + * @typedef { function } PlainArrayForEachCb + * @param { T } value - The value of current element + * @param { number } key - The key of current element + * @param { PlainArray<T> } PlainArray - The PlainArray instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type PlainArrayForEachCb<T> = (value: T, key: number, PlainArray: PlainArray<T>) => void + export default PlainArray; diff --git a/api/@ohos.util.Queue.d.ts b/api/@ohos.util.Queue.d.ts index f4764226358cd4eda07f6533e894d71958f38cc1..abdba11d474fc39a97a03e70145a74614aaade00 100644 --- a/api/@ohos.util.Queue.d.ts +++ b/api/@ohos.util.Queue.d.ts @@ -43,7 +43,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class Queue<T> { /** @@ -68,7 +69,8 @@ declare class Queue<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -96,6 +98,19 @@ declare class Queue<T> { * @since 12 */ length: number; + + /** + * Gets the element number of the Queue. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; + /** * Inserting specified element at the end of a queue if it is possible to do * so immediately without violating capacity restrictions. @@ -127,7 +142,8 @@ declare class Queue<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ add(element: T): boolean; /** @@ -158,6 +174,19 @@ declare class Queue<T> { * @since 12 */ getFirst(): T; + + /** + * Obtains the header element of a queue. + * + * @returns { T | undefined } the first element of the queue if it exists, otherwise returns undefined. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getFirst(): T | undefined; + /** * Retrieves and removes the head of this queue * @@ -186,6 +215,19 @@ declare class Queue<T> { * @since 12 */ pop(): T; + + /** + * Retrieves and removes the head of this queue + * + * @returns { T | undefined } the deleted element of the deque if it exists, otherwise returns undefined. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + pop(): T | undefined; + /** * Executes a provided function once for each value in the queue object. * @@ -238,6 +280,19 @@ declare class Queue<T> { * @since 12 */ forEach(callbackFn: (value: T, index?: number, Queue?: Queue<T>) => void, thisArg?: Object): void; + + /** + * Executes a provided function once for each value in the queue object. + * + * @param { QueueForEachCb } callbackFn - callbackFn + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackfn: QueueForEachCb<T>): void; + /** * returns an iterator.Each item of the iterator is a Javascript Object * @@ -266,6 +321,34 @@ declare class Queue<T> { * @since 12 */ [Symbol.iterator](): IterableIterator<T>; + + /** + * returns an iterator. Each item of the iterator is a ArkTS Object + * + * @returns { IterableIterator<T> } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<T>; + } +/** + * The type of Queue callback function. + * + * @typedef { function } QueueForEachCb + * @param { T } value - The value of current element + * @param { number } index - The key of current element + * @param { Queue<T> } queue - The Queue instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type QueueForEachCb<T> = (value: T, index: number, queue: Queue<T>) => void + export default Queue; diff --git a/api/@ohos.util.Stack.d.ts b/api/@ohos.util.Stack.d.ts index fe9713d5eacb814f207898542f6fde7b377baceb..340ed2c85f60351be061718902de490facbc13ff 100644 --- a/api/@ohos.util.Stack.d.ts +++ b/api/@ohos.util.Stack.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class Stack<T> { /** @@ -65,7 +66,8 @@ declare class Stack<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(); /** @@ -93,6 +95,19 @@ declare class Stack<T> { * @since 12 */ length: number; + + /** + * Gets the element number of the Stack. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; + /** * Tests if this stack is empty * @@ -118,7 +133,8 @@ declare class Stack<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmpty(): boolean; /** @@ -152,6 +168,20 @@ declare class Stack<T> { * @since 12 */ peek(): T; + + /** + * Looks at the object at the top of this stack without removing it from the stack + * Return undefined if this stack is empty + * + * @returns { T | undefined } the top value, or undefined if container is empty + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + peek(): T | undefined; + /** * Removes the object at the top of this stack and returns that object as the value of this function * an exception if the stack is empty @@ -183,6 +213,20 @@ declare class Stack<T> { * @since 12 */ pop(): T; + + /** + * Removes the object at the top of this stack and returns that object as the value of this function + * an exception if the stack is empty + * + * @returns { T | undefined } Stack top value, or undefined if container is empty + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + pop(): T | undefined; + /** * Pushes an item onto the top of this stack * @@ -211,7 +255,8 @@ declare class Stack<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ push(item: T): T; /** @@ -242,7 +287,8 @@ declare class Stack<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ locate(element: T): number; /** @@ -297,6 +343,19 @@ declare class Stack<T> { * @since 12 */ forEach(callbackFn: (value: T, index?: number, stack?: Stack<T>) => void, thisArg?: Object): void; + + /** + * Executes a provided function once for each value in the Stack object. + * + * @param { StackForEachCb } callbackFn - callbackFn + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackfn: StackForEachCb<T>): void; + /** * returns an ES6 iterator.Each item of the iterator is a Javascript Object * @@ -325,6 +384,34 @@ declare class Stack<T> { * @since 12 */ [Symbol.iterator](): IterableIterator<T>; + + /** + * returns an iterator. Each item of the iterator is a ArkTS Object + * + * @returns { IterableIterator<T> } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<T>; + } +/** + * The type of Stack callback function. + * + * @typedef { function } StackForEachCb + * @param { T } value - The value of current element + * @param { number } index - The key of current element + * @param { Stack<T> } stack - The Stack instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type StackForEachCb<T> = (value: T, index: number, stack: Stack<T>) => void + export default Stack; diff --git a/api/@ohos.util.TreeMap.d.ts b/api/@ohos.util.TreeMap.d.ts index 3aee29d8471e0ba7e48b72f670013c7336b4540a..ad93707e33003ce173ca9e234f8e95482e7fc10e 100644 --- a/api/@ohos.util.TreeMap.d.ts +++ b/api/@ohos.util.TreeMap.d.ts @@ -43,7 +43,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class TreeMap<K, V> { /** @@ -92,6 +93,20 @@ declare class TreeMap<K, V> { * @since 12 */ constructor(comparator?: (firstValue: K, secondValue: K) => boolean); + + /** + * A constructor used to create a TreeMap object. + * + * @param { TreeMapComparator<K> } [comparator] - comparator + * comparator (Optional) User-defined comparison functions. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + constructor(comparator?: TreeMapComparator<K>); + /** * Gets the element number of the hashmap. * @@ -117,6 +132,19 @@ declare class TreeMap<K, V> { * @since 12 */ length: number; + + /** + * Gets the element number of the TreeMap. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; + /** * Returns whether the Map object contains elements * @@ -142,7 +170,8 @@ declare class TreeMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmpty(): boolean; /** @@ -173,7 +202,8 @@ declare class TreeMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ hasKey(key: K): boolean; /** @@ -204,7 +234,8 @@ declare class TreeMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ hasValue(value: V): boolean; /** @@ -300,6 +331,46 @@ declare class TreeMap<K, V> { * @since 12 */ getLastKey(): K; + + /** + * Returns a specified element in a Map object, or undefined if there is no corresponding element + * + * @param { K } key - key key the index in TreeMap + * @returns { V | undefined } value if associated with key presents, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get(key: K): V | undefined; + + /** + * Obtains the first sorted key in the treemap. + * Or returns undefined if tree map is empty + * + * @returns { K | undefined } the key of the first element if exists, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getFirstKey(): K | undefined; + + /** + * Obtains the last sorted key in the treemap. + * Or returns undefined if tree map is empty + * + * @returns { K | undefined } the key of the last element if exists, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getLastKey(): K | undefined; + /** * Adds all element groups in one map to another map * @@ -334,7 +405,8 @@ declare class TreeMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setAll(map: TreeMap<K, V>): void; /** @@ -380,7 +452,8 @@ declare class TreeMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ set(key: K, value: V): Object; /** @@ -414,6 +487,20 @@ declare class TreeMap<K, V> { * @since 12 */ remove(key: K): V; + + /** + * Remove a specified element from a Map object + * + * @param { K } key - key key Target to be deleted + * @returns { V | undefined } the value of the removed element, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + remove(key: K): V | undefined; + /** * Clear all element groups in the map * @@ -436,7 +523,8 @@ declare class TreeMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): void; /** @@ -507,6 +595,35 @@ declare class TreeMap<K, V> { * @since 12 */ getHigherKey(key: K): K; + + /** + * Returns the greatest element smaller than or equal to the specified key + * if the key does not exist, undefined is returned + * + * @param { K } key - key key Objective of comparison + * @returns { K | undefined } the lower key of the given key's element if exists, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getLowerKey(key: K): K | undefined; + + /** + * Returns the least element greater than or equal to the specified key + * if the key does not exist, undefined is returned + * + * @param { K } key - key key Objective of comparison + * @returns { K | undefined } the higher key of the given key's element if exists, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getHigherKey(key: K): K | undefined; + /** * Returns a new Iterator object that contains the keys contained in this map * @@ -532,7 +649,8 @@ declare class TreeMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ keys(): IterableIterator<K>; /** @@ -560,7 +678,8 @@ declare class TreeMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ values(): IterableIterator<V>; /** @@ -594,7 +713,8 @@ declare class TreeMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ replace(key: K, newValue: V): boolean; /** @@ -652,6 +772,20 @@ declare class TreeMap<K, V> { * @since 12 */ forEach(callbackFn: (value?: V, key?: K, map?: TreeMap<K, V>) => void, thisArg?: Object): void; + + /** + * Executes the given callback function once for each real key in the map. + * It does not perform functions on deleted keys + * + * @param { TreeMapForEachCb<K, V> } callbackFn - callbackFn + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackFn: TreeMapForEachCb<K, V>): void; + /** * Returns a new Iterator object that contains the [key, value] pairs for each element in the Map object in insertion order * @@ -677,7 +811,8 @@ declare class TreeMap<K, V> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ entries(): IterableIterator<[K, V]>; /** @@ -708,6 +843,48 @@ declare class TreeMap<K, V> { * @since 12 */ [Symbol.iterator](): IterableIterator<[K, V]>; + + /** + * returns an ES6 iterator.Each item of the iterator is a Javascript Object + * + * @returns { IterableIterator<[K, V]> } an iterator for the TreeMap + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<[K, V]>; + } +/** + * The type of TreeMap callback function. + * + * @typedef { function } TreeMapForEachCb + * @param { V } value - The value of current element + * @param { K } key - The key of current element + * @param { TreeMap<K, V> } map - The TreeMap instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type TreeMapForEachCb<K, V> = (value: V, key: K, map: TreeMap<K, V>) => void + +/** + * The type of TreeMap comparator. + * + * @typedef { function } TreeMapComparator + * @param { K } firstValue - The first value compared + * @param { K } secondValue - The second value compared + * @returns { number } - Comparison results + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type TreeMapComparator<K> = (firstValue: K, secondValue: K) => number + export default TreeMap; diff --git a/api/@ohos.util.TreeSet.d.ts b/api/@ohos.util.TreeSet.d.ts index db14019651213cf385e2d0e5c832280c1ec70369..d09e7b054817a150bab30931d0ab7b62618138db 100644 --- a/api/@ohos.util.TreeSet.d.ts +++ b/api/@ohos.util.TreeSet.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare class TreeSet<T> { /** @@ -89,6 +90,20 @@ declare class TreeSet<T> { * @since 12 */ constructor(comparator?: (firstValue: T, secondValue: T) => boolean); + + /** + * A constructor used to create a TreeSet object. + * + * @param { TreeSetComparator<T> } [comparator] - comparator + * comparator (Optional) User-defined comparison functions. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + constructor(comparator?: TreeSetComparator<T>); + /** * Gets the element number of the TreeSet. * @@ -114,6 +129,19 @@ declare class TreeSet<T> { * @since 12 */ length: number; + + /** + * Gets the element number of the TreeSet. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + get length(): number; + /** * Returns whether the Set object contains elements * @@ -139,7 +167,8 @@ declare class TreeSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmpty(): boolean; /** @@ -170,7 +199,8 @@ declare class TreeSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ has(value: T): boolean; /** @@ -213,7 +243,8 @@ declare class TreeSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ add(value: T): boolean; /** @@ -244,7 +275,8 @@ declare class TreeSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ remove(value: T): boolean; /** @@ -269,7 +301,8 @@ declare class TreeSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ clear(): void; /** @@ -476,6 +509,83 @@ declare class TreeSet<T> { * @since 12 */ popLast(): T; + + /** + * Gets the first elements in a set + * + * @returns { T | undefined } the value of the first element if exists, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getFirstValue(): T | undefined; + + /** + * Gets the last elements in a set + * + * @returns { T | undefined } the value of the last element if exists, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getLastValue(): T | undefined; + + /** + * Returns the greatest element smaller than or equal to the specified key + * if the key does not exist, undefined is returned + * + * @param { T } key - key key Objective of comparison + * @returns { T | undefined } the lower value of the given key's element if exists, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getLowerValue(key: T): T | undefined; + + /** + * Returns the least element greater than or equal to the specified key + * if the key does not exist, undefined is returned + * + * @param { T } key - key key Objective of comparison + * @returns { T | undefined } the higher value of the given key's element if exists, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + getHigherValue(key: T): T | undefined; + + /** + * Return and delete the first element, returns undefined if tree set is empty + * + * @returns { T | undefined} the value of the first element in the TreeSet if exists, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + popFirst(): T | undefined; + + /** + * Return and delete the last element, returns undefined if tree set is empty + * + * @returns { T | undefined } the value of the last element in the TreeSet if exists, undefined otherwise + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + popLast(): T | undefined; + /** * Executes a provided function once for each value in the Set object. * @@ -528,6 +638,19 @@ declare class TreeSet<T> { * @since 12 */ forEach(callbackFn: (value?: T, key?: T, set?: TreeSet<T>) => void, thisArg?: Object): void; + + /** + * Executes a provided function once for each value in the Set object. + * + * @param { TreeSetForEachCb<T> } callbackFn - callbackFn + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + forEach(callbackFn: TreeSetForEachCb<T>): void; + /** * Returns a new Iterator object that contains the values contained in this set * @@ -553,7 +676,8 @@ declare class TreeSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ values(): IterableIterator<T>; /** @@ -581,7 +705,8 @@ declare class TreeSet<T> { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ entries(): IterableIterator<[T, T]>; /** @@ -612,6 +737,48 @@ declare class TreeSet<T> { * @since 12 */ [Symbol.iterator](): IterableIterator<T>; + + /** + * returns an ES6 iterator.Each item of the iterator is a Javascript Object + * + * @returns { IterableIterator<T> } an iterator for the TreeSet + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + $_iterator(): IterableIterator<T>; + } +/** + * The type of TreeSet callback function. + * + * @typedef { function } TreeSetForEachCb + * @param { T } value - The value of current element + * @param { T } key - The key of current element(same as value) + * @param { TreeSet<T> } set - The TreeSet instance being traversed + * @returns { void } This callback does not return a value + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type TreeSetForEachCb<T> = (value: T, key: T, set: TreeSet<T>) => void + +/** + * The type of TreeSet comparator. + * + * @typedef { function } TreeSetComparator + * @param { T } firstValue - The first value compared + * @param { T } secondValue - The second value compared + * @returns { number } - Comparison results + * @syscap SystemCapability.Utils.Lang + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type TreeSetComparator<T> = (firstValue: T, secondValue: T) => number + export default TreeSet; diff --git a/api/@ohos.util.d.ets b/api/@ohos.util.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..8d7fe62fc9f0bc43ff22c94054db9c09f4bc4e66 --- /dev/null +++ b/api/@ohos.util.d.ets @@ -0,0 +1,922 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +'use static'; +/** + * @file + * @kit ArkTS + * @arkts 1.2 + */ + +declare namespace util { + /** + * %s: String will be used to convert all values except BigInt, Object and -0. BigInt values will be represented + * with an n and Objects that have no user defined toString function are inspected using util.inspect() with + * options { depth: 0, colors: false, compact: 3 }. + * %d: Number will be used to convert all values except BigInt and Symbol. + * %i: parseInt(value, 10) is used for all values except BigInt and Symbol. + * %f: parseFloat(value) is used for all values except Bigint and Symbol. + * %j: JSON. Replaced with the string '[Circular]' if the argument contains circular references. + * %o: Object. A string representation of an object with generic JavaScript object formatting.Similar to + * util.inspect() with options { showHidden: true, showProxy: true}. This will show the full object including + * non-enumerable properties and proxies. + * %O: Object. A string representation of an object with generic JavaScript object formatting. + * %O: Object. A string representation of an object with generic JavaScript object formatting.Similar to + * util.inspect() without options. This will show the full object not including non-enumerable properties and + * proxies. + * %c: CSS. This specifier is ignored and will skip any CSS passed in. + * %%: single percent sign ('%'). This does not consume an argument.Returns: <string> The formatted string. + * + * @param { string } format - Styled string + * @param { Object[] } args - Data to be formatted + * @returns { string } a string formatted in a specific format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function format(format: string, ...args: Object[]): string; + + /** + * Generate a random RFC 4122 version 4 UUID using a cryptographically secure random number generator. + * + * @param { boolean } [entropyCache] - Whether to generate the UUID with using the cache. Default: true. + * @returns { string } Return a string representing this UUID. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function generateRandomUUID(entropyCache?: boolean): string; + + /** + * The Type represents four different encoding formats for base64 + * + * @enum { number } Type + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + enum Type { + /** + * The value indicates that the encoding format of base64 is BASIC + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + BASIC, + /** + * The value indicates that the encoding format of base64 is MIME + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + MIME, + /** + * The value indicates that the encoding format of base64 is BASIC_URL_SAFE + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + BASIC_URL_SAFE, + /** + * The value indicates that the encoding format of base64 is MIME_URL_SAFE + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + MIME_URL_SAFE, + } + + /** + * Decodes a Base64 encoded String or input u8 array into a newly-allocated + * u8 array using the Base64 encoding scheme. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + class Base64Helper { + /** + * Constructor for creating base64 encoding and decoding + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + constructor(); + + /** + * Encodes all bytes from the specified u8 array into a newly-allocated u8 array using the Base64 encoding scheme. + * + * @param { Uint8Array } src - A Uint8Array value + * @param { Type } [options] - Enumerating input parameters includes two encoding formats: BASIC and BASIC_URL_SAFE + * @returns { Uint8Array } Return the encoded new Uint8Array. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + encodeSync(src: Uint8Array, options: Type = Type.BASIC): Uint8Array; + + /** + * Encodes the specified byte array into a String using the Base64 encoding scheme. + * + * @param { Uint8Array } src - A Uint8Array value + * @param { Type } options - one of the Type enumeration + * @returns { string } Return the encoded string. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + encodeToStringSync(src: Uint8Array, options: Type = Type.BASIC): string; + + /** + * Decodes a Base64 encoded String or input u8 array into a newly-allocated u8 array using the Base64 encoding scheme. + * + * @param { string } src - A string value + * @param { Type } [options] - one of the Type enumeration + * @returns { Uint8Array } Return the decoded Uint8Array. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + decodeSync(src: string, options: Type = Type.BASIC): Uint8Array; + + /** + * Decodes a Base64 encoded String or input u8 array into a newly-allocated u8 array using the Base64 encoding scheme. + * + * @param { Uint8Array } src - A Uint8Array value + * @param { Type } [options] - one of the Type enumeration + * @returns { Uint8Array } Return the decoded Uint8Array. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + decodeSync(src: Uint8Array, options: Type = Type.BASIC): Uint8Array; + + /** + * Asynchronously encodes all bytes in the specified u8 array into the newly allocated u8 array using the Base64 encoding scheme. + * + * @param { Uint8Array } src - A Uint8Array value + * @param { Type } [options] - Enumerating input parameters includes two encoding formats: BASIC and BASIC_URL_SAFE + * @returns { Promise<Uint8Array> } Return the encodes asynchronous new Uint8Array. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + encode(src: Uint8Array, options: Type = Type.BASIC): Promise<Uint8Array>; + + /** + * Asynchronously encodes the specified byte array into a String using the Base64 encoding scheme. + * + * @param { Uint8Array } src - A Uint8Array value + * @param { Type } [options] - one of the Type enumeration + * @returns { Promise<string> } Returns the encoded asynchronous string. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + encodeToString(src: Uint8Array, options: Type = Type.BASIC): Promise<string>; + + /** + * Use the Base64 encoding scheme to asynchronously decode a Base64-encoded string or + * input u8 array into a newly allocated u8 array. + * + * @param { Uint8Array } src - A Uint8Array value + * @param { Type } [options] - one of the Type enumeration + * @returns { Promise<Uint8Array> } Return the decoded asynchronous Uint8Array. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + decode(src: Uint8Array, options: Type = Type.BASIC): Promise<Uint8Array>; + + /** + * Use the Base64 encoding scheme to asynchronously decode a Base64-encoded string or + * input u8 array into a newly allocated u8 array. + * + * @param { string } src - A string value + * @param { Type } [options] - one of the Type enumeration + * @returns { Promise<Uint8Array> } Return the decoded asynchronous Uint8Array. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + decode(src: string, options: Type = Type.BASIC): Promise<Uint8Array>; + } + + /** + * The ScopeComparable contains comparison methods. + * + * @interface ScopeComparable + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + interface ScopeComparable<T> { + /** + * The comparison function is used by the scope. + * + * @param { ScopeComparable } other - Other + * @returns { boolean } Returns whether the current object is greater than or equal to the input object. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + compareTo(other: T): boolean; + } + + /** + * A type used to denote ScopeComparable or number. + * + * @typedef { ScopeComparable } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + type ScopeType<T> = ScopeComparable<T>; + + class ScopeHelper<T extends ScopeComparable<T>> { + /** + * A constructor used to create a Scope instance with the lower and upper bounds specified. + * + * @param { ScopeType } lowerObj - A ScopeType value + * @param { ScopeType } upperObj - A ScopeType value + * @since 20 + */ + constructor(lowerObj: T, upperObj: T); + + /** + * Obtains a string representation of the current range. + * + * @returns { string } Returns a string representation of the current range object. + * @since 20 + */ + toString(): string; + + /** + * Returns the intersection of a given range and the current range. + * + * @param { ScopeHelper } range - A Scope range object + * @returns { ScopeHelper } Returns the intersection of a given range and the current range. + * @since 20 + */ + intersect(range: ScopeHelper<T>): ScopeHelper<T>; + + /** + * Returns the intersection of the current range and the range specified by the given lower and upper bounds. + * + * @param { ScopeType } lowerObj - A ScopeType value + * @param { ScopeType } upperObj - A ScopeType value + * @returns { ScopeHelper } Returns the intersection of the current range and the range specified by the given lower and upper bounds. + * @since 20 + */ + intersect(lowerObj: T, upperObj: T): ScopeHelper<T>; + + /** + * Obtains the upper bound of the current range. + * + * @returns { ScopeType } Returns the upper bound of the current range. + * @since 20 + */ + getUpper(): T; + + /** + * Obtains the lower bound of the current range. + * + * @returns { ScopeType } Returns the lower bound of the current range. + * @since 20 + */ + getLower(): T; + + /** + * Creates the smallest range that includes the current range and the given lower and upper bounds. + * + * @param { ScopeType } lowerObj - A ScopeType value + * @param { ScopeType } upperObj - A ScopeType value + * @returns { ScopeHelper } Returns the smallest range that includes the current range and the given lower and upper bounds. + * @since 20 + */ + expand(lowerObj: T, upperObj: T): ScopeHelper<T>; + + /** + * Creates the smallest range that includes the current range and a given range. + * + * @param { ScopeHelper } range - A Scope range object + * @returns { ScopeHelper } Returns the smallest range that includes the current range and a given range. + * @since 20 + */ + expand(range: ScopeHelper<T>): ScopeHelper<T>; + + /** + * Creates the smallest range that includes the current range and a given value. + * + * @param { ScopeType } value - A ScopeType value + * @returns { ScopeHelper } Returns the smallest range that includes the current range and a given value. + * @since 20 + */ + expand(value: T): ScopeHelper<T>; + + /** + * Checks whether a given value is within the current range. + * + * @param { ScopeType } value - A ScopeType value + * @returns { boolean } If the value is within the current range return true,otherwise return false. + * @since 20 + */ + contains(value: T): boolean; + + /** + * Checks whether a given range is within the current range. + * + * @param { ScopeHelper } range - A Scope range + * @returns { boolean } If the current range is within the given range return true,otherwise return false. + * @since 20 + */ + contains(range: ScopeHelper<T>): boolean; + + /** + * Clamps a given value to the current range. + * + * @param { ScopeType } value - A ScopeType value + * @returns { ScopeType } Returns a ScopeType object that a given value is clamped to the current range. + * @since 20 + */ + clamp(value: T): T; + } + + class LRUCache<K, V> { + /** + * Default constructor used to create a new LruBuffer instance with the default capacity of 64. + * + * @param { number } [capacity] - Indicates the capacity to customize for the buffer. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + constructor(capacity?: number); + + /** + * Updates the buffer capacity to a specified capacity. + * + * @param { number } newCapacity - Indicates the new capacity to set. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + updateCapacity(newCapacity: number): void; + + /** + * Returns a string representation of the object. + * + * @returns { string } Returns the string representation of the object and outputs the string representation of the object. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + toString(): string; + + /** + * Obtains a list of all values in the current buffer. + * + * @type { number } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + get length(): number; + + /** + * Obtains the capacity of the current buffer. + * + * @returns { number } Returns the capacity of the current buffer. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + getCapacity(): number; + + /** + * Clears key-value pairs from the current buffer. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + clear(): void; + + /** + * Obtains the number of times createDefault(Object) returned a value. + * + * @returns { number } Returns the number of times createDefault(java.lang.Object) returned a value. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + getCreateCount(): number; + + /** + * Obtains the number of times that the queried values are not matched. + * + * @returns { number } Returns the number of times that the queried values are not matched. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + getMissCount(): number; + + /** + * Obtains the number of times that values are evicted from the buffer. + * + * @returns { number } Returns the number of times that values are evicted from the buffer. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + getRemovalCount(): number; + + /** + * Obtains the number of times that the queried values are successfully matched. + * + * @returns { number } Returns the number of times that the queried values are successfully matched. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + getMatchCount(): number; + + /** + * Obtains the number of times that values are added to the buffer. + * + * @returns { number } Returns the number of times that values are added to the buffer. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + getPutCount(): number; + + /** + * Checks whether the current buffer is empty. + * + * @returns { boolean } Returns true if the current buffer contains no value. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + isEmpty(): boolean; + + /** + * Obtains the value associated with a specified key. + * + * @param { K } key - Indicates the key to query. + * @returns { V | undefined } Returns the value associated with the key if the specified key is present in the buffer; returns null otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + get(key: K): V | undefined; + + /** + * Adds a key-value pair to the buffer. + * + * @param { K } key - Indicates the key to add. + * @param { V } value - Indicates the value associated with the key to add. + * @returns { V | undefined } Returns the value associated with the added key; returns the original value if the key to add already exists, returns null otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + put(key: K, value: V): V | undefined; + + /** + * Obtains a list of all values in the current buffer. + * + * @returns { Array<V> } Returns the list of all values in the current buffer, ordered from the most recently accessed to the least recently accessed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + values(): Array<V>; + + /** + * Obtains a list of keys for the values in the current buffer. + * since 9 + * + * @returns { Array<K> } Returns a list of keys ordered by access time, from the most recently accessed to the least recently accessed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + keys(): Array<K>; + + /** + * Deletes a specified key and its associated value from the current buffer. + * + * @param { K } key - Indicates the key to delete. + * @returns { V | undefined } Returns an Optional object containing the deleted key-value pair; returns an empty Optional object if the key does not exist. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + remove(key: K): V | undefined; + + /** + * Executes subsequent operations after a value is deleted. + * + * @param { boolean } isEvict - The parameter value is true if this method is called due to insufficient capacity, + * and the parameter value is false in other cases. + * @param { K } key - Indicates the deleted key. + * @param { V } value - Indicates the deleted value. + * @param { V } newValue - The parameter value is the new value associated if the put(java.lang.Object,java.lang.Object) + * method is called and the key to add already exists. The parameter value is null in other cases. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + afterRemoval(isEvict: boolean, key: K, value: V, newValue: V): void; + + /** + * Checks whether the current buffer contains a specified key. + * + * @param { K } key - Indicates the key to check. + * @returns { boolean } Returns true if the buffer contains the specified key. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + contains(key: K): boolean; + + /** + * Executes subsequent operations if miss to compute a value for the specific key. + * + * @param { K } key - Indicates the missed key. + * @returns { V | undefined } Returns the value associated with the key. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1.Mandatory parameters are left unspecified; + * 2.Incorrect parameter types. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + createDefault(key: K): V | undefined; + + /** + * Returns an array of key-value pairs of enumeratable properties of a given object. + * + * @returns { IterableIterator<[K, V]> } Returns an array of key-value pairs for the enumeratable properties of the given object itself. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + entries(): IterableIterator<[K, V]>; + + /** + * Specifies the default iterator for an object. + * + * @returns { IterableIterator<[K, V]> } Returns a two - dimensional array in the form of key - value pairs. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + $_iterator(): IterableIterator<[K, V]>; + } + + /** + * Defines the TextDecoder related options parameters. + * + * @interface TextDecoderOptions + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + interface TextDecoderOptions { + /** + * Is a fatal error displayed? The default value is false. + * @type { ?boolean } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + + fatal?: boolean; + /** + * Do you want to ignore BOM tags? The default value is false. + * @type { ?boolean } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + ignoreBOM?: boolean; + } + + /** + * Defines the decode with stream related options parameters. + * + * @interface DecodeToStringOptions + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + interface DecodeToStringOptions { + /** + * Stream option controls stream processing in decoding. The default value is false. + * @type { ?boolean } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + stream?: boolean; + } + + /** + * The TextDecoder represents a text decoder that accepts a string as input, + * decodes it in UTF-8 format, and outputs UTF-8 byte stream. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + class TextDecoder { + /** + * The textDecoder constructor. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + constructor(); + + /** + * The source encoding's name, lowercased. + * + * @return { string } The string of the TextDecoder encoding. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + get encoding(): string; + + /** + * Returns `true` if error mode is "fatal", and `false` otherwise. + * + * @return { boolean } Whether to display fatal errors. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + get fatal(): boolean; + + /** + * Returns `true` if ignore BOM flag is set, and `false` otherwise. + * + * @return { boolean } Returns `true` if ignore BOM flag is set, and `false` otherwise. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + get ignoreBOM(): boolean; + + /** + * Replaces the original constructor to process arguments and return a textDecoder object. + * + * @param { string } [encoding] - Decoding format + * @param { TextDecoderOptions } [options] - Options + * @returns { TextDecoder } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + static create(encoding?: string, options?: TextDecoderOptions): TextDecoder; + + /** + * The input is decoded and a string is returned. + * If options.stream is set to true, any incomplete byte sequences found at the end of the input are internally + * buffered and will be emitted after the next call to textDecoder.decodeToString(). + * If textDecoder.fatal is set to true, any decoding errors that occur will result in a TypeError being thrown. + * + * @param { Uint8Array } input - Decoded numbers in accordance with the format. + * @param { DecodeToStringOptions } [options] - The default option is set to false. + * @returns { string } Return decoded text + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Parameter verification failed; + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + decodeToString(input: Uint8Array, options?: DecodeToStringOptions): string; + } + + /** + * Return encoded text. + * + * @interface EncodeIntoUint8ArrayInfo + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + interface EncodeIntoUint8ArrayInfo { + /** + * The read represents the number of characters that have been encoded. + * @type { int } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + + read: int; + /** + * The written represents the number of bytes occupied by the encoded characters. + * @type { int } + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + written: int; + } + + /** + * The TextEncoder interface represents a text encoder. + * The encoder takes the byte stream as the input and outputs the String string. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + class TextEncoder { + /** + * Encoding format. + * + * @return { string } The string of the TextEncoder encoding. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + get encoding(): string; + + /** + * The textEncoder constructor. + * + * @param { string } [encoding] - The string for encoding format. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + constructor(encoding?: string); + + /** + * Create a TextEncoder object. + * + * @param { string } [encoding] - The string for encoding format. + * @returns { TextEncoder } + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Parameter verification failed. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + static create(encoding?: string): TextEncoder; + + /** + * UTF-8 encodes the input string and returns a Uint8Array containing the encoded bytes. + * + * @param { string } [input] - The string to be encoded. + * @returns { Uint8Array } Returns the encoded text. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + encodeInto(input?: string): Uint8Array; + + /** + * Encode string, write the result to dest array. + * + * @param { string } input - The string to be encoded. + * @param { Uint8Array } dest - Encoded numbers in accordance with the format + * @returns { EncodeIntoUint8ArrayInfo } Return the object, where read represents + * the number of characters that have been encoded, and written + * represents the number of bytes occupied by the encoded characters. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + encodeIntoUint8Array(input: string, dest: Uint8Array): EncodeIntoUint8ArrayInfo; + } +} +export default util; diff --git a/api/@ohos.util.d.ts b/api/@ohos.util.d.ts index 9fd84a717844c473359f9a70a1eb81239e74aed3..68a7d5896561e055b90bbf1db48f22d7df05013b 100644 --- a/api/@ohos.util.d.ts +++ b/api/@ohos.util.d.ts @@ -36,8 +36,10 @@ * @since 10 */ /** - * TextDecoder support full encoding in ICU data utf-8 utf-16 iso8859 must support in all device, TextEncoder takes a - * stream of code points as input and emits a stream of UTF-8 bytes, and system help function. + * The util module provides common utility functions, such as TextEncoder and TextDecoder for string encoding and decoding, + * RationalNumber8+ for rational number operations, LRUCache9+ for cache management, ScopeHelper9+ for range determination, + * Base64Helper9+ for Base64 encoding and decoding, types8+ for built-in object type check, and Aspect11+ for instrumentation + * and replacement on methods. * * @namespace util * @syscap SystemCapability.Utils.Lang @@ -130,6 +132,7 @@ declare namespace util { * @since 10 */ /** + * Formats a string by replacing the placeholders in it. * %s: String will be used to convert all values except BigInt, Object and -0. BigInt values will be represented * with an n and Objects that have no user defined toString function are inspected using util.inspect() with * options { depth: 0, colors: false, compact: 3 }. @@ -147,8 +150,10 @@ declare namespace util { * %c: CSS. This specifier is ignored and will skip any CSS passed in. * %%: single percent sign ('%'). This does not consume an argument.Returns: <string> The formatted string. * - * @param { string } format - Styled string - * @param { Object[] } args - Data to be formatted + * @param { string } format - Format string. This string contains zero or more placeholders, which specify the + * position and format of the arguments to be inserted. + * @param { Object[] } args - Data used to replace the placeholders in format. If null is passed in, the first + * argument is returned by default. * @returns { string } a string formatted in a specific format. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -196,9 +201,9 @@ declare namespace util { * @since 10 */ /** - * Get the string name of the system errno. + * Obtains detailed information about a system error code. * - * @param { number } errno - The error code generated by an error in the system + * @param { number } errno - Error code generated. * @returns { string } Return the string name of a system errno * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -236,10 +241,10 @@ declare namespace util { * @since 10 */ /** - * Takes an async function (or a function that returns a Promise) and returns a function following the - * error-first callback style. + * Calls back an asynchronous function. In the callback, the first parameter indicates the cause of the rejection + * (the value is null if the promise has been resolved), and the second parameter indicates the resolved value. * - * @param { Function } original - Asynchronous function + * @param { Function } original - Asynchronous function. * @returns { function } Return a Asynchronous function * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -277,10 +282,10 @@ declare namespace util { * @since 10 */ /** - * Takes a function following the common error-first callback style, i.e taking an (err, value) => - * callback as the last argument, and return a function that returns promises. + * Processes an asynchronous function and returns a promise. * - * @param { function } original - Asynchronous function + * @param { function } original - Function, in which the first parameter err indicates the cause of the rejection + * (the value is null if the promise has been resolved) and the second parameter value indicates the resolved value. * @returns { Function } Return a function that returns promises * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -325,7 +330,8 @@ declare namespace util { * @since 10 */ /** - * Generate a random RFC 4122 version 4 UUID using a cryptographically secure random number generator. + * Uses a secure random number generator to generate a random universally unique identifier (UUID) of the + * string type in RFC 4122 version 4. * * @param { boolean } [entropyCache] - Whether to generate the UUID with using the cache. Default: true. * @returns { string } Return a string representing this UUID. @@ -357,7 +363,7 @@ declare namespace util { * @since 10 */ /** - * Generate a random RFC 4122 version 4 binary UUID using a cryptographically secure random number generator. + * Uses a secure random number generator to generate a random UUID of the Uint8Array type in RFC 4122 version 4. * * @param { boolean } [entropyCache] - Whether to generate the UUID with using the cache. Default: true. * @returns { Uint8Array } Return a Uint8Array representing this UUID. @@ -389,9 +395,10 @@ declare namespace util { * @since 10 */ /** - * Parse a UUID from the string standard representation as described in the RFC 4122 version 4. + * Converts a UUID of the string type generated by generateRandomUUID to a UUID of the Uint8Array type generated + * by generateRandomBinaryUUID, as described in RFC 4122 version 4. * - * @param { string } uuid - String that specifies a UUID + * @param { string } uuid - A string representing the UUID. * @returns { Uint8Array } Return a Uint8Array representing this UUID. Throw SyntaxError if parsing fails. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. * @throws { BusinessError } 10200002 - Invalid uuid string. @@ -403,9 +410,11 @@ declare namespace util { function parseUUID(uuid: string): Uint8Array; /** - * Get the hash code of an object. + * Obtains the hash value of an object. If no hash value has been obtained, a random hash value is generated + * saved to the hash field of the object, and returned. If a hash value has been obtained, the hash value saved + * in the hash field is returned (the same value is returned for the same object). * - * @param { object } [object] - The object that need to get hash code. + * @param { object } [object] - Object whose hash value is to be obtained. * @returns { number } Return a hash code of an object. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -418,7 +427,19 @@ declare namespace util { function getHash(object: object): number; /** - * Defines the TextDecoder related options parameters. + * Get stack trace information for the main thread, returning up to 64 call frames + * This interface may impact main thread performance – use with caution. + * + * @returns { string } Return a stack trace of main thread. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + */ + function getMainThreadStackTrace(): string; + + /** + * Describes decoding-related options, which include fatal and ignoreBOM. * * @interface TextDecoderOptions * @syscap SystemCapability.Utils.Lang @@ -428,7 +449,8 @@ declare namespace util { */ interface TextDecoderOptions { /** - * Is a fatal error displayed? The default value is false. + * Whether to display fatal errors. The value true means to display fatal errors, and false means the opposite. + * The default value is false. * @type { ?boolean } * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -437,7 +459,8 @@ declare namespace util { */ fatal?: boolean; /** - * Do you want to ignore BOM tags? The default value is false. + * Whether to ignore the BOM. The value true means to ignore the BOM, and false means the opposite. + * The default value is false. * @type { ?boolean } * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -505,8 +528,8 @@ declare namespace util { * @since 10 */ /** - * The TextDecoder represents a text decoder that accepts a string as input, - * decodes it in UTF-8 format, and outputs UTF-8 byte stream. + * Provides APIs to decode byte arrays into strings. It supports multiple formats, + * including UTF-8, UTF-16LE, UTF-16BE, ISO-8859, and Windows-1251. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -528,7 +551,7 @@ declare namespace util { * @since 10 */ /** - * The textDecoder constructor. + * A constructor used to create a TextDecoder object. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -649,10 +672,10 @@ declare namespace util { * @since 10 */ /** - * Replaces the original constructor to process arguments and return a textDecoder object. + * Creates a TextDecoder object. It provides the same function as the deprecated argument constructor. * - * @param { string } [encoding] - Decoding format - * @param { TextDecoderOptions } [options] - Options + * @param { string } [encoding] - Encoding format. The default format is 'utf-8'. + * @param { TextDecoderOptions } [options] - Decoding-related options, which include fatal and ignoreBOM. * @returns { TextDecoder } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. * @syscap SystemCapability.Utils.Lang @@ -724,13 +747,10 @@ declare namespace util { */ decodeWithStream(input: Uint8Array, options?: DecodeWithStreamOptions): string; /** - * The input is decoded and a string is returned. - * If options.stream is set to true, any incomplete byte sequences found at the end of the input are internally - * buffered and will be emitted after the next call to textDecoder.decodeToString(). - * If textDecoder.fatal is set to true, any decoding errors that occur will result in a TypeError being thrown. + * Decodes the input content into a string. * - * @param { Uint8Array } input - Decoded numbers in accordance with the format. - * @param { DecodeToStringOptions } [options] - The default option is set to false. + * @param { Uint8Array } input - Uint8Array object to decode. + * @param { DecodeToStringOptions } [options] -Decoding-related options. The default value is undefined. * @returns { string } Return decoded text * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -838,7 +858,7 @@ declare namespace util { * @since 10 */ /** - * The textEncoder constructor. + * A constructor used to create a TextEncoder object. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -865,9 +885,9 @@ declare namespace util { * @since 10 */ /** - * The textEncoder constructor. + * A constructor used to create a TextEncoder object. * - * @param { string } [encoding] - The string for encoding format. + * @param { string } [encoding] - Encoding format. The default format is 'utf-8'. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -877,9 +897,9 @@ declare namespace util { constructor(encoding?: string); /** - * Create a TextEncoder object. + * Creates a TextEncoder object. * - * @param { string } [encoding] - The string for encoding format. + * @param { string } [encoding] - Encoding format. The default format is 'utf-8'. * @returns { TextEncoder } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. * @syscap SystemCapability.Utils.Lang @@ -921,9 +941,9 @@ declare namespace util { * @since 10 */ /** - * UTF-8 encodes the input string and returns a Uint8Array containing the encoded bytes. + * Encodes the input content into a Uint8Array object. * - * @param { string } [input] - The string to be encoded. + * @param { string } [input] - String to encode. The default value is an empty string. * @returns { Uint8Array } Returns the encoded text. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. * @syscap SystemCapability.Utils.Lang @@ -978,10 +998,10 @@ declare namespace util { * @since 10 */ /** - * Encode string, write the result to dest array. + * Encodes the input content into a Uint8Array object. * - * @param { string } input - The string to be encoded. - * @param { Uint8Array } dest - Encoded numbers in accordance with the format + * @param { string } input - String to encode. + * @param { Uint8Array } dest - Uint8Array object used to store the UTF-8 encoded text. * @returns { EncodeIntoUint8ArrayInfo } Return the object, where read represents * the number of characters that have been encoded, and written * represents the number of bytes occupied by the encoded characters. @@ -1044,7 +1064,7 @@ declare namespace util { * @since 10 */ /** - * A constructor used to create a RationalNumber instance with a given numerator and denominator. + * A constructor used to create a RationalNumber object. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -1079,10 +1099,12 @@ declare namespace util { * @since 10 */ /** - * Used to create a RationalNumber instance with a given numerator and denominator. + * Create a RationalNumber instance with a given numerator and denominator. + * The numerator and denominator parameters must be integers. If a decimal number is passed in, the function is not + * intercepted, but the error message "parseRationalNumber: The type of Parameter must be integer" is displayed. * - * @param { number } numerator - An integer number - * @param { number } denominator - An integer number + * @param { number } numerator - Numerator, which is an integer. + * @param { number } denominator - Denominator, which is an integer. * @returns { RationalNumber } * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -1114,9 +1136,11 @@ declare namespace util { * @since 10 */ /** - * Creates a RationalNumber object based on a given string. + * Creates a RationalNumber object based on the given string. + * The rationalString parameter must be a string. If a decimal string is passed in, the function is not intercepted, + * but the error message "createRationalFromString: The type of Parameter must be integer string" is displayed. * - * @param { string } rationalString - String Expression of Rational Numbers + * @param { string } rationalString - String used to create the RationalNumber object. * @returns { RationalNumber } Returns a RationalNumber object generated based on the given string. * @throws { BusinessError } 401 - The type of rationalString must be string. * @syscap SystemCapability.Utils.Lang @@ -1162,9 +1186,9 @@ declare namespace util { * @since 10 */ /** - * Compares the current RationalNumber object to the given object. + * Compares this RationalNumber object with another RationalNumber object. * - * @param { RationalNumber } another - An object of other rational numbers + * @param { RationalNumber } another - Object used to compare with this RationalNumber object. * @returns { number } Returns 0 or 1, or -1, depending on the comparison. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -1194,9 +1218,9 @@ declare namespace util { * @since 10 */ /** - * Compares two objects for equality. + * Checks whether this RationalNumber object equals the given object. * - * @param { Object } obj - An object + * @param { Object } obj - Object used to compare with this RationalNumber object. * @returns { boolean } Returns true if the given object is the same as the current object; Otherwise, false is returned. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -1221,7 +1245,7 @@ declare namespace util { * @since 10 */ /** - * Gets integer and floating-point values of a rational number object. + * Obtains the value of this RationalNumber object as an integer or a floating-point number. * * @returns { number } Returns the integer and floating-point values of a rational number object. * @syscap SystemCapability.Utils.Lang @@ -1270,10 +1294,10 @@ declare namespace util { * @since 10 */ /** - * Get the greatest common factor of two integers. + * Obtains the greatest common divisor of two specified integers. * - * @param { number } number1 - Is an integer. - * @param { number } number2 - Is an integer. + * @param { number } number1 - The first integer used to get the greatest common divisor. + * @param { number } number2 - The second integer used to get the greatest common divisor. * @returns { number } Returns the greatest common factor of two integers, integer type. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -1301,7 +1325,7 @@ declare namespace util { * @since 10 */ /** - * Gets the denominator of the current object. + * Obtains the denominator of this RationalNumber object. * * @returns { number } Returns the denominator of the current object. * @syscap SystemCapability.Utils.Lang @@ -1327,7 +1351,7 @@ declare namespace util { * @since 10 */ /** - * Gets the numerator of the current object. + * Obtains the numerator of this RationalNumber object. * * @returns { number } Returns the numerator of the current object. * @syscap SystemCapability.Utils.Lang @@ -1353,7 +1377,7 @@ declare namespace util { * @since 10 */ /** - * Checks whether the current RationalNumber object represents an infinite value. + * Checks whether this RationalNumber object represents a finite value. * * @returns { boolean } If the denominator is not 0, true is returned. Otherwise, false is returned. * @syscap SystemCapability.Utils.Lang @@ -1379,8 +1403,7 @@ declare namespace util { * @since 10 */ /** - * Checks whether the current RationalNumber object represents a Not-a-Number (NaN) value. - * + * Checks whether this RationalNumber object is a Not a Number (NaN). * @returns { boolean } If both the denominator and numerator are 0, true is returned. Otherwise, false is returned. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -1405,7 +1428,7 @@ declare namespace util { * @since 10 */ /** - * Checks whether the current RationalNumber object represents the value 0. + * Checks whether this RationalNumber object is 0. * * @returns { boolean } If the value represented by the current object is 0, true is returned. Otherwise, false is returned. * @syscap SystemCapability.Utils.Lang @@ -1431,7 +1454,7 @@ declare namespace util { * @since 10 */ /** - * Obtains a string representation of the current RationalNumber object. + * Obtains the string representation of this RationalNumber object. * * @returns { string } Returns a string representation of the current RationalNumber object. * @syscap SystemCapability.Utils.Lang @@ -1717,7 +1740,9 @@ declare namespace util { * @since 10 */ /** - * The LRUCache algorithm replaces the least used data with new data when the buffer space is insufficient. + * Provides APIs to discard the least recently used data to make rooms for new elements when the cache is full. + * This class uses the Least Recently Used (LRU) algorithm, which believes that the recently used data may be accessed + * again in the near future and the least accessed data is the least valuable data and should be removed from the cache. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -1741,9 +1766,9 @@ declare namespace util { * @since 10 */ /** - * Default constructor used to create a new LruBuffer instance with the default capacity of 64. + * A constructor used to create a LRUCache instance. The default capacity of the cache is 64. * - * @param { number } [capacity] - Indicates the capacity to customize for the buffer. + * @param { number } [capacity] - Capacity of the cache to create. The default value is 64. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -1770,9 +1795,9 @@ declare namespace util { * @since 10 */ /** - * Updates the buffer capacity to a specified capacity. + * Changes the cache capacity. * - * @param { number } newCapacity - Indicates the new capacity to set. + * @param { number } newCapacity - New capacity of the cache. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -1797,7 +1822,7 @@ declare namespace util { * @since 10 */ /** - * Returns a string representation of the object. + * Obtains the string representation of this cache. * * @returns { string } Returns the string representation of the object and outputs the string representation of the object. * @syscap SystemCapability.Utils.Lang @@ -1823,7 +1848,7 @@ declare namespace util { * @since 10 */ /** - * Obtains a list of all values in the current buffer. + * Total number of values in this cache. * * @type { number } * @syscap SystemCapability.Utils.Lang @@ -1849,7 +1874,7 @@ declare namespace util { * @since 10 */ /** - * Obtains the capacity of the current buffer. + * Obtains the capacity of this cache. * * @returns { number } Returns the capacity of the current buffer. * @syscap SystemCapability.Utils.Lang @@ -1873,7 +1898,7 @@ declare namespace util { * @since 10 */ /** - * Clears key-value pairs from the current buffer. + * Clears key-value pairs from this cache. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -1898,7 +1923,7 @@ declare namespace util { * @since 10 */ /** - * Obtains the number of times createDefault(Object) returned a value. + * Obtains the number of times that an object is created. * * @returns { number } Returns the number of times createDefault(java.lang.Object) returned a value. * @syscap SystemCapability.Utils.Lang @@ -1924,7 +1949,7 @@ declare namespace util { * @since 10 */ /** - * Obtains the number of times that the queried values are not matched. + * Obtains the number of times that the queried values are mismatched. * * @returns { number } Returns the number of times that the queried values are not matched. * @syscap SystemCapability.Utils.Lang @@ -1950,7 +1975,7 @@ declare namespace util { * @since 10 */ /** - * Obtains the number of times that values are evicted from the buffer. + * Obtains the number of times that key-value pairs in the cache are recycled. * * @returns { number } Returns the number of times that values are evicted from the buffer. * @syscap SystemCapability.Utils.Lang @@ -1976,7 +2001,7 @@ declare namespace util { * @since 10 */ /** - * Obtains the number of times that the queried values are successfully matched. + * Obtains the number of times that the queried values are matched. * * @returns { number } Returns the number of times that the queried values are successfully matched. * @syscap SystemCapability.Utils.Lang @@ -2002,7 +2027,7 @@ declare namespace util { * @since 10 */ /** - * Obtains the number of times that values are added to the buffer. + * Obtains the number of additions to this cache. * * @returns { number } Returns the number of times that values are added to the buffer. * @syscap SystemCapability.Utils.Lang @@ -2028,7 +2053,7 @@ declare namespace util { * @since 10 */ /** - * Checks whether the current buffer is empty. + * Checks whether this cache is empty. * * @returns { boolean } Returns true if the current buffer contains no value. * @syscap SystemCapability.Utils.Lang @@ -2062,7 +2087,8 @@ declare namespace util { * @since 10 */ /** - * Obtains the value associated with a specified key. + * Obtains the value of a key. If the key is not in the cache, createDefault is called to create the key. + * If the value specified in createDefault is not undefined, afterRemoval is called to return the value specified in createDefault. * * @param { K } key - Indicates the key to query. * @returns { V | undefined } Returns the value associated with the key if the specified key is present in the buffer; returns null otherwise. @@ -2102,7 +2128,8 @@ declare namespace util { * @since 10 */ /** - * Adds a key-value pair to the buffer. + * Adds a key-value pair to this cache and returns the value associated with the key. + * If the total number of values in the cache is greater than the specified capacity, the deletion operation is performed. * * @param { K } key - Indicates the key to add. * @param { V } value - Indicates the value associated with the key to add. @@ -2133,7 +2160,7 @@ declare namespace util { * @since 10 */ /** - * Obtains a list of all values in the current buffer. + * Obtains all values in this cache, listed from the most to the least recently accessed. * * @returns { V[] } Returns the list of all values in the current buffer in ascending order, from the most recently accessed to least recently accessed. * @syscap SystemCapability.Utils.Lang @@ -2161,7 +2188,7 @@ declare namespace util { * @since 10 */ /** - * Obtains a list of keys for the values in the current buffer. + * Obtains all keys in this cache, listed from the most to the least recently accessed. * since 9 * * @returns { K[] } Returns a list of keys sorted from most recently accessed to least recently accessed. @@ -2196,9 +2223,9 @@ declare namespace util { * @since 10 */ /** - * Deletes a specified key and its associated value from the current buffer. + * Removes a key and its associated value from this cache and returns the value associated with the key. If the key does not exist, undefined is returned. * - * @param { K } key - Indicates the key to delete. + * @param { K } key - Key to remove. * @returns { V | undefined } Returns an Optional object containing the deleted key-value pair; returns an empty Optional object if the key does not exist. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -2242,7 +2269,7 @@ declare namespace util { * @since 10 */ /** - * Executes subsequent operations after a value is deleted. + * Performs subsequent operations after a value is removed. * * @param { boolean } isEvict - The parameter value is true if this method is called due to insufficient capacity, * and the parameter value is false in other cases. @@ -2284,7 +2311,7 @@ declare namespace util { * @since 10 */ /** - * Checks whether the current buffer contains a specified key. + * Checks whether this cache contains the specified key. * * @param { K } key - Indicates the key to check. * @returns { boolean } Returns true if the buffer contains the specified key. @@ -2322,7 +2349,7 @@ declare namespace util { * @since 10 */ /** - * Executes subsequent operations if miss to compute a value for the specific key. + * Performs subsequent operations if no key is matched in the cache and returns the value (undefined by default) associated with the key. * * @param { K } key - Indicates the missed key. * @returns { V } Returns the value associated with the key. @@ -2352,7 +2379,7 @@ declare namespace util { * @since 10 */ /** - * Returns an array of key-value pairs of enumeratable properties of a given object. + * Obtains a new iterator object that contains all key-value pairs in this object. * * @returns { IterableIterator<[K, V]> } Returns an array of key-value pairs for the enumeratable properties of the given object itself. * @syscap SystemCapability.Utils.Lang @@ -2378,7 +2405,7 @@ declare namespace util { * @since 10 */ /** - * Specifies the default iterator for an object. + * Obtains a two-dimensional array in key-value pairs. * * @returns { IterableIterator<[K, V]> } Returns a two - dimensional array in the form of key - value pairs. * @syscap SystemCapability.Utils.Lang @@ -2405,7 +2432,8 @@ declare namespace util { * @since 10 */ /** - * The ScopeComparable contains comparison methods. + * The values of the ScopeComparable type are used to implement the compareTo method. Therefore, + * ensure that the input parameters are comparable. * * @interface ScopeComparable * @syscap SystemCapability.Utils.Lang @@ -2432,9 +2460,9 @@ declare namespace util { * @since 10 */ /** - * The comparison function is used by the scope. + * Compares two values and returns a Boolean value. * - * @param { ScopeComparable } other - Other + * @param { ScopeComparable } other - The other value to be compared with the current value. * @returns { boolean } Returns whether the current object is greater than or equal to the input object. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -2458,7 +2486,7 @@ declare namespace util { * @since 10 */ /** - * A type used to denote ScopeComparable or number. + * Defines the type of values in a Scope object. * * @typedef { ScopeComparable | number } * @syscap SystemCapability.Utils.Lang @@ -2635,7 +2663,8 @@ declare namespace util { * @since 10 */ /** - * The ScopeHelper interface is used to describe the valid range of a field. + * Provides APIs to define the valid range of a field. The constructor of this class creates comparable objects + * with lower and upper limits. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -2667,10 +2696,10 @@ declare namespace util { * @since 10 */ /** - * A constructor used to create a Scope instance with the lower and upper bounds specified. + * A constructor used to create a ScopeHelper object with the specified upper and lower limits. * - * @param { ScopeType } lowerObj - A ScopeType value - * @param { ScopeType } upperObj - A ScopeType value + * @param { ScopeType } lowerObj - Lower limit of the Scope object. + * @param { ScopeType } upperObj - Upper limit of the Scope object. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. @@ -2697,7 +2726,7 @@ declare namespace util { * @since 10 */ /** - * Obtains a string representation of the current range. + * Obtains a string representation that contains this Scope. * * @returns { string } Returns a string representation of the current range object. * @syscap SystemCapability.Utils.Lang @@ -2731,9 +2760,9 @@ declare namespace util { * @since 10 */ /** - * Returns the intersection of a given range and the current range. + * Obtains the intersection of this Scope and the given Scope. * - * @param { ScopeHelper } range - A Scope range object + * @param { ScopeHelper } range - Scope specified. * @returns { ScopeHelper } Returns the intersection of a given range and the current range. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -2771,10 +2800,10 @@ declare namespace util { * @since 10 */ /** - * Returns the intersection of the current range and the range specified by the given lower and upper bounds. + * Obtains the intersection of this Scope and the given lower and upper limits. * - * @param { ScopeType } lowerObj - A ScopeType value - * @param { ScopeType } upperObj - A ScopeType value + * @param { ScopeType } lowerObj - Lower limit. + * @param { ScopeType } upperObj - Upper limit. * @returns { ScopeHelper } Returns the intersection of the current range and the range specified by the given lower and upper bounds. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -2802,7 +2831,7 @@ declare namespace util { * @since 10 */ /** - * Obtains the upper bound of the current range. + * Obtains the upper limit of this Scope. * * @returns { ScopeType } Returns the upper bound of the current range. * @syscap SystemCapability.Utils.Lang @@ -2828,7 +2857,7 @@ declare namespace util { * @since 10 */ /** - * Obtains the lower bound of the current range. + * Obtains the lower limit of this Scope. * * @returns { ScopeType } Returns the lower bound of the current range. * @syscap SystemCapability.Utils.Lang @@ -2851,7 +2880,7 @@ declare namespace util { * @since 9 */ /** - * Creates the smallest range that includes the current range and the given lower and upper bounds. + * Obtains the union set of this Scope and the given lower and upper limits. * * @param { ScopeType } lowerObj - A ScopeType value * @param { ScopeType } upperObj - A ScopeType value @@ -2889,9 +2918,9 @@ declare namespace util { * @since 10 */ /** - * Creates the smallest range that includes the current range and a given range. + * Obtains the union set of this Scope and the given Scope. * - * @param { ScopeHelper } range - A Scope range object + * @param { ScopeHelper } range - Scope specified. * @returns { ScopeHelper } Returns the smallest range that includes the current range and a given range. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -2927,7 +2956,7 @@ declare namespace util { * @since 10 */ /** - * Creates the smallest range that includes the current range and a given value. + * Obtains the union set of this Scope and the given value. * * @param { ScopeType } value - A ScopeType value * @returns { ScopeHelper } Returns the smallest range that includes the current range and a given value. @@ -2965,9 +2994,9 @@ declare namespace util { * @since 10 */ /** - * Checks whether a given value is within the current range. + * Checks whether a value is within this Scope. * - * @param { ScopeType } value - A ScopeType value + * @param { ScopeType } value - Value specified. * @returns { boolean } If the value is within the current range return true,otherwise return false. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -3003,9 +3032,9 @@ declare namespace util { * @since 10 */ /** - * Checks whether a given range is within the current range. + * Checks whether a range is within this Scope. * - * @param { ScopeHelper } range - A Scope range + * @param { ScopeHelper } range - Scope specified. * @returns { boolean } If the current range is within the given range return true,otherwise return false. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -3041,9 +3070,9 @@ declare namespace util { * @since 10 */ /** - * Clamps a given value to the current range. + * Limits a value to this Scope. * - * @param { ScopeType } value - A ScopeType value + * @param { ScopeType } value - Value specified. * @returns { ScopeType } Returns a ScopeType object that a given value is clamped to the current range. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -3261,7 +3290,7 @@ declare namespace util { * @since 10 */ /** - * Constructor for creating base64 encoding and decoding + * A constructor used to create a Base64Helper instance. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -3307,10 +3336,12 @@ declare namespace util { * @since 11 */ /** - * Encodes all bytes from the specified u8 array into a newly-allocated u8 array using the Base64 encoding scheme. + * Encodes the input content into a Uint8Array object. * - * @param { Uint8Array } src - A Uint8Array value - * @param { Type } [options] - Enumerating input parameters includes two encoding formats: BASIC and BASIC_URL_SAFE + * @param { Uint8Array } src - Uint8Array object to encode. + * @param { Type } [options] - Encoding format. The following values are available: + * - util.Type.BASIC (default): Base64 encoding. + * - util.Type.BASIC_URL_SAFE: Base64URL encoding. * @returns { Uint8Array } Return the encoded new Uint8Array. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -3361,10 +3392,14 @@ declare namespace util { * @since 11 */ /** - * Encodes the specified byte array into a String using the Base64 encoding scheme. + * Encodes the input content into a string. This API returns the result synchronously. * - * @param { Uint8Array } src - A Uint8Array value - * @param { Type } options - one of the Type enumeration + * @param { Uint8Array } src - Uint8Array object to encode. + * @param { Type } [options] - Encoding format. The following values are available: + * - util.Type.BASIC (default): Base64 encoding. The return value does not contain carriage return characters or newline characters. + * - util.Type.MIME: Base64 encoding. Each line of the return value contains a maximum of 76 characters and ends with '\r\n'. + * - util.Type.BASIC_URL_SAFE: Base64URL encoding. The return value does not contain carriage return characters or newline characters. + * - util.Type.MIME_URL_SAFE: Base64URL encoding. Each line in the return value contains a maximum of 76 characters and ends with '\r\n'. * @returns { string } Return the encoded string. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -3415,10 +3450,14 @@ declare namespace util { * @since 11 */ /** - * Decodes a Base64 encoded String or input u8 array into a newly-allocated u8 array using the Base64 encoding scheme. + * Decodes a string into a Uint8Array object. This API returns the result synchronously. * - * @param { Uint8Array | string } src - A Uint8Array value or value A string value - * @param { Type } [options] - one of the Type enumeration + * @param { Uint8Array | string } src - Uint8Array object or string to decode. + * @param { Type } [options] - Decoding format. The following values are available: + * - util.Type.BASIC (default): Base64 decoding. + * - util.Type.MIME: Base64 decoding. The input parameter src contains carriage return characters and newline characters. + * - util.Type.BASIC_URL_SAFE: Base64URL decoding. + * - util.Type.MIME_URL_SAFE: Base64 URL decoding. The input parameter src contains carriage return characters and newline characters. * @returns { Uint8Array } Return the decoded Uint8Array. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -3467,10 +3506,12 @@ declare namespace util { * @since 11 */ /** - * Asynchronously encodes all bytes in the specified u8 array into the newly allocated u8 array using the Base64 encoding scheme. + * Encodes the input content into a Uint8Array object. This API uses a promise to return the result. * - * @param { Uint8Array } src - A Uint8Array value - * @param { Type } [options] - Enumerating input parameters includes two encoding formats: BASIC and BASIC_URL_SAFE + * @param { Uint8Array } src - Uint8Array object to encode. + * @param { Type } [options] - Encoding format. The following values are available: + * - util.Type.BASIC (default): Base64 encoding. + * - util.Type.BASIC_URL_SAFE: Base64URL encoding. * @returns { Promise<Uint8Array> } Return the encodes asynchronous new Uint8Array. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -3507,10 +3548,14 @@ declare namespace util { * @since 10 */ /** - * Asynchronously encodes the specified byte array into a String using the Base64 encoding scheme. + * Encodes the input content into a string. This API uses a promise to return the result. * - * @param { Uint8Array } src - A Uint8Array value - * @param { Type } [options] - one of the Type enumeration + * @param { Uint8Array } src - Uint8Array object to encode. + * @param { Type } [options] - Encoding format. The following values are available: + * - util.Type.BASIC (default): Base64 encoding. The return value does not contain carriage return characters or newline characters. + * - util.Type.MIME: Base64 encoding. Each line of the return value contains a maximum of 76 characters and ends with '\r\n'. + * - util.Type.BASIC_URL_SAFE: Base64URL encoding. The return value does not contain carriage return characters or newline characters. + * - util.Type.MIME_URL_SAFE: Base64URL encoding. Each line in the return value contains a maximum of 76 characters and ends with '\r\n'. * @returns { Promise<string> } Returns the encoded asynchronous string. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -3549,11 +3594,14 @@ declare namespace util { * @since 10 */ /** - * Use the Base64 encoding scheme to asynchronously decode a Base64-encoded string or - * input u8 array into a newly allocated u8 array. + * Decodes the input content into a Uint8Array object. This API uses a promise to return the result. * - * @param { Uint8Array | string } src - A Uint8Array value or value A string value - * @param { Type } [options] - one of the Type enumeration + * @param { Uint8Array | string } src - Uint8Array object or string to decode. + * @param { Type } [options] - Decoding format. The following values are available: + * - util.Type.BASIC (default): Base64 decoding. + * - util.Type.MIME: Base64 decoding. The input parameter src contains carriage return characters and newline characters. + * - util.Type.BASIC_URL_SAFE: Base64URL decoding. + * - util.Type.MIME_URL_SAFE: Base64 URL decoding. The input parameter src contains carriage return characters and newline characters. * @returns { Promise<Uint8Array> } Return the decoded asynchronous Uint8Array. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -3580,7 +3628,8 @@ declare namespace util { * @since 10 */ /** - * Check the type of parameter. + * Provides APIs to check different types of built-in objects, such as ArrayBuffer, Map, and Set, + * so as to avoid exceptions or crashes caused by type errors. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -3602,7 +3651,7 @@ declare namespace util { * @since 10 */ /** - * The types constructor + * A constructor used to create a Types object. * * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -3628,9 +3677,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of arraybuffer or sharedarraybuffer type. + * Checks whether the input value is of the ArrayBuffer or SharedArrayBuffer type. * - * @param { Object } value - A ArrayBuffer or SharedArrayBuffer value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in ArrayBuffer or SharedArrayBuffer instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -3658,9 +3707,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the type is included in the isAnyArrayBuffer. + * Checks whether the input value is of the ArrayBufferView type. * - * @param { Object } value - A included in the isAnyArrayBuffer value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is an instance of one of the ArrayBuffer views, * such as typed array objects or DataView. * @syscap SystemCapability.Utils.Lang @@ -3687,9 +3736,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is an arguments object type. + * Checks whether the input value is an arguments object. * - * @param { Object } value - A arguments value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is an arguments object. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -3717,9 +3766,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of arraybuffer type. + * Checks whether the input value is of the ArrayBuffer type. * - * @param { Object } value - A arraybuffer value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in ArrayBuffer instance. This does not include SharedArrayBuffer instances. * Usually, it is desirable to test for both; See isAnyArrayBuffer() for that. * @syscap SystemCapability.Utils.Lang @@ -3748,9 +3797,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the value entered is an asynchronous function type. + * Checks whether the input value is an asynchronous function. * - * @param { Object } value - A async function value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is an async function. This only reports back what the JavaScript engine is seeing; * in particular, the return value may not match the original source code if a transpilation tool was used. * @syscap SystemCapability.Utils.Lang @@ -3777,9 +3826,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of bigint64array array type. + * Checks whether the input value is of the BigInt64Array type. * - * @param { Object } value - A BigInt64Array value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a BigInt64Array instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -3805,9 +3854,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of biguint64array array array type. + * Checks whether the input value is of the BigUint64Array type. * - * @param { Object } value - A BigUint64Array value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a BigUint64Array instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -3891,9 +3940,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of DataView type. + * Checks whether the input value is of the DataView type. * - * @param { Object } value - A DataView value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in DataView instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -3919,9 +3968,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of type date. + * Checks whether the input value is of the Date type. * - * @param { Object } value - A Date value + * @param { Object } value -Object to check. * @returns { boolean } Returns true if the value is a built-in Date instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -3947,9 +3996,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is a native external value type. + * Checks whether the input value is of the native external type. * - * @param { Object } value - A External value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a native External value. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -3975,9 +4024,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of float32array array type. + * Checks whether the input value is of the Float32Array type. * - * @param { Object } value - A Float32Array value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Float32Array instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4003,9 +4052,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of float64array array type. + * Checks whether the input value is of the Float64Array type. * - * @param { Object } value - A Float64Array value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Float64Array instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4033,9 +4082,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the input value is a generator function type. + * Checks whether the input value is a generator function. * - * @param { Object } value - A generator function value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a generator function. This only reports back what the JavaScript engine is seeing; in particular, * the return value may not match the original source code if a transpilation tool was used. * @syscap SystemCapability.Utils.Lang @@ -4066,9 +4115,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is a generator object type. + * Checks whether the input value is a generator object. * - * @param { Object } value - A generator object value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a generator object as returned from a built-in generator function. * This only reports back what the JavaScript engine is seeing; in particular, *the return value may not match the original source code if a transpilation tool was used. @@ -4096,9 +4145,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of int8array array type. + * Checks whether the input value is of the Int8Array type. * - * @param { Object } value - A Int8Array value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Int8Array instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4124,9 +4173,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is the int16array type. + * Checks whether the input value is of the Int16Array type. * - * @param { Object } value - A Int16Array value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Int16Array instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4152,9 +4201,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is the int32array array type. + * Checks whether the input value is of the Int32Array type. * - * @param { Object } value - A Int32Array value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Int32Array instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4180,9 +4229,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of map type. + * Checks whether the input value is of the Map type. * - * @param { Object } value - A Map value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Map instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4208,9 +4257,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is the iterator type of map. + * Checks whether the input value is of the MapIterator type. * - * @param { Object } value - A Map iterator value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is an iterator returned for a built-in Map instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4236,9 +4285,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is the module namespace object object type. + * Checks whether the input value is a module namespace object. * - * @param { Object } value - A Module Namespace Object value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is an instance of a Module Namespace Object. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4264,9 +4313,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the value entered is of type error. + * Checks whether the input value is of the Error type. * - * @param { Object } value - A Error value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is an instance of a built-in Error type. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4321,9 +4370,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of promise type. + * Checks whether the input value is a promise. * - * @param { Object } value - A Promise value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Promise. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4349,9 +4398,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the value entered is of proxy type. + * Checks whether the input value is a proxy. * - * @param { Object } value - A Proxy value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a Proxy instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4377,9 +4426,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of type regexp. + * Checks whether the input value is of the RegExp type. * - * @param { Object } value - A regular expression object value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a regular expression object. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4405,9 +4454,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of type set. + * Checks whether the input value is of the Set type. * - * @param { Object } value - A Set instance value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Set instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4433,9 +4482,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is the iterator type of set. + * Checks whether the input value is of the SetIterator type. * - * @param { Object } value - A Set iterator value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is an iterator returned for a built-in Set instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4463,9 +4512,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of type sharedarraybuffer. + * Checks whether the input value is of the SharedArrayBuffer type. * - * @param { Object } value - A SharedArrayBuffer instance value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in SharedArrayBuffer instance. This does not include ArrayBuffer instances. * Usually, it is desirable to test for both; See isAnyArrayBuffer() for that. * @syscap SystemCapability.Utils.Lang @@ -4550,9 +4599,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is a type contained in typedarray. + * Checks whether the input value is of the TypedArray type. * - * @param { Object } value - A TypedArray instance value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in TypedArray instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4578,9 +4627,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is the uint8array array type. + * Checks whether the input value is of the Uint8Array type. * - * @param { Object } value - A Uint8Array value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Uint8Array instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4606,9 +4655,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is the uint8clapedarray array type. + * Checks whether the input value is of the Uint8ClampedArray type. * - * @param { Object } value - A Uint8ClampedArray value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Uint8ClampedArray instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4634,9 +4683,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is the uint16array array array type. + * Checks whether the input value is of the Uint16Array type. * - * @param { Object } value - A Uint16Array value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Uint16Array instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4662,9 +4711,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is the uint32array array type. + * Checks whether the input value is of the Uint32Array type. * - * @param { Object } value - A Uint32Array value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in Uint32Array instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4690,9 +4739,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of type weakmap. + * Checks whether the input value is of the WeakMap type. * - * @param { Object } value - A WeakMap value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in WeakMap instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4718,9 +4767,9 @@ declare namespace util { * @since 10 */ /** - * Check whether the entered value is of type weakset. + * Checks whether the input value is of the WeakSet type. * - * @param { Object } value - A WeakSet value + * @param { Object } value - Object to check. * @returns { boolean } Returns true if the value is a built-in WeakSet instance. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -4762,14 +4811,12 @@ declare namespace util { * @since 11 */ /** - * Insert some logic before the method. In implementation the method will be replaced with a new function, - * which will execute 'before' with the args 'this' and the args of the original method, and then execute - * the original method. The return value of the new function is returned by the original method. + * Inserts a function before a method of a class object. The inserted function is executed in prior to the original method of the class object. * - * @param { Object } targetClass - The operated class. - * @param { string } methodName - The name of the operated method. - * @param { boolean } isStatic - The flag whether the method is static. - * @param { Function } before - The logic inserted before the method. + * @param { Object } targetClass - Target class object. + * @param { string } methodName - Name of the method. Read-only methods are not supported. + * @param { boolean } isStatic - Whether the method is a static method. + * @param { Function } before - Function to insert. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. @@ -4796,14 +4843,12 @@ declare namespace util { * @since 11 */ /** - * Insert some logic after the method. In implementation the method will be replaced with a new function, - * which will execute the original method, and then execute 'after' with the args 'this' and the return value of - * the original method, and the args of the original method. The return value of the new function is returned by 'after'. + * Inserts a function after a method of a class object. The final return value is the return value of the function inserted. * - * @param { Object } targetClass - The operated class. - * @param { string } methodName - The name of the operated method. - * @param { boolean } isStatic - The flag whether the method is static. - * @param { Function } after - The logic inserted after the method. + * @param { Object } targetClass - Target class object. + * @param { string } methodName - Name of the method. Read-only methods are not supported. + * @param { boolean } isStatic - Whether the method is a static method. + * @param { Function } after - Function to insert. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. @@ -4829,13 +4874,13 @@ declare namespace util { * @since 11 */ /** - * Replace the original method with a new function, which will execute 'instead' with the args 'this' and the args - * of the original method. The return value of the new function is returned by 'instead'. + * Replaces a method of a class object with another function. After the replacement, only the new function logic + * is executed. The final return value is the return value of the new function. * - * @param { Object } targetClass - The operated class. - * @param { string } methodName - The name of the operated method. - * @param { boolean } isStatic - The flag whether the method is static. - * @param { Function } instead - The logic replaced with the method. + * @param { Object } targetClass - Target class object. + * @param { string } methodName - Name of the method. Read-only methods are not supported. + * @param { boolean } isStatic - Whether the method is a static method. + * @param { Function } instead - Function to be used replacement. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. @@ -4857,9 +4902,9 @@ declare namespace util { */ class StringDecoder { /** - * The StringDecoder constructor. + * Constructor used to create a StringDecoder instance. * - * @param { string } [encoding] - Encoding type of the input data.Default: utf8. + * @param { string } [encoding] - Encoding type of the input data. The default value is utf-8. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -4870,10 +4915,11 @@ declare namespace util { */ constructor(encoding?: string); /** - * Returns a decoded string, ensuring that any incomplete multiple byte characters at the end of the Uint8Array are - * omitted from the returned string and stored in an internal buffer. + * Returns a decoded string, Any incomplete multi-byte characters at the end of Uint8Array are filtered out from the + * returned string and stored in an internal buffer for the next call. * - * @param { string | Uint8Array } chunk - The bytes to decode. + * @param { string | Uint8Array } chunk - String to decode. Decoding is performed based on the input encoding type. If the input is of the Uint8Array type, + * decoding is performed normally. If the input is of the string type, decoding is performed in the original path. * @returns { string } Returns a decoded string. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -4885,10 +4931,9 @@ declare namespace util { */ write(chunk: string | Uint8Array): string; /** - * Returns any remaining input stored in the internal buffer as a string. After end() is called, - * this object can be reused for new input. + * Ends the decoding process and returns any remaining input stored in the internal buffer as a string. * - * @param { string | Uint8Array } [chunk] - The bytes to decode. + * @param { string | Uint8Array } [chunk] - String to decode. The default value is undefined. * @returns { string } Returns any remaining input stored in the internal buffer as a string. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; diff --git a/api/@ohos.util.json.d.ts b/api/@ohos.util.json.d.ts index 57825a4a7473246106cbc46e757305e90503819d..1d151a55de045d101592906291f49d2617428e1c 100644 --- a/api/@ohos.util.json.d.ts +++ b/api/@ohos.util.json.d.ts @@ -25,7 +25,8 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace json { /** @@ -35,9 +36,11 @@ declare namespace json { * @param { Object } this - The object to which the parsed key value pair belongs. * @param { string } key - Attribute name. * @param { Object } value - The value of the parsed key value pair. + * @returns { Object | undefined | null } Return an Object, undefined or null value * @syscap SystemCapability.Utils.Lang * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ type Transformer = (this: Object, key: string, value: Object) => Object | undefined | null; @@ -58,6 +61,22 @@ declare namespace json { */ function parse(text: string, reviver?: Transformer, options?: ParseOptions): Object | null; + /** + * Converts a JavaScript Object Notation (JSON) string into an Object or null. + * + * @param { string } text - A valid JSON string. + * @param { Type } type - A constructor or class representing the expected type of the parsed result. + * @param { Transformer } [reviver] - A function that transforms the results. + * @param {ParseOptions} options - The config of parse. + * @returns { T | null | undefined } Return an Object, array, string, number, boolean, undefined, or null value corresponding to JSON text. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + function parse<T>(text: string, type: Type, reviver?: Transformer, options?: ParseOptions): T | null | undefined; + /** * Converts a JavaScript value to a JavaScript Object Notation (JSON) string. * @@ -77,6 +96,22 @@ declare namespace json { */ function stringify(value: Object, replacer?: (number | string)[] | null, space?: string | number): string; + /** + * Converts a JavaScript value to a JavaScript Object Notation (JSON) string. + * + * @param { NullishType } value - A JavaScript value, usually an NullishType or array. + * @param { Transformer | ((number | string)[]) | null } [replacer] - An array of strings and numbers that acts as an approved list + * for selecting the object properties that will be stringify. + * @param { string | number } [space] - Adds indentation, white space, and line break characters to the return-value JSON text to make it easier to read. + * @returns { string } Return a JSON text. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + function stringify(value: NullishType, replacer?: Transformer | ((number | string)[]) | null, space?: string | number): string; + /** * Converts a JavaScript value to a JavaScript Object Notation (JSON) string. * @@ -105,7 +140,8 @@ declare namespace json { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ function has(obj: object, property: string): boolean; @@ -129,7 +165,8 @@ declare namespace json { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ const enum BigIntMode { /** @@ -138,7 +175,8 @@ declare namespace json { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ DEFAULT = 0, /** @@ -147,7 +185,8 @@ declare namespace json { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ PARSE_AS_BIGINT = 1, /** @@ -156,7 +195,8 @@ declare namespace json { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ ALWAYS_PARSE_AS_BIGINT = 2, } @@ -168,7 +208,8 @@ declare namespace json { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ interface ParseOptions { /** @@ -177,9 +218,10 @@ declare namespace json { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ bigIntMode: BigIntMode; } } -export default json; \ No newline at end of file +export default json; diff --git a/api/@ohos.vibrator.d.ts b/api/@ohos.vibrator.d.ts index 8d08f4fea85f37558125120ac60086b5bf1e5889..85208b0120be19c244e4a373a7610407bad3e8a5 100644 --- a/api/@ohos.vibrator.d.ts +++ b/api/@ohos.vibrator.d.ts @@ -18,7 +18,7 @@ * @kit SensorServiceKit */ -import { AsyncCallback } from './@ohos.base'; +import { AsyncCallback, Callback } from './@ohos.base'; /** * This module provides the capability to control motor vibration. @@ -33,7 +33,8 @@ import { AsyncCallback } from './@ohos.base'; * @namespace vibrator * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace vibrator { /** @@ -117,7 +118,8 @@ declare namespace vibrator { * @throws { BusinessError } 14600101 - Device operation failed * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function startVibration(effect: VibrateEffect, attribute: VibrateAttribute, callback: AsyncCallback<void>): void; @@ -150,7 +152,8 @@ declare namespace vibrator { * @throws { BusinessError } 14600101 - Device operation failed. * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function startVibration(effect: VibrateEffect, attribute: VibrateAttribute): Promise<void>; @@ -236,6 +239,20 @@ declare namespace vibrator { */ function stopVibrationSync(): void; + /** + * Stop the vibrator on the specified device. When all parameters are set to default, stop all local vibrators. + * + * @permission ohos.permission.VIBRATE + * @param { VibratorInfoParam } [param] - Indicate the device and vibrator information that needs to be controlled, + * <br> {@code VibratorInfoParam}. + * @returns { Promise<void> } Promise used to return the result. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 14600101 - Device operation failed. + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + function stopVibration(param?: VibratorInfoParam): Promise<void>; + /** * Whether the preset vibration effect is supported. * @@ -245,7 +262,8 @@ declare namespace vibrator { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Sensors.MiscDevice - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ function isSupportEffect(effectId: string, callback: AsyncCallback<boolean>): void; @@ -258,7 +276,8 @@ declare namespace vibrator { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * <br> 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Sensors.MiscDevice - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ function isSupportEffect(effectId: string): Promise<boolean>; @@ -275,6 +294,37 @@ declare namespace vibrator { */ function isSupportEffectSync(effectId: string): boolean; + /** + * Get effect information by device ID and vibrator ID. + * + * @param { string } effectId - The effect type to query. + * @param { VibratorInfoParam } [param] - Indicate the device and vibrator information that needs to be controlled, + * <br> {@code VibratorInfoParam}. By default, query local vibrators. + * @returns { EffectInfo } Returns information about the specified effect. + * @throws { BusinessError } 14600101 - Device operation failed. + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + function getEffectInfoSync(effectId: string, param?: VibratorInfoParam): EffectInfo; + + /** + * The information includes Indicates whether the effect is supported. + * + * @interface EffectInfo + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + interface EffectInfo { + /** + * Indicates whether the effect is supported, true means supported, false means not supported. + * + * @type { boolean } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + isEffectSupported: boolean; + } + /** * Stop the motor from vibrating. * @@ -425,7 +475,8 @@ declare namespace vibrator { * 'touch' | 'media' | 'physicalFeedback' | 'simulateReality'} * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ type Usage = 'unknown' | 'alarm' | 'ring' | 'notification' | 'communication' | 'touch' | 'media' | 'physicalFeedback' | 'simulateReality'; @@ -443,7 +494,8 @@ declare namespace vibrator { * @interface VibrateAttribute * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface VibrateAttribute { /** @@ -458,10 +510,22 @@ declare namespace vibrator { * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ id?: number; + /** + * Unique identifier for the device that contains one or multiple vibrators. + * By default, deviceId represents the local device. + * + * @type { ?number } + * @syscap SystemCapability.Sensors.MiscDevice + * @atomicservice + * @since 19 + */ + deviceId?: number; + /** * The use of vibration. * @@ -474,7 +538,8 @@ declare namespace vibrator { * @type { Usage } * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ usage: Usage; @@ -484,7 +549,8 @@ declare namespace vibrator { * @type { ?boolean } * @syscap SystemCapability.Sensors.MiscDevice * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ systemUsage?: boolean; } @@ -517,7 +583,8 @@ declare namespace vibrator { * @typedef { VibrateTime | VibratePreset | VibrateFromFile | VibrateFromPattern } * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ type VibrateEffect = VibrateTime | VibratePreset | VibrateFromFile | VibrateFromPattern; @@ -534,7 +601,8 @@ declare namespace vibrator { * @interface VibrateTime * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface VibrateTime { /** @@ -549,7 +617,8 @@ declare namespace vibrator { * @type { 'time' } * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ type: 'time'; @@ -565,7 +634,8 @@ declare namespace vibrator { * @type { number } * @syscap SystemCapability.Sensors.MiscDevice * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ duration: number; /** The duration of the vibration, in ms */ } @@ -575,7 +645,8 @@ declare namespace vibrator { * * @interface VibratePreset * @syscap SystemCapability.Sensors.MiscDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ interface VibratePreset { /** @@ -583,7 +654,8 @@ declare namespace vibrator { * * @type { 'preset' } * @syscap SystemCapability.Sensors.MiscDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ type: 'preset'; @@ -592,7 +664,8 @@ declare namespace vibrator { * * @type { string } * @syscap SystemCapability.Sensors.MiscDevice - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ effectId: string; @@ -607,7 +680,8 @@ declare namespace vibrator { * * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ count?: number; @@ -616,7 +690,8 @@ declare namespace vibrator { * * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ intensity?: number; } @@ -626,7 +701,8 @@ declare namespace vibrator { * * @interface VibrateFromFile * @syscap SystemCapability.Sensors.MiscDevice - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ interface VibrateFromFile { /** @@ -634,7 +710,8 @@ declare namespace vibrator { * * @type { 'file' } * @syscap SystemCapability.Sensors.MiscDevice - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ type: 'file'; @@ -643,7 +720,8 @@ declare namespace vibrator { * * @type { HapticFileDescriptor } * @syscap SystemCapability.Sensors.MiscDevice - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ hapticFd: HapticFileDescriptor; } @@ -654,7 +732,8 @@ declare namespace vibrator { * * @interface HapticFileDescriptor * @syscap SystemCapability.Sensors.MiscDevice - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ interface HapticFileDescriptor { /** @@ -663,7 +742,8 @@ declare namespace vibrator { * * @type { number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ fd: number; @@ -673,7 +753,8 @@ declare namespace vibrator { * * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ offset?: number; @@ -683,7 +764,8 @@ declare namespace vibrator { * * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ length?: number; } @@ -693,14 +775,16 @@ declare namespace vibrator { * * @enum { number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ enum VibratorEventType { /** * Steady state long vibration * * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ CONTINUOUS = 0, @@ -708,7 +792,8 @@ declare namespace vibrator { * Transient short vibration * * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ TRANSIENT = 1, } @@ -718,7 +803,8 @@ declare namespace vibrator { * * @interface VibratorCurvePoint * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ interface VibratorCurvePoint { /** @@ -726,7 +812,8 @@ declare namespace vibrator { * * @type { number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ time: number; @@ -735,7 +822,8 @@ declare namespace vibrator { * * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ intensity?: number; /** @@ -743,7 +831,8 @@ declare namespace vibrator { * * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ frequency?: number; } @@ -753,7 +842,8 @@ declare namespace vibrator { * * @interface VibratorEvent * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ interface VibratorEvent { /** @@ -761,7 +851,8 @@ declare namespace vibrator { * * @type { VibratorEventType } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ eventType: VibratorEventType; @@ -770,7 +861,8 @@ declare namespace vibrator { * * @type { number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ time: number; @@ -779,7 +871,8 @@ declare namespace vibrator { * * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ duration?: number; @@ -788,7 +881,8 @@ declare namespace vibrator { * * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ intensity?: number; @@ -797,7 +891,8 @@ declare namespace vibrator { * * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ frequency?: number; @@ -806,7 +901,8 @@ declare namespace vibrator { * * @type { ?number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ index?: number; @@ -815,7 +911,8 @@ declare namespace vibrator { * * @type { ?Array<VibratorCurvePoint> } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ points?: Array<VibratorCurvePoint>; } @@ -825,7 +922,8 @@ declare namespace vibrator { * * @interface VibratorPattern * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ interface VibratorPattern { /** @@ -833,7 +931,8 @@ declare namespace vibrator { * * @type { number } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ time: number; @@ -842,7 +941,8 @@ declare namespace vibrator { * * @type { Array<VibratorEvent> } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ events: Array<VibratorEvent>; } @@ -943,7 +1043,8 @@ declare namespace vibrator { * @param { number } duration The duration of the long-term vibration event * @param { ContinuousParam } options Optional parameter object * @returns { VibratorPatternBuilder } Return the current VibratorPatternBuilder object. - * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br> 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Sensors.MiscDevice * @since 18 */ @@ -955,7 +1056,8 @@ declare namespace vibrator { * @param { number } time Relative starting time of short oscillation events. * @param { TransientParam } options Optional parameter object * @returns { VibratorPatternBuilder } Return the current VibratorPatternBuilder object. - * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * <br> 2. Incorrect parameter types; 3. Parameter verification failed. * @syscap SystemCapability.Sensors.MiscDevice * @since 18 */ @@ -976,7 +1078,8 @@ declare namespace vibrator { * * @interface VibrateFromPattern * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ interface VibrateFromPattern { /** @@ -984,7 +1087,8 @@ declare namespace vibrator { * * @type { 'pattern' } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ type: 'pattern'; @@ -993,10 +1097,172 @@ declare namespace vibrator { * * @type { VibratorPattern } * @syscap SystemCapability.Sensors.MiscDevice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ pattern: VibratorPattern; } + + /** + * Parameters of vibrator on the device. By default, VibratorInfoParam may default to querying or controlling + * the local default vibrator. + * @interface VibratorInfoParam + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + interface VibratorInfoParam { + /** + * Unique identifier for the device that contains one or multiple vibrators. + * By default, deviceId may default to querying or controlling the local default vibrator. + * + * @type { ?number } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + deviceId?: number; + /** + * Unique identifier for the vibrator itself within the device. + * By default, vibratorId may default to querying or controlling all vibrators on the corresponding device. + * + * @type { ?number } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + vibratorId?: number; + } + + /** + * Represents the information about a vibrator device in the system. + * @interface VibratorInfo + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + interface VibratorInfo { + /** + * Unique identifier for the device that contains one or multiple vibrators. + * + * @type { number } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + deviceId: number; + + /** + * Unique identifier for the vibrator itself within the device. + * + * @type { number } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + vibratorId: number; + + /** + * Name of the device. + * + * @type { string } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + deviceName: string; + + /** + * Indicates whether the vibrator device support HD haptic. + * + * @type { boolean } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + isHdHapticSupported: boolean; + + /** + * Indicates whether the vibrator is a local device or an external one. + * If the value is true, it represents a local device; if false, it represents an external device. + * + * @type { boolean } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + isLocalVibrator: boolean; + } + + /** + * Retrieve the list of vibrator information about one or all devices. + * + * @param { VibratorInfoParam } [param] - Indicate the device and vibrator information that needs to be controlled, + * <br> {@code VibratorInfoParam}. By default, this returns all vibrators on all device when param is unspecified. + * @returns { Array<VibratorInfo> } Promise used to return a list of vibrator IDs containing information + * <br> about the vibrator device. + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + function getVibratorInfoSync(param?: VibratorInfoParam): Array<VibratorInfo>; + + /** + * Register a callback function to be called when a vibrator plugin or unplug event occurs. + * + * @param { 'vibratorStateChange' } type - Event of the listening. + * @param { Callback<VibratorStatusEvent> } callback - The callback function to be executed when + * <br> the event is triggered. + * @throws { BusinessError } 14600101 - Device operation failed. + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + function on(type: 'vibratorStateChange', callback: Callback<VibratorStatusEvent>): void; + + /** + * Unregister a callback function for vibrator plugin or unplug events. + * + * @param { 'vibratorStateChange' } type - Event of the listening. + * @param { Callback<VibratorStatusEvent> } [callback] - The callback function to be removed from the event listener. + * @throws { BusinessError } 14600101 - Device operation failed. + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + function off(type: 'vibratorStateChange', callback?: Callback<VibratorStatusEvent>): void; + + /** + * Indicates information about vibrator online or offline events. + * + * @interface + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + interface VibratorStatusEvent { + /** + * The timestamp of the reported event. + * @type { number } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + timestamp: number; + + /** + * Unique identifier for the device that contains one or multiple vibrators. + * + * @type { number } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + deviceId: number; + + /** + * Indicate the number of vibrators on the device. + * + * @type { number } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + vibratorCount: number; + + /** + * Indicates the device's online and offline status, true indicates online, false indicates offline. + * + * @type { boolean } + * @syscap SystemCapability.Sensors.MiscDevice + * @since 19 + */ + isVibratorOnline: boolean; + } } export default vibrator; diff --git a/api/@ohos.web.webview.d.ts b/api/@ohos.web.webview.d.ts index ccf452830c3e7a2e6a529214eb0d4bbed1acfed0..38a2ce228560c528b487f51b98a9b8f30a72d3a0 100644 --- a/api/@ohos.web.webview.d.ts +++ b/api/@ohos.web.webview.d.ts @@ -366,7 +366,7 @@ declare namespace webview { NONE = 0, /** - * All audio and video are playing. + * The audio and video on the page are being played. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 @@ -374,7 +374,7 @@ declare namespace webview { PLAYING = 1, /** - * All audio and video are paused. + * The audio and video on the page are paused. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 @@ -382,7 +382,7 @@ declare namespace webview { PAUSED = 2, /** - * All audio and video are stopped. + * The audio and video on the page are stopped. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 @@ -431,7 +431,7 @@ declare namespace webview { * @since 11 */ /** - * Defines the hit test value, related to {@link getHitTestValue} method. + * Provides element information of the click area. related to {@link getLastHitTest} method. * * @typedef HitTestValue * @syscap SystemCapability.Web.Webview.Core @@ -464,6 +464,7 @@ declare namespace webview { */ /** * Get the hit test extra data. + * If the clicked area is an image or a link, the additional parameter information is it's URL address. * * @type { string } * @syscap SystemCapability.Web.Webview.Core @@ -711,7 +712,7 @@ declare namespace webview { scale?: number; /** - * Whether background should be printed when creating pdf. + * Whether background should be printed when creating pdf. * * @type { ?boolean } * @syscap SystemCapability.Web.Webview.Core @@ -933,7 +934,12 @@ declare namespace webview { * @since 11 */ /** - * Provides methods for managing web storage.3 + * Implements a WebStorage object to manage the Web SQL database and HTML5 Web Storage APIs. + * All Web components in an application share a WebStorage object. + * + * <p><strong>API Note</strong>:<br> + * You must load the Web component before calling the APIs in WebStorage. + * </p> * * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -957,10 +963,11 @@ declare namespace webview { * @since 11 */ /** - * Delete all the storage data. + * Deletes all data in the Web SQL Database. * - * @param { boolean } incognito - {@code true} delete all the storage data in incognito mode; - * {@code false} otherwise. + * @param { boolean } incognito - Whether to delete all data in the Web SQL Database in incognito mode. + * {@code true} means to delete all data in the Web SQL Database in incognito mode; + * {@code false} means to delete all data in the Web SQL Database in normal non-incognito mode. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -990,9 +997,9 @@ declare namespace webview { * @since 11 */ /** - * Delete the storage data with the origin. + * Deletes all data in the specified origin. * - * @param { string } origin - The origin which to be deleted. + * @param { string } origin - Index of the origin, which is obtained through {@link getOrigins}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 17100011 - Invalid origin. @@ -1022,8 +1029,11 @@ declare namespace webview { * @since 11 */ /** - * Get current all the web storage origins. - * @returns { Promise<Array<WebStorageOrigin>> } - returns all the WebStorageOrigin. + * Obtains information about all origins that are currently using the Web SQL Database. + * This API uses a promise to return the result. + * + * @returns { Promise<Array<WebStorageOrigin>> } - Promise used to return the information about the origins. + * For details, see {@link WebStorageOrigin}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 17100012 - Invalid web storage origin. @@ -1053,8 +1063,11 @@ declare namespace webview { * @since 11 */ /** - * Get current all the web storage origins. - * @param { AsyncCallback<Array<WebStorageOrigin>> } callback - callback used to return all the WebStorageOrigin. + * Obtains information about all origins that are currently using the Web SQL Database. + * This API uses an asynchronous callback to return the result. + * + * @param { AsyncCallback<Array<WebStorageOrigin>> } callback - Callback used to return the information about the + * origins. For details, see {@link WebStorageOrigin}. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 17100012 - Invalid web storage origin. @@ -1211,7 +1224,12 @@ declare namespace webview { * @since 9 */ /** - * Provides methods for managing web database. + * Implements a WebDataBase object. + * + * <p><strong>API Note</strong>:<br> + * You must load the Web component before calling the APIs in WebDataBase. + * </p> + * * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -1241,7 +1259,7 @@ declare namespace webview { * @since 9 */ /** - * Delete all http authentication credentials. + * Deletes all HTTP authentication credentials saved in the cache. This API returns the result synchronously. * * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -1284,11 +1302,11 @@ declare namespace webview { * @since 9 */ /** - * Save http authentication credentials. - * @param { string } host - The host to which the credentials apply. - * @param { string } realm - The realm to which the credentials apply. - * @param { string } username - The username. - * @param { string } password - The password. + * Saves HTTP authentication credentials for a given host and realm. This API returns the result synchronously. + * @param { string } host - Host to which HTTP authentication credentials apply. + * @param { string } realm - Realm to which HTTP authentication credentials apply. + * @param { string } username - User name. + * @param { string } password - Password. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @syscap SystemCapability.Web.Webview.Core @@ -1311,7 +1329,12 @@ declare namespace webview { * @since 11 */ /** - * Provides a method for managing web geographic location permissions. + * Implements a GeolocationPermissions object. + * + * <p><strong>API Note</strong>:<br> + * You must load the Web component before calling the APIs in GeolocationPermissions. + * </p> + * * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -1339,10 +1362,12 @@ declare namespace webview { * @since 11 */ /** - * Allow geolocation permissions for specifies source. - * @param { string } origin - Url source. - * @param { boolean } incognito - {@code true} Allow geolocation permissions for specifies source - * in incognito mode; {@code false} otherwise. + * Allows the specified origin to use the geolocation information. + * @param { string } origin - Index of the origin. + * @param { boolean } incognito - Whether to allow the specified origin to use the geolocation information + * in incognito mode. {@code true} means to allow the specified origin to use the + * geolocation information in incognito mode; {@code false} means to allow the + * specified origin to use the geolocation information in normal non-incognito mode. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 17100011 - Invalid origin. @@ -1404,10 +1429,12 @@ declare namespace webview { * @since 11 */ /** - * Delete all geolocation permissions. + * Clears the geolocation permission status of all sources. * - * @param { boolean } incognito - {@code true} delete all geolocation in incognito mode; - * {@code false} otherwise. + * @param { boolean } incognito - Whether to clear the geolocation permission status of all sources in incognito + * mode. {@code true} means to clear the geolocation permission status of + * all sources in incognito mode; {@code false} means to clear the geolocation + * permission status of all sources in normal non-incognito mode. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -1612,7 +1639,7 @@ declare namespace webview { * @returns { string } - The cookie value for the given URL. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. * @syscap SystemCapability.Web.Webview.Core * @since 9 * @deprecated since 11 @@ -1629,7 +1656,7 @@ declare namespace webview { * @returns { string } - The cookie value for the given URL. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -1643,7 +1670,7 @@ declare namespace webview { * @returns { Promise<string> } - A promise resolved after the cookies of given URL have been gotten. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -1660,7 +1687,7 @@ declare namespace webview { * @returns { Promise<string> } - A promise resolved after the cookies of given URL have been gotten. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. * @syscap SystemCapability.Web.Webview.Core * @since 14 */ @@ -1673,7 +1700,7 @@ declare namespace webview { * @param { AsyncCallback<string> } callback - Called after the cookies of given URL have been gotten. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -1688,8 +1715,9 @@ declare namespace webview { * @param { string } value - The cookie as a string, using the format of the 'Set-Cookie' HTTP response header. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. - * @throws { BusinessError } 17100002 - Invalid url. - * @throws { BusinessError } 17100005 - Invalid cookie value. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. + * @throws { BusinessError } 17100005 - The provided cookie value is invalid. It must follow the format specified + * <br>in RFC 6265. * @syscap SystemCapability.Web.Webview.Core * @since 9 * @deprecated since 11 @@ -1706,8 +1734,9 @@ declare namespace webview { * in incognito mode; {@code false} otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. - * @throws { BusinessError } 17100002 - Invalid url. - * @throws { BusinessError } 17100005 - Invalid cookie value. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. + * @throws { BusinessError } 17100005 - The provided cookie value is invalid. It must follow the format specified + * <br>in RFC 6265. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -1725,8 +1754,9 @@ declare namespace webview { * {@code false} otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. - * @throws { BusinessError } 17100002 - Invalid url. - * @throws { BusinessError } 17100005 - Invalid cookie value. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. + * @throws { BusinessError } 17100005 - The provided cookie value is invalid. It must follow the format specified + * <br>in RFC 6265. * @syscap SystemCapability.Web.Webview.Core * @since 14 */ @@ -1740,8 +1770,9 @@ declare namespace webview { * @returns { Promise<void> } - A promise resolved after the cookies of given URL have been set. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. - * @throws { BusinessError } 17100002 - Invalid url. - * @throws { BusinessError } 17100005 - Invalid cookie value. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. + * @throws { BusinessError } 17100005 - The provided cookie value is invalid. It must follow the format specified + * <br>in RFC 6265. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -1761,8 +1792,9 @@ declare namespace webview { * @returns { Promise<void> } - A promise resolved after the cookies of given URL have been set. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. - * @throws { BusinessError } 17100002 - Invalid url. - * @throws { BusinessError } 17100005 - Invalid cookie value. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. + * @throws { BusinessError } 17100005 - The provided cookie value is invalid. It must follow the format specified + * <br>in RFC 6265. * @syscap SystemCapability.Web.Webview.Core * @since 14 */ @@ -1776,8 +1808,9 @@ declare namespace webview { * @param { AsyncCallback<void> } callback - Called after the cookies have been set. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. - * @throws { BusinessError } 17100002 - Invalid url. - * @throws { BusinessError } 17100005 - Invalid cookie value. + * @throws { BusinessError } 17100002 - URL error. No valid cookie found for the specified URL. + * @throws { BusinessError } 17100005 - The provided cookie value is invalid. It must follow the format specified + * <br>in RFC 6265. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -3351,8 +3384,7 @@ declare namespace webview { */ enum RenderProcessMode { /** - * Indicates the ArkWeb operates in single render process mode, which is the default value for - * mobile devices. + * ArkWeb single rendering subprocess mode. In this mode, multiple Web pages reuse a rendering subprocess. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -3361,7 +3393,7 @@ declare namespace webview { SINGLE = 0, /** - * Indicates the ArkWeb operates in multiple render process mode. + * ArkWeb multi-rendering subprocess mode. In this mode, there is one rendering subprocess per Web. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -3396,7 +3428,7 @@ declare namespace webview { */ enum OfflineResourceType { /** - * Image resource + * Resource of the image type. * * @syscap SystemCapability.Web.Webview.Core * @since 12 @@ -3404,7 +3436,7 @@ declare namespace webview { IMAGE, /** - * CSS resource + * Resource of the CSS type. * * @syscap SystemCapability.Web.Webview.Core * @since 12 @@ -3412,7 +3444,7 @@ declare namespace webview { CSS, /** - * Classic javascript resource + * Javascript resource loaded through the <script src="" /> tag. * * @syscap SystemCapability.Web.Webview.Core * @since 12 @@ -3420,7 +3452,7 @@ declare namespace webview { CLASSIC_JS, /** - * Module javascript resource + * Javascript resource loaded through the <script src="" type="module" /> tag. * * @syscap SystemCapability.Web.Webview.Core * @since 12 @@ -3489,6 +3521,31 @@ declare namespace webview { EVENT } + /** + * Enum type supplied to {@link getAttachState} for indicating the attach state of controller. + * + * @enum { number } + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + enum ControllerAttachState { + /** + * Indicates webviewController is not attached a web component. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + UNATTACHED = 0, + + /** + * Indicates webviewController is attached a web component. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + ATTACHED = 1 + } + /** * Provides methods for controlling the web controller. * @syscap SystemCapability.Web.Webview.Core @@ -3501,7 +3558,11 @@ declare namespace webview { * @since 10 */ /** - * Provides methods for controlling the web controller. + * WebviewController can control various behaviors of Web components + * (including page navigation, declaring cycle state, JavaScript interaction and so on). + * A WebviewController object can only control one Web component, + * and methods on the Webviewcontroller (except static methods) can only be called + * after the web component is bound to the WebviewController. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -3575,8 +3636,17 @@ declare namespace webview { * @since 11 */ /** - * Enables debugging of web contents. - * @param { boolean } webDebuggingAccess {@code true} enables debugging of web contents; {@code false} otherwise. + * Sets whether to enable web debugging. By default, web debugging is disabled. + * For details, see Debugging Frontend Pages by Using DevTools. + * + * <p><strong>API Note</strong>:<br> + * Enabling web debugging allows users to check and modify the internal status of the web page, + * which poses security risks. Therefore, you are advised not to enable this function + * in the officially released version of the app. + * </p> + * + * @param { boolean } webDebuggingAccess - Sets whether to enable web debugging.{@code true} enable web debugging; + {@code false} disable web debugging. The default value is false. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @syscap SystemCapability.Web.Webview.Core @@ -3743,7 +3813,11 @@ declare namespace webview { * @since 9 */ /** - * Let the Web active. + * Call this interface to notify the Web component to enter the foreground activation state. + * The activation state is the state in which the application interacts with the user. + * The application will remain in this state until something happens, + * such as receiving an incoming call or closing the screen of the device, + * to shift the focus away from the application. * * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -3762,7 +3836,11 @@ declare namespace webview { * @since 9 */ /** - * Let the Web inactive. + * Call this interface to notify the Web component to enter the inactive state. + * In this callback, the developer can realize the appropriate behavior when the application loses focus. + * In this state, any content that can be safely paused will be paused as much as possible, + * such as animation and geographical location. However, JavaScript will not be paused. + * To pause JavaScript globally, please use {@link pauseAllTimers}.To reactivate the Web component, call onActive. * * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -3806,7 +3884,8 @@ declare namespace webview { * @throws { BusinessError } 401 - Invalid input parameter. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @syscap SystemCapability.Web.Webview.Core * @since 9 */ @@ -3840,7 +3919,8 @@ declare namespace webview { * @throws { BusinessError } 401 - Invalid input parameter. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @throws { BusinessError } 17100003 - Invalid resource path or file type. * @syscap SystemCapability.Web.Webview.Core * @since 9 @@ -3853,7 +3933,8 @@ declare namespace webview { * @throws { BusinessError } 401 - Invalid input parameter. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @throws { BusinessError } 17100003 - Invalid resource path or file type. * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -3868,7 +3949,8 @@ declare namespace webview { * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @throws { BusinessError } 17100003 - Invalid resource path or file type. * @syscap SystemCapability.Web.Webview.Core * @crossplatform @@ -3893,7 +3975,7 @@ declare namespace webview { * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 - * @deprecated since 16 + * @deprecated since 18 * @useinstead ohos.web.webview.WebviewController#getLastHitTest */ getHitTest(): WebHitTestType; @@ -3982,6 +4064,7 @@ declare namespace webview { * Let the Web zoom by. * * @param { number } factor - The zoom factor. + * Reduced when the input parameter is less than 1. Enlarged when the input parameter is greater than 1.Value range: (0, 100]. * @throws { BusinessError } 401 - Invalid input parameter. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -3992,6 +4075,10 @@ declare namespace webview { /** * Let the Web zoom by. * + * <p><strong>API Note</strong>:<br> + * zoomAccess must be true. + * </p> + * * @param { number } factor - The zoom factor. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. @@ -4026,6 +4113,7 @@ declare namespace webview { */ /** * Let the Web zoom in. + * Call this interface to enlarge the current page by 25%. * * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -4058,6 +4146,7 @@ declare namespace webview { */ /** * Let the Web zoom out. + * Call this interface to shrink the current page by 20%. * * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -4078,14 +4167,14 @@ declare namespace webview { * @since 9 */ /** - * Gets the hit test value of HitTest. + * Get the element information of the currently clicked area. * @returns { HitTestValue } Return the element information of the clicked area. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 - * @deprecated since 16 + * @deprecated since 18 * @useinstead ohos.web.webview.WebviewController#getLastHitTest */ getHitTestValue(): HitTestValue; @@ -4108,7 +4197,7 @@ declare namespace webview { * @since 11 */ /** - * Gets the id for the current Web. + * Gets the index value of the current Web component for the management of multiple Web components. * @returns { number } Returns the index value of the current Web component. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -4167,8 +4256,8 @@ declare namespace webview { * @since 9 */ /** - * Gets the content height of current Web page. - * @returns { number } Returns the page height of the current page. + * Obtains the height of this web page. + * @returns { number } Height of the current web page. Unit: vp. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. * @syscap SystemCapability.Web.Webview.Core @@ -4338,7 +4427,17 @@ declare namespace webview { * @since 11 */ /** - * Registers the JavaScript object and method list. + * Registers the supplied ArkTs object into this Web component. + * The object is registered into all frames of the web page, including all iframes, using the specified name. + * This allows the methods of the ArkTs object to be accessed from JavaScript. + * <p><strong>API Note</strong>:<br> + * Registed objects will not appear in JavaScript until the page is next (re)load. + * To avoid memory leaks, registerJavaScriptProxy must be used together with deleteJavaScriptProxy. + * To avoid security risks, it is recommended that registerJavaScriptProxy be used with trusted web components. + * If the same method is registered repeatedly in both synchronous and asynchronous list, it will default to an asynchronous method. + * The synchronous function list and asynchronous function list cannot be empty at the same time.<br> + * otherwise, this registration will fail. + * <p> * * @param { object } object - Application side JavaScript objects participating in registration. * @param { string } name - The name of the registered object, which is consistent with the @@ -4357,6 +4456,37 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * Registers the supplied ArkTs object into this Web component. + * The object is registered into all frames of the web page, including all iframes, using the specified name. + * This allows the methods of the ArkTS object to be accessed from JavaScript. + * <p><strong>API Note</strong>:<br> + * Registed objects will not appear in JavaScript until the page is next (re)load. + * To avoid memory leaks, registerJavaScriptProxy must be used together with deleteJavaScriptProxy. + * To avoid security risks, it is recommended that registerJavaScriptProxy be used with trusted web components. + * If the same method is registered repeatedly in both synchronous and asynchronous list, it will default to an asynchronous method. + * The synchronous function list and asynchronous function list cannot be empty at the same time.<br> + * otherwise, this registration will fail. + * <p> + * + * @param { object } object - Application side JavaScript objects participating in registration. + * @param { string } name - The name of the registered object, which is consistent with the + * object name called in the window. + * @param { Array<string> } methodList - The method of the application side JavaScript object participating + * in the registration. + * @param { Array<string> } [asyncMethodList] - The async method of the application side JavaScript object + * participating in the registration. + * @param { string } [permission] - permission configuration defining web page URLs that can access JavaScriptProxy methods. + * The configuration can be defined at two levels, object level and method level. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 17100001 - Init error. + * The WebviewController must be associated with a Web component. + * @syscap SystemCapability.Web.Webview.Core + * @crossplatform + * @atomicservice + * @since 20 + */ registerJavaScriptProxy(object: object, name: string, methodList: Array<string>, asyncMethodList?: Array<string>, permission?: string): void; @@ -4384,6 +4514,20 @@ declare namespace webview { * @atomicservice * @since 11 */ + /** + * Deletes a registered JavaScript object with given name. + * + * @param { string } name - The name of a registered JavaScript object to be deleted. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3.Parameter verification failed. + * @throws { BusinessError } 17100001 - Init error. + * The WebviewController must be associated with a Web component. + * @throws { BusinessError } 17100008 - Failed to delete JavaScriptProxy because it does not exist. + * @syscap SystemCapability.Web.Webview.Core + * @crossplatform + * @atomicservice + * @since 20 + */ deleteJavaScriptRegister(name: string): void; /** @@ -4509,7 +4653,14 @@ declare namespace webview { * @since 9 */ /** - * Loads a piece of code and execute JS code in the context of the currently displayed page. + * Asynchronously execute JavaScript in the context of the currently displayed page. + * The result of the script execution will be returned through a via Promise. + * This method must be used on the UI thread, and the callback will also be invoked on the UI thread. + * <p><strong>API Note</strong>:<br> + * The state of JavaScript is no longer persisted across navigations like loadUrl. + * For example, global variables and functions defined before calling loadUrl will not exist in the loaded page. + * It is recommended that applications use registerJavaScriptProxy to ensure that the JavaScript state can be persisted across page navigations. + * <p> * * @param { string } script - JavaScript Script. * @returns { Promise<string> } A promise is solved after the JavaScript script is executed. @@ -4539,7 +4690,14 @@ declare namespace webview { * @since 9 */ /** - * Loads a piece of code and execute JS code in the context of the currently displayed page. + * Asynchronously execute JavaScript in the context of the currently displayed page. + * The result of the script execution will be returned through an asynchronous callback. + * This method must be used on the UI thread, and the callback will also be invoked on the UI thread. + * <p><strong>API Note</strong>:<br> + * The state of JavaScript is no longer persisted across navigations like loadUrl. + * For example, global variables and functions defined before calling loadUrl will not exist in the loaded page. + * It is recommended that applications use registerJavaScriptProxy to ensure that the JavaScript state can be persisted across page navigations. + * <p> * * @param { string } script - JavaScript Script. * @param { AsyncCallback<string> } callback - Callbacks execute JavaScript script results. @@ -4671,11 +4829,15 @@ declare namespace webview { runJavaScriptExt(script: string | ArrayBuffer, callback: AsyncCallback<JsMessageExt>): void; /** - * Execute createPdf code in the context of the currently displayed page and return the result. + * Rendering current Web page into Pdf data, return the result in async mode. * - * @param { PdfConfiguration } configuration - createPdf configuration. + * @param { PdfConfiguration } configuration - configuration for createPdf, + * including page width and height, etc. + * {@Link PdfConfiguration} * @param { AsyncCallback<PdfData> } callback - Callbacks execute createPdf results. - * @throws { BusinessError } 401 - Invalid input parameter. + * PdfData is pdf data stream of current web page in Uint8Array + * {@Link PdfData}. + * @throws { BusinessError } 401 - Invalid input parameter. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. * @syscap SystemCapability.Web.Webview.Core @@ -4685,13 +4847,16 @@ declare namespace webview { createPdf(configuration: PdfConfiguration, callback: AsyncCallback<PdfData>): void; /** - * Execute createPdf code in the context of the currently displayed page and return the result. + * Rendering current Web page into Pdf data, return the result in promise mode. * - * @param { PdfConfiguration } configuration - createPdf configuration. - * @returns { Promise<PdfData> } A promise is solved after the createPdf is executed. - * This parameter will be the result of createPdf execution. - * If the createPdf fails to execute or has no return value, - * a none type value will be returned. + * @param { PdfConfiguration } configuration - configuration for createPdf, + * including page width and height, etc. + * {@Link PdfConfiguration} + * @returns { Promise<PdfData> } The promise returned by the function. + * PdfData is pdf data stream of current web page in Uint8Array + * {@Link PdfData}. + * If createPdf fails or no return value, + * a none type value will be returned. * @throws { BusinessError } 401 - Invalid input parameter. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -4890,7 +5055,7 @@ declare namespace webview { * @since 9 */ /** - * Query if current document has image. + * Asynchronous search for image existence on the current page through Promise method. * * @returns { Promise<boolean> } A promise resolved after query image has finished. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. @@ -4913,7 +5078,7 @@ declare namespace webview { * @since 9 */ /** - * Query if current document has image. + * Asynchronous search for the presence of an image on the current page through callback method. * * @param { AsyncCallback<boolean> } callback - Called after query image has finished. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. @@ -4959,11 +5124,15 @@ declare namespace webview { * @since 9 */ /** - * Remove resource cache in application. So this method will remove all cache for all web components in the - * same application. + * Clears the cache in the application. This API will clear the cache for all webviews in the same application. * - * @param { boolean } clearRom - Remove cache in both rom and ram if true. Otherwise only clear cache - * in ram. + * <p><strong>API Note</strong>:<br> + * You can view the Webview cache in the data/storage/el2/base/cache/web/Cache directory. + * </p> + * + * @param { boolean } clearRom - Whether to clear the cache in the ROM and RAM at the same time. + * {@code true} means to clear the cache in the ROM and RAM at the same time; + * {@code false} means to only clear the cache in the RAM. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. * @throws { BusinessError } 17100001 - Init error. @@ -5016,9 +5185,10 @@ declare namespace webview { /** * Scroll to the position. * - * @param { number } x - the x of the position. - * @param { number } y - the y of the position. + * @param { number } x - the x of the position.Unit: vp. + * @param { number } y - the y of the position.Unit: vp. * @param { number } duration - the scroll animation duration. Unit: millisecond. + * If the value is not passed, or is negative or 0, there is no animation. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 17100001 - Init error. @@ -5058,9 +5228,14 @@ declare namespace webview { /** * Scroll by the delta position. * - * @param { number } deltaX - the delta x of the position. - * @param { number } deltaY - the delta y of the position. + * <p><strong>API Note</strong>:<br> + * In nested scroll scenarios, calling scrollBy does not trigger nested scrolling in the parent component. + * </p> + * + * @param { number } deltaX - the delta x of the position.Unit: vp. + * @param { number } deltaY - the delta y of the position.Unit: vp. * @param { number } duration - the scroll animation duration. Unit: millisecond. + * If the value is not passed, or is negative or 0, there is no animation. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 17100001 - Init error. @@ -5218,7 +5393,7 @@ declare namespace webview { * @since 10 */ /** - * Set audio muted. + * Set webpage mute. * @param { boolean } mute - Set the audio muted or not. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. @@ -5236,7 +5411,8 @@ declare namespace webview { * @param { Array<WebHeader> } [additionalHeaders] - Additional HTTP request header of the URL. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @syscap SystemCapability.Web.Webview.Core * @since 10 */ @@ -5246,7 +5422,8 @@ declare namespace webview { * @param { Array<WebHeader> } [additionalHeaders] - Additional HTTP request header of the URL. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -5258,8 +5435,9 @@ declare namespace webview { * @param { string } url - Which url to preresolve/preconnect. * @param { boolean } preconnectable - Indicates whether to preconnect. * @param { number } numSockets - If preconnectable is true, this parameter indicates the number of sockets to be preconnected. - * @throws { BusinessError } 17100002 - Invalid url. - * @throws { BusinessError } 171000013 - The number of preconnect sockets is invalid. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. + * @throws { BusinessError } 17100013 - The number of preconnect sockets is invalid. * @syscap SystemCapability.Web.Webview.Core * @since 10 */ @@ -5268,8 +5446,9 @@ declare namespace webview { * @param { string } url - Which url to preresolve/preconnect. * @param { boolean } preconnectable - Indicates whether to preconnect. * @param { number } numSockets - If preconnectable is true, this parameter indicates the number of sockets to be preconnected. - * @throws { BusinessError } 17100002 - Invalid url. - * @throws { BusinessError } 171000013 - The number of preconnect sockets is invalid. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. + * @throws { BusinessError } 17100013 - The number of preconnect sockets is invalid. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -5358,7 +5537,8 @@ declare namespace webview { * @param { string } url - The download url. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -5368,7 +5548,8 @@ declare namespace webview { * @param { string } url - The download url. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -5385,7 +5566,8 @@ declare namespace webview { * <br>2. Incorrect parameter types. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 11 @@ -5399,7 +5581,8 @@ declare namespace webview { * <br>2. Incorrect parameter types. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @syscap SystemCapability.Web.Webview.Core * @crossplatform * @atomicservice @@ -5408,9 +5591,9 @@ declare namespace webview { postUrl(url: string, postData: ArrayBuffer): void; /** - * Create the Web Print Document Adapter. - * @param { string } jobName - The name of the currently printed document. - * @returns { print.PrintDocumentAdapter } Return the Print Document Adapter. + * Creates a PrintDocumentAdapter instance to provide content for printing. + * @param { string } jobName - Name of the file to print. + * @returns { print.PrintDocumentAdapter } Return PrintDocumentAdapter instance created. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 17100001 - Init error. @@ -5448,7 +5631,13 @@ declare namespace webview { * Set whether scroll is allowed * * @param { boolean } enable - Set whether scrolling is allowed + * {@code true} means scrolling is allowed. + * {@code false} means scrolling is disabled. * @param { ScrollType } type - Enable scrolling type + * When the input parameter enable is false, it indicates that scrolling of the ScrollType type is prohibited.When ScrollType + * is not specified,it indicates that all types of webpage scrolling are prohibited. + * When the input parameter enable is true, regardless of whether ScrollType is specified, it indicates that all types + * of webpage scrolling are allowed. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3.Parameter verification failed. * @throws { BusinessError } 17100001 - Init error. @@ -5542,7 +5731,7 @@ declare namespace webview { closeCamera(): void; /** - * Pauses all layout, parsing, and JavaScript timers for all WebViews. + * Pause all WebView timers. * * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -5553,7 +5742,7 @@ declare namespace webview { static pauseAllTimers(): void; /** - * Resumes all layout, parsing, and JavaScript timers for all WebViews. + * Resume all timers suspended from the pauseAllTimers() interface. * * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -5575,7 +5764,7 @@ declare namespace webview { stopAllMedia(): void; /** - * Restart playback of all audio and video on the web page. + * Resumes the playback of the audio and video that are paused by the pauseAllMedia interface. * * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -5597,7 +5786,7 @@ declare namespace webview { pauseAllMedia(): void; /** - * Close fullscreen video. + * Closes all full-screen videos on a web page. * * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. @@ -5674,6 +5863,19 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * Enable the ability to use Intelligent Tracking Prevention; default is disabled. + * + * @param { boolean } enable {@code true} enable Intelligent Tracking Prevention; {@code false} otherwise. + * @throws { BusinessError } 17100001 - Init error. + * The WebviewController must be associated with a Web component. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ enableIntelligentTrackingPrevention(enable: boolean): void; /** @@ -5686,6 +5888,17 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * Get whether Intelligent Tracking Prevention is enabled. + * + * @returns { boolean } True if enable the Intelligent Tracking Prevention; else false. + * @throws { BusinessError } 17100001 - Init error. + * The WebviewController must be associated with a Web component. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ isIntelligentTrackingPreventionEnabled(): boolean; /** @@ -5698,6 +5911,17 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * Add bypassing hosts for Intelligent Tracking Prevention. + * + * @param { Array<string> } hostList - Hosts that bypass the Intelligent Tracking Prevention. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ static addIntelligentTrackingPreventionBypassingList(hostList: Array<string>): void; /** @@ -5710,6 +5934,17 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * Remove bypassing hosts for Intelligent Tracking Prevention. + * + * @param { Array<string> } hostList - Hosts needs to remove from bypass list. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ static removeIntelligentTrackingPreventionBypassingList(hostList: Array<string>): void; /** @@ -5719,6 +5954,14 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * Clear bypassing hosts for Intelligent Tracking Prevention. + * + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ static clearIntelligentTrackingPreventionBypassingList(): void; /** @@ -5741,7 +5984,8 @@ declare namespace webview { onCreateNativeMediaPlayer(callback: CreateNativeMediaPlayerCallback): void; /** - * Set enable overall web caching + * Enables the full drawing capability for the web page. + * This API works only during Web component initialization. * * @syscap SystemCapability.Web.Webview.Core * @atomicservice @@ -5761,11 +6005,14 @@ declare namespace webview { webPageSnapshot(info: SnapshotInfo, callback: AsyncCallback<SnapshotResult>): void; /** - * Prefetch the resources request and save it to the memory cache. Only support post request and its Content-Type - * is application/x-www-form-urlencoded now. - * You can prefetch no more than 6 resources. If you want to prefetch the seventh resource, you can clear one of - * the prefetched resources that you won't use any more. Otherwise the oldest resource you prefetched will be - * cleared. + * Prefetches resource requests based on specified request information and additional HTTP request headers, + * saves the requests to the memory cache, and specifies the cache key and validity period to accelerate loading. + * Currently, only POST requests whose Content-Type is application/x-www-form-urlencoded are supported. + * A maximum of six POST requests can be pre-obtained. To prefetch the seventh post request, + * call API{@link clearPrefetchedResource} to clear the cache of unnecessary post requests. + * Otherwise, the cache of the earliest prefetched POST request will be automatically cleared. + * To use the prefetched resource cache, you need to add the key value ArkWebPostCacheKey to the header of the POST request. + * The content of the key value is the cacheKey of the corresponding cache. * @param { RequestInfo } request - The information of the request. * @param { Array<WebHeader> } [additionalHeaders] - Additional HTTP request header of the request. * @param { string } [cacheKey] - The key for memory cache. Default value is the url of the request. @@ -5775,7 +6022,8 @@ declare namespace webview { * The value of cacheValidTime must between 1 and 2147483647. * @throws { BusinessError } 401 - Invalid input parameter.Possible causes: 1. Mandatory parameters are left unspecified. * 2. Incorrect parameter types. 3. Parameter verification failed. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 @@ -5784,7 +6032,8 @@ declare namespace webview { cacheValidTime?: number): void; /** - * Clear the resource that you prefetch to the memory cache using API{@link prefetchResource}. + * Clears the cache of prefetched resources based on the specified cache key list. + * The cache key in the input parameter must be the prefetched resource cache key specified by API{@link prefetchResource}. * @param { Array<string> } cacheKeyList - The keys for memory cache. * The key in cacheKeyList only support number and letters. * @syscap SystemCapability.Web.Webview.Core @@ -5797,6 +6046,11 @@ declare namespace webview { * Set render process mode of the ArkWeb. * * @param { RenderProcessMode } mode - The render process mode for the ArkWeb. + * Call {@link getRenderProcessMode} to get the ArkWeb rendering subprocess mode of the current device. + * The enumerated value **0** indicates the single render subprocess mode, + * and **1** indicates the multi-render subprocess mode. + * If an invalid number other than the enumerated value of **RenderProcessMode** is passed, + * the multi-render subprocess mode is used by default. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. * @syscap SystemCapability.Web.Webview.Core @@ -5809,6 +6063,10 @@ declare namespace webview { * Get render process mode of the ArkWeb. * * @returns { RenderProcessMode } mode - The render process mode of the ArkWeb. + * Call {@link getRenderProcessMode} to get the ArkWeb rendering subprocess mode of the current device, + * with an enumeration value of 0 as a single subprocess mode and an enumeration value of 1 as a multi-subprocess mode. + * If the obtained value is not within the range of the RenderProcessMode enumeration value, + * it defaults to the multi-rendering subprocess mode. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 @@ -5816,7 +6074,11 @@ declare namespace webview { static getRenderProcessMode(): RenderProcessMode; /** - * Terminate render process associated with this controller of the ArkWeb. + * Destroy the rendering process. + * Calling this interface will actively destroy the associated rendering process. + * If the rendering process has not been started or destroyed, it has no effect. + * In addition, destroying the rendering process will also affect all other instances associated with + * the rendering process. * * @returns { boolean } true if it was possible to terminate the render process, otherwise false. * Calling this on a not yet started, or an already terminated render will have no effect. @@ -5873,7 +6135,8 @@ declare namespace webview { /** * Warmup the registered service worker associated the url. * @param { string } url - The url. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 @@ -5890,7 +6153,8 @@ declare namespace webview { * 2. Incorrect parameter types. 3. Parameter verification failed. * @throws { BusinessError } 17100001 - Init error. * The WebviewController must be associated with a Web component. - * @throws { BusinessError } 17100002 - Invalid url. + * @throws { BusinessError } 17100002 - URL error. The webpage corresponding to the URL is invalid, or the URL + * length exceeds 2048. * @syscap SystemCapability.Web.Webview.Core * @since 12 */ @@ -5908,6 +6172,19 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * Enable the ability to block Ads, disabled by default. + * + * @param { boolean } enable {@code true} Enable Ads block; {@code false} otherwise. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Parameter string is too long. 3.Parameter verification failed. + * @throws { BusinessError } 17100001 - Init error. + * The WebviewController must be associated with a Web component. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ enableAdsBlock(enable: boolean): void; /** @@ -5918,6 +6195,15 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * Get whether Ads block is enabled. + * + * @returns { boolean } True if the ability of AdsBlock is enabled; else false. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ isAdsBlockEnabled(): boolean; /** @@ -5928,6 +6214,15 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * Get whether Ads block is enabled for current Webpage. + * + * @returns { boolean } True if the ability of AdsBlock is enabled for current Webpage; else false. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ isAdsBlockEnabledForCurPage(): boolean; /** @@ -5957,16 +6252,23 @@ declare namespace webview { setUrlTrustList(urlTrustList: string): void; /** - * Set a path list, allowing cross-origin request access any origin when the file scheme URLs access resources in this - * path list. Also, When the path list is set, the file scheme URLs only allow access to resources within the path list. - * Path in the path list must meet one of the following path formats(sub path and module name must be provided): + * Sets a path list. When a file protocol accesses resources in the path list, it can access the local files across + * domains. In addition, when a path list is set, the file protocol can access only the resources in the path list. + * The behavior of {@link fileAccess} will be overwritten by that of this API. + * + * The paths in the list must be any of the following(sub path and module name must be provided): * - * 1. App bundle resource directory, like "/data/storage/el1/bundle/entry/resource/resfile". - * You can get resource directory using Context.resourceDir in AbilityKit. - * 2. A sub path of app files directory, like "/data/storage/el2/base/files/example/" + * 1. The path of subdirectory of the application file directory, like "/data/storage/el2/base/files/example" * or "/data/storage/el2/base/haps/entry/files/example". - * You can get app files directory using Context.filesDir in AbilityKit. - * + * The application file directory is obtained using Context.filesDir in the Ability Kit. + * 2. The path of application resource directory or its subdirectory, like "/data/storage/el1/bundle/entry/resource/resfile" + * or "/data/storage/el1/bundle/entry/resource/resfile/example". + * The application resource directory is obtained from Context.resourceDir in the Ability Kit. + * + * If a path in the list is not of the preceding paths, error code 401 is reported and the path list fails + * to be set. When the path list is set to empty, the accessible files for the file protocol are subject to + * the behavior of the {@link fileAccess}. + * * @param { Array<string> } pathList - The path list allow universal access. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Parameter string is too long. 3.Parameter verification failed. @@ -6011,7 +6313,7 @@ declare namespace webview { setBackForwardCacheOptions(options: BackForwardCacheOptions): void; /** - * Get the scroll offset of the webpage in view port, the coordinates of the top left corner of the view port are X: 0, Y: 0. + * Get the scroll offset of the webpage in view port, the coordinates of the top left corner of the view port are X: 0, Y: 0. * And the unit is virtual pixel. * * @returns { ScrollOffset } scroll offset @@ -6045,6 +6347,121 @@ declare namespace webview { * @since 18 */ getLastHitTest(): HitTestValue; + + /** + * Get the page offset of the webpage in view port, the coordinates of the top left corner of the view port are X: 0, Y: 0. + * And the unit is virtual pixel. + * + * @returns { ScrollOffset } page offset + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + getPageOffset(): ScrollOffset; + + /** + * Set the default User-Agent for the application. + * + * <p><strong>API Note</strong>:<br> + * Unlike setCustomUserAgent, which only takes effect in the current web context, the + * priority for pages loaded in the web is as follows: + * 1. The User-Agent set by setCustomUserAgent is used first. + * 2. If not set, it will check whether a specific User-Agent has been + * assigned to the current page via setUserAgentForHosts. + * 3. If no specific User-Agent is assigned, the application will fall back + * to using the User-Agent set by setAppCustomUserAgent. + * 4. If the app's default User-Agent is also not specified, the web's default + * User-Agent will be used as the final fallback. + * </p> + * + * @param { string } userAgent - The User-Agent string. + * @static + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + static setAppCustomUserAgent(userAgent: string) : void; + + /** + * Set the User-Agent to be used for specified hosts, with a maximum of 20,000 hosts. + * <p><strong>API Note</strong>:<br> + * Setting the same host list multiple times for the same User-Agent will override + * the previous settings. That is, if you want to cancel certain hosts from using + * the specified User-Agent, you need to reset the host list for that User-Agent. + * </p> + * + * @param { string } userAgent - The User-Agent string. + * @param { Array<string> } hosts - The hosts to which the User-Agent apply. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. 3. Parameter verification failed. + * @static + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + static setUserAgentForHosts(userAgent: string, hosts : Array<string>) : void; + + /** + * Get whether webviewController is attached to a web component. + * @returns { ControllerAttachState } the attach state of controller + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + getAttachState(): ControllerAttachState; + + /** + * Register the callback for controller attach state change. + * + * @param { 'controllerAttachStateChange' } type the event of controller attach state change. + * @param { Callback<ControllerAttachState> } callback Callback used to return the controller attach state. + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + on(type: 'controllerAttachStateChange', callback: Callback<ControllerAttachState>): void; + + /** + * Unregister the callback for controller attach state change. + * + * @param { 'controllerAttachStateChange' } type the event of controller attach state change. + * @param { Callback<ControllerAttachState> } callback Callback used to return the controller attach state. + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + off(type: 'controllerAttachStateChange', callback?: Callback<ControllerAttachState>): void; + + + /** + * Wait for the controller to attach a web component until timeout. + * + * @param { number } timeout - the wait timeout, if timeout reach, promise will return, the unit is millisecond. + * @returns { Promise<ControllerAttachState> } Promise used to return the state of attach. + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + waitForAttached(timeout: number): Promise<ControllerAttachState>; + + /** + * Enables debugging of web contents. + * <p><strong>API Note</strong>:<br> + * The port numbers from 0 to 1024 are prohibited. Ports less than 0 or greater than 65535 are considered invalid. + * If an attempt is made to set these disabled or invalid ports, an exception will be thrown. + * </p> + * + * @param { boolean } webDebuggingAccess {@code true} enables debugging of web contents; {@code false} otherwise. + * @param { number } port Indicates the port of the devtools server. After the port is specified, a tcp server + * socket is created instead of a unix domain socket. + * @throws { BusinessError } 17100023 - The port number is not within the allowed range. + * @static + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + static setWebDebuggingAccess(webDebuggingAccess: boolean, port: number): void; + + /** + * Gets the loading progress for the current page. + * + * @returns { number } The loading progress for the current page. + * @syscap SystemCapability.Web.Webview.Core + * @since 20 + */ + getProgress() : number; } /** @@ -7942,14 +8359,14 @@ declare namespace webview { */ enum SourceType { /** - * Source type is URL. + * The type of media source is URL. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 */ URL = 0, /** - * Source type is blob. + * The type of media source is blob. * @syscap SystemCapability.Web.Webview.Core * @atomicservice * @since 12 @@ -8219,6 +8636,17 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * set Ads Block ruleset file, containing easylist rules. + * @param {string} rulesFile - absolute file path contains app customized ads block rules. + * @param {boolean} replace - (@code true)replace internal rules;(@code false) add to internal rules. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ static setAdsBlockRules(rulesFile: string, replace: boolean): void; /** @@ -8231,12 +8659,23 @@ declare namespace webview { * @atomicservice * @since 12 */ - static addAdsBlockDisallowedList(domainSuffixes: Array<string>): void; - /** - * Add items to Ads Block Allow list. - * By default, ads block is allowed for all pages unless they are added to the - * disallow list. The priority of allowlist is higher than the disallowlist. It is + * Add items to Ads Block Disallow list. + * @param { Array<string> } domainSuffixes - list of domain suffix, if web page url matches someone in the list, + * Ads Block will be disallowed for the web page. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ + static addAdsBlockDisallowedList(domainSuffixes: Array<string>): void; + + /** + * Add items to Ads Block Allow list. + * By default, ads block is allowed for all pages unless they are added to the + * disallow list. The priority of allowlist is higher than the disallowlist. It is * used to re-enable ads block on the page that matches disallow list. * @param { Array<string> } domainSuffixes - list of domain suffix, if web page url matches someone in the list, * Ads Block will be allowed for the web page. @@ -8246,6 +8685,20 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * Add items to Ads Block Allow list. + * By default, ads block is allowed for all pages unless they are added to the + * disallow list. The priority of allowlist is higher than the disallowlist. It is + * used to re-enable ads block on the page that matches disallow list. + * @param { Array<string> } domainSuffixes - list of domain suffix, if web page url matches someone in the list, + * Ads Block will be allowed for the web page. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ static addAdsBlockAllowedList(domainSuffixes: Array<string>): void; /** @@ -8257,6 +8710,16 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * remove items from Ads Block Disallowed list. + * @param { Array<string> } domainSuffixes - list of domain suffix needed be removed from disallow list + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ static removeAdsBlockDisallowedList(domainSuffixes: Array<string>): void; /** @@ -8268,6 +8731,16 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * remove items from Ads Block Allowed list. + * @param { Array<string> } domainSuffixes - list of domain suffix needed be removed from allow list + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ static removeAdsBlockAllowedList(domainSuffixes: Array<string>): void; /** @@ -8276,6 +8749,13 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * clear Ads Block Disallowed list. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ static clearAdsBlockDisallowedList(): void; /** @@ -8284,12 +8764,19 @@ declare namespace webview { * @atomicservice * @since 12 */ + /** + * clear Ads Block Allowed list. + * @throws { BusinessError } 801 - Capability not supported. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 18 + */ static clearAdsBlockAllowedList(): void; } /** * This class is used to enable back forward cache supported features. - * + * * @syscap SystemCapability.Web.Webview.Core * @since 12 */ @@ -8323,7 +8810,7 @@ declare namespace webview { /** * This class is used to set back forward cache options. - * + * * @syscap SystemCapability.Web.Webview.Core * @since 12 */ @@ -8361,182 +8848,362 @@ declare namespace webview { * @syscap SystemCapability.Web.Webview.Core * @since 15 */ + /** + * Enum type supplied to {@link insertProxyRule} for indicating the scheme filter for proxy. + * @enum { number } + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ enum ProxySchemeFilter { - /** - * This indicates all the schemes will use the proxy. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - MATCH_ALL_SCHEMES = 0, - /** - * This indicates only the HTTP requests will use the proxy. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - MATCH_HTTP = 1, - /** - * This indicates only the HTTPS requests will use the proxy. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - MATCH_HTTPS = 2, + /** + * This indicates all the schemes will use the proxy. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * This indicates all the schemes will use the proxy. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + MATCH_ALL_SCHEMES = 0, + /** + * This indicates only the HTTP requests will use the proxy. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * This indicates only the HTTP requests will use the proxy. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + MATCH_HTTP = 1, + /** + * This indicates only the HTTPS requests will use the proxy. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * This indicates only the HTTPS requests will use the proxy. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + MATCH_HTTPS = 2, } + /** * The ProxyConfig used by applyProxyOverride. - * + * * @syscap SystemCapability.Web.Webview.Core * @since 15 */ + /** + * The ProxyConfig used by applyProxyOverride. + * + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ class ProxyConfig { - /** - * Insert a bypass rule that indicates URLs that should skip the override proxy and connect the server directly instead. - * These maybe URLs or IP addresses and wildcards are supported. e.g. "*.example.com" means that requests to - * "https://www.example.com" and "http://test.example.com" will connect the server directly. - * - * @param { string } bypassRule - The bypass rule. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - insertBypassRule(bypassRule: string): void; - /** - * Insert a proxy rule that indicates URLs that match the schemeFilter will connect the server directly. - * - * @param { ProxySchemeFilter } schemeFilter - The scheme filter for this rule. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - insertDirectRule(schemeFilter?: ProxySchemeFilter): void; - /** - * Insert a proxy rule which indicates that requests matching the schemeFilter should use an override proxy, all requests will - * use the proxy rule if schemeFilter is null. - * - * The format for proxy is [scheme://]host[:port]. Scheme is optional and must be HTTP, HTTPS, or SOCKS if present. Scheme defaults to HTTP. - * Host is an IPv6 literal with brackets, an IPv4 literal or one or more labels seperated by a period. Port number is optional and defaults - * to 80 for HTTP, 443 for HTTPS and 1080 for SOCKS. - * - * e.g. example.com host: example.com - * https://example.com scheme: https host: example.com - * example.com:8888 host: example.com port: 8888 - * https://example.com:8888 scheme:https host: example.com port:8888 - * 192.168.1.1 host: 192.168.1.1 - * 192.168.1.1:8888 host:192.168.1.1 port: 8888 - * [10:20:30:40:50:60:70:80] - * - * @param { string } proxyRule - The proxy rule. - * @param { ProxySchemeFilter } schemeFilter - The scheme filter for this rule. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - insertProxyRule(proxyRule: string, schemeFilter?: ProxySchemeFilter): void; - /** - * Hostnames without a period in them (and that are not IP literals) will skip the proxy and connect the server directly. - * Examples: "abc", "local", "some-domain". - * - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - bypassHostnamesWithoutPeriod(): void; - /** - * By default, certain hostnames implicitly bypass the proxy if they are link-local IPs, or localhost addresses. For instance - * hostnames matching any of (non-exhaustive list): localhost *.localhost [::1] 127.0.0.1/8 169.254/16 [FE80::]/10 - * Call this function to override the default behavior and force localhost and link-local URLs to be sent through the proxy. - * - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - clearImplicitRules(): void; - /** - * Reverse the bypass rules. - * - * If false all URLs will use proxy settings except URLs match the bypass rules. - * If true only URLs in the bypass list will use proxy, and all other URLs will be connected to directly. - * - * @param { boolean } reverse - If reverse the bypass rule. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. - * <br>2. Incorrect parameter types. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - enableReverseBypass(reverse: boolean): void; - /** - * Returns the bypass rules. - * - * @returns { Array<string> } The bypass rules. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - getBypassRules(): Array<string>; - /** - * Returns the proxy rules. - * - * @returns { Array<ProxyRule> } The proxy rules. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - getProxyRules(): Array<ProxyRule>; - /** - * Returns if reverse bypass rules. - * - * @returns { boolean } If reverse bypass enabled. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - isReverseBypassEnabled(): boolean; + /** + * Insert a bypass rule that indicates URLs that should skip the override proxy and connect the server directly instead. + * These maybe URLs or IP addresses and wildcards are supported. e.g. "*.example.com" means that requests to + * "https://www.example.com" and "http://test.example.com" will connect the server directly. + * + * @param { string } bypassRule - The bypass rule. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * Insert a bypass rule that indicates URLs that should skip the override proxy and connect the server directly instead. + * These maybe URLs or IP addresses and wildcards are supported. e.g. "*.example.com" means that requests to + * "https://www.example.com" and "http://test.example.com" will connect the server directly. + * + * @param { string } bypassRule - The bypass rule. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + insertBypassRule(bypassRule: string): void; + + /** + * Insert a proxy rule that indicates URLs that match the schemeFilter will connect the server directly. + * + * @param { ProxySchemeFilter } schemeFilter - The scheme filter for this rule. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * Insert a proxy rule that indicates URLs that match the schemeFilter will connect the server directly. + * + * @param { ProxySchemeFilter } schemeFilter - The scheme filter for this rule. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + insertDirectRule(schemeFilter?: ProxySchemeFilter): void; + + /** + * Insert a proxy rule which indicates that requests matching the schemeFilter should use an override proxy, all requests will + * use the proxy rule if schemeFilter is null. + * + * The format for proxy is [scheme://]host[:port]. Scheme is optional and must be HTTP, HTTPS, or SOCKS if present. Scheme defaults to HTTP. + * Host is an IPv6 literal with brackets, an IPv4 literal or one or more labels seperated by a period. Port number is optional and defaults + * to 80 for HTTP, 443 for HTTPS and 1080 for SOCKS. + * + * e.g. example.com host: example.com + * https://example.com scheme: https host: example.com + * example.com:8888 host: example.com port: 8888 + * https://example.com:8888 scheme:https host: example.com port:8888 + * 192.168.1.1 host: 192.168.1.1 + * 192.168.1.1:8888 host:192.168.1.1 port: 8888 + * [10:20:30:40:50:60:70:80] + * + * @param { string } proxyRule - The proxy rule. + * @param { ProxySchemeFilter } schemeFilter - The scheme filter for this rule. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * Insert a proxy rule which indicates that requests matching the schemeFilter should use an override proxy, all requests will + * use the proxy rule if schemeFilter is null. + * + * The format for proxy is [scheme://]host[:port]. Scheme is optional and must be HTTP, HTTPS, or SOCKS if present. Scheme defaults to HTTP. + * Host is an IPv6 literal with brackets, an IPv4 literal or one or more labels seperated by a period. Port number is optional and defaults + * to 80 for HTTP, 443 for HTTPS and 1080 for SOCKS. + * + * e.g. example.com host: example.com + * https://example.com scheme: https host: example.com + * example.com:8888 host: example.com port: 8888 + * https://example.com:8888 scheme:https host: example.com port:8888 + * 192.168.1.1 host: 192.168.1.1 + * 192.168.1.1:8888 host:192.168.1.1 port: 8888 + * [10:20:30:40:50:60:70:80] + * + * @param { string } proxyRule - The proxy rule. + * @param { ProxySchemeFilter } schemeFilter - The scheme filter for this rule. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + insertProxyRule(proxyRule: string, schemeFilter?: ProxySchemeFilter): void; + + /** + * Hostnames without a period in them (and that are not IP literals) will skip the proxy and connect the server directly. + * Examples: "abc", "local", "some-domain". + * + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * Hostnames without a period in them (and that are not IP literals) will skip the proxy and connect the server directly. + * Examples: "abc", "local", "some-domain". + * + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + bypassHostnamesWithoutPeriod(): void; + + /** + * By default, certain hostnames implicitly bypass the proxy if they are link-local IPs, or localhost addresses. For instance + * hostnames matching any of (non-exhaustive list): localhost *.localhost [::1] 127.0.0.1/8 169.254/16 [FE80::]/10 + * Call this function to override the default behavior and force localhost and link-local URLs to be sent through the proxy. + * + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * By default, certain hostnames implicitly bypass the proxy if they are link-local IPs, or localhost addresses. For instance + * hostnames matching any of (non-exhaustive list): localhost *.localhost [::1] 127.0.0.1/8 169.254/16 [FE80::]/10 + * Call this function to override the default behavior and force localhost and link-local URLs to be sent through the proxy. + * + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + clearImplicitRules(): void; + + /** + * Reverse the bypass rules. + * + * If false all URLs will use proxy settings except URLs match the bypass rules. + * If true only URLs in the bypass list will use proxy, and all other URLs will be connected to directly. + * + * @param { boolean } reverse - If reverse the bypass rule. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * Reverse the bypass rules. + * + * If false all URLs will use proxy settings except URLs match the bypass rules. + * If true only URLs in the bypass list will use proxy, and all other URLs will be connected to directly. + * + * @param { boolean } reverse - If reverse the bypass rule. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + enableReverseBypass(reverse: boolean): void; + + /** + * Returns the bypass rules. + * + * @returns { Array<string> } The bypass rules. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * Returns the bypass rules. + * + * @returns { Array<string> } The bypass rules. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + getBypassRules(): Array<string>; + + /** + * Returns the proxy rules. + * + * @returns { Array<ProxyRule> } The proxy rules. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * Returns the proxy rules. + * + * @returns { Array<ProxyRule> } The proxy rules. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + getProxyRules(): Array<ProxyRule>; + + /** + * Returns if reverse bypass rules. + * + * @returns { boolean } If reverse bypass enabled. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * Returns if reverse bypass rules. + * + * @returns { boolean } If reverse bypass enabled. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + isReverseBypassEnabled(): boolean; } /** * The ProxyRule used by insertProxyRule. - * + * * @syscap SystemCapability.Web.Webview.Core * @since 15 */ + /** + * The ProxyRule used by insertProxyRule. + * + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ class ProxyRule { - /** - * Returns the scheme filter used for this rule. - * - * @returns { ProxySchemeFilter } The scheme filter used for this rule. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - getSchemeFilter(): ProxySchemeFilter; - /** - * Returns the proxy URL. - * - * @returns { string } The proxy URL. - * @syscap SystemCapability.Web.Webview.Core - * @since 15 - */ - getUrl(): string; + /** + * Returns the scheme filter used for this rule. + * + * @returns { ProxySchemeFilter } The scheme filter used for this rule. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * Returns the scheme filter used for this rule. + * + * @returns { ProxySchemeFilter } The scheme filter used for this rule. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + getSchemeFilter(): ProxySchemeFilter; + + /** + * Returns the proxy URL. + * + * @returns { string } The proxy URL. + * @syscap SystemCapability.Web.Webview.Core + * @since 15 + */ + /** + * Returns the proxy URL. + * + * @returns { string } The proxy URL. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ + getUrl(): string; } /** * The callback for proxy changed. - * + * * @typedef { function } * @syscap SystemCapability.Web.Webview.Core * @since 15 */ + /** + * The callback for proxy changed. + * + * @typedef { function } + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ type OnProxyConfigChangeCallback = () => void; /** * This class is used for set proxy for ArkWeb. - * + * * @syscap SystemCapability.Web.Webview.Core * @since 15 */ + /** + * This class is used for set proxy for ArkWeb. + * + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ class ProxyController { /** * Sets ProxyConfig which will be used by all Webs in the app. URLs that match patterns in the bypass list will connect the server directly. * Instead, the request will use the proxy specified by the config. Requests are not guaranteed to use the new proxy immediately; wait for * the listener before loading a page. This listener will be called on the UI thread. * Note: calling applyProxyOverride will cause any existing system wide setting to be ignored. - * + * * @param { ProxyConfig } proxyConfig - The proxy config. * @param { OnProxyConfigChangeCallback } callback - Called when the proxy has been changed. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. @@ -8544,19 +9211,46 @@ declare namespace webview { * @syscap SystemCapability.Web.Webview.Core * @since 15 */ + /** + * Sets ProxyConfig which will be used by all Webs in the app. URLs that match patterns in the bypass list will connect the server directly. + * Instead, the request will use the proxy specified by the config. Requests are not guaranteed to use the new proxy immediately; wait for + * the listener before loading a page. This listener will be called on the UI thread. + * Note: calling applyProxyOverride will cause any existing system wide setting to be ignored. + * + * @param { ProxyConfig } proxyConfig - The proxy config. + * @param { OnProxyConfigChangeCallback } callback - Called when the proxy has been changed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ static applyProxyOverride(proxyConfig: ProxyConfig, callback: OnProxyConfigChangeCallback): void; + /** * Remove the proxy config. Requests are not guaranteed to not use the proxy; Wait for the listener before loading a page. This listener * will be called on the UI thread. - * + * * @param { OnProxyConfigChangeCallback } callback - Called when the proxy has been changed. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. * @syscap SystemCapability.Web.Webview.Core * @since 15 */ + /** + * Remove the proxy config. Requests are not guaranteed to not use the proxy; Wait for the listener before loading a page. This listener + * will be called on the UI thread. + * + * @param { OnProxyConfigChangeCallback } callback - Called when the proxy has been changed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. + * <br>2. Incorrect parameter types. + * @syscap SystemCapability.Web.Webview.Core + * @atomicservice + * @since 19 + */ static removeProxyOverride(callback: OnProxyConfigChangeCallback): void; -} + } + } export default webview; diff --git a/api/@ohos.wifiManager.d.ts b/api/@ohos.wifiManager.d.ts index 2ad2ab1b8ea29030df9313e49ba0eee1b43b2b05..f8b3982d9791da6863cf3d1994381b0f8a5de887 100644 --- a/api/@ohos.wifiManager.d.ts +++ b/api/@ohos.wifiManager.d.ts @@ -37,7 +37,8 @@ import { AsyncCallback, Callback } from './@ohos.base'; * @syscap SystemCapability.Communication.WiFi.STA * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace wifiManager { /** @@ -55,15 +56,13 @@ declare namespace wifiManager { /** * Disable Wi-Fi. - * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION + * @permission ohos.permission.SET_WIFI_INFO and (ohos.permission.MANAGE_WIFI_CONNECTION or ohos.permission.MANAGE_ENTERPRISE_WIFI_CONNECTION) * @throws {BusinessError} 201 - Permission denied. - * @throws {BusinessError} 202 - System API is not allowed called by Non-system application. * @throws {BusinessError} 801 - Capability not supported. * @throws {BusinessError} 2501000 - Operation failed. * @throws {BusinessError} 2501004 - Operation failed because the service is being opened. * @syscap SystemCapability.Communication.WiFi.STA - * @systemapi Hide this for inner system use. - * @since 9 + * @since 16 */ function disableWifi(): void; @@ -122,12 +121,13 @@ declare namespace wifiManager { * @syscap SystemCapability.Communication.WiFi.STA * @crossplatform * @atomicservice - * @since 13 + * @since arkts {'1.1':'13', '1.2':'20'} + * @arkts 1.1&1.2 */ function isWifiActive(): boolean; /** - * Scan Wi-Fi hotspot, This API works in asynchronous mode. + * Scan Wi-Fi hotspot. * @permission ohos.permission.SET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION * @throws {BusinessError} 201 - Permission denied. * @throws {BusinessError} 801 - Capability not supported. @@ -511,6 +511,28 @@ declare namespace wifiManager { */ function connectToCandidateConfig(networkId: number): void; + /** + * Connect to a specified candidate hotspot by networkId, and wait for user respond result. + * Only the configuration which is added by ourself is allowed to be connected. + * This method connect to a configuration at a time. + * The app must be in the foreground. + * @permission ohos.permission.SET_WIFI_INFO + * @param { number } networkId - Network ID which will be connected. The value of networkId cannot be less than 0. + * @returns { Promise<void> } - Returns the promise object that used to return the operation result. + * If the operation fails, an error message is returned. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 2501000 - Operation failed. + * @throws { BusinessError } 2501001 - Wi-Fi STA disabled. + * @throws { BusinessError } 2501005 - The user does not respond. + * @throws { BusinessError } 2501006 - The user refused the action. + * @throws { BusinessError } 2501007 - Parameter validation failed. + * @syscap SystemCapability.Communication.WiFi.STA + * @atomicservice + * @since 20 + */ + function connectToCandidateConfigWithUserAction(networkId: number): Promise<void>; + /** * Connect to Wi-Fi hotspot by networkId. * @permission ohos.permission.MANAGE_WIFI_CONNECTION or ohos.permission.MANAGE_ENTERPRISE_WIFI_CONNECTION @@ -645,7 +667,8 @@ declare namespace wifiManager { function getLinkedInfo(callback: AsyncCallback<WifiLinkedInfo>): void; /** - * Obtain connection information about the Wi-Fi connection. If does't have the permission of ohos.permission.GET_WIFI_PEERS_MAC, return random bssid. + * Obtain connection information about the Wi-Fi connection.this apireturns the result syncchronously. + * If does't have the permission of ohos.permission.GET_WIFI_PEERS_MAC, return random bssid. * @permission ohos.permission.GET_WIFI_INFO * @returns { WifiLinkedInfo } Returns Wi-Fi linked information. * @throws {BusinessError} 201 - Permission denied. @@ -728,7 +751,7 @@ declare namespace wifiManager { function getDeviceMacAddress(): string[]; /** - * Obtain the IP information of the Wi-Fi connection. + * Obtain the IPv4 information of the Wi-Fi connection. * The IP information includes the host IP address, gateway address, and DNS information. * @permission ohos.permission.GET_WIFI_INFO * @returns { IpInfo } Returns the IP information of the Wi-Fi connection. @@ -839,7 +862,7 @@ declare namespace wifiManager { * @throws {BusinessError} 2501001 - Wi-Fi STA disabled. * @syscap SystemCapability.Communication.WiFi.STA * @systemapi Hide this for inner system use. - * @since 18 + * @since 17 */ function allowAutoConnect(netId: number, isAllowed: boolean): void; @@ -995,7 +1018,7 @@ declare namespace wifiManager { /** * Enable Wi-Fi hotspot function. - * This method is asynchronous. After the Wi-Fi hotspot is enabled, Wi-Fi may be disabled. + * After the Wi-Fi hotspot is enabled, Wi-Fi may be disabled. * @permission ohos.permission.MANAGE_WIFI_HOTSPOT * @throws {BusinessError} 201 - Permission denied. * @throws {BusinessError} 202 - System API is not allowed called by Non-system application. @@ -1009,7 +1032,7 @@ declare namespace wifiManager { /** * Disable Wi-Fi hotspot function. - * This method is asynchronous. If Wi-Fi is enabled after the Wi-Fi hotspot is disabled, Wi-Fi may be re-enabled. + * If Wi-Fi is enabled after the Wi-Fi hotspot is disabled, Wi-Fi may be re-enabled. * @permission ohos.permission.MANAGE_WIFI_HOTSPOT * @throws {BusinessError} 201 - Permission denied. * @throws {BusinessError} 202 - System API is not allowed called by Non-system application. @@ -1540,6 +1563,7 @@ declare namespace wifiManager { /** * Subscribe Wi-Fi status change events. + * When the service exits, call off(type: 'wifiStateChange', callback?: Callback<number>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'wifiStateChange' } type - event name. * @param { Callback<number> } callback - the callback of on, 0: inactive, 1: active, 2: activating, 3: de-activating @@ -1554,6 +1578,7 @@ declare namespace wifiManager { /** * Subscribe Wi-Fi status change events. + * When the service exits, call off(type: 'wifiStateChange', callback?: Callback<number>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'wifiStateChange' } type - event name. * @param { Callback<number> } callback - the callback of on, 0: inactive, 1: active, 2: activating, 3: de-activating @@ -1606,6 +1631,7 @@ declare namespace wifiManager { /** * Subscribe Wi-Fi connection change events. + * When the service exits, call off(type: 'wifiConnectionChange', callback?: Callback<number>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'wifiConnectionChange' } type - event name. * @param { Callback<number> } callback - the callback of on, 0: disconnected, 1: connected @@ -1620,6 +1646,7 @@ declare namespace wifiManager { /** * Subscribe Wi-Fi connection change events. + * When the service exits, call off(type: 'wifiConnectionChange', callback?: Callback<number>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'wifiConnectionChange' } type - event name. * @param { Callback<number> } callback - the callback of on, 0: disconnected, 1: connected @@ -1670,6 +1697,7 @@ declare namespace wifiManager { /** * Subscribe Wi-Fi scan status change events. + * When the service exits, call off(type: 'wifiScanStateChange', callback?: Callback<number>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'wifiScanStateChange' } type - event name. * @param { Callback<number> } callback - the callback of on, 0: scan fail, 1: scan success @@ -1684,6 +1712,7 @@ declare namespace wifiManager { /** * Subscribe Wi-Fi scan status change events. + * When the service exits, call off(type: 'wifiScanStateChange', callback?: Callback<number>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'wifiScanStateChange' } type - event name. * @param { Callback<number> } callback - the callback of on, 0: scan fail, 1: scan success @@ -1732,6 +1761,7 @@ declare namespace wifiManager { /** * Subscribe Wi-Fi rssi change events. + * When the service exits, call off(type: 'wifiRssiChange', callback?: Callback<number>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'wifiRssiChange' } type - event name. * @param { Callback<number> } callback - the callback of on @@ -1832,6 +1862,7 @@ declare namespace wifiManager { /** * Subscribe Wi-Fi hotspot state change events. + * When the service exits, call off(type: 'hotspotStateChange', callback?: Callback<number>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'hotspotStateChange' } type - event name. * @param { Callback<number> } callback - the callback of on, 0: inactive, 1: active, 2: activating, 3: de-activating @@ -1935,6 +1966,7 @@ declare namespace wifiManager { /** * Subscribe P2P status change events. + * When the service exits, call off(type: 'p2pStateChange', callback?: Callback<number>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'p2pStateChange' } type - event name. * @param { Callback<number> } callback - the callback of on, 1: idle, 2: starting, 3:started, 4: closing, 5: closed @@ -1965,6 +1997,7 @@ declare namespace wifiManager { /** * Subscribe P2P connection change events. + * When the service exits, call off(type: 'p2pConnectionChange', callback?: Callback<WifiP2pLinkedInfo>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'p2pConnectionChange' } type - event name. * @param { Callback<WifiP2pLinkedInfo> } callback - the callback of on @@ -1995,6 +2028,7 @@ declare namespace wifiManager { /** * Subscribe P2P local device change events. + * When the service exits, call off(type: 'p2pDeviceChange', callback?: Callback<WifiP2pDevice>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION * @param { 'p2pDeviceChange' } type - event name. * @param { Callback<WifiP2pDevice> } callback - the callback of on @@ -2008,6 +2042,7 @@ declare namespace wifiManager { */ /** * Subscribe P2P local device change events. + * When the service exits, call off(type: 'p2pDeviceChange', callback?: Callback<WifiP2pDevice>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'p2pDeviceChange' } type - event name. * @param { Callback<WifiP2pDevice> } callback - the callback of on @@ -2050,6 +2085,7 @@ declare namespace wifiManager { /** * Subscribe P2P peer device change events. + * When the service exits, call off(type: 'p2pPeerDeviceChange', callback?: Callback<WifiP2pDevice[]>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO and ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION * @param { 'p2pPeerDeviceChange' } type - event name. * @param { Callback<WifiP2pDevice[]> } callback - the callback of on @@ -2063,6 +2099,7 @@ declare namespace wifiManager { */ /** * Subscribe P2P peer device change events. + * When the service exits, call off(type: 'p2pPeerDeviceChange', callback?: Callback<WifiP2pDevice[]>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'p2pPeerDeviceChange' } type - event name. * @param { Callback<WifiP2pDevice[]> } callback - the callback of on @@ -2105,6 +2142,7 @@ declare namespace wifiManager { /** * Subscribe P2P persistent group change events. + * When the service exits, call off(type: 'p2pPersistentGroupChange', callback?: Callback<void>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'p2pPersistentGroupChange' } type - event name. * @param { Callback<void> } callback - the callback of on @@ -2135,6 +2173,7 @@ declare namespace wifiManager { /** * Subscribe P2P discovery events. + * When the service exits, call off(type: 'p2pDiscoveryChange', callback?: Callback<number>) to unregister the callback registered. * @permission ohos.permission.GET_WIFI_INFO * @param { 'p2pDiscoveryChange' } type - event name. * @param { Callback<number> } callback - the callback of on @@ -2927,9 +2966,18 @@ declare namespace wifiManager { * @type { ?boolean } * @syscap SystemCapability.Communication.WiFi.STA * @systemapi Hide this for inner system use. - * @since 18 + * @since 17 */ isAutoConnectAllowed?: boolean; + + /** + * Secure wifi detect config: false - not, true - yes. + * @type { ?boolean } + * @syscap SystemCapability.Communication.WiFi.STA + * @systemapi Hide this for inner system use. + * @since 20 + */ + isSecureWifi?: boolean; } /** diff --git a/api/@ohos.window.d.ts b/api/@ohos.window.d.ts index cd8ffd4b78e66e52cd3a8eadd5b5edb9b9862289..b79a49c5269053873119a6ccf9667c0264760baa 100644 --- a/api/@ohos.window.d.ts +++ b/api/@ohos.window.d.ts @@ -23,11 +23,20 @@ import BaseContext from './application/BaseContext'; import image from './@ohos.multimedia.image'; import rpc from './@ohos.rpc'; import dialogRequest from './@ohos.app.ability.dialogRequest'; +/*** if arkts 1.1 */ import { UIContext } from './@ohos.arkui.UIContext'; +import { ColorMetrics } from './@ohos.arkui.node'; +/*** endif */ import ConfigurationConstant from './@ohos.app.ability.ConfigurationConstant'; import bundleManager from './@ohos.bundle.bundleManager'; -import { ColorMetrics } from './@ohos.arkui.node'; - +/*** if arkts 1.2 */ +import { LocalStorage } from '@ohos.arkui.stateManagement'; +import { UIContext } from '@ohos.arkui.UIContext'; +import { ColorMetrics } from '@ohos.arkui.node'; +import { Callback } from './@ohos.base'; +/*** endif */ + +/*** if arkts 1.1 */ /** * Defines the window callback. * @@ -48,6 +57,17 @@ declare interface Callback<T, V = void> { */ (data: T): V; } +/*** endif */ + +/** + * Defines the window animation curve param. + * + * @typedef { Array<number> } AnimationCurveParam + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ +declare type WindowAnimationCurveParam = Array<number>; /** * Window manager. @@ -70,7 +90,8 @@ declare interface Callback<T, V = void> { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace window { /** @@ -86,17 +107,19 @@ declare namespace window { * @enum { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum WindowType { + export enum WindowType { /** * App. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @FAModelOnly - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_APP, + TYPE_APP = 0, /** * System alert. * @@ -121,45 +144,50 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_STATUS_BAR, + TYPE_STATUS_BAR = 3, /** * Panel. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_PANEL, + TYPE_PANEL = 4, /** * Keyguard. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_KEYGUARD, + TYPE_KEYGUARD = 5, /** * Volume. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_VOLUME_OVERLAY, + TYPE_VOLUME_OVERLAY = 6, /** * Navigation bar. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_NAVIGATION_BAR, + TYPE_NAVIGATION_BAR = 7, /** * Float. * @@ -175,72 +203,80 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_FLOAT, + TYPE_FLOAT = 8, /** * Wallpaper. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_WALLPAPER, + TYPE_WALLPAPER = 9, /** * Desktop. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_DESKTOP, + TYPE_DESKTOP = 10, /** * Recent. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_LAUNCHER_RECENT, + TYPE_LAUNCHER_RECENT = 11, /** * Dock. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_LAUNCHER_DOCK, + TYPE_LAUNCHER_DOCK = 12, /** * Voice interaction. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_VOICE_INTERACTION, + TYPE_VOICE_INTERACTION = 13, /** * Pointer. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_POINTER, + TYPE_POINTER = 14, /** * Float camera. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_FLOAT_CAMERA, + TYPE_FLOAT_CAMERA = 15, /** * Dialog. * @@ -254,81 +290,115 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_DIALOG, + TYPE_DIALOG= 16, /** * Screenshot. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_SCREENSHOT, + TYPE_SCREENSHOT = 17, /** * System Toast. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_SYSTEM_TOAST, + TYPE_SYSTEM_TOAST = 18, /** * Divider. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_DIVIDER, + TYPE_DIVIDER= 19, /** * Global Search. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_GLOBAL_SEARCH, + TYPE_GLOBAL_SEARCH= 20, /** * Handwrite. * * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_HANDWRITE, + TYPE_HANDWRITE = 21, /** * TYPE_WALLET_SWIPE_CARD. * * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @stagemodelonly - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_WALLET_SWIPE_CARD, + TYPE_WALLET_SWIPE_CARD = 22, /** * Screen Control * * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @stagemodelonly - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_SCREEN_CONTROL, + TYPE_SCREEN_CONTROL = 23, /** * TYPE_FLOAT_NAVIGATION. * * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @stagemodelonly - * @since 16 + * @since arkts {'1.1':'17', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_FLOAT_NAVIGATION + TYPE_FLOAT_NAVIGATION = 24, + /** + * TYPE_DYNAMIC. + * + * @syscap SystemCapability.Window.SessionManager + * @systemapi Hide this for inner system use. + * @stagemodelonly + * @since 20 + */ + TYPE_DYNAMIC, + /** + * TYPE_MUTISCREEN_COLLABORATION. + * + * @syscap SystemCapability.Window.SessionManager + * @systemapi Hide this for inner system use. + * @stagemodelonly + * @since 20 + */ + TYPE_MUTISCREEN_COLLABORATION = 26, + /** + * Main. + * + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @since 18 + */ + TYPE_MAIN = 32 } /** @@ -353,9 +423,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum AvoidAreaType { + export enum AvoidAreaType { /** * Default area of the system * @@ -375,9 +446,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_SYSTEM, + TYPE_SYSTEM = 0, /** * Notch @@ -398,9 +470,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_CUTOUT, + TYPE_CUTOUT = 1, /** * Area for system gesture @@ -421,9 +494,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_SYSTEM_GESTURE, + TYPE_SYSTEM_GESTURE = 2, /** * Area for keyboard @@ -444,9 +518,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_KEYBOARD, + TYPE_KEYBOARD = 3, /** * Area for navigation indicator @@ -461,9 +536,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - TYPE_NAVIGATION_INDICATOR + TYPE_NAVIGATION_INDICATOR = 4 } /** * Describes the window mode of an application @@ -471,9 +547,10 @@ declare namespace window { * @enum { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum WindowMode { + export enum WindowMode { /** * Undefined mode of the window * @@ -511,9 +588,10 @@ declare namespace window { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ - FLOATING + FLOATING = 5 } /** @@ -524,7 +602,7 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 9 */ - enum WindowLayoutMode { + export enum WindowLayoutMode { /** * CASCADE * @@ -558,7 +636,17 @@ declare namespace window { * @atomicservice * @since 12 */ - enum WindowStatusType { + /** + * Describes the window status of an application + * + * @enum { number } + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export enum WindowStatusType { /** * Undefined status of the window * @@ -572,6 +660,15 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Undefined status of the window + * + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ UNDEFINED = 0, /** * Full screen status of the window @@ -586,7 +683,16 @@ declare namespace window { * @atomicservice * @since 12 */ - FULL_SCREEN, + /** + * Full screen status of the window + * + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + FULL_SCREEN = 1, /** * Maximize status of the window * @@ -598,9 +704,10 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - MAXIMIZE, + MAXIMIZE = 2, /** * Minimize status of the window * @@ -614,7 +721,16 @@ declare namespace window { * @atomicservice * @since 12 */ - MINIMIZE, + /** + * Minimize status of the window + * + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + MINIMIZE = 3, /** * Floating status of the window * @@ -628,7 +744,16 @@ declare namespace window { * @atomicservice * @since 12 */ - FLOATING, + /** + * Floating status of the window + * + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + FLOATING = 4, /** * Split screen status of the window * @@ -642,7 +767,16 @@ declare namespace window { * @atomicservice * @since 12 */ - SPLIT_SCREEN + /** + * Split screen status of the window + * + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + SPLIT_SCREEN = 5 } /** @@ -660,7 +794,17 @@ declare namespace window { * @atomicservice * @since 12 */ - interface SystemBarProperties { + /** + * Properties of status bar and navigation bar, it couldn't update automatically + * + * @interface SystemBarProperties + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export interface SystemBarProperties { /** * The color of the status bar. * @@ -675,6 +819,16 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * The color of the status bar. + * + * @type { ?string } + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ statusBarColor?: string; /** @@ -691,6 +845,16 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * The light icon of the status bar. + * + * @type { ?boolean } + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ isStatusBarLightIcon?: boolean; /** @@ -705,7 +869,8 @@ declare namespace window { * @type { ?string } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ statusBarContentColor?: string; @@ -723,6 +888,17 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * The color of the navigation bar. + * + * @type { ?string } + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + navigationBarColor?: string; /** @@ -739,6 +915,16 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * The light icon of the navigation bar. + * + * @type { ?boolean } + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ isNavigationBarLightIcon?: boolean; /** @@ -753,7 +939,8 @@ declare namespace window { * @type { ?string } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ navigationBarContentColor?: string; @@ -765,6 +952,16 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Enable the animation of the status bar. + * + * @type { ?boolean } + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ enableStatusBarAnimation?: boolean; /** @@ -773,7 +970,8 @@ declare namespace window { * @type { ?boolean } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ enableNavigationBarAnimation?: boolean; } @@ -804,16 +1002,18 @@ declare namespace window { * @interface SystemBarStyle * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface SystemBarStyle { + export interface SystemBarStyle { /** * The content color of the status bar * * @type { ?string } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ statusBarContentColor?: string; } @@ -824,9 +1024,10 @@ declare namespace window { * @interface SystemBarRegionTint * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface SystemBarRegionTint { + export interface SystemBarRegionTint { /** * System bar type * @@ -884,9 +1085,10 @@ declare namespace window { * @interface SystemBarTintState * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface SystemBarTintState { + export interface SystemBarTintState { /** * Id of display * @@ -929,9 +1131,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface Rect { + export interface Rect { /** * The left of the Rect. @@ -953,7 +1156,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ left: number; @@ -977,7 +1181,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ top: number; @@ -1001,7 +1206,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ width: number; @@ -1025,11 +1231,95 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ height: number; } + /** + * Enum for window anchor + * + * @enum { number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + enum WindowAnchor { + /** + * The value means window top left corner. + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + TOP_START = 0, + /** + * The value means horizontal midpoint of the border on the window. + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + TOP = 1, + /** + * The value means window top right corner. + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + TOP_END = 2, + /** + * The value means vertical midpoint of the left border of the window. + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + START = 3, + /** + * The value means window horizontal and vertical midpoint. + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + CENTER = 4, + /** + * The value means vertical midpoint of the right border of the window. + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + END = 5, + /** + * The value means window bottom left corner. + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + BOTTOM_START = 6, + /** + * The value means horizontal midpoint of the lower border of the window. + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + BOTTOM = 7, + /** + * The value means window bottom right corner. + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + BOTTOM_END = 8, + } + /** * Avoid area * @@ -1052,9 +1342,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface AvoidArea { + export interface AvoidArea { /** * Whether avoidArea is visible on screen * @@ -1068,7 +1359,8 @@ declare namespace window { * @type { boolean } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ visible: boolean; @@ -1094,7 +1386,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ leftRect: Rect; @@ -1120,7 +1413,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ topRect: Rect; @@ -1146,7 +1440,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ rightRect: Rect; @@ -1172,7 +1467,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ bottomRect: Rect; } @@ -1199,9 +1495,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface Size { + export interface Size { /** * The width of the window. * @@ -1224,7 +1521,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ width: number; @@ -1249,7 +1547,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ height: number; } @@ -1262,7 +1561,14 @@ declare namespace window { * @systemapi * @since 12 */ - interface WindowInfo { + /** + * The info of window + * + * @interface WindowInfo + * @syscap SystemCapability.Window.SessionManager + * @since 18 + */ + export interface WindowInfo { /** * The position and size of the window * @@ -1271,6 +1577,14 @@ declare namespace window { * @systemapi * @since 12 */ + /** + * The position and size of the window + * + * @type { Rect } + * @syscap SystemCapability.Window.SessionManager + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 + */ rect: Rect; /** @@ -1281,6 +1595,13 @@ declare namespace window { * @systemapi * @since 12 */ + /** + * bundleName of window + * + * @type { string } + * @syscap SystemCapability.Window.SessionManager + * @since 18 + */ bundleName: string; /** @@ -1291,6 +1612,13 @@ declare namespace window { * @systemapi * @since 12 */ + /** + * abilityName of window + * + * @type { string } + * @syscap SystemCapability.Window.SessionManager + * @since 18 + */ abilityName: string; /** @@ -1301,16 +1629,38 @@ declare namespace window { * @systemapi * @since 12 */ - windowId: number; - /** - * The window status of an application. + * Indicates target window id. * - * @type { WindowStatusType } + * @type { number } + * @syscap SystemCapability.Window.SessionManager + * @since 18 + */ + windowId: number; + + /** + * The window status of an application. + * + * @type { WindowStatusType } * @syscap SystemCapability.Window.SessionManager * @systemapi * @since 12 */ + /** + * The window status of an application. + * + * @type { WindowStatusType } + * @syscap SystemCapability.Window.SessionManager + * @since 18 + */ + /** + * The window status of an application. + * + * @type { WindowStatusType } + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @since 20 + */ windowStatusType: WindowStatusType; /** @@ -1321,6 +1671,13 @@ declare namespace window { * @systemapi * @since 14 */ + /** + * Whether the window is focused. The default value is false. + * + * @type { ?boolean } + * @syscap SystemCapability.Window.SessionManager + * @since 18 + */ isFocused?: boolean; } @@ -1330,16 +1687,18 @@ declare namespace window { * @interface WindowDensityInfo * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface WindowDensityInfo { + export interface WindowDensityInfo { /** * System density * * @type { number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ systemDensity: number; @@ -1349,7 +1708,8 @@ declare namespace window { * @type { number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ defaultDensity: number; @@ -1359,7 +1719,8 @@ declare namespace window { * @type { number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ customDensity: number; } @@ -1386,9 +1747,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface WindowProperties { + export interface WindowProperties { /** * The position and size of the window * @@ -1411,7 +1773,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ windowRect: Rect; @@ -1428,7 +1791,8 @@ declare namespace window { * @type { Rect } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ drawableRect: Rect; @@ -1445,7 +1809,8 @@ declare namespace window { * @type { WindowType } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ type: WindowType; @@ -1462,7 +1827,8 @@ declare namespace window { * @type { boolean } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isFullScreen: boolean; @@ -1479,7 +1845,8 @@ declare namespace window { * @type { boolean } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isLayoutFullScreen: boolean; @@ -1496,7 +1863,8 @@ declare namespace window { * @type { boolean } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ focusable: boolean; @@ -1513,7 +1881,8 @@ declare namespace window { * @type { boolean } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ touchable: boolean; @@ -1538,7 +1907,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ brightness: number; @@ -1573,7 +1943,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ isKeepScreenOn: boolean; @@ -1590,7 +1961,8 @@ declare namespace window { * @type { boolean } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isPrivacyMode: boolean; @@ -1617,7 +1989,8 @@ declare namespace window { * @type { boolean } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isTransparent: boolean; @@ -1634,7 +2007,8 @@ declare namespace window { * @type { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ id: number; @@ -1644,7 +2018,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ displayId?: number; @@ -1654,7 +2029,8 @@ declare namespace window { * @type { ?string } * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ name?: string; } @@ -1665,7 +2041,8 @@ declare namespace window { * @interface DecorButtonStyle * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ interface DecorButtonStyle { /** @@ -1707,6 +2084,26 @@ declare namespace window { * @since 14 */ closeButtonRightMargin? : number; + + /** + * button icon size. + * + * @type { ?number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + buttonIconSize? : number; + + /** + * corner radius of button background when hover. + * + * @type { ?number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + buttonBackgroundCornerRadius? : number; } /** @@ -1731,9 +2128,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum ColorSpace { + export enum ColorSpace { /** * Default color space. * @@ -1753,9 +2151,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - DEFAULT, + DEFAULT = 0, /** * Wide gamut color space. The specific wide color gamut depends on thr screen. * @@ -1775,9 +2174,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - WIDE_GAMUT + WIDE_GAMUT = 1 } /** * Describes the scale Transition Options of window @@ -1785,16 +2185,18 @@ declare namespace window { * @interface ScaleOptions * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface ScaleOptions { + export interface ScaleOptions { /** * The scale param of x direction. Default is 1.f * * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ x?: number; @@ -1804,7 +2206,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ y?: number; @@ -1814,7 +2217,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ pivotX?: number; @@ -1824,7 +2228,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ pivotY?: number; } @@ -1835,16 +2240,18 @@ declare namespace window { * @interface RotateOptions * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface RotateOptions { + export interface RotateOptions { /** * The rotate degree of x direction. Default value is 0.f * * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ x?: number; @@ -1854,7 +2261,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ y?: number; @@ -1864,7 +2272,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ z?: number; @@ -1874,7 +2283,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ pivotX?: number; @@ -1884,7 +2294,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ pivotY?: number; } @@ -1895,16 +2306,18 @@ declare namespace window { * @interface TranslateOptions * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface TranslateOptions { + export interface TranslateOptions { /** * The translate pixel param of x direction. Default is 0.f * * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ x?: number; @@ -1914,7 +2327,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ y?: number; @@ -1924,7 +2338,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ z?: number; } @@ -1935,16 +2350,18 @@ declare namespace window { * @interface TransitionContext * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface TransitionContext { + export interface TransitionContext { /** * The target window with animation * * @type { Window } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ toWindow: Window; @@ -1967,7 +2384,8 @@ declare namespace window { * 2. Incorrect parameter types. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ completeTransition(isCompleted: boolean): void; } @@ -1978,9 +2396,10 @@ declare namespace window { * @interface TransitionController * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface TransitionController { + export interface TransitionController { /** * Animation configuration when showing window * @@ -2000,7 +2419,8 @@ declare namespace window { * 2. Incorrect parameter types. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ animationForShown(context: TransitionContext): void; /** @@ -2022,7 +2442,8 @@ declare namespace window { * 2. Incorrect parameter types. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ animationForHidden(context: TransitionContext): void; } @@ -2042,7 +2463,7 @@ declare namespace window { * @atomicservice * @since 12 */ - interface Configuration { + export interface Configuration { /** * Indicates window id. * @@ -2146,6 +2567,26 @@ declare namespace window { * @since 12 */ title?: string; + + /** + * Indicates window container zIndex. + * + * @type { ?number } + * @syscap SystemCapability.Window.SessionManager + * @systemapi Hide this for inner system use. + * @since 20 + */ + zIndex?: number; + + /** + * Indicates whether to use default density. + * + * @type { ?boolean } + * @syscap SystemCapability.Window.SessionManager + * @systemapi Hide this for inner system use. + * @since 20 + */ + defaultDensityEnabled?: boolean; } /** @@ -2161,9 +2602,10 @@ declare namespace window { * @interface WindowLimits * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface WindowLimits { + export interface WindowLimits { /** * The maximum width of the window. @@ -2178,7 +2620,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ maxWidth?: number; @@ -2195,7 +2638,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ maxHeight?: number; @@ -2212,7 +2656,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ minWidth?: number; @@ -2229,7 +2674,8 @@ declare namespace window { * @type { ?number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ minHeight?: number; } @@ -2247,9 +2693,10 @@ declare namespace window { * @interface TitleButtonRect * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface TitleButtonRect { + export interface TitleButtonRect { /** * The right of the Rect. @@ -2298,7 +2745,8 @@ declare namespace window { * @type { number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ width: number; @@ -2326,9 +2774,10 @@ declare namespace window { * @interface RectChangeOptions * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface RectChangeOptions { + export interface RectChangeOptions { /** * Rect * @@ -2345,7 +2794,8 @@ declare namespace window { * @type { RectChangeReason } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ reason: RectChangeReason } @@ -2358,7 +2808,17 @@ declare namespace window { * @atomicservice * @since 12 */ - interface AvoidAreaOptions { + /** + * Avoid area options + * + * @interface AvoidAreaOptions + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export interface AvoidAreaOptions { /** * Avoid area type * @@ -2367,6 +2827,16 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Avoid area type + * + * @type { AvoidAreaType } + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ type: AvoidAreaType, /** @@ -2377,6 +2847,16 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Avoid area + * + * @type { AvoidArea } + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ area: AvoidArea } @@ -2386,15 +2866,17 @@ declare namespace window { * @enum { number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum RectChangeReason { + export enum RectChangeReason { /** * Default RectChangeReason. * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ UNDEFINED = 0, @@ -2403,54 +2885,60 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - MAXIMIZE, + MAXIMIZE = 1, /** * Window recover. * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - RECOVER, + RECOVER = 2, /** * Window move. * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - MOVE, + MOVE = 3, /** * Window drag. * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - DRAG, + DRAG = 4, /** * Window drag start. * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - DRAG_START, + DRAG_START = 5, /** * Window drag end. * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - DRAG_END, + DRAG_END = 6, } /** @@ -2489,7 +2977,26 @@ declare namespace window { * @atomicservice * @since 12 */ - function createWindow(config: Configuration, callback: AsyncCallback<Window>): void; + /** + * Creates a child window or system window. This API uses an asynchronous callback to return the result. + * + * @permission ohos.permission.SYSTEM_FLOAT_WINDOW (required when the window type is window.WindowType.TYPE_FLOAT) + * @param { Configuration } config - Parameters used for creating the window. + * @param { AsyncCallback<Window> } callback - Callback used to return the window created. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported.createWindow can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300001 - Repeated operation. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @throws { BusinessError } 1300006 - This window context is abnormal. + * @throws { BusinessError } 1300009 - The parent window is invalid. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @atomicservice + * @since 17 + */ + export function createWindow(config: Configuration, callback: AsyncCallback<Window>): void; /** * Create a window with a specific configuration @@ -2527,7 +3034,27 @@ declare namespace window { * @atomicservice * @since 12 */ - function createWindow(config: Configuration): Promise<Window>; + /** + * Create a window with a specific configuration + * When config.windowType == TYPE_FLOAT, the "ohos.permission.SYSTEM_FLOAT_WINDOW" permission is required + * + * @permission ohos.permission.SYSTEM_FLOAT_WINDOW + * @param { Configuration } config - Parameters for window creation. + * @returns { Promise<Window> } Promise used to return the window created. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported.createWindow can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300001 - Repeated operation. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @throws { BusinessError } 1300006 - This window context is abnormal. + * @throws { BusinessError } 1300009 - The parent window is invalid. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @atomicservice + * @since 17 + */ + export function createWindow(config: Configuration): Promise<Window>; /** * Create a sub window with a specific id and type, only support 7. @@ -2541,7 +3068,7 @@ declare namespace window { * @deprecated since 9 * @useinstead ohos.window#createWindow */ - function create(id: string, type: WindowType, callback: AsyncCallback<Window>): void; + export function create(id: string, type: WindowType, callback: AsyncCallback<Window>): void; /** * Create a sub window with a specific id and type, only support 7. @@ -2555,7 +3082,7 @@ declare namespace window { * @deprecated since 9 * @useinstead ohos.window#createWindow */ - function create(id: string, type: WindowType): Promise<Window>; + export function create(id: string, type: WindowType): Promise<Window>; /** * Create a system or float window with a specific id and type. @@ -2569,7 +3096,7 @@ declare namespace window { * @deprecated since 9 * @useinstead ohos.window#createWindow */ - function create(ctx: BaseContext, id: string, type: WindowType): Promise<Window>; + export function create(ctx: BaseContext, id: string, type: WindowType): Promise<Window>; /** * Create a system or float window with a specific id and type. @@ -2583,7 +3110,7 @@ declare namespace window { * @deprecated since 9 * @useinstead ohos.window#createWindow */ - function create(ctx: BaseContext, id: string, type: WindowType, callback: AsyncCallback<Window>): void; + export function create(ctx: BaseContext, id: string, type: WindowType, callback: AsyncCallback<Window>): void; /** * Find the window by id. @@ -2595,7 +3122,7 @@ declare namespace window { * @deprecated since 9 * @useinstead ohos.window#findWindow */ - function find(id: string, callback: AsyncCallback<Window>): void; + export function find(id: string, callback: AsyncCallback<Window>): void; /** * Find the window by id. @@ -2607,7 +3134,7 @@ declare namespace window { * @deprecated since 9 * @useinstead ohos.window#findWindow */ - function find(id: string): Promise<Window>; + export function find(id: string): Promise<Window>; /** * Find the window by name. @@ -2633,9 +3160,9 @@ declare namespace window { * @since 10 */ /** - * Find the window by name. + * Finds a window based on the name. * - * @param { string } name - Indicates window name. + * @param { string } name - Window name, that is, the value of name in Configuration. * @returns { Window } Window found. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -2643,9 +3170,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - function findWindow(name: string): Window; + export function findWindow(name: string): Window; /** * Get the final show window. @@ -2657,7 +3185,7 @@ declare namespace window { * @deprecated since 9 * @useinstead ohos.window#getLastWindow */ - function getTopWindow(callback: AsyncCallback<Window>): void; + export function getTopWindow(callback: AsyncCallback<Window>): void; /** * Get the final show window. @@ -2669,7 +3197,7 @@ declare namespace window { * @deprecated since 9 * @useinstead ohos.window#getLastWindow */ - function getTopWindow(): Promise<Window>; + export function getTopWindow(): Promise<Window>; /** * Get the final show window. @@ -2681,7 +3209,7 @@ declare namespace window { * @deprecated since 9 * @useinstead ohos.window#getLastWindow */ - function getTopWindow(ctx: BaseContext): Promise<Window>; + export function getTopWindow(ctx: BaseContext): Promise<Window>; /** * Get the final show window. @@ -2693,7 +3221,7 @@ declare namespace window { * @deprecated since 9 * @useinstead ohos.window#getLastWindow */ - function getTopWindow(ctx: BaseContext, callback: AsyncCallback<Window>): void; + export function getTopWindow(ctx: BaseContext, callback: AsyncCallback<Window>): void; /** * Get the final show window. @@ -2721,7 +3249,8 @@ declare namespace window { * @since 10 */ /** - * Get the top window. + * Obtains the top window of the current application. This API uses an asynchronous callback to return the result. + * If no child window is available, the main window of the application is returned. * * @param { BaseContext } ctx - Current application context. * @param { AsyncCallback<Window> } callback - Callback used to return the top window obtained. @@ -2732,9 +3261,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function getLastWindow(ctx: BaseContext, callback: AsyncCallback<Window>): void; + export function getLastWindow(ctx: BaseContext, callback: AsyncCallback<Window>): void; /** * Get the final show window. @@ -2762,7 +3292,8 @@ declare namespace window { * @since 10 */ /** - * Get the top window. + * Obtains the top window of the current application. This API uses a promise to return the result. + * If no child window is available, the main window of the application is returned. * * @param { BaseContext } ctx - Current application context. * @returns { Promise<Window> } Promise used to return the top window obtained. @@ -2773,9 +3304,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function getLastWindow(ctx: BaseContext): Promise<Window>; + export function getLastWindow(ctx: BaseContext): Promise<Window>; /** * Minimize all app windows. @@ -2803,9 +3335,10 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function minimizeAll(id: number, callback: AsyncCallback<void>): void; + export function minimizeAll(id: number, callback: AsyncCallback<void>): void; /** * Minimize all app windows. @@ -2833,9 +3366,10 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function minimizeAll(id: number): Promise<void>; + export function minimizeAll(id: number): Promise<void>; /** * Toggle shown state for all app windows. Minimize or restore all app windows. @@ -2857,7 +3391,7 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 12 */ - function toggleShownStateForAllAppWindows(callback: AsyncCallback<void>): void; + export function toggleShownStateForAllAppWindows(callback: AsyncCallback<void>): void; /** * Toggle shown state for all app windows. Minimize or restore all app windows. @@ -2879,7 +3413,7 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 12 */ - function toggleShownStateForAllAppWindows(): Promise<void>; + export function toggleShownStateForAllAppWindows(): Promise<void>; /** * Set the layout mode of a window. @@ -2908,7 +3442,7 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 12 */ - function setWindowLayoutMode(mode: WindowLayoutMode, callback: AsyncCallback<void>): void; + export function setWindowLayoutMode(mode: WindowLayoutMode, callback: AsyncCallback<void>): void; /** * Set the layout mode of a window. @@ -2937,7 +3471,7 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 12 */ - function setWindowLayoutMode(mode: WindowLayoutMode): Promise<void>; + export function setWindowLayoutMode(mode: WindowLayoutMode): Promise<void>; /** * Sets whether to enable gesture navigation. @@ -2953,7 +3487,7 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 10 */ - function setGestureNavigationEnabled(enable: boolean, callback: AsyncCallback<void>): void; + export function setGestureNavigationEnabled(enable: boolean, callback: AsyncCallback<void>): void; /** * Sets whether to enable gesture navigation. @@ -2969,7 +3503,7 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 10 */ - function setGestureNavigationEnabled(enable: boolean): Promise<void>; + export function setGestureNavigationEnabled(enable: boolean): Promise<void>; /** * Set watermark image. @@ -2985,7 +3519,7 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 10 */ - function setWaterMarkImage(pixelMap: image.PixelMap, enable: boolean): Promise<void>; + export function setWaterMarkImage(pixelMap: image.PixelMap, enable: boolean): Promise<void>; /** * Set watermark image. @@ -3001,7 +3535,7 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 10 */ - function setWaterMarkImage(pixelMap: image.PixelMap, enable: boolean, callback: AsyncCallback<void>): void; + export function setWaterMarkImage(pixelMap: image.PixelMap, enable: boolean, callback: AsyncCallback<void>): void; /** * Shift window focus within the same application. And the window type contains only main window and subwindow. @@ -3019,7 +3553,8 @@ declare namespace window { * @since 11 */ /** - * Shift window focus within the same application. And the window type contains only main window and subwindow. + * Shifts the window focus from the source window to the target window in the same application. + * The window focus can be shifted between the main window and a child window. * * @param { number } sourceWindowId - Window id which the focus shift from. * @param { number } targetWindowId - Window id which the focus shift to. @@ -3032,15 +3567,17 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - function shiftAppWindowFocus(sourceWindowId: number, targetWindowId: number): Promise<void>; + export function shiftAppWindowFocus(sourceWindowId: number, targetWindowId: number): Promise<void>; /** - * Shift window pointer event within the same application. And the window type contains only main window and subwindow. + * Transfers an input event from one window to another within the same application, particularly in split-window scenarios. + * It takes effect only for the main window and its child windows on 2-in-1 devices. * - * @param { number } sourceWindowId - Window id which the pointer event shift from. - * @param { number } targetWindowId - Window id which the pointer event shift to. + * @param { number } sourceWindowId - ID of the source window. You are advised to call getWindowProperties() to obtain the window ID. + * @param { number } targetWindowId - ID of the target window. You are advised to call getWindowProperties() to obtain the window ID. * @returns { Promise<void> } - Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -3054,6 +3591,24 @@ declare namespace window { */ function shiftAppWindowPointerEvent(sourceWindowId: number, targetWindowId: number): Promise<void>; + /** + * Shift window touch event within the same application. And the window type contains only main window and subwindow. + * + * @param { number } sourceWindowId - Window id which the touch event shift from. + * @param { number } targetWindowId - Window id which the touch event shift to. + * @param { number } fingerId - Finger id in touch event. + * @returns { Promise<void> } - Promise that returns no value. + * @throws { BusinessError } 801 - Capability not supported. Function shiftAppWindowTouchEvent can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @throws { BusinessError } 1300016 - Parameter error. Possible cause: 1. Invalid parameter range. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + function shiftAppWindowTouchEvent(sourceWindowId: number, targetWindowId: number, fingerId: number): Promise<void>; + /** * Get info of visible windows. * @@ -3065,7 +3620,18 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 12 */ - function getVisibleWindowInfo(): Promise<Array<WindowInfo>>; + /** + * Get info of visible windows. + * + * @permission ohos.permission.VISIBLE_WINDOW_INFO + * @returns { Promise<Array<WindowInfo>> } - Promise that returns windowInfo list. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 801 - Capability not supported. Function getVisibleWindowInfo can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @since 18 + */ + export function getVisibleWindowInfo(): Promise<Array<WindowInfo>>; /** * gets snapshot of window @@ -3082,7 +3648,7 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 12 */ - function getSnapshot(windowId: number): Promise<image.PixelMap>; + export function getSnapshot(windowId: number): Promise<image.PixelMap>; /** * Get windows by coordinate. @@ -3099,7 +3665,8 @@ declare namespace window { * @atomicservice * @since 14 */ - function getWindowsByCoordinate(displayId: number, windowNumber?: number, x?: number, y?: number): Promise<Array<Window>>; + export function getWindowsByCoordinate(displayId: number, windowNumber?: number, x?: number, y?: number): + Promise<Array<Window>>; /** * Get Layout info of all windows on the selected display. @@ -3116,8 +3683,52 @@ declare namespace window { * @atomicservice * @since 15 */ + /** + * Get Layout info of all windows on the selected display. + * + * @param { number } displayId - Indicate the id of display. + * @returns { Promise<Array<WindowLayoutInfo>> } Promise used to return the WindowLayoutInfo. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. function getAllWindowLayoutInfo can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ function getAllWindowLayoutInfo(displayId: number): Promise<Array<WindowLayoutInfo>>; + /** + * List the window modes of the foreground window on the specified display. + * + * @param { number } displayId - Indicate the id of display. + * @returns { Promise<number> } Promise used to return the window modes. + * @throws { BusinessError } 801 - Capability not supported. function getGlobalWindowMode can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300016 - Parameter error. Possible cause: 1. Invalid parameter range. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + function getGlobalWindowMode(displayId?: number): Promise<number>; + + /** + * Get the name of the top navigation destination. + * + * @param { number } windowId - Indicates target window id. + * @returns { Promise<string> } The name of the top navigation destination. + * @throws { BusinessError } 202 - Permission verification failed, non-system application uses system API. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300016 - Parameter error. Possible cause: 1. Invalid parameter range. + * @syscap SystemCapability.Window.SessionManager + * @systemapi Hide this for inner system use. + * @since 20 + */ + function getTopNavDestinationName(windowId: number): Promise<string>; + /** * Register the callback of systemBarTintChange * @@ -3129,9 +3740,10 @@ declare namespace window { * 3. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ - function on(type: 'systemBarTintChange', callback: Callback<SystemBarTintState>): void; + export function on(type: 'systemBarTintChange', callback: Callback<SystemBarTintState>): void; /** * Unregister the callback of systemBarTintChange @@ -3143,9 +3755,10 @@ declare namespace window { * 2. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 8 + * @since arkts {'1.1':'8', '1.2':'20'} + * @arkts 1.1&1.2 */ - function off(type: 'systemBarTintChange', callback?: Callback<SystemBarTintState>): void; + export function off(type: 'systemBarTintChange', callback?: Callback<SystemBarTintState>): void; /** * Register the callback for gesture navigation enabled changes. @@ -3160,9 +3773,10 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ - function on(type: 'gestureNavigationEnabledChange', callback: Callback<boolean>): void; + export function on(type: 'gestureNavigationEnabledChange', callback: Callback<boolean>): void; /** * Unregister the callback for gesture navigation enabled changes. @@ -3176,9 +3790,10 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ - function off(type: 'gestureNavigationEnabledChange', callback?: Callback<boolean>): void; + export function off(type: 'gestureNavigationEnabledChange', callback?: Callback<boolean>): void; /** * Register the callback for watermark flag change. @@ -3191,9 +3806,10 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ - function on(type: 'waterMarkFlagChange', callback: Callback<boolean>): void; + export function on(type: 'waterMarkFlagChange', callback: Callback<boolean>): void; /** * Unregister the callback for watermark flag change. @@ -3206,20 +3822,52 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ - function off(type: 'waterMarkFlagChange', callback?: Callback<boolean>): void; + export function off(type: 'waterMarkFlagChange', callback?: Callback<boolean>): void; + /** - * Display orientation + * Sets starting window background color * - * @enum { number } - * @syscap SystemCapability.WindowManager.WindowManager.Core - * @since 9 + * @param { string } moduleName - module Name that needs to be set. + * @param { string } abilityName - ability Name that needs to be set. + * @param { ColorMetrics } color - Color metrics. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 801 - Capability not supported.function setStartWindowBackgroundColor can not to work correctly due to limited device capabilities. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300016 - Parameter error. Possible cause: 1. Invalid parameter range. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 */ + function setStartWindowBackgroundColor(moduleName: string, abilityName: string, color: ColorMetrics): Promise<void>; + /** - * Display orientation + * Notify screenshot event * - * @enum { number } + * @param { ScreenshotEventType } eventType - Screenshot event type. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300016 - Parameter error. Possible cause: 1. Invalid parameter range. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @systemapi Hide this for inner system use. + * @since 20 + */ + function notifyScreenshotEvent(eventType: ScreenshotEventType): Promise<void>; + + /** + * Display orientation + * + * @enum { number } + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @since 9 + */ + /** + * Display orientation + * + * @enum { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @since 10 @@ -3231,9 +3879,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum Orientation { + export enum Orientation { /** * Default value. The direction mode is not clearly defined. It is determined by the system. * @@ -3253,7 +3902,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ UNSPECIFIED = 0, @@ -3276,7 +3926,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ PORTRAIT = 1, @@ -3299,7 +3950,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ LANDSCAPE = 2, @@ -3322,7 +3974,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ PORTRAIT_INVERTED = 3, @@ -3345,7 +3998,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ LANDSCAPE_INVERTED = 4, @@ -3360,7 +4014,8 @@ declare namespace window { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ AUTO_ROTATION = 5, @@ -3375,7 +4030,8 @@ declare namespace window { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ AUTO_ROTATION_PORTRAIT = 6, @@ -3390,7 +4046,8 @@ declare namespace window { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ AUTO_ROTATION_LANDSCAPE = 7, @@ -3405,7 +4062,8 @@ declare namespace window { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ AUTO_ROTATION_RESTRICTED = 8, @@ -3420,7 +4078,8 @@ declare namespace window { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ AUTO_ROTATION_PORTRAIT_RESTRICTED = 9, @@ -3435,7 +4094,8 @@ declare namespace window { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ AUTO_ROTATION_LANDSCAPE_RESTRICTED = 10, @@ -3450,7 +4110,8 @@ declare namespace window { * * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ LOCKED = 11, @@ -3459,7 +4120,8 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ AUTO_ROTATION_UNSPECIFIED = 12, @@ -3468,7 +4130,8 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ USER_ROTATION_PORTRAIT = 13, @@ -3477,7 +4140,8 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ USER_ROTATION_LANDSCAPE = 14, @@ -3486,7 +4150,8 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ USER_ROTATION_PORTRAIT_INVERTED = 15, @@ -3495,7 +4160,8 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ USER_ROTATION_LANDSCAPE_INVERTED = 16, @@ -3504,7 +4170,8 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLLOW_DESKTOP = 17 } @@ -3515,41 +4182,46 @@ declare namespace window { * @enum { number } * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum BlurStyle { + export enum BlurStyle { /** * Close blur. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - OFF, + OFF = 0, /** * Blur style thin. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - THIN, + THIN = 1, /** * Blur style regular. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - REGULAR, + REGULAR = 2, /** * Blur style thick. * * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ - THICK + THICK = 3 } /** @@ -3566,9 +4238,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum WindowEventType { + export enum WindowEventType { /** * The value of window event is window show * @@ -3581,7 +4254,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_SHOWN = 1, /** @@ -3596,7 +4270,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_ACTIVE = 2, /** @@ -3611,7 +4286,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_INACTIVE = 3, /** @@ -3626,7 +4302,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_HIDDEN = 4, /** @@ -3634,7 +4311,8 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_DESTROYED = 7 } @@ -3645,15 +4323,17 @@ declare namespace window { * @enum { number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum MaximizePresentation { + export enum MaximizePresentation { /** * The value means follow immersive state which set by app * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ FOLLOW_APP_IMMERSIVE_SETTING = 0, /** @@ -3661,7 +4341,8 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ EXIT_IMMERSIVE = 1, /** @@ -3669,7 +4350,8 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ ENTER_IMMERSIVE = 2, /** @@ -3688,16 +4370,18 @@ declare namespace window { * @interface MoveConfiguration * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface MoveConfiguration { + export interface MoveConfiguration { /** * The display id of the screen * * @type { ?number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ displayId?: number; } @@ -3716,28 +4400,230 @@ declare namespace window { * @syscap SystemCapability.Window.SessionManager * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ type SpecificSystemBar = 'status' | 'navigation' | 'navigationIndicator'; /** - * The infomation of keyboard + * Describes the window transition type + * + * @enum { number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + enum WindowTransitionType { + /** + * window transition type destroy + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + DESTROY = 0, + } + + /** + * Describes the window animation curve + * + * @enum { number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + enum WindowAnimationCurve { + /** + * animation curve type linear + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + LINEAR = 0, + + /** + * animation curve type interpolation spring + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + INTERPOLATION_SPRING = 1, + } + + /** + * window animation config + * + * @interface WindowAnimationConfig + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + interface WindowAnimationConfig { + /** + * curve of the animation + * + * @type { WindowAnimationCurve } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + curve: WindowAnimationCurve; + + /** + * duration of the animation + * + * @type { ?number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + duration?: number; + + /** + * param of animation curve + * + * @type { ?WindowAnimationCurveParam } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + param?: WindowAnimationCurveParam; + } + + /** + * The animation configuration of window transition + * + * @interface TransitionAnimation + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + interface TransitionAnimation { + /** + * The config of window animation + * + * @type { WindowAnimationConfig } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + config: WindowAnimationConfig; + /** + * The opacity of window + * + * @type { ?number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + opacity?: number; + } + + /** + * The information of keyboard * * @interface KeyboardInfo * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ interface KeyboardInfo { /** - * The position and size of the keyboard + * The position and size of keyboard before animation. * * @type { Rect } * @syscap SystemCapability.Window.SessionManager * @atomicservice * @since 18 */ - rect: Rect; + beginRect: Rect; + + /** + * The position and size of keyboard after animation completed. + * + * @type { Rect } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 18 + */ + endRect: Rect; + + /** + * Indicates whether animation exists. + * + * @type { ?boolean } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + animated?: boolean; + + /** + * The configuration of keyboard animation. + * + * @type { ?WindowAnimationConfig } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + config?: WindowAnimationConfig; + } + + /** + * The policy of key frame. + * + * @interface KeyFramePolicy + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + interface KeyFramePolicy { + /** + * Whether to use key frame. + * + * @type { boolean } + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + enable: boolean; + + /** + * Set the drag interval to notify rect change in millisecond. + * + * @type { ?number } + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + interval?: number; + + /** + * Set the drag distance to notify rect change in px. + * + * @type { ?number } + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + distance?: number; + + /** + * Set the rect change animation duration in millisecond. + * + * @type { ?number } + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + animationDuration?: number; + + /** + * Set then rect change animation delay in millisecond + * + * @type { ?number } + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + animationDelay?: number; } /** @@ -3754,9 +4640,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface Window { + export interface Window { /** * Hide window. * @@ -3820,7 +4707,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ hideWithAnimation(callback: AsyncCallback<void>): void; @@ -3845,7 +4733,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ hideWithAnimation(): Promise<void>; @@ -3889,14 +4778,17 @@ declare namespace window { * @since 10 */ /** - * Show window. + * Shows this window. This API uses an asynchronous callback to return the result. + * This API takes effect only for a system window or an application child window. + * For the main window of an application, this API moves it at the top when the main window is already displayed. * * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ showWindow(callback: AsyncCallback<void>): void; @@ -3918,17 +4810,37 @@ declare namespace window { * @since 10 */ /** - * Show window. + * Shows this window. This API uses a promise to return the result. + * This API takes effect only for a system window or an application child window. + * For the main window of an application, this API moves it at the top when the main window is already displayed. * * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ showWindow(): Promise<void>; + /** + * Show window. + * + * @param { ShowWindowOptions } options - options of window shown + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. Function showWindow can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + showWindow(options: ShowWindowOptions): Promise<void>; + /** * Show window with animation. * @@ -3950,7 +4862,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ showWithAnimation(callback: AsyncCallback<void>): void; @@ -3975,7 +4888,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ showWithAnimation(): Promise<void>; @@ -4015,21 +4929,21 @@ declare namespace window { * * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @since 10 */ /** - * Destroy the window. + * Destroys this window. This API uses an asynchronous callback to return the result. + * This API takes effect only for a system window or an application child window. * * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ destroyWindow(callback: AsyncCallback<void>): void; @@ -4047,21 +4961,21 @@ declare namespace window { * * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @since 10 */ /** - * Destroy the window. + * Destroys this window. This API uses an asynchronous callback to return the result. + * This API takes effect only for a system window or an application child window. * * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ destroyWindow(): Promise<void>; @@ -4131,7 +5045,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ moveWindowTo(x: number, y: number): Promise<void>; @@ -4175,7 +5090,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ moveWindowTo(x: number, y: number, callback: AsyncCallback<void>): void; @@ -4326,7 +5242,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ resize(width: number, height: number): Promise<void>; @@ -4373,7 +5290,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ resize(width: number, height: number, callback: AsyncCallback<void>): void; @@ -4415,6 +5333,29 @@ declare namespace window { */ setFollowParentWindowLayoutEnabled(enabled: boolean): Promise<void>; + /** + * Set whether the first level sub window supports maintaining the same relative position with the main window. + * + * @param { boolean } enabled - The value true means the first level sub window supports maintaining the same relative position with the main window, + * and false means the opposite. + * @param { WindowAnchor } anchor - Window anchor point that setting + * when the relative position between the primary sub window and the main window remains unchanged. + * @param { number } offsetX - The x-axis offset between the anchor point of the first level sub window and the anchor point of the main window. + * @param { number } offsetY - The y-axis offset between the anchor point of the first level sub window and the anchor point of the main window. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. + * Function setRelativePositionToParentWindowEnabled can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + setRelativePositionToParentWindowEnabled(enabled: boolean, anchor?: WindowAnchor, offsetX?: number, offsetY?: number): Promise<void>; + /** * Set the type of a window. * @@ -4523,7 +5464,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 13 + * @since arkts {'1.1':'13', '1.2':'20'} + * @arkts 1.1&1.2 */ getGlobalRect(): Rect; @@ -4563,7 +5505,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getWindowProperties(): WindowProperties; @@ -4640,7 +5583,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getWindowAvoidArea(type: AvoidAreaType): AvoidArea; @@ -4649,8 +5593,6 @@ declare namespace window { * * @param { boolean } enabled - If true, the system window type can obtain avoid area. If false, the avoid area obtained by the system window type will always be empty. * @returns { Promise<void> } Promise that returns no value. - * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300003 - This window manager service works abnormally. @@ -4754,9 +5696,9 @@ declare namespace window { setWindowLayoutFullScreen(isLayoutFullScreen: boolean, callback: AsyncCallback<void>): void; /** - * Set the property of the window can layout in full screen + * Sets whether the main window layout or the child window layout is immersive. * - * @param { boolean } isLayoutFullScreen - The window can layout in full screen + * @param { boolean } isLayoutFullScreen - Whether the window layout is immersive * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -4766,9 +5708,9 @@ declare namespace window { * @since 9 */ /** - * Set the property of the window can layout in full screen + * Sets whether the main window layout or the child window layout is immersive. * - * @param { boolean } isLayoutFullScreen - The window can layout in full screen + * @param { boolean } isLayoutFullScreen - Whether the window layout is immersive * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -4777,7 +5719,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowLayoutFullScreen(isLayoutFullScreen: boolean): Promise<void>; @@ -4849,9 +5792,9 @@ declare namespace window { setWindowSystemBarEnable(names: Array<'status' | 'navigation'>, callback: AsyncCallback<void>): void; /** - * Set the system bar to have visible. + * Sets whether to show the system bar of the main window. * - * @param { Array<'status' | 'navigation'> } names - The set of system bar + * @param { Array<'status' | 'navigation'> } names - The set of system bar types * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -4861,9 +5804,9 @@ declare namespace window { * @since 9 */ /** - * Set the system bar to have visible. + * Sets whether to show the system bar of the main window. * - * @param { Array<'status' | 'navigation'> } names - The set of system bar + * @param { Array<'status' | 'navigation'> } names - The set of system bar types * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -4874,9 +5817,9 @@ declare namespace window { * @since 10 */ /** - * Set the system bar to have visible. + * Sets whether to show the system bar of the main window. * - * @param { Array<'status' | 'navigation'> } names - The set of system bar + * @param { Array<'status' | 'navigation'> } names - The set of system bar types * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types. @@ -4885,14 +5828,15 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowSystemBarEnable(names: Array<'status' | 'navigation'>): Promise<void>; /** - * Set specific system bar to have visible. + * Sets whether to show the specific system bar of the main window. * - * @param {SpecificSystemBar} name - the set of system bar + * @param {SpecificSystemBar} name - Type of the system bar to be shown or hidden * @param {boolean} enable - Show specific system bar if true, or hide specific system bar if false. * @returns { Promise<void> } Promise that returns no value. * @throws {BusinessError} 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; @@ -4904,9 +5848,9 @@ declare namespace window { * @since 11 */ /** - * Set specific system bar to have visible. + * Sets whether to show the specific system bar of the main window. * - * @param {SpecificSystemBar} name - the set of system bar + * @param {SpecificSystemBar} name - Type of the system bar to be shown or hidden * @param {boolean} enable - Show specific system bar if true, or hide specific system bar if false. * @param {boolean} enableAnimation - Whether using animation during this setting, using animation if true or not using animation if false. * @returns { Promise<void> } Promise that returns no value. @@ -4917,7 +5861,8 @@ declare namespace window { * @syscap SystemCapability.Window.SessionManager * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setSpecificSystemBarEnabled(name: SpecificSystemBar, enable: boolean, enableAnimation?: boolean): Promise<void>; @@ -5003,14 +5948,30 @@ declare namespace window { * @atomicservice * @since 12 */ - setWindowSystemBarProperties(systemBarProperties: SystemBarProperties): Promise<void>; - /** - * Get the properties of system bar + * Set the properties of system bar * - * @returns { SystemBarProperties } Return system bar properties. - * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @param { SystemBarProperties } systemBarProperties - The properties of system bar + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + setWindowSystemBarProperties(systemBarProperties: SystemBarProperties): Promise<void>; + + /** + * Get the properties of system bar + * + * @returns { SystemBarProperties } Return system bar properties. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice @@ -5019,9 +5980,9 @@ declare namespace window { getWindowSystemBarProperties(): SystemBarProperties; /** - * Set the color of the status bar. + * Set the content color of the status bar. * - * @param { ColorMetrics } color - Color metrics. + * @param { ColorMetrics } color - Content color of the status bar * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -5104,7 +6065,9 @@ declare namespace window { * @since 10 */ /** - * Set the preferred orientation config of the window + * Sets the preferred orientation for the main window. + * This API uses a promise to return the result. + * It does not take effect on devices that do not support rotation with the sensor, on 2-in-1 devices or for the child window. * * @param { Orientation } orientation - The orientation config of the window * @returns { Promise<void> } Promise that returns no value. @@ -5115,7 +6078,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setPreferredOrientation(orientation: Orientation): Promise<void>; @@ -5145,7 +6109,9 @@ declare namespace window { * @since 10 */ /** - * Set the preferred orientation config of the window + * Sets the preferred orientation for the main window. + * This API uses an asynchronous callback to return the result. + * It does not take effect on devices that do not support rotation with the sensor, on 2-in-1 devices or for the child window. * * @param { Orientation } orientation - The orientation config of the window * @param { AsyncCallback<void> } callback - Callback used to return the result. @@ -5156,12 +6122,14 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setPreferredOrientation(orientation: Orientation, callback: AsyncCallback<void>): void; /** - * Get the preferred orientation config of the window + * Obtains the orientation of the main window. + * This API can be called only by the main window. * * @returns { Orientation } orientation - The orientation config of the window * @throws { BusinessError } 1300002 - This window state is abnormal. @@ -5172,13 +6140,16 @@ declare namespace window { getPreferredOrientation(): Orientation; /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to this window, and transfers the state attribute to the page through a local storage. + * This API uses a promise to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path - Path of the page to which the content will be loaded * @param { LocalStorage } storage - The data object shared within the content instance loaded by the window * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core @@ -5186,46 +6157,53 @@ declare namespace window { * @since 9 */ /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to this window, and transfers the state attribute to the page through a local storage. + * This API uses a promise to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path - Path of the page to which the content will be loaded * @param { LocalStorage } storage - The data object shared within the content instance loaded by the window * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @since 10 */ /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to this window, and transfers the state attribute to the page through a local storage. + * This API uses a promise to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * - * @param { string } path - Path of the page to which the content will be loaded - * @param { LocalStorage } storage - The data object shared within the content instance loaded by the window + * @param { string } path - Path of the page from which the content will be loaded. The path is configured in the main_pages.json file of the project. + * @param { LocalStorage } storage - Page-level UI state storage unit, which is used to transfer the state attribute for the page. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ loadContent(path: string, storage: LocalStorage, callback: AsyncCallback<void>): void; /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to this window, and transfers the state attribute to the page through a local storage. + * This API uses a promise to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path - Path of the page to which the content will be loaded * @param { LocalStorage } storage - The data object shared within the content instance loaded by the window * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core @@ -5233,40 +6211,45 @@ declare namespace window { * @since 9 */ /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to this window, and transfers the state attribute to the page through a local storage. + * This API uses a promise to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path - Path of the page to which the content will be loaded * @param { LocalStorage } storage - The data object shared within the content instance loaded by the window * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @since 10 */ /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to this window, and transfers the state attribute to the page through a local storage. + * This API uses a promise to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * - * @param { string } path - Path of the page to which the content will be loaded - * @param { LocalStorage } storage - The data object shared within the content instance loaded by the window + * @param { string } path - Path of the page from which the content will be loaded. The path is configured in the main_pages.json file of the project. + * @param { LocalStorage } storage - Page-level UI state storage unit, which is used to transfer the state attribute for the page. * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ loadContent(path: string, storage: LocalStorage): Promise<void>; /** - * Loads content + * Loads content from a page to this window. This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path - Path of the page to which the content will be loaded * @param { AsyncCallback<void> } callback - Callback used to return the result. @@ -5278,7 +6261,8 @@ declare namespace window { loadContent(path: string, callback: AsyncCallback<void>): void; /** - * Loads content + * Loads content from a page to this window. This API uses a promise to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path - Path of the page to which the content will be loaded * @returns { Promise<void> } Promise that returns no value. @@ -5303,15 +6287,16 @@ declare namespace window { * @since 10 */ /** - * Get the UIContext associate with the window content. + * Obtain a UIContext instance. * - * @returns { UIContext } the object of UIContext. + * @returns { UIContext } UIContext instance obtained. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getUIContext() : UIContext; @@ -5335,24 +6320,26 @@ declare namespace window { * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @since 10 */ /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to this window. + * This API uses an asynchronous callback to return the result. * - * @param { string } path - Path of the page to which the content will be loaded + * @param { string } path - Path of the page from which the content will be loaded. + * In the stage model, the path is configured in the main_pages.json file of the project. + * In the FA model, the path is configured in the config.json file of the project. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setUIContent(path: string, callback: AsyncCallback<void>): void; @@ -5376,32 +6363,37 @@ declare namespace window { * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @since 10 */ /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to this window. + * This API uses a promise to return the result. * - * @param { string } path - Path of the page to which the content will be loaded + * @param { string } path - Path of the page from which the content will be loaded. + * In the stage model, the path is configured in the main_pages.json file of the project. + * In the FA model, the path is configured in the config.json file of the project. * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setUIContent(path: string): Promise<void>; /** - * Loads content by named router + * Loads the content of a named route page to this window, and transfers the state attribute to the page through a local storage. + * This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. + * Exercise caution when using it. * - * @param { string } name - name of the page to which the content will be loaded. - * @param { LocalStorage } storage - The data object shared within the content instance loaded by the window. + * @param { string } name - Name of the named route page. + * @param { LocalStorage } storage - Page-level UI state storage unit, which is used to transfer the state attribute for the page. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -5416,9 +6408,12 @@ declare namespace window { loadContentByName(name: string, storage: LocalStorage, callback: AsyncCallback<void>): void; /** - * Loads content by named router + * Loads the content of a named route page to this window, and transfers the state attribute to the page through a local storage. + * This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. + * Exercise caution when using it. * - * @param { string } name - name of the page to which the content will be loaded. + * @param { string } name - Name of the named route page. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -5433,10 +6428,13 @@ declare namespace window { loadContentByName(name: string, callback: AsyncCallback<void>): void; /** - * Loads content by named router + * Loads the content of a named route page to this window, and transfers the state attribute to the page through a local storage. + * This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. + * Exercise caution when using it. * - * @param { string } name - name of the page to which the content will be loaded. - * @param { LocalStorage } storage - The data object shared within the content instance loaded by the window. + * @param { string } name - Name of the named route page. + * @param { LocalStorage } storage - Page-level UI state storage unit, which is used to transfer the state attribute for the page. * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -5497,7 +6495,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ isWindowShowing(): boolean; @@ -5535,7 +6534,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'windowSizeChange', callback: Callback<Size>): void; @@ -5570,7 +6570,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'windowSizeChange', callback?: Callback<Size>): void; @@ -5607,7 +6608,8 @@ declare namespace window { * 2. Incorrect parameter types; * 3. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Register the callback of avoidAreaChange @@ -5619,7 +6621,8 @@ declare namespace window { * 3. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Register the callback of avoidAreaChange @@ -5633,6 +6636,20 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Register the callback of avoidAreaChange + * + * @param { 'avoidAreaChange' } type - The value is fixed at 'avoidAreaChange', indicating the event of changes to the avoid area. + * @param { Callback<AvoidAreaOptions> } callback - Callback used to return the area. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ on(type: 'avoidAreaChange', callback: Callback<AvoidAreaOptions>): void; /** @@ -5643,7 +6660,8 @@ declare namespace window { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; * 2. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Unregister the callback of avoidAreaChange @@ -5654,7 +6672,8 @@ declare namespace window { * 2. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Unregister the callback of avoidAreaChange @@ -5667,13 +6686,26 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Unregister the callback of avoidAreaChange + * + * @param { 'avoidAreaChange' } type - The value is fixed at 'avoidAreaChange', indicating the event of changes to the avoid area. + * @param { Callback<AvoidAreaOptions> } callback - Callback used to return the area. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; + * 2. Parameter verification failed. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ off(type: 'avoidAreaChange', callback?: Callback<AvoidAreaOptions>): void; /** * Register the callback of keyboardHeightChange * * @param { 'keyboardHeightChange' } type - The value is fixed at 'keyboardHeightChange', indicating the keyboard height change event. - * @param { Callback<number> } callback - Callback used to return the current keyboard height. + * @param { Callback<number> } callback - Callback used to return the current keyboard height, which is an integer, in px. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. @@ -5684,13 +6716,14 @@ declare namespace window { * Register the callback of keyboardHeightChange * * @param { 'keyboardHeightChange' } type - The value is fixed at 'keyboardHeightChange', indicating the keyboard height change event. - * @param { Callback<number> } callback - Callback used to return the current keyboard height. + * @param { Callback<number> } callback - Callback used to return the current keyboard height, which is an integer, in px. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'keyboardHeightChange', callback: Callback<number>): void; @@ -5698,7 +6731,9 @@ declare namespace window { * Unregister the callback of keyboardHeightChange * * @param { 'keyboardHeightChange' } type - The value is fixed at 'keyboardHeightChange', indicating the keyboard height change event. - * @param { Callback<number> } callback - Callback used to return the current keyboard height. + * @param { Callback<number> } callback - Callback used to return the current keyboard height, which is an integer, in px. + * If a value is passed in, the corresponding subscription is canceled. + * If no value is passed in, all subscriptions to the specified event are canceled. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core @@ -5708,28 +6743,81 @@ declare namespace window { * Unregister the callback of keyboardHeightChange * * @param { 'keyboardHeightChange' } type - The value is fixed at 'keyboardHeightChange', indicating the keyboard height change event. - * @param { Callback<number> } callback - Callback used to return the current keyboard height. + * @param { Callback<number> } callback - Callback used to return the current keyboard height, which is an integer, in px. + * If a value is passed in, the corresponding subscription is canceled. + * If no value is passed in, all subscriptions to the specified event are canceled. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'keyboardHeightChange', callback?: Callback<number>): void; + /** + * Register the callback of keyboardWillShow + * + * @param { 'keyboardWillShow' } type - The value is fixed at 'keyboardWillShow', indicating the start of the keyboard show animation event. + * @param { Callback<KeyboardInfo> } callback - Callback invoked before the keyboard show animation start. + * @throws { BusinessError } 801 - Capability not supported. Function keyboardWillShow can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + on(type: 'keyboardWillShow', callback: Callback<KeyboardInfo>): void; + + /** + * Unregister the callback of keyboardWillShow + * + * @param { 'keyboardWillShow' } type - The value is fixed at 'keyboardWillShow', indicating the start of the keyboard show animation event. + * @param { Callback<KeyboardInfo> } callback - Callback invoked before the keyboard show animation start. + * @throws { BusinessError } 801 - Capability not supported. Function keyboardWillShow can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + off(type: 'keyboardWillShow', callback?: Callback<KeyboardInfo>): void; + + /** + * Register the callback of keyboardWillHide + * + * @param { 'keyboardWillHide' } type - The value is fixed at 'keyboardWillHide', indicating the start of the keyboard hide animation event. + * @param { Callback<KeyboardInfo> } callback - Callback invoked before the keyboard hide animation start. + * @throws { BusinessError } 801 - Capability not supported. Function keyboardWillHide can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + on(type: 'keyboardWillHide', callback: Callback<KeyboardInfo>): void; + + /** + * Unregister the callback of keyboardWillHide + * + * @param { 'keyboardWillHide' } type - The value is fixed at 'keyboardWillHide', indicating the start of the keyboard hide animation event. + * @param { Callback<KeyboardInfo> } callback - Callback invoked before the keyboard hide animation start. + * @throws { BusinessError } 801 - Capability not supported. Function keyboardWillHide can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + off(type: 'keyboardWillHide', callback?: Callback<KeyboardInfo>): void; + /** * Register the callback of keyboardDidShow * * @param { 'keyboardDidShow' } type - The value is fixed at 'keyboardDidShow', indicating the completion of the keyboard show animation event. * @param { Callback<KeyboardInfo> } callback - Callback invoked when the keyboard show animation is completed. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Function keyboardDidShow can not work correctly due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'keyboardDidShow', callback: Callback<KeyboardInfo>): void; @@ -5738,13 +6826,12 @@ declare namespace window { * * @param { 'keyboardDidShow' } type - The value is fixed at 'keyboardDidShow', indicating the completion of the keyboard show animation event. * @param { Callback<KeyboardInfo> } callback - Callback invoked when the keyboard show animation is completed. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; - * 2. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Function keyboardDidShow can not work correctly due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'keyboardDidShow', callback?: Callback<KeyboardInfo>): void; @@ -5753,14 +6840,12 @@ declare namespace window { * * @param { 'keyboardDidHide' } type - The value is fixed at 'keyboardDidHide', indicating the completion of the keyboard hide animation event. * @param { Callback<KeyboardInfo> } callback - Callback invoked when the keyboard hide animation is completed. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Function keyboardDidHide can not work correctly due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'keyboardDidHide', callback: Callback<KeyboardInfo>): void; @@ -5769,18 +6854,17 @@ declare namespace window { * * @param { 'keyboardDidHide' } type - The value is fixed at 'keyboardDidHide', indicating the completion of the keyboard hide animation event. * @param { Callback<KeyboardInfo> } callback - Callback invoked when the keyboard hide animation is completed. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Incorrect parameter types; - * 2. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Function keyboardDidHide can not work correctly due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'keyboardDidHide', callback?: Callback<KeyboardInfo>): void; /** - * Touch outside callback on. + * Subscribes to the touch event outside this window. * * @param { 'touchOutside' } type - The value is fixed at 'touchOutside', indicating the click event outside this window. * @param { Callback<void> } callback - Callback used to return the click event outside this window. @@ -5789,12 +6873,13 @@ declare namespace window { * 3. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'touchOutside', callback: Callback<void>): void; /** - * Touch outside callback off. + * Unsubscribes from the touch event outside this window. * * @param { 'touchOutside' } type - The value is fixed at 'touchOutside', indicating the click event outside this window. * @param { Callback<void> } callback - Callback used to return the click event outside this window. @@ -5802,7 +6887,8 @@ declare namespace window { * 2. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'touchOutside', callback?: Callback<void>): void; @@ -5852,10 +6938,11 @@ declare namespace window { * @since 11 */ /** - * Window visibility change callback on. + * Subscribes to the visibility status change event of this window. * - * @param { 'windowVisibilityChange' } type - The value is fixed at 'windowVisibilityChange', indicating the window visibility change. - * @param { Callback<boolean> } callback - Callback used to notify the window visibility change. + * @param { 'windowVisibilityChange' } type - Event type. The value is fixed at 'windowVisibilityChange', indicating the visibility status change event. + * @param { Callback<boolean> } callback - Callback used to return the visibility status of the window, which is a Boolean value. + * The value true means that the window is visible, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. @@ -5864,7 +6951,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'windowVisibilityChange', callback: Callback<boolean>): void; @@ -5882,10 +6970,12 @@ declare namespace window { * @since 11 */ /** - * Window visibility change callback off. + * Unsubscribes from the visibility status change event of this window. * - * @param { 'windowVisibilityChange' } type - The value is fixed at 'windowVisibilityChange', indicating the window visibility change. - * @param { Callback<boolean> } callback - Callback used to notify the window visibility change. + * @param { 'windowVisibilityChange' } type - Event type. The value is fixed at 'windowVisibilityChange', indicating the visibility status change event. + * @param { Callback<boolean> } callback - Callback used to return the visibility status of the window. + * If a value is passed in, the corresponding subscription is canceled. + * If no value is passed in, all subscriptions to the specified event are canceled. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -5893,7 +6983,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'windowVisibilityChange', callback?: Callback<boolean>): void; @@ -5929,7 +7020,8 @@ declare namespace window { off(type: 'systemDensityChange', callback?: Callback<number>): void; /** - * Register the callback function that has no interaction for a long time. + * Subscribes to non-interaction events in a window within the specified period. + * Interaction events include physical keyboard input events and screen touch/click events, but not soft keyboard input events. * * @param { 'noInteractionDetected' } type - The value is fixed at 'noInteractionDetected', indicating the window has no interaction for a long time. * @param { number } timeout - The timeout(in seconds) of no interaction detection. @@ -5942,12 +7034,14 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'noInteractionDetected', timeout: number, callback: Callback<void>): void; /** - * Unregister the callback function that has no interaction for a long time. + * Unsubscribes from non-interaction events in a window within the specified period. + * Interaction events include physical keyboard input events and screen touch/click events, but not soft keyboard input events. * * @param { 'noInteractionDetected' } type - The value is fixed at 'noInteractionDetected', indicating the window has no interaction for a long time. * @param { Callback<void> } callback - Callback used to notify the window has no interaction for a long time. @@ -5958,7 +7052,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'noInteractionDetected', callback?: Callback<void>): void; @@ -5971,7 +7066,8 @@ declare namespace window { * 2. Incorrect parameter types; * 3. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Register the callback of screenshot, only the focused window called back @@ -5983,7 +7079,8 @@ declare namespace window { * 3. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'screenshot', callback: Callback<void>): void; @@ -5995,7 +7092,8 @@ declare namespace window { * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Unregister the callback of screenshot @@ -6006,10 +7104,35 @@ declare namespace window { * 2. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'screenshot', callback?: Callback<void>): void; + /** + * Register the callback of screenshot app event + * + * @param { 'screenshotAppEvent' } type - The value is fixed at 'screenshotAppEvent', indicating the screenshot app event. + * @param { Callback<ScreenshotEventType> } callback - Callback invoked when a screenshot app event occurs. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @since 20 + */ + on(type: 'screenshotAppEvent', callback: Callback<ScreenshotEventType>): void; + + /** + * Unregister the callback of screenshot app event + * + * @param { 'screenshotAppEvent' } type - The value is fixed at 'screenshotAppEvent', indicating the screenshot app event. + * @param { Callback<ScreenshotEventType> } callback - Callback invoked when a screenshot app event occurs. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @since 20 + */ + off(type: 'screenshotAppEvent', callback?: Callback<ScreenshotEventType>): void; + /** * Register the callback of dialogTargetTouch * @@ -6022,7 +7145,7 @@ declare namespace window { * @since 10 */ /** - * Register the callback of dialogTargetTouch + * Subscribes to click or touch events in a window covered by a modal window. This API takes effect only when it is called by a modal window. * * @param { 'dialogTargetTouch' } type - The value is fixed at 'dialogTargetTouch', indicating the click event of the target window in the modal window mode. * @param { Callback<void> } callback - Callback invoked when the click event occurs in the target window of the modal window mode. @@ -6031,7 +7154,8 @@ declare namespace window { * 3. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'dialogTargetTouch', callback: Callback<void>): void; @@ -6047,7 +7171,7 @@ declare namespace window { * @since 10 */ /** - * Unregister the callback of dialogTargetTouch + * Unsubscribes from the touch event of the target window in the modal window mode. * * @param { 'dialogTargetTouch' } type - The value is fixed at 'dialogTargetTouch', * indicating the click event of the target window in the modal window mode. @@ -6056,7 +7180,8 @@ declare namespace window { * 2. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'dialogTargetTouch', callback?: Callback<void>): void; @@ -6072,17 +7197,18 @@ declare namespace window { * @since 10 */ /** - * Register the callback of windowEvent + * Subscribes to the window lifecycle change event. * - * @param { 'windowEvent' } type - The value is fixed at 'windowEvent', indicating the window lifecycle change event. - * @param { Callback<WindowEventType> } callback - the callback of window event + * @param { 'windowEvent' } type - Event type. The value is fixed at 'windowEvent', indicating the window lifecycle change event. + * @param { Callback<WindowEventType> } callback - Callback used to return the window lifecycle state. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'windowEvent', callback: Callback<WindowEventType>): void; @@ -6097,16 +7223,19 @@ declare namespace window { * @since 10 */ /** - * Unregister the callback of windowEvent + * Unsubscribes from the window lifecycle change event. * - * @param { 'windowEvent' } type - The value is fixed at 'windowEvent', indicating the window lifecycle change event. - * @param { Callback<WindowEventType> } callback - the callback of window event + * @param { 'windowEvent' } type - Event type. The value is fixed at 'windowEvent', indicating the window lifecycle change event. + * @param { Callback<WindowEventType> } callback - Callback used to return the window lifecycle state. + * If a value is passed in, the corresponding subscription is canceled. + * If no value is passed in, all subscriptions to the specified event are canceled. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'windowEvent', callback?: Callback<WindowEventType>): void; @@ -6135,6 +7264,21 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Register the callback of windowStatusChange + * + * @param { 'windowStatusChange' } type - The value is fixed at 'windowStatusChange', indicating the window status change event. + * @param { Callback<WindowStatusType> } callback - Callback used to return the window status. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; + * 3. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ on(type: 'windowStatusChange', callback: Callback<WindowStatusType>): void; /** @@ -6160,13 +7304,56 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Unregister the callback of windowStatusChange + * + * @param { 'windowStatusChange' } type - The value is fixed at 'windowStatusChange', indicating the window status change event. + * @param { Callback<WindowStatusType> } callback - Callback used to return the window status. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; + * 2. Parameter verification failed. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @syscap SystemCapability.Window.SessionManager + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ off(type: 'windowStatusChange', callback?: Callback<WindowStatusType>): void; /** - * Register the callback of subWindowClose + * Register the callback of windowStatusDidChange + * + * @param { 'windowStatusDidChange' } type - The value is fixed at 'windowStatusDidChange', indicating the window status change event. + * @param { Callback<WindowStatusType> } callback - Callback used to return the window status. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + on(type: 'windowStatusDidChange', callback: Callback<WindowStatusType>): void; + + /** + * Unregister the callback of windowStatusDidChange + * + * @param { 'windowStatusDidChange' } type - The value is fixed at 'windowStatusDidChange', indicating the window status change event. + * @param { Callback<WindowStatusType> } [callback] - Callback used to return the window status. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + off(type: 'windowStatusDidChange', callback?: Callback<WindowStatusType>): void; + + /** + * Subscribes to the event indicating that the child window is closed. + * This event is triggered only when the user clicks the system-provided close button in the upper right corner to close the child window. + * It is not triggered when the child window is closed in other ways. * - * @param { 'subWindowClose' } type - The value is fixed at 'subWindowClose', indicating the subwindow close event. - * @param { Callback<void> } callback - Callback used to return whether to terminate the subwindow close process. + * @param { 'subWindowClose' } type - Event type. The value is fixed at 'subWindowClose', indicating the child window close event. + * @param { Callback<void> } callback - Callback invoked when the close button in the upper right corner of the child window is clicked. + * The internal logic of the callback function requires a return value of the Boolean type. + * The return value determines whether to continue to close the child window. + * The value true means not to close the child window, and false means to continue to close the child window. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -6179,10 +7366,15 @@ declare namespace window { on(type: 'subWindowClose', callback: Callback<void>): void; /** - * Unregister the callback of subWindowClose + * Unsubscribes from the event indicating that the child window is closed. * - * @param { 'subWindowClose' } type - The value is fixed at 'subWindowClose', indicating the subwindow close event. - * @param { Callback<void> } callback - Callback used to return whether to terminate the subwindow close process. + * @param { 'subWindowClose' } type - Event type. The value is fixed at 'subWindowClose', indicating the child window close event. + * @param { Callback<void> } callback - Callback invoked when the close button in the upper right corner of the child window is clicked. + * The internal logic of the callback function requires a return value of the Boolean type. + * The return value determines whether to continue to close the child window. + * The value true means not to close the child window, and false means to continue to close the child window. + * If a value is passed in, the corresponding subscription is canceled. + * If no value is passed in, all subscriptions to the specified event are canceled. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -6195,10 +7387,15 @@ declare namespace window { off(type: 'subWindowClose', callback?: Callback<void>): void; /** - * Asynchronous callback event for closing the registration window. + * Subscribes to the event indicating that the main window or child window will be closed. + * This event is triggered only when the user clicks the close button in the system-provided title bar to close the window. + * It is not triggered when the window is closed in other ways. * - * @param { 'windowWillClose' } type - The value is fixed at 'windowWillClose', indicating the window close event. - * @param { Callback<void, Promise<boolean>> } callback - The callback function returns a Promise<boolean> to decide whether to close the window. + * @param { 'windowWillClose' } type - Event type. The value is fixed at 'windowWillClose', indicating the window close event. + * @param { Callback<void, Promise<boolean>> } callback - Callback used to when the close button in the upper right corner of the window is clicked. + * The internal logic of the callback function requires a return value of the Promise type. + * In the returned Promise function, resolve(true) means not to close the window, + * and resolve(false) or reject means to continue to close the window. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -6211,10 +7408,14 @@ declare namespace window { on(type: 'windowWillClose', callback: Callback<void, Promise<boolean>>): void; /** - * Cancel the asynchronous callback event for closing the registration window. + * Unsubscribes from the event indicating that the main window or child window will be closed. * - * @param { 'windowWillClose' } type - The value is fixed at 'windowWillClose', indicating the window close event. - * @param { Callback<void, Promise<boolean>> } callback - The callback function returns a Promise<boolean> to decide whether to close the window. + * @param { 'windowWillClose' } type - Event type. The value is fixed at 'windowWillClose', indicating the window close event. + * @param { Callback<void, Promise<boolean>> } callback - Callback used to when the close button in the upper right corner of the window is clicked. + * The internal logic of the callback function requires a return value of the Promise type. + * It does not return any parameter. In the returned Promise function, + * resolve(true) means not to close the window, + * and resolve(false) or reject means to continue to close the window. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -6239,7 +7440,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'windowHighlightChange', callback: Callback<boolean>): void; @@ -6256,7 +7458,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 15 + * @since arkts {'1.1':'15', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'windowHighlightChange', callback?: Callback<boolean>): void; @@ -6381,9 +7584,10 @@ declare namespace window { ): void; /** - * Set whether the dialog window responds to back gesture. + * Sets whether the modal window responds to the back gesture event. An error code is returned if this API is called for a non-modal window. * - * @param { boolean } enabled - Responds to back gesture if true, or ignore back gesture if false. + * @param { boolean } enabled - Whether to respond to the back gesture event. + * The value true means to respond to the back gesture event and trigger the onBackPress callback, and false means the opposite. * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -6436,7 +7640,8 @@ declare namespace window { * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isWindowSupportWideGamut(): Promise<boolean>; @@ -6455,7 +7660,8 @@ declare namespace window { * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ isWindowSupportWideGamut(callback: AsyncCallback<boolean>): void; @@ -6520,7 +7726,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowColorSpace(colorSpace: ColorSpace): Promise<void>; @@ -6561,7 +7768,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowColorSpace(colorSpace: ColorSpace, callback: AsyncCallback<void>): void; @@ -6683,7 +7891,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowBackgroundColor(color: string | ColorMetrics): void; @@ -6730,10 +7939,11 @@ declare namespace window { setTopmost(isTopmost: boolean): Promise<void>; /** - * Set whether the main window is topmost. + * Places the main window above all the other windows of the application. * * @permission ohos.permission.WINDOW_TOPMOST - * @param { boolean } isWindowTopmost - Main window is topmost if true. + * @param { boolean } isWindowTopmost - Whether to pin the main window on top. + * The value true means to pin the main window on top, and false means the opposite. * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; @@ -6898,7 +8108,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowFocusable(isFocusable: boolean): Promise<void>; @@ -6925,7 +8136,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowFocusable(isFocusable: boolean, callback: AsyncCallback<void>): void; @@ -7039,7 +8251,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowKeepScreenOn(isKeepScreenOn: boolean): Promise<void>; @@ -7080,7 +8293,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowKeepScreenOn(isKeepScreenOn: boolean, callback: AsyncCallback<void>): void; @@ -7184,6 +8398,22 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Sets whether is private mode or not. + * + * @permission ohos.permission.PRIVACY_WINDOW + * @param { boolean } isPrivacyMode in private mode if true, or not if false. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ setWindowPrivacyMode(isPrivacyMode: boolean): Promise<void>; /** @@ -7213,6 +8443,22 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Sets whether is private mode or not. + * + * @permission ohos.permission.PRIVACY_WINDOW + * @param { boolean } isPrivacyMode in private mode if true, or not if false. + * @param { AsyncCallback<void> } callback Callback used to return the result. + * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ setWindowPrivacyMode(isPrivacyMode: boolean, callback: AsyncCallback<void>): void; /** @@ -7287,7 +8533,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowTouchable(isTouchable: boolean): Promise<void>; @@ -7314,7 +8561,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowTouchable(isTouchable: boolean, callback: AsyncCallback<void>): void; @@ -7373,7 +8621,8 @@ declare namespace window { * @param { AsyncCallback<image.PixelMap> } callback Callback used to return the result. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Obtains snapshot of window @@ -7382,7 +8631,8 @@ declare namespace window { * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ snapshot(callback: AsyncCallback<image.PixelMap>): void; @@ -7392,7 +8642,8 @@ declare namespace window { * @returns { Promise<image.PixelMap> } Promise that returns no value. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ /** * Obtains snapshot of window @@ -7401,10 +8652,23 @@ declare namespace window { * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ snapshot(): Promise<image.PixelMap>; + /** + * Obtains snapshot of window + * + * @returns { image.PixelMap } Return pixel map of snapshot. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300018 - Timeout. + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + snapshotSync(): image.PixelMap; + /** * Obtains snapshot of window even set the privacy mode. * @@ -7431,7 +8695,8 @@ declare namespace window { * @since 9 */ /** - * Sets opacity of window + * Sets the opacity for this window. + * This API can be used only when you customize an animation to be played during the display or hiding of a system window. * * @param { number } opacity Interval is 0.f-1.f. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. @@ -7442,7 +8707,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ opacity(opacity: number): void; @@ -7460,7 +8726,8 @@ declare namespace window { * @since 9 */ /** - * Sets scale options of window. + * Sets the scale parameters for this window. + * This API can be used only when you customize an animation to be played during the display or hiding of a system window. * * @param { ScaleOptions } scaleOptions scale param of window. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. @@ -7471,7 +8738,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ scale(scaleOptions: ScaleOptions): void; @@ -7489,7 +8757,8 @@ declare namespace window { * @since 9 */ /** - * Sets rotate options of window. + * Sets the rotation parameters for this window. + * This API can be used only when you customize an animation to be played during the display or hiding of a system window. * * @param { RotateOptions } rotateOptions rotate param of window. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. @@ -7500,7 +8769,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ rotate(rotateOptions: RotateOptions): void; @@ -7518,7 +8788,8 @@ declare namespace window { * @since 9 */ /** - * Sets translate options of window. + * Sets the translation parameters for this window. + * This API can be used only when you customize an animation to be played during the display or hiding of a system window. * * @param { TranslateOptions } translateOptions translate param of window. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. @@ -7529,7 +8800,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ translate(translateOptions: TranslateOptions): void; @@ -7599,7 +8871,9 @@ declare namespace window { * @since 9 */ /** - * Sets the window backdrop blur radius. + * Blurs the background of this window. + * The window background refers to the lower-layer area covered by the window, which is the same as the window size. + * To make the blur effect visible, you must set the window background transparent by calling setWindowBackgroundColor. * * @param { number } radius the blur radius. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. @@ -7628,7 +8902,7 @@ declare namespace window { * @since 9 */ /** - * Sets the window backdrop blur style. + * Sets the blur style for the background of this window. * * @param { BlurStyle } blurStyle the specified blur style. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. @@ -7660,7 +8934,7 @@ declare namespace window { * @since 9 */ /** - * Sets shadow. + * Sets the shadow for the window borders. * * @param { number } radius the radius of the shadow. * @param { string } color the color of the shadow. @@ -7674,14 +8948,17 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setShadow(radius: number, color?: string, offsetX?: number, offsetY?: number): void; /** - * Sets window shadow radius. + * Sets the blur radius of the shadow on the edges of a child window or floating window. * - * @param { number } radius the radius of the shadow. + * @param { number } radius - Radius of the shadow, measured in px. + * The value is a floating point number greater than or equal to 0.0, + * and the value 0.0 means that the shadow is disabled for the window borders. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. @@ -7690,7 +8967,7 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 17 */ setWindowShadowRadius(radius: number): void; @@ -7708,7 +8985,7 @@ declare namespace window { * @since 9 */ /** - * Sets corner radius. + * Sets the radius of the rounded corners for this window. * * @param { number } cornerRadius the corner radius. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. @@ -7724,9 +9001,11 @@ declare namespace window { setCornerRadius(cornerRadius: number): void; /** - * Sets sub window or floating window corner radius. + * Sets the radius of the rounded corners for a child window or floating window. * - * @param { number } cornerRadius - Indicate the corner radius of the window. + * @param { number } cornerRadius - Radius of the rounded corners, measured in vp. + * The value is a floating point number greater than or equal to 0.0. + * The value 0.0 means that the window does not use rounded corners. * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; @@ -7737,20 +9016,20 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 17 */ setWindowCornerRadius(cornerRadius: number): Promise<void>; /** - * Get sub window or floating window corner radius. + * Obtains the radius of rounded corners of a child window or floating window. * - * @returns { number } - The corner radius of window. + * @returns { number } - Radius of the rounded corner of the child window or floating window, measured in vp. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 17 */ getWindowCornerRadius(): number; @@ -7909,7 +9188,8 @@ declare namespace window { * @throws { BusinessError } 1300008 - The display device is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWaterMarkFlag(enable: boolean, callback: AsyncCallback<void>): void; @@ -7940,7 +9220,8 @@ declare namespace window { * @throws { BusinessError } 1300008 - The display device is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWaterMarkFlag(enable: boolean): Promise<void>; @@ -8027,9 +9308,11 @@ declare namespace window { * @since 11 */ /** - * Minimize app main window and hide app subWindow. + * Minimizes the main window if the caller is the main window. The main window can be restored in the dock bar. For 2-in-1 devices, it can be restored by calling restore(). + * Hides the child window if the caller is a child window. The child window cannot be restored in the dock bar. It can be made visible again by calling showWindow(). + * * - * @param { AsyncCallback<void> } callback - The callback of Minimize. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300003 - This window manager service works abnormally. @@ -8050,9 +9333,10 @@ declare namespace window { * @since 11 */ /** - * Minimize app main window and hide app subWindow. + * Minimizes the main window if the caller is the main window. The main window can be restored in the dock bar. For 2-in-1 devices, it can be restored by calling restore(). + * Hides the child window if the caller is a child window. The child window cannot be restored in the dock bar. It can be made visible again by calling showWindow(). * - * @returns { Promise<void> } - The promise returned by the function. + * @returns { Promise<void> } - Promise that returns no value. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300003 - This window manager service works abnormally. @@ -8075,6 +9359,22 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Maximizes the main window. + * + * @param { ?MaximizePresentation } presentation - Layout when the window is maximized. + * The default value is window.MaximizePresentation.ENTER_IMMERSIVE, + * indicating that the window enters the immersive layout when maximized. + * @returns { Promise<void> } - Promise that returns no value. + * @throws { BusinessError } 801 - Capability not supported. Function maximize can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ maximize(presentation?: MaximizePresentation): Promise<void>; /** @@ -8123,7 +9423,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ hideNonSystemFloatingWindows(shouldHide: boolean, callback: AsyncCallback<void>): void; @@ -8141,7 +9442,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ hideNonSystemFloatingWindows(shouldHide: boolean): Promise<void>; @@ -8249,7 +9551,8 @@ declare namespace window { /** * When get focused, keep the keyboard created by other windows, support system window and app subwindow. * - * @param { boolean } keepKeyboardFlag - keep the keyboard if true, otherwise means the opposite. + * @param { boolean } keepKeyboardFlag - Whether to keep the soft keyboard created by others. + * The value true means to keep the soft keyboard, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -8257,7 +9560,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ keepKeyboardOnFocus(keepKeyboardFlag: boolean): void; @@ -8272,22 +9576,24 @@ declare namespace window { * @since 11 */ /** - * Recover app main window. + * Restores the main window from the full-screen, maximized, or split-screen mode to a floating window, + * and restores the window size and position to those before the full-screen, maximized, or split-screen mode is entered. * - * @returns { Promise<void> } - The promise returned by the function. + * @returns { Promise<void> } - Promise that returns no value. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300001 - Repeated operation. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ recover(): Promise<void>; /** - * After the app main window is minimized, if the Ability is not in the background state, you can restore app main window. + * Restores the main window from minimization to the foreground, returning it to its size and position before it is minimized. * - * @returns { Promise<void> } - The promise returned by the function. + * @returns { Promise<void> } - Promise that returns no value. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300003 - This window manager service works abnormally. @@ -8323,12 +9629,25 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Sets whether the title bar is visible in the window. + * + * @param { boolean } isVisible - Whether the title bar is visible. The value true means that the title bar is visible and false means the opposite. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ setWindowDecorVisible(isVisible: boolean): void; /** - * Get the visibility of the window decor. + * Checks whether the title bar of this window is visible. * - * @returns { boolean } - The visibility of window decor, true if the decor is visible, otherwise means the. + * @returns { boolean } - Check result. The value true means that the title bar is visible, and false means the opposite. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.Window.SessionManager @@ -8338,9 +9657,10 @@ declare namespace window { getWindowDecorVisible(): boolean; /** - * Set whether window can be moved by drag title. + * Enables or disables the capability to move the window (either main window or child window) by dragging its title bar and to maximize the window with a double-click. * - * @param { boolean } enabled - Enable the window title move if true, otherwise means the opposite. + * @param { boolean } enabled - Whether to enable the capability to move the window by dragging the title bar and to maximize the window with a double-click. + * The value true means to enable the capability, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -8381,6 +9701,23 @@ declare namespace window { * @atomicservice * @since 12 */ + /** + * Enables the modal property of the child window. After the modal property is enabled, + * the parent window does not respond to user interactions until the child window is closed or the child window's modal property is disabled. + * + * @param { boolean } isModal - Whether to enable the modal property of the child window. + * The value true means to enable the modal property, and false means the opposite. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ setSubWindowModal(isModal: boolean): Promise<void>; /** @@ -8398,6 +9735,24 @@ declare namespace window { * @atomicservice * @since 14 */ + /** + * Enables the modal property of the child window. After the modal property is enabled, + * the parent window does not respond to user interactions until the child window is closed or the child window's modal property is disabled. + * + * @param { boolean } isModal - Whether to enable the modal property of the child window. The value true means to enable the modal property, + * and false means the opposite. Currently, this parameter can only be set to true. + * @param { ModalityType } modalityType - Modality type of the child window. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ setSubWindowModal(isModal: boolean, modalityType: ModalityType): Promise<void>; /** @@ -8413,9 +9768,12 @@ declare namespace window { * @since 11 */ /** - * Set the height of the window decor. + * Sets the height of the title bar of this window. + * This API takes effect for the window that has a title bar or a three-button area on 2-in-1 devices. * - * @param { number } height - The height of window decor. + * @param { number } height - Height of the title bar. It takes effect only for the window with the title bar. + * The value is an integer in the range [37,112]. The unit is vp. If a floating point number is passed in, + * the value is rounded down. A value outside the range is invalid. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. @@ -8423,7 +9781,8 @@ declare namespace window { * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setWindowDecorHeight(height: number): void; @@ -8437,21 +9796,23 @@ declare namespace window { * @since 11 */ /** - * Get the height of the window decor. + * Obtains the height of the title bar of this window. + * This API takes effect for the window that has a title bar or a three-button area on 2-in-1 devices. * - * @returns { number } - The height of window decor. + * @returns { number } - Height of the title bar. The value is an integer in the range [37,112]. The unit is vp. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ getWindowDecorHeight(): number; /** - * Set the style of the window decor. + * Sets the button style of the decoration bar. The setting takes effect only for the main window and the child window with the window title enabled. * - * @param { DecorButtonStyle } dectorStyle - The style of window decor. + * @param { DecorButtonStyle } dectorStyle - Button style of the decoration bar. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -8464,9 +9825,10 @@ declare namespace window { setDecorButtonStyle(dectorStyle: DecorButtonStyle): void; /** - * Get the style of the window decor. + * Obtains the button style of the decoration bar. The setting takes effect only for the main window and the child window with the window title enabled. * - * @returns { DecorButtonStyle } - The style of window decor. + * @returns { DecorButtonStyle } - Button style on the decoration bar of the current window. + * The decoration button area is located in the upper right corner of the window. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300003 - This window manager service works abnormally. @@ -8505,9 +9867,9 @@ declare namespace window { * @since 11 */ /** - * Get the area of window title buttons. + * Obtains the rectangle that holds the minimize, maximize, and close buttons on the title bar of the main window or the decorated child window. * - * @returns { TitleButtonRect } - The area of window title buttons. + * @returns { TitleButtonRect } - Rectangle obtained, which is located in the upper right corner of the window. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.Window.SessionManager @@ -8517,11 +9879,11 @@ declare namespace window { getTitleButtonRect(): TitleButtonRect; /** - * Set whether to display the maximize, minimize, split buttons of main window. + * Shows or hides the maximize, minimize, and split-screen buttons on the title bar of the main window. * - * @param { boolean } isMaximizeVisible - Display maximize button if true, or hide maximize button if false. - * @param { boolean } isMinimizeVisible - Display minimize button if true, or hide minimize button if false. - * @param { boolean } isSplitVisible - Display split button if true, or hide split button if false. + * @param { boolean } isMaximizeVisible - Whether to show the maximize button. The value true means to show the button, and false means to hide it. + * @param { boolean } isMinimizeVisible - Whether to show the minimize button. The value true means to show the button, and false means to hide it. + * @param { boolean } isSplitVisible - Whether to show the split-screen button. The value true means to show the button, and false means to hide it. * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -8535,11 +9897,12 @@ declare namespace window { setTitleButtonVisible(isMaximizeVisible: boolean, isMinimizeVisible: boolean, isSplitVisible: boolean): void; /** - * Set whether to display the maximize, minimize, close buttons of main window. + * Shows or hides the maximize, minimize, and close buttons on the title bar of the main window. * - * @param { boolean } isMaximizeButtonVisible - Display maximize button if true, or hide maximize button if false. - * @param { boolean } isMinimizeButtonVisible - Display minimize button if true, or hide minimize button if false. - * @param { boolean } isCloseButtonVisible - Display close button if true, or hide close button if false. + * @param { boolean } isMaximizeButtonVisible - Whether to show the maximize button. The value true means to show the button, and false means the opposite. + * If the maximize button is hidden, the corresponding restore button is also hidden in the maximize scenario. + * @param { boolean } isMinimizeButtonVisible - Whether to show the minimize button. The value true means to show the button, and false means the opposite. + * @param { boolean } isCloseButtonVisible - Whether to show the close button. The value true means to show the button, and false means the opposite. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -8551,18 +9914,6 @@ declare namespace window { */ setWindowTitleButtonVisible(isMaximizeButtonVisible: boolean, isMinimizeButtonVisible: boolean, isCloseButtonVisible?: boolean): void; - /** - * Checks whether the window title buttons is visible. - * - * @returns { boolean } - The value true means the window title buttons is visible, and false means the opposite. - * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. - * @throws { BusinessError } 1300002 - This window state is abnormal. - * @syscap SystemCapability.Window.SessionManager - * @atomicservice - * @since 18 - */ - isWindowTitleButtonVisible(): boolean; - /** * Enable landscape multiWindow * @@ -8576,7 +9927,8 @@ declare namespace window { enableLandscapeMultiWindow(): Promise<void>; /** - * Start moving window. + * Starts moving this window. This API uses a promise to return the result. + * The window moves along with the cursor only when this API is called in the callback function of onTouch, where the event type is TouchType.Down. * * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -8591,10 +9943,15 @@ declare namespace window { startMoving(): Promise<void>; /** - * Start moving window. + * Specifies the cursor position within the window and moves the window. It first adjusts the window to the cursor position before starting to move the window. + * The window moves along with the cursor only when this API is called in the callback function of onTouch, where the event type is TouchType.Down. * - * @param { number } offsetX - Expected pointer position x-axis offset in window when start moving. - * @param { number } offsetY - Expected pointer position y-axis offset in window when start moving. + * @param { number } offsetX - X-axis offset of the cursor position relative to the upper left corner of the window during movement, measured in px. + * This parameter only accepts integer values; any floating-point input will be rounded down. + * Negative values or values exceeding the window width are invalid. The window width can be obtained from WindowProperties. + * @param { number } offsetY - Y-axis offset of the cursor position relative to the upper left corner of the window during movement, measured in px. + * This parameter only accepts integer values; any floating-point input will be rounded down. + * Negative values or values exceeding the window height are invalid. The window height can be obtained from WindowProperties. * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; @@ -8610,7 +9967,7 @@ declare namespace window { startMoving(offsetX: number, offsetY: number): Promise<void>; /** - * Stop moving window. + * Stops window movement when a window is being dragged. This API uses a promise to return the result. * * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -8639,6 +9996,18 @@ declare namespace window { * @systemapi Hide this for inner system use. * @since 14 */ + /** + * Enable drag window. + * + * @param { boolean } enable - The value true means to enable window dragging, and false means the opposite. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ enableDrag(enable: boolean): Promise<void>; /** @@ -8653,6 +10022,42 @@ declare namespace window { */ disableLandscapeMultiWindow(): Promise<void>; + /** + * Set window transition animation + * + * @param { WindowTransitionType } transitionType - Transition animation type. + * @param { TransitionAnimation } animation - Transition animation config. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @throws { BusinessError } 1300016 - Parameter error. Possible cause: 1. Invalid parameter range. 2. Invalid parameter length. + * @syscap SystemCapability.Window.SessionManager + * @stagemodelonly + * @atomicservice + * @since 20 + */ + setWindowTransitionAnimation(transitionType: WindowTransitionType, animation: TransitionAnimation): Promise<void>; + + + /** + * Get window transition animation configuration + * + * @param { WindowTransitionType } transitionType - Transition animation type. + * @returns { TransitionAnimation | undefined } Transition animation with transition type, or undefined if it has not been set. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @throws { BusinessError } 1300016 - Parameter error. Possible cause: 1. Invalid parameter range. 2. Invalid parameter length. + * @syscap SystemCapability.Window.SessionManager + * @stagemodelonly + * @atomicservice + * @since 20 + */ + getWindowTransitionAnimation(transitionType: WindowTransitionType): TransitionAnimation | undefined; + /** * Register the callback of title buttons area change. * @@ -8667,10 +10072,11 @@ declare namespace window { * @since 11 */ /** - * Register the callback of title buttons area change. + * Subscribes to the change event of the rectangle that holds the minimize, maximize, and close buttons on the title bar of the window. * - * @param { 'windowTitleButtonRectChange' } type - The value is fixed at 'windowTitleButtonRectChange', indicating the title buttons area change event. - * @param { Callback<TitleButtonRect> } callback - Callback used to return the current title buttons area. + * @param { 'windowTitleButtonRectChange' } type - Event type. The value is fixed at 'windowTitleButtonRectChange', + * indicating that the change event of the rectangle that holds the minimize, maximize, and close buttons. + * @param { Callback<TitleButtonRect> } callback - Callback used to return the new rectangle. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. @@ -8695,10 +10101,12 @@ declare namespace window { * @since 11 */ /** - * Unregister the callback of title buttons area change. + * Unsubscribes from the change event of the rectangle that holds the minimize, maximize, and close buttons on the title bar of the window. * - * @param { 'windowTitleButtonRectChange' } type - The value is fixed at 'windowTitleButtonRectChange', indicating the title buttons area change event. - * @param { Callback<TitleButtonRect> } callback - Callback used to return the current title buttons area. + * @param { 'windowTitleButtonRectChange' } type - Event type. The value is fixed at 'windowTitleButtonRectChange', + * indicating that the change event of the rectangle that holds the minimize, maximize, and close buttons. + * @param { Callback<TitleButtonRect> } callback - Callback used to return the new rectangle. If a value is passed in, the corresponding subscription is canceled. + * If no value is passed in, all subscriptions to the specified event are canceled. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. @@ -8709,37 +10117,6 @@ declare namespace window { */ off(type: 'windowTitleButtonRectChange', callback?: Callback<TitleButtonRect>): void; - /** - * Register the callback of title buttons visible change. - * - * @param { 'windowTitleButtonVisibleChange' } type - The value is fixed at 'windowTitleButtonVisibleChange', indicating the title buttons visible change event. - * @param { Callback<boolean> } callback - Callback used to return the current title buttons visibility. - * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. - * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. - * @throws { BusinessError } 1300002 - This window state is abnormal. - * @syscap SystemCapability.Window.SessionManager - * @atomicservice - * @since 18 - */ - on(type: 'windowTitleButtonVisibleChange', callback: Callback<boolean>): void; - - /** - * Unregister the callback of title buttons visible change. - * - * @param { 'windowTitleButtonVisibleChange' } type - The value is fixed at 'windowTitleButtonVisibleChange', indicating the title buttons visible change event. - * @param { Callback<boolean> } callback - Callback used to return the current title buttons visibility. - * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; - * 2. Parameter verification failed. - * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. - * @throws { BusinessError } 1300002 - This window state is abnormal. - * @syscap SystemCapability.Window.SessionManager - * @atomicservice - * @since 18 - */ - off(type: 'windowTitleButtonVisibleChange', callback?: Callback<boolean>): void; - /** * Set the window mask of window * @@ -8770,7 +10147,8 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ on(type: 'windowRectChange', callback: Callback<RectChangeOptions>): void; @@ -8786,10 +10164,68 @@ declare namespace window { * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ off(type: 'windowRectChange', callback?: Callback<RectChangeOptions>): void; + /** + * Register the callback of rotation change + * + * @param { 'rotationChange' } type - The value is fixed at 'rotationChange', indicating the window rotation change event. + * @param { RotationChangeCallback<RotationChangeInfo, RotationChangeResult | void> } callback - Callback used to return the rotation change result. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + on(type: 'rotationChange', callback: RotationChangeCallback<RotationChangeInfo, RotationChangeResult | void>): void; + + /** + * Unregister the callback of rotationChange + * + * @param { 'rotationChange' } type - The value is fixed at 'rotationChange', indicating the window rotation change event. + * @param { RotationChangeCallback<RotationChangeInfo, RotationChangeResult | void> } callback - Callback used to return the RectChangeOptions. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + off(type: 'rotationChange', callback?: RotationChangeCallback<RotationChangeInfo, RotationChangeResult | void>): void; + + /** + * UIExtension in window secure limit change callback on. + * + * @param { 'uiExtensionSecureLimitChange' } eventType The value is fixed at 'uiExtensionSecureLimitChange', indicating the UIExtension secure limit change. + * @param { Callback<boolean> } callback Callback used to return the result whether the APP has uiextension secure limit. + * @throws { BusinessError } 801 - Capability not supported.Function on('uiExtensionSecureLimitChange') can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + on(type: 'uiExtensionSecureLimitChange', callback: Callback<boolean>): void; + + /** + * UIExtension in window secure limit change callback off. + * + * @param { 'uiExtensionSecureLimitChange' } eventType The value is fixed at 'uiExtensionSecureLimitChange', indicating the UIExtension secure limit change. + * @param { Callback<boolean> } callback Callback used to return the result whether the APP has uiextension secure limit. + * @throws { BusinessError } 801 - Capability not supported.Function off('uiExtensionSecureLimitChange') can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + off(type: 'uiExtensionSecureLimitChange', callback?: Callback<boolean>): void; + + /** * Set gray scale of window. * @@ -8818,7 +10254,8 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.WindowManager.WindowManager.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setImmersiveModeEnabledState(enabled: boolean): void; @@ -8835,6 +10272,18 @@ declare namespace window { */ getImmersiveModeEnabledState(): boolean; + + /** + * Checks whether the layout is immersive. + * + * @returns { boolean } The value true means that the layout is immersive, and false means the opposite. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + isImmersiveLayout(): boolean; + /** * Get the window status of current window. * @@ -8859,11 +10308,11 @@ declare namespace window { isFocused(): boolean; /** - * Create sub window with options. + * Creates a child window under the main window, another child window, or floating window. * - * @param { string } name - window name of sub window - * @param { SubWindowOptions } options - options of sub window creation - * @returns { Promise<Window> } Promise used to return the subwindow. + * @param { string } name - Name of the child window. + * @param { SubWindowOptions } options - Parameters used for creating the child window. + * @returns { Promise<Window> } Promise used to used to return the child window created. * @throws { BusinessError } 401 - Parameter error. Possible cause: Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. @@ -8881,9 +10330,6 @@ declare namespace window { * * @param { number } windowId - Indicates parent window id. * @returns { Promise<void> } Promise that returns no value. - * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; - * 2. Incorrect parameter types; - * 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300003 - This window manager service works abnormally. @@ -8891,7 +10337,7 @@ declare namespace window { * @throws { BusinessError } 1300009 - The parent window is invaild. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ setParentWindow(windowId: number): Promise<void>; @@ -8905,7 +10351,7 @@ declare namespace window { * @throws { BusinessError } 1300009 - The parent window is invaild. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ getParentWindow(): Window; @@ -8923,7 +10369,7 @@ declare namespace window { * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 16 + * @since 17 */ setFollowParentMultiScreenPolicy(enabled: boolean): Promise<void>; @@ -8942,6 +10388,21 @@ declare namespace window { * @atomicservice * @since 14 */ + /** + * Sets whether to show the window title bar and dock bar when the cursor hovers over the hot zone while the main window is in full-screen mode. + * + * @param { boolean } isTitleHoverShown - Whether to show the window title bar. The value true means to show the window title bar, + * and false means the opposite. The default value is true. + * @param { boolean } isDockHoverShown - Whether to show the dock bar. The value true means to show the dock bar, + * and false means the opposite. The default value is true. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ setTitleAndDockHoverShown(isTitleHoverShown?: boolean, isDockHoverShown?: boolean): Promise<void>; /** @@ -8966,12 +10427,11 @@ declare namespace window { * Set whether window delay raise is enabled. * * @param { boolean } isEnabled - The value true means to enable window delay raise, and false means disable window delay raise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported.function setWindowDelayRaiseOnDrag can not work correctly due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ setWindowDelayRaiseOnDrag(isEnabled: boolean): void; @@ -8998,7 +10458,7 @@ declare namespace window { * Get the zlevel of current sub window. * * @returns { number } - the zlevel of current sub window. - * @throws { BusinessError } 801 - Capability not supported. Function setSubWindowZLevel can not work correctly due to limited device capabilities. + * @throws { BusinessError } 801 - Capability not supported. Function getSubWindowZLevel can not work correctly due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300004 - Unauthorized operation. * @syscap SystemCapability.Window.SessionManager @@ -9006,6 +10466,21 @@ declare namespace window { * @since 18 */ getSubWindowZLevel(): number; + + /** + * Set the policy of key frame when resize by dragging. + * + * @param { KeyFramePolicy } keyFramePolicy - The policy of key frame to set. + * @returns { Promise<KeyFramePolicy> } - Promise is used to return the effective policy of key frame. + * @throws { BusinessError } 801 - Capability not supported. Function setSubWindowZLevel can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300004 - Unauthorized operation. + * @throws { BusinessError } 1300016 - Parameter error. Possible cause: 1. Invalid parameter range. 2. Incorrect parameter format. + * @syscap SystemCapability.Window.SessionManager + * @since 20 + */ + setDragKeyFramePolicy(keyFramePolicy: KeyFramePolicy): Promise<KeyFramePolicy>; } /** @@ -9033,9 +10508,10 @@ declare namespace window { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum WindowStageEventType { + export enum WindowStageEventType { /** * The window stage is running in the foreground. * @@ -9058,7 +10534,8 @@ declare namespace window { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ SHOWN = 1, /** @@ -9083,9 +10560,10 @@ declare namespace window { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - ACTIVE, + ACTIVE = 2, /** * The window stage loses focus. * @@ -9108,9 +10586,10 @@ declare namespace window { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - INACTIVE, + INACTIVE = 3, /** * The window stage is running in the background. * @@ -9133,9 +10612,10 @@ declare namespace window { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - HIDDEN, + HIDDEN = 4, /** * The window stage is interactive in the foreground. * @@ -9143,9 +10623,10 @@ declare namespace window { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - RESUMED, + RESUMED = 5, /** * The window stage is not interactive in the foreground. * @@ -9153,9 +10634,10 @@ declare namespace window { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - PAUSED + PAUSED = 6 } /** @@ -9164,15 +10646,17 @@ declare namespace window { * @enum { number } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum ModalityType { + export enum ModalityType { /** * The value means window modality. * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ WINDOW_MODALITY = 0, /** @@ -9180,29 +10664,53 @@ declare namespace window { * * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ APPLICATION_MODALITY = 1, } + /** - * Options for subwindow creation - * - * @interface SubWindowOptions - * @syscap SystemCapability.Window.SessionManager - * @since 11 - */ - /** - * Options for subwindow creation + * Options for window shown * - * @interface SubWindowOptions + * @interface ShowWindowOptions * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 12 + * @since 20 */ - interface SubWindowOptions { + interface ShowWindowOptions { /** - * Indicates subwindow title + * Indicates whether the window get focus when it is shown + * + * @type { ?boolean } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + focusOnShow?: boolean; + } + + + /** + * Options for subwindow creation + * + * @interface SubWindowOptions + * @syscap SystemCapability.Window.SessionManager + * @since 11 + */ + /** + * Options for subwindow creation + * + * @interface SubWindowOptions + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + export interface SubWindowOptions { + /** + * Indicates subwindow title * * @type { string } * @syscap SystemCapability.Window.SessionManager @@ -9275,7 +10783,7 @@ declare namespace window { * @type { ?boolean } * @syscap SystemCapability.Window.SessionManager * @atomicservice - * @since 18 + * @since 19 */ maximizeSupported?: boolean; /** @@ -9287,6 +10795,16 @@ declare namespace window { * @since 18 */ zLevel?: number; + /** + * Indicates whether subwindow show outline + * + * @type { ?boolean } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + outlineEnabled?: boolean; + } /** * WindowStage @@ -9310,9 +10828,10 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface WindowStage { + export interface WindowStage { /** * Get main window of the stage. * @@ -9335,16 +10854,17 @@ declare namespace window { * @since 10 */ /** - * Get main window of the stage. + * Obtains the main window of this window stage. This API uses a promise to return the result. * - * @returns { Promise<Window> } Callback used to return the subwindow. + * @returns { Promise<Window> } Promise used to return the main window. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getMainWindow(): Promise<Window>; /** @@ -9369,7 +10889,7 @@ declare namespace window { * @since 10 */ /** - * Get main window of the stage. + * Obtains the main window of this window stage. This API uses an asynchronous callback to return the result. * * @param { AsyncCallback<Window> } callback Callback used to return the main window. * @throws { BusinessError } 1300002 - This window state is abnormal. @@ -9378,7 +10898,8 @@ declare namespace window { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getMainWindow(callback: AsyncCallback<Window>): void; /** @@ -9403,16 +10924,17 @@ declare namespace window { * @since 10 */ /** - * Get main window of the stage. + * Obtains the main window of this window stage. * - * @returns { Window } + * @returns { Window } Main window. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getMainWindowSync(): Window; /** @@ -9434,20 +10956,18 @@ declare namespace window { * @returns { Promise<Window> } Promise used to return the subwindow. * @throws { BusinessError } 401 - Parameter error. Possible cause: Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @since 10 */ /** - * Create sub window of the stage. + * Creates a child window for this window stage. This API uses a promise to return the result. * - * @param { string } name window name of sub window - * @returns { Promise<Window> } Promise used to return the subwindow. + * @param { string } name Name of the child window. + * @returns { Promise<Window> } Promise used to return the child window. * @throws { BusinessError } 401 - Parameter error. Possible cause: Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform @@ -9474,20 +10994,18 @@ declare namespace window { * @param { AsyncCallback<Window> } callback Callback used to return the subwindow. * @throws { BusinessError } 401 - Parameter error. Possible cause: Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @since 10 */ /** - * Create sub window of the stage. + * Creates a child window for this window stage. This API uses an asynchronous callback to return the result. * - * @param { string } name window name of sub window - * @param { AsyncCallback<Window> } callback Callback used to return the subwindow. + * @param { string } name Name of the child window. + * @param { AsyncCallback<Window> } callback Callback used to return the child window. * @throws { BusinessError } 401 - Parameter error. Possible cause: Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform @@ -9538,17 +11056,17 @@ declare namespace window { * Get sub window of the stage. * * @returns { Promise<Array<Window>> } - * @throws { BusinessError } 1300005 - This window stage is abnormal. + * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @since 10 */ /** - * Get sub window of the stage. + * Obtains all the child windows of this window stage. This API uses a promise to return the result. * - * @returns { Promise<Array<Window>> } - * @throws { BusinessError } 1300005 - This window stage is abnormal. + * @returns { Promise<Array<Window>> } Promise used to return all the child windows. + * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform @@ -9569,17 +11087,17 @@ declare namespace window { * Get sub window of the stage. * * @param { AsyncCallback<Array<Window>> } callback Callback used to return all the subwindows. - * @throws { BusinessError } 1300005 - This window stage is abnormal. + * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @since 10 */ /** - * Get sub window of the stage. + * Obtains all the child windows of this window stage. This API uses a promise to return the result. * - * @param { AsyncCallback<Array<Window>> } callback Callback used to return all the subwindows. - * @throws { BusinessError } 1300005 - This window stage is abnormal. + * @param { AsyncCallback<Array<Window>> } callback Callback used to return all the child windows. + * @throws { BusinessError } 1300002 - This window state is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform @@ -9588,13 +11106,16 @@ declare namespace window { */ getSubWindow(callback: AsyncCallback<Array<Window>>): void; /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to the main window of this window stage, and transfers the state attribute to the page through a local storage. + * This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path Path of the page to which the content will be loaded * @param { LocalStorage } storage The data object shared within the content instance loaded by the window * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core @@ -9602,45 +11123,53 @@ declare namespace window { * @since 9 */ /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to the main window of this window stage, and transfers the state attribute to the page through a local storage. + * This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path Path of the page to which the content will be loaded * @param { LocalStorage } storage The data object shared within the content instance loaded by the window * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @since 10 */ /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to the main window of this window stage, and transfers the state attribute to the page through a local storage. + * This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path Path of the page to which the content will be loaded * @param { LocalStorage } storage The data object shared within the content instance loaded by the window * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ loadContent(path: string, storage: LocalStorage, callback: AsyncCallback<void>): void; /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to the main window of this window stage, and transfers the state attribute to the page through a local storage. + * This API uses a promise to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path of the page to which the content will be loaded * @param { LocalStorage } storage The data object shared within the content instance loaded by the window * @returns { Promise<void> } * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core @@ -9648,44 +11177,51 @@ declare namespace window { * @since 9 */ /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to the main window of this window stage, and transfers the state attribute to the page through a local storage. + * This API uses a promise to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path of the page to which the content will be loaded * @param { LocalStorage } storage The data object shared within the content instance loaded by the window * @returns { Promise<void> } * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @since 10 */ /** - * Loads content + * Loads the content of a page, with its path in the current project specified, to the main window of this window stage, and transfers the state attribute to the page through a local storage. + * This API uses a promise to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path of the page to which the content will be loaded * @param { LocalStorage } storage The data object shared within the content instance loaded by the window * @returns { Promise<void> } * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ loadContent(path: string, storage?: LocalStorage): Promise<void>; /** - * Loads content + * Loads content from a page to this window stage. This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path of the page to which the content will be loaded * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core @@ -9693,86 +11229,98 @@ declare namespace window { * @since 9 */ /** - * Loads content + * Loads content from a page to this window stage. This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path of the page to which the content will be loaded * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @since 10 */ /** - * Loads content + * Loads content from a page to this window stage. This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. Exercise caution when using it. * * @param { string } path of the page to which the content will be loaded * @param { AsyncCallback<void> } callback Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. + * 3. Invalid path parameter. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300005 - This window stage is abnormal. * @syscap SystemCapability.WindowManager.WindowManager.Core * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ loadContent(path: string, callback: AsyncCallback<void>): void; /** - * Loads content by named router + * Loads the content of a named route page to this window, and transfers the state attribute to the page through a local storage. + * This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. + * Exercise caution when using it. * - * @param { string } name - name of the page to which the content will be loaded. - * @param { LocalStorage } storage - The data object shared within the content instance loaded by the window. + * @param { string } name - Name of the named route page. + * @param { LocalStorage } storage - Page-level UI state storage unit, which is used to transfer the state attribute for the page. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ loadContentByName(name: string, storage: LocalStorage, callback: AsyncCallback<void>): void; /** - * Loads content by named router + * Loads the content of a named route page to this window, and transfers the state attribute to the page through a local storage. + * This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. + * Exercise caution when using it. * - * @param { string } name - name of the page to which the content will be loaded. + * @param { string } name - Name of the named route page. * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ loadContentByName(name: string, callback: AsyncCallback<void>): void; /** - * Loads content by named router + * Loads the content of a named route page to this window, and transfers the state attribute to the page through a local storage. + * This API uses an asynchronous callback to return the result. You are advised to call this API during UIAbility startup. + * If called multiple times, this API will destroy the existing page content (UIContent) before loading the new content. + * Exercise caution when using it. * - * @param { string } name - name of the page to which the content will be loaded. - * @param { LocalStorage } storage - The data object shared within the content instance loaded by the window. + * @param { string } name - Name of the named route page. + * @param { LocalStorage } storage - Page-level UI state storage unit, which is used to transfer the state attribute for the page. * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. * @throws { BusinessError } 1300002 - This window state is abnormal. - * @throws { BusinessError } 1300003 - This window manager service works abnormally. * @syscap SystemCapability.WindowManager.WindowManager.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ loadContentByName(name: string, storage?: LocalStorage): Promise<void>; @@ -9806,9 +11354,9 @@ declare namespace window { * @since 10 */ /** - * Window stage event callback on. + * Subscribes to the window stage lifecycle change event. * - * @param { 'windowStageEvent' } eventType The value is fixed at 'windowStageEvent', indicating the window stage lifecycle change event. + * @param { 'windowStageEvent' } eventType Event type. The value is fixed at 'windowStageEvent', indicating the window stage lifecycle change event. * @param { Callback<WindowStageEventType> } callback Callback used to return the window stage lifecycle state. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; @@ -9819,7 +11367,8 @@ declare namespace window { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ on(eventType: 'windowStageEvent', callback: Callback<WindowStageEventType>): void; /** @@ -9850,10 +11399,12 @@ declare namespace window { * @since 10 */ /** - * Window stage event callback off. + * Unsubscribes from the window stage lifecycle change event. * - * @param { 'windowStageEvent' } eventType The value is fixed at 'windowStageEvent', indicating the window stage lifecycle change event. + * @param { 'windowStageEvent' } eventType Event type. The value is fixed at 'windowStageEvent', indicating the window stage lifecycle change event. * @param { Callback<WindowStageEventType> } callback Callback used to return the window stage lifecycle state. + * If a value is passed in, the corresponding subscription is canceled. + * If no value is passed in, all subscriptions to the specified event are canceled. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Incorrect parameter types; * 2. Parameter verification failed. * @throws { BusinessError } 1300002 - This window state is abnormal. @@ -9862,15 +11413,20 @@ declare namespace window { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ off(eventType: 'windowStageEvent', callback?: Callback<WindowStageEventType>): void; /** - * Window stage close callback on. + * Subscribes to the click event on the close button in the three-button navigation bar of the main window. + * This event is triggered when the close button in the three-button navigation bar of the main window is clicked. * - * @param { 'windowStageClose' } eventType The value is fixed at 'windowStageClose', indicating the window stage close event. - * @param { Callback<void> } callback Callback function requires a boolean return value to determine whether to close the current main window. + * @param { 'windowStageClose' } eventType - Event type. The value is fixed at 'windowStageClose', + * indicating that the close button in the three-button navigation bar of the main window is clicked. + * @param { Callback<void> } callback - Callback invoked when the close button in the upper right corner of the main window is clicked. + * The return value determines whether to continue to close the main window. + * The value true means not to close the main window, and false means to continue to close the main window. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. @@ -9884,10 +11440,13 @@ declare namespace window { on(eventType: 'windowStageClose', callback: Callback<void>): void; /** - * Window stage close callback off. + * Unsubscribes from the event indicating that the main window is closed. * - * @param { 'windowStageClose' } eventType The value is fixed at 'windowStageClose', indicating the window stage close event. - * @param { Callback<void> } callback Callback function requires a boolean return value to determine whether to close the current main window. + * @param { 'windowStageClose' } eventType - Event type. The value is fixed at 'windowStageClose', + * indicating that the close button in the three-button navigation bar of the main window is clicked. + * @param { Callback<void> } callback - Callback invoked when the close button in the upper right corner of the main window is clicked. + * If a value is passed in, the corresponding subscription is canceled. + * If no value is passed in, all subscriptions to the specified event are canceled. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; * 3. Parameter verification failed. @@ -9919,7 +11478,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi * @StageModelOnly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ disableWindowDecor(): void; @@ -9948,7 +11508,8 @@ declare namespace window { * @syscap SystemCapability.WindowManager.WindowManager.Core * @systemapi Hide this for inner system use. * @StageModelOnly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setShowOnLockScreen(showOnLockScreen: boolean): void; @@ -9985,9 +11546,10 @@ declare namespace window { setCustomDensity(density: number): void; /** - * Remove the starting window, it must be used with configuration "enable.remove.starting.window". + * Allows the application to control the time when the launch page disappears. + * This API takes effect only for the application main window when enable.remove.starting.window under metadata in abilities in the module.json5 file is set to true. * - * @returns { Promise<void> } - The promise returned by the function. + * @returns { Promise<void> } - Promise that returns no value. * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. * @throws { BusinessError } 1300002 - This window state is abnormal. * @throws { BusinessError } 1300003 - This window manager service works abnormally. @@ -10013,12 +11575,30 @@ declare namespace window { * @atomicservice * @since 14 */ + /** + * Enables the modal property of the main window. + * + * @param { boolean } isModal - Whether to enable the modal property of the main window. + * The value true means to enable the modal property, and false means the opposite. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300005 - This window stage is abnormal. + * @syscap SystemCapability.Window.SessionManager + * @StageModelOnly + * @atomicservice + * @since 20 + */ setWindowModal(isModal: boolean): Promise<void>; /** - * Set to automatically save the window rect. + * Sets whether to enable the auto-save feature for the size of the main window. * - * @param { boolean } enabled - Enable the window rect auto-save if true, otherwise means the opposite. + * @param { boolean } enabled - Whether to enable the auto-save feature for the main window's size. + * The value true means to enable the auto-save feature, and false means the opposite. * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible cause: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types. @@ -10047,7 +11627,7 @@ declare namespace window { * @syscap SystemCapability.Window.SessionManager * @stagemodelonly * @atomicservice - * @since 18 + * @since 17 */ setWindowRectAutoSave(enabled: boolean, isSaveBySpecifiedFlag: boolean): Promise<void>; @@ -10063,10 +11643,22 @@ declare namespace window { * @atomicservice * @since 14 */ + /** + * Checks whether the auto-save feature is enabled for the main window's size. + * + * @returns { Promise<boolean> } Promise used to return the result. The value true means that the auto-save feature is enabled, and false means the opposite. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @syscap SystemCapability.Window.SessionManager + * @StageModelOnly + * @atomicservice + * @since 20 + */ isWindowRectAutoSave(): Promise<boolean>; /** - * Sets the supported window modes. + * Sets the supported window modes of the main window. * * @param { Array<bundleManager.SupportWindowMode> } supportedWindowModes - The supported modes of window. * @returns { Promise<void> } Promise that returns no value. @@ -10081,6 +11673,40 @@ declare namespace window { * @since 15 */ setSupportedWindowModes(supportedWindowModes: Array<bundleManager.SupportWindowMode>): Promise<void>; + + /** + * Sets the supported window modes of the main window. + * + * @param { Array<bundleManager.SupportWindowMode> } supportedWindowModes - The supported modes of window. + * @param { boolean } grayOutMaximizeButton - Whether to gray out the window maximize button. The value true means to gray out the button, and false means the opposite. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 801 - Capability not supported. Function setSupportedWindowModes can not work correctly due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300016 - Parameter error. Possible cause: 1. Invalid parameter range. 2. Invalid parameter length. 3. Incorrect parameter format. + * @syscap SystemCapability.Window.SessionManager + * @stagemodelonly + * @since 20 + */ + setSupportedWindowModes(supportedWindowModes: Array<bundleManager.SupportWindowMode>, grayOutMaximizeButton: boolean): Promise<void>; + + /** + * Sets Image for recent. + * + * @param { number } imgResourceId - This value is resource ID for the recent image. + * @param { ImageFit } value - Sets the zoom type of an image. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 1300002 - This window state is abnormal. + * @throws { BusinessError } 1300003 - This window manager service works abnormally. + * @throws { BusinessError } 1300016 - Parameter error. Possible cause: 1. Invalid parameter range. 2. Invalid parameter length. 3. Incorrect parameter format. + * @syscap SystemCapability.Window.SessionManager + * @systemapi Hide this for inner system use. + * @stagemodelonly + * @since 20 + */ + setImageForRecent(imgResourceId: number, value: ImageFit): Promise<void>; } /** @@ -10090,18 +11716,20 @@ declare namespace window { * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @stagemodelonly - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ - enum ExtensionWindowAttribute { + export enum ExtensionWindowAttribute { /** * System window. * * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @stagemodelonly - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ - SYSTEM_WINDOW, + SYSTEM_WINDOW = 0, /** * Sub window. @@ -10109,9 +11737,10 @@ declare namespace window { * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @stagemodelonly - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ - SUB_WINDOW + SUB_WINDOW = 1 } /** @@ -10121,9 +11750,10 @@ declare namespace window { * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @stagemodelonly - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface SystemWindowOptions { + export interface SystemWindowOptions { /** * Indicates window type. * @@ -10131,7 +11761,8 @@ declare namespace window { * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @stagemodelonly - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ windowType: WindowType; } @@ -10143,9 +11774,10 @@ declare namespace window { * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @stagemodelonly - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ - interface ExtensionWindowConfig { + export interface ExtensionWindowConfig { /** * Window name. * @@ -10153,7 +11785,8 @@ declare namespace window { * @syscap SystemCapability.Window.SessionManager * @systemapi Hide this for inner system use. * @stagemodelonly - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ windowName: string; @@ -10221,6 +11854,249 @@ declare namespace window { */ windowRect: Rect; } + + /** + * Enum for window mode + * + * @enum { number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + enum GlobalWindowMode { + /** + * Fullscreen + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + FULLSCREEN = 1, + + /** + * Split + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + SPLIT = 1 << 1, + + /** + * Float + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + FLOAT = 1 << 2, + + /** + * Picture in picture + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 20 + */ + PIP = 1 << 3 + } + + /** + * Rotation change type + * + * @enum { number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + enum RotationChangeType { + /** + * Rotation will begin + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + WINDOW_WILL_ROTATE = 0, + + /** + * Rotation end + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + WINDOW_DID_ROTATE = 1 + } + + /** + * Rect type + * + * @enum { number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + enum RectType { + /** + * Rect relative to screen + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + RELATIVE_TO_SCREEN = 0, + /** + * Rect relative to parent window + * + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + RELATIVE_TO_PARENT_WINDOW = 1 + } + + /** + * Screenshot event type + * + * @enum { number } + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @since 20 + */ + enum ScreenshotEventType { + /** + * System screenshot + * + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @since 20 + */ + SYSTEM_SCREENSHOT = 0, + /** + * System screenshot abort + * + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @since 20 + */ + SYSTEM_SCREENSHOT_ABORT = 1, + /** + * Scroll shot start + * + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @since 20 + */ + SCROLL_SHOT_START = 2, + /** + * Scroll shot end + * + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @since 20 + */ + SCROLL_SHOT_END = 3, + /** + * Scroll shot abort + * + * @syscap SystemCapability.WindowManager.WindowManager.Core + * @since 20 + */ + SCROLL_SHOT_ABORT = 4, + } + + /** + * Rotation change info + * + * @interface RotationChangeInfo + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + interface RotationChangeInfo { + /** + * Rotation change type + * + * @type { RotationChangeType } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + type: RotationChangeType; + /** + * window orientation + * + * @type { number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + orientation: number; + /** + * Display id + * + * @type { number } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + displayId: number; + /** + * Display rect + * + * @type { Rect } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + displayRect: Rect; + } + + /** + * Rotation change result + * + * @interface RotationChangeResult + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + interface RotationChangeResult { + /** + * Rect type + * + * @type { RectType } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + rectType: RectType; + /** + * Window rect + * + * @type { Rect } + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + windowRect: Rect; + } + + /** + * Rotation Change callback + * + * @typedef RotationChangeCallback<T, U> + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + interface RotationChangeCallback<T, U> { + /** + * Defines the rotation change callback + * + * @param { T } info + * @returns { U } result + * @syscap SystemCapability.Window.SessionManager + * @atomicservice + * @since 19 + */ + (info: T): U; + } } export default window; diff --git a/api/@ohos.worker.d.ts b/api/@ohos.worker.d.ts index dc5511136ce210567bfeb97f84b57e781655f2ff..70479f6e9726ce571ebf5cd2292afa9bc5909662 100644 --- a/api/@ohos.worker.d.ts +++ b/api/@ohos.worker.d.ts @@ -33,7 +33,7 @@ */ /** * @typedef WorkerOptions - * Provides options that can be set for the worker to create. + * Provides options that can be set for the Worker instance to create. * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice @@ -54,7 +54,7 @@ export interface WorkerOptions { * @since 10 */ /** - * Mode in which the worker executes the script. + * Mode in which the Worker instance executes the script. The module type is not supported yet. The default value is classic. * * @type { ?('classic' | 'module') } * @syscap SystemCapability.Utils.Lang @@ -78,7 +78,7 @@ export interface WorkerOptions { * @since 10 */ /** - * Name of the worker. + * Name of the Worker thread. The default value is undefined. * * @type { ?string } * @syscap SystemCapability.Utils.Lang @@ -102,7 +102,7 @@ export interface WorkerOptions { * @since 10 */ /** - * Whether the worker is shared. + * Whether sharing of the Worker instance is enabled. Currently, sharing is not supported. * * @type { ?boolean } * @syscap SystemCapability.Utils.Lang @@ -113,7 +113,7 @@ export interface WorkerOptions { shared?: boolean; /** - * Priority of the worker. + * Priority of the Worker thread. * * @type { ?ThreadWorkerPriority } * @syscap SystemCapability.Utils.Lang @@ -124,7 +124,7 @@ export interface WorkerOptions { } /** - * The ThreadWorkerPriority defines the worker priority. + * Enumerates the priorities available for Worker threads. For details about the mappings between priorities and QoS levels, see QoS Level. * * @enum { number } ThreadWorkerPriority * @syscap SystemCapability.Utils.Lang @@ -133,7 +133,7 @@ export interface WorkerOptions { */ export enum ThreadWorkerPriority { /** - * set worker priority to high. + * High priority, corresponding to QOS_USER_INITIATED. * * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -142,7 +142,7 @@ export enum ThreadWorkerPriority { HIGH = 0, /** - * set worker priority to medium. + * Medium priority, corresponding to QOS_DEFAULT. * * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -151,7 +151,7 @@ export enum ThreadWorkerPriority { MEDIUM = 1, /** - * set worker priority to low. + * Low priority, corresponding to QOS_UTILITY. * * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -160,7 +160,7 @@ export enum ThreadWorkerPriority { LOW = 2, /** - * set worker priority to idle. + * Background priority, corresponding to QOS_BACKGROUND. * * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -230,7 +230,7 @@ export interface Event { * @since 10 */ /** - * Timestamp(accurate to millisecond) when the event is created. + * Timestamp (accurate to millisecond) when the event is created. This parameter is not supported yet. * * @type { number } * @readonly @@ -256,7 +256,7 @@ export interface Event { * @since 10 */ /** - * Provides detailed information about the exception occurred during worker execution. + * Provides detailed information about the exception that occurs during worker execution. The ErrorEvent class inherits from Event. * @typedef ErrorEvent * @extends Event * @syscap SystemCapability.Utils.Lang @@ -329,7 +329,7 @@ export interface ErrorEvent extends Event { * @since 10 */ /** - * Number of the line where the exception is located. + * Serial number of the line where the exception is located. * * @type { number } * @readonly @@ -354,7 +354,7 @@ export interface ErrorEvent extends Event { * @since 10 */ /** - * Number of the column where the exception is located. + * Serial number of the column where the exception is located. * * @type { number } * @readonly @@ -454,7 +454,7 @@ export interface MessageEvent<T> extends Event { * @since 10 */ /** - * Saves the data transferred between worker thread and host thread. + * Holds the data transferred between Worker threads. * @typedef MessageEvents * @extends Event * @syscap SystemCapability.Utils.Lang @@ -508,8 +508,8 @@ export interface MessageEvents extends Event { */ /** * @typedef PostMessageOptions - * Specifies the object whose ownership need to be transferred during data transfer. - * The object must be ArrayBuffer. + * Defines the object for which the ownership is to be transferred during data transfer. The object must be an ArrayBuffer instance. + * After the ownership is transferred, the object becomes unavailable in the sender and can be used only in the receiver. * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice @@ -530,7 +530,7 @@ export interface PostMessageOptions { * @since 10 */ /** - * ArrayBuffer array used to transfer the ownership. + * ArrayBuffer array used to transfer the ownership. The array cannot be null. * * @type { ?Object[] } * @syscap SystemCapability.Utils.Lang @@ -617,7 +617,7 @@ export interface WorkerEventListener { /** * Specifies the callback function to be invoked. * - * @param { Event } event - event Event class for the callback to invoke. + * @param { Event } event - Event class for the callback to invoke. * @returns { void | Promise<void> } * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; @@ -728,7 +728,7 @@ export interface EventTarget { */ /** * @typedef WorkerEventTarget - * Specific worker event features. + * Processes worker listening events. * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice @@ -779,7 +779,7 @@ export interface WorkerEventTarget { * @since 11 */ /** - * Adds an event listener to the worker. + * Adds an event listener for the Worker thread. This API provides the same functionality as on9+. * * @param { string } type - type Type of the event to listen for. * @param { WorkerEventListener } listener - listener Callback to invoke when an event of the specified type occurs. @@ -823,7 +823,7 @@ export interface WorkerEventTarget { * @since 10 */ /** - * Handle the event defined for the worker. + * Dispatches the event defined for the Worker thread. * * @param { Event } event - event Event to dispatch. * @returns { boolean } @@ -866,10 +866,10 @@ export interface WorkerEventTarget { * @since 10 */ /** - * Remove an event defined for the worker. + * Removes an event listener for the Worker thread. This API provides the same functionality as off9+. * - * @param { string } type - type Type of the event for which the event listener is cancelled. - * @param { WorkerEventListener } [callback] - callback Callback of the event listener to remove. + * @param { string } type - type Type of the event for which the event listener is to be removed. + * @param { WorkerEventListener } [callback] - callback Callback to invoke when the listener is removed. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -897,7 +897,7 @@ export interface WorkerEventTarget { * @since 10 */ /** - * Remove all event listeners for the worker. + * Removes all event listeners for the Worker thread. * * @throws { BusinessError } 10200004 - The Worker instance is not running. * @syscap SystemCapability.Utils.Lang @@ -964,7 +964,7 @@ declare interface WorkerGlobalScope extends EventTarget { * @since 10 */ /** - * The environment Specified in which worker threads run, which is isolated from the host thread environment. + * Implements the running environment of the Worker thread. The GlobalScope class inherits from WorkerEventTarget. * @typedef GlobalScope * @extends WorkerEventTarget * @syscap SystemCapability.Utils.Lang @@ -987,7 +987,7 @@ declare interface GlobalScope extends WorkerEventTarget { * @since 10 */ /** - * Name of Worker specified when there is a new worker. + * Worker instance specified when there is a new Worker instance. * * @type { string } * @readonly @@ -1016,9 +1016,8 @@ declare interface GlobalScope extends WorkerEventTarget { * @since 10 */ /** - * The onerror attribute of parentPort specified. - * the event handler to be called when an exception occurs during worker execution. - * The event handler is executed in the worker thread. + * Called when an exception occurs during worker execution. The event handler is executed in the Worker thread. + * In the callback function, the ev type is ErrorEvent, indicating the received abnormal data. * * @type { ?function } * @syscap SystemCapability.Utils.Lang @@ -1041,7 +1040,7 @@ declare interface GlobalScope extends WorkerEventTarget { * @since 10 */ /** - * Specify the type attribute for self. + * GlobalScope itself. * * @type { GlobalScope & typeof globalThis } * @readonly @@ -1147,7 +1146,8 @@ export interface DedicatedWorkerGlobalScope extends WorkerGlobalScope { * @since 10 */ /** - * Specifies the thread-worker running environment, which is isolated from the host-thread environment + * Implements communication between the Worker thread and the host thread. The postMessage API is used to send messages + * to the host thread, and the close API is used to terminate the Worker thread. The ThreadWorkerGlobalScope class inherits from GlobalScope9+. * @typedef ThreadWorkerGlobalScope * @extends GlobalScope * @syscap SystemCapability.Utils.Lang @@ -1182,10 +1182,9 @@ export interface ThreadWorkerGlobalScope extends GlobalScope { * @since 10 */ /** - * The onmessage attribute of parentPort specifies the event handler - * to be called then the worker thread receives a message sent by - * the host thread through worker postMessage. - * The event handler is executed in the worker thread. + * Called when the Worker thread receives a message sent by the host thread through postMessage. + * The event handler is executed in the Worker thread. In the callback function, this indicates the caller's + * ThreadWorkerGlobalScope, and the ev type is MessageEvents, indicating the received message data. * * @type { ?function } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. @@ -1222,9 +1221,9 @@ export interface ThreadWorkerGlobalScope extends GlobalScope { * @since 10 */ /** - * The onmessage attribute of parentPort specifies the event handler - * to be called then the worker receives a message that cannot be deserialized. - * The event handler is executed in the worker thread. + * Called when the Worker thread receives a message that cannot be deserialized. The event handler is executed + * in the Worker thread. In the callback function, this indicates the caller's ThreadWorkerGlobalScope, + * and the ev type is MessageEvents, indicating the received message data. * * @type { ?function } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. @@ -1253,7 +1252,7 @@ export interface ThreadWorkerGlobalScope extends GlobalScope { * @since 10 */ /** - * Close the worker thread to stop the worker from receiving messages + * Terminates the Worker thread to stop it from receiving messages. * * @throws { BusinessError } 10200004 - The Worker instance is not running. * @syscap SystemCapability.Utils.Lang @@ -1293,10 +1292,12 @@ export interface ThreadWorkerGlobalScope extends GlobalScope { * @since 10 */ /** - * Send a message to host thread from the worker + * Sends a message from the Worker thread to the host thread by transferring object ownership. * - * @param { Object } messageObject - messageObject Data to be sent to the worker - * @param { ArrayBuffer[] } transfer - transfer array cannot contain null. + * @param { Object } messageObject - Data to be sent to the host thread. The data object must be sequenceable. + * For details about the supported parameter types, see Sequenceable Data Types. + * @param { ArrayBuffer[] } transfer - ArrayBuffer instance holding an array of objects for which the ownership + * is transferred to the host thread. After the transfer, the objects are available only in the host thread. The array cannot be null. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -1340,10 +1341,14 @@ export interface ThreadWorkerGlobalScope extends GlobalScope { * @since 10 */ /** - * Send a message to be host thread from the worker + * Sends a message from the Worker thread to the host thread by transferring object ownership or copying data. * - * @param { Object } messageObject - messageObject Data to be sent to the worker - * @param { PostMessageOptions } [options] - options Option can be set for postmessage. + * @param { Object } messageObject - Data to be sent to the host thread. The data object must be sequenceable. + * For details about the supported parameter types, see Sequenceable Data Types. + * @param { PostMessageOptions } [options] - If this parameter is specified, it functions the same as ArrayBuffer[]. + * Specifically, the ownership of the objects in the array is transferred to the host thread and becomes unavailable in the Worker thread. + * The objects are available only in the host thread. If this parameter is not specified, the default value undefined is used, + * and information is transferred to the host thread by copying data. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -1358,12 +1363,15 @@ export interface ThreadWorkerGlobalScope extends GlobalScope { postMessage(messageObject: Object, options?: PostMessageOptions): void; /** - * Send a message to the host thread from the worker thread. - * If there're sendable objects included in the message, they will be passed through references. - * Non-sendable objects are passed through serialization. + * Sends a message from the Worker thread to the host thread. In the message, a sendable object is passed by reference, + * and a non-sendable object is passed by serialization. * - * @param { Object } message - Data to be sent to the worker thread. - * @param { ArrayBuffer[] } [transfer] - ArrayBuffer instance that can be transferred. + * @param { Object } message - Data to be sent to the host thread. The data object must be sequenceable or sendable. + * For details about the supported sequenceable types, see Sequenceable Data Types. + * For details about the supported sendable types, see Sendable Data Types. + * @param { ArrayBuffer[] } [transfer] - ArrayBuffer instance holding an array of objects for which the ownership is + * transferred to the host thread. After the transfer, the objects are available only in the host thread. + * The array cannot be null. The default value is an empty array. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -1399,11 +1407,14 @@ export interface ThreadWorkerGlobalScope extends GlobalScope { * @since 11 */ /** - * Send a global call on registered globalCallObject on host side and return the result synchronously + * Calls a method of an object registered with the host thread. This API is called by the Worker thread. + * The invoking is synchronous for the Worker thread and asynchronous for the host thread. The return value is transferred through serialization. * - * @param { string } instanceName - the exact key used in registration - * @param { string } methodName - a string which is same to the method called on globalCallObject. - * @param { number } timeout - the specific milliseconds that will wait for result to return, between 0 and 5000. + * @param { string } instanceName - Key used for registration. It is used to search for the object in the host thread. + * @param { string } methodName - Name of the method to call. Note that the method cannot be modified by async or generator, + * or return results asynchronously by using the asynchronous mechanism at the bottom layer. Otherwise, an exception is thrown. + * @param { number } timeout - Maximum duration that the current synchronous invoking waits, in ms. + * The value is an integer ranging from 1 to 5000. The value 0 means that the 5000 ms duration is used. * @param { Object[] } args - the method argument called on registered globalCallObject. * @returns { Object } Return the result of method if it has a return value, otherwise return void. * @throws { BusinessError } 401 - Parameter error. Possible causes: @@ -1427,7 +1438,7 @@ export interface ThreadWorkerGlobalScope extends GlobalScope { * The event handler to be called when an exception occurs during worker execution. * * @typedef { function } ErrorCallback - * @param { ErrorEvent } err - the detailed information about the exception occurred during worker execution. + * @param { ErrorEvent } err - Error event class, which provides detailed information about the exception occurred during Worker execution. * @returns { void } * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -1474,7 +1485,7 @@ declare namespace worker { * @since 10 */ /** - * The ThreadWorker class contains all Worker functions. + * Before using the following APIs, you must create a ThreadWorker instance. The ThreadWorker class inherits from WorkerEventTarget. * * @implements WorkerEventTarget * @syscap SystemCapability.Utils.Lang @@ -1513,10 +1524,10 @@ declare namespace worker { * @since 10 */ /** - * Creates a worker instance + * A constructor used to create a ThreadWorker instance. * - * @param { string } scriptURL - scriptURL URL of the script to be executed by the worker - * @param { WorkerOptions } [options] - options Options that can be set for the worker + * @param { string } scriptURL - URL of the Worker thread file. For details about the rules, see Precautions for File URLs. + * @param { WorkerOptions } [options] - Options that can be set for the Worker instance. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -1551,8 +1562,8 @@ declare namespace worker { * @since 10 */ /** - * The onexit attribute of the worker specifies the event handler to be called - * when the worker exits. The handler is executed in the host thread. + * Called when the Worker thread exits. The event handler is executed in the host thread. In the callback function, + * the code value is of the number type, where the value 1 indicates abnormal exit and 0 indicates normal exit. * * @type { ?function } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. @@ -1588,9 +1599,8 @@ declare namespace worker { * @since 10 */ /** - * The onerror attribute of the worker specifies the event handler to be called - * when an exception occurs during worker execution. - * The event handler is executed in the host thread. + * Called when an exception occurs during worker execution. The event handler is executed in the host thread. + * In the callback function, the err type is ErrorEvent, indicating the received abnormal data. * * @type { ?function } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. @@ -1604,9 +1614,15 @@ declare namespace worker { onerror?: (err: ErrorEvent) => void; /** - * The onAllErrors attribute of the worker specifies the event handler to be called - * when an exception occurs during worker execution. - * The event handler is executed in the host thread. + * Called when an exception occurs within the lifecycle of the Worker thread. The event handler is executed in the host thread. + * + * onerror can capture only exceptions generated by synchronous methods within the onmessage callback. + * It cannot capture exceptions from multithreaded callbacks or modularization-related exceptions. + * Once an exception is captured, the Worker thread will proceed to the destruction process and cannot be used. + * + * onAllErrors can capture global exceptions generated during the onmessage callback, timer callback, + * and file execution of the Worker thread. After an exception is captured by onAllErrors, + * the Worker thread remains alive and can continue to be used. You are advised to use onAllErrors instead of onerror. * * @type { ?function } * @throws { BusinessError } 10200004 - The Worker instance is not running. @@ -1643,10 +1659,8 @@ declare namespace worker { * @since 10 */ /** - * The onmessage attribute of the worker specifies the event handler - * to be called then the host thread receives a message created by itself - * and sent by the worker through the parentPort.postMessage. - * The event handler is executed in the host thread. + * Called when the host thread receives a message sent by the Worker thread through workerPort.postMessage. + * The event handler is executed in the host thread. In the callback function, the event type is MessageEvents, indicating the received message data. * * @type { ?function } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. @@ -1682,9 +1696,8 @@ declare namespace worker { * @since 10 */ /** - * The onmessage attribute of the worker specifies the event handler - * when the worker receives a message that cannot be serialized. - * The event handler is executed in the host thread. + * Called when the Worker thread receives a message that cannot be serialized. The event handler is executed in the host thread. + * In the callback function, the event type is MessageEvents, indicating the received message data. * * @type { ?function } * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Incorrect parameter types. @@ -1727,12 +1740,12 @@ declare namespace worker { * @since 10 */ /** - * Sends a message to the worker thread. - * The data is transferred using the structured clone algorithm. + * Sends a message from the host thread to the Worker thread by transferring object ownership. * - * @param { Object } message - message Data to be sent to the worker - * @param { ArrayBuffer[] } transfer - transfer ArrayBuffer instance that can be transferred. - * The transferList array cannot contain null. + * @param { Object } message - Data to be sent to the Worker thread. The data object must be sequenceable. + * For details about the supported parameter types, see Sequenceable Data Types. + * @param { ArrayBuffer[] } transfer - ArrayBuffer instance holding an array of objects for which the ownership + * is transferred to the Worker thread. After the transfer, the objects are available only in the Worker thread. The array cannot be null. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -1777,11 +1790,14 @@ declare namespace worker { * @since 10 */ /** - * Sends a message to the worker thread. - * The data is transferred using the structured clone algorithm. + * Sends a message from the host thread to the Worker thread by transferring object ownership or copying data. * - * @param { Object } message - message Data to be sent to the worker - * @param { PostMessageOptions } [options] - options + * @param { Object } message - Data to be sent to the Worker thread. The data object must be sequenceable. + * For details about the supported parameter types, see Sequenceable Data Types. + * @param { PostMessageOptions } [options] - If this parameter is specified, it functions the same as ArrayBuffer[]. + * Specifically, the ownership of the objects in the array is transferred to the Worker thread and becomes unavailable in the host thread. + * The objects are available only in the Worker thread. If this parameter is not specified, the default value undefined is used, + * and information is transferred to the Worker thread by copying data. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -1796,12 +1812,15 @@ declare namespace worker { postMessage(message: Object, options?: PostMessageOptions): void; /** - * Sends a message to the worker thread from the host thread. - * If there're sendable objects included in the message, they will be passed through references. - * Non-sendable objects are passed through serialization. + * Sends a message from the host thread to the Worker thread. In the message, a sendable object is passed by reference, + * and a non-sendable object is passed by serialization. * - * @param { Object } message - Data to be sent to the worker thread. - * @param { ArrayBuffer[] } [transfer] - ArrayBuffer instance that can be transferred. + * @param { Object } message - Data to be sent to the Worker thread. The data object must be sequenceable or sendable. + * For details about the supported sequenceable types, see Sequenceable Data Types. + * For details about the supported sendable types, see Sendable Data Types. + * @param { ArrayBuffer[] } [transfer] - ArrayBuffer instance holding an array of objects for which the ownership + * is transferred to the Worker thread. After the transfer, the objects are available only in the Worker thread. + * The array cannot be null. The default value is an empty array. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -1845,10 +1864,10 @@ declare namespace worker { * @since 10 */ /** - * Adds an event listener to the worker. + * Adds an event listener for the Worker thread. This API provides the same functionality as addEventListener9+. * - * @param { string } type - type Adds an event listener to the worker. - * @param { WorkerEventListener } listener - listener Callback to invoke when an event of the specified type occurs. + * @param { string } type - Type of the event to listen for. + * @param { WorkerEventListener } listener - Callback to invoke when an event of the specified type occurs. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -1893,8 +1912,7 @@ declare namespace worker { * @since 10 */ /** - * Adds an event listener to the worker - * and removes the event listener automatically after it is invoked once. + * Adds an event listener for the Worker thread and removes the event listener after it is invoked once. * * @param { string } type - type Type of the event to listen for * @param { WorkerEventListener } listener - listener Callback to invoke when an event of the specified type occurs @@ -1940,7 +1958,7 @@ declare namespace worker { * @since 10 */ /** - * Removes an event listener to the worker. + * Removes an event listener for the Worker thread. This API provides the same functionality as removeEventListener9+. * * @param { string } type - type Type of the event for which the event listener is removed. * @param { WorkerEventListener } [listener] - listener Callback of the event listener to remove. @@ -1972,7 +1990,7 @@ declare namespace worker { * @since 10 */ /** - * Terminates the worker thread to stop the worker from receiving messages + * Terminates the Worker thread to stop it from receiving messages. * * @throws { BusinessError } 10200004 - The Worker instance is not running. * @syscap SystemCapability.Utils.Lang @@ -2011,7 +2029,7 @@ declare namespace worker { * @since 10 */ /** - * Adds an event listener to the worker. + * Adds an event listener for the Worker thread. This API provides the same functionality as on9+. * * @param { string } type - type Type of the event to listen for. * @param { WorkerEventListener } listener Callback to invoke when an event of the specified type occurs. @@ -2055,7 +2073,7 @@ declare namespace worker { * @since 10 */ /** - * Handle the event defined for the worker. + * Dispatches the event defined for the Worker thread. * * @param { Event } event - event Event to dispatch. * @returns { boolean } @@ -2098,10 +2116,10 @@ declare namespace worker { * @since 10 */ /** - * Remove an event defined for the worker. + * Removes an event listener for the Worker thread. This API provides the same functionality as off9+. * - * @param { string } type - type Type of the event for which the event listener is cancelled. - * @param { WorkerEventListener } [callback] - callback Callback of the event listener to remove. + * @param { string } type - type Type of the event for which the event listener is to be removed. + * @param { WorkerEventListener } [callback] - callback Callback to invoke when the listener is removed. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -2129,7 +2147,7 @@ declare namespace worker { * @since 10 */ /** - * Remove all event listeners for the worker. + * Removes all event listeners for the Worker thread. * * @throws { BusinessError } 10200004 - Worker instance is not running. * @syscap SystemCapability.Utils.Lang @@ -2153,9 +2171,11 @@ declare namespace worker { * @since 11 */ /** - * Register globalCallObject for global call. - * @param { string } instanceName - The key to register globalCallObject. - * @param { Object } globalCallObject - The globalCallObject that will be registered. + * Registers an object with the ThreadWorker instance of the host thread. + * In this way, the methods of the object can be called in the Worker thread through callGlobalCallObjectMethod. + * + * @param { string } instanceName - Key used for registration, based on which the registered object is identified during method calling. + * @param { Object } globalCallObject - Object to register. The ThreadWorker instance holds a strong reference to the object. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; @@ -2181,8 +2201,11 @@ declare namespace worker { * @since 11 */ /** - * Remove registered globalCallObject and release strong reference to registered object. - * @param { string } [instanceName] - The exact key that used in registration. + * Unregisters an object with the ThreadWorker instance of the host thread. This API releases the strong reference + * between the ThreadWorker instance and the target object. No error is reported if no object is matched. + * + * @param { string } [instanceName] - Key used for registration. If this parameter is left blank, + * all registered objects registered in the ThreadWorker instance are unregistered. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified; * 2.Incorrect parameter types; diff --git a/api/@ohos.xml.d.ts b/api/@ohos.xml.d.ts index 31fd064288a36634305a8c2a60097bd792266485..1f22a7f9beacb220f0565d0c456cbc6d508abd1c 100644 --- a/api/@ohos.xml.d.ts +++ b/api/@ohos.xml.d.ts @@ -40,9 +40,187 @@ * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace xml { + /** + * The XmlDynamicSerializer interface is used to dynamically generate an xml file. + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + * @name XmlDynamicSerializer + */ + class XmlDynamicSerializer { + /** + * A parameterized constructor used to create a new XmlDynamicSerializer instance. + * The input parameter is an encoding format of string type. + * + * @param { string } [encoding] - [encoding='utf8'] this is its encoding, only support utf-8. + * @throws { BusinessError } 10200066 - Incorrect encoding format, only support utf-8. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + constructor(encoding?: string); + + /** + * Write an attribute to xml element. + * + * @param { string } name - Key name of the attribute. Cannot be an empty string. + * @param { string } value - Values of attribute. + * @throws { BusinessError } 10200062 - The cumulative length of xml has exceeded the upper limit 100000. + * @throws { BusinessError } 10200063 - Illegal position for xml. + * @throws { BusinessError } 10200064 - Cannot be an empty string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + setAttributes(name: string, value: string): void; + + /** + * Add an empty element. + * + * @param { string } name - Name of the element. + * @throws { BusinessError } 10200062 - The cumulative length of xml has exceeded the upper limit 100000. + * @throws { BusinessError } 10200064 - Cannot be an empty string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + addEmptyElement(name: string): void; + + /** + * Writes xml declaration with encoding. For example: <?xml version="1.0" encoding="utf-8"?>. + * @throws { BusinessError } 10200062 - The cumulative length of xml has exceeded the upper limit 100000. + * @throws { BusinessError } 10200063 - Illegal position for xml. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + setDeclaration(): void; + + /** + * Writes a element start tag with the given name. + * + * @param { string } name - Name of the element. + * @throws { BusinessError } 10200062 - The cumulative length of xml has exceeded the upper limit 100000. + * @throws { BusinessError } 10200064 - Cannot be an empty string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + startElement(name: string): void; + + /** + * Writes end tag of the element. + * + * @throws { BusinessError } 10200062 - The cumulative length of xml has exceeded the upper limit 100000. + * @throws { BusinessError } 10200065 - There is no match between the startElement and the endElement. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + endElement(): void; + + /** + * Writes the namespace of the current element tag. + * + * @param { string } prefix - Values name of the prefix. Cannot be an empty string. + * @param { string } namespace - Values of namespace. Cannot be an empty string. + * @throws { BusinessError } 10200062 - The cumulative length of xml has exceeded the upper limit 100000. + * @throws { BusinessError } 10200064 - Cannot be an empty string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + setNamespace(prefix: string, namespace: string): void; + + /** + * Writes the comment to xml. + * + * @param { string } text - Values of comment. Cannot be an empty string. + * @throws { BusinessError } 10200062 - The cumulative length of xml has exceeded the upper limit 100000. + * @throws { BusinessError } 10200064 - Cannot be an empty string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + setComment(text: string): void; + + /** + * Writes the CDATA. + * + * @param { string } text - Values of CDATA. Cannot be an empty string. + * @throws { BusinessError } 10200062 - The cumulative length of xml has exceeded the upper limit 100000. + * @throws { BusinessError } 10200064 - Cannot be an empty string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + setCdata(text: string): void; + + /** + * Writes the text to xml element. + * + * @param { string } text - Values of text. Cannot be an empty string. + * @throws { BusinessError } 10200062 - The cumulative length of xml has exceeded the upper limit 100000. + * @throws { BusinessError } 10200064 - Cannot be an empty string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + setText(text: string): void; + + /** + * Writes the DOCTYPE. + * + * @param { string } text - Values of docType. Cannot be an empty string. + * @throws { BusinessError } 10200062 - The cumulative length of xml has exceeded the upper limit 100000. + * @throws { BusinessError } 10200064 - Cannot be an empty string. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + setDocType(text: string): void; + + /** + * Get an ArrayBuffer from a XmlDynamicSerializer instance. + * + * @returns { ArrayBuffer } - Returns ArrayBuffer result from a XmlDynamicSerializer instance. + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since arkts {'1.1':'20', '1.2':'20'} + * @arkts 1.1&1.2 + */ + getOutput(): ArrayBuffer; + } /** * The XmlSerializer interface is used to generate an xml file. * @@ -64,7 +242,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 * @name XmlSerializer */ class XmlSerializer { @@ -117,7 +296,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(buffer: ArrayBuffer | DataView, encoding?: string); @@ -157,7 +337,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setAttributes(name: string, value: string): void; @@ -195,7 +376,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ addEmptyElement(name: string): void; @@ -218,7 +400,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setDeclaration(): void; @@ -256,7 +439,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ startElement(name: string): void; @@ -279,7 +463,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ endElement(): void; @@ -320,7 +505,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setNamespace(prefix: string, namespace: string): void; @@ -358,7 +544,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setComment(text: string): void; @@ -396,7 +583,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setCDATA(text: string): void; @@ -434,7 +622,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setText(text: string): void; @@ -472,7 +661,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ setDocType(text: string): void; } @@ -499,7 +689,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ enum EventType { /** @@ -521,7 +712,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ START_DOCUMENT, /** @@ -543,7 +735,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ END_DOCUMENT, /** @@ -565,7 +758,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ START_TAG, /** @@ -587,7 +781,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ END_TAG, /** @@ -609,7 +804,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ TEXT, /** @@ -631,7 +827,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ CDSECT, /** @@ -653,7 +850,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMMENT, /** @@ -675,7 +873,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ DOCDECL, /** @@ -697,7 +896,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ INSTRUCTION, /** @@ -719,7 +919,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ENTITY_REFERENCE, /** @@ -741,7 +942,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ WHITESPACE } @@ -768,7 +970,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface ParseInfo { /** @@ -793,7 +996,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getColumnNumber(): number; /** @@ -818,7 +1022,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getDepth(): number; /** @@ -843,7 +1048,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getLineNumber(): number; /** @@ -868,7 +1074,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getName(): string; /** @@ -893,7 +1100,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getNamespace(): string; /** @@ -918,7 +1126,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getPrefix(): string; /** @@ -943,7 +1152,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getText(): string; /** @@ -968,7 +1178,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ isEmptyElementTag(): boolean; /** @@ -993,7 +1204,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ isWhitespace(): boolean; /** @@ -1018,7 +1230,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getAttributeCount(): number; } @@ -1045,7 +1258,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface ParseOptions { /** @@ -1070,7 +1284,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ supportDoctype?: boolean; @@ -1096,7 +1311,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ ignoreNameSpace?: boolean; @@ -1122,7 +1338,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ tagValueCallbackFunction?: (name: string, value: string) => boolean; @@ -1148,7 +1365,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ attributeValueCallbackFunction?: (name: string, value: string) => boolean; @@ -1174,7 +1392,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ tokenValueCallbackFunction?: (eventType: EventType, value: ParseInfo) => boolean; } @@ -1200,7 +1419,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 * @name XmlPullParser */ class XmlPullParser { @@ -1241,7 +1461,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ constructor(buffer: ArrayBuffer | DataView, encoding?: string); @@ -1309,7 +1530,8 @@ declare namespace xml { * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ parseXml(option: ParseOptions): void; } diff --git a/api/@ohos.zlib.d.ts b/api/@ohos.zlib.d.ts index 7bf807d98bf15220ce1ee8485329b807d07f88d6..6b2429d312a653489e29e0f371239e16721f85f9 100644 --- a/api/@ohos.zlib.d.ts +++ b/api/@ohos.zlib.d.ts @@ -36,7 +36,8 @@ import { AsyncCallback } from './@ohos.base'; * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace zlib { /** @@ -76,7 +77,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum CompressLevel { /** @@ -91,7 +93,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPRESS_LEVEL_NO_COMPRESSION = 0, /** @@ -106,7 +109,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPRESS_LEVEL_BEST_SPEED = 1, /** @@ -121,7 +125,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPRESS_LEVEL_BEST_COMPRESSION = 9, /** @@ -136,7 +141,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPRESS_LEVEL_DEFAULT_COMPRESSION = -1 } @@ -155,7 +161,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum CompressStrategy { /** @@ -170,7 +177,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPRESS_STRATEGY_DEFAULT_STRATEGY = 0, /** @@ -185,7 +193,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPRESS_STRATEGY_FILTERED = 1, /** @@ -200,7 +209,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPRESS_STRATEGY_HUFFMAN_ONLY = 2, /** @@ -215,7 +225,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPRESS_STRATEGY_RLE = 3, /** @@ -230,7 +241,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ COMPRESS_STRATEGY_FIXED = 4 } @@ -279,7 +291,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export enum MemLevel { /** @@ -294,7 +307,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MEM_LEVEL_MIN = 1, /** @@ -309,7 +323,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MEM_LEVEL_MAX = 9, /** @@ -324,7 +339,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ MEM_LEVEL_DEFAULT = 8 } @@ -492,7 +508,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ interface Options { /** @@ -508,7 +525,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ level?: CompressLevel; /** @@ -524,7 +542,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ memLevel?: MemLevel; /** @@ -540,7 +559,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ strategy?: CompressStrategy; /** @@ -1099,7 +1119,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function decompressFile(inFile: string, outFile: string, options: Options, callback: AsyncCallback<void>): void; @@ -1129,7 +1150,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function decompressFile(inFile: string, outFile: string, callback: AsyncCallback<void>): void; @@ -1174,7 +1196,8 @@ declare namespace zlib { * @syscap SystemCapability.BundleManager.Zlib * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ function decompressFile(inFile: string, outFile: string, options?: Options): Promise<void>; @@ -1431,7 +1454,7 @@ declare namespace zlib { * @returns { Promise<ZipOutputInfo> } Return ReturnStatus and total sizeof the destination buffer. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800007 - Buffer error. + * @throws { BusinessError } 17800007 - The input buffer is incorrect, and the output buffer is too small to accommodate the compressed or decompressed data. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1448,8 +1471,8 @@ declare namespace zlib { * @returns { Promise<ZipOutputInfo> } Return ReturnStatus and total sizeof the destination buffer. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. - * @throws { BusinessError } 17800007 - Buffer error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. + * @throws { BusinessError } 17800007 - The input buffer is incorrect, and the output buffer is too small to accommodate the compressed or decompressed data. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1478,8 +1501,8 @@ declare namespace zlib { * @returns { Promise<ZipOutputInfo> } Return ReturnStatus and total sizeof the destination buffer. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800005 - Data error. - * @throws { BusinessError } 17800007 - Buffer error. + * @throws { BusinessError } 17800005 - The input data is incorrect. For example, the data does not conform to the zlib compression format, the compressed data is corrupted, or the data is not compressed. + * @throws { BusinessError } 17800007 - The input buffer is incorrect, and the output buffer is too small to accommodate the compressed or decompressed data. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1495,8 +1518,8 @@ declare namespace zlib { * @returns { Promise<DecompressionOutputInfo> } Return ReturnStatus and total sizeof the destination buffer and total sizeof the sourceLen. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800005 - Data error. - * @throws { BusinessError } 17800007 - Buffer error. + * @throws { BusinessError } 17800005 - The input data is incorrect. For example, the data does not conform to the zlib compression format, the compressed data is corrupted, or the data is not compressed. + * @throws { BusinessError } 17800007 - The input buffer is incorrect, and the output buffer is too small to accommodate the compressed or decompressed data. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1511,7 +1534,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1525,7 +1548,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1539,9 +1562,9 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. - * @throws { BusinessError } 17800005 - Data error. - * @throws { BusinessError } 17800007 - Buffer error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. + * @throws { BusinessError } 17800005 - The input data is incorrect. For example, the data does not conform to the zlib compression format, the compressed data is corrupted, or the data is not compressed. + * @throws { BusinessError } 17800007 - The input buffer is incorrect, and the output buffer is too small to accommodate the compressed or decompressed data. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1556,8 +1579,8 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. - * @throws { BusinessError } 17800005 - Data error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. + * @throws { BusinessError } 17800005 - The input data is incorrect. For example, the data does not conform to the zlib compression format, the compressed data is corrupted, or the data is not compressed. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1571,7 +1594,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1586,7 +1609,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1600,7 +1623,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1616,7 +1639,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1661,7 +1684,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1689,7 +1712,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1704,7 +1727,7 @@ declare namespace zlib { * @returns { Promise<DictionaryOutputInfo> } Return ReturnStatus and dictionary length. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1718,7 +1741,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1732,7 +1755,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1761,7 +1784,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1775,7 +1798,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1793,7 +1816,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1808,8 +1831,8 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. - * @throws { BusinessError } 17800005 - Data error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. + * @throws { BusinessError } 17800005 - The input data is incorrect. For example, the data does not conform to the zlib compression format, the compressed data is corrupted, or the data is not compressed. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1824,7 +1847,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1843,7 +1866,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1859,8 +1882,8 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. - * @throws { BusinessError } 17800007 - Buffer error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. + * @throws { BusinessError } 17800007 - The input buffer is incorrect, and the output buffer is too small to accommodate the compressed or decompressed data. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1874,7 +1897,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1903,7 +1926,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1917,7 +1940,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1932,7 +1955,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1947,7 +1970,7 @@ declare namespace zlib { * @returns { Promise<DictionaryOutputInfo> } Return ReturnStatus and dictionary length * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1965,7 +1988,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1979,7 +2002,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -1993,7 +2016,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -2007,7 +2030,7 @@ declare namespace zlib { * @returns { Promise<DeflatePendingOutputInfo> } Return ReturnStatus along with the number of bytes and bits generated. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -2023,7 +2046,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -2039,7 +2062,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -2125,7 +2148,7 @@ declare namespace zlib { * Flush all pending output for file, if necessary, close file and deallocate the (de)compression state. * * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @throws { BusinessError } 17800006 - Memory allocation failed. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice @@ -2147,7 +2170,7 @@ declare namespace zlib { * The error message for the last error which occurred on file. * * @returns { Promise<GzErrorOutputInfo> } Return the status message for the last status which occurred on file and ReturnStatus. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -2172,7 +2195,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -2215,7 +2238,7 @@ declare namespace zlib { * Same as gzclose(), gzclosew() only for use when writing or appending. * * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @throws { BusinessError } 17800006 - Memory allocation failed. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice @@ -2227,7 +2250,7 @@ declare namespace zlib { * Same as gzclose(), gzcloser() is only for use when reading. * * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -2282,7 +2305,7 @@ declare namespace zlib { * @returns { Promise<ReturnStatus> } Return ReturnStatus the specific meaning is defined as enum. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice * @since 12 @@ -2365,7 +2388,7 @@ declare namespace zlib { * @returns { Promise<number> } Return the number of uncompressed bytes actually written. * @throws { BusinessError } 401 - The parameter check failed. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 17800004 - ZStream error. + * @throws { BusinessError } 17800004 - Compression or decompression stream error, which may be caused by an initialization error in the zlib stream structure or a modified structure. * @throws { BusinessError } 17800009 - Internal structure error. * @syscap SystemCapability.BundleManager.Zlib * @atomicservice diff --git a/api/@system.app.d.ets b/api/@system.app.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..c50c1fa747cd00cd990e057c8858393c5dd536ee --- /dev/null +++ b/api/@system.app.d.ets @@ -0,0 +1,354 @@ +/* + * Copyright (c) 2020 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Defines the AppResponse info. + * + * @interface AppResponse + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + */ +/** + * Defines the AppResponse info. + * + * @interface AppResponse + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 12 + */ +export interface AppResponse { + /** + * Application bundleName. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Application bundleName. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + appID: string; + + /** + * Application name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + */ + /** + * Application name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 12 + */ + appName: string; + + /** + * Application version name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + */ + /** + * Application version name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 12 + */ + versionName: string; + + /** + * Application version. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + */ + /** + * Application version. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 12 + */ + versionCode: number; +} + +/** + * Defines the option of screenOnVisible interface. + * + * @interface ScreenOnVisibleOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ +/** + * Defines the option of screenOnVisible interface. + * + * @interface ScreenOnVisibleOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +export interface ScreenOnVisibleOptions { + /** + * Whether to keep the application visible. The default value is false. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Whether to keep the application visible. The default value is false. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + visible?: boolean; + + /** + * Called when the application always keeps visible. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Called when the application always keeps visible. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + success?: () => void; + + /** + * Called when the application fails to keep visible. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Called when the application fails to keep visible. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + fail?: (data: string, code: number) => void; + + /** + * Called when the execution is completed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Called when the execution is completed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + complete?: () => void; +} + +/** + * Defines the option of RequestFullWindow interface. + * + * @interface RequestFullWindowOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ +/** + * Defines the option of RequestFullWindow interface. + * + * @interface RequestFullWindowOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +export interface RequestFullWindowOptions { + /** + * Defines the number of animation options. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Defines the number of animation options. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + duration: number; +} + +/** + * Defines the app class info. + * + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + */ +/** + * Defines the app class info. + * + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 12 + */ + declare class App { + /** + * Obtains the declared information in the config.json file of an application. + * + * @returns { AppResponse } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + */ + /** + * Obtains the declared information in the config.json file of an application. It will return null when used in StageModel. + * + * @returns { AppResponse } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 12 + */ + static getInfo(): AppResponse; + + /** + * Destroys the current ability. + * + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + */ + /** + * Destroys the current ability. It does not work in StageModel. + * + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @atomicservice + * @since 12 + */ + static terminate(): void; + + /** + * Keeps the application visible after the screen is waken up. + * This method prevents the system from returning to the home screen when the screen is locked. + * + * @param { ScreenOnVisibleOptions } options + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + static screenOnVisible(options?: ScreenOnVisibleOptions): void; + + /** + * Requests the application to run in full window. + * In some scenarios, such as semi-modal FA, the FA runs in non-full window. + * In this case, you can call this API. + * This API is invalid for an application already in full-window mode. + * + * @param { RequestFullWindowOptions } options Transition time from non-full window to full window, in milliseconds. + * By default, the value is in direct proportion to the distance between the non-full window and the full window. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + * @useinstead startAbility + */ + static requestFullWindow(options?: RequestFullWindowOptions): void; + + /** + * Set image cache capacity of decoded image count. + * if not set, the application will not cache any decoded image. + * + * @param { number } value - capacity of decoded image count. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Set image cache capacity of decoded image count. + * if not set, the application will not cache any decoded image. + * + * @param { number } value - capacity of decoded image count. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + static setImageCacheCount(value: number): void; + + /** + * Set image cache capacity of raw image data size in bytes before decode. + * if not set, the application will not cache any raw image data. + * + * @param { number } value - capacity of raw image data size in bytes. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Set image cache capacity of raw image data size in bytes before decode. + * if not set, the application will not cache any raw image data. + * + * @param { number } value - capacity of raw image data size in bytes. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + static setImageRawDataCacheSize(value: number): void; + + /** + * Set image file cache size in bytes on disk before decode. + * if not set, the application will cache 100MB image files on disk. + * + * @param { number } value - capacity of raw image data size in bytes. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + */ + /** + * Set image file cache size in bytes on disk before decode. + * if not set, the application will cache 100MB image files on disk. + * + * @param { number } value - capacity of raw image data size in bytes. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + static setImageFileCacheSize(value: number): void; +} +export default App; \ No newline at end of file diff --git a/api/@system.mediaquery.d.ets b/api/@system.mediaquery.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..b3d307e3d3cd9d2c310c022366f31d20988eda13 --- /dev/null +++ b/api/@system.mediaquery.d.ets @@ -0,0 +1,196 @@ +/* + * Copyright (c) 2020 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Defines the MediaQuery event. + * + * @interface MediaQueryEvent + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ +/** + * Defines the MediaQuery event. + * + * @interface MediaQueryEvent + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +export interface MediaQueryEvent { + /** + * The result of match result. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * The result of match result. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + matches: boolean; +} + +/** + * Defines the MediaQuery list info. + * + * @interface MediaQueryList + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ +/** + * Defines the MediaQuery list info. + * + * @interface MediaQueryList + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +export interface MediaQueryList { + /** + * Serialized media query condition. + * This parameter is read-only. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Serialized media query condition. + * This parameter is read-only. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + media?: string; + + /** + * Whether the query is successful. True if the query condition is matched successfully, false otherwise. + * This parameter is read-only. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Whether the query is successful. True if the query condition is matched successfully, false otherwise. + * This parameter is read-only. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + matches?: boolean; + + /** + * Called when the matches value changes. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Called when the matches value changes. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + onchange?: (matches: boolean) => void; + + /** + * Adds a listening function to MediaQueryList. + * The listening function must be added before onShow is called, that is, added to the onInit or onReady function. + * + * @param { function } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Adds a listening function to MediaQueryList. + * The listening function must be added before onShow is called, that is, added to the onInit or onReady function. + * + * @param { function } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + addListener(callback: (event: MediaQueryEvent) => void): void; + + /** + * Removes a listening function from MediaQueryList. + * + * @param { function } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Removes a listening function from MediaQueryList. + * + * @param { function } callback + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + removeListener(callback: (event: MediaQueryEvent) => void): void; +} + +/** + * Defines the mediaquery interface. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ +/** + * Defines the mediaquery interface. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +declare class MediaQuery { + /** + * Queries a media item and returns a MediaQueryList object. + * + * @param { string } condition + * @returns { MediaQueryList } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Queries a media item and returns a MediaQueryList object. + * + * @param { string } condition + * @returns { MediaQueryList } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + static matchMedia(condition: string): MediaQueryList; +} +export default MediaQuery \ No newline at end of file diff --git a/api/@system.prompt.d.ets b/api/@system.prompt.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..d101760da9a6dfec935d6cf5d42a94faa4a4677c --- /dev/null +++ b/api/@system.prompt.d.ets @@ -0,0 +1,443 @@ +/* + * Copyright (c) 2020 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Defines the options of ShowToast. + * + * @interface ShowToastOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + * @useinstead ohos.prompt + */ +export interface ShowToastOptions { + /** + * Text to display. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + message: string; + + /** + * Duration of toast dialog box. The default value is 1500. + * The recommended value ranges from 1500 ms to 10000ms. + * NOTE: A value less than 1500 is automatically changed to 1500. The maximum value is 10000 ms. + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + duration?: number; + + /** + * The distance between toast dialog box and the bottom of screen. + * + * @type { ?(string | number) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 5 + * @deprecated since 8 + */ + bottom?: string | number; +} + +/** + * Defines the prompt info of button. + * + * @interface Button + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ +/** + * Defines the prompt info of button. + * + * @interface Button + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +export interface Button { + /** + * Defines the button info. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Defines the button info. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + text: string; + + /** + * Defines the color of button. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Defines the color of button. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + color: string; +} + +/** + * Defines the response of ShowDialog. + * + * @interface ShowDialogSuccessResponse + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ +/** + * Defines the response of ShowDialog. + * + * @interface ShowDialogSuccessResponse + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +export interface ShowDialogSuccessResponse { + /** + * Defines the index of data. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Defines the index of data. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + index: number; +} + +/** + * Defines the option of show dialog. + * + * @interface ShowDialogOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ +/** + * Defines the option of show dialog. + * + * @interface ShowDialogOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +export interface ShowDialogOptions { + /** + * Title of the text to display. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Title of the text to display. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + title?: string; + + /** + * Text body. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Text body. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + message?: string; + + /** + * Array of buttons in the dialog box. + * The array structure is {text:'button', color: '#666666'}. + * One to three buttons are supported. The first button is of the positiveButton type, the second is of the negativeButton type, and the third is of the neutralButton type. + * + * @type { ?[Button, Button | undefined, Button | undefined] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Array of buttons in the dialog box. + * The array structure is {text:'button', color: '#666666'}. + * One to three buttons are supported. The first button is of the positiveButton type, the second is of the negativeButton type, and the third is of the neutralButton type. + * + * @type { ?[Button, Button | undefined, Button | undefined] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + buttons?: [Button, Button | undefined, Button | undefined]; + + /** + * Called when the dialog box is displayed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Called when the dialog box is displayed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + success?: (data: ShowDialogSuccessResponse) => void; + + /** + * Called when the operation is cancelled. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Called when the operation is cancelled. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + cancel?: (data: string, code: string) => void; + + /** + * Called when the dialog box is closed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Called when the dialog box is closed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + complete?: (data: string) => void; +} + +/** + * Defines the option of ShowActionMenu. + * + * @interface ShowActionMenuOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ +/** + * Defines the option of ShowActionMenu. + * + * @interface ShowActionMenuOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ +export interface ShowActionMenuOptions { + /** + * Title of the text to display. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Title of the text to display. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + title?: string; + + /** + * Array of buttons in the dialog box. + * The array structure is {text:'button', color: '#666666'}. + * One to six buttons are supported. + * + * @type { [Button, Button | undefined, Button | undefined, Button | undefined, Button | undefined, Button | undefined] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Array of buttons in the dialog box. + * The array structure is {text:'button', color: '#666666'}. + * One to six buttons are supported. + * + * @type { [Button, Button | undefined, Button | undefined, Button | undefined, Button | undefined, Button | undefined] } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + buttons: [Button, Button | undefined, Button | undefined, Button | undefined, Button | undefined, Button | undefined]; + + /** + * Called when the dialog box is displayed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Called when the dialog box is displayed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + success?: (tapIndex: number, errMsg: string) => void; + + /** + * Called when the operation is cancelled. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Called when the operation is cancelled. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + fail?: (errMsg: string) => void; + + /** + * Called when the dialog box is closed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Called when the dialog box is closed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + complete?: () => void; +} + +/** + * Defines the prompt interface. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ +/** + * Defines the prompt interface. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + declare class Prompt { + /** + * Displays the notification text. + * + * @param { ShowToastOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Displays the notification text. + * + * @param { ShowToastOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + static showToast(options: ShowToastOptions): void; + + /** + * Displays the dialog box. + * + * @param { ShowDialogOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + */ + /** + * Displays the dialog box. + * + * @param { ShowDialogOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + static showDialog(options: ShowDialogOptions): void; + + /** + * Displays the menu. + * + * @param { ShowActionMenuOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + */ + /** + * Displays the menu. + * + * @param { ShowActionMenuOptions } options - Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 11 + */ + static showActionMenu(options: ShowActionMenuOptions): void; +} +export default Prompt; \ No newline at end of file diff --git a/api/@system.router.d.ets b/api/@system.router.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..cd45b86d10d9692c60cc7db80c0aa5582953141b --- /dev/null +++ b/api/@system.router.d.ets @@ -0,0 +1,333 @@ +/* + * Copyright (c) 2020 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Defines the option of router. + * + * @interface RouterOptions + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + * @deprecated since 8 + * @useinstead ohos.router#RouterOptions + */ +export interface RouterOptions { + /** + * URI of the destination page, which supports the following formats: + * 1. Absolute path of the page, which is provided by the pages list in the config.json file. + * Example: + * pages/index/index + * pages/detail/detail + * 2. Particular path. If the URI is a slash (/), the home page is displayed. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + * @deprecated since 8 + */ + uri: string; + + /** + * Data that needs to be passed to the destination page during navigation. + * After the destination page is displayed, the parameter can be directly used for the page. + * For example, this.data1 (data1 is the key value of the params used for page navigation.) + * + * @type { ?Object } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + * @deprecated since 8 + */ + params?: Object; +} + +/** + * Defines the option of router back. + * + * @interface BackRouterOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 8 + * @useinstead ohos.router#RouterOptions + */ +export interface BackRouterOptions { + /** + * Returns to the page of the specified path. + * If the page with the specified path does not exist in the page stack, router.back() is called by default. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 8 + */ + uri?: string; + + /** + * Data that needs to be passed to the destination page during navigation. + * + * @type { ?Object } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 7 + * @deprecated since 8 + */ + params?: Object; +} + +/** + * Defines the state of router. + * + * @interface RouterState + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + * @useinstead ohos.router#RouterState + */ +export interface RouterState { + /** + * Index of the current page in the stack. + * NOTE: The index starts from 1 from the bottom to the top of the stack. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + index: number; + + /** + * Name of the current page, that is, the file name. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + name: string; + + /** + * Path of the current page. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + path: string; +} + +/** + * Defines the option of EnableAlertBeforeBackPage. + * + * @interface EnableAlertBeforeBackPageOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + * @useinstead ohos.router#RouterState + */ +export interface EnableAlertBeforeBackPageOptions { + /** + * dialog context. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + */ + message: string; + + /** + * Called when the dialog box is displayed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + */ + success?: (errMsg: string) => void; + + /** + * Called when the operation is cancelled. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + */ + cancel?: (errMsg: string) => void; + + /** + * Called when the dialog box is closed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + */ + complete?: () => void; +} + +/** + * Defines the option of DisableAlertBeforeBackPage. + * + * @interface DisableAlertBeforeBackPageOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + * @useinstead ohos.router#RouterOptions + */ +export interface DisableAlertBeforeBackPageOptions { + /** + * Called when the dialog box is displayed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + */ + success?: (errMsg: string) => void; + + /** + * Called when the operation is cancelled. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + */ + cancel?: (errMsg: string) => void; + + /** + * Called when the dialog box is closed. + * + * @type { ?function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + */ + complete?: () => void; +} + +/** + * Define ParamsInterface. + * + * @typedef { object } ParamsInterface + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 8 + */ +export type ParamsInterface = Record<string,Object> + +/** + * Defines the Router interface. + * + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + * @deprecated since 8 + * @useinstead ohos.router#router + */ +declare class Router { + /** + * Navigates to a specified page in the application based on the page URL and parameters. + * + * @param { RouterOptions } options Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + static push(options: RouterOptions): void; + + /** + * Replaces the current page with another one in the application. The current page is destroyed after replacement. + * + * @param { RouterOptions } options Options. + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + * @deprecated since 8 + */ + static replace(options: RouterOptions): void; + + /** + * Returns to the previous page or a specified page. + * + * @param { BackRouterOptions } options Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + static back(options?: BackRouterOptions): void; + + /** + * Obtains information about the current page params. + * + * @returns { ParamsInterface } Page params. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 7 + * @deprecated since 8 + */ + static getParams(): ParamsInterface; + + /** + * Clears all historical pages and retains only the current page at the top of the stack. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + static clear(): void; + + /** + * Obtains the number of pages in the current stack. + * + * @returns { string } Number of pages in the stack. The maximum value is 32. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + static getLength(): string; + + /** + * Obtains information about the current page state. + * + * @returns { RouterState } Page state. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 3 + * @deprecated since 8 + */ + static getState(): RouterState; + + /** + * Pop up dialog to ask whether to back + * + * @param { EnableAlertBeforeBackPageOptions } options Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + */ + static enableAlertBeforeBackPage(options: EnableAlertBeforeBackPageOptions): void; + + /** + * cancel enableAlertBeforeBackPage + * + * @param { DisableAlertBeforeBackPageOptions } options Options. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 6 + * @deprecated since 8 + */ + static disableAlertBeforeBackPage(options?: DisableAlertBeforeBackPageOptions): void; +} +export default Router; \ No newline at end of file diff --git a/api/ability/abilityResult.d.ts b/api/ability/abilityResult.d.ts index 335bb193014ecc1d562d4fc6bdb20402b89b5545..636c91f97b799ca30d97f39dfab5a426d396d39e 100644 --- a/api/ability/abilityResult.d.ts +++ b/api/ability/abilityResult.d.ts @@ -29,7 +29,8 @@ import Want from '../@ohos.app.ability.Want'; * @typedef AbilityResult * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface AbilityResult { /** @@ -47,7 +48,8 @@ export interface AbilityResult { * @type { number } * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ resultCode: number; @@ -66,7 +68,8 @@ export interface AbilityResult { * @type { ?Want } * @syscap SystemCapability.Ability.AbilityBase * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ want?: Want; } diff --git a/api/application/AbilityDelegator.d.ts b/api/application/AbilityDelegator.d.ts index 94c232d72c2cfdbd4b6b2a9f196914b7f0d5014d..12d5caa4b099127e9f400f3a9eb409f7111ad68d 100644 --- a/api/application/AbilityDelegator.d.ts +++ b/api/application/AbilityDelegator.d.ts @@ -19,13 +19,15 @@ */ import { AsyncCallback } from '../@ohos.base'; -import UIAbility from '../@ohos.app.ability.UIAbility'; -import AbilityStage from '../@ohos.app.ability.AbilityStage'; import { AbilityMonitor } from './AbilityMonitor'; -import { AbilityStageMonitor } from './AbilityStageMonitor'; import Context from './Context'; import Want from '../@ohos.app.ability.Want'; import { ShellCmdResult } from './shellCmdResult'; +/*** if arkts 1.1 */ +import UIAbility from '../@ohos.app.ability.UIAbility'; +import AbilityStage from '../@ohos.app.ability.AbilityStage'; +import { AbilityStageMonitor } from './AbilityStageMonitor'; +/*** endif */ /** * A global test utility interface used for adding AbilityMonitor objects and control lifecycle states of abilities. @@ -49,7 +51,8 @@ import { ShellCmdResult } from './shellCmdResult'; * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface AbilityDelegator { /** @@ -83,7 +86,8 @@ export interface AbilityDelegator { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ addAbilityMonitor(monitor: AbilityMonitor, callback: AsyncCallback<void>): void; @@ -118,7 +122,8 @@ export interface AbilityDelegator { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ addAbilityMonitor(monitor: AbilityMonitor): Promise<void>; @@ -668,7 +673,8 @@ export interface AbilityDelegator { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getAppContext(): Context; @@ -773,12 +779,12 @@ export interface AbilityDelegator { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -795,12 +801,12 @@ export interface AbilityDelegator { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -820,7 +826,7 @@ export interface AbilityDelegator { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -836,7 +842,8 @@ export interface AbilityDelegator { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ startAbility(want: Want, callback: AsyncCallback<void>): void; @@ -848,12 +855,12 @@ export interface AbilityDelegator { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -870,12 +877,12 @@ export interface AbilityDelegator { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -895,7 +902,7 @@ export interface AbilityDelegator { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -911,7 +918,8 @@ export interface AbilityDelegator { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ startAbility(want: Want): Promise<void>; @@ -1166,7 +1174,8 @@ export interface AbilityDelegator { * @param { AsyncCallback<ShellCmdResult> } callback - The callback of executeShellCommand. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ executeShellCommand(cmd: string, callback: AsyncCallback<ShellCmdResult>): void; @@ -1187,7 +1196,8 @@ export interface AbilityDelegator { * @param { AsyncCallback<ShellCmdResult> } callback - The callback of executeShellCommand. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ executeShellCommand(cmd: string, timeoutSecs: number, callback: AsyncCallback<ShellCmdResult>): void; @@ -1208,7 +1218,8 @@ export interface AbilityDelegator { * @returns { Promise<ShellCmdResult> } the promise returned by the function. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ executeShellCommand(cmd: string, timeoutSecs?: number): Promise<ShellCmdResult>; @@ -1308,4 +1319,6 @@ export interface AbilityDelegator { setMockList(mockList: Record<string, string>): void; } +/*** if arkts 1.1 */ export default AbilityDelegator; +/*** endif */ diff --git a/api/application/AbilityMonitor.d.ts b/api/application/AbilityMonitor.d.ts index c3589e52e3b6a5d52e607ba90d62c59bf5ec6d43..5978bda513b72741b9d2c51ad3d1c83485a7d51d 100644 --- a/api/application/AbilityMonitor.d.ts +++ b/api/application/AbilityMonitor.d.ts @@ -18,7 +18,9 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ import UIAbility from '../@ohos.app.ability.UIAbility'; +/*** endif */ /** * Provide methods for matching monitored Ability objects that meet specified conditions. @@ -45,7 +47,8 @@ import UIAbility from '../@ohos.app.ability.UIAbility'; * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface AbilityMonitor { /** @@ -261,4 +264,6 @@ export interface AbilityMonitor { onWindowStageDestroy?: (ability: UIAbility) => void; } +/*** if arkts 1.1 */ export default AbilityMonitor; +/*** endif */ diff --git a/api/application/AbilityStageContext.d.ts b/api/application/AbilityStageContext.d.ts index 062740fe6cd65a424f44832f2e3f2de065afdcc2..7ba6723754bab9c82a5340cda99f2e885a504310 100644 --- a/api/application/AbilityStageContext.d.ts +++ b/api/application/AbilityStageContext.d.ts @@ -47,9 +47,10 @@ import Context from './Context'; * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class AbilityStageContext extends Context { +declare class AbilityStageContext extends Context { /** * Indicates configuration information about an module. * @@ -106,7 +107,10 @@ export default class AbilityStageContext extends Context { * @StageModelOnly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ config: Configuration; } + +export default AbilityStageContext; \ No newline at end of file diff --git a/api/application/AbilityStartCallback.d.ts b/api/application/AbilityStartCallback.d.ts index ad04ff4c7d5a50dcacf5e24e66906700ce4967ef..53953365b2e4d802a977c03cabeb850a2547de33 100644 --- a/api/application/AbilityStartCallback.d.ts +++ b/api/application/AbilityStartCallback.d.ts @@ -18,14 +18,17 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ import type { AbilityResult } from '../ability/abilityResult'; +/*** endif */ /** * The callback of UIAbility or UIExtensionAbility. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export default class AbilityStartCallback { diff --git a/api/application/AccessibilityExtensionContext.d.ts b/api/application/AccessibilityExtensionContext.d.ts index ebf677f378fba7af002c4498fe937895c49eeac1..be448fd0baf36b46be7a0bdad85554acfdff040b 100644 --- a/api/application/AccessibilityExtensionContext.d.ts +++ b/api/application/AccessibilityExtensionContext.d.ts @@ -18,7 +18,7 @@ * @kit AccessibilityKit */ -import type { AsyncCallback, BusinessError } from '../@ohos.base'; +import type { AsyncCallback, BusinessError, Callback } from '../@ohos.base'; import ExtensionContext from './ExtensionContext'; import type accessibility from '../@ohos.accessibility'; import type { GesturePath } from '../@ohos.accessibility.GesturePath'; @@ -271,7 +271,10 @@ export default class AccessibilityExtensionContext extends ExtensionContext { * @param { number } elementId Indicates the elementId. * @returns { Promise<Array<AccessibilityElement>> } * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. - * @throws { BusinessError } 401 - Input parameter error. + * @throws { BusinessError } 401 - Input parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; + * 3. Parameter verification failed. * @throws { BusinessError } 9300003 - No accessibility permission to perform the operation. * @syscap SystemCapability.BarrierFree.Accessibility.Core * @systemapi @@ -294,6 +297,70 @@ export default class AccessibilityExtensionContext extends ExtensionContext { * @since 18 */ getDefaultFocusedElementIds(windowId: number): Promise<Array<number>>; + + /** + * Hold running lock to prevent screen turning off automatically. + * + * @permission ohos.permission.ACCESSIBILITY_EXTENSION_ABILITY + * @throws { BusinessError } 201 - Permission verification failed.The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @systemapi + * @since 20 + */ + holdRunningLockSync(): void; + + /** + * Unhold running lock. + * + * @permission ohos.permission.ACCESSIBILITY_EXTENSION_ABILITY + * @throws { BusinessError } 201 - Permission verification failed.The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @systemapi + * @since 20 + */ + unholdRunningLockSync(): void; + + /** + * Register accessibilityExtensionAbility disconnect callback. + * + * @permission ohos.permission.ACCESSIBILITY_EXTENSION_ABILITY + * @param { 'preDisconnect' } type Indicates the accessibilityExtensionAbility pre disconnect. + * @param { Callback<void> } callback Indicates the callback function. + * @throws { BusinessError } 201 - Permission verification failed.The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @systemapi + * @since 20 + */ + on(type: 'preDisconnect', callback: Callback<void>): void; + + /** + * Unregister accessibilityExtensionAbility disconnect callback. + * + * @permission ohos.permission.ACCESSIBILITY_EXTENSION_ABILITY + * @param { 'preDisconnect' } type Indicates the accessibilityExtensionAbility pre disconnect. + * @param { Callback<void> } callback Indicates the callback function. + * @throws { BusinessError } 201 - Permission verification failed.The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @systemapi + * @since 20 + */ + off(type: 'preDisconnect', callback?: Callback<void>): void; + + /** + * Notify accessibility when accessibilityExtensionAbility is ready to disconnect. + * + * @permission ohos.permission.ACCESSIBILITY_EXTENSION_ABILITY + * @throws { BusinessError } 201 - Permission verification failed.The application does not have the permission required to call the API. + * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. + * @syscap SystemCapability.BarrierFree.Accessibility.Core + * @systemapi + * @since 20 + */ + notifyDisconnect(): void; } /** diff --git a/api/application/AppServiceExtensionContext.d.ts b/api/application/AppServiceExtensionContext.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..ad4ec7d8711b3e7000a5e816360a5b3c6b579101 --- /dev/null +++ b/api/application/AppServiceExtensionContext.d.ts @@ -0,0 +1,120 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit AbilityKit + */ + +import ExtensionContext from './ExtensionContext'; +import { ConnectOptions } from '../ability/connectOptions'; +import Want from '../@ohos.app.ability.Want'; +import StartOptions from '../@ohos.app.ability.StartOptions'; + +/** + * The context of app service extension. It allows access to AppServiceExtension-specific resources. + * + * @extends ExtensionContext + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ +export default class AppServiceExtensionContext extends ExtensionContext { + /** + * Connects the current ability to a service extension ability. + * If the target service extension ability is invisible, + * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to connect target invisible service extension ability. + * If the target service extension ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC. + * + * @param { Want } want - The element name of the service ability + * @param { ConnectOptions } options - The remote object instance + * @returns { number } Returns the number code of the ability connected + * @throws { BusinessError } 16000001 - The specified ability does not exist. + * @throws { BusinessError } 16000002 - Incorrect ability type. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. + * @throws { BusinessError } 16000005 - The specified process does not have the permission. + * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. + * @throws { BusinessError } 16000008 - The crowdtesting application expires. + * @throws { BusinessError } 16000011 - The context does not exist. + * @throws { BusinessError } 16000050 - Internal error. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + connectServiceExtensionAbility(want: Want, options: ConnectOptions): number; + + /** + * Disconnect an ability from a service extension, in contrast to {@link connectServiceExtensionAbility}. + * + * @param { number } connection - The number code of the ability connected + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 16000011 - The context does not exist. + * @throws { BusinessError } 16000050 - Internal error. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + disconnectServiceExtensionAbility(connection: number): Promise<void>; + + /** + * Start a UIAbility. + * If the target ability is visible, you can start the target ability: If the target ability is invisible, + * you need to apply for permission:ohos.pernission.START_INVISIBLE_ABILITY to start target invisible ability. + * If the target ability is in cross-device, you need to appply for permission:ohos.pernission.DISTRIBUTED_DATASYNC. + * + * @param { Want } want - Indicates the ability to start. + * @param { StartOptions } [options] - Indicates the start options. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 201 - The application does not have permission to call the interface. + * @throws { BusinessError } 16000001 - The specified ability does not exist. + * @throws { BusinessError } 16000002 - Incorrect ability type. + * @throws { BusinessError } 16000004 - Failed to start theinvisible ability. + * @throws { BusinessError } 16000005 - The specified process does not have the permission. + * @throws { BusinessError } 16000008 - The crowdtesting application expires. + * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. + * @throws { BusinessError } 16000011 - The context does not exist. + * @throws { BusinessError } 16000012 - The application is controlled. + * @throws { BusinessError } 16000013 - The application is controlled by EDM. + * @throws { BusinessError } 16000019 - No natching abiliity is found. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000055 - Installation-free timed out. + * @throws { BusinessError } 16000071 - App clone is not supported. + * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported. + * @throws { BusinessError } 16000073 - The app clone index is invalid. + * @throws { BusinessError } 16000076 - The app instance key is invalid. + * @throws { BusinessError } 16000077 - The number of app instances reaches the limit. + * @throws { BusinessError } 16000078 - The multi-instance is not supported. + * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified. + * @throws { BusinessError } 16000080 - Creating a new instance is not supported. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + startAbility(want: Want, options?: StartOptions): Promise<void>; + + /** + * Destroys this app service extension. + * + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. + * @throws { BusinessError } 16000011 - The context does not exist. + * @throws { BusinessError } 16000050 - Internal error. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + terminateSelf(): Promise<void>; +} diff --git a/api/application/ApplicationContext.d.ts b/api/application/ApplicationContext.d.ts index 95a9c5fab3c381392779cb0a427a8238dddddb34..b90f46c56a8fbb63119ef1980850a8dc127b439d 100644 --- a/api/application/ApplicationContext.d.ts +++ b/api/application/ApplicationContext.d.ts @@ -18,14 +18,17 @@ * @kit AbilityKit */ -import { AsyncCallback } from '../@ohos.base'; import Context from './Context'; + +/*** if arkts 1.1 */ +import { AsyncCallback } from '../@ohos.base'; import AbilityLifecycleCallback from '../@ohos.app.ability.AbilityLifecycleCallback'; import EnvironmentCallback from '../@ohos.app.ability.EnvironmentCallback'; import type ApplicationStateChangeCallback from '../@ohos.app.ability.ApplicationStateChangeCallback'; import { ProcessInformation } from './ProcessInformation'; import type ConfigurationConstant from '../@ohos.app.ability.ConfigurationConstant'; import Want from '../@ohos.app.ability.Want'; +/*** endif */ /** * The context of an application. It allows access to application-specific resources. @@ -45,16 +48,18 @@ import Want from '../@ohos.app.ability.Want'; * @since 10 */ /** - * The context of an application. It allows access to application-specific resources. + * The ApplicationContext module, inherited from Context, provides application-level context capabilities, including + * APIs for registering and unregistering the lifecycle of application components. * * @extends Context * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class ApplicationContext extends Context { +declare class ApplicationContext extends Context { /** * Register ability lifecycle callback. * @@ -79,12 +84,18 @@ export default class ApplicationContext extends Context { * @since 10 */ /** - * Register ability lifecycle callback. + * Registers a listener to monitor the ability lifecycle of the application. + * This API uses an asynchronous callback to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * </p> * - * @param { 'abilityLifecycle' } type - abilityLifecycle. - * @param { AbilityLifecycleCallback } callback - The ability lifecycle callback. + * @param { 'abilityLifecycle' } type - Event type. + * @param { AbilityLifecycleCallback } callback - Callback used to return the ID of the registered listener. * @returns { number } Returns the number code of the callback. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform @@ -117,12 +128,19 @@ export default class ApplicationContext extends Context { * @since 10 */ /** - * Unregister ability lifecycle callback. + * Unregisters the listener that monitors the ability lifecycle of the application. + * This API uses an asynchronous callback to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * </p> * - * @param { 'abilityLifecycle' } type - abilityLifecycle. - * @param { number } callbackId - Indicates the number code of the callback. - * @param { AsyncCallback<void> } callback - The callback of off. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { 'abilityLifecycle' } type - Event type. + * @param { number } callbackId - ID of the listener to unregister. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the deregistration is successful, + * err is undefined. Otherwise, err is an error object. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform @@ -155,12 +173,18 @@ export default class ApplicationContext extends Context { * @since 11 */ /** - * Unregister ability lifecycle callback. + * Unregisters the listener that monitors the ability lifecycle of the application. + * This API uses a promise to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * </p> * - * @param { 'abilityLifecycle' } type - abilityLifecycle. - * @param { number } callbackId - Indicates the number code of the callback. - * @returns { Promise<void> } The promise returned by the function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { 'abilityLifecycle' } type - Event type. + * @param { number } callbackId - ID of the listener to unregister. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform @@ -181,12 +205,19 @@ export default class ApplicationContext extends Context { * @since 9 */ /** - * Register environment callback. + * Registers a listener for system environment changes. + * This API uses an asynchronous callback to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * </p> * - * @param { 'environment' } type - environment. - * @param { EnvironmentCallback } callback - The environment callback. - * @returns { number } Returns the number code of the callback. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { 'environment' } type - Event type. + * @param { EnvironmentCallback } callback - Callback used to return the system environment changes. + * @returns { number } ID of the registered listener. The ID is incremented by 1 each time the listener is + * registered. When the ID exceeds 2^63-1, -1 is returned. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -206,12 +237,19 @@ export default class ApplicationContext extends Context { * @since 9 */ /** - * Unregister environment callback. + * Unregisters the listener for system environment changes. + * This API uses an asynchronous callback to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * </p> * - * @param { 'environment' } type - environment. - * @param { number } callbackId - Indicates the number code of the callback. - * @param { AsyncCallback<void> } callback - The callback of unregisterEnvironmentCallback. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { 'environment' } type - Event type. + * @param { number } callbackId - ID of the listener to unregister. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the deregistration is successful, + * err is undefined. Otherwise, err is an error object. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -231,12 +269,18 @@ export default class ApplicationContext extends Context { * @since 9 */ /** - * Unregister environment callback. + * Unregisters the listener for system environment changes. + * This API uses a promise to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * </p> * - * @param { 'environment' } type - environment. - * @param { number } callbackId - Indicates the number code of the callback. - * @returns { Promise<void> } The promise returned by the function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { 'environment' } type - Event type. + * @param { number } callbackId - ID of the listener to unregister. + * @returns { Promise<void> } Promise that returns no value. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -266,11 +310,19 @@ export default class ApplicationContext extends Context { * @since 11 */ /** - * Register applicationStateChange callback. + * Registers a listener for application foreground/background state changes. + * This API uses an asynchronous callback to return the result. * - * @param { 'applicationStateChange' } type - applicationStateChange. - * @param { ApplicationStateChangeCallback } callback - The applicationStateChange callback. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * </p> + * + * @param { 'applicationStateChange' } type - Event type. + * @param { ApplicationStateChangeCallback } callback - Callback used to return the result. You can define a callback + * for switching from the background to the foreground and a callback for switching from the foreground to the + * background. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform @@ -301,11 +353,21 @@ export default class ApplicationContext extends Context { * @since 11 */ /** - * Unregister applicationStateChange callback. + * Unregisters the listener for application foreground/background state changes. + * This API uses an asynchronous callback to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * <br>A listener must have been registered by calling <code>ApplicationContext.on('applicationStateChange')</code>. + * </p> * - * @param { 'applicationStateChange' } type - applicationStateChange. - * @param { ApplicationStateChangeCallback } [callback] - The applicationStateChange callback. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { 'applicationStateChange' } type - Event type. + * @param { ApplicationStateChangeCallback } [callback] - Callback used to return the result.The value can be a + * callback defined by <code>ApplicationContext.on('applicationStateChange')</code> or empty. + * - If a defined callback is passed in, the listener for that callback is unregistered. + * - If no value is passed in, all the listeners for the corresponding event are unregistered. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform @@ -338,10 +400,13 @@ export default class ApplicationContext extends Context { * @since 10 */ /** - * Get information about running processes + * Obtains information about the running processes. + * This API uses a promise to return the result. * - * @returns { Promise<Array<ProcessInformation>> } Returns the array of {@link ProcessInformation}. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @returns { Promise<Array<ProcessInformation>> } Promise used to return the API call result and the process running + * information. You can perform error handling or custom processing in this callback. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -376,10 +441,13 @@ export default class ApplicationContext extends Context { * @since 10 */ /** - * Get information about running processes + * Obtains information about the running processes. + * This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<Array<ProcessInformation>> } callback - The callback is used to return the array of {@link ProcessInformation}. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { AsyncCallback<Array<ProcessInformation>> } callback - Callback used to return the information about the + * running processes. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -401,10 +469,19 @@ export default class ApplicationContext extends Context { * @since 9 */ /** - * Kill all processes of the application + * Kills all processes of this application. + * The application will not go through the normal lifecycle when exiting. + * This API uses a promise to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * <br>This API is used to forcibly exit an application in abnormal scenarios. To exit an application properly, + * call terminateSelf(). + * </p> * * @returns { Promise<void> } The promise returned by the function. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -414,10 +491,19 @@ export default class ApplicationContext extends Context { killAllProcesses(): Promise<void>; /** - * Kill all processes of the application - * - * @param { boolean } clearPageStack - The flag that indicates whether the page stack need to be cleared. - * @returns { Promise<void> } The promise returned by the function. + * Kills all processes of this application. + * The application will not go through the normal lifecycle when exiting. + * This API uses a promise to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * <br>This API is used to forcibly exit an application in abnormal scenarios. To exit an application properly, + * call terminateSelf(). + * </p> + * + * @param { boolean } clearPageStack - Whether to clear the page stack. The value <code>true</code> means to clear + * the page stack, and <code>false</code> means the opposite. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - If the input parameter is not valid parameter. * @throws { BusinessError } 16000011 - The context does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -438,10 +524,20 @@ export default class ApplicationContext extends Context { * @since 9 */ /** - * Kill all processes of the application + * Kills all processes of this application. + * The application will not go through the normal lifecycle when exiting. + * This API uses an asynchronous callback to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * <br>This API is used to forcibly exit an application in abnormal scenarios. To exit an application properly, + * call terminateSelf(). + * </p> * - * @param { AsyncCallback<void> } callback - The callback of killAllProcesses. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { AsyncCallback<void> } callback - Callback used to return the result. If all the processes are killed, + * <code>err</code> is <code>undefined</code>. Otherwise, <code>err</code> is an error object. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -462,10 +558,16 @@ export default class ApplicationContext extends Context { * @since 11 */ /** - * Set colorMode of the application + * Sets the color mode for the application. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * </p> * - * @param { ConfigurationConstant.ColorMode } colorMode - Color mode. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { ConfigurationConstant.ColorMode } colorMode - Target color mode, including dark mode, light mode, and + * system theme mode (no setting). + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -476,10 +578,16 @@ export default class ApplicationContext extends Context { setColorMode(colorMode: ConfigurationConstant.ColorMode): void; /** - * Set language of the application + * Sets the language for the application. * - * @param { string } language - Language. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * </p> + * + * @param { string } language - Target language. The list of supported languages can be obtained by + * calling getSystemLanguages(). + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -489,9 +597,16 @@ export default class ApplicationContext extends Context { setLanguage(language: string): void; /** - * Clear up application data by app self + * Clears up the application data and revokes the permissions that the application has requested from users. + * This API uses a promise to return the result. * - * @returns { Promise<void> } The promise returned by the function. + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * <br>This API stops the application process. After the application process is stopped, all subsequent callbacks + * will not be triggered. + * </p> + * + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -501,10 +616,19 @@ export default class ApplicationContext extends Context { clearUpApplicationData(): Promise<void>; /** - * Clear up application data by app self - * - * @param { AsyncCallback<void> } callback - The callback of clearUpApplicationData. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * Clears up the application data and revokes the permissions that the application has requested from users. + * This API uses an asynchronous callback to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * <br>This API stops the application process. After the application process is stopped, all subsequent callbacks + * will not be triggered. + * </p> + * + * @param { AsyncCallback<void> } callback - Callback used to return the result. If the application data is cleared + * up, <code>error</code> is <code>undefined</code>; otherwise, <code>error</code> is an error object. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -514,10 +638,17 @@ export default class ApplicationContext extends Context { clearUpApplicationData(callback: AsyncCallback<void>): void; /** - * Kill the application and does not call back the onDestroy method, then start UIAbility. + * Restarts the application and starts the specified UIAbility. + * The onDestroy callback is not triggered during the restart. * - * @param { Want } want - Indicates the want name of the current app, and the ability name is UIAbility. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * <p>**NOTE**: + * <br>It can be called only by the main thread, and the application to restart must be active. + * </p> + * + * @param { Want } want - Want information about the UIAbility to start. No verification is performed on the bundle + * name passed in. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000063 - The target to restart does not belong to the current application or is not a UIAbility. @@ -530,17 +661,22 @@ export default class ApplicationContext extends Context { restartApp(want: Want): void; /** - * Preload UIExtensionAbility. + * The preloaded <code>UIExtensionAbility</code> instance is sent to the <code>onCreate</code> lifecycle of the + * UIExtensionAbility and waits to be loaded by the current application. + * A <code>UIExtensionAbility</code> instance can be preloaded for multiple times. Each time a preloaded + * <code>UIExtensionAbility</code> instance is loaded, the next preloaded <code>UIExtensionAbility</code> + * instance is sent to the <code>onCreate</code> lifecycle of the UIExtensionAbility. * * @permission ohos.permission.PRELOAD_UI_EXTENSION_ABILITY - * @param { Want } want - Indicates the want of target UIExtensionAbility. - * @returns { Promise<void> } The promise returned by the function. + * @param { Want } want - Want information of the UIExtensionAbility. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 202 - The application is not system-app, can not use system-api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -551,24 +687,43 @@ export default class ApplicationContext extends Context { preloadUIExtensionAbility(want: Want): Promise<void>; /** - * Set the state about whether the application supports process cache or not. - * - * @param { boolean } isSupported - Indicates the process cache support state. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * Sets whether the application itself supports process cache, which enables quick startup after caching. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * <br>This API only sets the application to be ready for quick startup after caching. It does not mean that quick + * startup will be triggered. Other conditions must be considered to determine whether to trigger quick startup. + * <br>The process cache support status takes effect for a single application process instance. The setting does not + * affect other process instances. After a process instance is destroyed, the status is not retained and can be + * reset. + * <br>To support process cache, you must call this API, with <code>true</code> passed in, in the <code>onCreate()</code> + * lifecycle of all AbilityStages in the same process. + * </p> + * + * @param { boolean } isSupported - Whether process cache is supported. The value <code>true</code> means that + * process cache is supported, and <code>false</code> means the opposite. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ setSupportedProcessCache(isSupported : boolean): void; /** - * Set font of the application + * Sets the font for this application. + * + * <p>**NOTE**: + * <br>This API can be called only by the main thread. + * </P> * - * @param { string } font - Font. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { string } font - Font, which can be registered by calling UIContext.registerFont. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -578,11 +733,11 @@ export default class ApplicationContext extends Context { setFont(font: string): void; /** - * Get current app clone index. + * Obtains the index of the current application clone. * - * @returns { number } Returns the app clone index for current app. + * @returns { number } Index of the current application clone. * @throws { BusinessError } 16000011 - The context does not exist. - * @throws { BusinessError } 16000071 - The MultiAppMode is not {@link APP_CLONE}. + * @throws { BusinessError } 16000071 - App clone is not supported. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -591,8 +746,15 @@ export default class ApplicationContext extends Context { getCurrentAppCloneIndex(): number; /** - * Set font size scale. - * @param {number} fontSizeScale - Font size scale. + * Sets the scale ratio for the font size of this application. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * </p> + * + * @param {number} fontSizeScale - Font scale ratio. The value is a non-negative number. When the application's + * {@link fontSizeScale} is set to <code>followSystem</code> and the value set here exceeds the value of + * fontSizeMaxScale, the value of fontSizeMaxScale takes effect. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -602,9 +764,14 @@ export default class ApplicationContext extends Context { setFontSizeScale(fontSizeScale: number): void; /** - * Get current app key of current running app instance. + * Obtains the unique instance ID of this application. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * <br>This API is valid only for 2-in-1 devices. + * </p> * - * @returns { string } Returns the key of current running app instance. + * @returns { string } Unique instance ID of the application. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000078 - The multi-instance is not supported. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -614,9 +781,16 @@ export default class ApplicationContext extends Context { getCurrentInstanceKey(): string; /** - * Get all running app instance key for current bundle + * Obtains the unique instance IDs of all multi-instances of this application. + * This API uses a promise to return the result. + * + * <p>**NOTE**: + * <br>It can be called only by the main thread. + * <br>This API is valid only for 2-in-1 devices. + * </p> * - * @returns { Promise<Array<string>> } Returns the array of all running app instance keys. + * @returns { Promise<Array<string>> } Promise used to return the unique instance IDs of all multi-instances of the + * application. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000078 - The multi-instance is not supported. @@ -626,3 +800,5 @@ export default class ApplicationContext extends Context { */ getAllRunningInstanceKeys(): Promise<Array<string>>; } + +export default ApplicationContext; \ No newline at end of file diff --git a/api/application/BaseContext.d.ts b/api/application/BaseContext.d.ts index feb94cc4b00c632eb690a3682633e534d5abeb69..77327e650859ffcc1feb0d44d40227e444f19380 100644 --- a/api/application/BaseContext.d.ts +++ b/api/application/BaseContext.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export default abstract class BaseContext { /** @@ -65,7 +66,8 @@ export default abstract class BaseContext { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ stageMode: boolean; } diff --git a/api/application/Context.d.ts b/api/application/Context.d.ts index 740b4c574bd594dae99e4e78704c7c4f2d57375d..ae0f9368ea2f52f6d1d0ab39911c5b7f38183063 100644 --- a/api/application/Context.d.ts +++ b/api/application/Context.d.ts @@ -18,12 +18,14 @@ * @kit AbilityKit */ -import { ApplicationInfo } from '../bundleManager/ApplicationInfo'; +/*** if arkts 1.1 */ import type { AsyncCallback } from '../@ohos.base'; -import resmgr from '../@ohos.resourceManager'; -import BaseContext from './BaseContext'; import EventHub from './EventHub'; +/*** endif */ +import { ApplicationInfo } from '../bundleManager/ApplicationInfo'; import ApplicationContext from './ApplicationContext'; +import BaseContext from './BaseContext'; +import resmgr from '../@ohos.resourceManager'; import contextConstant from '../@ohos.app.ability.contextConstant'; /** @@ -46,17 +48,18 @@ import contextConstant from '../@ohos.app.ability.contextConstant'; * @since 10 */ /** - * The base context of an ability or an application. It allows access to - * application-specific resources. + * The Context module, inherited frome {@link BaseContext}, provides context for abilities or applications, including + * access to application-specific resources. * * @extends BaseContext * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class Context extends BaseContext { +declare class Context extends BaseContext { /** * Indicates the capability of accessing application resources. * @@ -75,14 +78,15 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Indicates the capability of accessing application resources. + * Object for resource management. * * @type { resmgr.ResourceManager } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ resourceManager: resmgr.ResourceManager; @@ -104,14 +108,15 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Indicates configuration information about an application. + * Application information. * * @type { ApplicationInfo } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ applicationInfo: ApplicationInfo; @@ -133,7 +138,7 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Indicates app cache dir. + * Cache directory. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -162,14 +167,15 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Indicates app temp dir. + * Temporary directory. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ tempDir: string; @@ -191,14 +197,15 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Indicates app files dir. + * File directory. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ filesDir: string; @@ -220,7 +227,7 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Indicates app database dir. + * Database directory. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -249,7 +256,7 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Indicates app preferences dir. + * Preferences directory. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -278,7 +285,11 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Indicates app bundle code dir. + * Bundle code directory. + * + * <p>**NOTE**: + * <br>Do not access resource files using concatenated paths. Use @ohos.resourceManager instead. + * </p> * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -298,7 +309,7 @@ export default class Context extends BaseContext { * @since 9 */ /** - * Indicates app distributed files dir. + * Distributed file directory. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -309,7 +320,12 @@ export default class Context extends BaseContext { distributedFilesDir: string; /** - * Indicates app bundle resource dir. + * Resource directory. + * + * <p>**NOTE**: + * <br>You are required to manually create the resfile directory in <code><module-name>\resource</code>. The resfile + * directory can be accessed only in read-only mode. + * </p> * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -321,7 +337,7 @@ export default class Context extends BaseContext { resourceDir: string; /** - * Indicates app cloud storage files dir. + * Cloud file directory. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -349,7 +365,7 @@ export default class Context extends BaseContext { * @since 11 */ /** - * Indicates event hub. + * Event hub that implements event subscription, unsubscription, and triggering. * * @type { EventHub } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -369,18 +385,19 @@ export default class Context extends BaseContext { * @since 9 */ /** - * Indicates file area. + * Encryption level of the directory. * * @type { contextConstant.AreaMode } * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ area: contextConstant.AreaMode; /** - * Indicates process name. + * Process name of the current application. * * @type { string } * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -392,14 +409,21 @@ export default class Context extends BaseContext { processName: string; /** - * Create a bundle context + * Creates the context based on the bundle name. + * + * <p>**NOTE**: + * <br>If there are multiple modules in the stage model, resource ID conflicts may occur. You are advised to + * use application.createModuleContext instead. + * <br>This API is deprecated since API version 12. You are advised to use application.createBundleContext instead. + * </p> * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED - * @param { string } bundleName - Indicates the bundle name. - * @returns { Context } Returns the application context. + * @param { string } bundleName - Bundle name. + * @returns { Context } Context created. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly @@ -431,11 +455,16 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Create a module context + * Creates the context based on the module name. + * + * <p>**NOTE**: + * <br>This API is deprecated since API version 12. You are advised to use application.createModuleContext instead. + * </p> * - * @param { string } moduleName - Indicates the module name. - * @returns { Context } Returns the application context. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { string } moduleName - Module name. + * @returns { Context } Context created. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform @@ -447,12 +476,17 @@ export default class Context extends BaseContext { createModuleContext(moduleName: string): Context; /** - * Create a module context + * Creates the context based on the bundle name and module name. + * + * <p>**NOTE**: + * <br>This API is deprecated since API version 12. You are advised to use application.createModuleContext instead. + * </p> * - * @param { string } bundleName - Indicates the bundle name. - * @param { string } moduleName - Indicates the module name. - * @returns { Context } Returns the application context. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { string } bundleName - Bundle name. + * @param { string } moduleName - Module name. + * @returns { Context } Context created. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly @@ -463,13 +497,14 @@ export default class Context extends BaseContext { createModuleContext(bundleName: string, moduleName: string): Context; /** - * Create a system HSP module resource manager. + * This API allows OEM manufacturers to set up their own ResourceManager in the pre-installed system HSP. * - * @param { string } bundleName - Indicates the bundle name. - * @param { string } moduleName - Indicates the module name. + * @param { string } bundleName - Bundle name. + * @param { string } moduleName - Module name. * @returns { resmgr.ResourceManager } Returns the system HSP module resource manager. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. - * @throws { BusinessError } 16400001 - If the input bundleName is not system hsp. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. + * @throws { BusinessError } 16400001 - The input bundleName is not a system HSP. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly @@ -497,15 +532,15 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Get application context + * Obtains the context of this application. * - * @returns { ApplicationContext } Returns the application context. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @returns { ApplicationContext } Application context obtained. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ getApplicationContext(): ApplicationContext; @@ -521,11 +556,15 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Get group dir by the groupId. + * Obtains the shared directory based on a group ID. + * This API uses an asynchronous callback to return the result. * - * @param { string } dataGroupID - Indicates the groupId. - * @param { AsyncCallback<string> } callback - The callback of getGroupDir. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { string } dataGroupID - Group ID, which is assigned by the system when an atomic service project + * is created. + * @param { AsyncCallback<string> } callback - Group ID, which is assigned by the system when an atomic service + * project is created. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -546,10 +585,13 @@ export default class Context extends BaseContext { * @since 10 */ /** - * Get group dir by the groupId. + * Obtains the shared directory based on a group ID. + * This API uses a promise to return the result. * - * @param { string } dataGroupID - Indicates the groupId. - * @returns { Promise<string> } The promise returned by the function. + * @param { string } dataGroupID - Group ID, which is assigned by the system when an atomic service project + * is created. + * @returns { Promise<string> } Promise used to return the result. If no shared directory exists, null is returned. + * Only the encryption level EL2 is supported. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -560,15 +602,16 @@ export default class Context extends BaseContext { getGroupDir(dataGroupID: string): Promise<string>; /** - * Create a module resource manager. + * Creates a resource management object for a module. * * @permission ohos.permission.GET_BUNDLE_INFO_PRIVILEGED - * @param { string } bundleName - Indicates the bundle name. - * @param { string } moduleName - Indicates the module name. - * @returns { resmgr.ResourceManager } Returns the module resource manager. + * @param { string } bundleName - Bundle name. + * @param { string } moduleName - Module name. + * @returns { resmgr.ResourceManager } Object for resource management. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - Permission denied, non-system app called system api. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly @@ -577,11 +620,12 @@ export default class Context extends BaseContext { createModuleResourceManager(bundleName: string, moduleName: string): resmgr.ResourceManager; /** - * Create a area mode context.This context uses the same resourceManager as the original context. + * Creates the context for this application based on a data encryption level. + * This is required when an application needs to store different types of information in different directories. + * The application can obtain the corresponding directory. * - * @param { contextConstant.AreaMode } areaMode - Indicates the area mode. - * @returns { Context } Returns the context with the specified area mode. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { contextConstant.AreaMode } areaMode - Data encryption level. + * @returns { Context } Context created based on the data encryption level. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -590,12 +634,13 @@ export default class Context extends BaseContext { createAreaModeContext(areaMode: contextConstant.AreaMode): Context; /** - * Create a context by displayId. This Context updates the density and direction properties based on the displayId, - * while other property values remain the same as in the original Context. + * Creates the context based on the specified display ID, so as to obtain and use other application contexts with + * screen information (including ScreenDensity and Direction). * - * @param { number } displayId - Indicates the displayId. - * @returns { Context } Returns the context with the specified displayId. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. + * @param { number } displayId - Display ID. + * @returns { Context } Context with the specified screen information. + * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. + * 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -603,3 +648,5 @@ export default class Context extends BaseContext { */ createDisplayContext(displayId: number): Context; } + +export default Context; \ No newline at end of file diff --git a/api/application/ErrorObserver.d.ts b/api/application/ErrorObserver.d.ts index 5aa7b7ad1e62d56358c5eae53414af99309d3760..e388cd08e0633a89c7c7ebe481188f8432b4f587 100644 --- a/api/application/ErrorObserver.d.ts +++ b/api/application/ErrorObserver.d.ts @@ -37,7 +37,7 @@ * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ export default class ErrorObserver { /** @@ -62,7 +62,7 @@ export default class ErrorObserver { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onUnhandledException(errMsg: string): void; @@ -88,7 +88,7 @@ export default class ErrorObserver { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onException?(errObject: Error): void; } diff --git a/api/application/ExtensionContext.d.ts b/api/application/ExtensionContext.d.ts index 796aef36544fe75b3d50a5b9896dd583950a8d40..cdb9df42a73618ec0d4eae889ee7fb5e33a4e30a 100644 --- a/api/application/ExtensionContext.d.ts +++ b/api/application/ExtensionContext.d.ts @@ -18,8 +18,10 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ import { HapModuleInfo } from '../bundleManager/HapModuleInfo'; import { Configuration } from '../@ohos.app.ability.Configuration'; +/*** endif */ import Context from './Context'; import { ExtensionAbilityInfo } from '../bundleManager/ExtensionAbilityInfo'; @@ -38,9 +40,10 @@ import { ExtensionAbilityInfo } from '../bundleManager/ExtensionAbilityInfo'; * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class ExtensionContext extends Context { +declare class ExtensionContext extends Context { /** * Indicates configuration information about an module. * @@ -94,7 +97,10 @@ export default class ExtensionContext extends Context { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ extensionAbilityInfo: ExtensionAbilityInfo; } + +export default ExtensionContext; \ No newline at end of file diff --git a/api/application/FormEditExtensionContext.d.ts b/api/application/FormEditExtensionContext.d.ts index ff4e8be5e19664ea6c7a51b2df99c0b8ca0954fb..c236f8d1a06fa865b3e9de1412abb65092042def 100644 --- a/api/application/FormEditExtensionContext.d.ts +++ b/api/application/FormEditExtensionContext.d.ts @@ -38,8 +38,6 @@ export default class FormEditExtensionContext extends UIExtensionContext { * @param { Want } want - Including second extension ability name. * @returns { Promise<AbilityResult> } Returns the result of start second form editor extension ability. * @throws { BusinessError } 202 - The application is not a system application. - * @throws { BusinessError } 401 - Params error. Possible causes: - * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 16500050 - An IPC connection error happened. * @throws { BusinessError } 16500100 - Failed to obtain the configuration information. * @throws { BusinessError } 16501000 - An internal functional error occurred. diff --git a/api/application/FormExtensionContext.d.ts b/api/application/FormExtensionContext.d.ts index 09fa662843fe3f735c5f0c3e446999357d1d8675..6ef4e4fbd88db345aaaf54fa7ed06e05396960b0 100644 --- a/api/application/FormExtensionContext.d.ts +++ b/api/application/FormExtensionContext.d.ts @@ -131,7 +131,7 @@ export default class FormExtensionContext extends ExtensionContext { * 1.Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3.Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. diff --git a/api/application/KioskStatus.d.ts b/api/application/KioskStatus.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..6d223313e1b797b04cc757bf8cfd87ccf6b96725 --- /dev/null +++ b/api/application/KioskStatus.d.ts @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit AbilityKit + */ + +/** + * The Kiosk status data. + * + * @typedef KioskStatus + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + * @arkts 1.1&1.2 + */ +export interface KioskStatus { + /** + * Whether current system is in kiosk mode. + * + * @type { boolean } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + * @arkts 1.1&1.2 + */ + isKioskMode: boolean; + + /** + * The bundle name of kiosk app. + * + * @type { string } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + * @arkts 1.1&1.2 + */ + kioskBundleName: string; + + /** + * The budle uid of kiosk app. + * + * @type { number } + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + * @arkts 1.1&1.2 + */ + kioskBundleUid: number; +} diff --git a/api/application/LiveFormExtensionContext.d.ts b/api/application/LiveFormExtensionContext.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..dbc3bab3d58ff771de042235a60b9bef56c725f4 --- /dev/null +++ b/api/application/LiveFormExtensionContext.d.ts @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit FormKit + */ + +import ExtensionContext from './ExtensionContext'; + +/** + * The context of live form extension. It allows access to + * liveFormExtension-specific resources. + * + * @extends ExtensionContext + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @atomicservice + * @since 20 + */ +export default class LiveFormExtensionContext extends ExtensionContext { + /** + * Set the background image of the live form. + * + * @param { Resource } res - Resource of the background image. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities. + * @throws { BusinessError } 16501010 - Failed to set live form background image. + * @syscap SystemCapability.Ability.Form + * @stagemodelonly + * @atomicservice + * @since 20 + */ + setBackgroundImage(res: Resource): Promise<void>; +} \ No newline at end of file diff --git a/api/application/LoopObserver.d.ts b/api/application/LoopObserver.d.ts index a6ec1937eaf8901ae7ce07cf45d959f41378f874..0285fd66223f2f0716ddb8695c11f9167b00d44b 100644 --- a/api/application/LoopObserver.d.ts +++ b/api/application/LoopObserver.d.ts @@ -33,7 +33,7 @@ * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ export interface LoopObserver { /** @@ -51,7 +51,7 @@ export interface LoopObserver { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 18 + * @since 19 */ onLoopTimeOut?(timeout: number): void; } diff --git a/api/application/ServiceExtensionContext.d.ts b/api/application/ServiceExtensionContext.d.ts index 37e60c3a619b601b34995059bb719a9ebd01675f..20a60d8e882684141a7b2c2dbfae8e669e035c15 100644 --- a/api/application/ServiceExtensionContext.d.ts +++ b/api/application/ServiceExtensionContext.d.ts @@ -18,14 +18,16 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ import { AsyncCallback } from '../@ohos.base'; import { ConnectOptions } from '../ability/connectOptions'; import { Caller } from '../@ohos.app.ability.UIAbility'; -import ExtensionContext from './ExtensionContext'; import Want from '../@ohos.app.ability.Want'; import StartOptions from '../@ohos.app.ability.StartOptions'; import OpenLinkOptions from '../@ohos.app.ability.OpenLinkOptions'; import type AtomicServiceOptions from '../@ohos.app.ability.AtomicServiceOptions'; +/*** endif */ +import ExtensionContext from './ExtensionContext'; /** * The context of service extension. It allows access to @@ -35,7 +37,8 @@ import type AtomicServiceOptions from '../@ohos.app.ability.AtomicServiceOptions * @syscap SystemCapability.Ability.AbilityRuntime.Core * @systemapi * @stagemodelonly - * @since 9 + * @since arkts {'1.1':'9', '1.2':'20'} + * @arkts 1.1&1.2 */ export default class ServiceExtensionContext extends ExtensionContext { /** @@ -47,12 +50,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -78,12 +81,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -111,7 +114,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -120,7 +123,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -146,7 +149,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -185,12 +188,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -216,7 +219,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -248,7 +251,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -256,7 +259,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -282,7 +285,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -320,12 +323,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -352,12 +355,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -386,7 +389,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -395,7 +398,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -422,7 +425,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -468,12 +471,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -502,12 +505,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -536,7 +539,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -571,7 +574,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -615,7 +618,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -648,7 +651,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -682,7 +685,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -726,12 +729,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -761,7 +764,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -797,7 +800,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -843,12 +846,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -879,7 +882,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -888,7 +891,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -917,7 +920,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -960,12 +963,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -994,7 +997,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1029,7 +1032,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1037,7 +1040,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -1066,7 +1069,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1113,12 +1116,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -1150,7 +1153,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1159,7 +1162,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -1189,7 +1192,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1255,7 +1258,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1284,7 +1287,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1338,7 +1341,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1367,7 +1370,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1425,7 +1428,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1456,7 +1459,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1514,7 +1517,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1545,7 +1548,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1597,7 +1600,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000011 - The context does not exist. @@ -1645,7 +1648,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000011 - The context does not exist. @@ -1698,7 +1701,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000011 - The context does not exist. @@ -1751,7 +1754,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000011 - The context does not exist. @@ -1771,7 +1774,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. * @throws { BusinessError } 16000011 - The context does not exist. @@ -1802,7 +1805,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. * @throws { BusinessError } 16000011 - The context does not exist. @@ -1865,7 +1868,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1925,7 +1928,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1983,7 +1986,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2012,7 +2015,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. @@ -2043,7 +2046,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2069,12 +2072,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -2100,7 +2103,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2132,7 +2135,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2169,12 +2172,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -2200,7 +2203,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2231,7 +2234,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2267,12 +2270,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -2299,7 +2302,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2332,7 +2335,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2371,7 +2374,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -2414,7 +2417,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -2457,7 +2460,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 202 - The application is not system-app, can not use system-api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. - * @throws { BusinessError } 16300007 - The target free install task does not exist. + * @throws { BusinessError } 16300007 - The target free-installation task does not exist. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -2482,12 +2485,12 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. - * @throws { BusinessError } 16000013 - The EDM prohibits the application from launching. + * @throws { BusinessError } 16000013 - The application is controlled by EDM. * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. @@ -2511,7 +2514,7 @@ export default class ServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000050 - Internal error. diff --git a/api/application/UIAbilityContext.d.ts b/api/application/UIAbilityContext.d.ts index c13231a61dc99c1f2e8e34e486daa34d1a47db14..a79e718577d24adebe33186289fa47afd364d00d 100644 --- a/api/application/UIAbilityContext.d.ts +++ b/api/application/UIAbilityContext.d.ts @@ -18,26 +18,28 @@ * @kit AbilityKit */ -import { AbilityInfo } from '../bundleManager/AbilityInfo'; -import { AbilityResult } from '../ability/abilityResult'; -import { AsyncCallback } from '../@ohos.base'; +/*** if arkts 1.1 */ import { ConnectOptions } from '../ability/connectOptions'; import { HapModuleInfo } from '../bundleManager/HapModuleInfo'; -import Context from './Context'; -import Want from '../@ohos.app.ability.Want'; -import StartOptions from '../@ohos.app.ability.StartOptions'; import OpenLinkOptions from '../@ohos.app.ability.OpenLinkOptions'; -import { Configuration } from '../@ohos.app.ability.Configuration'; import { Caller } from '../@ohos.app.ability.UIAbility'; import image from '../@ohos.multimedia.image'; import dialogRequest from '../@ohos.app.ability.dialogRequest'; import AbilityConstant from '../@ohos.app.ability.AbilityConstant'; -import type AbilityStartCallback from './AbilityStartCallback'; -import window from '../@ohos.window'; import type AtomicServiceOptions from '../@ohos.app.ability.AtomicServiceOptions'; import type ConfigurationConstant from '../@ohos.app.ability.ConfigurationConstant'; import type UIServiceProxy from './UIServiceProxy'; import type UIServiceExtensionConnectCallback from './UIServiceExtensionConnectCallback'; +import type AbilityStartCallback from './AbilityStartCallback'; +/*** endif */ +import { AbilityInfo } from '../bundleManager/AbilityInfo'; +import { AbilityResult } from '../ability/abilityResult'; +import { AsyncCallback } from '../@ohos.base'; +import Context from './Context'; +import Want from '../@ohos.app.ability.Want'; +import StartOptions from '../@ohos.app.ability.StartOptions'; +import { Configuration } from '../@ohos.app.ability.Configuration'; +import window from '../@ohos.window'; /** * The context of an ability. It allows access to ability-specific resources. @@ -64,9 +66,10 @@ import type UIServiceExtensionConnectCallback from './UIServiceExtensionConnectC * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class UIAbilityContext extends Context { +declare class UIAbilityContext extends Context { /** * Indicates configuration information about an ability. * @@ -92,7 +95,8 @@ export default class UIAbilityContext extends Context { * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ abilityInfo: AbilityInfo; @@ -150,7 +154,8 @@ export default class UIAbilityContext extends Context { * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ config: Configuration; @@ -162,7 +167,8 @@ export default class UIAbilityContext extends Context { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ windowStage: window.WindowStage; @@ -174,12 +180,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -202,12 +208,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -233,12 +239,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -265,7 +271,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -274,8 +280,8 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -300,7 +306,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -327,7 +333,8 @@ export default class UIAbilityContext extends Context { * @stagemodelonly * @crossplatform * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ startAbility(want: Want, callback: AsyncCallback<void>): void; @@ -340,12 +347,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -368,7 +375,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -397,7 +404,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -428,7 +435,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 801 - Capability not support. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -436,15 +443,15 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. - * @throws { BusinessError } 16000067 - Start options check failed. - * @throws { BusinessError } 16000068 - Ability already running. + * @throws { BusinessError } 16000067 - The StartOptions check failed. + * @throws { BusinessError } 16000068 - The ability is already running. * @throws { BusinessError } 16200001 - The caller has been released. - * @throws { BusinessError } 16300003 - The target application is not self application. + * @throws { BusinessError } 16300003 - The target application is not the current application. * @throws { BusinessError } 16000073 - The app clone index is invalid. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -465,7 +472,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 801 - Capability not support. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -489,7 +496,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified. * @throws { BusinessError } 16000080 - Creating a new instance is not supported. * @throws { BusinessError } 16200001 - The caller has been released. - * @throws { BusinessError } 16300003 - The target application is not self application. + * @throws { BusinessError } 16300003 - The target application is not the current application. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -509,7 +516,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 801 - Capability not support. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -533,12 +540,13 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified. * @throws { BusinessError } 16000080 - Creating a new instance is not supported. * @throws { BusinessError } 16200001 - The caller has been released. - * @throws { BusinessError } 16300003 - The target application is not self application. + * @throws { BusinessError } 16300003 - The target application is not the current application. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ startAbility(want: Want, options: StartOptions, callback: AsyncCallback<void>): void; @@ -551,12 +559,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -581,12 +589,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -612,12 +620,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -645,7 +653,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 801 - Capability not support. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -654,15 +662,15 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. - * @throws { BusinessError } 16000067 - Start options check failed. - * @throws { BusinessError } 16000068 - Ability already running. + * @throws { BusinessError } 16000067 - The StartOptions check failed. + * @throws { BusinessError } 16000068 - The ability is already running. * @throws { BusinessError } 16200001 - The caller has been released. - * @throws { BusinessError } 16300003 - The target application is not self application. + * @throws { BusinessError } 16300003 - The target application is not the current application. * @throws { BusinessError } 16000073 - The app clone index is invalid. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -684,7 +692,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 801 - Capability not support. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -709,7 +717,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified. * @throws { BusinessError } 16000080 - Creating a new instance is not supported. * @throws { BusinessError } 16200001 - The caller has been released. - * @throws { BusinessError } 16300003 - The target application is not self application. + * @throws { BusinessError } 16300003 - The target application is not the current application. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -730,7 +738,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 801 - Capability not support. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -755,12 +763,13 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified. * @throws { BusinessError } 16000080 - Creating a new instance is not supported. * @throws { BusinessError } 16200001 - The caller has been released. - * @throws { BusinessError } 16300003 - The target application is not self application. + * @throws { BusinessError } 16300003 - The target application is not the current application. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ startAbility(want: Want, options?: StartOptions): Promise<void>; @@ -779,12 +788,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -814,12 +823,12 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -848,7 +857,7 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -883,7 +892,7 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -927,7 +936,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -960,7 +969,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -994,7 +1003,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1038,12 +1047,12 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -1073,7 +1082,7 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1109,7 +1118,7 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1147,7 +1156,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1174,7 +1183,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. @@ -1201,7 +1210,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. @@ -1228,13 +1237,13 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000073 - The app clone index is invalid. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -1257,7 +1266,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. @@ -1297,7 +1306,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1329,7 +1338,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1362,7 +1371,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1403,12 +1412,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -1438,7 +1447,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1447,7 +1456,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -1475,7 +1484,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1517,12 +1526,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -1550,7 +1559,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 202 - The application is not system-app, can not use system-api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1584,7 +1593,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 202 - The application is not system-app, can not use system-api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1592,7 +1601,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -1620,7 +1629,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 202 - The application is not system-app, can not use system-api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1666,12 +1675,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -1702,7 +1711,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1711,7 +1720,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -1740,7 +1749,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1777,12 +1786,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -1806,12 +1815,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -1837,12 +1846,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -1869,7 +1878,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1878,8 +1887,8 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -1904,7 +1913,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1946,7 +1955,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1973,7 +1982,8 @@ export default class UIAbilityContext extends Context { * @stagemodelonly * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ startAbilityForResult(want: Want, callback: AsyncCallback<AbilityResult>): void; @@ -1986,12 +1996,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -2015,7 +2025,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2045,7 +2055,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2076,7 +2086,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2084,8 +2094,8 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -2110,7 +2120,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2151,7 +2161,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2177,7 +2187,8 @@ export default class UIAbilityContext extends Context { * @stagemodelonly * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ startAbilityForResult(want: Want, options: StartOptions, callback: AsyncCallback<AbilityResult>): void; @@ -2190,12 +2201,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -2220,12 +2231,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -2252,12 +2263,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -2285,7 +2296,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2294,8 +2305,8 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -2321,7 +2332,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2364,7 +2375,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2391,7 +2402,8 @@ export default class UIAbilityContext extends Context { * @stagemodelonly * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ startAbilityForResult(want: Want, options?: StartOptions): Promise<AbilityResult>; @@ -2412,12 +2424,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -2440,12 +2452,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -2470,7 +2482,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2479,7 +2491,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -2502,7 +2514,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2544,12 +2556,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -2577,7 +2589,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 202 - The application is not system-app, can not use system-api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2611,7 +2623,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 202 - The application is not system-app, can not use system-api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2619,7 +2631,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -2647,7 +2659,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 202 - The application is not system-app, can not use system-api. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2698,12 +2710,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -2727,12 +2739,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -2758,7 +2770,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2767,7 +2779,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -2791,7 +2803,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2855,7 +2867,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2883,7 +2895,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2935,7 +2947,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -2963,7 +2975,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -3019,7 +3031,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -3049,7 +3061,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -3105,7 +3117,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -3135,7 +3147,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -3185,7 +3197,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000011 - The context does not exist. @@ -3233,7 +3245,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000011 - The context does not exist. @@ -3284,7 +3296,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000011 - The context does not exist. @@ -3335,7 +3347,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000011 - The context does not exist. @@ -3354,7 +3366,7 @@ export default class UIAbilityContext extends Context { * @param { AsyncCallback<void> } callback - The callback of terminateSelf. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. * @throws { BusinessError } 16000011 - The context does not exist. @@ -3388,7 +3400,8 @@ export default class UIAbilityContext extends Context { * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelf(callback: AsyncCallback<void>): void; @@ -3397,7 +3410,7 @@ export default class UIAbilityContext extends Context { * * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. * @throws { BusinessError } 16000011 - The context does not exist. @@ -3429,7 +3442,8 @@ export default class UIAbilityContext extends Context { * @stagemodelonly * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelf(): Promise<void>; @@ -3440,7 +3454,7 @@ export default class UIAbilityContext extends Context { * @param { AsyncCallback<void> } callback - The callback of terminateSelfWithResult. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. * @throws { BusinessError } 16000011 - The context does not exist. @@ -3474,7 +3488,8 @@ export default class UIAbilityContext extends Context { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback<void>): void; @@ -3485,7 +3500,7 @@ export default class UIAbilityContext extends Context { * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. * @throws { BusinessError } 16000011 - The context does not exist. @@ -3519,7 +3534,8 @@ export default class UIAbilityContext extends Context { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelfWithResult(parameter: AbilityResult): Promise<void>; @@ -3536,7 +3552,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000074 - The caller does not exist. - * @throws { BusinessError } 16000075 - Not support back to caller. + * @throws { BusinessError } 16000075 - BackToCaller is not supported. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly * @atomicservice @@ -3574,7 +3590,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -3625,7 +3641,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -3890,12 +3906,12 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -3921,12 +3937,12 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -3954,7 +3970,7 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -3989,7 +4005,7 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -4028,12 +4044,12 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -4059,7 +4075,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -4091,7 +4107,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -4125,7 +4141,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -4163,12 +4179,12 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -4195,12 +4211,12 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -4229,7 +4245,7 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -4265,7 +4281,7 @@ export default class UIAbilityContext extends Context { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -4301,12 +4317,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -4330,7 +4346,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -4357,12 +4373,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. @@ -4387,7 +4403,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -4437,7 +4453,8 @@ export default class UIAbilityContext extends Context { * @stagemodelonly * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ reportDrawnCompleted(callback: AsyncCallback<void>): void; @@ -4455,7 +4472,7 @@ export default class UIAbilityContext extends Context { * <br>2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -4496,7 +4513,7 @@ export default class UIAbilityContext extends Context { * <br>2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -4535,7 +4552,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -4576,7 +4593,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -4614,7 +4631,7 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000002 - Incorrect ability type. * @throws { BusinessError } 16000003 - The specified ID does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000050 - Internal error. @@ -4700,12 +4717,12 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. - * @throws { BusinessError } 16000013 - The EDM prohibits the application from launching. + * @throws { BusinessError } 16000013 - The application is controlled by EDM. * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. @@ -4731,11 +4748,11 @@ export default class UIAbilityContext extends Context { * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. - * @throws { BusinessError } 16000013 - The EDM prohibits the application from launching. + * @throws { BusinessError } 16000013 - The application is controlled by EDM. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000055 - Installation-free timed out. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -4781,11 +4798,26 @@ export default class UIAbilityContext extends Context { */ setAbilityInstanceInfo(label: string, icon: image.PixelMap): Promise<void>; + /** + * Revoke delegator. + * + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 801 - Capability not support. + * @throws { BusinessError } 16000011 - The context does not exist. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000065 - The API can be called only when the ability is running in the foreground. + * @throws { BusinessError } 16000084 - Only DelegatorAbility is allowed to call this API, and only once. + * @throws { BusinessError } 16000085 - An error occurred during the interaction between the ability and window. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 17 + */ + revokeDelegator(): Promise<void>; + /** * Set colorMode of uiability. * * @param { ConfigurationConstant.ColorMode } colorMode - Color mode. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -4793,4 +4825,92 @@ export default class UIAbilityContext extends Context { * @since 18 */ setColorMode(colorMode: ConfigurationConstant.ColorMode): void; + + /** + * Starts a new app service extension ability. + * If the target app service extension ability is invisible, + * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible app service extension ability. + * + * @param { Want } want - Indicates the want info to start. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000001 - The specified ability does not exist. + * @throws { BusinessError } 16000002 - Incorrect ability type. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. + * @throws { BusinessError } 16000005 - The specified process does not have the permission. + * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. + * @throws { BusinessError } 16000008 - The crowdtesting application expires. + * @throws { BusinessError } 16000011 - The context does not exist. + * @throws { BusinessError } 16000012 - The application is controlled. + * @throws { BusinessError } 16000013 - The application is controlled by EDM. + * @throws { BusinessError } 16000019 - No matching ability is found. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000200 - The caller is not in the appIdentifierAllowList of the target application. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + startAppServiceExtensionAbility(want: Want): Promise<void>; + + /** + * Stops an app service extension ability. + * If the target app service extension ability is invisible, + * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to stop target invisible app service extension ability. + * + * @param { Want } want - Indicates the want info to start. + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000001 - The specified ability does not exist. + * @throws { BusinessError } 16000002 - Incorrect ability type. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. + * @throws { BusinessError } 16000005 - The specified process does not have the permission. + * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. + * @throws { BusinessError } 16000011 - The context does not exist. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000200 - The caller is not in the appIdentifierAllowList of the target application. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + stopAppServiceExtensionAbility(want: Want): Promise<void>; + + /** + * Connects current ability to an app service extension ability. + * If the target app service extension ability is invisible, + * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to connect target invisible app service extension ability. + * + * @param { Want } want - The element name of the app service ability + * @param { ConnectOptions } options - The remote object instance + * @returns { number } Returns the number code of the ability connected + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000001 - The specified ability does not exist. + * @throws { BusinessError } 16000002 - Incorrect ability type. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. + * @throws { BusinessError } 16000005 - The specified process does not have the permission. + * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. + * @throws { BusinessError } 16000008 - The crowdtesting application expires. + * @throws { BusinessError } 16000011 - The context does not exist. + * @throws { BusinessError } 16000050 - Internal error. + * @throws { BusinessError } 16000201 - The target service has not been started yet. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + connectAppServiceExtensionAbility(want: Want, options: ConnectOptions): number; + + /** + * Disconnect current ability from an app service extension, in contrast to {@link connectAppServiceExtensionAbility}. + * + * @param { number } connection - The number code of the ability connected + * @returns { Promise<void> } The promise returned by the function. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 16000011 - The context does not exist. + * @throws { BusinessError } 16000050 - Internal error. + * @syscap SystemCapability.Ability.AbilityRuntime.Core + * @stagemodelonly + * @since 20 + */ + disconnectAppServiceExtensionAbility(connection: number): Promise<void>; } + +export default UIAbilityContext; \ No newline at end of file diff --git a/api/application/UIExtensionContext.d.ts b/api/application/UIExtensionContext.d.ts index fcf3144f1a9d1b854b43dbe67d33f3cb25e3dfde..b5d89cfd7fd99933c320ac759278a18374955f91 100755 --- a/api/application/UIExtensionContext.d.ts +++ b/api/application/UIExtensionContext.d.ts @@ -18,10 +18,14 @@ * @kit AbilityKit */ -import type { AbilityResult } from '../ability/abilityResult'; +/*** if arkts 1.2 */ +import { AbilityResult } from '../ability/abilityResult'; +/*** endif */ import type { AsyncCallback } from '../@ohos.base'; -import type { ConnectOptions } from '../ability/connectOptions'; import ExtensionContext from './ExtensionContext'; +/*** if arkts 1.1 */ +import type { AbilityResult } from '../ability/abilityResult'; +import type { ConnectOptions } from '../ability/connectOptions'; import type Want from '../@ohos.app.ability.Want'; import type StartOptions from '../@ohos.app.ability.StartOptions'; import type AtomicServiceOptions from '../@ohos.app.ability.AtomicServiceOptions'; @@ -29,6 +33,7 @@ import OpenLinkOptions from '../@ohos.app.ability.OpenLinkOptions'; import type ConfigurationConstant from '../@ohos.app.ability.ConfigurationConstant'; import type UIServiceProxy from './UIServiceProxy'; import type UIServiceExtensionConnectCallback from './UIServiceExtensionConnectCallback'; +/*** endif */ /** * The context of UI extension. It allows access to UIExtension-specific resources. @@ -36,9 +41,10 @@ import type UIServiceExtensionConnectCallback from './UIServiceExtensionConnectC * @extends ExtensionContext * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 10 + * @since arkts {'1.1':'10', '1.2':'20'} + * @arkts 1.1&1.2 */ -export default class UIExtensionContext extends ExtensionContext { +declare class UIExtensionContext extends ExtensionContext { /** * UI extension uses this method to start a specific ability.If the caller application is in foreground, * you can use this method to start ability; If the caller application is in the background, @@ -53,12 +59,12 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -84,7 +90,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -93,8 +99,8 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -120,7 +126,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -165,7 +171,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -195,7 +201,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -203,8 +209,8 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -230,7 +236,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -275,12 +281,12 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -307,7 +313,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -316,8 +322,8 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -344,7 +350,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -391,12 +397,12 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -424,12 +430,12 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -455,7 +461,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -464,8 +470,8 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -491,7 +497,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -536,7 +542,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -566,7 +572,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -574,8 +580,8 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -601,7 +607,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 201 - The application does not have permission to call the interface. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -646,12 +652,12 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode. - * @throws { BusinessError } 16000010 - The call with the continuation flag is forbidden. + * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. @@ -678,7 +684,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -687,8 +693,8 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000013 - The application is controlled by EDM. - * @throws { BusinessError } 16000018 - The application is not allow jumping to other applications. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -715,7 +721,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -761,7 +767,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000069 - The extension cannot start the third party application. * @throws { BusinessError } 16000070 - The extension cannot start the service. @@ -786,7 +792,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 202 - Not System App. Interface caller is not a system app. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000069 - The extension cannot start the third party application. * @throws { BusinessError } 16000070 - The extension cannot start the service. @@ -819,7 +825,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -881,7 +887,8 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelf(callback: AsyncCallback<void>): void; @@ -891,7 +898,8 @@ export default class UIExtensionContext extends ExtensionContext { * @returns { Promise<void> } The promise returned by the function. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelf(): Promise<void>; @@ -903,7 +911,8 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback<void>): void; @@ -915,7 +924,8 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ terminateSelfWithResult(parameter: AbilityResult): Promise<void>; @@ -928,7 +938,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000002 - Incorrect ability type. * @throws { BusinessError } 16000003 - The specified ID does not exist. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. * @throws { BusinessError } 16000050 - Internal error. @@ -954,12 +964,12 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. - * @throws { BusinessError } 16000013 - The EDM prohibits the application from launching. + * @throws { BusinessError } 16000013 - The application is controlled by EDM. * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16200001 - The caller has been released. @@ -984,11 +994,11 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. - * @throws { BusinessError } 16000013 - The EDM prohibits the application from launching. + * @throws { BusinessError } 16000013 - The application is controlled by EDM. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000055 - Installation-free timed out. * @syscap SystemCapability.Ability.AbilityRuntime.Core @@ -1026,7 +1036,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1059,7 +1069,7 @@ export default class UIExtensionContext extends ExtensionContext { * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -1095,7 +1105,6 @@ export default class UIExtensionContext extends ExtensionContext { * Set colorMode of uiextension. * * @param { ConfigurationConstant.ColorMode } colorMode - Color mode. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types. * @throws { BusinessError } 16000011 - The context does not exist. * @syscap SystemCapability.Ability.AbilityRuntime.Core * @stagemodelonly @@ -1103,3 +1112,5 @@ export default class UIExtensionContext extends ExtensionContext { */ setColorMode(colorMode: ConfigurationConstant.ColorMode): void; } + +export default UIExtensionContext; \ No newline at end of file diff --git a/api/application/UIServiceExtensionContext.d.ts b/api/application/UIServiceExtensionContext.d.ts index d098f17a9f7ec44cbce6909e0b881c0542d0661c..f4be665a63d6cafac4d156cf6b28ed28b5cf8dac 100644 --- a/api/application/UIServiceExtensionContext.d.ts +++ b/api/application/UIServiceExtensionContext.d.ts @@ -50,7 +50,7 @@ export default class UIServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -58,8 +58,8 @@ export default class UIServiceExtensionContext extends ExtensionContext { * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden. * @throws { BusinessError } 16000011 - The context does not exist. * @throws { BusinessError } 16000012 - The application is controlled. - * @throws { BusinessError } 16000013 - The EDM prohibits the application from launching. - * @throws { BusinessError } 16000019 - Can not match any component. + * @throws { BusinessError } 16000013 - The application is controlled by EDM. + * @throws { BusinessError } 16000019 - No matching ability is found. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. @@ -121,12 +121,12 @@ export default class UIServiceExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Failed to start the invisible ability. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. * @throws { BusinessError } 16000011 - The context does not exist. - * @throws { BusinessError } 16000013 - The EDM prohibits the application from launching. + * @throws { BusinessError } 16000013 - The application is controlled by EDM. * @throws { BusinessError } 16000050 - Internal error. * @throws { BusinessError } 16000053 - The ability is not on the top of the UI. * @throws { BusinessError } 16000055 - Installation-free timed out. diff --git a/api/application/WorkSchedulerExtensionContext.d.ts b/api/application/WorkSchedulerExtensionContext.d.ts index 094e08dafe1b0d1b5202e6c6e14e9dbabb6a7b64..e15279d81c2c914f47734a6f280b9fa161afc854 100644 --- a/api/application/WorkSchedulerExtensionContext.d.ts +++ b/api/application/WorkSchedulerExtensionContext.d.ts @@ -46,7 +46,7 @@ export default class WorkSchedulerExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000008 - The crowdtesting application expires. @@ -77,7 +77,7 @@ export default class WorkSchedulerExtensionContext extends ExtensionContext { * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 16000001 - The specified ability does not exist. * @throws { BusinessError } 16000002 - Incorrect ability type. - * @throws { BusinessError } 16000004 - Can not start invisible component. + * @throws { BusinessError } 16000004 - Cannot start an invisible component. * @throws { BusinessError } 16000005 - The specified process does not have the permission. * @throws { BusinessError } 16000006 - Cross-user operations are not allowed. * @throws { BusinessError } 16000011 - The context does not exist. diff --git a/api/application/abilityDelegatorArgs.d.ts b/api/application/abilityDelegatorArgs.d.ts index 83a22e2de5acf688f8271207d2d52f18b1c1dbab..fc5ac764cc80f250a1651eab2085cbcf3242fa7e 100644 --- a/api/application/abilityDelegatorArgs.d.ts +++ b/api/application/abilityDelegatorArgs.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface AbilityDelegatorArgs { /** @@ -65,7 +66,8 @@ export interface AbilityDelegatorArgs { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ bundleName: string; @@ -148,4 +150,6 @@ export interface AbilityDelegatorArgs { testRunnerClassName: string; } +/*** if arkts 1.1 */ export default AbilityDelegatorArgs; +/*** endif */ diff --git a/api/application/shellCmdResult.d.ts b/api/application/shellCmdResult.d.ts index bcb7a29fab50d20652d257ad6a399602fe3a39b5..e93c80f020cb59d554dbc50705cda3288eb0e04b 100644 --- a/api/application/shellCmdResult.d.ts +++ b/api/application/shellCmdResult.d.ts @@ -31,7 +31,8 @@ * @typedef ShellCmdResult * @syscap SystemCapability.Ability.AbilityRuntime.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface ShellCmdResult { /** @@ -69,4 +70,6 @@ export interface ShellCmdResult { exitCode: number; } +/*** if arkts 1.1 */ export default ShellCmdResult; +/*** endif */ diff --git a/api/arkui/AlphabetIndexerModifier.d.ts b/api/arkui/AlphabetIndexerModifier.d.ts old mode 100644 new mode 100755 index 6bac3616f91d0079ba300c06cb3dd6745857c7e9..c68ab3f2efdc6a1f54dad80affd7ae91e4c59923 --- a/api/arkui/AlphabetIndexerModifier.d.ts +++ b/api/arkui/AlphabetIndexerModifier.d.ts @@ -29,6 +29,16 @@ * @atomicservice * @since 12 */ +/** + * Defines AlphabetIndexer Modifier + * + * @extends AlphabetIndexerAttribute + * @implements AttributeModifier<AlphabetIndexerAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class AlphabetIndexerModifier extends AlphabetIndexerAttribute implements AttributeModifier<AlphabetIndexerAttribute> { /** diff --git a/api/arkui/AttributeUpdater.d.ets b/api/arkui/AttributeUpdater.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..73d63dec00dedf577c08ebc8be660c9ae6001cc0 --- /dev/null +++ b/api/arkui/AttributeUpdater.d.ets @@ -0,0 +1,104 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file Defines a modifier which can update attributes to native side. + * @kit ArkUI + */ + +import { AttributeModifier } from './component/common' + +/** + * function that returns a default param of AttributeUpdater. + * + * @typedef { function } Initializer<T> + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type Initializer<T> = () => T; + +/** + * Defines a modifier which can update attributes to native side. + * + * @implements AttributeModifier + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class AttributeUpdater<T, C = Initializer<T>> implements AttributeModifier<T> { + + /** + * Defines the normal update attribute function. + * + * @param { T } instance + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + applyNormalAttribute: undefined | ((instance: T) => void); + applyPressedAttribute: undefined | ((instance: T) => void); + applyFocusedAttribute: undefined | ((instance: T) => void); + applyDisabledAttribute: undefined | ((instance: T) => void); + applySelectedAttribute: undefined | ((instance: T) => void); + + /** + * Defines a function for initialization. + * + * @param { T } instance + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + initializeModifier(instance: T): void; + + /** + * Get attribute of the modifier. + * + * @returns { T | undefined } The attribute of the modifier. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get attribute(): T | undefined; + + /** + * Used to update constructor params. + * + * @type { C } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + updateConstructorParams: C; + + /** + * Defines a function executed when component changed. + * + * @param { T } component + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onComponentChanged(component: T): void; +} diff --git a/api/arkui/BlankModifier.d.ts b/api/arkui/BlankModifier.d.ts old mode 100644 new mode 100755 index 07af01f6727c670c3d347cb5d7873e344d9e6378..427fcf599c1fbb35d9c795b3d48f4322017ee088 --- a/api/arkui/BlankModifier.d.ts +++ b/api/arkui/BlankModifier.d.ts @@ -29,6 +29,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Blank Modifier + * + * @extends BlankAttribute + * @implements AttributeModifier<BlankAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class BlankModifier extends BlankAttribute implements AttributeModifier<BlankAttribute> { /** diff --git a/api/arkui/BuilderNode.d.ets b/api/arkui/BuilderNode.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..323b0202e47fb112967cd3c2dca4cc6155081027 --- /dev/null +++ b/api/arkui/BuilderNode.d.ets @@ -0,0 +1,340 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { UIContext } from '../@ohos.arkui.UIContext'; +import { FrameNode } from './FrameNode'; +import { Size } from './Graphics'; +import { WrappedBuilder, TouchEvent } from './component/common'; +/** + * Render type of the node using for indicating that + * if the node will be shown on the display or rendered to a texture + * + * @enum { number } Render type + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Render type of the node using for indicating that + * if the node will be shown on the display or rendered to a texture + * + * @enum { number } Render type + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare enum NodeRenderType { + /** + * Display type.The node will be shown on the display. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Display type.The node will be shown on the display. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + RENDER_TYPE_DISPLAY = 0, + + /** + * Exporting texture type.The node will be render to a texture. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Exporting texture type.The node will be render to a texture. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + RENDER_TYPE_TEXTURE = 1, +} + +/** + * RenderOptions info. + * + * @interface RenderOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * RenderOptions info. + * + * @interface RenderOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface RenderOptions { + /** + * The ideal size of the node. + * @type { ?Size } selfIdealSize - The ideal size of the node + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * The ideal size of the node. + * @type { ?Size } selfIdealSize - The ideal size of the node + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + selfIdealSize?: Size; + + /** + * Render type of the node. + * @type { ?NodeRenderType } type - Render type of the node + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * Render type of the node. + * @type { ?NodeRenderType } type - Render type of the node + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + type?: NodeRenderType; + + /** + * The surfaceId of a texture consumer + * @type { ?string } surfaceId - surfaceId of a consumer who can receive the texture of the Node + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + */ + /** + * The surfaceId of a texture consumer + * @type { ?string } surfaceId - surfaceId of a consumer who can receive the texture of the Node + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 + */ + surfaceId?: string; +} + + +/** + * BuildOptions info. + * + * @interface BuildOptions + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface BuildOptions { + + /** + * Build type of the Builder. + * @type { ?boolean } nestingBuilderSupported - Build type of the Builder. + * Indicates whether support the type that WrappedBuilder contains builder used different params. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + nestingBuilderSupported?: boolean; + +} + +/** + * Defines BuilderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Defines BuilderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class BuilderNode<Args extends Array<Object>> { + /** + * Constructor. + * + * @param { UIContext } uiContext - uiContext used to create the BuilderNode + * @param { RenderOptions } options - Render options of the Builder Node + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Constructor. + * + * @param { UIContext } uiContext - uiContext used to create the BuilderNode + * @param { RenderOptions } options - Render options of the Builder Node + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(uiContext: UIContext, options?: RenderOptions); + + /** + * Build the BuilderNode with the builder. + * + * @param { WrappedBuilder<Args> } builder - Defined the builder will be called to build the node. + * @param { Object } arg - Defined the args will be used in the builder. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Build the BuilderNode with the builder. + * + * @param { WrappedBuilder<Args> } builder - Defined the builder will be called to build the node. + * @param { Object } arg - Defined the args will be used in the builder. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + build(builder: WrappedBuilder<Args>, arg?: Object): void; + + /** + * Build the BuilderNode with the builder.Support the type that WrappedBuilder contains builder used different params. + * + * @param { WrappedBuilder<Args> } builder - Defined the builder will be called to build the node. + * @param { Object } arg - Defined the args will be used in the builder. + * @param { BuildOptions } options - Defined the options will be used when build. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + build(builder: WrappedBuilder<Args>, arg: Object, options: BuildOptions): void; + + /** + * Update the BuilderNode based on the provided parameters. + * + * @param { Object } arg - Parameters used to update the BuilderNode, which must match the types required by the builder bound to the BuilderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Update the BuilderNode based on the provided parameters. + * + * @param { Object } arg - Parameters used to update the BuilderNode, which must match the types required by the builder bound to the BuilderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + update(arg: Object): void; + + /** + * Get the FrameNode in BuilderNode. + * + * @returns { FrameNode | null } - Returns a FrameNode inside the BuilderNode, or null if not contained. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get the FrameNode in BuilderNode. + * + * @returns { FrameNode | null } - Returns a FrameNode inside the BuilderNode, or null if not contained. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getFrameNode(): FrameNode | null; + + /** + * Dispatch touchEvent to targetNode. + * + * @param { TouchEvent } event - The touchEvent which will be sent to the targetNode. + * @returns { boolean } - Returns true if the TouchEvent has been successfully posted to the targetNode, false otherwise. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Dispatch touchEvent to targetNode. + * + * @param { TouchEvent } event - The touchEvent which will be sent to the targetNode. + * @returns { boolean } - Returns true if the TouchEvent has been successfully posted to the targetNode, false otherwise. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + postTouchEvent(event: TouchEvent): boolean; + + /** + * Dispose the BuilderNode immediately. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + dispose(): void; + + /** + * Reuse the BuilderNode based on the provided parameters. + * + * @param { Object } [param] - Parameters for reusing BuilderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + reuse(param?: Object): void; + + /** + * Recycle the BuilderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + recycle(): void; + + /** + * Notify BuilderNode to update the configuration to trigger a reload of the BuilderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + updateConfiguration(): void; +} diff --git a/api/arkui/BuilderNode.d.ts b/api/arkui/BuilderNode.d.ts index 757634fba9a9cb8e47d9bbe735952c898ab91def..e0c6aeb3cee551999a63e7c412b5111d12ce743a 100644 --- a/api/arkui/BuilderNode.d.ts +++ b/api/arkui/BuilderNode.d.ts @@ -34,6 +34,23 @@ import { Size } from './Graphics'; /** * Render type of the node using for indicating that * if the node will be shown on the display or rendered to a texture + * + * <p><strong>NOTE</strong>: + * <br>Currently, the <em>RENDER_TYPE_TEXTURE</em> type takes effect only for the XComponentNode and the BuilderNode + * <br>holding a component tree whose root node is a custom component. + * <br>In the case of BuilderNode, the following custom components that function as the root node support texture export: + * <br>Badge, Blank, Button, CanvasGradient, CanvasPattern, CanvasRenderingContext2D, Canvas, CheckboxGroup, Checkbox, + * <br>Circle, ColumnSplit, Column, ContainerSpan, Counter, DataPanel, Divider, Ellipse, Flex, Gauge, Hyperlink, + * <br>ImageBitmap, ImageData, Image, Line, LoadingProgress, Marquee, Matrix2D, OffscreenCanvasRenderingContext2D, + * <br>OffscreenCanvas, Path2D, Path, PatternLock, Polygon, Polyline, Progress, QRCode, Radio, Rating, Rect, + * <br>RelativeContainer, RowSplit, Row, Shape, Slider, Span, Stack, TextArea, TextClock, TextInput, TextTimer, Text, + * <br>Toggle, Video (without support for full-screen playback), Web, XComponent + * <br>The following components support texture export since API version 12: DatePicker, ForEach, Grid, IfElse, + * <br>LazyForEach, List, Scroll, Swiper, TimePicker, @Component decorated custom components, NodeContainer, + * <br>and FrameNode and RenderNode mounted to a NodeContainer. + * </p> + +For details, see Rendering and Drawing Video and Button Components at the Same Layer. * * @enum { number } Render type * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -133,6 +150,7 @@ export interface RenderOptions { */ /** * The surfaceId of a texture consumer + * Generally, the texture receiver is an OH_NativeImage instance. * @type { ?string } surfaceId - surfaceId of a consumer who can receive the texture of the Node * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice @@ -157,7 +175,8 @@ export interface BuildOptions { * Build type of the Builder. * @type { ?boolean } nestingBuilderSupported - Build type of the Builder. * Indicates whether support the type that WrappedBuilder contains builder used different params. - * + * The value false means that the input arguments for @Builder are consistent, and true means the opposite. + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -165,10 +184,37 @@ export interface BuildOptions { */ nestingBuilderSupported?: boolean; + /** + * The LocalStorage of the Builder. + * @type { ?LocalStorage } localStorage - The LocalStorage of the Builder. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + localStorage?: LocalStorage; } +/** + * Defines the event type used for posting. + * + * @typedef { TouchEvent | MouseEvent | AxisEvent } InputEventType + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare type InputEventType = TouchEvent | MouseEvent | AxisEvent; + /** * Defines BuilderNode. + * Implements a BuilderNode, which can create a component tree through the stateless UI method @Builder and hold the + * root node of the component tree. A BuilderNode cannot be defined as a state variable. The FrameNode held in the + * BuilderNode is only used to mount the BuilderNode to other FrameNodes as a child node. Undefined behavior may occur + * if you set attributes or perform operations on subnodes of the FrameNode held by the BuilderNode. Therefore, after + * you have obtained a RenderNode through the getFrameNode method of the BuilderNode and the getRenderNode method of the + * FrameNode, avoid setting the attributes or operating the subnodes through APIs of the RenderNode. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -176,6 +222,12 @@ export interface BuildOptions { */ /** * Defines BuilderNode. + * Implements a BuilderNode, which can create a component tree through the stateless UI method @Builder and hold the + * root node of the component tree. A BuilderNode cannot be defined as a state variable. The FrameNode held in the + * BuilderNode is only used to mount the BuilderNode to other FrameNodes as a child node. Undefined behavior may occur + * if you set attributes or perform operations on subnodes of the FrameNode held by the BuilderNode. Therefore, after + * you have obtained a RenderNode through the getFrameNode method of the BuilderNode and the getRenderNode method of the + * FrameNode, avoid setting the attributes or operating the subnodes through APIs of the RenderNode. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -185,6 +237,16 @@ export interface BuildOptions { export class BuilderNode<Args extends Object[]> { /** * Constructor. + * When the content generated by the BuilderNode is embedded in another RenderNode for display, that is, the + * RenderNode corresponding to the BuilderNode is mounted to another RenderNode for display, selfIdealSize in + * RenderOptions must be explicitly specified. If selfIdealSize is not set, the node in the builder follows the + * default parent component layout constraint [0, 0], which means that the size of the root node of the subtree in + * BuilderNode is [0, 0]. + * + * <p><strong>Note:</strong> + * <br>The input parameter for uiContext must be a valid value, that is, the UI context must be correct. If an invalid + * <br>value is passed in or if no value is specified, creation will fail. + * </p> * * @param { UIContext } uiContext - uiContext used to create the BuilderNode * @param { RenderOptions } options - Render options of the Builder Node @@ -194,6 +256,16 @@ export class BuilderNode<Args extends Object[]> { */ /** * Constructor. + * When the content generated by the BuilderNode is embedded in another RenderNode for display, that is, the + * RenderNode corresponding to the BuilderNode is mounted to another RenderNode for display, selfIdealSize in + * RenderOptions must be explicitly specified. If selfIdealSize is not set, the node in the builder follows the + * default parent component layout constraint [0, 0], which means that the size of the root node of the subtree in + * BuilderNode is [0, 0]. + * + * <p><strong>Note:</strong> + * <br>The input parameter for uiContext must be a valid value, that is, the UI context must be correct. If an invalid + * <br>value is passed in or if no value is specified, creation will fail. + * </p> * * @param { UIContext } uiContext - uiContext used to create the BuilderNode * @param { RenderOptions } options - Render options of the Builder Node @@ -206,6 +278,20 @@ export class BuilderNode<Args extends Object[]> { /** * Build the BuilderNode with the builder. + * Creates a component tree based on the passed object and holds the root node of the component tree. The stateless UI + * method @Builder has at most one root node. Custom components are allowed. Yet, the custom components cannot use + * decorators, such as @Reusable, @Link, @Provide, and @Consume, for state synchronization with the page to which the + * BuilderNode is mounted. Since API version 12, custom components can receive LocalStorage instances. You can use + * LocalStorage related decorators such as @LocalStorageProp and @LocalStorageLink by passing LocalStorage instances. + * + * <p><strong>Note:</strong> + * <br>When nesting @Builder, ensure that the input objects for the inner and outer @Builder methods are consistent. + * <br>The outermost @Builder supports only one input argument. + * <br>To operate objects in a BuilderNode, ensure that the reference to the BuilderNode is not garbage collected. + * <br>Once a BuilderNode object is collected by the virtual machine, its FrameNode and RenderNode objects will also + * <br>be dereferenced from the backend nodes. This means that any FrameNode objects obtained from a BuilderNode will + * <br>no longer correspond to any actual node if the BuilderNode is garbage collected. + * </p> * * @param { WrappedBuilder<Args> } builder - Defined the builder will be called to build the node. * @param { Object } arg - Defined the args will be used in the builder. @@ -215,9 +301,25 @@ export class BuilderNode<Args extends Object[]> { */ /** * Build the BuilderNode with the builder. + * Creates a component tree based on the passed object and holds the root node of the component tree. The stateless UI + * method @Builder has at most one root node. Custom components are allowed. Yet, the custom components cannot use + * decorators, such as @Reusable, @Link, @Provide, and @Consume, for state synchronization with the page to which the + * BuilderNode is mounted. Since API version 12, custom components can receive LocalStorage instances. You can use + * LocalStorage related decorators such as @LocalStorageProp and @LocalStorageLink by passing LocalStorage instances. + * + * <p><strong>Note:</strong> + * <br>When nesting @Builder, ensure that the input objects for the inner and outer @Builder methods are consistent. + * <br>The outermost @Builder supports only one input argument. + * <br>To operate objects in a BuilderNode, ensure that the reference to the BuilderNode is not garbage collected. + * <br>Once a BuilderNode object is collected by the virtual machine, its FrameNode and RenderNode objects will also + * <br>be dereferenced from the backend nodes. This means that any FrameNode objects obtained from a BuilderNode will + * <br>no longer correspond to any actual node if the BuilderNode is garbage collected. + * </p> * * @param { WrappedBuilder<Args> } builder - Defined the builder will be called to build the node. * @param { Object } arg - Defined the args will be used in the builder. + * Only one input argument is supported, and the type of the input argument must be consistent with the type defined + * by @Builder. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -227,9 +329,21 @@ export class BuilderNode<Args extends Object[]> { /** * Build the BuilderNode with the builder.Support the type that WrappedBuilder contains builder used different params. + * Creates a component tree based on the passed object and holds the root node of the component tree. The stateless UI + * method @Builder has at most one root node. Custom components are allowed. Yet, the custom components cannot use + * decorators, such as @Reusable, @Link, @Provide, and @Consume, for state synchronization with the current page. + * Since API version 12, custom components can receive LocalStorage instances. You can use LocalStorage related + * decorators such as @LocalStorageProp and @LocalStorageLink by passing LocalStorage instances. + * + * <p><strong>Note:</strong> + * <br>For details about the creation and update using @Builder, see @Builder. + * <br>The outermost @Builder supports only one input argument. + * </p> * * @param { WrappedBuilder<Args> } builder - Defined the builder will be called to build the node. * @param { Object } arg - Defined the args will be used in the builder. + * Only one input argument is supported, and the type of the input argument must be consistent with the type defined + * by @Builder. * @param { BuildOptions } options - Defined the options will be used when build. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -240,6 +354,9 @@ export class BuilderNode<Args extends Object[]> { /** * Update the BuilderNode based on the provided parameters. + * Updates this BuilderNode based on the provided parameter, which is of the same type as the input parameter passed + * to the build API. + * To call this API on a custom component, the variable used in the component must be defined as the @Prop type. * * @param { Object } arg - Parameters used to update the BuilderNode, which must match the types required by the builder bound to the BuilderNode. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -248,6 +365,9 @@ export class BuilderNode<Args extends Object[]> { */ /** * Update the BuilderNode based on the provided parameters. + * Updates this BuilderNode based on the provided parameter, which is of the same type as the input parameter passed + * to the build API. + * To call this API on a custom component, the variable used in the component must be defined as the @Prop type. * * @param { Object } arg - Parameters used to update the BuilderNode, which must match the types required by the builder bound to the BuilderNode. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -259,6 +379,7 @@ export class BuilderNode<Args extends Object[]> { /** * Get the FrameNode in BuilderNode. + * The FrameNode is generated only after the BuilderNode executes the build operation. * * @returns { FrameNode | null } - Returns a FrameNode inside the BuilderNode, or null if not contained. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -267,6 +388,7 @@ export class BuilderNode<Args extends Object[]> { */ /** * Get the FrameNode in BuilderNode. + * The FrameNode is generated only after the BuilderNode executes the build operation. * * @returns { FrameNode | null } - Returns a FrameNode inside the BuilderNode, or null if not contained. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -278,18 +400,58 @@ export class BuilderNode<Args extends Object[]> { /** * Dispatch touchEvent to targetNode. + * postTouchEvent dispatches the event from a middle node in the component tree downwards. To ensure the event is + * dispatched correctly, it needs to be transformed into the coordinate system of the parent component, as shown in + * the figure below. + * OffsetA indicates the offset of the BuildNode relative to the parent component. You can obtain this offset by + * calling getPositionToParent in the FrameNode. OffsetB indicates the offset of the touch point relative to the + * BuildNode. You can obtain this offset from the TouchEvent object. OffsetC is the sum of OffsetA and OffsetB. It + * represents the final offset that you need to pass to postTouchEvent. + * + * <p><strong>Note:</strong> + * <br>The coordinates you pass in need to be converted to pixel values (px). If the BuilderNode has any affine + * <br>transformations applied to it, they must be taken into account and combined with the touch event coordinates. + * <br>In Webview, coordinate system transformations are already handled internally, so you can directly dispatch the + * <br>touch event without additional adjustments. + * <br>The postTouchEvent API can be called only once for the same timestamp. + * <br>UIExtensionComponent is not supported. + * </p> * * @param { TouchEvent } event - The touchEvent which will be sent to the targetNode. * @returns { boolean } - Returns true if the TouchEvent has been successfully posted to the targetNode, false otherwise. + * If the event does not hit the expected component, ensure the following: + * 1. The coordinate system has been correctly transformed + * 2. The component is in an interactive state. + * 3. The event has been bound to the component. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 */ /** * Dispatch touchEvent to targetNode. + * postTouchEvent dispatches the event from a middle node in the component tree downwards. To ensure the event is + * dispatched correctly, it needs to be transformed into the coordinate system of the parent component, as shown in + * the figure below. + * OffsetA indicates the offset of the BuildNode relative to the parent component. You can obtain this offset by + * calling getPositionToParent in the FrameNode. OffsetB indicates the offset of the touch point relative to the + * BuildNode. You can obtain this offset from the TouchEvent object. OffsetC is the sum of OffsetA and OffsetB. It + * represents the final offset that you need to pass to postTouchEvent. + * + * <p><strong>Note:</strong> + * <br>The coordinates you pass in need to be converted to pixel values (px). If the BuilderNode has any affine + * <br>transformations applied to it, they must be taken into account and combined with the touch event coordinates. + * <br>In Webview, coordinate system transformations are already handled internally, so you can directly dispatch the + * <br>touch event without additional adjustments. + * <br>The postTouchEvent API can be called only once for the same timestamp. + * <br>UIExtensionComponent is not supported. + * </p> * * @param { TouchEvent } event - The touchEvent which will be sent to the targetNode. * @returns { boolean } - Returns true if the TouchEvent has been successfully posted to the targetNode, false otherwise. + * If the event does not hit the expected component, ensure the following: + * 1. The coordinate system has been correctly transformed + * 2. The component is in an interactive state. + * 3. The event has been bound to the component. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -299,6 +461,16 @@ export class BuilderNode<Args extends Object[]> { /** * Dispose the BuilderNode immediately. + * Calling dispose on a BuilderNode object breaks its reference to the backend entity node, and also simultaneously + * severs the references of its contained FrameNode and RenderNode to their respective entity nodes. + * + * <p><strong>Note:</strong> + * <br>Calling dispose on a BuilderNode object breaks its reference to the backend entity node, and also + * <br>simultaneously severs the references of its contained FrameNode and RenderNode to their respective entity nodes. + * <br>If the frontend object BuilderNode cannot be released, memory leaks may occur. To avoid this, be sure to call + * <br>dispose on the BuilderNode when you no longer need it. This reduces the complexity of reference relationships + * <br>and lowers the risk of memory leaks. + * </p> * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -311,6 +483,7 @@ export class BuilderNode<Args extends Object[]> { * Reuse the BuilderNode based on the provided parameters. * * @param { Object } [param] - Parameters for reusing BuilderNode. + * It is of the same type as the parameter passed to the build API. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -330,6 +503,11 @@ export class BuilderNode<Args extends Object[]> { /** * Notify BuilderNode to update the configuration to trigger a reload of the BuilderNode. + * + * <p><strong>Note:</strong> + * <br>The updateConfiguration API is used to instruct an object to update, with the system environment used for the + * <br>update being determined by the changes in the application's current system environment. + * </p> * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -337,4 +515,27 @@ export class BuilderNode<Args extends Object[]> { * @since 12 */ updateConfiguration(): void; + + /** + * Dispatch mouse event to targetNode. + * + * @param { InputEventType } event - The event which will be sent to the targetNode. + * @returns { boolean } - Returns true if the eventhas been successfully posted to the targetNode, + * false otherwise. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 + */ + postInputEvent(event: InputEventType): boolean; + + /** + * Get if the node is disposed. + * + * @returns { boolean } - Returns true if the node is disposed, false otherwise. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + isDisposed(): boolean; } diff --git a/api/arkui/ButtonModifier.d.ts b/api/arkui/ButtonModifier.d.ts old mode 100644 new mode 100755 index 52aed33ddea02cb04900938e1985cbf2cb6cd5c8..4edb71bc7e94450daa7afd265d3ca501978a4a73 --- a/api/arkui/ButtonModifier.d.ts +++ b/api/arkui/ButtonModifier.d.ts @@ -29,6 +29,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Button Modifier + * + * @extends ButtonAttribute + * @implements AttributeModifier<ButtonAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ButtonModifier extends ButtonAttribute implements AttributeModifier<ButtonAttribute> { /** diff --git a/api/arkui/CalendarPickerModifier.d.ts b/api/arkui/CalendarPickerModifier.d.ts old mode 100644 new mode 100755 index 321baa317dae44fcfc8b6a16db90cfd0e1204c92..21de4e7cfadad34a6a472cc637b71c007f03fbdc --- a/api/arkui/CalendarPickerModifier.d.ts +++ b/api/arkui/CalendarPickerModifier.d.ts @@ -29,6 +29,16 @@ * @atomicservice * @since 12 */ +/** + * Defines CalendarPicker Modifier + * + * @extends CalendarPickerAttribute + * @implements AttributeModifier<CalendarPickerAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class CalendarPickerModifier extends CalendarPickerAttribute implements AttributeModifier<CalendarPickerAttribute> { /** diff --git a/api/arkui/CheckboxGroupModifier.d.ts b/api/arkui/CheckboxGroupModifier.d.ts old mode 100644 new mode 100755 index ce65bcd3f0d678b451ef4f6c8f784c6b4bd2cbe1..e58ffe0fcd709c6bc5588e6d0101f89c05e87e22 --- a/api/arkui/CheckboxGroupModifier.d.ts +++ b/api/arkui/CheckboxGroupModifier.d.ts @@ -29,6 +29,16 @@ * @atomicservice * @since 12 */ +/** + * Defines CheckboxGroup Modifier + * + * @extends CheckboxGroupAttribute + * @implements AttributeModifier<CheckboxGroupAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class CheckboxGroupModifier extends CheckboxGroupAttribute implements AttributeModifier<CheckboxGroupAttribute> { /** diff --git a/api/arkui/CheckboxModifier.d.ts b/api/arkui/CheckboxModifier.d.ts old mode 100644 new mode 100755 index 844208045b13d6a0b738b2e8cf80c6ab371812b8..65322a98fdd924f0dced4fdc50f44d81708c551b --- a/api/arkui/CheckboxModifier.d.ts +++ b/api/arkui/CheckboxModifier.d.ts @@ -28,6 +28,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Checkbox Modifier + * + * @extends CheckboxAttribute + * @implements AttributeModifier<CheckboxAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class CheckboxModifier extends CheckboxAttribute implements AttributeModifier<CheckboxAttribute> { /** diff --git a/api/arkui/ColumnModifier.d.ts b/api/arkui/ColumnModifier.d.ts old mode 100644 new mode 100755 index 138354dfd03b3e3eae81dc2b9326bdca528672c5..2d7d0a0035ce9a0d4974d4612442c3dd164a4a75 --- a/api/arkui/ColumnModifier.d.ts +++ b/api/arkui/ColumnModifier.d.ts @@ -28,6 +28,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Column Modifier + * + * @extends ColumnAttribute + * @implements AttributeModifier<ColumnAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ColumnModifier extends ColumnAttribute implements AttributeModifier<ColumnAttribute> { /** diff --git a/api/arkui/ColumnSplitModifier.d.ts b/api/arkui/ColumnSplitModifier.d.ts old mode 100644 new mode 100755 index de7d7aea7a8c0c2894100032b79c4b9ad7fbe2c3..cc7d36f2f57905ec4da5250bcf9ba88c0f3a5b79 --- a/api/arkui/ColumnSplitModifier.d.ts +++ b/api/arkui/ColumnSplitModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines ColumnSplit Modifier + * + * @extends ColumnSplitAttribute + * @implements AttributeModifier<ColumnSplitAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ColumnSplitModifier extends ColumnSplitAttribute implements AttributeModifier<ColumnSplitAttribute> { /** diff --git a/api/arkui/CommonModifier.d.ts b/api/arkui/CommonModifier.d.ts old mode 100644 new mode 100755 index 7c33a7848c5387ff8fd05944ccfe789f4ce8370d..624b065b12bcc27d5824872078e067ab8e7ff7c2 --- a/api/arkui/CommonModifier.d.ts +++ b/api/arkui/CommonModifier.d.ts @@ -29,6 +29,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Common Modifier + * + * @extends CommonAttribute + * @implements AttributeModifier<CommonAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class CommonModifier extends CommonAttribute implements AttributeModifier<CommonAttribute> { /** diff --git a/api/arkui/ComponentContent.d.ets b/api/arkui/ComponentContent.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..621c1036349b2469d71702c258dd98baded2b95a --- /dev/null +++ b/api/arkui/ComponentContent.d.ets @@ -0,0 +1,127 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { BuildOptions } from './BuilderNode'; +import { Content } from './Content'; +import { UIContext } from '../@ohos.arkui.UIContext'; +import { WrappedBuilder } from './component/common'; + +/** + * Defines ComponentContent. + * + * @extends Content + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class ComponentContent<T extends Object = Object> extends Content{ + /** + * Constructor. + * + * @param { UIContext } uiContext - uiContext used to create the ComponentContent + * @param { WrappedBuilder<[]> } builder - Defined the builder will be called to build ComponentContent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(uiContext: UIContext, builder: WrappedBuilder<Array<Object>>); + + /** + * Constructor. + * + * @param { UIContext } uiContext - uiContext used to create the ComponentContent + * @param { WrappedBuilder<[T]> } builder - Defined the builder will be called to build ComponentContent. + * @param { T } args - Parameters used to update the ComponentContent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(uiContext: UIContext, builder: WrappedBuilder<Array<Object>>, args: T); + + /** + * Constructor. + * + * @param { UIContext } uiContext - uiContext used to create the ComponentContent + * @param { WrappedBuilder<[T]> } builder - Defined the builder will be called to build ComponentContent. + * @param { T } args - Parameters used to update the ComponentContent. + * @param { BuildOptions } options - Defined the options will be used when build. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(uiContext: UIContext, builder: WrappedBuilder<Array<Object>>, args: T, options: BuildOptions); + + + /** + * Update the ComponentContent based on the provided parameters. + * + * @param { T } args - Parameters used to update the ComponentContent, which must match the types required by the builder bound to the ComponentContent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + update(args: T): void; + + /** + * Reuse the ComponentContent based on the provided parameters. + * + * @param { Object } [param] - Parameters for reusing ComponentContent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + reuse(param?: Object): void; + + /** + * Recycle the ComponentContent. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + recycle(): void; + + /** + * Dispose the ComponentContent immediately. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + dispose(): void; + + /** + * Notify ComponentContent to update the configuration to trigger a reload of the ComponentContent. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + updateConfiguration(): void; +} diff --git a/api/arkui/ComponentContent.d.ts b/api/arkui/ComponentContent.d.ts index 527d4fcbf159ddd812d4233e822adae103a63aa3..e4ad1f936b87a35f6f21d77c2f32df27fab67dcc 100644 --- a/api/arkui/ComponentContent.d.ts +++ b/api/arkui/ComponentContent.d.ts @@ -124,4 +124,15 @@ export class ComponentContent<T extends Object> extends Content{ * @since 12 */ updateConfiguration(): void; + + /** + * Get if the ComponentContent is disposed. + * + * @returns { boolean } - Returns true if the node is disposed, false otherwise. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + isDisposed(): boolean; } diff --git a/api/arkui/Content.d.ets b/api/arkui/Content.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..01afe4f1f01cc5351e1f3c9c5384c3b91da0d0a4 --- /dev/null +++ b/api/arkui/Content.d.ets @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Defines the base class for ComponentContent and NodeContent. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare abstract class Content{ +} diff --git a/api/arkui/CounterModifier.d.ts b/api/arkui/CounterModifier.d.ts old mode 100644 new mode 100755 index fe73b7a4504cc571235e129fbcab983e0fb5641d..c395cd96f5715861fab52400b7afc85045bc6f8e --- a/api/arkui/CounterModifier.d.ts +++ b/api/arkui/CounterModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Counter Modifier + * + * @extends CounterAttribute + * @implements AttributeModifier<CounterAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class CounterModifier extends CounterAttribute implements AttributeModifier<CounterAttribute> { /** diff --git a/api/arkui/DataPanelModifier.d.ts b/api/arkui/DataPanelModifier.d.ts old mode 100644 new mode 100755 index 0d23e37bd1ebdc1a029700dd42c6fffc3f2b5c06..84943a1dfde160d421ffc3487e08024f7c24195a --- a/api/arkui/DataPanelModifier.d.ts +++ b/api/arkui/DataPanelModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines DataPanel Modifier + * + * @extends DataPanelAttribute + * @implements AttributeModifier<DataPanelAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class DataPanelModifier extends DataPanelAttribute implements AttributeModifier<DataPanelAttribute> { /** diff --git a/api/arkui/DatePickerModifier.d.ts b/api/arkui/DatePickerModifier.d.ts old mode 100644 new mode 100755 index ad466fc32503f47327c231e77eb12b1294665081..39ec1d9de75bf1db29b2158e6020be67c41079ba --- a/api/arkui/DatePickerModifier.d.ts +++ b/api/arkui/DatePickerModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines DatePicker Modifier + * + * @extends DatePickerAttribute + * @implements AttributeModifier<DatePickerAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class DatePickerModifier extends DatePickerAttribute implements AttributeModifier<DatePickerAttribute> { /** diff --git a/api/arkui/DividerModifier.d.ts b/api/arkui/DividerModifier.d.ts old mode 100644 new mode 100755 index 7e19ca77997d770867645588864c3abbc0f4697d..5dfd545860bf6e3978ce7c4d6c7906a281041baf --- a/api/arkui/DividerModifier.d.ts +++ b/api/arkui/DividerModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Divider Modifier + * + * @extends DividerAttribute + * @implements AttributeModifier<DividerAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class DividerModifier extends DividerAttribute implements AttributeModifier<DividerAttribute> { /** diff --git a/api/arkui/FrameNode.d.ets b/api/arkui/FrameNode.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..a6d4ef3feb2ead08ff8befef0c3fd13b10777150 --- /dev/null +++ b/api/arkui/FrameNode.d.ets @@ -0,0 +1,849 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { UIContext } from '../@ohos.arkui.UIContext'; +import { RenderNode } from './RenderNode'; +import { Size, Position, Edges, LengthMetrics, SizeT } from './Graphics'; +import { DrawContext } from './Graphics'; +import { ComponentContent } from './ComponentContent'; + + + +/** + * Layout constraint, include the max size, the min size and the reference size for children to calculate percent. + * + * @interface LayoutConstraint + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface LayoutConstraint { + /** + * MaxSize + * + * @type { Size } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + maxSize: Size; + + /** + * MinSize + * + * @type { Size } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + minSize: Size; + + /** + * PercentReference, if the size unit of the child nodes is percentage, then they use PercentReference to calculate + * the px size. + * + * @type { Size } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + percentReference: Size; +} + + +/** + * Defines FrameNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class FrameNode { + + /** + * Constructor. + * + * @param { UIContext } uiContext - uiContext used to create the FrameNode + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(uiContext: UIContext); + + + /** + * Get the RenderNode in FrameNode. + * + * @returns { RenderNode | null } - Returns a RenderNode inside the FrameNode, or null if not contained. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getRenderNode(): RenderNode | null; + + /** + * Return a flag to indicate whether the current FrameNode can be modified. Indicates whether the FrameNode supports appendChild, insertChildAfter, removeChild, clearChildren. + * + * @returns { boolean } - Returns true if the FrameNode can be modified, otherwise return false. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + isModifiable(): boolean; + + /** + * Add child to the end of the FrameNode's children. + * + * @param { FrameNode } node - The node will be added. + * @throws { BusinessError } 100021 - The FrameNode is not modifiable. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + appendChild(node: FrameNode): void; + + /** + * Add child to the current FrameNode. + * + * @param { FrameNode } child - The node will be added. + * @param { FrameNode | null } sibling - The new node is added after this node. When sibling is null, insert node as the first children of the node. + * @throws { BusinessError } 100021 - The FrameNode is not modifiable. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + insertChildAfter(child: FrameNode, sibling: FrameNode | null): void; + + /** + * Remove child from the current FrameNode. + * + * @param { FrameNode } node - The node will be removed. + * @throws { BusinessError } 100021 - The FrameNode is not modifiable. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + removeChild(node: FrameNode): void; + + /** + * Clear children of the current FrameNode. + * + * @throws { BusinessError } 100021 - The FrameNode is not modifiable. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + clearChildren(): void; + + /** + * Get a child of the current FrameNode by index. + * + * @param { number } index - The index of the desired node in the children of FrameNode. + * @returns { FrameNode | null } - Returns a FrameNode. When the required node does not exist, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getChild(index: number): FrameNode | null; + + /** + * Get the first child of the current FrameNode. + * + * @returns { FrameNode | null } - Returns a FrameNode, which is first child of the current FrameNode. If current FrameNode does not have child node, returns null. + * If current FrameNode does not have child node, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getFirstChild(): FrameNode | null; + + /** + * Get the next sibling node of the current FrameNode. + * + * @returns { FrameNode | null } - Returns a FrameNode. If current FrameNode does not have next sibling node, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getNextSibling(): FrameNode | null; + + /** + * Get the previous sibling node of the current FrameNode. + * + * @returns { FrameNode | null } - Returns a FrameNode. If current FrameNode does not have previous sibling node, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getPreviousSibling(): FrameNode | null; + + /** + * Get the parent node of the current FrameNode. + * + * @returns { FrameNode | null } - Returns a FrameNode. If current FrameNode does not have parent node, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getParent(): FrameNode | null; + + /** + * Get the children count of the current FrameNode. + * + * @returns { number } - Returns the number of the children of the current FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getChildrenCount(): number; + + /** + * Dispose the FrameNode immediately. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + dispose(): void; + + /** + * Get the position of the node relative to window. + * + * @returns { Position } - Returns position of the node relative to window. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getPositionToWindow(): Position; + + /** + * Get the position of the node relative to its parent. + * + * @returns { Position } - Returns position of the node relative to its parent. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getPositionToParent(): Position; + + /** + * Get the size of the FrameNode after measure, with unit PX. + * + * @returns { Size } - Returns the size of the FrameNode after measure, with unit PX. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getMeasuredSize(): Size; + + /** + * Get the offset to the parent of the FrameNode after layout, with unit PX. + * + * @returns { Position } - Returns the offset to the parent of the FrameNode after layout, with unit PX. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getLayoutPosition(): Position; + + /** + * Get the user config border width of the FrameNode. + * + * @returns { Edges<LengthMetrics> } - Returns the user config border width of the FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getUserConfigBorderWidth(): Edges<LengthMetrics>; + + /** + * Get the user config padding of the FrameNode. + * + * @returns { Edges<LengthMetrics> } - Returns the user config padding of the FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getUserConfigPadding(): Edges<LengthMetrics>; + + /** + * Get the user config margin of the FrameNode. + * + * @returns { Edges<LengthMetrics> } - Returns the user config margin of the FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getUserConfigMargin(): Edges<LengthMetrics>; + + /** + * Get the user config size of the FrameNode. + * + * @returns { SizeT<LengthMetrics> } - Returns the user config size of the FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getUserConfigSize(): SizeT<LengthMetrics>; + + /** + * Get the id of the FrameNode. + * + * @returns { string } - Returns the id of the FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getId(): string; + + /** + * Get the unique id of the FrameNode. + * + * @returns { number } - Returns the unique id of the FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getUniqueId(): number; + + /** + * Get the type of the FrameNode. The type is the name of component, for example, the nodeType of Button is "Button", + * and the nodeType of custom component is "__Common__". + * + * @returns { string } - Returns the type of the FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getNodeType(): string; + + /** + * Get the opacity of the FrameNode. + * + * @returns { number } - Returns the opacity of the FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getOpacity(): number; + + /** + * Get if the FrameNode is visible. + * + * @returns { boolean } - Returns if the FrameNode is visible. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + isVisible(): boolean; + + /** + * Get if the FrameNode is clip to frame. + * + * @returns { boolean } - Returns if the FrameNode is clip to frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + isClipToFrame(): boolean; + + /** + * Get if the FrameNode is attached. + * + * @returns { boolean } - Returns if the FrameNode is attached. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + isAttached(): boolean; + + /** + * Get the inspector information of the FrameNode. + * + * @returns { Object } - Returns the inspector information of the FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getInspectorInfo(): Object; + + /** + * * Get the custom property of the component corresponding to this FrameNode. + * + * @param { string } name - the name of the custom property. + * @returns { Object | undefined } - Returns the value of the custom property. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getCustomProperty(name: string): Object | undefined; + + + /** + * Draw Method. Executed when the current FrameNode is rendering its content. + * + * @param { DrawContext } context - The DrawContext will be used when executed draw method. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onDraw?:(context: DrawContext)=> void; + + /** + * Method to measure the FrameNode and its content to determine the measured size. Use this method to override the + * default measure method when measuring the FrameNode. + * + * @param { LayoutConstraint } constraint - The layout constraint of the node, will be used when executed measure + * method. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onMeasure(constraint: LayoutConstraint): void; + + /** + * Method to assign a position to the FrameNode and each of its children. Use this method to override the + * default layout method. + * + * @param { Position } position - The position of the node, will be used when executed layout method. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onLayout(position: Position): void; + + /** + * Set the size of the FrameNode after measure, with unit PX. + * + * @param { Size } size - The size of the FrameNode after measure. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setMeasuredSize(size: Size): void; + + /** + * Set the position to the parent of the FrameNode after layout, with unit PX. + * + * @param { Position } position - The position to the parent of the FrameNode after layout. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setLayoutPosition(position: Position): void; + + /** + * This is called to find out how big the FrameNode should be. The parent node supplies constraint information. The + * actual measurement work of the FrameNode is performed in onMeasure or the default measure method. + * + * @param { LayoutConstraint } constraint - The layout constraint of the node, supplied by the parent node. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + measure(constraint: LayoutConstraint): void; + + /** + * This is called to assign position to the FrameNode and all of its descendants. The position is used to init + * the position of the frameNode, and the actual layout work of FrameNode is performed in onLayout or the default + * layout method. + * + * @param { Position } position - The position of the node, will be used when executed the layout method. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + layout(position: Position): void; + + /** + * Mark the frame node as need layout. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setNeedsLayout(): void; + + /** + * Invalidate the RenderNode in the FrameNode, which will cause a re-render of the RenderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + invalidate(): void; + + /** + * Get the position of the node relative to screen. + * + * @returns { Position } - Returns position of the node relative to screen. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getPositionToScreen(): Position; + + /** + * Get the position of the node relative to window with transform. + * + * @returns { Position } - Returns position of the node relative to window with transform. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getPositionToWindowWithTransform(): Position; + + /** + * Get the position of the node relative to its parent with transform. + * + * @returns { Position } - Returns position of the node relative to its parent with transform. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getPositionToParentWithTransform(): Position; + + /** + * Get the position of the node relative to screen with transform. + * + * @returns { Position } - Returns position of the node relative to screen with transform. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getPositionToScreenWithTransform(): Position; + + /** + * Detach from parent and dispose all child recursively. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + disposeTree(): void; + + /** + * Mount ComponentContent to FrameNode. + * + * @param { ComponentContent<T> } content - Newly added ComponentContent. + * @throws { BusinessError } 100021 - The FrameNode is not modifiable. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + addComponentContent<T extends Object>(content: ComponentContent<T>): void; +} + +/** + * Used to define the FrameNode type. + * + * @interface TypedFrameNode + * @extends FrameNode + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class TypedFrameNode<C, T> extends FrameNode { + /** + * Initialize FrameNode. + * + * @type { C } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + initialize: C; + /** + * Get attribute instance of FrameNode to set attributes. + * + * @type { T } + * @readonly + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + readonly attribute: T; +} + +/** + * Provides methods to implement FrameNode. + * + * @namespace typeNode + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare namespace typeNode { + + export function createNode<T>(context: UIContext, nodeType: string): T; + +} + +/** + * Used for lazy loading of typeNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class NodeAdapter { + /** + * Constructor. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(); + /** + * Dispose the NodeAdapter immediately. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + dispose(): void; + /** + * Set the total number of node count. + * + * @param { number } count - The total number of node count. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set totalNodeCount(count: number); + /** + * Get the total number of node count. + * + * @returns { number } - Return the total number of node count. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get totalNodeCount(): number; + /** + * Define the operation of reloading all data. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + reloadAllItems(): void; + /** + * Define the data reload operation.Reload a specified amount of data starting from the index value. + * + * @param { number } start - Start loading index values for data. + * @param { number } count - Load the number of data. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + reloadItem(start: number, count: number): void; + /** + * Define data deletion operations.Delete a specified amount of data starting from the index value. + * + * @param { number } start - Start deleting index values for data. + * @param { number } count - Delete the number of data. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + removeItem(start: number, count: number): void; + /** + * Define data insertion operations.Insert a specified amount of data starting from the index value. + * + * @param { number } start - Start Insert index values for data. + * @param { number } count - Insert the number of data. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + insertItem(start: number, count: number): void; + /** + * Define data movement operations. Move data from the starting index to the ending index. + * + * @param { number } from - Starting index value. + * @param { number } to - End index value. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + moveItem(from: number, to: number): void; + /** + * Obtain all data results. + * + * @returns { Array<FrameNode> } - Return all valid FrameNode collections. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getAllAvailableItems(): Array<FrameNode>; + /** + * This callback will be triggered when a FrameNode is bound. + * + * @param { FrameNode } target - The bound FrameNode node. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onAttachToNode?:(target: FrameNode)=> void; + /** + * This callback will be triggered when the binding is released. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onDetachFromNode?:()=> void; + /** + * Call this callback when loading for the first time or when a new node slides in.Used to generate custom IDs, developers need to ensure the uniqueness of the IDs themselves. + * + * @param { number } index - Load the index value of the data. + * @returns { number } - Returning the developer's custom ID requires the developer to ensure its uniqueness. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onGetChildId?:(index: number)=> number; + /** + * Call this callback when loading for the first time or when a new node slides in. + * + * @param { number } index - Load the index value of the data. + * @returns { FrameNode } - Returns the FrameNode node that loads the node. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onCreateChild?:(index: number)=> FrameNode; + /** + * Called when the child node is about to be destroyed. + * + * @param { number } id - The child node ID that is about to be destroyed. + * @param { FrameNode } node - The FrameNode node that is about to be destroyed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onDisposeChild?:(id: number, node: FrameNode)=> void; + /** + * Call this callback when reloading or reusing. + * + * @param { number } id - The index value of the reloaded data. + * @param { FrameNode } node - Reused FrameNode nodes. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onUpdateChild?:(id: number, node: FrameNode)=> void; + /** + * Add a NodeAdapter to bind to the node.A node can only be bound to one NodeAdapter. Binding failure returns false. + * + * @param { NodeAdapter } adapter - Define lazy loading classes. + * @param { FrameNode } node - The bound FrameNode node. + * @returns { boolean } Return the binding result. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static attachNodeAdapter(adapter: NodeAdapter, node: FrameNode): boolean; + /** + * Remove the bound NodeAdapter from the node.A node can only be bound to one NodeAdapter. + * + * @param { FrameNode } node - Unbind the FrameNode node. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static detachNodeAdapter(node: FrameNode): void; +} \ No newline at end of file diff --git a/api/arkui/FrameNode.d.ts b/api/arkui/FrameNode.d.ts index ca0f1db0d35bd10a0725af602ac526bfff20081a..074d4ffdfeaf12f3d2aa0fc5cb6975171d515f75 100644 --- a/api/arkui/FrameNode.d.ts +++ b/api/arkui/FrameNode.d.ts @@ -72,6 +72,9 @@ declare interface LayoutConstraint { /** * Defines the cross-language options. + * Provides options for configuring or querying the cross-language access permissions for a FrameNode. + * For example, for nodes created using ArkTS, this API can control whether non-ArkTS languages are allowed to + * access or modify the properties of these nodes. * * @interface CrossLanguageOptions * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -84,6 +87,7 @@ declare interface CrossLanguageOptions { * Defines if it enables setting attributes cross-language. Default value is false. * * @type { boolean } + * @default false * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -92,6 +96,61 @@ declare interface CrossLanguageOptions { attributeSetting?: boolean } +/** + * The interaction event binding status information on the component. + * + * @interface InteractionEventBindingInfo + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ +declare interface InteractionEventBindingInfo { + /** + * Whether to bind events declaratively. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + baseEventRegistered: boolean; + + /** + * Whether to bind events in an imperative FrameNode mode. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + nodeEventRegistered: boolean; + + /** + * Whether to bind the event as an imperative NativeNode. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + nativeEventRegistered: boolean; + + /** + * Whether the component binds built-in event. + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + builtInEventRegistered: boolean; +} + /** * Enum for the expand mode. * @@ -104,6 +163,9 @@ declare interface CrossLanguageOptions { export enum ExpandMode { /** * Do not expand the children of node. + * The child nodes of the current FrameNode are not expanded. If the FrameNode contains LazyForEach child nodes, + * the child nodes are not expanded when the nodes in the main tree are being obtained. + * The child node sequence numbers are calculated based on the nodes in the main tree. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -114,6 +176,9 @@ export enum ExpandMode { /** * Expand the children of node. + * The child nodes of the current FrameNode are expanded. If the FrameNode contains LazyForEach child nodes, + * all child nodes are expanded when being obtained. + * The child node sequence numbers are calculated based on all child nodes. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -124,6 +189,9 @@ export enum ExpandMode { /** * Expand the children of node if needed. + * The child nodes of the current FrameNode are expanded on demand. If the FrameNode contains LazyForEach child nodes, + * the child nodes are not expanded when the nodes in the main tree are being obtained, but are expanded when nodes + * not in the main tree are being obtained. The child node sequence numbers are calculated based on all child nodes. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -133,6 +201,86 @@ export enum ExpandMode { LAZY_EXPAND = 2, } +/** + * Enum for the UI state of one component, which is used for handling of state style. + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export enum UIState { + /** + * The normal state. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + NORMAL = 0, + + /** + * The pressed state. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + PRESSED = 1 << 0, + + /** + * The focused state. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + FOCUSED = 1 << 1, + + /** + * The disabled state. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + DISABLED = 1 << 2, + + /** + * The selected state, this state is only supported by some specific kind of component, + * they are Checkbox, Radio, Toggle and List/Grid/MenuItem, please check the StateStyles docs for details. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + SELECTED = 1 << 3, +} + +/** + * UI state change handling function, it returns the current UI states, the value is the result + * of all current state enumeration values or calculations, and you can determine the state + * by performing the & operation as follows. + * if (currentStates & UIState.PRESSED == UIState.PRESSEED) + * But, please be awared, for the normal state check, the equal should be used directly. + * if (currentStates== UIState.NORMAL) + * + * @typedef { function } UIStatesChangeHandler + * @param { FrameNode } node - Current node which istriggering the state change. + * @param { number } currentUIStates - Current UI states when the handler is triggered. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +declare type UIStatesChangeHandler = (node: FrameNode, currentUIStates: number) => void; + /** * Defines FrameNode. * @@ -151,6 +299,7 @@ export enum ExpandMode { export class FrameNode { /** * Constructor. + * Constructor used to create a FrameNode. * * @param { UIContext } uiContext - uiContext used to create the FrameNode * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -159,6 +308,7 @@ export class FrameNode { */ /** * Constructor. + * Constructor used to create a FrameNode. * * @param { UIContext } uiContext - uiContext used to create the FrameNode * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -172,6 +322,8 @@ export class FrameNode { * Get the RenderNode in FrameNode. * * @returns { RenderNode | null } - Returns a RenderNode inside the FrameNode, or null if not contained. + * If the current FrameNode does not hold any RenderNode, null is returned. + * If the current FrameNode is a node created by a declarative component, null is returned. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @since 11 @@ -180,6 +332,8 @@ export class FrameNode { * Get the RenderNode in FrameNode. * * @returns { RenderNode | null } - Returns a RenderNode inside the FrameNode, or null if not contained. + * If the current FrameNode does not hold any RenderNode, null is returned. + * If the current FrameNode is a node created by a declarative component, null is returned. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -191,6 +345,8 @@ export class FrameNode { * Return a flag to indicate whether the current FrameNode can be modified. Indicates whether the FrameNode supports appendChild, insertChildAfter, removeChild, clearChildren. * * @returns { boolean } - Returns true if the FrameNode can be modified, otherwise return false. + * When false is returned, the FrameNode does not support the appendChild, insertChildAfter, removeChild, + * and clearChildren operations. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -200,8 +356,15 @@ export class FrameNode { /** * Add child to the end of the FrameNode's children. + * If this FrameNode is not modifiable, an exception is thrown. + * When appendChild is called, typeNode validates the type or number of child nodes. + * If the validation fails, an exception is thrown. For specific limitations, see typeNode. * * @param { FrameNode } node - The node will be added. + * The child node cannot be one created declaratively, which is not modifiable. + * Only declarative nodes obtained from a BuilderNode can be used as child nodes. + * If the child node does not meet the specifications, an exception is thrown. + * The FrameNode cannot have a parent node. Otherwise, an exception is thrown. * @throws { BusinessError } 100021 - The FrameNode is not modifiable. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -212,8 +375,13 @@ export class FrameNode { /** * Add child to the current FrameNode. + * If this FrameNode is not modifiable, an exception is thrown. * * @param { FrameNode } child - The node will be added. + * The child node cannot be a declarative node, that is, a FrameNode that cannot be modified. + * Only declarative nodes obtained from a BuilderNode can be used as child nodes. + * If the child node does not meet the specifications, an exception is thrown. + * The child node cannot have a parent node. Otherwise, an exception is thrown. * @param { FrameNode | null } sibling - The new node is added after this node. When sibling is null, insert node as the first children of the node. * @throws { BusinessError } 100021 - The FrameNode is not modifiable. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -225,6 +393,7 @@ export class FrameNode { /** * Remove child from the current FrameNode. + * If this FrameNode is not modifiable, an exception is thrown. * * @param { FrameNode } node - The node will be removed. * @throws { BusinessError } 100021 - The FrameNode is not modifiable. @@ -237,6 +406,7 @@ export class FrameNode { /** * Clear children of the current FrameNode. + * If this FrameNode is not modifiable, an exception is thrown. * * @throws { BusinessError } 100021 - The FrameNode is not modifiable. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -273,6 +443,7 @@ export class FrameNode { /** * Get the index of the current FrameNode's first child node which is on the tree. + * The child node sequence numbers are calculated based on all child nodes. * * @returns { number } - Returns the index of the current FrameNode's first child node which is on the tree. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -284,6 +455,7 @@ export class FrameNode { /** * Get the index of the current FrameNode's last child node which is on the tree. + * The child node sequence numbers are calculated based on all child nodes. * * @returns { number } - Returns the index of the current FrameNode's last child node which is on the tree. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -351,10 +523,21 @@ export class FrameNode { /** * Move node to the target Framenode as child. + * If this FrameNode is not modifiable, an exception is thrown. + * When targetParent is a typeNode, the API validates the type or number of child nodes. + * If the validation fails, an exception is thrown. For specific limitations, see typeNode. + * + * <p><strong>NOTE</strong>: + * <br>Currently, only the following types of TypedFrameNode are supported for the movement operations: Stack, XComponent. + * </p> * * @param { FrameNode } targetParent - The target parent node. + * The target parent node must not be a declaratively created node, that is, a FrameNode that is not modifiable. + * If it does not meet the specifications, an exception is thrown. * @param { number } index - The index which the node is moved to. If the value is a negative number or invalid, * the node is moved to the end of the target parent node. Moves to the end of the target parent node by default. + * If the target FrameNode has n nodes, the value range for index is 0 to n-1. + * Default value: -1 * @throws { BusinessError } 100021 - The FrameNode is not modifiable. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -365,6 +548,14 @@ export class FrameNode { /** * Dispose the FrameNode immediately. + * + * <p><strong>NOTE</strong>: + * <br>After the <em>dispose</em> API is called, the FrameNode object no longer corresponds to any entity FrameNode. + * <br>In this case, attempts to call certain query APIs, such as getMeasuredSize and getLayoutPosition, + * <br>will result in a JS crash in the application. + * <br>To check whether the current FrameNode object corresponds to an entity FrameNode, you can use getUniqueId API. + * <br>A <em>UniqueId</em> value greater than 0 indicates that the object is associated with an entity FrameNode. + * </p> * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -374,9 +565,9 @@ export class FrameNode { dispose(): void; /** - * Get the position of the node relative to window. + * Get the position of the node relative to window, in vp. * - * @returns { Position } - Returns position of the node relative to window. + * @returns { Position } - Returns position of the node relative to window, in vp. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -385,9 +576,9 @@ export class FrameNode { getPositionToWindow(): Position; /** - * Get the position of the node relative to its parent. + * Get the position of the node relative to its parent, in vp. * - * @returns { Position } - Returns position of the node relative to its parent. + * @returns { Position } - Returns position of the node relative to its parent, in vp. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -408,6 +599,9 @@ export class FrameNode { /** * Get the offset to the parent of the FrameNode after layout, with unit PX. + * The offset is the result of the parent component's layout on this node; + * therefore, the offset attribute that takes effect after layout and the position attribute that does not + * participate in layout do not affect this offset value. * * @returns { Position } - Returns the offset to the parent of the FrameNode after layout, with unit PX. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -497,6 +691,7 @@ export class FrameNode { /** * Get the opacity of the FrameNode. + * The minimum value is 0, and the maximum value is 1. * * @returns { number } - Returns the opacity of the FrameNode. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -519,6 +714,7 @@ export class FrameNode { /** * Get if the FrameNode is clip to frame. + * This API returns true after the dispose API is called to release the reference to the FrameNode. * * @returns { boolean } - Returns if the FrameNode is clip to frame. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -539,8 +735,21 @@ export class FrameNode { */ isAttached(): boolean; + /** + * Get if the node is disposed. + * + * @returns { boolean } - Returns true if the node is disposed, false otherwise. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + isDisposed(): boolean; + /** * Get the inspector information of the FrameNode. + * Obtains the structure information of the node, which is consistent with what is found in DevEco Studio's built-in + * ArkUI Inspector tool. * * @returns { Object } - Returns the inspector information of the FrameNode. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -564,6 +773,10 @@ export class FrameNode { /** * Set commonEvent response to the current FrameNode. + * The set basic events will compete with declaratively defined events for event handling without overriding them. + * If two event callbacks are set at the same time, the callback for the declaratively defined event is prioritized. + * In scenarios involving LazyForEach, where nodes may be destroyed and reconstructed, you need to reset or re-attach + * event listeners to the newly created nodes to ensure they respond to events correctly. * * @returns { UICommonEvent } - Returns a Object inside the FrameNode, which is used to set callbacks about different events. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -575,6 +788,8 @@ export class FrameNode { /** * Get gestureEvent of the current FrameNode. + * Gesture events set using the gestureEvent API will not override gestures bound using the declarative gesture API. + * If both APIs are used to set gestures, the declarative API takes precedence. * * @returns { UIGestureEvent } - Returns a Object inside the FrameNode, which is used to set callbacks about different gesture events. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -586,6 +801,12 @@ export class FrameNode { /** * Get the CommonAttribute of the current FrameNode. + * Note that only the attributes of a custom node can be modified. + * + * <p><strong>NOTE</strong>: + * <br>The visual representation of the FrameNode is similar to that of a Stack container that is aligned to the top start edge. + * <br>For details about the supported attributes, see CommonModifier. + * </p> * * @returns { CommonAttribute } - Returns the CommonAttribute which is used to modify the common attributes of the FrameNode. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -599,6 +820,7 @@ export class FrameNode { * Draw Method. Executed when the current FrameNode is rendering its content. * * @param { DrawContext } context - The DrawContext will be used when executed draw method. + * The self-drawing area cannot exceed the component's own size. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -622,6 +844,7 @@ export class FrameNode { /** * Method to assign a position to the FrameNode and each of its children. Use this method to override the * default layout method. + * It can be used to specify how the FrameNode and its child nodes are positioned and sized within the layout. * * @param { Position } position - The position of the node, will be used when executed layout method. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -633,6 +856,7 @@ export class FrameNode { /** * Set the size of the FrameNode after measure, with unit PX. + * If the configured width and height are negative numbers, the value is automatically set to 0. * * @param { Size } size - The size of the FrameNode after measure. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -679,7 +903,7 @@ export class FrameNode { layout(position: Position): void; /** - * Mark the frame node as need layout. + * Mark the frame node as need layout, so that it will be relaid out in the next frame. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -699,9 +923,9 @@ export class FrameNode { invalidate(): void; /** - * Get the position of the node relative to screen. + * Get the position of the node relative to screen, in vp. * - * @returns { Position } - Returns position of the node relative to screen. + * @returns { Position } - Returns position of the node relative to screen, in vp. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -710,9 +934,11 @@ export class FrameNode { getPositionToScreen(): Position; /** - * Get the position of the node relative to window with transform. + * Get the position of the node relative to window with transform, in vp. * - * @returns { Position } - Returns position of the node relative to window with transform. + * @returns { Position } - Returns position of the node relative to window with transform, in vp. + * If other drawing attributes (such as transform and translate) are set, the return value may slightly deviate + * due to the precision of floating point numbers. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -721,9 +947,12 @@ export class FrameNode { getPositionToWindowWithTransform(): Position; /** - * Get the position of the node relative to its parent with transform. + * Get the position of the node relative to its parent with transform, in vp. + * The coordinates returned are the coordinates of the upper left corner during layout after transformation. * - * @returns { Position } - Returns position of the node relative to its parent with transform. + * @returns { Position } - Returns position of the node relative to its parent with transform, in vp. + * If other drawing attributes (such as transform and translate) are set, the return value may slightly deviate + * due to the precision of floating point numbers. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -732,9 +961,12 @@ export class FrameNode { getPositionToParentWithTransform(): Position; /** - * Get the position of the node relative to screen with transform. + * Get the position of the node relative to screen with transform, in vp. + * The coordinates returned are the coordinates of the upper left corner during layout after transformation. * - * @returns { Position } - Returns position of the node relative to screen with transform. + * @returns { Position } - Returns position of the node relative to screen with transform, in vp. + * If other drawing attributes (such as transform and translate) are set, the return value may slightly deviate + * due to the precision of floating point numbers. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -754,6 +986,8 @@ export class FrameNode { /** * Mount ComponentContent to FrameNode. + * The current node must be modifiable, which means the return value of isModifiable must be true. + * If the node is not modifiable, an exception is thrown. * * @param { ComponentContent<T> } content - Newly added ComponentContent. * @throws { BusinessError } 100021 - The FrameNode is not modifiable. @@ -766,6 +1000,12 @@ export class FrameNode { /** * Set the cross-language options of the target FrameNode. + * This API allows you to specify whether a FrameNode created in ArkTS can be accessed or modified by non-ArkTS languages. + * If the current FrameNode is not modifiable or does not support setting cross-language access options, an exception will be thrown. + * + * <p><strong>NOTE</strong>: + * <br>Currently, only Scroll type TypedFrameNode supports setting cross-language access options. + * </p> * * @param { CrossLanguageOptions } options - The cross-language options. * @throws { BusinessError } 100022 - The FrameNode cannot be set whether to support cross-language common attribute setting. @@ -778,6 +1018,7 @@ export class FrameNode { /** * Get the cross-language options of the target FrameNode. + * This API allows you to check whether a FrameNode created in ArkTS can be accessed or modified by non-ArkTS languages. * * @returns { CrossLanguageOptions } - Returns the cross-language options of the target FrameNode. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -806,10 +1047,114 @@ export class FrameNode { * @since 18 */ reuse(): void; + + /** + * Gets event binding information of the target node. + * + * @param { EventQueryType } eventType - The interaction event type to be queried. + * @returns { InteractionEventBindingInfo | undefined } + * - Returns one InteractionEventBindingInfo object indicating the event binding details if any interaction + * events binded on current node, returns undefined if no one binded on. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 19 + */ + getInteractionEventBindingInfo(eventType: EventQueryType): InteractionEventBindingInfo | undefined; + + /** + * Adds the polymorphic style states supported by the component. To handle states efficiently, specify the + * states of interest and the corresponding handler. When a state of interest occurs, the handler will be executed. + * - You can adjust the UI style based on the current state within the callback. If this API is called multiple + * times on the same node, the last set of states and handler will take precedence. + * - Some component types have default system handling for certain states. For example, the <b>Button</b> + * component has a default style effect for the PRESSED state. When custom state handling is implemented on such + * components, the default style effect will be applied first, followed by the custom style changes, resulting in + * a combined effect. To disable the default style effects, set <b>excludeInner</b> to <b>true</b>, if this is allowed + * by the system implementation. + * - And when this API is called, the provided handler function will be executed immediately. + * - There is no need to explicitly register a listener for the NORMAL state. Once a non-NORMAL state is registered, + * the system will automatically notify your application when the state changes back to NORMAL. + * + * @param { number } uiStates - The target UI state the node need to handle. + * The combination of all target states can be calculated by the OR operation, + * e.g. targetUIStates = UIState.PRESSED | UIState.FOCUSED. + * @param { UIStatesChangeHandler } statesChangeHandler - The UI state chhanging handling function. + * @param { boolean } excludeInner - The flag to forbid the inner default state style handling, default is false. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + addSupportedUIStates(uiStates: number, statesChangeHandler: UIStatesChangeHandler, excludeInner?: boolean): void; + + /** + * Removes registered UI states. When all states registered using <b>OH_ArkUI_AddSupportedUIStates</b> + * are removed, the registered <b>stateChangeHandler</b> will no longer be executed. + * + * @param { number } uiStates - The target UI state the node need to remove from. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + removeSupportedUIStates(uiStates: number): void; + + /** + * create property animation in FrameNode. + * + * @param { AnimationPropertyType } property - enumeration of property that produces the animation. + * @param { Optional<number[]> } startValue - start value of animation. + * Undefined means that the last final value is used as the starting value of the animation, + * and it is recommended to set undefined if the property already has a value. + * @param { number[] } endValue - end value of animation. + * @param { AnimateParam } param - param of animation. + * @returns { boolean } whether the createAnimation operation is successful. For example, + * if the array lengths of startValue and endValue do not match the data lengths required by type, creating animation fails. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + createAnimation(property: AnimationPropertyType, startValue: Optional<number[]>, endValue: number[], param: AnimateParam): boolean; + + /** + * request to cancel all animations on specified properties. It blocks synchronously to wait for the cancellation result. + * If the cancellation is successful, the corresponding properties on the node are restored to the cancelled value. + * + * @param { AnimationPropertyType[] } properties - animation property types to cancel. + * @returns { boolean } whether the cancel operation is successful. For example, + * if ipc fails, canceling the animation fails. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + cancelAnimations(properties: AnimationPropertyType[]): boolean; + + /** + * get property value from node. + * + * @param { AnimationPropertyType } property - animation property type to get value. + * @returns { number[] } - the property value on the node. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + getNodePropertyValue(property: AnimationPropertyType): number[]; } /** * Used to define the FrameNode type. + * + * <p><strong>NOTE</strong>: + * <br>The commonAttribute API is only effective on <em>CustomFrameNode</em>. + * <br>For <em>TypedFrameNode</em>, the behavior of <em>commonAttribute</em> is undefined. + * <br>For setting universal attributes, it is recommended that you use the attribute API, + * <br>such as node.attribute.backgroundColor(Color.Pink), rather than commonAttribute. + * </p> * * @extends FrameNode * @interface TypedFrameNode @@ -844,6 +1189,9 @@ export interface TypedFrameNode<C, T> extends FrameNode { /** * Provides methods to implement FrameNode. + * When typeNode is used to create nodes such as Text, Image, Select, or Toggle, if the UIContext instance + * corresponding to the passed UIContext is destroyed, calling this API will return an invalid FrameNode. + * This invalid node cannot be properly mounted or displayed. * * @namespace typeNode * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -855,6 +1203,13 @@ export namespace typeNode { /** * Define the FrameNode type for Text. * + * <p><strong>NOTE</strong>: + * <br><em>TextInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Text</em> component. + * <br><em>TextAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Text</em> component. + * </p> + * * @typedef { TypedFrameNode<TextInterface, TextAttribute> } Text * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -878,6 +1233,13 @@ export namespace typeNode { /** * Define the FrameNode type for Column. * + * <p><strong>NOTE</strong>: + * <br><em>ColumnInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Column</em> component. + * <br><em>ColumnAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Column</em> component. + * </p> + * * @typedef { TypedFrameNode<ColumnInterface, ColumnAttribute> } Column * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -901,6 +1263,13 @@ export namespace typeNode { /** * Define the FrameNode type for Row. * + * <p><strong>NOTE</strong>: + * <br><em>RowInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Row</em> component. + * <br><em>RowAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Row</em> component. + * </p> + * * @typedef { TypedFrameNode<RowInterface, RowAttribute> } Row * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -924,6 +1293,13 @@ export namespace typeNode { /** * Define the FrameNode type for Stack. * + * <p><strong>NOTE</strong>: + * <br><em>StackInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Stack</em> component. + * <br><em>StackAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Stack</em> component. + * </p> + * * @typedef { TypedFrameNode<StackInterface, StackAttribute> } Stack * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -947,6 +1323,13 @@ export namespace typeNode { /** * Define the FrameNode type for GridRow. * + * <p><strong>NOTE</strong>: + * <br><em>GridRowInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>GridRow</em> component. + * <br><em>GridRowAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>GridRow</em> component. + * </p> + * * @typedef { TypedFrameNode<GridRowInterface, GridRowAttribute> } GridRow * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -970,6 +1353,13 @@ export namespace typeNode { /** * Define the FrameNode type for GridCol. * + * <p><strong>NOTE</strong>: + * <br><em>GridColInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>GridCol</em> component. + * <br><em>GridColAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>GridCol</em> component. + * </p> + * * @typedef { TypedFrameNode<GridColInterface, GridColAttribute> } GridCol * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -993,6 +1383,13 @@ export namespace typeNode { /** * Define the FrameNode type for Flex. * + * <p><strong>NOTE</strong>: + * <br><em>FlexInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Flex</em> component. + * <br><em>FlexAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Flex</em> component. + * </p> + * * @typedef { TypedFrameNode<FlexInterface, FlexAttribute> } Flex * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1016,6 +1413,13 @@ export namespace typeNode { /** * Define the FrameNode type for Swiper. * + * <p><strong>NOTE</strong>: + * <br><em>SwiperInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Swiper</em> component. + * <br><em>SwiperAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Swiper</em> component. + * </p> + * * @typedef { TypedFrameNode<SwiperInterface, SwiperAttribute> } Swiper * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1036,9 +1440,50 @@ export namespace typeNode { */ function createNode(context: UIContext, nodeType: 'Swiper'): Swiper; + /** + * Get the attribute instance of FrameNode to set attributes. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, undefined is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'Swiper' } nodeType - node type. + * @returns { SwiperAttribute | undefined } - Return the attribute instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function getAttribute(node: FrameNode, nodeType: 'Swiper'): SwiperAttribute | undefined; + + /** + * Bind the controller of FrameNode. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, an exception is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { SwiperController } controller - the controller which is bind to the target FrameNode. + * @param { 'Swiper' } nodeType - node type. + * @throws { BusinessError } 100023 - Parameter error. Possible causes: 1. The component type of the node + * is incorrect. 2. The node is null or undefined. 3. The controller is null or undefined. + * @throws { BusinessError } 100021 - The FrameNode is not modifiable. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function bindController(node: FrameNode, controller: SwiperController, nodeType: 'Swiper'): void; + /** * Define the FrameNode type for Progress. * + * <p><strong>NOTE</strong>: + * <br><em>ProgressInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Progress</em> component. + * <br><em>ProgressAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Progress</em> component. + * </p> + * * @typedef { TypedFrameNode<ProgressInterface, ProgressAttribute> } Progress * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1062,6 +1507,13 @@ export namespace typeNode { /** * Define the FrameNode type for Scroll. * + * <p><strong>NOTE</strong>: + * <br><em>ScrollInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Scroll</em> component. + * <br><em>ScrollAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Scroll</em> component. + * </p> + * * @typedef { TypedFrameNode<ScrollInterface, ScrollAttribute> } Scroll * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1084,6 +1536,8 @@ export namespace typeNode { /** * Get the attribute instance of FrameNode to set attributes. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, undefined is returned. + * This API does not support declaratively created nodes. * * @param { FrameNode } node - the target FrameNode. * @param { 'Scroll' } nodeType - node type. @@ -1095,8 +1549,23 @@ export namespace typeNode { */ function getAttribute(node: FrameNode, nodeType: 'Scroll'): ScrollAttribute | undefined; + /** + * Get the event instance of Scroll node. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'Scroll' } nodeType - node type. + * @returns { UIScrollEvent | undefined } - Return the event instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 19 + */ + function getEvent(node: FrameNode, nodeType: 'Scroll'): UIScrollEvent | undefined; + /** * Bind the controller of FrameNode. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, an exception is returned. + * This API does not support declaratively created nodes. * * @param { FrameNode } node - the target FrameNode. * @param { Scroller } controller - the controller which is bind to the target FrameNode. @@ -1113,6 +1582,13 @@ export namespace typeNode { /** * Define the FrameNode type for RelativeContainer. * + * <p><strong>NOTE</strong>: + * <br><em>RelativeContainerInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>RelativeContainer</em> component. + * <br><em>RelativeContainerAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>RelativeContainer</em> component. + * </p> + * * @typedef { TypedFrameNode<RelativeContainerInterface, RelativeContainerAttribute> } RelativeContainer * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1136,6 +1612,13 @@ export namespace typeNode { /** * Define the FrameNode type for Divider. * + * <p><strong>NOTE</strong>: + * <br><em>DividerInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Divider</em> component. + * <br><em>DividerAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Divider</em> component. + * </p> + * * @typedef { TypedFrameNode<DividerInterface, DividerAttribute> } Divider * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1159,6 +1642,13 @@ export namespace typeNode { /** * Define the FrameNode type for LoadingProgress. * + * <p><strong>NOTE</strong>: + * <br><em>LoadingProgressInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>LoadingProgress</em> component. + * <br><em>LoadingProgressAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>LoadingProgress</em> component. + * </p> + * * @typedef { TypedFrameNode<LoadingProgressInterface, LoadingProgressAttribute> } LoadingProgress * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1182,6 +1672,13 @@ export namespace typeNode { /** * Define the FrameNode type for Search. * + * <p><strong>NOTE</strong>: + * <br><em>SearchInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Search</em> component. + * <br><em>SearchAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Search</em> component. + * </p> + * * @typedef { TypedFrameNode<SearchInterface, SearchAttribute> } Search * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1205,6 +1702,13 @@ export namespace typeNode { /** * Define the FrameNode type for Blank. * + * <p><strong>NOTE</strong>: + * <br><em>BlankInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Blank</em> component. + * <br><em>BlankAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Blank</em> component. + * </p> + * * @typedef { TypedFrameNode<BlankInterface, BlankAttribute> } Blank * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1228,6 +1732,13 @@ export namespace typeNode { /** * Define the FrameNode type for Image. * + * <p><strong>NOTE</strong>: + * <br><em>ImageInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Image</em> component. + * <br><em>ImageAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Image</em> component. + * </p> + * * @typedef { TypedFrameNode<ImageInterface, ImageAttribute> } Image * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1251,6 +1762,13 @@ export namespace typeNode { /** * Define the FrameNode type for List. * + * <p><strong>NOTE</strong>: + * <br><em>ListInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>List</em> component. + * <br><em>ListAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>List</em> component. + * </p> + * * @typedef { TypedFrameNode<ListInterface, ListAttribute> } List * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1271,9 +1789,50 @@ export namespace typeNode { */ function createNode(context: UIContext, nodeType: 'List'): List; + /** + * Get the attribute instance of FrameNode to set attributes. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, undefined is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'List' } nodeType - node type. + * @returns { ListAttribute | undefined } - Return the attribute instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function getAttribute(node: FrameNode, nodeType: 'List'): ListAttribute | undefined; + + /** + * Bind the controller of FrameNode. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, an exception is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { Scroller } controller - the controller which is bind to the target FrameNode. + * @param { 'List' } nodeType - node type. + * @throws { BusinessError } 100023 - Parameter error. Possible causes: 1. The component type of the node + * is incorrect. 2. The node is null or undefined. 3. The controller is null or undefined. + * @throws { BusinessError } 100021 - The FrameNode is not modifiable. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function bindController(node: FrameNode, controller: Scroller, nodeType: 'List'): void; + /** * Define the FrameNode type for ListItem. * + * <p><strong>NOTE</strong>: + * <br><em>ListItemInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>ListItem</em> component. + * <br><em>ListItemAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>ListItem</em> component. + * </p> + * * @typedef { TypedFrameNode<ListItemInterface, ListItemAttribute> } ListItem * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1282,6 +1841,19 @@ export namespace typeNode { */ type ListItem = TypedFrameNode<ListItemInterface, ListItemAttribute>; + /** + * Get the event instance of Scroll node. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'List' } nodeType - node type. + * @returns { UIListEvent | undefined } - Return the event instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 19 + */ + function getEvent(node: FrameNode, nodeType: 'List'): UIListEvent | undefined; + /** * Create a FrameNode of ListItem type. * @@ -1294,9 +1866,32 @@ export namespace typeNode { */ function createNode(context: UIContext, nodeType: 'ListItem'): ListItem; + /** + * Get the attribute instance of FrameNode to set attributes. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, undefined is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'ListItem' } nodeType - node type. + * @returns { ListItemAttribute | undefined } - Return the attribute instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function getAttribute(node: FrameNode, nodeType: 'ListItem'): ListItemAttribute | undefined; + /** * Define the FrameNode type for TextInput. * + * <p><strong>NOTE</strong>: + * <br><em>TextInputInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>TextInput</em> component. + * <br><em>TextInputAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>TextInput</em> component. + * </p> + * * @typedef { TypedFrameNode<TextInputInterface, TextInputAttribute> } TextInput * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1320,6 +1915,19 @@ export namespace typeNode { /** * Define the FrameNode type for Button. * + * <p><strong>NOTE</strong>: + * <br><em>ButtonInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Button</em> component. + * <br><em>ButtonAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Button</em> component. + * <br>If a value is specified for the label parameter, a Button component is created in label mode. + * This component cannot contain child components, and any attempt to set child components will result in an exception. + * The mode in which the Button component is created cannot be dynamically modified in subsequent initialize calls. + * As such, to include child components, do not set the label parameter during the first initialize call. + * When created in child component mode, a Button component can contain a single child component. + * Any attempt to set multiple child components will result in an exception. + * </p> + * * @typedef { TypedFrameNode<ButtonInterface, ButtonAttribute> } Button * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1342,6 +1950,13 @@ export namespace typeNode { /** * Define the FrameNode type for ListItemGroup. + * + * <p><strong>NOTE</strong>: + * <br><em>ListItemGroupInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>ListItemGroup</em> component. + * <br><em>ListItemGroupAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>ListItemGroup</em> component. + * </p> * * @typedef { TypedFrameNode<ListItemGroupInterface, ListItemGroupAttribute> } ListItemGroup * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1363,8 +1978,31 @@ export namespace typeNode { */ function createNode(context: UIContext, nodeType: 'ListItemGroup'): ListItemGroup; + /** + * Get the attribute instance of FrameNode to set attributes. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, undefined is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'ListItemGroup' } nodeType - node type. + * @returns { ListItemGroupAttribute | undefined } - Return the attribute instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function getAttribute(node: FrameNode, nodeType: 'ListItemGroup'): ListItemGroupAttribute | undefined; + /** * Define the FrameNode type for WaterFlow. + * + * <p><strong>NOTE</strong>: + * <br><em>WaterFlowInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>WaterFlow</em> component. + * <br><em>WaterFlowAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>WaterFlow</em> component. + * </p> * * @typedef { TypedFrameNode<WaterFlowInterface, WaterFlowAttribute> } WaterFlow * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1386,8 +2024,62 @@ export namespace typeNode { */ function createNode(context: UIContext, nodeType: 'WaterFlow'): WaterFlow; + /** + * Get the attribute instance of FrameNode to set attributes. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, undefined is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'WaterFlow' } nodeType - node type. + * @returns { WaterFlowAttribute | undefined } - Return the attribute instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function getAttribute(node: FrameNode, nodeType: 'WaterFlow'): WaterFlowAttribute | undefined; + + /** + * Bind the controller of FrameNode. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, an exception is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { Scroller } controller - the controller which is bind to the target FrameNode. + * @param { 'WaterFlow' } nodeType - node type. + * @throws { BusinessError } 100023 - Parameter error. Possible causes: 1. The component type of the node + * is incorrect. 2. The node is null or undefined. 3. The controller is null or undefined. + * @throws { BusinessError } 100021 - The FrameNode is not modifiable. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function bindController(node: FrameNode, controller: Scroller, nodeType: 'WaterFlow'): void; + + /** + * Get the event instance of Scroll node. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'WaterFlow' } nodeType - node type. + * @returns { UIWaterFlowEvent | undefined } - Return the event instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 19 + */ + function getEvent(node: FrameNode, nodeType: 'WaterFlow'): UIWaterFlowEvent | undefined; + /** * Define the FrameNode type for FlowItem. + * + * <p><strong>NOTE</strong>: + * <br><em>FlowItemInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>FlowItem</em> component. + * <br><em>FlowItemAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>FlowItem</em> component. + * </p> * * @typedef { TypedFrameNode<FlowItemInterface, FlowItemAttribute> } FlowItem * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1409,8 +2101,31 @@ export namespace typeNode { */ function createNode(context: UIContext, nodeType: 'FlowItem'): FlowItem; + /** + * Get the attribute instance of FrameNode to set attributes. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, undefined is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'FlowItem' } nodeType - node type. + * @returns { FlowItemAttribute | undefined } - Return the attribute instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function getAttribute(node: FrameNode, nodeType: 'FlowItem'): FlowItemAttribute | undefined; + /** * Define the FrameNode type for XComponent. + * + * <p><strong>NOTE</strong>: + * <br><em>XComponentInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>XComponent</em> component. + * <br><em>XComponentAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>XComponent</em> component. + * </p> * * @typedef { TypedFrameNode<XComponentInterface, XComponentAttribute> } XComponent * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1454,12 +2169,19 @@ export namespace typeNode { * @returns { XComponent } - Return XComponent type FrameNode. * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice - * @since 18 + * @since 19 */ function createNode(context: UIContext, nodeType: 'XComponent', parameters: NativeXComponentParameters): XComponent; /** * Define the FrameNode type for Checkbox. + * + * <p><strong>NOTE</strong>: + * <br><em>CheckboxInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Checkbox</em> component. + * <br><em>CheckboxAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Checkbox</em> component. + * </p> * * @typedef { TypedFrameNode<CheckboxInterface, CheckboxAttribute> } Checkbox * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1483,6 +2205,13 @@ export namespace typeNode { /** * Define the FrameNode type for CheckboxGroup. + * + * <p><strong>NOTE</strong>: + * <br><em>CheckboxGroupInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>CheckboxGroup</em> component. + * <br><em>CheckboxGroupAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>CheckboxGroup</em> component. + * </p> * * @typedef { TypedFrameNode<CheckboxGroupInterface, CheckboxGroupAttribute> } CheckboxGroup * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1506,6 +2235,13 @@ export namespace typeNode { /** * Define the FrameNode type for Radio. + * + * <p><strong>NOTE</strong>: + * <br><em>RadioInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Radio</em> component. + * <br><em>RadioAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Radio</em> component. + * </p> * * @typedef { TypedFrameNode<RadioInterface, RadioAttribute> } Radio * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1529,6 +2265,13 @@ export namespace typeNode { /** * Define the FrameNode type for Rating. + * + * <p><strong>NOTE</strong>: + * <br><em>RatingInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Rating</em> component. + * <br><em>RatingAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Rating</em> component. + * </p> * * @typedef { TypedFrameNode<RatingInterface, RatingAttribute> } Rating * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1552,6 +2295,13 @@ export namespace typeNode { /** * Define the FrameNode type for Select. + * + * <p><strong>NOTE</strong>: + * <br><em>SelectInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Select</em> component. + * <br><em>SelectAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Select</em> component. + * </p> * * @typedef { TypedFrameNode<SelectInterface, SelectAttribute> } Select * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1575,6 +2325,13 @@ export namespace typeNode { /** * Define the FrameNode type for Slider. + * + * <p><strong>NOTE</strong>: + * <br><em>SliderInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Slider</em> component. + * <br><em>SliderAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Slider</em> component. + * </p> * * @typedef { TypedFrameNode<SliderInterface, SliderAttribute> } Slider * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1598,6 +2355,13 @@ export namespace typeNode { /** * Define the FrameNode type for Toggle. + * + * <p><strong>NOTE</strong>: + * <br><em>ToggleInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Toggle</em> component. + * <br><em>ToggleAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Toggle</em> component. + * </p> * * @typedef { TypedFrameNode<ToggleInterface, ToggleAttribute> } Toggle * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1622,6 +2386,13 @@ export namespace typeNode { /** * Define the FrameNode type for Marquee. + * + * <p><strong>NOTE</strong>: + * <br><em>MarqueeInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Marquee</em> component. + * <br><em>MarqueeAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Marquee</em> component. + * </p> * * @typedef { TypedFrameNode<MarqueeInterface, MarqueeAttribute> } Marquee * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1645,6 +2416,13 @@ export namespace typeNode { /** * Define the FrameNode type for TextArea. + * + * <p><strong>NOTE</strong>: + * <br><em>TextAreaInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>TextArea</em> component. + * <br><em>TextAreaAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>TextArea</em> component. + * </p> * * @typedef { TypedFrameNode<TextAreaInterface, TextAreaAttribute> } TextArea * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1668,6 +2446,13 @@ export namespace typeNode { /** * Define the FrameNode type for SymbolGlyph. + * + * <p><strong>NOTE</strong>: + * <br><em>SymbolGlyphInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>SymbolGlyph</em> component. + * <br><em>SymbolGlyphAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>SymbolGlyph</em> component. + * </p> * * @typedef { TypedFrameNode<SymbolGlyphInterface, SymbolGlyphAttribute> } SymbolGlyph * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1691,6 +2476,13 @@ export namespace typeNode { /** * Define the FrameNode type for QRCode. + * + * <p><strong>NOTE</strong>: + * <br><em>QRCodeInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>QRCode</em> component. + * <br><em>QRCodeAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>QRCode</em> component. + * </p> * * @typedef { TypedFrameNode<QRCodeInterface, QRCodeAttribute> } QRCode * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1714,6 +2506,13 @@ export namespace typeNode { /** * Define the FrameNode type for Badge. + * + * <p><strong>NOTE</strong>: + * <br><em>BadgeInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Badge</em> component. + * <br><em>BadgeAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Badge</em> component. + * </p> * * @typedef { TypedFrameNode<BadgeInterface, BadgeAttribute> } Badge * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1737,6 +2536,13 @@ export namespace typeNode { /** * Define the FrameNode type for TextClock. + * + * <p><strong>NOTE</strong>: + * <br><em>TextClockInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>TextClock</em> component. + * <br><em>TextClockAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>TextClock</em> component. + * </p> * * @typedef { TypedFrameNode<TextClockInterface, TextClockAttribute> } TextClock * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1760,6 +2566,13 @@ export namespace typeNode { /** * Define the FrameNode type for TextTimer. + * + * <p><strong>NOTE</strong>: + * <br><em>TextTimerInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>TextTimer</em> component. + * <br><em>TextTimerAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>TextTimer</em> component. + * </p> * * @typedef { TypedFrameNode<TextTimerInterface, TextTimerAttribute> } TextTimer * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1783,6 +2596,13 @@ export namespace typeNode { /** * Define the FrameNode type for Grid. + * + * <p><strong>NOTE</strong>: + * <br><em>GridInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>Grid</em> component. + * <br><em>GridAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>Grid</em> component. + * </p> * * @typedef { TypedFrameNode<GridInterface, GridAttribute> } Grid * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1804,8 +2624,62 @@ export namespace typeNode { */ function createNode(context: UIContext, nodeType: 'Grid'): Grid; + /** + * Get the attribute instance of FrameNode to set attributes. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, undefined is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'Grid' } nodeType - node type. + * @returns { GridAttribute | undefined } - Return the attribute instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function getAttribute(node: FrameNode, nodeType: 'Grid'): GridAttribute | undefined; + + /** + * Bind the controller of FrameNode. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, an exception is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { Scroller } controller - the controller which is bind to the target FrameNode. + * @param { 'Grid' } nodeType - node type. + * @throws { BusinessError } 100023 - Parameter error. Possible causes: 1. The component type of the node + * is incorrect. 2. The node is null or undefined. 3. The controller is null or undefined. + * @throws { BusinessError } 100021 - The FrameNode is not modifiable. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function bindController(node: FrameNode, controller: Scroller, nodeType: 'Grid'): void; + + /** + * Get the event instance of Scroll node. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'Grid' } nodeType - node type. + * @returns { UIGridEvent | undefined } - Return the event instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 19 + */ + function getEvent(node: FrameNode, nodeType: 'Grid'): UIGridEvent | undefined; + /** * Define the FrameNode type for GridItem. + * + * <p><strong>NOTE</strong>: + * <br><em>GridItemInterface</em> is used as the input parameter of the initialize API of TypedFrameNode. + * <br>The input parameter is of the constructor type for the <em>GridItem</em> component. + * <br><em>GridItemAttribute</em> is used as the return value of the attribute API of <em>TypedFrameNode</em>. + * <br>It returns the attribute setting object of the <em>GridItem</em> component. + * </p> * * @typedef { TypedFrameNode<GridItemInterface, GridItemAttribute> } GridItem * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1826,10 +2700,30 @@ export namespace typeNode { * @since 14 */ function createNode(context: UIContext, nodeType: 'GridItem'): GridItem; + + /** + * Get the attribute instance of FrameNode to set attributes. + * If the node is not created using ArkTS, cross-language access must be enabled; otherwise, undefined is returned. + * This API does not support declaratively created nodes. + * + * @param { FrameNode } node - the target FrameNode. + * @param { 'GridItem' } nodeType - node type. + * @returns { GridItemAttribute | undefined } - Return the attribute instance of FrameNode, and return undefined if it + * does not exist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + export function getAttribute(node: FrameNode, nodeType: 'GridItem'): GridItemAttribute | undefined; } /** * Used for lazy loading of typeNode. + * + * <p><strong>NOTE</strong>: + * The input parameter cannot be a negative number; otherwise, no processing is performed. + * </p> * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1839,6 +2733,7 @@ export namespace typeNode { declare class NodeAdapter { /** * Constructor. + * A constructor used to create a NodeAdapter object. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1848,6 +2743,7 @@ declare class NodeAdapter { constructor(); /** * Dispose the NodeAdapter immediately. + * Bindings, if any, of the object will be cleared before the object is disposed of. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -2023,4 +2919,15 @@ declare class NodeAdapter { * @since 12 */ static detachNodeAdapter(node: FrameNode): void; + + /** + * Get if the NodeAdapter is disposed. + * + * @returns { boolean } - Returns true if the node is disposed, false otherwise. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + isDisposed(): boolean; } \ No newline at end of file diff --git a/api/arkui/GaugeModifier.d.ts b/api/arkui/GaugeModifier.d.ts old mode 100644 new mode 100755 index 3434677117b4b7076a1e7fa9bf56bb7e0fcbdfdb..0df4e35e79e68da1680ca0804f3ec3ddf2d1b430 --- a/api/arkui/GaugeModifier.d.ts +++ b/api/arkui/GaugeModifier.d.ts @@ -29,6 +29,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Gauge Modifier + * + * @extends GaugeAttribute + * @implements AttributeModifier<GaugeAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class GaugeModifier extends GaugeAttribute implements AttributeModifier<GaugeAttribute> { /** diff --git a/api/arkui/Graphics.d.ets b/api/arkui/Graphics.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..4b760794cf5b46ce8c7839a4d9724a0776a5baa6 --- /dev/null +++ b/api/arkui/Graphics.d.ets @@ -0,0 +1,1337 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ +import { Resource } from '../global/resource'; +import { BorderStyle } from './component/enums'; +import { ResourceColor } from './component/units'; + +/** + * Size info. + * + * @interface Size + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Size info. + * + * @interface Size + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface Size { + /** + * Get the width of the Size. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get the width of the Size. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + width: number; + + /** + * Get the height of the Size. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get the height of the Size. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + height: number; +} + +/** + * Defines DrawContext. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Defines DrawContext. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class DrawContext { + + /** + * Get size of the DrawContext. + * + * @returns { Size } The size of the DrawContext. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get size of the DrawContext. + * + * @returns { Size } The size of the DrawContext. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get size(): Size; + + /** + * Get size of the DrawContext with pixel unit. + * + * @returns { Size } The size of the DrawContext with pixel unit. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get sizeInPixel(): Size; +} + +/** + * Defined a vector with two values. + * + * @interface Vector2 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Defined a vector with two values. + * + * @interface Vector2 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface Vector2 { + /** + * Value for x-axis of the vector. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Value for x-axis of the vector. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + x: number + + /** + * Value for y-axis of the vector. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Value for y-axis of the vector. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + y: number +} + + /** + * Defined a vector with two T type values. + * + * @interface Vector2T + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + export interface Vector2T<T> { + + /** + * Value for x-axis of the vector. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + x: T + + /** + * Value for y-axis of the vector. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + y: T +} + +/** + * Defined a vector with three values. + * + * @interface Vector3 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Defined a vector with three values. + * + * @interface Vector3 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface Vector3 { + /** + * Value for x-axis of the vector. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Value for x-axis of the vector. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + x: number; + + /** + * Value for y-axis of the vector. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Value for y-axis of the vector. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + y: number; + + /** + * Value for z-axis of the vector. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Value for z-axis of the vector. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + z: number; +} + +/** + * It's a 4x4 matrix, represent by number[]. + * + * @typedef { number[] } Matrix4 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * It's a 4x4 matrix, represent by number[]. + * + * @typedef { number[] } Matrix4 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type Matrix4 = [ + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number, + number +]; + +/** + * Offset info. + * + * @typedef { Vector2 } Offset + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Offset info. + * + * @typedef { Vector2 } Offset + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type Offset = Vector2; + +/** + * Position info. + * + * @typedef { Vector2 } Position + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Position info. + * + * @typedef { Vector2 } Position + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type Position = Vector2; + +/** + * PositionT info. + * @typedef {Vector2T<T> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type PositionT<T> = Vector2T<T>; + +/** + * Pivot info. + * + * @typedef { Vector2 } Pivot + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Pivot info. + * + * @typedef { Vector2 } Pivot + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type Pivot = Vector2; + +/** + * Scale info. + * + * @typedef { Vector2 } Scale + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Scale info. + * + * @typedef { Vector2 } Scale + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type Scale = Vector2; + +/** + * Translation info. + * + * @typedef { Vector2 } Translation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Translation info. + * + * @typedef { Vector2 } Translation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type Translation = Vector2; + +/** + * Rotation info. + * + * @typedef { Vector3 } Rotation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Rotation info. + * + * @typedef { Vector3 } Rotation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type Rotation = Vector3; + +/** + * Frame info, include the position info and size info. + * + * @interface Frame + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Frame info, include the position info and size info. + * + * @interface Frame + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare interface Frame { + /** + * Position value for x-axis of the frame info. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Position value for x-axis of the frame info. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + x: number; + + /** + * Position value for y-axis of the frame info. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Position value for y-axis of the frame info. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + y: number; + + /** + * Size value for width of the frame info. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Size value for width of the frame info. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + width: number; + + /** + * Size value for height of the frame info. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Size value for height of the frame info. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + height: number; +} + +/** + * Defines the Edge property. + * + * @interface Edges + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface Edges<T> { + /** + * Left property. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + left: T, + + /** + * Right property. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + right: T, + + /** + * Top property. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + top: T, + + /** + * Bottom property. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + bottom: T +} + +/** + * Defines the Length Unit. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare enum LengthUnit { + /** + * Logical pixel used in Ace1.0. It's based on frontend design width. + * For example, when a frontend with 750px design width running on a + * device with 1080 pixels width, 1px represents 1.44 pixels. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + PX = 0, + + /** + * Density independent pixels, one vp is one pixel on a 160 dpi screen. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + VP = 1, + + /** + * Scale independent pixels. This is like VP but will be scaled by + * user's font size preference. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + FP = 2, + + /** + * The percentage of either a value from the element's parent or from + * another property of the element itself. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + PERCENT = 3, + + /** + * Logic pixels used in ACE2.0 instead of PX, and PX is the physical pixels in ACE2.0. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + LPX = 4, +} + +/** + * Defines the Size property. + * + * @interface SizeT + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface SizeT<T> { + /** + * Width property. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + width: T; + + /** + * Height property. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + height: T; +} + +/** + * Enumerates the length metrics unit. + * + * @enum { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export enum LengthMetricsUnit { + + /** + * The default length metrics unit. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + DEFAULT = 0, + + /** + * The pixel length metrics unit. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + PX = 1 +} + +/** + * Defines the Length Metrics. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class LengthMetrics { + /** + * Constructor. + * + * @param { number } value - The value of length. + * @param { LengthUnit } [unit] - The length unit. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(value: number, unit?:LengthUnit); + + /** + * Init a lengthMetrics with px unit. + * + * @param { number } value - The value of the length metrics. + * @returns { LengthMetrics } Returns the lengthMetrics object with unit px. + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static px(value: number): LengthMetrics; + + /** + * Init a lengthMetrics with vp unit. + * + * @param { number } value - The value of the length metrics. + * @returns { LengthMetrics } - Returns the lengthMetrics object with unit vp. + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static vp(value: number): LengthMetrics; + + /** + * Init a lengthMetrics with fp unit. + * + * @param { number } value - The value of the length metrics. + * @returns { LengthMetrics } Returns the lengthMetrics object with unit fp. + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static fp(value: number): LengthMetrics; + + /** + * Init a lengthMetrics with percent unit. + * + * @param { number } value - The value of the length metrics. + * @returns { LengthMetrics } Returns the lengthMetrics object with unit percent. + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static percent(value: number): LengthMetrics; + + /** + * Init a lengthMetrics with lpx unit. + * + * @param { number } value - The value of the length metrics. + * @returns { LengthMetrics } Returns the lengthMetrics object with unit lpx. + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static lpx(value: number): LengthMetrics; + + /** + * Init a lengthMetrics with Resource unit. + * + * @param { Resource } value - The value of the length metrics. + * @returns { LengthMetrics } Returns the lengthMetrics object with unit Resource. + * @throws { BusinessError } 180001 - System resources does not exist. + * @throws { BusinessError } 180002 - The type of system resources is incorrect. + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static resource(value: Resource): LengthMetrics; + + /** + * The unit of the LengthMetrics. The default value is VP. + * + * @type { LengthUnit } + * @default VP + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + public unit: LengthUnit; + + /** + * The value of the LengthMetrics. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + public value: number; +} + +/** + * Defines the ColorMetrics class. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class ColorMetrics { + /** + * Instantiate the ColorMetrics class using color number + * + * @param { number } value - color number + * @returns { ColorMetrics } ColorMetrics class + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static numeric(value: number): ColorMetrics; + + /** + * Instantiate the ColorMetrics class using color rgb + * + * @param { number } red - red value of rgba + * @param { number } green - green value of rgba + * @param { number } blue - blue value of rgba + * @param { number } alpha - opacity value of rgba + * @returns { ColorMetrics } ColorMetrics class + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static rgba(red: number, green: number, blue: number, alpha?: number): ColorMetrics; + + /** + * Instantiate the ColorMetrics class using ResourceColor + * + * @param { ResourceColor } color - resource color + * @returns { ColorMetrics } ColorMetrics class + * @throws { BusinessError } 180003 - Failed to obtain the color resource. + * @throws { BusinessError } 401 - Parameter error. Possible cause: + * 1. The type of the input color parameter is not ResourceColor. + * 2. The format of the input color string is not RGB or RGBA. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static resourceColor(color: ResourceColor): ColorMetrics; + + /** + * blend color + * + * @param { ColorMetrics } overlayColor - overlay color + * @returns { ColorMetrics } ColorMetrics class + * @throws { BusinessError } 401 - Parameter error. The type of the input parameter is not ColorMetrics. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + blendColor(overlayColor: ColorMetrics): ColorMetrics; + + /** + * Get color of the ColorMetrics. + * + * @returns { string } The color of the ColorMetrics. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get color(): string; + + /** + * Get red value of the ColorMetrics. + * + * @returns { number } The red value of the ColorMetrics. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get red(): number; + + /** + * Get green value of the ColorMetrics. + * + * @returns { number } The green value of the ColorMetrics. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get green(): number; + + /** + * Get blue value of the ColorMetrics. + * + * @returns { number } The blue value of the ColorMetrics. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get blue(): number; + + /** + * Get opacity value of the ColorMetrics. + * + * @returns { number } The opacity value of the ColorMetrics. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get alpha(): number; +} + +/** + * Defines the Corner property. + * + * @interface Corners + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface Corners<T> { + /** + * TopLeft property. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + topLeft: T, + + /** + * TopRight property. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + topRight: T, + + /** + * BottomLeft property. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + bottomLeft: T, + + /** + * BottomRight property. + * + * @type { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + bottomRight: T +} + +/** + * Defines the Corner radius. + * + * @typedef { Corners<Vector2> } CornerRadius + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type CornerRadius = Corners<Vector2>; + +/** + * BorderRadiuses info. + * + * @typedef { Corners<number> } BorderRadiuses + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type BorderRadiuses = Corners<number>; + +/** + * Defines the RoundRect. + * + * @interface RoundRect + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface RoundRect { + + /** + * Corners property. + * + * @type { CornerRadius } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + corners: CornerRadius +} + +/** + * Defines the Circle. + * + * @interface Circle + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface Circle { + /** + * The x-coordinate of the center of the Circle. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + centerX: number, + + /** + * The y-coordinate of the center of the Circle. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + centerY: number, + + /** + * The radius of the Circle. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + radius: number +} + +/** + * Defines the CommandPath. + * + * @interface CommandPath + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface CommandPath { + /** + * The commands of CommandPath. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + commands: string +} + +/** + * Defines ShapeMask. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class ShapeMask { + /** + * Constructor. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(); + + /** + * Set the round rect shape of the ShapeMask. + * + * @param { RoundRect } roundRect - The round rect shape will be set. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setRoundRectShape(roundRect: RoundRect): void; + + /** + * Set the circle shape of the ShapeMask. + * + * @param { Circle } circle - The circle shape will be set. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setCircleShape(circle: Circle): void; + + /** + * Set the command path of the ShapeMask. + * + * @param { CommandPath } path - The command path will be set. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setCommandPath(path: CommandPath): void; + + /** + * The fill color of the ShapeMask. + * + * @type { number } + * @default 0XFF000000 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + fillColor: number; + + /** + * The stroke color of the ShapeMask. + * + * @type { number } + * @default 0XFF000000 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + strokeColor: number; + + /** + * The stroke width of the ShapeMask. + * + * @type { number } + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + strokeWidth: number; +} + + +/** + * Define ShapeClip. Record the type and parameters of the shape used for clipping. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class ShapeClip { + /** + * Constructor. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(); + + /** + * Set the round rect shape of the ShapeClip. + * + * @param { RoundRect } roundRect - The round rect shape will be set. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setRoundRectShape(roundRect: RoundRect): void; + + /** + * Set the circle shape of the ShapeClip. + * + * @param { Circle } circle - The circle shape will be set. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setCircleShape(circle: Circle): void; + + /** + * Set the command path of the ShapeClip. + * + * @param { CommandPath } path - The command path will be set. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + setCommandPath(path: CommandPath): void; +} + +/** + * Obtain a object with all edges are set to the same color. + * + * @param { number } all - The edge color will be set. + * @returns { Edges<number> } - The object with all edges are set to the same color. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare function edgeColors(all: number): Edges<number>; + +/** + * Obtain a object with all edges are set to the same width. + * + * @param { number } all - The edge width will be set. + * @returns { Edges<number> } - The object with all edges are set to the same width. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare function edgeWidths(all: number): Edges<number>; + +/** + * Obtain a object with all edges are set to the same style. + * + * @param { BorderStyle } all - The edge style will be set. + * @returns { Edges<BorderStyle> } - The object with all edges are set to the same style. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare function borderStyles(all: BorderStyle): Edges<BorderStyle>; + +/** + * Obtain a BorderRadiuses object with all edges are set to the same radius. + * + * @param { number } all - The edge radius will be set. + * @returns { BorderRadiuses } - The BorderRadiuses object. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare function borderRadiuses(all: number): BorderRadiuses; diff --git a/api/arkui/Graphics.d.ts b/api/arkui/Graphics.d.ts index bf5485c8c671f1ff70594edd7f8635cebcedad5a..19adb28e61e85820a9354ac07bc9cbc4c096c46d 100644 --- a/api/arkui/Graphics.d.ts +++ b/api/arkui/Graphics.d.ts @@ -23,6 +23,8 @@ import { Resource } from '../global/resource'; /** * Size info. + * Returns the width and height of the component. The default unit is vp, but APIs that use the Size type may specify a + * different unit, in which case the unit specified by the API takes precedence. * * @interface Size * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -31,6 +33,8 @@ import { Resource } from '../global/resource'; */ /** * Size info. + * Returns the width and height of the component. The default unit is vp, but APIs that use the Size type may specify a + * different unit, in which case the unit specified by the API takes precedence. * * @interface Size * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -41,6 +45,8 @@ import { Resource } from '../global/resource'; export interface Size { /** * Get the width of the Size. + * Unit: vp. + * Value range: [0, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -49,6 +55,8 @@ export interface Size { */ /** * Get the width of the Size. + * Unit: vp. + * Value range: [0, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -60,6 +68,8 @@ export interface Size { /** * Get the height of the Size. + * Unit: vp. + * Value range: [0, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -68,6 +78,8 @@ export interface Size { */ /** * Get the height of the Size. + * Unit: vp. + * Value range: [0, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -87,6 +99,7 @@ export interface Size { */ /** * Defines DrawContext. + * Graphics drawing context, which provides the canvas width and height required for drawing. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -165,6 +178,7 @@ export class DrawContext { interface Vector2 { /** * Value for x-axis of the vector. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -173,6 +187,7 @@ interface Vector2 { */ /** * Value for x-axis of the vector. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -184,6 +199,7 @@ interface Vector2 { /** * Value for y-axis of the vector. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -192,6 +208,7 @@ interface Vector2 { */ /** * Value for y-axis of the vector. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -256,6 +273,7 @@ interface Vector2 { interface Vector3 { /** * Value for x-axis of the vector. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -264,6 +282,7 @@ interface Vector3 { */ /** * Value for x-axis of the vector. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -275,6 +294,7 @@ interface Vector3 { /** * Value for y-axis of the vector. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -283,6 +303,7 @@ interface Vector3 { */ /** * Value for y-axis of the vector. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -294,6 +315,7 @@ interface Vector3 { /** * Value for z-axis of the vector. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -302,6 +324,7 @@ interface Vector3 { */ /** * Value for z-axis of the vector. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -314,6 +337,7 @@ interface Vector3 { /** * It's a 4x4 matrix, represent by number[]. + * Value range of each number: (-∞, +∞) * * @typedef { number[] } Matrix4 * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -322,6 +346,7 @@ interface Vector3 { */ /** * It's a 4x4 matrix, represent by number[]. + * Value range of each number: (-∞, +∞) * * @typedef { number[] } Matrix4 * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -350,6 +375,7 @@ export type Matrix4 = [ /** * Offset info. + * Unit: vp. * * @typedef { Vector2 } Offset * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -358,6 +384,7 @@ export type Matrix4 = [ */ /** * Offset info. + * Unit: vp. * * @typedef { Vector2 } Offset * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -369,6 +396,7 @@ export type Offset = Vector2; /** * Position info. + * Unit: vp. * * @typedef { Vector2 } Position * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -377,6 +405,7 @@ export type Offset = Vector2; */ /** * Position info. + * Unit: vp. * * @typedef { Vector2 } Position * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -388,6 +417,7 @@ export type Position = Vector2; /** * PositionT info. + * Unit: vp. * @typedef {Vector2T<T> } * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -398,6 +428,8 @@ export type PositionT<T> = Vector2T<T>; /** * Pivot info. + * As the rotation or scaling center of the component, the pivot affects the rotation and scaling effects. + * The value is a floating point number in the range [0.0, 1.0], and the default value is 0.5. * * @typedef { Vector2 } Pivot * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -406,6 +438,8 @@ export type PositionT<T> = Vector2T<T>; */ /** * Pivot info. + * As the rotation or scaling center of the component, the pivot affects the rotation and scaling effects. + * The value is a floating point number in the range [0.0, 1.0], and the default value is 0.5. * * @typedef { Vector2 } Pivot * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -417,6 +451,7 @@ export type Pivot = Vector2; /** * Scale info. + * The value is a floating point number, and the default value is 1.0. * * @typedef { Vector2 } Scale * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -425,6 +460,7 @@ export type Pivot = Vector2; */ /** * Scale info. + * The value is a floating point number, and the default value is 1.0. * * @typedef { Vector2 } Scale * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -436,6 +472,7 @@ export type Scale = Vector2; /** * Translation info. + * Unit: px * * @typedef { Vector2 } Translation * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -444,6 +481,7 @@ export type Scale = Vector2; */ /** * Translation info. + * Unit: px * * @typedef { Vector2 } Translation * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -455,6 +493,7 @@ export type Translation = Vector2; /** * Rotation info. + * Unit: degree * * @typedef { Vector3 } Rotation * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -463,6 +502,7 @@ export type Translation = Vector2; */ /** * Rotation info. + * Unit: degree * * @typedef { Vector3 } Rotation * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -492,6 +532,8 @@ export type Rotation = Vector3; export declare interface Frame { /** * Position value for x-axis of the frame info. + * Unit: vp. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -500,6 +542,8 @@ export declare interface Frame { */ /** * Position value for x-axis of the frame info. + * Unit: vp. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -511,6 +555,8 @@ export declare interface Frame { /** * Position value for y-axis of the frame info. + * Unit: vp. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -519,6 +565,8 @@ export declare interface Frame { */ /** * Position value for y-axis of the frame info. + * Unit: vp. + * Value range: (-∞, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -530,6 +578,8 @@ export declare interface Frame { /** * Size value for width of the frame info. + * Unit: vp. + * Value range: [0, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -538,6 +588,8 @@ export declare interface Frame { */ /** * Size value for width of the frame info. + * Unit: vp. + * Value range: [0, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -549,6 +601,8 @@ export declare interface Frame { /** * Size value for height of the frame info. + * Unit: vp. + * Value range: [0, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -557,6 +611,8 @@ export declare interface Frame { */ /** * Size value for height of the frame info. + * Unit: vp. + * Value range: [0, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -732,7 +788,7 @@ export interface SizeT<T> { export enum LengthMetricsUnit { /** - * The default length metrics unit. + * The default length metrics unit, in vp. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -754,6 +810,7 @@ export enum LengthMetricsUnit { /** * Defines the Length Metrics. + * When the length unit is PERCENT, the value 1 indicates 100%. * * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -763,9 +820,12 @@ export enum LengthMetricsUnit { declare class LengthMetrics { /** * Constructor. + * If the unit parameter is omitted or explicitly set to undefined, the default unit VP is used. + * If it is set to a value that is not of the LengthUnit type, the default value 0 VP is used. * * @param { number } value - The value of length. * @param { LengthUnit } [unit] - The length unit. + * The default value is VP. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -777,6 +837,7 @@ declare class LengthMetrics { * Init a lengthMetrics with px unit. * * @param { number } value - The value of the length metrics. + * Value range: (-∞, +∞). * @returns { LengthMetrics } Returns the lengthMetrics object with unit px. * @static * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -790,6 +851,7 @@ declare class LengthMetrics { * Init a lengthMetrics with vp unit. * * @param { number } value - The value of the length metrics. + * Value range: (-∞, +∞). * @returns { LengthMetrics } - Returns the lengthMetrics object with unit vp. * @static * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -803,6 +865,7 @@ declare class LengthMetrics { * Init a lengthMetrics with fp unit. * * @param { number } value - The value of the length metrics. + * Value range: (-∞, +∞). * @returns { LengthMetrics } Returns the lengthMetrics object with unit fp. * @static * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -814,8 +877,10 @@ declare class LengthMetrics { /** * Init a lengthMetrics with percent unit. + * The value 1 indicates 100%. * * @param { number } value - The value of the length metrics. + * Value range: [0, 1]. * @returns { LengthMetrics } Returns the lengthMetrics object with unit percent. * @static * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -829,6 +894,7 @@ declare class LengthMetrics { * Init a lengthMetrics with lpx unit. * * @param { number } value - The value of the length metrics. + * Value range: (-∞, +∞). * @returns { LengthMetrics } Returns the lengthMetrics object with unit lpx. * @static * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -889,7 +955,8 @@ declare class ColorMetrics { /** * Instantiate the ColorMetrics class using color number * - * @param { number } value - color number + * @param { number } value - color number, in HEX format + * RGB and ARGB color values are supported. * @returns { ColorMetrics } ColorMetrics class * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -902,9 +969,13 @@ declare class ColorMetrics { * Instantiate the ColorMetrics class using color rgb * * @param { number } red - red value of rgba + * The value is an integer ranging from 0 to 255. * @param { number } green - green value of rgba + * The value is an integer ranging from 0 to 255. * @param { number } blue - blue value of rgba + * The value is an integer ranging from 0 to 255. * @param { number } alpha - opacity value of rgba + * The value is a floating point number ranging from 0.0 to 1.0. The default value is 1.0 (fully opaque). * @returns { ColorMetrics } ColorMetrics class * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -913,6 +984,24 @@ declare class ColorMetrics { */ static rgba(red: number, green: number, blue: number, alpha?: number): ColorMetrics; + /** + * Instantiate the ColorMetrics class using colorSpace and rgba. + * Only some properties support setting color in display-p3 colorSpace. + * + * @param { ColorSpace } colorSpace - colorSpace of color. + * @param { number } red - red value of rgba. The range of the red channel is [0, 1]. + * @param { number } green - green value of rgba. The range of the green channel is [0, 1]. + * @param { number } blue - blue value of rgba. The range of the blue channel is [0, 1]. + * @param { number } [alpha] - alpha value of rgba. The range of the alpha channel is [0, 1]. The default value is 1. + * @returns { ColorMetrics } ColorMetrics class + * @static + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + static colorWithSpace(colorSpace: ColorSpace, red: number, green: number, blue: number, alpha?: number): ColorMetrics; + /** * Instantiate the ColorMetrics class using ResourceColor * @@ -944,8 +1033,10 @@ declare class ColorMetrics { /** * Get color of the ColorMetrics. + * The return value is a string indicating an RGBA color value. * * @returns { string } The color of the ColorMetrics. + * String indicating an RGBA color value. Example: 'rgba(255, 100, 255, 0.5)' * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -957,6 +1048,7 @@ declare class ColorMetrics { * Get red value of the ColorMetrics. * * @returns { number } The red value of the ColorMetrics. + * The value is an integer ranging from 0 to 255. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -968,6 +1060,7 @@ declare class ColorMetrics { * Get green value of the ColorMetrics. * * @returns { number } The green value of the ColorMetrics. + * The value is an integer ranging from 0 to 255. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -979,6 +1072,7 @@ declare class ColorMetrics { * Get blue value of the ColorMetrics. * * @returns { number } The blue value of the ColorMetrics. + * The value is an integer ranging from 0 to 255. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -990,6 +1084,7 @@ declare class ColorMetrics { * Get opacity value of the ColorMetrics. * * @returns { number } The opacity value of the ColorMetrics. + * The value is an integer ranging from 0 to 1. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform * @atomicservice @@ -1130,7 +1225,7 @@ export interface RoundRect { */ export interface Circle { /** - * The x-coordinate of the center of the Circle. + * The x-coordinate of the center of the Circle, in px. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1141,7 +1236,7 @@ export interface Circle { centerX: number, /** - * The y-coordinate of the center of the Circle. + * The y-coordinate of the center of the Circle, in px. * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1152,7 +1247,8 @@ export interface Circle { centerY: number, /** - * The radius of the Circle. + * The radius of the Circle, in px. + * Value range: [0, +∞). * * @type { number } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1175,6 +1271,8 @@ export interface Circle { export interface CommandPath { /** * The commands of CommandPath. + * For details about how to convert the pixel unit, see Pixel Unit Conversion. + * Unit: px * * @type { string } * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -1260,7 +1358,8 @@ export declare class ShapeMask { setCommandPath(path: CommandPath): void; /** - * The fill color of the ShapeMask. + * The fill color of the ShapeMask, in ARGB format. + * The default value is 0XFF000000. * * @type { number } * @default 0XFF000000 @@ -1272,7 +1371,8 @@ export declare class ShapeMask { fillColor: number; /** - * The stroke color of the ShapeMask. + * The stroke color of the ShapeMask, in ARGB format. + * The default value is 0XFF000000. * * @type { number } * @default 0XFF000000 @@ -1284,7 +1384,8 @@ export declare class ShapeMask { strokeColor: number; /** - * The stroke width of the ShapeMask. + * The stroke width of the ShapeMask, in px. + * The default value is 0. * * @type { number } * @default 0 @@ -1375,7 +1476,8 @@ export declare class ShapeClip { /** * Obtain a object with all edges are set to the same color. * - * @param { number } all - The edge color will be set. + * @param { number } all - The edge color will be set, in ARGB format, for example, 0xffff00ff. + * Value range: [0, 0xffffffff] * @returns { Edges<number> } - The object with all edges are set to the same color. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1387,7 +1489,8 @@ export function edgeColors(all: number): Edges<number>; /** * Obtain a object with all edges are set to the same width. * - * @param { number } all - The edge width will be set. + * @param { number } all - The edge width will be set, in vp. + * Value range: [0, +∞). * @returns { Edges<number> } - The object with all edges are set to the same width. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform @@ -1412,6 +1515,8 @@ export function borderStyles(all: BorderStyle): Edges<BorderStyle>; * Obtain a BorderRadiuses object with all edges are set to the same radius. * * @param { number } all - The edge radius will be set. + * Unit: vp. + * Value range: [0, +∞). * @returns { BorderRadiuses } - The BorderRadiuses object. * @syscap SystemCapability.ArkUI.ArkUI.Full * @crossplatform diff --git a/api/arkui/GridColModifier.d.ts b/api/arkui/GridColModifier.d.ts old mode 100644 new mode 100755 index 99843bb25deeda56bea454d90abc2e9388fca3fa..fa41e545310b86f0553c7e7a41a629a93b00f627 --- a/api/arkui/GridColModifier.d.ts +++ b/api/arkui/GridColModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines GridCol Modifier + * + * @extends GridColAttribute + * @implements AttributeModifier<GridColAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class GridColModifier extends GridColAttribute implements AttributeModifier<GridColAttribute> { /** diff --git a/api/arkui/GridItemModifier.d.ts b/api/arkui/GridItemModifier.d.ts old mode 100644 new mode 100755 index 7880a0ec1eb6129784fbb7f0f5ed1be3b7764d6f..27a8695eef50ab8d5efa1bd0222c40670014b573 --- a/api/arkui/GridItemModifier.d.ts +++ b/api/arkui/GridItemModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines GridItem Modifier + * + * @extends GridItemAttribute + * @implements AttributeModifier<GridItemAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class GridItemModifier extends GridItemAttribute implements AttributeModifier<GridItemAttribute> { /** diff --git a/api/arkui/GridModifier.d.ts b/api/arkui/GridModifier.d.ts old mode 100644 new mode 100755 index 3c15369505df3f9e7c039b192d87dbca9164b66c..8e13a7c4cba38957f90a14145c781113fd3eca84 --- a/api/arkui/GridModifier.d.ts +++ b/api/arkui/GridModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Grid Modifier + * + * @extends GridAttribute + * @implements AttributeModifier<GridAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class GridModifier extends GridAttribute implements AttributeModifier<GridAttribute> { /** diff --git a/api/arkui/GridRowModifier.d.ts b/api/arkui/GridRowModifier.d.ts old mode 100644 new mode 100755 index d9335fd5a81225c788cb4435c234384f7b93d373..743c0b27c38c10226890b0c9e91a8ccff12d19b6 --- a/api/arkui/GridRowModifier.d.ts +++ b/api/arkui/GridRowModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines GridRow Modifier + * + * @extends GridRowAttribute + * @implements AttributeModifier<GridRowAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class GridRowModifier extends GridRowAttribute implements AttributeModifier<GridRowAttribute> { /** diff --git a/api/arkui/HyperlinkModifier.d.ts b/api/arkui/HyperlinkModifier.d.ts old mode 100644 new mode 100755 index 492a081ace057926eab69ad752d2e76390f85baf..fc0c92e6fb72225662d159d4d130c9c15919c949 --- a/api/arkui/HyperlinkModifier.d.ts +++ b/api/arkui/HyperlinkModifier.d.ts @@ -29,6 +29,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Hyperlink Modifier + * + * @extends HyperlinkAttribute + * @implements AttributeModifier<HyperlinkAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class HyperlinkModifier extends HyperlinkAttribute implements AttributeModifier<HyperlinkAttribute> { /** diff --git a/api/arkui/ImageAnimatorModifier.d.ts b/api/arkui/ImageAnimatorModifier.d.ts old mode 100644 new mode 100755 index 470984ba14a8530ab8196c33793a0a5f6690d365..f5c55726a05e84c1b05cdd0600146fb20e7502b5 --- a/api/arkui/ImageAnimatorModifier.d.ts +++ b/api/arkui/ImageAnimatorModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines ImageAnimator Modifier + * + * @extends ImageAnimatorAttribute + * @implements AttributeModifier<ImageAnimatorAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ImageAnimatorModifier extends ImageAnimatorAttribute implements AttributeModifier<ImageAnimatorAttribute> { /** diff --git a/api/arkui/ImageModifier.d.ets b/api/arkui/ImageModifier.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..c0e7b3d7dcd43a24892e4f138321ff5d413c6aac --- /dev/null +++ b/api/arkui/ImageModifier.d.ets @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { ImageAttribute } from './component/image' +import { AttributeModifier }from './component/common' + +/** + * Defines Image Modifier + * + * @extends ImageAttribute + * @implements AttributeModifier + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 +*/ +export declare interface ImageModifier extends ImageAttribute, AttributeModifier<ImageAttribute> { + + /** + * Defines the normal update attribute function. + * + * @param { ImageAttribute } instance + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + applyNormalAttribute: undefined | ((instance: ImageAttribute) => void); + applyPressedAttribute: undefined | ((instance: ImageAttribute) => void); + applyFocusedAttribute: undefined | ((instance: ImageAttribute) => void); + applyDisabledAttribute: undefined | ((instance: ImageAttribute) => void); + applySelectedAttribute: undefined | ((instance: ImageAttribute) => void); +} diff --git a/api/arkui/ImageModifier.d.ts b/api/arkui/ImageModifier.d.ts old mode 100644 new mode 100755 index 2894db7ca4a54985805c8daaadecff28ca392a5e..cc83c0091d773a25dc0462353ec308dd6454f122 --- a/api/arkui/ImageModifier.d.ts +++ b/api/arkui/ImageModifier.d.ts @@ -29,6 +29,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Image Modifier + * + * @extends ImageAttribute + * @implements AttributeModifier<ImageAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ImageModifier extends ImageAttribute implements AttributeModifier<ImageAttribute> { /** diff --git a/api/arkui/ImageSpanModifier.d.ts b/api/arkui/ImageSpanModifier.d.ts old mode 100644 new mode 100755 index 90172fb5ef1aaa3d493c5f049d4590ba01f84d1d..b36e62240cfc977b82c5cb2de89d2e0ff36f4e0e --- a/api/arkui/ImageSpanModifier.d.ts +++ b/api/arkui/ImageSpanModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines ImageSpan Modifier + * + * @extends ImageSpanAttribute + * @implements AttributeModifier<ImageSpanAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ImageSpanModifier extends ImageSpanAttribute implements AttributeModifier<ImageSpanAttribute> { /** diff --git a/api/arkui/LineModifier.d.ts b/api/arkui/LineModifier.d.ts old mode 100644 new mode 100755 index e32fe9d6adc0222d1635ac7ca36de42dce7ca76c..7260e253647a96ac5b8c93950df5cd2da11f851c --- a/api/arkui/LineModifier.d.ts +++ b/api/arkui/LineModifier.d.ts @@ -28,6 +28,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Line Modifier + * + * @extends LineAttribute + * @implements AttributeModifier<LineAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class LineModifier extends LineAttribute implements AttributeModifier<LineAttribute> { /** diff --git a/api/arkui/ListItemGroupModifier.d.ts b/api/arkui/ListItemGroupModifier.d.ts old mode 100644 new mode 100755 index 9a68efe622acd4b9723b44707ba27b5d273fd359..67652360f3d63305432aa3d64c46e946a22f68af --- a/api/arkui/ListItemGroupModifier.d.ts +++ b/api/arkui/ListItemGroupModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines ListItemGroup Modifier + * + * @extends ListItemGroupAttribute + * @implements AttributeModifier<ListItemGroupAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ListItemGroupModifier extends ListItemGroupAttribute implements AttributeModifier<ListItemGroupAttribute> { /** diff --git a/api/arkui/ListItemModifier.d.ts b/api/arkui/ListItemModifier.d.ts old mode 100644 new mode 100755 index 44f2ec8c08a5fe510443d5674b06080c602f4a83..8bf9255ea1384a06ffb3dcb3a8d3dbb9f8cd3ec6 --- a/api/arkui/ListItemModifier.d.ts +++ b/api/arkui/ListItemModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines ListItem Modifier + * + * @extends ListItemAttribute + * @implements AttributeModifier<ListItemAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ListItemModifier extends ListItemAttribute implements AttributeModifier<ListItemAttribute> { /** diff --git a/api/arkui/ListModifier.d.ts b/api/arkui/ListModifier.d.ts old mode 100644 new mode 100755 index 6d17512311c2689c28fb86e34a8a1fdcc25ac76e..e9f3b00096218e063a4b4844fbdbc6cc72c2ba6c --- a/api/arkui/ListModifier.d.ts +++ b/api/arkui/ListModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines List Modifier + * + * @extends ListAttribute + * @implements AttributeModifier<ListAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ListModifier extends ListAttribute implements AttributeModifier<ListAttribute> { /** diff --git a/api/arkui/LoadingProgressModifier.d.ts b/api/arkui/LoadingProgressModifier.d.ts old mode 100644 new mode 100755 index 5bf6f81dd35a871097c387f1af3bf362277354c9..cef52dec6287f8e1fdedb171f48fad0a389f0e0e --- a/api/arkui/LoadingProgressModifier.d.ts +++ b/api/arkui/LoadingProgressModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines LoadingProgress Modifier + * + * @extends LoadingProgressAttribute + * @implements AttributeModifier<LoadingProgressAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class LoadingProgressModifier extends LoadingProgressAttribute implements AttributeModifier<LoadingProgressAttribute> { /** diff --git a/api/arkui/MarqueeModifier.d.ts b/api/arkui/MarqueeModifier.d.ts old mode 100644 new mode 100755 index 612b8b725f9595f9970d6efe70ea456acc18c235..e07368c82b90229e943c71baa972b7ec8be22d7d --- a/api/arkui/MarqueeModifier.d.ts +++ b/api/arkui/MarqueeModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Marquee Modifier + * + * @extends MarqueeAttribute + * @implements AttributeModifier<MarqueeAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class MarqueeModifier extends MarqueeAttribute implements AttributeModifier<MarqueeAttribute> { /** diff --git a/api/arkui/MenuItemModifier.d.ts b/api/arkui/MenuItemModifier.d.ts old mode 100644 new mode 100755 index 161b3e652679a53c513cbf33fce90485b143593c..5b3d9c98f8cdfd3215e0f1261b6724da9be821a5 --- a/api/arkui/MenuItemModifier.d.ts +++ b/api/arkui/MenuItemModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines MenuItem Modifier + * + * @extends MenuItemAttribute + * @implements AttributeModifier<MenuItemAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class MenuItemModifier extends MenuItemAttribute implements AttributeModifier<MenuItemAttribute> { /** diff --git a/api/arkui/MenuModifier.d.ts b/api/arkui/MenuModifier.d.ts old mode 100644 new mode 100755 index c2007dd3ecd080be421e91f72b5d2bdaab4d0e67..4615d670ea453918bd427c2d93d08dc886894995 --- a/api/arkui/MenuModifier.d.ts +++ b/api/arkui/MenuModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Menu Modifier + * + * @extends MenuAttribute + * @implements AttributeModifier<MenuAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class MenuModifier extends MenuAttribute implements AttributeModifier<MenuAttribute> { /** diff --git a/api/arkui/NavDestinationModifier.d.ts b/api/arkui/NavDestinationModifier.d.ts old mode 100644 new mode 100755 index 269dd5e33e730c30f38e2f1a736a3808818cd7ca..65189868399244d20d34b418ca48faa070259553 --- a/api/arkui/NavDestinationModifier.d.ts +++ b/api/arkui/NavDestinationModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines NavDestination Modifier + * + * @extends NavDestinationAttribute + * @implements AttributeModifier<NavDestinationAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class NavDestinationModifier extends NavDestinationAttribute implements AttributeModifier<NavDestinationAttribute> { /** diff --git a/api/arkui/NavRouterModifier.d.ts b/api/arkui/NavRouterModifier.d.ts index e18647cb5c3e9d2a7fab3143b6d0b336f696961f..0ac55b2f20aa722b626fbfb0d6843c6e393040a7 100644 --- a/api/arkui/NavRouterModifier.d.ts +++ b/api/arkui/NavRouterModifier.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2024 Huawei Device Co., Ltd. + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -18,9 +18,6 @@ * @kit ArkUI */ - - - /** * Defines NavRouter Modifier * @@ -29,7 +26,8 @@ * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 -*/ + * @deprecated since 20 + */ export declare class NavRouterModifier extends NavRouterAttribute implements AttributeModifier<NavRouterAttribute> { /** @@ -40,6 +38,7 @@ export declare class NavRouterModifier extends NavRouterAttribute implements Att * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 */ applyNormalAttribute?(instance: NavRouterAttribute): void; } diff --git a/api/arkui/NavigationModifier.d.ts b/api/arkui/NavigationModifier.d.ts old mode 100644 new mode 100755 index 7f5e01184065d2d6cc785af3d46b15f5f13d3683..0b3cdb7d68dafb562ce5e2a3c704267d307704d4 --- a/api/arkui/NavigationModifier.d.ts +++ b/api/arkui/NavigationModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Navigation Modifier + * + * @extends NavigationAttribute + * @implements AttributeModifier<NavigationAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class NavigationModifier extends NavigationAttribute implements AttributeModifier<NavigationAttribute> { /** diff --git a/api/arkui/NavigatorModifier.d.ts b/api/arkui/NavigatorModifier.d.ts index 0c2f0659074f2a3b9a1fd8916a318d3f6663b468..de86d228d5f181a20a16c891aa5df86eaf7329cf 100644 --- a/api/arkui/NavigatorModifier.d.ts +++ b/api/arkui/NavigatorModifier.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2024 Huawei Device Co., Ltd. + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -18,9 +18,6 @@ * @kit ArkUI */ - - - /** * Defines Navigator Modifier * @@ -29,7 +26,8 @@ * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 -*/ + * @deprecated since 20 + */ export declare class NavigatorModifier extends NavigatorAttribute implements AttributeModifier<NavigatorAttribute> { /** @@ -40,6 +38,7 @@ export declare class NavigatorModifier extends NavigatorAttribute implements Att * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 */ applyNormalAttribute?(instance: NavigatorAttribute): void; } diff --git a/api/arkui/NodeContent.d.ets b/api/arkui/NodeContent.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..3ceb1b25d29d5bee3fed7ca319b98549342de490 --- /dev/null +++ b/api/arkui/NodeContent.d.ets @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { Content } from './Content'; +import { FrameNode } from './FrameNode'; + +/** + * NodeContent is the entity encapsulation of the node content. + * + * @extends Content + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class NodeContent extends Content{ + /** + * constructor + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(); + + /** + * Add FrameNode to NodeContent based on parameters. + * + * @param { FrameNode } node - Newly added FrameNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + addFrameNode(node: FrameNode): void; + + /** + * Delete FrameNode based on the NodeContent parameter. + * + * @param { FrameNode } node - FrameNode deleted. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + removeFrameNode(node: FrameNode): void; +} diff --git a/api/arkui/NodeController.d.ets b/api/arkui/NodeController.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..28f306f5c4a07822060b8a7775f3cc1a3260d4a2 --- /dev/null +++ b/api/arkui/NodeController.d.ets @@ -0,0 +1,198 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +import { UIContext } from '../@ohos.arkui.UIContext'; +import { FrameNode } from './FrameNode'; +import { Size } from './Graphics'; +import { TouchEvent } from './component/common' +/** + * Defined the controller of node container.Provides lifecycle callbacks for the associated NodeContainer + * and methods to control the child node of the NodeContainer. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Defined the controller of node container.Provides lifecycle callbacks for the associated NodeContainer + * and methods to control the child node of the NodeContainer. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare abstract class NodeController { + /** + * MakeNode Method. Used to build a node tree and return the a FrameNode or null, and + * attach the return result to the associated NodeContainer. + * Executed when the associated NodeContainer is created or the rebuild function is called. + * + * @param { UIContext } uiContext - uiContext used to makeNode + * @returns { FrameNode | null } - Returns a FrameNode or null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * MakeNode Method. Used to build a node tree and return the a FrameNode or null, and + * attach the return result to the associated NodeContainer. + * Executed when the associated NodeContainer is created or the rebuild function is called. + * + * @param { UIContext } uiContext - uiContext used to makeNode + * @returns { FrameNode | null } - Returns a FrameNode or null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + abstract makeNode(uiContext: UIContext): FrameNode | null; + + /** + * AboutToResize Method. Executed when the associated NodeContainer performs the measure method. + * + * @param { Size } size - size used to resize + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * AboutToResize Method. Executed when the associated NodeContainer performs the measure method. + * + * @param { Size } size - size used to resize + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + aboutToResize?:(size: Size)=>void; + + /** + * AboutToAppear Method. Executed when the associated NodeContainer is aboutToAppear. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * AboutToAppear Method. Executed when the associated NodeContainer is aboutToAppear. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + aboutToAppear?:()=> void; + + /** + * AboutToDisappear Method. Executed when the associated NodeContainer is aboutToDisappear. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * AboutToDisappear Method. Executed when the associated NodeContainer is aboutToDisappear. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + aboutToDisappear?:()=> void; + + /** + * Rebuild Method. Used to invoke the makeNode method. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Rebuild Method. Used to re invoke the makeNode method. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + rebuild(): void; + + /** + * OnTouchEvent Method. Executed when associated NodeContainer is touched. + * + * @param { TouchEvent } event - The TouchEvent when associated NodeContainer is touched. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * OnTouchEvent Method. Executed when associated NodeContainer is touched. + * + * @param { TouchEvent } event - The TouchEvent when associated NodeContainer is touched. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + onTouchEvent?:(event: TouchEvent) => void; + + /** + * OnAttach Method. Executed when the associated NodeContainer is attached to the main tree. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + onAttach?:()=> void; + + /** + * OnDetach Method. Executed when the associated NodeContainer is detached from the main tree. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + onDetach?:()=> void; + + /** + * OnBind Method. Executed when the NodeController is bound to a NodeContainer. + * + * @param { number } containerId - the uniqueId of the NodeContainer. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + onBind?:(containerId: number)=> void; + + /** + * OnUnbind Method. Executed when the NodeController is unbind with the NodeContainer. + * + * @param { number } containerId - the uniqueId of the NodeContainer. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 14 + */ + onUnbind?:(containerId: number)=> void; +} diff --git a/api/arkui/NodeController.d.ts b/api/arkui/NodeController.d.ts index b2e6f94752748720e6cbf9626ec2627b8ade6cbb..a1c3a8f0911e986cda281c9d34991e43e4a47717 100644 --- a/api/arkui/NodeController.d.ts +++ b/api/arkui/NodeController.d.ts @@ -195,9 +195,9 @@ export abstract class NodeController { * @since 18 */ onWillUnbind?(containerId: number): void; - + /** - * OnBind Method. Executed when the NodeController is bound to a NodeContainer. + * OnBind Method. Executed after the NodeController is bound to a NodeContainer. * * @param { number } containerId - the uniqueId of the NodeContainer. * @syscap SystemCapability.ArkUI.ArkUI.Full @@ -208,7 +208,7 @@ export abstract class NodeController { onBind?(containerId: number): void; /** - * OnUnbind Method. Executed when the NodeController is unbind with the NodeContainer. + * OnUnbind Method. Executed after the NodeController is unbind with the NodeContainer. * * @param { number } containerId - the uniqueId of the NodeContainer. * @syscap SystemCapability.ArkUI.ArkUI.Full diff --git a/api/arkui/PanelModifier.d.ts b/api/arkui/PanelModifier.d.ts index 6224f78e8e8da05359f9652bf05e45bda1b76abc..0d004c2c39c7a80b4c569c6d2a133ba828f6048c 100644 --- a/api/arkui/PanelModifier.d.ts +++ b/api/arkui/PanelModifier.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2024 Huawei Device Co., Ltd. + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -18,9 +18,6 @@ * @kit ArkUI */ - - - /** * Defines Panel Modifier * @@ -29,7 +26,8 @@ * @syscap SystemCapability.ArkUI.ArkUI.Full * @atomicservice * @since 12 -*/ + * @deprecated since 20 + */ export declare class PanelModifier extends PanelAttribute implements AttributeModifier<PanelAttribute> { /** @@ -40,6 +38,7 @@ export declare class PanelModifier extends PanelAttribute implements AttributeMo * @crossplatform * @atomicservice * @since 12 + * @deprecated since 20 */ applyNormalAttribute?(instance: PanelAttribute): void; } diff --git a/api/arkui/PathModifier.d.ts b/api/arkui/PathModifier.d.ts old mode 100644 new mode 100755 index 177d9e29444c7abaa266d3947a3f7172d94bd16a..6b6b64d9ff9b536e49d2485f441438a40cc04982 --- a/api/arkui/PathModifier.d.ts +++ b/api/arkui/PathModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Path Modifier + * + * @extends PathAttribute + * @implements AttributeModifier<PathAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class PathModifier extends PathAttribute implements AttributeModifier<PathAttribute> { /** diff --git a/api/arkui/PatternLockModifier.d.ts b/api/arkui/PatternLockModifier.d.ts old mode 100644 new mode 100755 index 3fabf2f7081a047b5e81dcd1befebac4bf5d259f..fb9cbd2e69f83df7470306df3440984268508604 --- a/api/arkui/PatternLockModifier.d.ts +++ b/api/arkui/PatternLockModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines PatternLock Modifier + * + * @extends PatternLockAttribute + * @implements AttributeModifier<PatternLockAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class PatternLockModifier extends PatternLockAttribute implements AttributeModifier<PatternLockAttribute> { /** diff --git a/api/arkui/PolygonModifier.d.ts b/api/arkui/PolygonModifier.d.ts old mode 100644 new mode 100755 index 6fc40e4c35d4956237a984037d1eed61e2000d98..13037d4e09e5b566d847e7e18f9ff6d2fac7cf48 --- a/api/arkui/PolygonModifier.d.ts +++ b/api/arkui/PolygonModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Polygon Modifier + * + * @extends PolygonAttribute + * @implements AttributeModifier<PolygonAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class PolygonModifier extends PolygonAttribute implements AttributeModifier<PolygonAttribute> { /** diff --git a/api/arkui/PolylineModifier.d.ts b/api/arkui/PolylineModifier.d.ts old mode 100644 new mode 100755 index 8aebd301cc6aaf5acf924607154e41a473c4b6b3..420c9bba36e98dc6206979caac172984073781a0 --- a/api/arkui/PolylineModifier.d.ts +++ b/api/arkui/PolylineModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Polyline Modifier + * + * @extends PolylineAttribute + * @implements AttributeModifier<PolylineAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class PolylineModifier extends PolylineAttribute implements AttributeModifier<PolylineAttribute> { /** diff --git a/api/arkui/ProgressModifier.d.ts b/api/arkui/ProgressModifier.d.ts old mode 100644 new mode 100755 index 7992f0c5a88022419c50c5ed9b110fa7d546f3cd..55c9ad0ac0ab427d771f5837cf0eb65a98fd2e23 --- a/api/arkui/ProgressModifier.d.ts +++ b/api/arkui/ProgressModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Progress Modifier + * + * @extends ProgressAttribute + * @implements AttributeModifier<ProgressAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ProgressModifier extends ProgressAttribute implements AttributeModifier<ProgressAttribute> { /** diff --git a/api/arkui/RadioModifier.d.ts b/api/arkui/RadioModifier.d.ts old mode 100644 new mode 100755 index 5f98239fae66594e3a8b7fb259b179f74ff885f6..4003105598ba02258f6b72dfac00c883f1507082 --- a/api/arkui/RadioModifier.d.ts +++ b/api/arkui/RadioModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Radio Modifier + * + * @extends RadioAttribute + * @implements AttributeModifier<RadioAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class RadioModifier extends RadioAttribute implements AttributeModifier<RadioAttribute> { /** diff --git a/api/arkui/RatingModifier.d.ts b/api/arkui/RatingModifier.d.ts old mode 100644 new mode 100755 index 32b157e6ebc2a7a72fad1059581cb95a1bd2fa1c..4aebab96e589ebf2a8c72406d6bdbe9494f9163d --- a/api/arkui/RatingModifier.d.ts +++ b/api/arkui/RatingModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Rating Modifier + * + * @extends RatingAttribute + * @implements AttributeModifier<RatingAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class RatingModifier extends RatingAttribute implements AttributeModifier<RatingAttribute> { /** diff --git a/api/arkui/RectModifier.d.ts b/api/arkui/RectModifier.d.ts old mode 100644 new mode 100755 index 568a8e8d07c33d99d5f9f2f91933f8ee0f4e34f9..9800462d552ac5b6f501a0fa5707289de88c1cc6 --- a/api/arkui/RectModifier.d.ts +++ b/api/arkui/RectModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Rect Modifier + * + * @extends RectAttribute + * @implements AttributeModifier<RectAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class RectModifier extends RectAttribute implements AttributeModifier<RectAttribute> { /** diff --git a/api/arkui/RenderNode.d.ets b/api/arkui/RenderNode.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..9b614383a344a944d3a1f67195f2733d9e930efd --- /dev/null +++ b/api/arkui/RenderNode.d.ets @@ -0,0 +1,1084 @@ + +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ +import { DrawContext, Size, Offset, Position, Pivot, Scale, Translation, Matrix4, Rotation, Frame, BorderRadiuses, ShapeMask, ShapeClip, Edges, LengthMetricsUnit } from './Graphics'; +import { BorderStyle } from './component/enums' +/** + * Defines RenderNode. Contains node tree operations and render property operations on node. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Defines RenderNode. Contains node tree operations and render property operations on node. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class RenderNode { + /** + * Constructor. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Constructor. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(); + + /** + * Add child to the end of the RenderNode's children. + * + * @param { RenderNode } node - The node will be added. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Add child to the end of the RenderNode's children. + * + * @param { RenderNode } node - The node will be added. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + appendChild(node: RenderNode): void; + + /** + * Add child to the current RenderNode. + * + * @param { RenderNode } child - The node will be added. + * @param { RenderNode | null } sibling - The new node is added after this node. When sibling is null, insert node as the first children of the node. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Add child to the current RenderNode. + * + * @param { RenderNode } child - The node will be added. + * @param { RenderNode | null } sibling - The new node is added after this node. When sibling is null, insert node as the first children of the node. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + insertChildAfter(child: RenderNode, sibling: RenderNode | null): void; + + /** + * Remove child from the current RenderNode. + * + * @param { RenderNode } node - The node will be removed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Remove child from the current RenderNode. + * + * @param { RenderNode } node - The node will be removed. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + removeChild(node: RenderNode): void; + + /** + * Clear children of the current RenderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Clear children of the current RenderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + clearChildren(): void; + + /** + * Get a child of the current RenderNode by index. + * + * @param { number } index - The index of the desired node in the children of RenderNode. + * @returns { RenderNode | null } - Returns a RenderNode. When the required node does not exist, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get a child of the current RenderNode by index. + * + * @param { number } index - The index of the desired node in the children of RenderNode. + * @returns { RenderNode | null } - Returns a RenderNode. When the required node does not exist, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getChild(index: number): RenderNode | null; + + /** + * Get the first child of the current RenderNode. + * + * @returns { RenderNode | null } - Returns a RenderNode, which is first child of the current RenderNode. + * If current RenderNode does not have child node, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get the first child of the current RenderNode. + * + * @returns { RenderNode | null } - Returns a RenderNode, which is first child of the current RenderNode. + * If current RenderNode does not have child node, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getFirstChild(): RenderNode | null; + + /** + * Get the next sibling node of the current RenderNode. + * + * @returns { RenderNode | null } - Returns a RenderNode. If current RenderNode does not have next sibling node, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get the next sibling node of the current RenderNode. + * + * @returns { RenderNode | null } - Returns a RenderNode. If current RenderNode does not have next sibling node, returns null. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getNextSibling(): RenderNode | null; + + /** + * Get the previous sibling node of the current RenderNode. If current RenderNode does not have previous sibling node, returns null. + * + * @returns { RenderNode | null } - Returns a RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get the previous sibling node of the current RenderNode. + * + * @returns { RenderNode | null } - Returns a RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + getPreviousSibling(): RenderNode | null; + + /** + * Set the background color of the RenderNode. + * + * @param { number } color - The background color. Colors are defined as ARGB format represented by number. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set the background color of the RenderNode. + * + * @param { number } color - The background color. Colors are defined as ARGB format represented by number. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set backgroundColor(color: number); + + /** + * Get the background color of the RenderNode. + * + * @returns { number } - Returns a background color. Colors are defined as ARGB format represented by number. + * @default 0X00000000 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get the background color of the RenderNode. + * + * @returns { number } - Returns a background color. Colors are defined as ARGB format represented by number. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get backgroundColor(): number; + + /** + * Set whether the RenderNode clip to frame. + * + * @param { boolean } useClip - Whether the RenderNode clip to frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set whether the RenderNode clip to frame. + * + * @param { boolean } useClip - Whether the RenderNode clip to frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set clipToFrame(useClip: boolean); + + /** + * Get whether the RenderNode clip to frame. + * + * @returns { boolean } - Returns whether the RenderNode clip to frame. + * @default true + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get whether the RenderNode clip to frame. + * + * @returns { boolean } - Returns whether the RenderNode clip to frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get clipToFrame(): boolean; + + /** + * Set opacity of the RenderNode. + * + * @param { number } value - The opacity of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set opacity of the RenderNode. + * + * @param { number } value - The opacity of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set opacity(value: number); + + /** + * Get opacity of the RenderNode. + * + * @returns { number } Returns the opacity of the RenderNode. + * @default 1 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get opacity of the RenderNode. + * + * @returns { number } Returns the opacity of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get opacity(): number; + + /** + * Set frame size of the RenderNode. + * + * @param { Size } size - The size of the RenderNode frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set frame size of the RenderNode. + * + * @param { Size } size - The size of the RenderNode frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set size(size: Size); + + /** + * Get frame size of the RenderNode. + * + * @returns { Size } The size of the RenderNode frame. + * @default Size { width: 0, height: 0 } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get frame size of the RenderNode. + * + * @returns { Size } The size of the RenderNode frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get size(): Size; + + /** + * Set frame position of the RenderNode. + * + * @param { Position } position - The position of the RenderNode frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set frame position of the RenderNode. + * + * @param { Position } position - The position of the RenderNode frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set position(position: Position); + + /** + * Get frame position of the RenderNode. + * + * @returns { Position } - The position of the RenderNode frame. + * @default Position { x: 0, y: 0 } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get frame position of the RenderNode. + * + * @returns { Position } - The position of the RenderNode frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get position(): Position; + + /** + * Set frame info of the RenderNode. + * + * @param { Frame } frame - The frame info of the RenderNode frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set frame info of the RenderNode. + * + * @param { Frame } frame - The frame info of the RenderNode frame. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set frame(frame: Frame); + + /** + * Get frame info of the RenderNode. + * + * @returns { Frame } - Returns frame info of the RenderNode. + * @default Frame { x: 0, y: 0, width: 0, height: 0 } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get frame info of the RenderNode. + * + * @returns { Frame } - Returns frame info of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get frame(): Frame; + + /** + * Set pivot of the RenderNode. + * + * @param { Pivot } pivot - The pivot of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set pivot of the RenderNode. + * + * @param { Pivot } pivot - The pivot of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set pivot(pivot: Pivot); + + /** + * Get pivot vector of the RenderNode. + * + * @returns { Pivot } - Returns pivot vector of the RenderNode. + * @default Pivot { x: 0.5, y: 0.5 } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get pivot vector of the RenderNode. + * + * @returns { Pivot } - Returns pivot vector of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get pivot(): Pivot; + + /** + * Set scale of the RenderNode. + * + * @param { Scale } scale - The scale of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set scale of the RenderNode. + * + * @param { Scale } scale - The scale of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set scale(scale: Scale); + + /** + * Get scale vector of the RenderNode. + * + * @returns { Scale } - Returns scale vector of the RenderNode. + * @default Scale { x: 1, y: 1 } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get scale vector of the RenderNode. + * + * @returns { Scale } - Returns scale vector of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get scale(): Scale; + + /** + * Set translation of the RenderNode. + * + * @param { Translation } translation - the translate vector of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set translation of the RenderNode. + * + * @param { Translation } translation - the translate vector of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set translation(translation: Translation); + + /** + * Get translation vector of the RenderNode. + * + * @returns { Translation } - Returns translation vector of the RenderNode. + * @default Translation { x: 0, y: 0 } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get translation vector of the RenderNode. + * + * @returns { Translation } - Returns translation vector of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get translation(): Translation; + + /** + * Set rotation vector of the RenderNode. + * + * @param { Rotation } rotation - The rotation vector of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set rotation vector of the RenderNode. + * + * @param { Rotation } rotation - The rotation vector of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set rotation(rotation: Rotation); + + /** + * Get rotation vector of the RenderNode. + * + * @returns { Rotation } - Returns rotation vector of the RenderNode. + * @default Rotation { x: 0, y: 0, z: 0 } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get rotation vector of the RenderNode. + * + * @returns { Rotation } - Returns rotation vector of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get rotation(): Rotation; + + /** + * Set transform info of the RenderNode. + * + * @param { Matrix4 } transform - the transform info of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set transform info of the RenderNode. + * + * @param { Matrix4 } transform - the transform info of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set transform(transform: Matrix4); + + /** + * Get transform info of the RenderNode. + * + * @returns {Matrix4 } - Returns transform info of the RenderNode. + * @default Matrix4 [ 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1 ] + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get transform info of the RenderNode. + * + * @returns {Matrix4 } - Returns transform info of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get transform(): Matrix4; + + /** + * Set shadow color of the RenderNode. + * + * @param { number } color - the shadow color of the RenderNode. Colors are defined as ARGB format represented by number. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set shadow color of the RenderNode. + * + * @param { number } color - the shadow color of the RenderNode. Colors are defined as ARGB format represented by number. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set shadowColor(color: number); + + /** + * Get shadow color of the RenderNode. + * + * @returns { number } - Returns the shadow color of the RenderNode. Colors are defined as ARGB format represented by number. + * @default 0X00000000 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get shadow color of the RenderNode. + * + * @returns { number } - Returns the shadow color of the RenderNode. Colors are defined as ARGB format represented by number. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get shadowColor(): number; + + /** + * Set shadow offset of the RenderNode. + * + * @param { Offset } offset - the shadow offset of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set shadow offset of the RenderNode. + * + * @param { Offset } offset - the shadow offset of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set shadowOffset(offset: Offset); + + /** + * Get shadow offset of the RenderNode. + * + * @returns { Offset } - Returns the shadow offset of the RenderNode. + * @default Offset { x: 0, y: 0 } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get shadow offset of the RenderNode. + * + * @returns { Offset } - Returns the shadow offset of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get shadowOffset(): Offset; + + /** + * Set label of the RenderNode. + * + * @param { string } label - the label of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set label(label: string); + + /** + * Get label of the RenderNode. + * + * @returns { string } - Returns the label of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get label(): string; + + /** + * Set shadow alpha of the RenderNode. + * + * @param { number } alpha - the shadow alpha of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set shadow alpha of the RenderNode. + * + * @param { number } alpha - the shadow alpha of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set shadowAlpha(alpha: number); + + /** + * Get shadow alpha of the RenderNode. + * + * @returns { number } - Returns the shadow alpha of the RenderNode. + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get shadow alpha of the RenderNode. + * + * @returns { number } - Returns the shadow alpha of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get shadowAlpha(): number; + + /** + * Set shadow elevation of the RenderNode. + * + * @param { number } elevation - the shadow elevation of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set shadow elevation of the RenderNode. + * + * @param { number } elevation - the shadow elevation of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set shadowElevation(elevation: number); + + /** + * Get shadow elevation of the RenderNode. + * + * @returns { number } - Returns the shadow elevation of the RenderNode. + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get shadow elevation of the RenderNode. + * + * @returns { number } - Returns the shadow elevation of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get shadowElevation(): number; + + /** + * Set shadow radius of the RenderNode. + * + * @param { number } radius - the shadow radius of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Set shadow radius of the RenderNode. + * + * @param { number } radius - the shadow radius of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set shadowRadius(radius: number); + + /** + * Get shadow radius of the RenderNode. + * + * @returns { number } - Returns the shadow radius of the RenderNode. + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Get shadow radius of the RenderNode. + * + * @returns { number } - Returns the shadow radius of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get shadowRadius(): number; + + /** + * Set border style of the RenderNode. + * + * @param { Edges<BorderStyle> } style - the border style of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set borderStyle(style: Edges<BorderStyle>); + + /** + * Get border style of the RenderNode. + * + * @returns { Edges<BorderStyle> } - Returns the border style of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get borderStyle(): Edges<BorderStyle>; + + /** + * Set border width of the RenderNode. + * + * @param { Edges<number> } width - the border width of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set borderWidth(width: Edges<number>); + + /** + * Get border width of the RenderNode. + * + * @returns { Edges<number> } - Returns the border width of the RenderNode. + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get borderWidth(): Edges<number>; + + /** + * Set border color of the RenderNode. + * + * @param { Edges<number> } color - the border color of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set borderColor(color: Edges<number>); + + /** + * Get border color of the RenderNode. + * + * @returns { Edges<number> } - Returns the border color of the RenderNode. + * @default 0XFF000000 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get borderColor(): Edges<number>; + + /** + * Set border radius of the RenderNode. + * + * @param { BorderRadiuses } radius - the border radius of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set borderRadius(radius: BorderRadiuses); + + /** + * Get border radius of the RenderNode. + * + * @returns { BorderRadiuses } - Returns the border radius of the RenderNode. + * @default 0 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get borderRadius(): BorderRadiuses; + + /** + * Set shape mask of the RenderNode. + * + * @param { ShapeMask } shapeMask - the shape mask of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set shapeMask(shapeMask: ShapeMask); + + /** + * Get shape mask of the RenderNode. + * + * @returns { ShapeMask } - Returns the shape mask of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get shapeMask(): ShapeMask; + + /** + * Set shape clip of the RenderNode. + * + * @param { ShapeClip } shapeClip - the shape clip of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set shapeClip(shapeClip: ShapeClip); + + /** + * Get shape clip of the RenderNode. + * + * @returns { ShapeClip } - Returns the shape clip of the RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.clip + * @crossplatform + * @atomicservice + * @since 12 + */ + get shapeClip(): ShapeClip; + + /** + * Mark whether to preferentially draw the node and its children. + * + * @param { boolean } isNodeGroup - The parameter indicates whether to preferentially draw the node and its children. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set markNodeGroup(isNodeGroup: boolean); + + /** + * Get whether to preferentially draw the node and its children. + * + * @returns { boolean } - Return whether to preferentially draw the node and its children. + * @default false + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get markNodeGroup(): boolean; + + /** + * Draw Method. Executed when the associated RenderNode is onDraw. + * + * @param { DrawContext } context - The DrawContext will be used when executed draw method. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Draw Method. Executed when the associated RenderNode is onDraw. + * + * @param { DrawContext } context - The DrawContext will be used when executed draw method. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + draw(context: DrawContext): void; + + /** + * Invalidate the RenderNode, which will cause a re-render of the RenderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * Invalidate the RenderNode, which will cause a re-render of the RenderNode. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + invalidate(): void; + + /** + * Dispose the RenderNode immediately. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + dispose(): void; + + /** + * Set the length metrics unit of RenderNode. + * + * @param { LengthMetricsUnit } unit - The length metrics unit of RenderNode. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + set lengthMetricsUnit(unit: LengthMetricsUnit); + + /** + * Get the length metrics unit of RenderNode. + * + * @returns { LengthMetricsUnit } - Return the length metrics unit of RenderNode. + * @default LengthMetricsUnit.DEFAULT + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + get lengthMetricsUnit(): LengthMetricsUnit; +} diff --git a/api/arkui/RenderNode.d.ts b/api/arkui/RenderNode.d.ts index cbe2b2ac6f5dafc5271871db8166e3b117859bed..b4571b3548afe2028f832b80e8f368f1c8b08e8a 100644 --- a/api/arkui/RenderNode.d.ts +++ b/api/arkui/RenderNode.d.ts @@ -1080,4 +1080,15 @@ export class RenderNode { * @since 12 */ get lengthMetricsUnit(): LengthMetricsUnit; + + /** + * Get if the node is disposed. + * + * @returns { boolean } - Returns true if the node is disposed, false otherwise. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + isDisposed(): boolean; } diff --git a/api/arkui/RichEditorModifier.d.ts b/api/arkui/RichEditorModifier.d.ts old mode 100644 new mode 100755 index a2a0c13625b9c797c58042f4b26118a0789163ab..99e1a0239c3ee3ace79e279795d75d40b87a0740 --- a/api/arkui/RichEditorModifier.d.ts +++ b/api/arkui/RichEditorModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines RichEditor Modifier + * + * @extends RichEditorAttribute + * @implements AttributeModifier<RichEditorAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class RichEditorModifier extends RichEditorAttribute implements AttributeModifier<RichEditorAttribute> { /** diff --git a/api/arkui/RowModifier.d.ts b/api/arkui/RowModifier.d.ts old mode 100644 new mode 100755 index 5152741f039341b3d1a6bc7fc013e8f7aa317fc2..21941ec2174013f416a91471a418e4dc812222b4 --- a/api/arkui/RowModifier.d.ts +++ b/api/arkui/RowModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Row Modifier + * + * @extends RowAttribute + * @implements AttributeModifier<RowAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class RowModifier extends RowAttribute implements AttributeModifier<RowAttribute> { /** diff --git a/api/arkui/RowSplitModifier.d.ts b/api/arkui/RowSplitModifier.d.ts old mode 100644 new mode 100755 index 7c5e20477b4df8b4d6aae8ea1cb7926cb9cca10a..0ab1fb7ed0ef7421a78818934980881b4906baa6 --- a/api/arkui/RowSplitModifier.d.ts +++ b/api/arkui/RowSplitModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines RowSplit Modifier + * + * @extends RowSplitAttribute + * @implements AttributeModifier<RowSplitAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class RowSplitModifier extends RowSplitAttribute implements AttributeModifier<RowSplitAttribute> { /** diff --git a/api/arkui/ScrollModifier.d.ts b/api/arkui/ScrollModifier.d.ts old mode 100644 new mode 100755 index 6e54f4eeeb366709ae06ab3c9b94fd44bc8a54da..318aa1d82c91af560c9c2f1fe8b47b418a0ffe05 --- a/api/arkui/ScrollModifier.d.ts +++ b/api/arkui/ScrollModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Scroll Modifier + * + * @extends ScrollAttribute + * @implements AttributeModifier<ScrollAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ScrollModifier extends ScrollAttribute implements AttributeModifier<ScrollAttribute> { /** diff --git a/api/arkui/SearchModifier.d.ts b/api/arkui/SearchModifier.d.ts old mode 100644 new mode 100755 index 24ff804994ed7844606e14a31fa0be87a884c194..f59c61a776c68a38c842a40b94254d5ffd88b918 --- a/api/arkui/SearchModifier.d.ts +++ b/api/arkui/SearchModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Search Modifier + * + * @extends SearchAttribute + * @implements AttributeModifier<SearchAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class SearchModifier extends SearchAttribute implements AttributeModifier<SearchAttribute> { /** diff --git a/api/arkui/SelectModifier.d.ts b/api/arkui/SelectModifier.d.ts old mode 100644 new mode 100755 index 3937731216666785308a302631ccd93d70737d0c..bc04367e760b11d52c23c81340c63bb42f4a96ff --- a/api/arkui/SelectModifier.d.ts +++ b/api/arkui/SelectModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Select Modifier + * + * @extends SelectAttribute + * @implements AttributeModifier<SelectAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class SelectModifier extends SelectAttribute implements AttributeModifier<SelectAttribute> { /** diff --git a/api/arkui/ShapeModifier.d.ts b/api/arkui/ShapeModifier.d.ts old mode 100644 new mode 100755 index 113540824ab352c302677417a5fdb3499921ee96..57d35e89fc24f64a5217fae676bb55538b385ecc --- a/api/arkui/ShapeModifier.d.ts +++ b/api/arkui/ShapeModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Shape Modifier + * + * @extends ShapeAttribute + * @implements AttributeModifier<ShapeAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ShapeModifier extends ShapeAttribute implements AttributeModifier<ShapeAttribute> { /** diff --git a/api/arkui/SideBarContainerModifier.d.ts b/api/arkui/SideBarContainerModifier.d.ts old mode 100644 new mode 100755 index b2b8ba380126b0b7fb573497254d59d9bfe7cf4c..0c0508d7af5aa43f7ad450a8e8e451e3916be152 --- a/api/arkui/SideBarContainerModifier.d.ts +++ b/api/arkui/SideBarContainerModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines SideBarContainer Modifier + * + * @extends SideBarContainerAttribute + * @implements AttributeModifier<SideBarContainerAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class SideBarContainerModifier extends SideBarContainerAttribute implements AttributeModifier<SideBarContainerAttribute> { /** diff --git a/api/arkui/SliderModifier.d.ts b/api/arkui/SliderModifier.d.ts old mode 100644 new mode 100755 index d910929d00dde6309d6a6bf879f68faff20f62be..55b18652c3c22f4735c6704f19bac7e3b32c6e41 --- a/api/arkui/SliderModifier.d.ts +++ b/api/arkui/SliderModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Slider Modifier + * + * @extends SliderAttribute + * @implements AttributeModifier<SliderAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class SliderModifier extends SliderAttribute implements AttributeModifier<SliderAttribute> { /** diff --git a/api/arkui/SpanModifier.d.ts b/api/arkui/SpanModifier.d.ts old mode 100644 new mode 100755 index 7c7de5b5d4e6813f8fa1db775a84422da2736c84..a1122e993dbb7d9f76ba9ba6b5c9de85464747d3 --- a/api/arkui/SpanModifier.d.ts +++ b/api/arkui/SpanModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Span Modifier + * + * @extends SpanAttribute + * @implements AttributeModifier<SpanAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class SpanModifier extends SpanAttribute implements AttributeModifier<SpanAttribute> { /** diff --git a/api/arkui/StackModifier.d.ts b/api/arkui/StackModifier.d.ts old mode 100644 new mode 100755 index c948d7e46433278752bd0c44fd1991e9ab8d938d..184f311aaac609049ed95d18b676f755375bc097 --- a/api/arkui/StackModifier.d.ts +++ b/api/arkui/StackModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Stack Modifier + * + * @extends StackAttribute + * @implements AttributeModifier<StackAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class StackModifier extends StackAttribute implements AttributeModifier<StackAttribute> { /** diff --git a/api/arkui/StepperItemModifier.d.ts b/api/arkui/StepperItemModifier.d.ts old mode 100644 new mode 100755 index b7794ca2191227caa39927417ffeb745bc6952bd..52cf35547b5878e28beebc138b32763603338a39 --- a/api/arkui/StepperItemModifier.d.ts +++ b/api/arkui/StepperItemModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines StepperItem Modifier + * + * @extends StepperItemAttribute + * @implements AttributeModifier<StepperItemAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class StepperItemModifier extends StepperItemAttribute implements AttributeModifier<StepperItemAttribute> { /** diff --git a/api/arkui/StepperModifier.d.ts b/api/arkui/StepperModifier.d.ts new file mode 100644 index 0000000000000000000000000000000000000000..4189216ea4fce320e9e3f76e9c4f349cf4091550 --- /dev/null +++ b/api/arkui/StepperModifier.d.ts @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ +/** + * Defines Stepper Modifier + * + * @extends StepperAttribute + * @implements AttributeModifier<StepperAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 20 +*/ +export declare class StepperModifier extends StepperAttribute implements AttributeModifier<StepperAttribute> { + + /** + * Defines the normal update attribute function. + * + * @param { StepperAttribute } instance + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + applyNormalAttribute?(instance: StepperAttribute): void; +} + \ No newline at end of file diff --git a/api/arkui/SwiperModifier.d.ts b/api/arkui/SwiperModifier.d.ts old mode 100644 new mode 100755 index c80324f7055dee9ddf81cdc6ce6f3fc2f98c2551..5119e5e82a2e35ecd08020681925052c8b9f707b --- a/api/arkui/SwiperModifier.d.ts +++ b/api/arkui/SwiperModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Swiper Modifier + * + * @extends SwiperAttribute + * @implements AttributeModifier<SwiperAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class SwiperModifier extends SwiperAttribute implements AttributeModifier<SwiperAttribute> { /** diff --git a/api/arkui/SymbolGlyphModifier.d.ets b/api/arkui/SymbolGlyphModifier.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..a43e8a1d13297fc6ee19d90794c5b9e5d9f4e187 --- /dev/null +++ b/api/arkui/SymbolGlyphModifier.d.ets @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ +import { SymbolGlyphAttribute } from './component/symbolglyph' +import { AttributeModifier } from './component/common' +import { Resource } from '../global/resource' +/** + * Defines SymbolGlyph Modifier + * + * @extends SymbolGlyphAttribute + * @implements AttributeModifier + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 +*/ +export declare interface SymbolGlyphModifier extends SymbolGlyphAttribute, AttributeModifier<SymbolGlyphAttribute> { + // /** + // * constructor + // * + // * @param { Resource } src + // * @syscap SystemCapability.ArkUI.ArkUI.Full + // * @crossplatform + // * @atomicservice + // * @since 12 + // */ + // constructor(src?: Resource); + + /** + * Defines the normal update attribute function. + * + * @param { SymbolGlyphAttribute } instance + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + applyNormalAttribute: undefined | ((instance: SymbolGlyphAttribute) => void); + applyPressedAttribute: undefined | ((instance: SymbolGlyphAttribute) => void); + applyFocusedAttribute: undefined | ((instance: SymbolGlyphAttribute) => void); + applyDisabledAttribute: undefined | ((instance: SymbolGlyphAttribute) => void); + applySelectedAttribute: undefined | ((instance: SymbolGlyphAttribute) => void); + } \ No newline at end of file diff --git a/api/arkui/SymbolGlyphModifier.d.ts b/api/arkui/SymbolGlyphModifier.d.ts index 798b979c52183bb5cf509c2a02be20dfc4799efe..0bab078e07f180605c499b0b32f6affc1224eae1 100644 --- a/api/arkui/SymbolGlyphModifier.d.ts +++ b/api/arkui/SymbolGlyphModifier.d.ts @@ -27,6 +27,16 @@ * @atomicservice * @since 12 */ +/** + * Defines SymbolGlyph Modifier + * + * @extends SymbolGlyphAttribute + * @implements AttributeModifier<SymbolGlyphAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class SymbolGlyphModifier extends SymbolGlyphAttribute implements AttributeModifier<SymbolGlyphAttribute> { /** * constructor @@ -36,6 +46,15 @@ export declare class SymbolGlyphModifier extends SymbolGlyphAttribute implements * @atomicservice * @since 12 */ + /** + * constructor + * + * @param { Resource } src + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ constructor(src?: Resource); /** @@ -46,5 +65,14 @@ export declare class SymbolGlyphModifier extends SymbolGlyphAttribute implements * @atomicservice * @since 12 */ + /** + * Defines the normal update attribute function. + * + * @param { SymbolGlyphAttribute } instance + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ applyNormalAttribute?(instance: SymbolGlyphAttribute): void; } \ No newline at end of file diff --git a/api/arkui/SymbolSpanModifier.d.ts b/api/arkui/SymbolSpanModifier.d.ts index e743f6e745b678aedc2643e3da3e345077d15539..2a2edc1a57a657607c9d8d1219d0d1008852a0e9 100644 --- a/api/arkui/SymbolSpanModifier.d.ts +++ b/api/arkui/SymbolSpanModifier.d.ts @@ -25,6 +25,16 @@ * @atomicservice * @since 12 */ +/** + * Defines SymbolSpan Modifier. Provided for use by the SymbolSpan component + * + * @extends SymbolSpanAttribute + * @implements AttributeModifier<SymbolSpanAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class SymbolSpanModifier extends SymbolSpanAttribute implements AttributeModifier<SymbolSpanAttribute> { /** * constructor @@ -34,6 +44,15 @@ export declare class SymbolSpanModifier extends SymbolSpanAttribute implements A * @atomicservice * @since 12 */ + /** + * constructor + * + * @param { Resource } src + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ constructor(src?: Resource); /** * Defines the normal update attribute function. @@ -43,5 +62,14 @@ export declare class SymbolSpanModifier extends SymbolSpanAttribute implements A * @atomicservice * @since 12 */ + /** + * Defines the normal update attribute function. + * + * @param { SymbolSpanAttribute } attribute + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ applyNormalAttribute?(attribute: SymbolSpanAttribute): void; } diff --git a/api/arkui/TabsModifier.d.ts b/api/arkui/TabsModifier.d.ts old mode 100644 new mode 100755 index 8726a84b263532e21e313eb00683b1ee1ab5b825..ffbc4296b1f7c5decc1a1a4db8b102c3f33b78ed --- a/api/arkui/TabsModifier.d.ts +++ b/api/arkui/TabsModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Tabs Modifier + * + * @extends TabsAttribute + * @implements AttributeModifier<TabsAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class TabsModifier extends TabsAttribute implements AttributeModifier<TabsAttribute> { /** diff --git a/api/arkui/TextAreaModifier.d.ts b/api/arkui/TextAreaModifier.d.ts old mode 100644 new mode 100755 index a2b76c25a28e2260c122ae72d2b1bdcea94fed6a..12be381602ce4a16ff73034553359261a5995635 --- a/api/arkui/TextAreaModifier.d.ts +++ b/api/arkui/TextAreaModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines TextArea Modifier + * + * @extends TextAreaAttribute + * @implements AttributeModifier<TextAreaAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class TextAreaModifier extends TextAreaAttribute implements AttributeModifier<TextAreaAttribute> { /** diff --git a/api/arkui/TextClockModifier.d.ts b/api/arkui/TextClockModifier.d.ts old mode 100644 new mode 100755 index b31e96ae8483bbe771028a2059680062f7faadef..567b903e8545d5ebf4475eac5232cbe4da60a52c --- a/api/arkui/TextClockModifier.d.ts +++ b/api/arkui/TextClockModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines TextClock Modifier + * + * @extends TextClockAttribute + * @implements AttributeModifier<TextClockAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class TextClockModifier extends TextClockAttribute implements AttributeModifier<TextClockAttribute> { /** diff --git a/api/arkui/TextInputModifier.d.ts b/api/arkui/TextInputModifier.d.ts old mode 100644 new mode 100755 index 7d283c28bf7b2cfdec086d37192059c8449d12e0..c00bbb790776ae076cd6ed6c1ec2579533c59f7f --- a/api/arkui/TextInputModifier.d.ts +++ b/api/arkui/TextInputModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines TextInput Modifier + * + * @extends TextInputAttribute + * @implements AttributeModifier<TextInputAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class TextInputModifier extends TextInputAttribute implements AttributeModifier<TextInputAttribute> { /** diff --git a/api/arkui/TextModifier.d.ets b/api/arkui/TextModifier.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..3342bb5bba917f0297838be991b68352f1085042 --- /dev/null +++ b/api/arkui/TextModifier.d.ets @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + + + +import { TextAttribute } from './component/text' +import { AttributeModifier }from './component/common' +/** + * Defines Text Modifier + * + * @extends TextAttribute + * @implements AttributeModifier + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @atomicservice + * @since 12 +*/ +export declare interface TextModifier extends TextAttribute, AttributeModifier<TextAttribute> { + + /** + * Defines the normal update attribute function. + * + * @param { TextAttribute } instance + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + applyNormalAttribute: undefined | ((instance: TextAttribute) => void); + applyPressedAttribute: undefined | ((instance: TextAttribute) => void); + applyFocusedAttribute: undefined | ((instance: TextAttribute) => void); + applyDisabledAttribute: undefined | ((instance: TextAttribute) => void); + applySelectedAttribute: undefined | ((instance: TextAttribute) => void); +} diff --git a/api/arkui/TextModifier.d.ts b/api/arkui/TextModifier.d.ts old mode 100644 new mode 100755 index d92e5743966f51199767a8cbd7f34956f6249786..a9a89bbaf0bc12611f1358ed1694f7f9c6dd2359 --- a/api/arkui/TextModifier.d.ts +++ b/api/arkui/TextModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Text Modifier + * + * @extends TextAttribute + * @implements AttributeModifier<TextAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class TextModifier extends TextAttribute implements AttributeModifier<TextAttribute> { /** diff --git a/api/arkui/TextPickerModifier.d.ts b/api/arkui/TextPickerModifier.d.ts old mode 100644 new mode 100755 index d122321577c4fee4056458ab902e6da441439ebf..79d847a8cb30d5170473a832bebfe1a38aa0c309 --- a/api/arkui/TextPickerModifier.d.ts +++ b/api/arkui/TextPickerModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines TextPicker Modifier + * + * @extends TextPickerAttribute + * @implements AttributeModifier<TextPickerAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class TextPickerModifier extends TextPickerAttribute implements AttributeModifier<TextPickerAttribute> { /** diff --git a/api/arkui/TextTimerModifier.d.ts b/api/arkui/TextTimerModifier.d.ts old mode 100644 new mode 100755 index 16d4db8a7d669638d6da6940ddb4e3f1b72728c6..dc04fec3c46b85874f408700218cb26c62c7ede0 --- a/api/arkui/TextTimerModifier.d.ts +++ b/api/arkui/TextTimerModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines TextTimer Modifier + * + * @extends TextTimerAttribute + * @implements AttributeModifier<TextTimerAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class TextTimerModifier extends TextTimerAttribute implements AttributeModifier<TextTimerAttribute> { /** diff --git a/api/arkui/TimePickerModifier.d.ts b/api/arkui/TimePickerModifier.d.ts old mode 100644 new mode 100755 index 5e6ed764169e3c81896a3766d27ab66b19765d13..01403542df746aefc3df49df29e98840dfda09c3 --- a/api/arkui/TimePickerModifier.d.ts +++ b/api/arkui/TimePickerModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines TimePicker Modifier + * + * @extends TimePickerAttribute + * @implements AttributeModifier<TimePickerAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class TimePickerModifier extends TimePickerAttribute implements AttributeModifier<TimePickerAttribute> { /** diff --git a/api/arkui/ToggleModifier.d.ts b/api/arkui/ToggleModifier.d.ts old mode 100644 new mode 100755 index a8497b9177a8d60f7b7ded783db942528bab3b79..7f4f365a314187f220d7263954b9781abd58c5bd --- a/api/arkui/ToggleModifier.d.ts +++ b/api/arkui/ToggleModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Toggle Modifier + * + * @extends ToggleAttribute + * @implements AttributeModifier<ToggleAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class ToggleModifier extends ToggleAttribute implements AttributeModifier<ToggleAttribute> { /** diff --git a/api/arkui/UserView.d.ets b/api/arkui/UserView.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..1daae0d388748bc97e9d7438ce3153bdb558061a --- /dev/null +++ b/api/arkui/UserView.d.ets @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ +import { __memo_context_type, __memo_id_type, memo } from './stateManagement/runtime'; + +export type UserViewBuilder = (__memo_context: __memo_context_type, __memo_id: __memo_id_type) => void; + +export declare class UserView { + getBuilder(): UserViewBuilder; +} + +export declare class EntryPoint { + @memo entry(): void; +} \ No newline at end of file diff --git a/api/arkui/VideoModifier.d.ts b/api/arkui/VideoModifier.d.ts old mode 100644 new mode 100755 index b93bf6dc36730ffadb28de6aa680346f83d4921b..0f04304bc313c4f267a01743541dde9ebcbe8947 --- a/api/arkui/VideoModifier.d.ts +++ b/api/arkui/VideoModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines Video Modifier + * + * @extends VideoAttribute + * @implements AttributeModifier<VideoAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class VideoModifier extends VideoAttribute implements AttributeModifier<VideoAttribute> { /** diff --git a/api/arkui/WaterFlowModifier.d.ts b/api/arkui/WaterFlowModifier.d.ts old mode 100644 new mode 100755 index 7e5c0ea32a1c0e9d53edb8b0780d3a5071e37a87..f1d76d0d216255e16dc97f67817eecaaa54c61bb --- a/api/arkui/WaterFlowModifier.d.ts +++ b/api/arkui/WaterFlowModifier.d.ts @@ -30,6 +30,16 @@ * @atomicservice * @since 12 */ +/** + * Defines WaterFlow Modifier + * + * @extends WaterFlowAttribute + * @implements AttributeModifier<WaterFlowAttribute> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ export declare class WaterFlowModifier extends WaterFlowAttribute implements AttributeModifier<WaterFlowAttribute> { /** diff --git a/api/arkui/XComponentNode.d.ets b/api/arkui/XComponentNode.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..e07fc6df1ae0c24c9091a0081b3a88359ffa43e1 --- /dev/null +++ b/api/arkui/XComponentNode.d.ets @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + + + +import { UIContext } from '../@ohos.arkui.UIContext'; +import { NodeRenderType, RenderOptions } from './BuilderNode'; +import { FrameNode } from './FrameNode'; +import { XComponentType } from './component/enums' +/** + * Defines XComponent Node. + * + * @extends FrameNode + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + * @deprecated since 12 + */ +export declare class XComponentNode extends FrameNode { + /** + * constructor. + * + * @param { UIContext } uiContext - UIContext used to create the FrameNode + * @param { RenderOptions } options - Render options of the Builder Node + * @param { string } id - XComponent id defined by the application + * @param { XComponentType } type - XComponent type + * @param { string } libraryName - The name of the library to be loaded by XComponent + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + * @deprecated since 12 + */ + constructor(uiContext: UIContext, options: RenderOptions, + id: string, type: XComponentType, libraryName?: string); + + /** + * Called when the XComponent surface has been created. + * + * @param { Object } event - event from native when the library loaded + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + * @deprecated since 12 + */ + onCreate(event?: Object): void; + + /** + * Called when the XComponent surface has been destroyed. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + * @deprecated since 12 + */ + onDestroy(): void; + + /** + * Set the render type of the builderNode. + * + * @param { NodeRenderType } type - render type + * @returns { boolean } - Returns if change the render type successfully. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 11 + * @deprecated since 12 + */ + changeRenderType(type: NodeRenderType): boolean; +} diff --git a/api/arkui/component/alphabetIndexer.d.ets b/api/arkui/component/alphabetIndexer.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..a408481c220ddee2ab74a6b457ae00bbe7382eb3 --- /dev/null +++ b/api/arkui/component/alphabetIndexer.d.ets @@ -0,0 +1,113 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback } from './common' +import { VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, Font, PixelMap } from './units' +import { ComponentContent } from './../ComponentContent' +import { HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey } from './enums' +import { LengthMetrics } from './../Graphics' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' +import { Resource } from './../../../api/global/resource' +import { Callback_Void } from './abilityComponent' +import { FocusBoxStyle, FocusPriority } from './focus' +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' +export enum IndexerAlign { + LEFT = 0, + Left = 0, + RIGHT = 1, + Right = 1, + START = 2, + END = 3 +} +export interface AlphabetIndexerOptions { + arrayValue: Array<string>; + selected: number; +} +export type AlphabetIndexerInterface = (options: AlphabetIndexerOptions) => AlphabetIndexerAttribute; +export type OnAlphabetIndexerSelectCallback = (index: number) => void; +export type OnAlphabetIndexerPopupSelectCallback = (index: number) => void; +export type OnAlphabetIndexerRequestPopupDataCallback = (index: number) => Array<string>; +export type Callback_Number_Void = (index: number) => void; +export interface AlphabetIndexerAttribute extends CommonMethod { + @memo + onSelected(value: ((index: number) => void)): this; + @memo + color(value: ResourceColor): this; + @memo + selectedColor(value: ResourceColor): this; + @memo + popupColor(value: ResourceColor): this; + @memo + selectedBackgroundColor(value: ResourceColor): this; + @memo + popupBackground(value: ResourceColor): this; + @memo + popupSelectedColor(value: ResourceColor): this; + @memo + popupUnselectedColor(value: ResourceColor): this; + @memo + popupItemBackgroundColor(value: ResourceColor): this; + @memo + usingPopup(value: boolean): this; + @memo + selectedFont(value: Font): this; + @memo + popupFont(value: Font): this; + @memo + popupItemFont(value: Font): this; + @memo + itemSize(value: string | number): this; + @memo + font(value: Font): this; + @memo + onSelect(value: OnAlphabetIndexerSelectCallback): this; + @memo + onRequestPopupData(value: OnAlphabetIndexerRequestPopupDataCallback): this; + @memo + onPopupSelect(value: OnAlphabetIndexerPopupSelectCallback): this; + @memo + selected(value: number): this; + @memo + popupPosition(value: Position): this; + @memo + autoCollapse(value: boolean): this; + @memo + popupItemBorderRadius(value: number): this; + @memo + itemBorderRadius(value: number): this; + @memo + popupBackgroundBlurStyle(value: BlurStyle): this; + @memo + popupTitleBackground(value: ResourceColor): this; + @memo + enableHapticFeedback(value: boolean): this; +} +@memo +@ComponentBuilder +export declare function AlphabetIndexer( + options: AlphabetIndexerOptions, + @memo + content_?: () => void, +): AlphabetIndexerAttribute diff --git a/api/arkui/component/blank.d.ets b/api/arkui/component/blank.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..2622489052c2e1b9c3de5731076e413178f19987 --- /dev/null +++ b/api/arkui/component/blank.d.ets @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback } from './common' +import { VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, PixelMap } from './units' +import { ComponentContent } from './../ComponentContent' +import { HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey } from './enums' +import { LengthMetrics } from './../Graphics' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' +import { Resource } from './../../../api/global/resource' + + +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' +export type BlankInterface = (min?: number | string) => BlankAttribute; +export interface BlankAttribute extends CommonMethod { + @memo + color(value: ResourceColor): this; +} +@memo +@ComponentBuilder +export declare function Blank( + min?: number | string | undefined, + @memo + content_?: () => void, +): BlankAttribute diff --git a/api/arkui/component/button.d.ets b/api/arkui/component/button.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..9d0175c66f0526c8834075df3fd714efb7b03c51 --- /dev/null +++ b/api/arkui/component/button.d.ets @@ -0,0 +1,110 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { CommonConfiguration, ContentModifier, CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback } from './common' +import { ResourceStr, Font, VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, AccessibilityOptions, PixelMap } from './units' +import { TextOverflow, TextHeightAdaptivePolicy, HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey, FontWeight, FontStyle } from './enums' +import { Resource } from './../../../api/global/resource' + +export enum ButtonType { + CAPSULE = 0, + Capsule = 0, + CIRCLE = 1, + Circle = 1, + NORMAL = 2, + Normal = 2, + ROUNDED_RECTANGLE = 3 +} +export enum ButtonStyleMode { + NORMAL = 0, + EMPHASIZED = 1, + TEXTUAL = 2 +} +export enum ButtonRole { + NORMAL = 0, + ERROR = 1 +} +export type ButtonTriggerClickCallback = (xPos: number, yPos: number) => void; +export interface ButtonConfiguration extends CommonConfiguration<ButtonConfiguration> { + label: string; + pressed: boolean; + triggerClick: ButtonTriggerClickCallback; +} +export enum ControlSize { + SMALL = 'small', + NORMAL = 'normal' +} +export interface ButtonOptions { + type?: ButtonType; + stateEffect?: boolean; + buttonStyle?: ButtonStyleMode; + controlSize?: ControlSize; + role?: ButtonRole; +} +export interface ButtonInterface { + invoke(): ButtonAttribute; + + +} +export interface LabelStyle { + overflow?: TextOverflow; + maxLines?: number; + minFontSize?: number | ResourceStr; + maxFontSize?: number | ResourceStr; + heightAdaptivePolicy?: TextHeightAdaptivePolicy; + font?: Font; +} +export interface ButtonAttribute extends CommonMethod { + @memo + type(value: ButtonType): this; + @memo + stateEffect(value: boolean): this; + @memo + buttonStyle(value: ButtonStyleMode): this; + @memo + controlSize(value: ControlSize): this; + @memo + role(value: ButtonRole): this; + @memo + fontColor(value: ResourceColor): this; + @memo + fontSize(value: Length): this; + @memo + fontWeight(value: number | FontWeight | string): this; + @memo + fontStyle(value: FontStyle): this; + @memo + fontFamily(value: string | Resource): this; + @memo + contentModifier(value: ContentModifier<ButtonConfiguration>): this; + @memo + labelStyle(value: LabelStyle): this; +} +@memo +@ComponentBuilder +export declare function Button( + label?: ButtonOptions | ResourceStr | undefined, options?: ButtonOptions | undefined, + @memo + content_?: () => void, +): ButtonAttribute diff --git a/api/arkui/component/column.d.ets b/api/arkui/component/column.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..acac4d4c87a8abbdaa7512af42608c2155b602c8 --- /dev/null +++ b/api/arkui/component/column.d.ets @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, PointLightStyle } from './common' +import { VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, PixelMap } from './units' +import { ComponentContent } from './../ComponentContent' +import { HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey, HorizontalAlign, FlexAlign } from './enums' +import { LengthMetrics } from './../Graphics' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' +import { Resource } from './../../../api/global/resource' + + +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' +export interface ColumnOptions { + space?: string | number; +} +export type ColumnInterface = (options?: ColumnOptions) => ColumnAttribute; +export interface ColumnAttribute extends CommonMethod { + @memo + alignItems(value: HorizontalAlign): this; + @memo + justifyContent(value: FlexAlign): this; + @memo + pointLight(value: PointLightStyle): this; + @memo + reverse(value: boolean | undefined): this; +} +@memo +@ComponentBuilder +export declare function Column( + options?: ColumnOptions | undefined, + @memo + content_?: () => void, +): ColumnAttribute diff --git a/api/arkui/component/common.d.ets b/api/arkui/component/common.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..27baaf95b5df20f439c1a0fa4098a9a29b53262f --- /dev/null +++ b/api/arkui/component/common.d.ets @@ -0,0 +1,1617 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { TextDecorationType, TextDecorationStyle, Curve, PlayMode, SharedTransitionEffectType, HorizontalAlign, VerticalAlign, TransitionType, FontWeight, FontStyle, Color, ColoringStrategy, MouseButton, MouseAction, AccessibilityHoverType, TouchType, KeyType, KeySource, BorderStyle, Placement, ArrowPointPosition, ClickEffectLevel, NestedScrollMode, GradientDirection, HitTestMode, Alignment, ImageSize, HoverEffect, Visibility, ItemAlign, Direction, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey, LineCapStyle, LineJoinStyle, PixelRoundCalcPolicy, BarState, EdgeEffect, IlluminatedType } from './enums' +import { ResourceColor, Context, Length, Bias, PixelMap, PointerStyle, Area, Font, BorderRadiuses, EdgeWidths, LocalizedEdgeWidths, SizeOptions, Summary, UniformDataType, UnifiedData, ResourceStr, Dimension, EdgeColors, LocalizedEdgeColors, EdgeStyles, Position, LocalizedBorderRadiuses, Margin, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, LocalizedMargin, BorderOptions, OutlineOptions, EdgeOutlineStyles, EdgeOutlineWidths, OutlineRadiuses, Edges, LocalizedEdges, LocalizedPosition, AccessibilityOptions, VisualEffect, Filter, Blender, EdgeWidth, DirectionalEdgesT, NavDestinationInfo, NavigationInfo, RouterPageInfo } from './units' +import { Resource } from './../../../api/global/resource' + +import { DrawContext, LengthMetrics } from './../Graphics' +import { ButtonType, ButtonStyleMode, ButtonRole } from './button' +import { BaseGestureEvent, GestureRecognizer, GestureJudgeResult, GestureInfo, GestureType, GestureMask, GestureHandler, GesturePriority, Gesture, GestureGroup } from './gesture' +import { IntentionCode } from './../../../api/@ohos.multimodalInput.intentionCode' +import { UIContext } from './../../../api/@ohos.arkui.UIContext' +import { SymbolGlyphModifier } from './../../../api/arkui/SymbolGlyphModifier' +import { ImageModifier } from './../../../api/arkui/ImageModifier' +import { ComponentContent } from './../ComponentContent' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' + +import { Theme } from './../../../api/@ohos.arkui.theme' +import { Callback_Number_Number_Void } from './grid' +import { ScrollOnWillScrollCallback, ScrollOnScrollCallback } from './scroll' +import { ScrollState } from './list' + +@Retention({policy: "SOURCE"}) +export declare @interface Builder {}; +@Retention({policy: "SOURCE"}) +export declare @interface BuilderParam {}; +export interface ComponentOptions { + freezeWhenInactive: boolean; +} +export interface InputCounterOptions { + thresholdPercentage?: number; + highlightBorder?: boolean; +} +export interface TextDecorationOptions { + type: TextDecorationType; + color?: ResourceColor; + style?: TextDecorationStyle; +} +export interface ProvideOptions { + allowOverride?: string; +} +export interface AnimatableArithmetic<T> { + plus(rhs: AnimatableArithmetic<T>): AnimatableArithmetic<T> + subtract(rhs: AnimatableArithmetic<T>): AnimatableArithmetic<T> + multiply(scale: number): AnimatableArithmetic<T> + equals(rhs: AnimatableArithmetic<T>): boolean +} +export declare function getContext(arg0: Object): Context +export declare function postCardAction(arg0: Object, arg1: Object): void +export interface Configuration { + colorMode: string; + fontScale: number; +} +export interface Rectangle { + x?: Length; + y?: Length; + width?: Length; + height?: Length; +} +export interface ExpectedFrameRateRange { + min: number; + max: number; + expected: number; +} +declare function dollar_r(arg0: string, arg1: Array<object>): Resource +declare function dollar_rawfile(arg0: string): Resource +export enum FinishCallbackType { + REMOVED = 0, + LOGICALLY = 1 +} +export enum TouchTestStrategy { + DEFAULT = 0, + FORWARD_COMPETITION = 1, + FORWARD = 2 +} +export interface AnimateParam { + duration?: number; + tempo?: number; + curve?: Curve | string | ICurve; + delay?: number; + iterations?: number; + playMode?: PlayMode; + onFinish?: (() => void); + finishCallbackType?: FinishCallbackType; + expectedFrameRateRange?: ExpectedFrameRateRange; +} +export interface ICurve { + interpolate(fraction: number): number +} +export interface MotionPathOptions { + path: string; + from?: number; + to?: number; + rotatable?: boolean; +} +export interface sharedTransitionOptions { + duration?: number; + curve?: Curve | string | ICurve; + delay?: number; + motionPath?: MotionPathOptions; + zIndex?: number; + type?: SharedTransitionEffectType; +} +export interface GeometryTransitionOptions { + follow?: boolean; + hierarchyStrategy?: TransitionHierarchyStrategy; +} +export enum TransitionHierarchyStrategy { + NONE = 0, + ADAPTIVE = 1 +} +export interface TranslateOptions { + x?: number | string; + y?: number | string; + z?: number | string; +} +export interface ScaleOptions { + x?: number; + y?: number; + z?: number; + centerX?: number | string; + centerY?: number | string; +} +export interface Literal_String_anchor_HorizontalAlign_align { + anchor: string; + align: HorizontalAlign; +} +export interface Literal_String_anchor_VerticalAlign_align { + anchor: string; + align: VerticalAlign; +} +export interface AlignRuleOption { + left?: Literal_String_anchor_HorizontalAlign_align; + right?: Literal_String_anchor_HorizontalAlign_align; + middle?: Literal_String_anchor_HorizontalAlign_align; + top?: Literal_String_anchor_VerticalAlign_align; + bottom?: Literal_String_anchor_VerticalAlign_align; + center?: Literal_String_anchor_VerticalAlign_align; + bias?: Bias; +} +export interface LocalizedHorizontalAlignParam { + anchor: string; + align: HorizontalAlign; +} +export interface LocalizedVerticalAlignParam { + anchor: string; + align: VerticalAlign; +} +export interface LocalizedAlignRuleOptions { + start?: LocalizedHorizontalAlignParam; + end?: LocalizedHorizontalAlignParam; + middle?: LocalizedHorizontalAlignParam; + top?: LocalizedVerticalAlignParam; + bottom?: LocalizedVerticalAlignParam; + center?: LocalizedVerticalAlignParam; + bias?: Bias; +} +export enum ChainStyle { + SPREAD = 0, + SPREAD_INSIDE = 1, + PACKED = 2 +} +export interface RotateOptions { + x?: number; + y?: number; + z?: number; + centerX?: number | string; + centerY?: number | string; + centerZ?: number; + perspective?: number; + angle: number | string; +} +export interface TransitionOptions { + type?: TransitionType; + opacity?: number; + translate?: TranslateOptions; + scale?: ScaleOptions; + rotate?: RotateOptions; +} +export enum TransitionEdge { + TOP = 0, + BOTTOM = 1, + START = 2, + END = 3 +} +export interface Literal_TransitionEffect_appear_disappear { + appear: TransitionEffect; + disappear: TransitionEffect; +} +export interface TransitionEffects { + identity: undefined; + opacity: number; + slideSwitch: undefined; + move: TransitionEdge; + translate: TranslateOptions; + rotate: RotateOptions; + scale: ScaleOptions; + asymmetric: Literal_TransitionEffect_appear_disappear; +} +export interface DrawModifier { + drawBehind(drawContext: DrawContext): void + drawContent(drawContext: DrawContext): void + drawFront(drawContext: DrawContext): void + invalidate(): void +} +export declare class TransitionEffect { + static readonly IDENTITY: TransitionEffect; + static readonly OPACITY: TransitionEffect; + static readonly SLIDE: TransitionEffect; + static readonly SLIDE_SWITCH: TransitionEffect; + static translate(options: TranslateOptions): TransitionEffect; + static rotate(options: RotateOptions): TransitionEffect; + static scale(options: ScaleOptions): TransitionEffect; + static opacity(alpha: number): TransitionEffect; + static move(edge: TransitionEdge): TransitionEffect; + static asymmetric(appear: TransitionEffect, disappear: TransitionEffect): TransitionEffect; + animation(value: AnimateParam): TransitionEffect; + combine(transitionEffect: TransitionEffect): TransitionEffect; +} +export interface PreviewParams { + title?: string; + width?: number; + height?: number; + locale?: string; + colorMode?: string; + deviceType?: string; + dpi?: number; + orientation?: string; + roundScreen?: boolean; +} +export interface ItemDragInfo { + x: number; + y: number; +} +export enum EffectType { + DEFAULT = 0, + WINDOW_EFFECT = 1 +} +export enum PreDragStatus { + ACTION_DETECTING_STATUS = 0, + READY_TO_TRIGGER_DRAG_ACTION = 1, + PREVIEW_LIFT_STARTED = 2, + PREVIEW_LIFT_FINISHED = 3, + PREVIEW_LANDING_STARTED = 4, + PREVIEW_LANDING_FINISHED = 5, + ACTION_CANCELED_BEFORE_DRAG = 6 +} +export interface DragItemInfo { + pixelMap?: PixelMap; + builder?: CustomBuilder; + extraInfo?: string; +} +export declare function animateTo(arg0: AnimateParam, arg1: (() => void)): void +export declare function animateToImmediately(arg0: AnimateParam, arg1: (() => void)): void +export declare function vp2px(arg0: number): number +export declare function px2vp(arg0: number): number +export declare function fp2px(arg0: number): number +export declare function px2fp(arg0: number): number +export declare function lpx2px(arg0: number): number +export declare function px2lpx(arg0: number): number +export declare namespace focusControl { + function requestFocus(arg0: string): boolean +} +export declare namespace cursorControl { + function setCursor(arg0: PointerStyle): void +} +export declare namespace cursorControl { + function restoreDefault(): void +} +export interface EventTarget { + area: Area; +} +export enum SourceType { + UNKNOWN = 0, + Unknown = 0, + MOUSE = 1, + Mouse = 1, + TOUCH_SCREEN = 2, + TouchScreen = 2 +} +export enum SourceTool { + UNKNOWN = 0, + Unknown = 0, + FINGER = 1, + Finger = 1, + PEN = 2, + Pen = 2, + MOUSE = 3, + TOUCHPAD = 4, + JOYSTICK = 5 +} +export enum RepeatMode { + REPEAT = 0, + Repeat = 0, + STRETCH = 1, + Stretch = 1, + ROUND = 2, + Round = 2, + SPACE = 3, + Space = 3 +} +export enum BlurStyle { + THIN = 0, + Thin = 0, + REGULAR = 1, + Regular = 1, + THICK = 2, + Thick = 2, + BACKGROUND_THIN = 3, + BACKGROUND_REGULAR = 4, + BACKGROUND_THICK = 5, + BACKGROUND_ULTRA_THICK = 6, + NONE = 7, + COMPONENT_ULTRA_THIN = 8, + COMPONENT_THIN = 9, + COMPONENT_REGULAR = 10, + COMPONENT_THICK = 11, + COMPONENT_ULTRA_THICK = 12 +} +export enum BlurStyleActivePolicy { + FOLLOWS_WINDOW_ACTIVE_STATE = 0, + ALWAYS_ACTIVE = 1, + ALWAYS_INACTIVE = 2 +} +export enum ThemeColorMode { + SYSTEM = 0, + LIGHT = 1, + DARK = 2 +} +export enum AdaptiveColor { + DEFAULT = 0, + AVERAGE = 1 +} +export enum ModalTransition { + DEFAULT = 0, + NONE = 1, + ALPHA = 2 +} +export interface BackgroundBlurStyleOptions extends BlurStyleOptions { + policy?: BlurStyleActivePolicy; + inactiveColor?: ResourceColor; +} +export interface ForegroundBlurStyleOptions extends BlurStyleOptions { +} +export type Tuple_Number_Number = [ + number, + number +] +export interface BlurOptions { + grayscale: [ number, number ]; +} +export interface BlurStyleOptions { + colorMode?: ThemeColorMode; + adaptiveColor?: AdaptiveColor; + scale?: number; + blurOptions?: BlurOptions; +} +export interface BackgroundEffectOptions { + radius: number; + saturation?: number; + brightness?: number; + color?: ResourceColor; + adaptiveColor?: AdaptiveColor; + blurOptions?: BlurOptions; + policy?: BlurStyleActivePolicy; + inactiveColor?: ResourceColor; +} +export interface ForegroundEffectOptions { + radius: number; +} +export interface PickerTextStyle { + color?: ResourceColor; + font?: Font; +} +export interface PickerDialogButtonStyle { + type?: ButtonType; + style?: ButtonStyleMode; + role?: ButtonRole; + fontSize?: Length; + fontColor?: ResourceColor; + fontWeight?: FontWeight | number | string; + fontStyle?: FontStyle; + fontFamily?: Resource | string; + backgroundColor?: ResourceColor; + borderRadius?: Length | BorderRadiuses; + primary?: boolean; +} +export enum ShadowType { + COLOR = 0, + BLUR = 1 +} +export interface ShadowOptions { + radius: number | Resource; + type?: ShadowType; + color?: Color | string | Resource | ColoringStrategy; + offsetX?: number | Resource; + offsetY?: number | Resource; + fill?: boolean; +} +export enum ShadowStyle { + OUTER_DEFAULT_XS = 0, + OUTER_DEFAULT_SM = 1, + OUTER_DEFAULT_MD = 2, + OUTER_DEFAULT_LG = 3, + OUTER_FLOATING_SM = 4, + OUTER_FLOATING_MD = 5 +} +export interface MultiShadowOptions { + radius?: number | Resource; + offsetX?: number | Resource; + offsetY?: number | Resource; +} +export enum SafeAreaType { + SYSTEM = 0, + CUTOUT = 1, + KEYBOARD = 2 +} +export enum SafeAreaEdge { + TOP = 0, + BOTTOM = 1, + START = 2, + END = 3 +} +export enum LayoutSafeAreaType { + SYSTEM = 0 +} +export enum LayoutSafeAreaEdge { + TOP = 0, + BOTTOM = 1 +} +export enum SheetSize { + MEDIUM = 0, + LARGE = 1, + FIT_CONTENT = 2 +} +export interface BaseEvent { + target: EventTarget; + timestamp: number; + source: SourceType; + axisHorizontal?: number; + axisVertical?: number; + pressure: number; + tiltX: number; + tiltY: number; + sourceTool: SourceTool; + deviceId?: number; + getModifierKeyState(keys: Array<string>): boolean +} +export interface BorderImageOption { + slice?: Length | EdgeWidths | LocalizedEdgeWidths; + repeat?: RepeatMode; + source?: string | Resource | LinearGradient_common; + width?: Length | EdgeWidths | LocalizedEdgeWidths; + outset?: Length | EdgeWidths | LocalizedEdgeWidths; + fill?: boolean; +} +export interface ClickEvent extends BaseEvent { + displayX: number; + displayY: number; + windowX: number; + windowY: number; + screenX: number; + screenY: number; + x: number; + y: number; + preventDefault: (() => void); +} +export interface HoverEvent extends BaseEvent { + stopPropagation: (() => void); +} +export interface MouseEvent extends BaseEvent { + button: MouseButton; + action: MouseAction; + displayX: number; + displayY: number; + windowX: number; + windowY: number; + screenX: number; + screenY: number; + x: number; + y: number; + stopPropagation: (() => void); +} +export interface AccessibilityHoverEvent extends BaseEvent { + type: AccessibilityHoverType; + x: number; + y: number; + displayX: number; + displayY: number; + windowX: number; + windowY: number; +} +export interface TouchObject { + type: TouchType; + id: number; + displayX: number; + displayY: number; + windowX: number; + windowY: number; + screenX: number; + screenY: number; + x: number; + y: number; +} +export interface HistoricalPoint { + touchObject: TouchObject; + size: number; + force: number; + timestamp: number; +} +export interface TouchEvent extends BaseEvent { + type: TouchType; + touches: Array<TouchObject>; + changedTouches: Array<TouchObject>; + stopPropagation: (() => void); + preventDefault: (() => void); + getHistoricalPoints(): Array<HistoricalPoint> +} +export type SizeChangeCallback = (oldValue: SizeOptions, newValue: SizeOptions) => void; +export type GestureRecognizerJudgeBeginCallback = (event: BaseGestureEvent, current: GestureRecognizer, + recognizers: Array<GestureRecognizer>) => GestureJudgeResult; +export type ShouldBuiltInRecognizerParallelWithCallback = (current: GestureRecognizer, + others: Array<GestureRecognizer>) => GestureRecognizer; +export type TransitionFinishCallback = (transitionIn: boolean) => void; +export interface PixelMapMock { + release(): void +} +export enum DragBehavior { + COPY = 0, + MOVE = 1 +} +export enum DragResult { + DRAG_SUCCESSFUL = 0, + DRAG_FAILED = 1, + DRAG_CANCELED = 2, + DROP_ENABLED = 3, + DROP_DISABLED = 4 +} +export enum BlendMode { + NONE = 0, + CLEAR = 1, + SRC = 2, + DST = 3, + SRC_OVER = 4, + DST_OVER = 5, + SRC_IN = 6, + DST_IN = 7, + SRC_OUT = 8, + DST_OUT = 9, + SRC_ATOP = 10, + DST_ATOP = 11, + XOR = 12, + PLUS = 13, + MODULATE = 14, + SCREEN = 15, + OVERLAY = 16, + DARKEN = 17, + LIGHTEN = 18, + COLOR_DODGE = 19, + COLOR_BURN = 20, + HARD_LIGHT = 21, + SOFT_LIGHT = 22, + DIFFERENCE = 23, + EXCLUSION = 24, + MULTIPLY = 25, + HUE = 26, + SATURATION = 27, + COLOR = 28, + LUMINOSITY = 29 +} +export enum BlendApplyType { + FAST = 0, + OFFSCREEN = 1 +} +export interface DragEvent { + dragBehavior: DragBehavior; + useCustomDropAnimation: boolean; + getDisplayX(): number + getDisplayY(): number + getWindowX(): number + getWindowY(): number + getX(): number + getY(): number + setData(unifiedData: UnifiedData): void + getData(): UnifiedData + getSummary(): Summary + setResult(dragResult: DragResult): void + getResult(): DragResult + getPreviewRect(): Rectangle + getVelocityX(): number + getVelocityY(): number + getVelocity(): number + getModifierKeyState(keys: Array<string>): boolean +} +export interface KeyEvent { + type: KeyType; + keyCode: number; + keyText: string; + keySource: KeySource; + deviceId: number; + metaKey: number; + timestamp: number; + stopPropagation: (() => void); + intentionCode: IntentionCode; + unicode?: number; + getModifierKeyState(keys: Array<string>): boolean +} +export interface BindOptions { + backgroundColor?: ResourceColor; + onAppear?: (() => void); + onDisappear?: (() => void); + onWillAppear?: (() => void); + onWillDisappear?: (() => void); +} +export interface DismissContentCoverAction { + dismiss: (() => void); + reason: DismissReason; +} +export type Callback_DismissContentCoverAction_Void = (parameter: DismissContentCoverAction) => void; +export interface ContentCoverOptions extends BindOptions { + modalTransition?: ModalTransition; + onWillDismiss?: ((parameter: DismissContentCoverAction) => void); + transition?: TransitionEffect; +} +export interface SheetTitleOptions { + title: ResourceStr; + subtitle?: ResourceStr; +} +export enum SheetType { + BOTTOM = 0, + CENTER = 1, + POPUP = 2 +} +export enum SheetMode { + OVERLAY = 0, + EMBEDDED = 1 +} +export enum ScrollSizeMode { + FOLLOW_DETENT = 0, + CONTINUOUS = 1 +} +export enum SheetKeyboardAvoidMode { + NONE = 0, + TRANSLATE_AND_RESIZE = 1, + RESIZE_ONLY = 2, + TRANSLATE_AND_SCROLL = 3 +} +export interface SheetDismiss { + dismiss: (() => void); +} +export interface DismissSheetAction { + dismiss: (() => void); + reason: DismissReason; +} +export interface SpringBackAction { + springBack: (() => void); +} +export type Type_SheetOptions_detents = [ + SheetSize | Length, + SheetSize | Length | undefined, + SheetSize | Length | undefined +] +export type Callback_SheetDismiss_Void = (sheetDismiss: SheetDismiss) => void; +export type Callback_DismissSheetAction_Void = (parameter: DismissSheetAction) => void; +export type Callback_SpringBackAction_Void = (parameter: SpringBackAction) => void; +export type Callback_SheetType_Void = (parameter: SheetType) => void; +export interface SheetOptions extends BindOptions { + height?: SheetSize | Length; + dragBar?: boolean; + maskColor?: ResourceColor; + detents?: [ SheetSize | Length, SheetSize | Length | undefined, SheetSize | Length | undefined ]; + blurStyle?: BlurStyle; + showClose?: boolean | Resource; + preferType?: SheetType; + title?: SheetTitleOptions | CustomBuilder; + shouldDismiss?: ((sheetDismiss: SheetDismiss) => void); + onWillDismiss?: ((parameter: DismissSheetAction) => void); + onWillSpringBackWhenDismiss?: ((parameter: SpringBackAction) => void); + enableOutsideInteractive?: boolean; + width?: Dimension; + borderWidth?: Dimension | EdgeWidths | LocalizedEdgeWidths; + borderColor?: ResourceColor | EdgeColors | LocalizedEdgeColors; + borderStyle?: BorderStyle | EdgeStyles; + shadow?: ShadowOptions | ShadowStyle; + onHeightDidChange?: ((index: number) => void); + mode?: SheetMode; + scrollSizeMode?: ScrollSizeMode; + onDetentsDidChange?: ((index: number) => void); + onWidthDidChange?: ((index: number) => void); + onTypeDidChange?: ((parameter: SheetType) => void); + uiContext?: UIContext; + keyboardAvoidMode?: SheetKeyboardAvoidMode; +} +export interface StateStyles { + normal?: object; + pressed?: object; + disabled?: object; + focused?: object; + clicked?: object; + selected?: Object; +} +export interface PopupMessageOptions { + textColor?: ResourceColor; + font?: Font; +} +export enum DismissReason { + PRESS_BACK = 0, + TOUCH_OUTSIDE = 1, + CLOSE_BUTTON = 2, + SLIDE_DOWN = 3 +} +export interface DismissPopupAction { + dismiss: (() => void); + reason: DismissReason; +} +export interface Literal_String_value_Callback_Void_action { + value: string; + action: (() => void); +} +export interface Literal_Boolean_isVisible { + isVisible: boolean; +} +export type Callback_Literal_Boolean_isVisible_Void = (event: Literal_Boolean_isVisible) => void; +export interface Literal_ResourceColor_color { + color: ResourceColor; +} +export type Callback_DismissPopupAction_Void = (parameter: DismissPopupAction) => void; +export interface PopupOptions { + message: string; + placementOnTop?: boolean; + placement?: Placement; + primaryButton?: Literal_String_value_Callback_Void_action; + secondaryButton?: Literal_String_value_Callback_Void_action; + onStateChange?: ((event: Literal_Boolean_isVisible) => void); + arrowOffset?: Length; + showInSubWindow?: boolean; + mask?: boolean | Literal_ResourceColor_color; + messageOptions?: PopupMessageOptions; + targetSpace?: Length; + enableArrow?: boolean; + offset?: Position; + popupColor?: Color | string | Resource | number; + autoCancel?: boolean; + width?: Dimension; + arrowPointPosition?: ArrowPointPosition; + arrowWidth?: Dimension; + arrowHeight?: Dimension; + radius?: Dimension; + shadow?: ShadowOptions | ShadowStyle; + backgroundBlurStyle?: BlurStyle; + transition?: TransitionEffect; + onWillDismiss?: boolean | ((parameter: DismissPopupAction) => void); + enableHoverMode?: boolean; + followTransformOfTarget?: boolean; +} +export interface CustomPopupOptions { + builder: CustomBuilder; + placement?: Placement; + maskColor?: Color | string | Resource | number; + popupColor?: Color | string | Resource | number; + enableArrow?: boolean; + autoCancel?: boolean; + onStateChange?: ((event: Literal_Boolean_isVisible) => void); + arrowOffset?: Length; + showInSubWindow?: boolean; + mask?: boolean | Literal_ResourceColor_color; + targetSpace?: Length; + offset?: Position; + width?: Dimension; + arrowPointPosition?: ArrowPointPosition; + arrowWidth?: Dimension; + arrowHeight?: Dimension; + radius?: Dimension; + shadow?: ShadowOptions | ShadowStyle; + backgroundBlurStyle?: BlurStyle; + focusable?: boolean; + transition?: TransitionEffect; + onWillDismiss?: boolean | ((parameter: DismissPopupAction) => void); + enableHoverMode?: boolean; + followTransformOfTarget?: boolean; +} +export enum MenuPreviewMode { + NONE = 0, + IMAGE = 1 +} +export type AnimationRange<T> = [ + T, + T +] +export interface ContextMenuAnimationOptions { + scale?: [ number, number ]; + transition?: TransitionEffect; + hoverScale?: [ number, number ]; +} +export interface ContextMenuOptions { + offset?: Position; + placement?: Placement; + enableArrow?: boolean; + arrowOffset?: Length; + preview?: MenuPreviewMode | CustomBuilder; + borderRadius?: Length | BorderRadiuses | LocalizedBorderRadiuses; + onAppear?: (() => void); + onDisappear?: (() => void); + aboutToAppear?: (() => void); + aboutToDisappear?: (() => void); + layoutRegionMargin?: Margin; + previewAnimationOptions?: ContextMenuAnimationOptions; + backgroundColor?: ResourceColor; + backgroundBlurStyle?: BlurStyle; + transition?: TransitionEffect; + enableHoverMode?: boolean; +} +export interface MenuOptions extends ContextMenuOptions { + title?: ResourceStr; + showInSubWindow?: boolean; +} +export interface ProgressMask { + updateProgress(value: number): void + updateColor(value: ResourceColor): void + enableBreathingAnimation(value: boolean): void +} +export interface TouchTestInfo { + windowX: number; + windowY: number; + parentX: number; + parentY: number; + x: number; + y: number; + rect: RectResult; + id: string; +} +export interface TouchResult { + strategy: TouchTestStrategy; + id?: string; +} +export interface PixelStretchEffectOptions { + top?: Length; + bottom?: Length; + left?: Length; + right?: Length; +} +export interface ClickEffect { + level: ClickEffectLevel; + scale?: number; +} +export interface FadingEdgeOptions { + fadingEdgeLength?: LengthMetrics; +} +export interface NestedScrollOptions { + scrollForward: NestedScrollMode; + scrollBackward: NestedScrollMode; +} +export interface MenuElement { + value: ResourceStr; + icon?: ResourceStr; + symbolIcon?: SymbolGlyphModifier; + enabled?: boolean; + action: (() => void); +} +export interface AttributeModifier<T> { + // applyNormalAttribute(instance: T): void + // applyPressedAttribute(instance: T): void + // applyFocusedAttribute(instance: T): void + // applyDisabledAttribute(instance: T): void + // applySelectedAttribute(instance: T): void + + applyNormalAttribute: undefined | ((instance: T) => void); + applyPressedAttribute: undefined | ((instance: T) => void); + applyFocusedAttribute: undefined | ((instance: T) => void); + applyDisabledAttribute: undefined | ((instance: T) => void); + applySelectedAttribute: undefined | ((instance: T) => void); +} +export interface ContentModifier<T> { + stub: string; +} +export interface CommonConfiguration<T> { + enabled: boolean; + contentModifier: ContentModifier<T>; +} +export enum OutlineStyle { + SOLID = 0, + DASHED = 1, + DOTTED = 2 +} +export enum DragPreviewMode { + AUTO = 1, + DISABLE_SCALE = 2, + ENABLE_DEFAULT_SHADOW = 3, + ENABLE_DEFAULT_RADIUS = 4 +} +export enum MenuPolicy { + DEFAULT = 0, + HIDE = 1, + SHOW = 2 +} +export interface DragPreviewOptions { + mode?: DragPreviewMode | Array<DragPreviewMode>; + modifier?: ImageModifier; + numberBadge?: boolean | number; +} +export interface DragInteractionOptions { + isMultiSelectionEnabled?: boolean; + defaultAnimationBeforeLifting?: boolean; +} +export interface InvertOptions { + low: number; + high: number; + threshold: number; + thresholdRange: number; +} +export type Optional<T> = T | undefined; +export type Callback_Array_TouchTestInfo_TouchResult = (value: Array<TouchTestInfo>) => TouchResult; +export type Callback_ClickEvent_Void = (event: ClickEvent) => void; +export type Callback_Boolean_HoverEvent_Void = (isHover: boolean, event: HoverEvent) => void; +export type Callback_MouseEvent_Void = (event: MouseEvent) => void; +export type Callback_TouchEvent_Void = (event: TouchEvent) => void; +export type Callback_KeyEvent_Void = (event: KeyEvent) => void; +export type Callback_KeyEvent_Boolean = (parameter: KeyEvent) => boolean; +export type Callback_Area_Area_Void = (oldValue: Area, newValue: Area) => void; +export interface Literal_Number_offset_span { + span: number; + offset: number; +} +export interface Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs { + xs?: number | Literal_Number_offset_span; + sm?: number | Literal_Number_offset_span; + md?: number | Literal_Number_offset_span; + lg?: number | Literal_Number_offset_span; +} +export type Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo = (event: DragEvent, + extraParams?: string) => CustomBuilder | DragItemInfo; +export type Callback_DragEvent_String_Void = (event: DragEvent, extraParams?: string) => void; +export type Callback_PreDragStatus_Void = (parameter: PreDragStatus) => void; +export type Tuple_ResourceColor_Number = [ + ResourceColor, + number +] +export interface Type_CommonMethod_linearGradient_value { + angle?: number | string; + direction?: GradientDirection; + colors: Array<[ ResourceColor, number ]>; + repeating?: boolean; +} +export type Tuple_Length_Length = [ + Length, + Length +] +export interface Type_CommonMethod_sweepGradient_value { + center: [ Length, Length ]; + start?: number | string; + end?: number | string; + rotation?: number | string; + colors: Array<[ ResourceColor, number ]>; + repeating?: boolean; +} +export interface Type_CommonMethod_radialGradient_value { + center: [ Length, Length ]; + radius: number | string; + colors: Array<[ ResourceColor, number ]>; + repeating?: boolean; +} +export type Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult = (gestureInfo: GestureInfo, + event: BaseGestureEvent) => GestureJudgeResult; +export type Callback_TouchEvent_HitTestMode = (parameter: TouchEvent) => HitTestMode; +export interface Literal_Alignment_align { + align?: Alignment; +} +export interface CommonMethod { + @memo + width(value: Length): this; + @memo + height(value: Length): this; + @memo + drawModifier(value: DrawModifier | undefined): this; + @memo + responseRegion(value: Array<Rectangle> | Rectangle): this; + @memo + expandSafeArea(type?: Array<SafeAreaType>, edge?: Array<SafeAreaEdge>): this; + @memo + mouseResponseRegion(value: Array<Rectangle> | Rectangle): this; + @memo + size(value: SizeOptions): this; + @memo + constraintSize(value: ConstraintSizeOptions): this; + @memo + touchable(value: boolean): this; + @memo + hitTestBehavior(value: HitTestMode): this; + @memo + onChildTouchTest(value: ((value: Array<TouchTestInfo>) => TouchResult)): this; + @memo + layoutWeight(value: number | string): this; + @memo + chainWeight(value: ChainWeightOptions): this; + @memo + padding(value: Padding | Length | LocalizedPadding): this; + @memo + safeAreaPadding(value: Padding | LengthMetrics | LocalizedPadding): this; + @memo + margin(value: Margin | Length | LocalizedMargin): this; + @memo + backgroundColor(value: ResourceColor): this; + @memo + backgroundBlurStyle(value: BlurStyle, options?: BackgroundBlurStyleOptions): this; + @memo + pixelRound(value: PixelRoundPolicy): this; + @memo + backgroundImageSize(value: SizeOptions | ImageSize): this; + @memo + backgroundImagePosition(value: Position | Alignment): this; + @memo + backgroundEffect(value: BackgroundEffectOptions): this; + @memo + backgroundImageResizable(value: ResizableOptions): this; + @memo + foregroundEffect(value: ForegroundEffectOptions): this; + @memo + visualEffect(value: VisualEffect): this; + @memo + backgroundFilter(value: Filter): this; + @memo + foregroundFilter(value: Filter): this; + @memo + compositingFilter(value: Filter): this; + @memo + opacity(value: number | Resource): this; + @memo + border(value: BorderOptions): this; + @memo + borderStyle(value: BorderStyle | EdgeStyles): this; + @memo + borderWidth(value: Length | EdgeWidths | LocalizedEdgeWidths): this; + @memo + borderColor(value: ResourceColor | EdgeColors | LocalizedEdgeColors): this; + @memo + borderRadius(value: Length | BorderRadiuses | LocalizedBorderRadiuses): this; + @memo + borderImage(value: BorderImageOption): this; + @memo + outline(value: OutlineOptions): this; + @memo + outlineStyle(value: OutlineStyle | EdgeOutlineStyles): this; + @memo + outlineWidth(value: Dimension | EdgeOutlineWidths): this; + @memo + outlineColor(value: ResourceColor | EdgeColors | LocalizedEdgeColors): this; + @memo + outlineRadius(value: Dimension | OutlineRadiuses): this; + @memo + foregroundColor(value: ResourceColor | ColoringStrategy): this; + @memo + onClick(value: ((event: ClickEvent) => void), distanceThreshold?: number): this; + @memo + onHover(value: ((isHover: boolean,event: HoverEvent) => void)): this; + @memo + onAccessibilityHover(value: AccessibilityCallback): this; + @memo + hoverEffect(value: HoverEffect): this; + @memo + onMouse(value: ((event: MouseEvent) => void)): this; + @memo + onTouch(value: ((event: TouchEvent) => void)): this; + @memo + onKeyEvent(value: ((event: KeyEvent) => void)): this; + @memo + onKeyPreIme(value: ((parameter: KeyEvent) => boolean)): this; + @memo + focusable(value: boolean): this; + @memo + onFocus(value: (() => void)): this; + @memo + onBlur(value: (() => void)): this; + @memo + tabIndex(value: number): this; + @memo + defaultFocus(value: boolean): this; + @memo + groupDefaultFocus(value: boolean): this; + @memo + focusOnTouch(value: boolean): this; + @memo + animation(value: AnimateParam): this; + @memo + transition(value: TransitionOptions | TransitionEffect): this; + @memo + motionBlur(value: MotionBlurOptions): this; + @memo + brightness(value: number): this; + @memo + contrast(value: number): this; + @memo + grayscale(value: number): this; + @memo + colorBlend(value: Color | string | Resource): this; + @memo + saturate(value: number): this; + @memo + sepia(value: number): this; + @memo + invert(value: number | InvertOptions): this; + @memo + hueRotate(value: number | string): this; + @memo + useShadowBatching(value: boolean): this; + @memo + useEffect(value: boolean): this; + @memo + renderGroup(value: boolean): this; + @memo + freeze(value: boolean): this; + @memo + translate(value: TranslateOptions): this; + @memo + scale(value: ScaleOptions): this; + @memo + gridSpan(value: number): this; + @memo + gridOffset(value: number): this; + @memo + rotate(value: RotateOptions): this; + @memo + transform(value: Object): this; + @memo + onAppear(value: (() => void)): this; + @memo + onDisAppear(value: (() => void)): this; + @memo + onAttach(value: (() => void)): this; + @memo + onDetach(value: (() => void)): this; + @memo + onAreaChange(value: ((oldValue: Area,newValue: Area) => void)): this; + @memo + visibility(value: Visibility): this; + @memo + flexGrow(value: number): this; + @memo + flexShrink(value: number): this; + @memo + flexBasis(value: number | string): this; + @memo + alignSelf(value: ItemAlign): this; + @memo + displayPriority(value: number): this; + @memo + zIndex(value: number): this; + @memo + direction(value: Direction): this; + @memo + align(value: Alignment): this; + @memo + position(value: Position | Edges | LocalizedEdges): this; + @memo + markAnchor(value: Position | LocalizedPosition): this; + @memo + offset(value: Position | Edges | LocalizedEdges): this; + @memo + enabled(value: boolean): this; + @memo + useSizeType(value: Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs): this; + @memo + alignRules(value: AlignRuleOption): this; + + @memo + aspectRatio(value: number): this; + @memo + clickEffect(value: ClickEffect | undefined): this; + @memo + onDragStart(value: ((event: DragEvent,extraParams?: string) => CustomBuilder | DragItemInfo)): this; + @memo + onDragEnter(value: ((event: DragEvent,extraParams?: string) => void)): this; + @memo + onDragMove(value: ((event: DragEvent,extraParams?: string) => void)): this; + @memo + onDragLeave(value: ((event: DragEvent,extraParams?: string) => void)): this; + @memo + onDrop(value: ((event: DragEvent,extraParams?: string) => void)): this; + @memo + onDragEnd(value: ((event: DragEvent,extraParams?: string) => void)): this; + @memo + allowDrop(value: Array<UniformDataType> | undefined): this; + @memo + draggable(value: boolean): this; + @memo + dragPreview(value: CustomBuilder | DragItemInfo | string): this; + @memo + onPreDrag(value: ((parameter: PreDragStatus) => void)): this; + @memo + linearGradient(value: Type_CommonMethod_linearGradient_value): this; + @memo + sweepGradient(value: Type_CommonMethod_sweepGradient_value): this; + @memo + radialGradient(value: Type_CommonMethod_radialGradient_value): this; + @memo + motionPath(value: MotionPathOptions): this; + @memo + shadow(value: ShadowOptions | ShadowStyle): this; + @memo + clip(value: boolean | undefined): this; + + @memo + clipShape(value: CircleShape | EllipseShape | PathShape | RectShape): this; + @memo + mask(value: ProgressMask | undefined): this; + + @memo + maskShape(value: CircleShape | EllipseShape | PathShape | RectShape): this; + @memo + key(value: string): this; + @memo + id(value: string): this; + @memo + geometryTransition(value: string): this; + @memo + stateStyles(value: StateStyles): this; + @memo + restoreId(value: number): this; + @memo + sphericalEffect(value: number): this; + @memo + lightUpEffect(value: number): this; + @memo + pixelStretchEffect(value: PixelStretchEffectOptions): this; + @memo + accessibilityGroup(value: boolean, AccessibilityOptions?: AccessibilityOptions): this; + @memo + accessibilityText(value: string | Resource): this; + + @memo + accessibilityTextHint(value: string): this; + @memo + accessibilityDescription(value: string | Resource): this; + + @memo + accessibilityLevel(value: string): this; + @memo + accessibilityVirtualNode(value: CustomBuilder): this; + @memo + accessibilityChecked(value: boolean): this; + @memo + accessibilitySelected(value: boolean): this; + @memo + obscured(value: Array<ObscuredReasons>): this; + @memo + reuseId(value: string): this; + @memo + renderFit(value: RenderFit): this; + @memo + attributeModifier<T>(value: AttributeModifier<T>): this; + @memo + gestureModifier(value: GestureModifier): this; + @memo + backgroundBrightness(value: BackgroundBrightnessOptions): this; + @memo + onGestureJudgeBegin(value: ((gestureInfo: GestureInfo,event: BaseGestureEvent) => GestureJudgeResult)): this; + @memo + onGestureRecognizerJudgeBegin(value: GestureRecognizerJudgeBeginCallback): this; + @memo + shouldBuiltInRecognizerParallelWith(value: ShouldBuiltInRecognizerParallelWithCallback): this; + @memo + monopolizeEvents(value: boolean): this; + @memo + onTouchIntercept(value: ((parameter: TouchEvent) => HitTestMode)): this; + @memo + onSizeChange(value: SizeChangeCallback): this; + @memo + gesture(gesture: GestureType, mask?: GestureMask): this; + @memo + parallelGesture(gesture: GestureType, mask?: GestureMask): this; + @memo + priorityGesture(gesture: GestureType, mask?: GestureMask): this; + @memo + bindContextMenu(content: CustomBuilder, responseType: ResponseType, options?: ContextMenuOptions): this; + @memo + bindContextMenu(isShown: boolean, content: CustomBuilder, options?: ContextMenuOptions): this; + @memo + bindMenu(content: Array<MenuElement> | CustomBuilder, options?: MenuOptions): this; + @memo + bindMenu(isShow: boolean, content: Array<MenuElement> | CustomBuilder, options?: MenuOptions): this; + @memo + bindPopup(show: boolean, popup: PopupOptions | CustomPopupOptions): this; +} +export interface CommonAttribute extends CommonMethod { +} +export type CommonInterface = () => CommonAttribute; +export type CustomBuilder = +/** @memo */ +() => void; +export interface OverlayOptions { + align?: Alignment; + offset?: OverlayOffset; +} +export interface OverlayOffset { + x?: number; + y?: number; +} +export type FractionStop = [ + number, + number +] +export interface CommonShapeMethod extends CommonMethod { + @memo + stroke(value: ResourceColor): this; + @memo + fill(value: ResourceColor): this; + @memo + strokeDashOffset(value: number | string): this; + @memo + strokeLineCap(value: LineCapStyle): this; + @memo + strokeLineJoin(value: LineJoinStyle): this; + @memo + strokeMiterLimit(value: number | string): this; + @memo + strokeOpacity(value: number | string | Resource): this; + @memo + fillOpacity(value: number | string | Resource): this; + @memo + strokeWidth(value: Length): this; + @memo + antiAlias(value: boolean): this; + @memo + strokeDashArray(value: Array<Length>): this; +} +export interface LinearGradient_common { + angle?: number | string; + direction?: GradientDirection; + colors: Array<[ ResourceColor, number ]>; + repeating?: boolean; +} +export interface PixelRoundPolicy { + start?: PixelRoundCalcPolicy; + top?: PixelRoundCalcPolicy; + end?: PixelRoundCalcPolicy; + bottom?: PixelRoundCalcPolicy; +} +export interface LinearGradientBlurOptions { + fractionStops: Array<FractionStop>; + direction: GradientDirection; +} +export interface MotionBlurAnchor { + x: number; + y: number; +} +export interface MotionBlurOptions { + radius: number; + anchor: MotionBlurAnchor; +} +export interface LayoutBorderInfo { + borderWidth: EdgeWidths; + margin: Margin; + padding: Padding; +} +export interface LayoutInfo { + position: Position; + constraint: ConstraintSizeOptions; +} +export interface LayoutChild { + stub: string; +} +export interface GeometryInfo extends SizeResult { + borderWidth: EdgeWidth; + margin: Margin; + padding: Padding; +} +export interface Layoutable { + stub: string; +} +export interface Measurable { + measure(constraint: ConstraintSizeOptions): MeasureResult + getMargin(): DirectionalEdgesT + getPadding(): DirectionalEdgesT + getBorderWidth(): DirectionalEdgesT +} +export interface SizeResult { + width: number; + height: number; +} +export interface MeasureResult extends SizeResult { +} +export interface Literal_Empty { + indexSignature(key: string): object +} +export interface View { + create(value: object): object +} +export interface RectResult { + x: number; + y: number; + width: number; + height: number; +} +export interface CaretOffset { + index: number; + x: number; + y: number; +} +export declare class TextContentControllerBase { + getCaretOffset(): CaretOffset + getTextContentRect(): RectResult + getTextContentLineCount(): number +} +export enum ContentClipMode { + CONTENT_ONLY = 0, + BOUNDARY = 1, + SAFE_AREA = 2 +} +export interface ScrollableCommonMethod extends CommonMethod { + @memo + scrollBar(value: BarState): this; + @memo + scrollBarColor(value: Color | number | string): this; + @memo + scrollBarWidth(value: number | string): this; + @memo + nestedScroll(value: NestedScrollOptions): this; + @memo + enableScrollInteraction(value: boolean): this; + @memo + friction(value: number | Resource): this; + @memo + onScroll(value: ((first: number,last: number) => void)): this; + @memo + onWillScroll(value: ScrollOnWillScrollCallback | undefined): this; + @memo + onDidScroll(value: ScrollOnScrollCallback): this; + @memo + onReachStart(value: (() => void)): this; + @memo + onReachEnd(value: (() => void)): this; + @memo + onScrollStart(value: (() => void)): this; + @memo + onScrollStop(value: (() => void)): this; + @memo + flingSpeedLimit(value: number): this; + @memo + clipContent(value: ContentClipMode | RectShape): this; +} +export interface ScrollResult { + offsetRemain: number; +} +export interface OnWillScrollCallback { + stub: string; +} +export type OnScrollCallback = (scrollOffset: number, scrollState: ScrollState) => void; +export type OnMoveHandler = (from: number, to: number) => void; +export interface DynamicNode { + @memo + onMove(handler: OnMoveHandler | undefined): this +} +export interface EdgeEffectOptions { + alwaysEnabled: boolean; +} +export declare class ChildrenMainSize { + constructor(size: number) + childDefaultSize: number; + splice(start: number, deleteCount?: number, childrenSize?: Array<number>): void + update(index: number, childSize: number): void +} +export interface BackgroundBrightnessOptions { + rate: number; + lightUpDegree: number; +} +export interface PointLightStyle { + lightSource?: LightSource; + illuminated?: IlluminatedType; + bloom?: number; +} +export interface LightSource { + positionX: Dimension; + positionY: Dimension; + positionZ: Dimension; + intensity: number; + color?: ResourceColor; +} +export interface KeyframeAnimateParam { + delay?: number; + iterations?: number; + onFinish?: (() => void); +} +export interface KeyframeState { + duration: number; + curve?: Curve | string | ICurve; + event: (() => void); +} +export type Callback<T,V = void> = (data: T) => V; +export type HoverCallback = (isHover: boolean, event: HoverEvent) => void; +export type AccessibilityCallback = (isHover: boolean, event: AccessibilityHoverEvent) => void; +export interface VisibleAreaEventOptions { + ratios: Array<number>; + expectedUpdateInterval?: number; +} +export type VisibleAreaChangeCallback = (isExpanding: boolean, currentRatio: number) => void; +export interface UICommonEvent { + setOnClick(callback_: ((event: ClickEvent) => void) | undefined): void + setOnTouch(callback_: ((event: TouchEvent) => void) | undefined): void + setOnAppear(callback_: (() => void) | undefined): void + setOnDisappear(callback_: (() => void) | undefined): void + setOnKeyEvent(callback_: ((event: KeyEvent) => void) | undefined): void + setOnFocus(callback_: (() => void) | undefined): void + setOnBlur(callback_: (() => void) | undefined): void + setOnHover(callback_: HoverCallback | undefined): void + setOnMouse(callback_: ((event: MouseEvent) => void) | undefined): void + setOnSizeChange(callback_: SizeChangeCallback | undefined): void + setOnVisibleAreaApproximateChange(options: VisibleAreaEventOptions, + event: VisibleAreaChangeCallback | undefined): void +} +export interface UIGestureEvent { + addGesture<T>(gesture: GestureHandler<T>, priority?: GesturePriority, mask?: GestureMask): void + addParallelGesture<T>(gesture: GestureHandler<T>, mask?: GestureMask): void + removeGestureByTag(tag: string): void + clearGestures(): void +} +export interface GestureModifier { + applyGesture(event: UIGestureEvent): void +} +export interface SelectionOptions { + menuPolicy?: MenuPolicy; +} +export enum KeyboardAvoidMode { + DEFAULT = 0, + NONE = 1 +} +export enum HoverModeAreaType { + TOP_SCREEN = 0, + BOTTOM_SCREEN = 1 +} + +/** + * Defining wrapBuilder function. + * @param { function } builder + * @returns { WrappedBuilder<Args> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Defining wrapBuilder function. + * @param { function } builder + * @returns { WrappedBuilder<Args> } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare function wrapBuilder<Args extends Array<Object>>(builder: (args: Args) => void): WrappedBuilder<Args>; + +/** + * Defines the WrappedBuilder class. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ +/** + * Defines the WrappedBuilder class. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class WrappedBuilder<Args extends Array<Object>> { + /** + * @type { function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * @type { function } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + builder: (args: Args) => void; + + /** + * @param { function } builder + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @since 11 + */ + /** + * @param { function } builder + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + constructor(builder: (args: Args) => void); +} + +export declare function $r(value: string, ...params: Object[]): Resource; +export declare function $rawfile(value: string): Resource; \ No newline at end of file diff --git a/api/arkui/component/customComponent.d.ets b/api/arkui/component/customComponent.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..c91cb57c4ff083ffb6835a159af11a9e73a4b4e4 --- /dev/null +++ b/api/arkui/component/customComponent.d.ets @@ -0,0 +1,77 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from "../stateManagement/runtime"; + +import { UIContext } from './../../../api/@ohos.arkui.UIContext' + + +@Retention({policy: "SOURCE"}) +export declare @interface Component { + freezeWhenInactive: boolean = false; +} + +@Retention({policy: "SOURCE"}) +export declare @interface Entry { + routeName: string = ""; + storage: string = ""; + useSharedStorage: boolean = false; +} + +@Retention({policy: "SOURCE"}) +export declare @interface Reusable {} + +export interface CustomBuild { + @memo + build(): void; +} + +export interface CustomLayout { + +} + +export declare abstract class CustomComponent<T extends CustomComponent<T, T_Options>, T_Options> { + + @memo + @ComponentBuilder + static $_instantiate<S extends CustomComponent<S, S_Options>, S_Options>( + factory: () => S, + initializers?: S_Options, + @memo + content?: () => void, + reuseKey?: string + ): S; + + // Life cycle for custom component + aboutToAppear(): void + aboutToDisappear(): void + onDidBuild(): void + + onPageShow(): void + onPageHide(): void + onBackPress(): boolean + getUIContext(): UIContext + + @memo + build(): void; + + aboutToReuse(): void + aboutToRecycle(): void +} \ No newline at end of file diff --git a/api/arkui/component/enums.d.ets b/api/arkui/component/enums.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..fab9f6f918cd7ee0cf30f1611e90a7d80006fbcc --- /dev/null +++ b/api/arkui/component/enums.d.ets @@ -0,0 +1,718 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +export enum CheckBoxShape { + CIRCLE = 0, + ROUNDED_SQUARE = 1 +} +export enum Color { + WHITE = 0, + White = 0, + BLACK = 1, + Black = 1, + BLUE = 2, + Blue = 2, + BROWN = 3, + Brown = 3, + GRAY = 4, + Gray = 4, + GREEN = 5, + Green = 5, + GREY = 6, + Grey = 6, + ORANGE = 7, + Orange = 7, + PINK = 8, + Pink = 8, + RED = 9, + Red = 9, + YELLOW = 10, + Yellow = 10, + TRANSPARENT = 11, + Transparent = 11 +} +export enum ColoringStrategy { + INVERT = 'invert', + AVERAGE = 'average', + PRIMARY = 'primary' +} +export enum ImageFit { + CONTAIN = 0, + Contain = 0, + COVER = 1, + Cover = 1, + AUTO = 2, + Auto = 2, + FILL = 3, + Fill = 3, + SCALE_DOWN = 4, + ScaleDown = 4, + NONE = 5, + None = 5, + TOP_START = 7, + TOP = 8, + TOP_END = 9, + START = 10, + CENTER = 11, + END = 12, + BOTTOM_START = 13, + BOTTOM = 14, + BOTTOM_END = 15 +} +export enum BorderStyle { + DOTTED = 0, + Dotted = 0, + DASHED = 1, + Dashed = 1, + SOLID = 2, + Solid = 2 +} +export enum LineJoinStyle { + MITER = 0, + Miter = 0, + ROUND = 1, + Round = 1, + BEVEL = 2, + Bevel = 2 +} +export enum TouchType { + DOWN = 0, + Down = 0, + UP = 1, + Up = 1, + MOVE = 2, + Move = 2, + CANCEL = 3, + Cancel = 3 +} +export enum MouseButton { + LEFT = 0, + Left = 0, + RIGHT = 1, + Right = 1, + MIDDLE = 2, + Middle = 2, + BACK = 3, + Back = 3, + FORWARD = 4, + Forward = 4, + NONE = 5, + None = 5 +} +export enum MouseAction { + PRESS = 0, + Press = 0, + RELEASE = 1, + Release = 1, + MOVE = 2, + Move = 2, + HOVER = 3, + Hover = 3 +} +export enum AnimationStatus { + INITIAL = 0, + Initial = 0, + RUNNING = 1, + Running = 1, + PAUSED = 2, + Paused = 2, + STOPPED = 3, + Stopped = 3 +} +export enum Curve { + LINEAR = 0, + Linear = 0, + EASE = 1, + Ease = 1, + EASE_IN = 2, + EaseIn = 2, + EASE_OUT = 3, + EaseOut = 3, + EASE_IN_OUT = 4, + EaseInOut = 4, + FAST_OUT_SLOW_IN = 5, + FastOutSlowIn = 5, + LINEAR_OUT_SLOW_IN = 6, + LinearOutSlowIn = 6, + FAST_OUT_LINEAR_IN = 7, + FastOutLinearIn = 7, + EXTREME_DECELERATION = 8, + ExtremeDeceleration = 8, + SHARP = 9, + Sharp = 9, + RHYTHM = 10, + Rhythm = 10, + SMOOTH = 11, + Smooth = 11, + FRICTION = 12, + Friction = 12 +} +export enum FillMode { + NONE = 0, + None = 0, + FORWARDS = 1, + Forwards = 1, + BACKWARDS = 2, + Backwards = 2, + BOTH = 3, + Both = 3 +} +export enum PlayMode { + NORMAL = 0, + Normal = 0, + REVERSE = 1, + Reverse = 1, + ALTERNATE = 2, + Alternate = 2, + ALTERNATE_REVERSE = 3, + AlternateReverse = 3 +} +export enum KeyType { + DOWN = 0, + Down = 0, + UP = 1, + Up = 1 +} +export enum KeySource { + UNKNOWN = 0, + Unknown = 0, + KEYBOARD = 1, + Keyboard = 1 +} +export enum Edge { + TOP = 0, + Top = 0, + CENTER = 1, + Center = 1, + BOTTOM = 2, + Bottom = 2, + BASELINE = 3, + Baseline = 3, + START = 4, + Start = 4, + MIDDLE = 5, + Middle = 5, + END = 6, + End = 6 +} +export enum Week { + MON = 0, + Mon = 0, + TUE = 1, + Tue = 1, + WED = 2, + Wed = 2, + THUR = 3, + Thur = 3, + FRI = 4, + Fri = 4, + SAT = 5, + Sat = 5, + SUN = 6, + Sun = 6 +} +export enum Direction { + LTR = 0, + Ltr = 0, + RTL = 1, + Rtl = 1, + AUTO = 2, + Auto = 2 +} +export enum BarState { + OFF = 0, + Off = 0, + AUTO = 1, + Auto = 1, + ON = 2, + On = 2 +} +export enum EdgeEffect { + SPRING = 0, + Spring = 0, + FADE = 1, + Fade = 1, + NONE = 2, + None = 2 +} +export enum Alignment { + TOP_START = 0, + TopStart = 0, + TOP = 1, + Top = 1, + TOP_END = 2, + TopEnd = 2, + START = 3, + Start = 3, + CENTER = 4, + Center = 4, + END = 5, + End = 5, + BOTTOM_START = 6, + BottomStart = 6, + BOTTOM = 7, + Bottom = 7, + BOTTOM_END = 8, + BottomEnd = 8 +} +export enum TransitionType { + ALL = 0, + All = 0, + INSERT = 1, + Insert = 1, + DELETE = 2, + Delete = 2 +} +export enum RelateType { + FILL = 0, + FIT = 1 +} +export enum Visibility { + VISIBLE = 0, + Visible = 0, + HIDDEN = 1, + Hidden = 1, + NONE = 2, + None = 2 +} +export enum LineCapStyle { + BUTT = 0, + Butt = 0, + ROUND = 1, + Round = 1, + SQUARE = 2, + Square = 2 +} +export enum Axis { + VERTICAL = 0, + Vertical = 0, + HORIZONTAL = 1, + Horizontal = 1 +} +export enum HorizontalAlign { + START = 0, + Start = 0, + CENTER = 1, + Center = 1, + END = 2, + End = 2 +} +export enum FlexAlign { + START = 0, + Start = 0, + CENTER = 1, + Center = 1, + END = 2, + End = 2, + SPACE_BETWEEN = 3, + SpaceBetween = 3, + SPACE_AROUND = 4, + SpaceAround = 4, + SPACE_EVENLY = 5, + SpaceEvenly = 5 +} +export enum ItemAlign { + AUTO = 0, + Auto = 0, + START = 1, + Start = 1, + CENTER = 2, + Center = 2, + END = 3, + End = 3, + BASELINE = 4, + Baseline = 4, + STRETCH = 5, + Stretch = 5 +} +export enum FlexDirection { + ROW = 0, + Row = 0, + COLUMN = 1, + Column = 1, + ROW_REVERSE = 2, + RowReverse = 2, + COLUMN_REVERSE = 3, + ColumnReverse = 3 +} +export enum PixelRoundCalcPolicy { + NO_FORCE_ROUND = 0, + FORCE_CEIL = 1, + FORCE_FLOOR = 2 +} +export enum FlexWrap { + NO_WRAP = 0, + NoWrap = 0, + WRAP = 1, + Wrap = 1, + WRAP_REVERSE = 2, + WrapReverse = 2 +} +export enum VerticalAlign { + TOP = 0, + Top = 0, + CENTER = 1, + Center = 1, + BOTTOM = 2, + Bottom = 2 +} +export enum ImageRepeat { + NO_REPEAT = 0, + NoRepeat = 0, + X = 1, + Y = 2, + XY = 3 +} +export enum ImageSize { + AUTO = 0, + Auto = 0, + COVER = 1, + Cover = 1, + CONTAIN = 2, + Contain = 2, + FILL = 3 +} +export enum GradientDirection { + LEFT = 0, + Left = 0, + TOP = 1, + Top = 1, + RIGHT = 2, + Right = 2, + BOTTOM = 3, + Bottom = 3, + LEFT_TOP = 4, + LeftTop = 4, + LEFT_BOTTOM = 5, + LeftBottom = 5, + RIGHT_TOP = 6, + RightTop = 6, + RIGHT_BOTTOM = 7, + RightBottom = 7, + NONE = 8, + None = 8 +} +export enum SharedTransitionEffectType { + STATIC = 0, + Static = 0, + EXCHANGE = 1, + Exchange = 1 +} +export enum FontStyle { + NORMAL = 0, + Normal = 0, + ITALIC = 1, + Italic = 1 +} +export enum FontWeight { + LIGHTER = 0, + Lighter = 0, + NORMAL = 1, + Normal = 1, + REGULAR = 2, + Regular = 2, + MEDIUM = 3, + Medium = 3, + BOLD = 4, + Bold = 4, + BOLDER = 5, + Bolder = 5 +} +export enum TextAlign { + CENTER = 0, + Center = 0, + START = 1, + Start = 1, + END = 2, + End = 2, + JUSTIFY = 3 +} +export enum TextOverflow { + NONE = 0, + None = 0, + CLIP = 1, + Clip = 1, + ELLIPSIS = 2, + Ellipsis = 2, + MARQUEE = 3 +} +export enum TextDecorationType { + NONE = 0, + None = 0, + UNDERLINE = 1, + Underline = 1, + OVERLINE = 2, + Overline = 2, + LINE_THROUGH = 3, + LineThrough = 3 +} +export enum TextCase { + NORMAL = 0, + Normal = 0, + LOWER_CASE = 1, + LowerCase = 1, + UPPER_CASE = 2, + UpperCase = 2 +} +export enum TextHeightAdaptivePolicy { + MAX_LINES_FIRST = 0, + MIN_FONT_SIZE_FIRST = 1, + LAYOUT_CONSTRAINT_FIRST = 2 +} +export enum ResponseType { + RIGHT_CLICK = 0, + RightClick = 0, + LONG_PRESS = 1, + LongPress = 1 +} +export enum HoverEffect { + AUTO = 0, + Auto = 0, + SCALE = 1, + Scale = 1, + HIGHLIGHT = 2, + Highlight = 2, + NONE = 3, + None = 3 +} +export enum Placement { + LEFT = 0, + Left = 0, + RIGHT = 1, + Right = 1, + TOP = 2, + Top = 2, + BOTTOM = 3, + Bottom = 3, + TOP_LEFT = 4, + TopLeft = 4, + TOP_RIGHT = 5, + TopRight = 5, + BOTTOM_LEFT = 6, + BottomLeft = 6, + BOTTOM_RIGHT = 7, + BottomRight = 7, + LEFT_TOP = 8, + LeftTop = 8, + LEFT_BOTTOM = 9, + LeftBottom = 9, + RIGHT_TOP = 10, + RightTop = 10, + RIGHT_BOTTOM = 11, + RightBottom = 11 +} +export enum ArrowPointPosition { + START = 'Start', + CENTER = 'Center', + END = 'End' +} +export enum CopyOptions { + NONE = 0, + None = 0, + IN_APP = 1, + InApp = 1, + LOCAL_DEVICE = 2, + LocalDevice = 2, + CROSS_DEVICE = 3 +} +export enum HitTestMode { + DEFAULT = 0, + Default = 0, + BLOCK = 1, + Block = 1, + TRANSPARENT = 2, + Transparent = 2, + NONE = 3, + None = 3 +} +export enum TitleHeight { + MAIN_ONLY = 0, + MainOnly = 0, + MAIN_WITH_SUB = 1, + MainWithSub = 1 +} +export enum ModifierKey { + CTRL = 0, + SHIFT = 1, + ALT = 2 +} +export enum FunctionKey { + ESC = 0, + F1 = 1, + F2 = 2, + F3 = 3, + F4 = 4, + F5 = 5, + F6 = 6, + F7 = 7, + F8 = 8, + F9 = 9, + F10 = 10, + F11 = 11, + F12 = 12, + TAB = 13, + DPAD_UP = 14, + DPAD_DOWN = 15, + DPAD_LEFT = 16, + DPAD_RIGHT = 17 +} +export enum ImageSpanAlignment { + BASELINE = 0, + BOTTOM = 1, + CENTER = 2, + TOP = 3 +} +export enum ObscuredReasons { + PLACEHOLDER = 0 +} +export enum TextContentStyle { + DEFAULT = 0, + INLINE = 1 +} +export enum ClickEffectLevel { + LIGHT = 0, + MIDDLE = 1, + HEAVY = 2 +} +export enum XComponentType { + SURFACE = 0, + COMPONENT = 1, + TEXTURE = 2, + NODE = 3 +} +export enum NestedScrollMode { + SELF_ONLY = 0, + SELF_FIRST = 1, + PARENT_FIRST = 2, + PARALLEL = 3 +} +export enum ScrollSource { + DRAG = 0, + FLING = 1, + EDGE_EFFECT = 2, + OTHER_USER_INPUT = 3, + SCROLL_BAR = 4, + SCROLL_BAR_FLING = 5, + SCROLLER = 6, + SCROLLER_ANIMATION = 7 +} +export enum RenderFit { + CENTER = 0, + TOP = 1, + BOTTOM = 2, + LEFT = 3, + RIGHT = 4, + TOP_LEFT = 5, + TOP_RIGHT = 6, + BOTTOM_LEFT = 7, + BOTTOM_RIGHT = 8, + RESIZE_FILL = 9, + RESIZE_CONTAIN = 10, + RESIZE_CONTAIN_TOP_LEFT = 11, + RESIZE_CONTAIN_BOTTOM_RIGHT = 12, + RESIZE_COVER = 13, + RESIZE_COVER_TOP_LEFT = 14, + RESIZE_COVER_BOTTOM_RIGHT = 15 +} +export enum DialogButtonStyle { + DEFAULT = 0, + HIGHLIGHT = 1 +} +export enum WordBreak { + NORMAL = 0, + BREAK_ALL = 1, + BREAK_WORD = 2 +} +export enum LineBreakStrategy { + GREEDY = 0, + HIGH_QUALITY = 1, + BALANCED = 2 +} +export enum EllipsisMode { + START = 0, + CENTER = 1, + END = 2 +} +export type Nullable<T> = T | undefined; +export enum OptionWidthMode { + FIT_CONTENT = 'fit_content', + FIT_TRIGGER = 'fit_trigger' +} +export enum IlluminatedType { + NONE = 0, + BORDER = 1, + CONTENT = 2, + BORDER_CONTENT = 3, + BLOOM_BORDER = 4, + BLOOM_BORDER_CONTENT = 5 +} +export enum FoldStatus { + FOLD_STATUS_UNKNOWN = 0, + FOLD_STATUS_EXPANDED = 1, + FOLD_STATUS_FOLDED = 2, + FOLD_STATUS_HALF_FOLDED = 3 +} +export enum AppRotation { + ROTATION_0 = 0, + ROTATION_90 = 1, + ROTATION_180 = 2, + ROTATION_270 = 3 +} +export enum EmbeddedType { + EMBEDDED_UI_EXTENSION = 0 +} +export enum MarqueeUpdateStrategy { + DEFAULT = 0, + PRESERVE_POSITION = 1 +} +export enum TextDecorationStyle { + SOLID = 0, + DOUBLE = 1, + DOTTED = 2, + DASHED = 3, + WAVY = 4 +} +export enum TextSelectableMode { + SELECTABLE_UNFOCUSABLE = 0, + SELECTABLE_FOCUSABLE = 1, + UNSELECTABLE = 2 +} +export enum AccessibilityHoverType { + HOVER_ENTER = 0, + HOVER_MOVE = 1, + HOVER_EXIT = 2, + HOVER_CANCEL = 3 +} +export enum WidthBreakpoint { + WIDTH_XS = 0, + WIDTH_SM = 1, + WIDTH_MD = 2, + WIDTH_LG = 3, + WIDTH_XL = 4 +} +export enum HeightBreakpoint { + HEIGHT_SM = 0, + HEIGHT_MD = 1, + HEIGHT_LG = 2 +} diff --git a/api/arkui/component/forEach.d.ets b/api/arkui/component/forEach.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..c3430f872d76f150cf06a2a12e02efa0902289be --- /dev/null +++ b/api/arkui/component/forEach.d.ets @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +// HADWRITTEN, DO NOT REGENERATE + +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' + +/** + * declare ForEachAttribute + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +export interface ForEachAttribute {} + +/** + * Defines ForEach Component. + * + * @param { Array<T> } arr + * @param { function } itemGenerator + * @param { function } keyGenerator + * @returns { ForEachAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @form + * @atomicservice + * @since 20 + */ +@memo +@ComponentBuilder +export declare function ForEach<T>(arr: Array<T>, + @memo + itemGenerator: (item: T, index: number) => void, + keyGenerator?: (item: T, index: number) => string, +): ForEachAttribute \ No newline at end of file diff --git a/api/arkui/component/gesture.d.ets b/api/arkui/component/gesture.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..0d13d0b64af8adc32f74c92d7bea6c16ccc439c4 --- /dev/null +++ b/api/arkui/component/gesture.d.ets @@ -0,0 +1,753 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { BaseEvent, EventTarget, SourceType, SourceTool, Callback } from './common' + +export enum PanDirection { + NONE = 0, + None = 0, + HORIZONTAL = 1, + Horizontal = 1, + LEFT = 2, + Left = 2, + RIGHT = 3, + Right = 3, + VERTICAL = 4, + Vertical = 4, + UP = 5, + Up = 5, + DOWN = 6, + Down = 6, + ALL = 7, + All = 7 +} +export enum SwipeDirection { + NONE = 0, + None = 0, + HORIZONTAL = 1, + Horizontal = 1, + VERTICAL = 2, + Vertical = 2, + ALL = 3, + All = 3 +} +export enum GestureMode { + SEQUENCE = 0, + Sequence = 0, + PARALLEL = 1, + Parallel = 1, + EXCLUSIVE = 2, + Exclusive = 2 +} +export enum GestureMask { + NORMAL = 0, + Normal = 0, + IGNORE_INTERNAL = 1, + IgnoreInternal = 1 +} +export enum GestureJudgeResult { + CONTINUE = 0, + REJECT = 1 +} +export declare namespace GestureControl { + export enum GestureType { + TAP_GESTURE = 0, + LONG_PRESS_GESTURE = 1, + PAN_GESTURE = 2, + PINCH_GESTURE = 3, + SWIPE_GESTURE = 4, + ROTATION_GESTURE = 5, + DRAG = 6, + CLICK = 7 + } +} +export interface GestureInfo { + tag?: string; + type: GestureControl.GestureType; + isSystemGesture: boolean; +} +export interface FingerInfo { + id: number; + globalX: number; + globalY: number; + localX: number; + localY: number; + displayX: number; + displayY: number; +} +export type GestureType = Gesture | GestureGroup; +export interface BaseGestureEvent extends BaseEvent { + fingerList: Array<FingerInfo>; +} +export interface TapGestureEvent extends BaseGestureEvent { +} +export interface LongPressGestureEvent extends BaseGestureEvent { + repeat: boolean; +} +export interface PanGestureEvent extends BaseGestureEvent { + offsetX: number; + offsetY: number; + velocityX: number; + velocityY: number; + velocity: number; +} +export interface PinchGestureEvent extends BaseGestureEvent { + scale: number; + pinchCenterX: number; + pinchCenterY: number; +} +export interface RotationGestureEvent extends BaseGestureEvent { + angle: number; +} +export interface SwipeGestureEvent extends BaseGestureEvent { + angle: number; + speed: number; +} +export interface GestureEvent extends BaseEvent { + repeat: boolean; + fingerList: Array<FingerInfo>; + offsetX: number; + offsetY: number; + angle: number; + speed: number; + scale: number; + pinchCenterX: number; + pinchCenterY: number; + velocityX: number; + velocityY: number; + velocity: number; +} +export interface GestureInterface<T> { + tag(tag: string): T + allowedTypes(types: Array<SourceTool>): T +} +export interface TapGestureParameters { + count?: number; + fingers?: number; + distanceThreshold?: number; +} +export type Callback_GestureEvent_Void = (event: GestureEvent) => void; +export interface TapGestureInterface extends GestureInterface<TapGestureInterface> { + onAction(event: ((event: GestureEvent) => void)): TapGestureInterface + invoke(value?: TapGestureParameters): TapGestureInterface; +} +export interface Literal_Number_duration_fingers_Boolean_repeat { + fingers?: number; + repeat?: boolean; + duration?: number; +} +export interface LongPressGestureInterface extends GestureInterface<LongPressGestureInterface> { + onAction(event: ((event: GestureEvent) => void)): LongPressGestureInterface + onActionEnd(event: ((event: GestureEvent) => void)): LongPressGestureInterface + onActionCancel(event: (() => void)): LongPressGestureInterface + invoke(value?: Literal_Number_duration_fingers_Boolean_repeat): LongPressGestureInterface; +} +export interface Literal_Number_distance_fingers_PanDirection_direction { + fingers?: number; + direction?: PanDirection; + distance?: number; +} +export interface PanGestureOptions { + setDirection(value: PanDirection): undefined + setDistance(value: number): undefined + setFingers(value: number): undefined + getDirection(): PanDirection +} +export interface PanGestureInterface extends GestureInterface<PanGestureInterface> { + onActionStart(event: ((event: GestureEvent) => void)): PanGestureInterface + onActionUpdate(event: ((event: GestureEvent) => void)): PanGestureInterface + onActionEnd(event: ((event: GestureEvent) => void)): PanGestureInterface + onActionCancel(event: (() => void)): PanGestureInterface + invoke(value?: Literal_Number_distance_fingers_PanDirection_direction | PanGestureOptions): PanGestureInterface; +} +export interface Literal_Number_fingers_speed_SwipeDirection_direction { + fingers?: number; + direction?: SwipeDirection; + speed?: number; +} +export interface SwipeGestureInterface extends GestureInterface<SwipeGestureInterface> { + onAction(event: ((event: GestureEvent) => void)): SwipeGestureInterface + invoke(value?: Literal_Number_fingers_speed_SwipeDirection_direction): SwipeGestureInterface; +} +export interface Literal_Number_distance_fingers { + fingers?: number; + distance?: number; +} +export interface PinchGestureInterface extends GestureInterface<PinchGestureInterface> { + onActionStart(event: ((event: GestureEvent) => void)): PinchGestureInterface + onActionUpdate(event: ((event: GestureEvent) => void)): PinchGestureInterface + onActionEnd(event: ((event: GestureEvent) => void)): PinchGestureInterface + onActionCancel(event: (() => void)): PinchGestureInterface + invoke(value?: Literal_Number_distance_fingers): PinchGestureInterface; +} +export interface Literal_Number_angle_fingers { + fingers?: number; + angle?: number; +} +export interface RotationGestureInterface extends GestureInterface<RotationGestureInterface> { + onActionStart(event: ((event: GestureEvent) => void)): RotationGestureInterface + onActionUpdate(event: ((event: GestureEvent) => void)): RotationGestureInterface + onActionEnd(event: ((event: GestureEvent) => void)): RotationGestureInterface + onActionCancel(event: (() => void)): RotationGestureInterface + invoke(value?: Literal_Number_angle_fingers): RotationGestureInterface; +} +export interface GestureGroupInterface { + onCancel(event: (() => void)): GestureGroupInterface + invoke(mode: GestureMode, gesture: Array<GestureType>): GestureGroupInterface; +} +export interface GestureHandler<T> { + tag(tag: string): T + allowedTypes(types: Array<SourceTool>): T +} +export interface TapGestureHandlerOptions { + count?: number; + fingers?: number; +} +export interface TapGestureHandler extends GestureHandler<TapGestureHandler> { + onAction(event: ((event: GestureEvent) => void)): TapGestureHandler +} +export interface LongPressGestureHandlerOptions { + fingers?: number; + repeat?: boolean; + duration?: number; +} +export interface LongPressGestureHandler extends GestureHandler<LongPressGestureHandler> { + onAction(event: ((event: GestureEvent) => void)): LongPressGestureHandler + onActionEnd(event: ((event: GestureEvent) => void)): LongPressGestureHandler + onActionCancel(event: (() => void)): LongPressGestureHandler +} +export interface PanGestureHandlerOptions { + fingers?: number; + direction?: PanDirection; + distance?: number; +} +export interface PanGestureHandler extends GestureHandler<PanGestureHandler> { + onActionStart(event: ((event: GestureEvent) => void)): PanGestureHandler + onActionUpdate(event: ((event: GestureEvent) => void)): PanGestureHandler + onActionEnd(event: ((event: GestureEvent) => void)): PanGestureHandler + onActionCancel(event: (() => void)): PanGestureHandler +} +export interface SwipeGestureHandlerOptions { + fingers?: number; + direction?: SwipeDirection; + speed?: number; +} +export interface SwipeGestureHandler extends GestureHandler<SwipeGestureHandler> { + onAction(event: ((event: GestureEvent) => void)): SwipeGestureHandler +} +export interface PinchGestureHandlerOptions { + fingers?: number; + distance?: number; +} +export interface PinchGestureHandler extends GestureHandler<PinchGestureHandler> { + onActionStart(event: ((event: GestureEvent) => void)): PinchGestureHandler + onActionUpdate(event: ((event: GestureEvent) => void)): PinchGestureHandler + onActionEnd(event: ((event: GestureEvent) => void)): PinchGestureHandler + onActionCancel(event: (() => void)): PinchGestureHandler +} +export interface RotationGestureHandlerOptions { + fingers?: number; + angle?: number; +} +export interface RotationGestureHandler extends GestureHandler<RotationGestureHandler> { + onActionStart(event: ((event: GestureEvent) => void)): RotationGestureHandler + onActionUpdate(event: ((event: GestureEvent) => void)): RotationGestureHandler + onActionEnd(event: ((event: GestureEvent) => void)): RotationGestureHandler + onActionCancel(event: (() => void)): RotationGestureHandler +} +export interface GestureGroupGestureHandlerOptions { + stub: string; +} +export interface GestureGroupHandler extends GestureHandler<GestureGroupHandler> { + onCancel(event: (() => void)): GestureGroupHandler +} +export enum GesturePriority { + NORMAL = 0, + PRIORITY = 1 +} +export enum GestureRecognizerState { + READY = 0, + DETECTING = 1, + PENDING = 2, + BLOCKED = 3, + SUCCESSFUL = 4, + FAILED = 5 +} +export interface ScrollableTargetInfo extends EventTargetInfo { + isBegin(): boolean + isEnd(): boolean +} +export interface EventTargetInfo { + getId(): string +} +export interface GestureRecognizer { + getTag(): string + getType(): GestureControl.GestureType + isBuiltIn(): boolean + setEnabled(isEnabled: boolean): void + isEnabled(): boolean + getState(): GestureRecognizerState + getEventTargetInfo(): EventTargetInfo + isValid(): boolean +} +export interface PanRecognizer extends GestureRecognizer { + getPanGestureOptions(): PanGestureOptions +} + +/** + * Defines Gesture interface. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + * + */ +export declare class Gesture { + /** + * Set gesture's tag. + * + * @param { string } tag + * @returns { this } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + * + */ + tag(tag: string): this; + /** + * Input source type for gesture response. + * + * @param { Array<SourceTool> } types - indicate the allowed input source for gesture to response + * @returns { this } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + * + */ + allowedTypes(types: Array<SourceTool>): this; +} +/** + * Defines TapGesture. + * + * @extends Gesture + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + * + */ +export declare class TapGesture extends Gesture { + /** + * Set the value. + * TapGestureParameters: The parameters of the tapGesture. + * + * @param { function } factory + * @param { TapGestureParameters } value + * @returns { TapGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + * + */ + static $_instantiate(factory: () => TapGesture, value?: TapGestureParameters): TapGesture; + /** + * Tap gesture recognition success callback. + * + * @param { function } event + * @returns { TapGestureInterface } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + * + */ + onAction(event: Callback<GestureEvent>): TapGesture; +} +/** + * Defines LongPressGesture. + * + * @extends Gesture + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ +export declare class LongPressGesture extends Gesture { + /** + * Set the value. + * fingers: Indicates the hand index that triggers the long press. + * repeat: Indicates whether to trigger event callback continuously. + * duration: Minimum press and hold time, in milliseconds. + * + * @param { function } factory + * @param { LongPressGestureHandlerOptions } value + * @returns { LongPressGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 11 + */ + static $_instantiate(factory: () => LongPressGesture, value?: LongPressGestureHandlerOptions): LongPressGesture; + /** + * LongPress gesture recognition success callback. + * + * @param { Callback<GestureEvent> } event + * @returns { LongPressGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onAction(event: Callback<GestureEvent>): LongPressGesture; + /** + * The LongPress gesture is successfully recognized. When the finger is lifted, the callback is triggered. + * + * @param { Callback<GestureEvent> } event + * @returns { LongPressGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionEnd(event: Callback<GestureEvent>): LongPressGesture; + /** + * The LongPress gesture is successfully recognized and a callback is triggered when the touch cancel event + * is received. + * + * @param { Callback<void> } event + * @returns { LongPressGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionCancel(event: Callback<void>): LongPressGesture; +} + +/** + * Defines PanGesture. + * + * @extends Gesture + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ +export declare class PanGesture extends Gesture { + /** + * Set the value. + * + * @param { function } factory + * @param { PanGestureHandlerOptions } value + * @returns { PanGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + static $_instantiate(factory: () => PanGesture, value?: PanGestureHandlerOptions): PanGesture; + /** + * Pan gesture recognition success callback. + * + * @param { Callback<GestureEvent> } event + * @returns { PanGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionStart(event: Callback<GestureEvent>): PanGesture; + /** + * Callback when the Pan gesture is moving. + * + * @param { Callback<GestureEvent> } event + * @returns { PanGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionUpdate(event: Callback<GestureEvent>): PanGesture; + /** + * The Pan gesture is successfully recognized. When the finger is lifted, the callback is triggered. + * + * @param { Callback<GestureEvent> } event + * @returns { PanGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionEnd(event: Callback<GestureEvent>): PanGesture; + /** + * The Pan gesture is successfully recognized and a callback is triggered when the touch cancel event + * is received. + * + * @param { Callback<void> } event + * @returns { PanGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionCancel(event: Callback<void>): PanGesture; +} +/** + * Defines SwipeGesture. + * + * @extends Gesture + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ +export declare class SwipeGesture extends Gesture { + /** + * Set the value. + * + * @param { function } factory + * @param { SwipeGestureHandlerOptions } value + * @returns { SwipeGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + static $_instantiate(factory: () => SwipeGesture, value?: SwipeGestureHandlerOptions): SwipeGesture; + /** + * Slide gesture recognition success callback. + * + * @param { Callback<GestureEvent> } event + * @returns { SwipeGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onAction(event: Callback<GestureEvent>): SwipeGesture; +} +/** + * Defines PinchGesture. + * + * @extends Gesture + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ +export declare class PinchGesture extends Gesture { + /** + * Set the value. + * + * @param { function } factory + * @param { PinchGestureHandlerOptions } value + * @returns { PinchGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + static $_instantiate(factory: () => PinchGesture, value?: PinchGestureHandlerOptions): PinchGesture; + /** + * Pinch gesture recognition success callback. + * + * @param { Callback<GestureEvent> } event + * @returns { PinchGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionStart(event: Callback<GestureEvent>): PinchGesture; + /** + * Callback when the Pinch gesture is moving. + * + * @param { Callback<GestureEvent> } event + * @returns { PinchGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionUpdate(event: Callback<GestureEvent>): PinchGesture; + /** + * The Pinch gesture is successfully recognized. When the finger is lifted, the callback is triggered. + * + * @param { Callback<GestureEvent> } event + * @returns { PinchGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionEnd(event: Callback<GestureEvent>): PinchGesture; + /** + * The Pinch gesture is successfully recognized and a callback is triggered when the touch cancel event + * is received. + * + * @param { Callback<void> } event + * @returns { PinchGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionCancel(event: Callback<void>): PinchGesture; +} +/** + * Defines RotationGesture. + * + * @extends Gesture + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ +export declare class RotationGesture extends Gesture { + /** + * Set the value. + * + * @param { function } factory + * @param { RotationGestureHandlerOptions } value + * @returns { RotationGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + static $_instantiate(factory: () => RotationGesture, value?: RotationGestureHandlerOptions): RotationGesture; + /** + * Rotation gesture recognition success callback. + * + * @param { Callback<GestureEvent> } event + * @returns { RotationGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionStart(event: Callback<GestureEvent>): RotationGesture; + /** + * Callback when the Rotation gesture is moving. + * + * @param { Callback<GestureEvent> } event + * @returns { RotationGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionUpdate(event: Callback<GestureEvent>): RotationGesture; + /** + * The Rotation gesture is successfully recognized. When the finger is lifted, the callback is triggered. + * + * @param { Callback<GestureEvent> } event + * @returns { RotationGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionEnd(event: Callback<GestureEvent>): RotationGesture; + /** + * The Rotation gesture is successfully recognized and a callback is triggered when the touch cancel event + * is received. + * + * @param { Callback<void> } event + * @returns { RotationGesture } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onActionCancel(event: Callback<void>): RotationGesture; +} +/** + * Defines the GestureGroup. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ +export declare class GestureGroup { + /** + * Return to Obtain GestureGroup. + * + * @param { function } factory + * @param { GestureMode } mode + * @param { GestureType[] } gesture + * @returns { GestureGroup } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + static $_instantiate(factory: () => GestureGroup, mode: GestureMode, ...gesture: GestureType[]): GestureGroup; + /** + * The Gesture group is successfully recognized and a callback is triggered when the touch cancel event + * is received. + * + * @param { Callback<void> } event + * @returns { GestureGroup } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * + * @since 20 + */ + onCancel(event: Callback<void>): GestureGroup; +} diff --git a/api/arkui/component/grid.d.ets b/api/arkui/component/grid.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..8b8f81b107c09075286d26e75d0f98de951e1f4a --- /dev/null +++ b/api/arkui/component/grid.d.ets @@ -0,0 +1,159 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { Tuple_Number_Number, ItemDragInfo, ScrollableCommonMethod, CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, NestedScrollOptions, ContentClipMode, EdgeEffectOptions, FadingEdgeOptions } from './common' +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { Scroller, ScrollOnWillScrollCallback, ScrollOnScrollCallback, OnScrollFrameBeginCallback, OnScrollFrameBeginHandlerResult } from './scroll' +import { ScrollState } from './list' +import { VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, PixelMap } from './units' +import { ComponentContent } from './../ComponentContent' +import { HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey, BarState, EdgeEffect } from './enums' +import { LengthMetrics } from './../Graphics' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' +import { Resource } from './../../../api/global/resource' + + +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' + +export type Callback_Number_Tuple_Number_Number = (index: number) => [ number, number ]; +export type Tuple_Number_Number_Number_Number = [ + number, + number, + number, + number +] +export type Callback_Number_Tuple_Number_Number_Number_Number = (index: number) => [ number, number, number, number ]; +export interface GridLayoutOptions { + regularSize: [ number, number ]; + irregularIndexes?: Array<number>; + onGetIrregularSizeByIndex?: ((index: number) => [ number, number ]); + onGetRectByIndex?: ((index: number) => [ number, number, number, number ]); +} +export type GridInterface = (scroller?: Scroller, layoutOptions?: GridLayoutOptions) => GridAttribute; +export enum GridDirection { + ROW = 0, + Row = 0, + COLUMN = 1, + Column = 1, + ROW_REVERSE = 2, + RowReverse = 2, + COLUMN_REVERSE = 3, + ColumnReverse = 3 +} +export enum GridItemAlignment { + DEFAULT = 0, + STRETCH = 1 +} +export interface ComputedBarAttribute { + totalOffset: number; + totalLength: number; +} +export type Callback_Number_Number_ComputedBarAttribute = (index: number, offset: number) => ComputedBarAttribute; +export type Callback_Number_Number_Void = (first: number, last: number) => void; +export type Callback_ItemDragInfo_Void = (event: ItemDragInfo) => void; +export type Callback_ItemDragInfo_Number_Number_Void = (event: ItemDragInfo, itemIndex: number, + insertIndex: number) => void; +export type Callback_ItemDragInfo_Number_Void = (event: ItemDragInfo, itemIndex: number) => void; +export type Callback_ItemDragInfo_Number_Number_Boolean_Void = (event: ItemDragInfo, itemIndex: number, + insertIndex: number, isSuccess: boolean) => void; +export interface Literal_Number_offsetRemain { + offsetRemain: number; +} +export type Callback_Number_ScrollState_Literal_Number_offsetRemain = (offset: number, + state: ScrollState) => Literal_Number_offsetRemain; +export interface GridAttribute extends ScrollableCommonMethod { + @memo + columnsTemplate(value: string): this; + @memo + rowsTemplate(value: string): this; + @memo + columnsGap(value: Length): this; + @memo + rowsGap(value: Length): this; + @memo + scrollBarWidth(value: number | string): this; + @memo + scrollBarColor(value: Color | number | string): this; + @memo + scrollBar(value: BarState): this; + @memo + onScrollBarUpdate(value: ((index: number,offset: number) => ComputedBarAttribute)): this; + @memo + onScrollIndex(value: ((first: number,last: number) => void)): this; + @memo + cachedCount(value: number): this; + @memo + editMode(value: boolean): this; + @memo + multiSelectable(value: boolean): this; + @memo + maxCount(value: number): this; + @memo + minCount(value: number): this; + @memo + cellLength(value: number): this; + @memo + layoutDirection(value: GridDirection): this; + @memo + supportAnimation(value: boolean): this; + @memo + onItemDragStart(value: ((event: ItemDragInfo,itemIndex: number) => CustomBuilder)): this; + @memo + onItemDragEnter(value: ((event: ItemDragInfo) => void)): this; + @memo + onItemDragMove(value: ((event: ItemDragInfo,itemIndex: number,insertIndex: number) => void)): this; + @memo + onItemDragLeave(value: ((event: ItemDragInfo,itemIndex: number) => void)): this; + @memo + onItemDrop(value: ((event: ItemDragInfo,itemIndex: number,insertIndex: number,isSuccess: boolean) => void)): this; + @memo + nestedScroll(value: NestedScrollOptions): this; + @memo + enableScrollInteraction(value: boolean): this; + @memo + friction(value: number | Resource): this; + @memo + alignItems(value: GridItemAlignment | undefined): this; + @memo + onScroll(value: ((first: number,last: number) => void)): this; + @memo + onReachStart(value: (() => void)): this; + @memo + onReachEnd(value: (() => void)): this; + @memo + onScrollStart(value: (() => void)): this; + @memo + onScrollStop(value: (() => void)): this; + @memo + onScrollFrameBegin(value: OnScrollFrameBeginCallback): this; + @memo + edgeEffect(value: EdgeEffect, options?: EdgeEffectOptions): this; +} +@memo +@ComponentBuilder +export declare function Grid( + scroller?: Scroller | undefined, layoutOptions?: GridLayoutOptions | undefined, + @memo + content_?: () => void, +): GridAttribute diff --git a/api/arkui/component/griditem.d.ets b/api/arkui/component/griditem.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..79be0dd6110000ac36b69a44ed577f2aa6bcc41a --- /dev/null +++ b/api/arkui/component/griditem.d.ets @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback } from './common' + +export enum GridItemStyle { + NONE = 0, + PLAIN = 1 +} +export interface GridItemOptions { + style?: GridItemStyle; +} +export type GridItemInterface = (value?: GridItemOptions) => GridItemAttribute; +export interface GridItemAttribute extends CommonMethod { + @memo + rowStart(value: number): this; + @memo + rowEnd(value: number): this; + @memo + columnStart(value: number): this; + @memo + columnEnd(value: number): this; + @memo + forceRebuild(value: boolean): this; + @memo + selectable(value: boolean): this; + @memo + selected(value: boolean): this; + @memo + onSelect(value: ((parameter: boolean) => void)): this; +} +@memo +@ComponentBuilder +export declare function GridItem( + value?: GridItemOptions | undefined, + @memo + content_?: () => void, +): GridItemAttribute diff --git a/api/arkui/component/image.d.ets b/api/arkui/component/image.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..494fb9af4cd8593b3a735e459f5c84395d30c1a8 --- /dev/null +++ b/api/arkui/component/image.d.ets @@ -0,0 +1,142 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { DrawableDescriptor } from './../../../api/@ohos.arkui.drawableDescriptor' +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { ResolutionQuality, PixelMap, ResourceStr, VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, AccessibilityOptions, ColorFilter } from './units' +import { ImageAIOptions, ImageAnalyzerConfig } from './imageCommon' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, PointLightStyle } from './common' +import { HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey, ImageFit, CopyOptions } from './enums' +import { Resource } from './../../../api/global/resource' + +export enum ImageRenderMode { + ORIGINAL = 0, + Original = 0, + TEMPLATE = 1, + Template = 1 +} +export enum ImageContent { + EMPTY = 0 +} +export enum DynamicRangeMode { + HIGH = 0, + CONSTRAINT = 1, + STANDARD = 2 +} +export enum ImageInterpolation { + NONE = 0, + None = 0, + LOW = 1, + Low = 1, + MEDIUM = 2, + Medium = 2, + HIGH = 3, + High = 3 +} +export interface ImageInterface { + invoke(src: PixelMap | ResourceStr | DrawableDescriptor): ImageAttribute; + + +} +export interface ImageSourceSize { + width: number; + height: number; +} +export interface Type_ImageAttribute_onComplete_callback_event { + width: number; + height: number; + componentWidth: number; + componentHeight: number; + loadingStatus: number; + contentWidth: number; + contentHeight: number; + contentOffsetX: number; + contentOffsetY: number; +} +export type Callback_Type_ImageAttribute_onComplete_callback_event_Void = (event?: Type_ImageAttribute_onComplete_callback_event) => void; +export interface ImageAttribute extends CommonMethod { + @memo + alt(value: string | Resource | PixelMap): this; + @memo + matchTextDirection(value: boolean): this; + @memo + fitOriginalSize(value: boolean): this; + @memo + fillColor(value: ResourceColor): this; + @memo + objectFit(value: ImageFit): this; + @memo + objectRepeat(value: ImageRepeat): this; + @memo + autoResize(value: boolean): this; + @memo + renderMode(value: ImageRenderMode): this; + @memo + dynamicRangeMode(value: DynamicRangeMode): this; + @memo + interpolation(value: ImageInterpolation): this; + @memo + sourceSize(value: ImageSourceSize): this; + @memo + syncLoad(value: boolean): this; + @memo + copyOption(value: CopyOptions): this; + @memo + draggable(value: boolean): this; + @memo + pointLight(value: PointLightStyle): this; + @memo + edgeAntialiasing(value: number): this; + @memo + onComplete(value: ((event?: Type_ImageAttribute_onComplete_callback_event) => void)): this; + @memo + onError(value: ImageErrorCallback): this; + @memo + onFinish(value: (() => void)): this; + @memo + enableAnalyzer(value: boolean): this; + @memo + analyzerConfig(value: ImageAnalyzerConfig): this; + @memo + resizable(value: ResizableOptions): this; + @memo + privacySensitive(value: boolean): this; + @memo + enhancedImageQuality(value: ResolutionQuality): this; +} +export type ImageErrorCallback = (error: ImageError) => void; +export interface ImageError { + componentWidth: number; + componentHeight: number; + message: string; +} +export interface ResizableOptions { + slice?: EdgeWidths; +} +@memo +@ComponentBuilder +export declare function Image( + src: PixelMap | ResourceStr | DrawableDescriptor | PixelMap | ResourceStr | DrawableDescriptor | ImageContent, imageAIOptions?: ImageAIOptions | undefined, + @memo + content_?: () => void, +): ImageAttribute diff --git a/api/arkui/component/imageCommon.d.ets b/api/arkui/component/imageCommon.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..a6a2bae70bd3713625c89ceb5b43880e70062a9c --- /dev/null +++ b/api/arkui/component/imageCommon.d.ets @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +export enum ImageAnalyzerType { + SUBJECT = 0, + TEXT = 1, + OBJECT_LOOKUP = 2 +} +export interface ImageAnalyzerController { + getImageAnalyzerSupportTypes(): Array<ImageAnalyzerType> +} +export interface ImageAnalyzerConfig { + types: Array<ImageAnalyzerType>; +} +export interface ImageAIOptions { + types?: Array<ImageAnalyzerType>; + aiController?: ImageAnalyzerController; +} diff --git a/api/arkui/component/lazyForEach.d.ets b/api/arkui/component/lazyForEach.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..1d7d311c0e04248b21048c45c02635bd74c55ba0 --- /dev/null +++ b/api/arkui/component/lazyForEach.d.ets @@ -0,0 +1,642 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +// HADWRITTEN, DO NOT REGENERATE + +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' + +/** + * Defines type to operation data source. + * + * @enum { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export enum DataOperationType { + /** + * Add data. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + ADD = 'add', + /** + * Delete data. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + DELETE = 'delete', + /** + * Exchange data. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + EXCHANGE = 'exchange', + /** + * Move data. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + MOVE = 'move', + /** + * Change data. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + CHANGE = 'change', + /** + * Reload data. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + RELOAD = 'reload' +} + +/** + * Defines add operation. + * + * @interface DataAddOperation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface DataAddOperation { + /** + * How to operate added data. + * + * @type { DataOperationType.ADD } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + type: DataOperationType; + /** + * Index of added data. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + index: number; + /** + * Count of added data in one operation + * Only validate for ADD and DELETE. + * + * @type { ?number } + * @default 1 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + count?: number; + /** + * Key of added data. + * + * @type { ?(string | Array<string>) } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + key?: string | Array<string>; +} + +/** + * Defines delete operation. + * + * @interface DataDeleteOperation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface DataDeleteOperation { + /** + * How to operate deleted data. + * + * @type { DataOperationType.DELETE } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + type: DataOperationType; + /** + * Index of deleted data. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + index: number; + /** + * Count of deleted data in one operation + * Only validate for ADD and DELETE. + * + * @type { ?number } + * @default 1 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + count?: number; +} + +/** + * Defines change operation. + * + * @interface DataChangeOperation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface DataChangeOperation { + /** + * How to operate changed data. + * + * @type { DataOperationType.CHANGE } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + type: DataOperationType; + /** + * Index of changed data. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + index: number; + /** + * Key of changed data. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + key?: string; +} + +/** + * Defines position of moved data. + * + * @interface MoveIndex + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface MoveIndex { + /** + * Index of moved data. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + from: number; + /** + * Destination of moved data. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + to: number; +} + +/** + * Defines position of exchange data. + * + * @interface ExchangeIndex + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface ExchangeIndex { + /** + * Index of the first exchange data. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + start: number; + /** + * Index of the second exchange data. + * + * @type { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + end: number; +} + +/** + * Defines new key of exchange data. + * + * @interface ExchangeKey + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface ExchangeKey { + /** + * Key of the first exchange data. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + start: string; + /** + * Key of the second exchange data. + * + * @type { string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + end: string; +} + +/** + * Defines move&exchange operation. + * + * @interface DataMoveOperation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface DataMoveOperation { + /** + * How to operate moved data. + * + * @type { DataOperationType.MOVE } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + type: DataOperationType; + /** + * Index of moved data. + * + * @type { MoveIndex } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + index: MoveIndex; + /** + * Key of moved data. + * + * @type { ?string } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + key?: string; +} + +/** + * Defines exchange operation. + * + * @interface DataExchangeOperation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface DataExchangeOperation { + /** + * How to operate exchange data. + * + * @type { DataOperationType.EXCHANGE } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + type: DataOperationType; + /** + * Index of exchange data. + * + * @type { ExchangeIndex } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + index: ExchangeIndex; + /** + * Key of exchange data. + * + * @type { ?ExchangeKey } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + key?: ExchangeKey; +} + +/** + * Defines reload operation. + * + * @interface DataReloadOperation + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface DataReloadOperation { + /** + * How to operate reload data. + * + * @type { DataOperationType.RELOAD } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + type: DataOperationType; +} + +/** + * All data operation type + * + * @typedef { DataAddOperation | DataDeleteOperation | DataChangeOperation | DataMoveOperation | DataExchangeOperation + * | DataReloadOperation } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export type DataOperation = DataAddOperation | DataDeleteOperation | DataChangeOperation | DataMoveOperation | + DataExchangeOperation | DataReloadOperation; + +/** + * Data Change Listener. + * + * @interface DataChangeListener + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface DataChangeListener { + /** + * Data ready. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onDataReloaded(): void + /** + * Data added. + * + * @param { number } index + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 20 + * @deprecated since 8 + * @useinstead onDataAdd + */ + onDataAdded(index: number): void + /** + * Data added. + * + * @param { number } index + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onDataAdd(index: number): void + /** + * Data moved. + * + * @param { number } from + * @param { number } to + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 20 + * @deprecated since 8 + * @useinstead onDataMove + */ + onDataMoved(from: number, to: number): void + /** + * Data moved. + * + * @param { number } from + * @param { number } to + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onDataMove(from: number, to: number): void + /** + * Data deleted. + * + * @param { number } index + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 20 + * @deprecated since 8 + * @useinstead onDataDelete + */ + onDataDeleted(index: number): void + /** + * Data deleted. + * + * @param { number } index + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onDataDelete(index: number): void + /** + * Call when has data change. + * + * @param { number } index + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 20 + * @deprecated since 8 + * @useinstead onDataChange + */ + onDataChanged(index: number): void + /** + * Call when has data change. + * + * @param { number } index + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onDataChange(index: number): void + /** + * Call when multiple data change. + * + * @param { DataOperation[] } dataOperations + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + onDatasetChange(dataOperations: Array<DataOperation>): void +} + +/** + * Developers need to implement this interface to provide data to LazyForEach component. + * + * @interface IDataSource + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface IDataSource<T> { + /** + * Total data count. + * + * @returns { number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + totalCount(): number; + /** + * Return the data of index. + * + * @param { number } index + * @returns { any } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + getData(index: number): T; + /** + * Register data change listener. + * + * @param { DataChangeListener } listener + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + registerDataChangeListener(listener: DataChangeListener): void; + /** + * Unregister data change listener. + * + * @param { DataChangeListener } listener + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ + unregisterDataChangeListener(listener: DataChangeListener): void; +} + +/** + * declare ForEachAttribute + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +export interface LazyForEachAttribute {} + +/** + * Enter the value to obtain the LazyForEach. + * + * @param { IDataSource } dataSource + * @param { function } itemGenerator + * @param { function } keyGenerator + * @returns { LazyForEachAttribute } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + */ +@memo +@ComponentBuilder +export declare function LazyForEach<T>(dataSource: IDataSource<T>, + @memo + itemGenerator: (item: T, index: number) => void, + keyGenerator?: (item: T, index: number) => string, +): LazyForEachAttribute \ No newline at end of file diff --git a/api/arkui/component/list.d.ets b/api/arkui/component/list.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..29463f211cf740fcba603eb090cd5855baa6d5a2 --- /dev/null +++ b/api/arkui/component/list.d.ets @@ -0,0 +1,193 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { Length, ResourceColor, VisualEffect, Filter, UniformDataType, Blender, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, LengthConstrain, PixelMap } from './units' + +import { Scroller, ScrollOptions, ScrollEdgeOptions, ScrollPageOptions, Literal_Boolean_next_Axis_direction, OffsetResult, ScrollAlign, ScrollToIndexOptions, ScrollOnWillScrollCallback, ScrollOnScrollCallback } from './scroll' +import { Edge, Axis, HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, ResponseType, FunctionKey, ModifierKey, BarState, EdgeEffect } from './enums' +import { RectResult, ScrollableCommonMethod, CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, NestedScrollOptions, ContentClipMode, EdgeEffectOptions, FadingEdgeOptions, ChildrenMainSize, ItemDragInfo } from './common' +import { ComponentContent } from './../ComponentContent' +import { LengthMetrics } from './../Graphics' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' +import { Resource } from './../../../api/global/resource' + +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' +import { Callback_Number_Number_Void, Callback_ItemDragInfo_Void, Callback_ItemDragInfo_Number_Number_Void, Callback_ItemDragInfo_Number_Void, Callback_ItemDragInfo_Number_Number_Boolean_Void, Callback_Number_ScrollState_Literal_Number_offsetRemain, Literal_Number_offsetRemain } from './grid' +import { OnScrollFrameBeginCallback, OnScrollFrameBeginHandlerResult } from './scroll' + +export enum ScrollState { + IDLE = 0, + Idle = 0, + SCROLL = 1, + Scroll = 1, + FLING = 2, + Fling = 2 +} +export enum ListItemAlign { + START = 0, + Start = 0, + CENTER = 1, + Center = 1, + END = 2, + End = 2 +} +export enum ListItemGroupArea { + NONE = 0, + IN_LIST_ITEM_AREA = 1, + IN_HEADER_AREA = 2, + IN_FOOTER_AREA = 3 +} +export enum StickyStyle { + NONE = 0, + None = 0, + HEADER = 1, + Header = 1, + FOOTER = 2, + Footer = 2 +} +export enum ChainEdgeEffect { + DEFAULT = 0, + STRETCH = 1 +} +export enum ScrollSnapAlign { + NONE = 0, + START = 1, + CENTER = 2, + END = 3 +} +export interface ChainAnimationOptions { + minSpace: Length; + maxSpace: Length; + conductivity?: number; + intensity?: number; + edgeEffect?: ChainEdgeEffect; + stiffness?: number; + damping?: number; +} +export interface CloseSwipeActionOptions { + onFinish?: (() => void); +} +export interface VisibleListContentInfo { + index: number; + itemGroupArea?: ListItemGroupArea; + itemIndexInGroup?: number; +} +export type OnScrollVisibleContentChangeCallback = (start: VisibleListContentInfo, end: VisibleListContentInfo) => void; +export declare class ListScroller extends Scroller { + getItemRectInGroup(index: number, indexInGroup: number): RectResult + scrollToItemInGroup(index: number, indexInGroup: number, smooth?: boolean, align?: ScrollAlign): void + closeAllSwipeActions(options?: CloseSwipeActionOptions): void + getVisibleListContentInfo(x: number, y: number): VisibleListContentInfo +} +export interface ListOptions { + initialIndex?: number; + space?: number | string; + scroller?: Scroller; +} +export type ListInterface = (options?: ListOptions) => ListAttribute; +export interface ListDividerOptions { + strokeWidth: Length; + color?: ResourceColor; + startMargin?: Length; + endMargin?: Length; +} +export type Callback_Number_Number_Number_Void = (start: number, end: number, center: number) => void; +export type Callback_Number_Boolean = (index: number) => boolean; +export type Callback_Number_Number_Boolean = (from: number, to: number) => boolean; +export interface ListAttribute extends ScrollableCommonMethod { + @memo + alignListItem(value: ListItemAlign): this; + @memo + listDirection(value: Axis): this; + @memo + scrollBar(value: BarState): this; + @memo + contentStartOffset(value: number): this; + @memo + contentEndOffset(value: number): this; + @memo + divider(value: ListDividerOptions | undefined): this; + @memo + editMode(value: boolean): this; + @memo + multiSelectable(value: boolean): this; + @memo + cachedCount(value: number): this; + @memo + chainAnimation(value: boolean): this; + @memo + chainAnimationOptions(value: ChainAnimationOptions): this; + @memo + sticky(value: StickyStyle): this; + @memo + scrollSnapAlign(value: ScrollSnapAlign): this; + @memo + nestedScroll(value: NestedScrollOptions): this; + @memo + enableScrollInteraction(value: boolean): this; + @memo + friction(value: number | Resource): this; + @memo + childrenMainSize(value: ChildrenMainSize): this; + @memo + maintainVisibleContentPosition(value: boolean): this; + @memo + onScroll(value: ((first: number,last: number) => void)): this; + @memo + onScrollIndex(value: ((start: number,end: number,center: number) => void)): this; + @memo + onScrollVisibleContentChange(value: OnScrollVisibleContentChangeCallback): this; + @memo + onReachStart(value: (() => void)): this; + @memo + onReachEnd(value: (() => void)): this; + @memo + onScrollStart(value: (() => void)): this; + @memo + onScrollStop(value: (() => void)): this; + @memo + onItemDelete(value: ((index: number) => boolean)): this; + @memo + onItemMove(value: ((from: number,to: number) => boolean)): this; + @memo + onItemDragStart(value: ((event: ItemDragInfo,itemIndex: number) => CustomBuilder)): this; + @memo + onItemDragEnter(value: ((event: ItemDragInfo) => void)): this; + @memo + onItemDragMove(value: ((event: ItemDragInfo,itemIndex: number,insertIndex: number) => void)): this; + @memo + onItemDragLeave(value: ((event: ItemDragInfo,itemIndex: number) => void)): this; + @memo + onItemDrop(value: ((event: ItemDragInfo,itemIndex: number,insertIndex: number,isSuccess: boolean) => void)): this; + @memo + onScrollFrameBegin(value: ((offset: number,state: ScrollState) => OnScrollFrameBeginHandlerResult)): this; +} +@memo +@ComponentBuilder +export declare function List( + options?: ListOptions | undefined, + @memo + content_?: () => void, +): ListAttribute diff --git a/api/arkui/component/locationButton.d.ets b/api/arkui/component/locationButton.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..4d81036abf44b0a37329644a723881de20a3eee2 --- /dev/null +++ b/api/arkui/component/locationButton.d.ets @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { ButtonType } from './button' +import { ClickEvent } from './common' +import { SecurityComponentMethod, SecurityComponentLayoutDirection } from './securityComponent' +import { Dimension, Position, Edges, LocalizedEdges, ResourceColor, Padding, Length, SizeOptions, ConstraintSizeOptions } from './units' +import { FontStyle, FontWeight, BorderStyle } from './enums' +import { Resource } from './../../../api/global/resource' +export enum LocationIconStyle { + FULL_FILLED = 0, + LINES = 1 +} +export enum LocationDescription { + CURRENT_LOCATION = 0, + ADD_LOCATION = 1, + SELECT_LOCATION = 2, + SHARE_LOCATION = 3, + SEND_LOCATION = 4, + LOCATING = 5, + LOCATION = 6, + SEND_CURRENT_LOCATION = 7, + RELOCATION = 8, + PUNCH_IN = 9, + CURRENT_POSITION = 10 +} +export interface LocationButtonOptions { + icon?: LocationIconStyle; + text?: LocationDescription; + buttonType?: ButtonType; +} +export enum LocationButtonOnClickResult { + SUCCESS = 0, + TEMPORARY_AUTHORIZATION_FAILED = 1 +} +export interface LocationButtonInterface { + invoke(): LocationButtonAttribute; + +} +export type Callback_ClickEvent_LocationButtonOnClickResult_Void = (event: ClickEvent, + result: LocationButtonOnClickResult) => void; +export interface LocationButtonAttribute extends SecurityComponentMethod { + @memo + onClick(value: ((event: ClickEvent,result: LocationButtonOnClickResult) => void)): this; +} +@memo +@ComponentBuilder +export declare function LocationButton( + options?: LocationButtonOptions | undefined, + @memo + content_?: () => void, +): LocationButtonAttribute diff --git a/api/arkui/component/mediaCachedImage.d.ets b/api/arkui/component/mediaCachedImage.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..f5582f9b969742312a1b498524566120a3b08198 --- /dev/null +++ b/api/arkui/component/mediaCachedImage.d.ets @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { PixelMap, ResourceStr, ResolutionQuality, VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, AccessibilityOptions, ColorFilter } from './units' +import { DrawableDescriptor } from './../../../api/@ohos.arkui.drawableDescriptor' +import { ImageAttribute, ResizableOptions, ImageRenderMode, DynamicRangeMode, ImageInterpolation, ImageSourceSize, Callback_Type_ImageAttribute_onComplete_callback_event_Void, Type_ImageAttribute_onComplete_callback_event, ImageErrorCallback } from './image' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, PointLightStyle } from './common' +import { ComponentContent } from './../ComponentContent' +import { HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey, ImageFit, CopyOptions } from './enums' +import { LengthMetrics } from './../Graphics' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { Resource } from './../../../api/global/resource' + + +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' +import { ImageAnalyzerConfig } from './imageCommon' +export interface ASTCResource { + sources: Array<string>; + column: number; +} +export type MediaCachedImageInterface = (src: PixelMap | ResourceStr | DrawableDescriptor | ASTCResource) + => MediaCachedImageAttribute; +export interface MediaCachedImageAttribute extends ImageAttribute { +} +@memo +@ComponentBuilder +export declare function MediaCachedImage( + src: PixelMap | ResourceStr | DrawableDescriptor | ASTCResource, + @memo + content_?: () => void, +): MediaCachedImageAttribute diff --git a/api/arkui/component/navigation.d.ets b/api/arkui/component/navigation.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..a698ccc04a59b0ae3217289a42ed3dc0ee22dc8c --- /dev/null +++ b/api/arkui/component/navigation.d.ets @@ -0,0 +1,254 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { SystemBarStyle, Length, ResourceStr, ResourceColor, Dimension, VisualEffect, Filter, UniformDataType, Blender, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, AccessibilityOptions, PixelMap } from './units' +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { Resource } from './../../../api/global/resource' +import { CustomBuilder, BlurStyle, CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, LayoutSafeAreaType, LayoutSafeAreaEdge } from './common' +import { TitleHeight, HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey } from './enums' +import { SymbolGlyphModifier } from './../../../api/arkui/SymbolGlyphModifier' + +import { LengthMetrics } from './../Graphics' +import { TextModifier } from './../../../api/arkui/TextModifier' + +export interface NavigationCommonTitle { + main: string | Resource; + sub: string | Resource; +} +export interface NavigationCustomTitle { + builder: CustomBuilder; + height: TitleHeight | Length; +} +export enum NavigationMode { + STACK = 0, + Stack = 0, + SPLIT = 1, + Split = 1, + AUTO = 2, + Auto = 2 +} +export enum NavBarPosition { + START = 0, + Start = 0, + END = 1, + End = 1 +} +export enum NavigationTitleMode { + FREE = 0, + Free = 0, + FULL = 1, + Full = 1, + MINI = 2, + Mini = 2 +} +export interface NavigationMenuItem { + value: string | Resource; + icon?: string | Resource; + symbolIcon?: SymbolGlyphModifier; + isEnabled?: boolean; + action?: (() => void); +} +export interface PopInfo { + info: NavPathInfo; + result: Object; +} +export type Callback_PopInfo_Void = (parameter: PopInfo) => void; +export interface NavPathInfo { + name: string; + param?: object; + onPop?: ((parameter: PopInfo) => void); + isEntry?: boolean; +} +export enum LaunchMode { + STANDARD = 0, + MOVE_TO_TOP_SINGLETON = 1, + POP_TO_SINGLETON = 2, + NEW_INSTANCE = 3 +} +export interface NavigationOptions { + launchMode?: LaunchMode; + animated?: boolean; +} +export declare class NavPathStack { + pushPath(info: NavPathInfo, animated?: boolean): void + + pushDestination(info: NavPathInfo, animated?: boolean): Promise<void> + + pushPathByName(name: string, param: object, animated?: boolean): void + + pushDestinationByName(name: string, param: Object, animated?: boolean): Promise<void> + + replacePath(info: NavPathInfo, animated?: boolean): void + + replaceDestination(info: NavPathInfo, options?: NavigationOptions): Promise<void> + replacePathByName(name: string, param: Object, animated?: boolean): void + removeByIndexes(indexes: Array<number>): number + removeByName(name: string): number + removeByNavDestinationId(navDestinationId: string): boolean + pop(animated?: boolean): NavPathInfo | undefined + + popToName(name: string, animated?: boolean): number + + popToIndex(index: number, animated?: boolean): void + + moveToTop(name: string, animated?: boolean): number + moveIndexToTop(index: number, animated?: boolean): void + clear(animated?: boolean): void + getAllPathName(): Array<string> + getParamByIndex(index: number): object | undefined + getParamByName(name: string): Array<object> + getIndexByName(name: string): Array<number> + getParent(): NavPathStack | undefined + size(): number + disableAnimation(value: boolean): void + setInterception(interception: NavigationInterception): void +} +export type NavBar = string; +export type InterceptionShowCallback = (from: NavBar, to: NavBar, + operation: NavigationOperation, isAnimated: boolean) => void; +export type InterceptionModeCallback = (mode: NavigationMode) => void; +export interface NavigationInterception { + willShow?: InterceptionShowCallback; + didShow?: InterceptionShowCallback; + modeChange?: InterceptionModeCallback; +} +export interface NavigationInterface { + invoke(): NavigationAttribute; + +} +export enum ToolbarItemStatus { + NORMAL = 0, + DISABLED = 1, + ACTIVE = 2 +} +export enum NavigationOperation { + PUSH = 1, + POP = 2, + REPLACE = 3 +} +export interface ToolbarItem { + value: ResourceStr; + icon?: ResourceStr; + symbolIcon?: SymbolGlyphModifier; + action?: (() => void); + status?: ToolbarItemStatus; + activeIcon?: ResourceStr; + activeSymbolIcon?: SymbolGlyphModifier; +} +export interface NavigationTitleOptions { + backgroundColor?: ResourceColor; + backgroundBlurStyle?: BlurStyle; + barStyle?: BarStyle; + paddingStart?: LengthMetrics; + paddingEnd?: LengthMetrics; + mainTitleModifier?: TextModifier; + subTitleModifier?: TextModifier; + enableHoverMode?: boolean; +} +export enum BarStyle { + STANDARD = 0, + STACK = 1, + SAFE_AREA_PADDING = 2 +} +export interface NavigationToolbarOptions { + backgroundColor?: ResourceColor; + backgroundBlurStyle?: BlurStyle; + barStyle?: BarStyle; +} +export type Tuple_Dimension_Dimension = [ + Dimension, + Dimension +] +export type Callback_NavigationTitleMode_Void = (titleMode: NavigationTitleMode) => void; +export type Callback_NavigationMode_Void = (mode: NavigationMode) => void; +export type Callback_String_Unknown_Void = (name: string, param: object) => void; +export type Type_NavigationAttribute_customNavContentTransition_delegate = (from: NavContentInfo, to: NavContentInfo, + operation: NavigationOperation) => NavigationAnimatedTransition | undefined; +export interface NavigationAttribute extends CommonMethod { + @memo + navBarWidth(value: Length): this; + @memo + navBarPosition(value: NavBarPosition): this; + @memo + navBarWidthRange(value: [ Dimension, Dimension ]): this; + @memo + minContentWidth(value: Dimension): this; + @memo + mode(value: NavigationMode): this; + @memo + backButtonIcon(value: string | PixelMap | Resource | SymbolGlyphModifier): this; + @memo + hideNavBar(value: boolean): this; + @memo + subTitle(value: string): this; + @memo + hideTitleBar(value: boolean): this; + @memo + hideBackButton(value: boolean): this; + @memo + titleMode(value: NavigationTitleMode): this; + @memo + menus(value: Array<NavigationMenuItem> | CustomBuilder): this; + @memo + toolBar(value: Object | CustomBuilder): this; + @memo + hideToolBar(value: boolean): this; + @memo + onTitleModeChange(value: ((titleMode: NavigationTitleMode) => void)): this; + @memo + onNavBarStateChange(value: ((parameter: boolean) => void)): this; + @memo + onNavigationModeChange(value: ((mode: NavigationMode) => void)): this; + @memo + navDestination(value: ((name: string,param: object) => void)): this; + @memo + customNavContentTransition(value: ((from: NavContentInfo,to: NavContentInfo, + operation: NavigationOperation) => NavigationAnimatedTransition | undefined)): this; + @memo + systemBarStyle(value: SystemBarStyle | undefined): this; + @memo + recoverable(value: boolean | undefined): this; + @memo + enableDragBar(value: boolean | undefined): this; +} +export type Callback_NavigationTransitionProxy_Void = (transitionProxy: NavigationTransitionProxy) => void; +export interface NavigationAnimatedTransition { + onTransitionEnd?: ((parameter: boolean) => void); + timeout?: number; + isInteractive?: boolean; + transition: ((transitionProxy: NavigationTransitionProxy) => void); +} +export interface NavigationTransitionProxy { + from: NavContentInfo; + to: NavContentInfo; + isInteractive?: boolean; + finishTransition(): void + cancelTransition(): void + updateTransition(progress: number): void +} +export interface NavContentInfo { + name?: string; + index: number; + param?: Object; + navDestinationId?: string; +} diff --git a/api/arkui/component/pasteButton.d.ets b/api/arkui/component/pasteButton.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..cc40d57a6d7a31ee5ea29eb8e9b551c2c27810da --- /dev/null +++ b/api/arkui/component/pasteButton.d.ets @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { ButtonType } from './button' +import { ClickEvent } from './common' +import { SecurityComponentMethod, SecurityComponentLayoutDirection } from './securityComponent' +import { Dimension, Position, Edges, LocalizedEdges, ResourceColor, Padding, Length, SizeOptions, ConstraintSizeOptions } from './units' +import { FontStyle, FontWeight, BorderStyle } from './enums' +import { Resource } from './../../../api/global/resource' +export enum PasteIconStyle { + LINES = 0 +} +export enum PasteDescription { + PASTE = 0 +} +export interface PasteButtonOptions { + icon?: PasteIconStyle; + text?: PasteDescription; + buttonType?: ButtonType; +} +export enum PasteButtonOnClickResult { + SUCCESS = 0, + TEMPORARY_AUTHORIZATION_FAILED = 1 +} +export interface PasteButtonInterface { + invoke(): PasteButtonAttribute; + +} +export type Callback_ClickEvent_PasteButtonOnClickResult_Void = (event: ClickEvent, + result: PasteButtonOnClickResult) => void; +export interface PasteButtonAttribute extends SecurityComponentMethod { + @memo + onClick(value: ((event: ClickEvent,result: PasteButtonOnClickResult) => void)): this; +} +@memo +@ComponentBuilder +export declare function PasteButton( + options?: PasteButtonOptions | undefined, + @memo + content_?: () => void, +): PasteButtonAttribute diff --git a/api/arkui/component/progress.d.ets b/api/arkui/component/progress.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..e901a518f577198dfd2afd3b0dbdd9cc6fd44909 --- /dev/null +++ b/api/arkui/component/progress.d.ets @@ -0,0 +1,123 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { Length, PX, VP, LPX, ResourceColor, Font, VisualEffect, Filter, UniformDataType, Blender, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, PixelMap } from './units' +import { Resource } from './../../../api/global/resource' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, ContentModifier, CommonConfiguration } from './common' + +export interface ProgressOptions { + value: number; + total?: number; + style?: ProgressStyle; + type?: ProgressType; +} +export enum ProgressType { + LINEAR = 0, + Linear = 0, + RING = 1, + Ring = 1, + ECLIPSE = 2, + Eclipse = 2, + SCALE_RING = 3, + ScaleRing = 3, + CAPSULE = 4, + Capsule = 4 +} +export enum ProgressStatus { + LOADING = 0, + PROGRESSING = 1 +} +export interface ProgressStyleOptions extends CommonProgressStyleOptions { + strokeWidth?: Length; + scaleCount?: number; + scaleWidth?: Length; +} +export interface CommonProgressStyleOptions { + enableSmoothEffect?: boolean; +} +export interface ScanEffectOptions { + enableScanEffect?: boolean; +} +export interface EclipseStyleOptions extends CommonProgressStyleOptions { +} +export interface ScaleRingStyleOptions extends CommonProgressStyleOptions { + strokeWidth?: Length; + scaleWidth?: Length; + scaleCount?: number; +} +export interface RingStyleOptions extends ScanEffectOptions { + strokeWidth?: Length; + shadow?: boolean; + status?: ProgressStatus; +} +export interface LinearStyleOptions extends ScanEffectOptions { + strokeWidth?: Length; + strokeRadius?: PX | VP | LPX | Resource; +} +export interface CapsuleStyleOptions extends ScanEffectOptions { + borderColor?: ResourceColor; + borderWidth?: Length; + content?: string; + font?: Font; + fontColor?: ResourceColor; + showDefaultPercentage?: boolean; +} +export enum ProgressStyle { + LINEAR = 0, + Linear = 0, + RING = 1, + Ring = 1, + ECLIPSE = 2, + Eclipse = 2, + SCALE_RING = 3, + ScaleRing = 3, + CAPSULE = 4, + Capsule = 4 +} +export interface ProgressStyleMap { +} +export type ProgressInterface = (options: ProgressOptions) => ProgressAttribute; +export interface ProgressAttribute extends CommonMethod { + @memo + value(value: number): this; + @memo + color(value: ResourceColor): this; + @memo + style(value: LinearStyleOptions | RingStyleOptions | CapsuleStyleOptions | ProgressStyleOptions): this; + @memo + privacySensitive(value: boolean | undefined): this; + @memo + contentModifier(value: ContentModifier<ProgressConfiguration>): this; +} +export interface ProgressConfiguration extends CommonConfiguration<ProgressConfiguration> { + value: number; + total: number; +} +@memo +@ComponentBuilder +export declare function Progress( + options: ProgressOptions, + @memo + content_?: () => void, +): ProgressAttribute diff --git a/api/arkui/component/resources.d.ets b/api/arkui/component/resources.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..2a749e6b54c909d0a9598d96f9a0c00e95dbadbc --- /dev/null +++ b/api/arkui/component/resources.d.ets @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { Resource } from './../../../api/global/resource' + +/** + * Obtain the resource in resources, used by plugin. + * + * @param { string } bundleName + * @param { string } moduleName + * @param { string } name + * @param { Object[] } params + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +export declare function _r(bundleName: string, moduleName: string, name: string, ...params: Object[]): Resource; + +/** + * Obtain the resource in resources/rawfile, used by plugin. + * + * @param { string } bundleName + * @param { string } moduleName + * @param { string } name + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +export declare function _rawfile(bundleName: string, moduleName: string, name: string): Resource; diff --git a/api/arkui/component/row.d.ets b/api/arkui/component/row.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..cfba367dca33869954d1a0b5cf28adbde24c24c8 --- /dev/null +++ b/api/arkui/component/row.d.ets @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, PointLightStyle } from './common' +import { VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, PixelMap } from './units' +import { ComponentContent } from './../ComponentContent' +import { HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey, VerticalAlign, FlexAlign } from './enums' +import { LengthMetrics } from './../Graphics' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' +import { Resource } from './../../../api/global/resource' + + +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' +export interface RowOptions { + space?: string | number; +} +export type RowInterface = (options?: RowOptions) => RowAttribute; +export interface RowAttribute extends CommonMethod { + @memo + alignItems(value: VerticalAlign): this; + @memo + justifyContent(value: FlexAlign): this; + @memo + pointLight(value: PointLightStyle): this; + @memo + reverse(value: boolean | undefined): this; +} +@memo +@ComponentBuilder +export declare function Row( + options?: RowOptions | undefined, + @memo + content_?: () => void, +): RowAttribute diff --git a/api/arkui/component/saveButton.d.ets b/api/arkui/component/saveButton.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..0189578297647a673f5e60588fce1f464476d45c --- /dev/null +++ b/api/arkui/component/saveButton.d.ets @@ -0,0 +1,75 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { ButtonType } from './button' +import { ClickEvent } from './common' +import { SecurityComponentMethod, SecurityComponentLayoutDirection } from './securityComponent' +import { Dimension, Position, Edges, LocalizedEdges, ResourceColor, Padding, Length, SizeOptions, ConstraintSizeOptions } from './units' +import { FontStyle, FontWeight, BorderStyle } from './enums' +import { Resource } from './../../../api/global/resource' +export enum SaveIconStyle { + FULL_FILLED = 0, + LINES = 1, + PICTURE = 2 +} +export enum SaveDescription { + DOWNLOAD = 0, + DOWNLOAD_FILE = 1, + SAVE = 2, + SAVE_IMAGE = 3, + SAVE_FILE = 4, + DOWNLOAD_AND_SHARE = 5, + RECEIVE = 6, + CONTINUE_TO_RECEIVE = 7, + SAVE_TO_GALLERY = 8, + EXPORT_TO_GALLERY = 9, + QUICK_SAVE_TO_GALLERY = 10, + RESAVE_TO_GALLERY = 11 +} +export interface SaveButtonOptions { + icon?: SaveIconStyle; + text?: SaveDescription; + buttonType?: ButtonType; +} +export enum SaveButtonOnClickResult { + SUCCESS = 0, + TEMPORARY_AUTHORIZATION_FAILED = 1 +} +export interface SaveButtonInterface { + invoke(): SaveButtonAttribute; + +} +export type Callback_ClickEvent_SaveButtonOnClickResult_Void = (event: ClickEvent, + result: SaveButtonOnClickResult) => void; +export interface SaveButtonAttribute extends SecurityComponentMethod { + @memo + onClick(value: ((event: ClickEvent,result: SaveButtonOnClickResult) => void)): this; +} +@memo +@ComponentBuilder +export declare function SaveButton( + options?: SaveButtonOptions | undefined, + @memo + content_?: () => void, +): SaveButtonAttribute diff --git a/api/arkui/component/scroll.d.ets b/api/arkui/component/scroll.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..c7189c5c1ecbde04df886310cc92af786cc92822 --- /dev/null +++ b/api/arkui/component/scroll.d.ets @@ -0,0 +1,158 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { LengthMetrics } from './../Graphics' +import { Curve, Axis, Edge, HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, ResponseType, FunctionKey, ModifierKey, BarState, EdgeEffect, ScrollSource } from './enums' +import { ICurve, RectResult, ScrollableCommonMethod, CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, NestedScrollOptions, ContentClipMode, EdgeEffectOptions, FadingEdgeOptions } from './common' +import { Dimension, Length, VisualEffect, Filter, UniformDataType, Blender, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, VoidCallback, PixelMap } from './units' +import { ScrollSnapAlign, ScrollState } from './list' +import { ComponentContent } from './../ComponentContent' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' +import { Resource } from './../../../api/global/resource' + + +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' +import { Callback_Number_Number_Void } from './grid' +export enum ScrollDirection { + VERTICAL = 0, + Vertical = 0, + HORIZONTAL = 1, + Horizontal = 1, + FREE = 2, + Free = 2, + NONE = 3, + None = 3 +} +export enum ScrollAlign { + START = 0, + CENTER = 1, + END = 2, + AUTO = 3 +} +export interface OffsetResult { + xOffset: number; + yOffset: number; +} +export interface ScrollEdgeOptions { + velocity?: number; +} +export interface ScrollToIndexOptions { + extraOffset?: LengthMetrics; +} +export interface ScrollAnimationOptions { + duration?: number; + curve?: Curve | ICurve; + canOverScroll?: boolean; +} +export interface OffsetOptions { + xOffset?: Dimension; + yOffset?: Dimension; +} +export interface Literal_Boolean_next_Axis_direction { + next: boolean; + direction?: Axis; +} +export declare class Scroller { + scrollTo(options: ScrollOptions): undefined + scrollEdge(value: Edge, options?: ScrollEdgeOptions): undefined + fling(velocity: number): void + scrollPage(value: ScrollPageOptions): undefined + + currentOffset(): OffsetResult + scrollToIndex(value: number, smooth?: boolean, align?: ScrollAlign, options?: ScrollToIndexOptions): undefined + scrollBy(dx: Length, dy: Length): undefined + isAtEnd(): boolean + getItemRect(index: number): RectResult + getItemIndex(x: number, y: number): number +} +export interface ScrollOptions { + xOffset: number | string; + yOffset: number | string; + animation?: ScrollAnimationOptions | boolean; +} +export interface ScrollPageOptions { + next: boolean; + animation?: boolean; +} +export interface ScrollSnapOptions { + snapAlign: ScrollSnapAlign; + snapPagination?: Dimension | Array<Dimension>; + enableSnapToStart?: boolean; + enableSnapToEnd?: boolean; +} +export type ScrollInterface = (scroller?: Scroller) => ScrollAttribute; +export type OnScrollEdgeCallback = (side: Edge) => void; +export interface OnScrollFrameBeginHandlerResult { + offsetRemain: number; +} +export type OnScrollFrameBeginCallback = (offset: number, state: ScrollState) => OnScrollFrameBeginHandlerResult; +export interface ScrollAttribute extends ScrollableCommonMethod { + @memo + scrollable(value: ScrollDirection): this; + @memo + onScroll(value: ((first: number,last: number) => void)): this; + @memo + onWillScroll(value: ScrollOnWillScrollCallback | undefined): this; + @memo + onDidScroll(value: ScrollOnScrollCallback): this; + @memo + onScrollEdge(value: OnScrollEdgeCallback): this; + @memo + onScrollStart(value: VoidCallback): this; + @memo + onScrollEnd(value: (() => void)): this; + @memo + onScrollStop(value: VoidCallback): this; + @memo + scrollBar(value: BarState): this; + @memo + scrollBarColor(value: Color | number | string): this; + @memo + scrollBarWidth(value: number | string): this; + @memo + onScrollFrameBegin(value: OnScrollFrameBeginCallback): this; + @memo + nestedScroll(value: NestedScrollOptions): this; + @memo + enableScrollInteraction(value: boolean): this; + @memo + friction(value: number | Resource): this; + @memo + scrollSnap(value: ScrollSnapOptions): this; + @memo + enablePaging(value: boolean): this; + @memo + initialOffset(value: OffsetOptions): this; +} +export type ScrollOnScrollCallback = (scrollOffset: number, scrollState: ScrollState) => void; +export type ScrollOnWillScrollCallback = (xOffset: number, yOffset: number, scrollState: ScrollState, + scrollSource: ScrollSource) => OffsetResult; +@memo +@ComponentBuilder +export declare function Scroll( + scroller?: Scroller | undefined, + @memo + content_?: () => void, +): ScrollAttribute diff --git a/api/arkui/component/scrollBar.d.ets b/api/arkui/component/scrollBar.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..66c465ef7bcb758e588842916f8c9b6883f153ca --- /dev/null +++ b/api/arkui/component/scrollBar.d.ets @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { Scroller } from './scroll' +import { BarState, HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey } from './enums' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback } from './common' +import { VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, PixelMap } from './units' +import { ComponentContent } from './../ComponentContent' +import { LengthMetrics } from './../Graphics' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' +import { Resource } from './../../../api/global/resource' + + +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' +export enum ScrollBarDirection { + VERTICAL = 0, + Vertical = 0, + HORIZONTAL = 1, + Horizontal = 1 +} +export interface ScrollBarOptions { + scroller: Scroller; + direction?: ScrollBarDirection; + state?: BarState; +} +export type ScrollBarInterface = (value: ScrollBarOptions) => ScrollBarAttribute; +export interface ScrollBarAttribute extends CommonMethod { + @memo + enableNestedScroll(value: boolean | undefined): this; +} +@memo +@ComponentBuilder +export declare function ScrollBar( + value: ScrollBarOptions, + @memo + content_?: () => void, +): ScrollBarAttribute diff --git a/api/arkui/component/securityComponent.d.ets b/api/arkui/component/securityComponent.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..14acb144b6fbf890946a7cb0cc38ea036199f1c7 --- /dev/null +++ b/api/arkui/component/securityComponent.d.ets @@ -0,0 +1,79 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { Dimension, Position, Edges, LocalizedEdges, ResourceColor, Padding, Length, SizeOptions, ConstraintSizeOptions } from './units' +import { FontStyle, FontWeight, BorderStyle } from './enums' +import { Resource } from './../../../api/global/resource' +export enum SecurityComponentLayoutDirection { + HORIZONTAL = 0, + VERTICAL = 1 +} +export interface SecurityComponentMethod { + @memo + iconSize(value: Dimension): this; + @memo + layoutDirection(value: SecurityComponentLayoutDirection): this; + @memo + position(value: Position): this; + @memo + markAnchor(value: Position): this; + @memo + offset(value: Position | Edges | LocalizedEdges): this; + @memo + fontSize(value: Dimension): this; + @memo + fontStyle(value: FontStyle): this; + @memo + fontWeight(value: number | FontWeight | string): this; + @memo + fontFamily(value: string | Resource): this; + @memo + fontColor(value: ResourceColor): this; + @memo + iconColor(value: ResourceColor): this; + @memo + backgroundColor(value: ResourceColor): this; + @memo + borderStyle(value: BorderStyle): this; + @memo + borderWidth(value: Dimension): this; + @memo + borderColor(value: ResourceColor): this; + @memo + borderRadius(value: Dimension): this; + @memo + padding(value: Padding | Dimension): this; + @memo + textIconSpace(value: Dimension): this; + @memo + key(value: string): this; + @memo + width(value: Length): this; + @memo + height(value: Length): this; + @memo + size(value: SizeOptions): this; + @memo + constraintSize(value: ConstraintSizeOptions): this; +} diff --git a/api/arkui/component/stack.d.ets b/api/arkui/component/stack.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..e7a13f8a8f6a3af3e81d9b59ba9d4dcde41c271a --- /dev/null +++ b/api/arkui/component/stack.d.ets @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { Alignment, HitTestMode, ImageSize, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey } from './enums' +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, PointLightStyle } from './common' +import { VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, PixelMap } from './units' +import { ComponentContent } from './../ComponentContent' +import { LengthMetrics } from './../Graphics' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' +import { Resource } from './../../../api/global/resource' + + +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' +export interface StackOptions { + alignContent?: Alignment; +} +export type StackInterface = (options?: StackOptions) => StackAttribute; +export interface StackAttribute extends CommonMethod { + @memo + alignContent(value: Alignment): this; + @memo + pointLight(value: PointLightStyle): this; +} +@memo +@ComponentBuilder +export declare function Stack( + options?: StackOptions | undefined, + @memo + content_?: () => void, +): StackAttribute diff --git a/api/arkui/component/symbolglyph.d.ets b/api/arkui/component/symbolglyph.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..c495a4f81166d61e37367495f4698fb09b285dfe --- /dev/null +++ b/api/arkui/component/symbolglyph.d.ets @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { Resource } from './../../../api/global/resource' +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback } from './common' +import { VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, PixelMap } from './units' +import { ComponentContent } from './../ComponentContent' +import { HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey, FontWeight } from './enums' +import { LengthMetrics } from './../Graphics' +import { CircleShape, EllipseShape, PathShape, RectShape } from './../../../api/@ohos.arkui.shape' +import { ResizableOptions } from './image' + + +import { GestureInfo, BaseGestureEvent, GestureJudgeResult, GestureType, GestureMask } from './gesture' +declare interface SymbolEffect { +} +declare enum EffectScope { + LAYER = 0, + WHOLE = 1, +} +declare enum EffectDirection { + DOWN = 0, + UP = 1, +} +export type SymbolGlyphInterface = (value?: Resource) => SymbolGlyphAttribute; +export enum SymbolRenderingStrategy { + SINGLE = 0, + MULTIPLE_COLOR = 1, + MULTIPLE_OPACITY = 2 +} +export enum SymbolEffectStrategy { + NONE = 0, + SCALE = 1, + HIERARCHICAL = 2 +} +export enum EffectFillStyle { + CUMULATIVE = 0, + ITERATIVE = 1 +} +export interface HierarchicalSymbolEffect extends SymbolEffect { + fillStyle?: EffectFillStyle; +} +export interface AppearSymbolEffect extends SymbolEffect { + scope?: EffectScope; +} +export interface DisappearSymbolEffect extends SymbolEffect { + scope?: EffectScope; +} +export interface BounceSymbolEffect extends SymbolEffect { + scope?: EffectScope; + direction?: EffectDirection; +} +export interface PulseSymbolEffect extends SymbolEffect { +} +export interface SymbolGlyphAttribute extends CommonMethod { + @memo + fontSize(value: number | string | Resource): this; + @memo + fontColor(value: Array<ResourceColor>): this; + @memo + fontWeight(value: number | FontWeight | string): this; + @memo + effectStrategy(value: SymbolEffectStrategy): this; + @memo + renderingStrategy(value: SymbolRenderingStrategy): this; +} +@memo +@ComponentBuilder +export declare function SymbolGlyph( + value?: Resource | undefined, + @memo + content_?: () => void, +): SymbolGlyphAttribute diff --git a/api/arkui/component/text.d.ets b/api/arkui/component/text.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..bc4bcc9993a20446cb6fc6494e2c92d6cefad66c --- /dev/null +++ b/api/arkui/component/text.d.ets @@ -0,0 +1,133 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { TextOverflow, HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey, FontStyle, FontWeight, TextAlign, TextCase, CopyOptions, TextHeightAdaptivePolicy, WordBreak, LineBreakStrategy, EllipsisMode, TextSelectableMode } from './enums' +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { Resource } from './../../../api/global/resource' +import { CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, TouchEvent, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, CustomBuilder, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback } from './common' +import { VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, Position, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions, Font, PixelMap } from './units' +import { ComponentContent } from './../ComponentContent' +import { LengthMetrics } from './../Graphics' + +export interface TextOverflowOptions { + overflow: TextOverflow; +} +export type TextInterface = (content?: string | Resource, value?: TextOptions) => TextAttribute; +export interface TextAttribute extends CommonMethod { + @memo + font(value: Font): this; + @memo + fontColor(value: ResourceColor): this; + @memo + fontSize(value: number | string | Resource): this; + @memo + minFontSize(value: number | string | Resource): this; + @memo + maxFontSize(value: number | string | Resource): this; + @memo + minFontScale(value: number | Resource): this; + @memo + maxFontScale(value: number | Resource): this; + @memo + fontStyle(value: FontStyle): this; + @memo + fontWeight(value: number | FontWeight | string): this; + @memo + lineSpacing(value: LengthMetrics): this; + @memo + textAlign(value: TextAlign): this; + @memo + lineHeight(value: number | string | Resource): this; + @memo + textOverflow(value: TextOverflowOptions): this; + @memo + fontFamily(value: string | Resource): this; + @memo + maxLines(value: number): this; + @memo + letterSpacing(value: number | string): this; + @memo + textCase(value: TextCase): this; + @memo + baselineOffset(value: number | string): this; + @memo + copyOption(value: CopyOptions): this; + @memo + draggable(value: boolean): this; + @memo + textShadow(value: ShadowOptions | Array<ShadowOptions>): this; + @memo + heightAdaptivePolicy(value: TextHeightAdaptivePolicy): this; + @memo + textIndent(value: Length): this; + @memo + wordBreak(value: WordBreak): this; + @memo + lineBreakStrategy(value: LineBreakStrategy): this; + @memo + onCopy(value: ((breakpoints: string) => void)): this; + @memo + caretColor(value: ResourceColor): this; + @memo + selectedBackgroundColor(value: ResourceColor): this; + @memo + ellipsisMode(value: EllipsisMode): this; + @memo + enableDataDetector(value: boolean): this; + @memo + onTextSelectionChange(value: ((first: number,last: number) => void)): this; + @memo + fontFeature(value: string): this; + @memo + privacySensitive(value: boolean): this; + @memo + textSelectable(value: TextSelectableMode): this; + @memo + halfLeading(value: boolean): this; + @memo + enableHapticFeedback(value: boolean): this; +} +export enum TextSpanType { + TEXT = 0, + IMAGE = 1, + MIXED = 2 +} +export enum TextResponseType { + RIGHT_CLICK = 0, + LONG_PRESS = 1, + SELECT = 2 +} +export interface TextOptions { + controller: TextController; +} +export declare class TextController { + closeSelectionMenu(): void +} +@memo +@ComponentBuilder +export declare function Text( + content?: string | Resource | undefined, + value?: TextOptions | undefined, + @memo + content_?: () => void, +): TextAttribute diff --git a/api/arkui/component/textCommon.d.ets b/api/arkui/component/textCommon.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..afc59ae707dc41974ae5f7d6c982b2f6d4037a61 --- /dev/null +++ b/api/arkui/component/textCommon.d.ets @@ -0,0 +1,119 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { ResourceColor, Length, ResourceStr } from './units' +import { SelectionOptions } from './common' +import { TextDecorationType, TextDecorationStyle } from './enums' +export enum TextDataDetectorType { + PHONE_NUMBER = 0, + URL = 1, + EMAIL = 2, + ADDRESS = 3, + DATE_TIME = 4 +} +export interface TextDataDetectorConfig { + types: Array<TextDataDetectorType>; + onDetectResultUpdate?: ((breakpoints: string) => void); + color?: ResourceColor; +} +export interface TextRange { + start?: number; + end?: number; +} +export interface InsertValue { + insertOffset: number; + insertValue: string; +} +export enum TextDeleteDirection { + BACKWARD = 0, + FORWARD = 1 +} +export enum MenuType { + SELECTION_MENU = 0, + PREVIEW_MENU = 1 +} +export interface DeleteValue { + deleteOffset: number; + direction: TextDeleteDirection; + deleteValue: string; +} +export type OnDidChangeCallback = (rangeBefore: TextRange, rangeAfter: TextRange) => void; +export type EditableTextOnChangeCallback = (value: string, previewText?: PreviewText) => void; +export interface TextBaseController { + setSelection(selectionStart: number, selectionEnd: number, options?: SelectionOptions): void + closeSelectionMenu(): void + getLayoutManager(): LayoutManager +} +export interface TextEditControllerEx extends TextBaseController { + isEditing(): boolean + stopEditing(): void + setCaretOffset(offset: number): boolean + getCaretOffset(): number + getPreviewText(): PreviewText +} + +export type Callback_StyledStringChangeValue_Boolean = (parameter: StyledStringChangeValue) => boolean; +export interface StyledStringChangedListener { + onWillChange?: ((parameter: StyledStringChangeValue) => boolean); + onDidChange?: OnDidChangeCallback; +} +export interface StyledStringChangeValue { + range: TextRange; +} +export interface LayoutManager { + getLineCount(): number + getGlyphPositionAtCoordinate(x: number, y: number): PositionWithAffinity +} +export interface PositionWithAffinity { + position: number; +} +export interface CaretStyle { + width?: Length; + color?: ResourceColor; +} +export interface TextMenuItemId { + of(id: ResourceStr): TextMenuItemId + equals(id: TextMenuItemId): boolean +} +export interface PreviewText { + offset: number; + value: string; +} +export interface TextMenuItem { + content: ResourceStr; + icon?: ResourceStr; + id: TextMenuItemId; +} +export interface EditMenuOptions { + onCreateMenu(menuItems: Array<TextMenuItem>): Array<TextMenuItem> + onMenuItemClick(menuItem: TextMenuItem, range: TextRange): boolean +} +export interface DecorationStyleResult { + type: TextDecorationType; + color: ResourceColor; + style?: TextDecorationStyle; +} +export interface FontSettingOptions { + enableVariableFontWeight?: boolean; +} \ No newline at end of file diff --git a/api/arkui/component/units.d.ets b/api/arkui/component/units.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..4526b8f3ae02ae1d4fd06758a989896aeda5c158 --- /dev/null +++ b/api/arkui/component/units.d.ets @@ -0,0 +1,241 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { Resource as Resource_ } from './../../../api/global/resource' +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { LengthMetrics, LengthMetricsUnit } from './../Graphics' +import { BorderStyle, Color, FontWeight, FontStyle } from './enums' +import { OutlineStyle } from './common' +import _want from '../../../api/@ohos.app.ability.Want' +import _context from '../../application/Context' +import _image from '../../../api/@ohos.multimedia.image' +import _pointer from '../../../api/@ohos.multimodalInput.pointer' +import _unifieddatachannel from '../../../api/@ohos.data.unifiedDataChannel' +import _uniformtypedescriptor from '../../../api/@ohos.data.uniformTypeDescriptor' +import _observer from '../../../api/@ohos.arkui.observer' +import _uieffect from '../../../api/@ohos.graphics.uiEffect' +import _intl from '../../../api/@ohos.intl' +import _window from '../../../api/@ohos.window' +export type Want = _want +export type Context = _context +export type PixelMap = _image.PixelMap +export type ResolutionQuality = NullishType +export type PointerStyle = _pointer.PointerStyle +export type UnifiedData = _unifieddatachannel.UnifiedData +export type Summary = _unifieddatachannel.Summary +export type UniformDataType = _uniformtypedescriptor.UniformDataType +export type NavDestinationInfo = _observer.NavDestinationInfo +export type NavigationInfo = _observer.NavigationInfo +export type RouterPageInfo = _observer.RouterPageInfo +export type VisualEffect = _uieffect.VisualEffect +export type Filter = _uieffect.Filter +export type Blender = NullishType +export type DateTimeOptions = _intl.DateTimeOptions +export type WindowStatusType = _window.WindowStatusType +export type SystemBarStyle = _window.SystemBarStyle +export type RestrictedWorker = string +export type Length = string | number | Resource_; +export type PX = string; +export type VP = string | number; +export type FP = string; +export type LPX = string; +export type Percentage = string; +export type Degree = string; +export type Dimension = PX | VP | FP | LPX | Percentage | Resource_; +export type ResourceStr = string | Resource_; +export type Resource = Resource_ +export interface Padding { + top?: Length; + right?: Length; + bottom?: Length; + left?: Length; +} +export interface LocalizedPadding { + top?: LengthMetrics; + end?: LengthMetrics; + bottom?: LengthMetrics; + start?: LengthMetrics; +} +export type Margin = Padding; +export type EdgeWidth = EdgeWidths; +export interface EdgeWidths { + top?: Length; + right?: Length; + bottom?: Length; + left?: Length; +} +export interface LocalizedEdgeWidths { + top?: LengthMetrics; + end?: LengthMetrics; + bottom?: LengthMetrics; + start?: LengthMetrics; +} +export interface EdgeOutlineWidths { + top?: Dimension; + right?: Dimension; + bottom?: Dimension; + left?: Dimension; +} +export interface BorderRadiuses { + topLeft?: Length; + topRight?: Length; + bottomLeft?: Length; + bottomRight?: Length; +} +export interface LocalizedBorderRadiuses { + topStart?: LengthMetrics; + topEnd?: LengthMetrics; + bottomStart?: LengthMetrics; + bottomEnd?: LengthMetrics; +} +export interface OutlineRadiuses { + topLeft?: Dimension; + topRight?: Dimension; + bottomLeft?: Dimension; + bottomRight?: Dimension; +} +export interface EdgeColors { + top?: ResourceColor; + right?: ResourceColor; + bottom?: ResourceColor; + left?: ResourceColor; +} +export interface LocalizedEdgeColors { + top?: ResourceColor; + end?: ResourceColor; + bottom?: ResourceColor; + start?: ResourceColor; +} +export type LocalizedMargin = LocalizedPadding; +export interface EdgeStyles { + top?: BorderStyle; + right?: BorderStyle; + bottom?: BorderStyle; + left?: BorderStyle; +} +export interface EdgeOutlineStyles { + top?: OutlineStyle; + right?: OutlineStyle; + bottom?: OutlineStyle; + left?: OutlineStyle; +} +export interface Offset { + dx: Length; + dy: Length; +} +export type ResourceColor = Color | number | string | Resource_; +export interface LengthConstrain { + minLength: Length; + maxLength: Length; +} +export type VoidCallback = () => void; +export interface Font { + size?: Length; + weight?: FontWeight | number | string; + family?: string | Resource_; + style?: FontStyle; +} +export interface Area { + width: Length; + height: Length; + position: Position; + globalPosition: Position; +} +export interface Position { + x?: Length; + y?: Length; +} +export interface LocalizedPosition { + start?: LengthMetrics; + top?: LengthMetrics; +} +export interface Edges { + top?: Dimension; + left?: Dimension; + bottom?: Dimension; + right?: Dimension; +} +export interface LocalizedEdges { + top?: LengthMetrics; + start?: LengthMetrics; + bottom?: LengthMetrics; + end?: LengthMetrics; +} +export interface Bias { + horizontal?: number; + vertical?: number; +} +export interface ConstraintSizeOptions { + minWidth?: Length; + maxWidth?: Length; + minHeight?: Length; + maxHeight?: Length; +} +export interface SizeOptions { + width?: Length; + height?: Length; +} +export interface BorderOptions { + width?: EdgeWidths | Length | LocalizedEdgeWidths; + color?: EdgeColors | ResourceColor | LocalizedEdgeColors; + radius?: BorderRadiuses | Length | LocalizedBorderRadiuses; + style?: EdgeStyles | BorderStyle; + dashGap?: EdgeWidths | LengthMetrics | LocalizedEdgeWidths; + dashWidth?: EdgeWidths | LengthMetrics | LocalizedEdgeWidths; +} +export interface OutlineOptions { + width?: EdgeOutlineWidths | Dimension; + color?: EdgeColors | ResourceColor | LocalizedEdgeColors; + radius?: OutlineRadiuses | Dimension; + style?: EdgeOutlineStyles | OutlineStyle; +} +export interface MarkStyle { + strokeColor?: ResourceColor; + size?: Length; + strokeWidth?: Length; +} +export interface ColorFilter { +} +export interface TouchPoint { + x: Dimension; + y: Dimension; +} +export interface DirectionalEdgesT { + start: number; + end: number; + top: number; + bottom: number; +} +export interface DividerStyleOptions { + strokeWidth?: LengthMetrics; + color?: ResourceColor; + startMargin?: LengthMetrics; + endMargin?: LengthMetrics; +} +export interface ChainWeightOptions { + horizontal?: number; + vertical?: number; +} +export interface AccessibilityOptions { + accessibilityPreferred?: boolean; +} \ No newline at end of file diff --git a/api/arkui/component/web.d.ets b/api/arkui/component/web.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..517d762264312feac120ee58b49b89df176db71c --- /dev/null +++ b/api/arkui/component/web.d.ets @@ -0,0 +1,981 @@ +/* + * Copyright (c) 2024-2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + +// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION! + +import { memo, ComponentBuilder, __memo_context_type, __memo_id_type } from './../stateManagement/runtime' +import { CustomBuilder, TouchEvent, CommonMethod, DrawModifier, Rectangle, Callback_Array_TouchTestInfo_TouchResult, TouchTestInfo, TouchResult, PixelRoundPolicy, BackgroundEffectOptions, ForegroundEffectOptions, BorderImageOption, OutlineStyle, Callback_ClickEvent_Void, ClickEvent, Callback_Boolean_HoverEvent_Void, HoverEvent, AccessibilityCallback, Callback_MouseEvent_Void, MouseEvent, Callback_TouchEvent_Void, Callback_KeyEvent_Void, KeyEvent, Callback_KeyEvent_Boolean, AnimateParam, TransitionOptions, TransitionEffect, MotionBlurOptions, InvertOptions, TranslateOptions, ScaleOptions, RotateOptions, Callback_Area_Area_Void, Literal_Union_Number_Literal_Number_offset_span_lg_md_sm_xs, Literal_Number_offset_span, AlignRuleOption, LocalizedAlignRuleOptions, ClickEffect, Callback_DragEvent_String_Union_CustomBuilder_DragItemInfo, DragEvent, DragItemInfo, Callback_DragEvent_String_Void, Callback_PreDragStatus_Void, PreDragStatus, Type_CommonMethod_linearGradient_value, Tuple_ResourceColor_Number, Type_CommonMethod_sweepGradient_value, Tuple_Length_Length, Type_CommonMethod_radialGradient_value, MotionPathOptions, ShadowOptions, ShadowStyle, ProgressMask, StateStyles, PixelStretchEffectOptions, AttributeModifier, GestureModifier, BackgroundBrightnessOptions, Callback_GestureInfo_BaseGestureEvent_GestureJudgeResult, GestureRecognizerJudgeBeginCallback, ShouldBuiltInRecognizerParallelWithCallback, Callback_TouchEvent_HitTestMode, SizeChangeCallback, SafeAreaType, SafeAreaEdge, Literal_Alignment_align, BlurStyle, BackgroundBlurStyleOptions, ForegroundBlurStyleOptions, TransitionFinishCallback, BlurOptions, LinearGradientBlurOptions, EffectType, sharedTransitionOptions, ChainStyle, DragPreviewOptions, DragInteractionOptions, OverlayOptions, BlendMode, BlendApplyType, GeometryTransitionOptions, PopupOptions, CustomPopupOptions, MenuElement, MenuOptions, ContextMenuOptions, ModalTransition, ContentCoverOptions, SheetOptions, VisibleAreaChangeCallback, NestedScrollOptions } from './common' +import { Resource } from './../../../api/global/resource' +import { Position, PixelMap, VisualEffect, Filter, UniformDataType, Blender, Length, SizeOptions, ConstraintSizeOptions, ChainWeightOptions, Padding, LocalizedPadding, Margin, LocalizedMargin, ResourceColor, BorderOptions, EdgeStyles, EdgeWidths, LocalizedEdgeWidths, EdgeColors, LocalizedEdgeColors, BorderRadiuses, LocalizedBorderRadiuses, OutlineOptions, EdgeOutlineStyles, Dimension, EdgeOutlineWidths, OutlineRadiuses, Area, Edges, LocalizedEdges, LocalizedPosition, ResourceStr, AccessibilityOptions } from './units' +import { MenuType, EditMenuOptions } from './textCommon' +import { ComponentContent } from './../ComponentContent' +import { HitTestMode, ImageSize, Alignment, BorderStyle, ColoringStrategy, HoverEffect, Color, Visibility, ItemAlign, Direction, GradientDirection, ObscuredReasons, RenderFit, ImageRepeat, Axis, ResponseType, FunctionKey, ModifierKey, CopyOptions, NestedScrollMode } from './enums' +// FIXME when we have a @ohos.web.webview.d.ets replace this stub +type WebviewController = string +export type OnNavigationEntryCommittedCallback = (loadCommittedDetails: LoadCommittedDetails) => void; +export type OnSslErrorEventCallback = (sslErrorEvent: SslErrorEvent) => void; +export type OnLargestContentfulPaintCallback = (largestContentfulPaint: LargestContentfulPaint) => void; +export type OnFirstMeaningfulPaintCallback = (firstMeaningfulPaint: FirstMeaningfulPaint) => void; +export type OnOverrideUrlLoadingCallback = (webResourceRequest: WebResourceRequest) => boolean; +export type OnIntelligentTrackingPreventionCallback = (details: IntelligentTrackingPreventionDetails) => void; +export type OnNativeEmbedVisibilityChangeCallback = (nativeEmbedVisibilityInfo: NativeEmbedVisibilityInfo) => void; +export interface NativeMediaPlayerConfig { + enable: boolean; + shouldOverlay: boolean; +} +export type OnRenderProcessNotRespondingCallback = (data: RenderProcessNotRespondingData) => void; +export type OnRenderProcessRespondingCallback = () => void; +export type OnViewportFitChangedCallback = (viewportFit: ViewportFit) => void; +export type OnAdsBlockedCallback = (details: AdsBlockedDetails) => void; +export interface AdsBlockedDetails { + url: string; + adsBlocked: Array<string>; +} +export interface WebKeyboardOptions { + useSystemKeyboard: boolean; + enterKeyType?: number; + customKeyboard?: CustomBuilder; +} +export interface WebKeyboardController { + insertText(text: string): void + deleteForward(length: number): void + deleteBackward(length: number): void + sendFunctionKey(key: number): void + close(): void +} +export interface WebKeyboardCallbackInfo { + controller: WebKeyboardController; + attributes: Map<string, string>; +} +export type WebKeyboardCallback = (keyboardCallbackInfo: WebKeyboardCallbackInfo) => WebKeyboardOptions; +export enum MessageLevel { + DEBUG = 0, + Debug = 0, + ERROR = 1, + Error = 1, + INFO = 2, + Info = 2, + LOG = 3, + Log = 3, + WARN = 4, + Warn = 4 +} +export enum MixedMode { + ALL = 0, + All = 0, + COMPATIBLE = 1, + Compatible = 1, + NONE = 2, + None = 2 +} +export type OnSafeBrowsingCheckResultCallback = (threatType: ThreatType) => void; +export enum HitTestType { + EDIT_TEXT = 0, + EditText = 0, + EMAIL = 1, + Email = 1, + HTTP_ANCHOR = 2, + HttpAnchor = 2, + HTTP_ANCHOR_IMG = 3, + HttpAnchorImg = 3, + IMG = 4, + Img = 4, + MAP = 5, + Map = 5, + PHONE = 6, + Phone = 6, + UNKNOWN = 7, + Unknown = 7 +} +export enum CacheMode { + DEFAULT = 0, + Default = 0, + NONE = 1, + None = 1, + ONLINE = 2, + Online = 2, + ONLY = 3, + Only = 3 +} +export enum OverScrollMode { + NEVER = 0, + ALWAYS = 1 +} +export enum WebDarkMode { + OFF = 0, + Off = 0, + ON = 1, + On = 1, + AUTO = 2, + Auto = 2 +} +export enum WebCaptureMode { + HOME_SCREEN = 0 +} +export enum ThreatType { + THREAT_ILLEGAL = 0, + THREAT_FRAUD = 1, + THREAT_RISK = 2, + THREAT_WARNING = 3 +} +export interface WebMediaOptions { + resumeInterval?: number; + audioExclusive?: boolean; +} +export interface ScreenCaptureConfig { + captureMode: WebCaptureMode; +} +export interface FullScreenExitHandler { + exitFullScreen(): void +} +export interface FullScreenEnterEvent { + handler: FullScreenExitHandler; + videoWidth?: number; + videoHeight?: number; +} +export type OnFullScreenEnterCallback = (event: FullScreenEnterEvent) => void; +export enum RenderExitReason { + PROCESS_ABNORMAL_TERMINATION = 0, + ProcessAbnormalTermination = 0, + PROCESS_WAS_KILLED = 1, + ProcessWasKilled = 1, + PROCESS_CRASHED = 2, + ProcessCrashed = 2, + PROCESS_OOM = 3, + ProcessOom = 3, + PROCESS_EXIT_UNKNOWN = 4, + ProcessExitUnknown = 4 +} +export type OnContextMenuHideCallback = () => void; +export enum SslError { + INVALID = 0, + Invalid = 0, + HOST_MISMATCH = 1, + HostMismatch = 1, + DATE_INVALID = 2, + DateInvalid = 2, + UNTRUSTED = 3, + Untrusted = 3 +} +export enum FileSelectorMode { + FILE_OPEN_MODE = 0, + FileOpenMode = 0, + FILE_OPEN_MULTIPLE_MODE = 1, + FileOpenMultipleMode = 1, + FILE_OPEN_FOLDER_MODE = 2, + FileOpenFolderMode = 2, + FILE_SAVE_MODE = 3, + FileSaveMode = 3 +} +export enum WebLayoutMode { + NONE = 0, + FIT_CONTENT = 1 +} +export enum RenderProcessNotRespondingReason { + INPUT_TIMEOUT = 0, + NAVIGATION_COMMIT_TIMEOUT = 1 +} +export interface FileSelectorParam { + getTitle(): string + getMode(): FileSelectorMode + getAcceptType(): Array<string> + isCapture(): boolean +} +export interface JsResult { + handleCancel(): void + handleConfirm(): void + handlePromptConfirm(result: string): void +} +export interface FileSelectorResult { + handleFileList(fileList: Array<string>): void +} +export interface HttpAuthHandler { + confirm(userName: string, password: string): boolean + cancel(): void + isHttpAuthInfoSaved(): boolean +} +export interface SslErrorHandler { + handleConfirm(): void + handleCancel(): void +} +export interface ClientAuthenticationHandler { + confirm(priKeyFile: string, certChainFile: string): void + + cancel(): void + ignore(): void +} +export enum ProtectedResourceType { + MIDI_SYSEX = 'TYPE_MIDI_SYSEX', + MidiSysex = 'TYPE_MIDI_SYSEX', + VIDEO_CAPTURE = 'TYPE_VIDEO_CAPTURE', + AUDIO_CAPTURE = 'TYPE_AUDIO_CAPTURE', + SENSOR = 'TYPE_SENSOR' +} +export interface PermissionRequest { + deny(): void + getOrigin(): string + getAccessibleResource(): Array<string> + grant(resources: Array<string>): void +} +export interface ScreenCaptureHandler { + getOrigin(): string + grant(config: ScreenCaptureConfig): void + deny(): void +} +export interface DataResubmissionHandler { + resend(): void + cancel(): void +} +export interface ControllerHandler { + setWebController(controller: WebviewController): void +} +export enum ContextMenuSourceType { + NONE = 0, + None = 0, + MOUSE = 1, + Mouse = 1, + LONG_PRESS = 2, + LongPress = 2 +} +export enum ContextMenuMediaType { + NONE = 0, + None = 0, + IMAGE = 1, + Image = 1 +} +export enum ContextMenuInputFieldType { + NONE = 0, + None = 0, + PLAIN_TEXT = 1, + PlainText = 1, + PASSWORD = 2, + Password = 2, + NUMBER = 3, + Number = 3, + TELEPHONE = 4, + Telephone = 4, + OTHER = 5, + Other = 5 +} +export enum NativeEmbedStatus { + CREATE = 0, + UPDATE = 1, + DESTROY = 2, + ENTER_BFCACHE = 3, + LEAVE_BFCACHE = 4 +} +export enum ContextMenuEditStateFlags { + NONE = 0, + CAN_CUT = 1, + CAN_COPY = 2, + CAN_PASTE = 4, + CAN_SELECT_ALL = 8 +} +export enum WebNavigationType { + UNKNOWN = 0, + MAIN_FRAME_NEW_ENTRY = 1, + MAIN_FRAME_EXISTING_ENTRY = 2, + NAVIGATION_TYPE_NEW_SUBFRAME = 4, + NAVIGATION_TYPE_AUTO_SUBFRAME = 5 +} +export enum RenderMode { + ASYNC_RENDER = 0, + SYNC_RENDER = 1 +} +export enum ViewportFit { + AUTO = 0, + CONTAINS = 1, + COVER = 2 +} +export interface WebContextMenuParam { + x(): number + y(): number + getLinkUrl(): string + getUnfilteredLinkUrl(): string + getSourceUrl(): string + existsImageContents(): boolean + getMediaType(): ContextMenuMediaType + getSelectionText(): string + getSourceType(): ContextMenuSourceType + getInputFieldType(): ContextMenuInputFieldType + isEditable(): boolean + getEditStateFlags(): number + getPreviewWidth(): number + getPreviewHeight(): number +} +export interface WebContextMenuResult { + closeContextMenu(): void + copyImage(): void + copy(): void + paste(): void + cut(): void + selectAll(): void +} +export interface ConsoleMessage { + getMessage(): string + getSourceId(): string + getLineNumber(): number + getMessageLevel(): MessageLevel +} +export interface WebResourceRequest { + getRequestHeader(): Array<Header> + getRequestUrl(): string + isRequestGesture(): boolean + isMainFrame(): boolean + isRedirect(): boolean + getRequestMethod(): string +} +export interface WebResourceResponse { + getResponseData(): string + getResponseDataEx(): string | number | ArrayBuffer | Resource | undefined + getResponseEncoding(): string + getResponseMimeType(): string + getReasonMessage(): string + getResponseHeader(): Array<Header> + getResponseCode(): number + setResponseData(data: string | number | Resource | ArrayBuffer): void + setResponseEncoding(encoding: string): void + setResponseMimeType(mimeType: string): void + setReasonMessage(reason: string): void + setResponseHeader(header: Array<Header>): void + setResponseCode(code: number): void + setResponseIsReady(IsReady: boolean): void + getResponseIsReady(): boolean +} +export interface Header { + headerKey: string; + headerValue: string; +} +export interface WebResourceError { + getErrorInfo(): string + getErrorCode(): number +} +export interface JsGeolocation { + invoke(origin: string, allow: boolean, retain: boolean): void +} +export interface WebCookie { + setCookie(): undefined + saveCookie(): undefined +} +export interface EventResult { + setGestureEventResult(result: boolean): void +} +export interface Literal_String_script_Callback_String_Void_callback_ { + script: string; + callback_?: ((breakpoints: string) => void); +} +export interface Literal_String_baseUrl_data_encoding_historyUrl_mimeType { + data: string; + mimeType: string; + encoding: string; + baseUrl?: string; + historyUrl?: string; +} +export interface Literal_Union_String_Resource_url_Array_Header_headers { + url: string | Resource; + headers?: Array<Header>; +} +export interface Literal_Object_object__String_name_Array_String_methodList { + object_: Object; + name: string; + methodList: Array<string>; +} +export interface WebController { + onInactive(): void + onActive(): void + zoom(factor: number): void + clearHistory(): void + runJavaScript(options: Literal_String_script_Callback_String_Void_callback_): undefined + loadData(options: Literal_String_baseUrl_data_encoding_historyUrl_mimeType): undefined + loadUrl(options: Literal_Union_String_Resource_url_Array_Header_headers): undefined + refresh(): undefined + stop(): undefined + registerJavaScriptProxy(options: Literal_Object_object__String_name_Array_String_methodList): undefined + deleteJavaScriptRegister(name: string): undefined + getHitTest(): HitTestType + requestFocus(): undefined + accessBackward(): boolean + accessForward(): boolean + accessStep(step: number): boolean + backward(): undefined + forward(): undefined + getCookieManager(): WebCookie +} +export interface WebOptions { + src: string | Resource; + controller: WebController | WebviewController; + renderMode?: RenderMode; + incognitoMode?: boolean; + sharedRenderProcessToken?: string; +} +export interface ScriptItem { + script: string; + scriptRules: Array<string>; +} +export interface LoadCommittedDetails { + isMainFrame: boolean; + isSameDocument: boolean; + didReplaceEntry: boolean; + navigationType: WebNavigationType; + url: string; +} +export interface IntelligentTrackingPreventionDetails { + host: string; + trackerHost: string; +} +export type WebInterface = (value: WebOptions) => WebAttribute; +export interface NativeEmbedInfo { + id?: string; + type?: string; + src?: string; + position?: Position; + width?: number; + height?: number; + url?: string; + tag?: string; + params?: Map<string, string>; +} +export interface NativeEmbedDataInfo { + status?: NativeEmbedStatus; + surfaceId?: string; + embedId?: string; + info?: NativeEmbedInfo; +} +export interface NativeEmbedVisibilityInfo { + visibility: boolean; + embedId: string; +} +export interface NativeEmbedTouchInfo { + embedId?: string; + touchEvent?: TouchEvent; + result?: EventResult; +} +export interface FirstMeaningfulPaint { + navigationStartTime?: number; + firstMeaningfulPaintTime?: number; +} +export interface LargestContentfulPaint { + navigationStartTime?: number; + largestImagePaintTime?: number; + largestTextPaintTime?: number; + imageBPP?: number; + largestImageLoadStartTime?: number; + largestImageLoadEndTime?: number; +} +export interface RenderProcessNotRespondingData { + jsStack: string; + pid: number; + reason: RenderProcessNotRespondingReason; +} +export interface OnPageEndEvent { + url: string; +} +export interface OnPageBeginEvent { + url: string; +} +export interface OnProgressChangeEvent { + newProgress: number; +} +export interface OnTitleReceiveEvent { + title: string; +} +export interface OnGeolocationShowEvent { + origin: string; + geolocation: JsGeolocation; +} +export interface OnAlertEvent { + url: string; + message: string; + result: JsResult; +} +export interface OnBeforeUnloadEvent { + url: string; + message: string; + result: JsResult; +} +export interface OnConfirmEvent { + url: string; + message: string; + result: JsResult; +} +export interface OnPromptEvent { + url: string; + message: string; + value: string; + result: JsResult; +} +export interface OnConsoleEvent { + message: ConsoleMessage; +} +export interface OnErrorReceiveEvent { + request: WebResourceRequest; + error: WebResourceError; +} +export interface OnHttpErrorReceiveEvent { + request: WebResourceRequest; + response: WebResourceResponse; +} +export interface OnDownloadStartEvent { + url: string; + userAgent: string; + contentDisposition: string; + mimetype: string; + contentLength: number; +} +export interface OnRefreshAccessedHistoryEvent { + url: string; + isRefreshed: boolean; +} +export interface OnRenderExitedEvent { + renderExitReason: RenderExitReason; +} +export interface OnShowFileSelectorEvent { + result: FileSelectorResult; + fileSelector: FileSelectorParam; +} +export interface OnResourceLoadEvent { + url: string; +} +export interface OnScaleChangeEvent { + oldScale: number; + newScale: number; +} +export interface OnHttpAuthRequestEvent { + handler: HttpAuthHandler; + host: string; + realm: string; +} +export interface OnInterceptRequestEvent { + request: WebResourceRequest; +} +export interface OnPermissionRequestEvent { + request: PermissionRequest; +} +export interface OnScreenCaptureRequestEvent { + handler: ScreenCaptureHandler; +} +export interface OnContextMenuShowEvent { + param: WebContextMenuParam; + result: WebContextMenuResult; +} +export interface OnSearchResultReceiveEvent { + activeMatchOrdinal: number; + numberOfMatches: number; + isDoneCounting: boolean; +} +export interface OnScrollEvent { + xOffset: number; + yOffset: number; +} +export interface OnSslErrorEventReceiveEvent { + handler: SslErrorHandler; + error: SslError; + certChainData?: Array<ArrayBuffer>; +} +export interface OnClientAuthenticationEvent { + handler: ClientAuthenticationHandler; + host: string; + port: number; + keyTypes: Array<string>; + issuers: Array<string>; +} +export interface OnWindowNewEvent { + isAlert: boolean; + isUserTrigger: boolean; + targetUrl: string; + handler: ControllerHandler; +} +export interface OnTouchIconUrlReceivedEvent { + url: string; + precomposed: boolean; +} +export interface OnFaviconReceivedEvent { + favicon: PixelMap; +} +export interface OnPageVisibleEvent { + url: string; +} +export interface OnDataResubmittedEvent { + handler: DataResubmissionHandler; +} +export interface OnAudioStateChangedEvent { + playing: boolean; +} +export interface OnFirstContentfulPaintEvent { + navigationStartTick: number; + firstContentfulPaintMs: number; +} +export interface OnLoadInterceptEvent { + data: WebResourceRequest; +} +export interface OnOverScrollEvent { + xOffset: number; + yOffset: number; +} +export interface JavaScriptProxy { + object_: Object; + name: string; + methodList: Array<string>; + controller: WebController | WebviewController; + asyncMethodList?: Array<string>; + permission?: string; +} +export enum WebKeyboardAvoidMode { + RESIZE_VISUAL = 0, + RESIZE_CONTENT = 1, + OVERLAYS_CONTENT = 2 +} +export enum WebElementType { + IMAGE = 1 +} +export enum WebResponseType { + LONG_PRESS = 1 +} +export interface SelectionMenuOptionsExt { + onAppear?: (() => void); + onDisappear?: (() => void); + preview?: CustomBuilder; + menuType?: MenuType; +} +export type Callback_OnPageEndEvent_Void = (parameter: OnPageEndEvent) => void; +export type Callback_OnPageBeginEvent_Void = (parameter: OnPageBeginEvent) => void; +export type Callback_OnProgressChangeEvent_Void = (parameter: OnProgressChangeEvent) => void; +export type Callback_OnTitleReceiveEvent_Void = (parameter: OnTitleReceiveEvent) => void; +export type Callback_OnGeolocationShowEvent_Void = (parameter: OnGeolocationShowEvent) => void; +export type Callback_OnAlertEvent_Boolean = (parameter: OnAlertEvent) => boolean; +export type Callback_OnBeforeUnloadEvent_Boolean = (parameter: OnBeforeUnloadEvent) => boolean; +export type Callback_OnConfirmEvent_Boolean = (parameter: OnConfirmEvent) => boolean; +export type Callback_OnPromptEvent_Boolean = (parameter: OnPromptEvent) => boolean; +export type Callback_OnConsoleEvent_Boolean = (parameter: OnConsoleEvent) => boolean; +export type Callback_OnErrorReceiveEvent_Void = (parameter: OnErrorReceiveEvent) => void; +export type Callback_OnHttpErrorReceiveEvent_Void = (parameter: OnHttpErrorReceiveEvent) => void; +export type Callback_OnDownloadStartEvent_Void = (parameter: OnDownloadStartEvent) => void; +export type Callback_OnRefreshAccessedHistoryEvent_Void = (parameter: OnRefreshAccessedHistoryEvent) => void; +export interface Literal_Union_String_WebResourceRequest_data { + data: string | WebResourceRequest; +} +export type Type_WebAttribute_onUrlLoadIntercept_callback = (event?: Literal_Union_String_WebResourceRequest_data) => boolean; +export interface Literal_Function_handler_Object_error { + handler: Function0<void>; + error: Object; +} +export type Callback_Literal_Function_handler_Object_error_Void = (event?: Literal_Function_handler_Object_error) => void; +export type Callback_OnRenderExitedEvent_Void = (parameter: OnRenderExitedEvent) => void; +export type Callback_OnShowFileSelectorEvent_Boolean = (parameter: OnShowFileSelectorEvent) => boolean; +export interface Literal_Object_detail { + detail: Object; +} +export type Callback_Literal_Object_detail_Boolean = (event?: Literal_Object_detail) => boolean; +export interface Literal_Function_callback__Object_fileSelector { + callback_: Function0<void>; + fileSelector: Object; +} +export type Type_WebAttribute_onFileSelectorShow_callback = (event?: Literal_Function_callback__Object_fileSelector) => void; +export type Callback_OnResourceLoadEvent_Void = (parameter: OnResourceLoadEvent) => void; +export type Callback_OnScaleChangeEvent_Void = (parameter: OnScaleChangeEvent) => void; +export type Callback_OnHttpAuthRequestEvent_Boolean = (parameter: OnHttpAuthRequestEvent) => boolean; +export type Callback_OnInterceptRequestEvent_WebResourceResponse = (parameter: OnInterceptRequestEvent) => WebResourceResponse; +export type Callback_OnPermissionRequestEvent_Void = (parameter: OnPermissionRequestEvent) => void; +export type Callback_OnScreenCaptureRequestEvent_Void = (parameter: OnScreenCaptureRequestEvent) => void; +export type Callback_OnContextMenuShowEvent_Boolean = (parameter: OnContextMenuShowEvent) => boolean; +export type Callback_OnSearchResultReceiveEvent_Void = (parameter: OnSearchResultReceiveEvent) => void; +export type Callback_OnScrollEvent_Void = (parameter: OnScrollEvent) => void; +export type Callback_OnSslErrorEventReceiveEvent_Void = (parameter: OnSslErrorEventReceiveEvent) => void; +export type Callback_OnClientAuthenticationEvent_Void = (parameter: OnClientAuthenticationEvent) => void; +export type Callback_OnWindowNewEvent_Void = (parameter: OnWindowNewEvent) => void; +export type Callback_OnTouchIconUrlReceivedEvent_Void = (parameter: OnTouchIconUrlReceivedEvent) => void; +export type Callback_OnFaviconReceivedEvent_Void = (parameter: OnFaviconReceivedEvent) => void; +export type Callback_OnPageVisibleEvent_Void = (parameter: OnPageVisibleEvent) => void; +export type Callback_OnDataResubmittedEvent_Void = (parameter: OnDataResubmittedEvent) => void; +export type Callback_OnAudioStateChangedEvent_Void = (parameter: OnAudioStateChangedEvent) => void; +export type Callback_OnFirstContentfulPaintEvent_Void = (parameter: OnFirstContentfulPaintEvent) => void; +export type Callback_OnLoadInterceptEvent_Boolean = (parameter: OnLoadInterceptEvent) => boolean; +export type Callback_OnOverScrollEvent_Void = (parameter: OnOverScrollEvent) => void; +export type Callback_NativeEmbedDataInfo_Void = (event: NativeEmbedDataInfo) => void; +export type Callback_NativeEmbedTouchInfo_Void = (event: NativeEmbedTouchInfo) => void; +export interface WebAttribute extends CommonMethod { + @memo + javaScriptAccess(value: boolean): this; + @memo + fileAccess(value: boolean): this; + @memo + onlineImageAccess(value: boolean): this; + @memo + domStorageAccess(value: boolean): this; + @memo + imageAccess(value: boolean): this; + @memo + mixedMode(value: MixedMode): this; + @memo + zoomAccess(value: boolean): this; + @memo + geolocationAccess(value: boolean): this; + @memo + javaScriptProxy(value: JavaScriptProxy): this; + @memo + password(value: boolean): this; + @memo + cacheMode(value: CacheMode): this; + @memo + darkMode(value: WebDarkMode): this; + @memo + forceDarkAccess(value: boolean): this; + @memo + mediaOptions(value: WebMediaOptions): this; + @memo + tableData(value: boolean): this; + @memo + wideViewModeAccess(value: boolean): this; + @memo + overviewModeAccess(value: boolean): this; + @memo + overScrollMode(value: OverScrollMode): this; + @memo + textZoomAtio(value: number): this; + @memo + textZoomRatio(value: number): this; + @memo + databaseAccess(value: boolean): this; + @memo + initialScale(value: number): this; + @memo + userAgent(value: string): this; + @memo + metaViewport(value: boolean): this; + @memo + onPageEnd(value: ((parameter: OnPageEndEvent) => void)): this; + @memo + onPageBegin(value: ((parameter: OnPageBeginEvent) => void)): this; + @memo + onProgressChange(value: ((parameter: OnProgressChangeEvent) => void)): this; + @memo + onTitleReceive(value: ((parameter: OnTitleReceiveEvent) => void)): this; + @memo + onGeolocationHide(value: (() => void)): this; + @memo + onGeolocationShow(value: ((parameter: OnGeolocationShowEvent) => void)): this; + @memo + onRequestSelected(value: (() => void)): this; + @memo + onAlert(value: ((parameter: OnAlertEvent) => boolean)): this; + @memo + onBeforeUnload(value: ((parameter: OnBeforeUnloadEvent) => boolean)): this; + @memo + onConfirm(value: ((parameter: OnConfirmEvent) => boolean)): this; + @memo + onPrompt(value: ((parameter: OnPromptEvent) => boolean)): this; + @memo + onConsole(value: ((parameter: OnConsoleEvent) => boolean)): this; + @memo + onErrorReceive(value: ((parameter: OnErrorReceiveEvent) => void)): this; + @memo + onHttpErrorReceive(value: ((parameter: OnHttpErrorReceiveEvent) => void)): this; + @memo + onDownloadStart(value: ((parameter: OnDownloadStartEvent) => void)): this; + @memo + onRefreshAccessedHistory(value: ((parameter: OnRefreshAccessedHistoryEvent) => void)): this; + @memo + onUrlLoadIntercept(value: ((event?: Literal_Union_String_WebResourceRequest_data) => boolean)): this; + @memo + onSslErrorReceive(value: ((event?: Literal_Function_handler_Object_error) => void)): this; + @memo + onRenderExited(value: ((parameter: OnRenderExitedEvent) => void)): this; + @memo + onShowFileSelector(value: ((parameter: OnShowFileSelectorEvent) => boolean)): this; + + @memo + onFileSelectorShow(value: ((event?: Literal_Function_callback__Object_fileSelector) => void)): this; + @memo + onResourceLoad(value: ((parameter: OnResourceLoadEvent) => void)): this; + @memo + onFullScreenExit(value: (() => void)): this; + @memo + onFullScreenEnter(value: OnFullScreenEnterCallback): this; + @memo + onScaleChange(value: ((parameter: OnScaleChangeEvent) => void)): this; + @memo + onHttpAuthRequest(value: ((parameter: OnHttpAuthRequestEvent) => boolean)): this; + @memo + onInterceptRequest(value: ((parameter: OnInterceptRequestEvent) => WebResourceResponse)): this; + @memo + onPermissionRequest(value: ((parameter: OnPermissionRequestEvent) => void)): this; + @memo + onScreenCaptureRequest(value: ((parameter: OnScreenCaptureRequestEvent) => void)): this; + @memo + onContextMenuShow(value: ((parameter: OnContextMenuShowEvent) => boolean)): this; + @memo + onContextMenuHide(value: OnContextMenuHideCallback): this; + @memo + mediaPlayGestureAccess(value: boolean): this; + @memo + onSearchResultReceive(value: ((parameter: OnSearchResultReceiveEvent) => void)): this; + @memo + onScroll(value: ((parameter: OnScrollEvent) => void)): this; + @memo + onSslErrorEventReceive(value: ((parameter: OnSslErrorEventReceiveEvent) => void)): this; + @memo + onSslErrorEvent(value: OnSslErrorEventCallback): this; + @memo + onClientAuthenticationRequest(value: ((parameter: OnClientAuthenticationEvent) => void)): this; + @memo + onWindowNew(value: ((parameter: OnWindowNewEvent) => void)): this; + @memo + onWindowExit(value: (() => void)): this; + @memo + multiWindowAccess(value: boolean): this; + @memo + onInterceptKeyEvent(value: ((parameter: KeyEvent) => boolean)): this; + @memo + webStandardFont(value: string): this; + @memo + webSerifFont(value: string): this; + @memo + webSansSerifFont(value: string): this; + @memo + webFixedFont(value: string): this; + @memo + webFantasyFont(value: string): this; + @memo + webCursiveFont(value: string): this; + @memo + defaultFixedFontSize(value: number): this; + @memo + defaultFontSize(value: number): this; + @memo + minFontSize(value: number): this; + @memo + minLogicalFontSize(value: number): this; + @memo + defaultTextEncodingFormat(value: string): this; + @memo + forceDisplayScrollBar(value: boolean): this; + @memo + blockNetwork(value: boolean): this; + @memo + horizontalScrollBarAccess(value: boolean): this; + @memo + verticalScrollBarAccess(value: boolean): this; + @memo + onTouchIconUrlReceived(value: ((parameter: OnTouchIconUrlReceivedEvent) => void)): this; + @memo + onFaviconReceived(value: ((parameter: OnFaviconReceivedEvent) => void)): this; + @memo + onPageVisible(value: ((parameter: OnPageVisibleEvent) => void)): this; + @memo + onDataResubmitted(value: ((parameter: OnDataResubmittedEvent) => void)): this; + @memo + pinchSmooth(value: boolean): this; + @memo + allowWindowOpenMethod(value: boolean): this; + @memo + onAudioStateChanged(value: ((parameter: OnAudioStateChangedEvent) => void)): this; + @memo + onFirstContentfulPaint(value: ((parameter: OnFirstContentfulPaintEvent) => void)): this; + @memo + onFirstMeaningfulPaint(value: OnFirstMeaningfulPaintCallback): this; + @memo + onLargestContentfulPaint(value: OnLargestContentfulPaintCallback): this; + @memo + onLoadIntercept(value: ((parameter: OnLoadInterceptEvent) => boolean)): this; + @memo + onControllerAttached(value: (() => void)): this; + @memo + onOverScroll(value: ((parameter: OnOverScrollEvent) => void)): this; + @memo + onSafeBrowsingCheckResult(value: OnSafeBrowsingCheckResultCallback): this; + @memo + onNavigationEntryCommitted(value: OnNavigationEntryCommittedCallback): this; + @memo + onIntelligentTrackingPreventionResult(value: OnIntelligentTrackingPreventionCallback): this; + @memo + javaScriptOnDocumentStart(value: Array<ScriptItem>): this; + @memo + javaScriptOnDocumentEnd(value: Array<ScriptItem>): this; + @memo + layoutMode(value: WebLayoutMode): this; + @memo + nestedScroll(value: NestedScrollOptions | NestedScrollOptionsExt): this; + @memo + enableNativeEmbedMode(value: boolean): this; + @memo + onNativeEmbedLifecycleChange(value: ((event: NativeEmbedDataInfo) => void)): this; + @memo + onNativeEmbedVisibilityChange(value: OnNativeEmbedVisibilityChangeCallback): this; + @memo + onNativeEmbedGestureEvent(value: ((event: NativeEmbedTouchInfo) => void)): this; + @memo + copyOptions(value: CopyOptions): this; + @memo + onOverrideUrlLoading(value: OnOverrideUrlLoadingCallback): this; + @memo + textAutosizing(value: boolean): this; + @memo + enableNativeMediaPlayer(value: NativeMediaPlayerConfig): this; + @memo + onRenderProcessNotResponding(value: OnRenderProcessNotRespondingCallback): this; + @memo + onRenderProcessResponding(value: OnRenderProcessRespondingCallback): this; + @memo + selectionMenuOptions(value: Array<ExpandedMenuItemOptions>): this; + @memo + onViewportFitChanged(value: OnViewportFitChangedCallback): this; + @memo + onInterceptKeyboardAttach(value: WebKeyboardCallback): this; + @memo + onAdsBlocked(value: OnAdsBlockedCallback): this; + @memo + keyboardAvoidMode(value: WebKeyboardAvoidMode): this; + @memo + editMenuOptions(value: EditMenuOptions): this; + @memo + enableHapticFeedback(value: boolean): this; +} +export interface SslErrorEvent { + handler: SslErrorHandler; + error: SslError; + url: string; + originalUrl: string; + referrer: string; + isFatalError: boolean; + isMainFrame: boolean; +} +export interface Literal_String_plainText { + plainText: string; +} +export type Callback_Literal_String_plainText_Void = (selectedText: Literal_String_plainText) => void; +export interface ExpandedMenuItemOptions { + content: ResourceStr; + startIcon?: ResourceStr; + action: ((selectedText: Literal_String_plainText) => void); +} +export interface NestedScrollOptionsExt { + scrollUp?: NestedScrollMode; + scrollDown?: NestedScrollMode; + scrollRight?: NestedScrollMode; + scrollLeft?: NestedScrollMode; +} +@memo +@ComponentBuilder +export declare function Web( + value: WebOptions, + @memo + content_?: () => void, +): WebAttribute diff --git a/api/arkui/external/resource.d.ets b/api/arkui/external/resource.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..bb0b7820277c46d5135199363170f2d4336d26ae --- /dev/null +++ b/api/arkui/external/resource.d.ets @@ -0,0 +1,29 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { Resource as __Resource__ } from "../../global/resource"; + +export type Resource = __Resource__; + +declare function _r(bundleName: string, moduleName: string, name: string, ...params: string[]): Resource; + +declare function _rawfile(bundleName: string, moduleName: string, name: string): Resource; + +export { _r, _rawfile } diff --git a/api/arkui/runtime-api/@koalaui.runtime.annotations.d.ets b/api/arkui/runtime-api/@koalaui.runtime.annotations.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..f5a1deca66bde885da0c1a359fefaa83c745a837 --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.annotations.d.ets @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ +@Retention({policy: "SOURCE"}) +export @interface memo {} +@Retention({policy: "SOURCE"}) +export @interface memo_intrinsic {} +@Retention({policy: "SOURCE"}) +export @interface memo_entry {} +@Retention({policy: "SOURCE"}) +export @interface memo_stable {} +@Retention({policy: "SOURCE"}) +export @interface memo_skip {} diff --git a/api/arkui/runtime-api/@koalaui.runtime.common.d.ets b/api/arkui/runtime-api/@koalaui.runtime.common.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..89770715e1fda5664d8d63a86b98162c57d2cd7f --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.common.d.ets @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +export type KoalaCallsiteKey = int +export type int32 = int +export type uint32 = int +export type int64 = long +export type float64 = double diff --git a/api/arkui/runtime-api/@koalaui.runtime.internals.d.ets b/api/arkui/runtime-api/@koalaui.runtime.internals.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..dae338c0827dd1ec67dde089c9d333d208cc24ab --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.internals.d.ets @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { KoalaCallsiteKey } from '@koalaui.runtime.common' +import { StateContext } from '@koalaui.runtime.states.State' +export type __memo_context_type = StateContext +export type __memo_id_type = KoalaCallsiteKey +export type __memo_transformed_before = string +export type __memo_transformed_after = number +export type __memo_transformed = __memo_transformed_before +export declare function __context(): StateContext +export declare function __id(): KoalaCallsiteKey +export declare function __key(): KoalaCallsiteKey diff --git a/api/arkui/runtime-api/@koalaui.runtime.memo.bind.d.ets b/api/arkui/runtime-api/@koalaui.runtime.memo.bind.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..fb967a63c56fb4e63d0b90cfd3c3e711b3d3962b --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.memo.bind.d.ets @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo } from '@koalaui.runtime.annotations' +import { KoalaCallsiteKey } from '@koalaui.runtime.common' +import { StateContext } from '@koalaui.runtime.states.State' +export declare class MemoCallbackContext { + readonly context: StateContext + readonly id: KoalaCallsiteKey + constructor(context: StateContext, id: KoalaCallsiteKey) + @memo static Make(): MemoCallbackContext + call(@memo callback: (args: Int32Array) => number, args: Int32Array): number +} +export declare function memoBind<T>(@memo item: (arg: T) => void, value: T): @memo () => void +export declare function memoBind2<T1, T2>(@memo item: (arg1: T1, arg2: T2) => void, value1: T1, value2: T2): @memo () => void +export declare function memoPartialBind2_1<T1, T2>(@memo item: (arg1: T1, arg2: T2) => void, value1: T1): @memo (arg2: T2) => void +export declare function memoPartialBind3_2<T1, T2, T3>(@memo item: (arg1: T1, arg2: T2, arg3: T3) => void, value1: T1): @memo (arg2: T2, arg3: T3) => void diff --git a/api/arkui/runtime-api/@koalaui.runtime.memo.changeListener.d.ets b/api/arkui/runtime-api/@koalaui.runtime.memo.changeListener.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..1fb830a74421a07b674154adb312aeb3039e694b --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.memo.changeListener.d.ets @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo_intrinsic } from '@koalaui.runtime.annotations' +import { __memo_context_type, __memo_id_type } from '../stateManagement/runtime' + +export declare function OnChange<Value>(value: Value, listener: (value: Value) => void): void +@memo_intrinsic export declare function RunEffect<Value>(value: Value, effect: (value: Value) => void): void diff --git a/api/arkui/runtime-api/@koalaui.runtime.memo.contextLocal.d.ets b/api/arkui/runtime-api/@koalaui.runtime.memo.contextLocal.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..3606874de319ae95592a20a47b0b933f1cc00047 --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.memo.contextLocal.d.ets @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo, memo_intrinsic } from '@koalaui.runtime.annotations' +import { State, StateContext } from '@koalaui.runtime.states.State' +import { KoalaCallsiteKey } from '@koalaui.runtime.common' +import { ReadonlyTreeNode } from '@koalaui.runtime.tree.ReadonlyTreeNode' +@memo_intrinsic export declare function contextLocal<Value>(name: string): State<Value> | undefined +@memo_intrinsic export declare function contextLocalValue<Value = ReadonlyTreeNode>(name: string): Value // TODO +export declare function contextLocalValue<Value = ReadonlyTreeNode>(stateContext: StateContext, id: KoalaCallsiteKey, name: string): Value // TODO +@memo_intrinsic export declare function contextLocalScope<Value>(name: string, value: Value, @memo content: () => void): void diff --git a/api/arkui/runtime-api/@koalaui.runtime.memo.entry.d.ets b/api/arkui/runtime-api/@koalaui.runtime.memo.entry.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..42f79e2641674a3b9fe8e4c7cbd612b0ec2a1ec3 --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.memo.entry.d.ets @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo, memo_entry } from '@koalaui.runtime.annotations' +import { KoalaCallsiteKey } from '@koalaui.runtime.common' +import { ComputableState, StateContext } from '@koalaui.runtime.states.State' +import { IncrementalNode } from '@koalaui.runtime.tree.IncrementalNode' +export declare function memoRoot<Node extends IncrementalNode>( + node: Node, @memo update: (node: Node) => void): ComputableState<Node> +export declare function memoRoot<Node extends IncrementalNode>( + node: Node, + update: ( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + node: Node) => void): ComputableState<Node> +@memo_entry export declare function memoEntry<R>( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + @memo entry: () => R): R +@memo_entry export declare function memoEntry<R>( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + entry: (__memo_context: StateContext, + __memo_id: KoalaCallsiteKey) => R): R +@memo_entry export declare function memoEntry1<T, R>( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + @memo entry: (arg: T) => R, arg: T): R +@memo_entry export declare function memoEntry1<T, R>( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + + entry: (__memo_context: StateContext, + __memo_id: KoalaCallsiteKey, arg: T) => R, arg: T): R +@memo_entry export declare function memoEntry2<T1, T2, R>( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + @memo entry: (arg1: T1, arg2: T2) => R, arg1: T1, arg2: T2): R +@memo_entry export declare function memoEntry2<T1, T2, R>( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + entry: (__memo_context: StateContext, __memo_id: KoalaCallsiteKey, arg1: T1, arg2: T2) => R, + arg1: T1, + arg2: T2): R diff --git a/api/arkui/runtime-api/@koalaui.runtime.memo.node.d.ets b/api/arkui/runtime-api/@koalaui.runtime.memo.node.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..fa73cadb0a39beb089b7fe3612ff270937f5d42a --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.memo.node.d.ets @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo, memo_intrinsic } from '@koalaui.runtime.annotations' +import { uint32, KoalaCallsiteKey } from '@koalaui.runtime.common' +import { IncrementalNode } from '@koalaui.runtime.tree.IncrementalNode' +import { StateContext } from '@koalaui.runtime.states.State' +@memo_intrinsic export declare function NodeAttach<Node extends IncrementalNode>( + create: () => Node, @memo update: (node: Node) => void, reuseKey?: string): void +@memo_intrinsic export declare function contextNode<T extends IncrementalNode>(kind: uint32 = 1, name?: string): T +export declare function NodeAttach<Node extends IncrementalNode>( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + create: () => Node, + update: (__memo_context: StateContext, + __memo_id: KoalaCallsiteKey, node: Node) => void, + reuseKey?: string +): void +export declare function contextNode<T extends IncrementalNode>( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + kind: uint32 = 1, + name?: string): T +export declare class DataNode<Data> extends IncrementalNode { + data: Data | undefined + constructor(kind: uint32 = 1) + static attach<Data>(kind: uint32, data: Data, onDataChange?: () => void): void + static extract<Data>(kind: uint32, node: IncrementalNode): Data | undefined +} diff --git a/api/arkui/runtime-api/@koalaui.runtime.memo.remember.d.ets b/api/arkui/runtime-api/@koalaui.runtime.memo.remember.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..41f417442b9466f2fc0f68e2e5a58d36aec0abf3 --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.memo.remember.d.ets @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo, memo_skip, memo_intrinsic } from '@koalaui.runtime.annotations' +import { ArrayState, ControlledScope, MutableState } from '@koalaui.runtime.states.State' +@memo_intrinsic export declare function memoize<Value>(compute: () => Value): Value +@memo_intrinsic export declare function memoLifecycle(onAttach: () => void, onDetach: () => void): void +@memo_intrinsic export declare function once(callback: () => void): void +@memo_intrinsic export declare function remember<Value>(compute: () => Value): Value +@memo_intrinsic export declare function rememberDisposable<Value>( + compute: () => Value, cleanup: (value: Value | undefined) => void): Value +@memo_intrinsic export declare function rememberMutableState<Value>( + initial: (() => Value) | Value): MutableState<Value> +@memo_intrinsic export declare function rememberArrayState<Value>( + initial?: () => ReadonlyArray<Value>): ArrayState<Value> +@memo export declare function rememberMutableAsyncState<Value>( + compute: () => Promise<Value | undefined>, + initial?: Value, + onError?: (error: Error) => void): MutableState<Value | undefined> +@memo export declare function rememberComputableState<Key, Value>( + key: Key, + @memo_skip compute: (key: Key) => Promise<Value | undefined>, + initial?: Value, + onError?: (error: Error) => void): MutableState<Value | undefined> +@memo export declare function rememberComputableValue<Key, Value>( + key: Key, + @memo_skip compute: (key: Key) => Promise<Value | undefined>, + initial?: Value, + onError?: (e: Error) => void): Value | undefined +@memo_intrinsic export declare function rememberControlledScope(invalidate: () => void): ControlledScope diff --git a/api/arkui/runtime-api/@koalaui.runtime.memo.repeat.d.ets b/api/arkui/runtime-api/@koalaui.runtime.memo.repeat.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..fe7bad5ef35b3d8cd9b00ccdc9506b2c7d62aeff --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.memo.repeat.d.ets @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo } from '@koalaui.runtime.annotations' +import { KoalaCallsiteKey, int32 } from '@koalaui.runtime.common' +import { StateContext } from '@koalaui.runtime.states.State' +@memo export declare function Repeat(count: int32, @memo action: (index: int32) => void): void +export declare function Repeat( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + count: int32, + action: (__memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + index: int32) => void): void +@memo export declare function RepeatWithKey( + count: int32, + key: (index: int32) => KoalaCallsiteKey, + @memo action: (index: int32) => void): void +export declare function RepeatWithKey( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + count: int32, + key: (index: int32) => KoalaCallsiteKey, + action: (__memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + index: int32) => void): void +@memo export declare function RepeatByArray<T>( + array: ReadonlyArray<T>, + key: (element: T, index: int32) => KoalaCallsiteKey, + @memo action: (element: T, index: int32) => void): void +export declare function RepeatByArray<T>( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + array: ReadonlyArray<T>, + key: (element: T, index: int32) => KoalaCallsiteKey, + action: (__memo_context: StateContext, __memo_id: KoalaCallsiteKey, element: T, index: int32) => void): void +@memo export declare function RepeatRange<T>( + start: int32, + end: int32, + element: (index: int32) => T, + key: (element: T, index: int32) => KoalaCallsiteKey, + @memo action: (element: T, index: int32) => void): void +export declare function RepeatRange<T>( + __memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + start: int32, + end: int32, + element: (index: int32) => T, + key: (element: T, index: int32) => KoalaCallsiteKey, + action: (__memo_context: StateContext, + __memo_id: KoalaCallsiteKey, + element: T, index: int32) => void): void diff --git a/api/arkui/runtime-api/@koalaui.runtime.memo.testing.d.ets b/api/arkui/runtime-api/@koalaui.runtime.memo.testing.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..d9bc7b8b36cf2c403a624ff08920f2b0cf847f7c --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.memo.testing.d.ets @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { memo, memo_intrinsic } from '@koalaui.runtime.annotations' +import { uint32, KoalaCallsiteKey } from '@koalaui.runtime.common' +import { GlobalStateManager } from '@koalaui.runtime.states.GlobalStateManager.d' +import { ComputableState, State, StateContext, StateManager } from '@koalaui.runtime.states.State' +import { IncrementalNode } from '@koalaui.runtime.tree.IncrementalNode' +export declare class TestNode extends IncrementalNode { + content: string + constructor(kind: uint32 = 1) + toString(): string + static create(@memo content: (node: TestNode) => void): ComputableState<TestNode> + static create( + content: (__memo_context: StateContext, __memo_id: KoalaCallsiteKey, + node: TestNode) => void): ComputableState<TestNode> + @memo_intrinsic static attach(content: (node: TestNode) => void): void + @memo_intrinsic static attach( + content: (__memo_context: StateContext, __memo_id: KoalaCallsiteKey, node: TestNode) => void): void +} +export declare function testRoot(@memo content: (node: TestNode) => void): State<TestNode> +export declare function testRoot( + content: (__memo_context: StateContext, __memo_id: KoalaCallsiteKey, node: TestNode) => void): State<TestNode> +export declare function testUpdate( + withCallbacks: boolean = true, manager: StateManager = GlobalStateManager.instance): uint32 +export declare function testTick<Node extends IncrementalNode>(root: State<Node>, withCallbacks: boolean = true): void diff --git a/api/arkui/runtime-api/@koalaui.runtime.states.Disposable.d.ets b/api/arkui/runtime-api/@koalaui.runtime.states.Disposable.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..cfc9247d56b105f6420f5988796dd21840158780 --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.states.Disposable.d.ets @@ -0,0 +1,27 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +export interface Disposable { + readonly disposed: boolean + dispose(): void +} +export declare function disposeContentForward<Type extends Disposable>(array: ReadonlyArray<Type | undefined>): void +export declare function disposeContentBackward<Type extends Disposable>(array: ReadonlyArray<Type | undefined>): void +export declare function disposeContent<Type extends Disposable>(it: IterableIterator<Type | undefined>): void diff --git a/api/arkui/runtime-api/@koalaui.runtime.states.GlobalStateManager.d.ets b/api/arkui/runtime-api/@koalaui.runtime.states.GlobalStateManager.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..c10d0e2a2709ec3980ecff4be483bb7f473e5f6d --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.states.GlobalStateManager.d.ets @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { ArrayState, Equivalent, MutableState, StateManager, ValueTracker } from '@koalaui.runtime.states.State' +export declare class GlobalStateManager { + static current: StateManager | undefined + static get instance(): StateManager + static reset(): void +} +export declare function updateStateManager(manager: StateManager = GlobalStateManager.instance): void +export declare function callScheduledCallbacks(manager: StateManager = GlobalStateManager.instance): void +export declare function scheduleCallback( + callback?: () => void, + manager: StateManager = GlobalStateManager.instance): void +export declare function mutableState<T>( + value: T, + equivalent?: Equivalent<T>, + tracker?: ValueTracker<T>): MutableState<T> +export declare function arrayState<T>(array?: ReadonlyArray<T>, equivalent?: Equivalent<T>): ArrayState<T> diff --git a/api/arkui/runtime-api/@koalaui.runtime.states.State.d.ets b/api/arkui/runtime-api/@koalaui.runtime.states.State.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..648ab8004b378d4d0644fa7759510efa24dc00d4 --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.states.State.d.ets @@ -0,0 +1,119 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { int32, KoalaCallsiteKey, uint32 } from '@koalaui.runtime.common' +import { Disposable } from '@koalaui.runtime.states.Disposable' +import { IncrementalNode } from '@koalaui.runtime.tree.IncrementalNode' +export declare const CONTEXT_ROOT_SCOPE: string +export declare const CONTEXT_ROOT_NODE: string +export type Equivalent<Value> = (oldV: Value, newV: Value) => boolean +export declare function createStateManager(): StateManager +export interface StateManager extends StateContext { + syncChanges(): void + isUpdateNeeded(): boolean + updateSnapshot(): uint32 + updatableNode<Node extends IncrementalNode>( + node: Node, + update: (context: StateContext) => void, + cleanup?: () => void): ComputableState<Node> + scheduleCallback(callback: () => void): void + callCallbacks(): void + frozen: boolean + reset(): void +} +export interface State<Value> { + readonly modified: boolean + readonly value: Value +} +export interface MutableState<Value> extends Disposable, State<Value> { + value: Value +} +export interface ArrayState<Item> extends State<ReadonlyArray<Item>> { + length: number + at(index: number): Item + get(index: number): Item + set(index: number, item: Item): void + copyWithin(target: number, start: number, end?: number): Array<Item> + fill(value: Item, start?: number, end?: number): Array<Item> + pop(): Item | undefined + push(...items: Item[]): number + reverse(): Array<Item> + shift(): Item | undefined + sort(comparator?: (a: Item, b: Item) => number): Array<Item> + splice(start: number, deleteCount: number | undefined, ...items: Item[]): Array<Item> + unshift(...items: Item[]): number +} +export interface ComputableState<Value> extends Disposable, State<Value> { + readonly recomputeNeeded: boolean +} +export interface StateContext { + readonly node: IncrementalNode | undefined + attach<Node extends IncrementalNode>( + id: KoalaCallsiteKey, create: () => Node, update: () => void, cleanup?: () => void): void + compute<Value>( + id: KoalaCallsiteKey, + compute: () => Value, + cleanup?: (value: Value | undefined) => void, + once?: boolean): Value + computableState<Value>( + compute: (context: StateContext) => Value, + cleanup?: (context: StateContext, + value: Value | undefined) => void): ComputableState<Value> + mutableState<Value>( + initial: Value, + global?: boolean, + equivalent?: Equivalent<Value>, + tracker?: ValueTracker<Value>): MutableState<Value> + arrayState<Value>( + initial?: ReadonlyArray<Value>, + global?: boolean, + equivalent?: Equivalent<Value>): ArrayState<Value> + namedState<Value>( + name: string, create: () => Value, + global?: boolean, + equivalent?: Equivalent<Value>, + tracker?: ValueTracker<Value>): MutableState<Value> + stateBy<Value>(name: string, global?: boolean): MutableState<Value> | undefined + valueBy<Value>(name: string, global?: boolean): Value + scope<Value>( + id: KoalaCallsiteKey, + paramCount?: int32, + create?: () => IncrementalNode, + compute?: () => Value, + cleanup?: (value: Value | undefined) => void, + once?: boolean, + reuseKey?: string + ): InternalScope<Value> + controlledScope(id: KoalaCallsiteKey, invalidate: () => void): ControlledScope +} +export interface ValueTracker<Value> { + onCreate(value: Value): Value + onUpdate(value: Value): Value +} +export interface InternalScope<Value> { + readonly unchanged: boolean + readonly cached: Value + recache(newValue?: Value): Value + param<V>(index: int32, value: V, equivalent?: Equivalent<V>, name?: string, contextLocal?: boolean): State<V> +} +export interface ControlledScope { + enter(): void + leave(): void +} diff --git a/api/arkui/runtime-api/@koalaui.runtime.tree.IncrementalNode.d.ets b/api/arkui/runtime-api/@koalaui.runtime.tree.IncrementalNode.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..1d69c0133122a45307b13d10345c03fed49c1a5d --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.tree.IncrementalNode.d.ets @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { uint32 } from '@koalaui.runtime.common' +import { Disposable } from '@koalaui.runtime.states.Disposable' +import { ReadonlyTreeNode } from '@koalaui.runtime.tree.ReadonlyTreeNode' +export declare class IncrementalNode implements Disposable, ReadonlyTreeNode { + _disposed: boolean + _child: IncrementalNode | undefined + _prev: IncrementalNode | undefined + _next: IncrementalNode | undefined + _parent: IncrementalNode | undefined + _incremental: IncrementalNode | undefined + protected onChildInserted: ((node: IncrementalNode) => void) | undefined + protected onChildRemoved: ((node: IncrementalNode) => void) | undefined + readonly kind: uint32 + constructor(kind: uint32 = 1) + isKind(kind: uint32): boolean + reuse(reuseKey: string): Disposable | undefined + recycle(reuseKey: string, child: Disposable): boolean + get disposed(): boolean + dispose(): void + detach(): void + get parent(): IncrementalNode | undefined + toString(): string + toHierarchy(): string + get firstChild(): IncrementalNode | undefined + get nextSibling(): IncrementalNode | undefined + get previousSibling(): IncrementalNode | undefined + incrementalUpdateSkip(count: uint32): void + incrementalUpdateDone(parent?: IncrementalNode): void +} diff --git a/api/arkui/runtime-api/@koalaui.runtime.tree.PrimeNumbers.d.ets b/api/arkui/runtime-api/@koalaui.runtime.tree.PrimeNumbers.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..c67f2e67da9eb4eb72424158560535fe298199fe --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.tree.PrimeNumbers.d.ets @@ -0,0 +1,22 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { uint32 } from '@koalaui.runtime.common' +export declare const PrimeNumbers: ReadonlyArray<uint32> \ No newline at end of file diff --git a/api/arkui/runtime-api/@koalaui.runtime.tree.ReadonlyTreeNode.d.ets b/api/arkui/runtime-api/@koalaui.runtime.tree.ReadonlyTreeNode.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..20f05293ebeae75d413d1786ee73c7838ed3e444 --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.tree.ReadonlyTreeNode.d.ets @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +export interface ReadonlyTreeNode { + readonly parent: ReadonlyTreeNode | undefined + toHierarchy(): string +} diff --git a/api/arkui/runtime-api/@koalaui.runtime.tree.TreeNode.d.ets b/api/arkui/runtime-api/@koalaui.runtime.tree.TreeNode.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..0faacd8eb6b6e2589a66e8467433e1e992577a05 --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.tree.TreeNode.d.ets @@ -0,0 +1,64 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { float64, int32, uint32 } from '@koalaui.runtime.common' +import { Disposable } from '@koalaui.runtime.states.Disposable' +import { ReadonlyTreeNode } from '@koalaui.runtime.tree.ReadonlyTreeNode' +export declare class TreeNode implements Disposable, ReadonlyTreeNode { + myIndex: int32 + myParent: TreeNode | undefined + myChildren: Array<TreeNode> + myIndicesValid: boolean + myDisposed: boolean + readonly kind: uint32 + protected onChildInserted: ((node: TreeNode, index: int32) => void) | undefined + protected onChildRemoved: ((node: TreeNode, index: int32) => void) | undefined + constructor(kind: uint32 = 1) + get disposed(): boolean + dispose(): void + get parent(): TreeNode | undefined + get depth(): uint32 + get childrenCount(): uint32 + get children(): ReadonlyArray<TreeNode> + get index(): int32 + isKind(kind: uint32): boolean + find<V>(valueOf: (node: TreeNode, index: int32) => V | undefined): V | undefined + forEach(action: (node: TreeNode, index: float64) => void): void + every(predicate: (node: TreeNode, index: float64) => boolean): boolean + some(predicate: (node: TreeNode, index: float64) => boolean): boolean + childAt(index: int32): TreeNode | undefined + appendChild(node: TreeNode): boolean + insertChildAt(index: int32, node: TreeNode): boolean + appendChildren(...nodes: TreeNode[]): boolean + insertChildrenAt(index: int32, ...nodes: TreeNode[]): boolean + removeChildAt(index: int32): TreeNode | undefined + removeChildrenAt(index: int32, count?: uint32): Array<TreeNode> + removeChild(node: TreeNode): boolean + removeFromParent(): void + removeNodes(index: int32, count: uint32): Array<TreeNode> + insertNodeAt(index: int32, node: TreeNode): void + insertable(node: TreeNode): boolean + accessible(index: int32, count: uint32 = 1): boolean + toString(): string + toHierarchy(): string + collectNodes(): Array<TreeNode> + collectParentsTo(array: Array<TreeNode>): void + collectChildrenTo(array: Array<TreeNode>, deep: boolean = false): void +} diff --git a/api/arkui/runtime-api/@koalaui.runtime.tree.TreePath.d.ets b/api/arkui/runtime-api/@koalaui.runtime.tree.TreePath.d.ets new file mode 100755 index 0000000000000000000000000000000000000000..82afdd3b02b87594251cd07546a47305a5cff17a --- /dev/null +++ b/api/arkui/runtime-api/@koalaui.runtime.tree.TreePath.d.ets @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { uint32 } from '@koalaui.runtime.common' +export declare class TreePath<Node> { + readonly node: Node + readonly parent: TreePath<Node> | undefined + constructor(node: Node, parent?: TreePath<Node>) + child(node: Node): TreePath<Node> + get root(): TreePath<Node> + get depth(): uint32 + toString(): string +} diff --git a/api/arkui/stateManagement/base/backingValue.d.ets b/api/arkui/stateManagement/base/backingValue.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..0a915e71f305d0fe0eccb15cfc33abd97c3fa1c8 --- /dev/null +++ b/api/arkui/stateManagement/base/backingValue.d.ets @@ -0,0 +1,25 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + + export declare class BackingValue<T> { + public constructor(initValue: T) + public get value(): T + public set value(newVale: T) + } \ No newline at end of file diff --git a/api/arkui/stateManagement/base/decoratorBase.d.ets b/api/arkui/stateManagement/base/decoratorBase.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..47f8b147ff5838c4614cc493dde7dfe22fc73ab3 --- /dev/null +++ b/api/arkui/stateManagement/base/decoratorBase.d.ets @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { WatchFuncType } from '../decorators/decoratorWatch'; + +export declare interface IDecoratedImmutableVariable<T> { + get(): T +} + +export declare interface IDecoratedMutableVariable<T> { + get(): T + set(newValue: T): void +} + +export declare interface IDecoratedUpdatableVariable<T> { + update(newValue: T): void +} + +export declare interface AbstractProperty<T> extends IDecoratedMutableVariable<T> { + info(): string; +} + +export declare interface SubscribedAbstractProperty<T> extends AbstractProperty<T> { + aboutToBeDeleted(): void; +} + +export declare class DecoratedVariableBase<T> { + public constructor(decorator: string, varName: string) +} + +export declare class DecoratedV1VariableBase<T> extends DecoratedVariableBase<T> { + public constructor(decorator: string, varName: string, initValue:T, watchFunc?: WatchFuncType) +} \ No newline at end of file diff --git a/api/arkui/stateManagement/base/iObservedObject.d.ets b/api/arkui/stateManagement/base/iObservedObject.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..11e25c2a27ff1d9d155c75d00636565a7af000ff --- /dev/null +++ b/api/arkui/stateManagement/base/iObservedObject.d.ets @@ -0,0 +1,28 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ +import { int32 } from '@koalaui.runtime.common'; + +export declare interface IObservedObject { + _permissibleAddRefDepth: int32; +} + +export declare function castToIObservedObject<T>(obj: T): T | undefined; + +export declare function setObservationDepth<T>(obj: T, depth: number): void; \ No newline at end of file diff --git a/api/arkui/stateManagement/base/mutableStateMeta.d.ets b/api/arkui/stateManagement/base/mutableStateMeta.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..6aee33a1b11392258743c814c66f84d19401844a --- /dev/null +++ b/api/arkui/stateManagement/base/mutableStateMeta.d.ets @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +export declare class MutableStateMetaBase { + public constructor(decorator: string) +} + +export declare class MutableStateMeta extends MutableStateMetaBase { + public addRef(): void + public fireChange(): void + public constructor(decorator: string) +} + +export declare class MutableKeyedStateMeta extends MutableStateMetaBase { + public addRef(key: string): void + public fireChange(key: string): void + public constructor(decorator: string) +} \ No newline at end of file diff --git a/api/arkui/stateManagement/common.d.ets b/api/arkui/stateManagement/common.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..2f479853668e98cb341c18043bafed1f22b08871 --- /dev/null +++ b/api/arkui/stateManagement/common.d.ets @@ -0,0 +1,81 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +@Retention({policy: "SOURCE"}) +export declare @interface State {}; + +@Retention({policy: "SOURCE"}) +export declare @interface Prop {}; + +@Retention({policy: "SOURCE"}) +export declare @interface Link {}; + +@Retention({policy: "SOURCE"}) +export declare @interface Observed {}; + +@Retention({policy: "SOURCE"}) +export declare @interface Track {}; + +@Retention({policy: "SOURCE"}) +export declare @interface ObjectLink {}; + +@Retention({policy: "SOURCE"}) +export declare @interface StorageProp { + property: string; +}; + +@Retention({policy: "SOURCE"}) +export declare @interface StorageLink { + property: string; +}; + +@Retention({policy: "SOURCE"}) +export declare @interface LocalStorageProp { + property: string; +}; + +@Retention({policy: "SOURCE"}) +export declare @interface LocalStorageLink { + property: string; +}; + +@Retention({policy: "SOURCE"}) +export declare @interface Provide { + alias: string = ""; + allowOverride: boolean = false; +}; + +@Retention({policy: "SOURCE"}) +export declare @interface Consume { + alias: string = ""; +}; + +@Retention({policy: "SOURCE"}) +export declare @interface Watch { + callback: string; +}; + +@Retention({policy: "SOURCE"}) +export declare @interface Require {}; + +export declare class UIUtils { + static getTarget<T extends object>(source: T): T; + static makeObserved<T extends object>(source: T): T; +} diff --git a/api/arkui/stateManagement/decorators/decoratorLink.d.ets b/api/arkui/stateManagement/decorators/decoratorLink.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..5d65d77dacbcccb242336a9b7972676ea0aa59ec --- /dev/null +++ b/api/arkui/stateManagement/decorators/decoratorLink.d.ets @@ -0,0 +1,29 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { DecoratedV1VariableBase, IDecoratedMutableVariable } from '../base/decoratorBase'; +import { WatchFuncType } from './decoratorWatch'; + +export declare class LinkDecoratedVariable<T> extends DecoratedV1VariableBase<T> + implements IDecoratedMutableVariable<T> { + public constructor(varName: string, source: DecoratedV1VariableBase<T>, watchFunc?: WatchFuncType) + public get(): T + public set(newValue: T): void +} \ No newline at end of file diff --git a/api/arkui/stateManagement/decorators/decoratorProp.d.ets b/api/arkui/stateManagement/decorators/decoratorProp.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..89eb7968be4b03ce3a1f19b69cc58b5d17623973 --- /dev/null +++ b/api/arkui/stateManagement/decorators/decoratorProp.d.ets @@ -0,0 +1,30 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { DecoratedV1VariableBase, IDecoratedMutableVariable, IDecoratedUpdatableVariable } from '../base/decoratorBase'; +import { WatchFuncType } from './decoratorWatch'; + +export declare class PropDecoratedVariable<T> extends DecoratedV1VariableBase<T> + implements IDecoratedMutableVariable<T>, IDecoratedUpdatableVariable<T> { + public constructor(varName: string, sourceValue: T, watchFunc?: WatchFuncType) + public get(): T + public set(newValue: T): void + public update(newValue: T): void +} \ No newline at end of file diff --git a/api/arkui/stateManagement/decorators/decoratorState.d.ets b/api/arkui/stateManagement/decorators/decoratorState.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..5992f62fc190765f6d6452621ede8e88f398c081 --- /dev/null +++ b/api/arkui/stateManagement/decorators/decoratorState.d.ets @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { DecoratedV1VariableBase, IDecoratedMutableVariable } from '../base/decoratorBase'; +import { PropDecoratedVariable } from './decoratorProp'; +import { WatchIdType, WatchFuncType } from './decoratorWatch'; + +export declare interface __MkPropReturnType<T> { + prop: PropDecoratedVariable<T>; + watchId: WatchIdType; +} + +export declare class StateDecoratedVariable<T> extends DecoratedV1VariableBase<T> + implements IDecoratedMutableVariable<T> { + public constructor(varName: string, initValue: T, watchFunc?: WatchFuncType) + public get(): T + public set(newValue: T): void +} \ No newline at end of file diff --git a/api/arkui/stateManagement/decorators/decoratorStorageLink.d.ets b/api/arkui/stateManagement/decorators/decoratorStorageLink.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..45821e860b64524e8f38d44d67c74c1bdae91053 --- /dev/null +++ b/api/arkui/stateManagement/decorators/decoratorStorageLink.d.ets @@ -0,0 +1,31 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { DecoratedV1VariableBase, IDecoratedMutableVariable } from '../base/decoratorBase'; +import { WatchFuncType } from './decoratorWatch'; + +export declare class StorageLinkDecoratedVariable<T> extends DecoratedV1VariableBase<T> + implements IDecoratedMutableVariable<T> { + public constructor(propName: string, varName: string, localValue: T, watchFunc?: WatchFuncType) + public getInfo(): string + public get(): T + public set(newValue: T): void +} \ No newline at end of file diff --git a/api/arkui/stateManagement/decorators/decoratorStorageProp.d.ets b/api/arkui/stateManagement/decorators/decoratorStorageProp.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..574844395183b7fbc8e561fbae51a0f3647f82b2 --- /dev/null +++ b/api/arkui/stateManagement/decorators/decoratorStorageProp.d.ets @@ -0,0 +1,30 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { DecoratedV1VariableBase, IDecoratedMutableVariable } from '../base/decoratorBase'; +import { WatchFuncType } from './decoratorWatch'; + +export declare class StoragePropDecoratedVariable<T> extends DecoratedV1VariableBase<T> + implements IDecoratedMutableVariable<T> { + public constructor(propName: string, varName:string, localVal: T, watchFunc?: WatchFuncType) + public getInfo(): string + public get(): T + public set(newValue: T): void +} \ No newline at end of file diff --git a/api/arkui/stateManagement/decorators/decoratorWatch.d.ets b/api/arkui/stateManagement/decorators/decoratorWatch.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..9607eb38cc6c45836f96297241e78a52c4df6bf9 --- /dev/null +++ b/api/arkui/stateManagement/decorators/decoratorWatch.d.ets @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ +import { int32 } from '@koalaui.runtime.common'; + +export type WatchFuncType = ((propertyName: string) => void); + +export type WatchIdType = int32; + +export declare class WatchFunc { + public constructor(func: WatchFuncType) +} + +export declare interface IWatchTrigger { + addWatchSubscriber(watchId: WatchIdType): void + removeWatchSubscriber(watchId: WatchIdType): boolean + executeOnSubscribingWatches(propertyName: string): void +} + +export declare class SubscribedWatches implements IWatchTrigger { + public addWatchSubscriber(id: WatchIdType): void + public removeWatchSubscriber(id: WatchIdType): boolean + public executeOnSubscribingWatches(propertyName: string): void +} \ No newline at end of file diff --git a/api/arkui/stateManagement/runtime.d.ets b/api/arkui/stateManagement/runtime.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..6dddf7b14ab9e5899f8c791967e82a8fb34256f3 --- /dev/null +++ b/api/arkui/stateManagement/runtime.d.ets @@ -0,0 +1,80 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { LocalStorage } from '@ohos.arkui.stateManagement' +import { StateContext } from '../runtime-api/@koalaui.runtime.states.State' +// From incremental engine +@Retention({policy: "SOURCE"}) +export declare @interface memo {}; + +@Retention({policy: "SOURCE"}) +export @interface ComponentBuilder {} + +export type __memo_context_type = StateContext; +export type __memo_id_type = MemoCallSiteKey; + +export type MemoCallSiteKey = int; + +export interface Disposable { + readonly disposed: boolean; + dispose(): void; +} + +interface State<T> { + readonly modified: boolean; + readonly value: T; +} + +export interface MutableState<T> extends Disposable, State<T> { + value: T; +} + +export type Equivalent<T> = (oldV: T, newV: T) => boolean; + +export interface InternalScope<Value> { + readonly unchanged: boolean; + readonly cached: Value; + recache(newValue?: Value): Value; + param<T>(index: int, value: T, equivalent?: Equivalent<T>, name?: string, contextLocal?: boolean): State<T>; +} + +// export interface StateContext { +// scope<T>(id: MemoCallSiteKey, paramCount?: int): InternalScope<T>; +// } + +// From Arkoala +export declare function propState<T>(value?: T): SyncedProperty<T>; +export declare function objectLinkState<T>(value?: T): SyncedProperty<T>; +export declare function stateOf<T>(value: T): MutableState<T>; +export declare function contextLocalStateOf<T>(value: string, key: () => T): MutableState<T>; +export declare function contextLocal<T>(value: string): MutableState<T>; +export declare function observableProxy<T>(value: T): T; +export declare function StorageLinkState<T>(storage: LocalStorage, name: string, value: T): MutableState<T> +export declare function AppStorageLinkState<T>(name: string, value: T): MutableState<T>; + +export declare class SyncedProperty<T> implements MutableState<T> { + constructor(value: T | undefined, deepCopyOnUpdate: boolean); + dispose(): void; + get disposed(): boolean; + get modified(): boolean; + get value(): T; + set value(value: T); + update(value?: T): void; +} diff --git a/api/arkui/stateManagement/storage.d.ets b/api/arkui/stateManagement/storage.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..d9db07a64504aaf2a2e84fb6678d6a5ecae1cfff --- /dev/null +++ b/api/arkui/stateManagement/storage.d.ets @@ -0,0 +1,339 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +export interface StorageProperty { + key: string; + defaultValue: number | string | boolean | Object; +} + +export type PersistPropsOptions = StorageProperty; + +interface AbstractProperty<T> { + info(): string; + get(): T; + set(newValue: T): void; +} + +interface SubscribedAbstractProperty<T> extends AbstractProperty<T> { + aboutToBeDeleted(): void; +} + +declare class LocalStorage { + static getShared(): LocalStorage | undefined; + + constructor(initializingProperties?: StorageProperty[]); + + has(propName: string): boolean; + + keys(): IterableIterator<string>; + + size(): int; + + get<T>(propName: string): T | undefined; + + set<T>(propName: string, newValue: T): boolean; + + setOrCreate<T>(propName: string, newValue?: T): boolean; + + ref<T>(propName: string): AbstractProperty<T> | undefined; + + setAndRef<T>(propName: string, defaultValue: T): AbstractProperty<T>; + + link<T>(propName: string): SubscribedAbstractProperty<T> | undefined; + + setAndLink<T>(propName: string, defaultValue: T): SubscribedAbstractProperty<T>; + + prop<T>(propName: string): SubscribedAbstractProperty<T> | undefined; + + setAndProp<T>(propName: string, defaultValue: T): SubscribedAbstractProperty<T>; + + delete(propName: string): boolean; + + clear(): boolean; +} + +declare class AppStorage { + static has(propName: string): boolean; + + static keys(): IterableIterator<string>; + + static size(): int; + + static get<T>(propName: string): T | undefined; + + static set<T>(propName: string, newValue: T): boolean; + + static setOrCreate<T>(propName: string, newValue?: T): boolean; + + static ref<T>(propName: string): AbstractProperty<T> | undefined; + + static setAndRef<T>(propName: string, defaultValue: T): AbstractProperty<T>; + + static link<T>(propName: string): SubscribedAbstractProperty<T> | undefined; + + static setAndLink<T>(propName: string, defaultValue: T): SubscribedAbstractProperty<T>; + + static prop<T>(propName: string): SubscribedAbstractProperty<T> | undefined; + + static setAndProp<T>(propName: string, defaultValue: T): SubscribedAbstractProperty<T>; + + static delete(propName: string): boolean; + + static clear(): boolean; +} + +export declare class PersistentStorage { + + static persistProp<T>(key: string, defaultValue: T): void; + + static deleteProp(key: string): void; + + static persistProps(props: PersistPropsOptions[]): void; + + static keys(): Array<string>; +} + +export interface EnvPropsOptions { + key: string; + defaultValue: number | string | boolean; +} + +export declare class Environment { + static envProp<S>(key: string, value: S): boolean; + + static envProps(props: EnvPropsOptions[]): void; + + static keys(): Array<string>; +} + + +/** + * Function that returns default creator. + * + * @typedef { function } StorageDefaultCreator<T> + * @returns { T } default creator + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type StorageDefaultCreator<T> = () => T; + +/** + * Define class constructor with arbitrary parameters. + * @interface TypeConstructorWithArgs<T> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +// #ToDO: fix +export interface TypeConstructorWithArgs<T> { + /** + * @param { any } args the arguments of the constructor. + * @returns { T } return class instance. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + // new(...args: Array<Object>): T; +} + +/** + * AppStorageV2 is for UI state of app-wide access, has same life cycle as the app, + * and saves database content only in memory. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class AppStorageV2 { + /** + * If the value for the given key is already available, return the value. + * If not, add the key with value generated by calling defaultFunc and return it to caller. + * + * @param { TypeConstructorWithArgs<T> } type class type of the stored value. + * @param { string | StorageDefaultCreator<T> } [keyOrDefaultCreator] alias name of the key, + * or the function generating the default value. + * @param { StorageDefaultCreator<T> } [defaultCreator] the function generating the default value + * @returns { T | undefined } the value of the existed key or the default value + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static connect<T extends object>( + type: TypeConstructorWithArgs<T>, + keyOrDefaultCreator?: string | StorageDefaultCreator<T>, + defaultCreator?: StorageDefaultCreator<T> + ): T | undefined; + + /** + * Removes data with the given key or given class type. + * + * @param { string | TypeConstructorWithArgs<T> } keyOrType key or class type removing + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static remove<T>(keyOrType: string | TypeConstructorWithArgs<T>): void; + /** + * Return the array of all keys. + * + * @returns { Array<string> } the array of all keys + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static keys(): Array<string>; +} + +/** + * Function that returns reason type when error. + * + * @typedef { function } PersistenceErrorCallback + * @param { string } key persisted key when error + * @param { 'quota' | 'serialization' | 'unknown' } reason reason type when error + * @param { string } message more message when error + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export type PersistenceErrorCallback = (key: string, reason: 'quota' | 'serialization' | 'unknown', message: string) => void; + +/** + * PersistenceV2 is for UI state of app-wide access, available on app re-start, + * and saves database content in disk. + * + * @extends AppStorageV2 + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class PersistenceV2 extends AppStorageV2 { + /** + * Used to manually persist data changes to disks. + * + * @param { string | TypeConstructorWithArgs<T> } keyOrType key or class type need to persist. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static save<T>(keyOrType: string | TypeConstructorWithArgs<T>): void; + + /** + * Be called when persisting has encountered an error. + * + * @param { PersistenceErrorCallback | undefined } callback called when error + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static notifyOnError(callback: PersistenceErrorCallback | undefined): void; +} + +/** + * Define TypeConstructor type. + * + * @interface TypeConstructor<T> + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export interface TypeConstructor<T> { + /** + * @returns { T } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + // new(): T; +} + +/** + * Function that returns PropertyDecorator. + * + * @typedef { function } TypeDecorator + * @param { TypeConstructor<T> } type type info + * @returns { PropertyDecorator } Type decorator + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +// export type TypeDecorator = <T>(type: TypeConstructor<T>) => PropertyDecorator; + + +/** + * Define Type PropertyDecorator, adds type information to an object. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +// export declare const Type: TypeDecorator; + +/** + * UIUtils is a state management tool class for operating the observed data. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ +export declare class UIUtils { + /** + * Get raw object from the Object wrapped with an ObservedObject. + * If input parameter is a regular Object without ObservedObject, return Object itself. + * + * @param { T } source input source Object data. + * @returns { T } raw object from the Object wrapped with an ObservedObject. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static getTarget<T extends object>(source: T): T; + + /** + * Make non-observed data into observed data. + * Support non-observed class, JSON.parse Object and Sendable class. + * + * @param { T } source input source object data. + * @returns { T } proxy object from the source object data. + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @crossplatform + * @atomicservice + * @since 12 + */ + static makeObserved<T extends object>(source: T): T; + +} \ No newline at end of file diff --git a/api/arkui/stateManagement/storages/appStorage.d.ets b/api/arkui/stateManagement/storages/appStorage.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..b5d4066fe5a0935bc725e7be4fd09b64ee370f87 --- /dev/null +++ b/api/arkui/stateManagement/storages/appStorage.d.ets @@ -0,0 +1,39 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { LocalStorage } from './localStorage'; +import { AbstractProperty, SubscribedAbstractProperty } from '../base/decoratorBase'; + +export declare class AppStorage extends LocalStorage { + public static ref<T>(propName: string): AbstractProperty<T> | undefined; + public static setAndRef<T>(propName: string, defaultValue: T): AbstractProperty<T>; + public static link<T>(propName: string): SubscribedAbstractProperty<T> | undefined; + public static setAndLink<T>(propName: string, defaultValue: T): SubscribedAbstractProperty<T>; + public static prop<T>(propName: string): SubscribedAbstractProperty<T> | undefined; + public static setAndProp<T>(propName: string, defaultValue: T): SubscribedAbstractProperty<T>; + public static has(propName: string): boolean; + public static get<T>(propName: string): T | undefined; + public static set<T>(propName: string, newValue: T): boolean; + public static setOrCreate<T>(propName: string, newValue: T): void; + public static keys(): IterableIterator<string>; + public static size(): number; + public static delete(propName: string): boolean; + public static clear(): boolean; +} \ No newline at end of file diff --git a/api/arkui/stateManagement/storages/localStorage.d.ets b/api/arkui/stateManagement/storages/localStorage.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..96f27906180faa0f6ce5f37463775bc1a73c769f --- /dev/null +++ b/api/arkui/stateManagement/storages/localStorage.d.ets @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit ArkUI + * @arkts 1.2 + */ + +import { AbstractProperty, SubscribedAbstractProperty } from '../base/decoratorBase'; + +export declare class LocalStorage { + public constructor(initializingProperties?: Object); + public static getShared(): LocalStorage | undefined; + public ref<T>(propName: string): AbstractProperty<T> | undefined; + public setAndRef<T>(propName: string, defaultValue: T): AbstractProperty<T>; + public link<T>(propName: string): SubscribedAbstractProperty<T> | undefined; + public setAndLink<T>(propName: string, defaultValue: T): SubscribedAbstractProperty<T>; + public prop<T>(propName: string): SubscribedAbstractProperty<T> | undefined; + public setAndProp<T>(propName: string, defaultValue: T): SubscribedAbstractProperty<T>; + public has(propName: string): boolean; + public get<T>(propName: string): T | undefined; + public set<T>(propName: string, newValue: T): boolean; + public setOrCreate<T>(propName: string, newValue: T): boolean; + public keys(): IterableIterator<string>; + public size(): number; + public delete(propName: string): boolean; + public clear(): boolean; +} \ No newline at end of file diff --git a/api/bundleManager/AbilityInfo.d.ts b/api/bundleManager/AbilityInfo.d.ts index efbe0d0b873dcd280e23c83dd89f838ea79ddcd6..c178036ae4f78b783a178770d65b5002f3552853 100644 --- a/api/bundleManager/AbilityInfo.d.ts +++ b/api/bundleManager/AbilityInfo.d.ts @@ -45,7 +45,8 @@ import { Skill } from './Skill'; * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface AbilityInfo { /** @@ -73,12 +74,13 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly bundleName: string; /** - * Indicates the name of the .hap package to which the capability belongs + * Indicates the module name of the package to which the capability belongs * * @type { string } * @readonly @@ -86,7 +88,7 @@ export interface AbilityInfo { * @since 9 */ /** - * Indicates the name of the .hap package to which the capability belongs + * Indicates the module name of the package to which the capability belongs * * @type { string } * @readonly @@ -95,14 +97,15 @@ export interface AbilityInfo { * @since 10 */ /** - * Indicates the name of the .hap package to which the capability belongs + * Indicates the module name of the package to which the capability belongs * * @type { string } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly moduleName: string; @@ -131,7 +134,8 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly name: string; @@ -160,7 +164,8 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly label: string; @@ -189,7 +194,8 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly labelId: number; @@ -218,7 +224,8 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly description: string; @@ -247,7 +254,8 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly descriptionId: number; @@ -276,7 +284,8 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly icon: string; @@ -305,7 +314,8 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly iconId: number; @@ -326,6 +336,17 @@ export interface AbilityInfo { * @atomicservice * @since 11 */ + /** + * Process of ability, if user do not set it, the value equal application process + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly process: string; /** @@ -345,6 +366,17 @@ export interface AbilityInfo { * @atomicservice * @since 11 */ + /** + * Indicates whether this ability can be called by other abilities + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly exported: boolean; /** @@ -375,6 +407,17 @@ export interface AbilityInfo { * @atomicservice * @since 11 */ + /** + * Enumerates ability display orientations + * + * @type { bundleManager.DisplayOrientation } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly orientation: bundleManager.DisplayOrientation; /** @@ -402,7 +445,8 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly launchType: bundleManager.LaunchType; @@ -423,6 +467,17 @@ export interface AbilityInfo { * @atomicservice * @since 11 */ + /** + * The permissions that others need to launch this ability + * + * @type { Array<string> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly permissions: Array<string>; /** @@ -475,6 +530,17 @@ export interface AbilityInfo { * @atomicservice * @since 11 */ + /** + * The device types that this ability can run on + * + * @type { Array<string> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly deviceTypes: Array<string>; /** @@ -502,7 +568,8 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly applicationInfo: ApplicationInfo; @@ -531,7 +598,8 @@ export interface AbilityInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly metadata: Array<Metadata>; @@ -552,6 +620,17 @@ export interface AbilityInfo { * @atomicservice * @since 11 */ + /** + * Indicates whether the ability is enabled + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly enabled: boolean; /** @@ -571,6 +650,17 @@ export interface AbilityInfo { * @atomicservice * @since 11 */ + /** + * Indicates which window mode is supported + * + * @type { Array<bundleManager.SupportWindowMode> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly supportWindowModes: Array<bundleManager.SupportWindowMode>; /** @@ -590,6 +680,17 @@ export interface AbilityInfo { * @atomicservice * @since 11 */ + /** + * Indicates window size + * + * @type { WindowSize } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly windowSize: WindowSize; /** @@ -599,7 +700,8 @@ export interface AbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly excludeFromDock: boolean; @@ -610,7 +712,8 @@ export interface AbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly skills: Array<Skill>; @@ -620,7 +723,8 @@ export interface AbilityInfo { * @type { number } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly appIndex: number; @@ -631,7 +735,8 @@ export interface AbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly orientationId: number; } @@ -651,6 +756,16 @@ export interface AbilityInfo { * @atomicservice * @since 11 */ +/** + * Indicates the window size. + * + * @typedef WindowSize + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export interface WindowSize { /** * Indicates maximum ratio of width over height of window under free window status. @@ -669,6 +784,17 @@ export interface WindowSize { * @atomicservice * @since 11 */ + /** + * Indicates maximum ratio of width over height of window under free window status. + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly maxWindowRatio: number; /** @@ -688,6 +814,17 @@ export interface WindowSize { * @atomicservice * @since 11 */ + /** + * Indicates minimum ratio of width over height of window under free window status. + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly minWindowRatio: number; /** @@ -707,6 +844,17 @@ export interface WindowSize { * @atomicservice * @since 11 */ + /** + * Indicates maximum width of window under free window status. + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly maxWindowWidth: number; /** @@ -726,6 +874,17 @@ export interface WindowSize { * @atomicservice * @since 11 */ + /** + * Indicates minimum width of window under free window status. + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly minWindowWidth: number; /** @@ -745,6 +904,17 @@ export interface WindowSize { * @atomicservice * @since 11 */ + /** + * Indicates maximum height of window under free window status. + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly maxWindowHeight: number; /** @@ -764,5 +934,16 @@ export interface WindowSize { * @atomicservice * @since 11 */ + /** + * Indicates minimum height of window under free window status. + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly minWindowHeight: number; } diff --git a/api/bundleManager/ApplicationInfo.d.ts b/api/bundleManager/ApplicationInfo.d.ts index 14bd7443ab63d9c313d705025926cec7e041f33b..5a0ba69cf8f9ff896058467534581020dde7a66f 100644 --- a/api/bundleManager/ApplicationInfo.d.ts +++ b/api/bundleManager/ApplicationInfo.d.ts @@ -44,7 +44,8 @@ import bundleManager from './../@ohos.bundle.bundleManager'; * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface ApplicationInfo { /** @@ -72,7 +73,8 @@ export interface ApplicationInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly name: string; @@ -101,7 +103,8 @@ export interface ApplicationInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly description: string; @@ -130,7 +133,8 @@ export interface ApplicationInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly descriptionId: number; @@ -151,6 +155,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates whether or not this application may be instantiated + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly enabled: boolean; /** @@ -178,7 +193,8 @@ export interface ApplicationInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly label: string; @@ -207,7 +223,8 @@ export interface ApplicationInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly labelId: number; @@ -236,7 +253,8 @@ export interface ApplicationInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly icon: string; @@ -265,7 +283,8 @@ export interface ApplicationInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly iconId: number; @@ -286,6 +305,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Process of application, if user do not set it ,the value equal bundleName + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly process: string; /** @@ -305,6 +335,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates the permissions required for accessing the application. + * + * @type { Array<string> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly permissions: Array<string>; /** @@ -332,7 +373,8 @@ export interface ApplicationInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly codePath: string; @@ -365,6 +407,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates the metadata of the application + * + * @type { Array<ModuleMetadata> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly metadataArray: Array<ModuleMetadata>; /** @@ -384,6 +437,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates whether or not this application may be removable + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly removable: boolean; /** @@ -403,6 +467,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates the access token of the application + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly accessTokenId: number; /** @@ -422,6 +497,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates the uid of the application + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly uid: number; /** @@ -441,6 +527,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates icon resource of the application + * + * @type { Resource } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly iconResource: Resource; /** @@ -460,6 +557,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates label resource of the application + * + * @type { Resource } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly labelResource: Resource; /** @@ -479,6 +587,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates description resource of the application + * + * @type { Resource } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly descriptionResource: Resource; /** @@ -498,6 +617,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates the appDistributionType of the application + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly appDistributionType: string; /** @@ -517,6 +647,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates the appProvisionType of the application + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly appProvisionType: string; /** @@ -536,6 +677,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates whether the application is a system application + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly systemApp: boolean; /** @@ -553,7 +705,8 @@ export interface ApplicationInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly bundleType: bundleManager.BundleType; @@ -574,6 +727,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates whether the application is in debug mode. + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly debug: boolean; /** @@ -585,6 +749,17 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ + /** + * Indicates whether the application data is unclearable, that is, whether the application data cannot be cleared. + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly dataUnclearable: boolean; /** @@ -595,6 +770,16 @@ export interface ApplicationInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @since 12 */ + /** + * Indicates native library path. + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @since 20 + * @arkts 1.1&1.2 + */ readonly nativeLibraryPath: string; /** @@ -603,7 +788,8 @@ export interface ApplicationInfo { * @type { MultiAppMode } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly multiAppMode: MultiAppMode; @@ -613,7 +799,8 @@ export interface ApplicationInfo { * @type { number } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly appIndex: number; @@ -624,7 +811,8 @@ export interface ApplicationInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly installSource: string; @@ -637,6 +825,17 @@ export interface ApplicationInfo { * @atomicservice * @since 12 */ + /** + * Indicates the release type of the app + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly releaseType: string; /** @@ -646,7 +845,8 @@ export interface ApplicationInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly cloudFileSyncEnabled: boolean; @@ -657,7 +857,8 @@ export interface ApplicationInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly flags?: number; } @@ -677,6 +878,16 @@ export interface ApplicationInfo { * @atomicservice * @since 11 */ +/** + * Indicates the ModuleMetadata + * + * @typedef ModuleMetadata + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export interface ModuleMetadata { /** * Indicates the name of this hap module @@ -695,6 +906,17 @@ export interface ModuleMetadata { * @atomicservice * @since 11 */ + /** + * Indicates the name of this hap module + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly moduleName: string; /** @@ -714,6 +936,17 @@ export interface ModuleMetadata { * @atomicservice * @since 11 */ + /** + * Indicates the metadata of this hap module + * + * @type { Array<Metadata> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly metadata: Array<Metadata>; } @@ -722,7 +955,8 @@ export interface ModuleMetadata { * * @typedef MultiAppMode * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface MultiAppMode { /** @@ -731,7 +965,8 @@ export interface MultiAppMode { * @type { bundleManager.MultiAppModeType } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly multiAppModeType: bundleManager.MultiAppModeType; @@ -741,7 +976,8 @@ export interface MultiAppMode { * @type { number } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly maxCount: number; } @@ -752,7 +988,8 @@ export interface MultiAppMode { * @typedef PreinstalledApplicationInfo * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface PreinstalledApplicationInfo { @@ -763,7 +1000,8 @@ export interface PreinstalledApplicationInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly bundleName: string; @@ -774,7 +1012,8 @@ export interface PreinstalledApplicationInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly moduleName: string; @@ -785,7 +1024,8 @@ export interface PreinstalledApplicationInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly iconId: number; @@ -796,7 +1036,8 @@ export interface PreinstalledApplicationInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly labelId: number; } \ No newline at end of file diff --git a/api/bundleManager/BundleInfo.d.ts b/api/bundleManager/BundleInfo.d.ts index 846ffc4d710051941193aabfdc8c643cf17a08ce..caf837e08e2d84ffa03443da478226e31ea6e3d3 100644 --- a/api/bundleManager/BundleInfo.d.ts +++ b/api/bundleManager/BundleInfo.d.ts @@ -37,6 +37,16 @@ import bundleManager from './../@ohos.bundle.bundleManager'; * @atomicservice * @since 11 */ +/** + * Obtains configuration information about a bundle + * + * @typedef BundleInfo + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export interface BundleInfo { /** * Indicates the name of this bundle @@ -55,6 +65,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the name of this bundle + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly name: string; /** @@ -74,6 +95,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the bundle vendor + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly vendor: string; /** @@ -93,6 +125,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the version code of the bundle + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly versionCode: number; /** @@ -112,6 +155,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the version name of the bundle + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly versionName: string; /** @@ -131,6 +185,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the **minimum ** version compatible with the bundle + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly minCompatibleVersionCode: number; /** @@ -150,6 +215,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the target version number of the bundle + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly targetVersion: number; /** @@ -169,6 +245,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Obtains configuration information about an application + * + * @type { ApplicationInfo } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly appInfo: ApplicationInfo; /** @@ -188,6 +275,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Obtains configuration information about a module + * + * @type { Array<HapModuleInfo> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly hapModulesInfo: Array<HapModuleInfo>; /** @@ -207,6 +305,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the required permissions details defined in the bundle + * + * @type { Array<ReqPermissionDetail> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly reqPermissionDetails: Array<ReqPermissionDetail>; /** @@ -226,6 +335,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the grant state of required permissions + * + * @type { Array<bundleManager.PermissionGrantState> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly permissionGrantStates: Array<bundleManager.PermissionGrantState>; /** @@ -245,6 +365,17 @@ export interface BundleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the SignatureInfo of the bundle + * + * @type { SignatureInfo } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly signatureInfo: SignatureInfo; /** @@ -262,7 +393,8 @@ export interface BundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly installTime: number; @@ -281,7 +413,8 @@ export interface BundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly updateTime: number; @@ -292,7 +425,8 @@ export interface BundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly routerMap: Array<RouterItem>; @@ -302,7 +436,8 @@ export interface BundleInfo { * @type { number } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly appIndex: number; @@ -313,7 +448,8 @@ export interface BundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly firstInstallTime?: number; } @@ -333,6 +469,16 @@ export interface BundleInfo { * @atomicservice * @since 11 */ +/** + * Indicates the required permissions details defined in configuration file + * + * @typedef ReqPermissionDetail + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export interface ReqPermissionDetail { /** * Indicates the name of this required permissions @@ -349,6 +495,16 @@ export interface ReqPermissionDetail { * @atomicservice * @since 11 */ + /** + * Indicates the name of this required permissions + * + * @type { string } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ name: string; /** @@ -364,7 +520,8 @@ export interface ReqPermissionDetail { * @type { string } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ moduleName: string; @@ -383,6 +540,16 @@ export interface ReqPermissionDetail { * @atomicservice * @since 11 */ + /** + * Indicates the reason of this required permissions + * + * @type { string } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ reason: string; /** @@ -400,6 +567,16 @@ export interface ReqPermissionDetail { * @atomicservice * @since 11 */ + /** + * Indicates the reason id of this required permissions + * + * @type { number } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ reasonId: number; /** @@ -417,6 +594,16 @@ export interface ReqPermissionDetail { * @atomicservice * @since 11 */ + /** + * Indicates the used scene of this required permissions + * + * @type { UsedScene } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ usedScene: UsedScene; } @@ -435,6 +622,16 @@ export interface ReqPermissionDetail { * @atomicservice * @since 11 */ +/** + * The scene which is used + * + * @typedef UsedScene + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export interface UsedScene { /** * Indicates the abilities that need the permission @@ -451,6 +648,16 @@ export interface UsedScene { * @atomicservice * @since 11 */ + /** + * Indicates the abilities that need the permission + * + * @type { Array<string> } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ abilities: Array<string>; /** @@ -468,6 +675,16 @@ export interface UsedScene { * @atomicservice * @since 11 */ + /** + * Indicates the time when the permission is used + * + * @type { string } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ when: string; } @@ -486,6 +703,16 @@ export interface UsedScene { * @atomicservice * @since 11 */ +/** + * Indicates SignatureInfo + * + * @typedef SignatureInfo + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ export interface SignatureInfo { /** * Indicates the ID of the application to which this bundle belongs @@ -506,6 +733,18 @@ export interface SignatureInfo { * @atomicservice * @since 11 */ + /** + * Indicates the ID of the application to which this bundle belongs + * The application ID uniquely identifies an application. It is determined by the bundle name and signature + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly appId: string; /** @@ -525,6 +764,17 @@ export interface SignatureInfo { * @atomicservice * @since 11 */ + /** + * Indicates the fingerprint of the certificate + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly fingerprint: string; /** @@ -536,7 +786,8 @@ export interface SignatureInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly appIdentifier: string; @@ -547,7 +798,8 @@ export interface SignatureInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly certificate?: string; } @@ -557,7 +809,8 @@ export interface SignatureInfo { * * @typedef AppCloneIdentity * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface AppCloneIdentity { /** @@ -566,7 +819,8 @@ export interface AppCloneIdentity { * @type { string } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly bundleName: string; /** @@ -575,7 +829,92 @@ export interface AppCloneIdentity { * @type { number } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 14 + * @since arkts {'1.1':'14', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly appIndex: number; +} + +/** + * Obtains dynamic icon information about a bundle + * + * @typedef DynamicIconInfo + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ +export interface DynamicIconInfo { + /** + * Indicates the name of the bundle. + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + readonly bundleName: string; + + /** + * Indicates the name of the dynamic icon. + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + readonly moduleName: string; + + /** + * Indicates the user id of the bundle. + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + readonly userId: number; + + /** + * Indicates the index of the bundle. + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 */ readonly appIndex: number; } + +/** + * The bundle options of bundle manager + * + * @typedef BundleOptions + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ +export interface BundleOptions { + /** + * Indicates the user id. + * + * @type { ?number } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + userId?: number; + + /** + * Indicates the app index. + * + * @type { ?number } + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @systemapi + * @since 20 + */ + appIndex?: number; +} diff --git a/api/bundleManager/BundleResourceInfo.d.ts b/api/bundleManager/BundleResourceInfo.d.ts index 86a2a7f7e15046b4041dcc6b4bde78cd14437f0e..6952f3d65b7a6a7e3e333d348eb771f33f25dcef 100644 --- a/api/bundleManager/BundleResourceInfo.d.ts +++ b/api/bundleManager/BundleResourceInfo.d.ts @@ -18,7 +18,9 @@ * @kit AbilityKit */ +/*** if arkts 1.1 */ import { DrawableDescriptor } from './../@ohos.arkui.drawableDescriptor'; +/*** endif */ /** * Obtains resource information about a bundle @@ -26,7 +28,8 @@ import { DrawableDescriptor } from './../@ohos.arkui.drawableDescriptor'; * @typedef BundleResourceInfo * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface BundleResourceInfo { /** @@ -36,7 +39,8 @@ export interface BundleResourceInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly bundleName: string; @@ -47,7 +51,8 @@ export interface BundleResourceInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly icon: string; @@ -58,7 +63,8 @@ export interface BundleResourceInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly label: string; @@ -80,7 +86,8 @@ export interface BundleResourceInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Resource * @systemapi - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly appIndex: number; } diff --git a/api/bundleManager/ElementName.d.ts b/api/bundleManager/ElementName.d.ts index 8c850824d39f09ce393e98c122de9c2979c15357..359d6dc15c2f05143f2e44d8c74e9a0a0ea7c4aa 100644 --- a/api/bundleManager/ElementName.d.ts +++ b/api/bundleManager/ElementName.d.ts @@ -35,7 +35,8 @@ * @typedef ElementName * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface ElementName { /** @@ -51,7 +52,8 @@ export interface ElementName { * @type { ?string } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ deviceId?: string; @@ -66,7 +68,8 @@ export interface ElementName { * @default Indicates bundle name * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ bundleName: string; @@ -81,7 +84,8 @@ export interface ElementName { * @default Indicates module name * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ moduleName?: string; @@ -98,7 +102,8 @@ export interface ElementName { * @type { string } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ abilityName: string; @@ -115,7 +120,8 @@ export interface ElementName { * @type { ?string } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ uri?: string; @@ -132,7 +138,8 @@ export interface ElementName { * @type { ?string } * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ shortName?: string; } diff --git a/api/bundleManager/ExtensionAbilityInfo.d.ts b/api/bundleManager/ExtensionAbilityInfo.d.ts index f40c13c91a20177ea648eaa705bf482ba97cdfaa..d863294176873a90927d498c6db7427edf982aba 100644 --- a/api/bundleManager/ExtensionAbilityInfo.d.ts +++ b/api/bundleManager/ExtensionAbilityInfo.d.ts @@ -36,7 +36,8 @@ import { Skill } from './Skill'; * @typedef ExtensionAbilityInfo * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface ExtensionAbilityInfo { /** @@ -54,7 +55,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly bundleName: string; @@ -73,7 +75,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly moduleName: string; @@ -92,7 +95,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly name: string; @@ -111,7 +115,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly labelId: number; @@ -130,7 +135,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly descriptionId: number; @@ -149,7 +155,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly iconId: number; @@ -168,7 +175,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly exported: boolean; @@ -187,7 +195,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly extensionAbilityType: bundleManager.ExtensionAbilityType; @@ -198,7 +207,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly extensionAbilityTypeName: string; @@ -217,7 +227,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly permissions: Array<string>; @@ -236,7 +247,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly applicationInfo: ApplicationInfo; @@ -255,7 +267,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly metadata: Array<Metadata>; @@ -274,7 +287,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly enabled: boolean; @@ -293,7 +307,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly readPermission: string; @@ -312,7 +327,8 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly writePermission: string; @@ -323,9 +339,10 @@ export interface ExtensionAbilityInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ - readonly skills: Array<Skill>; + readonly skills: Array<Skill>; /** * Indicates the appIndex of extension ability, only work in clone app mode @@ -333,7 +350,8 @@ export interface ExtensionAbilityInfo { * @type { number } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly appIndex: number; } diff --git a/api/bundleManager/HapModuleInfo.d.ts b/api/bundleManager/HapModuleInfo.d.ts index 852cb649812663d472cb56517039778e47dc46ee..ae02a1d3b640809310e7b3080f1a3405954e600b 100644 --- a/api/bundleManager/HapModuleInfo.d.ts +++ b/api/bundleManager/HapModuleInfo.d.ts @@ -45,7 +45,8 @@ import bundleManager from './../@ohos.bundle.bundleManager'; * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface HapModuleInfo { /** @@ -73,7 +74,8 @@ export interface HapModuleInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly name: string; @@ -102,7 +104,8 @@ export interface HapModuleInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly icon: string; @@ -131,7 +134,8 @@ export interface HapModuleInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly iconId: number; @@ -160,7 +164,8 @@ export interface HapModuleInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly label: string; @@ -189,7 +194,8 @@ export interface HapModuleInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly labelId: number; @@ -218,7 +224,8 @@ export interface HapModuleInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly description: string; @@ -247,7 +254,8 @@ export interface HapModuleInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly descriptionId: number; @@ -276,7 +284,8 @@ export interface HapModuleInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly mainElementName: string; @@ -305,7 +314,8 @@ export interface HapModuleInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly abilitiesInfo: Array<AbilityInfo>; @@ -324,7 +334,8 @@ export interface HapModuleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly extensionAbilitiesInfo: Array<ExtensionAbilityInfo>; @@ -353,7 +364,8 @@ export interface HapModuleInfo { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly metadata: Array<Metadata>; @@ -374,6 +386,17 @@ export interface HapModuleInfo { * @atomicservice * @since 11 */ + /** + * The device types that this hap module can run on + * + * @type { Array<string> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly deviceTypes: Array<string>; /** @@ -393,6 +416,17 @@ export interface HapModuleInfo { * @atomicservice * @since 11 */ + /** + * Indicates whether free installation of the hap module is supported + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly installationFree: boolean; /** @@ -412,6 +446,17 @@ export interface HapModuleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the hash value of the hap module + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly hashValue: string; /** @@ -431,6 +476,17 @@ export interface HapModuleInfo { * @atomicservice * @since 11 */ + /** + * Indicates the type of the module + * + * @type { bundleManager.ModuleType } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.1&1.2 + */ readonly type: bundleManager.ModuleType; /** @@ -448,7 +504,8 @@ export interface HapModuleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly dependencies: Array<Dependency>; @@ -467,7 +524,8 @@ export interface HapModuleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly preloads: Array<PreloadItem>; @@ -478,7 +536,8 @@ export interface HapModuleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly fileContextMenuConfig: string; @@ -489,7 +548,8 @@ export interface HapModuleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly routerMap: Array<RouterItem>; @@ -499,18 +559,20 @@ export interface HapModuleInfo { * @type { string } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly nativeLibraryPath: string; - /** + /** * Indicates the code path * * @type { string } * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly codePath: string; } @@ -528,7 +590,8 @@ export interface HapModuleInfo { * @typedef Dependency * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface Dependency { /** @@ -546,7 +609,8 @@ export interface Dependency { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly moduleName: string; @@ -565,7 +629,8 @@ export interface Dependency { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly bundleName: string; @@ -584,7 +649,8 @@ export interface Dependency { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly versionCode: number; } @@ -602,7 +668,8 @@ export interface Dependency { * @typedef PreloadItem * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface PreloadItem { /** @@ -620,7 +687,8 @@ export interface PreloadItem { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly moduleName: string; } @@ -631,7 +699,8 @@ export interface PreloadItem { * @typedef RouterItem * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface RouterItem { /** @@ -641,7 +710,8 @@ export interface RouterItem { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly name: string; /** @@ -651,7 +721,8 @@ export interface RouterItem { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly pageSourceFile: string; /** @@ -661,7 +732,8 @@ export interface RouterItem { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly buildFunction: string; /** @@ -671,7 +743,8 @@ export interface RouterItem { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly customData: string; /** @@ -681,7 +754,8 @@ export interface RouterItem { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly data: Array<DataItem>; } @@ -692,7 +766,8 @@ export interface RouterItem { * @typedef DataItem * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface DataItem { /** @@ -702,7 +777,8 @@ export interface DataItem { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly key: string; /** @@ -712,7 +788,8 @@ export interface DataItem { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ readonly value: string; } \ No newline at end of file diff --git a/api/bundleManager/Metadata.d.ts b/api/bundleManager/Metadata.d.ts index 81cc8929ef17531a5651009e36a5c4b30633ff53..a4886fcb1bf76e46be12e7c0be1dbbe0cd8a4361 100644 --- a/api/bundleManager/Metadata.d.ts +++ b/api/bundleManager/Metadata.d.ts @@ -40,7 +40,8 @@ * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface Metadata { /** @@ -65,7 +66,8 @@ export interface Metadata { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ name: string; @@ -91,7 +93,8 @@ export interface Metadata { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ value: string; @@ -117,7 +120,8 @@ export interface Metadata { * @syscap SystemCapability.BundleManager.BundleFramework.Core * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ resource: string; @@ -128,7 +132,8 @@ export interface Metadata { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 18 + * @since arkts {'1.1':'18', '1.2':'20'} + * @arkts 1.1&1.2 */ - readonly valueId?: number; + readonly valueId?: number; } diff --git a/api/bundleManager/PluginBundleInfo.d.ts b/api/bundleManager/PluginBundleInfo.d.ts index 6b40cfa0490f56f609c7801f61fdad19106f7bde..d3bc13ecb843cb5ef97de64838d467dac0e63eee 100644 --- a/api/bundleManager/PluginBundleInfo.d.ts +++ b/api/bundleManager/PluginBundleInfo.d.ts @@ -24,7 +24,7 @@ * @typedef PluginBundleInfo * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ export interface PluginBundleInfo { /** @@ -34,7 +34,7 @@ export interface PluginBundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly label: string; @@ -45,7 +45,7 @@ export interface PluginBundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly labelId: number; @@ -56,7 +56,7 @@ export interface PluginBundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly icon: string; @@ -67,7 +67,7 @@ export interface PluginBundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly iconId: number; @@ -78,7 +78,7 @@ export interface PluginBundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly pluginBundleName: string; @@ -89,7 +89,7 @@ export interface PluginBundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly versionCode: number; @@ -100,7 +100,7 @@ export interface PluginBundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly versionName: string; @@ -111,7 +111,7 @@ export interface PluginBundleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly pluginModuleInfos: Array<PluginModuleInfo>; } @@ -122,7 +122,7 @@ export interface PluginBundleInfo { * @typedef PluginModuleInfo * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ export interface PluginModuleInfo { /** @@ -132,7 +132,7 @@ export interface PluginModuleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly moduleName: string; @@ -143,7 +143,7 @@ export interface PluginModuleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly descriptionId: number; @@ -154,7 +154,7 @@ export interface PluginModuleInfo { * @readonly * @syscap SystemCapability.BundleManager.BundleFramework.Core * @systemapi - * @since 18 + * @since 19 */ readonly description: string; } \ No newline at end of file diff --git a/api/bundleManager/ShortcutInfo.d.ts b/api/bundleManager/ShortcutInfo.d.ts index 31a35dfcdb341fc032258a3644f95c46f4820259..c4c0b8fb9fb931c8d5a95e7fed559522324b0414 100644 --- a/api/bundleManager/ShortcutInfo.d.ts +++ b/api/bundleManager/ShortcutInfo.d.ts @@ -26,6 +26,14 @@ * @systemapi * @since 9 */ +/** + * Provides information about a shortcut, including the shortcut ID and label. + * + * @typedef ShortcutInfo + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ export interface ShortcutInfo { /** * Indicates the ID of the application to which this shortcut belongs @@ -44,6 +52,14 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the ID of the application to which this shortcut belongs + * + * @type { string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ id: string; /** @@ -63,6 +79,14 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the name of the bundle containing the shortcut + * + * @type { string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ bundleName: string; /** @@ -82,6 +106,14 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the moduleName of the shortcut + * + * @type { ?string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ moduleName?: string; /** @@ -101,6 +133,14 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the host ability of the shortcut + * + * @type { ?string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ hostAbility?: string; /** @@ -120,6 +160,14 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the icon of the shortcut + * + * @type { ?string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ icon?: string; /** @@ -139,6 +187,14 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the icon id of the shortcut + * + * @type { ?number } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ iconId?: number; /** @@ -158,6 +214,14 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the label of the shortcut + * + * @type { ?string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ label?: string; /** @@ -177,6 +241,14 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the label id of the shortcut + * + * @type { ?number } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ labelId?: number; /** @@ -196,6 +268,14 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the wants of the shortcut + * + * @type { ?Array<ShortcutWant> } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ wants?: Array<ShortcutWant>; /** @@ -206,8 +286,16 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the index of application clone. + * + * @type { number } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ appIndex: number; - + /** * Indicates the source type of shortcut. * @@ -216,7 +304,24 @@ export interface ShortcutInfo { * @systemapi * @since 12 */ + /** + * Indicates the source type of shortcut. + * + * @type { number } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ sourceType: number; + + /** + * Display control for indicating shortcut. + * + * @type { ?boolean } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + */ + visible?: boolean; } /** @@ -227,6 +332,14 @@ export interface ShortcutInfo { * @systemapi * @since 9 */ +/** + * Obtains information about the ability that a shortcut will start. + * + * @typedef ShortcutWant + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ export interface ShortcutWant { /** * Indicates the target bundle of the shortcut want @@ -245,6 +358,14 @@ export interface ShortcutWant { * @systemapi * @since 12 */ + /** + * Indicates the target bundle of the shortcut want + * + * @type { string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ targetBundle: string; /** @@ -264,6 +385,14 @@ export interface ShortcutWant { * @systemapi * @since 12 */ + /** + * Indicates the target module of the shortcut want + * + * @type { ?string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ targetModule?: string; /** @@ -283,6 +412,14 @@ export interface ShortcutWant { * @systemapi * @since 12 */ + /** + * Indicates the target ability of the shortcut want + * + * @type { string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ targetAbility: string; /** @@ -293,6 +430,14 @@ export interface ShortcutWant { * @systemapi * @since 12 */ + /** + * Indicates the parameters of the shortcut want + * + * @type { ?Array<ParameterItem> } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ parameters?: Array<ParameterItem>; } @@ -304,6 +449,14 @@ export interface ShortcutWant { * @systemapi * @since 12 */ +/** + * Obtains information about the ability that a shortcut will start. + * + * @typedef ParameterItem + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ export interface ParameterItem { /** * Indicates the key of the parameter item. @@ -313,6 +466,14 @@ export interface ParameterItem { * @systemapi * @since 12 */ + /** + * Indicates the key of the parameter item. + * + * @type { string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ key: string; /** @@ -323,5 +484,13 @@ export interface ParameterItem { * @systemapi * @since 12 */ + /** + * Indicates the value of the parameter item. + * + * @type { string } + * @syscap SystemCapability.BundleManager.BundleFramework.Launcher + * @since 20 + * @arkts 1.1&1.2 + */ value: string; } diff --git a/api/bundleManager/Skill.d.ts b/api/bundleManager/Skill.d.ts index f9b732d0db39af23ecf85e491241034667ff0ae9..7e09ec6787da26af69c271477b2c1a1f11fd7cac 100644 --- a/api/bundleManager/Skill.d.ts +++ b/api/bundleManager/Skill.d.ts @@ -24,170 +24,186 @@ * @typedef Skill * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface Skill { - /** - * Indicates the actions of the skill - * - * @type { Array<string> } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly actions: Array<string>; + /** + * Indicates the actions of the skill + * + * @type { Array<string> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly actions: Array<string>; - /** - * Indicates the entities of the skill - * - * @type { Array<string> } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly entities: Array<string>; + /** + * Indicates the entities of the skill + * + * @type { Array<string> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly entities: Array<string>; - /** - * Indicates the uris of the skill - * - * @type { Array<SkillUri> } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly uris: Array<SkillUri>; + /** + * Indicates the uris of the skill + * + * @type { Array<SkillUri> } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly uris: Array<SkillUri>; - /** - * Indicates the domainVerify of the skill - * - * @type { boolean } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly domainVerify: boolean; + /** + * Indicates the domainVerify of the skill + * + * @type { boolean } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly domainVerify: boolean; } - + /** * Obtains configuration information about an skillUri * * @typedef SkillUri * @syscap SystemCapability.BundleManager.BundleFramework.Core * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface SkillUri { - /** - * Indicates the scheme of the skillUri - * - * @type { string } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly scheme: string; + /** + * Indicates the scheme of the skillUri + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly scheme: string; - /** - * Indicates the host of the skillUri - * - * @type { string } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly host: string; + /** + * Indicates the host of the skillUri + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly host: string; - /** - * Indicates the port of the skillUri - * - * @type { number } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly port: number; + /** + * Indicates the port of the skillUri + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly port: number; - /** - * Indicates the path of the skillUri - * - * @type { string } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly path: string; + /** + * Indicates the path of the skillUri + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly path: string; - /** - * Indicates the pathStartWith of the skillUri - * - * @type { string } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly pathStartWith: string; + /** + * Indicates the pathStartWith of the skillUri + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly pathStartWith: string; - /** - * Indicates the pathRegex of the skillUri - * - * @type {string } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly pathRegex: string; + /** + * Indicates the pathRegex of the skillUri + * + * @type {string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly pathRegex: string; - /** - * Indicates the type of the skillUri - * - * @type { string } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly type: string; + /** + * Indicates the type of the skillUri + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly type: string; - /** - * Indicates the utd of the skillUri - * - * @type { string } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly utd: string; + /** + * Indicates the utd of the skillUri + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly utd: string; - /** - * Indicates the maxFileSupported of the skillUri - * - * @type { number } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly maxFileSupported: number; + /** + * Indicates the maxFileSupported of the skillUri + * + * @type { number } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly maxFileSupported: number; - /** - * Indicates the linkFeature of the skillUri - * - * @type { string } - * @readonly - * @syscap SystemCapability.BundleManager.BundleFramework.Core - * @atomicservice - * @since 12 - */ - readonly linkFeature: string; + /** + * Indicates the linkFeature of the skillUri + * + * @type { string } + * @readonly + * @syscap SystemCapability.BundleManager.BundleFramework.Core + * @atomicservice + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 + */ + readonly linkFeature: string; } \ No newline at end of file diff --git a/api/common/full/canvaspattern.d.ets b/api/common/full/canvaspattern.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..675c9123d555f056c81ceeaa332f374c23cf805b --- /dev/null +++ b/api/common/full/canvaspattern.d.ets @@ -0,0 +1,459 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkUI + */ + +/** + * Describes an opaque object of a template, which is created using the createPattern() method. + * + * @interface CanvasPattern + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ +/** + * Describes an opaque object of a template, which is created using the createPattern() method. + * + * @interface CanvasPattern + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ +/** + * Describes an opaque object of a template, which is created using the createPattern() method. + * + * @interface CanvasPattern + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ +export interface CanvasPattern { + /** + * Adds the matrix transformation effect to the current template. + * + * @param { Matrix2D } [transform] - transformation matrix + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Adds the matrix transformation effect to the current template. + * + * @param { Matrix2D } [transform] - transformation matrix + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Adds the matrix transformation effect to the current template. + * + * @param { Matrix2D } [transform] - transformation matrix + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + setTransform(transform?: Matrix2D): void; +} + +/** + * 2D transformation matrix, supporting rotation, translation, and scaling of the X-axis and Y-axis + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ +/** + * 2D transformation matrix, supporting rotation, translation, and scaling of the X-axis and Y-axis + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ +/** + * 2D transformation matrix, supporting rotation, translation, and scaling of the X-axis and Y-axis + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ +export declare class Matrix2D { + /** + * Horizontal Zoom + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Horizontal Zoom + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Horizontal Zoom + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + scaleX?: number; + + /** + * Vertical Tilt + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Vertical Tilt + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Vertical Tilt + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + rotateY?: number; + + /** + * Horizontal Tilt + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Horizontal Tilt + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Horizontal Tilt + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + rotateX?: number; + + /** + * Vertical Zoom + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Vertical Zoom + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Vertical Zoom + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + scaleY?: number; + + /** + * Horizontal movement + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Horizontal movement + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Horizontal movement + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + translateX?: number; + + /** + * Vertical movement + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Vertical movement + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Vertical movement + * + * @type { ?number } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + translateY?: number; + + /** + * Transforms the current 2D matrix back to the identity matrix (i.e., without any rotational + * translation scaling effect) + * + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Transforms the current 2D matrix back to the identity matrix (i.e., without any rotational + * translation scaling effect) + * + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Transforms the current 2D matrix back to the identity matrix (i.e., without any rotational + * translation scaling effect) + * + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + identity(): Matrix2D; + + /** + * Transform the current 2D matrix into an inverse matrix (that is, the transformation effect + * is the opposite effect of the original) + * + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Transform the current 2D matrix into an inverse matrix (that is, the transformation effect + * is the opposite effect of the original) + * + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Transform the current 2D matrix into an inverse matrix (that is, the transformation effect + * is the opposite effect of the original) + * + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + invert(): Matrix2D; + + /** + * The matrix is superimposed in right multiplication mode. When the input parameter is empty, + * the matrix is superimposed. + * + * @param { Matrix2D } [other] - Matrix to be superimposed + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * The matrix is superimposed in right multiplication mode. When the input parameter is empty, + * the matrix is superimposed. + * + * @param { Matrix2D } [other] - Matrix to be superimposed + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * The matrix is superimposed in right multiplication mode. When the input parameter is empty, + * the matrix is superimposed. + * + * @param { Matrix2D } [other] - Matrix to be superimposed + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + multiply(other?: Matrix2D): Matrix2D; + + /** + * Adds the rotation effect of the X and Y axes to the current matrix. + * + * @param { number } [rx] - Rotation effect of the X axis + * @param { number } [ry] - Rotation effect of the Y-axis + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Adds the rotation effect of the X and Y axes to the current matrix. + * + * @param { number } [rx] - Rotation effect of the X axis + * @param { number } [ry] - Rotation effect of the Y-axis + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Adds the rotation effect of the X and Y axes to the current matrix. + * + * @param { number } [rx] - Rotation effect of the X axis + * @param { number } [ry] - Rotation effect of the Y-axis + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + rotate(rx?: number, ry?: number): Matrix2D; + + /** + * Adds the translation effect of the X and Y axes to the current matrix. + * + * @param { number } [tx] - X-axis translation effect + * @param { number } [ty] - Y-axis translation effect + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Adds the translation effect of the X and Y axes to the current matrix. + * + * @param { number } [tx] - X-axis translation effect + * @param { number } [ty] - Y-axis translation effect + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Adds the translation effect of the X and Y axes to the current matrix. + * + * @param { number } [tx] - X-axis translation effect + * @param { number } [ty] - Y-axis translation effect + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + translate(tx?: number, ty?: number): Matrix2D; + + /** + * Adds the scaling effect of the X and Y axes to the current matrix. + * + * @param { number } [sx] - X-axis scaling effect + * @param { number } [sy] - Y-axis scaling effect + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Adds the scaling effect of the X and Y axes to the current matrix. + * + * @param { number } [sx] - X-axis scaling effect + * @param { number } [sy] - Y-axis scaling effect + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Adds the scaling effect of the X and Y axes to the current matrix. + * + * @param { number } [sx] - X-axis scaling effect + * @param { number } [sy] - Y-axis scaling effect + * @returns { Matrix2D } + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + scale(sx?: number, sy?: number): Matrix2D; + + /** + * Constructs a 2D change matrix object. The default value is the unit matrix. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @since 8 + */ + /** + * Constructs a 2D change matrix object. The default value is the unit matrix. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @since 9 + */ + /** + * Constructs a 2D change matrix object. The default value is the unit matrix. + * + * @syscap SystemCapability.ArkUI.ArkUI.Full + * @form + * @atomicservice + * @since 11 + */ + constructor(); +} diff --git a/api/common/full/global.d.ts b/api/common/full/global.d.ts index 6ed7a085a60ac5c42a6c1b9d1d9db17db44c64f5..847b536d1ccee6c920182c7831ccc085a3c54ad9 100644 --- a/api/common/full/global.d.ts +++ b/api/common/full/global.d.ts @@ -126,6 +126,26 @@ export declare function createLocalParticleAbility(name?: string): any; */ export declare function canIUse(syscap: string): boolean; +/** + * determine whether the current operating system version is greater than or equal to the given value. + * + * @param { string } apiVersion - Only major version can be passed in, such as "20"; + * major and minor version can be passed in, such as "20.1"; major minor and patch + * version can be passed in, such as "20.1.2" + * @returns { boolean } true - operating system version is greater than or equal to the given value + * false - operating system version is less than the given value or invalid api version + * @syscap SystemCapability.Startup.SystemInfo.Lite + * @since 20 + * @example + * if (isApiVersionGreaterOrEqual("20.1")) { + * // Use 20.1 APIs. + * } else { + * // Alternative code for earlier versions. + * } + * + */ +export declare function isApiVersionGreaterOrEqual(apiVersion: string): boolean; + /** * Obtain the objects exposed in app.js * diff --git a/api/common/lite/global.d.ts b/api/common/lite/global.d.ts index 30ed95bb0d237e8c60dd4fcc9b03b63e8d6a288e..eccad3b2e21779455ef51b0d9da371317dc8eb83 100644 --- a/api/common/lite/global.d.ts +++ b/api/common/lite/global.d.ts @@ -108,6 +108,26 @@ export declare const LITE: string; */ export declare function canIUse(syscap: string): boolean; +/** + * determine whether the current operating system version is greater than or equal to the given value. + * + * @param { string } apiVersion - Only major version can be passed in, such as "20"; + * major and minor version can be passed in, such as "20.1"; major minor and patch + * version can be passed in, such as "20.1.2" + * @returns { boolean } true - operating system version is greater than or equal to the given value + * false - operating system version is less than the given value or invalid api version + * @syscap SystemCapability.Startup.SystemInfo.Lite + * @since 20 + * @example + * if (isApiVersionGreaterOrEqual("20.1")) { + * // Use 20.1 APIs. + * } else { + * // Alternative code for earlier versions. + * } + * + */ +export declare function isApiVersionGreaterOrEqual(apiVersion: string): boolean; + /** * Obtain the objects exposed in app.js * diff --git a/api/common/lite/viewmodel.d.ts b/api/common/lite/viewmodel.d.ts index ba134bdbf694238cd966b71b5dac49eb5a62c5ff..1c863b9a5f1000aead2fc7fbd6dd643880e14340 100644 --- a/api/common/lite/viewmodel.d.ts +++ b/api/common/lite/viewmodel.d.ts @@ -18,6 +18,25 @@ * @kit ArkUI */ +/** + * Defines the focus param. + * + * @interface FocusParamObj + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + */ +export interface FocusParamObj { + /** + * Whether needs to focus + * + * @type { boolean } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 3 + */ + focus: boolean; +} + + /** * View model * @interface ViewModel @@ -80,6 +99,60 @@ export interface ListElement { * @since 4 */ scrollTo(position: ListScrollToOptions): void; + + /** + * Requests or cancels the crown rotation focus for a component. + * If focus is set to true, the crown event focus is requested. + * If focus is set to false, the crown event focus is canceled. + * This attribute can be defaulted to true. + * + * @param { FocusParamObj } [obj] - { focus: true | false } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 4 + */ + rotation(obj?: FocusParamObj): void; +} + +/** + * The <swiper> component provides a swiper container. + * + * @interface SwiperElement + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 4 + */ +export interface SwiperElement { + /** + * Requests or cancels the crown rotation focus for a component. + * If focus is set to true, the crown event focus is requested. + * If focus is set to false, the crown event focus is canceled. + * This attribute can be defaulted to true. + * + * @param { FocusParamObj } [obj] - { focus: true | false } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 4 + */ + rotation(obj?: FocusParamObj): void; +} + +/** + * The <picker> component supports common, date, time, and multi-column text. + * + * @interface PickerElement + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 4 + */ +export interface PickerElement { + /** + * Requests or cancels the crown rotation focus for a component. + * If focus is set to true, the crown event focus is requested. + * If focus is set to false, the crown event focus is canceled. + * This attribute can be defaulted to true. + * + * @param { FocusParamObj } [obj] - { focus: true | false } + * @syscap SystemCapability.ArkUI.ArkUI.Lite + * @since 4 + */ + rotation(obj?: FocusParamObj): void; } /** diff --git a/api/commonEvent/commonEventData.d.ts b/api/commonEvent/commonEventData.d.ts index 8e70f542fce512e5bdaf2934ab8ce83fc5ac100b..610a3068f4d1cf0eb38aa936d426bf1095a3e4ef 100644 --- a/api/commonEvent/commonEventData.d.ts +++ b/api/commonEvent/commonEventData.d.ts @@ -14,64 +14,67 @@ */ /** - * @file The data of the commonEvent + * @file Common event data. * @kit BasicServicesKit */ /** - * the data of the commonEvent + * Common event data. * * @typedef CommonEventData * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * the data of the commonEvent + * Common event data. * * @typedef CommonEventData * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface CommonEventData { /** - * event type + * Name of the common event that is being received. * * @type { string } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * event type + * Name of the common event that is being received. * * @type { string } * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ event: string; /** - * bundle name + * Bundle name. This parameter is left empty by default. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * bundle name + * Bundle name. This parameter is left empty by default. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ bundleName?: string; /** - * The custom result code of the common event. + * Common event data received by the subscriber. The value of this field is the same as that of the code field in CommonEventPublishData when the publisher uses commonEventManager.publish to publish a common event. The default value is 0. * * @type { ?number } * @default 0 @@ -79,25 +82,26 @@ export interface CommonEventData { * @since 7 */ /** - * The custom result code of the common event. + * Common event data received by the subscriber. The value of this field is the same as that of the code field in CommonEventPublishData when the publisher uses commonEventManager.publish to publish a common event. The default value is 0. * * @type { ?number } * @default 0 * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ code?: number; /** - * The custom result data of the common event. + * Common event data received by the subscriber. The value of this field is the same as that of the data field in CommonEventPublishData when the publisher uses commonEventManager.publish to publish a common event. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * The custom result data of the common event. + * Common event data received by the subscriber. The value of this field is the same as that of the data field in CommonEventPublishData when the publisher uses commonEventManager.publish to publish a common event. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent @@ -105,25 +109,26 @@ export interface CommonEventData { * @since 11 */ /** - * The custom result data of the common event. + * Common event data received by the subscriber. The value of this field is the same as that of the data field in CommonEventPublishData when the publisher uses commonEventManager.publish to publish a common event. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ data?: string; /** - * The description of the parameters in a common event. + * Additional information about the common event received by the subscriber. The value of this field is the same as that of the parameters field in CommonEventPublishData when the publisher uses commonEventManager.publish to publish a common event. * * @type { ?object } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * The description of the parameters in a common event. + * Additional information about the common event received by the subscriber. The value of this field is the same as that of the parameters field in CommonEventPublishData when the publisher uses commonEventManager.publish to publish a common event. * * @type { ?object } * @syscap SystemCapability.Notification.CommonEvent @@ -131,4 +136,14 @@ export interface CommonEventData { * @since 11 */ parameters?: { [key: string]: any }; + + /** + * The description of the parameters in a common event. + * + * @type { ?Record<string, Object> } + * @syscap SystemCapability.Notification.CommonEvent + * @since 20 + * @arkts 1.2 + */ + parameters?: Record<string, Object>; } diff --git a/api/commonEvent/commonEventPublishData.d.ts b/api/commonEvent/commonEventPublishData.d.ts index 3b6865ac24a92c9a3f7b57cfe862cfeba9bbbd3c..3a2ded096f3032349ebec217186ddfd4a82642f9 100644 --- a/api/commonEvent/commonEventPublishData.d.ts +++ b/api/commonEvent/commonEventPublishData.d.ts @@ -14,19 +14,19 @@ */ /** - * @file Containing the common event content and attributes + * @file The CommonEventPublishData module provides APIs for defining common event content and attributes. * @kit BasicServicesKit */ /** - * containing the common event content and attributes + * The CommonEventPublishData module provides APIs for defining common event content and attributes. * * @typedef CommonEventPublishData * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * containing the common event content and attributes + * The CommonEventPublishData module provides APIs for defining common event content and attributes. * * @typedef CommonEventPublishData * @syscap SystemCapability.Notification.CommonEvent @@ -34,34 +34,36 @@ * @since 11 */ /** - * containing the common event content and attributes + * The CommonEventPublishData module provides APIs for defining common event content and attributes. * * @typedef CommonEventPublishData * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface CommonEventPublishData { /** - * bundle name + * Bundle name of the subscriber that can receive the common event. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * bundle name + * Bundle name of the subscriber that can receive the common event. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ bundleName?: string; /** - * The custom result code of the common event. + * Common event data transferred by the publisher. The default value is 0. * * @type { ?number } * @default 0 @@ -69,25 +71,26 @@ export interface CommonEventPublishData { * @since 7 */ /** - * The custom result code of the common event. + * Common event data transferred by the publisher. The default value is 0. * * @type { ?number } * @default 0 * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ code?: number; /** - * The custom result data of the common event. + * Common event data transferred by the publisher. The data size cannot exceed 64 KB. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * The custom result data of the common event. + * Common event data transferred by the publisher. The data size cannot exceed 64 KB. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent @@ -95,62 +98,67 @@ export interface CommonEventPublishData { * @since 11 */ /** - * The custom result data of the common event. + * Common event data transferred by the publisher. The data size cannot exceed 64 KB. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} + * @arkts 1.1&1.2 */ data?: string; /** - * The permissions for subscribers. Only subscribers with required permissions can receive published common events. + * Permissions required for subscribers to receive the common event. * * @type { ?Array<string> } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * The permissions for subscribers. Only subscribers with required permissions can receive published common events. + * Permissions required for subscribers to receive the common event. * * @type { ?Array<string> } * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ subscriberPermissions?: Array<string>; /** - * Whether the type of a common event is ordered or not. + * Whether the common event is an ordered one. * * @type { ?boolean } * @default false * @syscap SystemCapability.Notification.CommonEvent - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ isOrdered?: boolean; /** - * Whether the type of a common event is sticky or not. + * Whether the common event is a sticky one. Only system applications and system services are allowed to send sticky events. * + * @permission ohos.permission.COMMONEVENT_STICKY * @type { ?boolean } * @default false * @syscap SystemCapability.Notification.CommonEvent - * @since 7 + * @since arkts {'1.1':'7', '1.2':'20'} + * @arkts 1.1&1.2 */ isSticky?: boolean; /** - * The description of the parameters in a common event. + * Additional information about the common event transferred by the publisher. * * @type { ?object } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * The description of the parameters in a common event. + * Additional information about the common event transferred by the publisher. * * @type { ?object } * @syscap SystemCapability.Notification.CommonEvent @@ -158,4 +166,14 @@ export interface CommonEventPublishData { * @since 11 */ parameters?: { [key: string]: any }; + + /** + * The description of the parameters in a common event. + * + * @type { ?Record<string, Object> } + * @syscap SystemCapability.Notification.CommonEvent + * @since 20 + * @arkts 1.2 + */ + parameters?: Record<string, Object>; } diff --git a/api/commonEvent/commonEventSubscribeInfo.d.ts b/api/commonEvent/commonEventSubscribeInfo.d.ts index 3ec4c73a9eaebc07bbe0fb1a19b09e54498da223..7fcfa6127934b63fd43124b1ae7167f9c94e7bb7 100644 --- a/api/commonEvent/commonEventSubscribeInfo.d.ts +++ b/api/commonEvent/commonEventSubscribeInfo.d.ts @@ -14,124 +14,127 @@ */ /** - * @file The information of the subscriber + * @file The CommonEventSubscribeInfo module provides APIs for providing subscriber information. * @kit BasicServicesKit */ /** - * the information of the subscriber + * The CommonEventSubscribeInfo module provides APIs for providing subscriber information. * * @typedef CommonEventSubscribeInfo * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * the information of the subscriber + * The CommonEventSubscribeInfo module provides APIs for providing subscriber information. * * @typedef CommonEventSubscribeInfo * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface CommonEventSubscribeInfo { /** - * Indicates the subscribed events. + * Common events to subscribe to. * * @type { Array<string> } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Indicates the subscribed events. + * Common events to subscribe to. * * @type { Array<string> } * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ events: Array<string>; /** - * The permission that the publisher must have in order to send a common event to this subscriber. - * This subscriber receives only common events sent by publishers granted with this permission. + * Permission of the publisher. The subscriber can receive only the events from the publisher with this permission. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * The permission that the publisher must have in order to send a common event to this subscriber. - * This subscriber receives only common events sent by publishers granted with this permission. + * Permission of the publisher. The subscriber can receive only the events from the publisher with this permission. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ publisherPermission?: string; /** - * deviceId Indicates the device ID. The value must be an existing device ID on the same ohos network. + * Device ID. Use @ohos.deviceInfo to obtain the UDID as the device ID of the subscriber. Not supported currently. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * deviceId Indicates the device ID. The value must be an existing device ID on the same ohos network. + * Device ID. Use @ohos.deviceInfo to obtain the UDID as the device ID of the subscriber. Not supported currently. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ publisherDeviceId?: string; /** - * Indicates the user ID. This parameter is optional, and the default value is the ID of the - * current user. If this parameter is specified, the value must be an existing user ID in the system. + * User ID. If this parameter is not specified, the default value, which is the ID of the current user, will be used. The value must be an existing user ID in the system. Use getOsAccountLocalId to obtain the system account ID and use it as the user ID of the subscriber. * * @type { ?number } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Indicates the user ID. This parameter is optional, and the default value is the ID of the - * current user. If this parameter is specified, the value must be an existing user ID in the system. + * User ID. If this parameter is not specified, the default value, which is the ID of the current user, will be used. The value must be an existing user ID in the system. Use getOsAccountLocalId to obtain the system account ID and use it as the user ID of the subscriber. * * @type { ?number } * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ userId?: number; /** - * Indicates the subscriber priority. The value ranges from -100 to 1000. + * Subscriber priority. The value ranges from –100 to +1000. If the value exceeds the upper or lower limit, the upper or lower limit is used. * * @type { ?number } * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Indicates the subscriber priority. The value ranges from -100 to 1000. + * Subscriber priority. The value ranges from –100 to +1000. If the value exceeds the upper or lower limit, the upper or lower limit is used. * * @type { ?number } * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ priority?: number; /** - * Specify the publisher's bundleName to subscribe. + * Bundle name of the publisher to subscribe to. * * @type { ?string } * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ publisherBundleName?: string; } diff --git a/api/commonEvent/commonEventSubscriber.d.ts b/api/commonEvent/commonEventSubscriber.d.ts index 7b65140b079a8f9d28b3f1b5734a6c294bb498b7..d9ca0aaa1ea4bb361458423f23f8b42990a07948 100644 --- a/api/commonEvent/commonEventSubscriber.d.ts +++ b/api/commonEvent/commonEventSubscriber.d.ts @@ -22,34 +22,35 @@ import { AsyncCallback } from './../@ohos.base'; import { CommonEventSubscribeInfo } from './commonEventSubscribeInfo'; /** - * the subscriber of common event + * The CommonEventSubscriber module provides APIs for describing the common event subscriber. * * @interface CommonEventSubscriber * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * the subscriber of common event + * The CommonEventSubscriber module provides APIs for describing the common event subscriber. * * @interface CommonEventSubscriber * @syscap SystemCapability.Notification.CommonEvent * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface CommonEventSubscriber { /** - * Obtains the result code of the current ordered common event. + * Obtains the result code of an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<number> } callback - Indicate the callback function to receive the common event. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Obtains the result code of the current ordered common event. + * Obtains the result code of an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<number> } callback - Indicate the callback function to receive the common event. + * @param { AsyncCallback<number> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -59,16 +60,16 @@ export interface CommonEventSubscriber { getCode(callback: AsyncCallback<number>): void; /** - * Obtains the result code of the current ordered common event. + * Obtains the result code of an ordered common event. This API uses a promise to return the result. * - * @returns { Promise<number> } Returns code of this common event + * @returns { Promise<number> } Promise used to return the result. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Obtains the result code of the current ordered common event. + * Obtains the result code of an ordered common event. This API uses a promise to return the result. * - * @returns { Promise<number> } Returns code of this common event + * @returns { Promise<number> } Promise used to return the result. * @syscap SystemCapability.Notification.CommonEvent * @atomicservice * @since 11 @@ -76,16 +77,16 @@ export interface CommonEventSubscriber { getCode(): Promise<number>; /** - * Obtains the result code of the current ordered common event. + * Obtains the result code of an ordered common event. * - * @returns { number } Returns code of this common event + * @returns { number } Common event code. * @syscap SystemCapability.Notification.CommonEvent * @since 10 */ /** - * Obtains the result code of the current ordered common event. + * Obtains the result code of an ordered common event. * - * @returns { number } Returns code of this common event + * @returns { number } Common event code. * @syscap SystemCapability.Notification.CommonEvent * @atomicservice * @since 11 @@ -93,20 +94,20 @@ export interface CommonEventSubscriber { getCodeSync(): number; /** - * Sets the result code of the current ordered common event. + * Sets the result code of an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. - * @param { AsyncCallback<void> } callback - Indicate the callback function to receive the common event. + * @param { number } code - Common event code. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Sets the result code of the current ordered common event. + * Sets the result code of an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. - * @param { AsyncCallback<void> } callback - Indicate the callback function to receive the common event. + * @param { number } code - Common event code. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -116,20 +117,20 @@ export interface CommonEventSubscriber { setCode(code: number, callback: AsyncCallback<void>): void; /** - * Sets the result code of the current ordered common event. + * Sets the result code of an ordered common event. This API uses a promise to return the result. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. - * @returns { Promise<void> } The promise returned by the function. + * @param { number } code - Common event code. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Sets the result code of the current ordered common event. + * Sets the result code of an ordered common event. This API uses a promise to return the result. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. - * @returns { Promise<void> } The promise returned by the function. + * @param { number } code - Common event code. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -139,18 +140,18 @@ export interface CommonEventSubscriber { setCode(code: number): Promise<void>; /** - * Sets the result code of the current ordered common event. + * Sets the result code of an ordered common event. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. + * @param { number } code - Common event code. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 10 */ /** - * Sets the result code of the current ordered common event. + * Sets the result code of an ordered common event. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. + * @param { number } code - Common event code. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -160,18 +161,18 @@ export interface CommonEventSubscriber { setCodeSync(code: number): void; /** - * Obtains the result data of the current ordered common event. + * Obtains the result data of an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<string> } callback - Indicate the callback function to receive the common event. + * @param { AsyncCallback<string> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Obtains the result data of the current ordered common event. + * Obtains the result data of an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<string> } callback - Indicate the callback function to receive the common event. + * @param { AsyncCallback<string> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -181,16 +182,16 @@ export interface CommonEventSubscriber { getData(callback: AsyncCallback<string>): void; /** - * Obtains the result data of the current ordered common event. + * Obtains the result data of an ordered common event. This API uses a promise to return the result. * - * @returns { Promise<string> } Returns data of this common event + * @returns { Promise<string> } Promise used to return the result. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Obtains the result data of the current ordered common event. + * Obtains the result data of an ordered common event. This API uses a promise to return the result. * - * @returns { Promise<string> } Returns data of this common event + * @returns { Promise<string> } Promise used to return the result. * @syscap SystemCapability.Notification.CommonEvent * @atomicservice * @since 11 @@ -198,16 +199,16 @@ export interface CommonEventSubscriber { getData(): Promise<string>; /** - * Obtains the result data of the current ordered common event. + * Obtains the result data of an ordered common event. * - * @returns { string } Returns data of this common event + * @returns { string } Common event data. * @syscap SystemCapability.Notification.CommonEvent * @since 10 */ /** - * Obtains the result data of the current ordered common event. + * Obtains the result data of an ordered common event. * - * @returns { string } Returns data of this common event + * @returns { string } Common event data. * @syscap SystemCapability.Notification.CommonEvent * @atomicservice * @since 11 @@ -215,20 +216,20 @@ export interface CommonEventSubscriber { getDataSync(): string; /** - * Sets the result data of the current ordered common event. + * Sets the result data for an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. - * @param { AsyncCallback<void> } callback - Indicate the callback function to receive the common event. + * @param { string } data - Common event data. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Sets the result data of the current ordered common event. + * Sets the result data for an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. - * @param { AsyncCallback<void> } callback - Indicate the callback function to receive the common event. + * @param { string } data - Common event data. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -238,20 +239,20 @@ export interface CommonEventSubscriber { setData(data: string, callback: AsyncCallback<void>): void; /** - * Sets the result data of the current ordered common event. + * Sets the result data for an ordered common event. This API uses a promise to return the result. * - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. - * @returns { Promise<void> } the promise returned by the function. + * @param { string } data - Common event data. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Sets the result data of the current ordered common event. + * Sets the result data for an ordered common event. This API uses a promise to return the result. * - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. - * @returns { Promise<void> } the promise returned by the function. + * @param { string } data - Common event data. + * @returns { Promise<void> } Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -261,18 +262,18 @@ export interface CommonEventSubscriber { setData(data: string): Promise<void>; /** - * Sets the result data of the current ordered common event. + * Sets the result data for an ordered common event. * - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. + * @param { string } data - Common event data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 10 */ /** - * Sets the result data of the current ordered common event. + * Sets the result data for an ordered common event. * - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. + * @param { string } data - Common event data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -282,22 +283,22 @@ export interface CommonEventSubscriber { setDataSync(data: string): void; /** - * Sets the result of the current ordered common event. + * Sets the result code and data of an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. - * @param { AsyncCallback<void> } callback - Indicate the callback function to receive the common event. + * @param { number } code - Common event code. + * @param { string } data - Common event data. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * Sets the result of the current ordered common event. + * Sets the result code and data of an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. - * @param { AsyncCallback<void> } callback - Indicate the callback function to receive the common event. + * @param { number } code - Common event code. + * @param { string } data - Common event data. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -307,10 +308,10 @@ export interface CommonEventSubscriber { setCodeAndData(code: number, data: string, callback: AsyncCallback<void>): void; /** - * Sets the result of the current ordered common event. + * Sets the result code and data of an ordered common event. This API uses a promise to return the result. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. + * @param { number } code - Common event code. + * @param { string } data - Common event data. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. @@ -318,10 +319,10 @@ export interface CommonEventSubscriber { * @since 7 */ /** - * Sets the result of the current ordered common event. + * Sets the result code and data of an ordered common event. This API uses a promise to return the result. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. + * @param { number } code - Common event code. + * @param { string } data - Common event data. * @returns { Promise<void> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. @@ -332,20 +333,20 @@ export interface CommonEventSubscriber { setCodeAndData(code: number, data: string): Promise<void>; /** - * Sets the result of the current ordered common event. + * Sets the result code and data of an ordered common event. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. + * @param { number } code - Common event code. + * @param { string } data - Common event data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 10 */ /** - * Sets the result of the current ordered common event. + * Sets the result code and data of an ordered common event. * - * @param { number } code - Indicates the custom result code to set. You can set it to any value. - * @param { string } data - Indicates the custom result data to set. You can set it to any character string. + * @param { number } code - Common event code. + * @param { string } data - Common event data. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -355,9 +356,9 @@ export interface CommonEventSubscriber { setCodeAndDataSync(code: number, data: string): void; /** - * Checks whether the current common event is an ordered common event. + * Checks whether the current common event is an ordered common event. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Indicate the callback function to receive the common event. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. Returns true if the common event is an ordered one; returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -366,9 +367,9 @@ export interface CommonEventSubscriber { isOrderedCommonEvent(callback: AsyncCallback<boolean>): void; /** - * Checks whether the current common event is an ordered common event. + * Checks whether the current common event is an ordered common event. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns true if this common event is ordered, false otherwise + * @returns { Promise<boolean> } Promise used to return the result. Returns true if the common event is an ordered one; returns false otherwise. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ @@ -377,16 +378,16 @@ export interface CommonEventSubscriber { /** * Checks whether the current common event is an ordered common event. * - * @returns { boolean } Returns true if this common event is ordered, false otherwise + * @returns { boolean } Returns true if the common event is an ordered one; returns false otherwise. * @syscap SystemCapability.Notification.CommonEvent * @since 10 */ isOrderedCommonEventSync(): boolean; /** - * Checks whether the current common event is a sticky common event. + * Checks whether a common event is a sticky one. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Indicate the callback function to receive the common event. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. Returns true if the common event is a sticky one; returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -395,27 +396,27 @@ export interface CommonEventSubscriber { isStickyCommonEvent(callback: AsyncCallback<boolean>): void; /** - * Checks whether the current common event is a sticky common event. + * Checks whether a common event is a sticky one. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns true if this common event is sticky, false otherwise + * @returns { Promise<boolean> } Promise used to return the result. Returns true if the common event is a sticky one; returns false otherwise. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ isStickyCommonEvent(): Promise<boolean>; /** - * Checks whether the current common event is a sticky common event. + * Checks whether a common event is a sticky one. * - * @returns { boolean } Returns true if this common event is sticky, false otherwise + * @returns { boolean } Returns true if the common event is a sticky one; returns false otherwise. * @syscap SystemCapability.Notification.CommonEvent * @since 10 */ isStickyCommonEventSync(): boolean; /** - * Abort the current ordered common event. + * Aborts an ordered common event when used with finishCommonEvent. After the abort, the common event is not sent to the next subscriber. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<void> } callback - Indicate the callback function to receive the common event. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -424,16 +425,16 @@ export interface CommonEventSubscriber { abortCommonEvent(callback: AsyncCallback<void>): void; /** - * Abort the current ordered common event. + * Aborts an ordered common event when used with finishCommonEvent. After the abort, the common event is not sent to the next subscriber. This API uses a promise to return the result. * - * @returns { Promise<void> } The promise returned by the function. + * @returns { Promise<void> } Promise that returns no value. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ abortCommonEvent(): Promise<void>; /** - * Abort the current ordered common event. + * Aborts an ordered common event when used with finishCommonEvent. After the abort, the common event is not sent to the next subscriber. * * @syscap SystemCapability.Notification.CommonEvent * @since 10 @@ -441,9 +442,9 @@ export interface CommonEventSubscriber { abortCommonEventSync(): void; /** - * Clears the abort state of the current ordered common event + * Clears the aborted state of an ordered common event when used with finishCommonEvent. After the clearance, the common event is sent to the next subscriber. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<void> } callback - Indicate the callback function to receive the common event. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -452,16 +453,16 @@ export interface CommonEventSubscriber { clearAbortCommonEvent(callback: AsyncCallback<void>): void; /** - * Clears the abort state of the current ordered common event + * Clears the aborted state of an ordered common event when used with finishCommonEvent. After the clearance, the common event is sent to the next subscriber. This API uses a promise to return the result. * - * @returns { Promise<void> } The promise returned by the function. + * @returns { Promise<void> } Promise that returns no value. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ clearAbortCommonEvent(): Promise<void>; /** - * Clears the abort state of the current ordered common event + * Clears the aborted state of an ordered common event when used with finishCommonEvent. After the clearance, the common event is sent to the next subscriber. * * @syscap SystemCapability.Notification.CommonEvent * @since 10 @@ -469,9 +470,9 @@ export interface CommonEventSubscriber { clearAbortCommonEventSync(): void; /** - * Checks whether the current ordered common event should be aborted. + * Checks whether this ordered common event should be aborted. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<boolean> } callback - Indicate the callback function to receive the common event. + * @param { AsyncCallback<boolean> } callback - Callback used to return the result. Returns true if the ordered common event is in the aborted state; returns false otherwise. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -480,36 +481,36 @@ export interface CommonEventSubscriber { getAbortCommonEvent(callback: AsyncCallback<boolean>): void; /** - * Checks whether the current ordered common event should be aborted. + * Checks whether this ordered common event should be aborted. This API uses a promise to return the result. * - * @returns { Promise<boolean> } Returns true if this common event is aborted, false otherwise + * @returns { Promise<boolean> } Checks whether this ordered common event should be aborted. This API uses a promise to return the result. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ getAbortCommonEvent(): Promise<boolean>; /** - * Checks whether the current ordered common event should be aborted. + * Checks whether this ordered common event should be aborted. * - * @returns { boolean } Returns true if this common event is aborted, false otherwise + * @returns { boolean } Returns true if the ordered common event is in the aborted state; returns false otherwise. * @syscap SystemCapability.Notification.CommonEvent * @since 10 */ getAbortCommonEventSync(): boolean; /** - * get the CommonEventSubscribeInfo of this CommonEventSubscriber. + * Obtains the subscriber information. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<CommonEventSubscribeInfo> } callback - Indicate callback function to receive common event. + * @param { AsyncCallback<CommonEventSubscribeInfo> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * get the CommonEventSubscribeInfo of this CommonEventSubscriber. + * Obtains the subscriber information. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<CommonEventSubscribeInfo> } callback - Indicate callback function to receive common event. + * @param { AsyncCallback<CommonEventSubscribeInfo> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -520,16 +521,16 @@ export interface CommonEventSubscriber { getSubscribeInfo(callback: AsyncCallback<CommonEventSubscribeInfo>): void; /** - * get the CommonEventSubscribeInfo of this CommonEventSubscriber. + * Obtains the subscriber information. This API uses a promise to return the result. * - * @returns { Promise<CommonEventSubscribeInfo> } Returns the commonEvent subscribe information + * @returns { Promise<CommonEventSubscribeInfo> } Promise used to return the result. * @syscap SystemCapability.Notification.CommonEvent * @since 7 */ /** - * get the CommonEventSubscribeInfo of this CommonEventSubscriber. + * Obtains the subscriber information. This API uses a promise to return the result. * - * @returns { Promise<CommonEventSubscribeInfo> } Returns the commonEvent subscribe information + * @returns { Promise<CommonEventSubscribeInfo> } Promise used to return the result. * @syscap SystemCapability.Notification.CommonEvent * @crossplatform * @atomicservice @@ -538,16 +539,16 @@ export interface CommonEventSubscriber { getSubscribeInfo(): Promise<CommonEventSubscribeInfo>; /** - * Get the CommonEventSubscribeInfo of this CommonEventSubscriber. + * Obtains the subscriber information. * - * @returns { CommonEventSubscribeInfo } Returns the commonEvent subscribe information + * @returns { CommonEventSubscribeInfo } Subscriber information. * @syscap SystemCapability.Notification.CommonEvent * @since 10 */ /** - * Get the CommonEventSubscribeInfo of this CommonEventSubscriber. + * Obtains the subscriber information. * - * @returns { CommonEventSubscribeInfo } Returns the commonEvent subscribe information + * @returns { CommonEventSubscribeInfo } Subscriber information. * @syscap SystemCapability.Notification.CommonEvent * @atomicservice * @since 11 @@ -555,9 +556,9 @@ export interface CommonEventSubscriber { getSubscribeInfoSync(): CommonEventSubscribeInfo; /** - * finish the current ordered common event. + * Finishes this ordered common event. This API uses an asynchronous callback to return the result. * - * @param { AsyncCallback<void> } callback - Indicate the callback function after ordered common event is finished. + * @param { AsyncCallback<void> } callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. * <br>2. Incorrect parameter types. 3. Parameter verification failed. * @syscap SystemCapability.Notification.CommonEvent @@ -566,9 +567,9 @@ export interface CommonEventSubscriber { finishCommonEvent(callback: AsyncCallback<void>): void; /** - * finish the current ordered common event. + * Finishes this ordered common event. This API uses a promise to return the result. * - * @returns { Promise<void> } The promise returned by the function. + * @returns { Promise<void> } Promise that returns no value. * @syscap SystemCapability.Notification.CommonEvent * @since 9 */ diff --git a/api/device-define/2in1.json b/api/device-define/2in1.json new file mode 100644 index 0000000000000000000000000000000000000000..e4ab055a61ae9d81a96f4a1ef027aba68b82ed47 --- /dev/null +++ b/api/device-define/2in1.json @@ -0,0 +1,226 @@ +{ + "SysCaps": [ + "SystemCapability.Security.DataLossPrevention", + "SystemCapability.Multimedia.Media.AVTranscoder", + "SystemCapability.Security.CryptoFramework.Kdf", + "SystemCapability.Security.CryptoFramework.Rand", + "SystemCapability.Security.CryptoFramework.Mac", + "SystemCapability.Security.CryptoFramework.MessageDigest", + "SystemCapability.Security.CryptoFramework.KeyAgreement", + "SystemCapability.Security.CryptoFramework.Cipher", + "SystemCapability.Security.CryptoFramework.Signature", + "SystemCapability.Security.CryptoFramework.Key.AsymKey", + "SystemCapability.Security.CryptoFramework.Key.SymKey", + "SystemCapability.Security.CryptoFramework.Key", + "SystemCapability.Notification.NotificationSettings", + "SystemCapability.HiviewDFX.HiCollie", + "SystemCapability.Security.CertificateManagerDialog", + "SystemCapability.Ability.AppExtension.PhotoEditorExtension", + "SystemCapability.Customization.CustomConfig", + "SystemCapability.Communication.NetManager.NetFirewall", + "SystemCapability.Ability.AppStartup", + "SystemCapability.ResourceSchedule.SystemLoad", + "SystemCapability.MultimodalInput.Input.Cooperator", + "SystemCapability.Advertising.Ads", + "SystemCapability.Multimedia.Media.AVMetadataExtractor", + "SystemCapability.Multimedia.Media.AVImageGenerator", + "SystemCapability.Security.Huks.Extension", + "SystemCapability.Graphic.Graphic2D.GLES3", + "SystemCapability.Graphic.Graphic2D.GLES2", + "SystemCapability.Graphic.Graphic2D.EGL", + "SystemCapability.Graphic.Vulkan", + "SystemCapability.Security.SecurityGuard", + "SystemCapability.Graphic.Graphic2D.NativeVsync", + "SystemCapability.Graphic.Graphic2D.NativeImage", + "SystemCapability.Base", + "SystemCapability.Graphic.Graphic2D.NativeBuffer", + "SystemCapability.MultimodalInput.Input.Pointer", + "SystemCapability.Graphic.Graphic2D.NativeWindow", + "SystemCapability.ArkUi.Graphics3D", + "SystemCapability.FileManagement.AppFileService.FolderAuthorization", + "SystemCapability.FileManagement.UserFileService.FolderSelection", + "SystemCapability.FileManagement.File.Environment.FolderObtain", + "SystemCapability.Graphic.Graphic2D.NativeDrawing", + "SystemCapability.FileManagement.PhotoAccessHelper.Core", + "SystemCapability.Resourceschedule.Ffrt.Core", + "SystemCapability.Applications.CalendarData", + "SystemCapability.ResourceSchedule.DeviceStandby", + "SystemCapability.Graphic.Graphic2D.ColorManager.Core", + "SystemCapability.Multimedia.SystemSound.Core", + "SystemCapability.Multimedia.AudioHaptic.Core", + "SystemCapability.Security.Huks.Core", + "SystemCapability.Startup.SystemInfo", + "SystemCapability.Ability.DistributedAbilityManager", + "SystemCapability.Graphic.Graphic2D.WebGL2", + "SystemCapability.Graphic.Graphic2D.WebGL", + "SystemCapability.Multimedia.Audio.Spatialization", + "SystemCapability.Multimedia.AVSession.Manager", + "SystemCapability.Multimedia.AVSession.Core", + "SystemCapability.Multimedia.Media.Core", + "SystemCapability.Graphics.Drawing", + "SystemCapability.Multimedia.Media.AudioCodec", + "SystemCapability.HiviewDFX.Hiview.LogLibrary", + "SystemCapability.HiviewDFX.Hiview.FaultLogger", + "SystemCapability.Ability.AbilityBase", + "SystemCapability.Security.CryptoFramework", + "SystemCapability.Update.UpdateService", + "SystemCapability.Multimedia.Image.ImageCreator", + "SystemCapability.Multimedia.Image.ImageSource", + "SystemCapability.Multimedia.Image.ImagePacker", + "SystemCapability.Multimedia.Image.ImageReceiver", + "SystemCapability.Multimedia.Image.Core", + "SystemCapability.FileManagement.StorageService.Encryption", + "SystemCapability.FileManagement.StorageService.Volume", + "SystemCapability.FileManagement.StorageService.SpatialStatistics", + "SystemCapability.ArkUI.ArkUI.Napi", + "SystemCapability.Security.DataTransitManager", + "SystemCapability.PowerManager.DisplayPowerManager", + "SystemCapability.HiviewDFX.HiChecker", + "SystemCapability.PowerManager.ThermalManager", + "SystemCapability.ArkUI.UiAppearance", + "SystemCapability.DistributedDataManager.Preferences.Core", + "SystemCapability.PowerManager.BatteryManager.Extension", + "SystemCapability.PowerManager.BatteryManager.Core", + "SystemCapability.PowerManager.PowerManager.Extension", + "SystemCapability.PowerManager.PowerManager.Core", + "SystemCapability.HiviewDFX.HiSysEvent", + "SystemCapability.PowerManager.BatteryStatistics", + "SystemCapability.Security.DeviceSecurityLevel", + "SystemCapability.DistributedDataManager.DataShare.Provider", + "SystemCapability.DistributedDataManager.DataShare.Core", + "SystemCapability.DistributedDataManager.DataShare.Consumer", + "SystemCapability.Communication.SoftBus.Core", + "SystemCapability.Communication.IPC.Core", + "SystemCapability.XTS.DeviceAttest", + "SystemCapability.ArkUI.ArkUI.Libuv", + "SystemCapability.Security.Cert", + "SystemCapability.Security.DeviceAuth", + "SystemCapability.Security.Cipher", + "SystemCapability.Print.PrintFramework", + "SystemCapability.MiscServices.ScreenLock", + "SystemCapability.Test.UiTest", + "SystemCapability.Applications.Settings.Core", + "SystemCapability.HiviewDFX.HiAppEvent", + "SystemCapability.Customization.ConfigPolicy", + "SystemCapability.Advertising.OAID", + "SystemCapability.UserIAM.UserAuth.Core", + "SystemCapability.Customization.EnterpriseDeviceManager", + "SystemCapability.MiscServices.Time", + "SystemCapability.MultimodalInput.Input.ShortKey", + "SystemCapability.MultimodalInput.Input.InputMonitor", + "SystemCapability.MultimodalInput.Input.InputSimulator", + "SystemCapability.MultimodalInput.Input.Core", + "SystemCapability.MultimodalInput.Input.InputDevice", + "SystemCapability.MultimodalInput.Input.InputConsumer", + "SystemCapability.Multimedia.Drm.Core", + "SystemCapability.DistributedDataManager.UDMF.Core", + "SystemCapability.ResourceSchedule.WorkScheduler", + "SystemCapability.Security.Asset", + "SystemCapability.USB.USBManager", + "SystemCapability.Security.AccessToken", + "SystemCapability.Communication.NetManager.Core", + "SystemCapability.ResourceSchedule.UsageStatistics.AppGroup", + "SystemCapability.ResourceSchedule.UsageStatistics.App", + "SystemCapability.Communication.NetStack", + "SystemCapability.BundleManager.DistributedBundleFramework", + "SystemCapability.Security.CertificateManager", + "SystemCapability.BarrierFree.Accessibility.Vision", + "SystemCapability.BarrierFree.Accessibility.Hearing", + "SystemCapability.BarrierFree.Accessibility.Core", + "SystemCapability.BundleManager.BundleFramework.Overlay", + "SystemCapability.BundleManager.BundleFramework.Resource", + "SystemCapability.BundleManager.BundleFramework.DefaultApp", + "SystemCapability.BundleManager.BundleFramework.Launcher", + "SystemCapability.BundleManager.BundleFramework.FreeInstall", + "SystemCapability.BundleManager.BundleFramework.Core", + "SystemCapability.BundleManager.BundleFramework.AppControl", + "SystemCapability.BundleManager.Zlib", + "SystemCapability.BundleManager.BundleFramework", + "SystemCapability.Web.Webview.Core", + "SystemCapability.Communication.NetManager.Vpn", + "SystemCapability.Communication.NetManager.MDNS", + "SystemCapability.Communication.NetManager.NetSharing", + "SystemCapability.Communication.NetManager.Ethernet", + "SystemCapability.UserIAM.UserAuth.PinAuth", + "SystemCapability.FileManagement.UserFileManager.DistributedCore", + "SystemCapability.FileManagement.UserFileManager.Core", + "SystemCapability.Multimedia.MediaLibrary.DistributedCore", + "SystemCapability.Multimedia.MediaLibrary.Core", + "SystemCapability.Multimedia.Audio.PlaybackCapture", + "SystemCapability.Multimedia.Audio.Interrupt", + "SystemCapability.Multimedia.Audio.Tone", + "SystemCapability.Multimedia.Audio.Communication", + "SystemCapability.Multimedia.Audio.Volume", + "SystemCapability.Multimedia.Audio.Device", + "SystemCapability.Multimedia.Audio.Capturer", + "SystemCapability.Multimedia.Audio.Renderer", + "SystemCapability.Multimedia.Audio.Core", + "SystemCapability.Request.FileTransferAgent", + "SystemCapability.MiscServices.Upload", + "SystemCapability.MiscServices.Download", + "SystemCapability.Multimedia.Media.CodecBase", + "SystemCapability.Multimedia.Media.VideoEncoder", + "SystemCapability.Multimedia.Media.VideoDecoder", + "SystemCapability.Multimedia.Media.AudioEncoder", + "SystemCapability.Multimedia.Media.AudioDecoder", + "SystemCapability.Multimedia.Media.Spliter", + "SystemCapability.Multimedia.Media.Muxer", + "SystemCapability.Account.OsAccount", + "SystemCapability.Account.AppAccount", + "SystemCapability.Multimedia.Media.SoundPool", + "SystemCapability.Multimedia.Media.AVScreenCapture", + "SystemCapability.Multimedia.Media.AudioPlayer", + "SystemCapability.Multimedia.Media.VideoPlayer", + "SystemCapability.Multimedia.Media.AudioRecorder", + "SystemCapability.Multimedia.Media.VideoRecorder", + "SystemCapability.Multimedia.Media.AVPlayer", + "SystemCapability.Multimedia.Media.AVRecorder", + "SystemCapability.Ability.Form", + "SystemCapability.HiviewDFX.HiProfiler.HiDebug", + "SystemCapability.Notification.ReminderAgent", + "SystemCapability.Notification.Notification", + "SystemCapability.HiviewDFX.HiLog", + "SystemCapability.DistributedHardware.DeviceManager", + "SystemCapability.DistributedHardware.DistributedHardwareFWK", + "SystemCapability.Developtools.Syscap", + "SystemCapability.Ability.AbilityTools.AbilityAssistant", + "SystemCapability.Ability.AbilityRuntime.QuickFix", + "SystemCapability.Ability.AbilityRuntime.Mission", + "SystemCapability.Ability.AbilityRuntime.AbilityCore", + "SystemCapability.Ability.AbilityRuntime.FAModel", + "SystemCapability.Ability.AbilityRuntime.Core", + "SystemCapability.Global.ResourceManager", + "SystemCapability.Multimedia.AVSession.AVCast", + "SystemCapability.MiscServices.Wallpaper", + "SystemCapability.Communication.WiFi.AP.Extension", + "SystemCapability.Communication.WiFi.AP.Core", + "SystemCapability.Communication.WiFi.Core", + "SystemCapability.Communication.WiFi.P2P", + "SystemCapability.Communication.WiFi.STA", + "SystemCapability.MiscServices.Pasteboard", + "SystemCapability.FileManagement.UserFileService", + "SystemCapability.Utils.Lang", + "SystemCapability.DistributedDataManager.CommonType", + "SystemCapability.DistributedDataManager.RelationalStore.Core", + "SystemCapability.MiscServices.InputMethodFramework", + "SystemCapability.HiviewDFX.HiTrace", + "SystemCapability.Sensors.MiscDevice", + "SystemCapability.Notification.Emitter", + "SystemCapability.Notification.CommonEvent", + "SystemCapability.DistributedDataManager.KVStore.Core", + "SystemCapability.DistributedDataManager.KVStore.DistributedKVStore", + "SystemCapability.WindowManager.WindowManager.Core", + "SystemCapability.DistributedDataManager.DataObject.DistributedObject", + "SystemCapability.FileManagement.StorageService.Backup", + "SystemCapability.FileManagement.AppFileService", + "SystemCapability.Communication.Bluetooth.Core", + "SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply", + "SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask", + "SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask", + "SystemCapability.FileManagement.File.DistributedFile", + "SystemCapability.FileManagement.File.Environment", + "SystemCapability.FileManagement.File.FileIO", + "SystemCapability.ArkUI.ArkUI.Full", + "SystemCapability.Global.I18n" + ] +} \ No newline at end of file diff --git a/api/device-define/default.json b/api/device-define/default.json index 3c6c67ab1b856157d3e3661ceeb78b83c7848262..de616b6b1632b78738462334650155e9be1171d1 100644 --- a/api/device-define/default.json +++ b/api/device-define/default.json @@ -95,7 +95,6 @@ "SystemCapability.Multimedia.SystemSound.Core", "SystemCapability.Telephony.CoreService", "SystemCapability.Telephony.CallManager", - "SystemCapability.Telephony.CellularCall", "SystemCapability.Telephony.CellularData", "SystemCapability.Telephony.SmsMms", "SystemCapability.Telephony.StateRegistry", @@ -118,7 +117,6 @@ "SystemCapability.HiviewDFX.Hiview.FaultLogger", "SystemCapability.HiviewDFX.Hiview.LogLibrary", "SystemCapability.HiviewDFX.HiChecker", - "SystemCapability.HiviewDFX.HiDumper", "SystemCapability.HiviewDFX.HiAppEvent", "SystemCapability.HiviewDFX.HiSysEvent", "SystemCapability.HiviewDFX.HiProfiler.HiDebug", @@ -224,6 +222,7 @@ "SystemCapability.Multimedia.AudioHaptic.Core", "SystemCapability.ArkUi.Graphics3D", "SystemCapability.Graphics.Drawing", + "SystemCapability.Graphic.Graphic2D.HyperGraphicManager", "SystemCapability.Graphic.Graphic2D.NativeDrawing", "SystemCapability.Developtools.Syscap", "SystemCapability.Resourceschedule.Ffrt.Core", @@ -234,6 +233,8 @@ "SystemCapability.Graphic.Vulkan", "SystemCapability.Multimedia.Image.ImageCreator", "SystemCapability.Ability.AppStartup", - "SystemCapability.Ability.AppExtension.PhotoEditorExtension" + "SystemCapability.Ability.AppExtension.PhotoEditorExtension", + "SystemCapability.Resourceschedule.BackgroundProcessManager", + "SystemCapability.Test.PerfTest" ] } diff --git a/api/device-define/liteWearable.json b/api/device-define/liteWearable.json index 8f51d4ff450c2d5cd9096297bf32541f3e26d422..98f7aa341fbaf0e476f042bfead079b2db09035d 100644 --- a/api/device-define/liteWearable.json +++ b/api/device-define/liteWearable.json @@ -16,6 +16,7 @@ "SystemCapability.MiscServices.ScreenLock", "SystemCapability.Security.CryptoFramework", "SystemCapability.Security.CryptoFramework.MessageDigest", - "SystemCapability.Security.CryptoFramework.Rand" + "SystemCapability.Security.CryptoFramework.Rand", + "SystemCapability.Resourceschedule.BackgroundProcessManager" ] } diff --git a/api/device-define/tablet.json b/api/device-define/tablet.json index f226b8496f2e82e415f269f151f0fc18af0a0019..983d071518468cc14ce7165c8f7e681d91f42684 100644 --- a/api/device-define/tablet.json +++ b/api/device-define/tablet.json @@ -110,7 +110,6 @@ "SystemCapability.HiviewDFX.Hiview.FaultLogger", "SystemCapability.HiviewDFX.Hiview.LogLibrary", "SystemCapability.HiviewDFX.HiChecker", - "SystemCapability.HiviewDFX.HiDumper", "SystemCapability.HiviewDFX.HiAppEvent", "SystemCapability.HiviewDFX.HiSysEvent", "SystemCapability.HiviewDFX.HiProfiler.HiDebug", @@ -224,6 +223,8 @@ "SystemCapability.Multimedia.Image.ImageCreator", "SystemCapability.Graphic.Graphic2D.WebGL2", "SystemCapability.Ability.AppStartup", - "SystemCapability.Ability.AppExtension.PhotoEditorExtension" + "SystemCapability.Ability.AppExtension.PhotoEditorExtension", + "SystemCapability.Resourceschedule.BackgroundProcessManager", + "SystemCapability.Test.PerfTest" ] } diff --git a/api/device-define/tv.json b/api/device-define/tv.json index 21307864247ac4b8f2c7d644f541a5ce4ee11b27..811e920c675425fdce87d8349dfc804191a29478 100644 --- a/api/device-define/tv.json +++ b/api/device-define/tv.json @@ -68,6 +68,8 @@ "SystemCapability.Security.CryptoFramework.MessageDigest", "SystemCapability.Security.CryptoFramework.Rand", "SystemCapability.Security.CryptoFramework.Signature", + "SystemCapability.Security.Huks.Core", + "SystemCapability.Security.Huks.Extension", "SystemCapability.DistributedDataManager.DataObject.DistributedObject", "SystemCapability.DistributedDataManager.DataShare.Consumer", "SystemCapability.DistributedDataManager.DataShare.Core", @@ -90,7 +92,6 @@ "SystemCapability.Graphic.Graphic2D.EGL", "SystemCapability.Graphic.Graphic2D.GLES2", "SystemCapability.Graphic.Graphic2D.GLES3", - "SystemCapability.Graphic.Graphic2D.HyperGraphicManager", "SystemCapability.Graphic.Graphic2D.NativeBuffer", "SystemCapability.Graphic.Graphic2D.NativeDrawing", "SystemCapability.Graphic.Graphic2D.NativeImage", @@ -103,7 +104,6 @@ "SystemCapability.HiviewDFX.HiAppEvent", "SystemCapability.HiviewDFX.HiChecker", "SystemCapability.HiviewDFX.HiCollie", - "SystemCapability.HiviewDFX.HiDumper", "SystemCapability.HiviewDFX.HiLog", "SystemCapability.HiviewDFX.HiProfiler.HiDebug", "SystemCapability.HiviewDFX.HiSysEvent", diff --git a/api/device-define/wearable.json b/api/device-define/wearable.json index 3bcd44ceee65f58588128b9be60882f6f004844a..a511203b64ecf3bb38a895e92993fb3275e9251a 100644 --- a/api/device-define/wearable.json +++ b/api/device-define/wearable.json @@ -53,7 +53,6 @@ "SystemCapability.Applications.CalendarData", "SystemCapability.Applications.Contacts", "SystemCapability.Telephony.CallManager", - "SystemCapability.Telephony.CellularCall", "SystemCapability.Telephony.CellularData", "SystemCapability.Security.Cert", "SystemCapability.Notification.CommonEvent", @@ -71,6 +70,8 @@ "SystemCapability.Security.CryptoFramework.MessageDigest", "SystemCapability.Security.CryptoFramework.Rand", "SystemCapability.Security.CryptoFramework.Signature", + "SystemCapability.Security.Huks.Core", + "SystemCapability.Security.Huks.Extension", "SystemCapability.DistributedDataManager.DataObject.DistributedObject", "SystemCapability.DistributedDataManager.DataShare.Consumer", "SystemCapability.DistributedDataManager.DataShare.Core", @@ -85,7 +86,6 @@ "SystemCapability.DistributedHardware.DistributedHardwareFWK", "SystemCapability.Notification.Notification", "SystemCapability.Notification.ReminderAgent", - "SystemCapability.Ability.DistributedAbilityManager", "SystemCapability.Multimedia.Drm.Core", "SystemCapability.Utils.Lang", "SystemCapability.Notification.Emitter", @@ -107,7 +107,6 @@ "SystemCapability.HiviewDFX.HiAppEvent", "SystemCapability.HiviewDFX.HiChecker", "SystemCapability.HiviewDFX.HiCollie", - "SystemCapability.HiviewDFX.HiDumper", "SystemCapability.HiviewDFX.HiLog", "SystemCapability.HiviewDFX.HiProfiler.HiDebug", "SystemCapability.HiviewDFX.HiSysEvent", @@ -134,21 +133,18 @@ "SystemCapability.ArkCompiler.JSVM", "SystemCapability.ArkUI.ArkUI.Napi", "SystemCapability.Communication.NetManager.Core", - "SystemCapability.Communication.NetManager.Ethernet", "SystemCapability.Communication.NetManager.MDNS", "SystemCapability.Communication.NetManager.NetSharing", "SystemCapability.Communication.NetManager.Vpn", "SystemCapability.Communication.NetStack", "SystemCapability.Account.AppAccount", "SystemCapability.Account.OsAccount", - "SystemCapability.MiscServices.Pasteboard", "SystemCapability.UserIAM.UserAuth.PinAuth", "SystemCapability.Multimedia.AudioHaptic.Core", "SystemCapability.Multimedia.Media.AVImageGenerator", "SystemCapability.Multimedia.Media.AVMetadataExtractor", "SystemCapability.Multimedia.Media.AVPlayer", "SystemCapability.Multimedia.Media.AVRecorder", - "SystemCapability.Multimedia.Media.AVScreenCapture", "SystemCapability.Multimedia.Media.AudioPlayer", "SystemCapability.Multimedia.Media.AudioRecorder", "SystemCapability.Multimedia.Media.SoundPool", @@ -158,9 +154,6 @@ "SystemCapability.PowerManager.PowerManager.Core", "SystemCapability.PowerManager.PowerManager.Extension", "SystemCapability.DistributedDataManager.Preferences.Core", - "SystemCapability.DistributedDataManager.CloudSync.Client", - "SystemCapability.DistributedDataManager.CloudSync.Config", - "SystemCapability.DistributedDataManager.CloudSync.Server", "SystemCapability.DistributedDataManager.CommonType", "SystemCapability.DistributedDataManager.RelationalStore.Core", "SystemCapability.MiscServices.Download", @@ -175,16 +168,12 @@ "SystemCapability.Telephony.SmsMms", "SystemCapability.Telephony.StateRegistry", "SystemCapability.FileManagement.StorageService.Encryption", - "SystemCapability.FileManagement.StorageService.SpatialStatistics", - "SystemCapability.FileManagement.StorageService.Volume", "SystemCapability.Developtools.Syscap", "SystemCapability.PowerManager.ThermalManager", "SystemCapability.MiscServices.Time", - "SystemCapability.DistributedDataManager.UDMF.Core", "SystemCapability.ArkUI.UiAppearance", "SystemCapability.Update.UpdateService", "SystemCapability.UserIAM.UserAuth.Core", - "SystemCapability.FileManagement.UserFileService", "SystemCapability.Web.Webview.Core", "SystemCapability.WindowManager.WindowManager.Core", "SystemCapability.ResourceSchedule.WorkScheduler", @@ -195,9 +184,9 @@ "SystemCapability.Communication.WiFi.AP.Core", "SystemCapability.Communication.WiFi.P2P", "SystemCapability.Communication.WiFi.Core", - "SystemCapability.Communication.WiFi.AP.Extension", "SystemCapability.Location.Location.Core", "SystemCapability.Location.Location.Gnss", - "SystemCapability.Test.UiTest" + "SystemCapability.Test.UiTest", + "SystemCapability.Resourceschedule.BackgroundProcessManager" ] } diff --git a/api/global/rawFileDescriptor.d.ts b/api/global/rawFileDescriptor.d.ts index c7313eef6d7906fd7a7ddd5b3a902ae998f7e3ec..76d4c8959d6238fa8853eba9958b0585f00965fd 100644 --- a/api/global/rawFileDescriptor.d.ts +++ b/api/global/rawFileDescriptor.d.ts @@ -16,6 +16,7 @@ /** * @file * @kit LocalizationKit + * @arkts 1.1&1.2 */ /** @@ -40,7 +41,7 @@ * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ export interface RawFileDescriptor { /** @@ -63,7 +64,7 @@ export interface RawFileDescriptor { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ fd: number; @@ -87,7 +88,7 @@ export interface RawFileDescriptor { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ offset: number; @@ -111,7 +112,7 @@ export interface RawFileDescriptor { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 12 + * @since arkts {'1.1':'12', '1.2':'20'} */ length: number; } \ No newline at end of file diff --git a/api/global/resource.d.ts b/api/global/resource.d.ts index f40f7b0ab1f4db567f7dfd1f64a1e145029623bf..bb8beb45be619634d4fbe9e81156794b9cf5972c 100644 --- a/api/global/resource.d.ts +++ b/api/global/resource.d.ts @@ -32,7 +32,8 @@ * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ export interface Resource { /** @@ -49,7 +50,8 @@ export interface Resource { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ bundleName: string; @@ -67,7 +69,8 @@ export interface Resource { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ moduleName: string; @@ -85,17 +88,31 @@ export interface Resource { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ id: number; + /** + * Set params. + * + * @type { ?Array<Object | undefined> } + * @syscap SystemCapability.Global.ResourceManager + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ + params?: Array<Object | undefined>; + /** * Set params. * * @type { ?any[] } * @syscap SystemCapability.Global.ResourceManager - * @since 7 + * @since 9 */ + /** * Set params. * @@ -112,7 +129,7 @@ export interface Resource { * * @type { ?number } * @syscap SystemCapability.Global.ResourceManager - * @since 7 + * @since 9 */ /** * Set type. @@ -121,7 +138,8 @@ export interface Resource { * @syscap SystemCapability.Global.ResourceManager * @crossplatform * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} + * @arkts 1.1&1.2 */ type?: number; } \ No newline at end of file diff --git a/api/graphics3d/Scene.d.ts b/api/graphics3d/Scene.d.ts index bf83d915fba6e2b3bdfccd51b1a99bba8c94fdf6..51932db0b04fa612e59a2dd0bf6448a2de295e81 100644 --- a/api/graphics3d/Scene.d.ts +++ b/api/graphics3d/Scene.d.ts @@ -18,9 +18,9 @@ * @kit ArkGraphics3D */ -import { Shader, MaterialType, Material, Animation, Environment, Image, MeshResource } from './SceneResources'; +import { Shader, MaterialType, Material, Animation, Environment, Image, MeshResource, Sampler, SceneResource } from './SceneResources'; import { Camera, LightType, Light, Node, NodeType, Geometry } from './SceneNodes'; -import { Position3, Color, GeometryDefinition } from './SceneTypes'; +import { Position3, Color, GeometryDefinition, Vec2, Vec3, Vec4 } from './SceneTypes'; /** * The scene resource parameters type. @@ -76,14 +76,130 @@ export interface SceneNodeParameters { path?: string; } +/** + * The result of a ray cast hit. + * + * @typedef RaycastResult + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface RaycastResult { + /** + * The node that was hit. + * + * @type { Node } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + node: Node; + + /** + * The distance to the center of the axis-aligned bounding box. + * + * @type { number } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + centerDistance: number; + + /** + * The position of the hit in world coordinates. + * + * @type { Position3 } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + hitPosition: Position3; +} + +/** + * How a raycast should be performed. + * + * @interface RaycastParameters + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface RaycastParameters { + /** + * If defined, search only the nodes in the hierarchy under this node. + * + * @type { ?Node } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + rootNode?: Node; +} + +/** + * The render resource factory. RenderResourceFactory is used to create resources that can be shared + * across Scences that share a RenderContext + * + * @interface RenderResourceFactory + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface RenderResourceFactory { + /** + * Create a shader. + * + * @param { SceneResourceParameters } params - the param of creating a shader + * @returns { Promise<Shader> } promise a shader + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + createShader(params: SceneResourceParameters): Promise<Shader>; + + /** + * Create a image. + * + * @param { SceneResourceParameters } params - the param of creating a image + * @returns { Promise<Image> } promise a image + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + createImage(params: SceneResourceParameters): Promise<Image>; + + /** + * Create a Mesh from an array of vertices. + * + * @param { SceneResourceParameters } params - the param of creating a Mesh object + * @param { GeometryDefinition } geometry - what sort of a geometric shape to create + * @returns { Promise<MeshResource> } promise a Mesh + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + createMesh(params: SceneResourceParameters, geometry: GeometryDefinition): Promise<MeshResource>; + + /** + * create a Sampler + * + * @param { SceneResourceParameters } params - the param of create a sampler + * @returns { Promise<Sampler> } - promise a scene + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + createSampler(params:SceneResourceParameters): Promise<Sampler> + + /** + * Create a new scene from a Resource. + * + * @param { ResourceStr } uri - the resource of creating a scene + * @returns { Promise<Scene> } promise a scene + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + createScene(uri?: ResourceStr): Promise<Scene>; +} + /** * The scene resource factory. * + * @extends RenderResourceFactory * @interface SceneResourceFactory * @syscap SystemCapability.ArkUi.Graphics3D * @since 12 */ -export interface SceneResourceFactory { +export interface SceneResourceFactory extends RenderResourceFactory { /** * Create a camera. * @@ -126,26 +242,6 @@ export interface SceneResourceFactory { */ createMaterial(params: SceneResourceParameters, materialType: MaterialType): Promise<Material>; - /** - * Create a shader. - * - * @param { SceneResourceParameters } params - the param of creating a shader - * @returns { Promise<Shader> } promise a shader - * @syscap SystemCapability.ArkUi.Graphics3D - * @since 12 - */ - createShader(params: SceneResourceParameters): Promise<Shader>; - - /** - * Create a image. - * - * @param { SceneResourceParameters } params - the param of creating a image - * @returns { Promise<Image> } promise a image - * @syscap SystemCapability.ArkUi.Graphics3D - * @since 12 - */ - createImage(params: SceneResourceParameters): Promise<Image>; - /** * Create a environment. * @@ -166,27 +262,63 @@ export interface SceneResourceFactory { * @since 18 */ createGeometry(params: SceneNodeParameters, mesh:MeshResource): Promise<Geometry>; +} +/** + * Define underlying scene component + * + * @interface SceneComponent + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface SceneComponent { /** - * Create a Mesh from an array of vertices. + * Scene component name * - * @param { SceneResourceParameters } params - the param of creating a Mesh object - * @param { GeometryDefinition } geometry - what sort of a geometric shape to create - * @returns { Promise<MeshResource> } promise a Mesh + * @type { string } * @syscap SystemCapability.ArkUi.Graphics3D - * @since 18 + * @since 20 */ - createMesh(params: SceneResourceParameters, geometry: GeometryDefinition): Promise<MeshResource>; + name: string; /** - * Create a new scene from a Resource. + * Component properties * - * @param { Resource } uri - the resource of creating a scene - * @returns { Promise<Scene> } promise a scene + * @type { Record<string, string | number | Vec2 | Vec3 | Vec4 | SceneResource | boolean | number[] | string[] | SceneResource[] | Vec2[] | Vec3[] | Vec4[] | null | undefined> } + * @readonly * @syscap SystemCapability.ArkUi.Graphics3D - * @since 18 + * @since 20 */ - createScene(uri?: ResourceStr): Promise<Scene>; + readonly property: Record<string, string | number | Vec2 | Vec3 | Vec4 | SceneResource | boolean | number[] | string[] | SceneResource[] | Vec2[] | Vec3[] | Vec4[] | null | undefined>; +} + +/** + * Render context defines the context for all rendering resources. Resources within the same render context + * may be shared between scenes created within the same render context. + * + * @interface RenderContext + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface RenderContext { + /** + * Get resource factory. + * + * @returns { RenderResourceFactory } -- RenderResourceFactory instance + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + getRenderResourceFactory() : RenderResourceFactory; + + /** + * Load external plugin + * + * @param {string} name - Name of the plugin + * @returns { Promise<boolean> } - Promise a boolean to show if the plugin load is successful + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + loadPlugin(name: string): Promise<boolean>; } /** @@ -215,6 +347,16 @@ export interface RenderParameters { * @since 12 */ export class Scene { + /** + * Get default render context + * + * @returns { RenderContext | null } -- The default RenderContext instance + * @static + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + static getDefaultRenderContext(): RenderContext | null; + /** * Create a new scene from a ResourceStr. * @@ -318,4 +460,26 @@ export class Scene { * @since 15 */ renderFrame(params?: RenderParameters): boolean; + + /** + * Create a new component. + * + * @param { Node } node - The node the component is attached to + * @param { string } name - The name of the component to load. Valid names are defined by each plugin. + * @returns { Promise<SceneComponent> } - The newly added component. + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + createComponent(node: Node, name: string): Promise<SceneComponent>; + + /** + * Get component by name. + * + * @param { Node } node - The node component is attached to. + * @param { string } name - name of the component + * @returns { SceneComponent | null } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + getComponent(node: Node, name: string): SceneComponent | null; } diff --git a/api/graphics3d/SceneNodes.d.ts b/api/graphics3d/SceneNodes.d.ts index 0b9e7bb6fba7b01939cfffc100240b9b33c9ec38..021e109526d8c3360ee15cab0b6a6635f0fc0f6f 100644 --- a/api/graphics3d/SceneNodes.d.ts +++ b/api/graphics3d/SceneNodes.d.ts @@ -18,9 +18,10 @@ * @kit ArkGraphics3D */ -import { SceneResource, Mesh } from './SceneResources'; -import { Position3, Quaternion, Scale3, Color } from './SceneTypes'; +import { SceneResource, Mesh, Morpher } from './SceneResources'; +import { Position3, Quaternion, Scale3, Color, Vec2, Vec3 } from './SceneTypes'; import { PostProcessSettings } from './ScenePostProcessSettings'; +import { RaycastParameters, RaycastResult } from './Scene'; /** * Defines the layer mask of the node. @@ -280,6 +281,16 @@ export interface Geometry extends Node { * @since 12 */ readonly mesh: Mesh; + + /** + * Morpher target definition. + * + * @type { ?Morpher } + * @readonly + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + readonly morpher?: Morpher; } /** @@ -448,4 +459,15 @@ export interface Camera extends Node { * @since 12 */ clearColor: Color | null; + + /** + * Cast a ray to a position on the screen and list what it hits. + * + * @param { Vec2 } viewPosition - a position in normalized viewport coordiantes towards which to cast + * @param { RaycastParameters } params - options for performing the ray cast + * @returns { Promise<RaycastResult[]> } an array of hit results, sorted from closest to farthest, possibly empty + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + raycast(viewPosition: Vec2, params: RaycastParameters): Promise<RaycastResult[]>; } diff --git a/api/graphics3d/SceneResources.d.ts b/api/graphics3d/SceneResources.d.ts index 6eb869132171ce7213b4b793920b3179118891c9..9ab91a1f4af05ed5842f596a69df099ee744fc27 100644 --- a/api/graphics3d/SceneResources.d.ts +++ b/api/graphics3d/SceneResources.d.ts @@ -184,6 +184,100 @@ export enum MaterialType { * @since 12 */ SHADER = 1, + + /** + * The material is a physically-based metallic roughness material. + * + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + METALLIC_ROUGHNESS = 2, +} + +/** + * The enum of pbr material cull mode. + * + * @enum { number } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export enum CullMode { + /** + * Disable culling. + * + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + NONE = 0, + + /** + * Front face culling. + * + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + FRONT = 1, + + /** + * Back face culling. + * + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + BACK = 2 +} + +/** + * Blend interface. + * + * @interface Blend + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface Blend { + /** + * Enable/disable blending. + * + * @type { boolean } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + enabled: boolean; +} + +/** + * Render sort Layer. Within a render slot a layer can define a sort layer order. + * There are 0-63 values available (0 first, 63 last). Default id value is 32. + * 1. Typical use case is to set render sort layer to objects which render with depth test without depth write. + * 2. Typical use case is to always render character and/or camera object first to cull large parts of the view. + * 3. Sort e.g. plane layers. + * + * @interface RenderSort + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface RenderSort { + /** + * Sort layer used sorting submeshes in rendering in render slots. + * Valid values are 0 - 63. + * + * @type { ?number } + * @default 32 Default render sort layer id. + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + renderSortLayer?: number; + + /** + * Sort layer order to describe fine order within sort layer. + * Valid values are 0 - 255. + * + * @type { ?number } + * @default 0 Default render sort layer order. + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + renderSortLayerOrder?: number; } /** @@ -204,6 +298,198 @@ export interface Material extends SceneResource { * @since 12 */ readonly materialType: MaterialType; + + /** + * Defines if the material can receive shadows. + * + * @type { ?boolean } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + shadowReceiver?: boolean; + + /** + * Culling mode. + * + * @type { ?CullMode } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + cullMode?: CullMode; + + /** + * Enable/disable blending. + * + * @type { ?Blend } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + blend?: Blend; + + /** + * Alpha cutoff value [0,1]. Enabled if < 1. + * + * @type { ?number } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + alphaCutoff?: number; + + /** + * Render sorting priority for layers. + * + * @type { ?RenderSort } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + renderSort?: RenderSort; +} + +/** + * Material property interface. + * + * @interface MaterialProperty + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface MaterialProperty { + /** + * Texture to use. If undefined, factor defines the diffuse color. + * + * @type { Image | null } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + image: Image | null; + + /** + * Texture coefficient. Default is {1,1,1,1}, meaning no effect. + * + * @type { Vec4 } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + factor: Vec4; + + /** + * Texture Sampler. + * + * @type { ?Sampler } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + sampler?: Sampler; +} + +/** + * Physically-based metallic roughness material resource. + * + * @extends Material + * @interface MetallicRoughnessMaterial + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface MetallicRoughnessMaterial extends Material { + /** + * Base color factor of pbr material. + * Value of factor.xyzw defines rgba color. + * + * @type { MaterialProperty } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + baseColor: MaterialProperty; + + /** + * Normal factor of pbr material. + * Value of factor.x defines normal scale. + * + * @type { MaterialProperty } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + normal: MaterialProperty; + + /** + * Metallic roughness material parameters. + * Value of factor.y defines roughness, factor.z defines metallic and factor.a defines reflectance. + * + * @type { MaterialProperty } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + material: MaterialProperty; + + /** + * Ambient occlusion of pbr material. + * Value of factor.x defines ambient occlusion factor. + * + * @type { MaterialProperty } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + ambientOcclusion: MaterialProperty; + + /** + * Emissive property of pbr material. + * + * @type { MaterialProperty } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + emissive: MaterialProperty; + + /** + * Clearcoat intensity. + * Value of factor.x defines clearcoat layer intensity. + * + * @type { MaterialProperty } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + clearCoat: MaterialProperty; + + /** + * Clearcoat roughness. + * Value of factor.y defines clearcoat layer roughness. + * + * @type { MaterialProperty } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + clearCoatRoughness: MaterialProperty; + + /** + * Clearcoat normal. + * Value of factor.xyz defines RGB clearcoat normal scale. + * + * @type { MaterialProperty } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + clearCoatNormal: MaterialProperty; + + /** + * Sheen color of pbr material. + * Value of factor.xyz defines RGB sheen color, + * Value of factor.w defines sheen roughness. + * + * @type { MaterialProperty } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + sheen: MaterialProperty; + + /** + * Specular color of pbr material. + * Value of factor.xyz defines RGB specular color, + * Value of factor.w defines specular intensity. + * + * @type { MaterialProperty } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + specular: MaterialProperty; } /** @@ -225,6 +511,117 @@ export interface ShaderMaterial extends Material { colorShader?: Shader; } +/** + * Sampler filter Mode + * + * @enum { number } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export enum SamplerFilter { + /** + * Use nearest filtering + * + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + NEAREST = 0, + /** + * Use linear filtering + * + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + LINEAR = 1, +} + +/** + * Addressing mode for Sampler + * + * @enum { number } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export enum SamplerAddressMode { + /** + * Repeat + * + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + REPEAT = 0, + + /** + * Mirrored repeat + * + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + MIRRORED_REPEAT = 1, + + /** + * clamp to edge + * + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + CLAMP_TO_EDGE = 2, +} + +/** + * Sampler interface + * + * @interface { Sampler } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface Sampler { + /** + * Mag filiter + * + * @type { ?SamplerFilter } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + magFilter?: SamplerFilter; + + /** + * Min filiter + * + * @type { ?SamplerFilter } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + minFilter?: SamplerFilter; + + /** + * Mip-map mode + * + * @type { ?SamplerFilter } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + mipMapMode?: SamplerFilter; + + /** + * U addressing mode + * + * @type { ?SamplerAddressMode } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + addressModeU?: SamplerAddressMode; + + /** + * V addressing mode + * + * @type { ?SamplerAddressMode } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + addressModeV?: SamplerAddressMode; +} + /** * Sub mesh resource. * @@ -262,6 +659,25 @@ export interface SubMesh { readonly aabb: Aabb; } +/** + * Defines Morpher interface for specifying morph targets for Node's geometry. + * + * @interface Morpher + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ +export interface Morpher { + /** + * Morph target names and weights + * + * @type { Record<string, number> } + * @readonly + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + readonly targets: Record<string, number>; +} + /** * Mesh resource. * @@ -331,6 +747,16 @@ export interface Animation extends SceneResource { */ enabled: boolean; + /** + * Animation speed factor + * A negative value runs the animation in reverse using the given speed factor + * + * @type { ?number } + * @syscap SystemCapability.ArkUi.Graphics3D + * @since 20 + */ + speed?: number; + /** * The duration of the animation. * diff --git a/api/multimedia/soundPool.d.ts b/api/multimedia/soundPool.d.ts index 6edb0d80646f03626b115a200a707124321eba6b..63d9baad36c7adaf78d71e655738204e6d74cdac 100644 --- a/api/multimedia/soundPool.d.ts +++ b/api/multimedia/soundPool.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021-2023 Huawei Device Co., Ltd. + * Copyright (c) 2021-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -18,18 +18,89 @@ * @kit MediaKit */ -import type { ErrorCallback, AsyncCallback, Callback } from '../@ohos.base'; +import type { ErrorCallback, AsyncCallback, Callback, BusinessError } from '../@ohos.base'; import type audio from '../@ohos.multimedia.audio'; +import media from '../@ohos.multimedia.media'; +import resourceManager from '../@ohos.resourceManager'; /** - * Interface for play parameters. + * Enumerates the error type. + * @enum { number } + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @since 20 + */ +export enum ErrorType { + /** + * Load error. + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @since 20 + */ + LOAD_ERROR = 1, + + /** + * Play error. + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @since 20 + */ + PLAY_ERROR = 2 +} + +/** + * Interface for error info. + * @typedef { ErrorInfo<T extends Error = BusinessError> } + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @since 20 + */ +export interface ErrorInfo<T extends Error = BusinessError> { + /** + * Error code. + * @type { T } + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @since 20 + */ + errorCode: T; + /** + * Error type. + * @type { ?ErrorType } + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @since 20 + */ + errorType?: ErrorType; + /** + * Sound id, returned from SoundPool.load function. + * @type { ?number } + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @since 20 + */ + soundId?: number; + /** + * Stream id, returned from SoundPool.play function. + * @type { ?number } + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @since 20 + */ + streamId?: number; +} + +/** + * Describes the playback parameters of the sound pool. + * + * These parameters are used to control the playback volume, number of loops, and priority. + * * @typedef PlayParameters * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 */ export interface PlayParameters { /** - * loop mode (0 = no loop, -1 = loop forever) + * Number of loops. + * + * If this parameter is set to a value greater than or equal to 0, the number of times the content + * is actually played is the value of **loop** plus 1. + * + * If this parameter is set to a value less than 0, the content is played repeatedly. + * + * The default value is **0**, indicating that the content is played only once. * * @type { ?number } * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -37,7 +108,7 @@ export interface PlayParameters { */ loop?: number; /** - * playback rate + * Playback rate. For details, see [AudioRendererRate]{@link #audio.AudioRendererRate}. Default value: **0**. * * @type { ?number } * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -45,7 +116,7 @@ export interface PlayParameters { */ rate?: number; /** - * left volume value(range = 0.0 to 1.0),current leftVolume = rightVolume + * Volume of the left channel. The value ranges from 0.0 to 1.0. Default value: **1.0**. * * @type { ?number } * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -53,7 +124,8 @@ export interface PlayParameters { */ leftVolume?: number; /** - * right volume value(range = 0.0 to 1.0),current leftVolume = rightVolume + * Volume of the right channel. The value ranges from 0.0 to 1.0. (Currently, the volume cannot be set separately + * for the left and right channels. The volume set for the left channel is used.) Default value: **1.0**. * * @type { ?number } * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -61,7 +133,8 @@ export interface PlayParameters { */ rightVolume?: number; /** - * stream priority (0 = lowest priority) + * Playback priority. The value **0** means the lowest priority. A larger value indicates a higher priority. + * The value is an integer greater than or equal to 0. Default value: **0**. * * @type { ?number } * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -69,7 +142,11 @@ export interface PlayParameters { */ priority?: number; /** - * Flag indicating that the sound effect and audio can be played in parallel. + * Whether the sound can be played in parallel with other active audio streams. The value **true** means that the + * sound can be played in parallel with other active audio streams, without preempting the audio focus, + * and **false** means the opposite. The default value is **false**. + * + * This is a system API. * * @type { ?boolean } * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -80,18 +157,42 @@ export interface PlayParameters { } /** - * Interface for soundPool instance. Manages and plays sound. Before calling an SoundPool method, you must use createSoundPool() - * to create an SoundPool instance. + * Implements a sound pool that provides APIs for loading, unloading, playing, and stopping playing system sounds, + * setting the volume, and setting the number of loops. Before using these APIs, you must call + * [createSoundPool]{@link #media.createSoundPool} to create a **SoundPool** instance. + * + * **NOTE** + * + * When using the **SoundPool** instance, you are advised to register the following callbacks to proactively obtain + * status changes: + * - on('loadComplete'): listens for the event indicating that the resource loading is finished. + * - on('playFinishedWithStreamId'): listens for the event indicating that the playback is finished and + * returns the stream ID of the audio that finishes playing. + * - on('playFinished'): listens for the event indicating that the playback is finished. + * - on('error'): listens for error events. + * * @typedef SoundPool * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 */ export interface SoundPool { /** - * Load the sound from the specified path. + * Loads a sound. This API uses an asynchronous callback to obtain the sound ID. + * The input parameter **uri** is a string starting with fd://, which is generated based on the file descriptor (FD) + * obtained. This API cannot be used to load resources in the **rawfile** directory. + * Instead, use load(fd: number, offset: number, length: number, callback: AsyncCallback<number>): void or + * load(fd: number, offset: number, length: number): Promise<number>. * - * @param {string} uri The path to the audio file - * @param {AsyncCallback<number>} callback Callback a sound ID. This value can be used to play or unload the sound. + * **NOTE** + * + * After the resource handle (in the form of an FD) or path description (in the form of a URI) is transferred to + * the AVPlayer, do not use the resource handle or path description in read or write operations, + * including but not limited to transferring it to multiple AVPlayers. Competition occurs when multiple AVPlayers use + * the same resource handle or path description to read and write files at the same time, resulting in playback errors. + * + * @param {string} uri - URI of the audio file to load. Generally, the URI starts with fd://. + * @param {AsyncCallback<number>} callback - Callback used to return the sound ID. A valid value must be + * greater than 0. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400103 - I/O error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. @@ -100,10 +201,22 @@ export interface SoundPool { */ load(uri: string, callback: AsyncCallback<number>): void; /** - * Load the sound from the specified path. + * Loads a sound. This API uses a promise to obtain the sound ID. The input parameter **uri** is a starting with + * fd://, which is generated based on the FD obtained. This API cannot be used to load resources in the **rawfile** + * directory. + * Instead, use load(fd: number, offset: number, length: number, callback: AsyncCallback<number>): void or + * load(fd: number, offset: number, length: number): Promise<number>. + * + * **NOTE** + * + * After the resource handle (in the form of an FD) or path description (in the form of a URI) + * is transferred to the AVPlayer, do not use the resource handle or path description in read or write operations, + * including but not limited to transferring it to multiple AVPlayers. Competition occurs when multiple AVPlayers + * use the same resource handle or path description to read and write files at the same time, + * resulting in playback errors. * - * @param {string} uri The path to the audio file - * @returns {Promise<number>} Promise a sound ID. This value can be used to play or unload the sound. + * @param {string} uri - URI of the audio file to load. Generally, the URI starts with fd://. + * @returns {Promise<number>} Promise used to return the sound ID. A valid value must be greater than 0. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400103 - I/O error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -112,12 +225,24 @@ export interface SoundPool { */ load(uri: string): Promise<number>; /** - * Load the sound from a FileDescriptor. + * Loads a sound. This API uses an asynchronous callback to obtain the sound ID. The input parameter **fd** can be + * manually input or automatically obtained by reading the embedded resource of the application. * - * @param {number} fd A FileDescriptor object - * @param {number} offset Offset to the start of the sound - * @param {number} length Length of the sound - * @param {AsyncCallback<number>} callback Callback a sound ID. This value can be used to play or unload the sound. + * **NOTE** + * + * After the resource handle (in the form of an FD) or path description (in the form of a URI) is transferred to + * the AVPlayer, do not use the resource handle or path description in read or write operations, including but not + * limited to transferring it to multiple AVPlayers. Competition occurs when multiple AVPlayers use the same resource + * handle or path description to read and write files at the same time, resulting in playback errors. + * + * @param {number} fd - Resource handle, which is obtained by calling + * [resourceManager.getRawFd]{@link resourceManager.resourceManager.getRawFile}. + * @param {number} offset - Resource offset, which needs to be entered based on the preset resource information. + * An invalid value causes a failure to parse audio and video resources. + * @param {number} length - Resource length, which needs to be entered based on the preset resource information. + * An invalid value causes a failure to parse audio and video resources. + * @param {AsyncCallback<number>} callback - Callback used to return the sound ID. + * A valid value must be greater than 0. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400103 - I/O error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. @@ -126,12 +251,23 @@ export interface SoundPool { */ load(fd: number, offset: number, length: number, callback: AsyncCallback<number>): void; /** - * Load the sound from a FileDescriptor. + * Loads a sound. This API uses a promise to obtain the sound ID. The input parameter **fd** can be manually input or + * automatically obtained by reading the embedded resource of the application. + * + * **NOTE** + * + * After the resource handle (in the form of an FD) or path description (in the form of a URI) is transferred to the + * AVPlayer, do not use the resource handle or path description in read or write operations, including but not + * limited to transferring it to multiple AVPlayers. Competition occurs when multiple AVPlayers use the same resource + * handle or path description to read and write files at the same time, resulting in playback errors. * - * @param {number} fd A FileDescriptor object - * @param {number} offset Offset to the start of the sound - * @param {number} length Length of the sound - * @returns {Promise<number>} Promise a sound ID. This value can be used to play or unload the sound. + * @param {number} fd - Resource handle, which is obtained by calling + * [resourceManager.getRawFd]{@link resourceManager.resourceManager.getRawFile}. + * @param {number} offset - Resource offset, which needs to be entered based on the preset resource information. + * An invalid value causes a failure to parse audio and video resources. + * @param {number} length - Resource length, which needs to be entered based on the preset resource information. + * An invalid value causes a failure to parse audio and video resources. + * @returns {Promise<number>} Promise used to return the sound ID. A valid value must be greater than 0. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400103 - I/O error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -140,13 +276,14 @@ export interface SoundPool { */ load(fd: number, offset: number, length: number): Promise<number>; /** - * Play a sound from a sound ID. + * Plays a sound. This API uses an asynchronous callback to obtain the audio stream ID. * - * @param {number} soundID Returned by the load() - * @param {PlayParameters} params Player parameters - * @param {AsyncCallback<number>} callback Callback used to return a non-zero streamID if successful, zero if it fails. + * @param {number} soundID - Sound ID, which is obtained by calling **load()**. + * @param {PlayParameters} params - Playback parameters. + * @param {AsyncCallback<number>} callback - Callback used to return the audio stream ID. + * A valid value must be greater than 0. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -154,12 +291,13 @@ export interface SoundPool { */ play(soundID: number, params: PlayParameters, callback: AsyncCallback<number>): void; /** - * Play a sound from a sound ID. + * Plays a sound. This API uses an asynchronous callback to obtain the audio stream ID. * - * @param {number} soundID Returned by the load() - * @param {AsyncCallback<number>} callback Callback used to return a non-zero streamID if successful, zero if it fails. + * @param {number} soundID - Sound ID, which is obtained by calling **load()**. + * @param {AsyncCallback<number>} callback - Callback used to return the audio stream ID. + * A valid value must be greater than 0. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -167,13 +305,13 @@ export interface SoundPool { */ play(soundID: number, callback: AsyncCallback<number>): void; /** - * Play a sound from a sound ID. + * Plays a sound. This API uses a promise to obtain the audio stream ID. * - * @param {number} soundID Returned by the load() - * @param {PlayParameters} [params] Player parameters - * @returns {Promise<number>} Promise used to return a non-zero streamID if successful, zero if it fails. + * @param {number} soundID - Sound ID, which is obtained by calling **load()**. + * @param {PlayParameters} params - Playback parameters. + * @returns {Promise<number>} Promise used to return the audio stream ID. A valid value must be greater than 0. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -181,12 +319,12 @@ export interface SoundPool { */ play(soundID: number, params?: PlayParameters): Promise<number>; /** - * Stop a stream which is playing. + * Stops playing a sound. This API uses an asynchronous callback to return the result. * - * @param {number} streamID Returned by the play() - * @param {AsyncCallback<void>} callback Callback used to return the result. + * @param {number} streamID - Audio stream ID, which is obtained by calling **play()**. + * @param {AsyncCallback<void>} callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -194,12 +332,12 @@ export interface SoundPool { */ stop(streamID: number, callback: AsyncCallback<void>): void; /** - * Stop a stream which is playing. + * Stops playing a sound. This API uses a promise to return the result. * - * @param {number} streamID Returned by the play() - * @returns {Promise<void>} Promise used to return the result. + * @param {number} streamID - Audio stream ID, which is obtained by calling **play()**. + * @returns {Promise<void>} Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -207,13 +345,18 @@ export interface SoundPool { */ stop(streamID: number): Promise<void>; /** - * Set loop mode. + * Sets the loop mode for an audio stream. This API uses an asynchronous callback to return the result. * - * @param {number} streamID Returned by the play() - * @param {number} loop Loop mode (0 = no loop, -1 = loop forever) - * @param {AsyncCallback<void>} callback Callback used to return the result. + * @param {number} streamID - Audio stream ID, which is obtained by calling **play()**. + * @param {number} loop - Number of loops. + * + * If this parameter is set to a value greater than or equal to 0, the number of times the content is actually + * played is the value of **loop** plus 1. + * + * If this parameter is set to a value less than 0, the content is played repeatedly. + * @param {AsyncCallback<void>} callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -221,13 +364,18 @@ export interface SoundPool { */ setLoop(streamID: number, loop: number, callback: AsyncCallback<void>): void; /** - * Set loop mode. + * Sets the loop mode for an audio stream. This API uses a promise to return the result. + * + * @param {number} streamID - Audio stream ID, which is obtained by calling **play()**. + * @param {number} loop - Number of loops. + * + * If this parameter is set to a value greater than or equal to 0, the number of times the content is actually + * played is the value of **loop** plus 1. * - * @param {number} streamID Returned by the play() - * @param {number} loop Loop mode (0 = no loop, -1 = loop forever) - * @returns {Promise<void>} Promise used to return the result. + * If this parameter is set to a value less than 0, the content is played repeatedly. + * @returns {Promise<void>} Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -235,13 +383,14 @@ export interface SoundPool { */ setLoop(streamID: number, loop: number): Promise<void>; /** - * Set stream priority. + * Sets the priority for an audio stream. This API uses an asynchronous callback to return the result. * - * @param {number} streamID Returned by the play() - * @param {number} priority Stream priority (0 = lowest priority) - * @param {AsyncCallback<void>} callback Callback used to return the result. + * @param {number} streamID - Audio stream ID, which is obtained by calling **play()**. + * @param {number} priority - Priority. The value **0** means the lowest priority. The value is an integer + * greater than or equal to 0. + * @param {AsyncCallback<void>} callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -249,13 +398,14 @@ export interface SoundPool { */ setPriority(streamID: number, priority: number, callback: AsyncCallback<void>): void; /** - * Set stream priority. + * Sets the priority for an audio stream. This API uses a promise to return the result. * - * @param {number} streamID Returned by the play() - * @param {number} priority Stream priority (0 = lowest priority) - * @returns {Promise<void>} Promise used to return the result. + * @param {number} streamID - Audio stream ID, which is obtained by calling **play()**. + * @param {number} priority - Priority. The value **0** means the lowest priority. The value is an integer + * greater than or equal to 0. + * @returns {Promise<void>} Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -263,13 +413,13 @@ export interface SoundPool { */ setPriority(streamID: number, priority: number): Promise<void>; /** - * Set playback rate. + * Sets the playback rate for an audio stream. This API uses an asynchronous callback to return the result. * - * @param {number} streamID Returned by the play() - * @param {audio.AudioRendererRate} rate Playback rate - * @param {AsyncCallback<void>} callback Callback used to return the result. + * @param {number} streamID - Audio stream ID, which is obtained by calling **play()**. + * @param {audio.AudioRendererRate} rate - Playback rate. + * @param {AsyncCallback<void>} callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -277,13 +427,13 @@ export interface SoundPool { */ setRate(streamID: number, rate: audio.AudioRendererRate, callback: AsyncCallback<void>): void; /** - * Set playback rate. + * Sets the playback rate for an audio stream. This API uses a promise to return the result. * - * @param {number} streamID Returned by the play() - * @param {audio.AudioRendererRate} rate Playback rate - * @returns {Promise<void>} Promise used to return the result. + * @param {number} streamID - Audio stream ID, which is obtained by calling **play()**. + * @param {audio.AudioRendererRate} rate - Playback rate. + * @returns {Promise<void>} Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -291,14 +441,15 @@ export interface SoundPool { */ setRate(streamID: number, rate: audio.AudioRendererRate): Promise<void>; /** - * Set stream volume. + * Sets the volume for an audio stream. This API uses an asynchronous callback to return the result. * - * @param {number} streamID Returned by the play() - * @param {number} leftVolume Volume value(range = 0.0 to 1.0),current leftVolume = rightVolume - * @param {number} rightVolume Volume value(range = 0.0 to 1.0),current leftVolume = rightVolume - * @param {AsyncCallback<void>} callback Callback used to return the result. + * @param {number} streamID - Audio stream ID, which is obtained by calling **play()**. + * @param {number} leftVolume - Volume of the left channel. The value ranges from 0.0 to 1.0. + * @param {number} rightVolume - Volume of the right channel. The value ranges from 0.0 to 1.0. Currently, + * setting the volume for the right channel does not take effect. The volume set for the left channel is used. + * @param {AsyncCallback<void>} callback - Callback used to return the result. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by callback. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -306,14 +457,15 @@ export interface SoundPool { */ setVolume(streamID: number, leftVolume: number, rightVolume: number, callback: AsyncCallback<void>): void; /** - * Set stream volume. + * Sets the volume for an audio stream. This API uses a promise to return the result. * - * @param {number} streamID Returned by the play() - * @param {number} leftVolume Volume value(range = 0.0 to 1.0),current leftVolume = rightVolume - * @param {number} rightVolume Volume value(range = 0.0 to 1.0),current leftVolume = rightVolume - * @returns {Promise<void>} Promise used to return the result. + * @param {number} streamID - Audio stream ID, which is obtained by calling **play()**. + * @param {number} leftVolume - Volume of the left channel. The value ranges from 0.0 to 1.0. + * @param {number} rightVolume - Volume of the right channel. The value ranges from 0.0 to 1.0. Currently, + * setting the volume for the right channel does not take effect. The volume set for the left channel is used. + * @returns {Promise<void>} Promise that returns no value. * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. - * <br>2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. + * 2.Incorrect parameter types. 3.Parameter verification failed. Return by promise. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.SoundPool @@ -321,10 +473,10 @@ export interface SoundPool { */ setVolume(streamID: number, leftVolume: number, rightVolume: number): Promise<void>; /** - * Unload a sound from a sound ID. + * Unloads a sound. This API uses an asynchronous callback to return the result. * - * @param {number} soundID Returned by the load() - * @param {AsyncCallback<void>} callback Callback used to return the result. + * @param {number} soundID - Sound ID, which is obtained by calling **load()**. + * @param {AsyncCallback<void>} callback - Callback used to return the result. * @throws { BusinessError } 5400102 - Operation not allowed. Return by callback. * @throws { BusinessError } 5400103 - I/O error. Return by callback. * @throws { BusinessError } 5400105 - Service died. Return by callback. @@ -333,10 +485,10 @@ export interface SoundPool { */ unload(soundID: number, callback: AsyncCallback<void>): void; /** - * Unload a sound from a sound ID. + * Unloads a sound. This API uses a promise to return the result. * - * @param {number} soundID Returned by the load() - * @returns {Promise<void>} Promise used to return the result. + * @param {number} soundID - Sound ID, which is obtained by calling **load()**. + * @returns {Promise<void>} Promise that returns no value. * @throws { BusinessError } 5400102 - Operation not allowed. Return by promise. * @throws { BusinessError } 5400103 - I/O error. Return by promise. * @throws { BusinessError } 5400105 - Service died. Return by promise. @@ -345,93 +497,122 @@ export interface SoundPool { */ unload(soundID: number): Promise<void>; /** - * Releases the soundPool. This method uses an asynchronous callback to return the result. + * Releases this **SoundPool** instance. This API uses an asynchronous callback to return the result. * - * @param {AsyncCallback<void>} callback Callback used to return the result. + * @param {AsyncCallback<void>} callback - Callback used to return the result. * @throws { BusinessError } 5400105 - Service died. Return by callback. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 */ release(callback: AsyncCallback<void>): void; /** - * Releases the soundPool. This method uses a promise to return the result. + * Releases this **SoundPool** instance. This API uses a promise to return the result. * - * @returns {Promise<void>} Promise used to return the result. + * @returns {Promise<void>} Promise that returns no value. * @throws { BusinessError } 5400105 - Service died. Return by promise. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 */ release(): Promise<void>; /** - * Register listens for load result event. + * Subscribes to events indicating that a sound finishes loading. * - * @param {'loadComplete'} type Type of the play finish event to listen for. - * @param {Callback<number>} callback Callback used to listen for load result event + * @param {'loadComplete'} type - Event type, which is **'loadComplete'** in this case. + * This event is triggered when a sound is loaded. + * @param {Callback<number>} callback - ID of the sound that has been loaded. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 */ on(type: 'loadComplete', callback: Callback<number>): void; /** - * Cancel Listens for load result event. + * Unsubscribes from events indicating that a sound finishes loading. * - * @param {'loadComplete'} type Type of the play finish event to listen for. + * @param {'loadComplete'} type - Event type. The value is fixed at **'loadComplete'**. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 */ off(type: 'loadComplete'): void; /** - * Register the listener for playing finished event. The conditions which this event is called - * are the same as {@link #playFinished}, additionally, this event can callback the streamId of finishing playing. - * If this event and the {@link #playFinished} event are registered at the same time, - * only this event will be called, and the {@link #playFinished} event will not be called. + * Subscribes to events indicating the completion of audio playback and returns the stream ID of the audio + * that finishes playing. * - * @param {'playFinishedWithStreamId'} type name of the play finished event to listen for. - * @param {Callback<number>} callback Callback used to listen which stream id has finished playback. + * When only on('playFinished') or on('playFinishedWithStreamId') is subscribed to, the registered + * callback is triggered when the audio playback is complete. + * + * When both on('playFinished') and on('playFinishedWithStreamId') are subscribed to, + * the 'playFinishedWithStreamId' callback is triggered, but the 'playFinished' callback is not triggered, + * when the audio playback is complete. + * + * @param {'playFinishedWithStreamId'} type - Event type, which is **'playFinishedWithStreamId'** in this case. + * This event is triggered when an audio stream finishes playing, and the stream ID is returned. + * @param {Callback<number>} callback - Callback used to return the result. Stream ID of the audio that + * finishes playing. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 18 */ on(type: 'playFinishedWithStreamId', callback: Callback<number>): void; /** - * Cancel listening for playing finished event. + * Unsubscribes from events indicating that a sound finishes playing. * - * @param {'playFinishedWithStreamId'} type name of the play finished event to listen for. + * @param {'playFinishedWithStreamId'} type - Event type. The value is fixed at **'playFinishedWithStreamId'**. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 18 */ off(type: 'playFinishedWithStreamId'): void; /** - * Register listens for play finish event. + * Subscribes to events indicating that a sound finishes playing. * - * @param {'playFinished'} type Type of the play finish event to listen for. - * @param {Callback<void>} callback Callback used to listen for the play finish + * @param {'playFinished'} type - Event type, which is **'playFinished'** in this case. + * This event is triggered when a sound finishes playing. + * @param {Callback<void>} callback - Callback used to return the result. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 */ on(type: 'playFinished', callback: Callback<void>): void; /** - * Cancel Listens for play finish event. + * Unsubscribes from events indicating that a sound finishes playing. * - * @param {'playFinished'} type of the play finish event to listen for. + * @param {'playFinished'} type - Event type. The value is fixed at **'playFinished'**. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 */ off(type: 'playFinished'): void; /** - * Register listens for sound play error events. + * Subscribes to error events of this **SoundPool** instance. This event is used only for error prompt. * - * @param {'error'} type Type of the sound play error event to listen for. - * @param {ErrorCallback} callback Callback used to listen for sound play error events. + * @param {'error'} type - Event type, which is **'error'** in this case. + * This event can be triggered by both user operations and the system. + * @param {ErrorCallback} callback - Callback used to return the error code ID and error message. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 */ on(type: 'error', callback: ErrorCallback): void; /** - * Cancel Listens for sound play error events. + * Unsubscribes from error events of this **SoundPool** instance. * - * @param {'error'} type Type of the sound play error event to listen for. + * @param {'error'} type - Event type, which is **'error'** in this case. * @syscap SystemCapability.Multimedia.Media.SoundPool * @since 10 */ off(type: 'error'): void; + /** + * Subscribes to errorOccurred events of this **SoundPool** instance. + * + * @param { 'errorOccurred' } type - Type of the soundpool event to listen for. + * @param { Callback<ErrorInfo> } callback - Callback used to listen for soundpool errorOccurred events. + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @since 20 + */ + on(type: 'errorOccurred', callback: Callback<ErrorInfo>): void; + + /** + * Unsubscribes from errorOccurred events of this **SoundPool** instance. + * + * @param { 'errorOccurred' } type - Type of the soundpool event to listen for. + * @param { Callback<ErrorInfo> } [callback] - Callback used to listen for soundpool errorOccurred events. + * @syscap SystemCapability.Multimedia.Media.SoundPool + * @since 20 + */ + off(type: 'errorOccurred', callback?: Callback<ErrorInfo>): void; } diff --git a/api/multimedia/systemTonePlayer.d.ts b/api/multimedia/systemTonePlayer.d.ts index 11e454202473aa925a0b6acd0ce12536002c7113..960f9378ffa1db76b969625aef98856d40a14c9e 100644 --- a/api/multimedia/systemTonePlayer.d.ts +++ b/api/multimedia/systemTonePlayer.d.ts @@ -163,9 +163,6 @@ export interface SystemTonePlayer { * @param { Callback<number> } callback - Callback used to obtain the finished event. The callback info is the stream * id that is finished. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 20700002 -Parameter check error. * @syscap SystemCapability.Multimedia.SystemSound.Core * @systemapi @@ -178,9 +175,6 @@ export interface SystemTonePlayer { * @param { 'playFinished' } type - Type of the event to listen for. * @param { Callback<number> } callback - Callback used to obtain the finished event. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 20700002 -Parameter check error. * @syscap SystemCapability.Multimedia.SystemSound.Core * @systemapi @@ -193,9 +187,6 @@ export interface SystemTonePlayer { * @param { 'error'} type - Type of the event to listen for. * @param { ErrorCallback } callback - Error callback while receiving the error event. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 20700002 -Parameter check error. * @syscap SystemCapability.Multimedia.SystemSound.Core * @systemapi @@ -208,9 +199,6 @@ export interface SystemTonePlayer { * @param { 'error'} type - Type of the event to listen for. * @param { ErrorCallback } callback - Error callback while receiving the error event. * @throws { BusinessError } 202 - Not system App. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @throws { BusinessError } 20700002 -Parameter check error. * @syscap SystemCapability.Multimedia.SystemSound.Core * @systemapi diff --git a/api/notification/NotificationCommonDef.d.ts b/api/notification/NotificationCommonDef.d.ts index c1a0ef39308eb3b3ad171249a818c875fb9387ef..6a48a3d1946ff71bbeefdc5331c39d2747783abc 100644 --- a/api/notification/NotificationCommonDef.d.ts +++ b/api/notification/NotificationCommonDef.d.ts @@ -14,12 +14,12 @@ */ /** - * @file Some common definitions + * @file The NotificationCommonDef module provides APIs for describing the BundleOption information, that is, the bundle information of a specified application. * @kit NotificationKit */ /** - * Describes a BundleOption. + * The NotificationCommonDef module provides APIs for describing the BundleOption information, that is, the bundle information of a specified application. * * @typedef BundleOption * @syscap SystemCapability.Notification.Notification @@ -27,7 +27,7 @@ */ export interface BundleOption { /** - * bundle name + * Application name. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -36,7 +36,7 @@ export interface BundleOption { bundle: string; /** - * user id. + * UID of an application, which is obtained from ApplicationInfo. The default value is 0. * * @type { ?number } * @syscap SystemCapability.Notification.Notification diff --git a/api/notification/notificationActionButton.d.ts b/api/notification/notificationActionButton.d.ts index 9c916baebe7e42f34018b63697a9b40551c30279..79373514306b9e135e7c8b5076299cd3328b78e4 100644 --- a/api/notification/notificationActionButton.d.ts +++ b/api/notification/notificationActionButton.d.ts @@ -14,7 +14,7 @@ */ /** - * @file Describes an action button displayed in a notification + * @file The NotificationActionButton module provides APIs for describing the button displayed in the notification. * @kit NotificationKit */ @@ -22,7 +22,7 @@ import { NotificationUserInput } from './notificationUserInput'; import { WantAgent } from '../@ohos.wantAgent'; /** - * Describes an action button displayed in a notification. + * The NotificationActionButton module provides APIs for describing the button displayed in the notification. * * @typedef NotificationActionButton * @syscap SystemCapability.Notification.Notification @@ -57,7 +57,7 @@ export interface NotificationActionButton { extras?: { [key: string]: any }; /** - * User input + * User input object. ID entered by a subscriber. * * @type { ?NotificationUserInput } * @syscap SystemCapability.Notification.Notification diff --git a/api/notification/notificationContent.d.ts b/api/notification/notificationContent.d.ts index c3a20c3070a0698ac1d692d512eb0618f7133400..ad6b1c4ec6bdca51464dca9ba5eb41e040c8a0bf 100644 --- a/api/notification/notificationContent.d.ts +++ b/api/notification/notificationContent.d.ts @@ -14,7 +14,7 @@ */ /** - * @file Some notification types and content + * @file The NotificationContent module provides APIs for defining the notification content. * @kit NotificationKit */ @@ -50,14 +50,13 @@ type IconType = Resource | image.PixelMap; */ export interface NotificationBasicContent { /** - * Title of the normal text notification. - * + * Notification title. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * @type { string } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Title of the normal text notification. + * Notification title. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -67,14 +66,14 @@ export interface NotificationBasicContent { title: string; /** - * Content of the normal text notification. + * Notification content. It cannot be empty or exceed 3072 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Content of the normal text notification. + * Notification content. It cannot be empty or exceed 3072 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -84,7 +83,7 @@ export interface NotificationBasicContent { text: string; /** - * Additional information of the normal text notification. + * Additional information of the notification. It cannot exceed 3072 bytes. Excess content will be truncated. * * @type { ?string } * @syscap SystemCapability.Notification.Notification @@ -93,7 +92,9 @@ export interface NotificationBasicContent { additionalText?: string; /** - * Data image of the lock screen. + * Picture of a notification displayed on the lock screen. Currently, only the live view notification is supported. + * The total number of the icon pixel bytes cannot exceed 192 KB (which is obtained through getPixelBytesNumber. The recommended icon size is 128 × 128 pixels. + * The display effect depends on the device capability and notification center UI style. * * @type { ?image.PixelMap } * @syscap SystemCapability.Notification.Notification @@ -103,14 +104,14 @@ export interface NotificationBasicContent { } /** - * Describes a long text notification. + * Describes the long text notification. This API is inherited from NotificationBasicContent. * * @typedef NotificationLongTextContent * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Describes a long text notification. + * Describes the long text notification. This API is inherited from NotificationBasicContent. * * @extends NotificationBasicContent * @typedef NotificationLongTextContent @@ -120,14 +121,14 @@ export interface NotificationBasicContent { */ export interface NotificationLongTextContent extends NotificationBasicContent { /** - * Long text content of the notification. + * Long text of the notification. It cannot be an empty string and exceed 3072 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Long text content of the notification. + * Long text of the notification. It cannot be an empty string and exceed 3072 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -137,14 +138,14 @@ export interface NotificationLongTextContent extends NotificationBasicContent { longText: string; /** - * Brief text of the long text notification. + * Brief text of the notification. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Brief text of the long text notification. + * Brief text of the notification. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -154,14 +155,14 @@ export interface NotificationLongTextContent extends NotificationBasicContent { briefText: string; /** - * Title that will be displayed for the long text notification when it is expanded. + * Title of the notification in the expanded state. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Title that will be displayed for the long text notification when it is expanded. + * Title of the notification in the expanded state. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -313,14 +314,14 @@ export interface NotificationLiveViewContent extends NotificationBasicContent { } /** - * Describes a multi-line text notification. + * Describes the multi-line text notification. This API is inherited from NotificationBasicContent. * * @typedef NotificationMultiLineContent * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Describes a multi-line text notification. + * Describes the multi-line text notification. This API is inherited from NotificationBasicContent. * * @extends NotificationBasicContent * @typedef NotificationMultiLineContent @@ -330,14 +331,14 @@ export interface NotificationLiveViewContent extends NotificationBasicContent { */ export interface NotificationMultiLineContent extends NotificationBasicContent { /** - * Brief text of the multi-line text notification. + * Brief text of the notification. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Brief text of the multi-line text notification. + * Brief text of the notification. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -347,14 +348,14 @@ export interface NotificationMultiLineContent extends NotificationBasicContent { briefText: string; /** - * Long title of the multi-line text notification. + * Title of the notification in the expanded state. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Long title of the multi-line text notification. + * Title of the notification in the expanded state. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -364,14 +365,14 @@ export interface NotificationMultiLineContent extends NotificationBasicContent { longTitle: string; /** - * Multi-line content of the multi-line text notification. + * Multi-line text of the notification. It cannot exceed 1024 bytes. Excess content will be truncated. * * @type { Array<string> } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Multi-line content of the multi-line text notification. + * Multi-line text of the notification. It cannot exceed 1024 bytes. Excess content will be truncated. * * @type { Array<string> } * @syscap SystemCapability.Notification.Notification @@ -382,7 +383,7 @@ export interface NotificationMultiLineContent extends NotificationBasicContent { } /** - * Describes a picture-attached notification. + * Describes the picture-attached notification. This API is inherited from NotificationBasicContent. * * @extends NotificationBasicContent * @typedef NotificationPictureContent @@ -391,7 +392,7 @@ export interface NotificationMultiLineContent extends NotificationBasicContent { */ export interface NotificationPictureContent extends NotificationBasicContent { /** - * Brief text of the multi-line text notification. + * Brief text of the notification. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -400,7 +401,7 @@ export interface NotificationPictureContent extends NotificationBasicContent { briefText: string; /** - * Title that will be displayed for the picture-attached notification when it is expanded. + * Title of the notification in the expanded state. It cannot be empty or exceed 1024 bytes. Excess content will be truncated. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -409,7 +410,7 @@ export interface NotificationPictureContent extends NotificationBasicContent { expandedTitle: string; /** - * Picture to be included in a notification. + * Picture content of the notification. (The total number of bytes of image pixels cannot exceed 2 MB.) * * @type { image.PixelMap } * @syscap SystemCapability.Notification.Notification @@ -419,7 +420,9 @@ export interface NotificationPictureContent extends NotificationBasicContent { } /** - * Describes a system live view notification. + * Describes the system live view notification. A third-party application cannot directly create a notification of this type. + * After the system proxy creates a system live view, the third-party application releases a notification with the same ID to update the specified content. + * This API is inherited from NotificationBasicContent. * * @extends NotificationBasicContent * @typedef NotificationSystemLiveViewContent @@ -428,7 +431,7 @@ export interface NotificationPictureContent extends NotificationBasicContent { */ export interface NotificationSystemLiveViewContent extends NotificationBasicContent { /** - * type code of a system live view notification. + * Type code, which identifies the type of the service that invokes the API. * * @type { number } * @syscap SystemCapability.Notification.Notification @@ -437,7 +440,7 @@ export interface NotificationSystemLiveViewContent extends NotificationBasicCont typeCode: number; /** - * capsule of a system live view notification. + * Capsule of the notification. * * @type { ?NotificationCapsule } * @syscap SystemCapability.Notification.Notification @@ -446,7 +449,7 @@ export interface NotificationSystemLiveViewContent extends NotificationBasicCont capsule?: NotificationCapsule; /** - * button of a system live view notification. + * Button in the notification. * * @type { ?NotificationButton } * @syscap SystemCapability.Notification.Notification @@ -465,7 +468,7 @@ export interface NotificationSystemLiveViewContent extends NotificationBasicCont cardButtons?: Array<NotificationIconButton>; /** - * type of a system live view notification. + * Time of the notification. * * @type { ?NotificationTime } * @syscap SystemCapability.Notification.Notification @@ -474,7 +477,7 @@ export interface NotificationSystemLiveViewContent extends NotificationBasicCont time?: NotificationTime; /** - * progress of a system live view notification. + * Progress of the notification. * * @type { ?NotificationProgress } * @syscap SystemCapability.Notification.Notification @@ -494,7 +497,7 @@ export interface NotificationSystemLiveViewContent extends NotificationBasicCont } /** - * Describes a system live view capsule type. + * Describe the notification capsule. * * @typedef NotificationCapsule * @syscap SystemCapability.Notification.Notification @@ -502,7 +505,7 @@ export interface NotificationSystemLiveViewContent extends NotificationBasicCont */ export interface NotificationCapsule { /** - * Title displayed in this capsule. + * Title of the capsule. * * @type { ?string } * @syscap SystemCapability.Notification.Notification @@ -511,7 +514,7 @@ export interface NotificationCapsule { title?: string; /** - * Icon displayed in this capsule. + * Icon of the capsule. * * @type { ?image.PixelMap } * @syscap SystemCapability.Notification.Notification @@ -520,7 +523,7 @@ export interface NotificationCapsule { icon?: image.PixelMap; /** - * Background color of this capsule. + * Background color of the capsule. * * @type { ?string } * @syscap SystemCapability.Notification.Notification @@ -610,7 +613,7 @@ export interface NotificationIconButton { } /** - * Describes a system live view button type. + * Describes the notification button. * * @typedef NotificationButton * @syscap SystemCapability.Notification.Notification @@ -618,7 +621,7 @@ export interface NotificationIconButton { */ export interface NotificationButton { /** - * array of button names. + * Button names. A maximum of three names are supported. * * @type { ?Array<string> } * @syscap SystemCapability.Notification.Notification @@ -627,7 +630,7 @@ export interface NotificationButton { names?: Array<string>; /** - * array of button icons. + * Button icons. A maximum of three icons are supported. * * @type { ?Array<image.PixelMap> } * @syscap SystemCapability.Notification.Notification @@ -636,7 +639,7 @@ export interface NotificationButton { icons?: Array<image.PixelMap>; /** - * array of button icons resource. + * Button icon resources. A maximum of three icon resources are supported. * * @type { ?Array<Resource> } * @syscap SystemCapability.Notification.Notification @@ -646,7 +649,7 @@ export interface NotificationButton { } /** - * Describes a system live view time type. + * Describes the notification timing information. * * @typedef NotificationTime * @syscap SystemCapability.Notification.Notification @@ -654,7 +657,7 @@ export interface NotificationButton { */ export interface NotificationTime { /** - * The initial time of this notification. + * Start time, in milliseconds. * * @type { ?number } * @syscap SystemCapability.Notification.Notification @@ -663,8 +666,7 @@ export interface NotificationTime { initialTime?: number; /** - * - * Count down the time. + * Whether to count down. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -673,7 +675,7 @@ export interface NotificationTime { isCountDown?: boolean; /** - * The time is paused. + * Whether to pause the progress. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -682,7 +684,7 @@ export interface NotificationTime { isPaused?: boolean; /** - * The time should be displayed in title. + * Whether the time is displayed in the title. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -692,7 +694,7 @@ export interface NotificationTime { } /** - * Describes a system live view progress type. + * Describes the notification progress. * * @typedef NotificationProgress * @syscap SystemCapability.Notification.Notification @@ -700,7 +702,7 @@ export interface NotificationTime { */ export interface NotificationProgress { /** - * Max value of this progress. + * Maximum progress value. * * @type { ?number } * @syscap SystemCapability.Notification.Notification @@ -709,7 +711,7 @@ export interface NotificationProgress { maxValue?: number; /** - * Current value of this progress. + * Current progress value. * * @type { ?number } * @syscap SystemCapability.Notification.Notification @@ -718,7 +720,7 @@ export interface NotificationProgress { currentValue?: number; /** - * Use percentage mode in this progress. + * Whether to show the progress in percentage. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -728,14 +730,14 @@ export interface NotificationProgress { } /** - * Describes notification types. + * Describes the notification contents. * * @typedef NotificationContent * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Describes notification types. + * Describes the notification contents. * * @typedef NotificationContent * @syscap SystemCapability.Notification.Notification @@ -772,14 +774,14 @@ export interface NotificationContent { notificationContentType?: notificationManager.ContentType; /** - * Normal text notification. + * Normal text. * * @type { ?NotificationBasicContent } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Normal text notification. + * Normal text. * * @type { ?NotificationBasicContent } * @syscap SystemCapability.Notification.Notification @@ -789,14 +791,14 @@ export interface NotificationContent { normal?: NotificationBasicContent; /** - * Long text notification. + * Long text. * * @type { ?NotificationLongTextContent } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Long text notification. + * Long text. * * @type { ?NotificationLongTextContent } * @syscap SystemCapability.Notification.Notification @@ -806,14 +808,14 @@ export interface NotificationContent { longText?: NotificationLongTextContent; /** - * Multi-line text notification. + * Multi-line text. * * @type { ?NotificationMultiLineContent } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Multi-line text notification. + * Multi-line text. * * @type { ?NotificationMultiLineContent } * @syscap SystemCapability.Notification.Notification @@ -823,7 +825,7 @@ export interface NotificationContent { multiLine?: NotificationMultiLineContent; /** - * Picture-attached notification. + * Picture-attached. * * @type { ?NotificationPictureContent } * @syscap SystemCapability.Notification.Notification @@ -832,7 +834,8 @@ export interface NotificationContent { picture?: NotificationPictureContent; /** - * System-live-view notification. + * System live view. A third-party application cannot directly create a notification of this type. After the system proxy creates a system live view, + * the third-party application releases a notification with the same ID to update the specified content. * * @type { ?NotificationSystemLiveViewContent } * @syscap SystemCapability.Notification.Notification diff --git a/api/notification/notificationFlags.d.ts b/api/notification/notificationFlags.d.ts index 12a8b7c589a80f26974182f96ffea5a6b8147d6c..3d5c2ea37b2acebafd92fe21f231548864145f43 100644 --- a/api/notification/notificationFlags.d.ts +++ b/api/notification/notificationFlags.d.ts @@ -14,12 +14,12 @@ */ /** - * @file Some states and flags for notifications + * @file The NotificationFlags module implements a NotificationFlags instance. * @kit NotificationKit */ /** - * The status of the notification flag. + * Enumerates the notification flag statuses. * * @enum { number } * @syscap SystemCapability.Notification.Notification @@ -27,7 +27,7 @@ * @since 8 */ /** - * The status of the notification flag. + * Enumerates the notification flag statuses. * * @enum { number } * @syscap SystemCapability.Notification.Notification @@ -35,14 +35,14 @@ */ export enum NotificationFlagStatus { /** - * notification flag default value + * The default flag is used. The effect is the same as that of TYPE_OPEN. * * @syscap SystemCapability.Notification.Notification * @systemapi * @since 8 */ /** - * notification flag default value + * The default flag is used. The effect is the same as that of TYPE_OPEN. * * @syscap SystemCapability.Notification.Notification * @since 11 @@ -50,14 +50,14 @@ export enum NotificationFlagStatus { TYPE_NONE = 0, /** - * notification flag open + * The notification flag is enabled. * * @syscap SystemCapability.Notification.Notification * @systemapi * @since 8 */ /** - * notification flag open + * The notification flag is enabled. * * @syscap SystemCapability.Notification.Notification * @since 11 @@ -65,14 +65,14 @@ export enum NotificationFlagStatus { TYPE_OPEN = 1, /** - * notification flag close + * The notification flag is disabled. * * @syscap SystemCapability.Notification.Notification * @systemapi * @since 8 */ /** - * notification flag close + * The notification flag is disabled. * * @syscap SystemCapability.Notification.Notification * @since 11 diff --git a/api/notification/notificationRequest.d.ts b/api/notification/notificationRequest.d.ts index fe6149e17a261675c594c44b3064c04078f9a8c6..96aefd6a2038f1eee8baf3e40cd03b9245603f97 100644 --- a/api/notification/notificationRequest.d.ts +++ b/api/notification/notificationRequest.d.ts @@ -63,14 +63,14 @@ export interface NotificationRequest { content: NotificationContent; /** - * Notification ID. + * Notification ID. The default value is 0. If the same notification ID exists, the notification content is updated. * * @type { ?number } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Notification ID. + * Notification ID. The default value is 0. If the same notification ID exists, the notification content is updated. * * @type { ?number } * @syscap SystemCapability.Notification.Notification @@ -80,7 +80,10 @@ export interface NotificationRequest { id?: number; /** - * Globally unique notification message ID defined by application. + * Unique ID carried in a notification sent by an app, which is used for notification deduplication. + * If an app publishes notifications with the same appMessageId locally or on the cloud, the device displays only one message. + * Repeated notifications received later will be silenced and deduplicated, and will not be displayed or notified. + * The deduplication flag is valid only within 24 hours after the notification is published. After 24 hours or the device is restarted, the deduplication flag becomes invalid. * * @type { ?string } * @syscap SystemCapability.Notification.Notification @@ -100,7 +103,7 @@ export interface NotificationRequest { slotType?: notification.SlotType; /** - * Notification slot type. + * Notification slot type. The default value is OTHER_TYPES. * * @type { ?notificationManager.SlotType } * @syscap SystemCapability.Notification.Notification @@ -135,7 +138,9 @@ export interface NotificationRequest { isUnremovable?: boolean; /** - * Whether the notification can only be updated. + * Whether to update notifications only. + * - true: If a notification with the same ID exists, the notification is updated; otherwise, the notification fails to update and no notification is created. + * - false (default): If a notification with the same ID exists, the notification is updated; otherwise, a notification is created. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -144,14 +149,14 @@ export interface NotificationRequest { updateOnly?: boolean; /** - * Time when the notification is sent. + * Time when the notification is sent. This API is automatically generated by the system. Data format: timestamp, in milliseconds. * * @type { ?number } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Time when the notification is sent. + * Time when the notification is sent. This API is automatically generated by the system. Data format: timestamp, in milliseconds. * * @type { ?number } * @syscap SystemCapability.Notification.Notification @@ -161,14 +166,18 @@ export interface NotificationRequest { deliveryTime?: number; /** - * Whether the notification is automatically cleared. + * Whether the notification is automatically cleared. This parameter is valid only when the notification carries wantAgent or actionButtons. + * - true (default): The current notification is automatically cleared after the notification or button is tapped. + * - false: The current notification is retained after the notification or button is tapped. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Whether the notification is automatically cleared. + * Whether the notification is automatically cleared. This parameter is valid only when the notification carries wantAgent or actionButtons. + * - true (default): The current notification is automatically cleared after the notification or button is tapped. + * - false: The current notification is retained after the notification or button is tapped. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -178,14 +187,16 @@ export interface NotificationRequest { tapDismissed?: boolean; /** - * Time when the notification is automatically cleared. + * Time when the notification is automatically cleared. Data format: timestamp, in milliseconds. + * For example, if a notification is to be cleared after being displayed for 3 seconds (3000 ms), you can set new Date().getTime() + 3000 to meet this requirement. * * @type { ?number } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Time when the notification is automatically cleared. + * Time when the notification is automatically cleared. Data format: timestamp, in milliseconds. + * For example, if a notification is to be cleared after being displayed for 3 seconds (3000 ms), you can set new Date().getTime() + 3000 to meet this requirement. * * @type { ?number } * @syscap SystemCapability.Notification.Notification @@ -212,6 +223,16 @@ export interface NotificationRequest { */ extraInfo?: { [key: string]: any }; + /** + * Extended parameter. + * + * @type { Record<string, Object> } + * @syscap SystemCapability.Notification.Notification + * @systemapi + * @since 20 + */ + extendInfo?: Record<string, Object>; + /** * Background color of the notification. * @@ -231,14 +252,18 @@ export interface NotificationRequest { colorEnabled?: boolean; /** - * Whether the notification triggers an alert only once. + * Whether to send a notification only once when the notification is published or updated. + * - true: A notification is sent only when the notification is published for the first time. For subsequent update, the notification mode is changed to LEVEL_MIN. + * - false (default): A notification is sent based on the configured notification mode. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification * @since 7 */ /** - * Whether the notification triggers an alert only once. + * Whether to send a notification only once when the notification is published or updated. + * - true: A notification is sent only when the notification is published for the first time. For subsequent update, the notification mode is changed to LEVEL_MIN. + * - false (default): A notification is sent based on the configured notification mode. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -266,7 +291,7 @@ export interface NotificationRequest { isCountDown?: boolean; /** - * Whether the notification is displayed as a floating icon. + * Whether the notification is displayed as a floating icon in the status bar. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -275,7 +300,8 @@ export interface NotificationRequest { isFloatingIcon?: boolean; /** - * Notification label. + * Notification label. The label field can be used independently, or used together with ID as a notification identifier. ID is preferentially used. + * If the label is not empty when a notification is published, you need to specify the label when updating or deleting the notification. * * @type { ?string } * @syscap SystemCapability.Notification.Notification @@ -310,7 +336,7 @@ export interface NotificationRequest { showDeliveryTime?: boolean; /** - * Buttons in the notification. Up to two buttons are allowed. + * Notification button. A notification can contain a maximum of two buttons by default. * * @type { ?Array<NotificationActionButton> } * @syscap SystemCapability.Notification.Notification @@ -319,7 +345,7 @@ export interface NotificationRequest { actionButtons?: Array<NotificationActionButton>; /** - * Small notification icon. + * Small notification icon. Optional field. The total number of the icon pixel bytes cannot exceed 192 KB (which is obtained through getPixelBytesNumber. The recommended icon size is 128 px × 128 px. * * @type { ?image.PixelMap } * @syscap SystemCapability.Notification.Notification @@ -328,7 +354,7 @@ export interface NotificationRequest { smallIcon?: image.PixelMap; /** - * Large notification icon. + * Large notification icon. Optional field. The total number of the icon pixel bytes cannot exceed 192 KB (which is obtained through getPixelBytesNumber. The recommended icon size is 128 px × 128 px. * * @type { ?image.PixelMap } * @syscap SystemCapability.Notification.Notification @@ -347,14 +373,14 @@ export interface NotificationRequest { overlayIcon?: image.PixelMap; /** - * The group information for this notification. + * Notification group name. This parameter is left blank by default. * * @type { ?string } * @syscap SystemCapability.Notification.Notification * @since 8 */ /** - * The group information for this notification. + * Notification group name. This parameter is left blank by default. * * @type { ?string } * @syscap SystemCapability.Notification.Notification @@ -364,7 +390,7 @@ export interface NotificationRequest { groupName?: string; /** - * Read-only name of the package for which a notification is created. + * Name of the bundle that creates the notification. * * @type { ?string } * @readonly @@ -374,7 +400,7 @@ export interface NotificationRequest { readonly creatorBundleName?: string; /** - * Read-only UID of the notification creator. + * UID used for creating the notification. * * @type { ?number } * @readonly @@ -384,7 +410,7 @@ export interface NotificationRequest { readonly creatorUid?: number; /** - * Read-only PID of the notification creator. + * PID used for creating the notification. * * @type { ?number } * @readonly @@ -394,7 +420,7 @@ export interface NotificationRequest { readonly creatorPid?: number; /** - * Read-only UserId of the notification creator. + * ID of the user who creates the notification. * * @type { ?number } * @readonly @@ -417,7 +443,7 @@ export interface NotificationRequest { readonly creatorInstanceKey?: number; /** - * Obtain the prompt tone resource path of the notification. + * Name of the custom ringtone file for application notifications. * * @type { ?string } * @syscap SystemCapability.Notification.Notification @@ -436,7 +462,7 @@ export interface NotificationRequest { classification?: string; /** - * Obtains the unique hash code of a notification in the current application. + * Unique ID of the notification. * * @type { ?string } * @readonly @@ -478,7 +504,7 @@ export interface NotificationRequest { readonly source?: number; /** - * Obtains the template of this notification. + * Notification template. * * @type { ?NotificationTemplate } * @syscap SystemCapability.Notification.Notification @@ -487,7 +513,7 @@ export interface NotificationRequest { template?: NotificationTemplate; /** - * The options to distributed notification. + * Distributed notification options. Not supported currently. * * @type { ?DistributedOptions } * @syscap SystemCapability.Notification.Notification @@ -507,7 +533,7 @@ export interface NotificationRequest { readonly deviceId?: string; /** - * Obtains the set of identifiers for the notification. + * Notification flags. * * @type { ?NotificationFlags } * @readonly @@ -517,7 +543,8 @@ export interface NotificationRequest { readonly notificationFlags?: NotificationFlags; /** - * WantAgent instance to which the notification will be redirected when removing notification. + * WantAgent instance to which the notification will be redirected when it is removed. + * Currently, redirection to UIAbility is not supported. Only common events can be published (that is, actionType is set to 4). * * @type { ?WantAgent } * @syscap SystemCapability.Notification.Notification @@ -526,14 +553,14 @@ export interface NotificationRequest { removalWantAgent?: WantAgent; /** - * Number of notifications displayed on the app icon. + * Number of notifications displayed on the application icon. If the badgeNumber is set to 0, badges are cleared; if the value is greater than 99, 99+ is displayed on the badge. * * @type { ?number } * @syscap SystemCapability.Notification.Notification * @since 9 */ /** - * Number of notifications displayed on the app icon. + * Number of notifications displayed on the application icon. If the badgeNumber is set to 0, badges are cleared; if the value is greater than 99, 99+ is displayed on the badge. * * @type { ?number } * @syscap SystemCapability.Notification.Notification @@ -618,7 +645,7 @@ export interface NotificationRequest { } /** - * Describes distributed options. + * Describes distributed notification options. * * @typedef DistributedOptions * @syscap SystemCapability.Notification.Notification @@ -626,7 +653,7 @@ export interface NotificationRequest { */ export interface DistributedOptions { /** - * Obtains whether is the distributed notification. + * Whether the notification is a distributed notification. * * @type { ?boolean } * @default true @@ -636,7 +663,7 @@ export interface DistributedOptions { isDistributed?: boolean; /** - * Obtains the types of devices to which the notification can be synchronized. + * List of the devices to which the notification can be synchronized. * * @type { ?Array<string> } * @syscap SystemCapability.Notification.Notification @@ -645,7 +672,7 @@ export interface DistributedOptions { supportDisplayDevices?: Array<string>; /** - * Obtains the devices on which notifications can be open. + * List of the devices on which the notification can be opened. * * @type { ?Array<string> } * @syscap SystemCapability.Notification.Notification diff --git a/api/notification/notificationSlot.d.ts b/api/notification/notificationSlot.d.ts index 63a81878e58cc871d33016dc889df14da3eeb746..a6255c1ab429b8cefb9260ca9dfec4fd2d79f287 100644 --- a/api/notification/notificationSlot.d.ts +++ b/api/notification/notificationSlot.d.ts @@ -14,7 +14,7 @@ */ /** - * @file Description of the notification channel + * @file The NotificationSlot module provides APIs for defining the notification slot. * @kit NotificationKit */ @@ -22,7 +22,7 @@ import notification from '../@ohos.notification'; import type notificationManager from '../@ohos.notificationManager'; /** - * Describes a NotificationSlot instance. + * The NotificationSlot module provides APIs for defining the notification slot. * * @typedef NotificationSlot * @syscap SystemCapability.Notification.Notification @@ -30,7 +30,7 @@ import type notificationManager from '../@ohos.notificationManager'; */ export interface NotificationSlot { /** - * Obtains the type of a notification slot. + * Notification slot type. * * @type { ?notification.SlotType } * @syscap SystemCapability.Notification.Notification @@ -50,7 +50,7 @@ export interface NotificationSlot { notificationType?: notificationManager.SlotType; /** - * Obtains the level of a notification slot + * Notification level. * * @type { ?notification.SlotLevel } * @syscap SystemCapability.Notification.Notification @@ -59,7 +59,7 @@ export interface NotificationSlot { level?: notification.SlotLevel; /** - * Obtains the description of a notification slot. + * Notification slot description. * * @type { ?string } * @syscap SystemCapability.Notification.Notification @@ -68,7 +68,7 @@ export interface NotificationSlot { desc?: string; /** - * Obtains the application icon badge status of a notification slot. + * Whether to display the badge. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -77,7 +77,7 @@ export interface NotificationSlot { badgeFlag?: boolean; /** - * Obtains whether DND mode is bypassed for a notification slot. + * Whether to bypass DND mode in the system. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -86,7 +86,7 @@ export interface NotificationSlot { bypassDnd?: boolean; /** - * Whether and how to display notifications on the lock screen. + * Mode for displaying the notification on the lock screen. * * @type { ?number } * @syscap SystemCapability.Notification.Notification @@ -95,7 +95,7 @@ export interface NotificationSlot { lockscreenVisibility?: number; /** - * Obtains the vibration status of the notification slot. + * Whether to enable vibration for the notification. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -104,7 +104,7 @@ export interface NotificationSlot { vibrationEnabled?: boolean; /** - * Obtains the prompt tone of the notification slot. + * Notification alert tone. * * @type { ?string } * @syscap SystemCapability.Notification.Notification @@ -113,7 +113,7 @@ export interface NotificationSlot { sound?: string; /** - * Obtains whether the notification light is enabled in a notification slot. + * Whether the indicator blinks for the notification. * * @type { ?boolean } * @syscap SystemCapability.Notification.Notification @@ -122,7 +122,7 @@ export interface NotificationSlot { lightEnabled?: boolean; /** - * Obtains the color of the notification light in a notification slot. + * Indicator color of the notification. * * @type { ?number } * @syscap SystemCapability.Notification.Notification @@ -131,7 +131,7 @@ export interface NotificationSlot { lightColor?: number; /** - * Obtains the vibration style of notifications in this notification slot. + * Vibration mode of the notification. * * @type { ?Array<number> } * @syscap SystemCapability.Notification.Notification @@ -140,7 +140,7 @@ export interface NotificationSlot { vibrationValues?: Array<number>; /** - * Read-only enabled status in this notification slot. + * Whether the notification slot is enabled. The value true means to enable the notification slot, and false means the opposite. * * @type { ?boolean } * @readonly diff --git a/api/notification/notificationSubscribeInfo.d.ts b/api/notification/notificationSubscribeInfo.d.ts index 4c1e9608362f4067d60d00ae0b5e1c4da69d082b..12e41dd97db66b937affb15b894c576d2bc47d87 100644 --- a/api/notification/notificationSubscribeInfo.d.ts +++ b/api/notification/notificationSubscribeInfo.d.ts @@ -18,6 +18,8 @@ * @kit NotificationKit */ +import type notificationManager from '../@ohos.notificationManager'; + /** * Sets filter criteria of publishers for subscribing to desired notifications. * @@ -57,6 +59,16 @@ export interface NotificationSubscribeInfo { */ deviceType?: string; + /** + * Specifies the scope of notification slots for subscription. + * + * @type { ?Array<notificationManager.SlotType> } + * @syscap SystemCapability.Notification.Notification + * @systemapi + * @since 18 + */ + slotTypes?: Array<notificationManager.SlotType>; + /** * Filtered notification type range. * diff --git a/api/notification/notificationTemplate.d.ts b/api/notification/notificationTemplate.d.ts index 6f6a199a90156b21469b515fb23d5317f5d5c621..045e95888d4e40e251ccf10145a09a49db0e7dac 100644 --- a/api/notification/notificationTemplate.d.ts +++ b/api/notification/notificationTemplate.d.ts @@ -14,12 +14,12 @@ */ /** - * @file Describes a NotificationTemplate instance + * @file The NotificationTemplate module describes the notification template. * @kit NotificationKit */ /** - * Describes a NotificationTemplate instance. + * The NotificationTemplate module describes the notification template. * * @typedef NotificationTemplate * @syscap SystemCapability.Notification.Notification @@ -27,7 +27,7 @@ */ export interface NotificationTemplate { /** - * Obtains the type of a notification template. + * Template name. Currently, only downloadTemplate is supported. * * @type { string } * @syscap SystemCapability.Notification.Notification @@ -36,7 +36,10 @@ export interface NotificationTemplate { name: string; /** - * Obtains the data of a notification template. + * Template data. + * - title: title of the file. This parameter is mandatory, and the value is of the string type. + * - fileName: name of the file to be downloaded. This parameter is mandatory, and the value is of the string type. + * - progressValue: download progress. The value is a number. * * @type { Record<string, Object> } * @syscap SystemCapability.Notification.Notification diff --git a/api/notification/notificationUserInput.d.ts b/api/notification/notificationUserInput.d.ts index ccf1f588a1835766e6bbba53ccb148370007d58a..77b0e7833f9bf35e7f4b7187875b7e2f257b177f 100644 --- a/api/notification/notificationUserInput.d.ts +++ b/api/notification/notificationUserInput.d.ts @@ -14,12 +14,12 @@ */ /** - * @file Describes a NotificationUserInput instance + * @file The NotificationUserInput module provides APIs for defining the notification user input. * @kit NotificationKit */ /** - * Describes a NotificationUserInput instance. + * The NotificationUserInput module provides APIs for defining the notification user input. * * @typedef NotificationUserInput * @syscap SystemCapability.Notification.Notification @@ -27,7 +27,7 @@ */ export interface NotificationUserInput { /** - * Obtains the key used to identify this input when the input is collected from the user. + * Key to identify the user input. * * @type { string } * @syscap SystemCapability.Notification.Notification diff --git a/api/permissions.d.ts b/api/permissions.d.ts index 0d13c0c1bcaa9516d8630ec668427447c30a94c8..a9e958ed16eadcf079269fd8a68807b5dd20802a 100644 --- a/api/permissions.d.ts +++ b/api/permissions.d.ts @@ -16,6 +16,7 @@ /** * @file Defines all permissions. * @kit AbilityKit + * @arkts 1.1&1.2 */ /** @@ -31,6 +32,6 @@ * @typedef { string } * @syscap SystemCapability.Security.AccessToken * @atomicservice - * @since 11 + * @since arkts {'1.1':'11', '1.2':'20'} */ export type Permissions = string; \ No newline at end of file diff --git a/api/security/PermissionRequestResult.d.ets b/api/security/PermissionRequestResult.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..7bb9666a099ce23414f17b4af9ab00613797f8ce --- /dev/null +++ b/api/security/PermissionRequestResult.d.ets @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @file + * @kit AbilityKit + */ + + +/** + * The result of requestPermissionsFromUser with asynchronous callback. + * + * @syscap SystemCapability.Security.AccessToken + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + */ +export default class PermissionRequestResult { + /** + * The permissions passed in by the user. + * + * @type { Array<string> } + * @syscap SystemCapability.Security.AccessToken + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + */ + permissions: Array<string>; + /** + * The results for the corresponding request permissions. The value 0 indicates that a + * permission is granted, the value -1 indicates not, and the value 2 indicates the request is invalid. + * + * @type { Array<int> } + * @syscap SystemCapability.Security.AccessToken + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + */ + authResults: Array<int>; + /** + * Specifies whether a dialog box is shown for each requested permission. + * The value true means that a dialog box is shown, and false means the opposite. + * + * @type { ?Array<boolean> } + * @syscap SystemCapability.Security.AccessToken + * @stagemodelonly + * @atomicservice + * @since 20 + */ + dialogShownResults?: Array<boolean>; + /** + * Enumerates the return values of the permission request operation. + * 0 The operation is successful. + * 1 The permission name is invalid. + * 2 The requested permission has not been declared. + * 3 The conditions for requesting the permission are not met. + * 4 The user does not agree to the Privacy Statement. + * 5 The permission cannot be requested in a pop-up window. + * 12 The service is abnormal. + * + * @type { ?Array<int> } + * @syscap SystemCapability.Security.AccessToken + * @stagemodelonly + * @crossplatform + * @atomicservice + * @since 20 + */ + errorReasons?: Array<int>; +} diff --git a/api/tag/nfctech.d.ts b/api/tag/nfctech.d.ts index 3230085c5d579abc897e9d452a5ce5ef19c04ba2..c8d7eff1e6f51c75375009172faeff5679fe41d4 100644 --- a/api/tag/nfctech.d.ts +++ b/api/tag/nfctech.d.ts @@ -310,22 +310,6 @@ export interface IsoDepTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Checks if extended apdu length supported or not. - * - * @permission ohos.permission.NFC_TAG - * @returns { Promise<boolean> } Returns true if extended apdu length supported, otherwise false. - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Checks if extended apdu length supported or not. * @@ -338,10 +322,9 @@ export interface IsoDepTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ isExtendedApduSupported(): Promise<boolean>; @@ -493,22 +476,6 @@ export interface NdefTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Reads NDEF message on this tag. - * - * @permission ohos.permission.NFC_TAG - * @returns { Promise<NdefMessage> } The NDEF message in tag. - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Reads NDEF message on this tag. * @@ -521,10 +488,9 @@ export interface NdefTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ readNdef(): Promise<NdefMessage>; @@ -575,23 +541,6 @@ export interface NdefTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Writes NDEF message into this tag. - * - * @permission ohos.permission.NFC_TAG - * @param { NdefMessage } msg - The NDEF message to be written. - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Writes NDEF message into this tag. * @@ -605,10 +554,9 @@ export interface NdefTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ writeNdef(msg: NdefMessage): Promise<void>; @@ -683,22 +631,6 @@ export interface NdefTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Sets the NDEF tag read-only. - * - * @permission ohos.permission.NFC_TAG - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Sets the NDEF tag read-only. * @@ -711,10 +643,9 @@ export interface NdefTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ setReadOnly(): Promise<void>; @@ -811,25 +742,6 @@ export interface MifareClassicTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Authenticates a sector with the key. Only successful authentication sector can be operated. - * - * @permission ohos.permission.NFC_TAG - * @param { number } sectorIndex - Index of sector to authenticate. - * @param { number[] } key - The key(6-bytes) to authenticate. - * @param { boolean } isKeyA - KeyA flag. true means KeyA, otherwise KeyB. - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Authenticates a sector with the key. Only successful authentication sector can be operated. * @@ -845,10 +757,9 @@ export interface MifareClassicTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ authenticateSector(sectorIndex: number, key: number[], isKeyA: boolean): Promise<void>; @@ -905,23 +816,6 @@ export interface MifareClassicTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Reads a block, one block size is 16 bytes. - * - * @permission ohos.permission.NFC_TAG - * @param { number } blockIndex - The index of block to read. - * @returns { Promise<number[]> } Returns the block data. - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Reads a block, one block size is 16 bytes. * @@ -935,10 +829,9 @@ export interface MifareClassicTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ readSingleBlock(blockIndex: number): Promise<number[]>; @@ -992,24 +885,6 @@ export interface MifareClassicTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Writes a block, one block size is 16 bytes. - * - * @permission ohos.permission.NFC_TAG - * @param { number } blockIndex - The index of block to write. - * @param { number[] } data - The block data to write. - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Writes a block, one block size is 16 bytes. * @@ -1024,10 +899,9 @@ export interface MifareClassicTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ writeSingleBlock(blockIndex: number, data: number[]): Promise<void>; @@ -1083,24 +957,6 @@ export interface MifareClassicTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Increments the contents of a block, and stores the result in the internal transfer buffer. - * - * @permission ohos.permission.NFC_TAG - * @param { number } blockIndex - The index of block to increment. - * @param { number } value - The value to increment, none-negative. - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Increments the contents of a block, and stores the result in the internal transfer buffer. * @@ -1115,10 +971,9 @@ export interface MifareClassicTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ incrementBlock(blockIndex: number, value: number): Promise<void>; @@ -1174,24 +1029,6 @@ export interface MifareClassicTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Decreases the contents of a block, and stores the result in the internal transfer buffer. - * - * @permission ohos.permission.NFC_TAG - * @param { number } blockIndex - The index of block to decrease. - * @param { number } value - The value to decrease, none-negative. - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Decreases the contents of a block, and stores the result in the internal transfer buffer. * @@ -1206,10 +1043,9 @@ export interface MifareClassicTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ decrementBlock(blockIndex: number, value: number): Promise<void>; @@ -1264,23 +1100,6 @@ export interface MifareClassicTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Writes the contents of the internal transfer buffer to a value block. - * - * @permission ohos.permission.NFC_TAG - * @param { number } blockIndex - The index of value block to be written. - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Writes the contents of the internal transfer buffer to a value block. * @@ -1294,10 +1113,9 @@ export interface MifareClassicTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ transferToBlock(blockIndex: number): Promise<void>; @@ -1350,23 +1168,6 @@ export interface MifareClassicTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Moves the contents of a block into the internal transfer buffer. - * - * @permission ohos.permission.NFC_TAG - * @param { number } blockIndex - The index of value block to be moved from. - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Moves the contents of a block into the internal transfer buffer. * @@ -1380,10 +1181,9 @@ export interface MifareClassicTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ restoreFromBlock(blockIndex: number): Promise<void>; @@ -1602,23 +1402,6 @@ export interface MifareUltralightTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Reads 4 pages, total is 16 bytes. Page size is 4 bytes. - * - * @permission ohos.permission.NFC_TAG - * @param { number } pageIndex - The index of page to read. - * @returns { Promise<number[]> } Returns 4 pages data. - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Reads 4 pages, total is 16 bytes. Page size is 4 bytes. * @@ -1632,10 +1415,9 @@ export interface MifareUltralightTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ readMultiplePages(pageIndex: number): Promise<number[]>; @@ -1689,24 +1471,6 @@ export interface MifareUltralightTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Writes a page, total 4 bytes. - * - * @permission ohos.permission.NFC_TAG - * @param { number } pageIndex - The index of page to write. - * @param { number[] } data - The page data to write. - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Writes a page, total 4 bytes. * @@ -1721,10 +1485,9 @@ export interface MifareUltralightTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ writeSinglePage(pageIndex: number, data: number[]): Promise<void>; @@ -1813,23 +1576,6 @@ export interface NdefFormatableTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Formats a tag as NDEF tag, writes NDEF message into the NDEF Tag. - * - * @permission ohos.permission.NFC_TAG - * @param { NdefMessage } message - NDEF message to write while format. It can be null, then only format the tag. - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Formats a tag as NDEF tag, writes NDEF message into the NDEF Tag. * @@ -1843,10 +1589,9 @@ export interface NdefFormatableTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ format(message: NdefMessage): Promise<void>; @@ -1899,23 +1644,6 @@ export interface NdefFormatableTag extends TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Formats a tag as NDEF tag, writes NDEF message into the NDEF Tag, then sets the tag readonly. - * - * @permission ohos.permission.NFC_TAG - * @param { NdefMessage } message - NDEF message to write while format. It can be null, then only format the tag. - * @returns { Promise<void> } The void - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Formats a tag as NDEF tag, writes NDEF message into the NDEF Tag, then sets the tag readonly. * @@ -1929,10 +1657,9 @@ export interface NdefFormatableTag extends TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ formatReadOnly(message: NdefMessage): Promise<void>; @@ -1989,7 +1716,6 @@ export interface BarcodeTag extends TagSession { * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. * @throws { BusinessError } 3100204 - The tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice * @since 18 diff --git a/api/tag/tagSession.d.ts b/api/tag/tagSession.d.ts index 272a6d68f1dec7ec2206e4fde20a66cbc4c50463..f7f4785f2d9dfb58526c2dbc17aa937424c0cffd 100644 --- a/api/tag/tagSession.d.ts +++ b/api/tag/tagSession.d.ts @@ -283,25 +283,6 @@ export interface TagSession { * @syscap SystemCapability.Communication.NFC.Tag * @since 9 */ - /** - * Writes data to a tag. - * - * @permission ohos.permission.NFC_TAG - * @param { number[] } data Indicates the data to be written to the tag. - * @returns { Promise<number[]> } Returns bytes received in response. Or bytes with a length of 0 if the - * data fails to be written to the tag. - * @throws { BusinessError } 201 - Permission denied. - * @throws { BusinessError } 401 - The parameter check failed. Possible causes: - * <br> 1. Mandatory parameters are left unspecified. - * <br> 2. Incorrect parameters types. - * <br> 3. Parameter verification failed. - * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 3100201 - Tag running state is abnormal in service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. - * @syscap SystemCapability.Communication.NFC.Tag - * @atomicservice - * @since 12 - */ /** * Writes data to a tag. * @@ -316,11 +297,10 @@ export interface TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. - * @throws { BusinessError } 3100204 - The Tag I/O operation failed. - * @throws { BusinessError } 3100205 - The tag leaves the field. + * @throws { BusinessError } 3100204 - The tag I/O operation failed. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice - * @since 18 + * @since 12 */ transmit(data: number[]): Promise<number[]>; @@ -353,7 +333,7 @@ export interface TagSession { * <br> 3. Parameter verification failed. * @throws { BusinessError } 801 - Capability not supported. * @throws { BusinessError } 3100201 - The tag running state is abnormal in the service. - * @throws { BusinessError } 3100204 - Tag I/O operation failed. + * @throws { BusinessError } 3100204 - The tag I/O operation failed. * @syscap SystemCapability.Communication.NFC.Tag * @atomicservice * @since 12 diff --git a/arkts/@arkts.collections.d.ets b/arkts/@arkts.collections.d.ets index d16dedc29a59ad3ae0e79ce2c2568be98de8b433..49ccadf01003194c2fabcc328bd5881e91308dc5 100644 --- a/arkts/@arkts.collections.d.ets +++ b/arkts/@arkts.collections.d.ets @@ -35,7 +35,8 @@ import lang from './@arkts.lang' * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice - * @since 18 + * @since arkts {'1.1':'18','1.2':'20'} + * @arkts 1.1&1.2 */ declare namespace collections { /** @@ -50,11 +51,11 @@ declare namespace collections { * @since 12 */ /** - * Callback function used in the typed Array's 'from' function. + * Describes the mapping function of the ArkTS typed array. * * @typedef { function } TypedArrayFromMapFn - * @param { FromElementType } value - The value in the original array. - * @param { number } index - The index in the original array. + * @param { FromElementType } value - Element that is currently traversed and used to construct an ArkTS typed array. + * @param { number } index - Index of the element. * @returns { ToElementType } The transformed value. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -76,13 +77,12 @@ declare namespace collections { * @since 12 */ /** - * Callback function used in typed Array functions which needs to determine - * whether some element satisfies the specified predicate test + * Describes the assertion function of the ArkTS typed array. * * @typedef { function } TypedArrayPredicateFn - * @param { ElementType } value - The value of the element. - * @param { number } index - The index of the element. - * @param { ArrayType } array - The array that the element belongs to. + * @param { ElementType } value - Element that is being traversed in the ArkTS typed array. + * @param { number } index - Index of the element. + * @param { ArrayType } array - ArkTS typed array that is being traversed. * @returns { boolean } True if the value meets the predicate, otherwise false. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -103,12 +103,12 @@ declare namespace collections { * @since 12 */ /** - * Callback function used in typed Array functions that perform specific action for each element. + * Describes the traversal function of the ArkTS typed array. * * @typedef { function } TypedArrayForEachCallback - * @param { ElementType } value - The value of the element. - * @param { number } index - The index of the element. - * @param { ArrayType } array - The array that the element belongs to. + * @param { ElementType } value - Element that is being traversed in the ArkTS typed array. + * @param { number } index - Index of the element. + * @param { ArrayType } array - ArkTS typed array that is being traversed. * @syscap SystemCapability.Utils.Lang * @crossplatform * @atomicservice @@ -130,13 +130,12 @@ declare namespace collections { * @since 12 */ /** - * Callback function used in typed Array functions that perform specific action for each element and - * produce corresponding new element. + * Describes the conversion mapping function of the ArkTS typed array. * * @typedef { function } TypedArrayMapCallback - * @param { ElementType } value - The value of the element. - * @param { number } index - The index of the element. - * @param { ArrayType } array - The array that the element belongs to. + * @param { ElementType } value - Element that is being mapped in the ArkTS typed array. + * @param { number } index - Index of the element. + * @param { ArrayType } array - ArkTS typed array that is being mapped. * @returns { ElementType } The result of the mapping. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -159,13 +158,13 @@ declare namespace collections { * @since 12 */ /** - * Callback function used in typed Array functions that require a reduction. + * Describes the reduce function of the ArkTS typed array. * * @typedef { function } TypedArrayReduceCallback - * @param { AccType } previousValue - The accumulator value. - * @param { ElementType } currentValue - The current element being processed in the array. - * @param { number } currentIndex - The index of the current element being processed in the array. - * @param { ArrayType } array - The array that the element belongs to. + * @param { AccType } previousValue - Accumulated value of the current traversal. + * @param { ElementType } currentValue - Element that is being traversed in the ArkTS typed array. + * @param { number } currentIndex - Index of the element. + * @param { ArrayType } array - ArkTS typed array that is being traversed. * @returns { AccType } The result of the reduction. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -186,11 +185,11 @@ declare namespace collections { * @since 12 */ /** - * Callback function used in the typed Array's 'sort' function. + * Describes the sort function of the ArkTS typed array. * * @typedef { function } TypedArrayCompareFn - * @param { ElementType } first - The first element of the comparison. - * @param { ElementType } second - The second element of the comparison. + * @param { ElementType } first - First element to be compared. + * @param { ElementType } second - Second element to be compared. * @returns { number } The result of the comparison. * @syscap SystemCapability.Utils.Lang * @crossplatform @@ -199,11 +198,11 @@ declare namespace collections { */ type TypedArrayCompareFn<ElementType> = (first: ElementType, second: ElementType) => number; /** - * Callback function used in the Array's 'from' function. + * Defines the ArkTS Array reduction function, which is used by the 'from' API of the Array class. * * @typedef { function } ArrayFromMapFn - * @param { FromElementType } value - The value in the original array. - * @param { number } index - The index in the original array. + * @param { FromElementType } value - Element that is being processed. + * @param { number } index - Index of the element in the ArkTS array. * @returns { ToElementType } The transformed value. * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -212,13 +211,13 @@ declare namespace collections { type ArrayFromMapFn<FromElementType, ToElementType> = (value: FromElementType, index: number) => ToElementType; /** - * Callback function used in Array functions which needs to determine - * whether some element satisfies the specified predicate test + * Defines the ArkTS Array reduction function, which is used by the 'some' and 'every' + * APIs of the Array class to determine whether array elements meet certain test conditions. * * @typedef { function } ArrayPredicateFn - * @param { ElementType } value - The value of the element. - * @param { number } index - The index of the element. - * @param { ArrayType } array - The array that the element belongs to. + * @param { ElementType } value - Element that is being processed. + * @param { number } index - Index of the element in the ArkTS array. + * @param { ArrayType } array - ArkTS array that is being traversed. * @returns { boolean } True if the value meets the predicate, otherwise false. * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -228,13 +227,13 @@ declare namespace collections { (value: ElementType, index: number, array: ArrayType) => boolean; /** - * Callback function used in Array functions that require a reduction. + * Defines the ArkTS Array reduction function, which is used by the 'reduceRight' API of the Array class. * * @typedef { function } ArrayReduceCallback - * @param { AccType } previousValue - The accumulator value. - * @param { ElementType } currentValue - The current element being processed in the array. - * @param { number } currentIndex - The index of the current element being processed in the array. - * @param { ArrayType } array - The array that the element belongs to. + * @param { AccType } previousValue - Accumulated value of the current traversal. + * @param { ElementType } currentValue - Element that is being traversed in the ArkTS array. + * @param { number } currentIndex - Index of the element in the ArkTS array. + * @param { ArrayType } array - ArkTS array that is being traversed. * @returns { AccType } The result of the reduction. * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -251,7 +250,8 @@ declare namespace collections { * @since 12 */ /** - * Redefines ISendable for convenience. + * 'ISendable' is the parent type of all sendable types except null and undefined. + * It does not have any necessary methods or properties. * * @typedef { lang.ISendable } ISendable * @syscap SystemCapability.Utils.Lang @@ -270,7 +270,7 @@ declare namespace collections { * @since 12 */ /** - * Represents an array-like object that can be concatenated. + * An array-like object that can be concatenated. This API extends 'ISendable'. * * @interface ConcatArray * @extends ISendable @@ -313,10 +313,10 @@ declare namespace collections { * @since 12 */ /** - * Returns the item at that index. + * Returns the element at a given index in this ConcatArray. * - * @param { number } index - The zero-based index of the desired code unit. - * Throws error if index < 0 or index >= array.length. + * @param { number } index - Index of the element. The index starts from zero. + * If the passed-in index is less than 0 or greater than or equal to the value of 'length', an error is thrown. * @returns { T } The element in the ConcatArray matching the given index. * @readonly * @throws { BusinessError } 401 - Parameter error. Illegal index. @@ -339,10 +339,10 @@ declare namespace collections { * @since 12 */ /** - * Adds all the elements of an ArkTS ConcatArray into a string, separated by the specified separator string. + * Concatenates all elements in this array into a string, with a given separator. * - * @param { string } [separator] - A string used to separate one element of the array from - * the next in the resulting string. If omitted, the array elements are separated with a comma. + * @param { string } [separator] - Separator to be used. If no value is passed in, + * a comma (,) is used as the separator. * @returns { string } A string with all array elements joined. * If ConcatArray.length is 0, the empty string is returned. * @throws { BusinessError } 401 - Parameter error. Invalid separator. @@ -367,13 +367,12 @@ declare namespace collections { * @since 12 */ /** - * Returns a copy of a section of an ArkTS ConcatArray. + * Selects a range of elements in this array to create an array. * - * @param { number } [start] - The beginning index of the specified portion of the array. - * If start is undefined, then the slice begins at index 0. - * @param { number } [end] - The end index of the specified portion of the array. - * This is exclusive of the element at the index 'end'. - * If end is undefined, then the slice extends to the end of the array. + * @param { number } [start] - Start index of the range. If a negative number is passed in, + * it refers to the index of 'start + array.length' The default value is '0'. + * @param { number } [end] - End index of the range (exclusive). If a negative number is passed in, + * it refers to the index of 'end + array.length'. The default value is the length of the ArkTS array. * @returns { ConcatArray<T> } A new ConcatArray containing the extracted elements. * @throws { BusinessError } 401 - Parameter error. Invalid `start` or `end` parameters. * @syscap SystemCapability.Utils.Lang @@ -395,10 +394,10 @@ declare namespace collections { * @since 12 */ /** - * Array is a data structure that stores a collection of elements. - * If multiple threads access a Array instance concurrently, - * and at least one of the threads modifies the array structurally, - * it must be synchronized externally. + * A linear data structure that is implemented on arrays and can be passed between ArkTS concurrent instances. + * Pass-by-reference is recommended for better transfer performance. + * This section uses the following to identify the use of generics: + * T: type, which can be any of the sendable data types. * * @implements ConcatArray<T> * @syscap SystemCapability.Utils.Lang @@ -441,10 +440,10 @@ declare namespace collections { * @since 12 */ /** - * Creates an ArkTS Array with arrayLength elements initialized to initialValue. + * Creates an ArkTS array of a fixed length, with each element set to a given initial value. * - * @param { number } arrayLength - The length of the array. - * @param { T } initialValue - Element initial value that will be filled into the Array. + * @param { number } arrayLength - Length of the ArkTS array. + * @param { T } initialValue - Initial value of each element in the ArkTS array. * @returns { Array<T> } A new Array instance * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The create method cannot be bound. @@ -467,9 +466,9 @@ declare namespace collections { * @since 12 */ /** - * Creates an ArkTS Array from an array-like object. + * Creates an ArkTS array from an array-like object. * - * @param { ArrayLike<T> } arrayLike - An array-like object to convert to an ArkTS Array. + * @param { ArrayLike<T> } arrayLike - Array-like object. * @returns { Array<T> } A new Array instance * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The from method cannot be bound. @@ -493,11 +492,12 @@ declare namespace collections { * @since 12 */ /** - * Creates an ArkTS Array from an iterable object. + * Creates an ArkTS array from an iterable object. * - * @param { Iterable<T> } iterable - An iterable object to convert to an ArkTS Array. + * @param { Iterable<T> } iterable - Array-like object. * @returns { Array<T> } A new Array instance - * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 401 - Parameter error: Possible causes: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 10200011 - The from method cannot be bound. * @static * @syscap SystemCapability.Utils.Lang @@ -507,12 +507,13 @@ declare namespace collections { */ static from<T>(iterable: Iterable<T>): Array<T>; /** - * Creates an ArkTS Array from an array-like object. + * Creates an ArkTS array from an array-like object, and uses a custom function to process each array element. * - * @param { ArrayLike<T> | Iterable<T> } arrayLike - An object to convert to an ArkTS Array. - * @param { ArrayFromMapFn<T, T> } mapFn - A mapping function to call on every element of the array. + * @param { ArrayLike<T> | Iterable<T> } arrayLike - Array-like object. + * @param { ArrayFromMapFn<T, T> } mapFn - Functions used to process the array elements. * @returns { Array<T> } A new Array instance - * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 401 - Parameter error: Possible causes: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 10200011 - The from method cannot be bound. * @static * @syscap SystemCapability.Utils.Lang @@ -521,12 +522,14 @@ declare namespace collections { */ static from<T>(arrayLike: ArrayLike<T> | Iterable<T>, mapFn: ArrayFromMapFn<T, T>): Array<T>; /** - * Creates an ArkTS Array from an array-like object. + * Creates an ArkTS array from an array-like object, and uses a custom function to process each array element. + * The type of the elements in the array-like object can be different from that of the array elements. * - * @param { ArrayLike<U> | Iterable<U> } arrayLike - An object to convert to an ArkTS Array. - * @param { ArrayFromMapFn<U, T> } mapFn - A mapping function to call on every element of the object. + * @param { ArrayLike<U> | Iterable<U> } arrayLike - Array-like object. + * @param { ArrayFromMapFn<U, T> } mapFn - Functions used to process the array elements. * @returns { Array<T> } A new Array instance - * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 401 - Parameter error: Possible causes: 1. Mandatory parameters are left unspecified; + * 2. Incorrect parameter types; 3. Parameter verification failed. * @throws { BusinessError } 10200011 - The from method cannot be bound. * @static * @syscap SystemCapability.Utils.Lang @@ -543,7 +546,7 @@ declare namespace collections { * @since 12 */ /** - * A constructor used to create an ArkTS Array. + * A constructor used to create an empty ArkTS array. * * @throws { BusinessError } 10200012 - The Array's constructor cannot be directly invoked. * @syscap SystemCapability.Utils.Lang @@ -564,10 +567,10 @@ declare namespace collections { * @since 12 */ /** - * A constructor used to create an ArkTS Array. + * A constructor used to create an ArkTS array with the given elements. * - * @param { T } first - First element when initializing an ArkTS Array. - * @param { T[] } left - Left elements when initializing an ArkTS Array. + * @param { T } first - First element to be included in the ArkTS array. + * @param { T[] } left - Remaining elements to be included in the ArkTS array. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200012 - The Array's constructor cannot be directly invoked. * @syscap SystemCapability.Utils.Lang @@ -587,9 +590,9 @@ declare namespace collections { * @since 12 */ /** - * A constructor used to create an ArkTS Array. + * A constructor used to create an ArkTS array with the given elements. * - * @param { T[] } items - Elements when initializing an ArkTS Array. + * @param { T[] } items - Elements to be included in the ArkTS array. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200012 - The Array's constructor cannot be directly invoked. * @syscap SystemCapability.Utils.Lang @@ -610,8 +613,8 @@ declare namespace collections { * @since 12 */ /** - * Removes the last element from an ArkTS array and returns it. - * If the array is empty, undefined is returned and the array is not modified. + * Removes the last element from this ArkTS array and returns that element. + * If the array is empty, undefined is returned and the array does not change. * * @returns { T | undefined } - The removed element from the array; undefined if the array is empty. * @throws { BusinessError } 10200011 - The pop method cannot be bound. @@ -635,9 +638,9 @@ declare namespace collections { * @since 12 */ /** - * Appends new elements to the end of an ArkTS Array, and returns the new length of the array. + * Adds one or more elements to the end of this ArkTS array and returns the new length of the array. * - * @param { T[] } items - New elements to add to the ArkTS array. + * @param { T[] } items - Elements to add. * @returns { number } - The new length property of the object upon which the method was called. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The push method cannot be bound. @@ -662,10 +665,10 @@ declare namespace collections { * @since 12 */ /** - * Adds all the elements of an ArkTS Array into a string, separated by the specified separator string. + * Concatenates all elements in this ArkTS array into a string, with a given separator. * - * @param { string } [separator] - A string used to separate one element of the array from - * the next in the resulting string. If omitted, the array elements are separated with a comma. + * @param { string } [separator] - Separator to be used. If no value is passed in, + * a comma (,) is used as the separator. * @returns { string } A string with all array elements joined. If Array.length is 0, the empty string is returned. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The join method cannot be bound. @@ -688,8 +691,8 @@ declare namespace collections { * @since 12 */ /** - * Removes the first element from an ArkTS Array and returns it. - * If the array is empty, undefined is returned and the array is not modified. + * Removes the first element from this ArkTS array and returns that element. + * If the array is empty, undefined is returned and the array does not change. * * @returns { T | undefined } The removed element from the array; undefined if the array is empty * @throws { BusinessError } 10200011 - The shift method cannot be bound. @@ -713,9 +716,9 @@ declare namespace collections { * @since 12 */ /** - * Inserts new elements at the start of an array, and returns the new length of the array. + * Adds one or more elements to the beginning of this ArkTS array and returns the new length of the array. * - * @param { T[] } items - Elements to insert at the start of the array. + * @param { T[] } items - Elements to add. * @returns { number } The new length property of the object upon which the method was called. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The unshift method cannot be bound. @@ -749,11 +752,10 @@ declare namespace collections { * For both start and end, a negative index can be used to indicate an offset from the end of the array. * For example, -2 refers to the second to last element of the array. * - * @param { number } [start] - The beginning index of the specified portion of the array. - * If start is undefined, then the slice begins at index 0. - * @param { number } [end] - The end index of the specified portion of the array. - * This is exclusive of the element at the index 'end'. - * If end is undefined, then the slice extends to the end of the array. + * @param { number } [start] - Start index of the range. If a negative number is passed in, + * it refers to the index of start + array.length. The default value is 0. + * @param { number } [end] - End index of the range (exclusive). If a negative number is passed in, + * it refers to the index of end + array.length. The default value is the length of the ArkTS array. * @returns { Array<T> } A new array containing the extracted elements. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The slice method cannot be bound. @@ -779,7 +781,7 @@ declare namespace collections { * @since 12 */ /** - * Sorts an array in place. This method mutates the array and returns a reference to the same array. + * Sorts elements in this ArkTS array and returns a new array. * * @param { function } [compareFn] - Function used to determine the order of the elements. It is expected to return * a negative value if the first argument is less than the second argument, zero if they're equal, @@ -809,11 +811,11 @@ declare namespace collections { * @since 12 */ /** - * Returns the index of the first occurrence of a value in an ArkTS Array, or -1 if it is not present. + * Returns the index of the first occurrence of a value in this ArkTS Array. + * If the value is not found, -1 is returned. * - * @param { T } searchElement - The value to locate in the array. - * @param { number } [fromIndex] - The array index at which to begin the search. - * If fromIndex is omitted, the search starts at index 0. + * @param { T } searchElement - Value to search for. + * @param { number } [fromIndex] - Index from which the search starts. The default value is 0. * @returns { number } The first index of searchElement in the array; -1 if not found. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The indexOf method cannot be bound. @@ -837,10 +839,9 @@ declare namespace collections { * @since 12 */ /** - * Executes a provided function once for each value in the Array object. + * Calls a callback function for each element in this ArkTS Array. * - * @param { function } callbackFn - A function that accepts up to three arguments. - * The function to be called for each element. + * @param { function } callbackFn - Callback function to run for each element. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The forEach method cannot be bound. * @throws { BusinessError } 10200201 - Concurrent modification error. @@ -865,11 +866,10 @@ declare namespace collections { * @since 12 */ /** - * Calls a defined callback function on each element of an ArkTS Array, - * and returns an array that contains the results. + * Calls a callback function for each element in this ArkTS Array and returns a new array that + * contains the result of the callback function. * - * @param { function } callbackFn - A function that accepts up to three arguments. - * The map method calls the callbackFn function one time for each element in the array. + * @param { function } callbackFn - Callback function to run for each element. * @returns { Array<U> } A new array with each element being the result of the callback function. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The map method cannot be bound. @@ -895,10 +895,11 @@ declare namespace collections { * @since 12 */ /** - * Returns the elements of an ArkTS Array that meet the condition specified in a callback function. + * Returns a new array containing all elements that pass a test provided by a callback function. * - * @param { function } predicate - A function that accepts up to three arguments. - * The filter method calls the predicate function one time for each element in the array. + * @param { function } predicate - Function that takes three arguments. It is used to filter elements. + * The value true means that the current element passes the test and should be retained in the new array. + * The value false means that the current element fails the test and should be excluded from the new array. * @returns { Array<T> } A shallow copy of the given containing just the elements that pass the test. * If no elements pass the test, an empty array is returned. * @throws { BusinessError } 401 - Parameter error. @@ -931,8 +932,8 @@ declare namespace collections { * The return value of the callback function is the accumulated result, * and is provided as an argument in the next call to the callback function. * - * @param { function } callbackFn - A function that accepts up to four arguments. - * The reduce method calls the callbackFn function one time for each element in the array. + * @param { function } callbackFn - Function that takes four arguments. + * It performs an operation on each element and passes the result as an accumulated value to the next element. * @returns { T } The value that results from running the "reducer" callback function to * completion over the entire array. * @throws { BusinessError } 401 - Parameter error. @@ -968,11 +969,9 @@ declare namespace collections { * The return value of the callback function is the accumulated result, * and is provided as an argument in the next call to the callback function. * - * @param { function } callbackFn - A function that accepts up to four arguments. - * The reduce method calls the callbackFn function one time for each element in the array. - * @param { U } initialValue - If initialValue is specified, - * it is used as the initial value to start the accumulation. - * The first call to the callbackFn function provides this value as an argument instead of an array value. + * @param { function } callbackFn - Function that takes four arguments. + * It performs an operation on each element and passes the result as an accumulated value to the next element. + * @param { U } initialValue - Initial value of the accumulator. * @returns { U } The value that results from running the "reducer" callback function to * completion over the entire array. * @throws { BusinessError } 401 - Parameter error. @@ -1003,10 +1002,10 @@ declare namespace collections { * @since 12 */ /** - * Returns the item located at the specified index. + * Returns the element at a given index in this ArkTS array. * - * @param { number } index - The zero-based index of the desired code unit. - * A negative index will count back from the last item. + * @param { number } index - Index of the element. The index in an array always starts from 0 and is an integer. + * If a negative number is passed in, it refers to the index of index + array.length. * @returns { T | undefined } The element in the array matching the given index. * Always returns undefined if index < -array.length or index >= array.length without * attempting to access the corresponding property. @@ -1029,7 +1028,7 @@ declare namespace collections { * @since 12 */ /** - * Returns an iterator that can be used to iterate over elements of type T. + * Obtains an iterator, each item of which is a JavaScript object. * * @returns { IterableIterator<T> } Iterator object. * @throws { BusinessError } 10200011 - The Symbol.iterator method cannot be bound. @@ -1050,7 +1049,7 @@ declare namespace collections { * @since 12 */ /** - * Returns an iterable of key, value pairs for every entry in the array + * Returns an iterator object that contains the key-value pair of each element in this ArkTS array. * * @returns { IterableIterator<[number, T]> } A new iterable iterator object. * @throws { BusinessError } 10200011 - The entries method cannot be bound. @@ -1072,7 +1071,7 @@ declare namespace collections { * @since 12 */ /** - * Returns an iterable of keys in the array + * Returns an iterator object that contains the key of each element in this ArkTS array. * * @returns { IterableIterator<number> } A new iterable iterator object. * @throws { BusinessError } 10200011 - The keys method cannot be bound. @@ -1094,7 +1093,7 @@ declare namespace collections { * @since 12 */ /** - * Returns an iterable of values in the array + * Returns an iterator object that contains the value of each element in this ArkTS array. * * @returns { IterableIterator<T> } A new iterable iterator object. * @throws { BusinessError } 10200011 - The values method cannot be bound. @@ -1122,12 +1121,14 @@ declare namespace collections { * @since 12 */ /** - * Returns the value of the first element in the array where predicate is true, and undefined - * otherwise. + * Returns the value of the first element that passes a test provided by a callback function. + * If none of the elements pass the test, undefined is returned. * - * @param { function } predicate - Find calls predicate once for each element of the array, in ascending - * order, until it finds one where predicate returns true. - * If such an element is found, find immediately returns that element value. Otherwise, find returns undefined. + * @param { function } predicate - Function that takes three arguments. It is used to filter elements. + * The value true means that the current element meets the conditions, the traversal stops, + * and that element is returned. The value false means that the current element does not meet the condition, + * and the traversal continues until the element that meets the condition is found + * or the entire array is traversed. * @returns { T | undefined } The first element in the array that satisfies the provided testing function. * Otherwise, undefined is returned. * @throws { BusinessError } 401 - Parameter error. @@ -1154,10 +1155,10 @@ declare namespace collections { * @since 12 */ /** - * Determines whether an array includes a certain element, returning true or false as appropriate. + * Checks whether this ArkTS array contains an element and returns a Boolean value. * - * @param { T } searchElement - The element to search for. - * @param { number } [fromIndex] - The position in this array at which to begin searching for searchElement. + * @param { T } searchElement - Element to search for. + * @param { number } [fromIndex] - Index from which the search starts. The default value is 0. * @returns { boolean } A boolean value which is true if the value searchElement is found within * the array (or the part of the array indicated by the index fromIndex, if specified). * @throws { BusinessError } 401 - Parameter error. @@ -1185,12 +1186,14 @@ declare namespace collections { * @since 12 */ /** - * Returns the index of the first element in the array where predicate is true, and -1 - * otherwise. + * Returns the index of the first element that passes a test provided by a callback function. + * If none of the elements pass the test, -1 is returned. * - * @param { function } predicate - Find calls predicate once for each element of the array, in ascending - * order, until it finds one where predicate returns true. If such an element is found, - * findIndex immediately returns that element index. Otherwise, findIndex returns -1. + * @param { function } predicate - Function that takes three arguments. It is used to filter elements. + * The value true means that the current element meets the conditions, the traversal stops, + * and the index of that element is returned. The value false means that the current element does not + * meet the condition, and the traversal continues until the element that meets the condition is found + * or the entire array is traversed. * @returns { number } The index of the first element in the array that passes the test. Otherwise, -1; * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The findIndex method cannot be bound. @@ -1218,13 +1221,12 @@ declare namespace collections { * @since 12 */ /** - * Returns the this object after filling the section identified by start and end with value + * Fills elements in the specified range of this ArkTS array with a given value. * - * @param { T } value - Value to fill array section with - * @param { number } [start] - Index to start filling the array at. If start is negative, it is treated as - * length+start where length is the length of the array. - * @param { number } [end] - Index to stop filling the array at. If end is negative, it is treated as - * length+end. + * @param { T } value - Value to fill in. + * @param { number } [start] - Start index of the range. The default value is 0. + * @param { number } [end] - End index of the range (exclusive). If no value is passed in, + * it refers to the last element of the array. * @returns { Array<T> } The modified array, filled with value. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The fill method cannot be bound. @@ -1249,11 +1251,10 @@ declare namespace collections { * @since 12 */ /** - * Shrinks the ArkTS array to the given arrayLength. + * Shrinks this ArkTS array to a given length. * - * @param { number } arrayLength - The new Array length. - * Throws error when arrayLength < 0 or arrayLength > 2^32. - * If arrayLength > array.length, array remains unchanged. + * @param { number } arrayLength - New length of the array. + * If a value greater than or equal to the current array length is passed in, the array does not change. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The shrinkTo method cannot be bound. * @throws { BusinessError } 10200201 - Concurrent modification error. @@ -1279,13 +1280,11 @@ declare namespace collections { * @since 12 */ /** - * Extends the ArkTS array to the given arrayLength, - * and appends new elements with given initialValue up to the arrayLength. + * Extends this array to a given length by adding elements with the specified initial value. * - * @param { number } arrayLength - The new Array length. - * Throws error when arrayLength < 0 or arrayLength > 2^32. - * If arrayLength < array.length, array remains unchanged. - * @param { T } initialValue - Element initial value that will be appended to the array. + * @param { number } arrayLength - New length of the array. + * If a value less than or equal to the current array length is passed in, the array does not change. + * @param { T } initialValue - Initial value of the elements to be added. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200011 - The extendTo method cannot be bound. * @throws { BusinessError } 10200201 - Concurrent modification error. @@ -1308,10 +1307,10 @@ declare namespace collections { * @since 12 */ /** - * Returns the item at that index. + * Returns the element at a given index in this array. * - * @param { number } index - The zero-based index of the desired code unit. - * Throws error if index < 0 or index >= array.length. + * @param { number } index - Index of the element. The index starts from zero. + * If the passed-in index is less than 0 or greater than or equal to the value of length, an error is thrown. * @returns { T } The element in the array matching the given index. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 10200001 - The value of index is out of range. @@ -1334,9 +1333,9 @@ declare namespace collections { * @since 12 */ /** - * Concatenates two or more arrays. + * Concatenates this ArkTS array with one or more arrays. * - * @param { ConcatArray<T>[] } items - The arrays to concatenate. + * @param { ConcatArray<T>[] } items - Arrays to concatenate. * @returns { Array<T> } A new array containing the elements of the concatenated arrays. * @throws { BusinessError } 401 - Parameter error. Not a valid array. * @throws { BusinessError } 10200011 - The concat method cannot be bound. @@ -1363,10 +1362,10 @@ declare namespace collections { * @since 12 */ /** - * Removes elements from the array at the specified position. + * Removes elements from a specified position in an array. * - * @param { number } start - The zero-based index at which to start changing the contents of the array. - * All the elements from start to the end of the array will be deleted. + * @param { number } start - Index from which the removal starts. If -array.length =< start < 0, + * the removal starts from start + array.length. If start < -array.length, the removal starts from 0. * @returns { Array<T> } An array containing the deleted elements. * @throws { BusinessError } 401 - Parameter error.Possible causes: * 1.Mandatory parameters are left unspecified. @@ -1398,13 +1397,13 @@ declare namespace collections { * @since 12 */ /** - * Removes elements from the array and, if necessary, inserts new elements at the specified position. + * Removes elements from a specified position in an array, and inserts new elements from the same position. * - * @param { number } start - The zero-based index at which to start changing the contents of the array. - * @param { number } deleteCount - The number of elements to remove from the array, - * starting at the index specified by the start parameter. - * @param { T[] } items - An array of elements to insert into the array, - * starting at the index specified by the start parameter. + * @param { number } start - Index from which the removal starts. If -array.length =< start < 0, + * the removal starts from start + array.length. If start < -array.length, the removal starts from 0. + * @param { number } deleteCount - Number of elements to remove. + * @param { T[] } items - New elements to insert from the start position. + * If no value is passed in, only the elements in the array are removed. * @returns { Array<T> } An array containing the deleted elements. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified. @@ -1418,12 +1417,14 @@ declare namespace collections { */ splice(start: number, deleteCount: number, ...items: T[]): Array<T>; /** - * Check whether the value is an ArkTs Array. + * Check whether the input parameter is an ArkTS array. * - * @param { Object|undefined|null } value - The value to be checked.. + * @param { Object|undefined|null } value - Value to check. * @returns { boolean } Returns true if the value is an array; otherwise, returns false. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. + * 3. Parameter verification failed. * @static * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -1431,12 +1432,15 @@ declare namespace collections { */ static isArray(value: Object | undefined | null): boolean; /** - * Create an ArkTs Array containing these parameters. + * Creates an ArkTS array with a variable number of parameters. * - * @param { T[] } items - A variable number of arguments that will be used as the elements of the new array. + * @param { T[] } items - Array of elements used to create the array. + * The number of elements can be zero, one, or more. * @returns { Array<T> } Returns a new Array instance containing the specified elements. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. + * 3. Parameter verification failed. * @static * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -1444,14 +1448,18 @@ declare namespace collections { */ static of<T>(...items: T[]): Array<T>; /** - * Copy elements inside an ArkTs Array and move them to another location. + * Copies elements within a given range from this ArkTS array to another position in sequence. * - * @param { number } target - The index at which to copy the elements. - * @param { number } start - The index to start copying elements from (default is 0). - * @param { number } end - The index to stop copying elements (default is the array's length). + * @param { number } target - Index to copy the elements to. + * @param { number } start - Start index of the range. If a negative number is passed in, + * it refers to the index of start + array.length. + * @param { number } end - End index of the range. If a negative number is passed in, + * it refers to the index of end + array.length. The default value is the length of the ArkTS array. * @returns { Array<T> } Returns the modified array after the copy operation. - * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; - * <br>2. Incorrect parameter types; 3. Parameter verification failed. + * @throws { BusinessError } 401 - Parameter error. Possible causes: + * 1. Mandatory parameters are left unspecified. + * 2. Incorrect parameter types. + * 3. Parameter verification failed. * @throws { BusinessError } 10200011 - The copyWithin method cannot be bound. * @throws { BusinessError } 10200201 - Concurrent modification error. * @syscap SystemCapability.Utils.Lang @@ -1460,7 +1468,7 @@ declare namespace collections { */ copyWithin(target: number, start: number, end?: number): Array<T>; /** - * Reverses the elements in an Array. + * Reverses elements in this ArkTS array and returns a reference to the same array. * * @returns { Array<T> } The reference to the original typed array, now reversed. * <br>Note that the typed array is reversed in place, and no copy is made. @@ -1472,15 +1480,13 @@ declare namespace collections { */ reverse(): Array<T>; /** - * Find the last occurrence of a specified element in an ArkTs Array. + * Obtains the index of the last occurrence of the specified value in in this ArkTS array. * - * @param { T } searchElement - Element to search for in the array.. - * @param { number } fromIndex - The index at which to start the search. The default is the last - * index of the array. <br>If this index is negative, it is treated as array.length + fromIndex. + * @param { T } searchElement - Value to search for. + * @param { number } fromIndex - Index from which the search starts. The default value is 0. + * If the index is greater than or equal to the length of the ArkTS array, -1 is returned. + * If a negative number is passed in, it refers to the index of fromIndex + array.length. * @returns { number } Returns the last index of the specified element if found; otherwise, returns -1. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200001 - The value of fromIndex or toIndex is out of range. * @throws { BusinessError } 10200011 - The lastIndexOf method cannot be bound. * @throws { BusinessError } 10200201 - Concurrent modification error. @@ -1490,14 +1496,11 @@ declare namespace collections { */ lastIndexOf(searchElement: T, fromIndex?: number): number; /** - * Tests whether all elements in an ArkTs Array meets a specified condition. + * Checks whether all elements in this ArkTS array meet a given condition. * - * @param { ArrayPredicateFn<T, Array<T>> } predicate - A function that is called for each element in the array. + * @param { ArrayPredicateFn<T, Array<T>> } predicate - Assertion function used for the test. * @returns { boolean } Returns true if the callback function returns a truthy value for every element; * <br>otherwise, it returns false. If the array is empty, it returns true. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200011 - The every method cannot be bound. * @throws { BusinessError } 10200201 - Concurrent modification error. * @syscap SystemCapability.Utils.Lang @@ -1506,14 +1509,11 @@ declare namespace collections { */ every(predicate: ArrayPredicateFn<T, Array<T>>): boolean; /** - * Test whether at least one element in an ArkTs Array meets a specified condition. + * Checks whether this ArkTS array contains an element that meets certain conditions. * - * @param { ArrayPredicateFn<T, Array<T> } predicate - A function that is called for each element in the array. + * @param { ArrayPredicateFn<T, Array<T> } predicate - Assertion function used for the test. * @returns { boolean } Returns true if the callback function returns a truthy value for any element; * <br>otherwise, it returns false. If the array is empty, it returns false. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200011 - The some method cannot be bound. * @throws { BusinessError } 10200201 - Concurrent modification error. * @syscap SystemCapability.Utils.Lang @@ -1522,7 +1522,7 @@ declare namespace collections { */ some(predicate: ArrayPredicateFn<T, Array<T>>): boolean; /** - * Convert an ArkTs Array to a string. + * Converts an ArkTS array into a string. * * @returns { string } Returns a string representing the specified array and its elements, separated by commas. * @throws { BusinessError } 10200011 - The toString method cannot be bound. @@ -1533,7 +1533,9 @@ declare namespace collections { */ toString(): string; /** - * Convert an ArkTs Array to a string, The elements are converted to string using their toLocaleString methods. + * Generates a string that matches the cultural conversions of the current system locale. + * Each element converts itself to a string via its toLocaleString API, and these strings are then joined + * together in sequence with commas (,). * * @returns { string } Returns a string representing the specified array and its elements, separated by commas. * @throws { BusinessError } 10200011 - The toLocaleString method cannot be bound. @@ -1546,8 +1548,8 @@ declare namespace collections { /** * Reduce elements in an ArkTs Array from right to left. * - * @param { ArrayReduceCallback<U, T, Array<T>> } callbackFn - A function that is called for each element - * in the array. + * @param { ArrayReduceCallback<U, T, Array<T>> } callbackFn - Function that takes four arguments. + * It performs an operation on each element and passes the result as an accumulated value to the next element. * @param { U } initialValue - A value to use as the first argument to the first call of the callback. * <br>If no initial value is provided, the last element of the array will be used, * <br>and the callback will start with the second-to-last element. @@ -1565,8 +1567,8 @@ declare namespace collections { /** * Reduce elements in an ArkTs Array from right to left. * - * @param { ArrayReduceCallback<T, T, Array<T>> } callbackFn - A function that is called for each element - * in the array. + * @param { ArrayReduceCallback<T, T, Array<T>> } callbackFn - Function that takes four arguments. + * It performs an operation on each element and passes the result as an accumulated value to the next element. * @returns { T } Returns the single value that results from the reduction. * @throws { BusinessError } 401 - Parameter error. Possible causes: * 1.Mandatory parameters are left unspecified. @@ -3429,9 +3431,6 @@ declare namespace collections { * @param { number } fromIndex - The index at which to start the search. If provided: * <br>If this index is negative, it is treated as Int8Array.length + fromIndex. * @returns { number } Returns the last index of the specified element if found; otherwise, returns -1. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200001 - The value of fromIndex or toIndex is out of range. * @throws { BusinessError } 10200011 - The lastIndexOf method cannot be bound. * @syscap SystemCapability.Utils.Lang @@ -4578,9 +4577,6 @@ declare namespace collections { * @param { number } fromIndex - The index at which to start the search. If provided: * <br>If this index is negative, it is treated as Uint8ClampedArray.length + fromIndex. * @returns { number } Returns the last index of the specified element if found; otherwise, returns -1. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200001 - The value of fromIndex or toIndex is out of range. * @throws { BusinessError } 10200011 - The lastIndexOf method cannot be bound. * @syscap SystemCapability.Utils.Lang @@ -5761,9 +5757,6 @@ declare namespace collections { * @param { number } fromIndex - The index at which to start the search. If provided: * <br>If this index is negative, it is treated as Uint8Array.length + fromIndex. * @returns { number } Returns the last index of the specified element if found; otherwise, returns -1. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200001 - The value of fromIndex or toIndex is out of range. * @throws { BusinessError } 10200011 - The lastIndexOf method cannot be bound. * @syscap SystemCapability.Utils.Lang @@ -6942,9 +6935,6 @@ declare namespace collections { * @param { number } fromIndex - The index at which to start the search. If provided: * <br>If this index is negative, it is treated as Int16Array.length + fromIndex. * @returns { number } Returns the last index of the specified element if found; otherwise, returns -1. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200001 - The value of fromIndex or toIndex is out of range. * @throws { BusinessError } 10200011 - The lastIndexOf method cannot be bound. * @syscap SystemCapability.Utils.Lang @@ -8121,9 +8111,6 @@ declare namespace collections { * @param { number } fromIndex - The index at which to start the search. If provided: * <br>If this index is negative, it is treated as Uint16Array.length + fromIndex. * @returns { number } Returns the last index of the specified element if found; otherwise, returns -1. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200001 - The value of fromIndex or toIndex is out of range. * @throws { BusinessError } 10200011 - The lastIndexOf method cannot be bound. * @syscap SystemCapability.Utils.Lang @@ -9302,9 +9289,6 @@ declare namespace collections { * @param { number } fromIndex - The index at which to start the search. If provided: * <br>If this index is negative, it is treated as Int32Array.length + fromIndex. * @returns { number } Returns the last index of the specified element if found; otherwise, returns -1. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200001 - The value of fromIndex or toIndex is out of range. * @throws { BusinessError } 10200011 - The lastIndexOf method cannot be bound. * @syscap SystemCapability.Utils.Lang @@ -10481,9 +10465,6 @@ declare namespace collections { * @param { number } fromIndex - The index at which to start the search. If provided: * <br>If this index is negative, it is treated as Uint32Array.length + fromIndex. * @returns { number } Returns the last index of the specified element if found; otherwise, returns -1. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200001 - The value of fromIndex or toIndex is out of range. * @throws { BusinessError } 10200011 - The lastIndexOf method cannot be bound. * @syscap SystemCapability.Utils.Lang @@ -11630,9 +11611,6 @@ declare namespace collections { * @param { number } fromIndex - The index at which to start the search. If provided: * <br>If this index is negative, it is treated as Float32Array.length + fromIndex. * @returns { number } Returns the last index of the specified element if found; otherwise, returns -1. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200001 - The value of fromIndex or toIndex is out of range. * @throws { BusinessError } 10200011 - The lastIndexOf method cannot be bound. * @syscap SystemCapability.Utils.Lang @@ -11853,9 +11831,6 @@ declare namespace collections { * @param { number } toIndex - The end of the index, containing the value at that index. * @returns { boolean } The boolean type, if bit vector contains the specified element, return true, else return false. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified. - * 2.Incorrect parameter types. * @throws { BusinessError } 10200001 - The value of fromIndex or toIndex is out of range. * @throws { BusinessError } 10200011 - The has method cannot be bound. * @throws { BusinessError } 10200201 - Concurrent modification error. @@ -12226,4 +12201,4 @@ declare namespace collections { } } -export default collections; \ No newline at end of file +export default collections; diff --git a/arkts/@arkts.math.Decimal.d.ets b/arkts/@arkts.math.Decimal.d.ets index 908c39d1aa371fef35dfc4fc55c0172b1bd5c1a1..166fdaefd983331c3bb9546fe6484a9dd41dcbf5 100644 --- a/arkts/@arkts.math.Decimal.d.ets +++ b/arkts/@arkts.math.Decimal.d.ets @@ -35,6 +35,17 @@ */ type Rounding = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8; +/** + * The type uesd to set rounding + * + * @syscap SystemCapability.Utils.Lang + * @crossplatform + * @atomicservice + * @since 20 + * @arkts 1.2 + */ +type Rounding = number; + /** * The type uesd to set modulo * diff --git a/arkts/@arkts.utils.d.ets b/arkts/@arkts.utils.d.ets index f21fddf86e0598f76b2c459735591a6f08ce05ed..a6c86c7868868321bd9b700e786bdb55d938915a 100644 --- a/arkts/@arkts.utils.d.ets +++ b/arkts/@arkts.utils.d.ets @@ -655,9 +655,6 @@ declare namespace utils { * * @param { string } name - Name of the ConditionVariable to find or create. * @returns { ConditionVariable } Returns an instance of ConditionVariable. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Incorrect parameter types; - * 2. Parameter verification failed. * @static * @syscap SystemCapability.Utils.Lang * @atomicservice @@ -679,9 +676,6 @@ declare namespace utils { * @param { number } timeout - The maximum time to wait. * @returns { Promise<void> } A promise that will be resolved once the ConditionVariable is notified or the * specified time limit is reached. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1. Incorrect parameter types; - * 2. Parameter verification failed. * @syscap SystemCapability.Utils.Lang * @atomicservice * @since 18 @@ -1040,9 +1034,6 @@ declare namespace utils { * @param { K } key - The key to query. * @returns { V | undefined } The value associated with the key if the specified key is present; * returns undefined otherwise. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @syscap SystemCapability.Utils.Lang * @atomicservice * @since 18 @@ -1055,9 +1046,6 @@ declare namespace utils { * @param { V } value - The value associated with the key to add. * @returns { V } The value associated with the added key or the original value * if the key to add already exists. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @syscap SystemCapability.Utils.Lang * @atomicservice * @since 18 @@ -1068,9 +1056,6 @@ declare namespace utils { * * @param { K } key - The key to delete. * @returns { V | undefined } The deleted value or undefined. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @syscap SystemCapability.Utils.Lang * @atomicservice * @since 18 @@ -1081,9 +1066,6 @@ declare namespace utils { * * @param { K } key - The key to check. * @returns { boolean } The result of the checked. - * @throws { BusinessError } 401 - Parameter error. Possible causes: - * 1.Mandatory parameters are left unspecified; - * 2.Incorrect parameter types. * @syscap SystemCapability.Utils.Lang * @atomicservice * @since 18 diff --git a/arkui_transformer.py b/arkui_transformer.py new file mode 100755 index 0000000000000000000000000000000000000000..0d00f1b74d9927acec37aaab6dc2df0be6e4567d --- /dev/null +++ b/arkui_transformer.py @@ -0,0 +1,60 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# Copyright (c) 2025 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import sys +import os +import shutil +import subprocess + +PARSE_ETS2_API = "interface/sdk-js/build-tools/arkui_transformer" +PACKAGE_PATH = "build/arkui_transformer.js" + + +def compile_package(options): + tool_path = os.path.abspath(os.path.join(options.source_root_dir, PARSE_ETS2_API)) + npm = os.path.abspath(options.npm_path) + package_path = os.path.abspath(os.path.join(options.source_root_dir, PARSE_ETS2_API, PACKAGE_PATH)) + nodejs = os.path.abspath(options.node_js) + input_dir = os.path.abspath(options.input) + output = os.path.abspath(options.output) + custom_env = { + 'PATH': f"{os.path.dirname(os.path.abspath(options.node_js))}:{os.environ.get('PATH')}", + 'NODE_HOME': os.path.dirname(os.path.abspath(options.node_js)), + } + + process = subprocess.run([npm, "run", "compile:arkui"], env=custom_env, cwd=tool_path, shell=False) + + if os.path.exists(package_path): + p = subprocess.run([nodejs, package_path, "--input-dir", input_dir, "--target-dir", output], cwd=tool_path, shell=False) + else: + print("arkui_transformer: tool path does not exist") + + return process + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument('--input', required=True) + parser.add_argument('--output', required=True) + parser.add_argument('--source_root_dir', required=True) + parser.add_argument('--npm-path', required=True) + parser.add_argument('--node-js', required=True) + options = parser.parse_args() + compile_package(options) + + +if __name__ == '__main__': + sys.exit(main()) diff --git a/build-tools/api_check_plugin/plugin/dictionaries_supplementary.txt b/build-tools/api_check_plugin/plugin/dictionaries_supplementary.txt index 0ec04ae01b067c9abeeb0dea8c43762d1e1bd963..2f037ecdee82ec5632d31d06aa26d7042628fce6 100644 --- a/build-tools/api_check_plugin/plugin/dictionaries_supplementary.txt +++ b/build-tools/api_check_plugin/plugin/dictionaries_supplementary.txt @@ -47,6 +47,7 @@ antialiasing apdu apecified apertures +approximates appselect arcs arfcn diff --git a/build-tools/api_diff/src/api_data.js b/build-tools/api_diff/src/api_data.js index d9097d8cef873c07ee73d219e4116d182058a418..10f75079b930df7298c9fff8f22c9a799e5d82bb 100644 --- a/build-tools/api_diff/src/api_data.js +++ b/build-tools/api_diff/src/api_data.js @@ -125,6 +125,10 @@ class ApiDigestInfo { return this; } + /** + * 获取包名 + * @returns {string} + */ getPackageName() { return this.packageName; } @@ -140,6 +144,10 @@ class ApiDigestInfo { return this; } + /** + * 获取classs Name + * @returns {string|string|any|string} + */ getClassName() { if (this.className) { return this.className; @@ -181,6 +189,10 @@ class ApiDigestInfo { return this; } + /** + * 获取原始文本 + * @returns {string} + */ getRawText() { return this.rawText; } @@ -196,6 +208,10 @@ class ApiDigestInfo { return this; } + /** + * 获取路径 + * @returns {string} + */ getPath() { return this.path; } @@ -213,6 +229,10 @@ class ApiDigestInfo { return this; } + /** + * 获取node + * @returns {collaborationEditObject.Node} + */ getAstNode() { return this.node; } @@ -228,10 +248,18 @@ class ApiDigestInfo { return this; } + /** + * 设置tagItem + * @param jsdocTagItem + */ setJSDocTagItem(jsdocTagItem) { this.jsdocTagItem = jsdocTagItem; } + /** + * 获取tagItem + * @returns {*} + */ getJSDocTagItem() { return this.jsdocTagItem; } @@ -249,15 +277,28 @@ class ApiDigestInfo { return this; } + /** + * 获取api签名 + * @returns {string} + */ getApiSignature() { return this.signature; } + /** + * 设置API Name + * @param apiName + * @returns {ApiDigestInfo} + */ setApiName(apiName) { this.apiName = apiName; return this; } + /** + * 获取API Name + * @returns {*} + */ getApiName() { return this.apiName; } @@ -277,6 +318,11 @@ class ApiDigestInfo { return this.parent; } + /** + * 设置 syscap + * @param syscap + * @returns {ApiDigestInfo} + */ setSyscap(syscap) { this.syscap = syscap; return this; diff --git a/build-tools/arkui_transformer/.gitignore b/build-tools/arkui_transformer/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..d16386367f7cd7dd3c1842c484239e9e82a25efc --- /dev/null +++ b/build-tools/arkui_transformer/.gitignore @@ -0,0 +1 @@ +build/ \ No newline at end of file diff --git a/build-tools/arkui_transformer/README.md b/build-tools/arkui_transformer/README.md new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/build-tools/arkui_transformer/config/arkui_config.json b/build-tools/arkui_transformer/config/arkui_config.json new file mode 100644 index 0000000000000000000000000000000000000000..890f2d737fd052f0b1f76ff5a6b231b7ea6bc02e --- /dev/null +++ b/build-tools/arkui_transformer/config/arkui_config.json @@ -0,0 +1,134 @@ +{ + "components": [ + "AbilityComponent", + "AlphabetIndexer", + "AnalogClock", + "Animator", + "ArcList", + "ArcListItem", + "Badge", + "Blank", + "Button", + "Calendar", + "CalendarPicker", + "Camera", + "Canvas", + "Checkbox", + "CheckboxGroup", + "Circle", + "ColorPicker", + "ColorPickerDialog", + "Column", + "ColumnSplit", + "ContentSlot", + "Counter", + "DataPanel", + "DatePicker", + "Divider", + "DotMatrix", + "EffectComponent", + "Ellipse", + "EmbeddedComponent", + "Flex", + "FolderStack", + "FormComponent", + "FormLink", + "Gauge", + "GeometryView", + "Grid", + "GridItem", + "GridContainer", + "Hyperlink", + "Image", + "ImageAnimator", + "IndicatorComponent", + "LazyVGridLayout", + "Line", + "LinearIndicator", + "List", + "ListItem", + "ListItemGroup", + "LoadingProgress", + "Marquee", + "MediaCachedImage", + "Menu", + "MenuItem", + "MenuItemGroup", + "MovingPhotoView", + "NavDestination", + "NavRouter", + "Navigation", + "Navigator", + "NodeContainer", + "Option", + "Panel", + "Particle", + "Path", + "PatternLock", + "Piece", + "PlatformView", + "PluginComponent", + "Polygon", + "Polyline", + "Progress", + "QRCode", + "Radio", + "Rating", + "Rect", + "Refresh", + "RelativeContainer", + "RemoteWindow", + "RootScene", + "Row", + "RowSplit", + "RichText", + "Screen", + "Scroll", + "ScrollBar", + "Search", + "Section", + "Select", + "Shape", + "Sheet", + "SideBarContainer", + "Slider", + "Span", + "Stack", + "Stepper", + "StepperItem", + "Swiper", + "SymbolGlyph", + "SymbolSpan", + "TabContent", + "Tabs", + "Text", + "TextPicker", + "TextClock", + "TextArea", + "TextInput", + "TextTimer", + "TimePicker", + "Toggle", + "Video", + "Web", + "WindowScene", + "WithTheme", + "XComponent", + "GridRow", + "GridCol", + "WaterFlow", + "FlowItem", + "ImageSpan", + "LocationButton", + "PasteButton", + "SaveButton", + "UIExtensionComponent", + "IsolatedComponent", + "RichEditor", + "Component3D", + "ContainerSpan", + "ArcSwiper", + "ArcScrollBar", + "ArcAlphabetIndexer" + ] +} \ No newline at end of file diff --git a/build-tools/arkui_transformer/config/arkui_m3_white_list.json b/build-tools/arkui_transformer/config/arkui_m3_white_list.json new file mode 100644 index 0000000000000000000000000000000000000000..ea4926b92b9da7869cf7dd2af99147aa93edcd8f --- /dev/null +++ b/build-tools/arkui_transformer/config/arkui_m3_white_list.json @@ -0,0 +1,4 @@ +{ + "useM3": [ + ] +} \ No newline at end of file diff --git a/build-tools/arkui_transformer/config/none_arkui_files.json b/build-tools/arkui_transformer/config/none_arkui_files.json new file mode 100644 index 0000000000000000000000000000000000000000..489bd127ec7552a3ae4121b907ab015a6908d9b3 --- /dev/null +++ b/build-tools/arkui_transformer/config/none_arkui_files.json @@ -0,0 +1,5 @@ +{ + "files": [ + "component3d" + ] +} \ No newline at end of file diff --git a/build-tools/arkui_transformer/package.json b/build-tools/arkui_transformer/package.json new file mode 100644 index 0000000000000000000000000000000000000000..e7f81dda98b2965a0bfdf72d6211fb4e0e902735 --- /dev/null +++ b/build-tools/arkui_transformer/package.json @@ -0,0 +1,24 @@ +{ + "name": "arkui_transformer", + "version": "1.0.0", + "main": "build/arkui_transformer.js", + "scripts": { + "compile:arkui": "rollup -c", + "transform:arkui": "npm run compile:arkui && node . --input-dir ../../etstest --target-dir ../../api/arkui/component.test/", + "transform:arkui:m3": "npm run compile:arkui && node . --input-dir ../../etstest --target-dir ../../api/arkui/component.test/ --use-memo-m3" + }, + "author": "", + "license": "ISC", + "description": "", + "dependencies": { + "@types/node": "^18.0.0", + "commander": "^10.0.0", + "typescript": "^4.9.5" + }, + "devDependencies": { + "@rollup/plugin-node-resolve": "^16.0.1", + "@rollup/plugin-typescript": "^12.1.2", + "rollup": "^3.29.5", + "tslib": "^2.8.1" + } +} diff --git a/build-tools/arkui_transformer/pattern/arkts_component_decl.pattern b/build-tools/arkui_transformer/pattern/arkts_component_decl.pattern new file mode 100644 index 0000000000000000000000000000000000000000..ae4a5689f43d30a2cb1166c2f8a791dd5f1b0275 --- /dev/null +++ b/build-tools/arkui_transformer/pattern/arkts_component_decl.pattern @@ -0,0 +1,8 @@ +%COMPONENT_COMMENT% +@memo +@ComponentBuilder +export declare function %COMPONENT_NAME%( + %FUNCTION_PARAMETERS% + @memo + content_?: () => void, +): UI%COMPONENT_NAME%Attribute \ No newline at end of file diff --git a/build-tools/arkui_transformer/pattern/arkts_component_decl_m3.pattern b/build-tools/arkui_transformer/pattern/arkts_component_decl_m3.pattern new file mode 100644 index 0000000000000000000000000000000000000000..c4b09a33d71ddcf0da96cb8120b149116a266cf0 --- /dev/null +++ b/build-tools/arkui_transformer/pattern/arkts_component_decl_m3.pattern @@ -0,0 +1,8 @@ +%COMPONENT_COMMENT% +@memo +@ComponentBuilder +export declare function %COMPONENT_NAME%( + %FUNCTION_PARAMETERS% + @memo + content_?: () => void, +): %COMPONENT_NAME%Attribute \ No newline at end of file diff --git a/build-tools/arkui_transformer/rollup.config.mjs b/build-tools/arkui_transformer/rollup.config.mjs new file mode 100644 index 0000000000000000000000000000000000000000..04b82d532e98612df8e444818b07d1916ce4cdb8 --- /dev/null +++ b/build-tools/arkui_transformer/rollup.config.mjs @@ -0,0 +1,62 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import typescript from '@rollup/plugin-typescript'; +import { nodeResolve } from '@rollup/plugin-node-resolve'; + +export default { + input: 'src/arkui_transformer.ts', + output: { + file: 'build/arkui_transformer.js', + format: 'commonjs', + sourcemap: true, + banner: [ + "#!/usr/bin/env node", + APACHE_LICENSE_HEADER() + ].join("\n"), + }, + external: ["commander", "typescript"], + plugins: [ + typescript({ + tsconfig: './tsconfig.json' + }), + nodeResolve({ + extensions: ['.ts'], + preferBuiltins: true + }), + ] +}; + + +function APACHE_LICENSE_HEADER() { + return ` +/** +* @license +* Copyright (c) ${new Date().getUTCFullYear()} Huawei Device Co., Ltd. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +` +} \ No newline at end of file diff --git a/build-tools/arkui_transformer/src/add_export.ts b/build-tools/arkui_transformer/src/add_export.ts new file mode 100644 index 0000000000000000000000000000000000000000..f7143542737708332c917bebffa3fb4ca1b53d3b --- /dev/null +++ b/build-tools/arkui_transformer/src/add_export.ts @@ -0,0 +1,149 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import * as ts from "typescript"; + +export function exportAllTransformer(): ts.TransformerFactory<ts.SourceFile> { + return (context) => { + return (sourceFile) => { + const exportModifier = ts.factory.createModifier(ts.SyntaxKind.ExportKeyword); + + const visitor = (node: ts.Node): ts.Node => { + if (isTopLevelExportable(node)) { + const modifiers = ts.getModifiers(node as ts.HasModifiers) || []; + if (!hasExportModifier(modifiers)) { + const newNode = updateNodeWithExport(node, modifiers, exportModifier); + return newNode || node; + } + } + return ts.visitEachChild(node, visitor, context); + }; + + return ts.visitNode(sourceFile, visitor); + }; + }; +} + +function isTopLevelExportable(node: ts.Node): boolean { + return ts.isFunctionDeclaration(node) || + ts.isClassDeclaration(node) || + ts.isVariableStatement(node) || + ts.isInterfaceDeclaration(node) || + ts.isTypeAliasDeclaration(node) || + ts.isEnumDeclaration(node) || + ts.isModuleDeclaration(node); +} + +function hasExportModifier(modifiers: readonly ts.Modifier[]): boolean { + return modifiers.some(m => m.kind === ts.SyntaxKind.ExportKeyword); +} + +function hasDeclareModifier(modifiers: readonly ts.Modifier[]): boolean { + return modifiers.some(m => m.kind === ts.SyntaxKind.DeclareKeyword); +} + +function handleClassModifiers(existingModifiers: readonly ts.Modifier[]): ts.Modifier[] { + const newModifiers = [...existingModifiers] + if (!hasDeclareModifier(existingModifiers)) { + newModifiers.unshift(ts.factory.createModifier(ts.SyntaxKind.DeclareKeyword)); + } + if (!hasExportModifier(existingModifiers)) { + newModifiers.unshift(ts.factory.createModifier(ts.SyntaxKind.ExportKeyword)); + } + return newModifiers; +} + +function updateNodeWithExport( + node: ts.Node, + existingModifiers: readonly ts.Modifier[], + exportModifier: ts.Modifier +): ts.Node { + const newModifiers = [exportModifier, ...existingModifiers]; + + switch (node.kind) { + case ts.SyntaxKind.VariableStatement: + return ts.factory.updateVariableStatement( + node as ts.VariableStatement, + newModifiers, + (node as ts.VariableStatement).declarationList + ); + + case ts.SyntaxKind.FunctionDeclaration: + const func = node as ts.FunctionDeclaration; + return ts.factory.updateFunctionDeclaration( + func, + newModifiers, + func.asteriskToken, + func.name, + func.typeParameters, + func.parameters, + func.type, + func.body + ); + + case ts.SyntaxKind.ClassDeclaration: + const cls = node as ts.ClassDeclaration; + return ts.factory.updateClassDeclaration( + cls, + handleClassModifiers(existingModifiers), + cls.name, + cls.typeParameters, + cls.heritageClauses, + cls.members + ); + + case ts.SyntaxKind.InterfaceDeclaration: + const intf = node as ts.InterfaceDeclaration; + return ts.factory.updateInterfaceDeclaration( + intf, + newModifiers, + intf.name, + intf.typeParameters, + intf.heritageClauses, + intf.members + ); + + case ts.SyntaxKind.TypeAliasDeclaration: + const type = node as ts.TypeAliasDeclaration; + return ts.factory.updateTypeAliasDeclaration( + type, + newModifiers.filter(m => m.kind !== ts.SyntaxKind.DeclareKeyword), + type.name, + type.typeParameters, + type.type + ); + + case ts.SyntaxKind.EnumDeclaration: + const enm = node as ts.EnumDeclaration; + return ts.factory.updateEnumDeclaration( + enm, + newModifiers, + enm.name, + enm.members + ); + + case ts.SyntaxKind.ModuleDeclaration: + const mod = node as ts.ModuleDeclaration; + return ts.factory.updateModuleDeclaration( + mod, + newModifiers, + mod.name, + mod.body + ); + + default: + return node; + } +} \ No newline at end of file diff --git a/build-tools/arkui_transformer/src/add_import.ts b/build-tools/arkui_transformer/src/add_import.ts new file mode 100644 index 0000000000000000000000000000000000000000..daf313dd4eb52be669777639ee4d1ce330f77a3f --- /dev/null +++ b/build-tools/arkui_transformer/src/add_import.ts @@ -0,0 +1,160 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import * as ts from "typescript"; +import uiconfig from './arkui_config_util'; +import path from 'path'; +import { ComponentFile } from "./component_file"; + +export function addImportTransformer(): ts.TransformerFactory<ts.SourceFile> { + return (context) => { + return (sourceFile) => { + const [updatedSource, targetImport] = createTargetImport(sourceFile, context); + const insertPosition = findBestInsertPosition(updatedSource); + + const newStatements = [ + ...updatedSource.statements.slice(0, insertPosition), + ...targetImport, + ...updatedSource.statements.slice(insertPosition) + ]; + + return ts.factory.updateSourceFile( + updatedSource, + newStatements, + updatedSource.isDeclarationFile, + updatedSource.referencedFiles, + updatedSource.typeReferenceDirectives, + updatedSource.hasNoDefaultLib, + updatedSource.libReferenceDirectives + ); + }; + }; +} + +function findBestInsertPosition(sourceFile: ts.SourceFile): number { + let lastImportIndex = -1; + sourceFile.statements.forEach((stmt, index) => { + if (ts.isImportDeclaration(stmt)) { + lastImportIndex = index; + } + }); + + if (lastImportIndex !== -1) { + return lastImportIndex + 1; + } + + return 0; +} + +function handleImportDeclaration(node: ts.ImportDeclaration): [ts.Node, boolean] { + if (node.moduleSpecifier && ts.isStringLiteral(node.moduleSpecifier)) { + const moduleText = node.moduleSpecifier.text; + const haveCommon = moduleText.includes("common"); + if (uiconfig.isComponentFile(moduleText)) { + const importClause = node.importClause; + const uiprefixImports: Set<string> = new Set + if (importClause && ts.isImportClause(importClause) && importClause.namedBindings && ts.isNamedImports(importClause.namedBindings)) { + const namedImports = importClause.namedBindings.elements; + const existingImports = namedImports.map((element) => element.name.text); + existingImports.forEach((element) => { + if (uiconfig.isUIHeritage(element)) { + uiconfig.useMemoM3 || uiprefixImports.add(`UI${element}`) + } + }) + if (moduleText.includes("common")) { + uiprefixImports.add('AttributeModifier'); + uiprefixImports.add('CommonMethod'); + uiconfig.useMemoM3 || uiprefixImports.add('UICommonMethod'); + } + + const addedImports = Array.from(uiprefixImports).filter((im) => !existingImports.includes(im)); + const pureModule = path.basename(moduleText) + const updatedName = ComponentFile.snake2Camel(pureModule, true) + const updatedModuleSpecifier = ts.factory.createStringLiteral(moduleText.replace(pureModule, updatedName)); + const updatedNode = ts.factory.updateImportDeclaration( + node, + undefined, + ts.factory.updateImportClause( + importClause, + importClause.isTypeOnly, + importClause.name, + ts.factory.updateNamedImports( + importClause.namedBindings, + [ + ...namedImports, + ...addedImports.map(im => { return ts.factory.createImportSpecifier(false, undefined, ts.factory.createIdentifier(im)) }), + ] + ) + ), + updatedModuleSpecifier, + undefined + ); + return [updatedNode, haveCommon] + } else { + throw new Error("Unexpected import clause structure"); + } + } + } + return [node, false]; +} + +function createTargetImport(sourceFile: ts.SourceFile, context: ts.TransformationContext): [ts.SourceFile, ts.ImportDeclaration[]] { + const targetImport: ts.ImportDeclaration[] = [] + + const memoImport = ts.factory.createImportDeclaration( + undefined, + ts.factory.createImportClause( + false, + undefined, + ts.factory.createNamedImports([ + ts.factory.createImportSpecifier(false, undefined, ts.factory.createIdentifier("memo")), + ts.factory.createImportSpecifier(false, undefined, ts.factory.createIdentifier("ComponentBuilder")) + ]) + ), + ts.factory.createStringLiteral("./../stateManagement/runtime") + ); + targetImport.push(memoImport) + + let haveCommonImportFlag = false; + const newSource = ts.visitEachChild(sourceFile, (node) => { + if (ts.isImportDeclaration(node)) { + const [transNode, flag] = handleImportDeclaration(node)!; + haveCommonImportFlag = flag ? flag : haveCommonImportFlag + return transNode + } + return node; + }, context) + + if (!haveCommonImportFlag) { + const commonImport = ts.factory.createImportDeclaration( + undefined, + ts.factory.createImportClause( + false, + undefined, + ts.factory.createNamedImports([ + ts.factory.createImportSpecifier(false, undefined, ts.factory.createIdentifier("AttributeModifier")), + ts.factory.createImportSpecifier(false, undefined, ts.factory.createIdentifier("CommonMethod")), + ...(uiconfig.useMemoM3 !== true ? [ + ts.factory.createImportSpecifier(false, undefined, ts.factory.createIdentifier("UICommonMethod")) + ] : []) + ]) + ), + ts.factory.createStringLiteral("./common"), + undefined + ) + targetImport.push(commonImport) + } + return [newSource, targetImport] +} diff --git a/build-tools/arkui_transformer/src/arkui_config_util.ts b/build-tools/arkui_transformer/src/arkui_config_util.ts new file mode 100644 index 0000000000000000000000000000000000000000..b0b2d91c044d047d44101ad43efcdbecac8de310 --- /dev/null +++ b/build-tools/arkui_transformer/src/arkui_config_util.ts @@ -0,0 +1,159 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { OptionValues } from "commander" +import * as fs from "fs" + +import path from "path" + +export interface ArkUIConfig { + components: Array<string> +} + +interface NoneUIConfig { + files: Array<string> +} + +interface UseM3Config { + useM3: Array<string> +} + +export class ArkUIConfigUtil { + static instance: ArkUIConfigUtil = new ArkUIConfigUtil + constructor() { + this.config = JSON.parse(fs.readFileSync("./config/arkui_config.json", 'utf-8')) + this.config.components.forEach(c => { + this.componentSet.add(c) + }) + this.noneUIconfig = JSON.parse(fs.readFileSync("./config/none_arkui_files.json", 'utf-8')) + this.noneUIconfig.files.forEach(f => { + this.noneUIFileSet.add(f) + }) + const useM3Config: UseM3Config = JSON.parse(fs.readFileSync("./config/arkui_m3_white_list.json", 'utf-8')) + this._useM3Files = useM3Config.useM3 + } + // ui components + private config: ArkUIConfig + // None ui files + private noneUIconfig: NoneUIConfig + private noneUIFileSet: Set<string> = new Set + // Full set of component, should be manually mantained by config file + private componentSet: Set<string> = new Set + // Component superclass set, generated by traversing the declartion AST + private componentSuperclassSet: Set<string> = new Set + // All class/interface name related to component attribute heritage + private componentHeritage: Set<string> = new Set + // All implement relationship of component heritage + private componentHerirageRelation: Map<string, string> = new Map + // All component filename + private componentFiles: Set<string> = new Set + private file2Attrbiute: Map<string, string> = new Map + private shouldNotHaveAttributeModifier: Set<string> = new Set + private _useMemoM3: boolean = false + private _useM3Files: Array<string> = [] + private _configPath: string = '' + get useMemoM3(): boolean { + return this._useMemoM3 + } + + set useMemoM3(value: boolean) { + this._useMemoM3 = value + } + + withM3File(file: string): boolean { + if (this._useMemoM3) { + return true; + } + return this._useM3Files.includes(path.basename(file)) + } + + get isHdsComponent(): boolean { + return this._configPath.length > 0 + } + + public loadConfig(config: OptionValues): void { + if (config.useMemoM3) { + this._useMemoM3 = true + } + + if (config.configPath != undefined && config.configPath != '') { + this._configPath = config.configPath + // exception process: avoid non-existing given path + try { + this.config = JSON.parse(fs.readFileSync(this._configPath + "/hds_uicomponents.json", 'utf-8')) + this.componentSet.clear() + this.config.components.forEach(c => { + this.componentSet.add(c) + }) + this.noneUIconfig = JSON.parse(fs.readFileSync(this._configPath + "/hds_non_uicomponents.json", 'utf-8')) + this.noneUIFileSet.clear() + this.noneUIconfig.files.forEach(f => { + this.noneUIFileSet.add(f) + }) + } catch (error) { + this._configPath = '' + console.log("Load given hds_uicomponents file failed!", error); + } + } + } + private getPureName(name: string): string { + return path.basename(name).replaceAll(".d.ts", "").replaceAll(".d.ets", "").replaceAll("_","").toLowerCase() + } + + public isRelatedToComponent(name: string): boolean { + return this.componentSet.has(name) || this.componentSuperclassSet.has(name) + } + public isComponent(name: string, subfix: string): boolean { + return this.componentSet.has(name.replaceAll(subfix, "")) + } + public addComponentSuperclass(name: string): void { + if (!this.isComponent(name, 'Attribute')) { + this.componentSuperclassSet.add(name); + } + } + public addComponentAttributeHeritage(name: string[]): void { + let prev: string | undefined = undefined + name.forEach(n => { + if (prev) { + this.componentHerirageRelation.set(prev, n) + } + prev = n + this.componentHeritage.add(n) + }) + if (name.length == 1) { + this.shouldNotHaveAttributeModifier.add(name[0]) + } + } + public getComponentSuperclass(name: string): string | undefined { + return this.componentHerirageRelation.get(name) + } + public isUIHeritage(name: string): boolean { + return this.componentHeritage.has(name) + } + public notUIFile(name: string): boolean { + return this.noneUIFileSet.has(this.getPureName(name)) + } + public addComponentFile(name: string): void { + this.componentFiles.add(this.getPureName(name)) + } + public isComponentFile(name: string): boolean { + return this.componentFiles.has(this.getPureName(name)) + } + public shouldHaveAttributeModifier(name: string): boolean { + return !this.shouldNotHaveAttributeModifier.has(name) && this.isComponent(name, 'Attribute') + } +} + +export default ArkUIConfigUtil.instance diff --git a/build-tools/arkui_transformer/src/arkui_transformer.ts b/build-tools/arkui_transformer/src/arkui_transformer.ts new file mode 100644 index 0000000000000000000000000000000000000000..672d9e3352c65186cd9d71da53393c237ff454fd --- /dev/null +++ b/build-tools/arkui_transformer/src/arkui_transformer.ts @@ -0,0 +1,142 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { program } from "commander" +import { exit } from "process" +import * as ts from 'typescript'; +import * as path from 'path'; +import * as fs from 'fs'; +import { componentInterfaceCollector, interfaceTransformer, addMemoTransformer } from "./interface_converter" +import { ComponentFile } from './component_file'; +import { exportAllTransformer } from './add_export' +import { addImportTransformer } from './add_import' +import uiconfig from './arkui_config_util' + +function getFiles(dir: string, fileFilter: (f: string) => boolean): string[] { + const result: string[] = [] + const dirents = fs.readdirSync(dir, { withFileTypes: true }) + for (const entry of dirents) { + const fullPath = path.join(dir, entry.name) + if (entry.isFile() && fileFilter(fullPath) && !uiconfig.notUIFile(fullPath)) { + let addFile: boolean = true + if (uiconfig.isHdsComponent) { + addFile = entry.name.startsWith("@hms.hds.") + } + if (addFile) { + result.push(fullPath) + uiconfig.addComponentFile(fullPath) + } + } + } + return result +} + +function convertFiles(files: string[]): string[] { + const result: string[] = [] + for (const file of files) { + const dest = file.replace(".d.ets", ".d.ts") + fs.copyFile(file, dest, () => { }) + result.push(dest) + } + return result +} + +function printResult(source: string, file: ComponentFile) { + const outPath = path.join(options.targetDir, file.outFileName) + fs.mkdirSync(path.dirname(outPath), { recursive: true }); + fs.writeFileSync(outPath, source.concat(file.concactSource)) +} + +function main() { + uiconfig.loadConfig(options); + const files = getFiles(options.inputDir, f => f.endsWith(".d.ets")); + const program = ts.createProgram(files, { allowJs: true }); + const { printFile } = ts.createPrinter({ removeComments: false }); + const componentFileMap = new Map<string, ComponentFile>(); + const componentFileCallback = (f: string) => { + return (context: ts.TransformationContext) => { + return (sourceFile: ts.SourceFile) => { + const componentFile = new ComponentFile(f, sourceFile); + componentFileMap.set(f, componentFile); + ts.transform(sourceFile, [componentInterfaceCollector(program, componentFile)]); + return sourceFile; + } + } + } + + const transformerCallback = (f: string) => { + return (context: ts.TransformationContext) => { + return (sourceFile: ts.SourceFile) => { + const componentFile = componentFileMap.get(f)!; + const result = ts.transform(sourceFile, [interfaceTransformer(program, componentFile), exportAllTransformer(), addImportTransformer()]); + const transformedFile = ts.createSourceFile(f, printFile(result.transformed[0]), ts.ScriptTarget.Latest, true); + const addMemoResult = ts.transform(transformedFile, [addMemoTransformer(componentFile)]); + const transformedSource = ts.createPrinter().printFile(addMemoResult.transformed[0]); + printResult(transformedSource, componentFile); + return ts.createSourceFile("", "", ts.ScriptTarget.Latest, true); + } + } + } + + // Step1 collect all component dependencies + files.forEach(f => { + try { + const content = fs.readFileSync(f, 'utf-8'); + ts.transpileModule(content, { + compilerOptions: { + target: ts.ScriptTarget.ES2017, + }, + fileName: f, + transformers: { before: [componentFileCallback(f)] } + }) + } catch (e) { + console.log("Error collecting file: ", f, e); + exit(1) + } + }) + + // Step2 make transformation + files.forEach(f => { + try { + const content = fs.readFileSync(f, 'utf-8'); + ts.transpileModule(content, { + compilerOptions: { + target: ts.ScriptTarget.ES2017, + }, + fileName: f, + transformers: { before: [transformerCallback(f)] } + }) + } catch (e) { + console.log("Error transforming file: ", f, e); + exit(1) + } + }) +} + +function mock() { + const mock_file = path.join(options.targetDir, "type-translated.d.ets") + fs.mkdirSync(options.targetDir, { recursive: true }) + fs.writeFileSync(mock_file, "// WARNING! THIS FILE IS AUTO-GENERATED, DO NOT MAKE CHANGES, THEY WILL BE LOST ON NEXT GENERATION!\n") +} + +const options = program + .option('--input-dir <path>', "Path of where d.ets exist") + .option('--target-dir <path>', "Path to generate d.ets file") + .option('--config-path <path>', "Path to folder with config files") + .option('--use-memo-m3', "Generate code with m3 @memo annotations and functions with @ComponentBuilder", false) + .parse() + .opts() + +mock() \ No newline at end of file diff --git a/build-tools/arkui_transformer/src/component_file.ts b/build-tools/arkui_transformer/src/component_file.ts new file mode 100644 index 0000000000000000000000000000000000000000..89754a53cc85831efb23d13d8c05cae54656e4d1 --- /dev/null +++ b/build-tools/arkui_transformer/src/component_file.ts @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import * as ts from 'typescript'; +import * as path from 'path'; + +export class ComponentFile { + public componentName: string + public outFileName: string + + static snake2Camel(name: string, low: boolean = false): string { + if (!name.includes('_')) { + return name; + } + return name + .split('_') + .filter(word => word !== '') + .map((word, index) => { + if (index === 0 && low) { + return word.toLowerCase(); + } + return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase(); + }) + .join(''); + } + + public appendAttribute(str: string) { + this.attributeSource.push(str) + } + + public appendFunction(str: string) { + this.functionSource += str + } + + get concactSource() { + return [...this.attributeSource, this.functionSource].join('\n') + } + + constructor( + public fileName: string, + public sourceFile: ts.SourceFile, + public attributeSource: string[] = [], + public functionSource: string = '', + ) { + const pureName = path.basename(this.fileName).replaceAll(".d.ts", "").replaceAll(".d.ets", ""); + this.componentName = ComponentFile.snake2Camel(pureName) + this.outFileName = ComponentFile.snake2Camel(pureName, true).concat(".d.ets") + } +} \ No newline at end of file diff --git a/build-tools/arkui_transformer/src/interface_converter.ts b/build-tools/arkui_transformer/src/interface_converter.ts new file mode 100644 index 0000000000000000000000000000000000000000..5a8c874ca1b74e5b60c279a3a80e90d4813d2b09 --- /dev/null +++ b/build-tools/arkui_transformer/src/interface_converter.ts @@ -0,0 +1,470 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import * as ts from 'typescript'; +import * as fs from 'fs'; +import * as path from 'path'; +import { assert } from 'console'; +import uiconfig from './arkui_config_util' +import { ComponentFile } from './component_file'; +import { analyzeBaseClasses, isComponentHerirage, getBaseClassName, removeDuplicateMethods, mergeUniqueOrdered } from './lib/attribute_utils' + +function readLangTemplate(): string { + return uiconfig.useMemoM3 ? fs.readFileSync('./pattern/arkts_component_decl_m3.pattern', 'utf8') : fs.readFileSync('./pattern/arkts_component_decl.pattern', 'utf8') +} + +function extractSignatureComment( + signature: ts.CallSignatureDeclaration, + sourceFile: ts.SourceFile +): string { + const jsDoc = (signature as any).jsDoc?.[0] as ts.JSDoc | undefined; + if (!jsDoc) return ''; + + + const commentText = sourceFile.text + .slice(jsDoc.getStart(sourceFile), jsDoc.getEnd()) + + return commentText.split('\n').map((l, index) => { + if (index == 0) { + return l.trimStart(); + } + return ' ' + l.trimStart() + }).join('\n') +} + +interface ComponnetFunctionInfo { + sig: string[], + comment: string +} + +interface ComponentPram { + name: string, + type: string[], + isOptional: boolean, +} + +function getAllInterfaceCallSignature(node: ts.InterfaceDeclaration, originalCode: ts.SourceFile, mergeCallSig: boolean = false): Array<ComponnetFunctionInfo> { + const signatureParams: Array<string[]> = []; + const comments: string[] = [] + const paramList: Array<ComponentPram[]> = [] + + node.members.forEach(member => { + if (ts.isCallSignatureDeclaration(member)) { + const currentSignature: string[] = []; + const currentParam: ComponentPram[] = [] + const comment = extractSignatureComment(member, originalCode); + comments.push(comment); + + member.parameters.forEach(param => { + currentSignature.push(param.getText(originalCode)); + currentParam.push({ name: (param.name as ts.Identifier).escapedText as string, type: [param.type!.getText(originalCode)], isOptional: !!param.questionToken }); + }); + signatureParams.push(currentSignature) + paramList.push(currentParam) + } + }); + + const result: Array<ComponnetFunctionInfo> = new Array + + if (mergeCallSig) { + const mergedParamList: Array<ComponentPram> = [] + paramList.forEach((params, _) => { + params.forEach((param, index) => { + if (!mergedParamList[index]) { + mergedParamList.push(param) + if (index > 0) { + (mergedParamList[index] as ComponentPram).isOptional = true; + } + } else { + mergedParamList[index] = { name: param.name, type: mergeUniqueOrdered(mergedParamList[index].type, param.type), isOptional: mergedParamList[index].isOptional || param.isOptional } + } + }) + }) + const mergedSignature: string[] = []; + mergedParamList.forEach((param, index) => { + mergedSignature.push(`${param.name}${param.isOptional ? '?' : ''}: ${param.type.join(' | ')}`) + }) + result.push({ + sig: mergedSignature, + comment: '' + }) + } else { + for (let i = 0; i < signatureParams.length; i++) { + result.push({ sig: signatureParams[i], comment: comments[i] }) + } + } + return result; +} + +function handleComponentInterface(node: ts.InterfaceDeclaration, file: ComponentFile) { + const result = getAllInterfaceCallSignature(node, file.sourceFile, !uiconfig.useMemoM3); + const declPattern = readLangTemplate() + const declComponentFunction: string[] = [] + const attributeName = node.name!.escapedText as string + const componentName = attributeName.replaceAll('Interface', ''); + result.forEach(p => { + declComponentFunction.push(declPattern + .replaceAll("%COMPONENT_NAME%", componentName) + .replaceAll("%FUNCTION_PARAMETERS%", p.sig?.map(it => `${it}, `).join("") ?? "") + .replaceAll("%COMPONENT_COMMENT%", p.comment)) + }) + return declComponentFunction.join('\n') +} + +function updateMethodDoc(node: ts.MethodDeclaration): ts.MethodDeclaration { + const returnType = ts.factory.createThisTypeNode(); + if ('jsDoc' in node) { + const paramNameType: Map<string, ts.TypeNode> = new Map(); + node.parameters.forEach(param => { + paramNameType.set((param.name as ts.Identifier).escapedText!, param.type!); + }) + const jsDoc = node.jsDoc as ts.JSDoc[]; + const updatedJsDoc = jsDoc.map((doc) => { + const updatedTags = (doc.tags || []).map((tag: ts.JSDocTag) => { + if (tag.tagName.escapedText === 'returns') { + return ts.factory.updateJSDocReturnTag( + tag as ts.JSDocReturnTag, + tag.tagName, + ts.factory.createJSDocTypeExpression(returnType), + tag.comment + ) + } + if (tag.tagName.escapedText === 'param') { + const paramTag = tag as ts.JSDocParameterTag + return ts.factory.updateJSDocParameterTag( + paramTag, + paramTag.tagName, + paramTag.name, + paramTag.isBracketed, + ts.factory.createJSDocTypeExpression(paramNameType.get((paramTag.name as ts.Identifier).escapedText!)!), + paramTag.isNameFirst, + paramTag.comment + ) + } + return tag + }) + return ts.factory.updateJSDocComment(doc, doc.comment, updatedTags); + }); + (node as any).jsDoc = updatedJsDoc + } + return node +} + +function handleOptionalType(paramType: ts.TypeNode, wrapUndefined: boolean = true): ts.TypeNode { + if (!ts.isTypeReferenceNode(paramType)) { + return paramType; + } + const typeName = (paramType.typeName as ts.Identifier).escapedText; + + const wrapUndefinedOp = (type: ts.TypeNode) => { + if (!wrapUndefined) { + return type; + } + return ts.factory.createUnionTypeNode([ + ...(ts.isUnionTypeNode(type) ? type.types : [type]), + ts.factory.createKeywordTypeNode(ts.SyntaxKind.UndefinedKeyword), + ]); + } + + // Check if the parameter type is Optional<XX> + if (typeName === 'Optional' && paramType.typeArguments?.length === 1) { + const innerType = paramType.typeArguments[0]; + return wrapUndefinedOp(innerType); + } + return wrapUndefinedOp(paramType); +} + +function handleAttributeMember(node: ts.MethodDeclaration): ts.MethodSignature { + const updatedParameters = node.parameters.map(param => { + const paramType = param.type; + + // Ensure all other parameters are XX | undefined + if (paramType) { + if (ts.isTypeReferenceNode(paramType)) { + return ts.factory.updateParameterDeclaration( + param, + undefined, + param.dotDotDotToken, + param.name, + param.questionToken, + handleOptionalType(paramType), + param.initializer + ); + } else if (ts.isUnionTypeNode(paramType)) { + const removeOptionalTypes = paramType.types.map(type => { + return handleOptionalType(type, false); + }) + // Check if the union type already includes undefined + const hasUndefined = removeOptionalTypes.some( + type => type.kind === ts.SyntaxKind.UndefinedKeyword + ); + + if (!hasUndefined) { + const updatedType = ts.factory.createUnionTypeNode([ + ...removeOptionalTypes, + ts.factory.createKeywordTypeNode(ts.SyntaxKind.UndefinedKeyword), + ]); + + return ts.factory.updateParameterDeclaration( + param, + undefined, + param.dotDotDotToken, + param.name, + param.questionToken, + updatedType, + param.initializer + ); + } + } else { + // If not a union type, add | undefined + const updatedType = ts.factory.createUnionTypeNode([ + paramType, + ts.factory.createKeywordTypeNode(ts.SyntaxKind.UndefinedKeyword), + ]); + + return ts.factory.updateParameterDeclaration( + param, + undefined, + param.dotDotDotToken, + param.name, + param.questionToken, + updatedType, + param.initializer + ); + } + } + + return param; + }); + + + const returnType = ts.factory.createThisTypeNode(); + const methodSignature = ts.factory.createMethodSignature( + undefined, + node.name, + node.questionToken, + node.typeParameters, + updatedParameters, + returnType + ); + + return methodSignature +} + +function handleHeritageClause(node: ts.NodeArray<ts.HeritageClause> | undefined): ts.HeritageClause[] { + const heritageClauses: ts.HeritageClause[] = []; + if (!node) { + return heritageClauses; + } + node.forEach(clause => { + const types = clause.types.map(type => { + if (ts.isExpressionWithTypeArguments(type) && + ts.isIdentifier(type.expression) && type.typeArguments) { + + return ts.factory.updateExpressionWithTypeArguments( + type, + type.expression, + [], + ); + } + return type; + }); + const newClause = ts.factory.createHeritageClause(ts.SyntaxKind.ExtendsKeyword, types); + heritageClauses.push(newClause); + }); + return heritageClauses +} + +function handleAttributeModifier(node: ts.ClassDeclaration, members: ts.MethodSignature[]) { + if (!isComponentAttribute(node)) { + members.forEach(m => { + if ((m.name as ts.Identifier).escapedText === 'attributeModifier') { + members.splice(members.indexOf(m), 1); + } + }) + return + } + members.push( + ts.factory.createMethodSignature( + undefined, + ts.factory.createIdentifier("attributeModifier"), + undefined, + undefined, + [ts.factory.createParameterDeclaration( + undefined, + undefined, + ts.factory.createIdentifier("modifier"), + undefined, + ts.factory.createUnionTypeNode([ + ts.factory.createTypeReferenceNode( + ts.factory.createIdentifier("AttributeModifier"), + [ts.factory.createTypeReferenceNode( + node.name!, + undefined + )] + ), + ts.factory.createTypeReferenceNode( + ts.factory.createIdentifier("AttributeModifier"), + [ts.factory.createTypeReferenceNode( + ts.factory.createIdentifier("CommonMethod"), + undefined + )] + ), + ts.factory.createKeywordTypeNode(ts.SyntaxKind.UndefinedKeyword) + ]), + undefined + )], + ts.factory.createThisTypeNode() + ) + ) +} + +function transformComponentAttribute(node: ts.ClassDeclaration): ts.Node[] { + const members = node.members.map(member => { + if (!ts.isMethodDeclaration(member)) { + return undefined; + } + return handleAttributeMember(member); + }).filter((member): member is ts.MethodSignature => member !== undefined); + + const filetredMethos = removeDuplicateMethods(members) + + if (uiconfig.shouldHaveAttributeModifier(node.name!.escapedText as string)) { + handleAttributeModifier(node, filetredMethos) + } + + const exportModifier = ts.factory.createModifier(ts.SyntaxKind.ExportKeyword); + const delcareModifier = ts.factory.createModifier(ts.SyntaxKind.DeclareKeyword); + + const heritageClauses = handleHeritageClause(node.heritageClauses) + + const noneUIAttribute = ts.factory.createInterfaceDeclaration( + [exportModifier, delcareModifier], + node.name as ts.Identifier, + [], + heritageClauses, + filetredMethos + ); + return [noneUIAttribute] +} + +function getLeadingSpace(line: string): string { + let leadingSpaces = ''; + for (const char of line) { + if (char === ' ') { + leadingSpaces += char; + } else { + break; + } + } + return leadingSpaces; +} + +function extractMethodName(code: string): string | undefined { + const match = code.match(/^\s*([^(]+)/); + if (!match) return undefined; + return match[1].trim(); +} + +function addAttributeMemo(node: ts.ClassDeclaration, componentFile: ComponentFile) { + const originalSource = componentFile.sourceFile; + const commentRanges = ts.getLeadingCommentRanges(originalSource.text, node.pos); + const classStart = commentRanges?.[0]?.pos ?? node.getStart(originalSource); + const classEnd = node.getEnd(); + const originalCode = originalSource.text.substring(classStart, classEnd).split('\n'); + + const functionSet: Set<string> = new Set(); + node.members.forEach(m => { + functionSet.add((m.name! as ts.Identifier).escapedText!) + }) + + const updatedCode: string[] = [] + originalCode.forEach(l => { + const name = extractMethodName(l); + if (!name) { + updatedCode.push(l); + return; + } + if (functionSet.has(name)) { + updatedCode.push(getLeadingSpace(l) + "@memo") + } + updatedCode.push(l); + }) + const attributeName = node.name!.escapedText! + const superInterface = getBaseClassName(node) + componentFile.appendAttribute(updatedCode.join('\n') + .replace(`export declare interface ${attributeName}`, `export declare interface UI${attributeName}`) + .replace(`extends ${superInterface}`, `extends UI${superInterface}`) + ) +} + +function isComponentAttribute(node: ts.Node) { + if (!(ts.isClassDeclaration(node) && node.name?.escapedText)) { + return false; + } + return uiconfig.isComponent(node.name.escapedText, 'Attribute') +} + +function isComponentInterface(node: ts.Node) { + if (!(ts.isInterfaceDeclaration(node) && node.name?.escapedText)) { + return false; + } + return uiconfig.isComponent(node.name.escapedText, 'Interface') +} + +export function addMemoTransformer(componentFile: ComponentFile): ts.TransformerFactory<ts.SourceFile> { + return (context) => { + const visit: ts.Visitor = (node) => { + if (isComponentHerirage(node) && !uiconfig.useMemoM3) { + addAttributeMemo(node as ts.ClassDeclaration, componentFile) + } + return ts.visitEachChild(node, visit, context); + } + return (sourceFile) => { componentFile.sourceFile = sourceFile; return ts.visitNode(sourceFile, visit) }; + } +} + +export function interfaceTransformer(program: ts.Program, componentFile: ComponentFile): ts.TransformerFactory<ts.SourceFile> { + return (context) => { + const visit: ts.Visitor = (node) => { + if (isComponentInterface(node)) { + componentFile.appendFunction(handleComponentInterface(node as ts.InterfaceDeclaration, componentFile)) + return undefined; + } + if (isComponentHerirage(node)) { + return transformComponentAttribute(node as ts.ClassDeclaration) + } + return ts.visitEachChild(node, visit, context); + }; + + return (sourceFile) => ts.visitNode(sourceFile, visit); + }; +} + +export function componentInterfaceCollector(program: ts.Program, componentFile: ComponentFile): ts.TransformerFactory<ts.SourceFile> { + return (context) => { + const visit: ts.Visitor = (node) => { + if (isComponentAttribute(node)) { + const attributeName = (node as ts.ClassDeclaration).name!.escapedText as string + componentFile.componentName = attributeName.replaceAll('Attribute', ''); + const baseTypes = analyzeBaseClasses(node as ts.ClassDeclaration, componentFile.sourceFile, program); + uiconfig.addComponentAttributeHeritage([attributeName, ...baseTypes]) + } + return ts.visitEachChild(node, visit, context); + }; + + return (sourceFile) => ts.visitNode(sourceFile, visit); + }; +} \ No newline at end of file diff --git a/build-tools/arkui_transformer/src/lib/attribute_utils.ts b/build-tools/arkui_transformer/src/lib/attribute_utils.ts new file mode 100644 index 0000000000000000000000000000000000000000..61a71c6091ce5f87c475395f3e011a4be76801c7 --- /dev/null +++ b/build-tools/arkui_transformer/src/lib/attribute_utils.ts @@ -0,0 +1,149 @@ + +import * as ts from "typescript"; + +import uiconfig from '../arkui_config_util' + +/** + * Analyzes the base classes of a given class declaration and collects their names recursively. + * + * @param classNode - The TypeScript class declaration node to analyze. + * @param sourceFile - The source file containing the class declaration. + * @param program - The TypeScript program instance used for type checking. + * + * @returns void + * + * This function traverses the inheritance hierarchy of the specified class declaration, + * extracting the names of all base classes. It uses the TypeScript type checker to resolve + * symbols and declarations of base classes, ensuring accurate identification of inherited types. + */ +export function analyzeBaseClasses(classNode: ts.ClassDeclaration, sourceFile: ts.SourceFile, program: ts.Program) { + const className = classNode.name!.escapedText!; + const baseTypes: string[] = []; + const checker = program.getTypeChecker(); + + + const extractTypeName = (expr: ts.Expression): string | null => { + if (ts.isIdentifier(expr)) { + return expr.text; + } else if (ts.isPropertyAccessExpression(expr)) { + return `${extractTypeName(expr.expression)}.${expr.name.text}`; + } + return null; + } + + const findBase = (currentClass: ts.ClassDeclaration) => { + if (!currentClass.heritageClauses) return; + + for (const heritage of currentClass.heritageClauses) { + if (heritage.token === ts.SyntaxKind.ExtendsKeyword) { + for (const type of heritage.types) { + const baseName = extractTypeName(type.expression); + if (baseName) { + baseTypes.push(baseName); + const baseSymbol = checker.getSymbolAtLocation(type.expression); + if (baseSymbol) { + const baseDeclarations = baseSymbol.getDeclarations(); + if (baseDeclarations) { + baseDeclarations.forEach(decl => { + if (ts.isClassDeclaration(decl)) { + findBase(decl); + } + }); + } + } + } + } + } + } + }; + + findBase(classNode); + return baseTypes +} + +export function getBaseClassName(classNode: ts.ClassDeclaration): string | undefined { + if (!classNode.heritageClauses) return undefined; + + for (const heritage of classNode.heritageClauses) { + if (heritage.token === ts.SyntaxKind.ExtendsKeyword) { + for (const type of heritage.types) { + const baseName = type.expression.getText(); + return baseName; + } + } + } + return undefined; +} + +export function isComponentHerirage(node: ts.Node): boolean { + if (!ts.isClassDeclaration(node) && !ts.isInterfaceDeclaration(node)) { + return false; + } + return uiconfig.isUIHeritage(node.name!.escapedText!) +} + +export function removeDuplicateMethods(methods: ts.MethodSignature[]): ts.MethodSignature[] { + const seenSignatures = new Set<string>(); + + return methods.filter(method => { + const signatureKey = getMethodCharacteristic(method); + + if (seenSignatures.has(signatureKey)) { + return false; + } + + seenSignatures.add(signatureKey); + return true; + }); +} + +export function getMethodCharacteristic( + node: ts.MethodSignature +): string { + const methodName = node.name.getText(); + + const params = node.parameters.map((param) => { + const typeNode = param.type; + let typeText: string; + + if (typeNode) { + if (ts.isUnionTypeNode(typeNode)) { + const types = typeNode.types; + typeText = types.map((t) => { + if (ts.isTypeReferenceNode(t)) { + return t.getText(); + } + return t.kind.toString(); + }).join('|') || 'any'; + } else { + throw new Error("UnExpected type node kind"); + } + } else { + throw new Error("UnExpected type node kind"); + } + + return typeText; + }); + + return `${methodName}(${params.join(',')})`; +} + +export function mergeUniqueOrdered(arr1: string[], arr2: string[]): string[] { + const seen = new Set<string>(); + const result: string[] = []; + for (const item of arr1) { + if (!seen.has(item)) { + seen.add(item); + result.push(item); + } + } + + for (const item of arr2) { + if (!seen.has(item)) { + seen.add(item); + result.push(item); + } + } + + return result; +} diff --git a/build-tools/arkui_transformer/tsconfig.arkui.json b/build-tools/arkui_transformer/tsconfig.arkui.json new file mode 100644 index 0000000000000000000000000000000000000000..0c98cc58610e3797dc574c8f94e88f42d4bdbab6 --- /dev/null +++ b/build-tools/arkui_transformer/tsconfig.arkui.json @@ -0,0 +1,15 @@ +{ + "compilerOptions": { + "allowJs": true, + "noEmitOnError": true, + "skipLibCheck": true, + "plugins": [ + { + "transform": "/home/leslie/openharmony/src/interface/sdk-js/build-tools/dist/arkui_transformer.js", + } + ], + }, + "include": [ + "../etstest/foo.ts" + ] +} \ No newline at end of file diff --git a/build-tools/arkui_transformer/tsconfig.json b/build-tools/arkui_transformer/tsconfig.json new file mode 100644 index 0000000000000000000000000000000000000000..d51cda3fc2d2e5248c2da7cd46bced2498f823c4 --- /dev/null +++ b/build-tools/arkui_transformer/tsconfig.json @@ -0,0 +1,17 @@ +{ + "compilerOptions": { + "module": "esnext", + "target": "ESNext", + "moduleResolution": "node", + "outDir": "./build", + "rootDir": "./src", + "sourceMap": true, + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + }, + "include": [ + "src/*.ts" + ] +} \ No newline at end of file diff --git a/build-tools/delete_systemapi_plugin.js b/build-tools/delete_systemapi_plugin.js index e3a439aa11d69c8730360f4c860e1bed48df8a2a..9b52240365453a143398781e01c1187758986ff6 100644 --- a/build-tools/delete_systemapi_plugin.js +++ b/build-tools/delete_systemapi_plugin.js @@ -15,10 +15,14 @@ const path = require('path'); const fs = require('fs'); const ts = require('typescript'); +const commander = require('commander'); let sourceFile = null; let lastNoteStr = ''; let lastNodeName = ''; +let etsType = 'ets'; +let componentEtsFiles = []; +let componentEtsDeleteFiles = []; const referencesMap = new Map(); const referencesModuleMap = new Map(); const kitFileNeedDeleteMap = new Map(); @@ -37,14 +41,33 @@ const PATT = { REFERENCEURL_RIGHTSDK: /(..\/)(\S*)build-tools\/ets-loader\/declarations\/(\S*)/g, REFERENCEURL_SDK: /(..\/)(\S*)component\/(\S*)/g, }; -function collectDeclaration(url) { + +function start() { + const program = new commander.Command(); + program + .name('deleteSystemApi') + .version('0.0.1'); + program + .option('--input <string>', 'path name') + .option('--output <string>', 'output path') + .option('--type <string>', 'ets type') + .action((opts) => { + outputPath = opts.output; + inputDir = opts.input; + etsType = opts.type; + collectDeclaration(opts.input); + }); + program.parse(process.argv); +} + +function collectDeclaration(inputDir) { // 入口 try { - const utPath = path.resolve(__dirname, url); - const arktsPath = path.resolve(utPath, '../arkts'); - const kitPath = path.resolve(utPath, '../kits'); + const arktsPath = path.resolve(inputDir, '../arkts'); + const kitPath = path.resolve(inputDir, '../kits'); const utFiles = []; - readFile(utPath, utFiles); // 读取文件 + collectComponentEtsFiles(); + readFile(inputDir, utFiles); // 读取文件 readFile(arktsPath, utFiles); // 读取文件 tsTransform(utFiles, deleteSystemApi); tsTransformKitFile(kitPath); @@ -53,6 +76,20 @@ function collectDeclaration(url) { } } +function collectComponentEtsFiles() { + const ComponentDir = path.resolve(inputDir, '@internal', 'component', 'ets'); + readFile(ComponentDir, componentEtsFiles); // 读取文件 + const arkuiComponentDir = path.resolve(inputDir, 'arkui', 'component'); + readFile(arkuiComponentDir, componentEtsFiles); // 读取文件 + componentEtsFiles = componentEtsFiles.map(item => { + return getPureName(item); + }); +} + +function getPureName(name) { + return path.basename(name).replace('.d.ts', '').replace('.d.ets', '').replace(/_/g, '').toLowerCase(); +} + /** * 解析url目录下方的kit文件,删除对应systemapi * @param { string } kitPath kit文件路径 @@ -103,10 +140,10 @@ function getKitNewSourceFile(sourceFile, kitName) { copyrightMessage = sourceFile.getFullText().replace(sourceFile.getText(), ''); } } else if (ts.isExportDeclaration(statement)) { - const exportSpecifiers = statement.exportClause.elements.filter((item) => { + const exportSpecifiers = statement.exportClause?.elements?.filter((item) => { return !needDeleteExportName.has(item.name.escapedText.toString()); }); - if (exportSpecifiers.length !== 0) { + if (exportSpecifiers && exportSpecifiers.length !== 0) { statement.exportClause = factory.updateNamedExports(statement.exportClause, exportSpecifiers); newStatements.push(statement); } @@ -116,6 +153,21 @@ function getKitNewSourceFile(sourceFile, kitName) { return { sourceFile, copyrightMessage }; } +function addImportToNeedDeleteExportName(importClause, needDeleteExportName) { + if (importClause.name) { + needDeleteExportName.add(importClause.name.escapedText.toString()); + } + const namedBindings = importClause.namedBindings; + if (namedBindings !== undefined && ts.isNamedImports(namedBindings)) { + const elements = namedBindings.elements; + elements.forEach((element) => { + const exportName = element.propertyName ? + element.propertyName.escapedText.toString() : + element.name.escapedText.toString(); + needDeleteExportName.add(element.name.escapedText.toString()); + }); + } +} /** * 根据节点和需要删除的节点数据生成新节点 * @param { ts.ImportDeclaration } statement 需要处理的import节点 @@ -132,8 +184,12 @@ function processKitImportDeclaration(statement, needDeleteExportName) { } const importPath = statement.moduleSpecifier.text.replace('../', ''); if (kitFileNeedDeleteMap === undefined || !kitFileNeedDeleteMap.has(importPath)) { - const hasFilePath = hasFileByImportPath(importPath); - return hasFilePath ? statement : undefined; + const hasFilePath = hasFileByImportPath(importPath, inputDir); + if (hasFilePath) { + return statement; + } + addImportToNeedDeleteExportName(importClause, needDeleteExportName); + return undefined; } const currImportInfo = kitFileNeedDeleteMap.get(importPath); let defaultName = ''; @@ -178,18 +234,34 @@ function processKitImportDeclaration(statement, needDeleteExportName) { /** * 判断文件路径对应的文件是否存在 * @param {string} importPath kit文件import + * @param {string} apiDir 引用接口所在目录 * @returns {boolean} importPath是否存在 */ -function hasFileByImportPath(importPath) { - let fileDir = path.resolve(apiSourcePath); +function hasFileByImportPath(importPath, apiDir) { + let fileDir = path.resolve(apiDir); if (importPath.startsWith('@arkts')) { - fileDir = path.resolve(apiSourcePath, '../arkts'); + fileDir = path.resolve(inputDir, '../arkts'); + } + return isExistArkUIFile(path.resolve(inputDir, 'arkui', 'component'), importPath) || + isExistImportFile(fileDir, importPath); +} + +function isExistArkUIFile(resolvedPath, importPath) { + const filePath = path.resolve(resolvedPath, importPath); + if ( + filePath.includes(path.resolve(inputDir, '@internal', 'component', 'ets')) || + filePath.includes(path.resolve(inputDir, 'arkui', 'component')) + ) { + const fileName = getPureName(filePath); + return componentEtsFiles.includes(fileName); } - const flag = ['.d.ts', '.d.ets'].some(ext => { - const filePath = path.resolve(fileDir, `${importPath}${ext}`); - return fs.existsSync(filePath); + return isExistImportFile(resolvedPath, importPath); +} + +function isExistImportFile(fileDir, importPath) { + return ['.d.ts', '.d.ets'].some(ext => { + return fs.existsSync(path.resolve(fileDir, `${importPath}${ext}`)); }); - return flag; } /** @@ -213,6 +285,9 @@ function processFileNameWithoutExt(filePath) { .replace(/\.ets$/g, ''); } +function isArkTsSpecialSyntax(content) { + return /\@memo|(?<!\*\s*)\s*\@interface/.test(content); +} /** * 遍历所有文件进行处理 * @param {Array} utFiles 所有文件 @@ -221,13 +296,18 @@ function processFileNameWithoutExt(filePath) { function tsTransform(utFiles, callback) { utFiles.forEach((url) => { const apiBaseName = path.basename(url); - if (/\.json/.test(url) || apiBaseName === 'index-full.d.ts') { + let content = fs.readFileSync(url, 'utf-8'); // 文件内容 + if (isArkTsSpecialSyntax(content)) { + if (!/\@systemapi/.test(content)) { + writeFile(url, content); + } + return; + } + if (/\.json/.test(url) || apiBaseName === 'index-full.d.ts' || !/\@systemapi/.test(content) && apiBaseName !== '@ohos.arkui.component.d.ets') { // 特殊类型文件处理 - const content = fs.readFileSync(url, 'utf-8'); writeFile(url, content); } else if (/\.d\.ts/.test(apiBaseName) || /\.d\.ets/.test(apiBaseName)) { // dts文件处理 - let content = fs.readFileSync(url, 'utf-8'); // 文件内容 const fileName = processFileName(url); let references = content.match(PATT.GET_REFERENCE); if (references) { @@ -334,10 +414,7 @@ function readFile(dir, utFiles) { } function writeFile(url, data, option) { - if (fs.existsSync(outputPath)) { - fs.rmdirSync(outputPath, { recursive: true }); - } - const newFilePath = path.resolve(outputPath, path.relative(__dirname, url)); + const newFilePath = path.resolve(outputPath, path.relative(inputDir.replace('api', ''), url)); fs.mkdir(path.dirname(newFilePath), { recursive: true }, (err) => { if (err) { console.log(`ERROR FOR CREATE PATH ${err}`); @@ -526,9 +603,8 @@ function formatAllNodesImportDeclaration(node, statement, url, currReferencesMod } } const importSpecifier = statement.moduleSpecifier.getText().replace(/[\'\"]/g, ''); - const dtsImportSpecifierPath = path.resolve(url, `../${importSpecifier}.d.ts`); // import 文件路径判断 - const detsImportSpecifierPath = path.resolve(url, `../${importSpecifier}.d.ets`); // import 文件路径判断 - let hasImportSpecifierFile = fs.existsSync(dtsImportSpecifierPath) || fs.existsSync(detsImportSpecifierPath); + const fileDir = path.dirname(url); + let hasImportSpecifierFile = hasFileByImportPath(importSpecifier, fileDir); let hasImportSpecifierInModules = globalModules.has(importSpecifier); if ((hasImportSpecifierFile || hasImportSpecifierInModules) && clauseSet.size > 0) { let currModule = []; @@ -635,7 +711,7 @@ function deleteSystemApi(url) { kitName = RegExp.$1.replace(/\s/g, ''); } sourceFile = node; - const deleteNode = processSourceFile(node, kitName); // 处理最外层节点 + const deleteNode = processSourceFile(node, kitName, url); // 处理最外层节点 node = processVisitEachChild(context, deleteNode.node); if (!isEmptyFile(node)) { const printer = ts.createPrinter({ newLine: ts.NewLineKind.LineFeed }); @@ -671,7 +747,7 @@ exports.deleteSystemApi = deleteSystemApi; * @param kitName 当前文件kitName * @returns */ -function processSourceFile(node, kitName) { +function processSourceFile(node, kitName, url) { let isCopyrightDeleted = false; const newStatements = []; const newStatementsWithoutExport = []; @@ -684,6 +760,15 @@ function processSourceFile(node, kitName) { isCopyrightDeleted = addNewStatements(node, newStatements, deleteSystemApiSet, needDeleteExport); newStatements.forEach((statement) => { const names = getExportIdentifierName(statement); + if (ts.isExportDeclaration(statement) && statement.moduleSpecifier && statement.moduleSpecifier.text.startsWith('./arkui/component/')) { + const importPath = statement.moduleSpecifier.text.replace('./arkui/component/', ''); + const isDeleteSystemFile = componentEtsDeleteFiles.includes(getPureName(importPath)); + const hasEtsFile = componentEtsFiles.includes(getPureName(importPath)); + const existFile = isExistImportFile(path.dirname(url), statement.moduleSpecifier.text.toString()); + if (isDeleteSystemFile || !hasEtsFile && !existFile) { + return; + } + } if (names.length === 0) { newStatementsWithoutExport.push(statement); return; @@ -1069,9 +1154,13 @@ function isEmptyFile(node) { break; } } + const fileName = getPureName(node.fileName.replace('.ts', '').replace('.ets', '')); + if (isEmpty && componentEtsFiles.includes(fileName)) { + componentEtsDeleteFiles.push(fileName); + } return isEmpty; } -const apiSourcePath = '../api'; -const outputPath = path.resolve(__dirname, 'output'); -collectDeclaration(apiSourcePath); //入口 +let outputPath = ''; +let inputDir = ''; +start(); diff --git a/build-tools/dts_parser/build_package/JS_API_COUNT.js b/build-tools/dts_parser/build_package/JS_API_COUNT.js deleted file mode 100644 index ab3299a898307635e1bfce63d0617e5ef03e75c8..0000000000000000000000000000000000000000 --- a/build-tools/dts_parser/build_package/JS_API_COUNT.js +++ /dev/null @@ -1,117 +0,0 @@ -/*! version:1.0.0 */(()=>{var __webpack_modules__={49792:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CsvFormatterStream=void 0;const n=r(2203),i=r(17693);class a extends n.Transform{constructor(e){super({writableObjectMode:e.objectMode}),this.hasWrittenBOM=!1,this.formatterOptions=e,this.rowFormatter=new i.RowFormatter(e),this.hasWrittenBOM=!e.writeBOM}transform(e){return this.rowFormatter.rowTransform=e,this}_transform(e,t,r){let n=!1;try{this.hasWrittenBOM||(this.push(this.formatterOptions.BOM),this.hasWrittenBOM=!0),this.rowFormatter.format(e,((e,t)=>e?(n=!0,r(e)):(t&&t.forEach((e=>{this.push(Buffer.from(e,"utf8"))})),n=!0,r())))}catch(e){if(n)throw e;r(e)}}_flush(e){this.rowFormatter.finish(((t,r)=>t?e(t):(r&&r.forEach((e=>{this.push(Buffer.from(e,"utf8"))})),e())))}}t.CsvFormatterStream=a},68502:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormatterOptions=void 0;t.FormatterOptions=class{constructor(e={}){var t;this.objectMode=!0,this.delimiter=",",this.rowDelimiter="\n",this.quote='"',this.escape=this.quote,this.quoteColumns=!1,this.quoteHeaders=this.quoteColumns,this.headers=null,this.includeEndRowDelimiter=!1,this.writeBOM=!1,this.BOM="\ufeff",this.alwaysWriteHeaders=!1,Object.assign(this,e||{}),void 0===(null==e?void 0:e.quoteHeaders)&&(this.quoteHeaders=this.quoteColumns),!0===(null==e?void 0:e.quote)?this.quote='"':!1===(null==e?void 0:e.quote)&&(this.quote=""),"string"!=typeof(null==e?void 0:e.escape)&&(this.escape=this.quote),this.shouldWriteHeaders=!!this.headers&&(null===(t=e.writeHeaders)||void 0===t||t),this.headers=Array.isArray(this.headers)?this.headers:null,this.escapedQuote=`${this.escape}${this.quote}`}}},68091:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FieldFormatter=void 0;const i=n(r(87914)),a=n(r(74733)),o=n(r(10912));t.FieldFormatter=class{constructor(e){this._headers=null,this.formatterOptions=e,null!==e.headers&&(this.headers=e.headers),this.REPLACE_REGEXP=new RegExp(e.quote,"g");const t=`[${e.delimiter}${o.default(e.rowDelimiter)}|\r|\n]`;this.ESCAPE_REGEXP=new RegExp(t)}set headers(e){this._headers=e}shouldQuote(e,t){const r=t?this.formatterOptions.quoteHeaders:this.formatterOptions.quoteColumns;return i.default(r)?r:Array.isArray(r)?r[e]:null!==this._headers&&r[this._headers[e]]}format(e,t,r){const n=`${a.default(e)?"":e}`.replace(/\0/g,""),{formatterOptions:i}=this;if(""!==i.quote){if(-1!==n.indexOf(i.quote))return this.quoteField(n.replace(this.REPLACE_REGEXP,i.escapedQuote))}return-1!==n.search(this.ESCAPE_REGEXP)||this.shouldQuote(t,r)?this.quoteField(n):n}quoteField(e){const{quote:t}=this.formatterOptions;return`${t}${e}${t}`}}},50803:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RowFormatter=void 0;const i=n(r(85710)),a=n(r(8142)),o=r(68091),s=r(90565);class c{constructor(e){this.rowCount=0,this.formatterOptions=e,this.fieldFormatter=new o.FieldFormatter(e),this.headers=e.headers,this.shouldWriteHeaders=e.shouldWriteHeaders,this.hasWrittenHeaders=!1,null!==this.headers&&(this.fieldFormatter.headers=this.headers),e.transform&&(this.rowTransform=e.transform)}static isRowHashArray(e){return!!Array.isArray(e)&&(Array.isArray(e[0])&&2===e[0].length)}static isRowArray(e){return Array.isArray(e)&&!this.isRowHashArray(e)}static gatherHeaders(e){return c.isRowHashArray(e)?e.map((e=>e[0])):Array.isArray(e)?e:Object.keys(e)}static createTransform(e){return s.isSyncTransform(e)?(t,r)=>{let n=null;try{n=e(t)}catch(e){return r(e)}return r(null,n)}:(t,r)=>{e(t,r)}}set rowTransform(e){if(!i.default(e))throw new TypeError("The transform should be a function");this._rowTransform=c.createTransform(e)}format(e,t){this.callTransformer(e,((r,n)=>{if(r)return t(r);if(!e)return t(null);const i=[];if(n){const{shouldFormatColumns:e,headers:t}=this.checkHeaders(n);if(this.shouldWriteHeaders&&t&&!this.hasWrittenHeaders&&(i.push(this.formatColumns(t,!0)),this.hasWrittenHeaders=!0),e){const e=this.gatherColumns(n);i.push(this.formatColumns(e,!1))}}return t(null,i)}))}finish(e){const t=[];if(this.formatterOptions.alwaysWriteHeaders&&0===this.rowCount){if(!this.headers)return e(new Error("`alwaysWriteHeaders` option is set to true but `headers` option not provided."));t.push(this.formatColumns(this.headers,!0))}return this.formatterOptions.includeEndRowDelimiter&&t.push(this.formatterOptions.rowDelimiter),e(null,t)}checkHeaders(e){if(this.headers)return{shouldFormatColumns:!0,headers:this.headers};const t=c.gatherHeaders(e);return this.headers=t,this.fieldFormatter.headers=t,this.shouldWriteHeaders?{shouldFormatColumns:!a.default(t,e),headers:t}:{shouldFormatColumns:!0,headers:null}}gatherColumns(e){if(null===this.headers)throw new Error("Headers is currently null");return Array.isArray(e)?c.isRowHashArray(e)?this.headers.map(((t,r)=>{const n=e[r];return n?n[1]:""})):c.isRowArray(e)&&!this.shouldWriteHeaders?e:this.headers.map(((t,r)=>e[r])):this.headers.map((t=>e[t]))}callTransformer(e,t){return this._rowTransform?this._rowTransform(e,t):t(null,e)}formatColumns(e,t){const r=e.map(((e,r)=>this.fieldFormatter.format(e,r,t))).join(this.formatterOptions.delimiter),{rowCount:n}=this;return this.rowCount+=1,n?[this.formatterOptions.rowDelimiter,r].join(""):r}}t.RowFormatter=c},17693:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FieldFormatter=t.RowFormatter=void 0;var n=r(50803);Object.defineProperty(t,"RowFormatter",{enumerable:!0,get:function(){return n.RowFormatter}});var i=r(68091);Object.defineProperty(t,"FieldFormatter",{enumerable:!0,get:function(){return i.FieldFormatter}})},1696:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.writeToPath=t.writeToString=t.writeToBuffer=t.writeToStream=t.write=t.format=t.FormatterOptions=t.CsvFormatterStream=void 0;const s=r(39023),c=r(2203),l=a(r(79896)),u=r(68502),d=r(49792);o(r(90565),t);var p=r(49792);Object.defineProperty(t,"CsvFormatterStream",{enumerable:!0,get:function(){return p.CsvFormatterStream}});var f=r(68502);Object.defineProperty(t,"FormatterOptions",{enumerable:!0,get:function(){return f.FormatterOptions}}),t.format=e=>new d.CsvFormatterStream(new u.FormatterOptions(e)),t.write=(e,r)=>{const n=t.format(r),i=s.promisify(((e,t)=>{n.write(e,void 0,t)}));return e.reduce(((e,t)=>e.then((()=>i(t)))),Promise.resolve()).then((()=>n.end())).catch((e=>{n.emit("error",e)})),n},t.writeToStream=(e,r,n)=>t.write(r,n).pipe(e),t.writeToBuffer=(e,r={})=>{const n=[],i=new c.Writable({write(e,t,r){n.push(e),r()}});return new Promise(((a,o)=>{i.on("error",o).on("finish",(()=>a(Buffer.concat(n)))),t.write(e,r).pipe(i)}))},t.writeToString=(e,r)=>t.writeToBuffer(e,r).then((e=>e.toString())),t.writeToPath=(e,r,n)=>{const i=l.createWriteStream(e,{encoding:"utf8"});return t.write(r,n).pipe(i)}},90565:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSyncTransform=void 0,t.isSyncTransform=e=>1===e.length},68273:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CsvParserStream=void 0;const n=r(13193),i=r(2203),a=r(55698),o=r(65856);class s extends i.Transform{constructor(e){super({objectMode:e.objectMode}),this.lines="",this.rowCount=0,this.parsedRowCount=0,this.parsedLineCount=0,this.endEmitted=!1,this.headersEmitted=!1,this.parserOptions=e,this.parser=new o.Parser(e),this.headerTransformer=new a.HeaderTransformer(e),this.decoder=new n.StringDecoder(e.encoding),this.rowTransformerValidator=new a.RowTransformerValidator}get hasHitRowLimit(){return this.parserOptions.limitRows&&this.rowCount>=this.parserOptions.maxRows}get shouldEmitRows(){return this.parsedRowCount>this.parserOptions.skipRows}get shouldSkipLine(){return this.parsedLineCount<=this.parserOptions.skipLines}transform(e){return this.rowTransformerValidator.rowTransform=e,this}validate(e){return this.rowTransformerValidator.rowValidator=e,this}emit(e,...t){return"end"===e?(this.endEmitted||(this.endEmitted=!0,super.emit("end",this.rowCount)),!1):super.emit(e,...t)}_transform(e,t,r){if(this.hasHitRowLimit)return r();const n=s.wrapDoneCallback(r);try{const{lines:t}=this,r=t+this.decoder.write(e),i=this.parse(r,!0);return this.processRows(i,n)}catch(e){return n(e)}}_flush(e){const t=s.wrapDoneCallback(e);if(this.hasHitRowLimit)return t();try{const e=this.lines+this.decoder.end(),r=this.parse(e,!1);return this.processRows(r,t)}catch(e){return t(e)}}parse(e,t){if(!e)return[];const{line:r,rows:n}=this.parser.parse(e,t);return this.lines=r,n}processRows(e,t){const r=e.length,n=i=>{const a=e=>e?t(e):i%100!=0?n(i+1):void setImmediate((()=>n(i+1)));if(this.checkAndEmitHeaders(),i>=r||this.hasHitRowLimit)return t();if(this.parsedLineCount+=1,this.shouldSkipLine)return a();const o=e[i];this.rowCount+=1,this.parsedRowCount+=1;const s=this.rowCount;return this.transformRow(o,((e,t)=>{if(e)return this.rowCount-=1,a(e);if(!t)return a(new Error("expected transform result"));if(t.isValid){if(t.row)return this.pushRow(t.row,a)}else this.emit("data-invalid",t.row,s,t.reason);return a()}))};n(0)}transformRow(e,t){try{this.headerTransformer.transform(e,((r,n)=>r?t(r):n?n.isValid?n.row?this.shouldEmitRows?this.rowTransformerValidator.transformAndValidate(n.row,t):this.skipRow(t):(this.rowCount-=1,this.parsedRowCount-=1,t(null,{row:null,isValid:!0})):this.shouldEmitRows?t(null,{isValid:!1,row:e}):this.skipRow(t):t(new Error("Expected result from header transform"))))}catch(e){t(e)}}checkAndEmitHeaders(){!this.headersEmitted&&this.headerTransformer.headers&&(this.headersEmitted=!0,this.emit("headers",this.headerTransformer.headers))}skipRow(e){return this.rowCount-=1,e(null,{row:null,isValid:!0})}pushRow(e,t){try{this.parserOptions.objectMode?this.push(e):this.push(JSON.stringify(e)),t()}catch(e){t(e)}}static wrapDoneCallback(e){let t=!1;return(r,...n)=>{if(r){if(t)throw r;return t=!0,void e(r)}e(...n)}}}t.CsvParserStream=s},96793:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ParserOptions=void 0;const i=n(r(10912)),a=n(r(74733));t.ParserOptions=class{constructor(e){var t;if(this.objectMode=!0,this.delimiter=",",this.ignoreEmpty=!1,this.quote='"',this.escape=null,this.escapeChar=this.quote,this.comment=null,this.supportsComments=!1,this.ltrim=!1,this.rtrim=!1,this.trim=!1,this.headers=null,this.renameHeaders=!1,this.strictColumnHandling=!1,this.discardUnmappedColumns=!1,this.carriageReturn="\r",this.encoding="utf8",this.limitRows=!1,this.maxRows=0,this.skipLines=0,this.skipRows=0,Object.assign(this,e||{}),this.delimiter.length>1)throw new Error("delimiter option must be one character long");this.escapedDelimiter=i.default(this.delimiter),this.escapeChar=null!==(t=this.escape)&&void 0!==t?t:this.quote,this.supportsComments=!a.default(this.comment),this.NEXT_TOKEN_REGEXP=new RegExp(`([^\\s]|\\r\\n|\\n|\\r|${this.escapedDelimiter})`),this.maxRows>0&&(this.limitRows=!0)}}},77190:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.parseString=t.parseFile=t.parseStream=t.parse=t.ParserOptions=t.CsvParserStream=void 0;const s=a(r(79896)),c=r(2203),l=r(96793),u=r(68273);o(r(50331),t);var d=r(68273);Object.defineProperty(t,"CsvParserStream",{enumerable:!0,get:function(){return d.CsvParserStream}});var p=r(96793);Object.defineProperty(t,"ParserOptions",{enumerable:!0,get:function(){return p.ParserOptions}}),t.parse=e=>new u.CsvParserStream(new l.ParserOptions(e)),t.parseStream=(e,t)=>e.pipe(new u.CsvParserStream(new l.ParserOptions(t))),t.parseFile=(e,t={})=>s.createReadStream(e).pipe(new u.CsvParserStream(new l.ParserOptions(t))),t.parseString=(e,t)=>{const r=new c.Readable;return r.push(e),r.push(null),r.pipe(new u.CsvParserStream(new l.ParserOptions(t)))}},1381:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;const n=r(77366),i=r(57291),a=r(7757);class o{constructor(e){this.parserOptions=e,this.rowParser=new i.RowParser(this.parserOptions)}static removeBOM(e){return e&&65279===e.charCodeAt(0)?e.slice(1):e}parse(e,t){const r=new n.Scanner({line:o.removeBOM(e),parserOptions:this.parserOptions,hasMoreData:t});return this.parserOptions.supportsComments?this.parseWithComments(r):this.parseWithoutComments(r)}parseWithoutComments(e){const t=[];let r=!0;for(;r;)r=this.parseRow(e,t);return{line:e.line,rows:t}}parseWithComments(e){const{parserOptions:t}=this,r=[];for(let n=e.nextCharacterToken;null!==n;n=e.nextCharacterToken)if(a.Token.isTokenComment(n,t)){if(null===e.advancePastLine())return{line:e.lineFromCursor,rows:r};if(!e.hasMoreCharacters)return{line:e.lineFromCursor,rows:r};e.truncateToCursor()}else if(!this.parseRow(e,r))break;return{line:e.line,rows:r}}parseRow(e,t){if(!e.nextNonSpaceToken)return!1;const r=this.rowParser.parse(e);return null!==r&&(this.parserOptions.ignoreEmpty&&i.RowParser.isEmptyRow(r)||t.push(r),!0)}}t.Parser=o},57291:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RowParser=void 0;const n=r(95779),i=r(7757);t.RowParser=class{constructor(e){this.parserOptions=e,this.columnParser=new n.ColumnParser(e)}static isEmptyRow(e){return""===e.join("").replace(/\s+/g,"")}parse(e){const{parserOptions:t}=this,{hasMoreData:r}=e,n=e,a=[];let o=this.getStartToken(n,a);for(;o;){if(i.Token.isTokenRowDelimiter(o))return n.advancePastToken(o),!n.hasMoreCharacters&&i.Token.isTokenCarriageReturn(o,t)&&r?null:(n.truncateToCursor(),a);if(!this.shouldSkipColumnParse(n,o,a)){const e=this.columnParser.parse(n);if(null===e)return null;a.push(e)}o=n.nextNonSpaceToken}return r?null:(n.truncateToCursor(),a)}getStartToken(e,t){const r=e.nextNonSpaceToken;return null!==r&&i.Token.isTokenDelimiter(r,this.parserOptions)?(t.push(""),e.nextNonSpaceToken):r}shouldSkipColumnParse(e,t,r){const{parserOptions:n}=this;if(i.Token.isTokenDelimiter(t,n)){e.advancePastToken(t);const a=e.nextCharacterToken;if(!e.hasMoreCharacters||null!==a&&i.Token.isTokenRowDelimiter(a))return r.push(""),!0;if(null!==a&&i.Token.isTokenDelimiter(a,n))return r.push(""),!0}return!1}}},77366:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Scanner=void 0;const n=r(7757),i=/((?:\r\n)|\n|\r)/;t.Scanner=class{constructor(e){this.cursor=0,this.line=e.line,this.lineLength=this.line.length,this.parserOptions=e.parserOptions,this.hasMoreData=e.hasMoreData,this.cursor=e.cursor||0}get hasMoreCharacters(){return this.lineLength>this.cursor}get nextNonSpaceToken(){const{lineFromCursor:e}=this,t=this.parserOptions.NEXT_TOKEN_REGEXP;if(-1===e.search(t))return null;const r=t.exec(e);if(null==r)return null;const i=r[1],a=this.cursor+(r.index||0);return new n.Token({token:i,startCursor:a,endCursor:a+i.length-1})}get nextCharacterToken(){const{cursor:e,lineLength:t}=this;return t<=e?null:new n.Token({token:this.line[e],startCursor:e,endCursor:e})}get lineFromCursor(){return this.line.substr(this.cursor)}advancePastLine(){const e=i.exec(this.lineFromCursor);return e?(this.cursor+=(e.index||0)+e[0].length,this):this.hasMoreData?null:(this.cursor=this.lineLength,this)}advanceTo(e){return this.cursor=e,this}advanceToToken(e){return this.cursor=e.startCursor,this}advancePastToken(e){return this.cursor=e.endCursor+1,this}truncateToCursor(){return this.line=this.lineFromCursor,this.lineLength=this.line.length,this.cursor=0,this}}},7757:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Token=void 0;t.Token=class{constructor(e){this.token=e.token,this.startCursor=e.startCursor,this.endCursor=e.endCursor}static isTokenRowDelimiter(e){const t=e.token;return"\r"===t||"\n"===t||"\r\n"===t}static isTokenCarriageReturn(e,t){return e.token===t.carriageReturn}static isTokenComment(e,t){return t.supportsComments&&!!e&&e.token===t.comment}static isTokenEscapeCharacter(e,t){return e.token===t.escapeChar}static isTokenQuote(e,t){return e.token===t.quote}static isTokenDelimiter(e,t){return e.token===t.delimiter}}},9651:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnFormatter=void 0;t.ColumnFormatter=class{constructor(e){e.trim?this.format=e=>e.trim():e.ltrim?this.format=e=>e.trimLeft():e.rtrim?this.format=e=>e.trimRight():this.format=e=>e}}},25454:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnParser=void 0;const n=r(73353),i=r(13830),a=r(7757);t.ColumnParser=class{constructor(e){this.parserOptions=e,this.quotedColumnParser=new i.QuotedColumnParser(e),this.nonQuotedColumnParser=new n.NonQuotedColumnParser(e)}parse(e){const{nextNonSpaceToken:t}=e;return null!==t&&a.Token.isTokenQuote(t,this.parserOptions)?(e.advanceToToken(t),this.quotedColumnParser.parse(e)):this.nonQuotedColumnParser.parse(e)}}},73353:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NonQuotedColumnParser=void 0;const n=r(9651),i=r(7757);t.NonQuotedColumnParser=class{constructor(e){this.parserOptions=e,this.columnFormatter=new n.ColumnFormatter(e)}parse(e){if(!e.hasMoreCharacters)return null;const{parserOptions:t}=this,r=[];let n=e.nextCharacterToken;for(;n&&(!i.Token.isTokenDelimiter(n,t)&&!i.Token.isTokenRowDelimiter(n));n=e.nextCharacterToken)r.push(n.token),e.advancePastToken(n);return this.columnFormatter.format(r.join(""))}}},13830:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuotedColumnParser=void 0;const n=r(9651),i=r(7757);t.QuotedColumnParser=class{constructor(e){this.parserOptions=e,this.columnFormatter=new n.ColumnFormatter(e)}parse(e){if(!e.hasMoreCharacters)return null;const t=e.cursor,{foundClosingQuote:r,col:n}=this.gatherDataBetweenQuotes(e);if(!r){if(e.advanceTo(t),!e.hasMoreData)throw new Error(`Parse Error: missing closing: '${this.parserOptions.quote||""}' in line: at '${e.lineFromCursor.replace(/[\r\n]/g,"\\n'")}'`);return null}return this.checkForMalformedColumn(e),n}gatherDataBetweenQuotes(e){const{parserOptions:t}=this;let r=!1,n=!1;const a=[];let o=e.nextCharacterToken;for(;!n&&null!==o;o=e.nextCharacterToken){const s=i.Token.isTokenQuote(o,t);if(!r&&s)r=!0;else if(r)if(i.Token.isTokenEscapeCharacter(o,t)){e.advancePastToken(o);const r=e.nextCharacterToken;null!==r&&(i.Token.isTokenQuote(r,t)||i.Token.isTokenEscapeCharacter(r,t))?(a.push(r.token),o=r):s?n=!0:a.push(o.token)}else s?n=!0:a.push(o.token);e.advancePastToken(o)}return{col:this.columnFormatter.format(a.join("")),foundClosingQuote:n}}checkForMalformedColumn(e){const{parserOptions:t}=this,{nextNonSpaceToken:r}=e;if(r){const n=i.Token.isTokenDelimiter(r,t),a=i.Token.isTokenRowDelimiter(r);if(!n&&!a){const n=e.lineFromCursor.substr(0,10).replace(/[\r\n]/g,"\\n'");throw new Error(`Parse Error: expected: '${t.escapedDelimiter}' OR new line got: '${r.token}'. at '${n}`)}e.advanceToToken(r)}else e.hasMoreData||e.advancePastLine()}}},95779:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnFormatter=t.QuotedColumnParser=t.NonQuotedColumnParser=t.ColumnParser=void 0;var n=r(25454);Object.defineProperty(t,"ColumnParser",{enumerable:!0,get:function(){return n.ColumnParser}});var i=r(73353);Object.defineProperty(t,"NonQuotedColumnParser",{enumerable:!0,get:function(){return i.NonQuotedColumnParser}});var a=r(13830);Object.defineProperty(t,"QuotedColumnParser",{enumerable:!0,get:function(){return a.QuotedColumnParser}});var o=r(9651);Object.defineProperty(t,"ColumnFormatter",{enumerable:!0,get:function(){return o.ColumnFormatter}})},65856:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuotedColumnParser=t.NonQuotedColumnParser=t.ColumnParser=t.Token=t.Scanner=t.RowParser=t.Parser=void 0;var n=r(1381);Object.defineProperty(t,"Parser",{enumerable:!0,get:function(){return n.Parser}});var i=r(57291);Object.defineProperty(t,"RowParser",{enumerable:!0,get:function(){return i.RowParser}});var a=r(77366);Object.defineProperty(t,"Scanner",{enumerable:!0,get:function(){return a.Scanner}});var o=r(7757);Object.defineProperty(t,"Token",{enumerable:!0,get:function(){return o.Token}});var s=r(95779);Object.defineProperty(t,"ColumnParser",{enumerable:!0,get:function(){return s.ColumnParser}}),Object.defineProperty(t,"NonQuotedColumnParser",{enumerable:!0,get:function(){return s.NonQuotedColumnParser}}),Object.defineProperty(t,"QuotedColumnParser",{enumerable:!0,get:function(){return s.QuotedColumnParser}})},57854:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.HeaderTransformer=void 0;const i=n(r(58254)),a=n(r(85710)),o=n(r(90879)),s=n(r(31324));t.HeaderTransformer=class{constructor(e){this.headers=null,this.receivedHeaders=!1,this.shouldUseFirstRow=!1,this.processedFirstRow=!1,this.headersLength=0,this.parserOptions=e,!0===e.headers?this.shouldUseFirstRow=!0:Array.isArray(e.headers)?this.setHeaders(e.headers):a.default(e.headers)&&(this.headersTransform=e.headers)}transform(e,t){return this.shouldMapRow(e)?t(null,this.processRow(e)):t(null,{row:null,isValid:!0})}shouldMapRow(e){const{parserOptions:t}=this;if(!this.headersTransform&&t.renameHeaders&&!this.processedFirstRow){if(!this.receivedHeaders)throw new Error("Error renaming headers: new headers must be provided in an array");return this.processedFirstRow=!0,!1}if(!this.receivedHeaders&&Array.isArray(e)){if(this.headersTransform)this.setHeaders(this.headersTransform(e));else{if(!this.shouldUseFirstRow)return!0;this.setHeaders(e)}return!1}return!0}processRow(e){if(!this.headers)return{row:e,isValid:!0};const{parserOptions:t}=this;if(!t.discardUnmappedColumns&&e.length>this.headersLength){if(!t.strictColumnHandling)throw new Error(`Unexpected Error: column header mismatch expected: ${this.headersLength} columns got: ${e.length}`);return{row:e,isValid:!1,reason:`Column header mismatch expected: ${this.headersLength} columns got: ${e.length}`}}return t.strictColumnHandling&&e.length<this.headersLength?{row:e,isValid:!1,reason:`Column header mismatch expected: ${this.headersLength} columns got: ${e.length}`}:{row:this.mapHeaders(e),isValid:!0}}mapHeaders(e){const t={},{headers:r,headersLength:n}=this;for(let a=0;a<n;a+=1){const n=r[a];if(!i.default(n)){const r=e[a];i.default(r)?t[n]="":t[n]=r}}return t}setHeaders(e){var t;const r=e.filter((e=>!!e));if(o.default(r).length!==r.length){const e=s.default(r),t=Object.keys(e).filter((t=>e[t].length>1));throw new Error(`Duplicate headers found ${JSON.stringify(t)}`)}this.headers=e,this.receivedHeaders=!0,this.headersLength=(null===(t=this.headers)||void 0===t?void 0:t.length)||0}}},77701:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RowTransformerValidator=void 0;const i=n(r(85710)),a=r(50331);class o{constructor(){this._rowTransform=null,this._rowValidator=null}static createTransform(e){return a.isSyncTransform(e)?(t,r)=>{let n=null;try{n=e(t)}catch(e){return r(e)}return r(null,n)}:e}static createValidator(e){return a.isSyncValidate(e)?(t,r)=>{r(null,{row:t,isValid:e(t)})}:(t,r)=>{e(t,((e,n,i)=>e?r(e):r(null,n?{row:t,isValid:n,reason:i}:{row:t,isValid:!1,reason:i})))}}set rowTransform(e){if(!i.default(e))throw new TypeError("The transform should be a function");this._rowTransform=o.createTransform(e)}set rowValidator(e){if(!i.default(e))throw new TypeError("The validate should be a function");this._rowValidator=o.createValidator(e)}transformAndValidate(e,t){return this.callTransformer(e,((e,r)=>e?t(e):r?this.callValidator(r,((e,n)=>e?t(e):n&&!n.isValid?t(null,{row:r,isValid:!1,reason:n.reason}):t(null,{row:r,isValid:!0}))):t(null,{row:null,isValid:!0})))}callTransformer(e,t){return this._rowTransform?this._rowTransform(e,t):t(null,e)}callValidator(e,t){return this._rowValidator?this._rowValidator(e,t):t(null,{row:e,isValid:!0})}}t.RowTransformerValidator=o},55698:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HeaderTransformer=t.RowTransformerValidator=void 0;var n=r(77701);Object.defineProperty(t,"RowTransformerValidator",{enumerable:!0,get:function(){return n.RowTransformerValidator}});var i=r(57854);Object.defineProperty(t,"HeaderTransformer",{enumerable:!0,get:function(){return i.HeaderTransformer}})},50331:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSyncValidate=t.isSyncTransform=void 0,t.isSyncTransform=e=>1===e.length,t.isSyncValidate=e=>1===e.length},68599:(e,t,r)=>{var n=r(63735),i=r(16928),a=r(16308),o=r(40209),s=r(9897),c=r(79001),l=r(53577),u=e.exports={},d=/[\/\\]/g;u.exists=function(){var e=i.join.apply(i,arguments);return n.existsSync(e)},u.expand=function(...e){var t=c(e[0])?e.shift():{},r=Array.isArray(e[0])?e[0]:e;if(0===r.length)return[];var u=function(e,t){var r=[];return a(e).forEach((function(e){var n=0===e.indexOf("!");n&&(e=e.slice(1));var i=t(e);r=n?o(r,i):s(r,i)})),r}(r,(function(e){return l.sync(e,t)}));return t.filter&&(u=u.filter((function(e){e=i.join(t.cwd||"",e);try{return"function"==typeof t.filter?t.filter(e):n.statSync(e)[t.filter]()}catch(e){return!1}}))),u},u.expandMapping=function(e,t,r){r=Object.assign({rename:function(e,t){return i.join(e||"",t)}},r);var n=[],a={};return u.expand(r,e).forEach((function(e){var o=e;r.flatten&&(o=i.basename(o)),r.ext&&(o=o.replace(/(\.[^\/]*)?$/,r.ext));var s=r.rename(t,o,r);r.cwd&&(e=i.join(r.cwd,e)),s=s.replace(d,"/"),e=e.replace(d,"/"),a[s]?a[s].src.push(e):(n.push({src:[e],dest:s}),a[s]=n[n.length-1])})),n},u.normalizeFilesArray=function(e){var t=[];return e.forEach((function(e){("src"in e||"dest"in e)&&t.push(e)})),0===t.length?[]:t=_(t).chain().forEach((function(e){"src"in e&&e.src&&(Array.isArray(e.src)?e.src=a(e.src):e.src=[e.src])})).map((function(e){var t=Object.assign({},e);if(delete t.src,delete t.dest,e.expand)return u.expandMapping(e.src,e.dest,t).map((function(t){var r=Object.assign({},e);return r.orig=Object.assign({},e),r.src=t.src,r.dest=t.dest,["expand","cwd","flatten","rename","ext"].forEach((function(e){delete r[e]})),r}));var r=Object.assign({},e);return r.orig=Object.assign({},e),"src"in r&&Object.defineProperty(r,"src",{enumerable:!0,get:function r(){var n;return"result"in r||(n=e.src,n=Array.isArray(n)?a(n):[n],r.result=u.expand(t,n)),r.result}}),"dest"in r&&(r.dest=e.dest),r})).flatten().value()}},91789:(e,t,r)=>{var n=r(63735),i=r(16928),a=(r(39023),r(85)),o=r(14100),s=r(71676),c=r(2203).Stream,l=r(34254).PassThrough,u=e.exports={};u.file=r(68599),u.collectStream=function(e,t){var r=[],n=0;e.on("error",t),e.on("data",(function(e){r.push(e),n+=e.length})),e.on("end",(function(){var e=new Buffer(n),i=0;r.forEach((function(t){t.copy(e,i),i+=t.length})),t(null,e)}))},u.dateify=function(e){return(e=e||new Date)instanceof Date||(e="string"==typeof e?new Date(e):new Date),e},u.defaults=function(e,t,r){var n=arguments;return n[0]=n[0]||{},s(...n)},u.isStream=function(e){return e instanceof c},u.lazyReadStream=function(e){return new a.Readable((function(){return n.createReadStream(e)}))},u.normalizeInputSource=function(e){if(null===e)return new Buffer(0);if("string"==typeof e)return new Buffer(e);if(u.isStream(e)&&!e._readableState){var t=new l;return e.pipe(t),t}return e},u.sanitizePath=function(e){return o(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,"")},u.trailingSlashIt=function(e){return"/"!==e.slice(-1)?e+"/":e},u.unixifyPath=function(e){return o(e,!1).replace(/^\w+:/,"")},u.walkdir=function(e,t,r){var a=[];"function"==typeof t&&(r=t,t=e),n.readdir(e,(function(o,s){var c,l,d=0;if(o)return r(o);!function o(){if(!(c=s[d++]))return r(null,a);l=i.join(e,c),n.stat(l,(function(e,r){a.push({path:l,relative:i.relative(t,l).replace(/\\/g,"/"),stats:r}),r&&r.isDirectory()?u.walkdir(l,t,(function(e,t){t.forEach((function(e){a.push(e)})),o()})):o()}))}()}))}},18542:(e,t,r)=>{"use strict";var n=r(33225),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(15622));a.inherits=r(72017);var o=r(33244),s=r(36396);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},59928:(e,t,r)=>{"use strict";e.exports=a;var n=r(21178),i=Object.create(r(15622));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(72017),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},33244:(e,t,r)=>{"use strict";var n=r(33225);e.exports=y;var i,a=r(64634);y.ReadableState=h;r(24434).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(86032),c=r(92861).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(15622));u.inherits=r(72017);var d=r(39023),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(77102),g=r(9952);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(18542));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(83141).I),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(18542),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,S(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&S(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(83141).I),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(w,e):w(e))}function w(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(E,e,t))}function E(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):S(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&S(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},21178:(e,t,r)=>{"use strict";e.exports=o;var n=r(18542),i=Object.create(r(15622));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(72017),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},36396:(e,t,r)=>{"use strict";var n=r(33225);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(15622));s.inherits=r(72017);var c={deprecate:r(27983)},l=r(86032),u=r(92861).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(9952);function m(){}function g(e,t){a=a||r(18542),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(18542),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},77102:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=r(39023);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},9952:(e,t,r)=>{"use strict";var n=r(33225);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},86032:(e,t,r)=>{e.exports=r(2203)},34254:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(33244)).Stream=n||t,t.Readable=t,t.Writable=r(36396),t.Duplex=r(18542),t.Transform=r(21178),t.PassThrough=r(59928))},99133:(e,t,r)=>{ -/** - * Archiver Vending - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(10826),i={},a=function(e,t){return a.create(e,t)};a.create=function(e,t){if(i[e]){var r=new n(e,t);return r.setFormat(e),r.setModule(new i[e](t)),r}throw new Error("create("+e+"): format not registered")},a.registerFormat=function(e,t){if(i[e])throw new Error("register("+e+"): format already registered");if("function"!=typeof t)throw new Error("register("+e+"): format module invalid");if("function"!=typeof t.prototype.append||"function"!=typeof t.prototype.finalize)throw new Error("register("+e+"): format module missing methods");i[e]=t},a.isRegisteredFormat=function(e){return!!i[e]},a.registerFormat("zip",r(43541)),a.registerFormat("tar",r(60741)),a.registerFormat("json",r(76530)),e.exports=a},10826:(e,t,r)=>{ -/** - * Archiver Core - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(79896),i=r(76965),a=r(22268),o=r(16928),s=r(91789),c=r(39023).inherits,l=r(82383),u=r(34198).Transform,d="win32"===process.platform,p=function(e,t){if(!(this instanceof p))return new p(e,t);"string"!=typeof e&&(t=e,e="zip"),t=this.options=s.defaults(t,{highWaterMark:1048576,statConcurrency:4}),u.call(this,t),this._format=!1,this._module=!1,this._pending=0,this._pointer=0,this._entriesCount=0,this._entriesProcessedCount=0,this._fsEntriesTotalBytes=0,this._fsEntriesProcessedBytes=0,this._queue=a.queue(this._onQueueTask.bind(this),1),this._queue.drain(this._onQueueDrain.bind(this)),this._statQueue=a.queue(this._onStatQueueTask.bind(this),t.statConcurrency),this._statQueue.drain(this._onQueueDrain.bind(this)),this._state={aborted:!1,finalize:!1,finalizing:!1,finalized:!1,modulePiped:!1},this._streams=[]};c(p,u),p.prototype._abort=function(){this._state.aborted=!0,this._queue.kill(),this._statQueue.kill(),this._queue.idle()&&this._shutdown()},p.prototype._append=function(e,t){var r={source:null,filepath:e};(t=t||{}).name||(t.name=e),t.sourcePath=e,r.data=t,this._entriesCount++,t.stats&&t.stats instanceof n.Stats?(r=this._updateQueueTaskWithStats(r,t.stats))&&(t.stats.size&&(this._fsEntriesTotalBytes+=t.stats.size),this._queue.push(r)):this._statQueue.push(r)},p.prototype._finalize=function(){this._state.finalizing||this._state.finalized||this._state.aborted||(this._state.finalizing=!0,this._moduleFinalize(),this._state.finalizing=!1,this._state.finalized=!0)},p.prototype._maybeFinalize=function(){return!(this._state.finalizing||this._state.finalized||this._state.aborted)&&(!!(this._state.finalize&&0===this._pending&&this._queue.idle()&&this._statQueue.idle())&&(this._finalize(),!0))},p.prototype._moduleAppend=function(e,t,r){this._state.aborted?r():this._module.append(e,t,function(e){if(this._task=null,this._state.aborted)this._shutdown();else{if(e)return this.emit("error",e),void setImmediate(r);this.emit("entry",t),this._entriesProcessedCount++,t.stats&&t.stats.size&&(this._fsEntriesProcessedBytes+=t.stats.size),this.emit("progress",{entries:{total:this._entriesCount,processed:this._entriesProcessedCount},fs:{totalBytes:this._fsEntriesTotalBytes,processedBytes:this._fsEntriesProcessedBytes}}),setImmediate(r)}}.bind(this))},p.prototype._moduleFinalize=function(){"function"==typeof this._module.finalize?this._module.finalize():"function"==typeof this._module.end?this._module.end():this.emit("error",new l("NOENDMETHOD"))},p.prototype._modulePipe=function(){this._module.on("error",this._onModuleError.bind(this)),this._module.pipe(this),this._state.modulePiped=!0},p.prototype._moduleSupports=function(e){return!(!this._module.supports||!this._module.supports[e])&&this._module.supports[e]},p.prototype._moduleUnpipe=function(){this._module.unpipe(this),this._state.modulePiped=!1},p.prototype._normalizeEntryData=function(e,t){e=s.defaults(e,{type:"file",name:null,date:null,mode:null,prefix:null,sourcePath:null,stats:!1}),t&&!1===e.stats&&(e.stats=t);var r="directory"===e.type;return e.name&&("string"==typeof e.prefix&&""!==e.prefix&&(e.name=e.prefix+"/"+e.name,e.prefix=null),e.name=s.sanitizePath(e.name),"symlink"!==e.type&&"/"===e.name.slice(-1)?(r=!0,e.type="directory"):r&&(e.name+="/")),"number"==typeof e.mode?e.mode&=d?511:4095:e.stats&&null===e.mode?(e.mode=d?511&e.stats.mode:4095&e.stats.mode,d&&r&&(e.mode=493)):null===e.mode&&(e.mode=r?493:420),e.stats&&null===e.date?e.date=e.stats.mtime:e.date=s.dateify(e.date),e},p.prototype._onModuleError=function(e){this.emit("error",e)},p.prototype._onQueueDrain=function(){this._state.finalizing||this._state.finalized||this._state.aborted||this._state.finalize&&0===this._pending&&this._queue.idle()&&this._statQueue.idle()&&this._finalize()},p.prototype._onQueueTask=function(e,t){var r=()=>{e.data.callback&&e.data.callback(),t()};this._state.finalizing||this._state.finalized||this._state.aborted?r():(this._task=e,this._moduleAppend(e.source,e.data,r))},p.prototype._onStatQueueTask=function(e,t){this._state.finalizing||this._state.finalized||this._state.aborted?t():n.lstat(e.filepath,function(r,n){if(this._state.aborted)setImmediate(t);else{if(r)return this._entriesCount--,this.emit("warning",r),void setImmediate(t);(e=this._updateQueueTaskWithStats(e,n))&&(n.size&&(this._fsEntriesTotalBytes+=n.size),this._queue.push(e)),setImmediate(t)}}.bind(this))},p.prototype._shutdown=function(){this._moduleUnpipe(),this.end()},p.prototype._transform=function(e,t,r){e&&(this._pointer+=e.length),r(null,e)},p.prototype._updateQueueTaskWithStats=function(e,t){if(t.isFile())e.data.type="file",e.data.sourceType="stream",e.source=s.lazyReadStream(e.filepath);else if(t.isDirectory()&&this._moduleSupports("directory"))e.data.name=s.trailingSlashIt(e.data.name),e.data.type="directory",e.data.sourcePath=s.trailingSlashIt(e.filepath),e.data.sourceType="buffer",e.source=Buffer.concat([]);else{if(!t.isSymbolicLink()||!this._moduleSupports("symlink"))return t.isDirectory()?this.emit("warning",new l("DIRECTORYNOTSUPPORTED",e.data)):t.isSymbolicLink()?this.emit("warning",new l("SYMLINKNOTSUPPORTED",e.data)):this.emit("warning",new l("ENTRYNOTSUPPORTED",e.data)),null;var r=n.readlinkSync(e.filepath),i=o.dirname(e.filepath);e.data.type="symlink",e.data.linkname=o.relative(i,o.resolve(i,r)),e.data.sourceType="buffer",e.source=Buffer.concat([])}return e.data=this._normalizeEntryData(e.data,t),e},p.prototype.abort=function(){return this._state.aborted||this._state.finalized||this._abort(),this},p.prototype.append=function(e,t){if(this._state.finalize||this._state.aborted)return this.emit("error",new l("QUEUECLOSED")),this;if("string"!=typeof(t=this._normalizeEntryData(t)).name||0===t.name.length)return this.emit("error",new l("ENTRYNAMEREQUIRED")),this;if("directory"===t.type&&!this._moduleSupports("directory"))return this.emit("error",new l("DIRECTORYNOTSUPPORTED",{name:t.name})),this;if(e=s.normalizeInputSource(e),Buffer.isBuffer(e))t.sourceType="buffer";else{if(!s.isStream(e))return this.emit("error",new l("INPUTSTEAMBUFFERREQUIRED",{name:t.name})),this;t.sourceType="stream"}return this._entriesCount++,this._queue.push({data:t,source:e}),this},p.prototype.directory=function(e,t,r){if(this._state.finalize||this._state.aborted)return this.emit("error",new l("QUEUECLOSED")),this;if("string"!=typeof e||0===e.length)return this.emit("error",new l("DIRECTORYDIRPATHREQUIRED")),this;this._pending++,!1===t?t="":"string"!=typeof t&&(t=e);var n=!1;"function"==typeof r?(n=r,r={}):"object"!=typeof r&&(r={});var a=i(e,{stat:!0,dot:!0});return a.on("error",function(e){this.emit("error",e)}.bind(this)),a.on("match",function(i){a.pause();var o=!1,s=Object.assign({},r);s.name=i.relative,s.prefix=t,s.stats=i.stat,s.callback=a.resume.bind(a);try{if(n)if(!1===(s=n(s)))o=!0;else if("object"!=typeof s)throw new l("DIRECTORYFUNCTIONINVALIDDATA",{dirpath:e})}catch(e){return void this.emit("error",e)}o?a.resume():this._append(i.absolute,s)}.bind(this)),a.on("end",function(){this._pending--,this._maybeFinalize()}.bind(this)),this},p.prototype.file=function(e,t){return this._state.finalize||this._state.aborted?(this.emit("error",new l("QUEUECLOSED")),this):"string"!=typeof e||0===e.length?(this.emit("error",new l("FILEFILEPATHREQUIRED")),this):(this._append(e,t),this)},p.prototype.glob=function(e,t,r){this._pending++,t=s.defaults(t,{stat:!0,pattern:e});var n=i(t.cwd||".",t);return n.on("error",function(e){this.emit("error",e)}.bind(this)),n.on("match",function(e){n.pause();var t=Object.assign({},r);t.callback=n.resume.bind(n),t.stats=e.stat,t.name=e.relative,this._append(e.absolute,t)}.bind(this)),n.on("end",function(){this._pending--,this._maybeFinalize()}.bind(this)),this},p.prototype.finalize=function(){if(this._state.aborted){var e=new l("ABORTED");return this.emit("error",e),Promise.reject(e)}if(this._state.finalize){var t=new l("FINALIZING");return this.emit("error",t),Promise.reject(t)}this._state.finalize=!0,0===this._pending&&this._queue.idle()&&this._statQueue.idle()&&this._finalize();var r=this;return new Promise((function(e,t){var n;r._module.on("end",(function(){n||e()})),r._module.on("error",(function(e){n=!0,t(e)}))}))},p.prototype.setFormat=function(e){return this._format?(this.emit("error",new l("FORMATSET")),this):(this._format=e,this)},p.prototype.setModule=function(e){return this._state.aborted?(this.emit("error",new l("ABORTED")),this):this._state.module?(this.emit("error",new l("MODULESET")),this):(this._module=e,this._modulePipe(),this)},p.prototype.symlink=function(e,t,r){if(this._state.finalize||this._state.aborted)return this.emit("error",new l("QUEUECLOSED")),this;if("string"!=typeof e||0===e.length)return this.emit("error",new l("SYMLINKFILEPATHREQUIRED")),this;if("string"!=typeof t||0===t.length)return this.emit("error",new l("SYMLINKTARGETREQUIRED",{filepath:e})),this;if(!this._moduleSupports("symlink"))return this.emit("error",new l("SYMLINKNOTSUPPORTED",{filepath:e})),this;var n={type:"symlink"};return n.name=e.replace(/\\/g,"/"),n.linkname=t.replace(/\\/g,"/"),n.sourceType="buffer","number"==typeof r&&(n.mode=r),this._entriesCount++,this._queue.push({data:n,source:Buffer.concat([])}),this},p.prototype.pointer=function(){return this._pointer},p.prototype.use=function(e){return this._streams.push(e),this},e.exports=p},82383:(e,t,r)=>{ -/** - * Archiver Core - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(39023);const i={ABORTED:"archive was aborted",DIRECTORYDIRPATHREQUIRED:"diretory dirpath argument must be a non-empty string value",DIRECTORYFUNCTIONINVALIDDATA:"invalid data returned by directory custom data function",ENTRYNAMEREQUIRED:"entry name must be a non-empty string value",FILEFILEPATHREQUIRED:"file filepath argument must be a non-empty string value",FINALIZING:"archive already finalizing",QUEUECLOSED:"queue closed",NOENDMETHOD:"no suitable finalize/end method defined by module",DIRECTORYNOTSUPPORTED:"support for directory entries not defined by module",FORMATSET:"archive format already set",INPUTSTEAMBUFFERREQUIRED:"input source must be valid Stream or Buffer instance",MODULESET:"module already set",SYMLINKNOTSUPPORTED:"support for symlink entries not defined by module",SYMLINKFILEPATHREQUIRED:"symlink filepath argument must be a non-empty string value",SYMLINKTARGETREQUIRED:"symlink target argument must be a non-empty string value",ENTRYNOTSUPPORTED:"entry not supported"};function a(e,t){Error.captureStackTrace(this,this.constructor),this.message=i[e]||e,this.code=e,this.data=t}n.inherits(a,Error),e.exports=a},76530:(e,t,r)=>{ -/** - * JSON Format Plugin - * - * @module plugins/json - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(39023).inherits,i=r(34198).Transform,a=r(84025),o=r(91789),s=function(e){if(!(this instanceof s))return new s(e);e=this.options=o.defaults(e,{}),i.call(this,e),this.supports={directory:!0,symlink:!0},this.files=[]};n(s,i),s.prototype._transform=function(e,t,r){r(null,e)},s.prototype._writeStringified=function(){var e=JSON.stringify(this.files);this.write(e)},s.prototype.append=function(e,t,r){var n=this;function i(e,i){e?r(e):(t.size=i.length||0,t.crc32=a.unsigned(i),n.files.push(t),r(null,t))}t.crc32=0,"buffer"===t.sourceType?i(null,e):"stream"===t.sourceType&&o.collectStream(e,i)},s.prototype.finalize=function(){this._writeStringified(),this.end()},e.exports=s},60741:(e,t,r)=>{ -/** - * TAR Format Plugin - * - * @module plugins/tar - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(43106),i=r(44231),a=r(91789),o=function(e){if(!(this instanceof o))return new o(e);"object"!=typeof(e=this.options=a.defaults(e,{gzip:!1})).gzipOptions&&(e.gzipOptions={}),this.supports={directory:!0,symlink:!0},this.engine=i.pack(e),this.compressor=!1,e.gzip&&(this.compressor=n.createGzip(e.gzipOptions),this.compressor.on("error",this._onCompressorError.bind(this)))};o.prototype._onCompressorError=function(e){this.engine.emit("error",e)},o.prototype.append=function(e,t,r){var n=this;function i(e,i){e?r(e):n.engine.entry(t,i,(function(e){r(e,t)}))}if(t.mtime=t.date,"buffer"===t.sourceType)i(null,e);else if("stream"===t.sourceType&&t.stats){t.size=t.stats.size;var o=n.engine.entry(t,(function(e){r(e,t)}));e.pipe(o)}else"stream"===t.sourceType&&a.collectStream(e,i)},o.prototype.finalize=function(){this.engine.finalize()},o.prototype.on=function(){return this.engine.on.apply(this.engine,arguments)},o.prototype.pipe=function(e,t){return this.compressor?this.engine.pipe.apply(this.engine,[this.compressor]).pipe(e,t):this.engine.pipe.apply(this.engine,arguments)},o.prototype.unpipe=function(){return this.compressor?this.compressor.unpipe.apply(this.compressor,arguments):this.engine.unpipe.apply(this.engine,arguments)},e.exports=o},43541:(e,t,r)=>{ -/** - * ZIP Format Plugin - * - * @module plugins/zip - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(48919),i=r(91789),a=function(e){if(!(this instanceof a))return new a(e);e=this.options=i.defaults(e,{comment:"",forceUTC:!1,namePrependSlash:!1,store:!1}),this.supports={directory:!0,symlink:!0},this.engine=new n(e)};a.prototype.append=function(e,t,r){this.engine.entry(e,t,r)},a.prototype.finalize=function(){this.engine.finalize()},a.prototype.on=function(){return this.engine.on.apply(this.engine,arguments)},a.prototype.pipe=function(){return this.engine.pipe.apply(this.engine,arguments)},a.prototype.unpipe=function(){return this.engine.unpipe.apply(this.engine,arguments)},e.exports=a},8505:e=>{"use strict";function t(e,t,i){e instanceof RegExp&&(e=r(e,i)),t instanceof RegExp&&(t=r(t,i));var a=n(e,t,i);return a&&{start:a[0],end:a[1],pre:i.slice(0,a[0]),body:i.slice(a[0]+e.length,a[1]),post:i.slice(a[1]+t.length)}}function r(e,t){var r=t.match(e);return r?r[0]:null}function n(e,t,r){var n,i,a,o,s,c=r.indexOf(e),l=r.indexOf(t,c+1),u=c;if(c>=0&&l>0){if(e===t)return[c,l];for(n=[],a=r.length;u>=0&&!s;)u==c?(n.push(u),c=r.indexOf(e,u+1)):1==n.length?s=[n.pop(),l]:((i=n.pop())<a&&(a=i,o=l),l=r.indexOf(t,u+1)),u=c<l&&c>=0?c:l;n.length&&(s=[a,o])}return s}e.exports=t,t.range=n},92096:(e,t,r)=>{var n;e=r.nmd(e);var i=function(e){"use strict";var t=1e7,r=7,n=9007199254740992,a=f(n),o="0123456789abcdefghijklmnopqrstuvwxyz",s="function"==typeof BigInt;function c(e,t,r,n){return void 0===e?c[0]:void 0!==t&&(10!=+t||r)?K(e,t,r,n):X(e)}function l(e,t){this.value=e,this.sign=t,this.isSmall=!1}function u(e){this.value=e,this.sign=e<0,this.isSmall=!0}function d(e){this.value=e}function p(e){return-n<e&&e<n}function f(e){return e<1e7?[e]:e<1e14?[e%1e7,Math.floor(e/1e7)]:[e%1e7,Math.floor(e/1e7)%1e7,Math.floor(e/1e14)]}function m(e){g(e);var r=e.length;if(r<4&&P(e,a)<0)switch(r){case 0:return 0;case 1:return e[0];case 2:return e[0]+e[1]*t;default:return e[0]+(e[1]+e[2]*t)*t}return e}function g(e){for(var t=e.length;0===e[--t];);e.length=t+1}function _(e){for(var t=new Array(e),r=-1;++r<e;)t[r]=0;return t}function h(e){return e>0?Math.floor(e):Math.ceil(e)}function y(e,r){var n,i,a=e.length,o=r.length,s=new Array(a),c=0,l=t;for(i=0;i<o;i++)c=(n=e[i]+r[i]+c)>=l?1:0,s[i]=n-c*l;for(;i<a;)c=(n=e[i]+c)===l?1:0,s[i++]=n-c*l;return c>0&&s.push(c),s}function v(e,t){return e.length>=t.length?y(e,t):y(t,e)}function b(e,r){var n,i,a=e.length,o=new Array(a),s=t;for(i=0;i<a;i++)n=e[i]-s+r,r=Math.floor(n/s),o[i]=n-r*s,r+=1;for(;r>0;)o[i++]=r%s,r=Math.floor(r/s);return o}function k(e,r){var n,i,a=e.length,o=r.length,s=new Array(a),c=0,l=t;for(n=0;n<o;n++)(i=e[n]-c-r[n])<0?(i+=l,c=1):c=0,s[n]=i;for(n=o;n<a;n++){if(!((i=e[n]-c)<0)){s[n++]=i;break}i+=l,s[n]=i}for(;n<a;n++)s[n]=e[n];return g(s),s}function x(e,r,n){var i,a,o=e.length,s=new Array(o),c=-r,d=t;for(i=0;i<o;i++)a=e[i]+c,c=Math.floor(a/d),a%=d,s[i]=a<0?a+d:a;return"number"==typeof(s=m(s))?(n&&(s=-s),new u(s)):new l(s,n)}function S(e,r){var n,i,a,o,s=e.length,c=r.length,l=_(s+c),u=t;for(a=0;a<s;++a){o=e[a];for(var d=0;d<c;++d)n=o*r[d]+l[a+d],i=Math.floor(n/u),l[a+d]=n-i*u,l[a+d+1]+=i}return g(l),l}function w(e,r){var n,i,a=e.length,o=new Array(a),s=t,c=0;for(i=0;i<a;i++)n=e[i]*r+c,c=Math.floor(n/s),o[i]=n-c*s;for(;c>0;)o[i++]=c%s,c=Math.floor(c/s);return o}function D(e,t){for(var r=[];t-- >0;)r.push(0);return r.concat(e)}function E(e,t){var r=Math.max(e.length,t.length);if(r<=30)return S(e,t);r=Math.ceil(r/2);var n=e.slice(r),i=e.slice(0,r),a=t.slice(r),o=t.slice(0,r),s=E(i,o),c=E(n,a),l=E(v(i,n),v(o,a)),u=v(v(s,D(k(k(l,s),c),r)),D(c,2*r));return g(u),u}function T(e,r,n){return new l(e<t?w(r,e):S(r,f(e)),n)}function C(e){var r,n,i,a,o=e.length,s=_(o+o),c=t;for(i=0;i<o;i++){n=0-(a=e[i])*a;for(var l=i;l<o;l++)r=a*e[l]*2+s[i+l]+n,n=Math.floor(r/c),s[i+l]=r-n*c;s[i+o]=n}return g(s),s}function A(e,r){var n,i,a,o,s=e.length,c=_(s),l=t;for(a=0,n=s-1;n>=0;--n)a=(o=a*l+e[n])-(i=h(o/r))*r,c[n]=0|i;return[c,0|a]}function N(e,r){var n,i=X(r);if(s)return[new d(e.value/i.value),new d(e.value%i.value)];var a,o=e.value,p=i.value;if(0===p)throw new Error("Cannot divide by zero");if(e.isSmall)return i.isSmall?[new u(h(o/p)),new u(o%p)]:[c[0],e];if(i.isSmall){if(1===p)return[e,c[0]];if(-1==p)return[e.negate(),c[0]];var y=Math.abs(p);if(y<t){a=m((n=A(o,y))[0]);var v=n[1];return e.sign&&(v=-v),"number"==typeof a?(e.sign!==i.sign&&(a=-a),[new u(a),new u(v)]):[new l(a,e.sign!==i.sign),new u(v)]}p=f(y)}var b=P(o,p);if(-1===b)return[c[0],e];if(0===b)return[c[e.sign===i.sign?1:-1],c[0]];n=o.length+p.length<=200?function(e,r){var n,i,a,o,s,c,l,u=e.length,d=r.length,p=t,f=_(r.length),g=r[d-1],h=Math.ceil(p/(2*g)),y=w(e,h),v=w(r,h);for(y.length<=u&&y.push(0),v.push(0),g=v[d-1],i=u-d;i>=0;i--){for(n=p-1,y[i+d]!==g&&(n=Math.floor((y[i+d]*p+y[i+d-1])/g)),a=0,o=0,c=v.length,s=0;s<c;s++)a+=n*v[s],l=Math.floor(a/p),o+=y[i+s]-(a-l*p),a=l,o<0?(y[i+s]=o+p,o=-1):(y[i+s]=o,o=0);for(;0!==o;){for(n-=1,a=0,s=0;s<c;s++)(a+=y[i+s]-p+v[s])<0?(y[i+s]=a+p,a=0):(y[i+s]=a,a=1);o+=a}f[i]=n}return y=A(y,h)[0],[m(f),m(y)]}(o,p):function(e,r){for(var n,i,a,o,s,c=e.length,l=r.length,u=[],d=[],p=t;c;)if(d.unshift(e[--c]),g(d),P(d,r)<0)u.push(0);else{a=d[(i=d.length)-1]*p+d[i-2],o=r[l-1]*p+r[l-2],i>l&&(a=(a+1)*p),n=Math.ceil(a/o);do{if(P(s=w(r,n),d)<=0)break;n--}while(n);u.push(n),d=k(d,s)}return u.reverse(),[m(u),m(d)]}(o,p),a=n[0];var x=e.sign!==i.sign,S=n[1],D=e.sign;return"number"==typeof a?(x&&(a=-a),a=new u(a)):a=new l(a,x),"number"==typeof S?(D&&(S=-S),S=new u(S)):S=new l(S,D),[a,S]}function P(e,t){if(e.length!==t.length)return e.length>t.length?1:-1;for(var r=e.length-1;r>=0;r--)if(e[r]!==t[r])return e[r]>t[r]?1:-1;return 0}function I(e){var t=e.abs();return!t.isUnit()&&(!!(t.equals(2)||t.equals(3)||t.equals(5))||!(t.isEven()||t.isDivisibleBy(3)||t.isDivisibleBy(5))&&(!!t.lesser(49)||void 0))}function F(e,t){for(var r,n,a,o=e.prev(),s=o,c=0;s.isEven();)s=s.divide(2),c++;e:for(n=0;n<t.length;n++)if(!e.lesser(t[n])&&!(a=i(t[n]).modPow(s,e)).isUnit()&&!a.equals(o)){for(r=c-1;0!=r;r--){if((a=a.square().mod(e)).isUnit())return!1;if(a.equals(o))continue e}return!1}return!0}l.prototype=Object.create(c.prototype),u.prototype=Object.create(c.prototype),d.prototype=Object.create(c.prototype),l.prototype.add=function(e){var t=X(e);if(this.sign!==t.sign)return this.subtract(t.negate());var r=this.value,n=t.value;return t.isSmall?new l(b(r,Math.abs(n)),this.sign):new l(v(r,n),this.sign)},l.prototype.plus=l.prototype.add,u.prototype.add=function(e){var t=X(e),r=this.value;if(r<0!==t.sign)return this.subtract(t.negate());var n=t.value;if(t.isSmall){if(p(r+n))return new u(r+n);n=f(Math.abs(n))}return new l(b(n,Math.abs(r)),r<0)},u.prototype.plus=u.prototype.add,d.prototype.add=function(e){return new d(this.value+X(e).value)},d.prototype.plus=d.prototype.add,l.prototype.subtract=function(e){var t=X(e);if(this.sign!==t.sign)return this.add(t.negate());var r=this.value,n=t.value;return t.isSmall?x(r,Math.abs(n),this.sign):function(e,t,r){var n;return P(e,t)>=0?n=k(e,t):(n=k(t,e),r=!r),"number"==typeof(n=m(n))?(r&&(n=-n),new u(n)):new l(n,r)}(r,n,this.sign)},l.prototype.minus=l.prototype.subtract,u.prototype.subtract=function(e){var t=X(e),r=this.value;if(r<0!==t.sign)return this.add(t.negate());var n=t.value;return t.isSmall?new u(r-n):x(n,Math.abs(r),r>=0)},u.prototype.minus=u.prototype.subtract,d.prototype.subtract=function(e){return new d(this.value-X(e).value)},d.prototype.minus=d.prototype.subtract,l.prototype.negate=function(){return new l(this.value,!this.sign)},u.prototype.negate=function(){var e=this.sign,t=new u(-this.value);return t.sign=!e,t},d.prototype.negate=function(){return new d(-this.value)},l.prototype.abs=function(){return new l(this.value,!1)},u.prototype.abs=function(){return new u(Math.abs(this.value))},d.prototype.abs=function(){return new d(this.value>=0?this.value:-this.value)},l.prototype.multiply=function(e){var r,n,i,a=X(e),o=this.value,s=a.value,u=this.sign!==a.sign;if(a.isSmall){if(0===s)return c[0];if(1===s)return this;if(-1===s)return this.negate();if((r=Math.abs(s))<t)return new l(w(o,r),u);s=f(r)}return n=o.length,i=s.length,new l(-.012*n-.012*i+15e-6*n*i>0?E(o,s):S(o,s),u)},l.prototype.times=l.prototype.multiply,u.prototype._multiplyBySmall=function(e){return p(e.value*this.value)?new u(e.value*this.value):T(Math.abs(e.value),f(Math.abs(this.value)),this.sign!==e.sign)},l.prototype._multiplyBySmall=function(e){return 0===e.value?c[0]:1===e.value?this:-1===e.value?this.negate():T(Math.abs(e.value),this.value,this.sign!==e.sign)},u.prototype.multiply=function(e){return X(e)._multiplyBySmall(this)},u.prototype.times=u.prototype.multiply,d.prototype.multiply=function(e){return new d(this.value*X(e).value)},d.prototype.times=d.prototype.multiply,l.prototype.square=function(){return new l(C(this.value),!1)},u.prototype.square=function(){var e=this.value*this.value;return p(e)?new u(e):new l(C(f(Math.abs(this.value))),!1)},d.prototype.square=function(e){return new d(this.value*this.value)},l.prototype.divmod=function(e){var t=N(this,e);return{quotient:t[0],remainder:t[1]}},d.prototype.divmod=u.prototype.divmod=l.prototype.divmod,l.prototype.divide=function(e){return N(this,e)[0]},d.prototype.over=d.prototype.divide=function(e){return new d(this.value/X(e).value)},u.prototype.over=u.prototype.divide=l.prototype.over=l.prototype.divide,l.prototype.mod=function(e){return N(this,e)[1]},d.prototype.mod=d.prototype.remainder=function(e){return new d(this.value%X(e).value)},u.prototype.remainder=u.prototype.mod=l.prototype.remainder=l.prototype.mod,l.prototype.pow=function(e){var t,r,n,i=X(e),a=this.value,o=i.value;if(0===o)return c[1];if(0===a)return c[0];if(1===a)return c[1];if(-1===a)return i.isEven()?c[1]:c[-1];if(i.sign)return c[0];if(!i.isSmall)throw new Error("The exponent "+i.toString()+" is too large.");if(this.isSmall&&p(t=Math.pow(a,o)))return new u(h(t));for(r=this,n=c[1];!0&o&&(n=n.times(r),--o),0!==o;)o/=2,r=r.square();return n},u.prototype.pow=l.prototype.pow,d.prototype.pow=function(e){var t=X(e),r=this.value,n=t.value,i=BigInt(0),a=BigInt(1),o=BigInt(2);if(n===i)return c[1];if(r===i)return c[0];if(r===a)return c[1];if(r===BigInt(-1))return t.isEven()?c[1]:c[-1];if(t.isNegative())return new d(i);for(var s=this,l=c[1];(n&a)===a&&(l=l.times(s),--n),n!==i;)n/=o,s=s.square();return l},l.prototype.modPow=function(e,t){if(e=X(e),(t=X(t)).isZero())throw new Error("Cannot take modPow with modulus 0");var r=c[1],n=this.mod(t);for(e.isNegative()&&(e=e.multiply(c[-1]),n=n.modInv(t));e.isPositive();){if(n.isZero())return c[0];e.isOdd()&&(r=r.multiply(n).mod(t)),e=e.divide(2),n=n.square().mod(t)}return r},d.prototype.modPow=u.prototype.modPow=l.prototype.modPow,l.prototype.compareAbs=function(e){var t=X(e),r=this.value,n=t.value;return t.isSmall?1:P(r,n)},u.prototype.compareAbs=function(e){var t=X(e),r=Math.abs(this.value),n=t.value;return t.isSmall?r===(n=Math.abs(n))?0:r>n?1:-1:-1},d.prototype.compareAbs=function(e){var t=this.value,r=X(e).value;return(t=t>=0?t:-t)===(r=r>=0?r:-r)?0:t>r?1:-1},l.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=X(e),r=this.value,n=t.value;return this.sign!==t.sign?t.sign?1:-1:t.isSmall?this.sign?-1:1:P(r,n)*(this.sign?-1:1)},l.prototype.compareTo=l.prototype.compare,u.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=X(e),r=this.value,n=t.value;return t.isSmall?r==n?0:r>n?1:-1:r<0!==t.sign?r<0?-1:1:r<0?1:-1},u.prototype.compareTo=u.prototype.compare,d.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=this.value,r=X(e).value;return t===r?0:t>r?1:-1},d.prototype.compareTo=d.prototype.compare,l.prototype.equals=function(e){return 0===this.compare(e)},d.prototype.eq=d.prototype.equals=u.prototype.eq=u.prototype.equals=l.prototype.eq=l.prototype.equals,l.prototype.notEquals=function(e){return 0!==this.compare(e)},d.prototype.neq=d.prototype.notEquals=u.prototype.neq=u.prototype.notEquals=l.prototype.neq=l.prototype.notEquals,l.prototype.greater=function(e){return this.compare(e)>0},d.prototype.gt=d.prototype.greater=u.prototype.gt=u.prototype.greater=l.prototype.gt=l.prototype.greater,l.prototype.lesser=function(e){return this.compare(e)<0},d.prototype.lt=d.prototype.lesser=u.prototype.lt=u.prototype.lesser=l.prototype.lt=l.prototype.lesser,l.prototype.greaterOrEquals=function(e){return this.compare(e)>=0},d.prototype.geq=d.prototype.greaterOrEquals=u.prototype.geq=u.prototype.greaterOrEquals=l.prototype.geq=l.prototype.greaterOrEquals,l.prototype.lesserOrEquals=function(e){return this.compare(e)<=0},d.prototype.leq=d.prototype.lesserOrEquals=u.prototype.leq=u.prototype.lesserOrEquals=l.prototype.leq=l.prototype.lesserOrEquals,l.prototype.isEven=function(){return!(1&this.value[0])},u.prototype.isEven=function(){return!(1&this.value)},d.prototype.isEven=function(){return(this.value&BigInt(1))===BigInt(0)},l.prototype.isOdd=function(){return!(1&~this.value[0])},u.prototype.isOdd=function(){return!(1&~this.value)},d.prototype.isOdd=function(){return(this.value&BigInt(1))===BigInt(1)},l.prototype.isPositive=function(){return!this.sign},u.prototype.isPositive=function(){return this.value>0},d.prototype.isPositive=u.prototype.isPositive,l.prototype.isNegative=function(){return this.sign},u.prototype.isNegative=function(){return this.value<0},d.prototype.isNegative=u.prototype.isNegative,l.prototype.isUnit=function(){return!1},u.prototype.isUnit=function(){return 1===Math.abs(this.value)},d.prototype.isUnit=function(){return this.abs().value===BigInt(1)},l.prototype.isZero=function(){return!1},u.prototype.isZero=function(){return 0===this.value},d.prototype.isZero=function(){return this.value===BigInt(0)},l.prototype.isDivisibleBy=function(e){var t=X(e);return!t.isZero()&&(!!t.isUnit()||(0===t.compareAbs(2)?this.isEven():this.mod(t).isZero()))},d.prototype.isDivisibleBy=u.prototype.isDivisibleBy=l.prototype.isDivisibleBy,l.prototype.isPrime=function(t){var r=I(this);if(r!==e)return r;var n=this.abs(),a=n.bitLength();if(a<=64)return F(n,[2,3,5,7,11,13,17,19,23,29,31,37]);for(var o=Math.log(2)*a.toJSNumber(),s=Math.ceil(!0===t?2*Math.pow(o,2):o),c=[],l=0;l<s;l++)c.push(i(l+2));return F(n,c)},d.prototype.isPrime=u.prototype.isPrime=l.prototype.isPrime,l.prototype.isProbablePrime=function(t,r){var n=I(this);if(n!==e)return n;for(var a=this.abs(),o=t===e?5:t,s=[],c=0;c<o;c++)s.push(i.randBetween(2,a.minus(2),r));return F(a,s)},d.prototype.isProbablePrime=u.prototype.isProbablePrime=l.prototype.isProbablePrime,l.prototype.modInv=function(e){for(var t,r,n,a=i.zero,o=i.one,s=X(e),c=this.abs();!c.isZero();)t=s.divide(c),r=a,n=s,a=o,s=c,o=r.subtract(t.multiply(o)),c=n.subtract(t.multiply(c));if(!s.isUnit())throw new Error(this.toString()+" and "+e.toString()+" are not co-prime");return-1===a.compare(0)&&(a=a.add(e)),this.isNegative()?a.negate():a},d.prototype.modInv=u.prototype.modInv=l.prototype.modInv,l.prototype.next=function(){var e=this.value;return this.sign?x(e,1,this.sign):new l(b(e,1),this.sign)},u.prototype.next=function(){var e=this.value;return e+1<n?new u(e+1):new l(a,!1)},d.prototype.next=function(){return new d(this.value+BigInt(1))},l.prototype.prev=function(){var e=this.value;return this.sign?new l(b(e,1),!0):x(e,1,this.sign)},u.prototype.prev=function(){var e=this.value;return e-1>-n?new u(e-1):new l(a,!0)},d.prototype.prev=function(){return new d(this.value-BigInt(1))};for(var O=[1];2*O[O.length-1]<=t;)O.push(2*O[O.length-1]);var R=O.length,M=O[R-1];function L(e){return Math.abs(e)<=t}function j(e,t,r){t=X(t);for(var n=e.isNegative(),a=t.isNegative(),o=n?e.not():e,s=a?t.not():t,c=0,l=0,u=null,d=null,p=[];!o.isZero()||!s.isZero();)c=(u=N(o,M))[1].toJSNumber(),n&&(c=M-1-c),l=(d=N(s,M))[1].toJSNumber(),a&&(l=M-1-l),o=u[0],s=d[0],p.push(r(c,l));for(var f=0!==r(n?1:0,a?1:0)?i(-1):i(0),m=p.length-1;m>=0;m-=1)f=f.multiply(M).add(i(p[m]));return f}l.prototype.shiftLeft=function(e){var t=X(e).toJSNumber();if(!L(t))throw new Error(String(t)+" is too large for shifting.");if(t<0)return this.shiftRight(-t);var r=this;if(r.isZero())return r;for(;t>=R;)r=r.multiply(M),t-=R-1;return r.multiply(O[t])},d.prototype.shiftLeft=u.prototype.shiftLeft=l.prototype.shiftLeft,l.prototype.shiftRight=function(e){var t,r=X(e).toJSNumber();if(!L(r))throw new Error(String(r)+" is too large for shifting.");if(r<0)return this.shiftLeft(-r);for(var n=this;r>=R;){if(n.isZero()||n.isNegative()&&n.isUnit())return n;n=(t=N(n,M))[1].isNegative()?t[0].prev():t[0],r-=R-1}return(t=N(n,O[r]))[1].isNegative()?t[0].prev():t[0]},d.prototype.shiftRight=u.prototype.shiftRight=l.prototype.shiftRight,l.prototype.not=function(){return this.negate().prev()},d.prototype.not=u.prototype.not=l.prototype.not,l.prototype.and=function(e){return j(this,e,(function(e,t){return e&t}))},d.prototype.and=u.prototype.and=l.prototype.and,l.prototype.or=function(e){return j(this,e,(function(e,t){return e|t}))},d.prototype.or=u.prototype.or=l.prototype.or,l.prototype.xor=function(e){return j(this,e,(function(e,t){return e^t}))},d.prototype.xor=u.prototype.xor=l.prototype.xor;var B=1<<30,z=(t&-t)*(t&-t)|B;function U(e){var r=e.value,n="number"==typeof r?r|B:"bigint"==typeof r?r|BigInt(B):r[0]+r[1]*t|z;return n&-n}function q(e,t){if(t.compareTo(e)<=0){var r=q(e,t.square(t)),n=r.p,a=r.e,o=n.multiply(t);return o.compareTo(e)<=0?{p:o,e:2*a+1}:{p:n,e:2*a}}return{p:i(1),e:0}}function J(e,t){return e=X(e),t=X(t),e.greater(t)?e:t}function V(e,t){return e=X(e),t=X(t),e.lesser(t)?e:t}function H(e,t){if(e=X(e).abs(),t=X(t).abs(),e.equals(t))return e;if(e.isZero())return t;if(t.isZero())return e;for(var r,n,i=c[1];e.isEven()&&t.isEven();)r=V(U(e),U(t)),e=e.divide(r),t=t.divide(r),i=i.multiply(r);for(;e.isEven();)e=e.divide(U(e));do{for(;t.isEven();)t=t.divide(U(t));e.greater(t)&&(n=t,t=e,e=n),t=t.subtract(e)}while(!t.isZero());return i.isUnit()?e:e.multiply(i)}l.prototype.bitLength=function(){var e=this;return e.compareTo(i(0))<0&&(e=e.negate().subtract(i(1))),0===e.compareTo(i(0))?i(0):i(q(e,i(2)).e).add(i(1))},d.prototype.bitLength=u.prototype.bitLength=l.prototype.bitLength;var K=function(e,t,r,n){r=r||o,e=String(e),n||(e=e.toLowerCase(),r=r.toLowerCase());var i,a=e.length,s=Math.abs(t),c={};for(i=0;i<r.length;i++)c[r[i]]=i;for(i=0;i<a;i++){if("-"!==(d=e[i])&&(d in c&&c[d]>=s)){if("1"===d&&1===s)continue;throw new Error(d+" is not a valid digit in base "+t+".")}}t=X(t);var l=[],u="-"===e[0];for(i=u?1:0;i<e.length;i++){var d;if((d=e[i])in c)l.push(X(c[d]));else{if("<"!==d)throw new Error(d+" is not a valid character");var p=i;do{i++}while(">"!==e[i]&&i<e.length);l.push(X(e.slice(p+1,i)))}}return W(l,t,u)};function W(e,t,r){var n,i=c[0],a=c[1];for(n=e.length-1;n>=0;n--)i=i.add(e[n].times(a)),a=a.times(t);return r?i.negate():i}function G(e,t){if((t=i(t)).isZero()){if(e.isZero())return{value:[0],isNegative:!1};throw new Error("Cannot convert nonzero numbers to base 0.")}if(t.equals(-1)){if(e.isZero())return{value:[0],isNegative:!1};if(e.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-e.toJSNumber())).map(Array.prototype.valueOf,[1,0])),isNegative:!1};var r=Array.apply(null,Array(e.toJSNumber()-1)).map(Array.prototype.valueOf,[0,1]);return r.unshift([1]),{value:[].concat.apply([],r),isNegative:!1}}var n=!1;if(e.isNegative()&&t.isPositive()&&(n=!0,e=e.abs()),t.isUnit())return e.isZero()?{value:[0],isNegative:!1}:{value:Array.apply(null,Array(e.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:n};for(var a,o=[],s=e;s.isNegative()||s.compareAbs(t)>=0;){a=s.divmod(t),s=a.quotient;var c=a.remainder;c.isNegative()&&(c=t.minus(c).abs(),s=s.next()),o.push(c.toJSNumber())}return o.push(s.toJSNumber()),{value:o.reverse(),isNegative:n}}function $(e,t,r){var n=G(e,t);return(n.isNegative?"-":"")+n.value.map((function(e){return function(e,t){return e<(t=t||o).length?t[e]:"<"+e+">"}(e,r)})).join("")}function Y(e){if(p(+e)){var t=+e;if(t===h(t))return s?new d(BigInt(t)):new u(t);throw new Error("Invalid integer: "+e)}var n="-"===e[0];n&&(e=e.slice(1));var i=e.split(/e/i);if(i.length>2)throw new Error("Invalid integer: "+i.join("e"));if(2===i.length){var a=i[1];if("+"===a[0]&&(a=a.slice(1)),(a=+a)!==h(a)||!p(a))throw new Error("Invalid integer: "+a+" is not a valid exponent.");var o=i[0],c=o.indexOf(".");if(c>=0&&(a-=o.length-c-1,o=o.slice(0,c)+o.slice(c+1)),a<0)throw new Error("Cannot include negative exponent part for integers");e=o+=new Array(a+1).join("0")}if(!/^([0-9][0-9]*)$/.test(e))throw new Error("Invalid integer: "+e);if(s)return new d(BigInt(n?"-"+e:e));for(var f=[],m=e.length,_=r,y=m-_;m>0;)f.push(+e.slice(y,m)),(y-=_)<0&&(y=0),m-=_;return g(f),new l(f,n)}function X(e){return"number"==typeof e?function(e){if(s)return new d(BigInt(e));if(p(e)){if(e!==h(e))throw new Error(e+" is not an integer.");return new u(e)}return Y(e.toString())}(e):"string"==typeof e?Y(e):"bigint"==typeof e?new d(e):e}l.prototype.toArray=function(e){return G(this,e)},u.prototype.toArray=function(e){return G(this,e)},d.prototype.toArray=function(e){return G(this,e)},l.prototype.toString=function(t,r){if(t===e&&(t=10),10!==t||r)return $(this,t,r);for(var n,i=this.value,a=i.length,o=String(i[--a]);--a>=0;)n=String(i[a]),o+="0000000".slice(n.length)+n;return(this.sign?"-":"")+o},u.prototype.toString=function(t,r){return t===e&&(t=10),10!=t||r?$(this,t,r):String(this.value)},d.prototype.toString=u.prototype.toString,d.prototype.toJSON=l.prototype.toJSON=u.prototype.toJSON=function(){return this.toString()},l.prototype.valueOf=function(){return parseInt(this.toString(),10)},l.prototype.toJSNumber=l.prototype.valueOf,u.prototype.valueOf=function(){return this.value},u.prototype.toJSNumber=u.prototype.valueOf,d.prototype.valueOf=d.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};for(var Q=0;Q<1e3;Q++)c[Q]=X(Q),Q>0&&(c[-Q]=X(-Q));return c.one=c[1],c.zero=c[0],c.minusOne=c[-1],c.max=J,c.min=V,c.gcd=H,c.lcm=function(e,t){return e=X(e).abs(),t=X(t).abs(),e.divide(H(e,t)).multiply(t)},c.isInstance=function(e){return e instanceof l||e instanceof u||e instanceof d},c.randBetween=function(e,r,n){e=X(e),r=X(r);var i=n||Math.random,a=V(e,r),o=J(e,r).subtract(a).add(1);if(o.isSmall)return a.add(Math.floor(i()*o));for(var s=G(o,t).value,l=[],u=!0,d=0;d<s.length;d++){var p=u?s[d]+(d+1<s.length?s[d+1]/t:0):t,f=h(i()*p);l.push(f),f<s[d]&&(u=!1)}return a.add(c.fromArray(l,t,!1))},c.fromArray=function(e,t,r){return W(e.map(X),X(t||10),r)},c}();e.hasOwnProperty("exports")&&(e.exports=i),void 0===(n=function(){return i}.call(t,r,t,e))||(e.exports=n)},46892:(e,t,r)=>{var n=r(54787),i=r(24434).EventEmitter,a=r(86512),o=r(94644),s=r(2203).Stream;function c(e){for(var t=0,r=0;r<e.length;r++)t+=Math.pow(256,r)*e[r];return t}function l(e){for(var t=0,r=0;r<e.length;r++)t+=Math.pow(256,e.length-r-1)*e[r];return t}function u(e){var t=l(e);return 128&~e[0]||(t-=Math.pow(256,e.length)),t}function d(e){var t=c(e);return 128&~e[e.length-1]||(t-=Math.pow(256,e.length)),t}function p(e){var t={};return[1,2,4,8].forEach((function(r){var n=8*r;t["word"+n+"le"]=t["word"+n+"lu"]=e(r,c),t["word"+n+"ls"]=e(r,d),t["word"+n+"be"]=t["word"+n+"bu"]=e(r,l),t["word"+n+"bs"]=e(r,u)})),t.word8=t.word8u=t.word8be,t.word8s=t.word8bs,t}(t=e.exports=function(e,r){if(Buffer.isBuffer(e))return t.parse(e);var n=t.stream();return e&&e.pipe?e.pipe(n):e&&(e.on(r||"data",(function(e){n.write(e)})),e.on("end",(function(){n.end()}))),n}).stream=function(e){if(e)return t.apply(null,arguments);var r=null;function c(e,t,n){r={bytes:e,skip:n,cb:function(e){r=null,t(e)}},u()}var l=null;function u(){if(r)if("function"==typeof r)r();else{var e,t=l+r.bytes;if(f.length>=t)null==l?(e=f.splice(0,t),r.skip||(e=e.slice())):(r.skip||(e=f.slice(l,t)),l=t),r.skip?r.cb():r.cb(e)}else _&&(g=!0)}var d=n.light((function(e){function t(){g||e.next()}var n=p((function(e,r){return function(n){c(e,(function(e){m.set(n,r(e)),t()}))}}));return n.tap=function(t){e.nest(t,m.store)},n.into=function(t,r){m.get(t)||m.set(t,{});var n=m;m=o(n.get(t)),e.nest((function(){r.apply(this,arguments),this.tap((function(){m=n}))}),m.store)},n.flush=function(){m.store={},t()},n.loop=function(r){var n=!1;e.nest(!1,(function i(){this.vars=m.store,r.call(this,(function(){n=!0,t()}),m.store),this.tap(function(){n?e.next():i.call(this)}.bind(this))}),m.store)},n.buffer=function(e,r){"string"==typeof r&&(r=m.get(r)),c(r,(function(r){m.set(e,r),t()}))},n.skip=function(e){"string"==typeof e&&(e=m.get(e)),c(e,(function(){t()}))},n.scan=function(e,n){if("string"==typeof n)n=new Buffer(n);else if(!Buffer.isBuffer(n))throw new Error("search must be a Buffer or a string");var i=0;r=function(){var a=f.indexOf(n,l+i),o=a-l-i;-1!==a?(r=null,null!=l?(m.set(e,f.slice(l,l+i+o)),l+=i+o+n.length):(m.set(e,f.slice(0,i+o)),f.splice(0,i+o+n.length)),t(),u()):o=Math.max(f.length-n.length-l-i,0),i+=o},u()},n.peek=function(t){l=0,e.nest((function(){t.call(this,m.store),this.tap((function(){l=null}))}))},n}));d.writable=!0;var f=a();d.write=function(e){f.push(e),u()};var m=o(),g=!1,_=!1;return d.end=function(){_=!0},d.pipe=s.prototype.pipe,Object.getOwnPropertyNames(i.prototype).forEach((function(e){d[e]=i.prototype[e]})),d},t.parse=function(e){var t=p((function(i,a){return function(o){if(r+i<=e.length){var s=e.slice(r,r+i);r+=i,n.set(o,a(s))}else n.set(o,null);return t}})),r=0,n=o();return t.vars=n.store,t.tap=function(e){return e.call(t,n.store),t},t.into=function(e,r){n.get(e)||n.set(e,{});var i=n;return n=o(i.get(e)),r.call(t,n.store),n=i,t},t.loop=function(e){for(var r=!1,i=function(){r=!0};!1===r;)e.call(t,i,n.store);return t},t.buffer=function(i,a){"string"==typeof a&&(a=n.get(a));var o=e.slice(r,Math.min(e.length,r+a));return r+=a,n.set(i,o),t},t.skip=function(e){return"string"==typeof e&&(e=n.get(e)),r+=e,t},t.scan=function(i,a){if("string"==typeof a)a=new Buffer(a);else if(!Buffer.isBuffer(a))throw new Error("search must be a Buffer or a string");n.set(i,null);for(var o=0;o+r<=e.length-a.length+1;o++){for(var s=0;s<a.length&&e[r+o+s]===a[s];s++);if(s===a.length)break}return n.set(i,e.slice(r,r+o)),r+=o+a.length,t},t.peek=function(e){var i=r;return e.call(t,n.store),r=i,t},t.flush=function(){return n.store={},t},t.eof=function(){return r>=e.length},t}},94644:e=>{e.exports=function(e){function t(e,t){var n=r.store,i=e.split(".");i.slice(0,-1).forEach((function(e){void 0===n[e]&&(n[e]={}),n=n[e]}));var a=i[i.length-1];return 1==arguments.length?n[a]:n[a]=t}var r={get:function(e){return t(e)},set:function(e,r){return t(e,r)},store:e||{}};return r}},87813:(e,t,r)=>{"use strict";const{Buffer:n}=r(20181),i=Symbol.for("BufferList");function a(e){if(!(this instanceof a))return new a(e);a._init.call(this,e)}a._init=function(e){Object.defineProperty(this,i,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)},a.prototype._new=function(e){return new a(e)},a.prototype._offset=function(e){if(0===e)return[0,0];let t=0;for(let r=0;r<this._bufs.length;r++){const n=t+this._bufs[r].length;if(e<n||r===this._bufs.length-1)return[r,e-t];t=n}},a.prototype._reverseOffset=function(e){const t=e[0];let r=e[1];for(let e=0;e<t;e++)r+=this._bufs[e].length;return r},a.prototype.get=function(e){if(e>this.length||e<0)return;const t=this._offset(e);return this._bufs[t[0]][t[1]]},a.prototype.slice=function(e,t){return"number"==typeof e&&e<0&&(e+=this.length),"number"==typeof t&&t<0&&(t+=this.length),this.copy(null,0,e,t)},a.prototype.copy=function(e,t,r,i){if(("number"!=typeof r||r<0)&&(r=0),("number"!=typeof i||i>this.length)&&(i=this.length),r>=this.length)return e||n.alloc(0);if(i<=0)return e||n.alloc(0);const a=!!e,o=this._offset(r),s=i-r;let c=s,l=a&&t||0,u=o[1];if(0===r&&i===this.length){if(!a)return 1===this._bufs.length?this._bufs[0]:n.concat(this._bufs,this.length);for(let t=0;t<this._bufs.length;t++)this._bufs[t].copy(e,l),l+=this._bufs[t].length;return e}if(c<=this._bufs[o[0]].length-u)return a?this._bufs[o[0]].copy(e,t,u,u+c):this._bufs[o[0]].slice(u,u+c);a||(e=n.allocUnsafe(s));for(let t=o[0];t<this._bufs.length;t++){const r=this._bufs[t].length-u;if(!(c>r)){this._bufs[t].copy(e,l,u,u+c),l+=r;break}this._bufs[t].copy(e,l,u),l+=r,c-=r,u&&(u=0)}return e.length>l?e.slice(0,l):e},a.prototype.shallowSlice=function(e,t){if(e=e||0,t="number"!=typeof t?this.length:t,e<0&&(e+=this.length),t<0&&(t+=this.length),e===t)return this._new();const r=this._offset(e),n=this._offset(t),i=this._bufs.slice(r[0],n[0]+1);return 0===n[1]?i.pop():i[i.length-1]=i[i.length-1].slice(0,n[1]),0!==r[1]&&(i[0]=i[0].slice(r[1])),this._new(i)},a.prototype.toString=function(e,t,r){return this.slice(t,r).toString(e)},a.prototype.consume=function(e){if(e=Math.trunc(e),Number.isNaN(e)||e<=0)return this;for(;this._bufs.length;){if(!(e>=this._bufs[0].length)){this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift()}return this},a.prototype.duplicate=function(){const e=this._new();for(let t=0;t<this._bufs.length;t++)e.append(this._bufs[t]);return e},a.prototype.append=function(e){if(null==e)return this;if(e.buffer)this._appendBuffer(n.from(e.buffer,e.byteOffset,e.byteLength));else if(Array.isArray(e))for(let t=0;t<e.length;t++)this.append(e[t]);else if(this._isBufferList(e))for(let t=0;t<e._bufs.length;t++)this.append(e._bufs[t]);else"number"==typeof e&&(e=e.toString()),this._appendBuffer(n.from(e));return this},a.prototype._appendBuffer=function(e){this._bufs.push(e),this.length+=e.length},a.prototype.indexOf=function(e,t,r){if(void 0===r&&"string"==typeof t&&(r=t,t=void 0),"function"==typeof e||Array.isArray(e))throw new TypeError('The "value" argument must be one of type string, Buffer, BufferList, or Uint8Array.');if("number"==typeof e?e=n.from([e]):"string"==typeof e?e=n.from(e,r):this._isBufferList(e)?e=e.slice():Array.isArray(e.buffer)?e=n.from(e.buffer,e.byteOffset,e.byteLength):n.isBuffer(e)||(e=n.from(e)),t=Number(t||0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),0===e.length)return t>this.length?this.length:t;const i=this._offset(t);let a=i[0],o=i[1];for(;a<this._bufs.length;a++){const t=this._bufs[a];for(;o<t.length;){if(t.length-o>=e.length){const r=t.indexOf(e,o);if(-1!==r)return this._reverseOffset([a,r]);o=t.length-e.length+1}else{const t=this._reverseOffset([a,o]);if(this._match(t,e))return t;o++}}o=0}return-1},a.prototype._match=function(e,t){if(this.length-e<t.length)return!1;for(let r=0;r<t.length;r++)if(this.get(e+r)!==t[r])return!1;return!0},function(){const e={readDoubleBE:8,readDoubleLE:8,readFloatBE:4,readFloatLE:4,readInt32BE:4,readInt32LE:4,readUInt32BE:4,readUInt32LE:4,readInt16BE:2,readInt16LE:2,readUInt16BE:2,readUInt16LE:2,readInt8:1,readUInt8:1,readIntBE:null,readIntLE:null,readUIntBE:null,readUIntLE:null};for(const t in e)!function(t){a.prototype[t]=null===e[t]?function(e,r){return this.slice(e,e+r)[t](0,r)}:function(r=0){return this.slice(r,r+e[t])[t](0)}}(t)}(),a.prototype._isBufferList=function(e){return e instanceof a||a.isBufferList(e)},a.isBufferList=function(e){return null!=e&&e[i]},e.exports=a},44829:(e,t,r)=>{"use strict";const n=r(34198).Duplex,i=r(72017),a=r(87813);function o(e){if(!(this instanceof o))return new o(e);if("function"==typeof e){this._callback=e;const t=function(e){this._callback&&(this._callback(e),this._callback=null)}.bind(this);this.on("pipe",(function(e){e.on("error",t)})),this.on("unpipe",(function(e){e.removeListener("error",t)})),e=null}a._init.call(this,e),n.call(this)}i(o,n),Object.assign(o.prototype,a.prototype),o.prototype._new=function(e){return new o(e)},o.prototype._write=function(e,t,r){this._appendBuffer(e),"function"==typeof r&&r()},o.prototype._read=function(e){if(!this.length)return this.push(null);e=Math.min(e,this.length),this.push(this.slice(0,e)),this.consume(e)},o.prototype.end=function(e){n.prototype.end.call(this,e),this._callback&&(this._callback(null,this.slice()),this._callback=null)},o.prototype._destroy=function(e,t){this._bufs.length=0,this.length=0,t(e)},o.prototype._isBufferList=function(e){return e instanceof o||e instanceof a||o.isBufferList(e)},o.isBufferList=a.isBufferList,e.exports=o,e.exports.BufferListStream=o,e.exports.BufferList=a},7988:e=>{"use strict";e.exports=function(e){var t=e._SomePromiseArray;function r(e){var r=new t(e),n=r.promise();return r.setHowMany(1),r.setUnwrap(),r.init(),n}e.any=function(e){return r(e)},e.prototype.any=function(){return r(this)}}},28210:(e,t,r)=>{"use strict";var n;try{throw new Error}catch(e){n=e}var i=r(71065),a=r(49937),o=r(92208);function s(){this._customScheduler=!1,this._isTickUsed=!1,this._lateQueue=new a(16),this._normalQueue=new a(16),this._haveDrainedQueues=!1,this._trampolineEnabled=!0;var e=this;this.drainQueues=function(){e._drainQueues()},this._schedule=i}function c(e,t,r){this._lateQueue.push(e,t,r),this._queueTick()}function l(e,t,r){this._normalQueue.push(e,t,r),this._queueTick()}function u(e){this._normalQueue._pushOne(e),this._queueTick()}s.prototype.setScheduler=function(e){var t=this._schedule;return this._schedule=e,this._customScheduler=!0,t},s.prototype.hasCustomScheduler=function(){return this._customScheduler},s.prototype.enableTrampoline=function(){this._trampolineEnabled=!0},s.prototype.disableTrampolineIfNecessary=function(){o.hasDevTools&&(this._trampolineEnabled=!1)},s.prototype.haveItemsQueued=function(){return this._isTickUsed||this._haveDrainedQueues},s.prototype.fatalError=function(e,t){t?(process.stderr.write("Fatal "+(e instanceof Error?e.stack:e)+"\n"),process.exit(2)):this.throwLater(e)},s.prototype.throwLater=function(e,t){if(1===arguments.length&&(t=e,e=function(){throw t}),"undefined"!=typeof setTimeout)setTimeout((function(){e(t)}),0);else try{this._schedule((function(){e(t)}))}catch(e){throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n")}},o.hasDevTools?(s.prototype.invokeLater=function(e,t,r){this._trampolineEnabled?c.call(this,e,t,r):this._schedule((function(){setTimeout((function(){e.call(t,r)}),100)}))},s.prototype.invoke=function(e,t,r){this._trampolineEnabled?l.call(this,e,t,r):this._schedule((function(){e.call(t,r)}))},s.prototype.settlePromises=function(e){this._trampolineEnabled?u.call(this,e):this._schedule((function(){e._settlePromises()}))}):(s.prototype.invokeLater=c,s.prototype.invoke=l,s.prototype.settlePromises=u),s.prototype._drainQueue=function(e){for(;e.length()>0;){var t=e.shift();if("function"==typeof t){var r=e.shift(),n=e.shift();t.call(r,n)}else t._settlePromises()}},s.prototype._drainQueues=function(){this._drainQueue(this._normalQueue),this._reset(),this._haveDrainedQueues=!0,this._drainQueue(this._lateQueue)},s.prototype._queueTick=function(){this._isTickUsed||(this._isTickUsed=!0,this._schedule(this.drainQueues))},s.prototype._reset=function(){this._isTickUsed=!1},e.exports=s,e.exports.firstLineError=n},54271:e=>{"use strict";e.exports=function(e,t,r,n){var i=!1,a=function(e,t){this._reject(t)},o=function(e,t){t.promiseRejectionQueued=!0,t.bindingPromise._then(a,a,null,this,e)},s=function(e,t){50397184&this._bitField||this._resolveCallback(t.target)},c=function(e,t){t.promiseRejectionQueued||this._reject(e)};e.prototype.bind=function(a){i||(i=!0,e.prototype._propagateFrom=n.propagateFromFunction(),e.prototype._boundValue=n.boundValueFunction());var l=r(a),u=new e(t);u._propagateFrom(this,1);var d=this._target();if(u._setBoundTo(l),l instanceof e){var p={promiseRejectionQueued:!1,promise:u,target:d,bindingPromise:l};d._then(t,o,void 0,u,p),l._then(s,c,void 0,u,p),u._setOnCancel(l)}else u._resolveCallback(d);return u},e.prototype._setBoundTo=function(e){void 0!==e?(this._bitField=2097152|this._bitField,this._boundTo=e):this._bitField=-2097153&this._bitField},e.prototype._isBound=function(){return!(2097152&~this._bitField)},e.bind=function(t,r){return e.resolve(r).bind(t)}}},51007:(e,t,r)=>{"use strict";var n;"undefined"!=typeof Promise&&(n=Promise);var i=r(39979)();i.noConflict=function(){try{Promise===i&&(Promise=n)}catch(e){}return i},e.exports=i},31675:(e,t,r)=>{"use strict";var n=Object.create;if(n){var i=n(null),a=n(null);i[" size"]=a[" size"]=0}e.exports=function(e){var t,n,o=r(92208),s=o.canEvaluate,c=o.isIdentifier,l=function(e){return new Function("ensureMethod"," \n return function(obj) { \n 'use strict' \n var len = this.length; \n ensureMethod(obj, 'methodName'); \n switch(len) { \n case 1: return obj.methodName(this[0]); \n case 2: return obj.methodName(this[0], this[1]); \n case 3: return obj.methodName(this[0], this[1], this[2]); \n case 0: return obj.methodName(); \n default: \n return obj.methodName.apply(obj, this); \n } \n }; \n ".replace(/methodName/g,e))(p)},u=function(e){return new Function("obj"," \n 'use strict'; \n return obj.propertyName; \n ".replace("propertyName",e))},d=function(e,t,r){var n=r[e];if("function"!=typeof n){if(!c(e))return null;if(n=t(e),r[e]=n,r[" size"]++,r[" size"]>512){for(var i=Object.keys(r),a=0;a<256;++a)delete r[i[a]];r[" size"]=i.length-256}}return n};function p(t,r){var n;if(null!=t&&(n=t[r]),"function"!=typeof n){var i="Object "+o.classString(t)+" has no method '"+o.toString(r)+"'";throw new e.TypeError(i)}return n}function f(e){return p(e,this.pop()).apply(e,this)}function m(e){return e[this]}function g(e){var t=+this;return t<0&&(t=Math.max(0,t+e.length)),e[t]}t=function(e){return d(e,l,i)},n=function(e){return d(e,u,a)},e.prototype.call=function(e){for(var r=arguments.length,n=new Array(Math.max(r-1,0)),i=1;i<r;++i)n[i-1]=arguments[i];if(s){var a=t(e);if(null!==a)return this._then(a,void 0,void 0,n,void 0)}return n.push(e),this._then(f,void 0,void 0,n,void 0)},e.prototype.get=function(e){var t;if("number"==typeof e)t=g;else if(s){var r=n(e);t=null!==r?r:m}else t=m;return this._then(t,void 0,void 0,e,void 0)}}},2994:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i){var a=r(92208),o=a.tryCatch,s=a.errorObj,c=e._async;e.prototype.break=e.prototype.cancel=function(){if(!i.cancellation())return this._warn("cancellation is disabled");for(var e=this,t=e;e._isCancellable();){if(!e._cancelBy(t)){t._isFollowing()?t._followee().cancel():t._cancelBranched();break}var r=e._cancellationParent;if(null==r||!r._isCancellable()){e._isFollowing()?e._followee().cancel():e._cancelBranched();break}e._isFollowing()&&e._followee().cancel(),e._setWillBeCancelled(),t=e,e=r}},e.prototype._branchHasCancelled=function(){this._branchesRemainingToCancel--},e.prototype._enoughBranchesHaveCancelled=function(){return void 0===this._branchesRemainingToCancel||this._branchesRemainingToCancel<=0},e.prototype._cancelBy=function(e){return e===this?(this._branchesRemainingToCancel=0,this._invokeOnCancel(),!0):(this._branchHasCancelled(),!!this._enoughBranchesHaveCancelled()&&(this._invokeOnCancel(),!0))},e.prototype._cancelBranched=function(){this._enoughBranchesHaveCancelled()&&this._cancel()},e.prototype._cancel=function(){this._isCancellable()&&(this._setCancelled(),c.invoke(this._cancelPromises,this,void 0))},e.prototype._cancelPromises=function(){this._length()>0&&this._settlePromises()},e.prototype._unsetOnCancel=function(){this._onCancelField=void 0},e.prototype._isCancellable=function(){return this.isPending()&&!this._isCancelled()},e.prototype.isCancellable=function(){return this.isPending()&&!this.isCancelled()},e.prototype._doInvokeOnCancel=function(e,t){if(a.isArray(e))for(var r=0;r<e.length;++r)this._doInvokeOnCancel(e[r],t);else if(void 0!==e)if("function"==typeof e){if(!t){var n=o(e).call(this._boundValue());n===s&&(this._attachExtraTrace(n.e),c.throwLater(n.e))}}else e._resultCancelled(this)},e.prototype._invokeOnCancel=function(){var e=this._onCancel();this._unsetOnCancel(),c.invoke(this._doInvokeOnCancel,this,e)},e.prototype._invokeInternalOnCancel=function(){this._isCancellable()&&(this._doInvokeOnCancel(this._onCancel(),!0),this._unsetOnCancel())},e.prototype._resultCancelled=function(){this.cancel()}}},91674:(e,t,r)=>{"use strict";e.exports=function(e){var t=r(92208),n=r(7585).keys,i=t.tryCatch,a=t.errorObj;return function(r,o,s){return function(c){var l=s._boundValue();e:for(var u=0;u<r.length;++u){var d=r[u];if(d===Error||null!=d&&d.prototype instanceof Error){if(c instanceof d)return i(o).call(l,c)}else if("function"==typeof d){var p=i(d).call(l,c);if(p===a)return p;if(p)return i(o).call(l,c)}else if(t.isObject(c)){for(var f=n(d),m=0;m<f.length;++m){var g=f[m];if(d[g]!=c[g])continue e}return i(o).call(l,c)}}return e}}}},30297:e=>{"use strict";e.exports=function(e){var t=!1,r=[];function n(){this._trace=new n.CapturedTrace(i())}function i(){var e=r.length-1;if(e>=0)return r[e]}return e.prototype._promiseCreated=function(){},e.prototype._pushContext=function(){},e.prototype._popContext=function(){return null},e._peekContext=e.prototype._peekContext=function(){},n.prototype._pushContext=function(){void 0!==this._trace&&(this._trace._promiseCreated=null,r.push(this._trace))},n.prototype._popContext=function(){if(void 0!==this._trace){var e=r.pop(),t=e._promiseCreated;return e._promiseCreated=null,t}return null},n.CapturedTrace=null,n.create=function(){if(t)return new n},n.deactivateLongStackTraces=function(){},n.activateLongStackTraces=function(){var r=e.prototype._pushContext,a=e.prototype._popContext,o=e._peekContext,s=e.prototype._peekContext,c=e.prototype._promiseCreated;n.deactivateLongStackTraces=function(){e.prototype._pushContext=r,e.prototype._popContext=a,e._peekContext=o,e.prototype._peekContext=s,e.prototype._promiseCreated=c,t=!1},t=!0,e.prototype._pushContext=n.prototype._pushContext,e.prototype._popContext=n.prototype._popContext,e._peekContext=e.prototype._peekContext=i,e.prototype._promiseCreated=function(){var e=this._peekContext();e&&null==e._promiseCreated&&(e._promiseCreated=this)}},n}},6636:(e,t,r)=>{"use strict";e.exports=function(e,t){var n,i,a,o=e._getDomain,s=e._async,c=r(90403).Warning,l=r(92208),u=l.canAttachTrace,d=/[\\\/]bluebird[\\\/]js[\\\/](release|debug|instrumented)/,p=/\((?:timers\.js):\d+:\d+\)/,f=/[\/<\(](.+?):(\d+):(\d+)\)?\s*$/,m=null,g=null,_=!1,h=!(0==l.env("BLUEBIRD_DEBUG")||!l.env("BLUEBIRD_DEBUG")&&"development"!==l.env("NODE_ENV")),y=!(0==l.env("BLUEBIRD_WARNINGS")||!h&&!l.env("BLUEBIRD_WARNINGS")),v=!(0==l.env("BLUEBIRD_LONG_STACK_TRACES")||!h&&!l.env("BLUEBIRD_LONG_STACK_TRACES")),b=0!=l.env("BLUEBIRD_W_FORGOTTEN_RETURN")&&(y||!!l.env("BLUEBIRD_W_FORGOTTEN_RETURN"));e.prototype.suppressUnhandledRejections=function(){var e=this._target();e._bitField=-1048577&e._bitField|524288},e.prototype._ensurePossibleRejectionHandled=function(){524288&this._bitField||(this._setRejectionIsUnhandled(),s.invokeLater(this._notifyUnhandledRejection,this,void 0))},e.prototype._notifyUnhandledRejectionIsHandled=function(){q("rejectionHandled",n,void 0,this)},e.prototype._setReturnedNonUndefined=function(){this._bitField=268435456|this._bitField},e.prototype._returnedNonUndefined=function(){return!!(268435456&this._bitField)},e.prototype._notifyUnhandledRejection=function(){if(this._isRejectionUnhandled()){var e=this._settledValue();this._setUnhandledRejectionIsNotified(),q("unhandledRejection",i,e,this)}},e.prototype._setUnhandledRejectionIsNotified=function(){this._bitField=262144|this._bitField},e.prototype._unsetUnhandledRejectionIsNotified=function(){this._bitField=-262145&this._bitField},e.prototype._isUnhandledRejectionNotified=function(){return(262144&this._bitField)>0},e.prototype._setRejectionIsUnhandled=function(){this._bitField=1048576|this._bitField},e.prototype._unsetRejectionIsUnhandled=function(){this._bitField=-1048577&this._bitField,this._isUnhandledRejectionNotified()&&(this._unsetUnhandledRejectionIsNotified(),this._notifyUnhandledRejectionIsHandled())},e.prototype._isRejectionUnhandled=function(){return(1048576&this._bitField)>0},e.prototype._warn=function(e,t,r){return j(e,t,r||this)},e.onPossiblyUnhandledRejection=function(e){var t=o();i="function"==typeof e?null===t?e:l.domainBind(t,e):void 0},e.onUnhandledRejectionHandled=function(e){var t=o();n="function"==typeof e?null===t?e:l.domainBind(t,e):void 0};var k=function(){};e.longStackTraces=function(){if(s.haveItemsQueued()&&!Y.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");if(!Y.longStackTraces&&V()){var r=e.prototype._captureStackTrace,n=e.prototype._attachExtraTrace;Y.longStackTraces=!0,k=function(){if(s.haveItemsQueued()&&!Y.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");e.prototype._captureStackTrace=r,e.prototype._attachExtraTrace=n,t.deactivateLongStackTraces(),s.enableTrampoline(),Y.longStackTraces=!1},e.prototype._captureStackTrace=M,e.prototype._attachExtraTrace=L,t.activateLongStackTraces(),s.disableTrampolineIfNecessary()}},e.hasLongStackTraces=function(){return Y.longStackTraces&&V()};var x=function(){try{if("function"==typeof CustomEvent){var e=new CustomEvent("CustomEvent");return l.global.dispatchEvent(e),function(e,t){var r=new CustomEvent(e.toLowerCase(),{detail:t,cancelable:!0});return!l.global.dispatchEvent(r)}}if("function"==typeof Event){e=new Event("CustomEvent");return l.global.dispatchEvent(e),function(e,t){var r=new Event(e.toLowerCase(),{cancelable:!0});return r.detail=t,!l.global.dispatchEvent(r)}}return(e=document.createEvent("CustomEvent")).initCustomEvent("testingtheevent",!1,!0,{}),l.global.dispatchEvent(e),function(e,t){var r=document.createEvent("CustomEvent");return r.initCustomEvent(e.toLowerCase(),!1,!0,t),!l.global.dispatchEvent(r)}}catch(e){}return function(){return!1}}(),S=l.isNode?function(){return process.emit.apply(process,arguments)}:l.global?function(e){var t="on"+e.toLowerCase(),r=l.global[t];return!!r&&(r.apply(l.global,[].slice.call(arguments,1)),!0)}:function(){return!1};function w(e,t){return{promise:t}}var D={promiseCreated:w,promiseFulfilled:w,promiseRejected:w,promiseResolved:w,promiseCancelled:w,promiseChained:function(e,t,r){return{promise:t,child:r}},warning:function(e,t){return{warning:t}},unhandledRejection:function(e,t,r){return{reason:t,promise:r}},rejectionHandled:w},E=function(e){var t=!1;try{t=S.apply(null,arguments)}catch(e){s.throwLater(e),t=!0}var r=!1;try{r=x(e,D[e].apply(null,arguments))}catch(e){s.throwLater(e),r=!0}return r||t};function T(){return!1}function C(e,t,r){var n=this;try{e(t,r,(function(e){if("function"!=typeof e)throw new TypeError("onCancel must be a function, got: "+l.toString(e));n._attachCancellationCallback(e)}))}catch(e){return e}}function A(e){if(!this._isCancellable())return this;var t=this._onCancel();void 0!==t?l.isArray(t)?t.push(e):this._setOnCancel([t,e]):this._setOnCancel(e)}function N(){return this._onCancelField}function P(e){this._onCancelField=e}function I(){this._cancellationParent=void 0,this._onCancelField=void 0}function F(e,t){if(1&t){this._cancellationParent=e;var r=e._branchesRemainingToCancel;void 0===r&&(r=0),e._branchesRemainingToCancel=r+1}2&t&&e._isBound()&&this._setBoundTo(e._boundTo)}e.config=function(t){if("longStackTraces"in(t=Object(t))&&(t.longStackTraces?e.longStackTraces():!t.longStackTraces&&e.hasLongStackTraces()&&k()),"warnings"in t){var r=t.warnings;Y.warnings=!!r,b=Y.warnings,l.isObject(r)&&"wForgottenReturn"in r&&(b=!!r.wForgottenReturn)}if("cancellation"in t&&t.cancellation&&!Y.cancellation){if(s.haveItemsQueued())throw new Error("cannot enable cancellation after promises are in use");e.prototype._clearCancellationData=I,e.prototype._propagateFrom=F,e.prototype._onCancel=N,e.prototype._setOnCancel=P,e.prototype._attachCancellationCallback=A,e.prototype._execute=C,O=F,Y.cancellation=!0}return"monitoring"in t&&(t.monitoring&&!Y.monitoring?(Y.monitoring=!0,e.prototype._fireEvent=E):!t.monitoring&&Y.monitoring&&(Y.monitoring=!1,e.prototype._fireEvent=T)),e},e.prototype._fireEvent=T,e.prototype._execute=function(e,t,r){try{e(t,r)}catch(e){return e}},e.prototype._onCancel=function(){},e.prototype._setOnCancel=function(e){},e.prototype._attachCancellationCallback=function(e){},e.prototype._captureStackTrace=function(){},e.prototype._attachExtraTrace=function(){},e.prototype._clearCancellationData=function(){},e.prototype._propagateFrom=function(e,t){};var O=function(e,t){2&t&&e._isBound()&&this._setBoundTo(e._boundTo)};function R(){var t=this._boundTo;return void 0!==t&&t instanceof e?t.isFulfilled()?t.value():void 0:t}function M(){this._trace=new G(this._peekContext())}function L(e,t){if(u(e)){var r=this._trace;if(void 0!==r&&t&&(r=r._parent),void 0!==r)r.attachExtraTrace(e);else if(!e.__stackCleaned__){var n=z(e);l.notEnumerableProp(e,"stack",n.message+"\n"+n.stack.join("\n")),l.notEnumerableProp(e,"__stackCleaned__",!0)}}}function j(t,r,n){if(Y.warnings){var i,a=new c(t);if(r)n._attachExtraTrace(a);else if(Y.longStackTraces&&(i=e._peekContext()))i.attachExtraTrace(a);else{var o=z(a);a.stack=o.message+"\n"+o.stack.join("\n")}E("warning",a)||U(a,"",!0)}}function B(e){for(var t=[],r=0;r<e.length;++r){var n=e[r],i=" (No stack trace)"===n||m.test(n),a=i&&H(n);i&&!a&&(_&&" "!==n.charAt(0)&&(n=" "+n),t.push(n))}return t}function z(e){var t=e.stack,r=e.toString();return t="string"==typeof t&&t.length>0?function(e){for(var t=e.stack.replace(/\s+$/g,"").split("\n"),r=0;r<t.length;++r){var n=t[r];if(" (No stack trace)"===n||m.test(n))break}return r>0&&"SyntaxError"!=e.name&&(t=t.slice(r)),t}(e):[" (No stack trace)"],{message:r,stack:"SyntaxError"==e.name?t:B(t)}}function U(e,t,r){if("undefined"!=typeof console){var n;if(l.isObject(e)){var i=e.stack;n=t+g(i,e)}else n=t+String(e);"function"==typeof a?a(n,r):"function"!=typeof console.log&&"object"!=typeof console.log||console.log(n)}}function q(e,t,r,n){var i=!1;try{"function"==typeof t&&(i=!0,"rejectionHandled"===e?t(n):t(r,n))}catch(e){s.throwLater(e)}"unhandledRejection"===e?E(e,r,n)||i||U(r,"Unhandled rejection "):E(e,n)}function J(e){var t;if("function"==typeof e)t="[function "+(e.name||"anonymous")+"]";else{t=e&&"function"==typeof e.toString?e.toString():l.toString(e);if(/\[object [a-zA-Z0-9$_]+\]/.test(t))try{t=JSON.stringify(e)}catch(e){}0===t.length&&(t="(empty array)")}return"(<"+function(e){var t=41;if(e.length<t)return e;return e.substr(0,t-3)+"..."}(t)+">, no stack trace)"}function V(){return"function"==typeof $}var H=function(){return!1},K=/[\/<\(]([^:\/]+):(\d+):(?:\d+)\)?\s*$/;function W(e){var t=e.match(K);if(t)return{fileName:t[1],line:parseInt(t[2],10)}}function G(e){this._parent=e,this._promisesCreated=0;var t=this._length=1+(void 0===e?0:e._length);$(this,G),t>32&&this.uncycle()}l.inherits(G,Error),t.CapturedTrace=G,G.prototype.uncycle=function(){var e=this._length;if(!(e<2)){for(var t=[],r={},n=0,i=this;void 0!==i;++n)t.push(i),i=i._parent;for(n=(e=this._length=n)-1;n>=0;--n){var a=t[n].stack;void 0===r[a]&&(r[a]=n)}for(n=0;n<e;++n){var o=r[t[n].stack];if(void 0!==o&&o!==n){o>0&&(t[o-1]._parent=void 0,t[o-1]._length=1),t[n]._parent=void 0,t[n]._length=1;var s=n>0?t[n-1]:this;o<e-1?(s._parent=t[o+1],s._parent.uncycle(),s._length=s._parent._length+1):(s._parent=void 0,s._length=1);for(var c=s._length+1,l=n-2;l>=0;--l)t[l]._length=c,c++;return}}}},G.prototype.attachExtraTrace=function(e){if(!e.__stackCleaned__){this.uncycle();for(var t=z(e),r=t.message,n=[t.stack],i=this;void 0!==i;)n.push(B(i.stack.split("\n"))),i=i._parent;!function(e){for(var t=e[0],r=1;r<e.length;++r){for(var n=e[r],i=t.length-1,a=t[i],o=-1,s=n.length-1;s>=0;--s)if(n[s]===a){o=s;break}for(s=o;s>=0;--s){var c=n[s];if(t[i]!==c)break;t.pop(),i--}t=n}}(n),function(e){for(var t=0;t<e.length;++t)(0===e[t].length||t+1<e.length&&e[t][0]===e[t+1][0])&&(e.splice(t,1),t--)}(n),l.notEnumerableProp(e,"stack",function(e,t){for(var r=0;r<t.length-1;++r)t[r].push("From previous event:"),t[r]=t[r].join("\n");return r<t.length&&(t[r]=t[r].join("\n")),e+"\n"+t.join("\n")}(r,n)),l.notEnumerableProp(e,"__stackCleaned__",!0)}};var $=function(){var e=/^\s*at\s*/,t=function(e,t){return"string"==typeof e?e:void 0!==t.name&&void 0!==t.message?t.toString():J(t)};if("number"==typeof Error.stackTraceLimit&&"function"==typeof Error.captureStackTrace){Error.stackTraceLimit+=6,m=e,g=t;var r=Error.captureStackTrace;return H=function(e){return d.test(e)},function(e,t){Error.stackTraceLimit+=6,r(e,t),Error.stackTraceLimit-=6}}var n,i=new Error;if("string"==typeof i.stack&&i.stack.split("\n")[0].indexOf("stackDetection@")>=0)return m=/@/,g=t,_=!0,function(e){e.stack=(new Error).stack};try{throw new Error}catch(e){n="stack"in e}return!("stack"in i)&&n&&"number"==typeof Error.stackTraceLimit?(m=e,g=t,function(e){Error.stackTraceLimit+=6;try{throw new Error}catch(t){e.stack=t.stack}Error.stackTraceLimit-=6}):(g=function(e,t){return"string"==typeof e?e:"object"!=typeof t&&"function"!=typeof t||void 0===t.name||void 0===t.message?J(t):t.toString()},null)}();"undefined"!=typeof console&&void 0!==console.warn&&(a=function(e){console.warn(e)},l.isNode&&process.stderr.isTTY?a=function(e,t){var r=t?"":"";console.warn(r+e+"\n")}:l.isNode||"string"!=typeof(new Error).stack||(a=function(e,t){console.warn("%c"+e,t?"color: darkorange":"color: red")}));var Y={warnings:y,longStackTraces:!1,cancellation:!1,monitoring:!1};return v&&e.longStackTraces(),{longStackTraces:function(){return Y.longStackTraces},warnings:function(){return Y.warnings},cancellation:function(){return Y.cancellation},monitoring:function(){return Y.monitoring},propagateFromFunction:function(){return O},boundValueFunction:function(){return R},checkForgottenReturns:function(e,t,r,n,i){if(void 0===e&&null!==t&&b){if(void 0!==i&&i._returnedNonUndefined())return;if(!(65535&n._bitField))return;r&&(r+=" ");var a="",o="";if(t._trace){for(var s=t._trace.stack.split("\n"),c=B(s),l=c.length-1;l>=0;--l){var u=c[l];if(!p.test(u)){var d=u.match(f);d&&(a="at "+d[1]+":"+d[2]+":"+d[3]+" ");break}}if(c.length>0){var m=c[0];for(l=0;l<s.length;++l)if(s[l]===m){l>0&&(o="\n"+s[l-1]);break}}}var g="a promise was created in a "+r+"handler "+a+"but was not returned from it, see http://goo.gl/rRqMUw"+o;n._warn(g,!0,t)}},setBounds:function(e,t){if(V()){for(var r,n,i=e.stack.split("\n"),a=t.stack.split("\n"),o=-1,s=-1,c=0;c<i.length;++c){if(l=W(i[c])){r=l.fileName,o=l.line;break}}for(c=0;c<a.length;++c){var l;if(l=W(a[c])){n=l.fileName,s=l.line;break}}o<0||s<0||!r||!n||r!==n||o>=s||(H=function(e){if(d.test(e))return!0;var t=W(e);return!!(t&&t.fileName===r&&o<=t.line&&t.line<=s)})}},warn:j,deprecated:function(e,t){var r=e+" is deprecated and will be removed in a future version.";return t&&(r+=" Use "+t+" instead."),j(r)},CapturedTrace:G,fireDomEvent:x,fireGlobalEvent:S}}},56774:e=>{"use strict";e.exports=function(e){function t(){return this.value}function r(){throw this.reason}e.prototype.return=e.prototype.thenReturn=function(r){return r instanceof e&&r.suppressUnhandledRejections(),this._then(t,void 0,void 0,{value:r},void 0)},e.prototype.throw=e.prototype.thenThrow=function(e){return this._then(r,void 0,void 0,{reason:e},void 0)},e.prototype.catchThrow=function(e){if(arguments.length<=1)return this._then(void 0,r,void 0,{reason:e},void 0);var t=arguments[1];return this.caught(e,(function(){throw t}))},e.prototype.catchReturn=function(r){if(arguments.length<=1)return r instanceof e&&r.suppressUnhandledRejections(),this._then(void 0,t,void 0,{value:r},void 0);var n=arguments[1];n instanceof e&&n.suppressUnhandledRejections();return this.caught(r,(function(){return n}))}}},93425:e=>{"use strict";e.exports=function(e,t){var r=e.reduce,n=e.all;function i(){return n(this)}e.prototype.each=function(e){return r(this,e,t,0)._then(i,void 0,void 0,this,void 0)},e.prototype.mapSeries=function(e){return r(this,e,t,t)},e.each=function(e,n){return r(e,n,t,0)._then(i,void 0,void 0,e,void 0)},e.mapSeries=function(e,n){return r(e,n,t,t)}}},90403:(e,t,r)=>{"use strict";var n,i,a=r(7585),o=a.freeze,s=r(92208),c=s.inherits,l=s.notEnumerableProp;function u(e,t){function r(n){if(!(this instanceof r))return new r(n);l(this,"message","string"==typeof n?n:t),l(this,"name",e),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):Error.call(this)}return c(r,Error),r}var d=u("Warning","warning"),p=u("CancellationError","cancellation error"),f=u("TimeoutError","timeout error"),m=u("AggregateError","aggregate error");try{n=TypeError,i=RangeError}catch(e){n=u("TypeError","type error"),i=u("RangeError","range error")}for(var g="join pop push shift unshift slice filter forEach some every map indexOf lastIndexOf reduce reduceRight sort reverse".split(" "),_=0;_<g.length;++_)"function"==typeof Array.prototype[g[_]]&&(m.prototype[g[_]]=Array.prototype[g[_]]);a.defineProperty(m.prototype,"length",{value:0,configurable:!1,writable:!0,enumerable:!0}),m.prototype.isOperational=!0;var h=0;function y(e){if(!(this instanceof y))return new y(e);l(this,"name","OperationalError"),l(this,"message",e),this.cause=e,this.isOperational=!0,e instanceof Error?(l(this,"message",e.message),l(this,"stack",e.stack)):Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}m.prototype.toString=function(){var e=Array(4*h+1).join(" "),t="\n"+e+"AggregateError of:\n";h++,e=Array(4*h+1).join(" ");for(var r=0;r<this.length;++r){for(var n=this[r]===this?"[Circular AggregateError]":this[r]+"",i=n.split("\n"),a=0;a<i.length;++a)i[a]=e+i[a];t+=(n=i.join("\n"))+"\n"}return h--,t},c(y,Error);var v=Error.__BluebirdErrorTypes__;v||(v=o({CancellationError:p,TimeoutError:f,OperationalError:y,RejectionError:y,AggregateError:m}),a.defineProperty(Error,"__BluebirdErrorTypes__",{value:v,writable:!1,enumerable:!1,configurable:!1})),e.exports={Error,TypeError:n,RangeError:i,CancellationError:v.CancellationError,OperationalError:v.OperationalError,TimeoutError:v.TimeoutError,AggregateError:v.AggregateError,Warning:d}},7585:e=>{var t=function(){"use strict";return void 0===this}();if(t)e.exports={freeze:Object.freeze,defineProperty:Object.defineProperty,getDescriptor:Object.getOwnPropertyDescriptor,keys:Object.keys,names:Object.getOwnPropertyNames,getPrototypeOf:Object.getPrototypeOf,isArray:Array.isArray,isES5:t,propertyIsWritable:function(e,t){var r=Object.getOwnPropertyDescriptor(e,t);return!(r&&!r.writable&&!r.set)}};else{var r={}.hasOwnProperty,n={}.toString,i={}.constructor.prototype,a=function(e){var t=[];for(var n in e)r.call(e,n)&&t.push(n);return t};e.exports={isArray:function(e){try{return"[object Array]"===n.call(e)}catch(e){return!1}},keys:a,names:a,defineProperty:function(e,t,r){return e[t]=r.value,e},getDescriptor:function(e,t){return{value:e[t]}},freeze:function(e){return e},getPrototypeOf:function(e){try{return Object(e).constructor.prototype}catch(e){return i}},isES5:t,propertyIsWritable:function(){return!0}}}},72730:e=>{"use strict";e.exports=function(e,t){var r=e.map;e.prototype.filter=function(e,n){return r(this,e,n,t)},e.filter=function(e,n,i){return r(e,n,i,t)}}},90401:(e,t,r)=>{"use strict";e.exports=function(e,t){var n=r(92208),i=e.CancellationError,a=n.errorObj;function o(e,t,r){this.promise=e,this.type=t,this.handler=r,this.called=!1,this.cancelPromise=null}function s(e){this.finallyHandler=e}function c(e,t){return null!=e.cancelPromise&&(arguments.length>1?e.cancelPromise._reject(t):e.cancelPromise._cancel(),e.cancelPromise=null,!0)}function l(){return d.call(this,this.promise._target()._settledValue())}function u(e){if(!c(this,e))return a.e=e,a}function d(r){var n=this.promise,o=this.handler;if(!this.called){this.called=!0;var d=this.isFinallyHandler()?o.call(n._boundValue()):o.call(n._boundValue(),r);if(void 0!==d){n._setReturnedNonUndefined();var p=t(d,n);if(p instanceof e){if(null!=this.cancelPromise){if(p._isCancelled()){var f=new i("late cancellation observer");return n._attachExtraTrace(f),a.e=f,a}p.isPending()&&p._attachCancellationCallback(new s(this))}return p._then(l,u,void 0,this,void 0)}}}return n.isRejected()?(c(this),a.e=r,a):(c(this),r)}return o.prototype.isFinallyHandler=function(){return 0===this.type},s.prototype._resultCancelled=function(){c(this.finallyHandler)},e.prototype._passThrough=function(e,t,r,n){return"function"!=typeof e?this.then():this._then(r,n,void 0,new o(this,t,e),void 0)},e.prototype.lastly=e.prototype.finally=function(e){return this._passThrough(e,0,d,d)},e.prototype.tap=function(e){return this._passThrough(e,1,d)},o}},65734:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=r(90403).TypeError,c=r(92208),l=c.errorObj,u=c.tryCatch,d=[];function p(t,r,i,a){if(o.cancellation()){var s=new e(n),c=this._finallyPromise=new e(n);this._promise=s.lastly((function(){return c})),s._captureStackTrace(),s._setOnCancel(this)}else{(this._promise=new e(n))._captureStackTrace()}this._stack=a,this._generatorFunction=t,this._receiver=r,this._generator=void 0,this._yieldHandlers="function"==typeof i?[i].concat(d):d,this._yieldedPromise=null,this._cancellationPhase=!1}c.inherits(p,a),p.prototype._isResolved=function(){return null===this._promise},p.prototype._cleanup=function(){this._promise=this._generator=null,o.cancellation()&&null!==this._finallyPromise&&(this._finallyPromise._fulfill(),this._finallyPromise=null)},p.prototype._promiseCancelled=function(){if(!this._isResolved()){var t;if(void 0!==this._generator.return)this._promise._pushContext(),t=u(this._generator.return).call(this._generator,void 0),this._promise._popContext();else{var r=new e.CancellationError("generator .return() sentinel");e.coroutine.returnSentinel=r,this._promise._attachExtraTrace(r),this._promise._pushContext(),t=u(this._generator.throw).call(this._generator,r),this._promise._popContext()}this._cancellationPhase=!0,this._yieldedPromise=null,this._continue(t)}},p.prototype._promiseFulfilled=function(e){this._yieldedPromise=null,this._promise._pushContext();var t=u(this._generator.next).call(this._generator,e);this._promise._popContext(),this._continue(t)},p.prototype._promiseRejected=function(e){this._yieldedPromise=null,this._promise._attachExtraTrace(e),this._promise._pushContext();var t=u(this._generator.throw).call(this._generator,e);this._promise._popContext(),this._continue(t)},p.prototype._resultCancelled=function(){if(this._yieldedPromise instanceof e){var t=this._yieldedPromise;this._yieldedPromise=null,t.cancel()}},p.prototype.promise=function(){return this._promise},p.prototype._run=function(){this._generator=this._generatorFunction.call(this._receiver),this._receiver=this._generatorFunction=void 0,this._promiseFulfilled(void 0)},p.prototype._continue=function(t){var r=this._promise;if(t===l)return this._cleanup(),this._cancellationPhase?r.cancel():r._rejectCallback(t.e,!1);var n=t.value;if(!0===t.done)return this._cleanup(),this._cancellationPhase?r.cancel():r._resolveCallback(n);var a=i(n,this._promise);if(a instanceof e||(a=function(t,r,n){for(var a=0;a<r.length;++a){n._pushContext();var o=u(r[a])(t);if(n._popContext(),o===l){n._pushContext();var s=e.reject(l.e);return n._popContext(),s}var c=i(o,n);if(c instanceof e)return c}return null}(a,this._yieldHandlers,this._promise),null!==a)){var o=(a=a._target())._bitField;50397184&o?33554432&o?e._async.invoke(this._promiseFulfilled,this,a._value()):16777216&o?e._async.invoke(this._promiseRejected,this,a._reason()):this._promiseCancelled():(this._yieldedPromise=a,a._proxy(this,null))}else this._promiseRejected(new s("A value %s was yielded that could not be treated as a promise\n\n See http://goo.gl/MqrFmX\n\n".replace("%s",n)+"From coroutine:\n"+this._stack.split("\n").slice(1,-7).join("\n")))},e.coroutine=function(e,t){if("function"!=typeof e)throw new s("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n");var r=Object(t).yieldHandler,n=p,i=(new Error).stack;return function(){var t=e.apply(this,arguments),a=new n(void 0,void 0,r,i),o=a.promise();return a._generator=t,a._promiseFulfilled(void 0),o}},e.coroutine.addYieldHandler=function(e){if("function"!=typeof e)throw new s("expecting a function but got "+c.classString(e));d.push(e)},e.spawn=function(r){if(o.deprecated("Promise.spawn()","Promise.coroutine()"),"function"!=typeof r)return t("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n");var n=new p(r,this),i=n.promise();return n._run(e.spawn),i}}},46564:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s,c=r(92208),l=c.canEvaluate,u=c.tryCatch,d=c.errorObj;if(l){for(var p=function(e){return new Function("value","holder"," \n 'use strict'; \n holder.pIndex = value; \n holder.checkFulfillment(this); \n ".replace(/Index/g,e))},f=function(e){return new Function("promise","holder"," \n 'use strict'; \n holder.pIndex = promise; \n ".replace(/Index/g,e))},m=function(t){for(var r=new Array(t),n=0;n<r.length;++n)r[n]="this.p"+(n+1);var i=r.join(" = ")+" = null;",o="var promise;\n"+r.map((function(e){return" \n promise = "+e+"; \n if (promise instanceof Promise) { \n promise.cancel(); \n } \n "})).join("\n"),s=r.join(", "),c="Holder$"+t,l="return function(tryCatch, errorObj, Promise, async) { \n 'use strict'; \n function [TheName](fn) { \n [TheProperties] \n this.fn = fn; \n this.asyncNeeded = true; \n this.now = 0; \n } \n \n [TheName].prototype._callFunction = function(promise) { \n promise._pushContext(); \n var ret = tryCatch(this.fn)([ThePassedArguments]); \n promise._popContext(); \n if (ret === errorObj) { \n promise._rejectCallback(ret.e, false); \n } else { \n promise._resolveCallback(ret); \n } \n }; \n \n [TheName].prototype.checkFulfillment = function(promise) { \n var now = ++this.now; \n if (now === [TheTotal]) { \n if (this.asyncNeeded) { \n async.invoke(this._callFunction, this, promise); \n } else { \n this._callFunction(promise); \n } \n \n } \n }; \n \n [TheName].prototype._resultCancelled = function() { \n [CancellationCode] \n }; \n \n return [TheName]; \n }(tryCatch, errorObj, Promise, async); \n ";return l=l.replace(/\[TheName\]/g,c).replace(/\[TheTotal\]/g,t).replace(/\[ThePassedArguments\]/g,s).replace(/\[TheProperties\]/g,i).replace(/\[CancellationCode\]/g,o),new Function("tryCatch","errorObj","Promise","async",l)(u,d,e,a)},g=[],_=[],h=[],y=0;y<8;++y)g.push(m(y+1)),_.push(p(y+1)),h.push(f(y+1));s=function(e){this._reject(e)}}e.join=function(){var r,a=arguments.length-1;if(a>0&&"function"==typeof arguments[a]&&(r=arguments[a],a<=8&&l)){(x=new e(i))._captureStackTrace();for(var u=new(0,g[a-1])(r),d=_,p=0;p<a;++p){var f=n(arguments[p],x);if(f instanceof e){var m=(f=f._target())._bitField;50397184&m?33554432&m?d[p].call(x,f._value(),u):16777216&m?x._reject(f._reason()):x._cancel():(f._then(d[p],s,void 0,x,u),h[p](f,u),u.asyncNeeded=!1)}else d[p].call(x,f,u)}if(!x._isFateSealed()){if(u.asyncNeeded){var y=o();null!==y&&(u.fn=c.domainBind(y,u.fn))}x._setAsyncGuaranteed(),x._setOnCancel(u)}return x}for(var v=arguments.length,b=new Array(v),k=0;k<v;++k)b[k]=arguments[k];r&&b.pop();var x=new t(b).promise();return void 0!==r?x.spread(r):x}}},35956:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=e._getDomain,c=r(92208),l=c.tryCatch,u=c.errorObj,d=e._async;function p(e,t,r,n){this.constructor$(e),this._promise._captureStackTrace();var i=s();this._callback=null===i?t:c.domainBind(i,t),this._preservedValues=n===a?new Array(this.length()):null,this._limit=r,this._inFlight=0,this._queue=[],d.invoke(this._asyncInit,this,void 0)}function f(t,r,i,a){if("function"!=typeof r)return n("expecting a function but got "+c.classString(r));var o=0;if(void 0!==i){if("object"!=typeof i||null===i)return e.reject(new TypeError("options argument must be an object but it is "+c.classString(i)));if("number"!=typeof i.concurrency)return e.reject(new TypeError("'concurrency' must be a number but it is "+c.classString(i.concurrency)));o=i.concurrency}return new p(t,r,o="number"==typeof o&&isFinite(o)&&o>=1?o:0,a).promise()}c.inherits(p,t),p.prototype._asyncInit=function(){this._init$(void 0,-2)},p.prototype._init=function(){},p.prototype._promiseFulfilled=function(t,r){var n=this._values,a=this.length(),s=this._preservedValues,c=this._limit;if(r<0){if(n[r=-1*r-1]=t,c>=1&&(this._inFlight--,this._drainQueue(),this._isResolved()))return!0}else{if(c>=1&&this._inFlight>=c)return n[r]=t,this._queue.push(r),!1;null!==s&&(s[r]=t);var d=this._promise,p=this._callback,f=d._boundValue();d._pushContext();var m=l(p).call(f,t,r,a),g=d._popContext();if(o.checkForgottenReturns(m,g,null!==s?"Promise.filter":"Promise.map",d),m===u)return this._reject(m.e),!0;var _=i(m,this._promise);if(_ instanceof e){var h=(_=_._target())._bitField;if(!(50397184&h))return c>=1&&this._inFlight++,n[r]=_,_._proxy(this,-1*(r+1)),!1;if(!(33554432&h))return 16777216&h?(this._reject(_._reason()),!0):(this._cancel(),!0);m=_._value()}n[r]=m}return++this._totalResolved>=a&&(null!==s?this._filter(n,s):this._resolve(n),!0)},p.prototype._drainQueue=function(){for(var e=this._queue,t=this._limit,r=this._values;e.length>0&&this._inFlight<t;){if(this._isResolved())return;var n=e.pop();this._promiseFulfilled(r[n],n)}},p.prototype._filter=function(e,t){for(var r=t.length,n=new Array(r),i=0,a=0;a<r;++a)e[a]&&(n[i++]=t[a]);n.length=i,this._resolve(n)},p.prototype.preservedValues=function(){return this._preservedValues},e.prototype.map=function(e,t){return f(this,e,t,null)},e.map=function(e,t,r,n){return f(e,t,r,n)}}},6241:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a){var o=r(92208),s=o.tryCatch;e.method=function(r){if("function"!=typeof r)throw new e.TypeError("expecting a function but got "+o.classString(r));return function(){var n=new e(t);n._captureStackTrace(),n._pushContext();var i=s(r).apply(this,arguments),o=n._popContext();return a.checkForgottenReturns(i,o,"Promise.method",n),n._resolveFromSyncValue(i),n}},e.attempt=e.try=function(r){if("function"!=typeof r)return i("expecting a function but got "+o.classString(r));var n,c=new e(t);if(c._captureStackTrace(),c._pushContext(),arguments.length>1){a.deprecated("calling Promise.try with more than 1 argument");var l=arguments[1],u=arguments[2];n=o.isArray(l)?s(r).apply(u,l):s(r).call(u,l)}else n=s(r)();var d=c._popContext();return a.checkForgottenReturns(n,d,"Promise.try",c),c._resolveFromSyncValue(n),c},e.prototype._resolveFromSyncValue=function(e){e===o.errorObj?this._rejectCallback(e.e,!1):this._resolveCallback(e,!0)}}},41231:(e,t,r)=>{"use strict";var n=r(92208),i=n.maybeWrapAsError,a=r(90403).OperationalError,o=r(7585);var s=/^(?:name|message|stack|cause)$/;function c(e){var t;if(function(e){return e instanceof Error&&o.getPrototypeOf(e)===Error.prototype}(e)){(t=new a(e)).name=e.name,t.message=e.message,t.stack=e.stack;for(var r=o.keys(e),i=0;i<r.length;++i){var c=r[i];s.test(c)||(t[c]=e[c])}return t}return n.markAsOriginatingFromRejection(e),e}e.exports=function(e,t){return function(r,n){if(null!==e){if(r){var a=c(i(r));e._attachExtraTrace(a),e._reject(a)}else if(t){for(var o=arguments.length,s=new Array(Math.max(o-1,0)),l=1;l<o;++l)s[l-1]=arguments[l];e._fulfill(s)}else e._fulfill(n);e=null}}}},36340:(e,t,r)=>{"use strict";e.exports=function(e){var t=r(92208),n=e._async,i=t.tryCatch,a=t.errorObj;function o(e,r){if(!t.isArray(e))return s.call(this,e,r);var o=i(r).apply(this._boundValue(),[null].concat(e));o===a&&n.throwLater(o.e)}function s(e,t){var r=this._boundValue(),o=void 0===e?i(t).call(r,null):i(t).call(r,null,e);o===a&&n.throwLater(o.e)}function c(e,t){if(!e){var r=new Error(e+"");r.cause=e,e=r}var o=i(t).call(this._boundValue(),e);o===a&&n.throwLater(o.e)}e.prototype.asCallback=e.prototype.nodeify=function(e,t){if("function"==typeof e){var r=s;void 0!==t&&Object(t).spread&&(r=o),this._then(r,c,void 0,this,e)}return this}}},39979:(e,t,r)=>{"use strict";e.exports=function(){var t=function(){return new f("circular promise resolution chain\n\n See http://goo.gl/MqrFmX\n")},n=function(){return new C.PromiseInspection(this._target())},i=function(e){return C.reject(new f(e))};function a(){}var o,s={},c=r(92208);o=c.isNode?function(){var e=process.domain;return void 0===e&&(e=null),e}:function(){return null},c.notEnumerableProp(C,"_getDomain",o);var l=r(7585),u=r(28210),d=new u;l.defineProperty(C,"_async",{value:d});var p=r(90403),f=C.TypeError=p.TypeError;C.RangeError=p.RangeError;var m=C.CancellationError=p.CancellationError;C.TimeoutError=p.TimeoutError,C.OperationalError=p.OperationalError,C.RejectionError=p.OperationalError,C.AggregateError=p.AggregateError;var g=function(){},_={},h={},y=r(78974)(C,g),v=r(52661)(C,g,y,i,a),b=r(30297)(C),k=b.create,x=r(6636)(C,b),S=(x.CapturedTrace,r(90401)(C,y)),w=r(91674)(h),D=r(41231),E=c.errorObj,T=c.tryCatch;function C(e){this._bitField=0,this._fulfillmentHandler0=void 0,this._rejectionHandler0=void 0,this._promise0=void 0,this._receiver0=void 0,e!==g&&(!function(e,t){if("function"!=typeof t)throw new f("expecting a function but got "+c.classString(t));if(e.constructor!==C)throw new f("the promise constructor cannot be invoked directly\n\n See http://goo.gl/MqrFmX\n")}(this,e),this._resolveFromExecutor(e)),this._promiseCreated(),this._fireEvent("promiseCreated",this)}function A(e){this.promise._resolveCallback(e)}function N(e){this.promise._rejectCallback(e,!1)}function P(e){var t=new C(g);t._fulfillmentHandler0=e,t._rejectionHandler0=e,t._promise0=e,t._receiver0=e}return C.prototype.toString=function(){return"[object Promise]"},C.prototype.caught=C.prototype.catch=function(e){var t=arguments.length;if(t>1){var r,n=new Array(t-1),a=0;for(r=0;r<t-1;++r){var o=arguments[r];if(!c.isObject(o))return i("expecting an object but got A catch statement predicate "+c.classString(o));n[a++]=o}return n.length=a,e=arguments[r],this.then(void 0,w(n,e,this))}return this.then(void 0,e)},C.prototype.reflect=function(){return this._then(n,n,void 0,this,void 0)},C.prototype.then=function(e,t){if(x.warnings()&&arguments.length>0&&"function"!=typeof e&&"function"!=typeof t){var r=".then() only accepts functions but was passed: "+c.classString(e);arguments.length>1&&(r+=", "+c.classString(t)),this._warn(r)}return this._then(e,t,void 0,void 0,void 0)},C.prototype.done=function(e,t){this._then(e,t,void 0,void 0,void 0)._setIsFinal()},C.prototype.spread=function(e){return"function"!=typeof e?i("expecting a function but got "+c.classString(e)):this.all()._then(e,void 0,void 0,_,void 0)},C.prototype.toJSON=function(){var e={isFulfilled:!1,isRejected:!1,fulfillmentValue:void 0,rejectionReason:void 0};return this.isFulfilled()?(e.fulfillmentValue=this.value(),e.isFulfilled=!0):this.isRejected()&&(e.rejectionReason=this.reason(),e.isRejected=!0),e},C.prototype.all=function(){return arguments.length>0&&this._warn(".all() was passed arguments but it does not take any"),new v(this).promise()},C.prototype.error=function(e){return this.caught(c.originatesFromRejection,e)},C.getNewLibraryCopy=e.exports,C.is=function(e){return e instanceof C},C.fromNode=C.fromCallback=function(e){var t=new C(g);t._captureStackTrace();var r=arguments.length>1&&!!Object(arguments[1]).multiArgs,n=T(e)(D(t,r));return n===E&&t._rejectCallback(n.e,!0),t._isFateSealed()||t._setAsyncGuaranteed(),t},C.all=function(e){return new v(e).promise()},C.cast=function(e){var t=y(e);return t instanceof C||((t=new C(g))._captureStackTrace(),t._setFulfilled(),t._rejectionHandler0=e),t},C.resolve=C.fulfilled=C.cast,C.reject=C.rejected=function(e){var t=new C(g);return t._captureStackTrace(),t._rejectCallback(e,!0),t},C.setScheduler=function(e){if("function"!=typeof e)throw new f("expecting a function but got "+c.classString(e));return d.setScheduler(e)},C.prototype._then=function(e,t,r,n,i){var a=void 0!==i,s=a?i:new C(g),l=this._target(),u=l._bitField;a||(s._propagateFrom(this,3),s._captureStackTrace(),void 0===n&&2097152&this._bitField&&(n=50397184&u?this._boundValue():l===this?void 0:this._boundTo),this._fireEvent("promiseChained",this,s));var p=o();if(50397184&u){var f,_,h=l._settlePromiseCtx;33554432&u?(_=l._rejectionHandler0,f=e):16777216&u?(_=l._fulfillmentHandler0,f=t,l._unsetRejectionIsUnhandled()):(h=l._settlePromiseLateCancellationObserver,_=new m("late cancellation observer"),l._attachExtraTrace(_),f=t),d.invoke(h,l,{handler:null===p?f:"function"==typeof f&&c.domainBind(p,f),promise:s,receiver:n,value:_})}else l._addCallbacks(e,t,s,n,p);return s},C.prototype._length=function(){return 65535&this._bitField},C.prototype._isFateSealed=function(){return!!(117506048&this._bitField)},C.prototype._isFollowing=function(){return!(67108864&~this._bitField)},C.prototype._setLength=function(e){this._bitField=-65536&this._bitField|65535&e},C.prototype._setFulfilled=function(){this._bitField=33554432|this._bitField,this._fireEvent("promiseFulfilled",this)},C.prototype._setRejected=function(){this._bitField=16777216|this._bitField,this._fireEvent("promiseRejected",this)},C.prototype._setFollowing=function(){this._bitField=67108864|this._bitField,this._fireEvent("promiseResolved",this)},C.prototype._setIsFinal=function(){this._bitField=4194304|this._bitField},C.prototype._isFinal=function(){return(4194304&this._bitField)>0},C.prototype._unsetCancelled=function(){this._bitField=-65537&this._bitField},C.prototype._setCancelled=function(){this._bitField=65536|this._bitField,this._fireEvent("promiseCancelled",this)},C.prototype._setWillBeCancelled=function(){this._bitField=8388608|this._bitField},C.prototype._setAsyncGuaranteed=function(){d.hasCustomScheduler()||(this._bitField=134217728|this._bitField)},C.prototype._receiverAt=function(e){var t=0===e?this._receiver0:this[4*e-4+3];if(t!==s)return void 0===t&&this._isBound()?this._boundValue():t},C.prototype._promiseAt=function(e){return this[4*e-4+2]},C.prototype._fulfillmentHandlerAt=function(e){return this[4*e-4+0]},C.prototype._rejectionHandlerAt=function(e){return this[4*e-4+1]},C.prototype._boundValue=function(){},C.prototype._migrateCallback0=function(e){e._bitField;var t=e._fulfillmentHandler0,r=e._rejectionHandler0,n=e._promise0,i=e._receiverAt(0);void 0===i&&(i=s),this._addCallbacks(t,r,n,i,null)},C.prototype._migrateCallbackAt=function(e,t){var r=e._fulfillmentHandlerAt(t),n=e._rejectionHandlerAt(t),i=e._promiseAt(t),a=e._receiverAt(t);void 0===a&&(a=s),this._addCallbacks(r,n,i,a,null)},C.prototype._addCallbacks=function(e,t,r,n,i){var a=this._length();if(a>=65531&&(a=0,this._setLength(0)),0===a)this._promise0=r,this._receiver0=n,"function"==typeof e&&(this._fulfillmentHandler0=null===i?e:c.domainBind(i,e)),"function"==typeof t&&(this._rejectionHandler0=null===i?t:c.domainBind(i,t));else{var o=4*a-4;this[o+2]=r,this[o+3]=n,"function"==typeof e&&(this[o+0]=null===i?e:c.domainBind(i,e)),"function"==typeof t&&(this[o+1]=null===i?t:c.domainBind(i,t))}return this._setLength(a+1),a},C.prototype._proxy=function(e,t){this._addCallbacks(void 0,void 0,t,e,null)},C.prototype._resolveCallback=function(e,r){if(!(117506048&this._bitField)){if(e===this)return this._rejectCallback(t(),!1);var n=y(e,this);if(!(n instanceof C))return this._fulfill(e);r&&this._propagateFrom(n,2);var i=n._target();if(i!==this){var a=i._bitField;if(50397184&a)if(33554432&a)this._fulfill(i._value());else if(16777216&a)this._reject(i._reason());else{var o=new m("late cancellation observer");i._attachExtraTrace(o),this._reject(o)}else{var s=this._length();s>0&&i._migrateCallback0(this);for(var c=1;c<s;++c)i._migrateCallbackAt(this,c);this._setFollowing(),this._setLength(0),this._setFollowee(i)}}else this._reject(t())}},C.prototype._rejectCallback=function(e,t,r){var n=c.ensureErrorObject(e),i=n===e;if(!i&&!r&&x.warnings()){var a="a promise was rejected with a non-error: "+c.classString(e);this._warn(a,!0)}this._attachExtraTrace(n,!!t&&i),this._reject(e)},C.prototype._resolveFromExecutor=function(e){var t=this;this._captureStackTrace(),this._pushContext();var r=!0,n=this._execute(e,(function(e){t._resolveCallback(e)}),(function(e){t._rejectCallback(e,r)}));r=!1,this._popContext(),void 0!==n&&t._rejectCallback(n,!0)},C.prototype._settlePromiseFromHandler=function(e,t,r,n){var i=n._bitField;if(!(65536&i)){var a;n._pushContext(),t===_?r&&"number"==typeof r.length?a=T(e).apply(this._boundValue(),r):(a=E).e=new f("cannot .spread() a non-array: "+c.classString(r)):a=T(e).call(t,r);var o=n._popContext();65536&(i=n._bitField)||(a===h?n._reject(r):a===E?n._rejectCallback(a.e,!1):(x.checkForgottenReturns(a,o,"",n,this),n._resolveCallback(a)))}},C.prototype._target=function(){for(var e=this;e._isFollowing();)e=e._followee();return e},C.prototype._followee=function(){return this._rejectionHandler0},C.prototype._setFollowee=function(e){this._rejectionHandler0=e},C.prototype._settlePromise=function(e,t,r,i){var o=e instanceof C,s=this._bitField,c=!!(134217728&s);65536&s?(o&&e._invokeInternalOnCancel(),r instanceof S&&r.isFinallyHandler()?(r.cancelPromise=e,T(t).call(r,i)===E&&e._reject(E.e)):t===n?e._fulfill(n.call(r)):r instanceof a?r._promiseCancelled(e):o||e instanceof v?e._cancel():r.cancel()):"function"==typeof t?o?(c&&e._setAsyncGuaranteed(),this._settlePromiseFromHandler(t,r,i,e)):t.call(r,i,e):r instanceof a?r._isResolved()||(33554432&s?r._promiseFulfilled(i,e):r._promiseRejected(i,e)):o&&(c&&e._setAsyncGuaranteed(),33554432&s?e._fulfill(i):e._reject(i))},C.prototype._settlePromiseLateCancellationObserver=function(e){var t=e.handler,r=e.promise,n=e.receiver,i=e.value;"function"==typeof t?r instanceof C?this._settlePromiseFromHandler(t,n,i,r):t.call(n,i,r):r instanceof C&&r._reject(i)},C.prototype._settlePromiseCtx=function(e){this._settlePromise(e.promise,e.handler,e.receiver,e.value)},C.prototype._settlePromise0=function(e,t,r){var n=this._promise0,i=this._receiverAt(0);this._promise0=void 0,this._receiver0=void 0,this._settlePromise(n,e,i,t)},C.prototype._clearCallbackDataAtIndex=function(e){var t=4*e-4;this[t+2]=this[t+3]=this[t+0]=this[t+1]=void 0},C.prototype._fulfill=function(e){var r=this._bitField;if(!((117506048&r)>>>16)){if(e===this){var n=t();return this._attachExtraTrace(n),this._reject(n)}this._setFulfilled(),this._rejectionHandler0=e,(65535&r)>0&&(134217728&r?this._settlePromises():d.settlePromises(this))}},C.prototype._reject=function(e){var t=this._bitField;if(!((117506048&t)>>>16)){if(this._setRejected(),this._fulfillmentHandler0=e,this._isFinal())return d.fatalError(e,c.isNode);(65535&t)>0?d.settlePromises(this):this._ensurePossibleRejectionHandled()}},C.prototype._fulfillPromises=function(e,t){for(var r=1;r<e;r++){var n=this._fulfillmentHandlerAt(r),i=this._promiseAt(r),a=this._receiverAt(r);this._clearCallbackDataAtIndex(r),this._settlePromise(i,n,a,t)}},C.prototype._rejectPromises=function(e,t){for(var r=1;r<e;r++){var n=this._rejectionHandlerAt(r),i=this._promiseAt(r),a=this._receiverAt(r);this._clearCallbackDataAtIndex(r),this._settlePromise(i,n,a,t)}},C.prototype._settlePromises=function(){var e=this._bitField,t=65535&e;if(t>0){if(16842752&e){var r=this._fulfillmentHandler0;this._settlePromise0(this._rejectionHandler0,r,e),this._rejectPromises(t,r)}else{var n=this._rejectionHandler0;this._settlePromise0(this._fulfillmentHandler0,n,e),this._fulfillPromises(t,n)}this._setLength(0)}this._clearCancellationData()},C.prototype._settledValue=function(){var e=this._bitField;return 33554432&e?this._rejectionHandler0:16777216&e?this._fulfillmentHandler0:void 0},C.defer=C.pending=function(){return x.deprecated("Promise.defer","new Promise"),{promise:new C(g),resolve:A,reject:N}},c.notEnumerableProp(C,"_makeSelfResolutionError",t),r(6241)(C,g,y,i,x),r(54271)(C,g,y,x),r(2994)(C,v,i,x),r(56774)(C),r(34900)(C),r(46564)(C,v,y,g,d,o),C.Promise=C,C.version="3.4.7",r(35956)(C,v,i,y,g,x),r(31675)(C),r(46178)(C,i,y,k,g,x),r(76406)(C,g,x),r(65734)(C,i,g,y,a,x),r(36340)(C),r(75818)(C,g),r(74416)(C,v,y,i),r(33381)(C,g,y,i),r(68722)(C,v,i,y,g,x),r(59047)(C,v,x),r(47784)(C,v,i),r(72730)(C,g),r(93425)(C,g),r(7988)(C),c.toFastProperties(C),c.toFastProperties(C.prototype),P({a:1}),P({b:2}),P({c:3}),P(1),P((function(){})),P(void 0),P(!1),P(new C(g)),x.setBounds(u.firstLineError,c.lastLineError),C}},52661:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a){var o=r(92208);o.isArray;function s(r){var n=this._promise=new e(t);r instanceof e&&n._propagateFrom(r,3),n._setOnCancel(this),this._values=r,this._length=0,this._totalResolved=0,this._init(void 0,-2)}return o.inherits(s,a),s.prototype.length=function(){return this._length},s.prototype.promise=function(){return this._promise},s.prototype._init=function t(r,a){var s=n(this._values,this._promise);if(s instanceof e){var c=(s=s._target())._bitField;if(this._values=s,!(50397184&c))return this._promise._setAsyncGuaranteed(),s._then(t,this._reject,void 0,this,a);if(!(33554432&c))return 16777216&c?this._reject(s._reason()):this._cancel();s=s._value()}if(null!==(s=o.asArray(s)))0!==s.length?this._iterate(s):-5===a?this._resolveEmptyArray():this._resolve(function(e){switch(e){case-2:return[];case-3:return{}}}(a));else{var l=i("expecting an array or an iterable object but got "+o.classString(s)).reason();this._promise._rejectCallback(l,!1)}},s.prototype._iterate=function(t){var r=this.getActualLength(t.length);this._length=r,this._values=this.shouldCopyValues()?new Array(r):this._values;for(var i=this._promise,a=!1,o=null,s=0;s<r;++s){var c=n(t[s],i);o=c instanceof e?(c=c._target())._bitField:null,a?null!==o&&c.suppressUnhandledRejections():null!==o?50397184&o?a=33554432&o?this._promiseFulfilled(c._value(),s):16777216&o?this._promiseRejected(c._reason(),s):this._promiseCancelled(s):(c._proxy(this,s),this._values[s]=c):a=this._promiseFulfilled(c,s)}a||i._setAsyncGuaranteed()},s.prototype._isResolved=function(){return null===this._values},s.prototype._resolve=function(e){this._values=null,this._promise._fulfill(e)},s.prototype._cancel=function(){!this._isResolved()&&this._promise._isCancellable()&&(this._values=null,this._promise._cancel())},s.prototype._reject=function(e){this._values=null,this._promise._rejectCallback(e,!1)},s.prototype._promiseFulfilled=function(e,t){return this._values[t]=e,++this._totalResolved>=this._length&&(this._resolve(this._values),!0)},s.prototype._promiseCancelled=function(){return this._cancel(),!0},s.prototype._promiseRejected=function(e){return this._totalResolved++,this._reject(e),!0},s.prototype._resultCancelled=function(){if(!this._isResolved()){var t=this._values;if(this._cancel(),t instanceof e)t.cancel();else for(var r=0;r<t.length;++r)t[r]instanceof e&&t[r].cancel()}},s.prototype.shouldCopyValues=function(){return!0},s.prototype.getActualLength=function(e){return e},s}},75818:(e,t,r)=>{"use strict";e.exports=function(e,t){var n={},i=r(92208),a=r(41231),o=i.withAppended,s=i.maybeWrapAsError,c=i.canEvaluate,l=r(90403).TypeError,u={__isPromisified__:!0},d=new RegExp("^(?:"+["arity","length","name","arguments","caller","callee","prototype","__isPromisified__"].join("|")+")$"),p=function(e){return i.isIdentifier(e)&&"_"!==e.charAt(0)&&"constructor"!==e};function f(e){return!d.test(e)}function m(e){try{return!0===e.__isPromisified__}catch(e){return!1}}function g(e,t,r){var n=i.getDataPropertyOrDefault(e,t+r,u);return!!n&&m(n)}function _(e,t,r,n){for(var a=i.inheritedDataKeys(e),o=[],s=0;s<a.length;++s){var c=a[s],u=e[c],d=n===p||p(c,u,e);"function"!=typeof u||m(u)||g(e,c,t)||!n(c,u,e,d)||o.push(c,u)}return function(e,t,r){for(var n=0;n<e.length;n+=2){var i=e[n];if(r.test(i))for(var a=i.replace(r,""),o=0;o<e.length;o+=2)if(e[o]===a)throw new l("Cannot promisify an API that has normal methods with '%s'-suffix\n\n See http://goo.gl/MqrFmX\n".replace("%s",t))}}(o,t,r),o}var h;h=function(r,c,l,u,d,p){var f=Math.max(0,function(e){return"number"==typeof e.length?Math.max(Math.min(e.length,1024),0):0}(u)-1),m=function(e){for(var t=[e],r=Math.max(0,e-1-3),n=e-1;n>=r;--n)t.push(n);for(n=e+1;n<=3;++n)t.push(n);return t}(f),g="string"==typeof r||c===n;function _(e){var t,r=(t=e,i.filledRange(t,"_arg","")).join(", "),n=e>0?", ":"";return(g?"ret = callback.call(this, {{args}}, nodeback); break;\n":void 0===c?"ret = callback({{args}}, nodeback); break;\n":"ret = callback.call(receiver, {{args}}, nodeback); break;\n").replace("{{args}}",r).replace(", ",n)}var h="string"==typeof r?"this != null ? this['"+r+"'] : fn":"fn",y="'use strict'; \n var ret = function (Parameters) { \n 'use strict'; \n var len = arguments.length; \n var promise = new Promise(INTERNAL); \n promise._captureStackTrace(); \n var nodeback = nodebackForPromise(promise, "+p+"); \n var ret; \n var callback = tryCatch([GetFunctionCode]); \n switch(len) { \n [CodeForSwitchCase] \n } \n if (ret === errorObj) { \n promise._rejectCallback(maybeWrapAsError(ret.e), true, true);\n } \n if (!promise._isFateSealed()) promise._setAsyncGuaranteed(); \n return promise; \n }; \n notEnumerableProp(ret, '__isPromisified__', true); \n return ret; \n ".replace("[CodeForSwitchCase]",function(){for(var e="",t=0;t<m.length;++t)e+="case "+m[t]+":"+_(m[t]);return e+=" \n default: \n var args = new Array(len + 1); \n var i = 0; \n for (var i = 0; i < len; ++i) { \n args[i] = arguments[i]; \n } \n args[i] = nodeback; \n [CodeForCall] \n break; \n ".replace("[CodeForCall]",g?"ret = callback.apply(this, args);\n":"ret = callback.apply(receiver, args);\n")}()).replace("[GetFunctionCode]",h);return y=y.replace("Parameters",function(e){return i.filledRange(Math.max(e,3),"_arg","")}(f)),new Function("Promise","fn","receiver","withAppended","maybeWrapAsError","nodebackForPromise","tryCatch","errorObj","notEnumerableProp","INTERNAL",y)(e,u,c,o,s,a,i.tryCatch,i.errorObj,i.notEnumerableProp,t)};var y=c?h:function(r,c,l,u,d,p){var f=function(){return this}(),m=r;function g(){var i=c;c===n&&(i=this);var l=new e(t);l._captureStackTrace();var u="string"==typeof m&&this!==f?this[m]:r,d=a(l,p);try{u.apply(i,o(arguments,d))}catch(e){l._rejectCallback(s(e),!0,!0)}return l._isFateSealed()||l._setAsyncGuaranteed(),l}return"string"==typeof m&&(r=u),i.notEnumerableProp(g,"__isPromisified__",!0),g};function v(e,t,r,a,o){for(var s=new RegExp(t.replace(/([$])/,"\\$")+"$"),c=_(e,t,s,r),l=0,u=c.length;l<u;l+=2){var d=c[l],p=c[l+1],f=d+t;if(a===y)e[f]=y(d,n,d,p,t,o);else{var m=a(p,(function(){return y(d,n,d,p,t,o)}));i.notEnumerableProp(m,"__isPromisified__",!0),e[f]=m}}return i.toFastProperties(e),e}e.promisify=function(e,t){if("function"!=typeof e)throw new l("expecting a function but got "+i.classString(e));if(m(e))return e;var r=function(e,t,r){return y(e,t,void 0,e,null,r)}(e,void 0===(t=Object(t)).context?n:t.context,!!t.multiArgs);return i.copyDescriptors(e,r,f),r},e.promisifyAll=function(e,t){if("function"!=typeof e&&"object"!=typeof e)throw new l("the target of promisifyAll must be an object or a function\n\n See http://goo.gl/MqrFmX\n");var r=!!(t=Object(t)).multiArgs,n=t.suffix;"string"!=typeof n&&(n="Async");var a=t.filter;"function"!=typeof a&&(a=p);var o=t.promisifier;if("function"!=typeof o&&(o=y),!i.isIdentifier(n))throw new RangeError("suffix must be a valid identifier\n\n See http://goo.gl/MqrFmX\n");for(var s=i.inheritedDataKeys(e),c=0;c<s.length;++c){var u=e[s[c]];"constructor"!==s[c]&&i.isClass(u)&&(v(u.prototype,n,a,o,r),v(u,n,a,o,r))}return v(e,n,a,o,r)}}},74416:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i){var a,o=r(92208),s=o.isObject,c=r(7585);"function"==typeof Map&&(a=Map);var l=function(){var e=0,t=0;function r(r,n){this[e]=r,this[e+t]=n,e++}return function(n){t=n.size,e=0;var i=new Array(2*n.size);return n.forEach(r,i),i}}();function u(e){var t,r=!1;if(void 0!==a&&e instanceof a)t=l(e),r=!0;else{var n=c.keys(e),i=n.length;t=new Array(2*i);for(var o=0;o<i;++o){var s=n[o];t[o]=e[s],t[o+i]=s}}this.constructor$(t),this._isMap=r,this._init$(void 0,-3)}function d(t){var r,a=n(t);return s(a)?(r=a instanceof e?a._then(e.props,void 0,void 0,void 0,void 0):new u(a).promise(),a instanceof e&&r._propagateFrom(a,2),r):i("cannot await properties of a non-object\n\n See http://goo.gl/MqrFmX\n")}o.inherits(u,t),u.prototype._init=function(){},u.prototype._promiseFulfilled=function(e,t){if(this._values[t]=e,++this._totalResolved>=this._length){var r;if(this._isMap)r=function(e){for(var t=new a,r=e.length/2|0,n=0;n<r;++n){var i=e[r+n],o=e[n];t.set(i,o)}return t}(this._values);else{r={};for(var n=this.length(),i=0,o=this.length();i<o;++i)r[this._values[i+n]]=this._values[i]}return this._resolve(r),!0}return!1},u.prototype.shouldCopyValues=function(){return!1},u.prototype.getActualLength=function(e){return e>>1},e.prototype.props=function(){return d(this)},e.props=function(e){return d(e)}}},49937:e=>{"use strict";function t(e){this._capacity=e,this._length=0,this._front=0}t.prototype._willBeOverCapacity=function(e){return this._capacity<e},t.prototype._pushOne=function(e){var t=this.length();this._checkCapacity(t+1),this[this._front+t&this._capacity-1]=e,this._length=t+1},t.prototype.push=function(e,t,r){var n=this.length()+3;if(this._willBeOverCapacity(n))return this._pushOne(e),this._pushOne(t),void this._pushOne(r);var i=this._front+n-3;this._checkCapacity(n);var a=this._capacity-1;this[i+0&a]=e,this[i+1&a]=t,this[i+2&a]=r,this._length=n},t.prototype.shift=function(){var e=this._front,t=this[e];return this[e]=void 0,this._front=e+1&this._capacity-1,this._length--,t},t.prototype.length=function(){return this._length},t.prototype._checkCapacity=function(e){this._capacity<e&&this._resizeTo(this._capacity<<1)},t.prototype._resizeTo=function(e){var t=this._capacity;this._capacity=e,function(e,t,r,n,i){for(var a=0;a<i;++a)r[a+n]=e[a+t],e[a+t]=void 0}(this,0,this,t,this._front+this._length&t-1)},e.exports=t},33381:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i){var a=r(92208);function o(r,s){var c,l=n(r);if(l instanceof e)return(c=l).then((function(e){return o(e,c)}));if(null===(r=a.asArray(r)))return i("expecting an array or an iterable object but got "+a.classString(r));var u=new e(t);void 0!==s&&u._propagateFrom(s,3);for(var d=u._fulfill,p=u._reject,f=0,m=r.length;f<m;++f){var g=r[f];(void 0!==g||f in r)&&e.cast(g)._then(d,p,void 0,u,null)}return u}e.race=function(e){return o(e,void 0)},e.prototype.race=function(){return o(this,void 0)}}},68722:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=e._getDomain,c=r(92208),l=c.tryCatch;function u(t,r,n,i){this.constructor$(t);var o=s();this._fn=null===o?r:c.domainBind(o,r),void 0!==n&&(n=e.resolve(n))._attachCancellationCallback(this),this._initialValue=n,this._currentCancellable=null,this._eachValues=i===a?Array(this._length):0===i?null:void 0,this._promise._captureStackTrace(),this._init$(void 0,-5)}function d(e,t){this.isFulfilled()?t._resolve(e):t._reject(e)}function p(e,t,r,i){return"function"!=typeof t?n("expecting a function but got "+c.classString(t)):new u(e,t,r,i).promise()}function f(t){this.accum=t,this.array._gotAccum(t);var r=i(this.value,this.array._promise);return r instanceof e?(this.array._currentCancellable=r,r._then(m,void 0,void 0,this,void 0)):m.call(this,r)}function m(t){var r,n=this.array,i=n._promise,a=l(n._fn);i._pushContext(),(r=void 0!==n._eachValues?a.call(i._boundValue(),t,this.index,this.length):a.call(i._boundValue(),this.accum,t,this.index,this.length))instanceof e&&(n._currentCancellable=r);var s=i._popContext();return o.checkForgottenReturns(r,s,void 0!==n._eachValues?"Promise.each":"Promise.reduce",i),r}c.inherits(u,t),u.prototype._gotAccum=function(e){void 0!==this._eachValues&&null!==this._eachValues&&e!==a&&this._eachValues.push(e)},u.prototype._eachComplete=function(e){return null!==this._eachValues&&this._eachValues.push(e),this._eachValues},u.prototype._init=function(){},u.prototype._resolveEmptyArray=function(){this._resolve(void 0!==this._eachValues?this._eachValues:this._initialValue)},u.prototype.shouldCopyValues=function(){return!1},u.prototype._resolve=function(e){this._promise._resolveCallback(e),this._values=null},u.prototype._resultCancelled=function(t){if(t===this._initialValue)return this._cancel();this._isResolved()||(this._resultCancelled$(),this._currentCancellable instanceof e&&this._currentCancellable.cancel(),this._initialValue instanceof e&&this._initialValue.cancel())},u.prototype._iterate=function(t){var r,n;this._values=t;var i=t.length;if(void 0!==this._initialValue?(r=this._initialValue,n=0):(r=e.resolve(t[0]),n=1),this._currentCancellable=r,!r.isRejected())for(;n<i;++n){var a={accum:null,value:t[n],index:n,length:i,array:this};r=r._then(f,void 0,void 0,a,void 0)}void 0!==this._eachValues&&(r=r._then(this._eachComplete,void 0,void 0,this,void 0)),r._then(d,d,void 0,r,this)},e.prototype.reduce=function(e,t){return p(this,e,t,null)},e.reduce=function(e,t,r,n){return p(e,t,r,n)}}},71065:(e,t,r)=>{"use strict";var n,i=r(92208),a=i.getNativePromise();if(i.isNode&&"undefined"==typeof MutationObserver){var o=global.setImmediate,s=process.nextTick;n=i.isRecentNode?function(e){o.call(global,e)}:function(e){s.call(process,e)}}else if("function"==typeof a&&"function"==typeof a.resolve){var c=a.resolve();n=function(e){c.then(e)}}else n="undefined"==typeof MutationObserver||"undefined"!=typeof window&&window.navigator&&(window.navigator.standalone||window.cordova)?"undefined"!=typeof setImmediate?function(e){setImmediate(e)}:"undefined"!=typeof setTimeout?function(e){setTimeout(e,0)}:function(){throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n")}:function(){var e=document.createElement("div"),t={attributes:!0},r=!1,n=document.createElement("div");new MutationObserver((function(){e.classList.toggle("foo"),r=!1})).observe(n,t);return function(i){var a=new MutationObserver((function(){a.disconnect(),i()}));a.observe(e,t),r||(r=!0,n.classList.toggle("foo"))}}();e.exports=n},59047:(e,t,r)=>{"use strict";e.exports=function(e,t,n){var i=e.PromiseInspection;function a(e){this.constructor$(e)}r(92208).inherits(a,t),a.prototype._promiseResolved=function(e,t){return this._values[e]=t,++this._totalResolved>=this._length&&(this._resolve(this._values),!0)},a.prototype._promiseFulfilled=function(e,t){var r=new i;return r._bitField=33554432,r._settledValueField=e,this._promiseResolved(t,r)},a.prototype._promiseRejected=function(e,t){var r=new i;return r._bitField=16777216,r._settledValueField=e,this._promiseResolved(t,r)},e.settle=function(e){return n.deprecated(".settle()",".reflect()"),new a(e).promise()},e.prototype.settle=function(){return e.settle(this)}}},47784:(e,t,r)=>{"use strict";e.exports=function(e,t,n){var i=r(92208),a=r(90403).RangeError,o=r(90403).AggregateError,s=i.isArray,c={};function l(e){this.constructor$(e),this._howMany=0,this._unwrap=!1,this._initialized=!1}function u(e,t){if((0|t)!==t||t<0)return n("expecting a positive integer\n\n See http://goo.gl/MqrFmX\n");var r=new l(e),i=r.promise();return r.setHowMany(t),r.init(),i}i.inherits(l,t),l.prototype._init=function(){if(this._initialized)if(0!==this._howMany){this._init$(void 0,-5);var e=s(this._values);!this._isResolved()&&e&&this._howMany>this._canPossiblyFulfill()&&this._reject(this._getRangeError(this.length()))}else this._resolve([])},l.prototype.init=function(){this._initialized=!0,this._init()},l.prototype.setUnwrap=function(){this._unwrap=!0},l.prototype.howMany=function(){return this._howMany},l.prototype.setHowMany=function(e){this._howMany=e},l.prototype._promiseFulfilled=function(e){return this._addFulfilled(e),this._fulfilled()===this.howMany()&&(this._values.length=this.howMany(),1===this.howMany()&&this._unwrap?this._resolve(this._values[0]):this._resolve(this._values),!0)},l.prototype._promiseRejected=function(e){return this._addRejected(e),this._checkOutcome()},l.prototype._promiseCancelled=function(){return this._values instanceof e||null==this._values?this._cancel():(this._addRejected(c),this._checkOutcome())},l.prototype._checkOutcome=function(){if(this.howMany()>this._canPossiblyFulfill()){for(var e=new o,t=this.length();t<this._values.length;++t)this._values[t]!==c&&e.push(this._values[t]);return e.length>0?this._reject(e):this._cancel(),!0}return!1},l.prototype._fulfilled=function(){return this._totalResolved},l.prototype._rejected=function(){return this._values.length-this.length()},l.prototype._addRejected=function(e){this._values.push(e)},l.prototype._addFulfilled=function(e){this._values[this._totalResolved++]=e},l.prototype._canPossiblyFulfill=function(){return this.length()-this._rejected()},l.prototype._getRangeError=function(e){var t="Input array must contain at least "+this._howMany+" items but contains only "+e+" items";return new a(t)},l.prototype._resolveEmptyArray=function(){this._reject(this._getRangeError(0))},e.some=function(e,t){return u(e,t)},e.prototype.some=function(e){return u(this,e)},e._SomePromiseArray=l}},34900:e=>{"use strict";e.exports=function(e){function t(e){void 0!==e?(e=e._target(),this._bitField=e._bitField,this._settledValueField=e._isFateSealed()?e._settledValue():void 0):(this._bitField=0,this._settledValueField=void 0)}t.prototype._settledValue=function(){return this._settledValueField};var r=t.prototype.value=function(){if(!this.isFulfilled())throw new TypeError("cannot get fulfillment value of a non-fulfilled promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},n=t.prototype.error=t.prototype.reason=function(){if(!this.isRejected())throw new TypeError("cannot get rejection reason of a non-rejected promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},i=t.prototype.isFulfilled=function(){return!!(33554432&this._bitField)},a=t.prototype.isRejected=function(){return!!(16777216&this._bitField)},o=t.prototype.isPending=function(){return!(50397184&this._bitField)},s=t.prototype.isResolved=function(){return!!(50331648&this._bitField)};t.prototype.isCancelled=function(){return!!(8454144&this._bitField)},e.prototype.__isCancelled=function(){return!(65536&~this._bitField)},e.prototype._isCancelled=function(){return this._target().__isCancelled()},e.prototype.isCancelled=function(){return!!(8454144&this._target()._bitField)},e.prototype.isPending=function(){return o.call(this._target())},e.prototype.isRejected=function(){return a.call(this._target())},e.prototype.isFulfilled=function(){return i.call(this._target())},e.prototype.isResolved=function(){return s.call(this._target())},e.prototype.value=function(){return r.call(this._target())},e.prototype.reason=function(){var e=this._target();return e._unsetRejectionIsUnhandled(),n.call(e)},e.prototype._value=function(){return this._settledValue()},e.prototype._reason=function(){return this._unsetRejectionIsUnhandled(),this._settledValue()},e.PromiseInspection=t}},78974:(e,t,r)=>{"use strict";e.exports=function(e,t){var n=r(92208),i=n.errorObj,a=n.isObject;var o={}.hasOwnProperty;return function(r,s){if(a(r)){if(r instanceof e)return r;var c=function(e){try{return function(e){return e.then}(e)}catch(e){return i.e=e,i}}(r);if(c===i){s&&s._pushContext();var l=e.reject(c.e);return s&&s._popContext(),l}if("function"==typeof c){if(function(e){try{return o.call(e,"_promise0")}catch(e){return!1}}(r)){l=new e(t);return r._then(l._fulfill,l._reject,void 0,l,null),l}return function(r,a,o){var s=new e(t),c=s;o&&o._pushContext();s._captureStackTrace(),o&&o._popContext();var l=!0,u=n.tryCatch(a).call(r,d,p);l=!1,s&&u===i&&(s._rejectCallback(u.e,!0,!0),s=null);function d(e){s&&(s._resolveCallback(e),s=null)}function p(e){s&&(s._rejectCallback(e,l,!0),s=null)}return c}(r,c,s)}}return r}}},76406:(e,t,r)=>{"use strict";e.exports=function(e,t,n){var i=r(92208),a=e.TimeoutError;function o(e){this.handle=e}o.prototype._resultCancelled=function(){clearTimeout(this.handle)};var s=function(e){return c(+this).thenReturn(e)},c=e.delay=function(r,i){var a,c;return void 0!==i?(a=e.resolve(i)._then(s,null,null,r,void 0),n.cancellation()&&i instanceof e&&a._setOnCancel(i)):(a=new e(t),c=setTimeout((function(){a._fulfill()}),+r),n.cancellation()&&a._setOnCancel(new o(c)),a._captureStackTrace()),a._setAsyncGuaranteed(),a};e.prototype.delay=function(e){return c(e,this)};function l(e){return clearTimeout(this.handle),e}function u(e){throw clearTimeout(this.handle),e}e.prototype.timeout=function(e,t){var r,s;e=+e;var c=new o(setTimeout((function(){r.isPending()&&function(e,t,r){var n;n="string"!=typeof t?t instanceof Error?t:new a("operation timed out"):new a(t),i.markAsOriginatingFromRejection(n),e._attachExtraTrace(n),e._reject(n),null!=r&&r.cancel()}(r,t,s)}),e));return n.cancellation()?(s=this.then(),(r=s._then(l,u,void 0,c,void 0))._setOnCancel(c)):r=this._then(l,u,void 0,c,void 0),r}}},46178:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=r(92208),c=r(90403).TypeError,l=r(92208).inherits,u=s.errorObj,d=s.tryCatch,p={};function f(e){setTimeout((function(){throw e}),0)}function m(t,r){var i=0,o=t.length,s=new e(a);return function a(){if(i>=o)return s._fulfill();var c=function(e){var t=n(e);return t!==e&&"function"==typeof e._isDisposable&&"function"==typeof e._getDisposer&&e._isDisposable()&&t._setDisposable(e._getDisposer()),t}(t[i++]);if(c instanceof e&&c._isDisposable()){try{c=n(c._getDisposer().tryDispose(r),t.promise)}catch(e){return f(e)}if(c instanceof e)return c._then(a,f,null,null,null)}a()}(),s}function g(e,t,r){this._data=e,this._promise=t,this._context=r}function _(e,t,r){this.constructor$(e,t,r)}function h(e){return g.isDisposer(e)?(this.resources[this.index]._setDisposable(e),e.promise()):e}function y(e){this.length=e,this.promise=null,this[e-1]=null}g.prototype.data=function(){return this._data},g.prototype.promise=function(){return this._promise},g.prototype.resource=function(){return this.promise().isFulfilled()?this.promise().value():p},g.prototype.tryDispose=function(e){var t=this.resource(),r=this._context;void 0!==r&&r._pushContext();var n=t!==p?this.doDispose(t,e):null;return void 0!==r&&r._popContext(),this._promise._unsetDisposable(),this._data=null,n},g.isDisposer=function(e){return null!=e&&"function"==typeof e.resource&&"function"==typeof e.tryDispose},l(_,g),_.prototype.doDispose=function(e,t){return this.data().call(e,e,t)},y.prototype._resultCancelled=function(){for(var t=this.length,r=0;r<t;++r){var n=this[r];n instanceof e&&n.cancel()}},e.using=function(){var r=arguments.length;if(r<2)return t("you must pass at least 2 arguments to Promise.using");var i,a=arguments[r-1];if("function"!=typeof a)return t("expecting a function but got "+s.classString(a));var c=!0;2===r&&Array.isArray(arguments[0])?(r=(i=arguments[0]).length,c=!1):(i=arguments,r--);for(var l=new y(r),p=0;p<r;++p){var f=i[p];if(g.isDisposer(f)){var _=f;(f=f.promise())._setDisposable(_)}else{var v=n(f);v instanceof e&&(f=v._then(h,null,null,{resources:l,index:p},void 0))}l[p]=f}var b=new Array(l.length);for(p=0;p<b.length;++p)b[p]=e.resolve(l[p]).reflect();var k=e.all(b).then((function(e){for(var t=0;t<e.length;++t){var r=e[t];if(r.isRejected())return u.e=r.error(),u;if(!r.isFulfilled())return void k.cancel();e[t]=r.value()}x._pushContext(),a=d(a);var n=c?a.apply(void 0,e):a(e),i=x._popContext();return o.checkForgottenReturns(n,i,"Promise.using",x),n})),x=k.lastly((function(){var t=new e.PromiseInspection(k);return m(l,t)}));return l.promise=x,x._setOnCancel(l),x},e.prototype._setDisposable=function(e){this._bitField=131072|this._bitField,this._disposer=e},e.prototype._isDisposable=function(){return(131072&this._bitField)>0},e.prototype._getDisposer=function(){return this._disposer},e.prototype._unsetDisposable=function(){this._bitField=-131073&this._bitField,this._disposer=void 0},e.prototype.disposer=function(e){if("function"==typeof e)return new _(e,this,i());throw new c}}},92208:function(e,t,r){"use strict";var n=r(7585),i="undefined"==typeof navigator,a={e:{}},o,s="undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:void 0!==this?this:null;function c(){try{var e=o;return o=null,e.apply(this,arguments)}catch(e){return a.e=e,a}}function l(e){return o=e,c}var u=function(e,t){var r={}.hasOwnProperty;function n(){for(var n in this.constructor=e,this.constructor$=t,t.prototype)r.call(t.prototype,n)&&"$"!==n.charAt(n.length-1)&&(this[n+"$"]=t.prototype[n])}return n.prototype=t.prototype,e.prototype=new n,e.prototype};function d(e){return null==e||!0===e||!1===e||"string"==typeof e||"number"==typeof e}function p(e){return"function"==typeof e||"object"==typeof e&&null!==e}function f(e){return d(e)?new Error(D(e)):e}function m(e,t){var r,n=e.length,i=new Array(n+1);for(r=0;r<n;++r)i[r]=e[r];return i[r]=t,i}function g(e,t,r){if(!n.isES5)return{}.hasOwnProperty.call(e,t)?e[t]:void 0;var i=Object.getOwnPropertyDescriptor(e,t);return null!=i?null==i.get&&null==i.set?i.value:r:void 0}function _(e,t,r){if(d(e))return e;var i={value:r,configurable:!0,enumerable:!1,writable:!0};return n.defineProperty(e,t,i),e}function h(e){throw e}var y=function(){var e=[Array.prototype,Object.prototype,Function.prototype],t=function(t){for(var r=0;r<e.length;++r)if(e[r]===t)return!0;return!1};if(n.isES5){var r=Object.getOwnPropertyNames;return function(e){for(var i=[],a=Object.create(null);null!=e&&!t(e);){var o;try{o=r(e)}catch(e){return i}for(var s=0;s<o.length;++s){var c=o[s];if(!a[c]){a[c]=!0;var l=Object.getOwnPropertyDescriptor(e,c);null!=l&&null==l.get&&null==l.set&&i.push(c)}}e=n.getPrototypeOf(e)}return i}}var i={}.hasOwnProperty;return function(r){if(t(r))return[];var n=[];e:for(var a in r)if(i.call(r,a))n.push(a);else{for(var o=0;o<e.length;++o)if(i.call(e[o],a))continue e;n.push(a)}return n}}(),v=/this\s*\.\s*\S+\s*=/;function b(e){try{if("function"==typeof e){var t=n.names(e.prototype),r=n.isES5&&t.length>1,i=t.length>0&&!(1===t.length&&"constructor"===t[0]),a=v.test(e+"")&&n.names(e).length>0;if(r||i||a)return!0}return!1}catch(e){return!1}}function k(e){function t(){}t.prototype=e;for(var r=8;r--;)new t;return e}var x=/^[a-z$_][a-z$_0-9]*$/i;function S(e){return x.test(e)}function w(e,t,r){for(var n=new Array(e),i=0;i<e;++i)n[i]=t+i+r;return n}function D(e){try{return e+""}catch(e){return"[no string representation]"}}function E(e){return null!==e&&"object"==typeof e&&"string"==typeof e.message&&"string"==typeof e.name}function T(e){try{_(e,"isOperational",!0)}catch(e){}}function C(e){return null!=e&&(e instanceof Error.__BluebirdErrorTypes__.OperationalError||!0===e.isOperational)}function A(e){return E(e)&&n.propertyIsWritable(e,"stack")}var N="stack"in new Error?function(e){return A(e)?e:new Error(D(e))}:function(e){if(A(e))return e;try{throw new Error(D(e))}catch(e){return e}};function P(e){return{}.toString.call(e)}function I(e,t,r){for(var i=n.names(e),a=0;a<i.length;++a){var o=i[a];if(r(o))try{n.defineProperty(t,o,n.getDescriptor(e,o))}catch(e){}}}var F=function(e){return n.isArray(e)?e:null};if("undefined"!=typeof Symbol&&Symbol.iterator){var O="function"==typeof Array.from?function(e){return Array.from(e)}:function(e){for(var t,r=[],n=e[Symbol.iterator]();!(t=n.next()).done;)r.push(t.value);return r};F=function(e){return n.isArray(e)?e:null!=e&&"function"==typeof e[Symbol.iterator]?O(e):null}}var R="undefined"!=typeof process&&"[object process]"===P(process).toLowerCase(),M="undefined"!=typeof process&&void 0!==process.env;function L(e){return M?process.env[e]:void 0}function j(){if("function"==typeof Promise)try{var e=new Promise((function(){}));if("[object Promise]"==={}.toString.call(e))return Promise}catch(e){}}function B(e,t){return e.bind(t)}var z={isClass:b,isIdentifier:S,inheritedDataKeys:y,getDataPropertyOrDefault:g,thrower:h,isArray:n.isArray,asArray:F,notEnumerableProp:_,isPrimitive:d,isObject:p,isError:E,canEvaluate:i,errorObj:a,tryCatch:l,inherits:u,withAppended:m,maybeWrapAsError:f,toFastProperties:k,filledRange:w,toString:D,canAttachTrace:A,ensureErrorObject:N,originatesFromRejection:C,markAsOriginatingFromRejection:T,classString:P,copyDescriptors:I,hasDevTools:!1,isNode:R,hasEnvVariables:M,env:L,global:s,getNativePromise:j,domainBind:B},U;z.isRecentNode=z.isNode&&(U=process.versions.node.split(".").map(Number),0===U[0]&&U[1]>10||U[0]>0),z.isNode&&z.toFastProperties(process);try{throw new Error}catch(e){z.lastLineError=e}e.exports=z},68928:(e,t,r)=>{var n=r(49818),i=r(8505);e.exports=function(e){if(!e)return[];"{}"===e.substr(0,2)&&(e="\\{\\}"+e.substr(2));return h(function(e){return e.split("\\\\").join(a).split("\\{").join(o).split("\\}").join(s).split("\\,").join(c).split("\\.").join(l)}(e),!0).map(d)};var a="\0SLASH"+Math.random()+"\0",o="\0OPEN"+Math.random()+"\0",s="\0CLOSE"+Math.random()+"\0",c="\0COMMA"+Math.random()+"\0",l="\0PERIOD"+Math.random()+"\0";function u(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function d(e){return e.split(a).join("\\").split(o).join("{").split(s).join("}").split(c).join(",").split(l).join(".")}function p(e){if(!e)return[""];var t=[],r=i("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,s=n.split(",");s[s.length-1]+="{"+a+"}";var c=p(o);return o.length&&(s[s.length-1]+=c.shift(),s.push.apply(s,c)),t.push.apply(t,s),t}function f(e){return"{"+e+"}"}function m(e){return/^-?0\d/.test(e)}function g(e,t){return e<=t}function _(e,t){return e>=t}function h(e,t){var r=[],a=i("{","}",e);if(!a||/\$$/.test(a.pre))return[e];var o,c=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(a.body),l=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(a.body),d=c||l,y=a.body.indexOf(",")>=0;if(!d&&!y)return a.post.match(/,.*\}/)?h(e=a.pre+"{"+a.body+s+a.post):[e];if(d)o=a.body.split(/\.\./);else if(1===(o=p(a.body)).length&&1===(o=h(o[0],!1).map(f)).length)return(k=a.post.length?h(a.post,!1):[""]).map((function(e){return a.pre+o[0]+e}));var v,b=a.pre,k=a.post.length?h(a.post,!1):[""];if(d){var x=u(o[0]),S=u(o[1]),w=Math.max(o[0].length,o[1].length),D=3==o.length?Math.abs(u(o[2])):1,E=g;S<x&&(D*=-1,E=_);var T=o.some(m);v=[];for(var C=x;E(C,S);C+=D){var A;if(l)"\\"===(A=String.fromCharCode(C))&&(A="");else if(A=String(C),T){var N=w-A.length;if(N>0){var P=new Array(N+1).join("0");A=C<0?"-"+P+A.slice(1):P+A}}v.push(A)}}else v=n(o,(function(e){return h(e,!1)}));for(var I=0;I<v.length;I++)for(var F=0;F<k.length;F++){var O=b+v[I]+k[F];(!t||d||O)&&r.push(O)}return r}},84025:(e,t,r)=>{var n=r(20181).Buffer,i=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];function a(e){if(n.isBuffer(e))return e;var t="function"==typeof n.alloc&&"function"==typeof n.from;if("number"==typeof e)return t?n.alloc(e):new n(e);if("string"==typeof e)return t?n.from(e):new n(e);throw new Error("input must be buffer, number, or string, received "+typeof e)}function o(e,t){e=a(e),n.isBuffer(t)&&(t=t.readUInt32BE(0));for(var r=~t,o=0;o<e.length;o++)r=i[255&(r^e[o])]^r>>>8;return~r}function s(){return e=o.apply(null,arguments),(t=a(4)).writeInt32BE(e,0),t;var e,t}"undefined"!=typeof Int32Array&&(i=new Int32Array(i)),s.signed=function(){return o.apply(null,arguments)},s.unsigned=function(){return o.apply(null,arguments)>>>0},e.exports=s},42746:e=>{var t=Object.prototype.toString,r="undefined"!=typeof Buffer&&"function"==typeof Buffer.alloc&&"function"==typeof Buffer.allocUnsafe&&"function"==typeof Buffer.from;e.exports=function(e,n,i){if("number"==typeof e)throw new TypeError('"value" argument must not be a number');return a=e,"ArrayBuffer"===t.call(a).slice(8,-1)?function(e,t,n){t>>>=0;var i=e.byteLength-t;if(i<0)throw new RangeError("'offset' is out of bounds");if(void 0===n)n=i;else if((n>>>=0)>i)throw new RangeError("'length' is out of bounds");return r?Buffer.from(e.slice(t,t+n)):new Buffer(new Uint8Array(e.slice(t,t+n)))}(e,n,i):"string"==typeof e?function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!Buffer.isEncoding(t))throw new TypeError('"encoding" must be a valid string encoding');return r?Buffer.from(e,t):new Buffer(e,t)}(e,n):r?Buffer.from(e):new Buffer(e);var a}},36761:(e,t,r)=>{"use strict";var n=r(60382);function i(e,t){"string"==typeof e||e instanceof String?e=n(e):("number"==typeof e||e instanceof Number)&&(e=n([e]));for(var r=e.length,i=t=t||this.length-r;i>=0;i--){for(var a=!1,o=0;o<r;o++)if(this[i+o]!=e[o]){a=!0;break}if(!a)return i}return-1}Buffer.prototype.indexOf||(Buffer.prototype.indexOf=function(e,t){t=t||0,"string"==typeof e||e instanceof String?e=n(e):("number"==typeof e||e instanceof Number)&&(e=n([e]));for(var r=e.length,i=t;i<=this.length-r;i++){for(var a=!1,o=0;o<r;o++)if(this[i+o]!=e[o]){a=!0;break}if(!a)return i}return-1}),Buffer.prototype.lastIndexOf?-1===n("ABC").lastIndexOf("ABC")&&(Buffer.prototype.lastIndexOf=i):Buffer.prototype.lastIndexOf=i},60382:e=>{e.exports=function(e){return(process&&process.version?process.version:"v5.0.0").split(".")[0].replace("v","")<6?new Buffer(e):Buffer.from(e)}},86512:e=>{function t(e){if(!(this instanceof t))return new t(e);this.buffers=e||[],this.length=this.buffers.reduce((function(e,t){return e+t.length}),0)}e.exports=t,t.prototype.push=function(){for(var e=0;e<arguments.length;e++)if(!Buffer.isBuffer(arguments[e]))throw new TypeError("Tried to push a non-buffer");for(e=0;e<arguments.length;e++){var t=arguments[e];this.buffers.push(t),this.length+=t.length}return this.length},t.prototype.unshift=function(){for(var e=0;e<arguments.length;e++)if(!Buffer.isBuffer(arguments[e]))throw new TypeError("Tried to unshift a non-buffer");for(e=0;e<arguments.length;e++){var t=arguments[e];this.buffers.unshift(t),this.length+=t.length}return this.length},t.prototype.copy=function(e,t,r,n){return this.slice(r,n).copy(e,t,0,n-r)},t.prototype.splice=function(e,r){var n=this.buffers,i=e>=0?e:this.length-e,a=[].slice.call(arguments,2);(void 0===r||r>this.length-i)&&(r=this.length-i);for(e=0;e<a.length;e++)this.length+=a[e].length;for(var o=new t,s=0,c=0;c<n.length&&s+n[c].length<i;c++)s+=n[c].length;if(i-s>0){var l=i-s;if(l+r<n[c].length){o.push(n[c].slice(l,l+r));var u=n[c],d=new Buffer(l);for(e=0;e<l;e++)d[e]=u[e];var p=new Buffer(u.length-l-r);for(e=l+r;e<u.length;e++)p[e-r-l]=u[e];if(a.length>0){var f=a.slice();f.unshift(d),f.push(p),n.splice.apply(n,[c,1].concat(f)),c+=f.length,a=[]}else n.splice(c,1,d,p),c+=2}else o.push(n[c].slice(l)),n[c]=n[c].slice(0,l),c++}for(a.length>0&&(n.splice.apply(n,[c,0].concat(a)),c+=a.length);o.length<r;){var m=n[c],g=m.length,_=Math.min(g,r-o.length);_===g?(o.push(m),n.splice(c,1)):(o.push(m.slice(0,_)),n[c]=n[c].slice(_))}return this.length-=o.length,o},t.prototype.slice=function(e,t){var r=this.buffers;void 0===t&&(t=this.length),void 0===e&&(e=0),t>this.length&&(t=this.length);for(var n=0,i=0;i<r.length&&n+r[i].length<=e;i++)n+=r[i].length;for(var a=new Buffer(t-e),o=0,s=i;o<t-e&&s<r.length;s++){var c=r[s].length,l=0===o?e-n:0,u=o+c>=t-e?Math.min(l+(t-e)-o,c):c;r[s].copy(a,o,l,u),o+=u-l}return a},t.prototype.pos=function(e){if(e<0||e>=this.length)throw new Error("oob");for(var t=e,r=0,n=null;;){if(t<(n=this.buffers[r]).length)return{buf:r,offset:t};t-=n.length,r++}},t.prototype.get=function(e){var t=this.pos(e);return this.buffers[t.buf].get(t.offset)},t.prototype.set=function(e,t){var r=this.pos(e);return this.buffers[r.buf].set(r.offset,t)},t.prototype.indexOf=function(e,t){if("string"==typeof e)e=new Buffer(e);else if(!(e instanceof Buffer))throw new Error("Invalid type for a search string");if(!e.length)return 0;if(!this.length)return-1;var r,n=0,i=0,a=0,o=0;if(t){var s=this.pos(t);n=s.buf,i=s.offset,o=t}for(;;){for(;i>=this.buffers[n].length;)if(i=0,++n>=this.buffers.length)return-1;if(this.buffers[n][i]==e[a]){if(0==a&&(r={i:n,j:i,pos:o}),++a==e.length)return r.pos}else 0!=a&&(n=r.i,i=r.j,o=r.pos,a=0);i++,o++}},t.prototype.toBuffer=function(){return this.slice()},t.prototype.toString=function(e,t,r){return this.slice(t,r).toString(e)}},54787:(e,t,r)=>{var n=r(36623),i=r(24434).EventEmitter;function a(e){var t=a.saw(e,{}),r=e.call(t.handlers,t);return void 0!==r&&(t.handlers=r),t.record(),t.chain()}e.exports=a,a.light=function(e){var t=a.saw(e,{}),r=e.call(t.handlers,t);return void 0!==r&&(t.handlers=r),t.chain()},a.saw=function(e,t){var r=new i;return r.handlers=t,r.actions=[],r.chain=function(){var e=n(r.handlers).map((function(t){if(this.isRoot)return t;var n=this.path;"function"==typeof t&&this.update((function(){return r.actions.push({path:n,args:[].slice.call(arguments)}),e}))}));return process.nextTick((function(){r.emit("begin"),r.next()})),e},r.pop=function(){return r.actions.shift()},r.next=function(){var e=r.pop();if(e){if(!e.trap){var t=r.handlers;e.path.forEach((function(e){t=t[e]})),t.apply(r.handlers,e.args)}}else r.emit("end")},r.nest=function(t){var n=[].slice.call(arguments,1),i=!0;if("boolean"==typeof t){i=t;t=n.shift()}var o=a.saw(e,{}),s=e.call(o.handlers,o);void 0!==s&&(o.handlers=s),void 0!==r.step&&o.record(),t.apply(o.chain(),n),!1!==i&&o.on("end",r.next)},r.record=function(){!function(e){e.step=0,e.pop=function(){return e.actions[e.step++]},e.trap=function(t,r){var n=Array.isArray(t)?t:[t];e.actions.push({path:n,step:e.step,cb:r,trap:!0})},e.down=function(t){var r=(Array.isArray(t)?t:[t]).join("/"),n=e.actions.slice(e.step).map((function(t){return!(t.trap&&t.step<=e.step)&&t.path.join("/")==r})).indexOf(!0);n>=0?e.step+=n:e.step=e.actions.length;var i=e.actions[e.step-1];i&&i.trap?(e.step=i.step,i.cb()):e.next()},e.jump=function(t){e.step=t,e.next()}}(r)},["trap","down","jump"].forEach((function(e){r[e]=function(){throw new Error("To use the trap, down and jump features, please call record() first to start recording actions.")}})),r}},53543:e=>{var t=e.exports=function(){};t.prototype.getName=function(){},t.prototype.getSize=function(){},t.prototype.getLastModifiedDate=function(){},t.prototype.isDirectory=function(){}},10587:(e,t,r)=>{var n=r(39023).inherits,i=r(34198).Transform,a=r(53543),o=r(78575),s=e.exports=function(e){if(!(this instanceof s))return new s(e);i.call(this,e),this.offset=0,this._archive={finish:!1,finished:!1,processing:!1}};n(s,i),s.prototype._appendBuffer=function(e,t,r){},s.prototype._appendStream=function(e,t,r){},s.prototype._emitErrorCallback=function(e){e&&this.emit("error",e)},s.prototype._finish=function(e){},s.prototype._normalizeEntry=function(e){},s.prototype._transform=function(e,t,r){r(null,e)},s.prototype.entry=function(e,t,r){if(t=t||null,"function"!=typeof r&&(r=this._emitErrorCallback.bind(this)),e instanceof a)if(this._archive.finish||this._archive.finished)r(new Error("unacceptable entry after finish"));else{if(!this._archive.processing){if(this._archive.processing=!0,this._normalizeEntry(e),this._entry=e,t=o.normalizeInputSource(t),Buffer.isBuffer(t))this._appendBuffer(e,t,r);else{if(!o.isStream(t))return this._archive.processing=!1,void r(new Error("input source must be valid Stream or Buffer instance"));this._appendStream(e,t,r)}return this}r(new Error("already processing an entry"))}else r(new Error("not a valid instance of ArchiveEntry"))},s.prototype.finish=function(){this._archive.processing?this._archive.finish=!0:this._finish()},s.prototype.getBytesWritten=function(){return this.offset},s.prototype.write=function(e,t){return e&&(this.offset+=e.length),i.prototype.write.call(this,e,t)}},14909:e=>{e.exports={WORD:4,DWORD:8,EMPTY:Buffer.alloc(0),SHORT:2,SHORT_MASK:65535,SHORT_SHIFT:16,SHORT_ZERO:Buffer.from(Array(2)),LONG:4,LONG_ZERO:Buffer.from(Array(4)),MIN_VERSION_INITIAL:10,MIN_VERSION_DATA_DESCRIPTOR:20,MIN_VERSION_ZIP64:45,VERSION_MADEBY:45,METHOD_STORED:0,METHOD_DEFLATED:8,PLATFORM_UNIX:3,PLATFORM_FAT:0,SIG_LFH:67324752,SIG_DD:134695760,SIG_CFH:33639248,SIG_EOCD:101010256,SIG_ZIP64_EOCD:101075792,SIG_ZIP64_EOCD_LOC:117853008,ZIP64_MAGIC_SHORT:65535,ZIP64_MAGIC:4294967295,ZIP64_EXTRA_ID:1,ZLIB_NO_COMPRESSION:0,ZLIB_BEST_SPEED:1,ZLIB_BEST_COMPRESSION:9,ZLIB_DEFAULT_COMPRESSION:-1,MODE_MASK:4095,DEFAULT_FILE_MODE:33188,DEFAULT_DIR_MODE:16877,EXT_FILE_ATTR_DIR:1106051088,EXT_FILE_ATTR_FILE:2175008800,S_IFMT:61440,S_IFIFO:4096,S_IFCHR:8192,S_IFDIR:16384,S_IFBLK:24576,S_IFREG:32768,S_IFLNK:40960,S_IFSOCK:49152,S_DOS_A:32,S_DOS_D:16,S_DOS_V:8,S_DOS_S:4,S_DOS_H:2,S_DOS_R:1}},49933:(e,t,r)=>{var n=r(95026),i=e.exports=function(){return this instanceof i?(this.descriptor=!1,this.encryption=!1,this.utf8=!1,this.numberOfShannonFanoTrees=0,this.strongEncryption=!1,this.slidingDictionarySize=0,this):new i};i.prototype.encode=function(){return n.getShortBytes((this.descriptor?8:0)|(this.utf8?2048:0)|(this.encryption?1:0)|(this.strongEncryption?64:0))},i.prototype.parse=function(e,t){var r=n.getShortBytesValue(e,t),a=new i;return a.useDataDescriptor(!!(8&r)),a.useUTF8ForNames(!!(2048&r)),a.useStrongEncryption(!!(64&r)),a.useEncryption(!!(1&r)),a.setSlidingDictionarySize(2&r?8192:4096),a.setNumberOfShannonFanoTrees(4&r?3:2),a},i.prototype.setNumberOfShannonFanoTrees=function(e){this.numberOfShannonFanoTrees=e},i.prototype.getNumberOfShannonFanoTrees=function(){return this.numberOfShannonFanoTrees},i.prototype.setSlidingDictionarySize=function(e){this.slidingDictionarySize=e},i.prototype.getSlidingDictionarySize=function(){return this.slidingDictionarySize},i.prototype.useDataDescriptor=function(e){this.descriptor=e},i.prototype.usesDataDescriptor=function(){return this.descriptor},i.prototype.useEncryption=function(e){this.encryption=e},i.prototype.usesEncryption=function(){return this.encryption},i.prototype.useStrongEncryption=function(e){this.strongEncryption=e},i.prototype.usesStrongEncryption=function(){return this.strongEncryption},i.prototype.useUTF8ForNames=function(e){this.utf8=e},i.prototype.usesUTF8ForNames=function(){return this.utf8}},86247:e=>{e.exports={PERM_MASK:4095,FILE_TYPE_FLAG:61440,LINK_FLAG:40960,FILE_FLAG:32768,DIR_FLAG:16384,DEFAULT_LINK_PERM:511,DEFAULT_DIR_PERM:493,DEFAULT_FILE_PERM:420}},95026:e=>{var t=e.exports={};t.dateToDos=function(e,t){var r=(t=t||!1)?e.getFullYear():e.getUTCFullYear();return r<1980?2162688:r>=2044?2141175677:r-1980<<25|(t?e.getMonth():e.getUTCMonth())+1<<21|(t?e.getDate():e.getUTCDate())<<16|(t?e.getHours():e.getUTCHours())<<11|(t?e.getMinutes():e.getUTCMinutes())<<5|(t?e.getSeconds():e.getUTCSeconds())/2},t.dosToDate=function(e){return new Date(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1)},t.fromDosTime=function(e){return t.dosToDate(e.readUInt32LE(0))},t.getEightBytes=function(e){var t=Buffer.alloc(8);return t.writeUInt32LE(e%4294967296,0),t.writeUInt32LE(e/4294967296|0,4),t},t.getShortBytes=function(e){var t=Buffer.alloc(2);return t.writeUInt16LE((65535&e)>>>0,0),t},t.getShortBytesValue=function(e,t){return e.readUInt16LE(t)},t.getLongBytes=function(e){var t=Buffer.alloc(4);return t.writeUInt32LE((4294967295&e)>>>0,0),t},t.getLongBytesValue=function(e,t){return e.readUInt32LE(t)},t.toDosTime=function(e){return t.getLongBytes(t.dateToDos(e))}},57149:(e,t,r)=>{var n=r(39023).inherits,i=r(14100),a=r(53543),o=r(49933),s=r(86247),c=r(14909),l=r(95026),u=e.exports=function(e){if(!(this instanceof u))return new u(e);a.call(this),this.platform=c.PLATFORM_FAT,this.method=-1,this.name=null,this.size=0,this.csize=0,this.gpb=new o,this.crc=0,this.time=-1,this.minver=c.MIN_VERSION_INITIAL,this.mode=-1,this.extra=null,this.exattr=0,this.inattr=0,this.comment=null,e&&this.setName(e)};n(u,a),u.prototype.getCentralDirectoryExtra=function(){return this.getExtra()},u.prototype.getComment=function(){return null!==this.comment?this.comment:""},u.prototype.getCompressedSize=function(){return this.csize},u.prototype.getCrc=function(){return this.crc},u.prototype.getExternalAttributes=function(){return this.exattr},u.prototype.getExtra=function(){return null!==this.extra?this.extra:c.EMPTY},u.prototype.getGeneralPurposeBit=function(){return this.gpb},u.prototype.getInternalAttributes=function(){return this.inattr},u.prototype.getLastModifiedDate=function(){return this.getTime()},u.prototype.getLocalFileDataExtra=function(){return this.getExtra()},u.prototype.getMethod=function(){return this.method},u.prototype.getName=function(){return this.name},u.prototype.getPlatform=function(){return this.platform},u.prototype.getSize=function(){return this.size},u.prototype.getTime=function(){return-1!==this.time?l.dosToDate(this.time):-1},u.prototype.getTimeDos=function(){return-1!==this.time?this.time:0},u.prototype.getUnixMode=function(){return this.platform!==c.PLATFORM_UNIX?0:this.getExternalAttributes()>>c.SHORT_SHIFT&c.SHORT_MASK},u.prototype.getVersionNeededToExtract=function(){return this.minver},u.prototype.setComment=function(e){Buffer.byteLength(e)!==e.length&&this.getGeneralPurposeBit().useUTF8ForNames(!0),this.comment=e},u.prototype.setCompressedSize=function(e){if(e<0)throw new Error("invalid entry compressed size");this.csize=e},u.prototype.setCrc=function(e){if(e<0)throw new Error("invalid entry crc32");this.crc=e},u.prototype.setExternalAttributes=function(e){this.exattr=e>>>0},u.prototype.setExtra=function(e){this.extra=e},u.prototype.setGeneralPurposeBit=function(e){if(!(e instanceof o))throw new Error("invalid entry GeneralPurposeBit");this.gpb=e},u.prototype.setInternalAttributes=function(e){this.inattr=e},u.prototype.setMethod=function(e){if(e<0)throw new Error("invalid entry compression method");this.method=e},u.prototype.setName=function(e,t=!1){e=i(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,""),t&&(e=`/${e}`),Buffer.byteLength(e)!==e.length&&this.getGeneralPurposeBit().useUTF8ForNames(!0),this.name=e},u.prototype.setPlatform=function(e){this.platform=e},u.prototype.setSize=function(e){if(e<0)throw new Error("invalid entry size");this.size=e},u.prototype.setTime=function(e,t){if(!(e instanceof Date))throw new Error("invalid entry time");this.time=l.dateToDos(e,t)},u.prototype.setUnixMode=function(e){var t=0;t|=(e|=this.isDirectory()?c.S_IFDIR:c.S_IFREG)<<c.SHORT_SHIFT|(this.isDirectory()?c.S_DOS_D:c.S_DOS_A),this.setExternalAttributes(t),this.mode=e&c.MODE_MASK,this.platform=c.PLATFORM_UNIX},u.prototype.setVersionNeededToExtract=function(e){this.minver=e},u.prototype.isDirectory=function(){return"/"===this.getName().slice(-1)},u.prototype.isUnixSymlink=function(){return(this.getUnixMode()&s.FILE_TYPE_FLAG)===s.LINK_FLAG},u.prototype.isZip64=function(){return this.csize>c.ZIP64_MAGIC||this.size>c.ZIP64_MAGIC}},73349:(e,t,r)=>{var n=r(39023).inherits,i=r(84025),{CRC32Stream:a}=r(71),{DeflateCRC32Stream:o}=r(71),s=r(10587),c=(r(57149),r(49933),r(14909)),l=(r(78575),r(95026)),u=e.exports=function(e){if(!(this instanceof u))return new u(e);e=this.options=this._defaults(e),s.call(this,e),this._entry=null,this._entries=[],this._archive={centralLength:0,centralOffset:0,comment:"",finish:!1,finished:!1,processing:!1,forceZip64:e.forceZip64,forceLocalTime:e.forceLocalTime}};n(u,s),u.prototype._afterAppend=function(e){this._entries.push(e),e.getGeneralPurposeBit().usesDataDescriptor()&&this._writeDataDescriptor(e),this._archive.processing=!1,this._entry=null,this._archive.finish&&!this._archive.finished&&this._finish()},u.prototype._appendBuffer=function(e,t,r){0===t.length&&e.setMethod(c.METHOD_STORED);var n=e.getMethod();return n===c.METHOD_STORED&&(e.setSize(t.length),e.setCompressedSize(t.length),e.setCrc(i.unsigned(t))),this._writeLocalFileHeader(e),n===c.METHOD_STORED?(this.write(t),this._afterAppend(e),void r(null,e)):n===c.METHOD_DEFLATED?void this._smartStream(e,r).end(t):void r(new Error("compression method "+n+" not implemented"))},u.prototype._appendStream=function(e,t,r){e.getGeneralPurposeBit().useDataDescriptor(!0),e.setVersionNeededToExtract(c.MIN_VERSION_DATA_DESCRIPTOR),this._writeLocalFileHeader(e);var n=this._smartStream(e,r);t.once("error",(function(e){n.emit("error",e),n.end()})),t.pipe(n)},u.prototype._defaults=function(e){return"object"!=typeof e&&(e={}),"object"!=typeof e.zlib&&(e.zlib={}),"number"!=typeof e.zlib.level&&(e.zlib.level=c.ZLIB_BEST_SPEED),e.forceZip64=!!e.forceZip64,e.forceLocalTime=!!e.forceLocalTime,e},u.prototype._finish=function(){this._archive.centralOffset=this.offset,this._entries.forEach(function(e){this._writeCentralFileHeader(e)}.bind(this)),this._archive.centralLength=this.offset-this._archive.centralOffset,this.isZip64()&&this._writeCentralDirectoryZip64(),this._writeCentralDirectoryEnd(),this._archive.processing=!1,this._archive.finish=!0,this._archive.finished=!0,this.end()},u.prototype._normalizeEntry=function(e){-1===e.getMethod()&&e.setMethod(c.METHOD_DEFLATED),e.getMethod()===c.METHOD_DEFLATED&&(e.getGeneralPurposeBit().useDataDescriptor(!0),e.setVersionNeededToExtract(c.MIN_VERSION_DATA_DESCRIPTOR)),-1===e.getTime()&&e.setTime(new Date,this._archive.forceLocalTime),e._offsets={file:0,data:0,contents:0}},u.prototype._smartStream=function(e,t){var r=e.getMethod()===c.METHOD_DEFLATED?new o(this.options.zlib):new a,n=null;return r.once("end",function(){var i=r.digest().readUInt32BE(0);e.setCrc(i),e.setSize(r.size()),e.setCompressedSize(r.size(!0)),this._afterAppend(e),t(n,e)}.bind(this)),r.once("error",(function(e){n=e})),r.pipe(this,{end:!1}),r},u.prototype._writeCentralDirectoryEnd=function(){var e=this._entries.length,t=this._archive.centralLength,r=this._archive.centralOffset;this.isZip64()&&(e=c.ZIP64_MAGIC_SHORT,t=c.ZIP64_MAGIC,r=c.ZIP64_MAGIC),this.write(l.getLongBytes(c.SIG_EOCD)),this.write(c.SHORT_ZERO),this.write(c.SHORT_ZERO),this.write(l.getShortBytes(e)),this.write(l.getShortBytes(e)),this.write(l.getLongBytes(t)),this.write(l.getLongBytes(r));var n=this.getComment(),i=Buffer.byteLength(n);this.write(l.getShortBytes(i)),this.write(n)},u.prototype._writeCentralDirectoryZip64=function(){this.write(l.getLongBytes(c.SIG_ZIP64_EOCD)),this.write(l.getEightBytes(44)),this.write(l.getShortBytes(c.MIN_VERSION_ZIP64)),this.write(l.getShortBytes(c.MIN_VERSION_ZIP64)),this.write(c.LONG_ZERO),this.write(c.LONG_ZERO),this.write(l.getEightBytes(this._entries.length)),this.write(l.getEightBytes(this._entries.length)),this.write(l.getEightBytes(this._archive.centralLength)),this.write(l.getEightBytes(this._archive.centralOffset)),this.write(l.getLongBytes(c.SIG_ZIP64_EOCD_LOC)),this.write(c.LONG_ZERO),this.write(l.getEightBytes(this._archive.centralOffset+this._archive.centralLength)),this.write(l.getLongBytes(1))},u.prototype._writeCentralFileHeader=function(e){var t=e.getGeneralPurposeBit(),r=e.getMethod(),n=e._offsets,i=e.getSize(),a=e.getCompressedSize();if(e.isZip64()||n.file>c.ZIP64_MAGIC){i=c.ZIP64_MAGIC,a=c.ZIP64_MAGIC,e.setVersionNeededToExtract(c.MIN_VERSION_ZIP64);var o=Buffer.concat([l.getShortBytes(c.ZIP64_EXTRA_ID),l.getShortBytes(24),l.getEightBytes(e.getSize()),l.getEightBytes(e.getCompressedSize()),l.getEightBytes(n.file)],28);e.setExtra(o)}this.write(l.getLongBytes(c.SIG_CFH)),this.write(l.getShortBytes(e.getPlatform()<<8|c.VERSION_MADEBY)),this.write(l.getShortBytes(e.getVersionNeededToExtract())),this.write(t.encode()),this.write(l.getShortBytes(r)),this.write(l.getLongBytes(e.getTimeDos())),this.write(l.getLongBytes(e.getCrc())),this.write(l.getLongBytes(a)),this.write(l.getLongBytes(i));var s=e.getName(),u=e.getComment(),d=e.getCentralDirectoryExtra();t.usesUTF8ForNames()&&(s=Buffer.from(s),u=Buffer.from(u)),this.write(l.getShortBytes(s.length)),this.write(l.getShortBytes(d.length)),this.write(l.getShortBytes(u.length)),this.write(c.SHORT_ZERO),this.write(l.getShortBytes(e.getInternalAttributes())),this.write(l.getLongBytes(e.getExternalAttributes())),n.file>c.ZIP64_MAGIC?this.write(l.getLongBytes(c.ZIP64_MAGIC)):this.write(l.getLongBytes(n.file)),this.write(s),this.write(d),this.write(u)},u.prototype._writeDataDescriptor=function(e){this.write(l.getLongBytes(c.SIG_DD)),this.write(l.getLongBytes(e.getCrc())),e.isZip64()?(this.write(l.getEightBytes(e.getCompressedSize())),this.write(l.getEightBytes(e.getSize()))):(this.write(l.getLongBytes(e.getCompressedSize())),this.write(l.getLongBytes(e.getSize())))},u.prototype._writeLocalFileHeader=function(e){var t=e.getGeneralPurposeBit(),r=e.getMethod(),n=e.getName(),i=e.getLocalFileDataExtra();e.isZip64()&&(t.useDataDescriptor(!0),e.setVersionNeededToExtract(c.MIN_VERSION_ZIP64)),t.usesUTF8ForNames()&&(n=Buffer.from(n)),e._offsets.file=this.offset,this.write(l.getLongBytes(c.SIG_LFH)),this.write(l.getShortBytes(e.getVersionNeededToExtract())),this.write(t.encode()),this.write(l.getShortBytes(r)),this.write(l.getLongBytes(e.getTimeDos())),e._offsets.data=this.offset,t.usesDataDescriptor()?(this.write(c.LONG_ZERO),this.write(c.LONG_ZERO),this.write(c.LONG_ZERO)):(this.write(l.getLongBytes(e.getCrc())),this.write(l.getLongBytes(e.getCompressedSize())),this.write(l.getLongBytes(e.getSize()))),this.write(l.getShortBytes(n.length)),this.write(l.getShortBytes(i.length)),this.write(n),this.write(i),e._offsets.contents=this.offset},u.prototype.getComment=function(e){return null!==this._archive.comment?this._archive.comment:""},u.prototype.isZip64=function(){return this._archive.forceZip64||this._entries.length>c.ZIP64_MAGIC_SHORT||this._archive.centralLength>c.ZIP64_MAGIC||this._archive.centralOffset>c.ZIP64_MAGIC},u.prototype.setComment=function(e){this._archive.comment=e}},8351:(e,t,r)=>{e.exports={ArchiveEntry:r(53543),ZipArchiveEntry:r(57149),ArchiveOutputStream:r(10587),ZipArchiveOutputStream:r(73349)}},78575:(e,t,r)=>{var n=r(2203).Stream,i=r(34198).PassThrough,a=e.exports={};a.isStream=function(e){return e instanceof n},a.normalizeInputSource=function(e){if(null===e)return Buffer.alloc(0);if("string"==typeof e)return Buffer.from(e);if(a.isStream(e)&&!e._readableState){var t=new i;return e.pipe(t),t}return e}},49818:e=>{e.exports=function(e,r){for(var n=[],i=0;i<e.length;i++){var a=r(e[i],i);t(a)?n.push.apply(n,a):n.push(a)}return n};var t=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},15622:(e,t,r)=>{function n(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===n(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===n(e)},t.isObject=function(e){return"object"==typeof e&&null!==e},t.isDate=function(e){return"[object Date]"===n(e)},t.isError=function(e){return"[object Error]"===n(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=r(20181).Buffer.isBuffer},52566:(e,t)=>{ -/*! crc32.js (C) 2014-present SheetJS -- http://sheetjs.com */ -var r;r=function(e){e.version="1.2.2";var t=function(){for(var e=0,t=new Array(256),r=0;256!=r;++r)e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=r)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1,t[r]=e;return"undefined"!=typeof Int32Array?new Int32Array(t):t}(),r=function(e){var t=0,r=0,n=0,i="undefined"!=typeof Int32Array?new Int32Array(4096):new Array(4096);for(n=0;256!=n;++n)i[n]=e[n];for(n=0;256!=n;++n)for(r=e[n],t=256+n;t<4096;t+=256)r=i[t]=r>>>8^e[255&r];var a=[];for(n=1;16!=n;++n)a[n-1]="undefined"!=typeof Int32Array?i.subarray(256*n,256*n+256):i.slice(256*n,256*n+256);return a}(t),n=r[0],i=r[1],a=r[2],o=r[3],s=r[4],c=r[5],l=r[6],u=r[7],d=r[8],p=r[9],f=r[10],m=r[11],g=r[12],_=r[13],h=r[14];e.table=t,e.bstr=function(e,r){for(var n=~r,i=0,a=e.length;i<a;)n=n>>>8^t[255&(n^e.charCodeAt(i++))];return~n},e.buf=function(e,r){for(var y=~r,v=e.length-15,b=0;b<v;)y=h[e[b++]^255&y]^_[e[b++]^y>>8&255]^g[e[b++]^y>>16&255]^m[e[b++]^y>>>24]^f[e[b++]]^p[e[b++]]^d[e[b++]]^u[e[b++]]^l[e[b++]]^c[e[b++]]^s[e[b++]]^o[e[b++]]^a[e[b++]]^i[e[b++]]^n[e[b++]]^t[e[b++]];for(v+=15;b<v;)y=y>>>8^t[255&(y^e[b++])];return~y},e.str=function(e,r){for(var n=~r,i=0,a=e.length,o=0,s=0;i<a;)(o=e.charCodeAt(i++))<128?n=n>>>8^t[255&(n^o)]:o<2048?n=(n=n>>>8^t[255&(n^(192|o>>6&31))])>>>8^t[255&(n^(128|63&o))]:o>=55296&&o<57344?(o=64+(1023&o),s=1023&e.charCodeAt(i++),n=(n=(n=(n=n>>>8^t[255&(n^(240|o>>8&7))])>>>8^t[255&(n^(128|o>>2&63))])>>>8^t[255&(n^(128|s>>6&15|(3&o)<<4))])>>>8^t[255&(n^(128|63&s))]):n=(n=(n=n>>>8^t[255&(n^(224|o>>12&15))])>>>8^t[255&(n^(128|o>>6&63))])>>>8^t[255&(n^(128|63&o))];return~n}},"undefined"==typeof DO_NOT_EXPORT_CRC?r(t):r({})},35485:(e,t,r)=>{"use strict";const{Transform:n}=r(34198),i=r(52566);e.exports=class extends n{constructor(e){super(e),this.checksum=Buffer.allocUnsafe(4),this.checksum.writeInt32BE(0,0),this.rawSize=0}_transform(e,t,r){e&&(this.checksum=i.buf(e,this.checksum)>>>0,this.rawSize+=e.length),r(null,e)}digest(e){const t=Buffer.allocUnsafe(4);return t.writeUInt32BE(this.checksum>>>0,0),e?t.toString(e):t}hex(){return this.digest("hex").toUpperCase()}size(){return this.rawSize}}},40951:(e,t,r)=>{"use strict";const{DeflateRaw:n}=r(43106),i=r(52566);e.exports=class extends n{constructor(e){super(e),this.checksum=Buffer.allocUnsafe(4),this.checksum.writeInt32BE(0,0),this.rawSize=0,this.compressedSize=0}push(e,t){return e&&(this.compressedSize+=e.length),super.push(e,t)}_transform(e,t,r){e&&(this.checksum=i.buf(e,this.checksum)>>>0,this.rawSize+=e.length),super._transform(e,t,r)}digest(e){const t=Buffer.allocUnsafe(4);return t.writeUInt32BE(this.checksum>>>0,0),e?t.toString(e):t}hex(){return this.digest("hex").toUpperCase()}size(e=!1){return e?this.compressedSize:this.rawSize}}},71:(e,t,r)=>{"use strict";e.exports={CRC32Stream:r(35485),DeflateCRC32Stream:r(40951)}},74353:function(e){e.exports=function(){"use strict";var e=1e3,t=6e4,r=36e5,n="millisecond",i="second",a="minute",o="hour",s="day",c="week",l="month",u="quarter",d="year",p="date",f="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,g=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,_={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],r=e%100;return"["+e+(t[(r-20)%10]||t[r]||t[0])+"]"}},h=function(e,t,r){var n=String(e);return!n||n.length>=t?e:""+Array(t+1-n.length).join(r)+e},y={s:h,z:function(e){var t=-e.utcOffset(),r=Math.abs(t),n=Math.floor(r/60),i=r%60;return(t<=0?"+":"-")+h(n,2,"0")+":"+h(i,2,"0")},m:function e(t,r){if(t.date()<r.date())return-e(r,t);var n=12*(r.year()-t.year())+(r.month()-t.month()),i=t.clone().add(n,l),a=r-i<0,o=t.clone().add(n+(a?-1:1),l);return+(-(n+(r-i)/(a?i-o:o-i))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(e){return{M:l,y:d,w:c,d:s,D:p,h:o,m:a,s:i,ms:n,Q:u}[e]||String(e||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}},v="en",b={};b[v]=_;var k="$isDayjsObject",x=function(e){return e instanceof E||!(!e||!e[k])},S=function e(t,r,n){var i;if(!t)return v;if("string"==typeof t){var a=t.toLowerCase();b[a]&&(i=a),r&&(b[a]=r,i=a);var o=t.split("-");if(!i&&o.length>1)return e(o[0])}else{var s=t.name;b[s]=t,i=s}return!n&&i&&(v=i),i||!n&&v},w=function(e,t){if(x(e))return e.clone();var r="object"==typeof t?t:{};return r.date=e,r.args=arguments,new E(r)},D=y;D.l=S,D.i=x,D.w=function(e,t){return w(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var E=function(){function _(e){this.$L=S(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[k]=!0}var h=_.prototype;return h.parse=function(e){this.$d=function(e){var t=e.date,r=e.utc;if(null===t)return new Date(NaN);if(D.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(m);if(n){var i=n[2]-1||0,a=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)):new Date(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)}}return new Date(t)}(e),this.init()},h.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},h.$utils=function(){return D},h.isValid=function(){return!(this.$d.toString()===f)},h.isSame=function(e,t){var r=w(e);return this.startOf(t)<=r&&r<=this.endOf(t)},h.isAfter=function(e,t){return w(e)<this.startOf(t)},h.isBefore=function(e,t){return this.endOf(t)<w(e)},h.$g=function(e,t,r){return D.u(e)?this[t]:this.set(r,e)},h.unix=function(){return Math.floor(this.valueOf()/1e3)},h.valueOf=function(){return this.$d.getTime()},h.startOf=function(e,t){var r=this,n=!!D.u(t)||t,u=D.p(e),f=function(e,t){var i=D.w(r.$u?Date.UTC(r.$y,t,e):new Date(r.$y,t,e),r);return n?i:i.endOf(s)},m=function(e,t){return D.w(r.toDate()[e].apply(r.toDate("s"),(n?[0,0,0,0]:[23,59,59,999]).slice(t)),r)},g=this.$W,_=this.$M,h=this.$D,y="set"+(this.$u?"UTC":"");switch(u){case d:return n?f(1,0):f(31,11);case l:return n?f(1,_):f(0,_+1);case c:var v=this.$locale().weekStart||0,b=(g<v?g+7:g)-v;return f(n?h-b:h+(6-b),_);case s:case p:return m(y+"Hours",0);case o:return m(y+"Minutes",1);case a:return m(y+"Seconds",2);case i:return m(y+"Milliseconds",3);default:return this.clone()}},h.endOf=function(e){return this.startOf(e,!1)},h.$set=function(e,t){var r,c=D.p(e),u="set"+(this.$u?"UTC":""),f=(r={},r[s]=u+"Date",r[p]=u+"Date",r[l]=u+"Month",r[d]=u+"FullYear",r[o]=u+"Hours",r[a]=u+"Minutes",r[i]=u+"Seconds",r[n]=u+"Milliseconds",r)[c],m=c===s?this.$D+(t-this.$W):t;if(c===l||c===d){var g=this.clone().set(p,1);g.$d[f](m),g.init(),this.$d=g.set(p,Math.min(this.$D,g.daysInMonth())).$d}else f&&this.$d[f](m);return this.init(),this},h.set=function(e,t){return this.clone().$set(e,t)},h.get=function(e){return this[D.p(e)]()},h.add=function(n,u){var p,f=this;n=Number(n);var m=D.p(u),g=function(e){var t=w(f);return D.w(t.date(t.date()+Math.round(e*n)),f)};if(m===l)return this.set(l,this.$M+n);if(m===d)return this.set(d,this.$y+n);if(m===s)return g(1);if(m===c)return g(7);var _=(p={},p[a]=t,p[o]=r,p[i]=e,p)[m]||1,h=this.$d.getTime()+n*_;return D.w(h,this)},h.subtract=function(e,t){return this.add(-1*e,t)},h.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return r.invalidDate||f;var n=e||"YYYY-MM-DDTHH:mm:ssZ",i=D.z(this),a=this.$H,o=this.$m,s=this.$M,c=r.weekdays,l=r.months,u=r.meridiem,d=function(e,r,i,a){return e&&(e[r]||e(t,n))||i[r].slice(0,a)},p=function(e){return D.s(a%12||12,e,"0")},m=u||function(e,t,r){var n=e<12?"AM":"PM";return r?n.toLowerCase():n};return n.replace(g,(function(e,n){return n||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return D.s(t.$y,4,"0");case"M":return s+1;case"MM":return D.s(s+1,2,"0");case"MMM":return d(r.monthsShort,s,l,3);case"MMMM":return d(l,s);case"D":return t.$D;case"DD":return D.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return d(r.weekdaysMin,t.$W,c,2);case"ddd":return d(r.weekdaysShort,t.$W,c,3);case"dddd":return c[t.$W];case"H":return String(a);case"HH":return D.s(a,2,"0");case"h":return p(1);case"hh":return p(2);case"a":return m(a,o,!0);case"A":return m(a,o,!1);case"m":return String(o);case"mm":return D.s(o,2,"0");case"s":return String(t.$s);case"ss":return D.s(t.$s,2,"0");case"SSS":return D.s(t.$ms,3,"0");case"Z":return i}return null}(e)||i.replace(":","")}))},h.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},h.diff=function(n,p,f){var m,g=this,_=D.p(p),h=w(n),y=(h.utcOffset()-this.utcOffset())*t,v=this-h,b=function(){return D.m(g,h)};switch(_){case d:m=b()/12;break;case l:m=b();break;case u:m=b()/3;break;case c:m=(v-y)/6048e5;break;case s:m=(v-y)/864e5;break;case o:m=v/r;break;case a:m=v/t;break;case i:m=v/e;break;default:m=v}return f?m:D.a(m)},h.daysInMonth=function(){return this.endOf(l).$D},h.$locale=function(){return b[this.$L]},h.locale=function(e,t){if(!e)return this.$L;var r=this.clone(),n=S(e,t,!0);return n&&(r.$L=n),r},h.clone=function(){return D.w(this.$d,this)},h.toDate=function(){return new Date(this.valueOf())},h.toJSON=function(){return this.isValid()?this.toISOString():null},h.toISOString=function(){return this.$d.toISOString()},h.toString=function(){return this.$d.toUTCString()},_}(),T=E.prototype;return w.prototype=T,[["$ms",n],["$s",i],["$m",a],["$H",o],["$W",s],["$M",l],["$y",d],["$D",p]].forEach((function(e){T[e[1]]=function(t){return this.$g(t,e[0],e[1])}})),w.extend=function(e,t){return e.$i||(e(t,E,w),e.$i=!0),w},w.locale=S,w.isDayjs=x,w.unix=function(e){return w(1e3*e)},w.en=b[v],w.Ls=b,w.p={},w}()},90445:function(e){e.exports=function(){"use strict";var e={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d\d/,n=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,a={},o=function(e){return(e=+e)+(e>68?1900:2e3)},s=function(e){return function(t){this[e]=+t}},c=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var t=e.match(/([+-]|\d\d)/g),r=60*t[1]+(+t[2]||0);return 0===r?0:"+"===t[0]?-r:r}(e)}],l=function(e){var t=a[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var r,n=a.meridiem;if(n){for(var i=1;i<=24;i+=1)if(e.indexOf(n(i,0,t))>-1){r=i>12;break}}else r=e===(t?"pm":"PM");return r},d={A:[i,function(e){this.afternoon=u(e,!1)}],a:[i,function(e){this.afternoon=u(e,!0)}],S:[/\d/,function(e){this.milliseconds=100*+e}],SS:[r,function(e){this.milliseconds=10*+e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[n,s("seconds")],ss:[n,s("seconds")],m:[n,s("minutes")],mm:[n,s("minutes")],H:[n,s("hours")],h:[n,s("hours")],HH:[n,s("hours")],hh:[n,s("hours")],D:[n,s("day")],DD:[r,s("day")],Do:[i,function(e){var t=a.ordinal,r=e.match(/\d+/);if(this.day=r[0],t)for(var n=1;n<=31;n+=1)t(n).replace(/\[|\]/g,"")===e&&(this.day=n)}],M:[n,s("month")],MM:[r,s("month")],MMM:[i,function(e){var t=l("months"),r=(l("monthsShort")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(r<1)throw new Error;this.month=r%12||r}],MMMM:[i,function(e){var t=l("months").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\d+/,s("year")],YY:[r,function(e){this.year=o(e)}],YYYY:[/\d{4}/,s("year")],Z:c,ZZ:c};function p(r){var n,i;n=r,i=a&&a.formats;for(var o=(r=n.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,r,n){var a=n&&n.toUpperCase();return r||i[n]||e[n]||i[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,r){return t||r.slice(1)}))}))).match(t),s=o.length,c=0;c<s;c+=1){var l=o[c],u=d[l],p=u&&u[0],f=u&&u[1];o[c]=f?{regex:p,parser:f}:l.replace(/^\[|\]$/g,"")}return function(e){for(var t={},r=0,n=0;r<s;r+=1){var i=o[r];if("string"==typeof i)n+=i.length;else{var a=i.regex,c=i.parser,l=e.slice(n),u=a.exec(l)[0];c.call(t,u),e=e.replace(u,"")}}return function(e){var t=e.afternoon;if(void 0!==t){var r=e.hours;t?r<12&&(e.hours+=12):12===r&&(e.hours=0),delete e.afternoon}}(t),t}}return function(e,t,r){r.p.customParseFormat=!0,e&&e.parseTwoDigitYear&&(o=e.parseTwoDigitYear);var n=t.prototype,i=n.parse;n.parse=function(e){var t=e.date,n=e.utc,o=e.args;this.$u=n;var s=o[1];if("string"==typeof s){var c=!0===o[2],l=!0===o[3],u=c||l,d=o[2];l&&(d=o[2]),a=this.$locale(),!c&&d&&(a=r.Ls[d]),this.$d=function(e,t,r){try{if(["x","X"].indexOf(t)>-1)return new Date(("X"===t?1e3:1)*e);var n=p(t)(e),i=n.year,a=n.month,o=n.day,s=n.hours,c=n.minutes,l=n.seconds,u=n.milliseconds,d=n.zone,f=new Date,m=o||(i||a?1:f.getDate()),g=i||f.getFullYear(),_=0;i&&!a||(_=a>0?a-1:f.getMonth());var h=s||0,y=c||0,v=l||0,b=u||0;return d?new Date(Date.UTC(g,_,m,h,y,v,b+60*d.offset*1e3)):r?new Date(Date.UTC(g,_,m,h,y,v,b)):new Date(g,_,m,h,y,v,b)}catch(e){return new Date("")}}(t,s,n),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(s)&&(this.$d=new Date("")),a={}}else if(s instanceof Array)for(var f=s.length,m=1;m<=f;m+=1){o[1]=s[m-1];var g=r.apply(this,o);if(g.isValid()){this.$d=g.$d,this.$L=g.$L,this.init();break}m===f&&(this.$d=new Date(""))}else i.call(this,e)}}}()},83826:function(e){e.exports=function(){"use strict";var e="minute",t=/[+-]\d\d(?::?\d\d)?/g,r=/([+-]|\d\d)/g;return function(n,i,a){var o=i.prototype;a.utc=function(e){return new i({date:e,utc:!0,args:arguments})},o.utc=function(t){var r=a(this.toDate(),{locale:this.$L,utc:!0});return t?r.add(this.utcOffset(),e):r},o.local=function(){return a(this.toDate(),{locale:this.$L,utc:!1})};var s=o.parse;o.parse=function(e){e.utc&&(this.$u=!0),this.$utils().u(e.$offset)||(this.$offset=e.$offset),s.call(this,e)};var c=o.init;o.init=function(){if(this.$u){var e=this.$d;this.$y=e.getUTCFullYear(),this.$M=e.getUTCMonth(),this.$D=e.getUTCDate(),this.$W=e.getUTCDay(),this.$H=e.getUTCHours(),this.$m=e.getUTCMinutes(),this.$s=e.getUTCSeconds(),this.$ms=e.getUTCMilliseconds()}else c.call(this)};var l=o.utcOffset;o.utcOffset=function(n,i){var a=this.$utils().u;if(a(n))return this.$u?0:a(this.$offset)?l.call(this):this.$offset;if("string"==typeof n&&(n=function(e){void 0===e&&(e="");var n=e.match(t);if(!n)return null;var i=(""+n[0]).match(r)||["-",0,0],a=i[0],o=60*+i[1]+ +i[2];return 0===o?0:"+"===a?o:-o}(n),null===n))return this;var o=Math.abs(n)<=16?60*n:n,s=this;if(i)return s.$offset=o,s.$u=0===n,s;if(0!==n){var c=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(s=this.local().add(o+c,e)).$offset=o,s.$x.$localOffset=c}else s=this.utc();return s};var u=o.format;o.format=function(e){var t=e||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return u.call(this,t)},o.valueOf=function(){var e=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*e},o.isUTC=function(){return!!this.$u},o.toISOString=function(){return this.toDate().toISOString()},o.toString=function(){return this.toDate().toUTCString()};var d=o.toDate;o.toDate=function(e){return"s"===e&&this.$offset?a(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():d.call(this)};var p=o.diff;o.diff=function(e,t,r){if(e&&this.$u===e.$u)return p.call(this,e,t,r);var n=this.local(),i=a(e).local();return p.call(n,i,t,r)}}}()},87450:(e,t,r)=>{"use strict";var n=r(35053);function i(e,t,r){void 0===r&&(r=t,t=e,e=null),n.Duplex.call(this,e),"function"!=typeof r.read&&(r=new n.Readable(e).wrap(r)),this._writable=t,this._readable=r,this._waiting=!1;var i=this;t.once("finish",(function(){i.end()})),this.once("finish",(function(){t.end()})),r.on("readable",(function(){i._waiting&&(i._waiting=!1,i._read())})),r.once("end",(function(){i.push(null)})),e&&void 0!==e.bubbleErrors&&!e.bubbleErrors||(t.on("error",(function(e){i.emit("error",e)})),r.on("error",(function(e){i.emit("error",e)})))}i.prototype=Object.create(n.Duplex.prototype,{constructor:{value:i}}),i.prototype._write=function(e,t,r){this._writable.write(e,t,r)},i.prototype._read=function(){for(var e,t=0;null!==(e=this._readable.read());)this.push(e),t++;0===t&&(this._waiting=!0)},e.exports=function(e,t,r){return new i(e,t,r)},e.exports.DuplexWrapper=i},44849:(e,t,r)=>{"use strict";var n=r(33225),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(15622));a.inherits=r(72017);var o=r(5335),s=r(75675);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},11557:(e,t,r)=>{"use strict";e.exports=a;var n=r(31719),i=Object.create(r(15622));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(72017),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},5335:(e,t,r)=>{"use strict";var n=r(33225);e.exports=y;var i,a=r(64634);y.ReadableState=h;r(24434).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(13961),c=r(92861).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(15622));u.inherits=r(72017);var d=r(39023),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(46631),g=r(72351);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(44849));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(83141).I),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(44849),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,S(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&S(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(83141).I),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(w,e):w(e))}function w(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(E,e,t))}function E(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):S(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&S(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},31719:(e,t,r)=>{"use strict";e.exports=o;var n=r(44849),i=Object.create(r(15622));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(72017),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},75675:(e,t,r)=>{"use strict";var n=r(33225);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(15622));s.inherits=r(72017);var c={deprecate:r(27983)},l=r(13961),u=r(92861).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(72351);function m(){}function g(e,t){a=a||r(44849),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(44849),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},46631:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=r(39023);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},72351:(e,t,r)=>{"use strict";var n=r(33225);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},13961:(e,t,r)=>{e.exports=r(2203)},35053:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(5335)).Stream=n||t,t.Readable=t,t.Writable=r(75675),t.Duplex=r(44849),t.Transform=r(31719),t.PassThrough=r(11557))},26611:(e,t,r)=>{var n=r(83519),i=function(){},a=function(e,t,r){if("function"==typeof t)return a(e,null,t);t||(t={}),r=n(r||i);var o=e._writableState,s=e._readableState,c=t.readable||!1!==t.readable&&e.readable,l=t.writable||!1!==t.writable&&e.writable,u=!1,d=function(){e.writable||p()},p=function(){l=!1,c||r.call(e)},f=function(){c=!1,l||r.call(e)},m=function(t){r.call(e,t?new Error("exited with error code: "+t):null)},g=function(t){r.call(e,t)},_=function(){process.nextTick(h)},h=function(){if(!u)return(!c||s&&s.ended&&!s.destroyed)&&(!l||o&&o.ended&&!o.destroyed)?void 0:r.call(e,new Error("premature close"))},y=function(){e.req.on("finish",p)};return!function(e){return e.setHeader&&"function"==typeof e.abort}(e)?l&&!o&&(e.on("end",d),e.on("close",d)):(e.on("complete",p),e.on("abort",_),e.req?y():e.on("request",y)),function(e){return e.stdio&&Array.isArray(e.stdio)&&3===e.stdio.length}(e)&&e.on("exit",m),e.on("end",f),e.on("finish",p),!1!==t.error&&e.on("error",g),e.on("close",_),function(){u=!0,e.removeListener("complete",p),e.removeListener("abort",_),e.removeListener("request",y),e.req&&e.req.removeListener("finish",p),e.removeListener("end",d),e.removeListener("close",d),e.removeListener("finish",p),e.removeListener("exit",m),e.removeListener("end",f),e.removeListener("error",g),e.removeListener("close",_)}};e.exports=a},6752:(e,t,r)=>{if(parseInt(process.versions.node.split(".")[0],10)<10)throw new Error("For node versions older than 10, please use the ES5 Import: https://github.com/exceljs/exceljs#es5-imports");e.exports=r(25046)},75772:(e,t,r)=>{const n=r(79896),i=r(67808),a=r(90445),o=r(83826),s=r(74353).extend(a).extend(o),c=r(87137),{fs:{exists:l}}=r(67032),u={true:!0,false:!1,"#N/A":{error:"#N/A"},"#REF!":{error:"#REF!"},"#NAME?":{error:"#NAME?"},"#DIV/0!":{error:"#DIV/0!"},"#NULL!":{error:"#NULL!"},"#VALUE!":{error:"#VALUE!"},"#NUM!":{error:"#NUM!"}};e.exports=class{constructor(e){this.workbook=e,this.worksheet=null}async readFile(e,t){if(t=t||{},!await l(e))throw new Error(`File not found: ${e}`);const r=n.createReadStream(e),i=await this.read(r,t);return r.close(),i}read(e,t){return t=t||{},new Promise(((r,n)=>{const a=this.workbook.addWorksheet(t.sheetName),o=t.dateFormats||["YYYY-MM-DD[T]HH:mm:ssZ","YYYY-MM-DD[T]HH:mm:ss","MM-DD-YYYY","YYYY-MM-DD"],c=t.map||function(e){if(""===e)return null;const t=Number(e);if(!Number.isNaN(t)&&t!==1/0)return t;const r=o.reduce(((t,r)=>{if(t)return t;const n=s(e,r,!0);return n.isValid()?n:null}),null);if(r)return new Date(r.valueOf());const n=u[e];return void 0!==n?n:e},l=i.parse(t.parserOptions).on("data",(e=>{a.addRow(e.map(c))})).on("end",(()=>{l.emit("worksheet",a)}));l.on("worksheet",r).on("error",n),e.pipe(l)}))}createInputStream(){throw new Error("`CSV#createInputStream` is deprecated. You should use `CSV#read` instead. This method will be removed in version 5.0. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md")}write(e,t){return new Promise(((r,n)=>{t=t||{};const a=this.workbook.getWorksheet(t.sheetName||t.sheetId),o=i.format(t.formatterOptions);e.on("finish",(()=>{r()})),o.on("error",n),o.pipe(e);const{dateFormat:c,dateUTC:l}=t,u=t.map||(e=>{if(e){if(e.text||e.hyperlink)return e.hyperlink||e.text||"";if(e.formula||e.result)return e.result||"";if(e instanceof Date)return c?l?s.utc(e).format(c):s(e).format(c):l?s.utc(e).format():s(e).format();if(e.error)return e.error;if("object"==typeof e)return JSON.stringify(e)}return e}),d=void 0===t.includeEmptyRows||t.includeEmptyRows;let p=1;a&&a.eachRow(((e,t)=>{if(d)for(;p++<t-1;)o.write([]);const{values:r}=e;r.shift(),o.write(r.map(u)),p=t})),o.end()}))}writeFile(e,t){const r={encoding:(t=t||{}).encoding||"utf8"},i=n.createWriteStream(e,r);return this.write(i,t)}async writeBuffer(e){const t=new c;return await this.write(t,e),t.read()}}},14917:(e,t,r)=>{"use strict";const n=r(29428);class i{constructor(e,t,r=0){if(this.worksheet=e,t)if("string"==typeof t){const e=n.decodeAddress(t);this.nativeCol=e.col+r,this.nativeColOff=0,this.nativeRow=e.row+r,this.nativeRowOff=0}else void 0!==t.nativeCol?(this.nativeCol=t.nativeCol||0,this.nativeColOff=t.nativeColOff||0,this.nativeRow=t.nativeRow||0,this.nativeRowOff=t.nativeRowOff||0):void 0!==t.col?(this.col=t.col+r,this.row=t.row+r):(this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0);else this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0}static asInstance(e){return e instanceof i||null==e?e:new i(e)}get col(){return this.nativeCol+Math.min(this.colWidth-1,this.nativeColOff)/this.colWidth}set col(e){this.nativeCol=Math.floor(e),this.nativeColOff=Math.floor((e-this.nativeCol)*this.colWidth)}get row(){return this.nativeRow+Math.min(this.rowHeight-1,this.nativeRowOff)/this.rowHeight}set row(e){this.nativeRow=Math.floor(e),this.nativeRowOff=Math.floor((e-this.nativeRow)*this.rowHeight)}get colWidth(){return this.worksheet&&this.worksheet.getColumn(this.nativeCol+1)&&this.worksheet.getColumn(this.nativeCol+1).isCustomWidth?Math.floor(1e4*this.worksheet.getColumn(this.nativeCol+1).width):64e4}get rowHeight(){return this.worksheet&&this.worksheet.getRow(this.nativeRow+1)&&this.worksheet.getRow(this.nativeRow+1).height?Math.floor(1e4*this.worksheet.getRow(this.nativeRow+1).height):18e4}get model(){return{nativeCol:this.nativeCol,nativeColOff:this.nativeColOff,nativeRow:this.nativeRow,nativeRowOff:this.nativeRowOff}}set model(e){this.nativeCol=e.nativeCol,this.nativeColOff=e.nativeColOff,this.nativeRow=e.nativeRow,this.nativeRowOff=e.nativeRowOff}}e.exports=i},88732:(e,t,r)=>{const n=r(29428),i=r(67984),a=r(70880),{slideFormula:o}=r(34667),s=r(87952);class c{constructor(e,t,r){if(!e||!t)throw new Error("A Cell needs a Row");this._row=e,this._column=t,n.validateAddress(r),this._address=r,this._value=l.create(c.Types.Null,this),this.style=this._mergeStyle(e.style,t.style,{}),this._mergeCount=0}get worksheet(){return this._row.worksheet}get workbook(){return this._row.worksheet.workbook}destroy(){delete this.style,delete this._value,delete this._row,delete this._column,delete this._address}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e}get font(){return this.style.font}set font(e){this.style.font=e}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e}get border(){return this.style.border}set border(e){this.style.border=e}get fill(){return this.style.fill}set fill(e){this.style.fill=e}get protection(){return this.style.protection}set protection(e){this.style.protection=e}_mergeStyle(e,t,r){const n=e&&e.numFmt||t&&t.numFmt;n&&(r.numFmt=n);const i=e&&e.font||t&&t.font;i&&(r.font=i);const a=e&&e.alignment||t&&t.alignment;a&&(r.alignment=a);const o=e&&e.border||t&&t.border;o&&(r.border=o);const s=e&&e.fill||t&&t.fill;s&&(r.fill=s);const c=e&&e.protection||t&&t.protection;return c&&(r.protection=c),r}get address(){return this._address}get row(){return this._row.number}get col(){return this._column.number}get $col$row(){return`$${this._column.letter}$${this.row}`}get type(){return this._value.type}get effectiveType(){return this._value.effectiveType}toCsvString(){return this._value.toCsvString()}addMergeRef(){this._mergeCount++}releaseMergeRef(){this._mergeCount--}get isMerged(){return this._mergeCount>0||this.type===c.Types.Merge}merge(e,t){this._value.release(),this._value=l.create(c.Types.Merge,this,e),t||(this.style=e.style)}unmerge(){this.type===c.Types.Merge&&(this._value.release(),this._value=l.create(c.Types.Null,this),this.style=this._mergeStyle(this._row.style,this._column.style,{}))}isMergedTo(e){return this._value.type===c.Types.Merge&&this._value.isMergedTo(e)}get master(){return this.type===c.Types.Merge?this._value.master:this}get isHyperlink(){return this._value.type===c.Types.Hyperlink}get hyperlink(){return this._value.hyperlink}get value(){return this._value.value}set value(e){this.type!==c.Types.Merge?(this._value.release(),this._value=l.create(l.getType(e),this,e)):this._value.master.value=e}get note(){return this._comment&&this._comment.note}set note(e){this._comment=new s(e)}get text(){return this._value.toString()}get html(){return i.escapeHtml(this.text)}toString(){return this.text}_upgradeToHyperlink(e){this.type===c.Types.String&&(this._value=l.create(c.Types.Hyperlink,this,{text:this._value.value,hyperlink:e}))}get formula(){return this._value.formula}get result(){return this._value.result}get formulaType(){return this._value.formulaType}get fullAddress(){const{worksheet:e}=this._row;return{sheetName:e.name,address:this.address,row:this.row,col:this.col}}get name(){return this.names[0]}set name(e){this.names=[e]}get names(){return this.workbook.definedNames.getNamesEx(this.fullAddress)}set names(e){const{definedNames:t}=this.workbook;t.removeAllNames(this.fullAddress),e.forEach((e=>{t.addEx(this.fullAddress,e)}))}addName(e){this.workbook.definedNames.addEx(this.fullAddress,e)}removeName(e){this.workbook.definedNames.removeEx(this.fullAddress,e)}removeAllNames(){this.workbook.definedNames.removeAllNames(this.fullAddress)}get _dataValidations(){return this.worksheet.dataValidations}get dataValidation(){return this._dataValidations.find(this.address)}set dataValidation(e){this._dataValidations.add(this.address,e)}get model(){const{model:e}=this._value;return e.style=this.style,this._comment&&(e.comment=this._comment.model),e}set model(e){if(this._value.release(),this._value=l.create(e.type,this),this._value.model=e,e.comment&&"note"===e.comment.type)this._comment=s.fromModel(e.comment);e.style?this.style=e.style:this.style={}}}c.Types=a.ValueType;const l={getType:e=>null==e?c.Types.Null:e instanceof String||"string"==typeof e?c.Types.String:"number"==typeof e?c.Types.Number:"boolean"==typeof e?c.Types.Boolean:e instanceof Date?c.Types.Date:e.text&&e.hyperlink?c.Types.Hyperlink:e.formula||e.sharedFormula?c.Types.Formula:e.richText?c.Types.RichText:e.sharedString?c.Types.SharedString:e.error?c.Types.Error:c.Types.JSON,types:[{t:c.Types.Null,f:class{constructor(e){this.model={address:e.address,type:c.Types.Null}}get value(){return null}set value(e){}get type(){return c.Types.Null}get effectiveType(){return c.Types.Null}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return""}release(){}toString(){return""}}},{t:c.Types.Number,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Number,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Number}get effectiveType(){return c.Types.Number}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.String,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.String}get effectiveType(){return c.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return`"${this.model.value.replace(/"/g,'""')}"`}release(){}toString(){return this.model.value}}},{t:c.Types.Date,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Date,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Date}get effectiveType(){return c.Types.Date}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toISOString()}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.Hyperlink,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Hyperlink,text:t?t.text:void 0,hyperlink:t?t.hyperlink:void 0},t&&t.tooltip&&(this.model.tooltip=t.tooltip)}get value(){const e={text:this.model.text,hyperlink:this.model.hyperlink};return this.model.tooltip&&(e.tooltip=this.model.tooltip),e}set value(e){this.model={text:e.text,hyperlink:e.hyperlink},e.tooltip&&(this.model.tooltip=e.tooltip)}get text(){return this.model.text}set text(e){this.model.text=e}get hyperlink(){return this.model.hyperlink}set hyperlink(e){this.model.hyperlink=e}get type(){return c.Types.Hyperlink}get effectiveType(){return c.Types.Hyperlink}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.hyperlink}release(){}toString(){return this.model.text}}},{t:c.Types.Formula,f:class{constructor(e,t){this.cell=e,this.model={address:e.address,type:c.Types.Formula,shareType:t?t.shareType:void 0,ref:t?t.ref:void 0,formula:t?t.formula:void 0,sharedFormula:t?t.sharedFormula:void 0,result:t?t.result:void 0}}_copyModel(e){const t={},r=r=>{const n=e[r];n&&(t[r]=n)};return r("formula"),r("result"),r("ref"),r("shareType"),r("sharedFormula"),t}get value(){return this._copyModel(this.model)}set value(e){this.model=this._copyModel(e)}validate(e){switch(l.getType(e)){case c.Types.Null:case c.Types.String:case c.Types.Number:case c.Types.Date:break;case c.Types.Hyperlink:case c.Types.Formula:default:throw new Error("Cannot process that type of result value")}}get dependencies(){return{ranges:this.formula.match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g),cells:this.formula.replace(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g,"").match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}/g)}}get formula(){return this.model.formula||this._getTranslatedFormula()}set formula(e){this.model.formula=e}get formulaType(){return this.model.formula?a.FormulaType.Master:this.model.sharedFormula?a.FormulaType.Shared:a.FormulaType.None}get result(){return this.model.result}set result(e){this.model.result=e}get type(){return c.Types.Formula}get effectiveType(){const e=this.model.result;return null==e?a.ValueType.Null:e instanceof String||"string"==typeof e?a.ValueType.String:"number"==typeof e?a.ValueType.Number:e instanceof Date?a.ValueType.Date:e.text&&e.hyperlink?a.ValueType.Hyperlink:e.formula?a.ValueType.Formula:a.ValueType.Null}get address(){return this.model.address}set address(e){this.model.address=e}_getTranslatedFormula(){if(!this._translatedFormula&&this.model.sharedFormula){const{worksheet:e}=this.cell,t=e.findCell(this.model.sharedFormula);this._translatedFormula=t&&o(t.formula,t.address,this.model.address)}return this._translatedFormula}toCsvString(){return`${this.model.result||""}`}release(){}toString(){return this.model.result?this.model.result.toString():""}}},{t:c.Types.Merge,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Merge,master:t?t.address:void 0},this._master=t,t&&t.addMergeRef()}get value(){return this._master.value}set value(e){e instanceof c?(this._master&&this._master.releaseMergeRef(),e.addMergeRef(),this._master=e):this._master.value=e}isMergedTo(e){return e===this._master}get master(){return this._master}get type(){return c.Types.Merge}get effectiveType(){return this._master.effectiveType}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return""}release(){this._master.releaseMergeRef()}toString(){return this.value.toString()}}},{t:c.Types.JSON,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.String,value:JSON.stringify(t),rawValue:t}}get value(){return this.model.rawValue}set value(e){this.model.rawValue=e,this.model.value=JSON.stringify(e)}get type(){return c.Types.String}get effectiveType(){return c.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value}release(){}toString(){return this.model.value}}},{t:c.Types.SharedString,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.SharedString,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.SharedString}get effectiveType(){return c.Types.SharedString}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.RichText,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}toString(){return this.model.value.richText.map((e=>e.text)).join("")}get type(){return c.Types.RichText}get effectiveType(){return c.Types.RichText}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return`"${this.text.replace(/"/g,'""')}"`}release(){}}},{t:c.Types.Boolean,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Boolean,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Boolean}get effectiveType(){return c.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value?1:0}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.Error,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Error,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Error}get effectiveType(){return c.Types.Error}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.toString()}release(){}toString(){return this.model.value.error.toString()}}}].reduce(((e,t)=>(e[t.t]=t.f,e)),[]),create(e,t,r){const n=this.types[e];if(!n)throw new Error(`Could not create Value of type ${e}`);return new n(t,r)}};e.exports=c},93362:(e,t,r)=>{"use strict";const n=r(67984),i=r(70880),a=r(29428);class o{constructor(e,t,r){this._worksheet=e,this._number=t,!1!==r&&(this.defn=r)}get number(){return this._number}get worksheet(){return this._worksheet}get letter(){return a.n2l(this._number)}get isCustomWidth(){return void 0!==this.width&&9!==this.width}get defn(){return{header:this._header,key:this.key,width:this.width,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel}}set defn(e){e?(this.key=e.key,this.width=void 0!==e.width?e.width:9,this.outlineLevel=e.outlineLevel,e.style?this.style=e.style:this.style={},this.header=e.header,this._hidden=!!e.hidden):(delete this._header,delete this._key,delete this.width,this.style={},this.outlineLevel=0)}get headers(){return this._header&&this._header instanceof Array?this._header:[this._header]}get header(){return this._header}set header(e){void 0!==e?(this._header=e,this.headers.forEach(((e,t)=>{this._worksheet.getCell(t+1,this.number).value=e}))):this._header=void 0}get key(){return this._key}set key(e){(this._key&&this._worksheet.getColumnKey(this._key))===this&&this._worksheet.deleteColumnKey(this._key),this._key=e,e&&this._worksheet.setColumnKey(this._key,this)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel||0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=this._worksheet.properties.outlineLevelCol)}toString(){return JSON.stringify({key:this.key,width:this.width,headers:this.headers.length?this.headers:void 0})}equivalentTo(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&n.isEqual(this.style,e.style)}get isDefault(){if(this.isCustomWidth)return!1;if(this.hidden)return!1;if(this.outlineLevel)return!1;const e=this.style;return!e||!(e.font||e.numFmt||e.alignment||e.border||e.fill||e.protection)}get headerCount(){return this.headers.length}eachCell(e,t){const r=this.number;t||(t=e,e=null),this._worksheet.eachRow(e,((e,n)=>{t(e.getCell(r),n)}))}get values(){const e=[];return this.eachCell(((t,r)=>{t&&t.type!==i.ValueType.Null&&(e[r]=t.value)})),e}set values(e){if(!e)return;const t=this.number;let r=0;e.hasOwnProperty("0")&&(r=1),e.forEach(((e,n)=>{this._worksheet.getCell(n+r,t).value=e}))}_applyStyle(e,t){return this.style[e]=t,this.eachCell((r=>{r[e]=t})),t}get numFmt(){return this.style.numFmt}set numFmt(e){this._applyStyle("numFmt",e)}get font(){return this.style.font}set font(e){this._applyStyle("font",e)}get alignment(){return this.style.alignment}set alignment(e){this._applyStyle("alignment",e)}get protection(){return this.style.protection}set protection(e){this._applyStyle("protection",e)}get border(){return this.style.border}set border(e){this._applyStyle("border",e)}get fill(){return this.style.fill}set fill(e){this._applyStyle("fill",e)}static toModel(e){const t=[];let r=null;return e&&e.forEach(((e,n)=>{e.isDefault?r&&(r=null):r&&e.equivalentTo(r)?r.max=n+1:(r={min:n+1,max:n+1,width:void 0!==e.width?e.width:9,style:e.style,isCustomWidth:e.isCustomWidth,hidden:e.hidden,outlineLevel:e.outlineLevel,collapsed:e.collapsed},t.push(r))})),t.length?t:void 0}static fromModel(e,t){const r=[];let n=1,i=0;for(t=(t=t||[]).sort((function(e,t){return e.min-t.min}));i<t.length;){const a=t[i++];for(;n<a.min;)r.push(new o(e,n++));for(;n<=a.max;)r.push(new o(e,n++,a))}return r.length?r:null}}e.exports=o},88561:e=>{e.exports=class{constructor(e){this.model=e||{}}add(e,t){return this.model[e]=t}find(e){return this.model[e]}remove(e){this.model[e]=void 0}}},13522:(e,t,r)=>{"use strict";const n=r(67984),i=r(29428),a=r(38583),o=r(69311),s=/[$](\w+)[$](\d+)(:[$](\w+)[$](\d+))?/;e.exports=class{constructor(){this.matrixMap={}}getMatrix(e){return this.matrixMap[e]||(this.matrixMap[e]=new a)}add(e,t){const r=i.decodeEx(e);this.addEx(r,t)}addEx(e,t){const r=this.getMatrix(t);if(e.top)for(let t=e.left;t<=e.right;t++)for(let n=e.top;n<=e.bottom;n++){const a={sheetName:e.sheetName,address:i.n2l(t)+n,row:n,col:t};r.addCellEx(a)}else r.addCellEx(e)}remove(e,t){const r=i.decodeEx(e);this.removeEx(r,t)}removeEx(e,t){this.getMatrix(t).removeCellEx(e)}removeAllNames(e){n.each(this.matrixMap,(t=>{t.removeCellEx(e)}))}forEach(e){n.each(this.matrixMap,((t,r)=>{t.forEach((t=>{e(r,t)}))}))}getNames(e){return this.getNamesEx(i.decodeEx(e))}getNamesEx(e){return n.map(this.matrixMap,((t,r)=>t.findCellEx(e)&&r)).filter(Boolean)}_explore(e,t){t.mark=!1;const{sheetName:r}=t,n=new o(t.row,t.col,t.row,t.col,r);let i,a;function s(i,a){const o=e.findCellAt(r,i,t.col);return!(!o||!o.mark)&&(n[a]=i,o.mark=!1,!0)}for(a=t.row-1;s(a,"top");a--);for(a=t.row+1;s(a,"bottom");a++);function c(t,i){const o=[];for(a=n.top;a<=n.bottom;a++){const n=e.findCellAt(r,a,t);if(!n||!n.mark)return!1;o.push(n)}n[i]=t;for(let e=0;e<o.length;e++)o[e].mark=!1;return!0}for(i=t.col-1;c(i,"left");i--);for(i=t.col+1;c(i,"right");i++);return n}getRanges(e,t){if(!(t=t||this.matrixMap[e]))return{name:e,ranges:[]};t.forEach((e=>{e.mark=!0}));return{name:e,ranges:t.map((e=>e.mark&&this._explore(t,e))).filter(Boolean).map((e=>e.$shortRange))}}normaliseMatrix(e,t){e.forEachInSheet(t,((e,t,r)=>{e&&(e.row===t&&e.col===r||(e.row=t,e.col=r,e.address=i.n2l(r)+t))}))}spliceRows(e,t,r,i){n.each(this.matrixMap,(n=>{n.spliceRows(e,t,r,i),this.normaliseMatrix(n,e)}))}spliceColumns(e,t,r,i){n.each(this.matrixMap,(n=>{n.spliceColumns(e,t,r,i),this.normaliseMatrix(n,e)}))}get model(){return n.map(this.matrixMap,((e,t)=>this.getRanges(t,e))).filter((e=>e.ranges.length))}set model(e){const t=this.matrixMap={};e.forEach((e=>{const r=t[e.name]=new a;e.ranges.forEach((e=>{s.test(e.split("!").pop()||"")&&r.addCell(e)}))}))}}},70880:e=>{"use strict";e.exports={ValueType:{Null:0,Merge:1,Number:2,String:3,Date:4,Hyperlink:5,Formula:6,SharedString:7,RichText:8,Boolean:9,Error:10},FormulaType:{None:0,Master:1,Shared:2},RelationshipType:{None:0,OfficeDocument:1,Worksheet:2,CalcChain:3,SharedStrings:4,Styles:5,Theme:6,Hyperlink:7},DocumentType:{Xlsx:1},ReadingOrder:{LeftToRight:1,RightToLeft:2},ErrorValue:{NotApplicable:"#N/A",Ref:"#REF!",Name:"#NAME?",DivZero:"#DIV/0!",Null:"#NULL!",Value:"#VALUE!",Num:"#NUM!"}}},90239:(e,t,r)=>{const n=r(29428),i=r(14917);e.exports=class{constructor(e,t){this.worksheet=e,this.model=t}get model(){switch(this.type){case"background":return{type:this.type,imageId:this.imageId};case"image":return{type:this.type,imageId:this.imageId,hyperlinks:this.range.hyperlinks,range:{tl:this.range.tl.model,br:this.range.br&&this.range.br.model,ext:this.range.ext,editAs:this.range.editAs}};default:throw new Error("Invalid Image Type")}}set model({type:e,imageId:t,range:r,hyperlinks:a}){if(this.type=e,this.imageId=t,"image"===e)if("string"==typeof r){const e=n.decode(r);this.range={tl:new i(this.worksheet,{col:e.left,row:e.top},-1),br:new i(this.worksheet,{col:e.right,row:e.bottom},0),editAs:"oneCell"}}else this.range={tl:new i(this.worksheet,r.tl,0),br:r.br&&new i(this.worksheet,r.br,0),ext:r.ext,editAs:r.editAs,hyperlinks:a||r.hyperlinks}}}},98236:(e,t,r)=>{"use strict";const n=r(59276);e.exports=class{constructor(e){this.model=e}get xlsx(){return this._xlsx||(this._xlsx=new n(this)),this._xlsx}}},87952:(e,t,r)=>{const n=r(67984);class i{constructor(e){this.note=e}get model(){let e=null;if("string"==typeof this.note)e={type:"note",note:{texts:[{text:this.note}]}};else e={type:"note",note:this.note};return n.deepMerge({},i.DEFAULT_CONFIGS,e)}set model(e){const{note:t}=e,{texts:r}=t;1===r.length&&1===Object.keys(r[0]).length?this.note=r[0].text:this.note=t}static fromModel(e){const t=new i;return t.model=e,t}}i.DEFAULT_CONFIGS={note:{margins:{insetmode:"auto",inset:[.13,.13,.25,.25]},protection:{locked:"True",lockText:"True"},editAs:"absolute"}},e.exports=i},69311:(e,t,r)=>{const n=r(29428);class i{constructor(){this.decode(arguments)}setTLBR(e,t,r,i,a){if(arguments.length<4){const i=n.decodeAddress(e),o=n.decodeAddress(t);this.model={top:Math.min(i.row,o.row),left:Math.min(i.col,o.col),bottom:Math.max(i.row,o.row),right:Math.max(i.col,o.col),sheetName:r},this.setTLBR(i.row,i.col,o.row,o.col,a)}else this.model={top:Math.min(e,r),left:Math.min(t,i),bottom:Math.max(e,r),right:Math.max(t,i),sheetName:a}}decode(e){switch(e.length){case 5:this.setTLBR(e[0],e[1],e[2],e[3],e[4]);break;case 4:this.setTLBR(e[0],e[1],e[2],e[3]);break;case 3:this.setTLBR(e[0],e[1],e[2]);break;case 2:this.setTLBR(e[0],e[1]);break;case 1:{const t=e[0];if(t instanceof i)this.model={top:t.model.top,left:t.model.left,bottom:t.model.bottom,right:t.model.right,sheetName:t.sheetName};else if(t instanceof Array)this.decode(t);else if(t.top&&t.left&&t.bottom&&t.right)this.model={top:t.top,left:t.left,bottom:t.bottom,right:t.right,sheetName:t.sheetName};else{const e=n.decodeEx(t);e.top?this.model={top:e.top,left:e.left,bottom:e.bottom,right:e.right,sheetName:e.sheetName}:this.model={top:e.row,left:e.col,bottom:e.row,right:e.col,sheetName:e.sheetName}}break}case 0:this.model={top:0,left:0,bottom:0,right:0};break;default:throw new Error(`Invalid number of arguments to _getDimensions() - ${e.length}`)}}get top(){return this.model.top||1}set top(e){this.model.top=e}get left(){return this.model.left||1}set left(e){this.model.left=e}get bottom(){return this.model.bottom||1}set bottom(e){this.model.bottom=e}get right(){return this.model.right||1}set right(e){this.model.right=e}get sheetName(){return this.model.sheetName}set sheetName(e){this.model.sheetName=e}get _serialisedSheetName(){const{sheetName:e}=this.model;return e?/^[a-zA-Z0-9]*$/.test(e)?`${e}!`:`'${e}'!`:""}expand(e,t,r,n){(!this.model.top||e<this.top)&&(this.top=e),(!this.model.left||t<this.left)&&(this.left=t),(!this.model.bottom||r>this.bottom)&&(this.bottom=r),(!this.model.right||n>this.right)&&(this.right=n)}expandRow(e){if(e){const{dimensions:t,number:r}=e;t&&this.expand(r,t.min,r,t.max)}}expandToAddress(e){const t=n.decodeEx(e);this.expand(t.row,t.col,t.row,t.col)}get tl(){return n.n2l(this.left)+this.top}get $t$l(){return`$${n.n2l(this.left)}$${this.top}`}get br(){return n.n2l(this.right)+this.bottom}get $b$r(){return`$${n.n2l(this.right)}$${this.bottom}`}get range(){return`${this._serialisedSheetName+this.tl}:${this.br}`}get $range(){return`${this._serialisedSheetName+this.$t$l}:${this.$b$r}`}get shortRange(){return this.count>1?this.range:this._serialisedSheetName+this.tl}get $shortRange(){return this.count>1?this.$range:this._serialisedSheetName+this.$t$l}get count(){return(1+this.bottom-this.top)*(1+this.right-this.left)}toString(){return this.range}intersects(e){return(!e.sheetName||!this.sheetName||e.sheetName===this.sheetName)&&(!(e.bottom<this.top)&&(!(e.top>this.bottom)&&(!(e.right<this.left)&&!(e.left>this.right))))}contains(e){const t=n.decodeEx(e);return this.containsEx(t)}containsEx(e){return(!e.sheetName||!this.sheetName||e.sheetName===this.sheetName)&&(e.row>=this.top&&e.row<=this.bottom&&e.col>=this.left&&e.col<=this.right)}forEachAddress(e){for(let t=this.left;t<=this.right;t++)for(let r=this.top;r<=this.bottom;r++)e(n.encodeAddress(r,t),r,t)}}e.exports=i},5842:(e,t,r)=>{"use strict";const n=r(67984),i=r(70880),a=r(29428),o=r(88732);e.exports=class{constructor(e,t){this._worksheet=e,this._number=t,this._cells=[],this.style={},this.outlineLevel=0}get number(){return this._number}get worksheet(){return this._worksheet}commit(){this._worksheet._commitRow(this)}destroy(){delete this._worksheet,delete this._cells,delete this.style}findCell(e){return this._cells[e-1]}getCellEx(e){let t=this._cells[e.col-1];if(!t){const r=this._worksheet.getColumn(e.col);t=new o(this,r,e.address),this._cells[e.col-1]=t}return t}getCell(e){if("string"==typeof e){const t=this._worksheet.getColumnKey(e);e=t?t.number:a.l2n(e)}return this._cells[e-1]||this.getCellEx({address:a.encodeAddress(this._number,e),row:this._number,col:e})}splice(e,t,...r){const n=e+t,i=r.length-t,a=this._cells.length;let o,s,c;if(i<0)for(o=e+r.length;o<=a;o++)c=this._cells[o-1],s=this._cells[o-i-1],s?(c=this.getCell(o),c.value=s.value,c.style=s.style,c._comment=s._comment):c&&(c.value=null,c.style={},c._comment=void 0);else if(i>0)for(o=a;o>=n;o--)s=this._cells[o-1],s?(c=this.getCell(o+i),c.value=s.value,c.style=s.style,c._comment=s._comment):this._cells[o+i-1]=void 0;for(o=0;o<r.length;o++)c=this.getCell(e+o),c.value=r[o],c.style={},c._comment=void 0}eachCell(e,t){if(t||(t=e,e=null),e&&e.includeEmpty){const e=this._cells.length;for(let r=1;r<=e;r++)t(this.getCell(r),r)}else this._cells.forEach(((e,r)=>{e&&e.type!==i.ValueType.Null&&t(e,r+1)}))}addPageBreak(e,t){const r=this._worksheet,n=Math.max(0,e-1)||0,i=Math.max(0,t-1)||16838,a={id:this._number,max:i,man:1};n&&(a.min=n),r.rowBreaks.push(a)}get values(){const e=[];return this._cells.forEach((t=>{t&&t.type!==i.ValueType.Null&&(e[t.col]=t.value)})),e}set values(e){if(this._cells=[],e)if(e instanceof Array){let t=0;e.hasOwnProperty("0")&&(t=1),e.forEach(((e,r)=>{void 0!==e&&(this.getCellEx({address:a.encodeAddress(this._number,r+t),row:this._number,col:r+t}).value=e)}))}else this._worksheet.eachColumnKey(((t,r)=>{void 0!==e[r]&&(this.getCellEx({address:a.encodeAddress(this._number,t.number),row:this._number,col:t.number}).value=e[r])}));else;}get hasValues(){return n.some(this._cells,(e=>e&&e.type!==i.ValueType.Null))}get cellCount(){return this._cells.length}get actualCellCount(){let e=0;return this.eachCell((()=>{e++})),e}get dimensions(){let e=0,t=0;return this._cells.forEach((r=>{r&&r.type!==i.ValueType.Null&&((!e||e>r.col)&&(e=r.col),t<r.col&&(t=r.col))})),e>0?{min:e,max:t}:null}_applyStyle(e,t){return this.style[e]=t,this._cells.forEach((r=>{r&&(r[e]=t)})),t}get numFmt(){return this.style.numFmt}set numFmt(e){this._applyStyle("numFmt",e)}get font(){return this.style.font}set font(e){this._applyStyle("font",e)}get alignment(){return this.style.alignment}set alignment(e){this._applyStyle("alignment",e)}get protection(){return this.style.protection}set protection(e){this._applyStyle("protection",e)}get border(){return this.style.border}set border(e){this._applyStyle("border",e)}get fill(){return this.style.fill}set fill(e){this._applyStyle("fill",e)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel||0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=this._worksheet.properties.outlineLevelRow)}get model(){const e=[];let t=0,r=0;return this._cells.forEach((n=>{if(n){const i=n.model;i&&((!t||t>n.col)&&(t=n.col),r<n.col&&(r=n.col),e.push(i))}})),this.height||e.length?{cells:e,number:this.number,min:t,max:r,height:this.height,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel,collapsed:this.collapsed}:null}set model(e){if(e.number!==this._number)throw new Error("Invalid row number in model");let t;this._cells=[],e.cells.forEach((e=>{switch(e.type){case o.Types.Merge:break;default:{let r;if(e.address)r=a.decodeAddress(e.address);else if(t){const{row:e}=t,n=t.col+1;r={row:e,col:n,address:a.encodeAddress(e,n),$col$row:`$${a.n2l(n)}$${e}`}}t=r;this.getCellEx(r).model=e;break}}})),e.height?this.height=e.height:delete this.height,this.hidden=e.hidden,this.outlineLevel=e.outlineLevel||0,this.style=e.style&&JSON.parse(JSON.stringify(e.style))||{}}}},7694:(e,t,r)=>{const n=r(29428);class i{constructor(e,t,r){this.table=e,this.column=t,this.index=r}_set(e,t){this.table.cacheState(),this.column[e]=t}get name(){return this.column.name}set name(e){this._set("name",e)}get filterButton(){return this.column.filterButton}set filterButton(e){this.column.filterButton=e}get style(){return this.column.style}set style(e){this.column.style=e}get totalsRowLabel(){return this.column.totalsRowLabel}set totalsRowLabel(e){this._set("totalsRowLabel",e)}get totalsRowFunction(){return this.column.totalsRowFunction}set totalsRowFunction(e){this._set("totalsRowFunction",e)}get totalsRowResult(){return this.column.totalsRowResult}set totalsRowResult(e){this._set("totalsRowResult",e)}get totalsRowFormula(){return this.column.totalsRowFormula}set totalsRowFormula(e){this._set("totalsRowFormula",e)}}e.exports=class{constructor(e,t){this.worksheet=e,t&&(this.table=t,this.validate(),this.store())}getFormula(e){switch(e.totalsRowFunction){case"none":return null;case"average":return`SUBTOTAL(101,${this.table.name}[${e.name}])`;case"countNums":return`SUBTOTAL(102,${this.table.name}[${e.name}])`;case"count":return`SUBTOTAL(103,${this.table.name}[${e.name}])`;case"max":return`SUBTOTAL(104,${this.table.name}[${e.name}])`;case"min":return`SUBTOTAL(105,${this.table.name}[${e.name}])`;case"stdDev":return`SUBTOTAL(106,${this.table.name}[${e.name}])`;case"var":return`SUBTOTAL(107,${this.table.name}[${e.name}])`;case"sum":return`SUBTOTAL(109,${this.table.name}[${e.name}])`;case"custom":return e.totalsRowFormula;default:throw new Error(`Invalid Totals Row Function: ${e.totalsRowFunction}`)}}get width(){return this.table.columns.length}get height(){return this.table.rows.length}get filterHeight(){return this.height+(this.table.headerRow?1:0)}get tableHeight(){return this.filterHeight+(this.table.totalsRow?1:0)}validate(){const{table:e}=this,t=(e,t,r)=>{void 0===e[t]&&(e[t]=r)};t(e,"headerRow",!0),t(e,"totalsRow",!1),t(e,"style",{}),t(e.style,"theme","TableStyleMedium2"),t(e.style,"showFirstColumn",!1),t(e.style,"showLastColumn",!1),t(e.style,"showRowStripes",!1),t(e.style,"showColumnStripes",!1);const r=(e,t)=>{if(!e)throw new Error(t)};r(e.ref,"Table must have ref"),r(e.columns,"Table must have column definitions"),r(e.rows,"Table must have row definitions"),e.tl=n.decodeAddress(e.ref);const{row:i,col:a}=e.tl;r(i>0,"Table must be on valid row"),r(a>0,"Table must be on valid col");const{width:o,filterHeight:s,tableHeight:c}=this;e.autoFilterRef=n.encode(i,a,i+s-1,a+o-1),e.tableRef=n.encode(i,a,i+c-1,a+o-1),e.columns.forEach(((e,n)=>{r(e.name,`Column ${n} must have a name`),0===n?t(e,"totalsRowLabel","Total"):(t(e,"totalsRowFunction","none"),e.totalsRowFormula=this.getFormula(e))}))}store(){const e=(e,t)=>{t&&Object.keys(t).forEach((r=>{e[r]=t[r]}))},{worksheet:t,table:r}=this,{row:n,col:i}=r.tl;let a=0;if(r.headerRow){const o=t.getRow(n+a++);r.columns.forEach(((t,r)=>{const{style:n,name:a}=t,s=o.getCell(i+r);s.value=a,e(s,n)}))}if(r.rows.forEach((o=>{const s=t.getRow(n+a++);o.forEach(((t,n)=>{const a=s.getCell(i+n);a.value=t,e(a,r.columns[n].style)}))})),r.totalsRow){const o=t.getRow(n+a++);r.columns.forEach(((t,r)=>{const n=o.getCell(i+r);if(0===r)n.value=t.totalsRowLabel;else{const e=this.getFormula(t);n.value=e?{formula:t.totalsRowFormula,result:t.totalsRowResult}:null}e(n,t.style)}))}}load(e){const{table:t}=this,{row:r,col:n}=t.tl;let i=0;if(t.headerRow){const a=e.getRow(r+i++);t.columns.forEach(((e,t)=>{a.getCell(n+t).value=e.name}))}if(t.rows.forEach((t=>{const a=e.getRow(r+i++);t.forEach(((e,t)=>{a.getCell(n+t).value=e}))})),t.totalsRow){const a=e.getRow(r+i++);t.columns.forEach(((e,t)=>{const r=a.getCell(n+t);if(0===t)r.value=e.totalsRowLabel;else{this.getFormula(e)&&(r.value={formula:e.totalsRowFormula,result:e.totalsRowResult})}}))}}get model(){return this.table}set model(e){this.table=e}cacheState(){this._cache||(this._cache={ref:this.ref,width:this.width,tableHeight:this.tableHeight})}commit(){if(!this._cache)return;this.validate();const e=n.decodeAddress(this._cache.ref);if(this.ref!==this._cache.ref)for(let t=0;t<this._cache.tableHeight;t++){const r=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){r.getCell(e.col+t).value=null}}else{for(let t=this.tableHeight;t<this._cache.tableHeight;t++){const r=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){r.getCell(e.col+t).value=null}}for(let t=0;t<this.tableHeight;t++){const r=this.worksheet.getRow(e.row+t);for(let t=this.width;t<this._cache.width;t++){r.getCell(e.col+t).value=null}}}this.store()}addRow(e,t){this.cacheState(),void 0===t?this.table.rows.push(e):this.table.rows.splice(t,0,e)}removeRows(e,t=1){this.cacheState(),this.table.rows.splice(e,t)}getColumn(e){const t=this.table.columns[e];return new i(this,t,e)}addColumn(e,t,r){this.cacheState(),void 0===r?(this.table.columns.push(e),this.table.rows.forEach(((e,r)=>{e.push(t[r])}))):(this.table.columns.splice(r,0,e),this.table.rows.forEach(((e,n)=>{e.splice(r,0,t[n])})))}removeColumns(e,t=1){this.cacheState(),this.table.columns.splice(e,t),this.table.rows.forEach((r=>{r.splice(e,t)}))}_assign(e,t,r){this.cacheState(),e[t]=r}get ref(){return this.table.ref}set ref(e){this._assign(this.table,"ref",e)}get name(){return this.table.name}set name(e){this.table.name=e}get displayName(){return this.table.displyName||this.table.name}set displayNamename(e){this.table.displayName=e}get headerRow(){return this.table.headerRow}set headerRow(e){this._assign(this.table,"headerRow",e)}get totalsRow(){return this.table.totalsRow}set totalsRow(e){this._assign(this.table,"totalsRow",e)}get theme(){return this.table.style.name}set theme(e){this.table.style.name=e}get showFirstColumn(){return this.table.style.showFirstColumn}set showFirstColumn(e){this.table.style.showFirstColumn=e}get showLastColumn(){return this.table.style.showLastColumn}set showLastColumn(e){this.table.style.showLastColumn=e}get showRowStripes(){return this.table.style.showRowStripes}set showRowStripes(e){this.table.style.showRowStripes=e}get showColumnStripes(){return this.table.style.showColumnStripes}set showColumnStripes(e){this.table.style.showColumnStripes=e}}},12432:(e,t,r)=>{"use strict";const n=r(82346),i=r(13522),a=r(59276),o=r(75772);e.exports=class{constructor(){this.category="",this.company="",this.created=new Date,this.description="",this.keywords="",this.manager="",this.modified=this.created,this.properties={},this.calcProperties={},this._worksheets=[],this.subject="",this.title="",this.views=[],this.media=[],this._definedNames=new i}get xlsx(){return this._xlsx||(this._xlsx=new a(this)),this._xlsx}get csv(){return this._csv||(this._csv=new o(this)),this._csv}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addWorksheet(e,t){const r=this.nextId;t&&("string"==typeof t?(console.trace('tabColor argument is now deprecated. Please use workbook.addWorksheet(name, {properties: { tabColor: { argb: "rbg value" } }'),t={properties:{tabColor:{argb:t}}}):(t.argb||t.theme||t.indexed)&&(console.trace("tabColor argument is now deprecated. Please use workbook.addWorksheet(name, {properties: { tabColor: { ... } }"),t={properties:{tabColor:t}}));const i=this._worksheets.reduce(((e,t)=>(t&&t.orderNo)>e?t.orderNo:e),0),a=Object.assign({},t,{id:r,name:e,orderNo:i+1,workbook:this}),o=new n(a);return this._worksheets[r]=o,o}removeWorksheetEx(e){delete this._worksheets[e.id]}removeWorksheet(e){const t=this.getWorksheet(e);t&&t.destroy()}getWorksheet(e){return void 0===e?this._worksheets.find(Boolean):"number"==typeof e?this._worksheets[e]:"string"==typeof e?this._worksheets.find((t=>t&&t.name===e)):void 0}get worksheets(){return this._worksheets.slice(1).sort(((e,t)=>e.orderNo-t.orderNo)).filter(Boolean)}eachSheet(e){this.worksheets.forEach((t=>{e(t,t.id)}))}get definedNames(){return this._definedNames}clearThemes(){this._themes=void 0}addImage(e){const t=this.media.length;return this.media.push(Object.assign({},e,{type:"image"})),t}getImage(e){return this.media[e]}get model(){return{creator:this.creator||"Unknown",lastModifiedBy:this.lastModifiedBy||"Unknown",lastPrinted:this.lastPrinted,created:this.created,modified:this.modified,properties:this.properties,worksheets:this.worksheets.map((e=>e.model)),sheets:this.worksheets.map((e=>e.model)).filter(Boolean),definedNames:this._definedNames.model,views:this.views,company:this.company,manager:this.manager,title:this.title,subject:this.subject,keywords:this.keywords,category:this.category,description:this.description,language:this.language,revision:this.revision,contentStatus:this.contentStatus,themes:this._themes,media:this.media,calcProperties:this.calcProperties}}set model(e){this.creator=e.creator,this.lastModifiedBy=e.lastModifiedBy,this.lastPrinted=e.lastPrinted,this.created=e.created,this.modified=e.modified,this.company=e.company,this.manager=e.manager,this.title=e.title,this.subject=e.subject,this.keywords=e.keywords,this.category=e.category,this.description=e.description,this.language=e.language,this.revision=e.revision,this.contentStatus=e.contentStatus,this.properties=e.properties,this.calcProperties=e.calcProperties,this._worksheets=[],e.worksheets.forEach((t=>{const{id:r,name:i,state:a}=t,o=e.sheets&&e.sheets.findIndex((e=>e.id===r));(this._worksheets[r]=new n({id:r,name:i,orderNo:o,state:a,workbook:this})).model=t})),this._definedNames.model=e.definedNames,this.views=e.views,this._themes=e.themes,this.media=e.media||[]}}},82346:(e,t,r)=>{const n=r(67984),i=r(29428),a=r(69311),o=r(5842),s=r(93362),c=r(70880),l=r(90239),u=r(7694),d=r(88561),p=r(7257),{copyStyle:f}=r(76172);e.exports=class{constructor(e){e=e||{},this._workbook=e.workbook,this.id=e.id,this.orderNo=e.orderNo,this.name=e.name,this.state=e.state||"visible",this._rows=[],this._columns=null,this._keys={},this._merges={},this.rowBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,dyDescent:55,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:"portrait",horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!(!e.pageSetup||!e.pageSetup.fitToWidth&&!e.pageSetup.fitToHeight||e.pageSetup.scale),pageOrder:"downThenOver",blackAndWhite:!1,draft:!1,cellComments:"None",errors:"displayed",scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,firstPageNumber:void 0,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.dataValidations=new d,this.views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this.tables={},this.conditionalFormattings=[]}get name(){return this._name}set name(e){if(void 0===e&&(e=`sheet${this.id}`),this._name!==e){if("string"!=typeof e)throw new Error("The name has to be a string.");if(""===e)throw new Error("The name can't be empty.");if("History"===e)throw new Error('The name "History" is protected. Please use a different name.');if(/[*?:/\\[\]]/.test(e))throw new Error(`Worksheet name ${e} cannot include any of the following characters: * ? : \\ / [ ]`);if(/(^')|('$)/.test(e))throw new Error(`The first or last character of worksheet name cannot be a single quotation mark: ${e}`);if(e&&e.length>31&&(console.warn(`Worksheet name ${e} exceeds 31 chars. This will be truncated`),e=e.substring(0,31)),this._workbook._worksheets.find((t=>t&&t.name.toLowerCase()===e.toLowerCase())))throw new Error(`Worksheet name already exists: ${e}`);this._name=e}}get workbook(){return this._workbook}destroy(){this._workbook.removeWorksheetEx(this)}get dimensions(){const e=new a;return this._rows.forEach((t=>{if(t){const r=t.dimensions;r&&e.expand(t.number,r.min,t.number,r.max)}})),e}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce(((e,t)=>{const r=(t.header?1:t.headers&&t.headers.length)||0;return Math.max(e,r)}),0);let t=1;const r=this._columns=[];e.forEach((e=>{const n=new s(this,t++,!1);r.push(n),n.defn=e}))}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){n.each(this._keys,e)}getColumn(e){if("string"==typeof e){const t=this._keys[e];if(t)return t;e=i.l2n(e)}if(this._columns||(this._columns=[]),e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new s(this,t++))}return this._columns[e-1]}spliceColumns(e,t,...r){const n=this._rows.length;if(r.length>0)for(let i=0;i<n;i++){const n=[e,t];r.forEach((e=>{n.push(e[i]||null)}));const a=this.getRow(i+1);a.splice.apply(a,n)}else this._rows.forEach((r=>{r&&r.splice(e,t)}));const i=r.length-t,a=e+t,o=this._columns.length;if(i<0)for(let t=e+r.length;t<=o;t++)this.getColumn(t).defn=this.getColumn(t-i).defn;else if(i>0)for(let e=o;e>=a;e--)this.getColumn(e+i).defn=this.getColumn(e).defn;for(let t=e;t<e+r.length;t++)this.getColumn(t).defn=null;this.workbook.definedNames.spliceColumns(this.name,e,t,r.length)}get lastColumn(){return this.getColumn(this.columnCount)}get columnCount(){let e=0;return this.eachRow((t=>{e=Math.max(e,t.cellCount)})),e}get actualColumnCount(){const e=[];let t=0;return this.eachRow((r=>{r.eachCell((({col:r})=>{e[r]||(e[r]=!0,t++)}))})),t}_commitRow(){}get _lastRowNumber(){const e=this._rows;let t=e.length;for(;t>0&&void 0===e[t-1];)t--;return t}get _nextRow(){return this._lastRowNumber+1}get lastRow(){if(this._rows.length)return this._rows[this._rows.length-1]}findRow(e){return this._rows[e-1]}findRows(e,t){return this._rows.slice(e-1,e-1+t)}get rowCount(){return this._lastRowNumber}get actualRowCount(){let e=0;return this.eachRow((()=>{e++})),e}getRow(e){let t=this._rows[e-1];return t||(t=this._rows[e-1]=new o(this,e)),t}getRows(e,t){if(t<1)return;const r=[];for(let n=e;n<e+t;n++)r.push(this.getRow(n));return r}addRow(e,t="n"){const r=this._nextRow,n=this.getRow(r);return n.values=e,this._setStyleOption(r,"i"===t[0]?t:"n"),n}addRows(e,t="n"){const r=[];return e.forEach((e=>{r.push(this.addRow(e,t))})),r}insertRow(e,t,r="n"){return this.spliceRows(e,0,t),this._setStyleOption(e,r),this.getRow(e)}insertRows(e,t,r="n"){if(this.spliceRows(e,0,...t),"n"!==r)for(let n=0;n<t.length;n++)"o"===r[0]&&void 0!==this.findRow(t.length+e+n)?this._copyStyle(t.length+e+n,e+n,"+"===r[1]):"i"===r[0]&&void 0!==this.findRow(e-1)&&this._copyStyle(e-1,e+n,"+"===r[1]);return this.getRows(e,t.length)}_setStyleOption(e,t="n"){"o"===t[0]&&void 0!==this.findRow(e+1)?this._copyStyle(e+1,e,"+"===t[1]):"i"===t[0]&&void 0!==this.findRow(e-1)&&this._copyStyle(e-1,e,"+"===t[1])}_copyStyle(e,t,r=!1){const n=this.getRow(e),i=this.getRow(t);i.style=f(n.style),n.eachCell({includeEmpty:r},((e,t)=>{i.getCell(t).style=f(e.style)})),i.height=n.height}duplicateRow(e,t,r=!1){const n=this._rows[e-1],i=new Array(t).fill(n.values);this.spliceRows(e+1,r?0:t,...i);for(let r=0;r<t;r++){const t=this._rows[e+r];t.style=n.style,t.height=n.height,n.eachCell({includeEmpty:!0},((e,r)=>{t.getCell(r).style=e.style}))}}spliceRows(e,t,...r){const n=e+t,i=r.length,a=i-t,o=this._rows.length;let s,c;if(a<0)for(e===o&&(this._rows[o-1]=void 0),s=n;s<=o;s++)if(c=this._rows[s-1],c){const e=this.getRow(s+a);e.values=c.values,e.style=c.style,e.height=c.height,c.eachCell({includeEmpty:!0},((t,r)=>{e.getCell(r).style=t.style})),this._rows[s-1]=void 0}else this._rows[s+a-1]=void 0;else if(a>0)for(s=o;s>=n;s--)if(c=this._rows[s-1],c){const e=this.getRow(s+a);e.values=c.values,e.style=c.style,e.height=c.height,c.eachCell({includeEmpty:!0},((t,r)=>{if(e.getCell(r).style=t.style,"MergeValue"===t._value.constructor.name){const e=this.getRow(t._row._number+i).getCell(r),n=t._value._master,a=this.getRow(n._row._number+i).getCell(n._column._number);e.merge(a)}}))}else this._rows[s+a-1]=void 0;for(s=0;s<i;s++){const t=this.getRow(e+s);t.style={},t.values=r[s]}this.workbook.definedNames.spliceRows(this.name,e,t,i)}eachRow(e,t){if(t||(t=e,e=void 0),e&&e.includeEmpty){const e=this._rows.length;for(let r=1;r<=e;r++)t(this.getRow(r),r)}else this._rows.forEach((e=>{e&&e.hasValues&&t(e,e.number)}))}getSheetValues(){const e=[];return this._rows.forEach((t=>{t&&(e[t.number]=t.values)})),e}findCell(e,t){const r=i.getAddress(e,t),n=this._rows[r.row-1];return n?n.findCell(r.col):void 0}getCell(e,t){const r=i.getAddress(e,t);return this.getRow(r.row).getCellEx(r)}mergeCells(...e){const t=new a(e);this._mergeCellsInternal(t)}mergeCellsWithoutStyle(...e){const t=new a(e);this._mergeCellsInternal(t,!0)}_mergeCellsInternal(e,t){n.each(this._merges,(t=>{if(t.intersects(e))throw new Error("Cannot merge already merged cells")}));const r=this.getCell(e.top,e.left);for(let n=e.top;n<=e.bottom;n++)for(let i=e.left;i<=e.right;i++)(n>e.top||i>e.left)&&this.getCell(n,i).merge(r,t);this._merges[r.address]=e}_unMergeMaster(e){const t=this._merges[e.address];if(t){for(let e=t.top;e<=t.bottom;e++)for(let r=t.left;r<=t.right;r++)this.getCell(e,r).unmerge();delete this._merges[e.address]}}get hasMerges(){return n.some(this._merges,Boolean)}unMergeCells(...e){const t=new a(e);for(let e=t.top;e<=t.bottom;e++)for(let r=t.left;r<=t.right;r++){const t=this.findCell(e,r);t&&(t.type===c.ValueType.Merge?this._unMergeMaster(t.master):this._merges[t.address]&&this._unMergeMaster(t))}}fillFormula(e,t,r,n="shared"){const a=i.decode(e),{top:o,left:s,bottom:c,right:l}=a,u=l-s+1,d=i.encodeAddress(o,s),p="shared"===n;let f;f="function"==typeof r?r:Array.isArray(r)?Array.isArray(r[0])?(e,t)=>r[e-o][t-s]:(e,t)=>r[(e-o)*u+(t-s)]:()=>{};let m=!0;for(let r=o;r<=c;r++)for(let i=s;i<=l;i++)m?(this.getCell(r,i).value={shareType:n,formula:t,ref:e,result:f(r,i)},m=!1):this.getCell(r,i).value=p?{sharedFormula:d,result:f(r,i)}:f(r,i)}addImage(e,t){const r={type:"image",imageId:e,range:t};this._media.push(new l(this,r))}getImages(){return this._media.filter((e=>"image"===e.type))}addBackgroundImage(e){const t={type:"background",imageId:e};this._media.push(new l(this,t))}getBackgroundImageId(){const e=this._media.find((e=>"background"===e.type));return e&&e.imageId}protect(e,t){return new Promise((r=>{this.sheetProtection={sheet:!0},t&&"spinCount"in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName="SHA-512",this.sheetProtection.saltValue=p.randomBytes(16).toString("base64"),this.sheetProtection.spinCount=t&&"spinCount"in t?t.spinCount:1e5,this.sheetProtection.hashValue=p.convertPasswordToHash(e,"SHA512",this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&"spinCount"in t&&delete this.sheetProtection.spinCount),r()}))}unprotect(){this.sheetProtection=null}addTable(e){const t=new u(this,e);return this.tables[e.name]=t,t}getTable(e){return this.tables[e]}removeTable(e){delete this.tables[e]}getTables(){return Object.values(this.tables)}addConditionalFormatting(e){this.conditionalFormattings.push(e)}removeConditionalFormatting(e){"number"==typeof e?this.conditionalFormattings.splice(e,1):this.conditionalFormattings=e instanceof Function?this.conditionalFormattings.filter(e):[]}get tabColor(){return console.trace("worksheet.tabColor property is now deprecated. Please use worksheet.properties.tabColor"),this.properties.tabColor}set tabColor(e){console.trace("worksheet.tabColor property is now deprecated. Please use worksheet.properties.tabColor"),this.properties.tabColor=e}get model(){const e={id:this.id,name:this.name,dataValidations:this.dataValidations.model,properties:this.properties,state:this.state,pageSetup:this.pageSetup,headerFooter:this.headerFooter,rowBreaks:this.rowBreaks,views:this.views,autoFilter:this.autoFilter,media:this._media.map((e=>e.model)),sheetProtection:this.sheetProtection,tables:Object.values(this.tables).map((e=>e.model)),conditionalFormattings:this.conditionalFormattings};e.cols=s.toModel(this.columns);const t=e.rows=[],r=e.dimensions=new a;return this._rows.forEach((e=>{const n=e&&e.model;n&&(r.expand(n.number,n.min,n.number,n.max),t.push(n))})),e.merges=[],n.each(this._merges,(t=>{e.merges.push(t.range)})),e}_parseRows(e){this._rows=[],e.rows.forEach((e=>{const t=new o(this,e.number);this._rows[t.number-1]=t,t.model=e}))}_parseMergeCells(e){n.each(e.mergeCells,(e=>{this.mergeCellsWithoutStyle(e)}))}set model(e){this.name=e.name,this._columns=s.fromModel(this,e.cols),this._parseRows(e),this._parseMergeCells(e),this.dataValidations=new d(e.dataValidations),this.properties=e.properties,this.pageSetup=e.pageSetup,this.headerFooter=e.headerFooter,this.views=e.views,this.autoFilter=e.autoFilter,this._media=e.media.map((e=>new l(this,e))),this.sheetProtection=e.sheetProtection,this.tables=e.tables.reduce(((e,t)=>{const r=new u;return r.model=t,e[t.name]=r,e}),{}),this.conditionalFormattings=e.conditionalFormattings}}},25046:(e,t,r)=>{const n={Workbook:r(12432),ModelContainer:r(98236),stream:{xlsx:{WorkbookWriter:r(3682),WorkbookReader:r(34114)}}};Object.assign(n,r(70880)),e.exports=n},31090:(e,t,r)=>{const{EventEmitter:n}=r(24434),i=r(37043),a=r(70880),o=r(71745);e.exports=class extends n{constructor({workbook:e,id:t,iterator:r,options:n}){super(),this.workbook=e,this.id=t,this.iterator=r,this.options=n}get count(){return this.hyperlinks&&this.hyperlinks.length||0}each(e){return this.hyperlinks.forEach(e)}async read(){const{iterator:e,options:t}=this;let r=!1,n=null;switch(t.hyperlinks){case"emit":r=!0;break;case"cache":this.hyperlinks=n={}}if(r||n)try{for await(const t of i(e))for(const{eventType:e,value:i}of t)if("opentag"===e){const e=i;if("Relationship"===e.name){const t=e.attributes.Id;if(e.attributes.Type===o.Hyperlink){const i={type:a.RelationshipType.Styles,rId:t,target:e.attributes.Target,targetMode:e.attributes.TargetMode};r?this.emit("hyperlink",i):n[i.rId]=i}}}this.emit("finished")}catch(e){this.emit("error",e)}else this.emit("finished")}}},95234:(e,t,r)=>{const n=r(12141),i=r(71745),a=r(29428),o=r(41710),s=r(23712);e.exports=class{constructor(e,t,r){this.id=r.id,this.count=0,this._worksheet=e,this._workbook=r.workbook,this._sheetRelsWriter=t}get commentsStream(){return this._commentsStream||(this._commentsStream=this._workbook._openStream(`/xl/comments${this.id}.xml`)),this._commentsStream}get vmlStream(){return this._vmlStream||(this._vmlStream=this._workbook._openStream(`xl/drawings/vmlDrawing${this.id}.vml`)),this._vmlStream}_addRelationships(){const e={Type:i.Comments,Target:`../comments${this.id}.xml`};this._sheetRelsWriter.addRelationship(e);const t={Type:i.VmlDrawing,Target:`../drawings/vmlDrawing${this.id}.vml`};this.vmlRelId=this._sheetRelsWriter.addRelationship(t)}_addCommentRefs(){this._workbook.commentRefs.push({commentName:`comments${this.id}`,vmlDrawing:`vmlDrawing${this.id}`})}_writeOpen(){this.commentsStream.write('<?xml version="1.0" encoding="UTF-8" standalone="yes"?><comments xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><authors><author>Author</author></authors><commentList>'),this.vmlStream.write('<?xml version="1.0" encoding="UTF-8"?><xml xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:x="urn:schemas-microsoft-com:office:excel"><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1" /></o:shapelayout><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe"><v:stroke joinstyle="miter" /><v:path gradientshapeok="t" o:connecttype="rect" /></v:shapetype>')}_writeComment(e,t){const r=new o,i=new n;r.render(i,e),this.commentsStream.write(i.xml);const a=new s,c=new n;a.render(c,e,t),this.vmlStream.write(c.xml)}_writeClose(){this.commentsStream.write("</commentList></comments>"),this.vmlStream.write("</xml>")}addComments(e){e&&e.length&&(this.startedData||(this._worksheet.comments=[],this._writeOpen(),this._addRelationships(),this._addCommentRefs(),this.startedData=!0),e.forEach((e=>{e.refAddress=a.decodeAddress(e.ref)})),e.forEach((e=>{this._writeComment(e,this.count),this.count+=1})))}commit(){this.count&&(this._writeClose(),this.commentsStream.end(),this.vmlStream.end())}}},72404:(e,t,r)=>{const n=r(67032),i=r(71745);class a{constructor(e){this.writer=e}push(e){this.writer.addHyperlink(e)}}e.exports=class{constructor(e){this.id=e.id,this.count=0,this._hyperlinks=[],this._workbook=e.workbook}get stream(){return this._stream||(this._stream=this._workbook._openStream(`/xl/worksheets/_rels/sheet${this.id}.xml.rels`)),this._stream}get length(){return this._hyperlinks.length}each(e){return this._hyperlinks.forEach(e)}get hyperlinksProxy(){return this._hyperlinksProxy||(this._hyperlinksProxy=new a(this))}addHyperlink(e){const t={Target:e.target,Type:i.Hyperlink,TargetMode:"External"},r=this._writeRelationship(t);this._hyperlinks.push({rId:r,address:e.address})}addMedia(e){return this._writeRelationship(e)}addRelationship(e){return this._writeRelationship(e)}commit(){this.count&&(this._writeClose(),this.stream.end())}_writeOpen(){this.stream.write('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">')}_writeRelationship(e){this.count||this._writeOpen();const t="rId"+ ++this.count;return e.TargetMode?this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${n.xmlEncode(e.Target)}" TargetMode="${e.TargetMode}"/>`):this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${e.Target}"/>`),t}_writeClose(){this.stream.write("</Relationships>")}}},34114:(e,t,r)=>{const n=r(79896),{EventEmitter:i}=r(24434),{PassThrough:a,Readable:o}=r(34198),s=r(2203),c=r(14490),l=r(35083),u=r(83676),d=r(37043),p=r(17647),f=r(22519),m=r(61724),g=r(51648),_=r(31090);l.setGracefulCleanup();class h extends i{constructor(e,t={}){super(),this.input=e,this.options={worksheets:"emit",sharedStrings:"cache",hyperlinks:"ignore",styles:"ignore",entries:"ignore",...t},this.styles=new p,this.styles.init()}_getStream(e){if(e instanceof s.Readable||e instanceof o)return e;if("string"==typeof e)return n.createReadStream(e);throw new Error(`Could not recognise input: ${e}`)}async read(e,t){try{for await(const{eventType:r,value:n}of this.parse(e,t))switch(r){case"shared-strings":case"hyperlinks":this.emit(r,n);break;case"worksheet":this.emit(r,n),await n.read()}this.emit("end"),this.emit("finished")}catch(e){this.emit("error",e)}}async*[Symbol.asyncIterator](){for await(const{eventType:e,value:t}of this.parse())"worksheet"===e&&(yield t)}async*parse(e,t){t&&(this.options=t);const r=this.stream=this._getStream(e||this.input),i=c.Parse({forceStream:!0});r.pipe(i);const o=[];for await(const e of u(i)){let t,r;switch(e.path){case"_rels/.rels":break;case"xl/_rels/workbook.xml.rels":await this._parseRels(e);break;case"xl/workbook.xml":await this._parseWorkbook(e);break;case"xl/sharedStrings.xml":yield*this._parseSharedStrings(e);break;case"xl/styles.xml":await this._parseStyles(e);break;default:e.path.match(/xl\/worksheets\/sheet\d+[.]xml/)?(t=e.path.match(/xl\/worksheets\/sheet(\d+)[.]xml/),r=t[1],this.sharedStrings&&this.workbookRels?yield*this._parseWorksheet(u(e),r):await new Promise(((t,i)=>{l.file(((a,s,c,l)=>{if(a)return i(a);o.push({sheetNo:r,path:s,tempFileCleanupCallback:l});const u=n.createWriteStream(s);return u.on("error",i),e.pipe(u),u.on("finish",(()=>t()))}))}))):e.path.match(/xl\/worksheets\/_rels\/sheet\d+[.]xml.rels/)&&(t=e.path.match(/xl\/worksheets\/_rels\/sheet(\d+)[.]xml.rels/),r=t[1],yield*this._parseHyperlinks(u(e),r))}e.autodrain()}for(const{sheetNo:e,path:t,tempFileCleanupCallback:r}of o){let i=n.createReadStream(t);i[Symbol.asyncIterator]||(i=i.pipe(new a)),yield*this._parseWorksheet(i,e),r()}}_emitEntry(e){"emit"===this.options.entries&&this.emit("entry",e)}async _parseRels(e){const t=new m;this.workbookRels=await t.parseStream(u(e))}async _parseWorkbook(e){this._emitEntry({type:"workbook"});const t=new f;await t.parseStream(u(e)),this.properties=t.map.workbookPr,this.model=t.model}async*_parseSharedStrings(e){switch(this._emitEntry({type:"shared-strings"}),this.options.sharedStrings){case"cache":this.sharedStrings=[];break;case"emit":break;default:return}let t=null,r=[],n=0,i=null;for await(const a of d(u(e)))for(const{eventType:e,value:o}of a)if("opentag"===e){const e=o;switch(e.name){case"b":i=i||{},i.bold=!0;break;case"charset":i=i||{},i.charset=parseInt(e.attributes.charset,10);break;case"color":i=i||{},i.color={},e.attributes.rgb&&(i.color.argb=e.attributes.argb),e.attributes.val&&(i.color.argb=e.attributes.val),e.attributes.theme&&(i.color.theme=e.attributes.theme);break;case"family":i=i||{},i.family=parseInt(e.attributes.val,10);break;case"i":i=i||{},i.italic=!0;break;case"outline":i=i||{},i.outline=!0;break;case"rFont":i=i||{},i.name=e.value;break;case"si":i=null,r=[],t=null;break;case"sz":i=i||{},i.size=parseInt(e.attributes.val,10);break;case"strike":break;case"t":t=null;break;case"u":i=i||{},i.underline=!0;break;case"vertAlign":i=i||{},i.vertAlign=e.attributes.val}}else if("text"===e)t=t?t+o:o;else if("closetag"===e){switch(o.name){case"r":r.push({font:i,text:t}),i=null,t=null;break;case"si":"cache"===this.options.sharedStrings?this.sharedStrings.push(r.length?{richText:r}:t):"emit"===this.options.sharedStrings&&(yield{index:n++,text:r.length?{richText:r}:t}),r=[],i=null,t=null}}}async _parseStyles(e){this._emitEntry({type:"styles"}),"cache"===this.options.styles&&(this.styles=new p,await this.styles.parseStream(u(e)))}*_parseWorksheet(e,t){this._emitEntry({type:"worksheet",id:t});const r=new g({workbook:this,id:t,iterator:e,options:this.options}),n=(this.workbookRels||[]).find((e=>e.Target===`worksheets/sheet${t}.xml`)),i=n&&(this.model.sheets||[]).find((e=>e.rId===n.Id));i&&(r.id=i.id,r.name=i.name,r.state=i.state),"emit"===this.options.worksheets&&(yield{eventType:"worksheet",value:r})}*_parseHyperlinks(e,t){this._emitEntry({type:"hyperlinks",id:t});const r=new _({workbook:this,id:t,iterator:e,options:this.options});"emit"===this.options.hyperlinks&&(yield{eventType:"hyperlinks",value:r})}}h.Options={worksheets:["emit","ignore"],sharedStrings:["cache","emit","ignore"],hyperlinks:["cache","emit","ignore"],styles:["cache","ignore"],entries:["emit","ignore"]},e.exports=h},3682:(e,t,r)=>{const n=r(79896),i=r(99133),a=r(87137),o=r(71745),s=r(17647),c=r(92391),l=r(13522),u=r(1298),d=r(61724),p=r(40814),f=r(15888),m=r(22519),g=r(96242),_=r(58444),h=r(46046);e.exports=class{constructor(e){e=e||{},this.created=e.created||new Date,this.modified=e.modified||this.created,this.creator=e.creator||"ExcelJS",this.lastModifiedBy=e.lastModifiedBy||"ExcelJS",this.lastPrinted=e.lastPrinted,this.useSharedStrings=e.useSharedStrings||!1,this.sharedStrings=new c,this.styles=e.useStyles?new s(!0):new s.Mock(!0),this._definedNames=new l,this._worksheets=[],this.views=[],this.zipOptions=e.zip,this.media=[],this.commentRefs=[],this.zip=i("zip",this.zipOptions),e.stream?this.stream=e.stream:e.filename?this.stream=n.createWriteStream(e.filename):this.stream=new a,this.zip.pipe(this.stream),this.promise=Promise.all([this.addThemes(),this.addOfficeRels()])}get definedNames(){return this._definedNames}_openStream(e){const t=new a({bufSize:65536,batch:!0});return this.zip.append(t,{name:e}),t.on("finish",(()=>{t.emit("zipped")})),t}_commitWorksheets(){const e=this._worksheets.map((function(e){return e.committed?Promise.resolve():new Promise((t=>{e.stream.on("zipped",(()=>{t()})),e.commit()}))}));return e.length?Promise.all(e):Promise.resolve()}async commit(){return await this.promise,await this.addMedia(),await this._commitWorksheets(),await Promise.all([this.addContentTypes(),this.addApp(),this.addCore(),this.addSharedStrings(),this.addStyles(),this.addWorkbookRels()]),await this.addWorkbook(),this._finalize()}get nextId(){let e;for(e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addImage(e){const t=this.media.length,r=Object.assign({},e,{type:"image",name:`image${t}.${e.extension}`});return this.media.push(r),t}getImage(e){return this.media[e]}addWorksheet(e,t){const r=void 0!==(t=t||{}).useSharedStrings?t.useSharedStrings:this.useSharedStrings;t.tabColor&&(console.trace("tabColor option has moved to { properties: tabColor: {...} }"),t.properties=Object.assign({tabColor:t.tabColor},t.properties));const n=this.nextId,i=new _({id:n,name:e=e||`sheet${n}`,workbook:this,useSharedStrings:r,properties:t.properties,state:t.state,pageSetup:t.pageSetup,views:t.views,autoFilter:t.autoFilter,headerFooter:t.headerFooter});return this._worksheets[n]=i,i}getWorksheet(e){return void 0===e?this._worksheets.find((()=>!0)):"number"==typeof e?this._worksheets[e]:"string"==typeof e?this._worksheets.find((t=>t&&t.name===e)):void 0}addStyles(){return new Promise((e=>{this.zip.append(this.styles.xml,{name:"xl/styles.xml"}),e()}))}addThemes(){return new Promise((e=>{this.zip.append(h,{name:"xl/theme/theme1.xml"}),e()}))}addOfficeRels(){return new Promise((e=>{const t=(new d).toXml([{Id:"rId1",Type:o.OfficeDocument,Target:"xl/workbook.xml"},{Id:"rId2",Type:o.CoreProperties,Target:"docProps/core.xml"},{Id:"rId3",Type:o.ExtenderProperties,Target:"docProps/app.xml"}]);this.zip.append(t,{name:"/_rels/.rels"}),e()}))}addContentTypes(){return new Promise((e=>{const t={worksheets:this._worksheets.filter(Boolean),sharedStrings:this.sharedStrings,commentRefs:this.commentRefs,media:this.media},r=(new p).toXml(t);this.zip.append(r,{name:"[Content_Types].xml"}),e()}))}addMedia(){return Promise.all(this.media.map((e=>{if("image"===e.type){const t=`xl/media/${e.name}`;if(e.filename)return this.zip.file(e.filename,{name:t});if(e.buffer)return this.zip.append(e.buffer,{name:t});if(e.base64){const r=e.base64,n=r.substring(r.indexOf(",")+1);return this.zip.append(n,{name:t,base64:!0})}}throw new Error("Unsupported media")})))}addApp(){return new Promise((e=>{const t={worksheets:this._worksheets.filter(Boolean)},r=(new f).toXml(t);this.zip.append(r,{name:"docProps/app.xml"}),e()}))}addCore(){return new Promise((e=>{const t=(new u).toXml(this);this.zip.append(t,{name:"docProps/core.xml"}),e()}))}addSharedStrings(){return this.sharedStrings.count?new Promise((e=>{const t=(new g).toXml(this.sharedStrings);this.zip.append(t,{name:"/xl/sharedStrings.xml"}),e()})):Promise.resolve()}addWorkbookRels(){let e=1;const t=[{Id:"rId"+e++,Type:o.Styles,Target:"styles.xml"},{Id:"rId"+e++,Type:o.Theme,Target:"theme/theme1.xml"}];return this.sharedStrings.count&&t.push({Id:"rId"+e++,Type:o.SharedStrings,Target:"sharedStrings.xml"}),this._worksheets.forEach((r=>{r&&(r.rId="rId"+e++,t.push({Id:r.rId,Type:o.Worksheet,Target:`worksheets/sheet${r.id}.xml`}))})),new Promise((e=>{const r=(new d).toXml(t);this.zip.append(r,{name:"/xl/_rels/workbook.xml.rels"}),e()}))}addWorkbook(){const{zip:e}=this,t={worksheets:this._worksheets.filter(Boolean),definedNames:this._definedNames.model,views:this.views,properties:{},calcProperties:{}};return new Promise((r=>{const n=new m;n.prepare(t),e.append(n.toXml(t),{name:"/xl/workbook.xml"}),r()}))}_finalize(){return new Promise(((e,t)=>{this.stream.on("error",t),this.stream.on("finish",(()=>{e(this)})),this.zip.on("error",t),this.zip.finalize()}))}}},51648:(e,t,r)=>{const{EventEmitter:n}=r(24434),i=r(37043),a=r(67984),o=r(67032),s=r(29428),c=r(69311),l=r(5842),u=r(93362);class d extends n{constructor({workbook:e,id:t,iterator:r,options:n}){super(),this.workbook=e,this.id=t,this.iterator=r,this.options=n||{},this.name=`Sheet${this.id}`,this._columns=null,this._keys={},this._dimensions=new c}destroy(){throw new Error("Invalid Operation: destroy")}get dimensions(){return this._dimensions}get columns(){return this._columns}getColumn(e){if("string"==typeof e){const t=this._keys[e];if(t)return t;e=s.l2n(e)}if(this._columns||(this._columns=[]),e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new u(this,t++))}return this._columns[e-1]}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){a.each(this._keys,e)}async read(){try{for await(const e of this.parse())for(const{eventType:t,value:r}of e)this.emit(t,r);this.emit("finished")}catch(e){this.emit("error",e)}}async*[Symbol.asyncIterator](){for await(const e of this.parse())for(const{eventType:t,value:r}of e)"row"===t&&(yield r)}async*parse(){const{iterator:e,options:t}=this;let r=!1,n=!1,a=null;if("emit"===t.worksheets)r=!0;switch(t.hyperlinks){case"emit":n=!0;break;case"cache":this.hyperlinks=a={}}if(!r&&!n&&!a)return;const{sharedStrings:c,styles:d,properties:p}=this.workbook;let f=!1,m=!1,g=!1,_=null,h=null,y=null,v=null;for await(const t of i(e)){const e=[];for(const{eventType:i,value:b}of t)if("opentag"===i){const t=b;if(r)switch(t.name){case"cols":f=!0,_=[];break;case"sheetData":m=!0;break;case"col":f&&_.push({min:parseInt(t.attributes.min,10),max:parseInt(t.attributes.max,10),width:parseFloat(t.attributes.width),styleId:parseInt(t.attributes.style||"0",10)});break;case"row":if(m){const e=parseInt(t.attributes.r,10);if(h=new l(this,e),t.attributes.ht&&(h.height=parseFloat(t.attributes.ht)),t.attributes.s){const e=parseInt(t.attributes.s,10),r=d.getStyleModel(e);r&&(h.style=r)}}break;case"c":h&&(y={ref:t.attributes.r,s:parseInt(t.attributes.s,10),t:t.attributes.t});break;case"f":y&&(v=y.f={text:""});break;case"v":case"is":case"t":y&&(v=y.v={text:""})}if(n||a)switch(t.name){case"hyperlinks":g=!0;break;case"hyperlink":if(g){const r={ref:t.attributes.ref,rId:t.attributes["r:id"]};n?e.push({eventType:"hyperlink",value:r}):a[r.ref]=r}}}else if("text"===i)r&&v&&(v.text+=b);else if("closetag"===i){const t=b;if(r)switch(t.name){case"cols":f=!1,this._columns=u.fromModel(_);break;case"sheetData":m=!1;break;case"row":this._dimensions.expandRow(h),e.push({eventType:"row",value:h}),h=null;break;case"c":if(h&&y){const e=s.decodeAddress(y.ref),t=h.getCell(e.col);if(y.s){const e=d.getStyleModel(y.s);e&&(t.style=e)}if(y.f){const e={formula:y.f.text};y.v&&("str"===y.t?e.result=o.xmlDecode(y.v.text):e.result=parseFloat(y.v.text)),t.value=e}else if(y.v)switch(y.t){case"s":{const e=parseInt(y.v.text,10);t.value=c?c[e]:{sharedString:e};break}case"inlineStr":case"str":t.value=o.xmlDecode(y.v.text);break;case"e":t.value={error:y.v.text};break;case"b":t.value=0!==parseInt(y.v.text,10);break;default:o.isDateFmt(t.numFmt)?t.value=o.excelToDate(parseFloat(y.v.text),p.model&&p.model.date1904):t.value=parseFloat(y.v.text)}if(a){const e=a[y.ref];e&&(t.text=t.value,t.value=void 0,t.hyperlink=e)}y=null}}if((n||a)&&"hyperlinks"===t.name)g=!1}e.length>0&&(yield e)}}}e.exports=d},58444:(e,t,r)=>{const n=r(67984),i=r(71745),a=r(29428),o=r(7257),s=r(69311),c=r(40524),l=r(5842),u=r(93362),d=r(72404),p=r(95234),f=r(88561),m=new c,g=r(62447),_=r(27210),h=r(93236),y=r(35772),v=r(8599),b=r(80981),k=r(76591),x=r(27832),S=r(94482),w=r(97802),D=r(64892),E=r(47749),T=r(74711),C=r(12700),A=r(87182),N=r(9668),P={dataValidations:new _,sheetProperties:new h,sheetFormatProperties:new y,columns:new g({tag:"cols",length:!1,childXform:new v}),row:new b,hyperlinks:new g({tag:"hyperlinks",length:!1,childXform:new k}),sheetViews:new g({tag:"sheetViews",length:!1,childXform:new x}),sheetProtection:new S,pageMargins:new w,pageSeteup:new D,autoFilter:new E,picture:new T,conditionalFormattings:new C,headerFooter:new A,rowBreaks:new N};e.exports=class{constructor(e){this.id=e.id,this.name=e.name||`Sheet${this.id}`,this.state=e.state||"visible",this._rows=[],this._columns=null,this._keys={},this._merges=[],this._merges.add=function(){},this._sheetRelsWriter=new d(e),this._sheetCommentsWriter=new p(this,this._sheetRelsWriter,e),this._dimensions=new s,this._rowZero=1,this.committed=!1,this.dataValidations=new f,this._formulae={},this._siFormulae=0,this.conditionalFormatting=[],this.rowBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,dyDescent:55,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:"portrait",horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!(!e.pageSetup||!e.pageSetup.fitToWidth&&!e.pageSetup.fitToHeight||e.pageSetup.scale),pageOrder:"downThenOver",blackAndWhite:!1,draft:!1,cellComments:"None",errors:"displayed",scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.useSharedStrings=e.useSharedStrings||!1,this._workbook=e.workbook,this.hasComments=!1,this._views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this._writeOpenWorksheet(),this.startedData=!1}get workbook(){return this._workbook}get stream(){return this._stream||(this._stream=this._workbook._openStream(`/xl/worksheets/sheet${this.id}.xml`),this._stream.pause()),this._stream}destroy(){throw new Error("Invalid Operation: destroy")}commit(){this.committed||(this._rows.forEach((e=>{e&&this._writeRow(e)})),this._rows=null,this.startedData||this._writeOpenSheetData(),this._writeCloseSheetData(),this._writeAutoFilter(),this._writeMergeCells(),this._writeHyperlinks(),this._writeConditionalFormatting(),this._writeDataValidations(),this._writeSheetProtection(),this._writePageMargins(),this._writePageSetup(),this._writeBackground(),this._writeHeaderFooter(),this._writeRowBreaks(),this._writeLegacyData(),this._writeCloseWorksheet(),this.stream.end(),this._sheetCommentsWriter.commit(),this._sheetRelsWriter.commit(),this.committed=!0)}get dimensions(){return this._dimensions}get views(){return this._views}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce(((e,t)=>{const r=(t.header?1:t.headers&&t.headers.length)||0;return Math.max(e,r)}),0);let t=1;const r=this._columns=[];e.forEach((e=>{const n=new u(this,t++,!1);r.push(n),n.defn=e}))}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){n.each(this._keys,e)}getColumn(e){if("string"==typeof e){const t=this._keys[e];if(t)return t;e=a.l2n(e)}if(this._columns||(this._columns=[]),e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new u(this,t++))}return this._columns[e-1]}get _nextRow(){return this._rowZero+this._rows.length}eachRow(e,t){if(t||(t=e,e=void 0),e&&e.includeEmpty){const e=this._nextRow;for(let r=this._rowZero;r<e;r++)t(this.getRow(r),r)}else this._rows.forEach((e=>{e.hasValues&&t(e,e.number)}))}_commitRow(e){let t=!1;for(;this._rows.length&&!t;){const r=this._rows.shift();this._rowZero++,r&&(this._writeRow(r),t=r.number===e.number,this._rowZero=r.number+1)}}get lastRow(){if(this._rows.length)return this._rows[this._rows.length-1]}findRow(e){const t=e-this._rowZero;return this._rows[t]}getRow(e){const t=e-this._rowZero;if(t<0)throw new Error("Out of bounds: this row has been committed");let r=this._rows[t];return r||(this._rows[t]=r=new l(this,e)),r}addRow(e){const t=new l(this,this._nextRow);return this._rows[t.number-this._rowZero]=t,t.values=e,t}findCell(e,t){const r=a.getAddress(e,t),n=this.findRow(r.row);return n?n.findCell(r.column):void 0}getCell(e,t){const r=a.getAddress(e,t);return this.getRow(r.row).getCellEx(r)}mergeCells(...e){const t=new s(e);this._merges.forEach((e=>{if(e.intersects(t))throw new Error("Cannot merge already merged cells")}));const r=this.getCell(t.top,t.left);for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++)(e>t.top||n>t.left)&&this.getCell(e,n).merge(r);this._merges.push(t)}addConditionalFormatting(e){this.conditionalFormatting.push(e)}removeConditionalFormatting(e){"number"==typeof e?this.conditionalFormatting.splice(e,1):this.conditionalFormatting=e instanceof Function?this.conditionalFormatting.filter(e):[]}addBackgroundImage(e){this._background={imageId:e}}getBackgroundImageId(){return this._background&&this._background.imageId}protect(e,t){return new Promise((r=>{this.sheetProtection={sheet:!0},t&&"spinCount"in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName="SHA-512",this.sheetProtection.saltValue=o.randomBytes(16).toString("base64"),this.sheetProtection.spinCount=t&&"spinCount"in t?t.spinCount:1e5,this.sheetProtection.hashValue=o.convertPasswordToHash(e,"SHA512",this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&"spinCount"in t&&delete this.sheetProtection.spinCount),r()}))}unprotect(){this.sheetProtection=null}_write(e){m.reset(),m.addText(e),this.stream.write(m)}_writeSheetProperties(e,t,r){const n={outlineProperties:t&&t.outlineProperties,tabColor:t&&t.tabColor,pageSetup:r&&r.fitToPage?{fitToPage:r.fitToPage}:void 0};e.addText(P.sheetProperties.toXml(n))}_writeSheetFormatProperties(e,t){const r=t?{defaultRowHeight:t.defaultRowHeight,dyDescent:t.dyDescent,outlineLevelCol:t.outlineLevelCol,outlineLevelRow:t.outlineLevelRow}:void 0;t.defaultColWidth&&(r.defaultColWidth=t.defaultColWidth),e.addText(P.sheetFormatProperties.toXml(r))}_writeOpenWorksheet(){m.reset(),m.addText('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>'),m.addText('<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">'),this._writeSheetProperties(m,this.properties,this.pageSetup),m.addText(P.sheetViews.toXml(this.views)),this._writeSheetFormatProperties(m,this.properties),this.stream.write(m)}_writeColumns(){const e=u.toModel(this.columns);e&&(P.columns.prepare(e,{styles:this._workbook.styles}),this.stream.write(P.columns.toXml(e)))}_writeOpenSheetData(){this._write("<sheetData>")}_writeRow(e){if(this.startedData||(this._writeColumns(),this._writeOpenSheetData(),this.startedData=!0),e.hasValues||e.height){const{model:t}=e,r={styles:this._workbook.styles,sharedStrings:this.useSharedStrings?this._workbook.sharedStrings:void 0,hyperlinks:this._sheetRelsWriter.hyperlinksProxy,merges:this._merges,formulae:this._formulae,siFormulae:this._siFormulae,comments:[]};P.row.prepare(t,r),this.stream.write(P.row.toXml(t)),r.comments.length&&(this.hasComments=!0,this._sheetCommentsWriter.addComments(r.comments))}}_writeCloseSheetData(){this._write("</sheetData>")}_writeMergeCells(){this._merges.length&&(m.reset(),m.addText(`<mergeCells count="${this._merges.length}">`),this._merges.forEach((e=>{m.addText(`<mergeCell ref="${e}"/>`)})),m.addText("</mergeCells>"),this.stream.write(m))}_writeHyperlinks(){this.stream.write(P.hyperlinks.toXml(this._sheetRelsWriter._hyperlinks))}_writeConditionalFormatting(){const e={styles:this._workbook.styles};P.conditionalFormattings.prepare(this.conditionalFormatting,e),this.stream.write(P.conditionalFormattings.toXml(this.conditionalFormatting))}_writeRowBreaks(){this.stream.write(P.rowBreaks.toXml(this.rowBreaks))}_writeDataValidations(){this.stream.write(P.dataValidations.toXml(this.dataValidations.model))}_writeSheetProtection(){this.stream.write(P.sheetProtection.toXml(this.sheetProtection))}_writePageMargins(){this.stream.write(P.pageMargins.toXml(this.pageSetup.margins))}_writePageSetup(){this.stream.write(P.pageSeteup.toXml(this.pageSetup))}_writeHeaderFooter(){this.stream.write(P.headerFooter.toXml(this.headerFooter))}_writeAutoFilter(){this.stream.write(P.autoFilter.toXml(this.autoFilter))}_writeBackground(){if(this._background){if(void 0!==this._background.imageId){const e=this._workbook.getImage(this._background.imageId),t=this._sheetRelsWriter.addMedia({Target:`../media/${e.name}`,Type:i.Image});this._background={...this._background,rId:t}}this.stream.write(P.picture.toXml({rId:this._background.rId}))}}_writeLegacyData(){this.hasComments&&(m.reset(),m.addText(`<legacyDrawing r:id="${this._sheetCommentsWriter.vmlRelId}"/>`),this.stream.write(m))}_writeDimensions(){}_writeCloseWorksheet(){this._write("</worksheet>")}}},50323:(e,t)=>{const r="undefined"==typeof TextDecoder?null:new TextDecoder("utf-8");t.bufferToString=function(e){return"string"==typeof e?e:r?r.decode(e):e.toString()}},24463:(e,t,r)=>{const n="undefined"==typeof TextEncoder?null:new TextEncoder("utf-8"),{Buffer:i}=r(20181);t.stringToBuffer=function(e){return"string"!=typeof e?e:n?i.from(n.encode(e).buffer):i.from(e)}},38583:(e,t,r)=>{const n=r(67984),i=r(29428);e.exports=class{constructor(e){this.template=e,this.sheets={}}addCell(e){this.addCellEx(i.decodeEx(e))}getCell(e){return this.findCellEx(i.decodeEx(e),!0)}findCell(e){return this.findCellEx(i.decodeEx(e),!1)}findCellAt(e,t,r){const n=this.sheets[e],i=n&&n[t];return i&&i[r]}addCellEx(e){if(e.top)for(let t=e.top;t<=e.bottom;t++)for(let r=e.left;r<=e.right;r++)this.getCellAt(e.sheetName,t,r);else this.findCellEx(e,!0)}getCellEx(e){return this.findCellEx(e,!0)}findCellEx(e,t){const r=this.findSheet(e,t),n=this.findSheetRow(r,e,t);return this.findRowCell(n,e,t)}getCellAt(e,t,r){const n=this.sheets[e]||(this.sheets[e]=[]),a=n[t]||(n[t]=[]);return a[r]||(a[r]={sheetName:e,address:i.n2l(r)+t,row:t,col:r})}removeCellEx(e){const t=this.findSheet(e);if(!t)return;const r=this.findSheetRow(t,e);r&&delete r[e.col]}forEachInSheet(e,t){const r=this.sheets[e];r&&r.forEach(((e,r)=>{e&&e.forEach(((e,n)=>{e&&t(e,r,n)}))}))}forEach(e){n.each(this.sheets,((t,r)=>{this.forEachInSheet(r,e)}))}map(e){const t=[];return this.forEach((r=>{t.push(e(r))})),t}findSheet(e,t){const r=e.sheetName;return this.sheets[r]?this.sheets[r]:t?this.sheets[r]=[]:void 0}findSheetRow(e,t,r){const{row:n}=t;return e&&e[n]?e[n]:r?e[n]=[]:void 0}findRowCell(e,t,r){const{col:n}=t;return e&&e[n]?e[n]:r?e[n]=this.template?Object.assign(t,JSON.parse(JSON.stringify(this.template))):t:void 0}spliceRows(e,t,r,n){const i=this.sheets[e];if(i){const e=[];for(let t=0;t<n;t++)e.push([]);i.splice(t,r,...e)}}spliceColumns(e,t,r,i){const a=this.sheets[e];if(a){const e=[];for(let t=0;t<i;t++)e.push(null);n.each(a,(n=>{n.splice(t,r,...e)}))}}}},29428:e=>{const t=/^[A-Z]+\d+$/,r={_dictionary:["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"],_l2nFill:0,_l2n:{},_n2l:[],_level:e=>e<=26?1:e<=676?2:3,_fill(e){let t,r,n,i,a,o=1;if(e>=4)throw new Error("Out of bounds. Excel supports columns from 1 to 16384");if(this._l2nFill<1&&e>=1){for(;o<=26;)t=this._dictionary[o-1],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=1}if(this._l2nFill<2&&e>=2){for(o=27;o<=702;)r=o-27,n=r%26,i=Math.floor(r/26),t=this._dictionary[i]+this._dictionary[n],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=2}if(this._l2nFill<3&&e>=3){for(o=703;o<=16384;)r=o-703,n=r%26,i=Math.floor(r/26)%26,a=Math.floor(r/676),t=this._dictionary[a]+this._dictionary[i]+this._dictionary[n],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=3}},l2n(e){if(this._l2n[e]||this._fill(e.length),!this._l2n[e])throw new Error(`Out of bounds. Invalid column letter: ${e}`);return this._l2n[e]},n2l(e){if(e<1||e>16384)throw new Error(`${e} is out of bounds. Excel supports columns from 1 to 16384`);return this._n2l[e]||this._fill(this._level(e)),this._n2l[e]},_hash:{},validateAddress(e){if(!t.test(e))throw new Error(`Invalid Address: ${e}`);return!0},decodeAddress(e){const t=e.length<5&&this._hash[e];if(t)return t;let r=!1,n="",i=0,a=!1,o="",s=0;for(let t,c=0;c<e.length;c++)if(t=e.charCodeAt(c),!a&&t>=65&&t<=90)r=!0,n+=e[c],i=26*i+t-64;else if(t>=48&&t<=57)a=!0,o+=e[c],s=10*s+t-48;else if(a&&r&&36!==t)break;if(r){if(i>16384)throw new Error(`Out of bounds. Invalid column letter: ${n}`)}else i=void 0;a||(s=void 0);const c={address:e=n+o,col:i,row:s,$col$row:`$${n}$${o}`};return i<=100&&s<=100&&(this._hash[e]=c,this._hash[c.$col$row]=c),c},getAddress(e,t){if(t){const r=this.n2l(t)+e;return this.decodeAddress(r)}return this.decodeAddress(e)},decode(e){const t=e.split(":");if(2===t.length){const e=this.decodeAddress(t[0]),r=this.decodeAddress(t[1]),n={top:Math.min(e.row,r.row),left:Math.min(e.col,r.col),bottom:Math.max(e.row,r.row),right:Math.max(e.col,r.col)};return n.tl=this.n2l(n.left)+n.top,n.br=this.n2l(n.right)+n.bottom,n.dimensions=`${n.tl}:${n.br}`,n}return this.decodeAddress(e)},decodeEx(e){const t=e.match(/(?:(?:(?:'((?:[^']|'')*)')|([^'^ !]*))!)?(.*)/),r=t[1]||t[2],n=t[3],i=n.split(":");if(i.length>1){let e=this.decodeAddress(i[0]),t=this.decodeAddress(i[1]);const n=Math.min(e.row,t.row),a=Math.min(e.col,t.col),o=Math.max(e.row,t.row),s=Math.max(e.col,t.col);return e=this.n2l(a)+n,t=this.n2l(s)+o,{top:n,left:a,bottom:o,right:s,sheetName:r,tl:{address:e,col:a,row:n,$col$row:`$${this.n2l(a)}$${n}`,sheetName:r},br:{address:t,col:s,row:o,$col$row:`$${this.n2l(s)}$${o}`,sheetName:r},dimensions:`${e}:${t}`}}if(n.startsWith("#"))return r?{sheetName:r,error:n}:{error:n};const a=this.decodeAddress(n);return r?{sheetName:r,...a}:a},encodeAddress:(e,t)=>r.n2l(t)+e,encode(){switch(arguments.length){case 2:return r.encodeAddress(arguments[0],arguments[1]);case 4:return`${r.encodeAddress(arguments[0],arguments[1])}:${r.encodeAddress(arguments[2],arguments[3])}`;default:throw new Error("Can only encode with 2 or 4 arguments")}},inRange(e,t){const[r,n,,i,a]=e,[o,s]=t;return o>=r&&o<=i&&s>=n&&s<=a}};e.exports=r},76172:(e,t)=>{const r=(e,t)=>({...e,...t.reduce(((t,r)=>(e[r]&&(t[r]={...e[r]}),t)),{})}),n=(e,t,n,i=[])=>{e[n]&&(t[n]=r(e[n],i))};t.copyStyle=e=>{if(!e)return e;if(t=e,0===Object.keys(t).length)return{};var t;const i={...e};return n(e,i,"font",["color"]),n(e,i,"alignment"),n(e,i,"protection"),e.border&&(n(e,i,"border"),n(e.border,i.border,"top",["color"]),n(e.border,i.border,"left",["color"]),n(e.border,i.border,"bottom",["color"]),n(e.border,i.border,"right",["color"]),n(e.border,i.border,"diagonal",["color"])),e.fill&&(n(e,i,"fill",["fgColor","bgColor","center"]),e.fill.stops&&(i.fill.stops=e.fill.stops.map((e=>r(e,["color"]))))),i}},7257:(e,t,r)=>{"use strict";const n=r(76982),i={hash(e,...t){const r=n.createHash(e);return r.update(Buffer.concat(t)),r.digest()},convertPasswordToHash(e,t,r,i){t=t.toLowerCase();if(n.getHashes().indexOf(t)<0)throw new Error(`Hash algorithm '${t}' not supported!`);const a=Buffer.from(e,"utf16le");let o=this.hash(t,Buffer.from(r,"base64"),a);for(let e=0;e<i;e++){const r=Buffer.alloc(4);r.writeUInt32LE(e,0),o=this.hash(t,o,r)}return o.toString("base64")},randomBytes:e=>n.randomBytes(e)};e.exports=i},83676:e=>{function t(e,t){return new Promise((r=>{let n=!1;const i=()=>{n||(n=!0,e.removeListener(t,i),r())};e.addListener(t,i)}))}e.exports=async function*(e){const r=[];let n;e.on("data",(e=>r.push(e)));const i=new Promise((e=>n=e));let a=!1;e.on("end",(()=>{a=!0,n()}));let o=!1;for(e.on("error",(e=>{o=e,n()}));!a||r.length>0;){if(0===r.length)e.resume(),await Promise.race([t(e,"data"),i]);else{e.pause();const t=r.shift();yield t}if(o)throw o}n()}},37043:(e,t,r)=>{const{SaxesParser:n}=r(38223),{PassThrough:i}=r(34198),{bufferToString:a}=r(50323);e.exports=async function*(e){e.pipe&&!e[Symbol.asyncIterator]&&(e=e.pipe(new i));const t=new n;let r;t.on("error",(e=>{r=e}));let o=[];t.on("opentag",(e=>o.push({eventType:"opentag",value:e}))),t.on("text",(e=>o.push({eventType:"text",value:e}))),t.on("closetag",(e=>o.push({eventType:"closetag",value:e})));for await(const n of e){if(t.write(a(n)),r)throw r;yield o,o=[]}}},34667:(e,t,r)=>{const n=r(29428),i=/(([a-z_\-0-9]*)!)?([a-z0-9_$]{2,})([(])?/gi,a=/^([$])?([a-z]+)([$])?([1-9][0-9]*)$/i;e.exports={slideFormula:function(e,t,r){const o=n.decode(t),s=n.decode(r);return e.replace(i,((e,t,r,i,c)=>{if(c)return e;const l=a.exec(i);if(l){const r=l[1],i=l[2].toUpperCase(),a=l[3],c=l[4];if(i.length>3||3===i.length&&i>"XFD")return e;let u=n.l2n(i),d=parseInt(c,10);r||(u+=s.col-o.col),a||(d+=s.row-o.row);return(t||"")+(r||"")+n.n2l(u)+(a||"")+d}return e}))}}},92391:e=>{e.exports=class{constructor(){this._values=[],this._totalRefs=0,this._hash=Object.create(null)}get count(){return this._values.length}get values(){return this._values}get totalRefs(){return this._totalRefs}getString(e){return this._values[e]}add(e){let t=this._hash[e];return void 0===t&&(t=this._hash[e]=this._values.length,this._values.push(e)),this._totalRefs++,t}}},87137:(e,t,r)=>{const n=r(34198),i=r(67032),a=r(40524);class o{constructor(e,t){this._data=e,this._encoding=t}get length(){return this.toBuffer().length}copy(e,t,r,n){return this.toBuffer().copy(e,t,r,n)}toBuffer(){return this._buffer||(this._buffer=Buffer.from(this._data,this._encoding)),this._buffer}}class s{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,r,n){return this._data._buf.copy(e,t,r,n)}toBuffer(){return this._data.toBuffer()}}class c{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,r,n){this._data.copy(e,t,r,n)}toBuffer(){return this._data}}class l{constructor(e){this.size=e,this.buffer=Buffer.alloc(e),this.iRead=0,this.iWrite=0}toBuffer(){if(0===this.iRead&&this.iWrite===this.size)return this.buffer;const e=Buffer.alloc(this.iWrite-this.iRead);return this.buffer.copy(e,0,this.iRead,this.iWrite),e}get length(){return this.iWrite-this.iRead}get eod(){return this.iRead===this.iWrite}get full(){return this.iWrite===this.size}read(e){let t;return 0===e?null:void 0===e||e>=this.length?(t=this.toBuffer(),this.iRead=this.iWrite,t):(t=Buffer.alloc(e),this.buffer.copy(t,0,this.iRead,e),this.iRead+=e,t)}write(e,t,r){const n=Math.min(r,this.size-this.iWrite);return e.copy(this.buffer,this.iWrite,t,t+n),this.iWrite+=n,n}}const u=function(e){e=e||{},this.bufSize=e.bufSize||1048576,this.buffers=[],this.batch=e.batch||!1,this.corked=!1,this.inPos=0,this.outPos=0,this.pipes=[],this.paused=!1,this.encoding=null};i.inherits(u,n.Duplex,{toBuffer(){switch(this.buffers.length){case 0:return null;case 1:return this.buffers[0].toBuffer();default:return Buffer.concat(this.buffers.map((e=>e.toBuffer())))}},_getWritableBuffer(){if(this.buffers.length){const e=this.buffers[this.buffers.length-1];if(!e.full)return e}const e=new l(this.bufSize);return this.buffers.push(e),e},async _pipe(e){await Promise.all(this.pipes.map((function(t){return new Promise((r=>{t.write(e.toBuffer(),(()=>{r()}))}))})))},_writeToBuffers(e){let t=0;const r=e.length;for(;t<r;){t+=this._getWritableBuffer().write(e,t,r-t)}},async write(e,t,r){let n;if(t instanceof Function&&(r=t,t="utf8"),r=r||i.nop,e instanceof a)n=new s(e);else if(e instanceof Buffer)n=new c(e);else{if(!("string"==typeof e||e instanceof String||e instanceof ArrayBuffer))throw new Error("Chunk must be one of type String, Buffer or StringBuf.");n=new o(e,t)}if(this.pipes.length)if(this.batch)for(this._writeToBuffers(n);!this.corked&&this.buffers.length>1;)this._pipe(this.buffers.shift());else this.corked?(this._writeToBuffers(n),process.nextTick(r)):(await this._pipe(n),r());else this.paused||this.emit("data",n.toBuffer()),this._writeToBuffers(n),this.emit("readable");return!0},cork(){this.corked=!0},_flush(){if(this.pipes.length)for(;this.buffers.length;)this._pipe(this.buffers.shift())},uncork(){this.corked=!1,this._flush()},end(e,t,r){const n=e=>{e?r(e):(this._flush(),this.pipes.forEach((e=>{e.end()})),this.emit("finish"))};e?this.write(e,t,n):n()},read(e){let t;if(e){for(t=[];e&&this.buffers.length&&!this.buffers[0].eod;){const r=this.buffers[0],n=r.read(e);e-=n.length,t.push(n),r.eod&&r.full&&this.buffers.shift()}return Buffer.concat(t)}return t=this.buffers.map((e=>e.toBuffer())).filter(Boolean),this.buffers=[],Buffer.concat(t)},setEncoding(e){this.encoding=e},pause(){this.paused=!0},resume(){this.paused=!1},isPaused(){return!!this.paused},pipe(e){this.pipes.push(e),!this.paused&&this.buffers.length&&this.end()},unpipe(e){this.pipes=this.pipes.filter((t=>t!==e))},unshift(){throw new Error("Not Implemented")},wrap(){throw new Error("Not Implemented")}}),e.exports=u},40524:e=>{e.exports=class{constructor(e){this._buf=Buffer.alloc(e&&e.size||16384),this._encoding=e&&e.encoding||"utf8",this._inPos=0,this._buffer=void 0}get length(){return this._inPos}get capacity(){return this._buf.length}get buffer(){return this._buf}toBuffer(){return this._buffer||(this._buffer=Buffer.alloc(this.length),this._buf.copy(this._buffer,0,0,this.length)),this._buffer}reset(e){e=e||0,this._buffer=void 0,this._inPos=e}_grow(e){let t=2*this._buf.length;for(;t<e;)t*=2;const r=Buffer.alloc(t);this._buf.copy(r,0),this._buf=r}addText(e){this._buffer=void 0;let t=this._inPos+this._buf.write(e,this._inPos,this._encoding);for(;t>=this._buf.length-4;)this._grow(this._inPos+e.length),t=this._inPos+this._buf.write(e,this._inPos,this._encoding);this._inPos=t}addStringBuf(e){e.length&&(this._buffer=void 0,this.length+e.length>this.capacity&&this._grow(this.length+e.length),e._buf.copy(this._buf,this._inPos,0,e.length),this._inPos+=e.length)}}},67984:e=>{const{toString:t}=Object.prototype,r=/["&<>]/,n={each:function(e,t){e&&(Array.isArray(e)?e.forEach(t):Object.keys(e).forEach((r=>{t(e[r],r)})))},some:function(e,t){return!!e&&(Array.isArray(e)?e.some(t):Object.keys(e).some((r=>t(e[r],r))))},every:function(e,t){return!e||(Array.isArray(e)?e.every(t):Object.keys(e).every((r=>t(e[r],r))))},map:function(e,t){return e?Array.isArray(e)?e.map(t):Object.keys(e).map((r=>t(e[r],r))):[]},keyBy:(e,t)=>e.reduce(((e,r)=>(e[r[t]]=r,e)),{}),isEqual:function(e,t){const r=typeof e,i=typeof t,a=Array.isArray(e),o=Array.isArray(t);let s;if(r!==i)return!1;if("object"==typeof e){if(a||o)return!(!a||!o)&&(e.length===t.length&&e.every(((e,r)=>{const i=t[r];return n.isEqual(e,i)})));if(null===e||null===t)return e===t;if(s=Object.keys(e),Object.keys(t).length!==s.length)return!1;for(const e of s)if(!t.hasOwnProperty(e))return!1;return n.every(e,((e,r)=>{const i=t[r];return n.isEqual(e,i)}))}return e===t},escapeHtml(e){const t=r.exec(e);if(!t)return e;let n="",i="",a=0,o=t.index;for(;o<e.length;o++){switch(e.charAt(o)){case'"':i=""";break;case"&":i="&";break;case"'":i="'";break;case"<":i="<";break;case">":i=">";break;default:continue}a!==o&&(n+=e.substring(a,o)),a=o+1,n+=i}return a!==o?n+e.substring(a,o):n},strcmp:(e,t)=>e<t?-1:e>t?1:0,isUndefined:e=>"[object Undefined]"===t.call(e),isObject:e=>"[object Object]"===t.call(e),deepMerge(){const e=arguments[0]||{},{length:t}=arguments;let r,i,a;function o(t,o){r=e[o],a=Array.isArray(t),n.isObject(t)||a?(a?(a=!1,i=r&&Array.isArray(r)?r:[]):i=r&&n.isObject(r)?r:{},e[o]=n.deepMerge(i,t)):n.isUndefined(t)||(e[o]=t)}for(let e=0;e<t;e++)n.each(arguments[e],o);return e}};e.exports=n},67032:(e,t,r)=>{const n=r(79896),i=/[<>&'"\x7F\x00-\x08\x0B-\x0C\x0E-\x1F]/,a={nop(){},promiseImmediate:e=>new Promise((t=>{global.setImmediate?setImmediate((()=>{t(e)})):setTimeout((()=>{t(e)}),1)})),inherits:function(e,t,r,n){e.super_=t,n||(n=r,r=null),r&&Object.keys(r).forEach((t=>{Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}));const i={constructor:{value:e,enumerable:!1,writable:!1,configurable:!0}};n&&Object.keys(n).forEach((e=>{i[e]=Object.getOwnPropertyDescriptor(n,e)})),e.prototype=Object.create(t.prototype,i)},dateToExcel:(e,t)=>25569+e.getTime()/864e5-(t?1462:0),excelToDate(e,t){const r=Math.round(24*(e-25569+(t?1462:0))*3600*1e3);return new Date(r)},parsePath(e){const t=e.lastIndexOf("/");return{path:e.substring(0,t),name:e.substring(t+1)}},getRelsPath(e){const t=a.parsePath(e);return`${t.path}/_rels/${t.name}.rels`},xmlEncode(e){const t=i.exec(e);if(!t)return e;let r="",n="",a=0,o=t.index;for(;o<e.length;o++){const t=e.charCodeAt(o);switch(t){case 34:n=""";break;case 38:n="&";break;case 39:n="'";break;case 60:n="<";break;case 62:n=">";break;case 127:n="";break;default:if(t<=31&&(t<=8||t>=11&&13!==t)){n="";break}continue}a!==o&&(r+=e.substring(a,o)),a=o+1,n&&(r+=n)}return a!==o?r+e.substring(a,o):r},xmlDecode:e=>e.replace(/&([a-z]*);/g,(e=>{switch(e){case"<":return"<";case">":return">";case"&":return"&";case"'":return"'";case""":return'"';default:return e}})),validInt(e){const t=parseInt(e,10);return Number.isNaN(t)?0:t},isDateFmt(e){if(!e)return!1;return null!==(e=(e=e.replace(/\[[^\]]*]/g,"")).replace(/"[^"]*"/g,"")).match(/[ymdhMsb]+/)},fs:{exists:e=>new Promise((t=>{n.access(e,n.constants.F_OK,(e=>{t(!e)}))}))},toIsoDateString:e=>e.toIsoString().subsstr(0,10),parseBoolean:e=>!0===e||"true"===e||1===e||"1"===e};e.exports=a},12141:(e,t,r)=>{const n=r(67984),i=r(67032),a=">";function o(e,t,r){e.push(` ${t}="${i.xmlEncode(r.toString())}"`)}function s(e,t){if(t){const r=[];n.each(t,((e,t)=>{void 0!==e&&o(r,t,e)})),e.push(r.join(""))}}class c{constructor(){this._xml=[],this._stack=[],this._rollbacks=[]}get tos(){return this._stack.length?this._stack[this._stack.length-1]:void 0}get cursor(){return this._xml.length}openXml(e){const t=this._xml;t.push("<?xml"),s(t,e),t.push("?>\n")}openNode(e,t){const r=this.tos,n=this._xml;r&&this.open&&n.push(a),this._stack.push(e),n.push("<"),n.push(e),s(n,t),this.leaf=!0,this.open=!0}addAttribute(e,t){if(!this.open)throw new Error("Cannot write attributes to node if it is not open");void 0!==t&&o(this._xml,e,t)}addAttributes(e){if(!this.open)throw new Error("Cannot write attributes to node if it is not open");s(this._xml,e)}writeText(e){const t=this._xml;this.open&&(t.push(a),this.open=!1),this.leaf=!1,t.push(i.xmlEncode(e.toString()))}writeXml(e){this.open&&(this._xml.push(a),this.open=!1),this.leaf=!1,this._xml.push(e)}closeNode(){const e=this._stack.pop(),t=this._xml;this.leaf?t.push("/>"):(t.push("</"),t.push(e),t.push(a)),this.open=!1,this.leaf=!1}leafNode(e,t,r){this.openNode(e,t),void 0!==r&&this.writeText(r),this.closeNode()}closeAll(){for(;this._stack.length;)this.closeNode()}addRollback(){return this._rollbacks.push({xml:this._xml.length,stack:this._stack.length,leaf:this.leaf,open:this.open}),this.cursor}commit(){this._rollbacks.pop()}rollback(){const e=this._rollbacks.pop();this._xml.length>e.xml&&this._xml.splice(e.xml,this._xml.length-e.xml),this._stack.length>e.stack&&this._stack.splice(e.stack,this._stack.length-e.stack),this.leaf=e.leaf,this.open=e.open}get xml(){return this.closeAll(),this._xml.join("")}}c.StdDocAttributes={version:"1.0",encoding:"UTF-8",standalone:"yes"},e.exports=c},1495:(e,t,r)=>{const n=r(24434),i=r(58833),a=r(87137),{stringToBuffer:o}=r(24463);class s extends n.EventEmitter{constructor(e){super(),this.options=Object.assign({type:"nodebuffer",compression:"DEFLATE"},e),this.zip=new i,this.stream=new a}append(e,t){t.hasOwnProperty("base64")&&t.base64?this.zip.file(t.name,e,{base64:!0}):(process.browser&&"string"==typeof e&&(e=o(e)),this.zip.file(t.name,e))}async finalize(){const e=await this.zip.generateAsync(this.options);this.stream.end(e),this.emit("finish")}read(e){return this.stream.read(e)}setEncoding(e){return this.stream.setEncoding(e)}pause(){return this.stream.pause()}resume(){return this.stream.resume()}isPaused(){return this.stream.isPaused()}pipe(e,t){return this.stream.pipe(e,t)}unpipe(e){return this.stream.unpipe(e)}unshift(e){return this.stream.unshift(e)}wrap(e){return this.stream.wrap(e)}}e.exports={ZipWriter:s}},77118:e=>{e.exports={0:{f:"General"},1:{f:"0"},2:{f:"0.00"},3:{f:"#,##0"},4:{f:"#,##0.00"},9:{f:"0%"},10:{f:"0.00%"},11:{f:"0.00E+00"},12:{f:"# ?/?"},13:{f:"# ??/??"},14:{f:"mm-dd-yy"},15:{f:"d-mmm-yy"},16:{f:"d-mmm"},17:{f:"mmm-yy"},18:{f:"h:mm AM/PM"},19:{f:"h:mm:ss AM/PM"},20:{f:"h:mm"},21:{f:"h:mm:ss"},22:{f:'m/d/yy "h":mm'},27:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},28:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},29:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},30:{"zh-tw":"m/d/yy ","zh-cn":"m-d-yy","ja-jp":"m/d/yy","ko-kr":"mm-dd-yy"},31:{"zh-tw":'yyyy"年"m"月"d"日"',"zh-cn":'yyyy"年"m"月"d"日"',"ja-jp":'yyyy"年"m"月"d"日"',"ko-kr":'yyyy"년" mm"월" dd"일"'},32:{"zh-tw":'hh"時"mm"分"',"zh-cn":'h"时"mm"分"',"ja-jp":'h"時"mm"分"',"ko-kr":'h"시" mm"분"'},33:{"zh-tw":'hh"時"mm"分"ss"秒"',"zh-cn":'h"时"mm"分"ss"秒"',"ja-jp":'h"時"mm"分"ss"秒"',"ko-kr":'h"시" mm"분" ss"초"'},34:{"zh-tw":'上午/下午 hh"時"mm"分"',"zh-cn":'上午/下午 h"时"mm"分"',"ja-jp":'yyyy"年"m"月"',"ko-kr":"yyyy-mm-dd"},35:{"zh-tw":'上午/下午 hh"時"mm"分"ss"秒"',"zh-cn":'上午/下午 h"时"mm"分"ss"秒"',"ja-jp":'m"月"d"日"',"ko-kr":"yyyy-mm-dd"},36:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},37:{f:"#,##0 ;(#,##0)"},38:{f:"#,##0 ;[Red](#,##0)"},39:{f:"#,##0.00 ;(#,##0.00)"},40:{f:"#,##0.00 ;[Red](#,##0.00)"},45:{f:"mm:ss"},46:{f:"[h]:mm:ss"},47:{f:"mmss.0"},48:{f:"##0.0E+0"},49:{f:"@"},50:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},51:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},52:{"zh-tw":'上午/下午 hh"時"mm"分"',"zh-cn":'yyyy"年"m"月"',"ja-jp":'yyyy"年"m"月"',"ko-kr":"yyyy-mm-dd"},53:{"zh-tw":'上午/下午 hh"時"mm"分"ss"秒"',"zh-cn":'m"月"d"日"',"ja-jp":'m"月"d"日"',"ko-kr":"yyyy-mm-dd"},54:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},55:{"zh-tw":'上午/下午 hh"時"mm"分"',"zh-cn":'上午/下午 h"时"mm"分"',"ja-jp":'yyyy"年"m"月"',"ko-kr":"yyyy-mm-dd"},56:{"zh-tw":'上午/下午 hh"時"mm"分"ss"秒"',"zh-cn":'上午/下午 h"时"mm"分"ss"秒"',"ja-jp":'m"月"d"日"',"ko-kr":"yyyy-mm-dd"},57:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},58:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},59:{"th-th":"t0"},60:{"th-th":"t0.00"},61:{"th-th":"t#,##0"},62:{"th-th":"t#,##0.00"},67:{"th-th":"t0%"},68:{"th-th":"t0.00%"},69:{"th-th":"t# ?/?"},70:{"th-th":"t# ??/??"},81:{"th-th":"d/m/bb"}}},71745:e=>{"use strict";e.exports={OfficeDocument:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Worksheet:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",CalcChain:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/calcChain",SharedStrings:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Styles:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Theme:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",Hyperlink:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",Image:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",CoreProperties:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",ExtenderProperties:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",Comments:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",VmlDrawing:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",Table:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/table"}},87242:(e,t,r)=>{const n=r(37043),i=r(12141);class a{prepare(){}render(){}parseOpen(e){}parseText(e){}parseClose(e){}reconcile(e,t){}reset(){this.model=null,this.map&&Object.values(this.map).forEach((e=>{e instanceof a?e.reset():e.xform&&e.xform.reset()}))}mergeModel(e){this.model=Object.assign(this.model||{},e)}async parse(e){for await(const t of e)for(const{eventType:e,value:r}of t)if("opentag"===e)this.parseOpen(r);else if("text"===e)this.parseText(r);else if("closetag"===e&&!this.parseClose(r.name))return this.model;return this.model}async parseStream(e){return this.parse(n(e))}get xml(){return this.toXml(this.model)}toXml(e){const t=new i;return this.render(t,e),t.xml}static toAttribute(e,t,r=!1){if(void 0===e){if(r)return t}else if(r||e!==t)return e.toString()}static toStringAttribute(e,t,r=!1){return a.toAttribute(e,t,r)}static toStringValue(e,t){return void 0===e?t:e}static toBoolAttribute(e,t,r=!1){if(void 0===e){if(r)return t}else if(r||e!==t)return e?"1":"0"}static toBoolValue(e,t){return void 0===e?t:"1"===e}static toIntAttribute(e,t,r=!1){return a.toAttribute(e,t,r)}static toIntValue(e,t){return void 0===e?t:parseInt(e,10)}static toFloatAttribute(e,t,r=!1){return a.toAttribute(e,t,r)}static toFloatValue(e,t){return void 0===e?t:parseFloat(e)}}e.exports=a},78788:(e,t,r)=>{const n=r(87242),i=r(29428);function a(e){try{return i.decodeEx(e),!0}catch(e){return!1}}function o(e){const t=[];let r=!1,n="";return e.split(",").forEach((e=>{if(!e)return;const i=(e.match(/'/g)||[]).length;if(!i)return void(r?n+=`${e},`:a(e)&&t.push(e));const o=i%2==0;!r&&o&&a(e)?t.push(e):r&&!o?(r=!1,a(n+e)&&t.push(n+e),n=""):(r=!0,n+=`${e},`)})),t}e.exports=class extends n{render(e,t){e.openNode("definedName",{name:t.name,localSheetId:t.localSheetId}),e.writeText(t.ranges.join(",")),e.closeNode()}parseOpen(e){return"definedName"===e.name&&(this._parsedName=e.attributes.name,this._parsedLocalSheetId=e.attributes.localSheetId,this._parsedText=[],!0)}parseText(e){this._parsedText.push(e)}parseClose(){return this.model={name:this._parsedName,ranges:o(this._parsedText.join(""))},void 0!==this._parsedLocalSheetId&&(this.model.localSheetId=parseInt(this._parsedLocalSheetId,10)),!1}}},63722:(e,t,r)=>{const n=r(67032),i=r(87242);e.exports=class extends i{render(e,t){e.leafNode("sheet",{sheetId:t.id,name:t.name,state:t.state,"r:id":t.rId})}parseOpen(e){return"sheet"===e.name&&(this.model={name:n.xmlDecode(e.attributes.name),id:parseInt(e.attributes.sheetId,10),state:e.attributes.state,rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},58655:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){e.leafNode("calcPr",{calcId:171027,fullCalcOnLoad:t.fullCalcOnLoad?1:void 0})}parseOpen(e){return"calcPr"===e.name&&(this.model={},!0)}parseText(){}parseClose(){return!1}}},22403:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){e.leafNode("workbookPr",{date1904:t.date1904?1:void 0,defaultThemeVersion:164011,filterPrivacy:1})}parseOpen(e){return"workbookPr"===e.name&&(this.model={date1904:"1"===e.attributes.date1904},!0)}parseText(){}parseClose(){return!1}}},41711:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){const r={xWindow:t.x||0,yWindow:t.y||0,windowWidth:t.width||12e3,windowHeight:t.height||24e3,firstSheet:t.firstSheet,activeTab:t.activeTab};t.visibility&&"visible"!==t.visibility&&(r.visibility=t.visibility),e.leafNode("workbookView",r)}parseOpen(e){if("workbookView"===e.name){const t=this.model={},r=function(e,r,n){const i=void 0!==r?t[e]=r:n;void 0!==i&&(t[e]=i)},n=function(e,r,n){const i=void 0!==r?t[e]=parseInt(r,10):n;void 0!==i&&(t[e]=i)};return n("x",e.attributes.xWindow,0),n("y",e.attributes.yWindow,0),n("width",e.attributes.windowWidth,25e3),n("height",e.attributes.windowHeight,1e4),r("visibility",e.attributes.visibility,"visible"),n("activeTab",e.attributes.activeTab,void 0),n("firstSheet",e.attributes.firstSheet,void 0),!0}return!1}parseText(){}parseClose(){return!1}}},22519:(e,t,r)=>{const n=r(67984),i=r(29428),a=r(12141),o=r(87242),s=r(52789),c=r(62447),l=r(78788),u=r(63722),d=r(41711),p=r(22403),f=r(58655);class m extends o{constructor(){super(),this.map={fileVersion:m.STATIC_XFORMS.fileVersion,workbookPr:new p,bookViews:new c({tag:"bookViews",count:!1,childXform:new d}),sheets:new c({tag:"sheets",count:!1,childXform:new u}),definedNames:new c({tag:"definedNames",count:!1,childXform:new l}),calcPr:new f}}prepare(e){e.sheets=e.worksheets;const t=[];let r=0;e.sheets.forEach((e=>{if(e.pageSetup&&e.pageSetup.printArea&&e.pageSetup.printArea.split("&&").forEach((n=>{const i=n.split(":"),a={name:"_xlnm.Print_Area",ranges:[`'${e.name}'!$${i[0]}:$${i[1]}`],localSheetId:r};t.push(a)})),e.pageSetup&&(e.pageSetup.printTitlesRow||e.pageSetup.printTitlesColumn)){const n=[];if(e.pageSetup.printTitlesColumn){const t=e.pageSetup.printTitlesColumn.split(":");n.push(`'${e.name}'!$${t[0]}:$${t[1]}`)}if(e.pageSetup.printTitlesRow){const t=e.pageSetup.printTitlesRow.split(":");n.push(`'${e.name}'!$${t[0]}:$${t[1]}`)}const i={name:"_xlnm.Print_Titles",ranges:n,localSheetId:r};t.push(i)}r++})),t.length&&(e.definedNames=e.definedNames.concat(t)),(e.media||[]).forEach(((e,t)=>{e.name=e.type+(t+1)}))}render(e,t){e.openXml(a.StdDocAttributes),e.openNode("workbook",m.WORKBOOK_ATTRIBUTES),this.map.fileVersion.render(e),this.map.workbookPr.render(e,t.properties),this.map.bookViews.render(e,t.views),this.map.sheets.render(e,t.sheets),this.map.definedNames.render(e,t.definedNames),this.map.calcPr.render(e,t.calcProperties),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):("workbook"===e.name||(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):"workbook"!==e||(this.model={sheets:this.map.sheets.model,properties:this.map.workbookPr.model||{},views:this.map.bookViews.model,calcProperties:{}},this.map.definedNames.model&&(this.model.definedNames=this.map.definedNames.model),!1)}reconcile(e){const t=(e.workbookRels||[]).reduce(((e,t)=>(e[t.Id]=t,e)),{}),r=[];let a,o=0;(e.sheets||[]).forEach((n=>{const i=t[n.rId];i&&(a=e.worksheetHash[`xl/${i.Target.replace(/^(\s|\/xl\/)+/,"")}`],a&&(a.name=n.name,a.id=n.id,a.state=n.state,r[o++]=a))}));const s=[];n.each(e.definedNames,(e=>{if("_xlnm.Print_Area"===e.name){if(a=r[e.localSheetId],a){a.pageSetup||(a.pageSetup={});const t=i.decodeEx(e.ranges[0]);a.pageSetup.printArea=a.pageSetup.printArea?`${a.pageSetup.printArea}&&${t.dimensions}`:t.dimensions}}else if("_xlnm.Print_Titles"===e.name){if(a=r[e.localSheetId],a){a.pageSetup||(a.pageSetup={});const t=e.ranges.join(","),r=/\$/g,n=/\$\d+:\$\d+/,i=t.match(n);if(i&&i.length){const e=i[0];a.pageSetup.printTitlesRow=e.replace(r,"")}const o=/\$[A-Z]+:\$[A-Z]+/,s=t.match(o);if(s&&s.length){const e=s[0];a.pageSetup.printTitlesColumn=e.replace(r,"")}}}else s.push(e)})),e.definedNames=s,e.media.forEach(((e,t)=>{e.index=t}))}}m.WORKBOOK_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"x15","xmlns:x15":"http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"},m.STATIC_XFORMS={fileVersion:new s({tag:"fileVersion",$:{appName:"xl",lastEdited:5,lowestEdited:5,rupBuild:9303}})},e.exports=m},41710:(e,t,r)=>{const n=r(95814),i=r(67032),a=r(87242),o=e.exports=function(e){this.model=e};i.inherits(o,a,{get tag(){return"r"},get richTextXform(){return this._richTextXform||(this._richTextXform=new n),this._richTextXform},render(e,t){t=t||this.model,e.openNode("comment",{ref:t.ref,authorId:0}),e.openNode("text"),t&&t.note&&t.note.texts&&t.note.texts.forEach((t=>{this.richTextXform.render(e,t)})),e.closeNode(),e.closeNode()},parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"comment":return this.model={type:"note",note:{texts:[]},...e.attributes},!0;case"r":return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}},parseText(e){this.parser&&this.parser.parseText(e)},parseClose(e){switch(e){case"comment":return!1;case"r":return this.model.note.texts.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}})},10959:(e,t,r)=>{const n=r(12141),i=r(67032),a=r(87242),o=r(41710),s=e.exports=function(){this.map={comment:new o}};i.inherits(s,a,{COMMENTS_ATTRIBUTES:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main"}},{render(e,t){t=t||this.model,e.openXml(n.StdDocAttributes),e.openNode("comments",s.COMMENTS_ATTRIBUTES),e.openNode("authors"),e.leafNode("author",null,"Author"),e.closeNode(),e.openNode("commentList"),t.comments.forEach((t=>{this.map.comment.render(e,t)})),e.closeNode(),e.closeNode()},parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"commentList":return this.model={comments:[]},!0;case"comment":return this.parser=this.map.comment,this.parser.parseOpen(e),!0;default:return!1}},parseText(e){this.parser&&this.parser.parseText(e)},parseClose(e){switch(e){case"commentList":return!1;case"comment":return this.model.comments.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}})},57190:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this._model=e}get tag(){return this._model&&this._model.tag}render(e,t,r){(t===r[2]||"x:SizeWithCells"===this.tag&&t===r[1])&&e.leafNode(this.tag)}parseOpen(e){return e.name===this.tag&&(this.model={},this.model[this.tag]=!0,!0)}parseText(){}parseClose(){return!1}}},59718:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this._model=e}get tag(){return this._model&&this._model.tag}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(e){return e.name===this.tag&&(this.text="",!0)}parseText(e){this.text=e}parseClose(){return!1}}},44110:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"x:Anchor"}getAnchorRect(e){const t=Math.floor(e.left),r=Math.floor(68*(e.left-t)),n=Math.floor(e.top),i=Math.floor(18*(e.top-n)),a=Math.floor(e.right),o=Math.floor(68*(e.right-a)),s=Math.floor(e.bottom);return[t,r,n,i,a,o,s,Math.floor(18*(e.bottom-s))]}getDefaultRect(e){const t=e.col,r=Math.max(e.row-2,0);return[t,6,r,14,t+2,2,r+4,16]}render(e,t){const r=t.anchor?this.getAnchorRect(t.anchor):this.getDefaultRect(t.refAddress);e.leafNode("x:Anchor",null,r.join(", "))}parseOpen(e){return e.name===this.tag&&(this.text="",!0)}parseText(e){this.text=e}parseClose(){return!1}}},59887:(e,t,r)=>{const n=r(87242),i=r(44110),a=r(59718),o=r(57190),s=["twoCells","oneCells","absolute"];e.exports=class extends n{constructor(){super(),this.map={"x:Anchor":new i,"x:Locked":new a({tag:"x:Locked"}),"x:LockText":new a({tag:"x:LockText"}),"x:SizeWithCells":new o({tag:"x:SizeWithCells"}),"x:MoveWithCells":new o({tag:"x:MoveWithCells"})}}get tag(){return"x:ClientData"}render(e,t){const{protection:r,editAs:n}=t.note;e.openNode(this.tag,{ObjectType:"Note"}),this.map["x:MoveWithCells"].render(e,n,s),this.map["x:SizeWithCells"].render(e,n,s),this.map["x:Anchor"].render(e,t),this.map["x:Locked"].render(e,r.locked),e.leafNode("x:AutoFill",null,"False"),this.map["x:LockText"].render(e,r.lockText),e.leafNode("x:Row",null,t.refAddress.row-1),e.leafNode("x:Column",null,t.refAddress.col-1),e.closeNode()}parseOpen(e){if(e.name===this.tag)this.reset(),this.model={anchor:[],protection:{},editAs:""};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.normalizeModel(),!1)}normalizeModel(){const e=Object.assign({},this.map["x:MoveWithCells"].model,this.map["x:SizeWithCells"].model),t=Object.keys(e).length;this.model.editAs=s[t],this.model.anchor=this.map["x:Anchor"].text,this.model.protection.locked=this.map["x:Locked"].text,this.model.protection.lockText=this.map["x:LockText"].text}}},43316:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(23712);class o extends i{constructor(){super(),this.map={"v:shape":new a}}get tag(){return"xml"}render(e,t){e.openXml(n.StdDocAttributes),e.openNode(this.tag,o.DRAWING_ATTRIBUTES),e.openNode("o:shapelayout",{"v:ext":"edit"}),e.leafNode("o:idmap",{"v:ext":"edit",data:1}),e.closeNode(),e.openNode("v:shapetype",{id:"_x0000_t202",coordsize:"21600,21600","o:spt":202,path:"m,l,21600r21600,l21600,xe"}),e.leafNode("v:stroke",{joinstyle:"miter"}),e.leafNode("v:path",{gradientshapeok:"t","o:connecttype":"rect"}),e.closeNode(),t.comments.forEach(((t,r)=>{this.map["v:shape"].render(e,t,r)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={comments:[]};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.comments.push(this.parser.model),this.parser=void 0),!0):e!==this.tag}reconcile(e,t){e.anchors.forEach((e=>{e.br?this.map["xdr:twoCellAnchor"].reconcile(e,t):this.map["xdr:oneCellAnchor"].reconcile(e,t)}))}}o.DRAWING_ATTRIBUTES={"xmlns:v":"urn:schemas-microsoft-com:vml","xmlns:o":"urn:schemas-microsoft-com:office:office","xmlns:x":"urn:schemas-microsoft-com:office:excel"},e.exports=o},23712:(e,t,r)=>{const n=r(87242),i=r(81905),a=r(59887);class o extends n{constructor(){super(),this.map={"v:textbox":new i,"x:ClientData":new a}}get tag(){return"v:shape"}render(e,t,r){e.openNode("v:shape",o.V_SHAPE_ATTRIBUTES(t,r)),e.leafNode("v:fill",{color2:"infoBackground [80]"}),e.leafNode("v:shadow",{color:"none [81]",obscured:"t"}),e.leafNode("v:path",{"o:connecttype":"none"}),this.map["v:textbox"].render(e,t),this.map["x:ClientData"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={margins:{insetmode:e.attributes["o:insetmode"]},anchor:"",editAs:"",protection:{}};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.margins.inset=this.map["v:textbox"].model&&this.map["v:textbox"].model.inset,this.model.protection=this.map["x:ClientData"].model&&this.map["x:ClientData"].model.protection,this.model.anchor=this.map["x:ClientData"].model&&this.map["x:ClientData"].model.anchor,this.model.editAs=this.map["x:ClientData"].model&&this.map["x:ClientData"].model.editAs,!1)}}o.V_SHAPE_ATTRIBUTES=(e,t)=>({id:`_x0000_s${1025+t}`,type:"#_x0000_t202",style:"position:absolute; margin-left:105.3pt;margin-top:10.5pt;width:97.8pt;height:59.1pt;z-index:1;visibility:hidden",fillcolor:"infoBackground [80]",strokecolor:"none [81]","o:insetmode":e.note.margins&&e.note.margins.insetmode}),e.exports=o},81905:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"v:textbox"}conversionUnit(e,t,r){return`${parseFloat(e)*t.toFixed(2)}${r}`}reverseConversionUnit(e){return(e||"").split(",").map((e=>Number(parseFloat(this.conversionUnit(parseFloat(e),.1,"")).toFixed(2))))}render(e,t){const r={style:"mso-direction-alt:auto"};if(t&&t.note){let{inset:e}=t.note&&t.note.margins;Array.isArray(e)&&(e=e.map((e=>this.conversionUnit(e,10,"mm"))).join(",")),e&&(r.inset=e)}e.openNode("v:textbox",r),e.leafNode("div",{style:"text-align:left"}),e.closeNode()}parseOpen(e){return e.name!==this.tag||(this.model={inset:this.reverseConversionUnit(e.attributes.inset)},!0)}parseText(){}parseClose(e){return e!==this.tag}}},60554:(e,t,r)=>{const n=r(87242);e.exports=class extends n{createNewModel(e){return{}}parseOpen(e){return this.parser=this.parser||this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag&&(this.model=this.createNewModel(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}onParserClose(e,t){this.model[e]=t.model}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.onParserClose(e,this.parser),this.parser=void 0),!0):e!==this.tag}}},38955:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){e.openNode("HeadingPairs"),e.openNode("vt:vector",{size:2,baseType:"variant"}),e.openNode("vt:variant"),e.leafNode("vt:lpstr",void 0,"Worksheets"),e.closeNode(),e.openNode("vt:variant"),e.leafNode("vt:i4",void 0,t.length),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(e){return"HeadingPairs"===e.name}parseText(){}parseClose(e){return"HeadingPairs"!==e}}},30449:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){e.openNode("TitlesOfParts"),e.openNode("vt:vector",{size:t.length,baseType:"lpstr"}),t.forEach((t=>{e.leafNode("vt:lpstr",void 0,t.name)})),e.closeNode(),e.closeNode()}parseOpen(e){return"TitlesOfParts"===e.name}parseText(){}parseClose(e){return"TitlesOfParts"!==e}}},15888:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(71207),o=r(38955),s=r(30449);class c extends i{constructor(){super(),this.map={Company:new a({tag:"Company"}),Manager:new a({tag:"Manager"}),HeadingPairs:new o,TitleOfParts:new s}}render(e,t){e.openXml(n.StdDocAttributes),e.openNode("Properties",c.PROPERTY_ATTRIBUTES),e.leafNode("Application",void 0,"Microsoft Excel"),e.leafNode("DocSecurity",void 0,"0"),e.leafNode("ScaleCrop",void 0,"false"),this.map.HeadingPairs.render(e,t.worksheets),this.map.TitleOfParts.render(e,t.worksheets),this.map.Company.render(e,t.company||""),this.map.Manager.render(e,t.manager),e.leafNode("LinksUpToDate",void 0,"false"),e.leafNode("SharedDoc",void 0,"false"),e.leafNode("HyperlinksChanged",void 0,"false"),e.leafNode("AppVersion",void 0,"16.0300"),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"Properties"===e.name||(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):"Properties"!==e||(this.model={worksheets:this.map.TitleOfParts.model,company:this.map.Company.model,manager:this.map.Manager.model},!1)}}c.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3,6}/,"")},c.DateAttrs={"xsi:type":"dcterms:W3CDTF"},c.PROPERTY_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties","xmlns:vt":"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"},e.exports=c},40814:(e,t,r)=>{const n=r(12141),i=r(87242);class a extends i{render(e,t){e.openXml(n.StdDocAttributes),e.openNode("Types",a.PROPERTY_ATTRIBUTES);const r={};(t.media||[]).forEach((t=>{if("image"===t.type){const n=t.extension;r[n]||(r[n]=!0,e.leafNode("Default",{Extension:n,ContentType:`image/${n}`}))}})),e.leafNode("Default",{Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"}),e.leafNode("Default",{Extension:"xml",ContentType:"application/xml"}),e.leafNode("Override",{PartName:"/xl/workbook.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"}),t.worksheets.forEach((t=>{const r=`/xl/worksheets/sheet${t.id}.xml`;e.leafNode("Override",{PartName:r,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"})})),e.leafNode("Override",{PartName:"/xl/theme/theme1.xml",ContentType:"application/vnd.openxmlformats-officedocument.theme+xml"}),e.leafNode("Override",{PartName:"/xl/styles.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"});t.sharedStrings&&t.sharedStrings.count&&e.leafNode("Override",{PartName:"/xl/sharedStrings.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml"}),t.tables&&t.tables.forEach((t=>{e.leafNode("Override",{PartName:`/xl/tables/${t.target}`,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml"})})),t.drawings&&t.drawings.forEach((t=>{e.leafNode("Override",{PartName:`/xl/drawings/${t.name}.xml`,ContentType:"application/vnd.openxmlformats-officedocument.drawing+xml"})})),t.commentRefs&&(e.leafNode("Default",{Extension:"vml",ContentType:"application/vnd.openxmlformats-officedocument.vmlDrawing"}),t.commentRefs.forEach((({commentName:t})=>{e.leafNode("Override",{PartName:`/xl/${t}.xml`,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml"})}))),e.leafNode("Override",{PartName:"/docProps/core.xml",ContentType:"application/vnd.openxmlformats-package.core-properties+xml"}),e.leafNode("Override",{PartName:"/docProps/app.xml",ContentType:"application/vnd.openxmlformats-officedocument.extended-properties+xml"}),e.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}}a.PROPERTY_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"},e.exports=a},1298:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(59874),o=r(71207),s=r(65208);class c extends i{constructor(){super(),this.map={"dc:creator":new o({tag:"dc:creator"}),"dc:title":new o({tag:"dc:title"}),"dc:subject":new o({tag:"dc:subject"}),"dc:description":new o({tag:"dc:description"}),"dc:identifier":new o({tag:"dc:identifier"}),"dc:language":new o({tag:"dc:language"}),"cp:keywords":new o({tag:"cp:keywords"}),"cp:category":new o({tag:"cp:category"}),"cp:lastModifiedBy":new o({tag:"cp:lastModifiedBy"}),"cp:lastPrinted":new a({tag:"cp:lastPrinted",format:c.DateFormat}),"cp:revision":new s({tag:"cp:revision"}),"cp:version":new o({tag:"cp:version"}),"cp:contentStatus":new o({tag:"cp:contentStatus"}),"cp:contentType":new o({tag:"cp:contentType"}),"dcterms:created":new a({tag:"dcterms:created",attrs:c.DateAttrs,format:c.DateFormat}),"dcterms:modified":new a({tag:"dcterms:modified",attrs:c.DateAttrs,format:c.DateFormat})}}render(e,t){e.openXml(n.StdDocAttributes),e.openNode("cp:coreProperties",c.CORE_PROPERTY_ATTRIBUTES),this.map["dc:creator"].render(e,t.creator),this.map["dc:title"].render(e,t.title),this.map["dc:subject"].render(e,t.subject),this.map["dc:description"].render(e,t.description),this.map["dc:identifier"].render(e,t.identifier),this.map["dc:language"].render(e,t.language),this.map["cp:keywords"].render(e,t.keywords),this.map["cp:category"].render(e,t.category),this.map["cp:lastModifiedBy"].render(e,t.lastModifiedBy),this.map["cp:lastPrinted"].render(e,t.lastPrinted),this.map["cp:revision"].render(e,t.revision),this.map["cp:version"].render(e,t.version),this.map["cp:contentStatus"].render(e,t.contentStatus),this.map["cp:contentType"].render(e,t.contentType),this.map["dcterms:created"].render(e,t.created),this.map["dcterms:modified"].render(e,t.modified),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"cp:coreProperties":case"coreProperties":return!0;default:if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case"cp:coreProperties":case"coreProperties":return this.model={creator:this.map["dc:creator"].model,title:this.map["dc:title"].model,subject:this.map["dc:subject"].model,description:this.map["dc:description"].model,identifier:this.map["dc:identifier"].model,language:this.map["dc:language"].model,keywords:this.map["cp:keywords"].model,category:this.map["cp:category"].model,lastModifiedBy:this.map["cp:lastModifiedBy"].model,lastPrinted:this.map["cp:lastPrinted"].model,revision:this.map["cp:revision"].model,contentStatus:this.map["cp:contentStatus"].model,contentType:this.map["cp:contentType"].model,created:this.map["dcterms:created"].model,modified:this.map["dcterms:modified"].model},!1;default:throw new Error(`Unexpected xml node in parseClose: ${e}`)}}}c.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3}/,"")},c.DateAttrs={"xsi:type":"dcterms:W3CDTF"},c.CORE_PROPERTY_ATTRIBUTES={"xmlns:cp":"http://schemas.openxmlformats.org/package/2006/metadata/core-properties","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:dcterms":"http://purl.org/dc/terms/","xmlns:dcmitype":"http://purl.org/dc/dcmitype/","xmlns:xsi":"http://www.w3.org/2001/XMLSchema-instance"},e.exports=c},7431:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){e.leafNode("Relationship",t)}parseOpen(e){return"Relationship"===e.name&&(this.model=e.attributes,!0)}parseText(){}parseClose(){return!1}}},61724:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(7431);class o extends i{constructor(){super(),this.map={Relationship:new a}}render(e,t){t=t||this._values,e.openXml(n.StdDocAttributes),e.openNode("Relationships",o.RELATIONSHIPS_ATTRIBUTES),t.forEach((t=>{this.map.Relationship.render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if("Relationships"===e.name)return this.model=[],!0;if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.push(this.parser.model),this.parser=void 0),!0;if("Relationships"===e)return!1;throw new Error(`Unexpected xml node in parseClose: ${e}`)}}o.RELATIONSHIPS_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},e.exports=o},36662:(e,t,r)=>{const n=r(87242);e.exports=class extends n{parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={range:{editAs:e.attributes.editAs||"oneCell"}};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}reconcilePicture(e,t){if(e&&e.rId){const r=t.rels[e.rId].Target.match(/.*\/media\/(.+[.][a-zA-Z]{3,4})/);if(r){const e=r[1],n=t.mediaIndex[e];return t.media[n]}}}}},78631:(e,t,r)=>{const n=r(87242),i=r(92539);e.exports=class extends n{constructor(){super(),this.map={"a:blip":new i}}get tag(){return"xdr:blipFill"}render(e,t){e.openNode(this.tag),this.map["a:blip"].render(e,t),e.openNode("a:stretch"),e.leafNode("a:fillRect"),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model=this.map["a:blip"].model,!1)}}},92539:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"a:blip"}render(e,t){e.leafNode(this.tag,{"xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","r:embed":t.rId,cstate:"print"})}parseOpen(e){return e.name!==this.tag||(this.model={rId:e.attributes["r:embed"]},!0)}parseText(){}parseClose(e){return e!==this.tag}}},250:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"xdr:cNvPicPr"}render(e){e.openNode(this.tag),e.leafNode("a:picLocks",{noChangeAspect:"1"}),e.closeNode()}parseOpen(e){return e.name,this.tag,!0}parseText(){}parseClose(e){return e!==this.tag}}},57289:(e,t,r)=>{const n=r(87242),i=r(68749),a=r(84625);e.exports=class extends n{constructor(){super(),this.map={"a:hlinkClick":new i,"a:extLst":new a}}get tag(){return"xdr:cNvPr"}render(e,t){e.openNode(this.tag,{id:t.index,name:`Picture ${t.index}`}),this.map["a:hlinkClick"].render(e,t),this.map["a:extLst"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model=this.map["a:hlinkClick"].model,!1)}}},76244:(e,t,r)=>{const n=r(87242),i=r(65208);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.map={"xdr:col":new i({tag:"xdr:col",zero:!0}),"xdr:colOff":new i({tag:"xdr:colOff",zero:!0}),"xdr:row":new i({tag:"xdr:row",zero:!0}),"xdr:rowOff":new i({tag:"xdr:rowOff",zero:!0})}}render(e,t){e.openNode(this.tag),this.map["xdr:col"].render(e,t.nativeCol),this.map["xdr:colOff"].render(e,t.nativeColOff),this.map["xdr:row"].render(e,t.nativeRow),this.map["xdr:rowOff"].render(e,t.nativeRowOff),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model={nativeCol:this.map["xdr:col"].model,nativeColOff:this.map["xdr:colOff"].model,nativeRow:this.map["xdr:row"].model,nativeRowOff:this.map["xdr:rowOff"].model},!1)}}},66386:(e,t,r)=>{const n=r(29428),i=r(12141),a=r(87242),o=r(43285),s=r(80715);class c extends a{constructor(){super(),this.map={"xdr:twoCellAnchor":new o,"xdr:oneCellAnchor":new s}}prepare(e){e.anchors.forEach(((e,t)=>{e.anchorType=function(e){return("string"==typeof e.range?n.decode(e.range):e.range).br?"xdr:twoCellAnchor":"xdr:oneCellAnchor"}(e);this.map[e.anchorType].prepare(e,{index:t})}))}get tag(){return"xdr:wsDr"}render(e,t){e.openXml(i.StdDocAttributes),e.openNode(this.tag,c.DRAWING_ATTRIBUTES),t.anchors.forEach((t=>{this.map[t.anchorType].render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={anchors:[]};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.anchors.push(this.parser.model),this.parser=void 0),!0):e!==this.tag}reconcile(e,t){e.anchors.forEach((e=>{e.br?this.map["xdr:twoCellAnchor"].reconcile(e,t):this.map["xdr:oneCellAnchor"].reconcile(e,t)}))}}c.DRAWING_ATTRIBUTES={"xmlns:xdr":"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing","xmlns:a":"http://schemas.openxmlformats.org/drawingml/2006/main"},e.exports=c},84625:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"a:extLst"}render(e){e.openNode(this.tag),e.openNode("a:ext",{uri:"{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}"}),e.leafNode("a16:creationId",{"xmlns:a16":"http://schemas.microsoft.com/office/drawing/2014/main",id:"{00000000-0008-0000-0000-000002000000}"}),e.closeNode(),e.closeNode()}parseOpen(e){return e.name,this.tag,!0}parseText(){}parseClose(e){return e!==this.tag}}},44183:(e,t,r)=>{const n=r(87242),i=9525;e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.map={}}render(e,t){e.openNode(this.tag);const r=Math.floor(t.width*i),n=Math.floor(t.height*i);e.addAttribute("cx",r),e.addAttribute("cy",n),e.closeNode()}parseOpen(e){return e.name===this.tag&&(this.model={width:parseInt(e.attributes.cx||"0",10)/i,height:parseInt(e.attributes.cy||"0",10)/i},!0)}parseText(){}parseClose(){return!1}}},68749:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"a:hlinkClick"}render(e,t){t.hyperlinks&&t.hyperlinks.rId&&e.leafNode(this.tag,{"xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","r:id":t.hyperlinks.rId,tooltip:t.hyperlinks.tooltip})}parseOpen(e){return e.name!==this.tag||(this.model={hyperlinks:{rId:e.attributes["r:id"],tooltip:e.attributes.tooltip}},!0)}parseText(){}parseClose(){return!1}}},30246:(e,t,r)=>{const n=r(87242),i=r(57289),a=r(250);e.exports=class extends n{constructor(){super(),this.map={"xdr:cNvPr":new i,"xdr:cNvPicPr":new a}}get tag(){return"xdr:nvPicPr"}render(e,t){e.openNode(this.tag),this.map["xdr:cNvPr"].render(e,t),this.map["xdr:cNvPicPr"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model=this.map["xdr:cNvPr"].model,!1)}}},80715:(e,t,r)=>{const n=r(36662),i=r(52789),a=r(76244),o=r(44183),s=r(11932);e.exports=class extends n{constructor(){super(),this.map={"xdr:from":new a({tag:"xdr:from"}),"xdr:ext":new o({tag:"xdr:ext"}),"xdr:pic":new s,"xdr:clientData":new i({tag:"xdr:clientData"})}}get tag(){return"xdr:oneCellAnchor"}prepare(e,t){this.map["xdr:pic"].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs||"oneCell"}),this.map["xdr:from"].render(e,t.range.tl),this.map["xdr:ext"].render(e,t.range.ext),this.map["xdr:pic"].render(e,t.picture),this.map["xdr:clientData"].render(e,{}),e.closeNode()}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.range.tl=this.map["xdr:from"].model,this.model.range.ext=this.map["xdr:ext"].model,this.model.picture=this.map["xdr:pic"].model,!1)}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}}},11932:(e,t,r)=>{const n=r(87242),i=r(52789),a=r(78631),o=r(30246),s=r(27299);e.exports=class extends n{constructor(){super(),this.map={"xdr:nvPicPr":new o,"xdr:blipFill":new a,"xdr:spPr":new i(s)}}get tag(){return"xdr:pic"}prepare(e,t){e.index=t.index+1}render(e,t){e.openNode(this.tag),this.map["xdr:nvPicPr"].render(e,t),this.map["xdr:blipFill"].render(e,t),this.map["xdr:spPr"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.mergeModel(this.parser.model),this.parser=void 0),!0):e!==this.tag}}},27299:e=>{e.exports={tag:"xdr:spPr",c:[{tag:"a:xfrm",c:[{tag:"a:off",$:{x:"0",y:"0"}},{tag:"a:ext",$:{cx:"0",cy:"0"}}]},{tag:"a:prstGeom",$:{prst:"rect"},c:[{tag:"a:avLst"}]}]}},43285:(e,t,r)=>{const n=r(36662),i=r(52789),a=r(76244),o=r(11932);e.exports=class extends n{constructor(){super(),this.map={"xdr:from":new a({tag:"xdr:from"}),"xdr:to":new a({tag:"xdr:to"}),"xdr:pic":new o,"xdr:clientData":new i({tag:"xdr:clientData"})}}get tag(){return"xdr:twoCellAnchor"}prepare(e,t){this.map["xdr:pic"].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs||"oneCell"}),this.map["xdr:from"].render(e,t.range.tl),this.map["xdr:to"].render(e,t.range.br),this.map["xdr:pic"].render(e,t.picture),this.map["xdr:clientData"].render(e,{}),e.closeNode()}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.range.tl=this.map["xdr:from"].model,this.model.range.br=this.map["xdr:to"].model,this.model.picture=this.map["xdr:pic"].model,!1)}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}}},62447:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.always=!!e.always,this.count=e.count,this.empty=e.empty,this.$count=e.$count||"count",this.$=e.$,this.childXform=e.childXform,this.maxItems=e.maxItems}prepare(e,t){const{childXform:r}=this;e&&e.forEach(((e,n)=>{t.index=n,r.prepare(e,t)}))}render(e,t){if(this.always||t&&t.length){e.openNode(this.tag,this.$),this.count&&e.addAttribute(this.$count,t&&t.length||0);const{childXform:r}=this;(t||[]).forEach(((t,n)=>{r.render(e,t,n)})),e.closeNode()}else this.empty&&e.leafNode(this.tag)}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model=[],!0):!!this.childXform.parseOpen(e)&&(this.parser=this.childXform,!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)&&(this.model.push(this.parser.model),this.parser=void 0,this.maxItems&&this.model.length>this.maxItems))throw new Error(`Max ${this.childXform.tag} count (${this.maxItems}) exceeded`);return!0}return!1}reconcile(e,t){if(e){const{childXform:r}=this;e.forEach((e=>{r.reconcile(e,t)}))}}}},47749:(e,t,r)=>{const n=r(29428),i=r(87242);e.exports=class extends i{get tag(){return"autoFilter"}render(e,t){if(t)if("string"==typeof t)e.leafNode("autoFilter",{ref:t});else{const r=function(e){return"string"==typeof e?e:n.getAddress(e.row,e.column).address},i=r(t.from),a=r(t.to);i&&a&&e.leafNode("autoFilter",{ref:`${i}:${a}`})}}parseOpen(e){"autoFilter"===e.name&&(this.model=e.attributes.ref)}}},57963:(e,t,r)=>{const n=r(67032),i=r(87242),a=r(69311),o=r(70880),s=r(95814);function c(e){if(null==e)return o.ValueType.Null;if(e instanceof String||"string"==typeof e)return o.ValueType.String;if("number"==typeof e)return o.ValueType.Number;if("boolean"==typeof e)return o.ValueType.Boolean;if(e instanceof Date)return o.ValueType.Date;if(e.text&&e.hyperlink)return o.ValueType.Hyperlink;if(e.formula)return o.ValueType.Formula;if(e.error)return o.ValueType.Error;throw new Error("I could not understand type of value")}e.exports=class extends i{constructor(){super(),this.richTextXForm=new s}get tag(){return"c"}prepare(e,t){const r=t.styles.addStyleModel(e.style||{},(n=e).type===o.ValueType.Formula?c(n.result):n.type);var n;switch(r&&(e.styleId=r),e.comment&&t.comments.push({...e.comment,ref:e.address}),e.type){case o.ValueType.String:case o.ValueType.RichText:t.sharedStrings&&(e.ssId=t.sharedStrings.add(e.value));break;case o.ValueType.Date:t.date1904&&(e.date1904=!0);break;case o.ValueType.Hyperlink:t.sharedStrings&&void 0!==e.text&&null!==e.text&&(e.ssId=t.sharedStrings.add(e.text)),t.hyperlinks.push({address:e.address,target:e.hyperlink,tooltip:e.tooltip});break;case o.ValueType.Merge:t.merges.add(e);break;case o.ValueType.Formula:if(t.date1904&&(e.date1904=!0),"shared"===e.shareType&&(e.si=t.siFormulae++),e.formula)t.formulae[e.address]=e;else if(e.sharedFormula){const r=t.formulae[e.sharedFormula];if(!r)throw new Error(`Shared Formula master must exist above and or left of clone for cell ${e.address}`);void 0===r.si?(r.shareType="shared",r.si=t.siFormulae++,r.range=new a(r.address,e.address)):r.range&&r.range.expandToAddress(e.address),e.si=r.si}}}renderFormula(e,t){let r=null;switch(t.shareType){case"shared":r={t:"shared",ref:t.ref||t.range.range,si:t.si};break;case"array":r={t:"array",ref:t.ref};break;default:void 0!==t.si&&(r={t:"shared",si:t.si})}switch(c(t.result)){case o.ValueType.Null:e.leafNode("f",r,t.formula);break;case o.ValueType.String:e.addAttribute("t","str"),e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result);break;case o.ValueType.Number:e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result);break;case o.ValueType.Boolean:e.addAttribute("t","b"),e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result?1:0);break;case o.ValueType.Error:e.addAttribute("t","e"),e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result.error);break;case o.ValueType.Date:e.leafNode("f",r,t.formula),e.leafNode("v",null,n.dateToExcel(t.result,t.date1904));break;default:throw new Error("I could not understand type of value")}}render(e,t){if(t.type!==o.ValueType.Null||t.styleId){switch(e.openNode("c"),e.addAttribute("r",t.address),t.styleId&&e.addAttribute("s",t.styleId),t.type){case o.ValueType.Null:break;case o.ValueType.Number:e.leafNode("v",null,t.value);break;case o.ValueType.Boolean:e.addAttribute("t","b"),e.leafNode("v",null,t.value?"1":"0");break;case o.ValueType.Error:e.addAttribute("t","e"),e.leafNode("v",null,t.value.error);break;case o.ValueType.String:case o.ValueType.RichText:void 0!==t.ssId?(e.addAttribute("t","s"),e.leafNode("v",null,t.ssId)):t.value&&t.value.richText?(e.addAttribute("t","inlineStr"),e.openNode("is"),t.value.richText.forEach((t=>{this.richTextXForm.render(e,t)})),e.closeNode("is")):(e.addAttribute("t","str"),e.leafNode("v",null,t.value));break;case o.ValueType.Date:e.leafNode("v",null,n.dateToExcel(t.value,t.date1904));break;case o.ValueType.Hyperlink:void 0!==t.ssId?(e.addAttribute("t","s"),e.leafNode("v",null,t.ssId)):(e.addAttribute("t","str"),e.leafNode("v",null,t.text));break;case o.ValueType.Formula:this.renderFormula(e,t);case o.ValueType.Merge:}e.closeNode()}}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"c":return this.model={address:e.attributes.r},this.t=e.attributes.t,e.attributes.s&&(this.model.styleId=parseInt(e.attributes.s,10)),!0;case"f":return this.currentNode="f",this.model.si=e.attributes.si,this.model.shareType=e.attributes.t,this.model.ref=e.attributes.ref,!0;case"v":return this.currentNode="v",!0;case"t":return this.currentNode="t",!0;case"r":return this.parser=this.richTextXForm,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){if(this.parser)this.parser.parseText(e);else switch(this.currentNode){case"f":this.model.formula=this.model.formula?this.model.formula+e:e;break;case"v":case"t":this.model.value&&this.model.value.richText?this.model.value.richText.text=this.model.value.richText.text?this.model.value.richText.text+e:e:this.model.value=this.model.value?this.model.value+e:e}}parseClose(e){switch(e){case"c":{const{model:e}=this;if(e.formula||e.shareType)e.type=o.ValueType.Formula,e.value&&("str"===this.t?e.result=n.xmlDecode(e.value):"b"===this.t?e.result=0!==parseInt(e.value,10):"e"===this.t?e.result={error:e.value}:e.result=parseFloat(e.value),e.value=void 0);else if(void 0!==e.value)switch(this.t){case"s":e.type=o.ValueType.String,e.value=parseInt(e.value,10);break;case"str":e.type=o.ValueType.String,e.value=n.xmlDecode(e.value);break;case"inlineStr":e.type=o.ValueType.String;break;case"b":e.type=o.ValueType.Boolean,e.value=0!==parseInt(e.value,10);break;case"e":e.type=o.ValueType.Error,e.value={error:e.value};break;default:e.type=o.ValueType.Number,e.value=parseFloat(e.value)}else e.styleId?e.type=o.ValueType.Null:e.type=o.ValueType.Merge;return!1}case"f":case"v":case"is":return this.currentNode=void 0,!0;case"t":return this.parser?(this.parser.parseClose(e),!0):(this.currentNode=void 0,!0);case"r":return this.model.value=this.model.value||{},this.model.value.richText=this.model.value.richText||[],this.model.value.richText.push(this.parser.model),this.parser=void 0,this.currentNode=void 0,!0;default:return!!this.parser&&(this.parser.parseClose(e),!0)}}reconcile(e,t){const r=e.styleId&&t.styles&&t.styles.getStyleModel(e.styleId);switch(r&&(e.style=r),void 0!==e.styleId&&(e.styleId=void 0),e.type){case o.ValueType.String:"number"==typeof e.value&&t.sharedStrings&&(e.value=t.sharedStrings.getString(e.value)),e.value.richText&&(e.type=o.ValueType.RichText);break;case o.ValueType.Number:r&&n.isDateFmt(r.numFmt)&&(e.type=o.ValueType.Date,e.value=n.excelToDate(e.value,t.date1904));break;case o.ValueType.Formula:void 0!==e.result&&r&&n.isDateFmt(r.numFmt)&&(e.result=n.excelToDate(e.result,t.date1904)),"shared"===e.shareType&&(e.ref?t.formulae[e.si]=e.address:(e.sharedFormula=t.formulae[e.si],delete e.shareType),delete e.si)}const i=t.hyperlinkMap[e.address];i&&(e.type===o.ValueType.Formula?(e.text=e.result,e.result=void 0):(e.text=e.value,e.value=void 0),e.type=o.ValueType.Hyperlink,e.hyperlink=i);const a=t.commentsMap&&t.commentsMap[e.address];a&&(e.comment=a)}}},95996:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"x14:cfIcon"}render(e,t){e.leafNode(this.tag,{iconSet:t.iconSet,iconId:t.iconId})}parseOpen({attributes:e}){this.model={iconSet:e.iconSet,iconId:n.toIntValue(e.iconId)}}parseClose(e){return e!==this.tag}}},86827:(e,t,r)=>{const{v4:n}=r(22587),i=r(87242),a=r(60554),o=r(55092),s=r(82507),c={"3Triangles":!0,"3Stars":!0,"5Boxes":!0};class l extends a{constructor(){super(),this.map={"x14:dataBar":this.databarXform=new o,"x14:iconSet":this.iconSetXform=new s}}get tag(){return"x14:cfRule"}static isExt(e){return"dataBar"===e.type?o.isExt(e):!("iconSet"!==e.type||!e.custom&&!c[e.iconSet])}prepare(e){l.isExt(e)&&(e.x14Id=`{${n()}}`.toUpperCase())}render(e,t){if(l.isExt(t))switch(t.type){case"dataBar":this.renderDataBar(e,t);break;case"iconSet":this.renderIconSet(e,t)}}renderDataBar(e,t){e.openNode(this.tag,{type:"dataBar",id:t.x14Id}),this.databarXform.render(e,t),e.closeNode()}renderIconSet(e,t){e.openNode(this.tag,{type:"iconSet",priority:t.priority,id:t.x14Id||`{${n()}}`}),this.iconSetXform.render(e,t),e.closeNode()}createNewModel({attributes:e}){return{type:e.type,x14Id:e.id,priority:i.toIntValue(e.priority)}}onParserClose(e,t){Object.assign(this.model,t.model)}}e.exports=l},76721:(e,t,r)=>{const n=r(60554),i=r(60999);e.exports=class extends n{constructor(){super(),this.map={"xm:f":this.fExtXform=new i}}get tag(){return"x14:cfvo"}render(e,t){e.openNode(this.tag,{type:t.type}),void 0!==t.value&&this.fExtXform.render(e,t.value),e.closeNode()}createNewModel(e){return{type:e.attributes.type}}onParserClose(e,t){if("xm:f"===e)this.model.value=t.model?parseFloat(t.model):0}}},99215:(e,t,r)=>{const n=r(60554),i=r(91848),a=r(86827);e.exports=class extends n{constructor(){super(),this.map={"xm:sqref":this.sqRef=new i,"x14:cfRule":this.cfRule=new a}}get tag(){return"x14:conditionalFormatting"}prepare(e,t){e.rules.forEach((e=>{this.cfRule.prepare(e,t)}))}render(e,t){t.rules.some(a.isExt)&&(e.openNode(this.tag,{"xmlns:xm":"http://schemas.microsoft.com/office/excel/2006/main"}),t.rules.filter(a.isExt).forEach((t=>this.cfRule.render(e,t))),this.sqRef.render(e,t.ref),e.closeNode())}createNewModel(){return{rules:[]}}onParserClose(e,t){switch(e){case"xm:sqref":this.model.ref=t.model;break;case"x14:cfRule":this.model.rules.push(t.model)}}}},76672:(e,t,r)=>{const n=r(60554),i=r(86827),a=r(99215);e.exports=class extends n{constructor(){super(),this.map={"x14:conditionalFormatting":this.cfXform=new a}}get tag(){return"x14:conditionalFormattings"}hasContent(e){return void 0===e.hasExtContent&&(e.hasExtContent=e.some((e=>e.rules.some(i.isExt)))),e.hasExtContent}prepare(e,t){e.forEach((e=>{this.cfXform.prepare(e,t)}))}render(e,t){this.hasContent(t)&&(e.openNode(this.tag),t.forEach((t=>this.cfXform.render(e,t))),e.closeNode())}createNewModel(){return[]}onParserClose(e,t){this.model.push(t.model)}}},55092:(e,t,r)=>{const n=r(87242),i=r(60554),a=r(42720),o=r(76721);e.exports=class extends i{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new o,"x14:borderColor":this.borderColorXform=new a("x14:borderColor"),"x14:negativeBorderColor":this.negativeBorderColorXform=new a("x14:negativeBorderColor"),"x14:negativeFillColor":this.negativeFillColorXform=new a("x14:negativeFillColor"),"x14:axisColor":this.axisColorXform=new a("x14:axisColor")}}static isExt(e){return!e.gradient}get tag(){return"x14:dataBar"}render(e,t){e.openNode(this.tag,{minLength:n.toIntAttribute(t.minLength,0,!0),maxLength:n.toIntAttribute(t.maxLength,100,!0),border:n.toBoolAttribute(t.border,!1),gradient:n.toBoolAttribute(t.gradient,!0),negativeBarColorSameAsPositive:n.toBoolAttribute(t.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:n.toBoolAttribute(t.negativeBarBorderColorSameAsPositive,!0),axisPosition:n.toAttribute(t.axisPosition,"auto"),direction:n.toAttribute(t.direction,"leftToRight")}),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),this.borderColorXform.render(e,t.borderColor),this.negativeBorderColorXform.render(e,t.negativeBorderColor),this.negativeFillColorXform.render(e,t.negativeFillColor),this.axisColorXform.render(e,t.axisColor),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],minLength:n.toIntValue(e.minLength,0),maxLength:n.toIntValue(e.maxLength,100),border:n.toBoolValue(e.border,!1),gradient:n.toBoolValue(e.gradient,!0),negativeBarColorSameAsPositive:n.toBoolValue(e.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:n.toBoolValue(e.negativeBarBorderColorSameAsPositive,!0),axisPosition:n.toStringValue(e.axisPosition,"auto"),direction:n.toStringValue(e.direction,"leftToRight")}}onParserClose(e,t){const[,r]=e.split(":");if("cfvo"===r)this.model.cfvo.push(t.model);else this.model[r]=t.model}}},60999:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"xm:f"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}},82507:(e,t,r)=>{const n=r(87242),i=r(60554),a=r(76721),o=r(95996);e.exports=class extends i{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new a,"x14:cfIcon":this.cfIconXform=new o}}get tag(){return"x14:iconSet"}render(e,t){e.openNode(this.tag,{iconSet:n.toStringAttribute(t.iconSet),reverse:n.toBoolAttribute(t.reverse,!1),showValue:n.toBoolAttribute(t.showValue,!0),custom:n.toBoolAttribute(t.icons,!1)}),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),t.icons&&t.icons.forEach(((t,r)=>{t.iconId=r,this.cfIconXform.render(e,t)})),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],iconSet:n.toStringValue(e.iconSet,"3TrafficLights"),reverse:n.toBoolValue(e.reverse,!1),showValue:n.toBoolValue(e.showValue,!0)}}onParserClose(e,t){const[,r]=e.split(":");switch(r){case"cfvo":this.model.cfvo.push(t.model);break;case"cfIcon":this.model.icons||(this.model.icons=[]),this.model.icons.push(t.model);break;default:this.model[r]=t.model}}}},91848:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"xm:sqref"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}},49115:(e,t,r)=>{const n=r(87242),i=r(60554),a=r(69311),o=r(89676),s=r(44200),c=r(93459),l=r(93937),u=r(65515),d={"3Triangles":!0,"3Stars":!0,"5Boxes":!0},p=e=>{const{type:t,operator:r}=e;switch(t){case"containsText":case"containsBlanks":case"notContainsBlanks":case"containsErrors":case"notContainsErrors":return{type:"containsText",operator:t};default:return{type:t,operator:r}}};class f extends i{constructor(){super(),this.map={dataBar:this.databarXform=new o,extLst:this.extLstRefXform=new s,formula:this.formulaXform=new c,colorScale:this.colorScaleXform=new l,iconSet:this.iconSetXform=new u}}get tag(){return"cfRule"}static isPrimitive(e){return"iconSet"!==e.type||!e.custom&&!d[e.iconSet]}render(e,t){switch(t.type){case"expression":this.renderExpression(e,t);break;case"cellIs":this.renderCellIs(e,t);break;case"top10":this.renderTop10(e,t);break;case"aboveAverage":this.renderAboveAverage(e,t);break;case"dataBar":this.renderDataBar(e,t);break;case"colorScale":this.renderColorScale(e,t);break;case"iconSet":this.renderIconSet(e,t);break;case"containsText":this.renderText(e,t);break;case"timePeriod":this.renderTimePeriod(e,t)}}renderExpression(e,t){e.openNode(this.tag,{type:"expression",dxfId:t.dxfId,priority:t.priority}),this.formulaXform.render(e,t.formulae[0]),e.closeNode()}renderCellIs(e,t){e.openNode(this.tag,{type:"cellIs",dxfId:t.dxfId,priority:t.priority,operator:t.operator}),t.formulae.forEach((t=>{this.formulaXform.render(e,t)})),e.closeNode()}renderTop10(e,t){e.leafNode(this.tag,{type:"top10",dxfId:t.dxfId,priority:t.priority,percent:n.toBoolAttribute(t.percent,!1),bottom:n.toBoolAttribute(t.bottom,!1),rank:n.toIntValue(t.rank,10,!0)})}renderAboveAverage(e,t){e.leafNode(this.tag,{type:"aboveAverage",dxfId:t.dxfId,priority:t.priority,aboveAverage:n.toBoolAttribute(t.aboveAverage,!0)})}renderDataBar(e,t){e.openNode(this.tag,{type:"dataBar",priority:t.priority}),this.databarXform.render(e,t),this.extLstRefXform.render(e,t),e.closeNode()}renderColorScale(e,t){e.openNode(this.tag,{type:"colorScale",priority:t.priority}),this.colorScaleXform.render(e,t),e.closeNode()}renderIconSet(e,t){f.isPrimitive(t)&&(e.openNode(this.tag,{type:"iconSet",priority:t.priority}),this.iconSetXform.render(e,t),e.closeNode())}renderText(e,t){e.openNode(this.tag,{type:t.operator,dxfId:t.dxfId,priority:t.priority,operator:n.toStringAttribute(t.operator,"containsText")});const r=(e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];const t=new a(e.ref),{tl:r}=t;switch(e.operator){case"containsText":return`NOT(ISERROR(SEARCH("${e.text}",${r})))`;case"containsBlanks":return`LEN(TRIM(${r}))=0`;case"notContainsBlanks":return`LEN(TRIM(${r}))>0`;case"containsErrors":return`ISERROR(${r})`;case"notContainsErrors":return`NOT(ISERROR(${r}))`;default:return}})(t);r&&this.formulaXform.render(e,r),e.closeNode()}renderTimePeriod(e,t){e.openNode(this.tag,{type:"timePeriod",dxfId:t.dxfId,priority:t.priority,timePeriod:t.timePeriod});const r=(e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];const t=new a(e.ref),{tl:r}=t;switch(e.timePeriod){case"thisWeek":return`AND(TODAY()-ROUNDDOWN(${r},0)<=WEEKDAY(TODAY())-1,ROUNDDOWN(${r},0)-TODAY()<=7-WEEKDAY(TODAY()))`;case"lastWeek":return`AND(TODAY()-ROUNDDOWN(${r},0)>=(WEEKDAY(TODAY())),TODAY()-ROUNDDOWN(${r},0)<(WEEKDAY(TODAY())+7))`;case"nextWeek":return`AND(ROUNDDOWN(${r},0)-TODAY()>(7-WEEKDAY(TODAY())),ROUNDDOWN(${r},0)-TODAY()<(15-WEEKDAY(TODAY())))`;case"yesterday":return`FLOOR(${r},1)=TODAY()-1`;case"today":return`FLOOR(${r},1)=TODAY()`;case"tomorrow":return`FLOOR(${r},1)=TODAY()+1`;case"last7Days":return`AND(TODAY()-FLOOR(${r},1)<=6,FLOOR(${r},1)<=TODAY())`;case"lastMonth":return`AND(MONTH(${r})=MONTH(EDATE(TODAY(),0-1)),YEAR(${r})=YEAR(EDATE(TODAY(),0-1)))`;case"thisMonth":return`AND(MONTH(${r})=MONTH(TODAY()),YEAR(${r})=YEAR(TODAY()))`;case"nextMonth":return`AND(MONTH(${r})=MONTH(EDATE(TODAY(),0+1)),YEAR(${r})=YEAR(EDATE(TODAY(),0+1)))`;default:return}})(t);r&&this.formulaXform.render(e,r),e.closeNode()}createNewModel({attributes:e}){return{...p(e),dxfId:n.toIntValue(e.dxfId),priority:n.toIntValue(e.priority),timePeriod:e.timePeriod,percent:n.toBoolValue(e.percent),bottom:n.toBoolValue(e.bottom),rank:n.toIntValue(e.rank),aboveAverage:n.toBoolValue(e.aboveAverage)}}onParserClose(e,t){switch(e){case"dataBar":case"extLst":case"colorScale":case"iconSet":Object.assign(this.model,t.model);break;case"formula":this.model.formulae=this.model.formulae||[],this.model.formulae.push(t.model)}}}e.exports=f},78929:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"cfvo"}render(e,t){e.leafNode(this.tag,{type:t.type,val:t.value})}parseOpen(e){this.model={type:e.attributes.type,value:n.toFloatValue(e.attributes.val)}}parseClose(e){return e!==this.tag}}},93937:(e,t,r)=>{const n=r(60554),i=r(42720),a=r(78929);e.exports=class extends n{constructor(){super(),this.map={cfvo:this.cfvoXform=new a,color:this.colorXform=new i}}get tag(){return"colorScale"}render(e,t){e.openNode(this.tag),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),t.color.forEach((t=>{this.colorXform.render(e,t)})),e.closeNode()}createNewModel(e){return{cfvo:[],color:[]}}onParserClose(e,t){this.model[e].push(t.model)}}},59975:(e,t,r)=>{const n=r(60554),i=r(49115);e.exports=class extends n{constructor(){super(),this.map={cfRule:new i}}get tag(){return"conditionalFormatting"}render(e,t){t.rules.some(i.isPrimitive)&&(e.openNode(this.tag,{sqref:t.ref}),t.rules.forEach((r=>{i.isPrimitive(r)&&(r.ref=t.ref,this.map.cfRule.render(e,r))})),e.closeNode())}createNewModel({attributes:e}){return{ref:e.sqref,rules:[]}}onParserClose(e,t){this.model.rules.push(t.model)}}},12700:(e,t,r)=>{const n=r(87242),i=r(59975);e.exports=class extends n{constructor(){super(),this.cfXform=new i}get tag(){return"conditionalFormatting"}reset(){this.model=[]}prepare(e,t){let r=e.reduce(((e,t)=>Math.max(e,...t.rules.map((e=>e.priority||0)))),1);e.forEach((e=>{e.rules.forEach((e=>{e.priority||(e.priority=r++),e.style&&(e.dxfId=t.styles.addDxfStyle(e.style))}))}))}render(e,t){t.forEach((t=>{this.cfXform.render(e,t)}))}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"conditionalFormatting"===e.name&&(this.parser=this.cfXform,this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(!!this.parser.parseClose(e)||(this.model.push(this.parser.model),this.parser=void 0,!1))}reconcile(e,t){e.forEach((e=>{e.rules.forEach((e=>{void 0!==e.dxfId&&(e.style=t.styles.getDxfStyle(e.dxfId),delete e.dxfId)}))}))}}},89676:(e,t,r)=>{const n=r(60554),i=r(42720),a=r(78929);e.exports=class extends n{constructor(){super(),this.map={cfvo:this.cfvoXform=new a,color:this.colorXform=new i}}get tag(){return"dataBar"}render(e,t){e.openNode(this.tag),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),this.colorXform.render(e,t.color),e.closeNode()}createNewModel(){return{cfvo:[]}}onParserClose(e,t){switch(e){case"cfvo":this.model.cfvo.push(t.model);break;case"color":this.model.color=t.model}}}},44200:(e,t,r)=>{const n=r(87242),i=r(60554);class a extends n{get tag(){return"x14:id"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}class o extends i{constructor(){super(),this.map={"x14:id":this.idXform=new a}}get tag(){return"ext"}render(e,t){e.openNode(this.tag,{uri:"{B025F937-C7B1-47D3-B67F-A62EFF666E3E}","xmlns:x14":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"}),this.idXform.render(e,t.x14Id),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model.x14Id=t.model}}e.exports=class extends i{constructor(){super(),this.map={ext:new o}}get tag(){return"extLst"}render(e,t){e.openNode(this.tag),this.map.ext.render(e,t),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){Object.assign(this.model,t.model)}}},93459:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"formula"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}},65515:(e,t,r)=>{const n=r(87242),i=r(60554),a=r(78929);e.exports=class extends i{constructor(){super(),this.map={cfvo:this.cfvoXform=new a}}get tag(){return"iconSet"}render(e,t){e.openNode(this.tag,{iconSet:n.toStringAttribute(t.iconSet,"3TrafficLights"),reverse:n.toBoolAttribute(t.reverse,!1),showValue:n.toBoolAttribute(t.showValue,!0)}),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),e.closeNode()}createNewModel({attributes:e}){return{iconSet:n.toStringValue(e.iconSet,"3TrafficLights"),reverse:n.toBoolValue(e.reverse),showValue:n.toBoolValue(e.showValue),cfvo:[]}}onParserClose(e,t){this.model[e].push(t.model)}}},8599:(e,t,r)=>{const n=r(67032),i=r(87242);e.exports=class extends i{get tag(){return"col"}prepare(e,t){const r=t.styles.addStyleModel(e.style||{});r&&(e.styleId=r)}render(e,t){e.openNode("col"),e.addAttribute("min",t.min),e.addAttribute("max",t.max),t.width&&e.addAttribute("width",t.width),t.styleId&&e.addAttribute("style",t.styleId),t.hidden&&e.addAttribute("hidden","1"),t.bestFit&&e.addAttribute("bestFit","1"),t.outlineLevel&&e.addAttribute("outlineLevel",t.outlineLevel),t.collapsed&&e.addAttribute("collapsed","1"),e.addAttribute("customWidth","1"),e.closeNode()}parseOpen(e){if("col"===e.name){const t=this.model={min:parseInt(e.attributes.min||"0",10),max:parseInt(e.attributes.max||"0",10),width:void 0===e.attributes.width?void 0:parseFloat(e.attributes.width||"0")};return e.attributes.style&&(t.styleId=parseInt(e.attributes.style,10)),n.parseBoolean(e.attributes.hidden)&&(t.hidden=!0),n.parseBoolean(e.attributes.bestFit)&&(t.bestFit=!0),e.attributes.outlineLevel&&(t.outlineLevel=parseInt(e.attributes.outlineLevel,10)),n.parseBoolean(e.attributes.collapsed)&&(t.collapsed=!0),!0}return!1}parseText(){}parseClose(){return!1}reconcile(e,t){e.styleId&&(e.style=t.styles.getStyleModel(e.styleId))}}},27210:(e,t,r)=>{const n=r(67984),i=r(67032),a=r(29428),o=r(87242),s=r(69311);function c(e,t,r,n){const i=t[r];void 0!==i?e[r]=i:void 0!==n&&(e[r]=n)}function l(e,t,r,n){const a=t[r];void 0!==a?e[r]=i.parseBoolean(a):void 0!==n&&(e[r]=n)}e.exports=class extends o{get tag(){return"dataValidations"}render(e,t){const r=function(e){const t=n.map(e,((e,t)=>({address:t,dataValidation:e,marked:!1}))).sort(((e,t)=>n.strcmp(e.address,t.address))),r=n.keyBy(t,"address"),i=(t,r,i)=>{for(let o=0;o<r;o++){const r=a.encodeAddress(t.row+o,i);if(!e[r]||!n.isEqual(e[t.address],e[r]))return!1}return!0};return t.map((t=>{if(!t.marked){const o=a.decodeEx(t.address);if(o.dimensions)return r[o.dimensions].marked=!0,{...t.dataValidation,sqref:t.address};let s=1,c=a.encodeAddress(o.row+s,o.col);for(;e[c]&&n.isEqual(t.dataValidation,e[c]);)s++,c=a.encodeAddress(o.row+s,o.col);let l=1;for(;i(o,s,o.col+l);)l++;for(let e=0;e<s;e++)for(let t=0;t<l;t++)c=a.encodeAddress(o.row+e,o.col+t),r[c].marked=!0;if(s>1||l>1){const e=o.row+(s-1),r=o.col+(l-1);return{...t.dataValidation,sqref:`${t.address}:${a.encodeAddress(e,r)}`}}return{...t.dataValidation,sqref:t.address}}return null})).filter(Boolean)}(t);r.length&&(e.openNode("dataValidations",{count:r.length}),r.forEach((t=>{e.openNode("dataValidation"),"any"!==t.type&&(e.addAttribute("type",t.type),t.operator&&"list"!==t.type&&"between"!==t.operator&&e.addAttribute("operator",t.operator),t.allowBlank&&e.addAttribute("allowBlank","1")),t.showInputMessage&&e.addAttribute("showInputMessage","1"),t.promptTitle&&e.addAttribute("promptTitle",t.promptTitle),t.prompt&&e.addAttribute("prompt",t.prompt),t.showErrorMessage&&e.addAttribute("showErrorMessage","1"),t.errorStyle&&e.addAttribute("errorStyle",t.errorStyle),t.errorTitle&&e.addAttribute("errorTitle",t.errorTitle),t.error&&e.addAttribute("error",t.error),e.addAttribute("sqref",t.sqref),(t.formulae||[]).forEach(((r,n)=>{e.openNode(`formula${n+1}`),"date"===t.type?e.writeText(i.dateToExcel(new Date(r))):e.writeText(r),e.closeNode()})),e.closeNode()})),e.closeNode())}parseOpen(e){switch(e.name){case"dataValidations":return this.model={},!0;case"dataValidation":{this._address=e.attributes.sqref;const t={type:e.attributes.type||"any",formulae:[]};switch(e.attributes.type&&l(t,e.attributes,"allowBlank"),l(t,e.attributes,"showInputMessage"),l(t,e.attributes,"showErrorMessage"),t.type){case"any":case"list":case"custom":break;default:c(t,e.attributes,"operator","between")}return c(t,e.attributes,"promptTitle"),c(t,e.attributes,"prompt"),c(t,e.attributes,"errorStyle"),c(t,e.attributes,"errorTitle"),c(t,e.attributes,"error"),this._dataValidation=t,!0}case"formula1":case"formula2":return this._formula=[],!0;default:return!1}}parseText(e){this._formula&&this._formula.push(e)}parseClose(e){switch(e){case"dataValidations":return!1;case"dataValidation":this._dataValidation.formulae&&this._dataValidation.formulae.length||(delete this._dataValidation.formulae,delete this._dataValidation.operator);return(this._address.split(/\s+/g)||[]).forEach((e=>{if(e.includes(":")){new s(e).forEachAddress((e=>{this.model[e]=this._dataValidation}))}else this.model[e]=this._dataValidation})),!0;case"formula1":case"formula2":{let e=this._formula.join("");switch(this._dataValidation.type){case"whole":case"textLength":e=parseInt(e,10);break;case"decimal":e=parseFloat(e);break;case"date":e=i.excelToDate(parseFloat(e))}return this._dataValidation.formulae.push(e),this._formula=void 0,!0}default:return!0}}}},2601:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"dimension"}render(e,t){t&&e.leafNode("dimension",{ref:t})}parseOpen(e){return"dimension"===e.name&&(this.model=e.attributes.ref,!0)}parseText(){}parseClose(){return!1}}},81099:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"drawing"}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){return e.name===this.tag&&(this.model={rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},17100:(e,t,r)=>{const n=r(60554),i=r(76672);class a extends n{constructor(){super(),this.map={"x14:conditionalFormattings":this.conditionalFormattings=new i}}get tag(){return"ext"}hasContent(e){return this.conditionalFormattings.hasContent(e.conditionalFormattings)}prepare(e,t){this.conditionalFormattings.prepare(e.conditionalFormattings,t)}render(e,t){e.openNode("ext",{uri:"{78C0D931-6437-407d-A8EE-F0AAD7539E65}","xmlns:x14":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"}),this.conditionalFormattings.render(e,t.conditionalFormattings),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}}e.exports=class extends n{constructor(){super(),this.map={ext:this.ext=new a}}get tag(){return"extLst"}prepare(e,t){this.ext.prepare(e,t)}hasContent(e){return this.ext.hasContent(e)}render(e,t){this.hasContent(t)&&(e.openNode("extLst"),this.ext.render(e,t),e.closeNode())}createNewModel(){return{}}onParserClose(e,t){Object.assign(this.model,t.model)}}},87182:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"headerFooter"}render(e,t){if(t){e.addRollback();let r=!1;e.openNode("headerFooter"),t.differentFirst&&(e.addAttribute("differentFirst","1"),r=!0),t.differentOddEven&&(e.addAttribute("differentOddEven","1"),r=!0),t.oddHeader&&"string"==typeof t.oddHeader&&(e.leafNode("oddHeader",null,t.oddHeader),r=!0),t.oddFooter&&"string"==typeof t.oddFooter&&(e.leafNode("oddFooter",null,t.oddFooter),r=!0),t.evenHeader&&"string"==typeof t.evenHeader&&(e.leafNode("evenHeader",null,t.evenHeader),r=!0),t.evenFooter&&"string"==typeof t.evenFooter&&(e.leafNode("evenFooter",null,t.evenFooter),r=!0),t.firstHeader&&"string"==typeof t.firstHeader&&(e.leafNode("firstHeader",null,t.firstHeader),r=!0),t.firstFooter&&"string"==typeof t.firstFooter&&(e.leafNode("firstFooter",null,t.firstFooter),r=!0),r?(e.closeNode(),e.commit()):e.rollback()}}parseOpen(e){switch(e.name){case"headerFooter":return this.model={},e.attributes.differentFirst&&(this.model.differentFirst=1===parseInt(e.attributes.differentFirst,0)),e.attributes.differentOddEven&&(this.model.differentOddEven=1===parseInt(e.attributes.differentOddEven,0)),!0;case"oddHeader":return this.currentNode="oddHeader",!0;case"oddFooter":return this.currentNode="oddFooter",!0;case"evenHeader":return this.currentNode="evenHeader",!0;case"evenFooter":return this.currentNode="evenFooter",!0;case"firstHeader":return this.currentNode="firstHeader",!0;case"firstFooter":return this.currentNode="firstFooter",!0;default:return!1}}parseText(e){switch(this.currentNode){case"oddHeader":this.model.oddHeader=e;break;case"oddFooter":this.model.oddFooter=e;break;case"evenHeader":this.model.evenHeader=e;break;case"evenFooter":this.model.evenFooter=e;break;case"firstHeader":this.model.firstHeader=e;break;case"firstFooter":this.model.firstFooter=e}}parseClose(){switch(this.currentNode){case"oddHeader":case"oddFooter":case"evenHeader":case"evenFooter":case"firstHeader":case"firstFooter":return this.currentNode=void 0,!0;default:return!1}}}},76591:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"hyperlink"}render(e,t){this.isInternalLink(t)?e.leafNode("hyperlink",{ref:t.address,"r:id":t.rId,tooltip:t.tooltip,location:t.target}):e.leafNode("hyperlink",{ref:t.address,"r:id":t.rId,tooltip:t.tooltip})}parseOpen(e){return"hyperlink"===e.name&&(this.model={address:e.attributes.ref,rId:e.attributes["r:id"],tooltip:e.attributes.tooltip},e.attributes.location&&(this.model.target=e.attributes.location),!0)}parseText(){}parseClose(){return!1}isInternalLink(e){return e.target&&/^[^!]+![a-zA-Z]+[\d]+$/.test(e.target)}}},49012:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"mergeCell"}render(e,t){e.leafNode("mergeCell",{ref:t})}parseOpen(e){return"mergeCell"===e.name&&(this.model=e.attributes.ref,!0)}parseText(){}parseClose(){return!1}}},96209:(e,t,r)=>{const n=r(67984),i=r(69311),a=r(29428),o=r(70880);e.exports=class{constructor(){this.merges={}}add(e){if(this.merges[e.master])this.merges[e.master].expandToAddress(e.address);else{const t=`${e.master}:${e.address}`;this.merges[e.master]=new i(t)}}get mergeCells(){return n.map(this.merges,(e=>e.range))}reconcile(e,t){n.each(e,(e=>{const r=a.decode(e);for(let e=r.top;e<=r.bottom;e++){const n=t[e-1];for(let t=r.left;t<=r.right;t++){const i=n.cells[t-1];i?i.type===o.ValueType.Merge&&(i.master=r.tl):n.cells[t]={type:o.ValueType.Null,address:a.encodeAddress(e,t)}}}}))}getMasterAddress(e){const t=this.hash[e];return t&&t.tl}}},48223:(e,t,r)=>{const n=r(87242),i=e=>void 0!==e;e.exports=class extends n{get tag(){return"outlinePr"}render(e,t){return!(!t||!i(t.summaryBelow)&&!i(t.summaryRight))&&(e.leafNode(this.tag,{summaryBelow:i(t.summaryBelow)?Number(t.summaryBelow):void 0,summaryRight:i(t.summaryRight)?Number(t.summaryRight):void 0}),!0)}parseOpen(e){return e.name===this.tag&&(this.model={summaryBelow:i(e.attributes.summaryBelow)?Boolean(Number(e.attributes.summaryBelow)):void 0,summaryRight:i(e.attributes.summaryRight)?Boolean(Number(e.attributes.summaryRight)):void 0},!0)}parseText(){}parseClose(){return!1}}},67735:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"brk"}render(e,t){e.leafNode("brk",t)}parseOpen(e){return"brk"===e.name&&(this.model=e.attributes.ref,!0)}parseText(){}parseClose(){return!1}}},97802:(e,t,r)=>{const n=r(67984),i=r(87242);e.exports=class extends i{get tag(){return"pageMargins"}render(e,t){if(t){const r={left:t.left,right:t.right,top:t.top,bottom:t.bottom,header:t.header,footer:t.footer};n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={left:parseFloat(e.attributes.left||.7),right:parseFloat(e.attributes.right||.7),top:parseFloat(e.attributes.top||.75),bottom:parseFloat(e.attributes.bottom||.75),header:parseFloat(e.attributes.header||.3),footer:parseFloat(e.attributes.footer||.3)},!0)}parseText(){}parseClose(){return!1}}},87610:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"pageSetUpPr"}render(e,t){return!(!t||!t.fitToPage)&&(e.leafNode(this.tag,{fitToPage:t.fitToPage?"1":void 0}),!0)}parseOpen(e){return e.name===this.tag&&(this.model={fitToPage:"1"===e.attributes.fitToPage},!0)}parseText(){}parseClose(){return!1}}},64892:(e,t,r)=>{const n=r(67984),i=r(87242);function a(e){return e?"1":void 0}function o(e){if("overThenDown"===e)return e}function s(e){switch(e){case"atEnd":case"asDisplyed":return e;default:return}}function c(e){switch(e){case"dash":case"blank":case"NA":return e;default:return}}e.exports=class extends i{get tag(){return"pageSetup"}render(e,t){if(t){const r={paperSize:t.paperSize,orientation:t.orientation,horizontalDpi:t.horizontalDpi,verticalDpi:t.verticalDpi,pageOrder:o(t.pageOrder),blackAndWhite:a(t.blackAndWhite),draft:a(t.draft),cellComments:s(t.cellComments),errors:c(t.errors),scale:t.scale,fitToWidth:t.fitToWidth,fitToHeight:t.fitToHeight,firstPageNumber:t.firstPageNumber,useFirstPageNumber:a(t.firstPageNumber),usePrinterDefaults:a(t.usePrinterDefaults),copies:t.copies};n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={paperSize:(t=e.attributes.paperSize,void 0!==t?parseInt(t,10):void 0),orientation:e.attributes.orientation||"portrait",horizontalDpi:parseInt(e.attributes.horizontalDpi||"4294967295",10),verticalDpi:parseInt(e.attributes.verticalDpi||"4294967295",10),pageOrder:e.attributes.pageOrder||"downThenOver",blackAndWhite:"1"===e.attributes.blackAndWhite,draft:"1"===e.attributes.draft,cellComments:e.attributes.cellComments||"None",errors:e.attributes.errors||"displayed",scale:parseInt(e.attributes.scale||"100",10),fitToWidth:parseInt(e.attributes.fitToWidth||"1",10),fitToHeight:parseInt(e.attributes.fitToHeight||"1",10),firstPageNumber:parseInt(e.attributes.firstPageNumber||"1",10),useFirstPageNumber:"1"===e.attributes.useFirstPageNumber,usePrinterDefaults:"1"===e.attributes.usePrinterDefaults,copies:parseInt(e.attributes.copies||"1",10)},!0);var t}parseText(){}parseClose(){return!1}}},74711:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"picture"}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){return e.name===this.tag&&(this.model={rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},4505:(e,t,r)=>{const n=r(67984),i=r(87242);function a(e){return e?"1":void 0}e.exports=class extends i{get tag(){return"printOptions"}render(e,t){if(t){const r={headings:a(t.showRowColHeaders),gridLines:a(t.showGridLines),horizontalCentered:a(t.horizontalCentered),verticalCentered:a(t.verticalCentered)};n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={showRowColHeaders:"1"===e.attributes.headings,showGridLines:"1"===e.attributes.gridLines,horizontalCentered:"1"===e.attributes.horizontalCentered,verticalCentered:"1"===e.attributes.verticalCentered},!0)}parseText(){}parseClose(){return!1}}},9668:(e,t,r)=>{"use strict";const n=r(67735),i=r(62447);e.exports=class extends i{constructor(){super({tag:"rowBreaks",count:!0,childXform:new n})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),this.count&&(e.addAttribute(this.$count,t.length),e.addAttribute("manualBreakCount",t.length));const{childXform:r}=this;t.forEach((t=>{r.render(e,t)})),e.closeNode()}else this.empty&&e.leafNode(this.tag)}}},80981:(e,t,r)=>{const n=r(87242),i=r(67032),a=r(57963);e.exports=class extends n{constructor(e){super(),this.maxItems=e&&e.maxItems,this.map={c:new a}}get tag(){return"row"}prepare(e,t){const r=t.styles.addStyleModel(e.style);r&&(e.styleId=r);const n=this.map.c;e.cells.forEach((e=>{n.prepare(e,t)}))}render(e,t,r){e.openNode("row"),e.addAttribute("r",t.number),t.height&&(e.addAttribute("ht",t.height),e.addAttribute("customHeight","1")),t.hidden&&e.addAttribute("hidden","1"),t.min>0&&t.max>0&&t.min<=t.max&&e.addAttribute("spans",`${t.min}:${t.max}`),t.styleId&&(e.addAttribute("s",t.styleId),e.addAttribute("customFormat","1")),e.addAttribute("x14ac:dyDescent","0.25"),t.outlineLevel&&e.addAttribute("outlineLevel",t.outlineLevel),t.collapsed&&e.addAttribute("collapsed","1");const n=this.map.c;t.cells.forEach((t=>{n.render(e,t,r)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if("row"===e.name){this.numRowsSeen+=1;const t=e.attributes.spans?e.attributes.spans.split(":").map((e=>parseInt(e,10))):[void 0,void 0],r=this.model={number:parseInt(e.attributes.r,10),min:t[0],max:t[1],cells:[]};return e.attributes.s&&(r.styleId=parseInt(e.attributes.s,10)),i.parseBoolean(e.attributes.hidden)&&(r.hidden=!0),i.parseBoolean(e.attributes.bestFit)&&(r.bestFit=!0),e.attributes.ht&&(r.height=parseFloat(e.attributes.ht)),e.attributes.outlineLevel&&(r.outlineLevel=parseInt(e.attributes.outlineLevel,10)),i.parseBoolean(e.attributes.collapsed)&&(r.collapsed=!0),!0}return this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){if(this.model.cells.push(this.parser.model),this.maxItems&&this.model.cells.length>this.maxItems)throw new Error(`Max column count (${this.maxItems}) exceeded`);this.parser=void 0}return!0}return!1}reconcile(e,t){e.style=e.styleId?t.styles.getStyleModel(e.styleId):{},void 0!==e.styleId&&(e.styleId=void 0);const r=this.map.c;e.cells.forEach((e=>{r.reconcile(e,t)}))}}},35772:(e,t,r)=>{const n=r(67984),i=r(87242);e.exports=class extends i{get tag(){return"sheetFormatPr"}render(e,t){if(t){const r={defaultRowHeight:t.defaultRowHeight,outlineLevelRow:t.outlineLevelRow,outlineLevelCol:t.outlineLevelCol,"x14ac:dyDescent":t.dyDescent};t.defaultColWidth&&(r.defaultColWidth=t.defaultColWidth),t.defaultRowHeight&&15===t.defaultRowHeight||(r.customHeight="1"),n.some(r,(e=>void 0!==e))&&e.leafNode("sheetFormatPr",r)}}parseOpen(e){return"sheetFormatPr"===e.name&&(this.model={defaultRowHeight:parseFloat(e.attributes.defaultRowHeight||"0"),dyDescent:parseFloat(e.attributes["x14ac:dyDescent"]||"0"),outlineLevelRow:parseInt(e.attributes.outlineLevelRow||"0",10),outlineLevelCol:parseInt(e.attributes.outlineLevelCol||"0",10)},e.attributes.defaultColWidth&&(this.model.defaultColWidth=parseFloat(e.attributes.defaultColWidth)),!0)}parseText(){}parseClose(){return!1}}},93236:(e,t,r)=>{const n=r(87242),i=r(42720),a=r(87610),o=r(48223);e.exports=class extends n{constructor(){super(),this.map={tabColor:new i("tabColor"),pageSetUpPr:new a,outlinePr:new o}}get tag(){return"sheetPr"}render(e,t){if(t){e.addRollback(),e.openNode("sheetPr");let r=!1;r=this.map.tabColor.render(e,t.tabColor)||r,r=this.map.pageSetUpPr.render(e,t.pageSetup)||r,r=this.map.outlinePr.render(e,t.outlineProperties)||r,r?(e.closeNode(),e.commit()):e.rollback()}}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.reset(),!0):!!this.map[e.name]&&(this.parser=this.map[e.name],this.parser.parseOpen(e),!0)}parseText(e){return!!this.parser&&(this.parser.parseText(e),!0)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(this.map.tabColor.model||this.map.pageSetUpPr.model||this.map.outlinePr.model?(this.model={},this.map.tabColor.model&&(this.model.tabColor=this.map.tabColor.model),this.map.pageSetUpPr.model&&(this.model.pageSetup=this.map.pageSetUpPr.model),this.map.outlinePr.model&&(this.model.outlineProperties=this.map.outlinePr.model)):this.model=null,!1)}}},94482:(e,t,r)=>{const n=r(67984),i=r(87242);function a(e,t){return e?t:void 0}function o(e,t){return e===t||void 0}e.exports=class extends i{get tag(){return"sheetProtection"}render(e,t){if(t){const r={sheet:a(t.sheet,"1"),selectLockedCells:!1===t.selectLockedCells?"1":void 0,selectUnlockedCells:!1===t.selectUnlockedCells?"1":void 0,formatCells:a(t.formatCells,"0"),formatColumns:a(t.formatColumns,"0"),formatRows:a(t.formatRows,"0"),insertColumns:a(t.insertColumns,"0"),insertRows:a(t.insertRows,"0"),insertHyperlinks:a(t.insertHyperlinks,"0"),deleteColumns:a(t.deleteColumns,"0"),deleteRows:a(t.deleteRows,"0"),sort:a(t.sort,"0"),autoFilter:a(t.autoFilter,"0"),pivotTables:a(t.pivotTables,"0")};t.sheet&&(r.algorithmName=t.algorithmName,r.hashValue=t.hashValue,r.saltValue=t.saltValue,r.spinCount=t.spinCount,r.objects=a(!1===t.objects,"1"),r.scenarios=a(!1===t.scenarios,"1")),n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={sheet:o(e.attributes.sheet,"1"),objects:"1"!==e.attributes.objects&&void 0,scenarios:"1"!==e.attributes.scenarios&&void 0,selectLockedCells:"1"!==e.attributes.selectLockedCells&&void 0,selectUnlockedCells:"1"!==e.attributes.selectUnlockedCells&&void 0,formatCells:o(e.attributes.formatCells,"0"),formatColumns:o(e.attributes.formatColumns,"0"),formatRows:o(e.attributes.formatRows,"0"),insertColumns:o(e.attributes.insertColumns,"0"),insertRows:o(e.attributes.insertRows,"0"),insertHyperlinks:o(e.attributes.insertHyperlinks,"0"),deleteColumns:o(e.attributes.deleteColumns,"0"),deleteRows:o(e.attributes.deleteRows,"0"),sort:o(e.attributes.sort,"0"),autoFilter:o(e.attributes.autoFilter,"0"),pivotTables:o(e.attributes.pivotTables,"0")},e.attributes.algorithmName&&(this.model.algorithmName=e.attributes.algorithmName,this.model.hashValue=e.attributes.hashValue,this.model.saltValue=e.attributes.saltValue,this.model.spinCount=parseInt(e.attributes.spinCount,10)),!0)}parseText(){}parseClose(){return!1}}},27832:(e,t,r)=>{const n=r(29428),i=r(87242),a={frozen:"frozen",frozenSplit:"frozen",split:"split"};e.exports=class extends i{get tag(){return"sheetView"}prepare(e){switch(e.state){case"frozen":case"split":break;default:e.state="normal"}}render(e,t){e.openNode("sheetView",{workbookViewId:t.workbookViewId||0});const r=function(t,r,n){n&&e.addAttribute(t,r)};let i,a,o,s;switch(r("rightToLeft","1",!0===t.rightToLeft),r("tabSelected","1",t.tabSelected),r("showRuler","0",!1===t.showRuler),r("showRowColHeaders","0",!1===t.showRowColHeaders),r("showGridLines","0",!1===t.showGridLines),r("zoomScale",t.zoomScale,t.zoomScale),r("zoomScaleNormal",t.zoomScaleNormal,t.zoomScaleNormal),r("view",t.style,t.style),t.state){case"frozen":a=t.xSplit||0,o=t.ySplit||0,i=t.topLeftCell||n.getAddress(o+1,a+1).address,s=(t.xSplit&&t.ySplit?"bottomRight":t.xSplit&&"topRight")||"bottomLeft",e.leafNode("pane",{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:i,activePane:s,state:"frozen"}),e.leafNode("selection",{pane:s,activeCell:t.activeCell,sqref:t.activeCell});break;case"split":"topLeft"===t.activePane&&(t.activePane=void 0),e.leafNode("pane",{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:t.topLeftCell,activePane:t.activePane}),e.leafNode("selection",{pane:t.activePane,activeCell:t.activeCell,sqref:t.activeCell});break;case"normal":t.activeCell&&e.leafNode("selection",{activeCell:t.activeCell,sqref:t.activeCell})}e.closeNode()}parseOpen(e){switch(e.name){case"sheetView":return this.sheetView={workbookViewId:parseInt(e.attributes.workbookViewId,10),rightToLeft:"1"===e.attributes.rightToLeft,tabSelected:"1"===e.attributes.tabSelected,showRuler:!("0"===e.attributes.showRuler),showRowColHeaders:!("0"===e.attributes.showRowColHeaders),showGridLines:!("0"===e.attributes.showGridLines),zoomScale:parseInt(e.attributes.zoomScale||"100",10),zoomScaleNormal:parseInt(e.attributes.zoomScaleNormal||"100",10),style:e.attributes.view},this.pane=void 0,this.selections={},!0;case"pane":return this.pane={xSplit:parseInt(e.attributes.xSplit||"0",10),ySplit:parseInt(e.attributes.ySplit||"0",10),topLeftCell:e.attributes.topLeftCell,activePane:e.attributes.activePane||"topLeft",state:e.attributes.state},!0;case"selection":{const t=e.attributes.pane||"topLeft";return this.selections[t]={pane:t,activeCell:e.attributes.activeCell},!0}default:return!1}}parseText(){}parseClose(e){let t,r;return"sheetView"!==e||(this.sheetView&&this.pane?(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,state:a[this.pane.state]||"split",xSplit:this.pane.xSplit,ySplit:this.pane.ySplit,topLeftCell:this.pane.topLeftCell,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},"split"===this.model.state&&(t.activePane=this.pane.activePane),r=this.selections[this.pane.activePane],r&&r.activeCell&&(t.activeCell=r.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)):(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,state:"normal",showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},r=this.selections.topLeft,r&&r.activeCell&&(t.activeCell=r.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)),!1)}reconcile(){}}},57985:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"tablePart"}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){return e.name===this.tag&&(this.model={rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},59629:(e,t,r)=>{const n=r(67984),i=r(29428),a=r(12141),o=r(71745),s=r(96209),c=r(87242),l=r(62447),u=r(80981),d=r(8599),p=r(2601),f=r(76591),m=r(49012),g=r(27210),_=r(93236),h=r(35772),y=r(27832),v=r(94482),b=r(97802),k=r(64892),x=r(4505),S=r(47749),w=r(74711),D=r(81099),E=r(57985),T=r(9668),C=r(87182),A=r(12700),N=r(17100),P=(e,t)=>{if(!t||!t.length)return e;if(!e||!e.length)return t;const r={},n={};return e.forEach((e=>{r[e.ref]=e,e.rules.forEach((e=>{const{x14Id:t}=e;t&&(n[t]=e)}))})),t.forEach((t=>{t.rules.forEach((i=>{const a=n[i.x14Id];a?((e,t)=>{Object.keys(t).forEach((r=>{const n=e[r],i=t[r];void 0===n&&void 0!==i&&(e[r]=i)}))})(a,i):r[t.ref]?r[t.ref].rules.push(i):e.push({ref:t.ref,rules:[i]})}))})),e};class I extends c{constructor(e){super();const{maxRows:t,maxCols:r,ignoreNodes:n}=e||{};this.ignoreNodes=n||[],this.map={sheetPr:new _,dimension:new p,sheetViews:new l({tag:"sheetViews",count:!1,childXform:new y}),sheetFormatPr:new h,cols:new l({tag:"cols",count:!1,childXform:new d}),sheetData:new l({tag:"sheetData",count:!1,empty:!0,childXform:new u({maxItems:r}),maxItems:t}),autoFilter:new S,mergeCells:new l({tag:"mergeCells",count:!0,childXform:new m}),rowBreaks:new T,hyperlinks:new l({tag:"hyperlinks",count:!1,childXform:new f}),pageMargins:new b,dataValidations:new g,pageSetup:new k,headerFooter:new C,printOptions:new x,picture:new w,drawing:new D,sheetProtection:new v,tableParts:new l({tag:"tableParts",count:!0,childXform:new E}),conditionalFormatting:new A,extLst:new N}}prepare(e,t){t.merges=new s,e.hyperlinks=t.hyperlinks=[],e.comments=t.comments=[],t.formulae={},t.siFormulae=0,this.map.cols.prepare(e.cols,t),this.map.sheetData.prepare(e.rows,t),this.map.conditionalFormatting.prepare(e.conditionalFormattings,t),e.mergeCells=t.merges.mergeCells;const r=e.rels=[];function n(e){return`rId${e.length+1}`}if(e.hyperlinks.forEach((e=>{const t=n(r);e.rId=t,r.push({Id:t,Type:o.Hyperlink,Target:e.target,TargetMode:"External"})})),e.comments.length>0){const a={Id:n(r),Type:o.Comments,Target:`../comments${e.id}.xml`};r.push(a);const s={Id:n(r),Type:o.VmlDrawing,Target:`../drawings/vmlDrawing${e.id}.vml`};r.push(s),e.comments.forEach((e=>{e.refAddress=i.decodeAddress(e.ref)})),t.commentRefs.push({commentName:`comments${e.id}`,vmlDrawing:`vmlDrawing${e.id}`})}const a=[];let c;e.media.forEach((i=>{if("background"===i.type){const a=n(r);c=t.media[i.imageId],r.push({Id:a,Type:o.Image,Target:`../media/${c.name}.${c.extension}`}),e.background={rId:a},e.image=t.media[i.imageId]}else if("image"===i.type){let{drawing:s}=e;c=t.media[i.imageId],s||(s=e.drawing={rId:n(r),name:"drawing"+ ++t.drawingsCount,anchors:[],rels:[]},t.drawings.push(s),r.push({Id:s.rId,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",Target:`../drawings/${s.name}.xml`}));let l=this.preImageId===i.imageId?a[i.imageId]:a[s.rels.length];l||(l=n(s.rels),a[s.rels.length]=l,s.rels.push({Id:l,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/${c.name}.${c.extension}`}));const u={picture:{rId:l},range:i.range};if(i.hyperlinks&&i.hyperlinks.hyperlink){const e=n(s.rels);a[s.rels.length]=e,u.picture.hyperlinks={tooltip:i.hyperlinks.tooltip,rId:e},s.rels.push({Id:e,Type:o.Hyperlink,Target:i.hyperlinks.hyperlink,TargetMode:"External"})}this.preImageId=i.imageId,s.anchors.push(u)}})),e.tables.forEach((e=>{const i=n(r);e.rId=i,r.push({Id:i,Type:o.Table,Target:`../tables/${e.target}`}),e.columns.forEach((e=>{const{style:r}=e;r&&(e.dxfId=t.styles.addDxfStyle(r))}))})),this.map.extLst.prepare(e,t)}render(e,t){e.openXml(a.StdDocAttributes),e.openNode("worksheet",I.WORKSHEET_ATTRIBUTES);const r=t.properties?{defaultRowHeight:t.properties.defaultRowHeight,dyDescent:t.properties.dyDescent,outlineLevelCol:t.properties.outlineLevelCol,outlineLevelRow:t.properties.outlineLevelRow}:void 0;t.properties&&t.properties.defaultColWidth&&(r.defaultColWidth=t.properties.defaultColWidth);const n={outlineProperties:t.properties&&t.properties.outlineProperties,tabColor:t.properties&&t.properties.tabColor,pageSetup:t.pageSetup&&t.pageSetup.fitToPage?{fitToPage:t.pageSetup.fitToPage}:void 0},i=t.pageSetup&&t.pageSetup.margins,s={showRowColHeaders:t.pageSetup&&t.pageSetup.showRowColHeaders,showGridLines:t.pageSetup&&t.pageSetup.showGridLines,horizontalCentered:t.pageSetup&&t.pageSetup.horizontalCentered,verticalCentered:t.pageSetup&&t.pageSetup.verticalCentered},c=t.sheetProtection;this.map.sheetPr.render(e,n),this.map.dimension.render(e,t.dimensions),this.map.sheetViews.render(e,t.views),this.map.sheetFormatPr.render(e,r),this.map.cols.render(e,t.cols),this.map.sheetData.render(e,t.rows),this.map.sheetProtection.render(e,c),this.map.autoFilter.render(e,t.autoFilter),this.map.mergeCells.render(e,t.mergeCells),this.map.conditionalFormatting.render(e,t.conditionalFormattings),this.map.dataValidations.render(e,t.dataValidations),this.map.hyperlinks.render(e,t.hyperlinks),this.map.printOptions.render(e,s),this.map.pageMargins.render(e,i),this.map.pageSetup.render(e,t.pageSetup),this.map.headerFooter.render(e,t.headerFooter),this.map.rowBreaks.render(e,t.rowBreaks),this.map.drawing.render(e,t.drawing),this.map.picture.render(e,t.background),this.map.tableParts.render(e,t.tables),this.map.extLst.render(e,t),t.rels&&t.rels.forEach((t=>{t.Type===o.VmlDrawing&&e.leafNode("legacyDrawing",{"r:id":t.Id})})),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"worksheet"===e.name?(n.each(this.map,(e=>{e.reset()})),!0):(this.map[e.name]&&!this.ignoreNodes.includes(e.name)&&(this.parser=this.map[e.name],this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if("worksheet"===e){const e=this.map.sheetFormatPr.model||{};this.map.sheetPr.model&&this.map.sheetPr.model.tabColor&&(e.tabColor=this.map.sheetPr.model.tabColor),this.map.sheetPr.model&&this.map.sheetPr.model.outlineProperties&&(e.outlineProperties=this.map.sheetPr.model.outlineProperties);const t={fitToPage:this.map.sheetPr.model&&this.map.sheetPr.model.pageSetup&&this.map.sheetPr.model.pageSetup.fitToPage||!1,margins:this.map.pageMargins.model},r=Object.assign(t,this.map.pageSetup.model,this.map.printOptions.model),n=P(this.map.conditionalFormatting.model,this.map.extLst.model&&this.map.extLst.model["x14:conditionalFormattings"]);return this.model={dimensions:this.map.dimension.model,cols:this.map.cols.model,rows:this.map.sheetData.model,mergeCells:this.map.mergeCells.model,hyperlinks:this.map.hyperlinks.model,dataValidations:this.map.dataValidations.model,properties:e,views:this.map.sheetViews.model,pageSetup:r,headerFooter:this.map.headerFooter.model,background:this.map.picture.model,drawing:this.map.drawing.model,tables:this.map.tableParts.model,conditionalFormattings:n},this.map.autoFilter.model&&(this.model.autoFilter=this.map.autoFilter.model),this.map.sheetProtection.model&&(this.model.sheetProtection=this.map.sheetProtection.model),!1}return!0}reconcile(e,t){const r=(e.relationships||[]).reduce(((r,n)=>{if(r[n.Id]=n,n.Type===o.Comments&&(e.comments=t.comments[n.Target].comments),n.Type===o.VmlDrawing&&e.comments&&e.comments.length){const r=t.vmlDrawings[n.Target].comments;e.comments.forEach(((e,t)=>{e.note=Object.assign({},e.note,r[t])}))}return r}),{});if(t.commentsMap=(e.comments||[]).reduce(((e,t)=>(t.ref&&(e[t.ref]=t),e)),{}),t.hyperlinkMap=(e.hyperlinks||[]).reduce(((e,t)=>(t.rId&&(e[t.address]=r[t.rId].Target),e)),{}),t.formulae={},e.rows=e.rows&&e.rows.filter(Boolean)||[],e.rows.forEach((e=>{e.cells=e.cells&&e.cells.filter(Boolean)||[]})),this.map.cols.reconcile(e.cols,t),this.map.sheetData.reconcile(e.rows,t),this.map.conditionalFormatting.reconcile(e.conditionalFormattings,t),e.media=[],e.drawing){const n=r[e.drawing.rId].Target.match(/\/drawings\/([a-zA-Z0-9]+)[.][a-zA-Z]{3,4}$/);if(n){const r=n[1];t.drawings[r].anchors.forEach((t=>{if(t.medium){const r={type:"image",imageId:t.medium.index,range:t.range,hyperlinks:t.picture.hyperlinks};e.media.push(r)}}))}}const n=e.background&&r[e.background.rId];if(n){const r=n.Target.split("/media/")[1],i=t.mediaIndex&&t.mediaIndex[r];void 0!==i&&e.media.push({type:"background",imageId:i})}e.tables=(e.tables||[]).map((e=>{const n=r[e.rId];return t.tables[n.Target]})),delete e.relationships,delete e.hyperlinks,delete e.comments}}I.WORKSHEET_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"x14ac","xmlns:x14ac":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac"},e.exports=I},36006:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr}render(e,t){t&&(e.openNode(this.tag),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.model=!0)}parseText(){}parseClose(){return!1}}},59874:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this._format=e.format||function(e){try{return Number.isNaN(e.getTime())?"":e.toISOString()}catch(e){return""}},this._parse=e.parse||function(e){return new Date(e)}}render(e,t){t&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,this._format(t)):e.writeText(this._format(t)),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=this._parse(e.attributes[this.attr]):this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this._parse(this.text.join(""))),!1}}},65208:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.zero=e.zero}render(e,t){(t||this.zero)&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){return e.name===this.tag&&(this.attr?this.model=parseInt(e.attributes[this.attr],10):this.text=[],!0)}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=parseInt(this.text.join("")||0,10)),!1}}},71207:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs}render(e,t){void 0!==t&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=e.attributes[this.attr]:this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this.text.join("")),!1}}},52789:(e,t,r)=>{const n=r(87242),i=r(12141);function a(e,t){e.openNode(t.tag,t.$),t.c&&t.c.forEach((t=>{a(e,t)})),t.t&&e.writeText(t.t),e.closeNode()}e.exports=class extends n{constructor(e){super(),this._model=e}render(e){if(!this._xml){const e=new i;a(e,this._model),this._xml=e.xml}e.writeXml(this._xml)}parseOpen(){return!0}parseText(){}parseClose(e){return e!==this._model.tag}}},428:(e,t,r)=>{const n=r(67403),i=r(95814),a=r(87242);e.exports=class extends a{constructor(){super(),this.map={r:new i,t:new n}}get tag(){return"rPh"}render(e,t){if(e.openNode(this.tag,{sb:t.sb||0,eb:t.eb||0}),t&&t.hasOwnProperty("richText")&&t.richText){const{r}=this.map;t.richText.forEach((t=>{r.render(e,t)}))}else t&&this.map.t.render(e,t.text);e.closeNode()}parseOpen(e){const{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={sb:parseInt(e.attributes.sb,10),eb:parseInt(e.attributes.eb,10)},!0):(this.parser=this.map[t],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case"r":{let e=this.model.richText;e||(e=this.model.richText=[]),e.push(this.parser.model);break}case"t":this.model.text=this.parser.model}this.parser=void 0}return!0}return e!==this.tag}}},95814:(e,t,r)=>{const n=r(67403),i=r(73784),a=r(87242);class o extends a{constructor(e){super(),this.model=e}get tag(){return"r"}get textXform(){return this._textXform||(this._textXform=new n)}get fontXform(){return this._fontXform||(this._fontXform=new i(o.FONT_OPTIONS))}render(e,t){t=t||this.model,e.openNode("r"),t.font&&this.fontXform.render(e,t.font),this.textXform.render(e,t.text),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"r":return this.model={},!0;case"t":return this.parser=this.textXform,this.parser.parseOpen(e),!0;case"rPr":return this.parser=this.fontXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case"r":return!1;case"t":return this.model.text=this.parser.model,this.parser=void 0,!0;case"rPr":return this.model.font=this.parser.model,this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}}o.FONT_OPTIONS={tagName:"rPr",fontNameTag:"rFont"},e.exports=o},52765:(e,t,r)=>{const n=r(67403),i=r(95814),a=r(428),o=r(87242);e.exports=class extends o{constructor(e){super(),this.model=e,this.map={r:new i,t:new n,rPh:new a}}get tag(){return"si"}render(e,t){e.openNode(this.tag),t&&t.hasOwnProperty("richText")&&t.richText?t.richText.length?t.richText.forEach((t=>{this.map.r.render(e,t)})):this.map.t.render(e,""):null!=t&&this.map.t.render(e,t),e.closeNode()}parseOpen(e){const{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={},!0):(this.parser=this.map[t],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case"r":{let e=this.model.richText;e||(e=this.model.richText=[]),e.push(this.parser.model);break}case"t":this.model=this.parser.model}this.parser=void 0}return!0}return e!==this.tag}}},96242:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(52765);e.exports=class extends i{constructor(e){super(),this.model=e||{values:[],count:0},this.hash=Object.create(null),this.rich=Object.create(null)}get sharedStringXform(){return this._sharedStringXform||(this._sharedStringXform=new a)}get values(){return this.model.values}get uniqueCount(){return this.model.values.length}get count(){return this.model.count}getString(e){return this.model.values[e]}add(e){return e.richText?this.addRichText(e):this.addText(e)}addText(e){let t=this.hash[e];return void 0===t&&(t=this.hash[e]=this.model.values.length,this.model.values.push(e)),this.model.count++,t}addRichText(e){const t=this.sharedStringXform.toXml(e);let r=this.rich[t];return void 0===r&&(r=this.rich[t]=this.model.values.length,this.model.values.push(e)),this.model.count++,r}render(e,t){t=t||this._values,e.openXml(n.StdDocAttributes),e.openNode("sst",{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:t.count,uniqueCount:t.values.length});const r=this.sharedStringXform;t.values.forEach((t=>{r.render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"sst":return!0;case"si":return this.parser=this.sharedStringXform,this.parser.parseOpen(e),!0;default:throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.values.push(this.parser.model),this.model.count++,this.parser=void 0),!0;if("sst"===e)return!1;throw new Error(`Unexpected xml node in parseClose: ${e}`)}}},67403:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"t"}render(e,t){e.openNode("t"),/^\s|\n|\s$/.test(t)&&e.addAttribute("xml:space","preserve"),e.writeText(t),e.closeNode()}get model(){return this._text.join("").replace(/_x([0-9A-F]{4})_/g,((e,t)=>String.fromCharCode(parseInt(t,16))))}parseOpen(e){return"t"===e.name&&(this._text=[],!0)}parseText(e){this._text.push(e)}parseClose(){return!1}}},15542:(e,t,r)=>{const n=r(70880),i=r(67032),a=r(87242),o={horizontalValues:["left","center","right","fill","centerContinuous","distributed","justify"].reduce(((e,t)=>(e[t]=!0,e)),{}),horizontal(e){return this.horizontalValues[e]?e:void 0},verticalValues:["top","middle","bottom","distributed","justify"].reduce(((e,t)=>(e[t]=!0,e)),{}),vertical(e){return"middle"===e?"center":this.verticalValues[e]?e:void 0},wrapText:e=>!!e||void 0,shrinkToFit:e=>!!e||void 0,textRotation:e=>"vertical"===e||(e=i.validInt(e))>=-90&&e<=90?e:void 0,indent:e=>(e=i.validInt(e),Math.max(0,e)),readingOrder(e){switch(e){case"ltr":return n.ReadingOrder.LeftToRight;case"rtl":return n.ReadingOrder.RightToLeft;default:return}}},s={toXml(e){if(e=o.textRotation(e)){if("vertical"===e)return 255;const t=Math.round(e);if(t>=0&&t<=90)return t;if(t<0&&t>=-90)return 90-t}},toModel(e){const t=i.validInt(e);if(void 0!==t){if(255===t)return"vertical";if(t>=0&&t<=90)return t;if(t>90&&t<=180)return 90-t}}};e.exports=class extends a{get tag(){return"alignment"}render(e,t){e.addRollback(),e.openNode("alignment");let r=!1;function n(t,n){n&&(e.addAttribute(t,n),r=!0)}n("horizontal",o.horizontal(t.horizontal)),n("vertical",o.vertical(t.vertical)),n("wrapText",!!o.wrapText(t.wrapText)&&"1"),n("shrinkToFit",!!o.shrinkToFit(t.shrinkToFit)&&"1"),n("indent",o.indent(t.indent)),n("textRotation",s.toXml(t.textRotation)),n("readingOrder",o.readingOrder(t.readingOrder)),e.closeNode(),r?e.commit():e.rollback()}parseOpen(e){const t={};let r=!1;function n(e,n,i){e&&(t[n]=i,r=!0)}n(e.attributes.horizontal,"horizontal",e.attributes.horizontal),n(e.attributes.vertical,"vertical","center"===e.attributes.vertical?"middle":e.attributes.vertical),n(e.attributes.wrapText,"wrapText",i.parseBoolean(e.attributes.wrapText)),n(e.attributes.shrinkToFit,"shrinkToFit",i.parseBoolean(e.attributes.shrinkToFit)),n(e.attributes.indent,"indent",parseInt(e.attributes.indent,10)),n(e.attributes.textRotation,"textRotation",s.toModel(e.attributes.textRotation)),n(e.attributes.readingOrder,"readingOrder","2"===e.attributes.readingOrder?"rtl":"ltr"),this.model=r?t:null}parseText(){}parseClose(){return!1}}},46503:(e,t,r)=>{const n=r(87242),i=r(67032),a=r(42720);class o extends n{constructor(e){super(),this.name=e,this.map={color:new a}}get tag(){return this.name}render(e,t,r){const n=t&&t.color||r||this.defaultColor;e.openNode(this.name),t&&t.style&&(e.addAttribute("style",t.style),n&&this.map.color.render(e,n)),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.name:{const{style:t}=e.attributes;return this.model=t?{style:t}:void 0,!0}case"color":return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(e===this.name&&this.map.color.model&&(this.model||(this.model={}),this.model.color=this.map.color.model),!1)}validStyle(e){return o.validStyleValues[e]}}o.validStyleValues=["thin","dashed","dotted","dashDot","hair","dashDotDot","slantDashDot","mediumDashed","mediumDashDotDot","mediumDashDot","medium","double","thick"].reduce(((e,t)=>(e[t]=!0,e)),{});e.exports=class extends n{constructor(){super(),this.map={top:new o("top"),left:new o("left"),bottom:new o("bottom"),right:new o("right"),diagonal:new o("diagonal")}}render(e,t){const{color:r}=t;function n(n,i){n&&!n.color&&t.color&&(n={...n,color:t.color}),i.render(e,n,r)}e.openNode("border"),t.diagonal&&t.diagonal.style&&(t.diagonal.up&&e.addAttribute("diagonalUp","1"),t.diagonal.down&&e.addAttribute("diagonalDown","1")),n(t.left,this.map.left),n(t.right,this.map.right),n(t.top,this.map.top),n(t.bottom,this.map.bottom),n(t.diagonal,this.map.diagonal),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"border"===e.name?(this.reset(),this.diagonalUp=i.parseBoolean(e.attributes.diagonalUp),this.diagonalDown=i.parseBoolean(e.attributes.diagonalDown),!0):(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if("border"===e){const e=this.model={},t=function(t,r,n){r&&(n&&Object.assign(r,n),e[t]=r)};t("left",this.map.left.model),t("right",this.map.right.model),t("top",this.map.top.model),t("bottom",this.map.bottom.model),t("diagonal",this.map.diagonal.model,{up:this.diagonalUp,down:this.diagonalDown})}return!1}}},42720:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.name=e||"color"}get tag(){return this.name}render(e,t){return!!t&&(e.openNode(this.name),t.argb?e.addAttribute("rgb",t.argb):void 0!==t.theme?(e.addAttribute("theme",t.theme),void 0!==t.tint&&e.addAttribute("tint",t.tint)):void 0!==t.indexed?e.addAttribute("indexed",t.indexed):e.addAttribute("auto","1"),e.closeNode(),!0)}parseOpen(e){return e.name===this.name&&(e.attributes.rgb?this.model={argb:e.attributes.rgb}:e.attributes.theme?(this.model={theme:parseInt(e.attributes.theme,10)},e.attributes.tint&&(this.model.tint=parseFloat(e.attributes.tint))):e.attributes.indexed?this.model={indexed:parseInt(e.attributes.indexed,10)}:this.model=void 0,!0)}parseText(){}parseClose(){return!1}}},64621:(e,t,r)=>{const n=r(87242),i=r(15542),a=r(46503),o=r(96112),s=r(73784),c=r(81198),l=r(84330);e.exports=class extends n{constructor(){super(),this.map={alignment:new i,border:new a,fill:new o,font:new s,numFmt:new c,protection:new l}}get tag(){return"dxf"}render(e,t){if(e.openNode(this.tag),t.font&&this.map.font.render(e,t.font),t.numFmt&&t.numFmtId){const r={id:t.numFmtId,formatCode:t.numFmt};this.map.numFmt.render(e,r)}t.fill&&this.map.fill.render(e,t.fill),t.alignment&&this.map.alignment.render(e,t.alignment),t.border&&this.map.border.render(e,t.border),t.protection&&this.map.protection.render(e,t.protection),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.reset(),!0):(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model={alignment:this.map.alignment.model,border:this.map.border.model,fill:this.map.fill.model,font:this.map.font.model,numFmt:this.map.numFmt.model,protection:this.map.protection.model},!1)}}},96112:(e,t,r)=>{const n=r(87242),i=r(42720);class a extends n{constructor(){super(),this.map={color:new i}}get tag(){return"stop"}render(e,t){e.openNode("stop"),e.addAttribute("position",t.position),this.map.color.render(e,t.color),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"stop":return this.model={position:parseFloat(e.attributes.position)},!0;case"color":return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(){}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.model.color=this.parser.model,this.parser=void 0),!0)}}class o extends n{constructor(){super(),this.map={fgColor:new i("fgColor"),bgColor:new i("bgColor")}}get name(){return"pattern"}get tag(){return"patternFill"}render(e,t){e.openNode("patternFill"),e.addAttribute("patternType",t.pattern),t.fgColor&&this.map.fgColor.render(e,t.fgColor),t.bgColor&&this.map.bgColor.render(e,t.bgColor),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"patternFill"===e.name?(this.model={type:"pattern",pattern:e.attributes.patternType},!0):(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.parser.model&&(this.model[e]=this.parser.model),this.parser=void 0),!0)}}class s extends n{constructor(){super(),this.map={stop:new a}}get name(){return"gradient"}get tag(){return"gradientFill"}render(e,t){switch(e.openNode("gradientFill"),t.gradient){case"angle":e.addAttribute("degree",t.degree);break;case"path":e.addAttribute("type","path"),t.center.left&&(e.addAttribute("left",t.center.left),void 0===t.center.right&&e.addAttribute("right",t.center.left)),t.center.right&&e.addAttribute("right",t.center.right),t.center.top&&(e.addAttribute("top",t.center.top),void 0===t.center.bottom&&e.addAttribute("bottom",t.center.top)),t.center.bottom&&e.addAttribute("bottom",t.center.bottom)}const r=this.map.stop;t.stops.forEach((t=>{r.render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"gradientFill":{const t=this.model={stops:[]};return e.attributes.degree?(t.gradient="angle",t.degree=parseInt(e.attributes.degree,10)):"path"===e.attributes.type&&(t.gradient="path",t.center={left:e.attributes.left?parseFloat(e.attributes.left):0,top:e.attributes.top?parseFloat(e.attributes.top):0},e.attributes.right!==e.attributes.left&&(t.center.right=e.attributes.right?parseFloat(e.attributes.right):0),e.attributes.bottom!==e.attributes.top&&(t.center.bottom=e.attributes.bottom?parseFloat(e.attributes.bottom):0)),!0}case"stop":return this.parser=this.map.stop,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.model.stops.push(this.parser.model),this.parser=void 0),!0)}}class c extends n{constructor(){super(),this.map={patternFill:new o,gradientFill:new s}}get tag(){return"fill"}render(e,t){switch(e.addRollback(),e.openNode("fill"),t.type){case"pattern":this.map.patternFill.render(e,t);break;case"gradient":this.map.gradientFill.render(e,t);break;default:return void e.rollback()}e.closeNode(),e.commit()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"fill"===e.name?(this.model={},!0):(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.model=this.parser.model,this.model.type=this.parser.name,this.parser=void 0),!0)}validStyle(e){return c.validPatternValues[e]}}c.validPatternValues=["none","solid","darkVertical","darkGray","mediumGray","lightGray","gray125","gray0625","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","lightGrid"].reduce(((e,t)=>(e[t]=!0,e)),{}),c.StopXform=a,c.PatternFillXform=o,c.GradientFillXform=s,e.exports=c},73784:(e,t,r)=>{"use strict";const n=r(42720),i=r(36006),a=r(65208),o=r(71207),s=r(15631),c=r(67984),l=r(87242);class u extends l{constructor(e){super(),this.options=e||u.OPTIONS,this.map={b:{prop:"bold",xform:new i({tag:"b",attr:"val"})},i:{prop:"italic",xform:new i({tag:"i",attr:"val"})},u:{prop:"underline",xform:new s},charset:{prop:"charset",xform:new a({tag:"charset",attr:"val"})},color:{prop:"color",xform:new n},condense:{prop:"condense",xform:new i({tag:"condense",attr:"val"})},extend:{prop:"extend",xform:new i({tag:"extend",attr:"val"})},family:{prop:"family",xform:new a({tag:"family",attr:"val"})},outline:{prop:"outline",xform:new i({tag:"outline",attr:"val"})},vertAlign:{prop:"vertAlign",xform:new o({tag:"vertAlign",attr:"val"})},scheme:{prop:"scheme",xform:new o({tag:"scheme",attr:"val"})},shadow:{prop:"shadow",xform:new i({tag:"shadow",attr:"val"})},strike:{prop:"strike",xform:new i({tag:"strike",attr:"val"})},sz:{prop:"size",xform:new a({tag:"sz",attr:"val"})}},this.map[this.options.fontNameTag]={prop:"name",xform:new o({tag:this.options.fontNameTag,attr:"val"})}}get tag(){return this.options.tagName}render(e,t){const{map:r}=this;e.openNode(this.options.tagName),c.each(this.map,((n,i)=>{r[i].xform.render(e,t[n.prop])})),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):this.map[e.name]?(this.parser=this.map[e.name].xform,this.parser.parseOpen(e)):e.name===this.options.tagName&&(this.model={},!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser&&!this.parser.parseClose(e)){const t=this.map[e];return this.parser.model&&(this.model[t.prop]=this.parser.model),this.parser=void 0,!0}return e!==this.options.tagName}}u.OPTIONS={tagName:"font",fontNameTag:"name"},e.exports=u},81198:(e,t,r)=>{const n=r(67984),i=r(77118),a=r(87242);const o=function(){const e={};return n.each(i,((t,r)=>{t.f&&(e[t.f]=parseInt(r,10))})),e}();class s extends a{constructor(e,t){super(),this.id=e,this.formatCode=t}get tag(){return"numFmt"}render(e,t){e.leafNode("numFmt",{numFmtId:t.id,formatCode:t.formatCode})}parseOpen(e){return"numFmt"===e.name&&(this.model={id:parseInt(e.attributes.numFmtId,10),formatCode:e.attributes.formatCode.replace(/[\\](.)/g,"$1")},!0)}parseText(){}parseClose(){return!1}}s.getDefaultFmtId=function(e){return o[e]},s.getDefaultFmtCode=function(e){return i[e]&&i[e].f},e.exports=s},84330:(e,t,r)=>{const n=r(87242),i={boolean:(e,t)=>void 0===e?t:e};e.exports=class extends n{get tag(){return"protection"}render(e,t){e.addRollback(),e.openNode("protection");let r=!1;function n(t,n){void 0!==n&&(e.addAttribute(t,n),r=!0)}n("locked",i.boolean(t.locked,!0)?void 0:"0"),n("hidden",i.boolean(t.hidden,!1)?"1":void 0),e.closeNode(),r?e.commit():e.rollback()}parseOpen(e){const t={locked:!("0"===e.attributes.locked),hidden:"1"===e.attributes.hidden},r=!t.locked||t.hidden;this.model=r?t:null}parseText(){}parseClose(){return!1}}},51566:(e,t,r)=>{const n=r(87242),i=r(15542),a=r(84330);e.exports=class extends n{constructor(e){super(),this.xfId=!(!e||!e.xfId),this.map={alignment:new i,protection:new a}}get tag(){return"xf"}render(e,t){e.openNode("xf",{numFmtId:t.numFmtId||0,fontId:t.fontId||0,fillId:t.fillId||0,borderId:t.borderId||0}),this.xfId&&e.addAttribute("xfId",t.xfId||0),t.numFmtId&&e.addAttribute("applyNumberFormat","1"),t.fontId&&e.addAttribute("applyFont","1"),t.fillId&&e.addAttribute("applyFill","1"),t.borderId&&e.addAttribute("applyBorder","1"),t.alignment&&e.addAttribute("applyAlignment","1"),t.protection&&e.addAttribute("applyProtection","1"),t.alignment&&this.map.alignment.render(e,t.alignment),t.protection&&this.map.protection.render(e,t.protection),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"xf":return this.model={numFmtId:parseInt(e.attributes.numFmtId,10),fontId:parseInt(e.attributes.fontId,10),fillId:parseInt(e.attributes.fillId,10),borderId:parseInt(e.attributes.borderId,10)},this.xfId&&(this.model.xfId=parseInt(e.attributes.xfId,10)),!0;case"alignment":return this.parser=this.map.alignment,this.parser.parseOpen(e),!0;case"protection":return this.parser=this.map.protection,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.map.protection===this.parser?this.model.protection=this.parser.model:this.model.alignment=this.parser.model,this.parser=void 0),!0):"xf"!==e}}},17647:(e,t,r)=>{const n=r(70880),i=r(12141),a=r(87242),o=r(52789),s=r(62447),c=r(73784),l=r(96112),u=r(46503),d=r(81198),p=r(51566),f=r(64621);class m extends a{constructor(e){super(),this.map={numFmts:new s({tag:"numFmts",count:!0,childXform:new d}),fonts:new s({tag:"fonts",count:!0,childXform:new c,$:{"x14ac:knownFonts":1}}),fills:new s({tag:"fills",count:!0,childXform:new l}),borders:new s({tag:"borders",count:!0,childXform:new u}),cellStyleXfs:new s({tag:"cellStyleXfs",count:!0,childXform:new p}),cellXfs:new s({tag:"cellXfs",count:!0,childXform:new p({xfId:!0})}),dxfs:new s({tag:"dxfs",always:!0,count:!0,childXform:new f}),numFmt:new d,font:new c,fill:new l,border:new u,style:new p({xfId:!0}),cellStyles:m.STATIC_XFORMS.cellStyles,tableStyles:m.STATIC_XFORMS.tableStyles,extLst:m.STATIC_XFORMS.extLst},e&&this.init()}initIndex(){this.index={style:{},numFmt:{},numFmtNextId:164,font:{},border:{},fill:{}}}init(){this.model={styles:[],numFmts:[],fonts:[],borders:[],fills:[],dxfs:[]},this.initIndex(),this._addBorder({}),this._addStyle({numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}),this._addFill({type:"pattern",pattern:"none"}),this._addFill({type:"pattern",pattern:"gray125"}),this.weakMap=new WeakMap}render(e,t){t=t||this.model,e.openXml(i.StdDocAttributes),e.openNode("styleSheet",m.STYLESHEET_ATTRIBUTES),this.index?(t.numFmts&&t.numFmts.length&&(e.openNode("numFmts",{count:t.numFmts.length}),t.numFmts.forEach((t=>{e.writeXml(t)})),e.closeNode()),t.fonts.length||this._addFont({size:11,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}),e.openNode("fonts",{count:t.fonts.length,"x14ac:knownFonts":1}),t.fonts.forEach((t=>{e.writeXml(t)})),e.closeNode(),e.openNode("fills",{count:t.fills.length}),t.fills.forEach((t=>{e.writeXml(t)})),e.closeNode(),e.openNode("borders",{count:t.borders.length}),t.borders.forEach((t=>{e.writeXml(t)})),e.closeNode(),this.map.cellStyleXfs.render(e,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),e.openNode("cellXfs",{count:t.styles.length}),t.styles.forEach((t=>{e.writeXml(t)})),e.closeNode()):(this.map.numFmts.render(e,t.numFmts),this.map.fonts.render(e,t.fonts),this.map.fills.render(e,t.fills),this.map.borders.render(e,t.borders),this.map.cellStyleXfs.render(e,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),this.map.cellXfs.render(e,t.styles)),m.STATIC_XFORMS.cellStyles.render(e),this.map.dxfs.render(e,t.dxfs),m.STATIC_XFORMS.tableStyles.render(e),m.STATIC_XFORMS.extLst.render(e),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"styleSheet"===e.name?(this.initIndex(),!0):(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if("styleSheet"===e){this.model={};const e=(e,t)=>{t.model&&t.model.length&&(this.model[e]=t.model)};if(e("numFmts",this.map.numFmts),e("fonts",this.map.fonts),e("fills",this.map.fills),e("borders",this.map.borders),e("styles",this.map.cellXfs),e("dxfs",this.map.dxfs),this.index={model:[],numFmt:[]},this.model.numFmts){const e=this.index.numFmt;this.model.numFmts.forEach((t=>{e[t.id]=t.formatCode}))}return!1}return!0}addStyleModel(e,t){if(!e)return 0;if(this.model.fonts.length||this._addFont({size:11,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}),this.weakMap&&this.weakMap.has(e))return this.weakMap.get(e);const r={};if(t=t||n.ValueType.Number,e.numFmt)r.numFmtId=this._addNumFmtStr(e.numFmt);else switch(t){case n.ValueType.Number:r.numFmtId=this._addNumFmtStr("General");break;case n.ValueType.Date:r.numFmtId=this._addNumFmtStr("mm-dd-yy")}e.font&&(r.fontId=this._addFont(e.font)),e.border&&(r.borderId=this._addBorder(e.border)),e.fill&&(r.fillId=this._addFill(e.fill)),e.alignment&&(r.alignment=e.alignment),e.protection&&(r.protection=e.protection);const i=this._addStyle(r);return this.weakMap&&this.weakMap.set(e,i),i}getStyleModel(e){const t=this.model.styles[e];if(!t)return null;let r=this.index.model[e];if(r)return r;if(r=this.index.model[e]={},t.numFmtId){const e=this.index.numFmt[t.numFmtId]||d.getDefaultFmtCode(t.numFmtId);e&&(r.numFmt=e)}function n(e,t,n){if(n||0===n){const i=t[n];i&&(r[e]=i)}}return n("font",this.model.fonts,t.fontId),n("border",this.model.borders,t.borderId),n("fill",this.model.fills,t.fillId),t.alignment&&(r.alignment=t.alignment),t.protection&&(r.protection=t.protection),r}addDxfStyle(e){return e.numFmt&&(e.numFmtId=this._addNumFmtStr(e.numFmt)),this.model.dxfs.push(e),this.model.dxfs.length-1}getDxfStyle(e){return this.model.dxfs[e]}_addStyle(e){const t=this.map.style.toXml(e);let r=this.index.style[t];return void 0===r&&(r=this.index.style[t]=this.model.styles.length,this.model.styles.push(t)),r}_addNumFmtStr(e){let t=d.getDefaultFmtId(e);if(void 0!==t)return t;if(t=this.index.numFmt[e],void 0!==t)return t;t=this.index.numFmt[e]=164+this.model.numFmts.length;const r=this.map.numFmt.toXml({id:t,formatCode:e});return this.model.numFmts.push(r),t}_addFont(e){const t=this.map.font.toXml(e);let r=this.index.font[t];return void 0===r&&(r=this.index.font[t]=this.model.fonts.length,this.model.fonts.push(t)),r}_addBorder(e){const t=this.map.border.toXml(e);let r=this.index.border[t];return void 0===r&&(r=this.index.border[t]=this.model.borders.length,this.model.borders.push(t)),r}_addFill(e){const t=this.map.fill.toXml(e);let r=this.index.fill[t];return void 0===r&&(r=this.index.fill[t]=this.model.fills.length,this.model.fills.push(t)),r}}m.STYLESHEET_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"x14ac x16r2","xmlns:x14ac":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac","xmlns:x16r2":"http://schemas.microsoft.com/office/spreadsheetml/2015/02/main"},m.STATIC_XFORMS={cellStyles:new o({tag:"cellStyles",$:{count:1},c:[{tag:"cellStyle",$:{name:"Normal",xfId:0,builtinId:0}}]}),dxfs:new o({tag:"dxfs",$:{count:0}}),tableStyles:new o({tag:"tableStyles",$:{count:0,defaultTableStyle:"TableStyleMedium2",defaultPivotStyle:"PivotStyleLight16"}}),extLst:new o({tag:"extLst",c:[{tag:"ext",$:{uri:"{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}","xmlns:x14":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"},c:[{tag:"x14:slicerStyles",$:{defaultSlicerStyle:"SlicerStyleLight1"}}]},{tag:"ext",$:{uri:"{9260A510-F301-46a8-8635-F512D64BE5F5}","xmlns:x15":"http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"},c:[{tag:"x15:timelineStyles",$:{defaultTimelineStyle:"TimeSlicerStyleLight1"}}]}]})};m.Mock=class extends m{constructor(){super(),this.model={styles:[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}],numFmts:[],fonts:[{size:11,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}],borders:[{}],fills:[{type:"pattern",pattern:"none"},{type:"pattern",pattern:"gray125"}]}}parseStream(e){return e.autodrain(),Promise.resolve()}addStyleModel(e,t){return t===n.ValueType.Date?this.dateStyleId:0}get dateStyleId(){if(!this._dateStyleId){const e={numFmtId:d.getDefaultFmtId("mm-dd-yy")};this._dateStyleId=this.model.styles.length,this.model.styles.push(e)}return this._dateStyleId}getStyleModel(){return{}}},e.exports=m},15631:(e,t,r)=>{const n=r(87242);class i extends n{constructor(e){super(),this.model=e}get tag(){return"u"}render(e,t){if(!0===(t=t||this.model))e.leafNode("u");else{const r=i.Attributes[t];r&&e.leafNode("u",r)}}parseOpen(e){"u"===e.name&&(this.model=e.attributes.val||!0)}parseText(){}parseClose(){return!1}}i.Attributes={single:{},double:{val:"double"},singleAccounting:{val:"singleAccounting"},doubleAccounting:{val:"doubleAccounting"}},e.exports=i},90290:(e,t,r)=>{const n=r(87242),i=r(24089);e.exports=class extends n{constructor(){super(),this.map={filterColumn:new i}}get tag(){return"autoFilter"}prepare(e){e.columns.forEach(((e,t)=>{this.map.filterColumn.prepare(e,{index:t})}))}render(e,t){return e.openNode(this.tag,{ref:t.autoFilterRef}),t.columns.forEach((t=>{this.map.filterColumn.render(e,t)})),e.closeNode(),!0}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)return this.model={autoFilterRef:e.attributes.ref,columns:[]},!0;if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.columns.push(this.parser.model),this.parser=void 0),!0;if(e===this.tag)return!1;throw new Error(`Unexpected xml node in parseClose: ${e}`)}}},61238:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"customFilter"}render(e,t){e.leafNode(this.tag,{val:t.val,operator:t.operator})}parseOpen(e){return e.name===this.tag&&(this.model={val:e.attributes.val,operator:e.attributes.operator},!0)}parseText(){}parseClose(){return!1}}},24089:(e,t,r)=>{const n=r(87242),i=r(62447),a=r(61238),o=r(59644);e.exports=class extends n{constructor(){super(),this.map={customFilters:new i({tag:"customFilters",count:!1,empty:!0,childXform:new a}),filters:new i({tag:"filters",count:!1,empty:!0,childXform:new o})}}get tag(){return"filterColumn"}prepare(e,t){e.colId=t.index.toString()}render(e,t){return t.customFilters?(e.openNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?"0":"1"}),this.map.customFilters.render(e,t.customFilters),e.closeNode(),!0):(e.leafNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?"0":"1"}),!0)}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;const{attributes:t}=e;if(e.name===this.tag)return this.model={filterButton:"0"===t.hiddenButton},!0;if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.customFilters=this.map.customFilters.model,!1)}}},59644:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"filter"}render(e,t){e.leafNode(this.tag,{val:t.val})}parseOpen(e){return e.name===this.tag&&(this.model={val:e.attributes.val},!0)}parseText(){}parseClose(){return!1}}},57715:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"tableColumn"}prepare(e,t){e.id=t.index+1}render(e,t){return e.leafNode(this.tag,{id:t.id.toString(),name:t.name,totalsRowLabel:t.totalsRowLabel,totalsRowFunction:t.totalsRowFunction,dxfId:t.dxfId}),!0}parseOpen(e){if(e.name===this.tag){const{attributes:t}=e;return this.model={name:t.name,totalsRowLabel:t.totalsRowLabel,totalsRowFunction:t.totalsRowFunction,dxfId:t.dxfId},!0}return!1}parseText(){}parseClose(){return!1}}},16949:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"tableStyleInfo"}render(e,t){return e.leafNode(this.tag,{name:t.theme?t.theme:void 0,showFirstColumn:t.showFirstColumn?"1":"0",showLastColumn:t.showLastColumn?"1":"0",showRowStripes:t.showRowStripes?"1":"0",showColumnStripes:t.showColumnStripes?"1":"0"}),!0}parseOpen(e){if(e.name===this.tag){const{attributes:t}=e;return this.model={theme:t.name?t.name:null,showFirstColumn:"1"===t.showFirstColumn,showLastColumn:"1"===t.showLastColumn,showRowStripes:"1"===t.showRowStripes,showColumnStripes:"1"===t.showColumnStripes},!0}return!1}parseText(){}parseClose(){return!1}}},71998:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(62447),o=r(90290),s=r(57715),c=r(16949);class l extends i{constructor(){super(),this.map={autoFilter:new o,tableColumns:new a({tag:"tableColumns",count:!0,empty:!0,childXform:new s}),tableStyleInfo:new c}}prepare(e,t){this.map.autoFilter.prepare(e),this.map.tableColumns.prepare(e.columns,t)}get tag(){return"table"}render(e,t){e.openXml(n.StdDocAttributes),e.openNode(this.tag,{...l.TABLE_ATTRIBUTES,id:t.id,name:t.name,displayName:t.displayName||t.name,ref:t.tableRef,totalsRowCount:t.totalsRow?"1":void 0,totalsRowShown:t.totalsRow?void 0:"1",headerRowCount:t.headerRow?"1":"0"}),this.map.autoFilter.render(e,t),this.map.tableColumns.render(e,t.columns),this.map.tableStyleInfo.render(e,t.style),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;const{name:t,attributes:r}=e;if(t===this.tag)this.reset(),this.model={name:r.name,displayName:r.displayName||r.name,tableRef:r.ref,totalsRow:"1"===r.totalsRowCount,headerRow:"1"===r.headerRowCount};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.columns=this.map.tableColumns.model,this.map.autoFilter.model&&(this.model.autoFilterRef=this.map.autoFilter.model.autoFilterRef,this.map.autoFilter.model.columns.forEach(((e,t)=>{this.model.columns[t].filterButton=e.filterButton}))),this.model.style=this.map.tableStyleInfo.model,!1)}reconcile(e,t){e.columns.forEach((e=>{void 0!==e.dxfId&&(e.style=t.styles.getDxfStyle(e.dxfId))}))}}l.TABLE_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"xr xr3","xmlns:xr":"http://schemas.microsoft.com/office/spreadsheetml/2014/revision","xmlns:xr3":"http://schemas.microsoft.com/office/spreadsheetml/2016/revision3"},e.exports=l},59276:(e,t,r)=>{const n=r(79896),i=r(58833),{PassThrough:a}=r(34198),o=r(1495),s=r(87137),c=r(67032),l=r(12141),{bufferToString:u}=r(50323),d=r(17647),p=r(1298),f=r(96242),m=r(61724),g=r(40814),_=r(15888),h=r(22519),y=r(59629),v=r(66386),b=r(71998),k=r(10959),x=r(43316),S=r(46046);class w{constructor(e){this.workbook=e}async readFile(e,t){if(!await c.fs.exists(e))throw new Error(`File not found: ${e}`);const r=n.createReadStream(e);try{const e=await this.read(r,t);return r.close(),e}catch(e){throw r.close(),e}}parseRels(e){return(new m).parseStream(e)}parseWorkbook(e){return(new h).parseStream(e)}parseSharedStrings(e){return(new f).parseStream(e)}reconcile(e,t){const r=new h,n=new y(t),i=new v,a=new b;r.reconcile(e);const o={media:e.media,mediaIndex:e.mediaIndex};Object.keys(e.drawings).forEach((t=>{const r=e.drawings[t],n=e.drawingRels[t];n&&(o.rels=n.reduce(((e,t)=>(e[t.Id]=t,e)),{}),(r.anchors||[]).forEach((e=>{const t=e.picture&&e.picture.hyperlinks;t&&o.rels[t.rId]&&(t.hyperlink=o.rels[t.rId].Target,delete t.rId)})),i.reconcile(r,o))}));const s={styles:e.styles};Object.values(e.tables).forEach((e=>{a.reconcile(e,s)}));const c={styles:e.styles,sharedStrings:e.sharedStrings,media:e.media,mediaIndex:e.mediaIndex,date1904:e.properties&&e.properties.date1904,drawings:e.drawings,comments:e.comments,tables:e.tables,vmlDrawings:e.vmlDrawings};e.worksheets.forEach((t=>{t.relationships=e.worksheetRels[t.sheetNo],n.reconcile(t,c)})),delete e.worksheetHash,delete e.worksheetRels,delete e.globalRels,delete e.sharedStrings,delete e.workbookRels,delete e.sheetDefs,delete e.styles,delete e.mediaIndex,delete e.drawings,delete e.drawingRels,delete e.vmlDrawings}async _processWorksheetEntry(e,t,r,n,i){const a=new y(n),o=await a.parseStream(e);o.sheetNo=r,t.worksheetHash[i]=o,t.worksheets.push(o)}async _processCommentEntry(e,t,r){const n=new k,i=await n.parseStream(e);t.comments[`../${r}.xml`]=i}async _processTableEntry(e,t,r){const n=new b,i=await n.parseStream(e);t.tables[`../tables/${r}.xml`]=i}async _processWorksheetRelsEntry(e,t,r){const n=new m,i=await n.parseStream(e);t.worksheetRels[r]=i}async _processMediaEntry(e,t,r){const n=r.lastIndexOf(".");if(n>=1){const i=r.substr(n+1),a=r.substr(0,n);await new Promise(((n,o)=>{const c=new s;c.on("finish",(()=>{t.mediaIndex[r]=t.media.length,t.mediaIndex[a]=t.media.length;const e={type:"image",name:a,extension:i,buffer:c.toBuffer()};t.media.push(e),n()})),e.on("error",(e=>{o(e)})),e.pipe(c)}))}}async _processDrawingEntry(e,t,r){const n=new v,i=await n.parseStream(e);t.drawings[r]=i}async _processDrawingRelsEntry(e,t,r){const n=new m,i=await n.parseStream(e);t.drawingRels[r]=i}async _processVmlDrawingEntry(e,t,r){const n=new x,i=await n.parseStream(e);t.vmlDrawings[`../drawings/${r}.vml`]=i}async _processThemeEntry(e,t,r){await new Promise(((n,i)=>{const a=new s;e.on("error",i),a.on("error",i),a.on("finish",(()=>{t.themes[r]=a.read().toString(),n()})),e.pipe(a)}))}createInputStream(){throw new Error("`XLSX#createInputStream` is deprecated. You should use `XLSX#read` instead. This method will be removed in version 5.0. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md")}async read(e,t){!e[Symbol.asyncIterator]&&e.pipe&&(e=e.pipe(new a));const r=[];for await(const t of e)r.push(t);return this.load(Buffer.concat(r),t)}async load(e,t){let r;r=t&&t.base64?Buffer.from(e.toString(),"base64"):e;const n={worksheets:[],worksheetHash:{},worksheetRels:[],themes:{},media:[],mediaIndex:{},drawings:{},drawingRels:{},comments:{},tables:{},vmlDrawings:{}},o=await i.loadAsync(r);for(const e of Object.values(o.files))if(!e.dir){let r,i=e.name;if("/"===i[0]&&(i=i.substr(1)),i.match(/xl\/media\//)||i.match(/xl\/theme\/([a-zA-Z0-9]+)[.]xml/))r=new a,r.write(await e.async("nodebuffer"));else{let t;r=new a({writableObjectMode:!0,readableObjectMode:!0}),t=process.browser?u(await e.async("nodebuffer")):await e.async("string");const n=16384;for(let e=0;e<t.length;e+=n)r.write(t.substring(e,e+n))}switch(r.end(),i){case"_rels/.rels":n.globalRels=await this.parseRels(r);break;case"xl/workbook.xml":{const e=await this.parseWorkbook(r);n.sheets=e.sheets,n.definedNames=e.definedNames,n.views=e.views,n.properties=e.properties,n.calcProperties=e.calcProperties;break}case"xl/_rels/workbook.xml.rels":n.workbookRels=await this.parseRels(r);break;case"xl/sharedStrings.xml":n.sharedStrings=new f,await n.sharedStrings.parseStream(r);break;case"xl/styles.xml":n.styles=new d,await n.styles.parseStream(r);break;case"docProps/app.xml":{const e=new _,t=await e.parseStream(r);n.company=t.company,n.manager=t.manager;break}case"docProps/core.xml":{const e=new p,t=await e.parseStream(r);Object.assign(n,t);break}default:{let e=i.match(/xl\/worksheets\/sheet(\d+)[.]xml/);if(e){await this._processWorksheetEntry(r,n,e[1],t,i);break}if(e=i.match(/xl\/worksheets\/_rels\/sheet(\d+)[.]xml.rels/),e){await this._processWorksheetRelsEntry(r,n,e[1]);break}if(e=i.match(/xl\/theme\/([a-zA-Z0-9]+)[.]xml/),e){await this._processThemeEntry(r,n,e[1]);break}if(e=i.match(/xl\/media\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/),e){await this._processMediaEntry(r,n,e[1]);break}if(e=i.match(/xl\/drawings\/([a-zA-Z0-9]+)[.]xml/),e){await this._processDrawingEntry(r,n,e[1]);break}if(e=i.match(/xl\/(comments\d+)[.]xml/),e){await this._processCommentEntry(r,n,e[1]);break}if(e=i.match(/xl\/tables\/(table\d+)[.]xml/),e){await this._processTableEntry(r,n,e[1]);break}if(e=i.match(/xl\/drawings\/_rels\/([a-zA-Z0-9]+)[.]xml[.]rels/),e){await this._processDrawingRelsEntry(r,n,e[1]);break}if(e=i.match(/xl\/drawings\/(vmlDrawing\d+)[.]vml/),e){await this._processVmlDrawingEntry(r,n,e[1]);break}}}}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async addMedia(e,t){await Promise.all(t.media.map((async t=>{if("image"===t.type){const r=`xl/media/${t.name}.${t.extension}`;if(t.filename){const i=await function(e,t){return new Promise(((r,i)=>{n.readFile(e,t,((e,t)=>{e?i(e):r(t)}))}))}(t.filename);return e.append(i,{name:r})}if(t.buffer)return e.append(t.buffer,{name:r});if(t.base64){const n=t.base64,i=n.substring(n.indexOf(",")+1);return e.append(i,{name:r,base64:!0})}}throw new Error("Unsupported media")})))}addDrawings(e,t){const r=new v,n=new m;t.worksheets.forEach((t=>{const{drawing:i}=t;if(i){r.prepare(i,{});let t=r.toXml(i);e.append(t,{name:`xl/drawings/${i.name}.xml`}),t=n.toXml(i.rels),e.append(t,{name:`xl/drawings/_rels/${i.name}.xml.rels`})}}))}addTables(e,t){const r=new b;t.worksheets.forEach((t=>{const{tables:n}=t;n.forEach((t=>{r.prepare(t,{});const n=r.toXml(t);e.append(n,{name:`xl/tables/${t.target}`})}))}))}async addContentTypes(e,t){const r=(new g).toXml(t);e.append(r,{name:"[Content_Types].xml"})}async addApp(e,t){const r=(new _).toXml(t);e.append(r,{name:"docProps/app.xml"})}async addCore(e,t){const r=new p;e.append(r.toXml(t),{name:"docProps/core.xml"})}async addThemes(e,t){const r=t.themes||{theme1:S};Object.keys(r).forEach((t=>{const n=r[t],i=`xl/theme/${t}.xml`;e.append(n,{name:i})}))}async addOfficeRels(e){const t=(new m).toXml([{Id:"rId1",Type:w.RelType.OfficeDocument,Target:"xl/workbook.xml"},{Id:"rId2",Type:w.RelType.CoreProperties,Target:"docProps/core.xml"},{Id:"rId3",Type:w.RelType.ExtenderProperties,Target:"docProps/app.xml"}]);e.append(t,{name:"_rels/.rels"})}async addWorkbookRels(e,t){let r=1;const n=[{Id:"rId"+r++,Type:w.RelType.Styles,Target:"styles.xml"},{Id:"rId"+r++,Type:w.RelType.Theme,Target:"theme/theme1.xml"}];t.sharedStrings.count&&n.push({Id:"rId"+r++,Type:w.RelType.SharedStrings,Target:"sharedStrings.xml"}),t.worksheets.forEach((e=>{e.rId="rId"+r++,n.push({Id:e.rId,Type:w.RelType.Worksheet,Target:`worksheets/sheet${e.id}.xml`})}));const i=(new m).toXml(n);e.append(i,{name:"xl/_rels/workbook.xml.rels"})}async addSharedStrings(e,t){t.sharedStrings&&t.sharedStrings.count&&e.append(t.sharedStrings.xml,{name:"xl/sharedStrings.xml"})}async addStyles(e,t){const{xml:r}=t.styles;r&&e.append(r,{name:"xl/styles.xml"})}async addWorkbook(e,t){const r=new h;e.append(r.toXml(t),{name:"xl/workbook.xml"})}async addWorksheets(e,t){const r=new y,n=new m,i=new k,a=new x;t.worksheets.forEach((t=>{let o=new l;r.render(o,t),e.append(o.xml,{name:`xl/worksheets/sheet${t.id}.xml`}),t.rels&&t.rels.length&&(o=new l,n.render(o,t.rels),e.append(o.xml,{name:`xl/worksheets/_rels/sheet${t.id}.xml.rels`})),t.comments.length>0&&(o=new l,i.render(o,t),e.append(o.xml,{name:`xl/comments${t.id}.xml`}),o=new l,a.render(o,t),e.append(o.xml,{name:`xl/drawings/vmlDrawing${t.id}.vml`}))}))}_finalize(e){return new Promise(((t,r)=>{e.on("finish",(()=>{t(this)})),e.on("error",r),e.finalize()}))}prepareModel(e,t){e.creator=e.creator||"ExcelJS",e.lastModifiedBy=e.lastModifiedBy||"ExcelJS",e.created=e.created||new Date,e.modified=e.modified||new Date,e.useSharedStrings=void 0===t.useSharedStrings||t.useSharedStrings,e.useStyles=void 0===t.useStyles||t.useStyles,e.sharedStrings=new f,e.styles=e.useStyles?new d(!0):new d.Mock;const r=new h,n=new y;r.prepare(e);const i={sharedStrings:e.sharedStrings,styles:e.styles,date1904:e.properties.date1904,drawingsCount:0,media:e.media};i.drawings=e.drawings=[],i.commentRefs=e.commentRefs=[];let a=0;e.tables=[],e.worksheets.forEach((t=>{t.tables.forEach((t=>{a++,t.target=`table${a}.xml`,t.id=a,e.tables.push(t)})),n.prepare(t,i)}))}async write(e,t){t=t||{};const{model:r}=this.workbook,n=new o.ZipWriter(t.zip);return n.pipe(e),this.prepareModel(r,t),await this.addContentTypes(n,r),await this.addOfficeRels(n,r),await this.addWorkbookRels(n,r),await this.addWorksheets(n,r),await this.addSharedStrings(n,r),await this.addDrawings(n,r),await this.addTables(n,r),await Promise.all([this.addThemes(n,r),this.addStyles(n,r)]),await this.addMedia(n,r),await Promise.all([this.addApp(n,r),this.addCore(n,r)]),await this.addWorkbook(n,r),this._finalize(n)}writeFile(e,t){const r=n.createWriteStream(e);return new Promise(((e,n)=>{r.on("finish",(()=>{e()})),r.on("error",(e=>{n(e)})),this.write(r,t).then((()=>{r.end()})).catch((e=>{n(e)}))}))}async writeBuffer(e){const t=new s;return await this.write(t,e),t.read()}}w.RelType=r(71745),e.exports=w},46046:e=>{e.exports='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"> <a:shade val="95000"/> <a:satMod val="105000"/> </a:schemeClr> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <a:scene3d> <a:camera prst="orthographicFront"> <a:rot lat="0" lon="0" rev="0"/> </a:camera> <a:lightRig rig="threePt" dir="t"> <a:rot lat="0" lon="0" rev="1200000"/> </a:lightRig> </a:scene3d> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="1"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="3"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="2"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="lt1"/> </a:fontRef> </a:style> </a:spDef> <a:lnDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="2"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="0"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="1"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="tx1"/> </a:fontRef> </a:style> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>'},67808:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CsvParserStream=t.ParserOptions=t.parseFile=t.parseStream=t.parseString=t.parse=t.FormatterOptions=t.CsvFormatterStream=t.writeToPath=t.writeToString=t.writeToBuffer=t.writeToStream=t.write=t.format=void 0;var n=r(1696);Object.defineProperty(t,"format",{enumerable:!0,get:function(){return n.format}}),Object.defineProperty(t,"write",{enumerable:!0,get:function(){return n.write}}),Object.defineProperty(t,"writeToStream",{enumerable:!0,get:function(){return n.writeToStream}}),Object.defineProperty(t,"writeToBuffer",{enumerable:!0,get:function(){return n.writeToBuffer}}),Object.defineProperty(t,"writeToString",{enumerable:!0,get:function(){return n.writeToString}}),Object.defineProperty(t,"writeToPath",{enumerable:!0,get:function(){return n.writeToPath}}),Object.defineProperty(t,"CsvFormatterStream",{enumerable:!0,get:function(){return n.CsvFormatterStream}}),Object.defineProperty(t,"FormatterOptions",{enumerable:!0,get:function(){return n.FormatterOptions}});var i=r(77190);Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return i.parse}}),Object.defineProperty(t,"parseString",{enumerable:!0,get:function(){return i.parseString}}),Object.defineProperty(t,"parseStream",{enumerable:!0,get:function(){return i.parseStream}}),Object.defineProperty(t,"parseFile",{enumerable:!0,get:function(){return i.parseFile}}),Object.defineProperty(t,"ParserOptions",{enumerable:!0,get:function(){return i.ParserOptions}}),Object.defineProperty(t,"CsvParserStream",{enumerable:!0,get:function(){return i.CsvParserStream}})},72170:(e,t,r)=>{e.exports=r(79896).constants||r(49140)},61455:(e,t,r)=>{e.exports=u,u.realpath=u,u.sync=d,u.realpathSync=d,u.monkeypatch=function(){n.realpath=u,n.realpathSync=d},u.unmonkeypatch=function(){n.realpath=i,n.realpathSync=a};var n=r(79896),i=n.realpath,a=n.realpathSync,o=process.version,s=/^v[0-5]\./.test(o),c=r(46674);function l(e){return e&&"realpath"===e.syscall&&("ELOOP"===e.code||"ENOMEM"===e.code||"ENAMETOOLONG"===e.code)}function u(e,t,r){if(s)return i(e,t,r);"function"==typeof t&&(r=t,t=null),i(e,t,(function(n,i){l(n)?c.realpath(e,t,r):r(n,i)}))}function d(e,t){if(s)return a(e,t);try{return a(e,t)}catch(r){if(l(r))return c.realpathSync(e,t);throw r}}},46674:(e,t,r)=>{var n=r(16928),i="win32"===process.platform,a=r(79896),o=process.env.NODE_DEBUG&&/fs/.test(process.env.NODE_DEBUG);function s(e){return"function"==typeof e?e:function(){var e;if(o){var t=new Error;e=function(e){e&&(t.message=e.message,r(e=t))}}else e=r;return e;function r(e){if(e){if(process.throwDeprecation)throw e;if(!process.noDeprecation){var t="fs: missing callback "+(e.stack||e.message);process.traceDeprecation?console.trace(t):console.error(t)}}}}()}n.normalize;if(i)var c=/(.*?)(?:[\/\\]+|$)/g;else c=/(.*?)(?:[\/]+|$)/g;if(i)var l=/^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/;else l=/^[\/]*/;t.realpathSync=function(e,t){if(e=n.resolve(e),t&&Object.prototype.hasOwnProperty.call(t,e))return t[e];var r,o,s,u,d=e,p={},f={};function m(){var t=l.exec(e);r=t[0].length,o=t[0],s=t[0],u="",i&&!f[s]&&(a.lstatSync(s),f[s]=!0)}for(m();r<e.length;){c.lastIndex=r;var g=c.exec(e);if(u=o,o+=g[0],s=u+g[1],r=c.lastIndex,!(f[s]||t&&t[s]===s)){var _;if(t&&Object.prototype.hasOwnProperty.call(t,s))_=t[s];else{var h=a.lstatSync(s);if(!h.isSymbolicLink()){f[s]=!0,t&&(t[s]=s);continue}var y=null;if(!i){var v=h.dev.toString(32)+":"+h.ino.toString(32);p.hasOwnProperty(v)&&(y=p[v])}null===y&&(a.statSync(s),y=a.readlinkSync(s)),_=n.resolve(u,y),t&&(t[s]=_),i||(p[v]=y)}e=n.resolve(_,e.slice(r)),m()}}return t&&(t[d]=e),e},t.realpath=function(e,t,r){if("function"!=typeof r&&(r=s(t),t=null),e=n.resolve(e),t&&Object.prototype.hasOwnProperty.call(t,e))return process.nextTick(r.bind(null,null,t[e]));var o,u,d,p,f=e,m={},g={};function _(){var t=l.exec(e);o=t[0].length,u=t[0],d=t[0],p="",i&&!g[d]?a.lstat(d,(function(e){if(e)return r(e);g[d]=!0,h()})):process.nextTick(h)}function h(){if(o>=e.length)return t&&(t[f]=e),r(null,e);c.lastIndex=o;var n=c.exec(e);return p=u,u+=n[0],d=p+n[1],o=c.lastIndex,g[d]||t&&t[d]===d?process.nextTick(h):t&&Object.prototype.hasOwnProperty.call(t,d)?b(t[d]):a.lstat(d,y)}function y(e,n){if(e)return r(e);if(!n.isSymbolicLink())return g[d]=!0,t&&(t[d]=d),process.nextTick(h);if(!i){var o=n.dev.toString(32)+":"+n.ino.toString(32);if(m.hasOwnProperty(o))return v(null,m[o],d)}a.stat(d,(function(e){if(e)return r(e);a.readlink(d,(function(e,t){i||(m[o]=t),v(e,t)}))}))}function v(e,i,a){if(e)return r(e);var o=n.resolve(p,i);t&&(t[a]=o),b(o)}function b(t){e=n.resolve(t,e.slice(o)),_()}_()}},41723:(e,t,r)=>{r(40983),r(13942),t.Writer=r(89510),t.ZH={Reader:r(64315),Writer:r(37291)},t.ig={Reader:r(61468),Writer:r(75064)},t.N_={Reader:r(65657),Writer:r(55509)},t.by={Reader:r(58349),Writer:r(67225)},t.ig.Reader,t.ZH.Reader,t.N_.Reader,t.by.Reader,t.Writer.Dir=t.ig.Writer,t.Writer.File=t.ZH.Writer,t.Writer.Link=t.N_.Writer,t.Writer.Proxy=t.by.Writer,r(65243)},40983:(e,t,r)=>{e.exports=i;var n=r(2203).Stream;function i(){n.call(this)}function a(e,t,r){return e instanceof Error||(e=new Error(e)),e.code=e.code||t,e.path=e.path||r.path,e.fstream_type=e.fstream_type||r.type,e.fstream_path=e.fstream_path||r.path,r._path!==r.path&&(e.fstream_unc_path=e.fstream_unc_path||r._path),r.linkpath&&(e.fstream_linkpath=e.fstream_linkpath||r.linkpath),e.fstream_class=e.fstream_class||r.constructor.name,e.fstream_stack=e.fstream_stack||(new Error).stack.split(/\n/).slice(3).map((function(e){return e.replace(/^ {4}at /,"")})),e}r(72017)(i,n),i.prototype.on=function(e,t){return"ready"===e&&this.ready?process.nextTick(t.bind(this)):n.prototype.on.call(this,e,t),this},i.prototype.abort=function(){this._aborted=!0,this.emit("abort")},i.prototype.destroy=function(){},i.prototype.warn=function(e,t){var r=this,n=a(e,t,r);r.listeners("warn")?r.emit("warn",n):console.error("%s %s\npath = %s\nsyscall = %s\nfstream_type = %s\nfstream_path = %s\nfstream_unc_path = %s\nfstream_class = %s\nfstream_stack =\n%s\n",t||"UNKNOWN",n.stack,n.path,n.syscall,n.fstream_type,n.fstream_path,n.fstream_unc_path,n.fstream_class,n.fstream_stack.join("\n"))},i.prototype.info=function(e,t){this.emit("info",e,t)},i.prototype.error=function(e,t,r){var n=a(e,t,this);if(r)throw n;this.emit("error",n)}},65243:e=>{e.exports=function e(t){if(t._collected)return;if(t._paused)return t.on("resume",e.bind(null,t));t._collected=!0,t.pause(),t.on("data",n),t.on("end",n);var r=[];function n(e){"string"==typeof e&&(e=new Buffer(e)),Buffer.isBuffer(e)&&!e.length||r.push(e)}t.on("entry",a);var i=[];function a(t){e(t),i.push(t)}t.on("proxy",(function(e){e.pause()})),t.pipe=(o=t.pipe,function(e){var s=0;return function c(){var l=i[s++];if(!l)return t.removeListener("entry",a),t.removeListener("data",n),t.removeListener("end",n),t.pipe=o,e&&t.pipe(e),r.forEach((function(e){e?t.emit("data",e):t.emit("end")})),void t.resume();l.on("end",c),e?e.add(l):t.emit("entry",l)}(),e});var o}},61468:(e,t,r)=>{e.exports=c;var n=r(63735),i=r(72017),a=r(16928),o=r(13942),s=r(42613).ok;function c(e){var t=this;if(!(t instanceof c))throw new Error("DirReader must be called as constructor.");if("Directory"!==e.type||!e.Directory)throw new Error("Non-directory type "+e.type);t.entries=null,t._index=-1,t._paused=!1,t._length=-1,e.sort&&(this.sort=e.sort),o.call(this,e)}i(c,o),c.prototype._getEntries=function(){var e=this;e._gotEntries||(e._gotEntries=!0,n.readdir(e._path,(function(t,r){if(t)return e.error(t);function n(){e._length=e.entries.length,"function"==typeof e.sort&&(e.entries=e.entries.sort(e.sort.bind(e))),e._read()}e.entries=r,e.emit("entries",r),e._paused?e.once("resume",n):n()})))},c.prototype._read=function(){var e=this;if(!e.entries)return e._getEntries();if(!(e._paused||e._currentEntry||e._aborted))if(e._index++,e._index>=e.entries.length)e._ended||(e._ended=!0,e.emit("end"),e.emit("close"));else{var t=a.resolve(e._path,e.entries[e._index]);s(t!==e._path),s(e.entries[e._index]),e._currentEntry=t,n[e.props.follow?"stat":"lstat"](t,(function(r,n){if(r)return e.error(r);var i=e._proxy||e;n.path=t,n.basename=a.basename(t),n.dirname=a.dirname(t);var s=e.getChildProps.call(i,n);s.path=t,s.basename=a.basename(t),s.dirname=a.dirname(t);var c=o(s,n);e._currentEntry=c,c.on("pause",(function(t){e._paused||c._disowned||e.pause(t)})),c.on("resume",(function(t){e._paused&&!c._disowned&&e.resume(t)})),c.on("stat",(function(t){e.emit("_entryStat",c,t),c._aborted||(c._paused?c.once("resume",(function(){e.emit("entryStat",c,t)})):e.emit("entryStat",c,t))})),c.on("ready",(function t(){if(e._paused)return c.pause(e),e.once("resume",t);"Socket"===c.type?e.emit("socket",c):e.emitEntry(c)}));var l=!1;function u(){l||(l=!0,e.emit("childEnd",c),e.emit("entryEnd",c),e._currentEntry=null,e._paused||e._read())}c.on("close",u),c.on("disown",u),c.on("error",(function(t){c._swallowErrors?(e.warn(t),c.emit("end"),c.emit("close")):e.emit("error",t)})),["child","childEnd","warn"].forEach((function(t){c.on(t,e.emit.bind(e,t))}))}))}},c.prototype.disown=function(e){e.emit("beforeDisown"),e._disowned=!0,e.parent=e.root=null,e===this._currentEntry&&(this._currentEntry=null),e.emit("disown")},c.prototype.getChildProps=function(){return{depth:this.depth+1,root:this.root||this,parent:this,follow:this.follow,filter:this.filter,sort:this.props.sort,hardlinks:this.props.hardlinks}},c.prototype.pause=function(e){var t=this;t._paused||(e=e||t,t._paused=!0,t._currentEntry&&t._currentEntry.pause&&t._currentEntry.pause(e),t.emit("pause",e))},c.prototype.resume=function(e){var t=this;t._paused&&(e=e||t,t._paused=!1,t.emit("resume",e),t._paused||(t._currentEntry?t._currentEntry.resume&&t._currentEntry.resume(e):t._read()))},c.prototype.emitEntry=function(e){this.emit("entry",e),this.emit("child",e)}},75064:(e,t,r)=>{e.exports=c;var n=r(89510),i=r(72017),a=r(43480),o=r(16928),s=r(65243);function c(e){var t=this;t instanceof c||t.error("DirWriter must be called as constructor.",null,!0),"Directory"===e.type&&e.Directory||t.error("Non-directory type "+e.type+" "+JSON.stringify(e),null,!0),n.call(this,e)}i(c,n),c.prototype._create=function(){var e=this;a(e._path,n.dirmode,(function(t){if(t)return e.error(t);e.ready=!0,e.emit("ready"),e._process()}))},c.prototype.write=function(){return!0},c.prototype.end=function(){this._ended=!0,this._process()},c.prototype.add=function(e){var t=this;return s(e),!t.ready||t._currentEntry?(t._buffer.push(e),!1):t._ended?t.error("add after end"):(t._buffer.push(e),t._process(),0===this._buffer.length)},c.prototype._process=function(){var e=this;if(!e._processing){var t=e._buffer.shift();if(!t)return e.emit("drain"),void(e._ended&&e._finish());e._processing=!0,e.emit("entry",t);var r,i=t;do{if((r=i._path||i.path)===e.root._path||r===e._path||r&&0===r.indexOf(e._path))return e._processing=!1,t._collected&&t.pipe(),e._process();i=i.parent}while(i);var a={parent:e,root:e.root||e,type:t.type,depth:e.depth+1};r=t._path||t.path||t.props.path,t.parent&&(r=r.substr(t.parent._path.length+1)),a.path=o.join(e.path,o.join("/",r)),a.filter=e.filter,Object.keys(t.props).forEach((function(e){a.hasOwnProperty(e)||(a[e]=t.props[e])}));var s=e._currentChild=new n(a);s.on("ready",(function(){t.pipe(s),t.resume()})),s.on("error",(function(t){s._swallowErrors?(e.warn(t),s.emit("end"),s.emit("close")):e.emit("error",t)})),s.on("close",(function(){if(c)return;c=!0,e._currentChild=null,e._processing=!1,e._process()}));var c=!1}}},64315:(e,t,r)=>{e.exports=c;var n=r(63735),i=r(72017),a=r(13942),o={EOF:!0},s={CLOSE:!0};function c(e){var t=this;if(!(t instanceof c))throw new Error("FileReader must be called as constructor.");if(!("Link"===e.type&&e.Link||"File"===e.type&&e.File))throw new Error("Non-file type "+e.type);t._buffer=[],t._bytesEmitted=0,a.call(t,e)}i(c,a),c.prototype._getStream=function(){var e=this,t=e._stream=n.createReadStream(e._path,e.props);e.props.blksize&&(t.bufferSize=e.props.blksize),t.on("open",e.emit.bind(e,"open")),t.on("data",(function(t){e._bytesEmitted+=t.length,t.length&&(e._paused||e._buffer.length?(e._buffer.push(t),e._read()):e.emit("data",t))})),t.on("end",(function(){e._paused||e._buffer.length?(e._buffer.push(o),e._read()):e.emit("end"),e._bytesEmitted!==e.props.size&&e.error("Didn't get expected byte count\nexpect: "+e.props.size+"\nactual: "+e._bytesEmitted)})),t.on("close",(function(){e._paused||e._buffer.length?(e._buffer.push(s),e._read()):e.emit("close")})),t.on("error",(function(t){e.emit("error",t)})),e._read()},c.prototype._read=function(){var e=this;if(!e._paused){if(!e._stream)return e._getStream();if(e._buffer.length){for(var t=e._buffer,r=0,n=t.length;r<n;r++){var i=t[r];if(i===o?e.emit("end"):i===s?e.emit("close"):e.emit("data",i),e._paused)return void(e._buffer=t.slice(r))}e._buffer.length=0}}},c.prototype.pause=function(e){var t=this;t._paused||(e=e||t,t._paused=!0,t._stream&&t._stream.pause(),t.emit("pause",e))},c.prototype.resume=function(e){var t=this;t._paused&&(e=e||t,t.emit("resume",e),t._paused=!1,t._stream&&t._stream.resume(),t._read())}},37291:(e,t,r)=>{e.exports=s;var n=r(63735),i=r(89510),a=r(72017),o={};function s(e){var t=this;if(!(t instanceof s))throw new Error("FileWriter must be called as constructor.");if("File"!==e.type||!e.File)throw new Error("Non-file type "+e.type);t._buffer=[],t._bytesWritten=0,i.call(this,e)}a(s,i),s.prototype._create=function(){var e=this;if(!e._stream){var t={};e.props.flags&&(t.flags=e.props.flags),t.mode=i.filemode,e._old&&e._old.blksize&&(t.bufferSize=e._old.blksize),e._stream=n.createWriteStream(e._path,t),e._stream.on("open",(function(){e.ready=!0,e._buffer.forEach((function(t){t===o?e._stream.end():e._stream.write(t)})),e.emit("ready"),e.emit("drain")})),e._stream.on("error",(function(t){e.emit("error",t)})),e._stream.on("drain",(function(){e.emit("drain")})),e._stream.on("close",(function(){e._finish()}))}},s.prototype.write=function(e){var t=this;if(t._bytesWritten+=e.length,!t.ready){if(!Buffer.isBuffer(e)&&"string"!=typeof e)throw new Error("invalid write data");return t._buffer.push(e),!1}var r=t._stream.write(e);return!1===r&&t._stream._queue?t._stream._queue.length<=2:r},s.prototype.end=function(e){var t=this;return e&&t.write(e),t.ready?t._stream.end():(t._buffer.push(o),!1)},s.prototype._finish=function(){var e=this;"number"==typeof e.size&&e._bytesWritten!==e.size&&e.error("Did not get expected byte count.\nexpect: "+e.size+"\nactual: "+e._bytesWritten),i.prototype._finish.call(e)}},54186:e=>{e.exports=function(e){var t,r=["Directory","File","SymbolicLink","Link","BlockDevice","CharacterDevice","FIFO","Socket"];if(e.type&&-1!==r.indexOf(e.type))return e[e.type]=!0,e.type;for(var n=0,i=r.length;n<i;n++){var a=e[t=r[n]]||e["is"+t];if("function"==typeof a&&(a=a.call(e)),a)return e[t]=!0,e.type=t,t}return null}},65657:(e,t,r)=>{e.exports=o;var n=r(63735),i=r(72017),a=r(13942);function o(e){if(!(this instanceof o))throw new Error("LinkReader must be called as constructor.");if(!("Link"===e.type&&e.Link||"SymbolicLink"===e.type&&e.SymbolicLink))throw new Error("Non-link type "+e.type);a.call(this,e)}i(o,a),o.prototype._stat=function(e){var t=this;n.readlink(t._path,(function(r,n){if(r)return t.error(r);t.linkpath=t.props.linkpath=n,t.emit("linkpath",n),a.prototype._stat.call(t,e)}))},o.prototype._read=function(){var e=this;e._paused||e._ended||(e.emit("end"),e.emit("close"),e._ended=!0)}},55509:(e,t,r)=>{e.exports=c;var n=r(63735),i=r(89510),a=r(72017),o=r(16928),s=r(4239);function c(e){if(!(this instanceof c))throw new Error("LinkWriter must be called as constructor.");if(!("Link"===e.type&&e.Link||"SymbolicLink"===e.type&&e.SymbolicLink))throw new Error("Non-link type "+e.type);""===e.linkpath&&(e.linkpath="."),e.linkpath||this.error("Need linkpath property to create "+e.type),i.call(this,e)}function l(e,t,r){s(e._path,(function(i){if(i)return e.error(i);!function(e,t,r){n[r](t,e._path,(function(t){if(t){if("ENOENT"!==t.code&&"EACCES"!==t.code&&"EPERM"!==t.code||"win32"!==process.platform)return e.error(t);e.ready=!0,e.emit("ready"),e.emit("end"),e.emit("close"),e.end=e._finish=function(){}}u(e)}))}(e,t,r)}))}function u(e){e.ready=!0,e.emit("ready"),e._ended&&!e._finished&&e._finish()}a(c,i),c.prototype._create=function(){var e=this,t="Link"===e.type||"win32"===process.platform,r=t?"link":"symlink",i=t?o.resolve(e.dirname,e.linkpath):e.linkpath;if(t)return l(e,i,r);n.readlink(e._path,(function(t,n){if(n&&n===i)return u(e);l(e,i,r)}))},c.prototype.end=function(){this._ended=!0,this.ready&&(this._finished=!0,this._finish())}},58349:(e,t,r)=>{e.exports=s;var n=r(13942),i=r(54186),a=r(72017),o=r(63735);function s(e){var t=this;if(!(t instanceof s))throw new Error("ProxyReader must be called as constructor.");t.props=e,t._buffer=[],t.ready=!1,n.call(t,e)}a(s,n),s.prototype._stat=function(){var e=this,t=e.props,r=t.follow?"stat":"lstat";o[r](t.path,(function(r,a){var o;o=r||!a?"File":i(a),t[o]=!0,t.type=e.type=o,e._old=a,e._addProxy(n(t,a))}))},s.prototype._addProxy=function(e){var t=this;if(t._proxyTarget)return t.error("proxy already set");t._proxyTarget=e,e._proxy=t,["error","data","end","close","linkpath","entry","entryEnd","child","childEnd","warn","stat"].forEach((function(r){e.on(r,t.emit.bind(t,r))})),t.emit("proxy",e),e.on("ready",(function(){t.ready=!0,t.emit("ready")}));var r=t._buffer;t._buffer.length=0,r.forEach((function(t){e[t[0]].apply(e,t[1])}))},s.prototype.pause=function(){return!!this._proxyTarget&&this._proxyTarget.pause()},s.prototype.resume=function(){return!!this._proxyTarget&&this._proxyTarget.resume()}},67225:(e,t,r)=>{e.exports=c;var n=r(89510),i=r(54186),a=r(72017),o=r(65243),s=r(79896);function c(e){var t=this;if(!(t instanceof c))throw new Error("ProxyWriter must be called as constructor.");t.props=e,t._needDrain=!1,n.call(t,e)}a(c,n),c.prototype._stat=function(){var e=this,t=e.props,r=t.follow?"stat":"lstat";s[r](t.path,(function(r,a){var o;o=r||!a?"File":i(a),t[o]=!0,t.type=e.type=o,e._old=a,e._addProxy(n(t,a))}))},c.prototype._addProxy=function(e){var t=this;if(t._proxy)return t.error("proxy already set");t._proxy=e,["ready","error","close","pipe","drain","warn"].forEach((function(r){e.on(r,t.emit.bind(t,r))})),t.emit("proxy",e),t._buffer.forEach((function(t){e[t[0]].apply(e,t[1])})),t._buffer.length=0,t._needsDrain&&t.emit("drain")},c.prototype.add=function(e){return o(e),this._proxy?this._proxy.add(e):(this._buffer.push(["add",[e]]),this._needDrain=!0,!1)},c.prototype.write=function(e){return this._proxy?this._proxy.write(e):(this._buffer.push(["write",[e]]),this._needDrain=!0,!1)},c.prototype.end=function(e){return this._proxy?this._proxy.end(e):(this._buffer.push(["end",[e]]),!1)}},13942:(e,t,r)=>{e.exports=d;var n=r(63735),i=r(2203).Stream,a=r(72017),o=r(16928),s=r(54186),c=d.hardLinks={},l=r(40983);a(d,l);var u=r(65657);function d(e,t){var n,i,a=this;if(!(a instanceof d))return new d(e,t);switch("string"==typeof e&&(e={path:e}),e.type&&"function"==typeof e.type?i=n=e.type:(n=s(e),i=d),t&&!n&&(e[n=s(t)]=!0,e.type=n),n){case"Directory":i=r(61468);break;case"Link":case"File":i=r(64315);break;case"SymbolicLink":i=u;break;case"Socket":i=r(36206);break;case null:i=r(58349)}if(!(a instanceof i))return new i(e);l.call(a),e.path||a.error("Must provide a path",null,!0),a.readable=!0,a.writable=!1,a.type=n,a.props=e,a.depth=e.depth=e.depth||0,a.parent=e.parent||null,a.root=e.root||e.parent&&e.parent.root||a,a._path=a.path=o.resolve(e.path),"win32"===process.platform&&(a.path=a._path=a.path.replace(/\?/g,"_"),a._path.length>=260&&(a._swallowErrors=!0,a._path="\\\\?\\"+a.path.replace(/\//g,"\\"))),a.basename=e.basename=o.basename(a.path),a.dirname=e.dirname=o.dirname(a.path),e.parent=e.root=null,a.size=e.size,a.filter="function"==typeof e.filter?e.filter:null,"alpha"===e.sort&&(e.sort=p),a._stat(t)}function p(e,t){return e===t?0:e.toLowerCase()>t.toLowerCase()?1:e.toLowerCase()<t.toLowerCase()?-1:e>t?1:-1}d.prototype._stat=function(e){var t=this,r=t.props,i=r.follow?"stat":"lstat";function a(e,n){if(e)return t.error(e);if(Object.keys(n).forEach((function(e){r[e]=n[e]})),void 0!==t.size&&r.size!==t.size)return t.error("incorrect size");t.size=r.size;var i=s(r);if(!1!==r.hardlinks&&"Directory"!==i&&r.nlink&&r.nlink>1){var a=r.dev+":"+r.ino;c[a]!==t._path&&c[a]?(i=t.type=t.props.type="Link",t.Link=t.props.Link=!0,t.linkpath=t.props.linkpath=c[a],t._stat=t._read=u.prototype._read):c[a]=t._path}if(t.type&&t.type!==i&&t.error("Unexpected type: "+i),t.filter){var o=t._proxy||t;if(!t.filter.call(o,o,r))return void(t._disowned||(t.abort(),t.emit("end"),t.emit("close")))}var l=["_stat","stat","ready"],d=0;!function e(){if(t._aborted)return t.emit("end"),void t.emit("close");if(t._paused&&"Directory"!==t.type)t.once("resume",e);else{var n=l[d++];if(!n)return t._read();t.emit(n,r),e()}}()}e?process.nextTick(a.bind(null,null,e)):n[i](t._path,a)},d.prototype.pipe=function(e){var t=this;return"function"==typeof e.add&&t.on("entry",(function(r){!1===e.add(r)&&t.pause()})),i.prototype.pipe.apply(this,arguments)},d.prototype.pause=function(e){this._paused=!0,e=e||this,this.emit("pause",e),this._stream&&this._stream.pause(e)},d.prototype.resume=function(e){this._paused=!1,e=e||this,this.emit("resume",e),this._stream&&this._stream.resume(e),this._read()},d.prototype._read=function(){this.error("Cannot read unknown type: "+this.type)}},36206:(e,t,r)=>{e.exports=a;var n=r(72017),i=r(13942);function a(e){if(!(this instanceof a))throw new Error("SocketReader must be called as constructor.");if("Socket"!==e.type||!e.Socket)throw new Error("Non-socket type "+e.type);i.call(this,e)}n(a,i),a.prototype._read=function(){var e=this;e._paused||e._ended||(e.emit("end"),e.emit("close"),e._ended=!0)}},89510:(e,t,r)=>{e.exports=g;var n=r(63735),i=r(72017),a=r(4239),o=r(43480),s=r(16928),c="win32"===process.platform?0:process.umask(),l=r(54186),u=r(40983);i(g,u),g.dirmode=parseInt("0777",8)&~c,g.filemode=parseInt("0666",8)&~c;var d=r(75064),p=r(55509),f=r(37291),m=r(67225);function g(e,t){var r=this;"string"==typeof e&&(e={path:e});var n=g;switch(l(e)){case"Directory":n=d;break;case"File":n=f;break;case"Link":case"SymbolicLink":n=p;break;default:n=m}if(!(r instanceof n))return new n(e);u.call(r),e.path||r.error("Must provide a path",null,!0),r.type=e.type,r.props=e,r.depth=e.depth||0,r.clobber=!1!==e.clobber||e.clobber,r.parent=e.parent||null,r.root=e.root||e.parent&&e.parent.root||r,r._path=r.path=s.resolve(e.path),"win32"===process.platform&&(r.path=r._path=r.path.replace(/\?/g,"_"),r._path.length>=260&&(r._swallowErrors=!0,r._path="\\\\?\\"+r.path.replace(/\//g,"\\"))),r.basename=s.basename(e.path),r.dirname=s.dirname(e.path),r.linkpath=e.linkpath||null,e.parent=e.root=null,r.size=e.size,"string"==typeof e.mode&&(e.mode=parseInt(e.mode,8)),r.readable=!1,r.writable=!0,r._buffer=[],r.ready=!1,r.filter="function"==typeof e.filter?e.filter:null,r._stat(t)}function _(e){o(s.dirname(e._path),g.dirmode,(function(t,r){return t?e.error(t):(e._madeDir=r,e._create())}))}function h(e,t,r,i,a){var o=t.mode,s=t.follow||"SymbolicLink"!==e.type?"chmod":"lchmod";if(!n[s])return a();if("number"!=typeof o)return a();var c=r.mode&parseInt("0777",8);if((o&=parseInt("0777",8))===c)return a();n[s](i,o,a)}function y(e,t,r,i,a){if("win32"===process.platform)return a();if(!process.getuid||0!==process.getuid())return a();if("number"!=typeof t.uid&&"number"!=typeof t.gid)return a();if(r.uid===t.uid&&r.gid===t.gid)return a();var o=e.props.follow||"SymbolicLink"!==e.type?"chown":"lchown";if(!n[o])return a();"number"!=typeof t.uid&&(t.uid=r.uid),"number"!=typeof t.gid&&(t.gid=r.gid),n[o](i,t.uid,t.gid,a)}function v(e,t,r,i,a){if(!n.utimes||"win32"===process.platform)return a();var o=t.follow||"SymbolicLink"!==e.type?"utimes":"lutimes";if("lutimes"!==o||n[o]||(o="utimes"),!n[o])return a();var s=r.atime,c=r.mtime,l=t.atime,u=t.mtime;if(void 0===l&&(l=s),void 0===u&&(u=c),k(l)||(l=new Date(l)),k(u)||(l=new Date(u)),l.getTime()===s.getTime()&&u.getTime()===c.getTime())return a();n[o](i,l,u,a)}function b(e,t,r){var i=e._madeDir,a=s.dirname(t);!function(e,t,r){var i={};Object.keys(e.props).forEach((function(t){i[t]=e.props[t],"mode"===t&&"Directory"!==e.type&&(i[t]=i[t]|parseInt("0111",8))}));var a=3,o=null;function s(e){if(!o)return e?r(o=e):0==--a?r():void 0}n.stat(t,(function(n,a){if(n)return r(o=n);h(e,i,a,t,s),y(e,i,a,t,s),v(e,i,a,t,s)}))}(e,a,(function(t){return t?r(t):a===i?r():void b(e,a,r)}))}function k(e){return"object"==typeof e&&"[object Date]"===function(e){return Object.prototype.toString.call(e)}(e)}g.prototype._create=function(){var e=this;n[e.props.follow?"stat":"lstat"](e._path,(function(t){if(t)return e.warn("Cannot create "+e._path+"\nUnsupported type: "+e.type,"ENOTSUP");e._finish()}))},g.prototype._stat=function(e){var t=this,r=t.props.follow?"stat":"lstat",i=t._proxy||t;function o(e,r){return t.filter&&!t.filter.call(i,i,r)?(t._aborted=!0,t.emit("end"),void t.emit("close")):e||!r?_(t):(t._old=r,l(r)!==t.type||"File"===t.type&&r.nlink>1?a(t._path,(function(e){if(e)return t.error(e);t._old=null,_(t)})):void _(t))}e?o(null,e):n[r](t._path,o)},g.prototype._finish=function(){var e=this;if(e._finishing);else{e._finishing=!0;var t=0,r=null,i=!1;if(e._old)e._old.atime=new Date(0),e._old.mtime=new Date(0),o(e._old);else{var a=e.props.follow?"stat":"lstat";n[a](e._path,(function(t,r){if(t)return"ENOENT"!==t.code||"Link"!==e.type&&"SymbolicLink"!==e.type||"win32"!==process.platform?e.error(t):(e.ready=!0,e.emit("ready"),e.emit("end"),e.emit("close"),void(e.end=e._finish=function(){}));o(e._old=r)}))}}function o(r){t+=3,h(e,e.props,r,e._path,s("chmod")),y(e,e.props,r,e._path,s("chown")),v(e,e.props,r,e._path,s("utimes"))}function s(n){return function(a){if(!r){if(a)return a.fstream_finish_call=n,e.error(r=a);if(!(--t>0||i)){if(i=!0,!e._madeDir)return o();b(e,e._path,o)}}function o(t){if(t)return t.fstream_finish_call="setupMadeDir",e.error(t);e.emit("end"),e.emit("close")}}}},g.prototype.pipe=function(){this.error("Can't pipe from writable stream")},g.prototype.add=function(){this.error("Can't add to non-Directory type")},g.prototype.write=function(){return!0}},61198:(e,t,r)=>{function n(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.setopts=function(e,t,r){r||(r={});if(r.matchBase&&-1===t.indexOf("/")){if(r.noglobstar)throw new Error("base matching requires globstar");t="**/"+t}e.silent=!!r.silent,e.pattern=t,e.strict=!1!==r.strict,e.realpath=!!r.realpath,e.realpathCache=r.realpathCache||Object.create(null),e.follow=!!r.follow,e.dot=!!r.dot,e.mark=!!r.mark,e.nodir=!!r.nodir,e.nodir&&(e.mark=!0);e.sync=!!r.sync,e.nounique=!!r.nounique,e.nonull=!!r.nonull,e.nosort=!!r.nosort,e.nocase=!!r.nocase,e.stat=!!r.stat,e.noprocess=!!r.noprocess,e.absolute=!!r.absolute,e.fs=r.fs||i,e.maxLength=r.maxLength||1/0,e.cache=r.cache||Object.create(null),e.statCache=r.statCache||Object.create(null),e.symlinks=r.symlinks||Object.create(null),function(e,t){e.ignore=t.ignore||[],Array.isArray(e.ignore)||(e.ignore=[e.ignore]);e.ignore.length&&(e.ignore=e.ignore.map(u))}(e,r),e.changedCwd=!1;var o=process.cwd();n(r,"cwd")?(e.cwd=a.resolve(r.cwd),e.changedCwd=e.cwd!==o):e.cwd=o;e.root=r.root||a.resolve(e.cwd,"/"),e.root=a.resolve(e.root),"win32"===process.platform&&(e.root=e.root.replace(/\\/g,"/"));e.cwdAbs=s(e.cwd)?e.cwd:d(e,e.cwd),"win32"===process.platform&&(e.cwdAbs=e.cwdAbs.replace(/\\/g,"/"));e.nomount=!!r.nomount,r.nonegate=!0,r.nocomment=!0,r.allowWindowsEscape=!1,e.minimatch=new c(t,r),e.options=e.minimatch.options},t.ownProp=n,t.makeAbs=d,t.finish=function(e){for(var t=e.nounique,r=t?[]:Object.create(null),n=0,i=e.matches.length;n<i;n++){var a=e.matches[n];if(a&&0!==Object.keys(a).length){var o=Object.keys(a);t?r.push.apply(r,o):o.forEach((function(e){r[e]=!0}))}else if(e.nonull){var s=e.minimatch.globSet[n];t?r.push(s):r[s]=!0}}t||(r=Object.keys(r));e.nosort||(r=r.sort(l));if(e.mark){for(n=0;n<r.length;n++)r[n]=e._mark(r[n]);e.nodir&&(r=r.filter((function(t){var r=!/\/$/.test(t),n=e.cache[t]||e.cache[d(e,t)];return r&&n&&(r="DIR"!==n&&!Array.isArray(n)),r})))}e.ignore.length&&(r=r.filter((function(t){return!p(e,t)})));e.found=r},t.mark=function(e,t){var r=d(e,t),n=e.cache[r],i=t;if(n){var a="DIR"===n||Array.isArray(n),o="/"===t.slice(-1);if(a&&!o?i+="/":!a&&o&&(i=i.slice(0,-1)),i!==t){var s=d(e,i);e.statCache[s]=e.statCache[r],e.cache[s]=e.cache[r]}}return i},t.isIgnored=p,t.childrenIgnored=function(e,t){return!!e.ignore.length&&e.ignore.some((function(e){return!(!e.gmatcher||!e.gmatcher.match(t))}))};var i=r(79896),a=r(16928),o=r(94027),s=r(52641),c=o.Minimatch;function l(e,t){return e.localeCompare(t,"en")}function u(e){var t=null;if("/**"===e.slice(-3)){var r=e.replace(/(\/\*\*)+$/,"");t=new c(r,{dot:!0})}return{matcher:new c(e,{dot:!0}),gmatcher:t}}function d(e,t){var r=t;return r="/"===t.charAt(0)?a.join(e.root,t):s(t)||""===t?t:e.changedCwd?a.resolve(e.cwd,t):a.resolve(t),"win32"===process.platform&&(r=r.replace(/\\/g,"/")),r}function p(e,t){return!!e.ignore.length&&e.ignore.some((function(e){return e.matcher.match(t)||!(!e.gmatcher||!e.gmatcher.match(t))}))}},53577:(e,t,r)=>{e.exports=y;var n=r(61455),i=r(94027),a=(i.Minimatch,r(72017)),o=r(24434).EventEmitter,s=r(16928),c=r(42613),l=r(52641),u=r(34700),d=r(61198),p=d.setopts,f=d.ownProp,m=r(53423),g=(r(39023),d.childrenIgnored),_=d.isIgnored,h=r(83519);function y(e,t,r){if("function"==typeof t&&(r=t,t={}),t||(t={}),t.sync){if(r)throw new TypeError("callback provided to sync glob");return u(e,t)}return new b(e,t,r)}y.sync=u;var v=y.GlobSync=u.GlobSync;function b(e,t,r){if("function"==typeof t&&(r=t,t=null),t&&t.sync){if(r)throw new TypeError("callback provided to sync glob");return new v(e,t)}if(!(this instanceof b))return new b(e,t,r);p(this,e,t),this._didRealPath=!1;var n=this.minimatch.set.length;this.matches=new Array(n),"function"==typeof r&&(r=h(r),this.on("error",r),this.on("end",(function(e){r(null,e)})));var i=this;if(this._processing=0,this._emitQueue=[],this._processQueue=[],this.paused=!1,this.noprocess)return this;if(0===n)return s();for(var a=!0,o=0;o<n;o++)this._process(this.minimatch.set[o],o,!1,s);function s(){--i._processing,i._processing<=0&&(a?process.nextTick((function(){i._finish()})):i._finish())}a=!1}y.glob=y,y.hasMagic=function(e,t){var r=function(e,t){if(null===t||"object"!=typeof t)return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e}({},t);r.noprocess=!0;var n=new b(e,r).minimatch.set;if(!e)return!1;if(n.length>1)return!0;for(var i=0;i<n[0].length;i++)if("string"!=typeof n[0][i])return!0;return!1},y.Glob=b,a(b,o),b.prototype._finish=function(){if(c(this instanceof b),!this.aborted){if(this.realpath&&!this._didRealpath)return this._realpath();d.finish(this),this.emit("end",this.found)}},b.prototype._realpath=function(){if(!this._didRealpath){this._didRealpath=!0;var e=this.matches.length;if(0===e)return this._finish();for(var t=this,r=0;r<this.matches.length;r++)this._realpathSet(r,n)}function n(){0==--e&&t._finish()}},b.prototype._realpathSet=function(e,t){var r=this.matches[e];if(!r)return t();var i=Object.keys(r),a=this,o=i.length;if(0===o)return t();var s=this.matches[e]=Object.create(null);i.forEach((function(r,i){r=a._makeAbs(r),n.realpath(r,a.realpathCache,(function(n,i){n?"stat"===n.syscall?s[r]=!0:a.emit("error",n):s[i]=!0,0==--o&&(a.matches[e]=s,t())}))}))},b.prototype._mark=function(e){return d.mark(this,e)},b.prototype._makeAbs=function(e){return d.makeAbs(this,e)},b.prototype.abort=function(){this.aborted=!0,this.emit("abort")},b.prototype.pause=function(){this.paused||(this.paused=!0,this.emit("pause"))},b.prototype.resume=function(){if(this.paused){if(this.emit("resume"),this.paused=!1,this._emitQueue.length){var e=this._emitQueue.slice(0);this._emitQueue.length=0;for(var t=0;t<e.length;t++){var r=e[t];this._emitMatch(r[0],r[1])}}if(this._processQueue.length){var n=this._processQueue.slice(0);this._processQueue.length=0;for(t=0;t<n.length;t++){var i=n[t];this._processing--,this._process(i[0],i[1],i[2],i[3])}}}},b.prototype._process=function(e,t,r,n){if(c(this instanceof b),c("function"==typeof n),!this.aborted)if(this._processing++,this.paused)this._processQueue.push([e,t,r,n]);else{for(var a,o=0;"string"==typeof e[o];)o++;switch(o){case e.length:return void this._processSimple(e.join("/"),t,n);case 0:a=null;break;default:a=e.slice(0,o).join("/")}var s,u=e.slice(o);null===a?s=".":l(a)||l(e.map((function(e){return"string"==typeof e?e:"[*]"})).join("/"))?(a&&l(a)||(a="/"+a),s=a):s=a;var d=this._makeAbs(s);if(g(this,s))return n();u[0]===i.GLOBSTAR?this._processGlobStar(a,s,d,u,t,r,n):this._processReaddir(a,s,d,u,t,r,n)}},b.prototype._processReaddir=function(e,t,r,n,i,a,o){var s=this;this._readdir(r,a,(function(c,l){return s._processReaddir2(e,t,r,n,i,a,l,o)}))},b.prototype._processReaddir2=function(e,t,r,n,i,a,o,c){if(!o)return c();for(var l=n[0],u=!!this.minimatch.negate,d=l._glob,p=this.dot||"."===d.charAt(0),f=[],m=0;m<o.length;m++){if("."!==(_=o[m]).charAt(0)||p)(u&&!e?!_.match(l):_.match(l))&&f.push(_)}var g=f.length;if(0===g)return c();if(1===n.length&&!this.mark&&!this.stat){this.matches[i]||(this.matches[i]=Object.create(null));for(m=0;m<g;m++){var _=f[m];e&&(_="/"!==e?e+"/"+_:e+_),"/"!==_.charAt(0)||this.nomount||(_=s.join(this.root,_)),this._emitMatch(i,_)}return c()}n.shift();for(m=0;m<g;m++){_=f[m];e&&(_="/"!==e?e+"/"+_:e+_),this._process([_].concat(n),i,a,c)}c()},b.prototype._emitMatch=function(e,t){if(!this.aborted&&!_(this,t))if(this.paused)this._emitQueue.push([e,t]);else{var r=l(t)?t:this._makeAbs(t);if(this.mark&&(t=this._mark(t)),this.absolute&&(t=r),!this.matches[e][t]){if(this.nodir){var n=this.cache[r];if("DIR"===n||Array.isArray(n))return}this.matches[e][t]=!0;var i=this.statCache[r];i&&this.emit("stat",t,i),this.emit("match",t)}}},b.prototype._readdirInGlobStar=function(e,t){if(!this.aborted){if(this.follow)return this._readdir(e,!1,t);var r=this,n=m("lstat\0"+e,(function(n,i){if(n&&"ENOENT"===n.code)return t();var a=i&&i.isSymbolicLink();r.symlinks[e]=a,a||!i||i.isDirectory()?r._readdir(e,!1,t):(r.cache[e]="FILE",t())}));n&&r.fs.lstat(e,n)}},b.prototype._readdir=function(e,t,r){if(!this.aborted&&(r=m("readdir\0"+e+"\0"+t,r))){if(t&&!f(this.symlinks,e))return this._readdirInGlobStar(e,r);if(f(this.cache,e)){var n=this.cache[e];if(!n||"FILE"===n)return r();if(Array.isArray(n))return r(null,n)}this.fs.readdir(e,function(e,t,r){return function(n,i){n?e._readdirError(t,n,r):e._readdirEntries(t,i,r)}}(this,e,r))}},b.prototype._readdirEntries=function(e,t,r){if(!this.aborted){if(!this.mark&&!this.stat)for(var n=0;n<t.length;n++){var i=t[n];i="/"===e?e+i:e+"/"+i,this.cache[i]=!0}return this.cache[e]=t,r(null,t)}},b.prototype._readdirError=function(e,t,r){if(!this.aborted){switch(t.code){case"ENOTSUP":case"ENOTDIR":var n=this._makeAbs(e);if(this.cache[n]="FILE",n===this.cwdAbs){var i=new Error(t.code+" invalid cwd "+this.cwd);i.path=this.cwd,i.code=t.code,this.emit("error",i),this.abort()}break;case"ENOENT":case"ELOOP":case"ENAMETOOLONG":case"UNKNOWN":this.cache[this._makeAbs(e)]=!1;break;default:this.cache[this._makeAbs(e)]=!1,this.strict&&(this.emit("error",t),this.abort()),this.silent||console.error("glob error",t)}return r()}},b.prototype._processGlobStar=function(e,t,r,n,i,a,o){var s=this;this._readdir(r,a,(function(c,l){s._processGlobStar2(e,t,r,n,i,a,l,o)}))},b.prototype._processGlobStar2=function(e,t,r,n,i,a,o,s){if(!o)return s();var c=n.slice(1),l=e?[e]:[],u=l.concat(c);this._process(u,i,!1,s);var d=this.symlinks[r],p=o.length;if(d&&a)return s();for(var f=0;f<p;f++){if("."!==o[f].charAt(0)||this.dot){var m=l.concat(o[f],c);this._process(m,i,!0,s);var g=l.concat(o[f],n);this._process(g,i,!0,s)}}s()},b.prototype._processSimple=function(e,t,r){var n=this;this._stat(e,(function(i,a){n._processSimple2(e,t,i,a,r)}))},b.prototype._processSimple2=function(e,t,r,n,i){if(this.matches[t]||(this.matches[t]=Object.create(null)),!n)return i();if(e&&l(e)&&!this.nomount){var a=/[\/\\]$/.test(e);"/"===e.charAt(0)?e=s.join(this.root,e):(e=s.resolve(this.root,e),a&&(e+="/"))}"win32"===process.platform&&(e=e.replace(/\\/g,"/")),this._emitMatch(t,e),i()},b.prototype._stat=function(e,t){var r=this._makeAbs(e),n="/"===e.slice(-1);if(e.length>this.maxLength)return t();if(!this.stat&&f(this.cache,r)){var i=this.cache[r];if(Array.isArray(i)&&(i="DIR"),!n||"DIR"===i)return t(null,i);if(n&&"FILE"===i)return t()}var a=this.statCache[r];if(void 0!==a){if(!1===a)return t(null,a);var o=a.isDirectory()?"DIR":"FILE";return n&&"FILE"===o?t():t(null,o,a)}var s=this,c=m("stat\0"+r,(function(n,i){if(i&&i.isSymbolicLink())return s.fs.stat(r,(function(n,a){n?s._stat2(e,r,null,i,t):s._stat2(e,r,n,a,t)}));s._stat2(e,r,n,i,t)}));c&&s.fs.lstat(r,c)},b.prototype._stat2=function(e,t,r,n,i){if(r&&("ENOENT"===r.code||"ENOTDIR"===r.code))return this.statCache[t]=!1,i();var a="/"===e.slice(-1);if(this.statCache[t]=n,"/"===t.slice(-1)&&n&&!n.isDirectory())return i(null,!1,n);var o=!0;return n&&(o=n.isDirectory()?"DIR":"FILE"),this.cache[t]=this.cache[t]||o,a&&"FILE"===o?i():i(null,o,n)}},34700:(e,t,r)=>{e.exports=f,f.GlobSync=m;var n=r(61455),i=r(94027),a=(i.Minimatch,r(53577).Glob,r(39023),r(16928)),o=r(42613),s=r(52641),c=r(61198),l=c.setopts,u=c.ownProp,d=c.childrenIgnored,p=c.isIgnored;function f(e,t){if("function"==typeof t||3===arguments.length)throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167");return new m(e,t).found}function m(e,t){if(!e)throw new Error("must provide pattern");if("function"==typeof t||3===arguments.length)throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167");if(!(this instanceof m))return new m(e,t);if(l(this,e,t),this.noprocess)return this;var r=this.minimatch.set.length;this.matches=new Array(r);for(var n=0;n<r;n++)this._process(this.minimatch.set[n],n,!1);this._finish()}m.prototype._finish=function(){if(o.ok(this instanceof m),this.realpath){var e=this;this.matches.forEach((function(t,r){var i=e.matches[r]=Object.create(null);for(var a in t)try{a=e._makeAbs(a),i[n.realpathSync(a,e.realpathCache)]=!0}catch(t){if("stat"!==t.syscall)throw t;i[e._makeAbs(a)]=!0}}))}c.finish(this)},m.prototype._process=function(e,t,r){o.ok(this instanceof m);for(var n,a=0;"string"==typeof e[a];)a++;switch(a){case e.length:return void this._processSimple(e.join("/"),t);case 0:n=null;break;default:n=e.slice(0,a).join("/")}var c,l=e.slice(a);null===n?c=".":s(n)||s(e.map((function(e){return"string"==typeof e?e:"[*]"})).join("/"))?(n&&s(n)||(n="/"+n),c=n):c=n;var u=this._makeAbs(c);d(this,c)||(l[0]===i.GLOBSTAR?this._processGlobStar(n,c,u,l,t,r):this._processReaddir(n,c,u,l,t,r))},m.prototype._processReaddir=function(e,t,r,n,i,o){var s=this._readdir(r,o);if(s){for(var c=n[0],l=!!this.minimatch.negate,u=c._glob,d=this.dot||"."===u.charAt(0),p=[],f=0;f<s.length;f++){if("."!==(_=s[f]).charAt(0)||d)(l&&!e?!_.match(c):_.match(c))&&p.push(_)}var m=p.length;if(0!==m)if(1!==n.length||this.mark||this.stat){n.shift();for(f=0;f<m;f++){var g;_=p[f];g=e?[e,_]:[_],this._process(g.concat(n),i,o)}}else{this.matches[i]||(this.matches[i]=Object.create(null));for(var f=0;f<m;f++){var _=p[f];e&&(_="/"!==e.slice(-1)?e+"/"+_:e+_),"/"!==_.charAt(0)||this.nomount||(_=a.join(this.root,_)),this._emitMatch(i,_)}}}},m.prototype._emitMatch=function(e,t){if(!p(this,t)){var r=this._makeAbs(t);if(this.mark&&(t=this._mark(t)),this.absolute&&(t=r),!this.matches[e][t]){if(this.nodir){var n=this.cache[r];if("DIR"===n||Array.isArray(n))return}this.matches[e][t]=!0,this.stat&&this._stat(t)}}},m.prototype._readdirInGlobStar=function(e){if(this.follow)return this._readdir(e,!1);var t,r;try{r=this.fs.lstatSync(e)}catch(e){if("ENOENT"===e.code)return null}var n=r&&r.isSymbolicLink();return this.symlinks[e]=n,n||!r||r.isDirectory()?t=this._readdir(e,!1):this.cache[e]="FILE",t},m.prototype._readdir=function(e,t){if(t&&!u(this.symlinks,e))return this._readdirInGlobStar(e);if(u(this.cache,e)){var r=this.cache[e];if(!r||"FILE"===r)return null;if(Array.isArray(r))return r}try{return this._readdirEntries(e,this.fs.readdirSync(e))}catch(t){return this._readdirError(e,t),null}},m.prototype._readdirEntries=function(e,t){if(!this.mark&&!this.stat)for(var r=0;r<t.length;r++){var n=t[r];n="/"===e?e+n:e+"/"+n,this.cache[n]=!0}return this.cache[e]=t,t},m.prototype._readdirError=function(e,t){switch(t.code){case"ENOTSUP":case"ENOTDIR":var r=this._makeAbs(e);if(this.cache[r]="FILE",r===this.cwdAbs){var n=new Error(t.code+" invalid cwd "+this.cwd);throw n.path=this.cwd,n.code=t.code,n}break;case"ENOENT":case"ELOOP":case"ENAMETOOLONG":case"UNKNOWN":this.cache[this._makeAbs(e)]=!1;break;default:if(this.cache[this._makeAbs(e)]=!1,this.strict)throw t;this.silent||console.error("glob error",t)}},m.prototype._processGlobStar=function(e,t,r,n,i,a){var o=this._readdir(r,a);if(o){var s=n.slice(1),c=e?[e]:[],l=c.concat(s);this._process(l,i,!1);var u=o.length;if(!this.symlinks[r]||!a)for(var d=0;d<u;d++){if("."!==o[d].charAt(0)||this.dot){var p=c.concat(o[d],s);this._process(p,i,!0);var f=c.concat(o[d],n);this._process(f,i,!0)}}}},m.prototype._processSimple=function(e,t){var r=this._stat(e);if(this.matches[t]||(this.matches[t]=Object.create(null)),r){if(e&&s(e)&&!this.nomount){var n=/[\/\\]$/.test(e);"/"===e.charAt(0)?e=a.join(this.root,e):(e=a.resolve(this.root,e),n&&(e+="/"))}"win32"===process.platform&&(e=e.replace(/\\/g,"/")),this._emitMatch(t,e)}},m.prototype._stat=function(e){var t=this._makeAbs(e),r="/"===e.slice(-1);if(e.length>this.maxLength)return!1;if(!this.stat&&u(this.cache,t)){var n=this.cache[t];if(Array.isArray(n)&&(n="DIR"),!r||"DIR"===n)return n;if(r&&"FILE"===n)return!1}var i=this.statCache[t];if(!i){var a;try{a=this.fs.lstatSync(t)}catch(e){if(e&&("ENOENT"===e.code||"ENOTDIR"===e.code))return this.statCache[t]=!1,!1}if(a&&a.isSymbolicLink())try{i=this.fs.statSync(t)}catch(e){i=a}else i=a}this.statCache[t]=i;n=!0;return i&&(n=i.isDirectory()?"DIR":"FILE"),this.cache[t]=this.cache[t]||n,(!r||"FILE"!==n)&&n},m.prototype._mark=function(e){return c.mark(this,e)},m.prototype._makeAbs=function(e){return c.makeAbs(this,e)}},1283:e=>{"use strict";e.exports=function(e){if(null===e||"object"!=typeof e)return e;if(e instanceof Object)var r={__proto__:t(e)};else r=Object.create(null);return Object.getOwnPropertyNames(e).forEach((function(t){Object.defineProperty(r,t,Object.getOwnPropertyDescriptor(e,t))})),r};var t=Object.getPrototypeOf||function(e){return e.__proto__}},63735:(e,t,r)=>{var n,i,a=r(79896),o=r(69106),s=r(11995),c=r(1283),l=r(39023);function u(e,t){Object.defineProperty(e,n,{get:function(){return t}})}"function"==typeof Symbol&&"function"==typeof Symbol.for?(n=Symbol.for("graceful-fs.queue"),i=Symbol.for("graceful-fs.previous")):(n="___graceful-fs.queue",i="___graceful-fs.previous");var d,p=function(){};if(l.debuglog?p=l.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(p=function(){var e=l.format.apply(l,arguments);e="GFS4: "+e.split(/\n/).join("\nGFS4: "),console.error(e)}),!a[n]){var f=global[n]||[];u(a,f),a.close=function(e){function t(t,r){return e.call(a,t,(function(e){e||_(),"function"==typeof r&&r.apply(this,arguments)}))}return Object.defineProperty(t,i,{value:e}),t}(a.close),a.closeSync=function(e){function t(t){e.apply(a,arguments),_()}return Object.defineProperty(t,i,{value:e}),t}(a.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",(function(){p(a[n]),r(42613).equal(a[n].length,0)}))}function m(e){o(e),e.gracefulify=m,e.createReadStream=function(t,r){return new e.ReadStream(t,r)},e.createWriteStream=function(t,r){return new e.WriteStream(t,r)};var t=e.readFile;e.readFile=function(e,r,n){"function"==typeof r&&(n=r,r=null);return function e(r,n,i,a){return t(r,n,(function(t){!t||"EMFILE"!==t.code&&"ENFILE"!==t.code?"function"==typeof i&&i.apply(this,arguments):g([e,[r,n,i],t,a||Date.now(),Date.now()])}))}(e,r,n)};var r=e.writeFile;e.writeFile=function(e,t,n,i){"function"==typeof n&&(i=n,n=null);return function e(t,n,i,a,o){return r(t,n,i,(function(r){!r||"EMFILE"!==r.code&&"ENFILE"!==r.code?"function"==typeof a&&a.apply(this,arguments):g([e,[t,n,i,a],r,o||Date.now(),Date.now()])}))}(e,t,n,i)};var n=e.appendFile;n&&(e.appendFile=function(e,t,r,i){"function"==typeof r&&(i=r,r=null);return function e(t,r,i,a,o){return n(t,r,i,(function(n){!n||"EMFILE"!==n.code&&"ENFILE"!==n.code?"function"==typeof a&&a.apply(this,arguments):g([e,[t,r,i,a],n,o||Date.now(),Date.now()])}))}(e,t,r,i)});var i=e.copyFile;i&&(e.copyFile=function(e,t,r,n){"function"==typeof r&&(n=r,r=0);return function e(t,r,n,a,o){return i(t,r,n,(function(i){!i||"EMFILE"!==i.code&&"ENFILE"!==i.code?"function"==typeof a&&a.apply(this,arguments):g([e,[t,r,n,a],i,o||Date.now(),Date.now()])}))}(e,t,r,n)});var a=e.readdir;e.readdir=function(e,t,r){"function"==typeof t&&(r=t,t=null);var n=c.test(process.version)?function(e,t,r,n){return a(e,i(e,t,r,n))}:function(e,t,r,n){return a(e,t,i(e,t,r,n))};return n(e,t,r);function i(e,t,r,i){return function(a,o){!a||"EMFILE"!==a.code&&"ENFILE"!==a.code?(o&&o.sort&&o.sort(),"function"==typeof r&&r.call(this,a,o)):g([n,[e,t,r],a,i||Date.now(),Date.now()])}}};var c=/^v[0-5]\./;if("v0.8"===process.version.substr(0,4)){var l=s(e);_=l.ReadStream,h=l.WriteStream}var u=e.ReadStream;u&&(_.prototype=Object.create(u.prototype),_.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,(function(t,r){t?(e.autoClose&&e.destroy(),e.emit("error",t)):(e.fd=r,e.emit("open",r),e.read())}))});var d=e.WriteStream;d&&(h.prototype=Object.create(d.prototype),h.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,(function(t,r){t?(e.destroy(),e.emit("error",t)):(e.fd=r,e.emit("open",r))}))}),Object.defineProperty(e,"ReadStream",{get:function(){return _},set:function(e){_=e},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return h},set:function(e){h=e},enumerable:!0,configurable:!0});var p=_;Object.defineProperty(e,"FileReadStream",{get:function(){return p},set:function(e){p=e},enumerable:!0,configurable:!0});var f=h;function _(e,t){return this instanceof _?(u.apply(this,arguments),this):_.apply(Object.create(_.prototype),arguments)}function h(e,t){return this instanceof h?(d.apply(this,arguments),this):h.apply(Object.create(h.prototype),arguments)}Object.defineProperty(e,"FileWriteStream",{get:function(){return f},set:function(e){f=e},enumerable:!0,configurable:!0});var y=e.open;function v(e,t,r,n){return"function"==typeof r&&(n=r,r=null),function e(t,r,n,i,a){return y(t,r,n,(function(o,s){!o||"EMFILE"!==o.code&&"ENFILE"!==o.code?"function"==typeof i&&i.apply(this,arguments):g([e,[t,r,n,i],o,a||Date.now(),Date.now()])}))}(e,t,r,n)}return e.open=v,e}function g(e){p("ENQUEUE",e[0].name,e[1]),a[n].push(e),h()}function _(){for(var e=Date.now(),t=0;t<a[n].length;++t)a[n][t].length>2&&(a[n][t][3]=e,a[n][t][4]=e);h()}function h(){if(clearTimeout(d),d=void 0,0!==a[n].length){var e=a[n].shift(),t=e[0],r=e[1],i=e[2],o=e[3],s=e[4];if(void 0===o)p("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-o>=6e4){p("TIMEOUT",t.name,r);var c=r.pop();"function"==typeof c&&c.call(null,i)}else{var l=Date.now()-s,u=Math.max(s-o,1);l>=Math.min(1.2*u,100)?(p("RETRY",t.name,r),t.apply(null,r.concat([o]))):a[n].push(e)}void 0===d&&(d=setTimeout(h,0))}}global[n]||u(global,a[n]),e.exports=m(c(a)),process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!a.__patched&&(e.exports=m(a),a.__patched=!0)},11995:(e,t,r)=>{var n=r(2203).Stream;e.exports=function(e){return{ReadStream:function t(r,i){if(!(this instanceof t))return new t(r,i);n.call(this);var a=this;this.path=r,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536,i=i||{};for(var o=Object.keys(i),s=0,c=o.length;s<c;s++){var l=o[s];this[l]=i[l]}this.encoding&&this.setEncoding(this.encoding);if(void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(void 0===this.end)this.end=1/0;else if("number"!=typeof this.end)throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(null!==this.fd)return void process.nextTick((function(){a._read()}));e.open(this.path,this.flags,this.mode,(function(e,t){if(e)return a.emit("error",e),void(a.readable=!1);a.fd=t,a.emit("open",t),a._read()}))},WriteStream:function t(r,i){if(!(this instanceof t))return new t(r,i);n.call(this),this.path=r,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,i=i||{};for(var a=Object.keys(i),o=0,s=a.length;o<s;o++){var c=a[o];this[c]=i[c]}if(void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],null===this.fd&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}}},69106:(e,t,r)=>{var n=r(49140),i=process.cwd,a=null,o=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return a||(a=i.call(process)),a};try{process.cwd()}catch(e){}if("function"==typeof process.chdir){var s=process.chdir;process.chdir=function(e){a=null,s.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,s)}e.exports=function(e){n.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&function(e){e.lchmod=function(t,r,i){e.open(t,n.O_WRONLY|n.O_SYMLINK,r,(function(t,n){t?i&&i(t):e.fchmod(n,r,(function(t){e.close(n,(function(e){i&&i(t||e)}))}))}))},e.lchmodSync=function(t,r){var i,a=e.openSync(t,n.O_WRONLY|n.O_SYMLINK,r),o=!0;try{i=e.fchmodSync(a,r),o=!1}finally{if(o)try{e.closeSync(a)}catch(e){}else e.closeSync(a)}return i}}(e);e.lutimes||function(e){n.hasOwnProperty("O_SYMLINK")&&e.futimes?(e.lutimes=function(t,r,i,a){e.open(t,n.O_SYMLINK,(function(t,n){t?a&&a(t):e.futimes(n,r,i,(function(t){e.close(n,(function(e){a&&a(t||e)}))}))}))},e.lutimesSync=function(t,r,i){var a,o=e.openSync(t,n.O_SYMLINK),s=!0;try{a=e.futimesSync(o,r,i),s=!1}finally{if(s)try{e.closeSync(o)}catch(e){}else e.closeSync(o)}return a}):e.futimes&&(e.lutimes=function(e,t,r,n){n&&process.nextTick(n)},e.lutimesSync=function(){})}(e);e.chown=i(e.chown),e.fchown=i(e.fchown),e.lchown=i(e.lchown),e.chmod=t(e.chmod),e.fchmod=t(e.fchmod),e.lchmod=t(e.lchmod),e.chownSync=a(e.chownSync),e.fchownSync=a(e.fchownSync),e.lchownSync=a(e.lchownSync),e.chmodSync=r(e.chmodSync),e.fchmodSync=r(e.fchmodSync),e.lchmodSync=r(e.lchmodSync),e.stat=s(e.stat),e.fstat=s(e.fstat),e.lstat=s(e.lstat),e.statSync=c(e.statSync),e.fstatSync=c(e.fstatSync),e.lstatSync=c(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(e,t,r){r&&process.nextTick(r)},e.lchmodSync=function(){});e.chown&&!e.lchown&&(e.lchown=function(e,t,r,n){n&&process.nextTick(n)},e.lchownSync=function(){});"win32"===o&&(e.rename="function"!=typeof e.rename?e.rename:function(t){function r(r,n,i){var a=Date.now(),o=0;t(r,n,(function s(c){if(c&&("EACCES"===c.code||"EPERM"===c.code||"EBUSY"===c.code)&&Date.now()-a<6e4)return setTimeout((function(){e.stat(n,(function(e,a){e&&"ENOENT"===e.code?t(r,n,s):i(c)}))}),o),void(o<100&&(o+=10));i&&i(c)}))}return Object.setPrototypeOf&&Object.setPrototypeOf(r,t),r}(e.rename));function t(t){return t?function(r,n,i){return t.call(e,r,n,(function(e){l(e)&&(e=null),i&&i.apply(this,arguments)}))}:t}function r(t){return t?function(r,n){try{return t.call(e,r,n)}catch(e){if(!l(e))throw e}}:t}function i(t){return t?function(r,n,i,a){return t.call(e,r,n,i,(function(e){l(e)&&(e=null),a&&a.apply(this,arguments)}))}:t}function a(t){return t?function(r,n,i){try{return t.call(e,r,n,i)}catch(e){if(!l(e))throw e}}:t}function s(t){return t?function(r,n,i){function a(e,t){t&&(t.uid<0&&(t.uid+=4294967296),t.gid<0&&(t.gid+=4294967296)),i&&i.apply(this,arguments)}return"function"==typeof n&&(i=n,n=null),n?t.call(e,r,n,a):t.call(e,r,a)}:t}function c(t){return t?function(r,n){var i=n?t.call(e,r,n):t.call(e,r);return i&&(i.uid<0&&(i.uid+=4294967296),i.gid<0&&(i.gid+=4294967296)),i}:t}function l(e){return!e||("ENOSYS"===e.code||!(process.getuid&&0===process.getuid()||"EINVAL"!==e.code&&"EPERM"!==e.code))}e.read="function"!=typeof e.read?e.read:function(t){function r(r,n,i,a,o,s){var c;if(s&&"function"==typeof s){var l=0;c=function(u,d,p){if(u&&"EAGAIN"===u.code&&l<10)return l++,t.call(e,r,n,i,a,o,c);s.apply(this,arguments)}}return t.call(e,r,n,i,a,o,c)}return Object.setPrototypeOf&&Object.setPrototypeOf(r,t),r}(e.read),e.readSync="function"!=typeof e.readSync?e.readSync:(u=e.readSync,function(t,r,n,i,a){for(var o=0;;)try{return u.call(e,t,r,n,i,a)}catch(e){if("EAGAIN"===e.code&&o<10){o++;continue}throw e}});var u}},90874:e=>{"use strict";var t,r,n=global.MutationObserver||global.WebKitMutationObserver;if(process.browser)if(n){var i=0,a=new n(l),o=global.document.createTextNode("");a.observe(o,{characterData:!0}),t=function(){o.data=i=++i%2}}else if(global.setImmediate||void 0===global.MessageChannel)t="document"in global&&"onreadystatechange"in global.document.createElement("script")?function(){var e=global.document.createElement("script");e.onreadystatechange=function(){l(),e.onreadystatechange=null,e.parentNode.removeChild(e),e=null},global.document.documentElement.appendChild(e)}:function(){setTimeout(l,0)};else{var s=new global.MessageChannel;s.port1.onmessage=l,t=function(){s.port2.postMessage(0)}}else t=function(){process.nextTick(l)};var c=[];function l(){var e,t;r=!0;for(var n=c.length;n;){for(t=c,c=[],e=-1;++e<n;)t[e]();n=c.length}r=!1}e.exports=function(e){1!==c.push(e)||r||t()}},53423:(e,t,r)=>{var n=r(86587),i=Object.create(null),a=r(83519);e.exports=n((function(e,t){return i[e]?(i[e].push(t),null):(i[e]=[t],function(e){return a((function t(){var r=i[e],n=r.length,a=function(e){for(var t=e.length,r=[],n=0;n<t;n++)r[n]=e[n];return r}(arguments);try{for(var o=0;o<n;o++)r[o].apply(null,a)}finally{r.length>n?(r.splice(0,n),process.nextTick((function(){t.apply(null,a)}))):delete i[e]}}))}(e))}))},72017:(e,t,r)=>{try{var n=r(39023);if("function"!=typeof n.inherits)throw"";e.exports=n.inherits}catch(t){e.exports=r(56698)}},56698:e=>{"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},64634:e=>{var t={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==t.call(e)}},32678:(e,t,r)=>{"use strict";var n=r(11132),i=r(76954),a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";t.encode=function(e){for(var t,r,i,o,s,c,l,u=[],d=0,p=e.length,f=p,m="string"!==n.getTypeOf(e);d<e.length;)f=p-d,m?(t=e[d++],r=d<p?e[d++]:0,i=d<p?e[d++]:0):(t=e.charCodeAt(d++),r=d<p?e.charCodeAt(d++):0,i=d<p?e.charCodeAt(d++):0),o=t>>2,s=(3&t)<<4|r>>4,c=f>1?(15&r)<<2|i>>6:64,l=f>2?63&i:64,u.push(a.charAt(o)+a.charAt(s)+a.charAt(c)+a.charAt(l));return u.join("")},t.decode=function(e){var t,r,n,o,s,c,l=0,u=0,d="data:";if(e.substr(0,5)===d)throw new Error("Invalid base64 input, it looks like a data url.");var p,f=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(e.charAt(e.length-1)===a.charAt(64)&&f--,e.charAt(e.length-2)===a.charAt(64)&&f--,f%1!=0)throw new Error("Invalid base64 input, bad content length.");for(p=i.uint8array?new Uint8Array(0|f):new Array(0|f);l<e.length;)t=a.indexOf(e.charAt(l++))<<2|(o=a.indexOf(e.charAt(l++)))>>4,r=(15&o)<<4|(s=a.indexOf(e.charAt(l++)))>>2,n=(3&s)<<6|(c=a.indexOf(e.charAt(l++))),p[u++]=t,64!==s&&(p[u++]=r),64!==c&&(p[u++]=n);return p}},18807:(e,t,r)=>{"use strict";var n=r(37882),i=r(4982),a=r(71919),o=r(88432);function s(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}s.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o("data_length")),t=this;return e.on("end",(function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")})),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},s.createWorkerFrom=function(e,t,r){return e.pipe(new a).pipe(new o("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new o("compressedSize")).withStreamInfo("compression",t)},e.exports=s},63078:(e,t,r)=>{"use strict";var n=r(80193);t.STORE={magic:"\0\0",compressWorker:function(){return new n("STORE compression")},uncompressWorker:function(){return new n("STORE decompression")}},t.DEFLATE=r(32039)},88786:(e,t,r)=>{"use strict";var n=r(11132);var i=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();e.exports=function(e,t){return void 0!==e&&e.length?"string"!==n.getTypeOf(e)?function(e,t,r,n){var a=i,o=n+r;e=~e;for(var s=n;s<o;s++)e=e>>>8^a[255&(e^t[s])];return~e}(0|t,e,e.length,0):function(e,t,r,n){var a=i,o=n+r;e=~e;for(var s=n;s<o;s++)e=e>>>8^a[255&(e^t.charCodeAt(s))];return~e}(0|t,e,e.length,0):0}},75051:(e,t)=>{"use strict";t.base64=!1,t.binary=!1,t.dir=!1,t.createFolders=!0,t.date=null,t.compression=null,t.compressionOptions=null,t.comment=null,t.unixPermissions=null,t.dosPermissions=null},37882:(e,t,r)=>{"use strict";var n=null;n="undefined"!=typeof Promise?Promise:r(39977),e.exports={Promise:n}},32039:(e,t,r)=>{"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=r(51668),a=r(11132),o=r(80193),s=n?"uint8array":"array";function c(e,t){o.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}t.magic="\b\0",a.inherits(c,o),c.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(a.transformTo(s,e.data),!1)},c.prototype.flush=function(){o.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},c.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},c.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},t.compressWorker=function(e){return new c("Deflate",e)},t.uncompressWorker=function(){return new c("Inflate",{})}},33890:(e,t,r)=>{"use strict";var n=r(11132),i=r(80193),a=r(8222),o=r(88786),s=r(6407),c=function(e,t){var r,n="";for(r=0;r<t;r++)n+=String.fromCharCode(255&e),e>>>=8;return n},l=function(e,t,r,i,l,u){var d,p,f=e.file,m=e.compression,g=u!==a.utf8encode,_=n.transformTo("string",u(f.name)),h=n.transformTo("string",a.utf8encode(f.name)),y=f.comment,v=n.transformTo("string",u(y)),b=n.transformTo("string",a.utf8encode(y)),k=h.length!==f.name.length,x=b.length!==y.length,S="",w="",D="",E=f.dir,T=f.date,C={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(C.crc32=e.crc32,C.compressedSize=e.compressedSize,C.uncompressedSize=e.uncompressedSize);var A=0;t&&(A|=8),g||!k&&!x||(A|=2048);var N,P,I,F=0,O=0;E&&(F|=16),"UNIX"===l?(O=798,F|=(N=f.unixPermissions,P=E,I=N,N||(I=P?16893:33204),(65535&I)<<16)):(O=20,F|=63&(f.dosPermissions||0)),d=T.getUTCHours(),d<<=6,d|=T.getUTCMinutes(),d<<=5,d|=T.getUTCSeconds()/2,p=T.getUTCFullYear()-1980,p<<=4,p|=T.getUTCMonth()+1,p<<=5,p|=T.getUTCDate(),k&&(w=c(1,1)+c(o(_),4)+h,S+="up"+c(w.length,2)+w),x&&(D=c(1,1)+c(o(v),4)+b,S+="uc"+c(D.length,2)+D);var R="";return R+="\n\0",R+=c(A,2),R+=m.magic,R+=c(d,2),R+=c(p,2),R+=c(C.crc32,4),R+=c(C.compressedSize,4),R+=c(C.uncompressedSize,4),R+=c(_.length,2),R+=c(S.length,2),{fileRecord:s.LOCAL_FILE_HEADER+R+_+S,dirRecord:s.CENTRAL_FILE_HEADER+c(O,2)+R+c(v.length,2)+"\0\0\0\0"+c(F,4)+c(i,4)+_+S+v}},u=function(e){return s.DATA_DESCRIPTOR+c(e.crc32,4)+c(e.compressedSize,4)+c(e.uncompressedSize,4)};function d(e,t,r,n){i.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}n.inherits(d,i),d.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,i.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},d.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var r=l(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},d.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=l(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:u(e),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},d.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var r=this.bytesWritten-e,i=function(e,t,r,i,a){var o=n.transformTo("string",a(i));return s.CENTRAL_DIRECTORY_END+"\0\0\0\0"+c(e,2)+c(e,2)+c(t,4)+c(r,4)+c(o.length,2)+o}(this.dirRecords.length,r,e,this.zipComment,this.encodeFileName);this.push({data:i,meta:{percent:100}})},d.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},d.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on("data",(function(e){t.processChunk(e)})),e.on("end",(function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()})),e.on("error",(function(e){t.error(e)})),this},d.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},d.prototype.error=function(e){var t=this._sources;if(!i.prototype.error.call(this,e))return!1;for(var r=0;r<t.length;r++)try{t[r].error(e)}catch(e){}return!0},d.prototype.lock=function(){i.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},e.exports=d},41269:(e,t,r)=>{"use strict";var n=r(63078),i=r(33890);t.generateWorker=function(e,t,r){var a=new i(t.streamFiles,r,t.platform,t.encodeFileName),o=0;try{e.forEach((function(e,r){o++;var i=function(e,t){var r=e||t,i=n[r];if(!i)throw new Error(r+" is not a valid compression method !");return i}(r.options.compression,t.compression),s=r.options.compressionOptions||t.compressionOptions||{},c=r.dir,l=r.date;r._compressWorker(i,s).withStreamInfo("file",{name:e,dir:c,date:l,comment:r.comment||"",unixPermissions:r.unixPermissions,dosPermissions:r.dosPermissions}).pipe(a)})),a.entriesCount=o}catch(e){a.error(e)}return a}},58833:(e,t,r)=>{"use strict";function n(){if(!(this instanceof n))return new n;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var e=new n;for(var t in this)"function"!=typeof this[t]&&(e[t]=this[t]);return e}}n.prototype=r(98442),n.prototype.loadAsync=r(80629),n.support=r(76954),n.defaults=r(75051),n.version="3.10.1",n.loadAsync=function(e,t){return(new n).loadAsync(e,t)},n.external=r(37882),e.exports=n},80629:(e,t,r)=>{"use strict";var n=r(11132),i=r(37882),a=r(8222),o=r(47548),s=r(71919),c=r(50417);function l(e){return new i.Promise((function(t,r){var n=e.decompressed.getContentWorker().pipe(new s);n.on("error",(function(e){r(e)})).on("end",(function(){n.streamInfo.crc32!==e.decompressed.crc32?r(new Error("Corrupted zip : CRC32 mismatch")):t()})).resume()}))}e.exports=function(e,t){var r=this;return t=n.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:a.utf8decode}),c.isNode&&c.isStream(e)?i.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):n.prepareContent("the loaded zip file",e,!0,t.optimizedBinaryString,t.base64).then((function(e){var r=new o(t);return r.load(e),r})).then((function(e){var r=[i.Promise.resolve(e)],n=e.files;if(t.checkCRC32)for(var a=0;a<n.length;a++)r.push(l(n[a]));return i.Promise.all(r)})).then((function(e){for(var i=e.shift(),a=i.files,o=0;o<a.length;o++){var s=a[o],c=s.fileNameStr,l=n.resolve(s.fileNameStr);r.file(l,s.decompressed,{binary:!0,optimizedBinaryString:!0,date:s.date,dir:s.dir,comment:s.fileCommentStr.length?s.fileCommentStr:null,unixPermissions:s.unixPermissions,dosPermissions:s.dosPermissions,createFolders:t.createFolders}),s.dir||(r.file(l).unsafeOriginalName=c)}return i.zipComment.length&&(r.comment=i.zipComment),r}))}},50417:e=>{"use strict";e.exports={isNode:"undefined"!=typeof Buffer,newBufferFrom:function(e,t){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(e,t);if("number"==typeof e)throw new Error('The "data" argument must not be a number');return new Buffer(e,t)},allocBuffer:function(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t},isBuffer:function(e){return Buffer.isBuffer(e)},isStream:function(e){return e&&"function"==typeof e.on&&"function"==typeof e.pause&&"function"==typeof e.resume}}},60905:(e,t,r)=>{"use strict";var n=r(11132),i=r(80193);function a(e,t){i.call(this,"Nodejs stream input adapter for "+e),this._upstreamEnded=!1,this._bindStream(t)}n.inherits(a,i),a.prototype._bindStream=function(e){var t=this;this._stream=e,e.pause(),e.on("data",(function(e){t.push({data:e,meta:{percent:0}})})).on("error",(function(e){t.isPaused?this.generatedError=e:t.error(e)})).on("end",(function(){t.isPaused?t._upstreamEnded=!0:t.end()}))},a.prototype.pause=function(){return!!i.prototype.pause.call(this)&&(this._stream.pause(),!0)},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},e.exports=a},54644:(e,t,r)=>{"use strict";var n=r(30186).Readable;function i(e,t,r){n.call(this,t),this._helper=e;var i=this;e.on("data",(function(e,t){i.push(e)||i._helper.pause(),r&&r(t)})).on("error",(function(e){i.emit("error",e)})).on("end",(function(){i.push(null)}))}r(11132).inherits(i,n),i.prototype._read=function(){this._helper.resume()},e.exports=i},98442:(e,t,r)=>{"use strict";var n=r(8222),i=r(11132),a=r(80193),o=r(88648),s=r(75051),c=r(18807),l=r(89985),u=r(41269),d=r(50417),p=r(60905),f=function(e,t,r){var n,o=i.getTypeOf(t),u=i.extend(r||{},s);u.date=u.date||new Date,null!==u.compression&&(u.compression=u.compression.toUpperCase()),"string"==typeof u.unixPermissions&&(u.unixPermissions=parseInt(u.unixPermissions,8)),u.unixPermissions&&16384&u.unixPermissions&&(u.dir=!0),u.dosPermissions&&16&u.dosPermissions&&(u.dir=!0),u.dir&&(e=g(e)),u.createFolders&&(n=m(e))&&_.call(this,n,!0);var f="string"===o&&!1===u.binary&&!1===u.base64;r&&void 0!==r.binary||(u.binary=!f),(t instanceof c&&0===t.uncompressedSize||u.dir||!t||0===t.length)&&(u.base64=!1,u.binary=!0,t="",u.compression="STORE",o="string");var h=null;h=t instanceof c||t instanceof a?t:d.isNode&&d.isStream(t)?new p(e,t):i.prepareContent(e,t,u.binary,u.optimizedBinaryString,u.base64);var y=new l(e,h,u);this.files[e]=y},m=function(e){"/"===e.slice(-1)&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf("/");return t>0?e.substring(0,t):""},g=function(e){return"/"!==e.slice(-1)&&(e+="/"),e},_=function(e,t){return t=void 0!==t?t:s.createFolders,e=g(e),this.files[e]||f.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function h(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var y={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(e){var t,r,n;for(t in this.files)n=this.files[t],(r=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(r,n)},filter:function(e){var t=[];return this.forEach((function(r,n){e(r,n)&&t.push(n)})),t},file:function(e,t,r){if(1===arguments.length){if(h(e)){var n=e;return this.filter((function(e,t){return!t.dir&&n.test(e)}))}var i=this.files[this.root+e];return i&&!i.dir?i:null}return e=this.root+e,f.call(this,e,t,r),this},folder:function(e){if(!e)return this;if(h(e))return this.filter((function(t,r){return r.dir&&e.test(t)}));var t=this.root+e,r=_.call(this,t),n=this.clone();return n.root=r.name,n},remove:function(e){e=this.root+e;var t=this.files[e];if(t||("/"!==e.slice(-1)&&(e+="/"),t=this.files[e]),t&&!t.dir)delete this.files[e];else for(var r=this.filter((function(t,r){return r.name.slice(0,e.length)===e})),n=0;n<r.length;n++)delete this.files[r[n].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(e){var t,r={};try{if((r=i.extend(e||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:n.utf8encode})).type=r.type.toLowerCase(),r.compression=r.compression.toUpperCase(),"binarystring"===r.type&&(r.type="string"),!r.type)throw new Error("No output type specified.");i.checkSupport(r.type),"darwin"!==r.platform&&"freebsd"!==r.platform&&"linux"!==r.platform&&"sunos"!==r.platform||(r.platform="UNIX"),"win32"===r.platform&&(r.platform="DOS");var s=r.comment||this.comment||"";t=u.generateWorker(this,r,s)}catch(e){(t=new a("error")).error(e)}return new o(t,r.type||"string",r.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type="nodebuffer"),this.generateInternalStream(e).toNodejsStream(t)}};e.exports=y},41191:(e,t,r)=>{"use strict";var n=r(15074);function i(e){n.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}r(11132).inherits(i,n),i.prototype.byteAt=function(e){return this.data[this.zero+e]},i.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),a=this.length-4;a>=0;--a)if(this.data[a]===t&&this.data[a+1]===r&&this.data[a+2]===n&&this.data[a+3]===i)return a-this.zero;return-1},i.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),a=this.readData(4);return t===a[0]&&r===a[1]&&n===a[2]&&i===a[3]},i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},15074:(e,t,r)=>{"use strict";var n=r(11132);function i(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}i.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+e+"). Corrupted zip ?")},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(){},readInt:function(e){var t,r=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},e.exports=i},32916:(e,t,r)=>{"use strict";var n=r(77959);function i(e){n.call(this,e)}r(11132).inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},69663:(e,t,r)=>{"use strict";var n=r(15074);function i(e){n.call(this,e)}r(11132).inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},77959:(e,t,r)=>{"use strict";var n=r(41191);function i(e){n.call(this,e)}r(11132).inherits(i,n),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},69483:(e,t,r)=>{"use strict";var n=r(11132),i=r(76954),a=r(41191),o=r(69663),s=r(32916),c=r(77959);e.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),"string"!==t||i.uint8array?"nodebuffer"===t?new s(e):i.uint8array?new c(n.transformTo("uint8array",e)):new a(n.transformTo("array",e)):new o(e)}},6407:(e,t)=>{"use strict";t.LOCAL_FILE_HEADER="PK",t.CENTRAL_FILE_HEADER="PK",t.CENTRAL_DIRECTORY_END="PK",t.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",t.ZIP64_CENTRAL_DIRECTORY_END="PK",t.DATA_DESCRIPTOR="PK\b"},81019:(e,t,r)=>{"use strict";var n=r(80193),i=r(11132);function a(e){n.call(this,"ConvertWorker to "+e),this.destType=e}i.inherits(a,n),a.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},e.exports=a},71919:(e,t,r)=>{"use strict";var n=r(80193),i=r(88786);function a(){n.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}r(11132).inherits(a,n),a.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},e.exports=a},88432:(e,t,r)=>{"use strict";var n=r(11132),i=r(80193);function a(e){i.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(a,i),a.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},e.exports=a},4982:(e,t,r)=>{"use strict";var n=r(11132),i=r(80193);function a(e){i.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then((function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()}),(function(e){t.error(e)}))}n.inherits(a,i),a.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},a.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},a.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},e.exports=a},80193:e=>{"use strict";function t(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}t.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r<this._listeners[e].length;r++)this._listeners[e][r].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on("data",(function(e){t.processChunk(e)})),e.on("end",(function(){t.end()})),e.on("error",(function(e){t.error(e)})),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;this.isPaused=!1;var e=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e="Worker "+this.name;return this.previous?this.previous+" -> "+e:e}},e.exports=t},88648:(e,t,r)=>{"use strict";var n=r(11132),i=r(81019),a=r(80193),o=r(32678),s=r(76954),c=r(37882),l=null;if(s.nodestream)try{l=r(54644)}catch(e){}function u(e,t){return new c.Promise((function(r,i){var a=[],s=e._internalType,c=e._outputType,l=e._mimeType;e.on("data",(function(e,r){a.push(e),t&&t(r)})).on("error",(function(e){a=[],i(e)})).on("end",(function(){try{var e=function(e,t,r){switch(e){case"blob":return n.newBlob(n.transformTo("arraybuffer",t),r);case"base64":return o.encode(t);default:return n.transformTo(e,t)}}(c,function(e,t){var r,n=0,i=null,a=0;for(r=0;r<t.length;r++)a+=t[r].length;switch(e){case"string":return t.join("");case"array":return Array.prototype.concat.apply([],t);case"uint8array":for(i=new Uint8Array(a),r=0;r<t.length;r++)i.set(t[r],n),n+=t[r].length;return i;case"nodebuffer":return Buffer.concat(t);default:throw new Error("concat : unsupported type '"+e+"'")}}(s,a),l);r(e)}catch(e){i(e)}a=[]})).resume()}))}function d(e,t,r){var o=t;switch(t){case"blob":case"arraybuffer":o="uint8array";break;case"base64":o="string"}try{this._internalType=o,this._outputType=t,this._mimeType=r,n.checkSupport(o),this._worker=e.pipe(new i(o)),e.lock()}catch(e){this._worker=new a("error"),this._worker.error(e)}}d.prototype={accumulate:function(e){return u(this,e)},on:function(e,t){var r=this;return"data"===e?this._worker.on(e,(function(e){t.call(r,e.data,e.meta)})):this._worker.on(e,(function(){n.delay(t,arguments,r)})),this},resume:function(){return n.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(n.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new l(this,{objectMode:"nodebuffer"!==this._outputType},e)}},e.exports=d},76954:(e,t,r)=>{"use strict";if(t.base64=!0,t.array=!0,t.string=!0,t.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,t.nodebuffer="undefined"!=typeof Buffer,t.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)t.blob=!1;else{var n=new ArrayBuffer(0);try{t.blob=0===new Blob([n],{type:"application/zip"}).size}catch(e){try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);i.append(n),t.blob=0===i.getBlob("application/zip").size}catch(e){t.blob=!1}}}try{t.nodestream=!!r(30186).Readable}catch(e){t.nodestream=!1}},8222:(e,t,r)=>{"use strict";for(var n=r(11132),i=r(76954),a=r(50417),o=r(80193),s=new Array(256),c=0;c<256;c++)s[c]=c>=252?6:c>=248?5:c>=240?4:c>=224?3:c>=192?2:1;s[254]=s[254]=1;function l(){o.call(this,"utf-8 decode"),this.leftOver=null}function u(){o.call(this,"utf-8 encode")}t.utf8encode=function(e){return i.nodebuffer?a.newBufferFrom(e,"utf-8"):function(e){var t,r,n,a,o,s=e.length,c=0;for(a=0;a<s;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(n=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(n-56320),a++),c+=r<128?1:r<2048?2:r<65536?3:4;for(t=i.uint8array?new Uint8Array(c):new Array(c),o=0,a=0;o<c;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(n=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(n-56320),a++),r<128?t[o++]=r:r<2048?(t[o++]=192|r>>>6,t[o++]=128|63&r):r<65536?(t[o++]=224|r>>>12,t[o++]=128|r>>>6&63,t[o++]=128|63&r):(t[o++]=240|r>>>18,t[o++]=128|r>>>12&63,t[o++]=128|r>>>6&63,t[o++]=128|63&r);return t}(e)},t.utf8decode=function(e){return i.nodebuffer?n.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,r,i,a,o=e.length,c=new Array(2*o);for(r=0,t=0;t<o;)if((i=e[t++])<128)c[r++]=i;else if((a=s[i])>4)c[r++]=65533,t+=a-1;else{for(i&=2===a?31:3===a?15:7;a>1&&t<o;)i=i<<6|63&e[t++],a--;a>1?c[r++]=65533:i<65536?c[r++]=i:(i-=65536,c[r++]=55296|i>>10&1023,c[r++]=56320|1023&i)}return c.length!==r&&(c.subarray?c=c.subarray(0,r):c.length=r),n.applyFromCharCode(c)}(e=n.transformTo(i.uint8array?"uint8array":"array",e))},n.inherits(l,o),l.prototype.processChunk=function(e){var r=n.transformTo(i.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var a=r;(r=new Uint8Array(a.length+this.leftOver.length)).set(this.leftOver,0),r.set(a,this.leftOver.length)}else r=this.leftOver.concat(r);this.leftOver=null}var o=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;r>=0&&128==(192&e[r]);)r--;return r<0||0===r?t:r+s[e[r]]>t?r:t}(r),c=r;o!==r.length&&(i.uint8array?(c=r.subarray(0,o),this.leftOver=r.subarray(o,r.length)):(c=r.slice(0,o),this.leftOver=r.slice(o,r.length))),this.push({data:t.utf8decode(c),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:t.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},t.Utf8DecodeWorker=l,n.inherits(u,o),u.prototype.processChunk=function(e){this.push({data:t.utf8encode(e.data),meta:e.meta})},t.Utf8EncodeWorker=u},11132:(e,t,r)=>{"use strict";var n=r(76954),i=r(32678),a=r(50417),o=r(37882);function s(e){return e}function c(e,t){for(var r=0;r<e.length;++r)t[r]=255&e.charCodeAt(r);return t}r(42791),t.newBlob=function(e,r){t.checkSupport("blob");try{return new Blob([e],{type:r})}catch(t){try{var n=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return n.append(e),n.getBlob(r)}catch(e){throw new Error("Bug : can't construct the Blob.")}}};var l={stringifyByChunk:function(e,t,r){var n=[],i=0,a=e.length;if(a<=r)return String.fromCharCode.apply(null,e);for(;i<a;)"array"===t||"nodebuffer"===t?n.push(String.fromCharCode.apply(null,e.slice(i,Math.min(i+r,a)))):n.push(String.fromCharCode.apply(null,e.subarray(i,Math.min(i+r,a)))),i+=r;return n.join("")},stringifyByChar:function(e){for(var t="",r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},applyCanBeUsed:{uint8array:function(){try{return n.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(e){return!1}}(),nodebuffer:function(){try{return n.nodebuffer&&1===String.fromCharCode.apply(null,a.allocBuffer(1)).length}catch(e){return!1}}()}};function u(e){var r=65536,n=t.getTypeOf(e),i=!0;if("uint8array"===n?i=l.applyCanBeUsed.uint8array:"nodebuffer"===n&&(i=l.applyCanBeUsed.nodebuffer),i)for(;r>1;)try{return l.stringifyByChunk(e,n,r)}catch(e){r=Math.floor(r/2)}return l.stringifyByChar(e)}function d(e,t){for(var r=0;r<e.length;r++)t[r]=e[r];return t}t.applyFromCharCode=u;var p={};p.string={string:s,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return p.string.uint8array(e).buffer},uint8array:function(e){return c(e,new Uint8Array(e.length))},nodebuffer:function(e){return c(e,a.allocBuffer(e.length))}},p.array={string:u,array:s,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(e)}},p.arraybuffer={string:function(e){return u(new Uint8Array(e))},array:function(e){return d(new Uint8Array(e),new Array(e.byteLength))},arraybuffer:s,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(new Uint8Array(e))}},p.uint8array={string:u,array:function(e){return d(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:s,nodebuffer:function(e){return a.newBufferFrom(e)}},p.nodebuffer={string:u,array:function(e){return d(e,new Array(e.length))},arraybuffer:function(e){return p.nodebuffer.uint8array(e).buffer},uint8array:function(e){return d(e,new Uint8Array(e.length))},nodebuffer:s},t.transformTo=function(e,r){if(r||(r=""),!e)return r;t.checkSupport(e);var n=t.getTypeOf(r);return p[n][e](r)},t.resolve=function(e){for(var t=e.split("/"),r=[],n=0;n<t.length;n++){var i=t[n];"."===i||""===i&&0!==n&&n!==t.length-1||(".."===i?r.pop():r.push(i))}return r.join("/")},t.getTypeOf=function(e){return"string"==typeof e?"string":"[object Array]"===Object.prototype.toString.call(e)?"array":n.nodebuffer&&a.isBuffer(e)?"nodebuffer":n.uint8array&&e instanceof Uint8Array?"uint8array":n.arraybuffer&&e instanceof ArrayBuffer?"arraybuffer":void 0},t.checkSupport=function(e){if(!n[e.toLowerCase()])throw new Error(e+" is not supported by this platform")},t.MAX_VALUE_16BITS=65535,t.MAX_VALUE_32BITS=-1,t.pretty=function(e){var t,r,n="";for(r=0;r<(e||"").length;r++)n+="\\x"+((t=e.charCodeAt(r))<16?"0":"")+t.toString(16).toUpperCase();return n},t.delay=function(e,t,r){setImmediate((function(){e.apply(r||null,t||[])}))},t.inherits=function(e,t){var r=function(){};r.prototype=t.prototype,e.prototype=new r},t.extend=function(){var e,t,r={};for(e=0;e<arguments.length;e++)for(t in arguments[e])Object.prototype.hasOwnProperty.call(arguments[e],t)&&void 0===r[t]&&(r[t]=arguments[e][t]);return r},t.prepareContent=function(e,r,a,s,l){return o.Promise.resolve(r).then((function(e){return n.blob&&(e instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(e)))&&"undefined"!=typeof FileReader?new o.Promise((function(t,r){var n=new FileReader;n.onload=function(e){t(e.target.result)},n.onerror=function(e){r(e.target.error)},n.readAsArrayBuffer(e)})):e})).then((function(r){var u,d=t.getTypeOf(r);return d?("arraybuffer"===d?r=t.transformTo("uint8array",r):"string"===d&&(l?r=i.decode(r):a&&!0!==s&&(r=c(u=r,n.uint8array?new Uint8Array(u.length):new Array(u.length)))),r):o.Promise.reject(new Error("Can't read the data of '"+e+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))}))}},47548:(e,t,r)=>{"use strict";var n=r(69483),i=r(11132),a=r(6407),o=r(17404),s=r(76954);function c(e){this.files=[],this.loadOptions=e}c.prototype={checkSignature:function(e){if(!this.reader.readAndCheckSignature(e)){this.reader.index-=4;var t=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+i.pretty(t)+", expected "+i.pretty(e)+")")}},isSignature:function(e,t){var r=this.reader.index;this.reader.setIndex(e);var n=this.reader.readString(4)===t;return this.reader.setIndex(r),n},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=s.uint8array?"uint8array":"array",r=i.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(r)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,r,n=this.zip64EndOfCentralSize-44;0<n;)e=this.reader.readInt(2),t=this.reader.readInt(4),r=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:r}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var e,t;for(e=0;e<this.files.length;e++)t=this.files[e],this.reader.setIndex(t.localHeaderOffset),this.checkSignature(a.LOCAL_FILE_HEADER),t.readLocalPart(this.reader),t.handleUTF8(),t.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(a.CENTRAL_FILE_HEADER);)(e=new o({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(a.CENTRAL_DIRECTORY_END);if(e<0)throw!this.isSignature(0,a.LOCAL_FILE_HEADER)?new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html"):new Error("Corrupted zip: can't find end of central directory");this.reader.setIndex(e);var t=e;if(this.checkSignature(a.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===i.MAX_VALUE_16BITS||this.diskWithCentralDirStart===i.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===i.MAX_VALUE_16BITS||this.centralDirRecords===i.MAX_VALUE_16BITS||this.centralDirSize===i.MAX_VALUE_32BITS||this.centralDirOffset===i.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(e),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,a.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var r=this.centralDirOffset+this.centralDirSize;this.zip64&&(r+=20,r+=12+this.zip64EndOfCentralSize);var n=t-r;if(n>0)this.isSignature(t,a.CENTRAL_FILE_HEADER)||(this.reader.zero=n);else if(n<0)throw new Error("Corrupted zip: missing "+Math.abs(n)+" bytes.")},prepareReader:function(e){this.reader=n(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},e.exports=c},17404:(e,t,r)=>{"use strict";var n=r(69483),i=r(11132),a=r(18807),o=r(88786),s=r(8222),c=r(63078),l=r(76954);function u(e,t){this.options=e,this.loadOptions=t}u.prototype={isEncrypted:function(){return!(1&~this.bitFlag)},useUTF8:function(){return!(2048&~this.bitFlag)},readLocalPart:function(e){var t,r;if(e.skip(22),this.fileNameLength=e.readInt(2),r=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(r),-1===this.compressedSize||-1===this.uncompressedSize)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(null===(t=function(e){for(var t in c)if(Object.prototype.hasOwnProperty.call(c,t)&&c[t].magic===e)return c[t];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+i.pretty(this.compressionMethod)+" unknown (inner file : "+i.transformTo("string",this.fileName)+")");this.decompressed=new a(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0===e&&(this.dosPermissions=63&this.externalFileAttributes),3===e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=n(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4<i;)t=e.readInt(2),r=e.readInt(2),n=e.readData(r),this.extraFields[t]={id:t,length:r,value:n};e.setIndex(i)},handleUTF8:function(){var e=l.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=s.utf8decode(this.fileName),this.fileCommentStr=s.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();if(null!==t)this.fileNameStr=t;else{var r=i.transformTo(e,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(r)}var n=this.findExtraFieldUnicodeComment();if(null!==n)this.fileCommentStr=n;else{var a=i.transformTo(e,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(a)}}},findExtraFieldUnicodePath:function(){var e=this.extraFields[28789];if(e){var t=n(e.value);return 1!==t.readInt(1)||o(this.fileName)!==t.readInt(4)?null:s.utf8decode(t.readData(e.length-5))}return null},findExtraFieldUnicodeComment:function(){var e=this.extraFields[25461];if(e){var t=n(e.value);return 1!==t.readInt(1)||o(this.fileComment)!==t.readInt(4)?null:s.utf8decode(t.readData(e.length-5))}return null}},e.exports=u},89985:(e,t,r)=>{"use strict";var n=r(88648),i=r(4982),a=r(8222),o=r(18807),s=r(80193),c=function(e,t,r){this.name=e,this.dir=r.dir,this.date=r.date,this.comment=r.comment,this.unixPermissions=r.unixPermissions,this.dosPermissions=r.dosPermissions,this._data=t,this._dataBinary=r.binary,this.options={compression:r.compression,compressionOptions:r.compressionOptions}};c.prototype={internalStream:function(e){var t=null,r="string";try{if(!e)throw new Error("No output type specified.");var i="string"===(r=e.toLowerCase())||"text"===r;"binarystring"!==r&&"text"!==r||(r="string"),t=this._decompressWorker();var o=!this._dataBinary;o&&!i&&(t=t.pipe(new a.Utf8EncodeWorker)),!o&&i&&(t=t.pipe(new a.Utf8DecodeWorker))}catch(e){(t=new s("error")).error(e)}return new n(t,r,"")},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||"nodebuffer").toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof o&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var r=this._decompressWorker();return this._dataBinary||(r=r.pipe(new a.Utf8EncodeWorker)),o.createWorkerFrom(r,e,t)},_decompressWorker:function(){return this._data instanceof o?this._data.getContentWorker():this._data instanceof s?this._data:new i(this._data)}};for(var l=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],u=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},d=0;d<l.length;d++)c.prototype[l[d]]=u;e.exports=c},61538:(e,t,r)=>{"use strict";var n=r(33225),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(15622));a.inherits=r(72017);var o=r(92672),s=r(39744);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},82564:(e,t,r)=>{"use strict";e.exports=a;var n=r(97294),i=Object.create(r(15622));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(72017),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},92672:(e,t,r)=>{"use strict";var n=r(33225);e.exports=y;var i,a=r(64634);y.ReadableState=h;r(24434).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(7964),c=r(92861).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(15622));u.inherits=r(72017);var d=r(39023),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(49026),g=r(20332);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(61538));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(83141).I),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(61538),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,S(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&S(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(83141).I),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(w,e):w(e))}function w(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(E,e,t))}function E(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):S(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&S(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},97294:(e,t,r)=>{"use strict";e.exports=o;var n=r(61538),i=Object.create(r(15622));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(72017),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},39744:(e,t,r)=>{"use strict";var n=r(33225);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(15622));s.inherits=r(72017);var c={deprecate:r(27983)},l=r(7964),u=r(92861).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(20332);function m(){}function g(e,t){a=a||r(61538),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(61538),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},49026:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=r(39023);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},20332:(e,t,r)=>{"use strict";var n=r(33225);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},7964:(e,t,r)=>{e.exports=r(2203)},30186:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(92672)).Stream=n||t,t.Readable=t,t.Writable=r(39744),t.Duplex=r(61538),t.Transform=r(97294),t.PassThrough=r(82564))},85:(e,t,r)=>{var n=r(39023),i=r(28768);function a(e,t,r){e[t]=function(){return delete e[t],r.apply(this,arguments),this[t].apply(this,arguments)}}function o(e,t){if(!(this instanceof o))return new o(e,t);i.call(this,t),a(this,"_read",(function(){var r=e.call(this,t),n=this.emit.bind(this,"error");r.on("error",n),r.pipe(this)})),this.emit("readable")}function s(e,t){if(!(this instanceof s))return new s(e,t);i.call(this,t),a(this,"_write",(function(){var r=e.call(this,t),n=this.emit.bind(this,"error");r.on("error",n),this.pipe(r)})),this.emit("writable")}e.exports={Readable:o,Writable:s},n.inherits(o,i),n.inherits(s,i)},42676:(e,t,r)=>{"use strict";var n=r(33225),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(15622));a.inherits=r(72017);var o=r(82922),s=r(34734);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},86462:(e,t,r)=>{"use strict";e.exports=a;var n=r(75828),i=Object.create(r(15622));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(72017),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},82922:(e,t,r)=>{"use strict";var n=r(33225);e.exports=y;var i,a=r(64634);y.ReadableState=h;r(24434).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(57354),c=r(92861).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(15622));u.inherits=r(72017);var d=r(39023),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(14156),g=r(18762);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(42676));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(83141).I),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(42676),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,S(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&S(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(83141).I),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(w,e):w(e))}function w(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(E,e,t))}function E(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):S(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&S(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},75828:(e,t,r)=>{"use strict";e.exports=o;var n=r(42676),i=Object.create(r(15622));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(72017),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},34734:(e,t,r)=>{"use strict";var n=r(33225);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(15622));s.inherits=r(72017);var c={deprecate:r(27983)},l=r(57354),u=r(92861).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(18762);function m(){}function g(e,t){a=a||r(42676),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(42676),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},14156:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=r(39023);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},18762:(e,t,r)=>{"use strict";var n=r(33225);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},57354:(e,t,r)=>{e.exports=r(2203)},28768:(e,t,r)=>{e.exports=r(13940).PassThrough},13940:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(82922)).Stream=n||t,t.Readable=t,t.Writable=r(34734),t.Duplex=r(42676),t.Transform=r(75828),t.PassThrough=r(86462))},39977:(e,t,r)=>{"use strict";var n=r(90874);function i(){}var a={},o=["REJECTED"],s=["FULFILLED"],c=["PENDING"];if(!process.browser)var l=["UNHANDLED"];function u(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=c,this.queue=[],this.outcome=void 0,process.browser||(this.handled=l),e!==i&&m(this,e)}function d(e,t,r){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof r&&(this.onRejected=r,this.callRejected=this.otherCallRejected)}function p(e,t,r){n((function(){var n;try{n=t(r)}catch(t){return a.reject(e,t)}n===e?a.reject(e,new TypeError("Cannot resolve promise with itself")):a.resolve(e,n)}))}function f(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function m(e,t){var r=!1;function n(t){r||(r=!0,a.reject(e,t))}function i(t){r||(r=!0,a.resolve(e,t))}var o=g((function(){t(i,n)}));"error"===o.status&&n(o.value)}function g(e,t){var r={};try{r.value=e(t),r.status="success"}catch(e){r.status="error",r.value=e}return r}e.exports=u,u.prototype.finally=function(e){if("function"!=typeof e)return this;var t=this.constructor;return this.then((function(r){return t.resolve(e()).then((function(){return r}))}),(function(r){return t.resolve(e()).then((function(){throw r}))}))},u.prototype.catch=function(e){return this.then(null,e)},u.prototype.then=function(e,t){if("function"!=typeof e&&this.state===s||"function"!=typeof t&&this.state===o)return this;var r=new this.constructor(i);(process.browser||this.handled===l&&(this.handled=null),this.state!==c)?p(r,this.state===s?e:t,this.outcome):this.queue.push(new d(r,e,t));return r},d.prototype.callFulfilled=function(e){a.resolve(this.promise,e)},d.prototype.otherCallFulfilled=function(e){p(this.promise,this.onFulfilled,e)},d.prototype.callRejected=function(e){a.reject(this.promise,e)},d.prototype.otherCallRejected=function(e){p(this.promise,this.onRejected,e)},a.resolve=function(e,t){var r=g(f,t);if("error"===r.status)return a.reject(e,r.value);var n=r.value;if(n)m(e,n);else{e.state=s,e.outcome=t;for(var i=-1,o=e.queue.length;++i<o;)e.queue[i].callFulfilled(t)}return e},a.reject=function(e,t){e.state=o,e.outcome=t,process.browser||e.handled===l&&n((function(){e.handled===l&&process.emit("unhandledRejection",t,e)}));for(var r=-1,i=e.queue.length;++r<i;)e.queue[r].callRejected(t);return e},u.resolve=function(e){if(e instanceof this)return e;return a.resolve(new this(i),e)},u.reject=function(e){var t=new this(i);return a.reject(t,e)},u.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var r=e.length,n=!1;if(!r)return this.resolve([]);var o=new Array(r),s=0,c=-1,l=new this(i);for(;++c<r;)u(e[c],c);return l;function u(e,i){t.resolve(e).then((function(e){o[i]=e,++s!==r||n||(n=!0,a.resolve(l,o))}),(function(e){n||(n=!0,a.reject(l,e))}))}},u.race=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var r=e.length,n=!1;if(!r)return this.resolve([]);var o=-1,s=new this(i);for(;++o<r;)c=e[o],t.resolve(c).then((function(e){n||(n=!0,a.resolve(s,e))}),(function(e){n||(n=!0,a.reject(s,e))}));var c;return s}},1528:(e,t,r)=>{"use strict";var n=r(24434).listenerCount;n=n||function(e,t){var r=e&&e._events&&e._events[t];return Array.isArray(r)?r.length:"function"==typeof r?1:0},e.exports=n},71676:e=>{var t=9007199254740991,r="[object Arguments]",n="[object Function]",i="[object GeneratorFunction]",a=/^(?:0|[1-9]\d*)$/;function o(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}var s=Object.prototype,c=s.hasOwnProperty,l=s.toString,u=s.propertyIsEnumerable,d=Math.max;function p(e,t){var n=v(e)||function(e){return function(e){return function(e){return!!e&&"object"==typeof e}(e)&&b(e)}(e)&&c.call(e,"callee")&&(!u.call(e,"callee")||l.call(e)==r)}(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],i=n.length,a=!!i;for(var o in e)!t&&!c.call(e,o)||a&&("length"==o||h(o,i))||n.push(o);return n}function f(e,t,r,n){return void 0===e||y(e,s[r])&&!c.call(n,r)?t:e}function m(e,t,r){var n=e[t];c.call(e,t)&&y(n,r)&&(void 0!==r||t in e)||(e[t]=r)}function g(e){if(!k(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t,r,n,i=(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||s,t===n),a=[];for(var o in e)("constructor"!=o||!i&&c.call(e,o))&&a.push(o);return a}function _(e,t){return t=d(void 0===t?e.length-1:t,0),function(){for(var r=arguments,n=-1,i=d(r.length-t,0),a=Array(i);++n<i;)a[n]=r[t+n];n=-1;for(var s=Array(t+1);++n<t;)s[n]=r[n];return s[t]=a,o(e,this,s)}}function h(e,r){return!!(r=null==r?t:r)&&("number"==typeof e||a.test(e))&&e>-1&&e%1==0&&e<r}function y(e,t){return e===t||e!=e&&t!=t}var v=Array.isArray;function b(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=t}(e.length)&&!function(e){var t=k(e)?l.call(e):"";return t==n||t==i}(e)}function k(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}var x,S=(x=function(e,t,r,n){!function(e,t,r,n){r||(r={});for(var i=-1,a=t.length;++i<a;){var o=t[i],s=n?n(r[o],e[o],o,r,e):void 0;m(r,o,void 0===s?e[o]:s)}}(t,function(e){return b(e)?p(e,!0):g(e)}(t),e,n)},_((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,a=n>2?t[2]:void 0;for(i=x.length>3&&"function"==typeof i?(n--,i):void 0,a&&function(e,t,r){if(!k(r))return!1;var n=typeof t;return!!("number"==n?b(r)&&h(t,r.length):"string"==n&&t in r)&&y(r[t],e)}(t[0],t[1],a)&&(i=n<3?void 0:i,n=1),e=Object(e);++r<n;){var o=t[r];o&&x(e,o,r,i)}return e}))),w=_((function(e){return e.push(void 0,f),o(S,void 0,e)}));e.exports=w},40209:e=>{var t="__lodash_hash_undefined__",r=9007199254740991,n="[object Arguments]",i="[object Function]",a="[object GeneratorFunction]",o=/^\[object .+?Constructor\]$/,s="object"==typeof global&&global&&global.Object===Object&&global,c="object"==typeof self&&self&&self.Object===Object&&self,l=s||c||Function("return this")();function u(e,t){return!!(e?e.length:0)&&function(e,t,r){if(t!=t)return function(e,t,r,n){var i=e.length,a=r+(n?1:-1);for(;n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}(e,f,r);var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,0)>-1}function d(e,t,r){for(var n=-1,i=e?e.length:0;++n<i;)if(r(t,e[n]))return!0;return!1}function p(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}function f(e){return e!=e}function m(e,t){return e.has(t)}var g,_=Array.prototype,h=Function.prototype,y=Object.prototype,v=l["__core-js_shared__"],b=(g=/[^.]+$/.exec(v&&v.keys&&v.keys.IE_PROTO||""))?"Symbol(src)_1."+g:"",k=h.toString,x=y.hasOwnProperty,S=y.toString,w=RegExp("^"+k.call(x).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=l.Symbol,E=y.propertyIsEnumerable,T=_.splice,C=D?D.isConcatSpreadable:void 0,A=Math.max,N=U(l,"Map"),P=U(Object,"create");function I(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function F(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function O(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function R(e){var t=-1,r=e?e.length:0;for(this.__data__=new O;++t<r;)this.add(e[t])}function M(e,t){for(var r,n,i=e.length;i--;)if((r=e[i][0])===(n=t)||r!=r&&n!=n)return i;return-1}function L(e,t,r,n){var i,a=-1,o=u,s=!0,c=e.length,l=[],p=t.length;if(!c)return l;r&&(t=function(e,t){for(var r=-1,n=e?e.length:0,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}(t,(i=r,function(e){return i(e)}))),n?(o=d,s=!1):t.length>=200&&(o=m,s=!1,t=new R(t));e:for(;++a<c;){var f=e[a],g=r?r(f):f;if(f=n||0!==f?f:0,s&&g==g){for(var _=p;_--;)if(t[_]===g)continue e;l.push(f)}else o(t,g,n)||l.push(f)}return l}function j(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=q),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?j(s,t-1,r,n,i):p(i,s):n||(i[i.length]=s)}return i}function B(e){if(!Y(e)||(t=e,b&&b in t))return!1;var t,r=$(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?w:o;return r.test(function(e){if(null!=e){try{return k.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}function z(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function U(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return B(r)?r:void 0}function q(e){return K(e)||function(e){return G(e)&&x.call(e,"callee")&&(!E.call(e,"callee")||S.call(e)==n)}(e)||!!(C&&e&&e[C])}I.prototype.clear=function(){this.__data__=P?P(null):{}},I.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},I.prototype.get=function(e){var r=this.__data__;if(P){var n=r[e];return n===t?void 0:n}return x.call(r,e)?r[e]:void 0},I.prototype.has=function(e){var t=this.__data__;return P?void 0!==t[e]:x.call(t,e)},I.prototype.set=function(e,r){return this.__data__[e]=P&&void 0===r?t:r,this},F.prototype.clear=function(){this.__data__=[]},F.prototype.delete=function(e){var t=this.__data__,r=M(t,e);return!(r<0)&&(r==t.length-1?t.pop():T.call(t,r,1),!0)},F.prototype.get=function(e){var t=this.__data__,r=M(t,e);return r<0?void 0:t[r][1]},F.prototype.has=function(e){return M(this.__data__,e)>-1},F.prototype.set=function(e,t){var r=this.__data__,n=M(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},O.prototype.clear=function(){this.__data__={hash:new I,map:new(N||F),string:new I}},O.prototype.delete=function(e){return z(this,e).delete(e)},O.prototype.get=function(e){return z(this,e).get(e)},O.prototype.has=function(e){return z(this,e).has(e)},O.prototype.set=function(e,t){return z(this,e).set(e,t),this},R.prototype.add=R.prototype.push=function(e){return this.__data__.set(e,t),this},R.prototype.has=function(e){return this.__data__.has(e)};var J,V,H=(J=function(e,t){return G(e)?L(e,j(t,1,G,!0)):[]},V=A(void 0===V?J.length-1:V,0),function(){for(var e=arguments,t=-1,r=A(e.length-V,0),n=Array(r);++t<r;)n[t]=e[V+t];t=-1;for(var i=Array(V+1);++t<V;)i[t]=e[t];return i[V]=n,function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(J,this,i)});var K=Array.isArray;function W(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=r}(e.length)&&!$(e)}function G(e){return function(e){return!!e&&"object"==typeof e}(e)&&W(e)}function $(e){var t=Y(e)?S.call(e):"";return t==i||t==a}function Y(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}e.exports=H},10912:e=>{var t=1/0,r="[object Symbol]",n=/[\\^$.*+?()[\]{}|]/g,i=RegExp(n.source),a="object"==typeof global&&global&&global.Object===Object&&global,o="object"==typeof self&&self&&self.Object===Object&&self,s=a||o||Function("return this")(),c=Object.prototype.toString,l=s.Symbol,u=l?l.prototype:void 0,d=u?u.toString:void 0;function p(e){if("string"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&c.call(e)==r}(e))return d?d.call(e):"";var n=e+"";return"0"==n&&1/e==-t?"-0":n}e.exports=function(e){var t;return(e=null==(t=e)?"":p(t))&&i.test(e)?e.replace(n,"\\$&"):e}},16308:e=>{var t=9007199254740991,r="[object Arguments]",n="[object Function]",i="[object GeneratorFunction]",a="object"==typeof global&&global&&global.Object===Object&&global,o="object"==typeof self&&self&&self.Object===Object&&self,s=a||o||Function("return this")();function c(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}var l=Object.prototype,u=l.hasOwnProperty,d=l.toString,p=s.Symbol,f=l.propertyIsEnumerable,m=p?p.isConcatSpreadable:void 0;function g(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=_),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?g(s,t-1,r,n,i):c(i,s):n||(i[i.length]=s)}return i}function _(e){return h(e)||function(e){return function(e){return function(e){return!!e&&"object"==typeof e}(e)&&function(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=t}(e.length)&&!function(e){var t=function(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}(e)?d.call(e):"";return t==n||t==i}(e)}(e)}(e)&&u.call(e,"callee")&&(!f.call(e,"callee")||d.call(e)==r)}(e)||!!(m&&e&&e[m])}var h=Array.isArray;e.exports=function(e){return(e?e.length:0)?g(e,1):[]}},31324:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=1,a=2,o=1/0,s=9007199254740991,c="[object Arguments]",l="[object Array]",u="[object Boolean]",d="[object Date]",p="[object Error]",f="[object Function]",m="[object GeneratorFunction]",g="[object Map]",_="[object Number]",h="[object Object]",y="[object Promise]",v="[object RegExp]",b="[object Set]",k="[object String]",x="[object Symbol]",S="[object WeakMap]",w="[object ArrayBuffer]",D="[object DataView]",E=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,T=/^\w*$/,C=/^\./,A=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,N=/\\(\\)?/g,P=/^\[object .+?Constructor\]$/,I=/^(?:0|[1-9]\d*)$/,F={};F["[object Float32Array]"]=F["[object Float64Array]"]=F["[object Int8Array]"]=F["[object Int16Array]"]=F["[object Int32Array]"]=F["[object Uint8Array]"]=F["[object Uint8ClampedArray]"]=F["[object Uint16Array]"]=F["[object Uint32Array]"]=!0,F[c]=F[l]=F[w]=F[u]=F[D]=F[d]=F[p]=F[f]=F[g]=F[_]=F[h]=F[v]=F[b]=F[k]=F[S]=!1;var O="object"==typeof global&&global&&global.Object===Object&&global,R="object"==typeof self&&self&&self.Object===Object&&self,M=O||R||Function("return this")(),L=t&&!t.nodeType&&t,j=L&&e&&!e.nodeType&&e,B=j&&j.exports===L&&O.process,z=function(){try{return B&&B.binding("util")}catch(e){}}(),U=z&&z.isTypedArray;function q(e,t,r,n){for(var i=-1,a=e?e.length:0;++i<a;){var o=e[i];t(n,o,r(o),e)}return n}function J(e,t){for(var r=-1,n=e?e.length:0;++r<n;)if(t(e[r],r,e))return!0;return!1}function V(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}function H(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function K(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var W,G,$,Y=Array.prototype,X=Function.prototype,Q=Object.prototype,Z=M["__core-js_shared__"],ee=(W=/[^.]+$/.exec(Z&&Z.keys&&Z.keys.IE_PROTO||""))?"Symbol(src)_1."+W:"",te=X.toString,re=Q.hasOwnProperty,ne=Q.toString,ie=RegExp("^"+te.call(re).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ae=M.Symbol,oe=M.Uint8Array,se=Q.propertyIsEnumerable,ce=Y.splice,le=(G=Object.keys,$=Object,function(e){return G($(e))}),ue=He(M,"DataView"),de=He(M,"Map"),pe=He(M,"Promise"),fe=He(M,"Set"),me=He(M,"WeakMap"),ge=He(Object,"create"),_e=Ze(ue),he=Ze(de),ye=Ze(pe),ve=Ze(fe),be=Ze(me),ke=ae?ae.prototype:void 0,xe=ke?ke.valueOf:void 0,Se=ke?ke.toString:void 0;function we(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function De(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Ee(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Te(e){var t=-1,r=e?e.length:0;for(this.__data__=new Ee;++t<r;)this.add(e[t])}function Ce(e){this.__data__=new De(e)}function Ae(e,t){var r=ot(e)||at(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],n=r.length,i=!!n;for(var a in e)!t&&!re.call(e,a)||i&&("length"==a||We(a,n))||r.push(a);return r}function Ne(e,t){for(var r=e.length;r--;)if(it(e[r][0],t))return r;return-1}function Pe(e,t,r,n){return Oe(e,(function(e,i,a){t(n,e,r(e),a)})),n}we.prototype.clear=function(){this.__data__=ge?ge(null):{}},we.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},we.prototype.get=function(e){var t=this.__data__;if(ge){var r=t[e];return r===n?void 0:r}return re.call(t,e)?t[e]:void 0},we.prototype.has=function(e){var t=this.__data__;return ge?void 0!==t[e]:re.call(t,e)},we.prototype.set=function(e,t){return this.__data__[e]=ge&&void 0===t?n:t,this},De.prototype.clear=function(){this.__data__=[]},De.prototype.delete=function(e){var t=this.__data__,r=Ne(t,e);return!(r<0)&&(r==t.length-1?t.pop():ce.call(t,r,1),!0)},De.prototype.get=function(e){var t=this.__data__,r=Ne(t,e);return r<0?void 0:t[r][1]},De.prototype.has=function(e){return Ne(this.__data__,e)>-1},De.prototype.set=function(e,t){var r=this.__data__,n=Ne(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},Ee.prototype.clear=function(){this.__data__={hash:new we,map:new(de||De),string:new we}},Ee.prototype.delete=function(e){return Ve(this,e).delete(e)},Ee.prototype.get=function(e){return Ve(this,e).get(e)},Ee.prototype.has=function(e){return Ve(this,e).has(e)},Ee.prototype.set=function(e,t){return Ve(this,e).set(e,t),this},Te.prototype.add=Te.prototype.push=function(e){return this.__data__.set(e,n),this},Te.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.clear=function(){this.__data__=new De},Ce.prototype.delete=function(e){return this.__data__.delete(e)},Ce.prototype.get=function(e){return this.__data__.get(e)},Ce.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.set=function(e,t){var r=this.__data__;if(r instanceof De){var n=r.__data__;if(!de||n.length<199)return n.push([e,t]),this;r=this.__data__=new Ee(n)}return r.set(e,t),this};var Ie,Fe,Oe=(Ie=function(e,t){return e&&Re(e,t,mt)},function(e,t){if(null==e)return e;if(!st(e))return Ie(e,t);for(var r=e.length,n=Fe?r:-1,i=Object(e);(Fe?n--:++n<r)&&!1!==t(i[n],n,i););return e}),Re=function(e){return function(t,r,n){for(var i=-1,a=Object(t),o=n(t),s=o.length;s--;){var c=o[e?s:++i];if(!1===r(a[c],c,a))break}return t}}();function Me(e,t){for(var r=0,n=(t=Ge(t,e)?[t]:qe(t)).length;null!=e&&r<n;)e=e[Qe(t[r++])];return r&&r==n?e:void 0}function Le(e,t){return null!=e&&t in Object(e)}function je(e,t,r,n,o){return e===t||(null==e||null==t||!ut(e)&&!dt(t)?e!=e&&t!=t:function(e,t,r,n,o,s){var f=ot(e),m=ot(t),y=l,S=l;f||(y=(y=Ke(e))==c?h:y);m||(S=(S=Ke(t))==c?h:S);var E=y==h&&!V(e),T=S==h&&!V(t),C=y==S;if(C&&!E)return s||(s=new Ce),f||ft(e)?Je(e,t,r,n,o,s):function(e,t,r,n,o,s,c){switch(r){case D:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case w:return!(e.byteLength!=t.byteLength||!n(new oe(e),new oe(t)));case u:case d:case _:return it(+e,+t);case p:return e.name==t.name&&e.message==t.message;case v:case k:return e==t+"";case g:var l=H;case b:var f=s&a;if(l||(l=K),e.size!=t.size&&!f)return!1;var m=c.get(e);if(m)return m==t;s|=i,c.set(e,t);var h=Je(l(e),l(t),n,o,s,c);return c.delete(e),h;case x:if(xe)return xe.call(e)==xe.call(t)}return!1}(e,t,y,r,n,o,s);if(!(o&a)){var A=E&&re.call(e,"__wrapped__"),N=T&&re.call(t,"__wrapped__");if(A||N){var P=A?e.value():e,I=N?t.value():t;return s||(s=new Ce),r(P,I,n,o,s)}}if(!C)return!1;return s||(s=new Ce),function(e,t,r,n,i,o){var s=i&a,c=mt(e),l=c.length,u=mt(t),d=u.length;if(l!=d&&!s)return!1;var p=l;for(;p--;){var f=c[p];if(!(s?f in t:re.call(t,f)))return!1}var m=o.get(e);if(m&&o.get(t))return m==t;var g=!0;o.set(e,t),o.set(t,e);var _=s;for(;++p<l;){var h=e[f=c[p]],y=t[f];if(n)var v=s?n(y,h,f,t,e,o):n(h,y,f,e,t,o);if(!(void 0===v?h===y||r(h,y,n,i,o):v)){g=!1;break}_||(_="constructor"==f)}if(g&&!_){var b=e.constructor,k=t.constructor;b==k||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof k&&k instanceof k||(g=!1)}return o.delete(e),o.delete(t),g}(e,t,r,n,o,s)}(e,t,je,r,n,o))}function Be(e){return!(!ut(e)||function(e){return!!ee&&ee in e}(e))&&(ct(e)||V(e)?ie:P).test(Ze(e))}function ze(e){return"function"==typeof e?e:null==e?gt:"object"==typeof e?ot(e)?function(e,t){if(Ge(e)&&$e(t))return Ye(Qe(e),t);return function(r){var n=function(e,t,r){var n=null==e?void 0:Me(e,t);return void 0===n?r:n}(r,e);return void 0===n&&n===t?function(e,t){return null!=e&&function(e,t,r){t=Ge(t,e)?[t]:qe(t);var n,i=-1,a=t.length;for(;++i<a;){var o=Qe(t[i]);if(!(n=null!=e&&r(e,o)))break;e=e[o]}if(n)return n;a=e?e.length:0;return!!a&<(a)&&We(o,a)&&(ot(e)||at(e))}(e,t,Le)}(r,e):je(t,n,void 0,i|a)}}(e[0],e[1]):function(e){var t=function(e){var t=mt(e),r=t.length;for(;r--;){var n=t[r],i=e[n];t[r]=[n,i,$e(i)]}return t}(e);if(1==t.length&&t[0][2])return Ye(t[0][0],t[0][1]);return function(r){return r===e||function(e,t,r,n){var o=r.length,s=o,c=!n;if(null==e)return!s;for(e=Object(e);o--;){var l=r[o];if(c&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++o<s;){var u=(l=r[o])[0],d=e[u],p=l[1];if(c&&l[2]){if(void 0===d&&!(u in e))return!1}else{var f=new Ce;if(n)var m=n(d,p,u,e,t,f);if(!(void 0===m?je(p,d,n,i|a,f):m))return!1}}return!0}(r,e,t)}}(e):Ge(t=e)?(r=Qe(t),function(e){return null==e?void 0:e[r]}):function(e){return function(t){return Me(t,e)}}(t);var t,r}function Ue(e){if(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||Q,t!==n)return le(e);var t,r,n,i=[];for(var a in Object(e))re.call(e,a)&&"constructor"!=a&&i.push(a);return i}function qe(e){return ot(e)?e:Xe(e)}function Je(e,t,r,n,o,s){var c=o&a,l=e.length,u=t.length;if(l!=u&&!(c&&u>l))return!1;var d=s.get(e);if(d&&s.get(t))return d==t;var p=-1,f=!0,m=o&i?new Te:void 0;for(s.set(e,t),s.set(t,e);++p<l;){var g=e[p],_=t[p];if(n)var h=c?n(_,g,p,t,e,s):n(g,_,p,e,t,s);if(void 0!==h){if(h)continue;f=!1;break}if(m){if(!J(t,(function(e,t){if(!m.has(t)&&(g===e||r(g,e,n,o,s)))return m.add(t)}))){f=!1;break}}else if(g!==_&&!r(g,_,n,o,s)){f=!1;break}}return s.delete(e),s.delete(t),f}function Ve(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function He(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Be(r)?r:void 0}var Ke=function(e){return ne.call(e)};function We(e,t){return!!(t=null==t?s:t)&&("number"==typeof e||I.test(e))&&e>-1&&e%1==0&&e<t}function Ge(e,t){if(ot(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!pt(e))||(T.test(e)||!E.test(e)||null!=t&&e in Object(t))}function $e(e){return e==e&&!ut(e)}function Ye(e,t){return function(r){return null!=r&&(r[e]===t&&(void 0!==t||e in Object(r)))}}(ue&&Ke(new ue(new ArrayBuffer(1)))!=D||de&&Ke(new de)!=g||pe&&Ke(pe.resolve())!=y||fe&&Ke(new fe)!=b||me&&Ke(new me)!=S)&&(Ke=function(e){var t=ne.call(e),r=t==h?e.constructor:void 0,n=r?Ze(r):void 0;if(n)switch(n){case _e:return D;case he:return g;case ye:return y;case ve:return b;case be:return S}return t});var Xe=nt((function(e){var t;e=null==(t=e)?"":function(e){if("string"==typeof e)return e;if(pt(e))return Se?Se.call(e):"";var t=e+"";return"0"==t&&1/e==-o?"-0":t}(t);var r=[];return C.test(e)&&r.push(""),e.replace(A,(function(e,t,n,i){r.push(n?i.replace(N,"$1"):t||e)})),r}));function Qe(e){if("string"==typeof e||pt(e))return e;var t=e+"";return"0"==t&&1/e==-o?"-0":t}function Ze(e){if(null!=e){try{return te.call(e)}catch(e){}try{return e+""}catch(e){}}return""}var et,tt,rt=(et=function(e,t,r){re.call(e,r)?e[r].push(t):e[r]=[t]},function(e,t){var r=ot(e)?q:Pe,n=tt?tt():{};return r(e,et,ze(t),n)});function nt(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new TypeError("Expected a function");var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var o=e.apply(this,n);return r.cache=a.set(i,o),o};return r.cache=new(nt.Cache||Ee),r}function it(e,t){return e===t||e!=e&&t!=t}function at(e){return function(e){return dt(e)&&st(e)}(e)&&re.call(e,"callee")&&(!se.call(e,"callee")||ne.call(e)==c)}nt.Cache=Ee;var ot=Array.isArray;function st(e){return null!=e&<(e.length)&&!ct(e)}function ct(e){var t=ut(e)?ne.call(e):"";return t==f||t==m}function lt(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=s}function ut(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function dt(e){return!!e&&"object"==typeof e}function pt(e){return"symbol"==typeof e||dt(e)&&ne.call(e)==x}var ft=U?function(e){return function(t){return e(t)}}(U):function(e){return dt(e)&<(e.length)&&!!F[ne.call(e)]};function mt(e){return st(e)?Ae(e):Ue(e)}function gt(e){return e}e.exports=rt},87914:e=>{var t=Object.prototype.toString;e.exports=function(e){return!0===e||!1===e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Boolean]"==t.call(e)}},8142:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=1,a=2,o=9007199254740991,s="[object Arguments]",c="[object Array]",l="[object AsyncFunction]",u="[object Boolean]",d="[object Date]",p="[object Error]",f="[object Function]",m="[object GeneratorFunction]",g="[object Map]",_="[object Number]",h="[object Null]",y="[object Object]",v="[object Promise]",b="[object Proxy]",k="[object RegExp]",x="[object Set]",S="[object String]",w="[object Symbol]",D="[object Undefined]",E="[object WeakMap]",T="[object ArrayBuffer]",C="[object DataView]",A=/^\[object .+?Constructor\]$/,N=/^(?:0|[1-9]\d*)$/,P={};P["[object Float32Array]"]=P["[object Float64Array]"]=P["[object Int8Array]"]=P["[object Int16Array]"]=P["[object Int32Array]"]=P["[object Uint8Array]"]=P["[object Uint8ClampedArray]"]=P["[object Uint16Array]"]=P["[object Uint32Array]"]=!0,P[s]=P[c]=P[T]=P[u]=P[C]=P[d]=P[p]=P[f]=P[g]=P[_]=P[y]=P[k]=P[x]=P[S]=P[E]=!1;var I="object"==typeof global&&global&&global.Object===Object&&global,F="object"==typeof self&&self&&self.Object===Object&&self,O=I||F||Function("return this")(),R=t&&!t.nodeType&&t,M=R&&e&&!e.nodeType&&e,L=M&&M.exports===R,j=L&&I.process,B=function(){try{return j&&j.binding&&j.binding("util")}catch(e){}}(),z=B&&B.isTypedArray;function U(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}function q(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function J(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var V,H,K,W=Array.prototype,G=Function.prototype,$=Object.prototype,Y=O["__core-js_shared__"],X=G.toString,Q=$.hasOwnProperty,Z=(V=/[^.]+$/.exec(Y&&Y.keys&&Y.keys.IE_PROTO||""))?"Symbol(src)_1."+V:"",ee=$.toString,te=RegExp("^"+X.call(Q).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),re=L?O.Buffer:void 0,ne=O.Symbol,ie=O.Uint8Array,ae=$.propertyIsEnumerable,oe=W.splice,se=ne?ne.toStringTag:void 0,ce=Object.getOwnPropertySymbols,le=re?re.isBuffer:void 0,ue=(H=Object.keys,K=Object,function(e){return H(K(e))}),de=Be(O,"DataView"),pe=Be(O,"Map"),fe=Be(O,"Promise"),me=Be(O,"Set"),ge=Be(O,"WeakMap"),_e=Be(Object,"create"),he=Je(de),ye=Je(pe),ve=Je(fe),be=Je(me),ke=Je(ge),xe=ne?ne.prototype:void 0,Se=xe?xe.valueOf:void 0;function we(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function De(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Ee(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Te(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new Ee;++t<r;)this.add(e[t])}function Ce(e){var t=this.__data__=new De(e);this.size=t.size}function Ae(e,t){var r=Ke(e),n=!r&&He(e),i=!r&&!n&&We(e),a=!r&&!n&&!i&&Qe(e),o=r||n||i||a,s=o?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],c=s.length;for(var l in e)!t&&!Q.call(e,l)||o&&("length"==l||i&&("offset"==l||"parent"==l)||a&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||qe(l,c))||s.push(l);return s}function Ne(e,t){for(var r=e.length;r--;)if(Ve(e[r][0],t))return r;return-1}function Pe(e){return null==e?void 0===e?D:h:se&&se in Object(e)?function(e){var t=Q.call(e,se),r=e[se];try{e[se]=void 0;var n=!0}catch(e){}var i=ee.call(e);n&&(t?e[se]=r:delete e[se]);return i}(e):function(e){return ee.call(e)}(e)}function Ie(e){return Xe(e)&&Pe(e)==s}function Fe(e,t,r,n,o){return e===t||(null==e||null==t||!Xe(e)&&!Xe(t)?e!=e&&t!=t:function(e,t,r,n,o,l){var f=Ke(e),m=Ke(t),h=f?c:Ue(e),v=m?c:Ue(t),b=(h=h==s?y:h)==y,D=(v=v==s?y:v)==y,E=h==v;if(E&&We(e)){if(!We(t))return!1;f=!0,b=!1}if(E&&!b)return l||(l=new Ce),f||Qe(e)?Me(e,t,r,n,o,l):function(e,t,r,n,o,s,c){switch(r){case C:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case T:return!(e.byteLength!=t.byteLength||!s(new ie(e),new ie(t)));case u:case d:case _:return Ve(+e,+t);case p:return e.name==t.name&&e.message==t.message;case k:case S:return e==t+"";case g:var l=q;case x:var f=n&i;if(l||(l=J),e.size!=t.size&&!f)return!1;var m=c.get(e);if(m)return m==t;n|=a,c.set(e,t);var h=Me(l(e),l(t),n,o,s,c);return c.delete(e),h;case w:if(Se)return Se.call(e)==Se.call(t)}return!1}(e,t,h,r,n,o,l);if(!(r&i)){var A=b&&Q.call(e,"__wrapped__"),N=D&&Q.call(t,"__wrapped__");if(A||N){var P=A?e.value():e,I=N?t.value():t;return l||(l=new Ce),o(P,I,r,n,l)}}if(!E)return!1;return l||(l=new Ce),function(e,t,r,n,a,o){var s=r&i,c=Le(e),l=c.length,u=Le(t),d=u.length;if(l!=d&&!s)return!1;var p=l;for(;p--;){var f=c[p];if(!(s?f in t:Q.call(t,f)))return!1}var m=o.get(e);if(m&&o.get(t))return m==t;var g=!0;o.set(e,t),o.set(t,e);var _=s;for(;++p<l;){var h=e[f=c[p]],y=t[f];if(n)var v=s?n(y,h,f,t,e,o):n(h,y,f,e,t,o);if(!(void 0===v?h===y||a(h,y,r,n,o):v)){g=!1;break}_||(_="constructor"==f)}if(g&&!_){var b=e.constructor,k=t.constructor;b==k||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof k&&k instanceof k||(g=!1)}return o.delete(e),o.delete(t),g}(e,t,r,n,o,l)}(e,t,r,n,Fe,o))}function Oe(e){return!(!Ye(e)||function(e){return!!Z&&Z in e}(e))&&(Ge(e)?te:A).test(Je(e))}function Re(e){if(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||$,t!==n)return ue(e);var t,r,n,i=[];for(var a in Object(e))Q.call(e,a)&&"constructor"!=a&&i.push(a);return i}function Me(e,t,r,n,o,s){var c=r&i,l=e.length,u=t.length;if(l!=u&&!(c&&u>l))return!1;var d=s.get(e);if(d&&s.get(t))return d==t;var p=-1,f=!0,m=r&a?new Te:void 0;for(s.set(e,t),s.set(t,e);++p<l;){var g=e[p],_=t[p];if(n)var h=c?n(_,g,p,t,e,s):n(g,_,p,e,t,s);if(void 0!==h){if(h)continue;f=!1;break}if(m){if(!U(t,(function(e,t){if(i=t,!m.has(i)&&(g===e||o(g,e,r,n,s)))return m.push(t);var i}))){f=!1;break}}else if(g!==_&&!o(g,_,r,n,s)){f=!1;break}}return s.delete(e),s.delete(t),f}function Le(e){return function(e,t,r){var n=t(e);return Ke(e)?n:function(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}(n,r(e))}(e,Ze,ze)}function je(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function Be(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Oe(r)?r:void 0}we.prototype.clear=function(){this.__data__=_e?_e(null):{},this.size=0},we.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},we.prototype.get=function(e){var t=this.__data__;if(_e){var r=t[e];return r===n?void 0:r}return Q.call(t,e)?t[e]:void 0},we.prototype.has=function(e){var t=this.__data__;return _e?void 0!==t[e]:Q.call(t,e)},we.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=_e&&void 0===t?n:t,this},De.prototype.clear=function(){this.__data__=[],this.size=0},De.prototype.delete=function(e){var t=this.__data__,r=Ne(t,e);return!(r<0)&&(r==t.length-1?t.pop():oe.call(t,r,1),--this.size,!0)},De.prototype.get=function(e){var t=this.__data__,r=Ne(t,e);return r<0?void 0:t[r][1]},De.prototype.has=function(e){return Ne(this.__data__,e)>-1},De.prototype.set=function(e,t){var r=this.__data__,n=Ne(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Ee.prototype.clear=function(){this.size=0,this.__data__={hash:new we,map:new(pe||De),string:new we}},Ee.prototype.delete=function(e){var t=je(this,e).delete(e);return this.size-=t?1:0,t},Ee.prototype.get=function(e){return je(this,e).get(e)},Ee.prototype.has=function(e){return je(this,e).has(e)},Ee.prototype.set=function(e,t){var r=je(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Te.prototype.add=Te.prototype.push=function(e){return this.__data__.set(e,n),this},Te.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.clear=function(){this.__data__=new De,this.size=0},Ce.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Ce.prototype.get=function(e){return this.__data__.get(e)},Ce.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.set=function(e,t){var r=this.__data__;if(r instanceof De){var n=r.__data__;if(!pe||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Ee(n)}return r.set(e,t),this.size=r.size,this};var ze=ce?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var o=e[r];t(o,r,e)&&(a[i++]=o)}return a}(ce(e),(function(t){return ae.call(e,t)})))}:function(){return[]},Ue=Pe;function qe(e,t){return!!(t=null==t?o:t)&&("number"==typeof e||N.test(e))&&e>-1&&e%1==0&&e<t}function Je(e){if(null!=e){try{return X.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ve(e,t){return e===t||e!=e&&t!=t}(de&&Ue(new de(new ArrayBuffer(1)))!=C||pe&&Ue(new pe)!=g||fe&&Ue(fe.resolve())!=v||me&&Ue(new me)!=x||ge&&Ue(new ge)!=E)&&(Ue=function(e){var t=Pe(e),r=t==y?e.constructor:void 0,n=r?Je(r):"";if(n)switch(n){case he:return C;case ye:return g;case ve:return v;case be:return x;case ke:return E}return t});var He=Ie(function(){return arguments}())?Ie:function(e){return Xe(e)&&Q.call(e,"callee")&&!ae.call(e,"callee")},Ke=Array.isArray;var We=le||function(){return!1};function Ge(e){if(!Ye(e))return!1;var t=Pe(e);return t==f||t==m||t==l||t==b}function $e(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=o}function Ye(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Xe(e){return null!=e&&"object"==typeof e}var Qe=z?function(e){return function(t){return e(t)}}(z):function(e){return Xe(e)&&$e(e.length)&&!!P[Pe(e)]};function Ze(e){return null!=(t=e)&&$e(t.length)&&!Ge(t)?Ae(e):Re(e);var t}e.exports=function(e,t){return Fe(e,t)}},85710:e=>{var t="[object Null]",r="[object Undefined]",n="object"==typeof global&&global&&global.Object===Object&&global,i="object"==typeof self&&self&&self.Object===Object&&self,a=n||i||Function("return this")(),o=Object.prototype,s=o.hasOwnProperty,c=o.toString,l=a.Symbol,u=l?l.toStringTag:void 0;function d(e){return null==e?void 0===e?r:t:u&&u in Object(e)?function(e){var t=s.call(e,u),r=e[u];try{e[u]=void 0;var n=!0}catch(e){}var i=c.call(e);n&&(t?e[u]=r:delete e[u]);return i}(e):function(e){return c.call(e)}(e)}e.exports=function(e){if(!function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}(e))return!1;var t=d(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},74733:e=>{e.exports=function(e){return null==e}},79001:e=>{var t,r,n=Function.prototype,i=Object.prototype,a=n.toString,o=i.hasOwnProperty,s=a.call(Object),c=i.toString,l=(t=Object.getPrototypeOf,r=Object,function(e){return t(r(e))});e.exports=function(e){if(!function(e){return!!e&&"object"==typeof e}(e)||"[object Object]"!=c.call(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e))return!1;var t=l(e);if(null===t)return!0;var r=o.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&a.call(r)==s}},58254:e=>{e.exports=function(e){return void 0===e}},9897:e=>{var t="__lodash_hash_undefined__",r=9007199254740991,n="[object Arguments]",i="[object Function]",a="[object GeneratorFunction]",o=/^\[object .+?Constructor\]$/,s="object"==typeof global&&global&&global.Object===Object&&global,c="object"==typeof self&&self&&self.Object===Object&&self,l=s||c||Function("return this")();function u(e,t){return!!(e?e.length:0)&&function(e,t,r){if(t!=t)return function(e,t,r,n){var i=e.length,a=r+(n?1:-1);for(;n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}(e,f,r);var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,0)>-1}function d(e,t,r){for(var n=-1,i=e?e.length:0;++n<i;)if(r(t,e[n]))return!0;return!1}function p(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}function f(e){return e!=e}function m(e,t){return e.has(t)}function g(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var _,h=Array.prototype,y=Function.prototype,v=Object.prototype,b=l["__core-js_shared__"],k=(_=/[^.]+$/.exec(b&&b.keys&&b.keys.IE_PROTO||""))?"Symbol(src)_1."+_:"",x=y.toString,S=v.hasOwnProperty,w=v.toString,D=RegExp("^"+x.call(S).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),E=l.Symbol,T=v.propertyIsEnumerable,C=h.splice,A=E?E.isConcatSpreadable:void 0,N=Math.max,P=J(l,"Map"),I=J(l,"Set"),F=J(Object,"create");function O(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function R(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function M(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function L(e){var t=-1,r=e?e.length:0;for(this.__data__=new M;++t<r;)this.add(e[t])}function j(e,t){for(var r,n,i=e.length;i--;)if((r=e[i][0])===(n=t)||r!=r&&n!=n)return i;return-1}function B(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=V),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?B(s,t-1,r,n,i):p(i,s):n||(i[i.length]=s)}return i}function z(e){if(!Q(e)||(t=e,k&&k in t))return!1;var t,r=X(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?D:o;return r.test(function(e){if(null!=e){try{return x.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}O.prototype.clear=function(){this.__data__=F?F(null):{}},O.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},O.prototype.get=function(e){var r=this.__data__;if(F){var n=r[e];return n===t?void 0:n}return S.call(r,e)?r[e]:void 0},O.prototype.has=function(e){var t=this.__data__;return F?void 0!==t[e]:S.call(t,e)},O.prototype.set=function(e,r){return this.__data__[e]=F&&void 0===r?t:r,this},R.prototype.clear=function(){this.__data__=[]},R.prototype.delete=function(e){var t=this.__data__,r=j(t,e);return!(r<0)&&(r==t.length-1?t.pop():C.call(t,r,1),!0)},R.prototype.get=function(e){var t=this.__data__,r=j(t,e);return r<0?void 0:t[r][1]},R.prototype.has=function(e){return j(this.__data__,e)>-1},R.prototype.set=function(e,t){var r=this.__data__,n=j(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},M.prototype.clear=function(){this.__data__={hash:new O,map:new(P||R),string:new O}},M.prototype.delete=function(e){return q(this,e).delete(e)},M.prototype.get=function(e){return q(this,e).get(e)},M.prototype.has=function(e){return q(this,e).has(e)},M.prototype.set=function(e,t){return q(this,e).set(e,t),this},L.prototype.add=L.prototype.push=function(e){return this.__data__.set(e,t),this},L.prototype.has=function(e){return this.__data__.has(e)};var U=I&&1/g(new I([,-0]))[1]==1/0?function(e){return new I(e)}:function(){};function q(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function J(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return z(r)?r:void 0}function V(e){return G(e)||function(e){return Y(e)&&S.call(e,"callee")&&(!T.call(e,"callee")||w.call(e)==n)}(e)||!!(A&&e&&e[A])}var H,K,W=(H=function(e){return function(e,t,r){var n=-1,i=u,a=e.length,o=!0,s=[],c=s;if(r)o=!1,i=d;else if(a>=200){var l=t?null:U(e);if(l)return g(l);o=!1,i=m,c=new L}else c=t?[]:s;e:for(;++n<a;){var p=e[n],f=t?t(p):p;if(p=r||0!==p?p:0,o&&f==f){for(var _=c.length;_--;)if(c[_]===f)continue e;t&&c.push(f),s.push(p)}else i(c,f,r)||(c!==s&&c.push(f),s.push(p))}return s}(B(e,1,Y,!0))},K=N(void 0===K?H.length-1:K,0),function(){for(var e=arguments,t=-1,r=N(e.length-K,0),n=Array(r);++t<r;)n[t]=e[K+t];t=-1;for(var i=Array(K+1);++t<K;)i[t]=e[t];return i[K]=n,function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(H,this,i)});var G=Array.isArray;function $(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=r}(e.length)&&!X(e)}function Y(e){return function(e){return!!e&&"object"==typeof e}(e)&&$(e)}function X(e){var t=Q(e)?w.call(e):"";return t==i||t==a}function Q(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}e.exports=W},90879:e=>{var t=200,r="__lodash_hash_undefined__",n="[object Function]",i="[object GeneratorFunction]",a=/^\[object .+?Constructor\]$/,o="object"==typeof global&&global&&global.Object===Object&&global,s="object"==typeof self&&self&&self.Object===Object&&self,c=o||s||Function("return this")();function l(e,t){return!!(e?e.length:0)&&function(e,t,r){if(t!=t)return function(e,t,r,n){var i=e.length,a=r+(n?1:-1);for(;n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}(e,d,r);var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,0)>-1}function u(e,t,r){for(var n=-1,i=e?e.length:0;++n<i;)if(r(t,e[n]))return!0;return!1}function d(e){return e!=e}function p(e,t){return e.has(t)}function f(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var m,g=Array.prototype,_=Function.prototype,h=Object.prototype,y=c["__core-js_shared__"],v=(m=/[^.]+$/.exec(y&&y.keys&&y.keys.IE_PROTO||""))?"Symbol(src)_1."+m:"",b=_.toString,k=h.hasOwnProperty,x=h.toString,S=RegExp("^"+b.call(k).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),w=g.splice,D=M(c,"Map"),E=M(c,"Set"),T=M(Object,"create");function C(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function A(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function N(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function P(e){var t=-1,r=e?e.length:0;for(this.__data__=new N;++t<r;)this.add(e[t])}function I(e,t){for(var r,n,i=e.length;i--;)if((r=e[i][0])===(n=t)||r!=r&&n!=n)return i;return-1}function F(e){if(!L(e)||(t=e,v&&v in t))return!1;var t,r=function(e){var t=L(e)?x.call(e):"";return t==n||t==i}(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?S:a;return r.test(function(e){if(null!=e){try{return b.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}C.prototype.clear=function(){this.__data__=T?T(null):{}},C.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},C.prototype.get=function(e){var t=this.__data__;if(T){var n=t[e];return n===r?void 0:n}return k.call(t,e)?t[e]:void 0},C.prototype.has=function(e){var t=this.__data__;return T?void 0!==t[e]:k.call(t,e)},C.prototype.set=function(e,t){return this.__data__[e]=T&&void 0===t?r:t,this},A.prototype.clear=function(){this.__data__=[]},A.prototype.delete=function(e){var t=this.__data__,r=I(t,e);return!(r<0)&&(r==t.length-1?t.pop():w.call(t,r,1),!0)},A.prototype.get=function(e){var t=this.__data__,r=I(t,e);return r<0?void 0:t[r][1]},A.prototype.has=function(e){return I(this.__data__,e)>-1},A.prototype.set=function(e,t){var r=this.__data__,n=I(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},N.prototype.clear=function(){this.__data__={hash:new C,map:new(D||A),string:new C}},N.prototype.delete=function(e){return R(this,e).delete(e)},N.prototype.get=function(e){return R(this,e).get(e)},N.prototype.has=function(e){return R(this,e).has(e)},N.prototype.set=function(e,t){return R(this,e).set(e,t),this},P.prototype.add=P.prototype.push=function(e){return this.__data__.set(e,r),this},P.prototype.has=function(e){return this.__data__.has(e)};var O=E&&1/f(new E([,-0]))[1]==1/0?function(e){return new E(e)}:function(){};function R(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function M(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return F(r)?r:void 0}function L(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}e.exports=function(e){return e&&e.length?function(e,r,n){var i=-1,a=l,o=e.length,s=!0,c=[],d=c;if(n)s=!1,a=u;else if(o>=t){var m=r?null:O(e);if(m)return f(m);s=!1,a=p,d=new P}else d=r?[]:c;e:for(;++i<o;){var g=e[i],_=r?r(g):g;if(g=n||0!==g?g:0,s&&_==_){for(var h=d.length;h--;)if(d[h]===_)continue e;r&&d.push(_),c.push(g)}else a(d,_,n)||(d!==c&&d.push(_),c.push(g))}return c}(e):[]}},2543:function(e,t,r){var n; -/** - * @license - * Lodash <https://lodash.com/> - * Copyright OpenJS Foundation and other contributors <https://openjsf.org/> - * Released under MIT license <https://lodash.com/license> - * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */e=r.nmd(e),function(){var i,a="Expected a function",o="__lodash_hash_undefined__",s="__lodash_placeholder__",c=16,l=32,u=64,d=128,p=256,f=1/0,m=9007199254740991,g=NaN,_=4294967295,h=[["ary",d],["bind",1],["bindKey",2],["curry",8],["curryRight",c],["flip",512],["partial",l],["partialRight",u],["rearg",p]],y="[object Arguments]",v="[object Array]",b="[object Boolean]",k="[object Date]",x="[object Error]",S="[object Function]",w="[object GeneratorFunction]",D="[object Map]",E="[object Number]",T="[object Object]",C="[object Promise]",A="[object RegExp]",N="[object Set]",P="[object String]",I="[object Symbol]",F="[object WeakMap]",O="[object ArrayBuffer]",R="[object DataView]",M="[object Float32Array]",L="[object Float64Array]",j="[object Int8Array]",B="[object Int16Array]",z="[object Int32Array]",U="[object Uint8Array]",q="[object Uint8ClampedArray]",J="[object Uint16Array]",V="[object Uint32Array]",H=/\b__p \+= '';/g,K=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,G=/&(?:amp|lt|gt|quot|#39);/g,$=/[&<>"']/g,Y=RegExp(G.source),X=RegExp($.source),Q=/<%-([\s\S]+?)%>/g,Z=/<%([\s\S]+?)%>/g,ee=/<%=([\s\S]+?)%>/g,te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,re=/^\w*$/,ne=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,ae=RegExp(ie.source),oe=/^\s+/,se=/\s/,ce=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,le=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,de=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,pe=/[()=,{}\[\]\/\s]/,fe=/\\(\\)?/g,me=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ge=/\w*$/,_e=/^[-+]0x[0-9a-f]+$/i,he=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,ve=/^0o[0-7]+$/i,be=/^(?:0|[1-9]\d*)$/,ke=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,xe=/($^)/,Se=/['\n\r\u2028\u2029\\]/g,we="\\ud800-\\udfff",De="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ee="\\u2700-\\u27bf",Te="a-z\\xdf-\\xf6\\xf8-\\xff",Ce="A-Z\\xc0-\\xd6\\xd8-\\xde",Ae="\\ufe0e\\ufe0f",Ne="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Pe="['’]",Ie="["+we+"]",Fe="["+Ne+"]",Oe="["+De+"]",Re="\\d+",Me="["+Ee+"]",Le="["+Te+"]",je="[^"+we+Ne+Re+Ee+Te+Ce+"]",Be="\\ud83c[\\udffb-\\udfff]",ze="[^"+we+"]",Ue="(?:\\ud83c[\\udde6-\\uddff]){2}",qe="[\\ud800-\\udbff][\\udc00-\\udfff]",Je="["+Ce+"]",Ve="\\u200d",He="(?:"+Le+"|"+je+")",Ke="(?:"+Je+"|"+je+")",We="(?:['’](?:d|ll|m|re|s|t|ve))?",Ge="(?:['’](?:D|LL|M|RE|S|T|VE))?",$e="(?:"+Oe+"|"+Be+")"+"?",Ye="["+Ae+"]?",Xe=Ye+$e+("(?:"+Ve+"(?:"+[ze,Ue,qe].join("|")+")"+Ye+$e+")*"),Qe="(?:"+[Me,Ue,qe].join("|")+")"+Xe,Ze="(?:"+[ze+Oe+"?",Oe,Ue,qe,Ie].join("|")+")",et=RegExp(Pe,"g"),tt=RegExp(Oe,"g"),rt=RegExp(Be+"(?="+Be+")|"+Ze+Xe,"g"),nt=RegExp([Je+"?"+Le+"+"+We+"(?="+[Fe,Je,"$"].join("|")+")",Ke+"+"+Ge+"(?="+[Fe,Je+He,"$"].join("|")+")",Je+"?"+He+"+"+We,Je+"+"+Ge,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Re,Qe].join("|"),"g"),it=RegExp("["+Ve+we+De+Ae+"]"),at=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ot=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],st=-1,ct={};ct[M]=ct[L]=ct[j]=ct[B]=ct[z]=ct[U]=ct[q]=ct[J]=ct[V]=!0,ct[y]=ct[v]=ct[O]=ct[b]=ct[R]=ct[k]=ct[x]=ct[S]=ct[D]=ct[E]=ct[T]=ct[A]=ct[N]=ct[P]=ct[F]=!1;var lt={};lt[y]=lt[v]=lt[O]=lt[R]=lt[b]=lt[k]=lt[M]=lt[L]=lt[j]=lt[B]=lt[z]=lt[D]=lt[E]=lt[T]=lt[A]=lt[N]=lt[P]=lt[I]=lt[U]=lt[q]=lt[J]=lt[V]=!0,lt[x]=lt[S]=lt[F]=!1;var ut={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},dt=parseFloat,pt=parseInt,ft="object"==typeof global&&global&&global.Object===Object&&global,mt="object"==typeof self&&self&&self.Object===Object&&self,gt=ft||mt||Function("return this")(),_t=t&&!t.nodeType&&t,ht=_t&&e&&!e.nodeType&&e,yt=ht&&ht.exports===_t,vt=yt&&ft.process,bt=function(){try{var e=ht&&ht.require&&ht.require("util").types;return e||vt&&vt.binding&&vt.binding("util")}catch(e){}}(),kt=bt&&bt.isArrayBuffer,xt=bt&&bt.isDate,St=bt&&bt.isMap,wt=bt&&bt.isRegExp,Dt=bt&&bt.isSet,Et=bt&&bt.isTypedArray;function Tt(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function Ct(e,t,r,n){for(var i=-1,a=null==e?0:e.length;++i<a;){var o=e[i];t(n,o,r(o),e)}return n}function At(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}function Nt(e,t){for(var r=null==e?0:e.length;r--&&!1!==t(e[r],r,e););return e}function Pt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(!t(e[r],r,e))return!1;return!0}function It(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var o=e[r];t(o,r,e)&&(a[i++]=o)}return a}function Ft(e,t){return!!(null==e?0:e.length)&&Jt(e,t,0)>-1}function Ot(e,t,r){for(var n=-1,i=null==e?0:e.length;++n<i;)if(r(t,e[n]))return!0;return!1}function Rt(e,t){for(var r=-1,n=null==e?0:e.length,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}function Mt(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}function Lt(e,t,r,n){var i=-1,a=null==e?0:e.length;for(n&&a&&(r=e[++i]);++i<a;)r=t(r,e[i],i,e);return r}function jt(e,t,r,n){var i=null==e?0:e.length;for(n&&i&&(r=e[--i]);i--;)r=t(r,e[i],i,e);return r}function Bt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}var zt=Wt("length");function Ut(e,t,r){var n;return r(e,(function(e,r,i){if(t(e,r,i))return n=r,!1})),n}function qt(e,t,r,n){for(var i=e.length,a=r+(n?1:-1);n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}function Jt(e,t,r){return t==t?function(e,t,r){var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,r):qt(e,Ht,r)}function Vt(e,t,r,n){for(var i=r-1,a=e.length;++i<a;)if(n(e[i],t))return i;return-1}function Ht(e){return e!=e}function Kt(e,t){var r=null==e?0:e.length;return r?Yt(e,t)/r:g}function Wt(e){return function(t){return null==t?i:t[e]}}function Gt(e){return function(t){return null==e?i:e[t]}}function $t(e,t,r,n,i){return i(e,(function(e,i,a){r=n?(n=!1,e):t(r,e,i,a)})),r}function Yt(e,t){for(var r,n=-1,a=e.length;++n<a;){var o=t(e[n]);o!==i&&(r=r===i?o:r+o)}return r}function Xt(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}function Qt(e){return e?e.slice(0,gr(e)+1).replace(oe,""):e}function Zt(e){return function(t){return e(t)}}function er(e,t){return Rt(t,(function(t){return e[t]}))}function tr(e,t){return e.has(t)}function rr(e,t){for(var r=-1,n=e.length;++r<n&&Jt(t,e[r],0)>-1;);return r}function nr(e,t){for(var r=e.length;r--&&Jt(t,e[r],0)>-1;);return r}var ir=Gt({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),ar=Gt({"&":"&","<":"<",">":">",'"':""","'":"'"});function or(e){return"\\"+ut[e]}function sr(e){return it.test(e)}function cr(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function lr(e,t){return function(r){return e(t(r))}}function ur(e,t){for(var r=-1,n=e.length,i=0,a=[];++r<n;){var o=e[r];o!==t&&o!==s||(e[r]=s,a[i++]=r)}return a}function dr(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}function pr(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=[e,e]})),r}function fr(e){return sr(e)?function(e){var t=rt.lastIndex=0;for(;rt.test(e);)++t;return t}(e):zt(e)}function mr(e){return sr(e)?function(e){return e.match(rt)||[]}(e):function(e){return e.split("")}(e)}function gr(e){for(var t=e.length;t--&&se.test(e.charAt(t)););return t}var _r=Gt({"&":"&","<":"<",">":">",""":'"',"'":"'"});var hr=function e(t){var r,n=(t=null==t?gt:hr.defaults(gt.Object(),t,hr.pick(gt,ot))).Array,se=t.Date,we=t.Error,De=t.Function,Ee=t.Math,Te=t.Object,Ce=t.RegExp,Ae=t.String,Ne=t.TypeError,Pe=n.prototype,Ie=De.prototype,Fe=Te.prototype,Oe=t["__core-js_shared__"],Re=Ie.toString,Me=Fe.hasOwnProperty,Le=0,je=(r=/[^.]+$/.exec(Oe&&Oe.keys&&Oe.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"",Be=Fe.toString,ze=Re.call(Te),Ue=gt._,qe=Ce("^"+Re.call(Me).replace(ie,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Je=yt?t.Buffer:i,Ve=t.Symbol,He=t.Uint8Array,Ke=Je?Je.allocUnsafe:i,We=lr(Te.getPrototypeOf,Te),Ge=Te.create,$e=Fe.propertyIsEnumerable,Ye=Pe.splice,Xe=Ve?Ve.isConcatSpreadable:i,Qe=Ve?Ve.iterator:i,Ze=Ve?Ve.toStringTag:i,rt=function(){try{var e=pa(Te,"defineProperty");return e({},"",{}),e}catch(e){}}(),it=t.clearTimeout!==gt.clearTimeout&&t.clearTimeout,ut=se&&se.now!==gt.Date.now&&se.now,ft=t.setTimeout!==gt.setTimeout&&t.setTimeout,mt=Ee.ceil,_t=Ee.floor,ht=Te.getOwnPropertySymbols,vt=Je?Je.isBuffer:i,bt=t.isFinite,zt=Pe.join,Gt=lr(Te.keys,Te),yr=Ee.max,vr=Ee.min,br=se.now,kr=t.parseInt,xr=Ee.random,Sr=Pe.reverse,wr=pa(t,"DataView"),Dr=pa(t,"Map"),Er=pa(t,"Promise"),Tr=pa(t,"Set"),Cr=pa(t,"WeakMap"),Ar=pa(Te,"create"),Nr=Cr&&new Cr,Pr={},Ir=ja(wr),Fr=ja(Dr),Or=ja(Er),Rr=ja(Tr),Mr=ja(Cr),Lr=Ve?Ve.prototype:i,jr=Lr?Lr.valueOf:i,Br=Lr?Lr.toString:i;function zr(e){if(rs(e)&&!Ho(e)&&!(e instanceof Vr)){if(e instanceof Jr)return e;if(Me.call(e,"__wrapped__"))return Ba(e)}return new Jr(e)}var Ur=function(){function e(){}return function(t){if(!ts(t))return{};if(Ge)return Ge(t);e.prototype=t;var r=new e;return e.prototype=i,r}}();function qr(){}function Jr(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}function Vr(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=_,this.__views__=[]}function Hr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Kr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Wr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Gr(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new Wr;++t<r;)this.add(e[t])}function $r(e){var t=this.__data__=new Kr(e);this.size=t.size}function Yr(e,t){var r=Ho(e),n=!r&&Vo(e),i=!r&&!n&&$o(e),a=!r&&!n&&!i&&us(e),o=r||n||i||a,s=o?Xt(e.length,Ae):[],c=s.length;for(var l in e)!t&&!Me.call(e,l)||o&&("length"==l||i&&("offset"==l||"parent"==l)||a&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||va(l,c))||s.push(l);return s}function Xr(e){var t=e.length;return t?e[$n(0,t-1)]:i}function Qr(e,t){return Ra(Ni(e),cn(t,0,e.length))}function Zr(e){return Ra(Ni(e))}function en(e,t,r){(r!==i&&!Uo(e[t],r)||r===i&&!(t in e))&&on(e,t,r)}function tn(e,t,r){var n=e[t];Me.call(e,t)&&Uo(n,r)&&(r!==i||t in e)||on(e,t,r)}function rn(e,t){for(var r=e.length;r--;)if(Uo(e[r][0],t))return r;return-1}function nn(e,t,r,n){return fn(e,(function(e,i,a){t(n,e,r(e),a)})),n}function an(e,t){return e&&Pi(t,Is(t),e)}function on(e,t,r){"__proto__"==t&&rt?rt(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}function sn(e,t){for(var r=-1,a=t.length,o=n(a),s=null==e;++r<a;)o[r]=s?i:Ts(e,t[r]);return o}function cn(e,t,r){return e==e&&(r!==i&&(e=e<=r?e:r),t!==i&&(e=e>=t?e:t)),e}function ln(e,t,r,n,a,o){var s,c=1&t,l=2&t,u=4&t;if(r&&(s=a?r(e,n,a,o):r(e)),s!==i)return s;if(!ts(e))return e;var d=Ho(e);if(d){if(s=function(e){var t=e.length,r=new e.constructor(t);t&&"string"==typeof e[0]&&Me.call(e,"index")&&(r.index=e.index,r.input=e.input);return r}(e),!c)return Ni(e,s)}else{var p=ga(e),f=p==S||p==w;if($o(e))return wi(e,c);if(p==T||p==y||f&&!a){if(s=l||f?{}:ha(e),!c)return l?function(e,t){return Pi(e,ma(e),t)}(e,function(e,t){return e&&Pi(t,Fs(t),e)}(s,e)):function(e,t){return Pi(e,fa(e),t)}(e,an(s,e))}else{if(!lt[p])return a?e:{};s=function(e,t,r){var n=e.constructor;switch(t){case O:return Di(e);case b:case k:return new n(+e);case R:return function(e,t){var r=t?Di(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case M:case L:case j:case B:case z:case U:case q:case J:case V:return Ei(e,r);case D:return new n;case E:case P:return new n(e);case A:return function(e){var t=new e.constructor(e.source,ge.exec(e));return t.lastIndex=e.lastIndex,t}(e);case N:return new n;case I:return i=e,jr?Te(jr.call(i)):{}}var i}(e,p,c)}}o||(o=new $r);var m=o.get(e);if(m)return m;o.set(e,s),ss(e)?e.forEach((function(n){s.add(ln(n,t,r,n,e,o))})):ns(e)&&e.forEach((function(n,i){s.set(i,ln(n,t,r,i,e,o))}));var g=d?i:(u?l?aa:ia:l?Fs:Is)(e);return At(g||e,(function(n,i){g&&(n=e[i=n]),tn(s,i,ln(n,t,r,i,e,o))})),s}function un(e,t,r){var n=r.length;if(null==e)return!n;for(e=Te(e);n--;){var a=r[n],o=t[a],s=e[a];if(s===i&&!(a in e)||!o(s))return!1}return!0}function dn(e,t,r){if("function"!=typeof e)throw new Ne(a);return Pa((function(){e.apply(i,r)}),t)}function pn(e,t,r,n){var i=-1,a=Ft,o=!0,s=e.length,c=[],l=t.length;if(!s)return c;r&&(t=Rt(t,Zt(r))),n?(a=Ot,o=!1):t.length>=200&&(a=tr,o=!1,t=new Gr(t));e:for(;++i<s;){var u=e[i],d=null==r?u:r(u);if(u=n||0!==u?u:0,o&&d==d){for(var p=l;p--;)if(t[p]===d)continue e;c.push(u)}else a(t,d,n)||c.push(u)}return c}zr.templateSettings={escape:Q,evaluate:Z,interpolate:ee,variable:"",imports:{_:zr}},zr.prototype=qr.prototype,zr.prototype.constructor=zr,Jr.prototype=Ur(qr.prototype),Jr.prototype.constructor=Jr,Vr.prototype=Ur(qr.prototype),Vr.prototype.constructor=Vr,Hr.prototype.clear=function(){this.__data__=Ar?Ar(null):{},this.size=0},Hr.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Hr.prototype.get=function(e){var t=this.__data__;if(Ar){var r=t[e];return r===o?i:r}return Me.call(t,e)?t[e]:i},Hr.prototype.has=function(e){var t=this.__data__;return Ar?t[e]!==i:Me.call(t,e)},Hr.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=Ar&&t===i?o:t,this},Kr.prototype.clear=function(){this.__data__=[],this.size=0},Kr.prototype.delete=function(e){var t=this.__data__,r=rn(t,e);return!(r<0)&&(r==t.length-1?t.pop():Ye.call(t,r,1),--this.size,!0)},Kr.prototype.get=function(e){var t=this.__data__,r=rn(t,e);return r<0?i:t[r][1]},Kr.prototype.has=function(e){return rn(this.__data__,e)>-1},Kr.prototype.set=function(e,t){var r=this.__data__,n=rn(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Wr.prototype.clear=function(){this.size=0,this.__data__={hash:new Hr,map:new(Dr||Kr),string:new Hr}},Wr.prototype.delete=function(e){var t=ua(this,e).delete(e);return this.size-=t?1:0,t},Wr.prototype.get=function(e){return ua(this,e).get(e)},Wr.prototype.has=function(e){return ua(this,e).has(e)},Wr.prototype.set=function(e,t){var r=ua(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Gr.prototype.add=Gr.prototype.push=function(e){return this.__data__.set(e,o),this},Gr.prototype.has=function(e){return this.__data__.has(e)},$r.prototype.clear=function(){this.__data__=new Kr,this.size=0},$r.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},$r.prototype.get=function(e){return this.__data__.get(e)},$r.prototype.has=function(e){return this.__data__.has(e)},$r.prototype.set=function(e,t){var r=this.__data__;if(r instanceof Kr){var n=r.__data__;if(!Dr||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Wr(n)}return r.set(e,t),this.size=r.size,this};var fn=Oi(kn),mn=Oi(xn,!0);function gn(e,t){var r=!0;return fn(e,(function(e,n,i){return r=!!t(e,n,i)})),r}function _n(e,t,r){for(var n=-1,a=e.length;++n<a;){var o=e[n],s=t(o);if(null!=s&&(c===i?s==s&&!ls(s):r(s,c)))var c=s,l=o}return l}function hn(e,t){var r=[];return fn(e,(function(e,n,i){t(e,n,i)&&r.push(e)})),r}function yn(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=ya),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?yn(s,t-1,r,n,i):Mt(i,s):n||(i[i.length]=s)}return i}var vn=Ri(),bn=Ri(!0);function kn(e,t){return e&&vn(e,t,Is)}function xn(e,t){return e&&bn(e,t,Is)}function Sn(e,t){return It(t,(function(t){return Qo(e[t])}))}function wn(e,t){for(var r=0,n=(t=bi(t,e)).length;null!=e&&r<n;)e=e[La(t[r++])];return r&&r==n?e:i}function Dn(e,t,r){var n=t(e);return Ho(e)?n:Mt(n,r(e))}function En(e){return null==e?e===i?"[object Undefined]":"[object Null]":Ze&&Ze in Te(e)?function(e){var t=Me.call(e,Ze),r=e[Ze];try{e[Ze]=i;var n=!0}catch(e){}var a=Be.call(e);n&&(t?e[Ze]=r:delete e[Ze]);return a}(e):function(e){return Be.call(e)}(e)}function Tn(e,t){return e>t}function Cn(e,t){return null!=e&&Me.call(e,t)}function An(e,t){return null!=e&&t in Te(e)}function Nn(e,t,r){for(var a=r?Ot:Ft,o=e[0].length,s=e.length,c=s,l=n(s),u=1/0,d=[];c--;){var p=e[c];c&&t&&(p=Rt(p,Zt(t))),u=vr(p.length,u),l[c]=!r&&(t||o>=120&&p.length>=120)?new Gr(c&&p):i}p=e[0];var f=-1,m=l[0];e:for(;++f<o&&d.length<u;){var g=p[f],_=t?t(g):g;if(g=r||0!==g?g:0,!(m?tr(m,_):a(d,_,r))){for(c=s;--c;){var h=l[c];if(!(h?tr(h,_):a(e[c],_,r)))continue e}m&&m.push(_),d.push(g)}}return d}function Pn(e,t,r){var n=null==(e=Ca(e,t=bi(t,e)))?e:e[La(Ya(t))];return null==n?i:Tt(n,e,r)}function In(e){return rs(e)&&En(e)==y}function Fn(e,t,r,n,a){return e===t||(null==e||null==t||!rs(e)&&!rs(t)?e!=e&&t!=t:function(e,t,r,n,a,o){var s=Ho(e),c=Ho(t),l=s?v:ga(e),u=c?v:ga(t),d=(l=l==y?T:l)==T,p=(u=u==y?T:u)==T,f=l==u;if(f&&$o(e)){if(!$o(t))return!1;s=!0,d=!1}if(f&&!d)return o||(o=new $r),s||us(e)?ra(e,t,r,n,a,o):function(e,t,r,n,i,a,o){switch(r){case R:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case O:return!(e.byteLength!=t.byteLength||!a(new He(e),new He(t)));case b:case k:case E:return Uo(+e,+t);case x:return e.name==t.name&&e.message==t.message;case A:case P:return e==t+"";case D:var s=cr;case N:var c=1&n;if(s||(s=dr),e.size!=t.size&&!c)return!1;var l=o.get(e);if(l)return l==t;n|=2,o.set(e,t);var u=ra(s(e),s(t),n,i,a,o);return o.delete(e),u;case I:if(jr)return jr.call(e)==jr.call(t)}return!1}(e,t,l,r,n,a,o);if(!(1&r)){var m=d&&Me.call(e,"__wrapped__"),g=p&&Me.call(t,"__wrapped__");if(m||g){var _=m?e.value():e,h=g?t.value():t;return o||(o=new $r),a(_,h,r,n,o)}}if(!f)return!1;return o||(o=new $r),function(e,t,r,n,a,o){var s=1&r,c=ia(e),l=c.length,u=ia(t),d=u.length;if(l!=d&&!s)return!1;var p=l;for(;p--;){var f=c[p];if(!(s?f in t:Me.call(t,f)))return!1}var m=o.get(e),g=o.get(t);if(m&&g)return m==t&&g==e;var _=!0;o.set(e,t),o.set(t,e);var h=s;for(;++p<l;){var y=e[f=c[p]],v=t[f];if(n)var b=s?n(v,y,f,t,e,o):n(y,v,f,e,t,o);if(!(b===i?y===v||a(y,v,r,n,o):b)){_=!1;break}h||(h="constructor"==f)}if(_&&!h){var k=e.constructor,x=t.constructor;k==x||!("constructor"in e)||!("constructor"in t)||"function"==typeof k&&k instanceof k&&"function"==typeof x&&x instanceof x||(_=!1)}return o.delete(e),o.delete(t),_}(e,t,r,n,a,o)}(e,t,r,n,Fn,a))}function On(e,t,r,n){var a=r.length,o=a,s=!n;if(null==e)return!o;for(e=Te(e);a--;){var c=r[a];if(s&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++a<o;){var l=(c=r[a])[0],u=e[l],d=c[1];if(s&&c[2]){if(u===i&&!(l in e))return!1}else{var p=new $r;if(n)var f=n(u,d,l,e,t,p);if(!(f===i?Fn(d,u,3,n,p):f))return!1}}return!0}function Rn(e){return!(!ts(e)||(t=e,je&&je in t))&&(Qo(e)?qe:ye).test(ja(e));var t}function Mn(e){return"function"==typeof e?e:null==e?ic:"object"==typeof e?Ho(e)?qn(e[0],e[1]):Un(e):fc(e)}function Ln(e){if(!wa(e))return Gt(e);var t=[];for(var r in Te(e))Me.call(e,r)&&"constructor"!=r&&t.push(r);return t}function jn(e){if(!ts(e))return function(e){var t=[];if(null!=e)for(var r in Te(e))t.push(r);return t}(e);var t=wa(e),r=[];for(var n in e)("constructor"!=n||!t&&Me.call(e,n))&&r.push(n);return r}function Bn(e,t){return e<t}function zn(e,t){var r=-1,i=Wo(e)?n(e.length):[];return fn(e,(function(e,n,a){i[++r]=t(e,n,a)})),i}function Un(e){var t=da(e);return 1==t.length&&t[0][2]?Ea(t[0][0],t[0][1]):function(r){return r===e||On(r,e,t)}}function qn(e,t){return ka(e)&&Da(t)?Ea(La(e),t):function(r){var n=Ts(r,e);return n===i&&n===t?Cs(r,e):Fn(t,n,3)}}function Jn(e,t,r,n,a){e!==t&&vn(t,(function(o,s){if(a||(a=new $r),ts(o))!function(e,t,r,n,a,o,s){var c=Aa(e,r),l=Aa(t,r),u=s.get(l);if(u)return void en(e,r,u);var d=o?o(c,l,r+"",e,t,s):i,p=d===i;if(p){var f=Ho(l),m=!f&&$o(l),g=!f&&!m&&us(l);d=l,f||m||g?Ho(c)?d=c:Go(c)?d=Ni(c):m?(p=!1,d=wi(l,!0)):g?(p=!1,d=Ei(l,!0)):d=[]:as(l)||Vo(l)?(d=c,Vo(c)?d=ys(c):ts(c)&&!Qo(c)||(d=ha(l))):p=!1}p&&(s.set(l,d),a(d,l,n,o,s),s.delete(l));en(e,r,d)}(e,t,s,r,Jn,n,a);else{var c=n?n(Aa(e,s),o,s+"",e,t,a):i;c===i&&(c=o),en(e,s,c)}}),Fs)}function Vn(e,t){var r=e.length;if(r)return va(t+=t<0?r:0,r)?e[t]:i}function Hn(e,t,r){t=t.length?Rt(t,(function(e){return Ho(e)?function(t){return wn(t,1===e.length?e[0]:e)}:e})):[ic];var n=-1;t=Rt(t,Zt(la()));var i=zn(e,(function(e,r,i){var a=Rt(t,(function(t){return t(e)}));return{criteria:a,index:++n,value:e}}));return function(e,t){var r=e.length;for(e.sort(t);r--;)e[r]=e[r].value;return e}(i,(function(e,t){return function(e,t,r){var n=-1,i=e.criteria,a=t.criteria,o=i.length,s=r.length;for(;++n<o;){var c=Ti(i[n],a[n]);if(c)return n>=s?c:c*("desc"==r[n]?-1:1)}return e.index-t.index}(e,t,r)}))}function Kn(e,t,r){for(var n=-1,i=t.length,a={};++n<i;){var o=t[n],s=wn(e,o);r(s,o)&&ei(a,bi(o,e),s)}return a}function Wn(e,t,r,n){var i=n?Vt:Jt,a=-1,o=t.length,s=e;for(e===t&&(t=Ni(t)),r&&(s=Rt(e,Zt(r)));++a<o;)for(var c=0,l=t[a],u=r?r(l):l;(c=i(s,u,c,n))>-1;)s!==e&&Ye.call(s,c,1),Ye.call(e,c,1);return e}function Gn(e,t){for(var r=e?t.length:0,n=r-1;r--;){var i=t[r];if(r==n||i!==a){var a=i;va(i)?Ye.call(e,i,1):pi(e,i)}}return e}function $n(e,t){return e+_t(xr()*(t-e+1))}function Yn(e,t){var r="";if(!e||t<1||t>m)return r;do{t%2&&(r+=e),(t=_t(t/2))&&(e+=e)}while(t);return r}function Xn(e,t){return Ia(Ta(e,t,ic),e+"")}function Qn(e){return Xr(Us(e))}function Zn(e,t){var r=Us(e);return Ra(r,cn(t,0,r.length))}function ei(e,t,r,n){if(!ts(e))return e;for(var a=-1,o=(t=bi(t,e)).length,s=o-1,c=e;null!=c&&++a<o;){var l=La(t[a]),u=r;if("__proto__"===l||"constructor"===l||"prototype"===l)return e;if(a!=s){var d=c[l];(u=n?n(d,l,c):i)===i&&(u=ts(d)?d:va(t[a+1])?[]:{})}tn(c,l,u),c=c[l]}return e}var ti=Nr?function(e,t){return Nr.set(e,t),e}:ic,ri=rt?function(e,t){return rt(e,"toString",{configurable:!0,enumerable:!1,value:tc(t),writable:!0})}:ic;function ni(e){return Ra(Us(e))}function ii(e,t,r){var i=-1,a=e.length;t<0&&(t=-t>a?0:a+t),(r=r>a?a:r)<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=n(a);++i<a;)o[i]=e[i+t];return o}function ai(e,t){var r;return fn(e,(function(e,n,i){return!(r=t(e,n,i))})),!!r}function oi(e,t,r){var n=0,i=null==e?n:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;n<i;){var a=n+i>>>1,o=e[a];null!==o&&!ls(o)&&(r?o<=t:o<t)?n=a+1:i=a}return i}return si(e,t,ic,r)}function si(e,t,r,n){var a=0,o=null==e?0:e.length;if(0===o)return 0;for(var s=(t=r(t))!=t,c=null===t,l=ls(t),u=t===i;a<o;){var d=_t((a+o)/2),p=r(e[d]),f=p!==i,m=null===p,g=p==p,_=ls(p);if(s)var h=n||g;else h=u?g&&(n||f):c?g&&f&&(n||!m):l?g&&f&&!m&&(n||!_):!m&&!_&&(n?p<=t:p<t);h?a=d+1:o=d}return vr(o,4294967294)}function ci(e,t){for(var r=-1,n=e.length,i=0,a=[];++r<n;){var o=e[r],s=t?t(o):o;if(!r||!Uo(s,c)){var c=s;a[i++]=0===o?0:o}}return a}function li(e){return"number"==typeof e?e:ls(e)?g:+e}function ui(e){if("string"==typeof e)return e;if(Ho(e))return Rt(e,ui)+"";if(ls(e))return Br?Br.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function di(e,t,r){var n=-1,i=Ft,a=e.length,o=!0,s=[],c=s;if(r)o=!1,i=Ot;else if(a>=200){var l=t?null:Yi(e);if(l)return dr(l);o=!1,i=tr,c=new Gr}else c=t?[]:s;e:for(;++n<a;){var u=e[n],d=t?t(u):u;if(u=r||0!==u?u:0,o&&d==d){for(var p=c.length;p--;)if(c[p]===d)continue e;t&&c.push(d),s.push(u)}else i(c,d,r)||(c!==s&&c.push(d),s.push(u))}return s}function pi(e,t){return null==(e=Ca(e,t=bi(t,e)))||delete e[La(Ya(t))]}function fi(e,t,r,n){return ei(e,t,r(wn(e,t)),n)}function mi(e,t,r,n){for(var i=e.length,a=n?i:-1;(n?a--:++a<i)&&t(e[a],a,e););return r?ii(e,n?0:a,n?a+1:i):ii(e,n?a+1:0,n?i:a)}function gi(e,t){var r=e;return r instanceof Vr&&(r=r.value()),Lt(t,(function(e,t){return t.func.apply(t.thisArg,Mt([e],t.args))}),r)}function _i(e,t,r){var i=e.length;if(i<2)return i?di(e[0]):[];for(var a=-1,o=n(i);++a<i;)for(var s=e[a],c=-1;++c<i;)c!=a&&(o[a]=pn(o[a]||s,e[c],t,r));return di(yn(o,1),t,r)}function hi(e,t,r){for(var n=-1,a=e.length,o=t.length,s={};++n<a;){var c=n<o?t[n]:i;r(s,e[n],c)}return s}function yi(e){return Go(e)?e:[]}function vi(e){return"function"==typeof e?e:ic}function bi(e,t){return Ho(e)?e:ka(e,t)?[e]:Ma(vs(e))}var ki=Xn;function xi(e,t,r){var n=e.length;return r=r===i?n:r,!t&&r>=n?e:ii(e,t,r)}var Si=it||function(e){return gt.clearTimeout(e)};function wi(e,t){if(t)return e.slice();var r=e.length,n=Ke?Ke(r):new e.constructor(r);return e.copy(n),n}function Di(e){var t=new e.constructor(e.byteLength);return new He(t).set(new He(e)),t}function Ei(e,t){var r=t?Di(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function Ti(e,t){if(e!==t){var r=e!==i,n=null===e,a=e==e,o=ls(e),s=t!==i,c=null===t,l=t==t,u=ls(t);if(!c&&!u&&!o&&e>t||o&&s&&l&&!c&&!u||n&&s&&l||!r&&l||!a)return 1;if(!n&&!o&&!u&&e<t||u&&r&&a&&!n&&!o||c&&r&&a||!s&&a||!l)return-1}return 0}function Ci(e,t,r,i){for(var a=-1,o=e.length,s=r.length,c=-1,l=t.length,u=yr(o-s,0),d=n(l+u),p=!i;++c<l;)d[c]=t[c];for(;++a<s;)(p||a<o)&&(d[r[a]]=e[a]);for(;u--;)d[c++]=e[a++];return d}function Ai(e,t,r,i){for(var a=-1,o=e.length,s=-1,c=r.length,l=-1,u=t.length,d=yr(o-c,0),p=n(d+u),f=!i;++a<d;)p[a]=e[a];for(var m=a;++l<u;)p[m+l]=t[l];for(;++s<c;)(f||a<o)&&(p[m+r[s]]=e[a++]);return p}function Ni(e,t){var r=-1,i=e.length;for(t||(t=n(i));++r<i;)t[r]=e[r];return t}function Pi(e,t,r,n){var a=!r;r||(r={});for(var o=-1,s=t.length;++o<s;){var c=t[o],l=n?n(r[c],e[c],c,r,e):i;l===i&&(l=e[c]),a?on(r,c,l):tn(r,c,l)}return r}function Ii(e,t){return function(r,n){var i=Ho(r)?Ct:nn,a=t?t():{};return i(r,e,la(n,2),a)}}function Fi(e){return Xn((function(t,r){var n=-1,a=r.length,o=a>1?r[a-1]:i,s=a>2?r[2]:i;for(o=e.length>3&&"function"==typeof o?(a--,o):i,s&&ba(r[0],r[1],s)&&(o=a<3?i:o,a=1),t=Te(t);++n<a;){var c=r[n];c&&e(t,c,n,o)}return t}))}function Oi(e,t){return function(r,n){if(null==r)return r;if(!Wo(r))return e(r,n);for(var i=r.length,a=t?i:-1,o=Te(r);(t?a--:++a<i)&&!1!==n(o[a],a,o););return r}}function Ri(e){return function(t,r,n){for(var i=-1,a=Te(t),o=n(t),s=o.length;s--;){var c=o[e?s:++i];if(!1===r(a[c],c,a))break}return t}}function Mi(e){return function(t){var r=sr(t=vs(t))?mr(t):i,n=r?r[0]:t.charAt(0),a=r?xi(r,1).join(""):t.slice(1);return n[e]()+a}}function Li(e){return function(t){return Lt(Qs(Vs(t).replace(et,"")),e,"")}}function ji(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=Ur(e.prototype),n=e.apply(r,t);return ts(n)?n:r}}function Bi(e){return function(t,r,n){var a=Te(t);if(!Wo(t)){var o=la(r,3);t=Is(t),r=function(e){return o(a[e],e,a)}}var s=e(t,r,n);return s>-1?a[o?t[s]:s]:i}}function zi(e){return na((function(t){var r=t.length,n=r,o=Jr.prototype.thru;for(e&&t.reverse();n--;){var s=t[n];if("function"!=typeof s)throw new Ne(a);if(o&&!c&&"wrapper"==sa(s))var c=new Jr([],!0)}for(n=c?n:r;++n<r;){var l=sa(s=t[n]),u="wrapper"==l?oa(s):i;c=u&&xa(u[0])&&424==u[1]&&!u[4].length&&1==u[9]?c[sa(u[0])].apply(c,u[3]):1==s.length&&xa(s)?c[l]():c.thru(s)}return function(){var e=arguments,n=e[0];if(c&&1==e.length&&Ho(n))return c.plant(n).value();for(var i=0,a=r?t[i].apply(this,e):n;++i<r;)a=t[i].call(this,a);return a}}))}function Ui(e,t,r,a,o,s,c,l,u,p){var f=t&d,m=1&t,g=2&t,_=24&t,h=512&t,y=g?i:ji(e);return function d(){for(var v=arguments.length,b=n(v),k=v;k--;)b[k]=arguments[k];if(_)var x=ca(d),S=function(e,t){for(var r=e.length,n=0;r--;)e[r]===t&&++n;return n}(b,x);if(a&&(b=Ci(b,a,o,_)),s&&(b=Ai(b,s,c,_)),v-=S,_&&v<p){var w=ur(b,x);return Gi(e,t,Ui,d.placeholder,r,b,w,l,u,p-v)}var D=m?r:this,E=g?D[e]:e;return v=b.length,l?b=function(e,t){var r=e.length,n=vr(t.length,r),a=Ni(e);for(;n--;){var o=t[n];e[n]=va(o,r)?a[o]:i}return e}(b,l):h&&v>1&&b.reverse(),f&&u<v&&(b.length=u),this&&this!==gt&&this instanceof d&&(E=y||ji(E)),E.apply(D,b)}}function qi(e,t){return function(r,n){return function(e,t,r,n){return kn(e,(function(e,i,a){t(n,r(e),i,a)})),n}(r,e,t(n),{})}}function Ji(e,t){return function(r,n){var a;if(r===i&&n===i)return t;if(r!==i&&(a=r),n!==i){if(a===i)return n;"string"==typeof r||"string"==typeof n?(r=ui(r),n=ui(n)):(r=li(r),n=li(n)),a=e(r,n)}return a}}function Vi(e){return na((function(t){return t=Rt(t,Zt(la())),Xn((function(r){var n=this;return e(t,(function(e){return Tt(e,n,r)}))}))}))}function Hi(e,t){var r=(t=t===i?" ":ui(t)).length;if(r<2)return r?Yn(t,e):t;var n=Yn(t,mt(e/fr(t)));return sr(t)?xi(mr(n),0,e).join(""):n.slice(0,e)}function Ki(e){return function(t,r,a){return a&&"number"!=typeof a&&ba(t,r,a)&&(r=a=i),t=ms(t),r===i?(r=t,t=0):r=ms(r),function(e,t,r,i){for(var a=-1,o=yr(mt((t-e)/(r||1)),0),s=n(o);o--;)s[i?o:++a]=e,e+=r;return s}(t,r,a=a===i?t<r?1:-1:ms(a),e)}}function Wi(e){return function(t,r){return"string"==typeof t&&"string"==typeof r||(t=hs(t),r=hs(r)),e(t,r)}}function Gi(e,t,r,n,a,o,s,c,d,p){var f=8&t;t|=f?l:u,4&(t&=~(f?u:l))||(t&=-4);var m=[e,t,a,f?o:i,f?s:i,f?i:o,f?i:s,c,d,p],g=r.apply(i,m);return xa(e)&&Na(g,m),g.placeholder=n,Fa(g,e,t)}function $i(e){var t=Ee[e];return function(e,r){if(e=hs(e),(r=null==r?0:vr(gs(r),292))&&bt(e)){var n=(vs(e)+"e").split("e");return+((n=(vs(t(n[0]+"e"+(+n[1]+r)))+"e").split("e"))[0]+"e"+(+n[1]-r))}return t(e)}}var Yi=Tr&&1/dr(new Tr([,-0]))[1]==f?function(e){return new Tr(e)}:lc;function Xi(e){return function(t){var r=ga(t);return r==D?cr(t):r==N?pr(t):function(e,t){return Rt(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Qi(e,t,r,o,f,m,g,_){var h=2&t;if(!h&&"function"!=typeof e)throw new Ne(a);var y=o?o.length:0;if(y||(t&=-97,o=f=i),g=g===i?g:yr(gs(g),0),_=_===i?_:gs(_),y-=f?f.length:0,t&u){var v=o,b=f;o=f=i}var k=h?i:oa(e),x=[e,t,r,o,f,v,b,m,g,_];if(k&&function(e,t){var r=e[1],n=t[1],i=r|n,a=i<131,o=n==d&&8==r||n==d&&r==p&&e[7].length<=t[8]||384==n&&t[7].length<=t[8]&&8==r;if(!a&&!o)return e;1&n&&(e[2]=t[2],i|=1&r?0:4);var c=t[3];if(c){var l=e[3];e[3]=l?Ci(l,c,t[4]):c,e[4]=l?ur(e[3],s):t[4]}(c=t[5])&&(l=e[5],e[5]=l?Ai(l,c,t[6]):c,e[6]=l?ur(e[5],s):t[6]);(c=t[7])&&(e[7]=c);n&d&&(e[8]=null==e[8]?t[8]:vr(e[8],t[8]));null==e[9]&&(e[9]=t[9]);e[0]=t[0],e[1]=i}(x,k),e=x[0],t=x[1],r=x[2],o=x[3],f=x[4],!(_=x[9]=x[9]===i?h?0:e.length:yr(x[9]-y,0))&&24&t&&(t&=-25),t&&1!=t)S=8==t||t==c?function(e,t,r){var a=ji(e);return function o(){for(var s=arguments.length,c=n(s),l=s,u=ca(o);l--;)c[l]=arguments[l];var d=s<3&&c[0]!==u&&c[s-1]!==u?[]:ur(c,u);return(s-=d.length)<r?Gi(e,t,Ui,o.placeholder,i,c,d,i,i,r-s):Tt(this&&this!==gt&&this instanceof o?a:e,this,c)}}(e,t,_):t!=l&&33!=t||f.length?Ui.apply(i,x):function(e,t,r,i){var a=1&t,o=ji(e);return function t(){for(var s=-1,c=arguments.length,l=-1,u=i.length,d=n(u+c),p=this&&this!==gt&&this instanceof t?o:e;++l<u;)d[l]=i[l];for(;c--;)d[l++]=arguments[++s];return Tt(p,a?r:this,d)}}(e,t,r,o);else var S=function(e,t,r){var n=1&t,i=ji(e);return function t(){return(this&&this!==gt&&this instanceof t?i:e).apply(n?r:this,arguments)}}(e,t,r);return Fa((k?ti:Na)(S,x),e,t)}function Zi(e,t,r,n){return e===i||Uo(e,Fe[r])&&!Me.call(n,r)?t:e}function ea(e,t,r,n,a,o){return ts(e)&&ts(t)&&(o.set(t,e),Jn(e,t,i,ea,o),o.delete(t)),e}function ta(e){return as(e)?i:e}function ra(e,t,r,n,a,o){var s=1&r,c=e.length,l=t.length;if(c!=l&&!(s&&l>c))return!1;var u=o.get(e),d=o.get(t);if(u&&d)return u==t&&d==e;var p=-1,f=!0,m=2&r?new Gr:i;for(o.set(e,t),o.set(t,e);++p<c;){var g=e[p],_=t[p];if(n)var h=s?n(_,g,p,t,e,o):n(g,_,p,e,t,o);if(h!==i){if(h)continue;f=!1;break}if(m){if(!Bt(t,(function(e,t){if(!tr(m,t)&&(g===e||a(g,e,r,n,o)))return m.push(t)}))){f=!1;break}}else if(g!==_&&!a(g,_,r,n,o)){f=!1;break}}return o.delete(e),o.delete(t),f}function na(e){return Ia(Ta(e,i,Ha),e+"")}function ia(e){return Dn(e,Is,fa)}function aa(e){return Dn(e,Fs,ma)}var oa=Nr?function(e){return Nr.get(e)}:lc;function sa(e){for(var t=e.name+"",r=Pr[t],n=Me.call(Pr,t)?r.length:0;n--;){var i=r[n],a=i.func;if(null==a||a==e)return i.name}return t}function ca(e){return(Me.call(zr,"placeholder")?zr:e).placeholder}function la(){var e=zr.iteratee||ac;return e=e===ac?Mn:e,arguments.length?e(arguments[0],arguments[1]):e}function ua(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function da(e){for(var t=Is(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,Da(i)]}return t}function pa(e,t){var r=function(e,t){return null==e?i:e[t]}(e,t);return Rn(r)?r:i}var fa=ht?function(e){return null==e?[]:(e=Te(e),It(ht(e),(function(t){return $e.call(e,t)})))}:_c,ma=ht?function(e){for(var t=[];e;)Mt(t,fa(e)),e=We(e);return t}:_c,ga=En;function _a(e,t,r){for(var n=-1,i=(t=bi(t,e)).length,a=!1;++n<i;){var o=La(t[n]);if(!(a=null!=e&&r(e,o)))break;e=e[o]}return a||++n!=i?a:!!(i=null==e?0:e.length)&&es(i)&&va(o,i)&&(Ho(e)||Vo(e))}function ha(e){return"function"!=typeof e.constructor||wa(e)?{}:Ur(We(e))}function ya(e){return Ho(e)||Vo(e)||!!(Xe&&e&&e[Xe])}function va(e,t){var r=typeof e;return!!(t=null==t?m:t)&&("number"==r||"symbol"!=r&&be.test(e))&&e>-1&&e%1==0&&e<t}function ba(e,t,r){if(!ts(r))return!1;var n=typeof t;return!!("number"==n?Wo(r)&&va(t,r.length):"string"==n&&t in r)&&Uo(r[t],e)}function ka(e,t){if(Ho(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!ls(e))||(re.test(e)||!te.test(e)||null!=t&&e in Te(t))}function xa(e){var t=sa(e),r=zr[t];if("function"!=typeof r||!(t in Vr.prototype))return!1;if(e===r)return!0;var n=oa(r);return!!n&&e===n[0]}(wr&&ga(new wr(new ArrayBuffer(1)))!=R||Dr&&ga(new Dr)!=D||Er&&ga(Er.resolve())!=C||Tr&&ga(new Tr)!=N||Cr&&ga(new Cr)!=F)&&(ga=function(e){var t=En(e),r=t==T?e.constructor:i,n=r?ja(r):"";if(n)switch(n){case Ir:return R;case Fr:return D;case Or:return C;case Rr:return N;case Mr:return F}return t});var Sa=Oe?Qo:hc;function wa(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Fe)}function Da(e){return e==e&&!ts(e)}function Ea(e,t){return function(r){return null!=r&&(r[e]===t&&(t!==i||e in Te(r)))}}function Ta(e,t,r){return t=yr(t===i?e.length-1:t,0),function(){for(var i=arguments,a=-1,o=yr(i.length-t,0),s=n(o);++a<o;)s[a]=i[t+a];a=-1;for(var c=n(t+1);++a<t;)c[a]=i[a];return c[t]=r(s),Tt(e,this,c)}}function Ca(e,t){return t.length<2?e:wn(e,ii(t,0,-1))}function Aa(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Na=Oa(ti),Pa=ft||function(e,t){return gt.setTimeout(e,t)},Ia=Oa(ri);function Fa(e,t,r){var n=t+"";return Ia(e,function(e,t){var r=t.length;if(!r)return e;var n=r-1;return t[n]=(r>1?"& ":"")+t[n],t=t.join(r>2?", ":" "),e.replace(ce,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return At(h,(function(r){var n="_."+r[0];t&r[1]&&!Ft(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(le);return t?t[1].split(ue):[]}(n),r)))}function Oa(e){var t=0,r=0;return function(){var n=br(),a=16-(n-r);if(r=n,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(i,arguments)}}function Ra(e,t){var r=-1,n=e.length,a=n-1;for(t=t===i?n:t;++r<t;){var o=$n(r,a),s=e[o];e[o]=e[r],e[r]=s}return e.length=t,e}var Ma=function(e){var t=Ro(e,(function(e){return 500===r.size&&r.clear(),e})),r=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ne,(function(e,r,n,i){t.push(n?i.replace(fe,"$1"):r||e)})),t}));function La(e){if("string"==typeof e||ls(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ja(e){if(null!=e){try{return Re.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ba(e){if(e instanceof Vr)return e.clone();var t=new Jr(e.__wrapped__,e.__chain__);return t.__actions__=Ni(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var za=Xn((function(e,t){return Go(e)?pn(e,yn(t,1,Go,!0)):[]})),Ua=Xn((function(e,t){var r=Ya(t);return Go(r)&&(r=i),Go(e)?pn(e,yn(t,1,Go,!0),la(r,2)):[]})),qa=Xn((function(e,t){var r=Ya(t);return Go(r)&&(r=i),Go(e)?pn(e,yn(t,1,Go,!0),i,r):[]}));function Ja(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:gs(r);return i<0&&(i=yr(n+i,0)),qt(e,la(t,3),i)}function Va(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var a=n-1;return r!==i&&(a=gs(r),a=r<0?yr(n+a,0):vr(a,n-1)),qt(e,la(t,3),a,!0)}function Ha(e){return(null==e?0:e.length)?yn(e,1):[]}function Ka(e){return e&&e.length?e[0]:i}var Wa=Xn((function(e){var t=Rt(e,yi);return t.length&&t[0]===e[0]?Nn(t):[]})),Ga=Xn((function(e){var t=Ya(e),r=Rt(e,yi);return t===Ya(r)?t=i:r.pop(),r.length&&r[0]===e[0]?Nn(r,la(t,2)):[]})),$a=Xn((function(e){var t=Ya(e),r=Rt(e,yi);return(t="function"==typeof t?t:i)&&r.pop(),r.length&&r[0]===e[0]?Nn(r,i,t):[]}));function Ya(e){var t=null==e?0:e.length;return t?e[t-1]:i}var Xa=Xn(Qa);function Qa(e,t){return e&&e.length&&t&&t.length?Wn(e,t):e}var Za=na((function(e,t){var r=null==e?0:e.length,n=sn(e,t);return Gn(e,Rt(t,(function(e){return va(e,r)?+e:e})).sort(Ti)),n}));function eo(e){return null==e?e:Sr.call(e)}var to=Xn((function(e){return di(yn(e,1,Go,!0))})),ro=Xn((function(e){var t=Ya(e);return Go(t)&&(t=i),di(yn(e,1,Go,!0),la(t,2))})),no=Xn((function(e){var t=Ya(e);return t="function"==typeof t?t:i,di(yn(e,1,Go,!0),i,t)}));function io(e){if(!e||!e.length)return[];var t=0;return e=It(e,(function(e){if(Go(e))return t=yr(e.length,t),!0})),Xt(t,(function(t){return Rt(e,Wt(t))}))}function ao(e,t){if(!e||!e.length)return[];var r=io(e);return null==t?r:Rt(r,(function(e){return Tt(t,i,e)}))}var oo=Xn((function(e,t){return Go(e)?pn(e,t):[]})),so=Xn((function(e){return _i(It(e,Go))})),co=Xn((function(e){var t=Ya(e);return Go(t)&&(t=i),_i(It(e,Go),la(t,2))})),lo=Xn((function(e){var t=Ya(e);return t="function"==typeof t?t:i,_i(It(e,Go),i,t)})),uo=Xn(io);var po=Xn((function(e){var t=e.length,r=t>1?e[t-1]:i;return r="function"==typeof r?(e.pop(),r):i,ao(e,r)}));function fo(e){var t=zr(e);return t.__chain__=!0,t}function mo(e,t){return t(e)}var go=na((function(e){var t=e.length,r=t?e[0]:0,n=this.__wrapped__,a=function(t){return sn(t,e)};return!(t>1||this.__actions__.length)&&n instanceof Vr&&va(r)?((n=n.slice(r,+r+(t?1:0))).__actions__.push({func:mo,args:[a],thisArg:i}),new Jr(n,this.__chain__).thru((function(e){return t&&!e.length&&e.push(i),e}))):this.thru(a)}));var _o=Ii((function(e,t,r){Me.call(e,r)?++e[r]:on(e,r,1)}));var ho=Bi(Ja),yo=Bi(Va);function vo(e,t){return(Ho(e)?At:fn)(e,la(t,3))}function bo(e,t){return(Ho(e)?Nt:mn)(e,la(t,3))}var ko=Ii((function(e,t,r){Me.call(e,r)?e[r].push(t):on(e,r,[t])}));var xo=Xn((function(e,t,r){var i=-1,a="function"==typeof t,o=Wo(e)?n(e.length):[];return fn(e,(function(e){o[++i]=a?Tt(t,e,r):Pn(e,t,r)})),o})),So=Ii((function(e,t,r){on(e,r,t)}));function wo(e,t){return(Ho(e)?Rt:zn)(e,la(t,3))}var Do=Ii((function(e,t,r){e[r?0:1].push(t)}),(function(){return[[],[]]}));var Eo=Xn((function(e,t){if(null==e)return[];var r=t.length;return r>1&&ba(e,t[0],t[1])?t=[]:r>2&&ba(t[0],t[1],t[2])&&(t=[t[0]]),Hn(e,yn(t,1),[])})),To=ut||function(){return gt.Date.now()};function Co(e,t,r){return t=r?i:t,t=e&&null==t?e.length:t,Qi(e,d,i,i,i,i,t)}function Ao(e,t){var r;if("function"!=typeof t)throw new Ne(a);return e=gs(e),function(){return--e>0&&(r=t.apply(this,arguments)),e<=1&&(t=i),r}}var No=Xn((function(e,t,r){var n=1;if(r.length){var i=ur(r,ca(No));n|=l}return Qi(e,n,t,r,i)})),Po=Xn((function(e,t,r){var n=3;if(r.length){var i=ur(r,ca(Po));n|=l}return Qi(t,n,e,r,i)}));function Io(e,t,r){var n,o,s,c,l,u,d=0,p=!1,f=!1,m=!0;if("function"!=typeof e)throw new Ne(a);function g(t){var r=n,a=o;return n=o=i,d=t,c=e.apply(a,r)}function _(e){var r=e-u;return u===i||r>=t||r<0||f&&e-d>=s}function h(){var e=To();if(_(e))return y(e);l=Pa(h,function(e){var r=t-(e-u);return f?vr(r,s-(e-d)):r}(e))}function y(e){return l=i,m&&n?g(e):(n=o=i,c)}function v(){var e=To(),r=_(e);if(n=arguments,o=this,u=e,r){if(l===i)return function(e){return d=e,l=Pa(h,t),p?g(e):c}(u);if(f)return Si(l),l=Pa(h,t),g(u)}return l===i&&(l=Pa(h,t)),c}return t=hs(t)||0,ts(r)&&(p=!!r.leading,s=(f="maxWait"in r)?yr(hs(r.maxWait)||0,t):s,m="trailing"in r?!!r.trailing:m),v.cancel=function(){l!==i&&Si(l),d=0,n=u=o=l=i},v.flush=function(){return l===i?c:y(To())},v}var Fo=Xn((function(e,t){return dn(e,1,t)})),Oo=Xn((function(e,t,r){return dn(e,hs(t)||0,r)}));function Ro(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Ne(a);var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var o=e.apply(this,n);return r.cache=a.set(i,o)||a,o};return r.cache=new(Ro.Cache||Wr),r}function Mo(e){if("function"!=typeof e)throw new Ne(a);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ro.Cache=Wr;var Lo=ki((function(e,t){var r=(t=1==t.length&&Ho(t[0])?Rt(t[0],Zt(la())):Rt(yn(t,1),Zt(la()))).length;return Xn((function(n){for(var i=-1,a=vr(n.length,r);++i<a;)n[i]=t[i].call(this,n[i]);return Tt(e,this,n)}))})),jo=Xn((function(e,t){var r=ur(t,ca(jo));return Qi(e,l,i,t,r)})),Bo=Xn((function(e,t){var r=ur(t,ca(Bo));return Qi(e,u,i,t,r)})),zo=na((function(e,t){return Qi(e,p,i,i,i,t)}));function Uo(e,t){return e===t||e!=e&&t!=t}var qo=Wi(Tn),Jo=Wi((function(e,t){return e>=t})),Vo=In(function(){return arguments}())?In:function(e){return rs(e)&&Me.call(e,"callee")&&!$e.call(e,"callee")},Ho=n.isArray,Ko=kt?Zt(kt):function(e){return rs(e)&&En(e)==O};function Wo(e){return null!=e&&es(e.length)&&!Qo(e)}function Go(e){return rs(e)&&Wo(e)}var $o=vt||hc,Yo=xt?Zt(xt):function(e){return rs(e)&&En(e)==k};function Xo(e){if(!rs(e))return!1;var t=En(e);return t==x||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!as(e)}function Qo(e){if(!ts(e))return!1;var t=En(e);return t==S||t==w||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Zo(e){return"number"==typeof e&&e==gs(e)}function es(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=m}function ts(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function rs(e){return null!=e&&"object"==typeof e}var ns=St?Zt(St):function(e){return rs(e)&&ga(e)==D};function is(e){return"number"==typeof e||rs(e)&&En(e)==E}function as(e){if(!rs(e)||En(e)!=T)return!1;var t=We(e);if(null===t)return!0;var r=Me.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Re.call(r)==ze}var os=wt?Zt(wt):function(e){return rs(e)&&En(e)==A};var ss=Dt?Zt(Dt):function(e){return rs(e)&&ga(e)==N};function cs(e){return"string"==typeof e||!Ho(e)&&rs(e)&&En(e)==P}function ls(e){return"symbol"==typeof e||rs(e)&&En(e)==I}var us=Et?Zt(Et):function(e){return rs(e)&&es(e.length)&&!!ct[En(e)]};var ds=Wi(Bn),ps=Wi((function(e,t){return e<=t}));function fs(e){if(!e)return[];if(Wo(e))return cs(e)?mr(e):Ni(e);if(Qe&&e[Qe])return function(e){for(var t,r=[];!(t=e.next()).done;)r.push(t.value);return r}(e[Qe]());var t=ga(e);return(t==D?cr:t==N?dr:Us)(e)}function ms(e){return e?(e=hs(e))===f||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function gs(e){var t=ms(e),r=t%1;return t==t?r?t-r:t:0}function _s(e){return e?cn(gs(e),0,_):0}function hs(e){if("number"==typeof e)return e;if(ls(e))return g;if(ts(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=ts(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Qt(e);var r=he.test(e);return r||ve.test(e)?pt(e.slice(2),r?2:8):_e.test(e)?g:+e}function ys(e){return Pi(e,Fs(e))}function vs(e){return null==e?"":ui(e)}var bs=Fi((function(e,t){if(wa(t)||Wo(t))Pi(t,Is(t),e);else for(var r in t)Me.call(t,r)&&tn(e,r,t[r])})),ks=Fi((function(e,t){Pi(t,Fs(t),e)})),xs=Fi((function(e,t,r,n){Pi(t,Fs(t),e,n)})),Ss=Fi((function(e,t,r,n){Pi(t,Is(t),e,n)})),ws=na(sn);var Ds=Xn((function(e,t){e=Te(e);var r=-1,n=t.length,a=n>2?t[2]:i;for(a&&ba(t[0],t[1],a)&&(n=1);++r<n;)for(var o=t[r],s=Fs(o),c=-1,l=s.length;++c<l;){var u=s[c],d=e[u];(d===i||Uo(d,Fe[u])&&!Me.call(e,u))&&(e[u]=o[u])}return e})),Es=Xn((function(e){return e.push(i,ea),Tt(Rs,i,e)}));function Ts(e,t,r){var n=null==e?i:wn(e,t);return n===i?r:n}function Cs(e,t){return null!=e&&_a(e,t,An)}var As=qi((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=Be.call(t)),e[t]=r}),tc(ic)),Ns=qi((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=Be.call(t)),Me.call(e,t)?e[t].push(r):e[t]=[r]}),la),Ps=Xn(Pn);function Is(e){return Wo(e)?Yr(e):Ln(e)}function Fs(e){return Wo(e)?Yr(e,!0):jn(e)}var Os=Fi((function(e,t,r){Jn(e,t,r)})),Rs=Fi((function(e,t,r,n){Jn(e,t,r,n)})),Ms=na((function(e,t){var r={};if(null==e)return r;var n=!1;t=Rt(t,(function(t){return t=bi(t,e),n||(n=t.length>1),t})),Pi(e,aa(e),r),n&&(r=ln(r,7,ta));for(var i=t.length;i--;)pi(r,t[i]);return r}));var Ls=na((function(e,t){return null==e?{}:function(e,t){return Kn(e,t,(function(t,r){return Cs(e,r)}))}(e,t)}));function js(e,t){if(null==e)return{};var r=Rt(aa(e),(function(e){return[e]}));return t=la(t),Kn(e,r,(function(e,r){return t(e,r[0])}))}var Bs=Xi(Is),zs=Xi(Fs);function Us(e){return null==e?[]:er(e,Is(e))}var qs=Li((function(e,t,r){return t=t.toLowerCase(),e+(r?Js(t):t)}));function Js(e){return Xs(vs(e).toLowerCase())}function Vs(e){return(e=vs(e))&&e.replace(ke,ir).replace(tt,"")}var Hs=Li((function(e,t,r){return e+(r?"-":"")+t.toLowerCase()})),Ks=Li((function(e,t,r){return e+(r?" ":"")+t.toLowerCase()})),Ws=Mi("toLowerCase");var Gs=Li((function(e,t,r){return e+(r?"_":"")+t.toLowerCase()}));var $s=Li((function(e,t,r){return e+(r?" ":"")+Xs(t)}));var Ys=Li((function(e,t,r){return e+(r?" ":"")+t.toUpperCase()})),Xs=Mi("toUpperCase");function Qs(e,t,r){return e=vs(e),(t=r?i:t)===i?function(e){return at.test(e)}(e)?function(e){return e.match(nt)||[]}(e):function(e){return e.match(de)||[]}(e):e.match(t)||[]}var Zs=Xn((function(e,t){try{return Tt(e,i,t)}catch(e){return Xo(e)?e:new we(e)}})),ec=na((function(e,t){return At(t,(function(t){t=La(t),on(e,t,No(e[t],e))})),e}));function tc(e){return function(){return e}}var rc=zi(),nc=zi(!0);function ic(e){return e}function ac(e){return Mn("function"==typeof e?e:ln(e,1))}var oc=Xn((function(e,t){return function(r){return Pn(r,e,t)}})),sc=Xn((function(e,t){return function(r){return Pn(e,r,t)}}));function cc(e,t,r){var n=Is(t),i=Sn(t,n);null!=r||ts(t)&&(i.length||!n.length)||(r=t,t=e,e=this,i=Sn(t,Is(t)));var a=!(ts(r)&&"chain"in r&&!r.chain),o=Qo(e);return At(i,(function(r){var n=t[r];e[r]=n,o&&(e.prototype[r]=function(){var t=this.__chain__;if(a||t){var r=e(this.__wrapped__);return(r.__actions__=Ni(this.__actions__)).push({func:n,args:arguments,thisArg:e}),r.__chain__=t,r}return n.apply(e,Mt([this.value()],arguments))})})),e}function lc(){}var uc=Vi(Rt),dc=Vi(Pt),pc=Vi(Bt);function fc(e){return ka(e)?Wt(La(e)):function(e){return function(t){return wn(t,e)}}(e)}var mc=Ki(),gc=Ki(!0);function _c(){return[]}function hc(){return!1}var yc=Ji((function(e,t){return e+t}),0),vc=$i("ceil"),bc=Ji((function(e,t){return e/t}),1),kc=$i("floor");var xc,Sc=Ji((function(e,t){return e*t}),1),wc=$i("round"),Dc=Ji((function(e,t){return e-t}),0);return zr.after=function(e,t){if("function"!=typeof t)throw new Ne(a);return e=gs(e),function(){if(--e<1)return t.apply(this,arguments)}},zr.ary=Co,zr.assign=bs,zr.assignIn=ks,zr.assignInWith=xs,zr.assignWith=Ss,zr.at=ws,zr.before=Ao,zr.bind=No,zr.bindAll=ec,zr.bindKey=Po,zr.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ho(e)?e:[e]},zr.chain=fo,zr.chunk=function(e,t,r){t=(r?ba(e,t,r):t===i)?1:yr(gs(t),0);var a=null==e?0:e.length;if(!a||t<1)return[];for(var o=0,s=0,c=n(mt(a/t));o<a;)c[s++]=ii(e,o,o+=t);return c},zr.compact=function(e){for(var t=-1,r=null==e?0:e.length,n=0,i=[];++t<r;){var a=e[t];a&&(i[n++]=a)}return i},zr.concat=function(){var e=arguments.length;if(!e)return[];for(var t=n(e-1),r=arguments[0],i=e;i--;)t[i-1]=arguments[i];return Mt(Ho(r)?Ni(r):[r],yn(t,1))},zr.cond=function(e){var t=null==e?0:e.length,r=la();return e=t?Rt(e,(function(e){if("function"!=typeof e[1])throw new Ne(a);return[r(e[0]),e[1]]})):[],Xn((function(r){for(var n=-1;++n<t;){var i=e[n];if(Tt(i[0],this,r))return Tt(i[1],this,r)}}))},zr.conforms=function(e){return function(e){var t=Is(e);return function(r){return un(r,e,t)}}(ln(e,1))},zr.constant=tc,zr.countBy=_o,zr.create=function(e,t){var r=Ur(e);return null==t?r:an(r,t)},zr.curry=function e(t,r,n){var a=Qi(t,8,i,i,i,i,i,r=n?i:r);return a.placeholder=e.placeholder,a},zr.curryRight=function e(t,r,n){var a=Qi(t,c,i,i,i,i,i,r=n?i:r);return a.placeholder=e.placeholder,a},zr.debounce=Io,zr.defaults=Ds,zr.defaultsDeep=Es,zr.defer=Fo,zr.delay=Oo,zr.difference=za,zr.differenceBy=Ua,zr.differenceWith=qa,zr.drop=function(e,t,r){var n=null==e?0:e.length;return n?ii(e,(t=r||t===i?1:gs(t))<0?0:t,n):[]},zr.dropRight=function(e,t,r){var n=null==e?0:e.length;return n?ii(e,0,(t=n-(t=r||t===i?1:gs(t)))<0?0:t):[]},zr.dropRightWhile=function(e,t){return e&&e.length?mi(e,la(t,3),!0,!0):[]},zr.dropWhile=function(e,t){return e&&e.length?mi(e,la(t,3),!0):[]},zr.fill=function(e,t,r,n){var a=null==e?0:e.length;return a?(r&&"number"!=typeof r&&ba(e,t,r)&&(r=0,n=a),function(e,t,r,n){var a=e.length;for((r=gs(r))<0&&(r=-r>a?0:a+r),(n=n===i||n>a?a:gs(n))<0&&(n+=a),n=r>n?0:_s(n);r<n;)e[r++]=t;return e}(e,t,r,n)):[]},zr.filter=function(e,t){return(Ho(e)?It:hn)(e,la(t,3))},zr.flatMap=function(e,t){return yn(wo(e,t),1)},zr.flatMapDeep=function(e,t){return yn(wo(e,t),f)},zr.flatMapDepth=function(e,t,r){return r=r===i?1:gs(r),yn(wo(e,t),r)},zr.flatten=Ha,zr.flattenDeep=function(e){return(null==e?0:e.length)?yn(e,f):[]},zr.flattenDepth=function(e,t){return(null==e?0:e.length)?yn(e,t=t===i?1:gs(t)):[]},zr.flip=function(e){return Qi(e,512)},zr.flow=rc,zr.flowRight=nc,zr.fromPairs=function(e){for(var t=-1,r=null==e?0:e.length,n={};++t<r;){var i=e[t];n[i[0]]=i[1]}return n},zr.functions=function(e){return null==e?[]:Sn(e,Is(e))},zr.functionsIn=function(e){return null==e?[]:Sn(e,Fs(e))},zr.groupBy=ko,zr.initial=function(e){return(null==e?0:e.length)?ii(e,0,-1):[]},zr.intersection=Wa,zr.intersectionBy=Ga,zr.intersectionWith=$a,zr.invert=As,zr.invertBy=Ns,zr.invokeMap=xo,zr.iteratee=ac,zr.keyBy=So,zr.keys=Is,zr.keysIn=Fs,zr.map=wo,zr.mapKeys=function(e,t){var r={};return t=la(t,3),kn(e,(function(e,n,i){on(r,t(e,n,i),e)})),r},zr.mapValues=function(e,t){var r={};return t=la(t,3),kn(e,(function(e,n,i){on(r,n,t(e,n,i))})),r},zr.matches=function(e){return Un(ln(e,1))},zr.matchesProperty=function(e,t){return qn(e,ln(t,1))},zr.memoize=Ro,zr.merge=Os,zr.mergeWith=Rs,zr.method=oc,zr.methodOf=sc,zr.mixin=cc,zr.negate=Mo,zr.nthArg=function(e){return e=gs(e),Xn((function(t){return Vn(t,e)}))},zr.omit=Ms,zr.omitBy=function(e,t){return js(e,Mo(la(t)))},zr.once=function(e){return Ao(2,e)},zr.orderBy=function(e,t,r,n){return null==e?[]:(Ho(t)||(t=null==t?[]:[t]),Ho(r=n?i:r)||(r=null==r?[]:[r]),Hn(e,t,r))},zr.over=uc,zr.overArgs=Lo,zr.overEvery=dc,zr.overSome=pc,zr.partial=jo,zr.partialRight=Bo,zr.partition=Do,zr.pick=Ls,zr.pickBy=js,zr.property=fc,zr.propertyOf=function(e){return function(t){return null==e?i:wn(e,t)}},zr.pull=Xa,zr.pullAll=Qa,zr.pullAllBy=function(e,t,r){return e&&e.length&&t&&t.length?Wn(e,t,la(r,2)):e},zr.pullAllWith=function(e,t,r){return e&&e.length&&t&&t.length?Wn(e,t,i,r):e},zr.pullAt=Za,zr.range=mc,zr.rangeRight=gc,zr.rearg=zo,zr.reject=function(e,t){return(Ho(e)?It:hn)(e,Mo(la(t,3)))},zr.remove=function(e,t){var r=[];if(!e||!e.length)return r;var n=-1,i=[],a=e.length;for(t=la(t,3);++n<a;){var o=e[n];t(o,n,e)&&(r.push(o),i.push(n))}return Gn(e,i),r},zr.rest=function(e,t){if("function"!=typeof e)throw new Ne(a);return Xn(e,t=t===i?t:gs(t))},zr.reverse=eo,zr.sampleSize=function(e,t,r){return t=(r?ba(e,t,r):t===i)?1:gs(t),(Ho(e)?Qr:Zn)(e,t)},zr.set=function(e,t,r){return null==e?e:ei(e,t,r)},zr.setWith=function(e,t,r,n){return n="function"==typeof n?n:i,null==e?e:ei(e,t,r,n)},zr.shuffle=function(e){return(Ho(e)?Zr:ni)(e)},zr.slice=function(e,t,r){var n=null==e?0:e.length;return n?(r&&"number"!=typeof r&&ba(e,t,r)?(t=0,r=n):(t=null==t?0:gs(t),r=r===i?n:gs(r)),ii(e,t,r)):[]},zr.sortBy=Eo,zr.sortedUniq=function(e){return e&&e.length?ci(e):[]},zr.sortedUniqBy=function(e,t){return e&&e.length?ci(e,la(t,2)):[]},zr.split=function(e,t,r){return r&&"number"!=typeof r&&ba(e,t,r)&&(t=r=i),(r=r===i?_:r>>>0)?(e=vs(e))&&("string"==typeof t||null!=t&&!os(t))&&!(t=ui(t))&&sr(e)?xi(mr(e),0,r):e.split(t,r):[]},zr.spread=function(e,t){if("function"!=typeof e)throw new Ne(a);return t=null==t?0:yr(gs(t),0),Xn((function(r){var n=r[t],i=xi(r,0,t);return n&&Mt(i,n),Tt(e,this,i)}))},zr.tail=function(e){var t=null==e?0:e.length;return t?ii(e,1,t):[]},zr.take=function(e,t,r){return e&&e.length?ii(e,0,(t=r||t===i?1:gs(t))<0?0:t):[]},zr.takeRight=function(e,t,r){var n=null==e?0:e.length;return n?ii(e,(t=n-(t=r||t===i?1:gs(t)))<0?0:t,n):[]},zr.takeRightWhile=function(e,t){return e&&e.length?mi(e,la(t,3),!1,!0):[]},zr.takeWhile=function(e,t){return e&&e.length?mi(e,la(t,3)):[]},zr.tap=function(e,t){return t(e),e},zr.throttle=function(e,t,r){var n=!0,i=!0;if("function"!=typeof e)throw new Ne(a);return ts(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),Io(e,t,{leading:n,maxWait:t,trailing:i})},zr.thru=mo,zr.toArray=fs,zr.toPairs=Bs,zr.toPairsIn=zs,zr.toPath=function(e){return Ho(e)?Rt(e,La):ls(e)?[e]:Ni(Ma(vs(e)))},zr.toPlainObject=ys,zr.transform=function(e,t,r){var n=Ho(e),i=n||$o(e)||us(e);if(t=la(t,4),null==r){var a=e&&e.constructor;r=i?n?new a:[]:ts(e)&&Qo(a)?Ur(We(e)):{}}return(i?At:kn)(e,(function(e,n,i){return t(r,e,n,i)})),r},zr.unary=function(e){return Co(e,1)},zr.union=to,zr.unionBy=ro,zr.unionWith=no,zr.uniq=function(e){return e&&e.length?di(e):[]},zr.uniqBy=function(e,t){return e&&e.length?di(e,la(t,2)):[]},zr.uniqWith=function(e,t){return t="function"==typeof t?t:i,e&&e.length?di(e,i,t):[]},zr.unset=function(e,t){return null==e||pi(e,t)},zr.unzip=io,zr.unzipWith=ao,zr.update=function(e,t,r){return null==e?e:fi(e,t,vi(r))},zr.updateWith=function(e,t,r,n){return n="function"==typeof n?n:i,null==e?e:fi(e,t,vi(r),n)},zr.values=Us,zr.valuesIn=function(e){return null==e?[]:er(e,Fs(e))},zr.without=oo,zr.words=Qs,zr.wrap=function(e,t){return jo(vi(t),e)},zr.xor=so,zr.xorBy=co,zr.xorWith=lo,zr.zip=uo,zr.zipObject=function(e,t){return hi(e||[],t||[],tn)},zr.zipObjectDeep=function(e,t){return hi(e||[],t||[],ei)},zr.zipWith=po,zr.entries=Bs,zr.entriesIn=zs,zr.extend=ks,zr.extendWith=xs,cc(zr,zr),zr.add=yc,zr.attempt=Zs,zr.camelCase=qs,zr.capitalize=Js,zr.ceil=vc,zr.clamp=function(e,t,r){return r===i&&(r=t,t=i),r!==i&&(r=(r=hs(r))==r?r:0),t!==i&&(t=(t=hs(t))==t?t:0),cn(hs(e),t,r)},zr.clone=function(e){return ln(e,4)},zr.cloneDeep=function(e){return ln(e,5)},zr.cloneDeepWith=function(e,t){return ln(e,5,t="function"==typeof t?t:i)},zr.cloneWith=function(e,t){return ln(e,4,t="function"==typeof t?t:i)},zr.conformsTo=function(e,t){return null==t||un(e,t,Is(t))},zr.deburr=Vs,zr.defaultTo=function(e,t){return null==e||e!=e?t:e},zr.divide=bc,zr.endsWith=function(e,t,r){e=vs(e),t=ui(t);var n=e.length,a=r=r===i?n:cn(gs(r),0,n);return(r-=t.length)>=0&&e.slice(r,a)==t},zr.eq=Uo,zr.escape=function(e){return(e=vs(e))&&X.test(e)?e.replace($,ar):e},zr.escapeRegExp=function(e){return(e=vs(e))&&ae.test(e)?e.replace(ie,"\\$&"):e},zr.every=function(e,t,r){var n=Ho(e)?Pt:gn;return r&&ba(e,t,r)&&(t=i),n(e,la(t,3))},zr.find=ho,zr.findIndex=Ja,zr.findKey=function(e,t){return Ut(e,la(t,3),kn)},zr.findLast=yo,zr.findLastIndex=Va,zr.findLastKey=function(e,t){return Ut(e,la(t,3),xn)},zr.floor=kc,zr.forEach=vo,zr.forEachRight=bo,zr.forIn=function(e,t){return null==e?e:vn(e,la(t,3),Fs)},zr.forInRight=function(e,t){return null==e?e:bn(e,la(t,3),Fs)},zr.forOwn=function(e,t){return e&&kn(e,la(t,3))},zr.forOwnRight=function(e,t){return e&&xn(e,la(t,3))},zr.get=Ts,zr.gt=qo,zr.gte=Jo,zr.has=function(e,t){return null!=e&&_a(e,t,Cn)},zr.hasIn=Cs,zr.head=Ka,zr.identity=ic,zr.includes=function(e,t,r,n){e=Wo(e)?e:Us(e),r=r&&!n?gs(r):0;var i=e.length;return r<0&&(r=yr(i+r,0)),cs(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&Jt(e,t,r)>-1},zr.indexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:gs(r);return i<0&&(i=yr(n+i,0)),Jt(e,t,i)},zr.inRange=function(e,t,r){return t=ms(t),r===i?(r=t,t=0):r=ms(r),function(e,t,r){return e>=vr(t,r)&&e<yr(t,r)}(e=hs(e),t,r)},zr.invoke=Ps,zr.isArguments=Vo,zr.isArray=Ho,zr.isArrayBuffer=Ko,zr.isArrayLike=Wo,zr.isArrayLikeObject=Go,zr.isBoolean=function(e){return!0===e||!1===e||rs(e)&&En(e)==b},zr.isBuffer=$o,zr.isDate=Yo,zr.isElement=function(e){return rs(e)&&1===e.nodeType&&!as(e)},zr.isEmpty=function(e){if(null==e)return!0;if(Wo(e)&&(Ho(e)||"string"==typeof e||"function"==typeof e.splice||$o(e)||us(e)||Vo(e)))return!e.length;var t=ga(e);if(t==D||t==N)return!e.size;if(wa(e))return!Ln(e).length;for(var r in e)if(Me.call(e,r))return!1;return!0},zr.isEqual=function(e,t){return Fn(e,t)},zr.isEqualWith=function(e,t,r){var n=(r="function"==typeof r?r:i)?r(e,t):i;return n===i?Fn(e,t,i,r):!!n},zr.isError=Xo,zr.isFinite=function(e){return"number"==typeof e&&bt(e)},zr.isFunction=Qo,zr.isInteger=Zo,zr.isLength=es,zr.isMap=ns,zr.isMatch=function(e,t){return e===t||On(e,t,da(t))},zr.isMatchWith=function(e,t,r){return r="function"==typeof r?r:i,On(e,t,da(t),r)},zr.isNaN=function(e){return is(e)&&e!=+e},zr.isNative=function(e){if(Sa(e))throw new we("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Rn(e)},zr.isNil=function(e){return null==e},zr.isNull=function(e){return null===e},zr.isNumber=is,zr.isObject=ts,zr.isObjectLike=rs,zr.isPlainObject=as,zr.isRegExp=os,zr.isSafeInteger=function(e){return Zo(e)&&e>=-9007199254740991&&e<=m},zr.isSet=ss,zr.isString=cs,zr.isSymbol=ls,zr.isTypedArray=us,zr.isUndefined=function(e){return e===i},zr.isWeakMap=function(e){return rs(e)&&ga(e)==F},zr.isWeakSet=function(e){return rs(e)&&"[object WeakSet]"==En(e)},zr.join=function(e,t){return null==e?"":zt.call(e,t)},zr.kebabCase=Hs,zr.last=Ya,zr.lastIndexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var a=n;return r!==i&&(a=(a=gs(r))<0?yr(n+a,0):vr(a,n-1)),t==t?function(e,t,r){for(var n=r+1;n--;)if(e[n]===t)return n;return n}(e,t,a):qt(e,Ht,a,!0)},zr.lowerCase=Ks,zr.lowerFirst=Ws,zr.lt=ds,zr.lte=ps,zr.max=function(e){return e&&e.length?_n(e,ic,Tn):i},zr.maxBy=function(e,t){return e&&e.length?_n(e,la(t,2),Tn):i},zr.mean=function(e){return Kt(e,ic)},zr.meanBy=function(e,t){return Kt(e,la(t,2))},zr.min=function(e){return e&&e.length?_n(e,ic,Bn):i},zr.minBy=function(e,t){return e&&e.length?_n(e,la(t,2),Bn):i},zr.stubArray=_c,zr.stubFalse=hc,zr.stubObject=function(){return{}},zr.stubString=function(){return""},zr.stubTrue=function(){return!0},zr.multiply=Sc,zr.nth=function(e,t){return e&&e.length?Vn(e,gs(t)):i},zr.noConflict=function(){return gt._===this&&(gt._=Ue),this},zr.noop=lc,zr.now=To,zr.pad=function(e,t,r){e=vs(e);var n=(t=gs(t))?fr(e):0;if(!t||n>=t)return e;var i=(t-n)/2;return Hi(_t(i),r)+e+Hi(mt(i),r)},zr.padEnd=function(e,t,r){e=vs(e);var n=(t=gs(t))?fr(e):0;return t&&n<t?e+Hi(t-n,r):e},zr.padStart=function(e,t,r){e=vs(e);var n=(t=gs(t))?fr(e):0;return t&&n<t?Hi(t-n,r)+e:e},zr.parseInt=function(e,t,r){return r||null==t?t=0:t&&(t=+t),kr(vs(e).replace(oe,""),t||0)},zr.random=function(e,t,r){if(r&&"boolean"!=typeof r&&ba(e,t,r)&&(t=r=i),r===i&&("boolean"==typeof t?(r=t,t=i):"boolean"==typeof e&&(r=e,e=i)),e===i&&t===i?(e=0,t=1):(e=ms(e),t===i?(t=e,e=0):t=ms(t)),e>t){var n=e;e=t,t=n}if(r||e%1||t%1){var a=xr();return vr(e+a*(t-e+dt("1e-"+((a+"").length-1))),t)}return $n(e,t)},zr.reduce=function(e,t,r){var n=Ho(e)?Lt:$t,i=arguments.length<3;return n(e,la(t,4),r,i,fn)},zr.reduceRight=function(e,t,r){var n=Ho(e)?jt:$t,i=arguments.length<3;return n(e,la(t,4),r,i,mn)},zr.repeat=function(e,t,r){return t=(r?ba(e,t,r):t===i)?1:gs(t),Yn(vs(e),t)},zr.replace=function(){var e=arguments,t=vs(e[0]);return e.length<3?t:t.replace(e[1],e[2])},zr.result=function(e,t,r){var n=-1,a=(t=bi(t,e)).length;for(a||(a=1,e=i);++n<a;){var o=null==e?i:e[La(t[n])];o===i&&(n=a,o=r),e=Qo(o)?o.call(e):o}return e},zr.round=wc,zr.runInContext=e,zr.sample=function(e){return(Ho(e)?Xr:Qn)(e)},zr.size=function(e){if(null==e)return 0;if(Wo(e))return cs(e)?fr(e):e.length;var t=ga(e);return t==D||t==N?e.size:Ln(e).length},zr.snakeCase=Gs,zr.some=function(e,t,r){var n=Ho(e)?Bt:ai;return r&&ba(e,t,r)&&(t=i),n(e,la(t,3))},zr.sortedIndex=function(e,t){return oi(e,t)},zr.sortedIndexBy=function(e,t,r){return si(e,t,la(r,2))},zr.sortedIndexOf=function(e,t){var r=null==e?0:e.length;if(r){var n=oi(e,t);if(n<r&&Uo(e[n],t))return n}return-1},zr.sortedLastIndex=function(e,t){return oi(e,t,!0)},zr.sortedLastIndexBy=function(e,t,r){return si(e,t,la(r,2),!0)},zr.sortedLastIndexOf=function(e,t){if(null==e?0:e.length){var r=oi(e,t,!0)-1;if(Uo(e[r],t))return r}return-1},zr.startCase=$s,zr.startsWith=function(e,t,r){return e=vs(e),r=null==r?0:cn(gs(r),0,e.length),t=ui(t),e.slice(r,r+t.length)==t},zr.subtract=Dc,zr.sum=function(e){return e&&e.length?Yt(e,ic):0},zr.sumBy=function(e,t){return e&&e.length?Yt(e,la(t,2)):0},zr.template=function(e,t,r){var n=zr.templateSettings;r&&ba(e,t,r)&&(t=i),e=vs(e),t=xs({},t,n,Zi);var a,o,s=xs({},t.imports,n.imports,Zi),c=Is(s),l=er(s,c),u=0,d=t.interpolate||xe,p="__p += '",f=Ce((t.escape||xe).source+"|"+d.source+"|"+(d===ee?me:xe).source+"|"+(t.evaluate||xe).source+"|$","g"),m="//# sourceURL="+(Me.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++st+"]")+"\n";e.replace(f,(function(t,r,n,i,s,c){return n||(n=i),p+=e.slice(u,c).replace(Se,or),r&&(a=!0,p+="' +\n__e("+r+") +\n'"),s&&(o=!0,p+="';\n"+s+";\n__p += '"),n&&(p+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),u=c+t.length,t})),p+="';\n";var g=Me.call(t,"variable")&&t.variable;if(g){if(pe.test(g))throw new we("Invalid `variable` option passed into `_.template`")}else p="with (obj) {\n"+p+"\n}\n";p=(o?p.replace(H,""):p).replace(K,"$1").replace(W,"$1;"),p="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+p+"return __p\n}";var _=Zs((function(){return De(c,m+"return "+p).apply(i,l)}));if(_.source=p,Xo(_))throw _;return _},zr.times=function(e,t){if((e=gs(e))<1||e>m)return[];var r=_,n=vr(e,_);t=la(t),e-=_;for(var i=Xt(n,t);++r<e;)t(r);return i},zr.toFinite=ms,zr.toInteger=gs,zr.toLength=_s,zr.toLower=function(e){return vs(e).toLowerCase()},zr.toNumber=hs,zr.toSafeInteger=function(e){return e?cn(gs(e),-9007199254740991,m):0===e?e:0},zr.toString=vs,zr.toUpper=function(e){return vs(e).toUpperCase()},zr.trim=function(e,t,r){if((e=vs(e))&&(r||t===i))return Qt(e);if(!e||!(t=ui(t)))return e;var n=mr(e),a=mr(t);return xi(n,rr(n,a),nr(n,a)+1).join("")},zr.trimEnd=function(e,t,r){if((e=vs(e))&&(r||t===i))return e.slice(0,gr(e)+1);if(!e||!(t=ui(t)))return e;var n=mr(e);return xi(n,0,nr(n,mr(t))+1).join("")},zr.trimStart=function(e,t,r){if((e=vs(e))&&(r||t===i))return e.replace(oe,"");if(!e||!(t=ui(t)))return e;var n=mr(e);return xi(n,rr(n,mr(t))).join("")},zr.truncate=function(e,t){var r=30,n="...";if(ts(t)){var a="separator"in t?t.separator:a;r="length"in t?gs(t.length):r,n="omission"in t?ui(t.omission):n}var o=(e=vs(e)).length;if(sr(e)){var s=mr(e);o=s.length}if(r>=o)return e;var c=r-fr(n);if(c<1)return n;var l=s?xi(s,0,c).join(""):e.slice(0,c);if(a===i)return l+n;if(s&&(c+=l.length-c),os(a)){if(e.slice(c).search(a)){var u,d=l;for(a.global||(a=Ce(a.source,vs(ge.exec(a))+"g")),a.lastIndex=0;u=a.exec(d);)var p=u.index;l=l.slice(0,p===i?c:p)}}else if(e.indexOf(ui(a),c)!=c){var f=l.lastIndexOf(a);f>-1&&(l=l.slice(0,f))}return l+n},zr.unescape=function(e){return(e=vs(e))&&Y.test(e)?e.replace(G,_r):e},zr.uniqueId=function(e){var t=++Le;return vs(e)+t},zr.upperCase=Ys,zr.upperFirst=Xs,zr.each=vo,zr.eachRight=bo,zr.first=Ka,cc(zr,(xc={},kn(zr,(function(e,t){Me.call(zr.prototype,t)||(xc[t]=e)})),xc),{chain:!1}),zr.VERSION="4.17.21",At(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){zr[e].placeholder=zr})),At(["drop","take"],(function(e,t){Vr.prototype[e]=function(r){r=r===i?1:yr(gs(r),0);var n=this.__filtered__&&!t?new Vr(this):this.clone();return n.__filtered__?n.__takeCount__=vr(r,n.__takeCount__):n.__views__.push({size:vr(r,_),type:e+(n.__dir__<0?"Right":"")}),n},Vr.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),At(["filter","map","takeWhile"],(function(e,t){var r=t+1,n=1==r||3==r;Vr.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:la(e,3),type:r}),t.__filtered__=t.__filtered__||n,t}})),At(["head","last"],(function(e,t){var r="take"+(t?"Right":"");Vr.prototype[e]=function(){return this[r](1).value()[0]}})),At(["initial","tail"],(function(e,t){var r="drop"+(t?"":"Right");Vr.prototype[e]=function(){return this.__filtered__?new Vr(this):this[r](1)}})),Vr.prototype.compact=function(){return this.filter(ic)},Vr.prototype.find=function(e){return this.filter(e).head()},Vr.prototype.findLast=function(e){return this.reverse().find(e)},Vr.prototype.invokeMap=Xn((function(e,t){return"function"==typeof e?new Vr(this):this.map((function(r){return Pn(r,e,t)}))})),Vr.prototype.reject=function(e){return this.filter(Mo(la(e)))},Vr.prototype.slice=function(e,t){e=gs(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Vr(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==i&&(r=(t=gs(t))<0?r.dropRight(-t):r.take(t-e)),r)},Vr.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Vr.prototype.toArray=function(){return this.take(_)},kn(Vr.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),n=/^(?:head|last)$/.test(t),a=zr[n?"take"+("last"==t?"Right":""):t],o=n||/^find/.test(t);a&&(zr.prototype[t]=function(){var t=this.__wrapped__,s=n?[1]:arguments,c=t instanceof Vr,l=s[0],u=c||Ho(t),d=function(e){var t=a.apply(zr,Mt([e],s));return n&&p?t[0]:t};u&&r&&"function"==typeof l&&1!=l.length&&(c=u=!1);var p=this.__chain__,f=!!this.__actions__.length,m=o&&!p,g=c&&!f;if(!o&&u){t=g?t:new Vr(this);var _=e.apply(t,s);return _.__actions__.push({func:mo,args:[d],thisArg:i}),new Jr(_,p)}return m&&g?e.apply(this,s):(_=this.thru(d),m?n?_.value()[0]:_.value():_)})})),At(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Pe[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);zr.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var i=this.value();return t.apply(Ho(i)?i:[],e)}return this[r]((function(r){return t.apply(Ho(r)?r:[],e)}))}})),kn(Vr.prototype,(function(e,t){var r=zr[t];if(r){var n=r.name+"";Me.call(Pr,n)||(Pr[n]=[]),Pr[n].push({name:t,func:r})}})),Pr[Ui(i,2).name]=[{name:"wrapper",func:i}],Vr.prototype.clone=function(){var e=new Vr(this.__wrapped__);return e.__actions__=Ni(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ni(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ni(this.__views__),e},Vr.prototype.reverse=function(){if(this.__filtered__){var e=new Vr(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Vr.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,r=Ho(e),n=t<0,i=r?e.length:0,a=function(e,t,r){var n=-1,i=r.length;for(;++n<i;){var a=r[n],o=a.size;switch(a.type){case"drop":e+=o;break;case"dropRight":t-=o;break;case"take":t=vr(t,e+o);break;case"takeRight":e=yr(e,t-o)}}return{start:e,end:t}}(0,i,this.__views__),o=a.start,s=a.end,c=s-o,l=n?s:o-1,u=this.__iteratees__,d=u.length,p=0,f=vr(c,this.__takeCount__);if(!r||!n&&i==c&&f==c)return gi(e,this.__actions__);var m=[];e:for(;c--&&p<f;){for(var g=-1,_=e[l+=t];++g<d;){var h=u[g],y=h.iteratee,v=h.type,b=y(_);if(2==v)_=b;else if(!b){if(1==v)continue e;break e}}m[p++]=_}return m},zr.prototype.at=go,zr.prototype.chain=function(){return fo(this)},zr.prototype.commit=function(){return new Jr(this.value(),this.__chain__)},zr.prototype.next=function(){this.__values__===i&&(this.__values__=fs(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?i:this.__values__[this.__index__++]}},zr.prototype.plant=function(e){for(var t,r=this;r instanceof qr;){var n=Ba(r);n.__index__=0,n.__values__=i,t?a.__wrapped__=n:t=n;var a=n;r=r.__wrapped__}return a.__wrapped__=e,t},zr.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Vr){var t=e;return this.__actions__.length&&(t=new Vr(this)),(t=t.reverse()).__actions__.push({func:mo,args:[eo],thisArg:i}),new Jr(t,this.__chain__)}return this.thru(eo)},zr.prototype.toJSON=zr.prototype.valueOf=zr.prototype.value=function(){return gi(this.__wrapped__,this.__actions__)},zr.prototype.first=zr.prototype.head,Qe&&(zr.prototype[Qe]=function(){return this}),zr}();gt._=hr,(n=function(){return hr}.call(t,r,t,e))===i||(e.exports=n)}.call(this)},94027:(e,t,r)=>{e.exports=p,p.Minimatch=f;var n=function(){try{return r(16928)}catch(e){}}()||{sep:"/"};p.sep=n.sep;var i=p.GLOBSTAR=f.GLOBSTAR={},a=r(68928),o={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},s="[^/]",c=s+"*?",l="().*{}+?[]^$\\!".split("").reduce((function(e,t){return e[t]=!0,e}),{});var u=/\/+/;function d(e,t){t=t||{};var r={};return Object.keys(e).forEach((function(t){r[t]=e[t]})),Object.keys(t).forEach((function(e){r[e]=t[e]})),r}function p(e,t,r){return g(t),r||(r={}),!(!r.nocomment&&"#"===t.charAt(0))&&new f(t,r).match(e)}function f(e,t){if(!(this instanceof f))return new f(e,t);g(e),t||(t={}),e=e.trim(),t.allowWindowsEscape||"/"===n.sep||(e=e.split(n.sep).join("/")),this.options=t,this.set=[],this.pattern=e,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.make()}function m(e,t){return t||(t=this instanceof f?this.options:{}),e=void 0===e?this.pattern:e,g(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:a(e)}p.filter=function(e,t){return t=t||{},function(r,n,i){return p(r,e,t)}},p.defaults=function(e){if(!e||"object"!=typeof e||!Object.keys(e).length)return p;var t=p,r=function(r,n,i){return t(r,n,d(e,i))};return(r.Minimatch=function(r,n){return new t.Minimatch(r,d(e,n))}).defaults=function(r){return t.defaults(d(e,r)).Minimatch},r.filter=function(r,n){return t.filter(r,d(e,n))},r.defaults=function(r){return t.defaults(d(e,r))},r.makeRe=function(r,n){return t.makeRe(r,d(e,n))},r.braceExpand=function(r,n){return t.braceExpand(r,d(e,n))},r.match=function(r,n,i){return t.match(r,n,d(e,i))},r},f.defaults=function(e){return p.defaults(e).Minimatch},f.prototype.debug=function(){},f.prototype.make=function(){var e=this.pattern,t=this.options;if(!t.nocomment&&"#"===e.charAt(0))return void(this.comment=!0);if(!e)return void(this.empty=!0);this.parseNegate();var r=this.globSet=this.braceExpand();t.debug&&(this.debug=function(){console.error.apply(console,arguments)});this.debug(this.pattern,r),r=this.globParts=r.map((function(e){return e.split(u)})),this.debug(this.pattern,r),r=r.map((function(e,t,r){return e.map(this.parse,this)}),this),this.debug(this.pattern,r),r=r.filter((function(e){return-1===e.indexOf(!1)})),this.debug(this.pattern,r),this.set=r},f.prototype.parseNegate=function(){var e=this.pattern,t=!1,r=this.options,n=0;if(r.nonegate)return;for(var i=0,a=e.length;i<a&&"!"===e.charAt(i);i++)t=!t,n++;n&&(this.pattern=e.substr(n));this.negate=t},p.braceExpand=function(e,t){return m(e,t)},f.prototype.braceExpand=m;var g=function(e){if("string"!=typeof e)throw new TypeError("invalid pattern");if(e.length>65536)throw new TypeError("pattern is too long")};f.prototype.parse=function(e,t){g(e);var r=this.options;if("**"===e){if(!r.noglobstar)return i;e="*"}if(""===e)return"";var n,a="",u=!!r.nocase,d=!1,p=[],f=[],m=!1,h=-1,y=-1,v="."===e.charAt(0)?"":r.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",b=this;function k(){if(n){switch(n){case"*":a+=c,u=!0;break;case"?":a+=s,u=!0;break;default:a+="\\"+n}b.debug("clearStateChar %j %j",n,a),n=!1}}for(var x,S=0,w=e.length;S<w&&(x=e.charAt(S));S++)if(this.debug("%s\t%s %s %j",e,S,a,x),d&&l[x])a+="\\"+x,d=!1;else switch(x){case"/":return!1;case"\\":k(),d=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s\t%s %s %j <-- stateChar",e,S,a,x),m){this.debug(" in class"),"!"===x&&S===y+1&&(x="^"),a+=x;continue}b.debug("call clearStateChar %j",n),k(),n=x,r.noext&&k();continue;case"(":if(m){a+="(";continue}if(!n){a+="\\(";continue}p.push({type:n,start:S-1,reStart:a.length,open:o[n].open,close:o[n].close}),a+="!"===n?"(?:(?!(?:":"(?:",this.debug("plType %j %j",n,a),n=!1;continue;case")":if(m||!p.length){a+="\\)";continue}k(),u=!0;var D=p.pop();a+=D.close,"!"===D.type&&f.push(D),D.reEnd=a.length;continue;case"|":if(m||!p.length||d){a+="\\|",d=!1;continue}k(),a+="|";continue;case"[":if(k(),m){a+="\\"+x;continue}m=!0,y=S,h=a.length,a+=x;continue;case"]":if(S===y+1||!m){a+="\\"+x,d=!1;continue}var E=e.substring(y+1,S);try{RegExp("["+E+"]")}catch(e){var T=this.parse(E,_);a=a.substr(0,h)+"\\["+T[0]+"\\]",u=u||T[1],m=!1;continue}u=!0,m=!1,a+=x;continue;default:k(),d?d=!1:!l[x]||"^"===x&&m||(a+="\\"),a+=x}m&&(E=e.substr(y+1),T=this.parse(E,_),a=a.substr(0,h)+"\\["+T[0],u=u||T[1]);for(D=p.pop();D;D=p.pop()){var C=a.slice(D.reStart+D.open.length);this.debug("setting tail",a,D),C=C.replace(/((?:\\{2}){0,64})(\\?)\|/g,(function(e,t,r){return r||(r="\\"),t+t+r+"|"})),this.debug("tail=%j\n %s",C,C,D,a);var A="*"===D.type?c:"?"===D.type?s:"\\"+D.type;u=!0,a=a.slice(0,D.reStart)+A+"\\("+C}k(),d&&(a+="\\\\");var N=!1;switch(a.charAt(0)){case"[":case".":case"(":N=!0}for(var P=f.length-1;P>-1;P--){var I=f[P],F=a.slice(0,I.reStart),O=a.slice(I.reStart,I.reEnd-8),R=a.slice(I.reEnd-8,I.reEnd),M=a.slice(I.reEnd);R+=M;var L=F.split("(").length-1,j=M;for(S=0;S<L;S++)j=j.replace(/\)[+*?]?/,"");var B="";""===(M=j)&&t!==_&&(B="$"),a=F+O+M+B+R}""!==a&&u&&(a="(?=.)"+a);N&&(a=v+a);if(t===_)return[a,u];if(!u)return function(e){return e.replace(/\\(.)/g,"$1")}(e);var z=r.nocase?"i":"";try{var U=new RegExp("^"+a+"$",z)}catch(e){return new RegExp("$.")}return U._glob=e,U._src=a,U};var _={};p.makeRe=function(e,t){return new f(e,t||{}).makeRe()},f.prototype.makeRe=function(){if(this.regexp||!1===this.regexp)return this.regexp;var e=this.set;if(!e.length)return this.regexp=!1,this.regexp;var t=this.options,r=t.noglobstar?c:t.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",n=t.nocase?"i":"",a=e.map((function(e){return e.map((function(e){return e===i?r:"string"==typeof e?function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}(e):e._src})).join("\\/")})).join("|");a="^(?:"+a+")$",this.negate&&(a="^(?!"+a+").*$");try{this.regexp=new RegExp(a,n)}catch(e){this.regexp=!1}return this.regexp},p.match=function(e,t,r){var n=new f(t,r=r||{});return e=e.filter((function(e){return n.match(e)})),n.options.nonull&&!e.length&&e.push(t),e},f.prototype.match=function(e,t){if(void 0===t&&(t=this.partial),this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return""===e;if("/"===e&&t)return!0;var r=this.options;"/"!==n.sep&&(e=e.split(n.sep).join("/")),e=e.split(u),this.debug(this.pattern,"split",e);var i,a,o=this.set;for(this.debug(this.pattern,"set",o),a=e.length-1;a>=0&&!(i=e[a]);a--);for(a=0;a<o.length;a++){var s=o[a],c=e;if(r.matchBase&&1===s.length&&(c=[i]),this.matchOne(c,s,t))return!!r.flipNegate||!this.negate}return!r.flipNegate&&this.negate},f.prototype.matchOne=function(e,t,r){var n=this.options;this.debug("matchOne",{this:this,file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var a=0,o=0,s=e.length,c=t.length;a<s&&o<c;a++,o++){this.debug("matchOne loop");var l,u=t[o],d=e[a];if(this.debug(t,u,d),!1===u)return!1;if(u===i){this.debug("GLOBSTAR",[t,u,d]);var p=a,f=o+1;if(f===c){for(this.debug("** at the end");a<s;a++)if("."===e[a]||".."===e[a]||!n.dot&&"."===e[a].charAt(0))return!1;return!0}for(;p<s;){var m=e[p];if(this.debug("\nglobstar while",e,p,t,f,m),this.matchOne(e.slice(p),t.slice(f),r))return this.debug("globstar found match!",p,s,m),!0;if("."===m||".."===m||!n.dot&&"."===m.charAt(0)){this.debug("dot detected!",e,p,t,f);break}this.debug("globstar swallow a segment, and continue"),p++}return!(!r||(this.debug("\n>>> no match, partial?",e,p,t,f),p!==s))}if("string"==typeof u?(l=d===u,this.debug("string match",u,d,l)):(l=d.match(u),this.debug("pattern match",u,d,l)),!l)return!1}if(a===s&&o===c)return!0;if(a===s)return r;if(o===c)return a===s-1&&""===e[a];throw new Error("wtf?")}},43480:(e,t,r)=>{var n=r(16928),i=r(79896),a=parseInt("0777",8);function o(e,t,r,s){"function"==typeof t?(r=t,t={}):t&&"object"==typeof t||(t={mode:t});var c=t.mode,l=t.fs||i;void 0===c&&(c=a),s||(s=null);var u=r||function(){};e=n.resolve(e),l.mkdir(e,c,(function(r){if(!r)return u(null,s=s||e);if("ENOENT"===r.code){if(n.dirname(e)===e)return u(r);o(n.dirname(e),t,(function(r,n){r?u(r,n):o(e,t,u,n)}))}else l.stat(e,(function(e,t){e||!t.isDirectory()?u(r,s):u(null,s)}))}))}e.exports=o.mkdirp=o.mkdirP=o,o.sync=function e(t,r,o){r&&"object"==typeof r||(r={mode:r});var s=r.mode,c=r.fs||i;void 0===s&&(s=a),o||(o=null),t=n.resolve(t);try{c.mkdirSync(t,s),o=o||t}catch(i){if("ENOENT"===i.code)o=e(n.dirname(t),r,o),e(t,r,o);else{var l;try{l=c.statSync(t)}catch(e){throw i}if(!l.isDirectory())throw i}}return o}},14100:e=>{ -/*! - * normalize-path <https://github.com/jonschlinkert/normalize-path> - * - * Copyright (c) 2014-2018, Jon Schlinkert. - * Released under the MIT License. - */ -e.exports=function(e,t){if("string"!=typeof e)throw new TypeError("expected path to be a string");if("\\"===e||"/"===e)return"/";var r=e.length;if(r<=1)return e;var n="";if(r>4&&"\\"===e[3]){var i=e[2];"?"!==i&&"."!==i||"\\\\"!==e.slice(0,2)||(e=e.slice(2),n="//")}var a=e.split(/[/\\]+/);return!1!==t&&""===a[a.length-1]&&a.pop(),n+a.join("/")}},83519:(e,t,r)=>{var n=r(86587);function i(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function a(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}e.exports=n(i),e.exports.strict=n(a),i.proto=i((function(){Object.defineProperty(Function.prototype,"once",{value:function(){return i(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return a(this)},configurable:!0})}))},51668:(e,t,r)=>{"use strict";var n={};(0,r(9805).assign)(n,r(63303),r(87083),r(19681)),e.exports=n},63303:(e,t,r)=>{"use strict";var n=r(58411),i=r(9805),a=r(41996),o=r(54674),s=r(44442),c=Object.prototype.toString,l=0,u=-1,d=0,p=8;function f(e){if(!(this instanceof f))return new f(e);this.options=i.assign({level:u,method:p,chunkSize:16384,windowBits:15,memLevel:8,strategy:d,to:""},e||{});var t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new s,this.strm.avail_out=0;var r=n.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==l)throw new Error(o[r]);if(t.header&&n.deflateSetHeader(this.strm,t.header),t.dictionary){var m;if(m="string"==typeof t.dictionary?a.string2buf(t.dictionary):"[object ArrayBuffer]"===c.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,(r=n.deflateSetDictionary(this.strm,m))!==l)throw new Error(o[r]);this._dict_set=!0}}function m(e,t){var r=new f(t);if(r.push(e,!0),r.err)throw r.msg||o[r.err];return r.result}f.prototype.push=function(e,t){var r,o,s=this.strm,u=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,"string"==typeof e?s.input=a.string2buf(e):"[object ArrayBuffer]"===c.call(e)?s.input=new Uint8Array(e):s.input=e,s.next_in=0,s.avail_in=s.input.length;do{if(0===s.avail_out&&(s.output=new i.Buf8(u),s.next_out=0,s.avail_out=u),1!==(r=n.deflate(s,o))&&r!==l)return this.onEnd(r),this.ended=!0,!1;0!==s.avail_out&&(0!==s.avail_in||4!==o&&2!==o)||("string"===this.options.to?this.onData(a.buf2binstring(i.shrinkBuf(s.output,s.next_out))):this.onData(i.shrinkBuf(s.output,s.next_out)))}while((s.avail_in>0||0===s.avail_out)&&1!==r);return 4===o?(r=n.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===l):2!==o||(this.onEnd(l),s.avail_out=0,!0)},f.prototype.onData=function(e){this.chunks.push(e)},f.prototype.onEnd=function(e){e===l&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Deflate=f,t.deflate=m,t.deflateRaw=function(e,t){return(t=t||{}).raw=!0,m(e,t)},t.gzip=function(e,t){return(t=t||{}).gzip=!0,m(e,t)}},87083:(e,t,r)=>{"use strict";var n=r(71447),i=r(9805),a=r(41996),o=r(19681),s=r(54674),c=r(44442),l=r(37414),u=Object.prototype.toString;function d(e){if(!(this instanceof d))return new d(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(15&t.windowBits||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new c,this.strm.avail_out=0;var r=n.inflateInit2(this.strm,t.windowBits);if(r!==o.Z_OK)throw new Error(s[r]);if(this.header=new l,n.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=a.string2buf(t.dictionary):"[object ArrayBuffer]"===u.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=n.inflateSetDictionary(this.strm,t.dictionary))!==o.Z_OK))throw new Error(s[r])}function p(e,t){var r=new d(t);if(r.push(e,!0),r.err)throw r.msg||s[r.err];return r.result}d.prototype.push=function(e,t){var r,s,c,l,d,p=this.strm,f=this.options.chunkSize,m=this.options.dictionary,g=!1;if(this.ended)return!1;s=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,"string"==typeof e?p.input=a.binstring2buf(e):"[object ArrayBuffer]"===u.call(e)?p.input=new Uint8Array(e):p.input=e,p.next_in=0,p.avail_in=p.input.length;do{if(0===p.avail_out&&(p.output=new i.Buf8(f),p.next_out=0,p.avail_out=f),(r=n.inflate(p,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&m&&(r=n.inflateSetDictionary(this.strm,m)),r===o.Z_BUF_ERROR&&!0===g&&(r=o.Z_OK,g=!1),r!==o.Z_STREAM_END&&r!==o.Z_OK)return this.onEnd(r),this.ended=!0,!1;p.next_out&&(0!==p.avail_out&&r!==o.Z_STREAM_END&&(0!==p.avail_in||s!==o.Z_FINISH&&s!==o.Z_SYNC_FLUSH)||("string"===this.options.to?(c=a.utf8border(p.output,p.next_out),l=p.next_out-c,d=a.buf2string(p.output,c),p.next_out=l,p.avail_out=f-l,l&&i.arraySet(p.output,p.output,c,l,0),this.onData(d)):this.onData(i.shrinkBuf(p.output,p.next_out)))),0===p.avail_in&&0===p.avail_out&&(g=!0)}while((p.avail_in>0||0===p.avail_out)&&r!==o.Z_STREAM_END);return r===o.Z_STREAM_END&&(s=o.Z_FINISH),s===o.Z_FINISH?(r=n.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===o.Z_OK):s!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),p.avail_out=0,!0)},d.prototype.onData=function(e){this.chunks.push(e)},d.prototype.onEnd=function(e){e===o.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Inflate=d,t.inflate=p,t.inflateRaw=function(e,t){return(t=t||{}).raw=!0,p(e,t)},t.ungzip=p},9805:(e,t)=>{"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function n(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var i in r)n(r,i)&&(e[i]=r[i])}}return e},t.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var i={arraySet:function(e,t,r,n,i){if(t.subarray&&e.subarray)e.set(t.subarray(r,r+n),i);else for(var a=0;a<n;a++)e[i+a]=t[r+a]},flattenChunks:function(e){var t,r,n,i,a,o;for(n=0,t=0,r=e.length;t<r;t++)n+=e[t].length;for(o=new Uint8Array(n),i=0,t=0,r=e.length;t<r;t++)a=e[t],o.set(a,i),i+=a.length;return o}},a={arraySet:function(e,t,r,n,i){for(var a=0;a<n;a++)e[i+a]=t[r+a]},flattenChunks:function(e){return[].concat.apply([],e)}};t.setTyped=function(e){e?(t.Buf8=Uint8Array,t.Buf16=Uint16Array,t.Buf32=Int32Array,t.assign(t,i)):(t.Buf8=Array,t.Buf16=Array,t.Buf32=Array,t.assign(t,a))},t.setTyped(r)},41996:(e,t,r)=>{"use strict";var n=r(9805),i=!0,a=!0;try{String.fromCharCode.apply(null,[0])}catch(e){i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){a=!1}for(var o=new n.Buf8(256),s=0;s<256;s++)o[s]=s>=252?6:s>=248?5:s>=240?4:s>=224?3:s>=192?2:1;function c(e,t){if(t<65534&&(e.subarray&&a||!e.subarray&&i))return String.fromCharCode.apply(null,n.shrinkBuf(e,t));for(var r="",o=0;o<t;o++)r+=String.fromCharCode(e[o]);return r}o[254]=o[254]=1,t.string2buf=function(e){var t,r,i,a,o,s=e.length,c=0;for(a=0;a<s;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(i=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(i-56320),a++),c+=r<128?1:r<2048?2:r<65536?3:4;for(t=new n.Buf8(c),o=0,a=0;o<c;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(i=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(i-56320),a++),r<128?t[o++]=r:r<2048?(t[o++]=192|r>>>6,t[o++]=128|63&r):r<65536?(t[o++]=224|r>>>12,t[o++]=128|r>>>6&63,t[o++]=128|63&r):(t[o++]=240|r>>>18,t[o++]=128|r>>>12&63,t[o++]=128|r>>>6&63,t[o++]=128|63&r);return t},t.buf2binstring=function(e){return c(e,e.length)},t.binstring2buf=function(e){for(var t=new n.Buf8(e.length),r=0,i=t.length;r<i;r++)t[r]=e.charCodeAt(r);return t},t.buf2string=function(e,t){var r,n,i,a,s=t||e.length,l=new Array(2*s);for(n=0,r=0;r<s;)if((i=e[r++])<128)l[n++]=i;else if((a=o[i])>4)l[n++]=65533,r+=a-1;else{for(i&=2===a?31:3===a?15:7;a>1&&r<s;)i=i<<6|63&e[r++],a--;a>1?l[n++]=65533:i<65536?l[n++]=i:(i-=65536,l[n++]=55296|i>>10&1023,l[n++]=56320|1023&i)}return c(l,n)},t.utf8border=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;r>=0&&128==(192&e[r]);)r--;return r<0||0===r?t:r+o[e[r]]>t?r:t}},53269:e=>{"use strict";e.exports=function(e,t,r,n){for(var i=65535&e,a=e>>>16&65535,o=0;0!==r;){r-=o=r>2e3?2e3:r;do{a=a+(i=i+t[n++]|0)|0}while(--o);i%=65521,a%=65521}return i|a<<16}},19681:e=>{"use strict";e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},14823:e=>{"use strict";var t=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();e.exports=function(e,r,n,i){var a=t,o=i+n;e^=-1;for(var s=i;s<o;s++)e=e>>>8^a[255&(e^r[s])];return~e}},58411:(e,t,r)=>{"use strict";var n,i=r(9805),a=r(23665),o=r(53269),s=r(14823),c=r(54674),l=0,u=4,d=0,p=-2,f=-1,m=4,g=2,_=8,h=9,y=286,v=30,b=19,k=2*y+1,x=15,S=3,w=258,D=w+S+1,E=42,T=103,C=113,A=666,N=1,P=2,I=3,F=4;function O(e,t){return e.msg=c[t],t}function R(e){return(e<<1)-(e>4?9:0)}function M(e){for(var t=e.length;--t>=0;)e[t]=0}function L(e){var t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(i.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function j(e,t){a._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,L(e.strm)}function B(e,t){e.pending_buf[e.pending++]=t}function z(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function U(e,t){var r,n,i=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-D?e.strstart-(e.w_size-D):0,l=e.window,u=e.w_mask,d=e.prev,p=e.strstart+w,f=l[a+o-1],m=l[a+o];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(l[(r=t)+o]===m&&l[r+o-1]===f&&l[r]===l[a]&&l[++r]===l[a+1]){a+=2,r++;do{}while(l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&a<p);if(n=w-(p-a),a=p-w,n>o){if(e.match_start=t,o=n,n>=s)break;f=l[a+o-1],m=l[a+o]}}}while((t=d[t&u])>c&&0!=--i);return o<=e.lookahead?o:e.lookahead}function q(e){var t,r,n,a,c,l,u,d,p,f,m=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-D)){i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=r=e.hash_size;do{n=e.head[--t],e.head[t]=n>=m?n-m:0}while(--r);t=r=m;do{n=e.prev[--t],e.prev[t]=n>=m?n-m:0}while(--r);a+=m}if(0===e.strm.avail_in)break;if(l=e.strm,u=e.window,d=e.strstart+e.lookahead,p=a,f=void 0,(f=l.avail_in)>p&&(f=p),r=0===f?0:(l.avail_in-=f,i.arraySet(u,l.input,l.next_in,f,d),1===l.state.wrap?l.adler=o(l.adler,u,f,d):2===l.state.wrap&&(l.adler=s(l.adler,u,f,d)),l.next_in+=f,l.total_in+=f,f),e.lookahead+=r,e.lookahead+e.insert>=S)for(c=e.strstart-e.insert,e.ins_h=e.window[c],e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+S-1])&e.hash_mask,e.prev[c&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=c,c++,e.insert--,!(e.lookahead+e.insert<S)););}while(e.lookahead<D&&0!==e.strm.avail_in)}function J(e,t){for(var r,n;;){if(e.lookahead<D){if(q(e),e.lookahead<D&&t===l)return N;if(0===e.lookahead)break}if(r=0,e.lookahead>=S&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+S-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==r&&e.strstart-r<=e.w_size-D&&(e.match_length=U(e,r)),e.match_length>=S)if(n=a._tr_tally(e,e.strstart-e.match_start,e.match_length-S),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=S){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+S-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(0!=--e.match_length);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=e.strstart<S-1?e.strstart:S-1,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}function V(e,t){for(var r,n,i;;){if(e.lookahead<D){if(q(e),e.lookahead<D&&t===l)return N;if(0===e.lookahead)break}if(r=0,e.lookahead>=S&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+S-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=S-1,0!==r&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-D&&(e.match_length=U(e,r),e.match_length<=5&&(1===e.strategy||e.match_length===S&&e.strstart-e.match_start>4096)&&(e.match_length=S-1)),e.prev_length>=S&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-S,n=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-S),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+S-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!=--e.prev_length);if(e.match_available=0,e.match_length=S-1,e.strstart++,n&&(j(e,!1),0===e.strm.avail_out))return N}else if(e.match_available){if((n=a._tr_tally(e,0,e.window[e.strstart-1]))&&j(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return N}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=a._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<S-1?e.strstart:S-1,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}function H(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}function K(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=_,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(2*k),this.dyn_dtree=new i.Buf16(2*(2*v+1)),this.bl_tree=new i.Buf16(2*(2*b+1)),M(this.dyn_ltree),M(this.dyn_dtree),M(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(x+1),this.heap=new i.Buf16(2*y+1),M(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*y+1),M(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function W(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=g,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?E:C,e.adler=2===t.wrap?0:1,t.last_flush=l,a._tr_init(t),d):O(e,p)}function G(e){var t,r=W(e);return r===d&&((t=e.state).window_size=2*t.w_size,M(t.head),t.max_lazy_match=n[t.level].max_lazy,t.good_match=n[t.level].good_length,t.nice_match=n[t.level].nice_length,t.max_chain_length=n[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=S-1,t.match_available=0,t.ins_h=0),r}function $(e,t,r,n,a,o){if(!e)return p;var s=1;if(t===f&&(t=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),a<1||a>h||r!==_||n<8||n>15||t<0||t>9||o<0||o>m)return O(e,p);8===n&&(n=9);var c=new K;return e.state=c,c.strm=e,c.wrap=s,c.gzhead=null,c.w_bits=n,c.w_size=1<<c.w_bits,c.w_mask=c.w_size-1,c.hash_bits=a+7,c.hash_size=1<<c.hash_bits,c.hash_mask=c.hash_size-1,c.hash_shift=~~((c.hash_bits+S-1)/S),c.window=new i.Buf8(2*c.w_size),c.head=new i.Buf16(c.hash_size),c.prev=new i.Buf16(c.w_size),c.lit_bufsize=1<<a+6,c.pending_buf_size=4*c.lit_bufsize,c.pending_buf=new i.Buf8(c.pending_buf_size),c.d_buf=1*c.lit_bufsize,c.l_buf=3*c.lit_bufsize,c.level=t,c.strategy=o,c.method=r,G(e)}n=[new H(0,0,0,0,(function(e,t){var r=65535;for(r>e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(q(e),0===e.lookahead&&t===l)return N;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,j(e,!1),0===e.strm.avail_out))return N;if(e.strstart-e.block_start>=e.w_size-D&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=0,t===u?(j(e,!0),0===e.strm.avail_out?I:F):(e.strstart>e.block_start&&(j(e,!1),e.strm.avail_out),N)})),new H(4,4,8,4,J),new H(4,5,16,8,J),new H(4,6,32,32,J),new H(4,4,16,16,V),new H(8,16,32,32,V),new H(8,16,128,128,V),new H(8,32,128,256,V),new H(32,128,258,1024,V),new H(32,258,258,4096,V)],t.deflateInit=function(e,t){return $(e,t,_,15,8,0)},t.deflateInit2=$,t.deflateReset=G,t.deflateResetKeep=W,t.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?p:(e.state.gzhead=t,d):p},t.deflate=function(e,t){var r,i,o,c;if(!e||!e.state||t>5||t<0)return e?O(e,p):p;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||i.status===A&&t!==u)return O(e,0===e.avail_out?-5:p);if(i.strm=e,r=i.last_flush,i.last_flush=t,i.status===E)if(2===i.wrap)e.adler=0,B(i,31),B(i,139),B(i,8),i.gzhead?(B(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),B(i,255&i.gzhead.time),B(i,i.gzhead.time>>8&255),B(i,i.gzhead.time>>16&255),B(i,i.gzhead.time>>24&255),B(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),B(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(B(i,255&i.gzhead.extra.length),B(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(B(i,0),B(i,0),B(i,0),B(i,0),B(i,0),B(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),B(i,3),i.status=C);else{var f=_+(i.w_bits-8<<4)<<8;f|=(i.strategy>=2||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(f|=32),f+=31-f%31,i.status=C,z(i,f),0!==i.strstart&&(z(i,e.adler>>>16),z(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),L(e),o=i.pending,i.pending!==i.pending_buf_size));)B(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),L(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,B(i,c)}while(0!==c);i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===c&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),L(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,B(i,c)}while(0!==c);i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===c&&(i.status=T)}else i.status=T;if(i.status===T&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&L(e),i.pending+2<=i.pending_buf_size&&(B(i,255&e.adler),B(i,e.adler>>8&255),e.adler=0,i.status=C)):i.status=C),0!==i.pending){if(L(e),0===e.avail_out)return i.last_flush=-1,d}else if(0===e.avail_in&&R(t)<=R(r)&&t!==u)return O(e,-5);if(i.status===A&&0!==e.avail_in)return O(e,-5);if(0!==e.avail_in||0!==i.lookahead||t!==l&&i.status!==A){var m=2===i.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(q(e),0===e.lookahead)){if(t===l)return N;break}if(e.match_length=0,r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=0,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}(i,t):3===i.strategy?function(e,t){for(var r,n,i,o,s=e.window;;){if(e.lookahead<=w){if(q(e),e.lookahead<=w&&t===l)return N;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=S&&e.strstart>0&&(n=s[i=e.strstart-1])===s[++i]&&n===s[++i]&&n===s[++i]){o=e.strstart+w;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&i<o);e.match_length=w-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=S?(r=a._tr_tally(e,1,e.match_length-S),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=0,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}(i,t):n[i.level].func(i,t);if(m!==I&&m!==F||(i.status=A),m===N||m===I)return 0===e.avail_out&&(i.last_flush=-1),d;if(m===P&&(1===t?a._tr_align(i):5!==t&&(a._tr_stored_block(i,0,0,!1),3===t&&(M(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),L(e),0===e.avail_out))return i.last_flush=-1,d}return t!==u?d:i.wrap<=0?1:(2===i.wrap?(B(i,255&e.adler),B(i,e.adler>>8&255),B(i,e.adler>>16&255),B(i,e.adler>>24&255),B(i,255&e.total_in),B(i,e.total_in>>8&255),B(i,e.total_in>>16&255),B(i,e.total_in>>24&255)):(z(i,e.adler>>>16),z(i,65535&e.adler)),L(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?d:1)},t.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==E&&69!==t&&73!==t&&91!==t&&t!==T&&t!==C&&t!==A?O(e,p):(e.state=null,t===C?O(e,-3):d):p},t.deflateSetDictionary=function(e,t){var r,n,a,s,c,l,u,f,m=t.length;if(!e||!e.state)return p;if(2===(s=(r=e.state).wrap)||1===s&&r.status!==E||r.lookahead)return p;for(1===s&&(e.adler=o(e.adler,t,m,0)),r.wrap=0,m>=r.w_size&&(0===s&&(M(r.head),r.strstart=0,r.block_start=0,r.insert=0),f=new i.Buf8(r.w_size),i.arraySet(f,t,m-r.w_size,r.w_size,0),t=f,m=r.w_size),c=e.avail_in,l=e.next_in,u=e.input,e.avail_in=m,e.next_in=0,e.input=t,q(r);r.lookahead>=S;){n=r.strstart,a=r.lookahead-(S-1);do{r.ins_h=(r.ins_h<<r.hash_shift^r.window[n+S-1])&r.hash_mask,r.prev[n&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=n,n++}while(--a);r.strstart=n,r.lookahead=S-1,q(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=S-1,r.match_available=0,e.next_in=l,e.input=u,e.avail_in=c,r.wrap=s,d},t.deflateInfo="pako deflate (from Nodeca project)"},37414:e=>{"use strict";e.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},47293:e=>{"use strict";e.exports=function(e,t){var r,n,i,a,o,s,c,l,u,d,p,f,m,g,_,h,y,v,b,k,x,S,w,D,E;r=e.state,n=e.next_in,D=e.input,i=n+(e.avail_in-5),a=e.next_out,E=e.output,o=a-(t-e.avail_out),s=a+(e.avail_out-257),c=r.dmax,l=r.wsize,u=r.whave,d=r.wnext,p=r.window,f=r.hold,m=r.bits,g=r.lencode,_=r.distcode,h=(1<<r.lenbits)-1,y=(1<<r.distbits)-1;e:do{m<15&&(f+=D[n++]<<m,m+=8,f+=D[n++]<<m,m+=8),v=g[f&h];t:for(;;){if(f>>>=b=v>>>24,m-=b,0===(b=v>>>16&255))E[a++]=65535&v;else{if(!(16&b)){if(64&b){if(32&b){r.mode=12;break e}e.msg="invalid literal/length code",r.mode=30;break e}v=g[(65535&v)+(f&(1<<b)-1)];continue t}for(k=65535&v,(b&=15)&&(m<b&&(f+=D[n++]<<m,m+=8),k+=f&(1<<b)-1,f>>>=b,m-=b),m<15&&(f+=D[n++]<<m,m+=8,f+=D[n++]<<m,m+=8),v=_[f&y];;){if(f>>>=b=v>>>24,m-=b,16&(b=v>>>16&255)){if(x=65535&v,m<(b&=15)&&(f+=D[n++]<<m,(m+=8)<b&&(f+=D[n++]<<m,m+=8)),(x+=f&(1<<b)-1)>c){e.msg="invalid distance too far back",r.mode=30;break e}if(f>>>=b,m-=b,x>(b=a-o)){if((b=x-b)>u&&r.sane){e.msg="invalid distance too far back",r.mode=30;break e}if(S=0,w=p,0===d){if(S+=l-b,b<k){k-=b;do{E[a++]=p[S++]}while(--b);S=a-x,w=E}}else if(d<b){if(S+=l+d-b,(b-=d)<k){k-=b;do{E[a++]=p[S++]}while(--b);if(S=0,d<k){k-=b=d;do{E[a++]=p[S++]}while(--b);S=a-x,w=E}}}else if(S+=d-b,b<k){k-=b;do{E[a++]=p[S++]}while(--b);S=a-x,w=E}for(;k>2;)E[a++]=w[S++],E[a++]=w[S++],E[a++]=w[S++],k-=3;k&&(E[a++]=w[S++],k>1&&(E[a++]=w[S++]))}else{S=a-x;do{E[a++]=E[S++],E[a++]=E[S++],E[a++]=E[S++],k-=3}while(k>2);k&&(E[a++]=E[S++],k>1&&(E[a++]=E[S++]))}break}if(64&b){e.msg="invalid distance code",r.mode=30;break e}v=_[(65535&v)+(f&(1<<b)-1)]}}break}}while(n<i&&a<s);n-=k=m>>3,f&=(1<<(m-=k<<3))-1,e.next_in=n,e.next_out=a,e.avail_in=n<i?i-n+5:5-(n-i),e.avail_out=a<s?s-a+257:257-(a-s),r.hold=f,r.bits=m}},71447:(e,t,r)=>{"use strict";var n=r(9805),i=r(53269),a=r(14823),o=r(47293),s=r(21998),c=1,l=2,u=0,d=-2,p=1,f=12,m=30,g=852,_=592;function h(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function y(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function v(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=p,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new n.Buf32(g),t.distcode=t.distdyn=new n.Buf32(_),t.sane=1,t.back=-1,u):d}function b(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,v(e)):d}function k(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?d:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,b(e))):d}function x(e,t){var r,n;return e?(n=new y,e.state=n,n.window=null,(r=k(e,t))!==u&&(e.state=null),r):d}var S,w,D=!0;function E(e){if(D){var t;for(S=new n.Buf32(512),w=new n.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(c,e.lens,0,288,S,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(l,e.lens,0,32,w,0,e.work,{bits:5}),D=!1}e.lencode=S,e.lenbits=9,e.distcode=w,e.distbits=5}function T(e,t,r,i){var a,o=e.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new n.Buf8(o.wsize)),i>=o.wsize?(n.arraySet(o.window,t,r-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):((a=o.wsize-o.wnext)>i&&(a=i),n.arraySet(o.window,t,r-i,a,o.wnext),(i-=a)?(n.arraySet(o.window,t,r-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=a))),0}t.inflateReset=b,t.inflateReset2=k,t.inflateResetKeep=v,t.inflateInit=function(e){return x(e,15)},t.inflateInit2=x,t.inflate=function(e,t){var r,g,_,y,v,b,k,x,S,w,D,C,A,N,P,I,F,O,R,M,L,j,B,z,U=0,q=new n.Buf8(4),J=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return d;(r=e.state).mode===f&&(r.mode=13),v=e.next_out,_=e.output,k=e.avail_out,y=e.next_in,g=e.input,b=e.avail_in,x=r.hold,S=r.bits,w=b,D=k,j=u;e:for(;;)switch(r.mode){case p:if(0===r.wrap){r.mode=13;break}for(;S<16;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}if(2&r.wrap&&35615===x){r.check=0,q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0),x=0,S=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&x)<<8)+(x>>8))%31){e.msg="incorrect header check",r.mode=m;break}if(8!=(15&x)){e.msg="unknown compression method",r.mode=m;break}if(S-=4,L=8+(15&(x>>>=4)),0===r.wbits)r.wbits=L;else if(L>r.wbits){e.msg="invalid window size",r.mode=m;break}r.dmax=1<<L,e.adler=r.check=1,r.mode=512&x?10:f,x=0,S=0;break;case 2:for(;S<16;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}if(r.flags=x,8!=(255&r.flags)){e.msg="unknown compression method",r.mode=m;break}if(57344&r.flags){e.msg="unknown header flags set",r.mode=m;break}r.head&&(r.head.text=x>>8&1),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0)),x=0,S=0,r.mode=3;case 3:for(;S<32;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}r.head&&(r.head.time=x),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,q[2]=x>>>16&255,q[3]=x>>>24&255,r.check=a(r.check,q,4,0)),x=0,S=0,r.mode=4;case 4:for(;S<16;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}r.head&&(r.head.xflags=255&x,r.head.os=x>>8),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0)),x=0,S=0,r.mode=5;case 5:if(1024&r.flags){for(;S<16;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}r.length=x,r.head&&(r.head.extra_len=x),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0)),x=0,S=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&((C=r.length)>b&&(C=b),C&&(r.head&&(L=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,g,y,C,L)),512&r.flags&&(r.check=a(r.check,g,C,y)),b-=C,y+=C,r.length-=C),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===b)break e;C=0;do{L=g[y+C++],r.head&&L&&r.length<65536&&(r.head.name+=String.fromCharCode(L))}while(L&&C<b);if(512&r.flags&&(r.check=a(r.check,g,C,y)),b-=C,y+=C,L)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=8;case 8:if(4096&r.flags){if(0===b)break e;C=0;do{L=g[y+C++],r.head&&L&&r.length<65536&&(r.head.comment+=String.fromCharCode(L))}while(L&&C<b);if(512&r.flags&&(r.check=a(r.check,g,C,y)),b-=C,y+=C,L)break e}else r.head&&(r.head.comment=null);r.mode=9;case 9:if(512&r.flags){for(;S<16;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}if(x!==(65535&r.check)){e.msg="header crc mismatch",r.mode=m;break}x=0,S=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=f;break;case 10:for(;S<32;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}e.adler=r.check=h(x),x=0,S=0,r.mode=11;case 11:if(0===r.havedict)return e.next_out=v,e.avail_out=k,e.next_in=y,e.avail_in=b,r.hold=x,r.bits=S,2;e.adler=r.check=1,r.mode=f;case f:if(5===t||6===t)break e;case 13:if(r.last){x>>>=7&S,S-=7&S,r.mode=27;break}for(;S<3;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}switch(r.last=1&x,S-=1,3&(x>>>=1)){case 0:r.mode=14;break;case 1:if(E(r),r.mode=20,6===t){x>>>=2,S-=2;break e}break;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=m}x>>>=2,S-=2;break;case 14:for(x>>>=7&S,S-=7&S;S<32;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}if((65535&x)!=(x>>>16^65535)){e.msg="invalid stored block lengths",r.mode=m;break}if(r.length=65535&x,x=0,S=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(C=r.length){if(C>b&&(C=b),C>k&&(C=k),0===C)break e;n.arraySet(_,g,y,C,v),b-=C,y+=C,k-=C,v+=C,r.length-=C;break}r.mode=f;break;case 17:for(;S<14;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}if(r.nlen=257+(31&x),x>>>=5,S-=5,r.ndist=1+(31&x),x>>>=5,S-=5,r.ncode=4+(15&x),x>>>=4,S-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=m;break}r.have=0,r.mode=18;case 18:for(;r.have<r.ncode;){for(;S<3;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}r.lens[J[r.have++]]=7&x,x>>>=3,S-=3}for(;r.have<19;)r.lens[J[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,B={bits:r.lenbits},j=s(0,r.lens,0,19,r.lencode,0,r.work,B),r.lenbits=B.bits,j){e.msg="invalid code lengths set",r.mode=m;break}r.have=0,r.mode=19;case 19:for(;r.have<r.nlen+r.ndist;){for(;I=(U=r.lencode[x&(1<<r.lenbits)-1])>>>16&255,F=65535&U,!((P=U>>>24)<=S);){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}if(F<16)x>>>=P,S-=P,r.lens[r.have++]=F;else{if(16===F){for(z=P+2;S<z;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}if(x>>>=P,S-=P,0===r.have){e.msg="invalid bit length repeat",r.mode=m;break}L=r.lens[r.have-1],C=3+(3&x),x>>>=2,S-=2}else if(17===F){for(z=P+3;S<z;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}S-=P,L=0,C=3+(7&(x>>>=P)),x>>>=3,S-=3}else{for(z=P+7;S<z;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}S-=P,L=0,C=11+(127&(x>>>=P)),x>>>=7,S-=7}if(r.have+C>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=m;break}for(;C--;)r.lens[r.have++]=L}}if(r.mode===m)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=m;break}if(r.lenbits=9,B={bits:r.lenbits},j=s(c,r.lens,0,r.nlen,r.lencode,0,r.work,B),r.lenbits=B.bits,j){e.msg="invalid literal/lengths set",r.mode=m;break}if(r.distbits=6,r.distcode=r.distdyn,B={bits:r.distbits},j=s(l,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,B),r.distbits=B.bits,j){e.msg="invalid distances set",r.mode=m;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(b>=6&&k>=258){e.next_out=v,e.avail_out=k,e.next_in=y,e.avail_in=b,r.hold=x,r.bits=S,o(e,D),v=e.next_out,_=e.output,k=e.avail_out,y=e.next_in,g=e.input,b=e.avail_in,x=r.hold,S=r.bits,r.mode===f&&(r.back=-1);break}for(r.back=0;I=(U=r.lencode[x&(1<<r.lenbits)-1])>>>16&255,F=65535&U,!((P=U>>>24)<=S);){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}if(I&&!(240&I)){for(O=P,R=I,M=F;I=(U=r.lencode[M+((x&(1<<O+R)-1)>>O)])>>>16&255,F=65535&U,!(O+(P=U>>>24)<=S);){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}x>>>=O,S-=O,r.back+=O}if(x>>>=P,S-=P,r.back+=P,r.length=F,0===I){r.mode=26;break}if(32&I){r.back=-1,r.mode=f;break}if(64&I){e.msg="invalid literal/length code",r.mode=m;break}r.extra=15&I,r.mode=22;case 22:if(r.extra){for(z=r.extra;S<z;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}r.length+=x&(1<<r.extra)-1,x>>>=r.extra,S-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;I=(U=r.distcode[x&(1<<r.distbits)-1])>>>16&255,F=65535&U,!((P=U>>>24)<=S);){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}if(!(240&I)){for(O=P,R=I,M=F;I=(U=r.distcode[M+((x&(1<<O+R)-1)>>O)])>>>16&255,F=65535&U,!(O+(P=U>>>24)<=S);){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}x>>>=O,S-=O,r.back+=O}if(x>>>=P,S-=P,r.back+=P,64&I){e.msg="invalid distance code",r.mode=m;break}r.offset=F,r.extra=15&I,r.mode=24;case 24:if(r.extra){for(z=r.extra;S<z;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}r.offset+=x&(1<<r.extra)-1,x>>>=r.extra,S-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=m;break}r.mode=25;case 25:if(0===k)break e;if(C=D-k,r.offset>C){if((C=r.offset-C)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=m;break}C>r.wnext?(C-=r.wnext,A=r.wsize-C):A=r.wnext-C,C>r.length&&(C=r.length),N=r.window}else N=_,A=v-r.offset,C=r.length;C>k&&(C=k),k-=C,r.length-=C;do{_[v++]=N[A++]}while(--C);0===r.length&&(r.mode=21);break;case 26:if(0===k)break e;_[v++]=r.length,k--,r.mode=21;break;case 27:if(r.wrap){for(;S<32;){if(0===b)break e;b--,x|=g[y++]<<S,S+=8}if(D-=k,e.total_out+=D,r.total+=D,D&&(e.adler=r.check=r.flags?a(r.check,_,D,v-D):i(r.check,_,D,v-D)),D=k,(r.flags?x:h(x))!==r.check){e.msg="incorrect data check",r.mode=m;break}x=0,S=0}r.mode=28;case 28:if(r.wrap&&r.flags){for(;S<32;){if(0===b)break e;b--,x+=g[y++]<<S,S+=8}if(x!==(4294967295&r.total)){e.msg="incorrect length check",r.mode=m;break}x=0,S=0}r.mode=29;case 29:j=1;break e;case m:j=-3;break e;case 31:return-4;default:return d}return e.next_out=v,e.avail_out=k,e.next_in=y,e.avail_in=b,r.hold=x,r.bits=S,(r.wsize||D!==e.avail_out&&r.mode<m&&(r.mode<27||4!==t))&&T(e,e.output,e.next_out,D-e.avail_out)?(r.mode=31,-4):(w-=e.avail_in,D-=e.avail_out,e.total_in+=w,e.total_out+=D,r.total+=D,r.wrap&&D&&(e.adler=r.check=r.flags?a(r.check,_,D,e.next_out-D):i(r.check,_,D,e.next_out-D)),e.data_type=r.bits+(r.last?64:0)+(r.mode===f?128:0)+(20===r.mode||15===r.mode?256:0),(0===w&&0===D||4===t)&&j===u&&(j=-5),j)},t.inflateEnd=function(e){if(!e||!e.state)return d;var t=e.state;return t.window&&(t.window=null),e.state=null,u},t.inflateGetHeader=function(e,t){var r;return e&&e.state&&2&(r=e.state).wrap?(r.head=t,t.done=!1,u):d},t.inflateSetDictionary=function(e,t){var r,n=t.length;return e&&e.state?0!==(r=e.state).wrap&&11!==r.mode?d:11===r.mode&&i(1,t,n,0)!==r.check?-3:T(e,t,n,n)?(r.mode=31,-4):(r.havedict=1,u):d},t.inflateInfo="pako inflate (from Nodeca project)"},21998:(e,t,r)=>{"use strict";var n=r(9805),i=15,a=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],o=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],s=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],c=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];e.exports=function(e,t,r,l,u,d,p,f){var m,g,_,h,y,v,b,k,x,S=f.bits,w=0,D=0,E=0,T=0,C=0,A=0,N=0,P=0,I=0,F=0,O=null,R=0,M=new n.Buf16(16),L=new n.Buf16(16),j=null,B=0;for(w=0;w<=i;w++)M[w]=0;for(D=0;D<l;D++)M[t[r+D]]++;for(C=S,T=i;T>=1&&0===M[T];T--);if(C>T&&(C=T),0===T)return u[d++]=20971520,u[d++]=20971520,f.bits=1,0;for(E=1;E<T&&0===M[E];E++);for(C<E&&(C=E),P=1,w=1;w<=i;w++)if(P<<=1,(P-=M[w])<0)return-1;if(P>0&&(0===e||1!==T))return-1;for(L[1]=0,w=1;w<i;w++)L[w+1]=L[w]+M[w];for(D=0;D<l;D++)0!==t[r+D]&&(p[L[t[r+D]]++]=D);if(0===e?(O=j=p,v=19):1===e?(O=a,R-=257,j=o,B-=257,v=256):(O=s,j=c,v=-1),F=0,D=0,w=E,y=d,A=C,N=0,_=-1,h=(I=1<<C)-1,1===e&&I>852||2===e&&I>592)return 1;for(;;){b=w-N,p[D]<v?(k=0,x=p[D]):p[D]>v?(k=j[B+p[D]],x=O[R+p[D]]):(k=96,x=0),m=1<<w-N,E=g=1<<A;do{u[y+(F>>N)+(g-=m)]=b<<24|k<<16|x}while(0!==g);for(m=1<<w-1;F&m;)m>>=1;if(0!==m?(F&=m-1,F+=m):F=0,D++,0==--M[w]){if(w===T)break;w=t[r+p[D]]}if(w>C&&(F&h)!==_){for(0===N&&(N=C),y+=E,P=1<<(A=w-N);A+N<T&&!((P-=M[A+N])<=0);)A++,P<<=1;if(I+=1<<A,1===e&&I>852||2===e&&I>592)return 1;u[_=F&h]=C<<24|A<<16|y-d}}return 0!==F&&(u[y+F]=w-N<<24|64<<16),f.bits=C,0}},54674:e=>{"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},23665:(e,t,r)=>{"use strict";var n=r(9805),i=0,a=1;function o(e){for(var t=e.length;--t>=0;)e[t]=0}var s=0,c=29,l=256,u=l+1+c,d=30,p=19,f=2*u+1,m=15,g=16,_=7,h=256,y=16,v=17,b=18,k=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],x=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],S=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],w=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],D=new Array(2*(u+2));o(D);var E=new Array(2*d);o(E);var T=new Array(512);o(T);var C=new Array(256);o(C);var A=new Array(c);o(A);var N,P,I,F=new Array(d);function O(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}function R(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function M(e){return e<256?T[e]:T[256+(e>>>7)]}function L(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function j(e,t,r){e.bi_valid>g-r?(e.bi_buf|=t<<e.bi_valid&65535,L(e,e.bi_buf),e.bi_buf=t>>g-e.bi_valid,e.bi_valid+=r-g):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)}function B(e,t,r){j(e,r[2*t],r[2*t+1])}function z(e,t){var r=0;do{r|=1&e,e>>>=1,r<<=1}while(--t>0);return r>>>1}function U(e,t,r){var n,i,a=new Array(m+1),o=0;for(n=1;n<=m;n++)a[n]=o=o+r[n-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];0!==s&&(e[2*i]=z(a[s]++,s))}}function q(e){var t;for(t=0;t<u;t++)e.dyn_ltree[2*t]=0;for(t=0;t<d;t++)e.dyn_dtree[2*t]=0;for(t=0;t<p;t++)e.bl_tree[2*t]=0;e.dyn_ltree[2*h]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function J(e){e.bi_valid>8?L(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function V(e,t,r,n){var i=2*t,a=2*r;return e[i]<e[a]||e[i]===e[a]&&n[t]<=n[r]}function H(e,t,r){for(var n=e.heap[r],i=r<<1;i<=e.heap_len&&(i<e.heap_len&&V(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!V(t,n,e.heap[i],e.depth));)e.heap[r]=e.heap[i],r=i,i<<=1;e.heap[r]=n}function K(e,t,r){var n,i,a,o,s=0;if(0!==e.last_lit)do{n=e.pending_buf[e.d_buf+2*s]<<8|e.pending_buf[e.d_buf+2*s+1],i=e.pending_buf[e.l_buf+s],s++,0===n?B(e,i,t):(B(e,(a=C[i])+l+1,t),0!==(o=k[a])&&j(e,i-=A[a],o),B(e,a=M(--n),r),0!==(o=x[a])&&j(e,n-=F[a],o))}while(s<e.last_lit);B(e,h,t)}function W(e,t){var r,n,i,a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.has_stree,c=t.stat_desc.elems,l=-1;for(e.heap_len=0,e.heap_max=f,r=0;r<c;r++)0!==a[2*r]?(e.heap[++e.heap_len]=l=r,e.depth[r]=0):a[2*r+1]=0;for(;e.heap_len<2;)a[2*(i=e.heap[++e.heap_len]=l<2?++l:0)]=1,e.depth[i]=0,e.opt_len--,s&&(e.static_len-=o[2*i+1]);for(t.max_code=l,r=e.heap_len>>1;r>=1;r--)H(e,a,r);i=c;do{r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],H(e,a,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,a[2*i]=a[2*r]+a[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,a[2*r+1]=a[2*n+1]=i,e.heap[1]=i++,H(e,a,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,a,o,s,c=t.dyn_tree,l=t.max_code,u=t.stat_desc.static_tree,d=t.stat_desc.has_stree,p=t.stat_desc.extra_bits,g=t.stat_desc.extra_base,_=t.stat_desc.max_length,h=0;for(a=0;a<=m;a++)e.bl_count[a]=0;for(c[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<f;r++)(a=c[2*c[2*(n=e.heap[r])+1]+1]+1)>_&&(a=_,h++),c[2*n+1]=a,n>l||(e.bl_count[a]++,o=0,n>=g&&(o=p[n-g]),s=c[2*n],e.opt_len+=s*(a+o),d&&(e.static_len+=s*(u[2*n+1]+o)));if(0!==h){do{for(a=_-1;0===e.bl_count[a];)a--;e.bl_count[a]--,e.bl_count[a+1]+=2,e.bl_count[_]--,h-=2}while(h>0);for(a=_;0!==a;a--)for(n=e.bl_count[a];0!==n;)(i=e.heap[--r])>l||(c[2*i+1]!==a&&(e.opt_len+=(a-c[2*i+1])*c[2*i],c[2*i+1]=a),n--)}}(e,t),U(a,l,e.bl_count)}function G(e,t,r){var n,i,a=-1,o=t[1],s=0,c=7,l=4;for(0===o&&(c=138,l=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=o,o=t[2*(n+1)+1],++s<c&&i===o||(s<l?e.bl_tree[2*i]+=s:0!==i?(i!==a&&e.bl_tree[2*i]++,e.bl_tree[2*y]++):s<=10?e.bl_tree[2*v]++:e.bl_tree[2*b]++,s=0,a=i,0===o?(c=138,l=3):i===o?(c=6,l=3):(c=7,l=4))}function $(e,t,r){var n,i,a=-1,o=t[1],s=0,c=7,l=4;for(0===o&&(c=138,l=3),n=0;n<=r;n++)if(i=o,o=t[2*(n+1)+1],!(++s<c&&i===o)){if(s<l)do{B(e,i,e.bl_tree)}while(0!=--s);else 0!==i?(i!==a&&(B(e,i,e.bl_tree),s--),B(e,y,e.bl_tree),j(e,s-3,2)):s<=10?(B(e,v,e.bl_tree),j(e,s-3,3)):(B(e,b,e.bl_tree),j(e,s-11,7));s=0,a=i,0===o?(c=138,l=3):i===o?(c=6,l=3):(c=7,l=4)}}o(F);var Y=!1;function X(e,t,r,i){j(e,(s<<1)+(i?1:0),3),function(e,t,r,i){J(e),i&&(L(e,r),L(e,~r)),n.arraySet(e.pending_buf,e.window,t,r,e.pending),e.pending+=r}(e,t,r,!0)}t._tr_init=function(e){Y||(!function(){var e,t,r,n,i,a=new Array(m+1);for(r=0,n=0;n<c-1;n++)for(A[n]=r,e=0;e<1<<k[n];e++)C[r++]=n;for(C[r-1]=n,i=0,n=0;n<16;n++)for(F[n]=i,e=0;e<1<<x[n];e++)T[i++]=n;for(i>>=7;n<d;n++)for(F[n]=i<<7,e=0;e<1<<x[n]-7;e++)T[256+i++]=n;for(t=0;t<=m;t++)a[t]=0;for(e=0;e<=143;)D[2*e+1]=8,e++,a[8]++;for(;e<=255;)D[2*e+1]=9,e++,a[9]++;for(;e<=279;)D[2*e+1]=7,e++,a[7]++;for(;e<=287;)D[2*e+1]=8,e++,a[8]++;for(U(D,u+1,a),e=0;e<d;e++)E[2*e+1]=5,E[2*e]=z(e,5);N=new O(D,k,l+1,u,m),P=new O(E,x,0,d,m),I=new O(new Array(0),S,0,p,_)}(),Y=!0),e.l_desc=new R(e.dyn_ltree,N),e.d_desc=new R(e.dyn_dtree,P),e.bl_desc=new R(e.bl_tree,I),e.bi_buf=0,e.bi_valid=0,q(e)},t._tr_stored_block=X,t._tr_flush_block=function(e,t,r,n){var o,s,c=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return i;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return a;for(t=32;t<l;t++)if(0!==e.dyn_ltree[2*t])return a;return i}(e)),W(e,e.l_desc),W(e,e.d_desc),c=function(e){var t;for(G(e,e.dyn_ltree,e.l_desc.max_code),G(e,e.dyn_dtree,e.d_desc.max_code),W(e,e.bl_desc),t=p-1;t>=3&&0===e.bl_tree[2*w[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),o=e.opt_len+3+7>>>3,(s=e.static_len+3+7>>>3)<=o&&(o=s)):o=s=r+5,r+4<=o&&-1!==t?X(e,t,r,n):4===e.strategy||s===o?(j(e,2+(n?1:0),3),K(e,D,E)):(j(e,4+(n?1:0),3),function(e,t,r,n){var i;for(j(e,t-257,5),j(e,r-1,5),j(e,n-4,4),i=0;i<n;i++)j(e,e.bl_tree[2*w[i]+1],3);$(e,e.dyn_ltree,t-1),$(e,e.dyn_dtree,r-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,c+1),K(e,e.dyn_ltree,e.dyn_dtree)),q(e),n&&J(e)},t._tr_tally=function(e,t,r){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(C[r]+l+1)]++,e.dyn_dtree[2*M(t)]++),e.last_lit===e.lit_bufsize-1},t._tr_align=function(e){j(e,2,3),B(e,h,D),function(e){16===e.bi_valid?(L(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},44442:e=>{"use strict";e.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},52641:e=>{"use strict";function t(e){return"/"===e.charAt(0)}function r(e){var t=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/.exec(e),r=t[1]||"",n=Boolean(r&&":"!==r.charAt(1));return Boolean(t[2]||n)}e.exports="win32"===process.platform?r:t,e.exports.posix=t,e.exports.win32=r},33225:e=>{"use strict";"undefined"==typeof process||!process.version||0===process.version.indexOf("v0.")||0===process.version.indexOf("v1.")&&0!==process.version.indexOf("v1.8.")?e.exports={nextTick:function(e,t,r,n){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var i,a,o=arguments.length;switch(o){case 0:case 1:return process.nextTick(e);case 2:return process.nextTick((function(){e.call(null,t)}));case 3:return process.nextTick((function(){e.call(null,t,r)}));case 4:return process.nextTick((function(){e.call(null,t,r,n)}));default:for(i=new Array(o-1),a=0;a<i.length;)i[a++]=arguments[a];return process.nextTick((function(){e.apply(null,i)}))}}}:e.exports=process},30113:e=>{"use strict";const t={};function r(e,r,n){n||(n=Error);class i extends n{constructor(e,t,n){super(function(e,t,n){return"string"==typeof r?r:r(e,t,n)}(e,t,n))}}i.prototype.name=n.name,i.prototype.code=e,t[e]=i}function n(e,t){if(Array.isArray(e)){const r=e.length;return e=e.map((e=>String(e))),r>2?`one of ${t} ${e.slice(0,r-1).join(", ")}, or `+e[r-1]:2===r?`one of ${t} ${e[0]} or ${e[1]}`:`of ${t} ${e[0]}`}return`of ${t} ${String(e)}`}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){let i;var a,o;let s;if("string"==typeof t&&(a="not ",t.substr(!o||o<0?0:+o,a.length)===a)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))s=`The ${e} ${i} ${n(t,"type")}`;else{const r=function(e,t,r){return"number"!=typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";s=`The "${e}" ${r} ${i} ${n(t,"type")}`}return s+=". Received type "+typeof r,s}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.F=t},25382:(e,t,r)=>{"use strict";var n=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=l;var i=r(45412),a=r(16708);r(72017)(l,i);for(var o=n(a.prototype),s=0;s<o.length;s++){var c=o[s];l.prototype[c]||(l.prototype[c]=a.prototype[c])}function l(e){if(!(this instanceof l))return new l(e);i.call(this,e),a.call(this,e),this.allowHalfOpen=!0,e&&(!1===e.readable&&(this.readable=!1),!1===e.writable&&(this.writable=!1),!1===e.allowHalfOpen&&(this.allowHalfOpen=!1,this.once("end",u)))}function u(){this._writableState.ended||process.nextTick(d,this)}function d(e){e.end()}Object.defineProperty(l.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(l.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(l.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(l.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}})},63600:(e,t,r)=>{"use strict";e.exports=i;var n=r(74610);function i(e){if(!(this instanceof i))return new i(e);n.call(this,e)}r(72017)(i,n),i.prototype._transform=function(e,t,r){r(null,e)}},45412:(e,t,r)=>{"use strict";var n;e.exports=w,w.ReadableState=S;r(24434).EventEmitter;var i=function(e,t){return e.listeners(t).length},a=r(81416),o=r(20181).Buffer,s=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var c,l=r(39023);c=l&&l.debuglog?l.debuglog("stream"):function(){};var u,d,p,f=r(80345),m=r(75896),g=r(65291).getHighWaterMark,_=r(30113).F,h=_.ERR_INVALID_ARG_TYPE,y=_.ERR_STREAM_PUSH_AFTER_EOF,v=_.ERR_METHOD_NOT_IMPLEMENTED,b=_.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(72017)(w,a);var k=m.errorOrDestroy,x=["error","close","destroy","pause","resume"];function S(e,t,i){n=n||r(25382),e=e||{},"boolean"!=typeof i&&(i=t instanceof n),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=g(this,e,"readableHighWaterMark",i),this.buffer=new f,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(u||(u=r(83141).I),this.decoder=new u(e.encoding),this.encoding=e.encoding)}function w(e){if(n=n||r(25382),!(this instanceof w))return new w(e);var t=this instanceof n;this._readableState=new S(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),a.call(this)}function D(e,t,r,n,i){c("readableAddChunk",t);var a,l=e._readableState;if(null===t)l.reading=!1,function(e,t){if(c("onEofChunk"),t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?A(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,N(e)))}(e,l);else if(i||(a=function(e,t){var r;n=t,o.isBuffer(n)||n instanceof s||"string"==typeof t||void 0===t||e.objectMode||(r=new h("chunk",["string","Buffer","Uint8Array"],t));var n;return r}(l,t)),a)k(e,a);else if(l.objectMode||t&&t.length>0)if("string"==typeof t||l.objectMode||Object.getPrototypeOf(t)===o.prototype||(t=function(e){return o.from(e)}(t)),n)l.endEmitted?k(e,new b):E(e,l,t,!0);else if(l.ended)k(e,new y);else{if(l.destroyed)return!1;l.reading=!1,l.decoder&&!r?(t=l.decoder.write(t),l.objectMode||0!==t.length?E(e,l,t,!1):P(e,l)):E(e,l,t,!1)}else n||(l.reading=!1,P(e,l));return!l.ended&&(l.length<l.highWaterMark||0===l.length)}function E(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(t.awaitDrain=0,e.emit("data",r)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&A(e)),P(e,t)}Object.defineProperty(w.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),w.prototype.destroy=m.destroy,w.prototype._undestroy=m.undestroy,w.prototype._destroy=function(e,t){t(e)},w.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=o.from(e,t),t=""),r=!0),D(this,e,t,!1,r)},w.prototype.unshift=function(e){return D(this,e,null,!0,!1)},w.prototype.isPaused=function(){return!1===this._readableState.flowing},w.prototype.setEncoding=function(e){u||(u=r(83141).I);var t=new u(e);this._readableState.decoder=t,this._readableState.encoding=this._readableState.decoder.encoding;for(var n=this._readableState.buffer.head,i="";null!==n;)i+=t.write(n.data),n=n.next;return this._readableState.buffer.clear(),""!==i&&this._readableState.buffer.push(i),this._readableState.length=i.length,this};var T=1073741824;function C(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=T?e=T:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function A(e){var t=e._readableState;c("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(c("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(N,e))}function N(e){var t=e._readableState;c("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,M(e)}function P(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length<t.highWaterMark||t.flowing&&0===t.length);){var r=t.length;if(c("maybeReadMore read 0"),e.read(0),r===t.length)break}t.readingMore=!1}function F(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function O(e){c("readable nexttick read 0"),e.read(0)}function R(e,t){c("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),M(e),t.flowing&&!t.reading&&e.read(0)}function M(e){var t=e._readableState;for(c("flow",t.flowing);t.flowing&&null!==e.read(););}function L(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function j(e){var t=e._readableState;c("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(B,t,e))}function B(e,t){if(c("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function z(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}w.prototype.read=function(e){c("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&((0!==t.highWaterMark?t.length>=t.highWaterMark:t.length>0)||t.ended))return c("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?j(this):A(this),null;if(0===(e=C(e,t))&&t.ended)return 0===t.length&&j(this),null;var n,i=t.needReadable;return c("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&c("length less than watermark",i=!0),t.ended||t.reading?c("reading or ended",i=!1):i&&(c("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=C(r,t))),null===(n=e>0?L(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&j(this)),null!==n&&this.emit("data",n),n},w.prototype._read=function(e){k(this,new v("_read()"))},w.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,c("pipe count=%d opts=%j",n.pipesCount,t);var a=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?s:g;function o(t,i){c("onunpipe"),t===r&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,c("cleanup"),e.removeListener("close",f),e.removeListener("finish",m),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",o),r.removeListener("end",s),r.removeListener("end",g),r.removeListener("data",d),u=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function s(){c("onend"),e.end()}n.endEmitted?process.nextTick(a):r.once("end",a),e.on("unpipe",o);var l=function(e){return function(){var t=e._readableState;c("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&i(e,"data")&&(t.flowing=!0,M(e))}}(r);e.on("drain",l);var u=!1;function d(t){c("ondata");var i=e.write(t);c("dest.write",i),!1===i&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==z(n.pipes,e))&&!u&&(c("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function p(t){c("onerror",t),g(),e.removeListener("error",p),0===i(e,"error")&&k(e,t)}function f(){e.removeListener("finish",m),g()}function m(){c("onfinish"),e.removeListener("close",f),g()}function g(){c("unpipe"),r.unpipe(e)}return r.on("data",d),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",p),e.once("close",f),e.once("finish",m),e.emit("pipe",r),n.flowing||(c("pipe resume"),r.resume()),e},w.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=z(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},w.prototype.on=function(e,t){var r=a.prototype.on.call(this,e,t),n=this._readableState;return"data"===e?(n.readableListening=this.listenerCount("readable")>0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,c("on readable",n.length,n.reading),n.length?A(this):n.reading||process.nextTick(O,this))),r},w.prototype.addListener=w.prototype.on,w.prototype.removeListener=function(e,t){var r=a.prototype.removeListener.call(this,e,t);return"readable"===e&&process.nextTick(F,this),r},w.prototype.removeAllListeners=function(e){var t=a.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||process.nextTick(F,this),t},w.prototype.resume=function(){var e=this._readableState;return e.flowing||(c("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(R,e,t))}(this,e)),e.paused=!1,this},w.prototype.pause=function(){return c("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(c("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},w.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(c("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(c("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<x.length;a++)e.on(x[a],this.emit.bind(this,x[a]));return this._read=function(t){c("wrapped _read",t),n&&(n=!1,e.resume())},this},"function"==typeof Symbol&&(w.prototype[Symbol.asyncIterator]=function(){return void 0===d&&(d=r(2955)),d(this)}),Object.defineProperty(w.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(w.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(w.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(e){this._readableState&&(this._readableState.flowing=e)}}),w._fromList=L,Object.defineProperty(w.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}}),"function"==typeof Symbol&&(w.from=function(e,t){return void 0===p&&(p=r(96532)),p(w,e,t)})},74610:(e,t,r)=>{"use strict";e.exports=u;var n=r(30113).F,i=n.ERR_METHOD_NOT_IMPLEMENTED,a=n.ERR_MULTIPLE_CALLBACK,o=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,c=r(25382);function l(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new a);r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function u(e){if(!(this instanceof u))return new u(e);c.call(this,e),this._transformState={afterTransform:l.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",d)}function d(){var e=this;"function"!=typeof this._flush||this._readableState.destroyed?p(this,null,null):this._flush((function(t,r){p(e,t,r)}))}function p(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new s;if(e._transformState.transforming)throw new o;return e.push(null)}r(72017)(u,c),u.prototype.push=function(e,t){return this._transformState.needTransform=!1,c.prototype.push.call(this,e,t)},u.prototype._transform=function(e,t,r){r(new i("_transform()"))},u.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},u.prototype._read=function(e){var t=this._transformState;null===t.writechunk||t.transforming?t.needTransform=!0:(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform))},u.prototype._destroy=function(e,t){c.prototype._destroy.call(this,e,(function(e){t(e)}))}},16708:(e,t,r)=>{"use strict";function n(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}var i;e.exports=w,w.WritableState=S;var a={deprecate:r(27983)},o=r(81416),s=r(20181).Buffer,c=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var l,u=r(75896),d=r(65291).getHighWaterMark,p=r(30113).F,f=p.ERR_INVALID_ARG_TYPE,m=p.ERR_METHOD_NOT_IMPLEMENTED,g=p.ERR_MULTIPLE_CALLBACK,_=p.ERR_STREAM_CANNOT_PIPE,h=p.ERR_STREAM_DESTROYED,y=p.ERR_STREAM_NULL_VALUES,v=p.ERR_STREAM_WRITE_AFTER_END,b=p.ERR_UNKNOWN_ENCODING,k=u.errorOrDestroy;function x(){}function S(e,t,a){i=i||r(25382),e=e||{},"boolean"!=typeof a&&(a=t instanceof i),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=d(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var o=!1===e.decodeStrings;this.decodeStrings=!o,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if("function"!=typeof i)throw new g;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,i){--t.pendingcb,r?(process.nextTick(i,n),process.nextTick(N,e,t),e._writableState.errorEmitted=!0,k(e,n)):(i(n),e._writableState.errorEmitted=!0,k(e,n),N(e,t))}(e,r,n,t,i);else{var a=C(r)||e.destroyed;a||r.corked||r.bufferProcessing||!r.bufferedRequest||T(e,r),n?process.nextTick(E,e,r,a,i):E(e,r,a,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new n(this)}function w(e){var t=this instanceof(i=i||r(25382));if(!t&&!l.call(w,this))return new w(e);this._writableState=new S(e,this,t),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),o.call(this)}function D(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new h("write")):r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function E(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),N(e,t)}function T(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var i=t.bufferedRequestCount,a=new Array(i),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,D(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new n(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(D(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function C(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function A(e,t){e._final((function(r){t.pendingcb--,r&&k(e,r),t.prefinished=!0,e.emit("prefinish"),N(e,t)}))}function N(e,t){var r=C(t);if(r&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,process.nextTick(A,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var n=e._readableState;(!n||n.autoDestroy&&n.endEmitted)&&e.destroy()}return r}r(72017)(w,o),S.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(S.prototype,"buffer",{get:a.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(l=Function.prototype[Symbol.hasInstance],Object.defineProperty(w,Symbol.hasInstance,{value:function(e){return!!l.call(this,e)||this===w&&(e&&e._writableState instanceof S)}})):l=function(e){return e instanceof this},w.prototype.pipe=function(){k(this,new _)},w.prototype.write=function(e,t,r){var n,i=this._writableState,a=!1,o=!i.objectMode&&(n=e,s.isBuffer(n)||n instanceof c);return o&&!s.isBuffer(e)&&(e=function(e){return s.from(e)}(e)),"function"==typeof t&&(r=t,t=null),o?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof r&&(r=x),i.ending?function(e,t){var r=new v;k(e,r),process.nextTick(t,r)}(this,r):(o||function(e,t,r,n){var i;return null===r?i=new y:"string"==typeof r||t.objectMode||(i=new f("chunk",["string","Buffer"],r)),!i||(k(e,i),process.nextTick(n,i),!1)}(this,i,e,r))&&(i.pendingcb++,a=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=s.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var c=t.objectMode?1:n.length;t.length+=c;var l=t.length<t.highWaterMark;l||(t.needDrain=!0);if(t.writing||t.corked){var u=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},u?u.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else D(e,t,!1,c,n,i,a);return l}(this,i,o,e,t,r)),a},w.prototype.cork=function(){this._writableState.corked++},w.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||T(this,e))},w.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new b(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(w.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(w.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),w.prototype._write=function(e,t,r){r(new m("_write()"))},w.prototype._writev=null,w.prototype.end=function(e,t,r){var n=this._writableState;return"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,N(e,t),r&&(t.finished?process.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r),this},Object.defineProperty(w.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(w.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),w.prototype.destroy=u.destroy,w.prototype._undestroy=u.undestroy,w.prototype._destroy=function(e,t){t(e)}},2955:(e,t,r)=>{"use strict";var n;function i(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var a=r(86238),o=Symbol("lastResolve"),s=Symbol("lastReject"),c=Symbol("error"),l=Symbol("ended"),u=Symbol("lastPromise"),d=Symbol("handlePromise"),p=Symbol("stream");function f(e,t){return{value:e,done:t}}function m(e){var t=e[o];if(null!==t){var r=e[p].read();null!==r&&(e[u]=null,e[o]=null,e[s]=null,t(f(r,!1)))}}function g(e){process.nextTick(m,e)}var _=Object.getPrototypeOf((function(){})),h=Object.setPrototypeOf((i(n={get stream(){return this[p]},next:function(){var e=this,t=this[c];if(null!==t)return Promise.reject(t);if(this[l])return Promise.resolve(f(void 0,!0));if(this[p].destroyed)return new Promise((function(t,r){process.nextTick((function(){e[c]?r(e[c]):t(f(void 0,!0))}))}));var r,n=this[u];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[l]?r(f(void 0,!0)):t[d](r,n)}),n)}}(n,this));else{var i=this[p].read();if(null!==i)return Promise.resolve(f(i,!1));r=new Promise(this[d])}return this[u]=r,r}},Symbol.asyncIterator,(function(){return this})),i(n,"return",(function(){var e=this;return new Promise((function(t,r){e[p].destroy(null,(function(e){e?r(e):t(f(void 0,!0))}))}))})),n),_);e.exports=function(e){var t,r=Object.create(h,(i(t={},p,{value:e,writable:!0}),i(t,o,{value:null,writable:!0}),i(t,s,{value:null,writable:!0}),i(t,c,{value:null,writable:!0}),i(t,l,{value:e._readableState.endEmitted,writable:!0}),i(t,d,{value:function(e,t){var n=r[p].read();n?(r[u]=null,r[o]=null,r[s]=null,e(f(n,!1))):(r[o]=e,r[s]=t)},writable:!0}),t));return r[u]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[s];return null!==t&&(r[u]=null,r[o]=null,r[s]=null,t(e)),void(r[c]=e)}var n=r[o];null!==n&&(r[u]=null,r[o]=null,r[s]=null,n(f(void 0,!0))),r[l]=!0})),e.on("readable",g.bind(null,r)),r}},80345:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function a(e,t,r){return(t=s(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,s(n.key),n)}}function s(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}var c=r(20181).Buffer,l=r(39023).inspect,u=l&&l.custom||"inspect";e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}var t,r,n;return t=e,(r=[{key:"push",value:function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return c.alloc(0);for(var t,r,n,i=c.allocUnsafe(e>>>0),a=this.head,o=0;a;)t=a.data,r=i,n=o,c.prototype.copy.call(t,r,n),o+=a.data.length,a=a.next;return i}},{key:"consume",value:function(e,t){var r;return e<this.head.data.length?(r=this.head.data.slice(0,e),this.head.data=this.head.data.slice(e)):r=e===this.head.data.length?this.shift():t?this._getString(e):this._getBuffer(e),r}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(e){var t=this.head,r=1,n=t.data;for(e-=n.length;t=t.next;){var i=t.data,a=e>i.length?i.length:e;if(a===i.length?n+=i:n+=i.slice(0,e),0==(e-=a)){a===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(a));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=c.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,a),0==(e-=a)){a===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(a));break}++n}return this.length-=n,t}},{key:u,value:function(e,t){return l(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&o(t.prototype,r),n&&o(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}()},75896:e=>{"use strict";function t(e,t){n(e,t),r(e)}function r(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function n(e,t){e.emit("error",t)}e.exports={destroy:function(e,i){var a=this,o=this._readableState&&this._readableState.destroyed,s=this._writableState&&this._writableState.destroyed;return o||s?(i?i(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(n,this,e)):process.nextTick(n,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!i&&e?a._writableState?a._writableState.errorEmitted?process.nextTick(r,a):(a._writableState.errorEmitted=!0,process.nextTick(t,a,e)):process.nextTick(t,a,e):i?(process.nextTick(r,a),i(e)):process.nextTick(r,a)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}}},86238:(e,t,r)=>{"use strict";var n=r(30113).F.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,r,a){if("function"==typeof r)return e(t,null,r);r||(r={}),a=function(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];e.apply(this,n)}}}(a||i);var o=r.readable||!1!==r.readable&&t.readable,s=r.writable||!1!==r.writable&&t.writable,c=function(){t.writable||u()},l=t._writableState&&t._writableState.finished,u=function(){s=!1,l=!0,o||a.call(t)},d=t._readableState&&t._readableState.endEmitted,p=function(){o=!1,d=!0,s||a.call(t)},f=function(e){a.call(t,e)},m=function(){var e;return o&&!d?(t._readableState&&t._readableState.ended||(e=new n),a.call(t,e)):s&&!l?(t._writableState&&t._writableState.ended||(e=new n),a.call(t,e)):void 0},g=function(){t.req.on("finish",u)};return!function(e){return e.setHeader&&"function"==typeof e.abort}(t)?s&&!t._writableState&&(t.on("end",c),t.on("close",c)):(t.on("complete",u),t.on("abort",m),t.req?g():t.on("request",g)),t.on("end",p),t.on("finish",u),!1!==r.error&&t.on("error",f),t.on("close",m),function(){t.removeListener("complete",u),t.removeListener("abort",m),t.removeListener("request",g),t.req&&t.req.removeListener("finish",u),t.removeListener("end",c),t.removeListener("close",c),t.removeListener("finish",u),t.removeListener("end",p),t.removeListener("error",f),t.removeListener("close",m)}}},96532:(e,t,r)=>{"use strict";function n(e,t,r,n,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void r(e)}s.done?t(c):Promise.resolve(c).then(n,i)}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var o=r(30113).F.ERR_INVALID_ARG_TYPE;e.exports=function(e,t,r){var s;if(t&&"function"==typeof t.next)s=t;else if(t&&t[Symbol.asyncIterator])s=t[Symbol.asyncIterator]();else{if(!t||!t[Symbol.iterator])throw new o("iterable",["Iterable"],t);s=t[Symbol.iterator]()}var c=new e(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({objectMode:!0},r)),l=!1;function u(){return d.apply(this,arguments)}function d(){var e;return e=function*(){try{var e=yield s.next(),t=e.value;e.done?c.push(null):c.push(yield t)?u():l=!1}catch(e){c.destroy(e)}},d=function(){var t=this,r=arguments;return new Promise((function(i,a){var o=e.apply(t,r);function s(e){n(o,i,a,s,c,"next",e)}function c(e){n(o,i,a,s,c,"throw",e)}s(void 0)}))},d.apply(this,arguments)}return c._read=function(){l||(l=!0,u())},c}},57758:(e,t,r)=>{"use strict";var n;var i=r(30113).F,a=i.ERR_MISSING_ARGS,o=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function c(e){e()}function l(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];var u,d=function(e){return e.length?"function"!=typeof e[e.length-1]?s:e.pop():s}(t);if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new a("streams");var p=t.map((function(e,i){var a=i<t.length-1;return function(e,t,i,a){a=function(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}(a);var s=!1;e.on("close",(function(){s=!0})),void 0===n&&(n=r(86238)),n(e,{readable:t,writable:i},(function(e){if(e)return a(e);s=!0,a()}));var c=!1;return function(t){if(!s&&!c)return c=!0,function(e){return e.setHeader&&"function"==typeof e.abort}(e)?e.abort():"function"==typeof e.destroy?e.destroy():void a(t||new o("pipe"))}}(e,a,i>0,(function(e){u||(u=e),e&&p.forEach(c),a||(p.forEach(c),d(u))}))}));return t.reduce(l)}},65291:(e,t,r)=>{"use strict";var n=r(30113).F.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var a=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=a){if(!isFinite(a)||Math.floor(a)!==a||a<0)throw new n(i?r:"highWaterMark",a);return Math.floor(a)}return e.objectMode?16:16384}}},81416:(e,t,r)=>{e.exports=r(2203)},34198:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n.Readable,Object.assign(e.exports,n),e.exports.Stream=n):((t=e.exports=r(45412)).Stream=n||t,t.Readable=t,t.Writable=r(16708),t.Duplex=r(25382),t.Transform=r(74610),t.PassThrough=r(63600),t.finished=r(86238),t.pipeline=r(57758))},76965:(e,t,r)=>{e.exports=u;const n=r(79896),{EventEmitter:i}=r(24434),{Minimatch:a}=r(25835),{resolve:o}=r(16928);function s(e,t){return new Promise(((r,i)=>{(t?n.stat:n.lstat)(e,((n,i)=>{if(n)if("ENOENT"===n.code)r(t?s(e,!1):null);else r(null);else r(i)}))}))}async function*c(e,t,r,i,a,o){let l=await function(e,t){return new Promise(((r,i)=>{n.readdir(e,{withFileTypes:!0},((e,n)=>{if(e)switch(e.code){case"ENOTDIR":t?i(e):r([]);break;case"ENOTSUP":case"ENOENT":case"ENAMETOOLONG":case"UNKNOWN":r([]);break;default:i(e)}else r(n)}))}))}(t+e,o);for(const n of l){let o=n.name;void 0===o&&(o=n,i=!0);const l=e+"/"+o,u=l.slice(1),d=t+"/"+u;let p=null;(i||r)&&(p=await s(d,r)),p||void 0===n.name||(p=n),null===p&&(p={isDirectory:()=>!1}),p.isDirectory()?a(u)||(yield{relative:u,absolute:d,stats:p},yield*c(l,t,r,i,a,!1)):yield{relative:u,absolute:d,stats:p}}}class l extends i{constructor(e,t,r){if(super(),"function"==typeof t&&(r=t,t=null),this.options=function(e){return{pattern:e.pattern,dot:!!e.dot,noglobstar:!!e.noglobstar,matchBase:!!e.matchBase,nocase:!!e.nocase,ignore:e.ignore,skip:e.skip,follow:!!e.follow,stat:!!e.stat,nodir:!!e.nodir,mark:!!e.mark,silent:!!e.silent,absolute:!!e.absolute}}(t||{}),this.matchers=[],this.options.pattern){const e=Array.isArray(this.options.pattern)?this.options.pattern:[this.options.pattern];this.matchers=e.map((e=>new a(e,{dot:this.options.dot,noglobstar:this.options.noglobstar,matchBase:this.options.matchBase,nocase:this.options.nocase})))}if(this.ignoreMatchers=[],this.options.ignore){const e=Array.isArray(this.options.ignore)?this.options.ignore:[this.options.ignore];this.ignoreMatchers=e.map((e=>new a(e,{dot:!0})))}if(this.skipMatchers=[],this.options.skip){const e=Array.isArray(this.options.skip)?this.options.skip:[this.options.skip];this.skipMatchers=e.map((e=>new a(e,{dot:!0})))}this.iterator=async function*(e,t,r,n){yield*c("",e,t,r,n,!0)}(o(e||"."),this.options.follow,this.options.stat,this._shouldSkipDirectory.bind(this)),this.paused=!1,this.inactive=!1,this.aborted=!1,r&&(this._matches=[],this.on("match",(e=>this._matches.push(this.options.absolute?e.absolute:e.relative))),this.on("error",(e=>r(e))),this.on("end",(()=>r(null,this._matches)))),setTimeout((()=>this._next()),0)}_shouldSkipDirectory(e){return this.skipMatchers.some((t=>t.match(e)))}_fileMatches(e,t){const r=e+(t?"/":"");return(0===this.matchers.length||this.matchers.some((e=>e.match(r))))&&!this.ignoreMatchers.some((e=>e.match(r)))&&(!this.options.nodir||!t)}_next(){this.paused||this.aborted?this.inactive=!0:this.iterator.next().then((e=>{if(e.done)this.emit("end");else{const t=e.value.stats.isDirectory();if(this._fileMatches(e.value.relative,t)){let r=e.value.relative,n=e.value.absolute;this.options.mark&&t&&(r+="/",n+="/"),this.options.stat?this.emit("match",{relative:r,absolute:n,stat:e.value.stats}):this.emit("match",{relative:r,absolute:n})}this._next(this.iterator)}})).catch((e=>{this.abort(),this.emit("error",e),e.code||this.options.silent||console.error(e)}))}abort(){this.aborted=!0}pause(){this.paused=!0}resume(){this.paused=!1,this.inactive&&(this.inactive=!1,this._next())}}function u(e,t,r){return new l(e,t,r)}u.ReaddirGlob=l},84928:(e,t,r)=>{var n=r(8505);e.exports=function(e){if(!e)return[];"{}"===e.substr(0,2)&&(e="\\{\\}"+e.substr(2));return _(function(e){return e.split("\\\\").join(i).split("\\{").join(a).split("\\}").join(o).split("\\,").join(s).split("\\.").join(c)}(e),!0).map(u)};var i="\0SLASH"+Math.random()+"\0",a="\0OPEN"+Math.random()+"\0",o="\0CLOSE"+Math.random()+"\0",s="\0COMMA"+Math.random()+"\0",c="\0PERIOD"+Math.random()+"\0";function l(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function u(e){return e.split(i).join("\\").split(a).join("{").split(o).join("}").split(s).join(",").split(c).join(".")}function d(e){if(!e)return[""];var t=[],r=n("{","}",e);if(!r)return e.split(",");var i=r.pre,a=r.body,o=r.post,s=i.split(",");s[s.length-1]+="{"+a+"}";var c=d(o);return o.length&&(s[s.length-1]+=c.shift(),s.push.apply(s,c)),t.push.apply(t,s),t}function p(e){return"{"+e+"}"}function f(e){return/^-?0\d/.test(e)}function m(e,t){return e<=t}function g(e,t){return e>=t}function _(e,t){var r=[],i=n("{","}",e);if(!i)return[e];var a=i.pre,s=i.post.length?_(i.post,!1):[""];if(/\$$/.test(i.pre))for(var c=0;c<s.length;c++){var u=a+"{"+i.body+"}"+s[c];r.push(u)}else{var h,y,v=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(i.body),b=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(i.body),k=v||b,x=i.body.indexOf(",")>=0;if(!k&&!x)return i.post.match(/,.*\}/)?_(e=i.pre+"{"+i.body+o+i.post):[e];if(k)h=i.body.split(/\.\./);else if(1===(h=d(i.body)).length&&1===(h=_(h[0],!1).map(p)).length)return s.map((function(e){return i.pre+h[0]+e}));if(k){var S=l(h[0]),w=l(h[1]),D=Math.max(h[0].length,h[1].length),E=3==h.length?Math.abs(l(h[2])):1,T=m;w<S&&(E*=-1,T=g);var C=h.some(f);y=[];for(var A=S;T(A,w);A+=E){var N;if(b)"\\"===(N=String.fromCharCode(A))&&(N="");else if(N=String(A),C){var P=D-N.length;if(P>0){var I=new Array(P+1).join("0");N=A<0?"-"+I+N.slice(1):I+N}}y.push(N)}}else{y=[];for(var F=0;F<h.length;F++)y.push.apply(y,_(h[F],!1))}for(F=0;F<y.length;F++)for(c=0;c<s.length;c++){u=a+y[F]+s[c];(!t||k||u)&&r.push(u)}}return r}},88664:e=>{const t="object"==typeof process&&process&&"win32"===process.platform;e.exports=t?{sep:"\\"}:{sep:"/"}},25835:(e,t,r)=>{const n=e.exports=(e,t,r={})=>(_(t),!(!r.nocomment&&"#"===t.charAt(0))&&new v(t,r).match(e));e.exports=n;const i=r(88664);n.sep=i.sep;const a=Symbol("globstar **");n.GLOBSTAR=a;const o=r(84928),s={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},c="[^/]",l=c+"*?",u=e=>e.split("").reduce(((e,t)=>(e[t]=!0,e)),{}),d=u("().*{}+?[]^$\\!"),p=u("[.("),f=/\/+/;n.filter=(e,t={})=>(r,i,a)=>n(r,e,t);const m=(e,t={})=>{const r={};return Object.keys(e).forEach((t=>r[t]=e[t])),Object.keys(t).forEach((e=>r[e]=t[e])),r};n.defaults=e=>{if(!e||"object"!=typeof e||!Object.keys(e).length)return n;const t=n,r=(r,n,i)=>t(r,n,m(e,i));return(r.Minimatch=class extends t.Minimatch{constructor(t,r){super(t,m(e,r))}}).defaults=r=>t.defaults(m(e,r)).Minimatch,r.filter=(r,n)=>t.filter(r,m(e,n)),r.defaults=r=>t.defaults(m(e,r)),r.makeRe=(r,n)=>t.makeRe(r,m(e,n)),r.braceExpand=(r,n)=>t.braceExpand(r,m(e,n)),r.match=(r,n,i)=>t.match(r,n,m(e,i)),r},n.braceExpand=(e,t)=>g(e,t);const g=(e,t={})=>(_(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:o(e)),_=e=>{if("string"!=typeof e)throw new TypeError("invalid pattern");if(e.length>65536)throw new TypeError("pattern is too long")},h=Symbol("subparse");n.makeRe=(e,t)=>new v(e,t||{}).makeRe(),n.match=(e,t,r={})=>{const n=new v(t,r);return e=e.filter((e=>n.match(e))),n.options.nonull&&!e.length&&e.push(t),e};const y=e=>e.replace(/[[\]\\]/g,"\\$&");class v{constructor(e,t){_(e),t||(t={}),this.options=t,this.set=[],this.pattern=e,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||!1===t.allowWindowsEscape,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.make()}debug(){}make(){const e=this.pattern,t=this.options;if(!t.nocomment&&"#"===e.charAt(0))return void(this.comment=!0);if(!e)return void(this.empty=!0);this.parseNegate();let r=this.globSet=this.braceExpand();t.debug&&(this.debug=(...e)=>console.error(...e)),this.debug(this.pattern,r),r=this.globParts=r.map((e=>e.split(f))),this.debug(this.pattern,r),r=r.map(((e,t,r)=>e.map(this.parse,this))),this.debug(this.pattern,r),r=r.filter((e=>-1===e.indexOf(!1))),this.debug(this.pattern,r),this.set=r}parseNegate(){if(this.options.nonegate)return;const e=this.pattern;let t=!1,r=0;for(let n=0;n<e.length&&"!"===e.charAt(n);n++)t=!t,r++;r&&(this.pattern=e.slice(r)),this.negate=t}matchOne(e,t,r){var n=this.options;this.debug("matchOne",{this:this,file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var i=0,o=0,s=e.length,c=t.length;i<s&&o<c;i++,o++){this.debug("matchOne loop");var l,u=t[o],d=e[i];if(this.debug(t,u,d),!1===u)return!1;if(u===a){this.debug("GLOBSTAR",[t,u,d]);var p=i,f=o+1;if(f===c){for(this.debug("** at the end");i<s;i++)if("."===e[i]||".."===e[i]||!n.dot&&"."===e[i].charAt(0))return!1;return!0}for(;p<s;){var m=e[p];if(this.debug("\nglobstar while",e,p,t,f,m),this.matchOne(e.slice(p),t.slice(f),r))return this.debug("globstar found match!",p,s,m),!0;if("."===m||".."===m||!n.dot&&"."===m.charAt(0)){this.debug("dot detected!",e,p,t,f);break}this.debug("globstar swallow a segment, and continue"),p++}return!(!r||(this.debug("\n>>> no match, partial?",e,p,t,f),p!==s))}if("string"==typeof u?(l=d===u,this.debug("string match",u,d,l)):(l=d.match(u),this.debug("pattern match",u,d,l)),!l)return!1}if(i===s&&o===c)return!0;if(i===s)return r;if(o===c)return i===s-1&&""===e[i];throw new Error("wtf?")}braceExpand(){return g(this.pattern,this.options)}parse(e,t){_(e);const r=this.options;if("**"===e){if(!r.noglobstar)return a;e="*"}if(""===e)return"";let n="",i=!1,o=!1;const u=[],f=[];let m,g,v,b,k=!1,x=-1,S=-1,w="."===e.charAt(0),D=r.dot||w;const E=e=>"."===e.charAt(0)?"":r.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",T=()=>{if(m){switch(m){case"*":n+=l,i=!0;break;case"?":n+=c,i=!0;break;default:n+="\\"+m}this.debug("clearStateChar %j %j",m,n),m=!1}};for(let t,a=0;a<e.length&&(t=e.charAt(a));a++)if(this.debug("%s\t%s %s %j",e,a,n,t),o){if("/"===t)return!1;d[t]&&(n+="\\"),n+=t,o=!1}else switch(t){case"/":return!1;case"\\":if(k&&"-"===e.charAt(a+1)){n+=t;continue}T(),o=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s\t%s %s %j <-- stateChar",e,a,n,t),k){this.debug(" in class"),"!"===t&&a===S+1&&(t="^"),n+=t;continue}this.debug("call clearStateChar %j",m),T(),m=t,r.noext&&T();continue;case"(":{if(k){n+="(";continue}if(!m){n+="\\(";continue}const t={type:m,start:a-1,reStart:n.length,open:s[m].open,close:s[m].close};this.debug(this.pattern,"\t",t),u.push(t),n+=t.open,0===t.start&&"!"!==t.type&&(w=!0,n+=E(e.slice(a+1))),this.debug("plType %j %j",m,n),m=!1;continue}case")":{const e=u[u.length-1];if(k||!e){n+="\\)";continue}u.pop(),T(),i=!0,v=e,n+=v.close,"!"===v.type&&f.push(Object.assign(v,{reEnd:n.length}));continue}case"|":{const t=u[u.length-1];if(k||!t){n+="\\|";continue}T(),n+="|",0===t.start&&"!"!==t.type&&(w=!0,n+=E(e.slice(a+1)));continue}case"[":if(T(),k){n+="\\"+t;continue}k=!0,S=a,x=n.length,n+=t;continue;case"]":if(a===S+1||!k){n+="\\"+t;continue}g=e.substring(S+1,a);try{RegExp("["+y(g.replace(/\\([^-\]])/g,"$1"))+"]"),n+=t}catch(e){n=n.substring(0,x)+"(?:$.)"}i=!0,k=!1;continue;default:T(),!d[t]||"^"===t&&k||(n+="\\"),n+=t}for(k&&(g=e.slice(S+1),b=this.parse(g,h),n=n.substring(0,x)+"\\["+b[0],i=i||b[1]),v=u.pop();v;v=u.pop()){let e;e=n.slice(v.reStart+v.open.length),this.debug("setting tail",n,v),e=e.replace(/((?:\\{2}){0,64})(\\?)\|/g,((e,t,r)=>(r||(r="\\"),t+t+r+"|"))),this.debug("tail=%j\n %s",e,e,v,n);const t="*"===v.type?l:"?"===v.type?c:"\\"+v.type;i=!0,n=n.slice(0,v.reStart)+t+"\\("+e}T(),o&&(n+="\\\\");const C=p[n.charAt(0)];for(let e=f.length-1;e>-1;e--){const r=f[e],i=n.slice(0,r.reStart),a=n.slice(r.reStart,r.reEnd-8);let o=n.slice(r.reEnd);const s=n.slice(r.reEnd-8,r.reEnd)+o,c=i.split(")").length,l=i.split("(").length-c;let u=o;for(let e=0;e<l;e++)u=u.replace(/\)[+*?]?/,"");o=u;n=i+a+o+(""===o&&t!==h?"(?:$|\\/)":"")+s}if(""!==n&&i&&(n="(?=.)"+n),C&&(n=(w?"":D?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)")+n),t===h)return[n,i];if(r.nocase&&!i&&(i=e.toUpperCase()!==e.toLowerCase()),!i)return(e=>e.replace(/\\(.)/g,"$1"))(e);const A=r.nocase?"i":"";try{return Object.assign(new RegExp("^"+n+"$",A),{_glob:e,_src:n})}catch(e){return new RegExp("$.")}}makeRe(){if(this.regexp||!1===this.regexp)return this.regexp;const e=this.set;if(!e.length)return this.regexp=!1,this.regexp;const t=this.options,r=t.noglobstar?l:t.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",n=t.nocase?"i":"";let i=e.map((e=>(e=e.map((e=>"string"==typeof e?e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):e===a?a:e._src)).reduce(((e,t)=>(e[e.length-1]===a&&t===a||e.push(t),e)),[]),e.forEach(((t,n)=>{t===a&&e[n-1]!==a&&(0===n?e.length>1?e[n+1]="(?:\\/|"+r+"\\/)?"+e[n+1]:e[n]=r:n===e.length-1?e[n-1]+="(?:\\/|"+r+")?":(e[n-1]+="(?:\\/|\\/"+r+"\\/)"+e[n+1],e[n+1]=a))})),e.filter((e=>e!==a)).join("/")))).join("|");i="^(?:"+i+")$",this.negate&&(i="^(?!"+i+").*$");try{this.regexp=new RegExp(i,n)}catch(e){this.regexp=!1}return this.regexp}match(e,t=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return""===e;if("/"===e&&t)return!0;const r=this.options;"/"!==i.sep&&(e=e.split(i.sep).join("/")),e=e.split(f),this.debug(this.pattern,"split",e);const n=this.set;let a;this.debug(this.pattern,"set",n);for(let t=e.length-1;t>=0&&(a=e[t],!a);t--);for(let i=0;i<n.length;i++){const o=n[i];let s=e;r.matchBase&&1===o.length&&(s=[a]);if(this.matchOne(s,o,t))return!!r.flipNegate||!this.negate}return!r.flipNegate&&this.negate}static defaults(e){return n.defaults(e).Minimatch}}n.Minimatch=v},4239:(e,t,r)=>{e.exports=p,p.sync=h;var n=r(42613),i=r(16928),a=r(79896),o=void 0;try{o=r(53577)}catch(e){}var s=parseInt("666",8),c={nosort:!0,silent:!0},l=0,u="win32"===process.platform;function d(e){if(["unlink","chmod","stat","lstat","rmdir","readdir"].forEach((function(t){e[t]=e[t]||a[t],e[t+="Sync"]=e[t]||a[t]})),e.maxBusyTries=e.maxBusyTries||3,e.emfileWait=e.emfileWait||1e3,!1===e.glob&&(e.disableGlob=!0),!0!==e.disableGlob&&void 0===o)throw Error("glob dependency not found, set `options.disableGlob = true` if intentional");e.disableGlob=e.disableGlob||!1,e.glob=e.glob||c}function p(e,t,r){"function"==typeof t&&(r=t,t={}),n(e,"rimraf: missing path"),n.equal(typeof e,"string","rimraf: path should be a string"),n.equal(typeof r,"function","rimraf: callback function required"),n(t,"rimraf: invalid options argument provided"),n.equal(typeof t,"object","rimraf: options should be object"),d(t);var i=0,a=null,s=0;if(t.disableGlob||!o.hasMagic(e))return c(null,[e]);function c(e,n){return e?r(e):0===(s=n.length)?r():void n.forEach((function(e){f(e,t,(function n(o){if(o){if(("EBUSY"===o.code||"ENOTEMPTY"===o.code||"EPERM"===o.code)&&i<t.maxBusyTries)return i++,setTimeout((function(){f(e,t,n)}),100*i);if("EMFILE"===o.code&&l<t.emfileWait)return setTimeout((function(){f(e,t,n)}),l++);"ENOENT"===o.code&&(o=null)}l=0,function(e){a=a||e,0==--s&&r(a)}(o)}))}))}t.lstat(e,(function(r,n){if(!r)return c(null,[e]);o(e,t.glob,c)}))}function f(e,t,r){n(e),n(t),n("function"==typeof r),t.lstat(e,(function(n,i){return n&&"ENOENT"===n.code?r(null):(n&&"EPERM"===n.code&&u&&m(e,t,n,r),i&&i.isDirectory()?_(e,t,n,r):void t.unlink(e,(function(n){if(n){if("ENOENT"===n.code)return r(null);if("EPERM"===n.code)return u?m(e,t,n,r):_(e,t,n,r);if("EISDIR"===n.code)return _(e,t,n,r)}return r(n)})))}))}function m(e,t,r,i){n(e),n(t),n("function"==typeof i),r&&n(r instanceof Error),t.chmod(e,s,(function(n){n?i("ENOENT"===n.code?null:r):t.stat(e,(function(n,a){n?i("ENOENT"===n.code?null:r):a.isDirectory()?_(e,t,r,i):t.unlink(e,i)}))}))}function g(e,t,r){n(e),n(t),r&&n(r instanceof Error);try{t.chmodSync(e,s)}catch(e){if("ENOENT"===e.code)return;throw r}try{var i=t.statSync(e)}catch(e){if("ENOENT"===e.code)return;throw r}i.isDirectory()?y(e,t,r):t.unlinkSync(e)}function _(e,t,r,a){n(e),n(t),r&&n(r instanceof Error),n("function"==typeof a),t.rmdir(e,(function(o){!o||"ENOTEMPTY"!==o.code&&"EEXIST"!==o.code&&"EPERM"!==o.code?o&&"ENOTDIR"===o.code?a(r):a(o):function(e,t,r){n(e),n(t),n("function"==typeof r),t.readdir(e,(function(n,a){if(n)return r(n);var o,s=a.length;if(0===s)return t.rmdir(e,r);a.forEach((function(n){p(i.join(e,n),t,(function(n){if(!o)return n?r(o=n):void(0==--s&&t.rmdir(e,r))}))}))}))}(e,t,a)}))}function h(e,t){var r;if(d(t=t||{}),n(e,"rimraf: missing path"),n.equal(typeof e,"string","rimraf: path should be a string"),n(t,"rimraf: missing options"),n.equal(typeof t,"object","rimraf: options should be object"),t.disableGlob||!o.hasMagic(e))r=[e];else try{t.lstatSync(e),r=[e]}catch(n){r=o.sync(e,t.glob)}if(r.length)for(var i=0;i<r.length;i++){e=r[i];try{var a=t.lstatSync(e)}catch(r){if("ENOENT"===r.code)return;"EPERM"===r.code&&u&&g(e,t,r)}try{a&&a.isDirectory()?y(e,t,null):t.unlinkSync(e)}catch(r){if("ENOENT"===r.code)return;if("EPERM"===r.code)return u?g(e,t,r):y(e,t,r);if("EISDIR"!==r.code)throw r;y(e,t,r)}}}function y(e,t,r){n(e),n(t),r&&n(r instanceof Error);try{t.rmdirSync(e)}catch(a){if("ENOENT"===a.code)return;if("ENOTDIR"===a.code)throw r;"ENOTEMPTY"!==a.code&&"EEXIST"!==a.code&&"EPERM"!==a.code||function(e,t){n(e),n(t),t.readdirSync(e).forEach((function(r){h(i.join(e,r),t)}));var r=u?100:1,a=0;for(;;){var o=!0;try{var s=t.rmdirSync(e,t);return o=!1,s}finally{if(++a<r&&o)continue}}}(e,t)}}},92861:(e,t,r)=>{var n=r(20181),i=n.Buffer;function a(e,t){for(var r in e)t[r]=e[r]}function o(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(a(n,t),t.Buffer=o),a(i,o),o.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},o.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"==typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},38223:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(31487),i=r(84797),a=r(60446);var o=n.isS,s=n.isChar,c=n.isNameStartChar,l=n.isNameChar,u=n.S_LIST,d=n.NAME_RE,p=i.isChar,f=a.isNCNameStartChar,m=a.isNCNameChar,g=a.NC_NAME_RE;const _="http://www.w3.org/XML/1998/namespace",h="http://www.w3.org/2000/xmlns/",y={__proto__:null,xml:_,xmlns:h},v={__proto__:null,amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},b=-1,k=-2,x=13,S=33,w=10,D=60,E=61,T=62,C=63,A=93,N=e=>34===e||39===e,P=[34,39],I=[...P,91,T],F=[...P,D,A],O=[E,C,...u],R=[...u,T,38,D];function M(e,t,r){switch(t){case"xml":r!==_&&e.fail(`xml prefix must be bound to ${_}.`);break;case"xmlns":r!==h&&e.fail(`xmlns prefix must be bound to ${h}.`)}switch(r){case h:e.fail(""===t?`the default namespace may not be set to ${r}.`:`may not assign a prefix (even "xmlns") to the URI ${h}.`);break;case _:switch(t){case"xml":break;case"":e.fail(`the default namespace may not be set to ${r}.`);break;default:e.fail("may not assign the xml namespace to another prefix.")}}}const L=e=>g.test(e),j=e=>d.test(e);t.EVENTS=["xmldecl","text","processinginstruction","doctype","comment","opentagstart","attribute","opentag","closetag","cdata","error","end","ready"];const B={xmldecl:"xmldeclHandler",text:"textHandler",processinginstruction:"piHandler",doctype:"doctypeHandler",comment:"commentHandler",opentagstart:"openTagStartHandler",attribute:"attributeHandler",opentag:"openTagHandler",closetag:"closeTagHandler",cdata:"cdataHandler",error:"errorHandler",end:"endHandler",ready:"readyHandler"};t.SaxesParser=class{constructor(e){this.opt=null!=e?e:{},this.fragmentOpt=!!this.opt.fragment;const t=this.xmlnsOpt=!!this.opt.xmlns;if(this.trackPosition=!1!==this.opt.position,this.fileName=this.opt.fileName,t){this.nameStartCheck=f,this.nameCheck=m,this.isName=L,this.processAttribs=this.processAttribsNS,this.pushAttrib=this.pushAttribNS,this.ns=Object.assign({__proto__:null},y);const e=this.opt.additionalNamespaces;null!=e&&(!function(e,t){for(const r of Object.keys(t))M(e,r,t[r])}(this,e),Object.assign(this.ns,e))}else this.nameStartCheck=c,this.nameCheck=l,this.isName=j,this.processAttribs=this.processAttribsPlain,this.pushAttrib=this.pushAttribPlain;this.stateTable=[this.sBegin,this.sBeginWhitespace,this.sDoctype,this.sDoctypeQuote,this.sDTD,this.sDTDQuoted,this.sDTDOpenWaka,this.sDTDOpenWakaBang,this.sDTDComment,this.sDTDCommentEnding,this.sDTDCommentEnded,this.sDTDPI,this.sDTDPIEnding,this.sText,this.sEntity,this.sOpenWaka,this.sOpenWakaBang,this.sComment,this.sCommentEnding,this.sCommentEnded,this.sCData,this.sCDataEnding,this.sCDataEnding2,this.sPIFirstChar,this.sPIRest,this.sPIBody,this.sPIEnding,this.sXMLDeclNameStart,this.sXMLDeclName,this.sXMLDeclEq,this.sXMLDeclValueStart,this.sXMLDeclValue,this.sXMLDeclSeparator,this.sXMLDeclEnding,this.sOpenTag,this.sOpenTagSlash,this.sAttrib,this.sAttribName,this.sAttribNameSawWhite,this.sAttribValue,this.sAttribValueQuoted,this.sAttribValueClosed,this.sAttribValueUnquoted,this.sCloseTag,this.sCloseTagSawWhite],this._init()}get closed(){return this._closed}_init(){var e;this.openWakaBang="",this.text="",this.name="",this.piTarget="",this.entity="",this.q=null,this.tags=[],this.tag=null,this.topNS=null,this.chunk="",this.chunkPosition=0,this.i=0,this.prevI=0,this.carriedFromPrevious=void 0,this.forbiddenState=0,this.attribList=[];const{fragmentOpt:t}=this;this.state=t?x:0,this.reportedTextBeforeRoot=this.reportedTextAfterRoot=this.closedRoot=this.sawRoot=t,this.xmlDeclPossible=!t,this.xmlDeclExpects=["version"],this.entityReturnState=void 0;let{defaultXMLVersion:r}=this.opt;if(void 0===r){if(!0===this.opt.forceXMLVersion)throw new Error("forceXMLVersion set but defaultXMLVersion is not set");r="1.0"}this.setXMLVersion(r),this.positionAtNewLine=0,this.doctype=!1,this._closed=!1,this.xmlDecl={version:void 0,encoding:void 0,standalone:void 0},this.line=1,this.column=0,this.ENTITIES=Object.create(v),null===(e=this.readyHandler)||void 0===e||e.call(this)}get position(){return this.chunkPosition+this.i}get columnIndex(){return this.position-this.positionAtNewLine}on(e,t){this[B[e]]=t}off(e){this[B[e]]=void 0}makeError(e){var t;let r=null!==(t=this.fileName)&&void 0!==t?t:"";return this.trackPosition&&(r.length>0&&(r+=":"),r+=`${this.line}:${this.column}`),r.length>0&&(r+=": "),new Error(r+e)}fail(e){const t=this.makeError(e),r=this.errorHandler;if(void 0===r)throw t;return r(t),this}write(e){if(this.closed)return this.fail("cannot write after close; assign an onready handler.");let t=!1;null===e?(t=!0,e=""):"object"==typeof e&&(e=e.toString()),void 0!==this.carriedFromPrevious&&(e=`${this.carriedFromPrevious}${e}`,this.carriedFromPrevious=void 0);let r=e.length;const n=e.charCodeAt(r-1);!t&&(13===n||n>=55296&&n<=56319)&&(this.carriedFromPrevious=e[r-1],r--,e=e.slice(0,r));const{stateTable:i}=this;for(this.chunk=e,this.i=0;this.i<r;)i[this.state].call(this);return this.chunkPosition+=r,t?this.end():this}close(){return this.write(null)}getCode10(){const{chunk:e,i:t}=this;if(this.prevI=t,this.i=t+1,t>=e.length)return b;const r=e.charCodeAt(t);if(this.column++,r<55296){if(r>=32||9===r)return r;switch(r){case w:return this.line++,this.column=0,this.positionAtNewLine=this.position,w;case 13:return e.charCodeAt(t+1)===w&&(this.i=t+2),this.line++,this.column=0,this.positionAtNewLine=this.position,k;default:return this.fail("disallowed character."),r}}if(r>56319)return r>=57344&&r<=65533||this.fail("disallowed character."),r;const n=65536+1024*(r-55296)+(e.charCodeAt(t+1)-56320);return this.i=t+2,n>1114111&&this.fail("disallowed character."),n}getCode11(){const{chunk:e,i:t}=this;if(this.prevI=t,this.i=t+1,t>=e.length)return b;const r=e.charCodeAt(t);if(this.column++,r<55296){if(r>31&&r<127||r>159&&8232!==r||9===r)return r;switch(r){case w:return this.line++,this.column=0,this.positionAtNewLine=this.position,w;case 13:{const r=e.charCodeAt(t+1);r!==w&&133!==r||(this.i=t+2)}case 133:case 8232:return this.line++,this.column=0,this.positionAtNewLine=this.position,k;default:return this.fail("disallowed character."),r}}if(r>56319)return r>=57344&&r<=65533||this.fail("disallowed character."),r;const n=65536+1024*(r-55296)+(e.charCodeAt(t+1)-56320);return this.i=t+2,n>1114111&&this.fail("disallowed character."),n}getCodeNorm(){const e=this.getCode();return e===k?w:e}unget(){this.i=this.prevI,this.column--}captureTo(e){let{i:t}=this;const{chunk:r}=this;for(;;){const n=this.getCode(),i=n===k,a=i?w:n;if(a===b||e.includes(a))return this.text+=r.slice(t,this.prevI),a;i&&(this.text+=`${r.slice(t,this.prevI)}\n`,t=this.i)}}captureToChar(e){let{i:t}=this;const{chunk:r}=this;for(;;){let n=this.getCode();switch(n){case k:this.text+=`${r.slice(t,this.prevI)}\n`,t=this.i,n=w;break;case b:return this.text+=r.slice(t),!1}if(n===e)return this.text+=r.slice(t,this.prevI),!0}}captureNameChars(){const{chunk:e,i:t}=this;for(;;){const r=this.getCode();if(r===b)return this.name+=e.slice(t),b;if(!l(r))return this.name+=e.slice(t,this.prevI),r===k?w:r}}skipSpaces(){for(;;){const e=this.getCodeNorm();if(e===b||!o(e))return e}}setXMLVersion(e){this.currentXMLVersion=e,"1.0"===e?(this.isChar=s,this.getCode=this.getCode10):(this.isChar=p,this.getCode=this.getCode11)}sBegin(){65279===this.chunk.charCodeAt(0)&&(this.i++,this.column++),this.state=1}sBeginWhitespace(){const e=this.i,t=this.skipSpaces();switch(this.prevI!==e&&(this.xmlDeclPossible=!1),t){case D:if(this.state=15,0!==this.text.length)throw new Error("no-empty text at start");break;case b:break;default:this.unget(),this.state=x,this.xmlDeclPossible=!1}}sDoctype(){var e;const t=this.captureTo(I);switch(t){case T:null===(e=this.doctypeHandler)||void 0===e||e.call(this,this.text),this.text="",this.state=x,this.doctype=!0;break;case b:break;default:this.text+=String.fromCodePoint(t),91===t?this.state=4:N(t)&&(this.state=3,this.q=t)}}sDoctypeQuote(){const e=this.q;this.captureToChar(e)&&(this.text+=String.fromCodePoint(e),this.q=null,this.state=2)}sDTD(){const e=this.captureTo(F);e!==b&&(this.text+=String.fromCodePoint(e),e===A?this.state=2:e===D?this.state=6:N(e)&&(this.state=5,this.q=e))}sDTDQuoted(){const e=this.q;this.captureToChar(e)&&(this.text+=String.fromCodePoint(e),this.state=4,this.q=null)}sDTDOpenWaka(){const e=this.getCodeNorm();switch(this.text+=String.fromCodePoint(e),e){case 33:this.state=7,this.openWakaBang="";break;case C:this.state=11;break;default:this.state=4}}sDTDOpenWakaBang(){const e=String.fromCodePoint(this.getCodeNorm()),t=this.openWakaBang+=e;this.text+=e,"-"!==t&&(this.state="--"===t?8:4,this.openWakaBang="")}sDTDComment(){this.captureToChar(45)&&(this.text+="-",this.state=9)}sDTDCommentEnding(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),this.state=45===e?10:8}sDTDCommentEnded(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),e===T?this.state=4:(this.fail("malformed comment."),this.state=8)}sDTDPI(){this.captureToChar(C)&&(this.text+="?",this.state=12)}sDTDPIEnding(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),e===T&&(this.state=4)}sText(){0!==this.tags.length?this.handleTextInRoot():this.handleTextOutsideRoot()}sEntity(){let{i:e}=this;const{chunk:t}=this;e:for(;;)switch(this.getCode()){case k:this.entity+=`${t.slice(e,this.prevI)}\n`,e=this.i;break;case 59:{const{entityReturnState:r}=this,n=this.entity+t.slice(e,this.prevI);let i;this.state=r,""===n?(this.fail("empty entity name."),i="&;"):(i=this.parseEntity(n),this.entity=""),r===x&&void 0===this.textHandler||(this.text+=i);break e}case b:this.entity+=t.slice(e);break e}}sOpenWaka(){const e=this.getCode();if(c(e))this.state=34,this.unget(),this.xmlDeclPossible=!1;else switch(e){case 47:this.state=43,this.xmlDeclPossible=!1;break;case 33:this.state=16,this.openWakaBang="",this.xmlDeclPossible=!1;break;case C:this.state=23;break;default:this.fail("disallowed character in tag name"),this.state=x,this.xmlDeclPossible=!1}}sOpenWakaBang(){switch(this.openWakaBang+=String.fromCodePoint(this.getCodeNorm()),this.openWakaBang){case"[CDATA[":this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0),this.state=20,this.openWakaBang="";break;case"--":this.state=17,this.openWakaBang="";break;case"DOCTYPE":this.state=2,(this.doctype||this.sawRoot)&&this.fail("inappropriately located doctype declaration."),this.openWakaBang="";break;default:this.openWakaBang.length>=7&&this.fail("incorrect syntax.")}}sComment(){this.captureToChar(45)&&(this.state=18)}sCommentEnding(){var e;const t=this.getCodeNorm();45===t?(this.state=19,null===(e=this.commentHandler)||void 0===e||e.call(this,this.text),this.text=""):(this.text+=`-${String.fromCodePoint(t)}`,this.state=17)}sCommentEnded(){const e=this.getCodeNorm();e!==T?(this.fail("malformed comment."),this.text+=`--${String.fromCodePoint(e)}`,this.state=17):this.state=x}sCData(){this.captureToChar(A)&&(this.state=21)}sCDataEnding(){const e=this.getCodeNorm();e===A?this.state=22:(this.text+=`]${String.fromCodePoint(e)}`,this.state=20)}sCDataEnding2(){var e;const t=this.getCodeNorm();switch(t){case T:null===(e=this.cdataHandler)||void 0===e||e.call(this,this.text),this.text="",this.state=x;break;case A:this.text+="]";break;default:this.text+=`]]${String.fromCodePoint(t)}`,this.state=20}}sPIFirstChar(){const e=this.getCodeNorm();this.nameStartCheck(e)?(this.piTarget+=String.fromCodePoint(e),this.state=24):e===C||o(e)?(this.fail("processing instruction without a target."),this.state=e===C?26:25):(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(e),this.state=24)}sPIRest(){const{chunk:e,i:t}=this;for(;;){const r=this.getCodeNorm();if(r===b)return void(this.piTarget+=e.slice(t));if(!this.nameCheck(r)){this.piTarget+=e.slice(t,this.prevI);const n=r===C;n||o(r)?"xml"===this.piTarget?(this.xmlDeclPossible||this.fail("an XML declaration must be at the start of the document."),this.state=n?S:27):this.state=n?26:25:(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(r));break}}}sPIBody(){if(0===this.text.length){const e=this.getCodeNorm();e===C?this.state=26:o(e)||(this.text=String.fromCodePoint(e))}else this.captureToChar(C)&&(this.state=26)}sPIEnding(){var e;const t=this.getCodeNorm();if(t===T){const{piTarget:t}=this;"xml"===t.toLowerCase()&&this.fail("the XML declaration must appear at the start of the document."),null===(e=this.piHandler)||void 0===e||e.call(this,{target:t,body:this.text}),this.piTarget=this.text="",this.state=x}else t===C?this.text+="?":(this.text+=`?${String.fromCodePoint(t)}`,this.state=25);this.xmlDeclPossible=!1}sXMLDeclNameStart(){const e=this.skipSpaces();e!==C?e!==b&&(this.state=28,this.name=String.fromCodePoint(e)):this.state=S}sXMLDeclName(){const e=this.captureTo(O);if(e===C)return this.state=S,this.name+=this.text,this.text="",void this.fail("XML declaration is incomplete.");if(o(e)||e===E){if(this.name+=this.text,this.text="",!this.xmlDeclExpects.includes(this.name))switch(this.name.length){case 0:this.fail("did not expect any more name/value pairs.");break;case 1:this.fail(`expected the name ${this.xmlDeclExpects[0]}.`);break;default:this.fail(`expected one of ${this.xmlDeclExpects.join(", ")}`)}this.state=e===E?30:29}}sXMLDeclEq(){const e=this.getCodeNorm();if(e===C)return this.state=S,void this.fail("XML declaration is incomplete.");o(e)||(e!==E&&this.fail("value required."),this.state=30)}sXMLDeclValueStart(){const e=this.getCodeNorm();if(e===C)return this.state=S,void this.fail("XML declaration is incomplete.");o(e)||(N(e)?this.q=e:(this.fail("value must be quoted."),this.q=32),this.state=31)}sXMLDeclValue(){const e=this.captureTo([this.q,C]);if(e===C)return this.state=S,this.text="",void this.fail("XML declaration is incomplete.");if(e===b)return;const t=this.text;switch(this.text="",this.name){case"version":{this.xmlDeclExpects=["encoding","standalone"];const e=t;this.xmlDecl.version=e,/^1\.[0-9]+$/.test(e)?this.opt.forceXMLVersion||this.setXMLVersion(e):this.fail("version number must match /^1\\.[0-9]+$/.");break}case"encoding":/^[A-Za-z][A-Za-z0-9._-]*$/.test(t)||this.fail("encoding value must match /^[A-Za-z0-9][A-Za-z0-9._-]*$/."),this.xmlDeclExpects=["standalone"],this.xmlDecl.encoding=t;break;case"standalone":"yes"!==t&&"no"!==t&&this.fail('standalone value must match "yes" or "no".'),this.xmlDeclExpects=[],this.xmlDecl.standalone=t}this.name="",this.state=32}sXMLDeclSeparator(){const e=this.getCodeNorm();e!==C?(o(e)||(this.fail("whitespace required."),this.unget()),this.state=27):this.state=S}sXMLDeclEnding(){var e;this.getCodeNorm()===T?("xml"!==this.piTarget?this.fail("processing instructions are not allowed before root."):"version"!==this.name&&this.xmlDeclExpects.includes("version")&&this.fail("XML declaration must contain a version."),null===(e=this.xmldeclHandler)||void 0===e||e.call(this,this.xmlDecl),this.name="",this.piTarget=this.text="",this.state=x):this.fail("The character ? is disallowed anywhere in XML declarations."),this.xmlDeclPossible=!1}sOpenTag(){var e;const t=this.captureNameChars();if(t===b)return;const r=this.tag={name:this.name,attributes:Object.create(null)};switch(this.name="",this.xmlnsOpt&&(this.topNS=r.ns=Object.create(null)),null===(e=this.openTagStartHandler)||void 0===e||e.call(this,r),this.sawRoot=!0,!this.fragmentOpt&&this.closedRoot&&this.fail("documents may contain only one root."),t){case T:this.openTag();break;case 47:this.state=35;break;default:o(t)||this.fail("disallowed character in tag name."),this.state=36}}sOpenTagSlash(){this.getCode()===T?this.openSelfClosingTag():(this.fail("forward-slash in opening tag not followed by >."),this.state=36)}sAttrib(){const e=this.skipSpaces();e!==b&&(c(e)?(this.unget(),this.state=37):e===T?this.openTag():47===e?this.state=35:this.fail("disallowed character in attribute name."))}sAttribName(){const e=this.captureNameChars();e===E?this.state=39:o(e)?this.state=38:e===T?(this.fail("attribute without value."),this.pushAttrib(this.name,this.name),this.name=this.text="",this.openTag()):e!==b&&this.fail("disallowed character in attribute name.")}sAttribNameSawWhite(){const e=this.skipSpaces();switch(e){case b:return;case E:this.state=39;break;default:this.fail("attribute without value."),this.text="",this.name="",e===T?this.openTag():c(e)?(this.unget(),this.state=37):(this.fail("disallowed character in attribute name."),this.state=36)}}sAttribValue(){const e=this.getCodeNorm();N(e)?(this.q=e,this.state=40):o(e)||(this.fail("unquoted attribute value."),this.state=42,this.unget())}sAttribValueQuoted(){const{q:e,chunk:t}=this;let{i:r}=this;for(;;)switch(this.getCode()){case e:return this.pushAttrib(this.name,this.text+t.slice(r,this.prevI)),this.name=this.text="",this.q=null,void(this.state=41);case 38:return this.text+=t.slice(r,this.prevI),this.state=14,void(this.entityReturnState=40);case w:case k:case 9:this.text+=`${t.slice(r,this.prevI)} `,r=this.i;break;case D:return this.text+=t.slice(r,this.prevI),void this.fail("disallowed character.");case b:return void(this.text+=t.slice(r))}}sAttribValueClosed(){const e=this.getCodeNorm();o(e)?this.state=36:e===T?this.openTag():47===e?this.state=35:c(e)?(this.fail("no whitespace between attributes."),this.unget(),this.state=37):this.fail("disallowed character in attribute name.")}sAttribValueUnquoted(){const e=this.captureTo(R);switch(e){case 38:this.state=14,this.entityReturnState=42;break;case D:this.fail("disallowed character.");break;case b:break;default:this.text.includes("]]>")&&this.fail('the string "]]>" is disallowed in char data.'),this.pushAttrib(this.name,this.text),this.name=this.text="",e===T?this.openTag():this.state=36}}sCloseTag(){const e=this.captureNameChars();e===T?this.closeTag():o(e)?this.state=44:e!==b&&this.fail("disallowed character in closing tag.")}sCloseTagSawWhite(){switch(this.skipSpaces()){case T:this.closeTag();break;case b:break;default:this.fail("disallowed character in closing tag.")}}handleTextInRoot(){let{i:e,forbiddenState:t}=this;const{chunk:r,textHandler:n}=this;e:for(;;)switch(this.getCode()){case D:if(this.state=15,void 0!==n){const{text:t}=this,i=r.slice(e,this.prevI);0!==t.length?(n(t+i),this.text=""):0!==i.length&&n(i)}t=0;break e;case 38:this.state=14,this.entityReturnState=x,void 0!==n&&(this.text+=r.slice(e,this.prevI)),t=0;break e;case A:switch(t){case 0:t=1;break;case 1:t=2;break;case 2:break;default:throw new Error("impossible state")}break;case T:2===t&&this.fail('the string "]]>" is disallowed in char data.'),t=0;break;case k:void 0!==n&&(this.text+=`${r.slice(e,this.prevI)}\n`),e=this.i,t=0;break;case b:void 0!==n&&(this.text+=r.slice(e));break e;default:t=0}this.forbiddenState=t}handleTextOutsideRoot(){let{i:e}=this;const{chunk:t,textHandler:r}=this;let n=!1;e:for(;;){const i=this.getCode();switch(i){case D:if(this.state=15,void 0!==r){const{text:n}=this,i=t.slice(e,this.prevI);0!==n.length?(r(n+i),this.text=""):0!==i.length&&r(i)}break e;case 38:this.state=14,this.entityReturnState=x,void 0!==r&&(this.text+=t.slice(e,this.prevI)),n=!0;break e;case k:void 0!==r&&(this.text+=`${t.slice(e,this.prevI)}\n`),e=this.i;break;case b:void 0!==r&&(this.text+=t.slice(e));break e;default:o(i)||(n=!0)}}n&&(this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0))}pushAttribNS(e,t){var r;const{prefix:n,local:i}=this.qname(e),a={name:e,prefix:n,local:i,value:t};if(this.attribList.push(a),null===(r=this.attributeHandler)||void 0===r||r.call(this,a),"xmlns"===n){const e=t.trim();"1.0"===this.currentXMLVersion&&""===e&&this.fail("invalid attempt to undefine prefix in XML 1.0"),this.topNS[i]=e,M(this,i,e)}else if("xmlns"===e){const e=t.trim();this.topNS[""]=e,M(this,"",e)}}pushAttribPlain(e,t){var r;const n={name:e,value:t};this.attribList.push(n),null===(r=this.attributeHandler)||void 0===r||r.call(this,n)}end(){var e,t;this.sawRoot||this.fail("document must contain a root element.");const{tags:r}=this;for(;r.length>0;){const e=r.pop();this.fail(`unclosed tag: ${e.name}`)}0!==this.state&&this.state!==x&&this.fail("unexpected end.");const{text:n}=this;return 0!==n.length&&(null===(e=this.textHandler)||void 0===e||e.call(this,n),this.text=""),this._closed=!0,null===(t=this.endHandler)||void 0===t||t.call(this),this._init(),this}resolve(e){var t,r;let n=this.topNS[e];if(void 0!==n)return n;const{tags:i}=this;for(let t=i.length-1;t>=0;t--)if(n=i[t].ns[e],void 0!==n)return n;return n=this.ns[e],void 0!==n?n:null===(r=(t=this.opt).resolvePrefix)||void 0===r?void 0:r.call(t,e)}qname(e){const t=e.indexOf(":");if(-1===t)return{prefix:"",local:e};const r=e.slice(t+1),n=e.slice(0,t);return(""===n||""===r||r.includes(":"))&&this.fail(`malformed name: ${e}.`),{prefix:n,local:r}}processAttribsNS(){var e;const{attribList:t}=this,r=this.tag;{const{prefix:t,local:n}=this.qname(r.name);r.prefix=t,r.local=n;const i=r.uri=null!==(e=this.resolve(t))&&void 0!==e?e:"";""!==t&&("xmlns"===t&&this.fail('tags may not have "xmlns" as prefix.'),""===i&&(this.fail(`unbound namespace prefix: ${JSON.stringify(t)}.`),r.uri=t))}if(0===t.length)return;const{attributes:n}=r,i=new Set;for(const e of t){const{name:t,prefix:r,local:a}=e;let o,s;""===r?(o="xmlns"===t?h:"",s=t):(o=this.resolve(r),void 0===o&&(this.fail(`unbound namespace prefix: ${JSON.stringify(r)}.`),o=r),s=`{${o}}${a}`),i.has(s)&&this.fail(`duplicate attribute: ${s}.`),i.add(s),e.uri=o,n[t]=e}this.attribList=[]}processAttribsPlain(){const{attribList:e}=this,t=this.tag.attributes;for(const{name:r,value:n}of e)void 0!==t[r]&&this.fail(`duplicate attribute: ${r}.`),t[r]=n;this.attribList=[]}openTag(){var e;this.processAttribs();const{tags:t}=this,r=this.tag;r.isSelfClosing=!1,null===(e=this.openTagHandler)||void 0===e||e.call(this,r),t.push(r),this.state=x,this.name=""}openSelfClosingTag(){var e,t,r;this.processAttribs();const{tags:n}=this,i=this.tag;i.isSelfClosing=!0,null===(e=this.openTagHandler)||void 0===e||e.call(this,i),null===(t=this.closeTagHandler)||void 0===t||t.call(this,i);null===(this.tag=null!==(r=n[n.length-1])&&void 0!==r?r:null)&&(this.closedRoot=!0),this.state=x,this.name=""}closeTag(){const{tags:e,name:t}=this;if(this.state=x,this.name="",""===t)return this.fail("weird empty close tag."),void(this.text+="</>");const r=this.closeTagHandler;let n=e.length;for(;n-- >0;){const n=this.tag=e.pop();if(this.topNS=n.ns,null==r||r(n),n.name===t)break;this.fail("unexpected close tag.")}0===n?this.closedRoot=!0:n<0&&(this.fail(`unmatched closing tag: ${t}.`),this.text+=`</${t}>`)}parseEntity(e){if("#"!==e[0]){const t=this.ENTITIES[e];return void 0!==t?t:(this.fail(this.isName(e)?"undefined entity.":"disallowed character in entity name."),`&${e};`)}let t=NaN;return"x"===e[1]&&/^#x[0-9a-f]+$/i.test(e)?t=parseInt(e.slice(2),16):/^#[0-9]+$/.test(e)&&(t=parseInt(e.slice(1),10)),this.isChar(t)?String.fromCodePoint(t):(this.fail("malformed character entity."),`&${e};`)}}},42791:function(){!function(e,t){"use strict";if(!e.setImmediate){var r,n,i,a,o,s=1,c={},l=!1,u=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?r=function(e){process.nextTick((function(){f(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,r=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}}()?e.MessageChannel?((i=new MessageChannel).port1.onmessage=function(e){f(e.data)},r=function(e){i.port2.postMessage(e)}):u&&"onreadystatechange"in u.createElement("script")?(n=u.documentElement,r=function(e){var t=u.createElement("script");t.onreadystatechange=function(){f(e),t.onreadystatechange=null,n.removeChild(t),t=null},n.appendChild(t)}):r=function(e){setTimeout(f,0,e)}:(a="setImmediate$"+Math.random()+"$",o=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(a)&&f(+t.data.slice(a.length))},e.addEventListener?e.addEventListener("message",o,!1):e.attachEvent("onmessage",o),r=function(t){e.postMessage(a+t,"*")}),d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var i={callback:e,args:t};return c[s]=i,r(s),s++},d.clearImmediate=p}function p(e){delete c[e]}function f(e){if(l)setTimeout(f,0,e);else{var r=c[e];if(r){l=!0;try{!function(e){var r=e.callback,n=e.args;switch(n.length){case 0:r();break;case 1:r(n[0]);break;case 2:r(n[0],n[1]);break;case 3:r(n[0],n[1],n[2]);break;default:r.apply(t,n)}}(r)}finally{p(e),l=!1}}}}}("undefined"==typeof self?"undefined"==typeof global?this:global:self)},92345:(e,t,r)=>{e=r.nmd(e);var n,i=r(19665).SourceMapConsumer,a=r(16928);try{(n=r(79896)).existsSync&&n.readFileSync||(n=null)}catch(e){}var o=r(42746);function s(e,t){return e.require(t)}var c=!1,l=!1,u=!1,d="auto",p={},f={},m=/^data:application\/json[^,]+base64,/,g=[],_=[];function h(){return"browser"===d||"node"!==d&&("undefined"!=typeof window&&"function"==typeof XMLHttpRequest&&!(window.require&&window.module&&window.process&&"renderer"===window.process.type))}function y(e){return function(t){for(var r=0;r<e.length;r++){var n=e[r](t);if(n)return n}return null}}var v=y(g);function b(e,t){if(!e)return t;var r=a.dirname(e),n=/^\w+:\/\/[^\/]*/.exec(r),i=n?n[0]:"",o=r.slice(i.length);return i&&/^\/\w\:/.test(o)?(i+="/")+a.resolve(r.slice(i.length),t).replace(/\\/g,"/"):i+a.resolve(r.slice(i.length),t)}g.push((function(e){if(e=e.trim(),/^file:/.test(e)&&(e=e.replace(/file:\/\/\/(\w:)?/,(function(e,t){return t?"":"/"}))),e in p)return p[e];var t="";try{if(n)n.existsSync(e)&&(t=n.readFileSync(e,"utf8"));else{var r=new XMLHttpRequest;r.open("GET",e,!1),r.send(null),4===r.readyState&&200===r.status&&(t=r.responseText)}}catch(e){}return p[e]=t}));var k=y(_);function x(e){var t=f[e.source];if(!t){var r=k(e.source);r?(t=f[e.source]={url:r.url,map:new i(r.map)}).map.sourcesContent&&t.map.sources.forEach((function(e,r){var n=t.map.sourcesContent[r];if(n){var i=b(t.url,e);p[i]=n}})):t=f[e.source]={url:null,map:null}}if(t&&t.map&&"function"==typeof t.map.originalPositionFor){var n=t.map.originalPositionFor(e);if(null!==n.source)return n.source=b(t.url,n.source),n}return e}function S(e){var t=/^eval at ([^(]+) \((.+):(\d+):(\d+)\)$/.exec(e);if(t){var r=x({source:t[2],line:+t[3],column:t[4]-1});return"eval at "+t[1]+" ("+r.source+":"+r.line+":"+(r.column+1)+")"}return(t=/^eval at ([^(]+) \((.+)\)$/.exec(e))?"eval at "+t[1]+" ("+S(t[2])+")":e}function w(){var e,t="";if(this.isNative())t="native";else{!(e=this.getScriptNameOrSourceURL())&&this.isEval()&&(t=this.getEvalOrigin(),t+=", "),t+=e||"<anonymous>";var r=this.getLineNumber();if(null!=r){t+=":"+r;var n=this.getColumnNumber();n&&(t+=":"+n)}}var i="",a=this.getFunctionName(),o=!0,s=this.isConstructor();if(!(this.isToplevel()||s)){var c=this.getTypeName();"[object Object]"===c&&(c="null");var l=this.getMethodName();a?(c&&0!=a.indexOf(c)&&(i+=c+"."),i+=a,l&&a.indexOf("."+l)!=a.length-l.length-1&&(i+=" [as "+l+"]")):i+=c+"."+(l||"<anonymous>")}else s?i+="new "+(a||"<anonymous>"):a?i+=a:(i+=t,o=!1);return o&&(i+=" ("+t+")"),i}function D(e){var t={};return Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach((function(r){t[r]=/^(?:is|get)/.test(r)?function(){return e[r].call(e)}:e[r]})),t.toString=w,t}function E(e,t){if(void 0===t&&(t={nextPosition:null,curPosition:null}),e.isNative())return t.curPosition=null,e;var r=e.getFileName()||e.getScriptNameOrSourceURL();if(r){var n=e.getLineNumber(),i=e.getColumnNumber()-1,a=/^v(10\.1[6-9]|10\.[2-9][0-9]|10\.[0-9]{3,}|1[2-9]\d*|[2-9]\d|\d{3,}|11\.11)/.test("object"==typeof process&&null!==process?process.version:"")?0:62;1===n&&i>a&&!h()&&!e.isEval()&&(i-=a);var o=x({source:r,line:n,column:i});t.curPosition=o;var s=(e=D(e)).getFunctionName;return e.getFunctionName=function(){return null==t.nextPosition?s():t.nextPosition.name||s()},e.getFileName=function(){return o.source},e.getLineNumber=function(){return o.line},e.getColumnNumber=function(){return o.column+1},e.getScriptNameOrSourceURL=function(){return o.source},e}var c=e.isEval()&&e.getEvalOrigin();return c?(c=S(c),(e=D(e)).getEvalOrigin=function(){return c},e):e}function T(e,t){u&&(p={},f={});for(var r=(e.name||"Error")+": "+(e.message||""),n={nextPosition:null,curPosition:null},i=[],a=t.length-1;a>=0;a--)i.push("\n at "+E(t[a],n)),n.nextPosition=n.curPosition;return n.curPosition=n.nextPosition=null,r+i.reverse().join("")}function C(e){var t=/\n at [^(]+ \((.*):(\d+):(\d+)\)/.exec(e.stack);if(t){var r=t[1],i=+t[2],a=+t[3],o=p[r];if(!o&&n&&n.existsSync(r))try{o=n.readFileSync(r,"utf8")}catch(e){o=""}if(o){var s=o.split(/(?:\r\n|\r|\n)/)[i-1];if(s)return r+":"+i+"\n"+s+"\n"+new Array(a).join(" ")+"^"}}return null}function A(e){var t=C(e),r=function(){if("object"==typeof process&&null!==process)return process.stderr}();r&&r._handle&&r._handle.setBlocking&&r._handle.setBlocking(!0),t&&(console.error(),console.error(t)),console.error(e.stack),function(e){if("object"==typeof process&&null!==process&&"function"==typeof process.exit)process.exit(e)}(1)}_.push((function(e){var t,r=function(e){var t;if(h())try{var r=new XMLHttpRequest;r.open("GET",e,!1),r.send(null),t=4===r.readyState?r.responseText:null;var n=r.getResponseHeader("SourceMap")||r.getResponseHeader("X-SourceMap");if(n)return n}catch(e){}t=v(e);for(var i,a,o=/(?:\/\/[@#][\s]*sourceMappingURL=([^\s'"]+)[\s]*$)|(?:\/\*[@#][\s]*sourceMappingURL=([^\s*'"]+)[\s]*(?:\*\/)[\s]*$)/gm;a=o.exec(t);)i=a;return i?i[1]:null}(e);if(!r)return null;if(m.test(r)){var n=r.slice(r.indexOf(",")+1);t=o(n,"base64").toString(),r=e}else r=b(e,r),t=v(r);return t?{url:r,map:t}:null}));var N=g.slice(0),P=_.slice(0);t.wrapCallSite=E,t.getErrorSource=C,t.mapSourcePosition=x,t.retrieveSourceMap=k,t.install=function(t){if((t=t||{}).environment&&(d=t.environment,-1===["node","browser","auto"].indexOf(d)))throw new Error("environment "+d+" was unknown. Available options are {auto, browser, node}");if(t.retrieveFile&&(t.overrideRetrieveFile&&(g.length=0),g.unshift(t.retrieveFile)),t.retrieveSourceMap&&(t.overrideRetrieveSourceMap&&(_.length=0),_.unshift(t.retrieveSourceMap)),t.hookRequire&&!h()){var r=s(e,"module"),n=r.prototype._compile;n.__sourceMapSupport||(r.prototype._compile=function(e,t){return p[t]=e,f[t]=void 0,n.call(this,e,t)},r.prototype._compile.__sourceMapSupport=!0)}if(u||(u="emptyCacheBetweenOperations"in t&&t.emptyCacheBetweenOperations),c||(c=!0,Error.prepareStackTrace=T),!l){var i=!("handleUncaughtExceptions"in t)||t.handleUncaughtExceptions;try{!1===s(e,"worker_threads").isMainThread&&(i=!1)}catch(e){}i&&"object"==typeof process&&null!==process&&"function"==typeof process.on&&(l=!0,a=process.emit,process.emit=function(e){if("uncaughtException"===e){var t=arguments[1]&&arguments[1].stack,r=this.listeners(e).length>0;if(t&&!r)return A(arguments[1])}return a.apply(this,arguments)})}var a},t.resetRetrieveHandlers=function(){g.length=0,_.length=0,g=N.slice(0),_=P.slice(0),k=y(_),v=y(g)}},80735:(e,t,r)=>{var n=r(90251),i=Object.prototype.hasOwnProperty,a="undefined"!=typeof Map;function o(){this._array=[],this._set=a?new Map:Object.create(null)}o.fromArray=function(e,t){for(var r=new o,n=0,i=e.length;n<i;n++)r.add(e[n],t);return r},o.prototype.size=function(){return a?this._set.size:Object.getOwnPropertyNames(this._set).length},o.prototype.add=function(e,t){var r=a?e:n.toSetString(e),o=a?this.has(e):i.call(this._set,r),s=this._array.length;o&&!t||this._array.push(e),o||(a?this._set.set(e,s):this._set[r]=s)},o.prototype.has=function(e){if(a)return this._set.has(e);var t=n.toSetString(e);return i.call(this._set,t)},o.prototype.indexOf=function(e){if(a){var t=this._set.get(e);if(t>=0)return t}else{var r=n.toSetString(e);if(i.call(this._set,r))return this._set[r]}throw new Error('"'+e+'" is not in the set.')},o.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)},o.prototype.toArray=function(){return this._array.slice()},t.C=o},17092:(e,t,r)=>{var n=r(32364);t.encode=function(e){var t,r="",i=function(e){return e<0?1+(-e<<1):0+(e<<1)}(e);do{t=31&i,(i>>>=5)>0&&(t|=32),r+=n.encode(t)}while(i>0);return r},t.decode=function(e,t,r){var i,a,o,s,c=e.length,l=0,u=0;do{if(t>=c)throw new Error("Expected more digits in base 64 VLQ value.");if(-1===(a=n.decode(e.charCodeAt(t++))))throw new Error("Invalid base64 digit: "+e.charAt(t-1));i=!!(32&a),l+=(a&=31)<<u,u+=5}while(i);r.value=(s=(o=l)>>1,1&~o?s:-s),r.rest=t}},32364:(e,t)=>{var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");t.encode=function(e){if(0<=e&&e<r.length)return r[e];throw new TypeError("Must be between 0 and 63: "+e)},t.decode=function(e){return 65<=e&&e<=90?e-65:97<=e&&e<=122?e-97+26:48<=e&&e<=57?e-48+52:43==e?62:47==e?63:-1}},41163:(e,t)=>{function r(e,n,i,a,o,s){var c=Math.floor((n-e)/2)+e,l=o(i,a[c],!0);return 0===l?c:l>0?n-c>1?r(c,n,i,a,o,s):s==t.LEAST_UPPER_BOUND?n<a.length?n:-1:c:c-e>1?r(e,c,i,a,o,s):s==t.LEAST_UPPER_BOUND?c:e<0?-1:e}t.GREATEST_LOWER_BOUND=1,t.LEAST_UPPER_BOUND=2,t.search=function(e,n,i,a){if(0===n.length)return-1;var o=r(-1,n.length,e,n,i,a||t.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&0===i(n[o],n[o-1],!0);)--o;return o}},43302:(e,t,r)=>{var n=r(90251);function i(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}i.prototype.unsortedForEach=function(e,t){this._array.forEach(e,t)},i.prototype.add=function(e){var t,r,i,a,o,s;t=this._last,r=e,i=t.generatedLine,a=r.generatedLine,o=t.generatedColumn,s=r.generatedColumn,a>i||a==i&&s>=o||n.compareByGeneratedPositionsInflated(t,r)<=0?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},i.prototype.toArray=function(){return this._sorted||(this._array.sort(n.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},t.P=i},43801:(e,t)=>{function r(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function n(e,t,i,a){if(i<a){var o=i-1;r(e,(u=i,d=a,Math.round(u+Math.random()*(d-u))),a);for(var s=e[a],c=i;c<a;c++)t(e[c],s)<=0&&r(e,o+=1,c);r(e,o+1,c);var l=o+1;n(e,t,i,l-1),n(e,t,l+1,a)}var u,d}t.g=function(e,t){n(e,t,0,e.length-1)}},47446:(e,t,r)=>{var n=r(90251),i=r(41163),a=r(80735).C,o=r(17092),s=r(43801).g;function c(e,t){var r=e;return"string"==typeof e&&(r=n.parseSourceMapInput(e)),null!=r.sections?new d(r,t):new l(r,t)}function l(e,t){var r=e;"string"==typeof e&&(r=n.parseSourceMapInput(e));var i=n.getArg(r,"version"),o=n.getArg(r,"sources"),s=n.getArg(r,"names",[]),c=n.getArg(r,"sourceRoot",null),l=n.getArg(r,"sourcesContent",null),u=n.getArg(r,"mappings"),d=n.getArg(r,"file",null);if(i!=this._version)throw new Error("Unsupported version: "+i);c&&(c=n.normalize(c)),o=o.map(String).map(n.normalize).map((function(e){return c&&n.isAbsolute(c)&&n.isAbsolute(e)?n.relative(c,e):e})),this._names=a.fromArray(s.map(String),!0),this._sources=a.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map((function(e){return n.computeSourceURL(c,e,t)})),this.sourceRoot=c,this.sourcesContent=l,this._mappings=u,this._sourceMapURL=t,this.file=d}function u(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}function d(e,t){var r=e;"string"==typeof e&&(r=n.parseSourceMapInput(e));var i=n.getArg(r,"version"),o=n.getArg(r,"sections");if(i!=this._version)throw new Error("Unsupported version: "+i);this._sources=new a,this._names=new a;var s={line:-1,column:0};this._sections=o.map((function(e){if(e.url)throw new Error("Support for url field in sections not implemented.");var r=n.getArg(e,"offset"),i=n.getArg(r,"line"),a=n.getArg(r,"column");if(i<s.line||i===s.line&&a<s.column)throw new Error("Section offsets must be ordered and non-overlapping.");return s=r,{generatedOffset:{generatedLine:i+1,generatedColumn:a+1},consumer:new c(n.getArg(e,"map"),t)}}))}c.fromSourceMap=function(e,t){return l.fromSourceMap(e,t)},c.prototype._version=3,c.prototype.__generatedMappings=null,Object.defineProperty(c.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),c.prototype.__originalMappings=null,Object.defineProperty(c.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),c.prototype._charIsMappingSeparator=function(e,t){var r=e.charAt(t);return";"===r||","===r},c.prototype._parseMappings=function(e,t){throw new Error("Subclasses must implement _parseMappings")},c.GENERATED_ORDER=1,c.ORIGINAL_ORDER=2,c.GREATEST_LOWER_BOUND=1,c.LEAST_UPPER_BOUND=2,c.prototype.eachMapping=function(e,t,r){var i,a=t||null;switch(r||c.GENERATED_ORDER){case c.GENERATED_ORDER:i=this._generatedMappings;break;case c.ORIGINAL_ORDER:i=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var o=this.sourceRoot;i.map((function(e){var t=null===e.source?null:this._sources.at(e.source);return{source:t=n.computeSourceURL(o,t,this._sourceMapURL),generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:null===e.name?null:this._names.at(e.name)}}),this).forEach(e,a)},c.prototype.allGeneratedPositionsFor=function(e){var t=n.getArg(e,"line"),r={source:n.getArg(e,"source"),originalLine:t,originalColumn:n.getArg(e,"column",0)};if(r.source=this._findSourceIndex(r.source),r.source<0)return[];var a=[],o=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",n.compareByOriginalPositions,i.LEAST_UPPER_BOUND);if(o>=0){var s=this._originalMappings[o];if(void 0===e.column)for(var c=s.originalLine;s&&s.originalLine===c;)a.push({line:n.getArg(s,"generatedLine",null),column:n.getArg(s,"generatedColumn",null),lastColumn:n.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++o];else for(var l=s.originalColumn;s&&s.originalLine===t&&s.originalColumn==l;)a.push({line:n.getArg(s,"generatedLine",null),column:n.getArg(s,"generatedColumn",null),lastColumn:n.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++o]}return a},t.SourceMapConsumer=c,l.prototype=Object.create(c.prototype),l.prototype.consumer=c,l.prototype._findSourceIndex=function(e){var t,r=e;if(null!=this.sourceRoot&&(r=n.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(t=0;t<this._absoluteSources.length;++t)if(this._absoluteSources[t]==e)return t;return-1},l.fromSourceMap=function(e,t){var r=Object.create(l.prototype),i=r._names=a.fromArray(e._names.toArray(),!0),o=r._sources=a.fromArray(e._sources.toArray(),!0);r.sourceRoot=e._sourceRoot,r.sourcesContent=e._generateSourcesContent(r._sources.toArray(),r.sourceRoot),r.file=e._file,r._sourceMapURL=t,r._absoluteSources=r._sources.toArray().map((function(e){return n.computeSourceURL(r.sourceRoot,e,t)}));for(var c=e._mappings.toArray().slice(),d=r.__generatedMappings=[],p=r.__originalMappings=[],f=0,m=c.length;f<m;f++){var g=c[f],_=new u;_.generatedLine=g.generatedLine,_.generatedColumn=g.generatedColumn,g.source&&(_.source=o.indexOf(g.source),_.originalLine=g.originalLine,_.originalColumn=g.originalColumn,g.name&&(_.name=i.indexOf(g.name)),p.push(_)),d.push(_)}return s(r.__originalMappings,n.compareByOriginalPositions),r},l.prototype._version=3,Object.defineProperty(l.prototype,"sources",{get:function(){return this._absoluteSources.slice()}}),l.prototype._parseMappings=function(e,t){for(var r,i,a,c,l,d=1,p=0,f=0,m=0,g=0,_=0,h=e.length,y=0,v={},b={},k=[],x=[];y<h;)if(";"===e.charAt(y))d++,y++,p=0;else if(","===e.charAt(y))y++;else{for((r=new u).generatedLine=d,c=y;c<h&&!this._charIsMappingSeparator(e,c);c++);if(a=v[i=e.slice(y,c)])y+=i.length;else{for(a=[];y<c;)o.decode(e,y,b),l=b.value,y=b.rest,a.push(l);if(2===a.length)throw new Error("Found a source, but no line and column");if(3===a.length)throw new Error("Found a source and line, but no column");v[i]=a}r.generatedColumn=p+a[0],p=r.generatedColumn,a.length>1&&(r.source=g+a[1],g+=a[1],r.originalLine=f+a[2],f=r.originalLine,r.originalLine+=1,r.originalColumn=m+a[3],m=r.originalColumn,a.length>4&&(r.name=_+a[4],_+=a[4])),x.push(r),"number"==typeof r.originalLine&&k.push(r)}s(x,n.compareByGeneratedPositionsDeflated),this.__generatedMappings=x,s(k,n.compareByOriginalPositions),this.__originalMappings=k},l.prototype._findMapping=function(e,t,r,n,a,o){if(e[r]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[r]);if(e[n]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[n]);return i.search(e,t,a,o)},l.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var r=this._generatedMappings[e+1];if(t.generatedLine===r.generatedLine){t.lastGeneratedColumn=r.generatedColumn-1;continue}}t.lastGeneratedColumn=1/0}},l.prototype.originalPositionFor=function(e){var t={generatedLine:n.getArg(e,"line"),generatedColumn:n.getArg(e,"column")},r=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",n.compareByGeneratedPositionsDeflated,n.getArg(e,"bias",c.GREATEST_LOWER_BOUND));if(r>=0){var i=this._generatedMappings[r];if(i.generatedLine===t.generatedLine){var a=n.getArg(i,"source",null);null!==a&&(a=this._sources.at(a),a=n.computeSourceURL(this.sourceRoot,a,this._sourceMapURL));var o=n.getArg(i,"name",null);return null!==o&&(o=this._names.at(o)),{source:a,line:n.getArg(i,"originalLine",null),column:n.getArg(i,"originalColumn",null),name:o}}}return{source:null,line:null,column:null,name:null}},l.prototype.hasContentsOfAllSources=function(){return!!this.sourcesContent&&(this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some((function(e){return null==e})))},l.prototype.sourceContentFor=function(e,t){if(!this.sourcesContent)return null;var r=this._findSourceIndex(e);if(r>=0)return this.sourcesContent[r];var i,a=e;if(null!=this.sourceRoot&&(a=n.relative(this.sourceRoot,a)),null!=this.sourceRoot&&(i=n.urlParse(this.sourceRoot))){var o=a.replace(/^file:\/\//,"");if("file"==i.scheme&&this._sources.has(o))return this.sourcesContent[this._sources.indexOf(o)];if((!i.path||"/"==i.path)&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(t)return null;throw new Error('"'+a+'" is not in the SourceMap.')},l.prototype.generatedPositionFor=function(e){var t=n.getArg(e,"source");if((t=this._findSourceIndex(t))<0)return{line:null,column:null,lastColumn:null};var r={source:t,originalLine:n.getArg(e,"line"),originalColumn:n.getArg(e,"column")},i=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",n.compareByOriginalPositions,n.getArg(e,"bias",c.GREATEST_LOWER_BOUND));if(i>=0){var a=this._originalMappings[i];if(a.source===r.source)return{line:n.getArg(a,"generatedLine",null),column:n.getArg(a,"generatedColumn",null),lastColumn:n.getArg(a,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},d.prototype=Object.create(c.prototype),d.prototype.constructor=c,d.prototype._version=3,Object.defineProperty(d.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var r=0;r<this._sections[t].consumer.sources.length;r++)e.push(this._sections[t].consumer.sources[r]);return e}}),d.prototype.originalPositionFor=function(e){var t={generatedLine:n.getArg(e,"line"),generatedColumn:n.getArg(e,"column")},r=i.search(t,this._sections,(function(e,t){var r=e.generatedLine-t.generatedOffset.generatedLine;return r||e.generatedColumn-t.generatedOffset.generatedColumn})),a=this._sections[r];return a?a.consumer.originalPositionFor({line:t.generatedLine-(a.generatedOffset.generatedLine-1),column:t.generatedColumn-(a.generatedOffset.generatedLine===t.generatedLine?a.generatedOffset.generatedColumn-1:0),bias:e.bias}):{source:null,line:null,column:null,name:null}},d.prototype.hasContentsOfAllSources=function(){return this._sections.every((function(e){return e.consumer.hasContentsOfAllSources()}))},d.prototype.sourceContentFor=function(e,t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r].consumer.sourceContentFor(e,!0);if(n)return n}if(t)return null;throw new Error('"'+e+'" is not in the SourceMap.')},d.prototype.generatedPositionFor=function(e){for(var t=0;t<this._sections.length;t++){var r=this._sections[t];if(-1!==r.consumer._findSourceIndex(n.getArg(e,"source"))){var i=r.consumer.generatedPositionFor(e);if(i)return{line:i.line+(r.generatedOffset.generatedLine-1),column:i.column+(r.generatedOffset.generatedLine===i.line?r.generatedOffset.generatedColumn-1:0)}}}return{line:null,column:null}},d.prototype._parseMappings=function(e,t){this.__generatedMappings=[],this.__originalMappings=[];for(var r=0;r<this._sections.length;r++)for(var i=this._sections[r],a=i.consumer._generatedMappings,o=0;o<a.length;o++){var c=a[o],l=i.consumer._sources.at(c.source);l=n.computeSourceURL(i.consumer.sourceRoot,l,this._sourceMapURL),this._sources.add(l),l=this._sources.indexOf(l);var u=null;c.name&&(u=i.consumer._names.at(c.name),this._names.add(u),u=this._names.indexOf(u));var d={source:l,generatedLine:c.generatedLine+(i.generatedOffset.generatedLine-1),generatedColumn:c.generatedColumn+(i.generatedOffset.generatedLine===c.generatedLine?i.generatedOffset.generatedColumn-1:0),originalLine:c.originalLine,originalColumn:c.originalColumn,name:u};this.__generatedMappings.push(d),"number"==typeof d.originalLine&&this.__originalMappings.push(d)}s(this.__generatedMappings,n.compareByGeneratedPositionsDeflated),s(this.__originalMappings,n.compareByOriginalPositions)}},54041:(e,t,r)=>{var n=r(17092),i=r(90251),a=r(80735).C,o=r(43302).P;function s(e){e||(e={}),this._file=i.getArg(e,"file",null),this._sourceRoot=i.getArg(e,"sourceRoot",null),this._skipValidation=i.getArg(e,"skipValidation",!1),this._sources=new a,this._names=new a,this._mappings=new o,this._sourcesContents=null}s.prototype._version=3,s.fromSourceMap=function(e){var t=e.sourceRoot,r=new s({file:e.file,sourceRoot:t});return e.eachMapping((function(e){var n={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(n.source=e.source,null!=t&&(n.source=i.relative(t,n.source)),n.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(n.name=e.name)),r.addMapping(n)})),e.sources.forEach((function(n){var a=n;null!==t&&(a=i.relative(t,n)),r._sources.has(a)||r._sources.add(a);var o=e.sourceContentFor(n);null!=o&&r.setSourceContent(n,o)})),r},s.prototype.addMapping=function(e){var t=i.getArg(e,"generated"),r=i.getArg(e,"original",null),n=i.getArg(e,"source",null),a=i.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,r,n,a),null!=n&&(n=String(n),this._sources.has(n)||this._sources.add(n)),null!=a&&(a=String(a),this._names.has(a)||this._names.add(a)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=r&&r.line,originalColumn:null!=r&&r.column,source:n,name:a})},s.prototype.setSourceContent=function(e,t){var r=e;null!=this._sourceRoot&&(r=i.relative(this._sourceRoot,r)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[i.toSetString(r)]=t):this._sourcesContents&&(delete this._sourcesContents[i.toSetString(r)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},s.prototype.applySourceMap=function(e,t,r){var n=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');n=e.file}var o=this._sourceRoot;null!=o&&(n=i.relative(o,n));var s=new a,c=new a;this._mappings.unsortedForEach((function(t){if(t.source===n&&null!=t.originalLine){var a=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=a.source&&(t.source=a.source,null!=r&&(t.source=i.join(r,t.source)),null!=o&&(t.source=i.relative(o,t.source)),t.originalLine=a.line,t.originalColumn=a.column,null!=a.name&&(t.name=a.name))}var l=t.source;null==l||s.has(l)||s.add(l);var u=t.name;null==u||c.has(u)||c.add(u)}),this),this._sources=s,this._names=c,e.sources.forEach((function(t){var n=e.sourceContentFor(t);null!=n&&(null!=r&&(t=i.join(r,t)),null!=o&&(t=i.relative(o,t)),this.setSourceContent(t,n))}),this)},s.prototype._validateMapping=function(e,t,r,n){if(t&&"number"!=typeof t.line&&"number"!=typeof t.column)throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||r||n)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&r))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:r,original:t,name:n}))},s.prototype._serializeMappings=function(){for(var e,t,r,a,o=0,s=1,c=0,l=0,u=0,d=0,p="",f=this._mappings.toArray(),m=0,g=f.length;m<g;m++){if(e="",(t=f[m]).generatedLine!==s)for(o=0;t.generatedLine!==s;)e+=";",s++;else if(m>0){if(!i.compareByGeneratedPositionsInflated(t,f[m-1]))continue;e+=","}e+=n.encode(t.generatedColumn-o),o=t.generatedColumn,null!=t.source&&(a=this._sources.indexOf(t.source),e+=n.encode(a-d),d=a,e+=n.encode(t.originalLine-1-l),l=t.originalLine-1,e+=n.encode(t.originalColumn-c),c=t.originalColumn,null!=t.name&&(r=this._names.indexOf(t.name),e+=n.encode(r-u),u=r)),p+=e}return p},s.prototype._generateSourcesContent=function(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=i.relative(t,e));var r=i.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null}),this)},s.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},s.prototype.toString=function(){return JSON.stringify(this.toJSON())},t.x=s},1683:(e,t,r)=>{var n=r(54041).x,i=r(90251),a=/(\r?\n)/,o="$$$isSourceNode$$$";function s(e,t,r,n,i){this.children=[],this.sourceContents={},this.line=null==e?null:e,this.column=null==t?null:t,this.source=null==r?null:r,this.name=null==i?null:i,this[o]=!0,null!=n&&this.add(n)}s.fromStringWithSourceMap=function(e,t,r){var n=new s,o=e.split(a),c=0,l=function(){return e()+(e()||"");function e(){return c<o.length?o[c++]:void 0}},u=1,d=0,p=null;return t.eachMapping((function(e){if(null!==p){if(!(u<e.generatedLine)){var t=(r=o[c]||"").substr(0,e.generatedColumn-d);return o[c]=r.substr(e.generatedColumn-d),d=e.generatedColumn,f(p,t),void(p=e)}f(p,l()),u++,d=0}for(;u<e.generatedLine;)n.add(l()),u++;if(d<e.generatedColumn){var r=o[c]||"";n.add(r.substr(0,e.generatedColumn)),o[c]=r.substr(e.generatedColumn),d=e.generatedColumn}p=e}),this),c<o.length&&(p&&f(p,l()),n.add(o.splice(c).join(""))),t.sources.forEach((function(e){var a=t.sourceContentFor(e);null!=a&&(null!=r&&(e=i.join(r,e)),n.setSourceContent(e,a))})),n;function f(e,t){if(null===e||void 0===e.source)n.add(t);else{var a=r?i.join(r,e.source):e.source;n.add(new s(e.originalLine,e.originalColumn,a,t,e.name))}}},s.prototype.add=function(e){if(Array.isArray(e))e.forEach((function(e){this.add(e)}),this);else{if(!e[o]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);e&&this.children.push(e)}return this},s.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[o]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},s.prototype.walk=function(e){for(var t,r=0,n=this.children.length;r<n;r++)(t=this.children[r])[o]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},s.prototype.join=function(e){var t,r,n=this.children.length;if(n>0){for(t=[],r=0;r<n-1;r++)t.push(this.children[r]),t.push(e);t.push(this.children[r]),this.children=t}return this},s.prototype.replaceRight=function(e,t){var r=this.children[this.children.length-1];return r[o]?r.replaceRight(e,t):"string"==typeof r?this.children[this.children.length-1]=r.replace(e,t):this.children.push("".replace(e,t)),this},s.prototype.setSourceContent=function(e,t){this.sourceContents[i.toSetString(e)]=t},s.prototype.walkSourceContents=function(e){for(var t=0,r=this.children.length;t<r;t++)this.children[t][o]&&this.children[t].walkSourceContents(e);var n=Object.keys(this.sourceContents);for(t=0,r=n.length;t<r;t++)e(i.fromSetString(n[t]),this.sourceContents[n[t]])},s.prototype.toString=function(){var e="";return this.walk((function(t){e+=t})),e},s.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},r=new n(e),i=!1,a=null,o=null,s=null,c=null;return this.walk((function(e,n){t.code+=e,null!==n.source&&null!==n.line&&null!==n.column?(a===n.source&&o===n.line&&s===n.column&&c===n.name||r.addMapping({source:n.source,original:{line:n.line,column:n.column},generated:{line:t.line,column:t.column},name:n.name}),a=n.source,o=n.line,s=n.column,c=n.name,i=!0):i&&(r.addMapping({generated:{line:t.line,column:t.column}}),a=null,i=!1);for(var l=0,u=e.length;l<u;l++)10===e.charCodeAt(l)?(t.line++,t.column=0,l+1===u?(a=null,i=!1):i&&r.addMapping({source:n.source,original:{line:n.line,column:n.column},generated:{line:t.line,column:t.column},name:n.name})):t.column++})),this.walkSourceContents((function(e,t){r.setSourceContent(e,t)})),{code:t.code,map:r}}},90251:(e,t)=>{t.getArg=function(e,t,r){if(t in e)return e[t];if(3===arguments.length)return r;throw new Error('"'+t+'" is a required argument.')};var r=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,n=/^data:.+\,.+$/;function i(e){var t=e.match(r);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function a(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}function o(e){var r=e,n=i(e);if(n){if(!n.path)return e;r=n.path}for(var o,s=t.isAbsolute(r),c=r.split(/\/+/),l=0,u=c.length-1;u>=0;u--)"."===(o=c[u])?c.splice(u,1):".."===o?l++:l>0&&(""===o?(c.splice(u+1,l),l=0):(c.splice(u,2),l--));return""===(r=c.join("/"))&&(r=s?"/":"."),n?(n.path=r,a(n)):r}function s(e,t){""===e&&(e="."),""===t&&(t=".");var r=i(t),s=i(e);if(s&&(e=s.path||"/"),r&&!r.scheme)return s&&(r.scheme=s.scheme),a(r);if(r||t.match(n))return t;if(s&&!s.host&&!s.path)return s.host=t,a(s);var c="/"===t.charAt(0)?t:o(e.replace(/\/+$/,"")+"/"+t);return s?(s.path=c,a(s)):c}t.urlParse=i,t.urlGenerate=a,t.normalize=o,t.join=s,t.isAbsolute=function(e){return"/"===e.charAt(0)||r.test(e)},t.relative=function(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var r=0;0!==t.indexOf(e+"/");){var n=e.lastIndexOf("/");if(n<0)return t;if((e=e.slice(0,n)).match(/^([^\/]+:\/)?\/*$/))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)};var c=!("__proto__"in Object.create(null));function l(e){return e}function u(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var r=t-10;r>=0;r--)if(36!==e.charCodeAt(r))return!1;return!0}function d(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}t.toSetString=c?l:function(e){return u(e)?"$"+e:e},t.fromSetString=c?l:function(e){return u(e)?e.slice(1):e},t.compareByOriginalPositions=function(e,t,r){var n=d(e.source,t.source);return 0!==n||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)||r||0!==(n=e.generatedColumn-t.generatedColumn)||0!==(n=e.generatedLine-t.generatedLine)?n:d(e.name,t.name)},t.compareByGeneratedPositionsDeflated=function(e,t,r){var n=e.generatedLine-t.generatedLine;return 0!==n||0!==(n=e.generatedColumn-t.generatedColumn)||r||0!==(n=d(e.source,t.source))||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)?n:d(e.name,t.name)},t.compareByGeneratedPositionsInflated=function(e,t){var r=e.generatedLine-t.generatedLine;return 0!==r||0!==(r=e.generatedColumn-t.generatedColumn)||0!==(r=d(e.source,t.source))||0!==(r=e.originalLine-t.originalLine)||0!==(r=e.originalColumn-t.originalColumn)?r:d(e.name,t.name)},t.parseSourceMapInput=function(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))},t.computeSourceURL=function(e,t,r){if(t=t||"",e&&("/"!==e[e.length-1]&&"/"!==t[0]&&(e+="/"),t=e+t),r){var n=i(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var c=n.path.lastIndexOf("/");c>=0&&(n.path=n.path.substring(0,c+1))}t=s(a(n),t)}return o(t)}},19665:(e,t,r)=>{r(54041).x,t.SourceMapConsumer=r(47446).SourceMapConsumer,r(1683)},83141:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=l,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=u,this.end=d,t=3;break;default:return this.write=p,void(this.end=f)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function u(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function p(e){return e.toString(this.encoding)}function f(e){return e&&e.length?this.write(e):""}t.I=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<e.length?t?t+this.text(e,r):this.text(e,r):t||""},a.prototype.end=function(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"�":t},a.prototype.text=function(e,t){var r=function(e,t,r){var n=t.length-1;if(n<r)return 0;var i=o(t[n]);if(i>=0)return i>0&&(e.lastNeed=i-1),i;if(--n<r||-2===i)return 0;if(i=o(t[n]),i>=0)return i>0&&(e.lastNeed=i-2),i;if(--n<r||-2===i)return 0;if(i=o(t[n]),i>=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},82414:(e,t,r)=>{var n=r(39023),i=r(44829),a=r(3481),o=r(34198).Writable,s=r(34198).PassThrough,c=function(){},l=function(e){return(e&=511)&&512-e},u=function(e,t){this._parent=e,this.offset=t,s.call(this,{autoDestroy:!1})};n.inherits(u,s),u.prototype.destroy=function(e){this._parent.destroy(e)};var d=function(e){if(!(this instanceof d))return new d(e);o.call(this,e),e=e||{},this._offset=0,this._buffer=i(),this._missing=0,this._partial=!1,this._onparse=c,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var t=this,r=t._buffer,n=function(){t._continue()},s=function(e){if(t._locked=!1,e)return t.destroy(e);t._stream||n()},p=function(){t._stream=null;var e=l(t._header.size);e?t._parse(e,f):t._parse(512,y),t._locked||n()},f=function(){t._buffer.consume(l(t._header.size)),t._parse(512,y),n()},m=function(){var e=t._header.size;t._paxGlobal=a.decodePax(r.slice(0,e)),r.consume(e),p()},g=function(){var e=t._header.size;t._pax=a.decodePax(r.slice(0,e)),t._paxGlobal&&(t._pax=Object.assign({},t._paxGlobal,t._pax)),r.consume(e),p()},_=function(){var n=t._header.size;this._gnuLongPath=a.decodeLongPath(r.slice(0,n),e.filenameEncoding),r.consume(n),p()},h=function(){var n=t._header.size;this._gnuLongLinkPath=a.decodeLongPath(r.slice(0,n),e.filenameEncoding),r.consume(n),p()},y=function(){var i,o=t._offset;try{i=t._header=a.decode(r.slice(0,512),e.filenameEncoding,e.allowUnknownFormat)}catch(e){t.emit("error",e)}return r.consume(512),i?"gnu-long-path"===i.type?(t._parse(i.size,_),void n()):"gnu-long-link-path"===i.type?(t._parse(i.size,h),void n()):"pax-global-header"===i.type?(t._parse(i.size,m),void n()):"pax-header"===i.type?(t._parse(i.size,g),void n()):(t._gnuLongPath&&(i.name=t._gnuLongPath,t._gnuLongPath=null),t._gnuLongLinkPath&&(i.linkname=t._gnuLongLinkPath,t._gnuLongLinkPath=null),t._pax&&(t._header=i=function(e,t){return t.path&&(e.name=t.path),t.linkpath&&(e.linkname=t.linkpath),t.size&&(e.size=parseInt(t.size,10)),e.pax=t,e}(i,t._pax),t._pax=null),t._locked=!0,i.size&&"directory"!==i.type?(t._stream=new u(t,o),t.emit("entry",i,t._stream,s),t._parse(i.size,p),void n()):(t._parse(512,y),void t.emit("entry",i,function(e,t){var r=new u(e,t);return r.end(),r}(t,o),s))):(t._parse(512,y),void n())};this._onheader=y,this._parse(512,y)};n.inherits(d,o),d.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.emit("close"))},d.prototype._parse=function(e,t){this._destroyed||(this._offset+=e,this._missing=e,t===this._onheader&&(this._partial=!1),this._onparse=t)},d.prototype._continue=function(){if(!this._destroyed){var e=this._cb;this._cb=c,this._overflow?this._write(this._overflow,void 0,e):e()}},d.prototype._write=function(e,t,r){if(!this._destroyed){var n=this._stream,i=this._buffer,a=this._missing;if(e.length&&(this._partial=!0),e.length<a)return this._missing-=e.length,this._overflow=null,n?n.write(e,r):(i.append(e),r());this._cb=r,this._missing=0;var o=null;e.length>a&&(o=e.slice(a),e=e.slice(0,a)),n?n.end(e):i.append(e),this._overflow=o,this._onparse()}},d.prototype._final=function(e){if(this._partial)return this.destroy(new Error("Unexpected end of data"));e()},e.exports=d},3481:(e,t)=>{var r=Buffer.alloc,n="0".charCodeAt(0),i=Buffer.from("ustar\0","binary"),a=Buffer.from("00","binary"),o=Buffer.from("ustar ","binary"),s=Buffer.from(" \0","binary"),c=parseInt("7777",8),l=257,u=function(e,t,r,n){for(;r<n;r++)if(e[r]===t)return r;return n},d=function(e){for(var t=256,r=0;r<148;r++)t+=e[r];for(var n=156;n<512;n++)t+=e[n];return t},p=function(e,t){return(e=e.toString(8)).length>t?"7777777777777777777".slice(0,t)+" ":"0000000000000000000".slice(0,t-e.length)+e+" "};var f=function(e,t,r){if(128&(e=e.slice(t,t+r))[t=0])return function(e){var t;if(128===e[0])t=!0;else{if(255!==e[0])return null;t=!1}for(var r=[],n=e.length-1;n>0;n--){var i=e[n];t?r.push(i):r.push(255-i)}var a=0,o=r.length;for(n=0;n<o;n++)a+=r[n]*Math.pow(256,n);return t?a:-1*a}(e);for(;t<e.length&&32===e[t];)t++;for(var n=(i=u(e,32,t,e.length),a=e.length,o=e.length,"number"!=typeof i?o:(i=~~i)>=a?a:i>=0||(i+=a)>=0?i:0);t<n&&0===e[t];)t++;return n===t?0:parseInt(e.slice(t,n).toString(),8);var i,a,o},m=function(e,t,r,n){return e.slice(t,u(e,0,t,t+r)).toString(n)},g=function(e){var t=Buffer.byteLength(e),r=Math.floor(Math.log(t)/Math.log(10))+1;return t+r>=Math.pow(10,r)&&r++,t+r+e};t.decodeLongPath=function(e,t){return m(e,0,e.length,t)},t.encodePax=function(e){var t="";e.name&&(t+=g(" path="+e.name+"\n")),e.linkname&&(t+=g(" linkpath="+e.linkname+"\n"));var r=e.pax;if(r)for(var n in r)t+=g(" "+n+"="+r[n]+"\n");return Buffer.from(t)},t.decodePax=function(e){for(var t={};e.length;){for(var r=0;r<e.length&&32!==e[r];)r++;var n=parseInt(e.slice(0,r).toString(),10);if(!n)return t;var i=e.slice(r+1,n-1).toString(),a=i.indexOf("=");if(-1===a)return t;t[i.slice(0,a)]=i.slice(a+1),e=e.slice(n)}return t},t.encode=function(e){var t=r(512),o=e.name,s="";if(5===e.typeflag&&"/"!==o[o.length-1]&&(o+="/"),Buffer.byteLength(o)!==o.length)return null;for(;Buffer.byteLength(o)>100;){var u=o.indexOf("/");if(-1===u)return null;s+=s?"/"+o.slice(0,u):o.slice(0,u),o=o.slice(u+1)}return Buffer.byteLength(o)>100||Buffer.byteLength(s)>155||e.linkname&&Buffer.byteLength(e.linkname)>100?null:(t.write(o),t.write(p(e.mode&c,6),100),t.write(p(e.uid,6),108),t.write(p(e.gid,6),116),t.write(p(e.size,11),124),t.write(p(e.mtime.getTime()/1e3|0,11),136),t[156]=n+function(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}(e.type),e.linkname&&t.write(e.linkname,157),i.copy(t,l),a.copy(t,263),e.uname&&t.write(e.uname,265),e.gname&&t.write(e.gname,297),t.write(p(e.devmajor||0,6),329),t.write(p(e.devminor||0,6),337),s&&t.write(s,345),t.write(p(d(t),6),148),t)},t.decode=function(e,t,r){var a=0===e[156]?0:e[156]-n,c=m(e,0,100,t),u=f(e,100,8),p=f(e,108,8),g=f(e,116,8),_=f(e,124,12),h=f(e,136,12),y=function(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}(a),v=0===e[157]?null:m(e,157,100,t),b=m(e,265,32),k=m(e,297,32),x=f(e,329,8),S=f(e,337,8),w=d(e);if(256===w)return null;if(w!==f(e,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(0===i.compare(e,l,263))e[345]&&(c=m(e,345,155,t)+"/"+c);else if(0===o.compare(e,l,263)&&0===s.compare(e,263,265));else if(!r)throw new Error("Invalid tar header: unknown format.");return 0===a&&c&&"/"===c[c.length-1]&&(a=5),{name:c,mode:u,uid:p,gid:g,size:_,mtime:new Date(1e3*h),type:y,linkname:v,uname:b,gname:k,devmajor:x,devminor:S}}},44231:(e,t,r)=>{t.extract=r(82414),t.pack=r(38065)},38065:(e,t,r)=>{var n=r(72170),i=r(26611),a=r(72017),o=Buffer.alloc,s=r(34198).Readable,c=r(34198).Writable,l=r(13193).StringDecoder,u=r(3481),d=parseInt("755",8),p=parseInt("644",8),f=o(1024),m=function(){},g=function(e,t){(t&=511)&&e.push(f.slice(0,512-t))};var _=function(e){c.call(this),this.written=0,this._to=e,this._destroyed=!1};a(_,c),_.prototype._write=function(e,t,r){if(this.written+=e.length,this._to.push(e))return r();this._to._drain=r},_.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var h=function(){c.call(this),this.linkname="",this._decoder=new l("utf-8"),this._destroyed=!1};a(h,c),h.prototype._write=function(e,t,r){this.linkname+=this._decoder.write(e),r()},h.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var y=function(){c.call(this),this._destroyed=!1};a(y,c),y.prototype._write=function(e,t,r){r(new Error("No body allowed for this entry"))},y.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var v=function(e){if(!(this instanceof v))return new v(e);s.call(this,e),this._drain=m,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};a(v,s),v.prototype.entry=function(e,t,r){if(this._stream)throw new Error("already piping an entry");if(!this._finalized&&!this._destroyed){"function"==typeof t&&(r=t,t=null),r||(r=m);var a=this;if(e.size&&"symlink"!==e.type||(e.size=0),e.type||(e.type=function(e){switch(e&n.S_IFMT){case n.S_IFBLK:return"block-device";case n.S_IFCHR:return"character-device";case n.S_IFDIR:return"directory";case n.S_IFIFO:return"fifo";case n.S_IFLNK:return"symlink"}return"file"}(e.mode)),e.mode||(e.mode="directory"===e.type?d:p),e.uid||(e.uid=0),e.gid||(e.gid=0),e.mtime||(e.mtime=new Date),"string"==typeof t&&(t=Buffer.from(t)),Buffer.isBuffer(t)){e.size=t.length,this._encode(e);var o=this.push(t);return g(a,e.size),o?process.nextTick(r):this._drain=r,new y}if("symlink"===e.type&&!e.linkname){var s=new h;return i(s,(function(t){if(t)return a.destroy(),r(t);e.linkname=s.linkname,a._encode(e),r()})),s}if(this._encode(e),"file"!==e.type&&"contiguous-file"!==e.type)return process.nextTick(r),new y;var c=new _(this);return this._stream=c,i(c,(function(t){return a._stream=null,t?(a.destroy(),r(t)):c.written!==e.size?(a.destroy(),r(new Error("size mismatch"))):(g(a,e.size),a._finalizing&&a.finalize(),void r())})),c}},v.prototype.finalize=function(){this._stream?this._finalizing=!0:this._finalized||(this._finalized=!0,this.push(f),this.push(null))},v.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())},v.prototype._encode=function(e){if(!e.pax){var t=u.encode(e);if(t)return void this.push(t)}this._encodePax(e)},v.prototype._encodePax=function(e){var t=u.encodePax({name:e.name,linkname:e.linkname,pax:e.pax}),r={name:"PaxHeader",mode:e.mode,uid:e.uid,gid:e.gid,size:t.length,mtime:e.mtime,type:"pax-header",linkname:e.linkname&&"PaxHeader",uname:e.uname,gname:e.gname,devmajor:e.devmajor,devminor:e.devminor};this.push(u.encode(r)),this.push(t),g(this,t.length),r.size=e.size,r.type=e.type,this.push(u.encode(r))},v.prototype._read=function(e){var t=this._drain;this._drain=m,t()},e.exports=v},35083:(e,t,r)=>{ -/*! - * Tmp - * - * Copyright (c) 2011-2017 KARASZI Istvan <github@spam.raszi.hu> - * - * MIT Licensed - */ -const n=r(79896),i=r(70857),a=r(16928),o=r(76982),s={fs:n.constants,os:i.constants},c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",l=/XXXXXX/,u=3,d=(s.O_CREAT||s.fs.O_CREAT)|(s.O_EXCL||s.fs.O_EXCL)|(s.O_RDWR||s.fs.O_RDWR),p="win32"===i.platform(),f=s.EBADF||s.os.errno.EBADF,m=s.ENOENT||s.os.errno.ENOENT,g=[],_=n.rmdirSync.bind(n);let h=!1;function y(e,t){return n.rm(e,{recursive:!0},t)}function v(e){return n.rmSync(e,{recursive:!0})}function b(e,t){const r=A(e,t),i=r[0],a=r[1];try{P(i)}catch(e){return a(e)}let o=i.tries;!function e(){try{const t=N(i);n.stat(t,(function(r){if(!r)return o-- >0?e():a(new Error("Could not get a unique tmp filename, max tries reached "+t));a(null,t)}))}catch(e){a(e)}}()}function k(e){const t=A(e)[0];P(t);let r=t.tries;do{const e=N(t);try{n.statSync(e)}catch(t){return e}}while(r-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}function x(e,t){const r=function(e){if(e&&!O(e))return t(e);t()};0<=e[0]?n.close(e[0],(function(){n.unlink(e[1],r)})):n.unlink(e[1],r)}function S(e){let t=null;try{0<=e[0]&&n.closeSync(e[0])}catch(e){if(!(r=e,R(r,-f,"EBADF")||O(e)))throw e}finally{try{n.unlinkSync(e[1])}catch(e){O(e)||(t=e)}}var r;if(null!==t)throw t}function w(e,t,r,n){const i=E(S,[t,e],n),a=E(x,[t,e],n,i);return r.keep||g.unshift(i),n?i:a}function D(e,t,r){const i=t.unsafeCleanup?y:n.rmdir.bind(n),a=E(t.unsafeCleanup?v:_,e,r),o=E(i,e,r,a);return t.keep||g.unshift(a),r?a:o}function E(e,t,r,n){let i=!1;return function a(o){if(!i){const s=n||a,c=g.indexOf(s);return c>=0&&g.splice(c,1),i=!0,r||e===_||e===v?e(t):e(t,o||function(){})}}}function T(e){let t=[],r=null;try{r=o.randomBytes(e)}catch(t){r=o.pseudoRandomBytes(e)}for(var n=0;n<e;n++)t.push(c[r[n]%c.length]);return t.join("")}function C(e){return void 0===e}function A(e,t){if("function"==typeof e)return[{},e];if(C(e))return[{},t];const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=e[t];return[r,t]}function N(e){const t=e.tmpdir;if(!C(e.name))return a.join(t,e.dir,e.name);if(!C(e.template))return a.join(t,e.dir,e.template).replace(l,T(6));const r=[e.prefix?e.prefix:"tmp","-",process.pid,"-",T(12),e.postfix?"-"+e.postfix:""].join("");return a.join(t,e.dir,r)}function P(e){e.tmpdir=M(e);const t=e.tmpdir;if(C(e.name)||F(e.name,"name",t),C(e.dir)||F(e.dir,"dir",t),!C(e.template)&&(F(e.template,"template",t),!e.template.match(l)))throw new Error(`Invalid template, found "${e.template}".`);if(!C(e.tries)&&isNaN(e.tries)||e.tries<0)throw new Error(`Invalid tries, found "${e.tries}".`);var r;e.tries=C(e.name)?e.tries||u:1,e.keep=!!e.keep,e.detachDescriptor=!!e.detachDescriptor,e.discardDescriptor=!!e.discardDescriptor,e.unsafeCleanup=!!e.unsafeCleanup,e.dir=C(e.dir)?"":a.relative(t,I(e.dir,t)),e.template=C(e.template)?void 0:a.relative(t,I(e.template,t)),e.template=null===(r=e.template)||C(r)||!r.trim()?void 0:a.relative(e.dir,e.template),e.name=C(e.name)?void 0:e.name,e.prefix=C(e.prefix)?"":e.prefix,e.postfix=C(e.postfix)?"":e.postfix}function I(e,t){return e.startsWith(t)?a.resolve(e):a.resolve(a.join(t,e))}function F(e,t,r){if("name"===t){if(a.isAbsolute(e))throw new Error(`${t} option must not contain an absolute path, found "${e}".`);let r=a.basename(e);if(".."===r||"."===r||r!==e)throw new Error(`${t} option must not contain a path, found "${e}".`)}else{if(a.isAbsolute(e)&&!e.startsWith(r))throw new Error(`${t} option must be relative to "${r}", found "${e}".`);let n=I(e,r);if(!n.startsWith(r))throw new Error(`${t} option must be relative to "${r}", found "${n}".`)}}function O(e){return R(e,-m,"ENOENT")}function R(e,t,r){return p?e.code===r:e.code===r&&e.errno===t}function M(e){return a.resolve(e&&e.tmpdir||i.tmpdir())}process.addListener("exit",(function(){if(h)for(;g.length;)try{g[0]()}catch(e){}})),Object.defineProperty(e.exports,"tmpdir",{enumerable:!0,configurable:!1,get:function(){return M()}}),e.exports.dir=function(e,t){const r=A(e,t),i=r[0],a=r[1];b(i,(function(e,t){if(e)return a(e);n.mkdir(t,i.mode||448,(function(e){if(e)return a(e);a(null,t,D(t,i,!1))}))}))},e.exports.dirSync=function(e){const t=A(e)[0],r=k(t);return n.mkdirSync(r,t.mode||448),{name:r,removeCallback:D(r,t,!0)}},e.exports.file=function(e,t){const r=A(e,t),i=r[0],a=r[1];b(i,(function(e,t){if(e)return a(e);n.open(t,d,i.mode||384,(function(e,r){if(e)return a(e);if(i.discardDescriptor)return n.close(r,(function(e){return a(e,t,void 0,w(t,-1,i,!1))}));{const e=i.discardDescriptor||i.detachDescriptor;a(null,t,r,w(t,e?-1:r,i,!1))}}))}))},e.exports.fileSync=function(e){const t=A(e)[0],r=t.discardDescriptor||t.detachDescriptor,i=k(t);var a=n.openSync(i,d,t.mode||384);return t.discardDescriptor&&(n.closeSync(a),a=void 0),{name:i,fd:a,removeCallback:w(i,r?-1:a,t,!0)}},e.exports.tmpName=b,e.exports.tmpNameSync=k,e.exports.setGracefulCleanup=function(){h=!0}},36623:e=>{function t(e){if(!(this instanceof t))return new t(e);this.value=e}function r(e,t,r){var i=[],a=[],o=!0;return function e(s){var c=r?n(s):s,l={},u={node:c,node_:s,path:[].concat(i),parent:a.slice(-1)[0],key:i.slice(-1)[0],isRoot:0===i.length,level:i.length,circular:null,update:function(e){u.isRoot||(u.parent.node[u.key]=e),u.node=e},delete:function(){delete u.parent.node[u.key]},remove:function(){Array.isArray(u.parent.node)?u.parent.node.splice(u.key,1):delete u.parent.node[u.key]},before:function(e){l.before=e},after:function(e){l.after=e},pre:function(e){l.pre=e},post:function(e){l.post=e},stop:function(){o=!1}};if(!o)return u;if("object"==typeof c&&null!==c){u.isLeaf=0==Object.keys(c).length;for(var d=0;d<a.length;d++)if(a[d].node_===s){u.circular=a[d];break}}else u.isLeaf=!0;u.notLeaf=!u.isLeaf,u.notRoot=!u.isRoot;var p=t.call(u,u.node);if(void 0!==p&&u.update&&u.update(p),l.before&&l.before.call(u,u.node),"object"==typeof u.node&&null!==u.node&&!u.circular){a.push(u);var f=Object.keys(u.node);f.forEach((function(t,n){i.push(t),l.pre&&l.pre.call(u,u.node[t],t);var a=e(u.node[t]);r&&Object.hasOwnProperty.call(u.node,t)&&(u.node[t]=a.node),a.isLast=n==f.length-1,a.isFirst=0==n,l.post&&l.post.call(u,a),i.pop()})),a.pop()}return l.after&&l.after.call(u,u.node),u}(e).node}function n(e){var t;return"object"==typeof e&&null!==e?(t=Array.isArray(e)?[]:e instanceof Date?new Date(e):e instanceof Boolean?new Boolean(e):e instanceof Number?new Number(e):e instanceof String?new String(e):Object.create(Object.getPrototypeOf(e)),Object.keys(e).forEach((function(r){t[r]=e[r]})),t):e}e.exports=t,t.prototype.get=function(e){for(var t=this.value,r=0;r<e.length;r++){var n=e[r];if(!Object.hasOwnProperty.call(t,n)){t=void 0;break}t=t[n]}return t},t.prototype.set=function(e,t){for(var r=this.value,n=0;n<e.length-1;n++){var i=e[n];Object.hasOwnProperty.call(r,i)||(r[i]={}),r=r[i]}return r[e[n]]=t,t},t.prototype.map=function(e){return r(this.value,e,!0)},t.prototype.forEach=function(e){return this.value=r(this.value,e,!1),this.value},t.prototype.reduce=function(e,t){var r=1===arguments.length,n=r?this.value:t;return this.forEach((function(t){this.isRoot&&r||(n=e.call(this,n,t))})),n},t.prototype.deepEqual=function(e){if(1!==arguments.length)throw new Error("deepEqual requires exactly one object to compare against");var r=!0,n=e;return this.forEach((function(i){var a=function(){r=!1}.bind(this);if(!this.isRoot){if("object"!=typeof n)return a();n=n[this.key]}var o=n;this.post((function(){n=o}));var s=function(e){return Object.prototype.toString.call(e)};if(this.circular)t(e).get(this.circular.path)!==o&&a();else if(typeof o!=typeof i)a();else if(null===o||null===i||void 0===o||void 0===i)o!==i&&a();else if(o.__proto__!==i.__proto__)a();else if(o===i);else if("function"==typeof o)o instanceof RegExp?o.toString()!=i.toString()&&a():o!==i&&a();else if("object"==typeof o)if("[object Arguments]"===s(i)||"[object Arguments]"===s(o))s(o)!==s(i)&&a();else if(o instanceof Date||i instanceof Date)o instanceof Date&&i instanceof Date&&o.getTime()===i.getTime()||a();else{var c=Object.keys(o),l=Object.keys(i);if(c.length!==l.length)return a();for(var u=0;u<c.length;u++){var d=c[u];Object.hasOwnProperty.call(i,d)||a()}}})),r},t.prototype.paths=function(){var e=[];return this.forEach((function(t){e.push(this.path)})),e},t.prototype.nodes=function(){var e=[];return this.forEach((function(t){e.push(this.node)})),e},t.prototype.clone=function(){var e=[],t=[];return function r(i){for(var a=0;a<e.length;a++)if(e[a]===i)return t[a];if("object"==typeof i&&null!==i){var o=n(i);return e.push(i),t.push(o),Object.keys(i).forEach((function(e){o[e]=r(i[e])})),e.pop(),t.pop(),o}return i}(this.value)},Object.keys(t.prototype).forEach((function(e){t[e]=function(r){var n=[].slice.call(arguments,1),i=t(r);return i[e].apply(i,n)}}))},77926:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.toolNameMethod=t.joinNewMessage=t.joinOldMessage=t.Plugin=t.formatSet=t.formatType=t.toolNameSet=t.toolNameType=void 0;const i=n(r(16928)),a=n(r(79896)),o=r(35317),s=r(27944),c=r(40745),l=r(4e3),u=r(30871),d=r(26499),p=r(40149),f=r(20043),m=r(40744),g=r(8136),_=r(12587),h=r(87191),y=r(80879),v=r(22127);var b,k;!function(e){e.COLLECT="collect",e.CHECK="check",e.CHECKONLINE="checkOnline",e.DIFF="diff",e.LABELDETECTION="detection",e.COUNT="count"}(b=t.toolNameType||(t.toolNameType={})),t.toolNameSet=new Set(s.EnumUtils.enum2arr(b)),function(e){e.NULL="",e.JSON="json",e.EXCEL="excel",e.CHANGELOG="changelog"}(k=t.formatType||(t.formatType={})),t.formatSet=new Set(s.EnumUtils.enum2arr(k)),t.Plugin={pluginOptions:{name:"parser",version:"0.1.0",description:"Compare the parser the SDKS",commands:[{isRequiredOption:!0,options:[`-N,--tool-name <${[...t.toolNameSet]}>`,"tool name ","checkOnline"]},{isRequiredOption:!1,options:["-C,--collect-path <string>","collect api path","./api"]},{isRequiredOption:!1,options:["-F,--collect-file <string>","collect api file array",""]},{isRequiredOption:!1,options:["--path <string>","check api path, split with comma",""]},{isRequiredOption:!1,options:["--checker <string>","check api rule, split with comma","all"]},{isRequiredOption:!1,options:["--excel <string>","check api excel","false"]},{isRequiredOption:!1,options:["--old <string>","diff old sdk path","./api"]},{isRequiredOption:!1,options:["--new <string>","diff new sdk path","./api"]},{isRequiredOption:!1,options:["--old-version <string>","old sdk version","0"]},{isRequiredOption:!1,options:["--new-version <string>","new sdk version","0"]},{isRequiredOption:!1,options:["--output <string>","output file path","./"]},{isRequiredOption:!1,options:[`--format <${[...t.formatSet]}>`,"output file format","json"]},{isRequiredOption:!1,options:["--changelogUrl <string>","changelog url",""]}]},start:async function(e){const r=e.toolName,n=t.toolNameMethod.get(r);if(!n)return void l.LogUtil.i("CommandArgs","tool-name may use error name or don't have function,tool-name can use 'collect' or 'diff'");const i={toolName:r,collectPath:e.collectPath,collectFile:e.collectFile,path:e.path,checker:e.checker,old:e.old,new:e.new,oldVersion:e.oldVersion,newVersion:e.newVersion,output:e.output,format:e.format,changelogUrl:e.changelogUrl,excel:e.excel},a=n(i);!function(e,t,r){const n=t.format;let i=`${t.toolName}_${t.oldVersion}_${t.newVersion}.json`;if(!n)return;t.toolName===b.COUNT&&(i="api_kit_js.json");switch(n){case k.JSON:f.WriterHelper.JSONReporter(String(e[0]),t.output,i);break;case k.EXCEL:f.WriterHelper.ExcelReporter(e,t.output,`${t.toolName}.xlsx`,r);break;case k.CHANGELOG:f.WriterHelper.JSONReporter(String(e[0]),t.output,`${t.toolName}.json`)}}(a.data,i,a.callback)},stop:function(){l.LogUtil.i("commander","elapsed time: "+(Date.now()-x))}};let x=Date.now();function S(e,t){const r=new Set,n=y.FunctionUtils.readKitFile(),i=n.subsystemMap,a=n.kitNameMap;t.name="JsApi",t.views=[{xSplit:1}],t.getRow(1).values=["模块名","类名","方法名","函数","类型","起始版本","废弃版本","syscap","错误码","是否为系统API","模型限制","权限","是否支持跨平台","是否支持卡片应用","是否为高阶API","装饰器","kit","文件路径","子系统"];let o=2;e.forEach((e=>{const n=`${e.getHierarchicalRelations()},${e.getDefinedText()}`;r.has(n)||(t.getRow(o).values=[e.getPackageName(),e.getParentModuleName(),e.getApiName(),e.getDefinedText(),e.getApiType(),"-1"===e.getSince()?"":e.getSince(),"-1"===e.getDeprecatedVersion()?"":e.getDeprecatedVersion(),e.getSyscap(),"-1"===e.getErrorCodes().join()?"":e.getErrorCodes().join(),e.getApiLevel(),e.getModelLimitation(),e.getPermission(),e.getIsCrossPlatForm(),e.getIsForm(),e.getIsAutomicService(),e.getDecorators()?.join(),""===e.getKitInfo()?a.get(e.getFilePath().replace(/\\/g,"/")):e.getKitInfo(),e.getFilePath(),i.get(e.getFilePath().replace(/\\/g,"/"))],o++,r.add(n))}))}function w(e,t){t.name="api数量",t.views=[{xSplit:1}],t.getRow(1).values=["子系统","kit","文件","api数量"],e.forEach(((e,r)=>{t.getRow(r+g.NumberConstant.LINE_IN_EXCEL).values=[e.getsubSystem(),e.getKitName(),e.getFilePath(),e.getApiNumber()]}))}function D(e,t,r){t.name="api差异",t.views=[{xSplit:1}],t.getRow(1).values=["操作标记","差异项-旧版本","差异项-新版本","d.ts文件","归属子系统","kit"],e.forEach(((e,r)=>{const n=e.getNewDtsName()?e.getNewDtsName():e.getOldDtsName();t.getRow(r+g.NumberConstant.LINE_IN_EXCEL).values=[p.diffTypeMap.get(e.getDiffType()),E(e),T(e),n.replace(/\\/g,"/"),h.SyscapProcessorHelper.matchSubsystem(e),h.SyscapProcessorHelper.getSingleKitInfo(e)]})),f.WriterHelper.MarkdownReporter.writeInMarkdown(e,r)}function E(e){if(e.getDiffMessage()===p.diffTypeMap.get(p.ApiDiffType.ADD))return"NA";let t="";const r=e.getOldHierarchicalRelations(),n=e.getParentModuleName(r);return t="-1"!==e.getOldDescription()&&e.getOldDescription()?e.getOldDescription():"NA",e.getDiffType()===p.ApiDiffType.KIT_CHANGE?`${t}`:`类名:${n};\nAPI声明:${e.getOldApiDefinedText()}\n差异内容:${t}`}function T(e){if(e.getDiffMessage()===p.diffTypeMap.get(p.ApiDiffType.REDUCE))return"NA";let t="";const r=e.getNewHierarchicalRelations(),n=e.getParentModuleName(r);return t="-1"!==e.getNewDescription()&&e.getNewDescription()?e.getNewDescription():"NA",e.getDiffType()===p.ApiDiffType.KIT_CHANGE?`${t}`:`类名:${n};\nAPI声明:${e.getNewApiDefinedText()}\n差异内容:${t}`}t.joinOldMessage=E,t.joinNewMessage=T,t.toolNameMethod=new Map([[b.COLLECT,function(e){const t=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectPath);let r,n="";""!==e.collectFile&&(n=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectFile));try{r=c.FileUtils.isDirectory(t)?u.Parser.parseDir(t,n):u.Parser.parseFile(i.default.resolve(t,".."),t);const a=u.Parser.getParseResults(r);if("excel"===e.format){const t=_.ApiStatisticsHelper.getApiStatisticsInfos(r).allApiStatisticsInfos;t&&f.WriterHelper.ExcelReporter(t,e.output,`all_${e.toolName}.xlsx`,S)}return{data:"excel"===e.format?_.ApiStatisticsHelper.getApiStatisticsInfos(r).apiStatisticsInfos:[a],callback:S}}catch(e){const t=e;return l.LogUtil.e("error collect",t.stack?t.stack:t.message),{data:[],callback:S}}}],[b.CHECK,function(e){try{let t=[];0;let r=[];return r=e.format===k.JSON?[JSON.stringify(t,null,g.NumberConstant.INDENT_SPACE)]:t,{data:r}}catch(e){const t=e;return l.LogUtil.e("error check",t.stack?t.stack:t.message),{data:[]}}}],[b.CHECKONLINE,function(e){e.format=k.NULL;try{return m.LocalEntry.checkEntryLocal(e.path.split(","),e.checker.split(","),e.output,e.excel),{data:[]}}catch(e){const t=e;l.LogUtil.e("error check",t.stack?t.stack:t.message)}return{data:[]}}],[b.DIFF,function(e){const t=i.default.resolve(c.FileUtils.getBaseDirName(),e.old),r=i.default.resolve(c.FileUtils.getBaseDirName(),e.new),n=a.default.statSync(t);let o=[];try{if(n.isDirectory()){const e=u.Parser.parseDir(t),n=u.Parser.parseDir(r);o=d.DiffHelper.diffSDK(e,n)}else{const e=u.Parser.parseFile(i.default.resolve(t,".."),t),n=u.Parser.parseFile(i.default.resolve(r,".."),r);o=d.DiffHelper.diffSDK(e,n)}let a=[];return a=e.format===k.JSON?[JSON.stringify(o,null,g.NumberConstant.INDENT_SPACE)]:o,{data:a,callback:D}}catch(e){const t=e;return l.LogUtil.e("error diff",t.stack?t.stack:t.message),{data:[],callback:D}}}],[b.LABELDETECTION,function(e){process.env.NEED_DETECTION="true",e.format=k.NULL;const t=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectPath);let r,n="";""!==e.collectFile&&(n=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectFile));let a=Buffer.from("");try{r=c.FileUtils.isDirectory(t)?u.Parser.parseDir(t,n):u.Parser.parseFile(i.default.resolve(t,".."),t);const s=u.Parser.getParseResults(r);f.WriterHelper.JSONReporter(s,i.default.dirname(e.output),"detection.json");let l="";l=`python ${i.default.resolve(c.FileUtils.getBaseDirName(),"./main.exe")} -N detection -P ${i.default.resolve(i.default.dirname(e.output),"detection.json")} -O ${i.default.resolve(e.output)}`,a=o.execSync(l,{timeout:12e4})}catch(e){const t=e;l.LogUtil.e("error collect",t.stack?t.stack:t.message)}return{data:[]}}],[b.COUNT,function(e){const t=i.default.resolve(c.FileUtils.getBaseDirName(),"../../api");let r,n="";""!==e.collectFile&&(n=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectFile));try{r=c.FileUtils.isDirectory(t)?u.Parser.parseDir(t,n):u.Parser.parseFile(i.default.resolve(t,".."),t);const a=_.ApiStatisticsHelper.getApiStatisticsInfos(r).apiStatisticsInfos,o=v.ApiCountHelper.countApi(a);let s=[];return s=e.format===k.JSON?[JSON.stringify(o,null,g.NumberConstant.INDENT_SPACE)]:o,{data:s,callback:w}}catch(e){const t=e;return l.LogUtil.e("error count",t.stack?t.stack:t.message),{data:[],callback:w}}}]])},11162:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getToolConfiguration=void 0;const n=r(77926);t.getToolConfiguration=function(){return{plugins:[n.Plugin]}}},20043:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WriterHelper=void 0;const i=n(r(6752)),a=n(r(16928)),o=n(r(79896)),s=r(4e3),c=r(77926),l=r(40149),u=r(87191);!function(e){e.JSONReporter=function(e,t,r){const n=a.default.resolve(t,r);o.default.writeFileSync(n,e),s.LogUtil.i("JSONReporter",`report is in ${n}`)},e.ExcelReporter=async function(e,t,r,n){const c=new i.default.Workbook,l=c.addWorksheet();"function"==typeof n&&n(e,l,t);const u=await c.xlsx.writeBuffer(),d=a.default.resolve(t,r);o.default.writeFileSync(d,u),s.LogUtil.i("ExcelReporter",`report is in ${d}`)};class t{static writeInMarkdown(e,r){t.getAllKitInfo(e).forEach((n=>{let i=[];e.forEach((e=>{u.SyscapProcessorHelper.getSingleKitInfo(e)===n&&i.push(e)})),0!==i.length&&t.sortDiffInfoByStatus(i,n,r)}))}static getAllKitInfo(e){const t=new Set;return e.forEach((e=>{t.add(e.getOldKitInfo()),t.add(e.getNewKitInfo())})),t}static getSingleKitInfo(e){return""!==e.getNewKitInfo()?e.getNewKitInfo():e.getOldKitInfo()}static sortDiffInfoByStatus(e,r,n){const i=[];for(const t of l.diffTypeMap.keys())e.forEach((e=>{e.getDiffType()===t&&i.push(e)}));t.exportDiffMd(r,i,n)}static exportDiffMd(e,r,n){let i="| 操作 | 旧版本 | 新版本 | d.ts文件 |\n| ---- | ------ | ------ | -------- |\n";for(let e=0;e<r.length;e++){let n=r[e];const a=n.getNewDtsName()?n.getNewDtsName():n.getOldDtsName();i+=`|${l.diffTypeMap.get(n.getDiffType())}|${t.formatDiffMessage(c.joinOldMessage(n))}|${t.formatDiffMessage(c.joinNewMessage(n))}|${a.replace(/\\/g,"/")}|\n`}const a=`${n}\\diff合集`;o.default.existsSync(a)||o.default.mkdirSync(a),o.default.writeFileSync(`${n}\\diff合集\\js-apidiff-${e}.md`,i)}static formatDiffMessage(e){return e.replace(/\r|\n/g,"<br>").replace(/\|/g,"\\|").replace(/\<(?!br>)/g,"\\<")}}e.MarkdownReporter=t}(t.WriterHelper||(t.WriterHelper={}))},88189:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(16928));t.default={NODE_ENV:"development",EVN_CONFIG:"dev",DIR_NAME:i.default.resolve(__dirname,"../.."),NEED_DETECTION:""}},59620:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(88189)),a=n(r(88463)),o="production",s={development:i.default,production:a.default};Object.assign(process.env,s[o]),t.default=s[o]},88463:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(16928));t.default={NODE_ENV:"production",EVN_CONFIG:"prod",DIR_NAME:i.default.resolve(__dirname,".."),NEED_DETECTION:""}},40744:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LocalEntry=void 0;const n=r(77002),i=r(13930),a=r(4e3),o=r(93333),s=r(93333),c=r(61574);class l{static checkEntryLocal(e,t,r,n){let c=s.apiCheckResult;try{i.Check.scanEntry(e),l.maskAlarm(s.compositiveResult,t)}catch(e){a.LogUtil.e("API_CHECK_ERROR",e)}finally{o.GenerateFile.writeFile(s.apiCheckResult,r,{}),"true"===n&&o.GenerateFile.writeExcelFile(s.compositiveLocalResult)}return c}static maskAlarm(e,t){const r=1===t.length&&"all"===t[0],i=new Map(Object.entries({...c.DOC,...c.DEFINE,...c.CHANEGE}));let a=new Set;r?a=new Set([...i.values()]):t.forEach((e=>{const t=i.get(e);t&&a.add(t)}));l.filterAllResultInfo(e,i,a).forEach((e=>{const t=new n.ApiResultMessage;t.setFilePath(e.filePath).setLocation(e.location).setLevel(e.level).setType(e.type).setMessage(e.message).setMainBuggyCode(e.apiText).setMainBuggyLine(e.location),s.apiCheckResult.push(t)}))}static filterAllResultInfo(e,t,r){return e.filter((e=>{let n=e.message.replace(/API check error of \[.*\]: /g,"");if(/\d/g.test(n)&&(n=n.replace(/\d+/g,"1")),/Prohibited word in \[.*\]:{option}.The word allowed is \[.*\]\./g.test(n)&&(n=JSON.stringify(t.get("API_DEFINE_NAME_01")).replace(/\"/g,"")),/Prohibited word in \[.*\]:{ability} in the \[.*\] file\./g.test(n)&&(n=JSON.stringify(t.get("API_DEFINE_NAME_02")).replace(/\"/g,"")),/This name \[.*\] should be named by/g.test(n)&&(n=n.replace(/\[.*\]/g,"[XXXX]")),r.has(n)){const r=l.filterApiCheckInfos(t,n);""!==r&&e.setType(r)}return r.has(n)}))}static filterApiCheckInfos(e,t){for(let[r,n]of e.entries())if(n===t)return r;return""}}t.LocalEntry=l},13930:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Check=void 0;const i=n(r(79896)),a=r(30871),o=r(44791),s=r(77002),c=r(93333),l=r(95721),u=r(6300),d=r(18e3),p=r(36944),f=r(31575),m=r(2543),g=r(28912),_=r(56795),h=r(95769),y=r(23978),v=r(58010),b=r(37798),k=r(26150),x=r(53438);class S{static scanEntry(e){k.ApiChangeCheck.checkApiChange(),e.forEach(((e,t)=>{if(-1!==e.indexOf("build-tools"))return;console.log(`scaning file in no ${++t}!`);const r=S.parseAPICodeStyle(e),n=a.Parser.getAllBasicApi(r);S.checkNodeInfos(n);const i=r.get(e);i&&v.CheckHump.checkAPIFileName(i),v.CheckHump.checkAllAPINameOfHump(n),_.WordsCheck.wordCheckResultsProcessing(n);const o=new b.EventMethodChecker(r),s=o.getAllEventMethod();o.checkEventMethod(s)}))}static getMdFiles(e){return i.default.readFileSync(e,"utf-8").split(/[(\r\n)\r\n]+/)}static parseAPICodeStyle(e){const t=e.substring(0,e.lastIndexOf("\\"));return a.Parser.parseFile(t,e)}static checkNodeInfos(e){let t=[];S.getHasJsdocApiInfos(e,t),t.forEach((e=>{const t=e.getLastJsDocInfo();if(void 0===t)return void f.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.NO_JSDOC_ID,s.ErrorLevel.MIDDLE,e.getFilePath(),e.getPos(),s.ErrorType.NO_JSDOC,s.LogType.LOG_JSDOC,-1,e.getApiName(),e.getJsDocText()+e.getDefinedText(),s.ErrorMessage.ERROR_NO_JSDOC,c.compositiveResult,c.compositiveLocalResult);const r=d.LegalityCheck.apiLegalityCheck(e,t),n=l.OrderCheck.orderCheck(e,t),i=y.ApiNamingCheck.namingCheck(e),a=u.TagNameCheck.tagNameCheck(t),o=x.TagInheritCheck.tagInheritCheck(e),_=g.TagValueCheck.tagValueCheck(e,t),v=p.TagRepeatCheck.tagRepeatCheck(t),b=h.ForbiddenWordsCheck.forbiddenWordsCheck(e);if(n.state||f.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.WRONG_ORDER_ID,s.ErrorLevel.MIDDLE,e.getFilePath(),e.getPos(),s.ErrorType.WRONG_ORDER,s.LogType.LOG_JSDOC,m.toNumber(t.since),e.getApiName(),e.getDefinedText(),n.errorInfo,c.compositiveResult,c.compositiveLocalResult),a.state||f.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.UNKNOW_DECORATOR_ID,s.ErrorLevel.MIDDLE,e.getFilePath(),e.getPos(),s.ErrorType.UNKNOW_DECORATOR,s.LogType.LOG_JSDOC,m.toNumber(t.since),e.getApiName(),e.getDefinedText(),a.errorInfo,c.compositiveResult,c.compositiveLocalResult),!b.state){/\.d\.ts/.test(e.getFilePath()),/any/.test(b.errorInfo);f.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.FORBIDDEN_WORDS_ID,s.ErrorLevel.MIDDLE,e.getFilePath(),e.getPos(),s.ErrorType.FORBIDDEN_WORDS,s.LogType.LOG_API,m.toNumber(t.since),e.getApiName(),e.getDefinedText(),b.errorInfo,c.compositiveResult,c.compositiveLocalResult)}i.state||f.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.NAMING_ERRORS_ID,s.ErrorLevel.MIDDLE,e.getFilePath(),e.getPos(),s.ErrorType.NAMING_ERRORS,s.LogType.LOG_API,m.toNumber(t.since),e.getApiName(),e.getDefinedText(),i.errorInfo,c.compositiveResult,c.compositiveLocalResult),o.state||f.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.WRONG_SCENE_ID,s.ErrorLevel.MIDDLE,e.getFilePath(),e.getPos(),s.ErrorType.WRONG_SCENE,s.LogType.LOG_JSDOC,m.toNumber(t.since),e.getApiName(),e.getDefinedText(),o.errorInfo,c.compositiveResult,c.compositiveLocalResult),r.forEach((r=>{!1===r.state&&f.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.WRONG_SCENE_ID,s.ErrorLevel.MIDDLE,e.getFilePath(),e.getPos(),s.ErrorType.WRONG_SCENE,s.LogType.LOG_JSDOC,m.toNumber(t.since),e.getApiName(),e.getDefinedText(),r.errorInfo,c.compositiveResult,c.compositiveLocalResult)})),_.forEach((r=>{!1===r.state&&f.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.WRONG_VALUE_ID,s.ErrorLevel.MIDDLE,e.getFilePath(),e.getPos(),s.ErrorType.WRONG_VALUE,s.LogType.LOG_JSDOC,m.toNumber(t.since),e.getApiName(),e.getDefinedText(),r.errorInfo,c.compositiveResult,c.compositiveLocalResult)})),v.forEach((r=>{!1===r.state&&f.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.WRONG_SCENE_ID,s.ErrorLevel.MIDDLE,e.getFilePath(),e.getPos(),s.ErrorType.WRONG_SCENE,s.LogType.LOG_JSDOC,m.toNumber(t.since),e.getApiName(),e.getDefinedText(),r.errorInfo,c.compositiveResult,c.compositiveLocalResult)}))}))}static getHasJsdocApiInfos(e,t){e.forEach((e=>{o.notJsDocApiTypes.has(e.getApiType())||t.push(e)}))}}t.Check=S},26150:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ApiChangeCheck=void 0;const i=n(r(16928)),a=n(r(79896)),o=r(30871),s=r(26499),c=r(40745),l=r(31575),u=r(93333),d=r(77002),p=r(40149);t.ApiChangeCheck=class{static checkApiChange(e){const t=i.default.resolve(c.FileUtils.getBaseDirName(),`../../../../../Archive/patch_info/openharmony_interface_sdk-js_${e}`);if(!a.default.existsSync(t))return;const r=i.default.resolve(t,"./old"),n=i.default.resolve(t,"./new");let f=[];if(a.default.statSync(r).isDirectory()){const e=o.Parser.parseDir(r),t=o.Parser.parseDir(n);f=s.DiffHelper.diffSDK(e,t,!0)}else{const e=o.Parser.parseFile(i.default.resolve(r,".."),r),t=o.Parser.parseFile(i.default.resolve(n,".."),n);f=s.DiffHelper.diffSDK(e,t,!0)}f.forEach((e=>{if(!1!==e.getIsCompatible())return;const t=d.incompatibleApiDiffTypes.get(e.getDiffType());if(e.getDiffType()===p.ApiDiffType.REDUCE){const r=i.default.basename(e.getOldDtsName());l.AddErrorLogs.addAPICheckErrorLogs(d.ErrorID.API_CHANGE_ERRORS_ID,d.ErrorLevel.MIDDLE,r,e.getOldPos(),d.ErrorType.API_CHANGE_ERRORS,d.LogType.LOG_API,-1,e.getOldApiName(),e.getOldApiDefinedText(),t,u.compositiveResult,u.compositiveLocalResult)}else{const r=i.default.basename(e.getNewDtsName());l.AddErrorLogs.addAPICheckErrorLogs(d.ErrorID.API_CHANGE_ERRORS_ID,d.ErrorLevel.MIDDLE,r,e.getOldPos(),d.ErrorType.API_CHANGE_ERRORS,d.LogType.LOG_API,-1,e.getNewApiName(),e.getNewApiDefinedText(),t,u.compositiveResult,u.compositiveLocalResult)}}))}}},58010:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.CheckHump=void 0;const i=n(r(16928)),a=r(31575),o=r(8136),s=r(77002),c=r(44791),l=r(93333),u=r(93333);class d{static checkLargeHump(e){return/^([A-Z][a-z0-9]*)*$/g.test(e)}static checkSmallHump(e){return/^[a-z]+[0-9]*([A-Z][a-z0-9]*)*$/g.test(e)}static checkAllUppercaseHump(e){return/^[A-Z]+[0-9]*([\_][A-Z0-9]+)*$/g.test(e)}static getApiInfosInFileMap(e,t){if(t===o.StringConstant.SELF)return[];return e.get(t).get(o.StringConstant.SELF)}static checkAllAPINameOfHump(e){e.forEach((e=>{c.notJsDocApiTypes.has(e.getApiType())||d.checkAPINameOfHump(e)}))}static checkAPINameOfHump(e){const t=e.getLastJsDocInfo();if(t){if("-1"!==t.getDeprecatedVersion())return;if(t.getSince()!==String(l.CommonFunctions.getCheckApiVersion()))return}const r=e.getApiType(),n=e.getFilePath(),o=e.getApiName();let p="";r===c.ApiType.ENUM_VALUE||r===c.ApiType.CONSTANT&&-1===n.indexOf(`component${i.default.sep}ets${i.default.sep}`)?d.checkAllUppercaseHump(o)||(p=l.CommonFunctions.createErrorInfo(s.ErrorMessage.ERROR_UPPERCASE_NAME,[o])):r===c.ApiType.INTERFACE||r===c.ApiType.CLASS||r===c.ApiType.TYPE_ALIAS||r===c.ApiType.ENUM?d.checkLargeHump(o)||(p=l.CommonFunctions.createErrorInfo(s.ErrorMessage.ERROR_LARGE_HUMP_NAME,[o])):r!==c.ApiType.PROPERTY&&r!==c.ApiType.METHOD&&r!==c.ApiType.PARAM&&r!==c.ApiType.NAMESPACE||d.checkSmallHump(o)||(p=l.CommonFunctions.createErrorInfo(s.ErrorMessage.ERROR_SMALL_HUMP_NAME,[o])),""!==p&&a.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.TS_SYNTAX_ERROR_ID,s.ErrorLevel.MIDDLE,n,e.getPos(),s.ErrorType.NAMING_ERRORS,s.LogType.LOG_API,-1,o,e.getDefinedText(),p,u.compositiveResult,u.compositiveLocalResult)}static checkAPIFileName(e){const t=e.get(o.StringConstant.SELF)[0];if(t.getApiType()!==c.ApiType.SOURCE_FILE)return;const r=t.getFilePath();if(-1!==r.indexOf(`component${i.default.sep}ets${i.default.sep}`))return;let n="",p="",f="NA";for(const t of e.keys()){d.getApiInfosInFileMap(e,t).forEach((e=>{if(!c.notJsDocApiTypes.has(e.getApiType())){const t=e.getJsDocInfos();f=t[0]?t[0].getSince():f}n=e.getApiType()===c.ApiType.NAMESPACE?e.getApiName():n,p=e.getApiType()===c.ApiType.EXPORT_DEFAULT?e.getApiName():p}))}const m=i.default.basename(r).replace(new RegExp(o.StringConstant.DTS_EXTENSION,"g"),"").split("."),g=m.length?m[m.length-1]:"";let _="";""===n||p!==n||d.checkSmallHump(g)?""!==n||p===n||d.checkLargeHump(g)||(_=s.ErrorMessage.ERROR_LARGE_HUMP_NAME_FILE):_=s.ErrorMessage.ERROR_SMALL_HUMP_NAME_FILE,""!==_&&f===String(l.CommonFunctions.getCheckApiVersion())&&a.AddErrorLogs.addAPICheckErrorLogs(s.ErrorID.MISSPELL_WORDS_ID,s.ErrorLevel.MIDDLE,r,{line:-1,character:-1},s.ErrorType.NAMING_ERRORS,s.LogType.LOG_API,-1,"NA","NA",_,u.compositiveResult,u.compositiveLocalResult)}}t.CheckHump=d},31575:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AddErrorLogs=void 0;const n=r(77002);t.AddErrorLogs=class{static addAPICheckErrorLogs(e,t,r,i,a,o,s,c,l,u,d,p){const f=JSON.stringify(i.line),m=`API check error of [${a}]: ${u}`,g=new n.ApiResultSimpleInfo;g.setID(e).setLevel(t).setLocation(f).setFilePath(r).setMessage(m).setApiText(l);const _=new n.ApiResultInfo;_.setErrorType(a).setLocation(f).setApiType(o).setMessage(m).setVersion(s).setLevel(t).setApiName(c).setApiFullText(l).setBaseName(r.substring(r.lastIndexOf("/")+1,r.length)),d.push(g),p.push(_)}}},37798:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.EventMethodChecker=void 0;const i=n(r(58843)),a=r(8136),o=r(77002),s=r(44791),c=r(93333),l=r(30871),u=r(31575),d=r(93333),p=r(58010);t.EventMethodChecker=class{constructor(e){this.apiData=e}getAllEventMethod(){const e=l.Parser.getAllBasicApi(this.apiData),t=[];e.forEach((e=>{const r=e.jsDocText.length>0?e.getLastJsDocInfo()?.since:"-1";e.apiType===s.ApiType.METHOD&&this.isEventMethod(e.apiName)&&r===c.CommonFunctions.getCheckApiVersion()&&t.push(e)}));return this.getEventMethodDataMap(t)}checkEventMethod(e){e.forEach((e=>{if(0===e.onEvents.length&&0!==e.offEvents.length||0!==e.onEvents.length&&0===e.offEvents.length){const t=e.onEvents.concat(e.offEvents)[0],r=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_ON_AND_OFF_PAIR,[]);u.AddErrorLogs.addAPICheckErrorLogs(o.ErrorID.API_PAIR_ERRORS_ID,o.ErrorLevel.MIDDLE,t.getFilePath(),t.getPos(),o.ErrorType.API_PAIR_ERRORS,o.LogType.LOG_API,parseInt(t.getCurrentVersion()),t.getApiName(),t.getDefinedText(),r,d.compositiveResult,d.compositiveLocalResult)}let t=0,r=0;for(let n=0;n<e.offEvents.length;n++){const i=e.offEvents[n];if(i.getParams().length<2)continue;const a=this.collectEventCallback(i,t,r);t=a.callbackNumber,r=a.requiredCallbackNumber}if(e.offEvents.length>0&&(0!==t&&t===e.offEvents.length&&t===r||0===t&&0!==e.offEvents.length)){const t=e.offEvents[0],r=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_CALLBACK_OPTIONAL,[]);u.AddErrorLogs.addAPICheckErrorLogs(o.ErrorID.PARAMETER_ERRORS_ID,o.ErrorLevel.MIDDLE,t.getFilePath(),t.getPos(),o.ErrorType.PARAMETER_ERRORS,o.LogType.LOG_API,parseInt(t.getCurrentVersion()),t.getApiName(),t.getDefinedText(),r,d.compositiveResult,d.compositiveLocalResult)}const n=e.onEvents.concat(e.offEvents).concat(e.emitEvents).concat(e.onceEvents);for(let e=0;e<n.length;e++){const t=n[e];if(!this.checkVersionNeedCheck(t))continue;const r=t.getParams();if(r.length<1){const e=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_WITHOUT_PARAMETER,[]);u.AddErrorLogs.addAPICheckErrorLogs(o.ErrorID.PARAMETER_ERRORS_ID,o.ErrorLevel.MIDDLE,t.getFilePath(),t.getPos(),o.ErrorType.PARAMETER_ERRORS,o.LogType.LOG_API,parseInt(t.getCurrentVersion()),t.getApiName(),t.getDefinedText(),e,d.compositiveResult,d.compositiveLocalResult);continue}const a=r[0];if(a.getParamType()===i.default.SyntaxKind.LiteralType){const e=a.getType()[0].replace(/\'/g,"");if(""===e){const e=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_NAME_NULL,[a.getApiName()]);u.AddErrorLogs.addAPICheckErrorLogs(o.ErrorID.PARAMETER_ERRORS_ID,o.ErrorLevel.MIDDLE,t.getFilePath(),t.getPos(),o.ErrorType.PARAMETER_ERRORS,o.LogType.LOG_API,parseInt(t.getCurrentVersion()),t.getApiName(),t.getDefinedText(),e,d.compositiveResult,d.compositiveLocalResult)}else if(!p.CheckHump.checkSmallHump(e)){const r=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_NAME_SMALL_HUMP,[e]);u.AddErrorLogs.addAPICheckErrorLogs(o.ErrorID.PARAMETER_ERRORS_ID,o.ErrorLevel.MIDDLE,t.getFilePath(),t.getPos(),o.ErrorType.PARAMETER_ERRORS,o.LogType.LOG_API,parseInt(t.getCurrentVersion()),t.getApiName(),t.getDefinedText(),r,d.compositiveResult,d.compositiveLocalResult)}}else if(a.getParamType()!==i.default.SyntaxKind.StringKeyword){const e=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_NAME_STRING,[a.getApiName()]);u.AddErrorLogs.addAPICheckErrorLogs(o.ErrorID.PARAMETER_ERRORS_ID,o.ErrorLevel.MIDDLE,t.getFilePath(),t.getPos(),o.ErrorType.PARAMETER_ERRORS,o.LogType.LOG_API,parseInt(t.getCurrentVersion()),t.getApiName(),t.getDefinedText(),e,d.compositiveResult,d.compositiveLocalResult)}}}))}checkVersionNeedCheck(e){return parseInt(e.getCurrentVersion())>=a.EventConstant.eventMethodCheckVersion}collectEventCallback(e,t,r){const n=e.getParams().slice(-1)[0];if(n.paramType){new Set([i.default.SyntaxKind.NumberKeyword,i.default.SyntaxKind.StringKeyword,i.default.SyntaxKind.BooleanKeyword,i.default.SyntaxKind.UndefinedKeyword,i.default.SyntaxKind.LiteralType]).has(n.paramType)||(t++,n.getIsRequired()&&r++)}return{callbackNumber:t,requiredCallbackNumber:r}}getEventMethodDataMap(e){let t=new Map;return e.forEach((e=>{const r=[...e.hierarchicalRelations];r.pop();const n=[...r,this.getEventName(e.apiName)].join("/");let i={onEvents:[],offEvents:[],emitEvents:[],onceEvents:[]};t.get(n)&&(i=t.get(n)),t.set(n,this.collectEventMethod(i,e))})),t}collectEventMethod(e,t){switch(this.getEventType(t.apiName)){case"on":e.onEvents.push(t);break;case"off":e.offEvents.push(t);break;case"emit":e.emitEvents.push(t);break;case"once":e.onceEvents.push(t)}return e}getEventName(e){return e.split(/\_/)[1]}getEventType(e){return e.split(/\_/)[0]}isEventMethod(e){return new RegExp(`^(${a.EventConstant.eventNameList.join("|")})_`).test(e)}}},95769:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ForbiddenWordsCheck=void 0;const n=r(77002),i=r(93333),a=r(93333);t.ForbiddenWordsCheck=class{static forbiddenWordsCheck(e){const t=["any","this","unknown"],r={state:!0,errorInfo:""},o=e.getDefinedText(),s=e.getJsDocInfos()[0].getSince(),c=i.CommonFunctions.getCheckApiVersion(),l=/\s{2,}/g;let u=o.replace(/(\/\*|\*\/|\*)|\\n|\\r/g," ");return a.punctuationMarkSet.forEach((e=>{const t=new RegExp(e,"g");t.test(u)&&(u=u.replace(t," ").replace(l," "))})),u.split(/\s/g).forEach((e=>{t.includes(e)&&s===c&&(r.state=!1,r.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ILLEGAL_USE_ANY,[e]))})),r}}},23978:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiNamingCheck=void 0;const n=r(77002),i=r(93333),a=r(93460),o=r(289);class s{static namingCheck(e){const t={state:!0,errorInfo:""},r=e.getJsDocInfos()[0].getSince(),n=i.CommonFunctions.getCheckApiVersion(),a=e.getDefinedText().toLowerCase();return r===n&&(s.checkApiNamingWords(a,t),s.checkApiNamingScenario(a,t,e)),t}static checkApiNamingWords(e,t){const r=s.getlowercaseNamingMap();for(const[a,o]of r){const r=e.indexOf(a);if(-1===r)continue;const c=o.ignore.map((e=>e.toLowerCase())),l=e.substring(r,r+a.length);if(0===c.length){t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_NAMING,[e,l,o.suggestion]);break}!1===s.checkIgnoreWord(c,e)&&(t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_NAMING,[e,l,o.suggestion]))}}static checkApiNamingScenario(e,t,r){const a=s.getlowercaseNamingScenarioMap();for(const[o,c]of a){const a=e.indexOf(o);if(-1!==a&&!s.isInAllowedFiles(c.files,r.getFilePath())){const s=e.substring(a,o.length);t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_SCENARIO,[e,s,r.getFilePath()])}}}static getlowercaseNamingMap(){const e=new Map;for(const t of a){const r=t.badWord.toLowerCase(),n=t;e.set(r,n)}return e}static checkIgnoreWord(e,t){let r=!1;for(let n=0;n<e.length;n++)if(e[n]&&-1!==t.indexOf(e[n])){r=!0;break}return r}static getlowercaseNamingScenarioMap(){const e=new Map;for(const t of o){const r=t.word.toLowerCase(),n=t;e.set(r,n)}return e}static isInAllowedFiles(e,t){for(const r of e){const e=new RegExp(r);if(e.test(t),e.test(t))return!0}return!1}}t.ApiNamingCheck=s},53438:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagInheritCheck=void 0;const n=r(77002),i=r(93333),a=r(44791);class o{static tagInheritCheck(e){const t={state:!0,errorInfo:""},r=e.getLastJsDocInfo();if(void 0===r)return t;const n=r.tags,i=[];if(void 0===n)return t;n.forEach((e=>{i.push(e.tag)}));let s=e.getParentApi();return a.containerApiTypes.has(s.getApiType())&&o.checkParentJsdoc(s,i,t),t}static checkParentJsdoc(e,t,r){if(void 0===e||!a.containerApiTypes.has(e.getApiType()))return!0;const s=e,c=s.getLastJsDocInfo()?.tags;if(void 0===c)return!0;let l="";if(c.some((e=>(l=e.tag,i.inheritTagArr.includes(e.tag)&&!t.includes(e.tag)))))return r.state=!1,r.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_INHERIT,[l]),!1;const u=s.getParentApi();return o.checkParentJsdoc(u,t,r)}}t.TagInheritCheck=o},18e3:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LegalityCheck=void 0;const n=r(44791),i=r(93333),a=r(77002),o=r(93333);class s{static apiLegalityCheck(e,t){const r=[],c=e.getNode(),l=i.apiLegalityCheckTypeMap.get(c.kind),u=new Set(l),d=s.getIllegalTagsArray(l);let p="",f="";if(e.getApiType()!==n.ApiType.CLASS&&e.getApiType()!==n.ApiType.INTERFACE||(p=o.CommonFunctions.getExtendsApiValue(e),f=o.CommonFunctions.getImplementsApiValue(e)),""===p&&(u.delete("extends"),d.push("extends")),""===f&&(u.delete("implements"),d.push("implements")),!Array.isArray(l))return r;const m=t.tags;if(void 0===m){const e={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,["since"])},t={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,["syscap"])};return r.push(e,t),r}let g=0,_=e.getApiType()===n.ApiType.METHOD?e.getParams().length:0;return m.forEach((i=>{g="param"===i.tag?g+1:g;const s="useinstead"===i.tag&&"-1"!==t.deprecatedVersion;if(d.includes(i.tag)&&("useinstead"!==i.tag||!s)){const e={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_USE,[i.tag])};r.push(e)}u.delete("param"),u.has(i.tag)&&u.delete(i.tag),e.getApiType()!==n.ApiType.INTERFACE||"typedef"!==i.tag&&"interface"!==i.tag||(u.delete("typedef"),u.delete("interface")),e.getApiType()===n.ApiType.METHOD&&0===e.getReturnValue().length&&u.delete("returns")})),s.paramLegalityCheck(g,_,r),u.forEach((e=>{if(!o.conditionalOptionalTags.includes(e)){const t={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,[e])};r.push(t)}})),r}static paramLegalityCheck(e,t,r){if(e>t){const n={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_MORELABEL,[JSON.stringify(e-t),"param"])};r.push(n)}else if(e<t){const e={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,["param"])};r.push(e)}}static getIllegalTagsArray(e){const t=[];return i.tagsArrayOfOrder.forEach((r=>{(i.optionalTags.includes(r)||Array.isArray(e))&&(i.optionalTags.includes(r)||e.includes(r))||t.push(r)})),t}}t.LegalityCheck=s},6300:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagNameCheck=void 0;const n=r(93333),i=r(77002);t.TagNameCheck=class{static tagNameCheck(e){const t={state:!0,errorInfo:""},r=n.tagsArrayOfOrder.concat(n.officialTagArr),a=e.tags;return void 0===a||a.forEach((e=>{r.includes(e.tag)||(t.state=!1,t.errorInfo=n.CommonFunctions.createErrorInfo(i.ErrorMessage.ERROR_LABELNAME,[e.tag]))})),t}}},95721:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OrderCheck=void 0;const n=r(77002),i=r(93333);t.OrderCheck=class{static orderCheck(e,t){const r={state:!0,errorInfo:""},a=t.tags;if(void 0===a)return r;for(let e=0;e<a.length;e++)if(e+1<a.length){const t=i.tagsArrayOfOrder.indexOf(a[e].tag),o=i.tagsArrayOfOrder.indexOf(a[e+1].tag);if(i.CommonFunctions.isOfficialTag(a[e].tag)&&o>-1||t>o&&o>-1){r.state=!1,r.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_ORDER,[a[e].tag]);break}}return r}}},36944:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagRepeatCheck=void 0;const n=r(77002),i=r(93333);t.TagRepeatCheck=class{static tagRepeatCheck(e){const t=[],r=["throws","param"],a=[];e.tags?.forEach((e=>{a.push(e.tag)}));const o=a.filter((e=>a.indexOf(e)!==a.lastIndexOf(e)));return new Set(o).forEach((e=>{if(!r.includes(e)){const r={state:!1,errorInfo:i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_REPEATLABEL,[e])};t.push(r)}})),t}}},28912:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagValueCheck=void 0;const n=r(77002),i=r(93333),a=r(44791),o=r(8136),s=r(11663),c=r(85311);class l{static tagValueCheck(e,t){const r=[],n=t.tags;let i=0,a=-1;return void 0===n||n.forEach((t=>{let o={state:!0,errorInfo:""};switch(t.tag){case"since":o=l.sinceTagValueCheck(t);break;case"extends":case"implements":o=l.extendsTagValueCheck(e,t);break;case"enum":o=l.enumTagValueCheck(t);break;case"returns":o=l.returnsTagValueCheck(e,t);break;case"namespace":case"typedef":case"struct":o=l.outerTagValueCheck(e,t);break;case"type":o=l.typeTagValueCheck(e,t);break;case"syscap":o=l.syscapTagValueCheck(t);break;case"default":o=l.defaultTagValueCheck(t);break;case"deprecated":o=l.deprecatedTagValueCheck(t);break;case"permission":o=l.permissionTagValueCheck(t);break;case"throws":"-1"===e.getLastJsDocInfo()?.deprecatedVersion&&(i+=1,o=l.throwsTagValueCheck(t,i,n));break;case"param":a+=1,o=l.paramTagValueCheck(e,t,a);break;case"useinstead":o=l.useinsteadTagValueCheck(t)}o.state||r.push(o)})),r}static sinceTagValueCheck(e){const t={state:!0,errorInfo:""};return/^\d+$/.test(e.name)||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_SINCE),t}static extendsTagValueCheck(e,t){const r={state:!0,errorInfo:""};let o=t.name;if(e.getApiType()===a.ApiType.CLASS||e.getApiType()===a.ApiType.INTERFACE){const a=i.CommonFunctions.getExtendsApiValue(e),s=i.CommonFunctions.getImplementsApiValue(e);"extends"===t.tag&&o!==a&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_EXTENDS),"implements"===t.tag&&o!==s&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_IMPLEMENTS)}return r}static enumTagValueCheck(e){const t={state:!0,errorInfo:""};return-1===["string","number"].indexOf(e.type)&&(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_ENUM),t}static returnsTagValueCheck(e,t){const r={state:!0,errorInfo:""},o=t.type.replace(/\s/g,"");let s=[];if(e.getApiType()!==a.ApiType.METHOD)return r;const c=i.CommonFunctions.judgeSpecialCase(e.returnValueType);return s=c.length>0?c:e.getReturnValue(),0===s.length?(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_RETURNS):o!==s.join("|").replace(/\s/g,"")&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_RETURNS),r}static outerTagValueCheck(e,t){const r={state:!0,errorInfo:""};let i=t.name,a=e.getApiName();const o=e.getDefinedText();if("namespace"===t.tag&&i!==a&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_NAMESPACE),"typedef"===t.tag){const s=e.getGenericInfo();if(s.length>0){a=a+"<"+s.map((e=>e.getGenericContent())).join(",")+">"}if("Interface"===e.getApiType()&&i!==a)r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_TYPEDEF;else if("TypeAlias"===e.getApiType()){const e=o.substring(o.indexOf("=")+1,o.length);t.type!==e.replace(/\s|\;/g,"")&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_TYPEDEF)}}return"struct"===t.tag&&i!==a&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_STRUCT),r}static typeTagValueCheck(e,t){const r={state:!0,errorInfo:""};if(e.getApiType()!==a.ApiType.PROPERTY)return r;let o=t.type.replace(/\s/g,""),s=[];const c=i.CommonFunctions.judgeSpecialCase(e.typeKind);s=c.length>0?c:e.type;let l=s.join("|").replace(/\s/g,"");const u=!e.getIsRequired();return u&&1===s.length?l="?"+l:u&&s.length>1&&(l="?("+l+")"),o.replace(/\s/g,"")!==l.replace(/\s/g,"")&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_TYPE),r}static syscapTagValueCheck(e){const t={state:!0,errorInfo:""},r=s.SystemCapability,i=e.name;return r.includes(i)||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_SYSCAP),t}static defaultTagValueCheck(e){const t={state:!0,errorInfo:""};return 0===(e.name+e.type).length&&(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_DEFAULT),t}static deprecatedTagValueCheck(e){const t={state:!0,errorInfo:""},r=e.name,i=e.description,a=/^\d+$/.test(i);return"since"===r&&a||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_DEPRECATED),t}static permissionTagValueCheck(e){const t={state:!0,errorInfo:""},r=c.module.definePermissions,i=[];r.forEach((e=>{i.push(e.name)}));return(e.name+e.description).replace(/(\s|\(|\))/g,"").replace(/(or|and)/g,"$").split("$").forEach((e=>{i.includes(e)||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_PERMISSION)})),t}static throwsTagValueCheck(e,t,r){const a={state:!0,errorInfo:""},o=e.type,s=e.name,c=/^\d+$/.test(s);"BusinessError"!==o?(a.state=!1,a.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_VALUE1_THROWS,[JSON.stringify(t)])):c||(a.state=!1,a.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_VALUE2_THROWS,[JSON.stringify(t)]));const l=[];return r?.forEach((e=>{l.push(e.tag)})),"201"!==s||l.includes("permission")||(a.state=!1,a.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_LOST_LABEL,["permission"])),a}static paramTagValueCheck(e,t,r){const o={state:!0,errorInfo:""};if(e.getApiType()!==a.ApiType.METHOD)return o;const s=t.type.replace(/\s/g,""),c=t.name,l=e.getParams(),u=l[r]?.getApiName();let d=[];const p=l[r]?i.CommonFunctions.judgeSpecialCase(l[r].paramType):[];return d=p.length>0?p:l[r]?.getType(),c!==u&&(o.state=!1,o.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_VALUE_PARAM,[JSON.stringify(r+1),JSON.stringify(r+1)])),void 0!==d&&s===d.join("|").replace(/\s/g,"")||(o.state=!1,o.errorInfo=o.errorInfo+i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_TYPE_PARAM,[JSON.stringify(r+1),JSON.stringify(r+1)])),o}static checkModule(e){return/^[A-Za-z0-9_]+\b(\.[A-Za-z0-9_]+\b)*$/.test(e)||/^[A-Za-z0-9_]+\b(\.[A-Za-z0-9_]+\b)*\#[A-Za-z0-9_]+\b$/.test(e)||/^[A-Za-z0-9_]+\b(\.[A-Za-z0-9_]+\b)*\#event:[A-Za-z0-9_]+\b$/.test(e)}static splitUseinsteadValue(e,t){e&&""!==e||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_USEINSTEAD);const r=e.split(/\//g);if(1===r.length)t.state=-1===r[0].indexOf(o.PunctuationMark.LEFT_BRACKET)&&-1===r[0].indexOf(o.PunctuationMark.RIGHT_BRACKET)&&l.checkModule(r[0]);else if(2===r.length){const e=r[0].split(".");if(1===e.length)t.state=t.state&&/^[A-Za-z0-9_]+\b$/.test(e[0])&&l.checkModule(r[1]);else{let n=!0;for(let t=0;t<e.length;t++)n=n&&"ohos"===e[0]&&/^[A-Za-z0-9_]+\b$/.test(e[t]);n&&(l.checkModule(r[1])||-1!==r[1].indexOf(o.PunctuationMark.LEFT_BRACKET)||-1!==r[1].indexOf(o.PunctuationMark.RIGHT_BRACKET))||(t.state=!1)}}else t.state=!1;t.state||(t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_USEINSTEAD)}static useinsteadTagValueCheck(e){let t={state:!0,errorInfo:""};const r=e.name;return""===r?(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_USEINSTEAD):l.splitUseinsteadValue(r,t),t}}t.TagValueCheck=l},56795:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WordsCheck=void 0;const n=r(44791),i=r(77002),a=r(93333),o=r(31575),s=r(93333),c=r(54732),l=r(77596),u=new Set([...c.dictionariesArr,...l.dictionariesSupplementaryArr,...a.tagsArrayOfOrder,...a.officialTagArr]);class d{static wordCheckResultsProcessing(e){e.forEach((e=>{if(e.getApiType()===n.ApiType.SOURCE_FILE)return;let t=e.getJsDocText()+e.getDefinedText();if(e.getApiType()===n.ApiType.IMPORT){const r=e.getImportValues(),n=[];r.forEach((e=>{n.push(e.key)})),t=n.join("|")}d.wordsCheck(t,e)}))}static wordsCheck(e,t){const r=/\s{2,}/g;let n=e.replace(/(\/\*|\*\/|\*)|\n|\r/g," ");s.punctuationMarkSet.forEach((e=>{const t=new RegExp(e,"g");t.test(n)&&(n=n.replace(t," ").replace(r," "))}));let c=n.split(/\s/g);const l=[];c.forEach((e=>{d.splitComplexWords(e).forEach((r=>{if(!d.checkBaseWord(r.toLowerCase())){l.push(r);const n={state:!1,errorInfo:a.CommonFunctions.createErrorInfo(i.ErrorMessage.ERROR_WORD,[e,r])};o.AddErrorLogs.addAPICheckErrorLogs(i.ErrorID.MISSPELL_WORDS_ID,i.ErrorLevel.MIDDLE,t.getFilePath(),t.getPos(),i.ErrorType.MISSPELL_WORDS,i.LogType.LOG_JSDOC,-1,t.getApiName(),t.getDefinedText(),n.errorInfo,s.compositiveResult,s.compositiveLocalResult)}}))}))}static hasUnderline(e){return/(?<!^)\_/g.test(e)}static splitComplexWords(e){let t=[];d.hasUnderline(e)?t=e.split(/(?<!^)\_/g):/(?<!^)(?=[A-Z])/g.test(e)?t=e.split(/(?<!^)(?=[A-Z])/g):t.push(e);const r=[];return t.forEach((e=>{/[0-9]/g.test(e)?r.concat(e.split(/0-9/g)):r.push(e)})),r}static checkBaseWord(e){return!/^[a-z][0-9]+$/g.test(e)&&!(/^[A-Za-z]+/g.test(e)&&!u.has(e.toLowerCase()))}}t.WordsCheck=d},22127:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiCountHelper=void 0;const n=r(85057),i=r(80879);t.ApiCountHelper=class{static countApi(e){const t=[],r=i.FunctionUtils.readKitFile(),a=r.filePathSet,o=r.subsystemMap,s=r.kitNameMap;return a.forEach((r=>{let i=0,a="",c=new n.ApiCountInfo;e.forEach((e=>{r===e.getFilePath().replace(/\\/g,"/")&&(i++,a=e.getKitInfo())})),i>0&&(c.setFilePath(`api/${r}`).setApiNumber(i).setKitName(""===a?s.get(r):a).setsubSystem(o.get(r)),t.push(c))})),t}}},12311:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DiffProcessorHelper=void 0;const n=r(44791),i=r(37583),a=r(40149),o=r(87960),s=r(38572),c=r(93333),l=r(8136);!function(e){e.permissionsCharMap=new Map([["and",{splitchar:"and",transferchar:"&"}],["or",{splitchar:"or",transferchar:"|"}]]),e.typeCharMap=new Map([["and",{splitchar:"&",transferchar:"&"}],["or",{splitchar:"|",transferchar:"|"}]]);class t{static diffJsDocInfo(r,n,i){const a=r.getLastJsDocInfo(),o=n.getLastJsDocInfo();t.diffSinceVersion(r,n,i);for(let t=0;t<e.jsDocDiffProcessors.length;t++){const s=(0,e.jsDocDiffProcessors[t])(a,o);if(!s)continue;const c=e.wrapDiffInfo(r,n,s);i.push(c)}}static getFirstSinceVersion(e){let t="";for(let r=0;r<e.length;r++){const n=e[r];if("-1"!==n.getSince())return t=n.getSince(),t}return t}static diffSinceVersion(t,r,n){const i=new a.DiffTypeInfo,o=t.getJsDocInfos()[0],s=r.getJsDocInfos()[0],c=o?o.getSince():"-1",l=s?s.getSince():"-1";if(i.setStatusCode(a.ApiStatusCode.VERSION_CHNAGES).setOldMessage(c).setNewMessage(l),c===l)return;if("-1"===c){i.setDiffType(a.ApiDiffType.SINCE_VERSION_NA_TO_HAVE);const o=e.wrapDiffInfo(t,r,i);return void n.push(o)}if("-1"===l){i.setDiffType(a.ApiDiffType.SINCE_VERSION_HAVE_TO_NA);const o=e.wrapDiffInfo(t,r,i);return void n.push(o)}i.setDiffType(a.ApiDiffType.SINCE_VERSION_A_TO_B);const u=e.wrapDiffInfo(t,r,i);n.push(u)}static diffIsSystemApi(e,t){const r=new a.DiffTypeInfo,n=!!e&&e.getIsSystemApi(),s=!!t&&t.getIsSystemApi();if(r.setStatusCode(a.ApiStatusCode.SYSTEM_API_CHNAGES).setOldMessage(o.StringUtils.transformBooleanToTag(n,i.Comment.JsDocTag.SYSTEM_API)).setNewMessage(o.StringUtils.transformBooleanToTag(s,i.Comment.JsDocTag.SYSTEM_API)),s!==n)return s?r.setDiffType(a.ApiDiffType.PUBLIC_TO_SYSTEM):r.setDiffType(a.ApiDiffType.SYSTEM_TO_PUBLIC)}static diffModelLimitation(e,t){const r=new a.DiffTypeInfo,n=new Map([["_stagemodelonly",a.ApiDiffType.NA_TO_STAGE],["stagemodelonly_",a.ApiDiffType.STAGE_TO_NA],["_famodelonly",a.ApiDiffType.NA_TO_FA],["famodelonly_",a.ApiDiffType.FA_TO_NA],["famodelonly_stagemodelonly",a.ApiDiffType.FA_TO_STAGE],["stagemodelonly_famodelonly",a.ApiDiffType.STAGE_TO_FA]]),i=e?e.getModelLimitation():"",o=t?t.getModelLimitation():"";if(o===i)return;const s=`${i.toLowerCase()}_${o.toLowerCase()}`,c=n.get(s);return r.setStatusCode(a.ApiStatusCode.MODEL_CHNAGES).setDiffType(c).setOldMessage(i).setNewMessage(o),r}static diffIsForm(e,t){const r=new a.DiffTypeInfo,n=!!e&&e.getIsForm(),s=!!t&&t.getIsForm();if(r.setStatusCode(a.ApiStatusCode.FORM_CHANGED).setOldMessage(o.StringUtils.transformBooleanToTag(n,i.Comment.JsDocTag.FORM)).setNewMessage(o.StringUtils.transformBooleanToTag(s,i.Comment.JsDocTag.FORM)),s!==n)return s?r.setDiffType(a.ApiDiffType.NA_TO_CARD):r.setDiffType(a.ApiDiffType.CARD_TO_NA)}static diffIsCrossPlatForm(e,t){const r=new a.DiffTypeInfo,n=!!e&&e.getIsCrossPlatForm(),s=!!t&&t.getIsCrossPlatForm();if(r.setStatusCode(a.ApiStatusCode.CROSSPLATFORM_CHANGED).setOldMessage(o.StringUtils.transformBooleanToTag(n,i.Comment.JsDocTag.CROSS_PLAT_FORM)).setNewMessage(o.StringUtils.transformBooleanToTag(s,i.Comment.JsDocTag.CROSS_PLAT_FORM)),s!==n)return s?r.setDiffType(a.ApiDiffType.NA_TO_CROSS_PLATFORM):r.setDiffType(a.ApiDiffType.CROSS_PLATFORM_TO_NA)}static diffPermissions(t,r){const n=new a.DiffTypeInfo,i=t?t.getPermission():"",o=r?r.getPermission():"";if(n.setStatusCode(a.ApiStatusCode.PERMISSION_CHANGES).setOldMessage(i).setNewMessage(o),i===o)return;if(""===i)return n.setStatusCode(a.ApiStatusCode.PERMISSION_NEW).setDiffType(a.ApiDiffType.PERMISSION_NA_TO_HAVE);if(""===o)return n.setStatusCode(a.ApiStatusCode.PERMISSION_DELETE).setDiffType(a.ApiDiffType.PERMISSION_HAVE_TO_NA);const c=new s.PermissionsProcessorHelper(e.permissionsCharMap).comparePermissions(i,o);return c.range===s.RangeChange.DOWN?n.setDiffType(a.ApiDiffType.PERMISSION_RANGE_SMALLER):c.range===s.RangeChange.UP?n.setDiffType(a.ApiDiffType.PERMISSION_RANGE_BIGGER):n.setDiffType(a.ApiDiffType.PERMISSION_RANGE_CHANGE)}static diffErrorCodes(e,t){const r=new a.DiffTypeInfo,n=e?e.getErrorCode().sort():[],i=t?t.getErrorCode().sort():[],s=n.toString(),c=i.toString();if(r.setStatusCode(a.ApiStatusCode.ERRORCODE_CHANGES).setOldMessage(s).setNewMessage(c),c!==s)return o.StringUtils.hasSubstring(c,s)?r.setStatusCode(a.ApiStatusCode.NEW_ERRORCODE).setDiffType(a.ApiDiffType.ERROR_CODE_ADD):o.StringUtils.hasSubstring(s,c)?r.setDiffType(a.ApiDiffType.ERROR_CODE_REDUCE):r.setDiffType(a.ApiDiffType.ERROR_CODE_CHANGE)}static diffSyscap(e,t){const r=new a.DiffTypeInfo,n=e?e.getSyscap():"",i=t?t.getSyscap():"";if(r.setStatusCode(a.ApiStatusCode.SYSCAP_CHANGES).setOldMessage(n).setNewMessage(i),i!==n)return""===n?r.setDiffType(a.ApiDiffType.SYSCAP_NA_TO_HAVE):""===i?r.setDiffType(a.ApiDiffType.SYSCAP_HAVE_TO_NA):r.setDiffType(a.ApiDiffType.SYSCAP_A_TO_B)}static diffDeprecated(e,t){const r=new a.DiffTypeInfo,n=e?e.getDeprecatedVersion():"-1",i=t?t.getDeprecatedVersion():"-1";if(r.setStatusCode(a.ApiStatusCode.DEPRECATED_CHNAGES).setOldMessage(n.toString()).setNewMessage(i.toString()),i!==n)return"-1"===n?r.setDiffType(a.ApiDiffType.DEPRECATED_NA_TO_HAVE):"-1"===i?r.setDiffType(a.ApiDiffType.DEPRECATED_HAVE_TO_NA):r.setDiffType(a.ApiDiffType.DEPRECATED_A_TO_B)}}e.JsDocDiffHelper=t;class r{static diffDecorator(e,t,n){const i=r.setDecoratorsMap(e.getDecorators()),a=r.setDecoratorsMap(t.getDecorators());if(0!==a.size)if(0!==i.size)r.diffDecoratorInfo(i,a,e,t,n);else for(const i of a.keys())r.addNewDecoratorsInfo(i,e,t,n),a.delete(i);else for(const a of i.keys())r.addDeleteDecoratorsInfo(a,e,t,n)}static diffDecoratorInfo(e,t,n,i,a){const o=new Set;for(const s of e.keys()){const c=t.get(s),l=e.get(s);c?l&&c.join()===l.join()&&(t.delete(s),o.add(s)):(r.addDeleteDecoratorsInfo(s,n,i,a),o.add(s))}for(const e of t.keys())r.addNewDecoratorsInfo(e,n,i,a);for(const t of e.keys())o.has(t)||r.addDeleteDecoratorsInfo(t,n,i,a)}static setDecoratorsMap(e){const t=new Map;return e?(e.forEach((e=>{const r=e.getExpressionArguments();t.set(e.getExpression(),void 0===r?[]:r)})),t):t}static addDeleteDecoratorsInfo(t,r,n,i){const o=new a.DiffTypeInfo;o.setStatusCode(a.ApiStatusCode.DELETE_DECORATOR).setDiffType(a.ApiDiffType.DELETE_DECORATOR).setOldMessage(t).setNewMessage("");const s=e.wrapDiffInfo(r,n,o);i.push(s)}static addNewDecoratorsInfo(t,r,n,i){const o=new a.DiffTypeInfo;o.setStatusCode(a.ApiStatusCode.NEW_DECORATOR).setDiffType(a.ApiDiffType.NEW_DECORATOR).setOldMessage("").setNewMessage(t);const s=e.wrapDiffInfo(r,n,o);i.push(s)}}e.ApiDecoratorsDiffHelper=r;class u{static diffHistoricalJsDoc(t,r,n){const i=c.CommonFunctions.getCheckApiVersion().toString(),o=t.getJsDocText().split("*/"),s=r.getJsDocText().split("*/"),u=new a.DiffTypeInfo;if(t.getCurrentVersion()===i?o.splice(l.NumberConstant.DELETE_CURRENT_JS_DOC):o.splice(-1),r.getCurrentVersion()===i?s.splice(l.NumberConstant.DELETE_CURRENT_JS_DOC):s.splice(-1),o.length===s.length){for(let i=0;i<o.length;i++)if(o[i].replace(/\r\n/g,"")!==s[i].replace(/\r\n/g,"")){u.setDiffType(a.ApiDiffType.HISTORICAL_JSDOC_CHANGE);const i=e.wrapDiffInfo(t,r,u);n.push(i)}}else{u.setDiffType(a.ApiDiffType.HISTORICAL_JSDOC_CHANGE);const i=e.wrapDiffInfo(t,r,u);n.push(i)}}static diffHistoricalAPI(t,r,n){const i=c.CommonFunctions.getCheckApiVersion().toString(),o=t.getDefinedText(),s=r.getDefinedText(),l=new a.DiffTypeInfo;if(o!==s&&r.getCurrentVersion()!==i){l.setDiffType(a.ApiDiffType.HISTORICAL_API_CHANGE);const i=e.wrapDiffInfo(t,r,l);n.push(i)}}}e.ApiCheckHelper=u;class d{static diffNodeInfo(t,r,n,i){i&&(u.diffHistoricalJsDoc(t,r,n),u.diffHistoricalAPI(t,r,n));const a=r.getApiType();if(t.getApiType()!==a)return;const o=e.apiNodeDiffMethod.get(a);o&&o(t,r,n)}static diffBaseType(t,r){const n=new a.DiffTypeInfo;if(t===r)return;if(n.setStatusCode(a.ApiStatusCode.TYPE_CHNAGES).setOldMessage(t).setNewMessage(r),""===t)return n.setDiffType(a.ApiDiffType.TYPE_RANGE_CHANGE);if(""===r)return n.setDiffType(a.ApiDiffType.TYPE_RANGE_CHANGE);const i=new s.PermissionsProcessorHelper(e.typeCharMap).comparePermissions(t,r);return i.range===s.RangeChange.DOWN?n.setDiffType(a.ApiDiffType.TYPE_RANGE_SMALLER):i.range===s.RangeChange.UP?n.setDiffType(a.ApiDiffType.TYPE_RANGE_BIGGER):n.setDiffType(a.ApiDiffType.TYPE_RANGE_CHANGE)}static diffMethod(t,r,n){e.methodDiffProcessors.forEach((i=>{const o=i(t,r);if(o)if(o instanceof Array)o.forEach((i=>{const o=e.wrapDiffInfo(t,r,i.setStatusCode(a.ApiStatusCode.FUNCTION_CHANGES));n.push(o)}));else{const i=e.wrapDiffInfo(t,r,o.setStatusCode(a.ApiStatusCode.FUNCTION_CHANGES));n.push(i)}}))}static diffMethodReturnType(e,t){const r=new a.DiffTypeInfo,n=e.getReturnValue(),i=t.getReturnValue(),s=n.toString().replace(/\r|\n|\s+|'|"/g,""),c=i.toString().replace(/\r|\n|\s+|'|"/g,"");if(s!==c)return r.setOldMessage(s).setNewMessage(c),o.StringUtils.hasSubstring(c,s)?r.setDiffType(a.ApiDiffType.FUNCTION_RETURN_TYPE_ADD):o.StringUtils.hasSubstring(s,c)?r.setDiffType(a.ApiDiffType.FUNCTION_RETURN_TYPE_REDUCE):r.setDiffType(a.ApiDiffType.FUNCTION_RETURN_TYPE_CHANGE)}static diffMethodParams(e,t){const r=[],n=e.getParams(),i=t.getParams(),o=[d.diffMethodParamName,d.diffMethodParamType,d.diffMethodParamRequired],s=Math.max(n.length,i.length);for(let e=0;e<s;e++){const t=new a.DiffTypeInfo;if(e>=n.length){const n=i[e],o=n.getIsRequired();t.setDiffType(o?a.ApiDiffType.FUNCTION_PARAM_REQUIRED_ADD:a.ApiDiffType.FUNCTION_PARAM_UNREQUIRED_ADD).setNewMessage(n.getDefinedText()),r.push(t);continue}if(e>=i.length){const i=n[e];t.setDiffType(a.ApiDiffType.FUNCTION_PARAM_REDUCE).setOldMessage(i.getDefinedText()),r.push(t);continue}const s=n[e],c=i[e];t.setOldMessage(s.getDefinedText()).setNewMessage(c.getDefinedText());for(let e=0;e<o.length;e++){const n=(0,o[e])(s,c);n&&r.push(t.setDiffType(n))}}return r}static diffMethodParamName(e,t){if(e.getApiName()!==t.getApiName())return a.ApiDiffType.FUNCTION_PARAM_NAME_CHANGE}static diffMethodParamType(e,t){const r=e.getType(),n=t.getType(),i=r.toString().replace(/\r|\n|\s+|'|"/g,""),s=n.toString().replace(/\r|\n|\s+|'|"/g,"");if(i!==s)return o.StringUtils.hasSubstring(s,i)?a.ApiDiffType.FUNCTION_PARAM_TYPE_ADD:o.StringUtils.hasSubstring(i,s)?a.ApiDiffType.FUNCTION_PARAM_TYPE_REDUCE:a.ApiDiffType.FUNCTION_PARAM_TYPE_CHANGE}static diffMethodParamRequired(e,t){const r=e.getIsRequired(),n=t.getIsRequired();if(r!==n)return n?a.ApiDiffType.FUNCTION_PARAM_TO_REQUIRED:a.ApiDiffType.FUNCTION_PARAM_TO_UNREQUIRED}static diffClass(t,r,n){const i=new a.DiffTypeInfo,o=t.getApiName(),s=r.getApiName();if(o===s)return;i.setStatusCode(a.ApiStatusCode.CLASS_CHANGES).setDiffType(a.ApiDiffType.API_NAME_CHANGE).setOldMessage(o).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i);n.push(c)}static diffInterface(t,r,n){const i=new a.DiffTypeInfo,o=t.getApiName(),s=r.getApiName();if(o===s)return;i.setStatusCode(a.ApiStatusCode.CLASS_CHANGES).setDiffType(a.ApiDiffType.API_NAME_CHANGE).setOldMessage(o).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i);n.push(c)}static diffNamespace(t,r,n){const i=new a.DiffTypeInfo,o=t.getApiName(),s=r.getApiName();if(o===s)return;i.setStatusCode(a.ApiStatusCode.CLASS_CHANGES).setDiffType(a.ApiDiffType.API_NAME_CHANGE).setOldMessage(o).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i);n.push(c)}static diffProperty(t,r,n){e.propertyDiffProcessors.forEach((i=>{const o=i(t,r);if(!o)return;const s=e.wrapDiffInfo(t,r,o.setStatusCode(a.ApiStatusCode.FUNCTION_CHANGES));n.push(s)}))}static diffPropertyType(e,t){const r=new a.DiffTypeInfo,n=e.getType(),i=t.getType(),s=e.getIsReadOnly(),c=t.getIsReadOnly(),l=n.toString(),u=i.toString();if(l!==u)return r.setOldMessage(l).setNewMessage(u),o.StringUtils.hasSubstring(u,l)?r.setDiffType(c?a.ApiDiffType.PROPERTY_READONLY_ADD:a.ApiDiffType.PROPERTY_WRITABLE_ADD):o.StringUtils.hasSubstring(l,u)?r.setDiffType(s?a.ApiDiffType.PROPERTY_READONLY_REDUCE:a.ApiDiffType.PROPERTY_WRITABLE_REDUCE):r.setDiffType(a.ApiDiffType.PROPERTY_TYPE_CHANGE)}static diffPropertyRequired(e,t){const r=new a.DiffTypeInfo,n=e.getApiName(),i=t.getApiName(),o=e.getIsReadOnly(),s=new Map([["_true_false_true",a.ApiDiffType.PROPERTY_READONLY_TO_UNREQUIRED],["_false_true_true",a.ApiDiffType.PROPERTY_READONLY_TO_REQUIRED],["_true_false_false",a.ApiDiffType.PROPERTY_WRITABLE_TO_UNREQUIRED],["_false_true_false",a.ApiDiffType.PROPERTY_WRITABLE_TO_REQUIRED]]),c=e.getIsRequired(),l=t.getIsRequired();if(n===i&&c===l)return;r.setOldMessage(e.getDefinedText()).setNewMessage(t.getDefinedText());const u=`_${!!c}_${!!l}_${!!o}`,d=s.get(u);return r.setDiffType(d)}static diffConstant(t,r,n){e.constantDiffProcessors.forEach((i=>{const o=i(t,r);if(!o)return;const s=e.wrapDiffInfo(t,r,o.setStatusCode(a.ApiStatusCode.FUNCTION_CHANGES));n.push(s)}))}static diffConstantValue(e,t){const r=new a.DiffTypeInfo,n=e.getValue(),i=t.getValue();if(n!==i)return r.setOldMessage(n).setNewMessage(i),r.setDiffType(a.ApiDiffType.CONSTANT_VALUE_CHANGE)}static diffTypeAlias(t,r,n){e.typeAliasDiffProcessors.forEach((i=>{const a=i(t,r);if(!a)return;const o=e.wrapDiffInfo(t,r,a);n.push(o)}))}static diffTypeAliasType(e,t){const r=new a.DiffTypeInfo,n=e.getType(),i=t.getType(),s=n.toString(),c=i.toString();if(s!==c)return r.setOldMessage(s).setNewMessage(c),o.StringUtils.hasSubstring(c,s)?r.setDiffType(a.ApiDiffType.TYPE_ALIAS_ADD):o.StringUtils.hasSubstring(s,c)?r.setDiffType(a.ApiDiffType.TYPE_ALIAS_REDUCE):r.setDiffType(a.ApiDiffType.TYPE_ALIAS_CHANGE)}static diffEnum(t,r,n){const i=new a.DiffTypeInfo,o=t.getApiName(),s=r.getApiName();if(o===s)return;i.setDiffType(a.ApiDiffType.API_NAME_CHANGE).setOldMessage(o).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i.setStatusCode(a.ApiStatusCode.FUNCTION_CHANGES));n.push(c)}static diffEnumMember(t,r,n){e.enumDiffProcessors.forEach((i=>{const o=i(t,r);if(!o)return;const s=e.wrapDiffInfo(t,r,o.setStatusCode(a.ApiStatusCode.FUNCTION_CHANGES));n.push(s)}))}static diffEnumMemberValue(e,t){const r=new a.DiffTypeInfo,n=e.getValue(),i=t.getValue();if(n!==i)return r.setOldMessage(n).setNewMessage(i),r.setDiffType(a.ApiDiffType.ENUM_MEMBER_VALUE_CHANGE)}static diffApiName(e,t){const r=new a.DiffTypeInfo,n=e.getApiName(),i=t.getApiName();if(n!==i)return r.setOldMessage(n).setNewMessage(i),r.setDiffType(a.ApiDiffType.API_NAME_CHANGE)}}e.ApiNodeDiffHelper=d,e.wrapDiffInfo=function(e=void 0,t=void 0,r){const n=new a.BasicDiffInfo,i=r.getDiffType();return e&&function(e,t){const r=e,n=r.getLastJsDocInfo()?.getKit();n&&t.setOldKitInfo(n);t.setOldApiDefinedText(e.getDefinedText()).setApiType(e.getApiType()).setOldApiName(e.getApiName()).setOldDtsName(e.getFilePath()).setOldHierarchicalRelations(e.getHierarchicalRelations()).setOldPos(e.getPos()).setOldSyscapField(e.getSyscap())}(e,n),t&&function(e,t){const r=e,n=r.getLastJsDocInfo()?.getKit();n&&t.setNewKitInfo(n);t.setNewApiDefinedText(e.getDefinedText()).setApiType(e.getApiType()).setNewApiName(e.getApiName()).setNewDtsName(e.getFilePath()).setNewHierarchicalRelations(e.getHierarchicalRelations()).setNewPos(e.getPos()).setNewSyscapField(e.getSyscap())}(t,n),n.setDiffType(i).setDiffMessage(a.diffMap.get(i)).setIsCompatible(!a.incompatibleApiDiffTypes.has(i)).setStatusCode(r.getStatusCode()).setOldDescription(r.getOldMessage()).setNewDescription(r.getNewMessage()),n},e.apiNodeDiffMethod=new Map([[n.ApiType.PROPERTY,d.diffProperty],[n.ApiType.CLASS,d.diffClass],[n.ApiType.INTERFACE,d.diffInterface],[n.ApiType.NAMESPACE,d.diffNamespace],[n.ApiType.METHOD,d.diffMethod],[n.ApiType.CONSTANT,d.diffConstant],[n.ApiType.ENUM,d.diffEnum],[n.ApiType.ENUM_VALUE,d.diffEnumMember],[n.ApiType.TYPE_ALIAS,e.ApiNodeDiffHelper.diffTypeAlias]]),e.jsDocDiffProcessors=[t.diffSyscap,t.diffDeprecated,t.diffPermissions,t.diffErrorCodes,t.diffIsForm,t.diffIsCrossPlatForm,t.diffModelLimitation,t.diffIsSystemApi],e.enumDiffProcessors=[d.diffApiName,d.diffEnumMemberValue],e.typeAliasDiffProcessors=[d.diffApiName,d.diffTypeAliasType],e.constantDiffProcessors=[d.diffApiName,d.diffConstantValue],e.propertyDiffProcessors=[d.diffApiName,d.diffPropertyType,d.diffPropertyRequired],e.methodDiffProcessors=[d.diffApiName,d.diffMethodReturnType,d.diffMethodParams]}(t.DiffProcessorHelper||(t.DiffProcessorHelper={}))},38572:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RangeChange=exports.PermissionsProcessorHelper=void 0;const logUtil_1=__webpack_require__(4e3),Constant_1=__webpack_require__(8136),PATT={GET_NOT_TRANSFERCHAR:/(?<!\\)([\*|\.|\?|\+|\^|\$|\||\/|\[|\]|\(|\)|\{|\}])/g,VARIABLE_START:"(?<=\\b|\\s|\\*|\\.|\\?|\\+|\\^|\\$|\\||\\/|\\[|\\]|\\(|\\)|\\{|\\})",VARIABLE_END:"(?=\\b|\\s|\\*|\\.|\\?|\\+|\\^|\\$|\\||\\/|\\[|\\]|\\(|\\)|\\{|\\})",SPILT_CHAR_START:"(\\b|\\s)",SPILT_CHAR_END:"(\\b|\\s)"};class PermissionsProcessorHelper{constructor(e){this.charMap=new Map([["and",{splitchar:"&",transferchar:"&"}],["or",{splitchar:"\\|",transferchar:"|"}],["eq",{splitchar:"=",transferchar:"=="}],["LE",{splitchar:"->",transferchar:"<="}],["RE",{splitchar:"<-",transferchar:">="}],["not",{splitchar:"-",transferchar:"!"}],["lcurve",{splitchar:"\\(",transferchar:"("}],["rcurve",{splitchar:"\\)",transferchar:")"}]]),this.splitchar=["&","\\|","->","-","=","\\(","\\)"],this.transferchar=["&","|","<=","!","==","(",")"],this.variables=[];let t=this.charMap;return e&&(t=new Map([...t,...e]),this.splitchar=[],this.transferchar=[],t.forEach(((e,t)=>{let r=e.splitchar;r instanceof RegExp||(r=r.replace(PATT.GET_NOT_TRANSFERCHAR,"\\$1"),r!==e.splitchar&&logUtil_1.LogUtil.i("PermissionsProcessorHelper",`传入的表达式有问题,已经自行修改! ${t}中的splitchar为${e.splitchar},修改为${r}`)),this.splitchar.push(r),this.transferchar.push(e.transferchar)}))),this}getvariables(){return this.variables}comparePermissions(e,t){const r={range:RangeChange.NO,situationDown:[],situationUp:[],variables:[]},n=this.calculateParadigmDown(e,t),i=this.calculateParadigmUp(e,t);return r.variables=this.variables,n.range!==RangeChange.NO&&(r.situationDown=n.situationDown,r.range=RangeChange.DOWN),i.range!==RangeChange.NO&&(r.situationUp=i.situationUp,r.range=r.range===RangeChange.NO?RangeChange.UP:RangeChange.CHANGE),r}calculateParadigmDown(e,t){const r={range:RangeChange.NO,situationDown:[],situationUp:[],variables:[]},n=this.charMap.get("LE");if(!n)return r;const i=`(${e}) ${n.splitchar} (${t})`,a=this.calculateParadigm(i);return r.variables=this.variables,a.fail.length>0&&(r.range=RangeChange.DOWN,r.situationDown=a.fail.map((e=>Number(e).toString(Constant_1.NumberConstant.BINARY_SYSTEM).padStart(this.variables.length,"0").split("").map((e=>Boolean(Number(e))))))),r}calculateParadigmUp(e,t){const r={range:RangeChange.NO,situationDown:[],situationUp:[],variables:[]},n=this.charMap.get("RE");if(!n)return r;const i=`(${e}) ${n.splitchar} (${t})`,a=this.calculateParadigm(i);return r.variables=this.variables,a.fail.length>0&&(r.range=RangeChange.UP,r.situationUp=a.fail.map((e=>Number(e).toString(Constant_1.NumberConstant.BINARY_SYSTEM).padStart(this.variables.length,"0").split("").map((e=>Boolean(Number(e))))))),r}calculateParadigm(e){const t=this.findVariables(e);this.variables=t,e=this.formatten(e);const r=this.variables.length,n=PermissionsProcessorHelper.getAllState(r),i=this.calculate(e,r,n);return this.processValues(i)}findVariables(e){this.splitchar.forEach((t=>{const r=new RegExp(t,"g");e=e.replace(r," ")}));const t=new Set(e.split(" "));t.delete("");return[...t].sort(((e,t)=>e.length===t.length?e<t?-1:1:e.length<t.length?1:-1))}formatten(e){return this.splitchar.forEach(((t,r)=>{t instanceof RegExp||(t=new RegExp(PATT.SPILT_CHAR_START+t+PATT.SPILT_CHAR_END,"g")),e=e.replace(t,this.transferchar[r])})),e}static getAllState(e){const t=[];for(let r=0;r<Constant_1.NumberConstant.BINARY_SYSTEM**e;r++)t.push(Number(r).toString(Constant_1.NumberConstant.BINARY_SYSTEM).padStart(e,"0").split(""));return t}calculate(str,variablesLen,states){const statesLen=states.length,values=[];let outError=!0;for(let i=0;i<statesLen;i++){const state=states[i];let modifyStr=str;for(let e=0;e<variablesLen;e++){let t=this.variables[e];t=t.replace(PATT.GET_NOT_TRANSFERCHAR,"\\$1");const r=new RegExp(PATT.VARIABLE_START+t+PATT.VARIABLE_END,"g");modifyStr=modifyStr.replace(r,state[e])}try{values.push(eval(modifyStr))}catch(e){outError&&(outError=!outError,logUtil_1.LogUtil.e("PermissionsProcessor.calculate",`error logical expression: ${str}`),values.push(0))}}return values}processValues(e){const t={pass:[],fail:[]};for(let r=0;r<e.length;r++){e[r]?t.pass.push(r):t.fail.push(r)}return t}}var RangeChange;exports.PermissionsProcessorHelper=PermissionsProcessorHelper,PermissionsProcessorHelper.NEED_TRANSFER_CHAR=["*",".","?","+","^","$","|","/","[","]","(",")","{","}"],function(e){e.DOWN="down",e.UP="up",e.NO="no",e.CHANGE="change"}(RangeChange=exports.RangeChange||(exports.RangeChange={}))},26499:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.DiffHelper=void 0;const i=n(r(2543)),a=n(r(58843)),o=r(8136),s=r(44791),c=r(40149),l=r(30871),u=r(16137),d=r(12311),p=r(80879),f=r(44791);class m{static diffSDK(e,t,r){const n=i.default.cloneDeep(e),a=i.default.cloneDeep(t),o=[],s=m.getApiLocations(n,r),u=m.getApiLocations(a,r);m.diffKit(n,a,o);for(const e of s.keys()){const t=s.get(e),i=l.Parser.getApiInfo(t,n);if(!u.has(e)){i.forEach((e=>{o.push(d.DiffProcessorHelper.wrapDiffInfo(e,void 0,new c.DiffTypeInfo(c.ApiStatusCode.DELETE,c.ApiDiffType.REDUCE,e.getDefinedText())))}));continue}const p=l.Parser.getApiInfo(t,a);m.diffApis(i,p,o,r),u.delete(e)}for(const e of u.keys()){const t=u.get(e);l.Parser.getApiInfo(t,a).forEach((e=>{o.push(d.DiffProcessorHelper.wrapDiffInfo(void 0,e,new c.DiffTypeInfo(c.ApiStatusCode.NEW_API,c.ApiDiffType.ADD,void 0,e.getDefinedText())))}))}return o}static diffKit(e,t,r){for(const n of e.keys()){const i=m.getSourceFileInfo(e.get(n));i?.setSyscap(m.getSyscapField(i));const a=i?.getLastJsDocInfo()?.getKit();if(!t.get(n)&&a)r.push(d.DiffProcessorHelper.wrapDiffInfo(i,void 0,new c.DiffTypeInfo(c.ApiStatusCode.KIT_CHANGE,c.ApiDiffType.KIT_CHANGE,a,"NA")));else if(t.get(n)){const e=m.getSourceFileInfo(t.get(n)),o=e?.getLastJsDocInfo()?.getKit();a!==o&&r.push(d.DiffProcessorHelper.wrapDiffInfo(i,e,new c.DiffTypeInfo(c.ApiStatusCode.KIT_CHANGE,c.ApiDiffType.KIT_CHANGE,a,o)))}}for(const n of t.keys()){const i=m.getSourceFileInfo(t.get(n)),a=i?.getLastJsDocInfo()?.getKit();!e.get(n)&&a&&r.push(d.DiffProcessorHelper.wrapDiffInfo(void 0,i,new c.DiffTypeInfo(c.ApiStatusCode.KIT_CHANGE,c.ApiDiffType.KIT_CHANGE,"NA",a)))}}static getSourceFileInfo(e){if(!e)return;let t=[];for(const r of e.keys())r===o.StringConstant.SELF&&(t=e.get(r));return t[0]}static diffApis(e,t,r,n){const i=m.getDiffSet(e,t),a=i[0],o=i[1];0!==a.size?0!==o.size?m.diffSameNumberFunction(e,t,r,n):a.forEach((e=>{r.push(d.DiffProcessorHelper.wrapDiffInfo(e,void 0,new c.DiffTypeInfo(c.ApiStatusCode.DELETE,c.ApiDiffType.REDUCE,e.getDefinedText(),void 0)))})):o.forEach((e=>{r.push(d.DiffProcessorHelper.wrapDiffInfo(void 0,e,new c.DiffTypeInfo(c.ApiStatusCode.NEW_API,c.ApiDiffType.ADD,void 0,e.getDefinedText())))}))}static diffSameNumberFunction(e,t,r,n){if(e.length===t.length){const i=e.length;for(let a=0;a<i;a++)d.DiffProcessorHelper.JsDocDiffHelper.diffJsDocInfo(e[a],t[a],r),d.DiffProcessorHelper.ApiDecoratorsDiffHelper.diffDecorator(e[a],t[a],r),d.DiffProcessorHelper.ApiNodeDiffHelper.diffNodeInfo(e[a],t[a],r,n)}else{const n=m.setmethodInfoMap(t);e.forEach((e=>{const t=n.get(e.getDefinedText());t?(d.DiffProcessorHelper.JsDocDiffHelper.diffJsDocInfo(e,t,r),d.DiffProcessorHelper.ApiDecoratorsDiffHelper.diffDecorator(e,t,r),n.delete(e.getDefinedText())):r.push(d.DiffProcessorHelper.wrapDiffInfo(e,void 0,new c.DiffTypeInfo(c.ApiStatusCode.DELETE,c.ApiDiffType.REDUCE,e.getDefinedText(),void 0)))})),n.forEach(((e,t)=>{r.push(d.DiffProcessorHelper.wrapDiffInfo(void 0,e,new c.DiffTypeInfo(c.ApiStatusCode.NEW_API,c.ApiDiffType.ADD,void 0,e.getDefinedText())))}))}}static setmethodInfoMap(e){const t=new Map;return e.forEach((e=>{t.set(e.getDefinedText(),e)})),t}static getDiffSet(e,t){const r=new Map,n=new Map;m.setApiInfoMap(r,e),m.setApiInfoMap(n,t);const i=new Map;r.forEach(((e,t)=>{n.has(t)||i.set(t,e)}));const a=new Map;return n.forEach(((e,t)=>{r.has(t)||a.set(t,e)})),[i,a]}static setApiInfoMap(e,t){t.forEach((t=>{const r=JSON.stringify(t);e.set(r,t)}))}static getApiLocations(e,t){const r=new Map;for(const n of e.keys()){const i=e.get(n);m.processFileApiMap(i,r,t)}return r}static processFileApiMap(e,t,r){for(const n of e.keys()){if(n===o.StringConstant.SELF)continue;e.get(n).get(o.StringConstant.SELF).forEach((e=>{m.processApiInfo(e,t,r)}))}}static processApiInfo(e,t,r){const n=e.getNode();if(r){const t=n?.getFullText().replace(n.getText(),"");t&&e.setJsDocText(t)}if(e.setSyscap(m.getSyscapField(e)),e.setParentApi(void 0),e.removeNode(),!u.apiStatisticsType.has(e.getApiType()))return;if("constructor"===e.getApiName())return;const i=e,a=i.getHierarchicalRelations();if(t.set(a.toString(),a),!s.containerApiTypes.has(i.getApiType()))return;i.getChildApis().forEach((e=>{m.processApiInfo(e,t,r)}))}static getSyscapField(e){if(e.getApiType()===s.ApiType.SOURCE_FILE){const t=e.getNode()?.getFullText();let r="";return/\@[S|s][Y|y][S|s][C|c][A|a][P|p]\s*((\w|\.|\/|\{|\@|\}|\s)+)/g.test(t)&&t.replace(/\@[S|s][Y|y][S|s][C|c][A|a][P|p]\s*((\w|\.|\/|\{|\@|\}|\s)+)/g,((e,t)=>(r=e.replace(/\@[S|s][Y|y][S|s][C|c][A|a][P|p]/g,"").trim(),r))),p.FunctionUtils.handleSyscap(r)}if(f.notJsDocApiTypes.has(e.getApiType()))return"";const t=e,r=t.getLastJsDocInfo();if(!r)return m.searchSyscapFieldInParent(t);let n=r?.getSyscap();return n?n?p.FunctionUtils.handleSyscap(n):"":m.searchSyscapFieldInParent(t)}static searchSyscapFieldInParent(e){let t=e,r="";const n=t.getNode();for(;n&&t&&!a.default.isSourceFile(n);){if(r=t.getSyscap(),r)return r;t=t.getParentApi()}return r}}t.DiffHelper=m},87191:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SyscapProcessorHelper=void 0;const n=r(80879);class i{static matchSubsystem(e){const t=n.FunctionUtils.readSubsystemFile().subsystemMap,r=i.getSyscapField(e);return r?t.get(r):"NA"}static getSyscapField(e){const t=e.getNewSyscapField();if(t)return t;const r=e.getOldSyscapField();return r||""}static getSingleKitInfo(e){return""!==e.getNewKitInfo()?e.getNewKitInfo():e.getOldKitInfo()}}t.SyscapProcessorHelper=i},56405:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.JsDocProcessorHelper=t.CommentHelper=void 0;const i=n(r(58843)),a=r(37583),o=r(4e3),s=r(87960),c=r(44791);class l{static getNodeLeadingComments(e,t){try{const r=i.default.getLeadingCommentRanges(t.getFullText(),e.getFullStart());if(r&&r.length){const e=[];return r.forEach((r=>{const n=t.getFullText().slice(r.pos,r.end),i=l.parseComment(n,r.kind,!0);i.pos=r.pos,i.end=r.end,e.push(i)})),e}return[]}catch(t){return o.LogUtil.d("CommentHelper",`node(kind=${e.kind}) is created in memory.`),[]}}static parseComment(e,t,n){const{parse:a}=r(67634),o={text:e,isMultiLine:t===i.default.SyntaxKind.MultiLineCommentTrivia,isLeading:n,description:"",commentTags:[],parsedComment:void 0,pos:-1,end:-1,ignore:!1,isApiComment:!1,isInstruct:!1,isFileJsDoc:!1};let c=e,l=a(c);if(0===l.length){if(s.StringUtils.hasSubstring(c,this.referenceRegexp)||t===i.default.SyntaxKind.SingleLineCommentTrivia){o.isMultiLine=!1;const e=2;o.text=c.substring(e,c.length)}return o}o.parsedComment=l[0],o.description=l[0].description;for(let e=0;e<l[0].tags.length;e++){const t=l[0].tags[e];o.commentTags.push({tag:t.tag,name:t.name,type:t.type,optional:t.optional,description:t.description,source:t.source[0].source,lineNumber:t.source[0].number,tokenSource:t.source,defaultValue:t.default?t.default:void 0})}return s.StringUtils.hasSubstring(c,this.fileJsDoc)&&(o.isFileJsDoc=!0),o.isApiComment=!0,o}}t.CommentHelper=l,l.licenseKeyword="Copyright",l.referenceRegexp=/\/\/\/\s*<reference\s*path/g,l.referenceCommentRegexp=/\/\s*<reference\s*path/g,l.mutiCommentDelimiter="/**",l.fileJsDoc=/\@kit/g;class u{static setSyscap(e,t){e.setSyscap(t.name)}static setSince(e,t){e.setSince(t.name)}static setIsForm(e){e.setIsForm(!0)}static setIsCrossPlatForm(e){e.setIsCrossPlatForm(!0)}static setIsSystemApi(e){e.setIsSystemApi(!0)}static setIsAtomicService(e){e.setIsAtomicService(!0)}static setDeprecatedVersion(e,t){e.setDeprecatedVersion(t.description)}static setUseinstead(e,t){e.setUseinstead(t.name)}static setPermission(e,t){const r=t.description,n=t.name,i=r?`${n} ${r}`:`${n}`;e.setPermission(i)}static addErrorCode(e,t){t&&!isNaN(Number(t.name))&&e.addErrorCode(Number(t.name))}static setTypeInfo(e,t){e.setTypeInfo(t.type)}static setIsConstant(e){e.setIsConstant(!0)}static setModelLimitation(e,t){e.setModelLimitation(t.tag)}static setKitContent(e,t){e.setKit(t.source.replace(/\* @kit\s+|\r|\n/g,"").trim())}static setIsFile(e,t){e.setIsFile(!0)}static processJsDoc(e,t){const r=new a.Comment.JsDocInfo;r.setDescription(e.description);for(let n=0;n<e.commentTags.length;n++){const i=e.commentTags[n];r.addTag(i),r.setKit(t);const a=d.get(i.tag.toLowerCase());a&&a(r,i)}return r}static processJsDocInfos(e,t,r){const n=e.getSourceFile(),i=l.getNodeLeadingComments(e,n).filter((e=>e.isApiComment&&!e.isFileJsDoc&&t!==c.ApiType.SOURCE_FILE||e.isApiComment&&e.isFileJsDoc&&t===c.ApiType.SOURCE_FILE)),o=[];if(0===i.length&&""!==r){const e=new a.Comment.JsDocInfo;e.setKit(r),o.push(e)}for(let e=0;e<i.length;e++){const t=i[e],n=u.processJsDoc(t,r);o.push(n)}return o}}t.JsDocProcessorHelper=u;const d=new Map([[a.Comment.JsDocTag.SYSCAP,u.setSyscap],[a.Comment.JsDocTag.SINCE,u.setSince],[a.Comment.JsDocTag.FORM,u.setIsForm],[a.Comment.JsDocTag.CROSS_PLAT_FORM,u.setIsCrossPlatForm],[a.Comment.JsDocTag.SYSTEM_API,u.setIsSystemApi],[a.Comment.JsDocTag.STAGE_MODEL_ONLY,u.setModelLimitation],[a.Comment.JsDocTag.FA_MODEL_ONLY,u.setModelLimitation],[a.Comment.JsDocTag.DEPRECATED,u.setDeprecatedVersion],[a.Comment.JsDocTag.USEINSTEAD,u.setUseinstead],[a.Comment.JsDocTag.TYPE,u.setTypeInfo],[a.Comment.JsDocTag.PERMISSION,u.setPermission],[a.Comment.JsDocTag.THROWS,u.addErrorCode],[a.Comment.JsDocTag.CONSTANT,u.setIsConstant],[a.Comment.JsDocTag.ATOMIC_SERVICE,u.setIsAtomicService],[a.Comment.JsDocTag.KIT,u.setKitContent],[a.Comment.JsDocTag.FILE,u.setIsFile]])},17858:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.typeMap=t.modifierProcessorMap=t.nodeProcessorMap=t.ModifierHelper=t.NodeProcessorHelper=t.parserParam=void 0;const i=n(r(58843)),a=n(r(2543)),o=r(44791),s=r(87960),c=r(8136),l=r(56405);t.parserParam=new o.ParserParam;class u{static processReference(e,t,r){const n=[];if(e.referencedFiles.forEach((t=>{const i=new o.ReferenceInfo(o.ApiType.REFERENCE_FILE,e,r);i.setApiName(o.ApiType.REFERENCE_FILE),i.setPathName(t.fileName),n.push(i)})),0===n.length)return;const i=new Map;i.set(c.StringConstant.SELF,n),t.set(c.StringConstant.REFERENCE,i)}static processNode(e,r,n){const i=t.nodeProcessorMap.get(e.kind);if(!i)return;const a=i(e,n),o=u.setApiInfo(a,r,e),s=u.getChildNodes(e);s&&s.forEach((e=>{u.processNode(e,o,a)}))}static setApiInfo(e,t,r){if(e.getApiType()!==o.ApiType.METHOD)return u.setSingleApiInfo(e,t);let n=[];n=u.processEventMethod(e,r),u.processAsyncMethod(n);let i=new Map;return n.forEach((e=>{i=u.setSingleApiInfo(e,t)})),i}static setSingleApiInfo(e,t){const r=e.getApiName(),n=e.getParentApi();if(n&&o.containerApiTypes.has(n.apiType)){n.addChildApi(e)}if(t.has(r)){const n=t.get(r);return n.get(c.StringConstant.SELF).push(e),n}const i=[];i.push(e);const a=new Map;return a.set(c.StringConstant.SELF,i),t.set(r,a),a}static processEventMethod(e,t){const r=[],n=u.getOnOrOffMethodFirstParamType(e,t);if(void 0===n)return r.push(e),r;const o=n.literal;if(n.kind===i.default.SyntaxKind.LiteralType&&i.default.isStringLiteral(o)){const t=o.getText();e.setApiName(`${e.getApiName()}_${t.substring(1,t.length-1)}`),e.setIsJoinType(!0)}else if(n.kind===i.default.SyntaxKind.UnionType){n.types.forEach((t=>{if(i.default.isLiteralTypeNode(t)&&i.default.isStringLiteral(t.literal)){const n=t.literal.getText(),i=a.default.cloneDeep(e);i.setParentApi(e.getParentApi()),i.setApiName(`${e.getApiName()}_${n.substring(1,n.length-1)}`),e.setIsJoinType(!0),r.push(i)}}))}else n.kind===i.default.SyntaxKind.StringKeyword?(e.setApiName(`${e.getApiName()}_string`),e.setIsJoinType(!0)):n.kind===i.default.SyntaxKind.BooleanKeyword?(e.setApiName(`${e.getApiName()}_boolean`),e.setIsJoinType(!0)):e.setApiName(`${e.getApiName()}_${n.getText()}`);return 0===r.length&&r.push(e),r}static getOnOrOffMethodFirstParamType(e,t){if(!new Set(c.EventConstant.eventNameList).has(e.getApiName()))return;if(0===t.parameters.length)return;return t.parameters[0].type}static processAsyncMethod(e){e.forEach((e=>{const t=e,r=t.getReturnValue();if(1===r.length&&r[0].startsWith(c.StringConstant.PROMISE_METHOD_KEY))return void t.setSync(c.StringConstant.PROMISE_METHOD_KEY_CHANGE);const n=t.getParams();for(let e=n.length-1;e>=0;e--){const r=n[e].getType();if(1===r.length&&r[0].startsWith(c.StringConstant.ASYNC_CALLBACK_METHOD_KEY))return void t.setSync(c.StringConstant.ASYNC_CALLBACK_METHOD_KEY_CHANGE)}}))}static getChildNodes(e){return i.default.isInterfaceDeclaration(e)||i.default.isClassDeclaration(e)||i.default.isEnumDeclaration(e)||i.default.isStructDeclaration(e)?e.members:i.default.isTypeAliasDeclaration(e)&&i.default.isTypeLiteralNode(e.type)?e.type.members:i.default.isModuleDeclaration(e)&&e.body&&i.default.isModuleBlock(e.body)?e.body.statements:void 0}static processExportAssignment(e,t){const r=new o.ExportDefaultInfo(o.ApiType.EXPORT_DEFAULT,e,t),n=e;return r.setApiName(c.StringConstant.EXPORT_DEFAULT+n.expression.getText()),r.setDefinedText(n.getText()),d.processModifiers(n.modifiers,r),r}static processExportDeclaration(e,t){const r=new o.ExportDeclareInfo(o.ApiType.EXPORT,e,t),n=e,a=n.exportClause;if(a){if(i.default.isNamespaceExport(a))r.setApiName(c.StringConstant.EXPORT+a.name.getText());else if(i.default.isNamedExports(a)){const e=[];a.elements.forEach((t=>{const n=t.propertyName?t.propertyName.getText():"",i=t.name.getText();e.push(i),r.addExportValues(i,n)})),r.setApiName(c.StringConstant.EXPORT+e.join("_"))}}else r.setApiName(c.StringConstant.EXPORT+(n.moduleSpecifier?n.moduleSpecifier.getText():""));return r.setDefinedText(n.getText()),d.processModifiers(n.modifiers,r),r}static processImportEqualsDeclaration(e,t){return new o.ImportInfo(o.ApiType.EXPORT,e,t)}static processImportInfo(e,t){const r=new o.ImportInfo(o.ApiType.IMPORT,e,t),n=e;if(r.setApiName(n.moduleSpecifier.getText()),r.setImportPath(n.moduleSpecifier.getText()),r.setDefinedText(n.getText()),d.processModifiers(n.modifiers,r),void 0===n.importClause)return r;const a=n.importClause;if(a.namedBindings&&i.default.isNamedImports(a.namedBindings))a.namedBindings.elements.forEach((e=>{const t=e.propertyName?e.propertyName.getText():"",n=e.name.getText();r.addImportValue(n,t)}));else{const e=a.name?a.name.escapedText.toString():"";r.addImportValue(e,e)}return r}static processInterface(e,t){const r=e,n=new o.InterfaceInfo(o.ApiType.INTERFACE,e,t);return n.setApiName(r.name.getText()),r.typeParameters?.forEach((e=>{n.setGenericInfo(u.processGenericity(e))})),d.processModifiers(r.modifiers,n),void 0===r.heritageClauses||r.heritageClauses.forEach((e=>{e.token===i.default.SyntaxKind.ExtendsKeyword?e.types.forEach((e=>{const t=new o.ParentClass;t.setImplementClass(""),t.setExtendClass(e.getText()),n.setParentClasses(t)})):e.token===i.default.SyntaxKind.ImplementsKeyword&&e.types.forEach((e=>{const t=new o.ParentClass;t.setImplementClass(e.getText()),t.setExtendClass(""),n.setParentClasses(t)}))})),n}static processGenericity(e){const t=new o.GenericInfo;return t.setIsGenericity(!0),t.setGenericContent(e.getText()),t}static processClass(e,t){const r=e,n=new o.ClassInfo(o.ApiType.CLASS,e,t),a=r.name?r.name.getText():"";return n.setApiName(a),r.typeParameters?.forEach((e=>{n.setGenericInfo(u.processGenericity(e))})),d.processModifiers(r.modifiers,n),void 0===r.heritageClauses||r.heritageClauses.forEach((e=>{e.token===i.default.SyntaxKind.ExtendsKeyword?e.types.forEach((e=>{const t=new o.ParentClass;t.setExtendClass(e.getText()),t.setImplementClass(""),n.setParentClasses(t)})):e.token===i.default.SyntaxKind.ImplementsKeyword&&e.types.forEach((e=>{const t=new o.ParentClass;t.setImplementClass(e.getText()),t.setExtendClass(""),n.setParentClasses(t)}))})),n}static processBaseModule(e,t){const r=e;return i.default.isIdentifier(r.name)?u.processNamespace(e,t):u.processModule(e,t)}static processModule(e,t){const r=e,n=new o.ModuleInfo(o.ApiType.MODULE,e,t);return n.setApiName(r.name.getText()),d.processModifiers(r.modifiers,n),n}static processNamespace(e,t){const r=e,n=new o.NamespaceInfo(o.ApiType.NAMESPACE,e,t);return n.setApiName(r.name.getText()),d.processModifiers(r.modifiers,n),n}static processEnum(e,t){const r=e,n=new o.EnumInfo(o.ApiType.ENUM,e,t);return n.setApiName(r.name.getText()),d.processModifiers(r.modifiers,n),n}static processEnumValue(e,t){const r=e,n=new o.EnumValueInfo(o.ApiType.ENUM_VALUE,e,t);n.setApiName(r.name.getText()),n.setDefinedText(r.getText());const i=t;if(n.setValue(u.getCurrentEnumValue(i)),r.initializer){const e=r.initializer.getText().replace(u.regQuotation,"$1");n.setValue(e)}return n}static getCurrentEnumValue(e){const t=e.getChildApis().length;if(0===t)return String(0);const r=e.getChildApis()[t-1].getValue();return isNaN(Number(r))?"":`${Number(r)+1}`}static processPropertySigAndDec(e,t){const r=e,n=new o.PropertyInfo(o.ApiType.PROPERTY,e,t);return n.setApiName(r.name.getText()),n.setDefinedText(r.getText()),d.processModifiers(r.modifiers,n),n.setIsRequired(!r.questionToken),n.addType(u.processDataType(r.type)),n.setTypeKind(r.type?r.type.kind:-1),n}static processStruct(e,t){const r=e,n=new o.StructInfo(o.ApiType.STRUCT,e,t),i=r.name?r.name.getText():"";return n.setApiName(i),n.setDefinedText(n.getApiName()),d.processModifiers(r.modifiers,n),n}static processMethod(e,t){const r=e,n=new o.MethodInfo(o.ApiType.METHOD,e,t);n.setDefinedText(r.getText());let a=r.name?r.name.getText():"";(i.default.isConstructorDeclaration(r)||i.default.isConstructSignatureDeclaration(r)||i.default.isCallSignatureDeclaration(r))&&(a=c.StringConstant.CONSTRUCTOR_API_NAME),n.setApiName(a),r.typeParameters?.forEach((e=>{n.setGenericInfo(u.processGenericity(e))}));const s=r.getText().replace(/export\s+|declare\s+|function\s+|\r\n|\;/g,"");if(n.setCallForm(s),r.type&&i.default.SyntaxKind.VoidKeyword!==r.type.kind){const e=u.processDataType(r.type);n.setReturnValue(e),n.setReturnValueType(r.type.kind),Boolean(process.env.NEED_DETECTION)&&u.processFunctionTypeReference(r.type,n,new o.ParamInfo(o.ApiType.PARAM),!1)}for(let e=0;e<r.parameters.length;e++){const t=r.parameters[e],i=u.processParam(t,n);n.addParam(i)}return i.default.isCallSignatureDeclaration(r)||i.default.isConstructSignatureDeclaration(r)||d.processModifiers(r.modifiers,n),n}static processParam(e,r){const n=new o.ParamInfo(o.ApiType.PARAM);if(n.setApiName(e.name.getText()),n.setIsRequired(!e.questionToken),n.setDefinedText(e.getText()),n.setParamType(e.type?e.type.kind:-1),void 0===e.type)return n;let a;return Boolean(process.env.NEED_DETECTION)&&u.processFunctionTypeReference(e.type,r,n,!0),i.default.isLiteralTypeNode(e.type)&&(a=t.typeMap.get(e.type.literal.kind)),n.setType(u.processDataType(e.type)),n}static processFunctionTypeReference(e,r,n,a=!0){if(i.default.isTypeLiteralNode(e)?u.processFunctionTypeObject(e,r,n,a):i.default.isUnionTypeNode(e)&&e.types.forEach((e=>{u.processFunctionTypeReference(e,r,n,a)})),i.default.isTypeReferenceNode(e))try{const i=t.parserParam.getTsProgram().getTypeChecker(),s=i.getTypeAtLocation(e).symbol.declarations;if(!s)return;const c=s[0],u=l.JsDocProcessorHelper.processJsDocInfos(c,o.ApiType.TYPE_ALIAS,r.getKitInfoFromParent(r));if(0===u.length)return;const d=u[u.length-1];d.removeTags(),a?n.addTypeLocations(d):r.addTypeLocations(d)}catch(e){}}static processFunctionTypeObject(e,t,r,n=!0){e.members.forEach((e=>{const i=l.JsDocProcessorHelper.processJsDocInfos(e,o.ApiType.TYPE_ALIAS,t.getKitInfoFromParent(t));if(0===i.length)return;const a=i[i.length-1];a.removeTags(),n?r.addObjLocations(a):t.addObjLocations(a)}))}static processDataType(e){const t=[];return e&&e.kind!==i.default.SyntaxKind.VoidKeyword?i.default.isUnionTypeNode(e)?(e.types.forEach((e=>{t.push(e.getText())})),t):(t.push(e.getText()),t):t}static TypeAliasDeclaration(e,t){const r=e;return r.type.kind===i.default.SyntaxKind.TypeLiteral?u.processTypeInterface(r,t):u.processTypeAlias(r,t)}static processTypeInterface(e,t){const r=new o.InterfaceInfo(o.ApiType.INTERFACE,e,t);return r.setApiName(e.name.getText()),r.setDefinedText(r.getApiName()),d.processModifiers(e.modifiers,r),r}static processTypeAlias(e,t){const r=new Map([[i.default.SyntaxKind.UnionType,o.TypeAliasType.UNION_TYPE],[i.default.SyntaxKind.TypeLiteral,o.TypeAliasType.OBJECT_TYPE],[i.default.SyntaxKind.TupleType,o.TypeAliasType.TUPLE_TYPE],[i.default.SyntaxKind.TypeReference,o.TypeAliasType.REFERENCE_TYPE]]),n=new o.TypeAliasInfo(o.ApiType.TYPE_ALIAS,e,t);n.setApiName(e.name.getText());const a=r.get(e.type.kind);return a&&n.setTypeName(a),n.setDefinedText(e.getText()),d.processModifiers(e.modifiers,n),n.addType(u.processDataType(e.type)),n}static processVariableStat(e,r){const n=e,a=n.getText(),o=n.declarationList.declarations[0];let s="",c="";if(o.type)if(i.default.isLiteralTypeNode(o.type)){const e=t.typeMap.get(o.type.literal.kind);s=e||"",c=o.type.literal.getText().replace(u.regQuotation,"$1")}else s=o.type.getText();if(/declare\s+const/.test(n.getText())&&/[a-zA-Z]+(Attribute|Interface)/.test(s))return u.processDeclareConstant(n,a,s,r);if(o.initializer){const e=o.initializer.getText();return u.processConstant(n,a,e,r)}const l=o.type;if(l&&i.default.isLiteralTypeNode(l)){const e=l.getText();return u.processConstant(n,a,e,r)}return u.processVaribleProperty(n,a,r)}static processConstant(e,t,r,n){const i=e.declarationList.declarations[0],a=new o.ConstantInfo(o.ApiType.CONSTANT,e,n);return a.setDefinedText(t),a.setApiName(i.name.getText()),a.setValue(r),a}static processDeclareConstant(e,t,r,n){const i=e.declarationList.declarations[0],a=new o.ConstantInfo(o.ApiType.DECLARE_CONST,e,n);return a.setDefinedText(t),a.setApiName(i.name.getText()),a.setValue(r),a}static processVaribleProperty(e,t,r){const n=e.declarationList.declarations[0],i=new o.PropertyInfo(o.ApiType.PROPERTY,e,r);return i.setDefinedText(t),i.setApiName(n.name.getText()),i.addType(u.processDataType(n.type)),i.setIsRequired(!0),s.StringUtils.hasSubstring(t,c.StringConstant.CONST_KEY_WORD)&&i.setIsReadOnly(!0),i}}t.NodeProcessorHelper=u,u.regQuotation=/^[\'|\"](.*)[\'|\"]$/;class d{static setIsStatic(e){e.setIsStatic(!0)}static setIsReadonly(e){const t=e;t.setIsReadOnly&&t.setIsReadOnly(!0)}static setIsExport(e){e.setIsExport(!0)}static processModifiers(e,r){let n="";e&&e.forEach((e=>{o.containerApiTypes.has(r.apiType)&&!i.default.isDecorator(e)&&(n+=` ${e.getText()}`);const a=t.modifierProcessorMap.get(e.kind);a&&a(r)})),o.containerApiTypes.has(r.apiType)&&(n+=` ${r.getApiType().toLowerCase()} ${r.getApiName()}`,r.setDefinedText(n))}}t.ModifierHelper=d,t.nodeProcessorMap=new Map([[i.default.SyntaxKind.ExportAssignment,u.processExportAssignment],[i.default.SyntaxKind.ExportDeclaration,u.processExportDeclaration],[i.default.SyntaxKind.ImportDeclaration,u.processImportInfo],[i.default.SyntaxKind.VariableStatement,u.processVariableStat],[i.default.SyntaxKind.MethodDeclaration,u.processMethod],[i.default.SyntaxKind.MethodSignature,u.processMethod],[i.default.SyntaxKind.FunctionDeclaration,u.processMethod],[i.default.SyntaxKind.Constructor,u.processMethod],[i.default.SyntaxKind.ConstructSignature,u.processMethod],[i.default.SyntaxKind.CallSignature,u.processMethod],[i.default.SyntaxKind.PropertyDeclaration,u.processPropertySigAndDec],[i.default.SyntaxKind.PropertySignature,u.processPropertySigAndDec],[i.default.SyntaxKind.EnumMember,u.processEnumValue],[i.default.SyntaxKind.EnumDeclaration,u.processEnum],[i.default.SyntaxKind.TypeAliasDeclaration,u.processTypeAlias],[i.default.SyntaxKind.ClassDeclaration,u.processClass],[i.default.SyntaxKind.InterfaceDeclaration,u.processInterface],[i.default.SyntaxKind.ModuleDeclaration,u.processBaseModule],[i.default.SyntaxKind.StructDeclaration,u.processStruct]]),t.modifierProcessorMap=new Map([[i.default.SyntaxKind.ConstKeyword,d.setIsReadonly],[i.default.SyntaxKind.ReadonlyKeyword,d.setIsReadonly],[i.default.SyntaxKind.StaticKeyword,d.setIsStatic],[i.default.SyntaxKind.ExportKeyword,d.setIsExport]]),t.typeMap=new Map([[i.default.SyntaxKind.StringLiteral,"string"],[i.default.SyntaxKind.NumericLiteral,"number"]])},3359:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.resultsProcessMethod=t.ResultsProcessHelper=void 0;const s=o(r(58843)),c=r(37583),l=r(8136),u=r(44791),d=a(r(68020));class p{static getApiInfosInFileMap(e,t){if(t===l.StringConstant.SELF)return[];return e.get(t).get(l.StringConstant.SELF)}static processFileApiMap(e){const t=[];for(const r of e.keys()){p.getApiInfosInFileMap(e,r).forEach((e=>{p.processApiInfo(e),t.push(e)}))}return t}static processApiInfo(e){if(e.setParentApi(void 0),e.removeNode(),p.processJsDocInfos(e),!u.containerApiTypes.has(e.getApiType()))return;e.getChildApis().forEach((e=>{p.processApiInfo(e)}))}static processJsDocInfos(e){if(!(e instanceof u.ApiInfo))return;e.getJsDocInfos().forEach((e=>{e.removeTags()}))}static processFileApiMapForGetBasicApi(e){let t=[];for(const r of e.keys()){p.getApiInfosInFileMap(e,r).forEach((e=>{t=t.concat(p.processApiInfoForGetBasicApi(e))}))}return t}static processApiInfoForGetBasicApi(e){let t=[];if(t=t.concat(e),!u.containerApiTypes.has(e.getApiType()))return t;return e.getChildApis().forEach((e=>{t=t.concat(p.processApiInfoForGetBasicApi(e))})),t}static processFileApiMapForEachSince(e){const t=[];for(const r of e.keys()){p.getApiInfosInFileMap(e,r).forEach((e=>{const r=p.processApiInfoForEachSince(e);0!==r.length&&t.push(...r)}))}return t}static processApiInfoForEachSince(e){const t=p.getNodeInfo(e);if(!u.containerApiTypes.has(e.getApiType()))return t;return e.getChildApis().forEach((e=>{const r=p.processApiInfoForEachSince(e);p.mergeResultApis(t,r)})),t}static mergeResultApis(e,t){e.forEach((e=>{const r=e,n=p.getResultApisVersion(t,Number(r.getSince()));r.addChildApi(n)}))}static getResultApisVersion(e,t){return e.filter((e=>{const r=Number(e.getSince());return-1===r||r>=t}))}static getNodeInfo(e){let r=e.getApiType();const n=t.resultsProcessMethod.get(r);if(!n)return[];return n(e)}static processProperty(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.PropertyInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setType(r.getType().join(" | ")),n.setName(e.getApiName()),n.setIsRequired(r.getIsRequired()),n.setIsReadOnly(r.getIsReadOnly()),n.setIsStatic(r.getIsStatic()),t.push(n)}return n.forEach((n=>{const i=new d.PropertyInfo(e.getApiType(),n),a=n.getTypeInfo(),o=!/\?/.test(a);i.setType(a?a.replace(/^[\?]*[\(](.*)[\)]$/,"$1"):r.getType().join(" | ")),i.setName(e.getApiName()),i.setIsRequired(!!o||r.getIsRequired()),i.setIsReadOnly(r.getIsReadOnly()),i.setIsStatic(r.getIsStatic()),t.push(i)})),t}static processClass(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.ClassInterfaceInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setParentClasses(r.getParentClasses()),t.push(n)}return n.forEach((n=>{const i=new d.ClassInterfaceInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setParentClasses(r.getParentClasses()),t.push(i)})),t}static processInterface(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.ClassInterfaceInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setParentClasses(r.getParentClasses()),t.push(n)}return n.forEach((n=>{const i=new d.ClassInterfaceInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setParentClasses(r.getParentClasses()),t.push(i)})),t}static processNamespace(e){const t=[],r=e.getJsDocInfos();if(0===r.length){const r=new d.NamespaceEnumInfo(e.getApiType(),new c.Comment.JsDocInfo);r.setName(e.getApiName()),t.push(r)}return r.forEach((r=>{const n=new d.NamespaceEnumInfo(e.getApiType(),r);n.setName(e.getApiName()),t.push(n)})),t}static processMethod(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.MethodInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setCallForm(r.getCallForm()),n.setReturnValue(r.getReturnValue().join(" | ")),r.getParams().forEach((e=>{const t=new d.ParamInfo(e.getApiType(),new c.Comment.JsDocInfo);t.setName(e.getApiName()),t.setType(e.getType().join(" | ")),t.setIsRequired(e.getIsRequired()),n.addParam(t)})),n.setIsStatic(r.getIsStatic()),t.push(n)}return n.forEach((n=>{const i=new d.MethodInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setCallForm(r.getCallForm()),i.setReturnValue(r.getReturnValue().join(" | ")),r.getParams().forEach((e=>{const t=new d.ParamInfo(e.getApiType(),new c.Comment.JsDocInfo);t.setName(e.getApiName()),t.setType(e.getType().join(" | ")),t.setIsRequired(e.getIsRequired()),i.addParam(t)})),i.setIsStatic(r.getIsStatic()),t.push(i)})),t}static processExportDefault(e){const t=[],r=new d.ExportDefaultInfo(e.getApiType());return r.setName(e.getApiName()),t.push(r),t}static processImportInfo(e){const t=[],r=e,n=new d.ImportInfo(e.getApiType());return r.getImportValues().forEach((e=>{n.addImportValue(e.key,e.value)})),t.push(n),t}static processConstant(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.ConstantInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName());const i=r.getValue();n.setValue(i.replace(p.regQuotation,"$1")),n.setType(isNaN(Number(i))?"string":"number");const a=r.getNode();if(a.initializer){const e=f.get(a.initializer.kind);n.setType(e||"")}t.push(n)}return n.forEach((n=>{const i=new d.ConstantInfo(e.getApiType(),n);i.setName(e.getApiName());const a=r.getValue();i.setValue(a.replace(p.regQuotation,"$1")),i.setType(isNaN(Number(a))?"string":"number");const o=r.getNode();if(o.initializer){const e=f.get(o.initializer.kind);i.setType(e||"")}t.push(i)})),t}static processDeclareConstant(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.DeclareConstInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setType(r.getValue());const i=r.getNode();if(i.initializer){const e=f.get(i.initializer.kind);n.setType(e||"")}t.push(n)}return n.forEach((n=>{const i=new d.DeclareConstInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setType(r.getValue());const a=r.getNode();if(a.initializer){const e=f.get(a.initializer.kind);i.setType(e||"")}t.push(i)})),t}static processEnum(e){const t=[],r=e.getJsDocInfos();if(0===r.length){const r=new d.NamespaceEnumInfo(e.getApiType(),new c.Comment.JsDocInfo);r.setName(e.getApiName()),t.push(r)}return r.forEach((r=>{const n=new d.NamespaceEnumInfo(e.getApiType(),r);n.setName(e.getApiName()),t.push(n)})),t}static processEnumMember(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.EnumValueInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setValue(r.getValue()),t.push(n)}return n.forEach((n=>{const i=new d.EnumValueInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setValue(r.getValue()),t.push(i)})),t}static processTypeAlias(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const e=p.processTypeAliasGetNewInfo(r,new c.Comment.JsDocInfo);t.push(e)}return n.forEach((e=>{const n=p.processTypeAliasGetNewInfo(r,e);t.push(n)})),t}static processTypeAliasGetNewInfo(e,t){if(e.getTypeName()===u.TypeAliasType.UNION_TYPE){const r=new d.UnionTypeInfo(e.getTypeName(),t);return r.setName(e.getApiName()),r.addValueRanges(e.getType().map((e=>e.replace(p.regQuotation,"$1")))),r}const r=new d.TypeAliasInfo(e.getApiType(),t);return r.setName(e.getApiName()),r.setType(e.getType().join(" | ")),r}}t.ResultsProcessHelper=p,p.regQuotation=/^[\'|\"](.*)[\'|\"]$/;const f=new Map([[s.default.SyntaxKind.StringLiteral,"string"],[s.default.SyntaxKind.NumericLiteral,"number"]]);t.resultsProcessMethod=new Map([[u.ApiType.PROPERTY,p.processProperty],[u.ApiType.CLASS,p.processClass],[u.ApiType.INTERFACE,p.processInterface],[u.ApiType.NAMESPACE,p.processNamespace],[u.ApiType.METHOD,p.processMethod],[u.ApiType.EXPORT_DEFAULT,p.processExportDefault],[u.ApiType.IMPORT,p.processImportInfo],[u.ApiType.CONSTANT,p.processConstant],[u.ApiType.DECLARE_CONST,p.processDeclareConstant],[u.ApiType.ENUM,p.processEnum],[u.ApiType.ENUM_VALUE,p.processEnumMember],[u.ApiType.TYPE_ALIAS,p.processTypeAlias]])},30871:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;const i=n(r(79896)),a=n(r(16928)),o=n(r(58843)),s=n(r(2543)),c=r(17858),l=r(3359),u=r(44791),d=r(8136),p=r(40745);class f{static parseDir(e,t=""){const r=p.FileUtils.readFilesInDir(e,(e=>e.endsWith(d.StringConstant.DTS_EXTENSION)||e.endsWith(d.StringConstant.DETS_EXTENSION)));Boolean(process.env.NEED_DETECTION)&&(c.parserParam.setFileDir(e),c.parserParam.setRootNames(r));const n=new Map;let i=[];return""===t?i=r:p.FileUtils.isDirectory(t)?i=p.FileUtils.readFilesInDir(t,(e=>e.endsWith(d.StringConstant.DTS_EXTENSION)||e.endsWith(d.StringConstant.DETS_EXTENSION))):p.FileUtils.isFile(t)&&(i=[t]),i.forEach((t=>{f.parseFile(e,t,n)})),n}static parseFile(e,t,r){if(!i.default.existsSync(t))return new Map;Boolean(process.env.NEED_DETECTION)&&c.parserParam.setFilePath(t);const n=i.default.readFileSync(t,d.StringConstant.UTF8);let s="";s=a.default.relative(e,t);const l=a.default.basename(t).replace(new RegExp(d.StringConstant.DTS_EXTENSION,"g"),d.StringConstant.TS_EXTENSION).replace(new RegExp(d.StringConstant.DETS_EXTENSION,"g"),d.StringConstant.ETS_EXTENSION),p=o.default.createSourceFile(l,n,o.default.ScriptTarget.ES2017,!0),f=[t];p.statements.forEach((e=>{o.default.isImportDeclaration(e)&&e.moduleSpecifier.getText().startsWith("./",1)&&f.push(a.default.resolve(t,"..",e.moduleSpecifier.getText().replace(/'|"/g,"")))})),Boolean(process.env.NEED_DETECTION)&&c.parserParam.setProgram(f);const m=new u.ApiInfo(u.ApiType.SOURCE_FILE,p,void 0);m.setFilePath(s),m.setApiName(s),m.setIsStruct(t.endsWith(d.StringConstant.ETS_EXTENSION));const g=new Map;return g.set(d.StringConstant.SELF,[m]),c.NodeProcessorHelper.processReference(p,g,m),p.forEachChild((e=>{c.NodeProcessorHelper.processNode(e,g,m)})),r||(r=new Map),r.set(s,g),r}static getApiInfo(e,t){const r=[];if(0===e.length)return r;let n=t;for(let t=0;t<e.length;t++){const i=e[t],a=n.get(i);if(!a)return r;n=a}const i=n.get(d.StringConstant.SELF);return i?(r.push(...i),r):r}static getParseResults(e){const t=s.default.cloneDeep(e),r=new Map;for(const n of t.keys()){const t=e.get(n),i=l.ResultsProcessHelper.processFileApiMap(t);r.set(n,i)}return JSON.stringify(Object.fromEntries(r),null,2)}static getParseEachSince(e){const t=s.default.cloneDeep(e),r=new Map;for(const n of t.keys()){const t=e.get(n),i=l.ResultsProcessHelper.processFileApiMapForEachSince(t);return r.set(n,i),JSON.stringify(i,null,2)}return""}static getAllBasicApi(e){let t=[];for(const r of e.keys()){const n=e.get(r),i=l.ResultsProcessHelper.processFileApiMapForGetBasicApi(n);t=t.concat(i)}return t}}t.Parser=f},12587:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ApiStatisticsHelper=void 0;const i=r(44791),a=r(16137),o=r(8136),s=r(4e3),c=n(r(58843));class l{static getApiStatisticsInfos(e){const t=[],r=[];for(const n of e.keys()){const i=e.get(n);i&&l.processFileApiMap(i,t,r)}return{apiStatisticsInfos:t,allApiStatisticsInfos:r}}static processFileApiMap(e,t,r){for(const n of e.keys()){if(n===o.StringConstant.SELF)continue;const i=e.get(n);if(!i||Array.isArray(i))continue;const a=i.get(o.StringConstant.SELF),s=new Map;if(!a||!Array.isArray(a))continue;l.connectDefinedText(a,s);const c=new Set;a.forEach((e=>{l.processApiInfo(e,t,s,r,c)}))}}static connectDefinedText(e,t){e.forEach((e=>{if(e.getApiType()===i.ApiType.METHOD){if(a.notMergeDefinedText.has(e.getApiName()))return;const r=t.get(l.joinRelations(e));if(r){const n=`${r}\n${e.getDefinedText()}`;return void t.set(l.joinRelations(e),n)}t.set(l.joinRelations(e),e.getDefinedText())}if(i.containerApiTypes.has(e.getApiType())){const r=e;l.connectDefinedText(r.getChildApis(),t)}}))}static joinRelations(e){return e.getHierarchicalRelations().join()}static processApiInfo(e,t,r,n,s){const c=e;if(n.push(l.initApiStatisticsInfo(c,r,!0)),!a.apiStatisticsType.has(e.getApiType()))return;if(e.getApiName()===o.StringConstant.CONSTRUCTOR_API_NAME)return;const u=l.initApiStatisticsInfo(c,r);if(a.apiNotStatisticsType.has(u.getApiType())||s.has(l.joinRelations(e))||t.push(u),s.add(l.joinRelations(e)),!i.containerApiTypes.has(c.getApiType()))return;c.getChildApis().forEach((e=>{l.processApiInfo(e,t,r,n,s)}))}static initApiStatisticsInfo(e,t,r){const n=new a.ApiStatisticsInfo,s=e.getHierarchicalRelations();s.length>o.NumberConstant.RELATION_LENGTH&&n.setParentModuleName(s[s.length-o.NumberConstant.RELATION_LENGTH]);const c=l.joinRelations(e),u=t.get(c);if(r?n.setDefinedText(e.getDefinedText()):n.setDefinedText(u||e.getDefinedText()),n.setFilePath(e.getFilePath()).setApiType(e.getApiType()).setApiName(e.getApiName()).setPos(e.getPos()).setHierarchicalRelations(s.join("/")).setDecorators(e.getDecorators()),i.notJsDocApiTypes.has(e.getApiType()))return n;const d=e.getJsDocInfos()[0];d&&n.setSince(d.getSince());const p=e.getLastJsDocInfo();return p?n.setSyscap(p.getSyscap()?p.getSyscap():l.extendSyscap(e)).setPermission(p.getPermission()).setIsForm(p.getIsForm()).setIsCrossPlatForm(p.getIsCrossPlatForm()).setDeprecatedVersion(p.getDeprecatedVersion()===o.NumberConstant.DEFAULT_DEPRECATED_VERSION?"":p.getDeprecatedVersion()).setUseInstead(p.getUseinstead()).setApiLevel(p.getIsSystemApi()).setModelLimitation(p.getModelLimitation()).setIsAutomicService(p.getIsAtomicService()).setErrorCodes(p.getErrorCode()).setKitInfo(p.getKit()):n.setSyscap(l.extendSyscap(e)),n}static extendSyscap(e){let t=e,r="";const n=t.getNode();try{for(;n&&t&&!c.default.isSourceFile(n);){const e=t.getLastJsDocInfo();if(e&&(r=e.getSyscap()),r)return r;t=t.getParentApi()}}catch(e){s.LogUtil.e("SYSCAP ERROR",e)}return r}static getApiNumber(e){const t=new Set;return e.forEach((e=>{t.add(e.getHierarchicalRelations())})),t.size}}t.ApiStatisticsHelper=l},32875:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(62116)),a=n(r(59620)),o=r(11162),s=r(77926),c=r(4e3),l=r(40745);class u{constructor(){this.program=new i.default.Command}addPluginCommand(e){const t=e.pluginOptions;if(!t)return;const r=this.program.name(t.name).description(t.description).version(t.version).action((t=>{this.judgeOpts(t),e.start(t),e.stop()}));t.commands.forEach((e=>{e.isRequiredOption?r.requiredOption(...e.options):r.option(...e.options)}))}buildCommands(){this.program.parse()}judgeOpts(e){const t=e.toolName;if(s.toolNameSet.has(t)||this.stopRun(`error toolName "${t}",toolName not in [${[...s.toolNameSet]}] `),t===s.toolNameType.COLLECT){const t=e.collectPath;""!==t&&l.FileUtils.isExists(t)||this.stopRun(`error collectPath "${t}",collectPath need a exist file path`)}}stopRun(e){c.LogUtil.e("commander",e),this.program.help({error:!0})}}class d{constructor(){this.commandBuilder=new u}runPlugins(){o.getToolConfiguration().plugins.forEach((e=>{this.commandBuilder.addPluginCommand(e)})),this.commandBuilder.buildCommands()}}Object.assign(process.env,a.default),(new d).runPlugins()},77002:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiResultMessage=t.ApiResultInfo=t.ApiResultSimpleInfo=t.incompatibleApiDiffTypes=t.ErrorMessage=t.ErrorLevel=t.LogType=t.ErrorID=t.ErrorType=void 0;const n=r(40149);var i;!function(e){e.UNKNOW_DECORATOR="unknow decorator",e.MISSPELL_WORDS="misspell words",e.NAMING_ERRORS="naming errors",e.UNKNOW_PERMISSION="unknow permission",e.UNKNOW_SYSCAP="unknow syscap",e.UNKNOW_DEPRECATED="unknow deprecated",e.WRONG_ORDER="wrong order",e.WRONG_VALUE="wrong value",e.WRONG_SCENE="wrong scene",e.PARAMETER_ERRORS="wrong parameter",e.API_PAIR_ERRORS="limited api pair errors",e.FORBIDDEN_WORDS="forbidden word",e.API_CHANGE_ERRORS="api change errors",e.TS_SYNTAX_ERROR="TS syntax error",e.NO_JSDOC="No jsdoc"}(t.ErrorType||(t.ErrorType={})),function(e){e[e.UNKNOW_DECORATOR_ID=0]="UNKNOW_DECORATOR_ID",e[e.MISSPELL_WORDS_ID=1]="MISSPELL_WORDS_ID",e[e.NAMING_ERRORS_ID=2]="NAMING_ERRORS_ID",e[e.UNKNOW_PERMISSION_ID=3]="UNKNOW_PERMISSION_ID",e[e.UNKNOW_SYSCAP_ID=4]="UNKNOW_SYSCAP_ID",e[e.UNKNOW_DEPRECATED_ID=5]="UNKNOW_DEPRECATED_ID",e[e.WRONG_ORDER_ID=6]="WRONG_ORDER_ID",e[e.WRONG_VALUE_ID=7]="WRONG_VALUE_ID",e[e.WRONG_SCENE_ID=8]="WRONG_SCENE_ID",e[e.PARAMETER_ERRORS_ID=9]="PARAMETER_ERRORS_ID",e[e.API_PAIR_ERRORS_ID=10]="API_PAIR_ERRORS_ID",e[e.FORBIDDEN_WORDS_ID=11]="FORBIDDEN_WORDS_ID",e[e.API_CHANGE_ERRORS_ID=12]="API_CHANGE_ERRORS_ID",e[e.TS_SYNTAX_ERROR_ID=13]="TS_SYNTAX_ERROR_ID",e[e.NO_JSDOC_ID=14]="NO_JSDOC_ID"}(t.ErrorID||(t.ErrorID={})),function(e){e.LOG_API="Api",e.LOG_JSDOC="JsDoc",e.LOG_FILE="File"}(t.LogType||(t.LogType={})),function(e){e[e.HIGH=3]="HIGH",e[e.MIDDLE=2]="MIDDLE",e[e.LOW=1]="LOW"}(t.ErrorLevel||(t.ErrorLevel={})),function(e){e.ERROR_INFO_VALUE_EXTENDS="The [extends] tag value is incorrect. Please check if the tag value matches the inherited class name.",e.ERROR_INFO_VALUE_IMPLEMENTS="The [implements] tag value is incorrect. Please check if the tag value matches the inherited class name.",e.ERROR_INFO_VALUE_ENUM="The [enum] tag type is incorrect. Please check if the tag type is { string } or { number }.",e.ERROR_INFO_VALUE_SINCE="The [since] tag value is incorrect. Please check if the tag value is a numerical value.",e.ERROR_INFO_RETURNS="The [returns] tag was used incorrectly. The returns tag should not be used when the return type is void.",e.ERROR_INFO_VALUE_RETURNS="The [returns] tag type is incorrect. Please check if the tag type is consistent with the return type.",e.ERROR_INFO_VALUE_USEINSTEAD="The [useinstead] tag value is incorrect. Please check the usage method.",e.ERROR_INFO_VALUE_TYPE="The [type] tag type is incorrect. Please check if the type matches the attribute type.",e.ERROR_INFO_VALUE_DEFAULT="The [default] tag value is incorrect. Please supplement the default value.",e.ERROR_INFO_VALUE_PERMISSION="The [permission] tag value is incorrect. Please check if the permission field has been configured or update the configuration file.",e.ERROR_INFO_VALUE_DEPRECATED="The [deprecated] tag value is incorrect. Please check the usage method.",e.ERROR_INFO_VALUE_SYSCAP="The [syscap] tag value is incorrect. Please check if the syscap field is configured.",e.ERROR_INFO_VALUE_NAMESPACE="The [namespace] tag value is incorrect. Please check if it matches the namespace name.",e.ERROR_INFO_VALUE_INTERFACE="The [interface] label value is incorrect. Please check if it matches the interface name.",e.ERROR_INFO_VALUE_TYPEDEF="The [typedef] tag value is incorrect. Please check if it matches the interface name or type content.",e.ERROR_INFO_VALUE_STRUCT="The [struct] tag value is incorrect. Please check if it matches the struct name.",e.ERROR_INFO_TYPE_PARAM="The type of the [$$] [param] tag is incorrect. Please check if it matches the type of the [$$] parameter.",e.ERROR_INFO_VALUE_PARAM="The value of the [$$] [param] tag is incorrect. Please check if it matches the [$$] parameter name.",e.ERROR_INFO_VALUE1_THROWS="The type of the [$$] [throws] tag is incorrect. Please fill in [BusinessError].",e.ERROR_INFO_VALUE2_THROWS="The type of the [$$] [throws] tag is incorrect. Please check if the tag value is a numerical value.",e.ERROR_INFO_INHERIT="It was detected that there is an inheritable label [$$] in the current file, but there are child nodes without this label.",e.ERROR_ORDER="JSDoc label order error, please adjust the order of [$$] labels.",e.ERROR_LABELNAME="The [$$] tag does not exist. Please use a valid JSDoc tag.",e.ERROR_LOST_LABEL="JSDoc tag validity verification failed. Please confirm if the [$$] tag is missing.",e.ERROR_USE="JSDoc label validity verification failed. The [$$] label is not allowed. Please check the label usage method.",e.ERROR_MORELABEL="JSDoc tag validity verification failed.There are [$$] redundant [$$]. Please check if the tag should be deleted.",e.ERROR_REPEATLABEL="The validity verification of the JSDoc tag failed. The [$$] tag is not allowed to be reused, please delete the extra tags.",e.ERROR_USE_INTERFACE="The validity verification of the JSDoc tag failed. The [interface] tag and [typedef] tag are not allowed to be used simultaneously. Please confirm the interface class.",e.ERROR_EVENT_NAME_STRING="The event name should be string.",e.ERROR_EVENT_NAME_NULL="The event name cannot be Null value.",e.ERROR_EVENT_NAME_SMALL_HUMP="The event name should be named by small hump. (Received ['$$']).",e.ERROR_EVENT_CALLBACK_OPTIONAL="The callback parameter of off function should be optional.",e.ERROR_EVENT_CALLBACK_MISSING="The off functions of one single event should have at least one callback parameter, and the callback parameter should be the last parameter.",e.ERROR_EVENT_ON_AND_OFF_PAIR="The on and off event subscription methods do not appear in pair.",e.ERROR_EVENT_WITHOUT_PARAMETER="The event subscription methods should has at least one parameter.",e.ILLEGAL_USE_ANY="Illegal [$$] keyword used in the API.",e.ERROR_CHANGES_VERSION="Please check if the changed API version number is 10.",e.ERROR_WORD="Error words in [$$]: {$$}. please confirm whether it needs to be corrected to a common word.",e.ERROR_NAMING="Prohibited word in [$$]:{$$}.The word allowed is [$$].",e.ERROR_SCENARIO="Prohibited word in [$$]:{$$} in the [$$] file.",e.ERROR_UPPERCASE_NAME="This name [$$] should be named by all uppercase.",e.ERROR_LARGE_HUMP_NAME="This name [$$] should be named by large hump.",e.ERROR_SMALL_HUMP_NAME="This name [$$] should be named by small hump.",e.ERROR_SMALL_HUMP_NAME_FILE="This API file should be named by small hump.",e.ERROR_LARGE_HUMP_NAME_FILE="This API file should be named by large hump.",e.ERROR_CHANGES_JSDOC_LEVEL="Forbid changes: API defectLevel change to system.",e.ERROR_CHANGES_JSDOC_MODEL="Forbid changes: API mode change.",e.ERROR_CHANGES_JSDOC_CARD="Forbid changes: API card delete.",e.ERROR_CHANGES_JSDOC_CROSS_PLATFORM="Forbid changes: API crossplatform delete.",e.ERROR_CHANGES_JSDOC_ERROR_CODE="Forbid changes: API errorcode cannot be created or modified.",e.ERROR_CHANGES_JSDOC_PERMISSION="Forbid changes: Permission tag cannot be created or modified.",e.ERROR_CHANGES_API_NAME="Forbid changes: API cannot be changed.",e.ERROR_CHANGES_FUNCTION_RETURN_TYPE="Forbid changes: Function return type cannot be changed.",e.ERROR_CHANGES_API_PARAM="Forbid changes: Parameters cannot be changed.",e.ERROR_CHANGES_PROPERTY="Forbid changes: Property cannot be changed.",e.ERROR_CHANGES_CONSTANT="Forbid changes: Constant value cannot be changed.",e.ERROR_CHANGES_TYPE_ALIAS="Forbid changes: Type alias cannot be changed.",e.ERROR_CHANGES_ENUM_MEMBER="Forbid changes: Enum number value cannot be changed.",e.ERROR_CHANGES_API="Forbid changes: API cannot be deleted.",e.ERROR_CHANGES_JSDOC_CHANGE="Forbid changes: Historical JSDoc cannot be changed.",e.ERROR_CHANGES_JSDOC_NUMBER="Forbid changes: API changes must add a new section of JSDoc.",e.ERROR_NO_JSDOC="Jsdoc needs to be added to the current API.",e.ERROR_NO_JSDOC_TAG="add tags to the Jsdoc."}(i=t.ErrorMessage||(t.ErrorMessage={})),t.incompatibleApiDiffTypes=new Map([[n.ApiDiffType.PUBLIC_TO_SYSTEM,i.ERROR_CHANGES_JSDOC_LEVEL],[n.ApiDiffType.NA_TO_STAGE,i.ERROR_CHANGES_JSDOC_MODEL],[n.ApiDiffType.NA_TO_FA,i.ERROR_CHANGES_JSDOC_MODEL],[n.ApiDiffType.FA_TO_STAGE,i.ERROR_CHANGES_JSDOC_MODEL],[n.ApiDiffType.STAGE_TO_FA,i.ERROR_CHANGES_JSDOC_MODEL],[n.ApiDiffType.CARD_TO_NA,i.ERROR_CHANGES_JSDOC_CARD],[n.ApiDiffType.CROSS_PLATFORM_TO_NA,i.ERROR_CHANGES_JSDOC_CROSS_PLATFORM],[n.ApiDiffType.ERROR_CODE_NA_TO_HAVE,i.ERROR_CHANGES_JSDOC_ERROR_CODE],[n.ApiDiffType.ERROR_CODE_CHANGE,i.ERROR_CHANGES_JSDOC_ERROR_CODE],[n.ApiDiffType.PERMISSION_NA_TO_HAVE,i.ERROR_CHANGES_JSDOC_PERMISSION],[n.ApiDiffType.PERMISSION_RANGE_SMALLER,i.ERROR_CHANGES_JSDOC_PERMISSION],[n.ApiDiffType.PERMISSION_RANGE_CHANGE,i.ERROR_CHANGES_JSDOC_PERMISSION],[n.ApiDiffType.API_NAME_CHANGE,i.ERROR_CHANGES_API_NAME],[n.ApiDiffType.FUNCTION_RETURN_TYPE_ADD,i.ERROR_CHANGES_FUNCTION_RETURN_TYPE],[n.ApiDiffType.FUNCTION_RETURN_TYPE_CHANGE,i.ERROR_CHANGES_FUNCTION_RETURN_TYPE],[n.ApiDiffType.FUNCTION_PARAM_POS_CHANGE,i.ERROR_CHANGES_API_PARAM],[n.ApiDiffType.FUNCTION_PARAM_REQUIRED_ADD,i.ERROR_CHANGES_API_PARAM],[n.ApiDiffType.FUNCTION_PARAM_REDUCE,i.ERROR_CHANGES_API_PARAM],[n.ApiDiffType.FUNCTION_PARAM_TO_REQUIRED,i.ERROR_CHANGES_API_PARAM],[n.ApiDiffType.FUNCTION_PARAM_TYPE_CHANGE,i.ERROR_CHANGES_API_PARAM],[n.ApiDiffType.FUNCTION_PARAM_TYPE_REDUCE,i.ERROR_CHANGES_API_PARAM],[n.ApiDiffType.PROPERTY_READONLY_TO_REQUIRED,i.ERROR_CHANGES_PROPERTY],[n.ApiDiffType.PROPERTY_WRITABLE_TO_UNREQUIRED,i.ERROR_CHANGES_PROPERTY],[n.ApiDiffType.PROPERTY_WRITABLE_TO_REQUIRED,i.ERROR_CHANGES_PROPERTY],[n.ApiDiffType.PROPERTY_TYPE_CHANGE,i.ERROR_CHANGES_PROPERTY],[n.ApiDiffType.PROPERTY_READONLY_ADD,i.ERROR_CHANGES_PROPERTY],[n.ApiDiffType.PROPERTY_WRITABLE_ADD,i.ERROR_CHANGES_PROPERTY],[n.ApiDiffType.PROPERTY_WRITABLE_REDUCE,i.ERROR_CHANGES_PROPERTY],[n.ApiDiffType.CONSTANT_VALUE_CHANGE,i.ERROR_CHANGES_CONSTANT],[n.ApiDiffType.TYPE_ALIAS_CHANGE,i.ERROR_CHANGES_TYPE_ALIAS],[n.ApiDiffType.TYPE_ALIAS_ADD,i.ERROR_CHANGES_TYPE_ALIAS],[n.ApiDiffType.TYPE_ALIAS_REDUCE,i.ERROR_CHANGES_TYPE_ALIAS],[n.ApiDiffType.ENUM_MEMBER_VALUE_CHANGE,i.ERROR_CHANGES_ENUM_MEMBER],[n.ApiDiffType.REDUCE,i.ERROR_CHANGES_API],[n.ApiDiffType.HISTORICAL_JSDOC_CHANGE,i.ERROR_CHANGES_JSDOC_CHANGE],[n.ApiDiffType.HISTORICAL_API_CHANGE,i.ERROR_CHANGES_JSDOC_NUMBER]]);t.ApiResultSimpleInfo=class{constructor(){this.id=-1,this.level=-1,this.filePath="",this.location="",this.message="",this.type="",this.apiText=""}setID(e){return this.id=e,this}getID(){return this.id}setLevel(e){return this.level=e,this}getLevel(){return this.level}setLocation(e){return this.location=e,this}getLocation(){return this.location}setFilePath(e){return this.filePath=e,this}getFilePath(){return this.filePath}setMessage(e){return this.message=e,this}getMessage(){return this.message}setType(e){return this.type=e,this}getType(){return this.type}setApiText(e){return this.apiText=e,this}getApiText(){return this.apiText}};t.ApiResultInfo=class{constructor(){this.errorType="",this.location="",this.apiType="",this.message="",this.version=-1,this.level=-1,this.apiName="",this.apiFullText="",this.baseName=""}setErrorType(e){return this.errorType=e,this}getErrorType(){return this.errorType}setLocation(e){return this.location=e,this}getLocation(){return this.location}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setMessage(e){return this.message=e,this}getMessage(){return this.message}setVersion(e){return this.version=e,this}getVersion(){return this.version}setLevel(e){return this.level=e,this}getLevel(){return this.level}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setApiFullText(e){return this.apiFullText=e,this}getApiFullText(){return this.apiFullText}setBaseName(e){return this.baseName=e,this}getBaseName(){return this.baseName}};t.ApiResultMessage=class{constructor(){this.analyzerName="apiengine",this.buggyFilePath="",this.codeContextStaerLine="",this.defectLevel=-1,this.defectType="",this.description="",this.language="ts",this.mainBuggyCode="",this.mainBuggyLine=""}setLocation(e){return this.codeContextStaerLine=e,this}getLocation(){return this.codeContextStaerLine}setLevel(e){return this.defectLevel=e,this}getLevel(){return this.defectLevel}setType(e){return this.defectType=e,this}getType(){return this.defectType}setFilePath(e){return this.buggyFilePath=e,this}getFilePath(){return this.buggyFilePath}setMessage(e){return this.description=e,this}getMessage(){return this.description}setMainBuggyCode(e){return this.mainBuggyCode=e,this}getMainBuggyCode(){return this.mainBuggyCode}setMainBuggyLine(e){return this.mainBuggyLine=e,this}getMainBuggyLine(){return this.mainBuggyLine}}},85057:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiCountInfo=void 0;t.ApiCountInfo=class{constructor(){this.filePath="",this.kitName="",this.subSystem="",this.apiNumber=-1}setFilePath(e){return this.filePath=e,this}getFilePath(){return this.filePath}setKitName(e){return e?(this.kitName=e,this):this}getKitName(){return this.kitName}setsubSystem(e){return e?(this.subSystem=e,this):this}getsubSystem(){return this.subSystem}setApiNumber(e){return this.apiNumber=e,this}getApiNumber(){return this.apiNumber}}},40149:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.incompatibleApiDiffTypes=t.diffMap=t.diffTypeMap=t.ApiDiffType=t.ApiStatusCode=t.DiffTypeInfo=t.BasicDiffInfo=void 0;const n=r(8136);class i{constructor(){this.apiType=i.EMPTY,this.statusCode=a.DEFAULT,this.oldApiDefinedText=i.EMPTY,this.newApiDefinedText=i.EMPTY,this.oldApiName=i.EMPTY,this.newApiName=i.EMPTY,this.oldDtsName=i.EMPTY,this.newDtsName=i.EMPTY,this.diffType=o.DEFAULT,this.diffMessage="",this.changeLogUrl="",this.changeLogs=[],this.isCompatible=!0,this.oldHierarchicalRelations=[],this.newHierarchicalRelations=[],this.oldPos={line:-1,character:-1},this.newPos={line:-1,character:-1},this.oldDescription="",this.newDescription="",this.oldSyscapField="",this.newSyscapField="",this.oldKitInfo="",this.newKitInfo=""}setApiType(e){return this.apiType=e||i.EMPTY,this}getApiType(){return this.apiType}getStatusCode(){return this.statusCode}setStatusCode(e){return this.statusCode=e,this}setOldApiDefinedText(e){return this.oldApiDefinedText=e,this}getOldApiDefinedText(){return this.oldApiDefinedText}setNewApiDefinedText(e){return this.newApiDefinedText=e,this}getNewApiDefinedText(){return this.newApiDefinedText}setOldApiName(e){return this.oldApiName=e,this}getOldApiName(){return this.oldApiName}setNewApiName(e){return this.newApiName=e,this}getNewApiName(){return this.newApiName}setOldDtsName(e){return this.oldDtsName=e,this}getOldDtsName(){return this.oldDtsName}setNewDtsName(e){return this.newDtsName=e,this}getNewDtsName(){return this.newDtsName}setDiffType(e){return this.diffType=e,this}getDiffType(){return this.diffType}setDiffMessage(e){return this.diffMessage=e,this}getDiffMessage(){return this.diffMessage}setChangeLogUrl(e){return this.changeLogUrl=e,this}getChangeLogUrl(){return this.changeLogUrl}addChangeLogs(e){return this.changeLogs.push(e),this}getChangeLogs(){return this.changeLogs}setIsCompatible(e){return this.isCompatible=e,this}getIsCompatible(){return this.isCompatible}setOldHierarchicalRelations(e){return this.oldHierarchicalRelations=e,this}getOldHierarchicalRelations(){return this.oldHierarchicalRelations}setNewHierarchicalRelations(e){return this.newHierarchicalRelations=e,this}getNewHierarchicalRelations(){return this.newHierarchicalRelations}setOldPos(e){return this.oldPos=e,this}getOldPos(){return this.oldPos}setNewPos(e){return this.newPos=e,this}getNewPos(){return this.newPos}getOldDescription(){return this.oldDescription}setOldDescription(e){return this.oldDescription=e,this}getNewDescription(){return this.newDescription}setNewDescription(e){return this.newDescription=e,this}getOldApiInfo(){return""}getParentModuleName(e){let t="global";return e.length>n.NumberConstant.RELATION_LENGTH&&(t=e[e.length-n.NumberConstant.RELATION_LENGTH]),t}setOldSyscapField(e){return this.oldSyscapField=e,this}getOldSyscapField(){return this.oldSyscapField}setNewSyscapField(e){return this.newSyscapField=e,this}getNewSyscapField(){return this.newSyscapField}setOldKitInfo(e){return this.oldKitInfo=e,this}getOldKitInfo(){return this.oldKitInfo}setNewKitInfo(e){return this.newKitInfo=e,this}getNewKitInfo(){return this.newKitInfo}}t.BasicDiffInfo=i,i.EMPTY="";var a,o;t.DiffTypeInfo=class{constructor(e,t,r,n){this.diffType=o.DEFAULT,this.statusCode=a.DEFAULT,this.oldMessage="",this.newMessage="",void 0!==e&&this.setStatusCode(e),t&&this.setDiffType(t),r&&this.setOldMessage(r),n&&this.setNewMessage(n)}getStatusCode(){return this.statusCode}setStatusCode(e){return this.statusCode=e,this}getDiffType(){return this.diffType}setDiffType(e){return this.diffType=e,this}getOldMessage(){return this.oldMessage}setOldMessage(e){return this.oldMessage=e,this}getNewMessage(){return this.newMessage}setNewMessage(e){return this.newMessage=e,this}},function(e){e[e.DEFAULT=-1]="DEFAULT",e[e.DELETE=0]="DELETE",e[e.DELETE_DTS=1]="DELETE_DTS",e[e.DELETE_CLASS=2]="DELETE_CLASS",e[e.NEW_API=3]="NEW_API",e[e.VERSION_CHNAGES=4]="VERSION_CHNAGES",e[e.DEPRECATED_CHNAGES=5]="DEPRECATED_CHNAGES",e[e.NEW_ERRORCODE=6]="NEW_ERRORCODE",e[e.ERRORCODE_CHANGES=7]="ERRORCODE_CHANGES",e[e.SYSCAP_CHANGES=8]="SYSCAP_CHANGES",e[e.SYSTEM_API_CHNAGES=9]="SYSTEM_API_CHNAGES",e[e.PERMISSION_DELETE=10]="PERMISSION_DELETE",e[e.PERMISSION_NEW=11]="PERMISSION_NEW",e[e.PERMISSION_CHANGES=12]="PERMISSION_CHANGES",e[e.MODEL_CHNAGES=13]="MODEL_CHNAGES",e[e.TYPE_CHNAGES=14]="TYPE_CHNAGES",e[e.CLASS_CHANGES=15]="CLASS_CHANGES",e[e.FUNCTION_CHANGES=16]="FUNCTION_CHANGES",e[e.CHANGELOG=17]="CHANGELOG",e[e.DTS_CHANGED=18]="DTS_CHANGED",e[e.FORM_CHANGED=19]="FORM_CHANGED",e[e.CROSSPLATFORM_CHANGED=20]="CROSSPLATFORM_CHANGED",e[e.NEW_DTS=21]="NEW_DTS",e[e.NEW_CLASS=22]="NEW_CLASS",e[e.NEW_DECORATOR=23]="NEW_DECORATOR",e[e.DELETE_DECORATOR=24]="DELETE_DECORATOR",e[e.KIT_CHANGE=26]="KIT_CHANGE"}(a=t.ApiStatusCode||(t.ApiStatusCode={})),function(e){e[e.DEFAULT=0]="DEFAULT",e[e.SYSTEM_TO_PUBLIC=1]="SYSTEM_TO_PUBLIC",e[e.PUBLIC_TO_SYSTEM=2]="PUBLIC_TO_SYSTEM",e[e.NA_TO_STAGE=3]="NA_TO_STAGE",e[e.NA_TO_FA=4]="NA_TO_FA",e[e.FA_TO_STAGE=5]="FA_TO_STAGE",e[e.STAGE_TO_FA=6]="STAGE_TO_FA",e[e.STAGE_TO_NA=7]="STAGE_TO_NA",e[e.FA_TO_NA=8]="FA_TO_NA",e[e.NA_TO_CARD=9]="NA_TO_CARD",e[e.CARD_TO_NA=10]="CARD_TO_NA",e[e.NA_TO_CROSS_PLATFORM=11]="NA_TO_CROSS_PLATFORM",e[e.CROSS_PLATFORM_TO_NA=12]="CROSS_PLATFORM_TO_NA",e[e.SYSCAP_NA_TO_HAVE=13]="SYSCAP_NA_TO_HAVE",e[e.SYSCAP_HAVE_TO_NA=14]="SYSCAP_HAVE_TO_NA",e[e.SYSCAP_A_TO_B=15]="SYSCAP_A_TO_B",e[e.DEPRECATED_NA_TO_HAVE=16]="DEPRECATED_NA_TO_HAVE",e[e.DEPRECATED_HAVE_TO_NA=17]="DEPRECATED_HAVE_TO_NA",e[e.DEPRECATED_A_TO_B=18]="DEPRECATED_A_TO_B",e[e.ERROR_CODE_NA_TO_HAVE=19]="ERROR_CODE_NA_TO_HAVE",e[e.ERROR_CODE_ADD=20]="ERROR_CODE_ADD",e[e.ERROR_CODE_REDUCE=21]="ERROR_CODE_REDUCE",e[e.ERROR_CODE_CHANGE=22]="ERROR_CODE_CHANGE",e[e.PERMISSION_NA_TO_HAVE=23]="PERMISSION_NA_TO_HAVE",e[e.PERMISSION_HAVE_TO_NA=24]="PERMISSION_HAVE_TO_NA",e[e.PERMISSION_RANGE_BIGGER=25]="PERMISSION_RANGE_BIGGER",e[e.PERMISSION_RANGE_SMALLER=26]="PERMISSION_RANGE_SMALLER",e[e.PERMISSION_RANGE_CHANGE=27]="PERMISSION_RANGE_CHANGE",e[e.TYPE_RANGE_BIGGER=28]="TYPE_RANGE_BIGGER",e[e.TYPE_RANGE_SMALLER=29]="TYPE_RANGE_SMALLER",e[e.TYPE_RANGE_CHANGE=30]="TYPE_RANGE_CHANGE",e[e.API_NAME_CHANGE=31]="API_NAME_CHANGE",e[e.FUNCTION_RETURN_TYPE_ADD=32]="FUNCTION_RETURN_TYPE_ADD",e[e.FUNCTION_RETURN_TYPE_REDUCE=33]="FUNCTION_RETURN_TYPE_REDUCE",e[e.FUNCTION_RETURN_TYPE_CHANGE=34]="FUNCTION_RETURN_TYPE_CHANGE",e[e.FUNCTION_PARAM_POS_CHANGE=35]="FUNCTION_PARAM_POS_CHANGE",e[e.FUNCTION_PARAM_UNREQUIRED_ADD=36]="FUNCTION_PARAM_UNREQUIRED_ADD",e[e.FUNCTION_PARAM_REQUIRED_ADD=37]="FUNCTION_PARAM_REQUIRED_ADD",e[e.FUNCTION_PARAM_REDUCE=38]="FUNCTION_PARAM_REDUCE",e[e.FUNCTION_PARAM_TO_UNREQUIRED=39]="FUNCTION_PARAM_TO_UNREQUIRED",e[e.FUNCTION_PARAM_TO_REQUIRED=40]="FUNCTION_PARAM_TO_REQUIRED",e[e.FUNCTION_PARAM_NAME_CHANGE=41]="FUNCTION_PARAM_NAME_CHANGE",e[e.FUNCTION_PARAM_TYPE_CHANGE=42]="FUNCTION_PARAM_TYPE_CHANGE",e[e.FUNCTION_PARAM_TYPE_ADD=43]="FUNCTION_PARAM_TYPE_ADD",e[e.FUNCTION_PARAM_TYPE_REDUCE=44]="FUNCTION_PARAM_TYPE_REDUCE",e[e.PROPERTY_READONLY_TO_UNREQUIRED=45]="PROPERTY_READONLY_TO_UNREQUIRED",e[e.PROPERTY_READONLY_TO_REQUIRED=46]="PROPERTY_READONLY_TO_REQUIRED",e[e.PROPERTY_WRITABLE_TO_UNREQUIRED=47]="PROPERTY_WRITABLE_TO_UNREQUIRED",e[e.PROPERTY_WRITABLE_TO_REQUIRED=48]="PROPERTY_WRITABLE_TO_REQUIRED",e[e.PROPERTY_TYPE_CHANGE=49]="PROPERTY_TYPE_CHANGE",e[e.PROPERTY_READONLY_ADD=50]="PROPERTY_READONLY_ADD",e[e.PROPERTY_READONLY_REDUCE=51]="PROPERTY_READONLY_REDUCE",e[e.PROPERTY_WRITABLE_ADD=52]="PROPERTY_WRITABLE_ADD",e[e.PROPERTY_WRITABLE_REDUCE=53]="PROPERTY_WRITABLE_REDUCE",e[e.CONSTANT_VALUE_CHANGE=54]="CONSTANT_VALUE_CHANGE",e[e.TYPE_ALIAS_CHANGE=55]="TYPE_ALIAS_CHANGE",e[e.TYPE_ALIAS_ADD=56]="TYPE_ALIAS_ADD",e[e.TYPE_ALIAS_REDUCE=57]="TYPE_ALIAS_REDUCE",e[e.ENUM_MEMBER_VALUE_CHANGE=58]="ENUM_MEMBER_VALUE_CHANGE",e[e.ADD=59]="ADD",e[e.REDUCE=60]="REDUCE",e[e.NEW_DECORATOR=61]="NEW_DECORATOR",e[e.DELETE_DECORATOR=62]="DELETE_DECORATOR",e[e.SINCE_VERSION_NA_TO_HAVE=63]="SINCE_VERSION_NA_TO_HAVE",e[e.SINCE_VERSION_HAVE_TO_NA=64]="SINCE_VERSION_HAVE_TO_NA",e[e.SINCE_VERSION_A_TO_B=65]="SINCE_VERSION_A_TO_B",e[e.HISTORICAL_JSDOC_CHANGE=66]="HISTORICAL_JSDOC_CHANGE",e[e.HISTORICAL_API_CHANGE=67]="HISTORICAL_API_CHANGE",e[e.KIT_CHANGE=68]="KIT_CHANGE"}(o=t.ApiDiffType||(t.ApiDiffType={})),t.diffTypeMap=new Map([[o.SYSTEM_TO_PUBLIC,"API访问级别变更"],[o.PUBLIC_TO_SYSTEM,"API访问级别变更"],[o.NA_TO_STAGE,"API模型切换"],[o.NA_TO_FA,"API模型切换"],[o.FA_TO_STAGE,"API模型切换"],[o.STAGE_TO_FA,"API模型切换"],[o.STAGE_TO_NA,"API模型切换"],[o.FA_TO_NA,"API模型切换"],[o.NA_TO_CARD,"API卡片权限变更"],[o.CARD_TO_NA,"API卡片权限变更"],[o.NA_TO_CROSS_PLATFORM,"API跨平台权限变更"],[o.CROSS_PLATFORM_TO_NA,"API跨平台权限变更"],[o.SYSCAP_NA_TO_HAVE,"syscap变更"],[o.SYSCAP_HAVE_TO_NA,"syscap变更"],[o.SYSCAP_A_TO_B,"syscap变更"],[o.DEPRECATED_NA_TO_HAVE,"API废弃版本变更"],[o.DEPRECATED_HAVE_TO_NA,"API废弃版本变更"],[o.DEPRECATED_A_TO_B,"API废弃版本变更"],[o.ERROR_CODE_NA_TO_HAVE,"错误码变更"],[o.ERROR_CODE_ADD,"错误码变更"],[o.ERROR_CODE_REDUCE,"错误码变更"],[o.ERROR_CODE_CHANGE,"错误码变更"],[o.PERMISSION_NA_TO_HAVE,"权限变更"],[o.PERMISSION_HAVE_TO_NA,"权限变更"],[o.PERMISSION_RANGE_BIGGER,"权限变更"],[o.PERMISSION_RANGE_SMALLER,"权限变更"],[o.PERMISSION_RANGE_CHANGE,"权限变更"],[o.TYPE_RANGE_BIGGER,"自定义类型变更"],[o.TYPE_RANGE_SMALLER,"自定义类型变更"],[o.TYPE_RANGE_CHANGE,"自定义类型变更"],[o.API_NAME_CHANGE,"API名称变更"],[o.FUNCTION_RETURN_TYPE_ADD,"函数变更"],[o.FUNCTION_RETURN_TYPE_REDUCE,"函数变更"],[o.FUNCTION_RETURN_TYPE_CHANGE,"函数变更"],[o.FUNCTION_PARAM_POS_CHANGE,"函数变更"],[o.FUNCTION_PARAM_UNREQUIRED_ADD,"函数变更"],[o.FUNCTION_PARAM_REQUIRED_ADD,"函数变更"],[o.FUNCTION_PARAM_REDUCE,"函数变更"],[o.FUNCTION_PARAM_TO_UNREQUIRED,"函数变更"],[o.FUNCTION_PARAM_TO_REQUIRED,"函数变更"],[o.FUNCTION_PARAM_NAME_CHANGE,"函数变更"],[o.FUNCTION_PARAM_TYPE_CHANGE,"函数变更"],[o.FUNCTION_PARAM_TYPE_ADD,"函数变更"],[o.FUNCTION_PARAM_TYPE_REDUCE,"函数变更"],[o.PROPERTY_READONLY_TO_UNREQUIRED,"属性变更"],[o.PROPERTY_READONLY_TO_REQUIRED,"属性变更"],[o.PROPERTY_WRITABLE_TO_UNREQUIRED,"属性变更"],[o.PROPERTY_WRITABLE_TO_REQUIRED,"属性变更"],[o.PROPERTY_TYPE_CHANGE,"属性变更"],[o.PROPERTY_READONLY_ADD,"属性变更"],[o.PROPERTY_READONLY_REDUCE,"属性变更"],[o.PROPERTY_WRITABLE_ADD,"属性变更"],[o.PROPERTY_WRITABLE_REDUCE,"属性变更"],[o.CONSTANT_VALUE_CHANGE,"常量变更"],[o.TYPE_ALIAS_CHANGE,"自定义类型变更"],[o.TYPE_ALIAS_ADD,"自定义类型变更"],[o.TYPE_ALIAS_REDUCE,"自定义类型变更"],[o.ENUM_MEMBER_VALUE_CHANGE,"枚举赋值发生改变"],[o.ADD,"新增API"],[o.REDUCE,"删除API"],[o.DELETE_DECORATOR,"删除装饰器"],[o.NEW_DECORATOR,"新增装饰器"],[o.SINCE_VERSION_A_TO_B,"起始版本有变化"],[o.SINCE_VERSION_HAVE_TO_NA,"起始版本有变化"],[o.SINCE_VERSION_NA_TO_HAVE,"起始版本有变化"],[o.KIT_CHANGE,"kit变更"]]),t.diffMap=new Map([[o.SYSTEM_TO_PUBLIC,"从系统API变更为公开API"],[o.PUBLIC_TO_SYSTEM,"从公开API变更为系统API"],[o.NA_TO_STAGE,"从无模型使用限制到仅在Stage模型下使用"],[o.NA_TO_FA,"从无模型使用限制到仅在FA模型下使用"],[o.FA_TO_STAGE,"从仅在FA模型下使用到仅在Stage模型下使用"],[o.STAGE_TO_FA,"从仅在Stage模型下使用到仅在FA模型下使用"],[o.STAGE_TO_NA,"从仅在Stage模型下使用到无模型使用限制"],[o.FA_TO_NA,"从仅在FA模型下使用到无模型使用限制"],[o.NA_TO_CARD,"从不支持卡片到支持卡片"],[o.CARD_TO_NA,"从支持卡片到不支持卡片"],[o.NA_TO_CROSS_PLATFORM,"从不支持跨平台到支持跨平台"],[o.CROSS_PLATFORM_TO_NA,"从支持跨平台到不支持跨平台"],[o.SYSCAP_NA_TO_HAVE,"从没有syscap到有syscap"],[o.SYSCAP_HAVE_TO_NA,"从有syscap到没有syscap"],[o.SYSCAP_A_TO_B,"syscap发生改变"],[o.DEPRECATED_NA_TO_HAVE,"接口变更为废弃"],[o.DEPRECATED_HAVE_TO_NA,"废弃接口变更为不废弃"],[o.DEPRECATED_A_TO_B,"接口废弃版本发生变化"],[o.ERROR_CODE_NA_TO_HAVE,"错误码从无到有"],[o.ERROR_CODE_ADD,"错误码增加"],[o.ERROR_CODE_REDUCE,"错误码减少"],[o.ERROR_CODE_CHANGE,"错误码的code值发生变化"],[o.PERMISSION_NA_TO_HAVE,"权限从无到有"],[o.PERMISSION_HAVE_TO_NA,"权限从有到无"],[o.PERMISSION_RANGE_BIGGER,"增加or或减少and权限"],[o.PERMISSION_RANGE_SMALLER,"减少or或增加and权限"],[o.PERMISSION_RANGE_CHANGE,"权限发送改变无法判断范围变化"],[o.TYPE_RANGE_BIGGER,"类型范围变大"],[o.TYPE_RANGE_SMALLER,"类型范围变小"],[o.TYPE_RANGE_CHANGE,"类型范围改变"],[o.API_NAME_CHANGE,"API名称变更"],[o.FUNCTION_RETURN_TYPE_ADD,"函数返回值类型扩大"],[o.FUNCTION_RETURN_TYPE_REDUCE,"函数返回值类型缩小"],[o.FUNCTION_RETURN_TYPE_CHANGE,"函数返回值类型改变"],[o.FUNCTION_PARAM_POS_CHANGE,"函数参数位置发生改变"],[o.FUNCTION_PARAM_UNREQUIRED_ADD,"函数新增可选参数"],[o.FUNCTION_PARAM_REQUIRED_ADD,"函数新增必选参数"],[o.FUNCTION_PARAM_REDUCE,"函数删除参数"],[o.FUNCTION_PARAM_TO_UNREQUIRED,"函数中的必选参数变为可选参数"],[o.FUNCTION_PARAM_TO_REQUIRED,"函数中的可选参数变为必选参数"],[o.FUNCTION_PARAM_NAME_CHANGE,"函数中的参数名称发生改变"],[o.FUNCTION_PARAM_TYPE_CHANGE,"函数的参数类型变更"],[o.FUNCTION_PARAM_TYPE_ADD,"函数的参数类型范围扩大"],[o.FUNCTION_PARAM_TYPE_REDUCE,"函数的参数类型范围缩小"],[o.PROPERTY_READONLY_TO_UNREQUIRED,"只读属性由必选变为可选"],[o.PROPERTY_READONLY_TO_REQUIRED,"只读属性由可选变为必选"],[o.PROPERTY_WRITABLE_TO_UNREQUIRED,"可写属性由必选变为可选"],[o.PROPERTY_WRITABLE_TO_REQUIRED,"可写属性由可选变为必选"],[o.PROPERTY_TYPE_CHANGE,"属性类型发生改变"],[o.PROPERTY_READONLY_ADD,"只读属性类型范围扩大"],[o.PROPERTY_READONLY_REDUCE,"只读属性类型范围缩小"],[o.PROPERTY_WRITABLE_ADD,"可写属性类型范围扩大"],[o.PROPERTY_WRITABLE_REDUCE,"可写属性类型范围缩小"],[o.CONSTANT_VALUE_CHANGE,"常量值发生改变"],[o.TYPE_ALIAS_CHANGE,"自定义类型值直接改变"],[o.TYPE_ALIAS_ADD,"自定义类型值范围扩大"],[o.TYPE_ALIAS_REDUCE,"自定义类型值范围缩小"],[o.ENUM_MEMBER_VALUE_CHANGE,"枚举赋值发生改变"],[o.ADD,"新增API"],[o.REDUCE,"删除API"],[o.DELETE_DECORATOR,"删除装饰器"],[o.NEW_DECORATOR,"新增装饰器"],[o.SINCE_VERSION_A_TO_B,"起始版本号变更"],[o.SINCE_VERSION_HAVE_TO_NA,"起始版本号删除"],[o.SINCE_VERSION_NA_TO_HAVE,"起始版本号新增"],[o.HISTORICAL_JSDOC_CHANGE,"历史版本jsdoc变更"],[o.HISTORICAL_API_CHANGE,"历史版本API变更"],[o.KIT_CHANGE,"kit变更"]]),t.incompatibleApiDiffTypes=new Set([o.PUBLIC_TO_SYSTEM,o.NA_TO_STAGE,o.NA_TO_FA,o.FA_TO_STAGE,o.STAGE_TO_FA,o.CARD_TO_NA,o.CROSS_PLATFORM_TO_NA,o.ERROR_CODE_NA_TO_HAVE,o.ERROR_CODE_CHANGE,o.PERMISSION_NA_TO_HAVE,o.PERMISSION_RANGE_SMALLER,o.PERMISSION_RANGE_CHANGE,o.API_NAME_CHANGE,o.FUNCTION_RETURN_TYPE_ADD,o.FUNCTION_RETURN_TYPE_CHANGE,o.FUNCTION_PARAM_POS_CHANGE,o.FUNCTION_PARAM_REQUIRED_ADD,o.FUNCTION_PARAM_REDUCE,o.FUNCTION_PARAM_TO_REQUIRED,o.FUNCTION_PARAM_TYPE_CHANGE,o.FUNCTION_PARAM_TYPE_REDUCE,o.PROPERTY_READONLY_TO_REQUIRED,o.PROPERTY_WRITABLE_TO_UNREQUIRED,o.PROPERTY_WRITABLE_TO_REQUIRED,o.PROPERTY_TYPE_CHANGE,o.PROPERTY_READONLY_ADD,o.PROPERTY_WRITABLE_ADD,o.PROPERTY_WRITABLE_REDUCE,o.CONSTANT_VALUE_CHANGE,o.TYPE_ALIAS_CHANGE,o.TYPE_ALIAS_ADD,o.TYPE_ALIAS_REDUCE,o.ENUM_MEMBER_VALUE_CHANGE,o.REDUCE,o.HISTORICAL_JSDOC_CHANGE,o.HISTORICAL_API_CHANGE])},44791:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.notJsDocApiTypes=t.containerApiTypes=t.ParserParam=t.ParentClass=t.GenericInfo=t.ParamInfo=t.MethodInfo=t.EnumValueInfo=t.TypeAliasInfo=t.ConstantInfo=t.PropertyInfo=t.EnumInfo=t.ModuleInfo=t.StructInfo=t.NamespaceInfo=t.InterfaceInfo=t.ClassInfo=t.ApiInfo=t.ImportInfo=t.ExportDeclareInfo=t.ReferenceInfo=t.ExportDefaultInfo=t.BasicApiInfo=t.TypeAliasType=t.ApiType=void 0;const i=n(r(58843)),a=r(28879),o=r(56405);var s;!function(e){e.SOURCE_FILE="SourceFile",e.REFERENCE_FILE="Reference",e.PROPERTY="Property",e.CLASS="Class",e.INTERFACE="Interface",e.NAMESPACE="Namespace",e.METHOD="Method",e.MODULE="Module",e.EXPORT="Export",e.EXPORT_DEFAULT="ExportDefault",e.CONSTANT="Constant",e.IMPORT="Import",e.DECLARE_CONST="DeclareConst",e.ENUM_VALUE="EnumValue",e.TYPE_ALIAS="TypeAlias",e.PARAM="Param",e.ENUM="Enum",e.STRUCT="Struct"}(s=t.ApiType||(t.ApiType={})),function(e){e.UNION_TYPE="UnionType",e.OBJECT_TYPE="ObjectType",e.TUPLE_TYPE="TupleType",e.REFERENCE_TYPE="ReferenceType"}(t.TypeAliasType||(t.TypeAliasType={}));class c{constructor(e="",t,r){this.node=void 0,this.filePath="",this.apiType="",this.definedText="",this.pos={line:-1,character:-1},this.parentApi=void 0,this.isExport=!1,this.apiName="",this.hierarchicalRelations=[],this.decorators=void 0,this.isStruct=!1,this.syscap="",this.currentVersion="-1",this.jsDocText="",this.isJoinType=!1,this.genericInfo=[],this.node=t,this.setParentApi(r),r&&(this.setFilePath(r.getFilePath()),this.setIsStruct(r.getIsStruct())),this.setApiType(e);const n=t.getSourceFile(),i=t.getStart(),o=n.getLineAndCharacterOfPosition(i);o.character++,o.line++,this.setPos(o),t.decorators&&t.decorators.forEach((e=>{this.addDecorators([new a.DecoratorInfo(e)])}))}getNode(){return this.node}removeNode(){this.node=void 0}setFilePath(e){this.filePath=e}getFilePath(){return this.filePath}setApiType(e){this.apiType=e}getApiType(){return this.apiType}setDefinedText(e){this.definedText=e}getDefinedText(){return this.definedText}setPos(e){this.pos=e}getPos(){return this.pos}setParentApi(e){this.parentApi=e}getParentApi(){return this.parentApi}setIsExport(e){this.isExport=e}getIsExport(){return this.isExport}setApiName(e){this.apiName=e,this.parentApi&&this.setHierarchicalRelations(this.parentApi.getHierarchicalRelations()),this.addHierarchicalRelation([e])}getApiName(){return this.apiName}setHierarchicalRelations(e){this.hierarchicalRelations=[...e]}getHierarchicalRelations(){return this.hierarchicalRelations}addHierarchicalRelation(e){this.hierarchicalRelations.push(...e)}setDecorators(e){this.decorators=e}addDecorators(e){this.decorators||(this.decorators=[]),this.decorators.push(...e)}getDecorators(){return this.decorators}setIsStruct(e){this.isStruct=e}getIsStruct(){return this.isStruct}setSyscap(e){this.syscap=e}getSyscap(){return this.syscap}setCurrentVersion(e){this.currentVersion=e}getCurrentVersion(){return this.currentVersion}setJsDocText(e){this.jsDocText=e}getJsDocText(){return this.jsDocText}setIsJoinType(e){this.isJoinType=e}getIsJoinType(){return this.isJoinType}setGenericInfo(e){this.genericInfo.push(e)}getGenericInfo(){return this.genericInfo}}t.BasicApiInfo=c;t.ExportDefaultInfo=class extends c{};t.ReferenceInfo=class extends c{constructor(){super(...arguments),this.pathName=""}setPathName(e){return this.pathName=e,this}getPathName(){return this.pathName}};t.ExportDeclareInfo=class extends c{constructor(){super(...arguments),this.exportValues=[]}addExportValues(e,t){this.exportValues.push({key:e,value:t||e})}getExportValues(){return this.exportValues}};t.ImportInfo=class extends c{constructor(){super(...arguments),this.importValues=[],this.importPath=""}addImportValue(e,t){this.importValues.push({key:e,value:t||e})}getImportValues(){return this.importValues}setImportPath(e){this.importPath=e}getImportPath(){return this.importPath}};class l extends c{constructor(e="",t,r){super(e,t,r),this.jsDocInfos=[];let n="";r&&(n=this.getKitInfoFromParent(r));const i=o.JsDocProcessorHelper.processJsDocInfos(t,e,n),a=t.getFullText().substring(0,t.getFullText().length-t.getText().length);this.setJsDocText(a),this.addJsDocInfos(i)}getKitInfoFromParent(e){const t=e.getJsDocInfos();let r="";return t.forEach((e=>{r=e.getKit()})),r}getJsDocInfos(){return this.jsDocInfos}getLastJsDocInfo(){const e=this.jsDocInfos.length;if(0!==e)return this.jsDocInfos[e-1]}addJsDocInfos(e){e.length>0&&this.setCurrentVersion(e[e.length-1]?.getSince()),this.jsDocInfos.push(...e)}addJsDocInfo(e){this.setCurrentVersion(e.getSince()),this.jsDocInfos.push(e)}}t.ApiInfo=l;t.ClassInfo=class extends l{constructor(){super(...arguments),this.parentClasses=[],this.childApis=[]}setParentClasses(e){this.parentClasses.push(e)}getParentClasses(){return this.parentClasses}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.InterfaceInfo=class extends l{constructor(){super(...arguments),this.parentClasses=[],this.childApis=[]}setParentClasses(e){this.parentClasses.push(e)}getParentClasses(){return this.parentClasses}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.NamespaceInfo=class extends l{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.StructInfo=class extends l{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.ModuleInfo=class extends l{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.EnumInfo=class extends l{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.PropertyInfo=class extends l{constructor(){super(...arguments),this.type=[],this.isReadOnly=!1,this.isRequired=!1,this.isStatic=!1,this.typeKind=-1}addType(e){this.type.push(...e)}getType(){return this.type}setIsReadOnly(e){this.isReadOnly=e}getIsReadOnly(){return this.isReadOnly}setIsRequired(e){this.isRequired=e}getIsRequired(){return this.isRequired}setIsStatic(e){this.isStatic=e}getIsStatic(){return this.isStatic}setTypeKind(e){this.typeKind=e}getTypeKind(){return this.typeKind}};t.ConstantInfo=class extends l{constructor(){super(...arguments),this.value=""}setValue(e){this.value=e}getValue(){return this.value}};t.TypeAliasInfo=class extends l{constructor(){super(...arguments),this.type=[],this.typeName=""}addType(e){this.type.push(...e)}getType(){return this.type}setTypeName(e){return this.typeName=e,this}getTypeName(){return this.typeName}};t.EnumValueInfo=class extends l{constructor(){super(...arguments),this.value=""}setValue(e){this.value=e}getValue(){return this.value}};t.MethodInfo=class extends l{constructor(){super(...arguments),this.callForm="",this.params=[],this.returnValue=[],this.isStatic=!1,this.sync="",this.returnValueType=-1,this.typeLocations=[],this.objLocations=[]}setCallForm(e){this.callForm=e}getCallForm(){return this.callForm}addParam(e){this.params.push(e)}getParams(){return this.params}setReturnValue(e){this.returnValue.push(...e)}getReturnValue(){return this.returnValue}setReturnValueType(e){this.returnValueType=e}getReturnValueType(){return this.returnValueType}setIsStatic(e){this.isStatic=e}getIsStatic(){return this.isStatic}addTypeLocations(e){this.typeLocations.push(e)}getTypeLocations(){return this.typeLocations}addObjLocations(e){this.objLocations.push(e)}getObjLocations(){return this.objLocations}setSync(e){this.sync=e}getSync(){return this.sync}};t.ParamInfo=class{constructor(e){this.apiType="",this.apiName="",this.paramType=-1,this.type=[],this.isRequired=!1,this.definedText="",this.typeLocations=[],this.objLocations=[],this.apiType=e}getApiType(){return this.apiType}setApiName(e){this.apiName=e}getApiName(){return this.apiName}setType(e){this.type.push(...e)}getParamType(){return this.paramType}setParamType(e){this.paramType=e}getType(){return this.type}setIsRequired(e){this.isRequired=e}getIsRequired(){return this.isRequired}setDefinedText(e){this.definedText=e}getDefinedText(){return this.definedText}addTypeLocations(e){this.typeLocations.push(e)}getTypeLocations(){return this.typeLocations}addObjLocations(e){this.objLocations.push(e)}getObjLocations(){return this.objLocations}};t.GenericInfo=class{constructor(){this.isGenericity=!1,this.genericContent=""}setIsGenericity(e){this.isGenericity=e}getIsGenericity(){return this.isGenericity}setGenericContent(e){this.genericContent=e}getGenericContent(){return this.genericContent}};t.ParentClass=class{constructor(){this.extendClass="",this.implementClass=""}setExtendClass(e){this.extendClass=e}getExtendClass(){return this.extendClass}setImplementClass(e){this.implementClass=e}getImplementClass(){return this.implementClass}};t.ParserParam=class{constructor(){this.fileDir="",this.filePath="",this.sdkPath="",this.rootNames=[],this.tsProgram=i.default.createProgram({rootNames:[],options:{}})}getFileDir(){return this.fileDir}setFileDir(e){this.fileDir=e}getFilePath(){return this.filePath}setFilePath(e){this.filePath=e}getSdkPath(){return this.sdkPath}setSdkPath(e){this.sdkPath=e}getRootNames(){return this.rootNames}setRootNames(e){this.rootNames=e}getTsProgram(){return this.tsProgram}getETSOptions(e){const t=r(739).compilerOptions.ets;return t.libs=[...e],t}setProgram(e){const t={target:i.default.ScriptTarget.ES2017,ets:this.getETSOptions([]),allowJs:!1,lib:[...e,...this.rootNames],module:i.default.ModuleKind.CommonJS};this.tsProgram=i.default.createProgram({rootNames:[...e,...this.rootNames],options:t})}},t.containerApiTypes=new Set([s.NAMESPACE,s.CLASS,s.INTERFACE,s.ENUM,s.MODULE,s.STRUCT]),t.notJsDocApiTypes=new Set([s.SOURCE_FILE,s.IMPORT,s.EXPORT,s.EXPORT_DEFAULT,s.MODULE,s.REFERENCE_FILE])},37583:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Comment=void 0,function(e){let t;!function(e){e.SYSCAP="syscap",e.SINCE="since",e.FORM="form",e.CROSS_PLAT_FORM="crossplatform",e.SYSTEM_API="systemapi",e.STAGE_MODEL_ONLY="stagemodelonly",e.FA_MODEL_ONLY="famodelonly",e.DEPRECATED="deprecated",e.USEINSTEAD="useinstead",e.TYPE="type",e.CONSTANT="constant",e.PERMISSION="permission",e.THROWS="throws",e.ATOMIC_SERVICE="atomicservice",e.KIT="kit",e.FILE="file"}(t=e.JsDocTag||(e.JsDocTag={}));e.JsDocInfo=class{constructor(){this.description="",this.syscap="",this.since="-1",this.isForm=!1,this.isCrossPlatForm=!1,this.isSystemApi=!1,this.modelLimitation="",this.deprecatedVersion="-1",this.useinstead="",this.permissions="",this.errorCodes=[],this.typeInfo="",this.isConstant=!1,this.isAtomicService=!1,this.kit="",this.isFile=!1,this.tags=void 0}setDescription(e){return this.description=e,this}getDescription(){return this.description}setSyscap(e){return e&&(this.syscap=e),this}getSyscap(){return this.syscap}setSince(e){return this.since=e,this}getSince(){return this.since}setIsForm(e){return this.isForm=e,this}getIsForm(){return this.isForm}setIsCrossPlatForm(e){return this.isCrossPlatForm=e,this}getIsCrossPlatForm(){return this.isCrossPlatForm}setIsSystemApi(e){return this.isSystemApi=e,this}getIsSystemApi(){return this.isSystemApi}setIsAtomicService(e){return this.isAtomicService=e,this}getIsAtomicService(){return this.isAtomicService}setModelLimitation(e){return this.modelLimitation=e,this}getModelLimitation(){return this.modelLimitation}setDeprecatedVersion(e){return this.deprecatedVersion=e,this}getDeprecatedVersion(){return this.deprecatedVersion}setUseinstead(e){return this.useinstead=e,this}getUseinstead(){return this.useinstead}setPermission(e){return this.permissions=e,this}getPermission(){return this.permissions}addErrorCode(e){return this.errorCodes.push(e),this}getErrorCode(){return this.errorCodes}setTypeInfo(e){return this.typeInfo=e,this}getTypeInfo(){return this.typeInfo}setIsConstant(e){return this.isConstant=e,this}getIsConstant(){return this.isConstant}setKit(e){return this.kit=e,this}getKit(){return this.kit}setIsFile(e){return this.isFile=e,this}getIsFile(){return this.isFile}setTags(e){return this.tags=e,this}removeTags(){return this.tags=void 0,this}addTag(e){return this.tags||(this.tags=[]),this.tags.push(e),this}getTags(){return this.tags}}}(t.Comment||(t.Comment={}))},28879:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.DecoratorInfo=void 0;const i=n(r(58843));t.DecoratorInfo=class{constructor(e){this.expression="",this.expressionArguments=void 0;const t=e.expression;if(i.default.isCallExpression(t)){this.setExpression(t.expression.getText());t.arguments.forEach((e=>{this.addExpressionArguments([e.getText()])}))}i.default.isIdentifier(t)&&this.setExpression(t.getText())}setExpression(e){return this.expression=e,this}getExpression(){return this.expression}setExpressionArguments(e){return this.expressionArguments=e,this}addExpressionArguments(e){return this.expressionArguments||(this.expressionArguments=[]),this.expressionArguments.push(...e),this}getExpressionArguments(){return this.expressionArguments}}},68020:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ImportInfo=t.ExportDefaultInfo=t.ClassInterfaceInfo=t.NamespaceEnumInfo=t.ParamInfo=t.MethodInfo=t.TypeAliasInfo=t.EnumValueInfo=t.UnionTypeInfo=t.ConstantInfo=t.PropertyInfo=t.DeclareConstInfo=t.ApiInfo=t.BasicApiInfo=void 0;const n=r(8136);class i{constructor(e){this.apiType="",this.apiType=e}}t.BasicApiInfo=i;class a extends i{constructor(e,t){super(e),this.name="",this.syscap="",this.since="-1",this.isForm=!1,this.isCrossPlatForm=!1,this.isSystemApi=!1,this.isStageModelOnly=!1,this.isFaModelOnly=!1,this.deprecatedVersion="-1",this.useinstead="",this.setJsDocInfo(t)}setJsDocInfo(e){return this.syscap=e.getSyscap(),this.since=e.getSince(),this.isForm=e.getIsForm(),this.isCrossPlatForm=e.getIsCrossPlatForm(),this.isSystemApi=e.getIsSystemApi(),this.isStageModelOnly=e.getModelLimitation().toLowerCase()===n.StringConstant.STAGE_MODEL_ONLY,this.isFaModelOnly=e.getModelLimitation().toLowerCase()===n.StringConstant.FA_MODEL_ONLY,this.deprecatedVersion=e.getDeprecatedVersion(),this.useinstead=e.getUseinstead(),this}getSince(){return this.since}setName(e){return e?(this.name=e,this):this}}t.ApiInfo=a;t.DeclareConstInfo=class extends a{constructor(){super(...arguments),this.type=""}setType(e){return this.type=e,this}};t.PropertyInfo=class extends a{constructor(e,t){super(e,t),this.type="",this.isReadOnly=!1,this.isRequired=!1,this.isStatic=!1,this.permission="",this.setPermission(t.getPermission())}setType(e){return this.type=e,this}setIsReadOnly(e){return this.isReadOnly=e,this}setIsRequired(e){return this.isRequired=e,this}setIsStatic(e){return this.isStatic=e,this}setPermission(e){return this.permission=e,this}};t.ConstantInfo=class extends a{constructor(){super(...arguments),this.type="",this.value=""}setType(e){return this.type=e,this}setValue(e){return this.value=e,this}};t.UnionTypeInfo=class extends a{constructor(){super(...arguments),this.valueRange=[]}addValueRange(e){return this.valueRange.push(e),this}addValueRanges(e){return this.valueRange.push(...e),this}};t.EnumValueInfo=class extends a{constructor(){super(...arguments),this.value=""}setValue(e){return this.value=e,this}};t.TypeAliasInfo=class extends a{constructor(){super(...arguments),this.type=""}setType(e){return this.type=e,this}};t.MethodInfo=class extends a{constructor(e,t){super(e,t),this.callForm="",this.params=[],this.returnValue="",this.isStatic=!1,this.permission="",this.errorCodes=[],this.setPermission(t.getPermission()),this.setErrorCodes(t.getErrorCode())}setCallForm(e){return this.callForm=e,this}addParam(e){return this.params.push(e),this}setReturnValue(e){return this.returnValue=e,this}setIsStatic(e){return this.isStatic=e,this}setPermission(e){return this.permission=e,this}setErrorCodes(e){return this.errorCodes.push(...e),this}};t.ParamInfo=class extends a{constructor(){super(...arguments),this.type="",this.isRequired=!1}setType(e){e&&(this.type=e)}setIsRequired(e){this.isRequired=e}};class o extends a{constructor(){super(...arguments),this.childApis=[]}addChildApi(e){return this.childApis.push(...e),this}}t.NamespaceEnumInfo=o;t.ClassInterfaceInfo=class extends o{constructor(){super(...arguments),this.parentClasses=[]}setParentClasses(e){return this.parentClasses.push(...e),this}};class s extends i{constructor(){super(...arguments),this.name=""}createObject(){return new s(this.apiType)}setName(e){return this.name=e,this}}t.ExportDefaultInfo=s;t.ImportInfo=class extends i{constructor(){super(...arguments),this.importValues=[]}addImportValue(e,t){return this.importValues.push({key:e,value:t||e}),this}}},16137:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.mergeDefinedTextType=t.notMergeDefinedText=t.apiNotStatisticsType=t.apiStatisticsType=t.ApiStatisticsInfo=void 0;const i=n(r(58843)),a=r(44791),o=r(80879);t.ApiStatisticsInfo=class{constructor(){this.filePath="",this.packageName="",this.parentModuleName="global",this.syscap="",this.permissions="",this.since="",this.isForm=!1,this.isCrossPlatForm=!1,this.isAutomicService=!1,this.hierarchicalRelations="",this.apiName="",this.deprecatedVersion="",this.useInstead="",this.apiType="",this.definedText="",this.pos={line:-1,character:-1},this.isSystemapi=!1,this.modelLimitation="",this.decorators=[],this.errorCodes=[],this.kitInfo=""}setFilePath(e){return this.filePath=e,this.packageName=o.FunctionUtils.getPackageName(e),this}getPackageName(){return this.packageName}getFilePath(){return this.filePath}setApiType(e){return this.apiType=e===a.ApiType.DECLARE_CONST?a.ApiType.PROPERTY:e,this}getParentModuleName(){return this.parentModuleName}setParentModuleName(e){return this.parentModuleName=e,this}setSyscap(e){return e&&(this.syscap=e),this}getSyscap(){return this.syscap}setPermission(e){return this.permissions=e,this}getPermission(){return this.permissions}setSince(e){return this.since=e,this}getSince(){return this.since}setIsForm(e){return this.isForm=e,this}getIsForm(){return this.isForm}setIsCrossPlatForm(e){return this.isCrossPlatForm=e,this}getIsCrossPlatForm(){return this.isCrossPlatForm}setIsAutomicService(e){return this.isAutomicService=e,this}getIsAutomicService(){return this.isAutomicService}getApiType(){return this.apiType}setDefinedText(e){return this.definedText=e,this}getDefinedText(){return this.definedText}setPos(e){return this.pos=e,this}getPos(){return this.pos}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setDeprecatedVersion(e){return this.deprecatedVersion=e,this}getDeprecatedVersion(){return this.deprecatedVersion}setUseInstead(e){return this.useInstead=e,this}getUseInstead(){return this.useInstead}setApiLevel(e){return this.isSystemapi=e,this}getApiLevel(){return this.isSystemapi}setModelLimitation(e){return this.modelLimitation=e,this}getModelLimitation(){return this.modelLimitation}setDecorators(e){return e?.forEach((e=>{this.decorators?.push(e.expression)})),this}getDecorators(){return this.decorators}setErrorCodes(e){return this.errorCodes=e,this}getErrorCodes(){return this.errorCodes}setKitInfo(e){return this.kitInfo=e,this}getKitInfo(){return this.kitInfo}},t.apiStatisticsType=new Set([a.ApiType.PROPERTY,a.ApiType.CLASS,a.ApiType.INTERFACE,a.ApiType.NAMESPACE,a.ApiType.METHOD,a.ApiType.CONSTANT,a.ApiType.ENUM_VALUE,a.ApiType.ENUM,a.ApiType.TYPE_ALIAS,a.ApiType.DECLARE_CONST,a.ApiType.STRUCT]),t.apiNotStatisticsType=new Set([a.ApiType.ENUM,a.ApiType.NAMESPACE]),t.notMergeDefinedText=new Set(["on","off"]),t.mergeDefinedTextType=new Set([i.default.SyntaxKind.MethodDeclaration,i.default.SyntaxKind.MethodSignature,i.default.SyntaxKind.FunctionDeclaration])},8136:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EventConstant=t.PunctuationMark=t.NumberConstant=t.StringConstant=void 0,function(e){e.ASYNC_CALLBACK_METHOD_KEY="AsyncCallback",e.ASYNC_CALLBACK_METHOD_KEY_CHANGE="AsyncCallback",e.CHECK_API_VERSION="11",e.CONST_KEY_WORD="const",e.CONSTRUCTOR_API_NAME="constructor",e.EXPORT_DEFAULT="export_default_",e.EXPORT="export_",e.DTS_EXTENSION=".d.ts",e.DETS_EXTENSION=".d.ets",e.ETS_EXTENSION=".ets",e.FA_MODEL_ONLY="famodelonly",e.PROMISE_METHOD_KEY="Promise",e.PROMISE_METHOD_KEY_CHANGE="Promise",e.REFERENCE="_reference",e.TS_EXTENSION=".ts",e.SELF="_self",e.STAGE_MODEL_ONLY="stagemodelonly",e.UTF8="utf-8",e.NOT_SCAN_DIR="build-tools"}(t.StringConstant||(t.StringConstant={})),function(e){e[e.INDENT_SPACE=2]="INDENT_SPACE",e[e.RELATION_LENGTH=2]="RELATION_LENGTH",e.DEFAULT_DEPRECATED_VERSION="-1",e[e.IS_FIELD_EXIST=0]="IS_FIELD_EXIST",e[e.BINARY_SYSTEM=2]="BINARY_SYSTEM",e[e.LINE_IN_EXCEL=2]="LINE_IN_EXCEL",e[e.SYSCAP_KEY_FIELD_INDEX=2]="SYSCAP_KEY_FIELD_INDEX",e[e.DELETE_CURRENT_JS_DOC=-2]="DELETE_CURRENT_JS_DOC"}(t.NumberConstant||(t.NumberConstant={})),function(e){e.QUERY="?",e.LEFT_BRACKET="[",e.RIGHT_BRACKET="]",e.LEFT_BRACE="{",e.RIGHT_BRACE="}",e.LEFT_PARENTHESES="(",e.RIGHT_PARENTHESES=")"}(t.PunctuationMark||(t.PunctuationMark={}));class r{}t.EventConstant=r,r.eventNameList=["on","off","emit","once"],r.eventMethodCheckVersion=10,r.eventFirstParamName="type"},27944:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EnumUtils=void 0;t.EnumUtils=class{static enum2arr(e){let t=Array.isArray(e)?e:Object.values(e);return t.some((e=>"number"==typeof e))&&(t=t.filter((e=>"number"==typeof e))),t}}},40745:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FileUtils=void 0;const i=n(r(79896)),a=n(r(16928)),o=n(r(59620)),s=r(4e3),c=r(8136);process.env.DIR_NAME||Object.assign(process.env,o.default);class l{static getBaseDirName(){return this.baseDirName}static readFilesInDir(e,t){const r=[];return i.default.readdirSync(e,{withFileTypes:!0}).forEach((n=>{if(n.name===c.StringConstant.NOT_SCAN_DIR)return;const i=a.default.join(e,n.name);if(n.isFile())return t?void(t(n.name)&&r.push(i)):void r.push(i);r.push(...l.readFilesInDir(i,t))})),r}static writeStringToFile(e,t){const r=a.default.dirname(t);l.isExists(r)||i.default.mkdirSync(r,{recursive:!0}),i.default.writeFileSync(t,e)}static isDirectory(e){return i.default.lstatSync(e).isDirectory()}static isFile(e){return i.default.lstatSync(e).isFile()}static isExists(e){if(!e)return!1;try{return i.default.accessSync(a.default.resolve(this.baseDirName,e),i.default.constants.R_OK),!0}catch(e){const t=e;return s.LogUtil.e("error filePath",t.stack?t.stack:t.message),!1}}}t.FileUtils=l,l.baseDirName=String(process.env.DIR_NAME)},80879:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FunctionUtils=void 0;const i=n(r(16928)),a=n(r(79896)),o=r(40745),s=r(8136),c=r(63598);t.FunctionUtils=class{static getPackageName(e){return e.indexOf("component\\ets\\")>=0||e.indexOf("component/ets/")>=0?"ArkUI":i.default.basename(e).replace(/@|.d.ts$/g,"")}static handleSyscap(e){const t=e.split(".");let r="";switch(t[1]){case"MiscServices":r=t[s.NumberConstant.SYSCAP_KEY_FIELD_INDEX];break;case"Communication":if(l.has(t[s.NumberConstant.SYSCAP_KEY_FIELD_INDEX])){r=t[s.NumberConstant.SYSCAP_KEY_FIELD_INDEX];break}r=t[1];break;default:r=t[1]}return r}static readSubsystemFile(){const e=i.default.join(o.FileUtils.getBaseDirName(),"subsystem.json"),t=JSON.parse(a.default.readFileSync(e,"utf-8")),r=new Map,n=new Map;return t.forEach((e=>{r.set(e.syscap,e.subsystem),n.set(e.syscap,e.fileName)})),{subsystemMap:r,fileNameMap:n}}static readKitFile(){const e=new Map,t=new Map,r=new Set;return c.data.forEach((n=>{e.set(n.filePath,n.subSystem),t.set(n.filePath,n.kitName),r.add(n.filePath)})),{subsystemMap:e,kitNameMap:t,filePathSet:r}}};const l=new Set(["Bluetooth","NetManager"])},87960:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringUtils=void 0;const n=r(4e3);t.StringUtils=class{static hasSubstring(e,t){let r=!1;try{r=-1!==e.search(t)}catch(e){n.LogUtil.e("StringUtils.hasSubstring",e)}return r}static transformBooleanToTag(e,t){return"true"===e.toString()?t:"NA"}}},93333:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.punctuationMarkSet=t.apiCheckResult=t.compositiveLocalResult=t.compositiveResult=t.apiLegalityCheckTypeMap=t.permissionOptionalTags=t.conditionalOptionalTags=t.optionalTags=t.inheritTagArr=t.officialTagArr=t.tagsArrayOfOrder=t.CommonFunctions=t.ObtainFullPath=t.GenerateFile=t.CompolerOptions=t.PosOfNode=void 0;const i=n(r(16928)),a=n(r(79896)),o=r(6752),s=n(r(58843)),c=r(40745),l=r(98768);t.PosOfNode=class{static getPosOfNode(e,t){const r=s.default.getLineAndCharacterOfPosition(e.getSourceFile(),t.start);return t.file?.fileName+`(line: ${r.line+1}, col: ${r.character+1})`}};t.CompolerOptions=class{static getCompolerOptions(){const e=s.default.readConfigFile(i.default.resolve(c.FileUtils.getBaseDirName(),"./tsconfig.json"),s.default.sys.readFile).config.compilerOptions;return Object.assign(e,{target:"es2020",jsx:"preserve",incremental:void 0,declaration:void 0,declarationMap:void 0,emitDeclarationOnly:void 0,outFile:void 0,composite:void 0,tsBuildInfoFile:void 0,noEmit:void 0,isolatedModules:!0,paths:void 0,rootDirs:void 0,types:void 0,out:void 0,noLib:void 0,noResolve:!0,noEmitOnError:void 0,declarationDir:void 0,suppressOutputPathCheck:!0,allowNonTsExtensions:!0}),e}};t.GenerateFile=class{static writeFile(e,t,r){a.default.writeFile(i.default.resolve(t),JSON.stringify(e,null,2),r,(e=>{e?console.error(`ERROR FOR CREATE FILE:${e}`):console.log("API CHECK FINISH!")}))}static async writeExcelFile(e){const t=new o.Workbook,r=t.addWorksheet("Js Api",{views:[{xSplit:1}]});r.getRow(1).values=["order","level","errorType","fileName","apiName","apiContent","type","errorInfo","version","model"];for(let t=1;t<=e.length;t++){const n=e[t-1];r.getRow(t+1).values=[t,n.getErrorType(),n.getLevel(),n.getLocation(),n.getApiName(),n.getApiFullText(),n.getApiType(),n.getMessage(),n.getVersion(),n.getBaseName()]}t.xlsx.writeBuffer().then((e=>{a.default.writeFile(i.default.resolve(c.FileUtils.getBaseDirName(),"./Js_Api.xlsx"),e,(function(e){e&&console.error(e)}))}))}};class u{static getFullFiles(e,t){try{a.default.readdirSync(e).forEach((r=>{const n=i.default.join(e,r);a.default.statSync(n).isDirectory()?u.getFullFiles(n,t):(/\.d\.ts/.test(n)||/\.d\.ets/.test(n)||/\.ts/.test(n))&&t.push(n)}))}catch(e){console.error("ETS ERROR: "+e)}}}t.ObtainFullPath=u;t.CommonFunctions=class{static isOfficialTag(e){return-1===t.tagsArrayOfOrder.indexOf(e)}static createErrorInfo(e,t){return t.forEach((t=>{e=e.replace("$$",t)})),e}static getCheckApiVersion(){let e="-1";try{e=JSON.stringify(l.ApiCheckVersion)}catch(e){throw`Failed to read package.json or parse JSON content: ${e}`}if(!e)throw"Please configure the correct API version to be verified";return e}static judgeSpecialCase(e){let t=[];return e===s.default.SyntaxKind.TypeLiteral?t=["object"]:e===s.default.SyntaxKind.FunctionType&&(t=["function"]),t}static getExtendsApiValue(e){let t="";const r=e.getParentClasses();return 0===r.length||r.forEach((e=>{0!==e.getExtendClass().length&&(t=e.getExtendClass())})),t}static getImplementsApiValue(e){let t="";const r=e.getParentClasses();return 0===r.length||r.forEach((e=>{0!==e.getImplementClass().length&&(t=e.getImplementClass())})),t}},t.tagsArrayOfOrder=["namespace","struct","extends","implements","typedef","interface","permission","enum","constant","type","param","default","returns","readonly","throws","static","fires","syscap","systemapi","famodelonly","FAModelOnly","stagemodelonly","StageModelOnly","crossplatform","form","atomicservice","since","deprecated","useinstead","test","example"],t.officialTagArr=["abstract","access","alias","async","augments","author","borrows","class","classdesc","constructs","copyright","event","exports","external","file","function","generator","global","hideconstructor","ignore","inheritdoc","inner","instance","lends","license","listens","member","memberof","mixes","mixin","modifies","module","package","private","property","protected","public","requires","see","summary","this","todo","tutorial","variation","version","yields","also","description","kind","name","undocumented"],t.inheritTagArr=["test","famodelonly","FAModelOnly","stagemodelonly","StageModelOnly","deprecated","systemapi","atomicservice","form"],t.optionalTags=["static","fires","systemapi","famodelonly","FAModelOnly","stagemodelonly","StageModelOnly","crossplatform","deprecated","test","form","example","atomicservice"],t.conditionalOptionalTags=["default","readonly","permission","throws","constant"],t.permissionOptionalTags=[s.default.SyntaxKind.FunctionDeclaration,s.default.SyntaxKind.MethodSignature,s.default.SyntaxKind.MethodDeclaration,s.default.SyntaxKind.CallSignature,s.default.SyntaxKind.Constructor,s.default.SyntaxKind.PropertyDeclaration,s.default.SyntaxKind.PropertySignature,s.default.SyntaxKind.VariableStatement],t.apiLegalityCheckTypeMap=new Map([[s.default.SyntaxKind.CallSignature,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.ClassDeclaration,["extends","implements","syscap","since"]],[s.default.SyntaxKind.Constructor,["param","syscap","permission","throws","syscap","since"]],[s.default.SyntaxKind.EnumDeclaration,["enum","syscap","since"]],[s.default.SyntaxKind.FunctionDeclaration,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.InterfaceDeclaration,["typedef","extends","syscap","since"]],[s.default.SyntaxKind.MethodDeclaration,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.MethodSignature,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.ModuleDeclaration,["namespace","syscap","since"]],[s.default.SyntaxKind.PropertyDeclaration,["type","default","permission","throws","readonly","syscap","since"]],[s.default.SyntaxKind.PropertySignature,["type","default","permission","throws","readonly","syscap","since"]],[s.default.SyntaxKind.VariableStatement,["constant","default","permission","throws","syscap","since"]],[s.default.SyntaxKind.TypeAliasDeclaration,["syscap","since","typedef"]],[s.default.SyntaxKind.EnumMember,["syscap","since"]],[s.default.SyntaxKind.NamespaceExportDeclaration,["syscap","since"]],[s.default.SyntaxKind.TypeLiteral,["syscap","since"]],[s.default.SyntaxKind.LabeledStatement,["syscap","since"]],[s.default.SyntaxKind.StructDeclaration,["struct","syscap","since"]]]),t.compositiveResult=[],t.compositiveLocalResult=[],t.apiCheckResult=[],t.punctuationMarkSet=new Set(["\\{","\\}","\\(","\\)","\\[","\\]","\\@","\\.","\\:","\\,","\\;","\\(","\\)",'\\"',"\\/","\\_","\\-","\\=","\\?","\\<","\\>","\\,","\\!","\\#",":",",","\\:","\\|","\\%","\\&","\\¡","\\¢","\\+","\\`","\\\\","\\'"])},4e3:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.LogUtil=t.LogLevelUtil=t.LogLevel=void 0,function(e){e[e.DEBUG=0]="DEBUG",e[e.INFO=1]="INFO",e[e.WARN=2]="WARN",e[e.ERR=3]="ERR"}(r=t.LogLevel||(t.LogLevel={}));t.LogLevelUtil=class{static get(e){for(let t=r.DEBUG;t<=r.ERR;t++)if(e===r[t])return t;return r.ERR}};class n{static e(e,t){n.logLevel<=r.ERR&&console.error(`${e}: ${t}`)}static w(e,t){n.logLevel<=r.WARN&&console.warn(`${e}: ${t}`)}static i(e,t){n.logLevel<=r.INFO&&console.info(`${e}: ${t}`)}static d(e,t){n.logLevel<=r.DEBUG&&console.debug(`${e}: ${t}`)}}t.LogUtil=n,n.logLevel=r.ERR},58843:function(e,t,r){"use strict"; -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. All rights reserved. -Licensed under the Apache License, Version 2.0 (the "License"); you may not use -this file except in compliance with the License. You may obtain a copy of the -License at http://www.apache.org/licenses/LICENSE-2.0 - -THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED -WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, -MERCHANTABLITY OR NON-INFRINGEMENT. - -See the Apache Version 2.0 License for specific language governing permissions -and limitations under the License. -***************************************************************************** */var n,i=this&&this.__spreadArray||function(e,t){for(var r=0,n=t.length,i=e.length;r<n;r++,i++)e[i]=t[r];return e},a=this&&this.__assign||function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},a.apply(this,arguments)},o=this&&this.__makeTemplateObject||function(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e},s=this&&this.__generator||function(e,t){var r,n,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,n=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==a[0]&&2!==a[0])){o=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){o.label=a[1];break}if(6===a[0]&&o.label<i[1]){o.label=i[1],i=a;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(a);break}i[2]&&o.ops.pop(),o.trys.pop();continue}a=t.call(e,o)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,s])}}},c=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r},l=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});!function(e){function t(){var e={};return e.prev=e,{head:e,tail:e,size:0}}function r(e,t){return e===t||e!=e&&t!=t}function n(e){var t=e.prev;if(!t||t===e)throw new Error("Illegal state");return t}function i(e){for(;e;){var t=!e.prev;if(e=e.next,!t)return e}}function a(e,t){for(var i=e.tail;i!==e.head;i=n(i))if(r(i.key,t))return i}function o(e,t,r){var n=a(e,t);if(!n){var i=function(e,t){return{key:e,value:t,next:void 0,prev:void 0}}(t,r);return i.prev=e.tail,e.tail.next=i,e.tail=i,e.size++,i}n.value=r}function s(e,t){for(var i=e.tail;i!==e.head;i=n(i)){if(void 0===i.prev)throw new Error("Illegal state");if(r(i.key,t)){if(i.next)i.next.prev=i.prev;else{if(e.tail!==i)throw new Error("Illegal state");e.tail=i.prev}return i.prev.next=i.next,i.next=i.prev,i.prev=void 0,e.size--,i}}}function c(e){for(var t=e.tail;t!==e.head;){var r=n(t);t.next=e.head,t.prev=void 0,t=r}e.head.next=void 0,e.tail=e.head,e.size=0}function l(e,t){for(var r=e.head;r;)(r=i(r))&&t(r.value,r.key)}function u(e,t){if(e)for(var r=e.next();!r.done;r=e.next())t(r.value)}function d(e,t){return{current:e.head,selector:t}}function p(e){return e.current=i(e.current),e.current?{value:e.selector(e.current.key,e.current.value),done:!1}:{value:void 0,done:!0}}!function(e){e.createMapShim=function(e){var r=function(){function e(e,t){this._data=d(e,t)}return e.prototype.next=function(){return p(this._data)},e}();return function(){function n(r){var n=this;this._mapData=t(),u(e(r),(function(e){var t=e[0],r=e[1];return n.set(t,r)}))}return Object.defineProperty(n.prototype,"size",{get:function(){return this._mapData.size},enumerable:!1,configurable:!0}),n.prototype.get=function(e){var t;return null===(t=a(this._mapData,e))||void 0===t?void 0:t.value},n.prototype.set=function(e,t){return o(this._mapData,e,t),this},n.prototype.has=function(e){return!!a(this._mapData,e)},n.prototype.delete=function(e){return!!s(this._mapData,e)},n.prototype.clear=function(){c(this._mapData)},n.prototype.keys=function(){return new r(this._mapData,(function(e,t){return e}))},n.prototype.values=function(){return new r(this._mapData,(function(e,t){return t}))},n.prototype.entries=function(){return new r(this._mapData,(function(e,t){return[e,t]}))},n.prototype.forEach=function(e){l(this._mapData,e)},n}()},e.createSetShim=function(e){var r=function(){function e(e,t){this._data=d(e,t)}return e.prototype.next=function(){return p(this._data)},e}();return function(){function n(r){var n=this;this._mapData=t(),u(e(r),(function(e){return n.add(e)}))}return Object.defineProperty(n.prototype,"size",{get:function(){return this._mapData.size},enumerable:!1,configurable:!0}),n.prototype.add=function(e){return o(this._mapData,e,e),this},n.prototype.has=function(e){return!!a(this._mapData,e)},n.prototype.delete=function(e){return!!s(this._mapData,e)},n.prototype.clear=function(){c(this._mapData)},n.prototype.keys=function(){return new r(this._mapData,(function(e,t){return e}))},n.prototype.values=function(){return new r(this._mapData,(function(e,t){return t}))},n.prototype.entries=function(){return new r(this._mapData,(function(e,t){return[e,t]}))},n.prototype.forEach=function(e){l(this._mapData,e)},n}()}}(e.ShimCollections||(e.ShimCollections={}))}(d||(d={})),function(e){e.versionMajorMinor="4.2",e.version="4.2.3",function(e){e[e.LessThan=-1]="LessThan",e[e.EqualTo=0]="EqualTo",e[e.GreaterThan=1]="GreaterThan"}(e.Comparison||(e.Comparison={})),function(e){e.tryGetNativeMap=function(){return"undefined"!=typeof Map&&"entries"in Map.prototype&&1===new Map([[0,0]]).size?Map:void 0},e.tryGetNativeSet=function(){return"undefined"!=typeof Set&&"entries"in Set.prototype&&1===new Set([0]).size?Set:void 0}}(e.NativeCollections||(e.NativeCollections={}))}(d||(d={})),function(e){function t(t,n,i){var a,o=null!==(a=e.NativeCollections[n]())&&void 0!==a?a:null===e.ShimCollections||void 0===e.ShimCollections?void 0:e.ShimCollections[i](r);if(o)return o;throw new Error("TypeScript requires an environment that provides a compatible native "+t+" implementation.")}function r(t){if(t){if(C(t))return g(t);if(t instanceof e.Map)return t.entries();if(t instanceof e.Set)return t.values();throw new Error("Iteration not supported.")}}function n(e,t,r){if(void 0===r&&(r=O),e)for(var n=0,i=e;n<i.length;n++){if(r(i[n],t))return!0}return!1}function a(e,t){if(e){if(!t)return e.length>0;for(var r=0,n=e;r<n.length;r++){if(t(n[r]))return!0}}return!1}function o(e,t){return a(t)?a(e)?i(i([],e),t):t:e}function s(e,t){return t}function c(e){return e.map(s)}function l(e,t){return void 0===t?e:void 0===e?[t]:(e.push(t),e)}function u(e,t){return t<0?e.length+t:t}function d(e,t,r,n){if(void 0===t||0===t.length)return e;if(void 0===e)return t.slice(r,n);r=void 0===r?0:u(t,r),n=void 0===n?t.length:u(t,n);for(var i=r;i<n&&i<t.length;i++)void 0!==t[i]&&e.push(t[i]);return e}function p(e,t,r){return!n(e,t,r)&&(e.push(t),!0)}function f(e,t,r){t.sort((function(t,n){return r(e[t],e[n])||M(t,n)}))}function m(e,t){return 0===e.length?e:e.slice().sort(t)}function g(e){var t=0;return{next:function(){return t===e.length?{value:void 0,done:!0}:(t++,{value:e[t-1],done:!1})}}}function _(e,t,r,n,i){return h(e,r(t),r,n,i)}function h(e,t,r,n,i){if(!a(e))return-1;for(var o=i||0,s=e.length-1;o<=s;){var c=o+(s-o>>1);switch(n(r(e[c],c),t)){case-1:o=c+1;break;case 0:return c;case 1:s=c-1}}return~o}function y(e,t,r,n,i){if(e&&e.length>0){var a=e.length;if(a>0){var o=void 0===n||n<0?0:n,s=void 0===i||o+i>a-1?a-1:o+i,c=void 0;for(arguments.length<=2?(c=e[o],o++):c=r;o<=s;)c=t(c,e[o],o),o++;return c}}return r}e.Map=t("Map","tryGetNativeMap","createMapShim"),e.Set=t("Set","tryGetNativeSet","createSetShim"),e.getIterator=r,e.emptyArray=[],e.emptyMap=new e.Map,e.emptySet=new e.Set,e.createMap=function(){return new e.Map},e.createMapFromTemplate=function(t){var r=new e.Map;for(var n in t)v.call(t,n)&&r.set(n,t[n]);return r},e.length=function(e){return e?e.length:0},e.forEach=function(e,t){if(e)for(var r=0;r<e.length;r++){var n=t(e[r],r);if(n)return n}},e.forEachRight=function(e,t){if(e)for(var r=e.length-1;r>=0;r--){var n=t(e[r],r);if(n)return n}},e.firstDefined=function(e,t){if(void 0!==e)for(var r=0;r<e.length;r++){var n=t(e[r],r);if(void 0!==n)return n}},e.firstDefinedIterator=function(e,t){for(;;){var r=e.next();if(r.done)return;var n=t(r.value);if(void 0!==n)return n}},e.reduceLeftIterator=function(e,t,r){var n=r;if(e)for(var i=e.next(),a=0;!i.done;i=e.next(),a++)n=t(n,i.value,a);return n},e.zipWith=function(t,r,n){var i=[];e.Debug.assertEqual(t.length,r.length);for(var a=0;a<t.length;a++)i.push(n(t[a],r[a],a));return i},e.zipToIterator=function(t,r){e.Debug.assertEqual(t.length,r.length);var n=0;return{next:function(){return n===t.length?{value:void 0,done:!0}:(n++,{value:[t[n-1],r[n-1]],done:!1})}}},e.zipToMap=function(t,r){e.Debug.assert(t.length===r.length);for(var n=new e.Map,i=0;i<t.length;++i)n.set(t[i],r[i]);return n},e.intersperse=function(e,t){if(e.length<=1)return e;for(var r=[],n=0,i=e.length;n<i;n++)n&&r.push(t),r.push(e[n]);return r},e.every=function(e,t){if(e)for(var r=0;r<e.length;r++)if(!t(e[r],r))return!1;return!0},e.find=function(e,t){for(var r=0;r<e.length;r++){var n=e[r];if(t(n,r))return n}},e.findLast=function(e,t){for(var r=e.length-1;r>=0;r--){var n=e[r];if(t(n,r))return n}},e.findIndex=function(e,t,r){for(var n=r||0;n<e.length;n++)if(t(e[n],n))return n;return-1},e.findLastIndex=function(e,t,r){for(var n=void 0===r?e.length-1:r;n>=0;n--)if(t(e[n],n))return n;return-1},e.findMap=function(t,r){for(var n=0;n<t.length;n++){var i=r(t[n],n);if(i)return i}return e.Debug.fail()},e.contains=n,e.arraysEqual=function(e,t,r){return void 0===r&&(r=O),e.length===t.length&&e.every((function(e,n){return r(e,t[n])}))},e.indexOfAnyCharCode=function(e,t,r){for(var i=r||0;i<e.length;i++)if(n(t,e.charCodeAt(i)))return i;return-1},e.countWhere=function(e,t){var r=0;if(e)for(var n=0;n<e.length;n++){t(e[n],n)&&r++}return r},e.filter=function(e,t){if(e){for(var r=e.length,n=0;n<r&&t(e[n]);)n++;if(n<r){var i=e.slice(0,n);for(n++;n<r;){var a=e[n];t(a)&&i.push(a),n++}return i}}return e},e.filterMutate=function(e,t){for(var r=0,n=0;n<e.length;n++)t(e[n],n,e)&&(e[r]=e[n],r++);e.length=r},e.clear=function(e){e.length=0},e.map=function(e,t){var r;if(e){r=[];for(var n=0;n<e.length;n++)r.push(t(e[n],n))}return r},e.mapIterator=function(e,t){return{next:function(){var r=e.next();return r.done?r:{value:t(r.value),done:!1}}}},e.sameMap=function(e,t){if(e)for(var r=0;r<e.length;r++){var n=e[r],i=t(n,r);if(n!==i){var a=e.slice(0,r);for(a.push(i),r++;r<e.length;r++)a.push(t(e[r],r));return a}}return e},e.flatten=function(e){for(var t=[],r=0,n=e;r<n.length;r++){var i=n[r];i&&(C(i)?d(t,i):t.push(i))}return t},e.flatMap=function(t,r){var n;if(t)for(var i=0;i<t.length;i++){var a=r(t[i],i);a&&(n=C(a)?d(n,a):l(n,a))}return n||e.emptyArray},e.flatMapToMutable=function(e,t){var r=[];if(e)for(var n=0;n<e.length;n++){var i=t(e[n],n);i&&(C(i)?d(r,i):r.push(i))}return r},e.flatMapIterator=function(t,r){var n=t.next();if(n.done)return e.emptyIterator;var i=a(n.value);return{next:function(){for(;;){var e=i.next();if(!e.done)return e;var r=t.next();if(r.done)return r;i=a(r.value)}}};function a(t){var n=r(t);return void 0===n?e.emptyIterator:C(n)?g(n):n}},e.sameFlatMap=function(e,t){var r;if(e)for(var n=0;n<e.length;n++){var i=e[n],a=t(i,n);(r||i!==a||C(a))&&(r||(r=e.slice(0,n)),C(a)?d(r,a):r.push(a))}return r||e},e.mapAllOrFail=function(e,t){for(var r=[],n=0;n<e.length;n++){var i=t(e[n],n);if(void 0===i)return;r.push(i)}return r},e.mapDefined=function(e,t){var r=[];if(e)for(var n=0;n<e.length;n++){var i=t(e[n],n);void 0!==i&&r.push(i)}return r},e.mapDefinedIterator=function(e,t){return{next:function(){for(;;){var r=e.next();if(r.done)return r;var n=t(r.value);if(void 0!==n)return{value:n,done:!1}}}}},e.mapDefinedEntries=function(t,r){if(t){var n=new e.Map;return t.forEach((function(e,t){var i=r(t,e);if(void 0!==i){var a=i[0],o=i[1];void 0!==a&&void 0!==o&&n.set(a,o)}})),n}},e.mapDefinedValues=function(t,r){if(t){var n=new e.Set;return t.forEach((function(e){var t=r(e);void 0!==t&&n.add(t)})),n}},e.getOrUpdate=function(e,t,r){if(e.has(t))return e.get(t);var n=r();return e.set(t,n),n},e.tryAddToSet=function(e,t){return!e.has(t)&&(e.add(t),!0)},e.emptyIterator={next:function(){return{value:void 0,done:!0}}},e.singleIterator=function(e){var t=!1;return{next:function(){var r=t;return t=!0,r?{value:void 0,done:!0}:{value:e,done:!1}}}},e.spanMap=function(e,t,r){var n;if(e){n=[];for(var i=e.length,a=void 0,o=void 0,s=0,c=0;s<i;){for(;c<i;){if(o=t(e[c],c),0===c)a=o;else if(o!==a)break;c++}if(s<c){var l=r(e.slice(s,c),a,s,c);l&&n.push(l),s=c}a=o,c++}}return n},e.mapEntries=function(t,r){if(t){var n=new e.Map;return t.forEach((function(e,t){var i=r(t,e),a=i[0],o=i[1];n.set(a,o)})),n}},e.some=a,e.getRangesWhere=function(e,t,r){for(var n,i=0;i<e.length;i++)t(e[i])?n=void 0===n?i:n:void 0!==n&&(r(n,i),n=void 0);void 0!==n&&r(n,e.length)},e.concatenate=o,e.indicesOf=c,e.deduplicate=function(e,t,r){return 0===e.length?[]:1===e.length?e.slice():r?function(e,t,r){var n=c(e);f(e,n,r);for(var i=e[n[0]],a=[n[0]],o=1;o<n.length;o++){var s=n[o],l=e[s];t(i,l)||(a.push(s),i=l)}return a.sort(),a.map((function(t){return e[t]}))}(e,t,r):function(e,t){for(var r=[],n=0,i=e;n<i.length;n++)p(r,i[n],t);return r}(e,t)},e.insertSorted=function(e,t,r){if(0!==e.length){var n=_(e,t,N,r);n<0&&e.splice(~n,0,t)}else e.push(t)},e.sortAndDeduplicate=function(t,r,n){return function(t,r){if(0===t.length)return e.emptyArray;for(var n=t[0],i=[n],a=1;a<t.length;a++){var o=t[a];switch(r(o,n)){case!0:case 0:continue;case-1:return e.Debug.fail("Array is unsorted.")}i.push(n=o)}return i}(m(t,r),n||r||j)},e.arrayIsSorted=function(e,t){if(e.length<2)return!0;for(var r=e[0],n=0,i=e.slice(1);n<i.length;n++){var a=i[n];if(1===t(r,a))return!1;r=a}return!0},e.arrayIsEqualTo=function(e,t,r){if(void 0===r&&(r=O),!e||!t)return e===t;if(e.length!==t.length)return!1;for(var n=0;n<e.length;n++)if(!r(e[n],t[n],n))return!1;return!0},e.compact=function(e){var t;if(e)for(var r=0;r<e.length;r++){var n=e[r];!t&&n||(t||(t=e.slice(0,r)),n&&t.push(n))}return t||e},e.relativeComplement=function(t,r,n){if(!r||!t||0===r.length||0===t.length)return r;var i=[];e:for(var a=0,o=0;o<r.length;o++){o>0&&e.Debug.assertGreaterThanOrEqual(n(r[o],r[o-1]),0);t:for(var s=a;a<t.length;a++)switch(a>s&&e.Debug.assertGreaterThanOrEqual(n(t[a],t[a-1]),0),n(r[o],t[a])){case-1:i.push(r[o]);continue e;case 0:continue e;case 1:continue t}}return i},e.sum=function(e,t){for(var r=0,n=0,i=e;n<i.length;n++){r+=i[n][t]}return r},e.append=l,e.combine=function(e,t){return void 0===e?t:void 0===t?e:C(e)?C(t)?o(e,t):l(e,t):C(t)?l(t,e):[e,t]},e.addRange=d,e.pushIfUnique=p,e.appendIfUnique=function(e,t,r){return e?(p(e,t,r),e):[t]},e.sort=m,e.arrayIterator=g,e.arrayReverseIterator=function(e){var t=e.length;return{next:function(){return 0===t?{value:void 0,done:!0}:(t--,{value:e[t],done:!1})}}},e.stableSort=function(e,t){var r=c(e);return f(e,r,t),r.map((function(t){return e[t]}))},e.rangeEquals=function(e,t,r,n){for(;r<n;){if(e[r]!==t[r])return!1;r++}return!0},e.elementAt=function(e,t){if(e&&(t=u(e,t))<e.length)return e[t]},e.firstOrUndefined=function(e){return 0===e.length?void 0:e[0]},e.first=function(t){return e.Debug.assert(0!==t.length),t[0]},e.lastOrUndefined=function(e){return 0===e.length?void 0:e[e.length-1]},e.last=function(t){return e.Debug.assert(0!==t.length),t[t.length-1]},e.singleOrUndefined=function(e){return e&&1===e.length?e[0]:void 0},e.singleOrMany=function(e){return e&&1===e.length?e[0]:e},e.replaceElement=function(e,t,r){var n=e.slice(0);return n[t]=r,n},e.binarySearch=_,e.binarySearchKey=h,e.reduceLeft=y;var v=Object.prototype.hasOwnProperty;function b(e,t){return v.call(e,t)}function k(e){var t=[];for(var r in e)v.call(e,r)&&t.push(r);return t}e.hasProperty=b,e.getProperty=function(e,t){return v.call(e,t)?e[t]:void 0},e.getOwnKeys=k,e.getAllKeys=function(e){var t=[];do{for(var r=0,n=Object.getOwnPropertyNames(e);r<n.length;r++){p(t,n[r])}}while(e=Object.getPrototypeOf(e));return t},e.getOwnValues=function(e){var t=[];for(var r in e)v.call(e,r)&&t.push(e[r]);return t};var x=Object.entries||function(e){for(var t=k(e),r=Array(t.length),n=0;n<t.length;n++)r[n]=[t[n],e[t[n]]];return r};function S(e,t){for(var r=[],n=e.next();!n.done;n=e.next())r.push(t?t(n.value):n.value);return r}function w(e,t,r){void 0===r&&(r=N);for(var n=D(),i=0,a=e;i<a.length;i++){var o=a[i];n.add(t(o),r(o))}return n}function D(){var t=new e.Map;return t.add=E,t.remove=T,t}function E(e,t){var r=this.get(e);return r?r.push(t):this.set(e,r=[t]),r}function T(e,t){var r=this.get(e);r&&(K(r,t),r.length||this.delete(e))}function C(e){return Array.isArray?Array.isArray(e):e instanceof Array}function A(e){}function N(e){return e}function P(e){return e.toLowerCase()}e.getEntries=function(e){return e?x(e):[]},e.arrayOf=function(e,t){for(var r=new Array(e),n=0;n<e;n++)r[n]=t(n);return r},e.arrayFrom=S,e.assign=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];for(var n=0,i=t;n<i.length;n++){var a=i[n];if(void 0!==a)for(var o in a)b(a,o)&&(e[o]=a[o])}return e},e.equalOwnProperties=function(e,t,r){if(void 0===r&&(r=O),e===t)return!0;if(!e||!t)return!1;for(var n in e)if(v.call(e,n)){if(!v.call(t,n))return!1;if(!r(e[n],t[n]))return!1}for(var n in t)if(v.call(t,n)&&!v.call(e,n))return!1;return!0},e.arrayToMap=function(t,r,n){void 0===n&&(n=N);for(var i=new e.Map,a=0,o=t;a<o.length;a++){var s=o[a],c=r(s);void 0!==c&&i.set(c,n(s))}return i},e.arrayToNumericMap=function(e,t,r){void 0===r&&(r=N);for(var n=[],i=0,a=e;i<a.length;i++){var o=a[i];n[t(o)]=r(o)}return n},e.arrayToMultiMap=w,e.group=function(e,t,r){return void 0===r&&(r=N),S(w(e,t).values(),r)},e.clone=function(e){var t={};for(var r in e)v.call(e,r)&&(t[r]=e[r]);return t},e.extend=function(e,t){var r={};for(var n in t)v.call(t,n)&&(r[n]=t[n]);for(var n in e)v.call(e,n)&&(r[n]=e[n]);return r},e.copyProperties=function(e,t){for(var r in t)v.call(t,r)&&(e[r]=t[r])},e.maybeBind=function(e,t){return t?t.bind(e):void 0},e.createMultiMap=D,e.createUnderscoreEscapedMultiMap=function(){return D()},e.isArray=C,e.toArray=function(e){return C(e)?e:[e]},e.isString=function(e){return"string"==typeof e},e.isNumber=function(e){return"number"==typeof e},e.tryCast=function(e,t){return void 0!==e&&t(e)?e:void 0},e.cast=function(t,r){return void 0!==t&&r(t)?t:e.Debug.fail("Invalid cast. The supplied value "+t+" did not pass the test '"+e.Debug.getFunctionName(r)+"'.")},e.noop=A,e.returnFalse=function(){return!1},e.returnTrue=function(){return!0},e.returnUndefined=function(){},e.identity=N,e.toLowerCase=P;var I=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_\. ]+/g;function F(e){return I.test(e)?e.replace(I,P):e}function O(e,t){return e===t}function R(e,t){return e===t?0:void 0===e?-1:void 0===t?1:e<t?-1:1}function M(e,t){return R(e,t)}function L(e,t){return e===t?0:void 0===e?-1:void 0===t?1:(e=e.toUpperCase())<(t=t.toUpperCase())?-1:e>t?1:0}function j(e,t){return R(e,t)}e.toFileNameLowerCase=F,e.notImplemented=function(){throw new Error("Not implemented")},e.memoize=function(e){var t;return function(){return e&&(t=e(),e=void 0),t}},e.memoizeOne=function(t){var r=new e.Map;return function(e){var n=typeof e+":"+e,i=r.get(n);return void 0!==i||r.has(n)||(i=t(e),r.set(n,i)),i}},e.compose=function(e,t,r,n,i){if(i){for(var a=[],o=0;o<arguments.length;o++)a[o]=arguments[o];return function(e){return y(a,(function(e,t){return t(e)}),e)}}return n?function(i){return n(r(t(e(i))))}:r?function(n){return r(t(e(n)))}:t?function(r){return t(e(r))}:e?function(t){return e(t)}:function(e){return e}},function(e){e[e.None=0]="None",e[e.Normal=1]="Normal",e[e.Aggressive=2]="Aggressive",e[e.VeryAggressive=3]="VeryAggressive"}(e.AssertionLevel||(e.AssertionLevel={})),e.equateValues=O,e.equateStringsCaseInsensitive=function(e,t){return e===t||void 0!==e&&void 0!==t&&e.toUpperCase()===t.toUpperCase()},e.equateStringsCaseSensitive=function(e,t){return O(e,t)},e.compareValues=M,e.compareTextSpans=function(e,t){return M(null==e?void 0:e.start,null==t?void 0:t.start)||M(null==e?void 0:e.length,null==t?void 0:t.length)},e.min=function(e,t,r){return-1===r(e,t)?e:t},e.compareStringsCaseInsensitive=L,e.compareStringsCaseSensitive=j,e.getStringComparer=function(e){return e?L:j};var B,z,U=function(){var e,t,r=function(){if("object"==typeof Intl&&"function"==typeof Intl.Collator)return i;if("function"==typeof String.prototype.localeCompare&&"function"==typeof String.prototype.toLocaleUpperCase&&"a".localeCompare("B")<0)return a;return o}();return function(n){return void 0===n?e||(e=r(n)):"en-US"===n?t||(t=r(n)):r(n)};function n(e,t,r){if(e===t)return 0;if(void 0===e)return-1;if(void 0===t)return 1;var n=r(e,t);return n<0?-1:n>0?1:0}function i(e){var t=new Intl.Collator(e,{usage:"sort",sensitivity:"variant"}).compare;return function(e,r){return n(e,r,t)}}function a(e){return void 0!==e?o():function(e,r){return n(e,r,t)};function t(e,t){return e.localeCompare(t)}}function o(){return function(t,r){return n(t,r,e)};function e(e,r){return t(e.toUpperCase(),r.toUpperCase())||t(e,r)}function t(e,t){return e<t?-1:e>t?1:0}}}();function q(e,t,r){for(var n=new Array(t.length+1),i=new Array(t.length+1),a=r+.01,o=0;o<=t.length;o++)n[o]=o;for(o=1;o<=e.length;o++){var s=e.charCodeAt(o-1),c=Math.ceil(o>r?o-r:1),l=Math.floor(t.length>r+o?r+o:t.length);i[0]=o;for(var u=o,d=1;d<c;d++)i[d]=a;for(d=c;d<=l;d++){var p=e[o-1].toLowerCase()===t[d-1].toLowerCase()?n[d-1]+.1:n[d-1]+2,f=s===t.charCodeAt(d-1)?n[d-1]:Math.min(n[d]+1,i[d-1]+1,p);i[d]=f,u=Math.min(u,f)}for(d=l+1;d<=t.length;d++)i[d]=a;if(u>r)return;var m=n;n=i,i=m}var g=n[t.length];return g>r?void 0:g}function J(e,t){var r=e.length-t.length;return r>=0&&e.indexOf(t,r)===r}function V(e,t){for(var r=t;r<e.length-1;r++)e[r]=e[r+1];e.pop()}function H(e,t){e[t]=e[e.length-1],e.pop()}function K(e,t){return function(e,t){for(var r=0;r<e.length;r++)if(t(e[r]))return H(e,r),!0;return!1}(e,(function(e){return e===t}))}function W(e,t){return 0===e.lastIndexOf(t,0)}function G(e,t){var r=e.prefix,n=e.suffix;return t.length>=r.length+n.length&&W(t,r)&&J(t,n)}function $(e,t,r,n){for(var i=0,a=e[n];i<a.length;i++){var o=a[i],s=void 0;r?(s=r.slice()).push(o):s=[o],n===e.length-1?t.push(s):$(e,t,s,n+1)}}e.getUILocale=function(){return z},e.setUILocale=function(e){z!==e&&(z=e,B=void 0)},e.compareStringsCaseSensitiveUI=function(e,t){return(B||(B=U(z)))(e,t)},e.compareProperties=function(e,t,r,n){return e===t?0:void 0===e?-1:void 0===t?1:n(e[r],t[r])},e.compareBooleans=function(e,t){return M(e?1:0,t?1:0)},e.getSpellingSuggestion=function(t,r,n){for(var i,a=Math.min(2,Math.floor(.34*t.length)),o=Math.floor(.4*t.length)+1,s=0,c=r;s<c.length;s++){var l=c[s],u=n(l);if(void 0!==u&&Math.abs(u.length-t.length)<=a){if(u===t)continue;if(u.length<3&&u.toLowerCase()!==t.toLowerCase())continue;var d=q(t,u,o-.1);if(void 0===d)continue;e.Debug.assert(d<o),o=d,i=l}}return i},e.endsWith=J,e.removeSuffix=function(e,t){return J(e,t)?e.slice(0,e.length-t.length):e},e.tryRemoveSuffix=function(e,t){return J(e,t)?e.slice(0,e.length-t.length):void 0},e.stringContains=function(e,t){return-1!==e.indexOf(t)},e.removeMinAndVersionNumbers=function(e){var t=/[.-]((min)|(\d+(\.\d+)*))$/;return e.replace(t,"").replace(t,"")},e.orderedRemoveItem=function(e,t){for(var r=0;r<e.length;r++)if(e[r]===t)return V(e,r),!0;return!1},e.orderedRemoveItemAt=V,e.unorderedRemoveItemAt=H,e.unorderedRemoveItem=K,e.createGetCanonicalFileName=function(e){return e?N:F},e.patternText=function(e){return e.prefix+"*"+e.suffix},e.matchedText=function(t,r){return e.Debug.assert(G(t,r)),r.substring(t.prefix.length,r.length-t.suffix.length)},e.findBestPatternMatch=function(e,t,r){for(var n,i=-1,a=0,o=e;a<o.length;a++){var s=o[a],c=t(s);G(c,r)&&c.prefix.length>i&&(i=c.prefix.length,n=s)}return n},e.startsWith=W,e.removePrefix=function(e,t){return W(e,t)?e.substr(t.length):e},e.tryRemovePrefix=function(e,t,r){return void 0===r&&(r=N),W(r(e),r(t))?e.substring(t.length):void 0},e.and=function(e,t){return function(r){return e(r)&&t(r)}},e.or=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];for(var n=0,i=e;n<i.length;n++){if(i[n].apply(void 0,t))return!0}return!1}},e.not=function(e){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return!e.apply(void 0,t)}},e.assertType=function(e){},e.singleElementArray=function(e){return void 0===e?void 0:[e]},e.enumerateInsertsAndDeletes=function(e,t,r,n,i,a){a=a||A;for(var o=0,s=0,c=e.length,l=t.length,u=!1;o<c&&s<l;){var d=e[o],p=t[s],f=r(d,p);-1===f?(n(d),o++,u=!0):1===f?(i(p),s++,u=!0):(a(p,d),o++,s++)}for(;o<c;)n(e[o++]),u=!0;for(;s<l;)i(t[s++]),u=!0;return u},e.fill=function(e,t){for(var r=Array(e),n=0;n<e;n++)r[n]=t(n);return r},e.cartesianProduct=function(e){var t=[];return $(e,t,void 0,0),t},e.padLeft=function(e,t,r){return void 0===r&&(r=" "),t<=e.length?e:r.repeat(t-e.length)+e},e.padRight=function(e,t,r){return void 0===r&&(r=" "),t<=e.length?e:e+r.repeat(t-e.length)},e.takeWhile=function(e,t){for(var r=e.length,n=0;n<r&&t(e[n]);)n++;return e.slice(0,n)}}(d||(d={})),function(e){var t;!function(e){e[e.Off=0]="Off",e[e.Error=1]="Error",e[e.Warning=2]="Warning",e[e.Info=3]="Info",e[e.Verbose=4]="Verbose"}(t=e.LogLevel||(e.LogLevel={})),function(r){var n,i,a=0;function o(){return null!=n?n:n=new e.Version(e.version)}function s(e){return r.currentLogLevel<=e}function c(e,t){r.loggingHost&&s(e)&&r.loggingHost.log(e,t)}function l(e){c(t.Info,e)}r.currentLogLevel=t.Warning,r.isDebugging=!1,r.getTypeScriptVersion=o,r.shouldLog=s,r.log=l,(i=l=r.log||(r.log={})).error=function(e){c(t.Error,e)},i.warn=function(e){c(t.Warning,e)},i.log=function(e){c(t.Info,e)},i.trace=function(e){c(t.Verbose,e)};var u={};function d(e){return a>=e}function p(t,n){return!!d(t)||(u[n]={level:t,assertion:r[n]},r[n]=e.noop,!1)}function f(e,t){var r=new Error(e?"Debug Failure. "+e:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(r,t||f),r}function m(e,t,r,n){e||(t=t?"False expression: "+t:"False expression.",r&&(t+="\r\nVerbose Debug Information: "+("string"==typeof r?r:r())),f(t,n||m))}function g(e,t,r){null==e&&f(t,r||g)}function _(e,t,r){return g(e,t,r||_),e}function h(e,t,r){for(var n=0,i=e;n<i.length;n++){g(i[n],t,r||h)}}function y(e,t,r){return h(e,t,r||y),e}function v(e){if("function"!=typeof e)return"";if(e.hasOwnProperty("name"))return e.name;var t=Function.prototype.toString.call(e),r=/^function\s+([\w\$]+)\s*\(/.exec(t);return r?r[1]:""}function b(t,r,n){void 0===t&&(t=0);var i=function(t){var r=[];for(var n in t){var i=t[n];"number"==typeof i&&r.push([i,n])}return e.stableSort(r,(function(t,r){return e.compareValues(t[0],r[0])}))}(r);if(0===t)return i.length>0&&0===i[0][0]?i[0][1]:"0";if(n){for(var a="",o=t,s=0,c=i;s<c.length;s++){var l=c[s],u=l[0],d=l[1];if(u>t)break;0!==u&&u&t&&(a=a+(a?"|":"")+d,o&=~u)}if(0===o)return a}else for(var p=0,f=i;p<f.length;p++){var m=f[p];u=m[0],d=m[1];if(u===t)return d}return t.toString()}function k(t){return b(t,e.SyntaxKind,!1)}function x(t){return b(t,e.NodeFlags,!0)}function S(t){return b(t,e.ModifierFlags,!0)}function w(t){return b(t,e.TransformFlags,!0)}function D(t){return b(t,e.EmitFlags,!0)}function E(t){return b(t,e.SymbolFlags,!0)}function T(t){return b(t,e.TypeFlags,!0)}function C(t){return b(t,e.SignatureFlags,!0)}function A(t){return b(t,e.ObjectFlags,!0)}function N(t){return b(t,e.FlowFlags,!0)}r.getAssertionLevel=function(){return a},r.setAssertionLevel=function(t){var n=a;if(a=t,t>n)for(var i=0,o=e.getOwnKeys(u);i<o.length;i++){var s=o[i],c=u[s];void 0!==c&&r[s]!==c.assertion&&t>=c.level&&(r[s]=c,u[s]=void 0)}},r.shouldAssert=d,r.fail=f,r.failBadSyntaxKind=function e(t,r,n){return f((r||"Unexpected node.")+"\r\nNode "+k(t.kind)+" was unexpected.",n||e)},r.assert=m,r.assertEqual=function e(t,r,n,i,a){t!==r&&f("Expected "+t+" === "+r+". "+(n?i?n+" "+i:n:""),a||e)},r.assertLessThan=function e(t,r,n,i){t>=r&&f("Expected "+t+" < "+r+". "+(n||""),i||e)},r.assertLessThanOrEqual=function e(t,r,n){t>r&&f("Expected "+t+" <= "+r,n||e)},r.assertGreaterThanOrEqual=function e(t,r,n){t<r&&f("Expected "+t+" >= "+r,n||e)},r.assertIsDefined=g,r.checkDefined=_,r.assertDefined=_,r.assertEachIsDefined=h,r.checkEachDefined=y,r.assertEachDefined=y,r.assertNever=function t(r,n,i){return void 0===n&&(n="Illegal value:"),f(n+" "+("object"==typeof r&&e.hasProperty(r,"kind")&&e.hasProperty(r,"pos")&&k?"SyntaxKind: "+k(r.kind):JSON.stringify(r)),i||t)},r.assertEachNode=function t(r,n,i,a){p(1,"assertEachNode")&&m(void 0===n||e.every(r,n),i||"Unexpected node.",(function(){return"Node array did not pass test '"+v(n)+"'."}),a||t)},r.assertNode=function e(t,r,n,i){p(1,"assertNode")&&m(void 0!==t&&(void 0===r||r(t)),n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" did not pass test '"+v(r)+"'."}),i||e)},r.assertNotNode=function e(t,r,n,i){p(1,"assertNotNode")&&m(void 0===t||void 0===r||!r(t),n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" should not have passed test '"+v(r)+"'."}),i||e)},r.assertOptionalNode=function e(t,r,n,i){p(1,"assertOptionalNode")&&m(void 0===r||void 0===t||r(t),n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" did not pass test '"+v(r)+"'."}),i||e)},r.assertOptionalToken=function e(t,r,n,i){p(1,"assertOptionalToken")&&m(void 0===r||void 0===t||t.kind===r,n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" was not a '"+k(r)+"' token."}),i||e)},r.assertMissingNode=function e(t,r,n){p(1,"assertMissingNode")&&m(void 0===t,r||"Unexpected node.",(function(){return"Node "+k(t.kind)+" was unexpected'."}),n||e)},r.getFunctionName=v,r.formatSymbol=function(t){return"{ name: "+e.unescapeLeadingUnderscores(t.escapedName)+"; flags: "+E(t.flags)+"; declarations: "+e.map(t.declarations,(function(e){return k(e.kind)}))+" }"},r.formatEnum=b,r.formatSyntaxKind=k,r.formatNodeFlags=x,r.formatModifierFlags=S,r.formatTransformFlags=w,r.formatEmitFlags=D,r.formatSymbolFlags=E,r.formatTypeFlags=T,r.formatSignatureFlags=C,r.formatObjectFlags=A,r.formatFlowFlags=N;var P,I,F,O=!1;function R(e){return function(){if(j(),!P)throw new Error("Debugging helpers could not be loaded.");return P}().formatControlFlowGraph(e)}function M(t){"__debugFlowFlags"in t||Object.defineProperties(t,{__tsDebuggerDisplay:{value:function(){var e=2&this.flags?"FlowStart":4&this.flags?"FlowBranchLabel":8&this.flags?"FlowLoopLabel":16&this.flags?"FlowAssignment":32&this.flags?"FlowTrueCondition":64&this.flags?"FlowFalseCondition":128&this.flags?"FlowSwitchClause":256&this.flags?"FlowArrayMutation":512&this.flags?"FlowCall":1024&this.flags?"FlowReduceLabel":1&this.flags?"FlowUnreachable":"UnknownFlow",t=-2048&this.flags;return e+(t?" ("+N(t)+")":"")}},__debugFlowFlags:{get:function(){return b(this.flags,e.FlowFlags,!0)}},__debugToString:{value:function(){return R(this)}}})}function L(e){"__tsDebuggerDisplay"in e||Object.defineProperties(e,{__tsDebuggerDisplay:{value:function(e){return"NodeArray "+(e=String(e).replace(/(?:,[\s\w\d_]+:[^,]+)+\]$/,"]"))}}})}function j(){if(!O){var t,r;Object.defineProperties(e.objectAllocator.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value:function(){var t=33554432&this.flags?"TransientSymbol":"Symbol",r=-33554433&this.flags;return t+" '"+e.symbolName(this)+"'"+(r?" ("+E(r)+")":"")}},__debugFlags:{get:function(){return E(this.flags)}}}),Object.defineProperties(e.objectAllocator.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value:function(){var t=98304&this.flags?"NullableType":384&this.flags?"LiteralType "+JSON.stringify(this.value):2048&this.flags?"LiteralType "+(this.value.negative?"-":"")+this.value.base10Value+"n":8192&this.flags?"UniqueESSymbolType":32&this.flags?"EnumType":67359327&this.flags?"IntrinsicType "+this.intrinsicName:1048576&this.flags?"UnionType":2097152&this.flags?"IntersectionType":4194304&this.flags?"IndexType":8388608&this.flags?"IndexedAccessType":16777216&this.flags?"ConditionalType":33554432&this.flags?"SubstitutionType":262144&this.flags?"TypeParameter":524288&this.flags?3&this.objectFlags?"InterfaceType":4&this.objectFlags?"TypeReference":8&this.objectFlags?"TupleType":16&this.objectFlags?"AnonymousType":32&this.objectFlags?"MappedType":2048&this.objectFlags?"ReverseMappedType":256&this.objectFlags?"EvolvingArrayType":"ObjectType":"Type",r=524288&this.flags?-2368&this.objectFlags:0;return t+(this.symbol?" '"+e.symbolName(this.symbol)+"'":"")+(r?" ("+A(r)+")":"")}},__debugFlags:{get:function(){return T(this.flags)}},__debugObjectFlags:{get:function(){return 524288&this.flags?A(this.objectFlags):""}},__debugTypeToString:{value:function(){var e=(void 0===t&&"function"==typeof WeakMap&&(t=new WeakMap),t),r=null==e?void 0:e.get(this);return void 0===r&&(r=this.checker.typeToString(this),null==e||e.set(this,r)),r}}}),Object.defineProperties(e.objectAllocator.getSignatureConstructor().prototype,{__debugFlags:{get:function(){return C(this.flags)}},__debugSignatureToString:{value:function(){var e;return null===(e=this.checker)||void 0===e?void 0:e.signatureToString(this)}}});for(var n=0,i=[e.objectAllocator.getNodeConstructor(),e.objectAllocator.getIdentifierConstructor(),e.objectAllocator.getTokenConstructor(),e.objectAllocator.getSourceFileConstructor()];n<i.length;n++){var a=i[n];a.prototype.hasOwnProperty("__debugKind")||Object.defineProperties(a.prototype,{__tsDebuggerDisplay:{value:function(){return(e.isGeneratedIdentifier(this)?"GeneratedIdentifier":e.isIdentifier(this)?"Identifier '"+e.idText(this)+"'":e.isPrivateIdentifier(this)?"PrivateIdentifier '"+e.idText(this)+"'":e.isStringLiteral(this)?"StringLiteral "+JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"..."):e.isNumericLiteral(this)?"NumericLiteral "+this.text:e.isBigIntLiteral(this)?"BigIntLiteral "+this.text+"n":e.isTypeParameterDeclaration(this)?"TypeParameterDeclaration":e.isParameter(this)?"ParameterDeclaration":e.isConstructorDeclaration(this)?"ConstructorDeclaration":e.isGetAccessorDeclaration(this)?"GetAccessorDeclaration":e.isSetAccessorDeclaration(this)?"SetAccessorDeclaration":e.isCallSignatureDeclaration(this)?"CallSignatureDeclaration":e.isConstructSignatureDeclaration(this)?"ConstructSignatureDeclaration":e.isIndexSignatureDeclaration(this)?"IndexSignatureDeclaration":e.isTypePredicateNode(this)?"TypePredicateNode":e.isTypeReferenceNode(this)?"TypeReferenceNode":e.isFunctionTypeNode(this)?"FunctionTypeNode":e.isConstructorTypeNode(this)?"ConstructorTypeNode":e.isTypeQueryNode(this)?"TypeQueryNode":e.isTypeLiteralNode(this)?"TypeLiteralNode":e.isArrayTypeNode(this)?"ArrayTypeNode":e.isTupleTypeNode(this)?"TupleTypeNode":e.isOptionalTypeNode(this)?"OptionalTypeNode":e.isRestTypeNode(this)?"RestTypeNode":e.isUnionTypeNode(this)?"UnionTypeNode":e.isIntersectionTypeNode(this)?"IntersectionTypeNode":e.isConditionalTypeNode(this)?"ConditionalTypeNode":e.isInferTypeNode(this)?"InferTypeNode":e.isParenthesizedTypeNode(this)?"ParenthesizedTypeNode":e.isThisTypeNode(this)?"ThisTypeNode":e.isTypeOperatorNode(this)?"TypeOperatorNode":e.isIndexedAccessTypeNode(this)?"IndexedAccessTypeNode":e.isMappedTypeNode(this)?"MappedTypeNode":e.isLiteralTypeNode(this)?"LiteralTypeNode":e.isNamedTupleMember(this)?"NamedTupleMember":e.isImportTypeNode(this)?"ImportTypeNode":k(this.kind))+(this.flags?" ("+x(this.flags)+")":"")}},__debugKind:{get:function(){return k(this.kind)}},__debugNodeFlags:{get:function(){return x(this.flags)}},__debugModifierFlags:{get:function(){return S(e.getEffectiveModifierFlagsNoCache(this))}},__debugTransformFlags:{get:function(){return w(this.transformFlags)}},__debugIsParseTreeNode:{get:function(){return e.isParseTreeNode(this)}},__debugEmitFlags:{get:function(){return D(e.getEmitFlags(this))}},__debugGetText:{value:function(t){if(e.nodeIsSynthesized(this))return"";var n=(void 0===r&&"function"==typeof WeakMap&&(r=new WeakMap),r),i=null==n?void 0:n.get(this);if(void 0===i){var a=e.getParseTreeNode(this),o=a&&e.getSourceFileOfNode(a);i=o?e.getSourceTextOfNodeFromSourceFile(o,a,t):"",null==n||n.set(this,i)}return i}}})}try{if(e.sys&&e.sys.require){var o=e.getDirectoryPath(e.resolvePath(e.sys.getExecutingFilePath())),s=e.sys.require(o,"./compiler-debug");s.error||(s.module.init(e),P=s.module)}}catch(e){}O=!0}}function B(t,r,n,i,a){var o=r?"DeprecationError: ":"DeprecationWarning: ";return o+="'"+t+"' ",o+=i?"has been deprecated since v"+i:"is deprecated",o+=r?" and can no longer be used.":n?" and will no longer be usable after v"+n+".":".",o+=a?" "+e.formatStringFromArgs(a,[t],0):""}function z(t,r){var n,i;void 0===r&&(r={});var a="string"==typeof r.typeScriptVersion?new e.Version(r.typeScriptVersion):null!==(n=r.typeScriptVersion)&&void 0!==n?n:o(),s="string"==typeof r.errorAfter?new e.Version(r.errorAfter):r.errorAfter,c="string"==typeof r.warnAfter?new e.Version(r.warnAfter):r.warnAfter,u="string"==typeof r.since?new e.Version(r.since):null!==(i=r.since)&&void 0!==i?i:c,d=r.error||s&&a.compareTo(s)<=0,p=!c||a.compareTo(c)>=0;return d?function(e,t,r,n){var i=B(e,!0,t,r,n);return function(){throw new TypeError(i)}}(t,s,u,r.message):p?function(e,t,r,n){var i=!1;return function(){i||(l.warn(B(e,!1,t,r,n)),i=!0)}}(t,s,u,r.message):e.noop}r.printControlFlowGraph=function(e){return console.log(R(e))},r.formatControlFlowGraph=R,r.attachFlowNodeDebugInfo=function(e){O&&("function"==typeof Object.setPrototypeOf?(I||M(I=Object.create(Object.prototype)),Object.setPrototypeOf(e,I)):M(e))},r.attachNodeArrayDebugInfo=function(e){O&&("function"==typeof Object.setPrototypeOf?(F||L(F=Object.create(Array.prototype)),Object.setPrototypeOf(e,F)):L(e))},r.enableDebugInfo=j,r.deprecate=function(e,t){return function(e,t){return function(){return e(),t.apply(this,arguments)}}(z(v(e),t),e)}}(e.Debug||(e.Debug={}))}(d||(d={})),function(e){var t=/^(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,r=/^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)(?:\.(?:0|[1-9]\d*|[a-z-][a-z0-9-]*))*$/i,n=/^[a-z0-9-]+(?:\.[a-z0-9-]+)*$/i,i=/^(0|[1-9]\d*)$/,a=function(){function t(t,i,a,s,c){if(void 0===i&&(i=0),void 0===a&&(a=0),void 0===s&&(s=""),void 0===c&&(c=""),"string"==typeof t){var l=e.Debug.checkDefined(o(t),"Invalid version");t=l.major,i=l.minor,a=l.patch,s=l.prerelease,c=l.build}e.Debug.assert(t>=0,"Invalid argument: major"),e.Debug.assert(i>=0,"Invalid argument: minor"),e.Debug.assert(a>=0,"Invalid argument: patch"),e.Debug.assert(!s||r.test(s),"Invalid argument: prerelease"),e.Debug.assert(!c||n.test(c),"Invalid argument: build"),this.major=t,this.minor=i,this.patch=a,this.prerelease=s?s.split("."):e.emptyArray,this.build=c?c.split("."):e.emptyArray}return t.tryParse=function(e){var r=o(e);if(r)return new t(r.major,r.minor,r.patch,r.prerelease,r.build)},t.prototype.compareTo=function(t){return this===t?0:void 0===t?1:e.compareValues(this.major,t.major)||e.compareValues(this.minor,t.minor)||e.compareValues(this.patch,t.patch)||function(t,r){if(t===r)return 0;if(0===t.length)return 0===r.length?0:1;if(0===r.length)return-1;for(var n=Math.min(t.length,r.length),a=0;a<n;a++){var o=t[a],s=r[a];if(o!==s){var c=i.test(o),l=i.test(s);if(c||l){if(c!==l)return c?-1:1;if(u=e.compareValues(+o,+s))return u}else{var u;if(u=e.compareStringsCaseSensitive(o,s))return u}}}return e.compareValues(t.length,r.length)}(this.prerelease,t.prerelease)},t.prototype.increment=function(r){switch(r){case"major":return new t(this.major+1,0,0);case"minor":return new t(this.major,this.minor+1,0);case"patch":return new t(this.major,this.minor,this.patch+1);default:return e.Debug.assertNever(r)}},t.prototype.toString=function(){var t=this.major+"."+this.minor+"."+this.patch;return e.some(this.prerelease)&&(t+="-"+this.prerelease.join(".")),e.some(this.build)&&(t+="+"+this.build.join(".")),t},t.zero=new t(0,0,0),t}();function o(e){var i=t.exec(e);if(i){var a=i[1],o=i[2],s=void 0===o?"0":o,c=i[3],l=void 0===c?"0":c,u=i[4],d=void 0===u?"":u,p=i[5],f=void 0===p?"":p;if((!d||r.test(d))&&(!f||n.test(f)))return{major:parseInt(a,10),minor:parseInt(s,10),patch:parseInt(l,10),prerelease:d,build:f}}}e.Version=a;var s=function(){function t(t){this._alternatives=t?e.Debug.checkDefined(f(t),"Invalid range spec."):e.emptyArray}return t.tryParse=function(e){var r=f(e);if(r){var n=new t("");return n._alternatives=r,n}},t.prototype.test=function(e){return"string"==typeof e&&(e=new a(e)),function(e,t){if(0===t.length)return!0;for(var r=0,n=t;r<n.length;r++){if(v(e,n[r]))return!0}return!1}(e,this._alternatives)},t.prototype.toString=function(){return t=this._alternatives,e.map(t,k).join(" || ")||"*";var t},t}();e.VersionRange=s;var c=/\s*\|\|\s*/g,l=/\s+/g,u=/^([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,d=/^\s*([a-z0-9-+.*]+)\s+-\s+([a-z0-9-+.*]+)\s*$/i,p=/^\s*(~|\^|<|<=|>|>=|=)?\s*([a-z0-9-+.*]+)$/i;function f(e){for(var t=[],r=0,n=e.trim().split(c);r<n.length;r++){var i=n[r];if(i){var a=[],o=d.exec(i);if(o){if(!g(o[1],o[2],a))return}else for(var s=0,u=i.split(l);s<u.length;s++){var f=u[s],m=p.exec(f);if(!m||!_(m[1],m[2],a))return}t.push(a)}}return t}function m(e){var t=u.exec(e);if(t){var r=t[1],n=t[2],i=void 0===n?"*":n,o=t[3],s=void 0===o?"*":o,c=t[4],l=t[5];return{version:new a(h(r)?0:parseInt(r,10),h(r)||h(i)?0:parseInt(i,10),h(r)||h(i)||h(s)?0:parseInt(s,10),c,l),major:r,minor:i,patch:s}}}function g(e,t,r){var n=m(e);if(!n)return!1;var i=m(t);return!!i&&(h(n.major)||r.push(y(">=",n.version)),h(i.major)||r.push(h(i.minor)?y("<",i.version.increment("major")):h(i.patch)?y("<",i.version.increment("minor")):y("<=",i.version)),!0)}function _(e,t,r){var n=m(t);if(!n)return!1;var i=n.version,o=n.major,s=n.minor,c=n.patch;if(h(o))"<"!==e&&">"!==e||r.push(y("<",a.zero));else switch(e){case"~":r.push(y(">=",i)),r.push(y("<",i.increment(h(s)?"major":"minor")));break;case"^":r.push(y(">=",i)),r.push(y("<",i.increment(i.major>0||h(s)?"major":i.minor>0||h(c)?"minor":"patch")));break;case"<":case">=":r.push(y(e,i));break;case"<=":case">":r.push(h(s)?y("<="===e?"<":">=",i.increment("major")):h(c)?y("<="===e?"<":">=",i.increment("minor")):y(e,i));break;case"=":case void 0:h(s)||h(c)?(r.push(y(">=",i)),r.push(y("<",i.increment(h(s)?"major":"minor")))):r.push(y("=",i));break;default:return!1}return!0}function h(e){return"*"===e||"x"===e||"X"===e}function y(e,t){return{operator:e,operand:t}}function v(e,t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(!b(e,i.operator,i.operand))return!1}return!0}function b(t,r,n){var i=t.compareTo(n);switch(r){case"<":return i<0;case"<=":return i<=0;case">":return i>0;case">=":return i>=0;case"=":return 0===i;default:return e.Debug.assertNever(r)}}function k(t){return e.map(t,x).join(" ")}function x(e){return""+e.operator+e.operand}}(d||(d={})),function(e){function t(e,t){return"object"==typeof e&&"number"==typeof e.timeOrigin&&"function"==typeof e.mark&&"function"==typeof e.measure&&"function"==typeof e.now&&"function"==typeof t}var n=function(){if("object"==typeof performance&&"function"==typeof PerformanceObserver&&t(performance,PerformanceObserver))return{shouldWriteNativeEvents:!0,performance,PerformanceObserver}}()||function(){if("undefined"!=typeof process&&process.nextTick&&!process.browser)try{var n,i=r(82987),a=i.performance,o=i.PerformanceObserver;if(t(a,o)){n=a;var s=new e.Version(process.versions.node);return new e.VersionRange("<12.16.3 || 13 <13.13").test(s)&&(n={get timeOrigin(){return a.timeOrigin},now:function(){return a.now()},mark:function(e){return a.mark(e)},measure:function(e,t,r){void 0===t&&(t="nodeStart"),void 0===r&&(r="__performance.measure-fix__",a.mark(r)),a.measure(e,t,r),"__performance.measure-fix__"===r&&a.clearMarks("__performance.measure-fix__")}}),{shouldWriteNativeEvents:!1,performance:n,PerformanceObserver:o}}}catch(e){}}(),i=null==n?void 0:n.performance;e.tryGetNativePerformanceHooks=function(){return n},e.timestamp=i?function(){return i.now()}:Date.now?Date.now:function(){return+new Date}}(d||(d={})),function(e){!function(t){var r,n;function i(t,r,n){var i=0;return{enter:function(){1==++i&&u(r)},exit:function(){0==--i?(u(n),d(t,r,n)):i<0&&e.Debug.fail("enter/exit count does not match.")}}}t.createTimerIf=function(e,r,n,a){return e?i(r,n,a):t.nullTimer},t.createTimer=i,t.nullTimer={enter:e.noop,exit:e.noop};var a=!1,o=e.timestamp(),s=new e.Map,c=new e.Map,l=new e.Map;function u(t){var r;if(a){var i=null!==(r=c.get(t))&&void 0!==r?r:0;c.set(t,i+1),s.set(t,e.timestamp()),null==n||n.mark(t)}}function d(t,r,i){var c,u;if(a){var d=null!==(c=void 0!==i?s.get(i):void 0)&&void 0!==c?c:e.timestamp(),p=null!==(u=void 0!==r?s.get(r):void 0)&&void 0!==u?u:o,f=l.get(t)||0;l.set(t,f+(d-p)),null==n||n.measure(t,r,i)}}t.mark=u,t.measure=d,t.getCount=function(e){return c.get(e)||0},t.getDuration=function(e){return l.get(e)||0},t.forEachMeasure=function(e){l.forEach((function(t,r){return e(r,t)}))},t.isEnabled=function(){return a},t.enable=function(t){var i;return void 0===t&&(t=e.sys),a||(a=!0,r||(r=e.tryGetNativePerformanceHooks()),r&&(o=r.performance.timeOrigin,(r.shouldWriteNativeEvents||(null===(i=null==t?void 0:t.cpuProfilingEnabled)||void 0===i?void 0:i.call(t))||(null==t?void 0:t.debugMode))&&(n=r.performance))),!0},t.disable=function(){a&&(s.clear(),c.clear(),l.clear(),n=void 0,a=!1)}}(e.performance||(e.performance={}))}(d||(d={})),function(e){var t,n,i={logEvent:e.noop,logErrEvent:e.noop,logPerfEvent:e.noop,logInfoEvent:e.noop,logStartCommand:e.noop,logStopCommand:e.noop,logStartUpdateProgram:e.noop,logStopUpdateProgram:e.noop,logStartUpdateGraph:e.noop,logStopUpdateGraph:e.noop,logStartResolveModule:e.noop,logStopResolveModule:e.noop,logStartParseSourceFile:e.noop,logStopParseSourceFile:e.noop,logStartReadFile:e.noop,logStopReadFile:e.noop,logStartBindFile:e.noop,logStopBindFile:e.noop,logStartScheduledOperation:e.noop,logStopScheduledOperation:e.noop};try{var a=null!==(t=process.env.TS_ETW_MODULE_PATH)&&void 0!==t?t:"./node_modules/@microsoft/typescript-etw";n=r(89387)(a)}catch(e){n=void 0}e.perfLogger=n&&n.logEvent?n:i}(d||(d={})),d||(d={}),function(e){!function(t){var n;!function(e){e[e.Project=0]="Project",e[e.Build=1]="Build",e[e.Server=2]="Server"}(t.Mode||(t.Mode={}));var i,o,s=0,c=0,l=[];t.startTracing=function(u,d,p){if(e.Debug.assert(!e.tracing,"Tracing already started"),void 0===n)try{n=r(79896)}catch(e){throw new Error("tracing requires having fs\n(original error: "+(e.message||e)+")")}i=u,void 0===o&&(o=e.combinePaths(d,"legend.json")),n.existsSync(d)||n.mkdirSync(d,{recursive:!0});var f=1===i?"."+process.pid+"-"+ ++s:2===i?"."+process.pid:"",m=e.combinePaths(d,"trace"+f+".json"),g=e.combinePaths(d,"types"+f+".json");l.push({configFilePath:p,tracePath:m,typesPath:g}),c=n.openSync(m,"w"),e.tracing=t;var _={cat:"__metadata",ph:"M",ts:1e3*e.timestamp(),pid:1,tid:1};n.writeSync(c,"[\n"+[a({name:"process_name",args:{name:"tsc"}},_),a({name:"thread_name",args:{name:"Main"}},_),a(a({name:"TracingStartedInBrowser"},_),{cat:"disabled-by-default-devtools.timeline"})].map((function(e){return JSON.stringify(e)})).join(",\n"))},t.stopTracing=function(t){e.Debug.assert(e.tracing,"Tracing is not in progress"),e.Debug.assert(!!t==(2!==i)),n.writeSync(c,"\n]\n"),n.closeSync(c),e.tracing=void 0,t?function(t){var r,i,o,s,c,u,d,p,f,g,_,h,y,v,b,k;e.performance.mark("beginDumpTypes");var x=l[l.length-1].typesPath,S=n.openSync(x,"w"),w=new e.Map;n.writeSync(S,"[");for(var D=t.length,E=0;E<D;E++){var T=t[E],C=T.objectFlags,A=null!==(r=T.aliasSymbol)&&void 0!==r?r:T.symbol,N=null===(i=null==A?void 0:A.declarations)||void 0===i?void 0:i[0],P=N&&e.getSourceFileOfNode(N),I=void 0;if(16&C|2944&T.flags)try{I=null===(o=T.checker)||void 0===o?void 0:o.typeToString(T)}catch(e){I=void 0}var F={};if(8388608&T.flags){var O=T;F={indexedAccessObjectType:null===(s=O.objectType)||void 0===s?void 0:s.id,indexedAccessIndexType:null===(c=O.indexType)||void 0===c?void 0:c.id}}var R={};if(4&C){var M=T;R={instantiatedType:null===(u=M.target)||void 0===u?void 0:u.id,typeArguments:null===(d=M.resolvedTypeArguments)||void 0===d?void 0:d.map((function(e){return e.id}))}}var L={};if(16777216&T.flags){var j=T;L={conditionalCheckType:null===(p=j.checkType)||void 0===p?void 0:p.id,conditionalExtendsType:null===(f=j.extendsType)||void 0===f?void 0:f.id,conditionalTrueType:null!==(_=null===(g=j.resolvedTrueType)||void 0===g?void 0:g.id)&&void 0!==_?_:-1,conditionalFalseType:null!==(y=null===(h=j.resolvedFalseType)||void 0===h?void 0:h.id)&&void 0!==y?y:-1}}var B=void 0,z=T.checker.getRecursionIdentity(T);z&&((B=w.get(z))||(B=w.size,w.set(z,B)));var U=a(a(a(a({id:T.id,intrinsicName:T.intrinsicName,symbolName:(null==A?void 0:A.escapedName)&&e.unescapeLeadingUnderscores(A.escapedName),recursionId:B,unionTypes:1048576&T.flags?null===(v=T.types)||void 0===v?void 0:v.map((function(e){return e.id})):void 0,intersectionTypes:2097152&T.flags?T.types.map((function(e){return e.id})):void 0,aliasTypeArguments:null===(b=T.aliasTypeArguments)||void 0===b?void 0:b.map((function(e){return e.id})),keyofType:4194304&T.flags?null===(k=T.type)||void 0===k?void 0:k.id:void 0},F),R),L),{firstDeclaration:N&&{path:P.path,start:m(e.getLineAndCharacterOfPosition(P,N.pos)),end:m(e.getLineAndCharacterOfPosition(e.getSourceFileOfNode(N),N.end))},flags:e.Debug.formatTypeFlags(T.flags).split("|"),display:I});n.writeSync(S,JSON.stringify(U)),E<D-1&&n.writeSync(S,",\n")}n.writeSync(S,"]\n"),n.closeSync(S),e.performance.mark("endDumpTypes"),e.performance.measure("Dump types","beginDumpTypes","endDumpTypes")}(t):l[l.length-1].typesPath=void 0},function(e){e.Parse="parse",e.Program="program",e.Bind="bind",e.Check="check",e.CheckTypes="checkTypes",e.Emit="emit",e.Session="session"}(t.Phase||(t.Phase={})),t.instant=function(e,t,r){f("I",e,t,r,'"s":"g"')};var u=[];t.push=function(t,r,n,i){void 0===i&&(i=!1),i&&f("B",t,r,n),u.push({phase:t,name:r,args:n,time:1e3*e.timestamp(),separateBeginAndEnd:i})},t.pop=function(){e.Debug.assert(u.length>0),p(u.length-1,1e3*e.timestamp()),u.length--},t.popAll=function(){for(var t=1e3*e.timestamp(),r=u.length-1;r>=0;r--)p(r,t);u.length=0};var d=1e4;function p(e,t){var r=u[e],n=r.phase,i=r.name,a=r.args,o=r.time;r.separateBeginAndEnd?f("E",n,i,a,void 0,t):d-o%d<=t-o&&f("X",n,i,a,'"dur":'+(t-o),o)}function f(t,r,a,o,s,l){void 0===l&&(l=1e3*e.timestamp()),2===i&&"checkTypes"===r||(e.performance.mark("beginTracing"),n.writeSync(c,',\n{"pid":1,"tid":1,"ph":"'+t+'","cat":"'+r+'","ts":'+l+',"name":"'+a+'"'),s&&n.writeSync(c,","+s),o&&n.writeSync(c,',"args":'+JSON.stringify(o)),n.writeSync(c,"}"),e.performance.mark("endTracing"),e.performance.measure("Tracing","beginTracing","endTracing"))}function m(e){return{line:e.line+1,character:e.character+1}}t.dumpLegend=function(){o&&n.writeFileSync(o,JSON.stringify(l))}}(e.tracingEnabled||(e.tracingEnabled={}))}(d||(d={})),function(e){e.startTracing=e.tracingEnabled.startTracing}(d||(d={})),function(e){!function(e){e[e.Unknown=0]="Unknown",e[e.EndOfFileToken=1]="EndOfFileToken",e[e.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",e[e.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",e[e.NewLineTrivia=4]="NewLineTrivia",e[e.WhitespaceTrivia=5]="WhitespaceTrivia",e[e.ShebangTrivia=6]="ShebangTrivia",e[e.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",e[e.NumericLiteral=8]="NumericLiteral",e[e.BigIntLiteral=9]="BigIntLiteral",e[e.StringLiteral=10]="StringLiteral",e[e.JsxText=11]="JsxText",e[e.JsxTextAllWhiteSpaces=12]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=13]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=14]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=15]="TemplateHead",e[e.TemplateMiddle=16]="TemplateMiddle",e[e.TemplateTail=17]="TemplateTail",e[e.OpenBraceToken=18]="OpenBraceToken",e[e.CloseBraceToken=19]="CloseBraceToken",e[e.OpenParenToken=20]="OpenParenToken",e[e.CloseParenToken=21]="CloseParenToken",e[e.OpenBracketToken=22]="OpenBracketToken",e[e.CloseBracketToken=23]="CloseBracketToken",e[e.DotToken=24]="DotToken",e[e.DotDotDotToken=25]="DotDotDotToken",e[e.SemicolonToken=26]="SemicolonToken",e[e.CommaToken=27]="CommaToken",e[e.QuestionDotToken=28]="QuestionDotToken",e[e.LessThanToken=29]="LessThanToken",e[e.LessThanSlashToken=30]="LessThanSlashToken",e[e.GreaterThanToken=31]="GreaterThanToken",e[e.LessThanEqualsToken=32]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=33]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=34]="EqualsEqualsToken",e[e.ExclamationEqualsToken=35]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=36]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=37]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=38]="EqualsGreaterThanToken",e[e.PlusToken=39]="PlusToken",e[e.MinusToken=40]="MinusToken",e[e.AsteriskToken=41]="AsteriskToken",e[e.AsteriskAsteriskToken=42]="AsteriskAsteriskToken",e[e.SlashToken=43]="SlashToken",e[e.PercentToken=44]="PercentToken",e[e.PlusPlusToken=45]="PlusPlusToken",e[e.MinusMinusToken=46]="MinusMinusToken",e[e.LessThanLessThanToken=47]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=48]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=49]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=50]="AmpersandToken",e[e.BarToken=51]="BarToken",e[e.CaretToken=52]="CaretToken",e[e.ExclamationToken=53]="ExclamationToken",e[e.TildeToken=54]="TildeToken",e[e.AmpersandAmpersandToken=55]="AmpersandAmpersandToken",e[e.BarBarToken=56]="BarBarToken",e[e.QuestionToken=57]="QuestionToken",e[e.ColonToken=58]="ColonToken",e[e.AtToken=59]="AtToken",e[e.QuestionQuestionToken=60]="QuestionQuestionToken",e[e.BacktickToken=61]="BacktickToken",e[e.EqualsToken=62]="EqualsToken",e[e.PlusEqualsToken=63]="PlusEqualsToken",e[e.MinusEqualsToken=64]="MinusEqualsToken",e[e.AsteriskEqualsToken=65]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=66]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=67]="SlashEqualsToken",e[e.PercentEqualsToken=68]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=69]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=70]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=71]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=72]="AmpersandEqualsToken",e[e.BarEqualsToken=73]="BarEqualsToken",e[e.BarBarEqualsToken=74]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=75]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=76]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=77]="CaretEqualsToken",e[e.Identifier=78]="Identifier",e[e.PrivateIdentifier=79]="PrivateIdentifier",e[e.BreakKeyword=80]="BreakKeyword",e[e.CaseKeyword=81]="CaseKeyword",e[e.CatchKeyword=82]="CatchKeyword",e[e.ClassKeyword=83]="ClassKeyword",e[e.StructKeyword=84]="StructKeyword",e[e.ConstKeyword=85]="ConstKeyword",e[e.ContinueKeyword=86]="ContinueKeyword",e[e.DebuggerKeyword=87]="DebuggerKeyword",e[e.DefaultKeyword=88]="DefaultKeyword",e[e.DeleteKeyword=89]="DeleteKeyword",e[e.DoKeyword=90]="DoKeyword",e[e.ElseKeyword=91]="ElseKeyword",e[e.EnumKeyword=92]="EnumKeyword",e[e.ExportKeyword=93]="ExportKeyword",e[e.ExtendsKeyword=94]="ExtendsKeyword",e[e.FalseKeyword=95]="FalseKeyword",e[e.FinallyKeyword=96]="FinallyKeyword",e[e.ForKeyword=97]="ForKeyword",e[e.FunctionKeyword=98]="FunctionKeyword",e[e.IfKeyword=99]="IfKeyword",e[e.ImportKeyword=100]="ImportKeyword",e[e.InKeyword=101]="InKeyword",e[e.InstanceOfKeyword=102]="InstanceOfKeyword",e[e.NewKeyword=103]="NewKeyword",e[e.NullKeyword=104]="NullKeyword",e[e.ReturnKeyword=105]="ReturnKeyword",e[e.SuperKeyword=106]="SuperKeyword",e[e.SwitchKeyword=107]="SwitchKeyword",e[e.ThisKeyword=108]="ThisKeyword",e[e.ThrowKeyword=109]="ThrowKeyword",e[e.TrueKeyword=110]="TrueKeyword",e[e.TryKeyword=111]="TryKeyword",e[e.TypeOfKeyword=112]="TypeOfKeyword",e[e.VarKeyword=113]="VarKeyword",e[e.VoidKeyword=114]="VoidKeyword",e[e.WhileKeyword=115]="WhileKeyword",e[e.WithKeyword=116]="WithKeyword",e[e.ImplementsKeyword=117]="ImplementsKeyword",e[e.InterfaceKeyword=118]="InterfaceKeyword",e[e.LetKeyword=119]="LetKeyword",e[e.PackageKeyword=120]="PackageKeyword",e[e.PrivateKeyword=121]="PrivateKeyword",e[e.ProtectedKeyword=122]="ProtectedKeyword",e[e.PublicKeyword=123]="PublicKeyword",e[e.StaticKeyword=124]="StaticKeyword",e[e.YieldKeyword=125]="YieldKeyword",e[e.AbstractKeyword=126]="AbstractKeyword",e[e.AsKeyword=127]="AsKeyword",e[e.AssertsKeyword=128]="AssertsKeyword",e[e.AnyKeyword=129]="AnyKeyword",e[e.AsyncKeyword=130]="AsyncKeyword",e[e.AwaitKeyword=131]="AwaitKeyword",e[e.BooleanKeyword=132]="BooleanKeyword",e[e.ConstructorKeyword=133]="ConstructorKeyword",e[e.DeclareKeyword=134]="DeclareKeyword",e[e.GetKeyword=135]="GetKeyword",e[e.InferKeyword=136]="InferKeyword",e[e.IntrinsicKeyword=137]="IntrinsicKeyword",e[e.IsKeyword=138]="IsKeyword",e[e.KeyOfKeyword=139]="KeyOfKeyword",e[e.ModuleKeyword=140]="ModuleKeyword",e[e.NamespaceKeyword=141]="NamespaceKeyword",e[e.NeverKeyword=142]="NeverKeyword",e[e.ReadonlyKeyword=143]="ReadonlyKeyword",e[e.RequireKeyword=144]="RequireKeyword",e[e.NumberKeyword=145]="NumberKeyword",e[e.ObjectKeyword=146]="ObjectKeyword",e[e.SetKeyword=147]="SetKeyword",e[e.StringKeyword=148]="StringKeyword",e[e.SymbolKeyword=149]="SymbolKeyword",e[e.TypeKeyword=150]="TypeKeyword",e[e.UndefinedKeyword=151]="UndefinedKeyword",e[e.UniqueKeyword=152]="UniqueKeyword",e[e.UnknownKeyword=153]="UnknownKeyword",e[e.FromKeyword=154]="FromKeyword",e[e.GlobalKeyword=155]="GlobalKeyword",e[e.BigIntKeyword=156]="BigIntKeyword",e[e.OfKeyword=157]="OfKeyword",e[e.QualifiedName=158]="QualifiedName",e[e.ComputedPropertyName=159]="ComputedPropertyName",e[e.TypeParameter=160]="TypeParameter",e[e.Parameter=161]="Parameter",e[e.Decorator=162]="Decorator",e[e.PropertySignature=163]="PropertySignature",e[e.PropertyDeclaration=164]="PropertyDeclaration",e[e.MethodSignature=165]="MethodSignature",e[e.MethodDeclaration=166]="MethodDeclaration",e[e.Constructor=167]="Constructor",e[e.GetAccessor=168]="GetAccessor",e[e.SetAccessor=169]="SetAccessor",e[e.CallSignature=170]="CallSignature",e[e.ConstructSignature=171]="ConstructSignature",e[e.IndexSignature=172]="IndexSignature",e[e.TypePredicate=173]="TypePredicate",e[e.TypeReference=174]="TypeReference",e[e.FunctionType=175]="FunctionType",e[e.ConstructorType=176]="ConstructorType",e[e.TypeQuery=177]="TypeQuery",e[e.TypeLiteral=178]="TypeLiteral",e[e.ArrayType=179]="ArrayType",e[e.TupleType=180]="TupleType",e[e.OptionalType=181]="OptionalType",e[e.RestType=182]="RestType",e[e.UnionType=183]="UnionType",e[e.IntersectionType=184]="IntersectionType",e[e.ConditionalType=185]="ConditionalType",e[e.InferType=186]="InferType",e[e.ParenthesizedType=187]="ParenthesizedType",e[e.ThisType=188]="ThisType",e[e.TypeOperator=189]="TypeOperator",e[e.IndexedAccessType=190]="IndexedAccessType",e[e.MappedType=191]="MappedType",e[e.LiteralType=192]="LiteralType",e[e.NamedTupleMember=193]="NamedTupleMember",e[e.TemplateLiteralType=194]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=195]="TemplateLiteralTypeSpan",e[e.ImportType=196]="ImportType",e[e.ObjectBindingPattern=197]="ObjectBindingPattern",e[e.ArrayBindingPattern=198]="ArrayBindingPattern",e[e.BindingElement=199]="BindingElement",e[e.ArrayLiteralExpression=200]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=201]="ObjectLiteralExpression",e[e.PropertyAccessExpression=202]="PropertyAccessExpression",e[e.ElementAccessExpression=203]="ElementAccessExpression",e[e.CallExpression=204]="CallExpression",e[e.NewExpression=205]="NewExpression",e[e.TaggedTemplateExpression=206]="TaggedTemplateExpression",e[e.TypeAssertionExpression=207]="TypeAssertionExpression",e[e.ParenthesizedExpression=208]="ParenthesizedExpression",e[e.FunctionExpression=209]="FunctionExpression",e[e.ArrowFunction=210]="ArrowFunction",e[e.EtsComponentExpression=211]="EtsComponentExpression",e[e.DeleteExpression=212]="DeleteExpression",e[e.TypeOfExpression=213]="TypeOfExpression",e[e.VoidExpression=214]="VoidExpression",e[e.AwaitExpression=215]="AwaitExpression",e[e.PrefixUnaryExpression=216]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=217]="PostfixUnaryExpression",e[e.BinaryExpression=218]="BinaryExpression",e[e.ConditionalExpression=219]="ConditionalExpression",e[e.TemplateExpression=220]="TemplateExpression",e[e.YieldExpression=221]="YieldExpression",e[e.SpreadElement=222]="SpreadElement",e[e.ClassExpression=223]="ClassExpression",e[e.OmittedExpression=224]="OmittedExpression",e[e.ExpressionWithTypeArguments=225]="ExpressionWithTypeArguments",e[e.AsExpression=226]="AsExpression",e[e.NonNullExpression=227]="NonNullExpression",e[e.MetaProperty=228]="MetaProperty",e[e.SyntheticExpression=229]="SyntheticExpression",e[e.TemplateSpan=230]="TemplateSpan",e[e.SemicolonClassElement=231]="SemicolonClassElement",e[e.Block=232]="Block",e[e.EmptyStatement=233]="EmptyStatement",e[e.VariableStatement=234]="VariableStatement",e[e.ExpressionStatement=235]="ExpressionStatement",e[e.IfStatement=236]="IfStatement",e[e.DoStatement=237]="DoStatement",e[e.WhileStatement=238]="WhileStatement",e[e.ForStatement=239]="ForStatement",e[e.ForInStatement=240]="ForInStatement",e[e.ForOfStatement=241]="ForOfStatement",e[e.ContinueStatement=242]="ContinueStatement",e[e.BreakStatement=243]="BreakStatement",e[e.ReturnStatement=244]="ReturnStatement",e[e.WithStatement=245]="WithStatement",e[e.SwitchStatement=246]="SwitchStatement",e[e.LabeledStatement=247]="LabeledStatement",e[e.ThrowStatement=248]="ThrowStatement",e[e.TryStatement=249]="TryStatement",e[e.DebuggerStatement=250]="DebuggerStatement",e[e.VariableDeclaration=251]="VariableDeclaration",e[e.VariableDeclarationList=252]="VariableDeclarationList",e[e.FunctionDeclaration=253]="FunctionDeclaration",e[e.ClassDeclaration=254]="ClassDeclaration",e[e.StructDeclaration=255]="StructDeclaration",e[e.InterfaceDeclaration=256]="InterfaceDeclaration",e[e.TypeAliasDeclaration=257]="TypeAliasDeclaration",e[e.EnumDeclaration=258]="EnumDeclaration",e[e.ModuleDeclaration=259]="ModuleDeclaration",e[e.ModuleBlock=260]="ModuleBlock",e[e.CaseBlock=261]="CaseBlock",e[e.NamespaceExportDeclaration=262]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=263]="ImportEqualsDeclaration",e[e.ImportDeclaration=264]="ImportDeclaration",e[e.ImportClause=265]="ImportClause",e[e.NamespaceImport=266]="NamespaceImport",e[e.NamedImports=267]="NamedImports",e[e.ImportSpecifier=268]="ImportSpecifier",e[e.ExportAssignment=269]="ExportAssignment",e[e.ExportDeclaration=270]="ExportDeclaration",e[e.NamedExports=271]="NamedExports",e[e.NamespaceExport=272]="NamespaceExport",e[e.ExportSpecifier=273]="ExportSpecifier",e[e.MissingDeclaration=274]="MissingDeclaration",e[e.ExternalModuleReference=275]="ExternalModuleReference",e[e.JsxElement=276]="JsxElement",e[e.JsxSelfClosingElement=277]="JsxSelfClosingElement",e[e.JsxOpeningElement=278]="JsxOpeningElement",e[e.JsxClosingElement=279]="JsxClosingElement",e[e.JsxFragment=280]="JsxFragment",e[e.JsxOpeningFragment=281]="JsxOpeningFragment",e[e.JsxClosingFragment=282]="JsxClosingFragment",e[e.JsxAttribute=283]="JsxAttribute",e[e.JsxAttributes=284]="JsxAttributes",e[e.JsxSpreadAttribute=285]="JsxSpreadAttribute",e[e.JsxExpression=286]="JsxExpression",e[e.CaseClause=287]="CaseClause",e[e.DefaultClause=288]="DefaultClause",e[e.HeritageClause=289]="HeritageClause",e[e.CatchClause=290]="CatchClause",e[e.PropertyAssignment=291]="PropertyAssignment",e[e.ShorthandPropertyAssignment=292]="ShorthandPropertyAssignment",e[e.SpreadAssignment=293]="SpreadAssignment",e[e.EnumMember=294]="EnumMember",e[e.UnparsedPrologue=295]="UnparsedPrologue",e[e.UnparsedPrepend=296]="UnparsedPrepend",e[e.UnparsedText=297]="UnparsedText",e[e.UnparsedInternalText=298]="UnparsedInternalText",e[e.UnparsedSyntheticReference=299]="UnparsedSyntheticReference",e[e.SourceFile=300]="SourceFile",e[e.Bundle=301]="Bundle",e[e.UnparsedSource=302]="UnparsedSource",e[e.InputFiles=303]="InputFiles",e[e.JSDocTypeExpression=304]="JSDocTypeExpression",e[e.JSDocNameReference=305]="JSDocNameReference",e[e.JSDocAllType=306]="JSDocAllType",e[e.JSDocUnknownType=307]="JSDocUnknownType",e[e.JSDocNullableType=308]="JSDocNullableType",e[e.JSDocNonNullableType=309]="JSDocNonNullableType",e[e.JSDocOptionalType=310]="JSDocOptionalType",e[e.JSDocFunctionType=311]="JSDocFunctionType",e[e.JSDocVariadicType=312]="JSDocVariadicType",e[e.JSDocNamepathType=313]="JSDocNamepathType",e[e.JSDocComment=314]="JSDocComment",e[e.JSDocTypeLiteral=315]="JSDocTypeLiteral",e[e.JSDocSignature=316]="JSDocSignature",e[e.JSDocTag=317]="JSDocTag",e[e.JSDocAugmentsTag=318]="JSDocAugmentsTag",e[e.JSDocImplementsTag=319]="JSDocImplementsTag",e[e.JSDocAuthorTag=320]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=321]="JSDocDeprecatedTag",e[e.JSDocClassTag=322]="JSDocClassTag",e[e.JSDocPublicTag=323]="JSDocPublicTag",e[e.JSDocPrivateTag=324]="JSDocPrivateTag",e[e.JSDocProtectedTag=325]="JSDocProtectedTag",e[e.JSDocReadonlyTag=326]="JSDocReadonlyTag",e[e.JSDocCallbackTag=327]="JSDocCallbackTag",e[e.JSDocEnumTag=328]="JSDocEnumTag",e[e.JSDocParameterTag=329]="JSDocParameterTag",e[e.JSDocReturnTag=330]="JSDocReturnTag",e[e.JSDocThisTag=331]="JSDocThisTag",e[e.JSDocTypeTag=332]="JSDocTypeTag",e[e.JSDocTemplateTag=333]="JSDocTemplateTag",e[e.JSDocTypedefTag=334]="JSDocTypedefTag",e[e.JSDocSeeTag=335]="JSDocSeeTag",e[e.JSDocPropertyTag=336]="JSDocPropertyTag",e[e.SyntaxList=337]="SyntaxList",e[e.NotEmittedStatement=338]="NotEmittedStatement",e[e.PartiallyEmittedExpression=339]="PartiallyEmittedExpression",e[e.CommaListExpression=340]="CommaListExpression",e[e.MergeDeclarationMarker=341]="MergeDeclarationMarker",e[e.EndOfDeclarationMarker=342]="EndOfDeclarationMarker",e[e.SyntheticReferenceExpression=343]="SyntheticReferenceExpression",e[e.Count=344]="Count",e[e.FirstAssignment=62]="FirstAssignment",e[e.LastAssignment=77]="LastAssignment",e[e.FirstCompoundAssignment=63]="FirstCompoundAssignment",e[e.LastCompoundAssignment=77]="LastCompoundAssignment",e[e.FirstReservedWord=80]="FirstReservedWord",e[e.LastReservedWord=116]="LastReservedWord",e[e.FirstKeyword=80]="FirstKeyword",e[e.LastKeyword=157]="LastKeyword",e[e.FirstFutureReservedWord=117]="FirstFutureReservedWord",e[e.LastFutureReservedWord=125]="LastFutureReservedWord",e[e.FirstTypeNode=173]="FirstTypeNode",e[e.LastTypeNode=196]="LastTypeNode",e[e.FirstPunctuation=18]="FirstPunctuation",e[e.LastPunctuation=77]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=157]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=8]="FirstLiteralToken",e[e.LastLiteralToken=14]="LastLiteralToken",e[e.FirstTemplateToken=14]="FirstTemplateToken",e[e.LastTemplateToken=17]="LastTemplateToken",e[e.FirstBinaryOperator=29]="FirstBinaryOperator",e[e.LastBinaryOperator=77]="LastBinaryOperator",e[e.FirstStatement=234]="FirstStatement",e[e.LastStatement=250]="LastStatement",e[e.FirstNode=158]="FirstNode",e[e.FirstJSDocNode=304]="FirstJSDocNode",e[e.LastJSDocNode=336]="LastJSDocNode",e[e.FirstJSDocTagNode=317]="FirstJSDocTagNode",e[e.LastJSDocTagNode=336]="LastJSDocTagNode",e[e.FirstContextualKeyword=126]="FirstContextualKeyword",e[e.LastContextualKeyword=157]="LastContextualKeyword"}(e.SyntaxKind||(e.SyntaxKind={})),function(e){e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.NestedNamespace=4]="NestedNamespace",e[e.Synthesized=8]="Synthesized",e[e.Namespace=16]="Namespace",e[e.OptionalChain=32]="OptionalChain",e[e.ExportContext=64]="ExportContext",e[e.ContainsThis=128]="ContainsThis",e[e.HasImplicitReturn=256]="HasImplicitReturn",e[e.HasExplicitReturn=512]="HasExplicitReturn",e[e.GlobalAugmentation=1024]="GlobalAugmentation",e[e.HasAsyncFunctions=2048]="HasAsyncFunctions",e[e.DisallowInContext=4096]="DisallowInContext",e[e.YieldContext=8192]="YieldContext",e[e.DecoratorContext=16384]="DecoratorContext",e[e.AwaitContext=32768]="AwaitContext",e[e.ThisNodeHasError=65536]="ThisNodeHasError",e[e.JavaScriptFile=131072]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=262144]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=524288]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=1048576]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=2097152]="PossiblyContainsImportMeta",e[e.JSDoc=4194304]="JSDoc",e[e.Ambient=8388608]="Ambient",e[e.InWithStatement=16777216]="InWithStatement",e[e.JsonFile=33554432]="JsonFile",e[e.TypeCached=67108864]="TypeCached",e[e.Deprecated=134217728]="Deprecated",e[e.EtsContext=1073741824]="EtsContext",e[e.BlockScoped=3]="BlockScoped",e[e.ReachabilityCheckFlags=768]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=2816]="ReachabilityAndEmitFlags",e[e.ContextFlags=1099100160]="ContextFlags",e[e.TypeExcludesFlags=40960]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=3145728]="PermanentlySetIncrementalFlags"}(e.NodeFlags||(e.NodeFlags={})),function(e){e[e.None=0]="None",e[e.StructContext=2]="StructContext",e[e.EtsExtendComponentsContext=4]="EtsExtendComponentsContext",e[e.EtsStylesComponentsContext=8]="EtsStylesComponentsContext",e[e.EtsBuildContext=16]="EtsBuildContext",e[e.EtsBuilderContext=32]="EtsBuilderContext",e[e.EtsStateStylesContext=64]="EtsStateStylesContext",e[e.EtsComponentsContext=128]="EtsComponentsContext",e[e.EtsNewExpressionContext=256]="EtsNewExpressionContext"}(e.EtsFlags||(e.EtsFlags={})),function(e){e[e.None=0]="None",e[e.Export=1]="Export",e[e.Ambient=2]="Ambient",e[e.Public=4]="Public",e[e.Private=8]="Private",e[e.Protected=16]="Protected",e[e.Static=32]="Static",e[e.Readonly=64]="Readonly",e[e.Abstract=128]="Abstract",e[e.Async=256]="Async",e[e.Default=512]="Default",e[e.Const=2048]="Const",e[e.HasComputedJSDocModifiers=4096]="HasComputedJSDocModifiers",e[e.Deprecated=8192]="Deprecated",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=28]="AccessibilityModifier",e[e.ParameterPropertyModifier=92]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=24]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=2270]="TypeScriptModifier",e[e.ExportDefault=513]="ExportDefault",e[e.All=11263]="All"}(e.ModifierFlags||(e.ModifierFlags={})),function(e){e[e.None=0]="None",e[e.IntrinsicNamedElement=1]="IntrinsicNamedElement",e[e.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",e[e.IntrinsicElement=3]="IntrinsicElement"}(e.JsxFlags||(e.JsxFlags={})),function(e){e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.Reported=4]="Reported",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask"}(e.RelationComparisonResult||(e.RelationComparisonResult={})),function(e){e[e.None=0]="None",e[e.Auto=1]="Auto",e[e.Loop=2]="Loop",e[e.Unique=3]="Unique",e[e.Node=4]="Node",e[e.KindMask=7]="KindMask",e[e.ReservedInNestedScopes=8]="ReservedInNestedScopes",e[e.Optimistic=16]="Optimistic",e[e.FileLevel=32]="FileLevel",e[e.AllowNameSubstitution=64]="AllowNameSubstitution"}(e.GeneratedIdentifierFlags||(e.GeneratedIdentifierFlags={})),function(e){e[e.None=0]="None",e[e.PrecedingLineBreak=1]="PrecedingLineBreak",e[e.PrecedingJSDocComment=2]="PrecedingJSDocComment",e[e.Unterminated=4]="Unterminated",e[e.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",e[e.Scientific=16]="Scientific",e[e.Octal=32]="Octal",e[e.HexSpecifier=64]="HexSpecifier",e[e.BinarySpecifier=128]="BinarySpecifier",e[e.OctalSpecifier=256]="OctalSpecifier",e[e.ContainsSeparator=512]="ContainsSeparator",e[e.UnicodeEscape=1024]="UnicodeEscape",e[e.ContainsInvalidEscape=2048]="ContainsInvalidEscape",e[e.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",e[e.NumericLiteralFlags=1008]="NumericLiteralFlags",e[e.TemplateLiteralLikeFlags=2048]="TemplateLiteralLikeFlags"}(e.TokenFlags||(e.TokenFlags={})),function(e){e[e.Unreachable=1]="Unreachable",e[e.Start=2]="Start",e[e.BranchLabel=4]="BranchLabel",e[e.LoopLabel=8]="LoopLabel",e[e.Assignment=16]="Assignment",e[e.TrueCondition=32]="TrueCondition",e[e.FalseCondition=64]="FalseCondition",e[e.SwitchClause=128]="SwitchClause",e[e.ArrayMutation=256]="ArrayMutation",e[e.Call=512]="Call",e[e.ReduceLabel=1024]="ReduceLabel",e[e.Referenced=2048]="Referenced",e[e.Shared=4096]="Shared",e[e.Label=12]="Label",e[e.Condition=96]="Condition"}(e.FlowFlags||(e.FlowFlags={})),function(e){e[e.ExpectError=0]="ExpectError",e[e.Ignore=1]="Ignore"}(e.CommentDirectiveType||(e.CommentDirectiveType={}));var t,r=function(){};e.OperationCanceledException=r,function(e){e[e.RootFile=0]="RootFile",e[e.SourceFromProjectReference=1]="SourceFromProjectReference",e[e.OutputFromProjectReference=2]="OutputFromProjectReference",e[e.Import=3]="Import",e[e.ReferenceFile=4]="ReferenceFile",e[e.TypeReferenceDirective=5]="TypeReferenceDirective",e[e.LibFile=6]="LibFile",e[e.LibReferenceDirective=7]="LibReferenceDirective",e[e.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile"}(e.FileIncludeKind||(e.FileIncludeKind={})),function(e){e[e.FilePreprocessingReferencedDiagnostic=0]="FilePreprocessingReferencedDiagnostic",e[e.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic"}(e.FilePreprocessingDiagnosticsKind||(e.FilePreprocessingDiagnosticsKind={})),function(e){e[e.Not=0]="Not",e[e.SafeModules=1]="SafeModules",e[e.Completely=2]="Completely"}(e.StructureIsReused||(e.StructureIsReused={})),function(e){e[e.Success=0]="Success",e[e.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",e[e.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",e[e.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",e[e.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",e[e.ProjectReferenceCycle_OutputsSkupped=4]="ProjectReferenceCycle_OutputsSkupped"}(e.ExitStatus||(e.ExitStatus={})),function(e){e[e.None=0]="None",e[e.Literal=1]="Literal",e[e.Subtype=2]="Subtype"}(e.UnionReduction||(e.UnionReduction={})),function(e){e[e.None=0]="None",e[e.Signature=1]="Signature",e[e.NoConstraints=2]="NoConstraints",e[e.Completions=4]="Completions",e[e.SkipBindingPatterns=8]="SkipBindingPatterns"}(e.ContextFlags||(e.ContextFlags={})),function(e){e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.NoUndefinedOptionalParameterType=1073741824]="NoUndefinedOptionalParameterType",e[e.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",e[e.AllowQualifedNameInPlaceOfIdentifier=65536]="AllowQualifedNameInPlaceOfIdentifier",e[e.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",e[e.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",e[e.AllowEmptyTuple=524288]="AllowEmptyTuple",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",e[e.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",e[e.DoNotIncludeSymbolChain=134217728]="DoNotIncludeSymbolChain",e[e.IgnoreErrors=70221824]="IgnoreErrors",e[e.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.InInitialEntityName=16777216]="InInitialEntityName",e[e.InReverseMappedType=33554432]="InReverseMappedType"}(e.NodeBuilderFlags||(e.NodeBuilderFlags={})),function(e){e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AddUndefined=131072]="AddUndefined",e[e.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",e[e.InArrayType=524288]="InArrayType",e[e.InElementType=2097152]="InElementType",e[e.InFirstTypeArgument=4194304]="InFirstTypeArgument",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.WriteOwnNameForAnyLike=0]="WriteOwnNameForAnyLike",e[e.NodeBuilderFlagsMask=814775659]="NodeBuilderFlagsMask"}(e.TypeFormatFlags||(e.TypeFormatFlags={})),function(e){e[e.None=0]="None",e[e.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",e[e.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",e[e.AllowAnyNodeKind=4]="AllowAnyNodeKind",e[e.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",e[e.DoNotIncludeSymbolChain=16]="DoNotIncludeSymbolChain"}(e.SymbolFormatFlags||(e.SymbolFormatFlags={})),function(e){e[e.Accessible=0]="Accessible",e[e.NotAccessible=1]="NotAccessible",e[e.CannotBeNamed=2]="CannotBeNamed"}(e.SymbolAccessibility||(e.SymbolAccessibility={})),function(e){e[e.UnionOrIntersection=0]="UnionOrIntersection",e[e.Spread=1]="Spread"}(e.SyntheticSymbolKind||(e.SyntheticSymbolKind={})),function(e){e[e.This=0]="This",e[e.Identifier=1]="Identifier",e[e.AssertsThis=2]="AssertsThis",e[e.AssertsIdentifier=3]="AssertsIdentifier"}(e.TypePredicateKind||(e.TypePredicateKind={})),function(e){e[e.Unknown=0]="Unknown",e[e.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",e[e.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",e[e.NumberLikeType=3]="NumberLikeType",e[e.BigIntLikeType=4]="BigIntLikeType",e[e.StringLikeType=5]="StringLikeType",e[e.BooleanType=6]="BooleanType",e[e.ArrayLikeType=7]="ArrayLikeType",e[e.ESSymbolType=8]="ESSymbolType",e[e.Promise=9]="Promise",e[e.TypeWithCallSignature=10]="TypeWithCallSignature",e[e.ObjectType=11]="ObjectType"}(e.TypeReferenceSerializationKind||(e.TypeReferenceSerializationKind={})),function(e){e[e.None=0]="None",e[e.FunctionScopedVariable=1]="FunctionScopedVariable",e[e.BlockScopedVariable=2]="BlockScopedVariable",e[e.Property=4]="Property",e[e.EnumMember=8]="EnumMember",e[e.Function=16]="Function",e[e.Class=32]="Class",e[e.Interface=64]="Interface",e[e.ConstEnum=128]="ConstEnum",e[e.RegularEnum=256]="RegularEnum",e[e.ValueModule=512]="ValueModule",e[e.NamespaceModule=1024]="NamespaceModule",e[e.TypeLiteral=2048]="TypeLiteral",e[e.ObjectLiteral=4096]="ObjectLiteral",e[e.Method=8192]="Method",e[e.Constructor=16384]="Constructor",e[e.GetAccessor=32768]="GetAccessor",e[e.SetAccessor=65536]="SetAccessor",e[e.Signature=131072]="Signature",e[e.TypeParameter=262144]="TypeParameter",e[e.TypeAlias=524288]="TypeAlias",e[e.ExportValue=1048576]="ExportValue",e[e.Alias=2097152]="Alias",e[e.Prototype=4194304]="Prototype",e[e.ExportStar=8388608]="ExportStar",e[e.Optional=16777216]="Optional",e[e.Transient=33554432]="Transient",e[e.Assignment=67108864]="Assignment",e[e.ModuleExports=134217728]="ModuleExports",e[e.All=67108863]="All",e[e.Enum=384]="Enum",e[e.Variable=3]="Variable",e[e.Value=111551]="Value",e[e.Type=788968]="Type",e[e.Namespace=1920]="Namespace",e[e.Module=1536]="Module",e[e.Accessor=98304]="Accessor",e[e.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",e[e.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",e[e.ParameterExcludes=111551]="ParameterExcludes",e[e.PropertyExcludes=0]="PropertyExcludes",e[e.EnumMemberExcludes=900095]="EnumMemberExcludes",e[e.FunctionExcludes=110991]="FunctionExcludes",e[e.ClassExcludes=899503]="ClassExcludes",e[e.InterfaceExcludes=788872]="InterfaceExcludes",e[e.RegularEnumExcludes=899327]="RegularEnumExcludes",e[e.ConstEnumExcludes=899967]="ConstEnumExcludes",e[e.ValueModuleExcludes=110735]="ValueModuleExcludes",e[e.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",e[e.MethodExcludes=103359]="MethodExcludes",e[e.GetAccessorExcludes=46015]="GetAccessorExcludes",e[e.SetAccessorExcludes=78783]="SetAccessorExcludes",e[e.TypeParameterExcludes=526824]="TypeParameterExcludes",e[e.TypeAliasExcludes=788968]="TypeAliasExcludes",e[e.AliasExcludes=2097152]="AliasExcludes",e[e.ModuleMember=2623475]="ModuleMember",e[e.ExportHasLocal=944]="ExportHasLocal",e[e.BlockScoped=418]="BlockScoped",e[e.PropertyOrAccessor=98308]="PropertyOrAccessor",e[e.ClassMember=106500]="ClassMember",e[e.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",e[e.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",e[e.Classifiable=2885600]="Classifiable",e[e.LateBindingContainer=6256]="LateBindingContainer"}(e.SymbolFlags||(e.SymbolFlags={})),function(e){e[e.Numeric=0]="Numeric",e[e.Literal=1]="Literal"}(e.EnumKind||(e.EnumKind={})),function(e){e[e.Instantiated=1]="Instantiated",e[e.SyntheticProperty=2]="SyntheticProperty",e[e.SyntheticMethod=4]="SyntheticMethod",e[e.Readonly=8]="Readonly",e[e.ReadPartial=16]="ReadPartial",e[e.WritePartial=32]="WritePartial",e[e.HasNonUniformType=64]="HasNonUniformType",e[e.HasLiteralType=128]="HasLiteralType",e[e.ContainsPublic=256]="ContainsPublic",e[e.ContainsProtected=512]="ContainsProtected",e[e.ContainsPrivate=1024]="ContainsPrivate",e[e.ContainsStatic=2048]="ContainsStatic",e[e.Late=4096]="Late",e[e.ReverseMapped=8192]="ReverseMapped",e[e.OptionalParameter=16384]="OptionalParameter",e[e.RestParameter=32768]="RestParameter",e[e.DeferredType=65536]="DeferredType",e[e.HasNeverType=131072]="HasNeverType",e[e.Mapped=262144]="Mapped",e[e.StripOptional=524288]="StripOptional",e[e.Synthetic=6]="Synthetic",e[e.Discriminant=192]="Discriminant",e[e.Partial=48]="Partial"}(e.CheckFlags||(e.CheckFlags={})),function(e){e.Call="__call",e.Constructor="__constructor",e.New="__new",e.Index="__index",e.ExportStar="__export",e.Global="__global",e.Missing="__missing",e.Type="__type",e.Object="__object",e.JSXAttributes="__jsxAttributes",e.Class="__class",e.Function="__function",e.Computed="__computed",e.Resolving="__resolving__",e.ExportEquals="export=",e.Default="default",e.This="this"}(e.InternalSymbolName||(e.InternalSymbolName={})),function(e){e[e.TypeChecked=1]="TypeChecked",e[e.LexicalThis=2]="LexicalThis",e[e.CaptureThis=4]="CaptureThis",e[e.CaptureNewTarget=8]="CaptureNewTarget",e[e.SuperInstance=256]="SuperInstance",e[e.SuperStatic=512]="SuperStatic",e[e.ContextChecked=1024]="ContextChecked",e[e.AsyncMethodWithSuper=2048]="AsyncMethodWithSuper",e[e.AsyncMethodWithSuperBinding=4096]="AsyncMethodWithSuperBinding",e[e.CaptureArguments=8192]="CaptureArguments",e[e.EnumValuesComputed=16384]="EnumValuesComputed",e[e.LexicalModuleMergesWithClass=32768]="LexicalModuleMergesWithClass",e[e.LoopWithCapturedBlockScopedBinding=65536]="LoopWithCapturedBlockScopedBinding",e[e.ContainsCapturedBlockScopeBinding=131072]="ContainsCapturedBlockScopeBinding",e[e.CapturedBlockScopedBinding=262144]="CapturedBlockScopedBinding",e[e.BlockScopedBindingInLoop=524288]="BlockScopedBindingInLoop",e[e.ClassWithBodyScopedClassBinding=1048576]="ClassWithBodyScopedClassBinding",e[e.BodyScopedClassBinding=2097152]="BodyScopedClassBinding",e[e.NeedsLoopOutParameter=4194304]="NeedsLoopOutParameter",e[e.AssignmentsMarked=8388608]="AssignmentsMarked",e[e.ClassWithConstructorReference=16777216]="ClassWithConstructorReference",e[e.ConstructorReferenceInClass=33554432]="ConstructorReferenceInClass",e[e.ContainsClassWithPrivateIdentifiers=67108864]="ContainsClassWithPrivateIdentifiers"}(e.NodeCheckFlags||(e.NodeCheckFlags={})),function(e){e[e.Any=1]="Any",e[e.Unknown=2]="Unknown",e[e.String=4]="String",e[e.Number=8]="Number",e[e.Boolean=16]="Boolean",e[e.Enum=32]="Enum",e[e.BigInt=64]="BigInt",e[e.StringLiteral=128]="StringLiteral",e[e.NumberLiteral=256]="NumberLiteral",e[e.BooleanLiteral=512]="BooleanLiteral",e[e.EnumLiteral=1024]="EnumLiteral",e[e.BigIntLiteral=2048]="BigIntLiteral",e[e.ESSymbol=4096]="ESSymbol",e[e.UniqueESSymbol=8192]="UniqueESSymbol",e[e.Void=16384]="Void",e[e.Undefined=32768]="Undefined",e[e.Null=65536]="Null",e[e.Never=131072]="Never",e[e.TypeParameter=262144]="TypeParameter",e[e.Object=524288]="Object",e[e.Union=1048576]="Union",e[e.Intersection=2097152]="Intersection",e[e.Index=4194304]="Index",e[e.IndexedAccess=8388608]="IndexedAccess",e[e.Conditional=16777216]="Conditional",e[e.Substitution=33554432]="Substitution",e[e.NonPrimitive=67108864]="NonPrimitive",e[e.TemplateLiteral=134217728]="TemplateLiteral",e[e.StringMapping=268435456]="StringMapping",e[e.AnyOrUnknown=3]="AnyOrUnknown",e[e.Nullable=98304]="Nullable",e[e.Literal=2944]="Literal",e[e.Unit=109440]="Unit",e[e.StringOrNumberLiteral=384]="StringOrNumberLiteral",e[e.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",e[e.DefinitelyFalsy=117632]="DefinitelyFalsy",e[e.PossiblyFalsy=117724]="PossiblyFalsy",e[e.Intrinsic=67359327]="Intrinsic",e[e.Primitive=131068]="Primitive",e[e.StringLike=402653316]="StringLike",e[e.NumberLike=296]="NumberLike",e[e.BigIntLike=2112]="BigIntLike",e[e.BooleanLike=528]="BooleanLike",e[e.EnumLike=1056]="EnumLike",e[e.ESSymbolLike=12288]="ESSymbolLike",e[e.VoidLike=49152]="VoidLike",e[e.DisjointDomains=469892092]="DisjointDomains",e[e.UnionOrIntersection=3145728]="UnionOrIntersection",e[e.StructuredType=3670016]="StructuredType",e[e.TypeVariable=8650752]="TypeVariable",e[e.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",e[e.InstantiablePrimitive=406847488]="InstantiablePrimitive",e[e.Instantiable=465829888]="Instantiable",e[e.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",e[e.ObjectFlagsType=3899393]="ObjectFlagsType",e[e.Simplifiable=25165824]="Simplifiable",e[e.Substructure=469237760]="Substructure",e[e.Narrowable=536624127]="Narrowable",e[e.NotPrimitiveUnion=468598819]="NotPrimitiveUnion",e[e.IncludesMask=205258751]="IncludesMask",e[e.IncludesStructuredOrInstantiable=262144]="IncludesStructuredOrInstantiable",e[e.IncludesNonWideningType=4194304]="IncludesNonWideningType",e[e.IncludesWildcard=8388608]="IncludesWildcard",e[e.IncludesEmptyObject=16777216]="IncludesEmptyObject"}(e.TypeFlags||(e.TypeFlags={})),function(e){e[e.Class=1]="Class",e[e.Interface=2]="Interface",e[e.Reference=4]="Reference",e[e.Tuple=8]="Tuple",e[e.Anonymous=16]="Anonymous",e[e.Mapped=32]="Mapped",e[e.Instantiated=64]="Instantiated",e[e.ObjectLiteral=128]="ObjectLiteral",e[e.EvolvingArray=256]="EvolvingArray",e[e.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",e[e.ContainsSpread=1024]="ContainsSpread",e[e.ReverseMapped=2048]="ReverseMapped",e[e.JsxAttributes=4096]="JsxAttributes",e[e.MarkerType=8192]="MarkerType",e[e.JSLiteral=16384]="JSLiteral",e[e.FreshLiteral=32768]="FreshLiteral",e[e.ArrayLiteral=65536]="ArrayLiteral",e[e.ObjectRestType=131072]="ObjectRestType",e[e.PrimitiveUnion=262144]="PrimitiveUnion",e[e.ContainsWideningType=524288]="ContainsWideningType",e[e.ContainsObjectOrArrayLiteral=1048576]="ContainsObjectOrArrayLiteral",e[e.NonInferrableType=2097152]="NonInferrableType",e[e.IsGenericObjectTypeComputed=4194304]="IsGenericObjectTypeComputed",e[e.IsGenericObjectType=8388608]="IsGenericObjectType",e[e.IsGenericIndexTypeComputed=16777216]="IsGenericIndexTypeComputed",e[e.IsGenericIndexType=33554432]="IsGenericIndexType",e[e.CouldContainTypeVariablesComputed=67108864]="CouldContainTypeVariablesComputed",e[e.CouldContainTypeVariables=134217728]="CouldContainTypeVariables",e[e.ContainsIntersections=268435456]="ContainsIntersections",e[e.IsNeverIntersectionComputed=268435456]="IsNeverIntersectionComputed",e[e.IsNeverIntersection=536870912]="IsNeverIntersection",e[e.IsClassInstanceClone=1073741824]="IsClassInstanceClone",e[e.ClassOrInterface=3]="ClassOrInterface",e[e.RequiresWidening=1572864]="RequiresWidening",e[e.PropagatingFlags=3670016]="PropagatingFlags",e[e.ObjectTypeKindMask=2367]="ObjectTypeKindMask"}(e.ObjectFlags||(e.ObjectFlags={})),function(e){e[e.Invariant=0]="Invariant",e[e.Covariant=1]="Covariant",e[e.Contravariant=2]="Contravariant",e[e.Bivariant=3]="Bivariant",e[e.Independent=4]="Independent",e[e.VarianceMask=7]="VarianceMask",e[e.Unmeasurable=8]="Unmeasurable",e[e.Unreliable=16]="Unreliable",e[e.AllowsStructuralFallback=24]="AllowsStructuralFallback"}(e.VarianceFlags||(e.VarianceFlags={})),function(e){e[e.Required=1]="Required",e[e.Optional=2]="Optional",e[e.Rest=4]="Rest",e[e.Variadic=8]="Variadic",e[e.Fixed=3]="Fixed",e[e.Variable=12]="Variable",e[e.NonRequired=14]="NonRequired",e[e.NonRest=11]="NonRest"}(e.ElementFlags||(e.ElementFlags={})),function(e){e[e.Component=0]="Component",e[e.Function=1]="Function",e[e.Mixed=2]="Mixed"}(e.JsxReferenceKind||(e.JsxReferenceKind={})),function(e){e[e.Call=0]="Call",e[e.Construct=1]="Construct"}(e.SignatureKind||(e.SignatureKind={})),function(e){e[e.None=0]="None",e[e.HasRestParameter=1]="HasRestParameter",e[e.HasLiteralTypes=2]="HasLiteralTypes",e[e.Abstract=4]="Abstract",e[e.IsInnerCallChain=8]="IsInnerCallChain",e[e.IsOuterCallChain=16]="IsOuterCallChain",e[e.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",e[e.PropagatingFlags=39]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags"}(e.SignatureFlags||(e.SignatureFlags={})),function(e){e[e.String=0]="String",e[e.Number=1]="Number"}(e.IndexKind||(e.IndexKind={})),function(e){e[e.Simple=0]="Simple",e[e.Array=1]="Array",e[e.Function=2]="Function",e[e.Composite=3]="Composite",e[e.Merged=4]="Merged"}(e.TypeMapKind||(e.TypeMapKind={})),function(e){e[e.NakedTypeVariable=1]="NakedTypeVariable",e[e.SpeculativeTuple=2]="SpeculativeTuple",e[e.HomomorphicMappedType=4]="HomomorphicMappedType",e[e.PartialHomomorphicMappedType=8]="PartialHomomorphicMappedType",e[e.MappedTypeConstraint=16]="MappedTypeConstraint",e[e.ContravariantConditional=32]="ContravariantConditional",e[e.ReturnType=64]="ReturnType",e[e.LiteralKeyof=128]="LiteralKeyof",e[e.NoConstraints=256]="NoConstraints",e[e.AlwaysStrict=512]="AlwaysStrict",e[e.MaxValue=1024]="MaxValue",e[e.PriorityImpliesCombination=208]="PriorityImpliesCombination",e[e.Circularity=-1]="Circularity"}(e.InferencePriority||(e.InferencePriority={})),function(e){e[e.None=0]="None",e[e.NoDefault=1]="NoDefault",e[e.AnyDefault=2]="AnyDefault",e[e.SkippedGenericFunction=4]="SkippedGenericFunction"}(e.InferenceFlags||(e.InferenceFlags={})),function(e){e[e.False=0]="False",e[e.Unknown=1]="Unknown",e[e.Maybe=3]="Maybe",e[e.True=-1]="True"}(e.Ternary||(e.Ternary={})),function(e){e[e.None=0]="None",e[e.ExportsProperty=1]="ExportsProperty",e[e.ModuleExports=2]="ModuleExports",e[e.PrototypeProperty=3]="PrototypeProperty",e[e.ThisProperty=4]="ThisProperty",e[e.Property=5]="Property",e[e.Prototype=6]="Prototype",e[e.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",e[e.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",e[e.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty"}(e.AssignmentDeclarationKind||(e.AssignmentDeclarationKind={})),function(e){e[e.Warning=0]="Warning",e[e.Error=1]="Error",e[e.Suggestion=2]="Suggestion",e[e.Message=3]="Message"}(t=e.DiagnosticCategory||(e.DiagnosticCategory={})),e.diagnosticCategoryName=function(e,r){void 0===r&&(r=!0);var n=t[e.category];return r?n.toLowerCase():n},function(e){e[e.Classic=1]="Classic",e[e.NodeJs=2]="NodeJs"}(e.ModuleResolutionKind||(e.ModuleResolutionKind={})),function(e){e[e.FixedPollingInterval=0]="FixedPollingInterval",e[e.PriorityPollingInterval=1]="PriorityPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.UseFsEvents=3]="UseFsEvents",e[e.UseFsEventsOnParentDirectory=4]="UseFsEventsOnParentDirectory"}(e.WatchFileKind||(e.WatchFileKind={})),function(e){e[e.UseFsEvents=0]="UseFsEvents",e[e.FixedPollingInterval=1]="FixedPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling"}(e.WatchDirectoryKind||(e.WatchDirectoryKind={})),function(e){e[e.FixedInterval=0]="FixedInterval",e[e.PriorityInterval=1]="PriorityInterval",e[e.DynamicPriority=2]="DynamicPriority"}(e.PollingWatchKind||(e.PollingWatchKind={})),function(e){e[e.None=0]="None",e[e.CommonJS=1]="CommonJS",e[e.AMD=2]="AMD",e[e.UMD=3]="UMD",e[e.System=4]="System",e[e.ES2015=5]="ES2015",e[e.ES2020=6]="ES2020",e[e.ESNext=99]="ESNext"}(e.ModuleKind||(e.ModuleKind={})),function(e){e[e.None=0]="None",e[e.Preserve=1]="Preserve",e[e.React=2]="React",e[e.ReactNative=3]="ReactNative",e[e.ReactJSX=4]="ReactJSX",e[e.ReactJSXDev=5]="ReactJSXDev"}(e.JsxEmit||(e.JsxEmit={})),function(e){e[e.Remove=0]="Remove",e[e.Preserve=1]="Preserve",e[e.Error=2]="Error"}(e.ImportsNotUsedAsValues||(e.ImportsNotUsedAsValues={})),function(e){e[e.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",e[e.LineFeed=1]="LineFeed"}(e.NewLineKind||(e.NewLineKind={})),function(e){e[e.Unknown=0]="Unknown",e[e.JS=1]="JS",e[e.JSX=2]="JSX",e[e.TS=3]="TS",e[e.TSX=4]="TSX",e[e.External=5]="External",e[e.JSON=6]="JSON",e[e.Deferred=7]="Deferred",e[e.ETS=8]="ETS"}(e.ScriptKind||(e.ScriptKind={})),function(e){e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest"}(e.ScriptTarget||(e.ScriptTarget={})),function(e){e[e.Standard=0]="Standard",e[e.JSX=1]="JSX"}(e.LanguageVariant||(e.LanguageVariant={})),function(e){e[e.None=0]="None",e[e.Recursive=1]="Recursive"}(e.WatchDirectoryFlags||(e.WatchDirectoryFlags={})),function(e){e[e.nullCharacter=0]="nullCharacter",e[e.maxAsciiCharacter=127]="maxAsciiCharacter",e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.lineSeparator=8232]="lineSeparator",e[e.paragraphSeparator=8233]="paragraphSeparator",e[e.nextLine=133]="nextLine",e[e.space=32]="space",e[e.nonBreakingSpace=160]="nonBreakingSpace",e[e.enQuad=8192]="enQuad",e[e.emQuad=8193]="emQuad",e[e.enSpace=8194]="enSpace",e[e.emSpace=8195]="emSpace",e[e.threePerEmSpace=8196]="threePerEmSpace",e[e.fourPerEmSpace=8197]="fourPerEmSpace",e[e.sixPerEmSpace=8198]="sixPerEmSpace",e[e.figureSpace=8199]="figureSpace",e[e.punctuationSpace=8200]="punctuationSpace",e[e.thinSpace=8201]="thinSpace",e[e.hairSpace=8202]="hairSpace",e[e.zeroWidthSpace=8203]="zeroWidthSpace",e[e.narrowNoBreakSpace=8239]="narrowNoBreakSpace",e[e.ideographicSpace=12288]="ideographicSpace",e[e.mathematicalSpace=8287]="mathematicalSpace",e[e.ogham=5760]="ogham",e[e._=95]="_",e[e.$=36]="$",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.ampersand=38]="ampersand",e[e.asterisk=42]="asterisk",e[e.at=64]="at",e[e.backslash=92]="backslash",e[e.backtick=96]="backtick",e[e.bar=124]="bar",e[e.caret=94]="caret",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.closeParen=41]="closeParen",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.equals=61]="equals",e[e.exclamation=33]="exclamation",e[e.greaterThan=62]="greaterThan",e[e.hash=35]="hash",e[e.lessThan=60]="lessThan",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.openParen=40]="openParen",e[e.percent=37]="percent",e[e.plus=43]="plus",e[e.question=63]="question",e[e.semicolon=59]="semicolon",e[e.singleQuote=39]="singleQuote",e[e.slash=47]="slash",e[e.tilde=126]="tilde",e[e.backspace=8]="backspace",e[e.formFeed=12]="formFeed",e[e.byteOrderMark=65279]="byteOrderMark",e[e.tab=9]="tab",e[e.verticalTab=11]="verticalTab"}(e.CharacterCodes||(e.CharacterCodes={})),function(e){e.Ts=".ts",e.Tsx=".tsx",e.Dts=".d.ts",e.Js=".js",e.Jsx=".jsx",e.Json=".json",e.TsBuildInfo=".tsbuildinfo",e.Ets=".ets",e.Dets=".d.ets"}(e.Extension||(e.Extension={})),function(e){e[e.None=0]="None",e[e.ContainsTypeScript=1]="ContainsTypeScript",e[e.ContainsJsx=2]="ContainsJsx",e[e.ContainsESNext=4]="ContainsESNext",e[e.ContainsES2020=8]="ContainsES2020",e[e.ContainsES2019=16]="ContainsES2019",e[e.ContainsES2018=32]="ContainsES2018",e[e.ContainsES2017=64]="ContainsES2017",e[e.ContainsES2016=128]="ContainsES2016",e[e.ContainsES2015=256]="ContainsES2015",e[e.ContainsGenerator=512]="ContainsGenerator",e[e.ContainsDestructuringAssignment=1024]="ContainsDestructuringAssignment",e[e.ContainsTypeScriptClassSyntax=2048]="ContainsTypeScriptClassSyntax",e[e.ContainsLexicalThis=4096]="ContainsLexicalThis",e[e.ContainsRestOrSpread=8192]="ContainsRestOrSpread",e[e.ContainsObjectRestOrSpread=16384]="ContainsObjectRestOrSpread",e[e.ContainsComputedPropertyName=32768]="ContainsComputedPropertyName",e[e.ContainsBlockScopedBinding=65536]="ContainsBlockScopedBinding",e[e.ContainsBindingPattern=131072]="ContainsBindingPattern",e[e.ContainsYield=262144]="ContainsYield",e[e.ContainsAwait=524288]="ContainsAwait",e[e.ContainsHoistedDeclarationOrCompletion=1048576]="ContainsHoistedDeclarationOrCompletion",e[e.ContainsDynamicImport=2097152]="ContainsDynamicImport",e[e.ContainsClassFields=4194304]="ContainsClassFields",e[e.ContainsPossibleTopLevelAwait=8388608]="ContainsPossibleTopLevelAwait",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AssertTypeScript=1]="AssertTypeScript",e[e.AssertJsx=2]="AssertJsx",e[e.AssertESNext=4]="AssertESNext",e[e.AssertES2020=8]="AssertES2020",e[e.AssertES2019=16]="AssertES2019",e[e.AssertES2018=32]="AssertES2018",e[e.AssertES2017=64]="AssertES2017",e[e.AssertES2016=128]="AssertES2016",e[e.AssertES2015=256]="AssertES2015",e[e.AssertGenerator=512]="AssertGenerator",e[e.AssertDestructuringAssignment=1024]="AssertDestructuringAssignment",e[e.OuterExpressionExcludes=536870912]="OuterExpressionExcludes",e[e.PropertyAccessExcludes=536870912]="PropertyAccessExcludes",e[e.NodeExcludes=536870912]="NodeExcludes",e[e.ArrowFunctionExcludes=547309568]="ArrowFunctionExcludes",e[e.FunctionExcludes=547313664]="FunctionExcludes",e[e.ConstructorExcludes=547311616]="ConstructorExcludes",e[e.MethodOrAccessorExcludes=538923008]="MethodOrAccessorExcludes",e[e.PropertyExcludes=536875008]="PropertyExcludes",e[e.ClassExcludes=536905728]="ClassExcludes",e[e.ModuleExcludes=546379776]="ModuleExcludes",e[e.TypeExcludes=-2]="TypeExcludes",e[e.ObjectLiteralExcludes=536922112]="ObjectLiteralExcludes",e[e.ArrayLiteralOrCallOrNewExcludes=536879104]="ArrayLiteralOrCallOrNewExcludes",e[e.VariableDeclarationListExcludes=537018368]="VariableDeclarationListExcludes",e[e.ParameterExcludes=536870912]="ParameterExcludes",e[e.CatchClauseExcludes=536887296]="CatchClauseExcludes",e[e.BindingPatternExcludes=536879104]="BindingPatternExcludes",e[e.PropertyNamePropagatingFlags=4096]="PropertyNamePropagatingFlags"}(e.TransformFlags||(e.TransformFlags={})),function(e){e[e.None=0]="None",e[e.SingleLine=1]="SingleLine",e[e.AdviseOnEmitNode=2]="AdviseOnEmitNode",e[e.NoSubstitution=4]="NoSubstitution",e[e.CapturesThis=8]="CapturesThis",e[e.NoLeadingSourceMap=16]="NoLeadingSourceMap",e[e.NoTrailingSourceMap=32]="NoTrailingSourceMap",e[e.NoSourceMap=48]="NoSourceMap",e[e.NoNestedSourceMaps=64]="NoNestedSourceMaps",e[e.NoTokenLeadingSourceMaps=128]="NoTokenLeadingSourceMaps",e[e.NoTokenTrailingSourceMaps=256]="NoTokenTrailingSourceMaps",e[e.NoTokenSourceMaps=384]="NoTokenSourceMaps",e[e.NoLeadingComments=512]="NoLeadingComments",e[e.NoTrailingComments=1024]="NoTrailingComments",e[e.NoComments=1536]="NoComments",e[e.NoNestedComments=2048]="NoNestedComments",e[e.HelperName=4096]="HelperName",e[e.ExportName=8192]="ExportName",e[e.LocalName=16384]="LocalName",e[e.InternalName=32768]="InternalName",e[e.Indented=65536]="Indented",e[e.NoIndentation=131072]="NoIndentation",e[e.AsyncFunctionBody=262144]="AsyncFunctionBody",e[e.ReuseTempVariableScope=524288]="ReuseTempVariableScope",e[e.CustomPrologue=1048576]="CustomPrologue",e[e.NoHoisting=2097152]="NoHoisting",e[e.HasEndOfDeclarationMarker=4194304]="HasEndOfDeclarationMarker",e[e.Iterator=8388608]="Iterator",e[e.NoAsciiEscaping=16777216]="NoAsciiEscaping",e[e.TypeScriptClassWrapper=33554432]="TypeScriptClassWrapper",e[e.NeverApplyImportHelper=67108864]="NeverApplyImportHelper",e[e.IgnoreSourceNewlines=134217728]="IgnoreSourceNewlines"}(e.EmitFlags||(e.EmitFlags={})),function(e){e[e.Extends=1]="Extends",e[e.Assign=2]="Assign",e[e.Rest=4]="Rest",e[e.Decorate=8]="Decorate",e[e.Metadata=16]="Metadata",e[e.Param=32]="Param",e[e.Awaiter=64]="Awaiter",e[e.Generator=128]="Generator",e[e.Values=256]="Values",e[e.Read=512]="Read",e[e.SpreadArray=1024]="SpreadArray",e[e.Await=2048]="Await",e[e.AsyncGenerator=4096]="AsyncGenerator",e[e.AsyncDelegator=8192]="AsyncDelegator",e[e.AsyncValues=16384]="AsyncValues",e[e.ExportStar=32768]="ExportStar",e[e.ImportStar=65536]="ImportStar",e[e.ImportDefault=131072]="ImportDefault",e[e.MakeTemplateObject=262144]="MakeTemplateObject",e[e.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",e[e.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",e[e.CreateBinding=2097152]="CreateBinding",e[e.FirstEmitHelper=1]="FirstEmitHelper",e[e.LastEmitHelper=2097152]="LastEmitHelper",e[e.ForOfIncludes=256]="ForOfIncludes",e[e.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",e[e.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",e[e.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",e[e.SpreadIncludes=1536]="SpreadIncludes"}(e.ExternalEmitHelpers||(e.ExternalEmitHelpers={})),function(e){e[e.SourceFile=0]="SourceFile",e[e.Expression=1]="Expression",e[e.IdentifierName=2]="IdentifierName",e[e.MappedTypeParameter=3]="MappedTypeParameter",e[e.Unspecified=4]="Unspecified",e[e.EmbeddedStatement=5]="EmbeddedStatement",e[e.JsxAttributeValue=6]="JsxAttributeValue"}(e.EmitHint||(e.EmitHint={})),function(e){e[e.Parentheses=1]="Parentheses",e[e.TypeAssertions=2]="TypeAssertions",e[e.NonNullAssertions=4]="NonNullAssertions",e[e.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",e[e.Assertions=6]="Assertions",e[e.All=15]="All"}(e.OuterExpressionKinds||(e.OuterExpressionKinds={})),function(e){e[e.None=0]="None",e[e.InParameters=1]="InParameters",e[e.VariablesHoistedInParameters=2]="VariablesHoistedInParameters"}(e.LexicalEnvironmentFlags||(e.LexicalEnvironmentFlags={})),function(e){e.Prologue="prologue",e.EmitHelpers="emitHelpers",e.NoDefaultLib="no-default-lib",e.Reference="reference",e.Type="type",e.Lib="lib",e.Prepend="prepend",e.Text="text",e.Internal="internal"}(e.BundleFileSectionKind||(e.BundleFileSectionKind={})),function(e){e[e.None=0]="None",e[e.SingleLine=0]="SingleLine",e[e.MultiLine=1]="MultiLine",e[e.PreserveLines=2]="PreserveLines",e[e.LinesMask=3]="LinesMask",e[e.NotDelimited=0]="NotDelimited",e[e.BarDelimited=4]="BarDelimited",e[e.AmpersandDelimited=8]="AmpersandDelimited",e[e.CommaDelimited=16]="CommaDelimited",e[e.AsteriskDelimited=32]="AsteriskDelimited",e[e.DelimitersMask=60]="DelimitersMask",e[e.AllowTrailingComma=64]="AllowTrailingComma",e[e.Indented=128]="Indented",e[e.SpaceBetweenBraces=256]="SpaceBetweenBraces",e[e.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",e[e.Braces=1024]="Braces",e[e.Parenthesis=2048]="Parenthesis",e[e.AngleBrackets=4096]="AngleBrackets",e[e.SquareBrackets=8192]="SquareBrackets",e[e.BracketsMask=15360]="BracketsMask",e[e.OptionalIfUndefined=16384]="OptionalIfUndefined",e[e.OptionalIfEmpty=32768]="OptionalIfEmpty",e[e.Optional=49152]="Optional",e[e.PreferNewLine=65536]="PreferNewLine",e[e.NoTrailingNewLine=131072]="NoTrailingNewLine",e[e.NoInterveningComments=262144]="NoInterveningComments",e[e.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",e[e.SingleElement=1048576]="SingleElement",e[e.SpaceAfterList=2097152]="SpaceAfterList",e[e.Modifiers=262656]="Modifiers",e[e.HeritageClauses=512]="HeritageClauses",e[e.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",e[e.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",e[e.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",e[e.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",e[e.UnionTypeConstituents=516]="UnionTypeConstituents",e[e.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",e[e.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",e[e.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",e[e.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",e[e.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",e[e.CommaListElements=528]="CommaListElements",e[e.CallExpressionArguments=2576]="CallExpressionArguments",e[e.NewExpressionArguments=18960]="NewExpressionArguments",e[e.TemplateExpressionSpans=262144]="TemplateExpressionSpans",e[e.SingleLineBlockStatements=768]="SingleLineBlockStatements",e[e.MultiLineBlockStatements=129]="MultiLineBlockStatements",e[e.VariableDeclarationList=528]="VariableDeclarationList",e[e.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",e[e.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",e[e.ClassHeritageClauses=0]="ClassHeritageClauses",e[e.ClassMembers=129]="ClassMembers",e[e.InterfaceMembers=129]="InterfaceMembers",e[e.EnumMembers=145]="EnumMembers",e[e.CaseBlockClauses=129]="CaseBlockClauses",e[e.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",e[e.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",e[e.JsxElementAttributes=262656]="JsxElementAttributes",e[e.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",e[e.HeritageClauseTypes=528]="HeritageClauseTypes",e[e.SourceFileStatements=131073]="SourceFileStatements",e[e.Decorators=2146305]="Decorators",e[e.TypeArguments=53776]="TypeArguments",e[e.TypeParameters=53776]="TypeParameters",e[e.Parameters=2576]="Parameters",e[e.IndexSignatureParameters=8848]="IndexSignatureParameters",e[e.JSDocComment=33]="JSDocComment"}(e.ListFormat||(e.ListFormat={})),function(e){e[e.None=0]="None",e[e.TripleSlashXML=1]="TripleSlashXML",e[e.SingleLine=2]="SingleLine",e[e.MultiLine=4]="MultiLine",e[e.All=7]="All",e[e.Default=7]="Default"}(e.PragmaKindFlags||(e.PragmaKindFlags={})),e.commentPragmas={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}}}(d||(d={})),function(e){e.directorySeparator="/",e.altDirectorySeparator="\\";var t="://",r=/\\/g;function n(e){return 47===e||92===e}function a(e){return d(e)>0}function o(e){return 0!==d(e)}function s(e){return/^\.\.?($|[\\/])/.test(e)}function c(t,r){return t.length>r.length&&e.endsWith(t,r)}function l(e){return e.length>0&&n(e.charCodeAt(e.length-1))}function u(e){return e>=97&&e<=122||e>=65&&e<=90}function d(r){if(!r)return 0;var n=r.charCodeAt(0);if(47===n||92===n){if(r.charCodeAt(1)!==n)return 1;var i=r.indexOf(47===n?e.directorySeparator:e.altDirectorySeparator,2);return i<0?r.length:i+1}if(u(n)&&58===r.charCodeAt(1)){var a=r.charCodeAt(2);if(47===a||92===a)return 3;if(2===r.length)return 2}var o=r.indexOf(t);if(-1!==o){var s=o+t.length,c=r.indexOf(e.directorySeparator,s);if(-1!==c){var l=r.slice(0,o),d=r.slice(s,c);if("file"===l&&(""===d||"localhost"===d)&&u(r.charCodeAt(c+1))){var p=function(e,t){var r=e.charCodeAt(t);if(58===r)return t+1;if(37===r&&51===e.charCodeAt(t+1)){var n=e.charCodeAt(t+2);if(97===n||65===n)return t+3}return-1}(r,c+2);if(-1!==p){if(47===r.charCodeAt(p))return~(p+1);if(p===r.length)return~p}}return~(c+1)}return~r.length}return 0}function p(e){var t=d(e);return t<0?~t:t}function f(t){var r=p(t=v(t));return r===t.length?t:(t=E(t)).slice(0,Math.max(r,t.lastIndexOf(e.directorySeparator)))}function m(t,r,n){if(p(t=v(t))===t.length)return"";var i=(t=E(t)).slice(Math.max(p(t),t.lastIndexOf(e.directorySeparator)+1)),a=void 0!==r&&void 0!==n?_(i,r,n):void 0;return a?i.slice(0,i.length-a.length):i}function g(t,r,n){if(e.startsWith(r,".")||(r="."+r),t.length>=r.length&&46===t.charCodeAt(t.length-r.length)){var i=t.slice(t.length-r.length);if(n(i,r))return i}}function _(t,r,n){if(r)return function(e,t,r){if("string"==typeof t)return g(e,t,r)||"";for(var n=0,i=t;n<i.length;n++){var a=g(e,i[n],r);if(a)return a}return""}(E(t),r,n?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive);var i=m(t),a=i.lastIndexOf(".");return a>=0?i.substring(a):""}function h(t,r){return void 0===r&&(r=""),function(t,r){var n=t.substring(0,r),a=t.substring(r).split(e.directorySeparator);return a.length&&!e.lastOrUndefined(a)&&a.pop(),i([n],a)}(t=k(r,t),p(t))}function y(t){return 0===t.length?"":(t[0]&&T(t[0]))+t.slice(1).join(e.directorySeparator)}function v(t){return t.replace(r,e.directorySeparator)}function b(t){if(!e.some(t))return[];for(var r=[t[0]],n=1;n<t.length;n++){var i=t[n];if(i&&"."!==i){if(".."===i)if(r.length>1){if(".."!==r[r.length-1]){r.pop();continue}}else if(r[0])continue;r.push(i)}}return r}function k(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];e&&(e=v(e));for(var n=0,i=t;n<i.length;n++){var a=i[n];a&&(a=v(a),e=e&&0===p(a)?T(e)+a:a)}return e}function x(t){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return D(e.some(r)?k.apply(void 0,i([t],r)):v(t))}function S(e,t){return b(h(e,t))}function w(e,t){return y(S(e,t))}function D(e){var t=y(b(h(e=v(e))));return t&&l(e)?T(t):t}function E(e){return l(e)?e.substr(0,e.length-1):e}function T(t){return l(t)?t:t+e.directorySeparator}function C(e){return o(e)||s(e)?e:"./"+e}e.isAnyDirectorySeparator=n,e.isUrl=function(e){return d(e)<0},e.isRootedDiskPath=a,e.isDiskPathRoot=function(e){var t=d(e);return t>0&&t===e.length},e.pathIsAbsolute=o,e.pathIsRelative=s,e.pathIsBareSpecifier=function(e){return!o(e)&&!s(e)},e.hasExtension=function(t){return e.stringContains(m(t),".")},e.fileExtensionIs=c,e.fileExtensionIsOneOf=function(e,t){for(var r=0,n=t;r<n.length;r++){if(c(e,n[r]))return!0}return!1},e.hasTrailingDirectorySeparator=l,e.getRootLength=p,e.getDirectoryPath=f,e.getBaseFileName=m,e.getAnyExtensionFromPath=_,e.getPathComponents=h,e.getPathFromPathComponents=y,e.normalizeSlashes=v,e.reducePathComponents=b,e.combinePaths=k,e.resolvePath=x,e.getNormalizedPathComponents=S,e.getNormalizedAbsolutePath=w,e.normalizePath=D,e.getNormalizedAbsolutePathWithoutRoot=function(t,r){return function(t){return 0===t.length?"":t.slice(1).join(e.directorySeparator)}(S(t,r))},e.toPath=function(e,t,r){return r(a(e)?D(e):w(e,t))},e.normalizePathAndParts=function(t){var r=b(h(t=v(t))),n=r[0],i=r.slice(1);if(i.length){var a=n+i.join(e.directorySeparator);return{path:l(t)?T(a):a,parts:i}}return{path:n,parts:i}},e.removeTrailingDirectorySeparator=E,e.ensureTrailingDirectorySeparator=T,e.ensurePathIsNonModuleName=C,e.changeAnyExtension=function(t,r,n,i){var a=void 0!==n&&void 0!==i?_(t,n,i):_(t);return a?t.slice(0,t.length-a.length)+(e.startsWith(r,".")?r:"."+r):t};var A=/(^|\/)\.{0,2}($|\/)/;function N(t,r,n){if(t===r)return 0;if(void 0===t)return-1;if(void 0===r)return 1;var i=t.substring(0,p(t)),a=r.substring(0,p(r)),o=e.compareStringsCaseInsensitive(i,a);if(0!==o)return o;var s=t.substring(i.length),c=r.substring(a.length);if(!A.test(s)&&!A.test(c))return n(s,c);for(var l=b(h(t)),u=b(h(r)),d=Math.min(l.length,u.length),f=1;f<d;f++){var m=n(l[f],u[f]);if(0!==m)return m}return e.compareValues(l.length,u.length)}function P(t,r,n,a){var o,s=b(h(t)),c=b(h(r));for(o=0;o<s.length&&o<c.length;o++){var l=a(s[o]),u=a(c[o]);if(!(0===o?e.equateStringsCaseInsensitive:n)(l,u))break}if(0===o)return c;for(var d=c.slice(o),p=[];o<s.length;o++)p.push("..");return i(i([""],p),d)}function I(t,r,n){e.Debug.assert(p(t)>0==p(r)>0,"Paths must either both be absolute or both be relative");var i="function"==typeof n?n:e.identity;return y(P(t,r,"boolean"==typeof n&&n?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive,i))}function F(t,r,n,i,o){var s=P(x(n,t),x(n,r),e.equateStringsCaseSensitive,i),c=s[0];if(o&&a(c)){var l=c.charAt(0)===e.directorySeparator?"file://":"file:///";s[0]=l+c}return y(s)}e.comparePathsCaseSensitive=function(t,r){return N(t,r,e.compareStringsCaseSensitive)},e.comparePathsCaseInsensitive=function(t,r){return N(t,r,e.compareStringsCaseInsensitive)},e.comparePaths=function(t,r,n,i){return"string"==typeof n?(t=k(n,t),r=k(n,r)):"boolean"==typeof n&&(i=n),N(t,r,e.getStringComparer(i))},e.containsPath=function(t,r,n,i){if("string"==typeof n?(t=k(n,t),r=k(n,r)):"boolean"==typeof n&&(i=n),void 0===t||void 0===r)return!1;if(t===r)return!0;var a=b(h(t)),o=b(h(r));if(o.length<a.length)return!1;for(var s=i?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive,c=0;c<a.length;c++){if(!(0===c?e.equateStringsCaseInsensitive:s)(a[c],o[c]))return!1}return!0},e.startsWithDirectory=function(t,r,n){var i=n(t),a=n(r);return e.startsWith(i,a+"/")||e.startsWith(i,a+"\\")},e.getPathComponentsRelativeTo=P,e.getRelativePathFromDirectory=I,e.convertToRelativePath=function(e,t,r){return a(e)?F(t,e,t,r,!1):e},e.getRelativePathFromFile=function(e,t,r){return C(I(f(e),t,r))},e.getRelativePathToDirectoryOrUrl=F,e.forEachAncestorDirectory=function(e,t){for(;;){var r=t(e);if(void 0!==r)return r;var n=f(e);if(n===e)return;e=n}},e.isNodeModulesDirectory=function(t){return e.endsWith(t,"/node_modules")},e.isOHModulesDirectory=function(t){return e.endsWith(t,"/oh_modules")}}(d||(d={})),function(e){function t(e){for(var t=5381,r=0;r<e.length;r++)t=(t<<5)+t+e.charCodeAt(r);return t.toString()}var n,i;function o(e){var t;return(t={})[i.Low]=e.Low,t[i.Medium]=e.Medium,t[i.High]=e.High,t}e.generateDjb2Hash=t,e.setStackTraceLimit=function(){Error.stackTraceLimit<100&&(Error.stackTraceLimit=100)},function(e){e[e.Created=0]="Created",e[e.Changed=1]="Changed",e[e.Deleted=2]="Deleted"}(n=e.FileWatcherEventKind||(e.FileWatcherEventKind={})),function(e){e[e.High=2e3]="High",e[e.Medium=500]="Medium",e[e.Low=250]="Low"}(i=e.PollingInterval||(e.PollingInterval={})),e.missingFileModifiedTime=new Date(0);var s,c={Low:32,Medium:64,High:256},l=o(c);function u(t){if(t.getEnvironmentVariable){var r=function(e,t){var r=n(e);if(r)return i("Low"),i("Medium"),i("High"),!0;return!1;function i(e){t[e]=r[e]||t[e]}}("TSC_WATCH_POLLINGINTERVAL",i);l=s("TSC_WATCH_POLLINGCHUNKSIZE",c)||l,e.unchangedPollThresholds=s("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",c)||e.unchangedPollThresholds}function n(e){var r;return n("Low"),n("Medium"),n("High"),r;function n(n){var i=function(e,r){return t.getEnvironmentVariable(e+"_"+r.toUpperCase())}(e,n);i&&((r||(r={}))[n]=Number(i))}}function s(e,t){var i=n(e);return(r||i)&&o(i?a(a({},t),i):t)}}function d(t){var r=[],n=[],a=c(i.Low),o=c(i.Medium),s=c(i.High);return function(t,n,i){var a={fileName:t,callback:n,unchangedPolls:0,mtime:v(t)};return r.push(a),g(a,i),{close:function(){a.isClosed=!0,e.unorderedRemoveItem(r,a)}}};function c(e){var t=[];return t.pollingInterval=e,t.pollIndex=0,t.pollScheduled=!1,t}function u(t){t.pollIndex=p(t,t.pollingInterval,t.pollIndex,l[t.pollingInterval]),t.length?y(t.pollingInterval):(e.Debug.assert(0===t.pollIndex),t.pollScheduled=!1)}function d(e){p(n,i.Low,0,n.length),u(e),!e.pollScheduled&&n.length&&y(i.Low)}function p(t,r,a,o){for(var s=t.length,c=a,l=0;l<o&&s>0;p(),s--){var u=t[a];if(u)if(u.isClosed)t[a]=void 0;else{l++;var d=m(u,v(u.fileName));u.isClosed?t[a]=void 0:d?(u.unchangedPolls=0,t!==n&&(t[a]=void 0,_(u))):u.unchangedPolls!==e.unchangedPollThresholds[r]?u.unchangedPolls++:t===n?(u.unchangedPolls=1,t[a]=void 0,g(u,i.Low)):r!==i.High&&(u.unchangedPolls++,t[a]=void 0,g(u,r===i.Low?i.Medium:i.High)),t[a]&&(c<a&&(t[c]=u,t[a]=void 0),c++)}}return a;function p(){++a===t.length&&(c<a&&(t.length=c),a=0,c=0)}}function f(e){switch(e){case i.Low:return a;case i.Medium:return o;case i.High:return s}}function g(e,t){f(t).push(e),h(t)}function _(e){n.push(e),h(i.Low)}function h(e){f(e).pollScheduled||y(e)}function y(e){f(e).pollScheduled=t.setTimeout(e===i.Low?d:u,e,f(e))}function v(r){return t.getModifiedTime(r)||e.missingFileModifiedTime}}function p(t,r){var a=e.createMultiMap(),o=new e.Map,s=e.createGetCanonicalFileName(r);return function(r,c,l,u){var d=s(r);a.add(d,c);var p=e.getDirectoryPath(d)||".",f=o.get(p)||function(r,c,l){var u=t(r,1,(function(t,i){if(e.isString(i)){var o=e.getNormalizedAbsolutePath(i,r),c=o&&a.get(s(o));if(c)for(var l=0,u=c;l<u.length;l++){(0,u[l])(o,n.Changed)}}}),!1,i.Medium,l);return u.referenceCount=0,o.set(c,u),u}(e.getDirectoryPath(r)||".",p,u);return f.referenceCount++,{close:function(){1===f.referenceCount?(f.close(),o.delete(p)):f.referenceCount--,a.remove(d,c)}}}}function f(t,r){var n=new e.Map,i=e.createMultiMap(),a=e.createGetCanonicalFileName(r);return function(r,o,s,c){var l=a(r),u=n.get(l);return u?u.refCount++:n.set(l,{watcher:t(r,(function(t,r){return e.forEach(i.get(l),(function(e){return e(t,r)}))}),s,c),refCount:1}),i.add(l,o),{close:function(){var t=e.Debug.checkDefined(n.get(l));i.remove(l,o),t.refCount--,t.refCount||(n.delete(l),e.closeFileWatcherOf(t))}}}}function m(e,t){var r=e.mtime.getTime(),n=t.getTime();return r!==n&&(e.mtime=t,e.callback(e.fileName,g(r,n)),!0)}function g(e,t){return 0===e?n.Created:0===t?n.Deleted:n.Changed}function _(t){var r,n=t.watchDirectory,i=t.useCaseSensitiveFileNames,a=t.getCurrentDirectory,o=t.getAccessibleSortedChildDirectories,s=t.directoryExists,c=t.realpath,l=t.setTimeout,u=t.clearTimeout,d=new e.Map,p=e.createMultiMap(),f=new e.Map,m=e.getStringComparer(!i),g=e.createGetCanonicalFileName(i);return function(e,t,r,i){return r?_(e,i,t):n(e,t,r,i)};function _(t,i,a){var o=g(t),c=d.get(o);c?c.refCount++:(c={watcher:n(t,(function(e){x(e,i)||((null==i?void 0:i.synchronousWatchDirectory)?(h(o,e),k(t,o,i)):function(e,t,n,i){var a=d.get(t);if(a&&s(e))return void function(e,t,n,i){var a=f.get(t);a?a.fileNames.push(n):f.set(t,{dirName:e,options:i,fileNames:[n]});r&&(u(r),r=void 0);r=l(v,1e3)}(e,t,n,i);h(t,n),b(a)}(t,o,e,i))}),!1,i),refCount:1,childWatches:e.emptyArray},d.set(o,c),k(t,o,i));var m=a&&{dirName:t,callback:a};return m&&p.add(o,m),{dirName:t,close:function(){var t=e.Debug.checkDefined(d.get(o));m&&p.remove(o,m),t.refCount--,t.refCount||(d.delete(o),e.closeFileWatcherOf(t),t.childWatches.forEach(e.closeFileWatcher))}}}function h(t,r,n){var i,a;e.isString(r)?i=r:a=r,p.forEach((function(r,o){var s;if((!a||!0!==a.get(o))&&(o===t||e.startsWith(t,o)&&t[o.length]===e.directorySeparator))if(a)if(n){var c=a.get(o);c?(s=c).push.apply(s,n):a.set(o,n.slice())}else a.set(o,!0);else r.forEach((function(e){return(0,e.callback)(i)}))}))}function v(){r=void 0,e.sysLog("sysLog:: onTimerToUpdateChildWatches:: "+f.size);for(var t=e.timestamp(),n=new e.Map;!r&&f.size;){var i=f.entries().next();e.Debug.assert(!i.done);var a=i.value,o=a[0],s=a[1],c=s.dirName,l=s.options,u=s.fileNames;f.delete(o);var d=k(c,o,l);h(o,n,d?void 0:u)}e.sysLog("sysLog:: invokingWatchers:: Elapsed:: "+(e.timestamp()-t)+"ms:: "+f.size),p.forEach((function(t,r){var i=n.get(r);i&&t.forEach((function(t){var r=t.callback,n=t.dirName;e.isArray(i)?i.forEach(r):r(n)}))}));var m=e.timestamp()-t;e.sysLog("sysLog:: Elapsed:: "+m+"ms:: onTimerToUpdateChildWatches:: "+f.size+" "+r)}function b(t){if(t){var r=t.childWatches;t.childWatches=e.emptyArray;for(var n=0,i=r;n<i.length;n++){var a=i[n];a.close(),b(d.get(g(a.dirName)))}}}function k(t,r,n){var i,a=d.get(r);if(!a)return!1;var l=e.enumerateInsertsAndDeletes(s(t)?e.mapDefined(o(t),(function(r){var i=e.getNormalizedAbsolutePath(r,t);return x(i,n)||0!==m(i,e.normalizePath(c(i)))?void 0:i})):e.emptyArray,a.childWatches,(function(e,t){return m(e,t.dirName)}),(function(e){u(_(e,n))}),e.closeFileWatcher,u);return a.childWatches=i||e.emptyArray,l;function u(e){(i||(i=[])).push(e)}}function x(t,r){return e.some(e.ignoredPaths,(function(r){return function(t,r){return!!e.stringContains(t,r)||!i&&e.stringContains(g(t),r)}(t,r)}))||y(t,r,i,a)}}function h(e){return function(t,r){return e(r===n.Changed?"change":"rename","")}}function y(t,r,n,i){return((null==r?void 0:r.excludeDirectories)||(null==r?void 0:r.excludeFiles))&&(e.matchesExclude(t,null==r?void 0:r.excludeFiles,n,i())||e.matchesExclude(t,null==r?void 0:r.excludeDirectories,n,i()))}function v(t,r,n,i,a){return function(o,s){if("rename"===o){var c=s?e.normalizePath(e.combinePaths(t,s)):t;s&&y(c,n,i,a)||r(c)}}}function b(t){var r,a,o,s=t.pollingWatchFile,c=t.getModifiedTime,l=t.setTimeout,u=t.clearTimeout,f=t.fsWatch,m=t.fileExists,g=t.useCaseSensitiveFileNames,h=t.getCurrentDirectory,y=t.fsSupportsRecursiveFsWatch,b=t.directoryExists,k=t.getAccessibleSortedChildDirectories,x=t.realpath,S=t.tscWatchFile,w=t.useNonPollingWatchers,D=t.tscWatchDirectory;return{watchFile:function(t,r,o,c){c=function(t,r){if(t&&void 0!==t.watchFile)return t;switch(S){case"PriorityPollingInterval":return{watchFile:e.WatchFileKind.PriorityPollingInterval};case"DynamicPriorityPolling":return{watchFile:e.WatchFileKind.DynamicPriorityPolling};case"UseFsEvents":return T(e.WatchFileKind.UseFsEvents,e.PollingWatchKind.PriorityInterval,t);case"UseFsEventsWithFallbackDynamicPolling":return T(e.WatchFileKind.UseFsEvents,e.PollingWatchKind.DynamicPriority,t);case"UseFsEventsOnParentDirectory":r=!0;default:return r?T(e.WatchFileKind.UseFsEventsOnParentDirectory,e.PollingWatchKind.PriorityInterval,t):{watchFile:e.WatchFileKind.FixedPollingInterval}}}(c,w);var l=e.Debug.checkDefined(c.watchFile);switch(l){case e.WatchFileKind.FixedPollingInterval:return s(t,r,i.Low,void 0);case e.WatchFileKind.PriorityPollingInterval:return s(t,r,o,void 0);case e.WatchFileKind.DynamicPriorityPolling:return E()(t,r,o,void 0);case e.WatchFileKind.UseFsEvents:return f(t,0,function(e,t,r){return function(i){t(e,"rename"===i?r(e)?n.Created:n.Deleted:n.Changed)}}(t,r,m),!1,o,e.getFallbackOptions(c));case e.WatchFileKind.UseFsEventsOnParentDirectory:return a||(a=p(f,g)),a(t,r,o,e.getFallbackOptions(c));default:e.Debug.assertNever(l)}},watchDirectory:function(t,r,n,a){if(y)return f(t,1,v(t,r,a,g,h),n,i.Medium,e.getFallbackOptions(a));o||(o=_({useCaseSensitiveFileNames:g,getCurrentDirectory:h,directoryExists:b,getAccessibleSortedChildDirectories:k,watchDirectory:C,realpath:x,setTimeout:l,clearTimeout:u}));return o(t,r,n,a)}};function E(){return r||(r=d({getModifiedTime:c,setTimeout:l}))}function T(e,t,r){var n=null==r?void 0:r.fallbackPolling;return{watchFile:e,fallbackPolling:void 0===n?t:n}}function C(t,r,n,a){e.Debug.assert(!n);var o=function(t){if(t&&void 0!==t.watchDirectory)return t;switch(D){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:e.WatchDirectoryKind.FixedPollingInterval};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:e.WatchDirectoryKind.DynamicPriorityPolling};default:var r=null==t?void 0:t.fallbackPolling;return{watchDirectory:e.WatchDirectoryKind.UseFsEvents,fallbackPolling:void 0!==r?r:void 0}}}(a),c=e.Debug.checkDefined(o.watchDirectory);switch(c){case e.WatchDirectoryKind.FixedPollingInterval:return s(t,(function(){return r(t)}),i.Medium,void 0);case e.WatchDirectoryKind.DynamicPriorityPolling:return E()(t,(function(){return r(t)}),i.Medium,void 0);case e.WatchDirectoryKind.UseFsEvents:return f(t,1,v(t,r,a,g,h),n,i.Medium,e.getFallbackOptions(o));default:e.Debug.assertNever(c)}}}function k(t){var r=t.writeFile;t.writeFile=function(n,i,a){return e.writeFileEnsuringDirectories(n,i,!!a,(function(e,n,i){return r.call(t,e,n,i)}),(function(e){return t.createDirectory(e)}),(function(e){return t.directoryExists(e)}))}}function x(){if("undefined"!=typeof process){var e=process.version;if(e){var t=e.indexOf(".");if(-1!==t)return parseInt(e.substring(1,t))}}}e.unchangedPollThresholds=o(c),e.setCustomPollingValues=u,e.createDynamicPriorityPollingWatchFile=d,e.createSingleFileWatcherPerName=f,e.onWatchedFileStat=m,e.getFileWatcherEventKind=g,e.ignoredPaths=["/node_modules/.","/.git","/.#"],e.sysLog=e.noop,e.setSysLog=function(t){e.sysLog=t},e.createDirectoryWatcherSupportingRecursive=_,function(e){e[e.File=0]="File",e[e.Directory=1]="Directory"}(e.FileSystemEntryKind||(e.FileSystemEntryKind={})),e.createFileWatcherCallback=h,e.createSystemWatchFunctions=b,e.patchWriteFileEnsuringDirectory=k,e.getNodeMajorVersion=x,e.sys=("undefined"!=typeof process&&process.nextTick&&!process.browser&&(s=function(){var i,a,o,s=/^native |^\([^)]+\)$|^(internal[\\/]|[a-zA-Z0-9_\s]+(\.js)?$)/,c=r(79896),l=r(16928),u=r(70857);try{a=r(76982)}catch(e){a=void 0}var d,p="./profile.cpuprofile",m=null!==(i=c.realpathSync.native)&&void 0!==i?i:c.realpathSync,g=r(20181).Buffer,_=x()>=4,y="linux"===process.platform||"darwin"===process.platform,v=u.platform(),k="win32"!==v&&"win64"!==v&&!O((d=__filename,d.replace(/\w/g,(function(e){var t=e.toUpperCase();return e===t?e.toLowerCase():t})))),S=_&&("win32"===process.platform||"darwin"===process.platform),w=e.memoize((function(){return process.cwd()})),D=b({pollingWatchFile:f((function(e,t,r){var i;return c.watchFile(e,{persistent:!0,interval:r},a),{close:function(){return c.unwatchFile(e,a)}};function a(r,a){var o=0==+a.mtime||i===n.Deleted;if(0==+r.mtime){if(o)return;i=n.Deleted}else if(o)i=n.Created;else{if(+r.mtime==+a.mtime)return;i=n.Changed}t(e,i)}}),k),getModifiedTime:L,setTimeout,clearTimeout,fsWatch:function(t,r,i,a,o,s){var l,u,d;y&&(u=t.substr(t.lastIndexOf(e.directorySeparator)),d=u.slice(e.directorySeparator.length));var p=F(t,r)?m():_();return{close:function(){p.close(),p=void 0}};function f(r){e.sysLog("sysLog:: "+t+":: Changing watcher to "+(r===m?"Present":"Missing")+"FileSystemEntryWatcher"),i("rename",""),p&&(p.close(),p=r())}function m(){void 0===l&&(l=S?{persistent:!0,recursive:!!a}:{persistent:!0});try{var r=c.watch(t,l,y?g:i);return r.on("error",(function(){return f(_)})),r}catch(r){return e.sysLog("sysLog:: "+t+":: Changing to fsWatchFile"),E(t,h(i),o,s)}}function g(e,n){return"rename"!==e||n&&n!==d&&(-1===n.lastIndexOf(u)||n.lastIndexOf(u)!==n.length-u.length)||F(t,r)?i(e,n):f(_)}function _(){return E(t,(function(e,i){i===n.Created&&F(t,r)&&f(m)}),o,s)}},useCaseSensitiveFileNames:k,getCurrentDirectory:w,fileExists:O,fsSupportsRecursiveFsWatch:S,directoryExists:R,getAccessibleSortedChildDirectories:function(e){return I(e).directories},realpath:M,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY}),E=D.watchFile,T=D.watchDirectory,C={args:process.argv.slice(2),newLine:u.EOL,useCaseSensitiveFileNames:k,write:function(e){process.stdout.write(e)},writeOutputIsTTY:function(){return process.stdout.isTTY},readFile:function(t,r){e.perfLogger.logStartReadFile(t);var n=function(e,t){var r;try{r=c.readFileSync(e)}catch(e){return}var n=r.length;if(n>=2&&254===r[0]&&255===r[1]){n&=-2;for(var i=0;i<n;i+=2){var a=r[i];r[i]=r[i+1],r[i+1]=a}return r.toString("utf16le",2)}return n>=2&&255===r[0]&&254===r[1]?r.toString("utf16le",2):n>=3&&239===r[0]&&187===r[1]&&191===r[2]?r.toString("utf8",3):r.toString("utf8")}(t);return e.perfLogger.logStopReadFile(),n},writeFile:function(t,r,n){var i;e.perfLogger.logEvent("WriteFile: "+t),n&&(r="\ufeff"+r);try{i=c.openSync(t,"w"),c.writeSync(i,r,void 0,"utf8")}finally{void 0!==i&&c.closeSync(i)}},watchFile:E,watchDirectory:T,resolvePath:function(e){return l.resolve(e)},fileExists:O,directoryExists:R,createDirectory:function(e){if(!C.directoryExists(e))try{c.mkdirSync(e)}catch(e){if("EEXIST"!==e.code)throw e}},getExecutingFilePath:function(){return __filename},getCurrentDirectory:w,getDirectories:function(e){return I(e).directories.slice()},getEnvironmentVariable:function(e){return process.env[e]||""},readDirectory:function(t,r,n,i,a){return e.matchFiles(t,r,n,i,k,process.cwd(),a,I,M)},getModifiedTime:L,setModifiedTime:function(e,t){try{c.utimesSync(e,t,t)}catch(e){return}},deleteFile:function(e){try{return c.unlinkSync(e)}catch(e){return}},createHash:a?j:t,createSHA256Hash:a?j:void 0,getMemoryUsage:function(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize:function(e){try{var t=A(e);if(null==t?void 0:t.isFile())return t.size}catch(e){}return 0},exit:function(e){N((function(){return process.exit(e)}))},enableCPUProfiler:function(e,t){if(o)return t(),!1;var n=r(50264);if(!n||!n.Session)return t(),!1;var i=new n.Session;return i.connect(),i.post("Profiler.enable",(function(){i.post("Profiler.start",(function(){o=i,p=e,t()}))})),!0},disableCPUProfiler:N,cpuProfilingEnabled:function(){return!!o||e.contains(process.execArgv,"--cpu-prof")||e.contains(process.execArgv,"--prof")},realpath:M,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||e.some(process.execArgv,(function(e){return/^--(inspect|debug)(-brk)?(=\d+)?$/i.test(e)})),tryEnableSourceMapsForHost:function(){try{r(92345).install()}catch(e){}},setTimeout,clearTimeout,clearScreen:function(){process.stdout.write("c")},setBlocking:function(){process.stdout&&process.stdout._handle&&process.stdout._handle.setBlocking&&process.stdout._handle.setBlocking(!0)},bufferFrom:P,base64decode:function(e){return P(e,"base64").toString("utf8")},base64encode:function(e){return P(e).toString("base64")},require:function(t,n){try{var i=e.resolveJSModule(n,t,C);return{module:r(89387)(i),modulePath:i,error:void 0}}catch(e){return{module:void 0,modulePath:void 0,error:e}}}};return C;function A(e){return c.statSync(e,{throwIfNoEntry:!1})}function N(t){if(o&&"stopping"!==o){var r=o;return o.post("Profiler.stop",(function(n,i){var a,u=i.profile;if(!n){try{(null===(a=A(p))||void 0===a?void 0:a.isDirectory())&&(p=l.join(p,(new Date).toISOString().replace(/:/g,"-")+"+P"+process.pid+".cpuprofile"))}catch(e){}try{c.mkdirSync(l.dirname(p),{recursive:!0})}catch(e){}c.writeFileSync(p,JSON.stringify(function(t){for(var r=0,n=new e.Map,i=e.normalizeSlashes(__dirname),a="file://"+(1===e.getRootLength(i)?"":"/")+i,o=0,c=t.nodes;o<c.length;o++){var l=c[o];if(l.callFrame.url){var u=e.normalizeSlashes(l.callFrame.url);e.containsPath(a,u,k)?l.callFrame.url=e.getRelativePathToDirectoryOrUrl(a,u,a,e.createGetCanonicalFileName(k),!0):s.test(u)||(l.callFrame.url=(n.has(u)?n:n.set(u,"external"+r+".js")).get(u),r++)}}return t}(u)))}o=void 0,r.disconnect(),t()})),o="stopping",!0}return t(),!1}function P(e,t){return g.from&&g.from!==Int8Array.from?g.from(e,t):new g(e,t)}function I(t){e.perfLogger.logEvent("ReadDir: "+(t||"."));try{for(var r=c.readdirSync(t||".",{withFileTypes:!0}),n=[],i=[],a=0,o=r;a<o.length;a++){var s=o[a],l="string"==typeof s?s:s.name;if("."!==l&&".."!==l){var u=void 0;if("string"==typeof s||s.isSymbolicLink()){var d=e.combinePaths(t,l);try{if(!(u=A(d)))continue}catch(e){continue}}else u=s;u.isFile()?n.push(l):u.isDirectory()&&i.push(l)}}return n.sort(),i.sort(),{files:n,directories:i}}catch(t){return e.emptyFileSystemEntries}}function F(e,t){var r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{var n=A(e);if(!n)return!1;switch(t){case 0:return n.isFile();case 1:return n.isDirectory();default:return!1}}catch(e){return!1}finally{Error.stackTraceLimit=r}}function O(e){return F(e,0)}function R(e){return F(e,1)}function M(e){try{return m(e)}catch(t){return e}}function L(e){var t;try{return null===(t=A(e))||void 0===t?void 0:t.mtime}catch(e){return}}function j(e){var t=a.createHash("sha256");return t.update(e),t.digest("hex")}}()),s&&k(s),s),e.sys&&e.sys.getEnvironmentVariable&&(u(e.sys),e.Debug.setAssertionLevel(/^development$/i.test(e.sys.getEnvironmentVariable("NODE_ENV"))?1:0)),e.sys&&e.sys.debugMode&&(e.Debug.isDebugging=!0)}(d||(d={})),function(e){function t(e,t,r,n,i,a,o){return{code:e,category:t,key:r,message:n,reportsUnnecessary:i,elidedInCompatabilityPyramid:a,reportsDeprecated:o}}e.Diagnostics={Unterminated_string_literal:t(1002,e.DiagnosticCategory.Error,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:t(1003,e.DiagnosticCategory.Error,"Identifier_expected_1003","Identifier expected."),_0_expected:t(1005,e.DiagnosticCategory.Error,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:t(1006,e.DiagnosticCategory.Error,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_to_match_the_token_here:t(1007,e.DiagnosticCategory.Error,"The_parser_expected_to_find_a_to_match_the_token_here_1007","The parser expected to find a '}' to match the '{' token here."),Trailing_comma_not_allowed:t(1009,e.DiagnosticCategory.Error,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:t(1010,e.DiagnosticCategory.Error,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:t(1011,e.DiagnosticCategory.Error,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:t(1012,e.DiagnosticCategory.Error,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:t(1013,e.DiagnosticCategory.Error,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:t(1014,e.DiagnosticCategory.Error,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:t(1015,e.DiagnosticCategory.Error,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:t(1016,e.DiagnosticCategory.Error,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:t(1017,e.DiagnosticCategory.Error,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:t(1018,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:t(1019,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:t(1020,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:t(1021,e.DiagnosticCategory.Error,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:t(1022,e.DiagnosticCategory.Error,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),An_index_signature_parameter_type_must_be_either_string_or_number:t(1023,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_must_be_either_string_or_number_1023","An index signature parameter type must be either 'string' or 'number'."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:t(1024,e.DiagnosticCategory.Error,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:t(1025,e.DiagnosticCategory.Error,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:t(1028,e.DiagnosticCategory.Error,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:t(1029,e.DiagnosticCategory.Error,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:t(1030,e.DiagnosticCategory.Error,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:t(1031,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:t(1034,e.DiagnosticCategory.Error,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:t(1035,e.DiagnosticCategory.Error,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:t(1036,e.DiagnosticCategory.Error,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:t(1038,e.DiagnosticCategory.Error,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:t(1039,e.DiagnosticCategory.Error,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:t(1040,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_with_a_class_declaration:t(1041,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_a_class_declaration_1041","'{0}' modifier cannot be used with a class declaration."),_0_modifier_cannot_be_used_here:t(1042,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_data_property:t(1043,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_data_property_1043","'{0}' modifier cannot appear on a data property."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:t(1044,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),A_0_modifier_cannot_be_used_with_an_interface_declaration:t(1045,e.DiagnosticCategory.Error,"A_0_modifier_cannot_be_used_with_an_interface_declaration_1045","A '{0}' modifier cannot be used with an interface declaration."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:t(1046,e.DiagnosticCategory.Error,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:t(1047,e.DiagnosticCategory.Error,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:t(1048,e.DiagnosticCategory.Error,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:t(1049,e.DiagnosticCategory.Error,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:t(1051,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:t(1052,e.DiagnosticCategory.Error,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:t(1053,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:t(1054,e.DiagnosticCategory.Error,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:t(1055,e.DiagnosticCategory.Error,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Prom_1055","Type '{0}' is not a valid async function return type in ES5/ES3 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:t(1056,e.DiagnosticCategory.Error,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),An_async_function_or_method_must_have_a_valid_awaitable_return_type:t(1057,e.DiagnosticCategory.Error,"An_async_function_or_method_must_have_a_valid_awaitable_return_type_1057","An async function or method must have a valid awaitable return type."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1058,e.DiagnosticCategory.Error,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:t(1059,e.DiagnosticCategory.Error,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:t(1060,e.DiagnosticCategory.Error,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:t(1061,e.DiagnosticCategory.Error,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:t(1062,e.DiagnosticCategory.Error,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:t(1063,e.DiagnosticCategory.Error,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:t(1064,e.DiagnosticCategory.Error,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise<T> type. Did you mean to write 'Promise<{0}>'?"),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:t(1066,e.DiagnosticCategory.Error,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:t(1068,e.DiagnosticCategory.Error,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:t(1069,e.DiagnosticCategory.Error,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:t(1070,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:t(1071,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:t(1079,e.DiagnosticCategory.Error,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:t(1084,e.DiagnosticCategory.Error,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:t(1085,e.DiagnosticCategory.Error,"Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0_1085","Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '{0}'."),_0_modifier_cannot_appear_on_a_constructor_declaration:t(1089,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:t(1090,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:t(1091,e.DiagnosticCategory.Error,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:t(1092,e.DiagnosticCategory.Error,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:t(1093,e.DiagnosticCategory.Error,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:t(1094,e.DiagnosticCategory.Error,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:t(1095,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:t(1096,e.DiagnosticCategory.Error,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:t(1097,e.DiagnosticCategory.Error,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:t(1098,e.DiagnosticCategory.Error,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:t(1099,e.DiagnosticCategory.Error,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:t(1100,e.DiagnosticCategory.Error,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:t(1101,e.DiagnosticCategory.Error,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:t(1102,e.DiagnosticCategory.Error,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:t(1103,e.DiagnosticCategory.Error,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:t(1104,e.DiagnosticCategory.Error,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:t(1105,e.DiagnosticCategory.Error,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),Jump_target_cannot_cross_function_boundary:t(1107,e.DiagnosticCategory.Error,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:t(1108,e.DiagnosticCategory.Error,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:t(1109,e.DiagnosticCategory.Error,"Expression_expected_1109","Expression expected."),Type_expected:t(1110,e.DiagnosticCategory.Error,"Type_expected_1110","Type expected."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:t(1113,e.DiagnosticCategory.Error,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:t(1114,e.DiagnosticCategory.Error,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:t(1115,e.DiagnosticCategory.Error,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:t(1116,e.DiagnosticCategory.Error,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode:t(1117,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode_1117","An object literal cannot have multiple properties with the same name in strict mode."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:t(1118,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:t(1119,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:t(1120,e.DiagnosticCategory.Error,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_in_strict_mode:t(1121,e.DiagnosticCategory.Error,"Octal_literals_are_not_allowed_in_strict_mode_1121","Octal literals are not allowed in strict mode."),Variable_declaration_list_cannot_be_empty:t(1123,e.DiagnosticCategory.Error,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:t(1124,e.DiagnosticCategory.Error,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:t(1125,e.DiagnosticCategory.Error,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:t(1126,e.DiagnosticCategory.Error,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:t(1127,e.DiagnosticCategory.Error,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:t(1128,e.DiagnosticCategory.Error,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:t(1129,e.DiagnosticCategory.Error,"Statement_expected_1129","Statement expected."),case_or_default_expected:t(1130,e.DiagnosticCategory.Error,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:t(1131,e.DiagnosticCategory.Error,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:t(1132,e.DiagnosticCategory.Error,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:t(1134,e.DiagnosticCategory.Error,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:t(1135,e.DiagnosticCategory.Error,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:t(1136,e.DiagnosticCategory.Error,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:t(1137,e.DiagnosticCategory.Error,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:t(1138,e.DiagnosticCategory.Error,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:t(1139,e.DiagnosticCategory.Error,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:t(1140,e.DiagnosticCategory.Error,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:t(1141,e.DiagnosticCategory.Error,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:t(1142,e.DiagnosticCategory.Error,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:t(1144,e.DiagnosticCategory.Error,"or_expected_1144","'{' or ';' expected."),Declaration_expected:t(1146,e.DiagnosticCategory.Error,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:t(1147,e.DiagnosticCategory.Error,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:t(1148,e.DiagnosticCategory.Error,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:t(1149,e.DiagnosticCategory.Error,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),const_declarations_must_be_initialized:t(1155,e.DiagnosticCategory.Error,"const_declarations_must_be_initialized_1155","'const' declarations must be initialized."),const_declarations_can_only_be_declared_inside_a_block:t(1156,e.DiagnosticCategory.Error,"const_declarations_can_only_be_declared_inside_a_block_1156","'const' declarations can only be declared inside a block."),let_declarations_can_only_be_declared_inside_a_block:t(1157,e.DiagnosticCategory.Error,"let_declarations_can_only_be_declared_inside_a_block_1157","'let' declarations can only be declared inside a block."),Unterminated_template_literal:t(1160,e.DiagnosticCategory.Error,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:t(1161,e.DiagnosticCategory.Error,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:t(1162,e.DiagnosticCategory.Error,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:t(1163,e.DiagnosticCategory.Error,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:t(1164,e.DiagnosticCategory.Error,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1165,e.DiagnosticCategory.Error,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1166,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_1166","A computed property name in a class property declaration must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1168,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1169,e.DiagnosticCategory.Error,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1170,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:t(1171,e.DiagnosticCategory.Error,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:t(1172,e.DiagnosticCategory.Error,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:t(1173,e.DiagnosticCategory.Error,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:t(1174,e.DiagnosticCategory.Error,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:t(1175,e.DiagnosticCategory.Error,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:t(1176,e.DiagnosticCategory.Error,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:t(1177,e.DiagnosticCategory.Error,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:t(1178,e.DiagnosticCategory.Error,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:t(1179,e.DiagnosticCategory.Error,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:t(1180,e.DiagnosticCategory.Error,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:t(1181,e.DiagnosticCategory.Error,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:t(1182,e.DiagnosticCategory.Error,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:t(1183,e.DiagnosticCategory.Error,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:t(1184,e.DiagnosticCategory.Error,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:t(1185,e.DiagnosticCategory.Error,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:t(1186,e.DiagnosticCategory.Error,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:t(1187,e.DiagnosticCategory.Error,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:t(1188,e.DiagnosticCategory.Error,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:t(1189,e.DiagnosticCategory.Error,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:t(1190,e.DiagnosticCategory.Error,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:t(1191,e.DiagnosticCategory.Error,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:t(1192,e.DiagnosticCategory.Error,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:t(1193,e.DiagnosticCategory.Error,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:t(1194,e.DiagnosticCategory.Error,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:t(1195,e.DiagnosticCategory.Error,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:t(1196,e.DiagnosticCategory.Error,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:t(1197,e.DiagnosticCategory.Error,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:t(1198,e.DiagnosticCategory.Error,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:t(1199,e.DiagnosticCategory.Error,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:t(1200,e.DiagnosticCategory.Error,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:t(1202,e.DiagnosticCategory.Error,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202","Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from \"mod\"', 'import {a} from \"mod\"', 'import d from \"mod\"', or another module format instead."),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:t(1203,e.DiagnosticCategory.Error,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type:t(1205,e.DiagnosticCategory.Error,"Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type_1205","Re-exporting a type when the '--isolatedModules' flag is provided requires using 'export type'."),Decorators_are_not_valid_here:t(1206,e.DiagnosticCategory.Error,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:t(1207,e.DiagnosticCategory.Error,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),_0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_import_export_or_an_empty_export_statement_to_make_it_a_module:t(1208,e.DiagnosticCategory.Error,"_0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_imp_1208","'{0}' cannot be compiled under '--isolatedModules' because it is considered a global script file. Add an import, export, or an empty 'export {}' statement to make it a module."),Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode:t(1210,e.DiagnosticCategory.Error,"Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode_1210","Invalid use of '{0}'. Class definitions are automatically in strict mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:t(1211,e.DiagnosticCategory.Error,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:t(1212,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:t(1213,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:t(1214,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:t(1215,e.DiagnosticCategory.Error,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:t(1216,e.DiagnosticCategory.Error,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:t(1218,e.DiagnosticCategory.Error,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning:t(1219,e.DiagnosticCategory.Error,"Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_t_1219","Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option in your 'tsconfig' or 'jsconfig' to remove this warning."),Generators_are_only_available_when_targeting_ECMAScript_2015_or_higher:t(1220,e.DiagnosticCategory.Error,"Generators_are_only_available_when_targeting_ECMAScript_2015_or_higher_1220","Generators are only available when targeting ECMAScript 2015 or higher."),Generators_are_not_allowed_in_an_ambient_context:t(1221,e.DiagnosticCategory.Error,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:t(1222,e.DiagnosticCategory.Error,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:t(1223,e.DiagnosticCategory.Error,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:t(1224,e.DiagnosticCategory.Error,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:t(1225,e.DiagnosticCategory.Error,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:t(1226,e.DiagnosticCategory.Error,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:t(1227,e.DiagnosticCategory.Error,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:t(1228,e.DiagnosticCategory.Error,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:t(1229,e.DiagnosticCategory.Error,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:t(1230,e.DiagnosticCategory.Error,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_can_only_be_used_in_a_module:t(1231,e.DiagnosticCategory.Error,"An_export_assignment_can_only_be_used_in_a_module_1231","An export assignment can only be used in a module."),An_import_declaration_can_only_be_used_in_a_namespace_or_module:t(1232,e.DiagnosticCategory.Error,"An_import_declaration_can_only_be_used_in_a_namespace_or_module_1232","An import declaration can only be used in a namespace or module."),An_export_declaration_can_only_be_used_in_a_module:t(1233,e.DiagnosticCategory.Error,"An_export_declaration_can_only_be_used_in_a_module_1233","An export declaration can only be used in a module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:t(1234,e.DiagnosticCategory.Error,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_in_a_namespace_or_module:t(1235,e.DiagnosticCategory.Error,"A_namespace_declaration_is_only_allowed_in_a_namespace_or_module_1235","A namespace declaration is only allowed in a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:t(1236,e.DiagnosticCategory.Error,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:t(1237,e.DiagnosticCategory.Error,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:t(1238,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:t(1239,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:t(1240,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:t(1241,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:t(1242,e.DiagnosticCategory.Error,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:t(1243,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:t(1244,e.DiagnosticCategory.Error,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:t(1245,e.DiagnosticCategory.Error,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:t(1246,e.DiagnosticCategory.Error,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:t(1247,e.DiagnosticCategory.Error,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:t(1248,e.DiagnosticCategory.Error,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:t(1249,e.DiagnosticCategory.Error,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5:t(1250,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:t(1251,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_d_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:t(1252,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Modules are automatically in strict mode."),_0_tag_cannot_be_used_independently_as_a_top_level_JSDoc_tag:t(1253,e.DiagnosticCategory.Error,"_0_tag_cannot_be_used_independently_as_a_top_level_JSDoc_tag_1253","'{0}' tag cannot be used independently as a top level JSDoc tag."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:t(1254,e.DiagnosticCategory.Error,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:t(1255,e.DiagnosticCategory.Error,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:t(1257,e.DiagnosticCategory.Error,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),Module_0_can_only_be_default_imported_using_the_1_flag:t(1259,e.DiagnosticCategory.Error,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:t(1260,e.DiagnosticCategory.Error,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:t(1261,e.DiagnosticCategory.Error,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:t(1262,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:t(1263,e.DiagnosticCategory.Error,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:t(1264,e.DiagnosticCategory.Error,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:t(1265,e.DiagnosticCategory.Error,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:t(1266,e.DiagnosticCategory.Error,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),with_statements_are_not_allowed_in_an_async_function_block:t(1300,e.DiagnosticCategory.Error,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:t(1308,e.DiagnosticCategory.Error,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:t(1312,e.DiagnosticCategory.Error,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:t(1313,e.DiagnosticCategory.Error,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:t(1314,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:t(1315,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:t(1316,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:t(1317,e.DiagnosticCategory.Error,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:t(1318,e.DiagnosticCategory.Error,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:t(1319,e.DiagnosticCategory.Error,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1320,e.DiagnosticCategory.Error,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1321,e.DiagnosticCategory.Error,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1322,e.DiagnosticCategory.Error,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_esnext_commonjs_amd_system_or_umd:t(1323,e.DiagnosticCategory.Error,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_esnext_commonjs_amd_system__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'esnext', 'commonjs', 'amd', 'system', or 'umd'."),Dynamic_import_must_have_one_specifier_as_an_argument:t(1324,e.DiagnosticCategory.Error,"Dynamic_import_must_have_one_specifier_as_an_argument_1324","Dynamic import must have one specifier as an argument."),Specifier_of_dynamic_import_cannot_be_spread_element:t(1325,e.DiagnosticCategory.Error,"Specifier_of_dynamic_import_cannot_be_spread_element_1325","Specifier of dynamic import cannot be spread element."),Dynamic_import_cannot_have_type_arguments:t(1326,e.DiagnosticCategory.Error,"Dynamic_import_cannot_have_type_arguments_1326","Dynamic import cannot have type arguments."),String_literal_with_double_quotes_expected:t(1327,e.DiagnosticCategory.Error,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:t(1328,e.DiagnosticCategory.Error,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:t(1329,e.DiagnosticCategory.Error,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:t(1330,e.DiagnosticCategory.Error,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:t(1331,e.DiagnosticCategory.Error,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:t(1332,e.DiagnosticCategory.Error,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:t(1333,e.DiagnosticCategory.Error,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:t(1334,e.DiagnosticCategory.Error,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:t(1335,e.DiagnosticCategory.Error,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead:t(1336,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead_1336","An index signature parameter type cannot be a type alias. Consider writing '[{0}: {1}]: {2}' instead."),An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead:t(1337,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead_1337","An index signature parameter type cannot be a union type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:t(1338,e.DiagnosticCategory.Error,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:t(1339,e.DiagnosticCategory.Error,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:t(1340,e.DiagnosticCategory.Error,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Type_arguments_cannot_be_used_here:t(1342,e.DiagnosticCategory.Error,"Type_arguments_cannot_be_used_here_1342","Type arguments cannot be used here."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_esnext_or_system:t(1343,e.DiagnosticCategory.Error,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_esnext_or_system_1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'esnext', or 'system'."),A_label_is_not_allowed_here:t(1344,e.DiagnosticCategory.Error,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:t(1345,e.DiagnosticCategory.Error,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:t(1346,e.DiagnosticCategory.Error,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:t(1347,e.DiagnosticCategory.Error,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:t(1348,e.DiagnosticCategory.Error,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:t(1349,e.DiagnosticCategory.Error,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:t(1350,e.DiagnosticCategory.Message,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:t(1351,e.DiagnosticCategory.Error,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:t(1352,e.DiagnosticCategory.Error,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:t(1353,e.DiagnosticCategory.Error,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:t(1354,e.DiagnosticCategory.Error,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:t(1355,e.DiagnosticCategory.Error,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:t(1356,e.DiagnosticCategory.Error,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:t(1357,e.DiagnosticCategory.Error,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:t(1358,e.DiagnosticCategory.Error,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:t(1359,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Did_you_mean_to_parenthesize_this_function_type:t(1360,e.DiagnosticCategory.Error,"Did_you_mean_to_parenthesize_this_function_type_1360","Did you mean to parenthesize this function type?"),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:t(1361,e.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:t(1362,e.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:t(1363,e.DiagnosticCategory.Error,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:t(1364,e.DiagnosticCategory.Message,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:t(1365,e.DiagnosticCategory.Message,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:t(1366,e.DiagnosticCategory.Message,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:t(1367,e.DiagnosticCategory.Message,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:t(1368,e.DiagnosticCategory.Message,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_1368","Specify emit/checking behavior for imports that are only used for types"),Did_you_mean_0:t(1369,e.DiagnosticCategory.Message,"Did_you_mean_0_1369","Did you mean '{0}'?"),This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error:t(1371,e.DiagnosticCategory.Error,"This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set__1371","This import is never used as a value and must use 'import type' because 'importsNotUsedAsValues' is set to 'error'."),Convert_to_type_only_import:t(1373,e.DiagnosticCategory.Message,"Convert_to_type_only_import_1373","Convert to type-only import"),Convert_all_imports_not_used_as_a_value_to_type_only_imports:t(1374,e.DiagnosticCategory.Message,"Convert_all_imports_not_used_as_a_value_to_type_only_imports_1374","Convert all imports not used as a value to type-only imports"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:t(1375,e.DiagnosticCategory.Error,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:t(1376,e.DiagnosticCategory.Message,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:t(1377,e.DiagnosticCategory.Message,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher:t(1378,e.DiagnosticCategory.Error,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_t_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'esnext' or 'system', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:t(1379,e.DiagnosticCategory.Error,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:t(1380,e.DiagnosticCategory.Error,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:t(1381,e.DiagnosticCategory.Error,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:t(1382,e.DiagnosticCategory.Error,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Only_named_exports_may_use_export_type:t(1383,e.DiagnosticCategory.Error,"Only_named_exports_may_use_export_type_1383","Only named exports may use 'export type'."),A_new_expression_with_type_arguments_must_always_be_followed_by_a_parenthesized_argument_list:t(1384,e.DiagnosticCategory.Error,"A_new_expression_with_type_arguments_must_always_be_followed_by_a_parenthesized_argument_list_1384","A 'new' expression with type arguments must always be followed by a parenthesized argument list."),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:t(1385,e.DiagnosticCategory.Error,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:t(1386,e.DiagnosticCategory.Error,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:t(1387,e.DiagnosticCategory.Error,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:t(1388,e.DiagnosticCategory.Error,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:t(1389,e.DiagnosticCategory.Error,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),Provides_a_root_package_name_when_using_outFile_with_declarations:t(1390,e.DiagnosticCategory.Message,"Provides_a_root_package_name_when_using_outFile_with_declarations_1390","Provides a root package name when using outFile with declarations."),The_bundledPackageName_option_must_be_provided_when_using_outFile_and_node_module_resolution_with_declaration_emit:t(1391,e.DiagnosticCategory.Error,"The_bundledPackageName_option_must_be_provided_when_using_outFile_and_node_module_resolution_with_de_1391","The `bundledPackageName` option must be provided when using outFile and node module resolution with declaration emit."),An_import_alias_cannot_use_import_type:t(1392,e.DiagnosticCategory.Error,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:t(1393,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:t(1394,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:t(1395,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:t(1396,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:t(1397,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:t(1398,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:t(1399,e.DiagnosticCategory.Message,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:t(1400,e.DiagnosticCategory.Message,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:t(1401,e.DiagnosticCategory.Message,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:t(1402,e.DiagnosticCategory.Message,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:t(1403,e.DiagnosticCategory.Message,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:t(1404,e.DiagnosticCategory.Message,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:t(1405,e.DiagnosticCategory.Message,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:t(1406,e.DiagnosticCategory.Message,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:t(1407,e.DiagnosticCategory.Message,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:t(1408,e.DiagnosticCategory.Message,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:t(1409,e.DiagnosticCategory.Message,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:t(1410,e.DiagnosticCategory.Message,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:t(1411,e.DiagnosticCategory.Message,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:t(1412,e.DiagnosticCategory.Message,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:t(1413,e.DiagnosticCategory.Message,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:t(1414,e.DiagnosticCategory.Message,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:t(1415,e.DiagnosticCategory.Message,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:t(1416,e.DiagnosticCategory.Message,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:t(1417,e.DiagnosticCategory.Message,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:t(1418,e.DiagnosticCategory.Message,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:t(1419,e.DiagnosticCategory.Message,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:t(1420,e.DiagnosticCategory.Message,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:t(1421,e.DiagnosticCategory.Message,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:t(1422,e.DiagnosticCategory.Message,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:t(1423,e.DiagnosticCategory.Message,"File_is_library_specified_here_1423","File is library specified here."),Default_library:t(1424,e.DiagnosticCategory.Message,"Default_library_1424","Default library"),Default_library_for_target_0:t(1425,e.DiagnosticCategory.Message,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:t(1426,e.DiagnosticCategory.Message,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:t(1427,e.DiagnosticCategory.Message,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:t(1428,e.DiagnosticCategory.Message,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:t(1429,e.DiagnosticCategory.Message,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:t(1430,e.DiagnosticCategory.Message,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:t(1431,e.DiagnosticCategory.Error,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher:t(1432,e.DiagnosticCategory.Error,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'esnext' or 'system', and the 'target' option is set to 'es2017' or higher."),The_types_of_0_are_incompatible_between_these_types:t(2200,e.DiagnosticCategory.Error,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:t(2201,e.DiagnosticCategory.Error,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:t(2202,e.DiagnosticCategory.Error,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:t(2203,e.DiagnosticCategory.Error,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:t(2204,e.DiagnosticCategory.Error,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:t(2205,e.DiagnosticCategory.Error,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Duplicate_identifier_0:t(2300,e.DiagnosticCategory.Error,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:t(2301,e.DiagnosticCategory.Error,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:t(2302,e.DiagnosticCategory.Error,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:t(2303,e.DiagnosticCategory.Error,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:t(2304,e.DiagnosticCategory.Error,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:t(2305,e.DiagnosticCategory.Error,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:t(2306,e.DiagnosticCategory.Error,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:t(2307,e.DiagnosticCategory.Error,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:t(2308,e.DiagnosticCategory.Error,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:t(2309,e.DiagnosticCategory.Error,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:t(2310,e.DiagnosticCategory.Error,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),A_class_may_only_extend_another_class:t(2311,e.DiagnosticCategory.Error,"A_class_may_only_extend_another_class_2311","A class may only extend another class."),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:t(2312,e.DiagnosticCategory.Error,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:t(2313,e.DiagnosticCategory.Error,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:t(2314,e.DiagnosticCategory.Error,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:t(2315,e.DiagnosticCategory.Error,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:t(2316,e.DiagnosticCategory.Error,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:t(2317,e.DiagnosticCategory.Error,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:t(2318,e.DiagnosticCategory.Error,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:t(2319,e.DiagnosticCategory.Error,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:t(2320,e.DiagnosticCategory.Error,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:t(2321,e.DiagnosticCategory.Error,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:t(2322,e.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:t(2323,e.DiagnosticCategory.Error,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:t(2324,e.DiagnosticCategory.Error,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:t(2325,e.DiagnosticCategory.Error,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:t(2326,e.DiagnosticCategory.Error,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:t(2327,e.DiagnosticCategory.Error,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:t(2328,e.DiagnosticCategory.Error,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_is_missing_in_type_0:t(2329,e.DiagnosticCategory.Error,"Index_signature_is_missing_in_type_0_2329","Index signature is missing in type '{0}'."),Index_signatures_are_incompatible:t(2330,e.DiagnosticCategory.Error,"Index_signatures_are_incompatible_2330","Index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:t(2331,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:t(2332,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_constructor_arguments:t(2333,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_constructor_arguments_2333","'this' cannot be referenced in constructor arguments."),this_cannot_be_referenced_in_a_static_property_initializer:t(2334,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:t(2335,e.DiagnosticCategory.Error,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:t(2336,e.DiagnosticCategory.Error,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:t(2337,e.DiagnosticCategory.Error,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:t(2338,e.DiagnosticCategory.Error,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:t(2339,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:t(2340,e.DiagnosticCategory.Error,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:t(2341,e.DiagnosticCategory.Error,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),An_index_expression_argument_must_be_of_type_string_number_symbol_or_any:t(2342,e.DiagnosticCategory.Error,"An_index_expression_argument_must_be_of_type_string_number_symbol_or_any_2342","An index expression argument must be of type 'string', 'number', 'symbol', or 'any'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:t(2343,e.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:t(2344,e.DiagnosticCategory.Error,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:t(2345,e.DiagnosticCategory.Error,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Call_target_does_not_contain_any_signatures:t(2346,e.DiagnosticCategory.Error,"Call_target_does_not_contain_any_signatures_2346","Call target does not contain any signatures."),Untyped_function_calls_may_not_accept_type_arguments:t(2347,e.DiagnosticCategory.Error,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:t(2348,e.DiagnosticCategory.Error,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:t(2349,e.DiagnosticCategory.Error,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:t(2350,e.DiagnosticCategory.Error,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:t(2351,e.DiagnosticCategory.Error,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:t(2352,e.DiagnosticCategory.Error,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:t(2353,e.DiagnosticCategory.Error,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:t(2354,e.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value:t(2355,e.DiagnosticCategory.Error,"A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'void' nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:t(2356,e.DiagnosticCategory.Error,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:t(2357,e.DiagnosticCategory.Error,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:t(2358,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type:t(2359,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_F_2359","The right-hand side of an 'instanceof' expression must be of type 'any' or of a type assignable to the 'Function' interface type."),The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol:t(2360,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol_2360","The left-hand side of an 'in' expression must be of type 'any', 'string', 'number', or 'symbol'."),The_right_hand_side_of_an_in_expression_must_not_be_a_primitive:t(2361,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_in_expression_must_not_be_a_primitive_2361","The right-hand side of an 'in' expression must not be a primitive."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:t(2362,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:t(2363,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:t(2364,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:t(2365,e.DiagnosticCategory.Error,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:t(2366,e.DiagnosticCategory.Error,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap:t(2367,e.DiagnosticCategory.Error,"This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap_2367","This condition will always return '{0}' since the types '{1}' and '{2}' have no overlap."),Type_parameter_name_cannot_be_0:t(2368,e.DiagnosticCategory.Error,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:t(2369,e.DiagnosticCategory.Error,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:t(2370,e.DiagnosticCategory.Error,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:t(2371,e.DiagnosticCategory.Error,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:t(2372,e.DiagnosticCategory.Error,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:t(2373,e.DiagnosticCategory.Error,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_string_index_signature:t(2374,e.DiagnosticCategory.Error,"Duplicate_string_index_signature_2374","Duplicate string index signature."),Duplicate_number_index_signature:t(2375,e.DiagnosticCategory.Error,"Duplicate_number_index_signature_2375","Duplicate number index signature."),A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_properties_parameter_properties_or_private_identifiers:t(2376,e.DiagnosticCategory.Error,"A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_proper_2376","A 'super' call must be the first statement in the constructor when a class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:t(2377,e.DiagnosticCategory.Error,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:t(2378,e.DiagnosticCategory.Error,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Getter_and_setter_accessors_do_not_agree_in_visibility:t(2379,e.DiagnosticCategory.Error,"Getter_and_setter_accessors_do_not_agree_in_visibility_2379","Getter and setter accessors do not agree in visibility."),get_and_set_accessor_must_have_the_same_type:t(2380,e.DiagnosticCategory.Error,"get_and_set_accessor_must_have_the_same_type_2380","'get' and 'set' accessor must have the same type."),A_signature_with_an_implementation_cannot_use_a_string_literal_type:t(2381,e.DiagnosticCategory.Error,"A_signature_with_an_implementation_cannot_use_a_string_literal_type_2381","A signature with an implementation cannot use a string literal type."),Specialized_overload_signature_is_not_assignable_to_any_non_specialized_signature:t(2382,e.DiagnosticCategory.Error,"Specialized_overload_signature_is_not_assignable_to_any_non_specialized_signature_2382","Specialized overload signature is not assignable to any non-specialized signature."),Overload_signatures_must_all_be_exported_or_non_exported:t(2383,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:t(2384,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:t(2385,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:t(2386,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:t(2387,e.DiagnosticCategory.Error,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:t(2388,e.DiagnosticCategory.Error,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:t(2389,e.DiagnosticCategory.Error,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:t(2390,e.DiagnosticCategory.Error,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:t(2391,e.DiagnosticCategory.Error,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:t(2392,e.DiagnosticCategory.Error,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:t(2393,e.DiagnosticCategory.Error,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:t(2394,e.DiagnosticCategory.Error,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:t(2395,e.DiagnosticCategory.Error,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:t(2396,e.DiagnosticCategory.Error,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:t(2397,e.DiagnosticCategory.Error,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:t(2398,e.DiagnosticCategory.Error,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:t(2399,e.DiagnosticCategory.Error,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:t(2400,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),Duplicate_identifier_super_Compiler_uses_super_to_capture_base_class_reference:t(2401,e.DiagnosticCategory.Error,"Duplicate_identifier_super_Compiler_uses_super_to_capture_base_class_reference_2401","Duplicate identifier '_super'. Compiler uses '_super' to capture base class reference."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:t(2402,e.DiagnosticCategory.Error,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:t(2403,e.DiagnosticCategory.Error,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:t(2404,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:t(2405,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:t(2406,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:t(2407,e.DiagnosticCategory.Error,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:t(2408,e.DiagnosticCategory.Error,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:t(2409,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:t(2410,e.DiagnosticCategory.Error,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Property_0_of_type_1_is_not_assignable_to_string_index_type_2:t(2411,e.DiagnosticCategory.Error,"Property_0_of_type_1_is_not_assignable_to_string_index_type_2_2411","Property '{0}' of type '{1}' is not assignable to string index type '{2}'."),Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2:t(2412,e.DiagnosticCategory.Error,"Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2_2412","Property '{0}' of type '{1}' is not assignable to numeric index type '{2}'."),Numeric_index_type_0_is_not_assignable_to_string_index_type_1:t(2413,e.DiagnosticCategory.Error,"Numeric_index_type_0_is_not_assignable_to_string_index_type_1_2413","Numeric index type '{0}' is not assignable to string index type '{1}'."),Class_name_cannot_be_0:t(2414,e.DiagnosticCategory.Error,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:t(2415,e.DiagnosticCategory.Error,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:t(2416,e.DiagnosticCategory.Error,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:t(2417,e.DiagnosticCategory.Error,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:t(2418,e.DiagnosticCategory.Error,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:t(2419,e.DiagnosticCategory.Error,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:t(2420,e.DiagnosticCategory.Error,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:t(2422,e.DiagnosticCategory.Error,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:t(2423,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:t(2425,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:t(2426,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:t(2427,e.DiagnosticCategory.Error,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:t(2428,e.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:t(2430,e.DiagnosticCategory.Error,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:t(2431,e.DiagnosticCategory.Error,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:t(2432,e.DiagnosticCategory.Error,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:t(2433,e.DiagnosticCategory.Error,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:t(2434,e.DiagnosticCategory.Error,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:t(2435,e.DiagnosticCategory.Error,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:t(2436,e.DiagnosticCategory.Error,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:t(2437,e.DiagnosticCategory.Error,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:t(2438,e.DiagnosticCategory.Error,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:t(2439,e.DiagnosticCategory.Error,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:t(2440,e.DiagnosticCategory.Error,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:t(2441,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:t(2442,e.DiagnosticCategory.Error,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:t(2443,e.DiagnosticCategory.Error,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:t(2444,e.DiagnosticCategory.Error,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:t(2445,e.DiagnosticCategory.Error,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1:t(2446,e.DiagnosticCategory.Error,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:t(2447,e.DiagnosticCategory.Error,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:t(2448,e.DiagnosticCategory.Error,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:t(2449,e.DiagnosticCategory.Error,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:t(2450,e.DiagnosticCategory.Error,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:t(2451,e.DiagnosticCategory.Error,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:t(2452,e.DiagnosticCategory.Error,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),The_type_argument_for_type_parameter_0_cannot_be_inferred_from_the_usage_Consider_specifying_the_type_arguments_explicitly:t(2453,e.DiagnosticCategory.Error,"The_type_argument_for_type_parameter_0_cannot_be_inferred_from_the_usage_Consider_specifying_the_typ_2453","The type argument for type parameter '{0}' cannot be inferred from the usage. Consider specifying the type arguments explicitly."),Variable_0_is_used_before_being_assigned:t(2454,e.DiagnosticCategory.Error,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_argument_candidate_1_is_not_a_valid_type_argument_because_it_is_not_a_supertype_of_candidate_0:t(2455,e.DiagnosticCategory.Error,"Type_argument_candidate_1_is_not_a_valid_type_argument_because_it_is_not_a_supertype_of_candidate_0_2455","Type argument candidate '{1}' is not a valid type argument because it is not a supertype of candidate '{0}'."),Type_alias_0_circularly_references_itself:t(2456,e.DiagnosticCategory.Error,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:t(2457,e.DiagnosticCategory.Error,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:t(2458,e.DiagnosticCategory.Error,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:t(2459,e.DiagnosticCategory.Error,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:t(2460,e.DiagnosticCategory.Error,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:t(2461,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:t(2462,e.DiagnosticCategory.Error,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:t(2463,e.DiagnosticCategory.Error,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:t(2464,e.DiagnosticCategory.Error,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:t(2465,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:t(2466,e.DiagnosticCategory.Error,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:t(2467,e.DiagnosticCategory.Error,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:t(2468,e.DiagnosticCategory.Error,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:t(2469,e.DiagnosticCategory.Error,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object:t(2470,e.DiagnosticCategory.Error,"Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object_2470","'Symbol' reference does not refer to the global Symbol constructor object."),A_computed_property_name_of_the_form_0_must_be_of_type_symbol:t(2471,e.DiagnosticCategory.Error,"A_computed_property_name_of_the_form_0_must_be_of_type_symbol_2471","A computed property name of the form '{0}' must be of type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:t(2472,e.DiagnosticCategory.Error,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:t(2473,e.DiagnosticCategory.Error,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values:t(2474,e.DiagnosticCategory.Error,"const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values_2474","const enum member initializers can only contain literal values and other computed enum values."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:t(2475,e.DiagnosticCategory.Error,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:t(2476,e.DiagnosticCategory.Error,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:t(2477,e.DiagnosticCategory.Error,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:t(2478,e.DiagnosticCategory.Error,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),Property_0_does_not_exist_on_const_enum_1:t(2479,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_const_enum_1_2479","Property '{0}' does not exist on 'const' enum '{1}'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:t(2480,e.DiagnosticCategory.Error,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:t(2481,e.DiagnosticCategory.Error,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:t(2483,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:t(2484,e.DiagnosticCategory.Error,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:t(2487,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:t(2488,e.DiagnosticCategory.Error,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:t(2489,e.DiagnosticCategory.Error,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:t(2490,e.DiagnosticCategory.Error,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:t(2491,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:t(2492,e.DiagnosticCategory.Error,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:t(2493,e.DiagnosticCategory.Error,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:t(2494,e.DiagnosticCategory.Error,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:t(2495,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression:t(2496,e.DiagnosticCategory.Error,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_stand_2496","The 'arguments' object cannot be referenced in an arrow function in ES3 and ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:t(2497,e.DiagnosticCategory.Error,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:t(2498,e.DiagnosticCategory.Error,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:t(2499,e.DiagnosticCategory.Error,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:t(2500,e.DiagnosticCategory.Error,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:t(2501,e.DiagnosticCategory.Error,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:t(2502,e.DiagnosticCategory.Error,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:t(2503,e.DiagnosticCategory.Error,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:t(2504,e.DiagnosticCategory.Error,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:t(2505,e.DiagnosticCategory.Error,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:t(2506,e.DiagnosticCategory.Error,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:t(2507,e.DiagnosticCategory.Error,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:t(2508,e.DiagnosticCategory.Error,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:t(2509,e.DiagnosticCategory.Error,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:t(2510,e.DiagnosticCategory.Error,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:t(2511,e.DiagnosticCategory.Error,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:t(2512,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:t(2513,e.DiagnosticCategory.Error,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),Classes_containing_abstract_methods_must_be_marked_abstract:t(2514,e.DiagnosticCategory.Error,"Classes_containing_abstract_methods_must_be_marked_abstract_2514","Classes containing abstract methods must be marked abstract."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:t(2515,e.DiagnosticCategory.Error,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member '{1}' from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:t(2516,e.DiagnosticCategory.Error,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:t(2517,e.DiagnosticCategory.Error,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:t(2518,e.DiagnosticCategory.Error,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:t(2519,e.DiagnosticCategory.Error,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:t(2520,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),Expression_resolves_to_variable_declaration_0_that_compiler_uses_to_support_async_functions:t(2521,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_0_that_compiler_uses_to_support_async_functions_2521","Expression resolves to variable declaration '{0}' that compiler uses to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method:t(2522,e.DiagnosticCategory.Error,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_usi_2522","The 'arguments' object cannot be referenced in an async function or method in ES3 and ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:t(2523,e.DiagnosticCategory.Error,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:t(2524,e.DiagnosticCategory.Error,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value:t(2525,e.DiagnosticCategory.Error,"Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value_2525","Initializer provides no value for this binding element and the binding element has no default value."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:t(2526,e.DiagnosticCategory.Error,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:t(2527,e.DiagnosticCategory.Error,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:t(2528,e.DiagnosticCategory.Error,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:t(2529,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:t(2530,e.DiagnosticCategory.Error,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:t(2531,e.DiagnosticCategory.Error,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:t(2532,e.DiagnosticCategory.Error,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:t(2533,e.DiagnosticCategory.Error,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:t(2534,e.DiagnosticCategory.Error,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Enum_type_0_has_members_with_initializers_that_are_not_literals:t(2535,e.DiagnosticCategory.Error,"Enum_type_0_has_members_with_initializers_that_are_not_literals_2535","Enum type '{0}' has members with initializers that are not literals."),Type_0_cannot_be_used_to_index_type_1:t(2536,e.DiagnosticCategory.Error,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:t(2537,e.DiagnosticCategory.Error,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:t(2538,e.DiagnosticCategory.Error,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:t(2539,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:t(2540,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),The_target_of_an_assignment_must_be_a_variable_or_a_property_access:t(2541,e.DiagnosticCategory.Error,"The_target_of_an_assignment_must_be_a_variable_or_a_property_access_2541","The target of an assignment must be a variable or a property access."),Index_signature_in_type_0_only_permits_reading:t(2542,e.DiagnosticCategory.Error,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:t(2543,e.DiagnosticCategory.Error,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:t(2544,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:t(2545,e.DiagnosticCategory.Error,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:t(2547,e.DiagnosticCategory.Error,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:t(2548,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:t(2549,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:t(2550,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the `lib` compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:t(2551,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:t(2552,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:t(2553,e.DiagnosticCategory.Error,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:t(2554,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:t(2555,e.DiagnosticCategory.Error,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),Expected_0_arguments_but_got_1_or_more:t(2556,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_or_more_2556","Expected {0} arguments, but got {1} or more."),Expected_at_least_0_arguments_but_got_1_or_more:t(2557,e.DiagnosticCategory.Error,"Expected_at_least_0_arguments_but_got_1_or_more_2557","Expected at least {0} arguments, but got {1} or more."),Expected_0_type_arguments_but_got_1:t(2558,e.DiagnosticCategory.Error,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:t(2559,e.DiagnosticCategory.Error,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:t(2560,e.DiagnosticCategory.Error,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:t(2561,e.DiagnosticCategory.Error,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:t(2562,e.DiagnosticCategory.Error,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:t(2563,e.DiagnosticCategory.Error,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:t(2564,e.DiagnosticCategory.Error,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:t(2565,e.DiagnosticCategory.Error,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:t(2566,e.DiagnosticCategory.Error,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:t(2567,e.DiagnosticCategory.Error,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators:t(2569,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterati_2569","Type '{0}' is not an array type or a string type. Use compiler option '--downlevelIteration' to allow iterating of iterators."),Object_is_of_type_unknown:t(2571,e.DiagnosticCategory.Error,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),Rest_signatures_are_incompatible:t(2572,e.DiagnosticCategory.Error,"Rest_signatures_are_incompatible_2572","Rest signatures are incompatible."),Property_0_is_incompatible_with_rest_element_type:t(2573,e.DiagnosticCategory.Error,"Property_0_is_incompatible_with_rest_element_type_2573","Property '{0}' is incompatible with rest element type."),A_rest_element_type_must_be_an_array_type:t(2574,e.DiagnosticCategory.Error,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:t(2575,e.DiagnosticCategory.Error,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:t(2576,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:t(2577,e.DiagnosticCategory.Error,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:t(2578,e.DiagnosticCategory.Error,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:t(2580,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:t(2581,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:t(2582,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:t(2583,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the `lib` compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:t(2584,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the `lib` compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:t(2585,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the `lib` compiler option to es2015 or later."),Enum_type_0_circularly_references_itself:t(2586,e.DiagnosticCategory.Error,"Enum_type_0_circularly_references_itself_2586","Enum type '{0}' circularly references itself."),JSDoc_type_0_circularly_references_itself:t(2587,e.DiagnosticCategory.Error,"JSDoc_type_0_circularly_references_itself_2587","JSDoc type '{0}' circularly references itself."),Cannot_assign_to_0_because_it_is_a_constant:t(2588,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:t(2589,e.DiagnosticCategory.Error,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:t(2590,e.DiagnosticCategory.Error,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:t(2591,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add `node` to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:t(2592,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add `jquery` to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:t(2593,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add `jest` or `mocha` to the types field in your tsconfig."),This_module_is_declared_with_using_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:t(2594,e.DiagnosticCategory.Error,"This_module_is_declared_with_using_export_and_can_only_be_used_with_a_default_import_when_using_the__2594","This module is declared with using 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:t(2595,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:t(2596,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:t(2597,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:t(2598,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_attributes_type_0_may_not_be_a_union_type:t(2600,e.DiagnosticCategory.Error,"JSX_element_attributes_type_0_may_not_be_a_union_type_2600","JSX element attributes type '{0}' may not be a union type."),The_return_type_of_a_JSX_element_constructor_must_return_an_object_type:t(2601,e.DiagnosticCategory.Error,"The_return_type_of_a_JSX_element_constructor_must_return_an_object_type_2601","The return type of a JSX element constructor must return an object type."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:t(2602,e.DiagnosticCategory.Error,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:t(2603,e.DiagnosticCategory.Error,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:t(2604,e.DiagnosticCategory.Error,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements:t(2605,e.DiagnosticCategory.Error,"JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements_2605","JSX element type '{0}' is not a constructor function for JSX elements."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:t(2606,e.DiagnosticCategory.Error,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:t(2607,e.DiagnosticCategory.Error,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:t(2608,e.DiagnosticCategory.Error,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:t(2609,e.DiagnosticCategory.Error,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:t(2610,e.DiagnosticCategory.Error,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:t(2611,e.DiagnosticCategory.Error,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:t(2612,e.DiagnosticCategory.Error,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:t(2613,e.DiagnosticCategory.Error,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:t(2614,e.DiagnosticCategory.Error,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:t(2615,e.DiagnosticCategory.Error,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:t(2616,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:t(2617,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:t(2618,e.DiagnosticCategory.Error,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:t(2619,e.DiagnosticCategory.Error,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:t(2620,e.DiagnosticCategory.Error,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:t(2621,e.DiagnosticCategory.Error,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:t(2623,e.DiagnosticCategory.Error,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:t(2624,e.DiagnosticCategory.Error,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:t(2625,e.DiagnosticCategory.Error,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:t(2626,e.DiagnosticCategory.Error,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:t(2627,e.DiagnosticCategory.Error,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:t(2649,e.DiagnosticCategory.Error,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:t(2651,e.DiagnosticCategory.Error,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:t(2652,e.DiagnosticCategory.Error,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:t(2653,e.DiagnosticCategory.Error,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Exported_external_package_typings_file_cannot_contain_tripleslash_references_Please_contact_the_package_author_to_update_the_package_definition:t(2654,e.DiagnosticCategory.Error,"Exported_external_package_typings_file_cannot_contain_tripleslash_references_Please_contact_the_pack_2654","Exported external package typings file cannot contain tripleslash references. Please contact the package author to update the package definition."),Exported_external_package_typings_file_0_is_not_a_module_Please_contact_the_package_author_to_update_the_package_definition:t(2656,e.DiagnosticCategory.Error,"Exported_external_package_typings_file_0_is_not_a_module_Please_contact_the_package_author_to_update_2656","Exported external package typings file '{0}' is not a module. Please contact the package author to update the package definition."),JSX_expressions_must_have_one_parent_element:t(2657,e.DiagnosticCategory.Error,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:t(2658,e.DiagnosticCategory.Error,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:t(2659,e.DiagnosticCategory.Error,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:t(2660,e.DiagnosticCategory.Error,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:t(2661,e.DiagnosticCategory.Error,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:t(2662,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:t(2663,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:t(2664,e.DiagnosticCategory.Error,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:t(2665,e.DiagnosticCategory.Error,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:t(2666,e.DiagnosticCategory.Error,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:t(2667,e.DiagnosticCategory.Error,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:t(2668,e.DiagnosticCategory.Error,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:t(2669,e.DiagnosticCategory.Error,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:t(2670,e.DiagnosticCategory.Error,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:t(2671,e.DiagnosticCategory.Error,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:t(2672,e.DiagnosticCategory.Error,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:t(2673,e.DiagnosticCategory.Error,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:t(2674,e.DiagnosticCategory.Error,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:t(2675,e.DiagnosticCategory.Error,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:t(2676,e.DiagnosticCategory.Error,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:t(2677,e.DiagnosticCategory.Error,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:t(2678,e.DiagnosticCategory.Error,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:t(2679,e.DiagnosticCategory.Error,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:t(2680,e.DiagnosticCategory.Error,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:t(2681,e.DiagnosticCategory.Error,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),get_and_set_accessor_must_have_the_same_this_type:t(2682,e.DiagnosticCategory.Error,"get_and_set_accessor_must_have_the_same_this_type_2682","'get' and 'set' accessor must have the same 'this' type."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:t(2683,e.DiagnosticCategory.Error,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:t(2684,e.DiagnosticCategory.Error,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:t(2685,e.DiagnosticCategory.Error,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:t(2686,e.DiagnosticCategory.Error,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:t(2687,e.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:t(2688,e.DiagnosticCategory.Error,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:t(2689,e.DiagnosticCategory.Error,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:t(2690,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead:t(2691,e.DiagnosticCategory.Error,"An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead_2691","An import path cannot end with a '{0}' extension. Consider importing '{1}' instead."),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:t(2692,e.DiagnosticCategory.Error,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:t(2693,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:t(2694,e.DiagnosticCategory.Error,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:t(2695,e.DiagnosticCategory.Error,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:t(2696,e.DiagnosticCategory.Error,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:t(2697,e.DiagnosticCategory.Error,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your `--lib` option."),Spread_types_may_only_be_created_from_object_types:t(2698,e.DiagnosticCategory.Error,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:t(2699,e.DiagnosticCategory.Error,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:t(2700,e.DiagnosticCategory.Error,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:t(2701,e.DiagnosticCategory.Error,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:t(2702,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:t(2703,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:t(2704,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:t(2705,e.DiagnosticCategory.Error,"An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_de_2705","An async function or method in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your `--lib` option."),Required_type_parameters_may_not_follow_optional_type_parameters:t(2706,e.DiagnosticCategory.Error,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:t(2707,e.DiagnosticCategory.Error,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:t(2708,e.DiagnosticCategory.Error,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:t(2709,e.DiagnosticCategory.Error,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:t(2710,e.DiagnosticCategory.Error,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:t(2711,e.DiagnosticCategory.Error,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your `--lib` option."),A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:t(2712,e.DiagnosticCategory.Error,"A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declarat_2712","A dynamic import call in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your `--lib` option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:t(2713,e.DiagnosticCategory.Error,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713","Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}[\"{1}\"]'?"),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:t(2714,e.DiagnosticCategory.Error,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:t(2715,e.DiagnosticCategory.Error,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:t(2716,e.DiagnosticCategory.Error,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:t(2717,e.DiagnosticCategory.Error,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:t(2718,e.DiagnosticCategory.Error,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:t(2719,e.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:t(2720,e.DiagnosticCategory.Error,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:t(2721,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:t(2722,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:t(2723,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:t(2724,e.DiagnosticCategory.Error,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:t(2725,e.DiagnosticCategory.Error,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:t(2726,e.DiagnosticCategory.Error,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:t(2727,e.DiagnosticCategory.Error,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:t(2728,e.DiagnosticCategory.Message,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:t(2729,e.DiagnosticCategory.Error,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:t(2730,e.DiagnosticCategory.Error,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:t(2731,e.DiagnosticCategory.Error,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:t(2732,e.DiagnosticCategory.Error,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:t(2733,e.DiagnosticCategory.Error,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:t(2734,e.DiagnosticCategory.Error,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:t(2735,e.DiagnosticCategory.Error,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:t(2736,e.DiagnosticCategory.Error,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:t(2737,e.DiagnosticCategory.Error,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:t(2738,e.DiagnosticCategory.Message,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:t(2739,e.DiagnosticCategory.Error,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:t(2740,e.DiagnosticCategory.Error,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:t(2741,e.DiagnosticCategory.Error,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:t(2742,e.DiagnosticCategory.Error,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:t(2743,e.DiagnosticCategory.Error,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:t(2744,e.DiagnosticCategory.Error,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:t(2745,e.DiagnosticCategory.Error,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:t(2746,e.DiagnosticCategory.Error,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:t(2747,e.DiagnosticCategory.Error,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided:t(2748,e.DiagnosticCategory.Error,"Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided_2748","Cannot access ambient const enums when the '--isolatedModules' flag is provided."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:t(2749,e.DiagnosticCategory.Error,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:t(2750,e.DiagnosticCategory.Error,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:t(2751,e.DiagnosticCategory.Error,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:t(2752,e.DiagnosticCategory.Error,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:t(2753,e.DiagnosticCategory.Error,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:t(2754,e.DiagnosticCategory.Error,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:t(2755,e.DiagnosticCategory.Error,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:t(2756,e.DiagnosticCategory.Error,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:t(2757,e.DiagnosticCategory.Error,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:t(2758,e.DiagnosticCategory.Error,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:t(2759,e.DiagnosticCategory.Error,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:t(2760,e.DiagnosticCategory.Error,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:t(2761,e.DiagnosticCategory.Error,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:t(2762,e.DiagnosticCategory.Error,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:t(2763,e.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:t(2764,e.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:t(2765,e.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:t(2766,e.DiagnosticCategory.Error,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:t(2767,e.DiagnosticCategory.Error,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:t(2768,e.DiagnosticCategory.Error,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:t(2769,e.DiagnosticCategory.Error,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:t(2770,e.DiagnosticCategory.Error,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:t(2771,e.DiagnosticCategory.Error,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:t(2772,e.DiagnosticCategory.Error,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:t(2773,e.DiagnosticCategory.Error,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it_instead:t(2774,e.DiagnosticCategory.Error,"This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it__2774","This condition will always return true since the function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:t(2775,e.DiagnosticCategory.Error,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:t(2776,e.DiagnosticCategory.Error,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:t(2777,e.DiagnosticCategory.Error,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:t(2778,e.DiagnosticCategory.Error,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:t(2779,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:t(2780,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:t(2781,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:t(2782,e.DiagnosticCategory.Message,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:t(2783,e.DiagnosticCategory.Error,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:t(2784,e.DiagnosticCategory.Error,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:t(2785,e.DiagnosticCategory.Error,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:t(2786,e.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:t(2787,e.DiagnosticCategory.Error,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:t(2788,e.DiagnosticCategory.Error,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:t(2789,e.DiagnosticCategory.Error,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:t(2790,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:t(2791,e.DiagnosticCategory.Error,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:t(2792,e.DiagnosticCategory.Error,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_th_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:t(2793,e.DiagnosticCategory.Error,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:t(2794,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:t(2795,e.DiagnosticCategory.Error,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:t(2796,e.DiagnosticCategory.Error,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:t(2797,e.DiagnosticCategory.Error,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:t(2798,e.DiagnosticCategory.Error,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:t(2799,e.DiagnosticCategory.Error,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:t(2800,e.DiagnosticCategory.Error,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),Import_declaration_0_is_using_private_name_1:t(4e3,e.DiagnosticCategory.Error,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:t(4002,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:t(4004,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:t(4006,e.DiagnosticCategory.Error,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:t(4008,e.DiagnosticCategory.Error,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:t(4010,e.DiagnosticCategory.Error,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:t(4012,e.DiagnosticCategory.Error,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:t(4014,e.DiagnosticCategory.Error,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:t(4016,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:t(4019,e.DiagnosticCategory.Error,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:t(4020,e.DiagnosticCategory.Error,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:t(4021,e.DiagnosticCategory.Error,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:t(4022,e.DiagnosticCategory.Error,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4023,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:t(4024,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:t(4025,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4026,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4027,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:t(4028,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4029,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4030,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:t(4031,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4032,e.DiagnosticCategory.Error,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:t(4033,e.DiagnosticCategory.Error,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4034,e.DiagnosticCategory.Error,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:t(4035,e.DiagnosticCategory.Error,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4036,e.DiagnosticCategory.Error,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:t(4037,e.DiagnosticCategory.Error,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4038,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4039,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:t(4040,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4041,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4042,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:t(4043,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4044,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:t(4045,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4046,e.DiagnosticCategory.Error,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:t(4047,e.DiagnosticCategory.Error,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4048,e.DiagnosticCategory.Error,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:t(4049,e.DiagnosticCategory.Error,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:t(4050,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:t(4051,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:t(4052,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:t(4053,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:t(4054,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:t(4055,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4056,e.DiagnosticCategory.Error,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:t(4057,e.DiagnosticCategory.Error,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:t(4058,e.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:t(4059,e.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:t(4060,e.DiagnosticCategory.Warning,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4061,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4062,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:t(4063,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4064,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:t(4065,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4066,e.DiagnosticCategory.Error,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:t(4067,e.DiagnosticCategory.Error,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4068,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4069,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:t(4070,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4071,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4072,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:t(4073,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4074,e.DiagnosticCategory.Error,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:t(4075,e.DiagnosticCategory.Error,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4076,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:t(4077,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:t(4078,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:t(4081,e.DiagnosticCategory.Error,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:t(4082,e.DiagnosticCategory.Error,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:t(4083,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:t(4084,e.DiagnosticCategory.Error,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict:t(4090,e.DiagnosticCategory.Error,"Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_librar_4090","Conflicting definitions for '{0}' found at '{1}' and '{2}'. Consider installing a specific version of this library to resolve the conflict."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4091,e.DiagnosticCategory.Error,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:t(4092,e.DiagnosticCategory.Error,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_class_expression_may_not_be_private_or_protected:t(4094,e.DiagnosticCategory.Error,"Property_0_of_exported_class_expression_may_not_be_private_or_protected_4094","Property '{0}' of exported class expression may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4095,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4096,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:t(4097,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4098,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4099,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:t(4100,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4101,e.DiagnosticCategory.Error,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:t(4102,e.DiagnosticCategory.Error,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:t(4103,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:t(4104,e.DiagnosticCategory.Error,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:t(4105,e.DiagnosticCategory.Error,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:t(4106,e.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:t(4107,e.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4108,e.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:t(4109,e.DiagnosticCategory.Error,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:t(4110,e.DiagnosticCategory.Error,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:t(4111,e.DiagnosticCategory.Error,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),The_current_host_does_not_support_the_0_option:t(5001,e.DiagnosticCategory.Error,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:t(5009,e.DiagnosticCategory.Error,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:t(5010,e.DiagnosticCategory.Error,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:t(5012,e.DiagnosticCategory.Error,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:t(5014,e.DiagnosticCategory.Error,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:t(5023,e.DiagnosticCategory.Error,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:t(5024,e.DiagnosticCategory.Error,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:t(5025,e.DiagnosticCategory.Error,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:t(5033,e.DiagnosticCategory.Error,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:t(5042,e.DiagnosticCategory.Error,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:t(5047,e.DiagnosticCategory.Error,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_cannot_be_specified_when_option_target_is_ES3:t(5048,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_when_option_target_is_ES3_5048","Option '{0}' cannot be specified when option 'target' is 'ES3'."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:t(5051,e.DiagnosticCategory.Error,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:t(5052,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:t(5053,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:t(5054,e.DiagnosticCategory.Error,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:t(5055,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:t(5056,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:t(5057,e.DiagnosticCategory.Error,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:t(5058,e.DiagnosticCategory.Error,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:t(5059,e.DiagnosticCategory.Error,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:t(5061,e.DiagnosticCategory.Error,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:t(5062,e.DiagnosticCategory.Error,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:t(5063,e.DiagnosticCategory.Error,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:t(5064,e.DiagnosticCategory.Error,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:t(5065,e.DiagnosticCategory.Error,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:t(5066,e.DiagnosticCategory.Error,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:t(5067,e.DiagnosticCategory.Error,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:t(5068,e.DiagnosticCategory.Error,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:t(5069,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy:t(5070,e.DiagnosticCategory.Error,"Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy_5070","Option '--resolveJsonModule' cannot be specified without 'node' module resolution strategy."),Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext:t(5071,e.DiagnosticCategory.Error,"Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_5071","Option '--resolveJsonModule' can only be specified when module code generation is 'commonjs', 'amd', 'es2015' or 'esNext'."),Unknown_build_option_0:t(5072,e.DiagnosticCategory.Error,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:t(5073,e.DiagnosticCategory.Error,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:t(5074,e.DiagnosticCategory.Error,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option `--tsBuildInfoFile` is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:t(5075,e.DiagnosticCategory.Error,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:t(5076,e.DiagnosticCategory.Error,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:t(5077,e.DiagnosticCategory.Error,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:t(5078,e.DiagnosticCategory.Error,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:t(5079,e.DiagnosticCategory.Error,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:t(5080,e.DiagnosticCategory.Error,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:t(5081,e.DiagnosticCategory.Error,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:t(5082,e.DiagnosticCategory.Error,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:t(5083,e.DiagnosticCategory.Error,"Cannot_read_file_0_5083","Cannot read file '{0}'."),Tuple_members_must_all_have_names_or_all_not_have_names:t(5084,e.DiagnosticCategory.Error,"Tuple_members_must_all_have_names_or_all_not_have_names_5084","Tuple members must all have names or all not have names."),A_tuple_member_cannot_be_both_optional_and_rest:t(5085,e.DiagnosticCategory.Error,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:t(5086,e.DiagnosticCategory.Error,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:t(5087,e.DiagnosticCategory.Error,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a `...` before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:t(5088,e.DiagnosticCategory.Error,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:t(5089,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:t(5090,e.DiagnosticCategory.Error,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled:t(5091,e.DiagnosticCategory.Error,"Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when 'isolatedModules' is enabled."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:t(6e3,e.DiagnosticCategory.Message,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:t(6001,e.DiagnosticCategory.Message,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:t(6002,e.DiagnosticCategory.Message,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:t(6003,e.DiagnosticCategory.Message,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6003","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:t(6004,e.DiagnosticCategory.Message,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:t(6005,e.DiagnosticCategory.Message,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:t(6006,e.DiagnosticCategory.Message,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:t(6007,e.DiagnosticCategory.Message,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:t(6008,e.DiagnosticCategory.Message,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:t(6009,e.DiagnosticCategory.Message,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:t(6010,e.DiagnosticCategory.Message,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:t(6011,e.DiagnosticCategory.Message,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:t(6012,e.DiagnosticCategory.Message,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:t(6013,e.DiagnosticCategory.Message,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:t(6014,e.DiagnosticCategory.Message,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_ES2019_ES2020_or_ESNEXT:t(6015,e.DiagnosticCategory.Message,"Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_ES2019_ES2020_or_6015","Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'."),Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_es2020_or_ESNext:t(6016,e.DiagnosticCategory.Message,"Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_es2020_or_ESNext_6016","Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'."),Print_this_message:t(6017,e.DiagnosticCategory.Message,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:t(6019,e.DiagnosticCategory.Message,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:t(6020,e.DiagnosticCategory.Message,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:t(6023,e.DiagnosticCategory.Message,"Syntax_Colon_0_6023","Syntax: {0}"),options:t(6024,e.DiagnosticCategory.Message,"options_6024","options"),file:t(6025,e.DiagnosticCategory.Message,"file_6025","file"),Examples_Colon_0:t(6026,e.DiagnosticCategory.Message,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:t(6027,e.DiagnosticCategory.Message,"Options_Colon_6027","Options:"),Version_0:t(6029,e.DiagnosticCategory.Message,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:t(6030,e.DiagnosticCategory.Message,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:t(6031,e.DiagnosticCategory.Message,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:t(6032,e.DiagnosticCategory.Message,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:t(6034,e.DiagnosticCategory.Message,"KIND_6034","KIND"),FILE:t(6035,e.DiagnosticCategory.Message,"FILE_6035","FILE"),VERSION:t(6036,e.DiagnosticCategory.Message,"VERSION_6036","VERSION"),LOCATION:t(6037,e.DiagnosticCategory.Message,"LOCATION_6037","LOCATION"),DIRECTORY:t(6038,e.DiagnosticCategory.Message,"DIRECTORY_6038","DIRECTORY"),STRATEGY:t(6039,e.DiagnosticCategory.Message,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:t(6040,e.DiagnosticCategory.Message,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Generates_corresponding_map_file:t(6043,e.DiagnosticCategory.Message,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:t(6044,e.DiagnosticCategory.Error,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:t(6045,e.DiagnosticCategory.Error,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:t(6046,e.DiagnosticCategory.Error,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:t(6048,e.DiagnosticCategory.Error,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form <language> or <language>-<territory>. For example '{0}' or '{1}'."),Unsupported_locale_0:t(6049,e.DiagnosticCategory.Error,"Unsupported_locale_0_6049","Unsupported locale '{0}'."),Unable_to_open_file_0:t(6050,e.DiagnosticCategory.Error,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:t(6051,e.DiagnosticCategory.Error,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:t(6052,e.DiagnosticCategory.Message,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:t(6053,e.DiagnosticCategory.Error,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:t(6054,e.DiagnosticCategory.Error,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:t(6055,e.DiagnosticCategory.Message,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:t(6056,e.DiagnosticCategory.Message,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:t(6058,e.DiagnosticCategory.Message,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:t(6059,e.DiagnosticCategory.Error,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:t(6060,e.DiagnosticCategory.Message,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:t(6061,e.DiagnosticCategory.Message,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:t(6064,e.DiagnosticCategory.Error,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:t(6065,e.DiagnosticCategory.Message,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:t(6066,e.DiagnosticCategory.Message,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Enables_experimental_support_for_ES7_async_functions:t(6068,e.DiagnosticCategory.Message,"Enables_experimental_support_for_ES7_async_functions_6068","Enables experimental support for ES7 async functions."),Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6:t(6069,e.DiagnosticCategory.Message,"Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6_6069","Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6)."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:t(6070,e.DiagnosticCategory.Message,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:t(6071,e.DiagnosticCategory.Message,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:t(6072,e.DiagnosticCategory.Message,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:t(6073,e.DiagnosticCategory.Message,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:t(6074,e.DiagnosticCategory.Message,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:t(6075,e.DiagnosticCategory.Message,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:t(6076,e.DiagnosticCategory.Message,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:t(6077,e.DiagnosticCategory.Message,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:t(6078,e.DiagnosticCategory.Message,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:t(6079,e.DiagnosticCategory.Message,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation_Colon_preserve_react_native_react_react_jsx_or_react_jsxdev:t(6080,e.DiagnosticCategory.Message,"Specify_JSX_code_generation_Colon_preserve_react_native_react_react_jsx_or_react_jsxdev_6080","Specify JSX code generation: 'preserve', 'react-native', 'react', 'react-jsx' or 'react-jsxdev'."),File_0_has_an_unsupported_extension_so_skipping_it:t(6081,e.DiagnosticCategory.Message,"File_0_has_an_unsupported_extension_so_skipping_it_6081","File '{0}' has an unsupported extension, so skipping it."),Only_amd_and_system_modules_are_supported_alongside_0:t(6082,e.DiagnosticCategory.Error,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:t(6083,e.DiagnosticCategory.Message,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:t(6084,e.DiagnosticCategory.Message,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:t(6085,e.DiagnosticCategory.Message,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:t(6086,e.DiagnosticCategory.Message,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:t(6087,e.DiagnosticCategory.Message,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:t(6088,e.DiagnosticCategory.Message,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:t(6089,e.DiagnosticCategory.Message,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:t(6090,e.DiagnosticCategory.Message,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:t(6091,e.DiagnosticCategory.Message,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:t(6092,e.DiagnosticCategory.Message,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:t(6093,e.DiagnosticCategory.Message,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:t(6094,e.DiagnosticCategory.Message,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1:t(6095,e.DiagnosticCategory.Message,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1_6095","Loading module as file / folder, candidate module location '{0}', target file type '{1}'."),File_0_does_not_exist:t(6096,e.DiagnosticCategory.Message,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exist_use_it_as_a_name_resolution_result:t(6097,e.DiagnosticCategory.Message,"File_0_exist_use_it_as_a_name_resolution_result_6097","File '{0}' exist - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_type_1:t(6098,e.DiagnosticCategory.Message,"Loading_module_0_from_node_modules_folder_target_file_type_1_6098","Loading module '{0}' from 'node_modules' folder, target file type '{1}'."),Found_package_json_at_0:t(6099,e.DiagnosticCategory.Message,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:t(6100,e.DiagnosticCategory.Message,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:t(6101,e.DiagnosticCategory.Message,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:t(6102,e.DiagnosticCategory.Message,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Option_0_should_have_array_of_strings_as_a_value:t(6103,e.DiagnosticCategory.Error,"Option_0_should_have_array_of_strings_as_a_value_6103","Option '{0}' should have array of strings as a value."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:t(6104,e.DiagnosticCategory.Message,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:t(6105,e.DiagnosticCategory.Message,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:t(6106,e.DiagnosticCategory.Message,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:t(6107,e.DiagnosticCategory.Message,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:t(6108,e.DiagnosticCategory.Message,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:t(6109,e.DiagnosticCategory.Message,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:t(6110,e.DiagnosticCategory.Message,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:t(6111,e.DiagnosticCategory.Message,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:t(6112,e.DiagnosticCategory.Message,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:t(6113,e.DiagnosticCategory.Message,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:t(6114,e.DiagnosticCategory.Error,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:t(6115,e.DiagnosticCategory.Message,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:t(6116,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Resolving_using_primary_search_paths:t(6117,e.DiagnosticCategory.Message,"Resolving_using_primary_search_paths_6117","Resolving using primary search paths..."),Resolving_from_node_modules_folder:t(6118,e.DiagnosticCategory.Message,"Resolving_from_node_modules_folder_6118","Resolving from node_modules folder..."),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:t(6119,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:t(6120,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:t(6121,e.DiagnosticCategory.Message,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:t(6122,e.DiagnosticCategory.Message,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:t(6123,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:t(6124,e.DiagnosticCategory.Message,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:t(6125,e.DiagnosticCategory.Message,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:t(6126,e.DiagnosticCategory.Message,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:t(6127,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:t(6128,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:t(6130,e.DiagnosticCategory.Message,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:t(6131,e.DiagnosticCategory.Error,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:t(6132,e.DiagnosticCategory.Message,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:t(6133,e.DiagnosticCategory.Error,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:t(6134,e.DiagnosticCategory.Message,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:t(6135,e.DiagnosticCategory.Message,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:t(6136,e.DiagnosticCategory.Message,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:t(6137,e.DiagnosticCategory.Error,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:t(6138,e.DiagnosticCategory.Error,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:t(6139,e.DiagnosticCategory.Message,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:t(6140,e.DiagnosticCategory.Error,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:t(6141,e.DiagnosticCategory.Message,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:t(6142,e.DiagnosticCategory.Error,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:t(6144,e.DiagnosticCategory.Message,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified:t(6145,e.DiagnosticCategory.Message,"Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified_6145","Module '{0}' was resolved as ambient module declared in '{1}' since this file was not modified."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:t(6146,e.DiagnosticCategory.Message,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:t(6147,e.DiagnosticCategory.Message,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:t(6148,e.DiagnosticCategory.Message,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:t(6149,e.DiagnosticCategory.Message,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:t(6150,e.DiagnosticCategory.Message,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:t(6151,e.DiagnosticCategory.Message,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:t(6152,e.DiagnosticCategory.Message,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:t(6153,e.DiagnosticCategory.Message,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:t(6154,e.DiagnosticCategory.Message,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:t(6155,e.DiagnosticCategory.Message,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:t(6156,e.DiagnosticCategory.Message,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:t(6157,e.DiagnosticCategory.Message,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:t(6158,e.DiagnosticCategory.Message,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:t(6159,e.DiagnosticCategory.Message,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:t(6160,e.DiagnosticCategory.Message,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:t(6161,e.DiagnosticCategory.Message,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:t(6162,e.DiagnosticCategory.Message,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:t(6163,e.DiagnosticCategory.Message,"The_character_set_of_the_input_files_6163","The character set of the input files."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:t(6164,e.DiagnosticCategory.Message,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6164","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Do_not_truncate_error_messages:t(6165,e.DiagnosticCategory.Message,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:t(6166,e.DiagnosticCategory.Message,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:t(6167,e.DiagnosticCategory.Message,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:t(6168,e.DiagnosticCategory.Message,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:t(6169,e.DiagnosticCategory.Message,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:t(6170,e.DiagnosticCategory.Message,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:t(6171,e.DiagnosticCategory.Message,"Command_line_Options_6171","Command-line Options"),Basic_Options:t(6172,e.DiagnosticCategory.Message,"Basic_Options_6172","Basic Options"),Strict_Type_Checking_Options:t(6173,e.DiagnosticCategory.Message,"Strict_Type_Checking_Options_6173","Strict Type-Checking Options"),Module_Resolution_Options:t(6174,e.DiagnosticCategory.Message,"Module_Resolution_Options_6174","Module Resolution Options"),Source_Map_Options:t(6175,e.DiagnosticCategory.Message,"Source_Map_Options_6175","Source Map Options"),Additional_Checks:t(6176,e.DiagnosticCategory.Message,"Additional_Checks_6176","Additional Checks"),Experimental_Options:t(6177,e.DiagnosticCategory.Message,"Experimental_Options_6177","Experimental Options"),Advanced_Options:t(6178,e.DiagnosticCategory.Message,"Advanced_Options_6178","Advanced Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3:t(6179,e.DiagnosticCategory.Message,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'."),Enable_all_strict_type_checking_options:t(6180,e.DiagnosticCategory.Message,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),List_of_language_service_plugins:t(6181,e.DiagnosticCategory.Message,"List_of_language_service_plugins_6181","List of language service plugins."),Scoped_package_detected_looking_in_0:t(6182,e.DiagnosticCategory.Message,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_to_file_1_from_old_program:t(6183,e.DiagnosticCategory.Message,"Reusing_resolution_of_module_0_to_file_1_from_old_program_6183","Reusing resolution of module '{0}' to file '{1}' from old program."),Reusing_module_resolutions_originating_in_0_since_resolutions_are_unchanged_from_old_program:t(6184,e.DiagnosticCategory.Message,"Reusing_module_resolutions_originating_in_0_since_resolutions_are_unchanged_from_old_program_6184","Reusing module resolutions originating in '{0}' since resolutions are unchanged from old program."),Disable_strict_checking_of_generic_signatures_in_function_types:t(6185,e.DiagnosticCategory.Message,"Disable_strict_checking_of_generic_signatures_in_function_types_6185","Disable strict checking of generic signatures in function types."),Enable_strict_checking_of_function_types:t(6186,e.DiagnosticCategory.Message,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:t(6187,e.DiagnosticCategory.Message,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:t(6188,e.DiagnosticCategory.Error,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:t(6189,e.DiagnosticCategory.Error,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:t(6191,e.DiagnosticCategory.Message,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:t(6192,e.DiagnosticCategory.Error,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:t(6193,e.DiagnosticCategory.Message,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:t(6194,e.DiagnosticCategory.Message,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:t(6195,e.DiagnosticCategory.Message,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:t(6196,e.DiagnosticCategory.Error,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:t(6197,e.DiagnosticCategory.Message,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:t(6198,e.DiagnosticCategory.Error,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:t(6199,e.DiagnosticCategory.Error,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:t(6200,e.DiagnosticCategory.Error,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:t(6201,e.DiagnosticCategory.Message,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:t(6202,e.DiagnosticCategory.Error,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:t(6203,e.DiagnosticCategory.Message,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:t(6204,e.DiagnosticCategory.Message,"and_here_6204","and here."),All_type_parameters_are_unused:t(6205,e.DiagnosticCategory.Error,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:t(6206,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:t(6207,e.DiagnosticCategory.Message,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:t(6208,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:t(6209,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:t(6210,e.DiagnosticCategory.Message,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:t(6211,e.DiagnosticCategory.Message,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:t(6212,e.DiagnosticCategory.Message,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:t(6213,e.DiagnosticCategory.Message,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:t(6214,e.DiagnosticCategory.Message,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:t(6215,e.DiagnosticCategory.Message,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:t(6216,e.DiagnosticCategory.Message,"Found_1_error_6216","Found 1 error."),Found_0_errors:t(6217,e.DiagnosticCategory.Message,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:t(6218,e.DiagnosticCategory.Message,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:t(6219,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:t(6220,e.DiagnosticCategory.Message,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:t(6221,e.DiagnosticCategory.Message,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:t(6222,e.DiagnosticCategory.Message,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:t(6223,e.DiagnosticCategory.Message,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:t(6224,e.DiagnosticCategory.Message,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_UseFsEvents_UseFsEventsOnParentDirectory:t(6225,e.DiagnosticCategory.Message,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling:t(6226,e.DiagnosticCategory.Message,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority:t(6227,e.DiagnosticCategory.Message,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority'."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:t(6228,e.DiagnosticCategory.Message,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6228","Synchronously call callbacks and update the state of directory watchers on platforms that don't support recursive watching natively."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:t(6229,e.DiagnosticCategory.Error,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:t(6230,e.DiagnosticCategory.Error,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:t(6231,e.DiagnosticCategory.Error,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:t(6232,e.DiagnosticCategory.Error,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:t(6233,e.DiagnosticCategory.Error,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:t(6234,e.DiagnosticCategory.Error,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:t(6235,e.DiagnosticCategory.Message,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:t(6236,e.DiagnosticCategory.Error,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:t(6237,e.DiagnosticCategory.Message,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:t(6238,e.DiagnosticCategory.Error,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the `jsx` and `jsxs` factory functions from. eg, react"),Projects_to_reference:t(6300,e.DiagnosticCategory.Message,"Projects_to_reference_6300","Projects to reference"),Enable_project_compilation:t(6302,e.DiagnosticCategory.Message,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:t(6304,e.DiagnosticCategory.Error,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:t(6305,e.DiagnosticCategory.Error,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:t(6306,e.DiagnosticCategory.Error,"Referenced_project_0_must_have_setting_composite_Colon_true_6306","Referenced project '{0}' must have setting \"composite\": true."),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:t(6307,e.DiagnosticCategory.Error,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Cannot_prepend_project_0_because_it_does_not_have_outFile_set:t(6308,e.DiagnosticCategory.Error,"Cannot_prepend_project_0_because_it_does_not_have_outFile_set_6308","Cannot prepend project '{0}' because it does not have 'outFile' set"),Output_file_0_from_project_1_does_not_exist:t(6309,e.DiagnosticCategory.Error,"Output_file_0_from_project_1_does_not_exist_6309","Output file '{0}' from project '{1}' does not exist"),Referenced_project_0_may_not_disable_emit:t(6310,e.DiagnosticCategory.Error,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2:t(6350,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2_6350","Project '{0}' is out of date because oldest output '{1}' is older than newest input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2:t(6351,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than oldest output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:t(6352,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:t(6353,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:t(6354,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:t(6355,e.DiagnosticCategory.Message,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:t(6356,e.DiagnosticCategory.Message,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:t(6357,e.DiagnosticCategory.Message,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:t(6358,e.DiagnosticCategory.Message,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:t(6359,e.DiagnosticCategory.Message,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),delete_this_Project_0_is_up_to_date_because_it_was_previously_built:t(6360,e.DiagnosticCategory.Message,"delete_this_Project_0_is_up_to_date_because_it_was_previously_built_6360","delete this - Project '{0}' is up to date because it was previously built"),Project_0_is_up_to_date:t(6361,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:t(6362,e.DiagnosticCategory.Message,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:t(6363,e.DiagnosticCategory.Message,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:t(6364,e.DiagnosticCategory.Message,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:t(6365,e.DiagnosticCategory.Message,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects"),Enable_verbose_logging:t(6366,e.DiagnosticCategory.Message,"Enable_verbose_logging_6366","Enable verbose logging"),Show_what_would_be_built_or_deleted_if_specified_with_clean:t(6367,e.DiagnosticCategory.Message,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Build_all_projects_including_those_that_appear_to_be_up_to_date:t(6368,e.DiagnosticCategory.Message,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6368","Build all projects, including those that appear to be up to date"),Option_build_must_be_the_first_command_line_argument:t(6369,e.DiagnosticCategory.Error,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:t(6370,e.DiagnosticCategory.Error,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:t(6371,e.DiagnosticCategory.Message,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed:t(6372,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed_6372","Project '{0}' is out of date because output of its dependency '{1}' has changed"),Updating_output_of_project_0:t(6373,e.DiagnosticCategory.Message,"Updating_output_of_project_0_6373","Updating output of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:t(6374,e.DiagnosticCategory.Message,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),A_non_dry_build_would_update_output_of_project_0:t(6375,e.DiagnosticCategory.Message,"A_non_dry_build_would_update_output_of_project_0_6375","A non-dry build would update output of project '{0}'"),Cannot_update_output_of_project_0_because_there_was_error_reading_file_1:t(6376,e.DiagnosticCategory.Message,"Cannot_update_output_of_project_0_because_there_was_error_reading_file_1_6376","Cannot update output of project '{0}' because there was error reading file '{1}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:t(6377,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Enable_incremental_compilation:t(6378,e.DiagnosticCategory.Message,"Enable_incremental_compilation_6378","Enable incremental compilation"),Composite_projects_may_not_disable_incremental_compilation:t(6379,e.DiagnosticCategory.Error,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:t(6380,e.DiagnosticCategory.Message,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:t(6381,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:t(6382,e.DiagnosticCategory.Message,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:t(6383,e.DiagnosticCategory.Message,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:t(6384,e.DiagnosticCategory.Message,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:t(6385,e.DiagnosticCategory.Suggestion,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:t(6386,e.DiagnosticCategory.Message,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:t(6387,e.DiagnosticCategory.Suggestion,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:t(6500,e.DiagnosticCategory.Message,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:t(6501,e.DiagnosticCategory.Message,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:t(6502,e.DiagnosticCategory.Message,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:t(6503,e.DiagnosticCategory.Message,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:t(6504,e.DiagnosticCategory.Error,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:t(6505,e.DiagnosticCategory.Message,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:t(6803,e.DiagnosticCategory.Error,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6803","Require undeclared properties from index signatures to use element accesses."),Include_undefined_in_index_signature_results:t(6800,e.DiagnosticCategory.Message,"Include_undefined_in_index_signature_results_6800","Include 'undefined' in index signature results"),Variable_0_implicitly_has_an_1_type:t(7005,e.DiagnosticCategory.Error,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:t(7006,e.DiagnosticCategory.Error,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:t(7008,e.DiagnosticCategory.Error,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:t(7009,e.DiagnosticCategory.Error,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:t(7010,e.DiagnosticCategory.Error,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:t(7011,e.DiagnosticCategory.Error,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:t(7013,e.DiagnosticCategory.Error,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:t(7014,e.DiagnosticCategory.Error,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:t(7015,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:t(7016,e.DiagnosticCategory.Error,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:t(7017,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:t(7018,e.DiagnosticCategory.Error,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:t(7019,e.DiagnosticCategory.Error,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:t(7020,e.DiagnosticCategory.Error,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:t(7022,e.DiagnosticCategory.Error,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:t(7023,e.DiagnosticCategory.Error,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:t(7024,e.DiagnosticCategory.Error,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:t(7025,e.DiagnosticCategory.Error,"Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_retu_7025","Generator implicitly has yield type '{0}' because it does not yield any values. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:t(7026,e.DiagnosticCategory.Error,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:t(7027,e.DiagnosticCategory.Error,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:t(7028,e.DiagnosticCategory.Error,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:t(7029,e.DiagnosticCategory.Error,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:t(7030,e.DiagnosticCategory.Error,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:t(7031,e.DiagnosticCategory.Error,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:t(7032,e.DiagnosticCategory.Error,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:t(7033,e.DiagnosticCategory.Error,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:t(7034,e.DiagnosticCategory.Error,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:t(7035,e.DiagnosticCategory.Error,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:t(7036,e.DiagnosticCategory.Error,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:t(7037,e.DiagnosticCategory.Message,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:t(7038,e.DiagnosticCategory.Message,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:t(7039,e.DiagnosticCategory.Error,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:t(7040,e.DiagnosticCategory.Error,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}`"),The_containing_arrow_function_captures_the_global_value_of_this:t(7041,e.DiagnosticCategory.Error,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:t(7042,e.DiagnosticCategory.Error,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:t(7043,e.DiagnosticCategory.Suggestion,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:t(7044,e.DiagnosticCategory.Suggestion,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:t(7045,e.DiagnosticCategory.Suggestion,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:t(7046,e.DiagnosticCategory.Suggestion,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:t(7047,e.DiagnosticCategory.Suggestion,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:t(7048,e.DiagnosticCategory.Suggestion,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:t(7049,e.DiagnosticCategory.Suggestion,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:t(7050,e.DiagnosticCategory.Suggestion,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:t(7051,e.DiagnosticCategory.Error,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:t(7052,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:t(7053,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:t(7054,e.DiagnosticCategory.Error,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:t(7055,e.DiagnosticCategory.Error,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:t(7056,e.DiagnosticCategory.Error,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:t(7057,e.DiagnosticCategory.Error,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),You_cannot_rename_this_element:t(8e3,e.DiagnosticCategory.Error,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:t(8001,e.DiagnosticCategory.Error,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:t(8002,e.DiagnosticCategory.Error,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:t(8003,e.DiagnosticCategory.Error,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:t(8004,e.DiagnosticCategory.Error,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:t(8005,e.DiagnosticCategory.Error,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:t(8006,e.DiagnosticCategory.Error,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:t(8008,e.DiagnosticCategory.Error,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:t(8009,e.DiagnosticCategory.Error,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:t(8010,e.DiagnosticCategory.Error,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:t(8011,e.DiagnosticCategory.Error,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:t(8012,e.DiagnosticCategory.Error,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:t(8013,e.DiagnosticCategory.Error,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:t(8016,e.DiagnosticCategory.Error,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:t(8017,e.DiagnosticCategory.Error,"Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0_8017","Octal literal types must use ES2015 syntax. Use the syntax '{0}'."),Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0:t(8018,e.DiagnosticCategory.Error,"Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0_8018","Octal literals are not allowed in enums members initializer. Use the syntax '{0}'."),Report_errors_in_js_files:t(8019,e.DiagnosticCategory.Message,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:t(8020,e.DiagnosticCategory.Error,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:t(8021,e.DiagnosticCategory.Error,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:t(8022,e.DiagnosticCategory.Error,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:t(8023,e.DiagnosticCategory.Error,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:t(8024,e.DiagnosticCategory.Error,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:t(8025,e.DiagnosticCategory.Error,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one `@augments` or `@extends` tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:t(8026,e.DiagnosticCategory.Error,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:t(8027,e.DiagnosticCategory.Error,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:t(8028,e.DiagnosticCategory.Error,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:t(8029,e.DiagnosticCategory.Error,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:t(8030,e.DiagnosticCategory.Error,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:t(8031,e.DiagnosticCategory.Error,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:t(8032,e.DiagnosticCategory.Error,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:t(8033,e.DiagnosticCategory.Error,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:t(8034,e.DiagnosticCategory.Error,"The_tag_was_first_specified_here_8034","The tag was first specified here."),Only_identifiers_Slashqualified_names_with_optional_type_arguments_are_currently_supported_in_a_class_extends_clause:t(9002,e.DiagnosticCategory.Error,"Only_identifiers_Slashqualified_names_with_optional_type_arguments_are_currently_supported_in_a_clas_9002","Only identifiers/qualified-names with optional type arguments are currently supported in a class 'extends' clause."),class_expressions_are_not_currently_supported:t(9003,e.DiagnosticCategory.Error,"class_expressions_are_not_currently_supported_9003","'class' expressions are not currently supported."),Language_service_is_disabled:t(9004,e.DiagnosticCategory.Error,"Language_service_is_disabled_9004","Language service is disabled."),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:t(9005,e.DiagnosticCategory.Error,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:t(9006,e.DiagnosticCategory.Error,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:t(17e3,e.DiagnosticCategory.Error,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:t(17001,e.DiagnosticCategory.Error,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:t(17002,e.DiagnosticCategory.Error,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),JSX_attribute_expected:t(17003,e.DiagnosticCategory.Error,"JSX_attribute_expected_17003","JSX attribute expected."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:t(17004,e.DiagnosticCategory.Error,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:t(17005,e.DiagnosticCategory.Error,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:t(17006,e.DiagnosticCategory.Error,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:t(17007,e.DiagnosticCategory.Error,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:t(17008,e.DiagnosticCategory.Error,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:t(17009,e.DiagnosticCategory.Error,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:t(17010,e.DiagnosticCategory.Error,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:t(17011,e.DiagnosticCategory.Error,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:t(17012,e.DiagnosticCategory.Error,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:t(17013,e.DiagnosticCategory.Error,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:t(17014,e.DiagnosticCategory.Error,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:t(17015,e.DiagnosticCategory.Error,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:t(17016,e.DiagnosticCategory.Error,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:t(17017,e.DiagnosticCategory.Error,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:t(17018,e.DiagnosticCategory.Error,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),Circularity_detected_while_resolving_configuration_Colon_0:t(18e3,e.DiagnosticCategory.Error,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),A_path_in_an_extends_option_must_be_relative_or_rooted_but_0_is_not:t(18001,e.DiagnosticCategory.Error,"A_path_in_an_extends_option_must_be_relative_or_rooted_but_0_is_not_18001","A path in an 'extends' option must be relative or rooted, but '{0}' is not."),The_files_list_in_config_file_0_is_empty:t(18002,e.DiagnosticCategory.Error,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:t(18003,e.DiagnosticCategory.Error,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module:t(80001,e.DiagnosticCategory.Suggestion,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module_80001","File is a CommonJS module; it may be converted to an ES6 module."),This_constructor_function_may_be_converted_to_a_class_declaration:t(80002,e.DiagnosticCategory.Suggestion,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:t(80003,e.DiagnosticCategory.Suggestion,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:t(80004,e.DiagnosticCategory.Suggestion,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:t(80005,e.DiagnosticCategory.Suggestion,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:t(80006,e.DiagnosticCategory.Suggestion,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:t(80007,e.DiagnosticCategory.Suggestion,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:t(80008,e.DiagnosticCategory.Suggestion,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),Add_missing_super_call:t(90001,e.DiagnosticCategory.Message,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:t(90002,e.DiagnosticCategory.Message,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:t(90003,e.DiagnosticCategory.Message,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:t(90004,e.DiagnosticCategory.Message,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:t(90005,e.DiagnosticCategory.Message,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:t(90006,e.DiagnosticCategory.Message,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:t(90007,e.DiagnosticCategory.Message,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:t(90008,e.DiagnosticCategory.Message,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:t(90010,e.DiagnosticCategory.Message,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:t(90011,e.DiagnosticCategory.Message,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:t(90012,e.DiagnosticCategory.Message,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_module_1:t(90013,e.DiagnosticCategory.Message,"Import_0_from_module_1_90013","Import '{0}' from module \"{1}\""),Change_0_to_1:t(90014,e.DiagnosticCategory.Message,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Add_0_to_existing_import_declaration_from_1:t(90015,e.DiagnosticCategory.Message,"Add_0_to_existing_import_declaration_from_1_90015","Add '{0}' to existing import declaration from \"{1}\""),Declare_property_0:t(90016,e.DiagnosticCategory.Message,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:t(90017,e.DiagnosticCategory.Message,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:t(90018,e.DiagnosticCategory.Message,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:t(90019,e.DiagnosticCategory.Message,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:t(90020,e.DiagnosticCategory.Message,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:t(90021,e.DiagnosticCategory.Message,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:t(90022,e.DiagnosticCategory.Message,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:t(90023,e.DiagnosticCategory.Message,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:t(90024,e.DiagnosticCategory.Message,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:t(90025,e.DiagnosticCategory.Message,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:t(90026,e.DiagnosticCategory.Message,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:t(90027,e.DiagnosticCategory.Message,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:t(90028,e.DiagnosticCategory.Message,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:t(90029,e.DiagnosticCategory.Message,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:t(90030,e.DiagnosticCategory.Message,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:t(90031,e.DiagnosticCategory.Message,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Import_default_0_from_module_1:t(90032,e.DiagnosticCategory.Message,"Import_default_0_from_module_1_90032","Import default '{0}' from module \"{1}\""),Add_default_import_0_to_existing_import_declaration_from_1:t(90033,e.DiagnosticCategory.Message,"Add_default_import_0_to_existing_import_declaration_from_1_90033","Add default import '{0}' to existing import declaration from \"{1}\""),Add_parameter_name:t(90034,e.DiagnosticCategory.Message,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:t(90035,e.DiagnosticCategory.Message,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:t(90036,e.DiagnosticCategory.Message,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:t(90037,e.DiagnosticCategory.Message,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:t(90038,e.DiagnosticCategory.Message,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:t(90039,e.DiagnosticCategory.Message,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:t(90041,e.DiagnosticCategory.Message,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:t(90053,e.DiagnosticCategory.Message,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Convert_function_to_an_ES2015_class:t(95001,e.DiagnosticCategory.Message,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_function_0_to_class:t(95002,e.DiagnosticCategory.Message,"Convert_function_0_to_class_95002","Convert function '{0}' to class"),Convert_0_to_1_in_0:t(95003,e.DiagnosticCategory.Message,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:t(95004,e.DiagnosticCategory.Message,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:t(95005,e.DiagnosticCategory.Message,"Extract_function_95005","Extract function"),Extract_constant:t(95006,e.DiagnosticCategory.Message,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:t(95007,e.DiagnosticCategory.Message,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:t(95008,e.DiagnosticCategory.Message,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:t(95009,e.DiagnosticCategory.Message,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Annotate_with_types_from_JSDoc:t(95010,e.DiagnosticCategory.Message,"Annotate_with_types_from_JSDoc_95010","Annotate with types from JSDoc"),Infer_type_of_0_from_usage:t(95011,e.DiagnosticCategory.Message,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:t(95012,e.DiagnosticCategory.Message,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:t(95013,e.DiagnosticCategory.Message,"Convert_to_default_import_95013","Convert to default import"),Install_0:t(95014,e.DiagnosticCategory.Message,"Install_0_95014","Install '{0}'"),Replace_import_with_0:t(95015,e.DiagnosticCategory.Message,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:t(95016,e.DiagnosticCategory.Message,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES6_module:t(95017,e.DiagnosticCategory.Message,"Convert_to_ES6_module_95017","Convert to ES6 module"),Add_undefined_type_to_property_0:t(95018,e.DiagnosticCategory.Message,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:t(95019,e.DiagnosticCategory.Message,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:t(95020,e.DiagnosticCategory.Message,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:t(95021,e.DiagnosticCategory.Message,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:t(95022,e.DiagnosticCategory.Message,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:t(95023,e.DiagnosticCategory.Message,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:t(95024,e.DiagnosticCategory.Message,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:t(95025,e.DiagnosticCategory.Message,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:t(95026,e.DiagnosticCategory.Message,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:t(95027,e.DiagnosticCategory.Message,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:t(95028,e.DiagnosticCategory.Message,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:t(95029,e.DiagnosticCategory.Message,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:t(95030,e.DiagnosticCategory.Message,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:t(95031,e.DiagnosticCategory.Message,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:t(95032,e.DiagnosticCategory.Message,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:t(95033,e.DiagnosticCategory.Message,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:t(95034,e.DiagnosticCategory.Message,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:t(95035,e.DiagnosticCategory.Message,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:t(95036,e.DiagnosticCategory.Message,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:t(95037,e.DiagnosticCategory.Message,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:t(95038,e.DiagnosticCategory.Message,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:t(95039,e.DiagnosticCategory.Message,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:t(95040,e.DiagnosticCategory.Message,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:t(95041,e.DiagnosticCategory.Message,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:t(95042,e.DiagnosticCategory.Message,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:t(95043,e.DiagnosticCategory.Message,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:t(95044,e.DiagnosticCategory.Message,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:t(95045,e.DiagnosticCategory.Message,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:t(95046,e.DiagnosticCategory.Message,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:t(95047,e.DiagnosticCategory.Message,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:t(95048,e.DiagnosticCategory.Message,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:t(95049,e.DiagnosticCategory.Message,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:t(95050,e.DiagnosticCategory.Message,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:t(95051,e.DiagnosticCategory.Message,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:t(95052,e.DiagnosticCategory.Message,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:t(95053,e.DiagnosticCategory.Message,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:t(95054,e.DiagnosticCategory.Message,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:t(95055,e.DiagnosticCategory.Message,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:t(95056,e.DiagnosticCategory.Message,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:t(95057,e.DiagnosticCategory.Message,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:t(95058,e.DiagnosticCategory.Message,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:t(95059,e.DiagnosticCategory.Message,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:t(95060,e.DiagnosticCategory.Message,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:t(95061,e.DiagnosticCategory.Message,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:t(95062,e.DiagnosticCategory.Message,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:t(95063,e.DiagnosticCategory.Message,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:t(95064,e.DiagnosticCategory.Message,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:t(95065,e.DiagnosticCategory.Message,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:t(95066,e.DiagnosticCategory.Message,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:t(95067,e.DiagnosticCategory.Message,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:t(95068,e.DiagnosticCategory.Message,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:t(95069,e.DiagnosticCategory.Message,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:t(95070,e.DiagnosticCategory.Message,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:t(95071,e.DiagnosticCategory.Message,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:t(95072,e.DiagnosticCategory.Message,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:t(95073,e.DiagnosticCategory.Message,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:t(95074,e.DiagnosticCategory.Message,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:t(95075,e.DiagnosticCategory.Message,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Allow_accessing_UMD_globals_from_modules:t(95076,e.DiagnosticCategory.Message,"Allow_accessing_UMD_globals_from_modules_95076","Allow accessing UMD globals from modules."),Extract_type:t(95077,e.DiagnosticCategory.Message,"Extract_type_95077","Extract type"),Extract_to_type_alias:t(95078,e.DiagnosticCategory.Message,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:t(95079,e.DiagnosticCategory.Message,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:t(95080,e.DiagnosticCategory.Message,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:t(95081,e.DiagnosticCategory.Message,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:t(95082,e.DiagnosticCategory.Message,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:t(95083,e.DiagnosticCategory.Message,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:t(95084,e.DiagnosticCategory.Message,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:t(95085,e.DiagnosticCategory.Message,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:t(95086,e.DiagnosticCategory.Message,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:t(95087,e.DiagnosticCategory.Message,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:t(95088,e.DiagnosticCategory.Message,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:t(95089,e.DiagnosticCategory.Message,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:t(95090,e.DiagnosticCategory.Message,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:t(95091,e.DiagnosticCategory.Message,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:t(95092,e.DiagnosticCategory.Message,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:t(95093,e.DiagnosticCategory.Message,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:t(95094,e.DiagnosticCategory.Message,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:t(95095,e.DiagnosticCategory.Message,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:t(95096,e.DiagnosticCategory.Message,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:t(95097,e.DiagnosticCategory.Message,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:t(95098,e.DiagnosticCategory.Message,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:t(95099,e.DiagnosticCategory.Message,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:t(95100,e.DiagnosticCategory.Message,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:t(95101,e.DiagnosticCategory.Message,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Add_class_tag:t(95102,e.DiagnosticCategory.Message,"Add_class_tag_95102","Add '@class' tag"),Add_this_tag:t(95103,e.DiagnosticCategory.Message,"Add_this_tag_95103","Add '@this' tag"),Add_this_parameter:t(95104,e.DiagnosticCategory.Message,"Add_this_parameter_95104","Add 'this' parameter."),Convert_function_expression_0_to_arrow_function:t(95105,e.DiagnosticCategory.Message,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:t(95106,e.DiagnosticCategory.Message,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:t(95107,e.DiagnosticCategory.Message,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:t(95108,e.DiagnosticCategory.Message,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:t(95109,e.DiagnosticCategory.Message,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_json_to_read_more_about_this_file:t(95110,e.DiagnosticCategory.Message,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_json_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig.json to read more about this file"),Add_a_return_statement:t(95111,e.DiagnosticCategory.Message,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:t(95112,e.DiagnosticCategory.Message,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:t(95113,e.DiagnosticCategory.Message,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:t(95114,e.DiagnosticCategory.Message,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:t(95115,e.DiagnosticCategory.Message,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:t(95116,e.DiagnosticCategory.Message,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:t(95117,e.DiagnosticCategory.Message,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:t(95118,e.DiagnosticCategory.Message,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:t(95119,e.DiagnosticCategory.Message,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:t(95120,e.DiagnosticCategory.Message,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:t(95121,e.DiagnosticCategory.Message,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:t(95122,e.DiagnosticCategory.Message,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:t(95123,e.DiagnosticCategory.Message,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:t(95124,e.DiagnosticCategory.Message,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:t(95125,e.DiagnosticCategory.Message,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:t(95126,e.DiagnosticCategory.Message,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:t(95127,e.DiagnosticCategory.Message,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:t(95128,e.DiagnosticCategory.Message,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:t(95129,e.DiagnosticCategory.Message,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:t(95130,e.DiagnosticCategory.Message,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:t(95131,e.DiagnosticCategory.Message,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:t(95132,e.DiagnosticCategory.Message,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:t(95133,e.DiagnosticCategory.Message,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:t(95134,e.DiagnosticCategory.Message,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:t(95135,e.DiagnosticCategory.Message,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:t(95136,e.DiagnosticCategory.Message,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:t(95137,e.DiagnosticCategory.Message,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:t(95138,e.DiagnosticCategory.Message,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:t(95139,e.DiagnosticCategory.Message,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:t(95140,e.DiagnosticCategory.Message,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:t(95141,e.DiagnosticCategory.Message,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:t(95142,e.DiagnosticCategory.Message,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:t(95143,e.DiagnosticCategory.Message,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:t(95144,e.DiagnosticCategory.Message,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:t(95145,e.DiagnosticCategory.Message,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:t(95146,e.DiagnosticCategory.Message,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:t(95147,e.DiagnosticCategory.Message,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:t(95148,e.DiagnosticCategory.Message,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:t(95149,e.DiagnosticCategory.Message,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:t(95150,e.DiagnosticCategory.Message,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:t(95151,e.DiagnosticCategory.Message,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:t(95152,e.DiagnosticCategory.Message,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:t(95153,e.DiagnosticCategory.Message,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenation:t(95154,e.DiagnosticCategory.Message,"Can_only_convert_string_concatenation_95154","Can only convert string concatenation"),Selection_is_not_a_valid_statement_or_statements:t(95155,e.DiagnosticCategory.Message,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:t(95156,e.DiagnosticCategory.Message,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:t(95157,e.DiagnosticCategory.Message,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:t(95158,e.DiagnosticCategory.Message,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:t(95159,e.DiagnosticCategory.Message,"Function_not_implemented_95159","Function not implemented."),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:t(18004,e.DiagnosticCategory.Error,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:t(18006,e.DiagnosticCategory.Error,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:t(18007,e.DiagnosticCategory.Error,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:t(18009,e.DiagnosticCategory.Error,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:t(18010,e.DiagnosticCategory.Error,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:t(18011,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:t(18012,e.DiagnosticCategory.Error,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:t(18013,e.DiagnosticCategory.Error,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:t(18014,e.DiagnosticCategory.Error,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:t(18015,e.DiagnosticCategory.Error,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:t(18016,e.DiagnosticCategory.Error,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:t(18017,e.DiagnosticCategory.Error,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:t(18018,e.DiagnosticCategory.Error,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:t(18019,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),A_method_cannot_be_named_with_a_private_identifier:t(18022,e.DiagnosticCategory.Error,"A_method_cannot_be_named_with_a_private_identifier_18022","A method cannot be named with a private identifier."),An_accessor_cannot_be_named_with_a_private_identifier:t(18023,e.DiagnosticCategory.Error,"An_accessor_cannot_be_named_with_a_private_identifier_18023","An accessor cannot be named with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:t(18024,e.DiagnosticCategory.Error,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:t(18026,e.DiagnosticCategory.Error,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:t(18027,e.DiagnosticCategory.Error,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:t(18028,e.DiagnosticCategory.Error,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:t(18029,e.DiagnosticCategory.Error,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:t(18030,e.DiagnosticCategory.Error,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:t(18031,e.DiagnosticCategory.Error,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:t(18032,e.DiagnosticCategory.Error,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhaustiveness_checks_consider_using_an_object_literal_instead:t(18033,e.DiagnosticCategory.Error,"Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhau_18033","Only numeric enums can have computed members, but this expression has type '{0}'. If you do not need exhaustiveness checks, consider using an object literal instead."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:t(18034,e.DiagnosticCategory.Message,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:t(18035,e.DiagnosticCategory.Error,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Should_not_add_return_type_to_the_function_that_is_annotated_by_Extend:t(18036,e.DiagnosticCategory.Error,"Should_not_add_return_type_to_the_function_that_is_annotated_by_Extend_18036","Should not add return type to the function that is annotated by Extend."),Decorator_name_must_be_one_of_ETS_Components:t(18037,e.DiagnosticCategory.Error,"Decorator_name_must_be_one_of_ETS_Components_18037","Decorator name must be one of ETS Components"),A_struct_declaration_without_the_default_modifier_must_have_a_name:t(18038,e.DiagnosticCategory.Error,"A_struct_declaration_without_the_default_modifier_must_have_a_name_18038","A struct declaration without the 'default' modifier must have a name."),Should_not_add_return_type_to_the_function_that_is_annotated_by_Styles:t(18039,e.DiagnosticCategory.Error,"Should_not_add_return_type_to_the_function_that_is_annotated_by_Styles_18039","Should not add return type to the function that is annotated by Styles."),Unable_to_resolve_signature_of_function_decorator_when_decorators_are_not_valid:t(18040,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_function_decorator_when_decorators_are_not_valid_18040","Unable to resolve signature of function decorator when decorators are not valid."),The_statement_must_be_written_use_the_function_0_under_the_if_condition:t(28e3,e.DiagnosticCategory.Warning,"The_statement_must_be_written_use_the_function_0_under_the_if_condition_28000","The statement must be written use the function '{0}' under the if condition."),The_struct_name_cannot_contain_reserved_tag_name_Colon_0:t(28001,e.DiagnosticCategory.Error,"The_struct_name_cannot_contain_reserved_tag_name_Colon_0_28001","The struct name cannot contain reserved tag name: '{0}'."),This_API_has_been_Special_Markings_exercise_caution_when_using_this_API:t(28002,e.DiagnosticCategory.Warning,"This_API_has_been_Special_Markings_exercise_caution_when_using_this_API_28002","This API has been Special Markings. exercise caution when using this API."),Looking_up_in_oh_modules_folder_initial_location_0:t(18041,e.DiagnosticCategory.Message,"Looking_up_in_oh_modules_folder_initial_location_0_18041","Looking up in 'oh_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_oh_modules_folder:t(18042,e.DiagnosticCategory.Message,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_oh_modul_18042","Containing file is not specified and root directory cannot be determined, skipping lookup in 'oh_modules' folder."),Loading_module_0_from_oh_modules_folder_target_file_type_1:t(18043,e.DiagnosticCategory.Message,"Loading_module_0_from_oh_modules_folder_target_file_type_1_18043","Loading module '{0}' from 'oh_modules' folder, target file type '{1}'."),Found_oh_package_json5_at_0:t(18044,e.DiagnosticCategory.Message,"Found_oh_package_json5_at_0_18044","Found 'oh-package.json5' at '{0}'."),oh_package_json5_does_not_have_a_0_field:t(18045,e.DiagnosticCategory.Message,"oh_package_json5_does_not_have_a_0_field_18045","'oh-package.json5' does not have a '{0}' field."),oh_package_json5_has_0_field_1_that_references_2:t(18046,e.DiagnosticCategory.Message,"oh_package_json5_has_0_field_1_that_references_2_18046","'oh-package.json5' has '{0}' field '{1}' that references '{2}'."),Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in_later_SDK_version_Please_make_sure_the_corresponding_d_ts_file_is_provided_and_the_napis_are_correctly_declared:t(18047,e.DiagnosticCategory.Warning,"Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in__18047","Currently module for '{0}' is not verified. If you're importing napi, its verification will be enabled in later SDK version. Please make sure the corresponding .d.ts file is provided and the napis are correctly declared."),UI_component_0_cannot_be_used_in_this_place:t(18048,e.DiagnosticCategory.Error,"UI_component_0_cannot_be_used_in_this_place_18048","UI component '{0}' cannot be used in this place."),Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden:t(18049,e.DiagnosticCategory.Warning,"Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden_18049","Importing ArkTS files in JS and TS files is about to be forbidden."),Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden:t(18050,e.DiagnosticCategory.Error,"Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden_18050","Importing ArkTS files in JS and TS files is forbidden.")}}(d||(d={})),function(e){var t;function r(e){return e>=78}e.tokenIsIdentifierOrKeyword=r,e.tokenIsIdentifierOrKeywordOrGreaterThan=function(e){return 31===e||r(e)};var n=((t={abstract:126,any:129,as:127,asserts:128,bigint:156,boolean:132,break:80,case:81,catch:82,class:83,struct:84,continue:86,const:85}).constructor=133,t.debugger=87,t.declare=134,t.default=88,t.delete=89,t.do=90,t.else=91,t.enum=92,t.export=93,t.extends=94,t.false=95,t.finally=96,t.for=97,t.from=154,t.function=98,t.get=135,t.if=99,t.implements=117,t.import=100,t.in=101,t.infer=136,t.instanceof=102,t.interface=118,t.intrinsic=137,t.is=138,t.keyof=139,t.let=119,t.module=140,t.namespace=141,t.never=142,t.new=103,t.null=104,t.number=145,t.object=146,t.package=120,t.private=121,t.protected=122,t.public=123,t.readonly=143,t.require=144,t.global=155,t.return=105,t.set=147,t.static=124,t.string=148,t.super=106,t.switch=107,t.symbol=149,t.this=108,t.throw=109,t.true=110,t.try=111,t.type=150,t.typeof=112,t.undefined=151,t.unique=152,t.unknown=153,t.var=113,t.void=114,t.while=115,t.with=116,t.yield=125,t.async=130,t.await=131,t.of=157,t),i=new e.Map(e.getEntries(n)),o=new e.Map(e.getEntries(a(a({},n),{"{":18,"}":19,"(":20,")":21,"[":22,"]":23,".":24,"...":25,";":26,",":27,"<":29,">":31,"<=":32,">=":33,"==":34,"!=":35,"===":36,"!==":37,"=>":38,"+":39,"-":40,"**":42,"*":41,"/":43,"%":44,"++":45,"--":46,"<<":47,"</":30,">>":48,">>>":49,"&":50,"|":51,"^":52,"!":53,"~":54,"&&":55,"||":56,"?":57,"??":60,"?.":28,":":58,"=":62,"+=":63,"-=":64,"*=":65,"**=":66,"/=":67,"%=":68,"<<=":69,">>=":70,">>>=":71,"&=":72,"|=":73,"^=":77,"||=":74,"&&=":75,"??=":76,"@":59,"`":61}))),s=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1569,1594,1600,1610,1649,1747,1749,1749,1765,1766,1786,1788,1808,1808,1810,1836,1920,1957,2309,2361,2365,2365,2384,2384,2392,2401,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2784,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2877,2877,2908,2909,2911,2913,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3294,3294,3296,3297,3333,3340,3342,3344,3346,3368,3370,3385,3424,3425,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3946,3976,3979,4096,4129,4131,4135,4137,4138,4176,4181,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6067,6176,6263,6272,6312,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8319,8319,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12329,12337,12341,12344,12346,12353,12436,12445,12446,12449,12538,12540,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65138,65140,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],c=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,768,846,864,866,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1155,1158,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1425,1441,1443,1465,1467,1469,1471,1471,1473,1474,1476,1476,1488,1514,1520,1522,1569,1594,1600,1621,1632,1641,1648,1747,1749,1756,1759,1768,1770,1773,1776,1788,1808,1836,1840,1866,1920,1968,2305,2307,2309,2361,2364,2381,2384,2388,2392,2403,2406,2415,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2524,2525,2527,2531,2534,2545,2562,2562,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2649,2652,2654,2654,2662,2676,2689,2691,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2784,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2876,2883,2887,2888,2891,2893,2902,2903,2908,2909,2911,2913,2918,2927,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3006,3010,3014,3016,3018,3021,3031,3031,3047,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3134,3140,3142,3144,3146,3149,3157,3158,3168,3169,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3262,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3297,3302,3311,3330,3331,3333,3340,3342,3344,3346,3368,3370,3385,3390,3395,3398,3400,3402,3405,3415,3415,3424,3425,3430,3439,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3805,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3946,3953,3972,3974,3979,3984,3991,3993,4028,4038,4038,4096,4129,4131,4135,4137,4138,4140,4146,4150,4153,4160,4169,4176,4185,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,4969,4977,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6099,6112,6121,6160,6169,6176,6263,6272,6313,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8319,8319,8400,8412,8417,8417,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12335,12337,12341,12344,12346,12353,12436,12441,12442,12445,12446,12449,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65056,65059,65075,65076,65101,65103,65136,65138,65140,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500],l=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],u=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],d=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2208,2228,2230,2237,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42943,42946,42950,42999,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69376,69404,69415,69415,69424,69445,69600,69622,69635,69687,69763,69807,69840,69864,69891,69926,69956,69956,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70751,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71680,71723,71840,71903,71935,71935,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72384,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,123136,123180,123191,123197,123214,123214,123584,123627,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101],p=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2208,2228,2230,2237,2259,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3162,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3328,3331,3333,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7673,7675,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42943,42946,42950,42999,43047,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69376,69404,69415,69415,69424,69456,69600,69622,69632,69702,69734,69743,69759,69818,69840,69864,69872,69881,69888,69940,69942,69951,69956,69958,69968,70003,70006,70006,70016,70084,70089,70092,70096,70106,70108,70108,70144,70161,70163,70199,70206,70206,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70751,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71680,71738,71840,71913,71935,71935,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72384,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92768,92777,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,123136,123180,123184,123197,123200,123209,123214,123214,123584,123641,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101,917760,917999],f=/^\s*\/\/\/?\s*@(ts-expect-error|ts-ignore)/,m=/^\s*(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/;function g(e,t){if(e<t[0])return!1;for(var r,n=0,i=t.length;n+1<i;){if(r=n+(i-n)/2,t[r-=r%2]<=e&&e<=t[r+1])return!0;e<t[r]?i=r:n=r+2}return!1}function _(e,t){return g(e,t>=2?d:1===t?l:s)}e.isUnicodeIdentifierStart=_;var h,y=(h=[],o.forEach((function(e,t){h[e]=t})),h);function v(e){for(var t=new Array,r=0,n=0;r<e.length;){var i=e.charCodeAt(r);switch(r++,i){case 13:10===e.charCodeAt(r)&&r++;case 10:t.push(n),n=r;break;default:i>127&&E(i)&&(t.push(n),n=r)}}return t.push(n),t}function b(t,r,n,i,a){(r<0||r>=t.length)&&(a?r=r<0?0:r>=t.length?t.length-1:r:e.Debug.fail("Bad line number. Line: "+r+", lineStarts.length: "+t.length+" , line map is correct? "+(void 0!==i?e.arraysEqual(t,v(i)):"unknown")));var o=t[r]+n;return a?o>t[r+1]?t[r+1]:"string"==typeof i&&o>i.length?i.length:o:(r<t.length-1?e.Debug.assert(o<t[r+1]):void 0!==i&&e.Debug.assert(o<=i.length),o)}function k(e){return e.lineMap||(e.lineMap=v(e.text))}function x(e,t){var r=S(e,t);return{line:r,character:t-e[r]}}function S(t,r,n){var i=e.binarySearch(t,r,e.identity,e.compareValues,n);return i<0&&(i=~i-1,e.Debug.assert(-1!==i,"position cannot precede the beginning of the file")),i}function w(e){return D(e)||E(e)}function D(e){return 32===e||9===e||11===e||12===e||160===e||133===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function E(e){return 10===e||13===e||8232===e||8233===e}function T(e){return e>=48&&e<=57}function C(e){return T(e)||e>=65&&e<=70||e>=97&&e<=102}function A(e){return e>=48&&e<=55}e.tokenToString=function(e){return y[e]},e.stringToToken=function(e){return o.get(e)},e.computeLineStarts=v,e.getPositionOfLineAndCharacter=function(e,t,r,n){return e.getPositionOfLineAndCharacter?e.getPositionOfLineAndCharacter(t,r,n):b(k(e),t,r,e.text,n)},e.computePositionOfLineAndCharacter=b,e.getLineStarts=k,e.computeLineAndCharacterOfPosition=x,e.computeLineOfPosition=S,e.getLinesBetweenPositions=function(e,t,r){if(t===r)return 0;var n=k(e),i=Math.min(t,r),a=i===r,o=a?t:r,s=S(n,i),c=S(n,o,s);return a?s-c:c-s},e.getLineAndCharacterOfPosition=function(e,t){return x(k(e),t)},e.isWhiteSpaceLike=w,e.isWhiteSpaceSingleLine=D,e.isLineBreak=E,e.isOctalDigit=A,e.couldStartTrivia=function(e,t){var r=e.charCodeAt(t);switch(r){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return 0===t;default:return r>127}},e.skipTrivia=function(t,r,n,i){if(void 0===i&&(i=!1),e.positionIsSynthesized(r))return r;for(;;){var a=t.charCodeAt(r);switch(a){case 13:10===t.charCodeAt(r+1)&&r++;case 10:if(r++,n)return r;continue;case 9:case 11:case 12:case 32:r++;continue;case 47:if(i)break;if(47===t.charCodeAt(r+1)){for(r+=2;r<t.length&&!E(t.charCodeAt(r));)r++;continue}if(42===t.charCodeAt(r+1)){for(r+=2;r<t.length;){if(42===t.charCodeAt(r)&&47===t.charCodeAt(r+1)){r+=2;break}r++}continue}break;case 60:case 124:case 61:case 62:if(P(t,r)){r=I(t,r);continue}break;case 35:if(0===r&&O(t,r)){r=R(t,r);continue}break;default:if(a>127&&w(a)){r++;continue}}return r}};var N=7;function P(t,r){if(e.Debug.assert(r>=0),0===r||E(t.charCodeAt(r-1))){var n=t.charCodeAt(r);if(r+N<t.length){for(var i=0;i<N;i++)if(t.charCodeAt(r+i)!==n)return!1;return 61===n||32===t.charCodeAt(r+N)}}return!1}function I(t,r,n){n&&n(e.Diagnostics.Merge_conflict_marker_encountered,r,N);var i=t.charCodeAt(r),a=t.length;if(60===i||62===i)for(;r<a&&!E(t.charCodeAt(r));)r++;else for(e.Debug.assert(124===i||61===i);r<a;){var o=t.charCodeAt(r);if((61===o||62===o)&&o!==i&&P(t,r))break;r++}return r}var F=/^#!.*/;function O(t,r){return e.Debug.assert(0===r),F.test(t)}function R(e,t){return t+=F.exec(e)[0].length}function M(e,t,r,n,i,a,o){var s,c,l,u,d=!1,p=n,f=o;if(0===r){p=!0;var m=z(t);m&&(r=m.length)}e:for(;r>=0&&r<t.length;){var g=t.charCodeAt(r);switch(g){case 13:10===t.charCodeAt(r+1)&&r++;case 10:if(r++,n)break e;p=!0,d&&(u=!0);continue;case 9:case 11:case 12:case 32:r++;continue;case 47:var _=t.charCodeAt(r+1),h=!1;if(47===_||42===_){var y=47===_?2:3,v=r;if(r+=2,47===_)for(;r<t.length;){if(E(t.charCodeAt(r))){h=!0;break}r++}else for(;r<t.length;){if(42===t.charCodeAt(r)&&47===t.charCodeAt(r+1)){r+=2;break}r++}if(p){if(d&&(f=i(s,c,l,u,a,f),!e&&f))return f;s=v,c=r,l=y,u=h,d=!0}continue}break e;default:if(g>127&&w(g)){d&&E(g)&&(u=!0),r++;continue}break e}}return d&&(f=i(s,c,l,u,a,f)),f}function L(e,t,r,n,i){return M(!0,e,t,!1,r,n,i)}function j(e,t,r,n,i){return M(!0,e,t,!0,r,n,i)}function B(e,t,r,n,i,a){return a||(a=[]),a.push({kind:r,pos:e,end:t,hasTrailingNewLine:n}),a}function z(e){var t=F.exec(e);if(t)return t[0]}function U(e,t){return e>=65&&e<=90||e>=97&&e<=122||36===e||95===e||e>127&&_(e,t)}function q(e,t,r){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||36===e||95===e||1===r&&(45===e||58===e)||e>127&&function(e,t){return g(e,t>=2?p:1===t?u:c)}(e,t)}e.isShebangTrivia=O,e.scanShebangTrivia=R,e.forEachLeadingCommentRange=function(e,t,r,n){return M(!1,e,t,!1,r,n)},e.forEachTrailingCommentRange=function(e,t,r,n){return M(!1,e,t,!0,r,n)},e.reduceEachLeadingCommentRange=L,e.reduceEachTrailingCommentRange=j,e.getLeadingCommentRanges=function(e,t){return L(e,t,B,void 0,void 0)},e.getTrailingCommentRanges=function(e,t){return j(e,t,B,void 0,void 0)},e.getShebang=z,e.isIdentifierStart=U,e.isIdentifierPart=q,e.isIdentifierText=function(e,t,r){var n=J(e,0);if(!U(n,t))return!1;for(var i=V(n);i<e.length;i+=V(n))if(!q(n=J(e,i),t,r))return!1;return!0},e.createScanner=function(t,n,a,o,s,c,l){void 0===a&&(a=0);var u,d,p,g,_,h,y,v,b=o,k=0,x=!1;ue(b,c,l);var S={getStartPos:function(){return p},getTextPos:function(){return u},getToken:function(){return _},getTokenPos:function(){return g},getTokenText:function(){return b.substring(g,u)},getTokenValue:function(){return h},hasUnicodeEscape:function(){return!!(1024&y)},hasExtendedUnicodeEscape:function(){return!!(8&y)},hasPrecedingLineBreak:function(){return!!(1&y)},hasPrecedingJSDocComment:function(){return!!(2&y)},isIdentifier:function(){return 78===_||_>116},isReservedWord:function(){return _>=80&&_<=116},isUnterminated:function(){return!!(4&y)},getCommentDirectives:function(){return v},getNumericLiteralFlags:function(){return 1008&y},getTokenFlags:function(){return y},reScanGreaterToken:function(){if(31===_){if(62===b.charCodeAt(u))return 62===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=71):(u+=2,_=49):61===b.charCodeAt(u+1)?(u+=2,_=70):(u++,_=48);if(61===b.charCodeAt(u))return u++,_=33}return _},reScanAsteriskEqualsToken:function(){return e.Debug.assert(65===_,"'reScanAsteriskEqualsToken' should only be called on a '*='"),u=g+1,_=62},reScanSlashToken:function(){if(43===_||67===_){for(var r=g+1,n=!1,i=!1;;){if(r>=d){y|=4,N(e.Diagnostics.Unterminated_regular_expression_literal);break}var a=b.charCodeAt(r);if(E(a)){y|=4,N(e.Diagnostics.Unterminated_regular_expression_literal);break}if(n)n=!1;else{if(47===a&&!i){r++;break}91===a?i=!0:92===a?n=!0:93===a&&(i=!1)}r++}for(;r<d&&q(b.charCodeAt(r),t);)r++;u=r,h=b.substring(g,u),_=13}return _},reScanTemplateToken:function(t){return e.Debug.assert(19===_,"'reScanTemplateToken' should only be called on a '}'"),u=g,_=G(t)},reScanTemplateHeadOrNoSubstitutionTemplate:function(){return u=g,_=G(!0)},scanJsxIdentifier:function(){if(r(_)){for(var e=!1;u<d;){var t=b.charCodeAt(u);if(45!==t)if(58!==t||e){var n=u;if(h+=ee(),u===n)break}else h+=":",u++,e=!0;else h+="-",u++}":"===h.slice(-1)&&(h=h.slice(0,-1),u--)}return _},scanJsxAttributeValue:ce,reScanJsxAttributeValue:function(){return u=g=p,ce()},reScanJsxToken:function(){return u=g=p,_=se()},reScanLessThanToken:function(){if(47===_)return u=g+1,_=29;return _},reScanQuestionToken:function(){return e.Debug.assert(60===_,"'reScanQuestionToken' should only be called on a '??'"),u=g+1,_=57},reScanInvalidIdentifier:function(){e.Debug.assert(0===_,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),u=g=p,y=0;var t=J(b,u),r=ae(t,99);if(r)return _=r;return u+=V(t),_},scanJsxToken:se,scanJsDocToken:function(){if(p=g=u,y=0,u>=d)return _=1;var e=J(b,u);switch(u+=V(e),e){case 9:case 11:case 12:case 32:for(;u<d&&D(b.charCodeAt(u));)u++;return _=5;case 64:return _=59;case 13:10===b.charCodeAt(u)&&u++;case 10:return y|=1,_=4;case 42:return _=41;case 123:return _=18;case 125:return _=19;case 91:return _=22;case 93:return _=23;case 60:return _=29;case 62:return _=31;case 61:return _=62;case 44:return _=27;case 46:return _=24;case 96:return _=61;case 92:u--;var r=Z();if(r>=0&&U(r,t))return u+=3,y|=8,h=X()+ee(),_=te();var n=Q();return n>=0&&U(n,t)?(u+=6,y|=1024,h=String.fromCharCode(n)+ee(),_=te()):(u++,_=0)}if(U(e,t)){for(var i=e;u<d&&q(i=J(b,u),t)||45===b.charCodeAt(u);)u+=V(i);return h=b.substring(g,u),92===i&&(h+=ee()),_=te()}return _=0},scan:ie,getText:function(){return b},clearCommentDirectives:function(){v=void 0},setText:ue,setScriptTarget:function(e){t=e},setLanguageVariant:function(e){a=e},setOnError:function(e){s=e},setTextPos:de,setInJSDocType:function(e){k+=e?1:-1},tryScan:function(e){return le(e,!1)},lookAhead:function(e){return le(e,!0)},scanRange:function(e,t,r){var n=d,i=u,a=p,o=g,s=_,c=h,l=y,f=v;ue(b,e,t);var m=r();return d=n,u=i,p=a,g=o,_=s,h=c,y=l,v=f,m},setEtsContext:function(e){x=e}};return e.Debug.isDebugging&&Object.defineProperty(S,"__debugShowCurrentPositionInText",{get:function(){var e=S.getText();return e.slice(0,S.getStartPos())+"║"+e.slice(S.getStartPos())}}),S;function N(e,t,r){if(void 0===t&&(t=u),s){var n=u;u=t,s(e,r||0),u=n}}function F(){for(var t=u,r=!1,n=!1,i="";;){var a=b.charCodeAt(u);if(95!==a){if(!T(a))break;r=!0,n=!1,u++}else y|=512,r?(r=!1,n=!0,i+=b.substring(t,u)):N(n?e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:e.Diagnostics.Numeric_separators_are_not_allowed_here,u,1),t=++u}return 95===b.charCodeAt(u-1)&&N(e.Diagnostics.Numeric_separators_are_not_allowed_here,u-1,1),i+b.substring(t,u)}function M(){var t,r,n=u,i=F();46===b.charCodeAt(u)&&(u++,t=F());var a,o=u;if(69===b.charCodeAt(u)||101===b.charCodeAt(u)){u++,y|=16,43!==b.charCodeAt(u)&&45!==b.charCodeAt(u)||u++;var s=u,c=F();c?(r=b.substring(o,s)+c,o=u):N(e.Diagnostics.Digit_expected)}if(512&y?(a=i,t&&(a+="."+t),r&&(a+=r)):a=b.substring(n,o),void 0!==t||16&y)return L(n,void 0===t&&!!(16&y)),{type:8,value:""+ +a};h=a;var l=ne();return L(n),{type:l,value:h}}function L(r,n){if(U(J(b,u),t)){var i=u,a=ee().length;1===a&&"n"===b[i]?N(n?e.Diagnostics.A_bigint_literal_cannot_use_exponential_notation:e.Diagnostics.A_bigint_literal_must_be_an_integer,r,i-r+1):(N(e.Diagnostics.An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal,i,a),u=i)}}function j(){for(var e=u;A(b.charCodeAt(u));)u++;return+b.substring(e,u)}function B(e,t){var r=H(e,!1,t);return r?parseInt(r,16):-1}function z(e,t){return H(e,!0,t)}function H(t,r,n){for(var i=[],a=!1,o=!1;i.length<t||r;){var s=b.charCodeAt(u);if(n&&95===s)y|=512,a?(a=!1,o=!0):N(o?e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:e.Diagnostics.Numeric_separators_are_not_allowed_here,u,1),u++;else{if(a=n,s>=65&&s<=70)s+=32;else if(!(s>=48&&s<=57||s>=97&&s<=102))break;i.push(s),u++,o=!1}}return i.length<t&&(i=[]),95===b.charCodeAt(u-1)&&N(e.Diagnostics.Numeric_separators_are_not_allowed_here,u-1,1),String.fromCharCode.apply(String,i)}function W(t){void 0===t&&(t=!1);for(var r=b.charCodeAt(u),n="",i=++u;;){if(u>=d){n+=b.substring(i,u),y|=4,N(e.Diagnostics.Unterminated_string_literal);break}var a=b.charCodeAt(u);if(a===r){n+=b.substring(i,u),u++;break}if(92!==a||t){if(E(a)&&!t){n+=b.substring(i,u),y|=4,N(e.Diagnostics.Unterminated_string_literal);break}u++}else n+=b.substring(i,u),n+=$(),i=u}return n}function G(t){for(var r,n=96===b.charCodeAt(u),i=++u,a="";;){if(u>=d){a+=b.substring(i,u),y|=4,N(e.Diagnostics.Unterminated_template_literal),r=n?14:17;break}var o=b.charCodeAt(u);if(96===o){a+=b.substring(i,u),u++,r=n?14:17;break}if(36===o&&u+1<d&&123===b.charCodeAt(u+1)){a+=b.substring(i,u),u+=2,r=n?15:16;break}92!==o?13!==o?u++:(a+=b.substring(i,u),++u<d&&10===b.charCodeAt(u)&&u++,a+="\n",i=u):(a+=b.substring(i,u),a+=$(t),i=u)}return e.Debug.assert(void 0!==r),h=a,r}function $(t){var r=u;if(++u>=d)return N(e.Diagnostics.Unexpected_end_of_text),"";var n=b.charCodeAt(u);switch(u++,n){case 48:return t&&u<d&&T(b.charCodeAt(u))?(u++,y|=2048,b.substring(r,u)):"\0";case 98:return"\b";case 116:return"\t";case 110:return"\n";case 118:return"\v";case 102:return"\f";case 114:return"\r";case 39:return"'";case 34:return'"';case 117:if(t)for(var i=u;i<u+4;i++)if(i<d&&!C(b.charCodeAt(i))&&123!==b.charCodeAt(i))return u=i,y|=2048,b.substring(r,u);if(u<d&&123===b.charCodeAt(u)){if(u++,t&&!C(b.charCodeAt(u)))return y|=2048,b.substring(r,u);if(t){var a=u,o=z(1,!1),s=o?parseInt(o,16):-1;if(!(s<=1114111&&125===b.charCodeAt(u)))return y|=2048,b.substring(r,u);u=a}return y|=8,X()}return y|=1024,Y(4);case 120:if(t){if(!C(b.charCodeAt(u)))return y|=2048,b.substring(r,u);if(!C(b.charCodeAt(u+1)))return u++,y|=2048,b.substring(r,u)}return Y(2);case 13:u<d&&10===b.charCodeAt(u)&&u++;case 10:case 8232:case 8233:return"";default:return String.fromCharCode(n)}}function Y(t){var r=B(t,!1);return r>=0?String.fromCharCode(r):(N(e.Diagnostics.Hexadecimal_digit_expected),"")}function X(){var t=z(1,!1),r=t?parseInt(t,16):-1,n=!1;return r<0?(N(e.Diagnostics.Hexadecimal_digit_expected),n=!0):r>1114111&&(N(e.Diagnostics.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive),n=!0),u>=d?(N(e.Diagnostics.Unexpected_end_of_text),n=!0):125===b.charCodeAt(u)?u++:(N(e.Diagnostics.Unterminated_Unicode_escape_sequence),n=!0),n?"":K(r)}function Q(){if(u+5<d&&117===b.charCodeAt(u+1)){var e=u;u+=2;var t=B(4,!1);return u=e,t}return-1}function Z(){if(t>=2&&117===J(b,u+1)&&123===J(b,u+2)){var e=u;u+=3;var r=z(1,!1),n=r?parseInt(r,16):-1;return u=e,n}return-1}function ee(){for(var e="",r=u;u<d;){var n=J(b,u);if(q(n,t))u+=V(n);else{if(92!==n)break;if((n=Z())>=0&&q(n,t)){u+=3,y|=8,e+=X(),r=u;continue}if(!((n=Q())>=0&&q(n,t)))break;y|=1024,e+=b.substring(r,u),e+=K(n),r=u+=6}}return e+=b.substring(r,u)}function te(){var e=h.length;if(e>=2&&e<=12){var t=h.charCodeAt(0);if(t>=97&&t<=122){var r=i.get(h);if(void 0!==r)return _=r,84!==r||x||(_=78),_}}return _=78}function re(t){for(var r="",n=!1,i=!1;;){var a=b.charCodeAt(u);if(95!==a){if(n=!0,!T(a)||a-48>=t)break;r+=b[u],u++,i=!1}else y|=512,n?(n=!1,i=!0):N(i?e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:e.Diagnostics.Numeric_separators_are_not_allowed_here,u,1),u++}return 95===b.charCodeAt(u-1)&&N(e.Diagnostics.Numeric_separators_are_not_allowed_here,u-1,1),r}function ne(){if(110===b.charCodeAt(u))return h+="n",384&y&&(h=e.parsePseudoBigInt(h)+"n"),u++,9;var t=128&y?parseInt(h.slice(2),2):256&y?parseInt(h.slice(2),8):+h;return h=""+t,8}function ie(){var r;p=u,y=0;for(var i=!1;;){if(g=u,u>=d)return _=1;var o=J(b,u);if(35===o&&0===u&&O(b,u)){if(u=R(b,u),n)continue;return _=6}switch(o){case 10:case 13:if(y|=1,n){u++;continue}return 13===o&&u+1<d&&10===b.charCodeAt(u+1)?u+=2:u++,_=4;case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8203:case 8239:case 8287:case 12288:case 65279:if(n){u++;continue}for(;u<d&&D(b.charCodeAt(u));)u++;return _=5;case 33:return 61===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=37):(u+=2,_=35):(u++,_=53);case 34:case 39:return h=W(),_=10;case 96:return _=G(!1);case 37:return 61===b.charCodeAt(u+1)?(u+=2,_=68):(u++,_=44);case 38:return 38===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=75):(u+=2,_=55):61===b.charCodeAt(u+1)?(u+=2,_=72):(u++,_=50);case 40:return u++,_=20;case 41:return u++,_=21;case 42:if(61===b.charCodeAt(u+1))return u+=2,_=65;if(42===b.charCodeAt(u+1))return 61===b.charCodeAt(u+2)?(u+=3,_=66):(u+=2,_=42);if(u++,k&&!i&&1&y){i=!0;continue}return _=41;case 43:return 43===b.charCodeAt(u+1)?(u+=2,_=45):61===b.charCodeAt(u+1)?(u+=2,_=63):(u++,_=39);case 44:return u++,_=27;case 45:return 45===b.charCodeAt(u+1)?(u+=2,_=46):61===b.charCodeAt(u+1)?(u+=2,_=64):(u++,_=40);case 46:return T(b.charCodeAt(u+1))?(h=M().value,_=8):46===b.charCodeAt(u+1)&&46===b.charCodeAt(u+2)?(u+=3,_=25):(u++,_=24);case 47:if(47===b.charCodeAt(u+1)){for(u+=2;u<d&&!E(b.charCodeAt(u));)u++;if(v=oe(v,b.slice(g,u),f,g),n)continue;return _=2}if(42===b.charCodeAt(u+1)){u+=2,42===b.charCodeAt(u)&&47!==b.charCodeAt(u+1)&&(y|=2);for(var s=!1,c=g;u<d;){var l=b.charCodeAt(u);if(42===l&&47===b.charCodeAt(u+1)){u+=2,s=!0;break}u++,E(l)&&(c=u,y|=1)}if(v=oe(v,b.slice(c,u),m,c),s||N(e.Diagnostics.Asterisk_Slash_expected),n)continue;return s||(y|=4),_=3}return 61===b.charCodeAt(u+1)?(u+=2,_=67):(u++,_=43);case 48:if(u+2<d&&(88===b.charCodeAt(u+1)||120===b.charCodeAt(u+1)))return u+=2,(h=z(1,!0))||(N(e.Diagnostics.Hexadecimal_digit_expected),h="0"),h="0x"+h,y|=64,_=ne();if(u+2<d&&(66===b.charCodeAt(u+1)||98===b.charCodeAt(u+1)))return u+=2,(h=re(2))||(N(e.Diagnostics.Binary_digit_expected),h="0"),h="0b"+h,y|=128,_=ne();if(u+2<d&&(79===b.charCodeAt(u+1)||111===b.charCodeAt(u+1)))return u+=2,(h=re(8))||(N(e.Diagnostics.Octal_digit_expected),h="0"),h="0o"+h,y|=256,_=ne();if(u+1<d&&A(b.charCodeAt(u+1)))return h=""+j(),y|=32,_=8;case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return r=M(),_=r.type,h=r.value,_;case 58:return u++,_=58;case 59:return u++,_=26;case 60:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return 60===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=69):(u+=2,_=47):61===b.charCodeAt(u+1)?(u+=2,_=32):1===a&&47===b.charCodeAt(u+1)&&42!==b.charCodeAt(u+2)?(u+=2,_=30):(u++,_=29);case 61:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return 61===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=36):(u+=2,_=34):62===b.charCodeAt(u+1)?(u+=2,_=38):(u++,_=62);case 62:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return u++,_=31;case 63:return 46!==b.charCodeAt(u+1)||T(b.charCodeAt(u+2))?63===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=76):(u+=2,_=60):(u++,_=57):(u+=2,_=28);case 91:return u++,_=22;case 93:return u++,_=23;case 94:return 61===b.charCodeAt(u+1)?(u+=2,_=77):(u++,_=52);case 123:return u++,_=18;case 124:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return 124===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=74):(u+=2,_=56):61===b.charCodeAt(u+1)?(u+=2,_=73):(u++,_=51);case 125:return u++,_=19;case 126:return u++,_=54;case 64:return u++,_=59;case 92:var x=Z();if(x>=0&&U(x,t))return u+=3,y|=8,h=X()+ee(),_=te();var S=Q();return S>=0&&U(S,t)?(u+=6,y|=1024,h=String.fromCharCode(S)+ee(),_=te()):(N(e.Diagnostics.Invalid_character),u++,_=0);case 35:if(0!==u&&"!"===b[u+1])return N(e.Diagnostics.can_only_be_used_at_the_start_of_a_file),u++,_=0;if(u++,U(o=b.charCodeAt(u),t)){for(u++;u<d&&q(o=b.charCodeAt(u),t);)u++;h=b.substring(g,u),92===o&&(h+=ee())}else h="#",N(e.Diagnostics.Invalid_character);return _=79;default:var w=ae(o,t);if(w)return _=w;if(D(o)){u+=V(o);continue}if(E(o)){y|=1,u+=V(o);continue}return N(e.Diagnostics.Invalid_character),u+=V(o),_=0}}}function ae(e,t){var r=e;if(U(r,t)){for(u+=V(r);u<d&&q(r=J(b,u),t);)u+=V(r);return h=b.substring(g,u),92===r&&(h+=ee()),te()}}function oe(t,r,n,i){var a=function(e,t){var r=t.exec(e);if(!r)return;switch(r[1]){case"ts-expect-error":return 0;case"ts-ignore":return 1}return}(r,n);return void 0===a?t:e.append(t,{range:{pos:i,end:u},type:a})}function se(){if(p=g=u,u>=d)return _=1;var t=b.charCodeAt(u);if(60===t)return 47===b.charCodeAt(u+1)?(u+=2,_=30):(u++,_=29);if(123===t)return u++,_=18;for(var r=0,n=-1;u<d&&(D(t)||(n=u),123!==(t=b.charCodeAt(u)));){if(60===t){if(P(b,u))return u=I(b,u,N),_=7;break}62===t&&N(e.Diagnostics.Unexpected_token_Did_you_mean_or_gt,u,1),125===t&&N(e.Diagnostics.Unexpected_token_Did_you_mean_or_rbrace,u,1),n>0&&n++,E(t)&&0===r?r=-1:w(t)||(r=u),u++}var i=-1===n?u:n;return h=b.substring(p,i),-1===r?12:11}function ce(){switch(p=u,b.charCodeAt(u)){case 34:case 39:return h=W(!0),_=10;default:return ie()}}function le(e,t){var r=u,n=p,i=g,a=_,o=h,s=y,c=e();return c&&!t||(u=r,p=n,g=i,_=a,h=o,y=s),c}function ue(e,t,r){b=e||"",d=void 0===r?b.length:t+r,de(t||0)}function de(t){e.Debug.assert(t>=0),u=t,p=t,g=t,_=0,h=void 0,y=0}};var J=String.prototype.codePointAt?function(e,t){return e.codePointAt(t)}:function(e,t){var r=e.length;if(!(t<0||t>=r)){var n=e.charCodeAt(t);if(n>=55296&&n<=56319&&r>t+1){var i=e.charCodeAt(t+1);if(i>=56320&&i<=57343)return 1024*(n-55296)+i-56320+65536}return n}};function V(e){return e>=65536?2:1}var H=String.fromCodePoint?function(e){return String.fromCodePoint(e)}:function(t){if(e.Debug.assert(0<=t&&t<=1114111),t<=65535)return String.fromCharCode(t);var r=Math.floor((t-65536)/1024)+55296,n=(t-65536)%1024+56320;return String.fromCharCode(r,n)};function K(e){return H(e)}e.utf16EncodeAsString=K}(d||(d={})),function(e){function t(e){return e.start+e.length}function r(e){return 0===e.length}function n(e,t){var r=a(e,t);return r&&0===r.length?void 0:r}function i(e,t,r,n){return r<=e+t&&r+n>=e}function a(e,r){var n=Math.max(e.start,r.start),i=Math.min(t(e),t(r));return n<=i?s(n,i):void 0}function o(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function s(e,t){return o(e,t-e)}function c(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}function l(t){return!!Y(t)&&e.every(t.elements,u)}function u(t){return!!e.isOmittedExpression(t)||l(t.name)}function d(t){for(var r=t.parent;e.isBindingElement(r.parent);)r=r.parent.parent;return r.parent}function p(t,r){e.isBindingElement(t)&&(t=d(t));var n=r(t);return 251===t.kind&&(t=t.parent),t&&252===t.kind&&(n|=r(t),t=t.parent),t&&234===t.kind&&(n|=r(t)),n}function f(e){return!(8&e.flags)}function m(e){var t=e;return t.length>=3&&95===t.charCodeAt(0)&&95===t.charCodeAt(1)&&95===t.charCodeAt(2)?t.substr(1):t}function g(e){return m(e.escapedText)}function _(t){var r=t.parent.parent;if(r){if(ae(r))return h(r);switch(r.kind){case 234:if(r.declarationList&&r.declarationList.declarations[0])return h(r.declarationList.declarations[0]);break;case 235:var n=r.expression;switch(218===n.kind&&62===n.operatorToken.kind&&(n=n.left),n.kind){case 202:return n.name;case 203:var i=n.argumentExpression;if(e.isIdentifier(i))return i}break;case 208:return h(r.expression);case 247:if(ae(r.statement)||te(r.statement))return h(r.statement)}}}function h(t){var r=k(t);return r&&e.isIdentifier(r)?r:void 0}function y(e){return e.name||_(e)}function v(e){return!!e.name}function b(t){switch(t.kind){case 78:return t;case 336:case 329:var r=t.name;if(158===r.kind)return r.right;break;case 204:case 218:var n=t;switch(e.getAssignmentDeclarationKind(n)){case 1:case 4:case 5:case 3:return e.getElementOrPropertyAccessArgumentExpressionOrName(n.left);case 7:case 8:case 9:return n.arguments[1];default:return}case 334:return y(t);case 328:return _(t);case 269:var i=t.expression;return e.isIdentifier(i)?i:void 0;case 203:var a=t;if(e.isBindableStaticElementAccessExpression(a))return a.argumentExpression}return t.name}function k(t){if(void 0!==t)return b(t)||(e.isFunctionExpression(t)||e.isClassExpression(t)?x(t):void 0)}function x(t){if(t.parent){if(e.isPropertyAssignment(t.parent)||e.isBindingElement(t.parent))return t.parent.name;if(e.isBinaryExpression(t.parent)&&t===t.parent.right){if(e.isIdentifier(t.parent.left))return t.parent.left;if(e.isAccessExpression(t.parent.left))return e.getElementOrPropertyAccessArgumentExpressionOrName(t.parent.left)}else if(e.isVariableDeclaration(t.parent)&&e.isIdentifier(t.parent.name))return t.parent.name}}function S(t,r){if(t.name){if(e.isIdentifier(t.name)){var n=t.name.escapedText;return A(t.parent,r).filter((function(t){return e.isJSDocParameterTag(t)&&e.isIdentifier(t.name)&&t.name.escapedText===n}))}var i=t.parent.parameters.indexOf(t);e.Debug.assert(i>-1,"Parameters should always be in their parents' parameter list");var a=A(t.parent,r).filter(e.isJSDocParameterTag);if(i<a.length)return[a[i]]}return e.emptyArray}function w(e){return S(e,!1)}function D(t,r){var n=t.name.escapedText;return A(t.parent,r).filter((function(t){return e.isJSDocTemplateTag(t)&&t.typeParameters.some((function(e){return e.name.escapedText===n}))}))}function E(t){return P(t,e.isJSDocReturnTag)}function T(t){var r=P(t,e.isJSDocTypeTag);if(r&&r.typeExpression&&r.typeExpression.type)return r}function C(t){var r=P(t,e.isJSDocTypeTag);return!r&&e.isParameter(t)&&(r=e.find(w(t),(function(e){return!!e.typeExpression}))),r&&r.typeExpression&&r.typeExpression.type}function A(t,r){var n=t.jsDocCache;if(void 0===n||r){var i=e.getJSDocCommentsAndTags(t,r);e.Debug.assert(i.length<2||i[0]!==i[1]),n=e.flatMap(i,(function(t){return e.isJSDoc(t)?t.tags:t})),r||(t.jsDocCache=n)}return n}function N(e){return A(e,!1)}function P(t,r,n){return e.find(A(t,n),r)}function I(e,t){return N(e).filter(t)}function F(e){var t=e.kind;return!!(32&e.flags)&&(202===t||203===t||204===t||227===t)}function O(t){return F(t)&&!e.isNonNullExpression(t)&&!!t.questionDotToken}function R(t){return e.skipOuterExpressions(t,8)}function M(e){switch(e.kind){case 297:case 298:return!0;default:return!1}}function L(e){return e>=158}function j(e){return 8<=e&&e<=14}function B(e){return 14<=e&&e<=17}function z(t){return e.isPropertyDeclaration(t)&&e.isPrivateIdentifier(t.name)}function U(e){switch(e){case 126:case 130:case 85:case 134:case 88:case 93:case 123:case 121:case 122:case 143:case 124:return!0}return!1}function q(t){return!!(92&e.modifierToFlag(t))}function J(e){return e&&H(e.kind)}function V(e){switch(e){case 253:case 166:case 167:case 168:case 169:case 209:case 210:return!0;default:return!1}}function H(e){switch(e){case 165:case 170:case 316:case 171:case 172:case 175:case 311:case 176:return!0;default:return V(e)}}function K(e){var t=e.kind;return 167===t||164===t||166===t||168===t||169===t||172===t||231===t}function W(e){return e&&(254===e.kind||223===e.kind||255===e.kind)}function G(e){var t=e.kind;return 171===t||170===t||163===t||165===t||172===t}function $(e){var t=e.kind;return 291===t||292===t||293===t||166===t||168===t||169===t}function Y(e){if(e){var t=e.kind;return 198===t||197===t}return!1}function X(e){switch(e.kind){case 197:case 201:return!0}return!1}function Q(e){switch(e.kind){case 198:case 200:return!0}return!1}function Z(e){switch(e){case 202:case 203:case 205:case 204:case 276:case 277:case 280:case 206:case 200:case 208:case 201:case 223:case 209:case 211:case 78:case 13:case 8:case 9:case 10:case 14:case 220:case 95:case 104:case 108:case 110:case 106:case 227:case 228:case 100:return!0;default:return!1}}function ee(e){switch(e){case 216:case 217:case 212:case 213:case 214:case 215:case 207:return!0;default:return Z(e)}}function te(e){return function(e){switch(e){case 219:case 221:case 210:case 218:case 222:case 226:case 224:case 340:case 339:return!0;default:return ee(e)}}(R(e).kind)}function re(t){return e.isExportAssignment(t)||e.isExportDeclaration(t)}function ne(e){return 253===e||274===e||254===e||255===e||256===e||257===e||258===e||259===e||264===e||263===e||270===e||269===e||262===e}function ie(e){return 243===e||242===e||250===e||237===e||235===e||233===e||240===e||241===e||239===e||236===e||247===e||244===e||246===e||248===e||249===e||234===e||238===e||245===e||338===e||342===e||341===e}function ae(t){return 160===t.kind?t.parent&&333!==t.parent.kind||e.isInJSFile(t):210===(r=t.kind)||199===r||254===r||223===r||255===r||167===r||258===r||294===r||273===r||253===r||209===r||168===r||265===r||263===r||268===r||256===r||283===r||166===r||165===r||259===r||262===r||266===r||272===r||161===r||291===r||164===r||163===r||169===r||292===r||257===r||160===r||251===r||334===r||327===r||336===r;var r}function oe(e){return e.kind>=317&&e.kind<=336}e.isExternalModuleNameRelative=function(t){return e.pathIsRelative(t)||e.isRootedDiskPath(t)},e.sortAndDeduplicateDiagnostics=function(t){return e.sortAndDeduplicate(t,e.compareDiagnostics)},e.getDefaultLibFileName=function(e){switch(e.target){case 99:return"lib.esnext.full.d.ts";case 7:return"lib.es2020.full.d.ts";case 6:return"lib.es2019.full.d.ts";case 5:return"lib.es2018.full.d.ts";case 4:return"lib.es2017.full.d.ts";case 3:return"lib.es2016.full.d.ts";case 2:return"lib.es6.d.ts";default:return"lib.d.ts"}},e.textSpanEnd=t,e.textSpanIsEmpty=r,e.textSpanContainsPosition=function(e,r){return r>=e.start&&r<t(e)},e.textRangeContainsPositionInclusive=function(e,t){return t>=e.pos&&t<=e.end},e.textSpanContainsTextSpan=function(e,r){return r.start>=e.start&&t(r)<=t(e)},e.textSpanOverlapsWith=function(e,t){return void 0!==n(e,t)},e.textSpanOverlap=n,e.textSpanIntersectsWithTextSpan=function(e,t){return i(e.start,e.length,t.start,t.length)},e.textSpanIntersectsWith=function(e,t,r){return i(e.start,e.length,t,r)},e.decodedTextSpanIntersectsWith=i,e.textSpanIntersectsWithPosition=function(e,r){return r<=t(e)&&r>=e.start},e.textSpanIntersection=a,e.createTextSpan=o,e.createTextSpanFromBounds=s,e.textChangeRangeNewSpan=function(e){return o(e.span.start,e.newLength)},e.textChangeRangeIsUnchanged=function(e){return r(e.span)&&0===e.newLength},e.createTextChangeRange=c,e.unchangedTextChangeRange=c(o(0,0),0),e.collapseTextChangeRangesAcrossMultipleVersions=function(r){if(0===r.length)return e.unchangedTextChangeRange;if(1===r.length)return r[0];for(var n=r[0],i=n.span.start,a=t(n.span),o=i+n.newLength,l=1;l<r.length;l++){var u=r[l],d=i,p=a,f=o,m=u.span.start,g=t(u.span),_=m+u.newLength;i=Math.min(d,m),a=Math.max(p,p+(g-f)),o=Math.max(_,_+(f-g))}return c(s(i,a),o-i)},e.getTypeParameterOwner=function(e){if(e&&160===e.kind)for(var t=e;t;t=t.parent)if(J(t)||W(t)||256===t.kind)return t},e.isParameterPropertyDeclaration=function(t,r){return e.hasSyntacticModifier(t,92)&&167===r.kind},e.isEmptyBindingPattern=l,e.isEmptyBindingElement=u,e.walkUpBindingElementsAndPatterns=d,e.getCombinedModifierFlags=function(t){return p(t,e.getEffectiveModifierFlags)},e.getCombinedNodeFlagsAlwaysIncludeJSDoc=function(t){return p(t,e.getEffectiveModifierFlagsAlwaysIncludeJSDoc)},e.getCombinedNodeFlags=function(e){return p(e,(function(e){return e.flags}))},e.supportedLocaleDirectories=["cs","de","es","fr","it","ja","ko","pl","pt-br","ru","tr","zh-cn","zh-tw"],e.validateLocaleAndSetLanguage=function(t,r,n){var i=t.toLowerCase(),a=/^([a-z]+)([_\-]([a-z]+))?$/.exec(i);if(a){var o=a[1],s=a[3];e.contains(e.supportedLocaleDirectories,i)&&!c(o,s,n)&&c(o,void 0,n),e.setUILocale(t)}else n&&n.push(e.createCompilerDiagnostic(e.Diagnostics.Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1,"en","ja-jp"));function c(t,n,i){var a=e.normalizePath(r.getExecutingFilePath()),o=e.getDirectoryPath(a),s=e.combinePaths(o,t);if(n&&(s=s+"-"+n),s=r.resolvePath(e.combinePaths(s,"diagnosticMessages.generated.json")),!r.fileExists(s))return!1;var c="";try{c=r.readFile(s)}catch(t){return i&&i.push(e.createCompilerDiagnostic(e.Diagnostics.Unable_to_open_file_0,s)),!1}try{e.setLocalizedDiagnosticMessages(JSON.parse(c))}catch(t){return i&&i.push(e.createCompilerDiagnostic(e.Diagnostics.Corrupted_locale_file_0,s)),!1}return!0}},e.getOriginalNode=function(e,t){if(e)for(;void 0!==e.original;)e=e.original;return!t||t(e)?e:void 0},e.findAncestor=function(e,t){for(;e;){var r=t(e);if("quit"===r)return;if(r)return e;e=e.parent}},e.isParseTreeNode=f,e.getParseTreeNode=function(e,t){if(void 0===e||f(e))return e;for(e=e.original;e;){if(f(e))return!t||t(e)?e:void 0;e=e.original}},e.escapeLeadingUnderscores=function(e){return e.length>=2&&95===e.charCodeAt(0)&&95===e.charCodeAt(1)?"_"+e:e},e.unescapeLeadingUnderscores=m,e.idText=g,e.symbolName=function(e){return e.valueDeclaration&&z(e.valueDeclaration)?g(e.valueDeclaration.name):m(e.escapedName)},e.nodeHasName=function t(r,n){return!(!v(r)||!e.isIdentifier(r.name)||g(r.name)!==g(n))||!(!e.isVariableStatement(r)||!e.some(r.declarationList.declarations,(function(e){return t(e,n)})))},e.getNameOfJSDocTypedef=y,e.isNamedDeclaration=v,e.getNonAssignedNameOfDeclaration=b,e.getNameOfDeclaration=k,e.getAssignedName=x,e.getJSDocParameterTags=w,e.getJSDocParameterTagsNoCache=function(e){return S(e,!0)},e.getJSDocTypeParameterTags=function(e){return D(e,!1)},e.getJSDocTypeParameterTagsNoCache=function(e){return D(e,!0)},e.hasJSDocParameterTags=function(t){return!!P(t,e.isJSDocParameterTag)},e.getJSDocAugmentsTag=function(t){return P(t,e.isJSDocAugmentsTag)},e.getJSDocImplementsTags=function(t){return I(t,e.isJSDocImplementsTag)},e.getJSDocClassTag=function(t){return P(t,e.isJSDocClassTag)},e.getJSDocPublicTag=function(t){return P(t,e.isJSDocPublicTag)},e.getJSDocPublicTagNoCache=function(t){return P(t,e.isJSDocPublicTag,!0)},e.getJSDocPrivateTag=function(t){return P(t,e.isJSDocPrivateTag)},e.getJSDocPrivateTagNoCache=function(t){return P(t,e.isJSDocPrivateTag,!0)},e.getJSDocProtectedTag=function(t){return P(t,e.isJSDocProtectedTag)},e.getJSDocProtectedTagNoCache=function(t){return P(t,e.isJSDocProtectedTag,!0)},e.getJSDocReadonlyTag=function(t){return P(t,e.isJSDocReadonlyTag)},e.getJSDocReadonlyTagNoCache=function(t){return P(t,e.isJSDocReadonlyTag,!0)},e.getJSDocDeprecatedTag=function(t){return P(t,e.isJSDocDeprecatedTag)},e.getJSDocDeprecatedTagNoCache=function(t){return P(t,e.isJSDocDeprecatedTag,!0)},e.getJSDocEnumTag=function(t){return P(t,e.isJSDocEnumTag)},e.getJSDocThisTag=function(t){return P(t,e.isJSDocThisTag)},e.getJSDocReturnTag=E,e.getJSDocTemplateTag=function(t){return P(t,e.isJSDocTemplateTag)},e.getJSDocTypeTag=T,e.getJSDocType=C,e.getJSDocReturnType=function(t){var r=E(t);if(r&&r.typeExpression)return r.typeExpression.type;var n=T(t);if(n&&n.typeExpression){var i=n.typeExpression.type;if(e.isTypeLiteralNode(i)){var a=e.find(i.members,e.isCallSignatureDeclaration);return a&&a.type}if(e.isFunctionTypeNode(i)||e.isJSDocFunctionType(i))return i.type}},e.getJSDocTags=N,e.getJSDocTagsNoCache=function(e){return A(e,!0)},e.getAllJSDocTags=I,e.getAllJSDocTagsOfKind=function(e,t){return N(e).filter((function(e){return e.kind===t}))},e.getEffectiveTypeParameterDeclarations=function(t){if(e.isJSDocSignature(t))return e.emptyArray;if(e.isJSDocTypeAlias(t))return e.Debug.assert(314===t.parent.kind),e.flatMap(t.parent.tags,(function(t){return e.isJSDocTemplateTag(t)?t.typeParameters:void 0}));if(t.typeParameters)return t.typeParameters;if(e.isInJSFile(t)){var r=e.getJSDocTypeParameterDeclarations(t);if(r.length)return r;var n=C(t);if(n&&e.isFunctionTypeNode(n)&&n.typeParameters)return n.typeParameters}return e.emptyArray},e.getEffectiveConstraintOfTypeParameter=function(t){return t.constraint?t.constraint:e.isJSDocTemplateTag(t.parent)&&t===t.parent.typeParameters[0]?t.parent.constraint:void 0},e.isIdentifierOrPrivateIdentifier=function(e){return 78===e.kind||79===e.kind},e.isGetOrSetAccessorDeclaration=function(e){return 169===e.kind||168===e.kind},e.isPropertyAccessChain=function(t){return e.isPropertyAccessExpression(t)&&!!(32&t.flags)},e.isElementAccessChain=function(t){return e.isElementAccessExpression(t)&&!!(32&t.flags)},e.isCallChain=function(t){return e.isCallExpression(t)&&!!(32&t.flags)},e.isOptionalChain=F,e.isOptionalChainRoot=O,e.isExpressionOfOptionalChainRoot=function(e){return O(e.parent)&&e.parent.expression===e},e.isOutermostOptionalChain=function(e){return!F(e.parent)||O(e.parent)||e!==e.parent.expression},e.isNullishCoalesce=function(e){return 218===e.kind&&60===e.operatorToken.kind},e.isConstTypeReference=function(t){return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&"const"===t.typeName.escapedText&&!t.typeArguments},e.skipPartiallyEmittedExpressions=R,e.isNonNullChain=function(t){return e.isNonNullExpression(t)&&!!(32&t.flags)},e.isBreakOrContinueStatement=function(e){return 243===e.kind||242===e.kind},e.isNamedExportBindings=function(e){return 272===e.kind||271===e.kind},e.isUnparsedTextLike=M,e.isUnparsedNode=function(e){return M(e)||295===e.kind||299===e.kind},e.isJSDocPropertyLikeTag=function(e){return 336===e.kind||329===e.kind},e.isNode=function(e){return L(e.kind)},e.isNodeKind=L,e.isToken=function(e){return e.kind>=0&&e.kind<=157},e.isNodeArray=function(e){return e.hasOwnProperty("pos")&&e.hasOwnProperty("end")},e.isLiteralKind=j,e.isLiteralExpression=function(e){return j(e.kind)},e.isTemplateLiteralKind=B,e.isTemplateLiteralToken=function(e){return B(e.kind)},e.isTemplateMiddleOrTemplateTail=function(e){var t=e.kind;return 16===t||17===t},e.isImportOrExportSpecifier=function(t){return e.isImportSpecifier(t)||e.isExportSpecifier(t)},e.isTypeOnlyImportOrExportDeclaration=function(e){switch(e.kind){case 268:case 273:return e.parent.parent.isTypeOnly;case 266:return e.parent.isTypeOnly;case 265:case 263:return e.isTypeOnly;default:return!1}},e.isStringTextContainingNode=function(e){return 10===e.kind||B(e.kind)},e.isGeneratedIdentifier=function(t){return e.isIdentifier(t)&&(7&t.autoGenerateFlags)>0},e.isPrivateIdentifierPropertyDeclaration=z,e.isPrivateIdentifierPropertyAccessExpression=function(t){return e.isPropertyAccessExpression(t)&&e.isPrivateIdentifier(t.name)},e.isModifierKind=U,e.isParameterPropertyModifier=q,e.isClassMemberModifier=function(e){return q(e)||124===e},e.isModifier=function(e){return U(e.kind)},e.isEntityName=function(e){var t=e.kind;return 158===t||78===t},e.isPropertyName=function(e){var t=e.kind;return 78===t||79===t||10===t||8===t||159===t},e.isBindingName=function(e){var t=e.kind;return 78===t||197===t||198===t},e.isFunctionLike=J,e.isFunctionLikeDeclaration=function(e){return e&&V(e.kind)},e.isFunctionLikeKind=H,e.isFunctionOrModuleBlock=function(t){return e.isSourceFile(t)||e.isModuleBlock(t)||e.isBlock(t)&&J(t.parent)},e.isClassElement=K,e.isClassLike=W,e.isStruct=function(e){return e&&255===e.kind},e.isAccessor=function(e){return e&&(168===e.kind||169===e.kind)},e.isMethodOrAccessor=function(e){switch(e.kind){case 166:case 168:case 169:return!0;default:return!1}},e.isTypeElement=G,e.isClassOrTypeElement=function(e){return G(e)||K(e)},e.isObjectLiteralElementLike=$,e.isTypeNode=function(t){return e.isTypeNodeKind(t.kind)},e.isFunctionOrConstructorTypeNode=function(e){switch(e.kind){case 175:case 176:return!0}return!1},e.isBindingPattern=Y,e.isAssignmentPattern=function(e){var t=e.kind;return 200===t||201===t},e.isArrayBindingElement=function(e){var t=e.kind;return 199===t||224===t},e.isDeclarationBindingElement=function(e){switch(e.kind){case 251:case 161:case 199:return!0}return!1},e.isBindingOrAssignmentPattern=function(e){return X(e)||Q(e)},e.isObjectBindingOrAssignmentPattern=X,e.isArrayBindingOrAssignmentPattern=Q,e.isPropertyAccessOrQualifiedNameOrImportTypeNode=function(e){var t=e.kind;return 202===t||158===t||196===t},e.isPropertyAccessOrQualifiedName=function(e){var t=e.kind;return 202===t||158===t},e.isCallLikeExpression=function(e){switch(e.kind){case 278:case 277:case 204:case 205:case 206:case 162:case 211:return!0;default:return!1}},e.isCallOrNewExpression=function(e){return 204===e.kind||205===e.kind},e.isTemplateLiteral=function(e){var t=e.kind;return 220===t||14===t},e.isLeftHandSideExpression=function(e){return Z(R(e).kind)},e.isUnaryExpression=function(e){return ee(R(e).kind)},e.isUnaryExpressionWithWrite=function(e){switch(e.kind){case 217:return!0;case 216:return 45===e.operator||46===e.operator;default:return!1}},e.isExpression=te,e.isAssertionExpression=function(e){var t=e.kind;return 207===t||226===t},e.isNotEmittedOrPartiallyEmittedNode=function(t){return e.isNotEmittedStatement(t)||e.isPartiallyEmittedExpression(t)},e.isIterationStatement=function e(t,r){switch(t.kind){case 239:case 240:case 241:case 237:case 238:return!0;case 247:return r&&e(t.statement,r)}return!1},e.isScopeMarker=re,e.hasScopeMarker=function(t){return e.some(t,re)},e.needsScopeMarker=function(t){return!(e.isAnyImportOrReExport(t)||e.isExportAssignment(t)||e.hasSyntacticModifier(t,1)||e.isAmbientModule(t))},e.isExternalModuleIndicator=function(t){return e.isAnyImportOrReExport(t)||e.isExportAssignment(t)||e.hasSyntacticModifier(t,1)},e.isForInOrOfStatement=function(e){return 240===e.kind||241===e.kind},e.isConciseBody=function(t){return e.isBlock(t)||te(t)},e.isFunctionBody=function(t){return e.isBlock(t)},e.isForInitializer=function(t){return e.isVariableDeclarationList(t)||te(t)},e.isModuleBody=function(e){var t=e.kind;return 260===t||259===t||78===t},e.isNamespaceBody=function(e){var t=e.kind;return 260===t||259===t},e.isJSDocNamespaceBody=function(e){var t=e.kind;return 78===t||259===t},e.isNamedImportBindings=function(e){var t=e.kind;return 267===t||266===t},e.isModuleOrEnumDeclaration=function(e){return 259===e.kind||258===e.kind},e.isDeclaration=ae,e.isDeclarationStatement=function(e){return ne(e.kind)},e.isStatementButNotDeclaration=function(e){return ie(e.kind)},e.isStatement=function(t){var r=t.kind;return ie(r)||ne(r)||function(t){if(232!==t.kind)return!1;if(void 0!==t.parent&&(249===t.parent.kind||290===t.parent.kind))return!1;return!e.isFunctionBlock(t)}(t)},e.isStatementOrBlock=function(e){var t=e.kind;return ie(t)||ne(t)||232===t},e.isModuleReference=function(e){var t=e.kind;return 275===t||158===t||78===t},e.isJsxTagNameExpression=function(e){var t=e.kind;return 108===t||78===t||202===t},e.isJsxChild=function(e){var t=e.kind;return 276===t||286===t||277===t||11===t||280===t},e.isJsxAttributeLike=function(e){var t=e.kind;return 283===t||285===t},e.isStringLiteralOrJsxExpression=function(e){var t=e.kind;return 10===t||286===t},e.isJsxOpeningLikeElement=function(e){var t=e.kind;return 278===t||277===t},e.isCaseOrDefaultClause=function(e){var t=e.kind;return 287===t||288===t},e.isJSDocNode=function(e){return e.kind>=304&&e.kind<=336},e.isJSDocCommentContainingNode=function(t){return 314===t.kind||313===t.kind||oe(t)||e.isJSDocTypeLiteral(t)||e.isJSDocSignature(t)},e.isJSDocTag=oe,e.isSetAccessor=function(e){return 169===e.kind},e.isGetAccessor=function(e){return 168===e.kind},e.hasJSDocNodes=function(e){var t=e.jsDoc;return!!t&&t.length>0},e.hasType=function(e){return!!e.type},e.hasInitializer=function(e){return!!e.initializer},e.hasOnlyExpressionInitializer=function(e){switch(e.kind){case 251:case 161:case 199:case 163:case 164:case 291:case 294:return!0;default:return!1}},e.isObjectLiteralElement=function(e){return 283===e.kind||285===e.kind||$(e)},e.isTypeReferenceType=function(e){return 174===e.kind||225===e.kind};var se=1073741823;e.guessIndentation=function(t){for(var r=se,n=0,i=t;n<i.length;n++){var a=i[n];if(a.length){for(var o=0;o<a.length&&o<r&&e.isWhiteSpaceLike(a.charCodeAt(o));o++);if(o<r&&(r=o),0===r)return 0}}return r===se?void 0:r},e.isStringLiteralLike=function(e){return 10===e.kind||14===e.kind}}(d||(d={})),function(e){e.resolvingEmptyArray=[],e.externalHelpersModuleNameText="tslib",e.defaultMaximumTruncationLength=160,e.noTruncationMaximumTruncationLength=1e6,e.getDeclarationOfKind=function(e,t){var r=e.declarations;if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n];if(a.kind===t)return a}},e.createUnderscoreEscapedMap=function(){return new e.Map},e.hasEntries=function(e){return!!e&&!!e.size},e.createSymbolTable=function(t){var r=new e.Map;if(t)for(var n=0,i=t;n<i.length;n++){var a=i[n];r.set(a.escapedName,a)}return r},e.isTransientSymbol=function(e){return!!(33554432&e.flags)};var t,r,n=(t="",{getText:function(){return t},write:r=function(e){return t+=e},rawWrite:r,writeKeyword:r,writeOperator:r,writePunctuation:r,writeSpace:r,writeStringLiteral:r,writeLiteral:r,writeParameter:r,writeProperty:r,writeSymbol:function(e,t){return r(e)},writeTrailingSemicolon:r,writeComment:r,getTextPos:function(){return t.length},getLine:function(){return 0},getColumn:function(){return 0},getIndent:function(){return 0},isAtStartOfLine:function(){return!1},hasTrailingComment:function(){return!1},hasTrailingWhitespace:function(){return!!t.length&&e.isWhiteSpaceLike(t.charCodeAt(t.length-1))},writeLine:function(){return t+=" "},increaseIndent:e.noop,decreaseIndent:e.noop,clear:function(){return t=""},trackSymbol:e.noop,reportInaccessibleThisError:e.noop,reportInaccessibleUniqueSymbolError:e.noop,reportPrivateInBaseOfClassExpression:e.noop});function o(t,r){return e.moduleResolutionOptionDeclarations.some((function(e){return!fi(Nn(t,e),Nn(r,e))}))}function s(e){return e.end-e.pos}function c(t){return function(t){if(!(524288&t.flags)){(!!(65536&t.flags)||e.forEachChild(t,c))&&(t.flags|=262144),t.flags|=524288}}(t),!!(262144&t.flags)}function l(e){for(;e&&300!==e.kind;)e=e.parent;return e}function u(t){var r=ht(t,201);return void 0!==r&&void 0!==r.parent&&e.isPropertyAssignment(r.parent)}function d(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isCallExpression(o)&&e.isIdentifier(o.expression)&&(null===(a=null===(i=r.ets)||void 0===i?void 0:i.extend.decorator)||void 0===a?void 0:a.includes(o.expression.escapedText.toString()))&&n.push(o.expression.escapedText.toString())})),0!==n.length)}function p(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&o.escapedText.toString()===(null===(a=null===(i=r.ets)||void 0===i?void 0:i.styles)||void 0===a?void 0:a.decorator)&&n.push(o.escapedText.toString())})),0!==n.length)}function f(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&o.escapedText.toString()===(null===(a=null===(i=r.ets)||void 0===i?void 0:i.render)||void 0===a?void 0:a.decorator)&&n.push(o.escapedText.toString())})),0!==n.length)}function m(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&o.escapedText.toString()===(null===(a=null===(i=r.ets)||void 0===i?void 0:i.concurrent)||void 0===a?void 0:a.decorator)&&n.push(o.escapedText.toString())})),0!==n.length)}function g(t,r){e.Debug.assert(t>=0);var n=e.getLineStarts(r),i=t,a=r.text;if(i+1===n.length)return a.length-1;var o=n[i],s=n[i+1]-1;for(e.Debug.assert(e.isLineBreak(a.charCodeAt(s)));o<=s&&e.isLineBreak(a.charCodeAt(s));)s--;return s}function _(e){return void 0===e||!e.virtual&&(e.pos===e.end&&e.pos>=0&&1!==e.kind)}function h(e){return!_(e)}function y(e,t,r){if(void 0===t||0===t.length)return e;for(var n=0;n<e.length&&r(e[n]);++n);return e.splice.apply(e,i([n,0],t)),e}function v(e,t,r){if(void 0===t)return e;for(var n=0;n<e.length&&r(e[n]);++n);return e.splice(n,0,t),e}function b(e){return X(e)||!!(1048576&T(e))}function k(e,t){return 42===e.charCodeAt(t+1)&&33===e.charCodeAt(t+2)}function x(t,r,n){return _(t)?t.pos:e.isJSDocNode(t)||11===t.kind?e.skipTrivia((r||l(t)).text,t.pos,!1,!0):n&&e.hasJSDocNodes(t)?x(t.jsDoc[0],r):337===t.kind&&t._children.length>0?x(t._children[0],r,n):t.virtual?t.pos:e.skipTrivia((r||l(t)).text,t.pos)}function S(e,t,r){return void 0===r&&(r=!1),w(e.text,t,r)}function w(t,r,n){if(void 0===n&&(n=!1),_(r))return"";var i=t.substring(n?r.pos:e.skipTrivia(t,r.pos),r.end);return function(t){return!!e.findAncestor(t,e.isJSDocTypeExpression)}(r)&&(i=i.replace(/(^|\r?\n|\r)\s*\*\s*/g,"$1")),i}function D(e,t){return void 0===t&&(t=!1),S(l(e),e,t)}function E(e){return e.pos}function T(e){var t=e.emitNode;return t&&t.flags||0}function C(e){var t=It(e);return 251===t.kind&&290===t.parent.kind}function A(t){return e.isModuleDeclaration(t)&&(10===t.name.kind||P(t))}function N(t){return e.isModuleDeclaration(t)||e.isIdentifier(t)}function P(e){return!!(1024&e.flags)}function I(e){return A(e)&&F(e)}function F(t){switch(t.parent.kind){case 300:return e.isExternalModule(t.parent);case 260:return A(t.parent.parent)&&e.isSourceFile(t.parent.parent.parent)&&!e.isExternalModule(t.parent.parent.parent)}return!1}function O(t,r){switch(t.kind){case 300:case 261:case 290:case 259:case 239:case 240:case 241:case 167:case 166:case 168:case 169:case 253:case 209:case 210:return!0;case 232:return!e.isFunctionLike(r)}return!1}function R(t){switch(t.kind){case 170:case 171:case 165:case 172:case 175:case 176:case 311:case 254:case 255:case 223:case 256:case 257:case 333:case 253:case 166:case 167:case 168:case 169:case 209:case 210:return!0;default:return e.assertType(t),!1}}function M(e){switch(e.kind){case 264:case 263:return!0;default:return!1}}function L(t){return M(t)||e.isExportDeclaration(t)}function j(e){return e&&e.virtual&&78===e.kind?e.escapedText.toString():e&&0!==s(e)?D(e):"(Missing)"}function B(t){switch(t.kind){case 78:case 79:return t.escapedText;case 10:case 8:case 14:return e.escapeLeadingUnderscores(t.text);case 159:return xt(t.expression)?e.escapeLeadingUnderscores(t.expression.text):e.Debug.fail("Text of property name cannot be read from non-literal-valued ComputedPropertyNames");default:return e.Debug.assertNever(t)}}function z(t){switch(t.kind){case 108:return"this";case 79:case 78:return 0===s(t)?e.idText(t):D(t);case 158:return z(t.left)+"."+z(t.right);case 202:return e.isIdentifier(t.name)||e.isPrivateIdentifier(t.name)?z(t.expression)+"."+z(t.name):e.Debug.assertNever(t.name);default:return e.Debug.assertNever(t)}}function U(e,t,r,n,i,a,o){var s=H(e,t);return vn(e,s.start,s.length,r,n,i,a,o)}function q(t,r,n){e.Debug.assertGreaterThanOrEqual(r,0),e.Debug.assertGreaterThanOrEqual(n,0),t&&(e.Debug.assertLessThanOrEqual(r,t.text.length),e.Debug.assertLessThanOrEqual(r+n,t.text.length))}function J(e,t,r,n,i){return q(e,t,r),{file:e,start:t,length:r,code:n.code,category:n.category,messageText:n.next?n:n.messageText,relatedInformation:i}}function V(t,r){var n=e.createScanner(t.languageVersion,!0,t.languageVariant,t.text,void 0,r);n.scan();var i=n.getTokenPos();return e.createTextSpanFromBounds(i,n.getTextPos())}function H(t,r){var n=r;switch(r.kind){case 300:var i=e.skipTrivia(t.text,0,!1);return i===t.text.length?e.createTextSpan(0,0):V(t,i);case 251:case 199:case 254:case 223:case 255:case 256:case 259:case 258:case 294:case 253:case 209:case 166:case 168:case 169:case 257:case 164:case 163:n=r.name;break;case 210:return function(t,r){var n=e.skipTrivia(t.text,r.pos);if(r.body&&232===r.body.kind){var i=e.getLineAndCharacterOfPosition(t,r.body.pos).line;if(i<e.getLineAndCharacterOfPosition(t,r.body.end).line)return e.createTextSpan(n,g(i,t)-n+1)}return e.createTextSpanFromBounds(n,r.end)}(t,r);case 287:case 288:var a=e.skipTrivia(t.text,r.pos),o=r.statements.length>0?r.statements[0].pos:r.end;return e.createTextSpanFromBounds(a,o)}if(void 0===n)return V(t,r.pos);e.Debug.assert(!e.isJSDoc(n));var s=_(n),c=s||e.isJsxText(r)||r.virtual?n.pos:e.skipTrivia(t.text,n.pos);return s?(e.Debug.assert(c===n.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),e.Debug.assert(c===n.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(e.Debug.assert(c>=n.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),e.Debug.assert(c<=n.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),e.createTextSpanFromBounds(c,n.end)}function K(e){return 6===e.scriptKind}function W(e){return!!e}function G(t){return!!(2&e.getCombinedNodeFlags(t))}function $(e){return 204===e.kind&&100===e.expression.kind}function Y(t){return e.isImportTypeNode(t)&&e.isLiteralTypeNode(t.argument)&&e.isStringLiteral(t.argument.literal)}function X(e){return 235===e.kind&&10===e.expression.kind}function Q(e){return!!(1048576&T(e))}function Z(t){return e.isIdentifier(t.name)&&!t.initializer}e.changesAffectModuleResolution=function(e,t){return e.configFilePath!==t.configFilePath||o(e,t)},e.optionsHaveModuleResolutionChanges=o,e.forEachAncestor=function(t,r){for(;;){var n=r(t);if("quit"===n)return;if(void 0!==n)return n;if(e.isSourceFile(t))return;t=t.parent}},e.forEachEntry=function(e,t){for(var r=e.entries(),n=r.next();!n.done;n=r.next()){var i=n.value,a=i[0],o=t(i[1],a);if(o)return o}},e.forEachKey=function(e,t){for(var r=e.keys(),n=r.next();!n.done;n=r.next()){var i=t(n.value);if(i)return i}},e.copyEntries=function(e,t){e.forEach((function(e,r){t.set(r,e)}))},e.usingSingleLineStringWriter=function(e){var t=n.getText();try{return e(n),n.getText()}finally{n.clear(),n.writeKeyword(t)}},e.getFullWidth=s,e.getResolvedModule=function(e,t){return e&&e.resolvedModules&&e.resolvedModules.get(t)},e.setResolvedModule=function(t,r,n){t.resolvedModules||(t.resolvedModules=new e.Map),t.resolvedModules.set(r,n)},e.setResolvedTypeReferenceDirective=function(t,r,n){t.resolvedTypeReferenceDirectiveNames||(t.resolvedTypeReferenceDirectiveNames=new e.Map),t.resolvedTypeReferenceDirectiveNames.set(r,n)},e.projectReferenceIsEqualTo=function(e,t){return e.path===t.path&&!e.prepend==!t.prepend&&!e.circular==!t.circular},e.moduleResolutionIsEqualTo=function(e,t){return e.isExternalLibraryImport===t.isExternalLibraryImport&&e.extension===t.extension&&e.resolvedFileName===t.resolvedFileName&&e.originalPath===t.originalPath&&(r=e.packageId,n=t.packageId,r===n||!!r&&!!n&&r.name===n.name&&r.subModuleName===n.subModuleName&&r.version===n.version);var r,n},e.packageIdToString=function(e){var t=e.name,r=e.subModuleName;return(r?t+"/"+r:t)+"@"+e.version},e.typeDirectiveIsEqualTo=function(e,t){return e.resolvedFileName===t.resolvedFileName&&e.primary===t.primary},e.hasChangesInResolutions=function(t,r,n,i){e.Debug.assert(t.length===r.length);for(var a=0;a<t.length;a++){var o=r[a],s=n&&n.get(t[a]);if(s?!o||!i(s,o):o)return!0}return!1},e.containsParseError=c,e.getSourceFileOfNode=l,e.isTokenInsideBuilder=function(e,t){var r,n,i,a=null!==(i=null===(n=null===(r=t.ets)||void 0===r?void 0:r.render)||void 0===n?void 0:n.decorator)&&void 0!==i?i:"Builder";if(!e)return!1;for(var o=0,s=e;o<s.length;o++){var c=s[o];if(78===c.expression.kind&&c.expression.escapedText===a)return!0}return!1},e.getEtsComponentExpressionInnerCallExpressionNode=function(e){for(;e&&211!==e.kind;)e=204===e.kind||202===e.kind?e.expression:void 0;return e},e.getRootEtsComponentInnerCallExpressionNode=function(t){if(t&&e.isEtsComponentExpression(t))return t;for(;t;){var r=ht(e.isCallExpression(t)?t.parent:t,204),n=yt(r);if(n&&u(t))return n;t=null!=r?r:t.parent}},e.getEtsExtendDecoratorComponentNames=function(e,t){var r,n,i=[],a=null===(n=null===(r=t.ets)||void 0===r?void 0:r.extend)||void 0===n?void 0:n.decorator;return null==e||e.forEach((function(e){if(204===e.expression.kind){var t=e.expression.expression,r=e.expression.arguments;78===t.kind&&(null==a?void 0:a.includes(t.escapedText.toString()))&&r.length&&78===r[0].kind&&i.push(r[0].escapedText)}})),i},e.getEtsStylesDecoratorComponentNames=function(e,t){var r,n,i,a=[],o=null!==(i=null===(n=null===(r=t.ets)||void 0===r?void 0:r.styles)||void 0===n?void 0:n.decorator)&&void 0!==i?i:"Styles";return null==e||e.forEach((function(e){if(78===e.expression.kind){var t=e.expression;78===t.kind&&t.escapedText===o&&a.push(t.escapedText)}})),a},e.filterEtsExtendDecoratorComponentNamesByOptions=function(t,r){var n;if(!t.length)return[];var i=[];return null===(n=r.ets)||void 0===n||n.extend.components.forEach((function(r){var n=r.name;n===e.last(t)&&i.push(n)})),i},e.hasEtsExtendDecoratorNames=d,e.hasEtsStylesDecoratorNames=p,e.hasEtsBuildDecoratorNames=function(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&-1!==(null===(a=null===(i=r.ets)||void 0===i?void 0:i.render)||void 0===a?void 0:a.method.indexOf(o.escapedText.toString()))&&n.push(o.escapedText.toString())})),0!==n.length)},e.hasEtsBuilderDecoratorNames=f,e.hasEtsConcurrentDecoratorNames=m,e.isStatementWithLocals=function(e){switch(e.kind){case 232:case 261:case 239:case 240:case 241:return!0}return!1},e.getStartPositionOfLine=function(t,r){return e.Debug.assert(t>=0),e.getLineStarts(r)[t]},e.nodePosToString=function(t){var r=l(t),n=e.getLineAndCharacterOfPosition(r,t.pos);return r.fileName+"("+(n.line+1)+","+(n.character+1)+")"},e.getEndLinePosition=g,e.isFileLevelUniqueName=function(e,t,r){return!(r&&r(t)||e.identifiers.has(t))},e.nodeIsMissing=_,e.nodeIsPresent=h,e.insertStatementsAfterStandardPrologue=function(e,t){return y(e,t,X)},e.insertStatementsAfterCustomPrologue=function(e,t){return y(e,t,b)},e.insertStatementAfterStandardPrologue=function(e,t){return v(e,t,X)},e.insertStatementAfterCustomPrologue=function(e,t){return v(e,t,b)},e.getEtsLibs=function(t){var r,n,i=[],a=null!==(n=null===(r=t.getCompilerOptions().ets)||void 0===r?void 0:r.libs)&&void 0!==n?n:[];return a.length&&e.forEach(a,(function(r){i.push(e.sys.resolvePath(r));var n=function(t,r){if(!r)return;for(var n=e.sys.resolvePath(r),i=0,a=t.getSourceFiles();i<a.length;i++){var o=a[i];if(o.fileName)if(e.sys.resolvePath(o.fileName)===n)return o}return}(t,r);e.forEach(null==n?void 0:n.referencedFiles,(function(t){var r=e.sys.resolvePath(e.resolveTripleslashReference(t.fileName,n.fileName));i.push(r)}))})),i},e.isRecognizedTripleSlashComment=function(t,r,n){if(47===t.charCodeAt(r+1)&&r+2<n&&47===t.charCodeAt(r+2)){var i=t.substring(r,n);return!!(i.match(e.fullTripleSlashReferencePathRegEx)||i.match(e.fullTripleSlashAMDReferencePathRegEx)||i.match(ee)||i.match(te))}return!1},e.isPinnedComment=k,e.createCommentDirectivesMap=function(t,r){var n=new e.Map(r.map((function(r){return[""+e.getLineAndCharacterOfPosition(t,r.range.end).line,r]}))),i=new e.Map;return{getUnusedExpectations:function(){return e.arrayFrom(n.entries()).filter((function(e){var t=e[0];return 0===e[1].type&&!i.get(t)})).map((function(e){e[0];return e[1]}))},markUsed:function(e){if(!n.has(""+e))return!1;return i.set(""+e,!0),!0}}},e.getTokenPosOfNode=x,e.getNonDecoratorTokenPosOfNode=function(t,r){return _(t)||!t.decorators?x(t,r):e.skipTrivia((r||l(t)).text,t.decorators.end)},e.getSourceTextOfNodeFromSourceFile=S,e.isExportNamespaceAsDefaultDeclaration=function(t){return!!(e.isExportDeclaration(t)&&t.exportClause&&e.isNamespaceExport(t.exportClause)&&"default"===t.exportClause.name.escapedText)},e.getTextOfNodeFromSourceText=w,e.getTextOfNode=D,e.indexOfNode=function(t,r){return e.binarySearch(t,r,E,e.compareValues)},e.getEmitFlags=T,e.getScriptTargetFeatures=function(){return{es2015:{Array:["find","findIndex","fill","copyWithin","entries","keys","values"],RegExp:["flags","sticky","unicode"],Reflect:["apply","construct","defineProperty","deleteProperty","get"," getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"],ArrayConstructor:["from","of"],ObjectConstructor:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],NumberConstructor:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"],Math:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"],Map:["entries","keys","values"],Set:["entries","keys","values"],Promise:e.emptyArray,PromiseConstructor:["all","race","reject","resolve"],Symbol:["for","keyFor"],WeakMap:["entries","keys","values"],WeakSet:["entries","keys","values"],Iterator:e.emptyArray,AsyncIterator:e.emptyArray,String:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],StringConstructor:["fromCodePoint","raw"]},es2016:{Array:["includes"]},es2017:{Atomics:e.emptyArray,SharedArrayBuffer:e.emptyArray,String:["padStart","padEnd"],ObjectConstructor:["values","entries","getOwnPropertyDescriptors"],DateTimeFormat:["formatToParts"]},es2018:{Promise:["finally"],RegExpMatchArray:["groups"],RegExpExecArray:["groups"],RegExp:["dotAll"],Intl:["PluralRules"],AsyncIterable:e.emptyArray,AsyncIterableIterator:e.emptyArray,AsyncGenerator:e.emptyArray,AsyncGeneratorFunction:e.emptyArray},es2019:{Array:["flat","flatMap"],ObjectConstructor:["fromEntries"],String:["trimStart","trimEnd","trimLeft","trimRight"],Symbol:["description"]},es2020:{BigInt:e.emptyArray,BigInt64Array:e.emptyArray,BigUint64Array:e.emptyArray,PromiseConstructor:["allSettled"],SymbolConstructor:["matchAll"],String:["matchAll"],DataView:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"],RelativeTimeFormat:["format","formatToParts","resolvedOptions"]},esnext:{PromiseConstructor:["any"],String:["replaceAll"],NumberFormat:["formatToParts"]}}},function(e){e[e.None=0]="None",e[e.NeverAsciiEscape=1]="NeverAsciiEscape",e[e.JsxAttributeEscape=2]="JsxAttributeEscape",e[e.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",e[e.AllowNumericSeparator=8]="AllowNumericSeparator"}(e.GetLiteralTextFlags||(e.GetLiteralTextFlags={})),e.getLiteralText=function(t,r,n){if(function(t,r){if(Ft(t)||!t.parent||4&r&&t.isUnterminated)return!1;if(e.isNumericLiteral(t)&&512&t.numericLiteralFlags)return!!(8&r);return!e.isBigIntLiteral(t)}(t,n))return S(r,t);switch(t.kind){case 10:var i=2&n?Qt:1&n||16777216&T(t)?Ht:Wt;return t.singleQuote?"'"+i(t.text,39)+"'":'"'+i(t.text,34)+'"';case 14:case 15:case 16:case 17:i=1&n||16777216&T(t)?Ht:Wt;var a=t.rawText||function(e){return e.replace(jt,"\\${")}(i(t.text,96));switch(t.kind){case 14:return"`"+a+"`";case 15:return"`"+a+"${";case 16:return"}"+a+"${";case 17:return"}"+a+"`"}break;case 8:case 9:return t.text;case 13:return 4&n&&t.isUnterminated?t.text+(92===t.text.charCodeAt(t.text.length-1)?" /":"/"):t.text}return e.Debug.fail("Literal kind '"+t.kind+"' not accounted for.")},e.getTextOfConstantValue=function(t){return e.isString(t)?'"'+Wt(t)+'"':""+t},e.makeIdentifierFromModuleName=function(t){return e.getBaseFileName(t).replace(/^(\d)/,"_$1").replace(/\W/g,"_")},e.isBlockOrCatchScoped=function(t){return!!(3&e.getCombinedNodeFlags(t))||C(t)},e.isCatchClauseVariableDeclarationOrBindingElement=C,e.isAmbientModule=A,e.isModuleWithStringLiteralName=function(t){return e.isModuleDeclaration(t)&&10===t.name.kind},e.isNonGlobalAmbientModule=function(t){return e.isModuleDeclaration(t)&&e.isStringLiteral(t.name)},e.isEffectiveModuleDeclaration=N,e.isShorthandAmbientModuleSymbol=function(e){return(t=e.valueDeclaration)&&259===t.kind&&!t.body;var t},e.isBlockScopedContainerTopLevel=function(t){return 300===t.kind||259===t.kind||e.isFunctionLike(t)},e.isGlobalScopeAugmentation=P,e.isExternalModuleAugmentation=I,e.isModuleAugmentationExternal=F,e.getNonAugmentationDeclaration=function(t){return e.find(t.declarations,(function(t){return!(I(t)||e.isModuleDeclaration(t)&&P(t))}))},e.isEffectiveExternalModule=function(t,r){return e.isExternalModule(t)||r.isolatedModules||En(r)===e.ModuleKind.CommonJS&&!!t.commonJsModuleIndicator},e.isEffectiveStrictModeSourceFile=function(t,r){switch(t.scriptKind){case 1:case 3:case 2:case 4:case 8:break;default:return!1}return!t.isDeclarationFile&&(!!Cn(r,"alwaysStrict")||(!!e.startsWithUseStrict(t.statements)||!(!e.isExternalModule(t)&&!r.isolatedModules)&&(En(r)>=e.ModuleKind.ES2015||!r.noImplicitUseStrict)))},e.isBlockScope=O,e.isDeclarationWithTypeParameters=function(t){switch(t.kind){case 327:case 334:case 316:return!0;default:return e.assertType(t),R(t)}},e.isDeclarationWithTypeParameterChildren=R,e.isAnyImportSyntax=M,e.isLateVisibilityPaintedStatement=function(e){switch(e.kind){case 264:case 263:case 234:case 254:case 255:case 253:case 259:case 257:case 256:case 258:return!0;default:return!1}},e.hasPossibleExternalModuleReference=function(t){return L(t)||e.isModuleDeclaration(t)||e.isImportTypeNode(t)||$(t)},e.isAnyImportOrReExport=L,e.getEnclosingBlockScopeContainer=function(t){return e.findAncestor(t.parent,(function(e){return O(e,e.parent)}))},e.declarationNameToString=j,e.getNameFromIndexInfo=function(e){return e.declaration?j(e.declaration.parameters[0].name):void 0},e.isComputedNonLiteralName=function(e){return 159===e.kind&&!xt(e.expression)},e.getTextOfPropertyName=B,e.entityNameToString=z,e.createDiagnosticForNode=function(e,t,r,n,i,a){return U(l(e),e,t,r,n,i,a)},e.createDiagnosticForNodeArray=function(t,r,n,i,a,o,s){var c=e.skipTrivia(t.text,r.pos);return vn(t,c,r.end-c,n,i,a,o,s)},e.createDiagnosticForNodeInSourceFile=U,e.createDiagnosticForNodeFromMessageChain=function(e,t,r){var n=l(e),i=H(n,e);return J(n,i.start,i.length,t,r)},e.createFileDiagnosticFromMessageChain=J,e.createDiagnosticForFileFromMessageChain=function(e,t,r){return{file:e,start:0,length:0,code:t.code,category:t.category,messageText:t.next?t:t.messageText,relatedInformation:r}},e.createDiagnosticForRange=function(e,t,r){return{file:e,start:t.pos,length:t.end-t.pos,code:r.code,category:r.category,messageText:r.message}},e.getSpanOfTokenAtPosition=V,e.getErrorSpanForNode=H,e.isExternalOrCommonJsModule=function(e){return void 0!==(e.externalModuleIndicator||e.commonJsModuleIndicator)},e.isJsonSourceFile=K,e.isEmitNodeModulesFiles=W,e.isEnumConst=function(t){return!!(2048&e.getCombinedModifierFlags(t))},e.isDeclarationReadonly=function(t){return!(!(64&e.getCombinedModifierFlags(t))||e.isParameterPropertyDeclaration(t,t.parent))},e.isVarConst=G,e.isLet=function(t){return!!(1&e.getCombinedNodeFlags(t))},e.isSuperCall=function(e){return 204===e.kind&&106===e.expression.kind},e.isImportCall=$,e.isImportMeta=function(t){return e.isMetaProperty(t)&&100===t.keywordToken&&"meta"===t.name.escapedText},e.isLiteralImportTypeNode=Y,e.isPrologueDirective=X,e.isCustomPrologue=Q,e.isHoistedFunction=function(t){return Q(t)&&e.isFunctionDeclaration(t)},e.isHoistedVariableStatement=function(t){return Q(t)&&e.isVariableStatement(t)&&e.every(t.declarationList.declarations,Z)},e.getJSDocCommentRanges=function(t,r){var n=161===t.kind||160===t.kind||209===t.kind||210===t.kind||208===t.kind?e.concatenate(e.getTrailingCommentRanges(r,t.pos),e.getLeadingCommentRanges(r,t.pos)):e.getLeadingCommentRanges(r,t.pos);return e.filter(n,(function(e){return 42===r.charCodeAt(e.pos+1)&&42===r.charCodeAt(e.pos+2)&&47!==r.charCodeAt(e.pos+3)}))},e.fullTripleSlashReferencePathRegEx=/^(\/\/\/\s*<reference\s+path\s*=\s*)('|")(.+?)\2.*?\/>/;var ee=/^(\/\/\/\s*<reference\s+types\s*=\s*)('|")(.+?)\2.*?\/>/;e.fullTripleSlashAMDReferencePathRegEx=/^(\/\/\/\s*<amd-dependency\s+path\s*=\s*)('|")(.+?)\2.*?\/>/;var te=/^(\/\/\/\s*<reference\s+no-default-lib\s*=\s*)('|")(.+?)\2\s*\/>/;function re(t){if(173<=t.kind&&t.kind<=196)return!0;switch(t.kind){case 129:case 153:case 145:case 156:case 148:case 132:case 149:case 146:case 151:case 142:return!0;case 114:return 214!==t.parent.kind;case 225:return!Ur(t);case 160:return 191===t.parent.kind||186===t.parent.kind;case 78:(158===t.parent.kind&&t.parent.right===t||202===t.parent.kind&&t.parent.name===t)&&(t=t.parent),e.Debug.assert(78===t.kind||158===t.kind||202===t.kind,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 158:case 202:case 108:var r=t.parent;if(177===r.kind)return!1;if(196===r.kind)return!r.isTypeOf;if(173<=r.kind&&r.kind<=196)return!0;switch(r.kind){case 225:return!Ur(r);case 160:case 333:return t===r.constraint;case 164:case 163:case 161:case 251:case 253:case 209:case 210:case 167:case 166:case 165:case 168:case 169:case 170:case 171:case 172:case 207:return t===r.type;case 204:case 205:return e.contains(r.typeArguments,t);case 206:return!1}}return!1}function ne(e){if(e)switch(e.kind){case 199:case 294:case 161:case 291:case 164:case 163:case 292:case 251:return!0}return!1}function ie(e){return 252===e.parent.kind&&234===e.parent.parent.kind}function ae(e,t,r){return e.properties.filter((function(e){if(291===e.kind){var n=B(e.name);return t===n||!!r&&r===n}return!1}))}function oe(t){if(t&&t.statements.length){var r=t.statements[0].expression;return e.tryCast(r,e.isObjectLiteralExpression)}}function se(t,r){var n=oe(t);return n?ae(n,r):e.emptyArray}function ce(t){return e.findAncestor(t.parent,e.isFunctionLikeDeclaration)}function le(t){return e.findAncestor(t.parent,e.isClassLike)}function ue(t,r){for(e.Debug.assert(300!==t.kind);;){if(!(t=t.parent))return e.Debug.fail();switch(t.kind){case 159:if(e.isClassLike(t.parent.parent))return t;t=t.parent;break;case 162:161===t.parent.kind&&e.isClassElement(t.parent.parent)?t=t.parent.parent:e.isClassElement(t.parent)&&(t=t.parent);break;case 210:if(!r)continue;case 253:case 209:case 259:case 164:case 163:case 166:case 165:case 167:case 168:case 169:case 170:case 171:case 172:case 258:case 300:return t}}}function de(e){var t=e.kind;return(202===t||203===t)&&106===e.expression.kind}function pe(e){switch(e.kind){case 206:return e.tag;case 278:case 277:return e.tagName;default:return e.expression}}function fe(t,r,n,i){if(e.isNamedDeclaration(t)&&e.isPrivateIdentifier(t.name))return!1;switch(t.kind){case 254:case 255:return!0;case 164:return 254===r.kind||255===r.kind;case 168:case 169:case 166:return void 0!==t.body&&(254===r.kind||255===r.kind);case 161:return!(void 0===r.body||167!==r.kind&&166!==r.kind&&169!==r.kind||254!==n.kind&&255!==n.kind);case 253:if(i)return d(t.decorators,i)||p(t.decorators,i)||f(t.decorators,i)||m(t.decorators,i)}return!1}function me(e,t,r){return void 0!==e.decorators&&fe(e,t,r)}function ge(e,t,r){return me(e,t,r)||_e(e,t)}function _e(t,r){switch(t.kind){case 254:case 255:return e.some(t.members,(function(e){return ge(e,t,r)}));case 166:case 169:return e.some(t.parameters,(function(e){return me(e,t,r)}));default:return!1}}function he(e){var t=e.parent;return(278===t.kind||277===t.kind||279===t.kind)&&t.tagName===e}function ye(e){switch(e.kind){case 106:case 104:case 110:case 95:case 13:case 200:case 201:case 202:case 211:case 203:case 204:case 205:case 206:case 226:case 207:case 227:case 208:case 209:case 223:case 210:case 214:case 212:case 213:case 216:case 217:case 218:case 219:case 222:case 220:case 224:case 276:case 277:case 280:case 221:case 215:case 228:return!0;case 158:for(;158===e.parent.kind;)e=e.parent;return 177===e.parent.kind||he(e);case 78:if(177===e.parent.kind||he(e))return!0;case 8:case 9:case 10:case 14:case 108:return ve(e);default:return!1}}function ve(e){var t=e.parent;switch(t.kind){case 251:case 161:case 164:case 163:case 294:case 291:case 199:return t.initializer===e;case 235:case 236:case 237:case 238:case 244:case 245:case 246:case 287:case 248:return t.expression===e;case 239:var r=t;return r.initializer===e&&252!==r.initializer.kind||r.condition===e||r.incrementor===e;case 240:case 241:var n=t;return n.initializer===e&&252!==n.initializer.kind||n.expression===e;case 207:case 226:case 230:case 159:return e===t.expression;case 162:case 286:case 285:case 293:return!0;case 225:return t.expression===e&&Ur(t);case 292:return t.objectAssignmentInitializer===e;default:return ye(t)}}function be(e){for(;158===e.kind||78===e.kind;)e=e.parent;return 177===e.kind}function ke(e){return 263===e.kind&&275===e.moduleReference.kind}function xe(e){return Se(e)}function Se(e){return!!e&&!!(131072&e.flags)}function we(t,r){if(204!==t.kind)return!1;var n=t,i=n.expression,a=n.arguments;if(78!==i.kind||"require"!==i.escapedText)return!1;if(1!==a.length)return!1;var o=a[0];return!r||e.isStringLiteralLike(o)}function De(t,r){return 199===t.kind&&(t=t.parent.parent),e.isVariableDeclaration(t)&&!!t.initializer&&we(sn(t.initializer),r)}function Ee(t){return e.isBinaryExpression(t)||on(t)||e.isIdentifier(t)||e.isCallExpression(t)}function Te(t){return Se(t)&&t.initializer&&e.isBinaryExpression(t.initializer)&&(56===t.initializer.operatorToken.kind||60===t.initializer.operatorToken.kind)&&t.name&&qr(t.name)&&Ae(t.name,t.initializer.left)?t.initializer.right:t.initializer}function Ce(t,r){if(e.isCallExpression(t)){var n=ct(t.expression);return 209===n.kind||210===n.kind?t:void 0}return 209===t.kind||223===t.kind||210===t.kind||e.isObjectLiteralExpression(t)&&(0===t.properties.length||r)?t:void 0}function Ae(t,r){if(Ct(t)&&Ct(r))return At(t)===At(r);if(e.isIdentifier(t)&&Me(r)&&(108===r.expression.kind||e.isIdentifier(r.expression)&&("window"===r.expression.escapedText||"self"===r.expression.escapedText||"global"===r.expression.escapedText))){var n=Ue(r);return e.isPrivateIdentifier(n)&&e.Debug.fail("Unexpected PrivateIdentifier in name expression with literal-like access."),Ae(t,n)}return!(!Me(t)||!Me(r))&&(Je(t)===Je(r)&&Ae(t.expression,r.expression))}function Ne(e){for(;zr(e,!0);)e=e.right;return e}function Pe(t){return e.isIdentifier(t)&&"exports"===t.escapedText}function Ie(t){return e.isIdentifier(t)&&"module"===t.escapedText}function Fe(t){return(e.isPropertyAccessExpression(t)||Le(t))&&Ie(t.expression)&&"exports"===Je(t)}function Oe(t){var r=function(t){if(e.isCallExpression(t)){if(!Re(t))return 0;var r=t.arguments[0];return Pe(r)||Fe(r)?8:je(r)&&"prototype"===Je(r)?9:7}if(62!==t.operatorToken.kind||!on(t.left)||(n=Ne(t),e.isVoidExpression(n)&&e.isNumericLiteral(n.expression)&&"0"===n.expression.text))return 0;var n;if(ze(t.left.expression,!0)&&"prototype"===Je(t.left)&&e.isObjectLiteralExpression(He(t)))return 6;return Ve(t.left)}(t);return 5===r||Se(t)?r:0}function Re(t){return 3===e.length(t.arguments)&&e.isPropertyAccessExpression(t.expression)&&e.isIdentifier(t.expression.expression)&&"Object"===e.idText(t.expression.expression)&&"defineProperty"===e.idText(t.expression.name)&&xt(t.arguments[1])&&ze(t.arguments[0],!0)}function Me(t){return e.isPropertyAccessExpression(t)||Le(t)}function Le(t){return e.isElementAccessExpression(t)&&(xt(t.argumentExpression)||Et(t.argumentExpression))}function je(t,r){return e.isPropertyAccessExpression(t)&&(!r&&108===t.expression.kind||e.isIdentifier(t.name)&&ze(t.expression,!0))||Be(t,r)}function Be(e,t){return Le(e)&&(!t&&108===e.expression.kind||qr(e.expression)||je(e.expression,!0))}function ze(e,t){return qr(e)||je(e,t)}function Ue(t){return e.isPropertyAccessExpression(t)?t.name:t.argumentExpression}function qe(t){if(e.isPropertyAccessExpression(t))return t.name;var r=ct(t.argumentExpression);return e.isNumericLiteral(r)||e.isStringLiteralLike(r)?r:t}function Je(t){var r=qe(t);if(r){if(e.isIdentifier(r))return r.escapedText;if(e.isStringLiteralLike(r)||e.isNumericLiteral(r))return e.escapeLeadingUnderscores(r.text)}if(e.isElementAccessExpression(t)&&Et(t.argumentExpression))return Nt(e.idText(t.argumentExpression.name))}function Ve(t){if(108===t.expression.kind)return 4;if(Fe(t))return 2;if(ze(t.expression,!0)){if(Vr(t.expression))return 3;for(var r=t;!e.isIdentifier(r.expression);)r=r.expression;var n=r.expression;if(("exports"===n.escapedText||"module"===n.escapedText&&"exports"===Je(r))&&je(t))return 1;if(ze(t,!0)||e.isElementAccessExpression(t)&&Dt(t))return 5}return 0}function He(t){for(;e.isBinaryExpression(t.right);)t=t.right;return t.right}function Ke(t){switch(t.parent.kind){case 264:case 270:return t.parent;case 275:return t.parent.parent;case 204:return $(t.parent)||we(t.parent,!1)?t.parent:void 0;case 192:return e.Debug.assert(e.isStringLiteral(t)),e.tryCast(t.parent.parent,e.isImportTypeNode);default:return}}function We(t){switch(t.kind){case 264:case 270:return t.moduleSpecifier;case 263:return 275===t.moduleReference.kind?t.moduleReference.expression:void 0;case 196:return Y(t)?t.argument.literal:void 0;case 204:return t.arguments[0];case 259:return 10===t.name.kind?t.name:void 0;default:return e.Debug.assertNever(t)}}function Ge(e){return 334===e.kind||327===e.kind||328===e.kind}function $e(t){return e.isExpressionStatement(t)&&e.isBinaryExpression(t.expression)&&0!==Oe(t.expression)&&e.isBinaryExpression(t.expression.right)&&(56===t.expression.right.operatorToken.kind||60===t.expression.right.operatorToken.kind)?t.expression.right.right:void 0}function Ye(e){switch(e.kind){case 234:var t=Xe(e);return t&&t.initializer;case 164:case 291:return e.initializer}}function Xe(t){return e.isVariableStatement(t)?e.firstOrUndefined(t.declarationList.declarations):void 0}function Qe(t){return e.isModuleDeclaration(t)&&t.body&&259===t.body.kind?t.body:void 0}function Ze(t){var r=t.parent;return 291===r.kind||269===r.kind||164===r.kind||235===r.kind&&202===t.kind||Qe(r)||e.isBinaryExpression(t)&&62===t.operatorToken.kind?r:r.parent&&(Xe(r.parent)===t||e.isBinaryExpression(r)&&62===r.operatorToken.kind)?r.parent:r.parent&&r.parent.parent&&(Xe(r.parent.parent)||Ye(r.parent.parent)===t||$e(r.parent.parent))?r.parent.parent:void 0}function et(t){var r=tt(t);return r&&e.isFunctionLike(r)?r:void 0}function tt(t){var r=rt(t);if(r)return $e(r)||function(t){return e.isExpressionStatement(t)&&e.isBinaryExpression(t.expression)&&62===t.expression.operatorToken.kind?Ne(t.expression):void 0}(r)||Ye(r)||Xe(r)||Qe(r)||r}function rt(t){var r=nt(t);if(r){var n=r.parent;return n&&n.jsDoc&&r===e.lastOrUndefined(n.jsDoc)?n:void 0}}function nt(t){return e.findAncestor(t.parent,e.isJSDoc)}function it(t){var r=e.isJSDocParameterTag(t)?t.typeExpression&&t.typeExpression.type:t.type;return void 0!==t.dotDotDotToken||!!r&&312===r.kind}function at(e){for(var t=e.parent;;){switch(t.kind){case 218:var r=t.operatorToken.kind;return Lr(r)&&t.left===e?62===r||Mr(r)?1:2:0;case 216:case 217:var n=t.operator;return 45===n||46===n?2:0;case 240:case 241:return t.initializer===e?1:0;case 208:case 200:case 222:case 227:e=t;break;case 292:if(t.name!==e)return 0;e=t.parent;break;case 291:if(t.name===e)return 0;e=t.parent;break;default:return 0}t=e.parent}}function ot(e,t){for(;e&&e.kind===t;)e=e.parent;return e}function st(e){return ot(e,208)}function ct(t){return e.skipOuterExpressions(t,1)}function lt(t){return qr(t)||e.isClassExpression(t)}function ut(e){return lt(dt(e))}function dt(t){return e.isExportAssignment(t)?t.expression:t.right}function pt(t){var r=ft(t);if(r&&Se(t)){var n=e.getJSDocAugmentsTag(t);if(n)return n.class}return r}function ft(e){var t=_t(e.heritageClauses,94);return t&&t.types.length>0?t.types[0]:void 0}function mt(t){if(Se(t))return e.getJSDocImplementsTags(t).map((function(e){return e.class}));var r=_t(t.heritageClauses,117);return null==r?void 0:r.types}function gt(e){var t=_t(e.heritageClauses,94);return t?t.types:void 0}function _t(e,t){if(e)for(var r=0,n=e;r<n.length;r++){var i=n[r];if(i.token===t)return i}}function ht(e,t){for(;e;){if(e.kind===t)return e;e=e.parent}}function yt(t){for(;t;){if(e.isEtsComponentExpression(t))return t;t=t.expression}}function vt(e){return 80<=e&&e<=157}function bt(e){return 126<=e&&e<=157}function kt(e){return vt(e)&&!bt(e)}function xt(t){return e.isStringLiteralLike(t)||e.isNumericLiteral(t)}function St(t){return e.isPrefixUnaryExpression(t)&&(39===t.operator||40===t.operator)&&e.isNumericLiteral(t.operand)}function wt(t){var r=e.getNameOfDeclaration(t);return!!r&&Dt(r)}function Dt(t){if(159!==t.kind&&203!==t.kind)return!1;var r=e.isElementAccessExpression(t)?ct(t.argumentExpression):t.expression;return!xt(r)&&!St(r)&&!Et(r)}function Et(t){return e.isPropertyAccessExpression(t)&&Pt(t.expression)}function Tt(t){switch(t.kind){case 78:case 79:return t.escapedText;case 10:case 8:return e.escapeLeadingUnderscores(t.text);case 159:var r=t.expression;return Et(r)?Nt(e.idText(r.name)):xt(r)?e.escapeLeadingUnderscores(r.text):St(r)?40===r.operator?e.tokenToString(r.operator)+r.operand.text:r.operand.text:void 0;default:return e.Debug.assertNever(t)}}function Ct(e){switch(e.kind){case 78:case 10:case 14:case 8:return!0;default:return!1}}function At(t){return e.isIdentifierOrPrivateIdentifier(t)?e.idText(t):t.text}function Nt(e){return"__@"+e}function Pt(e){return 78===e.kind&&"Symbol"===e.escapedText}function It(e){for(;199===e.kind;)e=e.parent.parent;return e}function Ft(e){return ui(e.pos)||ui(e.end)}function Ot(e,t,r){switch(e){case 205:return r?0:1;case 216:case 213:case 214:case 212:case 215:case 219:case 221:return 1;case 218:switch(t){case 42:case 62:case 63:case 64:case 66:case 65:case 67:case 68:case 69:case 70:case 71:case 72:case 77:case 73:case 74:case 75:case 76:return 1}}return 0}function Rt(e){return 218===e.kind?e.operatorToken.kind:216===e.kind||217===e.kind?e.operator:e.kind}function Mt(e,t,r){switch(e){case 340:return 0;case 222:return 1;case 221:return 2;case 219:return 4;case 218:switch(t){case 27:return 0;case 62:case 63:case 64:case 66:case 65:case 67:case 68:case 69:case 70:case 71:case 72:case 77:case 73:case 74:case 75:case 76:return 3;default:return Lt(t)}case 207:case 227:case 216:case 213:case 214:case 212:case 215:return 16;case 217:return 17;case 204:return 18;case 205:return r?19:18;case 206:case 202:case 203:return 19;case 226:return 11;case 108:case 106:case 78:case 104:case 110:case 95:case 8:case 9:case 10:case 200:case 201:case 209:case 210:case 223:case 13:case 14:case 220:case 208:case 224:case 276:case 277:case 280:return 20;default:return-1}}function Lt(e){switch(e){case 60:return 4;case 56:return 5;case 55:return 6;case 51:return 7;case 52:return 8;case 50:return 9;case 34:case 35:case 36:case 37:return 10;case 29:case 31:case 32:case 33:case 102:case 101:case 127:return 11;case 47:case 48:case 49:return 12;case 39:case 40:return 13;case 41:case 43:case 44:return 14;case 42:return 15}return-1}e.isPartOfTypeNode=re,e.isChildOfNodeWithKind=function(e,t){for(;e;){if(e.kind===t)return!0;e=e.parent}return!1},e.forEachReturnStatement=function(t,r){return function t(n){switch(n.kind){case 244:return r(n);case 261:case 232:case 236:case 237:case 238:case 239:case 240:case 241:case 245:case 246:case 287:case 288:case 247:case 249:case 290:return e.forEachChild(n,t)}}(t)},e.forEachYieldExpression=function(t,r){return function t(n){switch(n.kind){case 221:r(n);var i=n.expression;return void(i&&t(i));case 258:case 256:case 259:case 257:return;default:if(e.isFunctionLike(n)){if(n.name&&159===n.name.kind)return void t(n.name.expression)}else re(n)||e.forEachChild(n,t)}}(t)},e.getRestParameterElementType=function(t){return t&&179===t.kind?t.elementType:t&&174===t.kind?e.singleOrUndefined(t.typeArguments):void 0},e.getMembersOfDeclaration=function(e){switch(e.kind){case 256:case 254:case 223:case 255:case 178:return e.members;case 201:return e.properties}},e.isVariableLike=ne,e.isVariableLikeOrAccessor=function(t){return ne(t)||e.isAccessor(t)},e.isVariableDeclarationInVariableStatement=ie,e.isValidESSymbolDeclaration=function(t){return e.isVariableDeclaration(t)?G(t)&&e.isIdentifier(t.name)&&ie(t):e.isPropertyDeclaration(t)?Er(t)&&Dr(t):e.isPropertySignature(t)&&Er(t)},e.introducesArgumentsExoticObject=function(e){switch(e.kind){case 166:case 165:case 167:case 168:case 169:case 253:case 209:return!0}return!1},e.unwrapInnermostStatementOfLabel=function(e,t){for(;;){if(t&&t(e),247!==e.statement.kind)return e.statement;e=e.statement}},e.isFunctionBlock=function(t){return t&&232===t.kind&&e.isFunctionLike(t.parent)},e.isObjectLiteralMethod=function(e){return e&&166===e.kind&&201===e.parent.kind},e.isObjectLiteralOrClassExpressionMethod=function(e){return 166===e.kind&&(201===e.parent.kind||223===e.parent.kind)},e.isIdentifierTypePredicate=function(e){return e&&1===e.kind},e.isThisTypePredicate=function(e){return e&&0===e.kind},e.getPropertyAssignment=ae,e.getPropertyArrayElementValue=function(t,r,n){return e.firstDefined(ae(t,r),(function(t){return e.isArrayLiteralExpression(t.initializer)?e.find(t.initializer.elements,(function(t){return e.isStringLiteral(t)&&t.text===n})):void 0}))},e.getTsConfigObjectLiteralExpression=oe,e.getTsConfigPropArrayElementValue=function(t,r,n){return e.firstDefined(se(t,r),(function(t){return e.isArrayLiteralExpression(t.initializer)?e.find(t.initializer.elements,(function(t){return e.isStringLiteral(t)&&t.text===n})):void 0}))},e.getTsConfigPropArray=se,e.getContainingFunction=function(t){return e.findAncestor(t.parent,e.isFunctionLike)},e.getContainingFunctionDeclaration=ce,e.getContainingClass=le,e.getContainingStruct=function(t){return e.findAncestor(t.parent,e.isStruct)},e.getThisContainer=ue,e.isInTopLevelContext=function(t){e.isIdentifier(t)&&(e.isClassDeclaration(t.parent)||e.isFunctionDeclaration(t.parent))&&t.parent.name===t&&(t=t.parent);var r=ue(t,!0);return e.isSourceFile(r)},e.getNewTargetContainer=function(e){var t=ue(e,!1);if(t)switch(t.kind){case 167:case 253:case 209:return t}},e.getSuperContainer=function(t,r){for(;;){if(!(t=t.parent))return t;switch(t.kind){case 159:t=t.parent;break;case 253:case 209:case 210:if(!r)continue;case 164:case 163:case 166:case 165:case 167:case 168:case 169:return t;case 162:161===t.parent.kind&&e.isClassElement(t.parent.parent)?t=t.parent.parent:e.isClassElement(t.parent)&&(t=t.parent)}}},e.getImmediatelyInvokedFunctionExpression=function(e){if(209===e.kind||210===e.kind){for(var t=e,r=e.parent;208===r.kind;)t=r,r=r.parent;if(204===r.kind&&r.expression===t)return r}},e.isSuperOrSuperProperty=function(e){return 106===e.kind||de(e)},e.isSuperProperty=de,e.isThisProperty=function(e){var t=e.kind;return(202===t||203===t)&&108===e.expression.kind},e.isThisInitializedDeclaration=function(t){var r;return!!t&&e.isVariableDeclaration(t)&&108===(null===(r=t.initializer)||void 0===r?void 0:r.kind)},e.getEntityNameFromTypeNode=function(e){switch(e.kind){case 174:return e.typeName;case 225:return qr(e.expression)?e.expression:void 0;case 78:case 158:return e}},e.getInvokedExpression=pe,e.nodeCanBeDecorated=fe,e.nodeIsDecorated=me,e.nodeOrChildIsDecorated=ge,e.childIsDecorated=_e,e.isJSXTagName=he,e.isExpressionNode=ye,e.isInExpressionContext=ve,e.isPartOfTypeQuery=be,e.isExternalModuleImportEqualsDeclaration=ke,e.getExternalModuleImportEqualsDeclarationExpression=function(t){return e.Debug.assert(ke(t)),t.moduleReference.expression},e.getExternalModuleRequireArgument=function(e){return De(e,!0)&&sn(e.initializer).arguments[0]},e.isInternalModuleImportEqualsDeclaration=function(e){return 263===e.kind&&275!==e.moduleReference.kind},e.isSourceFileJS=xe,e.isSourceFileNotJS=function(e){return!Se(e)},e.isInJSFile=Se,e.isInJsonFile=function(e){return!!e&&!!(33554432&e.flags)},e.isSourceFileNotJson=function(e){return!K(e)},e.isInJSDoc=function(e){return!!e&&!!(4194304&e.flags)},e.isJSDocIndexSignature=function(t){return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&"Object"===t.typeName.escapedText&&t.typeArguments&&2===t.typeArguments.length&&(148===t.typeArguments[0].kind||145===t.typeArguments[0].kind)},e.isInETSFile=function(e){return!!e&&8===l(e).scriptKind},e.isInBuildOrPageTransitionContext=function(t,r){var n,i,a,o;if(!t)return!1;var s=null===(i=null===(n=r.ets)||void 0===n?void 0:n.render)||void 0===i?void 0:i.method,c=null===(o=null===(a=r.ets)||void 0===a?void 0:a.render)||void 0===o?void 0:o.decorator;if(!s&&!c)return!1;for(var l=ce(t),u=function(){if(s&&e.isMethodDeclaration(l)&&function(t){var r=le(t);return!!r&&e.isStruct(r)}(l)){var t=B(l.name).toString();if(s.some((function(e){return e===t})))return{value:!0}}if(c&&(e.isMethodDeclaration(l)||e.isFunctionDeclaration(l))&&l.decorators&&l.decorators.some((function(t){return e.isIdentifier(t.expression)&&B(t.expression).toString()===c})))return{value:!0};l=ce(l)};l;){var d=u();if("object"==typeof d)return d.value}return!1},e.isRequireCall=we,e.isRequireVariableDeclaration=De,e.isRequireVariableStatement=function(t,r){return void 0===r&&(r=!0),e.isVariableStatement(t)&&t.declarationList.declarations.length>0&&e.every(t.declarationList.declarations,(function(e){return De(e,r)}))},e.isSingleOrDoubleQuote=function(e){return 39===e||34===e},e.isStringDoubleQuoted=function(e,t){return 34===S(t,e).charCodeAt(0)},e.isAssignmentDeclaration=Ee,e.getEffectiveInitializer=Te,e.getDeclaredExpandoInitializer=function(e){var t=Te(e);return t&&Ce(t,Vr(e.name))},e.getAssignedExpandoInitializer=function(t){if(t&&t.parent&&e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind){var r=Vr(t.parent.left);return Ce(t.parent.right,r)||function(t,r,n){var i=e.isBinaryExpression(r)&&(56===r.operatorToken.kind||60===r.operatorToken.kind)&&Ce(r.right,n);if(i&&Ae(t,r.left))return i}(t.parent.left,t.parent.right,r)}if(t&&e.isCallExpression(t)&&Re(t)){var n=function(t,r){return e.forEach(t.properties,(function(t){return e.isPropertyAssignment(t)&&e.isIdentifier(t.name)&&"value"===t.name.escapedText&&t.initializer&&Ce(t.initializer,r)}))}(t.arguments[2],"prototype"===t.arguments[1].text);if(n)return n}},e.getExpandoInitializer=Ce,e.isDefaultedExpandoInitializer=function(t){var r=e.isVariableDeclaration(t.parent)?t.parent.name:e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind?t.parent.left:void 0;return r&&Ce(t.right,Vr(r))&&qr(r)&&Ae(r,t.left)},e.getNameOfExpando=function(t){if(e.isBinaryExpression(t.parent)){var r=56!==t.parent.operatorToken.kind&&60!==t.parent.operatorToken.kind||!e.isBinaryExpression(t.parent.parent)?t.parent:t.parent.parent;if(62===r.operatorToken.kind&&e.isIdentifier(r.left))return r.left}else if(e.isVariableDeclaration(t.parent))return t.parent.name},e.isSameEntityName=Ae,e.getRightMostAssignedExpression=Ne,e.isExportsIdentifier=Pe,e.isModuleIdentifier=Ie,e.isModuleExportsAccessExpression=Fe,e.getAssignmentDeclarationKind=Oe,e.isBindableObjectDefinePropertyCall=Re,e.isLiteralLikeAccess=Me,e.isLiteralLikeElementAccess=Le,e.isBindableStaticAccessExpression=je,e.isBindableStaticElementAccessExpression=Be,e.isBindableStaticNameExpression=ze,e.getNameOrArgument=Ue,e.getElementOrPropertyAccessArgumentExpressionOrName=qe,e.getElementOrPropertyAccessName=Je,e.getAssignmentDeclarationPropertyAccessKind=Ve,e.getInitializerOfBinaryExpression=He,e.isPrototypePropertyAssignment=function(t){return e.isBinaryExpression(t)&&3===Oe(t)},e.isSpecialPropertyDeclaration=function(t){return Se(t)&&t.parent&&235===t.parent.kind&&(!e.isElementAccessExpression(t)||Le(t))&&!!e.getJSDocTypeTag(t.parent)},e.setValueDeclaration=function(e,t){var r=e.valueDeclaration;(!r||(!(8388608&t.flags)||8388608&r.flags)&&Ee(r)&&!Ee(t)||r.kind!==t.kind&&N(r))&&(e.valueDeclaration=t)},e.isFunctionSymbol=function(t){if(!t||!t.valueDeclaration)return!1;var r=t.valueDeclaration;return 253===r.kind||e.isVariableDeclaration(r)&&r.initializer&&e.isFunctionLike(r.initializer)},e.importFromModuleSpecifier=function(t){return Ke(t)||e.Debug.failBadSyntaxKind(t.parent)},e.tryGetImportFromModuleSpecifier=Ke,e.getExternalModuleName=We,e.getNamespaceDeclarationNode=function(t){switch(t.kind){case 264:return t.importClause&&e.tryCast(t.importClause.namedBindings,e.isNamespaceImport);case 263:return t;case 270:return t.exportClause&&e.tryCast(t.exportClause,e.isNamespaceExport);default:return e.Debug.assertNever(t)}},e.isDefaultImport=function(e){return 264===e.kind&&!!e.importClause&&!!e.importClause.name},e.forEachImportClauseDeclaration=function(t,r){var n;if(t.name&&(n=r(t)))return n;if(t.namedBindings&&(n=e.isNamespaceImport(t.namedBindings)?r(t.namedBindings):e.forEach(t.namedBindings.elements,r)))return n},e.hasQuestionToken=function(e){if(e)switch(e.kind){case 161:case 166:case 165:case 292:case 291:case 164:case 163:return void 0!==e.questionToken}return!1},e.isJSDocConstructSignature=function(t){var r=e.isJSDocFunctionType(t)?e.firstOrUndefined(t.parameters):void 0,n=e.tryCast(r&&r.name,e.isIdentifier);return!!n&&"new"===n.escapedText},e.isJSDocTypeAlias=Ge,e.isTypeAlias=function(t){return Ge(t)||e.isTypeAliasDeclaration(t)},e.getSingleInitializerOfVariableStatementOrPropertyDeclaration=Ye,e.getSingleVariableOfVariableStatement=Xe,e.getJSDocCommentsAndTags=function(t,r){var n;ne(t)&&e.hasInitializer(t)&&e.hasJSDocNodes(t.initializer)&&(n=e.append(n,e.last(t.initializer.jsDoc)));for(var i=t;i&&i.parent;){if(e.hasJSDocNodes(i)&&(n=e.append(n,e.last(i.jsDoc))),161===i.kind){n=e.addRange(n,(r?e.getJSDocParameterTagsNoCache:e.getJSDocParameterTags)(i));break}if(160===i.kind){n=e.addRange(n,(r?e.getJSDocTypeParameterTagsNoCache:e.getJSDocTypeParameterTags)(i));break}i=Ze(i)}return n||e.emptyArray},e.getNextJSDocCommentLocation=Ze,e.getParameterSymbolFromJSDoc=function(t){if(t.symbol)return t.symbol;if(e.isIdentifier(t.name)){var r=t.name.escapedText,n=et(t);if(n){var i=e.find(n.parameters,(function(e){return 78===e.name.kind&&e.name.escapedText===r}));return i&&i.symbol}}},e.getHostSignatureFromJSDoc=et,e.getEffectiveJSDocHost=tt,e.getJSDocHost=rt,e.getJSDocRoot=nt,e.getTypeParameterFromJsDoc=function(t){var r=t.name.escapedText,n=t.parent.parent.parent.typeParameters;return n&&e.find(n,(function(e){return e.name.escapedText===r}))},e.hasRestParameter=function(t){var r=e.lastOrUndefined(t.parameters);return!!r&&it(r)},e.isRestParameter=it,e.hasTypeArguments=function(e){return!!e.typeArguments},function(e){e[e.None=0]="None",e[e.Definite=1]="Definite",e[e.Compound=2]="Compound"}(e.AssignmentKind||(e.AssignmentKind={})),e.getAssignmentTargetKind=at,e.isAssignmentTarget=function(e){return 0!==at(e)},e.isNodeWithPossibleHoistedDeclaration=function(e){switch(e.kind){case 232:case 234:case 245:case 236:case 246:case 261:case 287:case 288:case 247:case 239:case 240:case 241:case 237:case 238:case 249:case 290:return!0}return!1},e.isValueSignatureDeclaration=function(t){return e.isFunctionExpression(t)||e.isArrowFunction(t)||e.isMethodOrAccessor(t)||e.isFunctionDeclaration(t)||e.isConstructorDeclaration(t)},e.walkUpParenthesizedTypes=function(e){return ot(e,187)},e.walkUpParenthesizedExpressions=st,e.walkUpParenthesizedTypesAndGetParentAndChild=function(e){for(var t;e&&187===e.kind;)t=e,e=e.parent;return[t,e]},e.skipParentheses=ct,e.isDeleteTarget=function(e){return(202===e.kind||203===e.kind)&&((e=st(e.parent))&&212===e.kind)},e.isNodeDescendantOf=function(e,t){for(;e;){if(e===t)return!0;e=e.parent}return!1},e.isDeclarationName=function(t){return!e.isSourceFile(t)&&!e.isBindingPattern(t)&&e.isDeclaration(t.parent)&&t.parent.name===t},e.getDeclarationFromName=function(t){var r=t.parent;switch(t.kind){case 10:case 14:case 8:if(e.isComputedPropertyName(r))return r.parent;case 78:if(e.isDeclaration(r))return r.name===t?r:void 0;if(e.isQualifiedName(r)){var n=r.parent;return e.isJSDocParameterTag(n)&&n.name===r?n:void 0}var i=r.parent;return e.isBinaryExpression(i)&&0!==Oe(i)&&(i.left.symbol||i.symbol)&&e.getNameOfDeclaration(i)===t?i:void 0;case 79:return e.isDeclaration(r)&&r.name===t?r:void 0;default:return}},e.isLiteralComputedPropertyDeclarationName=function(t){return xt(t)&&159===t.parent.kind&&e.isDeclaration(t.parent.parent)},e.isIdentifierName=function(e){var t=e.parent;switch(t.kind){case 164:case 163:case 166:case 165:case 168:case 169:case 294:case 291:case 202:return t.name===e;case 158:return t.right===e;case 199:case 268:return t.propertyName===e;case 273:case 283:return!0}return!1},e.isAliasSymbolDeclaration=function(t){return 263===t.kind||262===t.kind||265===t.kind&&!!t.name||266===t.kind||272===t.kind||268===t.kind||273===t.kind||269===t.kind&&ut(t)||e.isBinaryExpression(t)&&2===Oe(t)&&ut(t)||e.isPropertyAccessExpression(t)&&e.isBinaryExpression(t.parent)&&t.parent.left===t&&62===t.parent.operatorToken.kind&<(t.parent.right)||292===t.kind||291===t.kind&<(t.initializer)},e.getAliasDeclarationFromName=function e(t){switch(t.parent.kind){case 265:case 268:case 266:case 273:case 269:case 263:return t.parent;case 158:do{t=t.parent}while(158===t.parent.kind);return e(t)}},e.isAliasableExpression=lt,e.exportAssignmentIsAlias=ut,e.getExportAssignmentExpression=dt,e.getPropertyAssignmentAliasLikeExpression=function(e){return 292===e.kind?e.name:291===e.kind?e.initializer:e.parent.right},e.getEffectiveBaseTypeNode=pt,e.getClassExtendsHeritageElement=ft,e.getEffectiveImplementsTypeNodes=mt,e.getAllSuperTypeNodes=function(t){return e.isInterfaceDeclaration(t)?gt(t)||e.emptyArray:e.isClassLike(t)&&e.concatenate(e.singleElementArray(pt(t)),mt(t))||e.emptyArray},e.getInterfaceBaseTypeNodes=gt,e.getHeritageClause=_t,e.getAncestor=ht,e.getRootEtsComponent=yt,e.isKeyword=vt,e.isContextualKeyword=bt,e.isNonContextualKeyword=kt,e.isFutureReservedKeyword=function(e){return 117<=e&&e<=125},e.isStringANonContextualKeyword=function(t){var r=e.stringToToken(t);return void 0!==r&&kt(r)},e.isStringAKeyword=function(t){var r=e.stringToToken(t);return void 0!==r&&vt(r)},e.isIdentifierANonContextualKeyword=function(e){var t=e.originalKeywordKind;return!!t&&!bt(t)},e.isTrivia=function(e){return 2<=e&&e<=7},function(e){e[e.Normal=0]="Normal",e[e.Generator=1]="Generator",e[e.Async=2]="Async",e[e.Invalid=4]="Invalid",e[e.AsyncGenerator=3]="AsyncGenerator"}(e.FunctionFlags||(e.FunctionFlags={})),e.getFunctionFlags=function(e){if(!e)return 4;var t=0;switch(e.kind){case 253:case 209:case 166:e.asteriskToken&&(t|=1);case 210:wr(e,256)&&(t|=2)}return e.body||(t|=4),t},e.isAsyncFunction=function(e){switch(e.kind){case 253:case 209:case 210:case 166:return void 0!==e.body&&void 0===e.asteriskToken&&wr(e,256)}return!1},e.isStringOrNumericLiteralLike=xt,e.isSignedNumericLiteral=St,e.hasDynamicName=wt,e.isDynamicName=Dt,e.isWellKnownSymbolSyntactically=Et,e.getPropertyNameForPropertyNameNode=Tt,e.isPropertyNameLiteral=Ct,e.getTextOfIdentifierOrLiteral=At,e.getEscapedTextOfIdentifierOrLiteral=function(t){return e.isIdentifierOrPrivateIdentifier(t)?t.escapedText:e.escapeLeadingUnderscores(t.text)},e.getPropertyNameForUniqueESSymbol=function(t){return"__@"+e.getSymbolId(t)+"@"+t.escapedName},e.getPropertyNameForKnownSymbolName=Nt,e.getSymbolNameForPrivateIdentifier=function(t,r){return"__#"+e.getSymbolId(t)+"@"+r},e.isKnownSymbol=function(t){return e.startsWith(t.escapedName,"__@")},e.isESSymbolIdentifier=Pt,e.isPushOrUnshiftIdentifier=function(e){return"push"===e.escapedText||"unshift"===e.escapedText},e.isParameterDeclaration=function(e){return 161===It(e).kind},e.getRootDeclaration=It,e.nodeStartsNewLexicalEnvironment=function(e){var t=e.kind;return 167===t||209===t||253===t||210===t||166===t||168===t||169===t||259===t||300===t},e.nodeIsSynthesized=Ft,e.getOriginalSourceFile=function(t){return e.getParseTreeNode(t,e.isSourceFile)||t},function(e){e[e.Left=0]="Left",e[e.Right=1]="Right"}(e.Associativity||(e.Associativity={})),e.getExpressionAssociativity=function(e){var t=Rt(e),r=205===e.kind&&void 0!==e.arguments;return Ot(e.kind,t,r)},e.getOperatorAssociativity=Ot,e.getExpressionPrecedence=function(e){var t=Rt(e),r=205===e.kind&&void 0!==e.arguments;return Mt(e.kind,t,r)},e.getOperator=Rt,function(e){e[e.Comma=0]="Comma",e[e.Spread=1]="Spread",e[e.Yield=2]="Yield",e[e.Assignment=3]="Assignment",e[e.Conditional=4]="Conditional",e[e.Coalesce=4]="Coalesce",e[e.LogicalOR=5]="LogicalOR",e[e.LogicalAND=6]="LogicalAND",e[e.BitwiseOR=7]="BitwiseOR",e[e.BitwiseXOR=8]="BitwiseXOR",e[e.BitwiseAND=9]="BitwiseAND",e[e.Equality=10]="Equality",e[e.Relational=11]="Relational",e[e.Shift=12]="Shift",e[e.Additive=13]="Additive",e[e.Multiplicative=14]="Multiplicative",e[e.Exponentiation=15]="Exponentiation",e[e.Unary=16]="Unary",e[e.Update=17]="Update",e[e.LeftHandSide=18]="LeftHandSide",e[e.Member=19]="Member",e[e.Primary=20]="Primary",e[e.Highest=20]="Highest",e[e.Lowest=0]="Lowest",e[e.Invalid=-1]="Invalid"}(e.OperatorPrecedence||(e.OperatorPrecedence={})),e.getOperatorPrecedence=Mt,e.getBinaryOperatorPrecedence=Lt,e.getSemanticJsxChildren=function(t){return e.filter(t,(function(e){switch(e.kind){case 286:return!!e.expression;case 11:return!e.containsOnlyTriviaWhiteSpaces;default:return!0}}))},e.createDiagnosticCollection=function(){var t=[],r=[],n=new e.Map,i=!1;return{add:function(a){var o;a.file?(o=n.get(a.file.fileName))||(o=[],n.set(a.file.fileName,o),e.insertSorted(r,a.file.fileName,e.compareStringsCaseSensitive)):(i&&(i=!1,t=t.slice()),o=t);e.insertSorted(o,a,xn)},lookup:function(r){var i;i=r.file?n.get(r.file.fileName):t;if(!i)return;var a=e.binarySearch(i,r,e.identity,Sn);if(a>=0)return i[a];return},getGlobalDiagnostics:function(){return i=!0,t},getDiagnostics:function(i){if(i)return n.get(i)||[];var a=e.flatMapToMutable(r,(function(e){return n.get(e)}));if(!t.length)return a;return a.unshift.apply(a,t),a}}};var jt=/\$\{/g;e.hasInvalidEscape=function(t){return t&&!!(e.isNoSubstitutionTemplateLiteral(t)?t.templateFlags:t.head.templateFlags||e.some(t.templateSpans,(function(e){return!!e.literal.templateFlags})))};var Bt=/[\\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,zt=/[\\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,Ut=/[\\`]/g,qt=new e.Map(e.getEntries({"\t":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","…":"\\u0085"}));function Jt(e){return"\\u"+("0000"+e.toString(16).toUpperCase()).slice(-4)}function Vt(e,t,r){if(0===e.charCodeAt(0)){var n=r.charCodeAt(t+e.length);return n>=48&&n<=57?"\\x00":"\\0"}return qt.get(e)||Jt(e.charCodeAt(0))}function Ht(e,t){var r=96===t?Ut:39===t?zt:Bt;return e.replace(r,Vt)}e.escapeString=Ht;var Kt=/[^\u0000-\u007F]/g;function Wt(e,t){return e=Ht(e,t),Kt.test(e)?e.replace(Kt,(function(e){return Jt(e.charCodeAt(0))})):e}e.escapeNonAsciiString=Wt;var Gt=/[\"\u0000-\u001f\u2028\u2029\u0085]/g,$t=/[\'\u0000-\u001f\u2028\u2029\u0085]/g,Yt=new e.Map(e.getEntries({'"':""","'":"'"}));function Xt(e){return 0===e.charCodeAt(0)?"�":Yt.get(e)||"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"}function Qt(e,t){var r=39===t?$t:Gt;return e.replace(r,Xt)}e.escapeJsxAttributeString=Qt,e.stripQuotes=function(e){var t,r=e.length;return r>=2&&e.charCodeAt(0)===e.charCodeAt(r-1)&&(39===(t=e.charCodeAt(0))||34===t||96===t)?e.substring(1,r-1):e},e.isIntrinsicJsxName=function(t){var r=t.charCodeAt(0);return r>=97&&r<=122||e.stringContains(t,"-")||e.stringContains(t,":")};var Zt=[""," "];function er(e){for(var t=Zt[1],r=Zt.length;r<=e;r++)Zt.push(Zt[r-1]+t);return Zt[e]}function tr(){return Zt[1].length}function rr(e){return!!e.useCaseSensitiveFileNames&&e.useCaseSensitiveFileNames()}function nr(e,t,r){return t.moduleName||ar(e,t.fileName,r&&r.fileName)}function ir(t,r){return t.getCanonicalFileName(e.getNormalizedAbsolutePath(r,t.getCurrentDirectory()))}function ar(t,r,n){var i=function(e){return t.getCanonicalFileName(e)},a=e.toPath(n?e.getDirectoryPath(n):t.getCommonSourceDirectory(),t.getCurrentDirectory(),i),o=e.getNormalizedAbsolutePath(r,t.getCurrentDirectory()),s=oi(e.getRelativePathToDirectoryOrUrl(a,o,a,i,!1));return n?e.ensurePathIsNonModuleName(s):s}function or(t,r,n,i,a){var o=r.declarationDir||r.outDir,s=o?ur(t,o,n,i,a):t;return oi(s)+(e.fileExtensionIs(s,".ets")?".d.ets":".d.ts")}function sr(e){return e.outFile||e.out}function cr(e,t,r){return!(t.getCompilerOptions().noEmitForJsFiles&&xe(e))&&!e.isDeclarationFile&&(!t.isSourceFileFromExternalLibrary(e)||W(t.getCompilerOptions().emitNodeModulesFiles))&&!(K(e)&&t.getResolvedProjectReferenceToRedirect(e.fileName))&&(r||!t.isSourceOfProjectReferenceRedirect(e.fileName))}function lr(e,t,r){return ur(e,r,t.getCurrentDirectory(),t.getCommonSourceDirectory(),(function(e){return t.getCanonicalFileName(e)}))}function ur(t,r,n,i,a){var o=e.getNormalizedAbsolutePath(t,n);return o=0===a(o).indexOf(a(i))?o.substring(i.length):o,e.combinePaths(r,o)}function dr(t,r,n){t.length>e.getRootLength(t)&&!n(t)&&(dr(e.getDirectoryPath(t),r,n),r(t))}function pr(t,r){return e.computeLineOfPosition(t,r)}function fr(e){if(e&&e.parameters.length>0){var t=2===e.parameters.length&&mr(e.parameters[0]);return e.parameters[t?1:0]}}function mr(e){return gr(e.name)}function gr(e){return!!e&&78===e.kind&&_r(e)}function _r(e){return 108===e.originalKeywordKind}function hr(t){if(Se(t)||!e.isFunctionDeclaration(t)){var r=t.type;return r||!Se(t)?r:e.isJSDocPropertyLikeTag(t)?t.typeExpression&&t.typeExpression.type:e.getJSDocType(t)}}function yr(e,t,r,n){vr(e,t,r.pos,n)}function vr(e,t,r,n){n&&n.length&&r!==n[0].pos&&pr(e,r)!==pr(e,n[0].pos)&&t.writeLine()}function br(e,t,r,n,i,a,o,s){if(n&&n.length>0){i&&r.writeSpace(" ");for(var c=!1,l=0,u=n;l<u.length;l++){var d=u[l];c&&(r.writeSpace(" "),c=!1),s(e,t,r,d.pos,d.end,o),d.hasTrailingNewLine?r.writeLine():c=!0}c&&a&&r.writeSpace(" ")}}function kr(e,t,r,n,i,a){var o=Math.min(t,a-1),s=e.substring(i,o).replace(/^\s+|\s+$/g,"");s?(r.writeComment(s),o!==t&&r.writeLine()):r.rawWrite(n)}function xr(t,r,n){for(var i=0;r<n&&e.isWhiteSpaceSingleLine(t.charCodeAt(r));r++)9===t.charCodeAt(r)?i+=tr()-i%tr():i++;return i}function Sr(e,t){return!!Tr(e,t)}function wr(e,t){return!!Cr(e,t)}function Dr(e){return wr(e,32)}function Er(e){return Sr(e,64)}function Tr(e,t){return Nr(e)&t}function Cr(e,t){return Pr(e)&t}function Ar(e,t,r){return e.kind>=0&&e.kind<=157?0:(536870912&e.modifierFlagsCache||(e.modifierFlagsCache=536870912|Fr(e)),!t||4096&e.modifierFlagsCache||!r&&!Se(e)||!e.parent||(e.modifierFlagsCache|=4096|Ir(e)),-536875009&e.modifierFlagsCache)}function Nr(e){return Ar(e,!0)}function Pr(e){return Ar(e,!1)}function Ir(t){var r=0;return t.parent&&!e.isParameter(t)&&(Se(t)&&(e.getJSDocPublicTagNoCache(t)&&(r|=4),e.getJSDocPrivateTagNoCache(t)&&(r|=8),e.getJSDocProtectedTagNoCache(t)&&(r|=16),e.getJSDocReadonlyTagNoCache(t)&&(r|=64)),e.getJSDocDeprecatedTagNoCache(t)&&(r|=8192)),r}function Fr(e){var t=Or(e.modifiers);return(4&e.flags||78===e.kind&&e.isInJSDocNamespace)&&(t|=1),t}function Or(e){var t=0;if(e)for(var r=0,n=e;r<n.length;r++){t|=Rr(n[r].kind)}return t}function Rr(e){switch(e){case 124:return 32;case 123:return 4;case 122:return 16;case 121:return 8;case 126:return 128;case 93:return 1;case 134:return 2;case 85:return 2048;case 88:return 512;case 130:return 256;case 143:return 64}return 0}function Mr(e){return 74===e||75===e||76===e}function Lr(e){return e>=62&&e<=77}function jr(e){var t=Br(e);return t&&!t.isImplements?t.class:void 0}function Br(t){return e.isExpressionWithTypeArguments(t)&&e.isHeritageClause(t.parent)&&e.isClassLike(t.parent.parent)?{class:t.parent.parent,isImplements:117===t.parent.token}:void 0}function zr(t,r){return e.isBinaryExpression(t)&&(r?62===t.operatorToken.kind:Lr(t.operatorToken.kind))&&e.isLeftHandSideExpression(t.left)}function Ur(e){return void 0!==jr(e)}function qr(e){return 78===e.kind||Jr(e)}function Jr(t){return e.isPropertyAccessExpression(t)&&e.isIdentifier(t.name)&&qr(t.expression)}function Vr(e){return je(e)&&"prototype"===Je(e)}e.getIndentString=er,e.getIndentSize=tr,e.getTrailingSemicolonDeferringWriter=function(e){var t=!1;function r(){t&&(e.writeTrailingSemicolon(";"),t=!1)}return a(a({},e),{writeTrailingSemicolon:function(){t=!0},writeLiteral:function(t){r(),e.writeLiteral(t)},writeStringLiteral:function(t){r(),e.writeStringLiteral(t)},writeSymbol:function(t,n){r(),e.writeSymbol(t,n)},writePunctuation:function(t){r(),e.writePunctuation(t)},writeKeyword:function(t){r(),e.writeKeyword(t)},writeOperator:function(t){r(),e.writeOperator(t)},writeParameter:function(t){r(),e.writeParameter(t)},writeSpace:function(t){r(),e.writeSpace(t)},writeProperty:function(t){r(),e.writeProperty(t)},writeComment:function(t){r(),e.writeComment(t)},writeLine:function(){r(),e.writeLine()},increaseIndent:function(){r(),e.increaseIndent()},decreaseIndent:function(){r(),e.decreaseIndent()}})},e.hostUsesCaseSensitiveFileNames=rr,e.hostGetCanonicalFileName=function(t){return e.createGetCanonicalFileName(rr(t))},e.getResolvedExternalModuleName=nr,e.getExternalModuleNameFromDeclaration=function(t,r,n){var i=r.getExternalModuleFileFromDeclaration(n);if(i&&!i.isDeclarationFile){var a=We(n);if(!a||!e.isStringLiteralLike(a)||e.pathIsRelative(a.text)||-1!==ir(t,i.path).indexOf(ir(t,e.ensureTrailingDirectorySeparator(t.getCommonSourceDirectory()))))return nr(t,i)}},e.getExternalModuleNameFromPath=ar,e.getOwnEmitOutputFilePath=function(e,t,r){var n=t.getCompilerOptions();return(n.outDir?oi(lr(e,t,n.outDir)):oi(e))+r},e.getDeclarationEmitOutputFilePath=function(e,t){return or(e,t.getCompilerOptions(),t.getCurrentDirectory(),t.getCommonSourceDirectory(),(function(e){return t.getCanonicalFileName(e)}))},e.getDeclarationEmitOutputFilePathWorker=or,e.outFile=sr,e.getPathsBasePath=function(t,r){var n,i;if(t.paths)return null!==(n=t.baseUrl)&&void 0!==n?n:e.Debug.checkDefined(t.pathsBasePath||(null===(i=r.getCurrentDirectory)||void 0===i?void 0:i.call(r)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")},e.getSourceFilesToEmit=function(t,r,n){var i=t.getCompilerOptions();if(sr(i)){var a=En(i),o=i.emitDeclarationOnly||a===e.ModuleKind.AMD||a===e.ModuleKind.System;return e.filter(t.getSourceFiles(),(function(r){return(o||!e.isExternalModule(r))&&cr(r,t,n)}))}var s=void 0===r?t.getSourceFiles():[r];return e.filter(s,(function(e){return cr(e,t,n)}))},e.sourceFileMayBeEmitted=cr,e.getSourceFilePathInNewDir=lr,e.getSourceFilePathInNewDirWorker=ur,e.writeFile=function(t,r,n,i,a,o){t.writeFile(n,i,a,(function(t){r.add(bn(e.Diagnostics.Could_not_write_file_0_Colon_1,n,t))}),o)},e.writeFileEnsuringDirectories=function(t,r,n,i,a,o){try{i(t,r,n)}catch(s){dr(e.getDirectoryPath(e.normalizePath(t)),a,o),i(t,r,n)}},e.getLineOfLocalPosition=function(t,r){var n=e.getLineStarts(t);return e.computeLineOfPosition(n,r)},e.getLineOfLocalPositionFromLineMap=pr,e.getFirstConstructorWithBody=function(t){return e.find(t.members,(function(t){return e.isConstructorDeclaration(t)&&h(t.body)}))},e.getSetAccessorValueParameter=fr,e.getSetAccessorTypeAnnotationNode=function(e){var t=fr(e);return t&&t.type},e.getThisParameter=function(t){if(t.parameters.length&&!e.isJSDocSignature(t)){var r=t.parameters[0];if(mr(r))return r}},e.parameterIsThisKeyword=mr,e.isThisIdentifier=gr,e.identifierIsThisKeyword=_r,e.getAllAccessorDeclarations=function(t,r){var n,i,a,o;return wt(r)?(n=r,168===r.kind?a=r:169===r.kind?o=r:e.Debug.fail("Accessor has wrong kind")):e.forEach(t,(function(t){e.isAccessor(t)&&wr(t,32)===wr(r,32)&&(Tt(t.name)===Tt(r.name)&&(n?i||(i=t):n=t,168!==t.kind||a||(a=t),169!==t.kind||o||(o=t)))})),{firstAccessor:n,secondAccessor:i,getAccessor:a,setAccessor:o}},e.getEffectiveTypeAnnotationNode=hr,e.getTypeAnnotationNode=function(e){return e.type},e.getEffectiveReturnTypeNode=function(t){return e.isJSDocSignature(t)?t.type&&t.type.typeExpression&&t.type.typeExpression.type:t.type||(Se(t)?e.getJSDocReturnType(t):void 0)},e.getJSDocTypeParameterDeclarations=function(t){return e.flatMap(e.getJSDocTags(t),(function(t){return function(t){return e.isJSDocTemplateTag(t)&&!(314===t.parent.kind&&t.parent.tags.some(Ge))}(t)?t.typeParameters:void 0}))},e.getEffectiveSetAccessorTypeAnnotationNode=function(e){var t=fr(e);return t&&hr(t)},e.emitNewLineBeforeLeadingComments=yr,e.emitNewLineBeforeLeadingCommentsOfPosition=vr,e.emitNewLineBeforeLeadingCommentOfPosition=function(e,t,r,n){r!==n&&pr(e,r)!==pr(e,n)&&t.writeLine()},e.emitComments=br,e.emitDetachedComments=function(t,r,n,i,a,o,s){var c,l;if(s?0===a.pos&&(c=e.filter(e.getLeadingCommentRanges(t,a.pos),(function(e){return k(t,e.pos)}))):c=e.getLeadingCommentRanges(t,a.pos),c){for(var u=[],d=void 0,p=0,f=c;p<f.length;p++){var m=f[p];if(d){var g=pr(r,d.end);if(pr(r,m.pos)>=g+2)break}u.push(m),d=m}if(u.length){g=pr(r,e.last(u).end);pr(r,e.skipTrivia(t,a.pos))>=g+2&&(yr(r,n,a,c),br(t,r,n,u,!1,!0,o,i),l={nodePos:a.pos,detachedCommentEndPos:e.last(u).end})}}return l},e.writeCommentRange=function(t,r,n,i,a,o){if(42===t.charCodeAt(i+1))for(var s=e.computeLineAndCharacterOfPosition(r,i),c=r.length,l=void 0,u=i,d=s.line;u<a;d++){var p=d+1===c?t.length+1:r[d+1];if(u!==i){void 0===l&&(l=xr(t,r[s.line],i));var f=n.getIndent()*tr()-l+xr(t,u,p);if(f>0){var m=f%tr(),g=er((f-m)/tr());for(n.rawWrite(g);m;)n.rawWrite(" "),m--}else n.rawWrite("")}kr(t,a,n,o,u,p),u=p}else n.writeComment(t.substring(i,a))},e.hasEffectiveModifiers=function(e){return 0!==Nr(e)},e.hasSyntacticModifiers=function(e){return 0!==Pr(e)},e.hasEffectiveModifier=Sr,e.hasSyntacticModifier=wr,e.hasStaticModifier=Dr,e.hasEffectiveReadonlyModifier=Er,e.getSelectedEffectiveModifierFlags=Tr,e.getSelectedSyntacticModifierFlags=Cr,e.getEffectiveDecorators=function(t,r){var n,i=null===(n=r.getCompilerOptions().ets)||void 0===n?void 0:n.emitDecorators;if(i){for(var a=[],o=0,s=t;o<s.length;o++){var c=s[o],l=c.expression;if(e.isIdentifier(l))for(var u=0,d=i;u<d.length;u++){if((g=d[u]).name===l.escapedText.toString()){a.push(c);break}}else if(e.isCallExpression(l)){var p=l.expression;if(e.isIdentifier(p))for(var f=0,m=i;f<m.length;f++){var g;if((g=m[f]).name===p.escapedText.toString()){g.emitParameters||(c=e.factory.updateDecorator(c,p)),a.push(c);break}}}}return a}},e.getEffectiveModifierFlags=Nr,e.getEffectiveModifierFlagsAlwaysIncludeJSDoc=function(e){return Ar(e,!0,!0)},e.getSyntacticModifierFlags=Pr,e.getEffectiveModifierFlagsNoCache=function(e){return Fr(e)|Ir(e)},e.getSyntacticModifierFlagsNoCache=Fr,e.modifiersToFlags=Or,e.modifierToFlag=Rr,e.isLogicalOperator=function(e){return 56===e||55===e||53===e},e.isLogicalOrCoalescingAssignmentOperator=Mr,e.isLogicalOrCoalescingAssignmentExpression=function(e){return Mr(e.operatorToken.kind)},e.isAssignmentOperator=Lr,e.tryGetClassExtendingExpressionWithTypeArguments=jr,e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments=Br,e.isAssignmentExpression=zr,e.isDestructuringAssignment=function(e){if(zr(e,!0)){var t=e.left.kind;return 201===t||200===t}return!1},e.isExpressionWithTypeArgumentsInClassExtendsClause=Ur,e.isEntityNameExpression=qr,e.getFirstIdentifier=function(e){switch(e.kind){case 78:return e;case 158:do{e=e.left}while(78!==e.kind);return e;case 202:do{e=e.expression}while(78!==e.kind);return e}},e.isDottedName=function e(t){return 78===t.kind||108===t.kind||106===t.kind||202===t.kind&&e(t.expression)||208===t.kind&&e(t.expression)},e.isPropertyAccessEntityNameExpression=Jr,e.tryGetPropertyAccessOrIdentifierToString=function t(r){if(e.isPropertyAccessExpression(r)){if(void 0!==(n=t(r.expression)))return n+"."+z(r.name)}else if(e.isElementAccessExpression(r)){var n;if(void 0!==(n=t(r.expression))&&e.isPropertyName(r.argumentExpression))return n+"."+Tt(r.argumentExpression)}else if(e.isIdentifier(r))return e.unescapeLeadingUnderscores(r.escapedText)},e.isPrototypeAccess=Vr,e.isRightSideOfQualifiedNameOrPropertyAccess=function(e){return 158===e.parent.kind&&e.parent.right===e||202===e.parent.kind&&e.parent.name===e},e.isEmptyObjectLiteral=function(e){return 201===e.kind&&0===e.properties.length},e.isEmptyArrayLiteral=function(e){return 200===e.kind&&0===e.elements.length},e.getLocalSymbolForExportDefault=function(t){if(function(t){return t&&e.length(t.declarations)>0&&wr(t.declarations[0],512)}(t))for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];if(i.localSymbol)return i.localSymbol}},e.tryExtractTSExtension=function(t){return e.find(e.supportedTSExtensionsForExtractExtension,(function(r){return e.fileExtensionIs(t,r)}))};var Hr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function Kr(t){for(var r,n,i,a,o="",s=function(t){for(var r=[],n=t.length,i=0;i<n;i++){var a=t.charCodeAt(i);a<128?r.push(a):a<2048?(r.push(a>>6|192),r.push(63&a|128)):a<65536?(r.push(a>>12|224),r.push(a>>6&63|128),r.push(63&a|128)):a<131072?(r.push(a>>18|240),r.push(a>>12&63|128),r.push(a>>6&63|128),r.push(63&a|128)):e.Debug.assert(!1,"Unexpected code point")}return r}(t),c=0,l=s.length;c<l;)r=s[c]>>2,n=(3&s[c])<<4|s[c+1]>>4,i=(15&s[c+1])<<2|s[c+2]>>6,a=63&s[c+2],c+1>=l?i=a=64:c+2>=l&&(a=64),o+=Hr.charAt(r)+Hr.charAt(n)+Hr.charAt(i)+Hr.charAt(a),c+=3;return o}e.convertToBase64=Kr,e.base64encode=function(e,t){return e&&e.base64encode?e.base64encode(t):Kr(t)},e.base64decode=function(e,t){if(e&&e.base64decode)return e.base64decode(t);for(var r=t.length,n=[],i=0;i<r&&t.charCodeAt(i)!==Hr.charCodeAt(64);){var a=Hr.indexOf(t[i]),o=Hr.indexOf(t[i+1]),s=Hr.indexOf(t[i+2]),c=Hr.indexOf(t[i+3]),l=(63&a)<<2|o>>4&3,u=(15&o)<<4|s>>2&15,d=(3&s)<<6|63&c;0===u&&0!==s?n.push(l):0===d&&0!==c?n.push(l,u):n.push(l,u,d),i+=4}return function(e){for(var t="",r=0,n=e.length;r<n;){var i=e[r];if(i<128)t+=String.fromCharCode(i),r++;else if(192&~i)t+=String.fromCharCode(i),r++;else{for(var a=63&i,o=e[++r];128==(192&o);)a=a<<6|63&o,o=e[++r];t+=String.fromCharCode(a)}}return t}(n)},e.readJson=function(t,r){try{var n=r.readFile(t);if(!n)return{};var i=e.parseConfigFileTextToJson(t,n);return i.error?{}:i.config}catch(e){return{}}},e.directoryProbablyExists=function(e,t){return!t.directoryExists||t.directoryExists(e)};var Wr;function Gr(t,r){return void 0===r&&(r=t),e.Debug.assert(r>=t||-1===r),{pos:t,end:r}}function $r(e,t){return Gr(t,e.end)}function Yr(e){return e.decorators&&e.decorators.length>0?$r(e,e.decorators.end):e}function Xr(e,t,r){return Qr(Zr(e,r,!1),t.end,r)}function Qr(t,r,n){return 0===e.getLinesBetweenPositions(n,t,r)}function Zr(t,r,n){return ui(t.pos)?-1:e.skipTrivia(r.text,t.pos,!1,n)}function en(e){return void 0!==e.initializer}function tn(e){return 33554432&e.flags?e.checkFlags:0}function rn(t){var r=t.parent;if(!r)return 0;switch(r.kind){case 208:case 200:return rn(r);case 217:case 216:var n=r.operator;return 45===n||46===n?c():0;case 218:var i=r,a=i.left,o=i.operatorToken;return a===t&&Lr(o.kind)?62===o.kind?1:c():0;case 202:return r.name!==t?0:rn(r);case 291:var s=rn(r.parent);return t===r.name?function(t){switch(t){case 0:return 1;case 1:return 0;case 2:return 2;default:return e.Debug.assertNever(t)}}(s):s;case 292:return t===r.objectAssignmentInitializer?0:rn(r.parent);default:return 0}function c(){return r.parent&&235===function(e){for(;208===e.kind;)e=e.parent;return e}(r.parent).kind?1:2}}function nn(e,t,r){var n=r.onDeleteValue,i=r.onExistingValue;e.forEach((function(r,a){var o=t.get(a);void 0===o?(e.delete(a),n(r,a)):i&&i(r,o,a)}))}function an(t){return e.find(t.declarations,e.isClassLike)}function on(e){return 202===e.kind||203===e.kind}function sn(e){for(;on(e);)e=e.expression;return e}function cn(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=void 0,this.mergeId=void 0,this.parent=void 0}function ln(t,r){this.flags=r,(e.Debug.isDebugging||e.tracing)&&(this.checker=t)}function un(t,r){this.flags=r,e.Debug.isDebugging&&(this.checker=t)}function dn(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0}function pn(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0}function fn(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.flowNode=void 0}function mn(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||function(e){return e}}function gn(t,r,n){return void 0===n&&(n=0),t.replace(/{(\d+)}/g,(function(t,i){return""+e.Debug.checkDefined(r[+i+n])}))}function _n(t){return e.localizedDiagnosticMessages&&e.localizedDiagnosticMessages[t.key]||t.message}function hn(e){return void 0===e.file&&void 0!==e.start&&void 0!==e.length&&"string"==typeof e.fileName}function yn(t,r){var n=r.fileName||"",i=r.text.length;e.Debug.assertEqual(t.fileName,n),e.Debug.assertLessThanOrEqual(t.start,i),e.Debug.assertLessThanOrEqual(t.start+t.length,i);var a={file:r,start:t.start,length:t.length,messageText:t.messageText,category:t.category,code:t.code,reportsUnnecessary:t.reportsUnnecessary};if(t.relatedInformation){a.relatedInformation=[];for(var o=0,s=t.relatedInformation;o<s.length;o++){var c=s[o];hn(c)&&c.fileName===n?(e.Debug.assertLessThanOrEqual(c.start,i),e.Debug.assertLessThanOrEqual(c.start+c.length,i),a.relatedInformation.push(yn(c,r))):a.relatedInformation.push(c)}}return a}function vn(e,t,r,n){q(e,t,r);var i=_n(n);return arguments.length>4&&(i=gn(i,arguments,4)),{file:e,start:t,length:r,messageText:i,category:n.category,code:n.code,reportsUnnecessary:n.reportsUnnecessary,reportsDeprecated:n.reportsDeprecated}}function bn(e){var t=_n(e);return arguments.length>1&&(t=gn(t,arguments,1)),{file:void 0,start:void 0,length:void 0,messageText:t,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated}}function kn(e){return e.file?e.file.path:void 0}function xn(t,r){return Sn(t,r)||function(t,r){if(!t.relatedInformation&&!r.relatedInformation)return 0;if(t.relatedInformation&&r.relatedInformation)return e.compareValues(t.relatedInformation.length,r.relatedInformation.length)||e.forEach(t.relatedInformation,(function(e,t){return xn(e,r.relatedInformation[t])}))||0;return t.relatedInformation?-1:1}(t,r)||0}function Sn(t,r){return e.compareStringsCaseSensitive(kn(t),kn(r))||e.compareValues(t.start,r.start)||e.compareValues(t.length,r.length)||e.compareValues(t.code,r.code)||wn(t.messageText,r.messageText)||0}function wn(t,r){if("string"==typeof t&&"string"==typeof r)return e.compareStringsCaseSensitive(t,r);if("string"==typeof t)return-1;if("string"==typeof r)return 1;var n=e.compareStringsCaseSensitive(t.messageText,r.messageText);if(n)return n;if(!t.next&&!r.next)return 0;if(!t.next)return-1;if(!r.next)return 1;for(var i=Math.min(t.next.length,r.next.length),a=0;a<i;a++)if(n=wn(t.next[a],r.next[a]))return n;return t.next.length<r.next.length?-1:t.next.length>r.next.length?1:0}function Dn(e){return e.target||0}function En(t){return"number"==typeof t.module?t.module:Dn(t)>=2?e.ModuleKind.ES2015:e.ModuleKind.CommonJS}function Tn(e){return!(!e.declaration&&!e.composite)}function Cn(e,t){return void 0===e[t]?!!e.strict:!!e[t]}function An(e){return void 0===e.allowJs?!!e.checkJs:e.allowJs}function Nn(e,t){return t.strictFlag?Cn(e,t.name):e[t.name]}function Pn(e){for(var t=!1,r=0;r<e.length;r++)if(42===e.charCodeAt(r)){if(t)return!1;t=!0}return!0}function In(t,r){var n,i,a;return{getSymlinkedFiles:function(){return a},getSymlinkedDirectories:function(){return n},getSymlinkedDirectoriesByRealpath:function(){return i},setSymlinkedFile:function(t,r){return(a||(a=new e.Map)).set(t,r)},setSymlinkedDirectory:function(a,o){var s=e.toPath(a,t,r);vi(s)||(s=e.ensureTrailingDirectorySeparator(s),!1===o||(null==n?void 0:n.has(s))||(i||(i=e.createMultiMap())).add(e.ensureTrailingDirectorySeparator(o.realPath),a),(n||(n=new e.Map)).set(s,o))}}}function Fn(t,r,n,i,a){for(var o=e.getPathComponents(e.getNormalizedAbsolutePath(t,n)),s=e.getPathComponents(e.getNormalizedAbsolutePath(r,n)),c=!1;!On(o[o.length-2],i,a)&&!On(s[s.length-2],i,a)&&i(o[o.length-1])===i(s[s.length-1]);)o.pop(),s.pop(),c=!0;return c?[e.getPathFromPathComponents(o),e.getPathFromPathComponents(s)]:void 0}function On(t,r,n){return"node_modules"===r(t)||n&&"oh_modules"===r(t)||e.startsWith(t,"@")}e.getNewLineCharacter=function(t,r){switch(t.newLine){case 0:return"\r\n";case 1:return"\n"}return r?r():e.sys?e.sys.newLine:"\r\n"},e.createRange=Gr,e.moveRangeEnd=function(e,t){return Gr(e.pos,t)},e.moveRangePos=$r,e.moveRangePastDecorators=Yr,e.moveRangePastModifiers=function(e){return e.modifiers&&e.modifiers.length>0?$r(e,e.modifiers.end):Yr(e)},e.isCollapsedRange=function(e){return e.pos===e.end},e.createTokenRange=function(t,r){return Gr(t,t+e.tokenToString(r).length)},e.rangeIsOnSingleLine=function(e,t){return Xr(e,e,t)},e.rangeStartPositionsAreOnSameLine=function(e,t,r){return Qr(Zr(e,r,!1),Zr(t,r,!1),r)},e.rangeEndPositionsAreOnSameLine=function(e,t,r){return Qr(e.end,t.end,r)},e.rangeStartIsOnSameLineAsRangeEnd=Xr,e.rangeEndIsOnSameLineAsRangeStart=function(e,t,r){return Qr(e.end,Zr(t,r,!1),r)},e.getLinesBetweenRangeEndAndRangeStart=function(t,r,n,i){var a=Zr(r,n,i);return e.getLinesBetweenPositions(n,t.end,a)},e.getLinesBetweenRangeEndPositions=function(t,r,n){return e.getLinesBetweenPositions(n,t.end,r.end)},e.isNodeArrayMultiLine=function(e,t){return!Qr(e.pos,e.end,t)},e.positionsAreOnSameLine=Qr,e.getStartPositionOfRange=Zr,e.getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter=function(t,r,n,i){var a=e.skipTrivia(n.text,t,!1,i),o=function(t,r,n){void 0===r&&(r=0);for(;t-- >r;)if(!e.isWhiteSpaceLike(n.text.charCodeAt(t)))return t}(a,r,n);return e.getLinesBetweenPositions(n,null!=o?o:r,a)},e.getLinesBetweenPositionAndNextNonWhitespaceCharacter=function(t,r,n,i){var a=e.skipTrivia(n.text,t,!1,i);return e.getLinesBetweenPositions(n,t,Math.min(r,a))},e.isDeclarationNameOfEnumOrNamespace=function(t){var r=e.getParseTreeNode(t);if(r)switch(r.parent.kind){case 258:case 259:return r===r.parent.name}return!1},e.getInitializedVariables=function(t){return e.filter(t.declarations,en)},e.isWatchSet=function(e){return e.watch&&e.hasOwnProperty("watch")},e.closeFileWatcher=function(e){e.close()},e.getCheckFlags=tn,e.getDeclarationModifierFlagsFromSymbol=function(t){if(t.valueDeclaration){var r=e.getCombinedModifierFlags(t.valueDeclaration);return t.parent&&32&t.parent.flags?r:-29&r}if(6&tn(t)){var n=t.checkFlags;return(1024&n?8:256&n?4:16)|(2048&n?32:0)}return 4194304&t.flags?36:0},e.skipAlias=function(e,t){return 2097152&e.flags?t.getAliasedSymbol(e):e},e.getCombinedLocalAndExportSymbolFlags=function(e){return e.exportSymbol?e.exportSymbol.flags|e.flags:e.flags},e.isWriteOnlyAccess=function(e){return 1===rn(e)},e.isWriteAccess=function(e){return 0!==rn(e)},function(e){e[e.Read=0]="Read",e[e.Write=1]="Write",e[e.ReadWrite=2]="ReadWrite"}(Wr||(Wr={})),e.compareDataObjects=function e(t,r){if(!t||!r||Object.keys(t).length!==Object.keys(r).length)return!1;for(var n in t)if("object"==typeof t[n]){if(!e(t[n],r[n]))return!1}else if("function"!=typeof t[n]&&t[n]!==r[n])return!1;return!0},e.clearMap=function(e,t){e.forEach(t),e.clear()},e.mutateMapSkippingNewValues=nn,e.mutateMap=function(e,t,r){nn(e,t,r);var n=r.createNewValue;t.forEach((function(t,r){e.has(r)||e.set(r,n(r,t))}))},e.isAbstractConstructorSymbol=function(e){if(32&e.flags){var t=an(e);return!!t&&wr(t,128)}return!1},e.getClassLikeDeclarationOfSymbol=an,e.getObjectFlags=function(e){return 3899393&e.flags?e.objectFlags:0},e.typeHasCallOrConstructSignatures=function(e,t){return 0!==t.getSignaturesOfType(e,0).length||0!==t.getSignaturesOfType(e,1).length},e.forSomeAncestorDirectory=function(t,r){return!!e.forEachAncestorDirectory(t,(function(e){return!!r(e)||void 0}))},e.isUMDExportSymbol=function(t){return!!t&&!!t.declarations&&!!t.declarations[0]&&e.isNamespaceExportDeclaration(t.declarations[0])},e.showModuleSpecifier=function(t){var r=t.moduleSpecifier;return e.isStringLiteral(r)?r.text:D(r)},e.getLastChild=function(t){var r;return e.forEachChild(t,(function(e){h(e)&&(r=e)}),(function(e){for(var t=e.length-1;t>=0;t--)if(h(e[t])){r=e[t];break}})),r},e.addToSeen=function(e,t,r){return void 0===r&&(r=!0),t=String(t),!e.has(t)&&(e.set(t,r),!0)},e.isObjectTypeDeclaration=function(t){return e.isClassLike(t)||e.isInterfaceDeclaration(t)||e.isTypeLiteralNode(t)},e.isTypeNodeKind=function(e){return e>=173&&e<=196||129===e||153===e||145===e||156===e||146===e||132===e||148===e||149===e||114===e||151===e||142===e||225===e||306===e||307===e||308===e||309===e||310===e||311===e||312===e},e.isAccessExpression=on,e.getNameOfAccessExpression=function(t){return 202===t.kind?t.name:(e.Debug.assert(203===t.kind),t.argumentExpression)},e.isBundleFileTextLike=function(e){switch(e.kind){case"text":case"internal":return!0;default:return!1}},e.isNamedImportsOrExports=function(e){return 267===e.kind||271===e.kind},e.getLeftmostAccessExpression=sn,e.getLeftmostExpression=function(e,t){for(;;){switch(e.kind){case 217:e=e.operand;continue;case 218:e=e.left;continue;case 219:e=e.condition;continue;case 206:e=e.tag;continue;case 204:if(t)return e;case 226:case 203:case 202:case 227:case 339:e=e.expression;continue}return e}},e.objectAllocator={getNodeConstructor:function(){return dn},getTokenConstructor:function(){return pn},getIdentifierConstructor:function(){return fn},getPrivateIdentifierConstructor:function(){return dn},getSourceFileConstructor:function(){return dn},getSymbolConstructor:function(){return cn},getTypeConstructor:function(){return ln},getSignatureConstructor:function(){return un},getSourceMapSourceConstructor:function(){return mn}},e.setObjectAllocator=function(t){e.objectAllocator=t},e.formatStringFromArgs=gn,e.setLocalizedDiagnosticMessages=function(t){e.localizedDiagnosticMessages=t},e.getLocaleSpecificMessage=_n,e.createDetachedDiagnostic=function(e,t,r,n){q(void 0,t,r);var i=_n(n);return arguments.length>4&&(i=gn(i,arguments,4)),{file:void 0,start:t,length:r,messageText:i,category:n.category,code:n.code,reportsUnnecessary:n.reportsUnnecessary,fileName:e}},e.attachFileToDiagnostics=function(e,t){for(var r=[],n=0,i=e;n<i.length;n++){var a=i[n];r.push(yn(a,t))}return r},e.createFileDiagnostic=vn,e.formatMessage=function(e,t){var r=_n(t);return arguments.length>2&&(r=gn(r,arguments,2)),r},e.createCompilerDiagnostic=bn,e.createCompilerDiagnosticFromMessageChain=function(e,t){return{file:void 0,start:void 0,length:void 0,code:e.code,category:e.category,messageText:e.next?e:e.messageText,relatedInformation:t}},e.chainDiagnosticMessages=function(e,t){var r=_n(t);return arguments.length>2&&(r=gn(r,arguments,2)),{messageText:r,category:t.category,code:t.code,next:void 0===e||Array.isArray(e)?e:[e]}},e.concatenateDiagnosticMessageChains=function(e,t){for(var r=e;r.next;)r=r.next[0];r.next=[t]},e.compareDiagnostics=xn,e.compareDiagnosticsSkipRelatedInformation=Sn,e.getLanguageVariant=function(e){return 4===e||2===e||1===e||6===e?1:0},e.getEmitScriptTarget=Dn,e.getEmitModuleKind=En,e.getEmitModuleResolutionKind=function(t){var r=t.moduleResolution;return void 0===r&&(r=En(t)===e.ModuleKind.CommonJS?e.ModuleResolutionKind.NodeJs:e.ModuleResolutionKind.Classic),r},e.hasJsonModuleEmitEnabled=function(t){switch(En(t)){case e.ModuleKind.CommonJS:case e.ModuleKind.AMD:case e.ModuleKind.ES2015:case e.ModuleKind.ES2020:case e.ModuleKind.ESNext:return!0;default:return!1}},e.unreachableCodeIsError=function(e){return!1===e.allowUnreachableCode},e.unusedLabelIsError=function(e){return!1===e.allowUnusedLabels},e.getAreDeclarationMapsEnabled=function(e){return!(!Tn(e)||!e.declarationMap)},e.getAllowSyntheticDefaultImports=function(t){var r=En(t);return void 0!==t.allowSyntheticDefaultImports?t.allowSyntheticDefaultImports:t.esModuleInterop||r===e.ModuleKind.System},e.getEmitDeclarations=Tn,e.shouldPreserveConstEnums=function(e){return!(!e.preserveConstEnums&&!e.isolatedModules)},e.isIncrementalCompilation=function(e){return!(!e.incremental&&!e.composite)},e.getStrictOptionValue=Cn,e.getAllowJSCompilerOption=An,e.compilerOptionsAffectSemanticDiagnostics=function(t,r){return r!==t&&e.semanticDiagnosticsOptionDeclarations.some((function(e){return!fi(Nn(r,e),Nn(t,e))}))},e.compilerOptionsAffectEmit=function(t,r){return r!==t&&e.affectsEmitOptionDeclarations.some((function(e){return!fi(Nn(r,e),Nn(t,e))}))},e.getCompilerOptionValue=Nn,e.getJSXTransformEnabled=function(e){var t=e.jsx;return 2===t||4===t||5===t},e.getJSXImplicitImportBase=function(t,r){var n=null==r?void 0:r.pragmas.get("jsximportsource"),i=e.isArray(n)?n[0]:n;return 4===t.jsx||5===t.jsx||t.jsxImportSource||i?(null==i?void 0:i.arguments.factory)||t.jsxImportSource||"react":void 0},e.getJSXRuntimeImport=function(e,t){return e?e+"/"+(5===t.jsx?"jsx-dev-runtime":"jsx-runtime"):void 0},e.hasZeroOrOneAsteriskCharacter=Pn,e.createSymlinkCache=In,e.discoverProbableSymlinks=function(t,r,n,i){for(var a=In(n,r),o=0,s=e.flatten(e.mapDefined(t,(function(t){return t.resolvedModules&&e.compact(e.arrayFrom(e.mapIterator(t.resolvedModules.values(),(function(e){return e&&e.originalPath&&e.resolvedFileName!==e.originalPath?[e.resolvedFileName,e.originalPath]:void 0}))))})));o<s.length;o++){var c=s[o],l=Fn(c[0],c[1],n,r,i)||e.emptyArray,u=l[0],d=l[1];u&&d&&a.setSymlinkedDirectory(d,{real:u,realPath:e.toPath(u,n,r)})}return a},e.tryRemoveDirectoryPrefix=function(t,r,n){var i,a=e.tryRemovePrefix(t,r,n);return void 0===a?void 0:(i=a,e.isAnyDirectorySeparator(i.charCodeAt(0))?i.slice(1):void 0)};var Rn=/[^\w\s\/]/g;function Mn(e){return"\\"+e}e.regExpEscape=function(e){return e.replace(Rn,Mn)};var Ln=[42,63];e.commonPackageFolders=["node_modules","oh_modules","bower_components","jspm_packages"];var jn="(?!("+e.commonPackageFolders.join("|")+")(/|$))",Bn={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:"(/"+jn+"[^/.][^/]*)*?",replaceWildcardCharacter:function(e){return Wn(e,Bn.singleAsteriskRegexFragment)}},zn={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/"+jn+"[^/.][^/]*)*?",replaceWildcardCharacter:function(e){return Wn(e,zn.singleAsteriskRegexFragment)}},Un={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:function(e){return Wn(e,Un.singleAsteriskRegexFragment)}},qn={files:Bn,directories:zn,exclude:Un};function Jn(e,t,r){var n=Vn(e,t,r);if(n&&n.length)return"^("+n.map((function(e){return"("+e+")"})).join("|")+")"+("exclude"===r?"($|/)":"$")}function Vn(t,r,n){if(void 0!==t&&0!==t.length)return e.flatMap(t,(function(e){return e&&Kn(e,r,n,qn[n])}))}function Hn(e){return!/[.*?]/.test(e)}function Kn(t,r,n,i){var a=i.singleAsteriskRegexFragment,o=i.doubleAsteriskRegexFragment,s=i.replaceWildcardCharacter,c="",l=!1,u=e.getNormalizedPathComponents(t,r),d=e.last(u);if("exclude"===n||"**"!==d){u[0]=e.removeTrailingDirectorySeparator(u[0]),Hn(d)&&u.push("**","*");for(var p=0,f=0,m=u;f<m.length;f++){var g=m[f];if("**"===g)c+=o;else if("directories"===n&&(c+="(",p++),l&&(c+=e.directorySeparator),"exclude"!==n){var _="";42===g.charCodeAt(0)?(_+="([^./]"+a+")?",g=g.substr(1)):63===g.charCodeAt(0)&&(_+="[^./]",g=g.substr(1)),(_+=g.replace(Rn,s))!==g&&(c+=jn),c+=_}else c+=g.replace(Rn,s);l=!0}for(;p>0;)c+=")?",p--;return c}}function Wn(e,t){return"*"===e?t:"?"===e?"[^/]":"\\"+e}function Gn(t,r,n,i,a){t=e.normalizePath(t),a=e.normalizePath(a);var o=e.combinePaths(a,t);return{includeFilePatterns:e.map(Vn(n,o,"files"),(function(e){return"^"+e+"$"})),includeFilePattern:Jn(n,o,"files"),includeDirectoryPattern:Jn(n,o,"directories"),excludePattern:Jn(r,o,"exclude"),basePaths:Yn(t,n,i)}}function $n(e,t){return new RegExp(e,t?"":"i")}function Yn(t,r,n){var i=[t];if(r){for(var a=[],o=0,s=r;o<s.length;o++){var c=s[o],l=e.isRootedDiskPath(c)?c:e.normalizePath(e.combinePaths(t,c));a.push(Xn(l))}a.sort(e.getStringComparer(!n));for(var u=function(r){e.every(i,(function(i){return!e.containsPath(i,r,t,!n)}))&&i.push(r)},d=0,p=a;d<p.length;d++){u(p[d])}}return i}function Xn(t){var r=e.indexOfAnyCharCode(t,Ln);return r<0?e.hasExtension(t)?e.removeTrailingDirectorySeparator(e.getDirectoryPath(t)):t:t.substring(0,t.lastIndexOf(e.directorySeparator,r))}function Qn(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".js":return 1;case".jsx":return 2;case".ts":return 3;case".tsx":return 4;case".json":return 6;case".ets":return 8;default:return 0}}e.getRegularExpressionForWildcard=Jn,e.getRegularExpressionsForWildcards=Vn,e.isImplicitGlob=Hn,e.getPatternFromSpec=function(e,t,r){var n=e&&Kn(e,t,r,qn[r]);return n&&"^("+n+")"+("exclude"===r?"($|/)":"$")},e.getFileMatcherPatterns=Gn,e.getRegexFromPattern=$n,e.matchFiles=function(t,r,n,i,a,o,s,c,l){t=e.normalizePath(t),o=e.normalizePath(o);for(var u=Gn(t,n,i,a,o),d=u.includeFilePatterns&&u.includeFilePatterns.map((function(e){return $n(e,a)})),p=u.includeDirectoryPattern&&$n(u.includeDirectoryPattern,a),f=u.excludePattern&&$n(u.excludePattern,a),m=d?d.map((function(){return[]})):[[]],g=new e.Map,_=e.createGetCanonicalFileName(a),h=0,y=u.basePaths;h<y.length;h++){var v=y[h];b(v,e.combinePaths(o,v),s)}return e.flatten(m);function b(t,n,i){var a=_(l(n));if(!g.has(a)){g.set(a,!0);for(var o=c(t),s=o.files,u=o.directories,h=function(i){var a=e.combinePaths(t,i),o=e.combinePaths(n,i);if(r&&!e.fileExtensionIsOneOf(a,r))return"continue";if(f&&f.test(o))return"continue";if(d){var s=e.findIndex(d,(function(e){return e.test(o)}));-1!==s&&m[s].push(a)}else m[0].push(a)},y=0,v=e.sort(s,e.compareStringsCaseSensitive);y<v.length;y++){h(S=v[y])}if(void 0===i||0!=--i)for(var k=0,x=e.sort(u,e.compareStringsCaseSensitive);k<x.length;k++){var S=x[k],w=e.combinePaths(t,S),D=e.combinePaths(n,S);p&&!p.test(D)||f&&f.test(D)||b(w,D,i)}}}},e.ensureScriptKind=function(e,t){return t||Qn(e)||3},e.getScriptKindFromFileName=Qn,e.supportedTSExtensions=[".ts",".tsx",".d.ts",".ets",".d.ets"],e.supportedTSExtensionsWithJson=[".ts",".tsx",".d.ts",".json",".ets",".d.ets"],e.supportedTSExtensionsForExtractExtension=[".d.ts",".ts",".tsx",".d.ets",".ets"],e.supportedJSExtensions=[".js",".jsx"],e.supportedJSAndJsonExtensions=[".js",".jsx",".json"];var Zn=i(i([],e.supportedTSExtensions),e.supportedJSExtensions),ei=i(i(i([],e.supportedTSExtensions),e.supportedJSExtensions),[".json"]);function ti(t,r){var n=t&&An(t);if(!r||0===r.length)return n?Zn:e.supportedTSExtensions;var a=i(i([],n?Zn:e.supportedTSExtensions),e.mapDefined(r,(function(e){return 7===e.scriptKind||n&&(1===(t=e.scriptKind)||2===t)?e.extension:void 0;var t})));return e.deduplicate(a,e.equateStringsCaseSensitive,e.compareStringsCaseSensitive)}function ri(t,r){return t&&t.resolveJsonModule?r===Zn?ei:r===e.supportedTSExtensions?e.supportedTSExtensionsWithJson:i(i([],r),[".json"]):r}function ni(e){var t=e.match(/\//g);return t?t.length:0}function ii(e,t){return e<2?0:e<t.length?2:t.length}e.getSupportedExtensions=ti,e.getSuppoertedExtensionsWithJsonIfResolveJsonModule=ri,e.hasJSFileExtension=function(t){return e.some(e.supportedJSExtensions,(function(r){return e.fileExtensionIs(t,r)}))},e.hasTSFileExtension=function(t){return e.some(e.supportedTSExtensions,(function(r){return e.fileExtensionIs(t,r)}))},e.isSupportedSourceFileName=function(t,r,n){if(!t)return!1;for(var i=0,a=ri(r,ti(r,n));i<a.length;i++){var o=a[i];if(e.fileExtensionIs(t,o))return!0}return!1},e.compareNumberOfDirectorySeparators=function(t,r){return e.compareValues(ni(t),ni(r))},function(e){e[e.TypeScriptFiles=0]="TypeScriptFiles",e[e.DeclarationAndJavaScriptFiles=2]="DeclarationAndJavaScriptFiles",e[e.Highest=0]="Highest",e[e.Lowest=2]="Lowest"}(e.ExtensionPriority||(e.ExtensionPriority={})),e.getExtensionPriority=function(t,r){for(var n=r.length-1;n>=0;n--)if(e.fileExtensionIs(t,r[n]))return ii(n,r);return 0},e.adjustExtensionPriority=ii,e.getNextLowestExtensionPriority=function(e,t){return e<2?2:t.length};var ai=[".d.ts",".ts",".js",".tsx",".jsx",".json",".d.ets",".ets"];function oi(e){for(var t=0,r=ai;t<r.length;t++){var n=si(e,r[t]);if(void 0!==n)return n}return e}function si(t,r){return e.fileExtensionIs(t,r)?ci(t,r):void 0}function ci(e,t){return e.substring(0,e.length-t.length)}function li(t){e.Debug.assert(Pn(t));var r=t.indexOf("*");return-1===r?void 0:{prefix:t.substr(0,r),suffix:t.substr(r+1)}}function ui(e){return!(e>=0)}function di(e){return".ts"===e||".tsx"===e||".d.ts"===e||".ets"===e||".d.ets"===e}function pi(t){return e.fileExtensionIs(t,".ets")?".ets":e.find(ai,(function(r){return e.fileExtensionIs(t,r)}))}function fi(t,r){return t===r||"object"==typeof t&&null!==t&&"object"==typeof r&&null!==r&&e.equalOwnProperties(t,r,fi)}function mi(e,t){return e.pos=t,e}function gi(e,t){return e.end=t,e}function _i(e,t,r){return gi(mi(e,t),r)}function hi(e,t){return e&&t&&(e.parent=t),e}function yi(t){return!e.isOmittedExpression(t)}function vi(t){return e.some(e.ignoredPaths,(function(r){return e.stringContains(t,r)}))}function bi(e){return"ohpm"===e}e.removeFileExtension=oi,e.tryRemoveExtension=si,e.removeExtension=ci,e.changeExtension=function(t,r){return e.changeAnyExtension(t,r,ai,!1)},e.tryParsePattern=li,e.positionIsSynthesized=ui,e.extensionIsTS=di,e.resolutionExtensionIsTSOrJson=function(e){return di(e)||".json"===e},e.extensionFromPath=function(t){var r=pi(t);return void 0!==r?r:e.Debug.fail("File "+t+" has unknown extension.")},e.isAnySupportedFileExtension=function(e){return void 0!==pi(e)},e.tryGetExtensionFromPath=pi,e.isCheckJsEnabledForFile=function(e,t){return e.checkJsDirective?e.checkJsDirective.enabled:t.checkJs},e.emptyFileSystemEntries={files:e.emptyArray,directories:e.emptyArray},e.matchPatternOrExact=function(t,r){for(var n=[],i=0,a=t;i<a.length;i++){var o=a[i];if(Pn(o)){var s=li(o);if(s)n.push(s);else if(o===r)return o}}return e.findBestPatternMatch(n,(function(e){return e}),r)},e.sliceAfter=function(t,r){var n=t.indexOf(r);return e.Debug.assert(-1!==n),t.slice(n)},e.addRelatedInfo=function(t){for(var r,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];return n.length?(t.relatedInformation||(t.relatedInformation=[]),e.Debug.assert(t.relatedInformation!==e.emptyArray,"Diagnostic had empty array singleton for related info, but is still being constructed!"),(r=t.relatedInformation).push.apply(r,n),t):t},e.minAndMax=function(t,r){e.Debug.assert(0!==t.length);for(var n=r(t[0]),i=n,a=1;a<t.length;a++){var o=r(t[a]);o<n?n=o:o>i&&(i=o)}return{min:n,max:i}},e.rangeOfNode=function(e){return{pos:x(e),end:e.end}},e.rangeOfTypeParameters=function(t,r){return{pos:r.pos-1,end:e.skipTrivia(t.text,r.end)+1}},e.skipTypeChecking=function(e,t,r){return t.skipLibCheck&&e.isDeclarationFile||t.skipDefaultLibCheck&&e.hasNoDefaultLib||r.isSourceOfProjectReferenceRedirect(e.fileName)},e.isJsonEqual=fi,e.parsePseudoBigInt=function(e){var t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:for(var r=e.length-1,n=0;48===e.charCodeAt(n);)n++;return e.slice(n,r)||"0"}for(var i=e.length-1,a=(i-2)*t,o=new Uint16Array((a>>>4)+(15&a?1:0)),s=i-1,c=0;s>=2;s--,c+=t){var l=c>>>4,u=e.charCodeAt(s),d=(u<=57?u-48:10+u-(u<=70?65:97))<<(15&c);o[l]|=d;var p=d>>>16;p&&(o[l+1]|=p)}for(var f="",m=o.length-1,g=!0;g;){var _=0;g=!1;for(l=m;l>=0;l--){var h=_<<16|o[l],y=h/10|0;o[l]=y,_=h-10*y,y&&!g&&(m=l,g=!0)}f=_+f}return f},e.pseudoBigIntToString=function(e){var t=e.negative,r=e.base10Value;return(t&&"0"!==r?"-":"")+r},e.isValidTypeOnlyAliasUseSite=function(t){return!!(8388608&t.flags)||be(t)||function(t){if(78!==t.kind)return!1;var r=e.findAncestor(t.parent,(function(e){switch(e.kind){case 289:return!0;case 202:case 225:return!1;default:return"quit"}}));return 117===(null==r?void 0:r.token)||256===(null==r?void 0:r.parent.kind)}(t)||function(e){for(;78===e.kind||202===e.kind;)e=e.parent;if(159!==e.kind)return!1;if(wr(e.parent,128))return!0;var t=e.parent.parent.kind;return 256===t||178===t}(t)||!ye(t)},e.typeOnlyDeclarationIsExport=function(e){return 273===e.kind},e.isIdentifierTypeReference=function(t){return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)},e.arrayIsHomogeneous=function(t,r){if(void 0===r&&(r=e.equateValues),t.length<2)return!0;for(var n=t[0],i=1,a=t.length;i<a;i++){if(!r(n,t[i]))return!1}return!0},e.setTextRangePos=mi,e.setTextRangeEnd=gi,e.setTextRangePosEnd=_i,e.setTextRangePosWidth=function(e,t,r){return _i(e,t,t+r)},e.setNodeFlags=function(e,t){return e&&(e.flags=t),e},e.setParent=hi,e.setEachParent=function(e,t){if(e)for(var r=0,n=e;r<n.length;r++){hi(n[r],t)}return e},e.isPackedArrayLiteral=function(t){return e.isArrayLiteralExpression(t)&&e.every(t.elements,yi)},e.expressionResultIsUnused=function(t){for(e.Debug.assertIsDefined(t.parent);;){var r=t.parent;if(e.isParenthesizedExpression(r))t=r;else{if(e.isExpressionStatement(r)||e.isVoidExpression(r)||e.isForStatement(r)&&(r.initializer===t||r.incrementor===t))return!0;if(e.isCommaListExpression(r)){if(t!==e.last(r.elements))return!0;t=r}else{if(!e.isBinaryExpression(r)||27!==r.operatorToken.kind)return!1;if(t===r.left)return!0;t=r}}}},e.containsIgnoredPath=vi,e.isCalledStructDeclaration=function(e){return!!e&&e.some((function(e){return 255===e.kind}))},e.getNameOfDecorator=function(t){var r=t.expression;return e.isIdentifier(r)?r.escapedText.toString():e.isCallExpression(r)&&e.isIdentifier(r.expression)?r.expression.escapedText.toString():void 0},e.isEtsFunctionDecorators=function(e,t){var r,n,i,a,o,s,c,l;return e===(null===(n=null===(r=t.ets)||void 0===r?void 0:r.render)||void 0===n?void 0:n.decorator)||e===(null===(a=null===(i=t.ets)||void 0===i?void 0:i.styles)||void 0===a?void 0:a.decorator)||null!==(l=null===(c=null===(s=null===(o=t.ets)||void 0===o?void 0:o.extend)||void 0===s?void 0:s.decorator)||void 0===c?void 0:c.includes(e))&&void 0!==l&&l},e.isOhpm=bi,e.getModuleByPMType=function(e){return bi(e)?"oh_modules":"node_modules"},e.getPackageJsonByPMType=function(e){return bi(e)?"oh-package.json5":"package.json"},e.tryGetSignatureDeclaration=function(t,r){var n=function(t){var r=e.findAncestor(t,(function(t){return!function(t){var r;return(null===(r=e.tryCast(t.parent,e.isPropertyAccessExpression))||void 0===r?void 0:r.name)===t}(t)})),n=null==r?void 0:r.parent;return n&&e.isCallLikeExpression(n)&&pe(n)===r?n:void 0}(r),i=n&&t.tryGetResolvedSignatureWithoutCheck(n);return e.tryCast(i&&i.declaration,(function(t){return e.isFunctionLike(t)&&!e.isFunctionTypeNode(t)}))},e.getEtsComponentExpressionInnerExpressionStatementNode=function(t){for(;t&&!e.isIdentifier(t);){var r=t,n=t.expression;if(n&&e.isIdentifier(n)){t=r;break}t=n}if(t)return e.isCallExpression(t)||e.isEtsComponentExpression(t)||e.isPropertyAccessExpression(t)?t:void 0},e.getEtsExtendDecoratorsComponentNames=function(e,t){var r,n,i,a=[],o=null!==(i=null===(n=null===(r=t.ets)||void 0===r?void 0:r.extend)||void 0===n?void 0:n.decorator)&&void 0!==i?i:"Extend";return null==e||e.forEach((function(e){if(204===e.expression.kind){var t=e.expression.expression,r=e.expression.arguments;78===t.kind&&t.escapedText===o&&r.length&&78===r[0].kind&&a.push(r[0].escapedText)}})),a}}(d||(d={})),function(e){e.createObfTextSingleLineWriter=function(){var t,r,n;function i(i){var a=e.computeLineStarts(i);a.length>1?(n=t.length-i.length+e.last(a),r=n-t.length==0):r=!1}function a(e){!function(e){e&&e.length&&(r&&(r=!1),t+=e,i(e))}(e)}function o(){t="",r=!0,n=0}return o(),{write:a,rawWrite:function(e){void 0!==e&&(t+=e,i(e))},writeLiteral:function(e){e&&e.length&&a(e)},writeLine:function(e){r&&!e||(n=(t+=" ").length)},increaseIndent:e.noop,decreaseIndent:e.noop,getIndent:function(){return 0},getTextPos:function(){return t.length},getLine:function(){return 0},getColumn:function(){return r?0:t.length-n},getText:function(){return t},isAtStartOfLine:function(){return r},hasTrailingComment:function(){return!1},hasTrailingWhitespace:function(){return!!t.length&&e.isWhiteSpaceLike(t.charCodeAt(t.length-1))},clear:o,reportInaccessibleThisError:e.noop,reportPrivateInBaseOfClassExpression:e.noop,reportInaccessibleUniqueSymbolError:e.noop,trackSymbol:e.noop,writeKeyword:a,writeOperator:a,writeParameter:a,writeProperty:a,writePunctuation:a,writeSpace:a,writeStringLiteral:a,writeSymbol:function(e,t){return a(e)},writeTrailingSemicolon:a,writeComment:e.noop,getTextPosWithWriteLine:function(){return r?t.length:t.length+1}}},e.getLeadingCommentRangesOfNode=function(t,r){return 11!==t.kind?e.getLeadingCommentRanges(r.text,t.pos):void 0},e.createTextWriter=function(t){var r,n,i,a,o,s=!1;function c(t){var n=e.computeLineStarts(t);n.length>1?(a=a+n.length-1,o=r.length-t.length+e.last(n),i=o-r.length==0):i=!1}function l(t){t&&t.length&&(i&&(t=e.getIndentString(n)+t,i=!1),r+=t,c(t))}function u(e){e&&(s=!1),l(e)}function d(){r="",n=0,i=!0,a=0,o=0,s=!1}return d(),{write:u,rawWrite:function(e){void 0!==e&&(r+=e,c(e),s=!1)},writeLiteral:function(e){e&&e.length&&u(e)},writeLine:function(e){i&&!e||(a++,o=(r+=t).length,i=!0,s=!1)},increaseIndent:function(){n++},decreaseIndent:function(){n--},getIndent:function(){return n},getTextPos:function(){return r.length},getLine:function(){return a},getColumn:function(){return i?n*e.getIndentSize():r.length-o},getText:function(){return r},isAtStartOfLine:function(){return i},hasTrailingComment:function(){return s},hasTrailingWhitespace:function(){return!!r.length&&e.isWhiteSpaceLike(r.charCodeAt(r.length-1))},clear:d,reportInaccessibleThisError:e.noop,reportPrivateInBaseOfClassExpression:e.noop,reportInaccessibleUniqueSymbolError:e.noop,trackSymbol:e.noop,writeKeyword:u,writeOperator:u,writeParameter:u,writeProperty:u,writePunctuation:u,writeSpace:u,writeStringLiteral:u,writeSymbol:function(e,t){return u(e)},writeTrailingSemicolon:u,writeComment:function(e){e&&(s=!0),l(e)},getTextPosWithWriteLine:function(){return i?r.length:r.length+t.length}}},e.setParentRecursive=function(t,r){return t?(e.forEachChildRecursively(t,e.isJSDocNode(t)?n:function(t,r){return n(t,r)||function(t){if(e.hasJSDocNodes(t))for(var r=0,i=t.jsDoc;r<i.length;r++){var a=i[r];n(a,t),e.forEachChildRecursively(a,n)}}(t)}),t):t;function n(t,n){if(r&&t.parent===n)return"skip";e.setParent(t,n)}}}(d||(d={})),function(e){e.createBaseNodeFactory=function(){var t,r,n,i,a;return{createBaseSourceFileNode:function(t){return new(a||(a=e.objectAllocator.getSourceFileConstructor()))(t,-1,-1)},createBaseIdentifierNode:function(t){return new(n||(n=e.objectAllocator.getIdentifierConstructor()))(t,-1,-1)},createBasePrivateIdentifierNode:function(t){return new(i||(i=e.objectAllocator.getPrivateIdentifierConstructor()))(t,-1,-1)},createBaseTokenNode:function(t){return new(r||(r=e.objectAllocator.getTokenConstructor()))(t,-1,-1)},createBaseNode:function(r){return new(t||(t=e.objectAllocator.getNodeConstructor()))(r,-1,-1)}}}}(d||(d={})),function(e){e.createParenthesizerRules=function(t){return{parenthesizeLeftSideOfBinary:function(e,t){return n(e,t,!0)},parenthesizeRightSideOfBinary:function(e,t,r){return n(e,r,!1,t)},parenthesizeExpressionOfComputedPropertyName:function(r){return e.isCommaSequence(r)?t.createParenthesizedExpression(r):r},parenthesizeConditionOfConditionalExpression:function(r){var n=e.getOperatorPrecedence(219,57),i=e.skipPartiallyEmittedExpressions(r),a=e.getExpressionPrecedence(i);if(1!==e.compareValues(a,n))return t.createParenthesizedExpression(r);return r},parenthesizeBranchOfConditionalExpression:function(r){var n=e.skipPartiallyEmittedExpressions(r);return e.isCommaSequence(n)?t.createParenthesizedExpression(r):r},parenthesizeExpressionOfExportDefault:function(r){var n=e.skipPartiallyEmittedExpressions(r),i=e.isCommaSequence(n);if(!i)switch(e.getLeftmostExpression(n,!1).kind){case 223:case 209:i=!0}return i?t.createParenthesizedExpression(r):r},parenthesizeExpressionOfNew:function(r){var n=e.getLeftmostExpression(r,!0);switch(n.kind){case 204:return t.createParenthesizedExpression(r);case 205:return n.arguments?r:t.createParenthesizedExpression(r)}return i(r)},parenthesizeLeftSideOfAccess:i,parenthesizeOperandOfPostfixUnary:function(r){return e.isLeftHandSideExpression(r)?r:e.setTextRange(t.createParenthesizedExpression(r),r)},parenthesizeOperandOfPrefixUnary:function(r){return e.isUnaryExpression(r)?r:e.setTextRange(t.createParenthesizedExpression(r),r)},parenthesizeExpressionsOfCommaDelimitedList:function(r){var n=e.sameMap(r,a);return e.setTextRange(t.createNodeArray(n,r.hasTrailingComma),r)},parenthesizeExpressionForDisallowedComma:a,parenthesizeExpressionOfExpressionStatement:function(r){var n=e.skipPartiallyEmittedExpressions(r);if(e.isCallExpression(n)){var i=n.expression,a=e.skipPartiallyEmittedExpressions(i).kind;if(209===a||210===a){var o=t.updateCallExpression(n,e.setTextRange(t.createParenthesizedExpression(i),i),n.typeArguments,n.arguments);return t.restoreOuterExpressions(r,o,8)}}var s=e.getLeftmostExpression(n,!1).kind;if(201===s||209===s)return e.setTextRange(t.createParenthesizedExpression(r),r);return r},parenthesizeConciseBodyOfArrowFunction:function(r){if(!e.isBlock(r)&&(e.isCommaSequence(r)||201===e.getLeftmostExpression(r,!1).kind))return e.setTextRange(t.createParenthesizedExpression(r),r);return r},parenthesizeMemberOfConditionalType:o,parenthesizeMemberOfElementType:s,parenthesizeElementTypeOfArrayType:function(e){switch(e.kind){case 177:case 189:case 186:return t.createParenthesizedType(e)}return s(e)},parenthesizeConstituentTypesOfUnionOrIntersectionType:function(r){return t.createNodeArray(e.sameMap(r,s))},parenthesizeTypeArguments:function(r){if(e.some(r))return t.createNodeArray(e.sameMap(r,c))}};function r(t){if(t=e.skipPartiallyEmittedExpressions(t),e.isLiteralKind(t.kind))return t.kind;if(218===t.kind&&39===t.operatorToken.kind){if(void 0!==t.cachedLiteralKind)return t.cachedLiteralKind;var n=r(t.left),i=e.isLiteralKind(n)&&n===r(t.right)?n:0;return t.cachedLiteralKind=i,i}return 0}function n(n,i,a,o){return 208===e.skipPartiallyEmittedExpressions(i).kind?i:function(t,n,i,a){var o=e.getOperatorPrecedence(218,t),s=e.getOperatorAssociativity(218,t),c=e.skipPartiallyEmittedExpressions(n);if(!i&&210===n.kind&&o>3)return!0;var l=e.getExpressionPrecedence(c);switch(e.compareValues(l,o)){case-1:return!(!i&&1===s&&221===n.kind);case 1:return!1;case 0:if(i)return 1===s;if(e.isBinaryExpression(c)&&c.operatorToken.kind===t){if(function(e){return 41===e||51===e||50===e||52===e}(t))return!1;if(39===t){var u=a?r(a):0;if(e.isLiteralKind(u)&&u===r(c))return!1}}return 0===e.getExpressionAssociativity(c)}}(n,i,a,o)?t.createParenthesizedExpression(i):i}function i(r){var n=e.skipPartiallyEmittedExpressions(r);return e.isLeftHandSideExpression(n)&&(205!==n.kind||n.arguments)?r:e.setTextRange(t.createParenthesizedExpression(r),r)}function a(r){var n=e.skipPartiallyEmittedExpressions(r);return e.getExpressionPrecedence(n)>e.getOperatorPrecedence(218,27)?r:e.setTextRange(t.createParenthesizedExpression(r),r)}function o(e){return 185===e.kind?t.createParenthesizedType(e):e}function s(e){switch(e.kind){case 183:case 184:case 175:case 176:return t.createParenthesizedType(e)}return o(e)}function c(r,n){return 0===n&&e.isFunctionOrConstructorTypeNode(r)&&r.typeParameters?t.createParenthesizedType(r):r}},e.nullParenthesizerRules={parenthesizeLeftSideOfBinary:function(e,t){return t},parenthesizeRightSideOfBinary:function(e,t,r){return r},parenthesizeExpressionOfComputedPropertyName:e.identity,parenthesizeConditionOfConditionalExpression:e.identity,parenthesizeBranchOfConditionalExpression:e.identity,parenthesizeExpressionOfExportDefault:e.identity,parenthesizeExpressionOfNew:function(t){return e.cast(t,e.isLeftHandSideExpression)},parenthesizeLeftSideOfAccess:function(t){return e.cast(t,e.isLeftHandSideExpression)},parenthesizeOperandOfPostfixUnary:function(t){return e.cast(t,e.isLeftHandSideExpression)},parenthesizeOperandOfPrefixUnary:function(t){return e.cast(t,e.isUnaryExpression)},parenthesizeExpressionsOfCommaDelimitedList:function(t){return e.cast(t,e.isNodeArray)},parenthesizeExpressionForDisallowedComma:e.identity,parenthesizeExpressionOfExpressionStatement:e.identity,parenthesizeConciseBodyOfArrowFunction:e.identity,parenthesizeMemberOfConditionalType:e.identity,parenthesizeMemberOfElementType:e.identity,parenthesizeElementTypeOfArrayType:e.identity,parenthesizeConstituentTypesOfUnionOrIntersectionType:function(t){return e.cast(t,e.isNodeArray)},parenthesizeTypeArguments:function(t){return t&&e.cast(t,e.isNodeArray)}}}(d||(d={})),function(e){e.createNodeConverters=function(t){return{convertToFunctionBlock:function(r,n){if(e.isBlock(r))return r;var i=t.createReturnStatement(r);e.setTextRange(i,r);var a=t.createBlock([i],n);return e.setTextRange(a,r),a},convertToFunctionExpression:function(r){if(!r.body)return e.Debug.fail("Cannot convert a FunctionDeclaration without a body");var n=t.createFunctionExpression(r.modifiers,r.asteriskToken,r.name,r.typeParameters,r.parameters,r.type,r.body);e.setOriginalNode(n,r),e.setTextRange(n,r),e.getStartsOnNewLine(r)&&e.setStartsOnNewLine(n,!0);return n},convertToArrayAssignmentElement:r,convertToObjectAssignmentElement:n,convertToAssignmentPattern:i,convertToObjectAssignmentPattern:a,convertToArrayAssignmentPattern:o,convertToAssignmentElementTarget:s};function r(r){if(e.isBindingElement(r)){if(r.dotDotDotToken)return e.Debug.assertNode(r.name,e.isIdentifier),e.setOriginalNode(e.setTextRange(t.createSpreadElement(r.name),r),r);var n=s(r.name);return r.initializer?e.setOriginalNode(e.setTextRange(t.createAssignment(n,r.initializer),r),r):n}return e.cast(r,e.isExpression)}function n(r){if(e.isBindingElement(r)){if(r.dotDotDotToken)return e.Debug.assertNode(r.name,e.isIdentifier),e.setOriginalNode(e.setTextRange(t.createSpreadAssignment(r.name),r),r);if(r.propertyName){var n=s(r.name);return e.setOriginalNode(e.setTextRange(t.createPropertyAssignment(r.propertyName,r.initializer?t.createAssignment(n,r.initializer):n),r),r)}return e.Debug.assertNode(r.name,e.isIdentifier),e.setOriginalNode(e.setTextRange(t.createShorthandPropertyAssignment(r.name,r.initializer),r),r)}return e.cast(r,e.isObjectLiteralElementLike)}function i(e){switch(e.kind){case 198:case 200:return o(e);case 197:case 201:return a(e)}}function a(r){return e.isObjectBindingPattern(r)?e.setOriginalNode(e.setTextRange(t.createObjectLiteralExpression(e.map(r.elements,n)),r),r):e.cast(r,e.isObjectLiteralExpression)}function o(n){return e.isArrayBindingPattern(n)?e.setOriginalNode(e.setTextRange(t.createArrayLiteralExpression(e.map(n.elements,r)),n),n):e.cast(n,e.isArrayLiteralExpression)}function s(t){return e.isBindingPattern(t)?i(t):e.cast(t,e.isExpression)}},e.nullNodeConverters={convertToFunctionBlock:e.notImplemented,convertToFunctionExpression:e.notImplemented,convertToArrayAssignmentElement:e.notImplemented,convertToObjectAssignmentElement:e.notImplemented,convertToAssignmentPattern:e.notImplemented,convertToObjectAssignmentPattern:e.notImplemented,convertToArrayAssignmentPattern:e.notImplemented,convertToAssignmentElementTarget:e.notImplemented}}(d||(d={})),function(e){var t,r=0;function n(n,f){var m=8&n?a:o,g=e.memoize((function(){return 1&n?e.nullParenthesizerRules:e.createParenthesizerRules(C)})),_=e.memoize((function(){return 2&n?e.nullNodeConverters:e.createNodeConverters(C)})),h=e.memoizeOne((function(e){return function(t,r){return Rt(t,e,r)}})),v=e.memoizeOne((function(e){return function(t){return Ft(e,t)}})),b=e.memoizeOne((function(e){return function(t){return Ot(t,e)}})),k=e.memoizeOne((function(e){return function(){return function(e){return N(e)}(e)}})),x=e.memoizeOne((function(e){return function(t){return tn(e,t)}})),S=e.memoizeOne((function(e){return function(t,r){return function(e,t,r){return t.type!==r?m(tn(e,r),t):t}(e,t,r)}})),w=e.memoizeOne((function(e){return function(t,r){return yn(e,t,r)}})),D=e.memoizeOne((function(e){return function(t,r,n){return function(e,t,r,n){void 0===r&&(r=sn(t));return t.tagName!==r||t.comment!==n?m(yn(e,r,n),t):t}(e,t,r,n)}})),E=e.memoizeOne((function(e){return function(t,r,n){return vn(e,t,r,n)}})),T=e.memoizeOne((function(e){return function(t,r,n,i){return function(e,t,r,n,i){void 0===r&&(r=sn(t));return t.tagName!==r||t.typeExpression!==n||t.comment!==i?m(vn(e,r,n,i),t):t}(e,t,r,n,i)}})),C={get parenthesizer(){return g()},get converters(){return _()},createNodeArray:A,createNumericLiteral:J,createBigIntLiteral:V,createStringLiteral:K,createStringLiteralFromNode:function(t){var r=H(e.getTextOfIdentifierOrLiteral(t),void 0);return r.textSourceNode=t,r},createRegularExpressionLiteral:W,createLiteralLikeNode:function(e,t){switch(e){case 8:return J(t,0);case 9:return V(t);case 10:return K(t,void 0);case 11:return Tn(t,!1);case 12:return Tn(t,!0);case 13:return W(t);case 14:return zt(e,t,void 0,0)}},createIdentifier:Y,updateIdentifier:function(t,r){return t.typeArguments!==r?m(Y(e.idText(t),r),t):t},createTempVariable:X,createLoopVariable:function(){return $("",2)},createUniqueName:function(t,r){void 0===r&&(r=0);return e.Debug.assert(!(7&r),"Argument out of range: flags"),e.Debug.assert(32!=(48&r),"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),$(t,3|r)},getGeneratedNameForNode:Q,createPrivateIdentifier:function(t){e.startsWith(t,"#")||e.Debug.fail("First character of private identifier must be #: "+t);var r=f.createBasePrivateIdentifierNode(79);return r.escapedText=e.escapeLeadingUnderscores(t),r.transformFlags|=4194304,r},createToken:ee,createSuper:function(){return ee(106)},createThis:te,createNull:function(){return ee(104)},createTrue:re,createFalse:ne,createModifier:ie,createModifiersFromModifierFlags:ae,createQualifiedName:oe,updateQualifiedName:function(e,t,r){return e.left!==t||e.right!==r?m(oe(t,r),e):e},createComputedPropertyName:se,updateComputedPropertyName:function(e,t){return e.expression!==t?m(se(t),e):e},createTypeParameterDeclaration:ce,updateTypeParameterDeclaration:function(e,t,r,n){return e.name!==t||e.constraint!==r||e.default!==n?m(ce(t,r,n),e):e},createParameterDeclaration:le,updateParameterDeclaration:ue,createDecorator:de,updateDecorator:function(e,t){return e.expression!==t?m(de(t),e):e},createPropertySignature:pe,updatePropertySignature:fe,createPropertyDeclaration:me,updatePropertyDeclaration:ge,createMethodSignature:_e,updateMethodSignature:he,createMethodDeclaration:ye,updateMethodDeclaration:ve,createConstructorDeclaration:be,updateConstructorDeclaration:ke,createGetAccessorDeclaration:xe,updateGetAccessorDeclaration:Se,createSetAccessorDeclaration:we,updateSetAccessorDeclaration:De,createCallSignature:Ee,updateCallSignature:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?R(Ee(t,r,n),e):e},createConstructSignature:Te,updateConstructSignature:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?R(Te(t,r,n),e):e},createIndexSignature:Ce,updateIndexSignature:Ae,createTemplateLiteralTypeSpan:Ne,updateTemplateLiteralTypeSpan:function(e,t,r){return e.type!==t||e.literal!==r?m(Ne(t,r),e):e},createKeywordTypeNode:function(e){return ee(e)},createTypePredicateNode:Pe,updateTypePredicateNode:function(e,t,r,n){return e.assertsModifier!==t||e.parameterName!==r||e.type!==n?m(Pe(t,r,n),e):e},createTypeReferenceNode:Ie,updateTypeReferenceNode:function(e,t,r){return e.typeName!==t||e.typeArguments!==r?m(Ie(t,r),e):e},createFunctionTypeNode:Fe,updateFunctionTypeNode:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?R(Fe(t,r,n),e):e},createConstructorTypeNode:Oe,updateConstructorTypeNode:function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return 5===t.length?Le.apply(void 0,t):4===t.length?je.apply(void 0,t):e.Debug.fail("Incorrect number of arguments specified.")},createTypeQueryNode:Be,updateTypeQueryNode:function(e,t){return e.exprName!==t?m(Be(t),e):e},createTypeLiteralNode:ze,updateTypeLiteralNode:function(e,t){return e.members!==t?m(ze(t),e):e},createArrayTypeNode:Ue,updateArrayTypeNode:function(e,t){return e.elementType!==t?m(Ue(t),e):e},createTupleTypeNode:qe,updateTupleTypeNode:function(e,t){return e.elements!==t?m(qe(t),e):e},createNamedTupleMember:Je,updateNamedTupleMember:function(e,t,r,n,i){return e.dotDotDotToken!==t||e.name!==r||e.questionToken!==n||e.type!==i?m(Je(t,r,n,i),e):e},createOptionalTypeNode:Ve,updateOptionalTypeNode:function(e,t){return e.type!==t?m(Ve(t),e):e},createRestTypeNode:He,updateRestTypeNode:function(e,t){return e.type!==t?m(He(t),e):e},createUnionTypeNode:function(e){return Ke(183,e)},updateUnionTypeNode:function(e,t){return We(e,t)},createIntersectionTypeNode:function(e){return Ke(184,e)},updateIntersectionTypeNode:function(e,t){return We(e,t)},createConditionalTypeNode:Ge,updateConditionalTypeNode:function(e,t,r,n,i){return e.checkType!==t||e.extendsType!==r||e.trueType!==n||e.falseType!==i?m(Ge(t,r,n,i),e):e},createInferTypeNode:$e,updateInferTypeNode:function(e,t){return e.typeParameter!==t?m($e(t),e):e},createImportTypeNode:Xe,updateImportTypeNode:function(e,t,r,n,i){void 0===i&&(i=e.isTypeOf);return e.argument!==t||e.qualifier!==r||e.typeArguments!==n||e.isTypeOf!==i?m(Xe(t,r,n,i),e):e},createParenthesizedType:Qe,updateParenthesizedType:function(e,t){return e.type!==t?m(Qe(t),e):e},createThisTypeNode:function(){var e=N(188);return e.transformFlags=1,e},createTypeOperatorNode:Ze,updateTypeOperatorNode:function(e,t){return e.type!==t?m(Ze(e.operator,t),e):e},createIndexedAccessTypeNode:et,updateIndexedAccessTypeNode:function(e,t,r){return e.objectType!==t||e.indexType!==r?m(et(t,r),e):e},createMappedTypeNode:tt,updateMappedTypeNode:function(e,t,r,n,i,a){return e.readonlyToken!==t||e.typeParameter!==r||e.nameType!==n||e.questionToken!==i||e.type!==a?m(tt(t,r,n,i,a),e):e},createLiteralTypeNode:rt,updateLiteralTypeNode:function(e,t){return e.literal!==t?m(rt(t),e):e},createTemplateLiteralType:Ye,updateTemplateLiteralType:function(e,t,r){return e.head!==t||e.templateSpans!==r?m(Ye(t,r),e):e},createObjectBindingPattern:nt,updateObjectBindingPattern:function(e,t){return e.elements!==t?m(nt(t),e):e},createArrayBindingPattern:it,updateArrayBindingPattern:function(e,t){return e.elements!==t?m(it(t),e):e},createBindingElement:at,updateBindingElement:function(e,t,r,n,i){return e.propertyName!==r||e.dotDotDotToken!==t||e.name!==n||e.initializer!==i?m(at(t,r,n,i),e):e},createArrayLiteralExpression:st,updateArrayLiteralExpression:function(e,t){return e.elements!==t?m(st(t,e.multiLine),e):e},createObjectLiteralExpression:ct,updateObjectLiteralExpression:function(e,t){return e.properties!==t?m(ct(t,e.multiLine),e):e},createPropertyAccessExpression:4&n?function(t,r){return e.setEmitFlags(lt(t,r),131072)}:lt,updatePropertyAccessExpression:function(t,r,n){if(e.isPropertyAccessChain(t))return dt(t,r,t.questionDotToken,e.cast(n,e.isIdentifier));return t.expression!==r||t.name!==n?m(lt(r,n),t):t},createPropertyAccessChain:4&n?function(t,r,n){return e.setEmitFlags(ut(t,r,n),131072)}:ut,updatePropertyAccessChain:dt,createElementAccessExpression:pt,updateElementAccessExpression:function(t,r,n){if(e.isElementAccessChain(t))return mt(t,r,t.questionDotToken,n);return t.expression!==r||t.argumentExpression!==n?m(pt(r,n),t):t},createElementAccessChain:ft,updateElementAccessChain:mt,createCallExpression:gt,updateCallExpression:function(t,r,n,i){if(e.isCallChain(t))return ht(t,r,t.questionDotToken,n,i);return t.expression!==r||t.typeArguments!==n||t.arguments!==i?m(gt(r,n,i),t):t},createCallChain:_t,updateCallChain:ht,createNewExpression:yt,updateNewExpression:function(e,t,r,n){return e.expression!==t||e.typeArguments!==r||e.arguments!==n?m(yt(t,r,n),e):e},createTaggedTemplateExpression:vt,updateTaggedTemplateExpression:function(e,t,r,n){return e.tag!==t||e.typeArguments!==r||e.template!==n?m(vt(t,r,n),e):e},createTypeAssertion:bt,updateTypeAssertion:kt,createParenthesizedExpression:xt,updateParenthesizedExpression:St,createFunctionExpression:wt,updateFunctionExpression:Dt,createEtsComponentExpression:Et,updateEtsComponentExpression:function(e,t,r,n){return e.expression!==t||e.arguments!==r||e.body!==n?Et(t,r,n):e},createArrowFunction:Tt,updateArrowFunction:Ct,createDeleteExpression:At,updateDeleteExpression:function(e,t){return e.expression!==t?m(At(t),e):e},createTypeOfExpression:Nt,updateTypeOfExpression:function(e,t){return e.expression!==t?m(Nt(t),e):e},createVoidExpression:Pt,updateVoidExpression:function(e,t){return e.expression!==t?m(Pt(t),e):e},createAwaitExpression:It,updateAwaitExpression:function(e,t){return e.expression!==t?m(It(t),e):e},createPrefixUnaryExpression:Ft,updatePrefixUnaryExpression:function(e,t){return e.operand!==t?m(Ft(e.operator,t),e):e},createPostfixUnaryExpression:Ot,updatePostfixUnaryExpression:function(e,t){return e.operand!==t?m(Ot(t,e.operator),e):e},createBinaryExpression:Rt,updateBinaryExpression:function(e,t,r,n){return e.left!==t||e.operatorToken!==r||e.right!==n?m(Rt(t,r,n),e):e},createConditionalExpression:Lt,updateConditionalExpression:function(e,t,r,n,i,a){return e.condition!==t||e.questionToken!==r||e.whenTrue!==n||e.colonToken!==i||e.whenFalse!==a?m(Lt(t,r,n,i,a),e):e},createTemplateExpression:jt,updateTemplateExpression:function(e,t,r){return e.head!==t||e.templateSpans!==r?m(jt(t,r),e):e},createTemplateHead:function(e,t,r){return Bt(15,e,t,r)},createTemplateMiddle:function(e,t,r){return Bt(16,e,t,r)},createTemplateTail:function(e,t,r){return Bt(17,e,t,r)},createNoSubstitutionTemplateLiteral:function(e,t,r){return Bt(14,e,t,r)},createTemplateLiteralLikeNode:zt,createYieldExpression:Ut,updateYieldExpression:function(e,t,r){return e.expression!==r||e.asteriskToken!==t?m(Ut(t,r),e):e},createSpreadElement:qt,updateSpreadElement:function(e,t){return e.expression!==t?m(qt(t),e):e},createClassExpression:Jt,updateClassExpression:Vt,createOmittedExpression:function(){return ot(224)},createExpressionWithTypeArguments:Ht,updateExpressionWithTypeArguments:function(e,t,r){return e.expression!==t||e.typeArguments!==r?m(Ht(t,r),e):e},createAsExpression:Kt,updateAsExpression:Wt,createNonNullExpression:Gt,updateNonNullExpression:$t,createNonNullChain:Yt,updateNonNullChain:Xt,createMetaProperty:Qt,updateMetaProperty:function(e,t){return e.name!==t?m(Qt(e.keywordToken,t),e):e},createTemplateSpan:Zt,updateTemplateSpan:function(e,t,r){return e.expression!==t||e.literal!==r?m(Zt(t,r),e):e},createSemicolonClassElement:function(){var e=N(231);return e.transformFlags|=256,e},createBlock:er,updateBlock:function(e,t){return e.statements!==t?m(er(t,e.multiLine),e):e},createVariableStatement:tr,updateVariableStatement:rr,createEmptyStatement:nr,createExpressionStatement:ir,updateExpressionStatement:function(e,t){return e.expression!==t?m(ir(t),e):e},createIfStatement:ar,updateIfStatement:function(e,t,r,n){return e.expression!==t||e.thenStatement!==r||e.elseStatement!==n?m(ar(t,r,n),e):e},createDoStatement:or,updateDoStatement:function(e,t,r){return e.statement!==t||e.expression!==r?m(or(t,r),e):e},createWhileStatement:sr,updateWhileStatement:function(e,t,r){return e.expression!==t||e.statement!==r?m(sr(t,r),e):e},createForStatement:cr,updateForStatement:function(e,t,r,n,i){return e.initializer!==t||e.condition!==r||e.incrementor!==n||e.statement!==i?m(cr(t,r,n,i),e):e},createForInStatement:lr,updateForInStatement:function(e,t,r,n){return e.initializer!==t||e.expression!==r||e.statement!==n?m(lr(t,r,n),e):e},createForOfStatement:ur,updateForOfStatement:function(e,t,r,n,i){return e.awaitModifier!==t||e.initializer!==r||e.expression!==n||e.statement!==i?m(ur(t,r,n,i),e):e},createContinueStatement:dr,updateContinueStatement:function(e,t){return e.label!==t?m(dr(t),e):e},createBreakStatement:pr,updateBreakStatement:function(e,t){return e.label!==t?m(pr(t),e):e},createReturnStatement:fr,updateReturnStatement:function(e,t){return e.expression!==t?m(fr(t),e):e},createWithStatement:mr,updateWithStatement:function(e,t,r){return e.expression!==t||e.statement!==r?m(mr(t,r),e):e},createSwitchStatement:gr,updateSwitchStatement:function(e,t,r){return e.expression!==t||e.caseBlock!==r?m(gr(t,r),e):e},createLabeledStatement:_r,updateLabeledStatement:hr,createThrowStatement:yr,updateThrowStatement:function(e,t){return e.expression!==t?m(yr(t),e):e},createTryStatement:vr,updateTryStatement:function(e,t,r,n){return e.tryBlock!==t||e.catchClause!==r||e.finallyBlock!==n?m(vr(t,r,n),e):e},createDebuggerStatement:function(){return N(250)},createVariableDeclaration:br,updateVariableDeclaration:function(e,t,r,n,i){return e.name!==t||e.type!==n||e.exclamationToken!==r||e.initializer!==i?m(br(t,r,n,i),e):e},createVariableDeclarationList:kr,updateVariableDeclarationList:function(e,t){return e.declarations!==t?m(kr(t,e.flags),e):e},createFunctionDeclaration:xr,updateFunctionDeclaration:Sr,createClassDeclaration:wr,updateClassDeclaration:Dr,createStructDeclaration:Er,updateStructDeclaration:Tr,createInterfaceDeclaration:Cr,updateInterfaceDeclaration:Ar,createTypeAliasDeclaration:Nr,updateTypeAliasDeclaration:Pr,createEnumDeclaration:Ir,updateEnumDeclaration:Fr,createModuleDeclaration:Or,updateModuleDeclaration:Rr,createModuleBlock:Mr,updateModuleBlock:function(e,t){return e.statements!==t?m(Mr(t),e):e},createCaseBlock:Lr,updateCaseBlock:function(e,t){return e.clauses!==t?m(Lr(t),e):e},createNamespaceExportDeclaration:jr,updateNamespaceExportDeclaration:function(e,t){return e.name!==t?m(jr(t),e):e},createImportEqualsDeclaration:Br,updateImportEqualsDeclaration:zr,createImportDeclaration:Ur,updateImportDeclaration:qr,createImportClause:Jr,updateImportClause:function(e,t,r,n){return e.isTypeOnly!==t||e.name!==r||e.namedBindings!==n?m(Jr(t,r,n),e):e},createNamespaceImport:Vr,updateNamespaceImport:function(e,t){return e.name!==t?m(Vr(t),e):e},createNamespaceExport:Hr,updateNamespaceExport:function(e,t){return e.name!==t?m(Hr(t),e):e},createNamedImports:Kr,updateNamedImports:function(e,t){return e.elements!==t?m(Kr(t),e):e},createImportSpecifier:Wr,updateImportSpecifier:function(e,t,r){return e.propertyName!==t||e.name!==r?m(Wr(t,r),e):e},createExportAssignment:Gr,updateExportAssignment:$r,createExportDeclaration:Yr,updateExportDeclaration:Xr,createNamedExports:Qr,updateNamedExports:function(e,t){return e.elements!==t?m(Qr(t),e):e},createExportSpecifier:Zr,updateExportSpecifier:function(e,t,r){return e.propertyName!==t||e.name!==r?m(Zr(t,r),e):e},createMissingDeclaration:function(){return P(274,void 0,void 0)},createExternalModuleReference:en,updateExternalModuleReference:function(e,t){return e.expression!==t?m(en(t),e):e},get createJSDocAllType(){return k(306)},get createJSDocUnknownType(){return k(307)},get createJSDocNonNullableType(){return x(309)},get updateJSDocNonNullableType(){return S(309)},get createJSDocNullableType(){return x(308)},get updateJSDocNullableType(){return S(308)},get createJSDocOptionalType(){return x(310)},get updateJSDocOptionalType(){return S(310)},get createJSDocVariadicType(){return x(312)},get updateJSDocVariadicType(){return S(312)},get createJSDocNamepathType(){return x(313)},get updateJSDocNamepathType(){return S(313)},createJSDocFunctionType:rn,updateJSDocFunctionType:function(e,t,r){return e.parameters!==t||e.type!==r?m(rn(t,r),e):e},createJSDocTypeLiteral:nn,updateJSDocTypeLiteral:function(e,t,r){return e.jsDocPropertyTags!==t||e.isArrayType!==r?m(nn(t,r),e):e},createJSDocTypeExpression:an,updateJSDocTypeExpression:function(e,t){return e.type!==t?m(an(t),e):e},createJSDocSignature:on,updateJSDocSignature:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?m(on(t,r,n),e):e},createJSDocTemplateTag:ln,updateJSDocTemplateTag:function(e,t,r,n,i){void 0===t&&(t=sn(e));return e.tagName!==t||e.constraint!==r||e.typeParameters!==n||e.comment!==i?m(ln(t,r,n,i),e):e},createJSDocTypedefTag:un,updateJSDocTypedefTag:function(e,t,r,n,i){void 0===t&&(t=sn(e));return e.tagName!==t||e.typeExpression!==r||e.fullName!==n||e.comment!==i?m(un(t,r,n,i),e):e},createJSDocParameterTag:dn,updateJSDocParameterTag:function(e,t,r,n,i,a,o){void 0===t&&(t=sn(e));return e.tagName!==t||e.name!==r||e.isBracketed!==n||e.typeExpression!==i||e.isNameFirst!==a||e.comment!==o?m(dn(t,r,n,i,a,o),e):e},createJSDocPropertyTag:pn,updateJSDocPropertyTag:function(e,t,r,n,i,a,o){void 0===t&&(t=sn(e));return e.tagName!==t||e.name!==r||e.isBracketed!==n||e.typeExpression!==i||e.isNameFirst!==a||e.comment!==o?m(pn(t,r,n,i,a,o),e):e},createJSDocCallbackTag:fn,updateJSDocCallbackTag:function(e,t,r,n,i){void 0===t&&(t=sn(e));return e.tagName!==t||e.typeExpression!==r||e.fullName!==n||e.comment!==i?m(fn(t,r,n,i),e):e},createJSDocAugmentsTag:mn,updateJSDocAugmentsTag:function(e,t,r,n){void 0===t&&(t=sn(e));return e.tagName!==t||e.class!==r||e.comment!==n?m(mn(t,r,n),e):e},createJSDocImplementsTag:gn,updateJSDocImplementsTag:function(e,t,r,n){void 0===t&&(t=sn(e));return e.tagName!==t||e.class!==r||e.comment!==n?m(gn(t,r,n),e):e},createJSDocSeeTag:_n,updateJSDocSeeTag:function(e,t,r,n){return e.tagName!==t||e.name!==r||e.comment!==n?m(_n(t,r,n),e):e},createJSDocNameReference:hn,updateJSDocNameReference:function(e,t){return e.name!==t?m(hn(t),e):e},get createJSDocTypeTag(){return E(332)},get updateJSDocTypeTag(){return T(332)},get createJSDocReturnTag(){return E(330)},get updateJSDocReturnTag(){return T(330)},get createJSDocThisTag(){return E(331)},get updateJSDocThisTag(){return T(331)},get createJSDocEnumTag(){return E(328)},get updateJSDocEnumTag(){return T(328)},get createJSDocAuthorTag(){return w(320)},get updateJSDocAuthorTag(){return D(320)},get createJSDocClassTag(){return w(322)},get updateJSDocClassTag(){return D(322)},get createJSDocPublicTag(){return w(323)},get updateJSDocPublicTag(){return D(323)},get createJSDocPrivateTag(){return w(324)},get updateJSDocPrivateTag(){return D(324)},get createJSDocProtectedTag(){return w(325)},get updateJSDocProtectedTag(){return D(325)},get createJSDocReadonlyTag(){return w(326)},get updateJSDocReadonlyTag(){return D(326)},get createJSDocDeprecatedTag(){return w(321)},get updateJSDocDeprecatedTag(){return D(321)},createJSDocUnknownTag:bn,updateJSDocUnknownTag:function(e,t,r){return e.tagName!==t||e.comment!==r?m(bn(t,r),e):e},createJSDocComment:kn,updateJSDocComment:function(e,t,r){return e.comment!==t||e.tags!==r?m(kn(t,r),e):e},createJsxElement:xn,updateJsxElement:function(e,t,r,n){return e.openingElement!==t||e.children!==r||e.closingElement!==n?m(xn(t,r,n),e):e},createJsxSelfClosingElement:Sn,updateJsxSelfClosingElement:function(e,t,r,n){return e.tagName!==t||e.typeArguments!==r||e.attributes!==n?m(Sn(t,r,n),e):e},createJsxOpeningElement:wn,updateJsxOpeningElement:function(e,t,r,n){return e.tagName!==t||e.typeArguments!==r||e.attributes!==n?m(wn(t,r,n),e):e},createJsxClosingElement:Dn,updateJsxClosingElement:function(e,t){return e.tagName!==t?m(Dn(t),e):e},createJsxFragment:En,createJsxText:Tn,updateJsxText:function(e,t,r){return e.text!==t||e.containsOnlyTriviaWhiteSpaces!==r?m(Tn(t,r),e):e},createJsxOpeningFragment:function(){var e=N(281);return e.transformFlags|=2,e},createJsxJsxClosingFragment:function(){var e=N(282);return e.transformFlags|=2,e},updateJsxFragment:function(e,t,r,n){return e.openingFragment!==t||e.children!==r||e.closingFragment!==n?m(En(t,r,n),e):e},createJsxAttribute:Cn,updateJsxAttribute:function(e,t,r){return e.name!==t||e.initializer!==r?m(Cn(t,r),e):e},createJsxAttributes:An,updateJsxAttributes:function(e,t){return e.properties!==t?m(An(t),e):e},createJsxSpreadAttribute:Nn,updateJsxSpreadAttribute:function(e,t){return e.expression!==t?m(Nn(t),e):e},createJsxExpression:Pn,updateJsxExpression:function(e,t){return e.expression!==t?m(Pn(e.dotDotDotToken,t),e):e},createCaseClause:In,updateCaseClause:function(e,t,r){return e.expression!==t||e.statements!==r?m(In(t,r),e):e},createDefaultClause:Fn,updateDefaultClause:function(e,t){return e.statements!==t?m(Fn(t),e):e},createHeritageClause:On,updateHeritageClause:function(e,t){return e.types!==t?m(On(e.token,t),e):e},createCatchClause:Rn,updateCatchClause:function(e,t,r){return e.variableDeclaration!==t||e.block!==r?m(Rn(t,r),e):e},createPropertyAssignment:Mn,updatePropertyAssignment:function(e,t,r){return e.name!==t||e.initializer!==r?function(e,t){t.decorators&&(e.decorators=t.decorators);t.modifiers&&(e.modifiers=t.modifiers);t.questionToken&&(e.questionToken=t.questionToken);t.exclamationToken&&(e.exclamationToken=t.exclamationToken);return m(e,t)}(Mn(t,r),e):e},createShorthandPropertyAssignment:Ln,updateShorthandPropertyAssignment:function(e,t,r){return e.name!==t||e.objectAssignmentInitializer!==r?function(e,t){t.decorators&&(e.decorators=t.decorators);t.modifiers&&(e.modifiers=t.modifiers);t.equalsToken&&(e.equalsToken=t.equalsToken);t.questionToken&&(e.questionToken=t.questionToken);t.exclamationToken&&(e.exclamationToken=t.exclamationToken);return m(e,t)}(Ln(t,r),e):e},createSpreadAssignment:jn,updateSpreadAssignment:function(e,t){return e.expression!==t?m(jn(t),e):e},createEnumMember:Bn,updateEnumMember:function(e,t,r){return e.name!==t||e.initializer!==r?m(Bn(t,r),e):e},createSourceFile:function(e,t,r){var n=f.createBaseSourceFileNode(300);return n.statements=A(e),n.endOfFileToken=t,n.flags|=r,n.fileName="",n.text="",n.languageVersion=0,n.languageVariant=0,n.scriptKind=0,n.isDeclarationFile=!1,n.hasNoDefaultLib=!1,n.transformFlags|=d(n.statements)|u(n.endOfFileToken),n},updateSourceFile:function(t,r,n,i,a,o,s){void 0===n&&(n=t.isDeclarationFile);void 0===i&&(i=t.referencedFiles);void 0===a&&(a=t.typeReferenceDirectives);void 0===o&&(o=t.hasNoDefaultLib);void 0===s&&(s=t.libReferenceDirectives);return t.statements!==r||t.isDeclarationFile!==n||t.referencedFiles!==i||t.typeReferenceDirectives!==a||t.hasNoDefaultLib!==o||t.libReferenceDirectives!==s?m(function(t,r,n,i,a,o,s){var c=t.redirectInfo?Object.create(t.redirectInfo.redirectTarget):f.createBaseSourceFileNode(300);for(var l in t)"emitNode"!==l&&!e.hasProperty(c,l)&&e.hasProperty(t,l)&&(c[l]=t[l]);return c.flags|=t.flags,c.statements=A(r),c.endOfFileToken=t.endOfFileToken,c.isDeclarationFile=n,c.referencedFiles=i,c.typeReferenceDirectives=a,c.hasNoDefaultLib=o,c.libReferenceDirectives=s,c.transformFlags=d(c.statements)|u(c.endOfFileToken),c}(t,r,n,i,a,o,s),t):t},createBundle:zn,updateBundle:function(t,r,n){void 0===n&&(n=e.emptyArray);return t.sourceFiles!==r||t.prepends!==n?m(zn(r,n),t):t},createUnparsedSource:function(t,r,n){var i=N(302);return i.prologues=t,i.syntheticReferences=r,i.texts=n,i.fileName="",i.text="",i.referencedFiles=e.emptyArray,i.libReferenceDirectives=e.emptyArray,i.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(i,t)},i},createUnparsedPrologue:function(e){return Un(295,e)},createUnparsedPrepend:function(e,t){var r=Un(296,e);return r.texts=t,r},createUnparsedTextLike:function(e,t){return Un(t?298:297,e)},createUnparsedSyntheticReference:function(e){var t=N(299);return t.data=e.data,t.section=e,t},createInputFiles:function(){var e=N(303);return e.javascriptText="",e.declarationText="",e},createSyntheticExpression:function(e,t,r){void 0===t&&(t=!1);var n=N(229);return n.type=e,n.isSpread=t,n.tupleNameSource=r,n},createSyntaxList:function(e){var t=N(337);return t._children=e,t},createNotEmittedStatement:function(t){var r=N(338);return r.original=t,e.setTextRange(r,t),r},createPartiallyEmittedExpression:qn,updatePartiallyEmittedExpression:Jn,createCommaListExpression:Hn,updateCommaListExpression:function(e,t){return e.elements!==t?m(Hn(t),e):e},createEndOfDeclarationMarker:function(e){var t=N(342);return t.emitNode={},t.original=e,t},createMergeDeclarationMarker:function(e){var t=N(341);return t.emitNode={},t.original=e,t},createSyntheticReferenceExpression:Kn,updateSyntheticReferenceExpression:function(e,t,r){return e.expression!==t||e.thisArg!==r?m(Kn(t,r),e):e},cloneNode:Wn,get createComma(){return h(27)},get createAssignment(){return h(62)},get createLogicalOr(){return h(56)},get createLogicalAnd(){return h(55)},get createBitwiseOr(){return h(51)},get createBitwiseXor(){return h(52)},get createBitwiseAnd(){return h(50)},get createStrictEquality(){return h(36)},get createStrictInequality(){return h(37)},get createEquality(){return h(34)},get createInequality(){return h(35)},get createLessThan(){return h(29)},get createLessThanEquals(){return h(32)},get createGreaterThan(){return h(31)},get createGreaterThanEquals(){return h(33)},get createLeftShift(){return h(47)},get createRightShift(){return h(48)},get createUnsignedRightShift(){return h(49)},get createAdd(){return h(39)},get createSubtract(){return h(40)},get createMultiply(){return h(41)},get createDivide(){return h(43)},get createModulo(){return h(44)},get createExponent(){return h(42)},get createPrefixPlus(){return v(39)},get createPrefixMinus(){return v(40)},get createPrefixIncrement(){return v(45)},get createPrefixDecrement(){return v(46)},get createBitwiseNot(){return v(54)},get createLogicalNot(){return v(53)},get createPostfixIncrement(){return b(45)},get createPostfixDecrement(){return b(46)},createImmediatelyInvokedFunctionExpression:function(e,t,r){return gt(wt(void 0,void 0,void 0,void 0,t?[t]:[],void 0,er(e,!0)),void 0,r?[r]:[])},createImmediatelyInvokedArrowFunction:function(e,t,r){return gt(Tt(void 0,void 0,t?[t]:[],void 0,void 0,er(e,!0)),void 0,r?[r]:[])},createVoidZero:Gn,createExportDefault:function(e){return Gr(void 0,void 0,!1,e)},createExternalModuleExport:function(e){return Yr(void 0,void 0,!1,Qr([Zr(void 0,e)]))},createTypeCheck:function(e,t){return"undefined"===t?C.createStrictEquality(e,Gn()):C.createStrictEquality(Nt(e),K(t))},createMethodCall:$n,createGlobalMethodCall:Yn,createFunctionBindCall:function(e,t,r){return $n(e,"bind",i([t],r))},createFunctionCallCall:function(e,t,r){return $n(e,"call",i([t],r))},createFunctionApplyCall:function(e,t,r){return $n(e,"apply",[t,r])},createArraySliceCall:function(e,t){return $n(e,"slice",void 0===t?[]:[ci(t)])},createArrayConcatCall:function(e,t){return $n(e,"concat",t)},createObjectDefinePropertyCall:function(e,t,r){return Yn("Object","defineProperty",[e,ci(t),r])},createPropertyDescriptor:function(t,r){var n=[];Xn(n,"enumerable",ci(t.enumerable)),Xn(n,"configurable",ci(t.configurable));var i=Xn(n,"writable",ci(t.writable));i=Xn(n,"value",t.value)||i;var a=Xn(n,"get",t.get);return a=Xn(n,"set",t.set)||a,e.Debug.assert(!(i&&a),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),ct(n,!r)},createCallBinding:function(t,r,n,i){void 0===i&&(i=!1);var a,o,s=e.skipOuterExpressions(t,15);e.isSuperProperty(s)?(a=te(),o=s):e.isSuperKeyword(s)?(a=te(),o=void 0!==n&&n<2?e.setTextRange(Y("_super"),s):s):4096&e.getEmitFlags(s)?(a=Gn(),o=g().parenthesizeLeftSideOfAccess(s)):e.isPropertyAccessExpression(s)?Qn(s.expression,i)?(a=X(r),o=lt(e.setTextRange(C.createAssignment(a,s.expression),s.expression),s.name),e.setTextRange(o,s)):(a=s.expression,o=s):e.isElementAccessExpression(s)?Qn(s.expression,i)?(a=X(r),o=pt(e.setTextRange(C.createAssignment(a,s.expression),s.expression),s.argumentExpression),e.setTextRange(o,s)):(a=s.expression,o=s):(a=Gn(),o=g().parenthesizeLeftSideOfAccess(t));return{target:o,thisArg:a}},inlineExpressions:function(t){return t.length>10?Hn(t):e.reduceLeft(t,C.createComma)},getInternalName:function(e,t,r){return Zn(e,t,r,49152)},getLocalName:function(e,t,r){return Zn(e,t,r,16384)},getExportName:ei,getDeclarationName:function(e,t,r){return Zn(e,t,r)},getNamespaceMemberName:ti,getExternalModuleOrNamespaceExportName:function(t,r,n,i){if(t&&e.hasSyntacticModifier(r,1))return ti(t,Zn(r),n,i);return ei(r,n,i)},restoreOuterExpressions:function t(r,n,i){void 0===i&&(i=15);if(r&&e.isOuterExpression(r,i)&&(a=r,!(e.isParenthesizedExpression(a)&&e.nodeIsSynthesized(a)&&e.nodeIsSynthesized(e.getSourceMapRange(a))&&e.nodeIsSynthesized(e.getCommentRange(a)))||e.some(e.getSyntheticLeadingComments(a))||e.some(e.getSyntheticTrailingComments(a))))return function(e,t){switch(e.kind){case 208:return St(e,t);case 207:return kt(e,e.type,t);case 226:return Wt(e,t,e.type);case 227:return $t(e,t);case 339:return Jn(e,t)}}(r,t(r.expression,n));var a;return n},restoreEnclosingLabel:function t(r,n,i){if(!n)return r;var a=hr(n,n.label,e.isLabeledStatement(n.statement)?t(r,n.statement):r);i&&i(n);return a},createUseStrictPrologue:ri,copyPrologue:function(e,t,r,n){var i=ni(e,t,r);return ii(e,t,i,n)},copyStandardPrologue:ni,copyCustomPrologue:ii,ensureUseStrict:function(t){if(!e.findUseStrictPrologue(t))return e.setTextRange(A(i([ri()],t)),t);return t},liftToBlock:function(t){return e.Debug.assert(e.every(t,e.isStatementOrBlock),"Cannot lift nodes to a Block."),e.singleOrUndefined(t)||er(t)},mergeLexicalEnvironment:function(t,r){if(!e.some(r))return t;var n=ai(t,e.isPrologueDirective,0),a=ai(t,e.isHoistedFunction,n),o=ai(t,e.isHoistedVariableStatement,a),s=ai(r,e.isPrologueDirective,0),c=ai(r,e.isHoistedFunction,s),l=ai(r,e.isHoistedVariableStatement,c),u=ai(r,e.isCustomPrologue,l);e.Debug.assert(u===r.length,"Expected declarations to be valid standard or custom prologues");var d=e.isNodeArray(t)?t.slice():t;u>l&&d.splice.apply(d,i([o,0],r.slice(l,u)));l>c&&d.splice.apply(d,i([a,0],r.slice(c,l)));c>s&&d.splice.apply(d,i([n,0],r.slice(s,c)));if(s>0)if(0===n)d.splice.apply(d,i([0,0],r.slice(0,s)));else{for(var p=new e.Map,f=0;f<n;f++){var m=t[f];p.set(m.expression.text,!0)}for(f=s-1;f>=0;f--){var g=r[f];p.has(g.expression.text)||d.unshift(g)}}if(e.isNodeArray(t))return e.setTextRange(A(d,t.hasTrailingComma),t);return t},updateModifiers:function(t,r){var n;"number"==typeof r&&(r=ae(r));return e.isParameter(t)?ue(t,t.decorators,r,t.dotDotDotToken,t.name,t.questionToken,t.type,t.initializer):e.isPropertySignature(t)?fe(t,r,t.name,t.questionToken,t.type):e.isPropertyDeclaration(t)?ge(t,t.decorators,r,t.name,null!==(n=t.questionToken)&&void 0!==n?n:t.exclamationToken,t.type,t.initializer):e.isMethodSignature(t)?he(t,r,t.name,t.questionToken,t.typeParameters,t.parameters,t.type):e.isMethodDeclaration(t)?ve(t,t.decorators,r,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,t.body):e.isConstructorDeclaration(t)?ke(t,t.decorators,r,t.parameters,t.body):e.isGetAccessorDeclaration(t)?Se(t,t.decorators,r,t.name,t.parameters,t.type,t.body):e.isSetAccessorDeclaration(t)?De(t,t.decorators,r,t.name,t.parameters,t.body):e.isIndexSignatureDeclaration(t)?Ae(t,t.decorators,r,t.parameters,t.type):e.isFunctionExpression(t)?Dt(t,r,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body):e.isArrowFunction(t)?Ct(t,r,t.typeParameters,t.parameters,t.type,t.equalsGreaterThanToken,t.body):e.isClassExpression(t)?Vt(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isVariableStatement(t)?rr(t,r,t.declarationList):e.isFunctionDeclaration(t)?Sr(t,t.decorators,r,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body):e.isClassDeclaration(t)?Dr(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isStructDeclaration(t)?Tr(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isInterfaceDeclaration(t)?Ar(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isTypeAliasDeclaration(t)?Pr(t,t.decorators,r,t.name,t.typeParameters,t.type):e.isEnumDeclaration(t)?Fr(t,t.decorators,r,t.name,t.members):e.isModuleDeclaration(t)?Rr(t,t.decorators,r,t.name,t.body):e.isImportEqualsDeclaration(t)?zr(t,t.decorators,r,t.isTypeOnly,t.name,t.moduleReference):e.isImportDeclaration(t)?qr(t,t.decorators,r,t.importClause,t.moduleSpecifier):e.isExportAssignment(t)?$r(t,t.decorators,r,t.expression):e.isExportDeclaration(t)?Xr(t,t.decorators,r,t.isTypeOnly,t.exportClause,t.moduleSpecifier):e.Debug.assertNever(t)}};return C;function A(t,r){if(void 0===t||t===e.emptyArray)t=[];else if(e.isNodeArray(t))return void 0===t.transformFlags&&p(t),e.Debug.attachNodeArrayDebugInfo(t),t;var n=t.length,i=n>=1&&n<=4?t.slice():t;return e.setTextRangePosEnd(i,-1,-1),i.hasTrailingComma=!!r,p(i),e.Debug.attachNodeArrayDebugInfo(i),i}function N(e){return f.createBaseNode(e)}function P(e,t,r){var n=N(e);return n.decorators=oi(t),n.modifiers=oi(r),n.transformFlags|=d(n.decorators)|d(n.modifiers),n.symbol=void 0,n.localSymbol=void 0,n.locals=void 0,n.nextContainer=void 0,n}function I(t,r,n,i){var a=P(t,r,n);if(i=si(i),a.name=i,i)switch(a.kind){case 166:case 168:case 169:case 164:case 291:if(e.isIdentifier(i)){a.transformFlags|=l(i);break}default:a.transformFlags|=u(i)}return a}function F(e,t,r,n,i){var a=I(e,t,r,n);return a.typeParameters=oi(i),a.transformFlags|=d(a.typeParameters),i&&(a.transformFlags|=1),a}function O(e,t,r,n,i,a,o){var s=F(e,t,r,n,i);return s.parameters=A(a),s.type=o,s.transformFlags|=d(s.parameters)|u(s.type),o&&(s.transformFlags|=1),s}function R(e,t){return t.typeArguments&&(e.typeArguments=t.typeArguments),m(e,t)}function M(e,t,r,n,i,a,o,s){var c=O(e,t,r,n,i,a,o);return c.body=s,c.transformFlags|=-8388609&u(c.body),s||(c.transformFlags|=1),c}function L(e,t){return t.exclamationToken&&(e.exclamationToken=t.exclamationToken),t.typeArguments&&(e.typeArguments=t.typeArguments),R(e,t)}function j(e,t,r,n,i,a){var o=F(e,t,r,n,i);return o.heritageClauses=oi(a),o.transformFlags|=d(o.heritageClauses),o}function B(e,t,r,n,i,a,o){var s=j(e,t,r,n,i,a);return s.members=A(o),s.transformFlags|=d(s.members),s}function z(e,t,r,n,i){var a=I(e,t,r,n);return a.initializer=i,a.transformFlags|=u(a.initializer),a}function U(e,t,r,n,i,a){var o=z(e,t,r,n,a);return o.type=i,o.transformFlags|=u(i),i&&(o.transformFlags|=1),o}function q(e,t){var r=Z(e);return r.text=t,r}function J(e,t){void 0===t&&(t=0);var r=q(8,"number"==typeof e?e+"":e);return r.numericLiteralFlags=t,384&t&&(r.transformFlags|=256),r}function V(t){var r=q(9,"string"==typeof t?t:e.pseudoBigIntToString(t)+"n");return r.transformFlags|=4,r}function H(e,t){var r=q(10,e);return r.singleQuote=t,r}function K(e,t,r){var n=H(e,t);return n.hasExtendedUnicodeEscape=r,r&&(n.transformFlags|=256),n}function W(e){return q(13,e)}function G(t,r){void 0===r&&t&&(r=e.stringToToken(t)),78===r&&(r=void 0);var n=f.createBaseIdentifierNode(78);return n.originalKeywordKind=r,n.escapedText=e.escapeLeadingUnderscores(t),n}function $(e,t){var n=G(e,void 0);return n.autoGenerateFlags=t,n.autoGenerateId=r,r++,n}function Y(e,t,r){var n=G(e,r);return t&&(n.typeArguments=A(t)),131===n.originalKeywordKind&&(n.transformFlags|=8388608),n}function X(e,t){var r=1;t&&(r|=8);var n=$("",r);return e&&e(n),n}function Q(t,r){void 0===r&&(r=0),e.Debug.assert(!(7&r),"Argument out of range: flags");var n=$(t&&e.isIdentifier(t)?e.idText(t):"",4|r);return n.original=t,n}function Z(e){return f.createBaseTokenNode(e)}function ee(t){e.Debug.assert(t>=0&&t<=157,"Invalid token"),e.Debug.assert(t<=14||t>=17,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),e.Debug.assert(t<=8||t>=14,"Invalid token. Use 'createLiteralLikeNode' to create literals."),e.Debug.assert(78!==t,"Invalid token. Use 'createIdentifier' to create identifiers");var r=Z(t),n=0;switch(t){case 130:n=96;break;case 123:case 121:case 122:case 143:case 126:case 134:case 85:case 129:case 145:case 156:case 142:case 146:case 148:case 132:case 149:case 114:case 153:case 151:n=1;break;case 124:case 106:n=256;break;case 108:n=4096}return n&&(r.transformFlags|=n),r}function te(){return ee(108)}function re(){return ee(110)}function ne(){return ee(95)}function ie(e){return ee(e)}function ae(e){var t=[];return 1&e&&t.push(ie(93)),2&e&&t.push(ie(134)),512&e&&t.push(ie(88)),2048&e&&t.push(ie(85)),4&e&&t.push(ie(123)),8&e&&t.push(ie(121)),16&e&&t.push(ie(122)),128&e&&t.push(ie(126)),32&e&&t.push(ie(124)),64&e&&t.push(ie(143)),256&e&&t.push(ie(130)),t}function oe(e,t){var r=N(158);return r.left=e,r.right=si(t),r.transformFlags|=u(r.left)|l(r.right),r}function se(e){var t=N(159);return t.expression=g().parenthesizeExpressionOfComputedPropertyName(e),t.transformFlags|=33024|u(t.expression),t}function ce(e,t,r){var n=I(160,void 0,void 0,e);return n.constraint=t,n.default=r,n.transformFlags=1,n}function le(t,r,n,i,a,o,s){var c=U(161,t,r,i,o,s&&g().parenthesizeExpressionForDisallowedComma(s));return c.dotDotDotToken=n,c.questionToken=a,e.isThisIdentifier(c.name)?c.transformFlags=1:(c.transformFlags|=u(c.dotDotDotToken)|u(c.questionToken),a&&(c.transformFlags|=1),92&e.modifiersToFlags(c.modifiers)&&(c.transformFlags|=2048),(s||n)&&(c.transformFlags|=256)),c}function ue(e,t,r,n,i,a,o,s){return e.decorators!==t||e.modifiers!==r||e.dotDotDotToken!==n||e.name!==i||e.questionToken!==a||e.type!==o||e.initializer!==s?m(le(t,r,n,i,a,o,s),e):e}function de(e){var t=N(162);return t.expression=g().parenthesizeLeftSideOfAccess(e),t.transformFlags|=2049|u(t.expression),t}function pe(e,t,r,n){var i=I(163,void 0,e,t);return i.type=n,i.questionToken=r,i.transformFlags=1,i}function fe(e,t,r,n,i){return e.modifiers!==t||e.name!==r||e.questionToken!==n||e.type!==i?m(pe(t,r,n,i),e):e}function me(t,r,n,i,a,o){var s=U(164,t,r,n,a,o);return s.questionToken=i&&e.isQuestionToken(i)?i:void 0,s.exclamationToken=i&&e.isExclamationToken(i)?i:void 0,s.transformFlags|=u(s.questionToken)|u(s.exclamationToken)|4194304,(e.isComputedPropertyName(s.name)||e.hasStaticModifier(s)&&s.initializer)&&(s.transformFlags|=2048),(i||2&e.modifiersToFlags(s.modifiers))&&(s.transformFlags|=1),s}function ge(t,r,n,i,a,o,s){return t.decorators!==r||t.modifiers!==n||t.name!==i||t.questionToken!==(void 0!==a&&e.isQuestionToken(a)?a:void 0)||t.exclamationToken!==(void 0!==a&&e.isExclamationToken(a)?a:void 0)||t.type!==o||t.initializer!==s?m(me(r,n,i,a,o,s),t):t}function _e(e,t,r,n,i,a){var o=O(165,void 0,e,t,n,i,a);return o.questionToken=r,o.transformFlags=1,o}function he(e,t,r,n,i,a,o){return e.modifiers!==t||e.name!==r||e.questionToken!==n||e.typeParameters!==i||e.parameters!==a||e.type!==o?R(_e(t,r,n,i,a,o),e):e}function ye(t,r,n,i,a,o,s,c,l){var d=M(166,t,r,i,o,s,c,l);return d.asteriskToken=n,d.questionToken=a,d.transformFlags|=u(d.asteriskToken)|u(d.questionToken)|256,a&&(d.transformFlags|=1),256&e.modifiersToFlags(d.modifiers)?d.transformFlags|=n?32:64:n&&(d.transformFlags|=512),d}function ve(e,t,r,n,i,a,o,s,c,l){return e.decorators!==t||e.modifiers!==r||e.asteriskToken!==n||e.name!==i||e.questionToken!==a||e.typeParameters!==o||e.parameters!==s||e.type!==c||e.body!==l?L(ye(t,r,n,i,a,o,s,c,l),e):e}function be(e,t,r,n){var i=M(167,e,t,void 0,void 0,r,void 0,n);return i.transformFlags|=256,i}function ke(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.parameters!==n||e.body!==i?L(be(t,r,n,i),e):e}function xe(e,t,r,n,i,a){return M(168,e,t,r,void 0,n,i,a)}function Se(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.parameters!==i||e.type!==a||e.body!==o?L(xe(t,r,n,i,a,o),e):e}function we(e,t,r,n,i){return M(169,e,t,r,void 0,n,void 0,i)}function De(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.parameters!==i||e.body!==a?L(we(t,r,n,i,a),e):e}function Ee(e,t,r){var n=O(170,void 0,void 0,void 0,e,t,r);return n.transformFlags=1,n}function Te(e,t,r){var n=O(171,void 0,void 0,void 0,e,t,r);return n.transformFlags=1,n}function Ce(e,t,r,n){var i=O(172,e,t,void 0,void 0,r,n);return i.transformFlags=1,i}function Ae(e,t,r,n,i){return e.parameters!==n||e.type!==i||e.decorators!==t||e.modifiers!==r?R(Ce(t,r,n,i),e):e}function Ne(e,t){var r=N(195);return r.type=e,r.literal=t,r.transformFlags=1,r}function Pe(e,t,r){var n=N(173);return n.assertsModifier=e,n.parameterName=si(t),n.type=r,n.transformFlags=1,n}function Ie(e,t){var r=N(174);return r.typeName=si(e),r.typeArguments=t&&g().parenthesizeTypeArguments(A(t)),r.transformFlags=1,r}function Fe(e,t,r){var n=O(175,void 0,void 0,void 0,e,t,r);return n.transformFlags=1,n}function Oe(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return 4===t.length?Re.apply(void 0,t):3===t.length?Me.apply(void 0,t):e.Debug.fail("Incorrect number of arguments specified.")}function Re(e,t,r,n){var i=O(176,void 0,e,void 0,t,r,n);return i.transformFlags=1,i}function Me(e,t,r){return Re(void 0,e,t,r)}function Le(e,t,r,n,i){return e.modifiers!==t||e.typeParameters!==r||e.parameters!==n||e.type!==i?R(Oe(t,r,n,i),e):e}function je(e,t,r,n){return Le(e,e.modifiers,t,r,n)}function Be(e){var t=N(177);return t.exprName=e,t.transformFlags=1,t}function ze(e){var t=N(178);return t.members=A(e),t.transformFlags=1,t}function Ue(e){var t=N(179);return t.elementType=g().parenthesizeElementTypeOfArrayType(e),t.transformFlags=1,t}function qe(e){var t=N(180);return t.elements=A(e),t.transformFlags=1,t}function Je(e,t,r,n){var i=N(193);return i.dotDotDotToken=e,i.name=t,i.questionToken=r,i.type=n,i.transformFlags=1,i}function Ve(e){var t=N(181);return t.type=g().parenthesizeElementTypeOfArrayType(e),t.transformFlags=1,t}function He(e){var t=N(182);return t.type=e,t.transformFlags=1,t}function Ke(e,t){var r=N(e);return r.types=g().parenthesizeConstituentTypesOfUnionOrIntersectionType(t),r.transformFlags=1,r}function We(e,t){return e.types!==t?m(Ke(e.kind,t),e):e}function Ge(e,t,r,n){var i=N(185);return i.checkType=g().parenthesizeMemberOfConditionalType(e),i.extendsType=g().parenthesizeMemberOfConditionalType(t),i.trueType=r,i.falseType=n,i.transformFlags=1,i}function $e(e){var t=N(186);return t.typeParameter=e,t.transformFlags=1,t}function Ye(e,t){var r=N(194);return r.head=e,r.templateSpans=A(t),r.transformFlags=1,r}function Xe(e,t,r,n){void 0===n&&(n=!1);var i=N(196);return i.argument=e,i.qualifier=t,i.typeArguments=r&&g().parenthesizeTypeArguments(r),i.isTypeOf=n,i.transformFlags=1,i}function Qe(e){var t=N(187);return t.type=e,t.transformFlags=1,t}function Ze(e,t){var r=N(189);return r.operator=e,r.type=g().parenthesizeMemberOfElementType(t),r.transformFlags=1,r}function et(e,t){var r=N(190);return r.objectType=g().parenthesizeMemberOfElementType(e),r.indexType=t,r.transformFlags=1,r}function tt(e,t,r,n,i){var a=N(191);return a.readonlyToken=e,a.typeParameter=t,a.nameType=r,a.questionToken=n,a.type=i,a.transformFlags=1,a}function rt(e){var t=N(192);return t.literal=e,t.transformFlags=1,t}function nt(e){var t=N(197);return t.elements=A(e),t.transformFlags|=131328|d(t.elements),8192&t.transformFlags&&(t.transformFlags|=16416),t}function it(e){var t=N(198);return t.elements=A(e),t.transformFlags|=131328|d(t.elements),t}function at(t,r,n,i){var a=z(199,void 0,void 0,n,i);return a.propertyName=si(r),a.dotDotDotToken=t,a.transformFlags|=256|u(a.dotDotDotToken),a.propertyName&&(a.transformFlags|=e.isIdentifier(a.propertyName)?l(a.propertyName):u(a.propertyName)),t&&(a.transformFlags|=8192),a}function ot(e){return N(e)}function st(e,t){var r=ot(200);return r.elements=g().parenthesizeExpressionsOfCommaDelimitedList(A(e)),r.multiLine=t,r.transformFlags|=d(r.elements),r}function ct(e,t){var r=ot(201);return r.properties=A(e),r.multiLine=t,r.transformFlags|=d(r.properties),r}function lt(t,r){var n=ot(202);return n.expression=g().parenthesizeLeftSideOfAccess(t),n.name=si(r),n.transformFlags=u(n.expression)|(e.isIdentifier(n.name)?l(n.name):u(n.name)),e.isSuperKeyword(t)&&(n.transformFlags|=96),n}function ut(t,r,n){var i=ot(202);return i.flags|=32,i.expression=g().parenthesizeLeftSideOfAccess(t),i.questionDotToken=r,i.name=si(n),i.transformFlags|=8|u(i.expression)|u(i.questionDotToken)|(e.isIdentifier(i.name)?l(i.name):u(i.name)),i}function dt(t,r,n,i){return e.Debug.assert(!!(32&t.flags),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),t.expression!==r||t.questionDotToken!==n||t.name!==i?m(ut(r,n,i),t):t}function pt(t,r){var n=ot(203);return n.expression=g().parenthesizeLeftSideOfAccess(t),n.argumentExpression=ci(r),n.transformFlags|=u(n.expression)|u(n.argumentExpression),e.isSuperKeyword(t)&&(n.transformFlags|=96),n}function ft(e,t,r){var n=ot(203);return n.flags|=32,n.expression=g().parenthesizeLeftSideOfAccess(e),n.questionDotToken=t,n.argumentExpression=ci(r),n.transformFlags|=u(n.expression)|u(n.questionDotToken)|u(n.argumentExpression)|8,n}function mt(t,r,n,i){return e.Debug.assert(!!(32&t.flags),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),t.expression!==r||t.questionDotToken!==n||t.argumentExpression!==i?m(ft(r,n,i),t):t}function gt(t,r,n){var i=ot(204);return i.expression=g().parenthesizeLeftSideOfAccess(t),i.typeArguments=oi(r),i.arguments=g().parenthesizeExpressionsOfCommaDelimitedList(A(n)),i.transformFlags|=u(i.expression)|d(i.typeArguments)|d(i.arguments),i.typeArguments&&(i.transformFlags|=1),e.isImportKeyword(i.expression)?i.transformFlags|=2097152:e.isSuperProperty(i.expression)&&(i.transformFlags|=4096),i}function _t(t,r,n,i){var a=ot(204);return a.flags|=32,a.expression=g().parenthesizeLeftSideOfAccess(t),a.questionDotToken=r,a.typeArguments=oi(n),a.arguments=g().parenthesizeExpressionsOfCommaDelimitedList(A(i)),a.transformFlags|=u(a.expression)|u(a.questionDotToken)|d(a.typeArguments)|d(a.arguments)|8,a.typeArguments&&(a.transformFlags|=1),e.isSuperProperty(a.expression)&&(a.transformFlags|=4096),a}function ht(t,r,n,i,a){return e.Debug.assert(!!(32&t.flags),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),t.expression!==r||t.questionDotToken!==n||t.typeArguments!==i||t.arguments!==a?m(_t(r,n,i,a),t):t}function yt(e,t,r){var n=ot(205);return n.expression=g().parenthesizeExpressionOfNew(e),n.typeArguments=oi(t),n.arguments=r?g().parenthesizeExpressionsOfCommaDelimitedList(r):void 0,n.transformFlags|=u(n.expression)|d(n.typeArguments)|d(n.arguments)|8,n.typeArguments&&(n.transformFlags|=1),n}function vt(t,r,n){var i=ot(206);return i.tag=g().parenthesizeLeftSideOfAccess(t),i.typeArguments=oi(r),i.template=n,i.transformFlags|=u(i.tag)|d(i.typeArguments)|u(i.template)|256,i.typeArguments&&(i.transformFlags|=1),e.hasInvalidEscape(i.template)&&(i.transformFlags|=32),i}function bt(e,t){var r=ot(207);return r.expression=g().parenthesizeOperandOfPrefixUnary(t),r.type=e,r.transformFlags|=u(r.expression)|u(r.type)|1,r}function kt(e,t,r){return e.type!==t||e.expression!==r?m(bt(t,r),e):e}function xt(e){var t=ot(208);return t.expression=e,t.transformFlags=u(t.expression),t}function St(e,t){return e.expression!==t?m(xt(t),e):e}function wt(t,r,n,i,a,o,s){var c=M(209,void 0,t,n,i,a,o,s);return c.asteriskToken=r,c.transformFlags|=u(c.asteriskToken),c.typeParameters&&(c.transformFlags|=1),256&e.modifiersToFlags(c.modifiers)?c.asteriskToken?c.transformFlags|=32:c.transformFlags|=64:c.asteriskToken&&(c.transformFlags|=512),c}function Dt(e,t,r,n,i,a,o,s){return e.name!==n||e.modifiers!==t||e.asteriskToken!==r||e.typeParameters!==i||e.parameters!==a||e.type!==o||e.body!==s?L(wt(t,r,n,i,a,o,s),e):e}function Et(e,t,r){var n=ot(211);return n.expression=g().parenthesizeLeftSideOfAccess(e),n.arguments=g().parenthesizeExpressionsOfCommaDelimitedList(A(t)),n.body=r,n}function Tt(t,r,n,i,a,o){var s=M(210,void 0,t,void 0,r,n,i,g().parenthesizeConciseBodyOfArrowFunction(o));return s.equalsGreaterThanToken=null!=a?a:ee(38),s.transformFlags|=256|u(s.equalsGreaterThanToken),256&e.modifiersToFlags(s.modifiers)&&(s.transformFlags|=64),s}function Ct(e,t,r,n,i,a,o){return e.modifiers!==t||e.typeParameters!==r||e.parameters!==n||e.type!==i||e.equalsGreaterThanToken!==a||e.body!==o?L(Tt(t,r,n,i,a,o),e):e}function At(e){var t=ot(212);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=u(t.expression),t}function Nt(e){var t=ot(213);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=u(t.expression),t}function Pt(e){var t=ot(214);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=u(t.expression),t}function It(e){var t=ot(215);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=524384|u(t.expression),t}function Ft(e,t){var r=ot(216);return r.operator=e,r.operand=g().parenthesizeOperandOfPrefixUnary(t),r.transformFlags|=u(r.operand),r}function Ot(e,t){var r=ot(217);return r.operator=t,r.operand=g().parenthesizeOperandOfPostfixUnary(e),r.transformFlags=u(r.operand),r}function Rt(t,r,n){var i,a=ot(218),o="number"==typeof(i=r)?ee(i):i,s=o.kind;return a.left=g().parenthesizeLeftSideOfBinary(s,t),a.operatorToken=o,a.right=g().parenthesizeRightSideOfBinary(s,a.left,n),a.transformFlags|=u(a.left)|u(a.operatorToken)|u(a.right),60===s?a.transformFlags|=8:62===s?e.isObjectLiteralExpression(a.left)?a.transformFlags|=1312|Mt(a.left):e.isArrayLiteralExpression(a.left)&&(a.transformFlags|=1280|Mt(a.left)):42===s||66===s?a.transformFlags|=128:e.isLogicalOrCoalescingAssignmentOperator(s)&&(a.transformFlags|=4),a}function Mt(t){if(16384&t.transformFlags)return 16384;if(32&t.transformFlags)for(var r=0,n=e.getElementsOfBindingOrAssignmentPattern(t);r<n.length;r++){var i=n[r],a=e.getTargetOfBindingOrAssignmentElement(i);if(a&&e.isAssignmentPattern(a)){if(16384&a.transformFlags)return 16384;if(32&a.transformFlags){var o=Mt(a);if(o)return o}}}return 0}function Lt(e,t,r,n,i){var a=ot(219);return a.condition=g().parenthesizeConditionOfConditionalExpression(e),a.questionToken=null!=t?t:ee(57),a.whenTrue=g().parenthesizeBranchOfConditionalExpression(r),a.colonToken=null!=n?n:ee(58),a.whenFalse=g().parenthesizeBranchOfConditionalExpression(i),a.transformFlags|=u(a.condition)|u(a.questionToken)|u(a.whenTrue)|u(a.colonToken)|u(a.whenFalse),a}function jt(e,t){var r=ot(220);return r.head=e,r.templateSpans=A(t),r.transformFlags|=u(r.head)|d(r.templateSpans)|256,r}function Bt(r,n,i,a){void 0===a&&(a=0),e.Debug.assert(!(-2049&a),"Unsupported template flags.");var o=void 0;if(void 0!==i&&i!==n&&(o=function(r,n){t||(t=e.createScanner(99,!1,0));switch(r){case 14:t.setText("`"+n+"`");break;case 15:t.setText("`"+n+"${");break;case 16:t.setText("}"+n+"${");break;case 17:t.setText("}"+n+"`")}var i,a=t.scan();23===a&&(a=t.reScanTemplateToken(!1));if(t.isUnterminated())return t.setText(void 0),c;switch(a){case 14:case 15:case 16:case 17:i=t.getTokenValue()}if(void 0===i||1!==t.scan())return t.setText(void 0),c;return t.setText(void 0),i}(r,i),"object"==typeof o))return e.Debug.fail("Invalid raw text");if(void 0===n){if(void 0===o)return e.Debug.fail("Arguments 'text' and 'rawText' may not both be undefined.");n=o}else void 0!==o&&e.Debug.assert(n===o,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return zt(r,n,i,a)}function zt(e,t,r,n){var i=Z(e);return i.text=t,i.rawText=r,i.templateFlags=2048&n,i.transformFlags|=256,i.templateFlags&&(i.transformFlags|=32),i}function Ut(t,r){e.Debug.assert(!t||!!r,"A `YieldExpression` with an asteriskToken must have an expression.");var n=ot(221);return n.expression=r&&g().parenthesizeExpressionForDisallowedComma(r),n.asteriskToken=t,n.transformFlags|=262432|(u(n.expression)|u(n.asteriskToken)),n}function qt(e){var t=ot(222);return t.expression=g().parenthesizeExpressionForDisallowedComma(e),t.transformFlags|=8448|u(t.expression),t}function Jt(e,t,r,n,i,a){var o=B(223,e,t,r,n,i,a);return o.transformFlags|=256,o}function Vt(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(Jt(t,r,n,i,a,o),e):e}function Ht(e,t){var r=N(225);return r.expression=g().parenthesizeLeftSideOfAccess(e),r.typeArguments=t&&g().parenthesizeTypeArguments(t),r.transformFlags|=u(r.expression)|d(r.typeArguments)|256,r}function Kt(e,t){var r=ot(226);return r.expression=e,r.type=t,r.transformFlags|=u(r.expression)|u(r.type)|1,r}function Wt(e,t,r){return e.expression!==t||e.type!==r?m(Kt(t,r),e):e}function Gt(e){var t=ot(227);return t.expression=g().parenthesizeLeftSideOfAccess(e),t.transformFlags|=1|u(t.expression),t}function $t(t,r){return e.isNonNullChain(t)?Xt(t,r):t.expression!==r?m(Gt(r),t):t}function Yt(e){var t=ot(227);return t.flags|=32,t.expression=g().parenthesizeLeftSideOfAccess(e),t.transformFlags|=1|u(t.expression),t}function Xt(t,r){return e.Debug.assert(!!(32&t.flags),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),t.expression!==r?m(Yt(r),t):t}function Qt(t,r){var n=ot(228);switch(n.keywordToken=t,n.name=r,n.transformFlags|=u(n.name),t){case 103:n.transformFlags|=256;break;case 100:n.transformFlags|=4;break;default:return e.Debug.assertNever(t)}return n}function Zt(e,t){var r=N(230);return r.expression=e,r.literal=t,r.transformFlags|=u(r.expression)|u(r.literal)|256,r}function er(e,t){var r=N(232);return r.statements=A(e),r.multiLine=t,r.transformFlags|=d(r.statements),r}function tr(t,r){var n=P(234,void 0,t);return n.declarationList=e.isArray(r)?kr(r):r,n.transformFlags|=u(n.declarationList),2&e.modifiersToFlags(n.modifiers)&&(n.transformFlags=1),n}function rr(e,t,r){return e.modifiers!==t||e.declarationList!==r?m(tr(t,r),e):e}function nr(){return N(233)}function ir(e){var t=N(235);return t.expression=g().parenthesizeExpressionOfExpressionStatement(e),t.transformFlags|=u(t.expression),t}function ar(e,t,r){var n=N(236);return n.expression=e,n.thenStatement=li(t),n.elseStatement=li(r),n.transformFlags|=u(n.expression)|u(n.thenStatement)|u(n.elseStatement),n}function or(e,t){var r=N(237);return r.statement=li(e),r.expression=t,r.transformFlags|=u(r.statement)|u(r.expression),r}function sr(e,t){var r=N(238);return r.expression=e,r.statement=li(t),r.transformFlags|=u(r.expression)|u(r.statement),r}function cr(e,t,r,n){var i=N(239);return i.initializer=e,i.condition=t,i.incrementor=r,i.statement=li(n),i.transformFlags|=u(i.initializer)|u(i.condition)|u(i.incrementor)|u(i.statement),i}function lr(e,t,r){var n=N(240);return n.initializer=e,n.expression=t,n.statement=li(r),n.transformFlags|=u(n.initializer)|u(n.expression)|u(n.statement),n}function ur(e,t,r,n){var i=N(241);return i.awaitModifier=e,i.initializer=t,i.expression=g().parenthesizeExpressionForDisallowedComma(r),i.statement=li(n),i.transformFlags|=u(i.awaitModifier)|u(i.initializer)|u(i.expression)|u(i.statement)|256,e&&(i.transformFlags|=32),i}function dr(e){var t=N(242);return t.label=si(e),t.transformFlags|=1048576|u(t.label),t}function pr(e){var t=N(243);return t.label=si(e),t.transformFlags|=1048576|u(t.label),t}function fr(e){var t=N(244);return t.expression=e,t.transformFlags|=1048608|u(t.expression),t}function mr(e,t){var r=N(245);return r.expression=e,r.statement=li(t),r.transformFlags|=u(r.expression)|u(r.statement),r}function gr(e,t){var r=N(246);return r.expression=g().parenthesizeExpressionForDisallowedComma(e),r.caseBlock=t,r.transformFlags|=u(r.expression)|u(r.caseBlock),r}function _r(e,t){var r=N(247);return r.label=si(e),r.statement=li(t),r.transformFlags|=u(r.label)|u(r.statement),r}function hr(e,t,r){return e.label!==t||e.statement!==r?m(_r(t,r),e):e}function yr(e){var t=N(248);return t.expression=e,t.transformFlags|=u(t.expression),t}function vr(e,t,r){var n=N(249);return n.tryBlock=e,n.catchClause=t,n.finallyBlock=r,n.transformFlags|=u(n.tryBlock)|u(n.catchClause)|u(n.finallyBlock),n}function br(e,t,r,n){var i=U(251,void 0,void 0,e,r,n&&g().parenthesizeExpressionForDisallowedComma(n));return i.exclamationToken=t,i.transformFlags|=u(i.exclamationToken),t&&(i.transformFlags|=1),i}function kr(e,t){void 0===t&&(t=0);var r=N(252);return r.flags|=3&t,r.declarations=A(e),r.transformFlags|=1048576|d(r.declarations),3&t&&(r.transformFlags|=65792),r}function xr(t,r,n,i,a,o,s,c){var l=M(253,t,r,i,a,o,s,c);return l.asteriskToken=n,!l.body||2&e.modifiersToFlags(l.modifiers)?l.transformFlags=1:(l.transformFlags|=1048576|u(l.asteriskToken),256&e.modifiersToFlags(l.modifiers)?l.asteriskToken?l.transformFlags|=32:l.transformFlags|=64:l.asteriskToken&&(l.transformFlags|=512)),l}function Sr(e,t,r,n,i,a,o,s,c){return e.decorators!==t||e.modifiers!==r||e.asteriskToken!==n||e.name!==i||e.typeParameters!==a||e.parameters!==o||e.type!==s||e.body!==c?L(xr(t,r,n,i,a,o,s,c),e):e}function wr(t,r,n,i,a,o){var s=B(254,t,r,n,i,a,o);return 2&e.modifiersToFlags(s.modifiers)?s.transformFlags=1:(s.transformFlags|=256,2048&s.transformFlags&&(s.transformFlags|=1)),s}function Dr(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(wr(t,r,n,i,a,o),e):e}function Er(t,r,n,i,a,o){var s=B(255,t,r,n,i,a,o);return 2&e.modifiersToFlags(s.modifiers)?s.transformFlags=1:(s.transformFlags|=256,2048&s.transformFlags&&(s.transformFlags|=1)),s}function Tr(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(Er(t,r,n,i,a,o),e):e}function Cr(e,t,r,n,i,a){var o=j(256,e,t,r,n,i);return o.members=A(a),o.transformFlags=1,o}function Ar(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(Cr(t,r,n,i,a,o),e):e}function Nr(e,t,r,n,i){var a=F(257,e,t,r,n);return a.type=i,a.transformFlags=1,a}function Pr(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.type!==a?m(Nr(t,r,n,i,a),e):e}function Ir(e,t,r,n){var i=I(258,e,t,r);return i.members=A(n),i.transformFlags|=1|d(i.members),i.transformFlags&=-8388609,i}function Fr(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.members!==i?m(Ir(t,r,n,i),e):e}function Or(t,r,n,i,a){void 0===a&&(a=0);var o=P(259,t,r);return o.flags|=1044&a,o.name=n,o.body=i,2&e.modifiersToFlags(o.modifiers)?o.transformFlags=1:o.transformFlags|=u(o.name)|u(o.body)|1,o.transformFlags&=-8388609,o}function Rr(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.body!==i?m(Or(t,r,n,i,e.flags),e):e}function Mr(e){var t=N(260);return t.statements=A(e),t.transformFlags|=d(t.statements),t}function Lr(e){var t=N(261);return t.clauses=A(e),t.transformFlags|=d(t.clauses),t}function jr(e){var t=I(262,void 0,void 0,e);return t.transformFlags=1,t}function Br(t,r,n,i,a){var o=I(263,t,r,i);return o.isTypeOnly=n,o.moduleReference=a,o.transformFlags|=u(o.moduleReference),e.isExternalModuleReference(o.moduleReference)||(o.transformFlags|=1),o.transformFlags&=-8388609,o}function zr(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.isTypeOnly!==n||e.name!==i||e.moduleReference!==a?m(Br(t,r,n,i,a),e):e}function Ur(e,t,r,n){var i=P(264,e,t);return i.importClause=r,i.moduleSpecifier=n,i.transformFlags|=u(i.importClause)|u(i.moduleSpecifier),i.transformFlags&=-8388609,i}function qr(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.importClause!==n||e.moduleSpecifier!==i?m(Ur(t,r,n,i),e):e}function Jr(e,t,r){var n=N(265);return n.isTypeOnly=e,n.name=t,n.namedBindings=r,n.transformFlags|=u(n.name)|u(n.namedBindings),e&&(n.transformFlags|=1),n.transformFlags&=-8388609,n}function Vr(e){var t=N(266);return t.name=e,t.transformFlags|=u(t.name),t.transformFlags&=-8388609,t}function Hr(e){var t=N(272);return t.name=e,t.transformFlags|=4|u(t.name),t.transformFlags&=-8388609,t}function Kr(e){var t=N(267);return t.elements=A(e),t.transformFlags|=d(t.elements),t.transformFlags&=-8388609,t}function Wr(e,t){var r=N(268);return r.propertyName=e,r.name=t,r.transformFlags|=u(r.propertyName)|u(r.name),r.transformFlags&=-8388609,r}function Gr(e,t,r,n){var i=P(269,e,t);return i.isExportEquals=r,i.expression=r?g().parenthesizeRightSideOfBinary(62,void 0,n):g().parenthesizeExpressionOfExportDefault(n),i.transformFlags|=u(i.expression),i.transformFlags&=-8388609,i}function $r(e,t,r,n){return e.decorators!==t||e.modifiers!==r||e.expression!==n?m(Gr(t,r,e.isExportEquals,n),e):e}function Yr(e,t,r,n,i){var a=P(270,e,t);return a.isTypeOnly=r,a.exportClause=n,a.moduleSpecifier=i,a.transformFlags|=u(a.exportClause)|u(a.moduleSpecifier),a.transformFlags&=-8388609,a}function Xr(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.isTypeOnly!==n||e.exportClause!==i||e.moduleSpecifier!==a?m(Yr(t,r,n,i,a),e):e}function Qr(e){var t=N(271);return t.elements=A(e),t.transformFlags|=d(t.elements),t.transformFlags&=-8388609,t}function Zr(e,t){var r=N(273);return r.propertyName=si(e),r.name=si(t),r.transformFlags|=u(r.propertyName)|u(r.name),r.transformFlags&=-8388609,r}function en(e){var t=N(275);return t.expression=e,t.transformFlags|=u(t.expression),t.transformFlags&=-8388609,t}function tn(e,t){var r=N(e);return r.type=t,r}function rn(e,t){return O(311,void 0,void 0,void 0,void 0,e,t)}function nn(e,t){void 0===t&&(t=!1);var r=N(315);return r.jsDocPropertyTags=oi(e),r.isArrayType=t,r}function an(e){var t=N(304);return t.type=e,t}function on(e,t,r){var n=N(316);return n.typeParameters=oi(e),n.parameters=A(t),n.type=r,n}function sn(t){var r=s(t.kind);return t.tagName.escapedText===e.escapeLeadingUnderscores(r)?t.tagName:Y(r)}function cn(e,t,r){var n=N(e);return n.tagName=t,n.comment=r,n}function ln(e,t,r,n){var i=cn(333,null!=e?e:Y("template"),n);return i.constraint=t,i.typeParameters=A(r),i}function un(t,r,n,i){var a=cn(334,null!=t?t:Y("typedef"),i);return a.typeExpression=r,a.fullName=n,a.name=e.getJSDocTypeAliasName(n),a}function dn(e,t,r,n,i,a){var o=cn(329,null!=e?e:Y("param"),a);return o.typeExpression=n,o.name=t,o.isNameFirst=!!i,o.isBracketed=r,o}function pn(e,t,r,n,i,a){var o=cn(336,null!=e?e:Y("prop"),a);return o.typeExpression=n,o.name=t,o.isNameFirst=!!i,o.isBracketed=r,o}function fn(t,r,n,i){var a=cn(327,null!=t?t:Y("callback"),i);return a.typeExpression=r,a.fullName=n,a.name=e.getJSDocTypeAliasName(n),a}function mn(e,t,r){var n=cn(318,null!=e?e:Y("augments"),r);return n.class=t,n}function gn(e,t,r){var n=cn(319,null!=e?e:Y("implements"),r);return n.class=t,n}function _n(e,t,r){var n=cn(335,null!=e?e:Y("see"),r);return n.name=t,n}function hn(e){var t=N(305);return t.name=e,t}function yn(e,t,r){return cn(e,null!=t?t:Y(s(e)),r)}function vn(e,t,r,n){var i=cn(e,null!=t?t:Y(s(e)),n);return i.typeExpression=r,i}function bn(e,t){return cn(317,e,t)}function kn(e,t){var r=N(314);return r.comment=e,r.tags=oi(t),r}function xn(e,t,r){var n=N(276);return n.openingElement=e,n.children=A(t),n.closingElement=r,n.transformFlags|=u(n.openingElement)|d(n.children)|u(n.closingElement)|2,n}function Sn(e,t,r){var n=N(277);return n.tagName=e,n.typeArguments=oi(t),n.attributes=r,n.transformFlags|=u(n.tagName)|d(n.typeArguments)|u(n.attributes)|2,n.typeArguments&&(n.transformFlags|=1),n}function wn(e,t,r){var n=N(278);return n.tagName=e,n.typeArguments=oi(t),n.attributes=r,n.transformFlags|=u(n.tagName)|d(n.typeArguments)|u(n.attributes)|2,t&&(n.transformFlags|=1),n}function Dn(e){var t=N(279);return t.tagName=e,t.transformFlags|=2|u(t.tagName),t}function En(e,t,r){var n=N(280);return n.openingFragment=e,n.children=A(t),n.closingFragment=r,n.transformFlags|=u(n.openingFragment)|d(n.children)|u(n.closingFragment)|2,n}function Tn(e,t){var r=N(11);return r.text=e,r.containsOnlyTriviaWhiteSpaces=!!t,r.transformFlags|=2,r}function Cn(e,t){var r=N(283);return r.name=e,r.initializer=t,r.transformFlags|=u(r.name)|u(r.initializer)|2,r}function An(e){var t=N(284);return t.properties=A(e),t.transformFlags|=2|d(t.properties),t}function Nn(e){var t=N(285);return t.expression=e,t.transformFlags|=2|u(t.expression),t}function Pn(e,t){var r=N(286);return r.dotDotDotToken=e,r.expression=t,r.transformFlags|=u(r.dotDotDotToken)|u(r.expression)|2,r}function In(e,t){var r=N(287);return r.expression=g().parenthesizeExpressionForDisallowedComma(e),r.statements=A(t),r.transformFlags|=u(r.expression)|d(r.statements),r}function Fn(e){var t=N(288);return t.statements=A(e),t.transformFlags=d(t.statements),t}function On(t,r){var n=N(289);switch(n.token=t,n.types=A(r),n.transformFlags|=d(n.types),t){case 94:n.transformFlags|=256;break;case 117:n.transformFlags|=1;break;default:return e.Debug.assertNever(t)}return n}function Rn(t,r){var n=N(290);return t=e.isString(t)?br(t,void 0,void 0,void 0):t,n.variableDeclaration=t,n.block=r,n.transformFlags|=u(n.variableDeclaration)|u(n.block),t||(n.transformFlags|=16),n}function Mn(e,t){var r=I(291,void 0,void 0,e);return r.initializer=g().parenthesizeExpressionForDisallowedComma(t),r.transformFlags|=u(r.name)|u(r.initializer),r}function Ln(e,t){var r=I(292,void 0,void 0,e);return r.objectAssignmentInitializer=t&&g().parenthesizeExpressionForDisallowedComma(t),r.transformFlags|=256|u(r.objectAssignmentInitializer),r}function jn(e){var t=N(293);return t.expression=g().parenthesizeExpressionForDisallowedComma(e),t.transformFlags|=16416|u(t.expression),t}function Bn(e,t){var r=N(294);return r.name=si(e),r.initializer=t&&g().parenthesizeExpressionForDisallowedComma(t),r.transformFlags|=u(r.name)|u(r.initializer)|1,r}function zn(t,r){void 0===r&&(r=e.emptyArray);var n=N(301);return n.prepends=r,n.sourceFiles=t,n}function Un(e,t){var r=N(e);return r.data=t,r}function qn(t,r){var n=N(339);return n.expression=t,n.original=r,n.transformFlags|=1|u(n.expression),e.setTextRange(n,r),n}function Jn(e,t){return e.expression!==t?m(qn(t,e.original),e):e}function Vn(t){if(e.nodeIsSynthesized(t)&&!e.isParseTreeNode(t)&&!t.original&&!t.emitNode&&!t.id){if(e.isCommaListExpression(t))return t.elements;if(e.isBinaryExpression(t)&&e.isCommaToken(t.operatorToken))return[t.left,t.right]}return t}function Hn(t){var r=N(340);return r.elements=A(e.sameFlatMap(t,Vn)),r.transformFlags|=d(r.elements),r}function Kn(e,t){var r=N(343);return r.expression=e,r.thisArg=t,r.transformFlags|=u(r.expression)|u(r.thisArg),r}function Wn(t){if(void 0===t)return t;var r=e.isSourceFile(t)?f.createBaseSourceFileNode(300):e.isIdentifier(t)?f.createBaseIdentifierNode(78):e.isPrivateIdentifier(t)?f.createBasePrivateIdentifierNode(79):e.isNodeKind(t.kind)?f.createBaseNode(t.kind):f.createBaseTokenNode(t.kind);for(var n in r.flags|=-9&t.flags,r.transformFlags=t.transformFlags,y(r,t),t)!r.hasOwnProperty(n)&&t.hasOwnProperty(n)&&(r[n]=t[n]);return r}function Gn(){return Pt(J("0"))}function $n(e,t,r){return gt(lt(e,t),void 0,r)}function Yn(e,t,r){return $n(Y(e),t,r)}function Xn(e,t,r){return!!r&&(e.push(Mn(t,r)),!0)}function Qn(t,r){var n=e.skipParentheses(t);switch(n.kind){case 78:return r;case 108:case 8:case 9:case 10:return!1;case 200:return 0!==n.elements.length;case 201:return n.properties.length>0;default:return!0}}function Zn(t,r,n,i){void 0===i&&(i=0);var a=e.getNameOfDeclaration(t);if(a&&e.isIdentifier(a)&&!e.isGeneratedIdentifier(a)){var o=e.setParent(e.setTextRange(Wn(a),a),a.parent);return i|=e.getEmitFlags(a),n||(i|=48),r||(i|=1536),i&&e.setEmitFlags(o,i),o}return Q(t)}function ei(e,t,r){return Zn(e,t,r,8192)}function ti(t,r,n,i){var a=lt(t,e.nodeIsSynthesized(r)?r:Wn(r));e.setTextRange(a,r);var o=0;return i||(o|=48),n||(o|=1536),o&&e.setEmitFlags(a,o),a}function ri(){return e.startOnNewLine(ir(K("use strict")))}function ni(t,r,n){e.Debug.assert(0===r.length,"Prologue directives should be at the first statement in the target statements array");for(var i,a=!1,o=0,s=t.length;o<s;){var c=t[o];if(!e.isPrologueDirective(c))break;i=c,e.isStringLiteral(i.expression)&&"use strict"===i.expression.text&&(a=!0),r.push(c),o++}return n&&!a&&r.push(ri()),o}function ii(t,r,n,i,a){void 0===a&&(a=e.returnTrue);for(var o=t.length;void 0!==n&&n<o;){var s=t[n];if(!(1048576&e.getEmitFlags(s)&&a(s)))break;e.append(r,i?e.visitNode(s,i,e.isStatement):s),n++}return n}function ai(e,t,r){for(var n=r;n<e.length&&t(e[n]);)n++;return n}function oi(e){return e?A(e):void 0}function si(e){return"string"==typeof e?Y(e):e}function ci(e){return"string"==typeof e?K(e):"number"==typeof e?J(e):"boolean"==typeof e?e?re():ne():e}function li(t){return t&&e.isNotEmittedStatement(t)?e.setTextRange(y(nr(),t),t):t}}function a(t,r){return t!==r&&e.setTextRange(t,r),t}function o(t,r){return t!==r&&(y(t,r),e.setTextRange(t,r)),t}function s(t){switch(t){case 332:return"type";case 330:return"returns";case 331:return"this";case 328:return"enum";case 320:return"author";case 322:return"class";case 323:return"public";case 324:return"private";case 325:return"protected";case 326:return"readonly";case 333:return"template";case 334:return"typedef";case 329:return"param";case 336:return"prop";case 327:return"callback";case 318:return"augments";case 319:return"implements";default:return e.Debug.fail("Unsupported kind: "+e.Debug.formatSyntaxKind(t))}}!function(e){e[e.None=0]="None",e[e.NoParenthesizerRules=1]="NoParenthesizerRules",e[e.NoNodeConverters=2]="NoNodeConverters",e[e.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",e[e.NoOriginalNode=8]="NoOriginalNode"}(e.NodeFactoryFlags||(e.NodeFactoryFlags={})),e.createNodeFactory=n;var c={};function l(e){return-8388609&u(e)}function u(t){if(!t)return 0;var r,n=t.transformFlags&~f(t.kind);return e.isNamedDeclaration(t)&&e.isPropertyName(t.name)?(r=t.name,n|4096&r.transformFlags):n}function d(e){return e?e.transformFlags:0}function p(e){for(var t=0,r=0,n=e;r<n.length;r++){t|=u(n[r])}e.transformFlags=t}function f(e){if(e>=173&&e<=196)return-2;switch(e){case 204:case 205:case 200:case 197:case 198:return 536879104;case 259:return 546379776;case 161:case 207:case 226:case 339:case 208:case 106:case 202:case 203:default:return 536870912;case 210:return 547309568;case 209:case 253:return 547313664;case 252:return 537018368;case 254:case 223:return 536905728;case 167:return 547311616;case 164:return 536875008;case 166:case 168:case 169:return 538923008;case 129:case 145:case 156:case 142:case 148:case 146:case 132:case 149:case 114:case 160:case 163:case 165:case 170:case 171:case 172:case 256:case 257:return-2;case 201:return 536922112;case 290:return 536887296}}e.getTransformFlagsSubtreeExclusions=f;var m=e.createBaseNodeFactory();function g(e){return e.flags|=8,e}var _,h={createBaseSourceFileNode:function(e){return g(m.createBaseSourceFileNode(e))},createBaseIdentifierNode:function(e){return g(m.createBaseIdentifierNode(e))},createBasePrivateIdentifierNode:function(e){return g(m.createBasePrivateIdentifierNode(e))},createBaseTokenNode:function(e){return g(m.createBaseTokenNode(e))},createBaseNode:function(e){return g(m.createBaseNode(e))}};function y(t,r){if(t.original=r,r){var n=r.emitNode;n&&(t.emitNode=function(t,r){var n=t.flags,i=t.leadingComments,a=t.trailingComments,o=t.commentRange,s=t.sourceMapRange,c=t.tokenSourceMapRanges,l=t.constantValue,u=t.helpers,d=t.startsOnNewLine;r||(r={});i&&(r.leadingComments=e.addRange(i.slice(),r.leadingComments));a&&(r.trailingComments=e.addRange(a.slice(),r.trailingComments));n&&(r.flags=n);o&&(r.commentRange=o);s&&(r.sourceMapRange=s);c&&(r.tokenSourceMapRanges=function(e,t){t||(t=[]);for(var r in e)t[r]=e[r];return t}(c,r.tokenSourceMapRanges));void 0!==l&&(r.constantValue=l);if(u)for(var p=0,f=u;p<f.length;p++){var m=f[p];r.helpers=e.appendIfUnique(r.helpers,m)}void 0!==d&&(r.startsOnNewLine=d);return r}(n,t.emitNode))}return t}e.factory=n(4,h),e.createUnparsedSourceFile=function(t,r,n){var i,a,o,s,c,l,u,d,p,f;e.isString(t)?(o="",s=t,c=t.length,l=r,u=n):(e.Debug.assert("js"===r||"dts"===r),o=("js"===r?t.javascriptPath:t.declarationPath)||"",l="js"===r?t.javascriptMapPath:t.declarationMapPath,d=function(){return"js"===r?t.javascriptText:t.declarationText},p=function(){return"js"===r?t.javascriptMapText:t.declarationMapText},c=function(){return d().length},t.buildInfo&&t.buildInfo.bundle&&(e.Debug.assert(void 0===n||"boolean"==typeof n),i=n,a="js"===r?t.buildInfo.bundle.js:t.buildInfo.bundle.dts,f=t.oldFileOfCurrentEmit));var m=f?function(t){for(var r,n,i=0,a=t.sections;i<a.length;i++){var o=a[i];switch(o.kind){case"internal":case"text":r=e.append(r,e.setTextRange(e.factory.createUnparsedTextLike(o.data,"internal"===o.kind),o));break;case"no-default-lib":case"reference":case"type":case"lib":n=e.append(n,e.setTextRange(e.factory.createUnparsedSyntheticReference(o),o));break;case"prologue":case"emitHelpers":case"prepend":break;default:e.Debug.assertNever(o)}}var s=e.factory.createUnparsedSource(e.emptyArray,n,null!=r?r:e.emptyArray);return e.setEachParent(n,s),e.setEachParent(r,s),s.helpers=e.map(t.sources&&t.sources.helpers,(function(t){return e.getAllUnscopedEmitHelpers().get(t)})),s}(e.Debug.assertDefined(a)):function(t,r,n){for(var i,a,o,s,c,l,u,d,p=0,f=t?t.sections:e.emptyArray;p<f.length;p++){var m=f[p];switch(m.kind){case"prologue":i=e.append(i,e.setTextRange(e.factory.createUnparsedPrologue(m.data),m));break;case"emitHelpers":a=e.append(a,e.getAllUnscopedEmitHelpers().get(m.data));break;case"no-default-lib":d=!0;break;case"reference":o=e.append(o,{pos:-1,end:-1,fileName:m.data});break;case"type":s=e.append(s,m.data);break;case"lib":c=e.append(c,{pos:-1,end:-1,fileName:m.data});break;case"prepend":for(var g=void 0,_=0,h=m.texts;_<h.length;_++){var y=h[_];r&&"internal"===y.kind||(g=e.append(g,e.setTextRange(e.factory.createUnparsedTextLike(y.data,"internal"===y.kind),y)))}l=e.addRange(l,g),u=e.append(u,e.factory.createUnparsedPrepend(m.data,null!=g?g:e.emptyArray));break;case"internal":if(r){u||(u=[]);break}case"text":u=e.append(u,e.setTextRange(e.factory.createUnparsedTextLike(m.data,"internal"===m.kind),m));break;default:e.Debug.assertNever(m)}}if(!u){var v=e.factory.createUnparsedTextLike(void 0,!1);e.setTextRangePosWidth(v,0,"function"==typeof n?n():n),u=[v]}var b=e.parseNodeFactory.createUnparsedSource(null!=i?i:e.emptyArray,void 0,u);return e.setEachParent(i,b),e.setEachParent(u,b),e.setEachParent(l,b),b.hasNoDefaultLib=d,b.helpers=a,b.referencedFiles=o||e.emptyArray,b.typeReferenceDirectives=s,b.libReferenceDirectives=c||e.emptyArray,b}(a,i,c);return m.fileName=o,m.sourceMapPath=l,m.oldFileOfCurrentEmit=f,d&&p?(Object.defineProperty(m,"text",{get:d}),Object.defineProperty(m,"sourceMapText",{get:p})):(e.Debug.assert(!f),m.text=null!=s?s:"",m.sourceMapText=u),m},e.createInputFiles=function(t,r,n,i,a,o,s,c,l,u,d){var p=e.parseNodeFactory.createInputFiles();if(e.isString(t))p.javascriptText=t,p.javascriptMapPath=n,p.javascriptMapText=i,p.declarationText=r,p.declarationMapPath=a,p.declarationMapText=o,p.javascriptPath=s,p.declarationPath=c,p.buildInfoPath=l,p.buildInfo=u,p.oldFileOfCurrentEmit=d;else{var f,m=new e.Map,g=function(e){if(void 0!==e){var r=m.get(e);return void 0===r&&(r=t(e),m.set(e,void 0!==r&&r)),!1!==r?r:void 0}},_=function(e){var t=g(e);return void 0!==t?t:"/* Input file "+e+" was missing */\r\n"};p.javascriptPath=r,p.javascriptMapPath=n,p.declarationPath=e.Debug.assertDefined(i),p.declarationMapPath=a,p.buildInfoPath=o,Object.defineProperties(p,{javascriptText:{get:function(){return _(r)}},javascriptMapText:{get:function(){return g(n)}},declarationText:{get:function(){return _(e.Debug.assertDefined(i))}},declarationMapText:{get:function(){return g(a)}},buildInfo:{get:function(){return function(t){if(void 0===f){var r=t();f=void 0!==r&&e.getBuildInfo(r)}return f||void 0}((function(){return g(o)}))}}})}return p},e.createSourceMapSource=function(t,r,n){return new(_||(_=e.objectAllocator.getSourceMapSourceConstructor()))(t,r,n)},e.setOriginalNode=y}(d||(d={})),function(e){function t(r){var n;if(!r.emitNode){if(e.isParseTreeNode(r)){if(300===r.kind)return r.emitNode={annotatedNodes:[r]};t(null!==(n=e.getSourceFileOfNode(e.getParseTreeNode(e.getSourceFileOfNode(r))))&&void 0!==n?n:e.Debug.fail("Could not determine parsed source file.")).annotatedNodes.push(r)}r.emitNode={}}return r.emitNode}function r(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.leadingComments}function n(e,r){return t(e).leadingComments=r,e}function i(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.trailingComments}function a(e,r){return t(e).trailingComments=r,e}e.getOrCreateEmitNode=t,e.disposeEmitNodes=function(t){var r,n,i=null===(n=null===(r=e.getSourceFileOfNode(e.getParseTreeNode(t)))||void 0===r?void 0:r.emitNode)||void 0===n?void 0:n.annotatedNodes;if(i)for(var a=0,o=i;a<o.length;a++){o[a].emitNode=void 0}},e.removeAllComments=function(e){var r=t(e);return r.flags|=1536,r.leadingComments=void 0,r.trailingComments=void 0,e},e.setEmitFlags=function(e,r){return t(e).flags=r,e},e.addEmitFlags=function(e,r){var n=t(e);return n.flags=n.flags|r,e},e.getSourceMapRange=function(e){var t,r;return null!==(r=null===(t=e.emitNode)||void 0===t?void 0:t.sourceMapRange)&&void 0!==r?r:e},e.setSourceMapRange=function(e,r){return t(e).sourceMapRange=r,e},e.getTokenSourceMapRange=function(e,t){var r,n;return null===(n=null===(r=e.emitNode)||void 0===r?void 0:r.tokenSourceMapRanges)||void 0===n?void 0:n[t]},e.setTokenSourceMapRange=function(e,r,n){var i,a=t(e);return(null!==(i=a.tokenSourceMapRanges)&&void 0!==i?i:a.tokenSourceMapRanges=[])[r]=n,e},e.getStartsOnNewLine=function(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.startsOnNewLine},e.setStartsOnNewLine=function(e,r){return t(e).startsOnNewLine=r,e},e.getCommentRange=function(e){var t,r;return null!==(r=null===(t=e.emitNode)||void 0===t?void 0:t.commentRange)&&void 0!==r?r:e},e.setCommentRange=function(e,r){return t(e).commentRange=r,e},e.getSyntheticLeadingComments=r,e.setSyntheticLeadingComments=n,e.addSyntheticLeadingComment=function(t,i,a,o){return n(t,e.append(r(t),{kind:i,pos:-1,end:-1,hasTrailingNewLine:o,text:a}))},e.getSyntheticTrailingComments=i,e.setSyntheticTrailingComments=a,e.addSyntheticTrailingComment=function(t,r,n,o){return a(t,e.append(i(t),{kind:r,pos:-1,end:-1,hasTrailingNewLine:o,text:n}))},e.moveSyntheticComments=function(e,o){n(e,r(o)),a(e,i(o));var s=t(o);return s.leadingComments=void 0,s.trailingComments=void 0,e},e.getConstantValue=function(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.constantValue},e.setConstantValue=function(e,r){return t(e).constantValue=r,e},e.addEmitHelper=function(r,n){var i=t(r);return i.helpers=e.append(i.helpers,n),r},e.addEmitHelpers=function(r,n){if(e.some(n))for(var i=t(r),a=0,o=n;a<o.length;a++){var s=o[a];i.helpers=e.appendIfUnique(i.helpers,s)}return r},e.removeEmitHelper=function(t,r){var n,i=null===(n=t.emitNode)||void 0===n?void 0:n.helpers;return!!i&&e.orderedRemoveItem(i,r)},e.getEmitHelpers=function(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.helpers},e.moveEmitHelpers=function(r,n,i){var a=r.emitNode,o=a&&a.helpers;if(e.some(o)){for(var s=t(n),c=0,l=0;l<o.length;l++){var u=o[l];i(u)?(c++,s.helpers=e.appendIfUnique(s.helpers,u)):c>0&&(o[l-c]=u)}c>0&&(o.length-=c)}},e.ignoreSourceNewlines=function(e){return t(e).flags|=134217728,e}}(d||(d={})),function(e){function t(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return function(r){for(var n="",i=0;i<t.length;i++)n+=e[i],n+=r(t[i]);return n+=e[e.length-1]}}var r;e.createEmitHelperFactory=function(t){var r=t.factory;return{getUnscopedHelperName:n,createDecorateHelper:function(i,a,o,s){t.requestEmitHelper(e.decorateHelper);var c=[];c.push(r.createArrayLiteralExpression(i,!0)),c.push(a),o&&(c.push(o),s&&c.push(s));return r.createCallExpression(n("__decorate"),void 0,c)},createMetadataHelper:function(i,a){return t.requestEmitHelper(e.metadataHelper),r.createCallExpression(n("__metadata"),void 0,[r.createStringLiteral(i),a])},createParamHelper:function(i,a,o){return t.requestEmitHelper(e.paramHelper),e.setTextRange(r.createCallExpression(n("__param"),void 0,[r.createNumericLiteral(a+""),i]),o)},createAssignHelper:function(i){if(t.getCompilerOptions().target>=2)return r.createCallExpression(r.createPropertyAccessExpression(r.createIdentifier("Object"),"assign"),void 0,i);return t.requestEmitHelper(e.assignHelper),r.createCallExpression(n("__assign"),void 0,i)},createAwaitHelper:function(i){return t.requestEmitHelper(e.awaitHelper),r.createCallExpression(n("__await"),void 0,[i])},createAsyncGeneratorHelper:function(i,a){return t.requestEmitHelper(e.awaitHelper),t.requestEmitHelper(e.asyncGeneratorHelper),(i.emitNode||(i.emitNode={})).flags|=786432,r.createCallExpression(n("__asyncGenerator"),void 0,[a?r.createThis():r.createVoidZero(),r.createIdentifier("arguments"),i])},createAsyncDelegatorHelper:function(i){return t.requestEmitHelper(e.awaitHelper),t.requestEmitHelper(e.asyncDelegator),r.createCallExpression(n("__asyncDelegator"),void 0,[i])},createAsyncValuesHelper:function(i){return t.requestEmitHelper(e.asyncValues),r.createCallExpression(n("__asyncValues"),void 0,[i])},createRestHelper:function(i,a,o,s){t.requestEmitHelper(e.restHelper);for(var c=[],l=0,u=0;u<a.length-1;u++){var d=e.getPropertyNameOfBindingOrAssignmentElement(a[u]);if(d)if(e.isComputedPropertyName(d)){e.Debug.assertIsDefined(o,"Encountered computed property name but 'computedTempVariables' argument was not provided.");var p=o[l];l++,c.push(r.createConditionalExpression(r.createTypeCheck(p,"symbol"),void 0,p,void 0,r.createAdd(p,r.createStringLiteral(""))))}else c.push(r.createStringLiteralFromNode(d))}return r.createCallExpression(n("__rest"),void 0,[i,e.setTextRange(r.createArrayLiteralExpression(c),s)])},createAwaiterHelper:function(i,a,o,s){t.requestEmitHelper(e.awaiterHelper);var c=r.createFunctionExpression(void 0,r.createToken(41),void 0,void 0,[],void 0,s);return(c.emitNode||(c.emitNode={})).flags|=786432,r.createCallExpression(n("__awaiter"),void 0,[i?r.createThis():r.createVoidZero(),a?r.createIdentifier("arguments"):r.createVoidZero(),o?e.createExpressionFromEntityName(r,o):r.createVoidZero(),c])},createExtendsHelper:function(i){return t.requestEmitHelper(e.extendsHelper),r.createCallExpression(n("__extends"),void 0,[i,r.createUniqueName("_super",48)])},createTemplateObjectHelper:function(i,a){return t.requestEmitHelper(e.templateObjectHelper),r.createCallExpression(n("__makeTemplateObject"),void 0,[i,a])},createSpreadArrayHelper:function(i,a){return t.requestEmitHelper(e.spreadArrayHelper),r.createCallExpression(n("__spreadArray"),void 0,[i,a])},createValuesHelper:function(i){return t.requestEmitHelper(e.valuesHelper),r.createCallExpression(n("__values"),void 0,[i])},createReadHelper:function(i,a){return t.requestEmitHelper(e.readHelper),r.createCallExpression(n("__read"),void 0,void 0!==a?[i,r.createNumericLiteral(a+"")]:[i])},createGeneratorHelper:function(i){return t.requestEmitHelper(e.generatorHelper),r.createCallExpression(n("__generator"),void 0,[r.createThis(),i])},createCreateBindingHelper:function(a,o,s){return t.requestEmitHelper(e.createBindingHelper),r.createCallExpression(n("__createBinding"),void 0,i([r.createIdentifier("exports"),a,o],s?[s]:[]))},createImportStarHelper:function(i){return t.requestEmitHelper(e.importStarHelper),r.createCallExpression(n("__importStar"),void 0,[i])},createImportStarCallbackHelper:function(){return t.requestEmitHelper(e.importStarHelper),n("__importStar")},createImportDefaultHelper:function(i){return t.requestEmitHelper(e.importDefaultHelper),r.createCallExpression(n("__importDefault"),void 0,[i])},createExportStarHelper:function(i,a){void 0===a&&(a=r.createIdentifier("exports"));return t.requestEmitHelper(e.exportStarHelper),t.requestEmitHelper(e.createBindingHelper),r.createCallExpression(n("__exportStar"),void 0,[i,a])},createClassPrivateFieldGetHelper:function(i,a){return t.requestEmitHelper(e.classPrivateFieldGetHelper),r.createCallExpression(n("__classPrivateFieldGet"),void 0,[i,a])},createClassPrivateFieldSetHelper:function(i,a,o){return t.requestEmitHelper(e.classPrivateFieldSetHelper),r.createCallExpression(n("__classPrivateFieldSet"),void 0,[i,a,o])}};function n(t){return e.setEmitFlags(r.createIdentifier(t),4098)}},e.compareEmitHelpers=function(t,r){return t===r||t.priority===r.priority?0:void 0===t.priority?1:void 0===r.priority?-1:e.compareValues(t.priority,r.priority)},e.helperString=t,e.decorateHelper={name:"typescript:decorate",importName:"__decorate",scoped:!1,priority:2,text:'\n var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n };'},e.metadataHelper={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:'\n var __metadata = (this && this.__metadata) || function (k, v) {\n if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);\n };'},e.paramHelper={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:"\n var __param = (this && this.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n };"},e.assignHelper={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:"\n var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n };"},e.awaitHelper={name:"typescript:await",importName:"__await",scoped:!1,text:"\n var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }"},e.asyncGeneratorHelper={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[e.awaitHelper],text:'\n var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume("next", value); }\n function reject(value) { resume("throw", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n };'},e.asyncDelegator={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[e.awaitHelper],text:'\n var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {\n var i, p;\n return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }\n };'},e.asyncValues={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:'\n var __asyncValues = (this && this.__asyncValues) || function (o) {\n if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n };'},e.restHelper={name:"typescript:rest",importName:"__rest",scoped:!1,text:'\n var __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === "function")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n };'},e.awaiterHelper={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:'\n var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n };'},e.extendsHelper={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:'\n var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n\n return function (d, b) {\n if (typeof b !== "function" && b !== null)\n throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n })();'},e.templateObjectHelper={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:'\n var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n };'},e.readHelper={name:"typescript:read",importName:"__read",scoped:!1,text:'\n var __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === "function" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i["return"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n };'},e.spreadArrayHelper={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:"\n var __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n };"},e.valuesHelper={name:"typescript:values",importName:"__values",scoped:!1,text:'\n var __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === "number") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");\n };'},e.generatorHelper={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:'\n var __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError("Generator is already executing.");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n };'},e.createBindingHelper={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:"\n var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n }) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n }));"},e.setModuleDefaultHelper={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:'\n var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, "default", { enumerable: true, value: v });\n }) : function(o, v) {\n o["default"] = v;\n });'},e.importStarHelper={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[e.createBindingHelper,e.setModuleDefaultHelper],priority:2,text:'\n var __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n };'},e.importDefaultHelper={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:'\n var __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { "default": mod };\n };'},e.exportStarHelper={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[e.createBindingHelper],priority:2,text:'\n var __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n };'},e.classPrivateFieldGetHelper={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:'\n var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, privateMap) {\n if (!privateMap.has(receiver)) {\n throw new TypeError("attempted to get private field on non-instance");\n }\n return privateMap.get(receiver);\n };'},e.classPrivateFieldSetHelper={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:'\n var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, privateMap, value) {\n if (!privateMap.has(receiver)) {\n throw new TypeError("attempted to set private field on non-instance");\n }\n privateMap.set(receiver, value);\n return value;\n };'},e.getAllUnscopedEmitHelpers=function(){return r||(r=e.arrayToMap([e.decorateHelper,e.metadataHelper,e.paramHelper,e.assignHelper,e.awaitHelper,e.asyncGeneratorHelper,e.asyncDelegator,e.asyncValues,e.restHelper,e.awaiterHelper,e.extendsHelper,e.templateObjectHelper,e.spreadArrayHelper,e.valuesHelper,e.readHelper,e.generatorHelper,e.importStarHelper,e.importDefaultHelper,e.exportStarHelper,e.classPrivateFieldGetHelper,e.classPrivateFieldSetHelper,e.createBindingHelper,e.setModuleDefaultHelper],(function(e){return e.name})))},e.asyncSuperHelper={name:"typescript:async-super",scoped:!0,text:t(o(["\n const "," = name => super[name];"],["\n const "," = name => super[name];"]),"_superIndex")},e.advancedAsyncSuperHelper={name:"typescript:advanced-async-super",scoped:!0,text:t(o(["\n const "," = (function (geti, seti) {\n const cache = Object.create(null);\n return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } });\n })(name => super[name], (name, value) => super[name] = value);"],["\n const "," = (function (geti, seti) {\n const cache = Object.create(null);\n return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } });\n })(name => super[name], (name, value) => super[name] = value);"]),"_superIndex")},e.isCallToHelper=function(t,r){return e.isCallExpression(t)&&e.isIdentifier(t.expression)&&4096&e.getEmitFlags(t.expression)&&t.expression.escapedText===r}}(d||(d={})),function(e){e.isNumericLiteral=function(e){return 8===e.kind},e.isBigIntLiteral=function(e){return 9===e.kind},e.isStringLiteral=function(e){return 10===e.kind},e.isJsxText=function(e){return 11===e.kind},e.isRegularExpressionLiteral=function(e){return 13===e.kind},e.isNoSubstitutionTemplateLiteral=function(e){return 14===e.kind},e.isTemplateHead=function(e){return 15===e.kind},e.isTemplateMiddle=function(e){return 16===e.kind},e.isTemplateTail=function(e){return 17===e.kind},e.isIdentifier=function(e){return 78===e.kind},e.isQualifiedName=function(e){return 158===e.kind},e.isComputedPropertyName=function(e){return 159===e.kind},e.isPrivateIdentifier=function(e){return 79===e.kind},e.isSuperKeyword=function(e){return 106===e.kind},e.isImportKeyword=function(e){return 100===e.kind},e.isCommaToken=function(e){return 27===e.kind},e.isQuestionToken=function(e){return 57===e.kind},e.isExclamationToken=function(e){return 53===e.kind},e.isTypeParameterDeclaration=function(e){return 160===e.kind},e.isParameter=function(e){return 161===e.kind},e.isDecorator=function(e){return 162===e.kind},e.isPropertySignature=function(e){return 163===e.kind},e.isPropertyDeclaration=function(e){return 164===e.kind},e.isMethodSignature=function(e){return 165===e.kind},e.isMethodDeclaration=function(e){return 166===e.kind},e.isConstructorDeclaration=function(e){return 167===e.kind},e.isGetAccessorDeclaration=function(e){return 168===e.kind},e.isSetAccessorDeclaration=function(e){return 169===e.kind},e.isCallSignatureDeclaration=function(e){return 170===e.kind},e.isConstructSignatureDeclaration=function(e){return 171===e.kind},e.isIndexSignatureDeclaration=function(e){return 172===e.kind},e.isTypePredicateNode=function(e){return 173===e.kind},e.isTypeReferenceNode=function(e){return 174===e.kind},e.isFunctionTypeNode=function(e){return 175===e.kind},e.isConstructorTypeNode=function(e){return 176===e.kind},e.isTypeQueryNode=function(e){return 177===e.kind},e.isTypeLiteralNode=function(e){return 178===e.kind},e.isArrayTypeNode=function(e){return 179===e.kind},e.isTupleTypeNode=function(e){return 180===e.kind},e.isNamedTupleMember=function(e){return 193===e.kind},e.isOptionalTypeNode=function(e){return 181===e.kind},e.isRestTypeNode=function(e){return 182===e.kind},e.isUnionTypeNode=function(e){return 183===e.kind},e.isIntersectionTypeNode=function(e){return 184===e.kind},e.isConditionalTypeNode=function(e){return 185===e.kind},e.isInferTypeNode=function(e){return 186===e.kind},e.isParenthesizedTypeNode=function(e){return 187===e.kind},e.isThisTypeNode=function(e){return 188===e.kind},e.isTypeOperatorNode=function(e){return 189===e.kind},e.isIndexedAccessTypeNode=function(e){return 190===e.kind},e.isMappedTypeNode=function(e){return 191===e.kind},e.isLiteralTypeNode=function(e){return 192===e.kind},e.isImportTypeNode=function(e){return 196===e.kind},e.isTemplateLiteralTypeSpan=function(e){return 195===e.kind},e.isTemplateLiteralTypeNode=function(e){return 194===e.kind},e.isObjectBindingPattern=function(e){return 197===e.kind},e.isArrayBindingPattern=function(e){return 198===e.kind},e.isBindingElement=function(e){return 199===e.kind},e.isArrayLiteralExpression=function(e){return 200===e.kind},e.isObjectLiteralExpression=function(e){return 201===e.kind},e.isPropertyAccessExpression=function(e){return 202===e.kind},e.isElementAccessExpression=function(e){return 203===e.kind},e.isCallExpression=function(e){return 204===e.kind},e.isNewExpression=function(e){return 205===e.kind},e.isTaggedTemplateExpression=function(e){return 206===e.kind},e.isTypeAssertionExpression=function(e){return 207===e.kind},e.isParenthesizedExpression=function(e){return 208===e.kind},e.isFunctionExpression=function(e){return 209===e.kind},e.isEtsComponentExpression=function(e){return 211===e.kind},e.isArrowFunction=function(e){return 210===e.kind},e.isDeleteExpression=function(e){return 212===e.kind},e.isTypeOfExpression=function(e){return 213===e.kind},e.isVoidExpression=function(e){return 214===e.kind},e.isAwaitExpression=function(e){return 215===e.kind},e.isPrefixUnaryExpression=function(e){return 216===e.kind},e.isPostfixUnaryExpression=function(e){return 217===e.kind},e.isBinaryExpression=function(e){return 218===e.kind},e.isConditionalExpression=function(e){return 219===e.kind},e.isTemplateExpression=function(e){return 220===e.kind},e.isYieldExpression=function(e){return 221===e.kind},e.isSpreadElement=function(e){return 222===e.kind},e.isClassExpression=function(e){return 223===e.kind},e.isOmittedExpression=function(e){return 224===e.kind},e.isExpressionWithTypeArguments=function(e){return 225===e.kind},e.isAsExpression=function(e){return 226===e.kind},e.isNonNullExpression=function(e){return 227===e.kind},e.isMetaProperty=function(e){return 228===e.kind},e.isSyntheticExpression=function(e){return 229===e.kind},e.isPartiallyEmittedExpression=function(e){return 339===e.kind},e.isCommaListExpression=function(e){return 340===e.kind},e.isTemplateSpan=function(e){return 230===e.kind},e.isSemicolonClassElement=function(e){return 231===e.kind},e.isBlock=function(e){return 232===e.kind},e.isVariableStatement=function(e){return 234===e.kind},e.isEmptyStatement=function(e){return 233===e.kind},e.isExpressionStatement=function(e){return 235===e.kind},e.isIfStatement=function(e){return 236===e.kind},e.isDoStatement=function(e){return 237===e.kind},e.isWhileStatement=function(e){return 238===e.kind},e.isForStatement=function(e){return 239===e.kind},e.isForInStatement=function(e){return 240===e.kind},e.isForOfStatement=function(e){return 241===e.kind},e.isContinueStatement=function(e){return 242===e.kind},e.isBreakStatement=function(e){return 243===e.kind},e.isReturnStatement=function(e){return 244===e.kind},e.isWithStatement=function(e){return 245===e.kind},e.isSwitchStatement=function(e){return 246===e.kind},e.isLabeledStatement=function(e){return 247===e.kind},e.isThrowStatement=function(e){return 248===e.kind},e.isTryStatement=function(e){return 249===e.kind},e.isDebuggerStatement=function(e){return 250===e.kind},e.isVariableDeclaration=function(e){return 251===e.kind},e.isVariableDeclarationList=function(e){return 252===e.kind},e.isFunctionDeclaration=function(e){return 253===e.kind},e.isClassDeclaration=function(e){return 254===e.kind},e.isStructDeclaration=function(e){return 255===e.kind},e.isInterfaceDeclaration=function(e){return 256===e.kind},e.isTypeAliasDeclaration=function(e){return 257===e.kind},e.isEnumDeclaration=function(e){return 258===e.kind},e.isModuleDeclaration=function(e){return 259===e.kind},e.isModuleBlock=function(e){return 260===e.kind},e.isCaseBlock=function(e){return 261===e.kind},e.isNamespaceExportDeclaration=function(e){return 262===e.kind},e.isImportEqualsDeclaration=function(e){return 263===e.kind},e.isImportDeclaration=function(e){return 264===e.kind},e.isImportClause=function(e){return 265===e.kind},e.isNamespaceImport=function(e){return 266===e.kind},e.isNamespaceExport=function(e){return 272===e.kind},e.isNamedImports=function(e){return 267===e.kind},e.isImportSpecifier=function(e){return 268===e.kind},e.isExportAssignment=function(e){return 269===e.kind},e.isExportDeclaration=function(e){return 270===e.kind},e.isNamedExports=function(e){return 271===e.kind},e.isExportSpecifier=function(e){return 273===e.kind},e.isMissingDeclaration=function(e){return 274===e.kind},e.isNotEmittedStatement=function(e){return 338===e.kind},e.isSyntheticReference=function(e){return 343===e.kind},e.isMergeDeclarationMarker=function(e){return 341===e.kind},e.isEndOfDeclarationMarker=function(e){return 342===e.kind},e.isExternalModuleReference=function(e){return 275===e.kind},e.isJsxElement=function(e){return 276===e.kind},e.isJsxSelfClosingElement=function(e){return 277===e.kind},e.isJsxOpeningElement=function(e){return 278===e.kind},e.isJsxClosingElement=function(e){return 279===e.kind},e.isJsxFragment=function(e){return 280===e.kind},e.isJsxOpeningFragment=function(e){return 281===e.kind},e.isJsxClosingFragment=function(e){return 282===e.kind},e.isJsxAttribute=function(e){return 283===e.kind},e.isJsxAttributes=function(e){return 284===e.kind},e.isJsxSpreadAttribute=function(e){return 285===e.kind},e.isJsxExpression=function(e){return 286===e.kind},e.isCaseClause=function(e){return 287===e.kind},e.isDefaultClause=function(e){return 288===e.kind},e.isHeritageClause=function(e){return 289===e.kind},e.isCatchClause=function(e){return 290===e.kind},e.isPropertyAssignment=function(e){return 291===e.kind},e.isShorthandPropertyAssignment=function(e){return 292===e.kind},e.isSpreadAssignment=function(e){return 293===e.kind},e.isEnumMember=function(e){return 294===e.kind},e.isUnparsedPrepend=function(e){return 296===e.kind},e.isSourceFile=function(e){return 300===e.kind},e.isBundle=function(e){return 301===e.kind},e.isUnparsedSource=function(e){return 302===e.kind},e.isJSDocTypeExpression=function(e){return 304===e.kind},e.isJSDocNameReference=function(e){return 305===e.kind},e.isJSDocAllType=function(e){return 306===e.kind},e.isJSDocUnknownType=function(e){return 307===e.kind},e.isJSDocNullableType=function(e){return 308===e.kind},e.isJSDocNonNullableType=function(e){return 309===e.kind},e.isJSDocOptionalType=function(e){return 310===e.kind},e.isJSDocFunctionType=function(e){return 311===e.kind},e.isJSDocVariadicType=function(e){return 312===e.kind},e.isJSDocNamepathType=function(e){return 313===e.kind},e.isJSDoc=function(e){return 314===e.kind},e.isJSDocTypeLiteral=function(e){return 315===e.kind},e.isJSDocSignature=function(e){return 316===e.kind},e.isJSDocAugmentsTag=function(e){return 318===e.kind},e.isJSDocAuthorTag=function(e){return 320===e.kind},e.isJSDocClassTag=function(e){return 322===e.kind},e.isJSDocCallbackTag=function(e){return 327===e.kind},e.isJSDocPublicTag=function(e){return 323===e.kind},e.isJSDocPrivateTag=function(e){return 324===e.kind},e.isJSDocProtectedTag=function(e){return 325===e.kind},e.isJSDocReadonlyTag=function(e){return 326===e.kind},e.isJSDocDeprecatedTag=function(e){return 321===e.kind},e.isJSDocSeeTag=function(e){return 335===e.kind},e.isJSDocEnumTag=function(e){return 328===e.kind},e.isJSDocParameterTag=function(e){return 329===e.kind},e.isJSDocReturnTag=function(e){return 330===e.kind},e.isJSDocThisTag=function(e){return 331===e.kind},e.isJSDocTypeTag=function(e){return 332===e.kind},e.isJSDocTemplateTag=function(e){return 333===e.kind},e.isJSDocTypedefTag=function(e){return 334===e.kind},e.isJSDocUnknownTag=function(e){return 317===e.kind},e.isJSDocPropertyTag=function(e){return 336===e.kind},e.isJSDocImplementsTag=function(e){return 319===e.kind},e.isSyntaxList=function(e){return 337===e.kind}}(d||(d={})),function(e){function t(t,r,n,i){if(e.isComputedPropertyName(n))return e.setTextRange(t.createElementAccessExpression(r,n.expression),i);var a=e.setTextRange(e.isIdentifierOrPrivateIdentifier(n)?t.createPropertyAccessExpression(r,n):t.createElementAccessExpression(r,n),n);return e.getOrCreateEmitNode(a).flags|=64,a}function r(t,r){var n=e.parseNodeFactory.createIdentifier(t||"React");return e.setParent(n,e.getParseTreeNode(r)),n}function n(t,i,a){if(e.isQualifiedName(i)){var o=n(t,i.left,a),s=t.createIdentifier(e.idText(i.right));return s.escapedText=i.right.escapedText,t.createPropertyAccessExpression(o,s)}return r(e.idText(i),a)}function a(e,t,i,a){return t?n(e,t,a):e.createPropertyAccessExpression(r(i,a),"createElement")}function o(t,r){return e.isIdentifier(r)?t.createStringLiteralFromNode(r):e.isComputedPropertyName(r)?e.setParent(e.setTextRange(t.cloneNode(r.expression),r.expression),r.expression.parent):e.setParent(e.setTextRange(t.cloneNode(r),r),r.parent)}function s(t){return e.isStringLiteral(t.expression)&&"use strict"===t.expression.text}function c(e,t){switch(void 0===t&&(t=15),e.kind){case 208:return!!(1&t);case 207:case 226:return!!(2&t);case 227:return!!(4&t);case 339:return!!(8&t)}return!1}function l(e,t){for(void 0===t&&(t=15);c(e,t);)e=e.expression;return e}function u(t){return e.setStartsOnNewLine(t,!0)}function d(t){var r=e.getOriginalNode(t,e.isSourceFile),n=r&&r.emitNode;return n&&n.externalHelpersModuleName}function p(t,r,n,i,a){if(n.importHelpers&&e.isEffectiveExternalModule(r,n)){var o=d(r);if(o)return o;var s=e.getEmitModuleKind(n),c=(i||n.esModuleInterop&&a)&&s!==e.ModuleKind.System&&s<e.ModuleKind.ES2015;if(!c){var l=e.getEmitHelpers(r);if(l)for(var u=0,p=l;u<p.length;u++){if(!p[u].scoped){c=!0;break}}}if(c){var f=e.getOriginalNode(r,e.isSourceFile),m=e.getOrCreateEmitNode(f);return m.externalHelpersModuleName||(m.externalHelpersModuleName=t.createUniqueName(e.externalHelpersModuleNameText))}}}function f(t,r,n,i){if(r)return r.moduleName?t.createStringLiteral(r.moduleName):!r.isDeclarationFile&&e.outFile(i)?t.createStringLiteral(e.getExternalModuleNameFromPath(n,r.fileName)):void 0}function m(t){if(e.isDeclarationBindingElement(t))return t.name;if(!e.isObjectLiteralElementLike(t))return e.isAssignmentExpression(t,!0)?m(t.left):e.isSpreadElement(t)?m(t.expression):t;switch(t.kind){case 291:return m(t.initializer);case 292:return t.name;case 293:return m(t.expression)}}function g(t){switch(t.kind){case 199:if(t.propertyName){var r=t.propertyName;return e.isPrivateIdentifier(r)?e.Debug.failBadSyntaxKind(r):e.isComputedPropertyName(r)&&_(r.expression)?r.expression:r}break;case 291:if(t.name){r=t.name;return e.isPrivateIdentifier(r)?e.Debug.failBadSyntaxKind(r):e.isComputedPropertyName(r)&&_(r.expression)?r.expression:r}break;case 293:return t.name&&e.isPrivateIdentifier(t.name)?e.Debug.failBadSyntaxKind(t.name):t.name}var n=m(t);if(n&&e.isPropertyName(n))return n}function _(e){var t=e.kind;return 10===t||8===t}e.createEmptyExports=function(e){return e.createExportDeclaration(void 0,void 0,!1,e.createNamedExports([]),void 0)},e.createMemberAccessForPropertyName=t,e.createJsxFactoryExpression=a,e.createExpressionForJsxElement=function(t,r,n,i,a,o){var s=[n];if(i&&s.push(i),a&&a.length>0)if(i||s.push(t.createNull()),a.length>1)for(var c=0,l=a;c<l.length;c++){var d=l[c];u(d),s.push(d)}else s.push(a[0]);return e.setTextRange(t.createCallExpression(r,void 0,s),o)},e.createExpressionForJsxFragment=function(t,i,o,s,c,l,d){var p=[function(e,t,i,a){return t?n(e,t,a):e.createPropertyAccessExpression(r(i,a),"Fragment")}(t,o,s,l),t.createNull()];if(c&&c.length>0)if(c.length>1)for(var f=0,m=c;f<m.length;f++){var g=m[f];u(g),p.push(g)}else p.push(c[0]);return e.setTextRange(t.createCallExpression(a(t,i,s,l),void 0,p),d)},e.createForOfBindingStatement=function(t,r,n){if(e.isVariableDeclarationList(r)){var i=e.first(r.declarations),a=t.updateVariableDeclaration(i,i.name,void 0,void 0,n);return e.setTextRange(t.createVariableStatement(void 0,t.updateVariableDeclarationList(r,[a])),r)}var o=e.setTextRange(t.createAssignment(r,n),r);return e.setTextRange(t.createExpressionStatement(o),r)},e.insertLeadingStatement=function(t,r,n){return e.isBlock(r)?t.updateBlock(r,e.setTextRange(t.createNodeArray(i([n],r.statements)),r.statements)):t.createBlock(t.createNodeArray([r,n]),!0)},e.createExpressionFromEntityName=function t(r,n){if(e.isQualifiedName(n)){var i=t(r,n.left),a=e.setParent(e.setTextRange(r.cloneNode(n.right),n.right),n.right.parent);return e.setTextRange(r.createPropertyAccessExpression(i,a),n)}return e.setParent(e.setTextRange(r.cloneNode(n),n),n.parent)},e.createExpressionForPropertyName=o,e.createExpressionForObjectLiteralElementLike=function(r,n,i,a){switch(i.name&&e.isPrivateIdentifier(i.name)&&e.Debug.failBadSyntaxKind(i.name,"Private identifiers are not allowed in object literals."),i.kind){case 168:case 169:return function(t,r,n,i,a){var s=e.getAllAccessorDeclarations(r,n),c=s.firstAccessor,l=s.getAccessor,u=s.setAccessor;if(n===c)return e.setTextRange(t.createObjectDefinePropertyCall(i,o(t,n.name),t.createPropertyDescriptor({enumerable:t.createFalse(),configurable:!0,get:l&&e.setTextRange(e.setOriginalNode(t.createFunctionExpression(l.modifiers,void 0,void 0,void 0,l.parameters,void 0,l.body),l),l),set:u&&e.setTextRange(e.setOriginalNode(t.createFunctionExpression(u.modifiers,void 0,void 0,void 0,u.parameters,void 0,u.body),u),u)},!a)),c)}(r,n.properties,i,a,!!n.multiLine);case 291:return function(r,n,i){return e.setOriginalNode(e.setTextRange(r.createAssignment(t(r,i,n.name,n.name),n.initializer),n),n)}(r,i,a);case 292:return function(r,n,i){return e.setOriginalNode(e.setTextRange(r.createAssignment(t(r,i,n.name,n.name),r.cloneNode(n.name)),n),n)}(r,i,a);case 166:return function(r,n,i){return e.setOriginalNode(e.setTextRange(r.createAssignment(t(r,i,n.name,n.name),e.setOriginalNode(e.setTextRange(r.createFunctionExpression(n.modifiers,n.asteriskToken,void 0,void 0,n.parameters,void 0,n.body),n),n)),n),n)}(r,i,a)}},e.isInternalName=function(t){return!!(32768&e.getEmitFlags(t))},e.isLocalName=function(t){return!!(16384&e.getEmitFlags(t))},e.isExportName=function(t){return!!(8192&e.getEmitFlags(t))},e.findUseStrictPrologue=function(t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(!e.isPrologueDirective(i))break;if(s(i))return i}},e.startsWithUseStrict=function(t){var r=e.firstOrUndefined(t);return void 0!==r&&e.isPrologueDirective(r)&&s(r)},e.isCommaSequence=function(e){return 218===e.kind&&27===e.operatorToken.kind||340===e.kind},e.isOuterExpression=c,e.skipOuterExpressions=l,e.skipAssertions=function(e){return l(e,6)},e.startOnNewLine=u,e.getExternalHelpersModuleName=d,e.hasRecordedExternalHelpers=function(t){var r=e.getOriginalNode(t,e.isSourceFile),n=r&&r.emitNode;return!(!n||!n.externalHelpersModuleName&&!n.externalHelpers)},e.createExternalHelpersImportDeclarationIfNeeded=function(t,r,n,i,a,o,s){if(i.importHelpers&&e.isEffectiveExternalModule(n,i)){var c=void 0,l=e.getEmitModuleKind(i);if(l>=e.ModuleKind.ES2015&&l<=e.ModuleKind.ESNext){var u=e.getEmitHelpers(n);if(u){for(var d=[],f=0,m=u;f<m.length;f++){var g=m[f];if(!g.scoped){var _=g.importName;_&&e.pushIfUnique(d,_)}}if(e.some(d)){d.sort(e.compareStringsCaseSensitive),c=t.createNamedImports(e.map(d,(function(i){return e.isFileLevelUniqueName(n,i)?t.createImportSpecifier(void 0,t.createIdentifier(i)):t.createImportSpecifier(t.createIdentifier(i),r.getUnscopedHelperName(i))})));var h=e.getOriginalNode(n,e.isSourceFile);e.getOrCreateEmitNode(h).externalHelpers=!0}}}else{var y=p(t,n,i,a,o||s);y&&(c=t.createNamespaceImport(y))}if(c){var v=t.createImportDeclaration(void 0,void 0,t.createImportClause(!1,void 0,c),t.createStringLiteral(e.externalHelpersModuleNameText));return e.addEmitFlags(v,67108864),v}}},e.getOrCreateExternalHelpersModuleNameIfNeeded=p,e.getLocalNameForExternalImport=function(t,r,n){var i=e.getNamespaceDeclarationNode(r);if(i&&!e.isDefaultImport(r)&&!e.isExportNamespaceAsDefaultDeclaration(r)){var a=i.name;return e.isGeneratedIdentifier(a)?a:t.createIdentifier(e.getSourceTextOfNodeFromSourceFile(n,a)||e.idText(a))}return 264===r.kind&&r.importClause||270===r.kind&&r.moduleSpecifier?t.getGeneratedNameForNode(r):void 0},e.getExternalModuleNameLiteral=function(t,r,n,i,a,o){var s=e.getExternalModuleName(r);if(s&&e.isStringLiteral(s))return function(e,t,r,n,i){return f(r,n.getExternalModuleFileFromDeclaration(e),t,i)}(r,i,t,a,o)||function(e,t,r){var n=r.renamedDependencies&&r.renamedDependencies.get(t.text);return n?e.createStringLiteral(n):void 0}(t,s,n)||t.cloneNode(s)},e.tryGetModuleNameFromFile=f,e.getInitializerOfBindingOrAssignmentElement=function t(r){if(e.isDeclarationBindingElement(r))return r.initializer;if(e.isPropertyAssignment(r)){var n=r.initializer;return e.isAssignmentExpression(n,!0)?n.right:void 0}return e.isShorthandPropertyAssignment(r)?r.objectAssignmentInitializer:e.isAssignmentExpression(r,!0)?r.right:e.isSpreadElement(r)?t(r.expression):void 0},e.getTargetOfBindingOrAssignmentElement=m,e.getRestIndicatorOfBindingOrAssignmentElement=function(e){switch(e.kind){case 161:case 199:return e.dotDotDotToken;case 222:case 293:return e}},e.getPropertyNameOfBindingOrAssignmentElement=function(t){var r=g(t);return e.Debug.assert(!!r||e.isSpreadAssignment(t),"Invalid property name for binding element."),r},e.tryGetPropertyNameOfBindingOrAssignmentElement=g,e.getElementsOfBindingOrAssignmentPattern=function(e){switch(e.kind){case 197:case 198:case 200:return e.elements;case 201:return e.properties}},e.getJSDocTypeAliasName=function(t){if(t)for(var r=t;;){if(e.isIdentifier(r)||!r.body)return e.isIdentifier(r)?r:r.name;r=r.body}},e.canHaveModifiers=function(e){var t=e.kind;return 161===t||163===t||164===t||165===t||166===t||167===t||168===t||169===t||172===t||209===t||210===t||223===t||234===t||253===t||254===t||255===t||256===t||257===t||258===t||259===t||263===t||264===t||269===t||270===t},e.isExportModifier=function(e){return 93===e.kind},e.isAsyncModifier=function(e){return 130===e.kind},e.isStaticModifier=function(e){return 124===e.kind}}(d||(d={})),function(e){e.setTextRange=function(t,r){return r?e.setTextRangePosEnd(t,r.pos,r.end):t}}(d||(d={})),function(e){var t,r,n,i,a,o,s,c,l,u;function d(e,t){return t&&e(t)}function p(e,t,r){if(r){if(t)return t(r);for(var n=0,i=r;n<i.length;n++){var a=e(i[n]);if(a)return a}}}function f(e,t){return 42===e.charCodeAt(t+1)&&42===e.charCodeAt(t+2)&&47!==e.charCodeAt(t+3)}function m(t,r,n){if(t&&!(t.kind<=157))switch(t.kind){case 158:return d(r,t.left)||d(r,t.right);case 160:return d(r,t.name)||d(r,t.constraint)||d(r,t.default)||d(r,t.expression);case 292:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.exclamationToken)||d(r,t.equalsToken)||d(r,t.objectAssignmentInitializer);case 293:case 208:case 212:case 213:case 214:case 215:case 227:case 222:case 235:case 244:case 248:case 162:case 159:case 275:case 285:case 339:return d(r,t.expression);case 161:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.dotDotDotToken)||d(r,t.name)||d(r,t.questionToken)||d(r,t.type)||d(r,t.initializer);case 164:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.exclamationToken)||d(r,t.type)||d(r,t.initializer);case 163:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.type)||d(r,t.initializer);case 291:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.initializer);case 251:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.exclamationToken)||d(r,t.type)||d(r,t.initializer);case 199:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.dotDotDotToken)||d(r,t.propertyName)||d(r,t.name)||d(r,t.initializer);case 175:case 176:case 170:case 171:case 172:return p(r,n,t.decorators)||p(r,n,t.modifiers)||p(r,n,t.typeParameters)||p(r,n,t.parameters)||d(r,t.type);case 211:return d(r,t.expression)||p(r,n,t.arguments)||d(r,t.body);case 166:case 165:case 167:case 168:case 169:case 209:case 253:case 210:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.asteriskToken)||d(r,t.name)||d(r,t.questionToken)||d(r,t.exclamationToken)||p(r,n,t.typeParameters)||p(r,n,t.parameters)||d(r,t.type)||d(r,t.equalsGreaterThanToken)||d(r,t.body);case 174:return d(r,t.typeName)||p(r,n,t.typeArguments);case 173:return d(r,t.assertsModifier)||d(r,t.parameterName)||d(r,t.type);case 177:return d(r,t.exprName);case 178:return p(r,n,t.members);case 179:return d(r,t.elementType);case 180:case 197:case 198:case 200:case 267:case 271:case 340:return p(r,n,t.elements);case 183:case 184:case 289:return p(r,n,t.types);case 185:return d(r,t.checkType)||d(r,t.extendsType)||d(r,t.trueType)||d(r,t.falseType);case 186:return d(r,t.typeParameter);case 196:return d(r,t.argument)||d(r,t.qualifier)||p(r,n,t.typeArguments);case 187:case 189:case 181:case 182:case 304:case 309:case 308:case 310:case 312:return d(r,t.type);case 190:return d(r,t.objectType)||d(r,t.indexType);case 191:return d(r,t.readonlyToken)||d(r,t.typeParameter)||d(r,t.nameType)||d(r,t.questionToken)||d(r,t.type);case 192:return d(r,t.literal);case 193:return d(r,t.dotDotDotToken)||d(r,t.name)||d(r,t.questionToken)||d(r,t.type);case 201:case 284:return p(r,n,t.properties);case 202:return d(r,t.expression)||d(r,t.questionDotToken)||d(r,t.name);case 203:return d(r,t.expression)||d(r,t.questionDotToken)||d(r,t.argumentExpression);case 204:case 205:return d(r,t.expression)||d(r,t.questionDotToken)||p(r,n,t.typeArguments)||p(r,n,t.arguments);case 206:return d(r,t.tag)||d(r,t.questionDotToken)||p(r,n,t.typeArguments)||d(r,t.template);case 207:return d(r,t.type)||d(r,t.expression);case 216:case 217:return d(r,t.operand);case 221:return d(r,t.asteriskToken)||d(r,t.expression);case 218:return d(r,t.left)||d(r,t.operatorToken)||d(r,t.right);case 226:return d(r,t.expression)||d(r,t.type);case 228:case 262:case 266:case 272:case 305:return d(r,t.name);case 219:return d(r,t.condition)||d(r,t.questionToken)||d(r,t.whenTrue)||d(r,t.colonToken)||d(r,t.whenFalse);case 232:case 260:case 288:return p(r,n,t.statements);case 300:return p(r,n,t.statements)||d(r,t.endOfFileToken);case 234:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.declarationList);case 252:return p(r,n,t.declarations);case 236:return d(r,t.expression)||d(r,t.thenStatement)||d(r,t.elseStatement);case 237:return d(r,t.statement)||d(r,t.expression);case 238:case 245:return d(r,t.expression)||d(r,t.statement);case 239:return d(r,t.initializer)||d(r,t.condition)||d(r,t.incrementor)||d(r,t.statement);case 240:return d(r,t.initializer)||d(r,t.expression)||d(r,t.statement);case 241:return d(r,t.awaitModifier)||d(r,t.initializer)||d(r,t.expression)||d(r,t.statement);case 242:case 243:return d(r,t.label);case 246:return d(r,t.expression)||d(r,t.caseBlock);case 261:return p(r,n,t.clauses);case 287:return d(r,t.expression)||p(r,n,t.statements);case 247:return d(r,t.label)||d(r,t.statement);case 249:return d(r,t.tryBlock)||d(r,t.catchClause)||d(r,t.finallyBlock);case 290:return d(r,t.variableDeclaration)||d(r,t.block);case 255:case 254:case 223:case 256:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||p(r,n,t.typeParameters)||p(r,n,t.heritageClauses)||p(r,n,t.members);case 257:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||p(r,n,t.typeParameters)||d(r,t.type);case 258:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||p(r,n,t.members);case 294:case 283:return d(r,t.name)||d(r,t.initializer);case 259:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.body);case 263:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.moduleReference);case 264:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.importClause)||d(r,t.moduleSpecifier);case 265:return d(r,t.name)||d(r,t.namedBindings);case 270:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.exportClause)||d(r,t.moduleSpecifier);case 268:case 273:return d(r,t.propertyName)||d(r,t.name);case 269:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.expression);case 220:case 194:return d(r,t.head)||p(r,n,t.templateSpans);case 230:return d(r,t.expression)||d(r,t.literal);case 195:return d(r,t.type)||d(r,t.literal);case 225:return d(r,t.expression)||p(r,n,t.typeArguments);case 274:return p(r,n,t.decorators);case 276:return d(r,t.openingElement)||p(r,n,t.children)||d(r,t.closingElement);case 280:return d(r,t.openingFragment)||p(r,n,t.children)||d(r,t.closingFragment);case 277:case 278:return d(r,t.tagName)||p(r,n,t.typeArguments)||d(r,t.attributes);case 286:return d(r,t.dotDotDotToken)||d(r,t.expression);case 279:case 320:case 317:case 322:case 323:case 324:case 325:case 326:return d(r,t.tagName);case 311:return p(r,n,t.parameters)||d(r,t.type);case 314:return p(r,n,t.tags);case 335:return d(r,t.tagName)||d(r,t.name);case 329:case 336:return d(r,t.tagName)||(t.isNameFirst?d(r,t.name)||d(r,t.typeExpression):d(r,t.typeExpression)||d(r,t.name));case 319:case 318:return d(r,t.tagName)||d(r,t.class);case 333:return d(r,t.tagName)||d(r,t.constraint)||p(r,n,t.typeParameters);case 334:return d(r,t.tagName)||(t.typeExpression&&304===t.typeExpression.kind?d(r,t.typeExpression)||d(r,t.fullName):d(r,t.fullName)||d(r,t.typeExpression));case 327:return d(r,t.tagName)||d(r,t.fullName)||d(r,t.typeExpression);case 330:case 332:case 331:case 328:return d(r,t.tagName)||d(r,t.typeExpression);case 316:return e.forEach(t.typeParameters,r)||e.forEach(t.parameters,r)||d(r,t.type);case 315:return e.forEach(t.jsDocPropertyTags,r)}}function g(e){var t=[];return m(e,r,r),t;function r(e){t.unshift(e)}}function _(e){return void 0!==e.externalModuleIndicator}function h(t){return e.fileExtensionIs(t,".d.ts")||e.fileExtensionIs(t,".d.ets")}function y(t,r){for(var n=[],i=0,a=e.getLeadingCommentRanges(r,0)||e.emptyArray;i<a.length;i++){var o=a[i];w(n,o,r.substring(o.pos,o.end))}t.pragmas=new e.Map;for(var s=0,c=n;s<c.length;s++){var l=c[s];if(t.pragmas.has(l.name)){var u=t.pragmas.get(l.name);u instanceof Array?u.push(l.args):t.pragmas.set(l.name,[u,l.args])}else t.pragmas.set(l.name,l.args)}}function v(t,r){t.checkJsDirective=void 0,t.referencedFiles=[],t.typeReferenceDirectives=[],t.libReferenceDirectives=[],t.amdDependencies=[],t.hasNoDefaultLib=!1,t.pragmas.forEach((function(n,i){switch(i){case"reference":var a=t.referencedFiles,o=t.typeReferenceDirectives,s=t.libReferenceDirectives;e.forEach(e.toArray(n),(function(n){var i=n.arguments,c=i.types,l=i.lib,u=i.path;n.arguments["no-default-lib"]?t.hasNoDefaultLib=!0:c?o.push({pos:c.pos,end:c.end,fileName:c.value}):l?s.push({pos:l.pos,end:l.end,fileName:l.value}):u?a.push({pos:u.pos,end:u.end,fileName:u.value}):r(n.range.pos,n.range.end-n.range.pos,e.Diagnostics.Invalid_reference_directive_syntax)}));break;case"amd-dependency":t.amdDependencies=e.map(e.toArray(n),(function(e){return{name:e.arguments.name,path:e.arguments.path}}));break;case"amd-module":if(n instanceof Array)for(var c=0,l=n;c<l.length;c++){var u=l[c];t.moduleName&&r(u.range.pos,u.range.end-u.range.pos,e.Diagnostics.An_AMD_module_cannot_have_multiple_name_assignments),t.moduleName=u.arguments.name}else t.moduleName=n.arguments.name;break;case"ts-nocheck":case"ts-check":e.forEach(e.toArray(n),(function(e){(!t.checkJsDirective||e.range.pos>t.checkJsDirective.pos)&&(t.checkJsDirective={enabled:"ts-check"===i,end:e.range.end,pos:e.range.pos})}));break;case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:e.Debug.fail("Unhandled pragma kind")}}))}!function(e){e[e.None=0]="None",e[e.Yield=1]="Yield",e[e.Await=2]="Await",e[e.Type=4]="Type",e[e.IgnoreMissingOpenBrace=16]="IgnoreMissingOpenBrace",e[e.JSDoc=32]="JSDoc"}(t||(t={})),function(e){e[e.TryParse=0]="TryParse",e[e.Lookahead=1]="Lookahead",e[e.Reparse=2]="Reparse"}(r||(r={})),e.parseBaseNodeFactory={createBaseSourceFileNode:function(t){return new(s||(s=e.objectAllocator.getSourceFileConstructor()))(t,-1,-1)},createBaseIdentifierNode:function(t){return new(a||(a=e.objectAllocator.getIdentifierConstructor()))(t,-1,-1)},createBasePrivateIdentifierNode:function(t){return new(o||(o=e.objectAllocator.getPrivateIdentifierConstructor()))(t,-1,-1)},createBaseTokenNode:function(t){return new(i||(i=e.objectAllocator.getTokenConstructor()))(t,-1,-1)},createBaseNode:function(t){return new(n||(n=e.objectAllocator.getNodeConstructor()))(t,-1,-1)}},e.parseNodeFactory=e.createNodeFactory(1,e.parseBaseNodeFactory),e.isJSDocLikeText=f,e.forEachChild=m,e.forEachChildRecursively=function(t,r,n){for(var i=g(t),a=[];a.length<i.length;)a.push(t);for(;0!==i.length;){var o=i.pop(),s=a.pop();if(e.isArray(o)){if(n)if(l=n(o,s)){if("skip"===l)continue;return l}for(var c=o.length-1;c>=0;--c)i.push(o[c]),a.push(s)}else{var l;if(l=r(o,s)){if("skip"===l)continue;return l}if(o.kind>=158)for(var u=0,d=g(o);u<d.length;u++){var p=d[u];i.push(p),a.push(o)}}}},e.createSourceFile=function(t,r,n,i,a,o){var s;return void 0===i&&(i=!1),null===e.tracing||void 0===e.tracing||e.tracing.push("parse","createSourceFile",{path:t},!0),e.performance.mark("beforeParse"),c=null!=o?o:e.defaultInitCompilerOptions,e.perfLogger.logStartParseSourceFile(t),s=100===n?l.parseSourceFile(t,r,n,void 0,i,6):l.parseSourceFile(t,r,n,void 0,i,a),e.perfLogger.logStopParseSourceFile(),e.performance.mark("afterParse"),e.performance.measure("Parse","beforeParse","afterParse"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),s},e.parseIsolatedEntityName=function(e,t){return l.parseIsolatedEntityName(e,t)},e.parseJsonText=function(e,t){return l.parseJsonText(e,t)},e.isExternalModule=_,e.updateSourceFile=function(t,r,n,i,a){void 0===i&&(i=!1),c=null!=a?a:e.defaultInitCompilerOptions;var o=u.updateSourceFile(t,r,n,i);return o.flags|=3145728&t.flags,o},e.parseIsolatedJSDocComment=function(e,t,r){var n=l.JSDocParser.parseIsolatedJSDocComment(e,t,r);return n&&n.jsDoc&&l.fixupParentReferences(n.jsDoc),n},e.parseJSDocTypeExpressionForTests=function(e,t,r){return l.JSDocParser.parseJSDocTypeExpressionForTests(e,t,r)},function(t){var r,n,i,a,o,s=e.createScanner(99,!0),l=20480;function d(e){return A++,e}var p,g,b,k,x,S,w,D,T,C,A,N,P,I,F,O,R,M,L,j,B,z,U={createBaseSourceFileNode:function(e){return d(new o(e,0,0))},createBaseIdentifierNode:function(e){return d(new i(e,0,0))},createBasePrivateIdentifierNode:function(e){return d(new a(e,0,0))},createBaseTokenNode:function(e){return d(new n(e,0,0))},createBaseNode:function(e){return d(new r(e,0,0))}},q=e.createNodeFactory(11,U),J=!0,V=!1,H=new e.Map,K=new e.Map;function W(t,r,n,i,a){void 0===n&&(n=2),void 0===a&&(a=!1),G(t,r,n,i,6),g=R,We();var o,s,c=qe();if(1===Ve())o=mt([],c,c),s=dt();else{var l=void 0;switch(Ve()){case 22:l=ei();break;case 110:case 95:case 104:l=dt();break;case 40:l=tt((function(){return 8===We()&&58!==We()}))?An():ri();break;case 8:case 10:if(tt((function(){return 58!==We()}))){l=ar();break}default:l=ri()}var u=q.createExpressionStatement(l);gt(u,c),o=mt([u],c),s=ut(1,e.Diagnostics.Unexpected_token)}var d=ie(t,2,6,!1,o,s,g);a&&ne(d),d.nodeCount=A,d.identifierCount=I,d.identifiers=N,d.parseDiagnostics=e.attachFileToDiagnostics(w,d),D&&(d.jsDocDiagnostics=e.attachFileToDiagnostics(D,d));var p=d;return $(),p}function G(t,c,l,u,d){switch(r=e.objectAllocator.getNodeConstructor(),n=e.objectAllocator.getTokenConstructor(),i=e.objectAllocator.getIdentifierConstructor(),a=e.objectAllocator.getPrivateIdentifierConstructor(),o=e.objectAllocator.getSourceFileConstructor(),p=e.normalizePath(t),b=c,k=l,T=u,x=d,S=e.getLanguageVariant(d),w=[],F=0,N=new e.Map,P=new e.Map,I=0,A=0,g=0,J=!0,x){case 1:case 2:R=131072;break;case 6:R=33685504;break;case 8:R=1073741824;break;default:R=0}p.endsWith(".ets")&&(R=1073741824),V=!1,s.setText(b),s.setOnError(Ue),s.setScriptTarget(k),s.setLanguageVariant(S),s.setEtsContext(Ae())}function $(){s.clearCommentDirectives(),s.setText(""),s.setOnError(void 0),s.setEtsContext(!1),b=void 0,k=void 0,T=void 0,x=void 0,S=void 0,g=0,w=void 0,D=void 0,F=0,N=void 0,O=void 0,J=!0,L=void 0,j=void 0,z=void 0,H.clear(),K.clear()}function Y(t,r,n){var i=h(p);i&&(R|=8388608),g=R,We();var a=qt(0,bi);e.Debug.assert(1===Ve());var o=re(dt()),c=ie(p,t,n,i,a,o,g);return y(c,b),v(c,(function(t,r,n){w.push(e.createDetachedDiagnostic(p,t,r,n))})),c.commentDirectives=s.getCommentDirectives(),c.nodeCount=A,c.identifierCount=I,c.identifiers=N,c.parseDiagnostics=e.attachFileToDiagnostics(w,c),D&&(c.jsDocDiagnostics=e.attachFileToDiagnostics(D,c)),r&&ne(c),c}function X(e,t){return t?re(e):e}t.parseSourceFile=function(t,r,n,i,a,o){if(void 0===a&&(a=!1),6===(o=e.ensureScriptKind(t,o))){var s=W(t,r,n,i,a);return e.convertToObjectWorker(s,s.parseDiagnostics,!1,void 0,void 0),s.referencedFiles=e.emptyArray,s.typeReferenceDirectives=e.emptyArray,s.libReferenceDirectives=e.emptyArray,s.amdDependencies=e.emptyArray,s.hasNoDefaultLib=!1,s.pragmas=e.emptyMap,s}G(t,r,n,i,o);var c=Y(n,a,o);return $(),c},t.parseIsolatedEntityName=function(e,t){G("",e,t,void 0,1),We();var r=Xt(!0),n=1===Ve()&&!w.length;return $(),n?r:void 0},t.parseJsonText=W;var Q,Z,ee,te=!1;function re(t){e.Debug.assert(!t.jsDoc);var r=e.mapDefined(e.getJSDocCommentRanges(t,b),(function(e){return ee.parseJSDocComment(t,e.pos,e.end-e.pos)}));return r.length&&(t.jsDoc=r),te&&(te=!1,t.flags|=134217728),t}function ne(t){e.setParentRecursive(t,!0)}function ie(t,r,n,i,a,o,c){var l=q.createSourceFile(a,o,c);return e.setTextRangePosWidth(l,0,b.length),function(t){t.externalModuleIndicator=e.forEach(t.statements,ha)||function(e){return 2097152&e.flags?ya(e):void 0}(t)}(l),!i&&_(l)&&8388608&l.transformFlags&&(l=function(t){var r=T,n=u.createSyntaxCursor(t);T={currentNode:function(e){var t=n.currentNode(e);return J&&t&&f(t)&&(t.intersectsChange=!0),t}};var i=[],a=w;w=[];for(var o=0,c=m(t.statements,0),l=function(){var r=t.statements[o],n=t.statements[c];e.addRange(i,t.statements,o,c),o=g(t.statements,c);var l=e.findIndex(a,(function(e){return e.start>=r.pos})),u=l>=0?e.findIndex(a,(function(e){return e.start>=n.pos}),l):-1;l>=0&&e.addRange(w,a,l,u>=0?u:void 0),et((function(){var e=R;for(R|=32768,s.setTextPos(n.pos),We();1!==Ve();){var r=s.getStartPos(),a=Jt(0,bi);if(i.push(a),r===s.getStartPos()&&We(),o>=0){var c=t.statements[o];if(a.end===c.pos)break;a.end>c.pos&&(o=g(t.statements,o+1))}}R=e}),2),c=o>=0?m(t.statements,o):-1};-1!==c;)l();if(o>=0){var d=t.statements[o];e.addRange(i,t.statements,o);var p=e.findIndex(a,(function(e){return e.start>=d.pos}));p>=0&&e.addRange(w,a,p)}return T=r,q.updateSourceFile(t,e.setTextRange(q.createNodeArray(i),t.statements));function f(e){return!(32768&e.flags||!(8388608&e.transformFlags))}function m(e,t){for(var r=t;r<e.length;r++)if(f(e[r]))return r;return-1}function g(e,t){for(var r=t;r<e.length;r++)if(!f(e[r]))return r;return-1}}(l)),l.text=b,l.bindDiagnostics=[],l.bindSuggestionDiagnostics=void 0,l.languageVersion=r,l.fileName=t,l.languageVariant=e.getLanguageVariant(n),l.isDeclarationFile=i,l.scriptKind=n,l}function ae(e,t){e?R|=t:R&=~t}function oe(e,t){e?M|=t:M&=~t}function se(e){ae(e,4096)}function ce(e){ae(e,8192)}function le(e){ae(e,16384)}function ue(e){ae(e,32768)}function de(e){oe(e,2)}function pe(e){oe(e,128)}function fe(e){oe(e,256)}function me(e){oe(e,4)}function ge(e){oe(e,8)}function _e(e){oe(e,16)}function he(e){oe(e,32)}function ye(e){oe(e,64)}function ve(e,t){var r=e&R;if(r){ae(!1,r);var n=t();return ae(!0,r),n}return t()}function be(e,t){var r=e&~R;if(r){ae(!0,r);var n=t();return ae(!1,r),n}return t()}function ke(e){return ve(4096,e)}function xe(e){return be(32768,e)}function Se(e){return!!(R&e)}function we(e){return!!(M&e)}function De(){return Se(8192)}function Ee(){return Se(4096)}function Te(){return Se(16384)}function Ce(){return Se(32768)}function Ae(){return Se(1073741824)}function Ne(){return Ae()&&we(2)}function Pe(){return Ae()&&we(128)}function Ie(){return Ae()&&we(4)}function Fe(){return Ae()&&we(8)}function Oe(){return Ae()&&Ne()&&we(16)}function Re(){return Ae()&&we(32)}function Me(){return Ae()&&Ne()&&we(64)}function Le(e,t){Be(s.getTokenPos(),s.getTextPos(),e,t)}function je(t,r,n,i){var a=e.lastOrUndefined(w);a&&t===a.start||w.push(e.createDetachedDiagnostic(p,t,r,n,i)),V=!0}function Be(e,t,r,n){je(e,t-e,r,n)}function ze(e,t,r){Be(e.pos,e.end,t,r)}function Ue(e,t){je(s.getTextPos(),t,e)}function qe(){return s.getStartPos()}function Je(){return s.hasPrecedingJSDocComment()}function Ve(){return C}function He(){return C=s.scan()}function Ke(e){return We(),e()}function We(){return e.isKeyword(C)&&(s.hasUnicodeEscape()||s.hasExtendedUnicodeEscape())&&Be(s.getTokenPos(),s.getTextPos(),e.Diagnostics.Keywords_cannot_contain_escape_characters),He()}function Ge(){return C=s.scanJsDocToken()}function $e(){return C=s.reScanGreaterToken()}function Ye(){return C=s.reScanTemplateHeadOrNoSubstitutionTemplate()}function Xe(){return C=s.reScanLessThanToken()}function Qe(){return C=s.scanJsxIdentifier()}function Ze(){return C=s.scanJsxToken()}function et(t,r){var n=C,i=w.length,a=V,o=R,c=0!==r?s.lookAhead(t):s.tryScan(t);return e.Debug.assert(o===R),c&&0===r||(C=n,2!==r&&(w.length=i),V=a),c}function tt(e){return et(e,1)}function rt(e){return et(e,0)}function nt(){return 78===Ve()||Ve()>116}function it(){return 78===Ve()||(125!==Ve()||!De())&&((131!==Ve()||!Ce())&&Ve()>116)}function at(t,r,n){return void 0===n&&(n=!0),Ve()===t?(n&&We(),!0):!(Ve()===t||!z||!Me())||(r?Le(r):Le(e.Diagnostics._0_expected,e.tokenToString(t)),!1)}function ot(t){return Ve()===t?(Ge(),!0):(Le(e.Diagnostics._0_expected,e.tokenToString(t)),!1)}function st(e){return Ve()===e&&(We(),!0)}function ct(e){if(Ve()===e)return dt()}function lt(e){if(Ve()===e)return t=qe(),r=Ve(),Ge(),gt(q.createToken(r),t);var t,r}function ut(t,r,n){return ct(t)||_t(t,!1,r||e.Diagnostics._0_expected,n||e.tokenToString(t))}function dt(){var e=qe(),t=Ve();return We(),gt(q.createToken(t),e)}function pt(){return 26===Ve()||(19===Ve()||1===Ve()||s.hasPrecedingLineBreak())}function ft(){return pt()?(26===Ve()&&We(),!0):at(26)}function mt(t,r,n,i){var a=q.createNodeArray(t,i);return e.setTextRangePosEnd(a,r,null!=n?n:s.getStartPos()),a}function gt(t,r,n,i){return e.setTextRangePosEnd(t,r,null!=n?n:s.getStartPos()),R&&(t.flags|=R),V&&(V=!1,t.flags|=65536),i&&(t.virtual=!0),t}function _t(t,r,n,i){r?je(s.getStartPos(),0,n,i):n&&Le(n,i);var a=qe();return gt(78===t?q.createIdentifier("",void 0,void 0):e.isTemplateLiteralKind(t)?q.createTemplateLiteralLikeNode(t,"","",void 0):8===t?q.createNumericLiteral("",void 0):10===t?q.createStringLiteral("",void 0):274===t?q.createMissingDeclaration():q.createToken(t),a)}function ht(e){var t=N.get(e);return void 0===t&&N.set(e,t=e),t}function yt(t,r,n){if(t){I++;var i=qe(),a=Ve(),o=ht(s.getTokenValue());return He(),gt(q.createIdentifier(o,void 0,a),i)}if(79===Ve())return Le(n||e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),yt(!0);if(0===Ve()&&s.tryScan((function(){return 78===s.reScanInvalidIdentifier()})))return yt(!0);if(z&&Me()&&24===Ve()){I++;i=qe();return aa(q.createIdentifier(z+"Instance",void 0,78),i,i)}I++;var c=1===Ve(),l=s.isReservedWord(),u=s.getTokenText(),d=l?e.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:e.Diagnostics.Identifier_expected;return _t(78,c,r||d,u)}function vt(e){return yt(nt(),void 0,e)}function bt(e,t){return yt(it(),e,t)}function kt(t){return yt(e.tokenIsIdentifierOrKeyword(Ve()),t)}function xt(){return e.tokenIsIdentifierOrKeyword(Ve())||10===Ve()||8===Ve()}function St(e){if(10===Ve()||8===Ve()){var t=ar();return t.text=ht(t.text),t}return e&&22===Ve()?function(){var e=qe();at(22);var t=ke(_n);return at(23),gt(q.createComputedPropertyName(t),e)}():79===Ve()?Dt():kt()}function wt(){return St(!0)}function Dt(){var e,t,r=qe(),n=q.createPrivateIdentifier((e=s.getTokenText(),void 0===(t=P.get(e))&&P.set(e,t=e),t));return We(),gt(n,r)}function Et(e){return Ve()===e&&rt(Ct)}function Tt(){return We(),!s.hasPrecedingLineBreak()&&Pt()}function Ct(){switch(Ve()){case 85:return 92===We();case 93:return We(),88===Ve()?tt(It):150===Ve()?tt(Nt):At();case 88:return It();case 124:default:return Tt();case 135:case 147:return We(),Pt()}}function At(){return 41!==Ve()&&127!==Ve()&&18!==Ve()&&Pt()}function Nt(){return We(),At()}function Pt(){return 22===Ve()||18===Ve()||41===Ve()||25===Ve()||xt()}function It(){return We(),83===Ve()||Ae()&&84===Ve()||98===Ve()||118===Ve()||126===Ve()&&tt(fi)||130===Ve()&&tt(mi)}function Ft(t,r){if(Vt(t))return!0;switch(t){case 0:case 1:case 3:return!(26===Ve()&&r)&&yi();case 2:return 81===Ve()||88===Ve();case 4:return tt(Pr);case 5:return tt(qi)||26===Ve()&&!r;case 6:return 22===Ve()||xt();case 12:switch(Ve()){case 22:case 41:case 25:case 24:return!0;default:return xt()}case 18:return xt();case 9:return 22===Ve()||25===Ve()||xt();case 7:return 18===Ve()?tt(Ot):r?it()&&!jt():mn()&&!jt();case 8:return Ai();case 10:return 27===Ve()||25===Ve()||Ai();case 19:return it()||Fe()&&void 0!==j;case 15:switch(Ve()){case 27:case 24:return!0}case 11:return 25===Ve()||gn();case 16:return vr(!1);case 17:return vr(!0);case 20:case 21:return 27===Ve()||Yr();case 22:return ia();case 23:return e.tokenIsIdentifierOrKeyword(Ve());case 13:return e.tokenIsIdentifierOrKeyword(Ve())||18===Ve();case 14:return!0}return e.Debug.fail("Non-exhaustive case in 'isListElement'.")}function Ot(){if(e.Debug.assert(18===Ve()),19===We()){var t=We();return 27===t||18===t||94===t||117===t}return!0}function Rt(){return We(),it()}function Mt(){return We(),e.tokenIsIdentifierOrKeyword(Ve())}function Lt(){return We(),e.tokenIsIdentifierOrKeywordOrGreaterThan(Ve())}function jt(){return(117===Ve()||94===Ve())&&tt(Bt)}function Bt(){return We(),gn()}function zt(){return We(),Yr()}function Ut(e){if(1===Ve())return!0;switch(e){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:return 19===Ve();case 3:return 19===Ve()||81===Ve()||88===Ve();case 7:return 18===Ve()||94===Ve()||117===Ve();case 8:return function(){if(pt())return!0;if(En(Ve()))return!0;if(38===Ve())return!0;return!1}();case 19:return 31===Ve()||20===Ve()||18===Ve()||94===Ve()||117===Ve();case 11:return 21===Ve()||26===Ve();case 15:case 21:case 10:return 23===Ve();case 17:case 16:case 18:return 21===Ve()||23===Ve();case 20:return 27!==Ve();case 22:return 18===Ve()||19===Ve();case 13:return 31===Ve()||43===Ve();case 14:return 29===Ve()&&tt(da);default:return!1}}function qt(e,t){var r=F;F|=1<<e;for(var n=[],i=qe();!Ut(e);)if(Ft(e,!1)){var a=Jt(e,t);n.push(a)}else if(Kt(e))break;return F=r,mt(n,i)}function Jt(e,t){var r=Vt(e);return r?Ht(r):t()}function Vt(t){if(T&&function(e){switch(e){case 5:case 2:case 0:case 1:case 3:case 6:case 4:case 8:case 17:case 16:return!0}return!1}(t)&&!V){var r=T.currentNode(s.getStartPos());if(!(e.nodeIsMissing(r)||r.intersectsChange||e.containsParseError(r)))if((1099100160&r.flags)===R&&function(e,t){switch(t){case 5:return function(e){if(e)switch(e.kind){case 167:case 172:case 168:case 169:case 231:return!0;case 164:return!Ne();case 166:var t=e;return!(78===t.name.kind&&133===t.name.originalKeywordKind)}return!1}(e);case 2:return function(e){if(e)switch(e.kind){case 287:case 288:return!0}return!1}(e);case 0:case 1:case 3:return function(e){if(e)switch(e.kind){case 253:case 234:case 232:case 236:case 235:case 248:case 244:case 246:case 243:case 242:case 240:case 241:case 239:case 238:case 245:case 233:case 249:case 247:case 237:case 250:case 264:case 263:case 270:case 269:case 259:case 254:case 255:case 256:case 258:case 257:return!0}return!1}(e);case 6:return function(e){return 294===e.kind}(e);case 4:return function(e){if(e)switch(e.kind){case 171:case 165:case 172:case 163:case 170:return!0}return!1}(e);case 8:return function(e){if(251!==e.kind)return!1;var t=e;return void 0===t.initializer}(e);case 17:case 16:return function(e){if(161!==e.kind)return!1;var t=e;return void 0===t.initializer}(e)}return!1}(r,t))return r.jsDocCache&&(r.jsDocCache=void 0),r}}function Ht(e){return s.setTextPos(e.end),We(),e}function Kt(t){return function(t){switch(t){case 0:case 1:return Le(e.Diagnostics.Declaration_or_statement_expected);case 2:return Le(e.Diagnostics.case_or_default_expected);case 3:return Le(e.Diagnostics.Statement_expected);case 18:case 4:return Le(e.Diagnostics.Property_or_signature_expected);case 5:return Le(e.Diagnostics.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);case 6:return Le(e.Diagnostics.Enum_member_expected);case 7:return Le(e.Diagnostics.Expression_expected);case 8:return e.isKeyword(Ve())?Le(e.Diagnostics._0_is_not_allowed_as_a_variable_declaration_name,e.tokenToString(Ve())):Le(e.Diagnostics.Variable_declaration_expected);case 9:return Le(e.Diagnostics.Property_destructuring_pattern_expected);case 10:return Le(e.Diagnostics.Array_element_destructuring_pattern_expected);case 11:return Le(e.Diagnostics.Argument_expression_expected);case 12:return Le(e.Diagnostics.Property_assignment_expected);case 15:return Le(e.Diagnostics.Expression_or_comma_expected);case 17:case 16:return Le(e.Diagnostics.Parameter_declaration_expected);case 19:return Le(e.Diagnostics.Type_parameter_declaration_expected);case 20:return Le(e.Diagnostics.Type_argument_expected);case 21:return Le(e.Diagnostics.Type_expected);case 22:return Le(e.Diagnostics.Unexpected_token_expected);case 23:case 13:case 14:return Le(e.Diagnostics.Identifier_expected);default:;}}(t),!!function(){for(var e=0;e<24;e++)if(F&1<<e&&(Ft(e,!0)||Ut(e)))return!0;return!1}()||(We(),!1)}function Wt(e,t,r){var n=F;F|=1<<e;for(var i=[],a=qe(),o=-1;;)if(Ft(e,!1)){var c=s.getStartPos();if(i.push(Jt(e,t)),o=s.getTokenPos(),st(27))continue;if(o=-1,Ut(e))break;at(27,Gt(e)),r&&26===Ve()&&!s.hasPrecedingLineBreak()&&We(),c===s.getStartPos()&&We()}else{if(Ut(e))break;if(Kt(e))break}return F=n,mt(i,a,void 0,o>=0)}function Gt(t){return 6===t?e.Diagnostics.An_enum_member_name_must_be_followed_by_a_or:void 0}function $t(){var e=mt([],qe());return e.isMissingList=!0,e}function Yt(e,t,r,n){if(at(r)){var i=Wt(e,t);return at(n),i}return $t()}function Xt(e,t){for(var r=qe(),n=e?kt(t):bt(t),i=qe();st(24);){if(29===Ve()){n.jsdocDotPos=i;break}i=qe(),n=gt(q.createQualifiedName(n,Zt(e,!1)),r)}return n}function Qt(e,t){return gt(q.createQualifiedName(e,t),e.pos)}function Zt(t,r){if(s.hasPrecedingLineBreak()&&e.tokenIsIdentifierOrKeyword(Ve())&&tt(pi))return _t(78,!0,e.Diagnostics.Identifier_expected);if(79===Ve()){var n=Dt();return r?n:_t(78,!0,e.Diagnostics.Identifier_expected)}return t?kt():bt()}function er(e){var t=qe();return gt(q.createTemplateExpression(or(e),function(e){var t,r=qe(),n=[];do{t=ir(e),n.push(t)}while(16===t.literal.kind);return mt(n,r)}(e)),t)}function tr(){var e=qe();return gt(q.createTemplateLiteralType(or(!1),function(){var e,t=qe(),r=[];do{e=rr(),r.push(e)}while(16===e.literal.kind);return mt(r,t)}()),e)}function rr(){var e=qe();return gt(q.createTemplateLiteralTypeSpan(ln(),nr(!1)),e)}function nr(t){return 19===Ve()?(function(e){C=s.reScanTemplateToken(e)}(t),r=sr(Ve()),e.Debug.assert(16===r.kind||17===r.kind,"Template fragment has wrong token kind"),r):ut(17,e.Diagnostics._0_expected,e.tokenToString(19));var r}function ir(e){var t=qe();return gt(q.createTemplateSpan(ke(_n),nr(e)),t)}function ar(){return sr(Ve())}function or(t){t&&Ye();var r=sr(Ve());return e.Debug.assert(15===r.kind,"Template head has wrong token kind"),r}function sr(t){var r=qe(),n=e.isTemplateLiteralKind(t)?q.createTemplateLiteralLikeNode(t,s.getTokenValue(),function(e){var t=14===e||17===e,r=s.getTokenText();return r.substring(1,r.length-(s.isUnterminated()?0:t?1:2))}(t),2048&s.getTokenFlags()):8===t?q.createNumericLiteral(s.getTokenValue(),s.getNumericLiteralFlags()):10===t?q.createStringLiteral(s.getTokenValue(),void 0,s.hasExtendedUnicodeEscape()):e.isLiteralKind(t)?q.createLiteralLikeNode(t,s.getTokenValue()):e.Debug.fail();return s.hasExtendedUnicodeEscape()&&(n.hasExtendedUnicodeEscape=!0),s.isUnterminated()&&(n.isUnterminated=!0),We(),gt(n,r)}function cr(){return Xt(!0,e.Diagnostics.Type_expected)}function lr(){if(!s.hasPrecedingLineBreak()&&29===Xe())return Yt(20,ln,29,31)}function ur(){var e=qe();return gt(q.createTypeReferenceNode(cr(),lr()),e)}function dr(t){switch(t.kind){case 174:return e.nodeIsMissing(t.typeName);case 175:case 176:var r=t,n=r.parameters,i=r.type;return!!n.isMissingList||dr(i);case 187:return dr(t.type);default:return!1}}function pr(){var e=qe();return We(),gt(q.createThisTypeNode(),e)}function fr(){var e,t=qe();return 108!==Ve()&&103!==Ve()||(e=kt(),at(58)),gt(q.createParameterDeclaration(void 0,void 0,void 0,e,void 0,mr(),void 0),t)}function mr(){s.setInJSDocType(!0);var e=qe();if(st(140)){var t=q.createJSDocNamepathType(void 0);e:for(;;)switch(Ve()){case 19:case 1:case 27:case 5:break e;default:Ge()}return s.setInJSDocType(!1),gt(t,e)}var r=st(25),n=sn();return s.setInJSDocType(!1),r&&(n=gt(q.createJSDocVariadicType(n),e)),62===Ve()?(We(),gt(q.createJSDocOptionalType(n),e)):n}function gr(e){var t,r,n=qe(),i=void 0!==e?function(e){I++;var t=ht(j.type);return aa(q.createIdentifier(t),e,e)}(e):bt();st(94)&&(Yr()||!gn()?t=ln():r=Nn());var a=st(62)?ln():void 0,o=q.createTypeParameterDeclaration(i,t,a);return o.expression=r,void 0!==e?aa(o,e,e):gt(o,n)}function _r(){if(29===Ve())return Yt(19,gr,29,31)}function hr(e){return mt([gr(e)],qe())}function yr(e,t){if(!(131072&R))return mt([un(e,t)],qe())}function vr(t){return 25===Ve()||Ai()||e.isModifierKind(Ve())||59===Ve()||Yr(!t)}function br(){return xr(!0)}function kr(){return xr(!1)}function xr(t){var r=qe(),n=Je();if(108===Ve())return X(gt(q.createParameterDeclaration(void 0,void 0,void 0,yt(!0),void 0,fn(),void 0),r),n);var i=t?xe(Hi):Hi(),a=J;J=!1;var o=Wi(),s=X(gt(q.createParameterDeclaration(i,o,ct(25),function(t){var r=Ni(e.Diagnostics.Private_identifiers_cannot_be_used_as_parameters);return 0===e.getFullWidth(r)&&!e.some(t)&&e.isModifierKind(Ve())&&We(),r}(o),ct(57),fn(),hn()),r),n);return J=a,s}function Sr(t,r){if(function(t,r){if(38===t)return at(t),!0;if(st(58))return!0;if(r&&38===Ve())return Le(e.Diagnostics._0_expected,e.tokenToString(58)),We(),!0;return!1}(t,r))return sn()}function wr(e){var t=De(),r=Ce();ce(!!(1&e)),ue(!!(2&e));var n=32&e?Wt(17,fr):Wt(16,r?br:kr);return ce(t),ue(r),n}function Dr(e){if(!at(20))return $t();var t=wr(e);return at(21),t}function Er(){st(27)||ft()}function Tr(e){var t=qe(),r=Je();171===e&&at(103);var n=_r(),i=Dr(4),a=Sr(58,!0);return Er(),X(gt(170===e?q.createCallSignature(n,i,a):q.createConstructSignature(n,i,a),t),r)}function Cr(){return 22===Ve()&&tt(Ar)}function Ar(){if(We(),25===Ve()||23===Ve())return!0;if(e.isModifierKind(Ve())){if(We(),it())return!0}else{if(!it())return!1;We()}return 58===Ve()||27===Ve()||57===Ve()&&(We(),58===Ve()||27===Ve()||23===Ve())}function Nr(e,t,r,n){var i=Yt(16,kr,22,23),a=fn();return Er(),X(gt(q.createIndexSignature(r,n,i,a),e),t)}function Pr(){if(20===Ve()||29===Ve())return!0;for(var t=!1;e.isModifierKind(Ve());)t=!0,We();return 22===Ve()||(xt()&&(t=!0,We()),!!t&&(20===Ve()||29===Ve()||57===Ve()||58===Ve()||27===Ve()||pt()))}function Ir(){if(20===Ve()||29===Ve())return Tr(170);if(103===Ve()&&tt(Fr))return Tr(171);var e=qe(),t=Je(),r=Wi();return Cr()?Nr(e,t,void 0,r):function(e,t,r){var n,i=wt(),a=ct(57);if(20===Ve()||29===Ve()){var o=_r(),s=Dr(4),c=Sr(58,!0);n=q.createMethodSignature(r,i,a,o,s,c)}else c=fn(),n=q.createPropertySignature(r,i,a,c),62===Ve()&&(n.initializer=hn());return Er(),X(gt(n,e),t)}(e,t,r)}function Fr(){return We(),20===Ve()||29===Ve()}function Or(){return 24===We()}function Rr(){switch(We()){case 20:case 29:case 24:return!0}return!1}function Mr(){var e;return at(18)?(e=qt(4,Ir),at(19)):e=$t(),e}function Lr(){return We(),39===Ve()||40===Ve()?143===We():(143===Ve()&&We(),22===Ve()&&Rt()&&101===We())}function jr(){var e,t=qe();at(18),143!==Ve()&&39!==Ve()&&40!==Ve()||143!==(e=dt()).kind&&at(143),at(22);var r,n=function(){var e=qe(),t=kt();at(101);var r=ln();return gt(q.createTypeParameterDeclaration(t,r,void 0),e)}(),i=st(127)?ln():void 0;at(23),57!==Ve()&&39!==Ve()&&40!==Ve()||57!==(r=dt()).kind&&at(57);var a=fn();return ft(),at(19),gt(q.createMappedTypeNode(e,n,i,r,a),t)}function Br(){var t=qe();if(st(25))return gt(q.createRestTypeNode(ln()),t);var r=ln();if(e.isJSDocNullableType(r)&&r.pos===r.type.pos){var n=q.createOptionalTypeNode(r.type);return e.setTextRange(n,r),n.flags=r.flags,n}return r}function zr(){return 58===We()||57===Ve()&&58===We()}function Ur(){return 25===Ve()?e.tokenIsIdentifierOrKeyword(We())&&zr():e.tokenIsIdentifierOrKeyword(Ve())&&zr()}function qr(){if(tt(Ur)){var e=qe(),t=Je(),r=ct(25),n=kt(),i=ct(57);at(58);var a=Br();return X(gt(q.createNamedTupleMember(r,n,i,a),e),t)}return Br()}function Jr(){var e=qe(),t=Je(),r=function(){var e;if(126===Ve()){var t=qe();We(),e=mt([gt(q.createToken(126),t)],t)}return e}(),n=st(103),i=_r(),a=Dr(4),o=Sr(38,!1),s=n?q.createConstructorTypeNode(r,i,a,o):q.createFunctionTypeNode(i,a,o);return n||(s.modifiers=r),X(gt(s,e),t)}function Vr(){var e=dt();return 24===Ve()?void 0:e}function Hr(e){var t=qe();e&&We();var r=110===Ve()||95===Ve()||104===Ve()?dt():sr(Ve());return e&&(r=gt(q.createPrefixUnaryExpression(40,r),t)),gt(q.createLiteralTypeNode(r),t)}function Kr(){return We(),100===Ve()}function Wr(){g|=1048576;var e=qe(),t=st(112);at(100),at(20);var r=ln();at(21);var n=st(24)?cr():void 0,i=lr();return gt(q.createImportTypeNode(r,n,i,t),e)}function Gr(){return We(),8===Ve()||9===Ve()}function $r(){switch(Ve()){case 129:case 153:case 148:case 145:case 156:case 149:case 132:case 151:case 142:case 146:return rt(Vr)||ur();case 65:s.reScanAsteriskEqualsToken();case 41:return r=qe(),We(),gt(q.createJSDocAllType(),r);case 60:s.reScanQuestionToken();case 57:return function(){var e=qe();return We(),27===Ve()||19===Ve()||21===Ve()||31===Ve()||62===Ve()||51===Ve()?gt(q.createJSDocUnknownType(),e):gt(q.createJSDocNullableType(ln()),e)}();case 98:return function(){var e=qe(),t=Je();if(tt(ua)){We();var r=Dr(36),n=Sr(58,!1);return X(gt(q.createJSDocFunctionType(r,n),e),t)}return gt(q.createTypeReferenceNode(kt(),void 0),e)}();case 53:return function(){var e=qe();return We(),gt(q.createJSDocNonNullableType($r()),e)}();case 14:case 10:case 8:case 9:case 110:case 95:case 104:return Hr();case 40:return tt(Gr)?Hr(!0):ur();case 114:return dt();case 108:var e=pr();return 138!==Ve()||s.hasPrecedingLineBreak()?e:(t=e,We(),gt(q.createTypePredicateNode(void 0,t,ln()),t.pos));case 112:return tt(Kr)?Wr():function(){var e=qe();return at(112),gt(q.createTypeQueryNode(Xt(!0)),e)}();case 18:return tt(Lr)?jr():function(){var e=qe();return gt(q.createTypeLiteralNode(Mr()),e)}();case 22:return function(){var e=qe();return gt(q.createTupleTypeNode(Yt(21,qr,22,23)),e)}();case 20:return function(){var e=qe();at(20);var t=ln();return at(21),gt(q.createParenthesizedType(t),e)}();case 100:return Wr();case 128:return tt(pi)?function(){var e=qe(),t=ut(128),r=108===Ve()?pr():bt(),n=st(138)?ln():void 0;return gt(q.createTypePredicateNode(t,r,n),e)}():ur();case 15:return tr();default:return ur()}var t,r}function Yr(e){switch(Ve()){case 129:case 153:case 148:case 145:case 156:case 132:case 143:case 149:case 152:case 114:case 151:case 104:case 108:case 112:case 142:case 18:case 22:case 29:case 51:case 50:case 103:case 10:case 8:case 9:case 110:case 95:case 146:case 41:case 57:case 53:case 25:case 136:case 100:case 128:case 14:case 15:return!0;case 98:return!e;case 40:return!e&&tt(Gr);case 20:return!e&&tt(Xr);default:return it()}}function Xr(){return We(),21===Ve()||vr(!1)||Yr()}function Qr(){var e=qe();return at(136),gt(q.createInferTypeNode(function(){var e=qe();return gt(q.createTypeParameterDeclaration(bt(),void 0,void 0),e)}()),e)}function Zr(){var e=Ve();switch(e){case 139:case 152:case 143:return function(e){var t=qe();return at(e),gt(q.createTypeOperatorNode(e,Zr()),t)}(e);case 136:return Qr()}return function(){for(var e=qe(),t=$r();!s.hasPrecedingLineBreak();)switch(Ve()){case 53:We(),t=gt(q.createJSDocNonNullableType(t),e);break;case 57:if(tt(zt))return t;We(),t=gt(q.createJSDocNullableType(t),e);break;case 22:if(at(22),Yr()){var r=ln();at(23),t=gt(q.createIndexedAccessTypeNode(t,r),e)}else at(23),t=gt(q.createArrayTypeNode(t),e);break;default:return t}return t}()}function en(t){if(an()){var r=Jr();return ze(r,e.isFunctionTypeNode(r)?t?e.Diagnostics.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:e.Diagnostics.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:t?e.Diagnostics.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:e.Diagnostics.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type),r}}function tn(e,t,r){var n=qe(),i=51===e,a=st(e),o=a&&en(i)||t();if(Ve()===e||a){for(var s=[o];st(e);)s.push(en(i)||t());o=gt(r(mt(s,n)),n)}return o}function rn(){return tn(50,Zr,q.createIntersectionTypeNode)}function nn(){return We(),103===Ve()}function an(){return 29===Ve()||(!(20!==Ve()||!tt(on))||(103===Ve()||126===Ve()&&tt(nn)))}function on(){if(We(),21===Ve()||25===Ve())return!0;if(function(){if(e.isModifierKind(Ve())&&Wi(),it()||108===Ve())return We(),!0;if(22===Ve()||18===Ve()){var t=w.length;return Ni(),t===w.length}return!1}()){if(58===Ve()||27===Ve()||57===Ve()||62===Ve())return!0;if(21===Ve()&&(We(),38===Ve()))return!0}return!1}function sn(){var e=qe(),t=it()&&rt(cn),r=ln();return t?gt(q.createTypePredicateNode(void 0,t,r),e):r}function cn(){var e=bt();if(138===Ve()&&!s.hasPrecedingLineBreak())return We(),e}function ln(){return ve(40960,dn)}function un(e,t){var r=40960&R;if(r){ae(!1,r);var n=pn(e,t);return ae(!0,r),n}return pn(e,t)}function dn(e){if(an())return Jr();var t=qe(),r=tn(51,rn,q.createUnionTypeNode);if(!e&&!s.hasPrecedingLineBreak()&&st(94)){var n=dn(!0);at(57);var i=dn();at(58);var a=dn();return gt(q.createConditionalTypeNode(r,n,i,a),t)}return r}function pn(e,t){return aa(q.createTypeReferenceNode(aa(q.createIdentifier(t),e,e)),e,e)}function fn(){return st(58)?ln():void 0}function mn(){switch(Ve()){case 108:case 106:case 104:case 110:case 95:case 8:case 9:case 10:case 14:case 15:case 20:case 22:case 18:case 98:case 83:case 103:case 43:case 67:case 78:return!0;case 84:return Ae();case 100:return tt(Rr);default:return it()}}function gn(){if(mn())return!0;switch(Ve()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 45:case 46:case 29:case 131:case 125:case 79:return!0;case 24:return Ie()&&!!L||Fe()&&!!j;default:return!!function(){if(Ee()&&101===Ve())return!1;return e.getBinaryOperatorPrecedence(Ve())>0}()||it()}}function _n(){var e=Te();e&&le(!1);for(var t,r=qe(),n=yn();t=ct(27);)n=Cn(n,t,yn(),r);return e&&le(!0),n}function hn(){return st(62)?yn():void 0}function yn(){if(function(){if(125===Ve())return!!De()||tt(gi);return!1}())return function(){var e=qe();return We(),s.hasPrecedingLineBreak()||41!==Ve()&&!gn()?gt(q.createYieldExpression(void 0,void 0),e):gt(q.createYieldExpression(ct(41),yn()),e)}();var t=function(){var e=function(){if(20===Ve()||29===Ve()||130===Ve())return tt(bn);if(38===Ve())return 1;return 0}();if(0===e)return;return 1===e?Sn(!0):rt(kn)}()||function(){if(130===Ve()&&1===tt(xn)){var e=qe(),t=Gi();return vn(e,Dn(0),t)}return}();if(t)return t;var r=qe(),n=Dn(0);return 78===n.kind&&38===Ve()?vn(r,n,void 0):e.isLeftHandSideExpression(n)&&e.isAssignmentOperator($e())?Cn(n,dt(),yn(),r):Ae()&&e.isCallExpression(n)&&18===Ve()?function(e,t){var r=e.expression,n=oi(0);return gt(q.createEtsComponentExpression(r,e.arguments,n),t)}(n,r):function(t,r){var n,i=ct(57);if(!i)return t;return gt(q.createConditionalExpression(t,i,ve(l,yn),n=ut(58),e.nodeIsPresent(n)?yn():_t(78,!1,e.Diagnostics._0_expected,e.tokenToString(58))),r)}(n,r)}function vn(t,r,n){e.Debug.assert(38===Ve(),"parseSimpleArrowFunctionExpression should only have been called if we had a =>");var i=q.createParameterDeclaration(void 0,void 0,void 0,r,void 0,void 0,void 0);gt(i,r.pos);var a=mt([i],i.pos,i.end),o=ut(38),s=wn(!!n);return re(gt(q.createArrowFunction(n,void 0,a,void 0,o,s),t))}function bn(){if(130===Ve()){if(We(),s.hasPrecedingLineBreak())return 0;if(20!==Ve()&&29!==Ve())return 0}var t=Ve(),r=We();if(20===t){if(21===r)switch(We()){case 38:case 58:case 18:return 1;default:return 0}if(22===r||18===r)return 2;if(25===r)return 1;if(e.isModifierKind(r)&&130!==r&&tt(Rt))return 1;if(!it()&&108!==r)return 0;switch(We()){case 58:return 1;case 57:return We(),58===Ve()||27===Ve()||62===Ve()||21===Ve()?1:0;case 27:case 62:case 21:return 2}return 0}if(e.Debug.assert(29===t),!it())return 0;if(1===S){var n=tt((function(){var e=We();if(94===e)switch(We()){case 62:case 31:return!1;default:return!0}else if(27===e)return!0;return!1}));return n?1:0}return 2}function kn(){var t=s.getTokenPos();if(!(null==O?void 0:O.has(t))){var r=Sn(!1);return r||(O||(O=new e.Set)).add(t),r}}function xn(){if(130===Ve()){if(We(),s.hasPrecedingLineBreak()||38===Ve())return 0;var e=Dn(0);if(!s.hasPrecedingLineBreak()&&78===e.kind&&38===Ve())return 1}return 0}function Sn(t){var r,n=qe(),i=Je(),a=Gi(),o=e.some(a,e.isAsyncModifier)?2:0,s=_r();if(at(20)){if(r=wr(o),!at(21)&&!t)return}else{if(!t)return;r=$t()}var c=Sr(58,!1);if(!c||t||!dr(c)){var l=c&&e.isJSDocFunctionType(c);if(t||38===Ve()||!l&&18===Ve()){var u=Ve(),d=ut(38),p=38===u||18===u?wn(e.some(a,e.isAsyncModifier)):bt();return X(gt(q.createArrowFunction(a,s,r,c,d,p),n),i)}}}function wn(e){if(18===Ve())return oi(e?2:0);if(26!==Ve()&&98!==Ve()&&83!==Ve()&&(!Ae()||84!==Ve())&&yi()&&(18===Ve()||98===Ve()||83===Ve()||Ae()&&84===Ve()||59===Ve()||!gn()))return oi(16|(e?2:0));var t=J;J=!1;var r=e?xe(yn):ve(32768,yn);return J=t,r}function Dn(e){var t=qe();return Tn(e,Nn(),t)}function En(e){return 101===e||157===e}function Tn(t,r,n){for(;;){$e();var i=e.getBinaryOperatorPrecedence(Ve());if(!(42===Ve()?i>=t:i>t))break;if(101===Ve()&&Ee())break;if(127===Ve()){if(s.hasPrecedingLineBreak())break;We(),a=r,o=ln(),r=gt(q.createAsExpression(a,o),a.pos)}else r=Cn(r,dt(),Dn(i),n)}var a,o;return r}function Cn(e,t,r,n){return gt(q.createBinaryExpression(e,t,r),n)}function An(){var e=qe();return gt(q.createPrefixUnaryExpression(Ve(),Ke(Pn)),e)}function Nn(){if(function(){switch(Ve()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 131:return!1;case 29:if(1!==S)return!1;default:return!0}}()){var t=qe(),r=In();return 42===Ve()?Tn(e.getBinaryOperatorPrecedence(Ve()),r,t):r}var n=Ve(),i=Pn();if(42===Ve()){t=e.skipTrivia(b,i.pos);var a=i.end;207===i.kind?Be(t,a,e.Diagnostics.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):Be(t,a,e.Diagnostics.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,e.tokenToString(n))}return i}function Pn(){switch(Ve()){case 39:case 40:case 54:case 53:return An();case 89:return e=qe(),gt(q.createDeleteExpression(Ke(Pn)),e);case 112:return function(){var e=qe();return gt(q.createTypeOfExpression(Ke(Pn)),e)}();case 114:return function(){var e=qe();return gt(q.createVoidExpression(Ke(Pn)),e)}();case 29:return function(){var e=qe();at(29);var t=ln();at(31);var r=Pn();return gt(q.createTypeAssertion(t,r),e)}();case 131:if(131===Ve()&&(Ce()||tt(gi)))return function(){var e=qe();return gt(q.createAwaitExpression(Ke(Pn)),e)}();default:return In()}var e}function In(){if(45===Ve()||46===Ve()){var t=qe();return gt(q.createPrefixUnaryExpression(Ve(),Ke(Fn)),t)}if(1===S&&29===Ve()&&tt(Lt))return Rn(!0);var r=Fn();if(e.Debug.assert(e.isLeftHandSideExpression(r)),(45===Ve()||46===Ve())&&!s.hasPrecedingLineBreak()){var n=Ve();return We(),gt(q.createPostfixUnaryExpression(r,n),r.pos)}return r}function Fn(){var t,r=qe();return 100===Ve()?tt(Fr)?(g|=1048576,t=dt()):tt(Or)?(We(),We(),t=gt(q.createMetaProperty(100,kt()),r),g|=2097152):t=On():t=106===Ve()?function(){var t=qe(),r=dt();if(29===Ve()){var n=qe();void 0!==rt(Yn)&&Be(n,qe(),e.Diagnostics.super_may_not_use_type_arguments)}if(20===Ve()||24===Ve()||22===Ve())return r;return ut(24,e.Diagnostics.super_must_be_followed_by_an_argument_list_or_member_access),gt(q.createPropertyAccessExpression(r,Zt(!0,!0)),t)}():On(),Gn(r,t)}function On(){var e=qe();return Hn(e,Ie()&&L&&24===Ve()?aa(q.createIdentifier(L.instance,void 0,78),e,e):Fe()&&j&&24===Ve()?aa(q.createIdentifier(j.instance,void 0,78),e,e):Me()&&z&&24===Ve()?aa(q.createIdentifier(z+"Instance",void 0,78),e,e):Xn(),!0)}function Rn(t,r){var n,i=qe(),a=function(e){var t=qe();if(at(29),31===Ve())return Ze(),gt(q.createJsxOpeningFragment(),t);var r,n=jn(),i=131072&R?void 0:na(),a=function(){var e=qe();return gt(q.createJsxAttributes(qt(13,zn)),e)}();31===Ve()?(Ze(),r=q.createJsxOpeningElement(n,i,a)):(at(43),e?at(31):(at(31,void 0,!1),Ze()),r=q.createJsxSelfClosingElement(n,i,a));return gt(r,t)}(t);if(278===a.kind){var o=Ln(a),s=function(e){var t=qe();at(30);var r=jn();e?at(31):(at(31,void 0,!1),Ze());return gt(q.createJsxClosingElement(r),t)}(t);E(a.tagName,s.tagName)||ze(s,e.Diagnostics.Expected_corresponding_JSX_closing_tag_for_0,e.getTextOfNodeFromSourceText(b,a.tagName)),n=gt(q.createJsxElement(a,o,s),i)}else 281===a.kind?n=gt(q.createJsxFragment(a,Ln(a),function(t){var r=qe();at(30),e.tokenIsIdentifierOrKeyword(Ve())&&ze(jn(),e.Diagnostics.Expected_corresponding_closing_tag_for_JSX_fragment);t?at(31):(at(31,void 0,!1),Ze());return gt(q.createJsxJsxClosingFragment(),r)}(t)),i):(e.Debug.assert(277===a.kind),n=a);if(t&&29===Ve()){var c=void 0===r?n.pos:r,l=rt((function(){return Rn(!0,c)}));if(l){var u=_t(27,!1);return e.setTextRangePosWidth(u,l.pos,0),Be(e.skipTrivia(b,c),l.end,e.Diagnostics.JSX_expressions_must_have_one_parent_element),gt(q.createBinaryExpression(n,u,l),i)}}return n}function Mn(t,r){switch(r){case 1:if(e.isJsxOpeningFragment(t))ze(t,e.Diagnostics.JSX_fragment_has_no_corresponding_closing_tag);else{var n=t.tagName;Be(e.skipTrivia(b,n.pos),n.end,e.Diagnostics.JSX_element_0_has_no_corresponding_closing_tag,e.getTextOfNodeFromSourceText(b,t.tagName))}return;case 30:case 7:return;case 11:case 12:return i=qe(),a=q.createJsxText(s.getTokenValue(),12===C),C=s.scanJsxToken(),gt(a,i);case 18:return Bn(!1);case 29:return Rn(!1);default:return e.Debug.assertNever(r)}var i,a}function Ln(e){var t=[],r=qe(),n=F;for(F|=16384;;){var i=Mn(e,C=s.reScanJsxToken());if(!i)break;t.push(i)}return F=n,mt(t,r)}function jn(){var e=qe();Qe();for(var t=108===Ve()?dt():kt();st(24);)t=gt(q.createPropertyAccessExpression(t,Zt(!0,!1)),e);return t}function Bn(e){var t,r,n=qe();if(at(18))return 19!==Ve()&&(t=ct(25),r=_n()),e?at(19):at(19,void 0,!1)&&Ze(),gt(q.createJsxExpression(t,r),n)}function zn(){if(18===Ve())return function(){var e=qe();at(18),at(25);var t=_n();return at(19),gt(q.createJsxSpreadAttribute(t),e)}();Qe();var e=qe();return gt(q.createJsxAttribute(kt(),62!==Ve()?void 0:10===(C=s.scanJsxAttributeValue())?ar():Bn(!0)),e)}function Un(){return We(),e.tokenIsIdentifierOrKeyword(Ve())||22===Ve()||Kn()}function qn(t){if(32&t.flags)return!0;if(e.isNonNullExpression(t)){for(var r=t.expression;e.isNonNullExpression(r)&&!(32&r.flags);)r=r.expression;if(32&r.flags){for(;e.isNonNullExpression(t);)t.flags|=32,t=t.expression;return!0}}return!1}function Jn(t,r,n){var i=Zt(!0,!0),a=n||qn(r),o=a?q.createPropertyAccessChain(r,n,i):q.createPropertyAccessExpression(r,i);return a&&e.isPrivateIdentifier(o.name)&&ze(o.name,e.Diagnostics.An_optional_chain_cannot_contain_private_identifiers),gt(o,t)}function Vn(t,r,n){var i;if(23===Ve())i=_t(78,!0,e.Diagnostics.An_element_access_expression_should_take_an_argument);else{var a=ke(_n);e.isStringOrNumericLiteralLike(a)&&(a.text=ht(a.text)),i=a}return at(23),gt(n||qn(r)?q.createElementAccessChain(r,n,i):q.createElementAccessExpression(r,i),t)}function Hn(t,r,n){for(;;){var i=void 0,a=!1;if(n&&28===Ve()&&tt(Un)?(i=ut(28),a=e.tokenIsIdentifierOrKeyword(Ve())):a=st(24),a)r=Jn(t,r,i);else if(i||53!==Ve()||s.hasPrecedingLineBreak())if(!i&&Te()||!st(22)){if(!Kn())return r;r=Wn(t,r,i,void 0)}else r=Vn(t,r,i);else We(),r=gt(q.createNonNullExpression(r),t)}}function Kn(){return 14===Ve()||15===Ve()}function Wn(e,t,r,n){var i=q.createTaggedTemplateExpression(t,n,14===Ve()?(Ye(),ar()):er(!0));return(r||32&t.flags)&&(i.flags|=32),i.questionDotToken=r,gt(i,e)}function Gn(t,r){for(var n,i,a,o,s;;){r=Hn(t,r,!0);var l=ct(28);if(131072&R||29!==Ve()&&47!==Ve()){if(20===Ve()){var u=void 0;if(((Oe()||Re())&&Ne()||Re())&&e.isPropertyAccessExpression(r)){var d=e.getRootEtsComponent(r);if(d){var p=d.expression.escapedText.toString();(s=e.getTextOfPropertyName(r.name).toString())===(null===(i=null===(n=null==c?void 0:c.ets)||void 0===n?void 0:n.styles)||void 0===i?void 0:i.property)?(ye(!0),z=p):(ye(!1),z=void 0),u=yr(t,p+"Attribute")}else Me()&&z&&(u=yr(t,z+"Attribute"))}f=$n();r=gt(l||qn(r)?q.createCallChain(r,l,u,f):q.createCallExpression(r,u,f),t);continue}}else if(u=rt(Yn)){if(Kn()){r=Wn(t,r,l,u);continue}var f=$n();r=gt(l||qn(r)?q.createCallChain(r,l,u,f):q.createCallExpression(r,u,f),t);continue}if(l){var m=_t(78,!1,e.Diagnostics.Identifier_expected);r=gt(q.createPropertyAccessChain(r,l,m),t)}break}return s===(null===(o=null===(a=null==c?void 0:c.ets)||void 0===a?void 0:a.styles)||void 0===o?void 0:o.property)&&(ye(!1),z=void 0),r}function $n(){at(20);var e=Wt(11,Zn);return at(21),e}function Yn(){if(!(131072&R)&&29===Xe()){We();var e=Wt(20,ln);if(at(31))return e&&function(){switch(Ve()){case 20:case 14:case 15:case 24:case 21:case 23:case 58:case 26:case 57:case 34:case 36:case 35:case 37:case 55:case 56:case 60:case 52:case 50:case 51:case 19:case 1:return!0;default:return!1}}()?e:void 0}}function Xn(){switch(Ve()){case 8:case 9:case 10:case 14:return ar();case 108:case 106:case 104:case 110:case 95:return dt();case 20:return function(){var e=qe(),t=Je();at(20);var r=ke(_n);return at(21),X(gt(q.createParenthesizedExpression(r),e),t)}();case 22:return ei();case 18:return ri();case 130:if(!tt(mi))break;return ni();case 83:return Qi(qe(),Je(),void 0,void 0,223);case 98:return ni();case 103:return function(){fe(Pe());var t=qe();if(at(103),st(24)){var r=kt();return gt(q.createMetaProperty(103,r),t)}var n,i,a=qe(),o=Xn();for(;;){o=Hn(a,o,!1),n=rt(Yn),Kn()&&(e.Debug.assert(!!n,"Expected a type argument list; all plain tagged template starts should be consumed in 'parseMemberExpressionRest'"),o=Wn(a,o,void 0,n),n=void 0);break}20===Ve()?i=$n():n&&Be(t,s.getStartPos(),e.Diagnostics.A_new_expression_with_type_arguments_must_always_be_followed_by_a_parenthesized_argument_list);return fe(!1),gt(q.createNewExpression(o,n,i),t)}();case 43:case 67:if(13===(C=s.reScanSlashToken()))return ar();break;case 15:return er(!1)}return!Pe()||!(null!==(o=null===(a=c.ets)||void 0===a?void 0:a.components)&&void 0!==o?o:[]).includes(s.getTokenText())||Ae()&&we(256)?bt(e.Diagnostics.Expression_expected):(t=qe(),r=vt(),n=$n(),i=18===Ve()?oi(0):void 0,gt(q.createEtsComponentExpression(r,n,i),t));var t,r,n,i,a,o}function Qn(){return 25===Ve()?function(){var e=qe();at(25);var t=yn();return gt(q.createSpreadElement(t),e)}():27===Ve()?gt(q.createOmittedExpression(),qe()):yn()}function Zn(){return ve(l,Qn)}function ei(){var e=qe();at(22);var t=s.hasPrecedingLineBreak(),r=Wt(15,Qn);return at(23),gt(q.createArrayLiteralExpression(r,t),e)}function ti(){var e=qe(),t=Je();if(ct(25)){var r=yn();return X(gt(q.createSpreadAssignment(r),e),t)}var n=Hi(),i=Wi();if(Et(135))return Ui(e,t,n,i,168);if(Et(147))return Ui(e,t,n,i,169);var a,o=ct(41),s=it(),c=wt(),l=ct(57),u=ct(53);if(o||20===Ve()||29===Ve())return ji(e,t,n,i,o,c,l,u);if(s&&58!==Ve()){var d=ct(62),p=d?ke(yn):void 0;(a=q.createShorthandPropertyAssignment(c,p)).equalsToken=d}else{at(58);var f=ke(yn);a=q.createPropertyAssignment(c,f)}return a.decorators=n,a.modifiers=i,a.questionToken=l,a.exclamationToken=u,X(gt(a,e),t)}function ri(){var t=qe(),r=s.getTokenPos();at(18);var n=s.hasPrecedingLineBreak(),i=Wt(12,ti,!0);if(!at(19)){var a=e.lastOrUndefined(w);a&&a.code===e.Diagnostics._0_expected.code&&e.addRelatedInfo(a,e.createDetachedDiagnostic(p,r,1,e.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here))}return gt(q.createObjectLiteralExpression(i,n),t)}function ni(){var t=Te();t&&le(!1);var r=qe(),n=Je(),i=Wi();at(98);var a=ct(41),o=a?1:0,s=e.some(i,e.isAsyncModifier)?2:0,c=o&&s?be(40960,ii):o?function(e){return be(8192,e)}(ii):s?xe(ii):ii(),l=_r(),u=Dr(o|s),d=Sr(58,!1),p=oi(o|s);return t&&le(!0),X(gt(q.createFunctionExpression(i,a,c,l,u,d,p),r),n)}function ii(){return nt()?vt():void 0}function ai(t,r){var n=qe(),i=s.getTokenPos();if(at(18,r)||t){var a=s.hasPrecedingLineBreak(),o=qt(1,bi);if(!at(19)){var c=e.lastOrUndefined(w);c&&c.code===e.Diagnostics._0_expected.code&&e.addRelatedInfo(c,e.createDetachedDiagnostic(p,i,1,e.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here))}return gt(q.createBlock(o,a),n)}o=$t();return gt(q.createBlock(o,void 0),n)}function oi(e,t){var r=De();ce(!!(1&e));var n=Ce();ue(!!(2&e));var i=J;J=!1;var a=Te();a&&le(!1);var o=ai(!!(16&e),t);return a&&le(!0),J=i,ce(r),ue(n),o}function si(){var e=qe();at(97);var t,r,n=ct(131);if(at(20),26!==Ve()&&(t=113===Ve()||119===Ve()||85===Ve()?Fi(!0):be(4096,_n)),n?at(157):st(157)){var i=ke(yn);at(21),r=q.createForOfStatement(n,t,i,bi())}else if(st(101)){i=ke(_n);at(21),r=q.createForInStatement(t,i,bi())}else{at(26);var a=26!==Ve()&&21!==Ve()?ke(_n):void 0;at(26);var o=21!==Ve()?ke(_n):void 0;at(21),r=q.createForStatement(t,a,o,bi())}return gt(r,e)}function ci(e){var t=qe();at(243===e?80:86);var r=pt()?void 0:bt();return ft(),gt(243===e?q.createBreakStatement(r):q.createContinueStatement(r),t)}function li(){return 81===Ve()?function(){var e=qe();at(81);var t=ke(_n);at(58);var r=qt(3,bi);return gt(q.createCaseClause(t,r),e)}():function(){var e=qe();at(88),at(58);var t=qt(3,bi);return gt(q.createDefaultClause(t),e)}()}function ui(){var e=qe();at(107),at(20);var t=ke(_n);at(21);var r=function(){var e=qe();at(18);var t=qt(2,li);return at(19),gt(q.createCaseBlock(t),e)}();return gt(q.createSwitchStatement(t,r),e)}function di(){var e=qe();at(111);var t,r=ai(!1),n=82===Ve()?function(){var e,t=qe();at(82),st(20)?(e=Ii(),at(21)):e=void 0;var r=ai(!1);return gt(q.createCatchClause(e,r),t)}():void 0;return n&&96!==Ve()||(at(96),t=ai(!1)),gt(q.createTryStatement(r,n,t),e)}function pi(){return We(),e.tokenIsIdentifierOrKeyword(Ve())&&!s.hasPrecedingLineBreak()}function fi(){return We(),83===Ve()&&!s.hasPrecedingLineBreak()}function mi(){return We(),98===Ve()&&!s.hasPrecedingLineBreak()}function gi(){return We(),(e.tokenIsIdentifierOrKeyword(Ve())||8===Ve()||9===Ve()||10===Ve())&&!s.hasPrecedingLineBreak()}function _i(){for(;;)switch(Ve()){case 113:case 119:case 85:case 98:case 83:case 92:return!0;case 84:return Ae();case 118:case 150:return We(),!s.hasPrecedingLineBreak()&&it();case 140:case 141:return Di();case 126:case 130:case 134:case 121:case 122:case 123:case 143:if(We(),s.hasPrecedingLineBreak())return!1;continue;case 155:return We(),18===Ve()||78===Ve()||93===Ve();case 100:return We(),10===Ve()||41===Ve()||18===Ve()||e.tokenIsIdentifierOrKeyword(Ve());case 93:var t=We();if(150===t&&(t=tt(We)),62===t||41===t||18===t||88===t||127===t)return!0;continue;case 124:We();continue;default:return!1}}function hi(){return tt(_i)}function yi(){switch(Ve()){case 59:case 26:case 18:case 113:case 119:case 98:case 83:case 92:case 99:case 90:case 115:case 97:case 86:case 80:case 105:case 116:case 107:case 109:case 111:case 87:case 82:case 96:case 130:case 134:case 118:case 140:case 141:case 150:case 155:return!0;case 84:return Ae();case 100:return hi()||tt(Rr);case 85:case 93:return hi();case 123:case 121:case 122:case 124:case 143:return hi()||!tt(pi);default:return gn()}}function vi(){return We(),it()||18===Ve()||22===Ve()}function bi(){switch(Ve()){case 26:return t=qe(),at(26),gt(q.createEmptyStatement(),t);case 18:return ai(!1);case 113:return Ri(qe(),Je(),void 0,void 0);case 119:if(tt(vi))return Ri(qe(),Je(),void 0,void 0);break;case 98:return Mi(qe(),Je(),void 0,void 0);case 84:if(Ae())return Xi(qe(),Je(),void 0,void 0);break;case 83:return Yi(qe(),Je(),void 0,void 0);case 99:return function(){var e=qe();at(99),at(20);var t=ke(_n);at(21);var r=bi(),n=st(91)?bi():void 0;return gt(q.createIfStatement(t,r,n),e)}();case 90:return function(){var e=qe();at(90);var t=bi();at(115),at(20);var r=ke(_n);return at(21),st(26),gt(q.createDoStatement(t,r),e)}();case 115:return function(){var e=qe();at(115),at(20);var t=ke(_n);at(21);var r=bi();return gt(q.createWhileStatement(t,r),e)}();case 97:return si();case 86:return ci(242);case 80:return ci(243);case 105:return function(){var e=qe();at(105);var t=pt()?void 0:ke(_n);return ft(),gt(q.createReturnStatement(t),e)}();case 116:return function(){var e=qe();at(116),at(20);var t=ke(_n);at(21);var r=be(16777216,bi);return gt(q.createWithStatement(t,r),e)}();case 107:return ui();case 109:return function(){var e=qe();at(109);var t=s.hasPrecedingLineBreak()?void 0:ke(_n);return void 0===t&&(I++,t=gt(q.createIdentifier(""),qe())),ft(),gt(q.createThrowStatement(t),e)}();case 111:case 82:case 96:return di();case 87:return function(){var e=qe();return at(87),ft(),gt(q.createDebuggerStatement(),e)}();case 59:return xi();case 130:case 118:case 150:case 140:case 141:case 134:case 85:case 92:case 93:case 100:case 121:case 122:case 123:case 126:case 124:case 143:case 155:if(hi())return xi()}var t;return function(){var t,r=qe(),n=Je(),i=20===Ve(),a=ke(_n);return e.isIdentifier(a)&&st(58)?t=q.createLabeledStatement(a,bi()):(ft(),t=q.createExpressionStatement(a),i&&(n=!1)),X(gt(t,r),n)}()}function ki(e){return 134===e.kind}function xi(){var t,r,n=e.some(tt((function(){return Hi(),Wi()})),ki);if(n){var i=be(8388608,(function(){var e=Vt(F);if(e)return Ht(e)}));if(i)return i}var a=qe(),o=Je(),s=Hi();if(98===Ve()||93===Ve())if(e.hasEtsExtendDecoratorNames(s,c)){var l=e.getEtsExtendDecoratorComponentNames(s,c);l.length>0&&(null===(t=c.ets)||void 0===t||t.extend.components.forEach((function(t){var r=t.name,n=t.type,i=t.instance;r===e.last(l)&&(L={name:r,type:n,instance:i})}))),me(!!L)}else if(e.hasEtsStylesDecoratorNames(s,c)){e.getEtsStylesDecoratorComponentNames(s,c).length>0&&(j=null===(r=c.ets)||void 0===r?void 0:r.styles.component),ge(!!j)}else pe(e.isTokenInsideBuilder(s,c));var u=Wi();if(n){for(var d=0,p=u;d<p.length;d++){p[d].flags|=8388608}return be(8388608,(function(){return Si(a,o,s,u)}))}return Si(a,o,s,u)}function Si(e,t,r,n){switch(Ve()){case 113:case 119:case 85:return Ri(e,t,r,n);case 98:return Mi(e,t,r,n);case 83:return Yi(e,t,r,n);case 84:return Ae()?Xi(e,t,r,n):wi(e,r,n);case 118:return function(e,t,r,n){at(118);var i=bt(),a=_r(),o=ea(),s=Mr(),c=q.createInterfaceDeclaration(r,n,i,a,o,s);return X(gt(c,e),t)}(e,t,r,n);case 150:return function(e,t,r,n){at(150);var i=bt(),a=_r();at(62);var o=137===Ve()&&rt(Vr)||ln();ft();var s=q.createTypeAliasDeclaration(r,n,i,a,o);return X(gt(s,e),t)}(e,t,r,n);case 92:return function(e,t,r,n){at(92);var i,a=bt();at(18)?(i=ve(40960,(function(){return Wt(6,oa)})),at(19)):i=$t();var o=q.createEnumDeclaration(r,n,a,i);return X(gt(o,e),t)}(e,t,r,n);case 155:case 140:case 141:return function(e,t,r,n){var i=0;if(155===Ve())return la(e,t,r,n);if(st(141))i|=16;else if(at(140),10===Ve())return la(e,t,r,n);return ca(e,t,r,n,i)}(e,t,r,n);case 100:return function(e,t,r,n){at(100);var i,a=s.getStartPos();it()&&(i=bt());var o,c=!1;154===Ve()||"type"!==(null==i?void 0:i.escapedText)||!it()&&41!==Ve()&&18!==Ve()||(c=!0,i=it()?bt():void 0);if(i&&27!==Ve()&&154!==Ve())return function(e,t,r,n,i,a){at(62);var o=144===Ve()&&tt(ua)?function(){var e=qe();at(144),at(20);var t=pa();return at(21),gt(q.createExternalModuleReference(t),e)}():Xt(!1);ft();var s=q.createImportEqualsDeclaration(r,n,a,i,o),c=X(gt(s,e),t);return c}(e,t,r,n,i,c);(i||41===Ve()||18===Ve())&&(o=function(e,t,r){var n;e&&!st(27)||(n=41===Ve()?function(){var e=qe();at(41),at(127);var t=bt();return gt(q.createNamespaceImport(t),e)}():fa(267));return gt(q.createImportClause(r,e,n),t)}(i,a,c),at(154));var l=pa();ft();var u=q.createImportDeclaration(r,n,o,l);return X(gt(u,e),t)}(e,t,r,n);case 93:switch(We(),Ve()){case 88:case 62:return function(e,t,r,n){var i,a=Ce();ue(!0),st(62)?i=!0:at(88);var o=yn();ft(),ue(a);var s=q.createExportAssignment(r,n,i,o);return X(gt(s,e),t)}(e,t,r,n);case 127:return function(e,t,r,n){at(127),at(141);var i=bt();ft();var a=q.createNamespaceExportDeclaration(i);return a.decorators=r,a.modifiers=n,X(gt(a,e),t)}(e,t,r,n);default:return function(e,t,r,n){var i,a,o=Ce();ue(!0);var c=st(150),l=qe();st(41)?(st(127)&&(i=function(e){return gt(q.createNamespaceExport(kt()),e)}(l)),at(154),a=pa()):(i=fa(271),(154===Ve()||10===Ve()&&!s.hasPrecedingLineBreak())&&(at(154),a=pa()));ft(),ue(o);var u=q.createExportDeclaration(r,n,c,i,a);return X(gt(u,e),t)}(e,t,r,n)}default:return wi(e,r,n)}}function wi(t,r,n){if(r||n){var i=_t(274,!0,e.Diagnostics.Declaration_expected);return e.setTextRangePos(i,t),i.decorators=r,i.modifiers=n,i}}function Di(){return We(),!s.hasPrecedingLineBreak()&&(it()||10===Ve())}function Ei(e,t){if(18===Ve()||!pt())return oi(e,t);ft()}function Ti(){var e=qe();if(27===Ve())return gt(q.createOmittedExpression(),e);var t=ct(25),r=Ni(),n=hn();return gt(q.createBindingElement(t,void 0,r,n),e)}function Ci(){var e,t=qe(),r=ct(25),n=nt(),i=wt();n&&58!==Ve()?(e=i,i=void 0):(at(58),e=Ni());var a=hn();return gt(q.createBindingElement(r,i,e,a),t)}function Ai(){return 18===Ve()||22===Ve()||79===Ve()||nt()}function Ni(e){return 22===Ve()?function(){var e=qe();at(22);var t=Wt(10,Ti);return at(23),gt(q.createArrayBindingPattern(t),e)}():18===Ve()?function(){var e=qe();at(18);var t=Wt(9,Ci);return at(19),gt(q.createObjectBindingPattern(t),e)}():vt(e)}function Pi(){return Ii(!0)}function Ii(t){var r,n=qe(),i=Ni(e.Diagnostics.Private_identifiers_are_not_allowed_in_variable_declarations);t&&78===i.kind&&53===Ve()&&!s.hasPrecedingLineBreak()&&(r=dt());var a=fn(),o=En(Ve())?void 0:hn();return gt(q.createVariableDeclaration(i,r,a,o),n)}function Fi(t){var r,n=qe(),i=0;switch(Ve()){case 113:break;case 119:i|=1;break;case 85:i|=2;break;default:e.Debug.fail()}if(We(),157===Ve()&&tt(Oi))r=$t();else{var a=Ee();se(t),r=Wt(8,t?Ii:Pi),se(a)}return gt(q.createVariableDeclarationList(r,i),n)}function Oi(){return Rt()&&21===We()}function Ri(e,t,r,n){var i=Fi(!1);ft();var a=q.createVariableStatement(n,i);return a.decorators=r,X(gt(a,e),t)}function Mi(t,r,n,i){var a=Ce(),o=e.modifiersToFlags(i);at(98);var l=ct(41),u=512&o?ii():vt();u&&e.hasEtsStylesDecoratorNames(n,c)&&H.set(u.escapedText.toString(),253),he(e.hasEtsBuilderDecoratorNames(n,c));var d=l?1:0,p=256&o?2:0,f=Fe()&&j?hr(s.getStartPos()):_r();1&o&&ue(!0);var m=Dr(d|p),g=s.getStartPos(),_=function(){var e=Sr(58,!1);!e&&L&&Ie()&&(e=aa(q.createTypeReferenceNode(aa(q.createIdentifier(L.type),g,g)),g,g));!e&&j&&Fe()&&(e=aa(q.createTypeReferenceNode(aa(q.createIdentifier(j.type),g,g)),g,g));return e}(),h=Ei(d|p,e.Diagnostics.or_expected);return he(!1),me(!1),L=void 0,ge(!1),j=void 0,pe(Oe()),ue(a),X(gt(q.createFunctionDeclaration(n,i,l,u,f,m,_,h),t),r)}function Li(t,r,n,i){return rt((function(){if(133===Ve()?at(133):10===Ve()&&20===tt(We)?rt((function(){var e=ar();return"constructor"===e.text?e:void 0})):void 0){var a=_r(),o=Dr(0),s=Sr(58,!1),c=Ei(0,e.Diagnostics.or_expected),l=q.createConstructorDeclaration(n,i,o,c);return l.typeParameters=a,l.type=s,X(gt(l,t),r)}}))}function ji(t,r,n,i,a,o,l,u,d){var p,f,m,g,_,h=null===(p=e.getPropertyNameForPropertyNameNode(o))||void 0===p?void 0:p.toString();(_e(h===(null===(g=null===(m=null===(f=null==c?void 0:c.ets)||void 0===f?void 0:f.render)||void 0===m?void 0:m.method)||void 0===g?void 0:g.find((function(e){return"build"===e})))),he(e.hasEtsBuilderDecoratorNames(n,c)),Ne()&&e.hasEtsStylesDecoratorNames(n,c))&&(h&&B&&K.set(h,{structName:B,kind:166}),e.getEtsStylesDecoratorComponentNames(n,c).length>0&&(j=null===(_=c.ets)||void 0===_?void 0:_.styles.component),ge(!!j));pe(Ne()&&(function(e){var t,r,n,i,a=null!==(i=null===(n=null===(r=null===(t=c.ets)||void 0===t?void 0:t.render)||void 0===r?void 0:r.method)||void 0===n?void 0:n.find((function(e){return"build"===e})))&&void 0!==i?i:"build";return 78===e.kind&&e.escapedText===a}(o)||function(t){return e.isTokenInsideBuilder(t,c)}(n)||function(e){var t,r,n,i,a=null!==(i=null===(n=null===(r=null===(t=c.ets)||void 0===t?void 0:t.render)||void 0===r?void 0:r.method)||void 0===n?void 0:n.find((function(e){return"pageTransition"===e})))&&void 0!==i?i:"pageTransition";return 78===e.kind&&e.escapedText===a}(o)));var y=a?1:0,v=e.some(i,e.isAsyncModifier)?2:0,b=Fe()&&j?hr(t):_r(),k=Dr(y|v),x=s.getStartPos(),S=function(){var e=Sr(58,!1);!e&&j&&Fe()&&(e=aa(q.createTypeReferenceNode(aa(q.createIdentifier(j.type),x,x)),x,x));return e}(),w=Ei(y|v,d),D=q.createMethodDeclaration(n,i,a,o,l,b,k,S,w);return D.exclamationToken=u,_e(!1),he(!1),ge(!1),j=void 0,pe(!1),X(gt(D,t),r)}function Bi(e,t,r,n,i,a){var o=a||s.hasPrecedingLineBreak()?void 0:ct(53),c=fn(),l=ve(45056,hn);return ft(),X(gt(q.createPropertyDeclaration(r,n,i,a||o,c,l),e),t)}function zi(t,r,n,i){var a=ct(41),o=wt(),s=ct(57);return a||20===Ve()||29===Ve()?ji(t,r,n,i,a,o,s,void 0,e.Diagnostics.or_expected):Bi(t,r,n,i,o,s)}function Ui(e,t,r,n,i){var a=wt(),o=_r(),s=Dr(0),c=Sr(58,!1),l=Ei(0),u=168===i?q.createGetAccessorDeclaration(r,n,a,s,c,l):q.createSetAccessorDeclaration(r,n,a,s,l);return u.typeParameters=o,c&&169===u.kind&&(u.type=c),X(gt(u,e),t)}function qi(){var t;if(59===Ve())return!0;for(;e.isModifierKind(Ve());){if(t=Ve(),e.isClassMemberModifier(t))return!0;We()}if(41===Ve())return!0;if(xt()&&(t=Ve(),We()),22===Ve())return!0;if(void 0!==t){if(!e.isKeyword(t)||147===t||135===t)return!0;switch(Ve()){case 20:case 29:case 53:case 58:case 62:case 57:return!0;default:return pt()}}return!1}function Ji(){if(Ce()&&131===Ve()){var t=qe(),r=bt(e.Diagnostics.Expression_expected);return We(),Gn(t,Hn(t,r,!0))}return Fn()}function Vi(){var e=qe();if(st(59)){var t=function(e){var t,r,n,i,a,o,l=null!==(n=null===(r=null===(t=c.ets)||void 0===t?void 0:t.extend)||void 0===r?void 0:r.decorator)&&void 0!==n?n:"Extend";78===Ve()&&s.getTokenText()===l&&oe(!0,4);var u=null!==(o=null===(a=null===(i=c.ets)||void 0===i?void 0:i.styles)||void 0===a?void 0:a.decorator)&&void 0!==o?o:"Styles";return 78===Ve()&&s.getTokenText()===u&&oe(!0,8),be(16384,e)}(Ji);return gt(q.createDecorator(t),e)}}function Hi(){for(var t,r,n=qe();r=Vi();)t=e.append(t,r);return t&&mt(t,n)}function Ki(t){var r=qe(),n=Ve();if(85===Ve()&&t){if(!rt(Tt))return}else if(!e.isModifierKind(Ve())||!rt(Ct))return;return gt(q.createToken(n),r)}function Wi(t){for(var r,n,i=qe();n=Ki(t);)r=e.append(r,n);return r&&mt(r,i)}function Gi(){var e;if(130===Ve()){var t=qe();We(),e=mt([gt(q.createToken(130),t)],t)}return e}function $i(){var t=qe();if(26===Ve())return We(),gt(q.createSemicolonClassElement(),t);var r=Je(),n=Hi(),i=Wi(!0);if(Et(135))return Ui(t,r,n,i,168);if(Et(147))return Ui(t,r,n,i,169);if(133===Ve()||10===Ve()){var a=Li(t,r,n,i);if(a)return a}if(Cr())return Nr(t,r,n,i);if(e.tokenIsIdentifierOrKeyword(Ve())||10===Ve()||8===Ve()||41===Ve()||22===Ve()){if(e.some(i,ki)){for(var o=0,s=i;o<s.length;o++){s[o].flags|=8388608}return be(8388608,(function(){return zi(t,r,n,i)}))}return zi(t,r,n,i)}if(n||i){var c=_t(78,!0,e.Diagnostics.Declaration_expected);return Bi(t,r,n,i,c,void 0)}return e.Debug.fail("Should not have attempted to parse class member declaration.")}function Yi(e,t,r,n){return Qi(e,t,r,n,254)}function Xi(t,r,n,i){return function(t,r,n,i){var a,o=Ce();at(84),de(!0);var s=Zi();B=null==s?void 0:s.escapedText.toString();var l=_r();e.some(i,e.isExportModifier)&&ue(!0);var u,d=ea(),p=null===(a=c.ets)||void 0===a?void 0:a.customComponent;!d&&p&&(d=function(e){var t=qe(),r=q.createHeritageClause(94,mt([gt(q.createExpressionWithTypeArguments(gt(q.createIdentifier(e),t,void 0,!0),void 0),t)],t,void 0,!1));return mt([gt(r,t,void 0,!0)],t,void 0,!1)}(p));at(18)?(u=function(e){var t=qt(5,$i),r=[],n=[];t.forEach((function(e){if(r.push(e),164===e.kind){var t=e;n.push(aa(q.createPropertySignature(t.modifiers,t.name,q.createToken(57),t.type)))}}));var i=[];if(n.length){var a=aa(q.createTypeLiteralNode(mt(n,0,0)));i.push(aa(q.createParameterDeclaration(void 0,void 0,void 0,aa(q.createIdentifier("value")),q.createToken(57),a)))}var o=aa(q.createBlock(mt([],0,0))),s=q.createConstructorDeclaration(void 0,void 0,mt(i,0,0),o);return r.unshift(aa(s,e,e)),mt(r,t.pos)}(t),at(19)):u=$t();ue(o);var f=q.createStructDeclaration(n,i,s,l,d,u);return B=void 0,K.clear(),de(!1),X(gt(f,t),r)}(t,r,n,i)}function Qi(t,r,n,i,a){var o=Ce();at(83);var s=Zi(),c=_r();e.some(i,e.isExportModifier)&&ue(!0);var l,u=ea();return at(18)?(l=qt(5,$i),at(19)):l=$t(),ue(o),X(gt(254===a?q.createClassDeclaration(n,i,s,c,u,l):q.createClassExpression(n,i,s,c,u,l),t),r)}function Zi(){return!nt()||117===Ve()&&tt(Mt)?void 0:yt(nt())}function ea(){if(ia())return qt(22,ta)}function ta(){var t=qe(),r=Ve();e.Debug.assert(94===r||117===r),We();var n=Wt(7,ra);return gt(q.createHeritageClause(r,n),t)}function ra(){var e=qe(),t=Fn(),r=na();return gt(q.createExpressionWithTypeArguments(t,r),e)}function na(){return 29===Ve()?Yt(20,ln,29,31):void 0}function ia(){return 94===Ve()||117===Ve()}function aa(e,t,r){return void 0===t&&(t=0),void 0===r&&(r=0),gt(e,t,r,!0)}function oa(){var e=qe(),t=Je(),r=wt(),n=ke(hn);return X(gt(q.createEnumMember(r,n),e),t)}function sa(){var e,t=qe();return at(18)?(e=qt(1,bi),at(19)):e=$t(),gt(q.createModuleBlock(e),t)}function ca(e,t,r,n,i){var a=16&i,o=bt(),s=st(24)?ca(qe(),!1,void 0,void 0,4|a):sa();return X(gt(q.createModuleDeclaration(r,n,o,s,i),e),t)}function la(e,t,r,n){var i,a,o=0;return 155===Ve()?(i=bt(),o|=1024):(i=ar()).text=ht(i.text),18===Ve()?a=sa():ft(),X(gt(q.createModuleDeclaration(r,n,i,a,o),e),t)}function ua(){return 20===We()}function da(){return 43===We()}function pa(){if(10===Ve()){var e=ar();return e.text=ht(e.text),e}return _n()}function fa(e){var t=qe();return gt(267===e?q.createNamedImports(Yt(23,ga,18,19)):q.createNamedExports(Yt(23,ma,18,19)),t)}function ma(){return _a(273)}function ga(){return _a(268)}function _a(t){var r,n,i=qe(),a=e.isKeyword(Ve())&&!it(),o=s.getTokenPos(),c=s.getTextPos(),l=kt();return 127===Ve()?(r=l,at(127),a=e.isKeyword(Ve())&&!it(),o=s.getTokenPos(),c=s.getTextPos(),n=kt()):n=l,268===t&&a&&Be(o,c,e.Diagnostics.Identifier_expected),gt(268===t?q.createImportSpecifier(r,n):q.createExportSpecifier(r,n),i)}function ha(t){return function(t,r){return e.some(t.modifiers,(function(e){return e.kind===r}))}(t,93)||e.isImportEqualsDeclaration(t)&&e.isExternalModuleReference(t.moduleReference)||e.isImportDeclaration(t)||e.isExportAssignment(t)||e.isExportDeclaration(t)?t:void 0}function ya(t){return function(t){return e.isMetaProperty(t)&&100===t.keywordToken&&"meta"===t.name.escapedText}(t)?t:m(t,ya)}t.fixupParentReferences=ne,function(e){e[e.SourceElements=0]="SourceElements",e[e.BlockStatements=1]="BlockStatements",e[e.SwitchClauses=2]="SwitchClauses",e[e.SwitchClauseStatements=3]="SwitchClauseStatements",e[e.TypeMembers=4]="TypeMembers",e[e.ClassMembers=5]="ClassMembers",e[e.EnumMembers=6]="EnumMembers",e[e.HeritageClauseElement=7]="HeritageClauseElement",e[e.VariableDeclarations=8]="VariableDeclarations",e[e.ObjectBindingElements=9]="ObjectBindingElements",e[e.ArrayBindingElements=10]="ArrayBindingElements",e[e.ArgumentExpressions=11]="ArgumentExpressions",e[e.ObjectLiteralMembers=12]="ObjectLiteralMembers",e[e.JsxAttributes=13]="JsxAttributes",e[e.JsxChildren=14]="JsxChildren",e[e.ArrayLiteralMembers=15]="ArrayLiteralMembers",e[e.Parameters=16]="Parameters",e[e.JSDocParameters=17]="JSDocParameters",e[e.RestProperties=18]="RestProperties",e[e.TypeParameters=19]="TypeParameters",e[e.TypeArguments=20]="TypeArguments",e[e.TupleElementTypes=21]="TupleElementTypes",e[e.HeritageClauses=22]="HeritageClauses",e[e.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",e[e.Count=24]="Count"}(Q||(Q={})),function(e){e[e.False=0]="False",e[e.True=1]="True",e[e.Unknown=2]="Unknown"}(Z||(Z={})),function(t){function r(e){var t=qe(),r=(e?st:at)(18),n=be(4194304,mr);e&&!r||ot(19);var i=q.createJSDocTypeExpression(n);return ne(i),gt(i,t)}function n(){var e=qe(),t=st(18),r=Xt(!1);t&&ot(19);var n=q.createJSDocNameReference(r);return ne(n),gt(n,e)}var i,a;function o(t,i){void 0===t&&(t=0);var a=b,o=void 0===i?a.length:t+i;if(i=o-t,e.Debug.assert(t>=0),e.Debug.assert(t<=o),e.Debug.assert(o<=a.length),f(a,t)){var c,l,u,d=[];return s.scanRange(t+3,i-5,(function(){var e,r,n,i=1,p=t-(a.lastIndexOf("\n",t)+1)+4;function f(t){e||(e=p),d.push(t),p+=t.length}for(Ge();B(5););B(4)&&(i=0,p=0);e:for(;;){switch(Ve()){case 59:0===i||1===i?(g(d),S(v(p)),i=0,e=void 0):f(s.getTokenText());break;case 4:d.push(s.getTokenText()),i=0,p=0;break;case 41:var _=s.getTokenText();1===i||2===i?(i=2,f(_)):(i=1,p+=_.length);break;case 5:var h=s.getTokenText();2===i?d.push(h):void 0!==e&&p+h.length>e&&d.push(h.slice(e-p)),p+=h.length;break;case 1:break e;default:i=2,f(s.getTokenText())}Ge()}return m(d),g(d),r=d.length?d.join(""):void 0,n=c&&mt(c,l,u),gt(q.createJSDocComment(r,n),t,o)}))}function m(e){for(;e.length&&("\n"===e[0]||"\r"===e[0]);)e.shift()}function g(e){for(;e.length&&""===e[e.length-1].trim();)e.pop()}function _(){for(;;){if(Ge(),1===Ve())return!0;if(5!==Ve()&&4!==Ve())return!1}}function h(){if(5!==Ve()&&4!==Ve()||!tt(_))for(;5===Ve()||4===Ve();)Ge()}function y(){if((5===Ve()||4===Ve())&&tt(_))return"";for(var e=s.hasPrecedingLineBreak(),t=!1,r="";e&&41===Ve()||5===Ve()||4===Ve();)r+=s.getTokenText(),4===Ve()?(e=!0,t=!0,r=""):41===Ve()&&(e=!1),Ge();return t?r:""}function v(t){e.Debug.assert(59===Ve());var i=s.getTokenPos();Ge();var a,l=z(void 0),u=y();switch(l.escapedText){case"author":a=function(e,t,r,n){var i=function(){var e=[],t=!1,r=s.getToken();for(;1!==r&&4!==r;){if(29===r)t=!0;else{if(59===r&&!t)break;if(31===r&&t){e.push(s.getTokenText()),s.setTextPos(s.getTokenPos()+1);break}}e.push(s.getTokenText()),r=Ge()}return e.join("")}()+(k(e,o,r,n)||"");return gt(q.createJSDocAuthorTag(t,i||void 0),e)}(i,l,t,u);break;case"implements":a=function(e,t,r,n){var i=N(),a=qe();return gt(q.createJSDocImplementsTag(t,i,k(e,a,r,n)),e,a)}(i,l,t,u);break;case"augments":case"extends":a=function(e,t,r,n){var i=N(),a=qe();return gt(q.createJSDocAugmentsTag(t,i,k(e,a,r,n)),e,a)}(i,l,t,u);break;case"class":case"constructor":a=P(i,q.createJSDocClassTag,l,t,u);break;case"public":a=P(i,q.createJSDocPublicTag,l,t,u);break;case"private":a=P(i,q.createJSDocPrivateTag,l,t,u);break;case"protected":a=P(i,q.createJSDocProtectedTag,l,t,u);break;case"readonly":a=P(i,q.createJSDocReadonlyTag,l,t,u);break;case"deprecated":te=!0,a=P(i,q.createJSDocDeprecatedTag,l,t,u);break;case"this":a=function(e,t,n,i){var a=r(!0);h();var o=qe();return gt(q.createJSDocThisTag(t,a,k(e,o,n,i)),e,o)}(i,l,t,u);break;case"enum":a=function(e,t,n,i){var a=r(!0);h();var o=qe();return gt(q.createJSDocEnumTag(t,a,k(e,o,n,i)),e,o)}(i,l,t,u);break;case"arg":case"argument":case"param":return C(i,l,2,t);case"return":case"returns":a=function(t,r,n,i){e.some(c,e.isJSDocReturnTag)&&Be(r.pos,s.getTokenPos(),e.Diagnostics._0_tag_already_specified,r.escapedText);var a=D(),o=qe();return gt(q.createJSDocReturnTag(r,a,k(t,o,n,i)),t,o)}(i,l,t,u);break;case"template":a=function(e,t,n,i){var a=18===Ve()?r():void 0,o=function(){var e=qe(),t=[];do{h(),t.push(j()),y()}while(B(27));return mt(t,e)}(),s=qe();return gt(q.createJSDocTemplateTag(t,a,o,k(e,s,n,i)),e,s)}(i,l,t,u);break;case"type":a=A(i,l,t,u);break;case"typedef":a=function(t,r,n,i){var a,o=D();y();var s=F();h();var c,l=x(n);if(!o||T(o.type)){for(var u=void 0,d=void 0,f=void 0,m=!1;u=rt((function(){return R(n)}));)if(m=!0,332===u.kind){if(d){Le(e.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);var g=e.lastOrUndefined(w);g&&e.addRelatedInfo(g,e.createDetachedDiagnostic(p,0,0,e.Diagnostics.The_tag_was_first_specified_here));break}d=u}else f=e.append(f,u);if(m){var _=o&&179===o.type.kind,v=q.createJSDocTypeLiteral(f,_);c=(o=d&&d.typeExpression&&!T(d.typeExpression.type)?d.typeExpression:gt(v,t)).end}}c=c||void 0!==l?qe():(null!==(a=null!=s?s:o)&&void 0!==a?a:r).end,l||(l=k(t,c,n,i));var b=q.createJSDocTypedefTag(r,o,s,l);return gt(b,t,c)}(i,l,t,u);break;case"callback":a=function(t,r,n,i){var a=F();h();var o=x(n),s=function(t){var r,n,i=qe();for(;r=rt((function(){return M(4,t)}));)n=e.append(n,r);return mt(n||[],i)}(n),c=rt((function(){if(B(59)){var e=v(n);if(e&&330===e.kind)return e}})),l=gt(q.createJSDocSignature(void 0,s,c),t),u=qe();o||(o=k(t,u,n,i));return gt(q.createJSDocCallbackTag(r,l,a,o),t,u)}(i,l,t,u);break;case"see":a=function(e,t,r,i){var a=n(),o=qe(),s=void 0!==r&&void 0!==i?k(e,o,r,i):void 0;return gt(q.createJSDocSeeTag(t,a,s),e,o)}(i,l,t,u);break;default:a=function(e,t,r,n){var i=qe();return gt(q.createJSDocUnknownTag(t,k(e,i,r,n)),e,i)}(i,l,t,u)}return a}function k(e,t,r,n){return n||(r+=t-e),x(r,n.slice(r))}function x(t,r){var n,i=[],a=0,o=!0;function c(e){n||(n=t),i.push(e),t+=e.length}void 0!==r&&(""!==r&&c(r),a=1);var l=Ve();e:for(;;){switch(l){case 4:a=0,i.push(s.getTokenText()),t=0;break;case 59:if(3===a||!o&&2===a){i.push(s.getTokenText());break}s.setTextPos(s.getTextPos()-1);case 1:break e;case 5:if(2===a||3===a)c(s.getTokenText());else{var u=s.getTokenText();void 0!==n&&t+u.length>n&&i.push(u.slice(n-t)),t+=u.length}break;case 18:a=2,tt((function(){return 59===Ge()&&e.tokenIsIdentifierOrKeyword(Ge())&&"link"===s.getTokenText()}))&&(c(s.getTokenText()),Ge(),c(s.getTokenText()),Ge()),c(s.getTokenText());break;case 61:a=3===a?2:3,c(s.getTokenText());break;case 41:if(0===a){a=1,t+=1;break}default:3!==a&&(a=2),c(s.getTokenText())}o=5===Ve(),l=Ge()}return m(i),g(i),0===i.length?void 0:i.join("")}function S(e){e&&(c?c.push(e):(c=[e],l=e.pos),u=e.end)}function D(){return y(),18===Ve()?r():void 0}function E(){var t=B(22);t&&h();var r,n=B(61),i=function(){var e=z();st(22)&&at(23);for(;st(24);){var t=z();st(22)&&at(23),e=Qt(e,t)}return e}();return n&&(lt(r=61)||_t(r,!1,e.Diagnostics._0_expected,e.tokenToString(r))),t&&(h(),ct(62)&&_n(),at(23)),{name:i,isBracketed:t}}function T(t){switch(t.kind){case 146:return!0;case 179:return T(t.elementType);default:return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&"Object"===t.typeName.escapedText&&!t.typeArguments}}function C(t,r,n,i){var a=D(),o=!a;y();var s=E(),c=s.name,l=s.isBracketed,u=y();o&&(a=D());var d=k(t,qe(),i,u),p=4!==n&&function(t,r,n,i){if(t&&T(t.type)){for(var a=qe(),o=void 0,s=void 0;o=rt((function(){return M(n,i,r)}));)329!==o.kind&&336!==o.kind||(s=e.append(s,o));if(s){var c=gt(q.createJSDocTypeLiteral(s,179===t.type.kind),a);return gt(q.createJSDocTypeExpression(c),a)}}}(a,c,n,i);return p&&(a=p,o=!0),gt(1===n?q.createJSDocPropertyTag(r,c,l,a,o,d):q.createJSDocParameterTag(r,c,l,a,o,d),t)}function A(t,n,i,a){e.some(c,e.isJSDocTypeTag)&&Be(n.pos,s.getTokenPos(),e.Diagnostics._0_tag_already_specified,n.escapedText);var o=r(!0),l=qe(),u=void 0!==i&&void 0!==a?k(t,l,i,a):void 0;return gt(q.createJSDocTypeTag(n,o,u),t,l)}function N(){var e=st(18),t=qe(),r=function(){var e=qe(),t=z();for(;st(24);){var r=z();t=gt(q.createPropertyAccessExpression(t,r),e)}return t}(),n=na(),i=gt(q.createExpressionWithTypeArguments(r,n),t);return e&&at(19),i}function P(e,t,r,n,i){var a=qe();return gt(t(r,k(e,a,n,i)),e,a)}function F(t){var r=s.getTokenPos();if(e.tokenIsIdentifierOrKeyword(Ve())){var n=z();if(st(24)){var i=F(!0);return gt(q.createModuleDeclaration(void 0,void 0,n,i,t?4:void 0),r)}return t&&(n.isInJSDocNamespace=!0),n}}function O(t,r){for(;!e.isIdentifier(t)||!e.isIdentifier(r);){if(e.isIdentifier(t)||e.isIdentifier(r)||t.right.escapedText!==r.right.escapedText)return!1;t=t.left,r=r.left}return t.escapedText===r.escapedText}function R(e){return M(1,e)}function M(t,r,n){for(var i=!0,a=!1;;)switch(Ge()){case 59:if(i){var o=L(t,r);return!(o&&(329===o.kind||336===o.kind)&&4!==t&&n&&(e.isIdentifier(o.name)||!O(n,o.name.left)))&&o}a=!1;break;case 4:i=!0,a=!1;break;case 41:a&&(i=!1),a=!0;break;case 78:i=!1;break;case 1:return!1}}function L(t,r){e.Debug.assert(59===Ve());var n=s.getStartPos();Ge();var i,a=z();switch(h(),a.escapedText){case"type":return 1===t&&A(n,a);case"prop":case"property":i=1;break;case"arg":case"argument":case"param":i=6;break;default:return!1}return!!(t&i)&&C(n,a,t,r)}function j(){var t=qe(),r=z(e.Diagnostics.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces);return gt(q.createTypeParameterDeclaration(r,void 0,void 0),t)}function B(e){return Ve()===e&&(Ge(),!0)}function z(t){if(!e.tokenIsIdentifierOrKeyword(Ve()))return _t(78,!t,t||e.Diagnostics.Identifier_expected);I++;var r=s.getTokenPos(),n=s.getTextPos(),i=Ve(),a=ht(s.getTokenValue()),o=gt(q.createIdentifier(a,void 0,i),r,n);return Ge(),o}}t.parseJSDocTypeExpressionForTests=function(t,n,i){G("file.js",t,99,void 0,1),s.setText(t,n,i),C=s.scan();var a=r(),o=ie("file.js",99,1,!1,[],q.createToken(1),0),c=e.attachFileToDiagnostics(w,o);return D&&(o.jsDocDiagnostics=e.attachFileToDiagnostics(D,o)),$(),a?{jsDocTypeExpression:a,diagnostics:c}:void 0},t.parseJSDocTypeExpression=r,t.parseJSDocNameReference=n,t.parseIsolatedJSDocComment=function(t,r,n){G("",t,99,void 0,1);var i=be(4194304,(function(){return o(r,n)})),a={languageVariant:0,text:t},s=e.attachFileToDiagnostics(w,a);return $(),i?{jsDoc:i,diagnostics:s}:void 0},t.parseJSDocComment=function(t,r,n){var i=C,a=w.length,s=V,c=be(4194304,(function(){return o(r,n)}));return e.setParent(c,t),131072&R&&(D||(D=[]),D.push.apply(D,w)),C=i,w.length=a,V=s,c},function(e){e[e.BeginningOfLine=0]="BeginningOfLine",e[e.SawAsterisk=1]="SawAsterisk",e[e.SavingComments=2]="SavingComments",e[e.SavingBackticks=3]="SavingBackticks"}(i||(i={})),function(e){e[e.Property=1]="Property",e[e.Parameter=2]="Parameter",e[e.CallbackParameter=4]="CallbackParameter"}(a||(a={}))}(ee=t.JSDocParser||(t.JSDocParser={}))}(l||(l={})),function(t){function r(t,r,i,o,s,c){return void(r?u(t):l(t));function l(t){var r="";if(c&&n(t)&&(r=o.substring(t.pos,t.end)),t._children&&(t._children=void 0),e.setTextRangePosEnd(t,t.pos+i,t.end+i),c&&n(t)&&e.Debug.assert(r===s.substring(t.pos,t.end)),m(t,l,u),e.hasJSDocNodes(t))for(var d=0,p=t.jsDoc;d<p.length;d++){l(p[d])}a(t,c)}function u(t){t._children=void 0,e.setTextRangePosEnd(t,t.pos+i,t.end+i);for(var r=0,n=t;r<n.length;r++){l(n[r])}}}function n(e){switch(e.kind){case 10:case 8:case 78:return!0}return!1}function i(t,r,n,i,a){e.Debug.assert(t.end>=r,"Adjusting an element that was entirely before the change range"),e.Debug.assert(t.pos<=n,"Adjusting an element that was entirely after the change range"),e.Debug.assert(t.pos<=t.end);var o=Math.min(t.pos,i),s=t.end>=n?t.end+a:Math.min(t.end,i);e.Debug.assert(o<=s),t.parent&&(e.Debug.assertGreaterThanOrEqual(o,t.parent.pos),e.Debug.assertLessThanOrEqual(s,t.parent.end)),e.setTextRangePosEnd(t,o,s)}function a(t,r){if(r){var n=t.pos,i=function(t){e.Debug.assert(t.pos>=n),n=t.end};if(e.hasJSDocNodes(t))for(var a=0,o=t.jsDoc;a<o.length;a++){i(o[a])}m(t,i),e.Debug.assert(n<=t.end)}}function o(t,r){var n,i=t;if(m(t,(function t(a){if(e.nodeIsMissing(a))return;if(!(a.pos<=r))return e.Debug.assert(a.pos>r),!0;if(a.pos>=i.pos&&(i=a),r<a.end)return m(a,t),!0;e.Debug.assert(a.end<=r),n=a})),n){var a=function(t){for(;;){var r=e.getLastChild(t);if(!r)return t;t=r}}(n);a.pos>i.pos&&(i=a)}return i}function s(t,r,n,i){var a=t.text;if(n&&(e.Debug.assert(a.length-n.span.length+n.newLength===r.length),i||e.Debug.shouldAssert(3))){var o=a.substr(0,n.span.start),s=r.substr(0,n.span.start);e.Debug.assert(o===s);var c=a.substring(e.textSpanEnd(n.span),a.length),l=r.substring(e.textSpanEnd(e.textChangeRangeNewSpan(n)),r.length);e.Debug.assert(c===l)}}function c(t){var r=t.statements,n=0;e.Debug.assert(n<r.length);var i=r[n],a=-1;return{currentNode:function(o){return o!==a&&(i&&i.end===o&&n<r.length-1&&(n++,i=r[n]),i&&i.pos===o||function(e){return r=void 0,n=-1,i=void 0,void m(t,a,o);function a(t){return e>=t.pos&&e<t.end&&(m(t,a,o),!0)}function o(t){if(e>=t.pos&&e<t.end)for(var s=0;s<t.length;s++){var c=t[s];if(c){if(c.pos===e)return r=t,n=s,i=c,!0;if(c.pos<e&&e<c.end)return m(c,a,o),!0}}return!1}}(o)),a=o,e.Debug.assert(!i||i.pos===o),i}}}var u;t.updateSourceFile=function(t,n,u,d){if(s(t,n,u,d=d||e.Debug.shouldAssert(2)),e.textChangeRangeIsUnchanged(u))return t;if(0===t.statements.length)return l.parseSourceFile(t.fileName,n,t.languageVersion,void 0,!0,t.scriptKind);var p=t;e.Debug.assert(!p.hasBeenIncrementallyParsed),p.hasBeenIncrementallyParsed=!0,l.fixupParentReferences(p);var f=t.text,g=c(t),_=function(t,r){for(var n=1,i=r.span.start,a=0;i>0&&a<=n;a++){var s=o(t,i);e.Debug.assert(s.pos<=i);var c=s.pos;i=Math.max(0,c-1)}var l=e.createTextSpanFromBounds(i,e.textSpanEnd(r.span)),u=r.newLength+(r.span.start-i);return e.createTextChangeRange(l,u)}(t,u);s(t,n,_,d),e.Debug.assert(_.span.start<=u.span.start),e.Debug.assert(e.textSpanEnd(_.span)===e.textSpanEnd(u.span)),e.Debug.assert(e.textSpanEnd(e.textChangeRangeNewSpan(_))===e.textSpanEnd(e.textChangeRangeNewSpan(u)));var h=e.textChangeRangeNewSpan(_).length-_.span.length;!function(t,n,o,s,c,l,u,d){return void p(t);function p(t){if(e.Debug.assert(t.pos<=t.end),t.pos>o)r(t,!1,c,l,u,d);else{var g=t.end;if(g>=n){if(t.intersectsChange=!0,t._children=void 0,i(t,n,o,s,c),m(t,p,f),e.hasJSDocNodes(t))for(var _=0,h=t.jsDoc;_<h.length;_++){p(h[_])}a(t,d)}else e.Debug.assert(g<n)}}function f(t){if(e.Debug.assert(t.pos<=t.end),t.pos>o)r(t,!0,c,l,u,d);else{var a=t.end;if(a>=n){t.intersectsChange=!0,t._children=void 0,i(t,n,o,s,c);for(var f=0,m=t;f<m.length;f++){var g=m[f];g.virtual||p(g)}}else e.Debug.assert(a<n)}}}(p,_.span.start,e.textSpanEnd(_.span),e.textSpanEnd(e.textChangeRangeNewSpan(_)),h,f,n,d);var y=l.parseSourceFile(t.fileName,n,t.languageVersion,g,!0,t.scriptKind);return y.commentDirectives=function(t,r,n,i,a,o,s,c){if(!t)return r;for(var l,u=!1,d=0,p=t;d<p.length;d++){var f=p[d],m=f.range,g=f.type;if(m.end<n)l=e.append(l,f);else if(m.pos>i){h();var _={range:{pos:m.pos+a,end:m.end+a},type:g};l=e.append(l,_),c&&e.Debug.assert(o.substring(m.pos,m.end)===s.substring(_.range.pos,_.range.end))}}return h(),l;function h(){u||(u=!0,l?r&&l.push.apply(l,r):l=r)}}(t.commentDirectives,y.commentDirectives,_.span.start,e.textSpanEnd(_.span),h,f,n,d),y},t.createSyntaxCursor=c,function(e){e[e.Value=-1]="Value"}(u||(u={}))}(u||(u={})),e.isDeclarationFileName=h,e.processCommentPragmas=y,e.processPragmasIntoFields=v;var b=new e.Map;function k(e){if(b.has(e))return b.get(e);var t=new RegExp("(\\s"+e+"\\s*=\\s*)('|\")(.+?)\\2","im");return b.set(e,t),t}var x=/^\/\/\/\s*<(\S+)\s.*?\/>/im,S=/^\/\/\/?\s*@(\S+)\s*(.*)\s*$/im;function w(t,r,n){var i=2===r.kind&&x.exec(n);if(i){var a=i[1].toLowerCase(),o=e.commentPragmas[a];if(!(o&&1&o.kind))return;if(o.args){for(var s={},c=0,l=o.args;c<l.length;c++){var u=l[c],d=k(u.name).exec(n);if(!d&&!u.optional)return;if(d)if(u.captureSpan){var p=r.pos+d.index+d[1].length+d[2].length;s[u.name]={value:d[3],pos:p,end:p+d[3].length}}else s[u.name]=d[3]}t.push({name:a,args:{arguments:s,range:r}})}else t.push({name:a,args:{arguments:{},range:r}})}else{var f=2===r.kind&&S.exec(n);if(f)return D(t,r,2,f);if(3===r.kind)for(var m=/\s*@(\S+)\s*(.*)\s*$/gim,g=void 0;g=m.exec(n);)D(t,r,4,g)}}function D(t,r,n,i){if(i){var a=i[1].toLowerCase(),o=e.commentPragmas[a];if(o&&o.kind&n){var s=function(t,r){if(!r)return{};if(!t.args)return{};for(var n=r.split(/\s+/),i={},a=0;a<t.args.length;a++){var o=t.args[a];if(!n[a]&&!o.optional)return"fail";if(o.captureSpan)return e.Debug.fail("Capture spans not yet implemented for non-xml pragmas");i[o.name]=n[a]}return i}(o,i[2]);"fail"!==s&&t.push({name:a,args:{arguments:s,range:r}})}}}function E(e,t){return e.kind===t.kind&&(78===e.kind?e.escapedText===t.escapedText:108===e.kind||e.name.escapedText===t.name.escapedText&&E(e.expression,t.expression))}e.tagNamesAreEquivalent=E}(d||(d={})),function(e){e.compileOnSaveCommandLineOption={name:"compileOnSave",type:"boolean"};var t=new e.Map(e.getEntries({preserve:1,"react-native":3,react:2,"react-jsx":4,"react-jsxdev":5}));e.inverseJsxOptionMap=new e.Map(e.arrayFrom(e.mapIterator(t.entries(),(function(e){var t=e[0];return[""+e[1],t]}))));var r,n,o=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["es2019","lib.es2019.d.ts"],["es2020","lib.es2020.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["webworker.iterable","lib.webworker.iterable.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.asyncgenerator","lib.es2018.asyncgenerator.d.ts"],["es2018.asynciterable","lib.es2018.asynciterable.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["es2019.array","lib.es2019.array.d.ts"],["es2019.object","lib.es2019.object.d.ts"],["es2019.string","lib.es2019.string.d.ts"],["es2019.symbol","lib.es2019.symbol.d.ts"],["es2020.bigint","lib.es2020.bigint.d.ts"],["es2020.promise","lib.es2020.promise.d.ts"],["es2020.sharedmemory","lib.es2020.sharedmemory.d.ts"],["es2020.string","lib.es2020.string.d.ts"],["es2020.symbol.wellknown","lib.es2020.symbol.wellknown.d.ts"],["es2020.intl","lib.es2020.intl.d.ts"],["esnext.array","lib.es2019.array.d.ts"],["esnext.symbol","lib.es2019.symbol.d.ts"],["esnext.asynciterable","lib.es2018.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.bigint","lib.es2020.bigint.d.ts"],["esnext.string","lib.esnext.string.d.ts"],["esnext.promise","lib.esnext.promise.d.ts"],["esnext.weakref","lib.esnext.weakref.d.ts"]];function s(t){var r=new e.Map,n=new e.Map;return e.forEach(t,(function(e){r.set(e.name.toLowerCase(),e),e.shortName&&n.set(e.shortName,e.name)})),{optionsNameMap:r,shortOptionNames:n}}function c(){return r||(r=s(e.optionDeclarations))}function l(e){return e&&void 0!==e.enableAutoDiscovery&&void 0===e.enable?{enable:e.enableAutoDiscovery,include:e.include||[],exclude:e.exclude||[]}:e}function u(t){return d(t,e.createCompilerDiagnostic)}function d(t,r){var n=e.arrayFrom(t.type.keys()).map((function(e){return"'"+e+"'"})).join(", ");return r(e.Diagnostics.Argument_for_0_option_must_be_Colon_1,"--"+t.name,n)}function p(e,t,r){return pe(e,fe(t||""),r)}function f(t,r,n){if(void 0===r&&(r=""),r=fe(r),!e.startsWith(r,"-")){if(""===r)return[];var i=r.split(",");switch(t.element.type){case"number":return e.mapDefined(i,(function(e){return de(t.element,parseInt(e),n)}));case"string":return e.mapDefined(i,(function(e){return de(t.element,e||"",n)}));default:return e.mapDefined(i,(function(e){return p(t.element,e,n)}))}}}function m(e){return e.name}function g(t,r,n,i){var a=e.getSpellingSuggestion(t,r.optionDeclarations,m);return a?n(r.unknownDidYouMeanDiagnostic,i||t,a.name):n(r.unknownOptionDiagnostic,i||t)}function _(t,r,n){var i,a={},o=[],s=[];return c(r),{options:a,watchOptions:i,fileNames:o,errors:s};function c(r){for(var n=0;n<r.length;){var c=r[n];if(n++,64===c.charCodeAt(0))l(c.slice(1));else if(45===c.charCodeAt(0)){var u=c.slice(45===c.charCodeAt(1)?2:1),d=v(t.getOptionsNameMap,u,!0);if(d)n=h(r,n,t,d,a,s);else{var p=v(I.getOptionsNameMap,u,!0);p?n=h(r,n,I,p,i||(i={}),s):s.push(g(u,t,e.createCompilerDiagnostic,c))}}else o.push(c)}}function l(t){var r=S(t,n||function(t){return e.sys.readFile(t)});if(e.isString(r)){for(var i=[],a=0;;){for(;a<r.length&&r.charCodeAt(a)<=32;)a++;if(a>=r.length)break;var o=a;if(34===r.charCodeAt(o)){for(a++;a<r.length&&34!==r.charCodeAt(a);)a++;a<r.length?(i.push(r.substring(o+1,a)),a++):s.push(e.createCompilerDiagnostic(e.Diagnostics.Unterminated_quoted_string_in_response_file_0,t))}else{for(;r.charCodeAt(a)>32;)a++;i.push(r.substring(o,a))}}c(i)}else s.push(r)}}function h(t,r,n,i,a,o){if(i.isTSConfigOnly)"null"===(s=t[r])?(a[i.name]=void 0,r++):"boolean"===i.type?"false"===s?(a[i.name]=de(i,!1,o),r++):("true"===s&&r++,o.push(e.createCompilerDiagnostic(e.Diagnostics.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,i.name))):(o.push(e.createCompilerDiagnostic(e.Diagnostics.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,i.name)),s&&!e.startsWith(s,"-")&&r++);else if(t[r]||"boolean"===i.type||o.push(e.createCompilerDiagnostic(n.optionTypeMismatchDiagnostic,i.name,j(i))),"null"!==t[r])switch(i.type){case"number":a[i.name]=de(i,parseInt(t[r]),o),r++;break;case"boolean":var s=t[r];a[i.name]=de(i,"false"!==s,o),"false"!==s&&"true"!==s||r++;break;case"string":a[i.name]=de(i,t[r]||"",o),r++;break;case"list":var c=f(i,t[r],o);a[i.name]=c||[],c&&r++;break;default:a[i.name]=p(i,t[r],o),r++}else a[i.name]=void 0,r++;return r}function y(e,t){return v(c,e,t)}function v(e,t,r){void 0===r&&(r=!1),t=t.toLowerCase();var n=e(),i=n.optionsNameMap,a=n.shortOptionNames;if(r){var o=a.get(t);void 0!==o&&(t=o)}return i.get(t)}e.libs=o.map((function(e){return e[0]})),e.libMap=new e.Map(o),e.optionsForWatch=[{name:"watchFile",type:new e.Map(e.getEntries({fixedpollinginterval:e.WatchFileKind.FixedPollingInterval,prioritypollinginterval:e.WatchFileKind.PriorityPollingInterval,dynamicprioritypolling:e.WatchFileKind.DynamicPriorityPolling,usefsevents:e.WatchFileKind.UseFsEvents,usefseventsonparentdirectory:e.WatchFileKind.UseFsEventsOnParentDirectory})),category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_UseFsEvents_UseFsEventsOnParentDirectory},{name:"watchDirectory",type:new e.Map(e.getEntries({usefsevents:e.WatchDirectoryKind.UseFsEvents,fixedpollinginterval:e.WatchDirectoryKind.FixedPollingInterval,dynamicprioritypolling:e.WatchDirectoryKind.DynamicPriorityPolling})),category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling},{name:"fallbackPolling",type:new e.Map(e.getEntries({fixedinterval:e.PollingWatchKind.FixedInterval,priorityinterval:e.PollingWatchKind.PriorityInterval,dynamicpriority:e.PollingWatchKind.DynamicPriority})),category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority},{name:"synchronousWatchDirectory",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively},{name:"excludeDirectories",type:"list",element:{name:"excludeDirectory",type:"string",isFilePath:!0,extraValidation:ke},category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:ke},category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively}],e.commonOptionsWithBuild=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Print_this_message},{name:"help",shortName:"?",type:"boolean"},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Watch_input_files},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen},{name:"listFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_files_part_of_the_compilation},{name:"explainFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_files_and_the_reason_they_are_part_of_the_compilation},{name:"listEmittedFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_generated_files_part_of_the_compilation},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Stylize_errors_and_messages_using_color_and_context_experimental},{name:"traceResolution",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Enable_tracing_of_the_name_resolution_process},{name:"diagnostics",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Show_diagnostic_information},{name:"extendedDiagnostics",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Show_verbose_diagnostic_information},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:e.Diagnostics.FILE_OR_DIRECTORY,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Generates_a_CPU_profile},{name:"generateTrace",type:"string",isFilePath:!0,isCommandLineOnly:!0,paramType:e.Diagnostics.DIRECTORY,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Enable_incremental_compilation,transpileOptionValue:void 0},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it},{name:"locale",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_locale_used_when_displaying_messages_to_the_user_e_g_en_us}],e.targetOptionDeclaration={name:"target",shortName:"t",type:new e.Map(e.getEntries({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,es2019:6,es2020:7,esnext:99})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,paramType:e.Diagnostics.VERSION,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_ES2019_ES2020_or_ESNEXT},e.optionDeclarations=i(i([],e.commonOptionsWithBuild),[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Show_all_compiler_options},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Print_the_compiler_s_version},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,paramType:e.Diagnostics.FILE_OR_DIRECTORY,description:e.Diagnostics.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Build_one_or_more_projects_and_their_dependencies_if_out_of_date},{name:"showConfig",type:"boolean",category:e.Diagnostics.Command_line_Options,isCommandLineOnly:!0,description:e.Diagnostics.Print_the_final_configuration_instead_of_building},{name:"listFilesOnly",type:"boolean",category:e.Diagnostics.Command_line_Options,affectsSemanticDiagnostics:!0,affectsEmit:!0,isCommandLineOnly:!0,description:e.Diagnostics.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing},e.targetOptionDeclaration,{name:"module",shortName:"m",type:new e.Map(e.getEntries({none:e.ModuleKind.None,commonjs:e.ModuleKind.CommonJS,amd:e.ModuleKind.AMD,system:e.ModuleKind.System,umd:e.ModuleKind.UMD,es6:e.ModuleKind.ES2015,es2015:e.ModuleKind.ES2015,es2020:e.ModuleKind.ES2020,esnext:e.ModuleKind.ESNext})),affectsModuleResolution:!0,affectsEmit:!0,paramType:e.Diagnostics.KIND,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_es2020_or_ESNext},{name:"lib",type:"list",element:{name:"lib",type:e.libMap},affectsModuleResolution:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_library_files_to_be_included_in_the_compilation,transpileOptionValue:void 0},{name:"allowJs",type:"boolean",affectsModuleResolution:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Allow_javascript_files_to_be_compiled},{name:"checkJs",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Report_errors_in_js_files},{name:"jsx",type:t,affectsSourceFile:!0,affectsEmit:!0,affectsModuleResolution:!0,paramType:e.Diagnostics.KIND,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_JSX_code_generation_Colon_preserve_react_native_react_react_jsx_or_react_jsxdev},{name:"declaration",shortName:"d",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_corresponding_d_ts_file,transpileOptionValue:void 0},{name:"declarationMap",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_a_sourcemap_for_each_corresponding_d_ts_file,transpileOptionValue:void 0},{name:"emitDeclarationOnly",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Only_emit_d_ts_declaration_files,transpileOptionValue:void 0},{name:"sourceMap",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_corresponding_map_file},{name:"outFile",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.FILE,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Concatenate_and_emit_output_to_single_file,transpileOptionValue:void 0},{name:"outDir",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.DIRECTORY,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Redirect_output_structure_to_the_directory},{name:"rootDir",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir},{name:"composite",type:"boolean",affectsEmit:!0,isTSConfigOnly:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Enable_project_compilation,transpileOptionValue:void 0},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.FILE,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_file_to_store_incremental_compilation_information,transpileOptionValue:void 0},{name:"removeComments",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Do_not_emit_comments_to_output},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Do_not_emit_outputs,transpileOptionValue:void 0},{name:"importHelpers",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Import_emit_helpers_from_tslib},{name:"importsNotUsedAsValues",type:new e.Map(e.getEntries({remove:0,preserve:1,error:2})),affectsEmit:!0,affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3},{name:"isolatedModules",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule,transpileOptionValue:!0},{name:"strict",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_all_strict_type_checking_options},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Raise_error_on_expressions_and_declarations_with_an_implied_any_type},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_null_checks},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_checking_of_function_types},{name:"strictBindCallApply",type:"boolean",strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_bind_call_and_apply_methods_on_functions},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_checking_of_property_initialization_in_classes},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Raise_error_on_this_expressions_with_an_implied_any_type},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Parse_in_strict_mode_and_emit_use_strict_for_each_source_file},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_on_unused_locals},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_on_unused_parameters},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_error_when_not_all_code_paths_in_function_return_a_value},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_for_fallthrough_cases_in_switch_statement},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!1,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Include_undefined_in_index_signature_results},{name:"noPropertyAccessFromIndexSignature",type:"boolean",showInSimplifiedHelpView:!1,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Require_undeclared_properties_from_index_signatures_to_use_element_accesses},{name:"moduleResolution",type:new e.Map(e.getEntries({node:e.ModuleResolutionKind.NodeJs,classic:e.ModuleResolutionKind.Classic})),affectsModuleResolution:!0,paramType:e.Diagnostics.STRATEGY,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Base_directory_to_resolve_non_absolute_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,isTSConfigOnly:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl,transpileOptionValue:void 0},{name:"rootDirs",type:"list",isTSConfigOnly:!0,element:{name:"rootDirs",type:"string",isFilePath:!0},affectsModuleResolution:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime,transpileOptionValue:void 0},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.List_of_folders_to_include_type_definitions_from},{name:"types",type:"list",element:{name:"types",type:"string"},affectsModuleResolution:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Type_declaration_files_to_be_included_in_compilation,transpileOptionValue:void 0},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports},{name:"preserveSymlinks",type:"boolean",category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Do_not_resolve_the_real_path_of_symlinks},{name:"allowUmdGlobalAccess",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Allow_accessing_UMD_globals_from_modules},{name:"sourceRoot",type:"string",affectsEmit:!0,paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations},{name:"mapRoot",type:"string",affectsEmit:!0,paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSourceMap",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file},{name:"inlineSources",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set},{name:"experimentalDecorators",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Experimental_Options,description:e.Diagnostics.Enables_experimental_support_for_ES7_decorators},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,category:e.Diagnostics.Experimental_Options,description:e.Diagnostics.Enables_experimental_support_for_emitting_type_metadata_for_decorators},{name:"jsxFactory",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h},{name:"jsxFragmentFactory",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment},{name:"jsxImportSource",type:"string",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react},{name:"ets",type:"object",affectsSourceFile:!0,affectsEmit:!0,affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Unknown_build_option_0},{name:"packageManagerType",type:"string",affectsSourceFile:!0,affectsEmit:!0,affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Unknown_build_option_0},{name:"emitNodeModulesFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Unknown_build_option_0},{name:"resolveJsonModule",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Include_modules_imported_with_json_extension},{name:"out",type:"string",affectsEmit:!0,isFilePath:!1,category:e.Diagnostics.Advanced_Options,paramType:e.Diagnostics.FILE,description:e.Diagnostics.Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file,transpileOptionValue:void 0},{name:"reactNamespace",type:"string",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit},{name:"skipDefaultLibCheck",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files},{name:"charset",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_character_set_of_the_input_files},{name:"emitBOM",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files},{name:"newLine",type:new e.Map(e.getEntries({crlf:0,lf:1})),affectsEmit:!0,paramType:e.Diagnostics.NEWLINE,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_truncate_error_messages},{name:"noLib",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_include_the_default_library_file_lib_d_ts,transpileOptionValue:!0},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files,transpileOptionValue:!0},{name:"stripInternal",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_declarations_for_code_that_has_an_internal_annotation},{name:"disableSizeLimit",type:"boolean",affectsSourceFile:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_size_limitations_on_JavaScript_projects},{name:"disableSourceOfProjectReferenceRedirect",type:"boolean",isTSConfigOnly:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_solution_searching_for_this_project},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_loading_referenced_projects},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_use_strict_directives_in_module_output},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_generate_custom_helper_functions_like_extends_in_compiled_output},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_outputs_if_any_errors_were_reported,transpileOptionValue:void 0},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_erase_const_enum_declarations_in_generated_code},{name:"declarationDir",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.DIRECTORY,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Output_directory_for_generated_declaration_files,transpileOptionValue:void 0},{name:"skipLibCheck",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Skip_type_checking_of_declaration_files},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_report_errors_on_unused_labels},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_report_errors_on_unreachable_code},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Suppress_excess_property_checks_for_object_literals},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disallow_inconsistently_cased_references_to_the_same_file},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_strict_checking_of_generic_signatures_in_function_types},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Emit_class_fields_with_Define_instead_of_Set},{name:"keyofStringsOnly",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols},{name:"plugins",type:"list",isTSConfigOnly:!0,element:{name:"plugin",type:"object"},description:e.Diagnostics.List_of_language_service_plugins}]),e.semanticDiagnosticsOptionDeclarations=e.optionDeclarations.filter((function(e){return!!e.affectsSemanticDiagnostics})),e.affectsEmitOptionDeclarations=e.optionDeclarations.filter((function(e){return!!e.affectsEmit})),e.moduleResolutionOptionDeclarations=e.optionDeclarations.filter((function(e){return!!e.affectsModuleResolution})),e.sourceFileAffectingCompilerOptions=e.optionDeclarations.filter((function(e){return!!e.affectsSourceFile||!!e.affectsModuleResolution||!!e.affectsBindDiagnostics})),e.transpileOptionValueCompilerOptions=e.optionDeclarations.filter((function(t){return e.hasProperty(t,"transpileOptionValue")})),e.buildOpts=i(i([],e.commonOptionsWithBuild),[{name:"verbose",shortName:"v",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Enable_verbose_logging,type:"boolean"},{name:"dry",shortName:"d",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean"},{name:"force",shortName:"f",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean"},{name:"clean",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Delete_the_outputs_of_all_projects,type:"boolean"}]),e.typeAcquisitionDeclarations=[{name:"enableAutoDiscovery",type:"boolean"},{name:"enable",type:"boolean"},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},{name:"disableFilenameBasedTypeAcquisition",type:"boolean"}],e.createOptionNameMap=s,e.getOptionsNameMap=c,e.defaultInitCompilerOptions={module:e.ModuleKind.CommonJS,target:1,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0},e.convertEnableAutoDiscoveryToEnable=l,e.createCompilerDiagnosticForInvalidCustomType=u,e.parseCustomTypeOption=p,e.parseListTypeOption=f,e.parseCommandLineWorker=_,e.compilerOptionsDidYouMeanDiagnostics={getOptionsNameMap:c,optionDeclarations:e.optionDeclarations,unknownOptionDiagnostic:e.Diagnostics.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:e.Diagnostics.Compiler_option_0_expects_an_argument},e.parseCommandLine=function(t,r){return _(e.compilerOptionsDidYouMeanDiagnostics,t,r)},e.getOptionFromName=y;var b={getOptionsNameMap:function(){return n||(n=s(e.buildOpts))},optionDeclarations:e.buildOpts,unknownOptionDiagnostic:e.Diagnostics.Unknown_build_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:e.Diagnostics.Build_option_0_requires_a_value_of_type_1};function k(t,r){var n=e.parseJsonText(t,r);return{config:M(n,n.parseDiagnostics),error:n.parseDiagnostics.length?n.parseDiagnostics[0]:void 0}}function x(t,r){var n=S(t,r);return e.isString(n)?e.parseJsonText(t,n):{fileName:t,parseDiagnostics:[n]}}function S(t,r){var n;try{n=r(t)}catch(r){return e.createCompilerDiagnostic(e.Diagnostics.Cannot_read_file_0_Colon_1,t,r.message)}return void 0===n?e.createCompilerDiagnostic(e.Diagnostics.Cannot_read_file_0,t):n}function w(t){return e.arrayToMap(t,m)}e.parseBuildCommand=function(t){var r=_(b,t),n=r.options,i=r.watchOptions,a=r.fileNames,o=r.errors,s=n;return 0===a.length&&a.push("."),s.clean&&s.force&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","force")),s.clean&&s.verbose&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","verbose")),s.clean&&s.watch&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","watch")),s.watch&&s.dry&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:s,watchOptions:i,projects:a,errors:o}},e.getDiagnosticText=function(t){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return e.createCompilerDiagnostic.apply(void 0,arguments).messageText},e.getParsedCommandLineOfConfigFile=function(t,r,n,i,a,o){var s=S(t,(function(e){return n.readFile(e)}));if(e.isString(s)){var c=e.parseJsonText(t,s),l=n.getCurrentDirectory();return c.path=e.toPath(t,l,e.createGetCanonicalFileName(n.useCaseSensitiveFileNames)),c.resolvedPath=c.path,c.originalFileName=c.fileName,W(c,n,e.getNormalizedAbsolutePath(e.getDirectoryPath(t),l),r,e.getNormalizedAbsolutePath(t,l),void 0,o,i,a)}n.onUnRecoverableConfigFileDiagnostic(s)},e.readConfigFile=function(t,r){var n=S(t,r);return e.isString(n)?k(t,n):{config:{},error:n}},e.parseConfigFileTextToJson=k,e.readJsonConfigFile=x,e.tryReadFile=S;var D,E={optionDeclarations:e.typeAcquisitionDeclarations,unknownOptionDiagnostic:e.Diagnostics.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_type_acquisition_option_0_Did_you_mean_1};function T(){return D||(D=s(e.optionsForWatch))}var C,A,N,P,I={getOptionsNameMap:T,optionDeclarations:e.optionsForWatch,unknownOptionDiagnostic:e.Diagnostics.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:e.Diagnostics.Watch_option_0_requires_a_value_of_type_1};function F(){return C||(C=w(e.optionDeclarations))}function O(){return A||(A=w(e.optionsForWatch))}function R(){return N||(N=w(e.typeAcquisitionDeclarations))}function M(e,t){return L(e,t,!0,void 0,void 0)}function L(t,r,n,a,o){return t.statements.length?l(t.statements[0].expression,a):n?{}:void 0;function s(e){return a&&a.elementOptions===e}function c(i,a,c,d){for(var p=n?{}:void 0,f=function(i){if(291!==i.kind)return r.push(e.createDiagnosticForNodeInSourceFile(t,i,e.Diagnostics.Property_assignment_expected)),"continue";i.questionToken&&r.push(e.createDiagnosticForNodeInSourceFile(t,i.questionToken,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),u(i.name)||r.push(e.createDiagnosticForNodeInSourceFile(t,i.name,e.Diagnostics.String_literal_with_double_quotes_expected));var f=e.isComputedNonLiteralName(i.name)?void 0:e.getTextOfPropertyName(i.name),m=f&&e.unescapeLeadingUnderscores(f),_=m&&a?a.get(m):void 0;m&&c&&!_&&(a?r.push(g(m,c,(function(r,n,a){return e.createDiagnosticForNodeInSourceFile(t,i.name,r,n,a)}))):r.push(e.createDiagnosticForNodeInSourceFile(t,i.name,c.unknownOptionDiagnostic,m)));var h=l(i.initializer,_);if(void 0!==m&&(n&&(p[m]=h),o&&(d||s(a)))){var y=B(_,h);d?y&&o.onSetValidOptionKeyValueInParent(d,_,h):s(a)&&(y?o.onSetValidOptionKeyValueInRoot(m,i.name,h,i.initializer):_||o.onSetUnknownOptionKeyValueInRoot(m,i.name,h,i.initializer))}},m=0,_=i.properties;m<_.length;m++){f(_[m])}return p}function l(a,o){var s;switch(a.kind){case 110:return h(o&&"boolean"!==o.type),_(!0);case 95:return h(o&&"boolean"!==o.type),_(!1);case 104:return h(o&&"extends"===o.name),_(null);case 10:u(a)||r.push(e.createDiagnosticForNodeInSourceFile(t,a,e.Diagnostics.String_literal_with_double_quotes_expected)),h(o&&e.isString(o.type)&&"string"!==o.type);var p=a.text;if(o&&!e.isString(o.type)){var f=o;f.type.has(p.toLowerCase())||(r.push(d(f,(function(r,n,i){return e.createDiagnosticForNodeInSourceFile(t,a,r,n,i)}))),s=!0)}return _(p);case 8:return h(o&&"number"!==o.type),_(Number(a.text));case 216:if(40!==a.operator||8!==a.operand.kind)break;return h(o&&"number"!==o.type),_(-Number(a.operand.text));case 201:h(o&&"object"!==o.type);var m=a;if(o){var g=o;return _(c(m,g.elementOptions,g.extraKeyDiagnostics,g.name))}return _(c(m,void 0,void 0,void 0));case 200:return h(o&&"list"!==o.type),_(function(t,r){if(n)return e.filter(t.map((function(e){return l(e,r)})),(function(e){return void 0!==e}));t.forEach((function(e){return l(e,r)}))}(a.elements,o&&o.element))}return void(o?h(!0):r.push(e.createDiagnosticForNodeInSourceFile(t,a,e.Diagnostics.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal)));function _(n){var c;if(!s){var l=null===(c=null==o?void 0:o.extraValidation)||void 0===c?void 0:c.call(o,n);if(l)return void r.push(e.createDiagnosticForNodeInSourceFile.apply(void 0,i([t,a],l)))}return n}function h(n){n&&(r.push(e.createDiagnosticForNodeInSourceFile(t,a,e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,o.name,j(o))),s=!0)}}function u(r){return e.isStringLiteral(r)&&e.isStringDoubleQuoted(r,t)}}function j(t){return"list"===t.type?"Array":e.isString(t.type)?t.type:"string"}function B(t,r){return!!t&&(!!$(r)||("list"===t.type?e.isArray(r):typeof r===(e.isString(t.type)?t.type:"string")))}function z(t){return a({},e.arrayFrom(t.entries()).reduce((function(e,t){var r;return a(a({},e),((r={})[t[0]]=t[1],r))}),{}))}function U(t){if(e.length(t)){if(1!==e.length(t))return t;if("**/*"!==t[0])return t}}function q(e){return"string"===e.type||"number"===e.type||"boolean"===e.type||"object"===e.type?void 0:"list"===e.type?q(e.element):e.type}function J(t,r){return e.forEachEntry(r,(function(e,r){if(e===t)return r}))}function V(e,t){return H(e,c(),t)}function H(t,r,n){var i=r.optionsNameMap,a=new e.Map,o=n&&e.createGetCanonicalFileName(n.useCaseSensitiveFileNames),s=function(r){if(e.hasProperty(t,r)){if(i.has(r)&&i.get(r).category===e.Diagnostics.Command_line_Options)return"continue";var s=t[r],c=i.get(r.toLowerCase());if(c){var l=q(c);l?"list"===c.type?a.set(r,s.map((function(e){return J(e,l)}))):a.set(r,J(s,l)):n&&c.isFilePath?a.set(r,e.getRelativePathFromFile(n.configFilePath,e.getNormalizedAbsolutePath(s,e.getDirectoryPath(n.configFilePath)),o)):a.set(r,s)}}};for(var c in t)s(c);return a}function K(e,t,r){if(e&&!$(t))if("list"===e.type){var n=t;if(e.element.isFilePath&&n.length)return n.map(r)}else if(e.isFilePath)return r(t);return t}function W(e,t,r,n,i,a,o,s,c){return X(void 0,e,t,r,n,c,i,a,o,s)}function G(e,t){t&&Object.defineProperty(e,"configFile",{enumerable:!1,writable:!1,value:t})}function $(e){return null==e}function Y(t,r){return e.getDirectoryPath(e.getNormalizedAbsolutePath(t,r))}function X(t,r,n,i,a,o,s,c,l,u){void 0===a&&(a={}),void 0===c&&(c=[]),void 0===l&&(l=[]),e.Debug.assert(void 0===t&&void 0!==r||void 0!==t&&void 0===r);var d=[],p=te(t,r,n,i,s,c,d,u),f=p.raw,m=e.extend(a,p.options||{}),g=o&&p.watchOptions?e.extend(o,p.watchOptions):p.watchOptions||o;m.configFilePath=s&&e.normalizeSlashes(s);var _=function(){var t=b("references",(function(e){return"object"==typeof e}),"object"),n=y(v("files"));if(n){var i="no-prop"===t||e.isArray(t)&&0===t.length,a=e.hasProperty(f,"extends");if(0===n.length&&i&&!a)if(r){var o=s||"tsconfig.json",c=e.Diagnostics.The_files_list_in_config_file_0_is_empty,l=e.firstDefined(e.getTsConfigPropArray(r,"files"),(function(e){return e.initializer})),u=l?e.createDiagnosticForNodeInSourceFile(r,l,c,o):e.createCompilerDiagnostic(c,o);d.push(u)}else k(e.Diagnostics.The_files_list_in_config_file_0_is_empty,s||"tsconfig.json")}var p,m,g=y(v("include")),_=v("exclude"),h=y(_);if("no-prop"===_&&f.compilerOptions){var x=f.compilerOptions.outDir,S=f.compilerOptions.declarationDir;(x||S)&&(h=[x,S].filter((function(e){return!!e})))}void 0===n&&void 0===g&&(g=["**/*"]);g&&(p=be(g,d,!0,r,"include"));h&&(m=be(h,d,!1,r,"exclude"));return{filesSpecs:n,includeSpecs:g,excludeSpecs:h,validatedFilesSpec:e.filter(n,e.isString),validatedIncludeSpecs:p,validatedExcludeSpecs:m}}();r&&(r.configFileSpecs=_),G(m,r);var h=e.normalizePath(s?Y(s,i):i);return{options:m,watchOptions:g,fileNames:function(e){var t=ye(_,e,m,n,l);Z(t,ee(f),c)&&d.push(Q(_,s));return t}(h),projectReferences:function(t){var r,n=b("references",(function(e){return"object"==typeof e}),"object");if(e.isArray(n))for(var i=0,a=n;i<a.length;i++){var o=a[i];"string"!=typeof o.path?k(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(r||(r=[])).push({path:e.getNormalizedAbsolutePath(o.path,t),originalPath:o.path,prepend:o.prepend,circular:o.circular})}return r}(h),typeAcquisition:p.typeAcquisition||ae(),raw:f,errors:d,wildcardDirectories:xe(_,h,n.useCaseSensitiveFileNames),compileOnSave:!!f.compileOnSave};function y(t){return e.isArray(t)?t:void 0}function v(t){return b(t,e.isString,"string")}function b(t,n,i){if(e.hasProperty(f,t)&&!$(f[t])){if(e.isArray(f[t])){var a=f[t];return r||e.every(a,n)||d.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,t,i)),a}return k(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,t,"Array"),"not-array"}return"no-prop"}function k(t,n,i){r||d.push(e.createCompilerDiagnostic(t,n,i))}}function Q(t,r){var n=t.includeSpecs,i=t.excludeSpecs;return e.createCompilerDiagnostic(e.Diagnostics.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,r||"tsconfig.json",JSON.stringify(n||[]),JSON.stringify(i||[]))}function Z(e,t,r){return 0===e.length&&t&&(!r||0===r.length)}function ee(t){return!e.hasProperty(t,"files")&&!e.hasProperty(t,"references")}function te(t,r,n,a,o,s,c,l){var u;a=e.normalizeSlashes(a);var d=e.getNormalizedAbsolutePath(o||"",a);if(s.indexOf(d)>=0)return c.push(e.createCompilerDiagnostic(e.Diagnostics.Circularity_detected_while_resolving_configuration_Colon_0,i(i([],s),[d]).join(" -> "))),{raw:t||M(r,c)};var p=t?function(t,r,n,i,a){e.hasProperty(t,"excludes")&&a.push(e.createCompilerDiagnostic(e.Diagnostics.Unknown_option_excludes_Did_you_mean_exclude));var o,s=ie(t.compilerOptions,n,a,i),c=oe(t.typeAcquisition||t.typingOptions,n,a,i),l=function(e,t,r){return se(O(),e,t,void 0,I,r)}(t.watchOptions,n,a);if(t.compileOnSave=function(t,r,n){if(!e.hasProperty(t,e.compileOnSaveCommandLineOption.name))return!1;var i=ce(e.compileOnSaveCommandLineOption,t.compileOnSave,r,n);return"boolean"==typeof i&&i}(t,n,a),t.extends)if(e.isString(t.extends)){var u=i?Y(i,n):n;o=re(t.extends,r,u,a,e.createCompilerDiagnostic)}else a.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"extends","string"));return{raw:t,options:s,watchOptions:l,typeAcquisition:c,extendedConfigPath:o}}(t,n,a,o,c):function(t,r,n,i,a){var o,s,c,l,u=ne(i),d={onSetValidOptionKeyValueInParent:function(t,r,a){var l;switch(t){case"compilerOptions":l=u;break;case"watchOptions":l=c||(c={});break;case"typeAcquisition":l=o||(o=ae(i));break;case"typingOptions":l=s||(s=ae(i));break;default:e.Debug.fail("Unknown option")}l[r.name]=le(r,n,a)},onSetValidOptionKeyValueInRoot:function(o,s,c,u){if("extends"!==o);else{var d=i?Y(i,n):n;l=re(c,r,d,a,(function(r,n){return e.createDiagnosticForNodeInSourceFile(t,u,r,n)}))}},onSetUnknownOptionKeyValueInRoot:function(r,n,i,o){"excludes"===r&&a.push(e.createDiagnosticForNodeInSourceFile(t,n,e.Diagnostics.Unknown_option_excludes_Did_you_mean_exclude))}},p=L(t,a,!0,(void 0===P&&(P={name:void 0,type:"object",elementOptions:w([{name:"compilerOptions",type:"object",elementOptions:F(),extraKeyDiagnostics:e.compilerOptionsDidYouMeanDiagnostics},{name:"watchOptions",type:"object",elementOptions:O(),extraKeyDiagnostics:I},{name:"typingOptions",type:"object",elementOptions:R(),extraKeyDiagnostics:E},{name:"typeAcquisition",type:"object",elementOptions:R(),extraKeyDiagnostics:E},{name:"extends",type:"string"},{name:"references",type:"list",element:{name:"references",type:"object"}},{name:"files",type:"list",element:{name:"files",type:"string"}},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},e.compileOnSaveCommandLineOption])}),P),d);o||(o=s?void 0!==s.enableAutoDiscovery?{enable:s.enableAutoDiscovery,include:s.include,exclude:s.exclude}:s:ae(i));return{raw:p,options:u,watchOptions:c,typeAcquisition:o,extendedConfigPath:l}}(r,n,a,o,c);if((null===(u=p.options)||void 0===u?void 0:u.paths)&&(p.options.pathsBasePath=a),p.extendedConfigPath){s=s.concat([d]);var f=function(t,r,n,i,a,o){var s,c,l,u,d=n.useCaseSensitiveFileNames?r:e.toFileNameLowerCase(r);o&&(c=o.get(d))?(l=c.extendedResult,u=c.extendedConfig):(l=x(r,(function(e){return n.readFile(e)})),l.parseDiagnostics.length||(u=te(void 0,l,n,e.getDirectoryPath(r),e.getBaseFileName(r),i,a,o)),o&&o.set(d,{extendedResult:l,extendedConfig:u}));t&&(t.extendedSourceFiles=[l.fileName],l.extendedSourceFiles&&(s=t.extendedSourceFiles).push.apply(s,l.extendedSourceFiles));if(l.parseDiagnostics.length)return void a.push.apply(a,l.parseDiagnostics);return u}(r,p.extendedConfigPath,n,s,c,l);if(f&&f.options){var m,g=f.raw,_=p.raw,h=function(t){!_[t]&&g[t]&&(_[t]=e.map(g[t],(function(t){return e.isRootedDiskPath(t)?t:e.combinePaths(m||(m=e.convertToRelativePath(e.getDirectoryPath(p.extendedConfigPath),a,e.createGetCanonicalFileName(n.useCaseSensitiveFileNames))),t)})))};h("include"),h("exclude"),h("files"),void 0===_.compileOnSave&&(_.compileOnSave=g.compileOnSave),p.options=e.assign({},f.options,p.options),p.watchOptions=p.watchOptions&&f.watchOptions?e.assign({},f.watchOptions,p.watchOptions):p.watchOptions||f.watchOptions}}return p}function re(t,r,n,i,a){if(t=e.normalizeSlashes(t),e.isRootedDiskPath(t)||e.startsWith(t,"./")||e.startsWith(t,"../")){var o=e.getNormalizedAbsolutePath(t,n);return r.fileExists(o)||e.endsWith(o,".json")||(o+=".json",r.fileExists(o))?o:void i.push(a(e.Diagnostics.File_0_not_found,t))}var s=e.nodeModuleNameResolver(t,e.combinePaths(n,"tsconfig.json"),{moduleResolution:e.ModuleResolutionKind.NodeJs},r,void 0,void 0,!0);if(s.resolvedModule)return s.resolvedModule.resolvedFileName;i.push(a(e.Diagnostics.File_0_not_found,t))}function ne(t){return t&&"jsconfig.json"===e.getBaseFileName(t)?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function ie(t,r,n,i){var a=ne(i);return se(F(),t,r,a,e.compilerOptionsDidYouMeanDiagnostics,n),i&&(a.configFilePath=e.normalizeSlashes(i)),a}function ae(t){return{enable:!!t&&"jsconfig.json"===e.getBaseFileName(t),include:[],exclude:[]}}function oe(e,t,r,n){var i=ae(n),a=l(e);return se(R(),a,t,i,E,r),i}function se(t,r,n,i,a,o){if(r){for(var s in r){var c=t.get(s);c?(i||(i={}))[c.name]=ce(c,r[s],n,o):o.push(g(s,a,e.createCompilerDiagnostic))}return i}}function ce(t,r,n,i){if(B(t,r)){var a=t.type;if("list"===a&&e.isArray(r))return function(t,r,n,i){return e.filter(e.map(r,(function(e){return ce(t.element,e,n,i)})),(function(e){return!!e}))}(t,r,n,i);if(!e.isString(a))return pe(t,r,i);var o=de(t,r,i);return $(o)?o:ue(t,n,o)}i.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,t.name,j(t)))}function le(t,r,n){if(!$(n)){if("list"===t.type){var i=t;return i.element.isFilePath||!e.isString(i.element.type)?e.filter(e.map(n,(function(e){return le(i.element,r,e)})),(function(e){return!!e})):n}return e.isString(t.type)?ue(t,r,n):t.type.get(e.isString(n)?n.toLowerCase():n)}}function ue(t,r,n){return t.isFilePath&&""===(n=e.getNormalizedAbsolutePath(n,r))&&(n="."),n}function de(t,r,n){var i;if(!$(r)){var a=null===(i=t.extraValidation)||void 0===i?void 0:i.call(t,r);if(!a)return r;n.push(e.createCompilerDiagnostic.apply(void 0,a))}}function pe(e,t,r){if(!$(t)){var n=t.toLowerCase(),i=e.type.get(n);if(void 0!==i)return de(e,i,r);r.push(u(e))}}function fe(e){return"function"==typeof e.trim?e.trim():e.replace(/^[\s]+|[\s]+$/g,"")}e.convertToObject=M,e.convertToObjectWorker=L,e.convertToTSConfig=function(t,r,n){var i,o,s,c=e.createGetCanonicalFileName(n.useCaseSensitiveFileNames),l=e.map(e.filter(t.fileNames,(null===(o=null===(i=t.options.configFile)||void 0===i?void 0:i.configFileSpecs)||void 0===o?void 0:o.validatedIncludeSpecs)?function(t,r,n,i){if(!r)return e.returnTrue;var a=e.getFileMatcherPatterns(t,n,r,i.useCaseSensitiveFileNames,i.getCurrentDirectory()),o=a.excludePattern&&e.getRegexFromPattern(a.excludePattern,i.useCaseSensitiveFileNames),s=a.includeFilePattern&&e.getRegexFromPattern(a.includeFilePattern,i.useCaseSensitiveFileNames);if(s)return o?function(e){return!(s.test(e)&&!o.test(e))}:function(e){return!s.test(e)};if(o)return function(e){return o.test(e)};return e.returnTrue}(r,t.options.configFile.configFileSpecs.validatedIncludeSpecs,t.options.configFile.configFileSpecs.validatedExcludeSpecs,n):e.returnTrue),(function(t){return e.getRelativePathFromFile(e.getNormalizedAbsolutePath(r,n.getCurrentDirectory()),e.getNormalizedAbsolutePath(t,n.getCurrentDirectory()),c)})),u=V(t.options,{configFilePath:e.getNormalizedAbsolutePath(r,n.getCurrentDirectory()),useCaseSensitiveFileNames:n.useCaseSensitiveFileNames}),d=t.watchOptions&&H(t.watchOptions,T());return a(a({compilerOptions:a(a({},z(u)),{showConfig:void 0,configFile:void 0,configFilePath:void 0,help:void 0,init:void 0,listFiles:void 0,listEmittedFiles:void 0,project:void 0,build:void 0,version:void 0}),watchOptions:d&&z(d),references:e.map(t.projectReferences,(function(e){return a(a({},e),{path:e.originalPath?e.originalPath:"",originalPath:void 0})})),files:e.length(l)?l:void 0},(null===(s=t.options.configFile)||void 0===s?void 0:s.configFileSpecs)?{include:U(t.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:t.options.configFile.configFileSpecs.validatedExcludeSpecs}:{}),{compileOnSave:!!t.compileOnSave||void 0})},e.generateTSConfig=function(t,r,n){var i=V(e.extend(t,e.defaultInitCompilerOptions));return function(){for(var t=e.createMultiMap(),c=0,l=e.optionDeclarations;c<l.length;c++){var u=l[c],d=u.category;s(u)&&t.add(e.getLocaleSpecificMessage(d),u)}var p=0,f=0,m=[];t.forEach((function(t,r){0!==m.length&&m.push({value:""}),m.push({value:"/* "+r+" */"});for(var n=0,o=t;n<o.length;n++){var s=o[n],c=void 0;c=i.has(s.name)?'"'+s.name+'": '+JSON.stringify(i.get(s.name))+((f+=1)===i.size?"":","):'// "'+s.name+'": '+JSON.stringify(a(s))+",",m.push({value:c,description:"/* "+(s.description&&e.getLocaleSpecificMessage(s.description)||s.name)+" */"}),p=Math.max(c.length,p)}}));var g=o(2),_=[];_.push("{"),_.push(g+'"compilerOptions": {'),_.push(""+g+g+"/* "+e.getLocaleSpecificMessage(e.Diagnostics.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_json_to_read_more_about_this_file)+" */"),_.push("");for(var h=0,y=m;h<y.length;h++){var v=y[h],b=v.value,k=v.description,x=void 0===k?"":k;_.push(b&&""+g+g+b+(x&&o(p-b.length+2)+x))}if(r.length){_.push(g+"},"),_.push(g+'"files": [');for(var S=0;S<r.length;S++)_.push(""+g+g+JSON.stringify(r[S])+(S===r.length-1?"":","));_.push(g+"]")}else _.push(g+"}");return _.push("}"),_.join(n)+n}();function a(t){switch(t.type){case"number":return 1;case"boolean":return!0;case"string":return t.isFilePath?"./":"";case"list":return[];case"object":return{};default:var r=t.type.keys().next();return r.done?e.Debug.fail("Expected 'option.type' to have entries."):r.value}}function o(e){return Array(e+1).join(" ")}function s(t){var r=t.category,n=t.name;return void 0!==r&&r!==e.Diagnostics.Command_line_Options&&(r!==e.Diagnostics.Advanced_Options||i.has(n))}},e.convertToOptionsWithAbsolutePaths=function(t,r){var n={},i=c().optionsNameMap;for(var a in t)e.hasProperty(t,a)&&(n[a]=K(i.get(a.toLowerCase()),t[a],r));return n.configFilePath&&(n.configFilePath=r(n.configFilePath)),n},e.parseJsonConfigFileContent=function(e,t,r,n,i,a,o,s,c){return X(e,void 0,t,r,n,c,i,a,o,s)},e.parseJsonSourceFileConfigFileContent=W,e.setConfigFileInOptions=G,e.canJsonReportNoInputFiles=ee,e.updateErrorForNoInputFiles=function(t,r,n,i,a){var o=i.length;return Z(t,a)?i.push(Q(n,r)):e.filterMutate(i,(function(t){return!function(t){return t.code===e.Diagnostics.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}(t)})),o!==i.length},e.convertCompilerOptionsFromJson=function(e,t,r){var n=[];return{options:ie(e,t,n,r),errors:n}},e.convertTypeAcquisitionFromJson=function(e,t,r){var n=[];return{options:oe(e,t,n,r),errors:n}},e.convertJsonOption=ce;var me=/(^|\/)\*\*\/?$/,ge=/(^|\/)\*\*\/(.*\/)?\.\.($|\/)/,_e=/\/[^/]*?[*?][^/]*\//,he=/^[^*?]*(?=\/[^/]*[*?])/;function ye(t,r,n,i,a){void 0===a&&(a=e.emptyArray),r=e.normalizePath(r);var o,s=e.createGetCanonicalFileName(i.useCaseSensitiveFileNames),c=new e.Map,l=new e.Map,u=new e.Map,d=t.validatedFilesSpec,p=t.validatedIncludeSpecs,f=t.validatedExcludeSpecs,m=e.getSupportedExtensions(n,a),g=e.getSuppoertedExtensionsWithJsonIfResolveJsonModule(n,m);if(d)for(var _=0,h=d;_<h.length;_++){var y=h[_],v=e.getNormalizedAbsolutePath(y,r);c.set(s(v),v)}if(p&&p.length>0)for(var b=function(t){if(e.fileExtensionIs(t,".json")){if(!o){var n=p.filter((function(t){return e.endsWith(t,".json")})),a=e.map(e.getRegularExpressionsForWildcards(n,r,"files"),(function(e){return"^"+e+"$"}));o=a?a.map((function(t){return e.getRegexFromPattern(t,i.useCaseSensitiveFileNames)})):e.emptyArray}if(-1!==e.findIndex(o,(function(e){return e.test(t)}))){var d=s(t);c.has(d)||u.has(d)||u.set(d,t)}return"continue"}if(function(t,r,n,i,a){for(var o=e.getExtensionPriority(t,i),s=e.adjustExtensionPriority(o,i),c=0;c<s;c++){var l=i[c],u=a(e.changeExtension(t,l));if(r.has(u)||n.has(u))return!0}return!1}(t,c,l,m,s))return"continue";!function(t,r,n,i){for(var a=e.getExtensionPriority(t,n),o=e.getNextLowestExtensionPriority(a,n);o<n.length;o++){var s=n[o],c=i(e.changeExtension(t,s));r.delete(c)}}(t,l,m,s);var f=s(t);c.has(f)||l.has(f)||l.set(f,t)},k=0,x=i.readDirectory(r,g,f,p,void 0);k<x.length;k++){b(v=x[k])}var S=e.arrayFrom(c.values()),w=e.arrayFrom(l.values());return S.concat(w,e.arrayFrom(u.values()))}function ve(t,r,n,i,a){var o=e.getRegularExpressionForWildcard(r,e.combinePaths(e.normalizePath(i),a),"exclude"),s=o&&e.getRegexFromPattern(o,n);return!!s&&(!!s.test(t)||!e.hasExtension(t)&&s.test(e.ensureTrailingDirectorySeparator(t)))}function be(t,r,n,i,a){return t.filter((function(t){if(!e.isString(t))return!1;var i=ke(t,n);return void 0!==i&&r.push(o.apply(void 0,i)),void 0===i}));function o(t,r){var n=e.getTsConfigPropArrayElementValue(i,a,r);return n?e.createDiagnosticForNodeInSourceFile(i,n,t,r):e.createCompilerDiagnostic(t,r)}}function ke(t,r){return r&&me.test(t)?[e.Diagnostics.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,t]:ge.test(t)?[e.Diagnostics.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,t]:void 0}function xe(t,r,n){var i=t.validatedIncludeSpecs,a=t.validatedExcludeSpecs,o=e.getRegularExpressionForWildcard(a,r,"exclude"),s=o&&new RegExp(o,n?"":"i"),c={};if(void 0!==i){for(var l=[],u=0,d=i;u<d.length;u++){var p=d[u],f=e.normalizePath(e.combinePaths(r,p));if(!s||!s.test(f)){var m=Se(f,n);if(m){var g=m.key,_=m.flags,h=c[g];(void 0===h||h<_)&&(c[g]=_,1===_&&l.push(g))}}}for(var g in c)if(e.hasProperty(c,g))for(var y=0,v=l;y<v.length;y++){var b=v[y];g!==b&&e.containsPath(b,g,r,!n)&&delete c[g]}}return c}function Se(t,r){var n=he.exec(t);return n?{key:r?n[0]:e.toFileNameLowerCase(n[0]),flags:_e.test(t)?1:0}:e.isImplicitGlob(t)?{key:r?t:e.toFileNameLowerCase(t),flags:1}:void 0}function we(t,r){switch(r.type){case"object":case"string":return"";case"number":return"number"==typeof t?t:"";case"boolean":return"boolean"==typeof t?t:"";case"list":var n=r.element;return e.isArray(t)?t.map((function(e){return we(e,n)})):"";default:return e.forEachEntry(r.type,(function(e,r){if(e===t)return r}))}}e.getFileNamesFromConfigSpecs=ye,e.isExcludedFile=function(t,r,n,i,a){var o=r.validatedFilesSpec,s=r.validatedIncludeSpecs,c=r.validatedExcludeSpecs;if(!e.length(s)||!e.length(c))return!1;n=e.normalizePath(n);var l=e.createGetCanonicalFileName(i);if(o)for(var u=0,d=o;u<d.length;u++){var p=d[u];if(l(e.getNormalizedAbsolutePath(p,n))===t)return!1}return ve(t,c,i,a,n)},e.matchesExclude=function(t,r,n,i){return ve(t,e.filter(r,(function(e){return!ge.test(e)})),n,i)},e.convertCompilerOptionsForTelemetry=function(e){var t={};for(var r in e)if(e.hasOwnProperty(r)){var n=y(r);void 0!==n&&(t[r]=we(e[r],n))}return t}}(d||(d={}));var u=r(79429);!function(e){function t(t){t.trace(e.formatMessage.apply(void 0,arguments))}function r(e,t){return!!e.traceResolution&&void 0!==t.trace}function n(t,r){var n;if(r&&t){var i=t.packageJsonContent;"string"==typeof i.name&&"string"==typeof i.version&&(n={name:i.name,subModuleName:r.path.slice(t.packageDirectory.length+e.directorySeparator.length),version:i.version})}return r&&{path:r.path,extension:r.ext,packageId:n}}function o(e){return n(void 0,e)}function s(t){if(t)return e.Debug.assert(void 0===t.packageId),{path:t.path,ext:t.extension}}var c,l;function d(t){if(t)return e.Debug.assert(e.extensionIsTS(t.extension)),{fileName:t.path,packageId:t.packageId}}function p(e,t,r,n){var i;return n?((i=n.failedLookupLocations).push.apply(i,r),n):{resolvedModule:e&&{resolvedFileName:e.path,originalPath:!0===e.originalPath?void 0:e.originalPath,extension:e.extension,isExternalLibraryImport:t,packageId:e.packageId},failedLookupLocations:r}}function f(r,n,i,a){if(e.hasProperty(r,n)){var o=r[n];if(typeof o===i&&null!==o)return o;a.traceEnabled&&t(a.host,e.Diagnostics.Expected_type_of_0_field_in_package_json_to_be_1_got_2,n,i,null===o?"null":typeof o)}else if(a.traceEnabled){var s=e.isOhpm(a.compilerOptions.packageManagerType)?e.Diagnostics.oh_package_json5_does_not_have_a_0_field:e.Diagnostics.package_json_does_not_have_a_0_field;t(a.host,s,n)}}function m(r,n,i,a){var o=f(r,n,"string",a);if(void 0!==o){if(o){var s=e.normalizePath(e.combinePaths(i,o));if(a.traceEnabled){var c=e.isOhpm(a.compilerOptions.packageManagerType)?e.Diagnostics.oh_package_json5_has_0_field_1_that_references_2:e.Diagnostics.package_json_has_0_field_1_that_references_2;t(a.host,c,n,o,s)}return s}a.traceEnabled&&t(a.host,e.Diagnostics.package_json_had_a_falsy_0_field,n)}}function g(e,t,r){return m(e,"typings",t,r)||m(e,"types",t,r)}function _(e,t,r){return m(e,"main",t,r)}function h(r,n){var i=function(r,n){var i=f(r,"typesVersions","object",n);if(void 0!==i)return n.traceEnabled&&t(n.host,e.Diagnostics.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),i}(r,n);if(void 0!==i){if(n.traceEnabled)for(var a in i)e.hasProperty(i,a)&&!e.VersionRange.tryParse(a)&&t(n.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,a);var o=y(i);if(o){var s=o.version,c=o.paths;if("object"==typeof c)return o;n.traceEnabled&&t(n.host,e.Diagnostics.Expected_type_of_0_field_in_package_json_to_be_1_got_2,"typesVersions['"+s+"']","object",typeof c)}else n.traceEnabled&&t(n.host,e.Diagnostics.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,e.versionMajorMinor)}}function y(t){for(var r in l||(l=new e.Version(e.version)),t)if(e.hasProperty(t,r)){var n=e.VersionRange.tryParse(r);if(void 0!==n&&n.test(l))return{version:r,paths:t[r]}}}function v(t,r){return t.typeRoots?t.typeRoots:(t.configFilePath?n=e.getDirectoryPath(t.configFilePath):r.getCurrentDirectory&&(n=r.getCurrentDirectory()),void 0!==n?function(t,r,n){var i,a=e.combinePaths(e.getModuleByPMType(n),"@types");if(!r.directoryExists)return[e.combinePaths(t,a)];return e.forEachAncestorDirectory(e.normalizePath(t),(function(t){var n=e.combinePaths(t,a);r.directoryExists(n)&&(i||(i=[])).push(n)})),i}(n,r,t.packageManagerType):void 0);var n}function b(t){var r=new e.Map,n=new e.Map;return{ownMap:r,redirectsMap:n,getOrCreateMapOfCacheRedirects:function(i){if(!i)return r;var a=i.sourceFile.path,o=n.get(a);o||(o=!t||e.optionsHaveModuleResolutionChanges(t,i.commandLine.options)?new e.Map:r,n.set(a,o));return o},clear:function(){r.clear(),n.clear()},setOwnOptions:function(e){t=e},setOwnMap:function(e){r=e}}}function k(t,r,n,i){return{getOrCreateCacheForDirectory:function(r,o){var s=e.toPath(r,n,i);return a(t,o,s,(function(){return new e.Map}))},getOrCreateCacheForModuleName:function(t,n){return e.Debug.assert(!e.isExternalModuleNameRelative(t)),a(r,n,t,o)},directoryToModuleNameMap:t,moduleNameToDirectoryMap:r};function a(e,t,r,n){var i=e.getOrCreateMapOfCacheRedirects(t),a=i.get(r);return a||(a=n(),i.set(r,a)),a}function o(){var t=new e.Map;return{get:function(r){return t.get(e.toPath(r,n,i))},set:function(r,a){var o=e.toPath(r,n,i);if(t.has(o))return;t.set(o,a);var s=a.resolvedModule&&(a.resolvedModule.originalPath||a.resolvedModule.resolvedFileName),c=s&&function(t,r){var a=e.toPath(e.getDirectoryPath(r),n,i),o=0,s=Math.min(t.length,a.length);for(;o<s&&t.charCodeAt(o)===a.charCodeAt(o);)o++;if(o===t.length&&(a.length===o||a[o]===e.directorySeparator))return t;var c=e.getRootLength(t);if(o<c)return;var l=t.lastIndexOf(e.directorySeparator,o-1);if(-1===l)return;return t.substr(0,Math.max(l,c))}(o,s),l=o;for(;l!==c;){var u=e.getDirectoryPath(l);if(u===l||t.has(u))break;t.set(u,a),l=u}}}}}function x(r,n,i,a,o){var s=function(r,n,i,a){var o=a.compilerOptions,s=o.baseUrl,c=o.paths;if(c&&!e.pathIsRelative(n)){return a.traceEnabled&&(s&&t(a.host,e.Diagnostics.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,s,n),t(a.host,e.Diagnostics.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,n)),W(r,n,e.getPathsBasePath(a.compilerOptions,a.host),c,i,!1,a)}}(r,n,a,o);return s?s.value:e.isExternalModuleNameRelative(n)?function(r,n,i,a,o){if(!o.compilerOptions.rootDirs)return;o.traceEnabled&&t(o.host,e.Diagnostics.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,n);for(var s,c,l=e.normalizePath(e.combinePaths(i,n)),u=0,d=o.compilerOptions.rootDirs;u<d.length;u++){var p=d[u],f=e.normalizePath(p);e.endsWith(f,e.directorySeparator)||(f+=e.directorySeparator);var m=e.startsWith(l,f)&&(void 0===c||c.length<f.length);o.traceEnabled&&t(o.host,e.Diagnostics.Checking_if_0_is_the_longest_matching_prefix_for_1_2,f,l,m),m&&(c=f,s=p)}if(c){o.traceEnabled&&t(o.host,e.Diagnostics.Longest_matching_prefix_for_0_is_1,l,c);var g=l.substr(c.length);o.traceEnabled&&t(o.host,e.Diagnostics.Loading_0_from_the_root_dir_1_candidate_location_2,g,c,l);var _=a(r,l,!e.directoryProbablyExists(i,o.host),o);if(_)return _;o.traceEnabled&&t(o.host,e.Diagnostics.Trying_other_entries_in_rootDirs);for(var h=0,y=o.compilerOptions.rootDirs;h<y.length;h++){if((p=y[h])!==s){var v=e.combinePaths(e.normalizePath(p),g);o.traceEnabled&&t(o.host,e.Diagnostics.Loading_0_from_the_root_dir_1_candidate_location_2,g,p,v);var b=e.getDirectoryPath(v),k=a(r,v,!e.directoryProbablyExists(b,o.host),o);if(k)return k}}o.traceEnabled&&t(o.host,e.Diagnostics.Module_resolution_using_rootDirs_has_failed)}return}(r,n,i,a,o):function(r,n,i,a){var o=a.compilerOptions.baseUrl;if(!o)return;a.traceEnabled&&t(a.host,e.Diagnostics.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,o,n);var s=e.normalizePath(e.combinePaths(o,n));a.traceEnabled&&t(a.host,e.Diagnostics.Resolving_module_name_0_relative_to_base_url_1_2,n,o,s);return i(r,s,!e.directoryProbablyExists(e.getDirectoryPath(s),a.host),a)}(r,n,a,o)}e.trace=t,e.isTraceEnabled=r,function(e){e[e.TypeScript=0]="TypeScript",e[e.JavaScript=1]="JavaScript",e[e.Json=2]="Json",e[e.TSConfig=3]="TSConfig",e[e.DtsOnly=4]="DtsOnly"}(c||(c={})),e.getPackageJsonTypesVersionsPaths=y,e.getEffectiveTypeRoots=v,e.resolveTypeReferenceDirective=function(n,i,a,o,s){var l=r(a,o);s&&(a=s.commandLine.options);var u=[],p={compilerOptions:a,host:o,traceEnabled:l,failedLookupLocations:u},f=v(a,o);l&&(void 0===i?void 0===f?t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,n):t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,n,f):void 0===f?t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,n,i):t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,n,i,f),s&&t(o,e.Diagnostics.Using_compiler_options_of_project_reference_redirect_0,s.sourceFile.fileName));var m,g=function(){if(f&&f.length)return l&&t(o,e.Diagnostics.Resolving_with_primary_search_path_0,f.join(", ")),e.firstDefined(f,(function(r){var i=e.combinePaths(r,n),a=e.getDirectoryPath(i),s=e.directoryProbablyExists(a,o);return!s&&l&&t(o,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,a),d(B(c.DtsOnly,i,!s,p))}));l&&t(o,e.Diagnostics.Root_directory_cannot_be_determined_skipping_primary_search_paths)}(),_=!0;if(g||(g=function(){var r=i&&e.getDirectoryPath(i),s=a.packageManagerType;if(void 0!==r){if(l){var u=e.isOhpm(s)?e.Diagnostics.Looking_up_in_oh_modules_folder_initial_location_0:e.Diagnostics.Looking_up_in_node_modules_folder_initial_location_0;t(o,u,r)}var f=void 0;if(e.isExternalModuleNameRelative(n)){var m=e.normalizePathAndParts(e.combinePaths(r,n)).path;f=P(c.DtsOnly,m,!1,p,!0)}else{var g=J(c.DtsOnly,n,r,p,void 0,void 0);f=g&&g.value}var _=d(f);return!_&&l&&t(o,e.Diagnostics.Type_reference_directive_0_was_not_resolved,n),_}if(l){u=e.isOhpm(s)?e.Diagnostics.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_oh_modules_folder:e.Diagnostics.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder;t(o,u)}}(),_=!1),g){var h=g.fileName,y=g.packageId,b=a.preserveSymlinks?h:N(h,o,l);l&&(y?t(o,e.Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,n,b,e.packageIdToString(y),_):t(o,e.Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,n,b,_)),m={primary:_,resolvedFileName:b,packageId:y,isExternalLibraryImport:e.isOhpm(a.packageManagerType)?F(h):I(h)}}return{resolvedTypeReferenceDirective:m,failedLookupLocations:u}},e.getAutomaticTypeDirectiveNames=function(t,r){if(t.types)return t.types;var n=[];if(r.directoryExists&&r.getDirectories){var i=v(t,r);if(i)for(var a=0,o=i;a<o.length;a++){var s=o[a];if(r.directoryExists(s))for(var c=0,l=r.getDirectories(s);c<l.length;c++){var d=l[c],p=e.normalizePath(d),f=e.combinePaths(s,p,e.getPackageJsonByPMType(t.packageManagerType));if(!(e.isOhpm(t.packageManagerType)?r.fileExists(f)&&null===u.parse(r.readFile(f)).typings:r.fileExists(f)&&null===e.readJson(f,r).typings)){var m=e.getBaseFileName(p);46!==m.charCodeAt(0)&&n.push(m)}}}}return n},e.createModuleResolutionCache=function(e,t,r){return k(b(r),b(r),e,t)},e.createCacheWithRedirects=b,e.createModuleResolutionCacheWithMaps=k,e.resolveModuleNameFromCache=function(t,r,n){var i=e.getDirectoryPath(r),a=n&&n.getOrCreateCacheForDirectory(i);return a&&a.get(t)},e.resolveModuleName=function(n,i,a,o,s,c){var l=r(a,o);c&&(a=c.commandLine.options),l&&(t(o,e.Diagnostics.Resolving_module_0_from_1,n,i),c&&t(o,e.Diagnostics.Using_compiler_options_of_project_reference_redirect_0,c.sourceFile.fileName));var u=e.getDirectoryPath(i),d=s&&s.getOrCreateCacheForDirectory(u,c),p=d&&d.get(n);if(p)l&&t(o,e.Diagnostics.Resolution_for_module_0_was_found_in_cache_from_location_1,n,u);else{var f=a.moduleResolution;switch(void 0===f?(f=e.getEmitModuleKind(a)===e.ModuleKind.CommonJS?e.ModuleResolutionKind.NodeJs:e.ModuleResolutionKind.Classic,l&&t(o,e.Diagnostics.Module_resolution_kind_is_not_specified_using_0,e.ModuleResolutionKind[f])):l&&t(o,e.Diagnostics.Explicitly_specified_module_resolution_kind_Colon_0,e.ModuleResolutionKind[f]),e.perfLogger.logStartResolveModule(n),f){case e.ModuleResolutionKind.NodeJs:p=C(n,i,a,o,s,c);break;case e.ModuleResolutionKind.Classic:p=Q(n,i,a,o,s,c);break;default:return e.Debug.fail("Unexpected moduleResolution: "+f)}p&&p.resolvedModule&&e.perfLogger.logInfoEvent('Module "'+n+'" resolved to "'+p.resolvedModule.resolvedFileName+'"'),e.perfLogger.logStopResolveModule(p&&p.resolvedModule?""+p.resolvedModule.resolvedFileName:"null"),d&&(d.set(n,p),e.isExternalModuleNameRelative(n)||s.getOrCreateCacheForModuleName(n,c).set(u,p))}return l&&(p.resolvedModule?p.resolvedModule.packageId?t(o,e.Diagnostics.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,n,p.resolvedModule.resolvedFileName,e.packageIdToString(p.resolvedModule.packageId)):t(o,e.Diagnostics.Module_name_0_was_successfully_resolved_to_1,n,p.resolvedModule.resolvedFileName):t(o,e.Diagnostics.Module_name_0_was_not_resolved,n)),p},e.resolveJSModule=function(e,t,r){var n=T(e,t,r),i=n.resolvedModule,a=n.failedLookupLocations;if(!i)throw new Error("Could not resolve JS module '"+e+"' starting at '"+t+"'. Looked in: "+a.join(", "));return i.resolvedFileName},e.tryResolveJSModule=function(e,t,r){var n=T(e,t,r).resolvedModule;return n&&n.resolvedFileName};var S=[c.JavaScript],w=[c.TypeScript,c.JavaScript],D=i(i([],w),[c.Json]),E=[c.TSConfig];function T(t,r,n){return A(t,r,{moduleResolution:e.ModuleResolutionKind.NodeJs,allowJs:!0},n,void 0,S,void 0)}function C(t,r,n,i,a,o,s){return A(t,e.getDirectoryPath(r),n,i,a,s?E:n.resolveJsonModule?D:w,o)}function A(n,i,o,s,l,u,d){var f,m,g=r(o,s),_=[],h={compilerOptions:o,host:s,traceEnabled:g,failedLookupLocations:_},y=e.forEach(u,(function(r){return function(r){var u=function(e,t,r,n){return P(e,t,r,n,!0)},p=e.isOhpm(o.packageManagerType),f=x(r,n,i,u,h);if(f)return Z({resolved:f,isExternalLibraryImport:p?F(f.path):I(f.path)});if(e.isExternalModuleNameRelative(n)){var m=e.normalizePathAndParts(e.combinePaths(i,n)),_=m.path,y=m.parts,v=P(r,_,!1,h,!0);return v&&Z({resolved:v,isExternalLibraryImport:e.contains(y,e.getModuleByPMType(o.packageManagerType))})}if(g){var b=p?e.Diagnostics.Loading_module_0_from_oh_modules_folder_target_file_type_1:e.Diagnostics.Loading_module_0_from_node_modules_folder_target_file_type_1;t(s,b,n,c[r])}var k=J(r,n,i,h,l,d);if(!k)return;var S=k.value;if(!o.preserveSymlinks&&S&&!S.originalPath){var w=N(S.path,s,g),D=w===S.path?void 0:S.path;S=a(a({},S),{path:w,originalPath:D})}return{value:S&&{resolved:S,isExternalLibraryImport:!0}}}(r)}));return p(null===(f=null==y?void 0:y.value)||void 0===f?void 0:f.resolved,null===(m=null==y?void 0:y.value)||void 0===m?void 0:m.isExternalLibraryImport,_,h.resultFromCache)}function N(r,n,i){if(!n.realpath)return r;var a=e.normalizePath(n.realpath(r));return i&&t(n,e.Diagnostics.Resolving_real_path_for_0_result_1,r,a),e.Debug.assert(n.fileExists(a),r+" linked to nonexistent file "+a),a}function P(r,i,a,o,s){if(o.traceEnabled&&t(o.host,e.Diagnostics.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1,i,c[r]),!e.hasTrailingDirectorySeparator(i)){if(!a){var l=e.getDirectoryPath(i);e.directoryProbablyExists(l,o.host)||(o.traceEnabled&&t(o.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,l),a=!0)}var u=M(r,i,a,o);if(u){var d=s?function(t,r){var n=e.isOhpm(r)?e.ohModulesPathPart:e.nodeModulesPathPart,i=e.normalizePath(t.path),a=i.lastIndexOf(n);if(-1===a)return;var o=a+n.length,s=O(i,o);64===i.charCodeAt(o)&&(s=O(i,s));return i.slice(0,s)}(u,o.compilerOptions.packageManagerType):void 0;return n(d?z(d,!1,o):void 0,u)}}a||(e.directoryProbablyExists(i,o.host)||(o.traceEnabled&&t(o.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,i),a=!0));return B(r,i,a,o,s)}function I(t){return e.stringContains(t,e.nodeModulesPathPart)}function F(t){return e.stringContains(t,e.ohModulesPathPart)}function O(t,r){var n=t.indexOf(e.directorySeparator,r+1);return-1===n?r:n}function R(e,t,r,n){return o(M(e,t,r,n))}function M(r,n,i,a){if(r===c.Json||r===c.TSConfig){var o=e.tryRemoveExtension(n,".json");return void 0===o&&r===c.Json?void 0:L(o||n,r,i,a)}var s=L(n,r,i,a);if(s)return s;if(e.hasJSFileExtension(n)){var l=e.removeFileExtension(n);if(a.traceEnabled){var u=n.substring(l.length);t(a.host,e.Diagnostics.File_name_0_has_a_1_extension_stripping_it,n,u)}return L(l,r,i,a)}}function L(t,r,n,i){if(!n){var a=e.getDirectoryPath(t);a&&(n=!e.directoryProbablyExists(a,i.host))}switch(r){case c.DtsOnly:return i.compilerOptions.ets&&o(".d.ets")||o(".d.ts");case c.TypeScript:return i.compilerOptions.ets?o(".ets")||o(".ts")||o(".tsx")||o(".d.ets")||o(".d.ts"):o(".ts")||o(".tsx")||o(".d.ts")||o(".ets");case c.JavaScript:return o(".js")||o(".jsx");case c.TSConfig:case c.Json:return o(".json")}function o(e){var r=j(t+e,n,i);return void 0===r?void 0:{path:r,ext:e}}}function j(r,n,i){if(!n){if(i.host.fileExists(r))return i.traceEnabled&&t(i.host,e.Diagnostics.File_0_exist_use_it_as_a_name_resolution_result,r),r;i.traceEnabled&&t(i.host,e.Diagnostics.File_0_does_not_exist,r)}i.failedLookupLocations.push(r)}function B(e,t,r,i,a){void 0===a&&(a=!0);var o=a?z(t,r,i):void 0;return n(o,U(e,t,r,i,o&&o.packageJsonContent,o&&o.versionPaths))}function z(r,n,i){var a=i.host,o=i.traceEnabled,s=!n&&e.directoryProbablyExists(r,a),c=e.combinePaths(r,e.getPackageJsonByPMType(i.compilerOptions.packageManagerType));if(s&&a.fileExists(c)){var l=e.isOhpm(i.compilerOptions.packageManagerType),d=l?u.parse(a.readFile(c)):e.readJson(c,a);if(o)t(a,l?e.Diagnostics.Found_oh_package_json5_at_0:e.Diagnostics.Found_package_json_at_0,c);return{packageDirectory:r,packageJsonContent:d,versionPaths:h(d,i)}}s&&o&&t(a,e.Diagnostics.File_0_does_not_exist,c),i.failedLookupLocations.push(c)}function U(r,n,i,a,l,u){var d;if(l)switch(r){case c.JavaScript:case c.Json:d=_(l,n,a);break;case c.TypeScript:d=g(l,n,a)||_(l,n,a);break;case c.DtsOnly:d=g(l,n,a);break;case c.TSConfig:d=function(e,t,r){return m(e,"tsconfig",t,r)}(l,n,a);break;default:return e.Debug.assertNever(r)}var p=function(r,n,i,a){var s=j(n,i,a);if(s){var l=function(t,r){var n=e.tryGetExtensionFromPath(r);return void 0!==n&&function(e,t){switch(e){case c.JavaScript:return".js"===t||".jsx"===t;case c.TSConfig:case c.Json:return".json"===t;case c.TypeScript:return".ts"===t||".tsx"===t||".d.ts"===t||".ets"===t||".d.ets"===t;case c.DtsOnly:return".d.ts"===t||".d.ets"===t}}(t,n)?{path:r,ext:n}:void 0}(r,s);if(l)return o(l);a.traceEnabled&&t(a.host,e.Diagnostics.File_0_has_an_unsupported_extension_so_skipping_it,s)}return P(r===c.DtsOnly?c.TypeScript:r,n,i,a,!1)},f=d?!e.directoryProbablyExists(e.getDirectoryPath(d),a.host):void 0,h=i||!e.directoryProbablyExists(n,a.host),y=e.combinePaths(n,r===c.TSConfig?"tsconfig":"index");if(u&&(!d||e.containsPath(n,d))){var v=e.getRelativePathFromDirectory(n,d||y,!1);a.traceEnabled&&t(a.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,u.version,e.version,v);var b=W(r,v,n,u.paths,p,f||h,a);if(b)return s(b.value)}var k=d&&s(p(r,d,f,a));return k||M(r,y,h,a)}function q(t){var r=t.indexOf(e.directorySeparator);return"@"===t[0]&&(r=t.indexOf(e.directorySeparator,r+1)),-1===r?{packageName:t,rest:""}:{packageName:t.slice(0,r),rest:t.slice(r+1)}}function J(e,t,r,n,i,a){return V(e,t,r,n,!1,i,a)}function V(t,r,n,i,a,o,s){var c=o&&o.getOrCreateCacheForModuleName(r,s),l=i.compilerOptions.packageManagerType,u=e.getModuleByPMType(l);return e.forEachAncestorDirectory(e.normalizeSlashes(n),(function(n){if(e.getBaseFileName(n)!==u){var o=X(c,r,n,i);return o||Z(H(t,r,n,i,a))}}))}function H(r,n,i,a,o){var s=e.combinePaths(i,e.getModuleByPMType(a.compilerOptions.packageManagerType)),l=e.directoryProbablyExists(s,a.host);!l&&a.traceEnabled&&t(a.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,s);var u=o?void 0:K(r,n,s,l,a);if(u)return u;if(r===c.TypeScript||r===c.DtsOnly){var d=e.combinePaths(s,"@types"),p=l;return l&&!e.directoryProbablyExists(d,a.host)&&(a.traceEnabled&&t(a.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,d),p=!1),K(c.DtsOnly,function(r,n){var i=$(r);n.traceEnabled&&i!==r&&t(n.host,e.Diagnostics.Scoped_package_detected_looking_in_0,i);return i}(n,a),d,p,a)}}function K(r,i,a,s,c){var l=e.normalizePath(e.combinePaths(a,i)),u=z(l,!s,c);if(u){var d=M(r,l,!s,c);if(d)return o(d);var p=U(r,l,!s,c,u.packageJsonContent,u.versionPaths);return n(u,p)}var f=function(e,t,r,i){var a=M(e,t,r,i)||U(e,t,r,i,u&&u.packageJsonContent,u&&u.versionPaths);return n(u,a)},m=q(i),g=m.packageName,_=m.rest;if(""!==_){var h=e.combinePaths(a,g);if((u=z(h,!s,c))&&u.versionPaths){c.traceEnabled&&t(c.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,u.versionPaths.version,e.version,_);var y=s&&e.directoryProbablyExists(h,c.host),v=W(r,_,h,u.versionPaths.paths,f,!y,c);if(v)return v.value}}return f(r,l,!s,c)}function W(r,n,i,a,s,c,l){var u=e.matchPatternOrExact(e.getOwnKeys(a),n);if(u){var d=e.isString(u)?void 0:e.matchedText(u,n),p=e.isString(u)?u:e.patternText(u);return l.traceEnabled&&t(l.host,e.Diagnostics.Module_name_0_matched_pattern_1,n,p),{value:e.forEach(a[p],(function(n){var a=d?n.replace("*",d):n,u=e.normalizePath(e.combinePaths(i,a));l.traceEnabled&&t(l.host,e.Diagnostics.Trying_substitution_0_candidate_module_location_Colon_1,n,a);var p=e.tryGetExtensionFromPath(n);if(void 0!==p){var f=j(u,c,l);if(void 0!==f)return o({path:f,ext:p})}return s(r,u,c||!e.directoryProbablyExists(e.getDirectoryPath(u),l.host),l)}))}}}e.nodeModuleNameResolver=C,e.nodeModulesPathPart="/node_modules/",e.ohModulesPathPart="/oh_modules/",e.pathContainsNodeModules=I,e.pathContainsOHModules=F,e.parsePackageName=q;var G="__";function $(t){if(e.startsWith(t,"@")){var r=t.replace(e.directorySeparator,G);if(r!==t)return r.slice(1)}return t}function Y(t){return e.stringContains(t,G)?"@"+t.replace(G,e.directorySeparator):t}function X(r,n,i,a){var o=r&&r.get(i);if(o)return a.traceEnabled&&t(a.host,e.Diagnostics.Resolution_for_module_0_was_found_in_cache_from_location_1,n,i),a.resultFromCache=o,{value:o.resolvedModule&&{path:o.resolvedModule.resolvedFileName,originalPath:o.resolvedModule.originalPath||!0,extension:o.resolvedModule.extension,packageId:o.resolvedModule.packageId}}}function Q(t,n,i,a,o,s){var l=[],u={compilerOptions:i,host:a,traceEnabled:r(i,a),failedLookupLocations:l},d=e.getDirectoryPath(n),f=m(c.TypeScript)||m(c.JavaScript);return p(f&&f.value,!1,l,u.resultFromCache);function m(r){var n=x(r,t,d,R,u);if(n)return{value:n};if(e.isExternalModuleNameRelative(t)){var i=e.normalizePath(e.combinePaths(d,t));return Z(R(r,i,!1,u))}var a=o&&o.getOrCreateCacheForModuleName(t,s),l=e.forEachAncestorDirectory(d,(function(n){var i=X(a,t,n,u);if(i)return i;var o=e.normalizePath(e.combinePaths(n,t));return Z(R(r,o,!1,u))}));return l||(r===c.TypeScript?function(e,t,r){return V(c.DtsOnly,e,t,r,!0,void 0,void 0)}(t,d,u):void 0)}}function Z(e){return void 0!==e?{value:e}:void 0}e.getTypesPackageName=function(e){return"@types/"+$(e)},e.mangleScopedPackageName=$,e.getPackageNameFromTypesPackageName=function(t){var r=e.removePrefix(t,"@types/");return r!==t?Y(r):t},e.unmangleScopedPackageName=Y,e.classicNameResolver=Q,e.loadModuleFromGlobalCache=function(n,i,a,o,s){var l=r(a,o);l&&t(o,e.Diagnostics.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,i,n,s);var u=[],d={compilerOptions:a,host:o,traceEnabled:l,failedLookupLocations:u};return p(H(c.DtsOnly,n,s,d,!1),!0,u,d.resultFromCache)}}(d||(d={})),function(e){var t;function r(t,r){return t.body&&!t.body.parent&&(e.setParent(t.body,t),e.setParentRecursive(t.body,!1)),t.body?n(t.body,r):1}function n(t,i){void 0===i&&(i=new e.Map);var a=e.getNodeId(t);if(i.has(a))return i.get(a)||0;i.set(a,void 0);var s=function(t,i){switch(t.kind){case 256:case 257:return 0;case 258:if(e.isEnumConst(t))return 2;break;case 264:case 263:if(!e.hasSyntacticModifier(t,1))return 0;break;case 270:var a=t;if(!a.moduleSpecifier&&a.exportClause&&271===a.exportClause.kind){for(var s=0,c=0,l=a.exportClause.elements;c<l.length;c++){var u=o(l[c],i);if(u>s&&(s=u),1===s)return s}return s}break;case 260:var d=0;return e.forEachChild(t,(function(t){var r=n(t,i);switch(r){case 0:return;case 2:return void(d=2);case 1:return d=1,!0;default:e.Debug.assertNever(r)}})),d;case 259:return r(t,i);case 78:if(t.isInJSDocNamespace)return 0}return 1}(t,i);return i.set(a,s),s}function o(t,r){for(var i=t.propertyName||t.name,a=t.parent;a;){if(e.isBlock(a)||e.isModuleBlock(a)||e.isSourceFile(a)){for(var o=void 0,s=0,c=a.statements;s<c.length;s++){var l=c[s];if(e.nodeHasName(l,i)){l.parent||(e.setParent(l,a),e.setParentRecursive(l,!1));var u=n(l,r);if((void 0===o||u>o)&&(o=u),1===o)return o}}if(void 0!==o)return o}a=a.parent}return 1}function s(t){return e.Debug.attachFlowNodeDebugInfo(t),t}!function(e){e[e.NonInstantiated=0]="NonInstantiated",e[e.Instantiated=1]="Instantiated",e[e.ConstEnumOnly=2]="ConstEnumOnly"}(e.ModuleInstanceState||(e.ModuleInstanceState={})),e.getModuleInstanceState=r,function(e){e[e.None=0]="None",e[e.IsContainer=1]="IsContainer",e[e.IsBlockScopedContainer=2]="IsBlockScopedContainer",e[e.IsControlFlowContainer=4]="IsControlFlowContainer",e[e.IsFunctionLike=8]="IsFunctionLike",e[e.IsFunctionExpression=16]="IsFunctionExpression",e[e.HasLocals=32]="HasLocals",e[e.IsInterface=64]="IsInterface",e[e.IsObjectLiteralOrClassExpressionMethod=128]="IsObjectLiteralOrClassExpressionMethod"}(t||(t={}));var c=function(){var t,n,o,c,p,f,m,g,_,h,y,v,b,k,x,S,w,D,E,T,C,A,N,P,I=!1,F=0,O={flags:1},R={flags:1};function M(r,n,i,a,o){return e.createDiagnosticForNodeInSourceFile(e.getSourceFileOfNode(r)||t,r,n,i,a,o)}return function(r,i){t=r,n=i,o=e.getEmitScriptTarget(n),A=function(t,r){return!(!e.getStrictOptionValue(r,"alwaysStrict")||t.isDeclarationFile)||!!t.externalModuleIndicator}(t,i),P=new e.Set,F=0,N=e.objectAllocator.getSymbolConstructor(),e.Debug.attachFlowNodeDebugInfo(O),e.Debug.attachFlowNodeDebugInfo(R),t.locals||(Le(t),t.symbolCount=F,t.classifiableNames=P,function(){if(_){for(var r=p,n=g,i=m,a=c,o=y,l=0,d=_;l<d.length;l++){var f=d[l],h=e.getJSDocHost(f);p=h&&e.findAncestor(h.parent,(function(e){return!!(1&we(e))}))||t,m=h&&e.getEnclosingBlockScopeContainer(h)||t,y=s({flags:2}),c=f,Le(f.typeExpression);var v=e.getNameOfDeclaration(f);if((e.isJSDocEnumTag(f)||!f.fullName)&&v&&e.isPropertyAccessEntityNameExpression(v.parent)){var b=Qe(v.parent);if(b){Ye(t.symbol,v.parent,b,!!e.findAncestor(v,(function(t){return e.isPropertyAccessExpression(t)&&"prototype"===t.name.escapedText})),!1);var k=p;switch(e.getAssignmentDeclarationPropertyAccessKind(v.parent)){case 1:case 2:p=e.isExternalOrCommonJsModule(t)?t:void 0;break;case 4:p=v.parent.expression;break;case 3:p=v.parent.expression.name;break;case 5:p=u(t,v.parent.expression)?t:e.isPropertyAccessExpression(v.parent.expression)?v.parent.expression.name:v.parent.expression;break;case 0:return e.Debug.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}p&&q(f,524288,788968),p=k}}else e.isJSDocEnumTag(f)||!f.fullName||78===f.fullName.kind?(c=f.parent,Ne(f,524288,788968)):Le(f.fullName)}p=r,g=n,m=i,c=a,y=o}}()),t=void 0,n=void 0,o=void 0,c=void 0,p=void 0,f=void 0,m=void 0,g=void 0,_=void 0,h=!1,y=void 0,v=void 0,b=void 0,k=void 0,x=void 0,S=void 0,w=void 0,E=void 0,T=!1,I=!1,C=0};function L(e,t){return F++,new N(e,t)}function j(t,r,n){t.flags|=n,r.symbol=t,t.declarations=e.appendIfUnique(t.declarations,r),1955&n&&!t.exports&&(t.exports=e.createSymbolTable()),6240&n&&!t.members&&(t.members=e.createSymbolTable()),t.constEnumOnlyModule&&304&t.flags&&(t.constEnumOnlyModule=!1),111551&n&&e.setValueDeclaration(t,r)}function B(t){if(269===t.kind)return t.isExportEquals?"export=":"default";var r=e.getNameOfDeclaration(t);if(r){if(e.isAmbientModule(t)){var n=e.getTextOfIdentifierOrLiteral(r);return e.isGlobalScopeAugmentation(t)?"__global":'"'+n+'"'}if(159===r.kind){var i=r.expression;return e.isStringOrNumericLiteralLike(i)?e.escapeLeadingUnderscores(i.text):e.isSignedNumericLiteral(i)?e.tokenToString(i.operator)+i.operand.text:(e.Debug.assert(e.isWellKnownSymbolSyntactically(i)),e.getPropertyNameForKnownSymbolName(e.idText(i.name)))}if(e.isWellKnownSymbolSyntactically(r))return e.getPropertyNameForKnownSymbolName(e.idText(r.name));if(e.isPrivateIdentifier(r)){var a=e.getContainingClass(t);if(!a)return;var o=a.symbol;return e.getSymbolNameForPrivateIdentifier(o,r.escapedText)}return e.isPropertyNameLiteral(r)?e.getEscapedTextOfIdentifierOrLiteral(r):void 0}switch(t.kind){case 167:return"__constructor";case 175:case 170:case 316:return"__call";case 176:case 171:return"__new";case 172:return"__index";case 270:return"__export";case 300:return"export=";case 218:if(2===e.getAssignmentDeclarationKind(t))return"export=";e.Debug.fail("Unknown binary declaration kind");break;case 311:return e.isJSDocConstructSignature(t)?"__new":"__call";case 161:return e.Debug.assert(311===t.parent.kind,"Impossible parameter parent kind",(function(){return"parent is: "+(e.SyntaxKind?e.SyntaxKind[t.parent.kind]:t.parent.kind)+", expected JSDocFunctionType"})),"arg"+t.parent.parameters.indexOf(t)}}function z(t){return e.isNamedDeclaration(t)?e.declarationNameToString(t.name):e.unescapeLeadingUnderscores(e.Debug.checkDefined(B(t)))}function U(r,n,a,o,s,c){e.Debug.assert(!e.hasDynamicName(a));var l,u=e.hasSyntacticModifier(a,512)||e.isExportSpecifier(a)&&"default"===a.name.escapedText,d=u&&n?"default":B(a);if(void 0===d)l=L(0,"__missing");else if(l=r.get(d),2885600&o&&P.add(d),l){if(c&&!l.isReplaceableByMethod)return l;if(l.flags&s)if(l.isReplaceableByMethod)r.set(d,l=L(0,d));else if(!(3&o&&67108864&l.flags)){e.isNamedDeclaration(a)&&e.setParent(a.name,a);var p=2&l.flags?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0,f=!0;(384&l.flags||384&o)&&(p=e.Diagnostics.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,f=!1);var m=!1;e.length(l.declarations)&&(u||l.declarations&&l.declarations.length&&269===a.kind&&!a.isExportEquals)&&(p=e.Diagnostics.A_module_cannot_have_multiple_default_exports,f=!1,m=!0);var g=[];e.isTypeAliasDeclaration(a)&&e.nodeIsMissing(a.type)&&e.hasSyntacticModifier(a,1)&&2887656&l.flags&&g.push(M(a,e.Diagnostics.Did_you_mean_0,"export type { "+e.unescapeLeadingUnderscores(a.name.escapedText)+" }"));var _=e.getNameOfDeclaration(a)||a;e.forEach(l.declarations,(function(r,n){var i=e.getNameOfDeclaration(r)||r,a=M(i,p,f?z(r):void 0);t.bindDiagnostics.push(m?e.addRelatedInfo(a,M(_,0===n?e.Diagnostics.Another_export_default_is_here:e.Diagnostics.and_here)):a),m&&g.push(M(i,e.Diagnostics.The_first_export_default_is_here))}));var h=M(_,p,f?z(a):void 0);t.bindDiagnostics.push(e.addRelatedInfo.apply(void 0,i([h],g))),l=L(0,d)}}else r.set(d,l=L(0,d)),c&&(l.isReplaceableByMethod=!0);return j(l,a,o),l.parent?e.Debug.assert(l.parent===n,"Existing symbol parent should match new one"):l.parent=n,l}function q(t,r,n){var i=!!(1&e.getCombinedModifierFlags(t))||function(t){t.parent&&e.isModuleDeclaration(t)&&(t=t.parent);if(!e.isJSDocTypeAlias(t))return!1;if(!e.isJSDocEnumTag(t)&&t.fullName)return!0;var r=e.getNameOfDeclaration(t);return!!r&&(!(!e.isPropertyAccessEntityNameExpression(r.parent)||!Qe(r.parent))||!!(e.isDeclaration(r.parent)&&1&e.getCombinedModifierFlags(r.parent)))}(t);if(2097152&r)return 273===t.kind||263===t.kind&&i?U(p.symbol.exports,p.symbol,t,r,n):U(p.locals,void 0,t,r,n);if(e.isJSDocTypeAlias(t)&&e.Debug.assert(e.isInJSFile(t)),!e.isAmbientModule(t)&&(i||64&p.flags)){if(!p.locals||e.hasSyntacticModifier(t,512)&&!B(t))return U(p.symbol.exports,p.symbol,t,r,n);var a=111551&r?1048576:0,o=U(p.locals,void 0,t,a,n);return o.exportSymbol=U(p.symbol.exports,p.symbol,t,r,n),t.localSymbol=o,o}return U(p.locals,void 0,t,r,n)}function J(e){V(e,(function(e){return 253===e.kind?Le(e):void 0})),V(e,(function(e){return 253!==e.kind?Le(e):void 0}))}function V(t,r){void 0===r&&(r=Le),void 0!==t&&e.forEach(t,r)}function H(t){e.forEachChild(t,Le,V)}function K(t){var i=I;if(I=!1,function(t){if(!(1&y.flags))return!1;if(y===O){var i=e.isStatementButNotDeclaration(t)&&233!==t.kind||254===t.kind||259===t.kind&&function(t){var i=r(t);return 1===i||2===i&&e.shouldPreserveConstEnums(n)}(t);if(i&&(y=R,!n.allowUnreachableCode)){var a=e.unreachableCodeIsError(n)&&!(8388608&t.flags)&&(!e.isVariableStatement(t)||!!(3&e.getCombinedNodeFlags(t.declarationList))||t.declarationList.declarations.some((function(e){return!!e.initializer})));!function(t,r){if(e.isStatement(t)&&l(t)&&e.isBlock(t.parent)){var n=t.parent.statements,i=e.sliceAfter(n,t);e.getRangesWhere(i,l,(function(e,t){return r(i[e],i[t-1])}))}else r(t,t)}(t,(function(t,r){return Me(a,t,r,e.Diagnostics.Unreachable_code_detected)}))}}return!0}(t))return H(t),je(t),void(I=i);switch(t.kind>=234&&t.kind<=250&&!n.allowUnreachableCode&&(t.flowNode=y),t.kind){case 238:!function(e){var t=me(e,Z()),r=Q(),n=Q();re(t,y),y=t,pe(e.expression,r,n),y=se(r),fe(e.statement,n,t),re(t,y),y=se(n)}(t);break;case 237:!function(e){var t=Z(),r=me(e,Q()),n=Q();re(t,y),y=t,fe(e.statement,n,r),re(r,y),y=se(r),pe(e.expression,t,n),y=se(n)}(t);break;case 239:!function(e){var t=me(e,Z()),r=Q(),n=Q();Le(e.initializer),re(t,y),y=t,pe(e.condition,r,n),y=se(r),fe(e.statement,n,t),Le(e.incrementor),re(t,y),y=se(n)}(t);break;case 240:case 241:!function(e){var t=me(e,Z()),r=Q();Le(e.expression),re(t,y),y=t,241===e.kind&&Le(e.awaitModifier);re(r,y),Le(e.initializer),252!==e.initializer.kind&&ye(e.initializer);fe(e.statement,r,t),re(t,y),y=se(r)}(t);break;case 236:!function(e){var t=Q(),r=Q(),n=Q();pe(e.expression,t,r),y=se(t),Le(e.thenStatement),re(n,y),y=se(r),Le(e.elseStatement),re(n,y),y=se(n)}(t);break;case 244:case 248:!function(e){Le(e.expression),244===e.kind&&(T=!0,k&&re(k,y));y=O}(t);break;case 243:case 242:!function(e){if(Le(e.label),e.label){var t=function(e){for(var t=E;t;t=t.next)if(t.name===e)return t;return}(e.label.escapedText);t&&(t.referenced=!0,ge(e,t.breakTarget,t.continueTarget))}else ge(e,v,b)}(t);break;case 249:!function(t){var r=k,n=w,i=Q(),a=Q(),o=Q();t.finallyBlock&&(k=a);re(o,y),w=o,Le(t.tryBlock),re(i,y),t.catchClause&&(y=se(o),re(o=Q(),y),w=o,Le(t.catchClause),re(i,y));if(k=r,w=n,t.finallyBlock){var s=Q();s.antecedents=e.concatenate(e.concatenate(i.antecedents,o.antecedents),a.antecedents),y=s,Le(t.finallyBlock),1&y.flags?y=O:(k&&a.antecedents&&re(k,ee(s,a.antecedents,y)),w&&o.antecedents&&re(w,ee(s,o.antecedents,y)),y=i.antecedents?ee(s,i.antecedents,y):O)}else y=se(i)}(t);break;case 246:!function(t){var r=Q();Le(t.expression);var n=v,i=D;v=r,D=y,Le(t.caseBlock),re(r,y);var a=e.forEach(t.caseBlock.clauses,(function(e){return 288===e.kind}));t.possiblyExhaustive=!a&&!r.antecedents,a||re(r,ie(D,t,0,0));v=n,D=i,y=se(r)}(t);break;case 261:!function(e){for(var t=e.clauses,r=W(e.parent.expression),i=O,a=0;a<t.length;a++){for(var o=a;!t[a].statements.length&&a+1<t.length;)Le(t[a]),a++;var s=Q();re(s,r?ie(D,e.parent,o,a+1):D),re(s,i),y=se(s);var c=t[a];Le(c),i=y,1&y.flags||a===t.length-1||!n.noFallthroughCasesInSwitch||(c.fallthroughFlowNode=y)}}(t);break;case 287:!function(e){var t=y;y=D,Le(e.expression),y=t,V(e.statements)}(t);break;case 235:!function(e){Le(e.expression),_e(e.expression)}(t);break;case 247:!function(t){var r=Q();E={next:E,name:t.label.escapedText,breakTarget:r,continueTarget:void 0,referenced:!1},Le(t.label),Le(t.statement),E.referenced||n.allowUnusedLabels||function(e,t,r){Me(e,t,t,r)}(e.unusedLabelIsError(n),t.label,e.Diagnostics.Unused_label);E=E.next,re(r,y),y=se(r)}(t);break;case 216:!function(e){if(53===e.operator){var t=x;x=S,S=t,H(e),S=x,x=t}else H(e),45!==e.operator&&46!==e.operator||ye(e.operand)}(t);break;case 217:!function(e){H(e),(45===e.operator||46===e.operator)&&ye(e.operand)}(t);break;case 218:if(e.isDestructuringAssignment(t))return I=i,void function(e){I?(I=!1,Le(e.operatorToken),Le(e.right),I=!0,Le(e.left)):(I=!0,Le(e.left),I=!1,Le(e.operatorToken),Le(e.right));ye(e.left)}(t);!function(t){var r={expr:[t],state:[1],inStrictMode:[void 0],parent:[void 0]},n=0;for(;n>=0;)switch(t=r.expr[n],r.state[n]){case 0:e.setParent(t,c);var i=A;ze(t);var a=c;c=t,l(1,i,a);break;case 1:if(55===(s=t.operatorToken.kind)||56===s||60===s||e.isLogicalOrCoalescingAssignmentOperator(s)){if(ue(t)){var o=Q();ve(t,o,o),y=se(o)}else ve(t,x,S);u()}else l(2),d(t.left);break;case 2:27===t.operatorToken.kind&&_e(t.left),l(3),d(t.operatorToken);break;case 3:l(4),d(t.right);break;case 4:var s=t.operatorToken.kind;if(e.isAssignmentOperator(s)&&!e.isAssignmentTarget(t))if(ye(t.left),62===s&&203===t.left.kind)X(t.left.expression)&&(y=ae(256,y,t));u();break;default:return e.Debug.fail("Invalid state "+r.state[n]+" for bindBinaryExpressionFlow")}function l(e,t,i){r.state[n]=e,void 0!==t&&(r.inStrictMode[n]=t),void 0!==i&&(r.parent[n]=i)}function u(){void 0!==r.inStrictMode[n]&&(A=r.inStrictMode[n],c=r.parent[n]),n--}function d(t){t&&e.isBinaryExpression(t)&&!e.isDestructuringAssignment(t)?(n++,r.expr[n]=t,r.state[n]=0,r.inStrictMode[n]=void 0,r.parent[n]=void 0):Le(t)}}(t);break;case 212:!function(e){H(e),202===e.expression.kind&&ye(e.expression)}(t);break;case 219:!function(e){var t=Q(),r=Q(),n=Q();pe(e.condition,t,r),y=se(t),Le(e.questionToken),Le(e.whenTrue),re(n,y),y=se(r),Le(e.colonToken),Le(e.whenFalse),re(n,y),y=se(n)}(t);break;case 251:!function(t){H(t),(t.initializer||e.isForInOrOfStatement(t.parent.parent))&&be(t)}(t);break;case 202:case 203:!function(t){e.isOptionalChain(t)?Se(t):H(t)}(t);break;case 204:!function(t){if(e.isOptionalChain(t))Se(t);else{var r=e.skipParentheses(t.expression);209===r.kind||210===r.kind?(V(t.typeArguments),V(t.arguments),Le(t.expression)):(H(t),106===t.expression.kind&&(y=oe(y,t)))}if(202===t.expression.kind){var n=t.expression;e.isIdentifier(n.name)&&X(n.expression)&&e.isPushOrUnshiftIdentifier(n.name)&&(y=ae(256,y,t))}}(t);break;case 227:!function(t){e.isOptionalChain(t)?Se(t):H(t)}(t);break;case 334:case 327:case 328:!function(t){e.setParent(t.tagName,t),328!==t.kind&&t.fullName&&(e.setParent(t.fullName,t),e.setParentRecursive(t.fullName,!1))}(t);break;case 300:J(t.statements),Le(t.endOfFileToken);break;case 232:case 260:J(t.statements);break;case 199:!function(t){e.isBindingPattern(t.name)?(V(t.decorators),V(t.modifiers),Le(t.dotDotDotToken),Le(t.propertyName),Le(t.initializer),Le(t.name)):H(t)}(t);break;case 201:case 200:case 291:case 222:I=i;default:H(t)}je(t),I=i}function W(t){switch(t.kind){case 78:case 79:case 108:case 202:case 203:return $(t);case 204:return function(e){if(e.arguments)for(var t=0,r=e.arguments;t<r.length;t++){if($(r[t]))return!0}if(202===e.expression.kind&&$(e.expression.expression))return!0;return!1}(t);case 208:case 227:case 213:return W(t.expression);case 218:return function(t){switch(t.operatorToken.kind){case 62:case 74:case 75:case 76:return $(t.left);case 34:case 35:case 36:case 37:return X(t.left)||X(t.right)||Y(t.right,t.left)||Y(t.left,t.right);case 102:return X(t.left);case 101:return r=t.left,n=t.right,e.isStringLiteralLike(r)&&W(n);case 27:return W(t.right)}var r,n;return!1}(t);case 216:return 53===t.operator&&W(t.operand)}return!1}function G(t){return 78===t.kind||79===t.kind||108===t.kind||106===t.kind||(e.isPropertyAccessExpression(t)||e.isNonNullExpression(t)||e.isParenthesizedExpression(t))&&G(t.expression)||e.isBinaryExpression(t)&&27===t.operatorToken.kind&&G(t.right)||e.isElementAccessExpression(t)&&e.isStringOrNumericLiteralLike(t.argumentExpression)&&G(t.expression)||e.isAssignmentExpression(t)&&G(t.left)}function $(t){return G(t)||e.isOptionalChain(t)&&$(t.expression)}function Y(t,r){return e.isTypeOfExpression(t)&&X(t.expression)&&e.isStringLiteralLike(r)}function X(e){switch(e.kind){case 208:return X(e.expression);case 218:switch(e.operatorToken.kind){case 62:return X(e.left);case 27:return X(e.right)}}return $(e)}function Q(){return s({flags:4,antecedents:void 0})}function Z(){return s({flags:8,antecedents:void 0})}function ee(e,t,r){return s({flags:1024,target:e,antecedents:t,antecedent:r})}function te(e){e.flags|=2048&e.flags?4096:2048}function re(t,r){1&r.flags||e.contains(t.antecedents,r)||((t.antecedents||(t.antecedents=[])).push(r),te(r))}function ne(t,r,n){return 1&r.flags?r:n?!(110===n.kind&&64&t||95===n.kind&&32&t)||e.isExpressionOfOptionalChainRoot(n)||e.isNullishCoalesce(n.parent)?W(n)?(te(r),s({flags:t,antecedent:r,node:n})):r:O:32&t?r:O}function ie(e,t,r,n){return te(e),s({flags:128,antecedent:e,switchStatement:t,clauseStart:r,clauseEnd:n})}function ae(e,t,r){te(t);var n=s({flags:e,antecedent:t,node:r});return w&&re(w,n),n}function oe(e,t){return te(e),s({flags:512,antecedent:e,node:t})}function se(e){var t=e.antecedents;return t?1===t.length?t[0]:e:O}function ce(e){for(;;)if(208===e.kind)e=e.expression;else{if(216!==e.kind||53!==e.operator)return 218===e.kind&&(55===e.operatorToken.kind||56===e.operatorToken.kind||60===e.operatorToken.kind);e=e.operand}}function le(t){return t=e.skipParentheses(t),e.isBinaryExpression(t)&&e.isLogicalOrCoalescingAssignmentOperator(t.operatorToken.kind)}function ue(t){for(;e.isParenthesizedExpression(t.parent)||e.isPrefixUnaryExpression(t.parent)&&53===t.parent.operator;)t=t.parent;return!(function(e){var t=e.parent;switch(t.kind){case 236:case 238:case 237:return t.expression===e;case 239:case 219:return t.condition===e}return!1}(t)||le(t.parent)||ce(t.parent)||e.isOptionalChain(t.parent)&&t.parent.expression===t)}function de(e,t,r,n){var i=x,a=S;x=r,S=n,e(t),x=i,S=a}function pe(t,r,n){de(Le,t,r,n),t&&(le(t)||ce(t)||e.isOptionalChain(t)&&e.isOutermostOptionalChain(t))||(re(r,ne(32,y,t)),re(n,ne(64,y,t)))}function fe(e,t,r){var n=v,i=b;v=t,b=r,Le(e),v=n,b=i}function me(e,t){for(var r=E;r&&247===e.parent.kind;)r.continueTarget=t,r=r.next,e=e.parent;return t}function ge(e,t,r){var n=243===e.kind?t:r;n&&(re(n,y),y=O)}function _e(t){if(204===t.kind){var r=t;e.isDottedName(r.expression)&&106!==r.expression.kind&&(y=oe(y,r))}}function he(e){218===e.kind&&62===e.operatorToken.kind?ye(e.left):ye(e)}function ye(e){if(G(e))y=ae(16,y,e);else if(200===e.kind)for(var t=0,r=e.elements;t<r.length;t++){var n=r[t];222===n.kind?ye(n.expression):he(n)}else if(201===e.kind)for(var i=0,a=e.properties;i<a.length;i++){var o=a[i];291===o.kind?he(o.initializer):292===o.kind?ye(o.name):293===o.kind&&ye(o.expression)}}function ve(t,r,n){var i=Q();55===t.operatorToken.kind||75===t.operatorToken.kind?pe(t.left,i,n):pe(t.left,r,i),y=se(i),Le(t.operatorToken),e.isLogicalOrCoalescingAssignmentOperator(t.operatorToken.kind)?(de(Le,t.right,r,n),ye(t.left),re(r,ne(32,y,t)),re(n,ne(64,y,t))):pe(t.right,r,n)}function be(t){var r=e.isOmittedExpression(t)?void 0:t.name;if(e.isBindingPattern(r))for(var n=0,i=r.elements;n<i.length;n++){be(i[n])}else y=ae(16,y,t)}function ke(e){switch(e.kind){case 202:Le(e.questionDotToken),Le(e.name);break;case 203:Le(e.questionDotToken),Le(e.argumentExpression);break;case 204:Le(e.questionDotToken),V(e.typeArguments),V(e.arguments)}}function xe(t,r,n){var i=e.isOptionalChainRoot(t)?Q():void 0;!function(t,r,n){de(Le,t,r,n),e.isOptionalChain(t)&&!e.isOutermostOptionalChain(t)||(re(r,ne(32,y,t)),re(n,ne(64,y,t)))}(t.expression,i||r,n),i&&(y=se(i)),de(ke,t,r,n),e.isOutermostOptionalChain(t)&&(re(r,ne(32,y,t)),re(n,ne(64,y,t)))}function Se(e){if(ue(e)){var t=Q();xe(e,t,t),y=se(t)}else xe(e,x,S)}function we(t){switch(t.kind){case 223:case 254:case 255:case 258:case 201:case 178:case 315:case 284:return 1;case 256:return 65;case 259:case 257:case 191:return 33;case 300:return 37;case 166:if(e.isObjectLiteralOrClassExpressionMethod(t))return 173;case 167:case 253:case 165:case 168:case 169:case 170:case 316:case 311:case 175:case 171:case 172:case 176:return 45;case 209:case 210:return 61;case 260:return 4;case 164:return t.initializer?4:0;case 290:case 239:case 240:case 241:case 261:return 2;case 232:return e.isFunctionLike(t.parent)?0:2}return 0}function De(e){g&&(g.nextContainer=e),g=e}function Ee(r,n,i){switch(p.kind){case 259:return q(r,n,i);case 300:return function(r,n,i){return e.isExternalModule(t)?q(r,n,i):U(t.locals,void 0,r,n,i)}(r,n,i);case 223:case 254:case 255:return function(t,r,n){return e.hasSyntacticModifier(t,32)?U(p.symbol.exports,p.symbol,t,r,n):U(p.symbol.members,p.symbol,t,r,n)}(r,n,i);case 258:return U(p.symbol.exports,p.symbol,r,n,i);case 178:case 315:case 201:case 256:case 284:return U(p.symbol.members,p.symbol,r,n,i);case 175:case 176:case 170:case 171:case 316:case 172:case 166:case 165:case 167:case 168:case 169:case 253:case 209:case 210:case 311:case 334:case 327:case 257:case 191:return U(p.locals,void 0,r,n,i)}}function Te(t){8388608&t.flags&&!function(t){var r=e.isSourceFile(t)?t:e.tryCast(t.body,e.isModuleBlock);return!!r&&r.statements.some((function(t){return e.isExportDeclaration(t)||e.isExportAssignment(t)}))}(t)?t.flags|=64:t.flags&=-65}function Ce(e){var t=r(e),n=0!==t;return Ee(e,n?512:1024,n?110735:0),t}function Ae(e,t,r){var n=L(t,r);return 106508&t&&(n.parent=p.symbol),j(n,e,t),n}function Ne(t,r,n){switch(m.kind){case 259:q(t,r,n);break;case 300:if(e.isExternalOrCommonJsModule(p)){q(t,r,n);break}default:m.locals||(m.locals=e.createSymbolTable(),De(m)),U(m.locals,void 0,t,r,n)}}function Pe(r){t.parseDiagnostics.length||8388608&r.flags||4194304&r.flags||e.isIdentifierName(r)||(A&&r.originalKeywordKind>=117&&r.originalKeywordKind<=125?t.bindDiagnostics.push(M(r,function(r){if(e.getContainingClass(r))return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode;if(t.externalModuleIndicator)return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode;return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode}(r),e.declarationNameToString(r))):131===r.originalKeywordKind?e.isExternalModule(t)&&e.isInTopLevelContext(r)?t.bindDiagnostics.push(M(r,e.Diagnostics.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,e.declarationNameToString(r))):32768&r.flags&&t.bindDiagnostics.push(M(r,e.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,e.declarationNameToString(r))):125===r.originalKeywordKind&&8192&r.flags&&t.bindDiagnostics.push(M(r,e.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,e.declarationNameToString(r))))}function Ie(r,n){if(n&&78===n.kind){var i=n;if(o=i,e.isIdentifier(o)&&("eval"===o.escapedText||"arguments"===o.escapedText)){var a=e.getErrorSpanForNode(t,n);t.bindDiagnostics.push(e.createFileDiagnostic(t,a.start,a.length,function(r){if(e.getContainingClass(r))return e.Diagnostics.Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode;if(t.externalModuleIndicator)return e.Diagnostics.Invalid_use_of_0_Modules_are_automatically_in_strict_mode;return e.Diagnostics.Invalid_use_of_0_in_strict_mode}(r),e.idText(i)))}}var o}function Fe(e){A&&Ie(e,e.name)}function Oe(r){if(o<2&&300!==m.kind&&259!==m.kind&&!e.isFunctionLike(m)){var n=e.getErrorSpanForNode(t,r);t.bindDiagnostics.push(e.createFileDiagnostic(t,n.start,n.length,function(r){return e.getContainingClass(r)?e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:t.externalModuleIndicator?e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5}(r)))}}function Re(r,n,i,a,o){var s=e.getSpanOfTokenAtPosition(t,r.pos);t.bindDiagnostics.push(e.createFileDiagnostic(t,s.start,s.length,n,i,a,o))}function Me(r,n,i,o){!function(r,n,i){var o=e.createFileDiagnostic(t,n.pos,n.end-n.pos,i);r?t.bindDiagnostics.push(o):t.bindSuggestionDiagnostics=e.append(t.bindSuggestionDiagnostics,a(a({},o),{category:e.DiagnosticCategory.Suggestion}))}(r,{pos:e.getTokenPosOfNode(n,t),end:i.end},o)}function Le(t){if(t){e.setParent(t,c);var r=A;if(ze(t),t.kind>157){var n=c;c=t;var i=we(t);0===i?K(t):function(t,r){var n=p,i=f,a=m;if(1&r?(210!==t.kind&&(f=p),p=m=t,32&r&&(p.locals=e.createSymbolTable()),De(p)):2&r&&((m=t).locals=void 0),4&r){var o=y,c=v,l=b,u=k,d=w,g=E,_=T,x=16&r&&!e.hasSyntacticModifier(t,256)&&!t.asteriskToken&&!!e.getImmediatelyInvokedFunctionExpression(t);x||(y=s({flags:2}),144&r&&(y.node=t)),k=x||167===t.kind||e.isInJSFile(t)&&(253===t.kind||209===t.kind)?Q():void 0,w=void 0,v=void 0,b=void 0,E=void 0,T=!1,K(t),t.flags&=-2817,!(1&y.flags)&&8&r&&e.nodeIsPresent(t.body)&&(t.flags|=256,T&&(t.flags|=512),t.endFlowNode=y),300===t.kind&&(t.flags|=C),k&&(re(k,y),y=se(k),(167===t.kind||e.isInJSFile(t)&&(253===t.kind||209===t.kind))&&(t.returnFlowNode=y)),x||(y=o),v=c,b=l,k=u,w=d,E=g,T=_}else 64&r?(h=!1,K(t),t.flags=h?128|t.flags:-129&t.flags):K(t);p=n,f=i,m=a}(t,i),c=n}else{n=c;1===t.kind&&(c=t),je(t),c=n}A=r}}function je(t){if(e.hasJSDocNodes(t))if(e.isInJSFile(t))for(var r=0,n=t.jsDoc;r<n.length;r++){Le(o=n[r])}else for(var i=0,a=t.jsDoc;i<a.length;i++){var o=a[i];e.setParent(o,t),e.setParentRecursive(o,!1)}}function Be(r){if(!A)for(var n=0,i=r;n<i.length;n++){var a=i[n];if(!e.isPrologueDirective(a))return;if(o=a,s=void 0,'"use strict"'===(s=e.getSourceTextOfNodeFromSourceFile(t,o.expression))||"'use strict'"===s)return void(A=!0)}var o,s}function ze(r){switch(r.kind){case 78:if(r.isInJSDocNamespace){for(var i=r.parent;i&&!e.isJSDocTypeAlias(i);)i=i.parent;Ne(i,524288,788968);break}case 108:return y&&(e.isExpression(r)||292===c.kind)&&(r.flowNode=y),Pe(r);case 158:y&&177===c.kind&&(r.flowNode=y);break;case 106:r.flowNode=y;break;case 79:return function(r){"#constructor"===r.escapedText&&(t.parseDiagnostics.length||t.bindDiagnostics.push(M(r,e.Diagnostics.constructor_is_a_reserved_word,e.declarationNameToString(r))))}(r);case 202:case 203:var a=r;y&&G(a)&&(a.flowNode=y),e.isSpecialPropertyDeclaration(a)&&function(t){108===t.expression.kind?He(t):e.isBindableStaticAccessExpression(t)&&300===t.parent.parent.kind&&(e.isPrototypeAccess(t.expression)?Ge(t,t.parent):$e(t))}(a),e.isInJSFile(a)&&t.commonJsModuleIndicator&&e.isModuleExportsAccessExpression(a)&&!d(m,"module")&&U(t.locals,void 0,a.expression,134217729,111550);break;case 218:switch(e.getAssignmentDeclarationKind(r)){case 1:Je(r);break;case 2:!function(r){if(!qe(r))return;var n=e.getRightMostAssignedExpression(r.right);if(e.isEmptyObjectLiteral(n)||p===t&&u(t,n))return;if(e.isObjectLiteralExpression(n)&&e.every(n.properties,e.isShorthandPropertyAssignment))return void e.forEach(n.properties,Ve);var i=e.exportAssignmentIsAlias(r)?2097152:1049092,a=U(t.symbol.exports,t.symbol,r,67108864|i,0);e.setValueDeclaration(a,r)}(r);break;case 3:Ge(r.left,r);break;case 6:!function(t){e.setParent(t.left,t),e.setParent(t.right,t),Ze(t.left.expression,t.left,!1,!0)}(r);break;case 4:He(r);break;case 5:var o=r.left.expression;if(e.isInJSFile(r)&&e.isIdentifier(o)){var s=d(m,o.escapedText);if(e.isThisInitializedDeclaration(null==s?void 0:s.valueDeclaration)){He(r);break}}!function(r){var n,i=et(r.left.expression,p)||et(r.left.expression,m);if(!e.isInJSFile(r)&&!e.isFunctionSymbol(i))return;var a=e.getLeftmostAccessExpression(r.left);if(e.isIdentifier(a)&&2097152&(null===(n=d(p,a.escapedText))||void 0===n?void 0:n.flags))return;if(e.setParent(r.left,r),e.setParent(r.right,r),e.isIdentifier(r.left.expression)&&p===t&&u(t,r.left.expression))Je(r);else if(e.hasDynamicName(r)){Ae(r,67108868,"__computed"),We(r,Ye(i,r.left.expression,Qe(r.left),!1,!1))}else $e(e.cast(r.left,e.isBindableStaticNameExpression))}(r);break;case 0:break;default:e.Debug.fail("Unknown binary expression special property assignment kind")}return function(t){A&&e.isLeftHandSideExpression(t.left)&&e.isAssignmentOperator(t.operatorToken.kind)&&Ie(t,t.left)}(r);case 290:return function(e){A&&e.variableDeclaration&&Ie(e,e.variableDeclaration.name)}(r);case 212:return function(r){if(A&&78===r.expression.kind){var n=e.getErrorSpanForNode(t,r.expression);t.bindDiagnostics.push(e.createFileDiagnostic(t,n.start,n.length,e.Diagnostics.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}(r);case 8:return function(r){A&&32&r.numericLiteralFlags&&t.bindDiagnostics.push(M(r,e.Diagnostics.Octal_literals_are_not_allowed_in_strict_mode))}(r);case 217:return function(e){A&&Ie(e,e.operand)}(r);case 216:return function(e){A&&(45!==e.operator&&46!==e.operator||Ie(e,e.operand))}(r);case 245:return function(t){A&&Re(t,e.Diagnostics.with_statements_are_not_allowed_in_strict_mode)}(r);case 247:return function(t){A&&n.target>=2&&(e.isDeclarationStatement(t.statement)||e.isVariableStatement(t.statement))&&Re(t.label,e.Diagnostics.A_label_is_not_allowed_here)}(r);case 188:return void(h=!0);case 173:break;case 160:return function(t){if(e.isJSDocTemplateTag(t.parent)){var r=e.find(t.parent.parent.tags,e.isJSDocTypeAlias)||e.getHostSignatureFromJSDoc(t.parent);r?(r.locals||(r.locals=e.createSymbolTable()),U(r.locals,void 0,t,262144,526824)):Ee(t,262144,526824)}else if(186===t.parent.kind){var n=function(t){var r=e.findAncestor(t,(function(t){return t.parent&&e.isConditionalTypeNode(t.parent)&&t.parent.extendsType===t}));return r&&r.parent}(t.parent);n?(n.locals||(n.locals=e.createSymbolTable()),U(n.locals,void 0,t,262144,526824)):Ae(t,262144,B(t))}else Ee(t,262144,526824)}(r);case 161:return nt(r);case 251:return rt(r);case 199:return r.flowNode=y,rt(r);case 164:case 163:return function(e){return it(e,4|(e.questionToken?16777216:0),0)}(r);case 291:case 292:return it(r,4,0);case 294:return it(r,8,900095);case 170:case 171:case 172:return Ee(r,131072,0);case 166:case 165:return it(r,8192|(r.questionToken?16777216:0),e.isObjectLiteralMethod(r)?0:103359);case 253:return function(r){t.isDeclarationFile||8388608&r.flags||e.isAsyncFunction(r)&&(C|=2048);Fe(r),A?(Oe(r),Ne(r,16,110991)):Ee(r,16,110991)}(r);case 167:return Ee(r,16384,0);case 168:return it(r,32768,46015);case 169:return it(r,65536,78783);case 175:case 311:case 316:case 176:return function(t){var r=L(131072,B(t));j(r,t,131072);var n=L(2048,"__type");j(n,t,2048),n.members=e.createSymbolTable(),n.members.set(r.escapedName,r)}(r);case 178:case 315:case 191:return function(e){return Ae(e,2048,"__type")}(r);case 322:return function(t){H(t);var r=e.getHostSignatureFromJSDoc(t);r&&166!==r.kind&&j(r.symbol,r,32)}(r);case 201:return function(r){var n;if(function(e){e[e.Property=1]="Property",e[e.Accessor=2]="Accessor"}(n||(n={})),A&&!e.isAssignmentTarget(r))for(var i=new e.Map,a=0,o=r.properties;a<o.length;a++){var s=o[a];if(293!==s.kind&&78===s.name.kind){var c=s.name,l=291===s.kind||292===s.kind||166===s.kind?1:2,u=i.get(c.escapedText);if(u){if(1===l&&1===u){var d=e.getErrorSpanForNode(t,c);t.bindDiagnostics.push(e.createFileDiagnostic(t,d.start,d.length,e.Diagnostics.An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode))}}else i.set(c.escapedText,l)}}return Ae(r,4096,"__object")}(r);case 209:case 210:return function(r){t.isDeclarationFile||8388608&r.flags||e.isAsyncFunction(r)&&(C|=2048);y&&(r.flowNode=y);Fe(r);var n=r.name?r.name.escapedText:"__function";return Ae(r,16,n)}(r);case 204:switch(e.getAssignmentDeclarationKind(r)){case 7:return function(e){var t=et(e.arguments[0]),r=300===e.parent.parent.kind;t=Ye(t,e.arguments[0],r,!1,!1),Xe(e,t,!1)}(r);case 8:return function(e){if(!qe(e))return;var t=tt(e.arguments[0],void 0,(function(e,t){return t&&j(t,e,67110400),t}));if(t){var r=1048580;U(t.exports,t,e,r,0)}}(r);case 9:return function(e){var t=et(e.arguments[0].expression);t&&t.valueDeclaration&&j(t,t.valueDeclaration,32);Xe(e,t,!0)}(r);case 0:break;default:return e.Debug.fail("Unknown call expression assignment declaration kind")}e.isInJSFile(r)&&function(r){!t.commonJsModuleIndicator&&e.isRequireCall(r,!1)&&qe(r)}(r);break;case 223:case 254:case 255:return A=!0,function(r){if(254===r.kind||255===r.kind)Ne(r,32,899503);else{Ae(r,32,r.name?r.name.escapedText:"__class"),r.name&&P.add(r.name.escapedText)}var n=r.symbol,i=L(4194308,"prototype"),a=n.exports.get(i.escapedName);a&&(r.name&&e.setParent(r.name,r),t.bindDiagnostics.push(M(a.declarations[0],e.Diagnostics.Duplicate_identifier_0,e.symbolName(i))));n.exports.set(i.escapedName,i),i.parent=n}(r);case 256:return Ne(r,64,788872);case 257:return Ne(r,524288,788968);case 258:return function(t){return e.isEnumConst(t)?Ne(t,128,899967):Ne(t,256,899327)}(r);case 259:return function(r){if(Te(r),e.isAmbientModule(r))if(e.hasSyntacticModifier(r,1)&&Re(r,e.Diagnostics.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),e.isModuleAugmentationExternal(r))Ce(r);else{var n=void 0;if(10===r.name.kind){var i=r.name.text;e.hasZeroOrOneAsteriskCharacter(i)?n=e.tryParsePattern(i):Re(r.name,e.Diagnostics.Pattern_0_can_have_at_most_one_Asterisk_character,i)}var a=Ee(r,512,110735);t.patternAmbientModules=e.append(t.patternAmbientModules,n&&{pattern:n,symbol:a})}else{var o=Ce(r);0!==o&&((a=r.symbol).constEnumOnlyModule=!(304&a.flags)&&2===o&&!1!==a.constEnumOnlyModule)}}(r);case 284:return function(e){return Ae(e,4096,"__jsxAttributes")}(r);case 283:return function(e,t,r){return Ee(e,t,r)}(r,4,0);case 263:case 266:case 268:case 273:return Ee(r,2097152,2097152);case 262:return function(r){r.modifiers&&r.modifiers.length&&t.bindDiagnostics.push(M(r,e.Diagnostics.Modifiers_cannot_appear_here));var n=e.isSourceFile(r.parent)?e.isExternalModule(r.parent)?r.parent.isDeclarationFile?void 0:e.Diagnostics.Global_module_exports_may_only_appear_in_declaration_files:e.Diagnostics.Global_module_exports_may_only_appear_in_module_files:e.Diagnostics.Global_module_exports_may_only_appear_at_top_level;n?t.bindDiagnostics.push(M(r,n)):(t.symbol.globalExports=t.symbol.globalExports||e.createSymbolTable(),U(t.symbol.globalExports,t.symbol,r,2097152,2097152))}(r);case 265:return function(e){e.name&&Ee(e,2097152,2097152)}(r);case 270:return function(t){p.symbol&&p.symbol.exports?t.exportClause?e.isNamespaceExport(t.exportClause)&&(e.setParent(t.exportClause,t),U(p.symbol.exports,p.symbol,t.exportClause,2097152,2097152)):U(p.symbol.exports,p.symbol,t,8388608,0):Ae(t,8388608,B(t))}(r);case 269:return function(t){if(p.symbol&&p.symbol.exports){var r=e.exportAssignmentIsAlias(t)?2097152:4,n=U(p.symbol.exports,p.symbol,t,r,67108863);t.isExportEquals&&e.setValueDeclaration(n,t)}else Ae(t,2097152,B(t))}(r);case 300:return Be(r.statements),function(){if(Te(t),e.isExternalModule(t))Ue();else if(e.isJsonSourceFile(t)){Ue();var r=t.symbol;U(t.symbol.exports,t.symbol,t,4,67108863),t.symbol=r}}();case 232:if(!e.isFunctionLike(r.parent))return;case 260:return Be(r.statements);case 329:if(316===r.parent.kind)return nt(r);if(315!==r.parent.kind)break;case 336:var l=r;return Ee(l,l.isBracketed||l.typeExpression&&310===l.typeExpression.type.kind?16777220:4,0);case 334:case 327:case 328:return(_||(_=[])).push(r)}}function Ue(){Ae(t,512,'"'+e.removeFileExtension(t.fileName)+'"')}function qe(e){return!t.externalModuleIndicator&&(t.commonJsModuleIndicator||(t.commonJsModuleIndicator=e,Ue()),!0)}function Je(t){if(qe(t)){var r=tt(t.left.expression,void 0,(function(e,t){return t&&j(t,e,67110400),t}));if(r){var n=e.isAliasableExpression(t.right)&&(e.isExportsIdentifier(t.left.expression)||e.isModuleExportsAccessExpression(t.left.expression))?2097152:1048580;e.setParent(t.left,t),U(r.exports,r,t.left,n,0)}}}function Ve(e){U(t.symbol.exports,t.symbol,e,69206016,0)}function He(t){if(e.Debug.assert(e.isInJSFile(t)),!(e.isBinaryExpression(t)&&e.isPropertyAccessExpression(t.left)&&e.isPrivateIdentifier(t.left.name)||e.isPropertyAccessExpression(t)&&e.isPrivateIdentifier(t.name))){var r=e.getThisContainer(t,!1);switch(r.kind){case 253:case 209:var n=r.symbol;if(e.isBinaryExpression(r.parent)&&62===r.parent.operatorToken.kind){var i=r.parent.left;e.isBindableStaticAccessExpression(i)&&e.isPrototypeAccess(i.expression)&&(n=et(i.expression.expression,f))}n&&n.valueDeclaration&&(n.members=n.members||e.createSymbolTable(),e.hasDynamicName(t)?Ke(t,n):U(n.members,n,t,67108868,0),j(n,n.valueDeclaration,32));break;case 167:case 164:case 166:case 168:case 169:var a=r.parent,o=e.hasSyntacticModifier(r,32)?a.symbol.exports:a.symbol.members;e.hasDynamicName(t)?Ke(t,a.symbol):U(o,a.symbol,t,67108868,0,!0);break;case 300:if(e.hasDynamicName(t))break;r.commonJsModuleIndicator?U(r.symbol.exports,r.symbol,t,1048580,0):Ee(t,1,111550);break;default:e.Debug.failBadSyntaxKind(r)}}}function Ke(e,t){Ae(e,4,"__computed"),We(e,t)}function We(t,r){r&&(r.assignmentDeclarationMembers||(r.assignmentDeclarationMembers=new e.Map)).set(e.getNodeId(t),t)}function Ge(t,r){var n=t.expression,i=n.expression;e.setParent(i,n),e.setParent(n,t),e.setParent(t,r),Ze(i,t,!0,!0)}function $e(t){e.Debug.assert(!e.isIdentifier(t)),e.setParent(t.expression,t),Ze(t.expression,t,!1,!1)}function Ye(r,n,i,a,o){if(2097152&(null==r?void 0:r.flags))return r;if(i&&!a){var s=67110400;r=tt(n,r,(function(r,n,i){return n?(j(n,r,s),n):U(i?i.exports:t.jsGlobalAugmentations||(t.jsGlobalAugmentations=e.createSymbolTable()),i,r,s,110735)}))}return o&&r&&r.valueDeclaration&&j(r,r.valueDeclaration,32),r}function Xe(t,r,n){if(r&&function(t){if(1072&t.flags)return!0;var r=t.valueDeclaration;if(r&&e.isCallExpression(r))return!!e.getAssignedExpandoInitializer(r);var n=r?e.isVariableDeclaration(r)?r.initializer:e.isBinaryExpression(r)?r.right:e.isPropertyAccessExpression(r)&&e.isBinaryExpression(r.parent)?r.parent.right:void 0:void 0;if(n=n&&e.getRightMostAssignedExpression(n)){var i=e.isPrototypeAccess(e.isVariableDeclaration(r)?r.name:e.isBinaryExpression(r)?r.left:r);return!!e.getExpandoInitializer(!e.isBinaryExpression(n)||56!==n.operatorToken.kind&&60!==n.operatorToken.kind?n:n.right,i)}return!1}(r)){var i=n?r.members||(r.members=e.createSymbolTable()):r.exports||(r.exports=e.createSymbolTable()),a=0,o=0;e.isFunctionLikeDeclaration(e.getAssignedExpandoInitializer(t))?(a=8192,o=103359):e.isCallExpression(t)&&e.isBindableObjectDefinePropertyCall(t)&&(e.some(t.arguments[2].properties,(function(t){var r=e.getNameOfDeclaration(t);return!!r&&e.isIdentifier(r)&&"set"===e.idText(r)}))&&(a|=65540,o|=78783),e.some(t.arguments[2].properties,(function(t){var r=e.getNameOfDeclaration(t);return!!r&&e.isIdentifier(r)&&"get"===e.idText(r)}))&&(a|=32772,o|=46015)),0===a&&(a=4,o=0),U(i,r,t,67108864|a,-67108865&o)}}function Qe(t){return e.isBinaryExpression(t.parent)?300===function(t){for(;e.isBinaryExpression(t.parent);)t=t.parent;return t.parent}(t.parent).parent.kind:300===t.parent.parent.kind}function Ze(e,t,r,n){var i=et(e,p)||et(e,m),a=Qe(t);Xe(t,i=Ye(i,t.expression,a,r,n),r)}function et(t,r){if(void 0===r&&(r=p),e.isIdentifier(t))return d(r,t.escapedText);var n=et(t.expression);return n&&n.exports&&n.exports.get(e.getElementOrPropertyAccessName(t))}function tt(r,n,i){if(u(t,r))return t.symbol;if(e.isIdentifier(r))return i(r,et(r),n);var a=tt(r.expression,n,i),o=e.getNameOrArgument(r);return e.isPrivateIdentifier(o)&&e.Debug.fail("unexpected PrivateIdentifier"),i(o,a&&a.exports&&a.exports.get(e.getElementOrPropertyAccessName(r)),a)}function rt(t){A&&Ie(t,t.name),e.isBindingPattern(t.name)||(e.isInJSFile(t)&&e.isRequireVariableDeclaration(t,!0)&&!e.getJSDocTypeTag(t)?Ee(t,2097152,2097152):e.isBlockOrCatchScoped(t)?Ne(t,2,111551):e.isParameterDeclaration(t)?Ee(t,1,111551):Ee(t,1,111550))}function nt(t){if((329!==t.kind||316===p.kind)&&(!A||8388608&t.flags||Ie(t,t.name),e.isBindingPattern(t.name)?Ae(t,1,"__"+t.parent.parameters.indexOf(t)):Ee(t,1,111551),e.isParameterPropertyDeclaration(t,t.parent))){var r=t.parent.parent;U(r.symbol.members,r.symbol,t,4|(t.questionToken?16777216:0),0)}}function it(r,n,i){return t.isDeclarationFile||8388608&r.flags||!e.isAsyncFunction(r)||(C|=2048),y&&e.isObjectLiteralOrClassExpressionMethod(r)&&(r.flowNode=y),e.hasDynamicName(r)?Ae(r,n,"__computed"):Ee(r,n,i)}}();function l(t){return!(e.isFunctionDeclaration(t)||function(t){switch(t.kind){case 256:case 257:return!0;case 259:return 1!==r(t);case 258:return e.hasSyntacticModifier(t,2048);default:return!1}}(t)||e.isEnumDeclaration(t)||e.isVariableStatement(t)&&!(3&e.getCombinedNodeFlags(t))&&t.declarationList.declarations.some((function(e){return!e.initializer})))}function u(t,r){for(var n=0,i=[r];i.length&&n<100;){if(n++,r=i.shift(),e.isExportsIdentifier(r)||e.isModuleExportsAccessExpression(r))return!0;if(e.isIdentifier(r)){var a=d(t,r.escapedText);if(a&&a.valueDeclaration&&e.isVariableDeclaration(a.valueDeclaration)&&a.valueDeclaration.initializer){var o=a.valueDeclaration.initializer;i.push(o),e.isAssignmentExpression(o,!0)&&(i.push(o.left),i.push(o.right))}}}return!1}function d(t,r){var n=t.locals&&t.locals.get(r);return n?n.exportSymbol||n:e.isSourceFile(t)&&t.jsGlobalAugmentations&&t.jsGlobalAugmentations.has(r)?t.jsGlobalAugmentations.get(r):t.symbol&&t.symbol.exports&&t.symbol.exports.get(r)}e.bindSourceFile=function(t,r){null===e.tracing||void 0===e.tracing||e.tracing.push("bind","bindSourceFile",{path:t.path},!0),e.performance.mark("beforeBind"),e.perfLogger.logStartBindFile(""+t.fileName),c(t,r),e.perfLogger.logStopBindFile(),e.performance.mark("afterBind"),e.performance.measure("Bind","beforeBind","afterBind"),null===e.tracing||void 0===e.tracing||e.tracing.pop()},e.isExportsOrModuleExportsOrAlias=u}(d||(d={})),function(e){e.createGetSymbolWalker=function(t,r,n,i,a,o,s,c,l,u,d){return function(p){void 0===p&&(p=function(){return!0});var f=[],m=[];return{walkType:function(t){try{return g(t),{visitedTypes:e.getOwnValues(f),visitedSymbols:e.getOwnValues(m)}}finally{e.clear(f),e.clear(m)}},walkSymbol:function(t){try{return y(t),{visitedTypes:e.getOwnValues(f),visitedSymbols:e.getOwnValues(m)}}finally{e.clear(f),e.clear(m)}}};function g(t){if(t&&(!f[t.id]&&(f[t.id]=t,!y(t.symbol)))){if(524288&t.flags){var r=t,n=r.objectFlags;4&n&&function(t){g(t.target),e.forEach(d(t),g)}(t),32&n&&function(e){g(e.typeParameter),g(e.constraintType),g(e.templateType),g(e.modifiersType)}(t),3&n&&(h(a=t),e.forEach(a.typeParameters,g),e.forEach(i(a),g),g(a.thisType)),24&n&&h(r)}var a;262144&t.flags&&function(e){g(l(e))}(t),3145728&t.flags&&function(t){e.forEach(t.types,g)}(t),4194304&t.flags&&function(e){g(e.type)}(t),8388608&t.flags&&function(e){g(e.objectType),g(e.indexType),g(e.constraint)}(t)}}function _(i){var a=r(i);a&&g(a.type),e.forEach(i.typeParameters,g);for(var o=0,s=i.parameters;o<s.length;o++){y(s[o])}g(t(i)),g(n(i))}function h(e){g(c(e,0)),g(c(e,1));for(var t=a(e),r=0,n=t.callSignatures;r<n.length;r++){_(n[r])}for(var i=0,o=t.constructSignatures;i<o.length;i++){_(o[i])}for(var s=0,l=t.properties;s<l.length;s++){y(l[s])}}function y(t){if(!t)return!1;var r=e.getSymbolId(t);return!m[r]&&(m[r]=t,!p(t)||(g(o(t)),t.exports&&t.exports.forEach(y),e.forEach(t.declarations,(function(e){if(e.type&&177===e.type.kind){var t=e.type;y(s(u(t.exprName)))}})),!1))}}}}(d||(d={})),function(e){var t,r,n,o,c=/^".+"$/,l="(anonymous)",u=1,d=1,p=1,f=1;!function(e){e[e.AllowsSyncIterablesFlag=1]="AllowsSyncIterablesFlag",e[e.AllowsAsyncIterablesFlag=2]="AllowsAsyncIterablesFlag",e[e.AllowsStringInputFlag=4]="AllowsStringInputFlag",e[e.ForOfFlag=8]="ForOfFlag",e[e.YieldStarFlag=16]="YieldStarFlag",e[e.SpreadFlag=32]="SpreadFlag",e[e.DestructuringFlag=64]="DestructuringFlag",e[e.PossiblyOutOfBounds=128]="PossiblyOutOfBounds",e[e.Element=1]="Element",e[e.Spread=33]="Spread",e[e.Destructuring=65]="Destructuring",e[e.ForOf=13]="ForOf",e[e.ForAwaitOf=15]="ForAwaitOf",e[e.YieldStar=17]="YieldStar",e[e.AsyncYieldStar=19]="AsyncYieldStar",e[e.GeneratorReturnType=1]="GeneratorReturnType",e[e.AsyncGeneratorReturnType=2]="AsyncGeneratorReturnType"}(t||(t={})),function(e){e[e.Yield=0]="Yield",e[e.Return=1]="Return",e[e.Next=2]="Next"}(r||(r={})),function(e){e[e.Normal=0]="Normal",e[e.FunctionReturn=1]="FunctionReturn",e[e.GeneratorNext=2]="GeneratorNext",e[e.GeneratorYield=3]="GeneratorYield"}(n||(n={})),function(e){e[e.None=0]="None",e[e.TypeofEQString=1]="TypeofEQString",e[e.TypeofEQNumber=2]="TypeofEQNumber",e[e.TypeofEQBigInt=4]="TypeofEQBigInt",e[e.TypeofEQBoolean=8]="TypeofEQBoolean",e[e.TypeofEQSymbol=16]="TypeofEQSymbol",e[e.TypeofEQObject=32]="TypeofEQObject",e[e.TypeofEQFunction=64]="TypeofEQFunction",e[e.TypeofEQHostObject=128]="TypeofEQHostObject",e[e.TypeofNEString=256]="TypeofNEString",e[e.TypeofNENumber=512]="TypeofNENumber",e[e.TypeofNEBigInt=1024]="TypeofNEBigInt",e[e.TypeofNEBoolean=2048]="TypeofNEBoolean",e[e.TypeofNESymbol=4096]="TypeofNESymbol",e[e.TypeofNEObject=8192]="TypeofNEObject",e[e.TypeofNEFunction=16384]="TypeofNEFunction",e[e.TypeofNEHostObject=32768]="TypeofNEHostObject",e[e.EQUndefined=65536]="EQUndefined",e[e.EQNull=131072]="EQNull",e[e.EQUndefinedOrNull=262144]="EQUndefinedOrNull",e[e.NEUndefined=524288]="NEUndefined",e[e.NENull=1048576]="NENull",e[e.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",e[e.Truthy=4194304]="Truthy",e[e.Falsy=8388608]="Falsy",e[e.All=16777215]="All",e[e.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",e[e.BaseStringFacts=12582401]="BaseStringFacts",e[e.StringStrictFacts=16317953]="StringStrictFacts",e[e.StringFacts=16776705]="StringFacts",e[e.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",e[e.EmptyStringFacts=12582401]="EmptyStringFacts",e[e.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",e[e.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",e[e.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",e[e.BaseNumberFacts=12582146]="BaseNumberFacts",e[e.NumberStrictFacts=16317698]="NumberStrictFacts",e[e.NumberFacts=16776450]="NumberFacts",e[e.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",e[e.ZeroNumberFacts=12582146]="ZeroNumberFacts",e[e.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",e[e.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",e[e.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",e[e.BaseBigIntFacts=12581636]="BaseBigIntFacts",e[e.BigIntStrictFacts=16317188]="BigIntStrictFacts",e[e.BigIntFacts=16775940]="BigIntFacts",e[e.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",e[e.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",e[e.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",e[e.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",e[e.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",e[e.BaseBooleanFacts=12580616]="BaseBooleanFacts",e[e.BooleanStrictFacts=16316168]="BooleanStrictFacts",e[e.BooleanFacts=16774920]="BooleanFacts",e[e.FalseStrictFacts=12121864]="FalseStrictFacts",e[e.FalseFacts=12580616]="FalseFacts",e[e.TrueStrictFacts=7927560]="TrueStrictFacts",e[e.TrueFacts=16774920]="TrueFacts",e[e.SymbolStrictFacts=7925520]="SymbolStrictFacts",e[e.SymbolFacts=16772880]="SymbolFacts",e[e.ObjectStrictFacts=7888800]="ObjectStrictFacts",e[e.ObjectFacts=16736160]="ObjectFacts",e[e.FunctionStrictFacts=7880640]="FunctionStrictFacts",e[e.FunctionFacts=16728e3]="FunctionFacts",e[e.UndefinedFacts=9830144]="UndefinedFacts",e[e.NullFacts=9363232]="NullFacts",e[e.EmptyObjectStrictFacts=16318463]="EmptyObjectStrictFacts",e[e.AllTypeofNE=556800]="AllTypeofNE",e[e.EmptyObjectFacts=16777215]="EmptyObjectFacts"}(o||(o={}));var m,g,_,h,y,v,b,k,x,S=new e.Map(e.getEntries({string:1,number:2,bigint:4,boolean:8,symbol:16,undefined:65536,object:32,function:64})),w=new e.Map(e.getEntries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384}));!function(e){e[e.Type=0]="Type",e[e.ResolvedBaseConstructorType=1]="ResolvedBaseConstructorType",e[e.DeclaredType=2]="DeclaredType",e[e.ResolvedReturnType=3]="ResolvedReturnType",e[e.ImmediateBaseConstraint=4]="ImmediateBaseConstraint",e[e.EnumTagType=5]="EnumTagType",e[e.ResolvedTypeArguments=6]="ResolvedTypeArguments",e[e.ResolvedBaseTypes=7]="ResolvedBaseTypes"}(m||(m={})),function(e){e[e.Normal=0]="Normal",e[e.Contextual=1]="Contextual",e[e.Inferential=2]="Inferential",e[e.SkipContextSensitive=4]="SkipContextSensitive",e[e.SkipGenericFunctions=8]="SkipGenericFunctions",e[e.IsForSignatureHelp=16]="IsForSignatureHelp",e[e.SkipEtsComponentBody=32]="SkipEtsComponentBody"}(g||(g={})),function(e){e[e.None=0]="None",e[e.NoIndexSignatures=1]="NoIndexSignatures",e[e.Writing=2]="Writing",e[e.CacheSymbol=4]="CacheSymbol",e[e.NoTupleBoundsCheck=8]="NoTupleBoundsCheck",e[e.ExpressionPosition=16]="ExpressionPosition"}(_||(_={})),function(e){e[e.BivariantCallback=1]="BivariantCallback",e[e.StrictCallback=2]="StrictCallback",e[e.IgnoreReturnTypes=4]="IgnoreReturnTypes",e[e.StrictArity=8]="StrictArity",e[e.Callback=3]="Callback"}(h||(h={})),function(e){e[e.None=0]="None",e[e.Source=1]="Source",e[e.Target=2]="Target",e[e.PropertyCheck=4]="PropertyCheck",e[e.UnionIntersectionCheck=8]="UnionIntersectionCheck",e[e.InPropertyCheck=16]="InPropertyCheck"}(y||(y={})),function(e){e[e.IncludeReadonly=1]="IncludeReadonly",e[e.ExcludeReadonly=2]="ExcludeReadonly",e[e.IncludeOptional=4]="IncludeOptional",e[e.ExcludeOptional=8]="ExcludeOptional"}(v||(v={})),function(e){e[e.None=0]="None",e[e.Source=1]="Source",e[e.Target=2]="Target",e[e.Both=3]="Both"}(b||(b={})),function(e){e.resolvedExports="resolvedExports",e.resolvedMembers="resolvedMembers"}(k||(k={})),function(e){e[e.Local=0]="Local",e[e.Parameter=1]="Parameter"}(x||(x={}));var D,E,T,C,A=e.and(L,(function(t){return!e.isAccessor(t)}));!function(e){e[e.GetAccessor=1]="GetAccessor",e[e.SetAccessor=2]="SetAccessor",e[e.PropertyAssignment=4]="PropertyAssignment",e[e.Method=8]="Method",e[e.GetOrSetAccessor=3]="GetOrSetAccessor",e[e.PropertyAssignmentOrMethod=12]="PropertyAssignmentOrMethod"}(D||(D={})),function(e){e[e.None=0]="None",e[e.ExportValue=1]="ExportValue",e[e.ExportType=2]="ExportType",e[e.ExportNamespace=4]="ExportNamespace"}(E||(E={})),function(e){e[e.None=0]="None",e[e.StrongArityForUntypedJS=1]="StrongArityForUntypedJS",e[e.VoidIsNonOptional=2]="VoidIsNonOptional"}(T||(T={})),function(e){e[e.Uppercase=0]="Uppercase",e[e.Lowercase=1]="Lowercase",e[e.Capitalize=2]="Capitalize",e[e.Uncapitalize=3]="Uncapitalize"}(C||(C={}));var N,P=new e.Map(e.getEntries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3}));function I(){}function F(){this.flags=0}function O(e){return e.id||(e.id=d,d++),e.id}function R(e){return e.id||(e.id=u,u++),e.id}function M(t,r){var n=e.getModuleInstanceState(t);return 1===n||r&&2===n}function L(e){return 253!==e.kind&&166!==e.kind||!!e.body}function j(t){switch(t.parent.kind){case 268:case 273:return e.isIdentifier(t);default:return e.isDeclarationName(t)}}function B(e){switch(e.kind){case 265:case 263:case 266:case 268:return!0;case 78:return 268===e.parent.kind;default:return!1}}function z(e){switch(e){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function U(e){return!!(1&e.flags)}function q(e){return!!(2&e.flags)}e.getNodeId=O,e.getSymbolId=R,e.isInstantiatedModule=M,e.createTypeChecker=function(t,r){var n,o,u,d,m=e.memoize((function(){var r=new e.Set;return t.getSourceFiles().forEach((function(t){t.resolvedModules&&e.forEachEntry(t.resolvedModules,(function(e){e&&e.packageId&&r.add(e.packageId.name)}))})),r})),g=e.objectAllocator.getSymbolConstructor(),_=e.objectAllocator.getTypeConstructor(),h=e.objectAllocator.getSignatureConstructor(),y=0,v=0,b=0,k=0,x=0,D=0,E=[],T=e.createSymbolTable(),C=[1],J=t.getCompilerOptions(),V=e.getEmitScriptTarget(J),H=e.getEmitModuleKind(J),K=e.getAllowSyntheticDefaultImports(J),W=e.getStrictOptionValue(J,"strictNullChecks"),G=e.getStrictOptionValue(J,"strictFunctionTypes"),$=e.getStrictOptionValue(J,"strictBindCallApply"),Y=e.getStrictOptionValue(J,"strictPropertyInitialization"),X=e.getStrictOptionValue(J,"noImplicitAny"),Q=e.getStrictOptionValue(J,"noImplicitThis"),Z=!!J.keyofStringsOnly,ee=J.suppressExcessPropertyErrors?0:32768,te=function(){var r,n=t.getResolvedTypeReferenceDirectives();n&&(r=new e.Map,n.forEach((function(e,r){if(e&&e.resolvedFileName){var n=t.getSourceFile(e.resolvedFileName);n&&a(n,r)}})));return{getReferencedExportContainer:oS,getReferencedImportDeclaration:sS,getReferencedDeclarationWithCollidingName:lS,isDeclarationWithCollidingName:uS,isValueAliasDeclaration:function(t){var r=e.getParseTreeNode(t);return!r||dS(r)},hasGlobalName:NS,isReferencedAliasDeclaration:function(t,r){var n=e.getParseTreeNode(t);return!n||gS(n,r)},isReferenced:function(t){var r=e.getParseTreeNode(t);return!!r&&function(e){var t=Ai(e);return!!(null==t?void 0:t.isReferenced)}(r)},getNodeCheckFlags:function(t){var r=e.getParseTreeNode(t);return r?kS(r):0},isTopLevelValueImportEqualsWithEntityName:pS,isDeclarationVisible:Sa,isImplementationOfOverload:_S,isRequiredInitializedParameter:hS,isOptionalUninitializedParameterProperty:yS,isExpandoFunctionDeclaration:vS,getPropertiesOfContainerFunction:bS,createTypeOfDeclaration:TS,createReturnTypeOfSignatureDeclaration:CS,createTypeOfExpression:AS,createLiteralConstValue:OS,isSymbolAccessible:ra,isEntityNameVisible:ca,getConstantValue:function(t){var r=e.getParseTreeNode(t,SS);return r?wS(r):void 0},collectLinkedAliases:wa,getReferencedValueDeclaration:IS,getTypeReferenceSerializationKind:ES,isOptionalParameter:Tc,moduleExportsSomeValue:aS,isArgumentsLocalBinding:iS,getExternalModuleFileFromDeclaration:function(t){var r=e.getParseTreeNode(t,e.hasPossibleExternalModuleReference);return r&&LS(r)},getTypeReferenceDirectivesForEntityName:function(e){if(!r)return;var t=790504;(78===e.kind&&Nm(e)||202===e.kind&&!function(e){return e.parent&&225===e.parent.kind&&e.parent.parent&&289===e.parent.parent.kind}(e))&&(t=1160127);var n=fi(e,t,!0);return n&&n!==ke?i(n,t):void 0},getTypeReferenceDirectivesForSymbol:i,isLiteralConstDeclaration:FS,isLateBound:function(t){var r=e.getParseTreeNode(t,e.isDeclaration),n=r&&Ai(r);return!!(n&&4096&e.getCheckFlags(n))},getJsxFactoryEntity:RS,getJsxFragmentFactoryEntity:MS,getAllAccessorDeclarations:function(t){var r=169===(t=e.getParseTreeNode(t,e.isGetOrSetAccessorDeclaration)).kind?168:169,n=e.getDeclarationOfKind(Ai(t),r);return{firstAccessor:n&&n.pos<t.pos?n:t,secondAccessor:n&&n.pos<t.pos?t:n,setAccessor:169===t.kind?t:n,getAccessor:168===t.kind?t:n}},getSymbolOfExternalModuleSpecifier:function(e){return _i(e,e,void 0)},isBindingCapturedByNode:function(t,r){var n=e.getParseTreeNode(t),i=e.getParseTreeNode(r);return!!n&&!!i&&(e.isVariableDeclaration(i)||e.isBindingElement(i))&&function(t,r){var n=Cn(t);return!!n&&e.contains(n.capturedBlockScopeBindings,Ai(r))}(n,i)},getDeclarationStatementsForSourceFile:function(t,r,n,i){var a=e.getParseTreeNode(t);e.Debug.assert(a&&300===a.kind,"Non-sourcefile node passed into getDeclarationsForSourceFile");var o=Ai(t);return o?o.exports?re.symbolTableToDeclarationStatements(o.exports,t,r,n,i):[]:t.locals?re.symbolTableToDeclarationStatements(t.locals,t,r,n,i):[]},isImportRequiredByAugmentation:function(t){var r=e.getSourceFileOfNode(t);if(!r.symbol)return!1;var n=LS(t);if(!n)return!1;if(n===r)return!1;for(var i=Di(r.symbol),a=0,o=e.arrayFrom(i.values());a<o.length;a++){var s=o[a];if(s.mergeId)for(var c=0,l=Ci(s).declarations;c<l.length;c++){var u=l[c];if(e.getSourceFileOfNode(u)===n)return!0}}return!1}};function i(t,n){if(r&&function(t){if(!t.declarations)return!1;var n=t;for(;;){var i=Ni(n);if(!i)break;n=i}if(n.valueDeclaration&&300===n.valueDeclaration.kind&&512&n.flags)return!1;for(var a=0,o=t.declarations;a<o.length;a++){var s=o[a],c=e.getSourceFileOfNode(s);if(r.has(c.path))return!0}return!1}(t)){for(var i,a=0,o=t.declarations;a<o.length;a++){var s=o[a];if(s.symbol&&s.symbol.flags&n){var c=e.getSourceFileOfNode(s),l=r.get(c.path);if(!l)return;(i||(i=[])).push(l)}}return i}}function a(n,i){if(!r.has(n.path)){r.set(n.path,i);for(var o=0,s=n.referencedFiles;o<s.length;o++){var c=s[o].fileName,l=e.resolveTripleslashReference(c,n.fileName),u=t.getSourceFile(l);u&&a(u,i)}}}}(),re=function(){return{typeToTypeNode:function(e,t,n,i){return r(t,n,i,(function(t){return s(e,t)}))},indexInfoToIndexSignatureDeclaration:function(e,t,n,i,a){return r(n,i,a,(function(r){return p(e,t,r,void 0)}))},signatureToSignatureDeclaration:function(e,t,n,i,a){return r(n,i,a,(function(r){return f(e,t,r)}))},symbolToEntityName:function(e,t,n,i,a){return r(n,i,a,(function(r){return T(e,r,t,!1)}))},symbolToExpression:function(e,t,n,i,a){return r(n,i,a,(function(r){return C(e,r,t)}))},symbolToTypeParameterDeclarations:function(e,t,n,i){return r(t,n,i,(function(t){return b(e,t)}))},symbolToParameterDeclaration:function(e,t,n,i){return r(t,n,i,(function(t){return _(e,t)}))},typeParameterToDeclaration:function(e,t,n,i){return r(t,n,i,(function(t){return g(e,t)}))},symbolTableToDeclarationStatements:function(t,n,o,c,l){return r(n,o,c,(function(r){return function(t,r,n){var o=se(e.factory.createPropertyDeclaration,166,!0),c=se((function(t,r,n,i,a){return e.factory.createPropertySignature(r,n,i,a)}),165,!1),l=r.enclosingDeclaration,u=[],d=new e.Set,m=[],_=r;r=a(a({},_),{usedSymbolNames:new e.Set(_.usedSymbolNames),remappedSymbolNames:new e.Map,tracker:a(a({},_.tracker),{trackSymbol:function(e,t,n){if(0===ra(e,t,n,!1).accessibility){var i=v(e,r,n);4&e.flags||U(i[0])}else _.tracker&&_.tracker.trackSymbol&&_.tracker.trackSymbol(e,t,n)}})}),e.forEachEntry(t,(function(t,r){_e(t,e.unescapeLeadingUnderscores(r))}));var h=!n,y=t.get("export=");y&&t.size>1&&2097152&y.flags&&(t=e.createSymbolTable()).set("export=",y);return O(t),E(u);function b(e){return!!e&&78===e.kind}function k(t){return e.isVariableStatement(t)?e.filter(e.map(t.declarationList.declarations,e.getNameOfDeclaration),b):e.filter([e.getNameOfDeclaration(t)],b)}function x(t){var r=e.find(t,e.isExportAssignment),n=e.findIndex(t,e.isModuleDeclaration),a=-1!==n?t[n]:void 0;if(a&&r&&r.isExportEquals&&e.isIdentifier(r.expression)&&e.isIdentifier(a.name)&&e.idText(a.name)===e.idText(r.expression)&&a.body&&e.isModuleBlock(a.body)){var o=e.filter(t,(function(t){return!!(1&e.getEffectiveModifierFlags(t))})),s=a.name,c=a.body;if(e.length(o)&&(a=e.factory.updateModuleDeclaration(a,a.decorators,a.modifiers,a.name,c=e.factory.updateModuleBlock(c,e.factory.createNodeArray(i(i([],a.body.statements),[e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.map(e.flatMap(o,(function(e){return k(e)})),(function(t){return e.factory.createExportSpecifier(void 0,t)}))),void 0)])))),t=i(i(i([],t.slice(0,n)),[a]),t.slice(n+1))),!e.find(t,(function(t){return t!==a&&e.nodeHasName(t,s)}))){u=[];var l=!e.some(c.statements,(function(t){return e.hasSyntacticModifier(t,1)||e.isExportAssignment(t)||e.isExportDeclaration(t)}));e.forEach(c.statements,(function(e){H(e,l?1:0)})),t=i(i([],e.filter(t,(function(e){return e!==a&&e!==r}))),u)}}return t}function w(t){var r=e.filter(t,(function(t){return e.isExportDeclaration(t)&&!t.moduleSpecifier&&!!t.exportClause&&e.isNamedExports(t.exportClause)}));if(e.length(r)>1){var n=e.filter(t,(function(t){return!e.isExportDeclaration(t)||!!t.moduleSpecifier||!t.exportClause}));t=i(i([],n),[e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.flatMap(r,(function(t){return e.cast(t.exportClause,e.isNamedExports).elements}))),void 0)])}var a=e.filter(t,(function(t){return e.isExportDeclaration(t)&&!!t.moduleSpecifier&&!!t.exportClause&&e.isNamedExports(t.exportClause)}));if(e.length(a)>1){var o=e.group(a,(function(t){return e.isStringLiteral(t.moduleSpecifier)?">"+t.moduleSpecifier.text:">"}));if(o.length!==a.length)for(var s=function(r){r.length>1&&(t=i(i([],e.filter(t,(function(e){return-1===r.indexOf(e)}))),[e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.flatMap(r,(function(t){return e.cast(t.exportClause,e.isNamedExports).elements}))),r[0].moduleSpecifier)]))},c=0,l=o;c<l.length;c++){s(l[c])}}return t}function D(t){var r=e.findIndex(t,(function(t){return e.isExportDeclaration(t)&&!t.moduleSpecifier&&!!t.exportClause&&e.isNamedExports(t.exportClause)}));if(r>=0){var n=t[r],i=e.mapDefined(n.exportClause.elements,(function(r){if(!r.propertyName){var n=e.indicesOf(t),i=e.filter(n,(function(n){return e.nodeHasName(t[n],r.name)}));if(e.length(i)&&e.every(i,(function(e){return A(t[e])}))){for(var a=0,o=i;a<o.length;a++){var s=o[a];t[s]=N(t[s])}return}}return r}));e.length(i)?t[r]=e.factory.updateExportDeclaration(n,n.decorators,n.modifiers,n.isTypeOnly,e.factory.updateNamedExports(n.exportClause,i),n.moduleSpecifier):e.orderedRemoveItemAt(t,r)}return t}function E(t){return t=D(t=w(t=x(t))),l&&(e.isSourceFile(l)&&e.isExternalOrCommonJsModule(l)||e.isModuleDeclaration(l))&&(!e.some(t,e.isExternalModuleIndicator)||!e.hasScopeMarker(t)&&e.some(t,e.needsScopeMarker))&&t.push(e.createEmptyExports(e.factory)),t}function A(t){return e.isEnumDeclaration(t)||e.isVariableStatement(t)||e.isFunctionDeclaration(t)||e.isClassDeclaration(t)||e.isModuleDeclaration(t)&&!e.isExternalModuleAugmentation(t)&&!e.isGlobalScopeAugmentation(t)||e.isInterfaceDeclaration(t)||Vx(t)}function N(t){var r=-3&e.getEffectiveModifierFlags(t)|1;return e.factory.updateModifiers(t,r)}function I(t){var r=-2&e.getEffectiveModifierFlags(t);return e.factory.updateModifiers(t,r)}function O(t,r,n){r||m.push(new e.Map),t.forEach((function(e){M(e,!1,!!n)})),r||(m[m.length-1].forEach((function(e){M(e,!0,!!n)})),m.pop())}function M(t,n,i){var o=Ci(t);if(!d.has(R(o))&&(d.add(R(o)),!n||e.length(t.declarations)&&e.some(t.declarations,(function(t){return!!e.findAncestor(t,(function(e){return e===l}))})))){var s=r;r=function(t){var r=a({},t);r.typeParameterNames&&(r.typeParameterNames=new e.Map(r.typeParameterNames));r.typeParameterNamesByText&&(r.typeParameterNamesByText=new e.Set(r.typeParameterNamesByText));r.typeParameterSymbolList&&(r.typeParameterSymbolList=new e.Set(r.typeParameterSymbolList));return r}(r);var c=z(t,n,i);return r=s,c}}function z(t,i,a){var o=e.unescapeLeadingUnderscores(t.escapedName),s="default"===t.escapedName;if(!i||131072&r.flags||!e.isStringANonContextualKeyword(o)||s){var c=s&&!!(-113&t.flags||16&t.flags&&e.length(Hs(_o(t))))&&!(2097152&t.flags),u=!c&&!i&&e.isStringANonContextualKeyword(o)&&!s;(c||u)&&(i=!0);var d=(i?0:1)|(s&&!c?512:0),p=1536&t.flags&&7&t.flags&&"export="!==t.escapedName,f=p&&oe(_o(t),t);if((8208&t.flags||f)&&Q(_o(t),t,_e(t,o),d),524288&t.flags&&K(t,o,d),7&t.flags&&"export="!==t.escapedName&&!(4194304&t.flags)&&!(32&t.flags)&&!f)if(a){ae(t)&&(u=!1,c=!1)}else{var m=_o(t),g=_e(t,o);if(16&t.flags||!oe(m,t)){var _=2&t.flags?jg(t)?2:1:void 0,h=!c&&4&t.flags?me(g,t):g,y=t.declarations&&e.find(t.declarations,(function(t){return e.isVariableDeclaration(t)}));y&&e.isVariableDeclarationList(y.parent)&&1===y.parent.declarations.length&&(y=y.parent.parent);var v=e.find(t.declarations,e.isPropertyAccessExpression);if(v&&e.isBinaryExpression(v.parent)&&e.isIdentifier(v.parent.right)&&m.symbol&&e.isSourceFile(m.symbol.valueDeclaration)){var b=g===v.parent.right.escapedText?void 0:v.parent.right;H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(b,g)])),0),r.tracker.trackSymbol(m.symbol,r.enclosingDeclaration,111551)}else{H(e.setTextRange(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(h,void 0,L(r,m,t,l,U,n))],_)),y),h!==g?-2&d:d),h===g||i||(H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(h,g)])),0),u=!1,c=!1)}}else Q(m,t,g,d)}if(384&t.flags&&X(t,o,d),32&t.flags&&(4&t.flags&&e.isBinaryExpression(t.valueDeclaration.parent)&&e.isClassExpression(t.valueDeclaration.parent.right)?ne(t,_e(t,o),d):re(t,_e(t,o),d)),(1536&t.flags&&(!p||$(t))||f)&&Y(t,o,d),64&t.flags&&!(32&t.flags)&&W(t,o,d),2097152&t.flags&&ne(t,_e(t,o),d),4&t.flags&&"export="===t.escapedName&&ae(t),8388608&t.flags)for(var k=0,x=t.declarations;k<x.length;k++){var w=x[k],D=gi(w,w.moduleSpecifier);D&&H(e.factory.createExportDeclaration(void 0,void 0,!1,void 0,e.factory.createStringLiteral(S(D,r))),0)}c?H(e.factory.createExportAssignment(void 0,void 0,!1,e.factory.createIdentifier(_e(t,o))),0):u&&H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(_e(t,o),o)])),0)}else r.encounteredError=!0}function U(t){if(!e.some(t.declarations,e.isParameterDeclaration)){e.Debug.assertIsDefined(m[m.length-1]),me(e.unescapeLeadingUnderscores(t.escapedName),t);var r=!!(2097152&t.flags)&&!e.some(t.declarations,(function(t){return!!e.findAncestor(t,e.isExportDeclaration)||e.isNamespaceExport(t)||e.isImportEqualsDeclaration(t)&&!e.isExternalModuleReference(t.moduleReference)}));m[r?0:m.length-1].set(R(t),t)}}function q(t){return e.isSourceFile(t)&&(e.isExternalOrCommonJsModule(t)||e.isJsonSourceFile(t))||e.isAmbientModule(t)&&!e.isGlobalScopeAugmentation(t)}function H(t,n){if(e.canHaveModifiers(t)){var i=0,a=r.enclosingDeclaration&&(e.isJSDocTypeAlias(r.enclosingDeclaration)?e.getSourceFileOfNode(r.enclosingDeclaration):r.enclosingDeclaration);1&n&&a&&(q(a)||e.isModuleDeclaration(a))&&A(t)&&(i|=1),!h||1&i||a&&8388608&a.flags||!(e.isEnumDeclaration(t)||e.isVariableStatement(t)||e.isFunctionDeclaration(t)||e.isClassDeclaration(t)||e.isModuleDeclaration(t))||(i|=2),512&n&&(e.isClassDeclaration(t)||e.isInterfaceDeclaration(t)||e.isFunctionDeclaration(t))&&(i|=512),i&&(t=e.factory.updateModifiers(t,i|e.getEffectiveModifierFlags(t)))}u.push(t)}function K(t,i,a){var o=Ro(t),c=Tn(t).typeParameters,l=e.map(c,(function(e){return g(e,r)})),u=e.find(t.declarations,e.isJSDocTypeAlias),d=u?u.comment||u.parent.comment:void 0,p=r.flags;r.flags|=8388608;var f=r.enclosingDeclaration;r.enclosingDeclaration=u;var m=u&&u.typeExpression&&e.isJSDocTypeExpression(u.typeExpression)&&B(r,u.typeExpression.type,U,n)||s(o,r);H(e.setSyntheticLeadingComments(e.factory.createTypeAliasDeclaration(void 0,void 0,_e(t,i),l,m),d?[{kind:3,text:"*\n * "+d.replace(/\n/g,"\n * ")+"\n ",pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),a),r.flags=p,r.enclosingDeclaration=f}function W(t,n,a){var o=Oo(t),s=So(t),c=e.map(s,(function(e){return g(e,r)})),l=Po(o),u=e.length(l)?fu(l):void 0,d=e.flatMap(Hs(o),(function(e){return ce(e,u)})),p=le(0,o,u,170),f=le(1,o,u,171),m=ue(o,u),_=e.length(l)?[e.factory.createHeritageClause(94,e.mapDefined(l,(function(e){return pe(e,111551)})))]:void 0;H(e.factory.createInterfaceDeclaration(void 0,void 0,_e(t,n),c,_,i(i(i(i([],m),f),p),d)),a)}function G(t){return t.exports?e.filter(e.arrayFrom(t.exports.values()),ee):[]}function $(t){return e.every(G(t),(function(e){return!(111551&ii(e).flags)}))}function Y(t,n,i){var a=G(t),o=e.arrayToMultiMap(a,(function(e){return e.parent&&e.parent===t?"real":"merged"})),s=o.get("real")||e.emptyArray,c=o.get("merged")||e.emptyArray;e.length(s)&&Z(s,u=_e(t,n),i,!!(67108880&t.flags));if(e.length(c)){var l=e.getSourceFileOfNode(r.enclosingDeclaration),u=_e(t,n),d=e.factory.createModuleBlock([e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.mapDefined(e.filter(c,(function(e){return"export="!==e.escapedName})),(function(n){var i,a,o=e.unescapeLeadingUnderscores(n.escapedName),s=_e(n,o),c=n.declarations&&Vn(n);if(!l||(c?l===e.getSourceFileOfNode(c):e.some(n.declarations,(function(t){return e.getSourceFileOfNode(t)===l})))){var u=c&&ri(c,!0);U(u||n);var d=u?_e(u,e.unescapeLeadingUnderscores(u.escapedName)):s;return e.factory.createExportSpecifier(o===d?void 0:d,o)}null===(a=null===(i=r.tracker)||void 0===i?void 0:i.reportNonlocalAugmentation)||void 0===a||a.call(i,l,t,n)}))))]);H(e.factory.createModuleDeclaration(void 0,void 0,e.factory.createIdentifier(u),d,16),0)}}function X(t,r,n){H(e.factory.createEnumDeclaration(void 0,e.factory.createModifiersFromModifierFlags(Bv(t)?2048:0),_e(t,r),e.map(e.filter(Hs(_o(t)),(function(e){return!!(8&e.flags)})),(function(t){var r=t.declarations&&t.declarations[0]&&e.isEnumMember(t.declarations[0])?wS(t.declarations[0]):void 0;return e.factory.createEnumMember(e.unescapeLeadingUnderscores(t.escapedName),void 0===r?void 0:"string"==typeof r?e.factory.createStringLiteral(r):e.factory.createNumericLiteral(r))}))),n)}function Q(t,i,a,o){for(var s=0,c=hc(t,0);s<c.length;s++){var l=c[s],u=f(l,253,r,{name:e.factory.createIdentifier(a),privateSymbolVisitor:U,bundledImports:n});H(e.setTextRange(u,l.declaration&&e.isVariableDeclaration(l.declaration.parent)&&l.declaration.parent.parent||l.declaration),o)}1536&i.flags&&i.exports&&i.exports.size||Z(e.filter(Hs(t),ee),a,o,!0)}function Z(t,n,i,o){if(e.length(t)){var s=e.arrayToMultiMap(t,(function(t){return!e.length(t.declarations)||e.some(t.declarations,(function(t){return e.getSourceFileOfNode(t)===e.getSourceFileOfNode(r.enclosingDeclaration)}))?"local":"remote"})).get("local")||e.emptyArray,c=e.parseNodeFactory.createModuleDeclaration(void 0,void 0,e.factory.createIdentifier(n),e.factory.createModuleBlock([]),16);e.setParent(c,l),c.locals=e.createSymbolTable(t),c.symbol=t[0].parent;var d=u;u=[];var p=h;h=!1;var f=a(a({},r),{enclosingDeclaration:c}),m=r;r=f,O(e.createSymbolTable(s),o,!0),r=m,h=p;var g=u;u=d;var _=e.map(g,(function(t){return e.isExportAssignment(t)&&!t.isExportEquals&&e.isIdentifier(t.expression)?e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(t.expression,e.factory.createIdentifier("default"))])):t})),y=e.every(_,(function(t){return e.hasSyntacticModifier(t,1)}))?e.map(_,I):_;H(c=e.factory.updateModuleDeclaration(c,c.decorators,c.modifiers,c.name,e.factory.createModuleBlock(y)),i)}}function ee(t){return!!(2887656&t.flags)||!(4194304&t.flags||"prototype"===t.escapedName||t.valueDeclaration&&32&e.getEffectiveModifierFlags(t.valueDeclaration)&&e.isClassLike(t.valueDeclaration.parent))}function te(t){var i=e.mapDefined(t,(function(t){var i,a=r.enclosingDeclaration;r.enclosingDeclaration=t;var o=t.expression;if(e.isEntityNameExpression(o)){if(e.isIdentifier(o)&&""===e.idText(o))return l(void 0);var c=void 0;if(c=(i=j(o,r,U)).introducesError,o=i.node,c)return l(void 0)}return l(e.factory.createExpressionWithTypeArguments(o,e.map(t.typeArguments,(function(e){return B(r,e,U,n)||s(xd(e),r)}))));function l(e){return r.enclosingDeclaration=a,e}}));if(i.length===t.length)return i}function re(t,n,a){var s,c=e.find(t.declarations,e.isClassLike),l=r.enclosingDeclaration;r.enclosingDeclaration=c||l;var u=So(t),d=e.map(u,(function(e){return g(e,r)})),p=Oo(t),f=Po(p),m=c&&e.getEffectiveImplementsTypeNodes(c),_=m&&te(m)||e.mapDefined(function(t){for(var r=e.emptyArray,n=0,i=t.symbol.declarations;n<i.length;n++){var a=i[n],o=e.getEffectiveImplementsTypeNodes(a);if(o)for(var s=0,c=o;s<c.length;s++){var l=xd(c[s]);l!==Ee&&(r===e.emptyArray?r=[l]:r.push(l))}}return r}(p),fe),h=_o(t),y=!!(null===(s=h.symbol)||void 0===s?void 0:s.valueDeclaration)&&e.isClassLike(h.symbol.valueDeclaration),v=y?Ao(h):Se,b=i(i([],e.length(f)?[e.factory.createHeritageClause(94,e.map(f,(function(e){return de(e,v,n)})))]:[]),e.length(_)?[e.factory.createHeritageClause(117,_)]:[]),k=function(t,r,n){if(!e.length(r))return n;var i=new e.Map;e.forEach(n,(function(e){i.set(e.escapedName,e)}));for(var a=0,o=r;a<o.length;a++)for(var s=0,c=Hs(ls(o[a],t.thisType));s<c.length;s++){var l=c[s],u=i.get(l.escapedName);u&&!Qp(u,l)&&i.delete(l.escapedName)}return e.arrayFrom(i.values())}(p,f,Hs(p)),x=e.filter(k,(function(t){var r=t.valueDeclaration;return r&&!(e.isNamedDeclaration(r)&&e.isPrivateIdentifier(r.name))})),S=e.some(k,(function(t){var r=t.valueDeclaration;return r&&e.isNamedDeclaration(r)&&e.isPrivateIdentifier(r.name)}))?[e.factory.createPropertyDeclaration(void 0,void 0,e.factory.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:e.emptyArray,w=e.flatMap(x,(function(e){return o(e,!1,f[0])})),D=e.flatMap(e.filter(Hs(h),(function(e){return!(4194304&e.flags||"prototype"===e.escapedName||ee(e))})),(function(e){return o(e,!0,v)})),E=!y&&!!t.valueDeclaration&&e.isInJSFile(t.valueDeclaration)&&!e.some(hc(h,1))?[e.factory.createConstructorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(8),[],void 0)]:le(1,h,v,167),T=ue(p,f[0]);r.enclosingDeclaration=l,H(e.setTextRange(e.factory.createClassDeclaration(void 0,void 0,n,d,b,i(i(i(i(i([],T),D),E),w),S)),t.declarations&&e.filter(t.declarations,(function(t){return e.isClassDeclaration(t)||e.isClassExpression(t)}))[0]),a)}function ne(t,n,i){var a,o,s,c,l,u=Vn(t);if(!u)return e.Debug.fail();var d=Ci(ri(u,!0));if(d){var p=e.unescapeLeadingUnderscores(d.escapedName);"export="===p&&(J.esModuleInterop||J.allowSyntheticDefaultImports)&&(p="default");var f=_e(d,p);switch(U(d),u.kind){case 199:if(251===(null===(o=null===(a=u.parent)||void 0===a?void 0:a.parent)||void 0===o?void 0:o.kind)){var m=S(d.parent||d,r),g=u.propertyName;H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamedImports([e.factory.createImportSpecifier(g&&e.isIdentifier(g)?e.factory.createIdentifier(e.idText(g)):void 0,e.factory.createIdentifier(n))])),e.factory.createStringLiteral(m)),0);break}e.Debug.failBadSyntaxKind((null===(s=u.parent)||void 0===s?void 0:s.parent)||u,"Unhandled binding element grandparent kind in declaration serialization");break;case 292:218===(null===(l=null===(c=u.parent)||void 0===c?void 0:c.parent)||void 0===l?void 0:l.kind)&&ie(e.unescapeLeadingUnderscores(t.escapedName),f);break;case 251:if(e.isPropertyAccessExpression(u.initializer)){var _=u.initializer,h=e.factory.createUniqueName(n),y=S(d.parent||d,r);H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,h,e.factory.createExternalModuleReference(e.factory.createStringLiteral(y))),0),H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,e.factory.createIdentifier(n),e.factory.createQualifiedName(h,_.name)),i);break}case 263:if("export="===d.escapedName&&e.some(d.declarations,e.isJsonSourceFile)){ae(t);break}var v=!(512&d.flags||e.isVariableDeclaration(u));H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,e.factory.createIdentifier(n),v?T(d,r,67108863,!1):e.factory.createExternalModuleReference(e.factory.createStringLiteral(S(d,r)))),v?i:0);break;case 262:H(e.factory.createNamespaceExportDeclaration(e.idText(u.name)),0);break;case 265:H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,e.factory.createIdentifier(n),void 0),e.factory.createStringLiteral(S(d.parent||d,r))),0);break;case 266:H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamespaceImport(e.factory.createIdentifier(n))),e.factory.createStringLiteral(S(d,r))),0);break;case 272:H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamespaceExport(e.factory.createIdentifier(n)),e.factory.createStringLiteral(S(d,r))),0);break;case 268:H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamedImports([e.factory.createImportSpecifier(n!==p?e.factory.createIdentifier(p):void 0,e.factory.createIdentifier(n))])),e.factory.createStringLiteral(S(d.parent||d,r))),0);break;case 273:var b=u.parent.parent.moduleSpecifier;ie(e.unescapeLeadingUnderscores(t.escapedName),b?p:f,b&&e.isStringLiteralLike(b)?e.factory.createStringLiteral(b.text):void 0);break;case 269:ae(t);break;case 218:case 202:case 203:"default"===t.escapedName||"export="===t.escapedName?ae(t):ie(n,f);break;default:return e.Debug.failBadSyntaxKind(u,"Unhandled alias declaration kind in symbol serializer!")}}}function ie(t,r,n){H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(t!==r?r:void 0,t)]),n),0)}function ae(t){if(4194304&t.flags)return!1;var i=e.unescapeLeadingUnderscores(t.escapedName),a="export="===i,o=a||"default"===i,s=t.declarations&&Vn(t),c=s&&ri(s,!0);if(c&&e.length(c.declarations)&&e.some(c.declarations,(function(t){return e.getSourceFileOfNode(t)===e.getSourceFileOfNode(l)}))){var d=s&&(e.isExportAssignment(s)||e.isBinaryExpression(s)?e.getExportAssignmentExpression(s):e.getPropertyAssignmentAliasLikeExpression(s)),p=d&&e.isEntityNameExpression(d)?function(t){switch(t.kind){case 78:return t;case 158:do{t=t.left}while(78!==t.kind);return t;case 202:do{if(e.isModuleExportsAccessExpression(t.expression)&&!e.isPrivateIdentifier(t.name))return t.name;t=t.expression}while(78!==t.kind);return t}}(d):void 0,f=p&&fi(p,67108863,!0,!0,l);(f||c)&&U(f||c);var m=r.tracker.trackSymbol;if(r.tracker.trackSymbol=e.noop,o)u.push(e.factory.createExportAssignment(void 0,void 0,a,C(c,r,67108863)));else if(p===d&&p)ie(i,e.idText(p));else if(d&&e.isClassExpression(d))ie(i,_e(c,e.symbolName(c)));else{var g=me(i,t);H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,e.factory.createIdentifier(g),T(c,r,67108863,!1)),0),ie(i,g)}return r.tracker.trackSymbol=m,!0}g=me(i,t);var _=Hf(_o(Ci(t)));return oe(_,t)?Q(_,t,g,o?0:1):H(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(g,void 0,L(r,_,t,l,U,n))],2)),c&&4&c.flags&&"export="===c.escapedName?2:i===g?1:0),o?(u.push(e.factory.createExportAssignment(void 0,void 0,a,e.factory.createIdentifier(g))),!0):i!==g&&(ie(i,g),!0)}function oe(t,n){var i=e.getSourceFileOfNode(r.enclosingDeclaration);return 48&e.getObjectFlags(t)&&!bc(t,0)&&!bc(t,1)&&!_a(t)&&!(!e.length(e.filter(Hs(t),ee))&&!e.length(hc(t,0)))&&!e.length(hc(t,1))&&!F(n,l)&&!(t.symbol&&e.some(t.symbol.declarations,(function(t){return e.getSourceFileOfNode(t)!==i})))&&!e.some(Hs(t),(function(e){return ts(e.escapedName)}))&&!e.some(Hs(t),(function(t){return e.some(t.declarations,(function(t){return e.getSourceFileOfNode(t)!==i}))}))&&e.every(Hs(t),(function(t){return e.isIdentifierText(e.symbolName(t),V)}))}function se(t,i,a){return function(o,s,c){var u=e.getDeclarationModifierFlagsFromSymbol(o),d=!!(8&u);if(s&&2887656&o.flags)return[];if(4194304&o.flags||c&&gc(c,o.escapedName)&&Nv(gc(c,o.escapedName))===Nv(o)&&(16777216&o.flags)==(16777216&gc(c,o.escapedName).flags)&&np(_o(o),Na(c,o.escapedName)))return[];var p=-257&u|(s?32:0),m=P(o,r),g=e.find(o.declarations,e.or(e.isPropertyDeclaration,e.isAccessor,e.isVariableDeclaration,e.isPropertySignature,e.isBinaryExpression,e.isPropertyAccessExpression));if(98304&o.flags&&a){var _=[];if(65536&o.flags&&_.push(e.setTextRange(e.factory.createSetAccessorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(p),m,[e.factory.createParameterDeclaration(void 0,void 0,void 0,"arg",void 0,d?void 0:L(r,_o(o),o,l,U,n))],void 0),e.find(o.declarations,e.isSetAccessor)||g)),32768&o.flags){var h=8&u;_.push(e.setTextRange(e.factory.createGetAccessorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(p),m,[],h?void 0:L(r,_o(o),o,l,U,n),void 0),e.find(o.declarations,e.isGetAccessor)||g))}return _}if(98311&o.flags)return e.setTextRange(t(void 0,e.factory.createModifiersFromModifierFlags((Nv(o)?64:0)|p),m,16777216&o.flags?e.factory.createToken(57):void 0,d?void 0:L(r,_o(o),o,l,U,n),void 0),e.find(o.declarations,e.or(e.isPropertyDeclaration,e.isVariableDeclaration))||g);if(8208&o.flags){var y=hc(_o(o),0);if(8&p)return e.setTextRange(t(void 0,e.factory.createModifiersFromModifierFlags((Nv(o)?64:0)|p),m,16777216&o.flags?e.factory.createToken(57):void 0,void 0,void 0),e.find(o.declarations,e.isFunctionLikeDeclaration)||y[0]&&y[0].declaration||o.declarations[0]);for(var v=[],b=0,k=y;b<k.length;b++){var x=k[b],S=f(x,i,r,{name:m,questionToken:16777216&o.flags?e.factory.createToken(57):void 0,modifiers:p?e.factory.createModifiersFromModifierFlags(p):void 0});v.push(e.setTextRange(S,x.declaration))}return v}return e.Debug.fail("Unhandled class member kind! "+(o.__debugFlags||o.flags))}}function ce(e,t){return c(e,!1,t)}function le(t,n,i,a){var o=hc(n,t);if(1===t){if(!i&&e.every(o,(function(t){return 0===e.length(t.parameters)})))return[];if(i){var s=hc(i,1);if(!e.length(s)&&e.every(o,(function(t){return 0===e.length(t.parameters)})))return[];if(s.length===o.length){for(var c=!1,l=0;l<s.length;l++)if(!ef(o[l],s[l],!1,!1,!0,ip)){c=!0;break}if(!c)return[]}}for(var u=0,d=0,p=o;d<p.length;d++){var m=p[d];m.declaration&&(u|=e.getSelectedEffectiveModifierFlags(m.declaration,24))}if(u)return[e.setTextRange(e.factory.createConstructorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(u),[],void 0),o[0].declaration)]}for(var g=[],_=0,h=o;_<h.length;_++){var y=h[_],v=f(y,a,r);g.push(e.setTextRange(v,y.declaration))}return g}function ue(e,t){for(var n=[],i=0,a=[0,1];i<a.length;i++){var o=a[i],s=bc(e,o);if(s){if(t){var c=bc(t,o);if(c&&np(s.type,c.type))continue}n.push(p(s,o,r,void 0))}}return n}function de(t,n,i){var a=pe(t,111551);if(a)return a;var o=me(i+"_base");return H(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(o,void 0,s(n,r))],2)),0),e.factory.createExpressionWithTypeArguments(e.factory.createIdentifier(o),void 0)}function pe(t,n){var i,a;if(t.target&&ea(t.target.symbol,l,n)?(i=e.map(ll(t),(function(e){return s(e,r)})),a=C(t.target.symbol,r,788968)):t.symbol&&ea(t.symbol,l,n)&&(a=C(t.symbol,r,788968)),a)return e.factory.createExpressionWithTypeArguments(a,i)}function fe(t){var n=pe(t,788968);return n||(t.symbol?e.factory.createExpressionWithTypeArguments(C(t.symbol,r,788968),void 0):void 0)}function me(e,t){var n,i,a=t?R(t):void 0;if(a&&r.remappedSymbolNames.has(a))return r.remappedSymbolNames.get(a);t&&(e=ge(t,e));for(var o=0,s=e;null===(n=r.usedSymbolNames)||void 0===n?void 0:n.has(e);)e=s+"_"+ ++o;return null===(i=r.usedSymbolNames)||void 0===i||i.add(e),a&&r.remappedSymbolNames.set(a,e),e}function ge(t,n){if("default"===n||"__class"===n||"__function"===n){var i=r.flags;r.flags|=16777216;var a=xa(t,r);r.flags=i,n=a.length>0&&e.isSingleOrDoubleQuote(a.charCodeAt(0))?e.stripQuotes(a):a}return"default"===n?n="_default":"export="===n&&(n="_exports"),n=e.isIdentifierText(n,V)&&!e.isStringANonContextualKeyword(n)?n:"_"+n.replace(/[^a-zA-Z0-9]/g,"_")}function _e(e,t){var n=R(e);return r.remappedSymbolNames.has(n)?r.remappedSymbolNames.get(n):(t=ge(e,t),r.remappedSymbolNames.set(n,t),t)}}(t,r,l)}))}};function r(r,n,i,a){var o,s;e.Debug.assert(void 0===r||!(8&r.flags));var c={enclosingDeclaration:r,flags:n||0,tracker:i&&i.trackSymbol?i:{trackSymbol:e.noop,moduleResolverHost:134217728&n?{getCommonSourceDirectory:t.getCommonSourceDirectory?function(){return t.getCommonSourceDirectory()}:function(){return""},getSourceFiles:function(){return t.getSourceFiles()},getCurrentDirectory:function(){return t.getCurrentDirectory()},getSymlinkCache:e.maybeBind(t,t.getSymlinkCache),useCaseSensitiveFileNames:e.maybeBind(t,t.useCaseSensitiveFileNames),redirectTargetsMap:t.redirectTargetsMap,getProjectReferenceRedirect:function(e){return t.getProjectReferenceRedirect(e)},isSourceOfProjectReferenceRedirect:function(e){return t.isSourceOfProjectReferenceRedirect(e)},fileExists:function(e){return t.fileExists(e)},getFileIncludeReasons:function(){return t.getFileIncludeReasons()}}:void 0},encounteredError:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0},l=a(c);return c.truncating&&1&c.flags&&(null===(s=null===(o=c.tracker)||void 0===o?void 0:o.reportTruncationError)||void 0===s||s.call(o)),c.encounteredError?void 0:l}function o(t){return t.truncating?t.truncating:t.truncating=t.approximateLength>(1&t.flags?e.noTruncationMaximumTruncationLength:e.defaultMaximumTruncationLength)}function s(t,r){n&&n.throwIfCancellationRequested&&n.throwIfCancellationRequested();var i=8388608&r.flags;if(r.flags&=-8388609,!t)return 262144&r.flags?(r.approximateLength+=3,e.factory.createKeywordTypeNode(129)):void(r.encounteredError=!0);if(536870912&r.flags||(t=uc(t)),1&t.flags)return r.approximateLength+=3,e.factory.createKeywordTypeNode(t===Ce?137:129);if(2&t.flags)return e.factory.createKeywordTypeNode(153);if(4&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(148);if(8&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(145);if(64&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(156);if(16&t.flags)return r.approximateLength+=7,e.factory.createKeywordTypeNode(132);if(1024&t.flags&&!(1048576&t.flags)){var a=Ni(t.symbol),c=w(a,r,788968);if(Jo(a)===t)return c;var g=e.symbolName(t.symbol);return e.isIdentifierText(g,0)?V(c,e.factory.createTypeReferenceNode(g,void 0)):e.isImportTypeNode(c)?(c.isTypeOf=!0,e.factory.createIndexedAccessTypeNode(c,e.factory.createLiteralTypeNode(e.factory.createStringLiteral(g)))):e.isTypeReferenceNode(c)?e.factory.createIndexedAccessTypeNode(e.factory.createTypeQueryNode(c.typeName),e.factory.createLiteralTypeNode(e.factory.createStringLiteral(g))):e.Debug.fail("Unhandled type node kind returned from `symbolToTypeNode`.")}if(1056&t.flags)return w(t.symbol,r,788968);if(128&t.flags)return r.approximateLength+=t.value.length+2,e.factory.createLiteralTypeNode(e.setEmitFlags(e.factory.createStringLiteral(t.value,!!(268435456&r.flags)),16777216));if(256&t.flags){var _=t.value;return r.approximateLength+=(""+_).length,e.factory.createLiteralTypeNode(_<0?e.factory.createPrefixUnaryExpression(40,e.factory.createNumericLiteral(-_)):e.factory.createNumericLiteral(_))}if(2048&t.flags)return r.approximateLength+=e.pseudoBigIntToString(t.value).length+1,e.factory.createLiteralTypeNode(e.factory.createBigIntLiteral(t.value));if(512&t.flags)return r.approximateLength+=t.intrinsicName.length,e.factory.createLiteralTypeNode("true"===t.intrinsicName?e.factory.createTrue():e.factory.createFalse());if(8192&t.flags){if(!(1048576&r.flags)){if(Zi(t.symbol,r.enclosingDeclaration))return r.approximateLength+=6,w(t.symbol,r,111551);r.tracker.reportInaccessibleUniqueSymbolError&&r.tracker.reportInaccessibleUniqueSymbolError()}return r.approximateLength+=13,e.factory.createTypeOperatorNode(152,e.factory.createKeywordTypeNode(149))}if(16384&t.flags)return r.approximateLength+=4,e.factory.createKeywordTypeNode(114);if(32768&t.flags)return r.approximateLength+=9,e.factory.createKeywordTypeNode(151);if(65536&t.flags)return r.approximateLength+=4,e.factory.createLiteralTypeNode(e.factory.createNull());if(131072&t.flags)return r.approximateLength+=5,e.factory.createKeywordTypeNode(142);if(4096&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(149);if(67108864&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(146);if(Lu(t))return 4194304&r.flags&&(r.encounteredError||32768&r.flags||(r.encounteredError=!0),r.tracker.reportInaccessibleThisError&&r.tracker.reportInaccessibleThisError()),r.approximateLength+=4,e.factory.createThisTypeNode();if(!i&&t.aliasSymbol&&(16384&r.flags||Qi(t.aliasSymbol,r.enclosingDeclaration))){var h=d(t.aliasTypeArguments,r);return!Vi(t.aliasSymbol.escapedName)||32&t.aliasSymbol.flags?w(t.aliasSymbol,r,788968,h):e.factory.createTypeReferenceNode(e.factory.createIdentifier(""),h)}var y=e.getObjectFlags(t);if(4&y)return e.Debug.assert(!!(524288&t.flags)),t.node?U(t,J):J(t);if(262144&t.flags||3&y){if(262144&t.flags&&e.contains(r.inferTypeParameters,t))return r.approximateLength+=e.symbolName(t.symbol).length+6,e.factory.createInferTypeNode(m(t,r,void 0));if(4&r.flags&&262144&t.flags&&!Qi(t.symbol,r.enclosingDeclaration)){var v=E(t,r);return r.approximateLength+=e.idText(v).length,e.factory.createTypeReferenceNode(e.factory.createIdentifier(e.idText(v)),void 0)}return t.symbol?w(t.symbol,r,788968):e.factory.createTypeReferenceNode(e.factory.createIdentifier("?"),void 0)}if(1048576&t.flags&&t.origin&&(t=t.origin),3145728&t.flags){var b=1048576&t.flags?function(e){for(var t=[],r=0,n=0;n<e.length;n++){var i=e[n];if(r|=i.flags,!(98304&i.flags)){if(1536&i.flags){var a=512&i.flags?qe:Bo(i);if(1048576&a.flags){var o=a.types.length;if(n+o<=e.length&&gd(e[n+o-1])===gd(a.types[o-1])){t.push(a),n+=o-1;continue}}}t.push(i)}}65536&r&&t.push(Fe);32768&r&&t.push(Ne);return t||e}(t.types):t.types;if(1===e.length(b))return s(b[0],r);var k=d(b,r,!0);return k&&k.length>0?1048576&t.flags?e.factory.createUnionTypeNode(k):e.factory.createIntersectionTypeNode(k):void(r.encounteredError||262144&r.flags||(r.encounteredError=!0))}if(48&y)return e.Debug.assert(!!(524288&t.flags)),z(t);if(4194304&t.flags){var x=t.type;r.approximateLength+=6;var S=s(x,r);return e.factory.createTypeOperatorNode(139,S)}if(134217728&t.flags){var D=t.texts,T=t.types,C=e.factory.createTemplateHead(D[0]),A=e.factory.createNodeArray(e.map(T,(function(t,n){return e.factory.createTemplateLiteralTypeSpan(s(t,r),(n<T.length-1?e.factory.createTemplateMiddle:e.factory.createTemplateTail)(D[n+1]))})));return r.approximateLength+=2,e.factory.createTemplateLiteralType(C,A)}if(268435456&t.flags){var N=s(t.type,r);return w(t.symbol,r,788968,[N])}if(8388608&t.flags){var P=s(t.objectType,r);S=s(t.indexType,r);return r.approximateLength+=2,e.factory.createIndexedAccessTypeNode(P,S)}if(16777216&t.flags){var I=s(t.checkType,r),F=r.inferTypeParameters;r.inferTypeParameters=t.root.inferTypeParameters;var M=s(t.extendsType,r);r.inferTypeParameters=F;var L=B(Xu(t)),j=B(Qu(t));return r.approximateLength+=15,e.factory.createConditionalTypeNode(I,M,L,j)}return 33554432&t.flags?s(t.baseType,r):e.Debug.fail("Should be unreachable.");function B(e){var t,n,i;return 1048576&e.flags?(null===(t=r.visitedTypes)||void 0===t?void 0:t.has(Zl(e)))?(131072&r.flags||(r.encounteredError=!0,null===(i=null===(n=r.tracker)||void 0===n?void 0:n.reportCyclicStructureError)||void 0===i||i.call(n)),l(r)):U(e,(function(e){return s(e,r)})):s(e,r)}function z(t){var n,i=t.id,a=t.symbol;if(a){var o=_a(t)?788968:111551;if(Fy(a.valueDeclaration))return w(a,r,o);if(32&a.flags&&!po(a)&&!(223===a.valueDeclaration.kind&&2048&r.flags)||896&a.flags||function(){var t,n=!!(8192&a.flags)&&e.some(a.declarations,(function(t){return e.hasSyntacticModifier(t,32)})),o=!!(16&a.flags)&&(a.parent||e.forEach(a.declarations,(function(e){return 300===e.parent.kind||260===e.parent.kind})));if(n||o)return(!!(4096&r.flags)||(null===(t=r.visitedTypes)||void 0===t?void 0:t.has(i)))&&(!(8&r.flags)||Zi(a,r.enclosingDeclaration))}())return w(a,r,o);if(null===(n=r.visitedTypes)||void 0===n?void 0:n.has(i)){var s=function(t){if(t.symbol&&2048&t.symbol.flags){var r=e.walkUpParenthesizedTypes(t.symbol.declarations[0].parent);if(257===r.kind)return Ai(r)}return}(t);return s?w(s,r,788968):l(r)}return U(t,q)}return q(t)}function U(t,n){var i,a=t.id,o=16&e.getObjectFlags(t)&&t.symbol&&32&t.symbol.flags,s=4&e.getObjectFlags(t)&&t.node?"N"+O(t.node):t.symbol?(o?"+":"")+R(t.symbol):void 0;if(r.visitedTypes||(r.visitedTypes=new e.Set),s&&!r.symbolDepth&&(r.symbolDepth=new e.Map),s){if((i=r.symbolDepth.get(s)||0)>10)return l(r);r.symbolDepth.set(s,i+1)}r.visitedTypes.add(a);var c=n(t);return r.visitedTypes.delete(a),s&&r.symbolDepth.set(s,i),c}function q(t){if(zs(t)||t.containsError)return function(t){e.Debug.assert(!!(524288&t.flags));var n,i=t.declaration.readonlyToken?e.factory.createToken(t.declaration.readonlyToken.kind):void 0,a=t.declaration.questionToken?e.factory.createToken(t.declaration.questionToken.kind):void 0;n=Rs(t)?e.factory.createTypeOperatorNode(139,s(Ms(t),r)):s(Ps(t),r);var o=m(Ns(t),r,n),c=t.declaration.nameType?s(Is(t),r):void 0,l=s(Fs(t),r),u=e.factory.createMappedTypeNode(i,o,c,a,l);return r.approximateLength+=10,e.setEmitFlags(u,1)}(t);var n=Us(t);if(!n.properties.length&&!n.stringIndexInfo&&!n.numberIndexInfo){if(!n.callSignatures.length&&!n.constructSignatures.length)return r.approximateLength+=2,e.setEmitFlags(e.factory.createTypeLiteralNode(void 0),1);if(1===n.callSignatures.length&&!n.constructSignatures.length)return f(n.callSignatures[0],175,r);if(1===n.constructSignatures.length&&!n.callSignatures.length)return f(n.constructSignatures[0],176,r)}var i=e.filter(n.constructSignatures,(function(e){return!!(4&e.flags)}));if(e.some(i)){var a=e.map(i,$c);return n.callSignatures.length+(n.constructSignatures.length-i.length)+(n.stringIndexInfo?1:0)+(n.numberIndexInfo?1:0)+(2048&r.flags?e.countWhere(n.properties,(function(e){return!(4194304&e.flags)})):e.length(n.properties))&&a.push(function(t){if(0===t.constructSignatures.length)return t;if(t.objectTypeWithoutAbstractConstructSignatures)return t.objectTypeWithoutAbstractConstructSignatures;var r=e.filter(t.constructSignatures,(function(e){return!(4&e.flags)}));if(t.constructSignatures===r)return t;var n=Wi(t.symbol,t.members,t.callSignatures,e.some(r)?r:e.emptyArray,t.stringIndexInfo,t.numberIndexInfo);return t.objectTypeWithoutAbstractConstructSignatures=n,n.objectTypeWithoutAbstractConstructSignatures=n,n}(n)),s(fu(a),r)}var c=r.flags;r.flags|=4194304;var d=function(t){if(o(r))return[e.factory.createPropertySignature(void 0,"...",void 0,void 0)];for(var n=[],i=0,a=t.callSignatures;i<a.length;i++){var s=a[i];n.push(f(s,170,r))}for(var c=0,d=t.constructSignatures;c<d.length;c++){4&(s=d[c]).flags||n.push(f(s,171,r))}if(t.stringIndexInfo){var m=void 0;m=2048&t.objectFlags?p(Qc(Se,t.stringIndexInfo.isReadonly,t.stringIndexInfo.declaration),0,r,l(r)):p(t.stringIndexInfo,0,r,void 0),n.push(m)}t.numberIndexInfo&&n.push(p(t.numberIndexInfo,1,r,void 0));var g=t.properties;if(!g)return n;for(var _=0,h=0,y=g;h<y.length;h++){var v=y[h];if(_++,2048&r.flags){if(4194304&v.flags)continue;24&e.getDeclarationModifierFlagsFromSymbol(v)&&r.tracker.reportPrivateInBaseOfClassExpression&&r.tracker.reportPrivateInBaseOfClassExpression(e.unescapeLeadingUnderscores(v.escapedName))}if(o(r)&&_+2<g.length-1){n.push(e.factory.createPropertySignature(void 0,"... "+(g.length-_)+" more ...",void 0,void 0)),u(g[g.length-1],r,n);break}u(v,r,n)}return n.length?n:void 0}(n);r.flags=c;var g=e.factory.createTypeLiteralNode(d);return r.approximateLength+=2,e.setEmitFlags(g,1024&r.flags?0:1),g}function J(t){var n=ll(t);if(t.target===xt||t.target===St){if(2&r.flags){var i=s(n[0],r);return e.factory.createTypeReferenceNode(t.target===xt?"Array":"ReadonlyArray",[i])}var a=s(n[0],r),o=e.factory.createArrayTypeNode(a);return t.target===xt?o:e.factory.createTypeOperatorNode(143,o)}if(!(8&t.target.objectFlags)){if(2048&r.flags&&t.symbol.valueDeclaration&&e.isClassLike(t.symbol.valueDeclaration)&&!Zi(t.symbol,r.enclosingDeclaration))return z(t);var c=t.target.outerTypeParameters,l=(x=0,void 0);if(c)for(var u=c.length;x<u;){var p=x,f=rl(c[x]);do{x++}while(x<u&&rl(c[x])===f);if(!e.rangeEquals(c,n,p,x)){var m=d(n.slice(p,x),r),g=r.flags;r.flags|=16;var _=w(f,r,788968,m);r.flags=g,l=l?V(l,_):_}}var h=void 0;if(n.length>0){var y=(t.target.typeParameters||e.emptyArray).length;h=d(n.slice(x,y),r)}S=r.flags;r.flags|=16;var v=w(t.symbol,r,788968,h);return r.flags=S,l?V(l,v):v}if(n.length>0){var b=ul(t),k=d(n.slice(0,b),r);if(k){if(t.target.labeledElementDeclarations)for(var x=0;x<k.length;x++){var S=t.target.elementFlags[x];k[x]=e.factory.createNamedTupleMember(12&S?e.factory.createToken(25):void 0,e.factory.createIdentifier(e.unescapeLeadingUnderscores(Zy(t.target.labeledElementDeclarations[x]))),2&S?e.factory.createToken(57):void 0,4&S?e.factory.createArrayTypeNode(k[x]):k[x])}else for(var x=0;x<Math.min(b,k.length);x++){var S=t.target.elementFlags[x];k[x]=12&S?e.factory.createRestTypeNode(4&S?e.factory.createArrayTypeNode(k[x]):k[x]):2&S?e.factory.createOptionalTypeNode(k[x]):k[x]}var D=e.setEmitFlags(e.factory.createTupleTypeNode(k),1);return t.target.readonly?e.factory.createTypeOperatorNode(143,D):D}}if(r.encounteredError||524288&r.flags){D=e.setEmitFlags(e.factory.createTupleTypeNode([]),1);return t.target.readonly?e.factory.createTypeOperatorNode(143,D):D}r.encounteredError=!0}function V(t,r){if(e.isImportTypeNode(t)){var n=t.typeArguments,i=t.qualifier;i&&(i=e.isIdentifier(i)?e.factory.updateIdentifier(i,n):e.factory.updateQualifiedName(i,i.left,e.factory.updateIdentifier(i.right,n))),n=r.typeArguments;for(var a=0,o=H(r);a<o.length;a++){var s=o[a];i=i?e.factory.createQualifiedName(i,s):s}return e.factory.updateImportTypeNode(t,t.argument,i,n,t.isTypeOf)}n=t.typeArguments;var c=t.typeName;c=e.isIdentifier(c)?e.factory.updateIdentifier(c,n):e.factory.updateQualifiedName(c,c.left,e.factory.updateIdentifier(c.right,n)),n=r.typeArguments;for(var l=0,u=H(r);l<u.length;l++){s=u[l];c=e.factory.createQualifiedName(c,s)}return e.factory.updateTypeReferenceNode(t,c,n)}function H(t){for(var r=t.typeName,n=[];!e.isIdentifier(r);)n.unshift(r.right),r=r.left;return n.unshift(r),n}}function l(t){return t.approximateLength+=3,1&t.flags?e.factory.createKeywordTypeNode(129):e.factory.createTypeReferenceNode(e.factory.createIdentifier("..."),void 0)}function u(t,r,n){var i=!!(8192&e.getCheckFlags(t)),a=i&&33554432&r.flags?Se:_o(t),o=r.enclosingDeclaration;if(r.enclosingDeclaration=void 0,r.tracker.trackSymbol&&4096&e.getCheckFlags(t)&&ts(t.escapedName)){var s=e.first(t.declarations);if(rs(s))if(e.isBinaryExpression(s)){var c=e.getNameOfDeclaration(s);c&&e.isElementAccessExpression(c)&&e.isPropertyAccessEntityNameExpression(c.argumentExpression)&&h(c.argumentExpression,o,r)}else h(s.name.expression,o,r)}r.enclosingDeclaration=o;var u=P(t,r);r.approximateLength+=e.symbolName(t).length+1;var d=16777216&t.flags?e.factory.createToken(57):void 0;if(8208&t.flags&&!qs(a).length&&!Nv(t))for(var p=0,m=hc(ug(a,(function(e){return!(32768&e.flags)})),0);p<m.length;p++){var g=f(m[p],165,r,{name:u,questionToken:d});n.push(k(g))}else{var _=r.flags;r.flags|=i?33554432:0;var y=void 0;y=i&&33554432&_?l(r):a?L(r,a,t,o):e.factory.createKeywordTypeNode(129),r.flags=_;var v=Nv(t)?[e.factory.createToken(143)]:void 0;v&&(r.approximateLength+=9);var b=e.factory.createPropertySignature(v,u,d,y);n.push(k(b))}function k(r){if(e.some(t.declarations,(function(e){return 336===e.kind}))){var n=e.find(t.declarations,(function(e){return 336===e.kind})).comment;n&&e.setSyntheticLeadingComments(r,[{kind:3,text:"*\n * "+n.replace(/\n/g,"\n * ")+"\n ",pos:-1,end:-1,hasTrailingNewLine:!0}])}else t.valueDeclaration&&e.setCommentRange(r,t.valueDeclaration);return r}}function d(t,r,n){if(e.some(t)){if(o(r)){if(!n)return[e.factory.createTypeReferenceNode("...",void 0)];if(t.length>2)return[s(t[0],r),e.factory.createTypeReferenceNode("... "+(t.length-2)+" more ...",void 0),s(t[t.length-1],r)]}for(var i=!(64&r.flags)?e.createUnderscoreEscapedMultiMap():void 0,a=[],c=0,l=0,u=t;l<u.length;l++){var d=u[l];if(c++,o(r)&&c+2<t.length-1){a.push(e.factory.createTypeReferenceNode("... "+(t.length-c)+" more ...",void 0));var p=s(t[t.length-1],r);p&&a.push(p);break}r.approximateLength+=2;var f=s(d,r);f&&(a.push(f),i&&e.isIdentifierTypeReference(f)&&i.add(f.typeName.escapedText,[d,a.length-1]))}if(i){var m=r.flags;r.flags|=64,i.forEach((function(t){if(!e.arrayIsHomogeneous(t,(function(e,t){return function(e,t){return e===t||!!e.symbol&&e.symbol===t.symbol||!!e.aliasSymbol&&e.aliasSymbol===t.aliasSymbol}(e[0],t[0])})))for(var n=0,i=t;n<i.length;n++){var o=i[n],c=o[0],l=o[1];a[l]=s(c,r)}})),r.flags=m}return a}}function p(t,r,n,i){var a=e.getNameFromIndexInfo(t)||"x",o=e.factory.createKeywordTypeNode(0===r?148:145),c=e.factory.createParameterDeclaration(void 0,void 0,void 0,a,void 0,o,void 0);return i||(i=s(t.type||Se,n)),t.type||2097152&n.flags||(n.encounteredError=!0),n.approximateLength+=a.length+4,e.factory.createIndexSignature(void 0,t.isReadonly?[e.factory.createToken(143)]:void 0,[c],i)}function f(t,r,n,i){var a,o,c,l,u,d,p=256&n.flags;p&&(n.flags&=-257),32&n.flags&&t.target&&t.mapper&&t.target.typeParameters?d=t.target.typeParameters.map((function(e){return s(Wd(e,t.mapper),n)})):u=t.typeParameters&&t.typeParameters.map((function(e){return g(e,n)}));var f,m=gs(t,!0)[0],h=(e.some(m,(function(t){return t!==m[m.length-1]&&!!(32768&e.getCheckFlags(t))}))?t.parameters:m).map((function(e){return _(e,n,167===r,null==i?void 0:i.privateSymbolVisitor,null==i?void 0:i.bundledImports)}));if(t.thisParameter){var y=_(t.thisParameter,n);h.unshift(y)}var v=jc(t);if(v){var b=2===v.kind||3===v.kind?e.factory.createToken(128):void 0,k=1===v.kind||3===v.kind?e.setEmitFlags(e.factory.createIdentifier(v.parameterName),16777216):e.factory.createThisTypeNode(),x=v.type&&s(v.type,n);f=e.factory.createTypePredicateNode(b,k,x)}else{var S=Bc(t);!S||p&&Pa(S)?p||(f=e.factory.createKeywordTypeNode(129)):f=function(t,r,n,i,a){if(r!==Ee&&t.enclosingDeclaration){var o=n.declaration&&e.getEffectiveReturnTypeNode(n.declaration);if(e.findAncestor(o,(function(e){return e===t.enclosingDeclaration}))&&o&&Wd(xd(o),n.mapper)===r&&M(o,r)){var c=B(t,o,i,a);if(c)return c}}return s(r,t)}(n,S,t,null==i?void 0:i.privateSymbolVisitor,null==i?void 0:i.bundledImports)}var w=null==i?void 0:i.modifiers;if(176===r&&4&t.flags){var D=e.modifiersToFlags(w);w=e.factory.createModifiersFromModifierFlags(128|D)}n.approximateLength+=3;var E=170===r?e.factory.createCallSignature(u,h,f):171===r?e.factory.createConstructSignature(u,h,f):165===r?e.factory.createMethodSignature(w,null!==(a=null==i?void 0:i.name)&&void 0!==a?a:e.factory.createIdentifier(""),null==i?void 0:i.questionToken,u,h,f):166===r?e.factory.createMethodDeclaration(void 0,w,void 0,null!==(o=null==i?void 0:i.name)&&void 0!==o?o:e.factory.createIdentifier(""),void 0,u,h,f,void 0):167===r?e.factory.createConstructorDeclaration(void 0,w,h,void 0):168===r?e.factory.createGetAccessorDeclaration(void 0,w,null!==(c=null==i?void 0:i.name)&&void 0!==c?c:e.factory.createIdentifier(""),h,f,void 0):169===r?e.factory.createSetAccessorDeclaration(void 0,w,null!==(l=null==i?void 0:i.name)&&void 0!==l?l:e.factory.createIdentifier(""),h,void 0):172===r?e.factory.createIndexSignature(void 0,w,h,f):311===r?e.factory.createJSDocFunctionType(h,f):175===r?e.factory.createFunctionTypeNode(u,h,null!=f?f:e.factory.createTypeReferenceNode(e.factory.createIdentifier(""))):176===r?e.factory.createConstructorTypeNode(w,u,h,null!=f?f:e.factory.createTypeReferenceNode(e.factory.createIdentifier(""))):253===r?e.factory.createFunctionDeclaration(void 0,w,void 0,(null==i?void 0:i.name)?e.cast(i.name,e.isIdentifier):e.factory.createIdentifier(""),u,h,f,void 0):209===r?e.factory.createFunctionExpression(w,void 0,(null==i?void 0:i.name)?e.cast(i.name,e.isIdentifier):e.factory.createIdentifier(""),u,h,f,e.factory.createBlock([])):210===r?e.factory.createArrowFunction(w,u,h,f,void 0,e.factory.createBlock([])):e.Debug.assertNever(r);return d&&(E.typeArguments=e.factory.createNodeArray(d)),E}function m(t,r,n){var i=r.flags;r.flags&=-513;var a=E(t,r),o=nc(t),c=o&&s(o,r);return r.flags=i,e.factory.createTypeParameterDeclaration(a,n,c)}function g(e,t,r){return void 0===r&&(r=Ws(e)),m(e,t,r&&s(r,t))}function _(t,r,n,i,a){var o=e.getDeclarationOfKind(t,161);o||e.isTransientSymbol(t)||(o=e.getDeclarationOfKind(t,329));var s,c=_o(t);o&&hS(o)&&(c=Nf(c)),1073741824&r.flags&&o&&!e.isJSDocParameterTag(o)&&(s=o,W&&Tc(s)&&!s.initializer)&&(c=Hm(c,524288));var l=L(r,c,t,r.enclosingDeclaration,i,a),u=!(8192&r.flags)&&n&&o&&o.modifiers?o.modifiers.map(e.factory.cloneNode):void 0,d=o&&e.isRestParameter(o)||32768&e.getCheckFlags(t)?e.factory.createToken(25):void 0,p=o&&o.name?78===o.name.kind?e.setEmitFlags(e.factory.cloneNode(o.name),16777216):158===o.name.kind?e.setEmitFlags(e.factory.cloneNode(o.name.right),16777216):function t(n){r.tracker.trackSymbol&&e.isComputedPropertyName(n)&&es(n)&&h(n.expression,r.enclosingDeclaration,r);var i=e.visitEachChild(n,t,e.nullTransformationContext,void 0,t);return e.isBindingElement(i)&&(i=e.factory.updateBindingElement(i,i.dotDotDotToken,i.propertyName,i.name,void 0)),e.nodeIsSynthesized(i)||(i=e.factory.cloneNode(i)),e.setEmitFlags(i,16777217)}(o.name):e.symbolName(t),f=o&&Tc(o)||16384&e.getCheckFlags(t)?e.factory.createToken(57):void 0,m=e.factory.createParameterDeclaration(void 0,u,d,p,f,l,void 0);return r.approximateLength+=e.symbolName(t).length+3,m}function h(t,r,n){if(n.tracker.trackSymbol){var i=e.getFirstIdentifier(t),a=Fn(i,i.escapedText,1160127,void 0,void 0,!0);a&&n.tracker.trackSymbol(a,r,111551)}}function y(e,t,r,n){return t.tracker.trackSymbol(e,t.enclosingDeclaration,r),v(e,t,r,n)}function v(t,r,n,i){var a;return 262144&t.flags||!(r.enclosingDeclaration||64&r.flags)||134217728&r.flags?a=[t]:(a=e.Debug.checkDefined(function t(n,a,o){var s,c=Yi(n,r.enclosingDeclaration,a,!!(128&r.flags));if(!c||Xi(c[0],r.enclosingDeclaration,1===c.length?a:$i(a))){var l=Pi(c?c[0]:n,r.enclosingDeclaration,a);if(e.length(l)){s=l.map((function(t){return e.some(t.declarations,oa)?S(t,r):void 0}));var u=l.map((function(e,t){return t}));u.sort(g);for(var d=0,p=u.map((function(e){return l[e]}));d<p.length;d++){var f=p[d],m=t(f,$i(a),!1);if(m){if(f.exports&&f.exports.get("export=")&&Oi(f.exports.get("export="),n)){c=m;break}c=m.concat(c||[Fi(f,n)||n]);break}}}}if(c)return c;if(o||!(6144&n.flags)){if(!o&&!i&&e.forEach(n.declarations,oa))return;return[n]}function g(t,r){var n=s[t],i=s[r];if(n&&i){var a=e.pathIsRelative(i);return e.pathIsRelative(n)===a?e.moduleSpecifiers.countPathComponents(n)-e.moduleSpecifiers.countPathComponents(i):a?-1:1}return 0}}(t,n,!0)),e.Debug.assert(a&&a.length>0)),a}function b(t,r){var n;return 524384&gx(t).flags&&(n=e.factory.createNodeArray(e.map(So(t),(function(e){return g(e,r)})))),n}function k(t,r,n){var i;e.Debug.assert(t&&0<=r&&r<t.length);var a=t[r],o=R(a);if(!(null===(i=n.typeParameterSymbolList)||void 0===i?void 0:i.has(o))){var s;if((n.typeParameterSymbolList||(n.typeParameterSymbolList=new e.Set)).add(o),512&n.flags&&r<t.length-1){var c=a,l=t[r+1];if(1&e.getCheckFlags(l)){var u=function(t){return e.concatenate(xo(t),So(t))}(2097152&c.flags?ai(c):c);s=d(e.map(u,(function(e){return Cd(e,l.mapper)})),n)}else s=b(a,n)}return s}}function x(t){return e.isIndexedAccessTypeNode(t.objectType)?x(t.objectType):t}function S(t,r){var n,i=e.getDeclarationOfKind(t,300);if(!i){var o=e.firstDefined(t.declarations,(function(e){return Ii(e,t)}));o&&(i=e.getDeclarationOfKind(o,300))}if(i&&void 0!==i.moduleName)return i.moduleName;if(!i){if(r.tracker.trackReferencedAmbientModule){var s=e.filter(t.declarations,e.isAmbientModule);if(e.length(s))for(var l=0,u=s;l<u.length;l++){var d=u[l];r.tracker.trackReferencedAmbientModule(d,t)}}if(c.test(t.escapedName))return t.escapedName.substring(1,t.escapedName.length-1)}if(!r.enclosingDeclaration||!r.tracker.moduleResolverHost)return c.test(t.escapedName)?t.escapedName.substring(1,t.escapedName.length-1):e.getSourceFileOfNode(e.getNonAugmentationDeclaration(t)).fileName;var p=e.getSourceFileOfNode(e.getOriginalNode(r.enclosingDeclaration)),f=Tn(t),m=f.specifierCache&&f.specifierCache.get(p.path);if(!m){var g=!!e.outFile(J),_=r.tracker.moduleResolverHost,h=g?a(a({},J),{baseUrl:_.getCommonSourceDirectory()}):J;m=e.first(e.moduleSpecifiers.getModuleSpecifiers(t,le,h,p,_,{importModuleSpecifierPreference:g?"non-relative":"relative",importModuleSpecifierEnding:g?"minimal":void 0})),null!==(n=f.specifierCache)&&void 0!==n||(f.specifierCache=new e.Map),f.specifierCache.set(p.path,m)}return m}function w(t,r,n,i){var a=y(t,r,n,!(16384&r.flags)),o=111551===n;if(e.some(a[0].declarations,oa)){var s=a.length>1?_(a,a.length-1,1):void 0,c=i||k(a,0,r),l=S(a[0],r);67108864&r.flags||e.getEmitModuleResolutionKind(J)!==e.ModuleResolutionKind.NodeJs||!(l.indexOf("/node_modules/")>=0||e.isOhpm(J.packageManagerType)&&l.indexOf("/oh_modules/")>=0)||(r.encounteredError=!0,r.tracker.reportLikelyUnsafeImportRequiredError&&r.tracker.reportLikelyUnsafeImportRequiredError(l));var u=e.factory.createLiteralTypeNode(e.factory.createStringLiteral(l));if(r.tracker.trackExternalModuleSymbolOfImportTypeNode&&r.tracker.trackExternalModuleSymbolOfImportTypeNode(a[0]),r.approximateLength+=l.length+10,!s||e.isEntityName(s)){if(s)(m=e.isIdentifier(s)?s:s.right).typeArguments=void 0;return e.factory.createImportTypeNode(u,s,c,o)}var d=x(s),p=d.objectType.typeName;return e.factory.createIndexedAccessTypeNode(e.factory.createImportTypeNode(u,p,c,o),d.indexType)}var f=_(a,a.length-1,0);if(e.isIndexedAccessTypeNode(f))return f;if(o)return e.factory.createTypeQueryNode(f);var m,g=(m=e.isIdentifier(f)?f:f.right).typeArguments;return m.typeArguments=void 0,e.factory.createTypeReferenceNode(f,g);function _(t,n,a){var o,s=n===t.length-1?i:k(t,n,r),c=t[n],l=t[n-1];if(0===n)r.flags|=16777216,o=xa(c,r),r.approximateLength+=(o?o.length:0)+1,r.flags^=16777216;else if(l&&wi(l)){var u=wi(l);e.forEachEntry(u,(function(t,r){if(Oi(t,c)&&!ts(r)&&"export="!==r)return o=e.unescapeLeadingUnderscores(r),!0}))}if(o||(o=xa(c,r)),r.approximateLength+=o.length+1,!(16&r.flags)&&l&&ss(l)&&ss(l).get(c.escapedName)&&Oi(ss(l).get(c.escapedName),c)){var d=_(t,n-1,a);return e.isIndexedAccessTypeNode(d)?e.factory.createIndexedAccessTypeNode(d,e.factory.createLiteralTypeNode(e.factory.createStringLiteral(o))):e.factory.createIndexedAccessTypeNode(e.factory.createTypeReferenceNode(d,s),e.factory.createLiteralTypeNode(e.factory.createStringLiteral(o)))}var p=e.setEmitFlags(e.factory.createIdentifier(o,s),16777216);if(p.symbol=c,n>a){d=_(t,n-1,a);return e.isEntityName(d)?e.factory.createQualifiedName(d,p):e.Debug.fail("Impossible construct - an export of an indexed access cannot be reachable")}return p}}function D(e,t,r){var n=Fn(t.enclosingDeclaration,e,788968,void 0,e,!1);return!!n&&!(262144&n.flags&&n===r.symbol)}function E(t,r){var n;if(4&r.flags&&r.typeParameterNames){var i=r.typeParameterNames.get(Zl(t));if(i)return i}var a=T(t.symbol,r,788968,!0);if(!(78&a.kind))return e.factory.createIdentifier("(Missing type parameter)");if(4&r.flags){for(var o=a.escapedText,s=0,c=o;(null===(n=r.typeParameterNamesByText)||void 0===n?void 0:n.has(c))||D(c,r,t);)c=o+"_"+ ++s;c!==o&&(a=e.factory.createIdentifier(c,a.typeArguments)),(r.typeParameterNames||(r.typeParameterNames=new e.Map)).set(Zl(t),a),(r.typeParameterNamesByText||(r.typeParameterNamesByText=new e.Set)).add(a.escapedText)}return a}function T(t,r,n,i){var a=y(t,r,n);return!i||1===a.length||r.encounteredError||65536&r.flags||(r.encounteredError=!0),function t(n,i){var a=k(n,i,r),o=n[i];0===i&&(r.flags|=16777216);var s=xa(o,r);0===i&&(r.flags^=16777216);var c=e.setEmitFlags(e.factory.createIdentifier(s,a),16777216);return c.symbol=o,i>0?e.factory.createQualifiedName(t(n,i-1),c):c}(a,a.length-1)}function C(t,r,n){var i=y(t,r,n);return function t(n,i){var a=k(n,i,r),o=n[i];0===i&&(r.flags|=16777216);var s=xa(o,r);0===i&&(r.flags^=16777216);var c=s.charCodeAt(0);if(e.isSingleOrDoubleQuote(c)&&e.some(o.declarations,oa))return e.factory.createStringLiteral(S(o,r));var l=35===c?s.length>1&&e.isIdentifierStart(s.charCodeAt(1),V):e.isIdentifierStart(c,V);if(0===i||l){var u=e.setEmitFlags(e.factory.createIdentifier(s,a),16777216);return u.symbol=o,i>0?e.factory.createPropertyAccessExpression(t(n,i-1),u):u}91===c&&(c=(s=s.substring(1,s.length-1)).charCodeAt(0));var d=void 0;return e.isSingleOrDoubleQuote(c)?d=e.factory.createStringLiteral(s.substring(1,s.length-1).replace(/\\./g,(function(e){return e.substring(1)})),39===c):""+ +s===s&&(d=e.factory.createNumericLiteral(+s)),d||((d=e.setEmitFlags(e.factory.createIdentifier(s,a),16777216)).symbol=o),e.factory.createElementAccessExpression(t(n,i-1),d)}(i,i.length-1)}function A(t){var r=e.getNameOfDeclaration(t);return!!r&&e.isStringLiteral(r)}function N(t){var r=e.getNameOfDeclaration(t);return!!(r&&e.isStringLiteral(r)&&(r.singleQuote||!e.nodeIsSynthesized(r)&&e.startsWith(e.getTextOfNode(r,!1),"'")))}function P(t,r){var n=!!e.length(t.declarations)&&e.every(t.declarations,N),i=function(t,r,n){var i=Tn(t).nameType;if(i){if(384&i.flags){var a=""+i.value;return e.isIdentifierText(a,J.target)||R_(a)?R_(a)&&e.startsWith(a,"-")?e.factory.createComputedPropertyName(e.factory.createNumericLiteral(+a)):I(a):e.factory.createStringLiteral(a,!!n)}if(8192&i.flags)return e.factory.createComputedPropertyName(C(i.symbol,r,111551))}}(t,r,n);return i||(e.isKnownSymbol(t)?e.factory.createComputedPropertyName(e.factory.createPropertyAccessExpression(e.factory.createIdentifier("Symbol"),t.escapedName.substr(3))):I(e.unescapeLeadingUnderscores(t.escapedName),!!e.length(t.declarations)&&e.every(t.declarations,A),n))}function I(t,r,n){return e.isIdentifierText(t,J.target)?e.factory.createIdentifier(t):!r&&R_(t)&&+t>=0?e.factory.createNumericLiteral(+t):e.factory.createStringLiteral(t,!!n)}function F(t,r){return t.declarations&&e.find(t.declarations,(function(t){return!(!e.getEffectiveTypeAnnotationNode(t)||r&&!e.findAncestor(t,(function(e){return e===r})))}))}function M(t,r){return!(4&e.getObjectFlags(r))||!e.isTypeReferenceNode(t)||e.length(t.typeArguments)>=Nc(r.target.typeParameters)}function L(t,r,n,i,a,o){if(r!==Ee&&i){var c=F(n,i);if(c&&!e.isFunctionLikeDeclaration(c)){var l=e.getEffectiveTypeAnnotationNode(c);if(xd(l)===r&&M(l,r)){var u=B(t,l,a,o);if(u)return u}}}var d=t.flags;8192&r.flags&&r.symbol===n&&(!t.enclosingDeclaration||e.some(n.declarations,(function(r){return e.getSourceFileOfNode(r)===e.getSourceFileOfNode(t.enclosingDeclaration)})))&&(t.flags|=1048576);var p=s(r,t);return t.flags=d,p}function j(t,r,n){var i,a,o=!1,s=e.getFirstIdentifier(t);if(e.isInJSFile(t)&&(e.isExportsIdentifier(s)||e.isModuleExportsAccessExpression(s.parent)||e.isQualifiedName(s.parent)&&e.isModuleIdentifier(s.parent.left)&&e.isExportsIdentifier(s.parent.right)))return{introducesError:o=!0,node:t};var c=fi(s,67108863,!0,!0);if(c&&(0!==ra(c,r.enclosingDeclaration,67108863,!1).accessibility?o=!0:(null===(a=null===(i=r.tracker)||void 0===i?void 0:i.trackSymbol)||void 0===a||a.call(i,c,r.enclosingDeclaration,67108863),null==n||n(c)),e.isIdentifier(t))){var l=262144&c.flags?E(Jo(c),r):e.factory.cloneNode(t);return l.symbol=c,{introducesError:o,node:e.setEmitFlags(e.setOriginalNode(l,t),16777216)}}return{introducesError:o,node:t}}function B(r,i,a,o){n&&n.throwIfCancellationRequested&&n.throwIfCancellationRequested();var c=!1,l=e.getSourceFileOfNode(i),u=e.visitNode(i,(function n(i){if(e.isJSDocAllType(i)||313===i.kind)return e.factory.createKeywordTypeNode(129);if(e.isJSDocUnknownType(i))return e.factory.createKeywordTypeNode(153);if(e.isJSDocNullableType(i))return e.factory.createUnionTypeNode([e.visitNode(i.type,n),e.factory.createLiteralTypeNode(e.factory.createNull())]);if(e.isJSDocOptionalType(i))return e.factory.createUnionTypeNode([e.visitNode(i.type,n),e.factory.createKeywordTypeNode(151)]);if(e.isJSDocNonNullableType(i))return e.visitNode(i.type,n);if(e.isJSDocVariadicType(i))return e.factory.createArrayTypeNode(e.visitNode(i.type,n));if(e.isJSDocTypeLiteral(i))return e.factory.createTypeLiteralNode(e.map(i.jsDocPropertyTags,(function(t){var a=e.isIdentifier(t.name)?t.name:t.name.right,o=Na(xd(i),a.escapedText),c=o&&t.typeExpression&&xd(t.typeExpression.type)!==o?s(o,r):void 0;return e.factory.createPropertySignature(void 0,a,t.isBracketed||t.typeExpression&&e.isJSDocOptionalType(t.typeExpression.type)?e.factory.createToken(57):void 0,c||t.typeExpression&&e.visitNode(t.typeExpression.type,n)||e.factory.createKeywordTypeNode(129))})));if(e.isTypeReferenceNode(i)&&e.isIdentifier(i.typeName)&&""===i.typeName.escapedText)return e.setOriginalNode(e.factory.createKeywordTypeNode(129),i);if((e.isExpressionWithTypeArguments(i)||e.isTypeReferenceNode(i))&&e.isJSDocIndexSignature(i))return e.factory.createTypeLiteralNode([e.factory.createIndexSignature(void 0,void 0,[e.factory.createParameterDeclaration(void 0,void 0,void 0,"x",void 0,e.visitNode(i.typeArguments[0],n))],e.visitNode(i.typeArguments[1],n))]);if(e.isJSDocFunctionType(i)){var u;return e.isJSDocConstructSignature(i)?e.factory.createConstructorTypeNode(i.modifiers,e.visitNodes(i.typeParameters,n),e.mapDefined(i.parameters,(function(t,r){return t.name&&e.isIdentifier(t.name)&&"new"===t.name.escapedText?void(u=t.type):e.factory.createParameterDeclaration(void 0,void 0,g(t),_(t,r),t.questionToken,e.visitNode(t.type,n),void 0)})),e.visitNode(u||i.type,n)||e.factory.createKeywordTypeNode(129)):e.factory.createFunctionTypeNode(e.visitNodes(i.typeParameters,n),e.map(i.parameters,(function(t,r){return e.factory.createParameterDeclaration(void 0,void 0,g(t),_(t,r),t.questionToken,e.visitNode(t.type,n),void 0)})),e.visitNode(i.type,n)||e.factory.createKeywordTypeNode(129))}if(e.isTypeReferenceNode(i)&&e.isInJSDoc(i)&&(!M(i,xd(i))||xl(i)||ke===ml(fl(i),788968,!0)))return e.setOriginalNode(s(xd(i),r),i);if(e.isLiteralImportTypeNode(i)){var d=Cn(i).resolvedSymbol;return!e.isInJSDoc(i)||!d||(i.isTypeOf||788968&d.flags)&&e.length(i.typeArguments)>=Nc(So(d))?e.factory.updateImportTypeNode(i,e.factory.updateLiteralTypeNode(i.argument,function(n,i){if(o){if(r.tracker&&r.tracker.moduleResolverHost){var a=LS(n);if(a){var s={getCanonicalFileName:e.createGetCanonicalFileName(!!t.useCaseSensitiveFileNames),getCurrentDirectory:function(){return r.tracker.moduleResolverHost.getCurrentDirectory()},getCommonSourceDirectory:function(){return r.tracker.moduleResolverHost.getCommonSourceDirectory()}},c=e.getResolvedExternalModuleName(s,a);return e.factory.createStringLiteral(c)}}}else if(r.tracker&&r.tracker.trackExternalModuleSymbolOfImportTypeNode){var l=_i(i,i,void 0);l&&r.tracker.trackExternalModuleSymbolOfImportTypeNode(l)}return i}(i,i.argument.literal)),i.qualifier,e.visitNodes(i.typeArguments,n,e.isTypeNode),i.isTypeOf):e.setOriginalNode(s(xd(i),r),i)}if(e.isEntityName(i)||e.isEntityNameExpression(i)){var p=j(i,r,a),f=p.introducesError,m=p.node;if(c=c||f,m!==i)return m}l&&e.isTupleTypeNode(i)&&e.getLineAndCharacterOfPosition(l,i.pos).line===e.getLineAndCharacterOfPosition(l,i.end).line&&e.setEmitFlags(i,1);return e.visitEachChild(i,n,e.nullTransformationContext);function g(t){return t.dotDotDotToken||(t.type&&e.isJSDocVariadicType(t.type)?e.factory.createToken(25):void 0)}function _(t,r){return t.name&&e.isIdentifier(t.name)&&"this"===t.name.escapedText?"this":g(t)?"args":"arg"+r}}));if(!c)return u===i?e.setTextRange(e.factory.cloneNode(i),i):u}}(),ne=e.createSymbolTable(),ie=yn(4,"undefined");ie.declarations=[];var ae=yn(1536,"globalThis",8);ae.exports=ne,ae.declarations=[],ne.set(ae.escapedName,ae);var oe,se=yn(4,"arguments"),ce=yn(4,"require"),le={getNodeCount:function(){return e.sum(t.getSourceFiles(),"nodeCount")},getIdentifierCount:function(){return e.sum(t.getSourceFiles(),"identifierCount")},getSymbolCount:function(){return e.sum(t.getSourceFiles(),"symbolCount")+v},getTypeCatalog:function(){return E},getTypeCount:function(){return y},getInstantiationCount:function(){return k},getRelationCacheSizes:function(){return{assignable:an.size,identity:sn.size,subtype:rn.size,strictSubtype:nn.size}},isUndefinedSymbol:function(e){return e===ie},isArgumentsSymbol:function(e){return e===se},isUnknownSymbol:function(e){return e===ke},getMergedSymbol:Ci,getDiagnostics:qx,getGlobalDiagnostics:function(){return Jx(),Qr.getGlobalDiagnostics()},getRecursionIdentity:Xp,getTypeOfSymbolAtLocation:function(t,r){var n=e.getParseTreeNode(r);return n?function(t,r){if(t=t.exportSymbol||t,78===r.kind&&(e.isRightSideOfQualifiedNameOrPropertyAccess(r)&&(r=r.parent),e.isExpressionNode(r)&&!e.isAssignmentTarget(r))){var n=ub(r);if(Ri(Cn(r).resolvedSymbol)===t)return n}return _o(t)}(t,n):Ee},getSymbolsOfParameterPropertyDeclaration:function(t,r){var n=e.getParseTreeNode(t,e.isParameter);return void 0===n?e.Debug.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):function(t,r){var n=t.parent,i=t.parent.parent,a=Nn(n.locals,r,111551),o=Nn(ss(i.symbol),r,111551);if(a&&o)return[a,o];return e.Debug.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}(n,e.escapeLeadingUnderscores(r))},getDeclaredTypeOfSymbol:Jo,getPropertiesOfType:Hs,getPropertyOfType:function(t,r){return gc(t,e.escapeLeadingUnderscores(r))},getPrivateIdentifierPropertyOfType:function(t,r,n){var i=e.getParseTreeNode(n);if(i){var a=wh(e.escapeLeadingUnderscores(r),i);return a?Dh(t,a):void 0}},getTypeOfPropertyOfType:function(t,r){return Na(t,e.escapeLeadingUnderscores(r))},getIndexInfoOfType:bc,getSignaturesOfType:hc,getIndexTypeOfType:kc,getBaseTypes:Po,getBaseTypeOfLiteralType:mf,getWidenedType:Hf,getTypeFromTypeNode:function(t){var r=e.getParseTreeNode(t,e.isTypeNode);return r?xd(r):Ee},getParameterType:nv,getPromisedTypeOfPromise:Bb,getAwaitedType:function(e){return Ub(e)},getReturnTypeOfSignature:Bc,isNullableType:mh,getNullableType:Af,getNonNullableType:Pf,getNonOptionalType:Of,getTypeArguments:ll,typeToTypeNode:re.typeToTypeNode,indexInfoToIndexSignatureDeclaration:re.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:re.signatureToSignatureDeclaration,symbolToEntityName:re.symbolToEntityName,symbolToExpression:re.symbolToExpression,symbolToTypeParameterDeclarations:re.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:re.symbolToParameterDeclaration,typeParameterToDeclaration:re.typeParameterToDeclaration,getSymbolsInScope:function(t,r){var n=e.getParseTreeNode(t);return n?function(t,r){if(16777216&t.flags)return[];var n=e.createSymbolTable(),i=!1;return a(),n.delete("this"),wc(n);function a(){for(;t;){switch(t.locals&&!An(t)&&s(t.locals,r),t.kind){case 300:if(!e.isExternalOrCommonJsModule(t))break;case 259:s(Ai(t).exports,2623475&r);break;case 258:s(Ai(t).exports,8&r);break;case 223:t.name&&o(t.symbol,r);case 254:case 256:i||s(ss(Ai(t)),788968&r);break;case 209:t.name&&o(t.symbol,r)}e.introducesArgumentsExoticObject(t)&&o(se,r),i=e.hasSyntacticModifier(t,32),t=t.parent}s(ne,r)}function o(t,r){if(e.getCombinedLocalAndExportSymbolFlags(t)&r){var i=t.escapedName;n.has(i)||n.set(i,t)}}function s(e,t){t&&e.forEach((function(e){o(e,t)}))}}(n,r):[]},getSymbolAtLocation:function(t){var r=e.getParseTreeNode(t);return r?Yx(r,!0):void 0},getShorthandAssignmentValueSymbol:function(t){var r=e.getParseTreeNode(t);return r?function(e){if(e&&292===e.kind)return fi(e.name,2208703);return}(r):void 0},getExportSpecifierLocalTargetSymbol:function(t){var r=e.getParseTreeNode(t,e.isExportSpecifier);return r?function(t){return e.isExportSpecifier(t)?t.parent.parent.moduleSpecifier?Qn(t.parent.parent,t):fi(t.propertyName||t.name,2998271):fi(t,2998271)}(r):void 0},getExportSymbolOfSymbol:function(e){return Ci(e.exportSymbol||e)},getTypeAtLocation:function(t){var r=e.getParseTreeNode(t);return r?Xx(r):Ee},tryGetTypeAtLocationWithoutCheck:function(t){var r=e.getParseTreeNode(t);return r?function(t){if(e.isSourceFile(t)&&!e.isExternalModule(t))return Ee;if(16777216&t.flags)return Ee;var r=e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments(t),n=r&&Oo(Ai(r.class));if(e.isPartOfTypeNode(t)){var i=xd(t);return n?ls(i,n.thisType):i}if(e.isExpressionNode(t))return Zx(t,32);return Xx(t)}(r):Ee},getTypeOfAssignmentPattern:function(t){var r=e.getParseTreeNode(t,e.isAssignmentPattern);return r&&Qx(r)||Ee},getPropertySymbolOfDestructuringAssignment:function(t){var r=e.getParseTreeNode(t,e.isIdentifier);return r?function(t){var r=Qx(e.cast(t.parent.parent,e.isAssignmentPattern));return r&&gc(r,t.escapedText)}(r):void 0},signatureToString:function(t,r,n,i){return ua(t,e.getParseTreeNode(r),n,i)},typeToString:function(t,r,n){return da(t,e.getParseTreeNode(r),n)},symbolToString:function(t,r,n,i){return la(t,e.getParseTreeNode(r),n,i)},typePredicateToString:function(t,r,n){return ha(t,e.getParseTreeNode(r),n)},writeSignature:function(t,r,n,i,a){return ua(t,e.getParseTreeNode(r),n,i,a)},writeType:function(t,r,n,i){return da(t,e.getParseTreeNode(r),n,i)},writeSymbol:function(t,r,n,i,a){return la(t,e.getParseTreeNode(r),n,i,a)},writeTypePredicate:function(t,r,n,i){return ha(t,e.getParseTreeNode(r),n,i)},getAugmentedPropertiesOfType:rS,getRootSymbols:function t(r){var n=function(t){if(6&e.getCheckFlags(t))return e.mapDefined(Tn(t).containingType.types,(function(e){return gc(e,t.escapedName)}));if(33554432&t.flags){var r=t,n=r.leftSpread,i=r.rightSpread,a=r.syntheticOrigin;return n?[n,i]:a?[a]:e.singleElementArray(function(e){var t,r=e;for(;r=Tn(r).target;)t=r;return t}(t))}return}(r);return n?e.flatMap(n,t):[r]},getSymbolOfExpando:Ry,getContextualType:function(t,r){var n=e.getParseTreeNode(t,e.isExpression);if(n){var i=e.findAncestor(n,e.isCallLikeExpression),a=i&&Cn(i).resolvedSignature;if(4&r&&i){var o=n;do{Cn(o).skipDirectInference=!0,o=o.parent}while(o&&o!==i);Cn(i).resolvedSignature=void 0}var s=x_(n,r);if(4&r&&i){o=n;do{Cn(o).skipDirectInference=void 0,o=o.parent}while(o&&o!==i);Cn(i).resolvedSignature=a}return s}},getContextualTypeForObjectLiteralElement:function(t){var r=e.getParseTreeNode(t,e.isObjectLiteralElementLike);return r?m_(r):void 0},getContextualTypeForArgumentAtIndex:function(t,r){var n=e.getParseTreeNode(t,e.isCallLikeExpression);return n&&c_(n,r)},getContextualTypeForJsxAttribute:function(t){var r=e.getParseTreeNode(t,e.isJsxAttributeLike);return r&&h_(r)},isContextSensitive:Qd,getFullyQualifiedName:pi,tryGetResolvedSignatureWithoutCheck:function(e,t,r){return ue(e,t,r,32)},getResolvedSignature:function(e,t,r){return ue(e,t,r,0)},getResolvedSignatureForSignatureHelp:function(e,t,r){return ue(e,t,r,16)},getExpandedParameters:gs,hasEffectiveRestParameter:cv,getConstantValue:function(t){var r=e.getParseTreeNode(t,SS);return r?wS(r):void 0},isValidPropertyAccess:function(t,r){var n=e.getParseTreeNode(t,e.isPropertyAccessOrQualifiedNameOrImportTypeNode);return!!n&&function(e,t){switch(e.kind){case 202:return jh(e,106===e.expression.kind,t,Hf(fb(e.expression)));case 158:return jh(e,!1,t,Hf(fb(e.left)));case 196:return jh(e,!1,t,xd(e))}}(n,e.escapeLeadingUnderscores(r))},isValidPropertyAccessForCompletions:function(t,r,n){var i=e.getParseTreeNode(t,e.isPropertyAccessExpression);return!!i&&function(e,t,r){return jh(e,202===e.kind&&106===e.expression.kind,r.escapedName,t)}(i,r,n)},getSignatureFromDeclaration:function(t){var r=e.getParseTreeNode(t,e.isFunctionLike);return r?Ic(r):void 0},isImplementationOfOverload:function(t){var r=e.getParseTreeNode(t,e.isFunctionLike);return r?_S(r):void 0},getImmediateAliasedSymbol:j_,getAliasedSymbol:ai,getEmitResolver:function(e,t){return qx(e,t),te},getExportsOfModule:xi,getExportsAndPropertiesOfModule:function(t){var r=xi(t),n=vi(t);n!==t&&e.addRange(r,Hs(_o(n)));return r},getSymbolWalker:e.createGetSymbolWalker((function(e){return qc(e)||Se}),jc,Bc,Po,Us,_o,Am,vc,Ws,e.getFirstIdentifier,ll),getAmbientModules:function(){gt||(gt=[],ne.forEach((function(e,t){c.test(t)&>.push(e)})));return gt},getJsxIntrinsicTagNamesAt:function(t){var r=W_(N.IntrinsicElements,t);return r?Hs(r):e.emptyArray},isOptionalParameter:function(t){var r=e.getParseTreeNode(t,e.isParameter);return!!r&&Tc(r)},tryGetMemberInModuleExports:function(t,r){return Si(e.escapeLeadingUnderscores(t),r)},tryGetMemberInModuleExportsAndProperties:function(t,r){return function(t,r){var n=Si(t,r);if(n)return n;var i=vi(r);if(i===r)return;var a=_o(i);return 131068&a.flags||1&e.getObjectFlags(a)||uf(a)?void 0:gc(a,t)}(e.escapeLeadingUnderscores(t),r)},tryFindAmbientModuleWithoutAugmentations:function(e){return Ec(e,!1)},getApparentType:ac,getUnionType:ou,isTypeAssignableTo:cp,createAnonymousType:Wi,createSignature:ds,createSymbol:yn,createIndexInfo:Qc,getAnyType:function(){return Se},getStringType:function(){return Re},getNumberType:function(){return Me},createPromiseType:_v,createArrayType:jl,getElementTypeOfArrayType:of,getBooleanType:function(){return qe},getFalseType:function(e){return e?je:Be},getTrueType:function(e){return e?ze:Ue},getVoidType:function(){return Ve},getUndefinedType:function(){return Ne},getNullType:function(){return Fe},getESSymbolType:function(){return Je},getNeverType:function(){return He},getOptionalType:function(){return Ie},isSymbolAccessible:ra,isArrayType:rf,isTupleType:vf,isArrayLikeType:sf,isTypeInvalidDueToUnionDiscriminant:function(e,t){return t.properties.some((function(t){var r=t.name&&vu(t.name),n=r&&Zo(r)?is(r):void 0,i=void 0===n?void 0:Na(e,n);return!!i&&ff(i)&&!cp(Xx(t),i)}))},getAllPossiblePropertiesOfTypes:function(t){var r=ou(t);if(!(1048576&r.flags))return rS(r);for(var n=e.createSymbolTable(),i=0,a=t;i<a.length;i++)for(var o=0,s=rS(a[i]);o<s.length;o++){var c=s[o].escapedName;if(!n.has(c)){var l=sc(r,c);l&&n.set(c,l)}}return e.arrayFrom(n.values())},getSuggestedSymbolForNonexistentProperty:Ph,getSuggestionForNonexistentProperty:Fh,getSuggestedSymbolForNonexistentJSXAttribute:Ih,getSuggestedSymbolForNonexistentSymbol:function(t,r,n){return Oh(t,e.escapeLeadingUnderscores(r),n)},getSuggestionForNonexistentSymbol:function(t,r,n){return function(t,r,n){var i=Oh(t,r,n);return i&&e.symbolName(i)}(t,e.escapeLeadingUnderscores(r),n)},getSuggestedSymbolForNonexistentModule:Rh,getSuggestionForNonexistentExport:function(t,r){var n=Rh(t,r);return n&&e.symbolName(n)},getBaseConstraintOfType:Qs,getDefaultFromTypeParameter:function(e){return e&&262144&e.flags?nc(e):void 0},resolveName:function(t,r,n,i){return Fn(r,e.escapeLeadingUnderscores(t),n,void 0,void 0,!1,i)},getJsxNamespace:function(t){return e.unescapeLeadingUnderscores(un(t))},getJsxFragmentFactory:function(t){var r=MS(t);return r&&e.unescapeLeadingUnderscores(e.getFirstIdentifier(r).escapedText)},getAccessibleSymbolChain:Yi,getTypePredicateOfSignature:jc,resolveExternalModuleName:function(t){var r=e.getParseTreeNode(t,e.isExpression);return r&&gi(r,r,!0)},resolveExternalModuleSymbol:vi,tryGetThisTypeAt:function(t,r){var n=e.getParseTreeNode(t);return n&&Yg(n,r)},getTypeArgumentConstraint:function(t){var r=e.getParseTreeNode(t,e.isTypeNode);return r&&function(t){var r=e.tryCast(t.parent,e.isTypeReferenceType);if(!r)return;var n=Nb(r),i=Ws(n[r.typeArguments.indexOf(t)]);return i&&Wd(i,Td(n,Cb(r,n)))}(r)},getSuggestionDiagnostics:function(r,i){var o,s=e.getParseTreeNode(r,e.isSourceFile)||e.Debug.fail("Could not determine parsed source file.");if(e.skipTypeChecking(s,J,t)||s.isDeclarationFile&&J.needDoArkTsLinter)return e.emptyArray;try{return n=i,Bx(s),e.Debug.assert(!!(1&Cn(s).flags)),o=e.addRange(o,Zr.getDiagnostics(s.fileName)),Zb(Ux(s),(function(t,r,n){e.containsParseError(t)||zx(r,!!(8388608&t.flags))||(o||(o=[])).push(a(a({},n),{category:e.DiagnosticCategory.Suggestion}))})),o||e.emptyArray}finally{n=void 0}},runWithCancellationToken:function(e,t){try{return n=e,t(le)}finally{n=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:So,isDeclarationVisible:Sa};function ue(t,r,n,i){var a=e.getParseTreeNode(t,e.isCallLikeExpression);oe=n;var o=a?Iy(a,r,i):void 0;return oe=void 0,o}var de=new e.Map,pe=new e.Map,fe=new e.Map,me=new e.Map,ge=new e.Map,_e=new e.Map,he=new e.Map,ye=new e.Map,ve=[],be=new e.Map,ke=yn(4,"unknown"),xe=yn(0,"__resolving__"),Se=zi(1,"any"),we=zi(1,"any"),De=zi(1,"any"),Ee=zi(1,"error"),Te=zi(1,"any",524288),Ce=zi(1,"intrinsic"),Ae=zi(2,"unknown"),Ne=zi(32768,"undefined"),Pe=W?Ne:zi(32768,"undefined",524288),Ie=zi(32768,"undefined"),Fe=zi(65536,"null"),Oe=W?Fe:zi(65536,"null",524288),Re=zi(4,"string"),Me=zi(8,"number"),Le=zi(64,"bigint"),je=zi(512,"false"),Be=zi(512,"false"),ze=zi(512,"true"),Ue=zi(512,"true");ze.regularType=Ue,ze.freshType=ze,Ue.regularType=Ue,Ue.freshType=ze,je.regularType=Be,je.freshType=je,Be.regularType=Be,Be.freshType=je;var qe=Ui([Be,Ue]);Ui([Be,ze]),Ui([je,Ue]),Ui([je,ze]);var Je=zi(4096,"symbol"),Ve=zi(16384,"void"),He=zi(131072,"never"),Ke=zi(131072,"never"),We=zi(131072,"never",2097152),Ge=zi(131072,"never"),$e=zi(131072,"never"),Ye=zi(67108864,"object"),Xe=ou([Re,Me,Je]),Qe=Z?Re:Xe,Ze=ou([Me,Le]),et=ou([Re,Me,qe,Le,Fe,Ne]),tt=Nd((function(e){return 262144&e.flags?(t=e).constraint===Ae?t:t.restrictiveInstantiation||(t.restrictiveInstantiation=Ji(t.symbol),t.restrictiveInstantiation.constraint=Ae,t.restrictiveInstantiation):e;var t})),rt=Nd((function(e){return 262144&e.flags?De:e})),nt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),it=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0);it.objectFlags|=4096;var at=yn(2048,"__type");at.members=e.createSymbolTable();var ot=Wi(at,T,e.emptyArray,e.emptyArray,void 0,void 0),st=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0);st.instantiations=new e.Map;var ct=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0);ct.objectFlags|=2097152;var lt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),ut=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),dt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),pt=Ji(),ft=Ji();ft.constraint=pt;var mt,gt,_t,ht,yt,vt,bt,kt,xt,St,wt,Dt,Et,Tt,Ct,At,Nt,Pt,It,Ft,Ot,Rt,Mt,Lt,jt,Bt,zt,Ut,qt,Jt,Vt,Ht,Kt,Wt,Gt,$t,Yt,Xt,Qt,Zt,er,tr,rr,nr,ir,ar,or,sr=Ji(),cr=Ac(1,"<<unresolved>>",0,Se),lr=ds(void 0,void 0,void 0,e.emptyArray,Se,void 0,0,0),ur=ds(void 0,void 0,void 0,e.emptyArray,Ee,void 0,0,0),dr=ds(void 0,void 0,void 0,e.emptyArray,Se,void 0,0,0),pr=ds(void 0,void 0,void 0,e.emptyArray,Ke,void 0,0,0),fr=Qc(Re,!0),mr=new e.Map,gr={get yieldType(){return e.Debug.fail("Not supported")},get returnType(){return e.Debug.fail("Not supported")},get nextType(){return e.Debug.fail("Not supported")}},_r=Rk(Se,Se,Se),hr=Rk(Se,Se,Ae),yr=Rk(He,Se,Ne),vr={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:function(e){return Wt||(Wt=Al("AsyncIterator",3,e))||st},getGlobalIterableType:function(e){return Kt||(Kt=Al("AsyncIterable",1,e))||st},getGlobalIterableIteratorType:function(e){return Gt||(Gt=Al("AsyncIterableIterator",1,e))||st},getGlobalGeneratorType:function(e){return $t||($t=Al("AsyncGenerator",3,e))||st},resolveIterationType:Ub,mustHaveANextMethodDiagnostic:e.Diagnostics.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:e.Diagnostics.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:e.Diagnostics.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},br={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:function(e){return Ut||(Ut=Al("Iterator",3,e))||st},getGlobalIterableType:Ol,getGlobalIterableIteratorType:function(e){return qt||(qt=Al("IterableIterator",1,e))||st},getGlobalGeneratorType:function(e){return Jt||(Jt=Al("Generator",3,e))||st},resolveIterationType:function(e,t){return e},mustHaveANextMethodDiagnostic:e.Diagnostics.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:e.Diagnostics.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:e.Diagnostics.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},kr=new e.Map,xr=!1,Sr=new e.Map,wr=0,Dr=0,Er=0,Tr=!1,Cr=0,Ar=hd(""),Nr=hd(0),Pr=hd({negative:!1,base10Value:"0"}),Ir=[],Fr=[],Or=[],Rr=0,Mr=10,Lr=[],jr=[],Br=[],zr=[],Ur=[],qr=[],Jr=[],Vr=[],Hr=[],Kr=[],Wr=[],Gr=[],$r=[],Yr=[],Xr=[],Qr=e.createDiagnosticCollection(),Zr=e.createDiagnosticCollection(),en=new e.Map(e.getEntries({string:Re,number:Me,bigint:Le,boolean:qe,symbol:Je,undefined:Ne})),tn=ou(e.arrayFrom(S.keys(),hd)),rn=new e.Map,nn=new e.Map,an=new e.Map,on=new e.Map,sn=new e.Map,cn=new e.Map,ln=e.createSymbolTable();return ln.set(ie.escapedName,ie),function(){for(var r=0,n=t.getSourceFiles();r<n.length;r++){var i=n[r];e.bindSourceFile(i,J)}var a;mt=new e.Map;for(var o=0,s=t.getSourceFiles();o<s.length;o++){if(!(i=s[o]).redirectInfo){if(!e.isExternalOrCommonJsModule(i)){var c=i.locals.get("globalThis");if(c)for(var l=0,u=c.declarations;l<u.length;l++){var d=u[l];Qr.add(e.createDiagnosticForNode(d,e.Diagnostics.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"))}Dn(ne,i.locals)}if(i.jsGlobalAugmentations&&Dn(ne,i.jsGlobalAugmentations),i.patternAmbientModules&&i.patternAmbientModules.length&&(_t=e.concatenate(_t,i.patternAmbientModules)),i.moduleAugmentations.length&&(a||(a=[])).push(i.moduleAugmentations),i.symbol&&i.symbol.globalExports)i.symbol.globalExports.forEach((function(e,t){ne.has(t)||ne.set(t,e)}))}}if(a)for(var p=0,f=a;p<f.length;p++)for(var m=0,g=f[p];m<g.length;m++){var _=g[m];e.isGlobalScopeAugmentation(_.parent)&&En(_)}(function(t,r,n){r.forEach((function(r,i){var a=t.get(i);a?e.forEach(a.declarations,function(t,r){return function(n){return Qr.add(e.createDiagnosticForNode(n,r,t))}}(e.unescapeLeadingUnderscores(i),n)):t.set(i,r)}))})(ne,ln,e.Diagnostics.Declaration_name_conflicts_with_built_in_global_identifier_0),Tn(ie).type=Pe,Tn(se).type=Al("IArguments",0,!0),Tn(ke).type=Ee,Tn(ae).type=qi(16,ae),xt=Al("Array",1,!0),yt=Al("Object",0,!0),vt=Al("Function",0,!0),bt=$&&Al("CallableFunction",0,!0)||vt,kt=$&&Al("NewableFunction",0,!0)||vt,wt=Al("String",0,!0),Dt=Al("Number",0,!0),Et=Al("Boolean",0,!0),Tt=Al("RegExp",0,!0),At=jl(Se),(Nt=jl(we))===nt&&(Nt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0));if(St=Rl("ReadonlyArray",1)||xt,Pt=St?Ml(St,[Se]):At,Ct=Rl("ThisType",1),a)for(var h=0,y=a;h<y.length;h++)for(var v=0,b=y[h];v<b.length;v++){_=b[v];e.isGlobalScopeAugmentation(_.parent)||En(_)}mt.forEach((function(t){var r=t.firstFile,n=t.secondFile,i=t.conflictingSymbols;if(i.size<8)i.forEach((function(t,r){for(var n=t.isBlockScoped,i=t.firstFileLocations,a=t.secondFileLocations,o=n?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0,s=0,c=i;s<c.length;s++){wn(c[s],o,r,a)}for(var l=0,u=a;l<u.length;l++){wn(u[l],o,r,i)}}));else{var a=e.arrayFrom(i.keys()).join(", ");Qr.add(e.addRelatedInfo(e.createDiagnosticForNode(r,e.Diagnostics.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,a),e.createDiagnosticForNode(n,e.Diagnostics.Conflicts_are_in_this_file))),Qr.add(e.addRelatedInfo(e.createDiagnosticForNode(n,e.Diagnostics.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,a),e.createDiagnosticForNode(r,e.Diagnostics.Conflicts_are_in_this_file)))}})),mt=void 0}(),le;function un(t){if(t){var r=e.getSourceFileOfNode(t);if(r)if(e.isJsxOpeningFragment(t)){if(r.localJsxFragmentNamespace)return r.localJsxFragmentNamespace;var n=r.pragmas.get("jsxfrag");if(n){var i=e.isArray(n)?n[0]:n;if(r.localJsxFragmentFactory=e.parseIsolatedEntityName(i.arguments.factory,V),e.visitNode(r.localJsxFragmentFactory,s),r.localJsxFragmentFactory)return r.localJsxFragmentNamespace=e.getFirstIdentifier(r.localJsxFragmentFactory).escapedText}var a=MS(t);if(a)return r.localJsxFragmentFactory=a,r.localJsxFragmentNamespace=e.getFirstIdentifier(a).escapedText}else{if(r.localJsxNamespace)return r.localJsxNamespace;var o=r.pragmas.get("jsx");if(o){i=e.isArray(o)?o[0]:o;if(r.localJsxFactory=e.parseIsolatedEntityName(i.arguments.factory,V),e.visitNode(r.localJsxFactory,s),r.localJsxFactory)return r.localJsxNamespace=e.getFirstIdentifier(r.localJsxFactory).escapedText}}}return ir||(ir="React",J.jsxFactory?(ar=e.parseIsolatedEntityName(J.jsxFactory,V),e.visitNode(ar,s),ar&&(ir=e.getFirstIdentifier(ar).escapedText)):J.reactNamespace&&(ir=e.escapeLeadingUnderscores(J.reactNamespace))),ar||(ar=e.factory.createQualifiedName(e.factory.createIdentifier(e.unescapeLeadingUnderscores(ir)),"createElement")),ir;function s(t){return e.setTextRangePosEnd(t,-1,-1),e.visitEachChild(t,s,e.nullTransformationContext)}}function dn(e,t,r,n,i,a,o){var s=pn(t,r,n,i,a,o);return s.skippedOn=e,s}function pn(t,r,n,i,a,o){var s=t?e.createDiagnosticForNode(t,r,n,i,a,o):e.createCompilerDiagnostic(r,n,i,a,o);return Qr.add(s),s}function fn(t,r){t?Qr.add(r):Zr.add(a(a({},r),{category:e.DiagnosticCategory.Suggestion}))}function mn(t,r,n,i,a,o,s){if(r.pos<0||r.end<0){if(!t)return;var c=e.getSourceFileOfNode(r);fn(t,"message"in n?e.createFileDiagnostic(c,0,0,n,i,a,o,s):e.createDiagnosticForFileFromMessageChain(c,n))}else fn(t,"message"in n?e.createDiagnosticForNode(r,n,i,a,o,s):e.createDiagnosticForNodeFromMessageChain(r,n))}function gn(t,r,n,i,a,o,s){var c=pn(t,n,i,a,o,s);if(r){var l=e.createDiagnosticForNode(t,e.Diagnostics.Did_you_forget_to_use_await);e.addRelatedInfo(c,l)}return c}function _n(t,r){var n=Array.isArray(t)?e.forEach(t,e.getJSDocDeprecatedTag):e.getJSDocDeprecatedTag(t);return n&&e.addRelatedInfo(r,e.createDiagnosticForNode(n,e.Diagnostics.The_declaration_was_marked_as_deprecated_here)),Zr.add(r),r}function hn(t,r,n){return _n(r,e.createDiagnosticForNode(t,e.Diagnostics._0_is_deprecated,n))}function yn(e,t,r){v++;var n=new g(33554432|e,t);return n.checkFlags=r||0,n}function vn(e){var t=0;return 2&e&&(t|=111551),1&e&&(t|=111550),4&e&&(t|=0),8&e&&(t|=900095),16&e&&(t|=110991),32&e&&(t|=899503),64&e&&(t|=788872),256&e&&(t|=899327),128&e&&(t|=899967),512&e&&(t|=110735),8192&e&&(t|=103359),32768&e&&(t|=46015),65536&e&&(t|=78783),262144&e&&(t|=526824),524288&e&&(t|=788968),2097152&e&&(t|=2097152),t}function bn(e,t){t.mergeId||(t.mergeId=p,p++),Lr[t.mergeId]=e}function kn(t){var r=yn(t.flags,t.escapedName);return r.declarations=t.declarations?t.declarations.slice():[],r.parent=t.parent,t.valueDeclaration&&(r.valueDeclaration=t.valueDeclaration),t.constEnumOnlyModule&&(r.constEnumOnlyModule=!0),t.members&&(r.members=new e.Map(t.members)),t.exports&&(r.exports=new e.Map(t.exports)),bn(r,t),r}function xn(t,r,n){if(void 0===n&&(n=!1),!(t.flags&vn(r.flags))||67108864&(r.flags|t.flags)){if(r===t)return t;if(!(33554432&t.flags)){var i=ii(t);if(i===ke)return r;t=kn(i)}512&r.flags&&512&t.flags&&t.constEnumOnlyModule&&!r.constEnumOnlyModule&&(t.constEnumOnlyModule=!1),t.flags|=r.flags,r.valueDeclaration&&e.setValueDeclaration(t,r.valueDeclaration),e.addRange(t.declarations,r.declarations),r.members&&(t.members||(t.members=e.createSymbolTable()),Dn(t.members,r.members,n)),r.exports&&(t.exports||(t.exports=e.createSymbolTable()),Dn(t.exports,r.exports,n)),n||bn(t,r)}else if(1024&t.flags)t!==ae&&pn(e.getNameOfDeclaration(r.declarations[0]),e.Diagnostics.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,la(t));else{var a=!!(384&t.flags||384&r.flags),o=!!(2&t.flags||2&r.flags),s=a?e.Diagnostics.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:o?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0,c=r.declarations&&e.getSourceFileOfNode(r.declarations[0]),l=t.declarations&&e.getSourceFileOfNode(t.declarations[0]),u=la(r);if(c&&l&&mt&&!a&&c!==l){var d=-1===e.comparePaths(c.path,l.path)?c:l,p=d===c?l:c,f=e.getOrUpdate(mt,d.path+"|"+p.path,(function(){return{firstFile:d,secondFile:p,conflictingSymbols:new e.Map}})),m=e.getOrUpdate(f.conflictingSymbols,u,(function(){return{isBlockScoped:o,firstFileLocations:[],secondFileLocations:[]}}));g(m.firstFileLocations,r),g(m.secondFileLocations,t)}else Sn(r,s,u,t),Sn(t,s,u,r)}return t;function g(t,r){for(var n=0,i=r.declarations;n<i.length;n++){var a=i[n];e.pushIfUnique(t,a)}}}function Sn(t,r,n,i){e.forEach(t.declarations,(function(e){wn(e,r,n,i.declarations)}))}function wn(t,r,n,i){for(var a=(e.getExpandoInitializer(t,!1)?e.getNameOfExpando(t):e.getNameOfDeclaration(t))||t,o=function(t,r,n,i,a,o){var s=t?e.createDiagnosticForNode(t,r,n,i,a,o):e.createCompilerDiagnostic(r,n,i,a,o);return Qr.lookup(s)||(Qr.add(s),s)}(a,r,n),s=function(t){var r=(e.getExpandoInitializer(t,!1)?e.getNameOfExpando(t):e.getNameOfDeclaration(t))||t;if(r===a)return"continue";o.relatedInformation=o.relatedInformation||[];var i=e.createDiagnosticForNode(r,e.Diagnostics._0_was_also_declared_here,n),s=e.createDiagnosticForNode(r,e.Diagnostics.and_here);if(e.length(o.relatedInformation)>=5||e.some(o.relatedInformation,(function(t){return 0===e.compareDiagnostics(t,s)||0===e.compareDiagnostics(t,i)})))return"continue";e.addRelatedInfo(o,e.length(o.relatedInformation)?s:i)},c=0,l=i||e.emptyArray;c<l.length;c++){s(l[c])}}function Dn(e,t,r){void 0===r&&(r=!1),t.forEach((function(t,n){var i=e.get(n);e.set(n,i?xn(i,t,r):t)}))}function En(t){var r,n,i=t.parent;if(i.symbol.declarations[0]===i)if(e.isGlobalScopeAugmentation(i))Dn(ne,i.symbol.exports);else{var a=_i(t,t,8388608&t.parent.parent.flags?void 0:e.Diagnostics.Invalid_module_name_in_augmentation_module_0_cannot_be_found,!0);if(!a)return;if(1920&(a=vi(a)).flags)if(e.some(_t,(function(e){return a===e.symbol}))){var o=xn(i.symbol,a,!0);ht||(ht=new e.Map),ht.set(t.text,o)}else{if((null===(r=a.exports)||void 0===r?void 0:r.get("__export"))&&(null===(n=i.symbol.exports)||void 0===n?void 0:n.size))for(var s=os(a,"resolvedExports"),c=0,l=e.arrayFrom(i.symbol.exports.entries());c<l.length;c++){var u=l[c],d=u[0],p=u[1];s.has(d)&&!a.exports.has(d)&&xn(s.get(d),p)}xn(a,i.symbol)}else pn(t,e.Diagnostics.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,t.text)}else e.Debug.assert(i.symbol.declarations.length>1)}function Tn(e){if(33554432&e.flags)return e;var t=R(e);return jr[t]||(jr[t]=new I)}function Cn(e){var t=O(e);return Br[t]||(Br[t]=new F)}function An(t){return 300===t.kind&&!e.isExternalOrCommonJsModule(t)}function Nn(r,n,i,a){if(i){var o=Ci(r.get(n));if(o){if(e.Debug.assert(!(1&e.getCheckFlags(o)),"Should never get an instantiated symbol here."),!function(r,n){if(!n||!r.declarations||!r.declarations.length)return!0;var i=e.getEtsLibs(t),a=e.getSourceFileOfNode(n).fileName.trim();if(!a)return!0;var o=null===e.sys||void 0===e.sys?void 0:e.sys.resolvePath(a);return!(!(null==o?void 0:o.endsWith(".ets"))&&!i.includes(o)&&!r.declarations.filter((function(t){if(!e.getSourceFileOfNode(t).fileName)return!0;var r=null===e.sys||void 0===e.sys?void 0:e.sys.resolvePath(e.getSourceFileOfNode(t).fileName);return-1===i.indexOf(r)})).length)}(o,a))return;if(o.flags&i)return o;if(2097152&o.flags){var s=ai(o);if(s===ke||s.flags&i)return o}}}}function Pn(r,n){var i=e.getSourceFileOfNode(r),a=e.getSourceFileOfNode(n),o=e.getEnclosingBlockScopeContainer(r);if(i!==a){if(H&&(i.externalModuleIndicator||a.externalModuleIndicator)||!e.outFile(J)||Nm(n)||8388608&r.flags)return!0;if(l(n,r))return!0;var s=t.getSourceFiles();return s.indexOf(i)<=s.indexOf(a)}if(r.pos<=n.pos&&(!e.isPropertyDeclaration(r)||!e.isThisProperty(n.parent)||r.initializer||r.exclamationToken)){if(199===r.kind){var c=e.getAncestor(n,199);return c?e.findAncestor(c,e.isBindingElement)!==e.findAncestor(r,e.isBindingElement)||r.pos<c.pos:Pn(e.getAncestor(r,251),n)}return 251===r.kind?!function(t,r){switch(t.parent.parent.kind){case 234:case 239:case 241:if(qn(r,t,o))return!0}var n=t.parent.parent;return e.isForInOrOfStatement(n)&&qn(r,n.expression,o)}(r,n):e.isClassDeclaration(r)?!e.findAncestor(n,(function(t){return e.isComputedPropertyName(t)&&t.parent.parent===r})):e.isPropertyDeclaration(r)?!u(r,n,!1):!e.isParameterPropertyDeclaration(r,r.parent)||!(99===J.target&&J.useDefineForClassFields&&e.getContainingClass(r)===e.getContainingClass(n)&&l(n,r))}return!!(273===n.parent.kind||269===n.parent.kind&&n.parent.isExportEquals)||(!(269!==n.kind||!n.isExportEquals)||(!!(4194304&n.flags||Nm(n)||e.findAncestor(n,(function(t){return e.isInterfaceDeclaration(t)||e.isTypeAliasDeclaration(t)})))||!!l(n,r)&&(99!==J.target||!J.useDefineForClassFields||!e.getContainingClass(r)||!e.isPropertyDeclaration(r)&&!e.isParameterPropertyDeclaration(r,r.parent)||!u(r,n,!0))));function l(t,r){return!!e.findAncestor(t,(function(n){if(n===o)return"quit";if(e.isFunctionLike(n))return!0;if(n.parent&&164===n.parent.kind&&n.parent.initializer===n)if(e.hasSyntacticModifier(n.parent,32)){if(166===r.kind)return!0}else if(!(164===r.kind&&!e.hasSyntacticModifier(r,32))||e.getContainingClass(t)!==e.getContainingClass(r))return!0;return!1}))}function u(t,r,n){return!(r.end>t.end)&&void 0===e.findAncestor(r,(function(r){if(r===t)return"quit";switch(r.kind){case 210:return!0;case 164:return!n||!(e.isPropertyDeclaration(t)&&r.parent===t.parent||e.isParameterPropertyDeclaration(t,t.parent)&&r.parent===t.parent.parent)||"quit";case 232:switch(r.parent.kind){case 168:case 166:case 169:return!0;default:return!1}default:return!1}}))}}function In(t,r,n){var i=e.getEmitScriptTarget(J),a=r;if(e.isParameter(n)&&a.body&&t.valueDeclaration.pos>=a.body.pos&&t.valueDeclaration.end<=a.body.end&&i>=2){var o=Cn(a);return void 0===o.declarationRequiresScopeChange&&(o.declarationRequiresScopeChange=e.forEach(a.parameters,(function(e){return s(e.name)||!!e.initializer&&s(e.initializer)}))||!1),!o.declarationRequiresScopeChange}return!1;function s(t){switch(t.kind){case 210:case 209:case 253:case 167:return!1;case 166:case 168:case 169:case 291:return s(t.name);case 164:return e.hasStaticModifier(t)?i<99||!J.useDefineForClassFields:s(t.name);default:return e.isNullishCoalesce(t)||e.isOptionalChain(t)?i<7:e.isBindingElement(t)&&t.dotDotDotToken&&e.isObjectBindingPattern(t.parent)?i<4:!e.isTypeNode(t)&&(e.forEachChild(t,s)||!1)}}}function Fn(e,t,r,n,i,a,o,s){return void 0===o&&(o=!1),On(e,t,r,n,i,a,o,Nn,s)}function On(t,r,n,i,a,o,s,c,l){var u,d,p,f,m,g,_=t,h=!1,y=t,v=!1;e:for(;t;){if(t.locals&&!An(t)&&(u=c(t.locals,r,n))){var b=!0;if(e.isFunctionLike(t)&&d&&d!==t.body?(n&u.flags&788968&&314!==d.kind&&(b=!!(262144&u.flags)&&(d===t.type||161===d.kind||160===d.kind)),n&u.flags&3&&(In(u,t,d)?b=!1:1&u.flags&&(b=161===d.kind||d===t.type&&!!e.findAncestor(u.valueDeclaration,e.isParameter)))):185===t.kind&&(b=d===t.trueType),b)break e;u=void 0}switch(h=h||Rn(t,d),t.kind){case 300:if(!e.isExternalOrCommonJsModule(t))break;v=!0;case 259:var k=Ai(t)&&Ai(t).exports||T;if(300===t.kind||e.isModuleDeclaration(t)&&8388608&t.flags&&!e.isGlobalScopeAugmentation(t)){if(u=k.get("default")){var x=e.getLocalSymbolForExportDefault(u);if(x&&u.flags&n&&x.escapedName===r)break e;u=void 0}var S=k.get(r);if(S&&2097152===S.flags&&(e.getDeclarationOfKind(S,273)||e.getDeclarationOfKind(S,272)))break}if("default"!==r&&(u=c(k,r,2623475&n))){if(!e.isSourceFile(t)||!t.commonJsModuleIndicator||u.declarations.some(e.isJSDocTypeAlias))break e;u=void 0}break;case 258:if(u=c(Ai(t).exports,r,8&n))break e;break;case 164:if(!e.hasSyntacticModifier(t,32)){var w=Li(t.parent);w&&w.locals&&c(w.locals,r,111551&n)&&(f=t)}break;case 254:case 223:case 256:if(u=c(Ai(t).members||T,r,788968&n)){if(!jn(u,t)){u=void 0;break}if(d&&e.hasSyntacticModifier(d,32))return void pn(y,e.Diagnostics.Static_members_cannot_reference_class_type_parameters);break e}if(223===t.kind&&32&n){var D=t.name;if(D&&r===D.escapedText){u=t.symbol;break e}}break;case 225:if(d===t.expression&&94===t.parent.token){var E=t.parent.parent;if(e.isClassLike(E)&&(u=c(Ai(E).members,r,788968&n)))return void(i&&pn(y,e.Diagnostics.Base_class_expressions_cannot_reference_class_type_parameters))}break;case 159:if(g=t.parent.parent,(e.isClassLike(g)||256===g.kind)&&(u=c(Ai(g).members,r,788968&n)))return void pn(y,e.Diagnostics.A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type);break;case 210:if(J.target>=2)break;case 166:case 167:case 168:case 169:case 253:if(3&n&&"arguments"===r){u=se;break e}break;case 209:if(3&n&&"arguments"===r){u=se;break e}if(16&n){var C=t.name;if(C&&r===C.escapedText){u=t.symbol;break e}}break;case 162:t.parent&&161===t.parent.kind&&(t=t.parent),t.parent&&(e.isClassElement(t.parent)||254===t.parent.kind)&&(t=t.parent);break;case 334:case 327:case 328:(O=e.getJSDocRoot(t))&&(t=O.parent);break;case 161:d&&(d===t.initializer||d===t.name&&e.isBindingPattern(d))&&(m||(m=t));break;case 199:d&&(d===t.initializer||d===t.name&&e.isBindingPattern(d))&&e.isParameterDeclaration(t)&&!m&&(m=t);break;case 186:if(262144&n){var A=t.typeParameter.name;if(A&&r===A.escapedText){u=t.typeParameter.symbol;break e}}}Mn(t)&&(p=t),d=t,t=t.parent}if(!o||!u||p&&u===p.symbol||(u.isReferenced|=n),!u){if(d&&(e.Debug.assert(300===d.kind),d.commonJsModuleIndicator&&"exports"===r&&n&d.symbol.flags))return d.symbol;s||(u=c(ne,r,n,_))}if(!u&&_&&e.isInJSFile(_)&&_.parent&&e.isRequireCall(_.parent,!1))return ce;if(u){if(i){if(f&&(99!==J.target||!J.useDefineForClassFields)){var N=f.name;return void pn(y,e.Diagnostics.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,e.declarationNameToString(N),Ln(a))}if(y&&(2&n||(32&n||384&n)&&!(111551&~n))){var P=Ri(u);(2&P.flags||32&P.flags||384&P.flags)&&function(t,r){if(e.Debug.assert(!!(2&t.flags||32&t.flags||384&t.flags)),67108881&t.flags&&32&t.flags)return;var n=e.find(t.declarations,(function(t){return e.isBlockOrCatchScoped(t)||e.isClassLike(t)||258===t.kind}));if(void 0===n)return e.Debug.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(8388608&n.flags||Pn(n,r))){var i=void 0,a=e.declarationNameToString(e.getNameOfDeclaration(n));2&t.flags?i=pn(r,e.Diagnostics.Block_scoped_variable_0_used_before_its_declaration,a):32&t.flags?i=pn(r,e.Diagnostics.Class_0_used_before_its_declaration,a):256&t.flags?i=pn(r,e.Diagnostics.Enum_0_used_before_its_declaration,a):(e.Debug.assert(!!(128&t.flags)),e.shouldPreserveConstEnums(J)&&(i=pn(r,e.Diagnostics.Enum_0_used_before_its_declaration,a))),i&&e.addRelatedInfo(i,e.createDiagnosticForNode(n,e.Diagnostics._0_is_declared_here,a))}}(P,y)}if(u&&v&&!(111551&~n)&&!(4194304&_.flags)){var I=Ci(u);e.length(I.declarations)&&e.every(I.declarations,(function(t){return e.isNamespaceExportDeclaration(t)||e.isSourceFile(t)&&!!t.symbol.globalExports}))&&mn(!J.allowUmdGlobalAccess,y,e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,e.unescapeLeadingUnderscores(r))}if(u&&m&&!h&&!(111551&~n)){var F=Ci(cs(u)),O=e.getRootDeclaration(m);F===Ai(m)?pn(y,e.Diagnostics.Parameter_0_cannot_reference_itself,e.declarationNameToString(m.name)):F.valueDeclaration&&F.valueDeclaration.pos>m.pos&&O.parent.locals&&c(O.parent.locals,F.escapedName,n)===F&&pn(y,e.Diagnostics.Parameter_0_cannot_reference_identifier_1_declared_after_it,e.declarationNameToString(m.name),e.declarationNameToString(y))}u&&y&&111551&n&&2097152&u.flags&&function(t,r,n){if(!e.isValidTypeOnlyAliasUseSite(n)){var i=ci(t);if(i){var a=e.typeOnlyDeclarationIsExport(i),o=a?e.Diagnostics._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:e.Diagnostics._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,s=a?e.Diagnostics._0_was_exported_here:e.Diagnostics._0_was_imported_here,c=e.unescapeLeadingUnderscores(r);e.addRelatedInfo(pn(n,o,c),e.createDiagnosticForNode(i,s,c))}}}(u,r,y)}return u}if(i&&!(y&&(function(t,r,n){if(!e.isIdentifier(t)||t.escapedText!==r||Hx(t)||Nm(t))return!1;var i=e.getThisContainer(t,!1),a=i;for(;a;){if(e.isClassLike(a.parent)){var o=Ai(a.parent);if(!o)break;if(gc(_o(o),r))return pn(t,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,Ln(n),la(o)),!0;if(a===i&&!e.hasSyntacticModifier(a,32))if(gc(Jo(o).thisType,r))return pn(t,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,Ln(n)),!0}a=a.parent}return!1}(y,r,a)||Bn(y)||function(t,r,n){var i=1920|(e.isInJSFile(t)?111551:0);if(n===i){var a=ii(Fn(t,r,788968&~i,void 0,void 0,!1)),o=t.parent;if(a){if(e.isQualifiedName(o)){e.Debug.assert(o.left===t,"Should only be resolving left side of qualified name as a namespace");var s=o.right.escapedText;if(gc(Jo(a),s))return pn(o,e.Diagnostics.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,e.unescapeLeadingUnderscores(r),e.unescapeLeadingUnderscores(s)),!0}return pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,e.unescapeLeadingUnderscores(r)),!0}}return!1}(y,r,n)||function(t,r){if(Un(r)&&273===t.parent.kind)return pn(t,e.Diagnostics.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,r),!0;return!1}(y,r)||function(t,r,n){if(111551&n){if(Un(r))return pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,e.unescapeLeadingUnderscores(r)),!0;var i=ii(Fn(t,r,788544,void 0,void 0,!1));if(i&&!(1024&i.flags)){var a=e.unescapeLeadingUnderscores(r);return!function(e){switch(e){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}(r)?!function(t,r){var n=e.findAncestor(t.parent,(function(t){return!e.isComputedPropertyName(t)&&!e.isPropertySignature(t)&&(e.isTypeLiteralNode(t)||"quit")}));if(n&&1===n.members.length){var i=Jo(r);return!!(1048576&i.flags)&&Lv(i,384,!0)}return!1}(t,i)?pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,a):pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,a,"K"===a?"P":"K"):pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later,a),!0}}return!1}(y,r,n)||function(t,r,n){if(111127&n){if(ii(Fn(t,r,1024,void 0,void 0,!1)))return pn(t,e.Diagnostics.Cannot_use_namespace_0_as_a_value,e.unescapeLeadingUnderscores(r)),!0}else if(788544&n){if(ii(Fn(t,r,1536,void 0,void 0,!1)))return pn(t,e.Diagnostics.Cannot_use_namespace_0_as_a_type,e.unescapeLeadingUnderscores(r)),!0}return!1}(y,r,n)||function(t,r,n){if(788584&n){var i=ii(Fn(t,r,111127,void 0,void 0,!1));if(i&&!(1920&i.flags))return pn(t,e.Diagnostics._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,e.unescapeLeadingUnderscores(r)),!0}return!1}(y,r,n)))){var R=void 0;if(l&&Rr<Mr)if((R=Oh(_,r,n))&&R.valueDeclaration&&e.isAmbientModule(R.valueDeclaration)&&e.isGlobalScopeAugmentation(R.valueDeclaration)&&(R=void 0),R){var M=la(R),L=pn(y,l,Ln(a),M);R.valueDeclaration&&e.addRelatedInfo(L,e.createDiagnosticForNode(R.valueDeclaration,e.Diagnostics._0_is_declared_here,M))}if(!R&&a){var j=function(t){for(var r=Ln(t),n=e.getScriptTargetFeatures(),i=e.getOwnKeys(n),a=0,o=i;a<o.length;a++){var s=o[a],c=e.getOwnKeys(n[s]);if(void 0!==c&&e.contains(c,r))return s}}(a);j?pn(y,i,Ln(a),j):pn(y,i,Ln(a))}Rr++}}function Rn(t,r){return 210!==t.kind&&209!==t.kind?e.isTypeQueryNode(t)||(e.isFunctionLikeDeclaration(t)||164===t.kind&&!e.hasSyntacticModifier(t,32))&&(!r||r!==t.name):(!r||r!==t.name)&&(!(!t.asteriskToken&&!e.hasSyntacticModifier(t,256))||!e.getImmediatelyInvokedFunctionExpression(t))}function Mn(e){switch(e.kind){case 253:case 254:case 256:case 258:case 257:case 259:return!0;default:return!1}}function Ln(t){return e.isString(t)?e.unescapeLeadingUnderscores(t):e.declarationNameToString(t)}function jn(t,r){for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(160===a.kind)if((e.isJSDocTemplateTag(a.parent)?e.getJSDocHost(a.parent):a.parent)===r)return!(e.isJSDocTemplateTag(a.parent)&&e.find(a.parent.parent.tags,e.isJSDocTypeAlias))}return!1}function Bn(t){var r=zn(t);return!(!r||!fi(r,64,!0))&&(pn(t,e.Diagnostics.Cannot_extend_an_interface_0_Did_you_mean_implements,e.getTextOfNode(r)),!0)}function zn(t){switch(t.kind){case 78:case 202:return t.parent?zn(t.parent):void 0;case 225:if(e.isEntityNameExpression(t.expression))return t.expression;default:return}}function Un(e){return"any"===e||"string"===e||"number"===e||"boolean"===e||"never"===e||"unknown"===e}function qn(t,r,n){return!!r&&!!e.findAncestor(t,(function(t){return t===n||e.isFunctionLike(t)?"quit":t===r}))}function Jn(e){switch(e.kind){case 263:return e;case 265:return e.parent;case 266:return e.parent.parent;case 268:return e.parent.parent.parent;default:return}}function Vn(t){return e.find(t.declarations,Hn)}function Hn(t){return 263===t.kind||262===t.kind||265===t.kind&&!!t.name||266===t.kind||272===t.kind||268===t.kind||273===t.kind||269===t.kind&&e.exportAssignmentIsAlias(t)||e.isBinaryExpression(t)&&2===e.getAssignmentDeclarationKind(t)&&e.exportAssignmentIsAlias(t)||e.isAccessExpression(t)&&e.isBinaryExpression(t.parent)&&t.parent.left===t&&62===t.parent.operatorToken.kind&&Kn(t.parent.right)||292===t.kind||291===t.kind&&Kn(t.initializer)||e.isRequireVariableDeclaration(t,!0)}function Kn(t){return e.isAliasableExpression(t)||e.isFunctionExpression(t)&&Fy(t)}function Wn(t,r){var n=Zn(t);if(n){var i=e.getLeftmostAccessExpression(n.expression).arguments[0];return e.isIdentifier(n.name)?ii(gc(Mc(i),n.name.escapedText)):void 0}if(e.isVariableDeclaration(t)||275===t.moduleReference.kind){var a=gi(t,e.getExternalModuleRequireArgument(t)||e.getExternalModuleImportEqualsDeclarationExpression(t)),o=vi(a);return oi(t,a,o,!1),o}var s=di(t.moduleReference,r);return function(t,r){if(oi(t,void 0,r,!1)&&!t.isTypeOnly){var n=ci(Ai(t)),i=e.typeOnlyDeclarationIsExport(n),a=i?e.Diagnostics.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:e.Diagnostics.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,o=i?e.Diagnostics._0_was_exported_here:e.Diagnostics._0_was_imported_here,s=e.unescapeLeadingUnderscores(n.name.escapedText);e.addRelatedInfo(pn(t.moduleReference,a),e.createDiagnosticForNode(n,o,s))}}(t,s),s}function Gn(e,t,r,n){var i=e.exports.get("export="),a=i?gc(_o(i),t):e.exports.get(t),o=ii(a,n);return oi(r,a,o,!1),o}function $n(t){return e.isExportAssignment(t)&&!t.isExportEquals||e.hasSyntacticModifier(t,512)||e.isExportSpecifier(t)}function Yn(t,r,n){if(!K)return!1;if(!t||t.isDeclarationFile){var i=Gn(r,"default",void 0,!0);return(!i||!e.some(i.declarations,$n))&&!Gn(r,e.escapeLeadingUnderscores("__esModule"),void 0,n)}return e.isSourceFileJS(t)?!t.externalModuleIndicator&&!Gn(r,e.escapeLeadingUnderscores("__esModule"),void 0,n):ki(r)}function Xn(t,r){var n=gi(t,t.parent.moduleSpecifier);if(n){var i=void 0;i=e.isShorthandAmbientModuleSymbol(n)?n:Gn(n,"default",t,r);var a=Yn(e.find(n.declarations,e.isSourceFile),n,r);if(i||a){if(a){var o=vi(n,r)||ii(n,r);return oi(t,n,o,!1),o}}else if(ki(n)){var s=H>=e.ModuleKind.ES2015?"allowSyntheticDefaultImports":"esModuleInterop",c=n.exports.get("export=").valueDeclaration,l=pn(t.name,e.Diagnostics.Module_0_can_only_be_default_imported_using_the_1_flag,la(n),s);e.addRelatedInfo(l,e.createDiagnosticForNode(c,e.Diagnostics.This_module_is_declared_with_using_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,s))}else!function(t,r){var n,i;if(null===(n=t.exports)||void 0===n?void 0:n.has(r.symbol.escapedName))pn(r.name,e.Diagnostics.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,la(t),la(r.symbol));else{var a=pn(r.name,e.Diagnostics.Module_0_has_no_default_export,la(t)),o=null===(i=t.exports)||void 0===i?void 0:i.get("__export");if(o){var s=e.find(o.declarations,(function(t){var r,n;return!!(e.isExportDeclaration(t)&&t.moduleSpecifier&&(null===(n=null===(r=gi(t,t.moduleSpecifier))||void 0===r?void 0:r.exports)||void 0===n?void 0:n.has("default")))}));s&&e.addRelatedInfo(a,e.createDiagnosticForNode(s,e.Diagnostics.export_Asterisk_does_not_re_export_a_default))}}}(n,t);return oi(t,i,void 0,!1),i}}function Qn(t,r,n){var a;void 0===n&&(n=!1);var o=e.getExternalModuleRequireArgument(t)||t.moduleSpecifier,s=gi(t,o),c=!e.isPropertyAccessExpression(r)&&r.propertyName||r.name;if(e.isIdentifier(c)){var l=bi(s,o,n,"default"===c.escapedText&&!(!J.allowSyntheticDefaultImports&&!J.esModuleInterop));if(l&&c.escapedText){if(e.isShorthandAmbientModuleSymbol(s))return s;var u=void 0;u=s&&s.exports&&s.exports.get("export=")?gc(_o(l),c.escapedText,!0):function(e,t){if(3&e.flags){var r=e.valueDeclaration.type;if(r)return ii(gc(xd(r),t))}}(l,c.escapedText),u=ii(u,n);var d=function(e,t,r,n){if(1536&e.flags){var i=wi(e).get(t.escapedText),a=ii(i,n);return oi(r,i,a,!1),a}}(l,c,r,n);if(void 0===d&&"default"===c.escapedText)Yn(e.find(s.declarations,e.isSourceFile),s,n)&&(d=vi(s,n)||ii(s,n));var p=d&&u&&d!==u?function(t,r){if(t===ke&&r===ke)return ke;if(790504&t.flags)return t;var n=yn(t.flags|r.flags,t.escapedName);return n.declarations=e.deduplicate(e.concatenate(t.declarations,r.declarations),e.equateValues),n.parent=t.parent||r.parent,t.valueDeclaration&&(n.valueDeclaration=t.valueDeclaration),r.members&&(n.members=new e.Map(r.members)),t.exports&&(n.exports=new e.Map(t.exports)),n}(u,d):d||u;if(!p){var f=pi(s,t),m=e.declarationNameToString(c),g=Rh(c,l);if(void 0!==g){var _=la(g),h=pn(c,e.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2,f,m,_);g.valueDeclaration&&e.addRelatedInfo(h,e.createDiagnosticForNode(g.valueDeclaration,e.Diagnostics._0_is_declared_here,_))}else(null===(a=s.exports)||void 0===a?void 0:a.has("default"))?pn(c,e.Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,f,m):function(t,r,n,a,o){var s,c=null===(s=a.valueDeclaration.locals)||void 0===s?void 0:s.get(r.escapedText),l=a.exports;if(c){var u=null==l?void 0:l.get("export=");if(u)Oi(u,c)?function(t,r,n,i){if(H>=e.ModuleKind.ES2015){pn(r,J.esModuleInterop?e.Diagnostics._0_can_only_be_imported_by_using_a_default_import:e.Diagnostics._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n)}else{if(e.isInJSFile(t))pn(r,J.esModuleInterop?e.Diagnostics._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:e.Diagnostics._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n);else pn(r,J.esModuleInterop?e.Diagnostics._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:e.Diagnostics._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n,n,i)}}(t,r,n,o):pn(r,e.Diagnostics.Module_0_has_no_exported_member_1,o,n);else{var d=l?e.find(wc(l),(function(e){return!!Oi(e,c)})):void 0,p=d?pn(r,e.Diagnostics.Module_0_declares_1_locally_but_it_is_exported_as_2,o,n,la(d)):pn(r,e.Diagnostics.Module_0_declares_1_locally_but_it_is_not_exported,o,n);e.addRelatedInfo.apply(void 0,i([p],e.map(c.declarations,(function(t,r){return e.createDiagnosticForNode(t,0===r?e.Diagnostics._0_is_declared_here:e.Diagnostics.and_here,n)}))))}}else pn(r,e.Diagnostics.Module_0_has_no_exported_member_1,o,n)}(t,c,m,s,f)}return p}}}function Zn(t){if(e.isVariableDeclaration(t)&&t.initializer&&e.isPropertyAccessExpression(t.initializer))return t.initializer}function ei(e,t,r){var n=e.parent.parent.moduleSpecifier?Qn(e.parent.parent,e,r):fi(e.propertyName||e.name,t,!1,r);return oi(e,void 0,n,!1),n}function ti(t,r){if(e.isClassExpression(t))return $v(t).symbol;if(e.isEntityName(t)||e.isEntityNameExpression(t)){var n=fi(t,901119,!0,r);return n||($v(t),Cn(t).resolvedSymbol)}}function ri(t,r){switch(void 0===r&&(r=!1),t.kind){case 263:case 251:return Wn(t,r);case 265:return Xn(t,r);case 266:return function(e,t){var r=e.parent.parent.moduleSpecifier,n=gi(e,r),i=bi(n,r,t,!1);return oi(e,n,i,!1),i}(t,r);case 272:return function(e,t){var r=e.parent.moduleSpecifier,n=r&&gi(e,r),i=r&&bi(n,r,t,!1);return oi(e,n,i,!1),i}(t,r);case 268:case 199:return function(t,r){var n=e.isBindingElement(t)?e.getRootDeclaration(t):t.parent.parent.parent,i=Zn(n),a=Qn(n,i||t,r),o=t.propertyName||t.name;return i&&a&&e.isIdentifier(o)?ii(gc(_o(a),o.escapedText),r):(oi(t,void 0,a,!1),a)}(t,r);case 273:return ei(t,901119,r);case 269:case 218:return function(t,r){var n=ti(e.isExportAssignment(t)?t.expression:t.right,r);return oi(t,void 0,n,!1),n}(t,r);case 262:return function(e,t){var r=vi(e.parent.symbol,t);return oi(e,void 0,r,!1),r}(t,r);case 292:return fi(t.name,901119,!0,r);case 291:return function(e,t){return ti(e.initializer,t)}(t,r);case 203:case 202:return function(t,r){if(e.isBinaryExpression(t.parent)&&t.parent.left===t&&62===t.parent.operatorToken.kind)return ti(t.parent.right,r)}(t,r);default:return e.Debug.fail()}}function ni(e,t){return void 0===t&&(t=901119),!!e&&(2097152==(e.flags&(2097152|t))||!!(2097152&e.flags&&67108864&e.flags))}function ii(e,t){return!t&&ni(e)?ai(e):e}function ai(t){e.Debug.assert(!!(2097152&t.flags),"Should only get Alias here.");var r=Tn(t);if(r.target)r.target===xe&&(r.target=ke);else{r.target=xe;var n=Vn(t);if(!n)return e.Debug.fail();var i=ri(n);r.target===xe?r.target=i||ke:pn(n,e.Diagnostics.Circular_definition_of_import_alias_0,la(t))}return r.target}function oi(t,r,n,i){if(!t||e.isPropertyAccessExpression(t))return!1;var a=Ai(t);if(e.isTypeOnlyImportOrExportDeclaration(t))return Tn(a).typeOnlyDeclaration=t,!0;var o=Tn(a);return si(o,r,i)||si(o,n,i)}function si(t,r,n){var i,a,o;if(r&&(void 0===t.typeOnlyDeclaration||n&&!1===t.typeOnlyDeclaration)){var s=null!==(a=null===(i=r.exports)||void 0===i?void 0:i.get("export="))&&void 0!==a?a:r,c=s.declarations&&e.find(s.declarations,e.isTypeOnlyImportOrExportDeclaration);t.typeOnlyDeclaration=null!==(o=null!=c?c:Tn(s).typeOnlyDeclaration)&&void 0!==o&&o}return!!t.typeOnlyDeclaration}function ci(e){if(2097152&e.flags)return Tn(e).typeOnlyDeclaration||void 0}function li(e){var t=Ai(e),r=ai(t);r&&((r===ke||111551&r.flags&&!mS(r)&&!ci(t))&&ui(t))}function ui(t){var r=Tn(t);if(!r.referenced){r.referenced=!0;var n=Vn(t);if(!n)return e.Debug.fail();if(e.isInternalModuleImportEqualsDeclaration(n)){var i=ii(t);(i===ke||111551&i.flags)&&$v(n.moduleReference)}}}function di(t,r){return 78===t.kind&&e.isRightSideOfQualifiedNameOrPropertyAccess(t)&&(t=t.parent),78===t.kind||158===t.parent.kind?fi(t,1920,!1,r):(e.Debug.assert(263===t.parent.kind),fi(t,901119,!1,r))}function pi(e,t){return e.parent?pi(e.parent,t)+"."+la(e):la(e,t,void 0,20)}function fi(t,r,n,i,a){if(!e.nodeIsMissing(t)){var o,s=1920|(e.isInJSFile(t)?111551&r:0);if(78===t.kind){var c=r===s||e.nodeIsSynthesized(t)?e.Diagnostics.Cannot_find_namespace_0:Cm(e.getFirstIdentifier(t)),l=e.isInJSFile(t)&&!e.nodeIsSynthesized(t)?function(t,r){if(bl(t.parent)){var n=function(t){if(e.findAncestor(t,(function(t){return e.isJSDocNode(t)||4194304&t.flags?e.isJSDocTypeAlias(t):"quit"})))return;var r=e.getJSDocHost(t);if(r&&e.isExpressionStatement(r)&&e.isBinaryExpression(r.expression)&&3===e.getAssignmentDeclarationKind(r.expression)){if(i=Ai(r.expression.left))return mi(i)}if(r&&(e.isObjectLiteralMethod(r)||e.isPropertyAssignment(r))&&e.isBinaryExpression(r.parent.parent)&&6===e.getAssignmentDeclarationKind(r.parent.parent)){if(i=Ai(r.parent.parent.left))return mi(i)}var n=e.getEffectiveJSDocHost(t);if(n&&e.isFunctionLike(n)){var i;return(i=Ai(n))&&i.valueDeclaration}}(t.parent);if(n)return Fn(n,t.escapedText,r,void 0,t,!0)}}(t,r):void 0;if(!(o=Ci(Fn(a||t,t.escapedText,r,n||l?void 0:c,t,!0))))return Ci(l)}else{if(158!==t.kind&&202!==t.kind)throw e.Debug.assertNever(t,"Unknown entity name kind.");var u=158===t.kind?t.left:t.expression,d=158===t.kind?t.right:t.name,p=fi(u,s,n,!1,a);if(!p||e.nodeIsMissing(d))return;if(p===ke)return p;if(e.isInJSFile(t)&&p.valueDeclaration&&e.isVariableDeclaration(p.valueDeclaration)&&p.valueDeclaration.initializer&&Ky(p.valueDeclaration.initializer)){var f=p.valueDeclaration.initializer.arguments[0],m=gi(f,f);if(m){var g=vi(m);g&&(p=g)}}if(!(o=Ci(Nn(wi(p),d.escapedText,r)))){if(!n){var _=pi(p),h=e.declarationNameToString(d),y=Rh(d,p);y?pn(d,e.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2,_,h,la(y)):pn(d,e.Diagnostics.Namespace_0_has_no_exported_member_1,_,h)}return}}return e.Debug.assert(!(1&e.getCheckFlags(o)),"Should never get an instantiated symbol here."),!e.nodeIsSynthesized(t)&&e.isEntityName(t)&&(2097152&o.flags||269===t.parent.kind)&&oi(e.getAliasDeclarationFromName(t),o,void 0,!0),o.flags&r||i?o:ai(o)}}function mi(t){var r=t.parent.valueDeclaration;if(r)return(e.isAssignmentDeclaration(r)?e.getAssignedExpandoInitializer(r):e.hasOnlyExpressionInitializer(r)?e.getDeclaredExpandoInitializer(r):void 0)||r}function gi(t,r,n){var i=e.getEmitModuleResolutionKind(J)===e.ModuleResolutionKind.Classic?e.Diagnostics.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:e.Diagnostics.Cannot_find_module_0_or_its_corresponding_type_declarations;return _i(t,r,n?void 0:i)}function _i(t,r,n,i){return void 0===i&&(i=!1),e.isStringLiteralLike(r)?hi(t,r.text,n,r,i):void 0}function hi(r,n,i,a,o){(void 0===o&&(o=!1),e.startsWith(n,"@types/"))&&pn(a,h=e.Diagnostics.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,e.removePrefix(n,"@types/"),n);var s=-1!==n.lastIndexOf(".so");if(!s||e.isInETSFile(r)&&J.needDoArkTsLinter&&!J.isCompatibleVersion){var c=Ec(n,!0);if(c)return c;var l=e.getSourceFileOfNode(r),u=e.getResolvedModule(l,n);if(J.needDoArkTsLinter&&l&&3===l.scriptKind&&u&&(".ets"===u.extension||".d.ets"===u.extension))pn(a,J.isCompatibleVersion?e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden:e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden,n);var d=u&&e.getResolutionDiagnostic(J,u),p=u&&!d&&t.getSourceFile(u.resolvedFileName);if(p)return p.symbol?(u.isExternalLibraryImport&&!e.resolutionExtensionIsTSOrJson(u.extension)&&yi(!1,a,u,n),Ci(p.symbol)):void(i&&pn(a,e.Diagnostics.File_0_is_not_a_module,p.fileName));if(_t){var f=e.findBestPatternMatch(_t,(function(e){return e.pattern}),n);if(f){var m=ht&&ht.get(n);return Ci(m?m:f.symbol)}}if(u&&!e.resolutionExtensionIsTSOrJson(u.extension)&&void 0===d||d===e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type)o?pn(a,h=e.Diagnostics.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented,n,u.resolvedFileName):yi(X&&!!i,a,u,n);else if(i){if(u){var g=t.getProjectReferenceRedirect(u.resolvedFileName);if(g)return void pn(a,e.Diagnostics.Output_file_0_has_not_been_built_from_source_file_1,g,u.resolvedFileName)}if(d)pn(a,d,n,u.resolvedFileName);else{var _=e.tryExtractTSExtension(n);if(_){var h=e.Diagnostics.An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead,y=e.removeExtension(n,_);e.getEmitModuleKind(J)>=e.ModuleKind.ES2015&&(y+=".js"),pn(a,h,_,y)}else if(!J.resolveJsonModule&&e.fileExtensionIs(n,".json")&&e.getEmitModuleResolutionKind(J)===e.ModuleResolutionKind.NodeJs&&e.hasJsonModuleEmitEnabled(J))pn(a,e.Diagnostics.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,n);else if(s){v=e.createDiagnosticForNode(a,e.Diagnostics.Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in_later_SDK_version_Please_make_sure_the_corresponding_d_ts_file_is_provided_and_the_napis_are_correctly_declared,n);Qr.add(v)}else pn(a,i,n)}}}else{var v=e.createDiagnosticForNode(a,e.Diagnostics.Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in_later_SDK_version_Please_make_sure_the_corresponding_d_ts_file_is_provided_and_the_napis_are_correctly_declared,n);Qr.add(v)}}function yi(t,r,n,i){var a,o=n.packageId,s=n.resolvedFileName,c=!e.isExternalModuleNameRelative(i)&&o?(a=o.name,m().has(e.getTypesPackageName(a))?e.chainDiagnosticMessages(void 0,e.Diagnostics.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,o.name,e.mangleScopedPackageName(o.name)):e.chainDiagnosticMessages(void 0,e.Diagnostics.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,i,e.mangleScopedPackageName(o.name))):void 0;mn(t,r,e.chainDiagnosticMessages(c,e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,i,s))}function vi(t,r){if(null==t?void 0:t.exports){var n=function(t,r){if(!t||t===ke||t===r||1===r.exports.size||2097152&t.flags)return t;var n=Tn(t);if(n.cjsExportMerged)return n.cjsExportMerged;var i=33554432&t.flags?t:kn(t);i.flags=512|i.flags,void 0===i.exports&&(i.exports=e.createSymbolTable());return r.exports.forEach((function(e,t){"export="!==t&&i.exports.set(t,i.exports.has(t)?xn(i.exports.get(t),e):e)})),Tn(i).cjsExportMerged=i,n.cjsExportMerged=i}(Ci(ii(t.exports.get("export="),r)),Ci(t));return Ci(n)||t}}function bi(t,r,n,i){var a=vi(t,n);if(!n&&a){if(!(i||1539&a.flags||e.getDeclarationOfKind(a,300))){var o=H>=e.ModuleKind.ES2015?"allowSyntheticDefaultImports":"esModuleInterop";return pn(r,e.Diagnostics.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,o),a}if(J.esModuleInterop){var s=r.parent;if(e.isImportDeclaration(s)&&e.getNamespaceDeclarationNode(s)||e.isImportCall(s)){var c=_o(a),l=_c(c,0);if(l&&l.length||(l=_c(c,1)),l&&l.length){var u=Hy(c,a,t),d=yn(a.flags,a.escapedName);d.declarations=a.declarations?a.declarations.slice():[],d.parent=a.parent,d.target=a,d.originatingImport=s,a.valueDeclaration&&(d.valueDeclaration=a.valueDeclaration),a.constEnumOnlyModule&&(d.constEnumOnlyModule=!0),a.members&&(d.members=new e.Map(a.members)),a.exports&&(d.exports=new e.Map(a.exports));var p=Us(u);return d.type=Wi(d,p.members,e.emptyArray,e.emptyArray,p.stringIndexInfo,p.numberIndexInfo),d}}}}return a}function ki(e){return void 0!==e.exports.get("export=")}function xi(e){return wc(Di(e))}function Si(e,t){var r=Di(t);if(r)return r.get(e)}function wi(e){return 6256&e.flags?os(e,"resolvedExports"):1536&e.flags?Di(e):e.exports||T}function Di(e){var t=Tn(e);return t.resolvedExports||(t.resolvedExports=Ti(e))}function Ei(t,r,n,i){r&&r.forEach((function(r,a){if("default"!==a){var o=t.get(a);if(o){if(n&&i&&o&&ii(o)!==ii(r)){var s=n.get(a);s.exportsWithDuplicate?s.exportsWithDuplicate.push(i):s.exportsWithDuplicate=[i]}}else t.set(a,r),n&&i&&n.set(a,{specifierText:e.getTextOfNode(i.moduleSpecifier)})}}))}function Ti(t){var r=[];return function t(n){if(!(n&&n.exports&&e.pushIfUnique(r,n)))return;var i=new e.Map(n.exports),a=n.exports.get("__export");if(a){for(var o=e.createSymbolTable(),s=new e.Map,c=0,l=a.declarations;c<l.length;c++){var u=l[c],d=gi(u,u.moduleSpecifier);Ei(o,t(d),s,u)}s.forEach((function(t,r){var n=t.exportsWithDuplicate;if("export="!==r&&n&&n.length&&!i.has(r))for(var a=0,o=n;a<o.length;a++){var c=o[a];Qr.add(e.createDiagnosticForNode(c,e.Diagnostics.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,s.get(r).specifierText,e.unescapeLeadingUnderscores(r)))}})),Ei(i,o)}return i}(t=vi(t))||T}function Ci(e){var t;return e&&e.mergeId&&(t=Lr[e.mergeId])?t:e}function Ai(e){return Ci(e.symbol&&cs(e.symbol))}function Ni(e){return Ci(e.parent&&cs(e.parent))}function Pi(r,n,i){var a=Ni(r);if(a&&!(262144&r.flags)){var o=e.mapDefined(a.declarations,(function(e){return a&&Ii(e,a)})),s=n&&function(r,n){var i,a=e.getSourceFileOfNode(n),o=O(a),s=Tn(r);if(s.extendedContainersByFile&&(i=s.extendedContainersByFile.get(o)))return i;if(a&&a.imports){for(var c=0,l=a.imports;c<l.length;c++){var u=l[c];if(!e.nodeIsSynthesized(u)){var d=gi(n,u,!0);d&&Fi(d,r)&&(i=e.append(i,d))}}if(e.length(i))return(s.extendedContainersByFile||(s.extendedContainersByFile=new e.Map)).set(o,i),i}if(s.extendedContainers)return s.extendedContainers;for(var p=0,f=t.getSourceFiles();p<f.length;p++){var m=f[p];if(e.isExternalModule(m)){var g=Ai(m);Fi(g,r)&&(i=e.append(i,g))}}return s.extendedContainers=i||e.emptyArray}(r,n),c=function(t,r){var n=!!e.length(t.declarations)&&e.first(t.declarations);if(111551&r&&n&&n.parent&&e.isVariableDeclaration(n.parent)&&(e.isObjectLiteralExpression(n)&&n===n.parent.initializer||e.isTypeLiteralNode(n)&&n===n.parent.type))return Ai(n.parent)}(a,i);if(n&&Yi(a,n,1920,!1))return e.append(e.concatenate(e.concatenate([a],o),s),c);var l=e.append(e.append(o,a),c);return e.concatenate(l,s)}var u=e.mapDefined(r.declarations,(function(t){return!e.isAmbientModule(t)&&t.parent&&oa(t.parent)?Ai(t.parent):e.isClassExpression(t)&&e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind&&e.isAccessExpression(t.parent.left)&&e.isEntityNameExpression(t.parent.left.expression)?e.isModuleExportsAccessExpression(t.parent.left)||e.isExportsIdentifier(t.parent.left.expression)?Ai(e.getSourceFileOfNode(t)):($v(t.parent.left.expression),Cn(t.parent.left.expression).resolvedSymbol):void 0}));if(e.length(u))return e.mapDefined(u,(function(e){return Fi(e,r)?e:void 0}))}function Ii(e,t){var r=ia(e),n=r&&r.exports&&r.exports.get("export=");return n&&Oi(n,t)?r:void 0}function Fi(t,r){if(t===Ni(r))return r;var n=t.exports&&t.exports.get("export=");if(n&&Oi(n,r))return t;var i=wi(t),a=i.get(r.escapedName);return a&&Oi(a,r)?a:e.forEachEntry(i,(function(e){if(Oi(e,r))return e}))}function Oi(e,t){if(Ci(ii(Ci(e)))===Ci(ii(Ci(t))))return e}function Ri(e){return Ci(e&&1048576&e.flags?e.exportSymbol:e)}function Mi(e){return!!(111551&e.flags||2097152&e.flags&&111551&ai(e).flags&&!ci(e))}function Li(t){for(var r=0,n=t.members;r<n.length;r++){var i=n[r];if(167===i.kind&&e.nodeIsPresent(i.body))return i}}function ji(e){var t=new _(le,e);return y++,t.id=y,E.push(t),t}function Bi(e){return new _(le,e)}function zi(e,t,r){void 0===r&&(r=0);var n=ji(e);return n.intrinsicName=t,n.objectFlags=r,n}function Ui(e){var t=ou(e);return t.flags|=16,t.intrinsicName="boolean",t}function qi(e,t){var r=ji(524288);return r.objectFlags=e,r.symbol=t,r.members=void 0,r.properties=void 0,r.callSignatures=void 0,r.constructSignatures=void 0,r.stringIndexInfo=void 0,r.numberIndexInfo=void 0,r}function Ji(e){var t=ji(262144);return e&&(t.symbol=e),t}function Vi(e){return 95===e.charCodeAt(0)&&95===e.charCodeAt(1)&&95!==e.charCodeAt(2)&&64!==e.charCodeAt(2)&&35!==e.charCodeAt(2)}function Hi(t){var r;return t.forEach((function(e,t){!Vi(t)&&Mi(e)&&(r||(r=[])).push(e)})),r||e.emptyArray}function Ki(t,r,n,i,a,o){var s=t;return s.members=r,s.properties=e.emptyArray,s.callSignatures=n,s.constructSignatures=i,s.stringIndexInfo=a,s.numberIndexInfo=o,r!==T&&(s.properties=Hi(r)),s}function Wi(e,t,r,n,i,a){return Ki(qi(16,e),t,r,n,i,a)}function Gi(t,r){for(var n,i=function(t){if(t.locals&&!An(t)&&(n=r(t.locals)))return{value:n};switch(t.kind){case 300:if(!e.isExternalOrCommonJsModule(t))break;case 259:var i=Ai(t);if(n=r((null==i?void 0:i.exports)||T))return{value:n};break;case 254:case 223:case 256:var a;if((Ai(t).members||T).forEach((function(t,r){788968&t.flags&&(a||(a=e.createSymbolTable())).set(r,t)})),a&&(n=r(a)))return{value:n}}},a=t;a;a=a.parent){var o=i(a);if("object"==typeof o)return o.value}return r(ne)}function $i(e){return 111551===e?111551:1920}function Yi(t,r,n,i,a){if(void 0===a&&(a=new e.Map),t&&!function(e){if(e.declarations&&e.declarations.length){for(var t=0,r=e.declarations;t<r.length;t++){switch(r[t].kind){case 164:case 166:case 168:case 169:continue;default:return!1}}return!0}return!1}(t)){var o=R(t),s=a.get(o);return s||a.set(o,s=[]),Gi(r,c)}function c(n,a){if(e.pushIfUnique(s,n)){var o=function(n,a){if(u(n.get(t.escapedName),void 0,a))return[t];var o=e.forEachEntry(n,(function(n){if(2097152&n.flags&&"export="!==n.escapedName&&"default"!==n.escapedName&&!(e.isUMDExportSymbol(n)&&r&&e.isExternalModule(e.getSourceFileOfNode(r)))&&(!i||e.some(n.declarations,e.isExternalModuleImportEqualsDeclaration))&&(a||!e.getDeclarationOfKind(n,273))){var o=d(n,ai(n),a);if(o)return o}if(n.escapedName===t.escapedName&&n.exportSymbol&&u(Ci(n.exportSymbol),void 0,a))return[t]}));return o||(n===ne?d(ae,ae,a):void 0)}(n,a);return s.pop(),o}}function l(e,t){return!Xi(e,r,t)||!!Yi(e.parent,r,$i(t),i,a)}function u(r,i,a){return(t===(i||r)||Ci(t)===Ci(i||r))&&!e.some(r.declarations,oa)&&(a||l(Ci(r),n))}function d(e,t,r){if(u(e,t,r))return[e];var i=wi(t),a=i&&c(i,!0);return a&&l(e,$i(n))?[e].concat(a):void 0}}function Xi(t,r,n){var i=!1;return Gi(r,(function(r){var a=Ci(r.get(t.escapedName));return!!a&&(a===t||!!((a=2097152&a.flags&&!e.getDeclarationOfKind(a,273)?ai(a):a).flags&n)&&(i=!0,!0))})),i}function Qi(e,t){return 0===na(e,t,788968,!1,!0).accessibility}function Zi(e,t){return 0===na(e,t,111551,!1,!0).accessibility}function ea(e,t,r){return 0===na(e,t,r,!1,!1).accessibility}function ta(t,r,n,i,a,o){if(e.length(t)){for(var s,c=!1,l=0,u=t;l<u.length;l++){var d=u[l],p=Yi(d,r,i,!1);if(p){s=d;var f=sa(p[0],a);if(f)return f}else if(o&&e.some(d.declarations,oa)){if(a){c=!0;continue}return{accessibility:0}}var m=ta(Pi(d,r,i),r,n,n===d?$i(i):i,a,o);if(m)return m}return c?{accessibility:0}:s?{accessibility:1,errorSymbolName:la(n,r,i),errorModuleName:s!==n?la(s,r,1920):void 0}:void 0}}function ra(e,t,r,n){return na(e,t,r,n,!0)}function na(t,r,n,i,a){if(t&&r){var o=ta([t],r,t,n,i,a);if(o)return o;var s=e.forEach(t.declarations,ia);if(s)if(s!==ia(r))return{accessibility:2,errorSymbolName:la(t,r,n),errorModuleName:la(s),errorNode:e.isInJSFile(r)?r:void 0};return{accessibility:1,errorSymbolName:la(t,r,n)}}return{accessibility:0}}function ia(t){var r=e.findAncestor(t,aa);return r&&Ai(r)}function aa(t){return e.isAmbientModule(t)||300===t.kind&&e.isExternalOrCommonJsModule(t)}function oa(t){return e.isModuleWithStringLiteralName(t)||300===t.kind&&e.isExternalOrCommonJsModule(t)}function sa(t,r){var n;if(e.every(e.filter(t.declarations,(function(e){return 78!==e.kind})),(function(r){var n,a;if(!Sa(r)){var o=Jn(r);return o&&!e.hasSyntacticModifier(o,1)&&Sa(o.parent)?i(r,o):e.isVariableDeclaration(r)&&e.isVariableStatement(r.parent.parent)&&!e.hasSyntacticModifier(r.parent.parent,1)&&Sa(r.parent.parent.parent)?i(r,r.parent.parent):e.isLateVisibilityPaintedStatement(r)&&!e.hasSyntacticModifier(r,1)&&Sa(r.parent)?i(r,r):!!(2097152&t.flags&&e.isBindingElement(r)&&e.isInJSFile(r)&&(null===(n=r.parent)||void 0===n?void 0:n.parent)&&e.isVariableDeclaration(r.parent.parent)&&(null===(a=r.parent.parent.parent)||void 0===a?void 0:a.parent)&&e.isVariableStatement(r.parent.parent.parent.parent)&&!e.hasSyntacticModifier(r.parent.parent.parent.parent,1)&&r.parent.parent.parent.parent.parent&&Sa(r.parent.parent.parent.parent.parent))&&i(r,r.parent.parent.parent.parent)}return!0})))return{accessibility:0,aliasesToMakeVisible:n};function i(t,i){return r&&(Cn(t).isVisible=!0,n=e.appendIfUnique(n,i)),!0}}function ca(t,r){var n;n=177===t.parent.kind||e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)||159===t.parent.kind?1160127:158===t.kind||202===t.kind||263===t.parent.kind?1920:788968;var i=e.getFirstIdentifier(t),a=Fn(r,i.escapedText,n,void 0,void 0,!1);return a&&262144&a.flags&&788968&n?{accessibility:0}:a&&sa(a,!0)||{accessibility:1,errorSymbolName:e.getTextOfNode(i),errorNode:i}}function la(t,r,n,i,a){void 0===i&&(i=4);var o=70221824;2&i&&(o|=128),1&i&&(o|=512),8&i&&(o|=16384),16&i&&(o|=134217728);var s=4&i?re.symbolToExpression:re.symbolToEntityName;return a?c(a).getText():e.usingSingleLineStringWriter(c);function c(i){var a=s(t,n,r,o),c=300===(null==r?void 0:r.kind)?e.createPrinter({removeComments:!0,neverAsciiEscape:!0}):e.createPrinter({removeComments:!0}),l=r&&e.getSourceFileOfNode(r);return c.writeNode(4,a,l,i),i}}function ua(t,r,n,i,a){return void 0===n&&(n=0),a?o(a).getText():e.usingSingleLineStringWriter(o);function o(a){var o;o=262144&n?1===i?176:175:1===i?171:170;var s=re.signatureToSignatureDeclaration(t,o,r,70222336|ga(n)),c=e.createPrinter({removeComments:!0,omitTrailingSemicolon:!0}),l=r&&e.getSourceFileOfNode(r);return c.writeNode(4,s,l,e.getTrailingSemicolonDeferringWriter(a)),a}}function da(t,r,n,i){void 0===n&&(n=1064960),void 0===i&&(i=e.createTextWriter(""));var a=J.noErrorTruncation||1&n,o=re.typeToTypeNode(t,r,70221824|ga(n)|(a?1:0),i);if(void 0===o)return e.Debug.fail("should always get typenode");var s=e.createPrinter({removeComments:!0}),c=r&&e.getSourceFileOfNode(r);s.writeNode(4,o,c,i);var l=i.getText(),u=a?2*e.noTruncationMaximumTruncationLength:2*e.defaultMaximumTruncationLength;return u&&l&&l.length>=u?l.substr(0,u-3)+"...":l}function pa(e,t){var r=ma(e.symbol)?da(e,e.symbol.valueDeclaration):da(e),n=ma(t.symbol)?da(t,t.symbol.valueDeclaration):da(t);return r===n&&(r=fa(e),n=fa(t)),[r,n]}function fa(e){return da(e,void 0,64)}function ma(t){return t&&t.valueDeclaration&&e.isExpression(t.valueDeclaration)&&!Qd(t.valueDeclaration)}function ga(e){return void 0===e&&(e=0),814775659&e}function _a(t){return!!(t.symbol&&32&t.symbol.flags&&(t===Oo(t.symbol)||1073741824&e.getObjectFlags(t)))}function ha(t,r,n,i){return void 0===n&&(n=16384),i?a(i).getText():e.usingSingleLineStringWriter(a);function a(i){var a=e.factory.createTypePredicateNode(2===t.kind||3===t.kind?e.factory.createToken(128):void 0,1===t.kind||3===t.kind?e.factory.createIdentifier(t.parameterName):e.factory.createThisTypeNode(),t.type&&re.typeToTypeNode(t.type,r,70222336|ga(n))),o=e.createPrinter({removeComments:!0}),s=r&&e.getSourceFileOfNode(r);return o.writeNode(4,a,s,i),i}}function ya(e){return 8===e?"private":16===e?"protected":"public"}function va(t){return t&&t.parent&&260===t.parent.kind&&e.isExternalModuleAugmentation(t.parent.parent)}function ba(t){return 300===t.kind||e.isAmbientModule(t)}function ka(t,r){var n=Tn(t).nameType;if(n){if(384&n.flags){var i=""+n.value;return e.isIdentifierText(i,J.target)||R_(i)?R_(i)&&e.startsWith(i,"-")?"["+i+"]":i:'"'+e.escapeString(i,34)+'"'}if(8192&n.flags)return"["+xa(n.symbol,r)+"]"}}function xa(t,r){if(r&&"default"===t.escapedName&&!(16384&r.flags)&&(!(16777216&r.flags)||!t.declarations||r.enclosingDeclaration&&e.findAncestor(t.declarations[0],ba)!==e.findAncestor(r.enclosingDeclaration,ba)))return"default";if(t.declarations&&t.declarations.length){var n=e.firstDefined(t.declarations,(function(t){return e.getNameOfDeclaration(t)?t:void 0})),i=n&&e.getNameOfDeclaration(n);if(n&&i){if(e.isCallExpression(n)&&e.isBindableObjectDefinePropertyCall(n))return e.symbolName(t);if(e.isComputedPropertyName(i)&&!(4096&e.getCheckFlags(t))){var a=Tn(t).nameType;if(a&&384&a.flags){var o=ka(t,r);if(void 0!==o)return o}}return e.declarationNameToString(i)}if(n||(n=t.declarations[0]),n.parent&&251===n.parent.kind)return e.declarationNameToString(n.parent.name);switch(n.kind){case 223:case 209:case 210:return!r||r.encounteredError||131072&r.flags||(r.encounteredError=!0),223===n.kind?"(Anonymous class)":"(Anonymous function)"}}var s=ka(t,r);return void 0!==s?s:e.symbolName(t)}function Sa(t){if(t){var r=Cn(t);return void 0===r.isVisible&&(r.isVisible=!!function(){switch(t.kind){case 327:case 334:case 328:return!!(t.parent&&t.parent.parent&&t.parent.parent.parent&&e.isSourceFile(t.parent.parent.parent));case 199:return Sa(t.parent.parent);case 251:if(e.isBindingPattern(t.name)&&!t.name.elements.length)return!1;case 259:case 254:case 255:case 256:case 257:case 253:case 258:case 263:if(e.isExternalModuleAugmentation(t))return!0;var r=Aa(t);return 1&e.getCombinedModifierFlags(t)||263!==t.kind&&300!==r.kind&&8388608&r.flags?Sa(r):An(r);case 164:case 163:case 168:case 169:case 166:case 165:if(e.hasEffectiveModifier(t,24))return!1;case 167:case 171:case 170:case 172:case 161:case 260:case 175:case 176:case 178:case 174:case 179:case 180:case 183:case 184:case 187:case 193:return Sa(t.parent);case 265:case 266:case 268:return!1;case 160:case 300:case 262:return!0;default:return!1}}()),r.isVisible}return!1}function wa(t,r){var n,i,a;return t.parent&&269===t.parent.kind?n=Fn(t,t.escapedText,2998271,void 0,t,!1):273===t.parent.kind&&(n=ei(t.parent,2998271)),n&&((a=new e.Set).add(R(n)),function t(n){e.forEach(n,(function(n){var o=Jn(n)||n;if(r?Cn(n).isVisible=!0:(i=i||[],e.pushIfUnique(i,o)),e.isInternalModuleImportEqualsDeclaration(n)){var s=n.moduleReference,c=Fn(n,e.getFirstIdentifier(s).escapedText,901119,void 0,void 0,!1);c&&a&&e.tryAddToSet(a,R(c))&&t(c.declarations)}}))}(n.declarations)),i}function Da(e,t){var r=Ea(e,t);if(r>=0){for(var n=Ir.length,i=r;i<n;i++)Fr[i]=!1;return!1}return Ir.push(e),Fr.push(!0),Or.push(t),!0}function Ea(e,t){for(var r=Ir.length-1;r>=0;r--){if(Ta(Ir[r],Or[r]))return-1;if(Ir[r]===e&&Or[r]===t)return r}return-1}function Ta(t,r){switch(r){case 0:return!!Tn(t).type;case 5:return!!Cn(t).resolvedEnumType;case 2:return!!Tn(t).declaredType;case 1:return!!t.resolvedBaseConstructorType;case 3:return!!t.resolvedReturnType;case 4:return!!t.immediateBaseConstraint;case 6:return!!t.resolvedTypeArguments;case 7:return!!t.baseTypesResolved}return e.Debug.assertNever(r)}function Ca(){return Ir.pop(),Or.pop(),Fr.pop()}function Aa(t){return e.findAncestor(e.getRootDeclaration(t),(function(e){switch(e.kind){case 251:case 252:case 268:case 267:case 266:case 265:return!1;default:return!0}})).parent}function Na(e,t){var r=gc(e,t);return r?_o(r):void 0}function Pa(e){return e&&!!(1&e.flags)}function Ia(e){var t=Ai(e);return t&&Tn(t).type||Ua(e,!1)}function Fa(t,r,n){if(131072&(t=ug(t,(function(e){return!(98304&e.flags)}))).flags)return nt;if(1048576&t.flags)return pg(t,(function(e){return Fa(e,r,n)}));var i=ou(e.map(r,vu));if(Ru(t)||Mu(i)){if(131072&i.flags)return t;var a=Zt||(Zt=Cl("Omit",524288,e.Diagnostics.Cannot_find_global_type_0));return a?pl(a,[t,i]):Ee}for(var o=e.createSymbolTable(),s=0,c=Hs(t);s<c.length;s++){var l=c[s];cp(bu(l,8576),i)||24&e.getDeclarationModifierFlagsFromSymbol(l)||!ud(l)||o.set(l.escapedName,dd(l,!1))}var u=bc(t,0),d=bc(t,1),p=Wi(n,o,e.emptyArray,e.emptyArray,u,d);return p.objectFlags|=131072,p}function Oa(e,t){var r=Ra(e);return r?Og(r,t):t}function Ra(t){var r=function(e){var t=e.parent.parent;switch(t.kind){case 199:case 291:return Ra(t);case 200:return Ra(e.parent);case 251:return t.initializer;case 218:return t.right}}(t);if(r&&r.flowNode){var n=function(e){var t=e.parent;if(199===e.kind&&197===t.kind)return Ma(e.propertyName||e.name);if(291===e.kind||292===e.kind)return Ma(e.name);return""+t.elements.indexOf(e)}(t);if(n){var i=e.setTextRange(e.parseNodeFactory.createStringLiteral(n),t),a=e.isLeftHandSideExpression(r)?r:e.parseNodeFactory.createParenthesizedExpression(r),o=e.setTextRange(e.parseNodeFactory.createElementAccessExpression(a,i),t);return e.setParent(i,o),e.setParent(o,t),a!==r&&e.setParent(a,o),o.flowNode=r.flowNode,o}}}function Ma(e){var t=vu(e);return 384&t.flags?""+t.value:void 0}function La(t){var r,n=t.parent,i=Ia(n.parent);if(!i||Pa(i))return i;if(W&&8388608&t.flags&&e.isParameterDeclaration(t)?i=Pf(i):!W||!n.parent.initializer||65536&Vm(eg(n.parent.initializer))||(i=Hm(i,524288)),197===n.kind)if(t.dotDotDotToken){if(2&(i=uc(i)).flags||!z_(i))return pn(t,e.Diagnostics.Rest_types_may_only_be_created_from_object_types),Ee;for(var a=[],o=0,s=n.elements;o<s.length;o++){var c=s[o];c.dotDotDotToken||a.push(c.propertyName||c.name)}r=Fa(i,a,t.symbol)}else{var l=t.propertyName||t.name;r=Oa(t,Ug(qu(i,p=vu(l),void 0,l,void 0,void 0,16),t.name))}else{var u=Ik(65|(t.dotDotDotToken?0:128),i,Ne,n),d=n.elements.indexOf(t);if(t.dotDotDotToken)r=lg(i,vf)?pg(i,(function(e){return $l(e,d)})):jl(u);else if(sf(i)){var p=hd(d),f=N_(t)?8:0;r=Oa(t,Ug(Vu(i,p,void 0,t.name,16|f)||Ee,t.name))}else r=u}return t.initializer?e.getEffectiveTypeAnnotationNode(e.walkUpBindingElementsAndPatterns(t))?!W||32768&Ef(Yv(t))?r:Hm(r,524288):Xv(t,ou([Hm(r,524288),Yv(t)],2)):r}function ja(t){var r=e.getJSDocType(t);if(r)return xd(r)}function Ba(t){var r=e.skipParentheses(t);return 200===r.kind&&0===r.elements.length}function za(e,t){return void 0===t&&(t=!0),W&&t?Nf(e):e}function Ua(t,r){if(e.isVariableDeclaration(t)&&240===t.parent.parent.kind){var n=Su(gh(fb(t.parent.parent.expression)));return 4456448&n.flags?wu(n):Re}if(e.isVariableDeclaration(t)&&241===t.parent.parent.kind)return Pk(t.parent.parent)||Se;if(e.isBindingPattern(t.parent))return La(t);var i,a,o=r&&(e.isParameter(t)&&Dc(t)||Cc(t)||!e.isBindingElement(t)&&!e.isVariableDeclaration(t)&&!!t.questionToken),s=io(t);if(s)return za(s,o);if((X||e.isInJSFile(t))&&e.isVariableDeclaration(t)&&!e.isBindingPattern(t.name)&&!(1&e.getCombinedModifierFlags(t))&&!(8388608&t.flags)){if(!(2&e.getCombinedNodeFlags(t)||t.initializer&&(i=t.initializer,a=e.skipParentheses(i),104!==a.kind&&(78!==a.kind||Am(a)!==ie))))return we;if(t.initializer&&Ba(t.initializer))return Nt}if(e.isParameter(t)){var c=t.parent;if(169===c.kind&&ns(c)){var l=e.getDeclarationOfKind(Ai(t.parent),168);if(l){var u=Ic(l),d=tw(c);return d&&t===d?(e.Debug.assert(!d.type),_o(u.thisParameter)):Bc(u)}}if(e.isInJSFile(t)){var p=e.getJSDocType(c);if(p&&e.isFunctionTypeNode(p)){var f=Ic(p),m=c.parameters.indexOf(t);return t.dotDotDotToken?av(f,m):nv(f,m)}}if(_="this"===t.symbol.escapedName?t_(c):r_(t))return za(_,o)}if(e.hasOnlyExpressionInitializer(t)&&t.initializer){if(e.isInJSFile(t)&&!e.isParameter(t)){var g=Ga(t,Ai(t),e.getDeclaredExpandoInitializer(t));if(g)return g}return za(_=Xv(t,Yv(t)),o)}if(e.isPropertyDeclaration(t)&&!e.hasStaticModifier(t)&&(X||e.isInJSFile(t))){var _,h=Li(t.parent);return(_=h?Ha(t.symbol,h):2&e.getEffectiveModifierFlags(t)?$p(t.symbol):void 0)&&za(_,o)}return e.isJsxAttribute(t)?ze:e.isBindingPattern(t.name)?eo(t.name,!1,!0):void 0}function qa(t){if(t.valueDeclaration&&e.isBinaryExpression(t.valueDeclaration)){var r=Tn(t);return void 0===r.isConstructorDeclaredProperty&&(r.isConstructorDeclaredProperty=!1,r.isConstructorDeclaredProperty=!!Va(t)&&e.every(t.declarations,(function(r){return e.isBinaryExpression(r)&&u_(r)&&(203!==r.left.kind||e.isStringOrNumericLiteralLike(r.left.argumentExpression))&&!$a(void 0,r,t,r)}))),r.isConstructorDeclaredProperty}return!1}function Ja(t){var r=t.valueDeclaration;return r&&e.isPropertyDeclaration(r)&&!e.getEffectiveTypeAnnotationNode(r)&&!r.initializer&&(X||e.isInJSFile(r))}function Va(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r],a=e.getThisContainer(i,!1);if(a&&(167===a.kind||Fy(a)))return a}}function Ha(t,r){var n=e.startsWith(t.escapedName,"__#")?e.factory.createPrivateIdentifier(t.escapedName.split("@")[1]):e.unescapeLeadingUnderscores(t.escapedName),i=e.factory.createPropertyAccessExpression(e.factory.createThis(),n);e.setParent(i.expression,i),e.setParent(i,r),i.flowNode=r.returnFlowNode;var a=Ka(i,t);return!X||a!==we&&a!==Nt||pn(t.valueDeclaration,e.Diagnostics.Member_0_implicitly_has_an_1_type,la(t),da(a)),lg(a,mh)?void 0:vk(a)}function Ka(t,r){var n=r&&(!Ja(r)||2&e.getEffectiveModifierFlags(r.valueDeclaration))&&$p(r)||Ne;return Og(t,we,n)}function Wa(t,r){var n,i=e.getAssignedExpandoInitializer(t.valueDeclaration);if(i){var a=e.getJSDocTypeTag(i);return a&&a.typeExpression?xd(a.typeExpression):Ga(t.valueDeclaration,t,i)||gf($v(i))}var o=!1,s=!1;if(qa(t)&&(n=Ha(t,Va(t))),!n){for(var c=void 0,l=void 0,u=0,d=t.declarations;u<d.length;u++){var p=d[u],f=e.isBinaryExpression(p)||e.isCallExpression(p)?p:e.isAccessExpression(p)?e.isBinaryExpression(p.parent)?p.parent:p:void 0;if(f){var m=e.isAccessExpression(f)?e.getAssignmentDeclarationPropertyAccessKind(f):e.getAssignmentDeclarationKind(f);(4===m||e.isBinaryExpression(f)&&u_(f,m))&&(Xa(f)?o=!0:s=!0),e.isCallExpression(f)||(c=$a(c,f,t,p)),c||(l||(l=[])).push(e.isBinaryExpression(f)||e.isCallExpression(f)?Ya(t,r,f,m):He)}}if(!(n=c)){if(!e.length(l))return Ee;var g=o?function(t,r){return e.Debug.assert(t.length===r.length),t.filter((function(t,n){var i=r[n],a=e.isBinaryExpression(i)?i:e.isBinaryExpression(i.parent)?i.parent:void 0;return a&&Xa(a)}))}(l,t.declarations):void 0;if(s){var _=$p(t);_&&((g||(g=[])).push(_),o=!0)}n=ou(e.some(g,(function(e){return!!(-98305&e.flags)}))?g:l,2)}}var h=Hf(za(n,s&&!o));return ug(h,(function(e){return!!(-98305&e.flags)}))===He?(Gf(t.valueDeclaration,Se),Se):h}function Ga(t,r,n){var i,a;if(e.isInJSFile(t)&&n&&e.isObjectLiteralExpression(n)&&!n.properties.length){for(var o=e.createSymbolTable();e.isBinaryExpression(t)||e.isPropertyAccessExpression(t);){var s=Ai(t);(null===(i=null==s?void 0:s.exports)||void 0===i?void 0:i.size)&&Dn(o,s.exports),t=e.isBinaryExpression(t)?t.parent:t.parent.parent}var c=Ai(t);(null===(a=null==c?void 0:c.exports)||void 0===a?void 0:a.size)&&Dn(o,c.exports);var l=Wi(r,o,e.emptyArray,e.emptyArray,void 0,void 0);return l.objectFlags|=16384,l}}function $a(t,r,n,i){var a=e.getEffectiveTypeAnnotationNode(r.parent);if(a){var o=Hf(xd(a));if(!t)return o;t===Ee||o===Ee||np(t,o)||kk(void 0,t,i,o)}if(n.parent){var s=e.getEffectiveTypeAnnotationNode(n.parent.valueDeclaration);if(s)return Na(xd(s),n.escapedName)}return t}function Ya(t,r,n,i){if(e.isCallExpression(n)){if(r)return _o(r);var a=$v(n.arguments[2]),o=Na(a,"value");if(o)return o;var s=Na(a,"get");if(s){var c=Qh(s);if(c)return Bc(c)}var l=Na(a,"set");if(l){var u=Qh(l);if(u)return dv(u)}return Se}if(function(t,r){return e.isPropertyAccessExpression(t)&&108===t.expression.kind&&e.forEachChildRecursively(r,(function(e){return Im(t,e)}))}(n.left,n.right))return Se;var d=r?_o(r):gf($v(n.right));if(524288&d.flags&&2===i&&"export="===t.escapedName){var p=Us(d),f=e.createSymbolTable();e.copyEntries(p.members,f);var m=f.size;r&&!r.exports&&(r.exports=e.createSymbolTable()),(r||t).exports.forEach((function(t,r){var n,i=f.get(r);if(i&&i!==t)if(111551&t.flags&&111551&i.flags){if(e.getSourceFileOfNode(t.valueDeclaration)!==e.getSourceFileOfNode(i.valueDeclaration)){var a=e.unescapeLeadingUnderscores(t.escapedName),o=(null===(n=e.tryCast(i.valueDeclaration,e.isNamedDeclaration))||void 0===n?void 0:n.name)||i.valueDeclaration;e.addRelatedInfo(pn(t.valueDeclaration,e.Diagnostics.Duplicate_identifier_0,a),e.createDiagnosticForNode(o,e.Diagnostics._0_was_also_declared_here,a)),e.addRelatedInfo(pn(o,e.Diagnostics.Duplicate_identifier_0,a),e.createDiagnosticForNode(t.valueDeclaration,e.Diagnostics._0_was_also_declared_here,a))}var s=yn(t.flags|i.flags,r);s.type=ou([_o(t),_o(i)]),s.valueDeclaration=i.valueDeclaration,s.declarations=e.concatenate(i.declarations,t.declarations),f.set(r,s)}else f.set(r,xn(t,i));else f.set(r,t)}));var g=Wi(m!==f.size?void 0:p.symbol,f,p.callSignatures,p.constructSignatures,p.stringIndexInfo,p.numberIndexInfo);return g.objectFlags|=16384&e.getObjectFlags(d),g.symbol&&32&g.symbol.flags&&d===Oo(g.symbol)&&(g.objectFlags|=1073741824),g}return cf(d)?(Gf(n,At),At):d}function Xa(t){var r=e.getThisContainer(t,!1);return 167===r.kind||253===r.kind||209===r.kind&&!e.isPrototypePropertyAssignment(r.parent)}function Qa(t,r,n){return t.initializer?za(Xv(t,Yv(t,e.isBindingPattern(t.name)?eo(t.name,!0,!1):Ae))):e.isBindingPattern(t.name)?eo(t.name,r,n):(n&&!no(t)&&Gf(t,Se),r?Te:Se)}function Za(t,r,n){var i,a=t.elements,o=e.lastOrUndefined(a),s=o&&199===o.kind&&o.dotDotDotToken?o:void 0;if(0===a.length||1===a.length&&s)return V>=2?(i=Se,Ml(Ol(!0),[i])):At;var c=e.map(a,(function(t){return e.isOmittedExpression(t)?Se:Qa(t,r,n)})),l=e.findLastIndex(a,(function(t){return!(t===s||e.isOmittedExpression(t)||N_(t))}),a.length-1)+1,u=Hl(c,e.map(a,(function(e,t){return e===s?4:t>=l?2:1})));return r&&((u=sl(u)).pattern=t,u.objectFlags|=1048576),u}function eo(t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),197===t.kind?function(t,r,n){var i,a=e.createSymbolTable(),o=1048704;e.forEach(t.elements,(function(e){var t=e.propertyName||e.name;if(e.dotDotDotToken)i=Qc(Se,!1);else{var s=vu(t);if(Zo(s)){var c=is(s),l=yn(4|(e.initializer?16777216:0),c);l.type=Qa(e,r,n),l.bindingElement=e,a.set(l.escapedName,l)}else o|=512}}));var s=Wi(void 0,a,e.emptyArray,e.emptyArray,i,void 0);return s.objectFlags|=o,r&&(s.pattern=t,s.objectFlags|=1048576),s}(t,r,n):Za(t,r,n)}function to(e,t){return ro(Ua(e,!0),e,t)}function ro(t,r,n){return t?(n&&$f(r,t),8192&t.flags&&(e.isBindingElement(r)||!r.type)&&t.symbol!==Ai(r)&&(t=Je),Hf(t)):(t=e.isParameter(r)&&r.dotDotDotToken?At:Se,n&&(no(r)||Gf(r,t)),t)}function no(t){var r=e.getRootDeclaration(t);return Ob(161===r.kind?r.parent:r)}function io(t){var r=e.getEffectiveTypeAnnotationNode(t);if(r)return xd(r)}function ao(t){var r=Tn(t);if(!r.type){var n=function(t){if(4194304&t.flags)return(r=Jo(Ni(t))).typeParameters?ol(r,e.map(r.typeParameters,(function(e){return Se}))):r;var r;if(t===ce)return Se;if(134217728&t.flags){var n=Ai(e.getSourceFileOfNode(t.valueDeclaration)),i=yn(n.flags,"exports");i.declarations=n.declarations?n.declarations.slice():[],i.parent=t,i.target=n,n.valueDeclaration&&(i.valueDeclaration=n.valueDeclaration),n.members&&(i.members=new e.Map(n.members)),n.exports&&(i.exports=new e.Map(n.exports));var a=e.createSymbolTable();return a.set("exports",i),Wi(t,a,e.emptyArray,e.emptyArray,void 0,void 0)}var o,s=t.valueDeclaration;if(e.isCatchClauseVariableDeclarationOrBindingElement(s)){var c=s;if(!c.type)return Se;var l=Xx(c.type);return Pa(l)||l===Ae?l:Ee}if(e.isSourceFile(s)&&e.isJsonSourceFile(s))return s.statements.length?Hf(gf(fb(s.statements[0].expression))):nt;if(!Da(t,0))return 512&t.flags&&!(67108864&t.flags)?fo(t):go(t);if(269===s.kind)o=ro($v(s.expression),s);else if(e.isBinaryExpression(s)||e.isInJSFile(s)&&(e.isCallExpression(s)||(e.isPropertyAccessExpression(s)||e.isBindableStaticElementAccessExpression(s))&&e.isBinaryExpression(s.parent)))o=Wa(t);else if(e.isPropertyAccessExpression(s)||e.isElementAccessExpression(s)||e.isIdentifier(s)||e.isStringLiteralLike(s)||e.isNumericLiteral(s)||e.isClassDeclaration(s)||e.isFunctionDeclaration(s)||e.isMethodDeclaration(s)&&!e.isObjectLiteralMethod(s)||e.isMethodSignature(s)||e.isSourceFile(s)){if(9136&t.flags)return fo(t);o=e.isBinaryExpression(s.parent)?Wa(t):io(s)||Se}else if(e.isPropertyAssignment(s))o=io(s)||tb(s);else if(e.isJsxAttribute(s))o=io(s)||J_(s);else if(e.isShorthandPropertyAssignment(s))o=io(s)||eb(s.name,0);else if(e.isObjectLiteralMethod(s))o=io(s)||rb(s,0);else if(e.isParameter(s)||e.isPropertyDeclaration(s)||e.isPropertySignature(s)||e.isVariableDeclaration(s)||e.isBindingElement(s)||e.isJSDocPropertyLikeTag(s))o=to(s,!0);else if(e.isEnumDeclaration(s))o=fo(t);else if(e.isEnumMember(s))o=mo(t);else{if(!e.isAccessor(s))return e.Debug.fail("Unhandled declaration kind! "+e.Debug.formatSyntaxKind(s.kind)+" for "+e.Debug.formatSymbol(t));o=uo(t)}if(!Ca())return 512&t.flags&&!(67108864&t.flags)?fo(t):go(t);return o}(t);r.type||(r.type=n)}return r.type}function oo(t){if(t)return 168===t.kind?e.getEffectiveReturnTypeNode(t):e.getEffectiveSetAccessorTypeAnnotationNode(t)}function so(e){var t=oo(e);return t&&xd(t)}function co(e){return Lc(Ic(e))}function lo(t){var r=Tn(t);return r.type||(r.type=function(t){if(!Da(t,0))return Ee;var r=uo(t);if(!Ca()){if(r=Se,X)pn(e.getDeclarationOfKind(t,168),e.Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,la(t))}return r}(t))}function uo(t){var r=e.getDeclarationOfKind(t,168),n=e.getDeclarationOfKind(t,169);if(r&&e.isInJSFile(r)){var i=ja(r);if(i)return i}var a=so(r);if(a)return a;var o=so(n);return o||(r&&r.body?vv(r):(n?Ob(n)||mn(X,n,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,la(t)):(e.Debug.assert(!!r,"there must exist a getter as we are current checking either setter or getter in this function"),Ob(r)||mn(X,r,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,la(t))),Se))}function po(t){var r=Ao(Oo(t));return 8650752&r.flags?r:2097152&r.flags?e.find(r.types,(function(e){return!!(8650752&e.flags)})):void 0}function fo(t){var r=Tn(t),n=r;if(!r.type){var i=t.valueDeclaration&&Ry(t.valueDeclaration,!1);if(i){var a=Oy(t,i);a&&(t=r=a)}n.type=r.type=function(t){var r=t.valueDeclaration;if(1536&t.flags&&e.isShorthandAmbientModuleSymbol(t))return Se;if(r&&(218===r.kind||e.isAccessExpression(r)&&218===r.parent.kind))return Wa(t);if(512&t.flags&&r&&e.isSourceFile(r)&&r.commonJsModuleIndicator){var n=vi(t);if(n!==t){if(!Da(t,0))return Ee;var i=Ci(t.exports.get("export=")),a=Wa(i,i===n?void 0:n);return Ca()?a:go(t)}}var o=qi(16,t);if(32&t.flags){var s=po(t);return s?fu([o,s]):o}return W&&16777216&t.flags?Nf(o):o}(t)}return r.type}function mo(e){var t=Tn(e);return t.type||(t.type=Uo(e))}function go(t){var r=t.valueDeclaration;return e.getEffectiveTypeAnnotationNode(r)?(pn(t.valueDeclaration,e.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,la(t)),Ee):(X&&(161!==r.kind||r.initializer)&&pn(t.valueDeclaration,e.Diagnostics._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,la(t)),Se)}function _o(t){var r=e.getCheckFlags(t);return 65536&r?function(t){var r=Tn(t);return r.type||(e.Debug.assertIsDefined(r.deferralParent),e.Debug.assertIsDefined(r.deferralConstituents),r.type=1048576&r.deferralParent.flags?ou(r.deferralConstituents):fu(r.deferralConstituents)),r.type}(t):1&r?function(e){var t=Tn(e);if(!t.type){if(!Da(e,0))return t.type=Ee;var r=Wd(_o(t.target),t.mapper);Ca()||(r=go(e)),t.type=r}return t.type}(t):262144&r?function(t){if(!t.type){var r=t.mappedType;if(!Da(t,0))return r.containsError=!0,Ee;var n=Wd(Fs(r.target||r),Md(r.mapper,Ns(r),t.keyType)),i=W&&16777216&t.flags&&!Rv(n,49152)?Nf(n):524288&t.checkFlags?Hm(n,524288):n;Ca()||(pn(d,e.Diagnostics.Type_of_property_0_circularly_references_itself_in_mapped_type_1,la(t),da(r)),i=Ee),t.type=i}return t.type}(t):8192&r?function(e){return um(e.propertyType,e.mappedType,e.constraintType)}(t):7&t.flags?ao(t):9136&t.flags?fo(t):8&t.flags?mo(t):98304&t.flags?lo(t):2097152&t.flags?function(e){var t=Tn(e);if(!t.type){var r=ai(e);t.type=111551&r.flags?_o(r):Ee}return t.type}(t):Ee}function ho(t,r){return void 0!==t&&void 0!==r&&!!(4&e.getObjectFlags(t))&&t.target===r}function yo(t){return 4&e.getObjectFlags(t)?t.target:t}function vo(t,r){return function t(n){if(7&e.getObjectFlags(n)){var i=yo(n);return i===r||e.some(Po(i),t)}if(2097152&n.flags)return e.some(n.types,t);return!1}(t)}function bo(t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];t=e.appendIfUnique(t,qo(Ai(a)))}return t}function ko(t,r){for(;;){if((t=t.parent)&&e.isBinaryExpression(t)){var n=e.getAssignmentDeclarationKind(t);if(6===n||3===n){var i=Ai(t.left);i&&i.parent&&!e.findAncestor(i.parent.valueDeclaration,(function(e){return t===e}))&&(t=i.parent.valueDeclaration)}}if(!t)return;switch(t.kind){case 234:case 254:case 223:case 256:case 170:case 171:case 165:case 175:case 176:case 311:case 253:case 166:case 209:case 210:case 257:case 333:case 334:case 328:case 327:case 191:case 185:var a=ko(t,r);if(191===t.kind)return e.append(a,qo(Ai(t.typeParameter)));if(185===t.kind)return e.concatenate(a,Zu(t));if(234===t.kind&&!e.isInJSFile(t))break;var o=bo(a,e.getEffectiveTypeParameterDeclarations(t)),s=r&&(254===t.kind||223===t.kind||256===t.kind||Fy(t))&&Oo(Ai(t)).thisType;return s?e.append(o,s):o;case 329:var c=e.getParameterSymbolFromJSDoc(t);c&&(t=c.valueDeclaration)}}}function xo(t){var r=32&t.flags?t.valueDeclaration:e.getDeclarationOfKind(t,256);return e.Debug.assert(!!r,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),ko(r)}function So(t){for(var r,n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(256===a.kind||254===a.kind||223===a.kind||Fy(a)||e.isTypeAlias(a)){var o=a;r=bo(r,e.getEffectiveTypeParameterDeclarations(o))}}return r}function wo(e){var t=hc(e,1);if(1===t.length){var r=t[0];if(!r.typeParameters&&1===r.parameters.length&&U(r)){var n=Qy(r.parameters[0]);return Pa(n)||of(n)===Se}}return!1}function Do(e){if(hc(e,1).length>0)return!0;if(8650752&e.flags){var t=Qs(e);return!!t&&wo(t)}return!1}function Eo(t){return e.getEffectiveBaseTypeNode(t.symbol.valueDeclaration)}function To(t,r,n){var i=e.length(r),a=e.isInJSFile(n);return e.filter(hc(t,1),(function(t){return(a||i>=Nc(t.typeParameters))&&i<=e.length(t.typeParameters)}))}function Co(t,r,n){var i=To(t,r,n),a=e.map(r,xd);return e.sameMap(i,(function(t){return e.some(t.typeParameters)?Jc(t,a,e.isInJSFile(n)):t}))}function Ao(t){if(!t.resolvedBaseConstructorType){var r=t.symbol.valueDeclaration,n=e.getEffectiveBaseTypeNode(r),i=Eo(t);if(!i)return t.resolvedBaseConstructorType=Ne;if(!Da(t,1))return Ee;var a=fb(i.expression);if(n&&i!==n&&(e.Debug.assert(!n.typeArguments),fb(n.expression)),2621440&a.flags&&Us(a),!Ca())return pn(t.symbol.valueDeclaration,e.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,la(t.symbol)),t.resolvedBaseConstructorType=Ee;if(!(1&a.flags||a===Oe||Do(a))){var o=pn(i.expression,e.Diagnostics.Type_0_is_not_a_constructor_function_type,da(a));if(262144&a.flags){var s=tl(a),c=Ae;if(s){var l=hc(s,1);l[0]&&(c=Bc(l[0]))}e.addRelatedInfo(o,e.createDiagnosticForNode(a.symbol.declarations[0],e.Diagnostics.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,la(a.symbol),da(c)))}return t.resolvedBaseConstructorType=Ee}t.resolvedBaseConstructorType=a}return t.resolvedBaseConstructorType}function No(t,r){pn(t,e.Diagnostics.Type_0_recursively_references_itself_as_a_base_type,da(r,void 0,2))}function Po(t){if(!t.baseTypesResolved){if(Da(t,7)&&(8&t.objectFlags?t.resolvedBaseTypes=[Io(t)]:96&t.symbol.flags?(32&t.symbol.flags&&function(t){t.resolvedBaseTypes=e.resolvingEmptyArray;var r=ac(Ao(t));if(!(2621441&r.flags))return t.resolvedBaseTypes=e.emptyArray;var n,i=Eo(t),a=r.symbol?Jo(r.symbol):void 0;if(r.symbol&&32&r.symbol.flags&&function(e){var t=e.outerTypeParameters;if(t){var r=t.length-1,n=ll(e);return t[r].symbol!==n[r].symbol}return!0}(a))n=dl(i,r.symbol);else if(1&r.flags)n=r;else{var o=Co(r,i.typeArguments,i);if(!o.length)return pn(i.expression,e.Diagnostics.No_base_constructor_has_the_specified_number_of_type_arguments),t.resolvedBaseTypes=e.emptyArray;n=Bc(o[0])}if(n===Ee)return t.resolvedBaseTypes=e.emptyArray;var s=uc(n);if(!Fo(s)){var c=mc(void 0,n),l=e.chainDiagnosticMessages(c,e.Diagnostics.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,da(s));return Qr.add(e.createDiagnosticForNodeFromMessageChain(i.expression,l)),t.resolvedBaseTypes=e.emptyArray}if(t===s||vo(s,t))return pn(t.symbol.valueDeclaration,e.Diagnostics.Type_0_recursively_references_itself_as_a_base_type,da(t,void 0,2)),t.resolvedBaseTypes=e.emptyArray;t.resolvedBaseTypes===e.resolvingEmptyArray&&(t.members=void 0);t.resolvedBaseTypes=[s]}(t),64&t.symbol.flags&&function(t){t.resolvedBaseTypes=t.resolvedBaseTypes||e.emptyArray;for(var r=0,n=t.symbol.declarations;r<n.length;r++){var i=n[r];if(256===i.kind&&e.getInterfaceBaseTypeNodes(i))for(var a=0,o=e.getInterfaceBaseTypeNodes(i);a<o.length;a++){var s=o[a],c=uc(xd(s));c!==Ee&&(Fo(c)?t===c||vo(c,t)?No(i,t):t.resolvedBaseTypes===e.emptyArray?t.resolvedBaseTypes=[c]:t.resolvedBaseTypes.push(c):pn(s,e.Diagnostics.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}(t)):e.Debug.fail("type must be class or interface"),!Ca()))for(var r=0,n=t.symbol.declarations;r<n.length;r++){var i=n[r];254!==i.kind&&256!==i.kind||No(i,t)}t.baseTypesResolved=!0}return t.resolvedBaseTypes}function Io(t){return jl(ou(e.sameMap(t.typeParameters,(function(e,r){return 8&t.elementFlags[r]?qu(e,Me):e}))||e.emptyArray),t.readonly)}function Fo(t){if(262144&t.flags){var r=Qs(t);if(r)return Fo(r)}return!!(67633153&t.flags&&!zs(t)||2097152&t.flags&&e.every(t.types,Fo))}function Oo(t){var r,n,i,a,o,s=Tn(t),c=s;if(!s.declaredType){var l=32&t.flags?1:2,u=Oy(t,(r=t.valueDeclaration,i=r&&Ry(r,!0),a=null===(n=null==i?void 0:i.exports)||void 0===n?void 0:n.get("prototype"),(o=(null==a?void 0:a.valueDeclaration)&&function(t){if(!t.parent)return!1;for(var r=t.parent;r&&202===r.kind;)r=r.parent;if(r&&e.isBinaryExpression(r)&&e.isPrototypeAccess(r.left)&&62===r.operatorToken.kind){var n=e.getInitializerOfBinaryExpression(r);return e.isObjectLiteralExpression(n)&&n}}(a.valueDeclaration))?Ai(o):void 0));u&&(t=s=u);var d=c.declaredType=s.declaredType=qi(l,t),p=xo(t),f=So(t);(p||f||1===l||!function(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];if(256===i.kind){if(128&i.flags)return!1;var a=e.getInterfaceBaseTypeNodes(i);if(a)for(var o=0,s=a;o<s.length;o++){var c=s[o];if(e.isEntityNameExpression(c.expression)){var l=fi(c.expression,788968,!0);if(!l||!(64&l.flags)||Oo(l).thisType)return!1}}}}return!0}(t))&&(d.objectFlags|=4,d.typeParameters=e.concatenate(p,f),d.outerTypeParameters=p,d.localTypeParameters=f,d.instantiations=new e.Map,d.instantiations.set(nl(d.typeParameters),d),d.target=d,d.resolvedTypeArguments=d.typeParameters,d.thisType=Ji(t),d.thisType.isThisType=!0,d.thisType.constraint=d)}return s.declaredType}function Ro(t){var r=Tn(t);if(!r.declaredType){if(!Da(t,2))return Ee;var n=e.Debug.checkDefined(e.find(t.declarations,e.isTypeAlias),"Type alias symbol with no valid declaration found"),i=e.isJSDocTypeAlias(n)?n.typeExpression:n.type,a=i?xd(i):Ee;if(Ca()){var o=So(t);o&&(r.typeParameters=o,r.instantiations=new e.Map,r.instantiations.set(nl(o),a))}else a=Ee,pn(e.isNamedDeclaration(n)?n.name:n||n,e.Diagnostics.Type_alias_0_circularly_references_itself,la(t));r.declaredType=a}return r.declaredType}function Mo(t){return!!e.isStringLiteralLike(t)||218===t.kind&&(Mo(t.left)&&Mo(t.right))}function Lo(t){var r=t.initializer;if(!r)return!(8388608&t.flags);switch(r.kind){case 10:case 8:case 14:return!0;case 216:return 40===r.operator&&8===r.operand.kind;case 78:return e.nodeIsMissing(r)||!!Ai(t.parent).exports.get(r.escapedText);case 218:return Mo(r);default:return!1}}function jo(t){var r=Tn(t);if(void 0!==r.enumKind)return r.enumKind;for(var n=!1,i=0,a=t.declarations;i<a.length;i++){var o=a[i];if(258===o.kind)for(var s=0,c=o.members;s<c.length;s++){var l=c[s];if(l.initializer&&e.isStringLiteralLike(l.initializer))return r.enumKind=1;Lo(l)||(n=!0)}}return r.enumKind=n?0:1}function Bo(e){return 1024&e.flags&&!(1048576&e.flags)?Jo(Ni(e.symbol)):e}function zo(e){var t=Tn(e);if(t.declaredType)return t.declaredType;if(1===jo(e)){b++;for(var r=[],n=0,i=e.declarations;n<i.length;n++){var a=i[n];if(258===a.kind)for(var o=0,s=a.members;o<s.length;o++){var c=s[o],l=xS(c),u=md(hd(void 0!==l?l:0,b,Ai(c)));Tn(Ai(c)).declaredType=u,r.push(gd(u))}}if(r.length){var d=ou(r,1,e,void 0);return 1048576&d.flags&&(d.flags|=1024,d.symbol=e),t.declaredType=d}}var p=ji(32);return p.symbol=e,t.declaredType=p}function Uo(e){var t=Tn(e);if(!t.declaredType){var r=zo(Ni(e));t.declaredType||(t.declaredType=r)}return t.declaredType}function qo(e){var t=Tn(e);return t.declaredType||(t.declaredType=Ji(e))}function Jo(e){return Vo(e)||Ee}function Vo(e){return 96&e.flags?Oo(e):524288&e.flags?Ro(e):262144&e.flags?qo(e):384&e.flags?zo(e):8&e.flags?Uo(e):2097152&e.flags?function(e){var t=Tn(e);return t.declaredType||(t.declaredType=Jo(ai(e)))}(e):void 0}function Ho(e){switch(e.kind){case 129:case 153:case 148:case 145:case 156:case 132:case 149:case 146:case 114:case 151:case 142:case 192:return!0;case 179:return Ho(e.elementType);case 174:return!e.typeArguments||e.typeArguments.every(Ho)}return!1}function Ko(t){var r=e.getEffectiveConstraintOfTypeParameter(t);return!r||Ho(r)}function Wo(t){var r=e.getEffectiveTypeAnnotationNode(t);return r?Ho(r):!e.hasInitializer(t)}function Go(t){if(t.declarations&&1===t.declarations.length){var r=t.declarations[0];if(r)switch(r.kind){case 164:case 163:return Wo(r);case 166:case 165:case 167:case 168:case 169:return n=r,i=e.getEffectiveReturnTypeNode(n),a=e.getEffectiveTypeParameterDeclarations(n),(167===n.kind||!!i&&Ho(i))&&n.parameters.every(Wo)&&a.every(Ko)}}var n,i,a;return!1}function $o(t,r,n){for(var i=e.createSymbolTable(),a=0,o=t;a<o.length;a++){var s=o[a];i.set(s.escapedName,n&&Go(s)?s:Bd(s,r))}return i}function Yo(e,t){for(var r=0,n=t;r<n.length;r++){var i=n[r];e.has(i.escapedName)||Xo(i)||e.set(i.escapedName,i)}}function Xo(t){return!!t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration)&&e.hasSyntacticModifier(t.valueDeclaration,32)}function Qo(t){if(!t.declaredProperties){var r=t.symbol,n=ss(r);t.declaredProperties=Hi(n),t.declaredCallSignatures=e.emptyArray,t.declaredConstructSignatures=e.emptyArray,t.declaredCallSignatures=Rc(n.get("__call")),t.declaredConstructSignatures=Rc(n.get("__new")),t.declaredStringIndexInfo=Zc(r,0),t.declaredNumberIndexInfo=Zc(r,1)}return t}function Zo(e){return!!(8576&e.flags)}function es(t){if(!e.isComputedPropertyName(t)&&!e.isElementAccessExpression(t))return!1;var r=e.isComputedPropertyName(t)?t.expression:t.argumentExpression;return e.isEntityNameExpression(r)&&Zo(e.isComputedPropertyName(t)?M_(t):$v(r))}function ts(e){return 95===e.charCodeAt(0)&&95===e.charCodeAt(1)&&64===e.charCodeAt(2)}function rs(t){var r=e.getNameOfDeclaration(t);return!!r&&es(r)}function ns(t){return!e.hasDynamicName(t)||rs(t)}function is(t){return 8192&t.flags?t.escapedName:384&t.flags?e.escapeLeadingUnderscores(""+t.value):e.Debug.fail()}function as(t,r,n,i){e.Debug.assert(!!i.symbol,"The member is expected to have a symbol.");var a=Cn(i);if(!a.resolvedSymbol){a.resolvedSymbol=i.symbol;var o=e.isBinaryExpression(i)?i.left:i.name,s=e.isElementAccessExpression(o)?$v(o.argumentExpression):M_(o);if(Zo(s)){var c=is(s),l=i.symbol.flags,u=n.get(c);u||n.set(c,u=yn(0,c,4096));var d=r&&r.get(c);if(u.flags&vn(l)||d){var p=d?e.concatenate(d.declarations,u.declarations):u.declarations,f=!(8192&s.flags)&&e.unescapeLeadingUnderscores(c)||e.declarationNameToString(o);e.forEach(p,(function(t){return pn(e.getNameOfDeclaration(t)||t,e.Diagnostics.Property_0_was_also_declared_here,f)})),pn(o||i,e.Diagnostics.Duplicate_property_0,f),u=yn(0,c,4096)}return u.nameType=s,function(t,r,n){e.Debug.assert(!!(4096&e.getCheckFlags(t)),"Expected a late-bound symbol."),t.flags|=n,Tn(r.symbol).lateSymbol=t,t.declarations?t.declarations.push(r):t.declarations=[r],111551&n&&(t.valueDeclaration&&t.valueDeclaration.kind===r.kind||(t.valueDeclaration=r))}(u,i,l),u.parent?e.Debug.assert(u.parent===t,"Existing symbol parent should match new one"):u.parent=t,a.resolvedSymbol=u}}return a.resolvedSymbol}function os(t,r){var n=Tn(t);if(!n[r]){var i="resolvedExports"===r,a=i?1536&t.flags?Ti(t):t.exports:t.members;n[r]=a||T;for(var o=e.createSymbolTable(),s=0,c=t.declarations||e.emptyArray;s<c.length;s++){var l=c[s],u=e.getMembersOfDeclaration(l);if(u)for(var d=0,p=u;d<p.length;d++){var f=p[d];i===e.hasStaticModifier(f)&&rs(f)&&as(t,a,o,f)}}var m=t.assignmentDeclarationMembers;if(m)for(var g=0,_=e.arrayFrom(m.values());g<_.length;g++){f=_[g];var h=e.getAssignmentDeclarationKind(f);i===!(3===h||e.isBinaryExpression(f)&&u_(f,h)||9===h||6===h)&&rs(f)&&as(t,a,o,f)}n[r]=function(t,r){if(!(null==t?void 0:t.size))return r;if(!(null==r?void 0:r.size))return t;var n=e.createSymbolTable();return Dn(n,t),Dn(n,r),n}(a,o)||T}return n[r]}function ss(e){return 6256&e.flags?os(e,"resolvedMembers"):e.members||T}function cs(t){if(106500&t.flags&&"__computed"===t.escapedName){var r=Tn(t);if(!r.lateSymbol&&e.some(t.declarations,rs)){var n=Ci(t.parent);e.some(t.declarations,e.hasStaticModifier)?wi(n):ss(n)}return r.lateSymbol||(r.lateSymbol=t)}return t}function ls(t,r,n){if(4&e.getObjectFlags(t)){var i=t.target,a=ll(t);if(e.length(i.typeParameters)===e.length(a)){var o=ol(i,e.concatenate(a,[r||i.thisType]));return n?ac(o):o}}else if(2097152&t.flags){var s=e.sameMap(t.types,(function(e){return ls(e,r,n)}));return s!==t.types?fu(s):t}return n?ac(t):t}function us(t,r,n,i){var a,o,s,c,l,u;e.rangeEquals(n,i,0,n.length)?(o=r.symbol?ss(r.symbol):e.createSymbolTable(r.declaredProperties),s=r.declaredCallSignatures,c=r.declaredConstructSignatures,l=r.declaredStringIndexInfo,u=r.declaredNumberIndexInfo):(a=Td(n,i),o=$o(r.declaredProperties,a,1===n.length),s=Ed(r.declaredCallSignatures,a),c=Ed(r.declaredConstructSignatures,a),l=Xd(r.declaredStringIndexInfo,a),u=Xd(r.declaredNumberIndexInfo,a));var d=Po(r);if(d.length){r.symbol&&o===ss(r.symbol)&&(o=e.createSymbolTable(r.declaredProperties)),Ki(t,o,s,c,l,u);for(var p=e.lastOrUndefined(i),f=0,m=d;f<m.length;f++){var g=m[f],_=p?ls(Wd(g,a),p):g;Yo(o,Hs(_)),s=e.concatenate(s,hc(_,0)),c=e.concatenate(c,hc(_,1)),l||(l=_===Se?Qc(Se,!1):bc(_,0)),u=u||bc(_,1)}}Ki(t,o,s,c,l,u)}function ds(e,t,r,n,i,a,o,s){var c=new h(le,s);return c.declaration=e,c.typeParameters=t,c.parameters=n,c.thisParameter=r,c.resolvedReturnType=i,c.resolvedTypePredicate=a,c.minArgumentCount=o,c.resolvedMinArgumentCount=void 0,c.target=void 0,c.mapper=void 0,c.unionSignatures=void 0,c}function ps(e){var t=ds(e.declaration,e.typeParameters,e.thisParameter,e.parameters,void 0,void 0,e.minArgumentCount,39&e.flags);return t.target=e.target,t.mapper=e.mapper,t.unionSignatures=e.unionSignatures,t}function fs(e,t){var r=ps(e);return r.unionSignatures=t,r.target=void 0,r.mapper=void 0,r}function ms(t,r){if((24&t.flags)===r)return t;t.optionalCallSignatureCache||(t.optionalCallSignatureCache={});var n=8===r?"inner":"outer";return t.optionalCallSignatureCache[n]||(t.optionalCallSignatureCache[n]=function(t,r){e.Debug.assert(8===r||16===r,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");var n=ps(t);return n.flags|=r,n}(t,r))}function gs(t,r){if(U(t)){var n=t.parameters.length-1,i=_o(t.parameters[n]);if(vf(i))return[a(i,n)];if(!r&&1048576&i.flags&&e.every(i.types,vf))return e.map(i.types,(function(e){return a(e,n)}))}return[t.parameters];function a(r,n){var i=ll(r),a=r.target.labeledElementDeclarations,o=e.map(i,(function(e,i){var o=!!a&&Zy(a[i])||ev(t,n+i,r),s=r.target.elementFlags[i],c=yn(1,o,12&s?32768:2&s?16384:0);return c.type=4&s?jl(e):e,c}));return e.concatenate(t.parameters.slice(0,n),o)}}function _s(e,t,r,n,i){for(var a=0,o=e;a<o.length;a++){var s=o[a];if(ef(s,t,r,n,i,r?op:ip))return s}}function hs(t,r,n){if(r.typeParameters){if(n>0)return;for(var i=1;i<t.length;i++)if(!_s(t[i],r,!1,!1,!1))return;return[r]}var a;for(i=0;i<t.length;i++){var o=i===n?r:_s(t[i],r,!0,!1,!0);if(!o)return;a=e.appendIfUnique(a,o)}return a}function ys(t){for(var r,n,i=0;i<t.length;i++){if(0===t[i].length)return e.emptyArray;t[i].length>1&&(n=void 0===n?i:-1);for(var a=0,o=t[i];a<o.length;a++){var s=o[a];if(!r||!_s(r,s,!1,!1,!0)){var c=hs(t,s,i);if(c){var l=s;if(c.length>1){var u=s.thisParameter,d=e.forEach(c,(function(e){return e.thisParameter}));if(d)u=jf(d,fu(e.mapDefined(c,(function(e){return e.thisParameter&&_o(e.thisParameter)}))));(l=fs(s,c)).thisParameter=u}(r||(r=[])).push(l)}}}}if(!e.length(r)&&-1!==n){for(var p=t[void 0!==n?n:0],f=p.slice(),m=function(t){if(t!==p){var r=t[0];if(e.Debug.assert(!!r,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),f=r.typeParameters&&e.some(f,(function(e){return!!e.typeParameters&&!function(e,t){if(e.length!==t.length)return!1;for(var r=Td(t,e),n=0;n<e.length;n++){var i=e[n],a=t[n];if(i!==a&&!np(tl(i)||Ae,Wd(tl(a)||Ae,r)))return!1}return!0}(r.typeParameters,e.typeParameters)}))?void 0:e.map(f,(function(t){return function(t,r){var n,i=t.typeParameters||r.typeParameters;t.typeParameters&&r.typeParameters&&(n=Td(r.typeParameters,t.typeParameters));var a=t.declaration,o=function(e,t,r){for(var n=ov(e),i=ov(t),a=n>=i?e:t,o=a===e?t:e,s=a===e?n:i,c=cv(e)||cv(t),l=c&&!cv(a),u=new Array(s+(l?1:0)),d=0;d<s;d++){var p=iv(a,d);a===t&&(p=Wd(p,r));var f=iv(o,d)||Ae;o===t&&(f=Wd(f,r));var m=fu([p,f]),g=c&&!l&&d===s-1,_=d>=sv(a)&&d>=sv(o),h=d>=n?void 0:ev(e,d),y=d>=i?void 0:ev(t,d),v=yn(1|(_&&!g?16777216:0),(h===y?h:h?y?void 0:h:y)||"arg"+d);v.type=g?jl(m):m,u[d]=v}if(l){var b=yn(1,"args");b.type=jl(nv(o,s)),o===t&&(b.type=Wd(b.type,r)),u[s]=b}return u}(t,r,n),s=function(e,t,r){if(!e||!t)return e||t;var n=fu([_o(e),Wd(_o(t),r)]);return jf(e,n)}(t.thisParameter,r.thisParameter,n),c=Math.max(t.minArgumentCount,r.minArgumentCount),l=ds(a,i,s,o,void 0,void 0,c,39&(t.flags|r.flags));l.unionSignatures=e.concatenate(t.unionSignatures||[t],[r]),n&&(l.mapper=t.mapper&&t.unionSignatures?Fd(t.mapper,n):n);return l}(t,r)})),!f)return"break"}},g=0,_=t;g<_.length;g++){if("break"===m(_[g]))break}r=f}return r||e.emptyArray}function vs(e,t){for(var r=[],n=!1,i=0,a=e;i<a.length;i++){var o=bc(ac(a[i]),t);if(!o)return;r.push(o.type),n=n||o.isReadonly}return Qc(ou(r,2),n)}function bs(e,t){return e?t?fu([e,t]):e:t}function ks(e,t){return e?t?Qc(fu([e.type,t.type]),e.isReadonly&&t.isReadonly):e:t}function xs(e,t){return e&&t&&Qc(ou([e.type,t.type]),e.isReadonly||t.isReadonly)}function Ss(t){var r=e.countWhere(t,(function(e){return hc(e,1).length>0})),n=e.map(t,wo);if(r>0&&r===e.countWhere(n,(function(e){return e}))){var i=n.indexOf(!0);n[i]=!1}return n}function ws(t){for(var r,n,i,a,o=t.types,s=Ss(o),c=e.countWhere(s,(function(e){return e})),l=function(l){var u=t.types[l];if(!s[l]){var d=hc(u,1);d.length&&c>0&&(d=e.map(d,(function(e){var t=ps(e);return t.resolvedReturnType=function(e,t,r,n){for(var i=[],a=0;a<t.length;a++)a===n?i.push(e):r[a]&&i.push(Bc(hc(t[a],1)[0]));return fu(i)}(Bc(e),o,s,l),t}))),n=Ds(n,d)}r=Ds(r,hc(u,0)),i=ks(i,bc(u,0)),a=ks(a,bc(u,1))},u=0;u<o.length;u++)l(u);Ki(t,T,r||e.emptyArray,n||e.emptyArray,i,a)}function Ds(t,r){for(var n=function(r){t&&!e.every(t,(function(e){return!ef(e,r,!1,!1,!1,ip)}))||(t=e.append(t,r))},i=0,a=r;i<a.length;i++){n(a[i])}return t}function Es(t){var r=Ci(t.symbol);if(t.target)Ki(t,T,e.emptyArray,e.emptyArray,void 0,void 0),Ki(t,a=$o(qs(t.target),t.mapper,!1),n=Ed(hc(t.target,0),t.mapper),i=Ed(hc(t.target,1),t.mapper),o=Xd(bc(t.target,0),t.mapper),l=Xd(bc(t.target,1),t.mapper));else if(2048&r.flags){Ki(t,T,e.emptyArray,e.emptyArray,void 0,void 0);var n=Rc((a=ss(r)).get("__call")),i=Rc(a.get("__new"));Ki(t,a,n,i,o=Zc(r,0),l=Zc(r,1))}else{var a=T,o=void 0;if(r.exports&&(a=wi(r),r===ae)){var s=new e.Map;a.forEach((function(e){418&e.flags||s.set(e.escapedName,e)})),a=s}if(Ki(t,a,e.emptyArray,e.emptyArray,void 0,void 0),32&r.flags){var c=Ao(Oo(r));11272192&c.flags?Yo(a=e.createSymbolTable(Hi(a)),Hs(c)):c===Se&&(o=Qc(Se,!1))}var l=384&r.flags&&(32&Jo(r).flags||e.some(t.properties,(function(e){return!!(296&_o(e).flags)})))?fr:void 0;if(Ki(t,a,e.emptyArray,e.emptyArray,o,l),8208&r.flags&&(t.callSignatures=Rc(r)),32&r.flags){var u=Oo(r);i=r.members?Rc(r.members.get("__constructor")):e.emptyArray;16&r.flags&&(i=e.addRange(i.slice(),e.mapDefined(t.callSignatures,(function(e){return Fy(e.declaration)?ds(e.declaration,e.typeParameters,e.thisParameter,e.parameters,u,void 0,e.minArgumentCount,39&e.flags):void 0})))),i.length||(i=function(t){var r=hc(Ao(t),1),n=e.getClassLikeDeclarationOfSymbol(t.symbol),i=!!n&&e.hasSyntacticModifier(n,128);if(0===r.length)return[ds(void 0,t.localTypeParameters,void 0,e.emptyArray,t,void 0,0,i?4:0)];for(var a=Eo(t),o=e.isInJSFile(a),s=wl(a),c=e.length(s),l=[],u=0,d=r;u<d.length;u++){var p=d[u],f=Nc(p.typeParameters),m=e.length(p.typeParameters);if(o||c>=f&&c<=m){var g=m?Hc(p,Pc(s,p.typeParameters,f,o)):ps(p);g.typeParameters=t.localTypeParameters,g.resolvedReturnType=t,g.flags=i?4|g.flags:-5&g.flags,l.push(g)}}return l}(u)),t.constructSignatures=i}}}function Ts(t){if(4194304&t.flags){var r=ac(t.type);return bf(r)?Yl(r):Su(r)}if(16777216&t.flags){if(t.root.isDistributive){var n=t.checkType,i=Ts(n);if(i!==n)return Kd(t,Rd(t.root.checkType,i,t.mapper))}return t}return 1048576&t.flags?pg(t,Ts):2097152&t.flags?fu(e.sameMap(t.types,Ts)):t}function Cs(t){return 4096&e.getCheckFlags(t)}function As(t){var r,n,i=e.createSymbolTable();Ki(t,T,e.emptyArray,e.emptyArray,void 0,void 0);var a=Ns(t),o=Ps(t),s=Is(t.target||t),c=Fs(t.target||t),l=ac(Ms(t)),u=Ls(t),d=Z?128:8576;if(Rs(t)){for(var p=0,f=Hs(l);p<f.length;p++){m(bu(f[p],d))}(1&l.flags||bc(l,0))&&m(Re),!Z&&bc(l,1)&&m(Me)}else cg(Ts(o),m);function m(e){cg(s?Wd(s,Md(t.mapper,a,e)):e,(function(o){return function(e,o){if(Zo(o)){var s=is(o),d=i.get(s);if(d)d.nameType=ou([d.nameType,o]),d.keyType=ou([d.keyType,e]);else{var p=Zo(e)?gc(l,is(e)):void 0,f=!!(4&u||!(8&u)&&p&&16777216&p.flags),m=!!(1&u||!(2&u)&&p&&Nv(p)),g=W&&!f&&p&&16777216&p.flags,_=yn(4|(f?16777216:0),s,262144|(p?Cs(p):0)|(m?8:0)|(g?524288:0));_.mappedType=t,_.nameType=o,_.keyType=e,p&&(_.syntheticOrigin=p,_.declarations=p.declarations),i.set(s,_)}}else if(45&o.flags){var h=Wd(c,Md(t.mapper,a,e));5&o.flags?r=Qc(r?ou([r.type,h]):h,!!(1&u)):n=Qc(n?ou([n.type,h]):h,!!(1&u))}}(e,o)}))}Ki(t,i,e.emptyArray,e.emptyArray,r,n)}function Ns(e){return e.typeParameter||(e.typeParameter=qo(Ai(e.declaration.typeParameter)))}function Ps(e){return e.constraintType||(e.constraintType=Ws(Ns(e))||Ee)}function Is(e){return e.declaration.nameType?e.nameType||(e.nameType=Wd(xd(e.declaration.nameType),e.mapper)):void 0}function Fs(e){return e.templateType||(e.templateType=e.declaration.type?Wd(za(xd(e.declaration.type),!!(4&Ls(e))),e.mapper):Ee)}function Os(t){return e.getEffectiveConstraintOfTypeParameter(t.declaration.typeParameter)}function Rs(e){var t=Os(e);return 189===t.kind&&139===t.operator}function Ms(e){if(!e.modifiersType)if(Rs(e))e.modifiersType=Wd(xd(Os(e).type),e.mapper);else{var t=Ps(Ku(e.declaration)),r=t&&262144&t.flags?Ws(t):t;e.modifiersType=r&&4194304&r.flags?Wd(r.type,e.mapper):Ae}return e.modifiersType}function Ls(e){var t=e.declaration;return(t.readonlyToken?40===t.readonlyToken.kind?2:1:0)|(t.questionToken?40===t.questionToken.kind?8:4:0)}function js(e){var t=Ls(e);return 8&t?-1:4&t?1:0}function Bs(e){var t=js(e),r=Ms(e);return t||(zs(r)?js(r):0)}function zs(t){return!!(32&e.getObjectFlags(t))&&Mu(Ps(t))}function Us(t){return t.members||(524288&t.flags?4&t.objectFlags?function(t){var r=Qo(t.target),n=e.concatenate(r.typeParameters,[r.thisType]),i=ll(t);us(t,r,n,i.length===n.length?i:e.concatenate(i,[t]))}(t):3&t.objectFlags?function(t){us(t,Qo(t),e.emptyArray,e.emptyArray)}(t):2048&t.objectFlags?function(t){for(var r=bc(t.source,0),n=Ls(t.mappedType),i=!(1&n),a=4&n?0:16777216,o=r&&Qc(um(r.type,t.mappedType,t.constraintType),i&&r.isReadonly),s=e.createSymbolTable(),c=0,l=Hs(t.source);c<l.length;c++){var u=l[c],d=8192|(i&&Nv(u)?8:0),p=yn(4|u.flags&a,u.escapedName,d);p.declarations=u.declarations,p.nameType=Tn(u).nameType,p.propertyType=_o(u),p.mappedType=t.mappedType,p.constraintType=t.constraintType,s.set(u.escapedName,p)}Ki(t,s,e.emptyArray,e.emptyArray,o,void 0)}(t):16&t.objectFlags?Es(t):32&t.objectFlags&&As(t):1048576&t.flags?function(t){var r=ys(e.map(t.types,(function(e){return e===vt?[ur]:hc(e,0)}))),n=ys(e.map(t.types,(function(e){return hc(e,1)}))),i=vs(t.types,0),a=vs(t.types,1);Ki(t,T,r,n,i,a)}(t):2097152&t.flags&&ws(t)),t}function qs(t){return 524288&t.flags?Us(t).properties:e.emptyArray}function Js(e,t){if(524288&e.flags){var r=Us(e).members.get(t);if(r&&Mi(r))return r}}function Vs(t){if(!t.resolvedProperties){for(var r=e.createSymbolTable(),n=0,i=t.types;n<i.length;n++){for(var a=i[n],o=0,s=Hs(a);o<s.length;o++){var c=s[o];if(!r.has(c.escapedName)){var l=lc(t,c.escapedName);l&&r.set(c.escapedName,l)}}if(1048576&t.flags&&!bc(a,0)&&!bc(a,1))break}t.resolvedProperties=Hi(r)}return t.resolvedProperties}function Hs(e){return 3145728&(e=oc(e)).flags?Vs(e):qs(e)}function Ks(e){return 262144&e.flags?Ws(e):8388608&e.flags?function(e){return ec(e)?function(e){var t=Gs(e.indexType);if(t&&t!==e.indexType){var r=Vu(e.objectType,t,e.noUncheckedIndexedAccessCandidate);if(r)return r}var n=Gs(e.objectType);if(n&&n!==e.objectType)return Vu(n,e.indexType,e.noUncheckedIndexedAccessCandidate);return}(e):void 0}(e):16777216&e.flags?function(e){return ec(e)?Xs(e):void 0}(e):Qs(e)}function Ws(e){return ec(e)?tl(e):void 0}function Gs(e){var t=ju(e,!1);return t!==e?t:Ks(e)}function $s(e){if(!e.resolvedDefaultConstraint){var t=function(e){return e.resolvedInferredTrueType||(e.resolvedInferredTrueType=e.combinedMapper?Wd(xd(e.root.node.trueType),e.combinedMapper):Xu(e))}(e),r=Qu(e);e.resolvedDefaultConstraint=Pa(t)?r:Pa(r)?t:ou([t,r])}return e.resolvedDefaultConstraint}function Ys(e){if(e.root.isDistributive&&e.restrictiveInstantiation!==e){var t=ju(e.checkType,!1),r=t===e.checkType?Ks(t):t;if(r&&r!==e.checkType){var n=Kd(e,Rd(e.root.checkType,r,e.mapper));if(!(131072&n.flags))return n}}}function Xs(e){return Ys(e)||$s(e)}function Qs(e){if(464781312&e.flags){var t=tc(e);return t!==lt&&t!==ut?t:void 0}return 4194304&e.flags?Qe:void 0}function Zs(e){return Qs(e)||e}function ec(e){return tc(e)!==ut}function tc(t){if(t.resolvedBaseConstraint)return t.resolvedBaseConstraint;var r=[];return t.resolvedBaseConstraint=ls(n(t),t);function n(t){if(!t.immediateBaseConstraint){if(!Da(t,4))return ut;var n=void 0;if((r.length<10||r.length<50&&!Yp(t,r,r.length))&&(r.push(t),n=function(t){if(262144&t.flags){var r=tl(t);return t.isThisType||!r?r:i(r)}if(3145728&t.flags){for(var n=[],a=!1,o=0,s=u=t.types;o<s.length;o++){var c=s[o],l=i(c);l?(l!==c&&(a=!0),n.push(l)):a=!0}return a?1048576&t.flags&&n.length===u.length?ou(n):2097152&t.flags&&n.length?fu(n):void 0:t}if(4194304&t.flags)return Qe;if(134217728&t.flags){var u=t.types,d=e.mapDefined(u,i);return d.length===u.length?Du(t.texts,d):Re}if(268435456&t.flags){return(r=i(t.type))?Tu(t.symbol,r):Re}if(8388608&t.flags){var p=i(t.objectType),f=i(t.indexType),m=p&&f&&Vu(p,f,t.noUncheckedIndexedAccessCandidate);return m&&i(m)}if(16777216&t.flags){return(r=Xs(t))&&i(r)}if(33554432&t.flags)return i(t.substitute);return t}(ju(t,!1)),r.pop()),!Ca()){if(262144&t.flags){var a=el(t);if(a){var o=pn(a,e.Diagnostics.Type_parameter_0_has_a_circular_constraint,da(t));!d||e.isNodeDescendantOf(a,d)||e.isNodeDescendantOf(d,a)||e.addRelatedInfo(o,e.createDiagnosticForNode(d,e.Diagnostics.Circularity_originates_in_type_at_this_location))}}n=ut}t.immediateBaseConstraint=n||lt}return t.immediateBaseConstraint}function i(e){var t=n(e);return t!==lt&&t!==ut?t:void 0}}function rc(t){if(t.default)t.default===dt&&(t.default=ut);else if(t.target){var r=rc(t.target);t.default=r?Wd(r,t.mapper):lt}else{t.default=dt;var n=t.symbol&&e.forEach(t.symbol.declarations,(function(t){return e.isTypeParameterDeclaration(t)&&t.default})),i=n?xd(n):lt;t.default===dt&&(t.default=i)}return t.default}function nc(e){var t=rc(e);return t!==lt&&t!==ut?t:void 0}function ic(e){return e.resolvedApparentType||(e.resolvedApparentType=function(e){var t=Ud(e);if(t&&!e.declaration.nameType){var r=Ws(t);if(r&&(rf(r)||vf(r)))return Wd(e,Rd(t,r,e.mapper))}return e}(e))}function ac(t){var r,n=465829888&t.flags?Qs(t)||Ae:t;return 32&e.getObjectFlags(n)?ic(n):2097152&n.flags?function(e){return e.resolvedApparentType||(e.resolvedApparentType=ls(e,e,!0))}(n):402653316&n.flags?wt:296&n.flags?Dt:2112&n.flags?(r=V>=7,er||(er=Al("BigInt",0,r))||nt):528&n.flags?Et:12288&n.flags?Pl(V>=2):67108864&n.flags?nt:4194304&n.flags?Qe:2&n.flags&&!W?nt:n}function oc(e){return uc(ac(uc(e)))}function sc(t,r,n){for(var i,a,o,s=1048576&t.flags,c=s?0:16777216,l=4,u=0,d=0,p=t.types;d<p.length;d++){if(!((D=ac(p[d]))===Ee||131072&D.flags)){var f=(w=gc(D,r,n))?e.getDeclarationModifierFlagsFromSymbol(w):0;if(w){if(s?c|=16777216&w.flags:c&=w.flags,i){if(w!==i){a||(a=new e.Map).set(R(i),i);var m=R(w);a.has(m)||a.set(m,w)}}else i=w;u|=(Nv(w)?8:0)|(24&f?0:256)|(16&f?512:0)|(8&f?1024:0)|(32&f?2048:0),uh(w)||(l=2)}else if(s){var g=!ts(r)&&(R_(r)&&bc(D,1)||bc(D,0));g?(u|=32|(g.isReadonly?8:0),o=e.append(o,vf(D)?xf(D)||Ne:g.type)):km(D)?(u|=32,o=e.append(o,Ne)):u|=16}}}if(i&&!(s&&(a||48&u)&&1536&u)){if(!(a||16&u||o))return i;for(var _,h,y,v,b=[],k=!1,x=0,S=a?e.arrayFrom(a.values()):[i];x<S.length;x++){var w=S[x];v?w.valueDeclaration&&w.valueDeclaration!==v&&(k=!0):v=w.valueDeclaration,_=e.addRange(_,w.declarations);var D=_o(w);h?D!==h&&(u|=64):(h=D,y=Tn(w).nameType),ff(D)&&(u|=128),131072&D.flags&&(u|=131072),b.push(D)}e.addRange(b,o);var E=yn(4|c,r,l|u);return E.containingType=t,!k&&v&&(E.valueDeclaration=v,v.symbol.parent&&(E.parent=v.symbol.parent)),E.declarations=_,E.nameType=y,b.length>2?(E.checkFlags|=65536,E.deferralParent=t,E.deferralConstituents=b):E.type=s?ou(b):fu(b),E}}function cc(t,r,n){var i,a,o=(null===(i=t.propertyCacheWithoutObjectFunctionPropertyAugment)||void 0===i?void 0:i.get(r))||!n?null===(a=t.propertyCache)||void 0===a?void 0:a.get(r):void 0;o||(o=sc(t,r,n))&&(n?t.propertyCacheWithoutObjectFunctionPropertyAugment||(t.propertyCacheWithoutObjectFunctionPropertyAugment=e.createSymbolTable()):t.propertyCache||(t.propertyCache=e.createSymbolTable())).set(r,o);return o}function lc(t,r,n){var i=cc(t,r,n);return!i||16&e.getCheckFlags(i)?void 0:i}function uc(t){return 1048576&t.flags&&268435456&t.objectFlags?t.resolvedReducedType||(t.resolvedReducedType=function(t){var r=e.sameMap(t.types,uc);if(r===t.types)return t;var n=ou(r);1048576&n.flags&&(n.resolvedReducedType=n);return n}(t)):2097152&t.flags?(268435456&t.objectFlags||(t.objectFlags|=268435456|(e.some(Vs(t),dc)?536870912:0)),536870912&t.objectFlags?He:t):t}function dc(e){return pc(e)||fc(e)}function pc(t){return!(16777216&t.flags||192!=(131264&e.getCheckFlags(t))||!(131072&_o(t).flags))}function fc(t){return!t.valueDeclaration&&!!(1024&e.getCheckFlags(t))}function mc(t,r){if(536870912&e.getObjectFlags(r)){var n=e.find(Vs(r),pc);if(n)return e.chainDiagnosticMessages(t,e.Diagnostics.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,da(r,void 0,536870912),la(n));var i=e.find(Vs(r),fc);if(i)return e.chainDiagnosticMessages(t,e.Diagnostics.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,da(r,void 0,536870912),la(i))}return t}function gc(e,t,r){if(524288&(e=oc(e)).flags){var n=Us(e),i=n.members.get(t);if(i&&Mi(i))return i;if(r)return;var a=n===ct?vt:n.callSignatures.length?bt:n.constructSignatures.length?kt:void 0;if(a){var o=Js(a,t);if(o)return o}return Js(yt,t)}if(3145728&e.flags)return lc(e,t,r)}function _c(t,r){if(3670016&t.flags){var n=Us(t);return 0===r?n.callSignatures:n.constructSignatures}return e.emptyArray}function hc(e,t){return _c(oc(e),t)}function yc(e,t){if(3670016&e.flags){var r=Us(e);return 0===t?r.stringIndexInfo:r.numberIndexInfo}}function vc(e,t){var r=yc(e,t);return r&&r.type}function bc(e,t){return yc(oc(e),t)}function kc(e,t){return vc(oc(e),t)}function xc(t,r){if(Lf(t)){for(var n=[],i=0,a=Hs(t);i<a.length;i++){var o=a[i];(0===r||R_(o.escapedName))&&n.push(_o(o))}if(0===r&&e.append(n,kc(t,1)),n.length)return ou(n)}}function Sc(t){for(var r,n=0,i=e.getEffectiveTypeParameterDeclarations(t);n<i.length;n++){var a=i[n];r=e.appendIfUnique(r,qo(a.symbol))}return r}function wc(e){var t=[];return e.forEach((function(e,r){Vi(r)||t.push(e)})),t}function Dc(t){return e.isInJSFile(t)&&(t.type&&310===t.type.kind||e.getJSDocParameterTags(t).some((function(e){var t=e.isBracketed,r=e.typeExpression;return t||!!r&&310===r.type.kind})))}function Ec(t,r){if(!e.isExternalModuleNameRelative(t)){var n=Nn(ne,'"'+t+'"',512);return n&&r?Ci(n):n}}function Tc(t){if(e.hasQuestionToken(t)||Cc(t)||Dc(t))return!0;if(t.initializer){var r=Ic(t.parent),n=t.parent.parameters.indexOf(t);return e.Debug.assert(n>=0),n>=sv(r,3)}var i=e.getImmediatelyInvokedFunctionExpression(t.parent);return!!i&&(!t.type&&!t.dotDotDotToken&&t.parent.parameters.indexOf(t)>=i.arguments.length)}function Cc(t){if(!e.isJSDocPropertyLikeTag(t))return!1;var r=t.isBracketed,n=t.typeExpression;return r||!!n&&310===n.type.kind}function Ac(e,t,r,n){return{kind:e,parameterName:t,parameterIndex:r,type:n}}function Nc(t){var r,n=0;if(t)for(var i=0;i<t.length;i++)(r=t[i]).symbol&&e.forEach(r.symbol.declarations,(function(t){return e.isTypeParameterDeclaration(t)&&t.default}))||(n=i+1);return n}function Pc(t,r,n,i){var a=e.length(r);if(!a)return[];var o=e.length(t);if(i||o>=n&&o<=a){for(var s=t?t.slice():[],c=o;c<a;c++)s[c]=Ee;var l=Em(i);for(c=o;c<a;c++){var u=nc(r[c]);i&&u&&(np(u,Ae)||np(u,nt))&&(u=Se),s[c]=u?Wd(u,Td(r,s)):l}return s.length=r.length,s}return t&&t.slice()}function Ic(t){var r,n=Cn(t);if(!n.resolvedSignature){var i=[],a=0,o=0,s=void 0,c=!1,l=e.getImmediatelyInvokedFunctionExpression(t),u=e.isJSDocConstructSignature(t);!l&&e.isInJSFile(t)&&e.isValueSignatureDeclaration(t)&&!e.hasJSDocParameterTags(t)&&!e.getJSDocType(t)&&(a|=32);for(var d=u?1:0;d<t.parameters.length;d++){var p=t.parameters[d],f=p.symbol,m=e.isJSDocParameterTag(p)?p.typeExpression&&p.typeExpression.type:p.type;if(f&&4&f.flags&&!e.isBindingPattern(p.name))f=Fn(p,f.escapedName,111551,void 0,void 0,!1);0===d&&f&&"this"===f.escapedName?(c=!0,s=p.symbol):i.push(f),m&&192===m.kind&&(a|=2),Cc(p)||p.initializer||p.questionToken||p.dotDotDotToken||l&&i.length>l.arguments.length&&!m||Dc(p)||(o=i.length)}if((168===t.kind||169===t.kind)&&ns(t)&&(!c||!s)){var g=168===t.kind?169:168,_=e.getDeclarationOfKind(Ai(t),g);_&&(s=(r=tw(_))&&r.symbol)}var h=167===t.kind?Oo(Ci(t.parent.symbol)):void 0,y=h?h.localTypeParameters:Sc(t);(e.hasRestParameter(t)||e.isInJSFile(t)&&function(t,r){if(e.isJSDocSignature(t)||!Oc(t))return!1;var n=e.lastOrUndefined(t.parameters),i=n?e.getJSDocParameterTags(n):e.getJSDocTags(t).filter(e.isJSDocParameterTag),a=e.firstDefined(i,(function(t){return t.typeExpression&&e.isJSDocVariadicType(t.typeExpression.type)?t.typeExpression.type:void 0})),o=yn(3,"args",32768);o.type=a?jl(xd(a.type)):At,a&&r.pop();return r.push(o),!0}(t,i))&&(a|=1),(e.isConstructorTypeNode(t)&&e.hasSyntacticModifier(t,128)||e.isConstructorDeclaration(t)&&e.hasSyntacticModifier(t.parent,128))&&(a|=4),n.resolvedSignature=ds(t,y,s,i,void 0,void 0,o,a)}return n.resolvedSignature}function Fc(t){if(e.isInJSFile(t)&&e.isFunctionLikeDeclaration(t)){var r=e.getJSDocTypeTag(t),n=r&&r.typeExpression&&Qh(xd(r.typeExpression));return n&&Kc(n)}}function Oc(t){var r=Cn(t);return void 0===r.containsArgumentsReference&&(8192&r.flags?r.containsArgumentsReference=!0:r.containsArgumentsReference=function t(r){if(!r)return!1;switch(r.kind){case 78:return r.escapedText===se.escapedName&&Am(r)===se;case 164:case 166:case 168:case 169:return 159===r.name.kind&&t(r.name);case 202:case 203:return t(r.expression);default:return!e.nodeStartsNewLexicalEnvironment(r)&&!e.isPartOfTypeNode(r)&&!!e.forEachChild(r,t)}}(t.body)),r.containsArgumentsReference}function Rc(t){if(!t)return e.emptyArray;for(var r=[],n=0;n<t.declarations.length;n++){var i=t.declarations[n];if(e.isFunctionLike(i)){if(n>0&&i.body){var a=t.declarations[n-1];if(i.parent===a.parent&&i.kind===a.kind&&i.pos===a.end)continue}r.push(Ic(i))}}return r}function Mc(e){var t=gi(e,e);if(t){var r=vi(t);if(r)return _o(r)}return Se}function Lc(e){if(e.thisParameter)return _o(e.thisParameter)}function jc(t){if(!t.resolvedTypePredicate){if(t.target){var r=jc(t.target);t.resolvedTypePredicate=r?(o=r,s=t.mapper,Ac(o.kind,o.parameterName,o.parameterIndex,Wd(o.type,s))):cr}else if(t.unionSignatures)t.resolvedTypePredicate=function(e){for(var t,r=[],n=0,i=e;n<i.length;n++){var a=jc(i[n]);if(a&&2!==a.kind&&3!==a.kind){if(t){if(!su(t,a))return}else t=a;r.push(a.type)}}if(!t)return;var o=ou(r);return Ac(t.kind,t.parameterName,t.parameterIndex,o)}(t.unionSignatures)||cr;else{var n=t.declaration&&e.getEffectiveReturnTypeNode(t.declaration),i=void 0;if(!n&&e.isInJSFile(t.declaration)){var a=Fc(t.declaration);a&&t!==a&&(i=jc(a))}t.resolvedTypePredicate=n&&e.isTypePredicateNode(n)?function(t,r){var n=t.parameterName,i=t.type&&xd(t.type);return 188===n.kind?Ac(t.assertsModifier?2:0,void 0,void 0,i):Ac(t.assertsModifier?3:1,n.escapedText,e.findIndex(r.parameters,(function(e){return e.escapedName===n.escapedText})),i)}(n,t):i||cr}e.Debug.assert(!!t.resolvedTypePredicate)}var o,s;return t.resolvedTypePredicate===cr?void 0:t.resolvedTypePredicate}function Bc(t){if(!t.resolvedReturnType){if(!Da(t,3))return Ee;var r=t.target?Wd(Bc(t.target),t.mapper):t.unionSignatures?Wd(ou(e.map(t.unionSignatures,Bc),2),t.mapper):zc(t.declaration)||(e.nodeIsMissing(t.declaration.body)?Se:vv(t.declaration));if(8&t.flags?r=If(r):16&t.flags&&(r=Nf(r)),!Ca()){if(t.declaration){var n=e.getEffectiveReturnTypeNode(t.declaration);if(n)pn(n,e.Diagnostics.Return_type_annotation_circularly_references_itself);else if(X){var i=t.declaration,a=e.getNameOfDeclaration(i);a?pn(a,e.Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,e.declarationNameToString(a)):pn(i,e.Diagnostics.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}r=Se}t.resolvedReturnType=r}return t.resolvedReturnType}function zc(t){if(167===t.kind)return Oo(Ci(t.parent.symbol));if(e.isJSDocConstructSignature(t))return xd(t.parameters[0].type);var r,n=e.getEffectiveReturnTypeNode(t);if(n)return xd(n);if(168===t.kind&&ns(t)){var i=e.isInJSFile(t)&&ja(t);if(i)return i;var a=so(e.getDeclarationOfKind(Ai(t),169));if(a)return a}return(r=Fc(t))&&Bc(r)}function Uc(e){return!e.resolvedReturnType&&Ea(e,3)>=0}function qc(e){if(U(e)){var t=_o(e.parameters[e.parameters.length-1]),r=vf(t)?xf(t):t;return r&&kc(r,1)}}function Jc(e,t,r,n){var i=Vc(e,Pc(t,e.typeParameters,Nc(e.typeParameters),r));if(n){var a=Zh(Bc(i));if(a){var o=ps(a);o.typeParameters=n;var s=ps(i);return s.resolvedReturnType=$c(o),s}}return i}function Vc(t,r){var n=t.instantiations||(t.instantiations=new e.Map),i=nl(r),a=n.get(i);return a||n.set(i,a=Hc(t,r)),a}function Hc(e,t){return jd(e,function(e,t){return Td(e.typeParameters,t)}(e,t),!0)}function Kc(e){return e.typeParameters?e.erasedSignatureCache||(e.erasedSignatureCache=function(e){return jd(e,Id(e.typeParameters),!0)}(e)):e}function Wc(t){return t.typeParameters?t.canonicalSignatureCache||(t.canonicalSignatureCache=function(t){return Jc(t,e.map(t.typeParameters,(function(e){return e.target&&!Ws(e.target)?e.target:e})),e.isInJSFile(t.declaration))}(t)):t}function Gc(t){var r=t.typeParameters;if(r){var n=Id(r);return jd(t,Td(r,e.map(r,(function(e){return Wd(Qs(e),n)||Ae}))),!0)}return t}function $c(t){if(!t.isolatedSignatureType){var r=t.declaration?t.declaration.kind:0,n=167===r||171===r||176===r,i=qi(16);i.members=T,i.properties=e.emptyArray,i.callSignatures=n?e.emptyArray:[t],i.constructSignatures=n?[t]:e.emptyArray,t.isolatedSignatureType=i}return t.isolatedSignatureType}function Yc(e){return e.members.get("__index")}function Xc(t,r){var n=1===r?145:148,i=Yc(t);if(i)for(var a=0,o=i.declarations;a<o.length;a++){var s=o[a],c=e.cast(s,e.isIndexSignatureDeclaration);if(1===c.parameters.length){var l=c.parameters[0];if(l.type&&l.type.kind===n)return c}}}function Qc(e,t,r){return{type:e,isReadonly:t,declaration:r}}function Zc(t,r){var n=Xc(t,r);if(n)return Qc(n.type?xd(n.type):Se,e.hasEffectiveModifier(n,64),n)}function el(t){return e.mapDefined(e.filter(t.symbol&&t.symbol.declarations,e.isTypeParameterDeclaration),e.getEffectiveConstraintOfTypeParameter)[0]}function tl(t){if(!t.constraint)if(t.target){var r=Ws(t.target);t.constraint=r?Wd(r,t.mapper):lt}else{var n=el(t);if(n){var i=xd(n);1&i.flags&&i!==Ee&&(i=191===n.parent.parent.kind?Qe:Ae),t.constraint=i}else t.constraint=function(t){var r;if(t.symbol)for(var n=0,i=t.symbol.declarations;n<i.length;n++){var a=i[n];if(186===a.parent.kind){var o=e.walkUpParenthesizedTypesAndGetParentAndChild(a.parent.parent),s=o[0],c=void 0===s?a.parent:s,l=o[1];if(174===l.kind){var u=l,d=Nb(u);if(d){var p=u.typeArguments.indexOf(c);if(p<d.length){var f=Ws(d[p]);if(f){var m=Wd(f,Td(d,Cb(u,d)));m!==t&&(r=e.append(r,m))}}}}else 161===l.kind&&l.dotDotDotToken||182===l.kind||193===l.kind&&l.dotDotDotToken?r=e.append(r,jl(Ae)):195===l.kind?r=e.append(r,Re):160===l.kind&&191===l.parent.kind&&(r=e.append(r,Qe))}}return r&&fu(r)}(t)||lt}return t.constraint===lt?void 0:t.constraint}function rl(t){var r=e.getDeclarationOfKind(t.symbol,160),n=e.isJSDocTemplateTag(r.parent)?e.getHostSignatureFromJSDoc(r.parent):r.parent;return n&&Ai(n)}function nl(e){var t="";if(e)for(var r=e.length,n=0;n<r;){for(var i=e[n].id,a=1;n+a<r&&e[n+a].id===i+a;)a++;t.length&&(t+=","),t+=i,a>1&&(t+=":"+a),n+=a}return t}function il(e,t){return e?"@"+R(e)+(t?":"+nl(t):""):""}function al(t,r){for(var n=0,i=0,a=t;i<a.length;i++){var o=a[i];o.flags&r||(n|=e.getObjectFlags(o))}return 3670016&n}function ol(e,t){var r=nl(t),n=e.instantiations.get(r);return n||(n=qi(4,e.symbol),e.instantiations.set(r,n),n.objectFlags|=t?al(t,0):0,n.target=e,n.resolvedTypeArguments=t),n}function sl(e){var t=ji(e.flags);return t.symbol=e.symbol,t.objectFlags=e.objectFlags,t.target=e.target,t.resolvedTypeArguments=e.resolvedTypeArguments,t}function cl(e,t,r,n,i){if(!n){var a=ad(n=id(t));i=r?Dd(a,r):a}var o=qi(4,e.symbol);return o.target=e,o.node=t,o.mapper=r,o.aliasSymbol=n,o.aliasTypeArguments=i,o}function ll(t){var r,n;if(!t.resolvedTypeArguments){if(!Da(t,6))return(null===(r=t.target.localTypeParameters)||void 0===r?void 0:r.map((function(){return Ee})))||e.emptyArray;var i=t.node,a=i?174===i.kind?e.concatenate(t.target.outerTypeParameters,Cb(i,t.target.localTypeParameters)):179===i.kind?[xd(i.elementType)]:e.map(i.elements,xd):e.emptyArray;Ca()?t.resolvedTypeArguments=t.mapper?Dd(a,t.mapper):a:(t.resolvedTypeArguments=(null===(n=t.target.localTypeParameters)||void 0===n?void 0:n.map((function(){return Ee})))||e.emptyArray,pn(t.node||d,t.target.symbol?e.Diagnostics.Type_arguments_for_0_circularly_reference_themselves:e.Diagnostics.Tuple_type_arguments_circularly_reference_themselves,t.target.symbol&&la(t.target.symbol)))}return t.resolvedTypeArguments}function ul(t){return e.length(t.target.typeParameters)}function dl(t,r){var n=Jo(Ci(r)),i=n.localTypeParameters;if(i){var a=e.length(t.typeArguments),o=Nc(i),s=e.isInJSFile(t);if(!(!X&&s)&&(a<o||a>i.length)){var c=s&&e.isExpressionWithTypeArguments(t)&&!e.isJSDocAugmentsTag(t.parent);if(pn(t,o===i.length?c?e.Diagnostics.Expected_0_type_arguments_provide_these_with_an_extends_tag:e.Diagnostics.Generic_type_0_requires_1_type_argument_s:c?e.Diagnostics.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:e.Diagnostics.Generic_type_0_requires_between_1_and_2_type_arguments,da(n,void 0,2),o,i.length),!s)return Ee}return 174===t.kind&&ql(t,e.length(t.typeArguments)!==i.length)?cl(n,t,void 0):ol(n,e.concatenate(n.outerTypeParameters,Pc(wl(t),i,o,s)))}return kl(t,r)?n:Ee}function pl(t,r,n,i){var a=Jo(t);if(a===Ce&&P.has(t.escapedName)&&r&&1===r.length)return Tu(t,r[0]);var o=Tn(t),s=o.typeParameters,c=nl(r)+il(n,i),l=o.instantiations.get(c);return l||o.instantiations.set(c,l=Gd(a,Td(s,Pc(r,s,Nc(s),e.isInJSFile(t.valueDeclaration))),n,i)),l}function fl(t){switch(t.kind){case 174:return t.typeName;case 225:var r=t.expression;if(e.isEntityNameExpression(r))return r}}function ml(e,t,r){return e&&fi(e,t,r)||ke}function gl(t,r){if(r===ke)return Ee;if(96&(r=function(t){var r=t.valueDeclaration;if(r&&e.isInJSFile(r)&&!(524288&t.flags)&&!e.getExpandoInitializer(r,!1)){var n=e.isVariableDeclaration(r)?e.getDeclaredExpandoInitializer(r):e.getAssignedExpandoInitializer(r);if(n){var i=Ai(n);if(i)return Oy(i,t)}}}(r)||r).flags)return dl(t,r);if(524288&r.flags)return function(t,r){var n=Jo(r),i=Tn(r).typeParameters;if(i){var a=e.length(t.typeArguments),o=Nc(i);if(a<o||a>i.length)return pn(t,o===i.length?e.Diagnostics.Generic_type_0_requires_1_type_argument_s:e.Diagnostics.Generic_type_0_requires_between_1_and_2_type_arguments,la(r),o,i.length),Ee;var s=id(t);return pl(r,wl(t),s,ad(s))}return kl(t,r)?n:Ee}(t,r);var n=Vo(r);if(n)return kl(t,r)?gd(n):Ee;if(111551&r.flags&&bl(t)){var i=function(e,t){var r=Cn(e);if(!r.resolvedJSDocType){var n=_o(t),i=n;if(t.valueDeclaration){var a=196===e.kind&&e.qualifier;n.symbol&&n.symbol!==t&&a&&(i=gl(e,n.symbol))}r.resolvedJSDocType=i}return r.resolvedJSDocType}(t,r);return i||(ml(fl(t),788968),_o(r))}return Ee}function _l(e,t){if(3&t.flags||t===e)return e;var r=Zl(e)+">"+Zl(t),n=ye.get(r);if(n)return n;var i=ji(33554432);return i.baseType=e,i.substitute=t,ye.set(r,i),i}function hl(e){return 180===e.kind&&1===e.elements.length}function yl(e,t,r){return hl(t)&&hl(r)?yl(e,t.elements[0],r.elements[0]):Wu(xd(t))===e?xd(r):void 0}function vl(t,r){for(var n;r&&!e.isStatement(r)&&314!==r.kind;){var i=r.parent;if(185===i.kind&&r===i.trueType){var a=yl(t,i.checkType,i.extendsType);a&&(n=e.append(n,a))}r=i}return n?_l(t,fu(e.append(n,t))):t}function bl(e){return!!(4194304&e.flags)&&(174===e.kind||196===e.kind)}function kl(t,r){return!t.typeArguments||(pn(t,e.Diagnostics.Type_0_is_not_generic,r?la(r):t.typeName?e.declarationNameToString(t.typeName):l),!1)}function xl(t){if(e.isIdentifier(t.typeName)){var r=t.typeArguments;switch(t.typeName.escapedText){case"String":return kl(t),Re;case"Number":return kl(t),Me;case"Boolean":return kl(t),qe;case"Void":return kl(t),Ve;case"Undefined":return kl(t),Ne;case"Null":return kl(t),Fe;case"Function":case"function":return kl(t),vt;case"array":return r&&r.length||X?void 0:At;case"promise":return r&&r.length||X?void 0:_v(Se);case"Object":if(r&&2===r.length){if(e.isJSDocIndexSignature(t)){var n=xd(r[0]),i=Qc(xd(r[1]),!1);return Wi(void 0,T,e.emptyArray,e.emptyArray,n===Re?i:void 0,n===Me?i:void 0)}return Se}return kl(t),X?void 0:Se}}}function Sl(t){var r=Cn(t);if(!r.resolvedType){if(e.isConstTypeReference(t)&&e.isAssertionExpression(t.parent))return r.resolvedSymbol=ke,r.resolvedType=$v(t.parent.expression);var n=void 0,i=void 0,a=788968;bl(t)&&((i=xl(t))||((n=ml(fl(t),a,!0))===ke?n=ml(fl(t),900095):ml(fl(t),a),i=gl(t,n))),i||(i=gl(t,n=ml(fl(t),a))),r.resolvedSymbol=n,r.resolvedType=i}return r.resolvedType}function wl(t){return e.map(t.typeArguments,xd)}function Dl(e){var t=Cn(e);return t.resolvedType||(t.resolvedType=gd(Hf(fb(e.exprName)))),t.resolvedType}function El(t,r){function n(e){for(var t=0,r=e.declarations;t<r.length;t++){var n=r[t];switch(n.kind){case 254:case 256:case 258:return n}}}if(!t)return r?st:nt;var i=Jo(t);return 524288&i.flags?e.length(i.typeParameters)!==r?(pn(n(t),e.Diagnostics.Global_type_0_must_have_1_type_parameter_s,e.symbolName(t),r),r?st:nt):i:(pn(n(t),e.Diagnostics.Global_type_0_must_be_a_class_or_interface_type,e.symbolName(t)),r?st:nt)}function Tl(t,r){return Cl(t,111551,r?e.Diagnostics.Cannot_find_global_value_0:void 0)}function Cl(e,t,r){return Fn(void 0,e,t,r,e,!1)}function Al(t,r,n){var i=function(t,r){return Cl(t,788968,r?e.Diagnostics.Cannot_find_global_type_0:void 0)}(t,n);return i||n?El(i,r):void 0}function Nl(e){return Ft||(Ft=Tl("Symbol",e))}function Pl(e){return Ot||(Ot=Al("Symbol",0,e))||nt}function Il(e){return Mt||(Mt=Al("Promise",1,e))||st}function Fl(e){return jt||(jt=Tl("Promise",e))}function Ol(e){return zt||(zt=Al("Iterable",1,e))||st}function Rl(e,t){void 0===t&&(t=0);var r=Cl(e,788968,void 0);return r&&El(r,t)}function Ml(e,t){return e!==st?ol(e,t):nt}function Ll(e){return Ml(Rt||(Rt=Al("TypedPropertyDescriptor",1,!0))||st,[e])}function jl(e,t){return Ml(t?St:xt,[e])}function Bl(e){switch(e.kind){case 181:return 2;case 182:return zl(e);case 193:return e.questionToken?2:e.dotDotDotToken?zl(e):1;default:return 1}}function zl(e){return kd(e.type)?4:8}function Ul(t){var r=function(t){return e.isTypeOperatorNode(t)&&143===t.operator}(t.parent);return kd(t)?r?St:xt:Kl(e.map(t.elements,Bl),r,e.some(t.elements,(function(e){return 193!==e.kind}))?void 0:t.elements)}function ql(t,r){return!!id(t)||Jl(t)&&(179===t.kind?Vl(t.elementType):180===t.kind?e.some(t.elements,Vl):r||e.some(t.typeArguments,Vl))}function Jl(e){var t=e.parent;switch(t.kind){case 187:case 193:case 174:case 183:case 184:case 190:case 185:case 189:case 179:case 180:return Jl(t);case 257:return!0}return!1}function Vl(t){switch(t.kind){case 174:return bl(t)||!!(524288&ml(t.typeName,788968).flags);case 177:return!0;case 189:return 152!==t.operator&&Vl(t.type);case 187:case 181:case 193:case 310:case 308:case 309:case 304:return Vl(t.type);case 182:return 179!==t.type.kind||Vl(t.type.elementType);case 183:case 184:return e.some(t.types,Vl);case 190:return Vl(t.objectType)||Vl(t.indexType);case 185:return Vl(t.checkType)||Vl(t.extendsType)||Vl(t.trueType)||Vl(t.falseType)}return!1}function Hl(t,r,n,i){void 0===n&&(n=!1);var a=Kl(r||e.map(t,(function(e){return 1})),n,i);return a===st?nt:t.length?Wl(a,t):a}function Kl(t,r,n){if(1===t.length&&4&t[0])return r?St:xt;var i=e.map(t,(function(e){return 1&e?"#":2&e?"?":4&e?".":"*"})).join()+(r?"R":"")+(n&&n.length?","+e.map(n,O).join(","):""),a=de.get(i);return a||de.set(i,a=function(t,r,n){var i,a=t.length,o=e.countWhere(t,(function(e){return!!(9&e)})),s=[],c=0;if(a){i=new Array(a);for(var l=0;l<a;l++){var u=i[l]=Ji(),d=t[l];if(!(12&(c|=d))){var p=yn(4|(2&d?16777216:0),""+l,r?8:0);p.tupleLabelDeclaration=null==n?void 0:n[l],p.type=u,s.push(p)}}}var f=s.length,m=yn(4,"length");if(12&c)m.type=Me;else{var g=[];for(l=o;l<=a;l++)g.push(hd(l));m.type=ou(g)}s.push(m);var _=qi(12);return _.typeParameters=i,_.outerTypeParameters=void 0,_.localTypeParameters=i,_.instantiations=new e.Map,_.instantiations.set(nl(_.typeParameters),_),_.target=_,_.resolvedTypeArguments=_.typeParameters,_.thisType=Ji(),_.thisType.isThisType=!0,_.thisType.constraint=_,_.declaredProperties=s,_.declaredCallSignatures=e.emptyArray,_.declaredConstructSignatures=e.emptyArray,_.declaredStringIndexInfo=void 0,_.declaredNumberIndexInfo=void 0,_.elementFlags=t,_.minLength=o,_.fixedLength=f,_.hasRestElement=!!(12&c),_.combinedFlags=c,_.readonly=r,_.labeledElementDeclarations=n,_}(t,r,n)),a}function Wl(e,t){return 8&e.objectFlags?Gl(e,t):ol(e,t)}function Gl(t,r){var n,i,a;if(!(14&t.combinedFlags))return ol(t,r);if(8&t.combinedFlags){var o=e.findIndex(r,(function(e,r){return!!(8&t.elementFlags[r]&&1179648&e.flags)}));if(o>=0)return gu(e.map(r,(function(e,r){return 8&t.elementFlags[r]?e:Ae})))?pg(r[o],(function(n){return Gl(t,e.replaceElement(r,o,n))})):Ee}for(var s=[],c=[],l=[],u=-1,p=-1,f=-1,m=function(o){var c=r[o],l=t.elementFlags[o];if(8&l)if(58982400&c.flags||zs(c))y(c,8,null===(n=t.labeledElementDeclarations)||void 0===n?void 0:n[o]);else if(vf(c)){var u=ll(c);if(u.length+s.length>=1e4)return pn(d,e.isPartOfTypeNode(d)?e.Diagnostics.Type_produces_a_tuple_type_that_is_too_large_to_represent:e.Diagnostics.Expression_produces_a_tuple_type_that_is_too_large_to_represent),{value:Ee};e.forEach(u,(function(e,t){var r;return y(e,c.target.elementFlags[t],null===(r=c.target.labeledElementDeclarations)||void 0===r?void 0:r[t])}))}else y(sf(c)&&kc(c,1)||Ee,4,null===(i=t.labeledElementDeclarations)||void 0===i?void 0:i[o]);else y(c,l,null===(a=t.labeledElementDeclarations)||void 0===a?void 0:a[o])},g=0;g<r.length;g++){var _=m(g);if("object"==typeof _)return _.value}for(g=0;g<u;g++)2&c[g]&&(c[g]=1);p>=0&&p<f&&(s[p]=ou(e.sameMap(s.slice(p,f+1),(function(e,t){return 8&c[p+t]?qu(e,Me):e}))),s.splice(p+1,f-p),c.splice(p+1,f-p),null==l||l.splice(p+1,f-p));var h=Kl(c,t.readonly,l);return h===st?nt:c.length?ol(h,s):h;function y(e,t,r){1&t&&(u=c.length),4&t&&p<0&&(p=c.length),6&t&&(f=c.length),s.push(e),c.push(t),l&&r?l.push(r):l=void 0}}function $l(t,r,n){void 0===n&&(n=0);var i=t.target,a=ul(t)-n;return r>i.fixedLength?function(e){var t=xf(e);return t&&jl(t)}(t)||Hl(e.emptyArray):Hl(ll(t).slice(r,a),i.elementFlags.slice(r,a),!1,i.labeledElementDeclarations&&i.labeledElementDeclarations.slice(r,a))}function Yl(t){return ou(e.append(e.arrayOf(t.target.fixedLength,(function(e){return hd(""+e)})),Su(t.target.readonly?St:xt)))}function Xl(t,r){var n=e.findIndex(t.elementFlags,(function(e){return!(e&r)}));return n>=0?n:t.elementFlags.length}function Ql(t,r){return t.elementFlags.length-e.findLastIndex(t.elementFlags,(function(e){return!(e&r)}))-1}function Zl(e){return e.id}function eu(t,r){return e.binarySearch(t,r,Zl,e.compareValues)>=0}function tu(t,r){var n=e.binarySearch(t,r,Zl,e.compareValues);return n<0&&(t.splice(~n,0,r),!0)}function ru(t,r,n){var i=n.flags;if(1048576&i)return nu(t,r|(function(e){return!!(1048576&e.flags&&(e.aliasSymbol||e.origin))}(n)?1048576:0),n.types);if(!(131072&i))if(r|=205258751&i,469499904&i&&(r|=262144),n===De&&(r|=8388608),!W&&98304&i)524288&e.getObjectFlags(n)||(r|=4194304);else{var a=t.length,o=a&&n.id>t[a-1].id?~a:e.binarySearch(t,n,Zl,e.compareValues);o<0&&t.splice(~o,0,n)}return r}function nu(e,t,r){for(var n=0,i=r;n<i.length;n++){t=ru(e,t,i[n])}return t}function iu(t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];if(1048576&a.flags){var o=a.origin;a.aliasSymbol||o&&!(1048576&o.flags)?e.pushIfUnique(t,a):o&&1048576&o.flags&&iu(t,o.types)}}}function au(e,t){var r=Bi(e);return r.types=t,r}function ou(t,r,n,i,a){if(void 0===r&&(r=1),0===t.length)return He;if(1===t.length)return t[0];var o=[],s=nu(o,0,t);if(0!==r){if(3&s)return 1&s?8388608&s?De:Se:Ae;if(3&r&&((11136&s||16384&s&&32768&s)&&function(t,r,n){for(var i=t.length;i>0;){var a=t[--i],o=a.flags;(128&o&&4&r||256&o&&8&r||2048&o&&64&r||8192&o&&4096&r||n&&32768&o&&16384&r||_d(a)&&eu(t,a.regularType))&&e.orderedRemoveItemAt(t,i)}}(o,s,!!(2&r)),128&s&&134217728&s&&function(t){var r=e.filter(t,Ou);if(r.length)for(var n=t.length,i=function(){n--;var i=t[n];128&i.flags&&e.some(r,(function(e){return sp(i,e)}))&&e.orderedRemoveItemAt(t,n)};n>0;)i()}(o)),2&r&&!function(t,r){for(var n=r&&e.some(t,(function(e){return!!(524288&e.flags)&&!zs(e)&&Dp(Us(e))})),i=t.length,a=i,o=0;a>0;){var s=t[--a];if(n||469499904&s.flags)for(var c=0,l=t;c<l.length;c++){var u=l[c];if(s!==u){if(1e5===o&&o/(i-a)*i>1e6)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","removeSubtypes_DepthLimit",{typeIds:t.map((function(e){return e.id}))}),pn(d,e.Diagnostics.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1;if(o++,Pp(s,u,nn)&&(!(1&e.getObjectFlags(yo(s)))||!(1&e.getObjectFlags(yo(u)))||lp(s,u))){e.orderedRemoveItemAt(t,a);break}}}}return!0}(o,!!(524288&s)))return Ee;if(0===o.length)return 65536&s?4194304&s?Fe:Oe:32768&s?4194304&s?Ne:Pe:He}if(!a&&1048576&s){var c=[];iu(c,t);for(var l=[],u=function(t){e.some(c,(function(e){return eu(e.types,t)}))||l.push(t)},p=0,f=o;p<f.length;p++){u(f[p])}if(!n&&1===c.length&&0===l.length)return c[0];if(e.reduceLeft(c,(function(e,t){return e+t.types.length}),0)+l.length===o.length){for(var m=0,g=c;m<g.length;m++){tu(l,g[m])}a=au(1048576,l)}}return cu(o,(468598819&s?0:262144)|(2097152&s?268435456:0),n,i,a)}function su(e,t){return e.kind===t.kind&&e.parameterIndex===t.parameterIndex}function cu(e,t,r,n,i){if(0===e.length)return He;if(1===e.length)return e[0];var a=(i?1048576&i.flags?"|"+nl(i.types):2097152&i.flags?"&"+nl(i.types):"#"+i.type.id:nl(e))+il(r,n),o=pe.get(a);return o||(o=function(e,t,r,n){var i=ji(1048576);return i.objectFlags=al(e,98304),i.types=e,i.origin=n,i.aliasSymbol=t,i.aliasTypeArguments=r,i}(e,r,n,i),o.objectFlags|=t,pe.set(a,o)),o}function lu(e,t,r){var n=r.flags;return 2097152&n?uu(e,t,r.types):(Tp(r)?16777216&t||(t|=16777216,e.set(r.id.toString(),r)):(3&n?r===De&&(t|=8388608):!W&&98304&n||e.has(r.id.toString())||(109440&r.flags&&109440&t&&(t|=67108864),e.set(r.id.toString(),r)),t|=205258751&n),t)}function uu(e,t,r){for(var n=0,i=r;n<i.length;n++){t=lu(e,t,gd(i[n]))}return t}function du(e,t){for(var r=0,n=e;r<n.length;r++){var i=n[r];if(!eu(i.types,t)){var a=128&t.flags?Re:256&t.flags?Me:2048&t.flags?Le:8192&t.flags?Je:void 0;if(!a||!eu(i.types,a))return!1}}return!0}function pu(t,r){if(e.every(t,(function(t){return!!(1048576&t.flags)&&e.some(t.types,(function(e){return!!(e.flags&r)}))}))){for(var n=0;n<t.length;n++)t[n]=ug(t[n],(function(e){return!(e.flags&r)}));return!0}return!1}function fu(t,r,n){var i=new e.Map,a=uu(i,0,t),o=e.arrayFrom(i.values());if(131072&a||W&&98304&a&&84410368&a||67108864&a&&402783228&a||402653316&a&&67238776&a||296&a&&469891796&a||2112&a&&469889980&a||12288&a&&469879804&a||49152&a&&469842940&a)return He;if(134217728&a&&128&a&&function(t){for(var r=t.length,n=e.filter(t,(function(e){return!!(128&e.flags)}));r>0;){var i=t[--r];if(134217728&i.flags)for(var a=0,o=n;a<o.length;a++){if(sp(o[a],i)){e.orderedRemoveItemAt(t,r);break}if(Ou(i))return!0}}return!1}(o))return He;if(1&a)return 8388608&a?De:Se;if(!W&&98304&a)return 32768&a?Ne:Fe;if((4&a&&128&a||8&a&&256&a||64&a&&2048&a||4096&a&&8192&a)&&function(t,r){for(var n=t.length;n>0;){var i=t[--n];(4&i.flags&&128&r||8&i.flags&&256&r||64&i.flags&&2048&r||4096&i.flags&&8192&r)&&e.orderedRemoveItemAt(t,n)}}(o,a),16777216&a&&524288&a&&e.orderedRemoveItemAt(o,e.findIndex(o,Tp)),0===o.length)return Ae;if(1===o.length)return o[0];var s=nl(o)+il(r,n),c=fe.get(s);if(!c){if(1048576&a)if(function(t){var r,n=e.findIndex(t,(function(t){return!!(262144&e.getObjectFlags(t))}));if(n<0)return!1;for(var i=n+1;i<t.length;){var a=t[i];262144&e.getObjectFlags(a)?((r||(r=[t[n]])).push(a),e.orderedRemoveItemAt(t,i)):i++}if(!r)return!1;for(var o=[],s=[],c=0,l=r;c<l.length;c++)for(var u=0,d=l[c].types;u<d.length;u++)tu(o,a=d[u])&&du(r,a)&&tu(s,a);return t[n]=cu(s,262144),!0}(o))c=fu(o,r,n);else if(pu(o,32768))c=ou([fu(o),Ne],1,r,n);else if(pu(o,65536))c=ou([fu(o),Fe],1,r,n);else{if(!gu(o))return Ee;var l=function(e){for(var t=mu(e),r=[],n=0;n<t;n++){for(var i=e.slice(),a=n,o=e.length-1;o>=0;o--)if(1048576&e[o].flags){var s=e[o].types,c=s.length;i[o]=s[a%c],a=Math.floor(a/c)}var l=fu(i);131072&l.flags||r.push(l)}return r}(o);c=ou(l,1,r,n,e.some(l,(function(e){return!!(2097152&e.flags)}))?au(2097152,o):void 0)}else c=function(e,t,r){var n=ji(2097152);return n.objectFlags=al(e,98304),n.types=e,n.aliasSymbol=t,n.aliasTypeArguments=r,n}(o,r,n);fe.set(s,c)}return c}function mu(t){return e.reduceLeft(t,(function(e,t){return 1048576&t.flags?e*t.types.length:131072&t.flags?0:e}),1)}function gu(t){var r=mu(t);return!(r>=1e5)||(null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","checkCrossProductUnion_DepthLimit",{typeIds:t.map((function(e){return e.id})),size:r}),pn(d,e.Diagnostics.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1)}function _u(e,t){var r=ji(4194304);return r.type=e,r.stringsOnly=t,r}function hu(e,t,r){return Wd(e,Md(t.mapper,Ns(t),r))}function yu(t){return!(!t||!(16777216&t.flags&&(!t.root.isDistributive||yu(t.checkType))||137363456&t.flags&&e.some(t.types,yu)||272629760&t.flags&&yu(t.type)||8388608&t.flags&&yu(t.indexType)||33554432&t.flags&&yu(t.substitute)))}function vu(t){return e.isPrivateIdentifier(t)?He:e.isIdentifier(t)?hd(e.unescapeLeadingUnderscores(t.escapedText)):gd(e.isComputedPropertyName(t)?M_(t):fb(t))}function bu(t,r){if(!(24&e.getDeclarationModifierFlagsFromSymbol(t))){var n=Tn(cs(t)).nameType;if(!n&&!e.isKnownSymbol(t))if("default"===t.escapedName)n=hd("default");else{var i=t.valueDeclaration&&e.getNameOfDeclaration(t.valueDeclaration);n=i&&vu(i)||hd(e.symbolName(t))}if(n&&n.flags&r)return n}return He}function ku(t,r,n){var i=n&&(7&e.getObjectFlags(t)||t.aliasSymbol)?function(e){var t=Bi(4194304);return t.type=e,t}(t):void 0;return ou(e.map(Hs(t),(function(e){return bu(e,r)})),1,void 0,void 0,i)}function xu(e){var t=bc(e,1);return t!==fr?t:void 0}function Su(t,r,n){void 0===r&&(r=Z);var i=r===Z&&!n;return 1048576&(t=uc(t)).flags?fu(e.map(t.types,(function(e){return Su(e,r,n)}))):2097152&t.flags?ou(e.map(t.types,(function(e){return Su(e,r,n)}))):58982400&t.flags||bf(t)||zs(t)&&yu(Is(t))?function(e,t){return t?e.resolvedStringIndexType||(e.resolvedStringIndexType=_u(e,!0)):e.resolvedIndexType||(e.resolvedIndexType=_u(e,!1))}(t,r):32&e.getObjectFlags(t)?function(t,r){var n=ug(Ps(t),(function(e){return!(r&&5&e.flags)})),i=t.declaration.nameType&&xd(t.declaration.nameType),a=i&&lg(n,(function(e){return!!(131084&e.flags)}))&&Hs(ac(Ms(t)));return i?ou([pg(n,(function(e){return hu(i,t,e)})),pg(ou(e.map(a||e.emptyArray,(function(e){return bu(e,8576)}))),(function(e){return hu(i,t,e)}))]):n}(t,n):t===De?De:2&t.flags?He:131073&t.flags?Qe:r?!n&&bc(t,0)?Re:ku(t,128,i):!n&&bc(t,0)?ou([Re,Me,ku(t,8192,i)]):xu(t)?ou([Me,ku(t,8320,i)]):ku(t,8576,i)}function wu(t){if(Z)return t;var r=Qt||(Qt=Cl("Extract",524288,e.Diagnostics.Cannot_find_global_type_0));return r?pl(r,[t,Re]):Re}function Du(t,r){var n=e.findIndex(r,(function(e){return!!(1179648&e.flags)}));if(n>=0)return gu(r)?pg(r[n],(function(i){return Du(t,e.replaceElement(r,n,i))})):Ee;if(e.contains(r,De))return De;var i=[],a=[],o=t[0];if(!function e(t,r){for(var n=0;n<r.length;n++){var s=r[n];if(101248&s.flags)o+=Eu(s)||"",o+=t[n+1];else if(134217728&s.flags){if(o+=s.texts[0],!e(s.texts,s.types))return!1;o+=t[n+1]}else{if(!Mu(s)&&!Fu(s))return!1;i.push(s),a.push(o),o=t[n+1]}}return!0}(t,r))return Re;if(0===i.length)return hd(o);if(a.push(o),e.every(a,(function(e){return""===e}))&&e.every(i,(function(e){return!!(4&e.flags)})))return Re;var s=nl(i)+"|"+e.map(a,(function(e){return e.length})).join(",")+"|"+a.join(""),c=_e.get(s);return c||_e.set(s,c=function(e,t){var r=ji(134217728);return r.texts=e,r.types=t,r}(a,i)),c}function Eu(t){return 128&t.flags?t.value:256&t.flags?""+t.value:2048&t.flags?e.pseudoBigIntToString(t.value):512&t.flags?t.intrinsicName:65536&t.flags?"null":32768&t.flags?"undefined":void 0}function Tu(e,t){return 1179648&t.flags?pg(t,(function(t){return Tu(e,t)})):Mu(t)?function(e,t){var r=R(e)+","+Zl(t),n=he.get(r);n||he.set(r,n=function(e,t){var r=ji(268435456);return r.symbol=e,r.type=t,r}(e,t));return n}(e,t):128&t.flags?hd(function(e,t){switch(P.get(e.escapedName)){case 0:return t.toUpperCase();case 1:return t.toLowerCase();case 2:return t.charAt(0).toUpperCase()+t.slice(1);case 3:return t.charAt(0).toLowerCase()+t.slice(1)}return t}(e,t.value)):t}function Cu(t){if(X)return!1;if(16384&e.getObjectFlags(t))return!0;if(1048576&t.flags)return e.every(t.types,Cu);if(2097152&t.flags)return e.some(t.types,Cu);if(465829888&t.flags){var r=tc(t);return r!==t&&Cu(r)}return!1}function Au(t,r){var n=r&&203===r.kind?r:void 0;return Zo(t)?is(t):n&&qh(n.argumentExpression,t,!1)?e.getPropertyNameForKnownSymbolName(e.idText(n.argumentExpression.name)):r&&e.isPropertyName(r)?e.getPropertyNameForPropertyNameNode(r):void 0}function Nu(t,r){if(8208&r.flags){var n=e.findAncestor(t.parent,(function(t){return!e.isAccessExpression(t)}))||t.parent;return e.isCallLikeExpression(n)?e.isCallOrNewExpression(n)&&e.isIdentifier(t)&&zm(n,t):e.every(r.declarations,(function(t){return!e.isFunctionLike(t)||!!(134217728&e.getCombinedNodeFlags(t))}))}return!0}function Pu(t,r,n,i,a,o,s,c,l){var u,d=o&&203===o.kind?o:void 0,p=o&&e.isPrivateIdentifier(o)?void 0:Au(n,o);if(void 0!==p){var f=gc(r,p);if(f){if(l&&o&&134217728&lh(f)&&Nu(o,f))hn(null!==(u=null==d?void 0:d.argumentExpression)&&void 0!==u?u:e.isIndexedAccessTypeNode(o)?o.indexType:o,f.declarations,p);if(d){if(Lh(f,d,108===d.expression.kind),Pv(d,f,e.getAssignmentTargetKind(d)))return void pn(d.argumentExpression,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,la(f));if(4&s&&(Cn(o).resolvedSymbol=f),Eh(d,f))return we}var m=_o(f);return d&&1!==e.getAssignmentTargetKind(d)?Og(d,m):m}if(lg(r,vf)&&R_(p)&&+p>=0){if(o&&lg(r,(function(e){return!e.target.hasRestElement}))&&!(8&s)){var g=Iu(o);vf(r)?pn(g,e.Diagnostics.Tuple_type_0_of_length_1_has_no_element_at_index_2,da(r),ul(r),e.unescapeLeadingUnderscores(p)):pn(g,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.unescapeLeadingUnderscores(p),da(r))}return w(bc(r,1)),pg(r,(function(e){var t=xf(e)||Ne;return c?ou([t,Ne]):t}))}}if(!(98304&n.flags)&&Mv(n,402665900)){if(131073&r.flags)return r;var _=bc(r,0),h=Mv(n,296)&&bc(r,1)||_;if(h)return 1&s&&h===_?void(d&&pn(d,e.Diagnostics.Type_0_cannot_be_used_to_index_type_1,da(n),da(t))):o&&!Mv(n,12)?(pn(g=Iu(o),e.Diagnostics.Type_0_cannot_be_used_as_an_index_type,da(n)),c?ou([h.type,Ne]):h.type):(w(h),c?ou([h.type,Ne]):h.type);if(131072&n.flags)return He;if(Cu(r))return Se;if(d&&!jv(r)){if(km(r)){if(X&&384&n.flags)return Qr.add(e.createDiagnosticForNode(d,e.Diagnostics.Property_0_does_not_exist_on_type_1,n.value,da(r))),Ne;if(12&n.flags){var y=e.map(r.properties,(function(e){return _o(e)}));return ou(e.append(y,Ne))}}if(r.symbol===ae&&void 0!==p&&ae.exports.has(p)&&418&ae.exports.get(p).flags)pn(d,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.unescapeLeadingUnderscores(p),da(r));else if(X&&!J.suppressImplicitAnyIndexErrors&&!a)if(void 0!==p&&Nh(p,r)){var v=da(r);pn(d,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,p,v,v+"["+e.getTextOfNode(d.argumentExpression)+"]")}else if(kc(r,1))pn(d.argumentExpression,e.Diagnostics.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{var b=void 0;if(void 0!==p&&(b=Fh(p,r)))void 0!==b&&pn(d.argumentExpression,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,p,da(r),b);else{var k=function(t,r,n){function i(e){var r=Js(t,e);if(r){var i=Qh(_o(r));return!!i&&sv(i)>=1&&cp(n,nv(i,0))}return!1}var a=e.isAssignmentTarget(r)?"set":"get";if(!i(a))return;var o=e.tryGetPropertyAccessOrIdentifierToString(r.expression);void 0===o?o=a:o+="."+a;return o}(r,d,n);if(void 0!==k)pn(d,e.Diagnostics.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,da(r),k);else{var x=void 0;if(1024&n.flags)x=e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_does_not_exist_on_type_1,"["+da(n)+"]",da(r));else if(8192&n.flags){var S=pi(n.symbol,d);x=e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_does_not_exist_on_type_1,"["+S+"]",da(r))}else 128&n.flags||256&n.flags?x=e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_does_not_exist_on_type_1,n.value,da(r)):12&n.flags&&(x=e.chainDiagnosticMessages(void 0,e.Diagnostics.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,da(n),da(r)));x=e.chainDiagnosticMessages(x,e.Diagnostics.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,da(i),da(r)),Qr.add(e.createDiagnosticForNodeFromMessageChain(d,x))}}}return}}if(Cu(r))return Se;if(o){g=Iu(o);384&n.flags?pn(g,e.Diagnostics.Property_0_does_not_exist_on_type_1,""+n.value,da(r)):12&n.flags?pn(g,e.Diagnostics.Type_0_has_no_matching_index_signature_for_type_1,da(r),da(n)):pn(g,e.Diagnostics.Type_0_cannot_be_used_as_an_index_type,da(n))}return Pa(n)?n:void 0;function w(t){t&&t.isReadonly&&d&&(e.isAssignmentTarget(d)||e.isDeleteTarget(d))&&pn(d,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,da(r))}}function Iu(e){return 203===e.kind?e.argumentExpression:190===e.kind?e.indexType:159===e.kind?e.expression:e}function Fu(e){return-1!==et.types.indexOf(e)||!!(1&e.flags)}function Ou(t){return!!(134217728&t.flags)&&e.every(t.types,Fu)}function Ru(t){return 3145728&t.flags?(4194304&t.objectFlags||(t.objectFlags|=4194304|(e.some(t.types,Ru)?8388608:0)),!!(8388608&t.objectFlags)):!!(58982400&t.flags)||zs(t)||bf(t)}function Mu(t){return 3145728&t.flags?(16777216&t.objectFlags||(t.objectFlags|=16777216|(e.some(t.types,Mu)?33554432:0)),!!(33554432&t.objectFlags)):!!(465829888&t.flags)&&!Ou(t)}function Lu(e){return!!(262144&e.flags&&e.isThisType)}function ju(t,r){return 8388608&t.flags?function(t,r){var n=r?"simplifiedForWriting":"simplifiedForReading";if(t[n])return t[n]===ut?t:t[n];t[n]=ut;var i=ju(t.objectType,r),a=ju(t.indexType,r),o=function(t,r,n){if(1048576&r.flags){var i=e.map(r.types,(function(e){return ju(qu(t,e),n)}));return n?fu(i):ou(i)}}(i,a,r);if(o)return t[n]=o;if(!(465829888&a.flags)){var s=Bu(i,a,r);if(s)return t[n]=s}if(bf(i)&&296&a.flags){var c=Sf(i,8&a.flags?0:i.target.fixedLength,0,r);if(c)return t[n]=c}if(zs(i))return t[n]=pg(Uu(i,t.indexType),(function(e){return ju(e,r)}));return t[n]=t}(t,r):16777216&t.flags?function(e,t){var r=e.checkType,n=e.extendsType,i=Xu(e),a=Qu(e);if(131072&a.flags&&Wu(i)===Wu(r)){if(1&r.flags||cp(Yd(r),Yd(n)))return ju(i,t);if(zu(r,n))return He}else if(131072&i.flags&&Wu(a)===Wu(r)){if(!(1&r.flags)&&cp(Yd(r),Yd(n)))return He;if(1&r.flags||zu(r,n))return ju(a,t)}return e}(t,r):t}function Bu(t,r,n){if(3145728&t.flags){var i=e.map(t.types,(function(e){return ju(qu(e,r),n)}));return 2097152&t.flags||n?fu(i):ou(i)}}function zu(e,t){return!!(131072&ou([bs(e,t),He]).flags)}function Uu(e,t){var r=Td([Ns(e)],[t]),n=Fd(e.mapper,r);return Wd(Fs(e),n)}function qu(e,t,r,n,i,a,o){return void 0===o&&(o=0),Vu(e,t,r,n,o,i,a)||(n?Ee:Ae)}function Ju(e,t){return lg(e,(function(e){if(384&e.flags){var r=is(e);if(R_(r)){var n=+r;return n>=0&&n<t}}return!1}))}function Vu(e,t,r,n,i,a,o){if(void 0===i&&(i=0),e===De||t===De)return De;var s=r||!!J.noUncheckedIndexedAccess&&16==(18&i);if(!Cp(e)||98304&t.flags||!Mv(t,12)||(t=Re),Mu(t)||(n&&190!==n.kind?bf(e)&&!Ju(t,e.target.fixedLength):Ru(e)&&(!vf(e)||!Ju(t,e.target.fixedLength)))){if(3&e.flags)return e;var c=e.id+","+t.id+(s?"?":"")+il(a,o),l=ge.get(c);return l||ge.set(c,l=function(e,t,r,n,i){var a=ji(8388608);return a.objectType=e,a.indexType=t,a.aliasSymbol=r,a.aliasTypeArguments=n,a.noUncheckedIndexedAccessCandidate=i,a}(e,t,a,o,s)),l}var u=oc(e);if(1048576&t.flags&&!(16&t.flags)){for(var d=[],p=!1,f=0,m=t.types;f<m.length;f++){var g=Pu(e,u,m[f],t,p,n,i,s);if(g)d.push(g);else{if(!n)return;p=!0}}if(p)return;return 2&i?fu(d,a,o):ou(d,1,a,o)}return Pu(e,u,t,t,!1,n,4|i,s,!0)}function Hu(e){var t=Cn(e);if(!t.resolvedType){var r=xd(e.objectType),n=xd(e.indexType),i=id(e),a=qu(r,n,void 0,e,i,ad(i));t.resolvedType=8388608&a.flags&&a.objectType===r&&a.indexType===n?vl(a,e):a}return t.resolvedType}function Ku(e){var t=Cn(e);if(!t.resolvedType){var r=qi(32,e.symbol);r.declaration=e,r.aliasSymbol=id(e),r.aliasTypeArguments=ad(r.aliasSymbol),t.resolvedType=r,Ps(r)}return t.resolvedType}function Wu(e){return 33554432&e.flags?e.baseType:8388608&e.flags&&(33554432&e.objectType.flags||33554432&e.indexType.flags)?qu(Wu(e.objectType),Wu(e.indexType)):e}function Gu(t){return!t.isDistributive&&180===t.node.checkType.kind&&1===e.length(t.node.checkType.elements)&&180===t.node.extendsType.kind&&1===e.length(t.node.extendsType.elements)}function $u(e,t){return Gu(e)&&vf(t)?ll(t)[0]:t}function Yu(t,r,n,i){for(var a,o;;){var s=Gu(t),c=Wd($u(t,t.checkType),r),l=Ru(c)||Mu(c),u=Wd($u(t,t.extendsType),r);if(c===De||u===De)return De;var d=void 0;if(t.inferTypeParameters){var p=Qf(t.inferTypeParameters,void 0,0);l||ym(p.inferences,c,u,768),d=Od(r,p.mapper)}var f=d?Wd($u(t,t.extendsType),d):u;if(!l&&!Ru(f)&&!Mu(f)){if(!(3&f.flags)&&(1&c.flags&&!s||!cp($d(c),$d(f)))){1&c.flags&&!s&&(o||(o=[])).push(Wd(xd(t.node.trueType),d||r));var m=xd(t.node.falseType);if(16777216&m.flags){var g=m.root;if(g.node.parent===t.node&&(!g.isDistributive||g.checkType===t.checkType)){t=g;continue}}a=Wd(m,r);break}if(3&f.flags||cp(Yd(c),Yd(f))){a=Wd(xd(t.node.trueType),d||r);break}}(a=ji(16777216)).root=t,a.checkType=Wd(t.checkType,r),a.extendsType=Wd(t.extendsType,r),a.mapper=r,a.combinedMapper=d,a.aliasSymbol=n||t.aliasSymbol,a.aliasTypeArguments=n?i:Dd(t.aliasTypeArguments,r);break}return o?ou(e.append(o,a)):a}function Xu(e){return e.resolvedTrueType||(e.resolvedTrueType=Wd(xd(e.root.node.trueType),e.mapper))}function Qu(e){return e.resolvedFalseType||(e.resolvedFalseType=Wd(xd(e.root.node.falseType),e.mapper))}function Zu(t){var r;return t.locals&&t.locals.forEach((function(t){262144&t.flags&&(r=e.append(r,Jo(t)))})),r}function ed(t){return e.isIdentifier(t)?[t]:e.append(ed(t.left),t.right)}function td(t){var r=Cn(t);if(!r.resolvedType){if(t.isTypeOf&&t.typeArguments)return pn(t,e.Diagnostics.Type_arguments_cannot_be_used_here),r.resolvedSymbol=ke,r.resolvedType=Ee;if(!e.isLiteralImportTypeNode(t))return pn(t.argument,e.Diagnostics.String_literal_expected),r.resolvedSymbol=ke,r.resolvedType=Ee;var n=t.isTypeOf?111551:4194304&t.flags?900095:788968,i=gi(t,t.argument.literal);if(!i)return r.resolvedSymbol=ke,r.resolvedType=Ee;var a=vi(i,!1);if(e.nodeIsMissing(t.qualifier)){if(a.flags&n)r.resolvedType=rd(t,r,a,n);else pn(t,111551===n?e.Diagnostics.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:e.Diagnostics.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0,t.argument.literal.text),r.resolvedSymbol=ke,r.resolvedType=Ee}else{for(var o=ed(t.qualifier),s=a,c=void 0;c=o.shift();){var l=o.length?1920:n,u=Ci(ii(s)),d=t.isTypeOf?gc(_o(u),c.escapedText):Nn(wi(u),c.escapedText,l);if(!d)return pn(c,e.Diagnostics.Namespace_0_has_no_exported_member_1,pi(s),e.declarationNameToString(c)),r.resolvedType=Ee;Cn(c).resolvedSymbol=d,Cn(c.parent).resolvedSymbol=d,s=d}r.resolvedType=rd(t,r,s,n)}}return r.resolvedType}function rd(e,t,r,n){var i=ii(r);return t.resolvedSymbol=i,111551===n?_o(r):gl(e,i)}function nd(t){var r=Cn(t);if(!r.resolvedType){var n=id(t);if(0!==ss(t.symbol).size||n){var i=qi(16,t.symbol);i.aliasSymbol=n,i.aliasTypeArguments=ad(n),e.isJSDocTypeLiteral(t)&&t.isArrayType&&(i=jl(i)),r.resolvedType=i}else r.resolvedType=ot}return r.resolvedType}function id(t){for(var r=t.parent;e.isParenthesizedTypeNode(r)||e.isJSDocTypeExpression(r)||e.isTypeOperatorNode(r)&&143===r.operator;)r=r.parent;return e.isTypeAlias(r)?Ai(r):void 0}function ad(e){return e?So(e):void 0}function od(e){return!!(524288&e.flags)&&!zs(e)}function sd(e){return Ep(e)||!!(474058748&e.flags)}function cd(t,r){if(e.every(t.types,sd))return e.find(t.types,Ep)||nt;var n=e.find(t.types,(function(e){return!sd(e)}));if(n&&!(n&&e.find(t.types,(function(e){return e!==n&&!sd(e)}))))return function(t){for(var n=e.createSymbolTable(),i=0,a=Hs(t);i<a.length;i++){var o=a[i];if(24&e.getDeclarationModifierFlagsFromSymbol(o));else if(ud(o)){var s=65536&o.flags&&!(32768&o.flags),c=yn(16777220,o.escapedName,Cs(o)|(r?8:0));c.type=s?Ne:ou([_o(o),Ne]),c.declarations=o.declarations,c.nameType=Tn(o).nameType,c.syntheticOrigin=o,n.set(o.escapedName,c)}}var l=Wi(t.symbol,n,e.emptyArray,e.emptyArray,bc(t,0),bc(t,1));return l.objectFlags|=1048704,l}(n)}function ld(t,r,n,i,a){if(1&t.flags||1&r.flags)return Se;if(2&t.flags||2&r.flags)return Ae;if(131072&t.flags)return r;if(131072&r.flags)return t;var o;if(1048576&t.flags)return(o=cd(t,a))?ld(o,r,n,i,a):gu([t,r])?pg(t,(function(e){return ld(e,r,n,i,a)})):Ee;if(1048576&r.flags)return(o=cd(r,a))?ld(t,o,n,i,a):gu([t,r])?pg(r,(function(e){return ld(t,e,n,i,a)})):Ee;if(473960444&r.flags)return t;if(Ru(t)||Ru(r)){if(Ep(t))return r;if(2097152&t.flags){var s=t.types,c=s[s.length-1];if(od(c)&&od(r))return fu(e.concatenate(s.slice(0,s.length-1),[ld(c,r,n,i,a)]))}return fu([t,r])}var l,u,d=e.createSymbolTable(),p=new e.Set;t===nt?(l=bc(r,0),u=bc(r,1)):(l=xs(bc(t,0),bc(r,0)),u=xs(bc(t,1),bc(r,1)));for(var f=0,m=Hs(r);f<m.length;f++){var g=m[f];24&e.getDeclarationModifierFlagsFromSymbol(g)?p.add(g.escapedName):ud(g)&&d.set(g.escapedName,dd(g,a))}for(var _=0,h=Hs(t);_<h.length;_++){var y=h[_];if(!p.has(y.escapedName)&&ud(y))if(d.has(y.escapedName)){var v=_o(g=d.get(y.escapedName));if(16777216&g.flags){var b=e.concatenate(y.declarations,g.declarations),k=yn(4|16777216&y.flags,y.escapedName);k.type=ou([_o(y),Hm(v,524288)]),k.leftSpread=y,k.rightSpread=g,k.declarations=b,k.nameType=Tn(y).nameType,d.set(y.escapedName,k)}}else d.set(y.escapedName,dd(y,a))}var x=Wi(n,d,e.emptyArray,e.emptyArray,pd(l,a),pd(u,a));return x.objectFlags|=1049728|i,x}function ud(t){return!(e.some(t.declarations,e.isPrivateIdentifierPropertyDeclaration)||106496&t.flags&&t.declarations.some((function(t){return e.isClassLike(t.parent)})))}function dd(e,t){var r=65536&e.flags&&!(32768&e.flags);if(!r&&t===Nv(e))return e;var n=yn(4|16777216&e.flags,e.escapedName,Cs(e)|(t?8:0));return n.type=r?Ne:_o(e),n.declarations=e.declarations,n.nameType=Tn(e).nameType,n.syntheticOrigin=e,n}function pd(e,t){return e&&e.isReadonly!==t?Qc(e.type,t,e.declaration):e}function fd(e,t,r){var n=ji(e);return n.symbol=r,n.value=t,n}function md(e){if(2944&e.flags){if(!e.freshType){var t=fd(e.flags,e.value,e.symbol);t.regularType=e,t.freshType=t,e.freshType=t}return e.freshType}return e}function gd(e){return 2944&e.flags?e.regularType:1048576&e.flags?e.regularType||(e.regularType=pg(e,gd)):e}function _d(e){return!!(2944&e.flags)&&e.freshType===e}function hd(t,r,n){var i=(r||"")+("number"==typeof t?"#":"string"==typeof t?"@":"n")+("object"==typeof t?e.pseudoBigIntToString(t):t),a=me.get(i);if(!a){var o=("number"==typeof t?256:"string"==typeof t?128:2048)|(r?1024:0);me.set(i,a=fd(o,t,n)),a.regularType=a}return a}function yd(t){if(e.isValidESSymbolDeclaration(t)){var r=Ai(t),n=Tn(r);return n.uniqueESSymbolType||(n.uniqueESSymbolType=function(e){var t=ji(8192);return t.symbol=e,t.escapedName="__@"+t.symbol.escapedName+"@"+R(t.symbol),t}(r))}return Je}function vd(t){var r=Cn(t);return r.resolvedType||(r.resolvedType=function(t){var r=e.getThisContainer(t,!1),n=r&&r.parent;if(n&&(e.isClassLike(n)||256===n.kind)&&!e.hasSyntacticModifier(r,32)&&(!e.isConstructorDeclaration(r)||e.isNodeDescendantOf(t,r.body)))return Oo(Ai(n)).thisType;if(n&&e.isObjectLiteralExpression(n)&&e.isBinaryExpression(n.parent)&&6===e.getAssignmentDeclarationKind(n.parent))return Oo(Ai(n.parent.left).parent).thisType;var i=4194304&t.flags?e.getHostSignatureFromJSDoc(t):void 0;return i&&e.isFunctionExpression(i)&&e.isBinaryExpression(i.parent)&&3===e.getAssignmentDeclarationKind(i.parent)?Oo(Ai(i.parent.left).parent).thisType:Fy(r)&&e.isNodeDescendantOf(t,r.body)?Oo(Ai(r)).thisType:(pn(t,e.Diagnostics.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),Ee)}(t)),r.resolvedType}function bd(e){return xd(kd(e.type)||e.type)}function kd(e){switch(e.kind){case 187:return kd(e.type);case 180:if(1===e.elements.length&&(182===(e=e.elements[0]).kind||193===e.kind&&e.dotDotDotToken))return kd(e.type);break;case 179:return e.elementType}}function xd(e){return vl(Sd(e),e)}function Sd(t){switch(t.kind){case 129:case 306:case 307:return Se;case 153:return Ae;case 148:return Re;case 145:return Me;case 156:return Le;case 132:return qe;case 149:return Je;case 114:return Ve;case 151:return Ne;case 104:return Fe;case 142:return He;case 146:return 131072&t.flags&&!X?Se:Ye;case 137:return Ce;case 188:case 108:return vd(t);case 192:return function(e){if(104===e.literal.kind)return Fe;var t=Cn(e);return t.resolvedType||(t.resolvedType=gd(fb(e.literal))),t.resolvedType}(t);case 174:case 225:return Sl(t);case 173:return t.assertsModifier?Ve:qe;case 177:return Dl(t);case 179:case 180:return function(t){var r=Cn(t);if(!r.resolvedType){var n=Ul(t);if(n===st)r.resolvedType=nt;else if(180===t.kind&&e.some(t.elements,(function(e){return!!(8&Bl(e))}))||!ql(t)){var i=179===t.kind?[xd(t.elementType)]:e.map(t.elements,xd);r.resolvedType=Wl(n,i)}else r.resolvedType=180===t.kind&&0===t.elements.length?n:cl(n,t,void 0)}return r.resolvedType}(t);case 181:return function(e){var t=xd(e.type);return W?Nf(t):t}(t);case 183:return function(t){var r=Cn(t);if(!r.resolvedType){var n=id(t);r.resolvedType=ou(e.map(t.types,xd),1,n,ad(n))}return r.resolvedType}(t);case 184:return function(t){var r=Cn(t);if(!r.resolvedType){var n=id(t);r.resolvedType=fu(e.map(t.types,xd),n,ad(n))}return r.resolvedType}(t);case 308:return function(e){var t=xd(e.type);return W?Af(t,65536):t}(t);case 310:return za(xd(t.type));case 193:return function(e){var t=Cn(e);return t.resolvedType||(t.resolvedType=e.dotDotDotToken?bd(e):e.questionToken&&W?Nf(xd(e.type)):xd(e.type))}(t);case 187:case 309:case 304:return xd(t.type);case 182:return bd(t);case 312:return function(t){var r=xd(t.type),n=t.parent,i=t.parent.parent;if(e.isJSDocTypeExpression(t.parent)&&e.isJSDocParameterTag(i)){var a=e.getHostSignatureFromJSDoc(i);if(a){var o=e.lastOrUndefined(a.parameters),s=e.getParameterSymbolFromJSDoc(i);if(!o||s&&o.symbol===s&&e.isRestParameter(o))return jl(r)}}if(e.isParameter(n)&&e.isJSDocFunctionType(n.parent))return jl(r);return za(r)}(t);case 175:case 176:case 178:case 315:case 311:case 316:return nd(t);case 189:return function(t){var r=Cn(t);if(!r.resolvedType)switch(t.operator){case 139:r.resolvedType=Su(xd(t.type));break;case 152:r.resolvedType=149===t.type.kind?yd(e.walkUpParenthesizedTypes(t.parent)):Ee;break;case 143:r.resolvedType=xd(t.type);break;default:throw e.Debug.assertNever(t.operator)}return r.resolvedType}(t);case 190:return Hu(t);case 191:return Ku(t);case 185:return function(t){var r=Cn(t);if(!r.resolvedType){var n=xd(t.checkType),i=id(t),a=ad(i),o=ko(t,!0),s=a?o:e.filter(o,(function(e){return zd(e,t)})),c={node:t,checkType:n,extendsType:xd(t.extendsType),isDistributive:!!(262144&n.flags),inferTypeParameters:Zu(t),outerTypeParameters:s,instantiations:void 0,aliasSymbol:i,aliasTypeArguments:a};r.resolvedType=Yu(c,void 0),s&&(c.instantiations=new e.Map,c.instantiations.set(nl(s),r.resolvedType))}return r.resolvedType}(t);case 186:return function(e){var t=Cn(e);return t.resolvedType||(t.resolvedType=qo(Ai(e.typeParameter))),t.resolvedType}(t);case 194:return function(t){var r=Cn(t);return r.resolvedType||(r.resolvedType=Du(i([t.head.text],e.map(t.templateSpans,(function(e){return e.literal.text}))),e.map(t.templateSpans,(function(e){return xd(e.type)})))),r.resolvedType}(t);case 196:return td(t);case 78:case 158:case 202:var r=Yx(t);return r?Jo(r):Ee;default:return Ee}}function wd(e,t,r){if(e&&e.length)for(var n=0;n<e.length;n++){var i=e[n],a=r(i,t);if(i!==a){var o=0===n?[]:e.slice(0,n);for(o.push(a),n++;n<e.length;n++)o.push(r(e[n],t));return o}}return e}function Dd(e,t){return wd(e,t,Wd)}function Ed(e,t){return wd(e,t,jd)}function Td(e,t){return 1===e.length?Ad(e[0],t?t[0]:Se):function(e,t){return{kind:1,sources:e,targets:t}}(e,t)}function Cd(e,t){switch(t.kind){case 0:return e===t.source?t.target:e;case 1:for(var r=t.sources,n=t.targets,i=0;i<r.length;i++)if(e===r[i])return n?n[i]:Se;return e;case 2:return t.func(e);case 3:case 4:var a=Cd(e,t.mapper1);return a!==e&&3===t.kind?Wd(a,t.mapper2):Cd(a,t.mapper2)}}function Ad(e,t){return{kind:0,source:e,target:t}}function Nd(e){return{kind:2,func:e}}function Pd(e,t,r){return{kind:e,mapper1:t,mapper2:r}}function Id(e){return Td(e,void 0)}function Fd(e,t){return e?Pd(3,e,t):t}function Od(e,t){return e?Pd(4,e,t):t}function Rd(e,t,r){return r?Pd(4,Ad(e,t),r):Ad(e,t)}function Md(e,t,r){return e?Pd(4,e,Ad(t,r)):Ad(t,r)}function Ld(e){var t=Ji(e.symbol);return t.target=e,t}function jd(t,r,n){var i;if(t.typeParameters&&!n){i=e.map(t.typeParameters,Ld),r=Fd(Td(t.typeParameters,i),r);for(var a=0,o=i;a<o.length;a++){o[a].mapper=r}}var s=ds(t.declaration,i,t.thisParameter&&Bd(t.thisParameter,r),wd(t.parameters,r,Bd),void 0,void 0,t.minArgumentCount,39&t.flags);return s.target=t,s.mapper=r,s}function Bd(t,r){var n=Tn(t);if(n.type&&!am(n.type))return t;1&e.getCheckFlags(t)&&(t=n.target,r=Fd(n.mapper,r));var i=yn(t.flags,t.escapedName,1|53256&e.getCheckFlags(t));return i.declarations=t.declarations,i.parent=t.parent,i.target=t,i.mapper=r,t.valueDeclaration&&(i.valueDeclaration=t.valueDeclaration),n.nameType&&(i.nameType=n.nameType),i}function zd(t,r){if(t.symbol&&t.symbol.declarations&&1===t.symbol.declarations.length){for(var n=t.symbol.declarations[0].parent,i=r;i!==n;i=i.parent)if(!i||232===i.kind||185===i.kind&&e.forEachChild(i.extendsType,a))return!0;return!!e.forEachChild(r,a)}return!0;function a(r){switch(r.kind){case 188:return!!t.isThisType;case 78:return!t.isThisType&&e.isPartOfTypeNode(r)&&function(e){return!(158===e.kind||174===e.parent.kind&&e.parent.typeArguments&&e===e.parent.typeName||196===e.parent.kind&&e.parent.typeArguments&&e===e.parent.qualifier)}(r)&&Sd(r)===t;case 177:return!0}return!!e.forEachChild(r,a)}}function Ud(e){var t=Ps(e);if(4194304&t.flags){var r=Wu(t.type);if(262144&r.flags)return r}}function qd(t,r,n,i){var a=Ud(t);if(a){var o=Wd(a,r);if(a!==o)return fg(uc(o),(function(n){if(61603843&n.flags&&n!==De&&n!==Ee){if(!t.declaration.nameType){if(rf(n))return function(e,t,r){var n=Vd(t,Me,!0,r);return n===Ee?Ee:jl(n,Jd(nf(e),Ls(t)))}(n,t,Rd(a,n,r));if(bf(n))return function(t,r,n,i){var a=t.target.elementFlags,o=e.map(ll(t),(function(e,t){var o=8&a[t]?e:4&a[t]?jl(e):Hl([e],[a[t]]);return qd(r,Rd(n,o,i))})),s=Jd(t.target.readonly,Ls(r));return Hl(o,e.map(o,(function(e){return 8})),s)}(n,t,a,r);if(vf(n))return function(t,r,n){var i=t.target.elementFlags,a=e.map(ll(t),(function(e,t){return Vd(r,hd(""+t),!!(2&i[t]),n)})),o=Ls(r),s=4&o?e.map(i,(function(e){return 1&e?2:e})):8&o?e.map(i,(function(e){return 2&e?1:e})):i,c=Jd(t.target.readonly,o);return e.contains(a,Ee)?Ee:Hl(a,s,c,t.target.labeledElementDeclarations)}(n,t,Rd(a,n,r))}return Hd(t,Rd(a,n,r))}return n}),n,i)}return Wd(Ps(t),r)===De?De:Hd(t,r,n,i)}function Jd(e,t){return!!(1&t)||!(2&t)&&e}function Vd(e,t,r,n){var i=Md(n,Ns(e),t),a=Wd(Fs(e.target||e),i),o=Ls(e);return W&&4&o&&!Rv(a,49152)?Nf(a):W&&8&o&&r?Hm(a,524288):a}function Hd(e,t,r,n){var i=qi(64|e.objectFlags,e.symbol);if(32&e.objectFlags){i.declaration=e.declaration;var a=Ns(e),o=Ld(a);i.typeParameter=o,t=Fd(Ad(a,o),t),o.mapper=t}return i.target=e,i.mapper=t,i.aliasSymbol=r||e.aliasSymbol,i.aliasTypeArguments=r?n:Dd(e.aliasTypeArguments,t),i}function Kd(t,r,n,i){var a=t.root;if(a.outerTypeParameters){var o=e.map(a.outerTypeParameters,(function(e){return Cd(e,r)})),s=nl(o)+il(n,i),c=a.instantiations.get(s);if(!c)c=function(e,t,r,n){if(e.isDistributive){var i=e.checkType,a=Cd(i,t);if(i!==a&&1179648&a.flags)return fg(a,(function(r){return Yu(e,Rd(i,r,t))}),r,n)}return Yu(e,t,r,n)}(a,Td(a.outerTypeParameters,o),n,i),a.instantiations.set(s,c);return c}return t}function Wd(e,t){return e&&t?Gd(e,t,void 0,void 0):e}function Gd(t,r,n,i){if(!am(t))return t;if(50===D||x>=5e6)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","instantiateType_DepthLimit",{typeId:t.id,instantiationDepth:D,instantiationCount:x}),pn(d,e.Diagnostics.Type_instantiation_is_excessively_deep_and_possibly_infinite),Ee;k++,x++,D++;var a=function(t,r,n,i){var a=t.flags;if(262144&a)return Cd(t,r);if(524288&a){var o=t.objectFlags;if(52&o){if(4&o&&!t.node){var s=t.resolvedTypeArguments,c=Dd(s,r);return c!==s?Wl(t.target,c):t}return function(t,r,n,i){var a=4&t.objectFlags?t.node:t.symbol.declarations[0],o=Cn(a),s=4&t.objectFlags?o.resolvedType:64&t.objectFlags?t.target:t,c=o.outerTypeParameters;if(!c){var l=ko(a,!0);if(Fy(a)){var u=Sc(a);l=e.addRange(l,u)}c=l||e.emptyArray,c=(4&s.objectFlags||2048&s.symbol.flags)&&!s.aliasTypeArguments?e.filter(c,(function(e){return zd(e,a)})):c,o.outerTypeParameters=c}if(c.length){var d=Fd(t.mapper,r),p=e.map(c,(function(e){return Cd(e,d)})),f=n||t.aliasSymbol,m=n?i:Dd(t.aliasTypeArguments,r),g=nl(p)+il(f,m);s.instantiations||(s.instantiations=new e.Map,s.instantiations.set(nl(c)+il(s.aliasSymbol,s.aliasTypeArguments),s));var _=s.instantiations.get(g);if(!_){var h=Td(c,p);_=4&s.objectFlags?cl(t.target,t.node,h,f,m):32&s.objectFlags?qd(s,h,f,m):Hd(s,h,f,m),s.instantiations.set(g,_)}return _}return t}(t,r,n,i)}return t}if(3145728&a){var l=1048576&t.flags?t.origin:void 0,u=l&&3145728&l.flags?l.types:t.types,d=Dd(u,r);if(d===u&&n===t.aliasSymbol)return t;var p=n||t.aliasSymbol,f=n?i:Dd(t.aliasTypeArguments,r);return 2097152&a||l&&2097152&l.flags?fu(d,p,f):ou(d,1,p,f)}if(4194304&a)return Su(Wd(t.type,r));if(134217728&a)return Du(t.texts,Dd(t.types,r));if(268435456&a)return Tu(t.symbol,Wd(t.type,r));if(8388608&a){p=n||t.aliasSymbol,f=n?i:Dd(t.aliasTypeArguments,r);return qu(Wd(t.objectType,r),Wd(t.indexType,r),t.noUncheckedIndexedAccessCandidate,void 0,p,f)}if(16777216&a)return Kd(t,Fd(t.mapper,r),n,i);if(33554432&a){var m=Wd(t.baseType,r);if(8650752&m.flags)return _l(m,Wd(t.substitute,r));var g=Wd(t.substitute,r);return 3&g.flags||cp(Yd(m),Yd(g))?m:g}return t}(t,r,n,i);return D--,a}function $d(e){return 262143&e.flags?e:e.permissiveInstantiation||(e.permissiveInstantiation=Wd(e,rt))}function Yd(e){return 262143&e.flags?e:(e.restrictiveInstantiation||(e.restrictiveInstantiation=Wd(e,tt),e.restrictiveInstantiation.restrictiveInstantiation=e.restrictiveInstantiation),e.restrictiveInstantiation)}function Xd(e,t){return e&&Qc(Wd(e.type,t),e.isReadonly,e.declaration)}function Qd(t){switch(e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t)),t.kind){case 209:case 210:case 166:case 253:return Zd(t);case 201:return e.some(t.properties,Qd);case 200:return e.some(t.elements,Qd);case 219:return Qd(t.whenTrue)||Qd(t.whenFalse);case 218:return(56===t.operatorToken.kind||60===t.operatorToken.kind)&&(Qd(t.left)||Qd(t.right));case 291:return Qd(t.initializer);case 208:return Qd(t.expression);case 284:return e.some(t.properties,Qd)||e.isJsxOpeningElement(t.parent)&&e.some(t.parent.parent.children,Qd);case 283:var r=t.initializer;return!!r&&Qd(r);case 286:var n=t.expression;return!!n&&Qd(n)}return!1}function Zd(t){return(!e.isFunctionDeclaration(t)||e.isInJSFile(t)&&!!ja(t))&&(ep(t)||function(t){return!t.typeParameters&&!e.getEffectiveReturnTypeNode(t)&&!!t.body&&232!==t.body.kind&&Qd(t.body)}(t))}function ep(t){if(!t.typeParameters){if(e.some(t.parameters,(function(t){return!e.getEffectiveTypeAnnotationNode(t)})))return!0;if(210!==t.kind){var r=e.firstOrUndefined(t.parameters);if(!r||!e.parameterIsThisKeyword(r))return!0}}return!1}function tp(t){return(e.isInJSFile(t)&&e.isFunctionDeclaration(t)||T_(t)||e.isObjectLiteralMethod(t))&&Zd(t)}function rp(t){if(524288&t.flags){var r=Us(t);if(r.constructSignatures.length||r.callSignatures.length){var n=qi(16,t.symbol);return n.members=r.members,n.properties=r.properties,n.callSignatures=e.emptyArray,n.constructSignatures=e.emptyArray,n}}else if(2097152&t.flags)return fu(e.map(t.types,rp));return t}function np(e,t){return Pp(e,t,sn)}function ip(e,t){return Pp(e,t,sn)?-1:0}function ap(e,t){return Pp(e,t,an)?-1:0}function op(e,t){return Pp(e,t,rn)?-1:0}function sp(e,t){return Pp(e,t,rn)}function cp(e,t){return Pp(e,t,an)}function lp(t,r){return 1048576&t.flags?e.every(t.types,(function(e){return lp(e,r)})):1048576&r.flags?e.some(r.types,(function(e){return lp(t,e)})):58982400&t.flags?lp(Qs(t)||Ae,r):r===yt?!!(67633152&t.flags):r===vt?!!(524288&t.flags)&&Jm(t):vo(t,yo(r))||rf(r)&&!nf(r)&&lp(t,St)}function up(e,t){return Pp(e,t,on)}function dp(e,t){return up(e,t)||up(t,e)}function pp(e,t,r,n,i,a){return Op(e,t,an,r,n,i,a)}function fp(e,t,r,n,i,a){return mp(e,t,an,r,n,i,a,void 0)}function mp(e,t,r,n,i,a,o,s){return!!Pp(e,t,r)||(!n||!_p(i,e,t,r,a,o,s))&&Op(e,t,r,n,a,o,s)}function gp(t){return!!(16777216&t.flags||2097152&t.flags&&e.some(t.types,gp))}function _p(t,r,n,i,o,c,l){if(!t||gp(n))return!1;if(!Op(r,n,i,void 0)&&function(t,r,n,i,a,o,s){for(var c=hc(r,0),l=hc(r,1),u=0,d=[l,c];u<d.length;u++){var p=d[u];if(e.some(p,(function(e){var t=Bc(e);return!(131073&t.flags)&&Op(t,n,i,void 0)}))){var f=s||{};pp(r,n,t,a,o,f);var m=f.errors[f.errors.length-1];return e.addRelatedInfo(m,e.createDiagnosticForNode(t,p===l?e.Diagnostics.Did_you_mean_to_use_new_with_this_expression:e.Diagnostics.Did_you_mean_to_call_this_expression)),!0}}return!1}(t,r,n,i,o,c,l))return!0;switch(t.kind){case 286:case 208:return _p(t.expression,r,n,i,o,c,l);case 218:switch(t.operatorToken.kind){case 62:case 27:return _p(t.right,r,n,i,o,c,l)}break;case 201:return function(t,r,n,i,a,o){return!(131068&n.flags)&&vp(function(t){var r,n,i,a;return s(this,(function(o){switch(o.label){case 0:if(!e.length(t.properties))return[2];r=0,n=t.properties,o.label=1;case 1:if(!(r<n.length))return[3,8];if(i=n[r],e.isSpreadAssignment(i))return[3,7];if(!(a=bu(Ai(i),8576))||131072&a.flags)return[3,7];switch(i.kind){case 169:case 168:case 166:case 292:return[3,2];case 291:return[3,4]}return[3,6];case 2:return[4,{errorNode:i.name,innerExpression:void 0,nameType:a}];case 3:return o.sent(),[3,7];case 4:return[4,{errorNode:i.name,innerExpression:i.initializer,nameType:a,errorMessage:e.isComputedNonLiteralName(i.name)?e.Diagnostics.Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:void 0}];case 5:return o.sent(),[3,7];case 6:e.Debug.assertNever(i),o.label=7;case 7:return r++,[3,1];case 8:return[2]}}))}(t),r,n,i,a,o)}(t,r,n,i,c,l);case 200:return function(e,t,r,n,i,a){if(131068&r.flags)return!1;if(lf(t))return vp(kp(e,r),t,r,n,i,a);var o=e.contextualType;e.contextualType=r;try{var s=P_(e,1,!0);return e.contextualType=o,!!lf(s)&&vp(kp(e,r),s,r,n,i,a)}finally{e.contextualType=o}}(t,r,n,i,c,l);case 284:return function(t,r,n,i,o,c){var l,u=vp(function(t){var r,n,i;return s(this,(function(a){switch(a.label){case 0:if(!e.length(t.properties))return[2];r=0,n=t.properties,a.label=1;case 1:return r<n.length?(i=n[r],e.isJsxSpreadAttribute(i)?[3,3]:[4,{errorNode:i.name,innerExpression:i.initializer,nameType:hd(e.idText(i.name))}]):[3,4];case 2:a.sent(),a.label=3;case 3:return r++,[3,1];case 4:return[2]}}))}(t),r,n,i,o,c);if(e.isJsxOpeningElement(t.parent)&&e.isJsxElement(t.parent.parent)){var d=t.parent.parent,p=Q_(Y_(t)),f=void 0===p?"children":e.unescapeLeadingUnderscores(p),m=hd(f),g=qu(n,m),_=e.getSemanticJsxChildren(d.children);if(!e.length(_))return u;var h=e.length(_)>1,y=ug(g,uf),v=ug(g,(function(e){return!uf(e)}));if(h){if(y!==He){var b=Hl(V_(d,0)),k=function(t,r){var n,i,a,o,c;return s(this,(function(s){switch(s.label){case 0:if(!e.length(t.children))return[2];n=0,i=0,s.label=1;case 1:return i<t.children.length?(a=t.children[i],o=hd(i-n),(c=bp(a,o,r))?[4,c]:[3,3]):[3,5];case 2:return s.sent(),[3,4];case 3:n++,s.label=4;case 4:return i++,[3,1];case 5:return[2]}}))}(d,w);u=vp(k,b,y,i,o,c)||u}else if(!Pp(qu(r,m),g,i)){u=!0;var x=pn(d.openingElement.tagName,e.Diagnostics.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,f,da(g));c&&c.skipLogging&&(c.errors||(c.errors=[])).push(x)}}else if(v!==He){var S=bp(_[0],m,w);S&&(u=vp(function(){return s(this,(function(e){switch(e.label){case 0:return[4,S];case 1:return e.sent(),[2]}}))}(),r,n,i,o,c)||u)}else if(!Pp(qu(r,m),g,i)){u=!0;x=pn(d.openingElement.tagName,e.Diagnostics.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,f,da(g));c&&c.skipLogging&&(c.errors||(c.errors=[])).push(x)}}return u;function w(){if(!l){var r=e.getTextOfNode(t.parent.tagName),i=Q_(Y_(t)),o=void 0===i?"children":e.unescapeLeadingUnderscores(i),s=qu(n,hd(o)),c=e.Diagnostics._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;l=a(a({},c),{key:"!!ALREADY FORMATTED!!",message:e.formatMessage(void 0,c,r,o,da(s))})}return l}}(t,r,n,i,c,l);case 210:return function(t,r,n,i,a,o){if(e.isBlock(t.body))return!1;if(e.some(t.parameters,e.hasType))return!1;var s=Qh(r);if(!s)return!1;var c=hc(n,0);if(!e.length(c))return!1;var l=t.body,u=Bc(s),d=ou(e.map(c,Bc));if(!Op(u,d,i,void 0)){var p=l&&_p(l,u,d,i,void 0,a,o);if(p)return p;var f=o||{};if(Op(u,d,i,l,void 0,a,f),f.errors)return n.symbol&&e.length(n.symbol.declarations)&&e.addRelatedInfo(f.errors[f.errors.length-1],e.createDiagnosticForNode(n.symbol.declarations[0],e.Diagnostics.The_expected_type_comes_from_the_return_type_of_this_signature)),2&e.getFunctionFlags(t)||Na(u,"then")||!Op(_v(u),d,i,void 0)||e.addRelatedInfo(f.errors[f.errors.length-1],e.createDiagnosticForNode(t,e.Diagnostics.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}(t,r,n,i,c,l)}return!1}function hp(e,t,r){var n=Vu(t,r);if(n)return n;if(1048576&t.flags){var i=Mp(e,t);if(i)return Vu(i,r)}}function yp(e,t){e.contextualType=t;try{return eb(e,1,t)}finally{e.contextualType=void 0}}function vp(t,r,n,i,a,o){for(var s=!1,c=t.next();!c.done;c=t.next()){var l=c.value,u=l.errorNode,d=l.innerExpression,p=l.nameType,f=l.errorMessage,m=hp(r,n,p);if(m&&!(8388608&m.flags)){var g=Vu(r,p);if(g&&!Op(g,m,i,void 0))if(d&&_p(d,g,m,i,void 0,a,o))s=!0;else{var _=o||{},h=d?yp(d,g):g;if(Op(h,m,i,u,f,a,_)&&h!==g&&Op(g,m,i,u,f,a,_),_.errors){var y=_.errors[_.errors.length-1],v=Zo(p)?is(p):void 0,b=void 0!==v?gc(n,v):void 0,k=!1;if(!b){var x=Mv(p,296)&&bc(n,1)||bc(n,0)||void 0;x&&x.declaration&&!e.getSourceFileOfNode(x.declaration).hasNoDefaultLib&&(k=!0,e.addRelatedInfo(y,e.createDiagnosticForNode(x.declaration,e.Diagnostics.The_expected_type_comes_from_this_index_signature)))}if(!k&&(b&&e.length(b.declarations)||n.symbol&&e.length(n.symbol.declarations))){var S=b&&e.length(b.declarations)?b.declarations[0]:n.symbol.declarations[0];e.getSourceFileOfNode(S).hasNoDefaultLib||e.addRelatedInfo(y,e.createDiagnosticForNode(S,e.Diagnostics.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,!v||8192&p.flags?da(p):e.unescapeLeadingUnderscores(v),da(n)))}}s=!0}}}return s}function bp(t,r,n){switch(t.kind){case 286:return{errorNode:t,innerExpression:t.expression,nameType:r};case 11:if(t.containsOnlyTriviaWhiteSpaces)break;return{errorNode:t,innerExpression:void 0,nameType:r,errorMessage:n()};case 276:case 277:case 280:return{errorNode:t,innerExpression:t,nameType:r};default:return e.Debug.assertNever(t,"Found invalid jsx child")}}function kp(t,r){var n,i,a,o;return s(this,(function(s){switch(s.label){case 0:if(!(n=e.length(t.elements)))return[2];i=0,s.label=1;case 1:return i<n?lf(r)&&!gc(r,""+i)?[3,3]:(a=t.elements[i],e.isOmittedExpression(a)?[3,3]:(o=hd(i),[4,{errorNode:a,innerExpression:a,nameType:o}])):[3,4];case 2:s.sent(),s.label=3;case 3:return i++,[3,1];case 4:return[2]}}))}function xp(e,t,r,n,i){return Op(e,t,on,r,n,i)}function Sp(t,r,n,i,a,o,s,c){if(t===r)return-1;if(!(l=r).typeParameters&&(!l.thisParameter||Pa(Qy(l.thisParameter)))&&1===l.parameters.length&&U(l)&&(Qy(l.parameters[0])===At||Pa(Qy(l.parameters[0])))&&Pa(Bc(l)))return-1;var l,u=ov(r);if(!cv(r)&&(8&n?cv(t)||ov(t)>u:sv(t)>u))return 0;t.typeParameters&&t.typeParameters!==r.typeParameters&&(t=ty(t,r=Wc(r),void 0,s));var d=ov(t),p=uv(t),f=uv(r);if((p||f)&&Wd(p||f,c),p&&f&&d!==u)return 0;var m=r.declaration?r.declaration.kind:0,g=!(3&n)&&G&&166!==m&&165!==m&&167!==m,_=-1,h=Lc(t);if(h&&h!==Ve){var y=Lc(r);if(y){if(!(w=!g&&s(h,y,!1)||s(y,h,i)))return i&&a(e.Diagnostics.The_this_types_of_each_signature_are_incompatible),0;_&=w}}for(var v=p||f?Math.min(d,u):Math.max(d,u),b=p||f?v-1:-1,k=0;k<v;k++){var x=k===b?av(t,k):iv(t,k),S=k===b?av(r,k):iv(r,k);if(x&&S){var w,D=3&n?void 0:Qh(Pf(x)),E=3&n?void 0:Qh(Pf(S));if((w=D&&E&&!jc(D)&&!jc(E)&&(98304&Ef(x))==(98304&Ef(S))?Sp(E,D,8&n|(g?2:1),i,a,o,s,c):!(3&n)&&!g&&s(x,S,!1)||s(S,x,i))&&8&n&&k>=sv(t)&&k<sv(r)&&s(x,S,!1)&&(w=0),!w)return i&&a(e.Diagnostics.Types_of_parameters_0_and_1_are_incompatible,e.unescapeLeadingUnderscores(ev(t,k)),e.unescapeLeadingUnderscores(ev(r,k))),0;_&=w}}if(!(4&n)){var T=Uc(r)?Se:r.declaration&&Fy(r.declaration)?Oo(Ci(r.declaration.symbol)):Bc(r);if(T===Ve)return _;var C=Uc(t)?Se:t.declaration&&Fy(t.declaration)?Oo(Ci(t.declaration.symbol)):Bc(t),A=jc(r);if(A){var N=jc(t);if(N)_&=function(t,r,n,i,a){if(t.kind!==r.kind)return n&&(i(e.Diagnostics.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard),i(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,ha(t),ha(r))),0;if((1===t.kind||3===t.kind)&&t.parameterIndex!==r.parameterIndex)return n&&(i(e.Diagnostics.Parameter_0_is_not_in_the_same_position_as_parameter_1,t.parameterName,r.parameterName),i(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,ha(t),ha(r))),0;var o=t.type===r.type?-1:t.type&&r.type?a(t.type,r.type,n):0;0===o&&n&&i(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,ha(t),ha(r));return o}(N,A,i,a,s);else if(e.isIdentifierTypePredicate(A))return i&&a(e.Diagnostics.Signature_0_must_be_a_type_predicate,ua(t)),0}else!(_&=1&n&&s(T,C,!1)||s(C,T,i))&&i&&o&&o(C,T)}return _}function wp(e,t){var r=Kc(e),n=Kc(t),i=Bc(r),a=Bc(n);return!(a!==Ve&&!Pp(a,i,an)&&!Pp(i,a,an))&&0!==Sp(r,n,!0?4:0,!1,void 0,void 0,ap,void 0)}function Dp(e){return e!==ct&&0===e.properties.length&&0===e.callSignatures.length&&0===e.constructSignatures.length&&!e.stringIndexInfo&&!e.numberIndexInfo}function Ep(t){return 524288&t.flags?!zs(t)&&Dp(Us(t)):!!(67108864&t.flags)||(1048576&t.flags?e.some(t.types,Ep):!!(2097152&t.flags)&&e.every(t.types,Ep))}function Tp(t){return!!(16&e.getObjectFlags(t)&&(t.members&&Dp(t)||t.symbol&&2048&t.symbol.flags&&0===ss(t.symbol).size))}function Cp(t){return 524288&t.flags&&!zs(t)&&0===Hs(t).length&&bc(t,0)&&!bc(t,1)||3145728&t.flags&&e.every(t.types,Cp)||!1}function Ap(t,r,n){if(t===r)return!0;var i=R(t)+","+R(r),a=cn.get(i);if(void 0!==a&&(4&a||!(2&a)||!n))return!!(1&a);if(!(t.escapedName===r.escapedName&&256&t.flags&&256&r.flags))return cn.set(i,6),!1;for(var o=_o(r),s=0,c=Hs(_o(t));s<c.length;s++){var l=c[s];if(8&l.flags){var u=gc(o,l.escapedName);if(!(u&&8&u.flags))return n?(n(e.Diagnostics.Property_0_is_missing_in_type_1,e.symbolName(l),da(Jo(r),void 0,64)),cn.set(i,6)):cn.set(i,2),!1}}return cn.set(i,1),!0}function Np(e,t,r,n){var i=e.flags,a=t.flags;if(3&a||131072&i||e===De)return!0;if(131072&a)return!1;if(402653316&i&&4&a)return!0;if(128&i&&1024&i&&128&a&&!(1024&a)&&e.value===t.value)return!0;if(296&i&&8&a)return!0;if(256&i&&1024&i&&256&a&&!(1024&a)&&e.value===t.value)return!0;if(2112&i&&64&a)return!0;if(528&i&&16&a)return!0;if(12288&i&&4096&a)return!0;if(32&i&&32&a&&Ap(e.symbol,t.symbol,n))return!0;if(1024&i&&1024&a){if(1048576&i&&1048576&a&&Ap(e.symbol,t.symbol,n))return!0;if(2944&i&&2944&a&&e.value===t.value&&Ap(Ni(e.symbol),Ni(t.symbol),n))return!0}if(32768&i&&(!W||49152&a))return!0;if(65536&i&&(!W||65536&a))return!0;if(524288&i&&67108864&a)return!0;if(r===an||r===on){if(1&i)return!0;if(264&i&&!(1024&i)&&(32&a||256&a&&1024&a))return!0}return!1}function Pp(e,t,r){if(_d(e)&&(e=e.regularType),_d(t)&&(t=t.regularType),e===t)return!0;if(r!==sn){if(r===on&&!(131072&t.flags)&&Np(t,e,r)||Np(e,t,r))return!0}else if(!(3145728&e.flags||3145728&t.flags||e.flags===t.flags||469237760&e.flags))return!1;if(524288&e.flags&&524288&t.flags){var n=r.get(Kp(e,t,0,r));if(void 0!==n)return!!(1&n)}return!!(469499904&e.flags||469499904&t.flags)&&Op(e,t,r,void 0)}function Ip(t,r){return 4096&e.getObjectFlags(t)&&!U_(r.escapedName)}function Fp(t,r){for(;;){var n=_d(t)?t.regularType:4&e.getObjectFlags(t)&&t.node?ol(t.target,ll(t)):3145728&t.flags?uc(t):33554432&t.flags?r?t.baseType:t.substitute:25165824&t.flags?ju(t,r):t;if(n===t)break;t=n}return t}function Op(t,r,n,a,o,s,c){var u,p,f,m,g,_,h=0,y=0,v=0,b=!1,k=0,x=[],S=!1;e.Debug.assert(n!==sn||!a,"no error reporting in identity checking");var w=j(t,r,!!a,o);if(x.length&&O(),b){null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","checkTypeRelatedTo_DepthLimit",{sourceId:t.id,targetId:r.id,depth:y});var D=pn(a||d,e.Diagnostics.Excessive_stack_depth_comparing_types_0_and_1,da(t),da(r));c&&(c.errors||(c.errors=[])).push(D)}else if(u){if(s){var E=s();E&&(e.concatenateDiagnosticMessageChains(E,u),u=E)}var T=void 0;if(o&&a&&!w&&t.symbol){var C=Tn(t.symbol);if(C.originatingImport&&!e.isImportCall(C.originatingImport))if(Op(_o(C.target),r,n,void 0)){var A=e.createDiagnosticForNode(C.originatingImport,e.Diagnostics.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead);T=e.append(T,A)}}D=e.createDiagnosticForNodeFromMessageChain(a,u,T);p&&e.addRelatedInfo.apply(void 0,i([D],p)),c&&(c.errors||(c.errors=[])).push(D),c&&c.skipLogging||Qr.add(D)}return a&&c&&c.skipLogging&&0===w&&e.Debug.assert(!!c.errors,"missed opportunity to interact with error."),0!==w;function P(e){u=e.errorInfo,_=e.lastSkippedInfo,x=e.incompatibleStack,k=e.overrideNextErrorInfo,p=e.relatedInfo}function I(){return{errorInfo:u,lastSkippedInfo:_,incompatibleStack:x.slice(),overrideNextErrorInfo:k,relatedInfo:p?p.slice():void 0}}function F(e,t,r,n,i){k++,_=void 0,x.push([e,t,r,n,i])}function O(){var t=x;x=[];var r=_;if(_=void 0,1===t.length)return R.apply(void 0,t[0]),void(r&&M.apply(void 0,i([void 0],r)));for(var n="",a=[];t.length;){var o=t.pop(),s=o[0],c=o.slice(1);switch(s.code){case e.Diagnostics.Types_of_property_0_are_incompatible.code:0===n.indexOf("new ")&&(n="("+n+")");var l=""+c[0];n=0===n.length?""+l:e.isIdentifierText(l,J.target)?n+"."+l:"["===l[0]&&"]"===l[l.length-1]?""+n+l:n+"["+l+"]";break;case e.Diagnostics.Call_signature_return_types_0_and_1_are_incompatible.code:case e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible.code:case e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:if(0===n.length){var u=s;s.code===e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?u=e.Diagnostics.Call_signature_return_types_0_and_1_are_incompatible:s.code===e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(u=e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible),a.unshift([u,c[0],c[1]])}else{n=""+(s.code===e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible.code||s.code===e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"")+n+"("+(s.code===e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||s.code===e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...")+")"}break;default:return e.Debug.fail("Unhandled Diagnostic: "+s.code)}}n?R(")"===n[n.length-1]?e.Diagnostics.The_types_returned_by_0_are_incompatible_between_these_types:e.Diagnostics.The_types_of_0_are_incompatible_between_these_types,n):a.shift();for(var d=0,p=a;d<p.length;d++){var f=p[d],m=(s=f[0],c=f.slice(1),s.elidedInCompatabilityPyramid);s.elidedInCompatabilityPyramid=!1,R.apply(void 0,i([s],c)),s.elidedInCompatabilityPyramid=m}r&&M.apply(void 0,i([void 0],r))}function R(t,r,n,i,o){e.Debug.assert(!!a),x.length&&O(),t.elidedInCompatabilityPyramid||(u=e.chainDiagnosticMessages(u,t,r,n,i,o))}function M(t,r,i){x.length&&O();var a=pa(r,i),o=a[0],s=a[1],c=r,l=o;if(ff(r)&&!Rp(i)&&(c=mf(r),e.Debug.assert(!cp(c,i),"generalized source shouldn't be assignable"),l=fa(c)),262144&i.flags){var u=Qs(i),d=void 0;u&&(cp(c,u)||(d=cp(r,u)))?R(e.Diagnostics._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,d?o:l,s,da(u)):R(e.Diagnostics._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,s,l)}t||(t=n===on?e.Diagnostics.Type_0_is_not_comparable_to_type_1:o===s?e.Diagnostics.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:e.Diagnostics.Type_0_is_not_assignable_to_type_1),R(t,l,s)}function L(t,r,n){return vf(t)?t.target.readonly&&af(r)?(n&&R(e.Diagnostics.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,da(t),da(r)),!1):vf(r)||rf(r):nf(t)&&af(r)?(n&&R(e.Diagnostics.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,da(t),da(r)),!1):!vf(r)||rf(t)}function j(t,r,i,o,s){if(void 0===i&&(i=!1),void 0===s&&(s=0),524288&t.flags&&131068&r.flags)return Np(t,r,n,i?R:void 0)?-1:(D(t,r,0,!!(4096&e.getObjectFlags(t))),0);var c=Fp(t,!1),l=Fp(r,!0);if(c===l)return-1;if(n===sn)return function(e,t){var r=e.flags&t.flags;if(!(469237760&r))return 0;if(B(e,t),3145728&r){var n=z(e,t);return n&&(n&=z(t,e)),n}return H(e,t,!1,0)}(c,l);if(262144&c.flags&&Ks(c)===l)return-1;if(1048576&l.flags&&524288&c.flags&&l.types.length<=3&&Rv(l,98304)){var d=gg(l,-98305);if(!(1179648&d.flags)){if(c===d)return-1;l=d}}if(n===on&&!(131072&l.flags)&&Np(l,c,n)||Np(c,l,n,i?R:void 0))return-1;var p=!!(4096&e.getObjectFlags(c)),f=!(2&s)&&km(c)&&32768&e.getObjectFlags(c);if(f&&function(t,r,i){if(!sh(r)||!X&&16384&e.getObjectFlags(r))return!1;var o=!!(4096&e.getObjectFlags(t));if((n===an||n===on)&&(sg(yt,r)||!o&&Ep(r)))return!1;var s,c=r;1048576&r.flags&&(c=hw(t,r,j)||function(e){if(Rv(e,67108864)){var t=ug(e,(function(e){return!(131068&e.flags)}));if(!(131072&t.flags))return t}return e}(r),s=1048576&c.flags?c.types:[c]);for(var l=function(r){if(function(e,t){return e.valueDeclaration&&t.valueDeclaration&&e.valueDeclaration.parent===t.valueDeclaration}(r,t.symbol)&&!Ip(t,r)){if(!oh(c,r.escapedName,o)){if(i){var n=ug(c,sh);if(!a)return{value:e.Debug.fail()};if(e.isJsxAttributes(a)||e.isJsxOpeningLikeElement(a)||e.isJsxOpeningLikeElement(a.parent)){r.valueDeclaration&&e.isJsxAttribute(r.valueDeclaration)&&e.getSourceFileOfNode(a)===e.getSourceFileOfNode(r.valueDeclaration.name)&&(a=r.valueDeclaration.name);var l=la(r),u=Ih(l,n);(p=u?la(u):void 0)?R(e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,l,da(n),p):R(e.Diagnostics.Property_0_does_not_exist_on_type_1,l,da(n))}else{var d=t.symbol&&e.firstOrUndefined(t.symbol.declarations),p=void 0;if(r.valueDeclaration&&e.findAncestor(r.valueDeclaration,(function(e){return e===d}))&&e.getSourceFileOfNode(d)===e.getSourceFileOfNode(a)){var f=r.valueDeclaration;e.Debug.assertNode(f,e.isObjectLiteralElementLike),a=f;var m=f.name;e.isIdentifier(m)&&(p=Fh(m,n))}void 0!==p?R(e.Diagnostics.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,la(r),da(n),p):R(e.Diagnostics.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,la(r),da(n))}}return{value:!0}}if(s&&!j(_o(r),function(t,r){var n=function(t,n){var i=3145728&(n=ac(n)).flags?lc(n,r):Js(n,r),a=i&&_o(i)||R_(r)&&kc(n,1)||kc(n,0)||Ne;return e.append(t,a)};return ou(e.reduceLeft(t,n,void 0)||e.emptyArray)}(s,r.escapedName),i))return i&&F(e.Diagnostics.Types_of_property_0_are_incompatible,la(r)),{value:!0}}},u=0,d=Hs(t);u<d.length;u++){var p=l(d[u]);if("object"==typeof p)return p.value}return!1}(c,l,i))return i&&M(o,c,r.aliasSymbol?r:l),0;var m=n!==on&&!(2&s)&&2752508&c.flags&&c!==yt&&2621440&l.flags&&jp(l)&&(Hs(c).length>0||nS(c));if(m&&!function(e,t,r){for(var n=0,i=Hs(e);n<i.length;n++){if(oh(t,i[n].escapedName,r))return!0}return!1}(c,l,p)){if(i){var g=da(t.aliasSymbol?t:c),h=da(r.aliasSymbol?r:l),y=hc(c,0),v=hc(c,1);y.length>0&&j(Bc(y[0]),l,!1)||v.length>0&&j(Bc(v[0]),l,!1)?R(e.Diagnostics.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,g,h):R(e.Diagnostics.Type_0_has_no_properties_in_common_with_type_1,g,h)}return 0}B(c,l);var b=0,x=I();if((3145728&c.flags||3145728&l.flags)&&(b=mg(c)*mg(l)>=4?H(c,l,i,8|s):K(c,l,i,8|s)),b||1048576&c.flags||!(469499904&c.flags||469499904&l.flags)||(b=H(c,l,i,s))&&P(x),!b&&2359296&c.flags){var w=function(t,r){for(var n,i=!1,a=0,o=t;a<o.length;a++)if(465829888&(u=o[a]).flags){for(var s=Ks(u);s&&21233664&s.flags;)s=Ks(s);s&&(n=e.append(n,s),r&&(n=e.append(n,u)))}else 469892092&u.flags&&(i=!0);if(n&&(r||i)){if(i)for(var c=0,l=t;c<l.length;c++){var u;469892092&(u=l[c]).flags&&(n=e.append(n,u))}return fu(n)}}(2097152&c.flags?c.types:[c],!!(1048576&l.flags));w&&(2097152&c.flags||1048576&l.flags)&&lg(w,(function(e){return e!==c}))&&(b=j(w,l,!1,void 0,s))&&P(x)}return b&&!S&&(2097152&l.flags&&(f||m)||od(l)&&!rf(l)&&!vf(l)&&2097152&c.flags&&3670016&ac(c).flags&&!e.some(c.types,(function(t){return!!(2097152&e.getObjectFlags(t))})))&&(S=!0,b&=H(c,l,i,4),S=!1),D(c,l,b,p),b;function D(n,s,c,l){if(!c&&i){n=t.aliasSymbol?t:n,s=r.aliasSymbol?r:s;var d=k>0;if(d&&k--,524288&n.flags&&524288&s.flags){var p=u;L(n,s,i),u!==p&&(d=!!u)}if(524288&n.flags&&131068&s.flags)!function(t,r){var n=ma(t.symbol)?da(t,t.symbol.valueDeclaration):da(t),i=ma(r.symbol)?da(r,r.symbol.valueDeclaration):da(r);(wt===t&&Re===r||Dt===t&&Me===r||Et===t&&qe===r||Pl(!1)===t&&Je===r)&&R(e.Diagnostics._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,i,n)}(n,s);else if(n.symbol&&524288&n.flags&&yt===n)R(e.Diagnostics.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(l&&2097152&s.flags){var f=s.types,m=W_(N.IntrinsicAttributes,a),g=W_(N.IntrinsicClassAttributes,a);if(m!==Ee&&g!==Ee&&(e.contains(f,m)||e.contains(f,g)))return c}else u=mc(u,r);if(!o&&d)return _=[n,s],c;M(o,n,s)}}}function B(t,r){if(e.tracing&&3145728&t.flags&&3145728&r.flags){var n=t,i=r;if(n.objectFlags&i.objectFlags&262144)return;var o=n.types.length,s=i.types.length;o*s>1e6&&e.tracing.instant("checkTypes","traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:t.id,sourceSize:o,targetId:r.id,targetSize:s,pos:null==a?void 0:a.pos,end:null==a?void 0:a.end})}}function z(e,t){for(var r=-1,n=0,i=e.types;n<i.length;n++){var a=U(i[n],t,!1);if(!a)return 0;r&=a}return r}function U(e,t,r){var n=t.types;if(1048576&t.flags&&eu(n,e))return-1;for(var i=0,a=n;i<a.length;i++){var o=j(e,a[i],!1);if(o)return o}r&&j(e,Mp(e,t,j)||n[n.length-1],!0);return 0}function q(e,t,r,n){var i=e.types;if(1048576&e.flags&&eu(i,t))return-1;for(var a=i.length,o=0;o<a;o++){var s=j(i[o],t,r&&o===a-1,void 0,n);if(s)return s}return 0}function V(e,t,r,n){for(var i=-1,a=e.types,o=function(e,t){return 1048576&e.flags&&1048576&t.flags&&!(32768&e.types[0].flags)&&32768&t.types[0].flags?gg(t,-32769):t}(e,t),s=0;s<a.length;s++){var c=a[s];if(1048576&o.flags&&a.length>=o.types.length&&a.length%o.types.length==0){var l=j(c,o.types[s%o.types.length],!1,void 0,n);if(l){i&=l;continue}}var u=j(c,t,r,void 0,n);if(!u)return 0;i&=u}return i}function H(t,r,i,a){if(b)return 0;var o=Kp(t,r,a|(S?16:0),n),s=n.get(o);if(void 0!==s&&(!(i&&2&s)||4&s)){if(or){var c=24&s;8&c&&Wd(t,Nd(G)),16&c&&Wd(t,Nd($))}return 1&s?-1:0}if(f){for(var l=0;l<h;l++)if(o===f[l])return 3;if(100===y)return b=!0,0}else f=[],m=[],g=[];var u=h;f[h]=o,h++,m[y]=t,g[y]=r,y++;var d,p=v;1&v||!Yp(t,m,y)||(v|=1),2&v||!Yp(r,g,y)||(v|=2);var _=0;or&&(d=or,or=function(e){return _|=e?16:8,d(e)}),3===v&&(null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","recursiveTypeRelatedTo_DepthLimit",{sourceId:t.id,sourceIdStack:m.map((function(e){return e.id})),targetId:r.id,targetIdStack:g.map((function(e){return e.id})),depth:y}));var k=3!==v?K(t,r,i,a):3;if(or&&(or=d),v=p,y--,k){if(-1===k||0===y){if(-1===k||3===k)for(l=u;l<h;l++)n.set(f[l],1|_);h=u}}else n.set(o,2|(i?4:0)|_),h=u;return k}function K(t,r,i,a){null===e.tracing||void 0===e.tracing||e.tracing.push("checkTypes","structuredTypeRelatedTo",{sourceId:t.id,targetId:r.id});var o=function(t,r,i,a){if(4&a)return ee(t,r,i,void 0,0);if(8&a)return 1048576&t.flags?n===on?q(t,r,i&&!(131068&t.flags),-9&a):V(t,r,i&&!(131068&t.flags),-9&a):1048576&r.flags?U(Bf(t),r,i&&!(131068&t.flags)&&!(131068&r.flags)):2097152&r.flags?function(e,t,r,n){for(var i=-1,a=0,o=t.types;a<o.length;a++){var s=j(e,o[a],r,void 0,n);if(!s)return 0;i&=s}return i}(Bf(t),r,i,2):q(t,r,!1,1);var o,s,c=t.flags&r.flags;if(n===sn&&!(524288&c)){if(4194304&c)return j(t.type,r.type,!1);var l=0;return 8388608&c&&(l=j(t.objectType,r.objectType,!1))&&(l&=j(t.indexType,r.indexType,!1))||16777216&c&&t.root.isDistributive===r.root.isDistributive&&(l=j(t.checkType,r.checkType,!1))&&(l&=j(t.extendsType,r.extendsType,!1))&&(l&=j(Xu(t),Xu(r),!1))&&(l&=j(Qu(t),Qu(r),!1))?l:33554432&c?j(t.substitute,r.substitute,!1):0}var d=!1,p=I();if(17301504&t.flags&&t.aliasSymbol&&t.aliasTypeArguments&&t.aliasSymbol===r.aliasSymbol&&!t.aliasTypeArgumentsContainsMarker&&!r.aliasTypeArgumentsContainsMarker){if((J=zp(t.aliasSymbol))===e.emptyArray)return 1;if(void 0!==(H=re(t.aliasTypeArguments,r.aliasTypeArguments,J,a)))return H}if(kf(t)&&!t.target.readonly&&(o=j(ll(t)[0],r))||kf(r)&&(r.target.readonly||af(Qs(t)||t))&&(o=j(t,ll(r)[0])))return o;if(262144&r.flags){if(32&e.getObjectFlags(t)&&!t.declaration.nameType&&j(Su(r),Ps(t))&&!(4&Ls(t))){var f=Fs(t),m=qu(r,Ns(t));if(o=j(f,m,i))return o}}else if(4194304&r.flags){var g=r.type;if(4194304&t.flags&&(o=j(g,t.type,!1)))return o;if(vf(g)){if(o=j(t,Yl(g),i))return o}else if((N=Gs(g))&&-1===j(t,Su(N,r.stringsOnly),i))return-1}else if(8388608&r.flags){if(n===an||n===on){var _=r.objectType,h=r.indexType,y=Qs(_)||_,v=Qs(h)||h;if(!Ru(y)&&!Mu(v)){var b=2|(y!==_?1:0);if((N=Vu(y,v,r.noUncheckedIndexedAccessCandidate,void 0,b))&&(o=j(t,N,i)))return o}}}else if(zs(r)&&!r.declaration.nameType){var k=Fs(r),x=Ls(r);if(!(8&x)){if(8388608&k.flags&&k.objectType===t&&k.indexType===Ns(r))return-1;if(!zs(t)){var S=Ps(r),w=Su(t,void 0,!0),D=4&x,E=D?bs(S,w):void 0;if(D?!(131072&E.flags):j(S,w)){f=Fs(r);var T=Ns(r),C=gg(f,-98305);if(8388608&C.flags&&C.indexType===T){if(o=j(t,C.objectType,i))return o}else{m=qu(t,E?fu([E,T]):T);if(o=j(m,f,i))return o}}s=u,P(p)}}}else if(134217728&r.flags&&128&t.flags&&Ou(r)){var A=hm(t,r);if(A&&e.every(A,(function(e,t){return _m(e,r.types[t])})))return-1}if(8650752&t.flags){if(8388608&t.flags&&8388608&r.flags){if((o=j(t.objectType,r.objectType,i))&&(o&=j(t.indexType,r.indexType,i)),o)return P(p),o}else if(!(N=Ks(t))||262144&t.flags&&1&N.flags){if(o=j(nt,gg(r,-67108865)))return P(p),o}else{if(o=j(N,r,!1,void 0,a))return P(p),o;if(o=j(ls(N,t),r,i,void 0,a))return P(p),o}}else if(4194304&t.flags){if(o=j(Qe,r,i))return P(p),o}else if(134217728&t.flags){if(134217728&r.flags&&t.texts.length===r.texts.length&&t.types.length===r.types.length&&e.every(t.texts,(function(e,t){return e===r.texts[t]}))&&e.every(Wd(t,Nd($)).types,(function(e,t){return!!(5&r.types[t].flags)||!!j(e,r.types[t],!1)})))return-1;if((N=Qs(t))&&N!==t&&(o=j(N,r,i)))return P(p),o}else if(268435456&t.flags){var N;if(268435456&r.flags&&t.symbol===r.symbol){if(o=j(t.type,r.type,i))return P(p),o}else if((N=Qs(t))&&(o=j(N,r,i)))return P(p),o}else if(16777216&t.flags){if(16777216&r.flags){var F=t.root.inferTypeParameters,O=t.extendsType,R=void 0;if(F){var M=Qf(F,void 0,0,j);ym(M.inferences,r.extendsType,O,768),O=Wd(O,M.mapper),R=M.mapper}if(np(O,r.extendsType)&&(j(t.checkType,r.checkType)||j(r.checkType,t.checkType))&&((o=j(Wd(Xu(t),R),Xu(r),i))&&(o&=j(Qu(t),Qu(r),i)),o))return P(p),o}else{var L=Ys(t);if(L&&(o=j(L,r,i)))return P(p),o}var B=$s(t);if(B&&(o=j(B,r,i)))return P(p),o}else{if(n!==rn&&n!==nn&&(Z=r,32&e.getObjectFlags(Z)&&4&Ls(Z))&&Ep(t))return-1;if(zs(r))return zs(t)&&(o=function(e,t,r){var i=n===on||(n===sn?Ls(e)===Ls(t):Bs(e)<=Bs(t));if(i){var a;if(a=j(Ps(t),Wd(Ps(e),Nd(Bs(e)<0?G:$)),r)){var o=Td([Ns(e)],[Ns(t)]);if(Wd(Is(e),o)===Wd(Is(t),o))return a&j(Wd(Fs(e),o),Fs(t),r)}}return 0}(t,r,i))?(P(p),o):0;var z=!!(131068&t.flags);if(n!==sn)t=ac(t);else if(zs(t))return 0;if(4&e.getObjectFlags(t)&&4&e.getObjectFlags(r)&&t.target===r.target&&!(8192&e.getObjectFlags(t)||8192&e.getObjectFlags(r))){var J,H;if((J=qp(t.target))===e.emptyArray)return 1;if(void 0!==(H=re(ll(t),ll(r),J,a)))return H}else{if(nf(r)?rf(t)||vf(t):rf(r)&&vf(t)&&!t.target.readonly)return n!==sn?j(kc(t,1)||Se,kc(r,1)||Se,i):0;if((n===rn||n===nn)&&Ep(r)&&32768&e.getObjectFlags(r)&&!Ep(t))return 0}if(2621440&t.flags&&524288&r.flags){var K=i&&u===p.errorInfo&&!z;if((o=ee(t,r,K,void 0,a))&&(o&=te(t,r,0,K))&&(o&=te(t,r,1,K))&&(o&=oe(t,r,0,z,K,a))&&(o&=oe(t,r,1,z,K,a)),d&&o)u=s||u||p.errorInfo;else if(o)return o}if(2621440&t.flags&&1048576&r.flags){var Y=gg(r,36175872);if(1048576&Y.flags){var X=function(t,r){var i=Hs(t),a=jm(i,r);if(!a)return 0;for(var o=1,s=0,c=a;s<c.length;s++){if((o*=dg(_o(p=c[s])))>25)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","typeRelatedToDiscriminatedType_DepthLimit",{sourceId:t.id,targetId:r.id,numCombinations:o}),0}for(var l=new Array(a.length),u=new e.Set,d=0;d<a.length;d++){var p,f=_o(p=a[d]);l[d]=1048576&f.flags?f.types:[f],u.add(p.escapedName)}for(var m=e.cartesianProduct(l),g=[],_=function(i){var o=!1;e:for(var s=0,c=r.types;s<c.length;s++){for(var l=c[s],u=function(e){var o=a[e],s=gc(l,o.escapedName);return s?o===s?"continue":Q(t,r,o,s,(function(t){return i[e]}),!1,0,W||n===on)?void 0:"continue-outer":"continue-outer"},d=0;d<a.length;d++){if("continue-outer"===u(d))continue e}e.pushIfUnique(g,l,e.equateValues),o=!0}if(!o)return{value:0}},h=0,y=m;h<y.length;h++){var v=_(y[h]);if("object"==typeof v)return v.value}for(var b=-1,k=0,x=g;k<x.length;k++){var S=x[k];if((b&=ee(t,S,!1,u,0))&&(b&=te(t,S,0,!1))&&(b&=te(t,S,1,!1))&&(!(b&=oe(t,S,0,!1,!1,0))||vf(t)&&vf(S)||(b&=oe(t,S,1,!1,!1,0))),!b)return b}return b}(t,Y);if(X)return X}}}var Z;return 0;function re(t,r,a,c){if(o=function(t,r,i,a,o){if(void 0===t&&(t=e.emptyArray),void 0===r&&(r=e.emptyArray),void 0===i&&(i=e.emptyArray),t.length!==r.length&&n===sn)return 0;for(var s=t.length<=r.length?t.length:r.length,c=-1,l=0;l<s;l++){var u=l<i.length?i[l]:1,d=7&u;if(4!==d){var p=t[l],f=r[l],m=-1;if(8&u?m=n===sn?j(p,f,!1):ip(p,f):1===d?m=j(p,f,a,void 0,o):2===d?m=j(f,p,a,void 0,o):3===d?(m=j(f,p,!1))||(m=j(p,f,a,void 0,o)):(m=j(p,f,a,void 0,o))&&(m&=j(f,p,a,void 0,o)),!m)return 0;c&=m}}return c}(t,r,a,i,c))return o;if(e.some(a,(function(e){return!!(24&e)})))return s=void 0,void P(p);var l=r&&function(e,t){for(var r=0;r<t.length;r++)if(1==(7&t[r])&&16384&e[r].flags)return!0;return!1}(r,a);if(d=!l,a!==e.emptyArray&&!l){if(d&&(!i||!e.some(a,(function(e){return!(7&e)}))))return 0;s=u,P(p)}}}(t,r,i,a);return null===e.tracing||void 0===e.tracing||e.tracing.pop(),o}function G(e){return!or||e!==pt&&e!==ft&&e!==sr||or(!1),e}function $(e){return!or||e!==pt&&e!==ft&&e!==sr||or(!0),e}function Y(e,t){if(!t||0===e.length)return e;for(var r,n=0;n<e.length;n++)t.has(e[n].escapedName)?r||(r=e.slice(0,n)):r&&r.push(e[n]);return r||e}function Q(t,r,n,i,a,o,s,c){var l=e.getDeclarationModifierFlagsFromSymbol(n),u=e.getDeclarationModifierFlagsFromSymbol(i);if(8&l||8&u){if(n.valueDeclaration!==i.valueDeclaration)return o&&(8&l&&8&u?R(e.Diagnostics.Types_have_separate_declarations_of_a_private_property_0,la(i)):R(e.Diagnostics.Property_0_is_private_in_type_1_but_not_in_type_2,la(i),da(8&l?t:r),da(8&l?r:t))),0}else if(16&u){if(!function(t,r){return!Wp(r,(function(r){return!!(16&e.getDeclarationModifierFlagsFromSymbol(r))&&(n=t,i=Gp(r),!Wp(n,(function(e){var t=Gp(e);return!!t&&vo(t,i)})));var n,i}))}(n,i))return o&&R(e.Diagnostics.Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2,la(i),da(Gp(n)||t),da(Gp(i)||r)),0}else if(16&l)return o&&R(e.Diagnostics.Property_0_is_protected_in_type_1_but_public_in_type_2,la(i),da(t),da(r)),0;var d=function(t,r,n,i,a){var o=W&&!!(48&e.getCheckFlags(r)),s=n(t);if(65536&e.getCheckFlags(r)&&!Tn(r).type){var c=Tn(r);e.Debug.assertIsDefined(c.deferralParent),e.Debug.assertIsDefined(c.deferralConstituents);for(var l=!!(1048576&c.deferralParent.flags),u=l?0:-1,d=0,p=c.deferralConstituents;d<p.length;d++){var f=j(s,p[d],!1,void 0,l?0:2);if(l){if(f)return f}else{if(!f)return j(s,za(_o(r),o),i);u&=f}}return l&&!u&&o&&(u=j(s,Ne)),l&&!u&&i?j(s,za(_o(r),o),i):u}return j(s,za(_o(r),o),i,void 0,a)}(n,i,a,o,s);return d?c||!(16777216&n.flags)||16777216&i.flags?d:(o&&R(e.Diagnostics.Property_0_is_optional_in_type_1_but_required_in_type_2,la(i),da(t),da(r)),0):(o&&F(e.Diagnostics.Types_of_property_0_are_incompatible,la(i)),0)}function Z(t,r,n,a){var s=!1;if(n.valueDeclaration&&e.isNamedDeclaration(n.valueDeclaration)&&e.isPrivateIdentifier(n.valueDeclaration.name)&&t.symbol&&32&t.symbol.flags){var c=n.valueDeclaration.name.escapedText,d=e.getSymbolNameForPrivateIdentifier(t.symbol,c);if(d&&gc(t,d)){var f=e.factory.getDeclarationName(t.symbol.valueDeclaration),m=e.factory.getDeclarationName(r.symbol.valueDeclaration);return void R(e.Diagnostics.Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2,Ln(c),Ln(""===f.escapedText?l:f),Ln(""===m.escapedText?l:m))}}var g,_=e.arrayFrom(dm(t,r,a,!1));if((!o||o.code!==e.Diagnostics.Class_0_incorrectly_implements_interface_1.code&&o.code!==e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code)&&(s=!0),1===_.length){var h=la(n);R.apply(void 0,i([e.Diagnostics.Property_0_is_missing_in_type_1_but_required_in_type_2,h],pa(t,r))),e.length(n.declarations)&&(g=e.createDiagnosticForNode(n.declarations[0],e.Diagnostics._0_is_declared_here,h),e.Debug.assert(!!u),p?p.push(g):p=[g]),s&&u&&k++}else L(t,r,!1)&&(_.length>5?R(e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,da(t),da(r),e.map(_.slice(0,4),(function(e){return la(e)})).join(", "),_.length-4):R(e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,da(t),da(r),e.map(_,(function(e){return la(e)})).join(", ")),s&&u&&k++)}function ee(t,r,i,a,o){if(n===sn)return function(e,t,r){if(!(524288&e.flags&&524288&t.flags))return 0;var n=Y(qs(e),r),i=Y(qs(t),r);if(n.length!==i.length)return 0;for(var a=-1,o=0,s=n;o<s.length;o++){var c=s[o],l=Js(t,c.escapedName);if(!l)return 0;var u=Zp(c,l,j);if(!u)return 0;a&=u}return a}(t,r,a);var s=-1;if(vf(r)){if(rf(t)||vf(t)){if(!r.target.readonly&&(nf(t)||vf(t)&&t.target.readonly))return 0;var c=ul(t),l=ul(r),u=vf(t)?4&t.target.combinedFlags:4,d=4&r.target.combinedFlags,p=vf(t)?t.target.minLength:0,f=r.target.minLength;if(!u&&c<f)return i&&R(e.Diagnostics.Source_has_0_element_s_but_target_requires_1,c,f),0;if(!d&&l<p)return i&&R(e.Diagnostics.Source_has_0_element_s_but_target_allows_only_1,p,l),0;if(!d&&u)return i&&(p<f?R(e.Diagnostics.Target_requires_0_element_s_but_source_may_have_fewer,f):R(e.Diagnostics.Target_allows_only_0_element_s_but_source_may_have_more,l)),0;for(var m=ll(t),g=ll(r),_=Math.min(vf(t)?Xl(t.target,11):0,Xl(r.target,11)),h=Math.min(vf(t)?Ql(t.target,11):0,d?Ql(r.target,11):0),y=!!a,v=0;v<l;v++){var b=v<l-h?v:v+c-l,k=vf(t)&&(v<_||v>=l-h)?t.target.elementFlags[b]:4,x=r.target.elementFlags[v];if(8&x&&!(8&k))return i&&R(e.Diagnostics.Source_provides_no_match_for_variadic_element_at_position_0_in_target,v),0;if(8&k&&!(12&x))return i&&R(e.Diagnostics.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,b,v),0;if(1&x&&!(1&k))return i&&R(e.Diagnostics.Source_provides_no_match_for_required_element_at_position_0_in_target,v),0;if(!(y&&((12&k||12&x)&&(y=!1),y&&(null==a?void 0:a.has(""+v))))){var S=vf(t)?v<_||v>=l-h?m[b]:Sf(t,_,h)||He:m[0],w=g[v];if(!(B=j(S,8&k&&4&x?jl(w):w,i,void 0,o)))return i&&(v<_||v>=l-h||c-_-h==1?F(e.Diagnostics.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,b,v):F(e.Diagnostics.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,_,c-h-1,v)),0;s&=B}}return s}if(12&r.target.combinedFlags)return 0}var D=!(n!==rn&&n!==nn||km(t)||cf(t)||vf(t)),E=pm(t,r,D,!1);if(E)return i&&Z(t,r,E,D),0;if(km(r))for(var T=0,C=Y(Hs(t),a);T<C.length;T++){if(!Js(r,(O=C[T]).escapedName))if((S=_o(O))!==Ne&&S!==Pe&&S!==Ie)return i&&R(e.Diagnostics.Property_0_does_not_exist_on_type_1,la(O),da(r)),0}for(var A=Hs(r),N=vf(t)&&vf(r),P=0,I=Y(A,a);P<I.length;P++){var O,M=I[P],L=M.escapedName;if(!(4194304&M.flags)&&(!N||R_(L)||"length"===L))if((O=gc(t,L))&&O!==M){var B;if(!(B=Q(t,r,O,M,_o,i,o,n===on)))return 0;s&=B}}return s}function te(t,r,i,a){var o,s;if(n===sn)return function(e,t,r){var n=hc(e,r),i=hc(t,r);if(n.length!==i.length)return 0;for(var a=-1,o=0;o<n.length;o++){var s=ef(n[o],i[o],!1,!1,!1,j);if(!s)return 0;a&=s}return a}(t,r,i);if(r===ct||t===ct)return-1;var c=t.symbol&&Fy(t.symbol.valueDeclaration),l=r.symbol&&Fy(r.symbol.valueDeclaration),u=hc(t,c&&1===i?0:i),d=hc(r,l&&1===i?0:i);if(1===i&&u.length&&d.length){var p=!!(4&u[0].flags),f=!!(4&d[0].flags);if(p&&!f)return a&&R(e.Diagnostics.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!function(t,r,n){if(!t.declaration||!r.declaration)return!0;var i=e.getSelectedEffectiveModifierFlags(t.declaration,24),a=e.getSelectedEffectiveModifierFlags(r.declaration,24);if(8===a)return!0;if(16===a&&8!==i)return!0;if(16!==a&&!i)return!0;n&&R(e.Diagnostics.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,ya(i),ya(a));return!1}(u[0],d[0],a))return 0}var m=-1,g=I(),_=1===i?ne:re,h=e.getObjectFlags(t),y=e.getObjectFlags(r);if(64&h&&64&y&&t.symbol===r.symbol)for(var v=0;v<d.length;v++){if(!(N=ie(u[v],d[v],!0,a,_(u[v],d[v]))))return 0;m&=N}else if(1===u.length&&1===d.length){var b=n===on||!!J.noStrictGenericChecks,k=e.first(u),x=e.first(d);if(!(m=ie(k,x,b,a,_(k,x)))&&a&&1===i&&h&y&&(167===(null===(o=x.declaration)||void 0===o?void 0:o.kind)||167===(null===(s=k.declaration)||void 0===s?void 0:s.kind))){var S=function(e){return ua(e,void 0,262144,i)};return R(e.Diagnostics.Type_0_is_not_assignable_to_type_1,S(k),S(x)),R(e.Diagnostics.Types_of_construct_signatures_are_incompatible),m}}else e:for(var w=0,D=d;w<D.length;w++){for(var E=D[w],T=a,C=0,A=u;C<A.length;C++){var N,F=A[C];if(N=ie(F,E,!0,T,_(F,E))){m&=N,P(g);continue e}T=!1}return T&&R(e.Diagnostics.Type_0_provides_no_match_for_the_signature_1,da(t),ua(E,void 0,void 0,i)),0}return m}function re(t,r){return 0===t.parameters.length&&0===r.parameters.length?function(t,r){return F(e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,da(t),da(r))}:function(t,r){return F(e.Diagnostics.Call_signature_return_types_0_and_1_are_incompatible,da(t),da(r))}}function ne(t,r){return 0===t.parameters.length&&0===r.parameters.length?function(t,r){return F(e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,da(t),da(r))}:function(t,r){return F(e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible,da(t),da(r))}}function ie(e,t,r,i,a){return Sp(r?Kc(e):e,r?Kc(t):t,n===nn?8:0,i,R,a,j,Nd($))}function ae(t,r,n){var i=j(t,r,n);return!i&&n&&R(e.Diagnostics.Index_signatures_are_incompatible),i}function oe(t,r,i,a,o,s){if(n===sn)return function(e,t,r){var n=bc(t,r),i=bc(e,r);if(!i&&!n)return-1;if(i&&n&&i.isReadonly===n.isReadonly)return j(i.type,n.type);return 0}(t,r,i);var c=kc(r,i);if(!c||1&c.flags&&!a)return-1;if(zs(t))return kc(r,0)?j(Fs(t),c,o):0;var l=kc(t,i)||1===i&&kc(t,0);if(l)return ae(l,c,o);if(!(1&s)&&Lf(t)){var u=function(t,r,n,i){for(var a=-1,o=0,s=2097152&t.flags?Vs(t):qs(t);o<s.length;o++){var c=s[o];if(!Ip(t,c)){var l=Tn(c).nameType;if(!(l&&8192&l.flags)&&(0===n||R_(c.escapedName))){var u=_o(c),d=j(32768&u.flags||!(0===n&&16777216&c.flags)?u:Hm(u,524288),r,i);if(!d)return i&&R(e.Diagnostics.Property_0_is_incompatible_with_index_signature,la(c)),0;a&=d}}}return a}(t,c,i,o);if(u&&0===i){var d=kc(t,1);d&&(u&=ae(d,c,o))}return u}return o&&R(e.Diagnostics.Index_signature_is_missing_in_type_0,da(t)),0}}function Rp(t){if(16&t.flags)return!1;if(3145728&t.flags)return!!e.forEach(t.types,Rp);if(465829888&t.flags){var r=Ks(t);if(r&&r!==t)return Rp(r)}return pf(t)||!!(134217728&t.flags)}function Mp(t,r,n){return void 0===n&&(n=ap),hw(t,r,n,!0)||function(t,r){var n=e.getObjectFlags(t);if(20&n&&1048576&r.flags)return e.find(r.types,(function(r){if(524288&r.flags){var i=n&e.getObjectFlags(r);if(4&i)return t.target===r.target;if(16&i)return!!t.aliasSymbol&&t.aliasSymbol===r.aliasSymbol}return!1}))}(t,r)||function(t,r){if(128&e.getObjectFlags(t)&&cg(r,sf))return e.find(r.types,(function(e){return!sf(e)}))}(t,r)||function(t,r){var n=0,i=hc(t,n).length>0||hc(t,n=1).length>0;if(i)return e.find(r.types,(function(e){return hc(e,n).length>0}))}(t,r)||function(t,r){for(var n,i=0,a=0,o=r.types;a<o.length;a++){var s=o[a],c=fu([Su(t),Su(s)]);if(4194304&c.flags)n=s,i=1/0;else if(1048576&c.flags){var l=e.length(e.filter(c.types,pf));l>=i&&(n=s,i=l)}else pf(c)&&1>=i&&(n=s,i=1)}return n}(t,r)}function Lp(t,r,n,i,a){for(var o=t.types.map((function(e){})),s=0,c=r;s<c.length;s++){var l=c[s],u=l[0],d=l[1],p=cc(t,d);if(!(a&&p&&16&e.getCheckFlags(p)))for(var f=0,m=0,g=t.types;m<g.length;m++){var _=Na(g[m],d);_&&n(u(),_)?o[f]=void 0===o[f]||o[f]:o[f]=!1,f++}}var h=o.indexOf(!0);if(-1===h)return i;for(var y=o.indexOf(!0,h+1);-1!==y;){if(!np(t.types[h],t.types[y]))return i;y=o.indexOf(!0,y+1)}return t.types[h]}function jp(t){if(524288&t.flags){var r=Us(t);return 0===r.callSignatures.length&&0===r.constructSignatures.length&&!r.stringIndexInfo&&!r.numberIndexInfo&&r.properties.length>0&&e.every(r.properties,(function(e){return!!(16777216&e.flags)}))}return!!(2097152&t.flags)&&e.every(t.types,jp)}function Bp(t,r,n){var i=ol(t,e.map(t.typeParameters,(function(e){return e===r?n:e})));return i.objectFlags|=8192,i}function zp(e){var t=Tn(e);return Up(t.typeParameters,t,(function(r,n,i){var a=pl(e,Dd(t.typeParameters,Ad(n,i)));return a.aliasTypeArgumentsContainsMarker=!0,a}))}function Up(t,r,n){var i,a,o;void 0===t&&(t=e.emptyArray);var s=r.variances;if(!s){null===e.tracing||void 0===e.tracing||e.tracing.push("checkTypes","getVariancesWorker",{arity:t.length,id:null!==(o=null!==(i=r.id)&&void 0!==i?i:null===(a=r.declaredType)||void 0===a?void 0:a.id)&&void 0!==o?o:-1}),r.variances=e.emptyArray,s=[];for(var c=function(e){var t=!1,i=!1,a=or;or=function(e){return e?i=!0:t=!0};var o=n(r,e,pt),c=n(r,e,ft),l=(cp(c,o)?1:0)|(cp(o,c)?2:0);3===l&&cp(n(r,e,sr),o)&&(l=4),or=a,(t||i)&&(t&&(l|=8),i&&(l|=16)),s.push(l)},l=0,u=t;l<u.length;l++){c(u[l])}r.variances=s,null===e.tracing||void 0===e.tracing||e.tracing.pop()}return s}function qp(e){return e===xt||e===St||8&e.objectFlags?C:Up(e.typeParameters,e,Bp)}function Jp(e){return 262144&e.flags&&!Ws(e)}function Vp(t){return function(t){return!!(4&e.getObjectFlags(t))&&!t.node}(t)&&e.some(ll(t),(function(e){return Jp(e)||Vp(e)}))}function Hp(e,t,r){void 0===r&&(r=0);for(var n=""+e.target.id,i=0,a=ll(e);i<a.length;i++){var o=a[i];if(Jp(o)){var s=t.indexOf(o);s<0&&(s=t.length,t.push(o)),n+="="+s}else r<4&&Vp(o)?n+="<"+Hp(o,t,r+1)+">":n+="-"+o.id}return n}function Kp(e,t,r,n){if(n===sn&&e.id>t.id){var i=e;e=t,t=i}var a=r?":"+r:"";if(Vp(e)&&Vp(t)){var o=[];return Hp(e,o)+","+Hp(t,o)+a}return e.id+","+t.id+a}function Wp(t,r){if(!(6&e.getCheckFlags(t)))return r(t);for(var n=0,i=t.containingType.types;n<i.length;n++){var a=gc(i[n],t.escapedName),o=a&&Wp(a,r);if(o)return o}}function Gp(e){return e.parent&&32&e.parent.flags?Jo(Ni(e)):void 0}function $p(e){var t=Gp(e),r=t&&Po(t)[0];return r&&Na(r,e.escapedName)}function Yp(e,t,r){if(r>=5){var n=Xp(e);if(n)for(var i=0,a=0;a<r;a++)if(Xp(t[a])===n&&++i>=5)return!0}return!1}function Xp(t){if(524288&t.flags&&!xm(t)){if(e.getObjectFlags(t)&&t.node)return t.node;if(t.symbol&&!(16&e.getObjectFlags(t)&&32&t.symbol.flags))return t.symbol;if(vf(t))return t.target}if(8388608&t.flags){do{t=t.objectType}while(8388608&t.flags);return t}if(16777216&t.flags)return t.root}function Qp(e,t){return 0!==Zp(e,t,ip)}function Zp(t,r,n){if(t===r)return-1;var i=24&e.getDeclarationModifierFlagsFromSymbol(t);if(i!==(24&e.getDeclarationModifierFlagsFromSymbol(r)))return 0;if(i){if(gx(t)!==gx(r))return 0}else if((16777216&t.flags)!=(16777216&r.flags))return 0;return Nv(t)!==Nv(r)?0:n(_o(t),_o(r))}function ef(t,r,n,i,a,o){if(t===r)return-1;if(!function(e,t,r){var n=ov(e),i=ov(t),a=sv(e),o=sv(t),s=cv(e),c=cv(t);return n===i&&a===o&&s===c||!!(r&&a<=o)}(t,r,n))return 0;if(e.length(t.typeParameters)!==e.length(r.typeParameters))return 0;if(r.typeParameters){for(var s=Td(t.typeParameters,r.typeParameters),c=0;c<r.typeParameters.length;c++){if(!((g=t.typeParameters[c])===(f=r.typeParameters[c])||o(Wd(tl(g),s)||Ae,tl(f)||Ae)&&o(Wd(nc(g),s)||Ae,nc(f)||Ae)))return 0}t=jd(t,s,!0)}var l=-1;if(!i){var u=Lc(t);if(u){var d=Lc(r);if(d){if(!(m=o(u,d)))return 0;l&=m}}}var p=ov(r);for(c=0;c<p;c++){var f,m,g=nv(t,c);if(!(m=o(f=nv(r,c),g)))return 0;l&=m}if(!a){var _=jc(t),h=jc(r);l&=_||h?function(e,t,r){return e&&t&&su(e,t)?e.type===t.type?-1:e.type&&t.type?r(e.type,t.type):0:0}(_,h,o):o(Bc(t),Bc(r))}return l}function tf(t){return function(e){for(var t,r=0,n=e;r<n.length;r++){var i=n[r],a=mf(i);if(t||(t=a),a===i||a!==t)return!1}return!0}(t)?ou(t):e.reduceLeft(t,(function(e,t){return sp(e,t)?t:e}))}function rf(t){return!!(4&e.getObjectFlags(t))&&(t.target===xt||t.target===St)}function nf(t){return!!(4&e.getObjectFlags(t))&&t.target===St}function af(e){return rf(e)&&!nf(e)||vf(e)&&!e.target.readonly}function of(e){return rf(e)?ll(e)[0]:void 0}function sf(e){return rf(e)||!(98304&e.flags)&&cp(e,Pt)}function cf(e){var t=rf(e)?ll(e)[0]:void 0;return t===Pe||t===Ge}function lf(e){return vf(e)||!!gc(e,"0")}function uf(e){return sf(e)||lf(e)}function df(e){return!(240512&e.flags)}function pf(e){return!!(109440&e.flags)}function ff(t){return!!(16&t.flags)||(1048576&t.flags?!!(1024&t.flags)||e.every(t.types,pf):pf(t))}function mf(e){return 1024&e.flags?Bo(e):128&e.flags?Re:256&e.flags?Me:2048&e.flags?Le:512&e.flags?qe:1048576&e.flags?pg(e,mf):e}function gf(e){return 1024&e.flags&&_d(e)?Bo(e):128&e.flags&&_d(e)?Re:256&e.flags&&_d(e)?Me:2048&e.flags&&_d(e)?Le:512&e.flags&&_d(e)?qe:1048576&e.flags?pg(e,gf):e}function _f(e){return 8192&e.flags?Je:1048576&e.flags?pg(e,_f):e}function hf(e,t){return Qv(e,t)||(e=_f(gf(e))),e}function yf(e,t,r,n){e&&pf(e)&&(e=hf(e,t?tx(r,t,n):void 0));return e}function vf(t){return!!(4&e.getObjectFlags(t)&&8&t.target.objectFlags)}function bf(e){return vf(e)&&!!(8&e.target.combinedFlags)}function kf(e){return bf(e)&&1===e.target.elementFlags.length}function xf(e){return Sf(e,e.target.fixedLength)}function Sf(e,t,r,n){void 0===r&&(r=0),void 0===n&&(n=!1);var i=ul(e)-r;if(t<i){for(var a=ll(e),o=[],s=t;s<i;s++){var c=a[s];o.push(8&e.target.elementFlags[s]?qu(c,Me):c)}return n?fu(o):ou(o)}}function wf(e){return"0"===e.value.base10Value}function Df(e){for(var t=0,r=0,n=e;r<n.length;r++){t|=Ef(n[r])}return t}function Ef(e){return 1048576&e.flags?Df(e.types):128&e.flags?""===e.value?128:0:256&e.flags?0===e.value?256:0:2048&e.flags?wf(e)?2048:0:512&e.flags?e===je||e===Be?512:0:117724&e.flags}function Tf(e){return 117632&Ef(e)?ug(e,(function(e){return!(117632&Ef(e))})):e}function Cf(e){return 4&e.flags?Ar:8&e.flags?Nr:64&e.flags?Pr:e===Be||e===je||114691&e.flags||128&e.flags&&""===e.value||256&e.flags&&0===e.value||2048&e.flags&&wf(e)?e:He}function Af(e,t){var r=t&~e.flags&98304;return 0===r?e:ou(32768===r?[e,Ne]:65536===r?[e,Fe]:[e,Ne,Fe])}function Nf(t){return e.Debug.assert(W),32768&t.flags?t:ou([t,Ne])}function Pf(e){return W?function(e){return It||(It=Cl("NonNullable",524288,void 0)||ke),It!==ke?pl(It,[e]):Hm(e,2097152)}(e):e}function If(e){return W?ou([e,Ie]):e}function Ff(e){return e!==Ie}function Of(e){return W?ug(e,Ff):e}function Rf(t,r,n){return n?e.isOutermostOptionalChain(r)?Nf(t):If(t):t}function Mf(t,r){return e.isExpressionOfOptionalChainRoot(r)?Pf(t):e.isOptionalChain(r)?Of(t):t}function Lf(t){return 2097152&t.flags?e.every(t.types,Lf):!(!(t.symbol&&7040&t.symbol.flags)||nS(t))||!!(2048&e.getObjectFlags(t)&&Lf(t.source))}function jf(t,r){var n=yn(t.flags,t.escapedName,8&e.getCheckFlags(t));n.declarations=t.declarations,n.parent=t.parent,n.type=r,n.target=t,t.valueDeclaration&&(n.valueDeclaration=t.valueDeclaration);var i=Tn(t).nameType;return i&&(n.nameType=i),n}function Bf(t){if(!(km(t)&&32768&e.getObjectFlags(t)))return t;var r=t.regularType;if(r)return r;var n=t,i=function(t,r){for(var n=e.createSymbolTable(),i=0,a=qs(t);i<a.length;i++){var o=a[i],s=_o(o),c=r(s);n.set(o.escapedName,c===s?o:jf(o,c))}return n}(t,Bf),a=Wi(n.symbol,i,n.callSignatures,n.constructSignatures,n.stringIndexInfo,n.numberIndexInfo);return a.flags=n.flags,a.objectFlags|=-32769&n.objectFlags,t.regularType=a,a}function zf(e,t,r){return{parent:e,propertyName:t,siblings:r,resolvedProperties:void 0}}function Uf(e){if(!e.siblings){for(var t=[],r=0,n=Uf(e.parent);r<n.length;r++){var i=n[r];if(km(i)){var a=Js(i,e.propertyName);a&&cg(_o(a),(function(e){t.push(e)}))}}e.siblings=t}return e.siblings}function qf(t){if(!t.resolvedProperties){for(var r=new e.Map,n=0,i=Uf(t);n<i.length;n++){var a=i[n];if(km(a)&&!(1024&e.getObjectFlags(a)))for(var o=0,s=Hs(a);o<s.length;o++){var c=s[o];r.set(c.escapedName,c)}}t.resolvedProperties=e.arrayFrom(r.values())}return t.resolvedProperties}function Jf(e,t){if(!(4&e.flags))return e;var r=_o(e),n=Kf(r,t&&zf(t,e.escapedName,void 0));return n===r?e:jf(e,n)}function Vf(e){var t=be.get(e.escapedName);if(t)return t;var r=jf(e,Ne);return r.flags|=16777216,be.set(e.escapedName,r),r}function Hf(e){return Kf(e,void 0)}function Kf(t,r){if(1572864&e.getObjectFlags(t)){if(void 0===r&&t.widened)return t.widened;var n=void 0;if(98305&t.flags)n=Se;else if(km(t))n=function(t,r){for(var n=e.createSymbolTable(),i=0,a=qs(t);i<a.length;i++){var o=a[i];n.set(o.escapedName,Jf(o,r))}if(r)for(var s=0,c=qf(r);s<c.length;s++)o=c[s],n.has(o.escapedName)||n.set(o.escapedName,Vf(o));var l=bc(t,0),u=bc(t,1),d=Wi(t.symbol,n,e.emptyArray,e.emptyArray,l&&Qc(Hf(l.type),l.isReadonly),u&&Qc(Hf(u.type),u.isReadonly));return d.objectFlags|=2113536&e.getObjectFlags(t),d}(t,r);else if(1048576&t.flags){var i=r||zf(void 0,void 0,t.types),a=e.sameMap(t.types,(function(e){return 98304&e.flags?e:Kf(e,i)}));n=ou(a,e.some(a,Ep)?2:1)}else 2097152&t.flags?n=fu(e.sameMap(t.types,Hf)):(rf(t)||vf(t))&&(n=ol(t.target,e.sameMap(ll(t),Hf)));return n&&void 0===r&&(t.widened=n),n||t}return t}function Wf(t){var r=!1;if(524288&e.getObjectFlags(t)){if(1048576&t.flags)if(e.some(t.types,Ep))r=!0;else for(var n=0,i=t.types;n<i.length;n++){Wf(u=i[n])&&(r=!0)}if(rf(t)||vf(t))for(var a=0,o=ll(t);a<o.length;a++){Wf(u=o[a])&&(r=!0)}if(km(t))for(var s=0,c=qs(t);s<c.length;s++){var l=c[s],u=_o(l);524288&e.getObjectFlags(u)&&(Wf(u)||pn(l.valueDeclaration,e.Diagnostics.Object_literal_s_property_0_implicitly_has_an_1_type,la(l),da(Hf(u))),r=!0)}}return r}function Gf(t,r,n){var i=da(Hf(r));if(!e.isInJSFile(t)||e.isCheckJsEnabledForFile(e.getSourceFileOfNode(t),J)){var a;switch(t.kind){case 218:case 164:case 163:a=X?e.Diagnostics.Member_0_implicitly_has_an_1_type:e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 161:var o=t;if(e.isIdentifier(o.name)&&(e.isCallSignatureDeclaration(o.parent)||e.isMethodSignature(o.parent)||e.isFunctionTypeNode(o.parent))&&o.parent.parameters.indexOf(o)>-1&&(Fn(o,o.name.escapedText,788968,void 0,o.name.escapedText,!0)||o.name.originalKeywordKind&&e.isTypeNodeKind(o.name.originalKeywordKind))){var s="arg"+o.parent.parameters.indexOf(o);return void mn(X,t,e.Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,s,e.declarationNameToString(o.name))}a=t.dotDotDotToken?X?e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type:e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:X?e.Diagnostics.Parameter_0_implicitly_has_an_1_type:e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 199:if(a=e.Diagnostics.Binding_element_0_implicitly_has_an_1_type,!X)return;break;case 311:return void pn(t,e.Diagnostics.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,i);case 253:case 166:case 165:case 168:case 169:case 209:case 210:if(X&&!t.name)return void pn(t,3===n?e.Diagnostics.Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:e.Diagnostics.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,i);a=X?3===n?e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 191:return void(X&&pn(t,e.Diagnostics.Mapped_object_type_implicitly_has_an_any_template_type));default:a=X?e.Diagnostics.Variable_0_implicitly_has_an_1_type:e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}mn(X,t,a,e.declarationNameToString(e.getNameOfDeclaration(t)),i)}}function $f(t,n,i){!(r&&X&&524288&e.getObjectFlags(n))||i&&C_(t)||Wf(n)||Gf(t,n,i)}function Yf(e,t,r){var n=ov(e),i=ov(t),a=lv(e),o=lv(t),s=o?i-1:i,c=a?s:Math.min(n,s),l=Lc(e);if(l){var u=Lc(t);u&&r(l,u)}for(var d=0;d<c;d++)r(nv(e,d),nv(t,d));o&&r(av(e,c),o)}function Xf(e,t,r){var n=jc(e),i=jc(t);n&&i&&su(n,i)&&n.type&&i.type?r(n.type,i.type):r(Bc(e),Bc(t))}function Qf(e,t,r,n){return Zf(e.map(rm),t,r,n||ap)}function Zf(e,t,r,n){var i={inferences:e,signature:t,flags:r,compareTypes:n,mapper:Nd((function(e){return em(i,e,!0)})),nonFixingMapper:Nd((function(e){return em(i,e,!1)}))};return i}function em(e,t,r){for(var n=e.inferences,i=0;i<n.length;i++){var a=n[i];if(t===a.typeParameter)return r&&!a.isFixed&&(tm(n),a.isFixed=!0),Dm(e,i)}return t}function tm(e){for(var t=0,r=e;t<r.length;t++){var n=r[t];n.isFixed||(n.inferredType=void 0)}}function rm(e){return{typeParameter:e,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function nm(e){return{typeParameter:e.typeParameter,candidates:e.candidates&&e.candidates.slice(),contraCandidates:e.contraCandidates&&e.contraCandidates.slice(),inferredType:e.inferredType,priority:e.priority,topLevel:e.topLevel,isFixed:e.isFixed,impliedArity:e.impliedArity}}function im(e){return e&&e.mapper}function am(t){var r=e.getObjectFlags(t);if(67108864&r)return!!(134217728&r);var n=!!(465829888&t.flags||524288&t.flags&&!om(t)&&(4&r&&(t.node||e.forEach(ll(t),am))||16&r&&t.symbol&&14384&t.symbol.flags&&t.symbol.declarations||131104&r)||3145728&t.flags&&!(1024&t.flags)&&!om(t)&&e.some(t.types,am));return 3899393&t.flags&&(t.objectFlags|=67108864|(n?134217728:0)),n}function om(t){if(t.aliasSymbol&&!t.aliasTypeArguments){var r=e.getDeclarationOfKind(t.aliasSymbol,257);return!(!r||!e.findAncestor(r.parent,(function(e){return 300===e.kind||259!==e.kind&&"quit"})))}return!1}function sm(t,r){return!!(t===r||3145728&t.flags&&e.some(t.types,(function(e){return sm(e,r)}))||16777216&t.flags&&(Xu(t)===r||Qu(t)===r))}function cm(t,r,n){if(!xr){var i=t.id+","+r.id+","+n.id;if(kr.has(i))return kr.get(i);xr=!0;var a=function(t,r,n){if(!(bc(t,0)||0!==Hs(t).length&&lm(t)))return;if(rf(t))return jl(um(ll(t)[0],r,n),nf(t));if(vf(t)){return Hl(e.map(ll(t),(function(e){return um(e,r,n)})),4&Ls(r)?e.sameMap(t.target.elementFlags,(function(e){return 2&e?1:e})):t.target.elementFlags,t.target.readonly,t.target.labeledElementDeclarations)}var i=qi(2064,void 0);return i.source=t,i.mappedType=r,i.constraintType=n,i}(t,r,n);return xr=!1,kr.set(i,a),a}}function lm(t){return!(2097152&e.getObjectFlags(t))||km(t)&&e.some(Hs(t),(function(e){return lm(_o(e))}))||vf(t)&&e.some(ll(t),lm)}function um(e,t,r){var n=qu(r.type,Ns(t)),i=Fs(t),a=rm(n);return ym([a],e,i),fm(a)||Ae}function dm(t,r,n,i){var a,o,c,l,u,d,p;return s(this,(function(s){switch(s.label){case 0:a=Hs(r),o=0,c=a,s.label=1;case 1:return o<c.length?Xo(l=c[o])||!n&&(16777216&l.flags||48&e.getCheckFlags(l))?[3,5]:(u=gc(t,l.escapedName))?[3,3]:[4,l]:[3,6];case 2:return s.sent(),[3,5];case 3:return i&&109440&(d=_o(l)).flags?1&(p=_o(u)).flags||gd(p)===gd(d)?[3,5]:[4,l]:[3,5];case 4:s.sent(),s.label=5;case 5:return o++,[3,1];case 6:return[2]}}))}function pm(e,t,r,n){var i=dm(e,t,r,n).next();if(!i.done)return i.value}function fm(e){return e.candidates?ou(e.candidates,2):e.contraCandidates?fu(e.contraCandidates):void 0}function mm(e){return!!Cn(e).skipDirectInference}function gm(t){return!(!t.symbol||!e.some(t.symbol.declarations,mm))}function _m(t,r){if(1048576&r.flags)return!!cg(r,(function(e){return _m(t,e)}));switch(r){case Re:return!0;case Me:return""!==t.value&&isFinite(+t.value);case Le:return""!==t.value&&function(t){var r=e.createScanner(99,!1),n=!0;r.setOnError((function(){return n=!1})),r.setText(t+"n");var i=r.scan();40===i&&(i=r.scan());var a=r.getTokenFlags();return n&&9===i&&r.getTextPos()===t.length+1&&!(512&a)}(t.value);case ze:return"true"===t.value;case je:return"false"===t.value;case Ne:return"undefined"===t.value;case Fe:return"null"===t.value;default:return!!(1&r.flags)}}function hm(e,t){var r=e.value,n=t.texts,i=n.length-1,a=n[0],o=n[i];if(r.startsWith(a)&&r.slice(a.length).endsWith(o)){for(var s=[],c=r.slice(a.length,r.length-o.length),l=0,u=1;u<i;u++){var d=n[u],p=d.length>0?c.indexOf(d,l):l<c.length?l+1:-1;if(p<0)return;s.push(hd(c.slice(l,p))),l=p+d.length}return s.push(hd(c.slice(l))),s}}function ym(t,r,n,i,a){void 0===i&&(i=0),void 0===a&&(a=!1);var o,s,c,l,u=!1,d=1024,p=!0,f=0;function m(r,s){if(am(s)){if(r===De){var c=o;return o=r,m(s,s),void(o=c)}if(r.aliasSymbol&&r.aliasTypeArguments&&r.aliasSymbol===s.aliasSymbol)y(r.aliasTypeArguments,s.aliasTypeArguments,zp(r.aliasSymbol));else if(r===s&&3145728&r.flags)for(var l=0,f=r.types;l<f.length;l++){var v=f[l];m(v,v)}else{if(1048576&s.flags){var x=h(1048576&r.flags?r.types:[r],s.types,vm),D=h(x[0],x[1],bm),E=D[0];if(0===(C=D[1]).length)return;if(s=ou(C),0===E.length)return void g(r,s,1);r=ou(E)}else if(2097152&s.flags&&e.some(s.types,(function(e){return!!b(e)||zs(e)&&!!b(Ud(e)||He)}))){if(!(1048576&r.flags)){var T=h(2097152&r.flags?r.types:[r],s.types,np),C=(E=T[0],T[1]);if(0===E.length||0===C.length)return;r=fu(E),s=fu(C)}}else 41943040&s.flags&&(s=Wu(s));if(8650752&s.flags){if(2097152&e.getObjectFlags(r)||r===Te||r===Ke||64&i&&(r===we||r===Nt)||gm(r))return;var A=b(s);if(A){if(!A.isFixed){if((void 0===A.priority||i<A.priority)&&(A.candidates=void 0,A.contraCandidates=void 0,A.topLevel=!0,A.priority=i),i===A.priority){var N=o||r;a&&!u?e.contains(A.contraCandidates,N)||(A.contraCandidates=e.append(A.contraCandidates,N),tm(t)):e.contains(A.candidates,N)||(A.candidates=e.append(A.candidates,N),tm(t))}!(64&i)&&262144&s.flags&&A.topLevel&&!sm(n,s)&&(A.topLevel=!1,tm(t))}return void(d=Math.min(d,i))}var P=ju(s,!1);if(P!==s)_(r,P,m);else if(8388608&s.flags){var I=ju(s.indexType,!1);if(465829888&I.flags){var F=Bu(ju(s.objectType,!1),I,!1);F&&F!==s&&_(r,F,m)}}}if(!(4&e.getObjectFlags(r)&&4&e.getObjectFlags(s)&&(r.target===s.target||rf(r)&&rf(s)))||r.node&&s.node)if(4194304&r.flags&&4194304&s.flags)a=!a,m(r.type,s.type),a=!a;else if((ff(r)||4&r.flags)&&4194304&s.flags){var O=function(t){var r=e.createSymbolTable();cg(t,(function(t){if(128&t.flags){var n=e.escapeLeadingUnderscores(t.value),i=yn(4,n);i.type=Se,t.symbol&&(i.declarations=t.symbol.declarations,i.valueDeclaration=t.symbol.valueDeclaration),r.set(n,i)}}));var n=4&t.flags?Qc(nt,!1):void 0;return Wi(void 0,r,e.emptyArray,e.emptyArray,n,void 0)}(r);a=!a,g(O,s.type,128),a=!a}else if(8388608&r.flags&&8388608&s.flags)m(r.objectType,s.objectType),m(r.indexType,s.indexType);else if(268435456&r.flags&&268435456&s.flags)r.symbol===s.symbol&&m(r.type,s.type);else if(16777216&s.flags)_(r,s,S);else if(3145728&s.flags)k(r,s.types,s.flags);else if(1048576&r.flags)for(var R=0,M=r.types;R<M.length;R++){m(M[R],s)}else if(134217728&s.flags)!function(t,r){for(var n=128&t.flags?hm(t,r):134217728&t.flags&&e.arraysEqual(t.texts,r.texts)?t.types:void 0,i=r.types,a=0;a<i.length;a++)m(n?n[a]:He,i[a])}(r,s);else{if(r=uc(r),!(256&i&&467927040&r.flags)){var L=ac(r);if(L!==r&&p&&!(2621440&L.flags))return p=!1,m(L,s);r=L}2621440&r.flags&&_(r,s,w)}else y(ll(r),ll(s),qp(r.target))}}}function g(e,t,r){var n=i;i|=r,m(e,t),i=n}function _(t,r,n){var i=t.id+","+r.id,a=s&&s.get(i);if(void 0===a){(s||(s=new e.Map)).set(i,-1);var o=d;d=1024;var u=f,p=Xp(t)||t,m=Xp(r)||r;p&&e.contains(c,p)&&(f|=1),m&&e.contains(l,m)&&(f|=2),3!==f?(p&&(c||(c=[])).push(p),m&&(l||(l=[])).push(m),n(t,r),m&&l.pop(),p&&c.pop()):d=-1,f=u,s.set(i,d),d=Math.min(d,o)}else d=Math.min(d,a)}function h(t,r,n){for(var i,a,o=0,s=r;o<s.length;o++)for(var c=s[o],l=0,u=t;l<u.length;l++){var d=u[l];n(d,c)&&(m(d,c),i=e.appendIfUnique(i,d),a=e.appendIfUnique(a,c))}return[i?e.filter(t,(function(t){return!e.contains(i,t)})):t,a?e.filter(r,(function(t){return!e.contains(a,t)})):r]}function y(e,t,r){for(var n=e.length<t.length?e.length:t.length,i=0;i<n;i++)i<r.length&&2==(7&r[i])?v(e[i],t[i]):m(e[i],t[i])}function v(e,t){G||512&i?(a=!a,m(e,t),a=!a):m(e,t)}function b(e){if(8650752&e.flags)for(var r=0,n=t;r<n.length;r++){var i=n[r];if(e===i.typeParameter)return i}}function k(t,r,n){var a=0;if(1048576&n){for(var o=void 0,s=1048576&t.flags?t.types:[t],c=new Array(s.length),l=!1,u=0,p=r;u<p.length;u++){if(b(w=p[u]))o=w,a++;else for(var f=0;f<s.length;f++){var _=d;d=1024,m(s[f],w),d===i&&(c[f]=!0),l=l||-1===d,d=Math.min(d,_)}}if(0===a){var h=function(t){for(var r,n=0,i=t;n<i.length;n++){var a=i[n],o=2097152&a.flags&&e.find(a.types,(function(e){return!!b(e)}));if(!o||r&&o!==r)return;r=o}return r}(r);return void(h&&g(t,h,1))}if(1===a&&!l){var y=e.flatMap(s,(function(e,t){return c[t]?void 0:e}));if(y.length)return void m(ou(y),o)}}else for(var v=0,k=r;v<k.length;v++){b(w=k[v])?a++:m(t,w)}if(2097152&n?1===a:a>0)for(var x=0,S=r;x<S.length;x++){var w;b(w=S[x])&&g(t,w,1)}}function x(t,r,n){if(1048576&n.flags){for(var i=!1,a=0,o=n.types;a<o.length;a++){i=x(t,r,o[a])||i}return i}if(4194304&n.flags){var s=b(n.type);if(s&&!s.isFixed&&!gm(t)){var c=cm(t,r,n);c&&g(c,s.typeParameter,2097152&e.getObjectFlags(t)?8:4)}return!0}if(262144&n.flags){g(Su(t),n,16);var l=Ks(n);if(l&&x(t,r,l))return!0;var u=e.map(Hs(t),_o),d=kc(t,0),p=xu(t),f=p&&p.type;return m(ou(e.append(e.append(u,d),f)),Fs(r)),!0}return!1}function S(e,t){if(16777216&e.flags)m(e.checkType,t.checkType),m(e.extendsType,t.extendsType),m(Xu(e),Xu(t)),m(Qu(e),Qu(t));else{var r=i;i|=a?32:0,k(e,[Xu(t),Qu(t)],t.flags),i=r}}function w(t,r){if(4&e.getObjectFlags(t)&&4&e.getObjectFlags(r)&&(t.target===r.target||rf(t)&&rf(r)))y(ll(t),ll(r),qp(t.target));else{if(zs(t)&&zs(r)){m(Ps(t),Ps(r)),m(Fs(t),Fs(r));var n=Is(t),i=Is(r);n&&i&&m(n,i)}var a,o;if(32&e.getObjectFlags(r)&&!r.declaration.nameType)if(x(t,r,Ps(r)))return;if(!function(e,t){return vf(e)&&vf(t)?function(e,t){return!(8&t.target.combinedFlags)&&t.target.minLength>e.target.minLength||!t.target.hasRestElement&&(e.target.hasRestElement||t.target.fixedLength<e.target.fixedLength)}(e,t):!!pm(e,t,!1,!0)&&!!pm(t,e,!1,!1)}(t,r)){if(rf(t)||vf(t)){if(vf(r)){var s=ul(t),c=ul(r),l=ll(r),u=r.target.elementFlags;if(vf(t)&&(o=r,ul(a=t)===ul(o)&&e.every(a.target.elementFlags,(function(e,t){return(12&e)==(12&o.target.elementFlags[t])})))){for(var d=0;d<c;d++)m(ll(t)[d],l[d]);return}var p=vf(t)?Math.min(t.target.fixedLength,r.target.fixedLength):0,f=Math.min(vf(t)?Ql(t.target,3):0,r.target.hasRestElement?Ql(r.target,3):0);for(d=0;d<p;d++)m(ll(t)[d],l[d]);if(!vf(t)||s-p-f==1&&4&t.target.elementFlags[p]){var _=ll(t)[p];for(d=p;d<c-f;d++)m(8&u[d]?jl(_):_,l[d])}else{var h=c-p-f;if(2===h&&u[p]&u[p+1]&8&&vf(t)){var v=b(l[p]);v&&void 0!==v.impliedArity&&(m($l(t,p,f+s-v.impliedArity),l[p]),m($l(t,p+v.impliedArity,f),l[p+1]))}else if(1===h&&8&u[p]){var k=2&r.target.elementFlags[c-1];g(vf(t)?$l(t,p,f):jl(ll(t)[0]),l[p],k?2:0)}else if(1===h&&4&u[p]){(_=vf(t)?Sf(t,p,f):ll(t)[0])&&m(_,l[p])}}for(d=0;d<f;d++)m(ll(t)[s-d-1],l[c-d-1]);return}if(rf(r))return void T(t,r)}!function(e,t){for(var r=qs(t),n=0,i=r;n<i.length;n++){var a=i[n],o=gc(e,a.escapedName);o&&m(_o(o),_o(a))}}(t,r),D(t,r,0),D(t,r,1),T(t,r)}}}function D(t,r,n){for(var i=hc(t,n),a=hc(r,n),o=i.length,s=a.length,c=o<s?o:s,l=!!(2097152&e.getObjectFlags(t)),u=0;u<c;u++)E(Gc(i[o-c+u]),Kc(a[s-c+u]),l)}function E(e,t,r){if(!r){var n=u,i=t.declaration?t.declaration.kind:0;u=u||166===i||165===i||167===i,Yf(e,t,v),u=n}Xf(e,t,m)}function T(e,t){var r=kc(t,0);r&&((n=kc(e,0)||xc(e,0))&&m(n,r));var n,i=kc(t,1);i&&((n=kc(e,1)||kc(e,0)||xc(e,1))&&m(n,i))}m(r,n)}function vm(e,t){return np(e,t)||!!(4&t.flags&&128&e.flags||8&t.flags&&256&e.flags)}function bm(e,t){return!!(524288&e.flags&&524288&t.flags&&e.symbol&&e.symbol===t.symbol||e.aliasSymbol&&e.aliasTypeArguments&&e.aliasSymbol===t.aliasSymbol)}function km(t){return!!(128&e.getObjectFlags(t))}function xm(t){return!!(65664&e.getObjectFlags(t))}function Sm(t){return 208&t.priority?fu(t.contraCandidates):(r=t.contraCandidates,e.reduceLeft(r,(function(e,t){return sp(t,e)?t:e})));var r}function wm(t,r){var n,i,a=function(t){if(t.length>1){var r=e.filter(t,xm);if(r.length){var n=ou(r,2);return e.concatenate(e.filter(t,(function(e){return!xm(e)})),[n])}}return t}(t.candidates),o=(n=t.typeParameter,!!(i=Ws(n))&&Rv(16777216&i.flags?$s(i):i,406978556)),s=!o&&t.topLevel&&(t.isFixed||!sm(Bc(r),t.typeParameter)),c=o?e.sameMap(a,gd):s?e.sameMap(a,gf):a;return Hf(208&t.priority?ou(c,2):function(t){if(!W)return tf(t);var r=e.filter(t,(function(e){return!(98304&e.flags)}));return r.length?Af(tf(r),98304&Df(t)):ou(t,2)}(c))}function Dm(t,r){var n=t.inferences[r];if(!n.inferredType){var i=void 0,a=t.signature;if(a){var o=n.candidates?wm(n,a):void 0;if(n.contraCandidates){var s=Sm(n);i=!o||131072&o.flags||!sp(o,s)?s:o}else if(o)i=o;else if(1&t.flags)i=Ke;else{var c=nc(n.typeParameter);c&&(i=Wd(c,Od(function(t,r){return Nd((function(n){return e.findIndex(t.inferences,(function(e){return e.typeParameter===n}))>=r?Ae:n}))}(t,r),t.nonFixingMapper)))}}else i=fm(n);n.inferredType=i||Em(!!(2&t.flags));var l=Ws(n.typeParameter);if(l){var u=Wd(l,t.nonFixingMapper);i&&t.compareTypes(i,ls(u,i))||(n.inferredType=i=u)}}return n.inferredType}function Em(e){return e?Se:Ae}function Tm(e){for(var t=[],r=0;r<e.inferences.length;r++)t.push(Dm(e,r));return t}function Cm(t){switch(t.escapedText){case"document":case"console":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom;case"$":return J.types?e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery;case"describe":case"suite":case"it":case"test":return J.types?e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha;case"process":case"require":case"Buffer":case"module":return J.types?e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode;case"Map":case"Set":case"Promise":case"Symbol":case"WeakMap":case"WeakSet":case"Iterator":case"AsyncIterator":case"SharedArrayBuffer":case"Atomics":case"AsyncIterable":case"AsyncIterableIterator":case"AsyncGenerator":case"AsyncGeneratorFunction":case"BigInt":case"Reflect":case"BigInt64Array":case"BigUint64Array":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later;default:return 292===t.parent.kind?e.Diagnostics.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:e.Diagnostics.Cannot_find_name_0}}function Am(t){var r=Cn(t);return r.resolvedSymbol||(r.resolvedSymbol=!e.nodeIsMissing(t)&&Fn(t,t.escapedText,1160127,Cm(t),t,!e.isWriteOnlyAccess(t),!1,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1)||ke),r.resolvedSymbol}function Nm(t){return!!e.findAncestor(t,(function(e){return 177===e.kind||78!==e.kind&&158!==e.kind&&"quit"}))}function Pm(e,t,r,n){switch(e.kind){case 78:var i=Am(e);return i!==ke?(n?O(n):"-1")+"|"+Zl(t)+"|"+Zl(r)+"|"+(Bg(e)?"@":"")+R(i):void 0;case 108:return"0|"+(n?O(n):"-1")+"|"+Zl(t)+"|"+Zl(r);case 227:case 208:return Pm(e.expression,t,r,n);case 202:case 203:var a=Om(e);if(void 0!==a){var o=Pm(e.expression,t,r,n);return o&&o+"."+a}}}function Im(t,r){switch(r.kind){case 208:case 227:return Im(t,r.expression);case 218:return e.isAssignmentExpression(r)&&Im(t,r.left)||e.isBinaryExpression(r)&&27===r.operatorToken.kind&&Im(t,r.right)}switch(t.kind){case 78:case 79:return 78===r.kind&&Am(t)===Am(r)||(251===r.kind||199===r.kind)&&Ri(Am(t))===Ai(r);case 108:return 108===r.kind;case 106:return 106===r.kind;case 227:case 208:return Im(t.expression,r);case 202:case 203:return e.isAccessExpression(r)&&Om(t)===Om(r)&&Im(t.expression,r.expression);case 158:return e.isAccessExpression(r)&&t.right.escapedText===Om(r)&&Im(t.left,r.expression);case 218:return e.isBinaryExpression(t)&&27===t.operatorToken.kind&&Im(t.right,r)}return!1}function Fm(e,t){return Im(e,t)||218===t.kind&&55===t.operatorToken.kind&&(Fm(e,t.left)||Fm(e,t.right))}function Om(t){return 202===t.kind?t.name.escapedText:e.isStringOrNumericLiteralLike(t.argumentExpression)?e.escapeLeadingUnderscores(t.argumentExpression.text):void 0}function Rm(t,r){for(;e.isAccessExpression(t);)if(Im(t=t.expression,r))return!0;return!1}function Mm(t,r){for(;e.isOptionalChain(t);)if(Im(t=t.expression,r))return!0;return!1}function Lm(t,r){if(t&&1048576&t.flags){var n=cc(t,r);if(n&&2&e.getCheckFlags(n))return void 0===n.isDiscriminantProperty&&(n.isDiscriminantProperty=!(192&~n.checkFlags||Rv(_o(n),465829888))),!!n.isDiscriminantProperty}return!1}function jm(e,t){for(var r,n=0,i=e;n<i.length;n++){var a=i[n];if(Lm(t,a.escapedName)){if(r){r.push(a);continue}r=[a]}}return r}function Bm(e,t){return Im(e,t)||Rm(e,t)}function zm(e,t){if(e.arguments)for(var r=0,n=e.arguments;r<n.length;r++){if(Bm(t,n[r]))return!0}return!(202!==e.expression.kind||!Bm(t,e.expression.expression))}function Um(e){return(!e.id||e.id<0)&&(e.id=f,f++),e.id}function qm(e,t){if(e!==t){if(131072&t.flags)return t;var r=ug(e,(function(e){return function(e,t){if(!(1048576&e.flags))return cp(e,t);for(var r=0,n=e.types;r<n.length;r++)if(cp(n[r],t))return!0;return!1}(t,e)}));if(512&t.flags&&_d(t)&&(r=pg(r,md)),cp(t,r))return r}return e}function Jm(e){var t=Us(e);return!!(t.callSignatures.length||t.constructSignatures.length||t.members.get("bind")&&sp(e,vt))}function Vm(t){var r=t.flags;if(4&r)return W?16317953:16776705;if(128&r){var n=""===t.value;return W?n?12123649:7929345:n?12582401:16776705}if(40&r)return W?16317698:16776450;if(256&r){var i=0===t.value;return W?i?12123394:7929090:i?12582146:16776450}if(64&r)return W?16317188:16775940;if(2048&r){i=wf(t);return W?i?12122884:7928580:i?12581636:16775940}return 16&r?W?16316168:16774920:528&r?W?t===je||t===Be?12121864:7927560:t===je||t===Be?12580616:16774920:524288&r?16&e.getObjectFlags(t)&&Ep(t)?W?16318463:16777215:Jm(t)?W?7880640:16728e3:W?7888800:16736160:49152&r?9830144:65536&r?9363232:12288&r?W?7925520:16772880:67108864&r?W?7888800:16736160:131072&r?0:465829888&r?Ou(t)?W?7929345:16776705:Vm(Qs(t)||Ae):3145728&r?function(e){for(var t=0,r=0,n=e;r<n.length;r++)t|=Vm(n[r]);return t}(t.types):16777215}function Hm(e,t){return ug(e,(function(e){return!!(Vm(e)&t)}))}function Km(e,t){if(t){var r=ub(t);return ou([Hm(e,524288),r])}return e}function Wm(e,t){var r=vu(t);if(!Zo(r))return Ee;var n=is(r);return Ug(Na(e,n),t)||R_(n)&&$m(kc(e,1))||$m(kc(e,0))||Ee}function Gm(e,t){return lg(e,lf)&&function(e,t){var r=Na(e,""+t);return r||(lg(e,vf)?pg(e,(function(e){return xf(e)||Ne})):void 0)}(e,t)||$m(Ik(65,e,Ne,void 0))||Ee}function $m(e){return e&&J.noUncheckedIndexedAccess?ou([e,Ne]):e}function Ym(e){return jl(Ik(65,e,Ne,void 0)||Ee)}function Xm(e){return 218===e.parent.kind&&e.parent.left===e||241===e.parent.kind&&e.parent.initializer===e}function Qm(e){return Wm(Zm(e.parent),e.name)}function Zm(e){var t=e.parent;switch(t.kind){case 240:return Re;case 241:return Pk(t)||Ee;case 218:return function(e){return 200===e.parent.kind&&Xm(e.parent)||291===e.parent.kind&&Xm(e.parent.parent)?Km(Zm(e),e.right):ub(e.right)}(t);case 212:return Ne;case 200:return function(e,t){return Gm(Zm(e),e.elements.indexOf(t))}(t,e);case 222:return function(e){return Ym(Zm(e.parent))}(t);case 291:return Qm(t);case 292:return function(e){return Km(Qm(e),e.objectAssignmentInitializer)}(t)}return Ee}function eg(e){return Cn(e).resolvedType||ub(e)}function tg(e){return 251===e.kind?function(e){return e.initializer?eg(e.initializer):240===e.parent.parent.kind?Re:241===e.parent.parent.kind&&Pk(e.parent.parent)||Ee}(e):function(e){var t=e.parent,r=tg(t.parent);return Km(197===t.kind?Wm(r,e.propertyName||e.name):e.dotDotDotToken?Ym(r):Gm(r,t.elements.indexOf(e)),e.initializer)}(e)}function rg(e){switch(e.kind){case 208:return rg(e.expression);case 218:switch(e.operatorToken.kind){case 62:case 74:case 75:case 76:return rg(e.left);case 27:return rg(e.right)}}return e}function ng(e){var t=e.parent;return 208===t.kind||218===t.kind&&62===t.operatorToken.kind&&t.left===e||218===t.kind&&27===t.operatorToken.kind&&t.right===e?ng(t):e}function ig(e){return 287===e.kind?gd(ub(e.expression)):He}function ag(e){var t=Cn(e);if(!t.switchTypes){t.switchTypes=[];for(var r=0,n=e.caseBlock.clauses;r<n.length;r++){var i=n[r];t.switchTypes.push(ig(i))}}return t.switchTypes}function og(t,r){for(var n=[],i=0,a=t.caseBlock.clauses;i<a.length;i++){var o=a[i];if(287===o.kind){if(e.isStringLiteralLike(o.expression)){n.push(o.expression.text);continue}return e.emptyArray}r&&n.push(void 0)}return n}function sg(e,t){return e===t||1048576&t.flags&&function(e,t){if(1048576&e.flags){for(var r=0,n=e.types;r<n.length;r++){var i=n[r];if(!eu(t.types,i))return!1}return!0}if(1024&e.flags&&Bo(e)===t)return!0;return eu(t.types,e)}(e,t)}function cg(t,r){return 1048576&t.flags?e.forEach(t.types,r):r(t)}function lg(t,r){return 1048576&t.flags?e.every(t.types,r):r(t)}function ug(t,r){if(1048576&t.flags){var n=t.types,i=e.filter(n,r);if(i===n)return t;var a=t.origin,o=void 0;if(a&&1048576&a.flags){var s=a.types,c=e.filter(s,(function(e){return!!(1048576&e.flags)||r(e)}));if(s.length-c.length==n.length-i.length){if(1===c.length)return c[0];o=au(1048576,c)}}return cu(i,t.objectFlags,void 0,void 0,o)}return 131072&t.flags||r(t)?t:He}function dg(e){return 1048576&e.flags?e.types.length:1}function pg(e,t,r){if(131072&e.flags)return e;if(!(1048576&e.flags))return t(e);for(var n,i=e.origin,a=!1,o=0,s=i&&1048576&i.flags?i.types:e.types;o<s.length;o++){var c=s[o],l=1048576&c.flags?pg(c,t,r):t(c);a||(a=c!==l),l&&(n?n.push(l):n=[l])}return a?n&&ou(n,r?0:1):e}function fg(t,r,n,i){return 1048576&t.flags&&n?ou(e.map(t.types,r),1,n,i):pg(t,r)}function mg(e){return 3145728&e.flags?e.types.length:1}function gg(e,t){return ug(e,(function(e){return!!(e.flags&t)}))}function _g(e,t){return sg(Re,e)&&Rv(t,128)||sg(Me,e)&&Rv(t,256)||sg(Le,e)&&Rv(t,2048)?pg(e,(function(e){return 4&e.flags?gg(t,132):8&e.flags?gg(t,264):64&e.flags?gg(t,2112):e})):e}function hg(e){return 0===e.flags}function yg(e){return 0===e.flags?e.type:e}function vg(e,t){return t?{flags:0,type:131072&e.flags?Ke:e}:e}function bg(e){return ve[e.id]||(ve[e.id]=function(e){var t=qi(256);return t.elementType=e,t}(e))}function kg(e,t){var r=Bf(mf(pb(t)));return sg(r,e.elementType)?e:bg(ou([e.elementType,r]))}function xg(e){return e.finalArrayType||(e.finalArrayType=131072&(t=e.elementType).flags?Nt:jl(1048576&t.flags?ou(t.types,2):t));var t}function Sg(t){return 256&e.getObjectFlags(t)?xg(t):t}function wg(t){return 256&e.getObjectFlags(t)?t.elementType:He}function Dg(t){var r=ng(t),n=r.parent,i=e.isPropertyAccessExpression(n)&&("length"===n.name.escapedText||204===n.parent.kind&&e.isIdentifier(n.name)&&e.isPushOrUnshiftIdentifier(n.name)),a=203===n.kind&&n.expression===r&&218===n.parent.kind&&62===n.parent.operatorToken.kind&&n.parent.left===n&&!e.isAssignmentTarget(n.parent)&&Mv(ub(n.argumentExpression),296);return i||a}function Eg(t,r){if(8752&t.flags)return _o(t);if(7&t.flags){if(262144&e.getCheckFlags(t)){var n=t.syntheticOrigin;if(n&&Eg(n))return _o(t)}var i=t.valueDeclaration;if(i){if(function(t){return(251===t.kind||161===t.kind||164===t.kind||163===t.kind)&&!!e.getEffectiveTypeAnnotationNode(t)}(i))return _o(t);if(e.isVariableDeclaration(i)&&241===i.parent.parent.kind){var a=i.parent.parent,o=Tg(a.expression,void 0);if(o)return Ik(a.awaitModifier?15:13,o,Ne,void 0)}r&&e.addRelatedInfo(r,e.createDiagnosticForNode(i,e.Diagnostics._0_needs_an_explicit_type_annotation,la(t)))}}}function Tg(t,r){if(!(16777216&t.flags))switch(t.kind){case 78:var n=Ri(Am(t));return Eg(2097152&n.flags?ai(n):n,r);case 108:return function(t){var r=e.getThisContainer(t,!1);if(e.isFunctionLike(r)){var n=Ic(r);if(n.thisParameter)return Eg(n.thisParameter)}if(e.isClassLike(r.parent)){var i=Ai(r.parent);return e.hasSyntacticModifier(r,32)?_o(i):Jo(i).thisType}}(t);case 106:return Qg(t);case 202:var i=Tg(t.expression,r);if(i){var a=t.name,o=void 0;if(e.isPrivateIdentifier(a)){if(!i.symbol)return;o=gc(i,e.getSymbolNameForPrivateIdentifier(i.symbol,a.escapedText))}else o=gc(i,a.escapedText);return o&&Eg(o,r)}return;case 208:return Tg(t.expression,r)}}function Cg(t){var r=Cn(t),n=r.effectsSignature;if(void 0===n){var i=void 0;235===t.parent.kind?i=Tg(t.expression,void 0):106!==t.expression.kind&&(i=e.isOptionalChain(t)?vh(Mf(fb(t.expression),t.expression),t.expression):fh(t.expression));var a=hc(i&&ac(i)||Ae,0),o=1!==a.length||a[0].typeParameters?e.some(a,Ag)?Iy(t):void 0:a[0];n=r.effectsSignature=o&&Ag(o)?o:ur}return n===ur?void 0:n}function Ag(e){return!!(jc(e)||e.declaration&&131072&(zc(e.declaration)||Ae).flags)}function Ng(e){var t=Ig(e,!1);return tr=e,rr=t,t}function Pg(t){var r=e.skipParentheses(t);return 95===r.kind||218===r.kind&&(55===r.operatorToken.kind&&(Pg(r.left)||Pg(r.right))||56===r.operatorToken.kind&&Pg(r.left)&&Pg(r.right))}function Ig(t,r){for(;;){if(t===tr)return rr;var n=t.flags;if(4096&n){if(!r){var i=Um(t),a=Kr[i];return void 0!==a?a:Kr[i]=Ig(t,!0)}r=!1}if(368&n)t=t.antecedent;else if(512&n){var o=Cg(t.node);if(o){var s=jc(o);if(s&&3===s.kind&&!s.type){var c=t.node.arguments[s.parameterIndex];if(c&&Pg(c))return!1}if(131072&Bc(o).flags)return!1}t=t.antecedent}else{if(4&n)return e.some(t.antecedents,(function(e){return Ig(e,!1)}));if(8&n){var l=t.antecedents;if(void 0===l||0===l.length)return!1;t=l[0]}else{if(!(128&n)){if(1024&n){tr=void 0;var u=t.target,d=u.antecedents;u.antecedents=t.antecedents;var p=Ig(t.antecedent,!1);return u.antecedents=d,p}return!(1&n)}if(t.clauseStart===t.clauseEnd&&Sv(t.switchStatement))return!1;t=t.antecedent}}}}function Fg(t,r){for(;;){var n=t.flags;if(4096&n){if(!r){var i=Um(t),a=Wr[i];return void 0!==a?a:Wr[i]=Fg(t,!0)}r=!1}if(496&n)t=t.antecedent;else if(512&n){if(106===t.node.expression.kind)return!0;t=t.antecedent}else{if(4&n)return e.every(t.antecedents,(function(e){return Fg(e,!1)}));if(!(8&n)){if(1024&n){var o=t.target,s=o.antecedents;o.antecedents=t.antecedents;var c=Fg(t.antecedent,!1);return o.antecedents=s,c}return!!(1&n)}t=t.antecedents[0]}}}function Og(t,r,n,i,a){var o;void 0===n&&(n=r);var s=!1,c=0;if(Tr)return Ee;if(!t.flowNode||!a&&!(536624127&r.flags))return r;Cr++;var l=Er,u=yg(f(t.flowNode));Er=l;var d=256&e.getObjectFlags(u)&&Dg(t)?Nt:Sg(u);return d===$e||t.parent&&227===t.parent.kind&&131072&Hm(d,2097152).flags?r:d;function p(){return s?o:(s=!0,o=Pm(t,r,n,i))}function f(a){if(2e3===c)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","getTypeAtFlowNode_DepthLimit",{flowId:a.id}),Tr=!0,o=t,s=e.findAncestor(o,e.isFunctionOrModuleBlock),u=e.getSourceFileOfNode(o),d=e.getSpanOfTokenAtPosition(u,s.statements.pos),Qr.add(e.createFileDiagnostic(u,d.start,d.length,e.Diagnostics.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis)),Ee;var o,s,u,d,p;for(c++;;){var m=a.flags;if(4096&m){for(var _=l;_<Er;_++)if(Vr[_]===a)return c--,Hr[_];p=a}var S=void 0;if(16&m){if(!(S=g(a))){a=a.antecedent;continue}}else if(512&m){if(!(S=h(a))){a=a.antecedent;continue}}else if(96&m)S=v(a);else if(128&m)S=b(a);else if(12&m){if(1===a.antecedents.length){a=a.antecedents[0];continue}S=4&m?k(a):x(a)}else if(256&m){if(!(S=y(a))){a=a.antecedent;continue}}else if(1024&m){var w=a.target,D=w.antecedents;w.antecedents=a.antecedents,S=f(a.antecedent),w.antecedents=D}else if(2&m){var E=a.node;if(E&&E!==i&&202!==t.kind&&203!==t.kind&&108!==t.kind){a=E.flowNode;continue}S=n}else S=vk(r);return p&&(Vr[Er]=p,Hr[Er]=S,Er++),c--,S}}function m(e){var r=e.node;return Ug(251===r.kind||199===r.kind?tg(r):Zm(r),t)}function g(n){var i=n.node;if(Im(t,i)){if(!Ng(n))return $e;if(2===e.getAssignmentTargetKind(i)){var a=f(n.antecedent);return vg(mf(yg(a)),hg(a))}if(r===we||r===Nt){if(function(e){return 251===e.kind&&e.initializer&&Ba(e.initializer)||199!==e.kind&&218===e.parent.kind&&Ba(e.parent.right)}(i))return bg(He);var o=gf(m(n));return cp(o,r)?o:At}return 1048576&r.flags?qm(r,m(n)):r}if(Rm(t,i)){if(!Ng(n))return $e;if(e.isVariableDeclaration(i)&&(e.isInJSFile(i)||e.isVarConst(i))){var s=e.getDeclaredExpandoInitializer(i);if(s&&(209===s.kind||210===s.kind))return f(n.antecedent)}return r}if(e.isVariableDeclaration(i)&&240===i.parent.parent.kind&&Im(t,i.parent.parent.expression))return gh(yg(f(n.antecedent)))}function _(t,r){var n=e.skipParentheses(r);if(95===n.kind)return $e;if(218===n.kind){if(55===n.operatorToken.kind)return _(_(t,n.left),n.right);if(56===n.operatorToken.kind)return ou([_(t,n.left),_(t,n.right)])}return q(t,n,!0)}function h(e){var t=Cg(e.node);if(t){var r=jc(t);if(r&&(2===r.kind||3===r.kind)){var n=f(e.antecedent),i=Sg(yg(n)),a=r.type?U(i,r,e.node,!0):3===r.kind&&r.parameterIndex>=0&&r.parameterIndex<e.node.arguments.length?_(i,e.node.arguments[r.parameterIndex]):i;return a===i?n:vg(a,hg(n))}if(131072&Bc(t).flags)return $e}}function y(n){if(r===we||r===Nt){var i=n.node,a=204===i.kind?i.expression.expression:i.left.expression;if(Im(t,rg(a))){var o=f(n.antecedent),s=yg(o);if(256&e.getObjectFlags(s)){var c=s;if(204===i.kind)for(var l=0,u=i.arguments;l<u.length;l++){c=kg(c,u[l])}else Mv(pb(i.left.argumentExpression),296)&&(c=kg(c,i.right));return c===s?o:vg(c,hg(o))}return o}}}function v(e){var t=f(e.antecedent),r=yg(t);if(131072&r.flags)return t;var n=!!(32&e.flags),i=Sg(r),a=q(i,e.node,n);return a===i?t:vg(a,hg(t))}function b(r){var n=r.switchStatement.expression,i=f(r.antecedent),a=yg(i);return Im(t,n)?a=R(a,r.switchStatement,r.clauseStart,r.clauseEnd):213===n.kind&&Im(t,n.expression)?a=function(t,r,n,i){var a=og(r,!0);if(!a.length)return t;var o,s,c=e.findIndex(a,(function(e){return void 0===e})),l=n===i||c>=n&&c<i;if(c>-1){var u=a.filter((function(e){return void 0!==e})),d=c<n?n-1:n,p=c<i?i-1:i;o=u.slice(d,p),s=xv(d,p,u,l)}else o=a.slice(n,i),s=xv(n,i,a,l);if(l)return ug(t,(function(e){return(Vm(e)&s)===s}));var f=Hm(ou(o.map((function(e){return M(t,e)||t}))),s);return Hm(pg(t,L(f)),s)}(a,r.switchStatement,r.clauseStart,r.clauseEnd):(W&&(Mm(n,t)?a=O(a,r.switchStatement,r.clauseStart,r.clauseEnd,(function(e){return!(163840&e.flags)})):213===n.kind&&Mm(n.expression,t)&&(a=O(a,r.switchStatement,r.clauseStart,r.clauseEnd,(function(e){return!(131072&e.flags||128&e.flags&&"undefined"===e.value)})))),E(n,a)&&(a=T(a,n,(function(e){return R(e,r.switchStatement,r.clauseStart,r.clauseEnd)})))),vg(a,hg(i))}function k(t){for(var i,a=[],o=!1,s=!1,c=0,l=t.antecedents;c<l.length;c++){var u=l[c];if(!i&&128&u.flags&&u.clauseStart===u.clauseEnd)i=u;else{if((p=yg(d=f(u)))===r&&r===n)return p;e.pushIfUnique(a,p),sg(p,r)||(o=!0),hg(d)&&(s=!0)}}if(i){var d,p=yg(d=f(i));if(!e.contains(a,p)&&!Sv(i.switchStatement)){if(p===r&&r===n)return p;a.push(p),sg(p,r)||(o=!0),hg(d)&&(s=!0)}}return vg(D(a,o?2:1),s)}function x(t){var n=Um(t),i=zr[n]||(zr[n]=new e.Map),a=p();if(!a)return r;var o=i.get(a);if(o)return o;for(var s=wr;s<Dr;s++)if(Ur[s]===t&&qr[s]===a&&Jr[s].length)return vg(D(Jr[s],1),!0);for(var c,l=[],u=!1,d=0,m=t.antecedents;d<m.length;d++){var g=m[d],_=void 0;if(c){Ur[Dr]=t,qr[Dr]=a,Jr[Dr]=l,Dr++;var h=nr;nr=void 0,_=f(g),nr=h,Dr--;var y=i.get(a);if(y)return y}else _=c=f(g);var v=yg(_);if(e.pushIfUnique(l,v),sg(v,r)||(u=!0),v===r)break}var b=D(l,u?2:1);return hg(c)?vg(b,!0):(i.set(a,b),b)}function D(t,n){if(function(t){for(var r=!1,n=0,i=t;n<i.length;n++){var a=i[n];if(!(131072&a.flags)){if(!(256&e.getObjectFlags(a)))return!1;r=!0}}return r}(t))return bg(ou(e.map(t,wg)));var i=ou(e.sameMap(t,Sg),n);return i!==r&&i.flags&r.flags&1048576&&e.arraysEqual(i.types,r.types)?r:i}function E(n,i){var a=1048576&r.flags?r:i;if(!(1048576&a.flags&&e.isAccessExpression(n)))return!1;var o=Om(n);return void 0!==o&&(Im(t,n.expression)&&Lm(a,o))}function T(t,r,n){var i=Om(r);if(void 0===i)return t;var a=W&&Rv(t,98304)&&e.isOptionalChain(r),o=Na(a?Hm(t,2097152):t,i);if(!o)return t;var s=n(o=a?Nf(o):o);return ug(t,(function(e){var t=function(e,t){return Na(e,t)||R_(t)&&kc(e,1)||kc(e,0)||Ae}(e,i);return!(131072&t.flags)&&up(t,s)}))}function C(e,r,n){return Im(t,r)?Hm(e,n?4194304:8388608):(W&&n&&Mm(r,t)&&(e=Hm(e,2097152)),E(r,e)?T(e,r,(function(e){return Hm(e,n?4194304:8388608)})):e)}function A(t,r,n){if(1572864&t.flags||Lu(t)||2097152&t.flags&&e.every(t.types,(function(e){return e.symbol!==ae}))){var i=e.escapeLeadingUnderscores(r.text);return ug(t,(function(e){return function(e,t,r){if(bc(e,0))return!0;var n=gc(e,t);return n?!!(16777216&n.flags)||r:!r}(e,i,n)}))}return t}function N(r,n,i){switch(n.operatorToken.kind){case 62:case 74:case 75:case 76:return C(q(r,n.right,i),n.left,i);case 34:case 35:case 36:case 37:var a=n.operatorToken.kind,o=rg(n.left),s=rg(n.right);if(213===o.kind&&e.isStringLiteralLike(s))return F(r,o,a,s,i);if(213===s.kind&&e.isStringLiteralLike(o))return F(r,s,a,o,i);if(Im(t,o))return I(r,a,s,i);if(Im(t,s))return I(r,a,o,i);if(W&&(Mm(o,t)?r=P(r,a,s,i):Mm(s,t)&&(r=P(r,a,o,i))),E(o,r))return T(r,o,(function(e){return I(e,a,s,i)}));if(E(s,r))return T(r,s,(function(e){return I(e,a,o,i)}));if(j(o))return B(r,a,s,i);if(j(s))return B(r,a,o,i);break;case 102:return function(r,n,i){var a=rg(n.left);if(!Im(t,a))return i&&W&&Mm(a,t)?Hm(r,2097152):r;var o,s=ub(n.right);if(!lp(s,vt))return r;var c=gc(s,"prototype");if(c){var l=_o(c);Pa(l)||(o=l)}if(Pa(r)&&(o===yt||o===vt))return r;if(!o){var u=hc(s,1);o=u.length?ou(e.map(u,(function(e){return Bc(Kc(e))}))):nt}if(!i&&1048576&s.flags){if(!e.find(s.types,(function(e){return!Do(e)})))return r}return z(r,o,i,lp)}(r,n,i);case 101:var c=rg(n.right);if(e.isStringLiteralLike(n.left)&&Im(t,c))return A(r,n.left,i);break;case 27:return q(r,n.right,i)}return r}function P(e,t,r,n){var i=34===t||36===t,a=34===t||35===t?98304:32768,o=ub(r);return i!==n&&lg(o,(function(e){return!!(e.flags&a)}))||i===n&&lg(o,(function(e){return!(e.flags&(3|a))}))?Hm(e,2097152):e}function I(e,t,r,n){if(1&e.flags)return e;35!==t&&37!==t||(n=!n);var i=ub(r);if(2&e.flags&&n&&(36===t||37===t))return 67239932&i.flags?i:524288&i.flags?Ye:e;if(98304&i.flags)return W?Hm(e,34===t||35===t?n?262144:2097152:65536&i.flags?n?131072:1048576:n?65536:524288):e;if(n)return _g(ug(e,34===t?function(e){return dp(e,i)||(t=i,!!(524&e.flags)&&!!(28&t.flags));var t}:function(e){return dp(e,i)}),i);if(pf(i)){var a=gd(i);return ug(e,(function(e){return pf(e)?!dp(e,i):gd(e)!==a}))}return e}function F(e,r,n,i,a){35!==n&&37!==n||(a=!a);var o=rg(r.expression);if(!Im(t,o))return W&&Mm(o,t)&&a===("undefined"!==i.text)?Hm(e,2097152):e;if(1&e.flags&&"function"===i.text)return e;if(a&&2&e.flags&&"object"===i.text){if(218===r.parent.parent.kind){var s=r.parent.parent;if(55===s.operatorToken.kind&&s.right===r.parent&&Fm(t,s.left))return Ye}return ou([Ye,Fe])}var c=a?S.get(i.text)||128:w.get(i.text)||32768,l=M(e,i.text);return Hm(a&&l?pg(e,L(l)):e,c)}function O(t,r,n,i,a){return n!==i&&e.every(ag(r).slice(n,i),a)?Hm(t,2097152):t}function R(t,r,n,i){var a=ag(r);if(!a.length)return t;var o=a.slice(n,i),s=n===i||e.contains(o,He);if(2&t.flags&&!s){for(var c=void 0,l=0;l<o.length;l+=1){var u=o[l];if(67239932&u.flags)void 0!==c&&c.push(u);else{if(!(524288&u.flags))return t;void 0===c&&(c=o.slice(0,l)),c.push(Ye)}}return ou(void 0===c?o:c)}var d=ou(o),p=131072&d.flags?He:_g(ug(t,(function(e){return dp(d,e)})),d);if(!s)return p;var f=ug(t,(function(t){return!(pf(t)&&e.contains(a,gd(t)))}));return 131072&p.flags?f:ou([p,f])}function M(e,t){switch(t){case"function":return 1&e.flags?e:vt;case"object":return 2&e.flags?ou([Ye,Fe]):e;default:return en.get(t)}}function L(e){return function(t){if(sp(t,e))return t;if(sp(e,t))return e;if(465829888&t.flags){var r=Qs(t)||Se;if(sp(e,r))return fu([t,e])}return t}}function j(r){return(e.isPropertyAccessExpression(r)&&"constructor"===e.idText(r.name)||e.isElementAccessExpression(r)&&e.isStringLiteralLike(r.argumentExpression)&&"constructor"===r.argumentExpression.text)&&Im(t,r.expression)}function B(t,r,n,i){if(i?34!==r&&36!==r:35!==r&&37!==r)return t;var a=ub(n);if(!DS(a)&&!Do(a))return t;var o=gc(a,"prototype");if(!o)return t;var s=_o(o),c=Pa(s)?void 0:s;return c&&c!==yt&&c!==vt?Pa(t)?c:ug(t,(function(t){return function(t,r){if(524288&t.flags&&1&e.getObjectFlags(t)||524288&r.flags&&1&e.getObjectFlags(r))return t.symbol===r.symbol;return sp(t,r)}(t,c)})):t}function z(e,t,r,n){if(!r)return ug(e,(function(e){return!n(e,t)}));if(1048576&e.flags){var i=ug(e,(function(e){return n(e,t)}));if(!(131072&i.flags))return i}return sp(t,e)?t:cp(e,t)?e:cp(t,e)?t:fu([e,t])}function U(r,n,i,a){if(n.type&&(!Pa(r)||n.type!==yt&&n.type!==vt)){var o=function(t,r){if(1===t.kind||3===t.kind)return r.arguments[t.parameterIndex];var n=e.skipParentheses(r.expression);return e.isAccessExpression(n)?e.skipParentheses(n.expression):void 0}(n,i);if(o){if(Im(t,o))return z(r,n.type,a,sp);if(W&&a&&Mm(o,t)&&!(65536&Vm(n.type))&&(r=Hm(r,2097152)),E(o,r))return T(r,o,(function(e){return z(e,n.type,a,sp)}))}}return r}function q(r,n,i){if(e.isExpressionOfOptionalChainRoot(n)||e.isBinaryExpression(n.parent)&&60===n.parent.operatorToken.kind&&n.parent.left===n)return function(e,r,n){if(Im(t,r))return Hm(e,n?2097152:262144);if(E(r,e))return T(e,r,(function(e){return Hm(e,n?2097152:262144)}));return e}(r,n,i);switch(n.kind){case 78:case 108:case 106:case 202:case 203:return C(r,n,i);case 204:return function(r,n,i){if(zm(n,t)){var a=i||!e.isCallChain(n)?Cg(n):void 0,o=a&&jc(a);if(o&&(0===o.kind||1===o.kind))return U(r,o,n,i)}return r}(r,n,i);case 208:case 227:return q(r,n.expression,i);case 218:return N(r,n,i);case 216:if(53===n.operator)return q(r,n.operand,!i)}return r}}function Rg(t){return e.findAncestor(t.parent,(function(t){return e.isFunctionLike(t)&&!e.getImmediatelyInvokedFunctionExpression(t)||260===t.kind||300===t.kind||164===t.kind}))}function Mg(t){var r,n=e.getRootDeclaration(t.valueDeclaration).parent,i=Cn(n);return 8388608&i.flags||(i.flags|=8388608,r=n,e.findAncestor(r.parent,(function(t){return e.isFunctionLike(t)&&!!(8388608&Cn(t).flags)}))||Lg(n)),t.isAssigned||!1}function Lg(t){if(78===t.kind){if(e.isAssignmentTarget(t)){var r=Am(t);r.valueDeclaration&&161===e.getRootDeclaration(r.valueDeclaration).kind&&(r.isAssigned=!0)}}else e.forEachChild(t,Lg)}function jg(e){return 3&e.flags&&!!(2&lh(e))&&_o(e)!==Nt}function Bg(e){var t=e.parent;return 202===t.kind||204===t.kind&&t.expression===e||203===t.kind&&t.expression===e||199===t.kind&&t.name===e&&!!t.initializer}function zg(e){return 58982400&e.flags&&Rv(Qs(e)||Ae,98304)}function Ug(e,t){return e&&Bg(t)&&cg(e,zg)?pg(Hf(e),Zs):e}function qg(t){return!!e.findAncestor(t,(function(t){return t.parent&&e.isExportAssignment(t.parent)&&t.parent.expression===t&&e.isEntityNameExpression(t)}))}function Jg(t,r){if(ni(t,111551)&&!Nm(r)&&!ci(t)){var n=ai(t);111551&n.flags&&(J.isolatedModules||e.shouldPreserveConstEnums(J)&&qg(r)||!mS(n)?ui(t):function(e){var t=Tn(e);t.constEnumReferenced||(t.constEnumReferenced=!0)}(t))}}function Vg(r){var n=Am(r);if(n===ke)return Ee;if(function(r,n){if(r.virtual||!t.getTagNameNeededCheckByFile)return;var i=e.getSourceFileOfNode(r);if(!n||!n.valueDeclaration)return;var a=e.getSourceFileOfNode(n.valueDeclaration);if(!a)return;var o=t.getTagNameNeededCheckByFile(i.fileName,a.fileName);if(!o.needCheck)return;jy(n.getJsDocTags(),r,i,o.checkConfig)}(r,n),n===se){var i=e.getContainingFunction(r);return V<2&&(210===i.kind?pn(r,e.Diagnostics.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression):e.hasSyntacticModifier(i,256)&&pn(r,e.Diagnostics.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method)),Cn(i).flags|=8192,_o(n)}r.parent&&e.isPropertyAccessExpression(r.parent)&&r.parent.expression===r||Jg(n,r);var a=Ri(n),o=2097152&a.flags?ai(a):a;134217728&lh(o)&&Nu(r,o)&&hn(r,o.declarations,r.escapedText);var s=a.valueDeclaration;if(32&a.flags)if(254===s.kind&&e.nodeIsDecorated(s))for(i=e.getContainingClass(r);void 0!==i;){if(i===s&&i.name!==r){Cn(s).flags|=16777216,Cn(r).flags|=33554432;break}i=e.getContainingClass(i)}else if(223===s.kind)for(i=e.getThisContainer(r,!1);300!==i.kind;){if(i.parent===s){164===i.kind&&e.hasSyntacticModifier(i,32)&&(Cn(s).flags|=16777216,Cn(r).flags|=33554432);break}i=e.getThisContainer(i,!1)}!function(t,r){if(V>=2||!(34&r.flags)||e.isSourceFile(r.valueDeclaration)||290===r.valueDeclaration.parent.kind)return;var n=e.getEnclosingBlockScopeContainer(r.valueDeclaration),i=function(t,r){return!!e.findAncestor(t,(function(t){return t===r?"quit":e.isFunctionLike(t)}))}(t.parent,n),a=n,o=!1;for(;a&&!e.nodeStartsNewLexicalEnvironment(a);){if(e.isIterationStatement(a,!1)){o=!0;break}a=a.parent}if(o){if(i){var s=!0;if(e.isForStatement(n))if((d=e.getAncestor(r.valueDeclaration,252))&&d.parent===n){var c=function(t,r){return e.findAncestor(t,(function(e){return e===r?"quit":e===r.initializer||e===r.condition||e===r.incrementor||e===r.statement}))}(t.parent,n);if(c){var l=Cn(c);l.flags|=131072;var u=l.capturedBlockScopeBindings||(l.capturedBlockScopeBindings=[]);e.pushIfUnique(u,r),c===n.initializer&&(s=!1)}}s&&(Cn(a).flags|=65536)}var d;if(e.isForStatement(n))(d=e.getAncestor(r.valueDeclaration,252))&&d.parent===n&&function(t,r){var n=t;for(;208===n.parent.kind;)n=n.parent;var i=!1;if(e.isAssignmentTarget(n))i=!0;else if(216===n.parent.kind||217===n.parent.kind){var a=n.parent;i=45===a.operator||46===a.operator}if(!i)return!1;return!!e.findAncestor(n,(function(e){return e===r?"quit":e===r.statement}))}(t,n)&&(Cn(r.valueDeclaration).flags|=4194304);Cn(r.valueDeclaration).flags|=524288}i&&(Cn(r.valueDeclaration).flags|=262144)}(r,n);var c=Ug(_o(a),r),l=e.getAssignmentTargetKind(r);if(l){if(!(3&a.flags||e.isInJSFile(r)&&512&a.flags))return pn(r,e.Diagnostics.Cannot_assign_to_0_because_it_is_not_a_variable,la(n)),Ee;if(Nv(a))return 3&a.flags?pn(r,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_constant,la(n)):pn(r,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,la(n)),Ee}var u=2097152&a.flags;if(3&a.flags){if(1===l)return c}else{if(!u)return c;s=e.find(n.declarations,B)}if(!s)return c;for(var d=161===e.getRootDeclaration(s).kind,p=Rg(s),f=Rg(r),m=f!==p,g=r.parent&&r.parent.parent&&e.isSpreadAssignment(r.parent)&&Xm(r.parent.parent),_=134217728&n.flags;f!==p&&(209===f.kind||210===f.kind||e.isObjectLiteralOrClassExpressionMethod(f))&&(jg(a)||d&&!Mg(a));)f=Rg(f);var h=d||u||m||g||_||e.isBindingElement(s)||c!==we&&c!==Nt&&(!W||!!(16387&c.flags)||Nm(r)||273===r.parent.kind)||227===r.parent.kind||251===s.kind&&s.exclamationToken||8388608&s.flags,y=h?d?function(e,t){if(Da(t.symbol,2)){var r=W&&161===t.kind&&t.initializer&&32768&Ef(e)&&!(32768&Ef(fb(t.initializer)));return Ca(),r?Hm(e,524288):e}return go(t.symbol),e}(c,s):c:c===we||c===Nt?Ne:Nf(c),v=Og(r,c,y,f,!h);if(Dg(r)||c!==we&&c!==Nt){if(!h&&!(32768&Ef(c))&&32768&Ef(v))return pn(r,e.Diagnostics.Variable_0_is_used_before_being_assigned,la(n)),c}else if(v===we||v===Nt)return X&&(pn(e.getNameOfDeclaration(s),e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,la(n),da(v)),pn(r,e.Diagnostics.Variable_0_implicitly_has_an_1_type,la(n),da(v))),vk(v);return l?mf(v):v}function Hg(e,t){(Cn(e).flags|=2,164===t.kind||167===t.kind)?Cn(t.parent).flags|=4:Cn(t).flags|=4}function Kg(t){return e.isSuperCall(t)?t:e.isFunctionLike(t)?void 0:e.forEachChild(t,Kg)}function Wg(e){return Ao(Jo(Ai(e)))===Oe}function Gg(t,r,n){var i=r.parent;e.getClassExtendsHeritageElement(i)&&!Wg(i)&&t.flowNode&&!Fg(t.flowNode,!1)&&pn(t,n)}function $g(t){var r=e.getThisContainer(t,!0),n=!1;switch(167===r.kind&&Gg(t,r,e.Diagnostics.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class),210===r.kind&&(r=e.getThisContainer(r,!1),n=!0),r.kind){case 259:pn(t,e.Diagnostics.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 258:pn(t,e.Diagnostics.this_cannot_be_referenced_in_current_location);break;case 167:Xg(t,r)&&pn(t,e.Diagnostics.this_cannot_be_referenced_in_constructor_arguments);break;case 164:case 163:!e.hasSyntacticModifier(r,32)||99===J.target&&J.useDefineForClassFields||pn(t,e.Diagnostics.this_cannot_be_referenced_in_a_static_property_initializer);break;case 159:pn(t,e.Diagnostics.this_cannot_be_referenced_in_a_computed_property_name)}n&&V<2&&Hg(t,r);var i=Yg(t,!0,r);if(Q){var a=_o(ae);if(i===a&&n)pn(t,e.Diagnostics.The_containing_arrow_function_captures_the_global_value_of_this);else if(!i){var o=pn(t,e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!e.isSourceFile(r)){var s=Yg(r);s&&s!==a&&e.addRelatedInfo(o,e.createDiagnosticForNode(r,e.Diagnostics.An_outer_value_of_this_is_shadowed_by_this_container))}}}return i||Se}function Yg(t,r,n){void 0===r&&(r=!0),void 0===n&&(n=e.getThisContainer(t,!1));var i=e.isInJSFile(t);if(e.isFunctionLike(n)&&(!i_(t)||e.getThisParameter(n))){var a=co(n)||i&&function(t){var r=e.getJSDocType(t);if(r&&311===r.kind){var n=r;if(n.parameters.length>0&&n.parameters[0].name&&"this"===n.parameters[0].name.escapedText)return xd(n.parameters[0].type)}var i=e.getJSDocThisTag(t);if(i&&i.typeExpression)return xd(i.typeExpression)}(n);if(!a){var o=function(t){if(209===t.kind&&e.isBinaryExpression(t.parent)&&3===e.getAssignmentDeclarationKind(t.parent))return t.parent.left.expression.expression;if(166===t.kind&&201===t.parent.kind&&e.isBinaryExpression(t.parent.parent)&&6===e.getAssignmentDeclarationKind(t.parent.parent))return t.parent.parent.left.expression;if(209===t.kind&&291===t.parent.kind&&201===t.parent.parent.kind&&e.isBinaryExpression(t.parent.parent.parent)&&6===e.getAssignmentDeclarationKind(t.parent.parent.parent))return t.parent.parent.parent.left.expression;if(209===t.kind&&e.isPropertyAssignment(t.parent)&&e.isIdentifier(t.parent.name)&&("value"===t.parent.name.escapedText||"get"===t.parent.name.escapedText||"set"===t.parent.name.escapedText)&&e.isObjectLiteralExpression(t.parent.parent)&&e.isCallExpression(t.parent.parent.parent)&&t.parent.parent.parent.arguments[2]===t.parent.parent&&9===e.getAssignmentDeclarationKind(t.parent.parent.parent))return t.parent.parent.parent.arguments[0].expression;if(e.isMethodDeclaration(t)&&e.isIdentifier(t.name)&&("value"===t.name.escapedText||"get"===t.name.escapedText||"set"===t.name.escapedText)&&e.isObjectLiteralExpression(t.parent)&&e.isCallExpression(t.parent.parent)&&t.parent.parent.arguments[2]===t.parent&&9===e.getAssignmentDeclarationKind(t.parent.parent))return t.parent.parent.arguments[0].expression}(n);if(i&&o){var s=fb(o).symbol;s&&s.members&&16&s.flags&&(a=Jo(s).thisType)}else Fy(n)&&(a=Jo(Ci(n.symbol)).thisType);a||(a=t_(n))}if(a)return Og(t,a)}if(e.isClassLike(n.parent)){var c=Ai(n.parent);return Og(t,e.hasSyntacticModifier(n,32)?_o(c):Jo(c).thisType)}if(e.isSourceFile(n)){if(n.commonJsModuleIndicator){var l=Ai(n);return l&&_o(l)}if(n.externalModuleIndicator)return Ne;if(r)return _o(ae)}}function Xg(t,r){return!!e.findAncestor(t,(function(t){return e.isFunctionLikeDeclaration(t)?"quit":161===t.kind&&t.parent===r}))}function Qg(t){var r=204===t.parent.kind&&t.parent.expression===t,n=e.getSuperContainer(t,!0),i=n,a=!1;if(!r)for(;i&&210===i.kind;)i=e.getSuperContainer(i,!0),a=V<2;var o=function(t){if(!t)return!1;if(r)return 167===t.kind;if(e.isClassLike(t.parent)||201===t.parent.kind)return e.hasSyntacticModifier(t,32)?166===t.kind||165===t.kind||168===t.kind||169===t.kind:166===t.kind||165===t.kind||168===t.kind||169===t.kind||164===t.kind||163===t.kind||167===t.kind;return!1}(i),s=0;if(!o){var c=e.findAncestor(t,(function(e){return e===i?"quit":159===e.kind}));return c&&159===c.kind?pn(t,e.Diagnostics.super_cannot_be_referenced_in_a_computed_property_name):r?pn(t,e.Diagnostics.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):i&&i.parent&&(e.isClassLike(i.parent)||201===i.parent.kind)?pn(t,e.Diagnostics.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class):pn(t,e.Diagnostics.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions),Ee}if(r||167!==n.kind||Gg(t,i,e.Diagnostics.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),s=e.hasSyntacticModifier(i,32)||r?512:256,Cn(t).flags|=s,166===i.kind&&e.hasSyntacticModifier(i,256)&&(e.isSuperProperty(t.parent)&&e.isAssignmentTarget(t.parent)?Cn(i).flags|=4096:Cn(i).flags|=2048),a&&Hg(t.parent,i),201===i.parent.kind)return V<2?(pn(t,e.Diagnostics.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),Ee):Se;var l=i.parent;if(!e.getClassExtendsHeritageElement(l))return pn(t,e.Diagnostics.super_can_only_be_referenced_in_a_derived_class),Ee;var u=Jo(Ai(l)),d=u&&Po(u)[0];return d?167===i.kind&&Xg(t,i)?(pn(t,e.Diagnostics.super_cannot_be_referenced_in_constructor_arguments),Ee):512===s?Ao(u):ls(d,u.thisType):Ee}function Zg(t){return 4&e.getObjectFlags(t)&&t.target===Ct?ll(t)[0]:void 0}function e_(t){return pg(t,(function(t){return 2097152&t.flags?e.forEach(t.types,Zg):Zg(t)}))}function t_(t){if(210!==t.kind){if(tp(t)){var r=A_(t);if(r){var n=r.thisParameter;if(n)return _o(n)}}var i=e.isInJSFile(t);if(Q||i){var a=function(e){return 166!==e.kind&&168!==e.kind&&169!==e.kind||201!==e.parent.kind?209===e.kind&&291===e.parent.kind?e.parent.parent:void 0:e.parent}(t);if(a){for(var o=v_(a),s=a,c=o;c;){var l=e_(c);if(l)return Wd(l,im(S_(a)));if(291!==s.parent.kind)break;c=v_(s=s.parent.parent)}return Hf(o?Pf(o):$v(a))}var u=e.walkUpParenthesizedExpressions(t.parent);if(218===u.kind&&62===u.operatorToken.kind){var d=u.left;if(e.isAccessExpression(d)){var p=d.expression;if(i&&e.isIdentifier(p)){var f=e.getSourceFileOfNode(u);if(f.commonJsModuleIndicator&&Am(p)===f.symbol)return}return Hf($v(p))}}}}}function r_(t){var r=t.parent;if(tp(r)){var n=e.getImmediatelyInvokedFunctionExpression(r);if(n&&n.arguments){var i=dy(n),a=r.parameters.indexOf(t);if(t.dotDotDotToken)return ay(i,a,i.length,Se,void 0,0);var o=Cn(n),s=o.resolvedSignature;o.resolvedSignature=lr;var c=a<i.length?gf(fb(i[a])):t.initializer?void 0:Pe;return o.resolvedSignature=s,c}var l=A_(r);if(l){var u=r.parameters.indexOf(t)-(e.getThisParameter(r)?1:0);return t.dotDotDotToken&&e.lastOrUndefined(r.parameters)===t?av(l,u):iv(l,u)}}}function n_(t){var r=e.getEffectiveTypeAnnotationNode(t);if(r)return xd(r);switch(t.kind){case 161:return r_(t);case 199:return function(t){var r=t.parent.parent,n=t.propertyName||t.name,i=n_(r)||199!==r.kind&&r.initializer&&Yv(r);if(!i||e.isBindingPattern(n)||e.isComputedNonLiteralName(n))return;if(198===r.name.kind){var a=e.indexOfNode(t.parent.elements,t);if(a<0)return;return g_(i,a)}var o=vu(n);if(Zo(o)){return Na(i,is(o))}}(t);case 164:if(e.hasSyntacticModifier(t,32))return function(t){var r=e.isExpression(t.parent)&&x_(t.parent);return r?p_(r,Ai(t).escapedName):void 0}(t)}}function i_(t){for(var r=!1;t.parent&&!e.isFunctionLike(t.parent);){if(e.isParameter(t.parent)&&(r||t.parent.initializer===t))return!0;e.isBindingElement(t.parent)&&t.parent.initializer===t&&(r=!0),t=t.parent}return!1}function a_(t,r){var n=!!(2&e.getFunctionFlags(r)),i=o_(r);if(i)return tx(t,i,n)||void 0}function o_(e){var t=zc(e);if(t)return t;var r=C_(e);return r&&!Uc(r)?Bc(r):void 0}function s_(e,t){var r=dy(e).indexOf(t);return-1===r?void 0:c_(e,r)}function c_(t,r){var n=Cn(t).resolvedSignature===dr?dr:Iy(t);return e.isJsxOpeningLikeElement(t)&&0===r?w_(n,t):nv(n,r)}function l_(t,r){var n=t.parent,i=n.left,a=n.operatorToken,o=n.right;switch(a.kind){case 62:case 75:case 74:case 76:return t===o?function(t){var r=e.getAssignmentDeclarationKind(t);switch(r){case 0:return ub(t.left);case 5:case 1:case 6:case 3:if(u_(t,r))return d_(t,r);if(t.left.symbol){var n=t.left.symbol.valueDeclaration;if(!n)return;var i=e.cast(t.left,e.isAccessExpression),a=e.getEffectiveTypeAnnotationNode(n);if(a)return xd(a);if(e.isIdentifier(i.expression)){var o=i.expression,s=Fn(o,o.escapedText,111551,void 0,o.escapedText,!0);if(s){var c=s.valueDeclaration&&e.getEffectiveTypeAnnotationNode(s.valueDeclaration);if(c){var l=e.getElementOrPropertyAccessName(i);if(void 0!==l)return p_(xd(c),l)}return}}return e.isInJSFile(n)?void 0:ub(t.left)}return ub(t.left);case 2:case 4:return d_(t,r);case 7:case 8:case 9:return e.Debug.fail("Does not apply");default:return e.Debug.assertNever(r)}}(n):void 0;case 56:case 60:var s=x_(n,r);return t===o&&(s&&s.pattern||!s&&!e.isDefaultedExpandoInitializer(n))?ub(i):s;case 55:case 27:return t===o?x_(n,r):void 0;default:return}}function u_(t,r){if(void 0===r&&(r=e.getAssignmentDeclarationKind(t)),4===r)return!0;if(!e.isInJSFile(t)||5!==r||!e.isIdentifier(t.left.expression))return!1;var n=t.left.expression.escapedText,i=Fn(t.left,n,111551,void 0,void 0,!0,!0);return e.isThisInitializedDeclaration(null==i?void 0:i.valueDeclaration)}function d_(t,r){if(!t.symbol)return ub(t.left);if(t.symbol.valueDeclaration){var n=e.getEffectiveTypeAnnotationNode(t.symbol.valueDeclaration);if(n){var i=xd(n);if(i)return i}}if(2!==r){var a=e.cast(t.left,e.isAccessExpression);if(e.isObjectLiteralMethod(e.getThisContainer(a.expression,!1))){var o=$g(a.expression),s=e.getElementOrPropertyAccessName(a);return void 0!==s&&p_(o,s)||void 0}}}function p_(t,r){return pg(t,(function(t){if(zs(t)){var n=Ps(t),i=Qs(n)||n,a=hd(e.unescapeLeadingUnderscores(r));if(cp(a,i))return Uu(t,a)}else if(3670016&t.flags){var o=gc(t,r);if(o)return c=o,262144&e.getCheckFlags(c)&&!c.type&&Ea(c,0)>=0?void 0:_o(o);if(vf(t)){var s=xf(t);if(s&&R_(r)&&+r>=0)return s}return R_(r)&&f_(t,1)||f_(t,0)}var c}),!0)}function f_(e,t){return pg(e,(function(e){return vc(e,t)}),!0)}function m_(e,t){var r=v_(e.parent,t);if(r){if(ns(e)){var n=p_(r,Ai(e).escapedName);if(n)return n}return F_(e.name)&&f_(r,1)||f_(r,0)}}function g_(e,t){return e&&(p_(e,""+t)||pg(e,(function(e){return Fk(1,e,Ne,void 0,!1)}),!0))}function __(t){var r=t.parent;return e.isJsxAttributeLike(r)?x_(t):e.isJsxElement(r)?function(t,r){var n=v_(t.openingElement.tagName),i=Q_(Y_(t));if(n&&!Pa(n)&&i&&""!==i){var a=e.getSemanticJsxChildren(t.children),o=a.indexOf(r),s=p_(n,i);return s&&(1===a.length?s:pg(s,(function(e){return sf(e)?qu(e,hd(o)):e}),!0))}}(r,t):void 0}function h_(t){if(e.isJsxAttribute(t)){var r=v_(t.parent);if(!r||Pa(r))return;return p_(r,t.name.escapedText)}return x_(t.parent)}function y_(e){switch(e.kind){case 10:case 8:case 9:case 14:case 110:case 95:case 104:case 78:case 151:return!0;case 202:case 208:return y_(e.expression);case 286:return!e.expression||y_(e.expression)}return!1}function v_(t,r){var n=b_(e.isObjectLiteralMethod(t)?function(t,r){if(e.Debug.assert(e.isObjectLiteralMethod(t)),!(16777216&t.flags))return m_(t,r)}(t,r):x_(t,r),t,r);if(n&&!(r&&2&r&&8650752&n.flags)){var i=pg(n,ac,!0);if(1048576&i.flags){if(e.isObjectLiteralExpression(t))return function(t,r){return Lp(r,e.map(e.filter(t.properties,(function(e){return!!e.symbol&&291===e.kind&&y_(e.initializer)&&Lm(r,e.symbol.escapedName)})),(function(e){return[function(){return fb(e.initializer)},e.symbol.escapedName]})),cp,r)}(t,i);if(e.isJsxAttributes(t))return function(t,r){return Lp(r,e.map(e.filter(t.properties,(function(e){return!!e.symbol&&283===e.kind&&Lm(r,e.symbol.escapedName)&&(!e.initializer||y_(e.initializer))})),(function(e){return[e.initializer?function(){return fb(e.initializer)}:function(){return ze},e.symbol.escapedName]})),cp,r)}(t,i)}return i}}function b_(t,r,n){if(t&&Rv(t,465829888)){var i=S_(r);if(i&&e.some(i.inferences,ab)){if(n&&1&n)return k_(t,i.nonFixingMapper);if(i.returnMapper)return k_(t,i.returnMapper)}}return t}function k_(t,r){return 465829888&t.flags?Wd(t,r):1048576&t.flags?ou(e.map(t.types,(function(e){return k_(e,r)})),0):2097152&t.flags?fu(e.map(t.types,(function(e){return k_(e,r)}))):t}function x_(t,r){if(16777216&t.flags);else{if(t.contextualType)return t.contextualType;var n=t.parent;switch(n.kind){case 251:case 161:case 164:case 163:case 199:return function(t,r){var n=t.parent;if(e.hasInitializer(n)&&t===n.initializer){var i=n_(n);if(i)return i;if(!(8&r)&&e.isBindingPattern(n.name))return eo(n.name,!0,!1)}}(t,r);case 210:case 244:return function(t){var r=e.getContainingFunction(t);if(r){var n=o_(r);if(n){var i=e.getFunctionFlags(r);if(1&i){var a=Bk(n,2&i?2:1,void 0);if(!a)return;n=a.returnType}if(2&i){var o=pg(n,Ub);return o&&ou([o,hv(o)])}return n}}}(t);case 221:return function(t){var r=e.getContainingFunction(t);if(r){var n=e.getFunctionFlags(r),i=o_(r);if(i)return t.asteriskToken?i:tx(0,i,!!(2&n))}}(n);case 215:return function(e,t){var r=x_(e,t);if(r){var n=Ub(r);return n&&ou([n,hv(n)])}}(n,r);case 204:case 211:if(100===n.expression.kind)return Re;case 205:return s_(n,t);case 207:case 226:return e.isConstTypeReference(n.type)?function(e){return x_(e)}(n):xd(n.type);case 218:return l_(t,r);case 291:case 292:return m_(n,r);case 293:return v_(n.parent,r);case 200:var i=n;return g_(v_(i,r),e.indexOfNode(i.elements,t));case 219:return function(e,t){var r=e.parent;return e===r.whenTrue||e===r.whenFalse?x_(r,t):void 0}(t,r);case 230:return e.Debug.assert(220===n.parent.kind),function(e,t){if(206===e.parent.kind)return s_(e.parent,t)}(n.parent,t);case 208:var a=e.isInJSFile(n)?e.getJSDocTypeTag(n):void 0;return a?xd(a.typeExpression.type):x_(n,r);case 227:return x_(n,r);case 286:return __(n);case 283:case 285:return h_(n);case 278:case 277:return function(t,r){if(e.isJsxOpeningElement(t)&&t.parent.contextualType&&4!==r)return t.parent.contextualType;return c_(t,0)}(n,r)}}}function S_(t){var r=e.findAncestor(t,(function(e){return!!e.inferenceContext}));return r&&r.inferenceContext}function w_(t,r){return 0!==sy(r)?function(e,t){var r=pv(e,Ae);r=D_(t,Y_(t),r);var n=W_(N.IntrinsicAttributes,t);n!==Ee&&(r=bs(n,r));return r}(t,r):function(t,r){var n=Y_(r),i=(o=n,X_(N.ElementAttributesPropertyNameContainer,o)),a=void 0===i?pv(t,Ae):""===i?Bc(t):function(e,t){if(e.unionSignatures){for(var r=[],n=0,i=e.unionSignatures;n<i.length;n++){var a=Bc(i[n]);if(Pa(a))return a;var o=Na(a,t);if(!o)return;r.push(o)}return fu(r)}var s=Bc(e);return Pa(s)?s:Na(s,t)}(t,i);var o;if(!a)return i&&e.length(r.attributes.properties)&&pn(r,e.Diagnostics.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,e.unescapeLeadingUnderscores(i)),Ae;if(Pa(a=D_(r,n,a)))return a;var s=a,c=W_(N.IntrinsicClassAttributes,r);if(c!==Ee){var l=So(c.symbol),u=Bc(t);s=bs(l?ol(c,Pc([u],l,Nc(l),e.isInJSFile(r))):c,s)}var d=W_(N.IntrinsicAttributes,r);return d!==Ee&&(s=bs(d,s)),s}(t,r)}function D_(t,r,n){var i,a=(i=r)&&Nn(i.exports,N.LibraryManagedAttributes,788968);if(a){var o=Jo(a),s=function(e){if(q_(e.tagName))return $c(Ay(e,t=th(e)));var t,r=$v(e.tagName);return 128&r.flags?(t=eh(r,e))?$c(Ay(e,t)):Ee:r}(t);if(524288&a.flags){var c=Tn(a).typeParameters;if(e.length(c)>=2)return pl(a,Pc([s,n],c,2,e.isInJSFile(t)))}if(e.length(o.typeParameters)>=2)return ol(o,Pc([s,n],o.typeParameters,2,e.isInJSFile(t)))}return n}function E_(t,r){var n=hc(t,0);if(1===n.length){var i=n[0];if(!function(t,r){for(var n=0;n<r.parameters.length;n++){var i=r.parameters[n];if(i.initializer||i.questionToken||i.dotDotDotToken||Dc(i))break}r.parameters.length&&e.parameterIsThisKeyword(r.parameters[0])&&n--;return!cv(t)&&ov(t)<n}(i,r))return i}}function T_(e){return 209===e.kind||210===e.kind}function C_(t){return T_(t)||e.isObjectLiteralMethod(t)?A_(t):void 0}function A_(t){e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t));var r=Fc(t);if(r)return r;var n=v_(t,1);if(n){if(!(1048576&n.flags))return E_(n,t);for(var i,a=0,o=n.types;a<o.length;a++){var s=E_(o[a],t);if(s)if(i){if(!ef(i[0],s,!1,!0,!0,ip))return;i.push(s)}else i=[s]}return i?1===i.length?i[0]:fs(i[0],i):void 0}}function N_(e){return 199===e.kind&&!!e.initializer||218===e.kind&&62===e.operatorToken.kind}function P_(t,r,n){for(var i=t.elements,a=i.length,o=[],s=[],c=v_(t),l=e.isAssignmentTarget(t),u=Zv(t),d=0;d<a;d++){var p=i[d];if(222===p.kind){V<2&&jS(p,J.downlevelIteration?1536:1024);var f=fb(p.expression,r,n);if(sf(f))o.push(f),s.push(8);else if(l){var m=kc(f,1)||Fk(65,f,Ne,void 0,!1)||Ae;o.push(m),s.push(4)}else o.push(Ik(33,f,Ne,p.expression)),s.push(4)}else{var g=eb(p,r,g_(c,o.length),n);o.push(g),s.push(1)}}return l?Hl(o,s):n||u||c&&cg(c,lf)?I_(Hl(o,s,u)):I_(jl(o.length?ou(e.sameMap(o,(function(e,t){return 8&s[t]?Vu(e,Me)||Se:e})),2):W?Ge:Pe,u))}function I_(t){if(!(4&e.getObjectFlags(t)))return t;var r=t.literalType;return r||((r=t.literalType=sl(t)).objectFlags|=1114112),r}function F_(e){switch(e.kind){case 159:return function(e){return Mv(M_(e),296)}(e);case 78:return R_(e.escapedText);case 8:case 10:return R_(e.text);default:return!1}}function O_(e){return"Infinity"===e||"-Infinity"===e||"NaN"===e}function R_(e){return(+e).toString()===e}function M_(t){var r=Cn(t.expression);return r.resolvedType||(r.resolvedType=fb(t.expression),98304&r.resolvedType.flags||!Mv(r.resolvedType,402665900)&&!cp(r.resolvedType,Xe)?pn(t,e.Diagnostics.A_computed_property_name_must_be_of_type_string_number_symbol_or_any):qh(t.expression,r.resolvedType,!0)),r.resolvedType}function L_(t,r,n,i){for(var a,o,s,c=[],l=r;l<n.length;l++)(0===i||(a=n[l],o=void 0,s=void 0,s=null===(o=a.declarations)||void 0===o?void 0:o[0],R_(a.escapedName)||s&&e.isNamedDeclaration(s)&&F_(s.name)))&&c.push(_o(n[l]));return Qc(c.length?ou(c,2):Ne,Zv(t))}function j_(t){e.Debug.assert(!!(2097152&t.flags),"Should only get Alias here.");var r=Tn(t);if(!r.immediateTarget){var n=Vn(t);if(!n)return e.Debug.fail();r.immediateTarget=ri(n,!0)}return r.immediateTarget}function B_(t,r){var n=e.isAssignmentTarget(t);!function(t,r){for(var n=new e.Map,i=0,a=t.properties;i<a.length;i++){var o=a[i];if(293!==o.kind){var s=o.name;if(159===s.kind&&YS(s),292===o.kind&&!r&&o.objectAssignmentInitializer)return fw(o.equalsToken,e.Diagnostics.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern);if(79===s.kind)return fw(s,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies);if(o.modifiers)for(var c=0,l=o.modifiers;c<l.length;c++){var u=l[c];130===u.kind&&166===o.kind||fw(u,e.Diagnostics._0_modifier_cannot_be_used_here,e.getTextOfNode(u))}var d=void 0;switch(o.kind){case 292:ZS(o.exclamationToken,e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context);case 291:QS(o.questionToken,e.Diagnostics.An_object_member_cannot_be_declared_optional),8===s.kind&&_w(s),d=4;break;case 166:d=8;break;case 168:d=1;break;case 169:d=2;break;default:throw e.Debug.assertNever(o,"Unexpected syntax kind:"+o.kind)}if(!r){var p=e.getPropertyNameForPropertyNameNode(s);if(void 0===p)continue;var f=n.get(p);if(f)if(12&d&&12&f)fw(s,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(s));else{if(!(3&d&&3&f))return fw(s,e.Diagnostics.An_object_literal_cannot_have_property_and_accessor_with_the_same_name);if(3===f||d===f)return fw(s,e.Diagnostics.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);n.set(p,d|f)}else n.set(p,d)}}else if(r){var m=e.skipParentheses(o.expression);if(e.isArrayLiteralExpression(m)||e.isObjectLiteralExpression(m))return fw(o.expression,e.Diagnostics.A_rest_element_cannot_contain_a_binding_pattern)}}}(t,n);for(var i=W?e.createSymbolTable():void 0,a=e.createSymbolTable(),o=[],s=nt,c=v_(t),l=c&&c.pattern&&(197===c.pattern.kind||201===c.pattern.kind),u=Zv(t),d=u?8:0,p=e.isInJSFile(t)&&!e.isInJsonFile(t),f=e.getJSDocEnumTag(t),m=!c&&p&&!f,g=ee,_=!1,h=!1,y=!1,v=0,b=t.properties;v<b.length;v++){var k=b[v];k.name&&e.isComputedPropertyName(k.name)&&!e.isWellKnownSymbolSyntactically(k.name)&&M_(k.name)}for(var x=0,S=0,w=t.properties;S<w.length;S++){var D=w[S],E=Ai(D),T=D.name&&159===D.name.kind&&!e.isWellKnownSymbolSyntactically(D.name.expression)?M_(D.name):void 0;if(291===D.kind||292===D.kind||e.isObjectLiteralMethod(D)){var C=291===D.kind?tb(D,r):292===D.kind?eb(!n&&D.objectAssignmentInitializer?D.objectAssignmentInitializer:D.name,r):rb(D,r);if(p){var A=ja(D);A?(pp(C,A,D),C=A):f&&f.typeExpression&&pp(C,xd(f.typeExpression),D)}g|=3670016&e.getObjectFlags(C);var N=T&&Zo(T)?T:void 0,P=N?yn(4|E.flags,is(N),4096|d):yn(4|E.flags,E.escapedName,d);if(N&&(P.nameType=N),n)(291===D.kind&&N_(D.initializer)||292===D.kind&&D.objectAssignmentInitializer)&&(P.flags|=16777216);else if(l&&!(512&e.getObjectFlags(c))){var I=gc(c,E.escapedName);I?P.flags|=16777216&I.flags:J.suppressExcessPropertyErrors||bc(c,0)||pn(D.name,e.Diagnostics.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,la(E),da(c))}P.declarations=E.declarations,P.parent=E.parent,E.valueDeclaration&&(P.valueDeclaration=E.valueDeclaration),P.type=C,P.target=E,E=P,null==i||i.set(P.escapedName,P)}else{if(293===D.kind){if(V<2&&jS(D,2),o.length>0&&(s=ld(s,R(),t.symbol,g,u),o=[],a=e.createSymbolTable(),h=!1,y=!1),!z_(C=uc(fb(D.expression))))return pn(D,e.Diagnostics.Spread_types_may_only_be_created_from_object_types),Ee;i&&H_(C,i,D),s=ld(s,C,t.symbol,g,u),x=o.length;continue}e.Debug.assert(168===D.kind||169===D.kind),Lx(D)}!T||8576&T.flags?a.set(E.escapedName,E):cp(T,Xe)&&(cp(T,Me)?y=!0:h=!0,n&&(_=!0)),o.push(E)}if(l&&293!==t.parent.kind)for(var F=0,O=Hs(c);F<O.length;F++){P=O[F];a.get(P.escapedName)||gc(s,P.escapedName)||(16777216&P.flags||pn(P.valueDeclaration||P.bindingElement,e.Diagnostics.Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value),a.set(P.escapedName,P),o.push(P))}return s!==nt?(o.length>0&&(s=ld(s,R(),t.symbol,g,u),o=[],a=e.createSymbolTable(),h=!1,y=!1),pg(s,(function(e){return e===nt?R():e}))):R();function R(){var r=h?L_(t,x,o,0):void 0,i=y?L_(t,x,o,1):void 0,s=Wi(t.symbol,a,e.emptyArray,e.emptyArray,r,i);return s.objectFlags|=1048704|g,m&&(s.objectFlags|=16384),_&&(s.objectFlags|=512),n&&(s.pattern=t),s}}function z_(t){if(465829888&t.flags){var r=Qs(t);if(void 0!==r)return z_(r)}return!!(126615553&t.flags||117632&Ef(t)&&z_(Tf(t))||3145728&t.flags&&e.every(t.types,z_))}function U_(t){return!e.stringContains(t,"-")}function q_(t){return 78===t.kind&&e.isIntrinsicJsxName(t.escapedText)}function J_(e,t){return e.initializer?eb(e.initializer,t):ze}function V_(e,t){for(var r=[],n=0,i=e.children;n<i.length;n++){var a=i[n];if(11===a.kind)a.containsOnlyTriviaWhiteSpaces||r.push(Re);else{if(286===a.kind&&!a.expression)continue;r.push(eb(a,t))}}return r}function H_(t,r,n){for(var i=0,a=Hs(t);i<a.length;i++){var o=a[i],s=r.get(o.escapedName),c=_o(o);if(s&&!Rv(c,98304)&&!(Rv(c,3)&&16777216&o.flags)){var l=pn(s.valueDeclaration,e.Diagnostics._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,e.unescapeLeadingUnderscores(s.escapedName));e.addRelatedInfo(l,e.createDiagnosticForNode(n,e.Diagnostics.This_spread_always_overwrites_this_property))}}}function K_(t,r){return function(t,r){for(var n,i=t.attributes,a=W?e.createSymbolTable():void 0,o=e.createSymbolTable(),s=it,c=!1,l=!1,u=4096,d=Q_(Y_(t)),p=0,f=i.properties;p<f.length;p++){var m=f[p],g=m.symbol;if(e.isJsxAttribute(m)){var _=J_(m,r);u|=3670016&e.getObjectFlags(_);var h=yn(4|g.flags,g.escapedName);h.declarations=g.declarations,h.parent=g.parent,g.valueDeclaration&&(h.valueDeclaration=g.valueDeclaration),h.type=_,h.target=g,o.set(h.escapedName,h),null==a||a.set(h.escapedName,h),m.name.escapedText===d&&(l=!0)}else e.Debug.assert(285===m.kind),o.size>0&&(s=ld(s,w(),i.symbol,u,!1),o=e.createSymbolTable()),Pa(_=uc($v(m.expression,r)))&&(c=!0),z_(_)?(s=ld(s,_,i.symbol,u,!1),a&&H_(_,a,m)):n=n?fu([n,_]):_}c||o.size>0&&(s=ld(s,w(),i.symbol,u,!1));var y=276===t.parent.kind?t.parent:void 0;if(y&&y.openingElement===t&&y.children.length>0){var v=V_(y,r);if(!c&&d&&""!==d){l&&pn(i,e.Diagnostics._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,e.unescapeLeadingUnderscores(d));var b=v_(t.attributes),k=b&&p_(b,d),x=yn(4,d);x.type=1===v.length?v[0]:k&&cg(k,lf)?Hl(v):jl(ou(v)),x.valueDeclaration=e.factory.createPropertySignature(void 0,e.unescapeLeadingUnderscores(d),void 0,void 0),e.setParent(x.valueDeclaration,i),x.valueDeclaration.symbol=x;var S=e.createSymbolTable();S.set(d,x),s=ld(s,Wi(i.symbol,S,e.emptyArray,e.emptyArray,void 0,void 0),i.symbol,u,!1)}}return c?Se:n&&s!==it?fu([n,s]):n||(s===it?w():s);function w(){u|=ee;var t=Wi(i.symbol,o,e.emptyArray,e.emptyArray,void 0,void 0);return t.objectFlags|=1048704|u,t}}(t.parent,r)}function W_(e,t){var r=Y_(t),n=r&&wi(r),i=n&&Nn(n,e,788968);return i?Jo(i):Ee}function G_(t){var r=Cn(t);if(!r.resolvedSymbol){var n=W_(N.IntrinsicElements,t);if(n!==Ee){if(!e.isIdentifier(t.tagName))return e.Debug.fail();var i=gc(n,t.tagName.escapedText);return i?(r.jsxFlags|=1,r.resolvedSymbol=i):kc(n,0)?(r.jsxFlags|=2,r.resolvedSymbol=n.symbol):(pn(t,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.idText(t.tagName),"JSX."+N.IntrinsicElements),r.resolvedSymbol=ke)}return X&&pn(t,e.Diagnostics.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,e.unescapeLeadingUnderscores(N.IntrinsicElements)),r.resolvedSymbol=ke}return r.resolvedSymbol}function $_(t){var r=t&&e.getSourceFileOfNode(t),n=r&&Cn(r);if(!n||!1!==n.jsxImplicitImportContainer){if(n&&n.jsxImplicitImportContainer)return n.jsxImplicitImportContainer;var i=e.getJSXRuntimeImport(e.getJSXImplicitImportBase(J,r),J);if(i){var a=hi(t,i,e.getEmitModuleResolutionKind(J)===e.ModuleResolutionKind.Classic?e.Diagnostics.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:e.Diagnostics.Cannot_find_module_0_or_its_corresponding_type_declarations,t),o=a&&a!==ke?Ci(ii(a)):void 0;return n&&(n.jsxImplicitImportContainer=o||!1),o}}}function Y_(e){var t=e&&Cn(e);if(t&&t.jsxNamespace)return t.jsxNamespace;if(!t||!1!==t.jsxNamespace){var r=$_(e);if(!r||r===ke){var n=un(e);r=Fn(e,n,1920,void 0,n,!1)}if(r){var i=ii(Nn(wi(ii(r)),N.JSX,1920));if(i&&i!==ke)return t&&(t.jsxNamespace=i),i}t&&(t.jsxNamespace=!1)}var a=ii(Cl(N.JSX,1920,void 0));return a!==ke?a:void 0}function X_(t,r){var n=r&&Nn(r.exports,t,788968),i=n&&Jo(n),a=i&&Hs(i);if(a){if(0===a.length)return"";if(1===a.length)return a[0].escapedName;a.length>1&&pn(n.declarations[0],e.Diagnostics.The_global_type_JSX_0_may_not_have_more_than_one_property,e.unescapeLeadingUnderscores(t))}}function Q_(e){return X_(N.ElementChildrenAttributeNameContainer,e)}function Z_(t,r){if(4&t.flags)return[lr];if(128&t.flags){var n=eh(t,r);return n?[Ay(r,n)]:(pn(r,e.Diagnostics.Property_0_does_not_exist_on_type_1,t.value,"JSX."+N.IntrinsicElements),e.emptyArray)}var i=ac(t),a=hc(i,1);return 0===a.length&&(a=hc(i,0)),0===a.length&&1048576&i.flags&&(a=ys(e.map(i.types,(function(e){return Z_(e,r)})))),a}function eh(t,r){var n=W_(N.IntrinsicElements,r);if(n!==Ee){var i=t.value,a=gc(n,e.escapeLeadingUnderscores(i));if(a)return _o(a);var o=kc(n,0);return o||void 0}return Se}function th(t){e.Debug.assert(q_(t.tagName));var r=Cn(t);if(!r.resolvedJsxElementAttributesType){var n=G_(t);return 1&r.jsxFlags?r.resolvedJsxElementAttributesType=_o(n):2&r.jsxFlags?r.resolvedJsxElementAttributesType=kc(Jo(n),0):r.resolvedJsxElementAttributesType=Ee}return r.resolvedJsxElementAttributesType}function rh(e){var t=W_(N.ElementClass,e);if(t!==Ee)return t}function nh(e){return W_(N.Element,e)}function ih(e){var t=nh(e);if(t)return ou([t,Fe])}function ah(t){var r,n=e.isJsxOpeningLikeElement(t);if(n&&function(t){KS(t,t.typeArguments);for(var r=new e.Map,n=0,i=t.attributes.properties;n<i.length;n++){var a=i[n];if(285!==a.kind){var o=a.name,s=a.initializer;if(r.get(o.escapedText))return fw(o,e.Diagnostics.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(r.set(o.escapedText,!0),s&&286===s.kind&&!s.expression)return fw(s,e.Diagnostics.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}}(t),r=t,0===(J.jsx||0)&&pn(r,e.Diagnostics.Cannot_use_JSX_unless_the_jsx_flag_is_provided),void 0===nh(r)&&X&&pn(r,e.Diagnostics.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist),!$_(t)){var i=Qr&&2===J.jsx?e.Diagnostics.Cannot_find_name_0:void 0,a=un(t),o=n?t.tagName:t,s=void 0;e.isJsxOpeningFragment(t)&&"null"===a||(s=Fn(o,a,111551,i,a,!0)),s&&(s.isReferenced=67108863,2097152&s.flags&&!ci(s)&&ui(s))}if(n){var c=t,l=Iy(c);Uy(l,t),function(t,r,n){if(1===t)(i=ih(n))&&Op(r,i,an,n.tagName,e.Diagnostics.Its_return_type_0_is_not_a_valid_JSX_element,o);else if(0===t)(a=rh(n))&&Op(r,a,an,n.tagName,e.Diagnostics.Its_instance_type_0_is_not_a_valid_JSX_element,o);else{var i=ih(n),a=rh(n);if(!i||!a)return;Op(r,ou([i,a]),an,n.tagName,e.Diagnostics.Its_element_type_0_is_not_a_valid_JSX_element,o)}function o(){var t=e.getTextOfNode(n.tagName);return e.chainDiagnosticMessages(void 0,e.Diagnostics._0_cannot_be_used_as_a_JSX_component,t)}}(sy(c),Bc(l),c)}}function oh(e,t,r){if(524288&e.flags){var n=Us(e);if(n.stringIndexInfo||n.numberIndexInfo&&R_(t)||Js(e,t)||r&&!U_(t))return!0}else if(3145728&e.flags&&sh(e))for(var i=0,a=e.types;i<a.length;i++){if(oh(a[i],t,r))return!0}return!1}function sh(t){return!!(524288&t.flags&&!(512&e.getObjectFlags(t))||67108864&t.flags||1048576&t.flags&&e.some(t.types,sh)||2097152&t.flags&&e.every(t.types,sh))}function ch(t,r){if(function(t){if(t.expression&&e.isCommaSequence(t.expression))fw(t.expression,e.Diagnostics.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}(t),t.expression){var n=fb(t.expression,r);return t.dotDotDotToken&&n!==Se&&!rf(n)&&pn(t,e.Diagnostics.JSX_spread_child_must_be_an_array_type),n}return Ee}function lh(t){return t.valueDeclaration?e.getCombinedNodeFlags(t.valueDeclaration):0}function uh(t){if(8192&t.flags||4&e.getCheckFlags(t))return!0;if(e.isInJSFile(t.valueDeclaration)){var r=t.valueDeclaration.parent;return r&&e.isBinaryExpression(r)&&3===e.getAssignmentDeclarationKind(r)}}function dh(t,r,n,i){var a,o=e.getDeclarationModifierFlagsFromSymbol(i),s=158===t.kind?t.right:196===t.kind?t:t.name;if(r){if(V<2&&ph(i))return pn(s,e.Diagnostics.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(128&o)return pn(s,e.Diagnostics.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,la(i),da(Gp(i))),!1}if(128&o&&e.isThisProperty(t)&&ph(i)&&((a=e.getClassLikeDeclarationOfSymbol(Ni(i)))&&function(t){return!!e.findAncestor(t,(function(t){return!!(e.isConstructorDeclaration(t)&&e.nodeIsPresent(t.body)||e.isPropertyDeclaration(t))||!(!e.isClassLike(t)&&!e.isFunctionLikeDeclaration(t))&&"quit"}))}(t)))return pn(s,e.Diagnostics.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,la(i),e.getTextOfIdentifierOrLiteral(a.name)),!1;if(e.isPropertyAccessExpression(t)&&e.isPrivateIdentifier(t.name))return!!e.getContainingClass(t)||(pn(s,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),!1);if(!(24&o))return!0;if(8&o)return!!Wx(t,a=e.getClassLikeDeclarationOfSymbol(Ni(i)))||(pn(s,e.Diagnostics.Property_0_is_private_and_only_accessible_within_class_1,la(i),da(Gp(i))),!1);if(r)return!0;var c=Kx(t,(function(t){var r=Jo(Ai(t));return function(t,r){return Wp(r,(function(r){return!!(16&e.getDeclarationModifierFlagsFromSymbol(r))&&!vo(t,Gp(r))}))?void 0:t}(r,i)?r:void 0}));if(!c){var l=void 0;if(32&o||!(l=function(t){var r=e.getThisContainer(t,!1);return r&&e.isFunctionLike(r)?e.getThisParameter(r):void 0}(t))||!l.type)return pn(s,e.Diagnostics.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,la(i),da(Gp(i)||n)),!1;var u=xd(l.type);c=(262144&u.flags?Ws(u):u).target}return!!(32&o)||(262144&n.flags&&(n=n.isThisType?Ws(n):Qs(n)),!(!n||!vo(n,c))||(pn(s,e.Diagnostics.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1,la(i),da(c)),!1))}function ph(e){return!!Wp(e,(function(e){return!(8192&e.flags)}))}function fh(e,t){return vh(fb(e,t),e)}function mh(e){return!!(98304&(W?Ef(e):e.flags))}function gh(e){return mh(e)?Pf(e):e}function _h(t,r){pn(t,32768&r?65536&r?e.Diagnostics.Object_is_possibly_null_or_undefined:e.Diagnostics.Object_is_possibly_undefined:e.Diagnostics.Object_is_possibly_null)}function hh(t,r){pn(t,32768&r?65536&r?e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_undefined:e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_null)}function yh(t,r,n){if(W&&2&t.flags)return pn(r,e.Diagnostics.Object_is_of_type_unknown),Ee;var i=98304&(W?Ef(t):t.flags);if(i){n(r,i);var a=Pf(t);return 229376&a.flags?Ee:a}return t}function vh(e,t){return yh(e,t,_h)}function bh(t,r){var n=vh(t,r);return n!==Ee&&16384&n.flags&&pn(r,e.Diagnostics.Object_is_possibly_undefined),n}function kh(r,n){return 32!==n&&function(r){if(!t.getTagNameNeededCheckByFile)return;var n=e.getSourceFileOfNode(r),i=function(t){var r,n=t.name,i=fh(t.expression),a=e.getAssignmentTargetKind(t),o=ac(0!==a||Sh(t)?Hf(i):i);if(e.isPrivateIdentifier(n)){var s=wh(n.escapedText,n);r=s?Dh(i,s):void 0}else if(!(r=gc(o,n.escapedText))){var c=e.getEtsComponentExpressionInnerExpressionStatementNode(t)||e.getRootEtsComponentInnerCallExpressionNode(t);c&&(r=function(t,r,n){var i,a,o,s,c,l=e.getSourceFileOfNode(t).locals;if(null==l?void 0:l.has(n.escapedText)){var u=null==l?void 0:l.get(n.escapedText),d=e.isIdentifier(r)?r.escapedText:e.isIdentifier(t.expression)?t.expression.escapedText:void 0;e.getEtsExtendDecoratorsComponentNames(null===(i=null==u?void 0:u.valueDeclaration)||void 0===i?void 0:i.decorators,J).find((function(e){return e===d}))&&(c=u),e.hasEtsStylesDecoratorNames(null===(a=null==u?void 0:u.valueDeclaration)||void 0===a?void 0:a.decorators,J)&&(c=u)}var p=null===(o=e.getContainingStruct(t))||void 0===o?void 0:o.symbol.members;if(null==p?void 0:p.has(n.escapedText)){var f=null==p?void 0:p.get(n.escapedText);e.hasEtsStylesDecoratorNames(null===(s=null==f?void 0:f.valueDeclaration)||void 0===s?void 0:s.decorators,J)&&(c=f)}return c}(t,c,n))}return r}(r);if(!i||!i.valueDeclaration)return;var a=e.getSourceFileOfNode(i.valueDeclaration);if(!a)return;var o=t.getTagNameNeededCheckByFile(n.fileName,a.fileName);if(!o.needCheck)return;e.isIdentifier(r.name)&&jy(i.getJsDocTags(),r.name,n,o.checkConfig)}(r),32&r.flags?function(e,t){var r=fb(e.expression,t),n=Mf(r,e.expression);return Rf(Th(e,e.expression,vh(n,e.expression),e.name),e,n!==r)}(r,n):Th(r,r.expression,fh(r.expression,n),r.name)}function xh(e){return Th(e,e.left,fh(e.left),e.right)}function Sh(t){for(;208===t.parent.kind;)t=t.parent;return e.isCallOrNewExpression(t.parent)&&t.parent.expression===t}function wh(t,r){for(var n=e.getContainingClass(r);n;n=e.getContainingClass(n)){var i=n.symbol,a=e.getSymbolNameForPrivateIdentifier(i,t),o=i.members&&i.members.get(a)||i.exports&&i.exports.get(a);if(o)return o}}function Dh(e,t){return gc(e,t.escapedName)}function Eh(t,r){return(qa(r)||e.isThisProperty(t)&&Ja(r))&&e.getThisContainer(t,!0)===Va(r)}function Th(r,n,i,a){var o,s,c,u,d=Cn(n).resolvedSymbol,p=e.getAssignmentTargetKind(r),f=ac(0!==p||Sh(r)?Hf(i):i);e.isPrivateIdentifier(a)&&jS(r,524288);var m,g,_=Pa(f)||f===Ke;if(e.isPrivateIdentifier(a)){var h=wh(a.escapedText,a);if(_){if(h)return f;if(!e.getContainingClass(a))return fw(a,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),Se}if(!(m=h?Dh(i,h):void 0)&&function(t,r,n){var i,a=Hs(t);a&&e.forEach(a,(function(t){var n=t.valueDeclaration;if(n&&e.isNamedDeclaration(n)&&e.isPrivateIdentifier(n.name)&&n.name.escapedText===r.escapedText)return i=t,!0}));var o=Ln(r);if(i){var s=i.valueDeclaration,c=e.getContainingClass(s);if(e.Debug.assert(!!c),n){var u=n.valueDeclaration,d=e.getContainingClass(u);if(e.Debug.assert(!!d),e.findAncestor(d,(function(e){return c===e}))){var p=pn(r,e.Diagnostics.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,o,da(t));return e.addRelatedInfo(p,e.createDiagnosticForNode(u,e.Diagnostics.The_shadowing_declaration_of_0_is_defined_here,o),e.createDiagnosticForNode(s,e.Diagnostics.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,o)),!0}}return pn(r,e.Diagnostics.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,o,Ln(c.name||l)),!0}return!1}(i,a,h))return Ee}else{if(_)return e.isIdentifier(n)&&d&&Jg(d,r),f;if(!(m=gc(f,a.escapedText))){var y=e.getEtsComponentExpressionInnerCallExpressionNode(r)||e.getRootEtsComponentInnerCallExpressionNode(r),v=e.getSourceFileOfNode(r).locals;if(y&&(null==v?void 0:v.has(a.escapedText))){var b=null==v?void 0:v.get(a.escapedText),k=78===y.expression.kind?y.expression.escapedText:void 0;e.getEtsExtendDecoratorComponentNames(null===(o=null==b?void 0:b.valueDeclaration)||void 0===o?void 0:o.decorators,J).find((function(e){return e===k}))&&(m=b),e.hasEtsStylesDecoratorNames(null===(s=null==b?void 0:b.valueDeclaration)||void 0===s?void 0:s.decorators,J)&&(m=b)}var x=null===(c=e.getContainingStruct(r))||void 0===c?void 0:c.symbol.members;if(y&&(null==x?void 0:x.has(a.escapedText))){var S=null==x?void 0:x.get(a.escapedText);e.hasEtsStylesDecoratorNames(null===(u=null==S?void 0:S.valueDeclaration)||void 0===u?void 0:u.decorators,J)&&(m=S)}}}if(e.isIdentifier(n)&&d&&(J.isolatedModules||!m||!mS(m)||e.shouldPreserveConstEnums(J)&&qg(r))&&Jg(d,r),m){if(134217728&lh(m)&&Nu(r,m)&&hn(a,m.declarations,a.escapedText),function(r,n,i){var a,o,s=r.valueDeclaration;if(!s||e.getSourceFileOfNode(n).isDeclarationFile)return;var c=e.idText(i);if(!function(t){return!!e.findAncestor(t,(function(t){switch(t.kind){case 164:return!0;case 291:case 166:case 168:case 169:case 293:case 159:case 230:case 286:case 283:case 284:case 285:case 278:case 225:case 289:return!1;default:return!e.isExpressionNode(t)&&"quit"}}))}(n)||e.isAccessExpression(n)&&e.isAccessExpression(n.expression)||Pn(s,i)||function(e){if(!(32&e.parent.flags))return!1;var t=_o(e.parent);for(;;){if(!(t=t.symbol&&Ah(t)))return!1;var r=gc(t,e.escapedName);if(r&&r.valueDeclaration)return!0}}(r))254!==s.kind||174===n.parent.kind||8388608&s.flags||Pn(s,i)||(o=pn(i,e.Diagnostics.Class_0_used_before_its_declaration,c));else{var l=!1;(null==r?void 0:r.valueDeclaration.decorators)&&(l=null===(a=t.getCompilerOptions().ets)||void 0===a?void 0:a.propertyDecorators.some((function(t){var n;return null===(n=null==r?void 0:r.valueDeclaration.decorators)||void 0===n?void 0:n.some((function(r){return!(!e.isIdentifier(r.expression)||t.name!==r.expression.escapedText.toString()||t.needInitialization)}))}))),l||(o=pn(i,e.Diagnostics.Property_0_is_used_before_its_initialization,c))}o&&e.addRelatedInfo(o,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_here,c))}(m,r,a),Lh(m,r,108===n.kind),Cn(r).resolvedSymbol=m,dh(r,106===n.kind,f,m),Pv(r,m,p))return pn(a,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,e.idText(a)),Ee;g=Eh(r,m)?we:Ug(_o(m),r)}else{var w=e.isPrivateIdentifier(a)||0!==p&&Ru(i)&&!Lu(i)?void 0:bc(f,0);if(!w||!w.type)return Cu(i)?Se:i.symbol===ae?(ae.exports.has(a.escapedText)&&418&ae.exports.get(a.escapedText).flags?pn(a,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.unescapeLeadingUnderscores(a.escapedText),da(i)):X&&pn(a,e.Diagnostics.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature,da(i)),Se):(a.escapedText&&!Bn(r)&&function(t,r){var n,i;if(!e.isPrivateIdentifier(t)&&1048576&r.flags&&!(131068&r.flags))for(var a=0,o=r.types;a<o.length;a++){var s=o[a];if(!gc(s,t.escapedText)&&!bc(s,0)){n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.declarationNameToString(t),da(s));break}}if(Nh(t.escapedText,r)){var c=e.declarationNameToString(t),l=da(r);n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,c,l,l+"."+c)}else{var u=Bb(r);if(u&&gc(u,t.escapedText))n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.declarationNameToString(t),da(r)),i=e.createDiagnosticForNode(t,e.Diagnostics.Did_you_forget_to_use_await);else{var d=e.declarationNameToString(t),p=da(r),f=function(t,r){var n=ac(r).symbol;if(!n)return;for(var i=e.getScriptTargetFeatures(),a=e.getOwnKeys(i),o=0,s=a;o<s.length;o++){var c=s[o],l=i[c][e.symbolName(n)];if(void 0!==l&&e.contains(l,t))return c}}(d,r);if(void 0!==f)n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later,d,p,f);else{var m=Ph(t,r);if(void 0!==m){var g=e.symbolName(m);n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,d,p,g),i=m.valueDeclaration&&e.createDiagnosticForNode(m.valueDeclaration,e.Diagnostics._0_is_declared_here,g)}else n=e.chainDiagnosticMessages(mc(n,r),e.Diagnostics.Property_0_does_not_exist_on_type_1,d,p)}}}var _=e.createDiagnosticForNodeFromMessageChain(t,n);i&&e.addRelatedInfo(_,i);Qr.add(_)}(a,Lu(i)?f:i),Ee);w.isReadonly&&(e.isAssignmentTarget(r)||e.isDeleteTarget(r))&&pn(r,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,da(f)),g=J.noUncheckedIndexedAccess&&!e.isAssignmentTarget(r)?ou([w.type,Ne]):w.type,J.noPropertyAccessFromIndexSignature&&e.isPropertyAccessExpression(r)&&pn(a,e.Diagnostics.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0,e.unescapeLeadingUnderscores(a.escapedText))}return Ch(r,m,g,a)}function Ch(t,r,n,i){var a=e.getAssignmentTargetKind(t);if(1===a||r&&!(98311&r.flags)&&!(8192&r.flags&&1048576&n.flags))return n;if(n===we)return Ka(t,r);var o=!1;if(W&&Y&&e.isAccessExpression(t)&&108===t.expression.kind){var s=r&&r.valueDeclaration;if(s&&_x(s)){var c=Rg(t);167!==c.kind||c.parent!==s.parent||8388608&s.flags||(o=!0)}}else W&&r&&r.valueDeclaration&&e.isPropertyAccessExpression(r.valueDeclaration)&&e.getAssignmentDeclarationPropertyAccessKind(r.valueDeclaration)&&Rg(t)===Rg(r.valueDeclaration)&&(o=!0);var l=Og(t,n,o?Nf(n):n);return o&&!(32768&Ef(n))&&32768&Ef(l)?(pn(i,e.Diagnostics.Property_0_is_used_before_being_assigned,la(r)),n):a?mf(l):l}function Ah(e){var t=Po(e);if(0!==t.length)return fu(t)}function Nh(t,r){var n=r.symbol&&gc(_o(r.symbol),t);return void 0!==n&&n.valueDeclaration&&e.hasSyntacticModifier(n.valueDeclaration,32)}function Ph(t,r){return Mh(e.isString(t)?t:e.idText(t),Hs(r),111551)}function Ih(t,r){var n=e.isString(t)?t:e.idText(t),i=Hs(r),a="for"===n?e.find(i,(function(t){return"htmlFor"===e.symbolName(t)})):"class"===n?e.find(i,(function(t){return"className"===e.symbolName(t)})):void 0;return null!=a?a:Mh(n,i,111551)}function Fh(t,r){var n=Ph(t,r);return n&&e.symbolName(n)}function Oh(t,r,n){e.Debug.assert(void 0!==r,"outername should always be defined");var i=On(t,r,n,void 0,r,!1,!1,(function(t,n,i,a){return e.Debug.assertEqual(r,n,"name should equal outerName"),Nn(t,n,i,a)||Mh(e.unescapeLeadingUnderscores(n),e.arrayFrom(t.values()),i)}));return i}function Rh(t,r){return r.exports&&Mh(e.idText(t),xi(r),2623475)}function Mh(t,r,n){return e.getSpellingSuggestion(t,r,(function(t){var r=e.symbolName(t);if(e.startsWith(r,'"'))return;if(t.flags&n)return r;if(2097152&t.flags){var i=function(e){if(Tn(e).target!==xe)return ai(e)}(t);if(i&&i.flags&n)return r}return}))}function Lh(t,r,n){var i=t&&106500&t.flags&&t.valueDeclaration;if(i){var a=e.hasEffectiveModifier(i,8),o=e.isNamedDeclaration(t.valueDeclaration)&&e.isPrivateIdentifier(t.valueDeclaration.name);if((a||o)&&(!r||!e.isWriteOnlyAccess(r)||65536&t.flags)){if(n){var s=e.findAncestor(r,e.isFunctionLikeDeclaration);if(s&&s.symbol===t)return}(1&e.getCheckFlags(t)?Tn(t).target:t).isReferenced=67108863}}}function jh(t,r,n,i){if(i===Ee||Pa(i))return!0;var a=gc(i,n);if(a){if(e.isPropertyAccessExpression(t)&&a.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(a.valueDeclaration)){var o=e.getContainingClass(a.valueDeclaration);return!e.isOptionalChain(t)&&!!e.findAncestor(t,(function(e){return e===o}))}return dh(t,r,i,a)}return e.isInJSFile(t)&&!!(1048576&i.flags)&&i.types.some((function(e){return jh(t,r,n,e)}))}function Bh(t){var r=t.initializer;if(252===r.kind){var n=r.declarations[0];if(n&&!e.isBindingPattern(n.name))return Ai(n)}else if(78===r.kind)return Am(r)}function zh(e){return 32&e.flags?function(e){var t=fb(e.expression),r=Mf(t,e.expression);return Rf(Uh(e,vh(r,e.expression)),e,r!==t)}(e):Uh(e,fh(e.expression))}function Uh(t,r){var n=0!==e.getAssignmentTargetKind(t)||Sh(t)?Hf(r):r,i=t.argumentExpression,a=fb(i);if(n===Ee||n===Ke)return n;if(jv(n)&&!e.isStringLiteralLike(i))return pn(i,e.Diagnostics.A_const_enum_member_can_only_be_accessed_using_a_string_literal),Ee;var o=function(t){var r,n=e.skipParentheses(t);if(78===n.kind){var i=Am(n);if(3&i.flags)for(var a=t,o=t.parent;o;){if(240===o.kind&&a===o.statement&&Bh(o)===i&&kc(r=ub(o.expression),1)&&!kc(r,0))return!0;a=o,o=o.parent}}return!1}(i)?Me:a,s=Vu(n,o,void 0,t,16|(e.isAssignmentTarget(t)?2|(Ru(n)&&!Lu(n)?1:0):0))||Ee;return Ib(Ch(t,s.symbol,s,i),t)}function qh(t,r,n){if(r===Ee)return!1;if(!e.isWellKnownSymbolSyntactically(t))return!1;if(!(12288&r.flags))return n&&pn(t,e.Diagnostics.A_computed_property_name_of_the_form_0_must_be_of_type_symbol,e.getTextOfNode(t)),!1;var i=t.expression,a=Am(i);if(!a)return!1;var o=Nl(!0);return!!o&&(a===o||(n&&pn(i,e.Diagnostics.Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object),!1))}function Jh(t){return e.isCallOrNewExpression(t)||e.isTaggedTemplateExpression(t)||e.isJsxOpeningLikeElement(t)}function Vh(t){return Jh(t)&&e.forEach(t.typeArguments,Rx),206===t.kind?fb(t.template):e.isJsxOpeningLikeElement(t)?fb(t.attributes):162!==t.kind&&e.forEach(t.arguments,(function(e){fb(e)})),lr}function Hh(e){return Vh(e),ur}function Kh(e){return!!e&&(222===e.kind||229===e.kind&&e.isSpread)}function Wh(t){return e.findIndex(t,Kh)}function Gh(e){return!!(16384&e.flags)}function $h(e){return!!(49155&e.flags)}function Yh(t,r,n,i){var a;void 0===i&&(i=!1);var o=!1,s=ov(n),c=sv(n);if(206===t.kind)if(a=r.length,220===t.template.kind){var l=e.last(t.template.templateSpans);o=e.nodeIsMissing(l.literal)||!!l.literal.isUnterminated}else{var u=t.template;e.Debug.assert(14===u.kind),o=!!u.isUnterminated}else if(162===t.kind)a=py(t,n);else if(e.isJsxOpeningLikeElement(t)){if(o=t.attributes.end===t.end)return!0;a=0===c?r.length:1,s=0===r.length?s:1,c=Math.min(c,1)}else{if(!t.arguments)return e.Debug.assert(205===t.kind),0===sv(n);a=i?r.length+1:r.length,o=t.arguments.end===t.end;var d=Wh(r);if(d>=0)return d>=sv(n)&&(cv(n)||d<ov(n))}if(!cv(n)&&a>s)return!1;if(o||a>=c)return!0;for(var p=a;p<c;p++){if(131072&ug(nv(n,p),e.isInJSFile(t)&&!W?$h:Gh).flags)return!1}return!0}function Xh(t,r,n){var i=n?1:e.length(t.typeParameters),a=n?1:Nc(t.typeParameters);return!e.some(r)||r.length>=a&&r.length<=i}function Qh(e){return ey(e,0,!1)}function Zh(e){return ey(e,0,!1)||ey(e,1,!1)}function ey(e,t,r){if(524288&e.flags){var n=Us(e);if(r||0===n.properties.length&&!n.stringIndexInfo&&!n.numberIndexInfo){if(0===t&&1===n.callSignatures.length&&0===n.constructSignatures.length)return n.callSignatures[0];if(1===t&&1===n.constructSignatures.length&&0===n.callSignatures.length)return n.constructSignatures[0]}}}function ty(t,r,n,i){var a=Qf(t.typeParameters,t,0,i),o=lv(r),s=n&&(o&&262144&o.flags?n.nonFixingMapper:n.mapper);return Yf(s?jd(r,s):r,t,(function(e,t){ym(a.inferences,e,t)})),n||Xf(r,t,(function(e,t){ym(a.inferences,e,t,64)})),Jc(t,Tm(a),e.isInJSFile(r.declaration))}function ry(t){if(!t)return Ve;var r=fb(t);return e.isOptionalChainRoot(t.parent)?Pf(r):e.isOptionalChain(t.parent)?Of(r):r}function ny(t,r,n,i,a){if(e.isJsxOpeningLikeElement(t))return function(e,t,r,n){var i=w_(t,e),a=Gv(e.attributes,i,n,r);return ym(n.inferences,a,i),Tm(n)}(t,r,i,a);if(162!==t.kind){var o=x_(t,e.every(r.typeParameters,(function(e){return!!nc(e)}))?8:0);if(o){var s=S_(t),c=im(function(t,r){return void 0===r&&(r=0),t&&Zf(e.map(t.inferences,nm),t.signature,t.flags|r,t.compareTypes)}(s,1)),l=Wd(o,c),u=Qh(l),d=u&&u.typeParameters?$c(Vc(u,u.typeParameters)):l,p=Bc(r);ym(a.inferences,d,p,64);var f=Qf(r.typeParameters,r,a.flags),m=Wd(o,s&&s.returnMapper);ym(f.inferences,m,p),a.returnMapper=e.some(f.inferences,ab)?im(function(t){var r=e.filter(t.inferences,ab);return r.length?Zf(e.map(r,nm),t.signature,t.flags,t.compareTypes):void 0}(f)):void 0}}var g=uv(r),_=g?Math.min(ov(r)-1,n.length):n.length;if(g&&262144&g.flags){var h=e.find(a.inferences,(function(e){return e.typeParameter===g}));h&&(h.impliedArity=e.findIndex(n,Kh,_)<0?n.length-_:void 0)}var y=Lc(r);if(y){var v=ly(t);ym(a.inferences,ry(v),y)}for(var b=0;b<_;b++){var k=n[b];if(224!==k.kind){var x=nv(r,b),S=Gv(k,x,a,i);ym(a.inferences,S,x)}}if(g){var w=ay(n,_,n.length,g,a,i);ym(a.inferences,w,g)}return Tm(a)}function iy(e){return 1048576&e.flags?pg(e,iy):1&e.flags||af(Qs(e)||e)?e:vf(e)?Hl(ll(e),e.target.elementFlags,!1,e.target.labeledElementDeclarations):Hl([e],[8])}function ay(t,r,n,i,a,o){if(r>=n-1&&Kh(d=t[n-1]))return iy(229===d.kind?d.type:Gv(d.expression,i,a,o));for(var s=[],c=[],l=[],u=r;u<n;u++){var d;if(Kh(d=t[u])){var p=229===d.kind?d.type:fb(d.expression);sf(p)?(s.push(p),c.push(8)):(s.push(Ik(33,p,Ne,222===d.kind?d.expression:d)),c.push(4))}else{var f=qu(i,hd(u-r)),m=Gv(d,f,a,o),g=Rv(f,406978556);s.push(g?gd(m):gf(m)),c.push(1)}229===d.kind&&d.tupleNameSource&&l.push(d.tupleNameSource)}return Hl(s,c,!1,e.length(l)===e.length(s)?l:void 0)}function oy(t,r,n,i){for(var a,o=e.isInJSFile(t.declaration),s=t.typeParameters,c=Pc(e.map(r,xd),s,Nc(s),o),l=0;l<r.length;l++){e.Debug.assert(void 0!==s[l],"Should not call checkTypeArguments with too many type arguments");var u=Ws(s[l]);if(u){var d=n&&i?function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1)}:void 0,p=i||e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1;a||(a=Td(s,c));var f=c[l];if(!pp(f,ls(Wd(u,a),f),n?r[l]:void 0,p,d))return}}return c}function sy(t){if(q_(t.tagName))return 2;var r=ac(fb(t.tagName));return e.length(hc(r,1))?0:e.length(hc(r,0))?1:2}function cy(t,r,n,i,a,o,s){var c={errors:void 0,skipLogging:!0};if(e.isJsxOpeningLikeElement(t))return function(t,r,n,i,a,o,s){var c=w_(r,t),l=Gv(t.attributes,c,void 0,i);return function(){var r;if($_(t))return!0;var n=e.isJsxOpeningElement(t)||e.isJsxSelfClosingElement(t)&&!q_(t.tagName)?fb(t.tagName):void 0;if(!n)return!0;var i=hc(n,0);if(!e.length(i))return!0;var o=RS(t);if(!o)return!0;var c=fi(o,111551,!0,!1,t);if(!c)return!0;var l=hc(_o(c),0);if(!e.length(l))return!0;for(var u=!1,d=0,p=0,f=l;p<f.length;p++){var m=hc(nv(f[p],0),0);if(e.length(m))for(var g=0,_=m;g<_.length;g++){var h=_[g];if(u=!0,cv(h))return!0;var y=ov(h);y>d&&(d=y)}}if(!u)return!0;for(var v=1/0,b=0,k=i;b<k.length;b++){var x=sv(k[b]);x<v&&(v=x)}if(v<=d)return!0;if(a){var S=e.createDiagnosticForNode(t.tagName,e.Diagnostics.Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3,e.entityNameToString(t.tagName),v,e.entityNameToString(o),d),w=null===(r=Yx(t.tagName))||void 0===r?void 0:r.valueDeclaration;w&&e.addRelatedInfo(S,e.createDiagnosticForNode(w,e.Diagnostics._0_is_declared_here,e.entityNameToString(t.tagName))),s&&s.skipLogging&&(s.errors||(s.errors=[])).push(S),s.skipLogging||Qr.add(S)}return!1}()&&mp(l,c,n,a?t.tagName:void 0,t.attributes,void 0,o,s)}(t,n,i,a,o,s,c)?void 0:(e.Debug.assert(!o||!!c.errors,"jsx should have errors when reporting errors"),c.errors||e.emptyArray);var l=Lc(n);if(l&&l!==Ve&&205!==t.kind){var u=ly(t),d=ry(u),p=o?u||t:void 0,f=e.Diagnostics.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1;if(!Op(d,l,i,p,f,s,c))return e.Debug.assert(!o||!!c.errors,"this parameter should have errors when reporting errors"),c.errors||e.emptyArray}for(var m=e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1,g=uv(n),_=g?Math.min(ov(n)-1,r.length):r.length,h=0;h<_;h++){var y=r[h];if(224!==y.kind){var v=nv(n,h),b=Gv(y,v,void 0,a),k=4&a?Bf(b):b;if(!mp(k,v,i,o?y:void 0,y,m,s,c))return e.Debug.assert(!o||!!c.errors,"parameter should have errors when reporting errors"),w(y,k,v),c.errors||e.emptyArray}}if(g){var x=ay(r,_,r.length,g,void 0,a),S=r.length-_;p=o?0===S?t:1===S?r[_]:e.setTextRangePosEnd(uy(t,x),r[_].pos,r[r.length-1].end):void 0;if(!Op(x,g,i,p,m,void 0,c))return e.Debug.assert(!o||!!c.errors,"rest parameter should have errors when reporting errors"),w(p,x,g),c.errors||e.emptyArray}return;function w(t,r,n){if(t&&o&&c.errors&&c.errors.length){if(jb(n))return;var a=jb(r);a&&Pp(a,n,i)&&e.addRelatedInfo(c.errors[0],e.createDiagnosticForNode(t,e.Diagnostics.Did_you_forget_to_use_await))}}}function ly(t){if(204===t.kind){var r=e.skipOuterExpressions(t.expression);if(e.isAccessExpression(r))return r.expression}}function uy(t,r,n,i){var a=e.parseNodeFactory.createSyntheticExpression(r,n,i);return e.setTextRange(a,t),e.setParent(a,t),a}function dy(t){if(206===t.kind){var r=t.template,n=[uy(r,Yt||(Yt=Al("TemplateStringsArray",0,!0))||nt)];return 220===r.kind&&e.forEach(r.templateSpans,(function(e){n.push(e.expression)})),n}if(162===t.kind)return function(t){var r=t.parent,n=t.expression;switch(r.kind){case 254:case 223:case 255:return[uy(n,_o(Ai(r)))];case 161:var i=r.parent;return[uy(n,167===r.parent.kind?_o(Ai(i)):Ee),uy(n,Se),uy(n,Me)];case 164:case 166:case 168:case 169:var a=164!==r.kind&&0!==V;return[uy(n,eS(r)),uy(n,tS(r)),uy(n,a?Ll(Xx(r)):Se)];case 253:if(e.isEtsFunctionDecorators(e.getNameOfDecorator(t),J)){var o=Ai(n);return o?[uy(n,_o(o))]:[]}return e.Debug.fail()}return e.Debug.fail()}(t);if(e.isJsxOpeningLikeElement(t))return t.attributes.properties.length>0||e.isJsxOpeningElement(t)&&t.parent.children.length>0?[t.attributes]:e.emptyArray;var i=t.arguments||e.emptyArray,a=Wh(i);if(a>=0){for(var o=i.slice(0,a),s=function(t){var r=i[t],n=222===r.kind&&(Dr?fb(r.expression):$v(r.expression));n&&vf(n)?e.forEach(ll(n),(function(e,t){var i,a=n.target.elementFlags[t],s=uy(r,4&a?jl(e):e,!!(12&a),null===(i=n.target.labeledElementDeclarations)||void 0===i?void 0:i[t]);o.push(s)})):o.push(r)},c=a;c<i.length;c++)s(c);return o}return i}function py(t,r){switch(t.parent.kind){case 254:case 223:case 255:return 1;case 164:return 2;case 166:case 168:case 169:return 0===V||r.parameters.length<=2?2:3;case 161:return 3;case 253:return e.isEtsFunctionDecorators(e.getNameOfDecorator(t),J)?e.isCallExpression(t.expression)?1:0:e.Debug.fail();default:return e.Debug.fail()}}function fy(t,r){var n,i,a=e.getSourceFileOfNode(t);if(e.isPropertyAccessExpression(t.expression)){var o=e.getErrorSpanForNode(a,t.expression.name);n=o.start,i=r?o.length:t.end-n}else{var s=e.getErrorSpanForNode(a,t.expression);n=s.start,i=r?s.length:t.end-n}return{start:n,length:i,sourceFile:a}}function my(t,r,n,i,a,o){if(e.isCallExpression(t)){var s=fy(t),c=s.sourceFile,l=s.start,u=s.length;return e.createFileDiagnostic(c,l,u,r,n,i,a,o)}return e.createDiagnosticForNode(t,r,n,i,a,o)}function gy(t,r,n){for(var i,a=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,s=Number.NEGATIVE_INFINITY,c=Number.POSITIVE_INFINITY,l=n.length,u=0,d=r;u<d.length;u++){var p=d[u],f=sv(p),m=ov(p);f<l&&f>s&&(s=f),l<m&&m<c&&(c=m),f<a&&(a=f,i=p),o=Math.max(o,m)}var g,_,h=e.some(r,cv),y=h?a:a<o?a+"-"+o:a,v=Wh(n)>-1;l<=o&&v&&l--;var b=h||v?h&&v?e.Diagnostics.Expected_at_least_0_arguments_but_got_1_or_more:h?e.Diagnostics.Expected_at_least_0_arguments_but_got_1:e.Diagnostics.Expected_0_arguments_but_got_1_or_more:1===y&&0===l&&function(t){if(!e.isCallExpression(t)||!e.isIdentifier(t.expression))return!1;var r=Fn(t.expression,t.expression.escapedText,111551,void 0,void 0,!1),n=null==r?void 0:r.valueDeclaration;if(!(n&&e.isParameter(n)&&T_(n.parent)&&e.isNewExpression(n.parent.parent)&&e.isIdentifier(n.parent.parent.expression)))return!1;var i=Fl(!1);return!!i&&Yx(n.parent.parent.expression,!0)===i}(t)?e.Diagnostics.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:e.Diagnostics.Expected_0_arguments_but_got_1;if(i&&sv(i)>l&&i.declaration){var k=i.declaration.parameters[i.thisParameter?l+1:l];k&&(_=e.createDiagnosticForNode(k,e.isBindingPattern(k.name)?e.Diagnostics.An_argument_matching_this_binding_pattern_was_not_provided:e.isRestParameter(k)?e.Diagnostics.Arguments_for_the_rest_parameter_0_were_not_provided:e.Diagnostics.An_argument_for_0_was_not_provided,k.name?e.isBindingPattern(k.name)?void 0:e.idText(e.getFirstIdentifier(k.name)):l))}if(a<l&&l<o)return my(t,e.Diagnostics.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments,l,s,c);if(!v&&l<a){var x=my(t,b,y,l);return _?e.addRelatedInfo(x,_):x}if(h||v){if(g=e.factory.createNodeArray(n),v&&l){var S=e.elementAt(n,Wh(n)+1)||void 0;g=e.factory.createNodeArray(n.slice(o>l&&S?n.indexOf(S):Math.min(o,n.length-1)))}}else g=e.factory.createNodeArray(n.slice(o));var w=e.first(g).pos,D=e.last(g).end;D===w&&D++,e.setTextRangePosEnd(g,w,D);var E=e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),g,b,y,l);return _?e.addRelatedInfo(E,_):E}function _y(t,n,a,o,s,c){var l,u,d=206===t.kind,p=162===t.kind,f=e.isJsxOpeningLikeElement(t),m=211===t.kind,g=!a&&r;p||(l=t.typeArguments,u=null==l?void 0:l.some((function(e){return e.virtual})),(d||f||106!==t.expression.kind)&&e.forEach(l,Rx),m&&32!==o&&Rx(t.body));var _=a||[];if(function(t,r,n){var i,a,o,s,c=0,l=-1;e.Debug.assert(!r.length);for(var u=0,d=t;u<d.length;u++){var p=d[u],f=p.declaration&&Ai(p.declaration),m=p.declaration&&p.declaration.parent;a&&f!==a?(o=c=r.length,i=m):i&&m===i?o+=1:(i=m,o=c),a=f,q(p)?(s=++l,c++):s=o,r.splice(s,0,n?ms(p,n):p)}}(n,_,s),!_.length)return g&&Qr.add(my(t,e.Diagnostics.Call_target_does_not_contain_any_signatures)),Hh(t);var h,y,v,b,k=dy(t),x=1===_.length&&!_[0].typeParameters,S=p||x||!e.some(k,Qd)?0:4,w=!!(16&o)&&204===t.kind&&t.arguments.hasTrailingComma;if(_.length>1&&(b=G(_,rn,x,w)),b||(b=G(_,an,x,w)),b)return b;if(g)if(h)if(1===h.length||h.length>3){var D,E=h[h.length-1];h.length>3&&(D=e.chainDiagnosticMessages(D,e.Diagnostics.The_last_overload_gave_the_following_error),D=e.chainDiagnosticMessages(D,e.Diagnostics.No_overload_matches_this_call));var T=cy(t,k,E,an,0,!0,(function(){return D}));if(T)for(var C=0,A=T;C<A.length;C++){var N=A[C];E.declaration&&h.length>3&&e.addRelatedInfo(N,e.createDiagnosticForNode(E.declaration,e.Diagnostics.The_last_overload_is_declared_here)),W(E,N),Qr.add(N)}else e.Debug.fail("No error for last overload signature")}else{for(var P=[],I=0,F=Number.MAX_VALUE,O=0,R=0,M=function(r){var n=cy(t,k,r,an,0,!0,(function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.Overload_0_of_1_2_gave_the_following_error,R+1,_.length,ua(r))}));n?(n.length<=F&&(F=n.length,O=R),I=Math.max(I,n.length),P.push(n)):e.Debug.fail("No error for 3 or fewer overload signatures"),R++},L=0,j=h;L<j.length;L++){M(j[L])}var B=I>1?P[O]:e.flatten(P);e.Debug.assert(B.length>0,"No errors reported for 3 or fewer overload signatures");var z=e.chainDiagnosticMessages(e.map(B,(function(e){return"string"==typeof e.messageText?e:e.messageText})),e.Diagnostics.No_overload_matches_this_call),J=i([],e.flatMap(B,(function(e){return e.relatedInformation}))),V=void 0;if(e.every(B,(function(e){return e.start===B[0].start&&e.length===B[0].length&&e.file===B[0].file}))){var H=B[0];V={file:H.file,start:H.start,length:H.length,code:z.code,category:z.category,messageText:z,relatedInformation:J}}else V=e.createDiagnosticForNodeFromMessageChain(t,z,J);W(h[0],V),Qr.add(V)}else if(y)Qr.add(gy(t,[y],k));else if(v)oy(v,t.typeArguments,!0,c);else{var K=e.filter(n,(function(e){return Xh(e,l,u)}));0===K.length?Qr.add(function(t,r,n){var i=n.length;if(1===r.length){var a=Nc((d=r[0]).typeParameters),o=e.length(d.typeParameters);return e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),n,e.Diagnostics.Expected_0_type_arguments_but_got_1,a<o?a+"-"+o:a,i)}for(var s=-1/0,c=1/0,l=0,u=r;l<u.length;l++){var d,p=Nc((d=u[l]).typeParameters);o=e.length(d.typeParameters),p>i?c=Math.min(c,p):o<i&&(s=Math.max(s,o))}return s!==-1/0&&c!==1/0?e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),n,e.Diagnostics.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments,i,s,c):e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),n,e.Diagnostics.Expected_0_type_arguments_but_got_1,s===-1/0?c:s,i)}(t,n,l)):p?c&&Qr.add(my(t,c)):Qr.add(gy(t,K,k))}return function(t,r,n,i){return e.Debug.assert(r.length>0),Lx(t),i||1===r.length||r.some((function(e){return!!e.typeParameters}))?function(t,r,n){var i=function(e,t){for(var r=-1,n=-1,i=0;i<e.length;i++){var a=e[i],o=ov(a);if(cv(a)||o>=t)return i;o>n&&(n=o,r=i)}return r}(r,void 0===oe?n.length:oe),a=r[i],o=a.typeParameters;if(!o)return a;var s=Jh(t)?t.typeArguments:void 0,c=s?Hc(a,function(e,t,r){var n=e.map(Xx);for(;n.length>t.length;)n.pop();for(;n.length<t.length;)n.push(Ws(t[n.length])||Em(r));return n}(s,o,e.isInJSFile(t))):function(t,r,n,i){var a=Qf(r,n,e.isInJSFile(t)?2:0),o=ny(t,n,i,12,a);return Hc(n,o)}(t,o,a,n);return r[i]=c,c}(t,r,n):function(t){var r,n=e.mapDefined(t,(function(e){return e.thisParameter}));n.length&&(r=yy(n,n.map(Qy)));for(var i=e.minAndMax(t,hy),a=i.min,o=i.max,s=[],c=function(r){var n=e.mapDefined(t,(function(t){return U(t)?r<t.parameters.length-1?t.parameters[r]:e.last(t.parameters):r<t.parameters.length?t.parameters[r]:void 0}));e.Debug.assert(0!==n.length),s.push(yy(n,e.mapDefined(t,(function(e){return iv(e,r)}))))},l=0;l<o;l++)c(l);var u=e.mapDefined(t,(function(t){return U(t)?e.last(t.parameters):void 0})),d=0;if(0!==u.length){var p=jl(ou(e.mapDefined(t,qc),2));s.push(vy(u,p)),d|=1}t.some(q)&&(d|=2);return ds(t[0].declaration,void 0,r,s,fu(t.map(Bc)),void 0,a,d)}(r)}(t,_,k,!!a);function W(t,r){var n,i,a=h,o=y,s=v,c=(null===(i=null===(n=t.declaration)||void 0===n?void 0:n.symbol)||void 0===i?void 0:i.declarations)||e.emptyArray,l=c.length>1?e.find(c,(function(t){return e.isFunctionLikeDeclaration(t)&&e.nodeIsPresent(t.body)})):void 0;if(l){var u=Ic(l),d=!u.typeParameters;G([u],an,d)&&e.addRelatedInfo(r,e.createDiagnosticForNode(l,e.Diagnostics.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}h=a,y=o,v=s}function G(r,n,i,a){if(void 0===a&&(a=!1),h=void 0,y=void 0,v=void 0,i){var o=r[0];if(e.some(l)&&!u||!Yh(t,k,o,a))return;return cy(t,k,o,n,0,!1,void 0)?void(h=[o]):o}for(var s=0;s<r.length;s++){if(Xh(o=r[s],l,u)&&Yh(t,k,o,a)){var c=void 0,d=void 0;if(o.typeParameters){var p=void 0;if(e.some(l)){if(!(p=oy(o,l,!1))){v=o;continue}}else d=Qf(o.typeParameters,o,e.isInJSFile(t)?2:0),p=ny(t,o,k,8|S,d),S|=4&d.flags?8:0;if(c=Jc(o,p,e.isInJSFile(o.declaration),d&&d.inferredTypeParameters),uv(o)&&!Yh(t,k,c,a)){y=c;continue}}else c=o;if(!cy(t,k,c,n,S,!1,void 0)){if(S){if(S=0,d)if(c=Jc(o,p=ny(t,o,k,S,d),e.isInJSFile(o.declaration),d&&d.inferredTypeParameters),uv(o)&&!Yh(t,k,c,a)){y=c;continue}if(cy(t,k,c,n,S,!1,void 0)){(h||(h=[])).push(c);continue}}return r[s]=c,c}(h||(h=[])).push(c)}}}}function hy(e){var t=e.parameters.length;return U(e)?t-1:t}function yy(e,t){return vy(e,ou(t,2))}function vy(t,r){return jf(e.first(t),r)}function by(e){return!(!e.typeParameters||!DS(Bc(e)))}function ky(e,t,r,n){return Pa(e)||Pa(t)&&!!(262144&e.flags)||!r&&!n&&!(1179648&t.flags)&&cp(e,vt)}function xy(t,r,n){if(t.arguments&&V<1){var i=Wh(t.arguments);i>=0&&pn(t.arguments[i],e.Diagnostics.Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher)}var a=fh(t.expression);if(a===Ke)return pr;if((a=ac(a))===Ee)return Hh(t);if(Pa(a))return t.typeArguments&&pn(t,e.Diagnostics.Untyped_function_calls_may_not_accept_type_arguments),Vh(t);var o=hc(a,1);if(o.length){if(!function(t,r){if(!r||!r.declaration)return!0;var n=r.declaration,i=e.getSelectedEffectiveModifierFlags(n,24);if(!i||167!==n.kind)return!0;var a=e.getClassLikeDeclarationOfSymbol(n.parent.symbol),o=Jo(n.parent.symbol);if(!Wx(t,a)){var s=e.getContainingClass(t);if(s&&16&i){var c=Xx(s);if(Sy(n.parent.symbol,c))return!0}return 8&i&&pn(t,e.Diagnostics.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,da(o)),16&i&&pn(t,e.Diagnostics.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,da(o)),!1}return!0}(t,o[0]))return Hh(t);if(o.some((function(e){return 4&e.flags})))return pn(t,e.Diagnostics.Cannot_create_an_instance_of_an_abstract_class),Hh(t);var s=a.symbol&&e.getClassLikeDeclarationOfSymbol(a.symbol);return s&&e.hasSyntacticModifier(s,128)?(pn(t,e.Diagnostics.Cannot_create_an_instance_of_an_abstract_class),Hh(t)):_y(t,o,r,n,0)}var c=hc(a,0);if(c.length){var l=_y(t,c,r,n,0);return X||(l.declaration&&!Fy(l.declaration)&&Bc(l)!==Ve&&pn(t,e.Diagnostics.Only_a_void_function_can_be_called_with_the_new_keyword),Lc(l)===Ve&&pn(t,e.Diagnostics.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),l}return Dy(t.expression,a,1),Hh(t)}function Sy(t,r){var n=Po(r);if(!e.length(n))return!1;var i=n[0];if(2097152&i.flags){for(var a=Ss(i.types),o=0,s=0,c=i.types;s<c.length;s++){var l=c[s];if(!a[o]&&3&e.getObjectFlags(l)){if(l.symbol===t)return!0;if(Sy(t,l))return!0}o++}return!1}return i.symbol===t||Sy(t,i)}function wy(t,r,n){var i,a=0===n,o=Ub(r),s=o&&hc(o,n).length>0;if(1048576&r.flags){for(var c=!1,l=0,u=r.types;l<u.length;l++){var d=u[l];if(0!==hc(d,n).length){if(c=!0,i)break}else if(i||(i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Type_0_has_no_call_signatures:e.Diagnostics.Type_0_has_no_construct_signatures,da(d)),i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Not_all_constituents_of_type_0_are_callable:e.Diagnostics.Not_all_constituents_of_type_0_are_constructable,da(r))),c)break}c||(i=e.chainDiagnosticMessages(void 0,a?e.Diagnostics.No_constituent_of_type_0_is_callable:e.Diagnostics.No_constituent_of_type_0_is_constructable,da(r))),i||(i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:e.Diagnostics.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,da(r)))}else i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Type_0_has_no_call_signatures:e.Diagnostics.Type_0_has_no_construct_signatures,da(r));var p=a?e.Diagnostics.This_expression_is_not_callable:e.Diagnostics.This_expression_is_not_constructable;if(e.isCallExpression(t.parent)&&0===t.parent.arguments.length){var f=Cn(t).resolvedSymbol;f&&32768&f.flags&&(p=e.Diagnostics.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:e.chainDiagnosticMessages(i,p),relatedMessage:s?e.Diagnostics.Did_you_forget_to_use_await:void 0}}function Dy(t,r,n,i){var a=wy(t,r,n),o=a.messageChain,s=a.relatedMessage,c=e.createDiagnosticForNodeFromMessageChain(t,o);if(s&&e.addRelatedInfo(c,e.createDiagnosticForNode(t,s)),e.isCallExpression(t.parent)){var l=fy(t.parent,!0),u=l.start,d=l.length;c.start=u,c.length=d}Qr.add(c),Ey(r,n,i?e.addRelatedInfo(c,i):c)}function Ey(t,r,n){if(t.symbol){var i=Tn(t.symbol).originatingImport;if(i&&!e.isImportCall(i)){var a=hc(_o(Tn(t.symbol).target),r);if(!a||!a.length)return;e.addRelatedInfo(n,e.createDiagnosticForNode(i,e.Diagnostics.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead))}}}function Ty(t){switch(t.parent.kind){case 254:case 223:case 255:return e.Diagnostics.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 161:return e.Diagnostics.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 164:return e.Diagnostics.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 166:case 168:case 169:return e.Diagnostics.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;case 253:var r=e.getNameOfDecorator(t);return e.isEtsFunctionDecorators(r,J)?e.Diagnostics.Unable_to_resolve_signature_of_function_decorator_when_decorators_are_not_valid:e.Debug.fail();default:return e.Debug.fail()}}function Cy(t,r,n){var i=fb(t.expression),a=ac(i);if(a===Ee)return Hh(t);var o,s,c=hc(a,0),l=hc(a,1).length;if(ky(i,a,c.length,l))return Vh(t);if(o=t,(s=c).length&&e.every(s,(function(e){return 0===e.minArgumentCount&&!U(e)&&e.parameters.length<py(o,e)}))){var u=e.getTextOfNode(t.expression,!1);return pn(t,e.Diagnostics._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,u),Hh(t)}var d=Ty(t);if(!c.length){var p=wy(t.expression,a,0),f=e.chainDiagnosticMessages(p.messageChain,d),m=e.createDiagnosticForNodeFromMessageChain(t.expression,f);return p.relatedMessage&&e.addRelatedInfo(m,e.createDiagnosticForNode(t.expression,p.relatedMessage)),Qr.add(m),Ey(a,0,m),Hh(t)}return _y(t,c,r,n,0,d)}function Ay(t,r){var n=Y_(t),i=n&&wi(n),a=i&&Nn(i,N.Element,788968),o=a&&re.symbolToEntityName(a,788968,t),s=e.factory.createFunctionTypeNode(void 0,[e.factory.createParameterDeclaration(void 0,void 0,void 0,"props",void 0,re.typeToTypeNode(r,t))],o?e.factory.createTypeReferenceNode(o,void 0):e.factory.createKeywordTypeNode(129)),c=yn(1,"props");return c.type=r,ds(s,void 0,void 0,[c],a?Jo(a):Ee,void 0,1,0)}function Ny(t,r,n){if(q_(t.tagName)){var i=th(t),a=Ay(t,i);return fp(Gv(t.attributes,w_(a,t),void 0,0),i,t.tagName,t.attributes),e.length(t.typeArguments)&&(e.forEach(t.typeArguments,Rx),Qr.add(e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),t.typeArguments,e.Diagnostics.Expected_0_type_arguments_but_got_1,0,e.length(t.typeArguments)))),a}var o=fb(t.tagName),s=ac(o);if(s===Ee)return Hh(t);var c=Z_(o,t);return ky(o,s,c.length,0)?Vh(t):0===c.length?(pn(t.tagName,e.Diagnostics.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,e.getTextOfNode(t.tagName)),Hh(t)):_y(t,c,r,n,0)}function Py(t,r,n){switch(t.kind){case 204:case 211:return function(t,r,n){var i,a;if(106===t.expression.kind){var o=Qg(t.expression);if(Pa(o)){for(var s=0,c=t.arguments;s<c.length;s++)fb(c[s]);return lr}if(o!==Ee){var l=e.getEffectiveBaseTypeNode(e.getContainingClass(t));if(l)return _y(t,Co(o,l.typeArguments,l),r,n,0)}return Vh(t)}var u=n;32!==n&&(u=void 0);var d=fb(t.expression,u);if(e.isCallChain(t)){var p=Mf(d,t.expression);a=p===d?0:e.isOutermostOptionalChain(t)?16:8,d=p}else a=0;if((d=yh(d,t.expression,hh))===Ke)return pr;var f=ac(d);if(f===Ee)return Hh(t);var m=hc(f,0),g=hc(f,1),_=g.length;if(ky(d,f,m.length,_))return d!==Ee&&t.typeArguments&&pn(t,e.Diagnostics.Untyped_function_calls_may_not_accept_type_arguments),Vh(t);var h=e.isCalledStructDeclaration(null===(i=f.symbol)||void 0===i?void 0:i.declarations);if(!m.length){if(_){if(h)return _y(t,g,r,n,0);pn(t,e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,da(d))}else{var y=void 0;if(1===t.arguments.length){var v=e.getSourceFileOfNode(t).text;e.isLineBreak(v.charCodeAt(e.skipTrivia(v,t.expression.end,!0)-1))&&(y=e.createDiagnosticForNode(t.expression,e.Diagnostics.Are_you_missing_a_semicolon))}Dy(t.expression,f,0,y)}return Hh(t)}return 8&n&&!t.typeArguments&&m.some(by)?(ib(t,n),dr):m.some((function(t){return e.isInJSFile(t.declaration)&&!!e.getJSDocClassTag(t.declaration)}))?(pn(t,e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,da(d)),Hh(t)):_y(t,m,r,n,a)}(t,r,n);case 205:return xy(t,r,n);case 206:return function(t,r,n){var i=fb(t.tag),a=ac(i);if(a===Ee)return Hh(t);var o=hc(a,0),s=hc(a,1).length;if(ky(i,a,o.length,s))return Vh(t);if(!o.length){if(e.isArrayLiteralExpression(t.parent)){var c=e.createDiagnosticForNode(t.tag,e.Diagnostics.It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked);return Qr.add(c),Hh(t)}return Dy(t.tag,a,0),Hh(t)}return _y(t,o,r,n,0)}(t,r,n);case 162:return Cy(t,r,n);case 278:case 277:return Ny(t,r,n)}throw e.Debug.assertNever(t,"Branch in 'resolveSignature' should be unreachable.")}function Iy(e,t,r){var n=Cn(e),i=n.resolvedSignature;if(i&&i!==dr&&!t)return i;n.resolvedSignature=dr;var a=Py(e,t,r||0);return a!==dr&&(n.resolvedSignature=wr===Dr?a:i),a}function Fy(t){var r;if(!t||!e.isInJSFile(t))return!1;var n=e.isFunctionDeclaration(t)||e.isFunctionExpression(t)?t:e.isVariableDeclaration(t)&&t.initializer&&e.isFunctionExpression(t.initializer)?t.initializer:void 0;if(n){if(e.getJSDocClassTag(t))return!0;var i=Ai(n);return!!(null===(r=null==i?void 0:i.members)||void 0===r?void 0:r.size)}return!1}function Oy(t,r){var n,i;if(r){var a=Tn(r);if(!a.inferredClassSymbol||!a.inferredClassSymbol.has(R(t))){var o=e.isTransientSymbol(t)?t:kn(t);return o.exports=o.exports||e.createSymbolTable(),o.members=o.members||e.createSymbolTable(),o.flags|=32&r.flags,(null===(n=r.exports)||void 0===n?void 0:n.size)&&Dn(o.exports,r.exports),(null===(i=r.members)||void 0===i?void 0:i.size)&&Dn(o.members,r.members),(a.inferredClassSymbol||(a.inferredClassSymbol=new e.Map)).set(R(o),o),o}return a.inferredClassSymbol.get(R(t))}}function Ry(t,r){if(t.parent){var n,i;if(e.isVariableDeclaration(t.parent)&&t.parent.initializer===t){if(!(e.isInJSFile(t)||e.isVarConst(t.parent)&&e.isFunctionLikeDeclaration(t)))return;n=t.parent.name,i=t.parent}else if(e.isBinaryExpression(t.parent)){var a=t.parent,o=t.parent.operatorToken.kind;if(62!==o||!r&&a.right!==t){if(!(56!==o&&60!==o||(e.isVariableDeclaration(a.parent)&&a.parent.initializer===a?(n=a.parent.name,i=a.parent):e.isBinaryExpression(a.parent)&&62===a.parent.operatorToken.kind&&(r||a.parent.right===a)&&(i=n=a.parent.left),n&&e.isBindableStaticNameExpression(n)&&e.isSameEntityName(n,a.left))))return}else i=n=a.left}else r&&e.isFunctionDeclaration(t)&&(n=t.name,i=t);if(i&&n&&(r||e.getExpandoInitializer(t,e.isPrototypeAccess(n))))return Ai(i)}}function My(t,r){var n;KS(t,t.typeArguments)||WS(t.arguments);var i=Iy(t,void 0,r);if(i===dr)return We;if(Uy(i,t),106===t.expression.kind)return Ve;if(205===t.kind){var a=i.declaration;if(a&&167!==a.kind&&171!==a.kind&&176!==a.kind&&!e.isJSDocConstructSignature(a)&&!Fy(a))return X&&pn(t,e.Diagnostics.new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type),Se}if(e.isInJSFile(t)&&Ky(t))return Mc(t.arguments[0]);var o=Bc(i);if(12288&o.flags&&Jy(t))return yd(e.walkUpParenthesizedExpressions(t.parent));if(204===t.kind&&!t.questionDotToken&&235===t.parent.kind&&16384&o.flags&&jc(i))if(e.isDottedName(t.expression)){if(!Cg(t)){var s=pn(t.expression,e.Diagnostics.Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation);Tg(t.expression,s)}}else pn(t.expression,e.Diagnostics.Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name);if(e.isInJSFile(t)){var c=Ry(t,!1);if(null===(n=null==c?void 0:c.exports)||void 0===n?void 0:n.size){var l=Wi(c,c.exports,e.emptyArray,e.emptyArray,void 0,void 0);return l.objectFlags|=16384,fu([o,l])}}return e.isInETSFile(t)&&e.isIdentifier(t.expression)&&!e.isNewExpression(t)&&function(t,r){var n,i=e.getTextOfPropertyName(t).toString();if(!(null===(n=r.ets)||void 0===n?void 0:n.components.some((function(e){return e===i}))))return!1;if(!r.etsLoaderPath)return!1;var a=e.resolvePath(r.etsLoaderPath,"declarations"),o=ii(Yx(t)),s=null==o?void 0:o.declarations;if(!s||1!==s.length)return!1;var c=e.getSourceFileOfNode(s[0]),l=null==c?void 0:c.fileName;return!!(null==l?void 0:l.startsWith(a))}(t.expression,J)&&!e.isInBuildOrPageTransitionContext(t,J)&&pn(t.expression,e.Diagnostics.UI_component_0_cannot_be_used_in_this_place,Ln(t.expression)),o}function Ly(r,n,i,a){var o,s,c,l,u,d=function(e,t){var r="";return e.forEach((function(e){e.name===t&&(r=e.text?e.text:"")})),r}(n,a.tagName);if(!(o=r,s=d,c=a.specifyCheckConditionFuncName,l=Rg(o),zy(o,s,l,u={hasIfChecked:!1},c),u.hasIfChecked)&&t.getExpressionCheckedResultsByFile){if(t.getExpressionCheckedResultsByFile(i.fileName,n).valid)return;var p=e.createDiagnosticForNodeInSourceFile(i,r,e.Diagnostics.The_statement_must_be_written_use_the_function_0_under_the_if_condition,a.specifyCheckConditionFuncName);p.messageText=a.message,Zr.add(p)}}function jy(e,t,r,n){n.forEach((function(n){var i=!1;e.forEach((function(a){a.name===n.tagName&&(i=!0,!n.tagNameShouldExisted&&n.needConditionCheck?Ly(t,e,r,n):n.tagNameShouldExisted||By(r,t,n))})),n.tagNameShouldExisted&&!i&&By(r,t,n)}))}function By(t,r,n){var i=e.createDiagnosticForNodeInSourceFile(t,r,e.Diagnostics.This_API_has_been_Special_Markings_exercise_caution_when_using_this_API);i.messageText=n.message.replace("{0}",""===r.getText()?r.text:r.getText()),i.category=n.type,Qr.add(i),Zr.add(i)}function zy(t,r,n,i,a){if(!i.hasIfChecked&&t.parent!==n){if(e.isIfStatement(t.parent)){if(e.isCallExpression(t.parent.expression)&&function(t,r,n){if(e.isIdentifier(t.expression)&&1===t.arguments.length&&t.expression.escapedText.toString()===r){var i=t.arguments[0];if(e.isStringLiteral(i)&&i.text.toString()===n)return!0}return!1}(t.parent.expression,a,r))return void(i.hasIfChecked=!0);zy(t.parent,r,n,i,a)}zy(t.parent,r,n,i,a)}}function Uy(t,r){if(t.declaration&&134217728&t.declaration.flags){var n=qy(r),i=e.tryGetPropertyAccessOrIdentifierToString(e.getInvokedExpression(r));a=n,o=t.declaration,s=i,c=ua(t),_n(o,s?e.createDiagnosticForNode(a,e.Diagnostics.The_signature_0_of_1_is_deprecated,c,s):e.createDiagnosticForNode(a,e.Diagnostics._0_is_deprecated,c))}var a,o,s,c}function qy(t){switch((t=e.skipParentheses(t)).kind){case 204:case 162:case 205:return qy(t.expression);case 206:return qy(t.tag);case 278:case 277:return qy(t.tagName);case 203:return t.argumentExpression;case 202:return t.name;case 174:var r=t;return e.isQualifiedName(r.typeName)?r.typeName.right:r;default:return t}}function Jy(t){if(!e.isCallExpression(t))return!1;var r=t.expression;if(e.isPropertyAccessExpression(r)&&"for"===r.name.escapedText&&(r=r.expression),!e.isIdentifier(r)||"Symbol"!==r.escapedText)return!1;var n=Nl(!1);return!!n&&n===Fn(r,"Symbol",111551,void 0,void 0,!1)}function Vy(t){if(WS(t.arguments)||function(t){if(H===e.ModuleKind.ES2015)return fw(t,e.Diagnostics.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_esnext_commonjs_amd_system_or_umd);if(t.typeArguments)return fw(t,e.Diagnostics.Dynamic_import_cannot_have_type_arguments);var r=t.arguments;if(1!==r.length)return fw(t,e.Diagnostics.Dynamic_import_must_have_one_specifier_as_an_argument);if(qS(r),e.isSpreadElement(r[0]))return fw(r[0],e.Diagnostics.Specifier_of_dynamic_import_cannot_be_spread_element)}(t),0===t.arguments.length)return yv(t,Se);for(var r=t.arguments[0],n=$v(r),i=1;i<t.arguments.length;++i)$v(t.arguments[i]);(32768&n.flags||65536&n.flags||!cp(n,Re))&&pn(r,e.Diagnostics.Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0,da(n));var a=gi(t,r);if(a){var o=bi(a,r,!0,!1);if(o)return yv(t,Hy(_o(o),o,a))}return yv(t,Se)}function Hy(t,r,n){if(K&&t&&t!==Ee){var i=t;if(!i.syntheticType)if(Yn(e.find(n.declarations,e.isSourceFile),n,!1)){var a=e.createSymbolTable(),o=yn(2097152,"default");o.parent=n,o.nameType=hd("default"),o.target=ii(r),a.set("default",o);var s=yn(2048,"__type"),c=Wi(s,a,e.emptyArray,e.emptyArray,void 0,void 0);s.type=c,i.syntheticType=z_(t)?ld(t,c,s,0,!1):c}else i.syntheticType=t;return i.syntheticType}return t}function Ky(t){if(!e.isRequireCall(t,!0))return!1;if(!e.isIdentifier(t.expression))return e.Debug.fail();var r=Fn(t.expression,t.expression.escapedText,111551,void 0,void 0,!0);if(r===ce)return!0;if(2097152&r.flags)return!1;var n=16&r.flags?253:3&r.flags?251:0;if(0!==n){var i=e.getDeclarationOfKind(r,n);return!!i&&!!(8388608&i.flags)}return!1}function Wy(t){(function(t){if(t.questionDotToken||32&t.flags)return fw(t.template,e.Diagnostics.Tagged_template_expressions_are_not_permitted_in_an_optional_chain);return!1})(t)||KS(t,t.typeArguments),V<2&&jS(t,262144);var r=Iy(t);return Uy(r,t),Bc(r)}function Gy(t){switch(t.kind){case 10:case 14:case 8:case 9:case 110:case 95:case 200:case 201:case 220:return!0;case 208:return Gy(t.expression);case 216:var r=t.operator,n=t.operand;return 40===r&&(8===n.kind||9===n.kind)||39===r&&8===n.kind;case 202:case 203:var i=t.expression;if(e.isIdentifier(i)){var a=Yx(i);return a&&2097152&a.flags&&(a=ai(a)),!!(a&&384&a.flags&&1===jo(a))}}return!1}function $y(t,n,i,a){var o=fb(i,a);if(e.isConstTypeReference(n))return Gy(i)||pn(i,e.Diagnostics.A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals),gd(o);Rx(n),o=Bf(mf(o));var s=xd(n);r&&s!==Ee&&(up(s,Hf(o))||xp(o,s,t,e.Diagnostics.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first));return s}function Yy(e){return 32&e.flags?function(e){var t=fb(e.expression),r=Mf(t,e.expression);return Rf(Pf(r),e,r!==t)}(e):Pf(fb(e.expression))}function Xy(t){return function(t){var r=t.name.escapedText;switch(t.keywordToken){case 103:if("target"!==r)return fw(t.name,e.Diagnostics._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,t.name.escapedText,e.tokenToString(t.keywordToken),"target");break;case 100:if("meta"!==r)fw(t.name,e.Diagnostics._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,t.name.escapedText,e.tokenToString(t.keywordToken),"meta")}}(t),103===t.keywordToken?function(t){var r=e.getNewTargetContainer(t);return r?167===r.kind?_o(Ai(r.parent)):_o(Ai(r)):(pn(t,e.Diagnostics.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),Ee)}(t):100===t.keywordToken?function(t){H!==e.ModuleKind.ES2020&&H!==e.ModuleKind.ESNext&&H!==e.ModuleKind.System&&pn(t,e.Diagnostics.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_esnext_or_system);var r=e.getSourceFileOfNode(t);return e.Debug.assert(!!(2097152&r.flags),"Containing file is missing import meta node flag."),e.Debug.assert(!!r.externalModuleIndicator,"Containing file should be a module."),"meta"===t.name.escapedText?function(){return Xt||(Xt=Al("ImportMeta",0,!0))||nt}():Ee}(t):e.Debug.assertNever(t.keywordToken)}function Qy(t){var r=_o(t);if(W){var n=t.valueDeclaration;if(n&&e.hasInitializer(n))return Nf(r)}return r}function Zy(t){return e.Debug.assert(e.isIdentifier(t.name)),t.name.escapedText}function ev(e,t,r){var n=e.parameters.length-(U(e)?1:0);if(t<n)return e.parameters[t].escapedName;var i=e.parameters[n]||ke,a=r||_o(i);if(vf(a)){var o=a.target.labeledElementDeclarations,s=t-n;return o&&Zy(o[s])||i.escapedName+"_"+s}return i.escapedName}function tv(t){return 193===t.kind||e.isParameter(t)&&t.name&&e.isIdentifier(t.name)}function rv(e,t){var r=e.parameters.length-(U(e)?1:0);if(t<r){var n=e.parameters[t].valueDeclaration;return n&&tv(n)?n:void 0}var i=e.parameters[r]||ke,a=_o(i);if(vf(a)){var o=a.target.labeledElementDeclarations;return o&&o[t-r]}return i.valueDeclaration&&tv(i.valueDeclaration)?i.valueDeclaration:void 0}function nv(e,t){return iv(e,t)||Se}function iv(e,t){var r=e.parameters.length-(U(e)?1:0);if(t<r)return Qy(e.parameters[t]);if(U(e)){var n=_o(e.parameters[r]),i=t-r;if(!vf(n)||n.target.hasRestElement||i<n.target.fixedLength)return qu(n,hd(i))}}function av(t,r){var n=ov(t),i=sv(t),a=lv(t);if(a&&r>=n-1)return r===n-1?a:jl(qu(a,Me));for(var o=[],s=[],c=[],l=r;l<n;l++){!a||l<n-1?(o.push(nv(t,l)),s.push(l<i?1:2)):(o.push(a),s.push(8));var u=rv(t,l);u&&c.push(u)}return Hl(o,s,!1,e.length(c)===e.length(o)?c:void 0)}function ov(e){var t=e.parameters.length;if(U(e)){var r=_o(e.parameters[t-1]);if(vf(r))return t+r.target.fixedLength-(r.target.hasRestElement?0:1)}return t}function sv(t,r){var n=1&r,i=2&r;if(i||void 0===t.resolvedMinArgumentCount){var a=void 0;if(U(t)){var o=_o(t.parameters[t.parameters.length-1]);if(vf(o)){var s=e.findIndex(o.target.elementFlags,(function(e){return!(1&e)})),c=s<0?o.target.fixedLength:s;c>0&&(a=t.parameters.length-1+c)}}if(void 0===a){if(!n&&32&t.flags)return 0;a=t.minArgumentCount}if(i)return a;for(var l=a-1;l>=0;l--){if(131072&ug(nv(t,l),Gh).flags)break;a=l}t.resolvedMinArgumentCount=a}return t.resolvedMinArgumentCount}function cv(e){if(U(e)){var t=_o(e.parameters[e.parameters.length-1]);return!vf(t)||t.target.hasRestElement}return!1}function lv(e){if(U(e)){var t=_o(e.parameters[e.parameters.length-1]);if(!vf(t))return t;if(t.target.hasRestElement)return $l(t,t.target.fixedLength)}}function uv(e){var t=lv(e);return!t||rf(t)||Pa(t)||131072&uc(t).flags?void 0:t}function dv(e){return pv(e,He)}function pv(e,t){return e.parameters.length>0?nv(e,0):t}function fv(t,r){(t.typeParameters=r.typeParameters,r.thisParameter)&&((!(a=t.thisParameter)||a.valueDeclaration&&!a.valueDeclaration.type)&&(a||(t.thisParameter=jf(r.thisParameter,void 0)),mv(t.thisParameter,_o(r.thisParameter))));for(var n=t.parameters.length-(U(t)?1:0),i=0;i<n;i++){var a=t.parameters[i];if(!e.getEffectiveTypeAnnotationNode(a.valueDeclaration))mv(a,iv(r,i))}if(U(t)){a=e.last(t.parameters);if(e.isTransientSymbol(a)||!e.getEffectiveTypeAnnotationNode(a.valueDeclaration))mv(a,av(r,n))}}function mv(e,t){var r=Tn(e);if(!r.type){var n=e.valueDeclaration;r.type=t||to(n,!0),78!==n.name.kind&&(r.type===Ae&&(r.type=eo(n.name)),gv(n.name))}}function gv(t){for(var r=0,n=t.elements;r<n.length;r++){var i=n[r];e.isOmittedExpression(i)||(78===i.name.kind?Tn(Ai(i)).type=La(i):gv(i.name))}}function _v(e){var t=Il(!0);return t!==st?ol(t,[e=Ub(e)||Ae]):Ae}function hv(e){var t,r=(t=!0,Lt||(Lt=Al("PromiseLike",1,t))||st);return r!==st?ol(r,[e=Ub(e)||Ae]):Ae}function yv(t,r){var n=_v(r);return n===Ae?(pn(t,e.isImportCall(t)?e.Diagnostics.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:e.Diagnostics.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),Ee):(Fl(!0)||pn(t,e.isImportCall(t)?e.Diagnostics.A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:e.Diagnostics.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option),n)}function vv(t,r){if(!t.body)return Ee;var n,i,a,o=e.getFunctionFlags(t),s=!!(2&o),c=!!(1&o),l=Ve;if(232!==t.body.kind)n=$v(t.body,r&&-9&r),s&&(n=zb(n,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member));else if(c){var u=Dv(t,r);u?u.length>0&&(n=ou(u,2)):l=He;var d=function(t,r){var n=[],i=[],a=!!(2&e.getFunctionFlags(t));return e.forEachYieldExpression(t.body,(function(t){var o,s=t.expression?fb(t.expression,r):Pe;if(e.pushIfUnique(n,kv(t,s,Se,a)),t.asteriskToken){var c=Bk(s,a?19:17,t.expression);o=c&&c.nextType}else o=x_(t);o&&e.pushIfUnique(i,o)})),{yieldTypes:n,nextTypes:i}}(t,r),p=d.yieldTypes,f=d.nextTypes;i=e.some(p)?ou(p,2):void 0,a=e.some(f)?fu(f):void 0}else{var m=Dv(t,r);if(!m)return 2&o?yv(t,He):He;if(0===m.length)return 2&o?yv(t,Ve):Ve;n=ou(m,2)}if(n||i||a){if(i&&$f(t,i,3),n&&$f(t,n,1),a&&$f(t,a,2),n&&pf(n)||i&&pf(i)||a&&pf(a)){var g=C_(t),_=g?g===Ic(t)?c?void 0:n:b_(Bc(g),t):void 0;c?(i=yf(i,_,0,s),n=yf(n,_,1,s),a=yf(a,_,2,s)):n=function(e,t,r){return e&&pf(e)&&(e=hf(e,t?r?Bb(t):t:void 0)),e}(n,_,s)}i&&(i=Hf(i)),n&&(n=Hf(n)),a&&(a=Hf(a))}return c?bv(i||He,n||l,a||a_(2,t)||Ae,s):s?_v(n||l):n||l}function bv(e,t,r,n){var i=n?vr:br,a=i.getGlobalGeneratorType(!1);if(e=i.resolveIterationType(e,void 0)||Ae,t=i.resolveIterationType(t,void 0)||Ae,r=i.resolveIterationType(r,void 0)||Ae,a===st){var o=i.getGlobalIterableIteratorType(!1),s=o!==st?Jk(o,i):void 0,c=s?s.returnType:Se,l=s?s.nextType:Ne;return cp(t,c)&&cp(l,r)?o!==st?Ml(o,[e]):(i.getGlobalIterableIteratorType(!0),nt):(i.getGlobalGeneratorType(!0),nt)}return Ml(a,[e,t,r])}function kv(t,r,n,i){var a=t.expression||t,o=t.asteriskToken?Ik(i?19:17,r,n,a):r;return i?Ub(o,a,t.asteriskToken?e.Diagnostics.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:e.Diagnostics.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):o}function xv(e,t,r,n){var i=0;if(n){for(var a=t;a<r.length;a++)i|=w.get(r[a])||32768;for(a=e;a<t;a++)i&=~(w.get(r[a])||0);for(a=0;a<e;a++)i|=w.get(r[a])||32768}else{for(a=e;a<t;a++)i|=S.get(r[a])||128;for(a=0;a<e;a++)i&=~(S.get(r[a])||0)}return i}function Sv(t){var r=Cn(t);return void 0!==r.isExhaustive?r.isExhaustive:r.isExhaustive=function(t){if(213===t.expression.kind){var r=ub(t.expression.expression),n=xv(0,0,og(t,!1),!0),i=Qs(r)||r;return 3&i.flags?!(556800&~n):!!(131072&ug(i,(function(e){return(Vm(e)&n)===n})).flags)}var a=ub(t.expression);if(!ff(a))return!1;var o=ag(t);if(!o.length||e.some(o,df))return!1;return s=pg(a,gd),c=o,1048576&s.flags?!e.forEach(s.types,(function(t){return!e.contains(c,t)})):e.contains(c,s);var s,c}(t)}function wv(e){return e.endFlowNode&&Ng(e.endFlowNode)}function Dv(t,r){var n=e.getFunctionFlags(t),i=[],a=wv(t),o=!1;if(e.forEachReturnStatement(t.body,(function(s){var c=s.expression;if(c){var l=$v(c,r&&-9&r);2&n&&(l=zb(l,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)),131072&l.flags&&(o=!0),e.pushIfUnique(i,l)}else a=!0})),0!==i.length||a||!o&&!function(e){switch(e.kind){case 209:case 210:return!0;case 166:return 201===e.parent.kind;default:return!1}}(t))return!(W&&i.length&&a)||Fy(t)&&i.some((function(e){return e.symbol===t.symbol}))||e.pushIfUnique(i,Ne),i}function Ev(t,n){var i,a,o,s;if(r){var c=e.getFunctionFlags(t),l=n&&ix(n,c);if(!l||!Rv(l,16385)){if(253===t.kind&&t.decorators&&void 0!==n){var u,d=e.getEtsExtendDecoratorComponentNames(t.decorators,J);if(0!==d.length)return null===(i=J.ets)||void 0===i||i.extend.components.forEach((function(t){var r=t.name,n=t.type;r===e.last(d)&&(u=n)})),(null===(a=null==n?void 0:n.symbol)||void 0===a?void 0:a.escapedName)===u?void 0:void pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.Should_not_add_return_type_to_the_function_that_is_annotated_by_Extend);if(e.getEtsStylesDecoratorComponentNames(t.decorators,J).length>0){var p=null===(o=J.ets)||void 0===o?void 0:o.styles.component.type;return(null===(s=null==n?void 0:n.symbol)||void 0===s?void 0:s.escapedName)===p?void 0:void pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.Should_not_add_return_type_to_the_function_that_is_annotated_by_Styles)}}if(165!==t.kind&&!e.nodeIsMissing(t.body)&&232===t.body.kind&&wv(t)){var f=512&t.flags;if(l&&131072&l.flags)pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.A_function_returning_never_cannot_have_a_reachable_end_point);else if(!l||f||e.hasEtsStylesDecoratorNames(t.decorators,J)){if(l&&W&&!cp(Ne,l))pn(e.getEffectiveReturnTypeNode(t)||t,e.Diagnostics.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(J.noImplicitReturns){if(!l){if(!f)return;if(ax(t,Bc(Ic(t))))return}pn(e.getEffectiveReturnTypeNode(t)||t,e.Diagnostics.Not_all_code_paths_return_a_value)}}else pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value)}}}}function Tv(t,r){if(e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t)),Lx(t),r&&4&r&&Qd(t)){if(!e.getEffectiveReturnTypeNode(t)&&!ep(t)){var n=A_(t);if(n&&am(Bc(n))){var i=Cn(t);if(i.contextFreeType)return i.contextFreeType;var a=vv(t,r),o=ds(void 0,void 0,void 0,e.emptyArray,a,void 0,0,0),s=Wi(t.symbol,T,[o],e.emptyArray,void 0,void 0);return s.objectFlags|=2097152,i.contextFreeType=s}}return ct}return HS(t)||209!==t.kind||XS(t),function(t,r){var n=Cn(t);if(!(1024&n.flags)){var i=A_(t);if(!(1024&n.flags)){n.flags|=1024;var a=e.firstOrUndefined(hc(_o(Ai(t)),0));if(!a)return;if(Qd(t))if(i){var o=S_(t);r&&2&r&&function(t,r,n){for(var i=t.parameters.length-(U(t)?1:0),a=0;a<i;a++){var o=t.parameters[a].valueDeclaration;if(o.type){var s=e.getEffectiveTypeAnnotationNode(o);s&&ym(n.inferences,xd(s),nv(r,a))}}var c=lv(r);if(c&&262144&c.flags){fv(t,jd(r,n.nonFixingMapper));var l=ov(r)-1;ym(n.inferences,av(t,l),c)}}(a,i,o),fv(a,o?jd(i,o.mapper):i)}else!function(e){e.thisParameter&&mv(e.thisParameter);for(var t=0,r=e.parameters;t<r.length;t++)mv(r[t])}(a);if(i&&!zc(t)&&!a.resolvedReturnType){var s=vv(t,r);a.resolvedReturnType||(a.resolvedReturnType=s)}kb(t)}}}(t,r),_o(Ai(t))}function Cv(e,t,r,n){if(void 0===n&&(n=!1),!cp(t,Ze)){var i=n&&jb(t);return gn(e,!!i&&cp(i,Ze),r),!1}return!0}function Av(t){if(!e.isCallExpression(t))return!1;if(!e.isBindableObjectDefinePropertyCall(t))return!1;var r=$v(t.arguments[2]);if(Na(r,"value")){var n=gc(r,"writable"),i=n&&_o(n);if(!i||i===je||i===Be)return!0;if(n&&n.valueDeclaration&&e.isPropertyAssignment(n.valueDeclaration)){var a=fb(n.valueDeclaration.initializer);if(a===je||a===Be)return!0}return!1}return!gc(r,"set")}function Nv(t){return!!(8&e.getCheckFlags(t)||4&t.flags&&64&e.getDeclarationModifierFlagsFromSymbol(t)||3&t.flags&&2&lh(t)||98304&t.flags&&!(65536&t.flags)||8&t.flags||e.some(t.declarations,Av))}function Pv(t,r,n){var i,a;if(0===n)return!1;if(Nv(r)){if(4&r.flags&&e.isAccessExpression(t)&&108===t.expression.kind){var o=e.getContainingFunction(t);if(!o||167!==o.kind&&!Fy(o))return!0;if(r.valueDeclaration){var s=e.isBinaryExpression(r.valueDeclaration),c=o.parent===r.valueDeclaration.parent,l=o===r.valueDeclaration.parent,u=s&&(null===(i=r.parent)||void 0===i?void 0:i.valueDeclaration)===o.parent,d=s&&(null===(a=r.parent)||void 0===a?void 0:a.valueDeclaration)===o;return!(c||l||u||d)}}return!0}if(e.isAccessExpression(t)){var p=e.skipParentheses(t.expression);if(78===p.kind){var f=Cn(p).resolvedSymbol;if(2097152&f.flags){var m=Vn(f);return!!m&&266===m.kind}}}return!1}function Iv(t,r,n){var i=e.skipOuterExpressions(t,7);return 78===i.kind||e.isAccessExpression(i)?!(32&i.flags)||(pn(t,n),!1):(pn(t,r),!1)}function Fv(t){fb(t.expression);var r=e.skipParentheses(t.expression);if(!e.isAccessExpression(r))return pn(r,e.Diagnostics.The_operand_of_a_delete_operator_must_be_a_property_reference),qe;e.isPropertyAccessExpression(r)&&e.isPrivateIdentifier(r.name)&&pn(r,e.Diagnostics.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);var n=Ri(Cn(r).resolvedSymbol);return n&&(Nv(n)&&pn(r,e.Diagnostics.The_operand_of_a_delete_operator_cannot_be_a_read_only_property),function(t,r){var n=131075;!W||r.flags&n||32768&Ef(r)||pn(t,e.Diagnostics.The_operand_of_a_delete_operator_must_be_optional)}(r,_o(n))),qe}function Ov(e){return Rv(e,2112)?Mv(e,3)||Rv(e,296)?Ze:Le:Me}function Rv(e,t){if(e.flags&t)return!0;if(3145728&e.flags)for(var r=0,n=e.types;r<n.length;r++){if(Rv(n[r],t))return!0}return!1}function Mv(e,t,r){return!!(e.flags&t)||!(r&&114691&e.flags)&&(!!(296&t)&&cp(e,Me)||!!(2112&t)&&cp(e,Le)||!!(402653316&t)&&cp(e,Re)||!!(528&t)&&cp(e,qe)||!!(16384&t)&&cp(e,Ve)||!!(131072&t)&&cp(e,He)||!!(65536&t)&&cp(e,Fe)||!!(32768&t)&&cp(e,Ne)||!!(4096&t)&&cp(e,Je)||!!(67108864&t)&&cp(e,Ye))}function Lv(t,r,n){return 1048576&t.flags?e.every(t.types,(function(e){return Lv(e,r,n)})):Mv(t,r,n)}function jv(t){return!!(16&e.getObjectFlags(t))&&!!t.symbol&&Bv(t.symbol)}function Bv(e){return!!(128&e.flags)}function zv(t,r,n,i,a){void 0===a&&(a=!1);var o=t.properties,s=o[n];if(291===s.kind||292===s.kind){var c=s.name,l=vu(c);if(Zo(l)){var u=gc(r,is(l));u&&(Lh(u,s,a),dh(s,!1,r,u))}var d=Oa(s,qu(r,l,void 0,c,void 0,void 0,16));return qv(292===s.kind?s:s.initializer,d)}if(293===s.kind){if(!(n<o.length-1)){V<99&&jS(s,4);var p=[];if(i)for(var f=0,m=i;f<m.length;f++){var g=m[f];e.isSpreadAssignment(g)||p.push(g.name)}d=Fa(r,p,r.symbol);return qS(i,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),qv(s.expression,d)}pn(s,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern)}else pn(s,e.Diagnostics.Property_assignment_expected)}function Uv(t,r,n,i,a){var o=t.elements,s=o[n];if(224!==s.kind){if(222!==s.kind){var c=hd(n);if(sf(r)){var l=16|(N_(s)?8:0),u=Vu(r,c,void 0,uy(s,c),l)||Ee;return qv(s,Oa(s,N_(s)?Hm(u,524288):u),a)}return qv(s,i,a)}if(n<o.length-1)pn(s,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern);else{var d=s.expression;if(218!==d.kind||62!==d.operatorToken.kind)return qS(t.elements,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),qv(d,lg(r,vf)?pg(r,(function(e){return $l(e,n)})):jl(i),a);pn(d.operatorToken,e.Diagnostics.A_rest_element_cannot_have_an_initializer)}}}function qv(t,r,n,i){var a;if(292===t.kind){var o=t;o.objectAssignmentInitializer&&(!W||32768&Ef(fb(o.objectAssignmentInitializer))||(r=Hm(r,524288)),function(e,t,r,n,i){var a,o=t.kind;if(62===o&&(201===e.kind||200===e.kind))return qv(e,fb(r,n),n,108===r.kind);a=55===o||56===o||60===o?Ck(e,n):fb(e,n);var s=fb(r,n);Wv(e,t,r,a,s,i)}(o.name,o.equalsToken,o.objectAssignmentInitializer,n)),a=t.name}else a=t;return 218===a.kind&&62===a.operatorToken.kind&&(Hv(a,n),a=a.left),201===a.kind?function(e,t,r){var n=e.properties;if(W&&0===n.length)return vh(t,e);for(var i=0;i<n.length;i++)zv(e,t,i,n,r);return t}(a,r,i):200===a.kind?function(e,t,r){var n=e.elements;V<2&&J.downlevelIteration&&jS(e,512);for(var i=Ik(193,t,Ne,e)||Ee,a=J.noUncheckedIndexedAccess?void 0:i,o=0;o<n.length;o++){var s=i;222===e.elements[o].kind&&(s=a=null!=a?a:Ik(65,t,Ne,e)||Ee),Uv(e,t,o,s,r)}return t}(a,r,n):function(t,r,n){var i=fb(t,n),a=293===t.parent.kind?e.Diagnostics.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:e.Diagnostics.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,o=293===t.parent.kind?e.Diagnostics.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:e.Diagnostics.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;Iv(t,a,o)&&fp(r,i,t,t);e.isPrivateIdentifierPropertyAccessExpression(t)&&jS(t.parent,1048576);return r}(a,r,n)}function Jv(t){switch((t=e.skipParentheses(t)).kind){case 78:case 10:case 13:case 206:case 220:case 14:case 8:case 9:case 110:case 95:case 104:case 151:case 209:case 223:case 210:case 200:case 201:case 213:case 227:case 277:case 276:return!0;case 219:return Jv(t.whenTrue)&&Jv(t.whenFalse);case 218:return!e.isAssignmentOperator(t.operatorToken.kind)&&(Jv(t.left)&&Jv(t.right));case 216:case 217:switch(t.operator){case 53:case 39:case 40:case 54:return!0}return!1;default:return!1}}function Vv(e,t){return!!(98304&t.flags)||up(e,t)}function Hv(t,r){for(var n,i={expr:[t],state:[0],leftType:[void 0]},a=0;a>=0;)switch(t=i.expr[a],i.state[a]){case 0:if(e.isInJSFile(t)&&e.getAssignedExpandoInitializer(t)){u(fb(t.right,r));break}if(Kv(t),62===(o=t.operatorToken.kind)&&(201===t.left.kind||200===t.left.kind)){u(qv(t.left,fb(t.right,r),r,108===t.right.kind));break}d(1),p(t.left);break;case 1:var o,s=n;if(i.leftType[a]=s,55===(o=t.operatorToken.kind)||56===o||60===o){if(55===o){var c=e.walkUpParenthesizedExpressions(t.parent);Ek(t.left,s,e.isIfStatement(c)?c.thenStatement:void 0)}Tk(s,t.left)}d(2),p(t.right);break;case 2:s=i.leftType[a];var l=n;u(Wv(t.left,t.operatorToken,t.right,s,l,t));break;default:return e.Debug.fail("Invalid state "+i.state[a]+" for checkBinaryExpression")}return n;function u(e){n=e,a--}function d(e){i.state[a]=e}function p(t){e.isBinaryExpression(t)?(a++,i.expr[a]=t,i.state[a]=0,i.leftType[a]=void 0):n=fb(t,r)}}function Kv(t){var r=t.left,n=t.operatorToken,i=t.right;60===n.kind&&(!e.isBinaryExpression(r)||56!==r.operatorToken.kind&&55!==r.operatorToken.kind||fw(r,e.Diagnostics._0_and_1_operations_cannot_be_mixed_without_parentheses,e.tokenToString(r.operatorToken.kind),e.tokenToString(n.kind)),!e.isBinaryExpression(i)||56!==i.operatorToken.kind&&55!==i.operatorToken.kind||fw(i,e.Diagnostics._0_and_1_operations_cannot_be_mixed_without_parentheses,e.tokenToString(i.operatorToken.kind),e.tokenToString(n.kind)))}function Wv(t,n,i,a,o,s){var c,l,u=n.kind;switch(u){case 41:case 42:case 65:case 66:case 43:case 67:case 44:case 68:case 40:case 64:case 47:case 69:case 48:case 70:case 49:case 71:case 51:case 73:case 52:case 77:case 50:case 72:if(a===Ke||o===Ke)return Ke;a=vh(a,t),o=vh(o,i);var d=void 0;if(528&a.flags&&528&o.flags&&void 0!==(d=function(e){switch(e){case 51:case 73:return 56;case 52:case 77:return 37;case 50:case 72:return 55;default:return}}(n.kind)))return pn(s||n,e.Diagnostics.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,e.tokenToString(n.kind),e.tokenToString(d)),Me;var p,f=Cv(t,a,e.Diagnostics.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),m=Cv(i,o,e.Diagnostics.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0);if(Mv(a,3)&&Mv(o,3)||!Rv(a,2112)&&!Rv(o,2112))p=Me;else if(w(a,o)){switch(u){case 49:case 71:C();break;case 42:case 66:V<3&&pn(s,e.Diagnostics.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}p=Le}else C(w),p=Ee;return f&&m&&E(p),p;case 39:case 63:if(a===Ke||o===Ke)return Ke;Mv(a,402653316)||Mv(o,402653316)||(a=vh(a,t),o=vh(o,i));var g=void 0;if(Mv(a,296,!0)&&Mv(o,296,!0)?g=Me:Mv(a,2112,!0)&&Mv(o,2112,!0)?g=Le:Mv(a,402653316,!0)||Mv(o,402653316,!0)?g=Re:(Pa(a)||Pa(o))&&(g=a===Ee||o===Ee?Ee:Se),g&&!D(u))return g;if(!g){var _=402655727;return C((function(e,t){return Mv(e,_)&&Mv(t,_)})),Se}return 63===u&&E(g),g;case 29:case 31:case 32:case 33:return D(u)&&(a=mf(vh(a,t)),o=mf(vh(o,i)),T((function(e,t){return up(e,t)||up(t,e)||cp(e,Ze)&&cp(t,Ze)}))),qe;case 34:case 35:case 36:case 37:return T((function(e,t){return Vv(e,t)||Vv(t,e)})),qe;case 102:return function(t,r,n,i){return n===Ke||i===Ke?Ke:(!Pa(n)&&Lv(n,131068)&&pn(t,e.Diagnostics.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),Pa(i)||nS(i)||sp(i,vt)||pn(r,e.Diagnostics.The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type),qe)}(t,i,a,o);case 101:return function(t,r,n,i){if(n===Ke||i===Ke)return Ke;n=vh(n,t),i=vh(i,r),Lv(n,402665900)||Mv(n,407109632)||pn(t,e.Diagnostics.The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol);var a=Ks(i);return(!Lv(i,126091264)||a&&(Mv(i,3145728)&&!Lv(a,126091264)||!Rv(a,126615552)))&&pn(r,e.Diagnostics.The_right_hand_side_of_an_in_expression_must_not_be_a_primitive),qe}(t,i,a,o);case 55:case 75:var h=4194304&Vm(a)?ou([(l=W?a:mf(o),pg(l,Cf)),o]):a;return 75===u&&E(o),h;case 56:case 74:var y=8388608&Vm(a)?ou([Tf(a),o],2):a;return 74===u&&E(o),y;case 60:case 76:var v=262144&Vm(a)?ou([Pf(a),o],2):a;return 76===u&&E(o),v;case 62:var b=e.isBinaryExpression(t.parent)?e.getAssignmentDeclarationKind(t.parent):0;return function(t,r){if(2===t)for(var n=0,i=qs(r);n<i.length;n++){var a=i[n],o=_o(a);if(o.symbol&&32&o.symbol.flags){var s=a.escapedName,c=Fn(a.valueDeclaration,s,788968,void 0,s,!1);c&&c.declarations.some(e.isJSDocTypedefTag)&&(Sn(c,e.Diagnostics.Duplicate_identifier_0,e.unescapeLeadingUnderscores(s),a),Sn(a,e.Diagnostics.Duplicate_identifier_0,e.unescapeLeadingUnderscores(s),c))}}}(b,o),function(r){var n;switch(r){case 2:return!0;case 1:case 5:case 6:case 3:case 4:var a=Ai(t),o=e.getAssignedExpandoInitializer(i);return!!o&&e.isObjectLiteralExpression(o)&&!!(null===(n=null==a?void 0:a.exports)||void 0===n?void 0:n.size);default:return!1}}(b)?(524288&o.flags&&(2===b||6===b||Ep(o)||Jm(o)||1&e.getObjectFlags(o))||E(o),a):(E(o),Bf(o));case 27:if(!J.allowUnreachableCode&&Jv(t)&&(78!==(c=i).kind||"eval"!==c.escapedText)){var k=e.getSourceFileOfNode(t),x=k.text,S=e.skipTrivia(x,t.pos);k.parseDiagnostics.some((function(t){return t.code===e.Diagnostics.JSX_expressions_must_have_one_parent_element.code&&e.textSpanContainsPosition(t,S)}))||pn(t,e.Diagnostics.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return o;default:return e.Debug.fail()}function w(e,t){return Mv(e,2112)&&Mv(t,2112)}function D(r){var n=Rv(a,12288)?t:Rv(o,12288)?i:void 0;return!n||(pn(n,e.Diagnostics.The_0_operator_cannot_be_applied_to_type_symbol,e.tokenToString(r)),!1)}function E(n){r&&e.isAssignmentOperator(u)&&(!Iv(t,e.Diagnostics.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,e.Diagnostics.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)||e.isIdentifier(t)&&"exports"===e.unescapeLeadingUnderscores(t.escapedText)||fp(n,a,t,i))}function T(e){return!e(a,o)&&(C(e),!0)}function C(t){var r,i=!1,c=s||n;if(t){var l=Ub(a),u=Ub(o);i=!(l===a&&u===o)&&!(!l||!u)&&t(l,u)}var d=a,p=o;!i&&t&&(r=function(e,t,r){var n=e,i=t,a=mf(e),o=mf(t);r(a,o)||(n=a,i=o);return[n,i]}(a,o,t),d=r[0],p=r[1]);var f=pa(d,p),m=f[0],g=f[1];(function(t,r,i,a){var o;switch(n.kind){case 36:case 34:o="false";break;case 37:case 35:o="true"}if(o)return gn(t,r,e.Diagnostics.This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap,o,i,a);return})(c,i,m,g)||gn(c,i,e.Diagnostics.Operator_0_cannot_be_applied_to_types_1_and_2,e.tokenToString(n.kind),m,g)}}function Gv(t,r,n,i){var a=function(t){return 284!==t.kind||e.isJsxSelfClosingElement(t.parent)?t:t.parent.parent}(t),o=a.contextualType,s=a.inferenceContext;try{a.contextualType=r,a.inferenceContext=n;var c=fb(t,1|i|(n?2:0));return Rv(c,2944)&&Qv(c,b_(r,t))?gd(c):c}finally{a.contextualType=o,a.inferenceContext=s}}function $v(e,t){var r=Cn(e);if(!r.resolvedType){if(t&&0!==t)return fb(e,t);var n=wr,i=nr;wr=Dr,nr=void 0,r.resolvedType=fb(e,t),nr=i,wr=n}return r.resolvedType}function Yv(t,r){var n=e.getEffectiveInitializer(t),i=db(n)||(r?Gv(n,r,void 0,0):$v(n));return e.isParameter(t)&&198===t.name.kind&&vf(i)&&!i.target.hasRestElement&&ul(i)<t.name.elements.length?function(t,r){for(var n=r.elements,i=ll(t).slice(),a=t.target.elementFlags.slice(),o=ul(t);o<n.length;o++){var s=n[o];(o<n.length-1||199!==s.kind||!s.dotDotDotToken)&&(i.push(!e.isOmittedExpression(s)&&N_(s)?Qa(s,!1,!1):Se),a.push(2),e.isOmittedExpression(s)||N_(s)||Gf(s,Se))}return Hl(i,a,t.target.readonly)}(i,t.name):i}function Xv(t,r){var n=2&e.getCombinedNodeFlags(t)||e.isDeclarationReadonly(t)?r:gf(r);if(e.isInJSFile(t)){if(98304&n.flags)return Gf(t,Se),Se;if(cf(n))return Gf(t,At),At}return n}function Qv(t,r){if(r){if(3145728&r.flags){var n=r.types;return e.some(n,(function(e){return Qv(t,e)}))}if(58982400&r.flags){var i=Qs(r)||Ae;return Rv(i,4)&&Rv(t,128)||Rv(i,8)&&Rv(t,256)||Rv(i,64)&&Rv(t,2048)||Rv(i,4096)&&Rv(t,8192)||Qv(t,i)}return!!(406847616&r.flags&&Rv(t,128)||256&r.flags&&Rv(t,256)||2048&r.flags&&Rv(t,2048)||512&r.flags&&Rv(t,512)||8192&r.flags&&Rv(t,8192))}return!1}function Zv(t){var r=t.parent;return e.isAssertionExpression(r)&&e.isConstTypeReference(r.type)||(e.isParenthesizedExpression(r)||e.isArrayLiteralExpression(r)||e.isSpreadElement(r))&&Zv(r)||(e.isPropertyAssignment(r)||e.isShorthandPropertyAssignment(r)||e.isTemplateSpan(r))&&Zv(r.parent)}function eb(t,r,n,i){var a=fb(t,r,i);return Zv(t)?gd(a):function(t){return 207===(t=e.skipParentheses(t)).kind||226===t.kind}(t)?a:hf(a,b_(2===arguments.length?x_(t):n,t))}function tb(e,t){return 159===e.name.kind&&M_(e.name),eb(e.initializer,t)}function rb(e,t){return nw(e),159===e.name.kind&&M_(e.name),nb(e,Tv(e,t),t)}function nb(t,r,n){if(n&&10&n){var i=ey(r,0,!0),a=ey(r,1,!0),o=i||a;if(o&&o.typeParameters){var s=v_(t,2);if(s){var c=ey(Pf(s),i?0:1,!1);if(c&&!c.typeParameters){if(8&n)return ib(t,n),ct;var l=S_(t),u=l.signature&&Bc(l.signature),d=u&&Zh(u);if(d&&!d.typeParameters&&!e.every(l.inferences,ab)){var p=function(t,r){for(var n,i,a=[],o=0,s=r;o<s.length;o++){var c=(f=s[o]).symbol.escapedName;if(ob(t.inferredTypeParameters,c)||ob(a,c)){var l=Ji(yn(262144,sb(e.concatenate(t.inferredTypeParameters,a),c)));l.target=f,n=e.append(n,f),i=e.append(i,l),a.push(l)}else a.push(f)}if(i)for(var u=Td(n,i),d=0,p=i;d<p.length;d++){var f;(f=p[d]).mapper=u}return a}(l,o.typeParameters),f=Vc(o,p),m=e.map(l.inferences,(function(e){return rm(e.typeParameter)}));if(Yf(f,c,(function(e,t){ym(m,e,t,0,!0)})),e.some(m,ab)&&(Xf(f,c,(function(e,t){ym(m,e,t)})),!function(e,t){for(var r=0;r<e.length;r++)if(ab(e[r])&&ab(t[r]))return!0;return!1}(l.inferences,m)))return function(e,t){for(var r=0;r<e.length;r++)!ab(e[r])&&ab(t[r])&&(e[r]=t[r])}(l.inferences,m),l.inferredTypeParameters=e.concatenate(l.inferredTypeParameters,p),$c(f)}return $c(ty(o,c,l))}}}}return r}function ib(e,t){2&t&&(S_(e).flags|=4)}function ab(e){return!(!e.candidates&&!e.contraCandidates)}function ob(t,r){return e.some(t,(function(e){return e.symbol.escapedName===r}))}function sb(e,t){for(var r=t.length;r>1&&t.charCodeAt(r-1)>=48&&t.charCodeAt(r-1)<=57;)r--;for(var n=t.slice(0,r),i=1;;i++){var a=n+i;if(!ob(e,a))return a}}function cb(e){var t=Qh(e);if(t&&!t.typeParameters)return Bc(t)}function lb(e){var t=fb(e.expression),r=Mf(t,e.expression),n=cb(t);return n&&Rf(n,e,r!==t)}function ub(t,r){var n=db(t);if(n)return n;if(67108864&t.flags&&nr){var i=nr[O(t)];if(i)return i}var a=Cr,o=fb(t,r);Cr!==a&&((nr||(nr=[]))[O(t)]=o,e.setNodeFlags(t,67108864|t.flags));return o}function db(t){var r=e.skipParentheses(t);if(!e.isCallExpression(r)||106===r.expression.kind||e.isRequireCall(r,!0)||Jy(r))if(!e.isEtsComponentExpression(r)||106===r.expression.kind||e.isRequireCall(r,!0)||Jy(r)){if(e.isAssertionExpression(r)&&!e.isConstTypeReference(r.type))return xd(r.type);if(8===t.kind||10===t.kind||110===t.kind||95===t.kind)return fb(t)}else{var n;if(n=e.isCallChain(r)?lb(r):cb(fh(r.expression,32)))return n}else if(n=e.isCallChain(r)?lb(r):cb(fh(r.expression,32)))return n}function pb(e){var t=Cn(e);if(t.contextFreeType)return t.contextFreeType;var r=e.contextualType;e.contextualType=Se;try{return t.contextFreeType=fb(e,4)}finally{e.contextualType=r}}function fb(t,r,n){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkExpression",{kind:t.kind,pos:t.pos,end:t.end});var i=d;d=t,x=0;var a=nb(t,mb(t,r,n),r);return jv(a)&&function(t,r){var n=202===t.parent.kind&&t.parent.expression===t||203===t.parent.kind&&t.parent.expression===t||(78===t.kind||158===t.kind)&&Gx(t)||177===t.parent.kind&&t.parent.exprName===t||273===t.parent.kind;n||pn(t,e.Diagnostics.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query);if(J.isolatedModules){e.Debug.assert(!!(128&r.symbol.flags)),8388608&r.symbol.valueDeclaration.flags&&pn(t,e.Diagnostics.Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided)}}(t,a),d=i,null===e.tracing||void 0===e.tracing||e.tracing.pop(),a}function mb(t,i,a){var o=t.kind;if(n)switch(o){case 223:case 209:case 210:n.throwIfCancellationRequested()}switch(o){case 78:return Vg(t);case 108:return $g(t);case 106:return Qg(t);case 104:return Oe;case 14:case 10:return md(hd(t.text));case 8:return _w(t),md(hd(+t.text));case 9:return function(t){var r=e.isLiteralTypeNode(t.parent)||e.isPrefixUnaryExpression(t.parent)&&e.isLiteralTypeNode(t.parent.parent);if(!r&&V<7&&fw(t,e.Diagnostics.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))return!0}(t),md(function(t){return hd({negative:!1,base10Value:e.parsePseudoBigInt(t.text)})}(t));case 110:return ze;case 95:return je;case 220:return function(t){for(var r=[t.head.text],n=[],i=0,a=t.templateSpans;i<a.length;i++){var o=a[i],s=fb(o.expression);Rv(s,12288)&&pn(o.expression,e.Diagnostics.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),r.push(o.literal.text),n.push(cp(s,et)?s:Re)}return Zv(t)?Du(r,n):Re}(t);case 13:return Tt;case 200:return P_(t,i,a);case 201:return B_(t,i);case 202:return kh(t,i);case 158:return xh(t);case 203:return zh(t);case 204:if(100===t.expression.kind)return Vy(t);case 205:return My(t,i);case 211:var s=t;return s.body&&s.body.statements.length&&hb(s.body.statements,i),My(t,i);case 206:return Wy(t);case 208:return function(t,r){var n=e.isInJSFile(t)?e.getJSDocTypeTag(t):void 0;return n?$y(n,n.typeExpression.type,t.expression,r):fb(t.expression,r)}(t,i);case 223:return function(e){return fx(e),Lx(e),_o(Ai(e))}(t);case 209:case 210:return Tv(t,i);case 213:return function(e){return fb(e.expression),tn}(t);case 207:case 226:return function(e){return $y(e,e.type,e.expression)}(t);case 227:return Yy(t);case 228:return Xy(t);case 212:return Fv(t);case 214:return function(e){return fb(e.expression),Pe}(t);case 215:return function(t){if(r){var n;if(!(32768&t.flags))if(e.isInTopLevelContext(t)){if(!uw(n=e.getSourceFileOfNode(t))){var i=void 0;if(!e.isEffectiveExternalModule(n,J)){i||(i=e.getSpanOfTokenAtPosition(n,t.pos));var a=e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module);Qr.add(a)}(H!==e.ModuleKind.ESNext&&H!==e.ModuleKind.System||V<4)&&(i=e.getSpanOfTokenAtPosition(n,t.pos),a=e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher),Qr.add(a))}}else if(!uw(n=e.getSourceFileOfNode(t))){i=e.getSpanOfTokenAtPosition(n,t.pos),a=e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules);var o=e.getContainingFunction(t);if(o&&167!==o.kind&&!(2&e.getFunctionFlags(o))){var s=e.createDiagnosticForNode(o,e.Diagnostics.Did_you_mean_to_mark_this_function_as_async);e.addRelatedInfo(a,s)}Qr.add(a)}i_(t)&&pn(t,e.Diagnostics.await_expressions_cannot_be_used_in_a_parameter_initializer)}var c=fb(t.expression),l=zb(c,t,e.Diagnostics.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return l!==c||l===Ee||3&c.flags||fn(!1,e.createDiagnosticForNode(t,e.Diagnostics.await_has_no_effect_on_the_type_of_this_expression)),l}(t);case 216:return function(t){var r=fb(t.operand);if(r===Ke)return Ke;switch(t.operand.kind){case 8:switch(t.operator){case 40:return md(hd(-t.operand.text));case 39:return md(hd(+t.operand.text))}break;case 9:if(40===t.operator)return md(hd({negative:!0,base10Value:e.parsePseudoBigInt(t.operand.text)}))}switch(t.operator){case 39:case 40:case 54:return vh(r,t.operand),Rv(r,12288)&&pn(t.operand,e.Diagnostics.The_0_operator_cannot_be_applied_to_type_symbol,e.tokenToString(t.operator)),39===t.operator?(Rv(r,2112)&&pn(t.operand,e.Diagnostics.Operator_0_cannot_be_applied_to_type_1,e.tokenToString(t.operator),da(mf(r))),Me):Ov(r);case 53:Ck(t.operand);var n=12582912&Vm(r);return 4194304===n?je:8388608===n?ze:qe;case 45:case 46:return Cv(t.operand,vh(r,t.operand),e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&Iv(t.operand,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),Ov(r)}return Ee}(t);case 217:return function(t){var r=fb(t.operand);return r===Ke?Ke:(Cv(t.operand,vh(r,t.operand),e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&Iv(t.operand,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),Ov(r))}(t);case 218:return Hv(t,i);case 219:return function(e,t){var r=Ck(e.condition);return Ek(e.condition,r,e.whenTrue),ou([fb(e.whenTrue,t),fb(e.whenFalse,t)],2)}(t,i);case 222:return function(e,t){return V<2&&jS(e,J.downlevelIteration?1536:1024),Ik(33,fb(e.expression,t),Ne,e.expression)}(t,i);case 224:return Pe;case 221:return function(t){r&&(8192&t.flags||dw(t,e.Diagnostics.A_yield_expression_is_only_allowed_in_a_generator_body),i_(t)&&pn(t,e.Diagnostics.yield_expressions_cannot_be_used_in_a_parameter_initializer));var n=e.getContainingFunction(t);if(!n)return Se;var i=e.getFunctionFlags(n);if(!(1&i))return Se;var a=!!(2&i);t.asteriskToken&&(a&&V<99&&jS(t,26624),!a&&V<2&&J.downlevelIteration&&jS(t,256));var o=zc(n),s=o&&rx(o,a),c=s&&s.yieldType||Se,l=s&&s.nextType||Se,u=a?Ub(l)||Se:l,d=t.expression?fb(t.expression):Pe,p=kv(t,d,u,a);if(o&&p&&fp(p,c,t.expression||t,t.expression),t.asteriskToken)return Ok(a?19:17,1,d,t.expression)||Se;if(o)return tx(2,o,a)||Se;var f=a_(2,n);if(!f&&(f=Se,r&&X&&!e.expressionResultIsUnused(t))){var m=x_(t);m&&!Pa(m)||pn(t,e.Diagnostics.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}return f}(t);case 229:return function(e){return e.isSpread?qu(e.type,Me):e.type}(t);case 286:return ch(t,i);case 276:case 277:return function(e,t){return Lx(e),nh(e)||Se}(t);case 280:return function(t){ah(t.openingFragment);var r=e.getSourceFileOfNode(t);return!e.getJSXTransformEnabled(J)||!J.jsxFactory&&!r.pragmas.has("jsx")||J.jsxFragmentFactory||r.pragmas.has("jsxfrag")||pn(t,J.jsxFactory?e.Diagnostics.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:e.Diagnostics.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),V_(t),nh(t)||Se}(t);case 284:return K_(t,i);case 278:e.Debug.fail("Shouldn't ever directly check a JsxOpeningElement")}return Ee}function gb(t,r){_b(t,r),t.thenStatement&&e.isBlock(t.thenStatement)&&t.thenStatement.statements&&hb(t.thenStatement.statements,r),t.elseStatement&&(e.isIfStatement(t.elseStatement)&&gb(t.elseStatement,r),e.isBlock(t.elseStatement)&&t.elseStatement.statements&&hb(t.elseStatement.statements,r))}function _b(e,t){e.expression&&mb(e.expression,t),e.getChildren().forEach((function(e){return _b(e,t)}))}function hb(t,r){t.length&&t.forEach((function(t){e.isIfStatement(t)?gb(t,r):t.expression&&mb(t.expression,r)}))}function yb(t){t.expression&&dw(t.expression,e.Diagnostics.Type_expected),Rx(t.constraint),Rx(t.default);var n=qo(Ai(t));Qs(n),function(e){return rc(e)!==ut}(n)||pn(t.default,e.Diagnostics.Type_parameter_0_has_a_circular_default,da(n));var i=Ws(n),a=nc(n);i&&a&&pp(a,ls(Wd(i,Ad(n,a)),a),t.default,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1),r&&cx(t.name,e.Diagnostics.Type_parameter_name_cannot_be_0)}function vb(t){zS(t),bk(t);var r=e.getContainingFunction(t);e.hasSyntacticModifier(t,92)&&(167===r.kind&&e.nodeIsPresent(r.body)||pn(t,e.Diagnostics.A_parameter_property_is_only_allowed_in_a_constructor_implementation),167===r.kind&&e.isIdentifier(t.name)&&"constructor"===t.name.escapedText&&pn(t.name,e.Diagnostics.constructor_cannot_be_used_as_a_parameter_property_name)),t.questionToken&&e.isBindingPattern(t.name)&&r.body&&pn(t,e.Diagnostics.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),t.name&&e.isIdentifier(t.name)&&("this"===t.name.escapedText||"new"===t.name.escapedText)&&(0!==r.parameters.indexOf(t)&&pn(t,e.Diagnostics.A_0_parameter_must_be_the_first_parameter,t.name.escapedText),167!==r.kind&&171!==r.kind&&176!==r.kind||pn(t,e.Diagnostics.A_constructor_cannot_have_a_this_parameter),210===r.kind&&pn(t,e.Diagnostics.An_arrow_function_cannot_have_a_this_parameter),168!==r.kind&&169!==r.kind||pn(t,e.Diagnostics.get_and_set_accessors_cannot_declare_this_parameters)),!t.dotDotDotToken||e.isBindingPattern(t.name)||cp(uc(_o(t.symbol)),Pt)||pn(t,e.Diagnostics.A_rest_parameter_must_be_of_an_array_type)}function bb(t,r,n){for(var i=0,a=t.elements;i<a.length;i++){var o=a[i];if(!e.isOmittedExpression(o)){var s=o.name;if(78===s.kind&&s.escapedText===n)return pn(r,e.Diagnostics.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,n),!0;if((198===s.kind||197===s.kind)&&bb(s,r,n))return!0}}}function kb(t){172===t.kind?function(t){zS(t)||function(t){var r=t.parameters[0];if(1!==t.parameters.length)return fw(r?r.name:t,e.Diagnostics.An_index_signature_must_have_exactly_one_parameter);if(qS(t.parameters,e.Diagnostics.An_index_signature_cannot_have_a_trailing_comma),r.dotDotDotToken)return fw(r.dotDotDotToken,e.Diagnostics.An_index_signature_cannot_have_a_rest_parameter);if(e.hasEffectiveModifiers(r))return fw(r.name,e.Diagnostics.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(r.questionToken)return fw(r.questionToken,e.Diagnostics.An_index_signature_parameter_cannot_have_a_question_mark);if(r.initializer)return fw(r.name,e.Diagnostics.An_index_signature_parameter_cannot_have_an_initializer);if(!r.type)return fw(r.name,e.Diagnostics.An_index_signature_parameter_must_have_a_type_annotation);if(148!==r.type.kind&&145!==r.type.kind){var n=xd(r.type);return 4&n.flags||8&n.flags?fw(r.name,e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead,e.getTextOfNode(r.name),da(n),da(t.type?xd(t.type):Se)):1048576&n.flags&&Lv(n,384,!0)?fw(r.name,e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead):fw(r.name,e.Diagnostics.An_index_signature_parameter_type_must_be_either_string_or_number)}if(!t.type)return fw(t,e.Diagnostics.An_index_signature_must_have_a_type_annotation)}(t)}(t):175!==t.kind&&253!==t.kind&&176!==t.kind&&170!==t.kind&&167!==t.kind&&171!==t.kind||HS(t);var n=e.getFunctionFlags(t);if(4&n||(!(3&~n)&&V<99&&jS(t,6144),2==(3&n)&&V<4&&jS(t,64),3&n&&V<2&&jS(t,128)),lx(t.typeParameters),e.forEach(t.parameters,vb),t.type&&Rx(t.type),r){!function(t){if(V>=2||!e.hasRestParameter(t)||8388608&t.flags||e.nodeIsMissing(t.body))return;e.forEach(t.parameters,(function(t){t.name&&!e.isBindingPattern(t.name)&&t.name.escapedText===se.escapedName&&dn("noEmit",t,e.Diagnostics.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)}))}(t);var i=e.getEffectiveReturnTypeNode(t);if(X&&!i)switch(t.kind){case 171:pn(t,e.Diagnostics.Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break;case 170:pn(t,e.Diagnostics.Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type)}if(i){var a=e.getFunctionFlags(t);if(1==(5&a)){var o=xd(i);if(o===Ve)pn(i,e.Diagnostics.A_generator_cannot_have_a_void_type_annotation);else{var s=tx(0,o,!!(2&a))||Se;pp(bv(s,tx(1,o,!!(2&a))||s,tx(2,o,!!(2&a))||Ae,!!(2&a)),o,i)}}else 2==(3&a)&&function(t,r){var n=xd(r);if(V>=2){if(n===Ee)return;var i=Il(!0);if(i!==st&&!ho(n,i))return void pn(r,e.Diagnostics.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,da(Ub(n)||Ve))}else{if(function(t){Vb(t&&e.getEntityNameFromTypeNode(t))}(r),n===Ee)return;var a=e.getEntityNameFromTypeNode(r);if(void 0===a)return void pn(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,da(n));var o=fi(a,111551,!0),s=o?_o(o):Ee;if(s===Ee)return void(78===a.kind&&"Promise"===a.escapedText&&yo(n)===Il(!1)?pn(r,e.Diagnostics.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):pn(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,e.entityNameToString(a)));var c=(d=!0,Bt||(Bt=Al("PromiseConstructorLike",0,d))||nt);if(c===nt)return void pn(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,e.entityNameToString(a));if(!pp(s,c,r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value))return;var l=a&&e.getFirstIdentifier(a),u=Nn(t.locals,l.escapedText,111551);if(u)return void pn(u.valueDeclaration,e.Diagnostics.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,e.idText(l),e.entityNameToString(a))}var d;zb(n,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)}(t,i)}172!==t.kind&&311!==t.kind&&Qb(t)}}function xb(t){for(var r=new e.Map,n=0,i=t.members;n<i.length;n++){var a=i[n];if(163===a.kind){var o=void 0,s=a.name;switch(s.kind){case 10:case 8:o=s.text;break;case 78:o=e.idText(s);break;default:continue}r.get(o)?(pn(e.getNameOfDeclaration(a.symbol.valueDeclaration),e.Diagnostics.Duplicate_identifier_0,o),pn(a.name,e.Diagnostics.Duplicate_identifier_0,o)):r.set(o,!0)}}}function Sb(t){if(256===t.kind){var r=Ai(t);if(r.declarations.length>0&&r.declarations[0]!==t)return}var n=Yc(Ai(t));if(n)for(var i=!1,a=!1,o=0,s=n.declarations;o<s.length;o++){var c=s[o];if(1===c.parameters.length&&c.parameters[0].type)switch(c.parameters[0].type.kind){case 148:a?pn(c,e.Diagnostics.Duplicate_string_index_signature):a=!0;break;case 145:i?pn(c,e.Diagnostics.Duplicate_number_index_signature):i=!0}}}function wb(t){if(zS(t)||function(t){if(e.isClassLike(t.parent)){if(e.isStringLiteral(t.name)&&"constructor"===t.name.text)return fw(t.name,e.Diagnostics.Classes_may_not_have_a_field_named_constructor);if(rw(t.name,e.Diagnostics.A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(V<2&&e.isPrivateIdentifier(t.name))return fw(t.name,e.Diagnostics.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher)}else if(256===t.parent.kind){if(rw(t.name,e.Diagnostics.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(t.initializer)return fw(t.initializer,e.Diagnostics.An_interface_property_cannot_have_an_initializer)}else if(178===t.parent.kind){if(rw(t.name,e.Diagnostics.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(t.initializer)return fw(t.initializer,e.Diagnostics.A_type_literal_property_cannot_have_an_initializer)}8388608&t.flags&&aw(t);if(e.isPropertyDeclaration(t)&&t.exclamationToken&&(!e.isClassLike(t.parent)||!t.type||t.initializer||8388608&t.flags||e.hasSyntacticModifier(t,160))){var r=t.initializer?e.Diagnostics.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:t.type?e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context:e.Diagnostics.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return fw(t.exclamationToken,r)}}(t)||YS(t.name),bk(t),e.isPrivateIdentifier(t.name)&&V<99)for(var r=e.getEnclosingBlockScopeContainer(t);r;r=e.getEnclosingBlockScopeContainer(r))Cn(r).flags|=67108864}function Db(t){if(!t.virtual){kb(t),function(t){var r=e.isInJSFile(t)?e.getJSDocTypeParameterDeclarations(t):void 0,n=t.typeParameters||r&&e.firstOrUndefined(r);if(n){var i=n.pos===n.end?n.pos:e.skipTrivia(e.getSourceFileOfNode(t).text,n.pos);return pw(t,i,n.end-i,e.Diagnostics.Type_parameters_cannot_appear_on_a_constructor_declaration)}}(t)||function(t){var r=e.getEffectiveReturnTypeNode(t);if(r)fw(r,e.Diagnostics.Type_annotation_cannot_appear_on_a_constructor_declaration)}(t),Rx(t.body);var n=Ai(t);if(t===e.getDeclarationOfKind(n,t.kind)&&Mb(n),!e.nodeIsMissing(t.body)&&r){var i=t.parent;if(e.getClassExtendsHeritageElement(i)){Hg(t.parent,i);var a=Wg(i),o=Kg(t.body);if(o){if(a&&pn(o,e.Diagnostics.A_constructor_cannot_contain_a_super_call_when_its_class_extends_null),(99!==J.target||!J.useDefineForClassFields)&&(e.some(t.parent.members,(function(t){return!!e.isPrivateIdentifierPropertyDeclaration(t)||164===t.kind&&!e.hasSyntacticModifier(t,32)&&!!t.initializer}))||e.some(t.parameters,(function(t){return e.hasSyntacticModifier(t,92)})))){for(var s=void 0,c=0,l=t.body.statements;c<l.length;c++){var u=l[c];if(235===u.kind&&e.isSuperCall(u.expression)){s=u;break}if(!e.isPrologueDirective(u))break}s||pn(t,e.Diagnostics.A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_properties_parameter_properties_or_private_identifiers)}}else a||pn(t,e.Diagnostics.Constructors_for_derived_classes_must_contain_a_super_call)}}}}function Eb(t){if(r){if(HS(t)||function(t){if(!(8388608&t.flags)){if(V<1)return fw(t.name,e.Diagnostics.Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher);if(void 0===t.body&&!e.hasSyntacticModifier(t,128))return pw(t,t.end-1,1,e.Diagnostics._0_expected,"{")}if(t.body&&e.hasSyntacticModifier(t,128))return fw(t,e.Diagnostics.An_abstract_accessor_cannot_have_an_implementation);if(t.typeParameters)return fw(t.name,e.Diagnostics.An_accessor_cannot_have_type_parameters);if(!function(e){return tw(e)||e.parameters.length===(168===e.kind?0:1)}(t))return fw(t.name,168===t.kind?e.Diagnostics.A_get_accessor_cannot_have_parameters:e.Diagnostics.A_set_accessor_must_have_exactly_one_parameter);if(169===t.kind){if(t.type)return fw(t.name,e.Diagnostics.A_set_accessor_cannot_have_a_return_type_annotation);var r=e.Debug.checkDefined(e.getSetAccessorValueParameter(t),"Return value does not match parameter count assertion.");if(r.dotDotDotToken)return fw(r.dotDotDotToken,e.Diagnostics.A_set_accessor_cannot_have_rest_parameter);if(r.questionToken)return fw(r.questionToken,e.Diagnostics.A_set_accessor_cannot_have_an_optional_parameter);if(r.initializer)return fw(t.name,e.Diagnostics.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}(t)||YS(t.name),$b(t),kb(t),168===t.kind&&!(8388608&t.flags)&&e.nodeIsPresent(t.body)&&256&t.flags&&(512&t.flags||pn(t.name,e.Diagnostics.A_get_accessor_must_return_a_value)),159===t.name.kind&&M_(t.name),e.isPrivateIdentifier(t.name)&&pn(t.name,e.Diagnostics.An_accessor_cannot_be_named_with_a_private_identifier),ns(t)){var n=168===t.kind?169:168,i=e.getDeclarationOfKind(Ai(t),n);if(i){var a=e.getEffectiveModifierFlags(t),o=e.getEffectiveModifierFlags(i);(28&a)!=(28&o)&&pn(t.name,e.Diagnostics.Getter_and_setter_accessors_do_not_agree_in_visibility),(128&a)!=(128&o)&&pn(t.name,e.Diagnostics.Accessors_must_both_be_abstract_or_non_abstract),Tb(t,i,so,e.Diagnostics.get_and_set_accessor_must_have_the_same_type),Tb(t,i,co,e.Diagnostics.get_and_set_accessor_must_have_the_same_this_type)}}var s=lo(Ai(t));168===t.kind&&Ev(t,s)}Rx(t.body)}function Tb(e,t,r,n){var i=r(e),a=r(t);i&&a&&!np(i,a)&&pn(e,n)}function Cb(t,r){return Pc(e.map(t.typeArguments,xd),r,Nc(r),e.isInJSFile(t))}function Ab(t,r){for(var n,i,a=!0,o=0;o<r.length;o++){var s=Ws(r[o]);s&&(n||(i=Td(r,n=Cb(t,r))),a=a&&pp(n[o],Wd(s,i),t.typeArguments[o],e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1))}return a}function Nb(t){var r=Sl(t);if(r!==Ee){var n=Cn(t).resolvedSymbol;if(n)return 524288&n.flags&&Tn(n).typeParameters||(4&e.getObjectFlags(r)?r.target.localTypeParameters:void 0)}}function Pb(t){KS(t,t.typeArguments),174!==t.kind||void 0===t.typeName.jsdocDotPos||e.isInJSFile(t)||e.isInJSDoc(t)||pw(t,t.typeName.jsdocDotPos,1,e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments),e.forEach(t.typeArguments,Rx);var n=Sl(t);if(n!==Ee){if(t.typeArguments&&r){var i=Nb(t);i&&Ab(t,i)}var a=Cn(t).resolvedSymbol;a&&(e.some(a.declarations,(function(e){return Vx(e)&&!!(134217728&e.flags)}))&&hn(qy(t),a.declarations,a.escapedName),32&n.flags&&8&a.flags&&pn(t,e.Diagnostics.Enum_type_0_has_members_with_initializers_that_are_not_literals,da(n)))}}function Ib(t,r){if(!(8388608&t.flags))return t;var n=t.objectType,i=t.indexType;if(cp(i,Su(n,!1)))return 203===r.kind&&e.isAssignmentTarget(r)&&32&e.getObjectFlags(n)&&1&Ls(n)&&pn(r,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,da(n)),t;var a=ac(n);if(bc(a,1)&&Mv(i,296))return t;if(Ru(n)){var o=Au(i,r);if(o){var s=cg(a,(function(e){return gc(e,o)}));if(s&&24&e.getDeclarationModifierFlagsFromSymbol(s))return pn(r,e.Diagnostics.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,e.unescapeLeadingUnderscores(o)),Ee}}return pn(r,e.Diagnostics.Type_0_cannot_be_used_to_index_type_1,da(i),da(n)),Ee}function Fb(t){!function(t){if(152===t.operator){if(149!==t.type.kind)return fw(t.type,e.Diagnostics._0_expected,e.tokenToString(149));var r=e.walkUpParenthesizedTypes(t.parent);switch(e.isInJSFile(r)&&e.isJSDocTypeExpression(r)&&(r=r.parent,e.isJSDocTypeTag(r)&&(r=r.parent.parent)),r.kind){case 251:var n=r;if(78!==n.name.kind)return fw(t,e.Diagnostics.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!e.isVariableDeclarationInVariableStatement(n))return fw(t,e.Diagnostics.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(2&n.parent.flags))return fw(r.name,e.Diagnostics.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 164:if(!e.hasSyntacticModifier(r,32)||!e.hasEffectiveModifier(r,64))return fw(r.name,e.Diagnostics.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 163:if(!e.hasSyntacticModifier(r,64))return fw(r.name,e.Diagnostics.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:fw(t,e.Diagnostics.unique_symbol_types_are_not_allowed_here)}}else if(143===t.operator&&179!==t.type.kind&&180!==t.type.kind)dw(t,e.Diagnostics.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,e.tokenToString(149))}(t),Rx(t.type)}function Ob(t){return(e.hasEffectiveModifier(t,8)||e.isPrivateIdentifierPropertyDeclaration(t))&&!!(8388608&t.flags)}function Rb(t,r){var n=e.getCombinedModifierFlags(t);return 256!==t.parent.kind&&254!==t.parent.kind&&223!==t.parent.kind&&8388608&t.flags&&(2&n||e.isModuleBlock(t.parent)&&e.isModuleDeclaration(t.parent.parent)&&e.isGlobalScopeAugmentation(t.parent.parent)||(n|=1),n|=2),n&r}function Mb(t){if(r){for(var n,i,a,o=0,s=155,c=!1,l=!0,u=!1,d=t.declarations,p=!!(16384&t.flags),f=!1,m=!1,g=!1,_=[],h=0,y=d;h<y.length;h++){var v=y[h],b=8388608&v.flags,k=v.parent&&(256===v.parent.kind||178===v.parent.kind)||b;if(k&&(a=void 0),254!==v.kind&&223!==v.kind||b||(g=!0),253===v.kind||166===v.kind||165===v.kind||167===v.kind){_.push(v);var x=Rb(v,155);o|=x,s&=x,c=c||e.hasQuestionToken(v),l=l&&e.hasQuestionToken(v);var S=e.nodeIsPresent(v.body);S&&n?p?m=!0:f=!0:(null==a?void 0:a.parent)===v.parent&&a.end!==v.pos&&N(a),S?n||(n=v):u=!0,a=v,k||(i=v)}}if(m&&e.forEach(_,(function(t){pn(t,e.Diagnostics.Multiple_constructor_implementations_are_not_allowed)})),f&&e.forEach(_,(function(t){pn(e.getNameOfDeclaration(t)||t,e.Diagnostics.Duplicate_function_implementation)})),g&&!p&&16&t.flags&&e.forEach(d,(function(r){wn(r,e.Diagnostics.Duplicate_identifier_0,e.symbolName(t),d)})),!i||i.body||e.hasSyntacticModifier(i,128)||i.questionToken||N(i),u&&(function(t,r,n,i,a){if(i^a){var o=Rb(A(t,r),n);e.forEach(t,(function(t){var r=Rb(t,n)^o;1&r?pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_exported_or_non_exported):2&r?pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_ambient_or_non_ambient):24&r?pn(e.getNameOfDeclaration(t)||t,e.Diagnostics.Overload_signatures_must_all_be_public_private_or_protected):128&r&&pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_abstract_or_non_abstract)}))}}(d,n,155,o,s),function(t,r,n,i){if(n!==i){var a=e.hasQuestionToken(A(t,r));e.forEach(t,(function(t){e.hasQuestionToken(t)!==a&&pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_optional_or_required)}))}}(d,n,c,l),n))for(var w=Rc(t),D=Ic(n),E=0,T=w;E<T.length;E++){var C=T[E];if(!wp(D,C)){e.addRelatedInfo(pn(C.declaration,e.Diagnostics.This_overload_signature_is_not_compatible_with_its_implementation_signature),e.createDiagnosticForNode(n,e.Diagnostics.The_implementation_signature_is_declared_here));break}}}function A(e,t){return void 0!==t&&t.parent===e[0].parent?t:e[0]}function N(t){if(!t.name||!e.nodeIsMissing(t.name)){var r=!1,n=e.forEachChild(t.parent,(function(e){if(r)return e;r=e===t}));if(n&&n.pos===t.end&&n.kind===t.kind){var i=n.name||n,a=n.name;if(t.name&&a&&(e.isPrivateIdentifier(t.name)&&e.isPrivateIdentifier(a)&&t.name.escapedText===a.escapedText||e.isComputedPropertyName(t.name)&&e.isComputedPropertyName(a)||e.isPropertyNameLiteral(t.name)&&e.isPropertyNameLiteral(a)&&e.getEscapedTextOfIdentifierOrLiteral(t.name)===e.getEscapedTextOfIdentifierOrLiteral(a))){if((166===t.kind||165===t.kind)&&e.hasSyntacticModifier(t,32)!==e.hasSyntacticModifier(n,32))pn(i,e.hasSyntacticModifier(t,32)?e.Diagnostics.Function_overload_must_be_static:e.Diagnostics.Function_overload_must_not_be_static);return}if(e.nodeIsPresent(n.body))return void pn(i,e.Diagnostics.Function_implementation_name_must_be_0,e.declarationNameToString(t.name))}var o=t.name||t;p?pn(o,e.Diagnostics.Constructor_implementation_is_missing):e.hasSyntacticModifier(t,128)?pn(o,e.Diagnostics.All_declarations_of_an_abstract_method_must_be_consecutive):pn(o,e.Diagnostics.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}}}function Lb(t){if(r){var n=t.localSymbol;if((n||(n=Ai(t)).exportSymbol)&&e.getDeclarationOfKind(n,t.kind)===t){for(var i=0,a=0,o=0,s=0,c=n.declarations;s<c.length;s++){var l=h(g=c[s]),u=Rb(g,513);1&u?512&u?o|=l:i|=l:a|=l}var d=i&a,p=o&(i|a);if(d||p)for(var f=0,m=n.declarations;f<m.length;f++){l=h(g=m[f]);var g,_=e.getNameOfDeclaration(g);l&p?pn(_,e.Diagnostics.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,e.declarationNameToString(_)):l&d&&pn(_,e.Diagnostics.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,e.declarationNameToString(_))}}}function h(t){var r=t;switch(r.kind){case 256:case 257:case 334:case 327:case 328:return 2;case 259:return e.isAmbientModule(r)||0!==e.getModuleInstanceState(r)?5:4;case 254:case 255:case 258:case 294:return 3;case 300:return 7;case 269:if(!e.isEntityNameExpression(r.expression))return 1;r=r.expression;case 263:case 266:case 265:var n=0,i=ai(Ai(r));return e.forEach(i.declarations,(function(e){n|=h(e)})),n;case 251:case 199:case 253:case 268:case 78:return 1;default:return e.Debug.failBadSyntaxKind(r)}}}function jb(e,t,r,n){var i=Bb(e,t);return i&&Ub(i,t,r,n)}function Bb(t,r){if(!Pa(t)){var n=t;if(n.promisedTypeOfPromise)return n.promisedTypeOfPromise;if(ho(t,Il(!1)))return n.promisedTypeOfPromise=ll(t)[0];var i=Na(t,"then");if(!Pa(i)){var a=i?hc(i,0):e.emptyArray;if(0!==a.length){var o=Hm(ou(e.map(a,dv)),2097152);if(!Pa(o)){var s=hc(o,0);if(0!==s.length)return n.promisedTypeOfPromise=ou(e.map(s,dv),2);r&&pn(r,e.Diagnostics.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback)}}else r&&pn(r,e.Diagnostics.A_promise_must_have_a_then_method)}}}function zb(e,t,r,n){return Ub(e,t,r,n)||Ee}function Ub(e,t,r,n){if(Pa(e))return e;var i=e;return i.awaitedTypeOfType?i.awaitedTypeOfType:i.awaitedTypeOfType=pg(e,t?function(e){return qb(e,t,r,n)}:qb)}function qb(t,r,n,i){var a=t;if(a.awaitedTypeOfType)return a.awaitedTypeOfType;var o=Bb(t);if(o){if(t.id===o.id||Xr.lastIndexOf(o.id)>=0)return void(r&&pn(r,e.Diagnostics.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method));Xr.push(t.id);var s=Ub(o,r,n,i);if(Xr.pop(),!s)return;return a.awaitedTypeOfType=s}if(!function(e){var t=Na(e,"then");return!!t&&hc(Hm(t,2097152),0).length>0}(t))return a.awaitedTypeOfType=t;if(r){if(!n)return e.Debug.fail();pn(r,n,i)}}function Jb(t){var r=Iy(t);Uy(r,t);var n=Bc(r);if(!(1&n.flags)){var i,a,o=Ty(t);switch(t.parent.kind){case 254:case 255:i=ou([_o(Ai(t.parent)),Ve]);break;case 161:i=Ve,a=e.chainDiagnosticMessages(void 0,e.Diagnostics.The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any);break;case 164:i=Ve,a=e.chainDiagnosticMessages(void 0,e.Diagnostics.The_return_type_of_a_property_decorator_function_must_be_either_void_or_any);break;case 166:case 168:case 169:i=ou([Ll(Xx(t.parent)),Ve]);break;default:return e.Debug.fail()}pp(n,i,t,o,(function(){return a}))}}function Vb(t){if(t){var r=e.getFirstIdentifier(t),n=2097152|(78===t.kind?788968:1920),i=Fn(r,r.escapedText,n,void 0,void 0,!0);i&&2097152&i.flags&&Mi(i)&&!mS(ai(i))&&!ci(i)&&ui(i)}}function Hb(t){var r=Kb(t);r&&e.isEntityName(r)&&Vb(r)}function Kb(e){if(e)switch(e.kind){case 184:case 183:return Wb(e.types);case 185:return Wb([e.trueType,e.falseType]);case 187:case 193:return Kb(e.type);case 174:return e.typeName}}function Wb(t){for(var r,n=0,i=t;n<i.length;n++){for(var a=i[n];187===a.kind||193===a.kind;)a=a.type;if(142!==a.kind&&(W||(192!==a.kind||104!==a.literal.kind)&&151!==a.kind)){var o=Kb(a);if(!o)return;if(r){if(!e.isIdentifier(r)||!e.isIdentifier(o)||r.escapedText!==o.escapedText)return}else r=o}}return r}function Gb(t){var r=e.getEffectiveTypeAnnotationNode(t);return e.isRestParameter(t)?e.getRestParameterElementType(r):r}function $b(t){if(t.decorators&&(t.decorators.forEach((function(t){t.expression&&e.isIdentifier(t.expression)&&Vg(t.expression)})),e.nodeCanBeDecorated(t,t.parent,t.parent.parent))){J.experimentalDecorators||pn(t,e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning);var r=t.decorators[0];if(jS(r,8),161===t.kind&&jS(r,32),J.emitDecoratorMetadata)switch(jS(r,16),t.kind){case 254:var n=e.getFirstConstructorWithBody(t);if(n)for(var i=0,a=n.parameters;i<a.length;i++){Hb(Gb(a[i]))}break;case 168:case 169:var o=168===t.kind?169:168,s=e.getDeclarationOfKind(Ai(t),o);Hb(oo(t)||s&&oo(s));break;case 166:for(var c=0,l=t.parameters;c<l.length;c++){Hb(Gb(l[c]))}Hb(e.getEffectiveReturnTypeNode(t));break;case 164:Hb(e.getEffectiveTypeAnnotationNode(t));break;case 161:Hb(Gb(t));for(var u=0,d=t.parent.parameters;u<d.length;u++){Hb(Gb(d[u]))}}e.forEach(t.decorators,Jb)}}function Yb(e){switch(e.kind){case 78:return e;case 202:return e.name;default:return}}function Xb(t){$b(t),kb(t);var n=e.getFunctionFlags(t);if(t.name&&159===t.name.kind&&M_(t.name),ns(t)){var i=Ai(t),a=t.localSymbol||i,o=e.find(a.declarations,(function(e){return e.kind===t.kind&&!(131072&e.flags)}));t===o&&Mb(a),i.parent&&Mb(i)}var s=165===t.kind?void 0:t.body;if(Rx(s),Ev(t,zc(t)),r&&!e.getEffectiveReturnTypeNode(t)&&(e.nodeIsMissing(s)&&!Ob(t)&&Gf(t,Se),1&n&&e.nodeIsPresent(s)&&Bc(Ic(t))),e.isInJSFile(t)){var c=e.getJSDocTypeTag(t);c&&c.typeExpression&&!E_(xd(c.typeExpression),t)&&pn(c.typeExpression.type,e.Diagnostics.The_type_of_a_function_declaration_must_match_the_function_s_signature)}}function Qb(t){if(r){var n=e.getSourceFileOfNode(t),i=Sr.get(n.path);i||(i=[],Sr.set(n.path,i)),i.push(t)}}function Zb(t,r){for(var n=0,i=t;n<i.length;n++){var a=i[n];switch(a.kind){case 254:case 223:case 255:rk(a,r),ik(a,r);break;case 300:case 259:case 232:case 261:case 239:case 240:case 241:lk(a,r);break;case 167:case 209:case 253:case 210:case 166:case 168:case 169:a.body&&lk(a,r),ik(a,r);break;case 165:case 170:case 171:case 175:case 176:case 257:case 256:ik(a,r);break;case 186:nk(a,r);break;default:e.Debug.assertNever(a,"Node should not have been registered for unused identifiers check")}}}function ek(t,r,n){var i=e.getNameOfDeclaration(t)||t,a=Vx(t)?e.Diagnostics._0_is_declared_but_never_used:e.Diagnostics._0_is_declared_but_its_value_is_never_read;n(t,0,e.createDiagnosticForNode(i,a,r))}function tk(t){return e.isIdentifier(t)&&95===e.idText(t).charCodeAt(0)}function rk(t,r){for(var n=0,i=t.members;n<i.length;n++){var a=i[n];switch(a.kind){case 166:case 164:case 168:case 169:if(169===a.kind&&32768&a.symbol.flags)break;var o=Ai(a);o.isReferenced||!(e.hasEffectiveModifier(a,8)||e.isNamedDeclaration(a)&&e.isPrivateIdentifier(a.name))||8388608&a.flags||r(a,0,e.createDiagnosticForNode(a.name,e.Diagnostics._0_is_declared_but_its_value_is_never_read,la(o)));break;case 167:for(var s=0,c=a.parameters;s<c.length;s++){var l=c[s];!l.symbol.isReferenced&&e.hasSyntacticModifier(l,8)&&r(l,0,e.createDiagnosticForNode(l.name,e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read,e.symbolName(l.symbol)))}break;case 172:case 231:break;default:e.Debug.fail()}}}function nk(t,r){var n=t.typeParameter;ak(n)&&r(t,1,e.createDiagnosticForNode(t,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.idText(n.name)))}function ik(t,r){if(e.last(Ai(t).declarations)===t)for(var n=e.getEffectiveTypeParameterDeclarations(t),i=new e.Set,a=0,o=n;a<o.length;a++){var s=o[a];if(ak(s)){var c=e.idText(s.name),l=s.parent;if(186!==l.kind&&l.typeParameters.every(ak)){if(e.tryAddToSet(i,l)){var u=e.getSourceFileOfNode(l),d=e.isJSDocTemplateTag(l)?e.rangeOfNode(l):e.rangeOfTypeParameters(u,l.typeParameters),p=1===l.typeParameters.length,f=p?e.Diagnostics._0_is_declared_but_its_value_is_never_read:e.Diagnostics.All_type_parameters_are_unused,m=p?c:void 0;r(s,1,e.createFileDiagnostic(u,d.pos,d.end-d.pos,f,m))}}else r(s,1,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_but_its_value_is_never_read,c))}}}function ak(e){return!(262144&Ci(e.symbol).isReferenced||tk(e.name))}function ok(e,t,r,n){var i=String(n(t)),a=e.get(i);a?a[1].push(r):e.set(i,[t,[r]])}function sk(t){return e.tryCast(e.getRootDeclaration(t),e.isParameter)}function ck(t){return e.isBindingElement(t)?e.isObjectBindingPattern(t.parent)?!(!t.propertyName||!tk(t.name)):tk(t.name):e.isAmbientModule(t)||(e.isVariableDeclaration(t)&&e.isForInOrOfStatement(t.parent.parent)||dk(t))&&tk(t.name)}function lk(t,r){var n=new e.Map,i=new e.Map,a=new e.Map;t.locals.forEach((function(t){var o;if(!(262144&t.flags?!(3&t.flags)||3&t.isReferenced:t.isReferenced||t.exportSymbol))for(var s=0,c=t.declarations;s<c.length;s++){var l=c[s];if(!ck(l))if(dk(l))ok(n,265===(o=l).kind?o:266===o.kind?o.parent:o.parent.parent,l,O);else if(e.isBindingElement(l)&&e.isObjectBindingPattern(l.parent)){l!==e.last(l.parent.elements)&&e.last(l.parent.elements).dotDotDotToken||ok(i,l.parent,l,O)}else if(e.isVariableDeclaration(l))ok(a,l.parent,l,O);else{var u=t.valueDeclaration&&sk(t.valueDeclaration),d=t.valueDeclaration&&e.getNameOfDeclaration(t.valueDeclaration);u&&d?e.isParameterPropertyDeclaration(u,u.parent)||e.parameterIsThisKeyword(u)||tk(d)||(e.isBindingElement(l)&&e.isArrayBindingPattern(l.parent)?ok(i,l.parent,l,O):r(u,1,e.createDiagnosticForNode(d,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.symbolName(t)))):ek(l,e.symbolName(t),r)}}})),n.forEach((function(t){var n=t[0],i=t[1],a=n.parent;if((n.name?1:0)+(n.namedBindings?266===n.namedBindings.kind?1:n.namedBindings.elements.length:0)===i.length)r(a,0,1===i.length?e.createDiagnosticForNode(a,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.idText(e.first(i).name)):e.createDiagnosticForNode(a,e.Diagnostics.All_imports_in_import_declaration_are_unused));else for(var o=0,s=i;o<s.length;o++){var c=s[o];ek(c,e.idText(c.name),r)}})),i.forEach((function(t){var n=t[0],i=t[1],o=sk(n.parent)?1:0;if(n.elements.length===i.length)1===i.length&&251===n.parent.kind&&252===n.parent.parent.kind?ok(a,n.parent.parent,n.parent,O):r(n,o,1===i.length?e.createDiagnosticForNode(n,e.Diagnostics._0_is_declared_but_its_value_is_never_read,uk(e.first(i).name)):e.createDiagnosticForNode(n,e.Diagnostics.All_destructured_elements_are_unused));else for(var s=0,c=i;s<c.length;s++){var l=c[s];r(l,o,e.createDiagnosticForNode(l,e.Diagnostics._0_is_declared_but_its_value_is_never_read,uk(l.name)))}})),a.forEach((function(t){var n=t[0],i=t[1];if(n.declarations.length===i.length)r(n,0,1===i.length?e.createDiagnosticForNode(e.first(i).name,e.Diagnostics._0_is_declared_but_its_value_is_never_read,uk(e.first(i).name)):e.createDiagnosticForNode(234===n.parent.kind?n.parent:n,e.Diagnostics.All_variables_are_unused));else for(var a=0,o=i;a<o.length;a++){var s=o[a];r(s,0,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_but_its_value_is_never_read,uk(s.name)))}}))}function uk(t){switch(t.kind){case 78:return e.idText(t);case 198:case 197:return uk(e.cast(e.first(t.elements),e.isBindingElement).name);default:return e.Debug.assertNever(t)}}function dk(e){return 265===e.kind||268===e.kind||266===e.kind}function pk(t){if(232===t.kind&&gw(t),e.isFunctionOrModuleBlock(t)){var r=Tr;e.forEach(t.statements,Rx),Tr=r}else e.forEach(t.statements,Rx);t.locals&&Qb(t)}function fk(t,r,n){if(!r||r.escapedText!==n)return!1;if(164===t.kind||163===t.kind||166===t.kind||165===t.kind||168===t.kind||169===t.kind)return!1;if(8388608&t.flags)return!1;var i=e.getRootDeclaration(t);return 161!==i.kind||!e.nodeIsMissing(i.parent.body)}function mk(t){e.findAncestor(t,(function(r){return!!(4&kS(r))&&(78!==t.kind?pn(e.getNameOfDeclaration(t),e.Diagnostics.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):pn(t,e.Diagnostics.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0)}))}function gk(t){e.findAncestor(t,(function(r){return!!(8&kS(r))&&(78!==t.kind?pn(e.getNameOfDeclaration(t),e.Diagnostics.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):pn(t,e.Diagnostics.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0)}))}function _k(t){67108864&kS(e.getEnclosingBlockScopeContainer(t))&&dn("noEmit",t,e.Diagnostics.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,"WeakMap")}function hk(t,r){if(!(H>=e.ModuleKind.ES2015)&&(fk(t,r,"require")||fk(t,r,"exports"))&&(!e.isModuleDeclaration(t)||1===e.getModuleInstanceState(t))){var n=Aa(t);300===n.kind&&e.isExternalOrCommonJsModule(n)&&dn("noEmit",r,e.Diagnostics.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,e.declarationNameToString(r),e.declarationNameToString(r))}}function yk(t,r){if(!(V>=4)&&fk(t,r,"Promise")&&(!e.isModuleDeclaration(t)||1===e.getModuleInstanceState(t))){var n=Aa(t);300===n.kind&&e.isExternalOrCommonJsModule(n)&&2048&n.flags&&dn("noEmit",r,e.Diagnostics.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,e.declarationNameToString(r),e.declarationNameToString(r))}}function vk(e){return e===we?Se:e===Nt?At:e}function bk(t){var r;if($b(t),e.isBindingElement(t)||Rx(t.type),t.name){if(159===t.name.kind&&(M_(t.name),t.initializer&&$v(t.initializer)),199===t.kind){197===t.parent.kind&&V<99&&jS(t,4),t.propertyName&&159===t.propertyName.kind&&M_(t.propertyName);var n=t.parent.parent,i=Ia(n),a=t.propertyName||t.name;if(i&&!e.isBindingPattern(a)){var o=vu(a);if(Zo(o)){var s=gc(i,is(o));s&&(Lh(s,void 0,!1),dh(n,!!n.initializer&&106===n.initializer.kind,i,s))}}}if(e.isBindingPattern(t.name)&&(198===t.name.kind&&V<2&&J.downlevelIteration&&jS(t,512),e.forEach(t.name.elements,Rx)),t.initializer&&e.isParameterDeclaration(t)&&e.nodeIsMissing(e.getContainingFunction(t).body))pn(t,e.Diagnostics.A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation);else if(e.isBindingPattern(t.name)){var c=t.initializer&&240!==t.parent.parent.kind,l=0===t.name.elements.length;if(c||l){var u=to(t);if(c){var d=$v(t.initializer);W&&l?bh(d,t):fp(d,to(t),t,t.initializer)}l&&(e.isArrayBindingPattern(t.name)?Ik(65,u,Ne,t):W&&bh(u,t))}}else{var p=Ai(t);if(2097152&p.flags&&e.isRequireVariableDeclaration(t,!0))Ex(t);else{var f=vk(_o(p));if(t===p.valueDeclaration){var m=e.getEffectiveInitializer(t);if(m)e.isInJSFile(t)&&e.isObjectLiteralExpression(m)&&(0===m.properties.length||e.isPrototypeAccess(t.name))&&!!(null===(r=p.exports)||void 0===r?void 0:r.size)||240===t.parent.parent.kind||fp($v(m),f,t,m,void 0);p.declarations.length>1&&e.some(p.declarations,(function(r){return r!==t&&e.isVariableLike(r)&&!xk(r,t)}))&&pn(t.name,e.Diagnostics.All_declarations_of_0_must_have_identical_modifiers,e.declarationNameToString(t.name))}else{var g=vk(to(t));f===Ee||g===Ee||np(f,g)||67108864&p.flags||kk(p.valueDeclaration,f,t,g),t.initializer&&fp($v(t.initializer),g,t,t.initializer,void 0),xk(t,p.valueDeclaration)||pn(t.name,e.Diagnostics.All_declarations_of_0_must_have_identical_modifiers,e.declarationNameToString(t.name))}164!==t.kind&&163!==t.kind&&(Lb(t),251!==t.kind&&199!==t.kind||function(t){if(!(3&e.getCombinedNodeFlags(t)||e.isParameterDeclaration(t))&&(251!==t.kind||t.initializer)){var r=Ai(t);if(1&r.flags){if(!e.isIdentifier(t.name))return e.Debug.fail();var n=Fn(t,t.name.escapedText,3,void 0,void 0,!1);if(n&&n!==r&&2&n.flags&&3&lh(n)){var i=e.getAncestor(n.valueDeclaration,252),a=234===i.parent.kind&&i.parent.parent?i.parent.parent:void 0;if(!a||!(232===a.kind&&e.isFunctionLike(a.parent)||260===a.kind||259===a.kind||300===a.kind)){var o=la(n);pn(t,e.Diagnostics.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,o,o)}}}}}(t),hk(t,t.name),yk(t,t.name),V<99&&fk(t,t.name,"WeakMap")&&Yr.push(t))}}}}function kk(t,r,n,i){var a=e.getNameOfDeclaration(n),o=164===n.kind||163===n.kind?e.Diagnostics.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:e.Diagnostics.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,s=e.declarationNameToString(a),c=pn(a,o,s,da(r),da(i));t&&e.addRelatedInfo(c,e.createDiagnosticForNode(t,e.Diagnostics._0_was_also_declared_here,s))}function xk(t,r){if(161===t.kind&&251===r.kind||251===t.kind&&161===r.kind)return!0;if(e.hasQuestionToken(t)!==e.hasQuestionToken(r))return!1;return e.getSelectedEffectiveModifierFlags(t,504)===e.getSelectedEffectiveModifierFlags(r,504)}function Sk(t){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkVariableDeclaration",{kind:t.kind,pos:t.pos,end:t.end}),function(t){if(240!==t.parent.parent.kind&&241!==t.parent.parent.kind)if(8388608&t.flags)aw(t);else if(!t.initializer){if(e.isBindingPattern(t.name)&&!e.isBindingPattern(t.parent))return fw(t,e.Diagnostics.A_destructuring_declaration_must_have_an_initializer);if(e.isVarConst(t))return fw(t,e.Diagnostics.const_declarations_must_be_initialized)}if(t.exclamationToken&&(234!==t.parent.parent.kind||!t.type||t.initializer||8388608&t.flags)){var r=t.initializer?e.Diagnostics.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:t.type?e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context:e.Diagnostics.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return fw(t.exclamationToken,r)}var n=e.getEmitModuleKind(J);n<e.ModuleKind.ES2015&&n!==e.ModuleKind.System&&!(8388608&t.parent.parent.flags)&&e.hasSyntacticModifier(t.parent.parent,1)&&ow(t.name);var i=e.isLet(t)||e.isVarConst(t);i&&sw(t.name)}(t),bk(t),null===e.tracing||void 0===e.tracing||e.tracing.pop()}function wk(t){return function(t){if(t.dotDotDotToken){var r=t.parent.elements;if(t!==e.last(r))return fw(t,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern);if(qS(r,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),t.propertyName)return fw(t.name,e.Diagnostics.A_rest_element_cannot_have_a_property_name)}if(t.dotDotDotToken&&t.initializer)pw(t,t.initializer.pos-1,1,e.Diagnostics.A_rest_element_cannot_have_an_initializer)}(t),bk(t)}function Dk(t){zS(t)||cw(t.declarationList)||function(t){if(!lw(t.parent)){if(e.isLet(t.declarationList))return fw(t,e.Diagnostics.let_declarations_can_only_be_declared_inside_a_block);if(e.isVarConst(t.declarationList))fw(t,e.Diagnostics.const_declarations_can_only_be_declared_inside_a_block)}}(t),e.forEach(t.declarationList.declarations,Rx)}function Ek(t,r,n){if(W){var i=e.isBinaryExpression(t)?t.right:t,a=e.isIdentifier(i)?i:e.isPropertyAccessExpression(i)?i.name:e.isBinaryExpression(i)&&e.isIdentifier(i.right)?i.right:void 0,o=e.isPropertyAccessExpression(i)&&e.isAssertionExpression(e.skipParentheses(i.expression));if(a&&!o)if(!Ef(r))if(0!==hc(r,0).length){var s=Yx(a);if(s){var c=e.isBinaryExpression(t.parent)&&function(t,r){for(;e.isBinaryExpression(t)&&55===t.operatorToken.kind;){if(e.forEachChild(t.right,(function t(n){if(e.isIdentifier(n)){var i=Yx(n);if(i&&i===r)return!0}return e.forEachChild(n,t)})))return!0;t=t.parent}return!1}(t.parent,s)||n&&function(t,r,n,i){return!!e.forEachChild(r,(function r(a){if(e.isIdentifier(a)){var o=Yx(a);if(o&&o===i){if(e.isIdentifier(t))return!0;for(var s=n.parent,c=a.parent;s&&c;){if(e.isIdentifier(s)&&e.isIdentifier(c)||108===s.kind&&108===c.kind)return Yx(s)===Yx(c);if(e.isPropertyAccessExpression(s)&&e.isPropertyAccessExpression(c)){if(Yx(s.name)!==Yx(c.name))return!1;c=c.expression,s=s.expression}else{if(!e.isCallExpression(s)||!e.isCallExpression(c))return!1;c=c.expression,s=s.expression}}}}return e.forEachChild(a,r)}))}(t,n,a,s);c||pn(i,e.Diagnostics.This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it_instead)}}}}function Tk(t,r){return 16384&t.flags&&pn(r,e.Diagnostics.An_expression_of_type_void_cannot_be_tested_for_truthiness),t}function Ck(e,t){return Tk(fb(e,t),e)}function Ak(t){ew(t);var r,n=gh(fb(t.expression));if(252===t.initializer.kind){var i=t.initializer.declarations[0];i&&e.isBindingPattern(i.name)&&pn(i.name,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern),Nk(t)}else{var a=t.initializer,o=fb(a);200===a.kind||201===a.kind?pn(a,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern):cp(131072&(r=wu(Su(n))).flags?Re:r,o)?Iv(a,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access):pn(a,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any)}n!==He&&Mv(n,126091264)||pn(t.expression,e.Diagnostics.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0,da(n)),Rx(t.statement),t.locals&&Qb(t)}function Nk(e){var t=e.initializer;t.declarations.length>=1&&Sk(t.declarations[0])}function Pk(e){return Ik(e.awaitModifier?15:13,fh(e.expression),Ne,e.expression)}function Ik(e,t,r,n){return Pa(t)?t:Fk(e,t,r,n,!0)||Se}function Fk(t,r,n,i,a){var o=!!(2&t);if(r!==He){var s=V>=2,c=!s&&J.downlevelIteration,l=J.noUncheckedIndexedAccess&&!!(128&t);if(s||c||o){var u=Bk(r,t,s?i:void 0);if(a&&u){var d=8&t?e.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:32&t?e.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:64&t?e.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:16&t?e.Diagnostics.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;d&&pp(n,u.nextType,i,d)}if(u||s)return l?$m(u&&u.yieldType):u&&u.yieldType}var p=r,f=!1,m=!1;if(4&t){if(1048576&p.flags){var g=r.types,_=e.filter(g,(function(e){return!(402653316&e.flags)}));_!==g&&(p=ou(_,2))}else 402653316&p.flags&&(p=He);if((m=p!==r)&&(V<1&&i&&(pn(i,e.Diagnostics.Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher),f=!0),131072&p.flags))return l?$m(Re):Re}if(!sf(p)){if(i&&!f){var h=Ok(t,0,r,void 0),y=4&t&&!m?c?[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:h?[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators,!1]:[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type,!0]:c?[e.Diagnostics.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:h?[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators,!1]:[e.Diagnostics.Type_0_is_not_an_array_type,!0],v=y[0];gn(i,y[1]&&!!jb(p),v,da(p))}return m?l?$m(Re):Re:void 0}var b=kc(p,1);return m&&b?402653316&b.flags&&!J.noUncheckedIndexedAccess?Re:ou(l?[b,Re,Ne]:[b,Re],2):128&t?$m(b):b}Kk(i,r,o)}function Ok(e,t,r,n){if(!Pa(r)){var i=Bk(r,e,n);return i&&i[z(t)]}}function Rk(e,t,r){if(void 0===e&&(e=He),void 0===t&&(t=He),void 0===r&&(r=Ae),67359327&e.flags&&180227&t.flags&&180227&r.flags){var n=nl([e,t,r]),i=mr.get(n);return i||(i={yieldType:e,returnType:t,nextType:r},mr.set(n,i)),i}return{yieldType:e,returnType:t,nextType:r}}function Mk(t){for(var r,n,i,a=0,o=t;a<o.length;a++){var s=o[a];if(void 0!==s&&s!==gr){if(s===_r)return _r;r=e.append(r,s.yieldType),n=e.append(n,s.returnType),i=e.append(i,s.nextType)}}return r||n||i?Rk(r&&ou(r),n&&ou(n),i&&fu(i)):gr}function Lk(e,t){return e[t]}function jk(e,t,r){return e[t]=r}function Bk(t,r,n){if(Pa(t))return _r;if(!(1048576&t.flags)){var i=Uk(t,r,n);return i===gr?void(n&&Kk(n,t,!!(2&r))):i}var a,o=2&r?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",s=Lk(t,o);if(s)return s===gr?void 0:s;for(var c=0,l=t.types;c<l.length;c++){var u=Uk(l[c],r,n);if(u===gr)return n&&Kk(n,t,!!(2&r)),void jk(t,o,gr);a=e.append(a,u)}var d=a?Mk(a):gr;return jk(t,o,d),d===gr?void 0:d}function zk(e,t){if(e===gr)return gr;if(e===_r)return _r;var r=e.yieldType,n=e.returnType,i=e.nextType;return Rk(Ub(r,t)||Se,Ub(n,t)||Se,i)}function Uk(e,t,r){if(Pa(e))return _r;var n;if(2&t&&(n=qk(e,vr)||Vk(e,vr)))return n;if(1&t&&(n=qk(e,br)||Vk(e,br))){if(!(2&t))return n;if(n!==gr)return jk(e,"iterationTypesOfAsyncIterable",zk(n,r))}if(2&t&&(n=Hk(e,vr,r))!==gr)return n;if(1&t&&(n=Hk(e,br,r))!==gr)return 2&t?jk(e,"iterationTypesOfAsyncIterable",n?zk(n,r):gr):n;return gr}function qk(e,t){return Lk(e,t.iterableCacheKey)}function Jk(e,t){var r=qk(e,t)||Hk(e,t,void 0);return r===gr?yr:r}function Vk(e,t){var r;if(ho(e,r=t.getGlobalIterableType(!1))||ho(e,r=t.getGlobalIterableIteratorType(!1))){var n=ll(e)[0],i=Jk(r,t),a=i.returnType,o=i.nextType;return jk(e,t.iterableCacheKey,Rk(n,a,o))}if(ho(e,t.getGlobalGeneratorType(!1))){var s=ll(e);n=s[0],a=s[1],o=s[2];return jk(e,t.iterableCacheKey,Rk(n,a,o))}}function Hk(t,r,n){var i,a=gc(t,e.getPropertyNameForKnownSymbolName(r.iteratorSymbolName)),o=!a||16777216&a.flags?void 0:_o(a);if(Pa(o))return jk(t,r.iterableCacheKey,_r);var s=o?hc(o,0):void 0;if(!e.some(s))return jk(t,r.iterableCacheKey,gr);var c=null!==(i=Wk(fu(e.map(s,Bc)),r,n))&&void 0!==i?i:gr;return jk(t,r.iterableCacheKey,c)}function Kk(t,r,n){var i=n?e.Diagnostics.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:e.Diagnostics.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator;gn(t,!!jb(r),i,da(r))}function Wk(e,t,r){if(Pa(e))return _r;var n=Gk(e,t)||function(e,t){var r=t.getGlobalIterableIteratorType(!1);if(ho(e,r)){var n=ll(e)[0],i=Gk(r,t)||ex(r,t,void 0),a=i===gr?yr:i,o=a.returnType,s=a.nextType;return jk(e,t.iteratorCacheKey,Rk(n,o,s))}if(ho(e,t.getGlobalIteratorType(!1))||ho(e,t.getGlobalGeneratorType(!1))){var c=ll(e);n=c[0],o=c[1],s=c[2];return jk(e,t.iteratorCacheKey,Rk(n,o,s))}}(e,t)||ex(e,t,r);return n===gr?void 0:n}function Gk(e,t){return Lk(e,t.iteratorCacheKey)}function $k(e,t){var r=Na(e,"done")||je;return cp(0===t?je:ze,r)}function Yk(e){return $k(e,0)}function Xk(e){return $k(e,1)}function Qk(e){if(Pa(e))return _r;var t,r=Lk(e,"iterationTypesOfIteratorResult");if(r)return r;if(ho(e,(t=!1,Vt||(Vt=Al("IteratorYieldResult",1,t))||st)))return jk(e,"iterationTypesOfIteratorResult",Rk(ll(e)[0],void 0,void 0));if(ho(e,function(e){return Ht||(Ht=Al("IteratorReturnResult",1,e))||st}(!1)))return jk(e,"iterationTypesOfIteratorResult",Rk(void 0,ll(e)[0],void 0));var n=ug(e,Yk),i=n!==He?Na(n,"value"):void 0,a=ug(e,Xk),o=a!==He?Na(a,"value"):void 0;return jk(e,"iterationTypesOfIteratorResult",i||o?Rk(i,o||Ve,void 0):gr)}function Zk(t,r,n,i){var a,o,s,c,l=gc(t,n);if(l||"next"===n){var u=!l||"next"===n&&16777216&l.flags?void 0:"next"===n?_o(l):Hm(_o(l),2097152);if(Pa(u))return"next"===n?_r:hr;var d,p,f,m,g,_=u?hc(u,0):e.emptyArray;if(0===_.length){if(i)pn(i,"next"===n?r.mustHaveANextMethodDiagnostic:r.mustBeAMethodDiagnostic,n);return"next"===n?_r:void 0}if((null==u?void 0:u.symbol)&&1===_.length){var h=r.getGlobalGeneratorType(!1),y=r.getGlobalIteratorType(!1),v=(null===(o=null===(a=h.symbol)||void 0===a?void 0:a.members)||void 0===o?void 0:o.get(n))===u.symbol,b=!v&&(null===(c=null===(s=y.symbol)||void 0===s?void 0:s.members)||void 0===c?void 0:c.get(n))===u.symbol;if(v||b){var k=v?h:y,x=u.mapper;return Rk(Cd(k.typeParameters[0],x),Cd(k.typeParameters[1],x),"next"===n?Cd(k.typeParameters[2],x):void 0)}}for(var S=0,w=_;S<w.length;S++){var D=w[S];"throw"!==n&&e.some(D.parameters)&&(d=e.append(d,nv(D,0))),p=e.append(p,Bc(D))}if("throw"!==n){var E=d?ou(d):Ae;if("next"===n)m=E;else if("return"===n){var T=r.resolveIterationType(E,i)||Se;f=e.append(f,T)}}var C=p?fu(p):He,A=Qk(r.resolveIterationType(C,i)||Se);return A===gr?(i&&pn(i,r.mustHaveAValueDiagnostic,n),g=Se,f=e.append(f,Se)):(g=A.yieldType,f=e.append(f,A.returnType)),Rk(g,ou(f),m)}}function ex(e,t,r){var n=Mk([Zk(e,t,"next",r),Zk(e,t,"return",r),Zk(e,t,"throw",r)]);return jk(e,t.iteratorCacheKey,n)}function tx(e,t,r){if(!Pa(t)){var n=rx(t,r);return n&&n[z(e)]}}function rx(e,t){if(Pa(e))return _r;var r=t?vr:br;return Bk(e,t?2:1,void 0)||Wk(e,r,void 0)}function nx(t){gw(t)||function(t){var r=t;for(;r;){if(e.isFunctionLike(r))return fw(t,e.Diagnostics.Jump_target_cannot_cross_function_boundary);switch(r.kind){case 247:if(t.label&&r.label.escapedText===t.label.escapedText)return!!(242===t.kind&&!e.isIterationStatement(r.statement,!0))&&fw(t,e.Diagnostics.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement);break;case 246:if(243===t.kind&&!t.label)return!1;break;default:if(e.isIterationStatement(r,!1)&&!t.label)return!1}r=r.parent}t.label?fw(t,243===t.kind?e.Diagnostics.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:e.Diagnostics.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):fw(t,243===t.kind?e.Diagnostics.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:e.Diagnostics.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement)}(t)}function ix(e,t){var r,n,i=!!(2&t);return!!(1&t)?null!==(r=tx(1,e,i))&&void 0!==r?r:Ee:i?null!==(n=Ub(e))&&void 0!==n?n:Ee:e}function ax(t,r){var n=ix(r,e.getFunctionFlags(t));return!!n&&Rv(n,16387)}function ox(t){gw(t)||e.isIdentifier(t.expression)&&!t.expression.escapedText&&function(t,r,n,i,a){var o=e.getSourceFileOfNode(t);if(!uw(o)){var s=e.getSpanOfTokenAtPosition(o,t.pos);return Qr.add(e.createFileDiagnostic(o,e.textSpanEnd(s),0,r,n,i,a)),!0}}(t,e.Diagnostics.Line_break_not_permitted_here),t.expression&&fb(t.expression)}function sx(t){var r,n=Xc(t.symbol,1),i=Xc(t.symbol,0),a=kc(t,0),o=kc(t,1);if(a||o){e.forEach(qs(t),(function(e){var r=_o(e);f(e,r,t,i,a,0),f(e,r,t,n,o,1)}));var s=t.symbol.valueDeclaration;if(1&e.getObjectFlags(t)&&e.isClassLike(s))for(var c=0,l=s.members;c<l.length;c++){var u=l[c];if(!e.hasSyntacticModifier(u,32)&&!ns(u)){var d=Ai(u),p=_o(d);f(d,p,t,i,a,0),f(d,p,t,n,o,1)}}}a&&o&&(!(r=n||i)&&2&e.getObjectFlags(t)&&(r=e.forEach(Po(t),(function(e){return kc(e,0)&&kc(e,1)}))?void 0:t.symbol.declarations[0]));function f(t,r,n,i,a,o){if(a&&!e.isKnownSymbol(t)){var s=t.valueDeclaration,c=s&&e.getNameOfDeclaration(s);if((!c||!e.isPrivateIdentifier(c))&&(1!==o||(c?F_(c):R_(t.escapedName)))){var l;if(s&&c&&(218===s.kind||159===c.kind||t.parent===n.symbol))l=s;else if(i)l=i;else if(2&e.getObjectFlags(n)){l=e.forEach(Po(n),(function(e){return Js(e,t.escapedName)&&kc(e,o)}))?void 0:n.symbol.declarations[0]}if(l&&!cp(r,a))pn(l,0===o?e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_string_index_type_2:e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2,la(t),da(r),da(a))}}}r&&!cp(o,a)&&pn(r,e.Diagnostics.Numeric_index_type_0_is_not_assignable_to_string_index_type_1,da(o),da(a))}function cx(e,t){switch(e.escapedText){case"any":case"unknown":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":pn(e,t,e.escapedText)}}function lx(t){if(t)for(var n=!1,i=0;i<t.length;i++){var a=t[i];if(yb(a),r){a.default?(n=!0,ux(a.default,t,i)):n&&pn(a,e.Diagnostics.Required_type_parameters_may_not_follow_optional_type_parameters);for(var o=0;o<i;o++)t[o].symbol===a.symbol&&pn(a.name,e.Diagnostics.Duplicate_identifier_0,e.declarationNameToString(a.name))}}}function ux(t,r,n){!function t(i){if(174===i.kind){var a=Sl(i);if(262144&a.flags)for(var o=n;o<r.length;o++)a.symbol===Ai(r[o])&&pn(i,e.Diagnostics.Type_parameter_defaults_can_only_reference_previously_declared_type_parameters)}e.forEachChild(i,t)}(t)}function dx(t){if(1!==t.declarations.length){var r=Tn(t);if(!r.typeParametersChecked){r.typeParametersChecked=!0;var n=function(t){return e.filter(t.declarations,(function(e){return 254===e.kind||256===e.kind}))}(t);if(n.length<=1)return;if(!function(t,r){for(var n=e.length(r),i=Nc(r),a=0,o=t;a<o.length;a++){var s=o[a],c=e.getEffectiveTypeParameterDeclarations(s),l=c.length;if(l<i||l>n)return!1;for(var u=0;u<l;u++){var d=c[u],p=r[u];if(d.name.escapedText!==p.symbol.escapedName)return!1;var f=e.getEffectiveConstraintOfTypeParameter(d),m=f&&xd(f),g=Ws(p);if(m&&g&&!np(m,g))return!1;var _=d.default&&xd(d.default),h=nc(p);if(_&&h&&!np(_,h))return!1}}return!0}(n,Jo(t).localTypeParameters))for(var i=la(t),a=0,o=n;a<o.length;a++){pn(o[a].name,e.Diagnostics.All_declarations_of_0_must_have_identical_type_parameters,i)}}}}function px(r){r.name||e.hasSyntacticModifier(r,512)||dw(r,e.Diagnostics.A_struct_declaration_without_the_default_modifier_must_have_a_name),fx(r),function(r){var n;if(t.getCompilerOptions().ets&&r.name&&e.isIdentifier(r.name)){(null===(n=t.getCompilerOptions().ets)||void 0===n?void 0:n.components).includes(r.name.escapedText.toString())&&pn(r.name,e.Diagnostics.The_struct_name_cannot_contain_reserved_tag_name_Colon_0,r.name.escapedText.toString())}}(r),e.forEach(r.members,Rx),Qb(r)}function fx(t){var n;!function(t){var r=e.getSourceFileOfNode(t);(function(t){var r=!1,n=!1;if(!zS(t)&&t.heritageClauses)for(var i=0,a=t.heritageClauses;i<a.length;i++){var o=a[i];if(94===o.token){if(r)return dw(o,e.Diagnostics.extends_clause_already_seen);if(n)return dw(o,e.Diagnostics.extends_clause_must_precede_implements_clause);if(o.types.length>1)return dw(o.types[1],e.Diagnostics.Classes_can_only_extend_a_single_class);r=!0}else{if(e.Debug.assert(117===o.token),n)return dw(o,e.Diagnostics.implements_clause_already_seen);n=!0}GS(o)}})(t)||JS(t.typeParameters,r)}(t),$b(t),t.name&&(cx(t.name,e.Diagnostics.Class_name_cannot_be_0),hk(t,t.name),yk(t,t.name),8388608&t.flags||(n=t.name,1===V&&"Object"===n.escapedText&&H<e.ModuleKind.ES2015&&pn(n,e.Diagnostics.Class_name_cannot_be_Object_when_targeting_ES5_with_module_0,e.ModuleKind[H]))),lx(e.getEffectiveTypeParameterDeclarations(t)),Lb(t);var i=Ai(t),a=Jo(i),o=ls(a),s=_o(i);dx(i),Mb(i),function(t){for(var r=new e.Map,n=new e.Map,i=new e.Map,a=0,o=t.members;a<o.length;a++){var s=o[a];if(167===s.kind)for(var c=0,l=s.parameters;c<l.length;c++){var u=l[c];e.isParameterPropertyDeclaration(u,s)&&!e.isBindingPattern(u.name)&&g(r,u.name,u.name.escapedText,3)}else{var d=e.hasSyntacticModifier(s,32),p=s.name;if(!p)return;var f=e.isPrivateIdentifier(p)?i:d?n:r,m=p&&e.getPropertyNameForPropertyNameNode(p);if(m)switch(s.kind){case 168:g(f,p,m,1);break;case 169:g(f,p,m,2);break;case 164:g(f,p,m,3);break;case 166:g(f,p,m,8)}}}function g(t,r,n,i){var a=t.get(n);a?8&a?8!==i&&pn(r,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(r)):a&i?pn(r,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(r)):t.set(n,a|i):t.set(n,i)}}(t),8388608&t.flags||function(t){for(var r=0,n=t.members;r<n.length;r++){var i=n[r],a=i.name;if(e.hasSyntacticModifier(i,32)&&a){var o=e.getPropertyNameForPropertyNameNode(a);switch(o){case"name":case"length":case"caller":case"arguments":case"prototype":pn(a,e.Diagnostics.Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1,o,xa(Ai(t)))}}}}(t);var c=e.getEffectiveBaseTypeNode(t);if(c){e.forEach(c.typeArguments,Rx),V<2&&jS(c.parent,1);var l=e.getClassExtendsHeritageElement(t);l&&l!==c&&fb(l.expression);var u=Po(a);if(u.length&&r){var d=u[0],p=Ao(a),f=ac(p);if(function(t,r){var n=hc(t,1);if(n.length){var i=n[0].declaration;if(i&&e.hasEffectiveModifier(i,8))Wx(r,e.getClassLikeDeclarationOfSymbol(t.symbol))||pn(r,e.Diagnostics.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,pi(t.symbol))}}(f,c),Rx(c.expression),e.some(c.typeArguments)){e.forEach(c.typeArguments,Rx);for(var m=0,g=To(f,c.typeArguments,c);m<g.length;m++){if(!Ab(c,g[m].typeParameters))break}}if(pp(o,x=ls(d,a.thisType),void 0)?pp(s,rp(f),t.name||t,e.Diagnostics.Class_static_side_0_incorrectly_extends_base_class_static_side_1):mx(t,o,x,e.Diagnostics.Class_0_incorrectly_extends_base_class_1),8650752&p.flags)if(wo(s))hc(p,1).some((function(e){return 4&e.flags}))&&!e.hasSyntacticModifier(t,128)&&pn(t.name||t,e.Diagnostics.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract);else pn(t.name||t,e.Diagnostics.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any);if(!(f.symbol&&32&f.symbol.flags||8650752&p.flags)){var _=Co(f,c.typeArguments,c);e.forEach(_,(function(e){return!Fy(e.declaration)&&!np(Bc(e),d)}))&&pn(c.expression,e.Diagnostics.Base_constructors_must_all_have_the_same_return_type)}!function(t,r){var n=Hs(r);e:for(var i=0,a=n;i<a.length;i++){var o=a[i],s=gx(o);if(!(4194304&s.flags)){var c=Js(t,s.escapedName);if(c){var l=gx(c),u=e.getDeclarationModifierFlagsFromSymbol(s);if(e.Debug.assert(!!l,"derived should point to something, even if it is the base class' declaration."),l===s){var d=e.getClassLikeDeclarationOfSymbol(t.symbol);if(128&u&&(!d||!e.hasSyntacticModifier(d,128))){for(var p=0,f=Po(t);p<f.length;p++){var m=f[p];if(m!==r){var g=Js(m,s.escapedName),_=g&&gx(g);if(_&&_!==s)continue e}}223===d.kind?pn(d,e.Diagnostics.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,la(o),da(r)):pn(d,e.Diagnostics.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,da(t),la(o),da(r))}}else{var h=e.getDeclarationModifierFlagsFromSymbol(l);if(8&u||8&h)continue;var y=void 0,v=98308&s.flags,b=98308&l.flags;if(v&&b){if(128&u&&!(s.valueDeclaration&&e.isPropertyDeclaration(s.valueDeclaration)&&s.valueDeclaration.initializer)||s.valueDeclaration&&256===s.valueDeclaration.parent.kind||l.valueDeclaration&&e.isBinaryExpression(l.valueDeclaration))continue;var k=4!==v&&4===b;if(k||4===v&&4!==b){var x=k?e.Diagnostics._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:e.Diagnostics._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;pn(e.getNameOfDeclaration(l.valueDeclaration)||l.valueDeclaration,x,la(s),da(r),da(t))}else if(J.useDefineForClassFields){var S=e.find(l.declarations,(function(e){return 164===e.kind&&!e.initializer}));if(S&&!(33554432&l.flags)&&!(128&u)&&!(128&h)&&!l.declarations.some((function(e){return!!(8388608&e.flags)}))){var w=Li(e.getClassLikeDeclarationOfSymbol(t.symbol)),D=S.name;if(S.exclamationToken||!w||!e.isIdentifier(D)||!W||!hx(D,t,w)){var E=e.Diagnostics.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration;pn(e.getNameOfDeclaration(l.valueDeclaration)||l.valueDeclaration,E,la(s),da(r))}}}continue}if(uh(s)){if(uh(l)||4&l.flags)continue;e.Debug.assert(!!(98304&l.flags)),y=e.Diagnostics.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else y=98304&s.flags?e.Diagnostics.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:e.Diagnostics.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;pn(e.getNameOfDeclaration(l.valueDeclaration)||l.valueDeclaration,y,da(r),la(s),da(t))}}}}}(a,d)}}var h=e.getEffectiveImplementsTypeNodes(t);if(h)for(var y=0,v=h;y<v.length;y++){var b=v[y];if(e.isEntityNameExpression(b.expression)&&!e.isOptionalChain(b.expression)||pn(b.expression,e.Diagnostics.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),Pb(b),r){var k=uc(xd(b));if(k!==Ee)if(Fo(k)){var x,S=k.symbol&&32&k.symbol.flags?e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:e.Diagnostics.Class_0_incorrectly_implements_interface_1;pp(o,x=ls(k,a.thisType),void 0)||mx(t,o,x,S)}else pn(b,e.Diagnostics.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}r&&(sx(a),Sb(t),function(t){if(!W||!Y||8388608&t.flags)return;for(var r=Li(t),n=0,i=t.members;n<i.length;n++){var a=i[n];if(!(2&e.getEffectiveModifierFlags(a))&&_x(a)){var o=a.name;if(e.isIdentifier(o)||e.isPrivateIdentifier(o)){var s=_o(Ai(a));3&s.flags||32768&Ef(s)||r&&hx(o,s,r)||pn(a.name,e.Diagnostics.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,e.declarationNameToString(o))}}}}(t))}function mx(t,r,n,i){for(var a=!1,o=function(t){if(e.hasStaticModifier(t))return"continue";var i=t.name&&Yx(t.name)||Yx(t);if(i){var o=gc(r,i.escapedName),s=gc(n,i.escapedName);if(o&&s){pp(_o(o),_o(s),t.name||t,void 0,(function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,la(i),da(r),da(n))}))||(a=!0)}}},s=0,c=t.members;s<c.length;s++){o(c[s])}a||pp(r,n,t.name||t,i)}function gx(t){return 1&e.getCheckFlags(t)?t.target:t}function _x(t){return 164===t.kind&&!e.hasSyntacticModifier(t,160)&&!t.exclamationToken&&!t.initializer}function hx(t,r,n){var i=e.factory.createPropertyAccessExpression(e.factory.createThis(),t);return e.setParent(i.expression,i),e.setParent(i,n),i.flowNode=n.returnFlowNode,!(32768&Ef(Og(i,r,Nf(r))))}function yx(t){if(zS(t)||function(t){var r=!1;if(t.heritageClauses)for(var n=0,i=t.heritageClauses;n<i.length;n++){var a=i[n];if(94!==a.token)return e.Debug.assert(117===a.token),dw(a,e.Diagnostics.Interface_declaration_cannot_have_implements_clause);if(r)return dw(a,e.Diagnostics.extends_clause_already_seen);r=!0,GS(a)}}(t),lx(t.typeParameters),r){cx(t.name,e.Diagnostics.Interface_name_cannot_be_0),Lb(t);var n=Ai(t);if(dx(n),t===e.getDeclarationOfKind(n,256)){var i=Jo(n),a=ls(i);if(function(t,r){var n=Po(t);if(n.length<2)return!0;var i=new e.Map;e.forEach(Qo(t).declaredProperties,(function(e){i.set(e.escapedName,{prop:e,containingType:t})}));for(var a=!0,o=0,s=n;o<s.length;o++)for(var c=s[o],l=0,u=Hs(ls(c,t.thisType));l<u.length;l++){var d=u[l],p=i.get(d.escapedName);if(p){if(p.containingType!==t&&!Qp(p.prop,d)){a=!1;var f=da(p.containingType),m=da(c),g=e.chainDiagnosticMessages(void 0,e.Diagnostics.Named_property_0_of_types_1_and_2_are_not_identical,la(d),f,m);g=e.chainDiagnosticMessages(g,e.Diagnostics.Interface_0_cannot_simultaneously_extend_types_1_and_2,da(t),f,m),Qr.add(e.createDiagnosticForNodeFromMessageChain(r,g))}}else i.set(d.escapedName,{prop:d,containingType:c})}return a}(i,t.name)){for(var o=0,s=Po(i);o<s.length;o++){pp(a,ls(s[o],i.thisType),t.name,e.Diagnostics.Interface_0_incorrectly_extends_interface_1)}sx(i)}}xb(t)}e.forEach(e.getInterfaceBaseTypeNodes(t),(function(t){e.isEntityNameExpression(t.expression)&&!e.isOptionalChain(t.expression)||pn(t.expression,e.Diagnostics.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),Pb(t)})),e.forEach(t.members,Rx),r&&(Sb(t),Qb(t))}function vx(e){var t=Cn(e);if(!(16384&t.flags)){t.flags|=16384;for(var r=0,n=0,i=e.members;n<i.length;n++){var a=i[n],o=bx(a,r);Cn(a).enumMemberValue=o,r="number"==typeof o?o+1:void 0}}}function bx(t,r){if(e.isComputedNonLiteralName(t.name))pn(t.name,e.Diagnostics.Computed_property_names_are_not_allowed_in_enums);else{var n=e.getTextOfPropertyName(t.name);R_(n)&&!O_(n)&&pn(t.name,e.Diagnostics.An_enum_member_cannot_have_a_numeric_name)}return t.initializer?function(t){var r=jo(Ai(t.parent)),n=e.isEnumConst(t.parent),i=t.initializer,a=1!==r||Lo(t)?s(i):void 0;if(void 0!==a)n&&"number"==typeof a&&!isFinite(a)&&pn(i,isNaN(a)?e.Diagnostics.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:e.Diagnostics.const_enum_member_initializer_was_evaluated_to_a_non_finite_value);else{if(1===r)return pn(i,e.Diagnostics.Computed_values_are_not_permitted_in_an_enum_with_string_valued_members),0;if(n)pn(i,e.Diagnostics.const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values);else if(8388608&t.parent.flags)pn(i,e.Diagnostics.In_ambient_enum_declarations_member_initializer_must_be_constant_expression);else{var o=fb(i);Mv(o,296)?pp(o,Jo(Ai(t.parent)),i,void 0):pn(i,e.Diagnostics.Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhaustiveness_checks_consider_using_an_object_literal_instead,da(o))}}return a;function s(r){switch(r.kind){case 216:var n=s(r.operand);if("number"==typeof n)switch(r.operator){case 39:return n;case 40:return-n;case 54:return~n}break;case 218:var i=s(r.left),a=s(r.right);if("number"==typeof i&&"number"==typeof a)switch(r.operatorToken.kind){case 51:return i|a;case 50:return i&a;case 48:return i>>a;case 49:return i>>>a;case 47:return i<<a;case 52:return i^a;case 41:return i*a;case 43:return i/a;case 39:return i+a;case 40:return i-a;case 44:return i%a;case 42:return Math.pow(i,a)}else if("string"==typeof i&&"string"==typeof a&&39===r.operatorToken.kind)return i+a;break;case 10:case 14:return r.text;case 8:return _w(r),+r.text;case 208:return s(r.expression);case 78:var o=r;return O_(o.escapedText)?+o.escapedText:e.nodeIsMissing(r)?0:c(r,Ai(t.parent),o.escapedText);case 203:case 202:var l=r;if(kx(l)){var u=ub(l.expression);if(u.symbol&&384&u.symbol.flags){var d=void 0;return d=202===l.kind?l.name.escapedText:e.escapeLeadingUnderscores(e.cast(l.argumentExpression,e.isLiteralExpression).text),c(r,u.symbol,d)}}}}function c(r,n,i){var a=n.exports.get(i);if(a){var o=a.valueDeclaration;if(o!==t)return Pn(o,t)?xS(o):(pn(r,e.Diagnostics.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),0);pn(r,e.Diagnostics.Property_0_is_used_before_being_assigned,la(a))}}}(t):8388608&t.parent.flags&&!e.isEnumConst(t.parent)&&0===jo(Ai(t.parent))?void 0:void 0!==r?r:void pn(t.name,e.Diagnostics.Enum_member_must_have_initializer)}function kx(t){return 78===t.kind||202===t.kind&&kx(t.expression)||203===t.kind&&kx(t.expression)&&e.isStringLiteralLike(t.argumentExpression)}function xx(t){e.isPrivateIdentifier(t.name)&&pn(t,e.Diagnostics.An_enum_member_cannot_be_named_with_a_private_identifier)}function Sx(t){if(r){var n=e.isGlobalScopeAugmentation(t),i=8388608&t.flags;n&&!i&&pn(t.name,e.Diagnostics.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);var a=e.isAmbientModule(t);if(Nx(t,a?e.Diagnostics.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:e.Diagnostics.A_namespace_declaration_is_only_allowed_in_a_namespace_or_module))return;zS(t)||i||10!==t.name.kind||fw(t.name,e.Diagnostics.Only_ambient_modules_can_use_quoted_names),e.isIdentifier(t.name)&&(hk(t,t.name),yk(t,t.name)),Lb(t);var o=Ai(t);if(512&o.flags&&!i&&o.declarations.length>1&&M(t,e.shouldPreserveConstEnums(J))){var s=function(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];if((254===i.kind||253===i.kind&&e.nodeIsPresent(i.body))&&!(8388608&i.flags))return i}}(o);s&&(e.getSourceFileOfNode(t)!==e.getSourceFileOfNode(s)?pn(t.name,e.Diagnostics.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):t.pos<s.pos&&pn(t.name,e.Diagnostics.A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged));var c=e.getDeclarationOfKind(o,254);c&&(d=t,p=c,f=e.getEnclosingBlockScopeContainer(d),m=e.getEnclosingBlockScopeContainer(p),An(f)?An(m):!An(m)&&f===m)&&(Cn(t).flags|=32768)}if(a)if(e.isExternalModuleAugmentation(t)){if((n||33554432&Ai(t).flags)&&t.body)for(var l=0,u=t.body.statements;l<u.length;l++){wx(u[l],n)}}else An(t.parent)?n?pn(t.name,e.Diagnostics.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):e.isExternalModuleNameRelative(e.getTextOfIdentifierOrLiteral(t.name))&&pn(t.name,e.Diagnostics.Ambient_module_declaration_cannot_specify_relative_module_name):pn(t.name,n?e.Diagnostics.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:e.Diagnostics.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}var d,p,f,m;t.body&&(Rx(t.body),e.isGlobalScopeAugmentation(t)||Qb(t))}function wx(t,r){switch(t.kind){case 234:for(var n=0,i=t.declarationList.declarations;n<i.length;n++){wx(i[n],r)}break;case 269:case 270:dw(t,e.Diagnostics.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 263:case 264:dw(t,e.Diagnostics.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 199:case 251:var a=t.name;if(e.isBindingPattern(a)){for(var o=0,s=a.elements;o<s.length;o++){wx(s[o],r)}break}case 254:case 258:case 253:case 256:case 259:case 257:if(r)return;var c=Ai(t);if(c){var l=!(33554432&c.flags);l||(l=!!c.parent&&e.isExternalModuleAugmentation(c.parent.declarations[0]))}}}function Dx(t){var r=e.getExternalModuleName(t);if(!r||e.nodeIsMissing(r))return!1;if(!e.isStringLiteral(r))return pn(r,e.Diagnostics.String_literal_expected),!1;var n=260===t.parent.kind&&e.isAmbientModule(t.parent.parent);return 300===t.parent.kind||n?!(n&&e.isExternalModuleNameRelative(r.text)&&!va(t))||(pn(t,e.Diagnostics.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1):(pn(r,270===t.kind?e.Diagnostics.Export_declarations_are_not_permitted_in_a_namespace:e.Diagnostics.Import_declarations_in_a_namespace_cannot_reference_a_module),!1)}function Ex(t){var r,n=Ai(t),i=ai(n);if(i!==ke){var a=(1160127&(n=Ci(n.exportSymbol||n)).flags?111551:0)|(788968&n.flags?788968:0)|(1920&n.flags?1920:0);if(i.flags&a)pn(t,273===t.kind?e.Diagnostics.Export_declaration_conflicts_with_exported_declaration_of_0:e.Diagnostics.Import_declaration_conflicts_with_local_declaration_of_0,la(n));!J.isolatedModules||273!==t.kind||t.parent.parent.isTypeOnly||111551&i.flags||8388608&t.flags||pn(t,e.Diagnostics.Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type),e.isImportSpecifier(t)&&(null===(r=i.declarations)||void 0===r?void 0:r.every((function(t){return!!(134217728&e.getCombinedNodeFlags(t))})))&&hn(t.name,i.declarations,n.escapedName)}}function Tx(t){hk(t,t.name),yk(t,t.name),Ex(t),268===t.kind&&"default"===e.idText(t.propertyName||t.name)&&J.esModuleInterop&&H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&jS(t,131072)}function Cx(t){if(!Nx(t,e.Diagnostics.An_import_declaration_can_only_be_used_in_a_namespace_or_module)&&(!zS(t)&&e.hasEffectiveModifiers(t)&&dw(t,e.Diagnostics.An_import_declaration_cannot_have_modifiers),Dx(t))){var r=t.importClause;if(r&&!function(t){if(t.isTypeOnly&&t.name&&t.namedBindings)return fw(t,e.Diagnostics.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both);return!1}(r))if(r.name&&Tx(r),r.namedBindings)if(266===r.namedBindings.kind)Tx(r.namedBindings),H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&J.esModuleInterop&&jS(t,65536);else gi(t,t.moduleSpecifier)&&e.forEach(r.namedBindings.elements,Tx)}}function Ax(t){if(!Nx(t,e.Diagnostics.An_export_declaration_can_only_be_used_in_a_module)&&(!zS(t)&&e.hasEffectiveModifiers(t)&&dw(t,e.Diagnostics.An_export_declaration_cannot_have_modifiers),t.moduleSpecifier&&t.exportClause&&e.isNamedExports(t.exportClause)&&e.length(t.exportClause.elements)&&0===V&&jS(t,2097152),function(t){var r,n=t.isTypeOnly&&271!==(null===(r=t.exportClause)||void 0===r?void 0:r.kind);n&&fw(t,e.Diagnostics.Only_named_exports_may_use_export_type)}(t),!t.moduleSpecifier||Dx(t)))if(t.exportClause&&!e.isNamespaceExport(t.exportClause)){e.forEach(t.exportClause.elements,Fx);var r=260===t.parent.kind&&e.isAmbientModule(t.parent.parent),n=!r&&260===t.parent.kind&&!t.moduleSpecifier&&8388608&t.flags;300===t.parent.kind||r||n||pn(t,e.Diagnostics.Export_declarations_are_not_permitted_in_a_namespace)}else{var i=gi(t,t.moduleSpecifier);i&&ki(i)?pn(t.moduleSpecifier,e.Diagnostics.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,la(i)):t.exportClause&&Ex(t.exportClause),H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&(t.exportClause?J.esModuleInterop&&jS(t,65536):jS(t,32768))}}function Nx(e,t){var r=300===e.parent.kind||260===e.parent.kind||259===e.parent.kind;return r||dw(e,t),!r}function Px(t){return e.isImportDeclaration(t)&&t.importClause&&!t.importClause.isTypeOnly&&(r=t.importClause,e.forEachImportClauseDeclaration(r,(function(e){return!!Ai(e).isReferenced})))&&!gS(t.importClause,!0)&&!function(t){return e.forEachImportClauseDeclaration(t,(function(e){return!!Tn(Ai(e)).constEnumReferenced}))}(t.importClause);var r}function Ix(t){return e.isImportEqualsDeclaration(t)&&e.isExternalModuleReference(t.moduleReference)&&!t.isTypeOnly&&Ai(t).isReferenced&&!gS(t,!1)&&!Tn(Ai(t)).constEnumReferenced}function Fx(t){if(Ex(t),e.getEmitDeclarations(J)&&wa(t.propertyName||t.name,!0),t.parent.parent.moduleSpecifier)J.esModuleInterop&&H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&"default"===e.idText(t.propertyName||t.name)&&jS(t,131072);else{var r=t.propertyName||t.name,n=Fn(r,r.escapedText,2998271,void 0,void 0,!0);if(n&&(n===ie||n===ae||An(Aa(n.declarations[0]))))pn(r,e.Diagnostics.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,e.idText(r));else{li(t);var i=n&&(2097152&n.flags?ai(n):n);(!i||i===ke||111551&i.flags)&&$v(t.propertyName||t.name)}}}function Ox(t){var r=Ai(t),n=Tn(r);if(!n.exportsChecked){var i=r.exports.get("export=");if(i&&function(t){return e.forEachEntry(t.exports,(function(e,t){return"export="!==t}))}(r)){var a=Vn(i)||i.valueDeclaration;va(a)||e.isInJSFile(a)||pn(a,e.Diagnostics.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}var o=Di(r);o&&o.forEach((function(t,r){var n=t.declarations,i=t.flags;if("__export"!==r&&!(1984&i)){var a=e.countWhere(n,A);if(!(524288&i&&a<=2)&&a>1)for(var o=0,s=n;o<s.length;o++){var c=s[o];L(c)&&Qr.add(e.createDiagnosticForNode(c,e.Diagnostics.Cannot_redeclare_exported_variable_0,e.unescapeLeadingUnderscores(r)))}}})),n.exportsChecked=!0}}function Rx(t){if(t){var i=d;d=t,x=0,function(t){e.isInJSFile(t)&&e.forEach(t.jsDoc,(function(t){var r=t.tags;return e.forEach(r,Rx)}));var i=t.kind;if(n)switch(i){case 259:case 254:case 256:case 253:n.throwIfCancellationRequested()}i>=234&&i<=250&&t.flowNode&&!Ng(t.flowNode)&&mn(!1===J.allowUnreachableCode,t,e.Diagnostics.Unreachable_code_detected);switch(i){case 160:return yb(t);case 161:return vb(t);case 164:return wb(t);case 163:return function(t){return e.isPrivateIdentifier(t.name)&&pn(t,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),wb(t)}(t);case 176:case 175:case 170:case 171:case 172:return kb(t);case 166:case 165:return function(t){nw(t)||YS(t.name),e.isPrivateIdentifier(t.name)&&pn(t,e.Diagnostics.A_method_cannot_be_named_with_a_private_identifier),Xb(t),e.hasSyntacticModifier(t,128)&&166===t.kind&&t.body&&pn(t,e.Diagnostics.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,e.declarationNameToString(t.name))}(t);case 167:return Db(t);case 168:case 169:return Eb(t);case 174:return Pb(t);case 173:return function(t){var r=function(e){switch(e.parent.kind){case 210:case 170:case 253:case 209:case 175:case 166:case 165:var t=e.parent;if(e===t.type)return t}}(t);if(r){var n=Ic(r),i=jc(n);if(i){Rx(t.type);var a=t.parameterName;if(0===i.kind||2===i.kind)vd(a);else if(i.parameterIndex>=0)U(n)&&i.parameterIndex===n.parameters.length-1?pn(a,e.Diagnostics.A_type_predicate_cannot_reference_a_rest_parameter):i.type&&pp(i.type,_o(n.parameters[i.parameterIndex]),t.type,void 0,(function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type)}));else if(a){for(var o=!1,s=0,c=r.parameters;s<c.length;s++){var l=c[s].name;if(e.isBindingPattern(l)&&bb(l,a,i.parameterName)){o=!0;break}}o||pn(t.parameterName,e.Diagnostics.Cannot_find_parameter_0,i.parameterName)}}}else pn(t,e.Diagnostics.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods)}(t);case 177:return function(e){Dl(e)}(t);case 178:return function(t){e.forEach(t.members,Rx),r&&(sx(nd(t)),Sb(t),xb(t))}(t);case 179:return function(e){Rx(e.elementType)}(t);case 180:return function(t){for(var r=t.elements,n=!1,i=!1,a=e.some(r,e.isNamedTupleMember),o=0,s=r;o<s.length;o++){var c=s[o];if(193!==c.kind&&a){fw(c,e.Diagnostics.Tuple_members_must_all_have_names_or_all_not_have_names);break}var l=Bl(c);if(8&l){var u=xd(c.type);if(!sf(u)){pn(c,e.Diagnostics.A_rest_element_type_must_be_an_array_type);break}(rf(u)||vf(u)&&4&u.target.combinedFlags)&&(i=!0)}else if(4&l){if(i){fw(c,e.Diagnostics.A_rest_element_cannot_follow_another_rest_element);break}i=!0}else if(2&l){if(i){fw(c,e.Diagnostics.An_optional_element_cannot_follow_a_rest_element);break}n=!0}else if(n){fw(c,e.Diagnostics.A_required_element_cannot_follow_an_optional_element);break}}e.forEach(t.elements,Rx),xd(t)}(t);case 183:case 184:return function(t){e.forEach(t.types,Rx),xd(t)}(t);case 187:case 181:case 182:return Rx(t.type);case 188:return function(e){vd(e)}(t);case 189:return Fb(t);case 185:return function(t){e.forEachChild(t,Rx)}(t);case 186:return function(t){e.findAncestor(t,(function(e){return e.parent&&185===e.parent.kind&&e.parent.extendsType===e}))||fw(t,e.Diagnostics.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),Rx(t.typeParameter),Qb(t)}(t);case 194:return function(e){for(var t=0,r=e.templateSpans;t<r.length;t++){var n=r[t];Rx(n.type),pp(xd(n.type),et,n.type)}xd(e)}(t);case 196:return function(e){Rx(e.argument),xd(e)}(t);case 193:return function(t){t.dotDotDotToken&&t.questionToken&&fw(t,e.Diagnostics.A_tuple_member_cannot_be_both_optional_and_rest),181===t.type.kind&&fw(t.type,e.Diagnostics.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),182===t.type.kind&&fw(t.type,e.Diagnostics.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),Rx(t.type),xd(t)}(t);case 318:return function(t){var r=e.getEffectiveJSDocHost(t);if(r&&(e.isClassDeclaration(r)||e.isClassExpression(r))){var n=e.getJSDocTags(r).filter(e.isJSDocAugmentsTag);e.Debug.assert(n.length>0),n.length>1&&pn(n[1],e.Diagnostics.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);var i=Yb(t.class.expression),a=e.getClassExtendsHeritageElement(r);if(a){var o=Yb(a.expression);o&&i.escapedText!==o.escapedText&&pn(i,e.Diagnostics.JSDoc_0_1_does_not_match_the_extends_2_clause,e.idText(t.tagName),e.idText(i),e.idText(o))}}else pn(r,e.Diagnostics.JSDoc_0_is_not_attached_to_a_class,e.idText(t.tagName))}(t);case 319:return function(t){var r=e.getEffectiveJSDocHost(t);r&&(e.isClassDeclaration(r)||e.isClassExpression(r))||pn(r,e.Diagnostics.JSDoc_0_is_not_attached_to_a_class,e.idText(t.tagName))}(t);case 334:case 327:case 328:return function(t){t.typeExpression||pn(t.name,e.Diagnostics.JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags),t.name&&cx(t.name,e.Diagnostics.Type_alias_name_cannot_be_0),Rx(t.typeExpression)}(t);case 333:return function(e){Rx(e.constraint);for(var t=0,r=e.typeParameters;t<r.length;t++)Rx(r[t])}(t);case 332:return function(e){Rx(e.typeExpression)}(t);case 329:return function(t){if(Rx(t.typeExpression),!e.getParameterSymbolFromJSDoc(t)){var r=e.getHostSignatureFromJSDoc(t);if(r){var n=e.getJSDocTags(r).filter(e.isJSDocParameterTag).indexOf(t);if(n>-1&&n<r.parameters.length&&e.isBindingPattern(r.parameters[n].name))return;Oc(r)?e.findLast(e.getJSDocTags(r),e.isJSDocParameterTag)===t&&t.typeExpression&&t.typeExpression.type&&!rf(xd(t.typeExpression.type))&&pn(t.name,e.Diagnostics.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,e.idText(158===t.name.kind?t.name.right:t.name)):e.isQualifiedName(t.name)?pn(t.name,e.Diagnostics.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,e.entityNameToString(t.name),e.entityNameToString(t.name.left)):pn(t.name,e.Diagnostics.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,e.idText(t.name))}}}(t);case 336:return function(e){Rx(e.typeExpression)}(t);case 311:!function(t){!r||t.type||e.isJSDocConstructSignature(t)||Gf(t,Se),kb(t)}(t);case 309:case 308:case 306:case 307:case 315:return Mx(t),void e.forEachChild(t,Rx);case 312:return void function(t){Mx(t),Rx(t.type);var r=t.parent;if(e.isParameter(r)&&e.isJSDocFunctionType(r.parent))return void(e.last(r.parent.parameters)!==r&&pn(t,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list));e.isJSDocTypeExpression(r)||pn(t,e.Diagnostics.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);var n=t.parent.parent;if(!e.isJSDocParameterTag(n))return void pn(t,e.Diagnostics.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);var i=e.getParameterSymbolFromJSDoc(n);if(!i)return;var a=e.getHostSignatureFromJSDoc(n);a&&e.last(a.parameters).symbol===i||pn(t,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list)}(t);case 304:return Rx(t.type);case 190:return function(e){Rx(e.objectType),Rx(e.indexType),Ib(Hu(e),e)}(t);case 191:return function(t){Rx(t.typeParameter),Rx(t.nameType),Rx(t.type),t.type||Gf(t,Se);var r=Ku(t),n=Is(r);n?pp(n,Qe,t.nameType):pp(Ps(r),Qe,e.getEffectiveConstraintOfTypeParameter(t.typeParameter))}(t);case 253:return function(e){r&&(Xb(e),XS(e),hk(e,e.name),yk(e,e.name))}(t);case 232:case 260:return pk(t);case 234:return Dk(t);case 235:return function(e){gw(e),fb(e.expression)}(t);case 236:return function(t){gw(t);var r=Ck(t.expression);Ek(t.expression,r,t.thenStatement),Rx(t.thenStatement),233===t.thenStatement.kind&&pn(t.thenStatement,e.Diagnostics.The_body_of_an_if_statement_cannot_be_the_empty_statement),Rx(t.elseStatement)}(t);case 237:return function(e){gw(e),Rx(e.statement),Ck(e.expression)}(t);case 238:return function(e){gw(e),Ck(e.expression),Rx(e.statement)}(t);case 239:return function(t){gw(t)||t.initializer&&252===t.initializer.kind&&cw(t.initializer),t.initializer&&(252===t.initializer.kind?e.forEach(t.initializer.declarations,Sk):fb(t.initializer)),t.condition&&Ck(t.condition),t.incrementor&&fb(t.incrementor),Rx(t.statement),t.locals&&Qb(t)}(t);case 240:return Ak(t);case 241:return function(t){if(ew(t),t.awaitModifier?2==(6&e.getFunctionFlags(e.getContainingFunction(t)))&&V<99&&jS(t,16384):J.downlevelIteration&&V<2&&jS(t,256),252===t.initializer.kind)Nk(t);else{var r=t.initializer,n=Pk(t);if(200===r.kind||201===r.kind)qv(r,n||Ee);else{var i=fb(r);Iv(r,e.Diagnostics.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access,e.Diagnostics.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access),n&&fp(n,i,r,t.expression)}}Rx(t.statement),t.locals&&Qb(t)}(t);case 242:case 243:return nx(t);case 244:return function(t){var r;if(!gw(t)){var n=e.getContainingFunction(t);if(n){var i=Bc(Ic(n)),a=e.getFunctionFlags(n);if(W||t.expression||131072&i.flags){var o=t.expression?$v(t.expression):Ne;if(169===n.kind)t.expression&&pn(t,e.Diagnostics.Setters_cannot_return_a_value);else if(167===n.kind)t.expression&&!fp(o,i,t,t.expression)&&pn(t,e.Diagnostics.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class);else if(zc(n)){var s=null!==(r=ix(i,a))&&void 0!==r?r:i,c=2&a?zb(o,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):o;s&&fp(c,s,t,t.expression)}}else 167!==n.kind&&J.noImplicitReturns&&!ax(n,i)&&pn(t,e.Diagnostics.Not_all_code_paths_return_a_value)}else dw(t,e.Diagnostics.A_return_statement_can_only_be_used_within_a_function_body)}}(t);case 245:return function(t){gw(t)||32768&t.flags&&dw(t,e.Diagnostics.with_statements_are_not_allowed_in_an_async_function_block),fb(t.expression);var r=e.getSourceFileOfNode(t);if(!uw(r)){var n=e.getSpanOfTokenAtPosition(r,t.pos).start;pw(r,n,t.statement.pos-n,e.Diagnostics.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}(t);case 246:return function(t){var n;gw(t);var i=!1,a=fb(t.expression),o=ff(a);e.forEach(t.caseBlock.clauses,(function(t){if(288!==t.kind||i||(void 0===n?n=t:(fw(t,e.Diagnostics.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),i=!0)),r&&287===t.kind){var s=fb(t.expression),c=ff(s),l=a;c&&o||(s=c?mf(s):s,l=mf(a)),Vv(l,s)||xp(s,l,t.expression,void 0)}e.forEach(t.statements,Rx),J.noFallthroughCasesInSwitch&&t.fallthroughFlowNode&&Ng(t.fallthroughFlowNode)&&pn(t,e.Diagnostics.Fallthrough_case_in_switch)})),t.caseBlock.locals&&Qb(t.caseBlock)}(t);case 247:return function(t){gw(t)||e.findAncestor(t.parent,(function(r){return e.isFunctionLike(r)?"quit":247===r.kind&&r.label.escapedText===t.label.escapedText&&(fw(t.label,e.Diagnostics.Duplicate_label_0,e.getTextOfNode(t.label)),!0)})),Rx(t.statement)}(t);case 248:return ox(t);case 249:return function(t){gw(t),pk(t.tryBlock);var r=t.catchClause;if(r){if(r.variableDeclaration){var n=r.variableDeclaration;if(n.type){var i=Ua(n,!1);!i||3&i.flags||dw(n.type,e.Diagnostics.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(n.initializer)dw(n.initializer,e.Diagnostics.Catch_clause_variable_cannot_have_an_initializer);else{var a=r.block.locals;a&&e.forEachKey(r.locals,(function(t){var r=a.get(t);r&&2&r.flags&&fw(r.valueDeclaration,e.Diagnostics.Cannot_redeclare_identifier_0_in_catch_clause,t)}))}}pk(r.block)}t.finallyBlock&&pk(t.finallyBlock)}(t);case 251:return Sk(t);case 199:return wk(t);case 254:return function(t){t.name||e.hasSyntacticModifier(t,512)||dw(t,e.Diagnostics.A_class_declaration_without_the_default_modifier_must_have_a_name),fx(t),e.forEach(t.members,Rx),Qb(t)}(t);case 255:return px(t);case 256:return yx(t);case 257:return function(t){zS(t),cx(t.name,e.Diagnostics.Type_alias_name_cannot_be_0),Lb(t),lx(t.typeParameters),137===t.type.kind?P.has(t.name.escapedText)&&1===e.length(t.typeParameters)||pn(t.type,e.Diagnostics.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types):(Rx(t.type),Qb(t))}(t);case 258:return function(t){if(r){zS(t),cx(t.name,e.Diagnostics.Enum_name_cannot_be_0),hk(t,t.name),yk(t,t.name),Lb(t),t.members.forEach(xx),vx(t);var n=Ai(t);if(t===e.getDeclarationOfKind(n,t.kind)){if(n.declarations.length>1){var i=e.isEnumConst(t);e.forEach(n.declarations,(function(t){e.isEnumDeclaration(t)&&e.isEnumConst(t)!==i&&pn(e.getNameOfDeclaration(t),e.Diagnostics.Enum_declarations_must_all_be_const_or_non_const)}))}var a=!1;e.forEach(n.declarations,(function(t){if(258!==t.kind)return!1;var r=t;if(!r.members.length)return!1;var n=r.members[0];n.initializer||(a?pn(n.name,e.Diagnostics.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):a=!0)}))}}}(t);case 259:return Sx(t);case 264:return Cx(t);case 263:return function(t){if(!Nx(t,e.Diagnostics.An_import_declaration_can_only_be_used_in_a_namespace_or_module)&&(zS(t),e.isInternalModuleImportEqualsDeclaration(t)||Dx(t)))if(Tx(t),e.hasSyntacticModifier(t,1)&&li(t),275!==t.moduleReference.kind){var r=ai(Ai(t));if(r!==ke){if(111551&r.flags){var n=e.getFirstIdentifier(t.moduleReference);1920&fi(n,112575).flags||pn(n,e.Diagnostics.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,e.declarationNameToString(n))}788968&r.flags&&cx(t.name,e.Diagnostics.Import_name_cannot_be_0)}t.isTypeOnly&&fw(t,e.Diagnostics.An_import_alias_cannot_use_import_type)}else!(H>=e.ModuleKind.ES2015)||t.isTypeOnly||8388608&t.flags||fw(t,e.Diagnostics.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead)}(t);case 270:return Ax(t);case 269:return function(t){if(!Nx(t,e.Diagnostics.An_export_assignment_can_only_be_used_in_a_module)){var r=300===t.parent.kind?t.parent:t.parent.parent;if(259!==r.kind||e.isAmbientModule(r)){if(!zS(t)&&e.hasEffectiveModifiers(t)&&dw(t,e.Diagnostics.An_export_assignment_cannot_have_modifiers),78===t.expression.kind){var n=t.expression,i=fi(n,67108863,!0,!0,t);if(i){Jg(i,n);var a=2097152&i.flags?ai(i):i;(a===ke||111551&a.flags)&&$v(t.expression)}else $v(t.expression);e.getEmitDeclarations(J)&&wa(t.expression,!0)}else $v(t.expression);Ox(r),8388608&t.flags&&!e.isEntityNameExpression(t.expression)&&fw(t.expression,e.Diagnostics.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),!t.isExportEquals||8388608&t.flags||(H>=e.ModuleKind.ES2015?fw(t,e.Diagnostics.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):H===e.ModuleKind.System&&fw(t,e.Diagnostics.Export_assignment_is_not_supported_when_module_flag_is_system))}else t.isExportEquals?pn(t,e.Diagnostics.An_export_assignment_cannot_be_used_in_a_namespace):pn(t,e.Diagnostics.A_default_export_can_only_be_used_in_an_ECMAScript_style_module)}}(t);case 233:case 250:return void gw(t);case 274:(function(e){$b(e)})(t)}}(t),d=i}}function Mx(t){e.isInJSFile(t)||fw(t,e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments)}function Lx(t){var r=Cn(e.getSourceFileOfNode(t));if(!(1&r.flags)){r.deferredNodes=r.deferredNodes||new e.Map;var n=O(t);r.deferredNodes.set(n,t)}}function jx(t){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkDeferredNode",{kind:t.kind,pos:t.pos,end:t.end});var r=d;switch(d=t,x=0,t.kind){case 204:case 205:case 206:case 162:case 278:Vh(t);break;case 209:case 210:case 166:case 165:!function(t){e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t));var r=e.getFunctionFlags(t),n=zc(t);if(Ev(t,n),t.body)if(e.getEffectiveReturnTypeNode(t)||Bc(Ic(t)),232===t.body.kind)Rx(t.body);else{var i=fb(t.body),a=n&&ix(n,r);a&&fp(2==(3&r)?zb(i,t.body,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):i,a,t.body,t.body)}}(t);break;case 168:case 169:Eb(t);break;case 223:!function(t){e.forEach(t.members,Rx),Qb(t)}(t);break;case 277:!function(e){ah(e)}(t);break;case 276:!function(e){ah(e.openingElement),q_(e.closingElement.tagName)?G_(e.closingElement):fb(e.closingElement.tagName),V_(e)}(t)}d=r,null===e.tracing||void 0===e.tracing||e.tracing.pop()}function Bx(r){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkSourceFile",{path:r.path},!0),e.performance.mark("beforeCheck"),function(r){var n=Cn(r);if(!(1&n.flags)){if(e.skipTypeChecking(r,J,t))return;!function(t){!!(8388608&t.flags)&&function(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];if((e.isDeclaration(i)||234===i.kind)&&mw(i))return!0}}(t)}(r),e.clear(Gr),e.clear($r),e.clear(Yr),e.forEach(r.statements,Rx),Rx(r.endOfFileToken),function(e){var t=Cn(e);t.deferredNodes&&t.deferredNodes.forEach(jx)}(r),e.isExternalOrCommonJsModule(r)&&Qb(r),r.isDeclarationFile||!J.noUnusedLocals&&!J.noUnusedParameters||Zb(Ux(r),(function(t,r,n){!e.containsParseError(t)&&zx(r,!!(8388608&t.flags))&&Qr.add(n)})),2===J.importsNotUsedAsValues&&!r.isDeclarationFile&&e.isExternalModule(r)&&function(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];(Px(i)||Ix(i))&&pn(i,e.Diagnostics.This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error)}}(r),e.isExternalOrCommonJsModule(r)&&Ox(r),Gr.length&&(e.forEach(Gr,mk),e.clear(Gr)),$r.length&&(e.forEach($r,gk),e.clear($r)),Yr.length&&(e.forEach(Yr,_k),e.clear(Yr)),n.flags|=1}}(r),e.performance.mark("afterCheck"),e.performance.measure("Check","beforeCheck","afterCheck"),null===e.tracing||void 0===e.tracing||e.tracing.pop()}function zx(t,r){if(r)return!1;switch(t){case 0:return!!J.noUnusedLocals;case 1:return!!J.noUnusedParameters;default:return e.Debug.assertNever(t)}}function Ux(t){return Sr.get(t.path)||e.emptyArray}function qx(r,i){try{return n=i,function(r){if(Jx(),r){var n=Qr.getGlobalDiagnostics(),i=n.length;Bx(r);var a=Qr.getDiagnostics(r.fileName),o=Qr.getGlobalDiagnostics();if(o!==n){var s=e.relativeComplement(n,o,e.compareDiagnostics);return e.concatenate(s,a)}return 0===i&&o.length>0?e.concatenate(o,a):a}return e.forEach(t.getSourceFiles(),Bx),Qr.getDiagnostics()}(r)}finally{n=void 0}}function Jx(){if(!r)throw new Error("Trying to get diagnostics from a type checker that does not produce them.")}function Vx(e){switch(e.kind){case 160:case 254:case 256:case 257:case 258:case 334:case 327:case 328:return!0;case 265:return e.isTypeOnly;case 268:case 273:return e.parent.parent.isTypeOnly;default:return!1}}function Hx(e){for(;158===e.parent.kind;)e=e.parent;return 174===e.parent.kind}function Kx(t,r){for(var n;(t=e.getContainingClass(t))&&!(n=r(t)););return n}function Wx(e,t){return!!Kx(e,(function(e){return e===t}))}function Gx(e){return void 0!==function(e){for(;158===e.parent.kind;)e=e.parent;return 263===e.parent.kind?e.parent.moduleReference===e?e.parent:void 0:269===e.parent.kind&&e.parent.expression===e?e.parent:void 0}(e)}function $x(t){if(e.isDeclarationName(t))return Ai(t.parent);if(e.isInJSFile(t)&&202===t.parent.kind&&t.parent===t.parent.parent.left&&!e.isPrivateIdentifier(t)){var r=function(t){switch(e.getAssignmentDeclarationKind(t.parent.parent)){case 1:case 3:return Ai(t.parent);case 4:case 2:case 5:return Ai(t.parent.parent)}}(t);if(r)return r}if(269===t.parent.kind&&e.isEntityNameExpression(t)){var n=fi(t,2998271,!0);if(n&&n!==ke)return n}else if(!e.isPropertyAccessExpression(t)&&!e.isPrivateIdentifier(t)&&Gx(t)){var i=e.getAncestor(t,263);return e.Debug.assert(void 0!==i),di(t,!0)}if(!e.isPropertyAccessExpression(t)&&!e.isPrivateIdentifier(t)){var a=function(t){for(var r=t.parent;e.isQualifiedName(r);)t=r,r=r.parent;if(r&&196===r.kind&&r.qualifier===t)return r}(t);if(a){xd(a);var o=Cn(t).resolvedSymbol;return o===ke?void 0:o}}for(;e.isRightSideOfQualifiedNameOrPropertyAccess(t);)t=t.parent;if(function(e){for(;202===e.parent.kind;)e=e.parent;return 225===e.parent.kind}(t)){var s=0;225===t.parent.kind?(s=788968,e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)&&(s|=111551)):s=1920,s|=2097152;var c=e.isEntityNameExpression(t)?fi(t,s):void 0;if(c)return c}if(329===t.parent.kind)return e.getParameterSymbolFromJSDoc(t.parent);if(160===t.parent.kind&&333===t.parent.parent.kind){e.Debug.assert(!e.isInJSFile(t));var l=e.getTypeParameterFromJsDoc(t.parent);return l&&l.symbol}if(e.isExpressionNode(t)){if(e.nodeIsMissing(t))return;if(78===t.kind){if(e.isJSXTagName(t)&&q_(t)){var u=G_(t.parent);return u===ke?void 0:u}return fi(t,111551,!1,!0)}if(202===t.kind||158===t.kind){var d=Cn(t);return d.resolvedSymbol||(202===t.kind?kh(t):xh(t)),d.resolvedSymbol}}else{if(Hx(t))return fi(t,s=174===t.parent.kind?788968:1920,!1,!0);if(function(e){for(;158===e.parent.kind;)e=e.parent;for(;202===e.parent.kind;)e=e.parent;return 305===e.parent.kind}(t))return fi(t,s=901119,!1,!0,e.getHostSignatureFromJSDoc(t))}return 173===t.parent.kind?fi(t,1):void 0}function Yx(t,r){if(300===t.kind)return e.isExternalModule(t)?Ci(t.symbol):void 0;var n=t.parent,i=n.parent;if(!(16777216&t.flags)){if(j(t)){var a=Ai(n);return e.isImportOrExportSpecifier(t.parent)&&t.parent.propertyName===t?j_(a):a}if(e.isLiteralComputedPropertyDeclarationName(t))return Ai(n.parent);if(78===t.kind){if(Gx(t))return $x(t);if(199===n.kind&&197===i.kind&&t===n.propertyName){var o=gc(Xx(i),t.escapedText);if(o)return o}}switch(t.kind){case 78:case 79:case 202:case 158:return $x(t);case 108:var s=e.getThisContainer(t,!1);if(e.isFunctionLike(s)){var c=Ic(s);if(c.thisParameter)return c.thisParameter}if(e.isInExpressionContext(t))return fb(t).symbol;case 188:return vd(t).symbol;case 106:return fb(t).symbol;case 133:var l=t.parent;return l&&167===l.kind?l.parent.symbol:void 0;case 10:case 14:if(e.isExternalModuleImportEqualsDeclaration(t.parent.parent)&&e.getExternalModuleImportEqualsDeclarationExpression(t.parent.parent)===t||(264===t.parent.kind||270===t.parent.kind)&&t.parent.moduleSpecifier===t||e.isInJSFile(t)&&e.isRequireCall(t.parent,!1)||e.isImportCall(t.parent)||e.isLiteralTypeNode(t.parent)&&e.isLiteralImportTypeNode(t.parent.parent)&&t.parent.parent.argument===t.parent)return gi(t,t,r);if(e.isCallExpression(n)&&e.isBindableObjectDefinePropertyCall(n)&&n.arguments[1]===t)return Ai(n);case 8:var u=e.isElementAccessExpression(n)?n.argumentExpression===t?ub(n.expression):void 0:e.isLiteralTypeNode(n)&&e.isIndexedAccessTypeNode(i)?xd(i.objectType):void 0;return u&&gc(u,e.escapeLeadingUnderscores(t.text));case 88:case 98:case 38:case 83:return Ai(t.parent);case 196:return e.isLiteralImportTypeNode(t)?Yx(t.argument.literal,r):void 0;case 93:return e.isExportAssignment(t.parent)?e.Debug.checkDefined(t.parent.symbol):void 0;default:return}}}function Xx(t){if(e.isSourceFile(t)&&!e.isExternalModule(t))return Ee;if(16777216&t.flags)return Ee;var r,n,i=e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments(t),a=i&&Oo(Ai(i.class));if(e.isPartOfTypeNode(t)){var o=xd(t);return a?ls(o,a.thisType):o}if(e.isExpressionNode(t))return Zx(t);if(a&&!i.isImplements){var s=e.firstOrUndefined(Po(a));return s?ls(s,a.thisType):Ee}if(Vx(t))return Jo(n=Ai(t));if(78===(r=t).kind&&Vx(r.parent)&&e.getNameOfDeclaration(r.parent)===r)return(n=Yx(t))?Jo(n):Ee;if(e.isDeclaration(t))return _o(n=Ai(t));if(j(t))return(n=Yx(t))?_o(n):Ee;if(e.isBindingPattern(t))return Ua(t.parent,!0)||Ee;if(Gx(t)&&(n=Yx(t))){var c=Jo(n);return c!==Ee?c:_o(n)}return Ee}function Qx(t){if(e.Debug.assert(201===t.kind||200===t.kind),241===t.parent.kind)return qv(t,Pk(t.parent)||Ee);if(218===t.parent.kind)return qv(t,ub(t.parent.right)||Ee);if(291===t.parent.kind){var r=e.cast(t.parent.parent,e.isObjectLiteralExpression);return zv(r,Qx(r)||Ee,e.indexOfNode(r.properties,t.parent))}var n=e.cast(t.parent,e.isArrayLiteralExpression),i=Qx(n)||Ee,a=Ik(65,i,Ne,t.parent)||Ee;return Uv(n,i,n.elements.indexOf(t),a)}function Zx(t,r){return e.isRightSideOfQualifiedNameOrPropertyAccess(t)&&(t=t.parent),gd(ub(t,r))}function eS(t){var r=Ai(t.parent);return e.hasSyntacticModifier(t,32)?_o(r):Jo(r)}function tS(t){var r=t.name;switch(r.kind){case 78:return hd(e.idText(r));case 8:case 10:return hd(r.text);case 159:var n=M_(r);return Mv(n,12288)?n:Re;default:return e.Debug.fail("Unsupported property name.")}}function rS(t){t=ac(t);var r=e.createSymbolTable(Hs(t)),n=hc(t,0).length?bt:hc(t,1).length?kt:void 0;return n&&e.forEach(Hs(n),(function(e){r.has(e.escapedName)||r.set(e.escapedName,e)})),Hi(r)}function nS(t){return e.typeHasCallOrConstructSignatures(t,le)}function iS(t){if(e.isGeneratedIdentifier(t))return!1;var r=e.getParseTreeNode(t,e.isIdentifier);if(!r)return!1;var n=r.parent;return!!n&&(!((e.isPropertyAccessExpression(n)||e.isPropertyAssignment(n))&&n.name===r)&&PS(r)===se)}function aS(t){var r=gi(t.parent,t);if(!r||e.isShorthandAmbientModuleSymbol(r))return!0;var n=ki(r),i=Tn(r=vi(r));return void 0===i.exportsSomeValue&&(i.exportsSomeValue=n?!!(111551&r.flags):e.forEachEntry(Di(r),(function(e){return(e=ii(e))&&!!(111551&e.flags)}))),i.exportsSomeValue}function oS(t,r){var n=e.getParseTreeNode(t,e.isIdentifier);if(n){var i=PS(n,function(t){return e.isModuleOrEnumDeclaration(t.parent)&&t===t.parent.name}(n));if(i){if(1048576&i.flags){var a=Ci(i.exportSymbol);if(!r&&944&a.flags&&!(3&a.flags))return;i=a}var o=Ni(i);if(o){if(512&o.flags&&300===o.valueDeclaration.kind){var s=o.valueDeclaration;return s!==e.getSourceFileOfNode(n)?void 0:s}return e.findAncestor(n.parent,(function(t){return e.isModuleOrEnumDeclaration(t)&&Ai(t)===o}))}}}}function sS(t){if(t.generatedImportReference)return t.generatedImportReference;var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=PS(r);if(ni(n,111551)&&!ci(n))return Vn(n)}}function cS(t){if(418&t.flags&&!e.isSourceFile(t.valueDeclaration)){var r=Tn(t);if(void 0===r.isDeclarationWithCollidingName){var n=e.getEnclosingBlockScopeContainer(t.valueDeclaration);if(e.isStatementWithLocals(n)||function(t){return e.isBindingElement(t.valueDeclaration)&&290===e.walkUpBindingElementsAndPatterns(t.valueDeclaration).parent.kind}(t)){var i=Cn(t.valueDeclaration);if(Fn(n.parent,t.escapedName,111551,void 0,void 0,!1))r.isDeclarationWithCollidingName=!0;else if(262144&i.flags){var a=524288&i.flags,o=e.isIterationStatement(n,!1),s=232===n.kind&&e.isIterationStatement(n.parent,!1);r.isDeclarationWithCollidingName=!(e.isBlockScopedContainerTopLevel(n)||a&&(o||s))}else r.isDeclarationWithCollidingName=!1}}return r.isDeclarationWithCollidingName}return!1}function lS(t){if(!e.isGeneratedIdentifier(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=PS(r);if(n&&cS(n))return n.valueDeclaration}}}function uS(t){var r=e.getParseTreeNode(t,e.isDeclaration);if(r){var n=Ai(r);if(n)return cS(n)}return!1}function dS(t){switch(t.kind){case 263:return fS(Ai(t)||ke);case 265:case 266:case 268:case 273:var r=Ai(t)||ke;return fS(r)&&!ci(r);case 270:var n=t.exportClause;return!!n&&(e.isNamespaceExport(n)||e.some(n.elements,dS));case 269:return!t.expression||78!==t.expression.kind||fS(Ai(t)||ke)}return!1}function pS(t){var r=e.getParseTreeNode(t,e.isImportEqualsDeclaration);return!(void 0===r||300!==r.parent.kind||!e.isInternalModuleImportEqualsDeclaration(r))&&(fS(Ai(r))&&r.moduleReference&&!e.nodeIsMissing(r.moduleReference))}function fS(t){var r=ai(t);return r===ke||!!(111551&r.flags)&&(e.shouldPreserveConstEnums(J)||!mS(r))}function mS(e){return Bv(e)||!!e.constEnumOnlyModule}function gS(t,r){if(Hn(t)){var n=Ai(t),i=n&&Tn(n);if(null==i?void 0:i.referenced)return!0;var a=Tn(n).target;if(a&&1&e.getEffectiveModifierFlags(t)&&111551&a.flags&&(e.shouldPreserveConstEnums(J)||!mS(a)))return!0}return!!r&&!!e.forEachChild(t,(function(e){return gS(e,r)}))}function _S(t){if(e.nodeIsPresent(t.body)){if(e.isGetAccessor(t)||e.isSetAccessor(t))return!1;var r=Rc(Ai(t));return r.length>1||1===r.length&&r[0].declaration!==t}return!1}function hS(t){return!(!W||Tc(t)||e.isJSDocParameterTag(t)||!t.initializer||e.hasSyntacticModifier(t,92))}function yS(t){return W&&Tc(t)&&!t.initializer&&e.hasSyntacticModifier(t,92)}function vS(t){var r=e.getParseTreeNode(t,e.isFunctionDeclaration);if(!r)return!1;var n=Ai(r);return!!(n&&16&n.flags)&&!!e.forEachEntry(wi(n),(function(t){return 111551&t.flags&&t.valueDeclaration&&e.isPropertyAccessExpression(t.valueDeclaration)}))}function bS(t){var r=e.getParseTreeNode(t,e.isFunctionDeclaration);if(!r)return e.emptyArray;var n=Ai(r);return n&&Hs(_o(n))||e.emptyArray}function kS(e){return Cn(e).flags||0}function xS(e){return vx(e.parent),Cn(e).enumMemberValue}function SS(e){switch(e.kind){case 294:case 202:case 203:return!0}return!1}function wS(t){if(294===t.kind)return xS(t);var r=Cn(t).resolvedSymbol;if(r&&8&r.flags){var n=r.valueDeclaration;if(e.isEnumConst(n.parent))return xS(n)}}function DS(e){return!!(524288&e.flags)&&hc(e,0).length>0}function ES(t,r){var n,i=e.getParseTreeNode(t,e.isEntityName);if(!i)return e.TypeReferenceSerializationKind.Unknown;if(r&&!(r=e.getParseTreeNode(r)))return e.TypeReferenceSerializationKind.Unknown;var a=fi(i,111551,!0,!0,r),o=(null===(n=null==a?void 0:a.declarations)||void 0===n?void 0:n.every(e.isTypeOnlyImportOrExportDeclaration))||!1,s=a&&2097152&a.flags?ai(a):a,c=fi(i,788968,!0,!1,r);if(s&&s===c){var l=Fl(!1);if(l&&s===l)return e.TypeReferenceSerializationKind.Promise;var u=_o(s);if(u&&Do(u))return o?e.TypeReferenceSerializationKind.TypeWithCallSignature:e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue}if(!c)return o?e.TypeReferenceSerializationKind.ObjectType:e.TypeReferenceSerializationKind.Unknown;var d=Jo(c);return d===Ee?o?e.TypeReferenceSerializationKind.ObjectType:e.TypeReferenceSerializationKind.Unknown:3&d.flags?e.TypeReferenceSerializationKind.ObjectType:Mv(d,245760)?e.TypeReferenceSerializationKind.VoidNullableOrNeverType:Mv(d,528)?e.TypeReferenceSerializationKind.BooleanType:Mv(d,296)?e.TypeReferenceSerializationKind.NumberLikeType:Mv(d,2112)?e.TypeReferenceSerializationKind.BigIntLikeType:Mv(d,402653316)?e.TypeReferenceSerializationKind.StringLikeType:vf(d)?e.TypeReferenceSerializationKind.ArrayLikeType:Mv(d,12288)?e.TypeReferenceSerializationKind.ESSymbolType:DS(d)?e.TypeReferenceSerializationKind.TypeWithCallSignature:rf(d)?e.TypeReferenceSerializationKind.ArrayLikeType:e.TypeReferenceSerializationKind.ObjectType}function TS(t,r,n,i,a){var o=e.getParseTreeNode(t,e.isVariableLikeOrAccessor);if(!o)return e.factory.createToken(129);var s=Ai(o),c=!s||133120&s.flags?Ee:gf(_o(s));return 8192&c.flags&&c.symbol===s&&(n|=1048576),a&&(c=Nf(c)),re.typeToTypeNode(c,r,1024|n,i)}function CS(t,r,n,i){var a=e.getParseTreeNode(t,e.isFunctionLike);if(!a)return e.factory.createToken(129);var o=Ic(a);return re.typeToTypeNode(Bc(o),r,1024|n,i)}function AS(t,r,n,i){var a=e.getParseTreeNode(t,e.isExpression);if(!a)return e.factory.createToken(129);var o=Hf(Zx(a));return re.typeToTypeNode(o,r,1024|n,i)}function NS(t){return ne.has(e.escapeLeadingUnderscores(t))}function PS(t,r){var n=Cn(t).resolvedSymbol;if(n)return n;var i=t;if(r){var a=t.parent;e.isDeclaration(a)&&t===a.name&&(i=Aa(a))}return Fn(i,t.escapedText,3257279,void 0,void 0,!0)}function IS(t){if(!e.isGeneratedIdentifier(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=PS(r);if(n)return Ri(n).valueDeclaration}}}function FS(t){return!!(e.isDeclarationReadonly(t)||e.isVariableDeclaration(t)&&e.isVarConst(t))&&_d(_o(Ai(t)))}function OS(t,r){return function(t,r,n){var i=1024&t.flags?re.symbolToExpression(t.symbol,111551,r,void 0,n):t===ze?e.factory.createTrue():t===je&&e.factory.createFalse();if(i)return i;var a=t.value;return"object"==typeof a?e.factory.createBigIntLiteral(a):"number"==typeof a?e.factory.createNumericLiteral(a):e.factory.createStringLiteral(a)}(_o(Ai(t)),t,r)}function RS(t){return t?(un(t),e.getSourceFileOfNode(t).localJsxFactory||ar):ar}function MS(t){if(t){var r=e.getSourceFileOfNode(t);if(r){if(r.localJsxFragmentFactory)return r.localJsxFragmentFactory;var n=r.pragmas.get("jsxfrag"),i=e.isArray(n)?n[0]:n;if(i)return r.localJsxFragmentFactory=e.parseIsolatedEntityName(i.arguments.factory,V),r.localJsxFragmentFactory}}if(J.jsxFragmentFactory)return e.parseIsolatedEntityName(J.jsxFragmentFactory,V)}function LS(t){var r=259===t.kind?e.tryCast(t.name,e.isStringLiteral):e.getExternalModuleName(t),n=_i(r,r,void 0);if(n)return e.getDeclarationOfKind(n,300)}function jS(t,r){if((o&r)!==r&&J.importHelpers){var n=e.getSourceFileOfNode(t);if(e.isEffectiveExternalModule(n,J)&&!(8388608&t.flags)){var i=function(t,r){u||(u=hi(t,e.externalHelpersModuleNameText,e.Diagnostics.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,r)||ke);return u}(n,t);if(i!==ke)for(var a=r&~o,s=1;s<=2097152;s<<=1)if(a&s){var c=BS(s);Nn(i.exports,e.escapeLeadingUnderscores(c),111551)||pn(t,e.Diagnostics.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,e.externalHelpersModuleNameText,c)}o|=r}}}function BS(t){switch(t){case 1:return"__extends";case 2:return"__assign";case 4:return"__rest";case 8:return"__decorate";case 16:return"__metadata";case 32:return"__param";case 64:return"__awaiter";case 128:return"__generator";case 256:return"__values";case 512:return"__read";case 1024:return"__spreadArray";case 2048:return"__await";case 4096:return"__asyncGenerator";case 8192:return"__asyncDelegator";case 16384:return"__asyncValues";case 32768:return"__exportStar";case 65536:return"__importStar";case 131072:return"__importDefault";case 262144:return"__makeTemplateObject";case 524288:return"__classPrivateFieldGet";case 1048576:return"__classPrivateFieldSet";case 2097152:return"__createBinding";default:return e.Debug.fail("Unrecognized helper")}}function zS(t){return function(t){if(!t.decorators)return!1;if(8===e.getSourceFileOfNode(t).scriptKind){if(e.isTokenInsideBuilder(t.decorators,J))return!1;var r=e.getEtsExtendDecoratorComponentNames(t.decorators,J);if(r.length){if(e.filterEtsExtendDecoratorComponentNamesByOptions(r,J).length)return!1;var n=e.getSourceFileOfNode(t),i=e.getSpanOfTokenAtPosition(n,t.pos);return Qr.add(e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.Decorator_name_must_be_one_of_ETS_Components)),!0}if(e.hasEtsStylesDecoratorNames(t.decorators,J))return!0}if(!e.nodeCanBeDecorated(t,t.parent,t.parent.parent,J))return 166!==t.kind||e.nodeIsPresent(t.body)?dw(t,e.Diagnostics.Decorators_are_not_valid_here):dw(t,e.Diagnostics.A_decorator_can_only_decorate_a_method_implementation_not_an_overload);if(168===t.kind||169===t.kind){var a=e.getAllAccessorDeclarations(t.parent.members,t);if(a.firstAccessor.decorators&&t===a.secondAccessor)return dw(t,e.Diagnostics.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}return!1}(t)||function(t){var r,n,i,a,o=function(t){return!!t.modifiers&&(function(t){switch(t.kind){case 168:case 169:case 167:case 164:case 163:case 166:case 165:case 172:case 259:case 264:case 263:case 270:case 269:case 209:case 210:case 161:return!1;default:if(260===t.parent.kind||300===t.parent.kind)return!1;switch(t.kind){case 253:return US(t,130);case 254:case 176:return US(t,126);case 256:case 234:case 257:return!0;case 258:return US(t,85);default:e.Debug.fail()}}}(t)?dw(t,e.Diagnostics.Modifiers_cannot_appear_here):void 0)}(t);if(void 0!==o)return o;for(var s=0,c=0,l=t.modifiers;c<l.length;c++){var u=l[c];if(143!==u.kind){if(163===t.kind||165===t.kind)return fw(u,e.Diagnostics._0_modifier_cannot_appear_on_a_type_member,e.tokenToString(u.kind));if(172===t.kind)return fw(u,e.Diagnostics._0_modifier_cannot_appear_on_an_index_signature,e.tokenToString(u.kind))}switch(u.kind){case 85:if(258!==t.kind)return fw(t,e.Diagnostics.A_class_member_cannot_have_the_0_keyword,e.tokenToString(85));break;case 123:case 122:case 121:var d=ya(e.modifierToFlag(u.kind));if(28&s)return fw(u,e.Diagnostics.Accessibility_modifier_already_seen);if(32&s)return fw(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"static");if(64&s)return fw(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"readonly");if(256&s)return fw(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"async");if(260===t.parent.kind||300===t.parent.kind)return fw(u,e.Diagnostics._0_modifier_cannot_appear_on_a_module_or_namespace_element,d);if(128&s)return 121===u.kind?fw(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,d,"abstract"):fw(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"abstract");if(e.isPrivateIdentifierPropertyDeclaration(t))return fw(u,e.Diagnostics.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);s|=e.modifierToFlag(u.kind);break;case 124:if(32&s)return fw(u,e.Diagnostics._0_modifier_already_seen,"static");if(64&s)return fw(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"static","readonly");if(256&s)return fw(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"static","async");if(260===t.parent.kind||300===t.parent.kind)return fw(u,e.Diagnostics._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(161===t.kind)return fw(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"static");if(128&s)return fw(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(e.isPrivateIdentifierPropertyDeclaration(t))return fw(u,e.Diagnostics._0_modifier_cannot_be_used_with_a_private_identifier,"static");s|=32,r=u;break;case 143:if(64&s)return fw(u,e.Diagnostics._0_modifier_already_seen,"readonly");if(164!==t.kind&&163!==t.kind&&172!==t.kind&&161!==t.kind)return fw(u,e.Diagnostics.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);s|=64,a=u;break;case 93:if(1&s)return fw(u,e.Diagnostics._0_modifier_already_seen,"export");if(2&s)return fw(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","declare");if(128&s)return fw(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","abstract");if(256&s)return fw(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","async");if(e.isClassLike(t.parent))return fw(u,e.Diagnostics._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(161===t.kind)return fw(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"export");s|=1;break;case 88:var p=300===t.parent.kind?t.parent:t.parent.parent;if(259===p.kind&&!e.isAmbientModule(p))return fw(u,e.Diagnostics.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);s|=512;break;case 134:if(2&s)return fw(u,e.Diagnostics._0_modifier_already_seen,"declare");if(256&s)return fw(u,e.Diagnostics._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(e.isClassLike(t.parent)&&!e.isPropertyDeclaration(t))return fw(u,e.Diagnostics._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(161===t.kind)return fw(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"declare");if(8388608&t.parent.flags&&260===t.parent.kind)return fw(u,e.Diagnostics.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(e.isPrivateIdentifierPropertyDeclaration(t))return fw(u,e.Diagnostics._0_modifier_cannot_be_used_with_a_private_identifier,"declare");s|=2,n=u;break;case 126:if(128&s)return fw(u,e.Diagnostics._0_modifier_already_seen,"abstract");if(254!==t.kind&&176!==t.kind){if(166!==t.kind&&164!==t.kind&&168!==t.kind&&169!==t.kind)return fw(u,e.Diagnostics.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(254!==t.parent.kind||!e.hasSyntacticModifier(t.parent,128))return fw(u,e.Diagnostics.Abstract_methods_can_only_appear_within_an_abstract_class);if(32&s)return fw(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(8&s)return fw(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(256&s&&i)return fw(i,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"async","abstract")}if(e.isNamedDeclaration(t)&&79===t.name.kind)return fw(u,e.Diagnostics._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");s|=128;break;case 130:if(256&s)return fw(u,e.Diagnostics._0_modifier_already_seen,"async");if(2&s||8388608&t.parent.flags)return fw(u,e.Diagnostics._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(161===t.kind)return fw(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"async");if(128&s)return fw(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");s|=256,i=u}}if(167===t.kind)return 32&s?fw(r,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):128&s?fw(r,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"abstract"):256&s?fw(i,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!!(64&s)&&fw(a,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"readonly");if((264===t.kind||263===t.kind)&&2&s)return fw(n,e.Diagnostics.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare");if(161===t.kind&&92&s&&e.isBindingPattern(t.name))return fw(t,e.Diagnostics.A_parameter_property_may_not_be_declared_using_a_binding_pattern);if(161===t.kind&&92&s&&t.dotDotDotToken)return fw(t,e.Diagnostics.A_parameter_property_cannot_be_declared_using_a_rest_parameter);if(256&s)return function(t,r){switch(t.kind){case 166:case 253:case 209:case 210:return!1}return fw(r,e.Diagnostics._0_modifier_cannot_be_used_here,"async")}(t,i);return!1}(t)}function US(e,t){return e.modifiers.length>1||e.modifiers[0].kind!==t}function qS(t,r){return void 0===r&&(r=e.Diagnostics.Trailing_comma_not_allowed),!(!t||!t.hasTrailingComma)&&pw(t[0],t.end-1,1,r)}function JS(t,r){if(t&&0===t.length){var n=t.pos-1;return pw(r,n,e.skipTrivia(r.text,t.end)+1-n,e.Diagnostics.Type_parameter_list_cannot_be_empty)}return!1}function VS(t){if(V>=3){var r=t.body&&e.isBlock(t.body)&&e.findUseStrictPrologue(t.body.statements);if(r){var n=(o=t.parameters,e.filter(o,(function(t){return!!t.initializer||e.isBindingPattern(t.name)||e.isRestParameter(t)})));if(e.length(n)){e.forEach(n,(function(t){e.addRelatedInfo(pn(t,e.Diagnostics.This_parameter_is_not_allowed_with_use_strict_directive),e.createDiagnosticForNode(r,e.Diagnostics.use_strict_directive_used_here))}));var a=n.map((function(t,r){return 0===r?e.createDiagnosticForNode(t,e.Diagnostics.Non_simple_parameter_declared_here):e.createDiagnosticForNode(t,e.Diagnostics.and_here)}));return e.addRelatedInfo.apply(void 0,i([pn(r,e.Diagnostics.use_strict_directive_cannot_be_used_with_non_simple_parameter_list)],a)),!0}}}var o;return!1}function HS(t){var r=e.getSourceFileOfNode(t);return zS(t)||JS(t.typeParameters,r)||function(t){for(var r=!1,n=t.length,i=0;i<n;i++){var a=t[i];if(a.dotDotDotToken){if(i!==n-1)return fw(a.dotDotDotToken,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list);if(8388608&a.flags||qS(t,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),a.questionToken)return fw(a.questionToken,e.Diagnostics.A_rest_parameter_cannot_be_optional);if(a.initializer)return fw(a.name,e.Diagnostics.A_rest_parameter_cannot_have_an_initializer)}else if(Tc(a)){if(r=!0,a.questionToken&&a.initializer)return fw(a.name,e.Diagnostics.Parameter_cannot_have_question_mark_and_initializer)}else if(r&&!a.initializer)return fw(a.name,e.Diagnostics.A_required_parameter_cannot_follow_an_optional_parameter)}}(t.parameters)||function(t,r){if(!e.isArrowFunction(t))return!1;var n=t.equalsGreaterThanToken,i=e.getLineAndCharacterOfPosition(r,n.pos).line,a=e.getLineAndCharacterOfPosition(r,n.end).line;return i!==a&&fw(n,e.Diagnostics.Line_terminator_not_permitted_before_arrow)}(t,r)||e.isFunctionLikeDeclaration(t)&&VS(t)}function KS(t,r){return qS(r)||function(t,r){if(r&&0===r.length){var n=e.getSourceFileOfNode(t),i=r.pos-1;return pw(n,i,e.skipTrivia(n.text,r.end)+1-i,e.Diagnostics.Type_argument_list_cannot_be_empty)}return!1}(t,r)}function WS(t){return function(t){if(t)for(var r=0,n=t;r<n.length;r++){var i=n[r];if(224===i.kind)return pw(i,i.pos,0,e.Diagnostics.Argument_expression_expected)}return!1}(t)}function GS(t){var r=t.types;if(qS(r))return!0;if(r&&0===r.length){var n=e.tokenToString(t.token);return pw(t,r.pos,0,e.Diagnostics._0_list_cannot_be_empty,n)}return e.some(r,$S)}function $S(e){return KS(e,e.typeArguments)}function YS(t){if(159!==t.kind)return!1;var r=t;return 218===r.expression.kind&&27===r.expression.operatorToken.kind&&fw(r.expression,e.Diagnostics.A_comma_expression_is_not_allowed_in_a_computed_property_name)}function XS(t){if(t.asteriskToken){if(e.Debug.assert(253===t.kind||209===t.kind||166===t.kind),8388608&t.flags)return fw(t.asteriskToken,e.Diagnostics.Generators_are_not_allowed_in_an_ambient_context);if(!t.body)return fw(t.asteriskToken,e.Diagnostics.An_overload_signature_cannot_be_declared_as_a_generator)}}function QS(e,t){return!!e&&fw(e,t)}function ZS(e,t){return!!e&&fw(e,t)}function ew(t){if(gw(t))return!0;if(241===t.kind&&t.awaitModifier&&!(32768&t.flags)){var r=e.getSourceFileOfNode(t);if(e.isInTopLevelContext(t))uw(r)||(e.isEffectiveExternalModule(r,J)||Qr.add(e.createDiagnosticForNode(t.awaitModifier,e.Diagnostics.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module)),(H!==e.ModuleKind.ESNext&&H!==e.ModuleKind.System||V<4)&&Qr.add(e.createDiagnosticForNode(t.awaitModifier,e.Diagnostics.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher)));else if(!uw(r)){var n=e.createDiagnosticForNode(t.awaitModifier,e.Diagnostics.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),i=e.getContainingFunction(t);if(i&&167!==i.kind){e.Debug.assert(!(2&e.getFunctionFlags(i)),"Enclosing function should never be an async function.");var a=e.createDiagnosticForNode(i,e.Diagnostics.Did_you_mean_to_mark_this_function_as_async);e.addRelatedInfo(n,a)}return Qr.add(n),!0}return!1}if(252===t.initializer.kind){var o=t.initializer;if(!cw(o)){var s=o.declarations;if(!s.length)return!1;if(s.length>1){n=240===t.kind?e.Diagnostics.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:e.Diagnostics.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return dw(o.declarations[1],n)}var c=s[0];if(c.initializer){var n=240===t.kind?e.Diagnostics.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:e.Diagnostics.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return fw(c.name,n)}if(c.type)return fw(c,n=240===t.kind?e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:e.Diagnostics.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation)}}return!1}function tw(t){if(t.parameters.length===(168===t.kind?1:2))return e.getThisParameter(t)}function rw(t,r){if(function(t){return e.isDynamicName(t)&&!es(t)}(t))return fw(t,r)}function nw(t){if(HS(t))return!0;if(166===t.kind){if(201===t.parent.kind){if(t.modifiers&&(1!==t.modifiers.length||130!==e.first(t.modifiers).kind))return dw(t,e.Diagnostics.Modifiers_cannot_appear_here);if(QS(t.questionToken,e.Diagnostics.An_object_member_cannot_be_declared_optional))return!0;if(ZS(t.exclamationToken,e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(void 0===t.body)return pw(t,t.end-1,1,e.Diagnostics._0_expected,"{")}if(XS(t))return!0}if(e.isClassLike(t.parent)){if(8388608&t.flags)return rw(t.name,e.Diagnostics.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(166===t.kind&&!t.body)return rw(t.name,e.Diagnostics.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(256===t.parent.kind)return rw(t.name,e.Diagnostics.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(178===t.parent.kind)return rw(t.name,e.Diagnostics.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function iw(t){return e.isStringOrNumericLiteralLike(t)||216===t.kind&&40===t.operator&&8===t.operand.kind}function aw(t){var r,n=t.initializer;if(n){var i=!(iw(n)||function(t){if((e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)&&iw(t.argumentExpression))&&e.isEntityNameExpression(t.expression))return!!(1024&$v(t).flags)}(n)||110===n.kind||95===n.kind||(r=n,9===r.kind||216===r.kind&&40===r.operator&&9===r.operand.kind)),a=e.isDeclarationReadonly(t)||e.isVariableDeclaration(t)&&e.isVarConst(t);if(!a||t.type)return fw(n,e.Diagnostics.Initializers_are_not_allowed_in_ambient_contexts);if(i)return fw(n,e.Diagnostics.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference);if(!a||i)return fw(n,e.Diagnostics.Initializers_are_not_allowed_in_ambient_contexts)}}function ow(t){if(78===t.kind){if("__esModule"===e.idText(t))return function(t,r,n,i,a,o){if(!uw(e.getSourceFileOfNode(r)))return dn(t,r,n,i,a,o),!0;return!1}("noEmit",t,e.Diagnostics.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else for(var r=0,n=t.elements;r<n.length;r++){var i=n[r];if(!e.isOmittedExpression(i))return ow(i.name)}return!1}function sw(t){if(78===t.kind){if(119===t.originalKeywordKind)return fw(t,e.Diagnostics.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else for(var r=0,n=t.elements;r<n.length;r++){var i=n[r];e.isOmittedExpression(i)||sw(i.name)}return!1}function cw(t){var r=t.declarations;return!!qS(t.declarations)||!t.declarations.length&&pw(t,r.pos,r.end-r.pos,e.Diagnostics.Variable_declaration_list_cannot_be_empty)}function lw(e){switch(e.kind){case 236:case 237:case 238:case 245:case 239:case 240:case 241:return!1;case 247:return lw(e.parent)}return!0}function uw(e){return e.parseDiagnostics.length>0}function dw(t,r,n,i,a){var o=e.getSourceFileOfNode(t);if(!uw(o)){var s=e.getSpanOfTokenAtPosition(o,t.pos);return Qr.add(e.createFileDiagnostic(o,s.start,s.length,r,n,i,a)),!0}return!1}function pw(t,r,n,i,a,o,s){var c=e.getSourceFileOfNode(t);return!uw(c)&&(Qr.add(e.createFileDiagnostic(c,r,n,i,a,o,s)),!0)}function fw(t,r,n,i,a){return!uw(e.getSourceFileOfNode(t))&&(Qr.add(e.createDiagnosticForNode(t,r,n,i,a)),!0)}function mw(t){return 256!==t.kind&&257!==t.kind&&264!==t.kind&&263!==t.kind&&270!==t.kind&&269!==t.kind&&262!==t.kind&&!e.hasSyntacticModifier(t,515)&&dw(t,e.Diagnostics.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function gw(t){if(8388608&t.flags){if(!Cn(t).hasReportedStatementInAmbientContext&&(e.isFunctionLike(t.parent)||e.isAccessor(t.parent)))return Cn(t).hasReportedStatementInAmbientContext=dw(t,e.Diagnostics.An_implementation_cannot_be_declared_in_ambient_contexts);if(232===t.parent.kind||260===t.parent.kind||300===t.parent.kind){var r=Cn(t.parent);if(!r.hasReportedStatementInAmbientContext)return r.hasReportedStatementInAmbientContext=dw(t,e.Diagnostics.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function _w(t){if(32&t.numericLiteralFlags){var r=void 0;if(V>=1?r=e.Diagnostics.Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:e.isChildOfNodeWithKind(t,192)?r=e.Diagnostics.Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:e.isChildOfNodeWithKind(t,294)&&(r=e.Diagnostics.Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0),r){var n=e.isPrefixUnaryExpression(t.parent)&&40===t.parent.operator,i=(n?"-":"")+"0o"+t.text;return fw(n?t.parent:t,r,i)}}return function(t){if(16&t.numericLiteralFlags||t.text.length<=15||-1!==t.text.indexOf("."))return;var r=+e.getTextOfNode(t);if(r<=Math.pow(2,53)-1&&r+1>r)return;fn(!1,e.createDiagnosticForNode(t,e.Diagnostics.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}(t),!1}function hw(t,r,n,i){if(1048576&r.flags&&2621440&t.flags){var a=Hs(t);if(a){var o=jm(a,r);if(o)return Lp(r,e.map(o,(function(e){return[function(){return _o(e)},e.escapedName]})),n,void 0,i)}}}},function(e){e.JSX="JSX",e.IntrinsicElements="IntrinsicElements",e.ElementClass="ElementClass",e.ElementAttributesPropertyNameContainer="ElementAttributesProperty",e.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",e.Element="Element",e.IntrinsicAttributes="IntrinsicAttributes",e.IntrinsicClassAttributes="IntrinsicClassAttributes",e.LibraryManagedAttributes="LibraryManagedAttributes"}(N||(N={})),e.signatureHasRestParameter=U,e.signatureHasLiteralTypes=q}(d||(d={})),function(e){var t=e.or(e.isTypeNode,e.isTypeParameterDeclaration);function r(t,r,n,i){if(void 0===t||void 0===r)return t;var a,o=r(t);return o===t?t:void 0!==o?(a=e.isArray(o)?(i||c)(o):o,e.Debug.assertNode(a,n),a):void 0}function n(t,r,n,i,a){if(void 0===t||void 0===r)return t;var o,s,c=t.length;(void 0===i||i<0)&&(i=0),(void 0===a||a>c-i)&&(a=c-i);var l=-1,u=-1;(i>0||a<c)&&(o=[],s=t.hasTrailingComma&&i+a===c);for(var d=0;d<a;d++){var p=t[d+i],f=void 0!==p?r(p):void 0;if((void 0!==o||void 0===f||f!==p)&&(void 0===o&&(o=t.slice(0,d),s=t.hasTrailingComma,l=t.pos,u=t.end),f))if(e.isArray(f))for(var m=0,g=f;m<g.length;m++){var _=g[m];e.Debug.assertNode(_,n),o.push(_)}else e.Debug.assertNode(f,n),o.push(f)}if(o){var h=e.factory.createNodeArray(o,s);return e.setTextRangePosEnd(h,l,u),h}return t}function i(t,r,i,a,o,s){return void 0===s&&(s=n),i.startLexicalEnvironment(),t=s(t,r,e.isStatement,a),o&&(t=i.factory.ensureUseStrict(t)),e.factory.mergeLexicalEnvironment(t,i.endLexicalEnvironment())}function a(t,r,i,a){var s;return void 0===a&&(a=n),i.startLexicalEnvironment(),t&&(i.setLexicalEnvironmentFlags(1,!0),s=a(t,r,e.isParameterDeclaration),2&i.getLexicalEnvironmentFlags()&&e.getEmitScriptTarget(i.getCompilerOptions())>=2&&(s=function(t,r){for(var n,i=0;i<t.length;i++){var a=t[i],s=o(a,r);(n||s!==a)&&(n||(n=t.slice(0,i)),n[i]=s)}if(n)return e.setTextRange(r.factory.createNodeArray(n,t.hasTrailingComma),t);return t}(s,i)),i.setLexicalEnvironmentFlags(1,!1)),i.suspendLexicalEnvironment(),s}function o(t,r){return t.dotDotDotToken?t:e.isBindingPattern(t.name)?function(e,t){var r=t.factory;return t.addInitializationStatement(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(e.name,void 0,e.type,e.initializer?r.createConditionalExpression(r.createStrictEquality(r.getGeneratedNameForNode(e),r.createVoidZero()),void 0,e.initializer,void 0,r.getGeneratedNameForNode(e)):r.getGeneratedNameForNode(e))]))),r.updateParameterDeclaration(e,e.decorators,e.modifiers,e.dotDotDotToken,r.getGeneratedNameForNode(e),e.questionToken,e.type,void 0)}(t,r):t.initializer?function(t,r,n,i){var a=i.factory;return i.addInitializationStatement(a.createIfStatement(a.createTypeCheck(a.cloneNode(r),"undefined"),e.setEmitFlags(e.setTextRange(a.createBlock([a.createExpressionStatement(e.setEmitFlags(e.setTextRange(a.createAssignment(e.setEmitFlags(a.cloneNode(r),48),e.setEmitFlags(n,1584|e.getEmitFlags(n))),t),1536))]),t),1953))),a.updateParameterDeclaration(t,t.decorators,t.modifiers,t.dotDotDotToken,t.name,t.questionToken,t.type,void 0)}(t,t.name,t.initializer,r):t}function s(t,n,i,a){void 0===a&&(a=r),i.resumeLexicalEnvironment();var o=a(t,n,e.isConciseBody),s=i.endLexicalEnvironment();if(e.some(s)){if(!o)return i.factory.createBlock(s);var c=i.factory.converters.convertToFunctionBlock(o),l=e.factory.mergeLexicalEnvironment(c.statements,s);return i.factory.updateBlock(c,l)}return o}function c(t){return e.Debug.assert(t.length<=1,"Too many nodes written to output."),e.singleOrUndefined(t)}e.visitNode=r,e.visitNodes=n,e.visitLexicalEnvironment=i,e.visitParameterList=a,e.visitFunctionBody=s,e.visitEachChild=function(o,c,l,u,d,p){if(void 0===u&&(u=n),void 0===p&&(p=r),void 0!==o){var f=o.kind;if(f>0&&f<=157||188===f)return o;var m=l.factory;switch(f){case 78:return m.updateIdentifier(o,u(o.typeArguments,c,t));case 158:return m.updateQualifiedName(o,p(o.left,c,e.isEntityName),p(o.right,c,e.isIdentifier));case 159:return m.updateComputedPropertyName(o,p(o.expression,c,e.isExpression));case 160:return m.updateTypeParameterDeclaration(o,p(o.name,c,e.isIdentifier),p(o.constraint,c,e.isTypeNode),p(o.default,c,e.isTypeNode));case 161:return m.updateParameterDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.dotDotDotToken,d,e.isToken),p(o.name,c,e.isBindingName),p(o.questionToken,d,e.isToken),p(o.type,c,e.isTypeNode),p(o.initializer,c,e.isExpression));case 162:return m.updateDecorator(o,p(o.expression,c,e.isExpression));case 163:return m.updatePropertySignature(o,u(o.modifiers,c,e.isToken),p(o.name,c,e.isPropertyName),p(o.questionToken,d,e.isToken),p(o.type,c,e.isTypeNode));case 164:return m.updatePropertyDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),p(o.questionToken||o.exclamationToken,d,e.isToken),p(o.type,c,e.isTypeNode),p(o.initializer,c,e.isExpression));case 165:return m.updateMethodSignature(o,u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),p(o.questionToken,d,e.isToken),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 166:return m.updateMethodDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.asteriskToken,d,e.isToken),p(o.name,c,e.isPropertyName),p(o.questionToken,d,e.isToken),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 167:return m.updateConstructorDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),a(o.parameters,c,l,u),s(o.body,c,l,p));case 168:return m.updateGetAccessorDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 169:return m.updateSetAccessorDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),a(o.parameters,c,l,u),s(o.body,c,l,p));case 170:return m.updateCallSignature(o,u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 171:return m.updateConstructSignature(o,u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 172:return m.updateIndexSignature(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 173:return m.updateTypePredicateNode(o,p(o.assertsModifier,c),p(o.parameterName,c),p(o.type,c,e.isTypeNode));case 174:return m.updateTypeReferenceNode(o,p(o.typeName,c,e.isEntityName),u(o.typeArguments,c,e.isTypeNode));case 175:return m.updateFunctionTypeNode(o,u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 176:return m.updateConstructorTypeNode(o,u(o.modifiers,c,e.isModifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 177:return m.updateTypeQueryNode(o,p(o.exprName,c,e.isEntityName));case 178:return m.updateTypeLiteralNode(o,u(o.members,c,e.isTypeElement));case 179:return m.updateArrayTypeNode(o,p(o.elementType,c,e.isTypeNode));case 180:return m.updateTupleTypeNode(o,u(o.elements,c,e.isTypeNode));case 181:return m.updateOptionalTypeNode(o,p(o.type,c,e.isTypeNode));case 182:return m.updateRestTypeNode(o,p(o.type,c,e.isTypeNode));case 183:return m.updateUnionTypeNode(o,u(o.types,c,e.isTypeNode));case 184:return m.updateIntersectionTypeNode(o,u(o.types,c,e.isTypeNode));case 185:return m.updateConditionalTypeNode(o,p(o.checkType,c,e.isTypeNode),p(o.extendsType,c,e.isTypeNode),p(o.trueType,c,e.isTypeNode),p(o.falseType,c,e.isTypeNode));case 186:return m.updateInferTypeNode(o,p(o.typeParameter,c,e.isTypeParameterDeclaration));case 196:return m.updateImportTypeNode(o,p(o.argument,c,e.isTypeNode),p(o.qualifier,c,e.isEntityName),n(o.typeArguments,c,e.isTypeNode),o.isTypeOf);case 193:return m.updateNamedTupleMember(o,r(o.dotDotDotToken,c,e.isToken),r(o.name,c,e.isIdentifier),r(o.questionToken,c,e.isToken),r(o.type,c,e.isTypeNode));case 187:return m.updateParenthesizedType(o,p(o.type,c,e.isTypeNode));case 189:return m.updateTypeOperatorNode(o,p(o.type,c,e.isTypeNode));case 190:return m.updateIndexedAccessTypeNode(o,p(o.objectType,c,e.isTypeNode),p(o.indexType,c,e.isTypeNode));case 191:return m.updateMappedTypeNode(o,p(o.readonlyToken,d,e.isToken),p(o.typeParameter,c,e.isTypeParameterDeclaration),p(o.nameType,c,e.isTypeNode),p(o.questionToken,d,e.isToken),p(o.type,c,e.isTypeNode));case 192:return m.updateLiteralTypeNode(o,p(o.literal,c,e.isExpression));case 194:return m.updateTemplateLiteralType(o,p(o.head,c,e.isTemplateHead),u(o.templateSpans,c,e.isTemplateLiteralTypeSpan));case 195:return m.updateTemplateLiteralTypeSpan(o,p(o.type,c,e.isTypeNode),p(o.literal,c,e.isTemplateMiddleOrTemplateTail));case 197:return m.updateObjectBindingPattern(o,u(o.elements,c,e.isBindingElement));case 198:return m.updateArrayBindingPattern(o,u(o.elements,c,e.isArrayBindingElement));case 199:return m.updateBindingElement(o,p(o.dotDotDotToken,d,e.isToken),p(o.propertyName,c,e.isPropertyName),p(o.name,c,e.isBindingName),p(o.initializer,c,e.isExpression));case 200:return m.updateArrayLiteralExpression(o,u(o.elements,c,e.isExpression));case 201:return m.updateObjectLiteralExpression(o,u(o.properties,c,e.isObjectLiteralElementLike));case 202:return 32&o.flags?m.updatePropertyAccessChain(o,p(o.expression,c,e.isExpression),p(o.questionDotToken,d,e.isToken),p(o.name,c,e.isIdentifier)):m.updatePropertyAccessExpression(o,p(o.expression,c,e.isExpression),p(o.name,c,e.isIdentifierOrPrivateIdentifier));case 203:return 32&o.flags?m.updateElementAccessChain(o,p(o.expression,c,e.isExpression),p(o.questionDotToken,d,e.isToken),p(o.argumentExpression,c,e.isExpression)):m.updateElementAccessExpression(o,p(o.expression,c,e.isExpression),p(o.argumentExpression,c,e.isExpression));case 204:return 32&o.flags?m.updateCallChain(o,p(o.expression,c,e.isExpression),p(o.questionDotToken,d,e.isToken),u(o.typeArguments,c,e.isTypeNode),u(o.arguments,c,e.isExpression)):m.updateCallExpression(o,p(o.expression,c,e.isExpression),u(o.typeArguments,c,e.isTypeNode),u(o.arguments,c,e.isExpression));case 205:return m.updateNewExpression(o,p(o.expression,c,e.isExpression),u(o.typeArguments,c,e.isTypeNode),u(o.arguments,c,e.isExpression));case 206:return m.updateTaggedTemplateExpression(o,p(o.tag,c,e.isExpression),n(o.typeArguments,c,e.isExpression),p(o.template,c,e.isTemplateLiteral));case 207:return m.updateTypeAssertion(o,p(o.type,c,e.isTypeNode),p(o.expression,c,e.isExpression));case 208:return m.updateParenthesizedExpression(o,p(o.expression,c,e.isExpression));case 209:return m.updateFunctionExpression(o,u(o.modifiers,c,e.isModifier),p(o.asteriskToken,d,e.isToken),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 210:return m.updateArrowFunction(o,u(o.modifiers,c,e.isModifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),p(o.equalsGreaterThanToken,d,e.isToken),s(o.body,c,l,p));case 212:return m.updateDeleteExpression(o,p(o.expression,c,e.isExpression));case 213:return m.updateTypeOfExpression(o,p(o.expression,c,e.isExpression));case 214:return m.updateVoidExpression(o,p(o.expression,c,e.isExpression));case 215:return m.updateAwaitExpression(o,p(o.expression,c,e.isExpression));case 216:return m.updatePrefixUnaryExpression(o,p(o.operand,c,e.isExpression));case 217:return m.updatePostfixUnaryExpression(o,p(o.operand,c,e.isExpression));case 218:return m.updateBinaryExpression(o,p(o.left,c,e.isExpression),p(o.operatorToken,d,e.isToken),p(o.right,c,e.isExpression));case 219:return m.updateConditionalExpression(o,p(o.condition,c,e.isExpression),p(o.questionToken,d,e.isToken),p(o.whenTrue,c,e.isExpression),p(o.colonToken,d,e.isToken),p(o.whenFalse,c,e.isExpression));case 220:return m.updateTemplateExpression(o,p(o.head,c,e.isTemplateHead),u(o.templateSpans,c,e.isTemplateSpan));case 221:return m.updateYieldExpression(o,p(o.asteriskToken,d,e.isToken),p(o.expression,c,e.isExpression));case 222:return m.updateSpreadElement(o,p(o.expression,c,e.isExpression));case 223:return m.updateClassExpression(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isClassElement));case 225:return m.updateExpressionWithTypeArguments(o,p(o.expression,c,e.isExpression),u(o.typeArguments,c,e.isTypeNode));case 226:return m.updateAsExpression(o,p(o.expression,c,e.isExpression),p(o.type,c,e.isTypeNode));case 227:return 32&o.flags?m.updateNonNullChain(o,p(o.expression,c,e.isExpression)):m.updateNonNullExpression(o,p(o.expression,c,e.isExpression));case 228:return m.updateMetaProperty(o,p(o.name,c,e.isIdentifier));case 230:return m.updateTemplateSpan(o,p(o.expression,c,e.isExpression),p(o.literal,c,e.isTemplateMiddleOrTemplateTail));case 232:return m.updateBlock(o,u(o.statements,c,e.isStatement));case 234:return m.updateVariableStatement(o,u(o.modifiers,c,e.isModifier),p(o.declarationList,c,e.isVariableDeclarationList));case 235:return m.updateExpressionStatement(o,p(o.expression,c,e.isExpression));case 236:return m.updateIfStatement(o,p(o.expression,c,e.isExpression),p(o.thenStatement,c,e.isStatement,m.liftToBlock),p(o.elseStatement,c,e.isStatement,m.liftToBlock));case 237:return m.updateDoStatement(o,p(o.statement,c,e.isStatement,m.liftToBlock),p(o.expression,c,e.isExpression));case 238:return m.updateWhileStatement(o,p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 239:return m.updateForStatement(o,p(o.initializer,c,e.isForInitializer),p(o.condition,c,e.isExpression),p(o.incrementor,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 240:return m.updateForInStatement(o,p(o.initializer,c,e.isForInitializer),p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 241:return m.updateForOfStatement(o,p(o.awaitModifier,d,e.isToken),p(o.initializer,c,e.isForInitializer),p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 242:return m.updateContinueStatement(o,p(o.label,c,e.isIdentifier));case 243:return m.updateBreakStatement(o,p(o.label,c,e.isIdentifier));case 244:return m.updateReturnStatement(o,p(o.expression,c,e.isExpression));case 245:return m.updateWithStatement(o,p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 246:return m.updateSwitchStatement(o,p(o.expression,c,e.isExpression),p(o.caseBlock,c,e.isCaseBlock));case 247:return m.updateLabeledStatement(o,p(o.label,c,e.isIdentifier),p(o.statement,c,e.isStatement,m.liftToBlock));case 248:return m.updateThrowStatement(o,p(o.expression,c,e.isExpression));case 249:return m.updateTryStatement(o,p(o.tryBlock,c,e.isBlock),p(o.catchClause,c,e.isCatchClause),p(o.finallyBlock,c,e.isBlock));case 251:return m.updateVariableDeclaration(o,p(o.name,c,e.isBindingName),p(o.exclamationToken,d,e.isToken),p(o.type,c,e.isTypeNode),p(o.initializer,c,e.isExpression));case 252:return m.updateVariableDeclarationList(o,u(o.declarations,c,e.isVariableDeclaration));case 253:return m.updateFunctionDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.asteriskToken,d,e.isToken),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 254:return m.updateClassDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isClassElement));case 255:return m.updateStructDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isClassElement));case 256:return m.updateInterfaceDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isTypeElement));case 257:return m.updateTypeAliasDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),p(o.type,c,e.isTypeNode));case 258:return m.updateEnumDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.members,c,e.isEnumMember));case 259:return m.updateModuleDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),p(o.body,c,e.isModuleBody));case 260:return m.updateModuleBlock(o,u(o.statements,c,e.isStatement));case 261:return m.updateCaseBlock(o,u(o.clauses,c,e.isCaseOrDefaultClause));case 262:return m.updateNamespaceExportDeclaration(o,p(o.name,c,e.isIdentifier));case 263:return m.updateImportEqualsDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),o.isTypeOnly,p(o.name,c,e.isIdentifier),p(o.moduleReference,c,e.isModuleReference));case 264:return m.updateImportDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.importClause,c,e.isImportClause),p(o.moduleSpecifier,c,e.isExpression));case 265:return m.updateImportClause(o,o.isTypeOnly,p(o.name,c,e.isIdentifier),p(o.namedBindings,c,e.isNamedImportBindings));case 266:return m.updateNamespaceImport(o,p(o.name,c,e.isIdentifier));case 272:return m.updateNamespaceExport(o,p(o.name,c,e.isIdentifier));case 267:return m.updateNamedImports(o,u(o.elements,c,e.isImportSpecifier));case 268:return m.updateImportSpecifier(o,p(o.propertyName,c,e.isIdentifier),p(o.name,c,e.isIdentifier));case 269:return m.updateExportAssignment(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.expression,c,e.isExpression));case 270:return m.updateExportDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),o.isTypeOnly,p(o.exportClause,c,e.isNamedExportBindings),p(o.moduleSpecifier,c,e.isExpression));case 271:return m.updateNamedExports(o,u(o.elements,c,e.isExportSpecifier));case 273:return m.updateExportSpecifier(o,p(o.propertyName,c,e.isIdentifier),p(o.name,c,e.isIdentifier));case 275:return m.updateExternalModuleReference(o,p(o.expression,c,e.isExpression));case 276:return m.updateJsxElement(o,p(o.openingElement,c,e.isJsxOpeningElement),u(o.children,c,e.isJsxChild),p(o.closingElement,c,e.isJsxClosingElement));case 277:return m.updateJsxSelfClosingElement(o,p(o.tagName,c,e.isJsxTagNameExpression),u(o.typeArguments,c,e.isTypeNode),p(o.attributes,c,e.isJsxAttributes));case 278:return m.updateJsxOpeningElement(o,p(o.tagName,c,e.isJsxTagNameExpression),u(o.typeArguments,c,e.isTypeNode),p(o.attributes,c,e.isJsxAttributes));case 279:return m.updateJsxClosingElement(o,p(o.tagName,c,e.isJsxTagNameExpression));case 280:return m.updateJsxFragment(o,p(o.openingFragment,c,e.isJsxOpeningFragment),u(o.children,c,e.isJsxChild),p(o.closingFragment,c,e.isJsxClosingFragment));case 283:return m.updateJsxAttribute(o,p(o.name,c,e.isIdentifier),p(o.initializer,c,e.isStringLiteralOrJsxExpression));case 284:return m.updateJsxAttributes(o,u(o.properties,c,e.isJsxAttributeLike));case 285:return m.updateJsxSpreadAttribute(o,p(o.expression,c,e.isExpression));case 286:return m.updateJsxExpression(o,p(o.expression,c,e.isExpression));case 287:return m.updateCaseClause(o,p(o.expression,c,e.isExpression),u(o.statements,c,e.isStatement));case 288:return m.updateDefaultClause(o,u(o.statements,c,e.isStatement));case 289:return m.updateHeritageClause(o,u(o.types,c,e.isExpressionWithTypeArguments));case 290:return m.updateCatchClause(o,p(o.variableDeclaration,c,e.isVariableDeclaration),p(o.block,c,e.isBlock));case 291:return m.updatePropertyAssignment(o,p(o.name,c,e.isPropertyName),p(o.initializer,c,e.isExpression));case 292:return m.updateShorthandPropertyAssignment(o,p(o.name,c,e.isIdentifier),p(o.objectAssignmentInitializer,c,e.isExpression));case 293:return m.updateSpreadAssignment(o,p(o.expression,c,e.isExpression));case 294:return m.updateEnumMember(o,p(o.name,c,e.isPropertyName),p(o.initializer,c,e.isExpression));case 300:return m.updateSourceFile(o,i(o.statements,c,l));case 339:return m.updatePartiallyEmittedExpression(o,p(o.expression,c,e.isExpression));case 340:return m.updateCommaListExpression(o,u(o.elements,c,e.isExpression));default:return o}}}}(d||(d={})),function(e){e.createSourceMapGenerator=function(t,r,n,i,o){var c,l,u=o.extendedDiagnostics?e.performance.createTimer("Source Map","beforeSourcemap","afterSourcemap"):e.performance.nullTimer,d=u.enter,p=u.exit,f=[],m=[],g=new e.Map,_=[],h="",y=0,v=0,b=0,k=0,x=0,S=0,w=!1,D=0,E=0,T=0,C=0,A=0,N=0,P=!1,I=!1,F=!1;return{getSources:function(){return f},addSource:O,setSourceContent:R,addName:M,addMapping:L,appendSourceMap:function(t,r,n,i,o,s){e.Debug.assert(t>=D,"generatedLine cannot backtrack"),e.Debug.assert(r>=0,"generatedCharacter cannot be negative"),d();for(var c,l=[],u=a(n.mappings),f=u.next();!f.done;f=u.next()){var m=f.value;if(s&&(m.generatedLine>s.line||m.generatedLine===s.line&&m.generatedCharacter>s.character))break;if(!o||!(m.generatedLine<o.line||o.line===m.generatedLine&&m.generatedCharacter<o.character)){var g=void 0,_=void 0,h=void 0,y=void 0;if(void 0!==m.sourceIndex){if(void 0===(g=l[m.sourceIndex])){var v=n.sources[m.sourceIndex],b=n.sourceRoot?e.combinePaths(n.sourceRoot,v):v,k=e.combinePaths(e.getDirectoryPath(i),b);l[m.sourceIndex]=g=O(k),n.sourcesContent&&"string"==typeof n.sourcesContent[m.sourceIndex]&&R(g,n.sourcesContent[m.sourceIndex])}_=m.sourceLine,h=m.sourceCharacter,n.names&&void 0!==m.nameIndex&&(c||(c=[]),void 0===(y=c[m.nameIndex])&&(c[m.nameIndex]=y=M(n.names[m.nameIndex])))}var x=m.generatedLine-(o?o.line:0),S=x+t,w=o&&o.line===m.generatedLine?m.generatedCharacter-o.character:m.generatedCharacter;L(S,0===x?w+r:w,g,_,h,y)}}p()},toJSON:B,toString:function(){return JSON.stringify(B())}};function O(r){d();var n=e.getRelativePathToDirectoryOrUrl(i,r,t.getCurrentDirectory(),t.getCanonicalFileName,!0),a=g.get(n);return void 0===a&&(a=m.length,m.push(n),f.push(r),g.set(n,a)),p(),a}function R(e,t){if(d(),null!==t){for(c||(c=[]);c.length<e;)c.push(null);c[e]=t}p()}function M(t){d(),l||(l=new e.Map);var r=l.get(t);return void 0===r&&(r=_.length,_.push(t),l.set(t,r)),p(),r}function L(t,r,n,i,a,o){e.Debug.assert(t>=D,"generatedLine cannot backtrack"),e.Debug.assert(r>=0,"generatedCharacter cannot be negative"),e.Debug.assert(void 0===n||n>=0,"sourceIndex cannot be negative"),e.Debug.assert(void 0===i||i>=0,"sourceLine cannot be negative"),e.Debug.assert(void 0===a||a>=0,"sourceCharacter cannot be negative"),d(),(function(e,t){return!P||D!==e||E!==t}(t,r)||function(e,t,r){return void 0!==e&&void 0!==t&&void 0!==r&&T===e&&(C>t||C===t&&A>r)}(n,i,a))&&(j(),D=t,E=r,I=!1,F=!1,P=!0),void 0!==n&&void 0!==i&&void 0!==a&&(T=n,C=i,A=a,I=!0,void 0!==o&&(N=o,F=!0)),p()}function j(){if(P&&(!w||y!==D||v!==E||b!==T||k!==C||x!==A||S!==N)){if(d(),y<D)do{h+=";",y++,v=0}while(y<D);else e.Debug.assertEqual(y,D,"generatedLine cannot backtrack"),w&&(h+=",");h+=s(E-v),v=E,I&&(h+=s(T-b),b=T,h+=s(C-k),k=C,h+=s(A-x),x=A,F&&(h+=s(N-S),S=N)),w=!0,p()}}function B(){return j(),{version:3,file:r,sourceRoot:n,sources:m,names:_,mappings:h,sourcesContent:c}}};var t=/^\/\/[@#] source[M]appingURL=(.+)\s*$/,r=/^\s*(\/\/[@#] .*)?$/;function n(e){return"string"==typeof e||null===e}function i(t){return null!==t&&"object"==typeof t&&3===t.version&&"string"==typeof t.file&&"string"==typeof t.mappings&&e.isArray(t.sources)&&e.every(t.sources,e.isString)&&(void 0===t.sourceRoot||null===t.sourceRoot||"string"==typeof t.sourceRoot)&&(void 0===t.sourcesContent||null===t.sourcesContent||e.isArray(t.sourcesContent)&&e.every(t.sourcesContent,n))&&(void 0===t.names||null===t.names||e.isArray(t.names)&&e.every(t.names,e.isString))}function a(e){var t,r=!1,n=0,i=0,a=0,o=0,s=0,c=0,l=0;return{get pos(){return n},get error(){return t},get state(){return u(!0,!0)},next:function(){for(;!r&&n<e.length;){var t=e.charCodeAt(n);if(59!==t){if(44!==t){var p=!1,h=!1;if(a+=_(),m())return d();if(a<0)return f("Invalid generatedCharacter found");if(!g()){if(p=!0,o+=_(),m())return d();if(o<0)return f("Invalid sourceIndex found");if(g())return f("Unsupported Format: No entries after sourceIndex");if(s+=_(),m())return d();if(s<0)return f("Invalid sourceLine found");if(g())return f("Unsupported Format: No entries after sourceLine");if(c+=_(),m())return d();if(c<0)return f("Invalid sourceCharacter found");if(!g()){if(h=!0,l+=_(),m())return d();if(l<0)return f("Invalid nameIndex found");if(!g())return f("Unsupported Error Format: Entries after nameIndex")}}return{value:u(p,h),done:r}}n++}else i++,a=0,n++}return d()}};function u(e,t){return{generatedLine:i,generatedCharacter:a,sourceIndex:e?o:void 0,sourceLine:e?s:void 0,sourceCharacter:e?c:void 0,nameIndex:t?l:void 0}}function d(){return r=!0,{value:void 0,done:!0}}function p(e){void 0===t&&(t=e)}function f(e){return p(e),d()}function m(){return void 0!==t}function g(){return n===e.length||44===e.charCodeAt(n)||59===e.charCodeAt(n)}function _(){for(var t,r=!0,i=0,a=0;r;n++){if(n>=e.length)return p("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;var o=(t=e.charCodeAt(n))>=65&&t<=90?t-65:t>=97&&t<=122?t-97+26:t>=48&&t<=57?t-48+52:43===t?62:47===t?63:-1;if(-1===o)return p("Invalid character in VLQ"),-1;r=!!(32&o),a|=(31&o)<<i,i+=5}return 1&a?a=-(a>>=1):a>>=1,a}}function o(e){return void 0!==e.sourceIndex&&void 0!==e.sourceLine&&void 0!==e.sourceCharacter}function s(t){t<0?t=1+(-t<<1):t<<=1;var r,n="";do{var i=31&t;(t>>=5)>0&&(i|=32),n+=String.fromCharCode((r=i)>=0&&r<26?65+r:r>=26&&r<52?97+r-26:r>=52&&r<62?48+r-52:62===r?43:63===r?47:e.Debug.fail(r+": not a base64 value"))}while(t>0);return n}function c(e){return void 0!==e.sourceIndex&&void 0!==e.sourcePosition}function l(e,t){return e.generatedPosition===t.generatedPosition&&e.sourceIndex===t.sourceIndex&&e.sourcePosition===t.sourcePosition}function u(t,r){return e.Debug.assert(t.sourceIndex===r.sourceIndex),e.compareValues(t.sourcePosition,r.sourcePosition)}function d(t,r){return e.compareValues(t.generatedPosition,r.generatedPosition)}function p(e){return e.sourcePosition}function f(e){return e.generatedPosition}e.getLineInfo=function(e,t){return{getLineCount:function(){return t.length},getLineText:function(r){return e.substring(t[r],t[r+1])}}},e.tryGetSourceMappingURL=function(e){for(var n=e.getLineCount()-1;n>=0;n--){var i=e.getLineText(n),a=t.exec(i);if(a)return a[1];if(!i.match(r))break}},e.isRawSourceMap=i,e.tryParseRawSourceMap=function(e){try{var t=JSON.parse(e);if(i(t))return t}catch(e){}},e.decodeMappings=a,e.sameMapping=function(e,t){return e===t||e.generatedLine===t.generatedLine&&e.generatedCharacter===t.generatedCharacter&&e.sourceIndex===t.sourceIndex&&e.sourceLine===t.sourceLine&&e.sourceCharacter===t.sourceCharacter&&e.nameIndex===t.nameIndex},e.isSourceMapping=o,e.createDocumentPositionMapper=function(t,r,n){var i,s,m,g=e.getDirectoryPath(n),_=r.sourceRoot?e.getNormalizedAbsolutePath(r.sourceRoot,g):g,h=e.getNormalizedAbsolutePath(r.file,g),y=t.getSourceFileLike(h),v=r.sources.map((function(t){return e.getNormalizedAbsolutePath(t,_)})),b=new e.Map(v.map((function(e,r){return[t.getCanonicalFileName(e),r]})));return{getSourcePosition:function(t){var r=w();if(!e.some(r))return t;var n=e.binarySearchKey(r,t.pos,f,e.compareValues);n<0&&(n=~n);var i=r[n];if(void 0===i||!c(i))return t;return{fileName:v[i.sourceIndex],pos:i.sourcePosition}},getGeneratedPosition:function(r){var n=b.get(t.getCanonicalFileName(r.fileName));if(void 0===n)return r;var i=S(n);if(!e.some(i))return r;var a=e.binarySearchKey(i,r.pos,p,e.compareValues);a<0&&(a=~a);var o=i[a];if(void 0===o||o.sourceIndex!==n)return r;return{fileName:h,pos:o.generatedPosition}}};function k(n){var i,a,s=void 0!==y?e.getPositionOfLineAndCharacter(y,n.generatedLine,n.generatedCharacter,!0):-1;if(o(n)){var c=t.getSourceFileLike(v[n.sourceIndex]);i=r.sources[n.sourceIndex],a=void 0!==c?e.getPositionOfLineAndCharacter(c,n.sourceLine,n.sourceCharacter,!0):-1}return{generatedPosition:s,source:i,sourceIndex:n.sourceIndex,sourcePosition:a,nameIndex:n.nameIndex}}function x(){if(void 0===i){var n=a(r.mappings),o=e.arrayFrom(n,k);void 0!==n.error?(t.log&&t.log("Encountered error while decoding sourcemap: "+n.error),i=e.emptyArray):i=o}return i}function S(t){if(void 0===m){for(var r=[],n=0,i=x();n<i.length;n++){var a=i[n];if(c(a)){var o=r[a.sourceIndex];o||(r[a.sourceIndex]=o=[]),o.push(a)}}m=r.map((function(t){return e.sortAndDeduplicate(t,u,l)}))}return m[t]}function w(){if(void 0===s){for(var t=[],r=0,n=x();r<n.length;r++){var i=n[r];t.push(i)}s=e.sortAndDeduplicate(t,d,l)}return s}},e.identitySourceMapConsumer={getSourcePosition:e.identity,getGeneratedPosition:e.identity}}(d||(d={})),function(e){function t(t){return(t=e.getOriginalNode(t))?e.getNodeId(t):0}function r(e){return void 0!==e.propertyName&&"default"===e.propertyName.escapedText}function n(t){if(e.getNamespaceDeclarationNode(t))return!0;var n=t.importClause&&t.importClause.namedBindings;if(!n)return!1;if(!e.isNamedImports(n))return!1;for(var i=0,a=0,o=n.elements;a<o.length;a++){r(o[a])&&i++}return i>0&&i!==n.elements.length||!!(n.elements.length-i)&&e.isDefaultImport(t)}function i(t){return!n(t)&&(e.isDefaultImport(t)||!!t.importClause&&e.isNamedImports(t.importClause.namedBindings)&&function(t){return!!t&&!!e.isNamedImports(t)&&e.some(t.elements,r)}(t.importClause.namedBindings))}function a(t,r,n){if(e.isBindingPattern(t.name))for(var i=0,o=t.name.elements;i<o.length;i++){var s=o[i];e.isOmittedExpression(s)||(n=a(s,r,n))}else if(!e.isGeneratedIdentifier(t.name)){var c=e.idText(t.name);r.get(c)||(r.set(c,!0),n=e.append(n,t.name))}return n}function o(e,t,r){var n=e[t];return n?n.push(r):e[t]=n=[r],n}function s(t){return e.isStringLiteralLike(t)||8===t.kind||e.isKeyword(t.kind)||e.isIdentifier(t)}e.getOriginalNodeId=t,e.chainBundle=function(t,r){return function(n){return 300===n.kind?r(n):function(n){return t.factory.createBundle(e.map(n.sourceFiles,r),n.prepends)}(n)}},e.getExportNeedsImportStarHelper=function(t){return!!e.getNamespaceDeclarationNode(t)},e.getImportNeedsImportStarHelper=n,e.getImportNeedsImportDefaultHelper=i,e.collectExternalModuleInfo=function(r,s,c,l){for(var u,d,p=[],f=e.createMultiMap(),m=[],g=new e.Map,_=!1,h=!1,y=!1,v=!1,b=0,k=s.statements;b<k.length;b++){var x=k[b];switch(x.kind){case 264:p.push(x),!y&&n(x)&&(y=!0),!v&&i(x)&&(v=!0);break;case 263:275===x.moduleReference.kind&&p.push(x);break;case 270:if(x.moduleSpecifier)if(x.exportClause)if(p.push(x),e.isNamedExports(x.exportClause))C(x);else{var S=x.exportClause.name;g.get(e.idText(S))||(o(m,t(x),S),g.set(e.idText(S),!0),u=e.append(u,S)),y=!0}else p.push(x),h=!0;else C(x);break;case 269:x.isExportEquals&&!d&&(d=x);break;case 234:if(e.hasSyntacticModifier(x,1))for(var w=0,D=x.declarationList.declarations;w<D.length;w++){var E=D[w];u=a(E,g,u)}break;case 253:if(e.hasSyntacticModifier(x,1))if(e.hasSyntacticModifier(x,512))_||(o(m,t(x),r.factory.getDeclarationName(x)),_=!0);else{S=x.name;g.get(e.idText(S))||(o(m,t(x),S),g.set(e.idText(S),!0),u=e.append(u,S))}break;case 254:if(e.hasSyntacticModifier(x,1))if(e.hasSyntacticModifier(x,512))_||(o(m,t(x),r.factory.getDeclarationName(x)),_=!0);else(S=x.name)&&!g.get(e.idText(S))&&(o(m,t(x),S),g.set(e.idText(S),!0),u=e.append(u,S))}}var T=e.createExternalHelpersImportDeclarationIfNeeded(r.factory,r.getEmitHelperFactory(),s,l,h,y,v);return T&&p.unshift(T),{externalImports:p,exportSpecifiers:f,exportEquals:d,hasExportStarsToExportValues:h,exportedBindings:m,exportedNames:u,externalHelpersImportDeclaration:T};function C(r){for(var n=0,i=e.cast(r.exportClause,e.isNamedExports).elements;n<i.length;n++){var a=i[n];if(!g.get(e.idText(a.name))){var s=a.propertyName||a.name;r.moduleSpecifier||f.add(e.idText(s),a);var l=c.getReferencedImportDeclaration(s)||c.getReferencedValueDeclaration(s);l&&o(m,t(l),a.name),g.set(e.idText(a.name),!0),u=e.append(u,a.name)}}}},e.isSimpleCopiableExpression=s,e.isSimpleInlineableExpression=function(t){return!e.isIdentifier(t)&&s(t)||e.isWellKnownSymbolSyntactically(t)},e.isCompoundAssignment=function(e){return e>=63&&e<=77},e.getNonAssignmentOperatorForCompoundAssignment=function(e){switch(e){case 63:return 39;case 64:return 40;case 65:return 41;case 66:return 42;case 67:return 43;case 68:return 44;case 69:return 47;case 70:return 48;case 71:return 49;case 72:return 50;case 73:return 51;case 77:return 52;case 74:return 56;case 75:return 55;case 76:return 60}},e.addPrologueDirectivesAndInitialSuperCall=function(t,r,n,i){if(r.body){var a=r.body.statements,o=t.copyPrologue(a,n,!1,i);if(o===a.length)return o;var s=e.findIndex(a,(function(t){return e.isExpressionStatement(t)&&e.isSuperCall(t.expression)}),o);if(s>-1){for(var c=o;c<=s;c++)n.push(e.visitNode(a[c],i,e.isStatement));return s+1}return o}return 0},e.getProperties=function(t,r,n){return e.filter(t.members,(function(t){return function(t,r,n){return e.isPropertyDeclaration(t)&&(!!t.initializer||!r)&&e.hasStaticModifier(t)===n}(t,r,n)}))},e.isInitializedProperty=function(e){return 164===e.kind&&void 0!==e.initializer}}(d||(d={})),function(e){function t(r,n){var i=e.getTargetOfBindingOrAssignmentElement(r);return e.isBindingOrAssignmentPattern(i)?function(r,n){for(var i=e.getElementsOfBindingOrAssignmentPattern(r),a=0,o=i;a<o.length;a++){if(t(o[a],n))return!0}return!1}(i,n):!!e.isIdentifier(i)&&i.escapedText===n}function r(t){var n=e.tryGetPropertyNameOfBindingOrAssignmentElement(t);if(n&&e.isComputedPropertyName(n)&&!e.isLiteralExpression(n.expression))return!0;var i,a=e.getTargetOfBindingOrAssignmentElement(t);return!!a&&e.isBindingOrAssignmentPattern(a)&&(i=a,!!e.forEach(e.getElementsOfBindingOrAssignmentPattern(i),r))}function n(t,r,s,c,l){var u=e.getTargetOfBindingOrAssignmentElement(r);if(!l){var d=e.visitNode(e.getInitializerOfBindingOrAssignmentElement(r),t.visitor,e.isExpression);d?s?(s=function(e,t,r,n){return t=o(e,t,!0,n),e.context.factory.createConditionalExpression(e.context.factory.createTypeCheck(t,"undefined"),void 0,r,void 0,t)}(t,s,d,c),!e.isSimpleInlineableExpression(d)&&e.isBindingOrAssignmentPattern(u)&&(s=o(t,s,!0,c))):s=d:s||(s=t.context.factory.createVoidZero())}e.isObjectBindingOrAssignmentPattern(u)?function(t,r,i,s,c){var l,u,d=e.getElementsOfBindingOrAssignmentPattern(i),p=d.length;if(1!==p){s=o(t,s,!e.isDeclarationBindingElement(r)||0!==p,c)}for(var f=0;f<p;f++){var m=d[f];if(e.getRestIndicatorOfBindingOrAssignmentElement(m)){if(f===p-1){l&&(t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(l),s,c,i),l=void 0);_=t.context.getEmitHelperFactory().createRestHelper(s,d,u,i);n(t,m,_,m)}}else{var g=e.getPropertyNameOfBindingOrAssignmentElement(m);if(!(t.level>=1)||24576&m.transformFlags||24576&e.getTargetOfBindingOrAssignmentElement(m).transformFlags||e.isComputedPropertyName(g)){l&&(t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(l),s,c,i),l=void 0);var _=a(t,s,g);e.isComputedPropertyName(g)&&(u=e.append(u,_.argumentExpression)),n(t,m,_,m)}else l=e.append(l,e.visitNode(m,t.visitor))}}l&&t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(l),s,c,i)}(t,r,u,s,c):e.isArrayBindingOrAssignmentPattern(u)?function(t,r,a,s,c){var l,u,d=e.getElementsOfBindingOrAssignmentPattern(a),p=d.length;if(t.level<1&&t.downlevelIteration)s=o(t,e.setTextRange(t.context.getEmitHelperFactory().createReadHelper(s,p>0&&e.getRestIndicatorOfBindingOrAssignmentElement(d[p-1])?void 0:p),c),!1,c);else if(1!==p&&(t.level<1||0===p)||e.every(d,e.isOmittedExpression)){s=o(t,s,!e.isDeclarationBindingElement(r)||0!==p,c)}for(var f=0;f<p;f++){var m=d[f];if(t.level>=1)if(16384&m.transformFlags||t.hasTransformedPriorElement&&!i(m)){t.hasTransformedPriorElement=!0;var g=t.context.factory.createTempVariable(void 0);t.hoistTempVariables&&t.context.hoistVariableDeclaration(g),u=e.append(u,[g,m]),l=e.append(l,t.createArrayBindingOrAssignmentElement(g))}else l=e.append(l,m);else{if(e.isOmittedExpression(m))continue;if(e.getRestIndicatorOfBindingOrAssignmentElement(m)){if(f===p-1){_=t.context.factory.createArraySliceCall(s,f);n(t,m,_,m)}}else{var _=t.context.factory.createElementAccessExpression(s,f);n(t,m,_,m)}}}l&&t.emitBindingOrAssignment(t.createArrayBindingOrAssignmentPattern(l),s,c,a);if(u)for(var h=0,y=u;h<y.length;h++){var v=y[h],b=v[0];n(t,m=v[1],b,m)}}(t,r,u,s,c):t.emitBindingOrAssignment(u,s,c,r)}function i(t){var r=e.getTargetOfBindingOrAssignmentElement(t);if(!r||e.isOmittedExpression(r))return!0;var n=e.tryGetPropertyNameOfBindingOrAssignmentElement(t);if(n&&!e.isPropertyNameLiteral(n))return!1;var a=e.getInitializerOfBindingOrAssignmentElement(t);return!(a&&!e.isSimpleInlineableExpression(a))&&(e.isBindingOrAssignmentPattern(r)?e.every(e.getElementsOfBindingOrAssignmentPattern(r),i):e.isIdentifier(r))}function a(t,r,n){if(e.isComputedPropertyName(n)){var i=o(t,e.visitNode(n.expression,t.visitor),!1,n);return t.context.factory.createElementAccessExpression(r,i)}if(e.isStringOrNumericLiteralLike(n)){i=e.factory.cloneNode(n);return t.context.factory.createElementAccessExpression(r,i)}var a=t.context.factory.createIdentifier(e.idText(n));return t.context.factory.createPropertyAccessExpression(r,a)}function o(t,r,n,i){if(e.isIdentifier(r)&&n)return r;var a=t.context.factory.createTempVariable(void 0);return t.hoistTempVariables?(t.context.hoistVariableDeclaration(a),t.emitExpression(e.setTextRange(t.context.factory.createAssignment(a,r),i))):t.emitBindingOrAssignment(a,r,i,void 0),a}function s(e){return e}!function(e){e[e.All=0]="All",e[e.ObjectRest=1]="ObjectRest"}(e.FlattenLevel||(e.FlattenLevel={})),e.flattenDestructuringAssignment=function(i,a,c,l,u,d){var p,f,m=i;if(e.isDestructuringAssignment(i))for(p=i.right;e.isEmptyArrayLiteral(i.left)||e.isEmptyObjectLiteral(i.left);){if(!e.isDestructuringAssignment(p))return e.visitNode(p,a,e.isExpression);m=i=p,p=i.right}var g={context:c,level:l,downlevelIteration:!!c.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:_,emitBindingOrAssignment:function(t,r,n,i){e.Debug.assertNode(t,d?e.isIdentifier:e.isExpression);var o=d?d(t,r,n):e.setTextRange(c.factory.createAssignment(e.visitNode(t,a,e.isExpression),r),n);o.original=i,_(o)},createArrayBindingOrAssignmentPattern:function(t){return function(t,r){return t.createArrayLiteralExpression(e.map(r,t.converters.convertToArrayAssignmentElement))}(c.factory,t)},createObjectBindingOrAssignmentPattern:function(t){return function(t,r){return t.createObjectLiteralExpression(e.map(r,t.converters.convertToObjectAssignmentElement))}(c.factory,t)},createArrayBindingOrAssignmentElement:s,visitor:a};if(p&&(p=e.visitNode(p,a,e.isExpression),e.isIdentifier(p)&&t(i,p.escapedText)||r(i)?p=o(g,p,!1,m):u?p=o(g,p,!0,m):e.nodeIsSynthesized(i)&&(m=p)),n(g,i,p,m,e.isDestructuringAssignment(i)),p&&u){if(!e.some(f))return p;f.push(p)}return c.factory.inlineExpressions(f)||c.factory.createOmittedExpression();function _(t){f=e.append(f,t)}},e.flattenDestructuringBinding=function(i,a,s,c,l,u,d){var p;void 0===u&&(u=!1);var f=[],m=[],g={context:s,level:c,downlevelIteration:!!s.getCompilerOptions().downlevelIteration,hoistTempVariables:u,emitExpression:function(t){p=e.append(p,t)},emitBindingOrAssignment:C,createArrayBindingOrAssignmentPattern:function(t){return function(t,r){return e.Debug.assertEachNode(r,e.isArrayBindingElement),t.createArrayBindingPattern(r)}(s.factory,t)},createObjectBindingOrAssignmentPattern:function(t){return function(t,r){return e.Debug.assertEachNode(r,e.isBindingElement),t.createObjectBindingPattern(r)}(s.factory,t)},createArrayBindingOrAssignmentElement:function(e){return function(e,t){return e.createBindingElement(void 0,void 0,t)}(s.factory,e)},visitor:a};if(e.isVariableDeclaration(i)){var _=e.getInitializerOfBindingOrAssignmentElement(i);_&&(e.isIdentifier(_)&&t(i,_.escapedText)||r(i))&&(_=o(g,e.visitNode(_,g.visitor),!1,_),i=s.factory.updateVariableDeclaration(i,i.name,void 0,void 0,_))}if(n(g,i,l,i,d),p){var h=s.factory.createTempVariable(void 0);if(u){var y=s.factory.inlineExpressions(p);p=void 0,C(h,y,void 0,void 0)}else{s.hoistVariableDeclaration(h);var v=e.last(f);v.pendingExpressions=e.append(v.pendingExpressions,s.factory.createAssignment(h,v.value)),e.addRange(v.pendingExpressions,p),v.value=h}}for(var b=0,k=f;b<k.length;b++){var x=k[b],S=x.pendingExpressions,w=x.name,D=(y=x.value,x.location),E=x.original,T=s.factory.createVariableDeclaration(w,void 0,void 0,S?s.factory.inlineExpressions(e.append(S,y)):y);T.original=E,e.setTextRange(T,D),m.push(T)}return m;function C(t,r,n,i){e.Debug.assertNode(t,e.isBindingName),p&&(r=s.factory.inlineExpressions(e.append(p,r)),p=void 0),f.push({pendingExpressions:p,name:t,value:r,location:n,original:i})}}}(d||(d={})),function(e){var t;function r(t){return t.templateFlags?e.factory.createVoidZero():e.factory.createStringLiteral(t.text)}function n(t,r){var n=t.rawText;if(void 0===n){n=e.getSourceTextOfNodeFromSourceFile(r,t);var i=14===t.kind||17===t.kind;n=n.substring(1,n.length-(i?1:2))}return n=n.replace(/\r\n?/g,"\n"),e.setTextRange(e.factory.createStringLiteral(n),t)}!function(e){e[e.LiftRestriction=0]="LiftRestriction",e[e.All=1]="All"}(t=e.ProcessLevel||(e.ProcessLevel={})),e.processTaggedTemplateExpression=function(i,a,o,s,c,l){var u=e.visitNode(a.tag,o,e.isExpression),d=[void 0],p=[],f=[],m=a.template;if(l===t.LiftRestriction&&!e.hasInvalidEscape(m))return e.visitEachChild(a,o,i);if(e.isNoSubstitutionTemplateLiteral(m))p.push(r(m)),f.push(n(m,s));else{p.push(r(m.head)),f.push(n(m.head,s));for(var g=0,_=m.templateSpans;g<_.length;g++){var h=_[g];p.push(r(h.literal)),f.push(n(h.literal,s)),d.push(e.visitNode(h.expression,o,e.isExpression))}}var y=i.getEmitHelperFactory().createTemplateObjectHelper(e.factory.createArrayLiteralExpression(p),e.factory.createArrayLiteralExpression(f));if(e.isExternalModule(s)){var v=e.factory.createUniqueName("templateObject");c(v),d[0]=e.factory.createLogicalOr(v,e.factory.createAssignment(v,y))}else d[0]=y;return e.factory.createCallExpression(u,void 0,d)}}(d||(d={})),function(e){var t,r;!function(e){e[e.ClassAliases=1]="ClassAliases",e[e.NamespaceExports=2]="NamespaceExports",e[e.NonQualifiedEnumMembers=8]="NonQualifiedEnumMembers"}(t||(t={})),function(e){e[e.None=0]="None",e[e.HasStaticInitializedProperties=1]="HasStaticInitializedProperties",e[e.HasConstructorDecorators=2]="HasConstructorDecorators",e[e.HasMemberDecorators=4]="HasMemberDecorators",e[e.IsExportOfNamespace=8]="IsExportOfNamespace",e[e.IsNamedExternalExport=16]="IsNamedExternalExport",e[e.IsDefaultExternalExport=32]="IsDefaultExternalExport",e[e.IsDerivedClass=64]="IsDerivedClass",e[e.UseImmediatelyInvokedFunctionExpression=128]="UseImmediatelyInvokedFunctionExpression",e[e.HasAnyDecorators=6]="HasAnyDecorators",e[e.NeedsName=5]="NeedsName",e[e.MayNeedImmediatelyInvokedFunctionExpression=7]="MayNeedImmediatelyInvokedFunctionExpression",e[e.IsExported=56]="IsExported"}(r||(r={})),e.transformTypeScript=function(t){var r,n,i,a,o,s,c,l,u,d,p=t.factory,f=t.getEmitHelperFactory,m=t.startLexicalEnvironment,g=t.resumeLexicalEnvironment,_=t.endLexicalEnvironment,h=t.hoistVariableDeclaration,y=t.getEmitResolver(),v=t.getCompilerOptions(),b=e.getStrictOptionValue(v,"strictNullChecks"),k=e.getEmitScriptTarget(v),x=e.getEmitModuleKind(v),S=t.onEmitNode,w=t.onSubstituteNode;return t.onEmitNode=function(t,n,i){var a=d,o=r;e.isSourceFile(n)&&(r=n);2&l&&function(t){return 259===e.getOriginalNode(t).kind}(n)&&(d|=2);8&l&&function(t){return 258===e.getOriginalNode(t).kind}(n)&&(d|=8);S(t,n,i),d=a,r=o},t.onSubstituteNode=function(t,r){if(r=w(t,r),1===t)return function(t){switch(t.kind){case 78:return function(t){return function(t){if(1&l&&33554432&y.getNodeCheckFlags(t)){var r=y.getReferencedValueDeclaration(t);if(r){var n=u[r.id];if(n){var i=p.cloneNode(n);return e.setSourceMapRange(i,t),e.setCommentRange(i,t),i}}}return}(t)||ze(t)||t}(t);case 202:case 203:return function(e){return Ue(e)}(t)}return t}(r);if(e.isShorthandPropertyAssignment(r))return function(t){if(2&l){var r=t.name,n=ze(r);if(n){if(t.objectAssignmentInitializer){var i=p.createAssignment(n,t.objectAssignmentInitializer);return e.setTextRange(p.createPropertyAssignment(r,i),t)}return e.setTextRange(p.createPropertyAssignment(r,n),t)}}return t}(r);return r},t.enableSubstitution(202),t.enableSubstitution(203),function(t){if(301===t.kind)return function(t){return p.createBundle(t.sourceFiles.map(D),e.mapDefined(t.prepends,(function(t){return 303===t.kind?e.createUnparsedSourceFile(t,"js"):t})))}(t);return D(t)};function D(n){if(n.isDeclarationFile)return n;r=n;var i=E(n,L);return e.addEmitHelpers(i,t.readEmitHelpers()),r=void 0,i}function E(t,r){var n=a,i=o,l=s,u=c;!function(t){switch(t.kind){case 300:case 261:case 260:case 232:a=t,o=void 0,s=void 0;break;case 254:case 253:if(e.hasSyntacticModifier(t,2))break;t.name?be(t):e.Debug.assert(254===t.kind||e.hasSyntacticModifier(t,512)),e.isClassDeclaration(t)&&(o=t)}}(t);var d=r(t);return a!==n&&(s=l),a=n,o=i,c=u,d}function T(e){return E(e,C)}function C(e){return 1&e.transformFlags?M(e):e}function A(e){return E(e,N)}function N(r){switch(r.kind){case 264:case 263:case 269:case 270:return function(r){var n=e.getParseTreeNode(r);if(n!==r)return 1&r.transformFlags?e.visitEachChild(r,T,t):r;switch(r.kind){case 264:return function(t){if(!t.importClause)return t;if(t.importClause.isTypeOnly)return;var r=e.visitNode(t.importClause,De,e.isImportClause);return r||1===v.importsNotUsedAsValues||2===v.importsNotUsedAsValues?p.updateImportDeclaration(t,void 0,void 0,r,t.moduleSpecifier):void 0}(r);case 263:return Ne(r);case 269:return function(r){return y.isValueAliasDeclaration(r)?e.visitEachChild(r,T,t):void 0}(r);case 270:return function(t){if(t.isTypeOnly)return;if(!t.exportClause||e.isNamespaceExport(t.exportClause))return t;if(!y.isValueAliasDeclaration(t))return;var r=e.visitNode(t.exportClause,Ce,e.isNamedExportBindings);return r?p.updateExportDeclaration(t,void 0,void 0,t.isTypeOnly,r,t.moduleSpecifier):void 0}(r);default:e.Debug.fail("Unhandled ellided statement")}}(r);default:return C(r)}}function P(e){return E(e,I)}function I(t){if(270!==t.kind&&264!==t.kind&&265!==t.kind&&(263!==t.kind||275!==t.moduleReference.kind))return 1&t.transformFlags||e.hasSyntacticModifier(t,1)?M(t):t}function F(e){return E(e,O)}function O(t){switch(t.kind){case 167:return me(t);case 164:return fe(t);case 172:case 168:case 169:case 166:return C(t);case 231:return t;default:return e.Debug.failBadSyntaxKind(t)}}function R(t){if(!(2270&e.modifierToFlag(t.kind)||n&&93===t.kind))return t}function M(o){if(e.isStatement(o)&&e.hasSyntacticModifier(o,2))return p.createNotEmittedStatement(o);switch(o.kind){case 93:case 88:return n?void 0:o;case 123:case 121:case 122:case 126:case 85:case 134:case 143:case 179:case 180:case 181:case 182:case 178:case 173:case 160:case 129:case 153:case 132:case 148:case 145:case 142:case 114:case 149:case 176:case 175:case 177:case 174:case 183:case 184:case 185:case 187:case 188:case 189:case 190:case 191:case 192:case 172:case 162:case 257:case 262:return;case 164:return fe(o);case 167:return me(o);case 256:return p.createNotEmittedStatement(o);case 254:return function(i){if(!(z(i)||n&&e.hasSyntacticModifier(i,1)))return e.visitEachChild(i,T,t);var a=e.getProperties(i,!0,!0),o=function(t,r){var n=0;e.some(r)&&(n|=1);var i=e.getEffectiveBaseTypeNode(t);i&&104!==e.skipOuterExpressions(i.expression).kind&&(n|=64);(function(t){if(t.decorators&&t.decorators.length>0)return!0;var r=e.getFirstConstructorWithBody(t);if(r)return e.forEach(r.parameters,j);return!1})(t)&&(n|=2);e.childIsDecorated(t)&&(n|=4);Pe(t)?n|=8:!function(t){return Ie(t)&&e.hasSyntacticModifier(t,512)}(t)?Fe(t)&&(n|=16):n|=32;k<=1&&7&n&&(n|=128);return n}(i,a);128&o&&t.startLexicalEnvironment();var s=i.name||(5&o?p.getGeneratedNameForNode(i):void 0),c=2&o?function(r,n){var i=e.moveRangePastDecorators(r),a=function(r){if(16777216&y.getNodeCheckFlags(r)){1&l||(l|=1,t.enableSubstitution(78),u=[]);var n=p.createUniqueName(r.name&&!e.isGeneratedIdentifier(r.name)?e.idText(r.name):"default");return u[e.getOriginalNodeId(r)]=n,h(n),n}}(r),o=p.getLocalName(r,!1,!0),s=e.visitNodes(r.heritageClauses,T,e.isHeritageClause),c=U(r),d=p.createClassExpression(void 0,void 0,n,void 0,s,c);e.setOriginalNode(d,r),e.setTextRange(d,i);var f=p.createVariableStatement(void 0,p.createVariableDeclarationList([p.createVariableDeclaration(o,void 0,void 0,a?p.createAssignment(a,d):d)],1));return e.setOriginalNode(f,r),e.setTextRange(f,i),e.setCommentRange(f,r),f}(i,s):function(t,r,n){var i=128&n?void 0:e.visitNodes(t.modifiers,R,e.isModifier),a=p.createClassDeclaration(void 0,i,r,void 0,e.visitNodes(t.heritageClauses,T,e.isHeritageClause),U(t)),o=e.getEmitFlags(t);1&n&&(o|=32);return e.setTextRange(a,t),e.setOriginalNode(a,t),e.setEmitFlags(a,o),a}(i,s,o),d=[c];if(W(d,i,!1),W(d,i,!0),function(t,r){var n=function(t){var r=function(t){var r=t.decorators,n=V(e.getFirstConstructorWithBody(t));if(!r&&!n)return;return{decorators:r,parameters:n}}(t),n=K(t,t,r);if(!n)return;var i=u&&u[e.getOriginalNodeId(t)],a=p.getLocalName(t,!1,!0),o=f().createDecorateHelper(n,a),s=p.createAssignment(a,i?p.createAssignment(i,o):o);return e.setEmitFlags(s,1536),e.setSourceMapRange(s,e.moveRangePastDecorators(t)),s}(r);n&&t.push(e.setOriginalNode(p.createExpressionStatement(n),r))}(d,i),128&o){var m=e.createTokenRange(e.skipTrivia(r.text,i.members.end),19),g=p.getInternalName(i),_=p.createPartiallyEmittedExpression(g);e.setTextRangeEnd(_,m.end),e.setEmitFlags(_,1536);var v=p.createReturnStatement(_);e.setTextRangePos(v,m.pos),e.setEmitFlags(v,1920),d.push(v),e.insertStatementsAfterStandardPrologue(d,t.endLexicalEnvironment());var b=p.createImmediatelyInvokedArrowFunction(d);e.setEmitFlags(b,33554432);var x=p.createVariableStatement(void 0,p.createVariableDeclarationList([p.createVariableDeclaration(p.getLocalName(i,!1,!1),void 0,void 0,b)]));e.setOriginalNode(x,i),e.setCommentRange(x,i),e.setSourceMapRange(x,e.moveRangePastDecorators(i)),e.startOnNewLine(x),d=[x]}8&o?Re(d,i):(128&o||2&o)&&(32&o?d.push(p.createExportDefault(p.getLocalName(i,!1,!0))):16&o&&d.push(p.createExternalModuleExport(p.getLocalName(i,!1,!0))));d.length>1&&(d.push(p.createEndOfDeclarationMarker(i)),e.setEmitFlags(c,4194304|e.getEmitFlags(c)));return e.singleOrMany(d)}(o);case 223:return function(r){if(!z(r))return e.visitEachChild(r,T,t);var n=p.createClassExpression(void 0,void 0,r.name,void 0,e.visitNodes(r.heritageClauses,T,e.isHeritageClause),U(r));return e.setOriginalNode(n,r),e.setTextRange(n,r),n}(o);case 289:return function(r){if(117===r.token)return;return e.visitEachChild(r,T,t)}(o);case 225:return function(t){return p.updateExpressionWithTypeArguments(t,e.visitNode(t.expression,T,e.isLeftHandSideExpression),void 0)}(o);case 166:return function(r){if(!pe(r))return;var n=p.updateMethodDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),r.asteriskToken,de(r),void 0,void 0,e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t));n!==r&&(e.setCommentRange(n,r),e.setSourceMapRange(n,e.moveRangePastDecorators(r)));return n}(o);case 168:return function(r){if(!_e(r))return;var n=p.updateGetAccessorDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),de(r),e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t)||p.createBlock([]));n!==r&&(e.setCommentRange(n,r),e.setSourceMapRange(n,e.moveRangePastDecorators(r)));return n}(o);case 169:return function(r){if(!_e(r))return;var n=p.updateSetAccessorDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),de(r),e.visitParameterList(r.parameters,T,t),e.visitFunctionBody(r.body,T,t)||p.createBlock([]));n!==r&&(e.setCommentRange(n,r),e.setSourceMapRange(n,e.moveRangePastDecorators(r)));return n}(o);case 253:return function(r){if(!pe(r))return p.createNotEmittedStatement(r);var n=p.updateFunctionDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t)||p.createBlock([]));if(Pe(r)){var i=[n];return Re(i,r),i}return n}(o);case 209:return function(r){if(!pe(r))return p.createOmittedExpression();var n=p.updateFunctionExpression(r,e.visitNodes(r.modifiers,R,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t)||p.createBlock([]));return n}(o);case 210:return function(r){var n=p.updateArrowFunction(r,e.visitNodes(r.modifiers,R,e.isModifier),void 0,e.visitParameterList(r.parameters,T,t),void 0,r.equalsGreaterThanToken,e.visitFunctionBody(r.body,T,t));return n}(o);case 161:return function(t){if(e.parameterIsThisKeyword(t))return;var r=p.updateParameterDeclaration(t,void 0,void 0,t.dotDotDotToken,e.visitNode(t.name,T,e.isBindingName),void 0,void 0,e.visitNode(t.initializer,T,e.isExpression));r!==t&&(e.setCommentRange(r,t),e.setTextRange(r,e.moveRangePastModifiers(t)),e.setSourceMapRange(r,e.moveRangePastModifiers(t)),e.setEmitFlags(r.name,32));return r}(o);case 208:return function(n){var i=e.skipOuterExpressions(n.expression,-7);if(e.isAssertionExpression(i)){var a=e.visitNode(n.expression,T,e.isExpression);return e.length(e.getLeadingCommentRangesOfNode(a,r))?p.updateParenthesizedExpression(n,a):p.createPartiallyEmittedExpression(a,n)}return e.visitEachChild(n,T,t)}(o);case 207:case 226:return function(t){var r=e.visitNode(t.expression,T,e.isExpression);return p.createPartiallyEmittedExpression(r,t)}(o);case 204:return function(t){return p.updateCallExpression(t,e.visitNode(t.expression,T,e.isExpression),void 0,e.visitNodes(t.arguments,T,e.isExpression))}(o);case 205:return function(t){return p.updateNewExpression(t,e.visitNode(t.expression,T,e.isExpression),void 0,e.visitNodes(t.arguments,T,e.isExpression))}(o);case 206:return function(t){return p.updateTaggedTemplateExpression(t,e.visitNode(t.tag,T,e.isExpression),void 0,e.visitNode(t.template,T,e.isExpression))}(o);case 227:return function(t){var r=e.visitNode(t.expression,T,e.isLeftHandSideExpression);return p.createPartiallyEmittedExpression(r,t)}(o);case 258:return function(t){if(!function(t){return!e.isEnumConst(t)||e.shouldPreserveConstEnums(v)}(t))return p.createNotEmittedStatement(t);var n=[],o=2,s=xe(n,t);s&&(x===e.ModuleKind.System&&a===r||(o|=512));var c=je(t),l=Be(t),u=e.hasSyntacticModifier(t,1)?p.getExternalModuleOrNamespaceExportName(i,t,!1,!0):p.getLocalName(t,!1,!0),d=p.createLogicalOr(u,p.createAssignment(u,p.createObjectLiteralExpression()));if(ve(t)){var f=p.getLocalName(t,!1,!0);d=p.createAssignment(f,d)}var g=p.createExpressionStatement(p.createCallExpression(p.createFunctionExpression(void 0,void 0,void 0,void 0,[p.createParameterDeclaration(void 0,void 0,void 0,c)],void 0,function(t,r){var n=i;i=r;var a=[];m();var o=e.map(t.members,ye);return e.insertStatementsAfterStandardPrologue(a,_()),e.addRange(a,o),i=n,p.createBlock(e.setTextRange(p.createNodeArray(a),t.members),!0)}(t,l)),void 0,[d]));e.setOriginalNode(g,t),s&&(e.setSyntheticLeadingComments(g,void 0),e.setSyntheticTrailingComments(g,void 0));return e.setTextRange(g,t),e.addEmitFlags(g,o),n.push(g),n.push(p.createEndOfDeclarationMarker(t)),n}(o);case 234:return function(r){if(Pe(r)){var n=e.getInitializedVariables(r.declarationList);if(0===n.length)return;return e.setTextRange(p.createExpressionStatement(p.inlineExpressions(e.map(n,he))),r)}return e.visitEachChild(r,T,t)}(o);case 251:return function(t){return p.updateVariableDeclaration(t,e.visitNode(t.name,T,e.isBindingName),void 0,void 0,e.visitNode(t.initializer,T,e.isExpression))}(o);case 259:return Se(o);case 263:return Ne(o);case 277:return function(t){return p.updateJsxSelfClosingElement(t,e.visitNode(t.tagName,T,e.isJsxTagNameExpression),void 0,e.visitNode(t.attributes,T,e.isJsxAttributes))}(o);case 278:return function(t){return p.updateJsxOpeningElement(t,e.visitNode(t.tagName,T,e.isJsxTagNameExpression),void 0,e.visitNode(t.attributes,T,e.isJsxAttributes))}(o);default:return e.visitEachChild(o,T,t)}}function L(r){var n=e.getStrictOptionValue(v,"alwaysStrict")&&!(e.isExternalModule(r)&&x>=e.ModuleKind.ES2015)&&!e.isJsonSourceFile(r);return p.updateSourceFile(r,e.visitLexicalEnvironment(r.statements,A,t,0,n))}function j(e){return void 0!==e.decorators&&e.decorators.length>0}function B(e){return!!(2048&e.transformFlags)}function z(t){return e.some(t.decorators)||e.some(t.typeParameters)||e.some(t.heritageClauses,B)||e.some(t.members,B)}function U(t){var r=[],n=e.getFirstConstructorWithBody(t),i=n&&e.filter(n.parameters,(function(t){return e.isParameterPropertyDeclaration(t,n)}));if(i)for(var a=0,o=i;a<o.length;a++){var s=o[a];e.isIdentifier(s.name)&&r.push(e.setOriginalNode(p.createPropertyDeclaration(void 0,void 0,s.name,void 0,void 0,void 0),s))}return e.addRange(r,e.visitNodes(t.members,F,e.isClassElement)),e.setTextRange(p.createNodeArray(r),t.members)}function q(t,r){return e.filter(t.members,r?function(e){return J(e,!0,t)}:function(e){return J(e,!1,t)})}function J(t,r,n){return e.nodeOrChildIsDecorated(t,n)&&r===e.hasSyntacticModifier(t,32)}function V(t){var r;if(t)for(var n=t.parameters,i=n.length>0&&e.parameterIsThisKeyword(n[0]),a=i?1:0,o=i?n.length-1:n.length,s=0;s<o;s++){var c=n[s+a];(r||c.decorators)&&(r||(r=new Array(o)),r[s]=c.decorators)}return r}function H(t,r){switch(r.kind){case 168:case 169:return function(t,r){if(!r.body)return;var n=e.getAllAccessorDeclarations(t.members,r),i=n.firstAccessor,a=n.secondAccessor,o=n.setAccessor,s=i.decorators?i:a&&a.decorators?a:void 0;if(!s||r!==s)return;var c=s.decorators,l=V(o);if(!c&&!l)return;return{decorators:c,parameters:l}}(t,r);case 166:return function(e){if(!e.body)return;var t=e.decorators,r=V(e);if(!t&&!r)return;return{decorators:t,parameters:r}}(r);case 164:return function(e){var t=e.decorators;if(!t)return;return{decorators:t}}(r);default:return}}function K(t,r,n){if(n){var i=[];return e.addRange(i,e.map(n.decorators,$)),e.addRange(i,e.flatMap(n.parameters,Y)),function(e,t,r){(function(e,t,r){v.emitDecoratorMetadata&&(X(e)&&r.push(f().createMetadataHelper("design:type",ee(e))),Z(e)&&r.push(f().createMetadataHelper("design:paramtypes",te(e,t))),Q(e)&&r.push(f().createMetadataHelper("design:returntype",re(e))))})(e,t,r)}(t,r,i),i}}function W(t,r,n){e.addRange(t,e.map(function(e,t){for(var r,n=q(e,t),i=0,a=n;i<a.length;i++){var o=G(e,a[i]);o&&(r?r.push(o):r=[o])}return r}(r,n),Oe))}function G(t,r){var n=K(r,t,H(t,r));if(n){var i=function(t,r){return e.hasSyntacticModifier(r,32)?p.getDeclarationName(t):function(e){return p.createPropertyAccessExpression(p.getDeclarationName(e),"prototype")}(t)}(t,r),a=ue(r,!0),o=k>0?164===r.kind?p.createVoidZero():p.createNull():void 0,s=f().createDecorateHelper(n,i,a,o);return e.setTextRange(s,e.moveRangePastDecorators(r)),e.setEmitFlags(s,1536),s}}function $(t){return e.visitNode(t.expression,T,e.isExpression)}function Y(t,r){var n;if(t){n=[];for(var i=0,a=t;i<a.length;i++){var o=a[i],s=f().createParamHelper($(o),r);e.setTextRange(s,o.expression),e.setEmitFlags(s,1536),n.push(s)}}return n}function X(e){var t=e.kind;return 166===t||168===t||169===t||164===t}function Q(e){return 166===e.kind}function Z(t){switch(t.kind){case 254:case 223:return void 0!==e.getFirstConstructorWithBody(t);case 166:case 168:case 169:return!0}return!1}function ee(t){switch(t.kind){case 164:case 161:return ne(t.type);case 169:case 168:return ne(function(t){var r=y.getAllAccessorDeclarations(t);return r.setAccessor&&e.getSetAccessorTypeAnnotationNode(r.setAccessor)||r.getAccessor&&e.getEffectiveReturnTypeNode(r.getAccessor)}(t));case 254:case 223:case 166:return p.createIdentifier("Function");default:return p.createVoidZero()}}function te(t,r){var n=e.isClassLike(t)?e.getFirstConstructorWithBody(t):e.isFunctionLike(t)&&e.nodeIsPresent(t.body)?t:void 0,i=[];if(n)for(var a=function(t,r){if(r&&168===t.kind){var n=e.getAllAccessorDeclarations(r.members,t).setAccessor;if(n)return n.parameters}return t.parameters}(n,r),o=a.length,s=0;s<o;s++){var c=a[s];0===s&&e.isIdentifier(c.name)&&"this"===c.name.escapedText||(c.dotDotDotToken?i.push(ne(e.getRestParameterElementType(c.type))):i.push(ee(c)))}return p.createArrayLiteralExpression(i)}function re(t){return e.isFunctionLike(t)&&t.type?ne(t.type):e.isAsyncFunction(t)?p.createIdentifier("Promise"):p.createVoidZero()}function ne(t){if(void 0===t)return p.createIdentifier("Object");switch(t.kind){case 114:case 151:case 142:return p.createVoidZero();case 187:return ne(t.type);case 175:case 176:return p.createIdentifier("Function");case 179:case 180:return p.createIdentifier("Array");case 173:case 132:return p.createIdentifier("Boolean");case 148:return p.createIdentifier("String");case 146:return p.createIdentifier("Object");case 192:switch(t.literal.kind){case 10:case 14:return p.createIdentifier("String");case 216:case 8:return p.createIdentifier("Number");case 9:return le();case 110:case 95:return p.createIdentifier("Boolean");case 104:return p.createVoidZero();default:return e.Debug.failBadSyntaxKind(t.literal)}case 145:return p.createIdentifier("Number");case 156:return le();case 149:return k<2?ce():p.createIdentifier("Symbol");case 174:return function(t){var r=y.getTypeReferenceSerializationKind(t.typeName,o||a);switch(r){case e.TypeReferenceSerializationKind.Unknown:if(e.findAncestor(t,(function(t){return t.parent&&e.isConditionalTypeNode(t.parent)&&(t.parent.trueType===t||t.parent.falseType===t)})))return p.createIdentifier("Object");var n=oe(t.typeName),i=p.createTempVariable(h);return p.createConditionalExpression(p.createTypeCheck(p.createAssignment(i,n),"function"),void 0,i,void 0,p.createIdentifier("Object"));case e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue:return se(t.typeName);case e.TypeReferenceSerializationKind.VoidNullableOrNeverType:return p.createVoidZero();case e.TypeReferenceSerializationKind.BigIntLikeType:return le();case e.TypeReferenceSerializationKind.BooleanType:return p.createIdentifier("Boolean");case e.TypeReferenceSerializationKind.NumberLikeType:return p.createIdentifier("Number");case e.TypeReferenceSerializationKind.StringLikeType:return p.createIdentifier("String");case e.TypeReferenceSerializationKind.ArrayLikeType:return p.createIdentifier("Array");case e.TypeReferenceSerializationKind.ESSymbolType:return k<2?ce():p.createIdentifier("Symbol");case e.TypeReferenceSerializationKind.TypeWithCallSignature:return p.createIdentifier("Function");case e.TypeReferenceSerializationKind.Promise:return p.createIdentifier("Promise");case e.TypeReferenceSerializationKind.ObjectType:return p.createIdentifier("Object");default:return e.Debug.assertNever(r)}}(t);case 184:case 183:return ie(t.types);case 185:return ie([t.trueType,t.falseType]);case 189:if(143===t.operator)return ne(t.type);break;case 177:case 190:case 191:case 178:case 129:case 153:case 188:case 196:case 306:case 307:case 311:case 312:case 313:break;case 308:case 309:case 310:return ne(t.type);default:return e.Debug.failBadSyntaxKind(t)}return p.createIdentifier("Object")}function ie(t){for(var r,n=0,i=t;n<i.length;n++){for(var a=i[n];187===a.kind;)a=a.type;if(142!==a.kind&&(b||(192!==a.kind||104!==a.literal.kind)&&151!==a.kind)){var o=ne(a);if(e.isIdentifier(o)&&"Object"===o.escapedText)return o;if(r){if(!e.isIdentifier(r)||!e.isIdentifier(o)||r.escapedText!==o.escapedText)return p.createIdentifier("Object")}else r=o}}return r||p.createVoidZero()}function ae(e,t){return p.createLogicalAnd(p.createStrictInequality(p.createTypeOfExpression(e),p.createStringLiteral("undefined")),t)}function oe(e){if(78===e.kind){var t=se(e);return ae(t,t)}if(78===e.left.kind)return ae(se(e.left),se(e));var r=oe(e.left),n=p.createTempVariable(h);return p.createLogicalAnd(p.createLogicalAnd(r.left,p.createStrictInequality(p.createAssignment(n,r.right),p.createVoidZero())),p.createPropertyAccessExpression(n,e.right))}function se(t){switch(t.kind){case 78:var r=e.setParent(e.setTextRange(e.parseNodeFactory.cloneNode(t),t),t.parent);return r.original=void 0,e.setParent(r,e.getParseTreeNode(a)),r;case 158:return function(e){return p.createPropertyAccessExpression(se(e.left),e.right)}(t)}}function ce(){return p.createConditionalExpression(p.createTypeCheck(p.createIdentifier("Symbol"),"function"),void 0,p.createIdentifier("Symbol"),void 0,p.createIdentifier("Object"))}function le(){return k<99?p.createConditionalExpression(p.createTypeCheck(p.createIdentifier("BigInt"),"function"),void 0,p.createIdentifier("BigInt"),void 0,p.createIdentifier("Object")):p.createIdentifier("BigInt")}function ue(t,r){var n=t.name;return e.isPrivateIdentifier(n)?p.createIdentifier(""):e.isComputedPropertyName(n)?r&&!e.isSimpleInlineableExpression(n.expression)?p.getGeneratedNameForNode(n):n.expression:e.isIdentifier(n)?p.createStringLiteral(e.idText(n)):p.cloneNode(n)}function de(t){var r=t.name;if(e.isComputedPropertyName(r)&&(!e.hasStaticModifier(t)&&c||e.some(t.decorators))){var n=e.visitNode(r.expression,T,e.isExpression),i=e.skipPartiallyEmittedExpressions(n);if(!e.isSimpleInlineableExpression(i)){var a=p.getGeneratedNameForNode(r);return h(a),p.updateComputedPropertyName(r,p.createAssignment(a,n))}}return e.visitNode(r,T,e.isPropertyName)}function pe(t){return!e.nodeIsMissing(t.body)}function fe(t){if(!(8388608&t.flags||e.hasSyntacticModifier(t,128))){var r=p.updatePropertyDeclaration(t,void 0,e.visitNodes(t.modifiers,T,e.isModifier),de(t),void 0,void 0,e.visitNode(t.initializer,T));return r!==t&&(e.setCommentRange(r,t),e.setSourceMapRange(r,e.moveRangePastDecorators(t))),r}}function me(r){if(pe(r))return p.updateConstructorDeclaration(r,void 0,void 0,e.visitParameterList(r.parameters,T,t),function(r,n){var i=n&&e.filter(n.parameters,(function(t){return e.isParameterPropertyDeclaration(t,n)}));if(!e.some(i))return e.visitFunctionBody(r,T,t);var a=[],o=0;g(),o=e.addPrologueDirectivesAndInitialSuperCall(p,n,a,T),e.addRange(a,e.map(i,ge)),e.addRange(a,e.visitNodes(r.statements,T,e.isStatement,o)),a=p.mergeLexicalEnvironment(a,_());var s=p.createBlock(e.setTextRange(p.createNodeArray(a),r.statements),!0);return e.setTextRange(s,r),e.setOriginalNode(s,r),s}(r.body,r))}function ge(t){var r=t.name;if(e.isIdentifier(r)){var n=e.setParent(e.setTextRange(p.cloneNode(r),r),r.parent);e.setEmitFlags(n,1584);var i=e.setParent(e.setTextRange(p.cloneNode(r),r),r.parent);return e.setEmitFlags(i,1536),e.startOnNewLine(e.removeAllComments(e.setTextRange(e.setOriginalNode(p.createExpressionStatement(p.createAssignment(e.setTextRange(p.createPropertyAccessExpression(p.createThis(),n),t.name),i)),t),e.moveRangePos(t,-1))))}}function _e(t){return!(e.nodeIsMissing(t.body)&&e.hasSyntacticModifier(t,128))}function he(r){var n=r.name;return e.isBindingPattern(n)?e.flattenDestructuringAssignment(r,T,t,0,!1,Me):e.setTextRange(p.createAssignment(Le(n),e.visitNode(r.initializer,T,e.isExpression)),r)}function ye(r){var n=ue(r,!1),a=function(r){var n=y.getConstantValue(r);return void 0!==n?"string"==typeof n?p.createStringLiteral(n):p.createNumericLiteral(n):(8&l||(l|=8,t.enableSubstitution(78)),r.initializer?e.visitNode(r.initializer,T,e.isExpression):p.createVoidZero())}(r),o=p.createAssignment(p.createElementAccessExpression(i,n),a),s=10===a.kind?o:p.createAssignment(p.createElementAccessExpression(i,o),n);return e.setTextRange(p.createExpressionStatement(e.setTextRange(s,r)),r)}function ve(t){return Pe(t)||Ie(t)&&x!==e.ModuleKind.ES2015&&x!==e.ModuleKind.ES2020&&x!==e.ModuleKind.ESNext&&x!==e.ModuleKind.System}function be(t){s||(s=new e.Map);var r=ke(t);s.has(r)||s.set(r,t)}function ke(t){return e.Debug.assertNode(t.name,e.isIdentifier),t.name.escapedText}function xe(t,r){var n=p.createVariableStatement(e.visitNodes(r.modifiers,R,e.isModifier),p.createVariableDeclarationList([p.createVariableDeclaration(p.getLocalName(r,!1,!0))],300===a.kind?0:1));if(e.setOriginalNode(n,r),be(r),function(e){if(s){var t=ke(e);return s.get(t)===e}return!0}(r))return 258===r.kind?e.setSourceMapRange(n.declarationList,r):e.setSourceMapRange(n,r),e.setCommentRange(n,r),e.addEmitFlags(n,4195328),t.push(n),!0;var i=p.createMergeDeclarationMarker(n);return e.setEmitFlags(i,4195840),t.push(i),!1}function Se(o){if(!function(t){var r=e.getParseTreeNode(t,e.isModuleDeclaration);return!r||e.isInstantiatedModule(r,e.shouldPreserveConstEnums(v))}(o))return p.createNotEmittedStatement(o);e.Debug.assertNode(o.name,e.isIdentifier,"A TypeScript namespace should have an Identifier name."),2&l||(l|=2,t.enableSubstitution(78),t.enableSubstitution(292),t.enableEmitNotification(259));var c=[],u=2,d=xe(c,o);d&&(x===e.ModuleKind.System&&a===r||(u|=512));var f=je(o),g=Be(o),h=e.hasSyntacticModifier(o,1)?p.getExternalModuleOrNamespaceExportName(i,o,!1,!0):p.getLocalName(o,!1,!0),y=p.createLogicalOr(h,p.createAssignment(h,p.createObjectLiteralExpression()));if(ve(o)){var b=p.getLocalName(o,!1,!0);y=p.createAssignment(b,y)}var k=p.createExpressionStatement(p.createCallExpression(p.createFunctionExpression(void 0,void 0,void 0,void 0,[p.createParameterDeclaration(void 0,void 0,void 0,f)],void 0,function(t,r){var a=i,o=n,c=s;i=r,n=t,s=void 0;var l,u,d=[];if(m(),t.body)if(260===t.body.kind)E(t.body,(function(t){return e.addRange(d,e.visitNodes(t.statements,P,e.isStatement))})),l=t.body.statements,u=t.body;else{var f=Se(t.body);f&&(e.isArray(f)?e.addRange(d,f):d.push(f));var g=we(t).body;l=e.moveRangePos(g.statements,-1)}e.insertStatementsAfterStandardPrologue(d,_()),i=a,n=o,s=c;var h=p.createBlock(e.setTextRange(p.createNodeArray(d),l),!0);e.setTextRange(h,u),t.body&&260===t.body.kind||e.setEmitFlags(h,1536|e.getEmitFlags(h));return h}(o,g)),void 0,[y]));return e.setOriginalNode(k,o),d&&(e.setSyntheticLeadingComments(k,void 0),e.setSyntheticTrailingComments(k,void 0)),e.setTextRange(k,o),e.addEmitFlags(k,u),c.push(k),c.push(p.createEndOfDeclarationMarker(o)),c}function we(e){if(259===e.body.kind)return we(e.body)||e.body}function De(t){if(!t.isTypeOnly){var r=y.isReferencedAliasDeclaration(t)?t.name:void 0,n=e.visitNode(t.namedBindings,Ee,e.isNamedImportBindings);return r||n?p.updateImportClause(t,!1,r,n):void 0}}function Ee(t){if(266===t.kind)return y.isReferencedAliasDeclaration(t)?t:void 0;var r=e.visitNodes(t.elements,Te,e.isImportSpecifier);return e.some(r)?p.updateNamedImports(t,r):void 0}function Te(e){return y.isReferencedAliasDeclaration(e)?e:void 0}function Ce(t){return e.isNamespaceExport(t)?function(t){return p.updateNamespaceExport(t,e.visitNode(t.name,T,e.isIdentifier))}(t):function(t){var r=e.visitNodes(t.elements,Ae,e.isExportSpecifier);return e.some(r)?p.updateNamedExports(t,r):void 0}(t)}function Ae(e){return y.isValueAliasDeclaration(e)?e:void 0}function Ne(n){if(!n.isTypeOnly){if(e.isExternalModuleImportEqualsDeclaration(n)){var a=y.isReferencedAliasDeclaration(n);return a||1!==v.importsNotUsedAsValues?a?e.visitEachChild(n,T,t):void 0:e.setOriginalNode(e.setTextRange(p.createImportDeclaration(void 0,void 0,void 0,n.moduleReference.expression),n),n)}if(function(t){return y.isReferencedAliasDeclaration(t)||!e.isExternalModule(r)&&y.isTopLevelValueImportEqualsWithEntityName(t)}(n)){var o,s,c,l=e.createExpressionFromEntityName(p,n.moduleReference);return e.setEmitFlags(l,3584),Fe(n)||!Pe(n)?e.setOriginalNode(e.setTextRange(p.createVariableStatement(e.visitNodes(n.modifiers,R,e.isModifier),p.createVariableDeclarationList([e.setOriginalNode(p.createVariableDeclaration(n.name,void 0,void 0,l),n)])),n),n):e.setOriginalNode((o=n.name,s=l,c=n,e.setTextRange(p.createExpressionStatement(p.createAssignment(p.getNamespaceMemberName(i,o,!1,!0),s)),c)),n)}}}function Pe(t){return void 0!==n&&e.hasSyntacticModifier(t,1)}function Ie(t){return void 0===n&&e.hasSyntacticModifier(t,1)}function Fe(t){return Ie(t)&&!e.hasSyntacticModifier(t,512)}function Oe(e){return p.createExpressionStatement(e)}function Re(t,r){var n=p.createAssignment(p.getExternalModuleOrNamespaceExportName(i,r,!1,!0),p.getLocalName(r));e.setSourceMapRange(n,e.createRange(r.name?r.name.pos:r.pos,r.end));var a=p.createExpressionStatement(n);e.setSourceMapRange(a,e.createRange(-1,r.end)),t.push(a)}function Me(t,r,n){return e.setTextRange(p.createAssignment(Le(t),r),n)}function Le(e){return p.getNamespaceMemberName(i,e,!1,!0)}function je(t){var r=p.getGeneratedNameForNode(t);return e.setSourceMapRange(r,t.name),r}function Be(e){return p.getGeneratedNameForNode(e)}function ze(t){if(l&d&&!e.isGeneratedIdentifier(t)&&!e.isLocalName(t)){var r=y.getReferencedExportContainer(t,!1);if(r&&300!==r.kind)if(2&d&&259===r.kind||8&d&&258===r.kind)return e.setTextRange(p.createPropertyAccessExpression(p.getGeneratedNameForNode(r),t),t)}}function Ue(t){var r=function(t){if(v.isolatedModules)return;return e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)?y.getConstantValue(t):void 0}(t);if(void 0!==r){e.setConstantValue(t,r);var n="string"==typeof r?p.createStringLiteral(r):p.createNumericLiteral(r);if(!v.removeComments){var i=e.getOriginalNode(t,e.isAccessExpression),a=e.isPropertyAccessExpression(i)?e.declarationNameToString(i.name):e.getTextOfNode(i.argumentExpression);e.addSyntheticTrailingComment(n,3," "+a+" ")}return n}return t}},e.transformTypeExportImportAndConstEnumInTypeScript=function(t){var r,n,i=t.getEmitResolver();return function(r){if(r.isDeclarationFile)return r;return e.factory.updateSourceFile(r,e.visitLexicalEnvironment(r.statements,a,t))};function a(s){switch(s.kind){case 264:return function(t){if(!t.importClause||t.importClause.isTypeOnly)return t;d();var n=[],i=e.visitNode(t.importClause,o,e.isImportClause);i&&n.push(e.factory.updateImportDeclaration(t,void 0,void 0,i,t.moduleSpecifier));for(var a=function(){var t,n=r.name;r.namespaceImport?t=r.namespaceImport:r.namedImports.length>0&&(t=e.factory.createNamedImports(r.namedImports));var i=[];void 0!==n&&i.push(e.factory.createImportClause(!0,n,void 0));void 0!==t&&i.push(e.factory.createImportClause(!0,void 0,t));return d(),i}(),s=0,c=a;s<c.length;s++){var l=c[s];n.push(e.factory.createImportDeclaration(void 0,void 0,l,t.moduleSpecifier))}return n.length>0?n:void 0}(s);case 263:return function(t){if(t.isTypeOnly)return t;if(e.isExternalModuleImportEqualsDeclaration(t)){return i.isReferencedAliasDeclaration(t)?t:i.isReferenced(t)?e.factory.updateImportEqualsDeclaration(t,t.decorators,t.modifiers,!0,t.name,t.moduleReference):void 0}return t}(s);case 270:return function(t){if(t.isTypeOnly||!t.exportClause||e.isNamespaceExport(t.exportClause))return t;p();var r=[],i=e.visitNode(t.exportClause,l,e.isNamedExportBindings);i&&r.push(e.factory.updateExportDeclaration(t,void 0,void 0,t.isTypeOnly,i,t.moduleSpecifier));var a=function(){var t;n.namedExports.length>0&&(t=e.factory.createNamedExports(n.namedExports));return p(),t}();a&&r.push(e.factory.createExportDeclaration(void 0,void 0,!0,a,t.moduleSpecifier));return r.length>0?r:void 0}(s);case 202:case 203:return function(r){var n=i.getConstantValue(r);if(void 0!==n){return"string"==typeof n?e.factory.createStringLiteral(n):e.factory.createNumericLiteral(n)}return e.visitEachChild(r,a,t)}(s);case 294:return function(r){var n=i.getConstantValue(r);if(void 0!==n){var o="string"==typeof n?e.factory.createStringLiteral(n):e.factory.createNumericLiteral(n);return e.factory.updateEnumMember(r,r.name,o)}return e.visitEachChild(r,a,t)}(s);default:return e.visitEachChild(s,a,t)}}function o(t){if(t.isTypeOnly)return t;var n;i.isReferencedAliasDeclaration(t)?n=t.name:i.isReferenced(t)&&function(e){r.name=e.name}(t);var a=e.visitNode(t.namedBindings,s,e.isNamedImportBindings);return n||a?e.factory.updateImportClause(t,!1,n,a):void 0}function s(t){if(266===t.kind)return i.isReferencedAliasDeclaration(t)?t:void(i.isReferenced(t)&&function(e){r.namespaceImport=e}(t));var n=e.visitNodes(t.elements,c,e.isImportSpecifier);return e.some(n)?e.factory.updateNamedImports(t,n):void 0}function c(e){if(i.isReferencedAliasDeclaration(e))return e;i.isReferenced(e)&&function(e){r.namedImports.push(e)}(e)}function l(t){var r=e.visitNodes(t.elements,u,e.isExportSpecifier);return e.some(r)?e.factory.updateNamedExports(t,r):void 0}function u(e){if(i.isValueAliasDeclaration(e))return e;!function(e){n.namedExports.push(e)}(e)}function d(){r={name:void 0,namespaceImport:void 0,namedImports:[]}}function p(){n={namedExports:[]}}}}(d||(d={})),function(e){var t,r;!function(e){e[e.ClassAliases=1]="ClassAliases"}(t||(t={})),function(e){e[e.InstanceField=0]="InstanceField"}(r||(r={})),e.transformClassFields=function(t){var r,n,a,o,s=t.factory,c=t.hoistVariableDeclaration,l=t.endLexicalEnvironment,u=t.resumeLexicalEnvironment,d=t.getEmitResolver(),p=t.getCompilerOptions(),f=e.getEmitScriptTarget(p),m=f<99,g=t.onSubstituteNode;t.onSubstituteNode=function(t,i){if(i=g(t,i),1===t)return function(t){if(78===t.kind)return function(t){return function(t){if(1&r&&33554432&d.getNodeCheckFlags(t)){var i=d.getReferencedValueDeclaration(t);if(i){var a=n[i.id];if(a){var o=s.cloneNode(a);return e.setSourceMapRange(o,t),e.setCommentRange(o,t),o}}}return}(t)||t}(t);return t}(i);return i};var _,h=[];return e.chainBundle(t,(function(r){var n=t.getCompilerOptions();if(r.isDeclarationFile||n.useDefineForClassFields&&99===n.target)return r;var i=e.visitEachChild(r,y,t);return e.addEmitHelpers(i,t.readEmitHelpers()),i}));function y(l){if(!(4194304&l.transformFlags))return l;switch(l.kind){case 223:case 254:return function(i){var l=a;a=void 0,m&&(h.push(_),_=void 0);var u=e.isClassDeclaration(i)?function(r){if(!e.forEach(r.members,E))return e.visitEachChild(r,y,t);var n=e.getEffectiveBaseTypeNode(r),i=!(!n||104===e.skipOuterExpressions(n.expression).kind),o=[s.updateClassDeclaration(r,void 0,r.modifiers,r.name,void 0,e.visitNodes(r.heritageClauses,y,e.isHeritageClause),T(r,i))];e.some(a)&&o.push(s.createExpressionStatement(s.inlineExpressions(a)));var c=e.getProperties(r,!0,!0);e.some(c)&&A(o,c,s.getInternalName(r));return o}(i):e.isClassExpression(i)?function(i){if(!e.forEach(i.members,E))return e.visitEachChild(i,y,t);var l=e.isClassDeclaration(e.getOriginalNode(i)),u=e.getProperties(i,!0,!0),p=e.getEffectiveBaseTypeNode(i),f=!(!p||104===e.skipOuterExpressions(p.expression).kind),m=s.updateClassExpression(i,e.visitNodes(i.decorators,y,e.isDecorator),i.modifiers,i.name,void 0,e.visitNodes(i.heritageClauses,y,e.isHeritageClause),T(i,f));if(e.some(u)||e.some(a)){if(l)return e.Debug.assertIsDefined(o,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),o&&a&&e.some(a)&&o.push(s.createExpressionStatement(s.inlineExpressions(a))),o&&e.some(u)&&A(o,u,s.getInternalName(i)),m;var g=[],_=16777216&d.getNodeCheckFlags(i),h=s.createTempVariable(c,!!_);if(_){1&r||(r|=1,t.enableSubstitution(78),n=[]);var v=s.cloneNode(h);v.autoGenerateFlags&=-9,n[e.getOriginalNodeId(i)]=v}return e.setEmitFlags(m,65536|e.getEmitFlags(m)),g.push(e.startOnNewLine(s.createAssignment(h,m))),e.addRange(g,e.map(a,e.startOnNewLine)),e.addRange(g,function(t,r){for(var n=[],i=0,a=t;i<a.length;i++){var o=a[i],s=N(o,r);s&&(e.startOnNewLine(s),e.setSourceMapRange(s,e.moveRangePastModifiers(o)),e.setCommentRange(s,o),e.setOriginalNode(s,o),n.push(s))}return n}(u,h)),g.push(e.startOnNewLine(h)),s.inlineExpressions(g)}return m}(i):[];m&&(_=h.pop());return a=l,u}(l);case 164:return k(l);case 234:return function(r){var n=o;o=[];var a=e.visitEachChild(r,y,t),s=e.some(o)?i([a],o):a;return o=n,s}(l);case 202:return function(r){if(m&&e.isPrivateIdentifier(r.name)){var n=F(r.name);if(n)return e.setOriginalNode(x(n,r.expression),r)}return e.visitEachChild(r,y,t)}(l);case 216:return function(r){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.operand)){var n=45===r.operator?39:46===r.operator?40:void 0,i=void 0;if(n&&(i=F(r.operand.name))){var a=w(e.visitNode(r.operand.expression,y,e.isExpression)),o=a.readExpression,c=a.initializeExpression,l=s.createPrefixUnaryExpression(39,x(i,o));return e.setOriginalNode(D(i,c||o,s.createBinaryExpression(l,n,s.createNumericLiteral(1)),62),r)}}return e.visitEachChild(r,y,t)}(l);case 217:return S(l,!1);case 204:return function(r){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.expression)){var n=s.createCallBinding(r.expression,c,f),a=n.thisArg,o=n.target;return e.isCallChain(r)?s.updateCallChain(r,s.createPropertyAccessChain(e.visitNode(o,y),r.questionDotToken,"call"),void 0,void 0,i([e.visitNode(a,y,e.isExpression)],e.visitNodes(r.arguments,y,e.isExpression))):s.updateCallExpression(r,s.createPropertyAccessExpression(e.visitNode(o,y),"call"),void 0,i([e.visitNode(a,y,e.isExpression)],e.visitNodes(r.arguments,y,e.isExpression)))}return e.visitEachChild(r,y,t)}(l);case 218:return function(r){if(m){if(e.isDestructuringAssignment(r)){var n=a;a=void 0,r=s.updateBinaryExpression(r,e.visitNode(r.left,v),r.operatorToken,e.visitNode(r.right,y));var o=e.some(a)?s.inlineExpressions(e.compact(i(i([],a),[r]))):r;return a=n,o}if(e.isAssignmentExpression(r)&&e.isPrivateIdentifierPropertyAccessExpression(r.left)){var c=F(r.left.name);if(c)return e.setOriginalNode(D(c,r.left.expression,r.right,r.operatorToken.kind),r)}}return e.visitEachChild(r,y,t)}(l);case 79:return function(t){if(!m)return t;return e.setOriginalNode(s.createIdentifier(""),t)}(l);case 235:return function(r){if(e.isPostfixUnaryExpression(r.expression))return s.updateExpressionStatement(r,S(r.expression,!0));return e.visitEachChild(r,y,t)}(l);case 239:return function(r){if(r.incrementor&&e.isPostfixUnaryExpression(r.incrementor))return s.updateForStatement(r,e.visitNode(r.initializer,y,e.isForInitializer),e.visitNode(r.condition,y,e.isExpression),S(r.incrementor,!0),e.visitNode(r.statement,y,e.isStatement));return e.visitEachChild(r,y,t)}(l);case 206:return function(r){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.tag)){var n=s.createCallBinding(r.tag,c,f),i=n.thisArg,a=n.target;return s.updateTaggedTemplateExpression(r,s.createCallExpression(s.createPropertyAccessExpression(e.visitNode(a,y),"bind"),void 0,[e.visitNode(i,y,e.isExpression)]),void 0,e.visitNode(r.template,y,e.isTemplateLiteral))}return e.visitEachChild(r,y,t)}(l)}return e.visitEachChild(l,y,t)}function v(t){switch(t.kind){case 201:case 200:return function(t){return e.isArrayLiteralExpression(t)?s.updateArrayLiteralExpression(t,e.visitNodes(t.elements,R,e.isExpression)):s.updateObjectLiteralExpression(t,e.visitNodes(t.properties,M,e.isObjectLiteralElementLike))}(t);default:return y(t)}}function b(r){switch(r.kind){case 167:return;case 168:case 169:case 166:return e.visitEachChild(r,b,t);case 164:return k(r);case 159:return function(r){var n=e.visitEachChild(r,y,t);if(e.some(a)){var i=a;i.push(n.expression),a=[],n=s.updateComputedPropertyName(n,s.inlineExpressions(i))}return n}(r);case 231:return r;default:return y(r)}}function k(r){if(e.Debug.assert(!e.some(r.decorators)),!m&&e.isPrivateIdentifier(r.name))return s.updatePropertyDeclaration(r,void 0,e.visitNodes(r.modifiers,y,e.isModifier),r.name,void 0,void 0,void 0);var n=function(t,r){if(e.isComputedPropertyName(t)){var n=e.visitNode(t.expression,y,e.isExpression),i=e.skipPartiallyEmittedExpressions(n),a=e.isSimpleInlineableExpression(i);if(!(e.isAssignmentExpression(i)&&e.isGeneratedIdentifier(i.left))&&!a&&r){var o=s.getGeneratedNameForNode(t);return c(o),s.createAssignment(o,n)}return a||e.isIdentifier(i)?void 0:n}}(r.name,!!r.initializer||!!t.getCompilerOptions().useDefineForClassFields);n&&!e.isSimpleInlineableExpression(n)&&P().push(n)}function x(r,n){return n=e.visitNode(n,y,e.isExpression),0===r.placement?t.getEmitHelperFactory().createClassPrivateFieldGetHelper(e.nodeIsSynthesized(n)?n:s.cloneNode(n),r.weakMapName):e.Debug.fail("Unexpected private identifier placement")}function S(r,n){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.operand)){var i=45===r.operator?39:46===r.operator?40:void 0,a=void 0;if(i&&(a=F(r.operand.name))){var o=w(e.visitNode(r.operand.expression,y,e.isExpression)),l=o.readExpression,u=o.initializeExpression,d=s.createPrefixUnaryExpression(39,x(a,l)),p=n?void 0:s.createTempVariable(c);return e.setOriginalNode(s.inlineExpressions(e.compact([D(a,u||l,s.createBinaryExpression(p?s.createAssignment(p,d):d,i,s.createNumericLiteral(1)),62),p])),r)}}return e.visitEachChild(r,y,t)}function w(t){var r=e.nodeIsSynthesized(t)?t:s.cloneNode(t);if(e.isSimpleInlineableExpression(t))return{readExpression:r,initializeExpression:void 0};var n=s.createTempVariable(c);return{readExpression:n,initializeExpression:s.createAssignment(n,r)}}function D(r,n,i,a){return 0===r.placement?function(r,n,i,a){if(n=e.visitNode(n,y,e.isExpression),i=e.visitNode(i,y,e.isExpression),e.isCompoundAssignment(a)){var o=w(n),c=o.readExpression,l=o.initializeExpression;return t.getEmitHelperFactory().createClassPrivateFieldSetHelper(l||c,r.weakMapName,s.createBinaryExpression(t.getEmitHelperFactory().createClassPrivateFieldGetHelper(c,r.weakMapName),e.getNonAssignmentOperatorForCompoundAssignment(a),i))}return t.getEmitHelperFactory().createClassPrivateFieldSetHelper(n,r.weakMapName,i)}(r,n,i,a):e.Debug.fail("Unexpected private identifier placement")}function E(t){return e.isPropertyDeclaration(t)||m&&t.name&&e.isPrivateIdentifier(t.name)}function T(r,n){if(m)for(var i=0,a=r.members;i<a.length;i++){var o=a[i];e.isPrivateIdentifierPropertyDeclaration(o)&&I(o.name)}var c=[],d=function(r,n){var i=e.visitNode(e.getFirstConstructorWithBody(r),y,e.isConstructorDeclaration),a=r.members.filter(C);if(!e.some(a))return i;var o=e.visitParameterList(i?i.parameters:void 0,y,t),c=function(r,n,i){var a=t.getCompilerOptions().useDefineForClassFields,o=e.getProperties(r,!1,!1);a||(o=e.filter(o,(function(t){return!!t.initializer||e.isPrivateIdentifier(t.name)})));if(!n&&!e.some(o))return e.visitFunctionBody(void 0,y,t);u();var c=0,d=[];!n&&i&&d.push(s.createExpressionStatement(s.createCallExpression(s.createSuper(),void 0,[s.createSpreadElement(s.createIdentifier("arguments"))])));n&&(c=e.addPrologueDirectivesAndInitialSuperCall(s,n,d,y));if(null==n?void 0:n.body){var p=e.findIndex(n.body.statements,(function(t){return!e.isParameterPropertyDeclaration(e.getOriginalNode(t),n)}),c);-1===p&&(p=n.body.statements.length),p>c&&(a||e.addRange(d,e.visitNodes(n.body.statements,y,e.isStatement,c,p-c)),c=p)}A(d,o,s.createThis()),n&&e.addRange(d,e.visitNodes(n.body.statements,y,e.isStatement,c));return d=s.mergeLexicalEnvironment(d,l()),e.setTextRange(s.createBlock(e.setTextRange(s.createNodeArray(d),n?n.body.statements:r.members),!0),n?n.body:void 0)}(r,i,n);if(!c)return;return e.startOnNewLine(e.setOriginalNode(e.setTextRange(s.createConstructorDeclaration(void 0,void 0,null!=o?o:[],c),i||r),i))}(r,n);return d&&c.push(d),e.addRange(c,e.visitNodes(r.members,b,e.isClassElement)),e.setTextRange(s.createNodeArray(c),r.members)}function C(r){return!(!e.isPropertyDeclaration(r)||e.hasStaticModifier(r)||e.hasSyntacticModifier(e.getOriginalNode(r),128))&&(t.getCompilerOptions().useDefineForClassFields?f<99:e.isInitializedProperty(r)||m&&e.isPrivateIdentifierPropertyDeclaration(r))}function A(t,r,n){for(var i=0,a=r;i<a.length;i++){var o=a[i],c=N(o,n);if(c){var l=s.createExpressionStatement(c);e.setSourceMapRange(l,e.moveRangePastModifiers(o)),e.setCommentRange(l,o),e.setOriginalNode(l,o),t.push(l)}}}function N(r,n){var i,a=!t.getCompilerOptions().useDefineForClassFields,o=e.isComputedPropertyName(r.name)&&!e.isSimpleInlineableExpression(r.name.expression)?s.updateComputedPropertyName(r.name,s.getGeneratedNameForNode(r.name)):r.name;if(m&&e.isPrivateIdentifier(o)){var c=F(o);if(c){if(0===c.placement)return function(t,r,n){return e.factory.createCallExpression(e.factory.createPropertyAccessExpression(n,"set"),void 0,[t,r||e.factory.createVoidZero()])}(n,e.visitNode(r.initializer,y,e.isExpression),c.weakMapName)}else e.Debug.fail("Undeclared private name for property declaration.")}if((!e.isPrivateIdentifier(o)||r.initializer)&&(!e.isPrivateIdentifier(o)||r.initializer)){var l=e.getOriginalNode(r);if(!e.hasSyntacticModifier(l,128)){var u=r.initializer||a?null!==(i=e.visitNode(r.initializer,y,e.isExpression))&&void 0!==i?i:s.createVoidZero():e.isParameterPropertyDeclaration(l,l.parent)&&e.isIdentifier(o)?o:s.createVoidZero();if(a||e.isPrivateIdentifier(o)){var d=e.createMemberAccessForPropertyName(s,n,o,o);return s.createAssignment(d,u)}var p=e.isComputedPropertyName(o)?o.expression:e.isIdentifier(o)?s.createStringLiteral(e.unescapeLeadingUnderscores(o.escapedText)):o,f=s.createPropertyDescriptor({value:u,configurable:!0,writable:!0,enumerable:!0});return s.createObjectDefinePropertyCall(n,p,f)}}}function P(){return a||(a=[])}function I(t){var r=e.getTextOfPropertyName(t),n=s.createUniqueName("_"+r.substring(1),24);c(n),(_||(_=new e.Map)).set(t.escapedText,{placement:0,weakMapName:n}),P().push(s.createAssignment(n,s.createNewExpression(s.createIdentifier("WeakMap"),void 0,[])))}function F(e){if(_&&(r=_.get(e.escapedText)))return r;for(var t=h.length-1;t>=0;--t){var r,n=h[t];if(n)if(r=n.get(e.escapedText))return r}}function O(r){var n=s.getGeneratedNameForNode(r),i=F(r.name);if(!i)return e.visitEachChild(r,y,t);var a=r.expression;return(e.isThisProperty(r)||e.isSuperProperty(r)||!e.isSimpleCopiableExpression(r.expression))&&(a=s.createTempVariable(c,!0),P().push(s.createBinaryExpression(a,62,r.expression))),s.createPropertyAccessExpression(s.createParenthesizedExpression(s.createObjectLiteralExpression([s.createSetAccessorDeclaration(void 0,void 0,"value",[s.createParameterDeclaration(void 0,void 0,void 0,n,void 0,void 0,void 0)],s.createBlock([s.createExpressionStatement(D(i,a,n,62))]))])),"value")}function R(t){var r=e.getTargetOfBindingOrAssignmentElement(t);if(r&&e.isPrivateIdentifierPropertyAccessExpression(r)){var n=O(r);return e.isAssignmentExpression(t)?s.updateBinaryExpression(t,n,t.operatorToken,e.visitNode(t.right,y,e.isExpression)):e.isSpreadElement(t)?s.updateSpreadElement(t,n):n}return e.visitNode(t,v)}function M(t){if(e.isPropertyAssignment(t)){var r=e.getTargetOfBindingOrAssignmentElement(t);if(r&&e.isPrivateIdentifierPropertyAccessExpression(r)){var n=e.getInitializerOfBindingOrAssignmentElement(t),i=O(r);return s.updatePropertyAssignment(t,e.visitNode(t.name,y),n?s.createAssignment(i,e.visitNode(n,y)):i)}return s.updatePropertyAssignment(t,e.visitNode(t.name,y),e.visitNode(t.initializer,v))}return e.visitNode(t,y)}}}(d||(d={})),function(e){var t,r;function n(t,r,n,i){var a=!!(4096&r.getNodeCheckFlags(n)),o=[];return i.forEach((function(r,n){var i=e.unescapeLeadingUnderscores(n),s=[];s.push(t.createPropertyAssignment("get",t.createArrowFunction(void 0,void 0,[],void 0,void 0,e.setEmitFlags(t.createPropertyAccessExpression(e.setEmitFlags(t.createSuper(),4),i),4)))),a&&s.push(t.createPropertyAssignment("set",t.createArrowFunction(void 0,void 0,[t.createParameterDeclaration(void 0,void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,t.createAssignment(e.setEmitFlags(t.createPropertyAccessExpression(e.setEmitFlags(t.createSuper(),4),i),4),t.createIdentifier("v"))))),o.push(t.createPropertyAssignment(i,t.createObjectLiteralExpression(s)))})),t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(t.createUniqueName("_super",48),void 0,void 0,t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"create"),void 0,[t.createNull(),t.createObjectLiteralExpression(o,!0)]))],2))}!function(e){e[e.AsyncMethodsWithSuper=1]="AsyncMethodsWithSuper"}(t||(t={})),function(e){e[e.NonTopLevel=1]="NonTopLevel",e[e.HasLexicalThis=2]="HasLexicalThis"}(r||(r={})),e.transformES2017=function(t){var r,a,o,s,c=t.factory,l=t.getEmitHelperFactory,u=t.resumeLexicalEnvironment,d=t.endLexicalEnvironment,p=t.hoistVariableDeclaration,f=t.getEmitResolver(),m=t.getCompilerOptions(),g=e.getEmitScriptTarget(m),_=0,h=[],y=0,v=t.onEmitNode,b=t.onSubstituteNode;return t.onEmitNode=function(t,n,i){if(1&r&&function(e){var t=e.kind;return 254===t||167===t||166===t||168===t||169===t}(n)){var a=6144&f.getNodeCheckFlags(n);if(a!==_){var o=_;return _=a,v(t,n,i),void(_=o)}}else if(r&&h[e.getNodeId(n)]){o=_;return _=0,v(t,n,i),void(_=o)}v(t,n,i)},t.onSubstituteNode=function(t,r){if(r=b(t,r),1===t&&_)return function(t){switch(t.kind){case 202:return z(t);case 203:return U(t);case 204:return function(t){var r=t.expression;if(e.isSuperProperty(r)){var n=e.isPropertyAccessExpression(r)?z(r):U(r);return c.createCallExpression(c.createPropertyAccessExpression(n,"call"),void 0,i([c.createThis()],t.arguments))}return t}(t)}return t}(r);return r},e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;k(1,!1),k(2,!e.isEffectiveStrictModeSourceFile(r,m));var n=e.visitEachChild(r,E,t);return e.addEmitHelpers(n,t.readEmitHelpers()),n}));function k(e,t){y=t?y|e:y&~e}function x(e){return!!(y&e)}function S(){return x(2)}function w(e,t,r){var n=e&~y;if(n){k(n,!0);var i=t(r);return k(n,!1),i}return t(r)}function D(r){return e.visitEachChild(r,E,t)}function E(r){if(!(64&r.transformFlags))return r;switch(r.kind){case 130:return;case 215:return function(r){if(!x(1))return e.visitEachChild(r,E,t);return e.setOriginalNode(e.setTextRange(c.createYieldExpression(void 0,e.visitNode(r.expression,E,e.isExpression)),r),r)}(r);case 166:return w(3,C,r);case 253:return w(3,A,r);case 209:return w(3,N,r);case 210:return w(1,P,r);case 202:return o&&e.isPropertyAccessExpression(r)&&106===r.expression.kind&&o.add(r.name.escapedText),e.visitEachChild(r,E,t);case 203:return o&&106===r.expression.kind&&(s=!0),e.visitEachChild(r,E,t);case 168:case 169:case 167:case 254:case 223:return w(3,D,r);default:return e.visitEachChild(r,E,t)}}function T(r){if(e.isNodeWithPossibleHoistedDeclaration(r))switch(r.kind){case 234:return function(r){if(F(r.declarationList)){var n=O(r.declarationList,!1);return n?c.createExpressionStatement(n):void 0}return e.visitEachChild(r,E,t)}(r);case 239:return function(t){var r=t.initializer;return c.updateForStatement(t,F(r)?O(r,!1):e.visitNode(t.initializer,E,e.isForInitializer),e.visitNode(t.condition,E,e.isExpression),e.visitNode(t.incrementor,E,e.isExpression),e.visitNode(t.statement,T,e.isStatement,c.liftToBlock))}(r);case 240:return function(t){return c.updateForInStatement(t,F(t.initializer)?O(t.initializer,!0):e.visitNode(t.initializer,E,e.isForInitializer),e.visitNode(t.expression,E,e.isExpression),e.visitNode(t.statement,T,e.isStatement,c.liftToBlock))}(r);case 241:return function(t){return c.updateForOfStatement(t,e.visitNode(t.awaitModifier,E,e.isToken),F(t.initializer)?O(t.initializer,!0):e.visitNode(t.initializer,E,e.isForInitializer),e.visitNode(t.expression,E,e.isExpression),e.visitNode(t.statement,T,e.isStatement,c.liftToBlock))}(r);case 290:return function(r){var n,i=new e.Set;if(I(r.variableDeclaration,i),i.forEach((function(t,r){a.has(r)&&(n||(n=new e.Set(a)),n.delete(r))})),n){var o=a;a=n;var s=e.visitEachChild(r,T,t);return a=o,s}return e.visitEachChild(r,T,t)}(r);case 232:case 246:case 261:case 287:case 288:case 249:case 237:case 238:case 236:case 245:case 247:return e.visitEachChild(r,T,t);default:return e.Debug.assertNever(r,"Unhandled node.")}return E(r)}function C(r){return c.updateMethodDeclaration(r,void 0,e.visitNodes(r.modifiers,E,e.isModifier),r.asteriskToken,r.name,void 0,void 0,e.visitParameterList(r.parameters,E,t),void 0,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,E,t))}function A(r){return c.updateFunctionDeclaration(r,void 0,e.visitNodes(r.modifiers,E,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,E,t),void 0,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,E,t))}function N(r){return c.updateFunctionExpression(r,e.visitNodes(r.modifiers,E,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,E,t),void 0,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,E,t))}function P(r){return c.updateArrowFunction(r,e.visitNodes(r.modifiers,E,e.isModifier),void 0,e.visitParameterList(r.parameters,E,t),void 0,r.equalsGreaterThanToken,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,E,t))}function I(t,r){var n=t.name;if(e.isIdentifier(n))r.add(n.escapedText);else for(var i=0,a=n.elements;i<a.length;i++){var o=a[i];e.isOmittedExpression(o)||I(o,r)}}function F(t){return!!t&&e.isVariableDeclarationList(t)&&!(3&t.flags)&&t.declarations.some(L)}function O(t,r){!function(t){e.forEach(t.declarations,R)}(t);var n=e.getInitializedVariables(t);return 0===n.length?r?e.visitNode(c.converters.convertToAssignmentElementTarget(t.declarations[0].name),E,e.isExpression):void 0:c.inlineExpressions(e.map(n,M))}function R(t){var r=t.name;if(e.isIdentifier(r))p(r);else for(var n=0,i=r.elements;n<i.length;n++){var a=i[n];e.isOmittedExpression(a)||R(a)}}function M(t){var r=e.setSourceMapRange(c.createAssignment(c.converters.convertToAssignmentElementTarget(t.name),t.initializer),t);return e.visitNode(r,E,e.isExpression)}function L(t){var r=t.name;if(e.isIdentifier(r))return a.has(r.escapedText);for(var n=0,i=r.elements;n<i.length;n++){var o=i[n];if(!e.isOmittedExpression(o)&&L(o))return!0}return!1}function j(i){u();var p=e.getOriginalNode(i,e.isFunctionLike).type,m=g<2?function(t){var r=t&&e.getEntityNameFromTypeNode(t);if(r&&e.isEntityName(r)){var n=f.getTypeReferenceSerializationKind(r);if(n===e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue||n===e.TypeReferenceSerializationKind.Unknown)return r}return}(p):void 0,_=210===i.kind,y=!!(8192&f.getNodeCheckFlags(i)),v=a;a=new e.Set;for(var b=0,k=i.parameters;b<k.length;b++){I(k[b],a)}var x,w=o,D=s;if(_||(o=new e.Set,s=!1),_){var T=l().createAwaiterHelper(S(),y,m,B(i.body)),C=d();if(e.some(C)){O=c.converters.convertToFunctionBlock(T);x=c.updateBlock(O,e.setTextRange(c.createNodeArray(e.concatenate(C,O.statements)),O.statements))}else x=T}else{var A=[],N=c.copyPrologue(i.body.statements,A,!1,E);A.push(c.createReturnStatement(l().createAwaiterHelper(S(),y,m,B(i.body,N)))),e.insertStatementsAfterStandardPrologue(A,d());var P=g>=2&&6144&f.getNodeCheckFlags(i);if(P&&(1&r||(r|=1,t.enableSubstitution(204),t.enableSubstitution(202),t.enableSubstitution(203),t.enableEmitNotification(254),t.enableEmitNotification(166),t.enableEmitNotification(168),t.enableEmitNotification(169),t.enableEmitNotification(167),t.enableEmitNotification(234)),o.size)){var F=n(c,f,i,o);h[e.getNodeId(F)]=!0,e.insertStatementsAfterStandardPrologue(A,[F])}var O=c.createBlock(A,!0);e.setTextRange(O,i.body),P&&s&&(4096&f.getNodeCheckFlags(i)?e.addEmitHelper(O,e.advancedAsyncSuperHelper):2048&f.getNodeCheckFlags(i)&&e.addEmitHelper(O,e.asyncSuperHelper)),x=O}return a=v,_||(o=w,s=D),x}function B(t,r){return e.isBlock(t)?c.updateBlock(t,e.visitNodes(t.statements,T,e.isStatement,r)):c.converters.convertToFunctionBlock(e.visitNode(t,T,e.isConciseBody))}function z(t){return 106===t.expression.kind?e.setTextRange(c.createPropertyAccessExpression(c.createUniqueName("_super",48),t.name),t):t}function U(t){return 106===t.expression.kind?(r=t.argumentExpression,n=t,4096&_?e.setTextRange(c.createPropertyAccessExpression(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[r]),"value"),n):e.setTextRange(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[r]),n)):t;var r,n}},e.createSuperAccessVariableStatement=n}(d||(d={})),function(e){var t,r;!function(e){e[e.AsyncMethodsWithSuper=1]="AsyncMethodsWithSuper"}(t||(t={})),function(e){e[e.None=0]="None",e[e.HasLexicalThis=1]="HasLexicalThis",e[e.IterationContainer=2]="IterationContainer",e[e.AncestorFactsMask=3]="AncestorFactsMask",e[e.SourceFileIncludes=1]="SourceFileIncludes",e[e.SourceFileExcludes=2]="SourceFileExcludes",e[e.StrictModeSourceFileIncludes=0]="StrictModeSourceFileIncludes",e[e.ClassOrFunctionIncludes=1]="ClassOrFunctionIncludes",e[e.ClassOrFunctionExcludes=2]="ClassOrFunctionExcludes",e[e.ArrowFunctionIncludes=0]="ArrowFunctionIncludes",e[e.ArrowFunctionExcludes=2]="ArrowFunctionExcludes",e[e.IterationStatementIncludes=2]="IterationStatementIncludes",e[e.IterationStatementExcludes=0]="IterationStatementExcludes"}(r||(r={})),e.transformES2018=function(t){var r=t.factory,n=t.getEmitHelperFactory,a=t.resumeLexicalEnvironment,o=t.endLexicalEnvironment,s=t.hoistVariableDeclaration,c=t.getEmitResolver(),l=t.getCompilerOptions(),u=e.getEmitScriptTarget(l),d=t.onEmitNode;t.onEmitNode=function(t,r,n){if(1&f&&function(e){var t=e.kind;return 254===t||167===t||166===t||168===t||169===t}(r)){var i=6144&c.getNodeCheckFlags(r);if(i!==b){var a=b;return b=i,d(t,r,n),void(b=a)}}else if(f&&x[e.getNodeId(r)]){a=b;return b=0,d(t,r,n),void(b=a)}d(t,r,n)};var p=t.onSubstituteNode;t.onSubstituteNode=function(t,n){if(n=p(t,n),1===t&&b)return function(t){switch(t.kind){case 202:return K(t);case 203:return W(t);case 204:return function(t){var n=t.expression;if(e.isSuperProperty(n)){var a=e.isPropertyAccessExpression(n)?K(n):W(n);return r.createCallExpression(r.createPropertyAccessExpression(a,"call"),void 0,i([r.createThis()],t.arguments))}return t}(t)}return t}(n);return n};var f,m,g,_,h,y,v=!1,b=0,k=0,x=[];return e.chainBundle(t,(function(n){if(n.isDeclarationFile)return n;g=n;var i=function(n){var i=S(2,e.isEffectiveStrictModeSourceFile(n,l)?0:1);v=!1;var a=e.visitEachChild(n,E,t),o=e.concatenate(a.statements,_&&[r.createVariableStatement(void 0,r.createVariableDeclarationList(_))]),s=r.updateSourceFile(a,e.setTextRange(r.createNodeArray(o),n.statements));return w(i),s}(n);return e.addEmitHelpers(i,t.readEmitHelpers()),g=void 0,_=void 0,i}));function S(e,t){var r=k;return k=3&(k&~e|t),r}function w(e){k=e}function D(t){_=e.append(_,r.createVariableDeclaration(t))}function E(e){return P(e,!1)}function T(e){return P(e,!0)}function C(e){if(130!==e.kind)return e}function A(e,t,r,n){if(function(e,t){return k!==(k&~e|t)}(r,n)){var i=S(r,n),a=e(t);return w(i),a}return e(t)}function N(r){return e.visitEachChild(r,E,t)}function P(a,o){if(!(32&a.transformFlags))return a;switch(a.kind){case 215:return function(i){if(2&m&&1&m)return e.setOriginalNode(e.setTextRange(r.createYieldExpression(void 0,n().createAwaitHelper(e.visitNode(i.expression,E,e.isExpression))),i),i);return e.visitEachChild(i,E,t)}(a);case 221:return function(i){if(2&m&&1&m){if(i.asteriskToken){var a=e.visitNode(e.Debug.assertDefined(i.expression),E,e.isExpression);return e.setOriginalNode(e.setTextRange(r.createYieldExpression(void 0,n().createAwaitHelper(r.updateYieldExpression(i,i.asteriskToken,e.setTextRange(n().createAsyncDelegatorHelper(e.setTextRange(n().createAsyncValuesHelper(a),a)),a)))),i),i)}return e.setOriginalNode(e.setTextRange(r.createYieldExpression(void 0,R(i.expression?e.visitNode(i.expression,E,e.isExpression):r.createVoidZero())),i),i)}return e.visitEachChild(i,E,t)}(a);case 244:return function(n){if(2&m&&1&m)return r.updateReturnStatement(n,R(n.expression?e.visitNode(n.expression,E,e.isExpression):r.createVoidZero()));return e.visitEachChild(n,E,t)}(a);case 247:return function(n){if(2&m){var i=e.unwrapInnermostStatementOfLabel(n);return 241===i.kind&&i.awaitModifier?O(i,n):r.restoreEnclosingLabel(e.visitNode(i,E,e.isStatement,r.liftToBlock),n)}return e.visitEachChild(n,E,t)}(a);case 201:return function(i){if(16384&i.transformFlags){var a=function(t){for(var n,i=[],a=0,o=t;a<o.length;a++){var s=o[a];if(293===s.kind){n&&(i.push(r.createObjectLiteralExpression(n)),n=void 0);var c=s.expression;i.push(e.visitNode(c,E,e.isExpression))}else n=e.append(n,291===s.kind?r.createPropertyAssignment(s.name,e.visitNode(s.initializer,E,e.isExpression)):e.visitNode(s,E,e.isObjectLiteralElementLike))}n&&i.push(r.createObjectLiteralExpression(n));return i}(i.properties);a.length&&201!==a[0].kind&&a.unshift(r.createObjectLiteralExpression());var o=a[0];if(a.length>1){for(var s=1;s<a.length;s++)o=n().createAssignHelper([o,a[s]]);return o}return n().createAssignHelper(a)}return e.visitEachChild(i,E,t)}(a);case 218:return function(n,i){if(e.isDestructuringAssignment(n)&&16384&n.left.transformFlags)return e.flattenDestructuringAssignment(n,E,t,1,!i);if(27===n.operatorToken.kind)return r.updateBinaryExpression(n,e.visitNode(n.left,T,e.isExpression),n.operatorToken,e.visitNode(n.right,i?T:E,e.isExpression));return e.visitEachChild(n,E,t)}(a,o);case 340:return function(n,i){if(i)return e.visitEachChild(n,T,t);for(var a,o=0;o<n.elements.length;o++){var s=n.elements[o],c=e.visitNode(s,o<n.elements.length-1?T:E,e.isExpression);(a||c!==s)&&(a||(a=n.elements.slice(0,o)),a.push(c))}var l=a?e.setTextRange(r.createNodeArray(a),n.elements):n.elements;return r.updateCommaListExpression(n,l)}(a,o);case 290:return function(n){if(n.variableDeclaration&&e.isBindingPattern(n.variableDeclaration.name)&&16384&n.variableDeclaration.name.transformFlags){var a=r.getGeneratedNameForNode(n.variableDeclaration.name),o=r.updateVariableDeclaration(n.variableDeclaration,n.variableDeclaration.name,void 0,void 0,a),s=e.flattenDestructuringBinding(o,E,t,1),c=e.visitNode(n.block,E,e.isBlock);return e.some(s)&&(c=r.updateBlock(c,i([r.createVariableStatement(void 0,s)],c.statements))),r.updateCatchClause(n,r.updateVariableDeclaration(n.variableDeclaration,a,void 0,void 0,void 0),c)}return e.visitEachChild(n,E,t)}(a);case 234:return function(r){if(e.hasSyntacticModifier(r,1)){var n=v;v=!0;var i=e.visitEachChild(r,E,t);return v=n,i}return e.visitEachChild(r,E,t)}(a);case 251:return function(e){if(v){var t=v;v=!1;var r=I(e,!0);return v=t,r}return I(e,!1)}(a);case 237:case 238:case 240:return A(N,a,0,2);case 241:return O(a,void 0);case 239:return A(F,a,0,2);case 214:case 235:return function(r){return e.visitEachChild(r,T,t)}(a);case 167:return A(M,a,2,1);case 166:return A(B,a,2,1);case 168:return A(L,a,2,1);case 169:return A(j,a,2,1);case 253:return A(z,a,2,1);case 209:return A(q,a,2,1);case 210:return A(U,a,2,0);case 161:return function(n){if(16384&n.transformFlags)return r.updateParameterDeclaration(n,void 0,void 0,n.dotDotDotToken,r.getGeneratedNameForNode(n),void 0,void 0,e.visitNode(n.initializer,E,e.isExpression));return e.visitEachChild(n,E,t)}(a);case 208:return function(r,n){return e.visitEachChild(r,n?T:E,t)}(a,o);case 206:return function(r){return e.processTaggedTemplateExpression(t,r,E,g,D,e.ProcessLevel.LiftRestriction)}(a);case 202:return h&&e.isPropertyAccessExpression(a)&&106===a.expression.kind&&h.add(a.name.escapedText),e.visitEachChild(a,E,t);case 203:return h&&106===a.expression.kind&&(y=!0),e.visitEachChild(a,E,t);case 254:case 223:return A(N,a,2,1);default:return e.visitEachChild(a,E,t)}}function I(r,n){return e.isBindingPattern(r.name)&&16384&r.name.transformFlags?e.flattenDestructuringBinding(r,E,t,1,void 0,n):e.visitEachChild(r,E,t)}function F(t){return r.updateForStatement(t,e.visitNode(t.initializer,T,e.isForInitializer),e.visitNode(t.condition,E,e.isExpression),e.visitNode(t.incrementor,T,e.isExpression),e.visitNode(t.statement,E,e.isStatement))}function O(i,a){var o=S(0,2);16384&i.initializer.transformFlags&&(i=function(t){var n=e.skipParentheses(t.initializer);if(e.isVariableDeclarationList(n)||e.isAssignmentPattern(n)){var i=void 0,a=void 0,o=r.createTempVariable(void 0),s=[e.createForOfBindingStatement(r,n,o)];return e.isBlock(t.statement)?(e.addRange(s,t.statement.statements),i=t.statement,a=t.statement.statements):t.statement&&(e.append(s,t.statement),i=t.statement,a=t.statement),r.updateForOfStatement(t,t.awaitModifier,e.setTextRange(r.createVariableDeclarationList([e.setTextRange(r.createVariableDeclaration(o),t.initializer)],1),t.initializer),t.expression,e.setTextRange(r.createBlock(e.setTextRange(r.createNodeArray(s),a),!0),i))}return t}(i));var c=i.awaitModifier?function(t,i,a){var o=e.visitNode(t.expression,E,e.isExpression),c=e.isIdentifier(o)?r.getGeneratedNameForNode(o):r.createTempVariable(void 0),l=e.isIdentifier(o)?r.getGeneratedNameForNode(c):r.createTempVariable(void 0),u=r.createUniqueName("e"),d=r.getGeneratedNameForNode(u),p=r.createTempVariable(void 0),f=e.setTextRange(n().createAsyncValuesHelper(o),t.expression),m=r.createCallExpression(r.createPropertyAccessExpression(c,"next"),void 0,[]),g=r.createPropertyAccessExpression(l,"done"),_=r.createPropertyAccessExpression(l,"value"),h=r.createFunctionCallCall(p,c,[]);s(u),s(p);var y=2&a?r.inlineExpressions([r.createAssignment(u,r.createVoidZero()),f]):f,v=e.setEmitFlags(e.setTextRange(r.createForStatement(e.setEmitFlags(e.setTextRange(r.createVariableDeclarationList([e.setTextRange(r.createVariableDeclaration(c,void 0,void 0,y),t.expression),r.createVariableDeclaration(l)]),t.expression),2097152),r.createComma(r.createAssignment(l,R(m)),r.createLogicalNot(g)),void 0,function(t,n){var i,a,o=e.createForOfBindingStatement(r,t.initializer,n),s=[e.visitNode(o,E,e.isStatement)],c=e.visitNode(t.statement,E,e.isStatement);e.isBlock(c)?(e.addRange(s,c.statements),i=c,a=c.statements):s.push(c);return e.setEmitFlags(e.setTextRange(r.createBlock(e.setTextRange(r.createNodeArray(s),a),!0),i),432)}(t,_)),t),256);return r.createTryStatement(r.createBlock([r.restoreEnclosingLabel(v,i)]),r.createCatchClause(r.createVariableDeclaration(d),e.setEmitFlags(r.createBlock([r.createExpressionStatement(r.createAssignment(u,r.createObjectLiteralExpression([r.createPropertyAssignment("error",d)])))]),1)),r.createBlock([r.createTryStatement(r.createBlock([e.setEmitFlags(r.createIfStatement(r.createLogicalAnd(r.createLogicalAnd(l,r.createLogicalNot(g)),r.createAssignment(p,r.createPropertyAccessExpression(c,"return"))),r.createExpressionStatement(R(h))),1)]),void 0,e.setEmitFlags(r.createBlock([e.setEmitFlags(r.createIfStatement(u,r.createThrowStatement(r.createPropertyAccessExpression(u,"error"))),1)]),1))]))}(i,a,o):r.restoreEnclosingLabel(e.visitEachChild(i,E,t),a);return w(o),c}function R(e){return 1&m?r.createYieldExpression(void 0,n().createAwaitHelper(e)):r.createAwaitExpression(e)}function M(n){var i=m;m=0;var a=r.updateConstructorDeclaration(n,void 0,n.modifiers,e.visitParameterList(n.parameters,E,t),V(n));return m=i,a}function L(n){var i=m;m=0;var a=r.updateGetAccessorDeclaration(n,void 0,n.modifiers,e.visitNode(n.name,E,e.isPropertyName),e.visitParameterList(n.parameters,E,t),void 0,V(n));return m=i,a}function j(n){var i=m;m=0;var a=r.updateSetAccessorDeclaration(n,void 0,n.modifiers,e.visitNode(n.name,E,e.isPropertyName),e.visitParameterList(n.parameters,E,t),V(n));return m=i,a}function B(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateMethodDeclaration(n,void 0,1&m?e.visitNodes(n.modifiers,C,e.isModifier):n.modifiers,2&m?void 0:n.asteriskToken,e.visitNode(n.name,E,e.isPropertyName),e.visitNode(void 0,E,e.isToken),void 0,e.visitParameterList(n.parameters,E,t),void 0,2&m&&1&m?J(n):V(n));return m=i,a}function z(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateFunctionDeclaration(n,void 0,1&m?e.visitNodes(n.modifiers,C,e.isModifier):n.modifiers,2&m?void 0:n.asteriskToken,n.name,void 0,e.visitParameterList(n.parameters,E,t),void 0,2&m&&1&m?J(n):V(n));return m=i,a}function U(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateArrowFunction(n,n.modifiers,void 0,e.visitParameterList(n.parameters,E,t),void 0,n.equalsGreaterThanToken,V(n));return m=i,a}function q(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateFunctionExpression(n,1&m?e.visitNodes(n.modifiers,C,e.isModifier):n.modifiers,2&m?void 0:n.asteriskToken,n.name,void 0,e.visitParameterList(n.parameters,E,t),void 0,2&m&&1&m?J(n):V(n));return m=i,a}function J(i){a();var s=[],l=r.copyPrologue(i.body.statements,s,!1,E);H(s,i);var d=h,p=y;h=new e.Set,y=!1;var m=r.createReturnStatement(n().createAsyncGeneratorHelper(r.createFunctionExpression(void 0,r.createToken(41),i.name&&r.getGeneratedNameForNode(i.name),void 0,[],void 0,r.updateBlock(i.body,e.visitLexicalEnvironment(i.body.statements,E,t,l))),!!(1&k))),g=u>=2&&6144&c.getNodeCheckFlags(i);if(g){1&f||(f|=1,t.enableSubstitution(204),t.enableSubstitution(202),t.enableSubstitution(203),t.enableEmitNotification(254),t.enableEmitNotification(166),t.enableEmitNotification(168),t.enableEmitNotification(169),t.enableEmitNotification(167),t.enableEmitNotification(234));var _=e.createSuperAccessVariableStatement(r,c,i,h);x[e.getNodeId(_)]=!0,e.insertStatementsAfterStandardPrologue(s,[_])}s.push(m),e.insertStatementsAfterStandardPrologue(s,o());var v=r.updateBlock(i.body,s);return g&&y&&(4096&c.getNodeCheckFlags(i)?e.addEmitHelper(v,e.advancedAsyncSuperHelper):2048&c.getNodeCheckFlags(i)&&e.addEmitHelper(v,e.asyncSuperHelper)),h=d,y=p,v}function V(t){var n;a();var i=0,s=[],c=null!==(n=e.visitNode(t.body,E,e.isConciseBody))&&void 0!==n?n:r.createBlock([]);e.isBlock(c)&&(i=r.copyPrologue(c.statements,s,!1,E)),e.addRange(s,H(void 0,t));var l=o();if(i>0||e.some(s)||e.some(l)){var u=r.converters.convertToFunctionBlock(c,!0);return e.insertStatementsAfterStandardPrologue(s,l),e.addRange(s,u.statements.slice(i)),r.updateBlock(u,e.setTextRange(r.createNodeArray(s),u.statements))}return c}function H(n,i){for(var a=0,o=i.parameters;a<o.length;a++){var s=o[a];if(16384&s.transformFlags){var c=r.getGeneratedNameForNode(s),l=e.flattenDestructuringBinding(s,E,t,1,c,!1,!0);if(e.some(l)){var u=r.createVariableStatement(void 0,r.createVariableDeclarationList(l));e.setEmitFlags(u,1048576),n=e.append(n,u)}}}return n}function K(t){return 106===t.expression.kind?e.setTextRange(r.createPropertyAccessExpression(r.createUniqueName("_super",48),t.name),t):t}function W(t){return 106===t.expression.kind?(n=t.argumentExpression,i=t,4096&b?e.setTextRange(r.createPropertyAccessExpression(r.createCallExpression(r.createIdentifier("_superIndex"),void 0,[n]),"value"),i):e.setTextRange(r.createCallExpression(r.createIdentifier("_superIndex"),void 0,[n]),i)):t;var n,i}}}(d||(d={})),function(e){e.transformES2019=function(t){var r=t.factory;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,n,t)}));function n(i){return 16&i.transformFlags?290===i.kind?function(i){if(!i.variableDeclaration)return r.updateCatchClause(i,r.createVariableDeclaration(r.createTempVariable(void 0)),e.visitNode(i.block,n,e.isBlock));return e.visitEachChild(i,n,t)}(i):e.visitEachChild(i,n,t):i}}}(d||(d={})),function(e){e.transformES2020=function(t){var r=t.factory,n=t.hoistVariableDeclaration;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,i,t)}));function i(c){if(!(8&c.transformFlags))return c;switch(c.kind){case 202:case 203:case 204:if(32&c.flags){var l=o(c,!1,!1);return e.Debug.assertNotNode(l,e.isSyntheticReference),l}return e.visitEachChild(c,i,t);case 218:return 60===c.operatorToken.kind?function(t){var a=e.visitNode(t.left,i,e.isExpression),o=a;e.isSimpleCopiableExpression(a)||(o=r.createTempVariable(n),a=r.createAssignment(o,a));return e.setTextRange(r.createConditionalExpression(s(a,o),void 0,o,void 0,e.visitNode(t.right,i,e.isExpression)),t)}(c):e.visitEachChild(c,i,t);case 212:return function(t){return e.isOptionalChain(e.skipParentheses(t.expression))?e.setOriginalNode(a(t.expression,!1,!0),t):r.updateDeleteExpression(t,e.visitNode(t.expression,i,e.isExpression))}(c);default:return e.visitEachChild(c,i,t)}}function a(s,c,l){switch(s.kind){case 208:return function(t,n,i){var o=a(t.expression,n,i);return e.isSyntheticReference(o)?r.createSyntheticReferenceExpression(r.updateParenthesizedExpression(t,o.expression),o.thisArg):r.updateParenthesizedExpression(t,o)}(s,c,l);case 202:case 203:return function(t,a,s){if(e.isOptionalChain(t))return o(t,a,s);var c,l=e.visitNode(t.expression,i,e.isExpression);return e.Debug.assertNotNode(l,e.isSyntheticReference),a&&(e.isSimpleCopiableExpression(l)?c=l:(c=r.createTempVariable(n),l=r.createAssignment(c,l))),l=202===t.kind?r.updatePropertyAccessExpression(t,l,e.visitNode(t.name,i,e.isIdentifier)):r.updateElementAccessExpression(t,l,e.visitNode(t.argumentExpression,i,e.isExpression)),c?r.createSyntheticReferenceExpression(l,c):l}(s,c,l);case 204:return function(r,n){return e.isOptionalChain(r)?o(r,n,!1):e.visitEachChild(r,i,t)}(s,c);default:return e.visitNode(s,i,e.isExpression)}}function o(t,o,c){var l=function(t){e.Debug.assertNotNode(t,e.isNonNullChain);for(var r=[t];!t.questionDotToken&&!e.isTaggedTemplateExpression(t);)t=e.cast(e.skipPartiallyEmittedExpressions(t.expression),e.isOptionalChain),e.Debug.assertNotNode(t,e.isNonNullChain),r.unshift(t);return{expression:t.expression,chain:r}}(t),u=l.expression,d=l.chain,p=a(u,e.isCallChain(d[0]),!1),f=e.isSyntheticReference(p)?p.thisArg:void 0,m=e.isSyntheticReference(p)?p.expression:p,g=m;e.isSimpleCopiableExpression(m)||(g=r.createTempVariable(n),m=r.createAssignment(g,m));for(var _,h=g,y=0;y<d.length;y++){var v=d[y];switch(v.kind){case 202:case 203:y===d.length-1&&o&&(e.isSimpleCopiableExpression(h)?_=h:(_=r.createTempVariable(n),h=r.createAssignment(_,h))),h=202===v.kind?r.createPropertyAccessExpression(h,e.visitNode(v.name,i,e.isIdentifier)):r.createElementAccessExpression(h,e.visitNode(v.argumentExpression,i,e.isExpression));break;case 204:h=0===y&&f?r.createFunctionCallCall(h,106===f.kind?r.createThis():f,e.visitNodes(v.arguments,i,e.isExpression)):r.createCallExpression(h,void 0,e.visitNodes(v.arguments,i,e.isExpression))}e.setOriginalNode(h,v)}var b=c?r.createConditionalExpression(s(m,g,!0),void 0,r.createTrue(),void 0,r.createDeleteExpression(h)):r.createConditionalExpression(s(m,g,!0),void 0,r.createVoidZero(),void 0,h);return e.setTextRange(b,t),_?r.createSyntheticReferenceExpression(b,_):b}function s(e,t,n){return r.createBinaryExpression(r.createBinaryExpression(e,r.createToken(n?36:37),r.createNull()),r.createToken(n?56:55),r.createBinaryExpression(t,r.createToken(n?36:37),r.createVoidZero()))}}}(d||(d={})),function(e){e.transformESNext=function(t){var r=t.hoistVariableDeclaration,n=t.factory;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,i,t)}));function i(a){if(!(4&a.transformFlags))return a;if(218===a.kind){var o=a;if(e.isLogicalOrCoalescingAssignmentExpression(o))return function(t){var a=t.operatorToken,o=e.getNonAssignmentOperatorForCompoundAssignment(a.kind),s=e.skipParentheses(e.visitNode(t.left,i,e.isLeftHandSideExpression)),c=s,l=e.skipParentheses(e.visitNode(t.right,i,e.isExpression));if(e.isAccessExpression(s)){var u=e.isSimpleCopiableExpression(s.expression),d=u?s.expression:n.createTempVariable(r),p=u?s.expression:n.createAssignment(d,s.expression);if(e.isPropertyAccessExpression(s))c=n.createPropertyAccessExpression(d,s.name),s=n.createPropertyAccessExpression(p,s.name);else{var f=e.isSimpleCopiableExpression(s.argumentExpression),m=f?s.argumentExpression:n.createTempVariable(r);c=n.createElementAccessExpression(d,m),s=n.createElementAccessExpression(p,f?s.argumentExpression:n.createAssignment(m,s.argumentExpression))}}return n.createBinaryExpression(s,o,n.createParenthesizedExpression(n.createAssignment(c,l)))}(o)}return e.visitEachChild(a,i,t)}}}(d||(d={})),function(e){e.transformJsx=function(r){var n,i,a=r.factory,o=r.getEmitHelperFactory,s=r.getCompilerOptions();return e.chainBundle(r,(function(t){if(t.isDeclarationFile)return t;n=t,(i={}).importSpecifier=e.getJSXImplicitImportBase(s,t);var o=e.visitEachChild(t,d,r);e.addEmitHelpers(o,r.readEmitHelpers());var c=o.statements;i.filenameDeclaration&&(c=e.insertStatementAfterCustomPrologue(c.slice(),a.createVariableStatement(void 0,a.createVariableDeclarationList([i.filenameDeclaration],2))));if(i.utilizedImplicitRuntimeImports)for(var l=0,u=e.arrayFrom(i.utilizedImplicitRuntimeImports.entries());l<u.length;l++){var p=u[l],f=p[0],m=p[1];if(e.isExternalModule(t)){var g=a.createImportDeclaration(void 0,void 0,a.createImportClause(!1,void 0,a.createNamedImports(e.arrayFrom(m.values()))),a.createStringLiteral(f));e.setParentRecursive(g,!1),c=e.insertStatementAfterCustomPrologue(c.slice(),g)}else if(e.isExternalOrCommonJsModule(t)){var _=a.createVariableStatement(void 0,a.createVariableDeclarationList([a.createVariableDeclaration(a.createObjectBindingPattern(e.map(e.arrayFrom(m.values()),(function(e){return a.createBindingElement(void 0,e.propertyName,e.name)}))),void 0,void 0,a.createCallExpression(a.createIdentifier("require"),void 0,[a.createStringLiteral(f)]))],2));e.setParentRecursive(_,!1),c=e.insertStatementAfterCustomPrologue(c.slice(),_)}}c!==o.statements&&(o=a.updateSourceFile(o,c));return i=void 0,o}));function c(){if(i.filenameDeclaration)return i.filenameDeclaration.name;var e=a.createVariableDeclaration(a.createUniqueName("_jsxFileName",48),void 0,void 0,a.createStringLiteral(n.fileName));return i.filenameDeclaration=e,i.filenameDeclaration.name}function l(e){var t=function(e){return 5===s.jsx?"jsxDEV":e>1?"jsxs":"jsx"}(e);return u(t)}function u(t){var r,n,o="createElement"===t?i.importSpecifier:e.getJSXRuntimeImport(i.importSpecifier,s),c=null===(n=null===(r=i.utilizedImplicitRuntimeImports)||void 0===r?void 0:r.get(o))||void 0===n?void 0:n.get(t);if(c)return c.name;i.utilizedImplicitRuntimeImports||(i.utilizedImplicitRuntimeImports=e.createMap());var l=i.utilizedImplicitRuntimeImports.get(o);l||(l=e.createMap(),i.utilizedImplicitRuntimeImports.set(o,l));var u=a.createUniqueName("_"+t,112),d=a.createImportSpecifier(a.createIdentifier(t),u);return u.generatedImportReference=d,l.set(t,d),u}function d(t){return 2&t.transformFlags?function(t){switch(t.kind){case 276:return m(t,!1);case 277:return g(t,!1);case 280:return _(t,!1);case 286:return A(t);default:return e.visitEachChild(t,d,r)}}(t):t}function p(t){switch(t.kind){case 11:return function(t){var r=function(t){for(var r,n=0,i=-1,a=0;a<t.length;a++){var o=t.charCodeAt(a);e.isLineBreak(o)?(-1!==n&&-1!==i&&(r=E(r,t.substr(n,i-n+1))),n=-1):e.isWhiteSpaceSingleLine(o)||(i=a,-1===n&&(n=a))}return-1!==n?E(r,t.substr(n)):r}(t.text);return void 0===r?void 0:a.createStringLiteral(r)}(t);case 286:return A(t);case 276:return m(t,!0);case 277:return g(t,!0);case 280:return _(t,!0);default:return e.Debug.failBadSyntaxKind(t)}}function f(t){return void 0===i.importSpecifier||function(t){for(var r=!1,n=0,i=t.attributes.properties;n<i.length;n++){var a=i[n];if(e.isJsxSpreadAttribute(a))r=!0;else if(r&&e.isJsxAttribute(a)&&"key"===a.name.escapedText)return!0}return!1}(t)}function m(e,t){return(f(e.openingElement)?b:y)(e.openingElement,e.children,t,e)}function g(e,t){return(f(e)?b:y)(e,void 0,t,e)}function _(e,t){return(void 0===i.importSpecifier?x:k)(e.openingFragment,e.children,t,e)}function h(t){var r=e.getSemanticJsxChildren(t);if(1===e.length(r)){var n=p(r[0]);return n&&a.createObjectLiteralExpression([a.createPropertyAssignment("children",n)])}var i=e.mapDefined(t,p);return i.length?a.createObjectLiteralExpression([a.createPropertyAssignment("children",a.createArrayLiteralExpression(i))]):void 0}function y(t,r,n,i){var s=C(t),c=e.find(t.attributes.properties,(function(t){return!!t.name&&e.isIdentifier(t.name)&&"key"===t.name.escapedText})),l=c?e.filter(t.attributes.properties,(function(e){return e!==c})):t.attributes.properties,u=[];if(l.length&&(u=e.flatten(e.spanMap(l,e.isJsxSpreadAttribute,(function(t,r){return r?e.map(t,S):a.createObjectLiteralExpression(e.map(t,w))}))),e.isJsxSpreadAttribute(l[0])&&u.unshift(a.createObjectLiteralExpression())),r&&r.length){var d=h(r);d&&u.push(d)}return v(s,0===u.length?a.createObjectLiteralExpression([]):e.singleOrUndefined(u)||o().createAssignHelper(u),c,e.length(e.getSemanticJsxChildren(r||e.emptyArray)),n,i)}function v(t,r,i,o,u,d){var p=[t,r,i?D(i.initializer):a.createVoidZero()];if(5===s.jsx){var f=e.getOriginalNode(n);if(f&&e.isSourceFile(f)){p.push(o>1?a.createTrue():a.createFalse());var m=e.getLineAndCharacterOfPosition(f,d.pos);p.push(a.createObjectLiteralExpression([a.createPropertyAssignment("fileName",c()),a.createPropertyAssignment("lineNumber",a.createNumericLiteral(m.line+1)),a.createPropertyAssignment("columnNumber",a.createNumericLiteral(m.character+1))])),p.push(a.createThis())}}var g=e.setTextRange(a.createCallExpression(l(o),void 0,p),d);return u&&e.startOnNewLine(g),g}function b(t,c,l,d){var f,m=C(t),g=t.attributes.properties;if(0===g.length)f=a.createNull();else{var _=e.flatten(e.spanMap(g,e.isJsxSpreadAttribute,(function(t,r){return r?e.map(t,S):a.createObjectLiteralExpression(e.map(t,w))})));e.isJsxSpreadAttribute(g[0])&&_.unshift(a.createObjectLiteralExpression()),(f=e.singleOrUndefined(_))||(f=o().createAssignHelper(_))}var h=void 0===i.importSpecifier?e.createJsxFactoryExpression(a,r.getEmitResolver().getJsxFactoryEntity(n),s.reactNamespace,t):u("createElement"),y=e.createExpressionForJsxElement(a,h,m,f,e.mapDefined(c,p),d);return l&&e.startOnNewLine(y),y}function k(t,r,n,i){var o;if(r&&r.length){var s=h(r);s&&(o=s)}return v(u("Fragment"),o||a.createObjectLiteralExpression([]),void 0,e.length(e.getSemanticJsxChildren(r)),n,i)}function x(t,i,o,c){var l=e.createExpressionForJsxFragment(a,r.getEmitResolver().getJsxFactoryEntity(n),r.getEmitResolver().getJsxFragmentFactoryEntity(n),s.reactNamespace,e.mapDefined(i,p),t,c);return o&&e.startOnNewLine(l),l}function S(t){return e.visitNode(t.expression,d,e.isExpression)}function w(t){var r=function(t){var r=t.name,n=e.idText(r);return/^[A-Za-z_]\w*$/.test(n)?r:a.createStringLiteral(n)}(t),n=D(t.initializer);return a.createPropertyAssignment(r,n)}function D(t){if(void 0===t)return a.createTrue();if(10===t.kind){var r=void 0!==t.singleQuote?t.singleQuote:!e.isStringDoubleQuoted(t,n),i=a.createStringLiteral((o=t.text,((s=T(o))===o?void 0:s)||t.text),r);return e.setTextRange(i,t)}return 286===t.kind?void 0===t.expression?a.createTrue():e.visitNode(t.expression,d,e.isExpression):e.Debug.failBadSyntaxKind(t);var o,s}function E(e,t){var r=T(t);return void 0===e?r:e+" "+r}function T(r){return r.replace(/&((#((\d+)|x([\da-fA-F]+)))|(\w+));/g,(function(r,n,i,a,o,s,c){if(o)return e.utf16EncodeAsString(parseInt(o,10));if(s)return e.utf16EncodeAsString(parseInt(s,16));var l=t.get(c);return l?e.utf16EncodeAsString(l):r}))}function C(t){if(276===t.kind)return C(t.openingElement);var r=t.tagName;return e.isIdentifier(r)&&e.isIntrinsicJsxName(r.escapedText)?a.createStringLiteral(e.idText(r)):e.createExpressionFromEntityName(a,r)}function A(t){return e.visitNode(t.expression,d,e.isExpression)}};var t=new e.Map(e.getEntries({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830}))}(d||(d={})),function(e){e.transformES2016=function(t){var r=t.factory,n=t.hoistVariableDeclaration;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,i,t)}));function i(a){return 128&a.transformFlags?218===a.kind?function(a){switch(a.operatorToken.kind){case 66:return function(t){var a,o,s=e.visitNode(t.left,i,e.isExpression),c=e.visitNode(t.right,i,e.isExpression);if(e.isElementAccessExpression(s)){var l=r.createTempVariable(n),u=r.createTempVariable(n);a=e.setTextRange(r.createElementAccessExpression(e.setTextRange(r.createAssignment(l,s.expression),s.expression),e.setTextRange(r.createAssignment(u,s.argumentExpression),s.argumentExpression)),s),o=e.setTextRange(r.createElementAccessExpression(l,u),s)}else if(e.isPropertyAccessExpression(s)){l=r.createTempVariable(n);a=e.setTextRange(r.createPropertyAccessExpression(e.setTextRange(r.createAssignment(l,s.expression),s.expression),s.name),s),o=e.setTextRange(r.createPropertyAccessExpression(l,s.name),s)}else a=s,o=s;return e.setTextRange(r.createAssignment(a,e.setTextRange(r.createGlobalMethodCall("Math","pow",[o,c]),t)),t)}(a);case 42:return function(t){var n=e.visitNode(t.left,i,e.isExpression),a=e.visitNode(t.right,i,e.isExpression);return e.setTextRange(r.createGlobalMethodCall("Math","pow",[n,a]),t)}(a);default:return e.visitEachChild(a,i,t)}}(a):e.visitEachChild(a,i,t):a}}}(d||(d={})),function(e){var t,r,n,a,o;!function(e){e[e.CapturedThis=1]="CapturedThis",e[e.BlockScopedBindings=2]="BlockScopedBindings"}(t||(t={})),function(e){e[e.Body=1]="Body",e[e.Initializer=2]="Initializer"}(r||(r={})),function(e){e[e.ToOriginal=0]="ToOriginal",e[e.ToOutParameter=1]="ToOutParameter"}(n||(n={})),function(e){e[e.Break=2]="Break",e[e.Continue=4]="Continue",e[e.Return=8]="Return"}(a||(a={})),function(e){e[e.None=0]="None",e[e.Function=1]="Function",e[e.ArrowFunction=2]="ArrowFunction",e[e.AsyncFunctionBody=4]="AsyncFunctionBody",e[e.NonStaticClassElement=8]="NonStaticClassElement",e[e.CapturesThis=16]="CapturesThis",e[e.ExportedVariableStatement=32]="ExportedVariableStatement",e[e.TopLevel=64]="TopLevel",e[e.Block=128]="Block",e[e.IterationStatement=256]="IterationStatement",e[e.IterationStatementBlock=512]="IterationStatementBlock",e[e.IterationContainer=1024]="IterationContainer",e[e.ForStatement=2048]="ForStatement",e[e.ForInOrForOfStatement=4096]="ForInOrForOfStatement",e[e.ConstructorWithCapturedSuper=8192]="ConstructorWithCapturedSuper",e[e.AncestorFactsMask=16383]="AncestorFactsMask",e[e.BlockScopeIncludes=0]="BlockScopeIncludes",e[e.BlockScopeExcludes=7104]="BlockScopeExcludes",e[e.SourceFileIncludes=64]="SourceFileIncludes",e[e.SourceFileExcludes=8064]="SourceFileExcludes",e[e.FunctionIncludes=65]="FunctionIncludes",e[e.FunctionExcludes=16286]="FunctionExcludes",e[e.AsyncFunctionBodyIncludes=69]="AsyncFunctionBodyIncludes",e[e.AsyncFunctionBodyExcludes=16278]="AsyncFunctionBodyExcludes",e[e.ArrowFunctionIncludes=66]="ArrowFunctionIncludes",e[e.ArrowFunctionExcludes=15232]="ArrowFunctionExcludes",e[e.ConstructorIncludes=73]="ConstructorIncludes",e[e.ConstructorExcludes=16278]="ConstructorExcludes",e[e.DoOrWhileStatementIncludes=1280]="DoOrWhileStatementIncludes",e[e.DoOrWhileStatementExcludes=0]="DoOrWhileStatementExcludes",e[e.ForStatementIncludes=3328]="ForStatementIncludes",e[e.ForStatementExcludes=5056]="ForStatementExcludes",e[e.ForInOrForOfStatementIncludes=5376]="ForInOrForOfStatementIncludes",e[e.ForInOrForOfStatementExcludes=3008]="ForInOrForOfStatementExcludes",e[e.BlockIncludes=128]="BlockIncludes",e[e.BlockExcludes=6976]="BlockExcludes",e[e.IterationStatementBlockIncludes=512]="IterationStatementBlockIncludes",e[e.IterationStatementBlockExcludes=7104]="IterationStatementBlockExcludes",e[e.NewTarget=16384]="NewTarget",e[e.CapturedLexicalThis=32768]="CapturedLexicalThis",e[e.SubtreeFactsMask=-16384]="SubtreeFactsMask",e[e.ArrowFunctionSubtreeExcludes=0]="ArrowFunctionSubtreeExcludes",e[e.FunctionSubtreeExcludes=49152]="FunctionSubtreeExcludes"}(o||(o={})),e.transformES2015=function(t){var r,n,a,o,s,c,l=t.factory,u=t.getEmitHelperFactory,d=t.startLexicalEnvironment,p=t.resumeLexicalEnvironment,f=t.endLexicalEnvironment,m=t.hoistVariableDeclaration,g=t.getCompilerOptions(),_=t.getEmitResolver(),h=t.onSubstituteNode,y=t.onEmitNode;function v(t){o=e.append(o,l.createVariableDeclaration(t))}return t.onEmitNode=function(t,r,n){if(1&c&&e.isFunctionLike(r)){var i=b(16286,8&e.getEmitFlags(r)?81:65);return y(t,r,n),void k(i,0,0)}y(t,r,n)},t.onSubstituteNode=function(t,r){if(r=h(t,r),1===t)return function(t){switch(t.kind){case 78:return function(t){if(2&c&&!e.isInternalName(t)){var r=_.getReferencedDeclarationWithCollidingName(t);if(r&&(!e.isClassLike(r)||!function(t,r){var n=e.getParseTreeNode(r);if(!n||n===t||n.end<=t.pos||n.pos>=t.end)return!1;var i=e.getEnclosingBlockScopeContainer(t);for(;n;){if(n===i||n===t)return!1;if(e.isClassElement(n)&&n.parent===t)return!0;n=n.parent}return!1}(r,t)))return e.setTextRange(l.getGeneratedNameForNode(e.getNameOfDeclaration(r)),t)}return t}(t);case 108:return function(t){if(1&c&&16&a)return e.setTextRange(l.createUniqueName("_this",48),t);return t}(t)}return t}(r);if(e.isIdentifier(r))return function(t){if(2&c&&!e.isInternalName(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r&&function(e){switch(e.parent.kind){case 199:case 254:case 258:case 251:return e.parent.name===e&&_.isDeclarationWithCollidingName(e.parent)}return!1}(r))return e.setTextRange(l.getGeneratedNameForNode(r),t)}return t}(r);return r},e.chainBundle(t,(function(i){if(i.isDeclarationFile)return i;r=i,n=i.text;var s=function(t){var r=b(8064,64),n=[],i=[];d();var a=l.copyPrologue(t.statements,n,!1,w);e.addRange(i,e.visitNodes(t.statements,w,e.isStatement,a)),o&&i.push(l.createVariableStatement(void 0,l.createVariableDeclarationList(o)));return l.mergeLexicalEnvironment(n,f()),B(n,t),k(r,0,0),l.updateSourceFile(t,e.setTextRange(l.createNodeArray(e.concatenate(n,i)),t.statements))}(i);return e.addEmitHelpers(s,t.readEmitHelpers()),r=void 0,n=void 0,o=void 0,a=0,s}));function b(e,t){var r=a;return a=16383&(a&~e|t),r}function k(e,t,r){a=-16384&(a&~t|r)|e}function x(e){return!!(8192&a)&&244===e.kind&&!e.expression}function S(t){return!!(256&t.transformFlags)||void 0!==s||8192&a&&function(t){return 1048576&t.transformFlags&&(e.isReturnStatement(t)||e.isIfStatement(t)||e.isWithStatement(t)||e.isSwitchStatement(t)||e.isCaseBlock(t)||e.isCaseClause(t)||e.isDefaultClause(t)||e.isTryStatement(t)||e.isCatchClause(t)||e.isLabeledStatement(t)||e.isIterationStatement(t,!1)||e.isBlock(t))}(t)||e.isIterationStatement(t,!1)&&de(t)||!!(33554432&e.getEmitFlags(t))}function w(e){return S(e)?T(e,!1):e}function D(e){return S(e)?T(e,!0):e}function E(e){return 106===e.kind?Ne(!0):w(e)}function T(n,o){switch(n.kind){case 124:return;case 254:return function(t){var r=l.createVariableDeclaration(l.getLocalName(t,!0),void 0,void 0,N(t));e.setOriginalNode(r,t);var n=[],i=l.createVariableStatement(void 0,l.createVariableDeclarationList([r]));if(e.setOriginalNode(i,t),e.setTextRange(i,t),e.startOnNewLine(i),n.push(i),e.hasSyntacticModifier(t,1)){var a=e.hasSyntacticModifier(t,512)?l.createExportDefault(l.getLocalName(t)):l.createExternalModuleExport(l.getLocalName(t));e.setOriginalNode(a,i),n.push(a)}var o=e.getEmitFlags(t);4194304&o||(n.push(l.createEndOfDeclarationMarker(t)),e.setEmitFlags(i,4194304|o));return e.singleOrMany(n)}(n);case 223:return function(e){return N(e)}(n);case 161:return function(t){return t.dotDotDotToken?void 0:e.isBindingPattern(t.name)?e.setOriginalNode(e.setTextRange(l.createParameterDeclaration(void 0,void 0,void 0,l.getGeneratedNameForNode(t),void 0,void 0,void 0),t),t):t.initializer?e.setOriginalNode(e.setTextRange(l.createParameterDeclaration(void 0,void 0,void 0,t.name,void 0,void 0,void 0),t),t):t}(n);case 253:return function(r){var n=s;s=void 0;var i=b(16286,65),o=e.visitParameterList(r.parameters,w,t),c=W(r),u=16384&a?l.getLocalName(r):r.name;return k(i,49152,0),s=n,l.updateFunctionDeclaration(r,void 0,e.visitNodes(r.modifiers,w,e.isModifier),r.asteriskToken,u,void 0,o,void 0,c)}(n);case 210:return function(r){4096&r.transformFlags&&(a|=32768);var n=s;s=void 0;var i=b(15232,66),o=l.createFunctionExpression(void 0,void 0,void 0,void 0,e.visitParameterList(r.parameters,w,t),void 0,W(r));e.setTextRange(o,r),e.setOriginalNode(o,r),e.setEmitFlags(o,8),32768&a&&Ie();return k(i,0,0),s=n,o}(n);case 209:return function(r){var n=262144&e.getEmitFlags(r)?b(16278,69):b(16286,65),i=s;s=void 0;var o=e.visitParameterList(r.parameters,w,t),c=W(r),u=16384&a?l.getLocalName(r):r.name;return k(n,49152,0),s=i,l.updateFunctionExpression(r,void 0,r.asteriskToken,u,void 0,o,void 0,c)}(n);case 251:return Y(n);case 78:return A(n);case 252:return function(r){if(3&r.flags||131072&r.transformFlags){3&r.flags&&Pe();var n=e.flatMap(r.declarations,1&r.flags?$:Y),i=l.createVariableDeclarationList(n);return e.setOriginalNode(i,r),e.setTextRange(i,r),e.setCommentRange(i,r),131072&r.transformFlags&&(e.isBindingPattern(r.declarations[0].name)||e.isBindingPattern(e.last(r.declarations).name))&&e.setSourceMapRange(i,function(t){for(var r=-1,n=-1,i=0,a=t;i<a.length;i++){var o=a[i];r=-1===r?o.pos:-1===o.pos?r:Math.min(r,o.pos),n=Math.max(n,o.end)}return e.createRange(r,n)}(n)),i}return e.visitEachChild(r,w,t)}(n);case 246:return function(r){if(void 0!==s){var n=s.allowedNonLabeledJumps;s.allowedNonLabeledJumps|=2;var i=e.visitEachChild(r,w,t);return s.allowedNonLabeledJumps=n,i}return e.visitEachChild(r,w,t)}(n);case 261:return function(r){var n=b(7104,0),i=e.visitEachChild(r,w,t);return k(n,0,0),i}(n);case 232:return function(r,n){if(n)return e.visitEachChild(r,w,t);var i=256&a?b(7104,512):b(6976,128),o=e.visitEachChild(r,w,t);return k(i,0,0),o}(n,!1);case 243:case 242:return function(r){if(s){var n=243===r.kind?2:4;if(!(r.label&&s.labels&&s.labels.get(e.idText(r.label))||!r.label&&s.allowedNonLabeledJumps&n)){var i=void 0,a=r.label;a?243===r.kind?(i="break-"+a.escapedText,ye(s,!0,e.idText(a),i)):(i="continue-"+a.escapedText,ye(s,!1,e.idText(a),i)):243===r.kind?(s.nonLocalJumps|=2,i="break"):(s.nonLocalJumps|=4,i="continue");var o=l.createStringLiteral(i);if(s.loopOutParameters.length){for(var c=s.loopOutParameters,u=void 0,d=0;d<c.length;d++){var p=_e(c[d],1);u=0===d?p:l.createBinaryExpression(u,27,p)}o=l.createBinaryExpression(u,27,o)}return l.createReturnStatement(o)}}return e.visitEachChild(r,w,t)}(n);case 247:return function(t){s&&!s.labels&&(s.labels=new e.Map);var r=e.unwrapInnermostStatementOfLabel(t,s&&X);return e.isIterationStatement(r,!1)?function(e,t){switch(e.kind){case 237:case 238:return ee(e,t);case 239:return te(e,t);case 240:return re(e,t);case 241:return ne(e,t)}}(r,t):l.restoreEnclosingLabel(e.visitNode(r,w,e.isStatement,l.liftToBlock),t,s&&Q)}(n);case 237:case 238:return ee(n,void 0);case 239:return te(n,void 0);case 240:return re(n,void 0);case 241:return ne(n,void 0);case 235:case 214:return function(r){return e.visitEachChild(r,D,t)}(n);case 201:return function(r){for(var n=r.properties,i=-1,o=!1,s=0;s<n.length;s++){var c=n[s];if(262144&c.transformFlags&&4&a||(o=159===e.Debug.checkDefined(c.name).kind)){i=s;break}}if(i<0)return e.visitEachChild(r,w,t);var u=l.createTempVariable(m),d=[],p=l.createAssignment(u,e.setEmitFlags(l.createObjectLiteralExpression(e.visitNodes(n,w,e.isObjectLiteralElementLike,0,i),r.multiLine),o?65536:0));r.multiLine&&e.startOnNewLine(p);return d.push(p),function(t,r,n,i){for(var a=r.properties,o=a.length,s=i;s<o;s++){var c=a[s];switch(c.kind){case 168:case 169:var l=e.getAllAccessorDeclarations(r.properties,c);c===l.firstAccessor&&t.push(H(n,l,r,!!r.multiLine));break;case 166:t.push(Se(c,n,r,r.multiLine));break;case 291:t.push(ke(c,n,r.multiLine));break;case 292:t.push(xe(c,n,r.multiLine));break;default:e.Debug.failBadSyntaxKind(r)}}}(d,r,u,i),d.push(r.multiLine?e.startOnNewLine(e.setParent(e.setTextRange(l.cloneNode(u),u),u.parent)):u),l.inlineExpressions(d)}(n);case 290:return function(r){var n,a=b(7104,0);if(e.Debug.assert(!!r.variableDeclaration,"Catch clause variable should always be present when downleveling ES2015."),e.isBindingPattern(r.variableDeclaration.name)){var o=l.createTempVariable(void 0),s=l.createVariableDeclaration(o);e.setTextRange(s,r.variableDeclaration);var c=e.flattenDestructuringBinding(r.variableDeclaration,w,t,0,o),u=l.createVariableDeclarationList(c);e.setTextRange(u,r.variableDeclaration);var d=l.createVariableStatement(void 0,u);n=l.updateCatchClause(r,s,(p=r.block,f=d,m=e.visitNodes(p.statements,w,e.isStatement),l.updateBlock(p,i([f],m))))}else n=e.visitEachChild(r,w,t);var p,f,m;return k(a,0,0),n}(n);case 292:return function(t){return e.setTextRange(l.createPropertyAssignment(t.name,A(l.cloneNode(t.name))),t)}(n);case 159:case 221:return function(r){return e.visitEachChild(r,w,t)}(n);case 200:return function(r){if(e.some(r.elements,e.isSpreadElement))return De(r.elements,!0,!!r.multiLine,!!r.elements.hasTrailingComma);return e.visitEachChild(r,w,t)}(n);case 204:return function(t){if(33554432&e.getEmitFlags(t))return function(t){var r=e.cast(e.cast(e.skipOuterExpressions(t.expression),e.isArrowFunction).body,e.isBlock),n=function(t){return e.isVariableStatement(t)&&!!e.first(t.declarationList.declarations).initializer},i=s;s=void 0;var a=e.visitNodes(r.statements,w,e.isStatement);s=i;var o=e.filter(a,n),c=e.filter(a,(function(e){return!n(e)})),u=e.cast(e.first(o),e.isVariableStatement).declarationList.declarations[0],d=e.skipOuterExpressions(u.initializer),p=e.tryCast(d,e.isAssignmentExpression),f=e.cast(p?e.skipOuterExpressions(p.right):d,e.isCallExpression),m=e.cast(e.skipOuterExpressions(f.expression),e.isFunctionExpression),g=m.body.statements,_=0,h=-1,y=[];if(p){var v=e.tryCast(g[_],e.isExpressionStatement);v&&(y.push(v),_++),y.push(g[_]),_++,y.push(l.createExpressionStatement(l.createAssignment(p.left,e.cast(u.name,e.isIdentifier))))}for(;!e.isReturnStatement(e.elementAt(g,h));)h--;e.addRange(y,g,_,h),h<-1&&e.addRange(y,g,h+1);return e.addRange(y,c),e.addRange(y,o,1),l.restoreOuterExpressions(t.expression,l.restoreOuterExpressions(u.initializer,l.restoreOuterExpressions(p&&p.right,l.updateCallExpression(f,l.restoreOuterExpressions(f.expression,l.updateFunctionExpression(m,void 0,void 0,void 0,void 0,m.parameters,void 0,l.updateBlock(m.body,y))),void 0,f.arguments))))}(t);var r=e.skipOuterExpressions(t.expression);if(106===r.kind||e.isSuperProperty(r)||e.some(t.arguments,e.isSpreadElement))return we(t,!0);return l.updateCallExpression(t,e.visitNode(t.expression,E,e.isExpression),void 0,e.visitNodes(t.arguments,w,e.isExpression))}(n);case 205:return function(r){if(e.some(r.arguments,e.isSpreadElement)){var n=l.createCallBinding(l.createPropertyAccessExpression(r.expression,"bind"),m),a=n.target,o=n.thisArg;return l.createNewExpression(l.createFunctionApplyCall(e.visitNode(a,w,e.isExpression),o,De(l.createNodeArray(i([l.createVoidZero()],r.arguments)),!1,!1,!1)),void 0,[])}return e.visitEachChild(r,w,t)}(n);case 208:return function(r,n){return e.visitEachChild(r,n?D:w,t)}(n,o);case 218:return G(n,o);case 340:return function(r,n){if(n)return e.visitEachChild(r,D,t);for(var i,a=0;a<r.elements.length;a++){var o=r.elements[a],s=e.visitNode(o,a<r.elements.length-1?D:w,e.isExpression);(i||s!==o)&&(i||(i=r.elements.slice(0,a)),i.push(s))}var c=i?e.setTextRange(l.createNodeArray(i),r.elements):r.elements;return l.updateCommaListExpression(r,c)}(n,o);case 14:case 15:case 16:case 17:return function(t){return e.setTextRange(l.createStringLiteral(t.text),t)}(n);case 10:return function(t){if(t.hasExtendedUnicodeEscape)return e.setTextRange(l.createStringLiteral(t.text),t);return t}(n);case 8:return function(t){if(384&t.numericLiteralFlags)return e.setTextRange(l.createNumericLiteral(t.text),t);return t}(n);case 206:return function(n){return e.processTaggedTemplateExpression(t,n,w,r,v,e.ProcessLevel.All)}(n);case 220:return function(t){var r=[];(function(t,r){if(!function(t){return e.Debug.assert(0!==t.templateSpans.length),0!==t.head.text.length||0===t.templateSpans[0].literal.text.length}(r))return;t.push(l.createStringLiteral(r.head.text))})(r,t),function(t,r){for(var n=0,i=r.templateSpans;n<i.length;n++){var a=i[n];t.push(e.visitNode(a.expression,w,e.isExpression)),0!==a.literal.text.length&&t.push(l.createStringLiteral(a.literal.text))}}(r,t);var n=e.reduceLeft(r,l.createAdd);e.nodeIsSynthesized(n)&&e.setTextRange(n,t);return n}(n);case 222:return function(t){return e.visitNode(t.expression,w,e.isExpression)}(n);case 106:return Ne(!1);case 108:return function(e){2&a&&(a|=32768);if(s)return 2&a?(s.containsLexicalThis=!0,e):s.thisName||(s.thisName=l.createUniqueName("this"));return e}(n);case 228:return function(e){if(103===e.keywordToken&&"target"===e.name.escapedText)return a|=16384,l.createUniqueName("_newTarget",48);return e}(n);case 166:return function(t){e.Debug.assert(!e.isComputedPropertyName(t.name));var r=K(t,e.moveRangePos(t,-1),void 0,void 0);return e.setEmitFlags(r,512|e.getEmitFlags(r)),e.setTextRange(l.createPropertyAssignment(t.name,r),t)}(n);case 168:case 169:return function(r){e.Debug.assert(!e.isComputedPropertyName(r.name));var n=s;s=void 0;var i,a=b(16286,65),o=e.visitParameterList(r.parameters,w,t),c=W(r);i=168===r.kind?l.updateGetAccessorDeclaration(r,r.decorators,r.modifiers,r.name,o,r.type,c):l.updateSetAccessorDeclaration(r,r.decorators,r.modifiers,r.name,o,c);return k(a,49152,0),s=n,i}(n);case 234:return function(r){var n,i=b(0,e.hasSyntacticModifier(r,1)?32:0);if(!s||3&r.declarationList.flags||function(t){return 1===t.declarationList.declarations.length&&!!t.declarationList.declarations[0].initializer&&!!(33554432&e.getEmitFlags(t.declarationList.declarations[0].initializer))}(r))n=e.visitEachChild(r,w,t);else{for(var a=void 0,o=0,c=r.declarationList.declarations;o<c.length;o++){var u=c[o];if(fe(s,u),u.initializer){var d=void 0;e.isBindingPattern(u.name)?d=e.flattenDestructuringAssignment(u,w,t,0):(d=l.createBinaryExpression(u.name,62,e.visitNode(u.initializer,w,e.isExpression)),e.setTextRange(d,u)),a=e.append(a,d)}}n=a?e.setTextRange(l.createExpressionStatement(l.inlineExpressions(a)),r):void 0}return k(i,0,0),n}(n);case 244:return function(r){if(s)return s.nonLocalJumps|=8,x(r)&&(r=C(r)),l.createReturnStatement(l.createObjectLiteralExpression([l.createPropertyAssignment(l.createIdentifier("value"),r.expression?e.visitNode(r.expression,w,e.isExpression):l.createVoidZero())]));if(x(r))return C(r);return e.visitEachChild(r,w,t)}(n);default:return e.visitEachChild(n,w,t)}}function C(t){return e.setOriginalNode(l.createReturnStatement(l.createUniqueName("_this",48)),t)}function A(e){return s&&_.isArgumentsLocalBinding(e)?s.argumentsName||(s.argumentsName=l.createUniqueName("arguments")):e}function N(i){i.name&&Pe();var o=e.getClassExtendsHeritageElement(i),c=l.createFunctionExpression(void 0,void 0,void 0,void 0,o?[l.createParameterDeclaration(void 0,void 0,void 0,l.createUniqueName("_super",48))]:[],void 0,function(i,o){var c=[],m=l.getInternalName(i),g=e.isIdentifierANonContextualKeyword(m)?l.getGeneratedNameForNode(m):m;d(),function(t,r,n){n&&t.push(e.setTextRange(l.createExpressionStatement(u().createExtendsHelper(l.getInternalName(r))),n))}(c,i,o),function(r,n,i,o){var c=s;s=void 0;var u=b(16278,73),d=e.getFirstConstructorWithBody(n),m=function(t,r){if(!t||!r)return!1;if(e.some(t.parameters))return!1;var n=e.firstOrUndefined(t.body.statements);if(!n||!e.nodeIsSynthesized(n)||235!==n.kind)return!1;var i=n.expression;if(!e.nodeIsSynthesized(i)||204!==i.kind)return!1;var a=i.expression;if(!e.nodeIsSynthesized(a)||106!==a.kind)return!1;var o=e.singleOrUndefined(i.arguments);if(!o||!e.nodeIsSynthesized(o)||222!==o.kind)return!1;var s=o.expression;return e.isIdentifier(s)&&"arguments"===s.escapedText}(d,void 0!==o),g=l.createFunctionDeclaration(void 0,void 0,void 0,i,void 0,function(r,n){return e.visitParameterList(r&&!n?r.parameters:void 0,w,t)||[]}(d,m),void 0,function(t,r,n,i){var o=!!n&&104!==e.skipOuterExpressions(n.expression).kind;if(!t)return function(t,r){var n=[];p(),l.mergeLexicalEnvironment(n,f()),r&&n.push(l.createReturnStatement(F()));var i=l.createNodeArray(n);e.setTextRange(i,t.members);var a=l.createBlock(i,!0);return e.setTextRange(a,t),e.setEmitFlags(a,1536),a}(r,o);var s=[],c=[];p();var u,d=0;i||(d=l.copyStandardPrologue(t.body.statements,s,!1));R(c,t),j(c,t,i),i||(d=l.copyCustomPrologue(t.body.statements,c,d,w));if(i)u=F();else if(o&&d<t.body.statements.length){var m=t.body.statements[d];e.isExpressionStatement(m)&&e.isSuperCall(m.expression)&&(u=function(e){return we(e,!1)}(m.expression))}u&&(a|=8192,d++);if(e.addRange(c,e.visitNodes(t.body.statements,w,e.isStatement,d)),l.mergeLexicalEnvironment(s,f()),U(s,t,!1),o)if(!u||d!==t.body.statements.length||4096&t.body.transformFlags)z(c,t,u||I()),P(t.body)||c.push(l.createReturnStatement(l.createUniqueName("_this",48)));else{var g=e.cast(e.cast(u,e.isBinaryExpression).left,e.isCallExpression),_=l.createReturnStatement(u);e.setCommentRange(_,e.getCommentRange(g)),e.setEmitFlags(g,1536),c.push(_)}else B(s,t);var h=l.createBlock(e.setTextRange(l.createNodeArray(e.concatenate(s,c)),t.body.statements),!0);return e.setTextRange(h,t.body),h}(d,n,o,m));e.setTextRange(g,d||n),o&&e.setEmitFlags(g,8);r.push(g),k(u,49152,0),s=c}(c,i,g,o),function(t,n){for(var i=0,a=n.members;i<a.length;i++){var o=a[i];switch(o.kind){case 231:t.push(q(o));break;case 166:t.push(J(Fe(n,o),o,n));break;case 168:case 169:var s=e.getAllAccessorDeclarations(n.members,o);o===s.firstAccessor&&t.push(V(Fe(n,o),s,n));break;case 167:break;default:e.Debug.failBadSyntaxKind(o,r&&r.fileName)}}}(c,i);var _=e.createTokenRange(e.skipTrivia(n,i.members.end),19),h=l.createPartiallyEmittedExpression(g);e.setTextRangeEnd(h,_.end),e.setEmitFlags(h,1536);var y=l.createReturnStatement(h);e.setTextRangePos(y,_.pos),e.setEmitFlags(y,1920),c.push(y),e.insertStatementsAfterStandardPrologue(c,f());var v=l.createBlock(e.setTextRange(l.createNodeArray(c),i.members),!0);return e.setEmitFlags(v,1536),v}(i,o));e.setEmitFlags(c,65536&e.getEmitFlags(i)|524288);var m=l.createPartiallyEmittedExpression(c);e.setTextRangeEnd(m,i.end),e.setEmitFlags(m,1536);var g=l.createPartiallyEmittedExpression(m);e.setTextRangeEnd(g,e.skipTrivia(n,i.pos)),e.setEmitFlags(g,1536);var _=l.createParenthesizedExpression(l.createCallExpression(g,void 0,o?[e.visitNode(o.expression,w,e.isExpression)]:[]));return e.addSyntheticLeadingComment(_,3,"* @class "),_}function P(t){if(244===t.kind)return!0;if(236===t.kind){var r=t;if(r.elseStatement)return P(r.thenStatement)&&P(r.elseStatement)}else if(232===t.kind){var n=e.lastOrUndefined(t.statements);if(n&&P(n))return!0}return!1}function I(){return e.setEmitFlags(l.createThis(),4)}function F(){return l.createLogicalOr(l.createLogicalAnd(l.createStrictInequality(l.createUniqueName("_super",48),l.createNull()),l.createFunctionApplyCall(l.createUniqueName("_super",48),I(),l.createIdentifier("arguments"))),I())}function O(t){return void 0!==t.initializer||e.isBindingPattern(t.name)}function R(t,r){if(!e.some(r.parameters,O))return!1;for(var n=!1,i=0,a=r.parameters;i<a.length;i++){var o=a[i],s=o.name,c=o.initializer;o.dotDotDotToken||(e.isBindingPattern(s)?n=M(t,o,s,c)||n:c&&(L(t,o,s,c),n=!0))}return n}function M(r,n,i,a){return i.elements.length>0?(e.insertStatementAfterCustomPrologue(r,e.setEmitFlags(l.createVariableStatement(void 0,l.createVariableDeclarationList(e.flattenDestructuringBinding(n,w,t,0,l.getGeneratedNameForNode(n)))),1048576)),!0):!!a&&(e.insertStatementAfterCustomPrologue(r,e.setEmitFlags(l.createExpressionStatement(l.createAssignment(l.getGeneratedNameForNode(n),e.visitNode(a,w,e.isExpression))),1048576)),!0)}function L(t,r,n,i){i=e.visitNode(i,w,e.isExpression);var a=l.createIfStatement(l.createTypeCheck(l.cloneNode(n),"undefined"),e.setEmitFlags(e.setTextRange(l.createBlock([l.createExpressionStatement(e.setEmitFlags(e.setTextRange(l.createAssignment(e.setEmitFlags(e.setParent(e.setTextRange(l.cloneNode(n),n),n.parent),48),e.setEmitFlags(i,1584|e.getEmitFlags(i))),r),1536))]),r),1953));e.startOnNewLine(a),e.setTextRange(a,r),e.setEmitFlags(a,1050528),e.insertStatementAfterCustomPrologue(t,a)}function j(r,n,i){var a=[],o=e.lastOrUndefined(n.parameters);if(!function(e,t){return!(!e||!e.dotDotDotToken||t)}(o,i))return!1;var s=78===o.name.kind?e.setParent(e.setTextRange(l.cloneNode(o.name),o.name),o.name.parent):l.createTempVariable(void 0);e.setEmitFlags(s,48);var c=78===o.name.kind?l.cloneNode(o.name):s,u=n.parameters.length-1,d=l.createLoopVariable();a.push(e.setEmitFlags(e.setTextRange(l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(s,void 0,void 0,l.createArrayLiteralExpression([]))])),o),1048576));var p=l.createForStatement(e.setTextRange(l.createVariableDeclarationList([l.createVariableDeclaration(d,void 0,void 0,l.createNumericLiteral(u))]),o),e.setTextRange(l.createLessThan(d,l.createPropertyAccessExpression(l.createIdentifier("arguments"),"length")),o),e.setTextRange(l.createPostfixIncrement(d),o),l.createBlock([e.startOnNewLine(e.setTextRange(l.createExpressionStatement(l.createAssignment(l.createElementAccessExpression(c,0===u?d:l.createSubtract(d,l.createNumericLiteral(u))),l.createElementAccessExpression(l.createIdentifier("arguments"),d))),o))]));return e.setEmitFlags(p,1048576),e.startOnNewLine(p),a.push(p),78!==o.name.kind&&a.push(e.setEmitFlags(e.setTextRange(l.createVariableStatement(void 0,l.createVariableDeclarationList(e.flattenDestructuringBinding(o,w,t,0,c))),o),1048576)),e.insertStatementsAfterCustomPrologue(r,a),!0}function B(e,t){return!!(32768&a&&210!==t.kind)&&(z(e,t,l.createThis()),!0)}function z(t,r,n){Ie();var i=l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(l.createUniqueName("_this",48),void 0,void 0,n)]));e.setEmitFlags(i,1050112),e.setSourceMapRange(i,r),e.insertStatementAfterCustomPrologue(t,i)}function U(t,r,n){if(16384&a){var i=void 0;switch(r.kind){case 210:return t;case 166:case 168:case 169:i=l.createVoidZero();break;case 167:i=l.createPropertyAccessExpression(e.setEmitFlags(l.createThis(),4),"constructor");break;case 253:case 209:i=l.createConditionalExpression(l.createLogicalAnd(e.setEmitFlags(l.createThis(),4),l.createBinaryExpression(e.setEmitFlags(l.createThis(),4),102,l.getLocalName(r))),void 0,l.createPropertyAccessExpression(e.setEmitFlags(l.createThis(),4),"constructor"),void 0,l.createVoidZero());break;default:return e.Debug.failBadSyntaxKind(r)}var o=l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(l.createUniqueName("_newTarget",48),void 0,void 0,i)]));e.setEmitFlags(o,1050112),n&&(t=t.slice()),e.insertStatementAfterCustomPrologue(t,o)}return t}function q(t){return e.setTextRange(l.createEmptyStatement(),t)}function J(r,n,i){var a,o=e.getCommentRange(n),s=e.getSourceMapRange(n),c=K(n,n,void 0,i),u=e.visitNode(n.name,w,e.isPropertyName);if(!e.isPrivateIdentifier(u)&&t.getCompilerOptions().useDefineForClassFields){var d=e.isComputedPropertyName(u)?u.expression:e.isIdentifier(u)?l.createStringLiteral(e.unescapeLeadingUnderscores(u.escapedText)):u;a=l.createObjectDefinePropertyCall(r,d,l.createPropertyDescriptor({value:c,enumerable:!1,writable:!0,configurable:!0}))}else{var p=e.createMemberAccessForPropertyName(l,r,u,n.name);a=l.createAssignment(p,c)}e.setEmitFlags(c,1536),e.setSourceMapRange(c,s);var f=e.setTextRange(l.createExpressionStatement(a),n);return e.setOriginalNode(f,n),e.setCommentRange(f,o),e.setEmitFlags(f,48),f}function V(t,r,n){var i=l.createExpressionStatement(H(t,r,n,!1));return e.setEmitFlags(i,1536),e.setSourceMapRange(i,e.getSourceMapRange(r.firstAccessor)),i}function H(t,r,n,i){var a=r.firstAccessor,o=r.getAccessor,s=r.setAccessor,c=e.setParent(e.setTextRange(l.cloneNode(t),t),t.parent);e.setEmitFlags(c,1568),e.setSourceMapRange(c,a.name);var u=e.visitNode(a.name,w,e.isPropertyName);if(e.isPrivateIdentifier(u))return e.Debug.failBadSyntaxKind(u,"Encountered unhandled private identifier while transforming ES2015.");var d=e.createExpressionForPropertyName(l,u);e.setEmitFlags(d,1552),e.setSourceMapRange(d,a.name);var p=[];if(o){var f=K(o,void 0,void 0,n);e.setSourceMapRange(f,e.getSourceMapRange(o)),e.setEmitFlags(f,512);var m=l.createPropertyAssignment("get",f);e.setCommentRange(m,e.getCommentRange(o)),p.push(m)}if(s){var g=K(s,void 0,void 0,n);e.setSourceMapRange(g,e.getSourceMapRange(s)),e.setEmitFlags(g,512);var _=l.createPropertyAssignment("set",g);e.setCommentRange(_,e.getCommentRange(s)),p.push(_)}p.push(l.createPropertyAssignment("enumerable",o||s?l.createFalse():l.createTrue()),l.createPropertyAssignment("configurable",l.createTrue()));var h=l.createCallExpression(l.createPropertyAccessExpression(l.createIdentifier("Object"),"defineProperty"),void 0,[c,d,l.createObjectLiteralExpression(p,!0)]);return i&&e.startOnNewLine(h),h}function K(r,n,i,o){var c=s;s=void 0;var u=o&&e.isClassLike(o)&&!e.hasSyntacticModifier(r,32)?b(16286,73):b(16286,65),d=e.visitParameterList(r.parameters,w,t),p=W(r);return 16384&a&&!i&&(253===r.kind||209===r.kind)&&(i=l.getGeneratedNameForNode(r)),k(u,49152,0),s=c,e.setOriginalNode(e.setTextRange(l.createFunctionExpression(void 0,r.asteriskToken,i,void 0,d,void 0,p),n),r)}function W(t){var n,i,a,o=!1,s=!1,c=[],u=[],d=t.body;if(p(),e.isBlock(d)&&(a=l.copyStandardPrologue(d.statements,c,!1),a=l.copyCustomPrologue(d.statements,u,a,w,e.isHoistedFunction),a=l.copyCustomPrologue(d.statements,u,a,w,e.isHoistedVariableStatement)),o=R(u,t)||o,o=j(u,t,!1)||o,e.isBlock(d))a=l.copyCustomPrologue(d.statements,u,a,w),n=d.statements,e.addRange(u,e.visitNodes(d.statements,w,e.isStatement,a)),!o&&d.multiLine&&(o=!0);else{e.Debug.assert(210===t.kind),n=e.moveRangeEnd(d,-1);var m=t.equalsGreaterThanToken;e.nodeIsSynthesized(m)||e.nodeIsSynthesized(d)||(e.rangeEndIsOnSameLineAsRangeStart(m,d,r)?s=!0:o=!0);var g=e.visitNode(d,w,e.isExpression),_=l.createReturnStatement(g);e.setTextRange(_,d),e.moveSyntheticComments(_,d),e.setEmitFlags(_,1440),u.push(_),i=d}if(l.mergeLexicalEnvironment(c,f()),U(c,t,!1),B(c,t),e.some(c)&&(o=!0),u.unshift.apply(u,c),e.isBlock(d)&&e.arrayIsEqualTo(u,d.statements))return d;var h=l.createBlock(e.setTextRange(l.createNodeArray(u),n),o);return e.setTextRange(h,t.body),!o&&s&&e.setEmitFlags(h,1),i&&e.setTokenSourceMapRange(h,19,i),e.setOriginalNode(h,t.body),h}function G(r,n){return e.isDestructuringAssignment(r)?e.flattenDestructuringAssignment(r,w,t,0,!n):27===r.operatorToken.kind?l.updateBinaryExpression(r,e.visitNode(r.left,D,e.isExpression),r.operatorToken,e.visitNode(r.right,n?D:w,e.isExpression)):e.visitEachChild(r,w,t)}function $(r){var n=r.name;return e.isBindingPattern(n)?Y(r):!r.initializer&&function(e){var t=_.getNodeCheckFlags(e),r=262144&t,n=524288&t;return!(64&a||r&&n&&512&a)&&!(4096&a)&&(!_.isDeclarationWithCollidingName(e)||n&&!r&&!(6144&a))}(r)?l.updateVariableDeclaration(r,r.name,void 0,void 0,l.createVoidZero()):e.visitEachChild(r,w,t)}function Y(r){var n,i=b(32,0);return n=e.isBindingPattern(r.name)?e.flattenDestructuringBinding(r,w,t,0,void 0,!!(32&i)):e.visitEachChild(r,w,t),k(i,0,0),n}function X(t){s.labels.set(e.idText(t.label),!0)}function Q(t){s.labels.set(e.idText(t.label),!1)}function Z(r,n,i,o,c){var u=b(r,n),p=function(r,n,i,o){if(!de(r)){var c=void 0;s&&(c=s.allowedNonLabeledJumps,s.allowedNonLabeledJumps=6);var u=o?o(r,n,void 0,i):l.restoreEnclosingLabel(e.isForStatement(r)?function(t){return l.updateForStatement(t,e.visitNode(t.initializer,D,e.isForInitializer),e.visitNode(t.condition,w,e.isExpression),e.visitNode(t.incrementor,D,e.isExpression),e.visitNode(t.statement,w,e.isStatement,l.liftToBlock))}(r):e.visitEachChild(r,w,t),n,s&&Q);return s&&(s.allowedNonLabeledJumps=c),u}var p=function(t){var r;switch(t.kind){case 239:case 240:case 241:var n=t.initializer;n&&252===n.kind&&(r=n)}var i=[],a=[];if(r&&3&e.getCombinedNodeFlags(r))for(var o=le(t),c=0,l=r.declarations;c<l.length;c++){be(t,l[c],i,a,o)}var u={loopParameters:i,loopOutParameters:a};s&&(s.argumentsName&&(u.argumentsName=s.argumentsName),s.thisName&&(u.thisName=s.thisName),s.hoistedLocalVariables&&(u.hoistedLocalVariables=s.hoistedLocalVariables));return u}(r),m=[],g=s;s=p;var _,h=le(r)?function(t,r){var n=l.createUniqueName("_loop_init"),i=!!(262144&t.initializer.transformFlags),o=0;r.containsLexicalThis&&(o|=8);i&&4&a&&(o|=262144);var s=[];s.push(l.createVariableStatement(void 0,t.initializer)),he(r.loopOutParameters,2,1,s);var c=l.createVariableStatement(void 0,e.setEmitFlags(l.createVariableDeclarationList([l.createVariableDeclaration(n,void 0,void 0,e.setEmitFlags(l.createFunctionExpression(void 0,i?l.createToken(41):void 0,void 0,void 0,void 0,void 0,e.visitNode(l.createBlock(s,!0),w,e.isBlock)),o))]),2097152)),u=l.createVariableDeclarationList(e.map(r.loopOutParameters,ge));return{functionName:n,containsYield:i,functionDeclaration:c,part:u}}(r,p):void 0,y=pe(r)?function(t,r,n){var i=l.createUniqueName("_loop");d();var o=e.visitNode(t.statement,w,e.isStatement,l.liftToBlock),s=f(),c=[];(ue(t)||function(t){return e.isForStatement(t)&&!!t.incrementor&&ce(t.incrementor)}(t))&&(r.conditionVariable=l.createUniqueName("inc"),t.incrementor?c.push(l.createIfStatement(r.conditionVariable,l.createExpressionStatement(e.visitNode(t.incrementor,w,e.isExpression)),l.createExpressionStatement(l.createAssignment(r.conditionVariable,l.createTrue())))):c.push(l.createIfStatement(l.createLogicalNot(r.conditionVariable),l.createExpressionStatement(l.createAssignment(r.conditionVariable,l.createTrue())))),ue(t)&&c.push(l.createIfStatement(l.createPrefixUnaryExpression(53,e.visitNode(t.condition,w,e.isExpression)),e.visitNode(l.createBreakStatement(),w,e.isStatement))));e.isBlock(o)?e.addRange(c,o.statements):c.push(o);he(r.loopOutParameters,1,1,c),e.insertStatementsAfterStandardPrologue(c,s);var u=l.createBlock(c,!0);e.isBlock(o)&&e.setOriginalNode(u,o);var p=!!(262144&t.statement.transformFlags),m=524288;r.containsLexicalThis&&(m|=8);p&&4&a&&(m|=262144);var g=l.createVariableStatement(void 0,e.setEmitFlags(l.createVariableDeclarationList([l.createVariableDeclaration(i,void 0,void 0,e.setEmitFlags(l.createFunctionExpression(void 0,p?l.createToken(41):void 0,void 0,void 0,r.loopParameters,void 0,u),m))]),2097152)),_=function(t,r,n,i){var a=[],o=!(-5&r.nonLocalJumps||r.labeledNonLocalBreaks||r.labeledNonLocalContinues),s=l.createCallExpression(t,void 0,e.map(r.loopParameters,(function(e){return e.name}))),c=i?l.createYieldExpression(l.createToken(41),e.setEmitFlags(s,8388608)):s;if(o)a.push(l.createExpressionStatement(c)),he(r.loopOutParameters,1,0,a);else{var u=l.createUniqueName("state"),d=l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(u,void 0,void 0,c)]));if(a.push(d),he(r.loopOutParameters,1,0,a),8&r.nonLocalJumps){var p=void 0;n?(n.nonLocalJumps|=8,p=l.createReturnStatement(u)):p=l.createReturnStatement(l.createPropertyAccessExpression(u,"value")),a.push(l.createIfStatement(l.createTypeCheck(u,"object"),p))}if(2&r.nonLocalJumps&&a.push(l.createIfStatement(l.createStrictEquality(u,l.createStringLiteral("break")),l.createBreakStatement())),r.labeledNonLocalBreaks||r.labeledNonLocalContinues){var f=[];ve(r.labeledNonLocalBreaks,!0,u,n,f),ve(r.labeledNonLocalContinues,!1,u,n,f),a.push(l.createSwitchStatement(u,l.createCaseBlock(f)))}}return a}(i,r,n,p);return{functionName:i,containsYield:p,functionDeclaration:g,part:_}}(r,p,g):void 0;s=g,h&&m.push(h.functionDeclaration);y&&m.push(y.functionDeclaration);(function(e,t,r){var n;t.argumentsName&&(r?r.argumentsName=t.argumentsName:(n||(n=[])).push(l.createVariableDeclaration(t.argumentsName,void 0,void 0,l.createIdentifier("arguments"))));t.thisName&&(r?r.thisName=t.thisName:(n||(n=[])).push(l.createVariableDeclaration(t.thisName,void 0,void 0,l.createIdentifier("this"))));if(t.hoistedLocalVariables)if(r)r.hoistedLocalVariables=t.hoistedLocalVariables;else{n||(n=[]);for(var i=0,a=t.hoistedLocalVariables;i<a.length;i++){var o=a[i];n.push(l.createVariableDeclaration(o))}}if(t.loopOutParameters.length){n||(n=[]);for(var s=0,c=t.loopOutParameters;s<c.length;s++){var u=c[s];n.push(l.createVariableDeclaration(u.outParamName))}}t.conditionVariable&&(n||(n=[]),n.push(l.createVariableDeclaration(t.conditionVariable,void 0,void 0,l.createFalse())));n&&e.push(l.createVariableStatement(void 0,l.createVariableDeclarationList(n)))})(m,p,g),h&&m.push((v=h.functionName,b=h.containsYield,k=l.createCallExpression(v,void 0,[]),x=b?l.createYieldExpression(l.createToken(41),e.setEmitFlags(k,8388608)):k,l.createExpressionStatement(x)));var v,b,k,x;if(y)if(o)_=o(r,n,y.part,i);else{var S=me(r,h,l.createBlock(y.part,!0));_=l.restoreEnclosingLabel(S,n,s&&Q)}else{var E=me(r,h,e.visitNode(r.statement,w,e.isStatement,l.liftToBlock));_=l.restoreEnclosingLabel(E,n,s&&Q)}return m.push(_),m}(i,o,u,c);return k(u,0,0),p}function ee(e,t){return Z(0,1280,e,t)}function te(e,t){return Z(5056,3328,e,t)}function re(e,t){return Z(3008,5376,e,t)}function ne(e,t){return Z(3008,5376,e,t,g.downlevelIteration?se:oe)}function ie(r,n,i){var a=[],o=r.initializer;if(e.isVariableDeclarationList(o)){3&r.initializer.flags&&Pe();var s=e.firstOrUndefined(o.declarations);if(s&&e.isBindingPattern(s.name)){var c=e.flattenDestructuringBinding(s,w,t,0,n),u=e.setTextRange(l.createVariableDeclarationList(c),r.initializer);e.setOriginalNode(u,r.initializer),e.setSourceMapRange(u,e.createRange(c[0].pos,e.last(c).end)),a.push(l.createVariableStatement(void 0,u))}else a.push(e.setTextRange(l.createVariableStatement(void 0,e.setOriginalNode(e.setTextRange(l.createVariableDeclarationList([l.createVariableDeclaration(s?s.name:l.createTempVariable(void 0),void 0,void 0,n)]),e.moveRangePos(o,-1)),o)),e.moveRangeEnd(o,-1)))}else{var d=l.createAssignment(o,n);e.isDestructuringAssignment(d)?a.push(l.createExpressionStatement(G(d,!0))):(e.setTextRangeEnd(d,o.end),a.push(e.setTextRange(l.createExpressionStatement(e.visitNode(d,w,e.isExpression)),e.moveRangeEnd(o,-1))))}if(i)return ae(e.addRange(a,i));var p=e.visitNode(r.statement,w,e.isStatement,l.liftToBlock);return e.isBlock(p)?l.updateBlock(p,e.setTextRange(l.createNodeArray(e.concatenate(a,p.statements)),p.statements)):(a.push(p),ae(a))}function ae(t){return e.setEmitFlags(l.createBlock(l.createNodeArray(t),!0),432)}function oe(t,r,n){var i=e.visitNode(t.expression,w,e.isExpression),a=l.createLoopVariable(),o=e.isIdentifier(i)?l.getGeneratedNameForNode(i):l.createTempVariable(void 0);e.setEmitFlags(i,48|e.getEmitFlags(i));var c=e.setTextRange(l.createForStatement(e.setEmitFlags(e.setTextRange(l.createVariableDeclarationList([e.setTextRange(l.createVariableDeclaration(a,void 0,void 0,l.createNumericLiteral(0)),e.moveRangePos(t.expression,-1)),e.setTextRange(l.createVariableDeclaration(o,void 0,void 0,i),t.expression)]),t.expression),2097152),e.setTextRange(l.createLessThan(a,l.createPropertyAccessExpression(o,"length")),t.expression),e.setTextRange(l.createPostfixIncrement(a),t.expression),ie(t,l.createElementAccessExpression(o,a),n)),t);return e.setEmitFlags(c,256),e.setTextRange(c,t),l.restoreEnclosingLabel(c,r,s&&Q)}function se(t,r,n,i){var a=e.visitNode(t.expression,w,e.isExpression),o=e.isIdentifier(a)?l.getGeneratedNameForNode(a):l.createTempVariable(void 0),c=e.isIdentifier(a)?l.getGeneratedNameForNode(o):l.createTempVariable(void 0),d=l.createUniqueName("e"),p=l.getGeneratedNameForNode(d),f=l.createTempVariable(void 0),g=e.setTextRange(u().createValuesHelper(a),t.expression),_=l.createCallExpression(l.createPropertyAccessExpression(o,"next"),void 0,[]);m(d),m(f);var h=1024&i?l.inlineExpressions([l.createAssignment(d,l.createVoidZero()),g]):g,y=e.setEmitFlags(e.setTextRange(l.createForStatement(e.setEmitFlags(e.setTextRange(l.createVariableDeclarationList([e.setTextRange(l.createVariableDeclaration(o,void 0,void 0,h),t.expression),l.createVariableDeclaration(c,void 0,void 0,_)]),t.expression),2097152),l.createLogicalNot(l.createPropertyAccessExpression(c,"done")),l.createAssignment(c,_),ie(t,l.createPropertyAccessExpression(c,"value"),n)),t),256);return l.createTryStatement(l.createBlock([l.restoreEnclosingLabel(y,r,s&&Q)]),l.createCatchClause(l.createVariableDeclaration(p),e.setEmitFlags(l.createBlock([l.createExpressionStatement(l.createAssignment(d,l.createObjectLiteralExpression([l.createPropertyAssignment("error",p)])))]),1)),l.createBlock([l.createTryStatement(l.createBlock([e.setEmitFlags(l.createIfStatement(l.createLogicalAnd(l.createLogicalAnd(c,l.createLogicalNot(l.createPropertyAccessExpression(c,"done"))),l.createAssignment(f,l.createPropertyAccessExpression(o,"return"))),l.createExpressionStatement(l.createFunctionCallCall(f,o,[]))),1)]),void 0,e.setEmitFlags(l.createBlock([e.setEmitFlags(l.createIfStatement(d,l.createThrowStatement(l.createPropertyAccessExpression(d,"error"))),1)]),1))]))}function ce(e){return!!(131072&_.getNodeCheckFlags(e))}function le(t){return e.isForStatement(t)&&!!t.initializer&&ce(t.initializer)}function ue(t){return e.isForStatement(t)&&!!t.condition&&ce(t.condition)}function de(e){return pe(e)||le(e)}function pe(e){return!!(65536&_.getNodeCheckFlags(e))}function fe(t,r){t.hoistedLocalVariables||(t.hoistedLocalVariables=[]),function r(n){if(78===n.kind)t.hoistedLocalVariables.push(n);else for(var i=0,a=n.elements;i<a.length;i++){var o=a[i];e.isOmittedExpression(o)||r(o.name)}}(r.name)}function me(t,r,n){switch(t.kind){case 239:return function(t,r,n){var i=t.condition&&ce(t.condition),a=i||t.incrementor&&ce(t.incrementor);return l.updateForStatement(t,e.visitNode(r?r.part:t.initializer,D,e.isForInitializer),e.visitNode(i?void 0:t.condition,w,e.isExpression),e.visitNode(a?void 0:t.incrementor,D,e.isExpression),n)}(t,r,n);case 240:return function(t,r){return l.updateForInStatement(t,e.visitNode(t.initializer,w,e.isForInitializer),e.visitNode(t.expression,w,e.isExpression),r)}(t,n);case 241:return function(t,r){return l.updateForOfStatement(t,void 0,e.visitNode(t.initializer,w,e.isForInitializer),e.visitNode(t.expression,w,e.isExpression),r)}(t,n);case 237:return function(t,r){return l.updateDoStatement(t,r,e.visitNode(t.expression,w,e.isExpression))}(t,n);case 238:return function(t,r){return l.updateWhileStatement(t,e.visitNode(t.expression,w,e.isExpression),r)}(t,n);default:return e.Debug.failBadSyntaxKind(t,"IterationStatement expected")}}function ge(e){return l.createVariableDeclaration(e.originalName,void 0,void 0,e.outParamName)}function _e(e,t){var r=0===t?e.outParamName:e.originalName,n=0===t?e.originalName:e.outParamName;return l.createBinaryExpression(n,62,r)}function he(e,t,r,n){for(var i=0,a=e;i<a.length;i++){var o=a[i];o.flags&t&&n.push(l.createExpressionStatement(_e(o,r)))}}function ye(t,r,n,i){r?(t.labeledNonLocalBreaks||(t.labeledNonLocalBreaks=new e.Map),t.labeledNonLocalBreaks.set(n,i)):(t.labeledNonLocalContinues||(t.labeledNonLocalContinues=new e.Map),t.labeledNonLocalContinues.set(n,i))}function ve(e,t,r,n,i){e&&e.forEach((function(e,a){var o=[];if(!n||n.labels&&n.labels.get(a)){var s=l.createIdentifier(a);o.push(t?l.createBreakStatement(s):l.createContinueStatement(s))}else ye(n,t,a,e),o.push(l.createReturnStatement(r));i.push(l.createCaseClause(l.createStringLiteral(e),o))}))}function be(t,r,n,i,a){var o=r.name;if(e.isBindingPattern(o))for(var s=0,c=o.elements;s<c.length;s++){var u=c[s];e.isOmittedExpression(u)||be(t,u,n,i,a)}else{n.push(l.createParameterDeclaration(void 0,void 0,void 0,o));var d=_.getNodeCheckFlags(r);if(4194304&d||a){var p=l.createUniqueName("out_"+e.idText(o)),f=0;4194304&d&&(f|=1),e.isForStatement(t)&&t.initializer&&_.isBindingCapturedByNode(t.initializer,r)&&(f|=2),i.push({flags:f,originalName:o,outParamName:p})}}}function ke(t,r,n){var i=l.createAssignment(e.createMemberAccessForPropertyName(l,r,e.visitNode(t.name,w,e.isPropertyName)),e.visitNode(t.initializer,w,e.isExpression));return e.setTextRange(i,t),n&&e.startOnNewLine(i),i}function xe(t,r,n){var i=l.createAssignment(e.createMemberAccessForPropertyName(l,r,e.visitNode(t.name,w,e.isPropertyName)),l.cloneNode(t.name));return e.setTextRange(i,t),n&&e.startOnNewLine(i),i}function Se(t,r,n,i){var a=l.createAssignment(e.createMemberAccessForPropertyName(l,r,e.visitNode(t.name,w,e.isPropertyName)),K(t,t,void 0,n));return e.setTextRange(a,t),i&&e.startOnNewLine(a),a}function we(r,n){if(8192&r.transformFlags||106===r.expression.kind||e.isSuperProperty(e.skipOuterExpressions(r.expression))){var i=l.createCallBinding(r.expression,m),a=i.target,o=i.thisArg;106===r.expression.kind&&e.setEmitFlags(o,4);var s=void 0;if(s=8192&r.transformFlags?l.createFunctionApplyCall(e.visitNode(a,E,e.isExpression),106===r.expression.kind?o:e.visitNode(o,w,e.isExpression),De(r.arguments,!1,!1,!1)):e.setTextRange(l.createFunctionCallCall(e.visitNode(a,E,e.isExpression),106===r.expression.kind?o:e.visitNode(o,w,e.isExpression),e.visitNodes(r.arguments,w,e.isExpression)),r),106===r.expression.kind){var c=l.createLogicalOr(s,I());s=n?l.createAssignment(l.createUniqueName("_this",48),c):c}return e.setOriginalNode(s,r)}return e.visitEachChild(r,w,t)}function De(t,r,n,i){var a=t.length,o=e.flatten(e.spanMap(t,Ee,(function(e,t,r,o){return t(e,n,i&&o===a)})));if(1===o.length){var s=o[0];if(!r&&!g.downlevelIteration||e.isPackedArrayLiteral(s)||e.isCallToHelper(s,"___spreadArray"))return o[0]}for(var c=u(),d=e.isSpreadElement(t[0]),p=d?l.createArrayLiteralExpression():o[0],f=d?0:1;f<o.length;f++)p=c.createSpreadArrayHelper(p,g.downlevelIteration&&!e.isPackedArrayLiteral(o[f])?c.createReadHelper(o[f],void 0):o[f]);return p}function Ee(t){return e.isSpreadElement(t)?Te:Ce}function Te(t){return e.map(t,Ae)}function Ce(t,r,n){return l.createArrayLiteralExpression(e.visitNodes(l.createNodeArray(t,n),w,e.isExpression),r)}function Ae(t){return e.visitNode(t.expression,w,e.isExpression)}function Ne(e){return 8&a&&!e?l.createPropertyAccessExpression(l.createUniqueName("_super",48),"prototype"):l.createUniqueName("_super",48)}function Pe(){2&c||(c|=2,t.enableSubstitution(78))}function Ie(){1&c||(c|=1,t.enableSubstitution(108),t.enableEmitNotification(167),t.enableEmitNotification(166),t.enableEmitNotification(168),t.enableEmitNotification(169),t.enableEmitNotification(210),t.enableEmitNotification(209),t.enableEmitNotification(253))}function Fe(t,r){return e.hasSyntacticModifier(r,32)?l.getInternalName(t):l.createPropertyAccessExpression(l.getInternalName(t),"prototype")}}}(d||(d={})),function(e){e.transformES5=function(t){var r,n,i=t.factory,a=t.getCompilerOptions();1!==a.jsx&&3!==a.jsx||(r=t.onEmitNode,t.onEmitNode=function(t,i,a){switch(i.kind){case 278:case 279:case 277:var o=i.tagName;n[e.getOriginalNodeId(o)]=!0}r(t,i,a)},t.enableEmitNotification(278),t.enableEmitNotification(279),t.enableEmitNotification(277),n=[]);var o=t.onSubstituteNode;return t.onSubstituteNode=function(t,r){if(r.id&&n&&n[r.id])return o(t,r);if(r=o(t,r),e.isPropertyAccessExpression(r))return function(t){if(e.isPrivateIdentifier(t.name))return t;var r=s(t.name);if(r)return e.setTextRange(i.createElementAccessExpression(t.expression,r),t);return t}(r);if(e.isPropertyAssignment(r))return function(t){var r=e.isIdentifier(t.name)&&s(t.name);if(r)return i.updatePropertyAssignment(t,r,t.initializer);return t}(r);return r},t.enableSubstitution(202),t.enableSubstitution(291),e.chainBundle(t,(function(e){return e}));function s(t){var r=t.originalKeywordKind||(e.nodeIsSynthesized(t)?e.stringToToken(e.idText(t)):void 0);if(void 0!==r&&r>=80&&r<=116)return e.setTextRange(i.createStringLiteralFromNode(t),t)}}}(d||(d={})),function(e){var t,r,n,a,o;!function(e){e[e.Nop=0]="Nop",e[e.Statement=1]="Statement",e[e.Assign=2]="Assign",e[e.Break=3]="Break",e[e.BreakWhenTrue=4]="BreakWhenTrue",e[e.BreakWhenFalse=5]="BreakWhenFalse",e[e.Yield=6]="Yield",e[e.YieldStar=7]="YieldStar",e[e.Return=8]="Return",e[e.Throw=9]="Throw",e[e.Endfinally=10]="Endfinally"}(t||(t={})),function(e){e[e.Open=0]="Open",e[e.Close=1]="Close"}(r||(r={})),function(e){e[e.Exception=0]="Exception",e[e.With=1]="With",e[e.Switch=2]="Switch",e[e.Loop=3]="Loop",e[e.Labeled=4]="Labeled"}(n||(n={})),function(e){e[e.Try=0]="Try",e[e.Catch=1]="Catch",e[e.Finally=2]="Finally",e[e.Done=3]="Done"}(a||(a={})),function(e){e[e.Next=0]="Next",e[e.Throw=1]="Throw",e[e.Return=2]="Return",e[e.Break=3]="Break",e[e.Yield=4]="Yield",e[e.YieldStar=5]="YieldStar",e[e.Catch=6]="Catch",e[e.Endfinally=7]="Endfinally"}(o||(o={})),e.transformGenerators=function(t){var r,n,a,o,s,c,l,u,d,p,f=t.factory,m=t.getEmitHelperFactory,g=t.resumeLexicalEnvironment,_=t.endLexicalEnvironment,h=t.hoistFunctionDeclaration,y=t.hoistVariableDeclaration,v=t.getCompilerOptions(),b=e.getEmitScriptTarget(v),k=t.getEmitResolver(),x=t.onSubstituteNode;t.onSubstituteNode=function(t,i){if(i=x(t,i),1===t)return function(t){if(e.isIdentifier(t))return function(t){if(!e.isGeneratedIdentifier(t)&&r&&r.has(e.idText(t))){var i=e.getOriginalNode(t);if(e.isIdentifier(i)&&i.parent){var a=k.getReferencedValueDeclaration(i);if(a){var o=n[e.getOriginalNodeId(a)];if(o){var s=e.setParent(e.setTextRange(f.cloneNode(o),o),o.parent);return e.setSourceMapRange(s,t),e.setCommentRange(s,t),s}}}}return t}(t);return t}(i);return i};var S,w,D,E,T,C,A,N,P,I,F,O,R=1,M=0,L=0;return e.chainBundle(t,(function(r){if(r.isDeclarationFile||!(512&r.transformFlags))return r;var n=e.visitEachChild(r,j,t);return e.addEmitHelpers(n,t.readEmitHelpers()),n}));function j(r){var n=r.transformFlags;return o?function(r){switch(r.kind){case 237:case 238:return function(r){return o?(oe(),r=e.visitEachChild(r,j,t),ce(),r):e.visitEachChild(r,j,t)}(r);case 246:return function(r){o&&re({kind:2,isScript:!0,breakLabel:-1});r=e.visitEachChild(r,j,t),o&&le();return r}(r);case 247:return function(r){o&&re({kind:4,isScript:!0,labelText:e.idText(r.label),breakLabel:-1});r=e.visitEachChild(r,j,t),o&&ue();return r}(r);default:return B(r)}}(r):a?B(r):e.isFunctionLikeDeclaration(r)&&r.asteriskToken?function(t){switch(t.kind){case 253:return z(t);case 209:return U(t);default:return e.Debug.failBadSyntaxKind(t)}}(r):512&n?e.visitEachChild(r,j,t):r}function B(r){switch(r.kind){case 253:return z(r);case 209:return U(r);case 168:case 169:return function(r){var n=a,i=o;return a=!1,o=!1,r=e.visitEachChild(r,j,t),a=n,o=i,r}(r);case 234:return function(t){if(262144&t.transformFlags)return void G(t.declarationList);if(1048576&e.getEmitFlags(t))return t;for(var r=0,n=t.declarationList.declarations;r<n.length;r++){var i=n[r];y(i.name)}var a=e.getInitializedVariables(t.declarationList);if(0===a.length)return;return e.setSourceMapRange(f.createExpressionStatement(f.inlineExpressions(e.map(a,$))),t)}(r);case 239:return function(r){o&&oe();var n=r.initializer;if(n&&e.isVariableDeclarationList(n)){for(var i=0,a=n.declarations;i<a.length;i++){var s=a[i];y(s.name)}var c=e.getInitializedVariables(n);r=f.updateForStatement(r,c.length>0?f.inlineExpressions(e.map(c,$)):void 0,e.visitNode(r.condition,j,e.isExpression),e.visitNode(r.incrementor,j,e.isExpression),e.visitNode(r.statement,j,e.isStatement,f.liftToBlock))}else r=e.visitEachChild(r,j,t);o&&ce();return r}(r);case 240:return function(r){o&&oe();var n=r.initializer;if(e.isVariableDeclarationList(n)){for(var i=0,a=n.declarations;i<a.length;i++){var s=a[i];y(s.name)}r=f.updateForInStatement(r,n.declarations[0].name,e.visitNode(r.expression,j,e.isExpression),e.visitNode(r.statement,j,e.isStatement,f.liftToBlock))}else r=e.visitEachChild(r,j,t);o&&ce();return r}(r);case 243:return function(r){if(o){var n=ge(r.label&&e.idText(r.label));if(n>0)return ve(n,r)}return e.visitEachChild(r,j,t)}(r);case 242:return function(r){if(o){var n=_e(r.label&&e.idText(r.label));if(n>0)return ve(n,r)}return e.visitEachChild(r,j,t)}(r);case 244:return function(t){return r=e.visitNode(t.expression,j,e.isExpression),n=t,e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression(r?[ye(2),r]:[ye(2)])),n);var r,n}(r);default:return 262144&r.transformFlags?function(r){switch(r.kind){case 218:return function(r){var n=e.getExpressionAssociativity(r);switch(n){case 0:return function(r){if(Y(r.right))return e.isLogicalOperator(r.operatorToken.kind)?function(t){var r=ee(),n=Z();xe(n,e.visitNode(t.left,j,e.isExpression),t.left),55===t.operatorToken.kind?De(r,n,t.left):we(r,n,t.left);return xe(n,e.visitNode(t.right,j,e.isExpression),t.right),te(r),n}(r):27===r.operatorToken.kind?J(r):f.updateBinaryExpression(r,Q(e.visitNode(r.left,j,e.isExpression)),r.operatorToken,e.visitNode(r.right,j,e.isExpression));return e.visitEachChild(r,j,t)}(r);case 1:return function(r){var n=r.left,i=r.right;if(Y(i)){var a=void 0;switch(n.kind){case 202:a=f.updatePropertyAccessExpression(n,Q(e.visitNode(n.expression,j,e.isLeftHandSideExpression)),n.name);break;case 203:a=f.updateElementAccessExpression(n,Q(e.visitNode(n.expression,j,e.isLeftHandSideExpression)),Q(e.visitNode(n.argumentExpression,j,e.isExpression)));break;default:a=e.visitNode(n,j,e.isExpression)}var o=r.operatorToken.kind;return e.isCompoundAssignment(o)?e.setTextRange(f.createAssignment(a,e.setTextRange(f.createBinaryExpression(Q(a),e.getNonAssignmentOperatorForCompoundAssignment(o),e.visitNode(i,j,e.isExpression)),r)),r):f.updateBinaryExpression(r,a,r.operatorToken,e.visitNode(i,j,e.isExpression))}return e.visitEachChild(r,j,t)}(r);default:return e.Debug.assertNever(n)}}(r);case 340:return function(t){for(var r=[],n=0,i=t.elements;n<i.length;n++){var a=i[n];e.isBinaryExpression(a)&&27===a.operatorToken.kind?r.push(J(a)):(Y(a)&&r.length>0&&(Ee(1,[f.createExpressionStatement(f.inlineExpressions(r))]),r=[]),r.push(e.visitNode(a,j,e.isExpression)))}return f.inlineExpressions(r)}(r);case 219:return function(r){if(Y(r.whenTrue)||Y(r.whenFalse)){var n=ee(),i=ee(),a=Z();return De(n,e.visitNode(r.condition,j,e.isExpression),r.condition),xe(a,e.visitNode(r.whenTrue,j,e.isExpression),r.whenTrue),Se(i),te(n),xe(a,e.visitNode(r.whenFalse,j,e.isExpression),r.whenFalse),te(i),a}return e.visitEachChild(r,j,t)}(r);case 221:return function(t){var r=ee(),n=e.visitNode(t.expression,j,e.isExpression);if(t.asteriskToken){!function(e,t){Ee(7,[e],t)}(8388608&e.getEmitFlags(t.expression)?n:e.setTextRange(m().createValuesHelper(n),t),t)}else!function(e,t){Ee(6,[e],t)}(n,t);return te(r),function(t){return e.setTextRange(f.createCallExpression(f.createPropertyAccessExpression(E,"sent"),void 0,[]),t)}(t)}(r);case 200:return function(e){return V(e.elements,void 0,void 0,e.multiLine)}(r);case 201:return function(t){var r=t.properties,n=t.multiLine,i=X(r),a=Z();xe(a,f.createObjectLiteralExpression(e.visitNodes(r,j,e.isObjectLiteralElementLike,0,i),n));var o=e.reduceLeft(r,s,[],i);return o.push(n?e.startOnNewLine(e.setParent(e.setTextRange(f.cloneNode(a),a),a.parent)):a),f.inlineExpressions(o);function s(r,i){Y(i)&&r.length>0&&(ke(f.createExpressionStatement(f.inlineExpressions(r))),r=[]);var o=e.createExpressionForObjectLiteralElementLike(f,t,i,a),s=e.visitNode(o,j,e.isExpression);return s&&(n&&e.startOnNewLine(s),r.push(s)),r}}(r);case 203:return function(r){if(Y(r.argumentExpression))return f.updateElementAccessExpression(r,Q(e.visitNode(r.expression,j,e.isLeftHandSideExpression)),e.visitNode(r.argumentExpression,j,e.isExpression));return e.visitEachChild(r,j,t)}(r);case 204:return function(r){if(!e.isImportCall(r)&&e.forEach(r.arguments,Y)){var n=f.createCallBinding(r.expression,y,b,!0),i=n.target,a=n.thisArg;return e.setOriginalNode(e.setTextRange(f.createFunctionApplyCall(Q(e.visitNode(i,j,e.isLeftHandSideExpression)),a,V(r.arguments)),r),r)}return e.visitEachChild(r,j,t)}(r);case 205:return function(r){if(e.forEach(r.arguments,Y)){var n=f.createCallBinding(f.createPropertyAccessExpression(r.expression,"bind"),y),i=n.target,a=n.thisArg;return e.setOriginalNode(e.setTextRange(f.createNewExpression(f.createFunctionApplyCall(Q(e.visitNode(i,j,e.isExpression)),a,V(r.arguments,f.createVoidZero())),void 0,[]),r),r)}return e.visitEachChild(r,j,t)}(r);default:return e.visitEachChild(r,j,t)}}(r):1049088&r.transformFlags?e.visitEachChild(r,j,t):r}}function z(r){if(r.asteriskToken)r=e.setOriginalNode(e.setTextRange(f.createFunctionDeclaration(void 0,r.modifiers,void 0,r.name,void 0,e.visitParameterList(r.parameters,j,t),void 0,q(r.body)),r),r);else{var n=a,i=o;a=!1,o=!1,r=e.visitEachChild(r,j,t),a=n,o=i}return a?void h(r):r}function U(r){if(r.asteriskToken)r=e.setOriginalNode(e.setTextRange(f.createFunctionExpression(void 0,void 0,r.name,void 0,e.visitParameterList(r.parameters,j,t),void 0,q(r.body)),r),r);else{var n=a,i=o;a=!1,o=!1,r=e.visitEachChild(r,j,t),a=n,o=i}return r}function q(t){var r=[],n=a,i=o,m=s,h=c,y=l,v=u,b=d,k=p,x=R,T=S,C=w,A=D,N=E;a=!0,o=!1,s=void 0,c=void 0,l=void 0,u=void 0,d=void 0,p=void 0,R=1,S=void 0,w=void 0,D=void 0,E=f.createTempVariable(void 0),g();var P=f.copyPrologue(t.statements,r,!1,j);H(t.statements,P);var I=Te();return e.insertStatementsAfterStandardPrologue(r,_()),r.push(f.createReturnStatement(I)),a=n,o=i,s=m,c=h,l=y,u=v,d=b,p=k,R=x,S=T,w=C,D=A,E=N,e.setTextRange(f.createBlock(r,t.multiLine),t)}function J(t){var r=[];return n(t.left),n(t.right),f.inlineExpressions(r);function n(t){e.isBinaryExpression(t)&&27===t.operatorToken.kind?(n(t.left),n(t.right)):(Y(t)&&r.length>0&&(Ee(1,[f.createExpressionStatement(f.inlineExpressions(r))]),r=[]),r.push(e.visitNode(t,j,e.isExpression)))}}function V(t,r,n,a){var o,s=X(t);if(s>0){o=Z();var c=e.visitNodes(t,j,e.isExpression,0,s);xe(o,f.createArrayLiteralExpression(r?i([r],c):c)),r=void 0}var l=e.reduceLeft(t,(function(t,n){if(Y(n)&&t.length>0){var s=void 0!==o;o||(o=Z()),xe(o,s?f.createArrayConcatCall(o,[f.createArrayLiteralExpression(t,a)]):f.createArrayLiteralExpression(r?i([r],t):t,a)),r=void 0,t=[]}return t.push(e.visitNode(n,j,e.isExpression)),t}),[],s);return o?f.createArrayConcatCall(o,[f.createArrayLiteralExpression(l,a)]):e.setTextRange(f.createArrayLiteralExpression(r?i([r],l):l,a),n)}function H(e,t){void 0===t&&(t=0);for(var r=e.length,n=t;n<r;n++)W(e[n])}function K(t){e.isBlock(t)?H(t.statements):W(t)}function W(i){var a=o;o||(o=Y(i)),function(i){switch(i.kind){case 232:return function(t){Y(t)?H(t.statements):ke(e.visitNode(t,j,e.isStatement))}(i);case 235:return function(t){ke(e.visitNode(t,j,e.isStatement))}(i);case 236:return function(t){if(Y(t))if(Y(t.thenStatement)||Y(t.elseStatement)){var r=ee(),n=t.elseStatement?ee():void 0;De(t.elseStatement?n:r,e.visitNode(t.expression,j,e.isExpression),t.expression),K(t.thenStatement),t.elseStatement&&(Se(r),te(n),K(t.elseStatement)),te(r)}else ke(e.visitNode(t,j,e.isStatement));else ke(e.visitNode(t,j,e.isStatement))}(i);case 237:return function(t){if(Y(t)){var r=ee(),n=ee();se(r),te(n),K(t.statement),te(r),we(n,e.visitNode(t.expression,j,e.isExpression)),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 238:return function(t){if(Y(t)){var r=ee(),n=se(r);te(r),De(n,e.visitNode(t.expression,j,e.isExpression)),K(t.statement),Se(r),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 239:return function(t){if(Y(t)){var r=ee(),n=ee(),i=se(n);if(t.initializer){var a=t.initializer;e.isVariableDeclarationList(a)?G(a):ke(e.setTextRange(f.createExpressionStatement(e.visitNode(a,j,e.isExpression)),a))}te(r),t.condition&&De(i,e.visitNode(t.condition,j,e.isExpression)),K(t.statement),te(n),t.incrementor&&ke(e.setTextRange(f.createExpressionStatement(e.visitNode(t.incrementor,j,e.isExpression)),t.incrementor)),Se(r),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 240:return function(t){if(Y(t)){var r=Z(),n=Z(),i=f.createLoopVariable(),a=t.initializer;y(i),xe(r,f.createArrayLiteralExpression()),ke(f.createForInStatement(n,e.visitNode(t.expression,j,e.isExpression),f.createExpressionStatement(f.createCallExpression(f.createPropertyAccessExpression(r,"push"),void 0,[n])))),xe(i,f.createNumericLiteral(0));var o=ee(),s=ee(),c=se(s);te(o),De(c,f.createLessThan(i,f.createPropertyAccessExpression(r,"length")));var l=void 0;if(e.isVariableDeclarationList(a)){for(var u=0,d=a.declarations;u<d.length;u++){var p=d[u];y(p.name)}l=f.cloneNode(a.declarations[0].name)}else l=e.visitNode(a,j,e.isExpression),e.Debug.assert(e.isLeftHandSideExpression(l));xe(l,f.createElementAccessExpression(r,i)),K(t.statement),te(s),ke(f.createExpressionStatement(f.createPostfixIncrement(i))),Se(o),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 242:return function(t){var r=_e(t.label?e.idText(t.label):void 0);r>0?Se(r,t):ke(t)}(i);case 243:return function(t){var r=ge(t.label?e.idText(t.label):void 0);r>0?Se(r,t):ke(t)}(i);case 244:return function(t){r=e.visitNode(t.expression,j,e.isExpression),n=t,Ee(8,[r],n);var r,n}(i);case 245:return function(t){Y(t)?(r=Q(e.visitNode(t.expression,j,e.isExpression)),n=ee(),i=ee(),te(n),re({kind:1,expression:r,startLabel:n,endLabel:i}),K(t.statement),e.Debug.assert(1===ae()),te(ne().endLabel)):ke(e.visitNode(t,j,e.isStatement));var r,n,i}(i);case 246:return function(t){if(Y(t.caseBlock)){for(var r=t.caseBlock,n=r.clauses.length,i=(re({kind:2,isScript:!1,breakLabel:m=ee()}),m),a=Q(e.visitNode(t.expression,j,e.isExpression)),o=[],s=-1,c=0;c<n;c++){var l=r.clauses[c];o.push(ee()),288===l.kind&&-1===s&&(s=c)}for(var u=0,d=[];u<n;){var p=0;for(c=u;c<n;c++){if(287===(l=r.clauses[c]).kind){if(Y(l.expression)&&d.length>0)break;d.push(f.createCaseClause(e.visitNode(l.expression,j,e.isExpression),[ve(o[c],l.expression)]))}else p++}d.length&&(ke(f.createSwitchStatement(a,f.createCaseBlock(d))),u+=d.length,d=[]),p>0&&(u+=p,p=0)}Se(s>=0?o[s]:i);for(c=0;c<n;c++)te(o[c]),H(r.clauses[c].statements);le()}else ke(e.visitNode(t,j,e.isStatement));var m}(i);case 247:return function(t){Y(t)?(r=e.idText(t.label),n=ee(),re({kind:4,isScript:!1,labelText:r,breakLabel:n}),K(t.statement),ue()):ke(e.visitNode(t,j,e.isStatement));var r,n}(i);case 248:return function(t){var r;n=e.visitNode(null!==(r=t.expression)&&void 0!==r?r:f.createVoidZero(),j,e.isExpression),i=t,Ee(9,[n],i);var n,i}(i);case 249:return function(i){Y(i)?(a=ee(),o=ee(),te(a),re({kind:0,state:0,startLabel:a,endLabel:o}),be(),K(i.tryBlock),i.catchClause&&(!function(i){var a;if(e.Debug.assert(0===ae()),e.isGeneratedIdentifier(i.name))a=i.name,y(i.name);else{var o=e.idText(i.name);a=Z(o),r||(r=new e.Map,n=[],t.enableSubstitution(78)),r.set(o,!0),n[e.getOriginalNodeId(i)]=a}var s=ie();e.Debug.assert(s.state<1);var c=s.endLabel;Se(c);var l=ee();te(l),s.state=1,s.catchVariable=a,s.catchLabel=l,xe(a,f.createCallExpression(f.createPropertyAccessExpression(E,"sent"),void 0,[])),be()}(i.catchClause.variableDeclaration),K(i.catchClause.block)),i.finallyBlock&&(!function(){e.Debug.assert(0===ae());var t=ie();e.Debug.assert(t.state<2);var r=t.endLabel;Se(r);var n=ee();te(n),t.state=2,t.finallyLabel=n}(),K(i.finallyBlock)),function(){e.Debug.assert(0===ae());var t=ne(),r=t.state;r<2?Se(t.endLabel):Ee(10);te(t.endLabel),be(),t.state=3}()):ke(e.visitEachChild(i,j,t));var a,o}(i);default:ke(e.visitNode(i,j,e.isStatement))}}(i),o=a}function G(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r],a=f.cloneNode(i.name);e.setCommentRange(a,i.name),y(a)}for(var o=e.getInitializedVariables(t),s=o.length,c=0,l=[];c<s;){for(var u=c;u<s;u++){if(Y((i=o[u]).initializer)&&l.length>0)break;l.push($(i))}l.length&&(ke(f.createExpressionStatement(f.inlineExpressions(l))),c+=l.length,l=[])}}function $(t){return e.setSourceMapRange(f.createAssignment(e.setSourceMapRange(f.cloneNode(t.name),t.name),e.visitNode(t.initializer,j,e.isExpression)),t)}function Y(e){return!!e&&!!(262144&e.transformFlags)}function X(e){for(var t=e.length,r=0;r<t;r++)if(Y(e[r]))return r;return-1}function Q(t){if(e.isGeneratedIdentifier(t)||4096&e.getEmitFlags(t))return t;var r=f.createTempVariable(y);return xe(r,t,t),r}function Z(e){var t=e?f.createUniqueName(e):f.createTempVariable(void 0);return y(t),t}function ee(){d||(d=[]);var e=R;return R++,d[e]=-1,e}function te(t){e.Debug.assert(void 0!==d,"No labels were defined."),d[t]=S?S.length:0}function re(e){s||(s=[],l=[],c=[],u=[]);var t=l.length;return l[t]=0,c[t]=S?S.length:0,s[t]=e,u.push(e),t}function ne(){var t=ie();if(void 0===t)return e.Debug.fail("beginBlock was never called.");var r=l.length;return l[r]=1,c[r]=S?S.length:0,s[r]=t,u.pop(),t}function ie(){return e.lastOrUndefined(u)}function ae(){var e=ie();return e&&e.kind}function oe(){re({kind:3,isScript:!0,breakLabel:-1,continueLabel:-1})}function se(e){var t=ee();return re({kind:3,isScript:!1,breakLabel:t,continueLabel:e}),t}function ce(){e.Debug.assert(3===ae());var t=ne(),r=t.breakLabel;t.isScript||te(r)}function le(){e.Debug.assert(2===ae());var t=ne(),r=t.breakLabel;t.isScript||te(r)}function ue(){e.Debug.assert(4===ae());var t=ne();t.isScript||te(t.breakLabel)}function de(e){return 2===e.kind||3===e.kind}function pe(e){return 4===e.kind}function fe(e){return 3===e.kind}function me(e,t){for(var r=t;r>=0;r--){var n=u[r];if(!pe(n))break;if(n.labelText===e)return!0}return!1}function ge(e){if(u)if(e)for(var t=u.length-1;t>=0;t--){if(pe(r=u[t])&&r.labelText===e)return r.breakLabel;if(de(r)&&me(e,t-1))return r.breakLabel}else for(t=u.length-1;t>=0;t--){var r;if(de(r=u[t]))return r.breakLabel}return 0}function _e(e){if(u)if(e)for(var t=u.length-1;t>=0;t--){if(fe(r=u[t])&&me(e,t-1))return r.continueLabel}else for(t=u.length-1;t>=0;t--){var r;if(fe(r=u[t]))return r.continueLabel}return 0}function he(e){if(void 0!==e&&e>0){void 0===p&&(p=[]);var t=f.createNumericLiteral(-1);return void 0===p[e]?p[e]=[t]:p[e].push(t),t}return f.createOmittedExpression()}function ye(t){var r=f.createNumericLiteral(t);return e.addSyntheticTrailingComment(r,3,function(e){switch(e){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}(t)),r}function ve(t,r){return e.Debug.assertLessThan(0,t,"Invalid label"),e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),r)}function be(){Ee(0)}function ke(e){e?Ee(1,[e]):be()}function xe(e,t,r){Ee(2,[e,t],r)}function Se(e,t){Ee(3,[e],t)}function we(e,t,r){Ee(4,[e,t],r)}function De(e,t,r){Ee(5,[e,t],r)}function Ee(e,t,r){void 0===S&&(S=[],w=[],D=[]),void 0===d&&te(ee());var n=S.length;S[n]=e,w[n]=t,D[n]=r}function Te(){M=0,L=0,T=void 0,C=!1,A=!1,N=void 0,P=void 0,I=void 0,F=void 0,O=void 0;var t=function(){if(S){for(var t=0;t<S.length;t++)Pe(t);Ce(S.length)}else Ce(0);if(N){var r=f.createPropertyAccessExpression(E,"label"),n=f.createSwitchStatement(r,f.createCaseBlock(N));return[e.startOnNewLine(n)]}if(P)return P;return[]}();return m().createGeneratorHelper(e.setEmitFlags(f.createFunctionExpression(void 0,void 0,void 0,void 0,[f.createParameterDeclaration(void 0,void 0,void 0,E)],void 0,f.createBlock(t,t.length>0)),524288))}function Ce(e){(function(e){if(!A)return!0;if(!d||!p)return!1;for(var t=0;t<d.length;t++)if(d[t]===e&&p[t])return!0;return!1})(e)&&(Ne(e),O=void 0,Fe(void 0,void 0)),P&&N&&Ae(!1),function(){if(void 0!==p&&void 0!==T)for(var e=0;e<T.length;e++){var t=T[e];if(void 0!==t)for(var r=0,n=t;r<n.length;r++){var i=n[r],a=p[i];if(void 0!==a)for(var o=0,s=a;o<s.length;o++){s[o].text=String(e)}}}}()}function Ae(e){if(N||(N=[]),P){if(O)for(var t=O.length-1;t>=0;t--){var r=O[t];P=[f.createWithStatement(r.expression,f.createBlock(P))]}if(F){var n=F.startLabel,i=F.catchLabel,a=F.finallyLabel,o=F.endLabel;P.unshift(f.createExpressionStatement(f.createCallExpression(f.createPropertyAccessExpression(f.createPropertyAccessExpression(E,"trys"),"push"),void 0,[f.createArrayLiteralExpression([he(n),he(i),he(a),he(o)])]))),F=void 0}e&&P.push(f.createExpressionStatement(f.createAssignment(f.createPropertyAccessExpression(E,"label"),f.createNumericLiteral(L+1))))}N.push(f.createCaseClause(f.createNumericLiteral(L),P||[])),P=void 0}function Ne(e){if(d)for(var t=0;t<d.length;t++)d[t]===e&&(P&&(Ae(!C),C=!1,A=!1,L++),void 0===T&&(T=[]),void 0===T[L]?T[L]=[t]:T[L].push(t))}function Pe(t){if(Ne(t),function(e){if(s)for(;M<l.length&&c[M]<=e;M++){var t=s[M],r=l[M];switch(t.kind){case 0:0===r?(I||(I=[]),P||(P=[]),I.push(F),F=t):1===r&&(F=I.pop());break;case 1:0===r?(O||(O=[]),O.push(t)):1===r&&O.pop()}}}(t),!C){C=!1,A=!1;var r=S[t];if(0!==r){if(10===r)return C=!0,void Ie(f.createReturnStatement(f.createArrayLiteralExpression([ye(7)])));var n=w[t];if(1===r)return Ie(n[0]);var i,a,o,u=D[t];switch(r){case 2:return i=n[0],a=n[1],o=u,void Ie(e.setTextRange(f.createExpressionStatement(f.createAssignment(i,a)),o));case 3:return function(t,r){C=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),r),384))}(n[0],u);case 4:return function(t,r,n){Ie(e.setEmitFlags(f.createIfStatement(r,e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),n),384)),1))}(n[0],n[1],u);case 5:return function(t,r,n){Ie(e.setEmitFlags(f.createIfStatement(f.createLogicalNot(r),e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),n),384)),1))}(n[0],n[1],u);case 6:return function(t,r){C=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression(t?[ye(4),t]:[ye(4)])),r),384))}(n[0],u);case 7:return function(t,r){C=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(5),t])),r),384))}(n[0],u);case 8:return Fe(n[0],u);case 9:return function(t,r){C=!0,A=!0,Ie(e.setTextRange(f.createThrowStatement(t),r))}(n[0],u)}}}}function Ie(e){e&&(P?P.push(e):P=[e])}function Fe(t,r){C=!0,A=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression(t?[ye(2),t]:[ye(2)])),r),384))}}}(d||(d={})),function(e){e.transformModule=function(r){var n=r.factory,a=r.getEmitHelperFactory,o=r.startLexicalEnvironment,s=r.endLexicalEnvironment,c=r.hoistVariableDeclaration,l=r.getCompilerOptions(),u=r.getEmitResolver(),d=r.getEmitHost(),p=e.getEmitScriptTarget(l),f=e.getEmitModuleKind(l),m=r.onSubstituteNode,g=r.onEmitNode;r.onSubstituteNode=function(t,r){if((r=m(t,r)).id&&y[r.id])return r;if(1===t)return function(t){switch(t.kind){case 78:return Y(t);case 218:return function(t){if(e.isAssignmentOperator(t.operatorToken.kind)&&e.isIdentifier(t.left)&&!e.isGeneratedIdentifier(t.left)&&!e.isLocalName(t.left)&&!e.isDeclarationNameOfEnumOrNamespace(t.left)){var r=X(t.left);if(r){for(var n=t,i=0,a=r;i<a.length;i++){var o=a[i];y[e.getNodeId(n)]=!0,n=G(o,n,t)}return n}}return t}(t);case 217:case 216:return function(t){if((45===t.operator||46===t.operator)&&e.isIdentifier(t.operand)&&!e.isGeneratedIdentifier(t.operand)&&!e.isLocalName(t.operand)&&!e.isDeclarationNameOfEnumOrNamespace(t.operand)){var r=X(t.operand);if(r){for(var i=217===t.kind?e.setTextRange(n.createBinaryExpression(t.operand,n.createToken(45===t.operator?63:64),n.createNumericLiteral(1)),t):t,a=0,o=r;a<o.length;a++){var s=o[a];y[e.getNodeId(i)]=!0,i=n.createParenthesizedExpression(G(s,i))}return i}}return t}(t)}return t}(r);if(e.isShorthandPropertyAssignment(r))return function(t){var r=t.name,i=Y(r);if(i!==r){if(t.objectAssignmentInitializer){var a=n.createAssignment(i,t.objectAssignmentInitializer);return e.setTextRange(n.createPropertyAssignment(r,a),t)}return e.setTextRange(n.createPropertyAssignment(r,i),t)}return t}(r);return r},r.onEmitNode=function(t,r,n){300===r.kind?(_=r,h=b[e.getOriginalNodeId(_)],y=[],g(t,r,n),_=void 0,h=void 0,y=void 0):g(t,r,n)},r.enableSubstitution(78),r.enableSubstitution(218),r.enableSubstitution(216),r.enableSubstitution(217),r.enableSubstitution(292),r.enableEmitNotification(300);var _,h,y,v,b=[],k=[];return e.chainBundle(r,(function(t){if(t.isDeclarationFile||!(e.isEffectiveExternalModule(t,l)||2097152&t.transformFlags||e.isJsonSourceFile(t)&&e.hasJsonModuleEmitEnabled(l)&&e.outFile(l)))return t;_=t,h=e.collectExternalModuleInfo(r,t,u,l),b[e.getOriginalNodeId(t)]=h;var n=function(t){switch(t){case e.ModuleKind.AMD:return w;case e.ModuleKind.UMD:return D;default:return S}}(f),i=n(t);return _=void 0,h=void 0,v=!1,i}));function x(){return!(h.exportEquals||!e.isExternalModule(_))}function S(t){o();var i=[],a=e.getStrictOptionValue(l,"alwaysStrict")||!l.noImplicitUseStrict&&e.isExternalModule(_),c=n.copyPrologue(t.statements,i,a&&!e.isJsonSourceFile(t),N);if(x()&&e.append(i,W()),e.length(h.exportedNames))for(var u=0;u<h.exportedNames.length;u+=50)e.append(i,n.createExpressionStatement(e.reduceLeft(h.exportedNames.slice(u,u+50),(function(t,r){return n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.createIdentifier(e.idText(r))),t)}),n.createVoidZero())));e.append(i,e.visitNode(h.externalHelpersImportDeclaration,N,e.isStatement)),e.addRange(i,e.visitNodes(t.statements,N,e.isStatement,c)),A(i,!1),e.insertStatementsAfterStandardPrologue(i,s());var d=n.updateSourceFile(t,e.setTextRange(n.createNodeArray(i),t.statements));return e.addEmitHelpers(d,r.readEmitHelpers()),d}function w(t){var a=n.createIdentifier("define"),o=e.tryGetModuleNameFromFile(n,t,d,l),s=e.isJsonSourceFile(t)&&t,c=E(t,!0),u=c.aliasedModuleNames,p=c.unaliasedModuleNames,f=c.importAliasNames,m=n.updateSourceFile(t,e.setTextRange(n.createNodeArray([n.createExpressionStatement(n.createCallExpression(a,void 0,i(i([],o?[o]:[]),[n.createArrayLiteralExpression(s?e.emptyArray:i(i([n.createStringLiteral("require"),n.createStringLiteral("exports")],u),p)),s?s.statements.length?s.statements[0].expression:n.createObjectLiteralExpression():n.createFunctionExpression(void 0,void 0,void 0,void 0,i([n.createParameterDeclaration(void 0,void 0,void 0,"require"),n.createParameterDeclaration(void 0,void 0,void 0,"exports")],f),void 0,C(t))])))]),t.statements));return e.addEmitHelpers(m,r.readEmitHelpers()),m}function D(t){var a=E(t,!1),o=a.aliasedModuleNames,s=a.unaliasedModuleNames,c=a.importAliasNames,u=e.tryGetModuleNameFromFile(n,t,d,l),p=n.createFunctionExpression(void 0,void 0,void 0,void 0,[n.createParameterDeclaration(void 0,void 0,void 0,"factory")],void 0,e.setTextRange(n.createBlock([n.createIfStatement(n.createLogicalAnd(n.createTypeCheck(n.createIdentifier("module"),"object"),n.createTypeCheck(n.createPropertyAccessExpression(n.createIdentifier("module"),"exports"),"object")),n.createBlock([n.createVariableStatement(void 0,[n.createVariableDeclaration("v",void 0,void 0,n.createCallExpression(n.createIdentifier("factory"),void 0,[n.createIdentifier("require"),n.createIdentifier("exports")]))]),e.setEmitFlags(n.createIfStatement(n.createStrictInequality(n.createIdentifier("v"),n.createIdentifier("undefined")),n.createExpressionStatement(n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("module"),"exports"),n.createIdentifier("v")))),1)]),n.createIfStatement(n.createLogicalAnd(n.createTypeCheck(n.createIdentifier("define"),"function"),n.createPropertyAccessExpression(n.createIdentifier("define"),"amd")),n.createBlock([n.createExpressionStatement(n.createCallExpression(n.createIdentifier("define"),void 0,i(i([],u?[u]:[]),[n.createArrayLiteralExpression(i(i([n.createStringLiteral("require"),n.createStringLiteral("exports")],o),s)),n.createIdentifier("factory")])))])))],!0),void 0)),f=n.updateSourceFile(t,e.setTextRange(n.createNodeArray([n.createExpressionStatement(n.createCallExpression(p,void 0,[n.createFunctionExpression(void 0,void 0,void 0,void 0,i([n.createParameterDeclaration(void 0,void 0,void 0,"require"),n.createParameterDeclaration(void 0,void 0,void 0,"exports")],c),void 0,C(t))]))]),t.statements));return e.addEmitHelpers(f,r.readEmitHelpers()),f}function E(t,r){for(var i=[],a=[],o=[],s=0,c=t.amdDependencies;s<c.length;s++){var p=c[s];p.name?(i.push(n.createStringLiteral(p.path)),o.push(n.createParameterDeclaration(void 0,void 0,void 0,p.name))):a.push(n.createStringLiteral(p.path))}for(var f=0,m=h.externalImports;f<m.length;f++){var g=m[f],y=e.getExternalModuleNameLiteral(n,g,_,d,u,l),v=e.getLocalNameForExternalImport(n,g,_);y&&(r&&v?(e.setEmitFlags(v,4),i.push(y),o.push(n.createParameterDeclaration(void 0,void 0,void 0,v))):a.push(y))}return{aliasedModuleNames:i,unaliasedModuleNames:a,importAliasNames:o}}function T(t){if(!e.isImportEqualsDeclaration(t)&&!e.isExportDeclaration(t)&&e.getExternalModuleNameLiteral(n,t,_,d,u,l)){var r=e.getLocalNameForExternalImport(n,t,_),i=R(t,r);if(i!==r)return n.createExpressionStatement(n.createAssignment(r,i))}}function C(r){o();var i=[],a=n.copyPrologue(r.statements,i,!l.noImplicitUseStrict,N);x()&&e.append(i,W()),e.length(h.exportedNames)&&e.append(i,n.createExpressionStatement(e.reduceLeft(h.exportedNames,(function(t,r){return n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.createIdentifier(e.idText(r))),t)}),n.createVoidZero()))),e.append(i,e.visitNode(h.externalHelpersImportDeclaration,N,e.isStatement)),f===e.ModuleKind.AMD&&e.addRange(i,e.mapDefined(h.externalImports,T)),e.addRange(i,e.visitNodes(r.statements,N,e.isStatement,a)),A(i,!0),e.insertStatementsAfterStandardPrologue(i,s());var c=n.createBlock(i,!0);return v&&e.addEmitHelper(c,t),c}function A(t,r){if(h.exportEquals){var i=e.visitNode(h.exportEquals.expression,P);if(i)if(r){var a=n.createReturnStatement(i);e.setTextRange(a,h.exportEquals),e.setEmitFlags(a,1920),t.push(a)}else{a=n.createExpressionStatement(n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("module"),"exports"),i));e.setTextRange(a,h.exportEquals),e.setEmitFlags(a,1536),t.push(a)}}}function N(t){switch(t.kind){case 264:return function(t){var r,i=e.getNamespaceDeclarationNode(t);if(f!==e.ModuleKind.AMD){if(!t.importClause)return e.setOriginalNode(e.setTextRange(n.createExpressionStatement(M(t)),t),t);var a=[];i&&!e.isDefaultImport(t)?a.push(n.createVariableDeclaration(n.cloneNode(i.name),void 0,void 0,R(t,M(t)))):(a.push(n.createVariableDeclaration(n.getGeneratedNameForNode(t),void 0,void 0,R(t,M(t)))),i&&e.isDefaultImport(t)&&a.push(n.createVariableDeclaration(n.cloneNode(i.name),void 0,void 0,n.getGeneratedNameForNode(t)))),r=e.append(r,e.setOriginalNode(e.setTextRange(n.createVariableStatement(void 0,n.createVariableDeclarationList(a,p>=2?2:0)),t),t))}else i&&e.isDefaultImport(t)&&(r=e.append(r,n.createVariableStatement(void 0,n.createVariableDeclarationList([e.setOriginalNode(e.setTextRange(n.createVariableDeclaration(n.cloneNode(i.name),void 0,void 0,n.getGeneratedNameForNode(t)),t),t)],p>=2?2:0))));if(B(t)){var o=e.getOriginalNodeId(t);k[o]=z(k[o],t)}else r=z(r,t);return e.singleOrMany(r)}(t);case 263:return function(t){var r;e.Debug.assert(e.isExternalModuleImportEqualsDeclaration(t),"import= for internal module references should be handled in an earlier transformer."),f!==e.ModuleKind.AMD?r=e.hasSyntacticModifier(t,1)?e.append(r,e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(t.name,M(t))),t),t)):e.append(r,e.setOriginalNode(e.setTextRange(n.createVariableStatement(void 0,n.createVariableDeclarationList([n.createVariableDeclaration(n.cloneNode(t.name),void 0,void 0,M(t))],p>=2?2:0)),t),t)):e.hasSyntacticModifier(t,1)&&(r=e.append(r,e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(n.getExportName(t),n.getLocalName(t))),t),t)));if(B(t)){var i=e.getOriginalNodeId(t);k[i]=U(k[i],t)}else r=U(r,t);return e.singleOrMany(r)}(t);case 270:return function(t){if(!t.moduleSpecifier)return;var r=n.getGeneratedNameForNode(t);if(t.exportClause&&e.isNamedExports(t.exportClause)){var i=[];f!==e.ModuleKind.AMD&&i.push(e.setOriginalNode(e.setTextRange(n.createVariableStatement(void 0,n.createVariableDeclarationList([n.createVariableDeclaration(r,void 0,void 0,M(t))])),t),t));for(var o=0,s=t.exportClause.elements;o<s.length;o++){var c=s[o];if(0===p)i.push(e.setOriginalNode(e.setTextRange(n.createExpressionStatement(a().createCreateBindingHelper(r,n.createStringLiteralFromNode(c.propertyName||c.name),c.propertyName?n.createStringLiteralFromNode(c.name):void 0)),c),c));else{var u=!(!l.esModuleInterop||67108864&e.getEmitFlags(t)||"default"!==e.idText(c.propertyName||c.name)),d=n.createPropertyAccessExpression(u?a().createImportDefaultHelper(r):r,c.propertyName||c.name);i.push(e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(n.getExportName(c),d,void 0,!0)),c),c))}}return e.singleOrMany(i)}return t.exportClause?((i=[]).push(e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(n.cloneNode(t.exportClause.name),function(t,r){if(!l.esModuleInterop||67108864&e.getEmitFlags(t))return r;if(e.getExportNeedsImportStarHelper(t))return a().createImportStarHelper(r);return r}(t,f!==e.ModuleKind.AMD?M(t):e.isExportNamespaceAsDefaultDeclaration(t)?r:n.createIdentifier(e.idText(t.exportClause.name))))),t),t)),e.singleOrMany(i)):e.setOriginalNode(e.setTextRange(n.createExpressionStatement(a().createExportStarHelper(f!==e.ModuleKind.AMD?M(t):r)),t),t)}(t);case 269:return function(t){if(t.isExportEquals)return;var r,i=t.original;if(i&&B(i)){var a=e.getOriginalNodeId(t);k[a]=K(k[a],n.createIdentifier("default"),e.visitNode(t.expression,P),t,!0)}else r=K(r,n.createIdentifier("default"),e.visitNode(t.expression,P),t,!0);return e.singleOrMany(r)}(t);case 234:return function(t){var i,a,o;if(e.hasSyntacticModifier(t,1)){for(var s=void 0,c=!1,l=0,u=t.declarationList.declarations;l<u.length;l++){var d=u[l];if(e.isIdentifier(d.name)&&e.isLocalName(d.name))s||(s=e.visitNodes(t.modifiers,$,e.isModifier)),a=e.append(a,d);else if(d.initializer)if(!e.isBindingPattern(d.name)&&(e.isArrowFunction(d.initializer)||e.isFunctionExpression(d.initializer)||e.isClassExpression(d.initializer))){var p=n.createAssignment(e.setTextRange(n.createPropertyAccessExpression(n.createIdentifier("exports"),d.name),d.name),n.createIdentifier(e.getTextOfIdentifierOrLiteral(d.name))),f=n.createVariableDeclaration(d.name,d.exclamationToken,d.type,e.visitNode(d.initializer,P));a=e.append(a,f),o=e.append(o,p),c=!0}else o=e.append(o,j(d))}if(a&&(i=e.append(i,n.updateVariableStatement(t,s,n.updateVariableDeclarationList(t.declarationList,a)))),o){var m=e.setOriginalNode(e.setTextRange(n.createExpressionStatement(n.inlineExpressions(o)),t),t);c&&e.removeAllComments(m),i=e.append(i,m)}}else i=e.append(i,e.visitEachChild(t,P,r));if(B(t)){var g=e.getOriginalNodeId(t);k[g]=q(k[g],t)}else i=q(i,t);return e.singleOrMany(i)}(t);case 253:return function(t){var i;i=e.hasSyntacticModifier(t,1)?e.append(i,e.setOriginalNode(e.setTextRange(n.createFunctionDeclaration(void 0,e.visitNodes(t.modifiers,$,e.isModifier),t.asteriskToken,n.getDeclarationName(t,!0,!0),void 0,e.visitNodes(t.parameters,P),void 0,e.visitEachChild(t.body,P,r)),t),t)):e.append(i,e.visitEachChild(t,P,r));if(B(t)){var a=e.getOriginalNodeId(t);k[a]=V(k[a],t)}else i=V(i,t);return e.singleOrMany(i)}(t);case 254:return function(t){var i;i=e.hasSyntacticModifier(t,1)?e.append(i,e.setOriginalNode(e.setTextRange(n.createClassDeclaration(void 0,e.visitNodes(t.modifiers,$,e.isModifier),n.getDeclarationName(t,!0,!0),void 0,e.visitNodes(t.heritageClauses,P),e.visitNodes(t.members,P)),t),t)):e.append(i,e.visitEachChild(t,P,r));if(B(t)){var a=e.getOriginalNodeId(t);k[a]=V(k[a],t)}else i=V(i,t);return e.singleOrMany(i)}(t);case 341:return function(t){if(B(t)&&234===t.original.kind){var r=e.getOriginalNodeId(t);k[r]=q(k[r],t.original)}return t}(t);case 342:return function(t){var r=e.getOriginalNodeId(t),n=k[r];if(n)return delete k[r],e.append(n,t);return t}(t);default:return e.visitEachChild(t,P,r)}}function P(t){return 2097152&t.transformFlags||1024&t.transformFlags?e.isImportCall(t)?function(t){var r=e.getExternalModuleNameLiteral(n,t,_,d,u,l),i=e.visitNode(e.firstOrUndefined(t.arguments),P),a=!r||i&&e.isStringLiteral(i)&&i.text===r.text?i:r,o=!!(4096&t.transformFlags);switch(l.module){case e.ModuleKind.AMD:return F(a,o);case e.ModuleKind.UMD:return function(t,r){if(v=!0,e.isSimpleCopiableExpression(t)){var i=e.isGeneratedIdentifier(t)?t:e.isStringLiteral(t)?n.createStringLiteralFromNode(t):e.setEmitFlags(e.setTextRange(n.cloneNode(t),t),1536);return n.createConditionalExpression(n.createIdentifier("__syncRequire"),void 0,O(t,r),void 0,F(i,r))}var a=n.createTempVariable(c);return n.createComma(n.createAssignment(a,t),n.createConditionalExpression(n.createIdentifier("__syncRequire"),void 0,O(a,r),void 0,F(a,r)))}(null!=a?a:n.createVoidZero(),o);case e.ModuleKind.CommonJS:default:return O(a,o)}}(t):e.isDestructuringAssignment(t)?function(t){if(I(t.left))return e.flattenDestructuringAssignment(t,P,r,0,!1,L);return e.visitEachChild(t,P,r)}(t):e.visitEachChild(t,P,r):t}function I(t){if(e.isObjectLiteralExpression(t))for(var r=0,n=t.properties;r<n.length;r++){switch((o=n[r]).kind){case 291:if(I(o.initializer))return!0;break;case 292:if(I(o.name))return!0;break;case 293:if(I(o.expression))return!0;break;case 166:case 168:case 169:return!1;default:e.Debug.assertNever(o,"Unhandled object member kind")}}else if(e.isArrayLiteralExpression(t))for(var i=0,a=t.elements;i<a.length;i++){var o=a[i];if(e.isSpreadElement(o)){if(I(o.expression))return!0}else if(I(o))return!0}else if(e.isIdentifier(t))return e.length(X(t))>(e.isExportName(t)?1:0);return!1}function F(t,r){var i,o=n.createUniqueName("resolve"),s=n.createUniqueName("reject"),c=[n.createParameterDeclaration(void 0,void 0,void 0,o),n.createParameterDeclaration(void 0,void 0,void 0,s)],u=n.createBlock([n.createExpressionStatement(n.createCallExpression(n.createIdentifier("require"),void 0,[n.createArrayLiteralExpression([t||n.createOmittedExpression()]),o,s]))]);p>=2?i=n.createArrowFunction(void 0,void 0,c,void 0,void 0,u):(i=n.createFunctionExpression(void 0,void 0,void 0,void 0,c,void 0,u),r&&e.setEmitFlags(i,8));var d=n.createNewExpression(n.createIdentifier("Promise"),void 0,[i]);return l.esModuleInterop?n.createCallExpression(n.createPropertyAccessExpression(d,n.createIdentifier("then")),void 0,[a().createImportStarCallbackHelper()]):d}function O(t,r){var i,o=n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Promise"),"resolve"),void 0,[]),s=n.createCallExpression(n.createIdentifier("require"),void 0,t?[t]:[]);return l.esModuleInterop&&(s=a().createImportStarHelper(s)),p>=2?i=n.createArrowFunction(void 0,void 0,[],void 0,void 0,s):(i=n.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,n.createBlock([n.createReturnStatement(s)])),r&&e.setEmitFlags(i,8)),n.createCallExpression(n.createPropertyAccessExpression(o,"then"),void 0,[i])}function R(t,r){return!l.esModuleInterop||67108864&e.getEmitFlags(t)?r:e.getImportNeedsImportStarHelper(t)?a().createImportStarHelper(r):e.getImportNeedsImportDefaultHelper(t)?a().createImportDefaultHelper(r):r}function M(t){var r=e.getExternalModuleNameLiteral(n,t,_,d,u,l),i=[];return r&&i.push(r),n.createCallExpression(n.createIdentifier("require"),void 0,i)}function L(t,r,i){var a=X(t);if(a){for(var o=e.isExportName(t)?r:n.createAssignment(t,r),s=0,c=a;s<c.length;s++){var l=c[s];e.setEmitFlags(o,4),o=G(l,o,i)}return o}return n.createAssignment(t,r)}function j(t){return e.isBindingPattern(t.name)?e.flattenDestructuringAssignment(e.visitNode(t,P),void 0,r,0,!1,L):n.createAssignment(e.setTextRange(n.createPropertyAccessExpression(n.createIdentifier("exports"),t.name),t.name),t.initializer?e.visitNode(t.initializer,P):n.createVoidZero())}function B(t){return!!(4194304&e.getEmitFlags(t))}function z(e,t){if(h.exportEquals)return e;var r=t.importClause;if(!r)return e;r.name&&(e=H(e,r));var n=r.namedBindings;if(n)switch(n.kind){case 266:e=H(e,n);break;case 267:for(var i=0,a=n.elements;i<a.length;i++){e=H(e,a[i],!0)}}return e}function U(e,t){return h.exportEquals?e:H(e,t)}function q(e,t){if(h.exportEquals)return e;for(var r=0,n=t.declarationList.declarations;r<n.length;r++){e=J(e,n[r])}return e}function J(t,r){if(h.exportEquals)return t;if(e.isBindingPattern(r.name))for(var n=0,i=r.name.elements;n<i.length;n++){var a=i[n];e.isOmittedExpression(a)||(t=J(t,a))}else e.isGeneratedIdentifier(r.name)||(t=H(t,r));return t}function V(t,r){if(h.exportEquals)return t;e.hasSyntacticModifier(r,1)&&(t=K(t,e.hasSyntacticModifier(r,512)?n.createIdentifier("default"):n.getDeclarationName(r),n.getLocalName(r),r));return r.name&&(t=H(t,r)),t}function H(t,r,i){var a=n.getDeclarationName(r),o=h.exportSpecifiers.get(e.idText(a));if(o)for(var s=0,c=o;s<c.length;s++){var l=c[s];t=K(t,l.name,a,l.name,void 0,i)}return t}function K(t,r,i,a,o,s){return t=e.append(t,function(t,r,i,a,o){var s=e.setTextRange(n.createExpressionStatement(G(t,r,void 0,o)),i);e.startOnNewLine(s),a||e.setEmitFlags(s,1536);return s}(r,i,a,o,s)),t}function W(){var t;return t=0===p?n.createExpressionStatement(G(n.createIdentifier("__esModule"),n.createTrue())):n.createExpressionStatement(n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Object"),"defineProperty"),void 0,[n.createIdentifier("exports"),n.createStringLiteral("__esModule"),n.createObjectLiteralExpression([n.createPropertyAssignment("value",n.createTrue())])])),e.setEmitFlags(t,1048576),t}function G(t,r,i,a){return e.setTextRange(a&&0!==p?n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Object"),"defineProperty"),void 0,[n.createIdentifier("exports"),n.createStringLiteralFromNode(t),n.createObjectLiteralExpression([n.createPropertyAssignment("enumerable",n.createTrue()),n.createPropertyAssignment("get",n.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,n.createBlock([n.createReturnStatement(r)])))])]):n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.cloneNode(t)),r),i)}function $(e){switch(e.kind){case 93:case 88:return}return e}function Y(t){var r,i;if(4096&e.getEmitFlags(t)){var a=e.getExternalHelpersModuleName(_);return a?n.createPropertyAccessExpression(a,t):t}if((!e.isGeneratedIdentifier(t)||64&t.autoGenerateFlags)&&!e.isLocalName(t)){var o=u.getReferencedExportContainer(t,e.isExportName(t));if(o&&300===o.kind)return e.setTextRange(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.cloneNode(t)),t);var s=u.getReferencedImportDeclaration(t);if(s){if(e.isImportClause(s))return e.setTextRange(n.createPropertyAccessExpression(n.getGeneratedNameForNode(s.parent),n.createIdentifier("default")),t);if(e.isImportSpecifier(s)){var c=s.propertyName||s.name;return e.setTextRange(n.createPropertyAccessExpression(n.getGeneratedNameForNode((null===(i=null===(r=s.parent)||void 0===r?void 0:r.parent)||void 0===i?void 0:i.parent)||s),n.cloneNode(c)),t)}}}return t}function X(t){if(!e.isGeneratedIdentifier(t)){var r=u.getReferencedImportDeclaration(t)||u.getReferencedValueDeclaration(t);if(r)return h&&h.exportedBindings[e.getOriginalNodeId(r)]}}};var t={name:"typescript:dynamicimport-sync-require",scoped:!0,text:'\n var __syncRequire = typeof module === "object" && typeof module.exports === "object";'}}(d||(d={})),function(e){e.transformSystemModule=function(t){var r=t.factory,n=t.startLexicalEnvironment,i=t.endLexicalEnvironment,a=t.hoistVariableDeclaration,o=t.getCompilerOptions(),s=t.getEmitResolver(),c=t.getEmitHost(),l=t.onSubstituteNode,u=t.onEmitNode;t.onSubstituteNode=function(t,n){if(function(e){return h&&e.id&&h[e.id]}(n=l(t,n)))return n;if(1===t)return function(t){switch(t.kind){case 78:return function(t){var n,i;if(4096&e.getEmitFlags(t)){var a=e.getExternalHelpersModuleName(d);return a?r.createPropertyAccessExpression(a,t):t}if(!e.isGeneratedIdentifier(t)&&!e.isLocalName(t)){var o=s.getReferencedImportDeclaration(t);if(o){if(e.isImportClause(o))return e.setTextRange(r.createPropertyAccessExpression(r.getGeneratedNameForNode(o.parent),r.createIdentifier("default")),t);if(e.isImportSpecifier(o))return e.setTextRange(r.createPropertyAccessExpression(r.getGeneratedNameForNode((null===(i=null===(n=o.parent)||void 0===n?void 0:n.parent)||void 0===i?void 0:i.parent)||o),r.cloneNode(o.propertyName||o.name)),t)}}return t}(t);case 218:return function(t){if(e.isAssignmentOperator(t.operatorToken.kind)&&e.isIdentifier(t.left)&&!e.isGeneratedIdentifier(t.left)&&!e.isLocalName(t.left)&&!e.isDeclarationNameOfEnumOrNamespace(t.left)){var r=W(t.left);if(r){for(var n=t,i=0,a=r;i<a.length;i++){n=U(a[i],G(n))}return n}}return t}(t);case 216:case 217:return function(t){if((45===t.operator||46===t.operator)&&e.isIdentifier(t.operand)&&!e.isGeneratedIdentifier(t.operand)&&!e.isLocalName(t.operand)&&!e.isDeclarationNameOfEnumOrNamespace(t.operand)){var n=W(t.operand);if(n){for(var i=217===t.kind?e.setTextRange(r.createPrefixUnaryExpression(t.operator,t.operand),t):t,a=0,o=n;a<o.length;a++){i=U(o[a],G(i))}return 217===t.kind&&(i=45===t.operator?r.createSubtract(G(i),r.createNumericLiteral(1)):r.createAdd(G(i),r.createNumericLiteral(1))),i}}return t}(t);case 228:return function(t){if(e.isImportMeta(t))return r.createPropertyAccessExpression(m,r.createIdentifier("meta"));return t}(t)}return t}(n);if(4===t)return function(t){if(292===t.kind)return function(t){var n,i,a=t.name;if(!e.isGeneratedIdentifier(a)&&!e.isLocalName(a)){var o=s.getReferencedImportDeclaration(a);if(o){if(e.isImportClause(o))return e.setTextRange(r.createPropertyAssignment(r.cloneNode(a),r.createPropertyAccessExpression(r.getGeneratedNameForNode(o.parent),r.createIdentifier("default"))),t);if(e.isImportSpecifier(o))return e.setTextRange(r.createPropertyAssignment(r.cloneNode(a),r.createPropertyAccessExpression(r.getGeneratedNameForNode((null===(i=null===(n=o.parent)||void 0===n?void 0:n.parent)||void 0===i?void 0:i.parent)||o),r.cloneNode(o.propertyName||o.name))),t)}}return t}(t);return t}(n);return n},t.onEmitNode=function(t,r,n){if(300===r.kind){var i=e.getOriginalNodeId(r);d=r,p=y[i],f=b[i],h=k[i],m=x[i],h&&delete k[i],u(t,r,n),d=void 0,p=void 0,f=void 0,m=void 0,h=void 0}else u(t,r,n)},t.enableSubstitution(78),t.enableSubstitution(292),t.enableSubstitution(218),t.enableSubstitution(216),t.enableSubstitution(217),t.enableSubstitution(228),t.enableEmitNotification(300);var d,p,f,m,g,_,h,y=[],v=[],b=[],k=[],x=[];return e.chainBundle(t,(function(a){if(a.isDeclarationFile||!(e.isEffectiveExternalModule(a,o)||2097152&a.transformFlags))return a;var l=e.getOriginalNodeId(a);d=a,_=a,p=y[l]=e.collectExternalModuleInfo(t,a,s,o),f=r.createUniqueName("exports"),b[l]=f,m=x[l]=r.createUniqueName("context");var u=function(t){for(var n=new e.Map,i=[],a=0,l=t;a<l.length;a++){var u=l[a],p=e.getExternalModuleNameLiteral(r,u,d,c,s,o);if(p){var f=p.text,m=n.get(f);void 0!==m?i[m].externalImports.push(u):(n.set(f,i.length),i.push({name:p,externalImports:[u]}))}}return i}(p.externalImports),v=function(t,a){var s=[];n();var c=e.getStrictOptionValue(o,"alwaysStrict")||!o.noImplicitUseStrict&&e.isExternalModule(d),l=r.copyPrologue(t.statements,s,c,D);s.push(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration("__moduleName",void 0,void 0,r.createLogicalAnd(m,r.createPropertyAccessExpression(m,"id")))]))),e.visitNode(p.externalHelpersImportDeclaration,D,e.isStatement);var u=e.visitNodes(t.statements,D,e.isStatement,l);e.addRange(s,g),e.insertStatementsAfterStandardPrologue(s,i());var f=function(e){if(!p.hasExportStarsToExportValues)return;if(!p.exportedNames&&0===p.exportSpecifiers.size){for(var t=!1,n=0,i=p.externalImports;n<i.length;n++){var a=i[n];if(270===a.kind&&a.exportClause){t=!0;break}}if(!t){var o=S(void 0);return e.push(o),o.name}}var s=[];if(p.exportedNames)for(var c=0,l=p.exportedNames;c<l.length;c++){var u=l[c];"default"!==u.escapedText&&s.push(r.createPropertyAssignment(r.createStringLiteralFromNode(u),r.createTrue()))}var d=r.createUniqueName("exportedNames");e.push(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(d,void 0,void 0,r.createObjectLiteralExpression(s,!0))])));var f=S(d);return e.push(f),f.name}(s),_=524288&t.transformFlags?r.createModifiersFromModifierFlags(256):void 0,h=r.createObjectLiteralExpression([r.createPropertyAssignment("setters",w(f,a)),r.createPropertyAssignment("execute",r.createFunctionExpression(_,void 0,void 0,void 0,[],void 0,r.createBlock(u,!0)))],!0);return s.push(r.createReturnStatement(h)),r.createBlock(s,!0)}(a,u),E=r.createFunctionExpression(void 0,void 0,void 0,void 0,[r.createParameterDeclaration(void 0,void 0,void 0,f),r.createParameterDeclaration(void 0,void 0,void 0,m)],void 0,v),T=e.tryGetModuleNameFromFile(r,a,c,o),C=r.createArrayLiteralExpression(e.map(u,(function(e){return e.name}))),A=e.setEmitFlags(r.updateSourceFile(a,e.setTextRange(r.createNodeArray([r.createExpressionStatement(r.createCallExpression(r.createPropertyAccessExpression(r.createIdentifier("System"),"register"),void 0,T?[T,C,E]:[C,E]))]),a.statements)),1024);e.outFile(o)||e.moveEmitHelpers(A,v,(function(e){return!e.scoped}));h&&(k[l]=h,h=void 0);return d=void 0,p=void 0,f=void 0,m=void 0,g=void 0,_=void 0,A}));function S(t){var n=r.createUniqueName("exportStar"),i=r.createIdentifier("m"),a=r.createIdentifier("n"),o=r.createIdentifier("exports"),s=r.createStrictInequality(a,r.createStringLiteral("default"));return t&&(s=r.createLogicalAnd(s,r.createLogicalNot(r.createCallExpression(r.createPropertyAccessExpression(t,"hasOwnProperty"),void 0,[a])))),r.createFunctionDeclaration(void 0,void 0,void 0,n,void 0,[r.createParameterDeclaration(void 0,void 0,void 0,i)],void 0,r.createBlock([r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(o,void 0,void 0,r.createObjectLiteralExpression([]))])),r.createForInStatement(r.createVariableDeclarationList([r.createVariableDeclaration(a)]),i,r.createBlock([e.setEmitFlags(r.createIfStatement(s,r.createExpressionStatement(r.createAssignment(r.createElementAccessExpression(o,a),r.createElementAccessExpression(i,a)))),1)])),r.createExpressionStatement(r.createCallExpression(f,void 0,[o]))],!0))}function w(t,n){for(var i=[],a=0,o=n;a<o.length;a++){for(var s=o[a],c=e.forEach(s.externalImports,(function(t){return e.getLocalNameForExternalImport(r,t,d)})),l=c?r.getGeneratedNameForNode(c):r.createUniqueName(""),u=[],p=0,m=s.externalImports;p<m.length;p++){var g=m[p],_=e.getLocalNameForExternalImport(r,g,d);switch(g.kind){case 264:if(!g.importClause)break;case 263:e.Debug.assert(void 0!==_),u.push(r.createExpressionStatement(r.createAssignment(_,l)));break;case 270:if(e.Debug.assert(void 0!==_),g.exportClause)if(e.isNamedExports(g.exportClause)){for(var h=[],y=0,v=g.exportClause.elements;y<v.length;y++){var b=v[y];h.push(r.createPropertyAssignment(r.createStringLiteral(e.idText(b.name)),r.createElementAccessExpression(l,r.createStringLiteral(e.idText(b.propertyName||b.name)))))}u.push(r.createExpressionStatement(r.createCallExpression(f,void 0,[r.createObjectLiteralExpression(h,!0)])))}else u.push(r.createExpressionStatement(r.createCallExpression(f,void 0,[r.createStringLiteral(e.idText(g.exportClause.name)),l])));else u.push(r.createExpressionStatement(r.createCallExpression(t,void 0,[l])))}}i.push(r.createFunctionExpression(void 0,void 0,void 0,void 0,[r.createParameterDeclaration(void 0,void 0,void 0,l)],void 0,r.createBlock(u,!0)))}return r.createArrayLiteralExpression(i,!0)}function D(t){switch(t.kind){case 264:return function(t){var n;t.importClause&&a(e.getLocalNameForExternalImport(r,t,d));if(I(t)){var i=e.getOriginalNodeId(t);v[i]=F(v[i],t)}else n=F(n,t);return e.singleOrMany(n)}(t);case 263:return function(t){var n;if(e.Debug.assert(e.isExternalModuleImportEqualsDeclaration(t),"import= for internal module references should be handled in an earlier transformer."),a(e.getLocalNameForExternalImport(r,t,d)),I(t)){var i=e.getOriginalNodeId(t);v[i]=O(v[i],t)}else n=O(n,t);return e.singleOrMany(n)}(t);case 270:return function(t){return void e.Debug.assertIsDefined(t)}(t);case 269:return function(t){if(t.isExportEquals)return;var n=e.visitNode(t.expression,V,e.isExpression),i=t.original;if(!i||!I(i))return z(r.createIdentifier("default"),n,!0);var a=e.getOriginalNodeId(t);v[a]=B(v[a],r.createIdentifier("default"),n,!0)}(t);default:return q(t)}}function E(t){if(e.isBindingPattern(t.name))for(var n=0,i=t.name.elements;n<i.length;n++){var o=i[n];e.isOmittedExpression(o)||E(o)}else a(r.cloneNode(t.name))}function T(t){return!(2097152&e.getEmitFlags(t)||300!==_.kind&&3&e.getOriginalNode(t).flags)}function C(r,n){var i=n?A:N;return e.isBindingPattern(r.name)?e.flattenDestructuringAssignment(r,V,t,0,!1,i):r.initializer?i(r.name,e.visitNode(r.initializer,V,e.isExpression)):r.name}function A(e,t,r){return P(e,t,r,!0)}function N(e,t,r){return P(e,t,r,!1)}function P(t,n,i,o){return a(r.cloneNode(t)),o?U(t,G(e.setTextRange(r.createAssignment(t,n),i))):G(e.setTextRange(r.createAssignment(t,n),i))}function I(t){return!!(4194304&e.getEmitFlags(t))}function F(e,t){if(p.exportEquals)return e;var r=t.importClause;if(!r)return e;r.name&&(e=j(e,r));var n=r.namedBindings;if(n)switch(n.kind){case 266:e=j(e,n);break;case 267:for(var i=0,a=n.elements;i<a.length;i++){e=j(e,a[i])}}return e}function O(e,t){return p.exportEquals?e:j(e,t)}function R(e,t,r){if(p.exportEquals)return e;for(var n=0,i=t.declarationList.declarations;n<i.length;n++){var a=i[n];(a.initializer||r)&&(e=M(e,a,r))}return e}function M(t,n,i){if(p.exportEquals)return t;if(e.isBindingPattern(n.name))for(var a=0,o=n.name.elements;a<o.length;a++){var s=o[a];e.isOmittedExpression(s)||(t=M(t,s,i))}else if(!e.isGeneratedIdentifier(n.name)){var c=void 0;i&&(t=B(t,n.name,r.getLocalName(n)),c=e.idText(n.name)),t=j(t,n,c)}return t}function L(t,n){if(p.exportEquals)return t;var i;if(e.hasSyntacticModifier(n,1)){var a=e.hasSyntacticModifier(n,512)?r.createStringLiteral("default"):n.name;t=B(t,a,r.getLocalName(n)),i=e.getTextOfIdentifierOrLiteral(a)}return n.name&&(t=j(t,n,i)),t}function j(t,n,i){if(p.exportEquals)return t;var a=r.getDeclarationName(n),o=p.exportSpecifiers.get(e.idText(a));if(o)for(var s=0,c=o;s<c.length;s++){var l=c[s];l.name.escapedText!==i&&(t=B(t,l.name,a))}return t}function B(t,r,n,i){return t=e.append(t,z(r,n,i))}function z(t,n,i){var a=r.createExpressionStatement(U(t,n));return e.startOnNewLine(a),i||e.setEmitFlags(a,1536),a}function U(t,n){var i=e.isIdentifier(t)?r.createStringLiteralFromNode(t):t;return e.setEmitFlags(n,1536|e.getEmitFlags(n)),e.setCommentRange(r.createCallExpression(f,void 0,[i,n]),n)}function q(n){switch(n.kind){case 234:return function(t){if(!T(t.declarationList))return e.visitNode(t,V,e.isStatement);for(var n,i,a=e.hasSyntacticModifier(t,1),o=I(t),s=0,c=t.declarationList.declarations;s<c.length;s++){var l=c[s];l.initializer?n=e.append(n,C(l,a&&!o)):E(l)}if(n&&(i=e.append(i,e.setTextRange(r.createExpressionStatement(r.inlineExpressions(n)),t))),o){var u=e.getOriginalNodeId(t);v[u]=R(v[u],t,a)}else i=R(i,t,!1);return e.singleOrMany(i)}(n);case 253:return function(n){if(g=e.hasSyntacticModifier(n,1)?e.append(g,r.updateFunctionDeclaration(n,n.decorators,e.visitNodes(n.modifiers,K,e.isModifier),n.asteriskToken,r.getDeclarationName(n,!0,!0),void 0,e.visitNodes(n.parameters,V,e.isParameterDeclaration),void 0,e.visitNode(n.body,V,e.isBlock))):e.append(g,e.visitEachChild(n,V,t)),I(n)){var i=e.getOriginalNodeId(n);v[i]=L(v[i],n)}else g=L(g,n)}(n);case 254:return function(t){var n,i=r.getLocalName(t);if(a(i),n=e.append(n,e.setTextRange(r.createExpressionStatement(r.createAssignment(i,e.setTextRange(r.createClassExpression(e.visitNodes(t.decorators,V,e.isDecorator),void 0,t.name,void 0,e.visitNodes(t.heritageClauses,V,e.isHeritageClause),e.visitNodes(t.members,V,e.isClassElement)),t))),t)),I(t)){var o=e.getOriginalNodeId(t);v[o]=L(v[o],t)}else n=L(n,t);return e.singleOrMany(n)}(n);case 239:return function(t){var n=_;return _=t,t=r.updateForStatement(t,t.initializer&&J(t.initializer),e.visitNode(t.condition,V,e.isExpression),e.visitNode(t.incrementor,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement)),_=n,t}(n);case 240:return function(t){var n=_;return _=t,t=r.updateForInStatement(t,J(t.initializer),e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock)),_=n,t}(n);case 241:return function(t){var n=_;return _=t,t=r.updateForOfStatement(t,t.awaitModifier,J(t.initializer),e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock)),_=n,t}(n);case 237:return function(t){return r.updateDoStatement(t,e.visitNode(t.statement,q,e.isStatement,r.liftToBlock),e.visitNode(t.expression,V,e.isExpression))}(n);case 238:return function(t){return r.updateWhileStatement(t,e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock))}(n);case 247:return function(t){return r.updateLabeledStatement(t,t.label,e.visitNode(t.statement,q,e.isStatement,r.liftToBlock))}(n);case 245:return function(t){return r.updateWithStatement(t,e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock))}(n);case 246:return function(t){return r.updateSwitchStatement(t,e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.caseBlock,q,e.isCaseBlock))}(n);case 261:return function(t){var n=_;return _=t,t=r.updateCaseBlock(t,e.visitNodes(t.clauses,q,e.isCaseOrDefaultClause)),_=n,t}(n);case 287:return function(t){return r.updateCaseClause(t,e.visitNode(t.expression,V,e.isExpression),e.visitNodes(t.statements,q,e.isStatement))}(n);case 288:case 249:return function(r){return e.visitEachChild(r,q,t)}(n);case 290:return function(t){var n=_;return _=t,t=r.updateCatchClause(t,t.variableDeclaration,e.visitNode(t.block,q,e.isBlock)),_=n,t}(n);case 232:return function(r){var n=_;return _=r,r=e.visitEachChild(r,q,t),_=n,r}(n);case 341:return function(t){if(I(t)&&234===t.original.kind){var r=e.getOriginalNodeId(t),n=e.hasSyntacticModifier(t.original,1);v[r]=R(v[r],t.original,n)}return t}(n);case 342:return function(t){var r=e.getOriginalNodeId(t),n=v[r];if(n)return delete v[r],e.append(n,t);var i=e.getOriginalNode(t);return e.isModuleOrEnumDeclaration(i)?e.append(j(n,i),t):t}(n);default:return V(n)}}function J(n){if(function(t){return e.isVariableDeclarationList(t)&&T(t)}(n)){for(var i=void 0,a=0,o=n.declarations;a<o.length;a++){var s=o[a];i=e.append(i,C(s,!1)),s.initializer||E(s)}return i?r.inlineExpressions(i):r.createOmittedExpression()}return e.visitEachChild(n,q,t)}function V(n){return e.isDestructuringAssignment(n)?function(r){if(H(r.left))return e.flattenDestructuringAssignment(r,V,t,0,!0);return e.visitEachChild(r,V,t)}(n):e.isImportCall(n)?function(t){var n=e.getExternalModuleNameLiteral(r,t,d,c,s,o),i=e.visitNode(e.firstOrUndefined(t.arguments),V),a=!n||i&&e.isStringLiteral(i)&&i.text===n.text?i:n;return r.createCallExpression(r.createPropertyAccessExpression(m,r.createIdentifier("import")),void 0,a?[a]:[])}(n):1024&n.transformFlags||2097152&n.transformFlags?e.visitEachChild(n,V,t):n}function H(t){if(e.isAssignmentExpression(t,!0))return H(t.left);if(e.isSpreadElement(t))return H(t.expression);if(e.isObjectLiteralExpression(t))return e.some(t.properties,H);if(e.isArrayLiteralExpression(t))return e.some(t.elements,H);if(e.isShorthandPropertyAssignment(t))return H(t.name);if(e.isPropertyAssignment(t))return H(t.initializer);if(e.isIdentifier(t)){var r=s.getReferencedExportContainer(t);return void 0!==r&&300===r.kind}return!1}function K(e){switch(e.kind){case 93:case 88:return}return e}function W(t){var n;if(!e.isGeneratedIdentifier(t)){var i=s.getReferencedImportDeclaration(t)||s.getReferencedValueDeclaration(t);if(i){var a=s.getReferencedExportContainer(t,!1);a&&300===a.kind&&(n=e.append(n,r.getDeclarationName(i))),n=e.addRange(n,p&&p.exportedBindings[e.getOriginalNodeId(i)])}}return n}function G(t){return void 0===h&&(h=[]),h[e.getNodeId(t)]=!0,t}}}(d||(d={})),function(e){e.transformECMAScriptModule=function(t){var r,n=t.factory,a=t.getEmitHelperFactory,o=t.getCompilerOptions(),s=t.onEmitNode,c=t.onSubstituteNode;return t.onEmitNode=function(t,n,i){e.isSourceFile(n)?((e.isExternalModule(n)||o.isolatedModules)&&o.importHelpers&&(r=new e.Map),s(t,n,i),r=void 0):s(t,n,i)},t.onSubstituteNode=function(t,i){if(i=c(t,i),r&&e.isIdentifier(i)&&4096&e.getEmitFlags(i))return function(t){var i=e.idText(t),a=r.get(i);a||r.set(i,a=n.createUniqueName(i,48));return a}(i);return i},t.enableEmitNotification(300),t.enableSubstitution(78),e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;if(e.isExternalModule(r)||o.isolatedModules){var s=function(r){var i=e.createExternalHelpersImportDeclarationIfNeeded(n,a(),r,o);if(i){var s=[],c=n.copyPrologue(r.statements,s);return e.append(s,i),e.addRange(s,e.visitNodes(r.statements,l,e.isStatement,c)),n.updateSourceFile(r,e.setTextRange(n.createNodeArray(s),r.statements))}return e.visitEachChild(r,l,t)}(r);return!e.isExternalModule(r)||e.some(s.statements,e.isExternalModuleIndicator)?s:n.updateSourceFile(s,e.setTextRange(n.createNodeArray(i(i([],s.statements),[e.createEmptyExports(n)])),s.statements))}return r}));function l(t){switch(t.kind){case 263:return;case 269:return function(e){return e.isExportEquals?void 0:e}(t);case 270:return function(t){if(void 0!==o.module&&o.module>e.ModuleKind.ES2015)return t;if(!t.exportClause||!e.isNamespaceExport(t.exportClause)||!t.moduleSpecifier)return t;var r=t.exportClause.name,i=n.getGeneratedNameForNode(r),a=n.createImportDeclaration(void 0,void 0,n.createImportClause(!1,void 0,n.createNamespaceImport(i)),t.moduleSpecifier);e.setOriginalNode(a,t.exportClause);var s=e.isExportNamespaceAsDefaultDeclaration(t)?n.createExportDefault(i):n.createExportDeclaration(void 0,void 0,!1,n.createNamedExports([n.createExportSpecifier(i,r)]));return e.setOriginalNode(s,t),[a,s]}(t)}return t}}}(d||(d={})),function(e){function t(t){return e.isVariableDeclaration(t)||e.isPropertyDeclaration(t)||e.isPropertySignature(t)||e.isPropertyAccessExpression(t)||e.isBindingElement(t)||e.isConstructorDeclaration(t)?r:e.isSetAccessor(t)||e.isGetAccessor(t)?function(r){var n;n=169===t.kind?e.hasSyntacticModifier(t,32)?r.errorModuleName?e.Diagnostics.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:r.errorModuleName?e.Diagnostics.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:e.hasSyntacticModifier(t,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1;return{diagnosticMessage:n,errorNode:t.name,typeName:t.name}}:e.isConstructSignatureDeclaration(t)||e.isCallSignatureDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isFunctionDeclaration(t)||e.isIndexSignatureDeclaration(t)?function(r){var n;switch(t.kind){case 171:n=r.errorModuleName?e.Diagnostics.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 170:n=r.errorModuleName?e.Diagnostics.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 172:n=r.errorModuleName?e.Diagnostics.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 166:case 165:n=e.hasSyntacticModifier(t,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:254===t.parent.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:r.errorModuleName?e.Diagnostics.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 253:n=r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return e.Debug.fail("This is unknown kind for signature: "+t.kind)}return{diagnosticMessage:n,errorNode:t.name||t}}:e.isParameter(t)?e.isParameterPropertyDeclaration(t,t.parent)&&e.hasSyntacticModifier(t.parent,8)?r:function(r){var n=function(r){switch(t.parent.kind){case 167:return r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 171:case 176:return r.errorModuleName?e.Diagnostics.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 170:return r.errorModuleName?e.Diagnostics.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 172:return r.errorModuleName?e.Diagnostics.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 166:case 165:return e.hasSyntacticModifier(t.parent,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:254===t.parent.parent.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:r.errorModuleName?e.Diagnostics.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 253:case 175:return r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 169:case 168:return r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return e.Debug.fail("Unknown parent for parameter: "+e.SyntaxKind[t.parent.kind])}}(r);return void 0!==n?{diagnosticMessage:n,errorNode:t,typeName:t.name}:void 0}:e.isTypeParameterDeclaration(t)?function(){var r;switch(t.parent.kind){case 254:r=e.Diagnostics.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 256:r=e.Diagnostics.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 191:r=e.Diagnostics.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 176:case 171:r=e.Diagnostics.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 170:r=e.Diagnostics.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 166:case 165:r=e.hasSyntacticModifier(t.parent,32)?e.Diagnostics.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:254===t.parent.parent.kind?e.Diagnostics.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:e.Diagnostics.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 175:case 253:r=e.Diagnostics.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 257:r=e.Diagnostics.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return e.Debug.fail("This is unknown parent for type parameter: "+t.parent.kind)}return{diagnosticMessage:r,errorNode:t,typeName:t.name}}:e.isExpressionWithTypeArguments(t)?function(){var r;r=e.isClassDeclaration(t.parent.parent)?e.isHeritageClause(t.parent)&&117===t.parent.token?e.Diagnostics.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:t.parent.parent.name?e.Diagnostics.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:e.Diagnostics.extends_clause_of_exported_class_has_or_is_using_private_name_0:e.Diagnostics.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1;return{diagnosticMessage:r,errorNode:t,typeName:e.getNameOfDeclaration(t.parent.parent)}}:e.isImportEqualsDeclaration(t)?function(){return{diagnosticMessage:e.Diagnostics.Import_declaration_0_is_using_private_name_1,errorNode:t,typeName:t.name}}:e.isTypeAliasDeclaration(t)||e.isJSDocTypeAlias(t)?function(r){return{diagnosticMessage:r.errorModuleName?e.Diagnostics.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:e.Diagnostics.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:e.isJSDocTypeAlias(t)?e.Debug.checkDefined(t.typeExpression):t.type,typeName:e.isJSDocTypeAlias(t)?e.getNameOfDeclaration(t):t.name}}:e.Debug.assertNever(t,"Attempted to set a declaration diagnostic context for unhandled node kind: "+e.SyntaxKind[t.kind]);function r(r){var n=function(r){return 251===t.kind||199===t.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Exported_variable_0_has_or_is_using_private_name_1:164===t.kind||202===t.kind||163===t.kind||161===t.kind&&e.hasSyntacticModifier(t.parent,8)?e.hasSyntacticModifier(t,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:254===t.parent.kind||161===t.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_private_name_1:r.errorModuleName?e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_private_name_1:void 0}(r);return void 0!==n?{diagnosticMessage:n,errorNode:t,typeName:t.name}:void 0}}e.canProduceDiagnostics=function(t){return e.isVariableDeclaration(t)||e.isPropertyDeclaration(t)||e.isPropertySignature(t)||e.isBindingElement(t)||e.isSetAccessor(t)||e.isGetAccessor(t)||e.isConstructSignatureDeclaration(t)||e.isCallSignatureDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isFunctionDeclaration(t)||e.isParameter(t)||e.isTypeParameterDeclaration(t)||e.isExpressionWithTypeArguments(t)||e.isImportEqualsDeclaration(t)||e.isTypeAliasDeclaration(t)||e.isConstructorDeclaration(t)||e.isIndexSignatureDeclaration(t)||e.isPropertyAccessExpression(t)||e.isJSDocTypeAlias(t)},e.createGetSymbolAccessibilityDiagnosticForNodeName=function(r){return e.isSetAccessor(r)||e.isGetAccessor(r)?function(t){var n=function(t){return e.hasSyntacticModifier(r,32)?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:254===r.parent.kind?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_private_name_1:t.errorModuleName?e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_private_name_1}(t);return void 0!==n?{diagnosticMessage:n,errorNode:r,typeName:r.name}:void 0}:e.isMethodSignature(r)||e.isMethodDeclaration(r)?function(t){var n=function(t){return e.hasSyntacticModifier(r,32)?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:254===r.parent.kind?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_private_name_1:t.errorModuleName?e.Diagnostics.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Method_0_of_exported_interface_has_or_is_using_private_name_1}(t);return void 0!==n?{diagnosticMessage:n,errorNode:r,typeName:r.name}:void 0}:t(r)},e.createGetSymbolAccessibilityDiagnosticForNode=t}(d||(d={})),function(e){function t(t,r){var n=r.text.substring(t.pos,t.end);return e.stringContains(n,"@internal")}function r(r,n){var i=e.getParseTreeNode(r);if(i&&161===i.kind){var a=i.parent.parameters.indexOf(i),o=a>0?i.parent.parameters[a-1]:void 0,s=n.text,c=o?e.concatenate(e.getTrailingCommentRanges(s,e.skipTrivia(s,o.end+1,!1,!0)),e.getLeadingCommentRanges(s,r.pos)):e.getTrailingCommentRanges(s,e.skipTrivia(s,r.pos,!1,!0));return c&&c.length&&t(e.last(c),n)}var l=i&&e.getLeadingCommentRangesOfNode(i,n);return!!e.forEach(l,(function(e){return t(e,n)}))}e.getDeclarationDiagnostics=function(t,r,n){var i=t.getCompilerOptions();return e.transformNodes(r,t,e.factory,i,n?[n]:e.filter(t.getSourceFiles(),e.isSourceFileNotJson),[o],!1).diagnostics},e.isInternalDeclaration=r;var n=531469;function o(t){var o,l,u,d,p,f,m,g,_,h,y,v,b=function(){return e.Debug.fail("Diagnostic emitted without context")},k=b,x=!0,S=!1,w=!1,D=!1,E=!1,T=t.factory,C=t.getEmitHost(),A={trackSymbol:function(e,t,r){if(262144&e.flags)return;R(N.isSymbolAccessible(e,t,r,!0)),O(N.getTypeReferenceDirectivesForSymbol(e,r))},reportInaccessibleThisError:function(){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,e.declarationNameToString(m),"this"))},reportInaccessibleUniqueSymbolError:function(){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,e.declarationNameToString(m),"unique symbol"))},reportCyclicStructureError:function(){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,e.declarationNameToString(m)))},reportPrivateInBaseOfClassExpression:function(r){(m||g)&&t.addDiagnostic(e.createDiagnosticForNode(m||g,e.Diagnostics.Property_0_of_exported_class_expression_may_not_be_private_or_protected,r))},reportLikelyUnsafeImportRequiredError:function(r){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,e.declarationNameToString(m),r))},reportTruncationError:function(){(m||g)&&t.addDiagnostic(e.createDiagnosticForNode(m||g,e.Diagnostics.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))},moduleResolverHost:C,trackReferencedAmbientModule:function(t,r){var n=N.getTypeReferenceDirectivesForSymbol(r,67108863);if(e.length(n))return O(n);var i=e.getSourceFileOfNode(t);h.set(e.getOriginalNodeId(i),i)},trackExternalModuleSymbolOfImportTypeNode:function(e){S||(f||(f=[])).push(e)},reportNonlocalAugmentation:function(r,n,i){for(var a=e.find(n.declarations,(function(t){return e.getSourceFileOfNode(t)===r})),o=e.filter(i.declarations,(function(t){return e.getSourceFileOfNode(t)!==r})),s=0,c=o;s<c.length;s++){var l=c[s];t.addDiagnostic(e.addRelatedInfo(e.createDiagnosticForNode(l,e.Diagnostics.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),e.createDiagnosticForNode(a,e.Diagnostics.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}}},N=t.getEmitResolver(),P=t.getCompilerOptions(),I=P.noResolve,F=P.stripInternal;return function(r){if(300===r.kind&&r.isDeclarationFile)return r;if(301===r.kind){S=!0,h=new e.Map,y=new e.Map;var n=!1,s=T.createBundle(e.map(r.sourceFiles,(function(r){if(!r.isDeclarationFile){if(n=n||r.hasNoDefaultLib,_=r,o=r,u=void 0,p=!1,d=new e.Map,k=b,D=!1,E=!1,L(r,h),j(r,y),e.isExternalOrCommonJsModule(r)||e.isJsonSourceFile(r)){w=!1,x=!1;var i=e.isSourceFileJS(r)?T.createNodeArray(M(r,!0)):e.visitNodes(r.statements,re);return T.updateSourceFile(r,[T.createModuleDeclaration([],[T.createModifier(134)],T.createStringLiteral(e.getResolvedExternalModuleName(t.getEmitHost(),r)),T.createModuleBlock(e.setTextRange(T.createNodeArray(Z(i)),r.statements)))],!0,[],[],!1,[])}x=!0;var a=e.isSourceFileJS(r)?T.createNodeArray(M(r)):e.visitNodes(r.statements,re);return T.updateSourceFile(r,Z(a),!0,[],[],!1,[])}})),e.mapDefined(r.prepends,(function(t){if(303===t.kind){var r=e.createUnparsedSourceFile(t,"dts",F);return n=n||!!r.hasNoDefaultLib,L(r,h),O(r.typeReferenceDirectives),j(r,y),r}return t})));s.syntheticFileReferences=[],s.syntheticTypeReferences=U(),s.syntheticLibReferences=z(),s.hasNoDefaultLib=n;var c=e.getDirectoryPath(e.normalizeSlashes(e.getOutputPathsFor(r,C,!0).declarationFilePath)),m=J(s.syntheticFileReferences,c);return h.forEach(m),s}x=!0,D=!1,E=!1,o=r,_=r,k=b,S=!1,w=!1,p=!1,u=void 0,d=new e.Map,l=void 0,h=L(_,new e.Map),y=j(_,new e.Map);var g,A=[],N=e.getDirectoryPath(e.normalizeSlashes(e.getOutputPathsFor(r,C,!0).declarationFilePath)),I=J(A,N);if(e.isSourceFileJS(_))g=T.createNodeArray(M(r)),h.forEach(I),v=e.filter(g,e.isAnyImportSyntax);else{var R=e.visitNodes(r.statements,re);g=e.setTextRange(T.createNodeArray(Z(R)),r.statements),h.forEach(I),v=e.filter(g,e.isAnyImportSyntax),e.isExternalModule(r)&&(!w||D&&!E)&&(g=e.setTextRange(T.createNodeArray(i(i([],g),[e.createEmptyExports(T)])),g))}var B=T.updateSourceFile(r,g,!0,A,U(),r.hasNoDefaultLib,z());return B.exportedModulesFromDeclarationEmit=f,B;function z(){return e.map(e.arrayFrom(y.keys()),(function(e){return{fileName:e,pos:-1,end:-1}}))}function U(){return l?e.mapDefined(e.arrayFrom(l.keys()),q):[]}function q(t){if(v)for(var r=0,n=v;r<n.length;r++){var i=n[r];if(e.isImportEqualsDeclaration(i)&&e.isExternalModuleReference(i.moduleReference)){var a=i.moduleReference.expression;if(e.isStringLiteralLike(a)&&a.text===t)return}else if(e.isImportDeclaration(i)&&e.isStringLiteral(i.moduleSpecifier)&&i.moduleSpecifier.text===t)return}return{fileName:t,pos:-1,end:-1}}function J(t,n){return function(i){var o;if(i.isDeclarationFile)o=i.fileName;else{if(S&&e.contains(r.sourceFiles,i))return;var s=e.getOutputPathsFor(i,C,!0);o=s.declarationFilePath||s.jsFilePath||i.fileName}if(o){var c=e.moduleSpecifiers.getModuleSpecifier(a(a({},P),{baseUrl:P.baseUrl&&e.toPath(P.baseUrl,C.getCurrentDirectory(),C.getCanonicalFileName)}),_,e.toPath(n,C.getCurrentDirectory(),C.getCanonicalFileName),e.toPath(o,C.getCurrentDirectory(),C.getCanonicalFileName),C,void 0);if(!e.pathIsRelative(c))return void O([c]);var l=e.getRelativePathToDirectoryOrUrl(n,o,C.getCurrentDirectory(),C.getCanonicalFileName,!1);if(e.startsWith(l,"./")&&e.hasExtension(l)&&(l=l.substring(2)),function(t){return e.startsWith(t,"node_modules/")||e.pathContainsNodeModules(t)}(l)||e.isOhpm(P.packageManagerType)&&function(t){return e.startsWith(t,"oh_modules/")||e.pathContainsOHModules(t)}(l))return;t.push({pos:-1,end:-1,fileName:l})}}}};function O(t){if(t){l=l||new e.Set;for(var r=0,n=t;r<n.length;r++){var i=n[r];l.add(i)}}}function R(r){if(0===r.accessibility){if(r&&r.aliasesToMakeVisible)if(u)for(var n=0,i=r.aliasesToMakeVisible;n<i.length;n++){var a=i[n];e.pushIfUnique(u,a)}else u=r.aliasesToMakeVisible}else{var o=k(r);o&&(o.typeName?t.addDiagnostic(e.createDiagnosticForNode(r.errorNode||o.errorNode,o.diagnosticMessage,e.getTextOfNode(o.typeName),r.errorSymbolName,r.errorModuleName)):t.addDiagnostic(e.createDiagnosticForNode(r.errorNode||o.errorNode,o.diagnosticMessage,r.errorSymbolName,r.errorModuleName)))}}function M(t,r){var i=k;k=function(r){return r.errorNode&&e.canProduceDiagnostics(r.errorNode)?e.createGetSymbolAccessibilityDiagnosticForNode(r.errorNode)(r):{diagnosticMessage:r.errorModuleName?e.Diagnostics.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:e.Diagnostics.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:r.errorNode||t}};var a=N.getDeclarationStatementsForSourceFile(t,n,A,r);return k=i,a}function L(t,r){return I||!e.isUnparsedSource(t)&&e.isSourceFileJS(t)||e.forEach(t.referencedFiles,(function(n){var i=C.getSourceFileFromReference(t,n);i&&r.set(e.getOriginalNodeId(i),i)})),r}function j(t,r){return e.forEach(t.libReferenceDirectives,(function(t){C.getLibFileFromReference(t)&&r.set(e.toFileNameLowerCase(t.fileName),!0)})),r}function B(t){return 78===t.kind?t:198===t.kind?T.updateArrayBindingPattern(t,e.visitNodes(t.elements,r)):T.updateObjectBindingPattern(t,e.visitNodes(t.elements,r));function r(e){return 224===e.kind?e:T.updateBindingElement(e,e.dotDotDotToken,e.propertyName,B(e.name),U(e)?e.initializer:void 0)}}function z(t,r,n){var i;p||(i=k,k=e.createGetSymbolAccessibilityDiagnosticForNode(t));var a=T.updateParameterDeclaration(t,void 0,function(t,r,n){return e.factory.createModifiersFromModifierFlags(s(t,r,n))}(t,r),t.dotDotDotToken,B(t.name),N.isOptionalParameter(t)?t.questionToken||T.createToken(57):void 0,J(t,n||t.type,!0),q(t));return p||(k=i),a}function U(t){return function(t){switch(t.kind){case 164:case 163:return!e.hasEffectiveModifier(t,8);case 161:case 251:return!0}return!1}(t)&&N.isLiteralConstDeclaration(e.getParseTreeNode(t))}function q(t){if(U(t))return N.createLiteralConstValue(e.getParseTreeNode(t),A)}function J(t,r,i){if((i||!e.hasEffectiveModifier(t,8))&&!(U(t)||void 0!==r&&e.isTypeReferenceNode(r)&&r.typeName.virtual)){var a,s=161===t.kind&&(N.isRequiredInitializedParameter(t)||N.isOptionalUninitializedParameterProperty(t));return r&&!s?e.visitNode(r,ee):e.getParseTreeNode(t)?169===t.kind?T.createKeywordTypeNode(129):(m=t.name,p||(a=k,k=e.createGetSymbolAccessibilityDiagnosticForNode(t)),251===t.kind||199===t.kind?c(N.createTypeOfDeclaration(t,o,n,A)):161===t.kind||164===t.kind||163===t.kind?t.initializer?c(N.createTypeOfDeclaration(t,o,n,A,s)||N.createTypeOfExpression(t.initializer,o,n,A)):c(N.createTypeOfDeclaration(t,o,n,A,s)):c(N.createReturnTypeOfSignatureDeclaration(t,o,n,A))):r?e.visitNode(r,ee):T.createKeywordTypeNode(129)}function c(e){return m=void 0,p||(k=a),e||T.createKeywordTypeNode(129)}}function V(t){switch((t=e.getParseTreeNode(t)).kind){case 253:case 259:case 256:case 254:case 255:case 257:case 258:return!N.isDeclarationVisible(t);case 251:return!H(t);case 263:case 264:case 270:case 269:return!1}return!1}function H(t){return!e.isOmittedExpression(t)&&(e.isBindingPattern(t.name)?e.some(t.name.elements,H):N.isDeclarationVisible(t))}function K(t,r,n){if(!e.hasEffectiveModifier(t,8)){var i=e.map(r,(function(e){return z(e,n)}));if(i)return T.createNodeArray(i,r.hasTrailingComma)}}function W(t,r){var n;if(!r){var i=e.getThisParameter(t);i&&(n=[z(i)])}if(e.isSetAccessorDeclaration(t)){var a=void 0;if(!r){var o=e.getSetAccessorValueParameter(t);if(o)a=z(o,void 0,ue(t,N.getAllAccessorDeclarations(t)))}a||(a=T.createParameterDeclaration(void 0,void 0,void 0,"value")),n=e.append(n,a)}return T.createNodeArray(n||e.emptyArray)}function G(t,r){return e.hasEffectiveModifier(t,8)?void 0:e.visitNodes(r,ee)}function $(t){return e.isSourceFile(t)||e.isTypeAliasDeclaration(t)||e.isModuleDeclaration(t)||e.isClassDeclaration(t)||e.isStructDeclaration(t)||e.isInterfaceDeclaration(t)||e.isFunctionLike(t)||e.isIndexSignatureDeclaration(t)||e.isMappedTypeNode(t)}function Y(e,t){R(N.isEntityNameVisible(e,t)),O(N.getTypeReferenceDirectivesForEntityName(e))}function X(t,r){return e.hasJSDocNodes(t)&&e.hasJSDocNodes(r)&&(t.jsDoc=r.jsDoc),e.setCommentRange(t,e.getCommentRange(r))}function Q(r,n){if(n){if(w=w||259!==r.kind&&196!==r.kind,e.isStringLiteralLike(n))if(S){var i=e.getExternalModuleNameFromDeclaration(t.getEmitHost(),N,r);if(i)return T.createStringLiteral(i)}else{var a=N.getSymbolOfExternalModuleSpecifier(n);a&&(f||(f=[])).push(a)}return n}}function Z(t){for(;e.length(u);){var r=u.shift();if(!e.isLateVisibilityPaintedStatement(r))return e.Debug.fail("Late replaced statement was found which is not handled by the declaration transformer!: "+(e.SyntaxKind?e.SyntaxKind[r.kind]:r.kind));var n=x;x=r.parent&&e.isSourceFile(r.parent)&&!(e.isExternalModule(r.parent)&&S);var i=ie(r);x=n,d.set(e.getOriginalNodeId(r),i)}return e.visitNodes(t,(function(t){if(e.isLateVisibilityPaintedStatement(t)){var r=e.getOriginalNodeId(t);if(d.has(r)){var n=d.get(r);return d.delete(r),n&&((e.isArray(n)?e.some(n,e.needsScopeMarker):e.needsScopeMarker(n))&&(D=!0),e.isSourceFile(t.parent)&&(e.isArray(n)?e.some(n,e.isExternalModuleIndicator):e.isExternalModuleIndicator(n))&&(w=!0)),n}}return t}))}function ee(r){if(!oe(r)){if(e.isDeclaration(r)){if(V(r))return;if(e.hasDynamicName(r)&&!N.isLateBound(e.getParseTreeNode(r)))return}if(!(e.isFunctionLike(r)&&N.isImplementationOfOverload(r)||e.isSemicolonClassElement(r))){var n;$(r)&&(n=o,o=r);var i=k,a=e.canProduceDiagnostics(r),s=p,c=(178===r.kind||191===r.kind)&&257!==r.parent.kind;if((e.isMethodDeclaration(r)||e.isMethodSignature(r))&&e.hasEffectiveModifier(r,8)){if(r.symbol&&r.symbol.declarations&&r.symbol.declarations[0]!==r)return;return b(T.createPropertyDeclaration(void 0,ce(r),r.name,void 0,void 0,void 0))}if(a&&!p&&(k=e.createGetSymbolAccessibilityDiagnosticForNode(r)),e.isTypeQueryNode(r)&&Y(r.exprName,o),c&&(p=!0),function(e){switch(e.kind){case 171:case 167:case 166:case 168:case 169:case 164:case 163:case 165:case 170:case 172:case 251:case 160:case 225:case 174:case 185:case 175:case 176:case 196:return!0}return!1}(r))switch(r.kind){case 225:(e.isEntityName(r.expression)||e.isEntityNameExpression(r.expression))&&Y(r.expression,o);var l=e.visitEachChild(r,ee,t);return b(T.updateExpressionWithTypeArguments(l,l.expression,l.typeArguments));case 174:Y(r.typeName,o);l=e.visitEachChild(r,ee,t);return b(T.updateTypeReferenceNode(l,l.typeName,l.typeArguments));case 171:return b(T.updateConstructSignature(r,G(r,r.typeParameters),K(r,r.parameters),J(r,r.type)));case 167:return b(T.createConstructorDeclaration(void 0,ce(r),K(r,r.parameters,0),void 0));case 166:if(e.isPrivateIdentifier(r.name))return b(void 0);var u=void 0;return 255===r.parent.kind&&(u=le(r)),b(T.createMethodDeclaration(u,ce(r),void 0,r.name,r.questionToken,te(r)?void 0:G(r,r.typeParameters),K(r,r.parameters),J(r,r.type),void 0));case 168:if(e.isPrivateIdentifier(r.name))return b(void 0);var d=ue(r,N.getAllAccessorDeclarations(r));return b(T.updateGetAccessorDeclaration(r,void 0,ce(r),r.name,W(r,e.hasEffectiveModifier(r,8)),J(r,d),void 0));case 169:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updateSetAccessorDeclaration(r,void 0,ce(r),r.name,W(r,e.hasEffectiveModifier(r,8)),void 0));case 164:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updatePropertyDeclaration(r,255===r.parent.kind?le(r):void 0,ce(r),r.name,r.questionToken,J(r,r.type),q(r)));case 163:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updatePropertySignature(r,ce(r),r.name,r.questionToken,J(r,r.type)));case 165:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updateMethodSignature(r,ce(r),r.name,r.questionToken,G(r,r.typeParameters),K(r,r.parameters),J(r,r.type)));case 170:return b(T.updateCallSignature(r,G(r,r.typeParameters),K(r,r.parameters),J(r,r.type)));case 172:return b(T.updateIndexSignature(r,void 0,ce(r),K(r,r.parameters),e.visitNode(r.type,ee)||T.createKeywordTypeNode(129)));case 251:return e.isBindingPattern(r.name)?ae(r.name):(c=!0,p=!0,b(T.updateVariableDeclaration(r,r.name,void 0,J(r,r.type),q(r))));case 160:return function(t){return 166===t.parent.kind&&e.hasEffectiveModifier(t.parent,8)}(r)&&(r.default||r.constraint)?b(T.updateTypeParameterDeclaration(r,r.name,void 0,void 0)):b(e.visitEachChild(r,ee,t));case 185:var f=e.visitNode(r.checkType,ee),g=e.visitNode(r.extendsType,ee),h=o;o=r.trueType;var y=e.visitNode(r.trueType,ee);o=h;var v=e.visitNode(r.falseType,ee);return b(T.updateConditionalTypeNode(r,f,g,y,v));case 175:return b(T.updateFunctionTypeNode(r,e.visitNodes(r.typeParameters,ee),K(r,r.parameters),e.visitNode(r.type,ee)));case 176:return b(T.updateConstructorTypeNode(r,ce(r),e.visitNodes(r.typeParameters,ee),K(r,r.parameters),e.visitNode(r.type,ee)));case 196:return e.isLiteralImportTypeNode(r)?b(T.updateImportTypeNode(r,T.updateLiteralTypeNode(r.argument,Q(r,r.argument.literal)),r.qualifier,e.visitNodes(r.typeArguments,ee,e.isTypeNode),r.isTypeOf)):b(r);default:e.Debug.assertNever(r,"Attempted to process unhandled node kind: "+e.SyntaxKind[r.kind])}return e.isTupleTypeNode(r)&&e.getLineAndCharacterOfPosition(_,r.pos).line===e.getLineAndCharacterOfPosition(_,r.end).line&&e.setEmitFlags(r,1),b(e.visitEachChild(r,ee,t))}}function b(t){return t&&a&&e.hasDynamicName(r)&&function(t){var r;p||(r=k,k=e.createGetSymbolAccessibilityDiagnosticForNodeName(t));m=t.name,e.Debug.assert(N.isLateBound(e.getParseTreeNode(t)));var n=t;Y(n.name.expression,o),p||(k=r);m=void 0}(r),$(r)&&(o=n),a&&!p&&(k=i),c&&(p=s),t===r?t:t&&e.setOriginalNode(X(t,r),r)}}function te(t){var r;if(!(null===(r=C.getCompilerOptions().ets)||void 0===r?void 0:r.styles.component)||8!==e.getSourceFileOfNode(t).scriptKind)return!1;var n=t.decorators;if(void 0===n)return!1;for(var i=0,a=n;i<a.length;i++){var o=a[i];if(e.isIdentifier(o.expression)&&"Styles"===o.expression.escapedText.toString())return!0}return!1}function re(t){if(function(e){switch(e.kind){case 253:case 259:case 263:case 256:case 254:case 255:case 257:case 258:case 234:case 264:case 270:case 269:return!0}return!1}(t)&&!oe(t)){switch(t.kind){case 270:return e.isSourceFile(t.parent)&&(w=!0),E=!0,T.updateExportDeclaration(t,void 0,t.modifiers,t.isTypeOnly,t.exportClause,Q(t,t.moduleSpecifier));case 269:if(e.isSourceFile(t.parent)&&(w=!0),E=!0,78===t.expression.kind)return t;var r=T.createUniqueName("_default",16);k=function(){return{diagnosticMessage:e.Diagnostics.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:t}},g=t;var i=T.createVariableDeclaration(r,void 0,N.createTypeOfExpression(t.expression,t,n,A),void 0);return g=void 0,[T.createVariableStatement(x?[T.createModifier(134)]:[],T.createVariableDeclarationList([i],2)),T.updateExportAssignment(t,t.decorators,t.modifiers,r)]}var a=ie(t);return d.set(e.getOriginalNodeId(t),a),t}}function ne(t){if(e.isImportEqualsDeclaration(t)||e.hasEffectiveModifier(t,512)||!e.canHaveModifiers(t))return t;var r=T.createModifiersFromModifierFlags(11262&e.getEffectiveModifierFlags(t));return T.updateModifiers(t,r)}function ie(t){if(!oe(t)){switch(t.kind){case 263:return function(t){if(N.isDeclarationVisible(t)){if(275===t.moduleReference.kind){var r=e.getExternalModuleImportEqualsDeclarationExpression(t);return T.updateImportEqualsDeclaration(t,void 0,t.modifiers,t.isTypeOnly,t.name,T.updateExternalModuleReference(t.moduleReference,Q(t,r)))}var n=k;return k=e.createGetSymbolAccessibilityDiagnosticForNode(t),Y(t.moduleReference,o),k=n,t}}(t);case 264:return function(t){if(!t.importClause)return T.updateImportDeclaration(t,void 0,t.modifiers,t.importClause,Q(t,t.moduleSpecifier));var r=t.importClause&&t.importClause.name&&N.isDeclarationVisible(t.importClause)?t.importClause.name:void 0;if(!t.importClause.namedBindings)return r&&T.updateImportDeclaration(t,void 0,t.modifiers,T.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,void 0),Q(t,t.moduleSpecifier));if(266===t.importClause.namedBindings.kind){var n=N.isDeclarationVisible(t.importClause.namedBindings)?t.importClause.namedBindings:void 0;return r||n?T.updateImportDeclaration(t,void 0,t.modifiers,T.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,n),Q(t,t.moduleSpecifier)):void 0}var i=e.mapDefined(t.importClause.namedBindings.elements,(function(e){return N.isDeclarationVisible(e)?e:void 0}));return i&&i.length||r?T.updateImportDeclaration(t,void 0,t.modifiers,T.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,i&&i.length?T.updateNamedImports(t.importClause.namedBindings,i):void 0),Q(t,t.moduleSpecifier)):N.isImportRequiredByAugmentation(t)?T.updateImportDeclaration(t,void 0,t.modifiers,void 0,Q(t,t.moduleSpecifier)):void 0}(t)}if(!(e.isDeclaration(t)&&V(t)||e.isFunctionLike(t)&&N.isImplementationOfOverload(t))){var r;$(t)&&(r=o,o=t);var a=e.canProduceDiagnostics(t),s=k;a&&(k=e.createGetSymbolAccessibilityDiagnosticForNode(t));var c=x;switch(t.kind){case 257:return he(T.updateTypeAliasDeclaration(t,void 0,ce(t),t.name,e.visitNodes(t.typeParameters,ee,e.isTypeParameterDeclaration),e.visitNode(t.type,ee,e.isTypeNode)));case 256:return he(T.updateInterfaceDeclaration(t,void 0,ce(t),t.name,G(t,t.typeParameters),de(t.heritageClauses),e.visitNodes(t.members,ee)));case 253:var l=he(T.updateFunctionDeclaration(t,8===e.getSourceFileOfNode(t).scriptKind?le(t):void 0,ce(t),void 0,t.name,te(t)?void 0:G(t,t.typeParameters),K(t,t.parameters),J(t,t.type),void 0));if(l&&N.isExpandoFunctionDeclaration(t)){var u=N.getPropertiesOfContainerFunction(t),p=e.parseNodeFactory.createModuleDeclaration(void 0,void 0,l.name||T.createIdentifier("_default"),T.createModuleBlock([]),16);e.setParent(p,o),p.locals=e.createSymbolTable(u),p.symbol=u[0].parent;var f=[],_=e.mapDefined(u,(function(t){if(e.isPropertyAccessExpression(t.valueDeclaration)){k=e.createGetSymbolAccessibilityDiagnosticForNode(t.valueDeclaration);var r=N.createTypeOfDeclaration(t.valueDeclaration,p,n,A);k=s;var i=e.unescapeLeadingUnderscores(t.escapedName),a=e.isStringANonContextualKeyword(i),o=a?T.getGeneratedNameForNode(t.valueDeclaration):T.createIdentifier(i);a&&f.push([o,i]);var c=T.createVariableDeclaration(o,void 0,r,void 0);return T.createVariableStatement(a?void 0:[T.createToken(93)],T.createVariableDeclarationList([c]))}}));f.length?_.push(T.createExportDeclaration(void 0,void 0,!1,T.createNamedExports(e.map(f,(function(e){var t=e[0],r=e[1];return T.createExportSpecifier(t,r)}))))):_=e.mapDefined(_,(function(e){return T.updateModifiers(e,0)}));var h=T.createModuleDeclaration(void 0,ce(t),t.name,T.createModuleBlock(_),16);if(!e.hasEffectiveModifier(l,512))return[l,h];var y=T.createModifiersFromModifierFlags(-514&e.getEffectiveModifierFlags(l)|2),v=T.updateFunctionDeclaration(l,l.decorators,y,void 0,l.name,l.typeParameters,l.parameters,l.type,void 0),b=T.updateModuleDeclaration(h,void 0,y,h.name,h.body),S=T.createExportAssignment(void 0,void 0,!1,h.name);return e.isSourceFile(t.parent)&&(w=!0),E=!0,[v,b,S]}return l;case 259:x=!1;var C=t.body;if(C&&260===C.kind){var P=D,I=E;E=!1,D=!1;var F=Z(e.visitNodes(C.statements,re));8388608&t.flags&&(D=!1),e.isGlobalScopeAugmentation(t)||function(t){return e.some(t,se)}(F)||E||(F=D?T.createNodeArray(i(i([],F),[e.createEmptyExports(T)])):e.visitNodes(F,ne));var O=T.updateModuleBlock(C,F);x=c,D=P,E=I;var R=ce(t);return he(T.updateModuleDeclaration(t,void 0,R,e.isExternalModuleAugmentation(t)?Q(t,t.name):t.name,O))}x=c;R=ce(t);x=!1,e.visitNode(C,re);var M=e.getOriginalNodeId(C);O=d.get(M);return d.delete(M),he(T.updateModuleDeclaration(t,void 0,R,t.name,O));case 255:m=t.name,g=t;var L=le(t),j=(y=T.createNodeArray(ce(t)),G(t,t.typeParameters)),B=e.visitNodes(t.members,ee,void 0,1),z=T.createNodeArray(B);return he(T.updateStructDeclaration(t,L,y,t.name,j,void 0,z));case 254:m=t.name,g=t;y=T.createNodeArray(ce(t)),j=G(t,t.typeParameters);var U=e.getFirstConstructorWithBody(t),W=void 0;if(U){var ie=k;W=e.compact(e.flatMap(U.parameters,(function(t){if(e.hasSyntacticModifier(t,92)&&!oe(t))return k=e.createGetSymbolAccessibilityDiagnosticForNode(t),78===t.name.kind?X(T.createPropertyDeclaration(void 0,ce(t),t.name,t.questionToken,J(t,t.type),q(t)),t):function r(n){for(var i,a=0,o=n.elements;a<o.length;a++){var s=o[a];e.isOmittedExpression(s)||(e.isBindingPattern(s.name)&&(i=e.concatenate(i,r(s.name))),(i=i||[]).push(T.createPropertyDeclaration(void 0,ce(t),s.name,void 0,J(s,void 0),void 0)))}return i}(t.name)}))),k=ie}var ae=e.some(t.members,(function(t){return!!t.name&&e.isPrivateIdentifier(t.name)}))?[T.createPropertyDeclaration(void 0,void 0,T.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,ue=(B=e.concatenate(e.concatenate(ae,W),e.visitNodes(t.members,ee)),z=T.createNodeArray(B),e.getEffectiveBaseTypeNode(t));if(ue&&!e.isEntityNameExpression(ue.expression)&&104!==ue.expression.kind){var pe=t.name?e.unescapeLeadingUnderscores(t.name.escapedText):"default",fe=T.createUniqueName(pe+"_base",16);k=function(){return{diagnosticMessage:e.Diagnostics.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:ue,typeName:t.name}};var me=T.createVariableDeclaration(fe,void 0,N.createTypeOfExpression(ue.expression,t,n,A),void 0),ge=T.createVariableStatement(x?[T.createModifier(134)]:[],T.createVariableDeclarationList([me],2)),_e=T.createNodeArray(e.map(t.heritageClauses,(function(t){if(94===t.token){var r=k;k=e.createGetSymbolAccessibilityDiagnosticForNode(t.types[0]);var n=T.updateHeritageClause(t,e.map(t.types,(function(t){return T.updateExpressionWithTypeArguments(t,fe,e.visitNodes(t.typeArguments,ee))})));return k=r,n}return T.updateHeritageClause(t,e.visitNodes(T.createNodeArray(e.filter(t.types,(function(t){return e.isEntityNameExpression(t.expression)||104===t.expression.kind}))),ee))})));return[ge,he(T.updateClassDeclaration(t,8===e.getSourceFileOfNode(t).scriptKind?le(t):void 0,y,t.name,j,_e,z))]}_e=de(t.heritageClauses);return he(T.updateClassDeclaration(t,8===e.getSourceFileOfNode(t).scriptKind?le(t):void 0,y,t.name,j,_e,z));case 234:return he(function(t){if(!e.forEach(t.declarationList.declarations,H))return;var r=e.visitNodes(t.declarationList.declarations,ee);if(!e.length(r))return;return T.updateVariableStatement(t,T.createNodeArray(ce(t)),T.updateVariableDeclarationList(t.declarationList,r))}(t));case 258:return he(T.updateEnumDeclaration(t,void 0,T.createNodeArray(ce(t)),t.name,T.createNodeArray(e.mapDefined(t.members,(function(e){if(!oe(e)){var t=N.getConstantValue(e);return X(T.updateEnumMember(e,e.name,void 0!==t?"string"==typeof t?T.createStringLiteral(t):T.createNumericLiteral(t):void 0),e)}})))))}return e.Debug.assertNever(t,"Unhandled top-level node in declaration emit: "+e.SyntaxKind[t.kind])}}function he(n){return $(t)&&(o=r),a&&(k=s),259===t.kind&&(x=c),n===t?n:(g=void 0,m=void 0,n&&e.setOriginalNode(X(n,t),t))}}function ae(t){return e.flatten(e.mapDefined(t.elements,(function(t){return function(t){if(224===t.kind)return;if(t.name){if(!H(t))return;return e.isBindingPattern(t.name)?ae(t.name):T.createVariableDeclaration(t.name,void 0,J(t,void 0),void 0)}}(t)})))}function oe(e){return!!F&&!!e&&r(e,_)}function se(t){return e.isExportAssignment(t)||e.isExportDeclaration(t)}function ce(t){var r=e.getEffectiveModifierFlags(t),n=function(t){var r=11003,n=x&&!function(e){if(256===e.kind)return!0;return!1}(t)?2:0,i=300===t.parent.kind;(!i||S&&i&&e.isExternalModule(t.parent))&&(r^=2,n=0);return s(t,r,n)}(t);return r===n?t.modifiers:T.createModifiersFromModifierFlags(n)}function le(t){if(t.decorators)return T.createNodeArray(e.getEffectiveDecorators(t.decorators,C))}function ue(t,r){var n=c(t);return n||t===r.firstAccessor||(n=c(r.firstAccessor),k=e.createGetSymbolAccessibilityDiagnosticForNode(r.firstAccessor)),!n&&r.secondAccessor&&t!==r.secondAccessor&&(n=c(r.secondAccessor),k=e.createGetSymbolAccessibilityDiagnosticForNode(r.secondAccessor)),n}function de(t){return T.createNodeArray(e.filter(e.map(t,(function(t){return T.updateHeritageClause(t,e.visitNodes(T.createNodeArray(e.filter(t.types,(function(r){return e.isEntityNameExpression(r.expression)||94===t.token&&104===r.expression.kind}))),ee))})),(function(e){return e.types&&!!e.types.length})))}}function s(t,r,n){void 0===r&&(r=11259),void 0===n&&(n=0);var i=e.getEffectiveModifierFlags(t)&r|n;return 512&i&&!(1&i)&&(i^=1),512&i&&2&i&&(i^=2),i}function c(e){if(e)return 168===e.kind?e.type:e.parameters.length>0?e.parameters[0].type:void 0}e.transformDeclarations=o}(d||(d={})),function(e){var t,r;function n(t,r,n){if(n)return e.emptyArray;var i=e.getEmitScriptTarget(t),a=e.getEmitModuleKind(t),o=[];return e.addRange(o,r&&e.map(r.before,s)),o.push(e.transformTypeScript),o.push(e.transformClassFields),e.getJSXTransformEnabled(t)&&o.push(e.transformJsx),i<99&&o.push(e.transformESNext),i<7&&o.push(e.transformES2020),i<6&&o.push(e.transformES2019),i<5&&o.push(e.transformES2018),i<4&&o.push(e.transformES2017),i<3&&o.push(e.transformES2016),i<2&&(o.push(e.transformES2015),o.push(e.transformGenerators)),o.push(function(t){switch(t){case e.ModuleKind.ESNext:case e.ModuleKind.ES2020:case e.ModuleKind.ES2015:return e.transformECMAScriptModule;case e.ModuleKind.System:return e.transformSystemModule;default:return e.transformModule}}(a)),i<1&&o.push(e.transformES5),e.addRange(o,r&&e.map(r.after,s)),o}function a(t){var r=[];return r.push(e.transformDeclarations),e.addRange(r,t&&e.map(t.afterDeclarations,c)),r}function o(t,r){return function(n){var i=t(n);return"function"==typeof i?r(n,i):function(t){return function(r){return e.isBundle(r)?t.transformBundle(r):t.transformSourceFile(r)}}(i)}}function s(t){return o(t,e.chainBundle)}function c(e){return o(e,(function(e,t){return t}))}function l(e,t){return t}function u(e,t,r){r(e,t)}!function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Initialized=1]="Initialized",e[e.Completed=2]="Completed",e[e.Disposed=3]="Disposed"}(t||(t={})),function(e){e[e.Substitution=1]="Substitution",e[e.EmitNotifications=2]="EmitNotifications"}(r||(r={})),e.noTransformers={scriptTransformers:e.emptyArray,declarationTransformers:e.emptyArray},e.getTransformers=function(e,t,r){return{scriptTransformers:n(e,t,r),declarationTransformers:a(t)}},e.noEmitSubstitution=l,e.noEmitNotification=u,e.transformNodes=function(t,r,n,a,o,s,c){for(var d,p,f,m,g=new Array(344),_=0,h=[],y=[],v=[],b=[],k=0,x=!1,S=l,w=u,D=0,E=[],T={factory:n,getCompilerOptions:function(){return a},getEmitResolver:function(){return t},getEmitHost:function(){return r},getEmitHelperFactory:e.memoize((function(){return e.createEmitHelperFactory(T)})),startLexicalEnvironment:function(){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(!x,"Lexical environment is suspended."),h[k]=d,y[k]=p,v[k]=f,b[k]=_,k++,d=void 0,p=void 0,f=void 0,_=0},suspendLexicalEnvironment:function(){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(!x,"Lexical environment is already suspended."),x=!0},resumeLexicalEnvironment:function(){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(x,"Lexical environment is not suspended."),x=!1},endLexicalEnvironment:function(){var t;if(e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(!x,"Lexical environment is suspended."),d||p||f){if(p&&(t=i([],p)),d){var r=n.createVariableStatement(void 0,n.createVariableDeclarationList(d));e.setEmitFlags(r,1048576),t?t.push(r):t=[r]}f&&(t=i(t?i([],t):[],f))}k--,d=h[k],p=y[k],f=v[k],_=b[k],0===k&&(h=[],y=[],v=[],b=[]);return t},setLexicalEnvironmentFlags:function(e,t){_=t?_|e:_&~e},getLexicalEnvironmentFlags:function(){return _},hoistVariableDeclaration:function(t){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed.");var r=e.setEmitFlags(n.createVariableDeclaration(t),64);d?d.push(r):d=[r];1&_&&(_|=2)},hoistFunctionDeclaration:function(t){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.setEmitFlags(t,1048576),p?p.push(t):p=[t]},addInitializationStatement:function(t){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.setEmitFlags(t,1048576),f?f.push(t):f=[t]},requestEmitHelper:function t(r){if(e.Debug.assert(D>0,"Cannot modify the transformation context during initialization."),e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed."),e.Debug.assert(!r.scoped,"Cannot request a scoped emit helper."),r.dependencies)for(var n=0,i=r.dependencies;n<i.length;n++){var a=i[n];t(a)}m=e.append(m,r)},readEmitHelpers:function(){e.Debug.assert(D>0,"Cannot modify the transformation context during initialization."),e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed.");var t=m;return m=void 0,t},enableSubstitution:function(t){e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed."),g[t]|=1},enableEmitNotification:function(t){e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed."),g[t]|=2},isSubstitutionEnabled:L,isEmitNotificationEnabled:j,get onSubstituteNode(){return S},set onSubstituteNode(t){e.Debug.assert(D<1,"Cannot modify transformation hooks after initialization has completed."),e.Debug.assert(void 0!==t,"Value must not be 'undefined'"),S=t},get onEmitNode(){return w},set onEmitNode(t){e.Debug.assert(D<1,"Cannot modify transformation hooks after initialization has completed."),e.Debug.assert(void 0!==t,"Value must not be 'undefined'"),w=t},addDiagnostic:function(e){E.push(e)}},C=0,A=o;C<A.length;C++){var N=A[C];e.disposeEmitNodes(e.getSourceFileOfNode(e.getParseTreeNode(N)))}e.performance.mark("beforeTransform");var P=s.map((function(e){return e(T)})),I=function(e){for(var t=0,r=P;t<r.length;t++){e=(0,r[t])(e)}return e};D=1;for(var F=[],O=0,R=o;O<R.length;O++){N=R[O];null===e.tracing||void 0===e.tracing||e.tracing.push("emit","transformNodes",300===N.kind?{path:N.path}:{kind:N.kind,pos:N.pos,end:N.end}),F.push((c?I:M)(N)),null===e.tracing||void 0===e.tracing||e.tracing.pop()}return D=2,e.performance.mark("afterTransform"),e.performance.measure("transformTime","beforeTransform","afterTransform"),{transformed:F,substituteNode:function(t,r){return e.Debug.assert(D<3,"Cannot substitute a node after the result is disposed."),r&&L(r)&&S(t,r)||r},emitNodeWithNotification:function(t,r,n){e.Debug.assert(D<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),r&&(j(r)?w(t,r,n):n(t,r))},isEmitNotificationEnabled:j,dispose:function(){if(D<3){for(var t=0,r=o;t<r.length;t++){var n=r[t];e.disposeEmitNodes(e.getSourceFileOfNode(e.getParseTreeNode(n)))}d=void 0,h=void 0,p=void 0,y=void 0,S=void 0,w=void 0,m=void 0,D=3}},diagnostics:E};function M(t){return!t||e.isSourceFile(t)&&t.isDeclarationFile?t:I(t)}function L(t){return!(!(1&g[t.kind])||4&e.getEmitFlags(t))}function j(t){return!!(2&g[t.kind])||!!(2&e.getEmitFlags(t))}},e.nullTransformationContext={get factory(){return e.factory},enableEmitNotification:e.noop,enableSubstitution:e.noop,endLexicalEnvironment:e.returnUndefined,getCompilerOptions:function(){return{}},getEmitHost:e.notImplemented,getEmitResolver:e.notImplemented,getEmitHelperFactory:e.notImplemented,setLexicalEnvironmentFlags:e.noop,getLexicalEnvironmentFlags:function(){return 0},hoistFunctionDeclaration:e.noop,hoistVariableDeclaration:e.noop,addInitializationStatement:e.noop,isEmitNotificationEnabled:e.notImplemented,isSubstitutionEnabled:e.notImplemented,onEmitNode:e.noop,onSubstituteNode:e.notImplemented,readEmitHelpers:e.notImplemented,requestEmitHelper:e.noop,resumeLexicalEnvironment:e.noop,startLexicalEnvironment:e.noop,suspendLexicalEnvironment:e.noop,addDiagnostic:e.noop}}(d||(d={})),function(e){var t,r,n=function(){var e=[];return e[1024]=["{","}"],e[2048]=["(",")"],e[4096]=["<",">"],e[8192]=["[","]"],e}(),a={pos:-1,end:-1};function o(t,r,n,i,a,o){void 0===i&&(i=!1);var c=e.isArray(n)?n:e.getSourceFilesToEmit(t,n,i),u=t.getCompilerOptions();if(e.outFile(u)){var d=t.getPrependNodes();if(c.length||d.length){var p=e.factory.createBundle(c,d);if(g=r(l(p,t,i),p))return g}}else{if(!a)for(var f=0,m=c;f<m.length;f++){var g,_=m[f];if(g=r(l(_,t,i),_))return g}if(o){var h=s(u);if(h)return r({buildInfoPath:h},void 0)}}}function s(t){var r=t.configFilePath;if(e.isIncrementalCompilation(t)){if(t.tsBuildInfoFile)return t.tsBuildInfoFile;var n,i=e.outFile(t);if(i)n=e.removeFileExtension(i);else{if(!r)return;var a=e.removeFileExtension(r);n=t.outDir?t.rootDir?e.resolvePath(t.outDir,e.getRelativePathFromDirectory(t.rootDir,a,!0)):e.combinePaths(t.outDir,e.getBaseFileName(a)):a}return n+".tsbuildinfo"}}function c(t,r){var n=e.outFile(t),i=t.emitDeclarationOnly?void 0:n,a=i&&u(i,t),o=r||e.getEmitDeclarations(t)?e.removeFileExtension(n)+".d.ts":void 0;return{jsFilePath:i,sourceMapFilePath:a,declarationFilePath:o,declarationMapPath:o&&e.getAreDeclarationMapsEnabled(t)?o+".map":void 0,buildInfoPath:s(t)}}function l(t,r,n){var i=r.getCompilerOptions();if(301===t.kind)return c(i,n);var a=e.getOwnEmitOutputFilePath(t.fileName,r,d(t,i)),o=e.isJsonSourceFile(t),s=o&&0===e.comparePaths(t.fileName,a,r.getCurrentDirectory(),!r.useCaseSensitiveFileNames()),l=i.emitDeclarationOnly||s?void 0:a,p=!l||e.isJsonSourceFile(t)?void 0:u(l,i),f=n||e.getEmitDeclarations(i)&&!o?e.getDeclarationEmitOutputFilePath(t.fileName,r):void 0;return{jsFilePath:l,sourceMapFilePath:p,declarationFilePath:f,declarationMapPath:f&&e.getAreDeclarationMapsEnabled(i)?f+".map":void 0,buildInfoPath:void 0}}function u(e,t){return t.sourceMap&&!t.inlineSourceMap?e+".map":void 0}function d(t,r){if(e.isJsonSourceFile(t))return".json";if(1===r.jsx)if(e.isSourceFileJS(t)){if(e.fileExtensionIs(t.fileName,".jsx"))return".jsx"}else if(1===t.languageVariant)return".jsx";return".js"}function p(t,r,n,i,a){return i?e.resolvePath(i,e.getRelativePathFromDirectory(a?a():v(r,n),t,n)):t}function f(t,r,n,i){return e.Debug.assert(!e.isDeclarationFileName(t)&&!e.fileExtensionIs(t,".json")),e.changeExtension(p(t,r,n,r.options.declarationDir||r.options.outDir,i),e.fileExtensionIs(t,".ets")?".d.ets":".d.ts")}function m(t,r,n,i){if(!r.options.emitDeclarationOnly){var a=e.fileExtensionIs(t,".json"),o=e.changeExtension(p(t,r,n,r.options.outDir,i),a?".json":1===r.options.jsx&&(e.fileExtensionIs(t,".tsx")||e.fileExtensionIs(t,".jsx"))?".jsx":".js");return a&&0===e.comparePaths(t,o,e.Debug.checkDefined(r.options.configFilePath),n)?void 0:o}}function g(){var t;return{addOutput:function(e){e&&(t||(t=[])).push(e)},getOutputs:function(){return t||e.emptyArray}}}function _(e,t){var r=c(e.options,!1),n=r.jsFilePath,i=r.sourceMapFilePath,a=r.declarationFilePath,o=r.declarationMapPath,s=r.buildInfoPath;t(n),t(i),t(a),t(o),t(s)}function h(t,r,n,i,a){if(!e.isDeclarationFileName(r)){var o=m(r,t,n,a);if(i(o),!e.fileExtensionIs(r,".json")&&(o&&t.options.sourceMap&&i(o+".map"),e.getEmitDeclarations(t.options))){var s=f(r,t,n,a);i(s),t.options.declarationMap&&i(s+".map")}}}function y(t,r,n,i,a){var o;return t.rootDir?(o=e.getNormalizedAbsolutePath(t.rootDir,n),null==a||a(t.rootDir)):t.composite&&t.configFilePath?(o=e.getDirectoryPath(e.normalizeSlashes(t.configFilePath)),null==a||a(o)):o=e.computeCommonSourceDirectoryOfFilenames(r(),n,i),o&&o[o.length-1]!==e.directorySeparator&&(o+=e.directorySeparator),o}function v(t,r){var n=t.options,i=t.fileNames;return y(n,(function(){return e.filter(i,(function(t){return!(n.noEmitForJsFiles&&e.fileExtensionIsOneOf(t,e.supportedJSExtensions)||e.isDeclarationFileName(t))}))}),e.getDirectoryPath(e.normalizeSlashes(e.Debug.checkDefined(n.configFilePath))),e.createGetCanonicalFileName(!r))}function b(t,r,n,i,a,s,c){var l,u,d=i.scriptTransformers,p=i.declarationTransformers,f=r.getCompilerOptions(),m=f.sourceMap||f.inlineSourceMap||e.getAreDeclarationMapsEnabled(f)?[]:void 0,g=f.listEmittedFiles?[]:void 0,_=e.createDiagnosticCollection(),h=e.getNewLineCharacter(f,(function(){return r.getNewLine()})),y=e.createTextWriter(h),v=e.performance.createTimer("printTime","beforePrint","afterPrint"),b=v.enter,x=v.exit,w=!1;return b(),o(r,(function(i,o){var s,m=i.jsFilePath,h=i.sourceMapFilePath,y=i.declarationFilePath,v=i.declarationMapPath,b=i.buildInfoPath;b&&o&&e.isBundle(o)&&(s=e.getDirectoryPath(e.getNormalizedAbsolutePath(b,r.getCurrentDirectory())),l={commonSourceDirectory:x(r.getCommonSourceDirectory()),sourceFiles:o.sourceFiles.map((function(t){return x(e.getNormalizedAbsolutePath(t.fileName,r.getCurrentDirectory()))}))});null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitJsFileOrBundle",{jsFilePath:m}),function(n,i,o,s){if(!n||a||!i)return;if(i&&r.isEmitBlocked(i)||f.noEmit)return void(w=!0);var c=e.transformNodes(t,r,e.factory,f,[n],d,!1),u=S({removeComments:f.removeComments,newLine:f.newLine,noEmitHelpers:f.noEmitHelpers,module:f.module,target:f.target,sourceMap:f.sourceMap,inlineSourceMap:f.inlineSourceMap,inlineSources:f.inlineSources,extendedDiagnostics:f.extendedDiagnostics,writeBundleFileInfo:!!l,relativeToBuildInfo:s},{hasGlobalName:t.hasGlobalName,onEmitNode:c.emitNodeWithNotification,isEmitNotificationEnabled:c.isEmitNotificationEnabled,substituteNode:c.substituteNode});e.Debug.assert(1===c.transformed.length,"Should only see one output from the transform"),E(i,o,c.transformed[0],u,f),c.dispose(),l&&(l.js=u.bundleFileInfo)}(o,m,h,x),null===e.tracing||void 0===e.tracing||e.tracing.pop(),null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitDeclarationFileOrBundle",{declarationFilePath:y}),function(n,i,o,s){if(!n)return;if(!i)return void((a||f.emitDeclarationOnly)&&(w=!0));var d=e.isSourceFile(n)?[n]:n.sourceFiles,m=c?d:e.filter(d,e.isSourceFileNotJson),g=e.outFile(f)?[e.factory.createBundle(m,e.isSourceFile(n)?void 0:n.prepends)]:m;a&&!e.getEmitDeclarations(f)&&m.forEach(D);var h=e.transformNodes(t,r,e.factory,f,g,p,!1);if(e.length(h.diagnostics))for(var y=0,v=h.diagnostics;y<v.length;y++){var b=v[y];_.add(b)}var k=S({removeComments:f.removeComments,newLine:f.newLine,noEmitHelpers:!0,module:f.module,target:f.target,sourceMap:f.sourceMap,inlineSourceMap:f.inlineSourceMap,extendedDiagnostics:f.extendedDiagnostics,onlyPrintJsDocStyle:!0,writeBundleFileInfo:!!l,recordInternalSection:!!l,relativeToBuildInfo:s},{hasGlobalName:t.hasGlobalName,onEmitNode:h.emitNodeWithNotification,isEmitNotificationEnabled:h.isEmitNotificationEnabled,substituteNode:h.substituteNode}),x=!!h.diagnostics&&!!h.diagnostics.length||!!r.isEmitBlocked(i)||!!f.noEmit;if(w=w||x,(!x||c)&&(e.Debug.assert(1===h.transformed.length,"Should only see one output from the decl transform"),E(i,o,h.transformed[0],k,{sourceMap:f.declarationMap,sourceRoot:f.sourceRoot,mapRoot:f.mapRoot,extendedDiagnostics:f.extendedDiagnostics}),c&&300===h.transformed[0].kind)){var T=h.transformed[0];u=T.exportedModulesFromDeclarationEmit}h.dispose(),l&&(l.dts=k.bundleFileInfo)}(o,y,v,x),null===e.tracing||void 0===e.tracing||e.tracing.pop(),null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitBuildInfo",{buildInfoPath:b}),function(t,i){if(!i||n||w)return;var a=r.getProgramBuildInfo();if(r.isEmitBlocked(i))return void(w=!0);var o=e.version;e.writeFile(r,_,i,k({bundle:t,program:a,version:o}),!1)}(l,b),null===e.tracing||void 0===e.tracing||e.tracing.pop(),!w&&g&&(a||(m&&g.push(m),h&&g.push(h),b&&g.push(b)),y&&g.push(y),v&&g.push(v));function x(t){return e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(s,t,r.getCanonicalFileName))}}),e.getSourceFilesToEmit(r,n,c),c,s,!n),x(),{emitSkipped:w,diagnostics:_.getDiagnostics(),emittedFiles:g,sourceMaps:m,exportedModulesFromDeclarationEmit:u};function D(r){e.isExportAssignment(r)?78===r.expression.kind&&t.collectLinkedAliases(r.expression,!0):e.isExportSpecifier(r)?t.collectLinkedAliases(r.propertyName||r.name,!0):e.forEachChild(r,D)}function E(t,n,i,a,o){var s,c=301===i.kind?i:void 0,l=300===i.kind?i:void 0,u=c?c.sourceFiles:[l];if(function(t,r){return(t.sourceMap||t.inlineSourceMap)&&(300!==r.kind||!e.fileExtensionIs(r.fileName,".json"))}(o,i)&&(s=e.createSourceMapGenerator(r,e.getBaseFileName(e.normalizeSlashes(t)),function(t){var r=e.normalizeSlashes(t.sourceRoot||"");return r?e.ensureTrailingDirectorySeparator(r):r}(o),function(t,n,i){if(t.sourceRoot)return r.getCommonSourceDirectory();if(t.mapRoot){var a=e.normalizeSlashes(t.mapRoot);return i&&(a=e.getDirectoryPath(e.getSourceFilePathInNewDir(i.fileName,r,a))),0===e.getRootLength(a)&&(a=e.combinePaths(r.getCommonSourceDirectory(),a)),a}return e.getDirectoryPath(e.normalizePath(n))}(o,t,l),o)),c?a.writeBundle(c,y,s):a.writeFile(l,y,s),s){m&&m.push({inputSourceFileNames:s.getSources(),sourceMap:s.toJSON()});var d=function(t,n,i,a,o){if(t.inlineSourceMap){var s=n.toString();return"data:application/json;base64,"+e.base64encode(e.sys,s)}var c=e.getBaseFileName(e.normalizeSlashes(e.Debug.checkDefined(a)));if(t.mapRoot){var l=e.normalizeSlashes(t.mapRoot);return o&&(l=e.getDirectoryPath(e.getSourceFilePathInNewDir(o.fileName,r,l))),0===e.getRootLength(l)?(l=e.combinePaths(r.getCommonSourceDirectory(),l),encodeURI(e.getRelativePathToDirectoryOrUrl(e.getDirectoryPath(e.normalizePath(i)),e.combinePaths(l,c),r.getCurrentDirectory(),r.getCanonicalFileName,!0))):encodeURI(e.combinePaths(l,c))}return encodeURI(c)}(o,s,t,n,l);if(d&&(y.isAtStartOfLine()||y.rawWrite(h),y.writeComment("//# sourceMappingURL="+d)),n){var p=s.toString();e.writeFile(r,_,n,p,!1,u)}}else y.writeLine();e.writeFile(r,_,t,y.getText(),!!f.emitBOM,u),y.clear()}}function k(e){return JSON.stringify(e,void 0,2)}function x(e){return JSON.parse(e)}function S(t,r){void 0===t&&(t={}),void 0===r&&(r={});var i,o,s,c,l,u,d,p,f,m,g,_,h,y,v,b,k,x,S,w=r.hasGlobalName,D=r.onEmitNode,E=void 0===D?e.noEmitNotification:D,T=r.isEmitNotificationEnabled,C=r.substituteNode,A=void 0===C?e.noEmitSubstitution:C,N=r.onBeforeEmitNodeArray,P=r.onAfterEmitNodeArray,I=r.onBeforeEmitToken,F=r.onAfterEmitToken,O=!!t.extendedDiagnostics,R=e.getNewLineCharacter(t),M=e.getEmitModuleKind(t),L=new e.Map,j=t.preserveSourceNewlines,B=function(e){m.write(e)},z=t.writeBundleFileInfo?{sections:[]}:void 0,U=z?e.Debug.checkDefined(t.relativeToBuildInfo):void 0,q=t.recordInternalSection,J=0,V="text",H=!0,K=-1,W=-1,G=-1,$=-1,Y=-1,X=!1,Q=!!t.removeComments,Z=e.performance.createTimerIf(O,"commentTime","beforeComment","afterComment"),ee=Z.enter,te=Z.exit;return ye(),{printNode:function(t,r,n){switch(t){case 0:e.Debug.assert(e.isSourceFile(r),"Expected a SourceFile node.");break;case 2:e.Debug.assert(e.isIdentifier(r),"Expected an Identifier node.");break;case 1:e.Debug.assert(e.isExpression(r),"Expected an Expression node.")}switch(r.kind){case 300:return ne(r);case 301:return re(r);case 302:return function(e,t){var r=m;he(t,void 0),ge(4,e,void 0),ye(),m=r}(r,fe()),me()}return ie(t,r,n,fe()),me()},printList:function(e,t,r){return ae(e,t,r,fe()),me()},printFile:ne,printBundle:re,writeNode:ie,writeList:ae,writeFile:pe,writeBundle:de,bundleFileInfo:z};function re(e){return de(e,fe(),void 0),me()}function ne(e){return pe(e,fe(),void 0),me()}function ie(e,t,r,n){var i=m;he(n,void 0),ge(e,t,r),ye(),m=i}function ae(e,t,r,n){var i=m;he(n,void 0),r&&_e(r),St(a,t,e),ye(),m=i}function oe(){return m.getTextPosWithWriteLine?m.getTextPosWithWriteLine():m.getTextPos()}function se(t,r,n){var i=e.lastOrUndefined(z.sections);i&&i.kind===n?i.end=r:z.sections.push({pos:t,end:r,kind:n})}function ce(t){if(q&&z&&i&&(e.isDeclaration(t)||e.isVariableStatement(t))&&e.isInternalDeclaration(t,i)&&"internal"!==V){var r=V;return ue(m.getTextPos()),J=oe(),V="internal",r}}function le(e){e&&(ue(m.getTextPos()),J=oe(),V=e)}function ue(e){return J<e&&(se(J,e,V),!0)}function de(r,n,i){var a;_=!1;var o=m;he(n,i),ut(r),lt(r),Ne(r),function(t){at(!!t.hasNoDefaultLib,t.syntheticFileReferences||[],t.syntheticTypeReferences||[],t.syntheticLibReferences||[]);for(var r=0,n=t.prepends;r<n.length;r++){var i=n[r];if(e.isUnparsedSource(i)&&i.syntheticReferences)for(var a=0,o=i.syntheticReferences;a<o.length;a++){be(o[a]),Mt()}}}(r);for(var s=0,c=r.prepends;s<c.length;s++){var l=c[s];Mt();var u=m.getTextPos(),d=z&&z.sections;if(d&&(z.sections=[]),ge(4,l,void 0),z){var p=z.sections;z.sections=d,l.oldFileOfCurrentEmit?(a=z.sections).push.apply(a,p):(p.forEach((function(t){return e.Debug.assert(e.isBundleFileTextLike(t))})),z.sections.push({pos:u,end:m.getTextPos(),kind:"prepend",data:U(l.fileName),texts:p}))}}J=oe();for(var f=0,g=r.sourceFiles;f<g.length;f++){var h=g[f];ge(0,h,h)}if(z&&r.sourceFiles.length&&ue(m.getTextPos())){var y=function(t){for(var r,n=new e.Set,i=0;i<t.sourceFiles.length;i++){for(var a=t.sourceFiles[i],o=void 0,s=0,c=0,l=a.statements;c<l.length;c++){var u=l[c];if(!e.isPrologueDirective(u))break;n.has(u.expression.text)||(n.add(u.expression.text),(o||(o=[])).push({pos:u.pos,end:u.end,expression:{pos:u.expression.pos,end:u.expression.end,text:u.expression.text}}),s=s<u.end?u.end:s)}o&&(r||(r=[])).push({file:i,text:a.text.substring(0,s),directives:o})}return r}(r);y&&(z.sources||(z.sources={}),z.sources.prologues=y);var v=function(r){var n;if(M===e.ModuleKind.None||t.noEmitHelpers)return;for(var i=new e.Map,a=0,o=r.sourceFiles;a<o.length;a++){var s=o[a],c=void 0!==e.getExternalHelpersModuleName(s),l=Pe(s);if(l)for(var u=0,d=l;u<d.length;u++){var p=d[u];p.scoped||c||i.get(p.name)||(i.set(p.name,!0),(n||(n=[])).push(p.name))}}return n}(r);v&&(z.sources||(z.sources={}),z.sources.helpers=v)}ye(),m=o}function pe(e,t,r){_=!0;var n=m;he(t,r),ut(e),lt(e),ge(0,e,e),ye(),m=n}function fe(){return g||(g=e.createTextWriter(R))}function me(){var e=g.getText();return g.clear(),e}function ge(e,t,r){r&&_e(r),we(e,t)}function _e(e){i=e,b=void 0,k=void 0,e&&zr(e)}function he(r,n){r&&t.omitTrailingSemicolon&&(r=e.getTrailingSemicolonDeferringWriter(r)),h=n,H=!(m=r)||!h}function ye(){o=[],s=[],c=new e.Set,l=[],u=0,d=[],i=void 0,b=void 0,k=void 0,x=void 0,S=void 0,he(void 0,void 0)}function ve(){return b||(b=e.getLineStarts(i))}function be(e){if(void 0!==e){var t=ce(e),r=we(4,e);return le(t),r}}function ke(e){if(void 0!==e)return we(2,e)}function xe(e){if(void 0!==e)return we(1,e)}function Se(t){return we(e.isStringLiteral(t)?6:4,t)}function we(t,r){var n=x,i=S,a=j;x=r,S=void 0,j&&134217728&e.getEmitFlags(r)&&(j=!1),De(0,t,r)(t,r),e.Debug.assert(x===r);var o=S;return x=n,S=i,j=a,o||r}function De(t,r,n){switch(t){case 0:if(E!==e.noEmitNotification&&(!T||T(n)))return Te;case 1:if(A!==e.noEmitSubstitution&&(S=A(r,n))!==n)return Ae;case 2:if(!Q&&300!==n.kind)return hr;case 3:if(!H&&300!==n.kind&&!e.isInJsonFile(n))return Mr;case 4:return Ce;default:return e.Debug.assertNever(t)}}function Ee(e,t,r){return De(e+1,t,r)}function Te(t,r){e.Debug.assert(x===r);var n=Ee(0,t,r);E(t,r,n),e.Debug.assert(x===r)}function Ce(t,r){if(e.Debug.assert(x===r||S===r),0===t)return function(t){Mt();var r=t.statements;if(kr){if(0===r.length||!e.isPrologueDirective(r[0])||e.nodeIsSynthesized(r[0]))return void kr(t,r,ot)}ot(t)}(e.cast(r,e.isSourceFile));if(2===t)return Oe(e.cast(r,e.isIdentifier));if(6===t)return Ie(e.cast(r,e.isStringLiteral),!0);if(3===t)return function(e){be(e.name),Ot(),Nt("in"),Ot(),be(e.constraint)}(e.cast(r,e.isTypeParameterDeclaration));if(5===t)return e.Debug.assertNode(r,e.isEmptyStatement),Le(!0);if(4===t){if(e.isKeyword(r.kind))return zt(r,Nt);switch(r.kind){case 15:case 16:case 17:return Ie(r,!1);case 302:case 296:return function(e){for(var t=0,r=e.texts;t<r.length;t++){var n=r[t];Mt(),be(n)}}(r);case 295:return Fe(r);case 297:case 298:return o=r,s=oe(),Fe(o),void(z&&se(s,m.getTextPos(),297===o.kind?"text":"internal"));case 299:return function(t){var r=oe();if(Fe(t),z){var n=e.clone(t.section);n.pos=r,n.end=m.getTextPos(),z.sections.push(n)}}(r);case 78:return Oe(r);case 79:return function(e){var t=e.symbol?Tt:B;t(rr(e,!1),e.symbol)}(r);case 158:return function(e){(function(e){78===e.kind?xe(e):be(e)})(e.left),Ct("."),be(e.right)}(r);case 159:return function(e){Ct("["),xe(e.expression),Ct("]")}(r);case 160:return function(e){be(e.name),e.constraint&&(Ot(),Nt("extends"),Ot(),be(e.constraint));e.default&&(Ot(),Pt("="),Ot(),be(e.default))}(r);case 161:return function(e){yt(e,e.decorators),pt(e,e.modifiers),be(e.dotDotDotToken),dt(e.name,It),be(e.questionToken),e.parent&&311===e.parent.kind&&!e.name?be(e.type):ft(e.type);mt(e.initializer,e.type?e.type.end:e.questionToken?e.questionToken.end:e.name?e.name.end:e.modifiers?e.modifiers.end:e.decorators?e.decorators.end:e.pos,e)}(r);case 162:return a=r,Ct("@"),void xe(a.expression);case 163:return function(e){yt(e,e.decorators),pt(e,e.modifiers),dt(e.name,Rt),be(e.questionToken),ft(e.type),At()}(r);case 164:return function(e){yt(e,e.decorators),pt(e,e.modifiers),be(e.name),be(e.questionToken),be(e.exclamationToken),ft(e.type),mt(e.initializer,e.type?e.type.end:e.questionToken?e.questionToken.end:e.name.end,e),At()}(r);case 165:return function(e){ir(e),yt(e,e.decorators),pt(e,e.modifiers),be(e.name),be(e.questionToken),bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type),At(),ar(e)}(r);case 166:return function(e){yt(e,e.decorators),pt(e,e.modifiers),be(e.asteriskToken),be(e.name),be(e.questionToken),Je(e,Ve)}(r);case 167:return function(e){pt(e,e.modifiers),Nt("constructor"),Je(e,Ve)}(r);case 168:case 169:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Nt(168===e.kind?"get":"set"),Ot(),be(e.name),Je(e,Ve)}(r);case 170:return function(e){ir(e),yt(e,e.decorators),pt(e,e.modifiers),bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type),At(),ar(e)}(r);case 171:return function(e){ir(e),yt(e,e.decorators),pt(e,e.modifiers),Nt("new"),Ot(),bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type),At(),ar(e)}(r);case 172:return function(e){yt(e,e.decorators),pt(e,e.modifiers),t=e,r=e.parameters,St(t,r,8848),ft(e.type),At();var t,r}(r);case 195:return function(e){be(e.type),be(e.literal)}(r);case 173:return function(e){e.assertsModifier&&(be(e.assertsModifier),Ot());be(e.parameterName),e.type&&(Ot(),Nt("is"),Ot(),be(e.type))}(r);case 174:return function(e){be(e.typeName),vt(e,e.typeArguments)}(r);case 175:return function(e){ir(e),bt(e,e.typeParameters),xt(e,e.parameters),Ot(),Ct("=>"),Ot(),be(e.type),ar(e)}(r);case 311:return function(e){Nt("function"),kt(e,e.parameters),Ct(":"),be(e.type)}(r);case 176:return function(e){ir(e),pt(e,e.modifiers),Nt("new"),Ot(),bt(e,e.typeParameters),kt(e,e.parameters),Ot(),Ct("=>"),Ot(),be(e.type),ar(e)}(r);case 177:return function(e){Nt("typeof"),Ot(),be(e.exprName)}(r);case 178:return function(t){Ct("{");var r=1&e.getEmitFlags(t)?768:32897;St(t,t.members,524288|r),Ct("}")}(r);case 179:return function(e){be(e.elementType),Ct("["),Ct("]")}(r);case 180:return function(t){ze(22,t.pos,Ct,t);var r=1&e.getEmitFlags(t)?528:657;St(t,t.elements,524288|r),ze(23,t.elements.end,Ct,t)}(r);case 181:return function(e){be(e.type),Ct("?")}(r);case 183:return function(e){St(e,e.types,516)}(r);case 184:return function(e){St(e,e.types,520)}(r);case 185:return function(e){be(e.checkType),Ot(),Nt("extends"),Ot(),be(e.extendsType),Ot(),Ct("?"),Ot(),be(e.trueType),Ot(),Ct(":"),Ot(),be(e.falseType)}(r);case 186:return function(e){Nt("infer"),Ot(),be(e.typeParameter)}(r);case 187:return function(e){Ct("("),be(e.type),Ct(")")}(r);case 225:return function(e){xe(e.expression),vt(e,e.typeArguments)}(r);case 188:return void Nt("this");case 189:return function(e){Ut(e.operator,Nt),Ot(),be(e.type)}(r);case 190:return function(e){be(e.objectType),Ct("["),be(e.indexType),Ct("]")}(r);case 191:return function(t){var r=e.getEmitFlags(t);Ct("{"),1&r?Ot():(Mt(),Lt());t.readonlyToken&&(be(t.readonlyToken),143!==t.readonlyToken.kind&&Nt("readonly"),Ot());Ct("["),we(3,t.typeParameter),t.nameType&&(Ot(),Nt("as"),Ot(),be(t.nameType));Ct("]"),t.questionToken&&(be(t.questionToken),57!==t.questionToken.kind&&Ct("?"));Ct(":"),Ot(),be(t.type),At(),1&r?Ot():(Mt(),jt());Ct("}")}(r);case 192:return function(e){xe(e.literal)}(r);case 194:return function(e){be(e.head),St(e,e.templateSpans,262144)}(r);case 196:return function(e){e.isTypeOf&&(Nt("typeof"),Ot());Nt("import"),Ct("("),be(e.argument),Ct(")"),e.qualifier&&(Ct("."),be(e.qualifier));vt(e,e.typeArguments)}(r);case 306:return void Ct("*");case 307:return void Ct("?");case 308:return function(e){Ct("?"),be(e.type)}(r);case 309:return function(e){Ct("!"),be(e.type)}(r);case 310:return function(e){be(e.type),Ct("=")}(r);case 182:case 312:return function(e){Ct("..."),be(e.type)}(r);case 193:return function(e){be(e.dotDotDotToken),be(e.name),be(e.questionToken),ze(58,e.name.end,Ct,e),Ot(),be(e.type)}(r);case 197:return function(e){Ct("{"),St(e,e.elements,525136),Ct("}")}(r);case 198:return function(e){Ct("["),St(e,e.elements,524880),Ct("]")}(r);case 199:return function(e){be(e.dotDotDotToken),e.propertyName&&(be(e.propertyName),Ct(":"),Ot());be(e.name),mt(e.initializer,e.name.end,e)}(r);case 230:return function(e){xe(e.expression),be(e.literal)}(r);case 231:return void At();case 232:return function(e){Me(e,!e.multiLine&&er(e))}(r);case 234:return function(e){pt(e,e.modifiers),be(e.declarationList),At()}(r);case 233:return Le(!1);case 235:return function(t){xe(t.expression),(!e.isJsonSourceFile(i)||e.nodeIsSynthesized(t.expression))&&At()}(r);case 236:return function(e){var t=ze(99,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.thenStatement),e.elseStatement&&(qt(e,e.thenStatement,e.elseStatement),ze(91,e.thenStatement.end,Nt,e),236===e.elseStatement.kind?(Ot(),be(e.elseStatement)):ht(e,e.elseStatement))}(r);case 237:return function(t){ze(90,t.pos,Nt,t),ht(t,t.statement),e.isBlock(t.statement)&&!j?Ot():qt(t,t.statement,t.expression);je(t,t.statement.end),At()}(r);case 238:return function(e){je(e,e.pos),ht(e,e.statement)}(r);case 239:return function(e){var t=ze(97,e.pos,Nt,e);Ot();var r=ze(20,t,Ct,e);Be(e.initializer),r=ze(26,e.initializer?e.initializer.end:r,Ct,e),_t(e.condition),r=ze(26,e.condition?e.condition.end:r,Ct,e),_t(e.incrementor),ze(21,e.incrementor?e.incrementor.end:r,Ct,e),ht(e,e.statement)}(r);case 240:return function(e){var t=ze(97,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),Be(e.initializer),Ot(),ze(101,e.initializer.end,Nt,e),Ot(),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.statement)}(r);case 241:return function(e){var t=ze(97,e.pos,Nt,e);Ot(),function(e){e&&(be(e),Ot())}(e.awaitModifier),ze(20,t,Ct,e),Be(e.initializer),Ot(),ze(157,e.initializer.end,Nt,e),Ot(),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.statement)}(r);case 242:return function(e){ze(86,e.pos,Nt,e),gt(e.label),At()}(r);case 243:return function(e){ze(80,e.pos,Nt,e),gt(e.label),At()}(r);case 244:return function(e){ze(105,e.pos,Nt,e),_t(e.expression),At()}(r);case 245:return function(e){var t=ze(116,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.statement)}(r);case 246:return function(e){var t=ze(107,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e),Ot(),be(e.caseBlock)}(r);case 247:return function(e){be(e.label),ze(58,e.label.end,Ct,e),Ot(),be(e.statement)}(r);case 248:return function(e){ze(109,e.pos,Nt,e),_t(e.expression),At()}(r);case 249:return function(e){ze(111,e.pos,Nt,e),Ot(),be(e.tryBlock),e.catchClause&&(qt(e,e.tryBlock,e.catchClause),be(e.catchClause));e.finallyBlock&&(qt(e,e.catchClause||e.tryBlock,e.finallyBlock),ze(96,(e.catchClause||e.tryBlock).end,Nt,e),Ot(),be(e.finallyBlock))}(r);case 250:return function(e){Bt(87,e.pos,Nt),At()}(r);case 251:return function(e){be(e.name),be(e.exclamationToken),ft(e.type),mt(e.initializer,e.type?e.type.end:e.name.end,e)}(r);case 252:return function(t){Nt(e.isLet(t)?"let":e.isVarConst(t)?"const":"var"),Ot(),St(t,t.declarations,528)}(r);case 253:return function(e){Ue(e)}(r);case 254:case 255:return Ge(r);case 256:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Nt("interface"),Ot(),be(e.name),bt(e,e.typeParameters),St(e,e.heritageClauses,512),Ot(),Ct("{"),St(e,e.members,129),Ct("}")}(r);case 257:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Nt("type"),Ot(),be(e.name),bt(e,e.typeParameters),Ot(),Ct("="),Ot(),be(e.type),At()}(r);case 258:return function(e){pt(e,e.modifiers),Nt("enum"),Ot(),be(e.name),Ot(),Ct("{"),St(e,e.members,145),Ct("}")}(r);case 259:return function(e){pt(e,e.modifiers),1024&~e.flags&&(Nt(16&e.flags?"namespace":"module"),Ot());be(e.name);var t=e.body;if(!t)return At();for(;259===t.kind;)Ct("."),be(t.name),t=t.body;Ot(),be(t)}(r);case 260:return function(t){ir(t),e.forEach(t.statements,sr),Me(t,er(t)),ar(t)}(r);case 261:return function(e){ze(18,e.pos,Ct,e),St(e,e.clauses,129),ze(19,e.clauses.end,Ct,e,!0)}(r);case 262:return function(e){var t=ze(93,e.pos,Nt,e);Ot(),t=ze(127,t,Nt,e),Ot(),t=ze(141,t,Nt,e),Ot(),be(e.name),At()}(r);case 263:return function(e){pt(e,e.modifiers),ze(100,e.modifiers?e.modifiers.end:e.pos,Nt,e),Ot(),e.isTypeOnly&&(ze(150,e.pos,Nt,e),Ot());be(e.name),Ot(),ze(62,e.name.end,Ct,e),Ot(),function(e){78===e.kind?xe(e):be(e)}(e.moduleReference),At()}(r);case 264:return function(e){pt(e,e.modifiers),ze(100,e.modifiers?e.modifiers.end:e.pos,Nt,e),Ot(),e.importClause&&(be(e.importClause),Ot(),ze(154,e.importClause.end,Nt,e),Ot());xe(e.moduleSpecifier),At()}(r);case 265:return function(e){e.isTypeOnly&&(ze(150,e.pos,Nt,e),Ot());be(e.name),e.name&&e.namedBindings&&(ze(27,e.name.end,Ct,e),Ot());be(e.namedBindings)}(r);case 266:return function(e){var t=ze(41,e.pos,Ct,e);Ot(),ze(127,t,Nt,e),Ot(),be(e.name)}(r);case 272:return function(e){var t=ze(41,e.pos,Ct,e);Ot(),ze(127,t,Nt,e),Ot(),be(e.name)}(r);case 267:case 271:return function(e){Ye(e)}(r);case 268:case 273:return function(e){Xe(e)}(r);case 269:return function(e){var t=ze(93,e.pos,Nt,e);Ot(),e.isExportEquals?ze(62,t,Pt,e):ze(88,t,Nt,e);Ot(),xe(e.expression),At()}(r);case 270:return function(e){var t=ze(93,e.pos,Nt,e);Ot(),e.isTypeOnly&&(t=ze(150,t,Nt,e),Ot());e.exportClause?be(e.exportClause):t=ze(41,t,Ct,e);if(e.moduleSpecifier){Ot(),ze(154,e.exportClause?e.exportClause.end:t,Nt,e),Ot(),xe(e.moduleSpecifier)}At()}(r);case 274:return;case 275:return function(e){Nt("require"),Ct("("),xe(e.expression),Ct(")")}(r);case 11:return function(e){m.writeLiteral(e.text)}(r);case 278:case 281:return function(t){if(Ct("<"),e.isJsxOpeningElement(t)){var r=Yt(t.tagName,t);Qe(t.tagName),vt(t,t.typeArguments),t.attributes.properties&&t.attributes.properties.length>0&&Ot(),be(t.attributes),Xt(t.attributes,t),Ht(r)}Ct(">")}(r);case 279:case 282:return function(t){Ct("</"),e.isJsxClosingElement(t)&&Qe(t.tagName);Ct(">")}(r);case 283:return function(e){be(e.name),function(e,t,r,n){r&&(t(e),n(r))}("=",Ct,e.initializer,Se)}(r);case 284:return function(e){St(e,e.properties,262656)}(r);case 285:return function(e){Ct("{..."),xe(e.expression),Ct("}")}(r);case 286:return function(t){var r;if(t.expression||!Q&&!e.nodeIsSynthesized(t)&&function(t){return function(t){var r=!1;return e.forEachTrailingCommentRange((null==i?void 0:i.text)||"",t+1,(function(){return r=!0})),r}(t)||function(t){var r=!1;return e.forEachLeadingCommentRange((null==i?void 0:i.text)||"",t+1,(function(){return r=!0})),r}(t)}(t.pos)){var n=i&&!e.nodeIsSynthesized(t)&&e.getLineAndCharacterOfPosition(i,t.pos).line!==e.getLineAndCharacterOfPosition(i,t.end).line;n&&m.increaseIndent();var a=ze(18,t.pos,Ct,t);be(t.dotDotDotToken),xe(t.expression),ze(19,(null===(r=t.expression)||void 0===r?void 0:r.end)||a,Ct,t),n&&m.decreaseIndent()}}(r);case 287:return function(e){ze(81,e.pos,Nt,e),Ot(),xe(e.expression),Ze(e,e.statements,e.expression.end)}(r);case 288:return function(e){var t=ze(88,e.pos,Nt,e);Ze(e,e.statements,t)}(r);case 289:return function(e){Ot(),Ut(e.token,Nt),Ot(),St(e,e.types,528)}(r);case 290:return function(e){var t=ze(82,e.pos,Nt,e);Ot(),e.variableDeclaration&&(ze(20,t,Ct,e),be(e.variableDeclaration),ze(21,e.variableDeclaration.end,Ct,e),Ot());be(e.block)}(r);case 291:return function(t){be(t.name),Ct(":"),Ot();var r=t.initializer;if(!(512&e.getEmitFlags(r))){Ar(e.getCommentRange(r).pos)}xe(r)}(r);case 292:return function(e){be(e.name),e.objectAssignmentInitializer&&(Ot(),Ct("="),Ot(),xe(e.objectAssignmentInitializer))}(r);case 293:return function(e){e.expression&&(ze(25,e.pos,Ct,e),xe(e.expression))}(r);case 294:return function(e){be(e.name),mt(e.initializer,e.name.end,e)}(r);case 329:case 336:return function(e){rt(e.tagName),it(e.typeExpression),Ot(),e.isBracketed&&Ct("[");be(e.name),e.isBracketed&&Ct("]");nt(e.comment)}(r);case 330:case 332:case 331:case 328:return rt((n=r).tagName),it(n.typeExpression),void nt(n.comment);case 319:case 318:return function(e){rt(e.tagName),Ot(),Ct("{"),be(e.class),Ct("}"),nt(e.comment)}(r);case 333:return function(e){rt(e.tagName),it(e.constraint),Ot(),St(e,e.typeParameters,528),nt(e.comment)}(r);case 334:return function(e){rt(e.tagName),e.typeExpression&&(304===e.typeExpression.kind?it(e.typeExpression):(Ot(),Ct("{"),B("Object"),e.typeExpression.isArrayType&&(Ct("["),Ct("]")),Ct("}")));e.fullName&&(Ot(),be(e.fullName));nt(e.comment),e.typeExpression&&315===e.typeExpression.kind&&et(e.typeExpression)}(r);case 327:return function(e){rt(e.tagName),e.name&&(Ot(),be(e.name));nt(e.comment),tt(e.typeExpression)}(r);case 316:return tt(r);case 315:return et(r);case 322:case 317:return function(e){rt(e.tagName),nt(e.comment)}(r);case 335:return function(e){rt(e.tagName),be(e.name),nt(e.comment)}(r);case 305:return function(e){Ot(),Ct("{"),be(e.name),Ct("}")}(r);case 314:return function(e){if(B("/**"),e.comment)for(var t=0,r=e.comment.split(/\r\n?|\n/g);t<r.length;t++){var n=r[t];Mt(),Ot(),Ct("*"),Ot(),B(n)}e.tags&&(1!==e.tags.length||332!==e.tags[0].kind||e.comment?St(e,e.tags,33):(Ot(),be(e.tags[0])));Ot(),B("*/")}(r)}if(e.isExpression(r))t=1,A!==e.noEmitSubstitution&&(S=r=A(t,r));else if(e.isToken(r))return zt(r,Ct)}var n,a,o,s;if(1===t)switch(r.kind){case 8:case 9:return function(e){Ie(e,!1)}(r);case 10:case 13:case 14:return Ie(r,!1);case 78:return Oe(r);case 95:case 104:case 106:case 110:case 108:case 100:return void zt(r,Nt);case 200:return function(e){var t=e.elements,r=e.multiLine?65536:0;wt(e,t,8914|r)}(r);case 201:return function(t){e.forEach(t.properties,cr);var r=65536&e.getEmitFlags(t);r&&Lt();var n=t.multiLine?65536:0,a=i.languageVersion>=1&&!e.isJsonSourceFile(i)?64:0;St(t,t.properties,526226|a|n),r&&jt()}(r);case 202:return function(t){var r=e.cast(xe(t.expression),e.isExpression),n=t.questionDotToken||e.setTextRangePosEnd(e.factory.createToken(24),t.expression.end,t.name.pos),i=Zt(t,t.expression,n),a=Zt(t,n,t.name);Vt(i,!1),28===n.kind||!function(t){if(t=e.skipPartiallyEmittedExpressions(t),e.isNumericLiteral(t)){var r=nr(t,!0,!1);return!t.numericLiteralFlags&&!e.stringContains(r,e.tokenToString(24))}if(e.isAccessExpression(t)){var n=e.getConstantValue(t);return"number"==typeof n&&isFinite(n)&&Math.floor(n)===n}}(r)||m.hasTrailingComment()||m.hasTrailingWhitespace()||Ct(".");t.questionDotToken?be(n):ze(n.kind,t.expression.end,Ct,t);Vt(a,!1),be(t.name),Ht(i,a)}(r);case 203:return function(e){xe(e.expression),be(e.questionDotToken),ze(22,e.expression.end,Ct,e),xe(e.argumentExpression),ze(23,e.argumentExpression.end,Ct,e)}(r);case 204:return function(e){xe(e.expression),be(e.questionDotToken),vt(e,e.typeArguments),wt(e,e.arguments,2576)}(r);case 205:return function(e){ze(103,e.pos,Nt,e),Ot(),xe(e.expression),vt(e,e.typeArguments),wt(e,e.arguments,18960)}(r);case 206:return function(e){xe(e.tag),vt(e,e.typeArguments),Ot(),xe(e.template)}(r);case 207:return function(e){Ct("<"),be(e.type),Ct(">"),xe(e.expression)}(r);case 208:return function(e){var t=ze(20,e.pos,Ct,e),r=Yt(e.expression,e);xe(e.expression),Xt(e.expression,e),Ht(r),ze(21,e.expression?e.expression.end:t,Ct,e)}(r);case 209:return function(e){lr(e.name),Ue(e)}(r);case 210:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Je(e,Re)}(r);case 212:return function(e){ze(89,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 213:return function(e){ze(112,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 214:return function(e){ze(114,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 215:return function(e){ze(131,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 216:return function(e){Ut(e.operator,Pt),function(e){var t=e.operand;return 216===t.kind&&(39===e.operator&&(39===t.operator||45===t.operator)||40===e.operator&&(40===t.operator||46===t.operator))}(e)&&Ot();xe(e.operand)}(r);case 217:return function(e){xe(e.operand),Ut(e.operator,Pt)}(r);case 218:return function(t){var r=[t],n=[0],i=0;for(;i>=0;)switch(t=r[i],n[i]){case 0:c(t.left);break;case 1:var a=27!==t.operatorToken.kind,o=Zt(t,t.left,t.operatorToken),s=Zt(t,t.operatorToken,t.right);Vt(o,a),Tr(t.operatorToken.pos),zt(t.operatorToken,101===t.operatorToken.kind?Nt:Pt),Ar(t.operatorToken.end,!0),Vt(s,!0),c(t.right);break;case 2:Ht(o=Zt(t,t.left,t.operatorToken),s=Zt(t,t.operatorToken,t.right)),i--;break;default:return e.Debug.fail("Invalid state "+n[i]+" for emitBinaryExpressionWorker")}function c(t){n[i]++;var a=x,o=S;x=t,S=void 0;var s=De(0,1,t);s===Ce&&e.isBinaryExpression(t)?(i++,n[i]=0,r[i]=t):s(1,t),e.Debug.assert(x===t),x=a,S=o}}(r);case 219:return function(e){var t=Zt(e,e.condition,e.questionToken),r=Zt(e,e.questionToken,e.whenTrue),n=Zt(e,e.whenTrue,e.colonToken),i=Zt(e,e.colonToken,e.whenFalse);xe(e.condition),Vt(t,!0),be(e.questionToken),Vt(r,!0),xe(e.whenTrue),Ht(t,r),Vt(n,!0),be(e.colonToken),Vt(i,!0),xe(e.whenFalse),Ht(n,i)}(r);case 220:return function(e){be(e.head),St(e,e.templateSpans,262144)}(r);case 221:return function(e){ze(125,e.pos,Nt,e),be(e.asteriskToken),_t(e.expression)}(r);case 222:return function(e){ze(25,e.pos,Ct,e),xe(e.expression)}(r);case 223:return function(e){lr(e.name),$e(e)}(r);case 224:return;case 226:return function(e){xe(e.expression),e.type&&(Ot(),Nt("as"),Ot(),be(e.type))}(r);case 227:return function(e){xe(e.expression),Pt("!")}(r);case 228:return function(e){Bt(e.keywordToken,e.pos,Ct),Ct("."),be(e.name)}(r);case 276:return function(e){be(e.openingElement),St(e,e.children,262144),be(e.closingElement)}(r);case 277:return function(e){Ct("<"),Qe(e.tagName),vt(e,e.typeArguments),Ot(),be(e.attributes),Ct("/>")}(r);case 280:return function(e){be(e.openingFragment),St(e,e.children,262144),be(e.closingFragment)}(r);case 339:return function(e){xe(e.expression)}(r);case 340:return function(e){wt(e,e.elements,528)}(r)}}function Ae(t,r){e.Debug.assert(x===r||S===r),Ee(1,t,r)(t,S),e.Debug.assert(x===r||S===r)}function Ne(r){var n=!1,a=301===r.kind?r:void 0;if(!a||M!==e.ModuleKind.None){for(var o=a?a.prepends.length:0,s=a?a.sourceFiles.length+o:1,c=0;c<s;c++){var l=a?c<o?a.prepends[c]:a.sourceFiles[c-o]:r,u=e.isSourceFile(l)?l:e.isUnparsedSource(l)?void 0:i,d=t.noEmitHelpers||!!u&&e.hasRecordedExternalHelpers(u),p=(e.isSourceFile(l)||e.isUnparsedSource(l))&&!_,f=e.isUnparsedSource(l)?l.helpers:Pe(l);if(f)for(var g=0,h=f;g<h.length;g++){var y=h[g];if(y.scoped){if(a)continue}else{if(d)continue;if(p){if(L.get(y.name))continue;L.set(y.name,!0)}}var v=oe();"string"==typeof y.text?Jt(y.text):Jt(y.text(_r)),z&&z.sections.push({pos:v,end:m.getTextPos(),kind:"emitHelpers",data:y.name}),n=!0}}return n}}function Pe(t){var r=e.getEmitHelpers(t);return r&&e.stableSort(r,e.compareEmitHelpers)}function Ie(r,n){var i,a=nr(r,t.neverAsciiEscape,n);!t.sourceMap&&!t.inlineSourceMap||10!==r.kind&&!e.isTemplateLiteralKind(r.kind)?function(e){m.writeStringLiteral(e)}(a):(i=a,m.writeLiteral(i))}function Fe(e){m.rawWrite(e.parent.text.substring(e.pos,e.end))}function Oe(e){(e.symbol?Tt:B)(rr(e,!1),e.symbol),St(e,e.typeArguments,53776)}function Re(e){bt(e,e.typeParameters),xt(e,e.parameters),ft(e.type),Ot(),be(e.equalsGreaterThanToken)}function Me(t,r){ze(18,t.pos,Ct,t);var n=r||1&e.getEmitFlags(t)?768:129;St(t,t.statements,n),ze(19,t.statements.end,Ct,t,!!(1&n))}function Le(e){e?Ct(";"):At()}function je(e,t){var r=ze(115,t,Nt,e);Ot(),ze(20,r,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e)}function Be(e){void 0!==e&&(252===e.kind?be(e):xe(e))}function ze(t,r,n,a,o){var s=e.getParseTreeNode(a),c=s&&s.kind===a.kind,l=r;if(c&&i&&(r=e.skipTrivia(i.text,r)),c&&a.pos!==l){var u=o&&i&&!e.positionsAreOnSameLine(l,r,i);u&&Lt(),Tr(l),u&&jt()}if(r=Ut(t,n,r),c&&a.end!==r){var d=286===a.kind;Ar(r,!d,d)}return r}function Ue(e){yt(e,e.decorators),pt(e,e.modifiers),Nt("function"),be(e.asteriskToken),Ot(),ke(e.name),Je(e,Ve)}function qe(e,t){He(t)}function Je(t,r){var n=t.body;if(n)if(e.isBlock(n)){var i=65536&e.getEmitFlags(t);i&&Lt(),ir(t),e.forEach(t.parameters,sr),sr(t.body),r(t),E?E(4,n,qe):He(n),ar(t),i&&jt()}else r(t),Ot(),xe(n);else r(t),At()}function Ve(e){bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type)}function He(t){Ot(),Ct("{"),Lt();var r=function(t){if(1&e.getEmitFlags(t))return!0;if(t.multiLine)return!1;if(!e.nodeIsSynthesized(t)&&!e.rangeIsOnSingleLine(t,i))return!1;if(Kt(t,t.statements,2)||Gt(t,t.statements,2))return!1;for(var r,n=0,a=t.statements;n<a.length;n++){var o=a[n];if(Wt(r,o,2)>0)return!1;r=o}return!0}(t)?Ke:We;kr?kr(t,t.statements,r):r(t),jt(),Bt(19,t.statements.end,Ct,t)}function Ke(e){We(e,!0)}function We(e,t){var r=st(e.statements),n=m.getTextPos();Ne(e),0===r&&n===m.getTextPos()&&t?(jt(),St(e,e.statements,768),Lt()):St(e,e.statements,1,r)}function Ge(e){$e(e)}function $e(t){e.forEach(t.members,cr),yt(t,t.decorators),pt(t,t.modifiers),e.isStructDeclaration(t)?Nt("struct"):Nt("class"),t.name&&(Ot(),ke(t.name));var r=65536&e.getEmitFlags(t);r&&Lt(),bt(t,t.typeParameters),St(t,t.heritageClauses,0),Ot(),Ct("{"),St(t,t.members,129),Ct("}"),r&&jt()}function Ye(e){Ct("{"),St(e,e.elements,525136),Ct("}")}function Xe(e){e.propertyName&&(be(e.propertyName),Ot(),ze(127,e.propertyName.end,Nt,e),Ot()),be(e.name)}function Qe(e){78===e.kind?xe(e):be(e)}function Ze(t,r,n){var a=163969;1===r.length&&(e.nodeIsSynthesized(t)||e.nodeIsSynthesized(r[0])||e.rangeStartPositionsAreOnSameLine(t,r[0],i))?(Bt(58,n,Ct,t),Ot(),a&=-130):ze(58,n,Ct,t),St(t,r,a)}function et(t){St(t,e.factory.createNodeArray(t.jsDocPropertyTags),33)}function tt(t){t.typeParameters&&St(t,e.factory.createNodeArray(t.typeParameters),33),t.parameters&&St(t,e.factory.createNodeArray(t.parameters),33),t.type&&(Mt(),Ot(),Ct("*"),Ot(),be(t.type))}function rt(e){Ct("@"),be(e)}function nt(e){e&&(Ot(),B(e))}function it(e){e&&(Ot(),Ct("{"),be(e.type),Ct("}"))}function at(e,t,r,n){if(e){var a=m.getTextPos();Ft('/// <reference no-default-lib="true"/>'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"no-default-lib"}),Mt()}if(i&&i.moduleName&&(Ft('/// <amd-module name="'+i.moduleName+'" />'),Mt()),i&&i.amdDependencies)for(var o=0,s=i.amdDependencies;o<s.length;o++){var c=s[o];c.name?Ft('/// <amd-dependency name="'+c.name+'" path="'+c.path+'" />'):Ft('/// <amd-dependency path="'+c.path+'" />'),Mt()}for(var l=0,u=t;l<u.length;l++){var d=u[l];a=m.getTextPos();Ft('/// <reference path="'+d.fileName+'" />'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"reference",data:d.fileName}),Mt()}for(var p=0,f=r;p<f.length;p++){d=f[p],a=m.getTextPos();Ft('/// <reference types="'+d.fileName+'" />'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"type",data:d.fileName}),Mt()}for(var g=0,_=n;g<_.length;g++){d=_[g],a=m.getTextPos();Ft('/// <reference lib="'+d.fileName+'" />'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"lib",data:d.fileName}),Mt()}}function ot(t){var r=t.statements;ir(t),e.forEach(t.statements,sr),Ne(t);var n=e.findIndex(r,(function(t){return!e.isPrologueDirective(t)}));!function(e){e.isDeclarationFile&&at(e.hasNoDefaultLib,e.referencedFiles,e.typeReferenceDirectives,e.libReferenceDirectives)}(t),St(t,r,1,-1===n?r.length:n),ar(t)}function st(t,r,n,i){for(var a=!!r,o=0;o<t.length;o++){var s=t[o];if(!e.isPrologueDirective(s))return o;if(!n||!n.has(s.expression.text)){a&&(a=!1,_e(r)),Mt();var c=m.getTextPos();be(s),i&&z&&z.sections.push({pos:c,end:m.getTextPos(),kind:"prologue",data:s.expression.text}),n&&n.add(s.expression.text)}}return t.length}function ct(e,t){for(var r=0,n=e;r<n.length;r++){var i=n[r];if(!t.has(i.data)){Mt();var a=m.getTextPos();be(i),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"prologue",data:i.data}),t&&t.add(i.data)}}}function lt(t){if(e.isSourceFile(t))st(t.statements,t);else{for(var r=new e.Set,n=0,i=t.prepends;n<i.length;n++){ct(i[n].prologues,r)}for(var a=0,o=t.sourceFiles;a<o.length;a++){var s=o[a];st(s.statements,s,r,!0)}_e(void 0)}}function ut(t){if(e.isSourceFile(t)||e.isUnparsedSource(t)){var r=e.getShebang(t.text);if(r)return Ft(r),Mt(),!0}else{for(var n=0,i=t.prepends;n<i.length;n++){var a=i[n];if(e.Debug.assertNode(a,e.isUnparsedSource),ut(a))return!0}for(var o=0,s=t.sourceFiles;o<s.length;o++){if(ut(s[o]))return!0}}}function dt(e,t){if(e){var r=B;B=t,be(e),B=r}}function pt(e,t){t&&t.length&&(St(e,t,262656),Ot())}function ft(e){e&&(Ct(":"),Ot(),be(e))}function mt(e,t,r){e&&(Ot(),ze(62,t,Pt,r),Ot(),xe(e))}function gt(e){e&&(Ot(),be(e))}function _t(e){e&&(Ot(),xe(e))}function ht(t,r){e.isBlock(r)||1&e.getEmitFlags(t)?(Ot(),be(r)):(Mt(),Lt(),e.isEmptyStatement(r)?we(5,r):be(r),jt())}function yt(e,t){St(e,t,2146305)}function vt(e,t){St(e,t,53776)}function bt(t,r){if(e.isFunctionLike(t)&&t.typeArguments)return vt(t,t.typeArguments);St(t,r,53776)}function kt(e,t){St(e,t,2576)}function xt(t,r){!function(t,r){var n=e.singleOrUndefined(r);return n&&n.pos===t.pos&&e.isArrowFunction(t)&&!t.type&&!e.some(t.decorators)&&!e.some(t.modifiers)&&!e.some(t.typeParameters)&&!e.some(n.decorators)&&!e.some(n.modifiers)&&!n.dotDotDotToken&&!n.questionToken&&!n.type&&!n.initializer&&e.isIdentifier(n.name)}(t,r)?kt(t,r):St(t,r,528)}function St(e,t,r,n,i){Et(be,e,t,r,n,i)}function wt(e,t,r,n,i){Et(xe,e,t,r,n,i)}function Dt(e){switch(60&e){case 0:break;case 16:Ct(",");break;case 4:Ot(),Ct("|");break;case 32:Ot(),Ct("*"),Ot();break;case 8:Ot(),Ct("&")}}function Et(t,r,a,o,s,c){void 0===s&&(s=0),void 0===c&&(c=a?a.length-s:0);var l=void 0===a;if(!(l&&16384&o)){var u=void 0===a||s>=a.length||0===c;if(u&&32768&o)return N&&N(a),void(P&&P(a));if(15360&o&&(Ct(function(e){return n[15360&e][0]}(o)),u&&!l&&Ar(a.pos,!0)),N&&N(a),u)!(1&o)||j&&e.rangeIsOnSingleLine(r,i)?256&o&&!(524288&o)&&Ot():Mt();else{var d=!(262144&o),p=d,m=Kt(r,a,o);m?(Mt(m),p=!1):256&o&&Ot(),128&o&&Lt();for(var g=void 0,_=void 0,h=!1,y=0;y<c;y++){var v=a[s+y];if(32&o)Mt(),Dt(o);else if(g){60&o&&g.end!==r.end&&Tr(g.end),Dt(o),le(_);var b=Wt(g,v,o);b>0?(131&o||(Lt(),h=!0),Mt(b),p=!1):g&&512&o&&Ot()}if(_=ce(v),p){if(Ar)Ar(e.getCommentRange(v).pos)}else p=d;f=v.pos,t(v),h&&(jt(),h=!1),g=v}var k=g?e.getEmitFlags(g):0,x=Q||!!(1024&k),S=(null==a?void 0:a.hasTrailingComma)&&64&o&&16&o;S&&(g&&!x?ze(27,g.end,Ct,g):Ct(",")),g&&r.end!==g.end&&60&o&&!x&&Tr(S&&(null==a?void 0:a.end)?a.end:g.end),128&o&&jt(),le(_);var w=Gt(r,a,o);w?Mt(w):2097408&o&&Ot()}P&&P(a),15360&o&&(u&&!l&&Tr(a.end),Ct(function(e){return n[15360&e][1]}(o)))}}function Tt(e,t){m.writeSymbol(e,t)}function Ct(e){m.writePunctuation(e)}function At(){m.writeTrailingSemicolon(";")}function Nt(e){m.writeKeyword(e)}function Pt(e){m.writeOperator(e)}function It(e){m.writeParameter(e)}function Ft(e){m.writeComment(e)}function Ot(){m.writeSpace(" ")}function Rt(e){m.writeProperty(e)}function Mt(e){void 0===e&&(e=1);for(var t=0;t<e;t++)m.writeLine(t>0)}function Lt(){m.increaseIndent()}function jt(){m.decreaseIndent()}function Bt(t,r,n,i){return H?Ut(t,n,r):function(t,r,n,i,a){if(H||t&&e.isInJsonFile(t))return a(r,n,i);var o=t&&t.emitNode,s=o&&o.flags||0,c=o&&o.tokenSourceMapRanges&&o.tokenSourceMapRanges[r],l=c&&c.source||y;i=Lr(l,c?c.pos:i),!(128&s)&&i>=0&&Br(l,i);i=a(r,n,i),c&&(i=c.end);!(256&s)&&i>=0&&Br(l,i);return i}(i,t,n,r,Ut)}function zt(t,r){I&&I(t),r(e.tokenToString(t.kind)),F&&F(t)}function Ut(t,r,n){var i=e.tokenToString(t);return r(i),n<0?n:n+i.length}function qt(t,r,n){if(1&e.getEmitFlags(t))Ot();else if(j){var i=Zt(t,r,n);i?Mt(i):Ot()}else Mt()}function Jt(t){for(var r=t.split(/\r\n?|\n/g),n=e.guessIndentation(r),i=0,a=r;i<a.length;i++){var o=a[i],s=n?o.slice(n):o;s.length&&(Mt(),B(s))}}function Vt(e,t){e?(Lt(),Mt(e)):t&&Ot()}function Ht(e,t){e&&jt(),t&&jt()}function Kt(t,r,n){if(2&n||j){if(65536&n)return 1;var a=r[0];if(void 0===a)return e.rangeIsOnSingleLine(t,i)?0:1;if(a.pos===f)return 0;if(11===a.kind)return 0;if(!(e.positionIsSynthesized(t.pos)||e.nodeIsSynthesized(a)||a.parent&&e.getOriginalNode(a.parent)!==e.getOriginalNode(t)))return j?$t((function(r){return e.getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter(a.pos,t.pos,i,r)})):e.rangeStartPositionsAreOnSameLine(t,a,i)?0:1;if(Qt(a,n))return 1}return 1&n?1:0}function Wt(t,r,n){if(2&n||j){if(void 0===t||void 0===r)return 0;if(11===r.kind)return 0;if(!e.nodeIsSynthesized(t)&&!e.nodeIsSynthesized(r)&&t.parent===r.parent)return j?$t((function(n){return e.getLinesBetweenRangeEndAndRangeStart(t,r,i,n)})):e.rangeEndIsOnSameLineAsRangeStart(t,r,i)?0:1;if(Qt(t,n)||Qt(r,n))return 1}else if(e.getStartsOnNewLine(r))return 1;return 1&n?1:0}function Gt(t,r,n){if(2&n||j){if(65536&n)return 1;var a=e.lastOrUndefined(r);if(void 0===a)return e.rangeIsOnSingleLine(t,i)?0:1;if(!(e.positionIsSynthesized(t.pos)||e.nodeIsSynthesized(a)||a.parent&&a.parent!==t)){if(j){var o=e.isNodeArray(r)&&!e.positionIsSynthesized(r.end)?r.end:a.end;return $t((function(r){return e.getLinesBetweenPositionAndNextNonWhitespaceCharacter(o,t.end,i,r)}))}return e.rangeEndPositionsAreOnSameLine(t,a,i)?0:1}if(Qt(a,n))return 1}return 1&n&&!(131072&n)?1:0}function $t(t){e.Debug.assert(!!j);var r=t(!0);return 0===r?t(!1):r}function Yt(e,t){var r=j&&Kt(t,[e],0);return r&&Vt(r,!1),!!r}function Xt(e,t){var r=j&&Gt(t,[e],0);r&&Mt(r)}function Qt(t,r){if(e.nodeIsSynthesized(t)){var n=e.getStartsOnNewLine(t);return void 0===n?!!(65536&r):n}return!!(65536&r)}function Zt(t,r,n){return 131072&e.getEmitFlags(t)?0:(t=tr(t),r=tr(r),n=tr(n),e.getStartsOnNewLine(n)?1:e.nodeIsSynthesized(t)||e.nodeIsSynthesized(r)||e.nodeIsSynthesized(n)?0:j?$t((function(t){return e.getLinesBetweenRangeEndAndRangeStart(r,n,i,t)})):e.rangeEndIsOnSameLineAsRangeStart(r,n,i)?0:1)}function er(t){return 0===t.statements.length&&e.rangeEndIsOnSameLineAsRangeStart(t,t,i)}function tr(t){for(;208===t.kind&&e.nodeIsSynthesized(t);)t=t.expression;return t}function rr(t,r){return e.isGeneratedIdentifier(t)?ur(t):(e.isIdentifier(t)||e.isPrivateIdentifier(t))&&(e.nodeIsSynthesized(t)||!t.parent||!i||t.parent&&i&&e.getSourceFileOfNode(t)!==e.getOriginalNode(i))?e.idText(t):10===t.kind&&t.textSourceNode?rr(t.textSourceNode,r):!e.isLiteralExpression(t)||!e.nodeIsSynthesized(t)&&t.parent?e.getSourceTextOfNodeFromSourceFile(i,t,r):t.text}function nr(r,n,a){if(10===r.kind&&r.textSourceNode){var o=r.textSourceNode;if(e.isIdentifier(o)||e.isNumericLiteral(o)){var s=e.isNumericLiteral(o)?o.text:rr(o);return a?'"'+e.escapeJsxAttributeString(s)+'"':n||16777216&e.getEmitFlags(r)?'"'+e.escapeString(s)+'"':'"'+e.escapeNonAsciiString(s)+'"'}return nr(o,n,a)}var c=(n?1:0)|(a?2:0)|(t.terminateUnterminatedLiterals?4:0)|(t.target&&99===t.target?8:0);return e.getLiteralText(r,i,c)}function ir(t){t&&524288&e.getEmitFlags(t)||(l.push(u),u=0,d.push(p))}function ar(t){t&&524288&e.getEmitFlags(t)||(u=l.pop(),p=d.pop())}function or(t){p&&p!==e.lastOrUndefined(d)||(p=new e.Set),p.add(t)}function sr(t){if(t)switch(t.kind){case 232:case 287:case 288:e.forEach(t.statements,sr);break;case 247:case 245:case 237:case 238:sr(t.statement);break;case 236:sr(t.thenStatement),sr(t.elseStatement);break;case 239:case 241:case 240:sr(t.initializer),sr(t.statement);break;case 246:sr(t.caseBlock);break;case 261:e.forEach(t.clauses,sr);break;case 249:sr(t.tryBlock),sr(t.catchClause),sr(t.finallyBlock);break;case 290:sr(t.variableDeclaration),sr(t.block);break;case 234:sr(t.declarationList);break;case 252:e.forEach(t.declarations,sr);break;case 251:case 161:case 199:case 254:case 266:case 272:lr(t.name);break;case 253:lr(t.name),524288&e.getEmitFlags(t)&&(e.forEach(t.parameters,sr),sr(t.body));break;case 197:case 198:case 267:e.forEach(t.elements,sr);break;case 264:sr(t.importClause);break;case 265:lr(t.name),sr(t.namedBindings);break;case 268:lr(t.propertyName||t.name)}}function cr(e){if(e)switch(e.kind){case 291:case 292:case 164:case 166:case 168:case 169:lr(e.name)}}function lr(t){t&&(e.isGeneratedIdentifier(t)?ur(t):e.isBindingPattern(t)&&sr(t))}function ur(t){if(4==(7&t.autoGenerateFlags))return dr(function(t){var r=t.autoGenerateId,n=t,i=n.original;for(;i&&(n=i,!(e.isIdentifier(n)&&4&n.autoGenerateFlags&&n.autoGenerateId!==r));)i=n.original;return n}(t),t.autoGenerateFlags);var r=t.autoGenerateId;return s[r]||(s[r]=function(t){switch(7&t.autoGenerateFlags){case 1:return mr(0,!!(8&t.autoGenerateFlags));case 2:return mr(268435456,!!(8&t.autoGenerateFlags));case 3:return gr(e.idText(t),32&t.autoGenerateFlags?fr:pr,!!(16&t.autoGenerateFlags),!!(8&t.autoGenerateFlags))}return e.Debug.fail("Unsupported GeneratedIdentifierKind.")}(t))}function dr(t,r){var n=e.getNodeId(t);return o[n]||(o[n]=function(t,r){switch(t.kind){case 78:return gr(rr(t),pr,!!(16&r),!!(8&r));case 259:case 258:return function(t){var r=rr(t.name);return function(t,r){for(var n=r;e.isNodeDescendantOf(n,r);n=n.nextContainer)if(n.locals){var i=n.locals.get(e.escapeLeadingUnderscores(t));if(i&&3257279&i.flags)return!1}return!0}(r,t)?r:gr(r)}(t);case 264:case 270:return function(t){var r=e.getExternalModuleName(t);return gr(e.isStringLiteral(r)?e.makeIdentifierFromModuleName(r.text):"module")}(t);case 253:case 254:case 269:return gr("default");case 223:return gr("class");case 166:case 168:case 169:return function(t){if(e.isIdentifier(t.name))return dr(t.name);return mr(0)}(t);case 159:return mr(0,!0);default:return mr(0)}}(t,r))}function pr(e){return fr(e)&&!c.has(e)&&!(p&&p.has(e))}function fr(t){return!i||e.isFileLevelUniqueName(i,t,w)}function mr(e,t){if(e&&!(u&e)&&pr(r=268435456===e?"_i":"_n"))return u|=e,t&&or(r),r;for(;;){var r,n=268435455&u;if(u++,8!==n&&13!==n)if(pr(r=n<26?"_"+String.fromCharCode(97+n):"_"+(n-26)))return t&&or(r),r}}function gr(e,t,r,n){if(void 0===t&&(t=pr),r&&t(e))return n?or(e):c.add(e),e;95!==e.charCodeAt(e.length-1)&&(e+="_");for(var i=1;;){var a=e+i;if(t(a))return n?or(a):c.add(a),a;i++}}function _r(e){return gr(e,fr,!0)}function hr(t,r){e.Debug.assert(x===r||S===r),ee(),X=!1;var n=e.getEmitFlags(r),i=e.getCommentRange(r),a=i.pos,o=i.end,s=338!==r.kind,c=a<0||!!(512&n)||11===r.kind,l=o<0||!!(1024&n)||11===r.kind,u=G,d=$,p=Y;(a>0||o>0)&&a!==o&&(c||xr(a,s),(!c||a>=0&&512&n)&&(G=a),(!l||o>=0&&1024&n)&&($=o,252===r.kind&&(Y=o))),e.forEach(e.getSyntheticLeadingComments(r),yr),te();var f=Ee(2,t,r);2048&n?(Q=!0,f(t,r),Q=!1):f(t,r),ee(),e.forEach(e.getSyntheticTrailingComments(r),vr),(a>0||o>0)&&a!==o&&(G=u,$=d,Y=p,!l&&s&&function(e){Fr(e,Cr)}(o)),te(),e.Debug.assert(x===r||S===r)}function yr(e){(e.hasLeadingNewline||2===e.kind)&&m.writeLine(),br(e),e.hasTrailingNewLine||2===e.kind?m.writeLine():m.writeSpace(" ")}function vr(e){m.isAtStartOfLine()||m.writeSpace(" "),br(e),e.hasTrailingNewLine&&m.writeLine()}function br(t){var r=function(e){return 3===e.kind?"/*"+e.text+"*/":"//"+e.text}(t),n=3===t.kind?e.computeLineStarts(r):void 0;e.writeCommentRange(r,n,m,0,r.length,R)}function kr(t,r,n){ee();var a,o,s=r.pos,c=r.end,l=e.getEmitFlags(t),u=Q||c<0||!!(1024&l);s<0||!!(512&l)||(a=r,(o=e.emitDetachedComments(i.text,ve(),m,Or,a,R,Q))&&(k?k.push(o):k=[o])),te(),2048&l&&!Q?(Q=!0,n(t),Q=!1):n(t),ee(),u||(xr(r.end,!0),X&&!m.isAtStartOfLine()&&m.writeLine()),te()}function xr(e,t){X=!1,t?0===e&&(null==i?void 0:i.isDeclarationFile)?Ir(e,wr):Ir(e,Er):0===e&&Ir(e,Sr)}function Sr(e,t,r,n,i){Rr(e,t)&&Er(e,t,r,n,i)}function wr(e,t,r,n,i){Rr(e,t)||Er(e,t,r,n,i)}function Dr(r,n){return!t.onlyPrintJsDocStyle||(e.isJSDocLikeText(r,n)||e.isPinnedComment(r,n))}function Er(t,r,n,a,o){Dr(i.text,t)&&(X||(e.emitNewLineBeforeLeadingCommentOfPosition(ve(),m,o,t),X=!0),jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),a?m.writeLine():3===n&&m.writeSpace(" "))}function Tr(e){Q||-1===e||xr(e,!0)}function Cr(t,r,n,a){Dr(i.text,t)&&(m.isAtStartOfLine()||m.writeSpace(" "),jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),a&&m.writeLine())}function Ar(e,t,r){Q||(ee(),Fr(e,t?Cr:r?Nr:Pr),te())}function Nr(t,r,n){jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),2===n&&m.writeLine()}function Pr(t,r,n,a){jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),a?m.writeLine():m.writeSpace(" ")}function Ir(t,r){!i||-1!==G&&t===G||(function(t){return void 0!==k&&e.last(k).nodePos===t}(t)?function(t){var r=e.last(k).detachedCommentEndPos;k.length-1?k.pop():k=void 0;e.forEachLeadingCommentRange(i.text,r,t,r)}(r):e.forEachLeadingCommentRange(i.text,t,r,t))}function Fr(t,r){i&&(-1===$||t!==$&&t!==Y)&&e.forEachTrailingCommentRange(i.text,t,r)}function Or(t,r,n,a,o,s){Dr(i.text,a)&&(jr(a),e.writeCommentRange(t,r,n,a,o,s),jr(o))}function Rr(t,r){return e.isRecognizedTripleSlashComment(i.text,t,r)}function Mr(t,r){e.Debug.assert(x===r||S===r);var n=Ee(3,t,r);if(e.isUnparsedSource(r)||e.isUnparsedPrepend(r))n(t,r);else if(e.isUnparsedNode(r)){var i=function(t){return void 0===t.parsedSourceMap&&void 0!==t.sourceMapText&&(t.parsedSourceMap=e.tryParseRawSourceMap(t.sourceMapText)||!1),t.parsedSourceMap||void 0}(r.parent);i&&h&&h.appendSourceMap(m.getLine(),m.getColumn(),i,r.parent.sourceMapPath,r.parent.getLineAndCharacterOfPosition(r.pos),r.parent.getLineAndCharacterOfPosition(r.end)),n(t,r)}else{var a=e.getSourceMapRange(r),o=a.pos,s=a.end,c=a.source,l=void 0===c?y:c,u=e.getEmitFlags(r);338!==r.kind&&!(16&u)&&o>=0&&Br(l,Lr(l,o)),64&u?(H=!0,n(t,r),H=!1):n(t,r),338!==r.kind&&!(32&u)&&s>=0&&Br(l,s)}e.Debug.assert(x===r||S===r)}function Lr(t,r){return t.skipTrivia?t.skipTrivia(r):e.skipTrivia(t.text,r)}function jr(t){if(!(H||e.positionIsSynthesized(t)||Ur(y))){var r=e.getLineAndCharacterOfPosition(y,t),n=r.line,i=r.character;h.addMapping(m.getLine(),m.getColumn(),K,n,i,void 0)}}function Br(e,t){if(e!==y){var r=y,n=K;zr(e),jr(t),function(e,t){y=e,K=t}(r,n)}else jr(t)}function zr(e){H||(y=e,e!==v?Ur(e)||(K=h.addSource(e.fileName),t.inlineSources&&h.setSourceContent(K,e.text),v=e,W=K):K=W)}function Ur(t){return e.fileExtensionIs(t.fileName,".json")}}e.isBuildInfoFile=function(t){return e.fileExtensionIs(t,".tsbuildinfo")},e.forEachEmittedFile=o,e.getTsBuildInfoEmitOutputFilePath=s,e.getOutputPathsForBundle=c,e.getOutputPathsFor=l,e.getOutputExtension=d,e.getOutputDeclarationFileName=f,e.getCommonSourceDirectory=y,e.getCommonSourceDirectoryOfConfig=v,e.getAllProjectOutputs=function(t,r){var n=g(),i=n.addOutput,a=n.getOutputs;if(e.outFile(t.options))_(t,i);else{for(var o=e.memoize((function(){return v(t,r)})),c=0,l=t.fileNames;c<l.length;c++){var u=l[c];h(t,u,r,i,o)}i(s(t.options))}return a()},e.getOutputFileNames=function(t,r,n){r=e.normalizePath(r),e.Debug.assert(e.contains(t.fileNames,r),"Expected fileName to be present in command line");var i=g(),a=i.addOutput,o=i.getOutputs;return e.outFile(t.options)?_(t,a):h(t,r,n,a),o()},e.getFirstProjectOutput=function(t,r){if(e.outFile(t.options)){var n=c(t.options,!1).jsFilePath;return e.Debug.checkDefined(n,"project "+t.options.configFilePath+" expected to have at least one output")}for(var i=e.memoize((function(){return v(t,r)})),a=0,o=t.fileNames;a<o.length;a++){var l=o[a];if(!e.isDeclarationFileName(l)){if(n=m(l,t,r,i))return n;if(!e.fileExtensionIs(l,".json")&&e.getEmitDeclarations(t.options))return f(l,t,r,i)}}var u=s(t.options);return u||e.Debug.fail("project "+t.options.configFilePath+" expected to have at least one output")},e.emitFiles=b,e.getBuildInfoText=k,e.getBuildInfo=x,e.notImplementedResolver={hasGlobalName:e.notImplemented,getReferencedExportContainer:e.notImplemented,getReferencedImportDeclaration:e.notImplemented,getReferencedDeclarationWithCollidingName:e.notImplemented,isDeclarationWithCollidingName:e.notImplemented,isValueAliasDeclaration:e.notImplemented,isReferencedAliasDeclaration:e.notImplemented,isReferenced:e.notImplemented,isTopLevelValueImportEqualsWithEntityName:e.notImplemented,getNodeCheckFlags:e.notImplemented,isDeclarationVisible:e.notImplemented,isLateBound:function(e){return!1},collectLinkedAliases:e.notImplemented,isImplementationOfOverload:e.notImplemented,isRequiredInitializedParameter:e.notImplemented,isOptionalUninitializedParameterProperty:e.notImplemented,isExpandoFunctionDeclaration:e.notImplemented,getPropertiesOfContainerFunction:e.notImplemented,createTypeOfDeclaration:e.notImplemented,createReturnTypeOfSignatureDeclaration:e.notImplemented,createTypeOfExpression:e.notImplemented,createLiteralConstValue:e.notImplemented,isSymbolAccessible:e.notImplemented,isEntityNameVisible:e.notImplemented,getConstantValue:e.notImplemented,getReferencedValueDeclaration:e.notImplemented,getTypeReferenceSerializationKind:e.notImplemented,isOptionalParameter:e.notImplemented,moduleExportsSomeValue:e.notImplemented,isArgumentsLocalBinding:e.notImplemented,getExternalModuleFileFromDeclaration:e.notImplemented,getTypeReferenceDirectivesForEntityName:e.notImplemented,getTypeReferenceDirectivesForSymbol:e.notImplemented,isLiteralConstDeclaration:e.notImplemented,getJsxFactoryEntity:e.notImplemented,getJsxFragmentFactoryEntity:e.notImplemented,getAllAccessorDeclarations:e.notImplemented,getSymbolOfExternalModuleSpecifier:e.notImplemented,isBindingCapturedByNode:e.notImplemented,getDeclarationStatementsForSourceFile:e.notImplemented,isImportRequiredByAugmentation:e.notImplemented},e.emitUsingBuildInfo=function(t,r,n,a){var o=c(t.options,!1),s=o.buildInfoPath,l=o.jsFilePath,u=o.sourceMapFilePath,d=o.declarationFilePath,p=o.declarationMapPath,f=r.readFile(e.Debug.checkDefined(s));if(!f)return s;var m=r.readFile(e.Debug.checkDefined(l));if(!m)return l;var g=u&&r.readFile(u);if(u&&!g||t.options.inlineSourceMap)return u||"inline sourcemap decoding";var _=d&&r.readFile(d);if(d&&!_)return d;var h=p&&r.readFile(p);if(p&&!h||t.options.inlineSourceMap)return p||"inline sourcemap decoding";var y=x(f);if(!y.bundle||!y.bundle.js||_&&!y.bundle.dts)return s;var v=e.getDirectoryPath(e.getNormalizedAbsolutePath(s,r.getCurrentDirectory())),S=e.createInputFiles(m,_,u,g,p,h,l,d,s,y,!0),w=[],D=e.createPrependNodes(t.projectReferences,n,(function(e){return r.readFile(e)})),E=function(t,r,n){var i,a=e.Debug.checkDefined(t.js),o=(null===(i=a.sources)||void 0===i?void 0:i.prologues)&&e.arrayToMap(a.sources.prologues,(function(e){return e.file}));return t.sourceFiles.map((function(t,i){var a,s,c=null==o?void 0:o.get(i),l=null==c?void 0:c.directives.map((function(t){var r=e.setTextRange(e.factory.createStringLiteral(t.expression.text),t.expression),n=e.setTextRange(e.factory.createExpressionStatement(r),t);return e.setParent(r,n),n})),u=e.factory.createToken(1),d=e.factory.createSourceFile(null!=l?l:[],u,0);return d.fileName=e.getRelativePathFromDirectory(n.getCurrentDirectory(),e.getNormalizedAbsolutePath(t,r),!n.useCaseSensitiveFileNames()),d.text=null!==(a=null==c?void 0:c.text)&&void 0!==a?a:"",e.setTextRangePosWidth(d,0,null!==(s=null==c?void 0:c.text.length)&&void 0!==s?s:0),e.setEachParent(d.statements,d),e.setTextRangePosWidth(u,d.end,0),e.setParent(u,d),d}))}(y.bundle,v,r),T={getPrependNodes:e.memoize((function(){return i(i([],D),[S])})),getCanonicalFileName:r.getCanonicalFileName,getCommonSourceDirectory:function(){return e.getNormalizedAbsolutePath(y.bundle.commonSourceDirectory,v)},getCompilerOptions:function(){return t.options},getCurrentDirectory:function(){return r.getCurrentDirectory()},getNewLine:function(){return r.getNewLine()},getSourceFile:e.returnUndefined,getSourceFileByPath:e.returnUndefined,getSourceFiles:function(){return E},getLibFileFromReference:e.notImplemented,isSourceFileFromExternalLibrary:e.returnFalse,getResolvedProjectReferenceToRedirect:e.returnUndefined,getProjectReferenceRedirect:e.returnUndefined,isSourceOfProjectReferenceRedirect:e.returnFalse,writeFile:function(t,r,n){switch(t){case l:if(m===r)return;break;case u:if(g===r)return;break;case s:var i=x(r);i.program=y.program;var a=y.bundle,o=a.js,c=a.dts,f=a.sourceFiles;return i.bundle.js.sources=o.sources,c&&(i.bundle.dts.sources=c.sources),i.bundle.sourceFiles=f,void w.push({name:t,text:k(i),writeByteOrderMark:n});case d:if(_===r)return;break;case p:if(h===r)return;break;default:e.Debug.fail("Unexpected path: "+t)}w.push({name:t,text:r,writeByteOrderMark:n})},isEmitBlocked:e.returnFalse,readFile:function(e){return r.readFile(e)},fileExists:function(e){return r.fileExists(e)},useCaseSensitiveFileNames:function(){return r.useCaseSensitiveFileNames()},getProgramBuildInfo:e.returnUndefined,getSourceFileFromReference:e.returnUndefined,redirectTargetsMap:e.createMultiMap(),getFileIncludeReasons:e.notImplemented};return b(e.notImplementedResolver,T,void 0,e.getTransformers(t.options,a)),w},function(e){e[e.Notification=0]="Notification",e[e.Substitution=1]="Substitution",e[e.Comments=2]="Comments",e[e.SourceMaps=3]="SourceMaps",e[e.Emit=4]="Emit"}(t||(t={})),e.createPrinter=S,function(e){e[e.Auto=0]="Auto",e[e.CountMask=268435455]="CountMask",e[e._i=268435456]="_i"}(r||(r={}))}(d||(d={})),function(e){var t;function r(e){e.watcher.close()}e.createCachedDirectoryStructureHost=function(t,r,n){if(t.getDirectories&&t.readDirectory){var i=new e.Map,a=e.createGetCanonicalFileName(n);return{useCaseSensitiveFileNames:n,fileExists:function(e){var r=c(o(e));return r&&p(r.files,l(e))||t.fileExists(e)},readFile:function(e,r){return t.readFile(e,r)},directoryExists:t.directoryExists&&function(r){var n=o(r);return i.has(e.ensureTrailingDirectorySeparator(n))||t.directoryExists(r)},getDirectories:function(e){var r=o(e),n=u(e,r);if(n)return n.directories.slice();return t.getDirectories(e)},readDirectory:function(i,a,s,c,l){var d=o(i),p=u(i,d);if(p)return e.matchFiles(i,a,s,c,n,r,l,(function(t){var r=o(t);if(r===d)return p;return u(t,r)||e.emptyFileSystemEntries}),m);return t.readDirectory(i,a,s,c,l)},createDirectory:t.createDirectory&&function(e){var r=c(o(e)),n=l(e);r&&f(r.directories,n,!0);t.createDirectory(e)},writeFile:t.writeFile&&function(e,r,n){var i=c(o(e));i&&g(i,l(e),!0);return t.writeFile(e,r,n)},addOrDeleteFileOrDirectory:function(e,r){if(s(r))return void _();var n=c(r);if(!n)return;if(!t.directoryExists)return void _();var i=l(e),a={fileExists:t.fileExists(r),directoryExists:t.directoryExists(r)};a.directoryExists||p(n.directories,i)?_():g(n,i,a.fileExists);return a},addOrDeleteFile:function(t,r,n){if(n===e.FileWatcherEventKind.Changed)return;var i=c(r);i&&g(i,l(t),n===e.FileWatcherEventKind.Created)},clearCache:_,realpath:t.realpath&&m}}function o(t){return e.toPath(t,r,a)}function s(t){return i.get(e.ensureTrailingDirectorySeparator(t))}function c(t){return s(e.getDirectoryPath(t))}function l(t){return e.getBaseFileName(e.normalizePath(t))}function u(r,n){var a=s(n=e.ensureTrailingDirectorySeparator(n));if(a)return a;try{return function(r,n){var a={files:e.map(t.readDirectory(r,void 0,void 0,["*.*"]),l)||[],directories:t.getDirectories(r)||[]};return i.set(e.ensureTrailingDirectorySeparator(n),a),a}(r,n)}catch(t){return void e.Debug.assert(!i.has(e.ensureTrailingDirectorySeparator(n)))}}function d(e,t){return a(e)===a(t)}function p(t,r){return e.some(t,(function(e){return d(e,r)}))}function f(t,r,n){if(p(t,r)){if(!n)return e.filterMutate(t,(function(e){return!d(e,r)}))}else if(n)return t.push(r)}function m(e){return t.realpath?t.realpath(e):e}function g(e,t,r){f(e.files,t,r)}function _(){i.clear()}},function(e){e[e.None=0]="None",e[e.Partial=1]="Partial",e[e.Full=2]="Full"}(e.ConfigFileProgramReloadLevel||(e.ConfigFileProgramReloadLevel={})),e.updateSharedExtendedConfigFileWatcher=function(t,r,n,i,a){var o,s=e.arrayToMap((null===(o=null==r?void 0:r.options.configFile)||void 0===o?void 0:o.extendedSourceFiles)||e.emptyArray,a);n.forEach((function(e,r){s.has(r)||(e.projects.delete(t),e.close())})),s.forEach((function(r,a){var o=n.get(a);o?o.projects.add(t):n.set(a,{projects:new e.Set([t]),fileWatcher:i(r,a),close:function(){var e=n.get(a);e&&0===e.projects.size&&(e.fileWatcher.close(),n.delete(a))}})}))},e.updateMissingFilePathsWatch=function(t,r,n){var i=t.getMissingFilePaths(),a=e.arrayToMap(i,e.identity,e.returnTrue);e.mutateMap(r,a,{createNewValue:n,onDeleteValue:e.closeFileWatcher})},e.updateWatchingWildcardDirectories=function(t,n,i){function a(e,t){return{watcher:i(e,t),flags:t}}e.mutateMap(t,n,{createNewValue:a,onDeleteValue:r,onExistingValue:function(e,r,n){if(e.flags===r)return;e.watcher.close(),t.set(n,a(n,r))}})},e.isIgnoredFileFromWildCardWatching=function(t){var r=t.watchedDirPath,n=t.fileOrDirectory,i=t.fileOrDirectoryPath,a=t.configFileName,o=t.options,s=t.program,c=t.extraFileExtensions,l=t.currentDirectory,u=t.useCaseSensitiveFileNames,d=t.writeLog,p=e.removeIgnoredPath(i);if(!p)return d("Project: "+a+" Detected ignored path: "+n),!0;if((i=p)===r)return!1;if(e.hasExtension(i)&&!e.isSupportedSourceFileName(n,o,c))return d("Project: "+a+" Detected file add/remove of non supported extension: "+n),!0;if(e.isExcludedFile(n,o.configFile.configFileSpecs,e.getNormalizedAbsolutePath(e.getDirectoryPath(a),l),u,l))return d("Project: "+a+" Detected excluded file: "+n),!0;if(!s)return!1;if(o.outFile||o.outDir)return!1;if(e.isDeclarationFileName(i)){if(o.declarationDir)return!1}else if(!e.fileExtensionIsOneOf(i,e.supportedJSExtensions))return!1;var f=e.removeFileExtension(i),m=function(e){return!!e.getState}(s)?s.getProgramOrUndefined():s;return!!(g(f+".ts")||g(f+".tsx")||g(f+".ets"))&&(d("Project: "+a+" Detected output file: "+n),!0);function g(e){return m?!!m.getSourceFileByPath(e):s.getState().fileInfos.has(e)}},e.isEmittedFileOfProgram=function(e,t){return!!e&&e.isEmittedFile(t)},function(e){e[e.None=0]="None",e[e.TriggerOnly=1]="TriggerOnly",e[e.Verbose=2]="Verbose"}(t=e.WatchLogLevel||(e.WatchLogLevel={})),e.getWatchFactory=function(r,n,a,o){e.setSysLog(n===t.Verbose?a:e.noop);var s={watchFile:function(e,t,n,i){return r.watchFile(e,t,n,i)},watchDirectory:function(e,t,n,i){return r.watchDirectory(e,t,!!(1&n),i)}},c=n!==t.None?{watchFile:p("watchFile"),watchDirectory:p("watchDirectory")}:void 0,l=n===t.Verbose?{watchFile:function(e,t,r,n,i,s){a("FileWatcher:: Added:: "+f(e,r,n,i,s,o));var l=c.watchFile(e,t,r,n,i,s);return{close:function(){a("FileWatcher:: Close:: "+f(e,r,n,i,s,o)),l.close()}}},watchDirectory:function(t,r,n,i,s,l){var u="DirectoryWatcher:: Added:: "+f(t,n,i,s,l,o);a(u);var d=e.timestamp(),p=c.watchDirectory(t,r,n,i,s,l),m=e.timestamp()-d;return a("Elapsed:: "+m+"ms "+u),{close:function(){var r="DirectoryWatcher:: Close:: "+f(t,n,i,s,l,o);a(r);var c=e.timestamp();p.close();var u=e.timestamp()-c;a("Elapsed:: "+u+"ms "+r)}}}}:c||s,u=n===t.Verbose?function(e,t,r,n,i){return a("ExcludeWatcher:: Added:: "+f(e,t,r,n,i,o)),{close:function(){return a("ExcludeWatcher:: Close:: "+f(e,t,r,n,i,o))}}}:e.returnNoopFileWatcher;return{watchFile:d("watchFile"),watchDirectory:d("watchDirectory")};function d(t){return function(n,i,a,o,s,c){var d;return e.matchesExclude(n,"watchFile"===t?null==o?void 0:o.excludeFiles:null==o?void 0:o.excludeDirectories,"boolean"==typeof r.useCaseSensitiveFileNames?r.useCaseSensitiveFileNames:r.useCaseSensitiveFileNames(),(null===(d=r.getCurrentDirectory)||void 0===d?void 0:d.call(r))||"")?u(n,a,o,s,c):l[t].call(void 0,n,i,a,o,s,c)}}function p(t){return function(r,n,c,l,u,d){return s[t].call(void 0,r,(function(){for(var s=[],p=0;p<arguments.length;p++)s[p]=arguments[p];var m=("watchFile"===t?"FileWatcher":"DirectoryWatcher")+":: Triggered with "+s[0]+" "+(void 0!==s[1]?s[1]:"")+":: "+f(r,c,l,u,d,o);a(m);var g=e.timestamp();n.call.apply(n,i([void 0],s));var _=e.timestamp()-g;a("Elapsed:: "+_+"ms "+m)}),c,l,u,d)}}function f(e,t,r,n,i,a){return"WatchInfo: "+e+" "+t+" "+JSON.stringify(r)+" "+(a?a(n,i):void 0===i?n:n+" "+i)}},e.getFallbackOptions=function(t){var r=null==t?void 0:t.fallbackPolling;return{watchFile:void 0!==r?r:e.WatchFileKind.PriorityPollingInterval}},e.closeFileWatcherOf=r}(d||(d={})),function(e){function t(t,r){var n=e.getDirectoryPath(r),i=e.isRootedDiskPath(t)?t:e.combinePaths(n,t);return e.normalizePath(i)}function r(e,t){return n(e,t)}function n(t,r,n){void 0===n&&(n=e.sys);var i,a=new e.Map,o=e.createGetCanonicalFileName(n.useCaseSensitiveFileNames),s=e.maybeBind(n,n.createHash)||e.generateDjb2Hash;function c(){return e.getDirectoryPath(e.normalizePath(n.getExecutingFilePath()))}var l=e.getNewLineCharacter(t,(function(){return n.newLine})),u=n.realpath&&function(e){return n.realpath(e)},d={getSourceFile:function(n,i,a){var o;try{e.performance.mark("beforeIORead"),o=d.readFile(n),e.performance.mark("afterIORead"),e.performance.measure("I/O Read","beforeIORead","afterIORead")}catch(e){a&&a(e.message),o=""}return void 0!==o?e.createSourceFile(n,o,i,r,void 0,t):void 0},getDefaultLibLocation:c,getDefaultLibFileName:function(t){return e.combinePaths(c(),e.getDefaultLibFileName(t))},writeFile:function(r,o,c,l){try{e.performance.mark("beforeIOWrite"),e.writeFileEnsuringDirectories(r,o,c,(function(r,a,o){return function(r,a,o){if(!e.isWatchSet(t)||!n.getModifiedTime)return void n.writeFile(r,a,o);i||(i=new e.Map);var c=s(a),l=n.getModifiedTime(r);if(l){var u=i.get(r);if(u&&u.byteOrderMark===o&&u.hash===c&&u.mtime.getTime()===l.getTime())return}n.writeFile(r,a,o);var d=n.getModifiedTime(r)||e.missingFileModifiedTime;i.set(r,{hash:c,byteOrderMark:o,mtime:d})}(r,a,o)}),(function(e){return(d.createDirectory||n.createDirectory)(e)}),(function(e){return t=e,!!a.has(t)||!!(d.directoryExists||n.directoryExists)(t)&&(a.set(t,!0),!0);var t})),e.performance.mark("afterIOWrite"),e.performance.measure("I/O Write","beforeIOWrite","afterIOWrite")}catch(e){l&&l(e.message)}},getCurrentDirectory:e.memoize((function(){return n.getCurrentDirectory()})),useCaseSensitiveFileNames:function(){return n.useCaseSensitiveFileNames},getCanonicalFileName:o,getNewLine:function(){return l},fileExists:function(e){return n.fileExists(e)},readFile:function(e){return n.readFile(e)},trace:function(e){return n.write(e+l)},directoryExists:function(e){return n.directoryExists(e)},getEnvironmentVariable:function(e){return n.getEnvironmentVariable?n.getEnvironmentVariable(e):""},getDirectories:function(e){return n.getDirectories(e)},realpath:u,readDirectory:function(e,t,r,i,a){return n.readDirectory(e,t,r,i,a)},createDirectory:function(e){return n.createDirectory(e)},createHash:e.maybeBind(n,n.createHash)};return d}function a(t,r){var n=e.diagnosticCategoryName(t)+" TS"+t.code+": "+_(t.messageText,r.getNewLine())+r.getNewLine();if(t.file){var i=e.getLineAndCharacterOfPosition(t.file,t.start),a=i.line,o=i.character,s=t.file.fileName,c=e.convertToRelativePath(s,r.getCurrentDirectory(),(function(e){return r.getCanonicalFileName(e)}));return c+"("+(a+1)+","+(o+1)+"): "+n}return n}var o;e.findConfigFile=function(t,r,n){return void 0===n&&(n="tsconfig.json"),e.forEachAncestorDirectory(t,(function(t){var i=e.combinePaths(t,n);return r(i)?i:void 0}))},e.resolveTripleslashReference=t,e.computeCommonSourceDirectoryOfFilenames=function(t,r,n){var i;return e.forEach(t,(function(t){var a=e.getNormalizedPathComponents(t,r);if(a.pop(),i){for(var o=Math.min(i.length,a.length),s=0;s<o;s++)if(n(i[s])!==n(a[s])){if(0===s)return!0;i.length=s;break}a.length<i.length&&(i.length=a.length)}else i=a}))?"":i?e.getPathFromPathComponents(i):r},e.createCompilerHost=r,e.createCompilerHostWorker=n,e.changeCompilerHostLikeToUseCache=function(t,r,n){var i=t.readFile,a=t.fileExists,o=t.directoryExists,s=t.createDirectory,c=t.writeFile,l=new e.Map,u=new e.Map,d=new e.Map,p=new e.Map,f=function(e,r){var n=i.call(t,r);return l.set(e,void 0!==n&&n),n};t.readFile=function(n){var a=r(n),o=l.get(a);return void 0!==o?!1!==o?o:void 0:e.fileExtensionIs(n,".json")||e.isBuildInfoFile(n)?f(a,n):i.call(t,n)};var m=n?function(t,i,a,o){var s=r(t),c=p.get(s);if(c)return c;var l=n(t,i,a,o);return l&&(e.isDeclarationFileName(t)||e.fileExtensionIs(t,".json"))&&p.set(s,l),l}:void 0;return t.fileExists=function(e){var n=r(e),i=u.get(n);if(void 0!==i)return i;var o=a.call(t,e);return u.set(n,!!o),o},c&&(t.writeFile=function(e,n,i,a,o){var s=r(e);u.delete(s);var d=l.get(s);if(void 0!==d&&d!==n)l.delete(s),p.delete(s);else if(m){var f=p.get(s);f&&f.text!==n&&p.delete(s)}c.call(t,e,n,i,a,o)}),o&&s&&(t.directoryExists=function(e){var n=r(e),i=d.get(n);if(void 0!==i)return i;var a=o.call(t,e);return d.set(n,!!a),a},t.createDirectory=function(e){var n=r(e);d.delete(n),s.call(t,e)}),{originalReadFile:i,originalFileExists:a,originalDirectoryExists:o,originalCreateDirectory:s,originalWriteFile:c,getSourceFileWithCache:m,readFileWithCache:function(e){var t=r(e),n=l.get(t);return void 0!==n?!1!==n?n:void 0:f(t,e)}}},e.getPreEmitDiagnostics=function(t,r,n){var i;return i=e.addRange(i,t.getConfigFileParsingDiagnostics()),i=e.addRange(i,t.getOptionsDiagnostics(n)),i=e.addRange(i,t.getSyntacticDiagnostics(r,n)),i=e.addRange(i,t.getGlobalDiagnostics(n)),i=e.addRange(i,t.getSemanticDiagnostics(r,n)),e.getEmitDeclarations(t.getCompilerOptions())&&(i=e.addRange(i,t.getDeclarationDiagnostics(r,n))),e.sortAndDeduplicateDiagnostics(i||e.emptyArray)},e.formatDiagnostics=function(e,t){for(var r="",n=0,i=e;n<i.length;n++){r+=a(i[n],t)}return r},e.formatDiagnostic=a,function(e){e.Grey="",e.Red="",e.Yellow="",e.Blue="",e.Cyan=""}(o=e.ForegroundColorEscapeSequences||(e.ForegroundColorEscapeSequences={}));var s="",c=" ",l="",u="...",d=" ";function p(t){switch(t){case e.DiagnosticCategory.Error:return o.Red;case e.DiagnosticCategory.Warning:return o.Yellow;case e.DiagnosticCategory.Suggestion:return e.Debug.fail("Should never get an Info diagnostic on the command line.");case e.DiagnosticCategory.Message:return o.Blue}}function f(e,t){return t+e+l}function m(t,r,n,i,a,o){var d=e.getLineAndCharacterOfPosition(t,r),p=d.line,m=d.character,g=e.getLineAndCharacterOfPosition(t,r+n),_=g.line,h=g.character,y=e.getLineAndCharacterOfPosition(t,t.text.length).line,v=_-p>=4,b=(_+1+"").length;v&&(b=Math.max(u.length,b));for(var k="",x=p;x<=_;x++){k+=o.getNewLine(),v&&p+1<x&&x<_-1&&(k+=i+f(e.padLeft(u,b),s)+c+o.getNewLine(),x=_-1);var S=e.getPositionOfLineAndCharacter(t,x,0),w=x<y?e.getPositionOfLineAndCharacter(t,x+1,0):t.text.length,D=t.text.slice(S,w);if(D=(D=D.replace(/\s+$/g,"")).replace(/\t/g," "),k+=i+f(e.padLeft(x+1+"",b),s)+c,k+=D+o.getNewLine(),k+=i+f(e.padLeft("",b),s)+c,k+=a,x===p){var E=x===_?h:void 0;k+=D.slice(0,m).replace(/\S/g," "),k+=D.slice(m,E).replace(/./g,"~")}else k+=x===_?D.slice(0,h).replace(/./g,"~"):D.replace(/./g,"~");k+=l}return k}function g(t,r,n,i){void 0===i&&(i=f);var a=e.getLineAndCharacterOfPosition(t,r),s=a.line,c=a.character,l="";return l+=i(n?e.convertToRelativePath(t.fileName,n.getCurrentDirectory(),(function(e){return n.getCanonicalFileName(e)})):t.fileName,o.Cyan),l+=":",l+=i(""+(s+1),o.Yellow),l+=":",l+=i(""+(c+1),o.Yellow)}function _(t,r,n){if(void 0===n&&(n=0),e.isString(t))return t;if(void 0===t)return"";var i="";if(n){i+=r;for(var a=0;a<n;a++)i+=" "}if(i+=t.messageText,n++,t.next)for(var o=0,s=t.next;o<s.length;o++){i+=_(s[o],r,n)}return i}function h(t,r,n,i){if(0===t.length)return[];for(var a=[],o=new e.Map,s=0,c=t;s<c.length;s++){var l=c[s],u=void 0;o.has(l)?u=o.get(l):o.set(l,u=i(l,r,n)),a.push(u)}return a}function y(t,r,n,i){var a;return function t(r,o,s){if(i){var c=i(r,s);if(c)return c}return e.forEach(o,(function(r,i){if(!r||!(null==a?void 0:a.has(r.sourceFile.path))){var o=n(r,s,i);return o||!r?o:((a||(a=new e.Set)).add(r.sourceFile.path),t(r.commandLine.projectReferences,r.references,r))}}))}(t,r,void 0)}function v(t){switch(null==t?void 0:t.kind){case e.FileIncludeKind.Import:case e.FileIncludeKind.ReferenceFile:case e.FileIncludeKind.TypeReferenceDirective:case e.FileIncludeKind.LibReferenceDirective:return!0;default:return!1}}function b(e){return void 0!==e.pos}function k(t,r){var n,i,a,o,s,c,l,u,d,p,f=e.Debug.checkDefined(t(r.file)),m=r.kind,g=r.index;switch(m){case e.FileIncludeKind.Import:var _=A(f,g);if(p=null===(s=null===(o=f.resolvedModules)||void 0===o?void 0:o.get(_.text))||void 0===s?void 0:s.packageId,-1===_.pos)return{file:f,packageId:p,text:_.text};u=e.skipTrivia(f.text,_.pos),d=_.end;break;case e.FileIncludeKind.ReferenceFile:u=(n=f.referencedFiles[g]).pos,d=n.end;break;case e.FileIncludeKind.TypeReferenceDirective:u=(i=f.typeReferenceDirectives[g]).pos,d=i.end,p=null===(l=null===(c=f.resolvedTypeReferenceDirectiveNames)||void 0===c?void 0:c.get(e.toFileNameLowerCase(f.typeReferenceDirectives[g].fileName)))||void 0===l?void 0:l.packageId;break;case e.FileIncludeKind.LibReferenceDirective:u=(a=f.libReferenceDirectives[g]).pos,d=a.end;break;default:return e.Debug.assertNever(m)}return{file:f,pos:u,end:d,packageId:p}}function x(t,r,n,a){var o=t.getCompilerOptions();if(o.noEmit)return t.getSemanticDiagnostics(r,a),r||e.outFile(o)?e.emitSkippedWithNoDiagnostics:t.emitBuildInfo(n,a);if(o.noEmitOnError){var s=i(i(i(i([],t.getOptionsDiagnostics(a)),t.getSyntacticDiagnostics(r,a)),t.getGlobalDiagnostics(a)),t.getSemanticDiagnostics(r,a));if(0===s.length&&e.getEmitDeclarations(t.getCompilerOptions())&&(s=t.getDeclarationDiagnostics(void 0,a)),s.length){var c;if(!r&&!e.outFile(o)){var l=t.emitBuildInfo(n,a);l.diagnostics&&(s=i(i([],s),l.diagnostics)),c=l.emittedFiles}return{diagnostics:s,sourceMaps:void 0,emittedFiles:c,emitSkipped:!0}}}}function S(t,r){return e.filter(t,(function(e){return!e.skippedOn||!r[e.skippedOn]}))}function w(t,r){return void 0===r&&(r=t),{fileExists:function(e){return r.fileExists(e)},readDirectory:function(t,n,i,a,o){return e.Debug.assertIsDefined(r.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),r.readDirectory(t,n,i,a,o)},readFile:function(e){return r.readFile(e)},useCaseSensitiveFileNames:t.useCaseSensitiveFileNames(),getCurrentDirectory:function(){return t.getCurrentDirectory()},onUnRecoverableConfigFileDiagnostic:t.onUnRecoverableConfigFileDiagnostic||e.returnUndefined,trace:t.trace?function(e){return t.trace(e)}:void 0}}function D(t,r,n){if(!t)return e.emptyArray;for(var i,a=0;a<t.length;a++){var o=t[a],s=r(o,a);if(o.prepend&&s&&s.options){if(!e.outFile(s.options))continue;var c=e.getOutputPathsForBundle(s.options,!0),l=c.jsFilePath,u=c.sourceMapFilePath,d=c.declarationFilePath,p=c.declarationMapPath,f=c.buildInfoPath,m=e.createInputFiles(n,l,u,d,p,f);(i||(i=[])).push(m)}}return i||e.emptyArray}function E(t,r){var n=r||t;return e.resolveConfigFileProjectName(n.path)}function T(t,r){switch(r.extension){case".ts":case".d.ts":case".ets":case".d.ets":return;case".tsx":return n();case".jsx":return n()||i();case".js":return i();case".json":return t.resolveJsonModule?void 0:e.Diagnostics.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function n(){return t.jsx?void 0:e.Diagnostics.Module_0_was_resolved_to_1_but_jsx_is_not_set}function i(){return e.getAllowJSCompilerOption(t)||!e.getStrictOptionValue(t,"noImplicitAny")?void 0:e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}}function C(e){for(var t=e.imports,r=e.moduleAugmentations,n=t.map((function(e){return e.text})),i=0,a=r;i<a.length;i++){var o=a[i];10===o.kind&&n.push(o.text)}return n}function A(t,r){var n=t.imports,i=t.moduleAugmentations;if(r<n.length)return n[r];for(var a=n.length,o=0,s=i;o<s.length;o++){var c=s[o];if(10===c.kind){if(r===a)return c;a++}}e.Debug.fail("should never ask for module name at index higher than possible module name")}e.formatColorAndReset=f,e.formatLocation=g,e.formatDiagnosticsWithColorAndContext=function(t,r){for(var n="",i=0,a=t;i<a.length;i++){var s=a[i];if(s.file)n+=g(h=s.file,y=s.start,r),n+=" - ";if(n+=f(e.diagnosticCategoryName(s),p(s.category)),n+=f(" TS"+s.code+": ",o.Grey),n+=_(s.messageText,r.getNewLine()),s.file&&(n+=r.getNewLine(),n+=m(s.file,s.start,s.length,"",p(s.category),r)),s.relatedInformation){n+=r.getNewLine();for(var c=0,l=s.relatedInformation;c<l.length;c++){var u=l[c],h=u.file,y=u.start,v=u.length,b=u.messageText;h&&(n+=r.getNewLine(),n+=" "+g(h,y,r),n+=m(h,y,v,d,o.Cyan,r)),n+=r.getNewLine(),n+=d+_(b,r.getNewLine())}}n+=r.getNewLine()}return n},e.flattenDiagnosticMessageText=_,e.loadWithLocalCache=h,e.forEachResolvedProjectReference=function(e,t){return y(void 0,e,(function(e,r){return e&&t(e,r)}))},e.inferredTypesContainingFile="__inferred type names__.ts",e.isReferencedFile=v,e.isReferenceFileLocation=b,e.getReferencedFileLocation=k,e.isProgramUptoDate=function(t,r,n,i,a,o,s,c){if(!t||(null==s?void 0:s()))return!1;if(!e.arrayIsEqualTo(t.getRootFileNames(),r))return!1;var l;if(!e.arrayIsEqualTo(t.getProjectReferences(),c,(function(r,n,i){if(!e.projectReferenceIsEqualTo(r,n))return!1;return p(t.getResolvedProjectReferences()[i],r)})))return!1;if(t.getSourceFiles().some((function(e){return!d(e)||o(e.path)})))return!1;if(t.getMissingFilePaths().some(a))return!1;var u=t.getCompilerOptions();return!!e.compareDataObjects(u,n)&&(!u.configFile||!n.configFile||u.configFile.text===n.configFile.text);function d(e){return e.version===i(e.resolvedPath,e.fileName)}function p(t,r){return t?!!e.contains(l,t)||!!d(t.sourceFile)&&((l||(l=[])).push(t),!e.forEach(t.references,(function(e,r){return!p(e,t.commandLine.projectReferences[r])}))):!a(E(r))}},e.getConfigFileParsingDiagnostics=function(e){return e.options.configFile?i(i([],e.options.configFile.parseDiagnostics),e.errors):e.errors},e.createProgram=function(n,a,o,s,c){var l,u,d,p,f,m,g,_,A,N,P,I,F,O,R=e.isArray(n)?function(e,t,r,n,i){return{rootNames:e,options:t,host:r,oldProgram:n,configFileParsingDiagnostics:i}}(n,a,o,s,c):n,M=R.rootNames,L=R.options,j=R.configFileParsingDiagnostics,B=R.projectReferences,z=R.oldProgram,U=new e.Map,q=e.createMultiMap(),J={},V={},H=new e.Map,K="number"==typeof L.maxNodeModuleJsDepth?L.maxNodeModuleJsDepth:0,W=0,G=new e.Map,$=new e.Map;null===e.tracing||void 0===e.tracing||e.tracing.push("program","createProgram",{configFilePath:L.configFilePath,rootDir:L.rootDir},!0),e.performance.mark("beforeProgram");var Y,X,Q,Z,ee=R.host||r(L),te=w(ee),re=L.noLib,ne=e.memoize((function(){return ee.getDefaultLibFileName(L)})),ie=ee.getDefaultLibLocation?ee.getDefaultLibLocation():e.getDirectoryPath(ne()),ae=e.createDiagnosticCollection(),oe=ee.getCurrentDirectory(),se=e.getSupportedExtensions(L),ce=e.getSuppoertedExtensionsWithJsonIfResolveJsonModule(L,se),le=new e.Map,ue=ee.hasInvalidatedResolution||e.returnFalse;if(ee.resolveModuleNames)Q=function(t,r,n,i){return ee.resolveModuleNames(e.Debug.checkEachDefined(t),r,n,i,L).map((function(t){if(!t||void 0!==t.extension)return t;var r=e.clone(t);return r.extension=e.extensionFromPath(t.resolvedFileName),r}))};else{X=e.createModuleResolutionCache(oe,(function(e){return ee.getCanonicalFileName(e)}),L);var de=function(t,r,n){return e.resolveModuleName(t,r,L,ee,X,n).resolvedModule};Q=function(t,r,n,i){return h(e.Debug.checkEachDefined(t),r,i,de)}}if(ee.resolveTypeReferenceDirectives)Z=function(t,r,n){return ee.resolveTypeReferenceDirectives(e.Debug.checkEachDefined(t),r,n,L)};else{var pe=function(t,r,n){return e.resolveTypeReferenceDirective(t,r,L,ee,n).resolvedTypeReferenceDirective};Z=function(t,r,n){return h(e.Debug.checkEachDefined(t),r,n,pe)}}var fe,me,ge,_e,he,ye=new e.Map,ve=new e.Map,be=e.createMultiMap(),ke=new e.Map,xe=ee.useCaseSensitiveFileNames()?new e.Map:void 0,Se=!!(null===(l=ee.useSourceOfProjectReferenceRedirect)||void 0===l?void 0:l.call(ee))&&!L.disableSourceOfProjectReferenceRedirect,we=function(t){var r,n,i=t.compilerHost.fileExists,a=t.compilerHost.directoryExists,o=t.compilerHost.getDirectories,s=t.compilerHost.realpath;if(!t.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:e.noop,fileExists:l};t.compilerHost.fileExists=l,a&&(n=t.compilerHost.directoryExists=function(n){return a.call(t.compilerHost,n)?(p(n),!0):!!t.getResolvedProjectReferences()&&(r||(r=new e.Set,t.forEachResolvedProjectReference((function(n){var i=e.outFile(n.commandLine.options);if(i)r.add(e.getDirectoryPath(t.toPath(i)));else{var a=n.commandLine.options.declarationDir||n.commandLine.options.outDir;a&&r.add(t.toPath(a))}}))),f(n,!1))});o&&(t.compilerHost.getDirectories=function(e){return!t.getResolvedProjectReferences()||a&&a.call(t.compilerHost,e)?o.call(t.compilerHost,e):[]});s&&(t.compilerHost.realpath=function(e){var r;return(null===(r=t.getSymlinkCache().getSymlinkedFiles())||void 0===r?void 0:r.get(t.toPath(e)))||s.call(t.compilerHost,e)});return{onProgramCreateComplete:c,fileExists:l,directoryExists:n};function c(){t.compilerHost.fileExists=i,t.compilerHost.directoryExists=a,t.compilerHost.getDirectories=o}function l(r){return!!i.call(t.compilerHost,r)||!!t.getResolvedProjectReferences()&&(!!e.isDeclarationFileName(r)&&f(r,!0))}function u(r){var n=t.getSourceOfProjectReferenceRedirect(r);return void 0!==n?!e.isString(n)||i.call(t.compilerHost,n):void 0}function d(n){var i=t.toPath(n),a=""+i+e.directorySeparator;return e.forEachKey(r,(function(t){return i===t||e.startsWith(t,a)||e.startsWith(i,t+"/")}))}function p(r){var n,i;if(t.getResolvedProjectReferences()&&!e.containsIgnoredPath(r)){var a=e.isOhpm(null===(n=t.options)||void 0===n?void 0:n.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart;if(s&&e.stringContains(r,a)){var o=t.getSymlinkCache(),c=e.ensureTrailingDirectorySeparator(t.toPath(r));if(!(null===(i=o.getSymlinkedDirectories())||void 0===i?void 0:i.has(c))){var l,u=e.normalizePath(s.call(t.compilerHost,r));u!==r&&(l=e.ensureTrailingDirectorySeparator(t.toPath(u)))!==c?o.setSymlinkedDirectory(r,{real:e.ensureTrailingDirectorySeparator(u),realPath:l}):o.setSymlinkedDirectory(c,!1)}}}}function f(r,n){var i,a,o=n?function(e){return u(e)}:function(e){return d(e)},s=o(r);if(void 0!==s)return s;var c=t.getSymlinkCache(),l=c.getSymlinkedDirectories();if(!l)return!1;var p=t.toPath(r),f=e.isOhpm(null===(i=t.options)||void 0===i?void 0:i.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart;return!!e.stringContains(p,f)&&(!(!n||!(null===(a=c.getSymlinkedFiles())||void 0===a?void 0:a.has(p)))||(e.firstDefinedIterator(l.entries(),(function(i){var a=i[0],s=i[1];if(s&&e.startsWith(p,a)){var l=o(p.replace(a,s.realPath));if(n&&l){var u=e.getNormalizedAbsolutePath(r,t.compilerHost.getCurrentDirectory());c.setSymlinkedFile(p,""+s.real+u.replace(new RegExp(a,"i"),""))}return l}}))||!1))}}({compilerHost:ee,getSymlinkCache:ar,useSourceOfProjectReferenceRedirect:Se,toPath:Ke,getResolvedProjectReferences:Ye,getSourceOfProjectReferenceRedirect:Ft,forEachResolvedProjectReference:It,options:a}),De=we.onProgramCreateComplete,Ee=we.fileExists,Te=we.directoryExists;null===e.tracing||void 0===e.tracing||e.tracing.push("program","shouldProgramCreateNewSourceFiles",{hasOldProgram:!!z});var Ce,Ae=function(t,r){if(!t)return!1;var n=t.getCompilerOptions();return!!e.sourceFileAffectingCompilerOptions.some((function(t){return!e.isJsonEqual(e.getCompilerOptionValue(n,t),e.getCompilerOptionValue(r,t))}))}(z,L);if(null===e.tracing||void 0===e.tracing||e.tracing.pop(),null===e.tracing||void 0===e.tracing||e.tracing.push("program","tryReuseStructureFromOldProgram",{}),Ce=function(){var t;if(!z)return 0;var r=z.getCompilerOptions();if(e.changesAffectModuleResolution(r,L))return 0;var n=z.getRootFileNames();if(!e.arrayIsEqualTo(n,M))return 0;if(!e.arrayIsEqualTo(L.types,r.types))return 0;if(y(z.getProjectReferences(),z.getResolvedProjectReferences(),(function(e,t,r){var n=qt((t?t.commandLine.projectReferences:B)[r]);return e?!n||n.sourceFile!==e.sourceFile:void 0!==n}),(function(t,r){var n=r?Rt(r.sourceFile.path).commandLine.projectReferences:B;return!e.arrayIsEqualTo(t,n,e.projectReferenceIsEqualTo)})))return 0;B&&(me=B.map(qt));var i=[],a=[];if(Ce=2,z.getMissingFilePaths().some((function(e){return ee.fileExists(e)})))return 0;var o,s=z.getSourceFiles();!function(e){e[e.Exists=0]="Exists",e[e.Modified=1]="Modified"}(o||(o={}));for(var c=new e.Map,l=0,u=s;l<u.length;l++){var d=u[l];if(!(j=ee.getSourceFileByPath?ee.getSourceFileByPath(d.fileName,d.resolvedPath,L.target,void 0,Ae):ee.getSourceFile(d.fileName,L.target,void 0,Ae)))return 0;e.Debug.assert(!j.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");var p=void 0;if(d.redirectInfo){if(j!==d.redirectInfo.unredirected)return 0;p=!1,j=d}else if(z.redirectTargetsMap.has(d.path)){if(j!==d)return 0;p=!1}else p=j!==d;j.path=d.path,j.originalFileName=d.originalFileName,j.resolvedPath=d.resolvedPath,j.fileName=d.fileName;var f=z.sourceFileToPackageName.get(d.path);if(void 0!==f){var m=c.get(f),g=p?1:0;if(void 0!==m&&1===g||1===m)return 0;c.set(f,g)}if(p){if(!e.arrayIsEqualTo(d.libReferenceDirectives,j.libReferenceDirectives,ht))return 0;d.hasNoDefaultLib!==j.hasNoDefaultLib&&(Ce=1),e.arrayIsEqualTo(d.referencedFiles,j.referencedFiles,ht)||(Ce=1),bt(j),e.arrayIsEqualTo(d.imports,j.imports,yt)||(Ce=1),e.arrayIsEqualTo(d.moduleAugmentations,j.moduleAugmentations,yt)||(Ce=1),(3145728&d.flags)!=(3145728&j.flags)&&(Ce=1),e.arrayIsEqualTo(d.typeReferenceDirectives,j.typeReferenceDirectives,ht)||(Ce=1),a.push({oldFile:d,newFile:j})}else ue(d.path)&&(Ce=1,a.push({oldFile:d,newFile:j}));i.push(j)}if(2!==Ce)return Ce;for(var h=a.map((function(e){return e.oldFile})),v=0,b=s;v<b.length;v++){var k=b[v];if(!e.contains(h,k))for(var x=0,S=k.ambientModuleNames;x<S.length;x++){var w=S[x];U.set(w,k.fileName)}}for(var D=0,E=a;D<E.length;D++){var T=E[D],A=(d=T.oldFile,C(j=T.newFile)),N=Ge(A,j);e.hasChangesInResolutions(A,N,d.resolvedModules,e.moduleResolutionIsEqualTo)?(Ce=1,j.resolvedModules=e.zipToMap(A,N)):j.resolvedModules=d.resolvedModules;var P=e.map(j.typeReferenceDirectives,(function(t){return e.toFileNameLowerCase(t.fileName)})),I=qe(P,j);e.hasChangesInResolutions(P,I,d.resolvedTypeReferenceDirectiveNames,e.typeDirectiveIsEqualTo)?(Ce=1,j.resolvedTypeReferenceDirectiveNames=e.zipToMap(P,I)):j.resolvedTypeReferenceDirectiveNames=d.resolvedTypeReferenceDirectiveNames}if(2!==Ce)return Ce;if(null===(t=ee.hasChangedAutomaticTypeDirectiveNames)||void 0===t?void 0:t.call(ee))return 1;fe=z.getMissingFilePaths(),e.Debug.assert(i.length===z.getSourceFiles().length);for(var F=0,R=i;F<R.length;F++){var j=R[F];ke.set(j.path,j)}return z.getFilesByNameMap().forEach((function(e,t){e?e.path!==t?ke.set(t,ke.get(e.path)):z.isSourceFileFromExternalLibrary(e)&&$.set(e.path,!0):ke.set(t,e)})),_=i,q=z.getFileIncludeReasons(),O=z.getFileProcessingDiagnostics(),H=z.getResolvedTypeReferenceDirectives(),ve=z.sourceFileToPackageName,be=z.redirectTargetsMap,2}(),null===e.tracing||void 0===e.tracing||e.tracing.pop(),2!==Ce){m=[],g=[],B&&(me||(me=B.map(qt)),M.length&&(null==me||me.forEach((function(t,r){if(t){var n=e.outFile(t.commandLine.options);if(Se){if(n||e.getEmitModuleKind(t.commandLine.options)===e.ModuleKind.None)for(var i=0,a=t.commandLine.fileNames;i<a.length;i++){St(l=a[i],{kind:e.FileIncludeKind.SourceFromProjectReference,index:r})}}else if(n)St(e.changeExtension(n,".d.ts"),{kind:e.FileIncludeKind.OutputFromProjectReference,index:r});else if(e.getEmitModuleKind(t.commandLine.options)===e.ModuleKind.None)for(var o=e.memoize((function(){return e.getCommonSourceDirectoryOfConfig(t.commandLine,!ee.useCaseSensitiveFileNames())})),s=0,c=t.commandLine.fileNames;s<c.length;s++){var l=c[s];e.isDeclarationFileName(l)||e.fileExtensionIs(l,".json")||St(e.getOutputDeclarationFileName(l,t.commandLine,!ee.useCaseSensitiveFileNames(),o),{kind:e.FileIncludeKind.OutputFromProjectReference,index:r})}}})))),null===e.tracing||void 0===e.tracing||e.tracing.push("program","processRootFiles",{count:M.length}),e.forEach(M,(function(t,r){return _t(t,!1,!1,{kind:e.FileIncludeKind.RootFile,index:r})})),null===e.tracing||void 0===e.tracing||e.tracing.pop();var Ne=M.length?e.getAutomaticTypeDirectiveNames(L,ee):e.emptyArray;if(Ne.length){null===e.tracing||void 0===e.tracing||e.tracing.push("program","processTypeReferences",{count:Ne.length});for(var Pe=L.configFilePath?e.getDirectoryPath(L.configFilePath):ee.getCurrentDirectory(),Ie=qe(Ne,e.combinePaths(Pe,e.inferredTypesContainingFile)),Fe=0;Fe<Ne.length;Fe++)jt(Ne[Fe],Ie[Fe],{kind:e.FileIncludeKind.AutomaticTypeDirectiveFile,typeReference:Ne[Fe],packageId:null===(u=Ie[Fe])||void 0===u?void 0:u.packageId});null===e.tracing||void 0===e.tracing||e.tracing.pop()}if(M.length&&!re){var Oe=ne();if(!L.lib&&Oe)_t(Oe,!0,!1,{kind:e.FileIncludeKind.LibFile});else{e.forEach(L.lib,(function(t,r){_t(e.combinePaths(ie,t),!0,!1,{kind:e.FileIncludeKind.LibFile,index:r})}));var Re=null!==(p=null===(d=L.ets)||void 0===d?void 0:d.libs)&&void 0!==p?p:[];Re.length&&e.forEach(Re,(function(t){_t(e.combinePaths(t),!0,!1,{kind:e.FileIncludeKind.LibFile})}))}}fe=e.arrayFrom(e.mapDefinedIterator(ke.entries(),(function(e){var t=e[0];return void 0===e[1]?t:void 0}))),_=e.stableSort(m,(function(t,r){return e.compareValues(He(t),He(r))})).concat(g),m=void 0,g=void 0}if(e.Debug.assert(!!fe),z&&ee.onReleaseOldSourceFile){for(var Me=0,Le=z.getSourceFiles();Me<Le.length;Me++){var je=Le[Me],Be=nt(je.resolvedPath);(Ae||!Be||je.resolvedPath===je.path&&Be.resolvedPath!==je.path)&&ee.onReleaseOldSourceFile(je,z.getCompilerOptions(),!!nt(je.path))}z.forEachResolvedProjectReference((function(e){Rt(e.sourceFile.path)||ee.onReleaseOldSourceFile(e.sourceFile,z.getCompilerOptions(),!1)}))}z=void 0;var ze={getRootFileNames:function(){return M},getSourceFile:rt,getSourceFileByPath:nt,getSourceFiles:function(){return _},getMissingFilePaths:function(){return fe},getFilesByNameMap:function(){return ke},getCompilerOptions:function(){return L},getSyntacticDiagnostics:function(e,t){return it(e,ot,t)},getOptionsDiagnostics:function(){return e.sortAndDeduplicateDiagnostics(e.concatenate(ae.getGlobalDiagnostics(),function(){if(!L.configFile)return e.emptyArray;var t=ae.getDiagnostics(L.configFile.fileName);return It((function(r){t=e.concatenate(t,ae.getDiagnostics(r.sourceFile.fileName))})),t}()))},getGlobalDiagnostics:function(){return M.length?e.sortAndDeduplicateDiagnostics(Ze().getGlobalDiagnostics().slice()):e.emptyArray},getSemanticDiagnostics:function(e,t){return it(e,ct,t)},getCachedSemanticDiagnostics:function(e){var t;return e?null===(t=J.perFile)||void 0===t?void 0:t.get(e.path):J.allDiagnostics},getSuggestionDiagnostics:function(e,t){return st((function(){return Ze().getSuggestionDiagnostics(e,t)}))},getDeclarationDiagnostics:function(t,r){var n=ze.getCompilerOptions();return!t||e.outFile(n)?pt(t,r):it(t,gt,r)},getBindAndCheckDiagnostics:function(e,t){return lt(e,t)},getProgramDiagnostics:at,getTypeChecker:et,getEtsLibSFromProgram:function(){return e.getEtsLibs(ze)},getClassifiableNames:function(){var t;if(!F){et(),F=new e.Set;for(var r=0,n=_;r<n.length;r++){null===(t=n[r].classifiableNames)||void 0===t||t.forEach((function(e){return F.add(e)}))}}return F},getDiagnosticsProducingTypeChecker:Ze,getCommonSourceDirectory:We,emit:function(t,r,n,i,a,o){null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emit",{path:null==t?void 0:t.path},!0);var s=st((function(){return function(t,r,n,i,a,o,s){if(!s){var c=x(t,r,n,i);if(c)return c}var l=Ze().getEmitResolver(e.outFile(L)?void 0:r,i);e.performance.mark("beforeEmit");var u=e.emitFiles(l,$e(n),r,e.getTransformers(L,o,a),a,!1,s);return e.performance.mark("afterEmit"),e.performance.measure("Emit","beforeEmit","afterEmit"),u}(ze,t,r,n,i,a,o)}));return null===e.tracing||void 0===e.tracing||e.tracing.pop(),s},getCurrentDirectory:function(){return oe},getNodeCount:function(){return Ze().getNodeCount()},getIdentifierCount:function(){return Ze().getIdentifierCount()},getSymbolCount:function(){return Ze().getSymbolCount()},getTypeCatalog:function(){return Ze().getTypeCatalog()},getTypeCount:function(){return Ze().getTypeCount()},getInstantiationCount:function(){return Ze().getInstantiationCount()},getRelationCacheSizes:function(){return Ze().getRelationCacheSizes()},getFileProcessingDiagnostics:function(){return O},getResolvedTypeReferenceDirectives:function(){return H},isSourceFileFromExternalLibrary:Qe,isSourceFileDefaultLibrary:function(t){if(t.hasNoDefaultLib)return!0;if(!L.noLib)return!1;var r=ee.useCaseSensitiveFileNames()?e.equateStringsCaseSensitive:e.equateStringsCaseInsensitive;return L.lib?e.some(L.lib,(function(n){return r(t.fileName,e.combinePaths(ie,n))})):r(t.fileName,ne())},dropDiagnosticsProducingTypeChecker:function(){P=void 0},getSourceFileFromReference:function(e,r){return kt(t(r.fileName,e.fileName),rt)},getLibFileFromReference:function(t){var r=e.toFileNameLowerCase(t.fileName),n=e.libMap.get(r);if(n)return rt(e.combinePaths(ie,n))},sourceFileToPackageName:ve,redirectTargetsMap:be,isEmittedFile:function(t){if(L.noEmit)return!1;var r=Ke(t);if(nt(r))return!1;var n=e.outFile(L);if(n)return ir(r,n)||ir(r,e.removeFileExtension(n)+".d.ts");if(L.declarationDir&&e.containsPath(L.declarationDir,r,oe,!ee.useCaseSensitiveFileNames()))return!0;if(L.outDir)return e.containsPath(L.outDir,r,oe,!ee.useCaseSensitiveFileNames());if(e.fileExtensionIsOneOf(r,e.supportedJSExtensions)||e.isDeclarationFileName(r)){var i=e.removeFileExtension(r);return!!nt(i+".ts")||!!nt(i+".tsx")}return!1},getConfigFileParsingDiagnostics:function(){return j||e.emptyArray},getResolvedModuleWithFailedLookupLocationsFromCache:function(t,r){return X&&e.resolveModuleNameFromCache(t,r,X)},getProjectReferences:function(){return B},getResolvedProjectReferences:Ye,getProjectReferenceRedirect:Ct,getResolvedProjectReferenceToRedirect:Pt,getResolvedProjectReferenceByPath:Rt,forEachResolvedProjectReference:It,isSourceOfProjectReferenceRedirect:Ot,emitBuildInfo:function(t){e.Debug.assert(!e.outFile(L)),null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitBuildInfo",{},!0),e.performance.mark("beforeEmit");var r=e.emitFiles(e.notImplementedResolver,$e(t),void 0,e.noTransformers,!1,!0);return e.performance.mark("afterEmit"),e.performance.measure("Emit","beforeEmit","afterEmit"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),r},fileExists:Ee,directoryExists:Te,getSymlinkCache:ar,realpath:null===(f=ee.realpath)||void 0===f?void 0:f.bind(ee),useCaseSensitiveFileNames:function(){return ee.useCaseSensitiveFileNames()},getFileIncludeReasons:function(){return q},structureIsReused:Ce,getTagNameNeededCheckByFile:ee.getTagNameNeededCheckByFile,getExpressionCheckedResultsByFile:ee.getExpressionCheckedResultsByFile};return De(),null==O||O.forEach((function(t){switch(t.kind){case 1:return ae.add(Jt(t.file&&nt(t.file),t.fileProcessingReason,t.diagnostic,t.args||e.emptyArray));case 0:var r=k(nt,t.reason),n=r.file,a=r.pos,o=r.end;return ae.add(e.createFileDiagnostic.apply(void 0,i([n,e.Debug.checkDefined(a),e.Debug.checkDefined(o)-a,t.diagnostic],t.args||e.emptyArray)));default:e.Debug.assertNever(t)}})),function(){L.strictPropertyInitialization&&!e.getStrictOptionValue(L,"strictNullChecks")&&Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks");L.isolatedModules&&(L.out&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"out","isolatedModules"),L.outFile&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"outFile","isolatedModules"));L.inlineSourceMap&&(L.sourceMap&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap"),L.mapRoot&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap"));L.composite&&(!1===L.declaration&&Xt(e.Diagnostics.Composite_projects_may_not_disable_declaration_emit,"declaration"),!1===L.incremental&&Xt(e.Diagnostics.Composite_projects_may_not_disable_incremental_compilation,"declaration"));var t=e.outFile(L);L.tsBuildInfoFile?e.isIncrementalCompilation(L)||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"tsBuildInfoFile","incremental","composite"):!L.incremental||t||L.configFilePath||ae.add(e.createCompilerDiagnostic(e.Diagnostics.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified));if(function(){var t=L.suppressOutputPathCheck?void 0:e.getTsBuildInfoEmitOutputFilePath(L);y(B,me,(function(r,n,i){var a=(n?n.commandLine.projectReferences:B)[i],o=n&&n.sourceFile;if(r){var s=r.commandLine.options;if(!s.composite||s.noEmit)(n?n.commandLine.fileNames:M).length&&(s.composite||Zt(o,i,e.Diagnostics.Referenced_project_0_must_have_setting_composite_Colon_true,a.path),s.noEmit&&Zt(o,i,e.Diagnostics.Referenced_project_0_may_not_disable_emit,a.path));if(a.prepend){var c=e.outFile(s);c?ee.fileExists(c)||Zt(o,i,e.Diagnostics.Output_file_0_from_project_1_does_not_exist,c,a.path):Zt(o,i,e.Diagnostics.Cannot_prepend_project_0_because_it_does_not_have_outFile_set,a.path)}!n&&t&&t===e.getTsBuildInfoEmitOutputFilePath(s)&&(Zt(o,i,e.Diagnostics.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,t,a.path),le.set(Ke(t),!0))}else Zt(o,i,e.Diagnostics.File_0_not_found,a.path)}))}(),L.composite)for(var r=new e.Set(M.map(Ke)),n=0,i=_;n<i.length;n++){var a=i[n];e.sourceFileMayBeEmitted(a,ze)&&!r.has(a.path)&&Ht(a,e.Diagnostics.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,[a.fileName,L.configFilePath||""])}if(L.paths)for(var o in L.paths)if(e.hasProperty(L.paths,o))if(e.hasZeroOrOneAsteriskCharacter(o)||Wt(!0,o,e.Diagnostics.Pattern_0_can_have_at_most_one_Asterisk_character,o),e.isArray(L.paths[o])){var s=L.paths[o].length;0===s&&Wt(!1,o,e.Diagnostics.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,o);for(var c=0;c<s;c++){var l=L.paths[o][c],u=typeof l;"string"===u?(e.hasZeroOrOneAsteriskCharacter(l)||Kt(o,c,e.Diagnostics.Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character,l,o),L.baseUrl||e.pathIsRelative(l)||e.pathIsAbsolute(l)||Kt(o,c,e.Diagnostics.Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash)):Kt(o,c,e.Diagnostics.Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2,l,o,u)}}else Wt(!1,o,e.Diagnostics.Substitutions_for_pattern_0_should_be_an_array,o);L.sourceMap||L.inlineSourceMap||(L.inlineSources&&Xt(e.Diagnostics.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"inlineSources"),L.sourceRoot&&Xt(e.Diagnostics.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"sourceRoot"));L.out&&L.outFile&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"out","outFile");!L.mapRoot||L.sourceMap||L.declarationMap||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"mapRoot","sourceMap","declarationMap");L.declarationDir&&(e.getEmitDeclarations(L)||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationDir","declaration","composite"),t&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"declarationDir",L.out?"out":"outFile"));L.declarationMap&&!e.getEmitDeclarations(L)&&Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationMap","declaration","composite");L.lib&&L.noLib&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"lib","noLib");L.noImplicitUseStrict&&e.getStrictOptionValue(L,"alwaysStrict")&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"noImplicitUseStrict","alwaysStrict");var d=L.target||0,p=e.find(_,(function(t){return e.isExternalModule(t)&&!t.isDeclarationFile}));if(L.isolatedModules){L.module===e.ModuleKind.None&&d<2&&Xt(e.Diagnostics.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),!1===L.preserveConstEnums&&Xt(e.Diagnostics.Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled,"preserveConstEnums","isolatedModules");var f=e.find(_,(function(t){return!e.isExternalModule(t)&&!e.isSourceFileJS(t)&&!t.isDeclarationFile&&6!==t.scriptKind}));if(f){var m=e.getErrorSpanForNode(f,f);ae.add(e.createFileDiagnostic(f,m.start,m.length,e.Diagnostics._0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_import_export_or_an_empty_export_statement_to_make_it_a_module,e.getBaseFileName(f.fileName)))}}else if(p&&d<2&&L.module===e.ModuleKind.None){m=e.getErrorSpanForNode(p,p.externalModuleIndicator);ae.add(e.createFileDiagnostic(p,m.start,m.length,e.Diagnostics.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(t&&!L.emitDeclarationOnly)if(L.module&&L.module!==e.ModuleKind.AMD&&L.module!==e.ModuleKind.System)Xt(e.Diagnostics.Only_amd_and_system_modules_are_supported_alongside_0,L.out?"out":"outFile","module");else if(void 0===L.module&&p){m=e.getErrorSpanForNode(p,p.externalModuleIndicator);ae.add(e.createFileDiagnostic(p,m.start,m.length,e.Diagnostics.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,L.out?"out":"outFile"))}L.resolveJsonModule&&(e.getEmitModuleResolutionKind(L)!==e.ModuleResolutionKind.NodeJs?Xt(e.Diagnostics.Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy,"resolveJsonModule"):e.hasJsonModuleEmitEnabled(L)||Xt(e.Diagnostics.Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext,"resolveJsonModule","module"));if(L.outDir||L.sourceRoot||L.mapRoot){var g=We();L.outDir&&""===g&&_.some((function(t){return e.getRootLength(t.fileName)>1}))&&Xt(e.Diagnostics.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}L.useDefineForClassFields&&0===d&&Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_target_is_ES3,"useDefineForClassFields");L.checkJs&&!e.getAllowJSCompilerOption(L)&&ae.add(e.createCompilerDiagnostic(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"));L.emitDeclarationOnly&&(e.getEmitDeclarations(L)||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite"),L.noEmit&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"emitDeclarationOnly","noEmit"));L.emitDecoratorMetadata&&!L.experimentalDecorators&&Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators");L.jsxFactory?(L.reactNamespace&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),4!==L.jsx&&5!==L.jsx||Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",e.inverseJsxOptionMap.get(""+L.jsx)),e.parseIsolatedEntityName(L.jsxFactory,d)||Qt("jsxFactory",e.Diagnostics.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,L.jsxFactory)):L.reactNamespace&&!e.isIdentifierText(L.reactNamespace,d)&&Qt("reactNamespace",e.Diagnostics.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,L.reactNamespace);L.jsxFragmentFactory&&(L.jsxFactory||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),4!==L.jsx&&5!==L.jsx||Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",e.inverseJsxOptionMap.get(""+L.jsx)),e.parseIsolatedEntityName(L.jsxFragmentFactory,d)||Qt("jsxFragmentFactory",e.Diagnostics.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,L.jsxFragmentFactory));L.reactNamespace&&(4!==L.jsx&&5!==L.jsx||Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",e.inverseJsxOptionMap.get(""+L.jsx)));L.jsxImportSource&&2===L.jsx&&Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",e.inverseJsxOptionMap.get(""+L.jsx));if(!L.noEmit&&!L.suppressOutputPathCheck){var h=$e(),v=new e.Set;e.forEachEmittedFile(h,(function(e){L.emitDeclarationOnly||b(e.jsFilePath,v),b(e.declarationFilePath,v)}))}function b(t,r){if(t){var n=Ke(t);if(ke.has(n)){var i=void 0;L.configFilePath||(i=e.chainDiagnosticMessages(void 0,e.Diagnostics.Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig)),i=e.chainDiagnosticMessages(i,e.Diagnostics.Cannot_write_file_0_because_it_would_overwrite_input_file,t),nr(t,e.createCompilerDiagnosticFromMessageChain(i))}var a=ee.useCaseSensitiveFileNames()?n:e.toFileNameLowerCase(n);r.has(a)?nr(t,e.createCompilerDiagnostic(e.Diagnostics.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,t)):r.add(a)}}}(),e.performance.mark("afterProgram"),e.performance.measure("Program","beforeProgram","afterProgram"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),ze;function Ue(t,r,n){if(!t.length)return e.emptyArray;var i=e.getNormalizedAbsolutePath(r.originalFileName,oe),a=Je(r);null===e.tracing||void 0===e.tracing||e.tracing.push("program","resolveModuleNamesWorker",{containingFileName:i}),e.performance.mark("beforeResolveModule");var o=Q(t,i,n,a);return e.performance.mark("afterResolveModule"),e.performance.measure("ResolveModule","beforeResolveModule","afterResolveModule"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),o}function qe(t,r){if(!t.length)return[];var n=e.isString(r)?r:e.getNormalizedAbsolutePath(r.originalFileName,oe),i=e.isString(r)?void 0:Je(r);null===e.tracing||void 0===e.tracing||e.tracing.push("program","resolveTypeReferenceDirectiveNamesWorker",{containingFileName:n}),e.performance.mark("beforeResolveTypeReference");var a=Z(t,n,i);return e.performance.mark("afterResolveTypeReference"),e.performance.measure("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),a}function Je(t){var r=Pt(t.originalFileName);if(r||!e.isDeclarationFileName(t.originalFileName))return r;var n=Ve(t.originalFileName,t.path);if(n)return n;if(ee.realpath&&L.preserveSymlinks&&(e.stringContains(t.originalFileName,e.nodeModulesPathPart)||e.stringContains(t.originalFileName,e.ohModulesPathPart))){var i=ee.realpath(t.originalFileName),a=Ke(i);return a===t.path?void 0:Ve(i,a)}}function Ve(t,r){var n=Ft(t);return e.isString(n)?Pt(n):n?It((function(t){var n=e.outFile(t.commandLine.options);if(n)return Ke(n)===r?t:void 0})):void 0}function He(t){if(e.containsPath(ie,t.fileName,!1)){var r=e.getBaseFileName(t.fileName);if("lib.d.ts"===r||"lib.es6.d.ts"===r)return 0;var n=e.removeSuffix(e.removePrefix(r,"lib."),".d.ts"),i=e.libs.indexOf(n);if(-1!==i)return i+1}return e.libs.length+2}function Ke(t){return e.toPath(t,oe,zt)}function We(){if(void 0===N){var t=e.filter(_,(function(t){return e.sourceFileMayBeEmitted(t,ze)}));N=e.getCommonSourceDirectory(L,(function(){return e.mapDefined(t,(function(e){return e.isDeclarationFile?void 0:e.fileName}))}),oe,zt,(function(r){return function(t,r){for(var n=!0,i=ee.getCanonicalFileName(e.getNormalizedAbsolutePath(r,oe)),a=0,o=t;a<o.length;a++){var s=o[a];if(!s.isDeclarationFile)0!==ee.getCanonicalFileName(e.getNormalizedAbsolutePath(s.fileName,oe)).indexOf(i)&&(Ht(s,e.Diagnostics.File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files,[s.fileName,r]),n=!1)}return n}(t,r)}))}return N}function Ge(t,r){if(0===Ce&&!r.ambientModuleNames.length)return Ue(t,r,void 0);var n,i,a,o=z&&z.getSourceFile(r.fileName);if(o!==r&&r.resolvedModules){for(var s=[],c=0,l=t;c<l.length;c++){var u=l[c],d=r.resolvedModules.get(u);s.push(d)}return s}for(var p={},f=0;f<t.length;f++){u=t[f];if(r===o&&!ue(o.path)){var m=e.getResolvedModule(o,u);if(m){e.isTraceEnabled(L,ee)&&e.trace(ee,e.Diagnostics.Reusing_resolution_of_module_0_to_file_1_from_old_program,u,e.getNormalizedAbsolutePath(r.originalFileName,oe)),(i||(i=new Array(t.length)))[f]=m,(a||(a=[])).push(u);continue}}var g=!1;e.contains(r.ambientModuleNames,u)?(g=!0,e.isTraceEnabled(L,ee)&&e.trace(ee,e.Diagnostics.Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1,u,e.getNormalizedAbsolutePath(r.originalFileName,oe))):g=y(u),g?(i||(i=new Array(t.length)))[f]=p:(n||(n=[])).push(u)}var _=n&&n.length?Ue(n,r,a):e.emptyArray;if(!i)return e.Debug.assert(_.length===t.length),_;var h=0;for(f=0;f<i.length;f++)i[f]?i[f]===p&&(i[f]=void 0):(i[f]=_[h],h++);return e.Debug.assert(h===_.length),i;function y(t){var r=e.getResolvedModule(o,t),n=r&&z.getSourceFile(r.resolvedFileName);if(r&&n)return!1;var i=U.get(t);return!!i&&(e.isTraceEnabled(L,ee)&&e.trace(ee,e.Diagnostics.Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified,t,i),!0)}}function $e(t){return{getPrependNodes:Xe,getCanonicalFileName:zt,getCommonSourceDirectory:ze.getCommonSourceDirectory,getCompilerOptions:ze.getCompilerOptions,getCurrentDirectory:function(){return oe},getNewLine:function(){return ee.getNewLine()},getSourceFile:ze.getSourceFile,getSourceFileByPath:ze.getSourceFileByPath,getSourceFiles:ze.getSourceFiles,getLibFileFromReference:ze.getLibFileFromReference,isSourceFileFromExternalLibrary:Qe,getResolvedProjectReferenceToRedirect:Pt,getProjectReferenceRedirect:Ct,isSourceOfProjectReferenceRedirect:Ot,getSymlinkCache:ar,writeFile:t||function(e,t,r,n,i){return ee.writeFile(e,t,r,n,i)},isEmitBlocked:tt,readFile:function(e){return ee.readFile(e)},fileExists:function(t){var r=Ke(t);return!!nt(r)||!e.contains(fe,r)&&ee.fileExists(t)},useCaseSensitiveFileNames:function(){return ee.useCaseSensitiveFileNames()},getProgramBuildInfo:function(){return ze.getProgramBuildInfo&&ze.getProgramBuildInfo()},getSourceFileFromReference:function(e,t){return ze.getSourceFileFromReference(e,t)},redirectTargetsMap:be,getFileIncludeReasons:ze.getFileIncludeReasons}}function Ye(){return me}function Xe(){return D(B,(function(e,t){var r;return null===(r=me[t])||void 0===r?void 0:r.commandLine}),(function(e){var t=Ke(e),r=nt(t);return r?r.text:ke.has(t)?void 0:ee.readFile(t)}))}function Qe(e){return!!$.get(e.path)}function Ze(){return P||(P=e.createTypeChecker(ze,!0))}function et(){return I||(I=e.createTypeChecker(ze,!1))}function tt(e){return le.has(Ke(e))}function rt(e){return nt(Ke(e))}function nt(e){return ke.get(e)||void 0}function it(t,r,n){return t?r(t,n):e.sortAndDeduplicateDiagnostics(e.flatMap(ze.getSourceFiles(),(function(e){return n&&n.throwIfCancellationRequested(),r(e,n)})))}function at(t){var r;if(e.skipTypeChecking(t,L,ze)||t.isDeclarationFile&&L.needDoArkTsLinter)return e.emptyArray;var n=ae.getDiagnostics(t.fileName);return(null===(r=t.commentDirectives)||void 0===r?void 0:r.length)?dt(t,t.commentDirectives,n).diagnostics:n}function ot(t){return e.isSourceFileJS(t)?(t.additionalSyntacticDiagnostics||(t.additionalSyntacticDiagnostics=function(t){return st((function(){var r=[];return n(t,t),e.forEachChildRecursively(t,n,i),r;function n(t,n){switch(n.kind){case 161:case 164:case 166:if(n.questionToken===t)return r.push(s(t,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 165:case 167:case 168:case 169:case 209:case 253:case 210:case 251:if(n.type===t)return r.push(s(t,e.Diagnostics.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(t.kind){case 265:if(t.isTypeOnly)return r.push(s(n,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 270:if(t.isTypeOnly)return r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 263:return r.push(s(t,e.Diagnostics.import_can_only_be_used_in_TypeScript_files)),"skip";case 269:if(t.isExportEquals)return r.push(s(t,e.Diagnostics.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 289:if(117===t.token)return r.push(s(t,e.Diagnostics.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 256:var i=e.tokenToString(118);return e.Debug.assertIsDefined(i),r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,i)),"skip";case 259:var a=16&t.flags?e.tokenToString(141):e.tokenToString(140);return e.Debug.assertIsDefined(a),r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,a)),"skip";case 257:return r.push(s(t,e.Diagnostics.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 258:var o=e.Debug.checkDefined(e.tokenToString(92));return r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,o)),"skip";case 227:return r.push(s(t,e.Diagnostics.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 226:return r.push(s(t.type,e.Diagnostics.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 207:e.Debug.fail()}}function i(t,n){switch(n.decorators!==t||L.experimentalDecorators||r.push(s(n,e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning)),n.kind){case 254:case 223:case 255:case 166:case 167:case 168:case 169:case 209:case 253:case 210:if(t===n.typeParameters)return r.push(o(t,e.Diagnostics.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 234:if(t===n.modifiers)return a(n.modifiers,234===n.kind),"skip";break;case 164:if(t===n.modifiers){for(var i=0,c=t;i<c.length;i++){var l=c[i];124!==l.kind&&r.push(s(l,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,e.tokenToString(l.kind)))}return"skip"}break;case 161:if(t===n.modifiers)return r.push(o(t,e.Diagnostics.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 204:case 205:case 225:case 277:case 278:case 206:if(t===n.typeArguments)return r.push(o(t,e.Diagnostics.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip"}}function a(t,n){for(var i=0,a=t;i<a.length;i++){var o=a[i];switch(o.kind){case 85:if(n)continue;case 123:case 121:case 122:case 143:case 134:case 126:r.push(s(o,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,e.tokenToString(o.kind)))}}}function o(r,n,i,a,o){var s=r.pos;return e.createFileDiagnostic(t,s,r.end-s,n,i,a,o)}function s(r,n,i,a,o){return e.createDiagnosticForNodeInSourceFile(t,r,n,i,a,o)}}))}(t)),e.concatenate(t.additionalSyntacticDiagnostics,t.parseDiagnostics)):t.parseDiagnostics}function st(t){try{return t()}catch(t){throw t instanceof e.OperationCanceledException&&(I=void 0,P=void 0),t}}function ct(t,r){return e.concatenate(S(lt(t,r),L),at(t))}function lt(e,t){return mt(e,t,J,ut)}function ut(t,r){return st((function(){var n=!!L.needDoArkTsLinter;if(n&&(L.skipLibCheck=!1),e.skipTypeChecking(t,L,ze))return e.emptyArray;var i=Ze();e.Debug.assert(!!t.bindDiagnostics);var a=e.isCheckJsEnabledForFile(t,L),o=!(!!t.checkJsDirective&&!1===t.checkJsDirective.enabled)&&(3===t.scriptKind||4===t.scriptKind||5===t.scriptKind||a||7===t.scriptKind||8===t.scriptKind),s=o?t.bindDiagnostics:e.emptyArray,c=o?i.getDiagnostics(t,r):e.emptyArray;return function(t,r){for(var n,i=[],a=2;a<arguments.length;a++)i[a-2]=arguments[a];var o=e.flatten(i);if(!r||!(null===(n=t.commentDirectives)||void 0===n?void 0:n.length))return o;for(var s=dt(t,t.commentDirectives,o),c=s.diagnostics,l=s.directives,u=0,d=l.getUnusedExpectations();u<d.length;u++){var p=d[u];c.push(e.createDiagnosticForRange(t,p.range,e.Diagnostics.Unused_ts_expect_error_directive))}return c}(t,o,s,n?function(t){if(t){var r=t.filter((function(t){var r,n,i=t.messageText!==(L.isCompatibleVersion?e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden.message:e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden.message),a=void 0!==t.file&&-1!==e.normalizePath(t.file.fileName).indexOf("/oh_modules/");return!(3===(null===(r=t.file)||void 0===r?void 0:r.scriptKind)&&(null===(n=t.file)||void 0===n?void 0:n.isDeclarationFile)&&i||a)}));return r}return e.emptyArray}(c):c,a?t.jsDocDiagnostics:void 0)}))}function dt(t,r,n){var i=e.createCommentDirectivesMap(t,r),a=n.filter((function(t){return-1===function(t,r){var n=t.file,i=t.start;if(!n)return-1;var a=e.getLineStarts(n),o=e.computeLineAndCharacterOfPosition(a,i).line-1;for(;o>=0;){if(r.markUsed(o))return o;var s=n.text.slice(a[o],a[o+1]).trim();if(""!==s&&!/^(\s*)\/\/(.*)$/.test(s))return-1;o--}return-1}(t,i)}));return{diagnostics:a,directives:i}}function pt(e,t){return mt(e,t,V,ft)}function ft(t,r){return st((function(){var n=Ze().getEmitResolver(t,r);return e.getDeclarationDiagnostics($e(e.noop),n,t)||e.emptyArray}))}function mt(t,r,n,i){var a,o=t?null===(a=n.perFile)||void 0===a?void 0:a.get(t.path):n.allDiagnostics;if(o)return o;var s=i(t,r);return t?(n.perFile||(n.perFile=new e.Map)).set(t.path,s):n.allDiagnostics=s,s}function gt(e,t){return e.isDeclarationFile?[]:pt(e,t)}function _t(t,r,n,i){xt(e.normalizePath(t),r,n,void 0,i)}function ht(e,t){return e.fileName===t.fileName}function yt(e,t){return 78===e.kind?78===t.kind&&e.escapedText===t.escapedText:10===t.kind&&e.text===t.text}function vt(t,r){var n=e.factory.createStringLiteral(t),i=e.factory.createImportDeclaration(void 0,void 0,void 0,n);return e.addEmitFlags(i,67108864),e.setParent(n,i),e.setParent(i,r),n.flags&=-9,i.flags&=-9,n}function bt(t){if(!t.imports){var r,n,i,a=e.isSourceFileJS(t),o=e.isExternalModule(t);if((L.isolatedModules||o)&&!t.isDeclarationFile){L.importHelpers&&(r=[vt(e.externalHelpersModuleNameText,t)]);var s=e.getJSXRuntimeImport(e.getJSXImplicitImportBase(L,t),L);s&&(r||(r=[])).push(vt(s,t))}for(var c=0,l=t.statements;c<l.length;c++){u(l[c],!1)}return(1048576&t.flags||a)&&function(t){var n=/import|require/g;for(;null!==n.exec(t.text);){var i=d(t,n.lastIndex);a&&e.isRequireCall(i,!0)||e.isImportCall(i)&&1===i.arguments.length&&e.isStringLiteralLike(i.arguments[0])?r=e.append(r,i.arguments[0]):e.isLiteralImportTypeNode(i)&&(r=e.append(r,i.argument.literal))}}(t),t.imports=r||e.emptyArray,t.moduleAugmentations=n||e.emptyArray,void(t.ambientModuleNames=i||e.emptyArray)}function u(a,s){if(e.isAnyImportOrReExport(a)){var c=e.getExternalModuleName(a);!(c&&e.isStringLiteral(c)&&c.text)||s&&e.isExternalModuleNameRelative(c.text)||(r=e.append(r,c))}else if(e.isModuleDeclaration(a)&&e.isAmbientModule(a)&&(s||e.hasSyntacticModifier(a,2)||t.isDeclarationFile)){var l=e.getTextOfIdentifierOrLiteral(a.name);if(o||s&&!e.isExternalModuleNameRelative(l))(n||(n=[])).push(a.name);else if(!s){t.isDeclarationFile&&(i||(i=[])).push(l);var d=a.body;if(d)for(var p=0,f=d.statements;p<f.length;p++){u(f[p],!0)}}}}function d(t,r){for(var n=t,i=function(e){if(e.pos<=r&&(r<e.end||r===e.end&&1===e.kind))return e};;){var o=a&&e.hasJSDocNodes(n)&&e.forEach(n.jsDoc,i)||e.forEachChild(n,i);if(!o)return n;n=o}}}function kt(t,r,n,i){if(e.hasExtension(t)){var a=ee.getCanonicalFileName(t);if(!L.allowNonTsExtensions&&!e.forEach(ce,(function(t){return e.fileExtensionIs(a,t)}))&&!e.fileExtensionIs(a,".ets"))return void(n&&(e.hasJSFileExtension(a)?n(e.Diagnostics.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,t):n(e.Diagnostics.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,t,"'"+se.join("', '")+"'")));var o=r(t);if(n)if(o)v(i)&&a===ee.getCanonicalFileName(nt(i.file).fileName)&&n(e.Diagnostics.A_file_cannot_have_a_reference_to_itself);else{var s=Ct(t);s?n(e.Diagnostics.Output_file_0_has_not_been_built_from_source_file_1,s,t):n(e.Diagnostics.File_0_not_found,t)}return o}var c=L.allowNonTsExtensions&&r(t);if(c)return c;if(!n||!L.allowNonTsExtensions){var l=e.forEach(se,(function(e){return r(t+e)}));return n&&!l&&n(e.Diagnostics.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,t,"'"+se.join("', '")+"'"),l}n(e.Diagnostics.File_0_not_found,t)}function xt(e,t,r,n,i){kt(e,(function(e){return Dt(e,Ke(e),t,r,i,n)}),(function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return Vt(void 0,i,e,t)}),i)}function St(e,t){return xt(e,!1,!1,void 0,t)}function wt(t,r,n){!v(n)&&e.some(q.get(r.path),v)?Vt(r,n,e.Diagnostics.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[r.fileName,t]):Vt(r,n,e.Diagnostics.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[t,r.fileName])}function Dt(t,r,n,i,a,o){null===e.tracing||void 0===e.tracing||e.tracing.push("program","findSourceFile",{fileName:t,isDefaultLib:n||void 0,fileIncludeKind:e.FileIncludeKind[a.kind]});var s=function(t,r,n,i,a,o){if(Se){var s=Ft(t),c=e.isOhpm(L.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart;if(!s&&ee.realpath&&L.preserveSymlinks&&e.isDeclarationFileName(t)&&e.stringContains(t,c)){var l=ee.realpath(t);l!==t&&(s=Ft(l))}if(s){var u=e.isString(s)?Dt(s,Ke(s),n,i,a,o):void 0;return u&&Tt(u,r,void 0),u}}var d,p=t;if(ke.has(r)){var f=ke.get(r);if(Et(f||void 0,a),f&&L.forceConsistentCasingInFileNames){var _=f.fileName;Ke(_)!==Ke(t)&&(t=Ct(t)||t),e.getNormalizedAbsolutePathWithoutRoot(_,oe)!==e.getNormalizedAbsolutePathWithoutRoot(t,oe)&&wt(t,f,a)}return f&&$.get(f.path)&&0===W?($.set(f.path,!1),L.noResolve||(Mt(f,n),Lt(f)),L.noLib||Bt(f),G.set(f.path,!1),Ut(f)):f&&G.get(f.path)&&W<K&&(G.set(f.path,!1),Ut(f)),f||void 0}if(v(a)&&!Se){var h=At(t);if(h){if(e.outFile(h.commandLine.options))return;var y=Nt(h,t);t=y,d=Ke(y)}}var b=ee.getSourceFile(t,L.target,(function(r){return Vt(void 0,a,e.Diagnostics.Cannot_read_file_0_Colon_1,[t,r])}),Ae);if(o){var k=e.packageIdToString(o),x=ye.get(k);if(x){var S=function(e,t,r,n,i,a){var o=Object.create(e);return o.fileName=r,o.path=n,o.resolvedPath=i,o.originalFileName=a,o.redirectInfo={redirectTarget:e,unredirected:t},$.set(n,W>0),Object.defineProperties(o,{id:{get:function(){return this.redirectInfo.redirectTarget.id},set:function(e){this.redirectInfo.redirectTarget.id=e}},symbol:{get:function(){return this.redirectInfo.redirectTarget.symbol},set:function(e){this.redirectInfo.redirectTarget.symbol=e}}}),o}(x,b,t,r,Ke(t),p);return be.add(x.path,t),Tt(S,r,d),Et(S,a),ve.set(r,o.name),g.push(S),S}b&&(ye.set(k,b),ve.set(r,o.name))}if(Tt(b,r,d),b){if($.set(r,W>0),b.fileName=t,b.path=r,b.resolvedPath=Ke(t),b.originalFileName=p,Et(b,a),ee.useCaseSensitiveFileNames()){var w=e.toFileNameLowerCase(r),D=xe.get(w);D?wt(t,D,a):xe.set(w,b)}re=re||b.hasNoDefaultLib&&!i,L.noResolve||(Mt(b,n),Lt(b)),L.noLib||Bt(b),Ut(b),n?m.push(b):g.push(b)}return b}(t,r,n,i,a,o);return null===e.tracing||void 0===e.tracing||e.tracing.pop(),s}function Et(e,t){e&&q.add(e.path,t)}function Tt(e,t,r){r?(ke.set(r,e),ke.set(t,e||!1)):ke.set(t,e)}function Ct(e){var t=At(e);return t&&Nt(t,e)}function At(t){if(me&&me.length&&!e.isDeclarationFileName(t)&&!e.fileExtensionIs(t,".json"))return Pt(t)}function Nt(t,r){var n=e.outFile(t.commandLine.options);return n?e.changeExtension(n,".d.ts"):e.getOutputDeclarationFileName(r,t.commandLine,!ee.useCaseSensitiveFileNames())}function Pt(t){void 0===_e&&(_e=new e.Map,It((function(e){Ke(L.configFilePath)!==e.sourceFile.path&&e.commandLine.fileNames.forEach((function(t){return _e.set(Ke(t),e.sourceFile.path)}))})));var r=_e.get(Ke(t));return r&&Rt(r)}function It(t){return e.forEachResolvedProjectReference(me,t)}function Ft(t){if(e.isDeclarationFileName(t))return void 0===he&&(he=new e.Map,It((function(t){var r=e.outFile(t.commandLine.options);if(r){var n=e.changeExtension(r,".d.ts");he.set(Ke(n),!0)}else{var i=e.memoize((function(){return e.getCommonSourceDirectoryOfConfig(t.commandLine,!ee.useCaseSensitiveFileNames())}));e.forEach(t.commandLine.fileNames,(function(r){if(!e.isDeclarationFileName(r)&&!e.fileExtensionIs(r,".json")){var n=e.getOutputDeclarationFileName(r,t.commandLine,!ee.useCaseSensitiveFileNames(),i);he.set(Ke(n),r)}}))}}))),he.get(Ke(t))}function Ot(e){return Se&&!!Pt(e)}function Rt(e){if(ge)return ge.get(e)||void 0}function Mt(r,n){e.forEach(r.referencedFiles,(function(i,a){xt(t(i.fileName,r.fileName),n,!1,void 0,{kind:e.FileIncludeKind.ReferenceFile,file:r.path,index:a})}))}function Lt(t){var r=e.map(t.typeReferenceDirectives,(function(t){return e.toFileNameLowerCase(t.fileName)}));if(r)for(var n=qe(r,t),i=0;i<r.length;i++){var a=t.typeReferenceDirectives[i],o=n[i],s=e.toFileNameLowerCase(a.fileName);e.setResolvedTypeReferenceDirective(t,s,o),jt(s,o,{kind:e.FileIncludeKind.TypeReferenceDirective,file:t.path,index:i})}}function jt(t,r,n){null===e.tracing||void 0===e.tracing||e.tracing.push("program","processTypeReferenceDirective",{directive:t,hasResolved:!!Ge,refKind:n.kind,refPath:v(n)?n.file:void 0}),function(t,r,n){var i=H.get(t);if(i&&i.primary)return;var a=!0;if(r){if(r.isExternalLibraryImport&&W++,r.primary)xt(r.resolvedFileName,!1,!1,r.packageId,n);else if(i){if(r.resolvedFileName!==i.resolvedFileName){var o=ee.readFile(r.resolvedFileName),s=rt(i.resolvedFileName);o!==s.text&&Vt(s,n,e.Diagnostics.Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict,[t,r.resolvedFileName,i.resolvedFileName])}a=!1}else xt(r.resolvedFileName,!1,!1,r.packageId,n);r.isExternalLibraryImport&&W--}else Vt(void 0,n,e.Diagnostics.Cannot_find_type_definition_file_for_0,[t]);a&&H.set(t,r)}(t,r,n),null===e.tracing||void 0===e.tracing||e.tracing.pop()}function Bt(t){e.forEach(t.libReferenceDirectives,(function(r,n){var i=e.toFileNameLowerCase(r.fileName),a=e.libMap.get(i);if(a)_t(e.combinePaths(ie,a),!0,!0,{kind:e.FileIncludeKind.LibReferenceDirective,file:t.path,index:n});else{var o=e.removeSuffix(e.removePrefix(i,"lib."),".d.ts"),s=e.getSpellingSuggestion(o,e.libs,e.identity),c=s?e.Diagnostics.Cannot_find_lib_definition_for_0_Did_you_mean_1:e.Diagnostics.Cannot_find_lib_definition_for_0;(O||(O=[])).push({kind:0,reason:{kind:e.FileIncludeKind.LibReferenceDirective,file:t.path,index:n},diagnostic:c,args:[i,s]})}}))}function zt(e){return ee.getCanonicalFileName(e)}function Ut(t){if(bt(t),t.imports.length||t.moduleAugmentations.length){var r=C(t),n=Ge(r,t);e.Debug.assert(n.length===r.length);for(var i=0;i<r.length;i++){var a=n[i];if(e.setResolvedModule(t,r[i],a),a){var o=a.isExternalLibraryImport,s=!e.resolutionExtensionIsTSOrJson(a.extension),c=o&&s,l=a.resolvedFileName;o&&W++;var u=c&&W>K,d=l&&!T(L,a)&&!L.noResolve&&i<t.imports.length&&!u&&!(s&&!e.getAllowJSCompilerOption(L))&&(e.isInJSFile(t.imports[i])||!(4194304&t.imports[i].flags));if(u)G.set(t.path,!0);else if(d){Dt(l,Ke(l),!1,!1,{kind:e.FileIncludeKind.Import,file:t.path,index:i},a.packageId)}o&&W--}}}else t.resolvedModules=void 0}function qt(t){ge||(ge=new e.Map);var r,n,i=E(t),a=Ke(i),o=ge.get(a);if(void 0!==o)return o||void 0;if(ee.getParsedCommandLine){if(!(r=ee.getParsedCommandLine(i)))return Tt(void 0,a,void 0),void ge.set(a,!1);n=e.Debug.checkDefined(r.options.configFile),e.Debug.assert(!n.path||n.path===a),Tt(n,a,void 0)}else{var s=e.getNormalizedAbsolutePath(e.getDirectoryPath(i),ee.getCurrentDirectory());if(Tt(n=ee.getSourceFile(i,100),a,void 0),void 0===n)return void ge.set(a,!1);r=e.parseJsonSourceFileConfigFileContent(n,te,s,void 0,i)}n.fileName=i,n.path=a,n.resolvedPath=a,n.originalFileName=i;var c={commandLine:r,sourceFile:n};return ge.set(a,c),r.projectReferences&&(c.references=r.projectReferences.map(qt)),c}function Jt(t,r,n,a){var o,s,c,l=v(r)?r:void 0;t&&(null===(o=q.get(t.path))||void 0===o||o.forEach(m)),r&&m(r),l&&1===(null==s?void 0:s.length)&&(s=void 0);var u=l&&k(nt,l),d=s&&e.chainDiagnosticMessages(s,e.Diagnostics.The_file_is_in_the_program_because_Colon),p=t&&e.explainIfFileIsRedirect(t),f=e.chainDiagnosticMessages.apply(void 0,i([p?d?i([d],p):p:d,n],a||e.emptyArray));return u&&b(u)?e.createFileDiagnosticFromMessageChain(u.file,u.pos,u.end-u.pos,f,c):e.createCompilerDiagnosticFromMessageChain(f,c);function m(t){(s||(s=[])).push(e.fileIncludeReasonToDiagnostics(ze,t)),!l&&v(t)?l=t:l!==t&&(c=e.append(c,function(t){if(v(t)){var r,n=k(nt,t);switch(t.kind){case e.FileIncludeKind.Import:r=e.Diagnostics.File_is_included_via_import_here;break;case e.FileIncludeKind.ReferenceFile:r=e.Diagnostics.File_is_included_via_reference_here;break;case e.FileIncludeKind.TypeReferenceDirective:r=e.Diagnostics.File_is_included_via_type_library_reference_here;break;case e.FileIncludeKind.LibReferenceDirective:r=e.Diagnostics.File_is_included_via_library_reference_here;break;default:e.Debug.assertNever(t)}return b(n)?e.createFileDiagnostic(n.file,n.pos,n.end-n.pos,r):void 0}if(!L.configFile)return;var i,a;switch(t.kind){case e.FileIncludeKind.RootFile:if(!L.configFile.configFileSpecs)return;var o=e.getNormalizedAbsolutePath(M[t.index],oe),s=e.getMatchedFileSpec(ze,o);if(s){i=e.getTsConfigPropArrayElementValue(L.configFile,"files",s),a=e.Diagnostics.File_is_matched_by_files_list_specified_here;break}var c=e.getMatchedIncludeSpec(ze,o);if(!c)return;i=e.getTsConfigPropArrayElementValue(L.configFile,"include",c),a=e.Diagnostics.File_is_matched_by_include_pattern_specified_here;break;case e.FileIncludeKind.SourceFromProjectReference:case e.FileIncludeKind.OutputFromProjectReference:var l=e.Debug.checkDefined(null==me?void 0:me[t.index]),u=y(B,me,(function(e,t,r){return e===l?{sourceFile:(null==t?void 0:t.sourceFile)||L.configFile,index:r}:void 0}));if(!u)return;var d=u.sourceFile,p=u.index,f=e.firstDefined(e.getTsConfigPropArray(d,"references"),(function(t){return e.isArrayLiteralExpression(t.initializer)?t.initializer:void 0}));return f&&f.elements.length>p?e.createDiagnosticForNodeInSourceFile(d,f.elements[p],t.kind===e.FileIncludeKind.OutputFromProjectReference?e.Diagnostics.File_is_output_from_referenced_project_specified_here:e.Diagnostics.File_is_source_from_referenced_project_specified_here):void 0;case e.FileIncludeKind.AutomaticTypeDirectiveFile:if(!L.types)return;i=Yt("types",t.typeReference),a=e.Diagnostics.File_is_entry_point_of_type_library_specified_here;break;case e.FileIncludeKind.LibFile:if(void 0!==t.index){i=Yt("lib",L.lib[t.index]),a=e.Diagnostics.File_is_library_specified_here;break}var m=e.forEachEntry(e.targetOptionDeclaration.type,(function(e,t){return e===L.target?t:void 0}));i=m?(g=m,(_=Gt("target"))&&e.firstDefined(_,(function(t){return e.isStringLiteral(t.initializer)&&t.initializer.text===g?t.initializer:void 0}))):void 0,a=e.Diagnostics.File_is_default_library_for_target_specified_here;break;default:e.Debug.assertNever(t)}var g,_;return i&&e.createDiagnosticForNodeInSourceFile(L.configFile,i,a)}(t))),t===r&&(r=void 0)}}function Vt(e,t,r,n){(O||(O=[])).push({kind:1,file:e&&e.path,fileProcessingReason:t,diagnostic:r,args:n})}function Ht(e,t,r){ae.add(Jt(e,void 0,t,r))}function Kt(t,r,n,i,a,o){for(var s=!0,c=0,l=$t();c<l.length;c++){var u=l[c];if(e.isObjectLiteralExpression(u.initializer))for(var d=0,p=e.getPropertyAssignment(u.initializer,t);d<p.length;d++){var f=p[d].initializer;e.isArrayLiteralExpression(f)&&f.elements.length>r&&(ae.add(e.createDiagnosticForNodeInSourceFile(L.configFile,f.elements[r],n,i,a,o)),s=!1)}}s&&ae.add(e.createCompilerDiagnostic(n,i,a,o))}function Wt(t,r,n,i){for(var a=!0,o=0,s=$t();o<s.length;o++){var c=s[o];e.isObjectLiteralExpression(c.initializer)&&rr(c.initializer,t,r,void 0,n,i)&&(a=!1)}a&&ae.add(e.createCompilerDiagnostic(n,i))}function Gt(t){var r=tr();return r&&e.getPropertyAssignment(r,t)}function $t(){return Gt("paths")||e.emptyArray}function Yt(t,r){var n=tr();return n&&e.getPropertyArrayElementValue(n,t,r)}function Xt(e,t,r,n){er(!0,t,r,e,t,r,n)}function Qt(e,t,r){er(!1,e,void 0,t,r)}function Zt(t,r,n,i,a){var o=e.firstDefined(e.getTsConfigPropArray(t||L.configFile,"references"),(function(t){return e.isArrayLiteralExpression(t.initializer)?t.initializer:void 0}));o&&o.elements.length>r?ae.add(e.createDiagnosticForNodeInSourceFile(t||L.configFile,o.elements[r],n,i,a)):ae.add(e.createCompilerDiagnostic(n,i,a))}function er(t,r,n,i,a,o,s){var c=tr();(!c||!rr(c,t,r,n,i,a,o,s))&&ae.add(e.createCompilerDiagnostic(i,a,o,s))}function tr(){if(void 0===Y){Y=!1;var t=e.getTsConfigObjectLiteralExpression(L.configFile);if(t)for(var r=0,n=e.getPropertyAssignment(t,"compilerOptions");r<n.length;r++){var i=n[r];if(e.isObjectLiteralExpression(i.initializer)){Y=i.initializer;break}}}return Y||void 0}function rr(t,r,n,i,a,o,s,c){for(var l=e.getPropertyAssignment(t,n,i),u=0,d=l;u<d.length;u++){var p=d[u];ae.add(e.createDiagnosticForNodeInSourceFile(L.configFile,r?p.name:p.initializer,a,o,s,c))}return!!l.length}function nr(e,t){le.set(Ke(e),!0),ae.add(t)}function ir(t,r){return 0===e.comparePaths(t,r,oe,!ee.useCaseSensitiveFileNames())}function ar(){return ee.getSymlinkCache?ee.getSymlinkCache():A||(A=e.discoverProbableSymlinks(_,zt,ee.getCurrentDirectory(),e.isOhpm(L.packageManagerType)))}},e.emitSkippedWithNoDiagnostics={diagnostics:e.emptyArray,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0},e.handleNoEmitOptions=x,e.filterSemanticDiagnotics=S,e.parseConfigHostFromCompilerHostLike=w,e.createPrependNodes=D,e.resolveProjectReferencePath=E,e.getResolutionDiagnostic=T,e.getModuleNameStringLiteralAt=A,e.getTypeExportImportAndConstEnumTransformer=function(t){return e.transformTypeExportImportAndConstEnumInTypeScript(t)},e.hasTsNoCheckOrTsIgnoreFlag=function(e){if(e.checkJsDirective&&!1===e.checkJsDirective.enabled)return!0;if(void 0!==e.commentDirectives)for(var t=0,r=e.commentDirectives;t<r.length;t++){if(1===r[t].type)return!0}return!1}}(d||(d={})),function(e){function t(e,t,r,n,i,a){var o=[],s=e.emit(t,(function(e,t,r){o.push({name:e,writeByteOrderMark:r,text:t})}),n,r,i,a),c=s.emitSkipped,l=s.diagnostics,u=s.exportedModulesFromDeclarationEmit;return{outputFiles:o,emitSkipped:c,diagnostics:l,exportedModulesFromDeclarationEmit:u}}e.getFileEmitOutput=t,function(r){function n(t){if(t.declarations&&t.declarations[0]){var r=e.getSourceFileOfNode(t.declarations[0]);return r&&r.resolvedPath}}function i(e,t){var r=e.getSymbolAtLocation(t);return r&&n(r)}function a(t,r,n,i){return e.toPath(t.getProjectReferenceRedirect(r)||r,n,i)}function o(t,r,n){var o;if(r.imports&&r.imports.length>0)for(var s=t.getTypeChecker(),c=0,l=r.imports;c<l.length;c++){var u=i(s,l[c]);u&&S(u)}var d=e.getDirectoryPath(r.resolvedPath);if(r.referencedFiles&&r.referencedFiles.length>0)for(var p=0,f=r.referencedFiles;p<f.length;p++){var m=f[p];S(a(t,m.fileName,d,n))}if(r.resolvedTypeReferenceDirectiveNames&&r.resolvedTypeReferenceDirectiveNames.forEach((function(e){if(e){var r=e.resolvedFileName;S(a(t,r,d,n))}})),r.moduleAugmentations.length){s=t.getTypeChecker();for(var g=0,_=r.moduleAugmentations;g<_.length;g++){var h=_[g];if(e.isStringLiteral(h)){var y=s.getSymbolAtLocation(h);y&&x(y)}}}for(var v=0,b=t.getTypeChecker().getAmbientModules();v<b.length;v++){var k=b[v];k.declarations.length>1&&x(k)}return o;function x(t){for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n],o=e.getSourceFileOfNode(a);o&&o!==r&&S(o.resolvedPath)}}function S(t){(o||(o=new e.Set)).add(t)}}function s(e,t){return t&&!t.referencedMap==!e}function c(e,t){t.forEach((function(t,r){return l(e,t,r)}))}function l(e,t,r){e.fileInfos.get(r).signature=t,e.hasCalledUpdateShapeSignature.add(r)}function u(r,i,a,o,s,c,l){if(e.Debug.assert(!!a),e.Debug.assert(!l||!!r.exportedModulesMap,"Compute visible to outside map only if visibleToOutsideReferencedMap present in the state"),r.hasCalledUpdateShapeSignature.has(a.resolvedPath)||o.has(a.resolvedPath))return!1;var u=r.fileInfos.get(a.resolvedPath);if(!u)return e.Debug.fail();var d,p=u.signature;if(a.isDeclarationFile){if(d=a.version,l&&d!==p){var f=r.referencedMap?r.referencedMap.get(a.resolvedPath):void 0;l.set(a.resolvedPath,f||!1)}}else{var m=t(i,a,!0,s,void 0,!0),g=m.outputFiles&&i.getCompilerOptions().declarationMap?m.outputFiles.length>1?m.outputFiles[1]:void 0:m.outputFiles.length>0?m.outputFiles[0]:void 0;g?(e.Debug.assert(e.isDeclarationFileName(g.name),"File extension for signature expected to be dts or dets",(function(){return"Found: "+e.getAnyExtensionFromPath(g.name)+" for "+g.name+":: All output files: "+JSON.stringify(m.outputFiles.map((function(e){return e.name})))})),d=(c||e.generateDjb2Hash)(g.text),l&&d!==p&&function(t,r,i){if(!r)return void i.set(t.resolvedPath,!1);var a;function o(t){t&&(a||(a=new e.Set),a.add(t))}r.forEach((function(e){return o(n(e))})),i.set(t.resolvedPath,a||!1)}(a,m.exportedModulesFromDeclarationEmit,l)):d=p}return o.set(a.resolvedPath,d),!p||d!==p}function d(t,r){if(!t.allFileNames){var n=r.getSourceFiles();t.allFileNames=n===e.emptyArray?e.emptyArray:n.map((function(e){return e.fileName}))}return t.allFileNames}function p(t,r){return e.arrayFrom(e.mapDefinedIterator(t.referencedMap.entries(),(function(e){var t=e[0];return e[1].has(r)?t:void 0})))}function f(t){return function(t){return e.some(t.moduleAugmentations,(function(t){return e.isGlobalScopeAugmentation(t.parent)}))}(t)||!e.isExternalModule(t)&&!function(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];if(!e.isModuleWithStringLiteralName(i))return!1}return!0}(t)}function m(t,r,n){if(t.allFilesExcludingDefaultLibraryFile)return t.allFilesExcludingDefaultLibraryFile;var i;n&&c(n);for(var a=0,o=r.getSourceFiles();a<o.length;a++){var s=o[a];s!==n&&c(s)}return t.allFilesExcludingDefaultLibraryFile=i||e.emptyArray,t.allFilesExcludingDefaultLibraryFile;function c(e){r.isSourceFileDefaultLibrary(e)||(i||(i=[])).push(e)}}function g(t,r,n){var i=r.getCompilerOptions();return i&&e.outFile(i)?[n]:m(t,r,n)}function _(t,r,n,i,a,o,s){if(f(n))return m(t,r,n);var c=r.getCompilerOptions();if(c&&(c.isolatedModules||e.outFile(c)))return[n];var l=new e.Map;l.set(n.resolvedPath,n);for(var d=p(t,n.resolvedPath);d.length>0;){var g=d.pop();if(!l.has(g)){var _=r.getSourceFileByPath(g);l.set(g,_),_&&u(t,r,_,i,a,o,s)&&d.push.apply(d,p(t,_.resolvedPath))}}return e.arrayFrom(e.mapDefinedIterator(l.values(),(function(e){return e})))}r.canReuseOldState=s,r.create=function(t,r,n){var i=new e.Map,a=t.getCompilerOptions().module!==e.ModuleKind.None?new e.Map:void 0,c=a?new e.Map:void 0,l=new e.Set,u=s(a,n);t.getTypeChecker();for(var d=0,p=t.getSourceFiles();d<p.length;d++){var m=p[d],g=e.Debug.checkDefined(m.version,"Program intended to be used with Builder should have source files with versions set"),_=u?n.fileInfos.get(m.resolvedPath):void 0;if(a){var h=o(t,m,r);if(h&&a.set(m.resolvedPath,h),u){var y=n.exportedModulesMap.get(m.resolvedPath);y&&c.set(m.resolvedPath,y)}}i.set(m.resolvedPath,{version:g,signature:_&&_.signature,affectsGlobalScope:f(m)})}return{fileInfos:i,referencedMap:a,exportedModulesMap:c,hasCalledUpdateShapeSignature:l}},r.releaseCache=function(e){e.allFilesExcludingDefaultLibraryFile=void 0,e.allFileNames=void 0},r.clone=function(t){return{fileInfos:new e.Map(t.fileInfos),referencedMap:t.referencedMap&&new e.Map(t.referencedMap),exportedModulesMap:t.exportedModulesMap&&new e.Map(t.exportedModulesMap),hasCalledUpdateShapeSignature:new e.Set(t.hasCalledUpdateShapeSignature)}},r.getFilesAffectedBy=function(t,r,n,i,a,o,s){var l=o||new e.Map,d=r.getSourceFileByPath(n);if(!d)return e.emptyArray;if(!u(t,r,d,l,i,a,s))return[d];var p=(t.referencedMap?_:g)(t,r,d,l,i,a,s);return o||c(t,l),p},r.updateSignaturesFromCache=c,r.updateSignatureOfFile=l,r.updateShapeSignature=u,r.updateExportedFilesMapFromCache=function(t,r){r&&(e.Debug.assert(!!t.exportedModulesMap),r.forEach((function(e,r){e?t.exportedModulesMap.set(r,e):t.exportedModulesMap.delete(r)})))},r.getAllDependencies=function(t,r,n){var i=r.getCompilerOptions();if(e.outFile(i))return d(t,r);if(!t.referencedMap||f(n))return d(t,r);for(var a=new e.Set,o=[n.resolvedPath];o.length;){var s=o.pop();if(!a.has(s)){a.add(s);var c=t.referencedMap.get(s);if(c)for(var l=c.keys(),u=l.next();!u.done;u=l.next())o.push(u.value)}}return e.arrayFrom(e.mapDefinedIterator(a.keys(),(function(e){var t,n;return null!==(n=null===(t=r.getSourceFileByPath(e))||void 0===t?void 0:t.fileName)&&void 0!==n?n:e})))},r.getReferencedByPaths=p,r.getAllFilesExcludingDefaultLibraryFile=m}(e.BuilderState||(e.BuilderState={}))}(d||(d={})),function(e){var t;function r(t,r,i){var a=e.BuilderState.create(t,r,i);a.program=t;var o=t.getCompilerOptions();a.compilerOptions=o,e.outFile(o)||(a.semanticDiagnosticsPerFile=new e.Map),a.changedFilesSet=new e.Set;var s=e.BuilderState.canReuseOldState(a.referencedMap,i),c=s?i.compilerOptions:void 0,l=s&&i.semanticDiagnosticsPerFile&&!!a.semanticDiagnosticsPerFile&&!e.compilerOptionsAffectSemanticDiagnostics(o,c);if(s){if(!i.currentChangedFilePath){var u=i.currentAffectedFilesSignatures;e.Debug.assert(!(i.affectedFiles||u&&u.size),"Cannot reuse if only few affected files of currentChangedFile were iterated")}var d=i.changedFilesSet;l&&e.Debug.assert(!d||!e.forEachKey(d,(function(e){return i.semanticDiagnosticsPerFile.has(e)})),"Semantic diagnostics shouldnt be available for changed files"),null==d||d.forEach((function(e){return a.changedFilesSet.add(e)})),!e.outFile(o)&&i.affectedFilesPendingEmit&&(a.affectedFilesPendingEmit=i.affectedFilesPendingEmit.slice(),a.affectedFilesPendingEmitKind=i.affectedFilesPendingEmitKind&&new e.Map(i.affectedFilesPendingEmitKind),a.affectedFilesPendingEmitIndex=i.affectedFilesPendingEmitIndex,a.seenAffectedFiles=new e.Set)}var p=a.referencedMap,f=s?i.referencedMap:void 0,m=l&&!o.skipLibCheck==!c.skipLibCheck,g=m&&!o.skipDefaultLibCheck==!c.skipDefaultLibCheck;return a.fileInfos.forEach((function(o,c){var u,d,_,h;if(!s||!(u=i.fileInfos.get(c))||u.version!==o.version||(_=d=p&&p.get(c),h=f&&f.get(c),_!==h&&(void 0===_||void 0===h||_.size!==h.size||e.forEachKey(_,(function(e){return!h.has(e)}))))||d&&e.forEachKey(d,(function(e){return!a.fileInfos.has(e)&&i.fileInfos.has(e)})))a.changedFilesSet.add(c);else if(l){var y=t.getSourceFileByPath(c);if(y.isDeclarationFile&&!m)return;if(y.hasNoDefaultLib&&!g)return;var v=i.semanticDiagnosticsPerFile.get(c);v&&(a.semanticDiagnosticsPerFile.set(c,i.hasReusableDiagnostic?function(t,r,i){if(!t.length)return e.emptyArray;var a=e.getDirectoryPath(e.getNormalizedAbsolutePath(e.getTsBuildInfoEmitOutputFilePath(r.getCompilerOptions()),r.getCurrentDirectory()));return t.map((function(e){var t=n(e,r,o);t.reportsUnnecessary=e.reportsUnnecessary,t.reportsDeprecated=e.reportDeprecated,t.source=e.source,t.skippedOn=e.skippedOn;var i=e.relatedInformation;return t.relatedInformation=i?i.length?i.map((function(e){return n(e,r,o)})):[]:void 0,t}));function o(t){return e.toPath(t,a,i)}}(v,t,r):v),a.semanticDiagnosticsFromOldState||(a.semanticDiagnosticsFromOldState=new e.Set),a.semanticDiagnosticsFromOldState.add(c))}})),s&&e.forEachEntry(i.fileInfos,(function(e,t){return e.affectsGlobalScope&&!a.fileInfos.has(t)}))?e.BuilderState.getAllFilesExcludingDefaultLibraryFile(a,t,void 0).forEach((function(e){return a.changedFilesSet.add(e.resolvedPath)})):c&&!e.outFile(o)&&e.compilerOptionsAffectEmit(o,c)&&(t.getSourceFiles().forEach((function(e){return b(a,e.resolvedPath,1)})),e.Debug.assert(!a.seenAffectedFiles||!a.seenAffectedFiles.size),a.seenAffectedFiles=a.seenAffectedFiles||new e.Set),a.buildInfoEmitPending=!!a.changedFilesSet.size,a}function n(e,t,r){var n=e.file;return a(a({},e),{file:n?t.getSourceFileByPath(r(n)):void 0})}function i(t,r){e.Debug.assert(!r||!t.affectedFiles||t.affectedFiles[t.affectedFilesIndex-1]!==r||!t.semanticDiagnosticsPerFile.has(r.resolvedPath))}function o(t,r,n){for(;;){var i=t.affectedFiles;if(i){for(var a=t.seenAffectedFiles,o=t.affectedFilesIndex;o<i.length;){var c=i[o];if(!a.has(c.resolvedPath))return t.affectedFilesIndex=o,s(t,c,r,n),c;o++}t.changedFilesSet.delete(t.currentChangedFilePath),t.currentChangedFilePath=void 0,e.BuilderState.updateSignaturesFromCache(t,t.currentAffectedFilesSignatures),t.currentAffectedFilesSignatures.clear(),e.BuilderState.updateExportedFilesMapFromCache(t,t.currentAffectedFilesExportedModulesMap),t.affectedFiles=void 0}var l=t.changedFilesSet.keys().next();if(l.done)return;var u=e.Debug.checkDefined(t.program),d=u.getCompilerOptions();if(e.outFile(d))return e.Debug.assert(!t.semanticDiagnosticsPerFile),u;t.currentAffectedFilesSignatures||(t.currentAffectedFilesSignatures=new e.Map),t.exportedModulesMap&&(t.currentAffectedFilesExportedModulesMap||(t.currentAffectedFilesExportedModulesMap=new e.Map)),t.affectedFiles=e.BuilderState.getFilesAffectedBy(t,u,l.value,r,n,t.currentAffectedFilesSignatures,t.currentAffectedFilesExportedModulesMap),t.currentChangedFilePath=l.value,t.affectedFilesIndex=0,t.seenAffectedFiles||(t.seenAffectedFiles=new e.Set)}}function s(t,r,n,i){if(c(t,r.resolvedPath),t.allFilesExcludingDefaultLibraryFile!==t.affectedFiles)t.compilerOptions.assumeChangesOnlyAffectDirectDependencies||function(t,r,n){if(!t.exportedModulesMap||!t.changedFilesSet.has(r.resolvedPath))return;if(!l(t,r.resolvedPath))return;if(t.compilerOptions.isolatedModules){var i=new e.Map;i.set(r.resolvedPath,!0);for(var a=e.BuilderState.getReferencedByPaths(t,r.resolvedPath);a.length>0;){var o=a.pop();if(!i.has(o))if(i.set(o,!0),n(t,o)&&l(t,o)){var s=e.Debug.checkDefined(t.program).getSourceFileByPath(o);a.push.apply(a,e.BuilderState.getReferencedByPaths(t,s.resolvedPath))}}}e.Debug.assert(!!t.currentAffectedFilesExportedModulesMap);var c=new e.Set;if(e.forEachEntry(t.currentAffectedFilesExportedModulesMap,(function(e,i){return e&&e.has(r.resolvedPath)&&u(t,i,c,n)})))return;e.forEachEntry(t.exportedModulesMap,(function(e,i){return!t.currentAffectedFilesExportedModulesMap.has(i)&&e.has(r.resolvedPath)&&u(t,i,c,n)}))}(t,r,(function(t,r){return function(t,r,n,i){if(c(t,r),!t.changedFilesSet.has(r)){var a=e.Debug.checkDefined(t.program),o=a.getSourceFileByPath(r);o&&(e.BuilderState.updateShapeSignature(t,a,o,e.Debug.checkDefined(t.currentAffectedFilesSignatures),n,i,t.currentAffectedFilesExportedModulesMap),e.getEmitDeclarations(t.compilerOptions)&&b(t,r,0))}return!1}(t,r,n,i)}));else if(!t.cleanedDiagnosticsOfLibFiles){t.cleanedDiagnosticsOfLibFiles=!0;var a=e.Debug.checkDefined(t.program),o=a.getCompilerOptions();e.forEach(a.getSourceFiles(),(function(r){return a.isSourceFileDefaultLibrary(r)&&!(e.skipTypeChecking(r,o,a)||r.isDeclarationFile&&o.needDoArkTsLinter)&&c(t,r.resolvedPath)}))}}function c(e,t){return!e.semanticDiagnosticsFromOldState||(e.semanticDiagnosticsFromOldState.delete(t),e.semanticDiagnosticsPerFile.delete(t),!e.semanticDiagnosticsFromOldState.size)}function l(t,r){return e.Debug.checkDefined(t.currentAffectedFilesSignatures).get(r)!==e.Debug.checkDefined(t.fileInfos.get(r)).signature}function u(t,r,n,i){return e.forEachEntry(t.referencedMap,(function(e,a){return e.has(r)&&d(t,a,n,i)}))}function d(t,r,n,i){return!!e.tryAddToSet(n,r)&&(!!i(t,r)||(e.Debug.assert(!!t.currentAffectedFilesExportedModulesMap),!!e.forEachEntry(t.currentAffectedFilesExportedModulesMap,(function(e,a){return e&&e.has(r)&&d(t,a,n,i)}))||(!!e.forEachEntry(t.exportedModulesMap,(function(e,a){return!t.currentAffectedFilesExportedModulesMap.has(a)&&e.has(r)&&d(t,a,n,i)}))||!!e.forEachEntry(t.referencedMap,(function(e,a){return e.has(r)&&!n.has(a)&&i(t,a)})))))}function p(t,r,n,i,a){a?t.buildInfoEmitPending=!1:r===t.program?(t.changedFilesSet.clear(),t.programEmitComplete=!0):(t.seenAffectedFiles.add(r.resolvedPath),void 0!==n&&(t.seenEmittedFiles||(t.seenEmittedFiles=new e.Map)).set(r.resolvedPath,n),i?(t.affectedFilesPendingEmitIndex++,t.buildInfoEmitPending=!0):t.affectedFilesIndex++)}function f(e,t,r){return p(e,r),{result:t,affected:r}}function m(e,t,r,n,i,a){return p(e,r,n,i,a),{result:t,affected:r}}function g(t,r,n){return e.concatenate(function(t,r,n){var i=r.resolvedPath;if(t.semanticDiagnosticsPerFile){var a=t.semanticDiagnosticsPerFile.get(i);if(a)return e.filterSemanticDiagnotics(a,t.compilerOptions)}var o=e.Debug.checkDefined(t.program).getBindAndCheckDiagnostics(r,n);t.semanticDiagnosticsPerFile&&t.semanticDiagnosticsPerFile.set(i,o);return e.filterSemanticDiagnotics(o,t.compilerOptions)}(t,r,n),e.Debug.checkDefined(t.program).getProgramDiagnostics(r))}function _(t,r){var n={},i=e.getOptionsNameMap().optionsNameMap;for(var a in t)e.hasProperty(t,a)&&(n[a]=h(i.get(a.toLowerCase()),t[a],r));return n.configFilePath&&(n.configFilePath=r(n.configFilePath)),n}function h(e,t,r){if(e)if("list"===e.type){var n=t;if(e.element.isFilePath&&n.length)return n.map(r)}else if(e.isFilePath)return r(t);return t}function y(t,r){return e.Debug.assert(!!t.length),t.map((function(e){var t=v(e,r);t.reportsUnnecessary=e.reportsUnnecessary,t.reportDeprecated=e.reportsDeprecated,t.source=e.source,t.skippedOn=e.skippedOn;var n=e.relatedInformation;return t.relatedInformation=n?n.length?n.map((function(e){return v(e,r)})):[]:void 0,t}))}function v(e,t){var r=e.file;return a(a({},e),{file:r?t(r.resolvedPath):void 0})}function b(t,r,n){t.affectedFilesPendingEmit||(t.affectedFilesPendingEmit=[]),t.affectedFilesPendingEmitKind||(t.affectedFilesPendingEmitKind=new e.Map);var i=t.affectedFilesPendingEmitKind.get(r);t.affectedFilesPendingEmit.push(r),t.affectedFilesPendingEmitKind.set(r,i||n),void 0===t.affectedFilesPendingEmitIndex&&(t.affectedFilesPendingEmitIndex=0)}function k(t,r){if(t){var n=new e.Map;for(var i in t)e.hasProperty(t,i)&&n.set(r(i),new e.Set(t[i].map(r)));return n}}function x(t,r){return{getState:e.notImplemented,backupState:e.noop,restoreState:e.noop,getProgram:n,getProgramOrUndefined:function(){return t.program},releaseProgram:function(){return t.program=void 0},getCompilerOptions:function(){return t.compilerOptions},getSourceFile:function(e){return n().getSourceFile(e)},getSourceFiles:function(){return n().getSourceFiles()},getOptionsDiagnostics:function(e){return n().getOptionsDiagnostics(e)},getGlobalDiagnostics:function(e){return n().getGlobalDiagnostics(e)},getConfigFileParsingDiagnostics:function(){return r},getSyntacticDiagnostics:function(e,t){return n().getSyntacticDiagnostics(e,t)},getDeclarationDiagnostics:function(e,t){return n().getDeclarationDiagnostics(e,t)},getSemanticDiagnostics:function(e,t){return n().getSemanticDiagnostics(e,t)},emit:function(e,t,r,i,a){return n().emit(e,t,r,i,a)},emitBuildInfo:function(e,t){return n().emitBuildInfo(e,t)},getAllDependencies:e.notImplemented,getCurrentDirectory:function(){return n().getCurrentDirectory()},close:e.noop};function n(){return e.Debug.checkDefined(t.program)}}!function(e){e[e.DtsOnly=0]="DtsOnly",e[e.Full=1]="Full"}(e.BuilderFileEmit||(e.BuilderFileEmit={})),function(e){e[e.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",e[e.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram"}(t=e.BuilderProgramKind||(e.BuilderProgramKind={})),e.getBuilderCreationParameters=function(t,r,n,i,a,o){var s,c,l;return void 0===t?(e.Debug.assert(void 0===r),s=n,l=i,e.Debug.assert(!!l),c=l.getProgram()):e.isArray(t)?(l=i,c=e.createProgram({rootNames:t,options:r,host:n,oldProgram:l&&l.getProgramOrUndefined(),configFileParsingDiagnostics:a,projectReferences:o}),s=n):(c=t,s=r,l=n,a=i),{host:s,newProgram:c,oldProgram:l,configFileParsingDiagnostics:a||e.emptyArray}},e.createBuilderProgram=function(n,a){var s=a.newProgram,c=a.host,l=a.oldProgram,u=a.configFileParsingDiagnostics,d=l&&l.getState();if(d&&s===d.program&&u===s.getConfigFileParsingDiagnostics())return s=void 0,d=void 0,l;var h,v=e.createGetCanonicalFileName(c.useCaseSensitiveFileNames()),k=e.maybeBind(c,c.createHash),S=r(s,v,d);s.getProgramBuildInfo=function(){return function(t,r){if(!e.outFile(t.compilerOptions)){var n=e.Debug.checkDefined(t.program).getCurrentDirectory(),i=e.getDirectoryPath(e.getNormalizedAbsolutePath(e.getTsBuildInfoEmitOutputFilePath(t.compilerOptions),n)),a={};t.fileInfos.forEach((function(e,r){var n=t.currentAffectedFilesSignatures&&t.currentAffectedFilesSignatures.get(r);a[E(r)]=void 0===n?e:{version:e.version,signature:n,affectsGlobalScope:e.affectsGlobalScope}}));var o={fileInfos:a,options:_(t.compilerOptions,(function(t){return E(e.getNormalizedAbsolutePath(t,n))}))};if(t.referencedMap){for(var s={},c=0,l=e.arrayFrom(t.referencedMap.keys()).sort(e.compareStringsCaseSensitive);c<l.length;c++)s[E(f=l[c])]=e.arrayFrom(t.referencedMap.get(f).keys(),E).sort(e.compareStringsCaseSensitive);o.referencedMap=s}if(t.exportedModulesMap){for(var u={},d=0,p=e.arrayFrom(t.exportedModulesMap.keys()).sort(e.compareStringsCaseSensitive);d<p.length;d++){var f=p[d],m=t.currentAffectedFilesExportedModulesMap&&t.currentAffectedFilesExportedModulesMap.get(f);void 0===m?u[E(f)]=e.arrayFrom(t.exportedModulesMap.get(f).keys(),E).sort(e.compareStringsCaseSensitive):m&&(u[E(f)]=e.arrayFrom(m.keys(),E).sort(e.compareStringsCaseSensitive))}o.exportedModulesMap=u}if(t.semanticDiagnosticsPerFile){for(var g=[],h=0,v=e.arrayFrom(t.semanticDiagnosticsPerFile.keys()).sort(e.compareStringsCaseSensitive);h<v.length;h++){f=v[h];var b=t.semanticDiagnosticsPerFile.get(f);g.push(b.length?[E(f),t.hasReusableDiagnostic?b:y(b,E)]:E(f))}o.semanticDiagnosticsPerFile=g}if(t.affectedFilesPendingEmit){for(var k=[],x=new e.Set,S=0,w=t.affectedFilesPendingEmit.slice(t.affectedFilesPendingEmitIndex).sort(e.compareStringsCaseSensitive);S<w.length;S++){var D=w[S];e.tryAddToSet(x,D)&&k.push([E(D),t.affectedFilesPendingEmitKind.get(D)])}o.affectedFilesPendingEmit=k}return o}function E(t){return e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(i,t,r))}}(S,v)},s=void 0,l=void 0,d=void 0;var w=x(S,u);return w.getState=function(){return S},w.backupState=function(){e.Debug.assert(void 0===h),h=function(t){var r=e.BuilderState.clone(t);return r.semanticDiagnosticsPerFile=t.semanticDiagnosticsPerFile&&new e.Map(t.semanticDiagnosticsPerFile),r.changedFilesSet=new e.Set(t.changedFilesSet),r.affectedFiles=t.affectedFiles,r.affectedFilesIndex=t.affectedFilesIndex,r.currentChangedFilePath=t.currentChangedFilePath,r.currentAffectedFilesSignatures=t.currentAffectedFilesSignatures&&new e.Map(t.currentAffectedFilesSignatures),r.currentAffectedFilesExportedModulesMap=t.currentAffectedFilesExportedModulesMap&&new e.Map(t.currentAffectedFilesExportedModulesMap),r.seenAffectedFiles=t.seenAffectedFiles&&new e.Set(t.seenAffectedFiles),r.cleanedDiagnosticsOfLibFiles=t.cleanedDiagnosticsOfLibFiles,r.semanticDiagnosticsFromOldState=t.semanticDiagnosticsFromOldState&&new e.Set(t.semanticDiagnosticsFromOldState),r.program=t.program,r.compilerOptions=t.compilerOptions,r.affectedFilesPendingEmit=t.affectedFilesPendingEmit&&t.affectedFilesPendingEmit.slice(),r.affectedFilesPendingEmitKind=t.affectedFilesPendingEmitKind&&new e.Map(t.affectedFilesPendingEmitKind),r.affectedFilesPendingEmitIndex=t.affectedFilesPendingEmitIndex,r.seenEmittedFiles=t.seenEmittedFiles&&new e.Map(t.seenEmittedFiles),r.programEmitComplete=t.programEmitComplete,r}(S)},w.restoreState=function(){S=e.Debug.checkDefined(h),h=void 0},w.getAllDependencies=function(t){return e.BuilderState.getAllDependencies(S,e.Debug.checkDefined(S.program),t)},w.getSemanticDiagnostics=function(t,r){i(S,t);var n,a=e.Debug.checkDefined(S.program).getCompilerOptions();if(e.outFile(a))return e.Debug.assert(!S.semanticDiagnosticsPerFile),e.Debug.checkDefined(S.program).getSemanticDiagnostics(t,r);if(t)return g(S,t,r);for(;E(r););for(var o=0,s=e.Debug.checkDefined(S.program).getSourceFiles();o<s.length;o++){var c=s[o];n=e.addRange(n,g(S,c,r))}return n||e.emptyArray},w.emit=function(r,a,o,s,l){var u,d,p,f=!1;n===t.EmitAndSemanticDiagnosticsBuilderProgram||r||e.outFile(S.compilerOptions)||S.compilerOptions.noEmit||!S.compilerOptions.noEmitOnError||(f=!0,u=S.affectedFilesPendingEmit&&S.affectedFilesPendingEmit.slice(),d=S.affectedFilesPendingEmitKind&&new e.Map(S.affectedFilesPendingEmitKind),p=S.affectedFilesPendingEmitIndex);n===t.EmitAndSemanticDiagnosticsBuilderProgram&&i(S,r);var m=e.handleNoEmitOptions(w,r,a,o);if(m)return m;f&&(S.affectedFilesPendingEmit=u,S.affectedFilesPendingEmitKind=d,S.affectedFilesPendingEmitIndex=p);if(!r&&n===t.EmitAndSemanticDiagnosticsBuilderProgram){for(var g=[],_=!1,h=void 0,y=[],v=void 0;v=D(a,o,s,l);)_=_||v.result.emitSkipped,h=e.addRange(h,v.result.diagnostics),y=e.addRange(y,v.result.emittedFiles),g=e.addRange(g,v.result.sourceMaps);return{emitSkipped:_,diagnostics:h||e.emptyArray,emittedFiles:y,sourceMaps:g}}return e.Debug.checkDefined(S.program).emit(r,a||e.maybeBind(c,c.writeFile),o,s,l)},w.releaseProgram=function(){!function(t){e.BuilderState.releaseCache(t),t.program=void 0}(S),h=void 0},n===t.SemanticDiagnosticsBuilderProgram?w.getSemanticDiagnosticsOfNextAffectedFile=E:n===t.EmitAndSemanticDiagnosticsBuilderProgram?(w.getSemanticDiagnosticsOfNextAffectedFile=E,w.emitNextAffectedFile=D,w.emitBuildInfo=function(t,r){if(S.buildInfoEmitPending){var n=e.Debug.checkDefined(S.program).emitBuildInfo(t||e.maybeBind(c,c.writeFile),r);return S.buildInfoEmitPending=!1,n}return e.emitSkippedWithNoDiagnostics}):e.notImplemented(),w;function D(t,r,n,i){var a=o(S,r,k),s=1,l=!1;if(!a)if(e.outFile(S.compilerOptions)){var u=e.Debug.checkDefined(S.program);if(S.programEmitComplete)return;a=u}else{var d=function(t){var r=t.affectedFilesPendingEmit;if(r){for(var n=t.seenEmittedFiles||(t.seenEmittedFiles=new e.Map),i=t.affectedFilesPendingEmitIndex;i<r.length;i++){var a=e.Debug.checkDefined(t.program).getSourceFileByPath(r[i]);if(a){var o=n.get(a.resolvedPath),s=e.Debug.checkDefined(e.Debug.checkDefined(t.affectedFilesPendingEmitKind).get(a.resolvedPath));if(void 0===o||o<s)return t.affectedFilesPendingEmitIndex=i,{affectedFile:a,emitKind:s}}}t.affectedFilesPendingEmit=void 0,t.affectedFilesPendingEmitKind=void 0,t.affectedFilesPendingEmitIndex=void 0}}(S);if(!d){if(!S.buildInfoEmitPending)return;var p=e.Debug.checkDefined(S.program);return m(S,p.emitBuildInfo(t||e.maybeBind(c,c.writeFile),r),p,1,!1,!0)}a=d.affectedFile,s=d.emitKind,l=!0}return m(S,e.Debug.checkDefined(S.program).emit(a===S.program?void 0:a,t||e.maybeBind(c,c.writeFile),r,n||0===s,i),a,s,l)}function E(e,r){for(;;){var i=o(S,e,k);if(!i)return;if(i===S.program)return f(S,S.program.getSemanticDiagnostics(void 0,e),i);if((n===t.EmitAndSemanticDiagnosticsBuilderProgram||S.compilerOptions.noEmit||S.compilerOptions.noEmitOnError)&&b(S,i.resolvedPath,1),!r||!r(i))return f(S,g(S,i,e),i);p(S,i)}}},e.createBuildProgramUsingProgramBuildInfo=function(t,r,n){var i=e.getDirectoryPath(e.getNormalizedAbsolutePath(r,n.getCurrentDirectory())),a=e.createGetCanonicalFileName(n.useCaseSensitiveFileNames()),o=new e.Map;for(var s in t.fileInfos)e.hasProperty(t.fileInfos,s)&&o.set(l(s),t.fileInfos[s]);var c={fileInfos:o,compilerOptions:e.convertToOptionsWithAbsolutePaths(t.options,(function(t){return e.getNormalizedAbsolutePath(t,i)})),referencedMap:k(t.referencedMap,l),exportedModulesMap:k(t.exportedModulesMap,l),semanticDiagnosticsPerFile:t.semanticDiagnosticsPerFile&&e.arrayToMap(t.semanticDiagnosticsPerFile,(function(t){return l(e.isString(t)?t:t[0])}),(function(t){return e.isString(t)?e.emptyArray:t[1]})),hasReusableDiagnostic:!0,affectedFilesPendingEmit:e.map(t.affectedFilesPendingEmit,(function(e){return l(e[0])})),affectedFilesPendingEmitKind:t.affectedFilesPendingEmit&&e.arrayToMap(t.affectedFilesPendingEmit,(function(e){return l(e[0])}),(function(e){return e[1]})),affectedFilesPendingEmitIndex:t.affectedFilesPendingEmit&&0};return{getState:function(){return c},backupState:e.noop,restoreState:e.noop,getProgram:e.notImplemented,getProgramOrUndefined:e.returnUndefined,releaseProgram:e.noop,getCompilerOptions:function(){return c.compilerOptions},getSourceFile:e.notImplemented,getSourceFiles:e.notImplemented,getOptionsDiagnostics:e.notImplemented,getGlobalDiagnostics:e.notImplemented,getConfigFileParsingDiagnostics:e.notImplemented,getSyntacticDiagnostics:e.notImplemented,getDeclarationDiagnostics:e.notImplemented,getSemanticDiagnostics:e.notImplemented,emit:e.notImplemented,getAllDependencies:e.notImplemented,getCurrentDirectory:e.notImplemented,emitNextAffectedFile:e.notImplemented,getSemanticDiagnosticsOfNextAffectedFile:e.notImplemented,emitBuildInfo:e.notImplemented,close:e.noop};function l(t){return e.toPath(t,i,a)}},e.createRedirectedBuilderProgram=x}(d||(d={})),function(e){e.createSemanticDiagnosticsBuilderProgram=function(t,r,n,i,a,o){return e.createBuilderProgram(e.BuilderProgramKind.SemanticDiagnosticsBuilderProgram,e.getBuilderCreationParameters(t,r,n,i,a,o))},e.createEmitAndSemanticDiagnosticsBuilderProgram=function(t,r,n,i,a,o){return e.createBuilderProgram(e.BuilderProgramKind.EmitAndSemanticDiagnosticsBuilderProgram,e.getBuilderCreationParameters(t,r,n,i,a,o))},e.createAbstractBuilder=function(t,r,n,i,a,o){var s=e.getBuilderCreationParameters(t,r,n,i,a,o),c=s.newProgram,l=s.configFileParsingDiagnostics;return e.createRedirectedBuilderProgram({program:c,compilerOptions:c.getCompilerOptions()},l)}}(d||(d={})),function(e){function t(t){return e.endsWith(t,"/node_modules/.staging")||e.endsWith(t,"/oh_modules/.staging")?e.removeSuffix(t,"/.staging"):e.some(e.ignoredPaths,(function(r){return e.stringContains(t,r)}))?void 0:t}function r(t){var r=e.getRootLength(t);if(t.length===r)return!1;var n=t.indexOf(e.directorySeparator,r);if(-1===n)return!1;var i=t.substring(r,n+1),a=r>1||47!==t.charCodeAt(0);if(a&&0!==t.search(/[a-zA-Z]:/)&&0===i.search(/[a-zA-z]\$\//)){if(-1===(n=t.indexOf(e.directorySeparator,n+1)))return!1;i=t.substring(r+i.length,n+1)}if(a&&0!==i.search(/users\//i))return!0;for(var o=n+1,s=2;s>0;s--)if(0===(o=t.indexOf(e.directorySeparator,o)+1))return!1;return!0}e.removeIgnoredPath=t,e.canWatchDirectory=r,e.createResolutionCache=function(n,i,a){var o,s,c,l=e.createMultiMap(),u=[],d=e.createMultiMap(),p=!1,f=[],m=[],g=[],_=e.memoize((function(){return n.getCurrentDirectory()})),h=n.getCachedDirectoryStructureHost(),y=new e.Map,v=e.createCacheWithRedirects(),b=e.createCacheWithRedirects(),k=e.createModuleResolutionCacheWithMaps(v,b,_(),n.getCanonicalFileName),x=new e.Map,S=e.createCacheWithRedirects(),w=n.getCompilationSettings().ets?[".ets",".ts",".tsx",".js",".jsx",".json"]:[".ts",".tsx",".js",".jsx",".json",".ets"],D=new e.Map,E=new e.Map,T=i&&e.removeTrailingDirectorySeparator(e.getNormalizedAbsolutePath(i,_())),C=T&&n.toPath(T),A=void 0!==C?C.split(e.directorySeparator).length:0,N=new e.Map;return{startRecordingFilesWithChangedResolutions:function(){o=[]},finishRecordingFilesWithChangedResolutions:function(){var e=o;return o=void 0,e},startCachingPerDirectoryResolution:R,finishCachingPerDirectoryResolution:function(){c=void 0,R(),E.forEach((function(e,t){0===e.refCount&&(E.delete(t),e.watcher.close())})),p=!1},resolveModuleNames:function(t,r,n,i){return L({names:t,containingFile:r,redirectedReference:i,cache:y,perDirectoryCacheWithRedirects:v,loader:M,getResolutionWithResolvedFileName:P,shouldRetryResolution:function(t){return!t.resolvedModule||!e.resolutionExtensionIsTSOrJson(t.resolvedModule.extension)},reusedNames:n,logChanges:a})},getResolvedModuleWithFailedLookupLocationsFromCache:function(e,t){var r=y.get(n.toPath(t));return r&&r.get(e)},resolveTypeReferenceDirectives:function(t,r,n){return L({names:t,containingFile:r,redirectedReference:n,cache:x,perDirectoryCacheWithRedirects:S,loader:e.resolveTypeReferenceDirective,getResolutionWithResolvedFileName:I,shouldRetryResolution:function(e){return void 0===e.resolvedTypeReferenceDirective}})},removeResolutionsFromProjectReferenceRedirects:function(t){if(!e.fileExtensionIs(t,".json"))return;var r=n.getCurrentProgram();if(!r)return;var i=r.getResolvedProjectReferenceByPath(t);if(!i)return;i.commandLine.fileNames.forEach((function(e){return X(n.toPath(e))}))},removeResolutionsOfFile:X,hasChangedAutomaticTypeDirectiveNames:function(){return p},invalidateResolutionOfFile:function(t){X(t);var r=p;Q(d.get(t),e.returnTrue)&&p&&!r&&n.onChangedAutomaticTypeDirectiveNames()},invalidateResolutionsOfFailedLookupLocations:ee,setFilesWithInvalidatedNonRelativeUnresolvedImports:function(t){e.Debug.assert(c===t||void 0===c),c=t},createHasInvalidatedResolution:function(t){if(ee(),t)return s=void 0,e.returnTrue;var r=s;return s=void 0,function(e){return!!r&&r.has(e)||O(e)}},isFileWithInvalidatedNonRelativeUnresolvedImports:O,updateTypeRootsWatch:function(){var t=n.getCompilationSettings();if(t.types)return void re();var r=e.getEffectiveTypeRoots(t,{directoryExists:ie,getCurrentDirectory:_});r?e.mutateMap(N,e.arrayToMap(r,(function(e){return n.toPath(e)})),{createNewValue:ne,onDeleteValue:e.closeFileWatcher}):re()},closeTypeRootsWatch:re,clear:function(){e.clearMap(E,e.closeFileWatcherOf),D.clear(),l.clear(),re(),y.clear(),x.clear(),d.clear(),u.length=0,f.length=0,m.length=0,g.length=0,R(),p=!1}};function P(e){return e.resolvedModule}function I(e){return e.resolvedTypeReferenceDirective}function F(t,r){return!(void 0===t||r.length<=t.length)&&(e.startsWith(r,t)&&r[t.length]===e.directorySeparator)}function O(e){if(!c)return!1;var t=c.get(e);return!!t&&!!t.length}function R(){v.clear(),b.clear(),S.clear(),l.forEach(H),l.clear()}function M(t,r,i,a,o){var s,c=e.resolveModuleName(t,r,i,a,k,o);if(!n.getGlobalCache)return c;var l=n.getGlobalCache();if(!(void 0===l||e.isExternalModuleNameRelative(t)||c.resolvedModule&&e.extensionIsTS(c.resolvedModule.extension))){var u=e.loadModuleFromGlobalCache(e.Debug.checkDefined(n.globalCacheResolutionModuleName)(t),n.projectName,i,a,l),d=u.resolvedModule,p=u.failedLookupLocations;if(d)return c.resolvedModule=d,(s=c.failedLookupLocations).push.apply(s,p),c}return c}function L(t){var r,i=t.names,a=t.containingFile,s=t.redirectedReference,c=t.cache,l=t.perDirectoryCacheWithRedirects,u=t.loader,d=t.getResolutionWithResolvedFileName,p=t.shouldRetryResolution,f=t.reusedNames,m=t.logChanges,g=n.toPath(a),_=c.get(g)||c.set(g,new e.Map).get(g),h=e.getDirectoryPath(g),y=l.getOrCreateMapOfCacheRedirects(s),v=y.get(h);v||(v=new e.Map,y.set(h,v));for(var b=[],k=n.getCompilationSettings(),x=m&&O(g),S=n.getCurrentProgram(),w=S&&S.getResolvedProjectReferenceToRedirect(a),D=w?!s||s.sourceFile.path!==w.sourceFile.path:!!s,E=new e.Map,T=0,C=i;T<C.length;T++){var A=C[T],N=_.get(A);if(!E.has(A)&&D||!N||N.isInvalidated||x&&!e.isExternalModuleNameRelative(A)&&p(N)){var P=N,I=v.get(A);I?N=I:(N=u(A,a,k,(null===(r=n.getCompilerHost)||void 0===r?void 0:r.call(n))||n,s),v.set(A,N)),_.set(A,N),J(A,N,g,d),P&&W(P,g,d),m&&o&&!F(P,N)&&(o.push(g),m=!1)}e.Debug.assert(void 0!==N&&!N.isInvalidated),E.set(A,!0),b.push(d(N))}return _.forEach((function(t,r){E.has(r)||e.contains(f,r)||(W(t,g,d),_.delete(r))})),b;function F(e,t){if(e===t)return!0;if(!e||!t)return!1;var r=d(e),n=d(t);return r===n||!(!r||!n)&&r.resolvedFileName===n.resolvedFileName}}function j(t){return e.endsWith(t,"/node_modules/@types")}function B(t){return e.endsWith(t,"/oh_modules/@types")}function z(t,r){if(F(C,r)){t=e.isRootedDiskPath(t)?e.normalizePath(t):e.getNormalizedAbsolutePath(t,_());var n=r.split(e.directorySeparator),i=t.split(e.directorySeparator);return e.Debug.assert(i.length===n.length,"FailedLookup: "+t+" failedLookupLocationPath: "+r),n.length>A+1?{dir:i.slice(0,A+1).join(e.directorySeparator),dirPath:n.slice(0,A+1).join(e.directorySeparator)}:{dir:T,dirPath:C,nonRecursive:!1}}return U(e.getDirectoryPath(e.getNormalizedAbsolutePath(t,_())),e.getDirectoryPath(r))}function U(t,i){for(var a=e.isOhpm(n.getCompilationSettings().packageManagerType);a?e.pathContainsOHModules(i):e.pathContainsNodeModules(i);)t=e.getDirectoryPath(t),i=e.getDirectoryPath(i);if(a?e.isOHModulesDirectory(i):e.isNodeModulesDirectory(i))return r(e.getDirectoryPath(i))?{dir:t,dirPath:i}:void 0;var o,s,c=!0;if(void 0!==C)for(;!F(i,C);){var l=e.getDirectoryPath(i);if(l===i)break;c=!1,o=i,s=t,i=l,t=e.getDirectoryPath(t)}return r(i)?{dir:s||t,dirPath:o||i,nonRecursive:c}:void 0}function q(t){return e.fileExtensionIsOneOf(t,w)}function J(t,r,i,a){if(r.refCount)r.refCount++,e.Debug.assertDefined(r.files);else{r.refCount=1,e.Debug.assert(0===e.length(r.files)),e.isExternalModuleNameRelative(t)?V(r):l.add(t,r);var o=a(r);o&&o.resolvedFileName&&d.add(n.toPath(o.resolvedFileName),r)}(r.files||(r.files=[])).push(i)}function V(t){e.Debug.assert(!!t.refCount);var r=t.failedLookupLocations;if(r.length){u.push(t);for(var i=!1,a=0,o=r;a<o.length;a++){var s=o[a],c=n.toPath(s),l=z(s,c);if(l){var d=l.dir,p=l.dirPath,f=l.nonRecursive;if(!q(c)){var m=D.get(c)||0;D.set(c,m+1)}p===C?(e.Debug.assert(!f),i=!0):K(d,p,f)}}i&&K(T,C,!0)}}function H(e,t){var r=n.getCurrentProgram();r&&r.getTypeChecker().tryFindAmbientModuleWithoutAugmentations(t)||e.forEach(V)}function K(t,r,n){var i=E.get(r);i?(e.Debug.assert(!!n==!!i.nonRecursive),i.refCount++):E.set(r,{watcher:$(t,r,n),refCount:1,nonRecursive:n})}function W(t,r,i){if(e.unorderedRemoveItem(e.Debug.assertDefined(t.files),r),t.refCount--,!t.refCount){var a=i(t);if(a&&a.resolvedFileName&&d.remove(n.toPath(a.resolvedFileName),t),e.unorderedRemoveItem(u,t)){for(var o=!1,s=0,c=t.failedLookupLocations;s<c.length;s++){var l=c[s],p=n.toPath(l),f=z(l,p);if(f){var m=f.dirPath,g=D.get(p);g&&(1===g?D.delete(p):(e.Debug.assert(g>1),D.set(p,g-1))),m===C?o=!0:G(m)}}o&&G(C)}}}function G(e){E.get(e).refCount--}function $(e,t,r){return n.watchDirectoryOfFailedLookupLocation(e,(function(e){var r=n.toPath(e);h&&h.addOrDeleteFileOrDirectory(e,r),Z(r,t===r)}),r?0:1)}function Y(e,t,r){var n=e.get(t);n&&(n.forEach((function(e){return W(e,t,r)})),e.delete(t))}function X(e){Y(y,e,P),Y(x,e,I)}function Q(t,r){if(!t)return!1;for(var n=!1,i=0,a=t;i<a.length;i++){var o=a[i];if(!o.isInvalidated&&r(o)){o.isInvalidated=n=!0;for(var c=0,l=e.Debug.assertDefined(o.files);c<l.length;c++){var u=l[c];(s||(s=new e.Set)).add(u),p=p||e.endsWith(u,e.inferredTypesContainingFile)}}}return n}function Z(r,i){if(i)g.push(r);else{var a=t(r);if(!a)return!1;if(r=a,n.fileIsOpen(r))return!1;var o=e.getDirectoryPath(r),s=e.isOhpm(n.getCompilationSettings().packageManagerType);if(j(r)||s&&B(r)||e.isNodeModulesDirectory(r)||j(o)||s&&B(o)||e.isNodeModulesDirectory(o))f.push(r),m.push(r);else{if(!q(r)&&!D.has(r))return!1;if(e.isEmittedFileOfProgram(n.getCurrentProgram(),r))return!1;f.push(r)}}n.scheduleInvalidateResolutionsOfFailedLookupLocations()}function ee(){if(!f.length&&!m.length&&!g.length)return!1;var e=Q(u,te);return f.length=0,m.length=0,g.length=0,e}function te(t){return t.failedLookupLocations.some((function(t){var r=n.toPath(t);return e.contains(f,r)||m.some((function(t){return e.startsWith(r,t)}))||g.some((function(e){return F(e,r)}))}))}function re(){e.clearMap(N,e.closeFileWatcher)}function ne(e,t){return n.watchTypeRootsDirectory(t,(function(r){var i=n.toPath(r);h&&h.addOrDeleteFileOrDirectory(r,i),p=!0,n.onChangedAutomaticTypeDirectiveNames();var a=function(e,t){if(F(C,t))return C;var r=U(e,t);return r&&E.has(r.dirPath)?r.dirPath:void 0}(t,e);a&&Z(i,a===i)}),1)}function ie(t){var i=e.getDirectoryPath(e.getDirectoryPath(t)),a=n.toPath(i);return a===C||r(a)}}}(d||(d={})),function(e){!function(t){var r,n;function a(t,r,n){var i=t.importModuleSpecifierPreference,a=t.importModuleSpecifierEnding;return{relativePreference:"relative"===i?0:"non-relative"===i?1:"project-relative"===i?3:2,ending:function(){switch(a){case"minimal":return 0;case"index":return 1;case"js":return 2;default:return function(t){var r=t.imports;return e.firstDefined(r,(function(t){var r=t.text;return e.pathIsRelative(r)?e.hasJSFileExtension(r):void 0}))||!1}(n)?2:e.getEmitModuleResolutionKind(r)!==e.ModuleResolutionKind.NodeJs?1:0}}()}}function o(t,r,n,i,a){var o=s(r,i),l=m(r,n,i,t.packageManagerType);return e.firstDefined(l,(function(e){return _(e,o,i,t)}))||c(n,o,t,i,a)}function s(t,r){return{getCanonicalFileName:e.createGetCanonicalFileName(!r.useCaseSensitiveFileNames||r.useCaseSensitiveFileNames()),importingSourceFileName:t,sourceDirectory:e.getDirectoryPath(t)}}function c(t,r,n,i,a){var o=a.ending,s=a.relativePreference,c=n.baseUrl,u=n.paths,d=n.rootDirs,f=r.sourceDirectory,m=r.getCanonicalFileName,_=d&&function(t,r,n,i,a,o){var s=h(r,t,i);if(void 0===s)return;var c=h(n,t,i),l=void 0!==c?e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(c,s,i)):s;return e.getEmitModuleResolutionKind(o)===e.ModuleResolutionKind.NodeJs?y(l,a,o):e.removeFileExtension(l)}(d,t,f,m,o,n)||y(e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(f,t,m)),o,n);if(!c&&!u||0===s)return _;var k=v(t,e.getPathsBasePath(n,i)||c,m);if(!k)return _;var x=y(k,o,n),S=u&&g(e.removeFileExtension(k),x,u),w=void 0===S&&void 0!==c?x:S;if(!w)return _;if(1===s)return w;if(3===s){var D=i.getCurrentDirectory(),E=e.toPath(t,D,m),T=e.startsWith(f,D),C=e.startsWith(E,D);if(T&&!C||!T&&C)return w;var A=n.packageManagerType,N=p(i,e.getDirectoryPath(E),A);return p(i,f,A)!==N?w:_}return 2!==s&&e.Debug.assertNever(s),b(w)||l(_)<l(w)?_:w}function l(t){for(var r=0,n=e.startsWith(t,"./")?2:0;n<t.length;n++)47===t.charCodeAt(n)&&r++;return r}function d(t,r){return e.compareBooleans(r.isRedirect,t.isRedirect)||e.compareNumberOfDirectorySeparators(t.path,r.path)}function p(t,r,n){return t.getNearestAncestorDirectoryWithPackageJson?t.getNearestAncestorDirectoryWithPackageJson(r):!!e.forEachAncestorDirectory(r,(function(r){return!!t.fileExists(e.combinePaths(r,e.getPackageJsonByPMType(n)))||void 0}))}function f(t,r,n,a,o,s){var c=e.hostGetCanonicalFileName(n),l=n.getCurrentDirectory(),u=n.isSourceOfProjectReferenceRedirect(r)?n.getProjectReferenceRedirect(r):void 0,d=e.toPath(r,l,c),p=n.redirectTargetsMap.get(d)||e.emptyArray,f=i(i(i([],u?[u]:e.emptyArray),[r]),p).map((function(t){return e.getNormalizedAbsolutePath(t,l)})),m=!e.every(f,e.containsIgnoredPath);if(!a){var g=e.forEach(f,(function(t){return!(m&&e.containsIgnoredPath(t))&&o(t,u===t)}));if(g)return g}var _=(n.getSymlinkCache?n.getSymlinkCache():e.discoverProbableSymlinks(n.getSourceFiles(),c,l,s)).getSymlinkedDirectoriesByRealpath(),h=e.getNormalizedAbsolutePath(r,l);return _&&e.forEachAncestorDirectory(e.getDirectoryPath(h),(function(r){var n=_.get(e.ensureTrailingDirectorySeparator(e.toPath(r,l,c)));if(n)return!e.startsWithDirectory(t,r,c)&&e.forEach(f,(function(t){if(e.startsWithDirectory(t,r,c))for(var i=e.getRelativePathFromDirectory(r,t,c),a=0,s=n;a<s.length;a++){var l=s[a],d=e.resolvePath(l,i),p=o(d,t===u);if(m=!0,p)return p}}))}))||(a?e.forEach(f,(function(t){return m&&e.containsIgnoredPath(t)?void 0:o(t,t===u)})):void 0)}function m(t,r,n,i){var a=n.getCurrentDirectory(),o=e.hostGetCanonicalFileName(n),s=new e.Map,c=!1;f(t,r,n,!0,(function(t,r){var n=e.isOhpm(i)?e.pathContainsOHModules(t):e.pathContainsNodeModules(t);s.set(t,{path:o(t),isRedirect:r,isInNodeModules:n}),c=c||n}),e.isOhpm(i));for(var l,u=[],p=function(t){var r,n=e.ensureTrailingDirectorySeparator(t);s.forEach((function(t,i){var a=t.path,o=t.isRedirect,c=t.isInNodeModules;e.startsWith(a,n)&&((r||(r=[])).push({path:i,isRedirect:o,isInNodeModules:c}),s.delete(i))})),r&&(r.length>1&&r.sort(d),u.push.apply(u,r));var i=e.getDirectoryPath(t);if(i===t)return l=t,"break";l=t=i},m=e.getDirectoryPath(e.toPath(t,a,o));0!==s.size;){var g=p(m);if(m=l,"break"===g)break}if(s.size){var _=e.arrayFrom(s.values());_.length>1&&_.sort(d),u.push.apply(u,_)}return u}function g(t,r,n){for(var i in n)for(var a=0,o=n[i];a<o.length;a++){var s=o[a],c=e.removeFileExtension(e.normalizePath(s)),l=c.indexOf("*");if(-1!==l){var u=c.substr(0,l),d=c.substr(l+1);if(r.length>=u.length+d.length&&e.startsWith(r,u)&&e.endsWith(r,d)||!d&&r===e.removeTrailingDirectorySeparator(u)){var p=r.substr(u.length,r.length-d.length);return i.replace("*",p)}}else if(c===r||c===t)return i}}function _(t,r,n,i,a){var o=t.path,s=t.isRedirect,c=r.getCanonicalFileName,l=r.sourceDirectory;if(n.fileExists&&n.readFile){var d=function(e,t){var r,n=0,i=0,a=0,o=0;!function(e){e[e.BeforeNodeModules=0]="BeforeNodeModules",e[e.NodeModules=1]="NodeModules",e[e.Scope=2]="Scope",e[e.PackageContent=3]="PackageContent"}(r||(r={}));var s=0,c=0,l=0;for(;c>=0;)switch(s=c,c=e.indexOf("/",s+1),l){case 0:e.indexOf(t,s)===s&&(n=s,i=c,l=1);break;case 1:case 2:1===l&&"@"===e.charAt(s+1)?l=2:(a=c,l=3);break;case 3:l=e.indexOf(t,s)===s?1:3}return o=s,l>1?{topLevelNodeModulesIndex:n,topLevelPackageNameIndex:i,packageRootIndex:a,fileNameIndex:o}:void 0}(o,e.isOhpm(i.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart);if(d){var p=o,f=!1;if(!a)for(var m=d.packageRootIndex,_=void 0;;){var h=D(m),v=h.moduleFileToTry,b=h.packageRootPath;if(b){p=b,f=!0;break}if(_||(_=v),-1===(m=o.indexOf(e.directorySeparator,m+1))){p=E(_);break}}if(!s||f){var k=n.getGlobalTypingsCacheLocation&&n.getGlobalTypingsCacheLocation(),x=c(p.substring(0,d.topLevelNodeModulesIndex));if(e.startsWith(l,x)||k&&e.startsWith(c(k),x)){var S=p.substring(d.topLevelPackageNameIndex+1),w=e.getPackageNameFromTypesPackageName(S);return e.getEmitModuleResolutionKind(i)!==e.ModuleResolutionKind.NodeJs&&w===S?void 0:w}}}}function D(t){var r=o.substring(0,t),a=e.combinePaths(r,e.getPackageJsonByPMType(i.packageManagerType)),s=o;if(n.fileExists(a)){var l=e.isOhpm(i.packageManagerType)?u.parse(n.readFile(a)):JSON.parse(n.readFile(a)),d=l.typesVersions?e.getPackageJsonTypesVersionsPaths(l.typesVersions):void 0;if(d){var p=o.slice(r.length+1),f=g(e.removeFileExtension(p),y(p,0,i),d.paths);void 0!==f&&(s=e.combinePaths(r,f))}var m=l.typings||l.types||l.main;if(e.isString(m)){var _=e.toPath(m,r,c);if(e.removeFileExtension(_)===e.removeFileExtension(c(s)))return{packageRootPath:r,moduleFileToTry:s}}}return{moduleFileToTry:s}}function E(t){var r=e.removeFileExtension(t);return"/index"!==c(r.substring(d.fileNameIndex))||function(t,r){if(!t.fileExists)return;for(var n=e.getSupportedExtensions({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]),i=0,a=n;i<a.length;i++){var o=r+a[i];if(t.fileExists(o))return o}}(n,r.substring(0,d.fileNameIndex))?r:r.substring(0,d.fileNameIndex)}}function h(t,r,n){return e.firstDefined(r,(function(e){var r=v(t,e,n);return b(r)?void 0:r}))}function y(t,r,n){if(e.fileExtensionIs(t,".json"))return t;var i=e.removeFileExtension(t);switch(r){case 0:return e.removeSuffix(i,"/index");case 1:return i;case 2:return i+function(t,r){var n=e.extensionFromPath(t);switch(n){case".ts":case".d.ts":case".ets":case".d.ets":return".js";case".tsx":return 1===r.jsx?".jsx":".js";case".js":case".jsx":case".json":return n;case".tsbuildinfo":return e.Debug.fail("Extension .tsbuildinfo is unsupported:: FileName:: "+t);default:return e.Debug.assertNever(n)}}(t,n);default:return e.Debug.assertNever(r)}}function v(t,r,n){var i=e.getRelativePathToDirectoryOrUrl(r,t,r,n,!1);return e.isRootedDiskPath(i)?void 0:i}function b(t){return e.startsWith(t,"..")}!function(e){e[e.Relative=0]="Relative",e[e.NonRelative=1]="NonRelative",e[e.Shortest=2]="Shortest",e[e.ExternalNonRelative=3]="ExternalNonRelative"}(r||(r={})),function(e){e[e.Minimal=0]="Minimal",e[e.Index=1]="Index",e[e.JsExtension=2]="JsExtension"}(n||(n={})),t.updateModuleSpecifier=function(t,r,n,i,a){var s=o(t,r,n,i,function(t,r){return{relativePreference:e.isExternalModuleNameRelative(r)?0:1,ending:e.hasJSFileExtension(r)?2:e.getEmitModuleResolutionKind(t)!==e.ModuleResolutionKind.NodeJs||e.endsWith(r,"index")?1:0}}(t,a));if(s!==a)return s},t.getModuleSpecifier=function(e,t,r,n,i,s){return void 0===s&&(s={}),o(e,r,n,i,a(s,e,t))},t.getModulesPackageName=function(t,r,n,i){var a=s(r,i),o=m(r,n,i,t.packageManagerType);return e.firstDefined(o,(function(e){return _(e,a,i,t,!0)}))},t.getModuleSpecifiers=function(t,r,n,i,o,l){var u=function(t,r){var n=e.find(t.declarations,(function(t){return e.isNonGlobalAmbientModule(t)&&(!e.isExternalModuleAugmentation(t)||!e.isExternalModuleNameRelative(e.getTextOfIdentifierOrLiteral(t.name)))}));if(n)return n.name.text;var i=e.mapDefined(t.declarations,(function(t){var n,i,a,o;if(e.isModuleDeclaration(t)){var s=u(t);if((null===(n=null==s?void 0:s.parent)||void 0===n?void 0:n.parent)&&e.isModuleBlock(s.parent)&&e.isAmbientModule(s.parent.parent)&&e.isSourceFile(s.parent.parent.parent)){var c=null===(o=null===(a=null===(i=s.parent.parent.symbol.exports)||void 0===i?void 0:i.get("export="))||void 0===a?void 0:a.valueDeclaration)||void 0===o?void 0:o.expression;if(c){var l=r.getSymbolAtLocation(c);if(l)if((2097152&(null==l?void 0:l.flags)?r.getAliasedSymbol(l):l)===t.symbol)return s.parent.parent}}}function u(e){for(;4&e.flags;)e=e.parent;return e}})),a=i[0];if(a)return a.name.text}(t,r);if(u)return[u];var d=s(i.path,o),p=e.getSourceFileOfNode(t.valueDeclaration||e.getNonAugmentationDeclaration(t)),f=m(i.path,p.originalFileName,o,n.packageManagerType),g=a(l,n,i),h=e.forEach(f,(function(t){return e.forEach(o.getFileIncludeReasons().get(e.toPath(t.path,o.getCurrentDirectory(),d.getCanonicalFileName)),(function(t){if(t.kind===e.FileIncludeKind.Import&&t.file===i.path){var r=e.getModuleNameStringLiteralAt(i,t.index).text;return 1===g.relativePreference&&e.pathIsRelative(r)?void 0:r}}))}));if(h)return[h];for(var y,v,b,k=e.some(f,(function(e){return e.isInNodeModules})),x=0,S=f;x<S.length;x++){var w=S[x],D=_(w,d,o,n);if(y=e.append(y,D),D&&w.isRedirect)return y;if(!D&&!w.isRedirect){var E=c(w.path,d,n,o,g);e.pathIsBareSpecifier(E)?v=e.append(v,E):k&&!w.isInNodeModules||(b=e.append(b,E))}}return(null==v?void 0:v.length)?v:(null==y?void 0:y.length)?y:e.Debug.checkDefined(b)},t.countPathComponents=l,t.forEachFileNameOfModule=f}(e.moduleSpecifiers||(e.moduleSpecifiers={}))}(d||(d={})),function(e){var t=e.sys?{getCurrentDirectory:function(){return e.sys.getCurrentDirectory()},getNewLine:function(){return e.sys.newLine},getCanonicalFileName:e.createGetCanonicalFileName(e.sys.useCaseSensitiveFileNames)}:void 0;function r(r,n){var i=r===e.sys?t:{getCurrentDirectory:function(){return r.getCurrentDirectory()},getNewLine:function(){return r.newLine},getCanonicalFileName:e.createGetCanonicalFileName(r.useCaseSensitiveFileNames)};if(!n)return function(t){return r.write(e.formatDiagnostic(t,i))};var a=new Array(1);return function(t){a[0]=t,r.write(e.formatDiagnosticsWithColorAndContext(a,i)+i.getNewLine()),a[0]=void 0}}function n(t,r,n){return!(!t.clearScreen||n.preserveWatchOutput||n.extendedDiagnostics||n.diagnostics||!e.contains(e.screenStartingMessageCodes,r.code))&&(t.clearScreen(),!0)}function a(e){return e.now?e.now().toLocaleTimeString("en-US",{timeZone:"UTC"}):(new Date).toLocaleTimeString()}function o(t,r){return r?function(r,i,o){n(t,r,o);var s="["+e.formatColorAndReset(a(t),e.ForegroundColorEscapeSequences.Grey)+"] ";s+=""+e.flattenDiagnosticMessageText(r.messageText,t.newLine)+(i+i),t.write(s)}:function(r,i,o){var s="";n(t,r,o)||(s+=i),s+=a(t)+" - ",s+=""+e.flattenDiagnosticMessageText(r.messageText,t.newLine)+function(t,r){return e.contains(e.screenStartingMessageCodes,t.code)?r+r:r}(r,i),t.write(s)}}function s(t){return e.countWhere(t,(function(t){return t.category===e.DiagnosticCategory.Error}))}function c(t){return 1===t?e.Diagnostics.Found_1_error_Watching_for_file_changes:e.Diagnostics.Found_0_errors_Watching_for_file_changes}function l(t,r){if(0===t)return"";var n=e.createCompilerDiagnostic(1===t?e.Diagnostics.Found_1_error:e.Diagnostics.Found_0_errors,t);return""+r+e.flattenDiagnosticMessageText(n.messageText,r)+r+r}function u(e){return!!e.getState}function d(t,r){var n=t.getCompilerOptions();n.explainFiles?p(u(t)?t.getProgram():t,r):(n.listFiles||n.listFilesOnly)&&e.forEach(t.getSourceFiles(),(function(e){r(e.fileName)}))}function p(t,r){for(var n,i,a=t.getFileIncludeReasons(),o=e.createGetCanonicalFileName(t.useCaseSensitiveFileNames()),s=function(r){return e.convertToRelativePath(r,t.getCurrentDirectory(),o)},c=0,l=t.getSourceFiles();c<l.length;c++){var u=l[c];r(""+h(u,s)),null===(n=a.get(u.path))||void 0===n||n.forEach((function(e){return r(" "+_(t,e,s).messageText)})),null===(i=f(u,s))||void 0===i||i.forEach((function(e){return r(" "+e.messageText)}))}}function f(t,r){var n;return t.path!==t.resolvedPath&&(n||(n=[])).push(e.chainDiagnosticMessages(void 0,e.Diagnostics.File_is_output_of_project_reference_source_0,h(t.originalFileName,r))),t.redirectInfo&&(n||(n=[])).push(e.chainDiagnosticMessages(void 0,e.Diagnostics.File_redirects_to_file_0,h(t.redirectInfo.redirectTarget,r))),n}function m(t,r){var n,i=t.getCompilerOptions().configFile;if(null===(n=null==i?void 0:i.configFileSpecs)||void 0===n?void 0:n.validatedFilesSpec){var a=e.createGetCanonicalFileName(t.useCaseSensitiveFileNames()),o=a(r),s=e.getDirectoryPath(e.getNormalizedAbsolutePath(i.fileName,t.getCurrentDirectory()));return e.find(i.configFileSpecs.validatedFilesSpec,(function(t){return a(e.getNormalizedAbsolutePath(t,s))===o}))}}function g(t,r){var n,i,a=t.getCompilerOptions().configFile;if(null===(n=null==a?void 0:a.configFileSpecs)||void 0===n?void 0:n.validatedIncludeSpecs){var o=e.fileExtensionIs(r,".json"),s=e.getDirectoryPath(e.getNormalizedAbsolutePath(a.fileName,t.getCurrentDirectory())),c=t.useCaseSensitiveFileNames();return e.find(null===(i=null==a?void 0:a.configFileSpecs)||void 0===i?void 0:i.validatedIncludeSpecs,(function(t){if(o&&!e.endsWith(t,".json"))return!1;var n=e.getPatternFromSpec(t,s,"files");return!!n&&e.getRegexFromPattern("("+n+")$",c).test(r)}))}}function _(t,r,n){var i,a,o=t.getCompilerOptions();if(e.isReferencedFile(r)){var s=e.getReferencedFileLocation((function(e){return t.getSourceFileByPath(e)}),r),c=e.isReferenceFileLocation(s)?s.file.text.substring(s.pos,s.end):'"'+s.text+'"',l=void 0;switch(e.Debug.assert(e.isReferenceFileLocation(s)||r.kind===e.FileIncludeKind.Import,"Only synthetic references are imports"),r.kind){case e.FileIncludeKind.Import:l=e.isReferenceFileLocation(s)?s.packageId?e.Diagnostics.Imported_via_0_from_file_1_with_packageId_2:e.Diagnostics.Imported_via_0_from_file_1:s.text===e.externalHelpersModuleNameText?s.packageId?e.Diagnostics.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:e.Diagnostics.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:s.packageId?e.Diagnostics.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:e.Diagnostics.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case e.FileIncludeKind.ReferenceFile:e.Debug.assert(!s.packageId),l=e.Diagnostics.Referenced_via_0_from_file_1;break;case e.FileIncludeKind.TypeReferenceDirective:l=s.packageId?e.Diagnostics.Type_library_referenced_via_0_from_file_1_with_packageId_2:e.Diagnostics.Type_library_referenced_via_0_from_file_1;break;case e.FileIncludeKind.LibReferenceDirective:e.Debug.assert(!s.packageId),l=e.Diagnostics.Library_referenced_via_0_from_file_1;break;default:e.Debug.assertNever(r)}return e.chainDiagnosticMessages(void 0,l,c,h(s.file,n),s.packageId&&e.packageIdToString(s.packageId))}switch(r.kind){case e.FileIncludeKind.RootFile:if(!(null===(i=o.configFile)||void 0===i?void 0:i.configFileSpecs))return e.chainDiagnosticMessages(void 0,e.Diagnostics.Root_file_specified_for_compilation);var u=e.getNormalizedAbsolutePath(t.getRootFileNames()[r.index],t.getCurrentDirectory());if(m(t,u))return e.chainDiagnosticMessages(void 0,e.Diagnostics.Part_of_files_list_in_tsconfig_json);var d=g(t,u);return d?e.chainDiagnosticMessages(void 0,e.Diagnostics.Matched_by_include_pattern_0_in_1,d,h(o.configFile,n)):e.chainDiagnosticMessages(void 0,e.Diagnostics.Root_file_specified_for_compilation);case e.FileIncludeKind.SourceFromProjectReference:case e.FileIncludeKind.OutputFromProjectReference:var p=r.kind===e.FileIncludeKind.OutputFromProjectReference,f=e.Debug.checkDefined(null===(a=t.getResolvedProjectReferences())||void 0===a?void 0:a[r.index]);return e.chainDiagnosticMessages(void 0,e.outFile(o)?p?e.Diagnostics.Output_from_referenced_project_0_included_because_1_specified:e.Diagnostics.Source_from_referenced_project_0_included_because_1_specified:p?e.Diagnostics.Output_from_referenced_project_0_included_because_module_is_specified_as_none:e.Diagnostics.Source_from_referenced_project_0_included_because_module_is_specified_as_none,h(f.sourceFile.fileName,n),o.outFile?"--outFile":"--out");case e.FileIncludeKind.AutomaticTypeDirectiveFile:return e.chainDiagnosticMessages(void 0,o.types?r.packageId?e.Diagnostics.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:e.Diagnostics.Entry_point_of_type_library_0_specified_in_compilerOptions:r.packageId?e.Diagnostics.Entry_point_for_implicit_type_library_0_with_packageId_1:e.Diagnostics.Entry_point_for_implicit_type_library_0,r.typeReference,r.packageId&&e.packageIdToString(r.packageId));case e.FileIncludeKind.LibFile:if(void 0!==r.index)return e.chainDiagnosticMessages(void 0,e.Diagnostics.Library_0_specified_in_compilerOptions,o.lib[r.index]);var _=e.forEachEntry(e.targetOptionDeclaration.type,(function(e,t){return e===o.target?t:void 0}));return e.chainDiagnosticMessages(void 0,_?e.Diagnostics.Default_library_for_target_0:e.Diagnostics.Default_library,_);default:e.Debug.assertNever(r)}}function h(t,r){var n=e.isString(t)?t:t.fileName;return r?r(n):n}function y(t,r,n,i,a,o,c,l){var u=!!t.getCompilerOptions().listFilesOnly,p=t.getConfigFileParsingDiagnostics().slice(),f=p.length;e.addRange(p,t.getSyntacticDiagnostics(void 0,o)),p.length===f&&(e.addRange(p,t.getOptionsDiagnostics(o)),u||(e.addRange(p,t.getGlobalDiagnostics(o)),p.length===f&&e.addRange(p,t.getSemanticDiagnostics(void 0,o))));var m=u?{emitSkipped:!0,diagnostics:e.emptyArray}:t.emit(void 0,a,o,c,l),g=m.emittedFiles,_=m.diagnostics;e.addRange(p,_);var h=e.sortAndDeduplicateDiagnostics(p);if(h.forEach(r),n){var y=t.getCurrentDirectory();e.forEach(g,(function(t){var r=e.getNormalizedAbsolutePath(t,y);n("TSFILE: "+r)})),d(t,n)}return i&&i(s(h)),{emitResult:m,diagnostics:h}}function v(t,r,n,i,a,o,s,c){var l=y(t,r,n,i,a,o,s,c),u=l.emitResult,d=l.diagnostics;return u.emitSkipped&&d.length>0?e.ExitStatus.DiagnosticsPresent_OutputsSkipped:d.length>0?e.ExitStatus.DiagnosticsPresent_OutputsGenerated:e.ExitStatus.Success}function b(t,r){return void 0===t&&(t=e.sys),{onWatchStatusChange:r||o(t),watchFile:e.maybeBind(t,t.watchFile)||e.returnNoopFileWatcher,watchDirectory:e.maybeBind(t,t.watchDirectory)||e.returnNoopFileWatcher,setTimeout:e.maybeBind(t,t.setTimeout)||e.noop,clearTimeout:e.maybeBind(t,t.clearTimeout)||e.noop}}function k(t,r){var n=e.memoize((function(){return e.getDirectoryPath(e.normalizePath(t.getExecutingFilePath()))}));return{useCaseSensitiveFileNames:function(){return t.useCaseSensitiveFileNames},getNewLine:function(){return t.newLine},getCurrentDirectory:e.memoize((function(){return t.getCurrentDirectory()})),getDefaultLibLocation:n,getDefaultLibFileName:function(t){return e.combinePaths(n(),e.getDefaultLibFileName(t))},fileExists:function(e){return t.fileExists(e)},readFile:function(e,r){return t.readFile(e,r)},directoryExists:function(e){return t.directoryExists(e)},getDirectories:function(e){return t.getDirectories(e)},readDirectory:function(e,r,n,i,a){return t.readDirectory(e,r,n,i,a)},realpath:e.maybeBind(t,t.realpath),getEnvironmentVariable:e.maybeBind(t,t.getEnvironmentVariable),trace:function(e){return t.write(e+t.newLine)},createDirectory:function(e){return t.createDirectory(e)},writeFile:function(e,r,n){return t.writeFile(e,r,n)},createHash:e.maybeBind(t,t.createHash),createProgram:r||e.createEmitAndSemanticDiagnosticsBuilderProgram}}function x(t,r,n,i){void 0===t&&(t=e.sys);var a=function(e){return t.write(e+t.newLine)},o=k(t,r);return e.copyProperties(o,b(t,i)),o.afterProgramCreate=function(r){var i=r.getCompilerOptions(),s=e.getNewLineCharacter(i,(function(){return t.newLine}));y(r,n,a,(function(t){return o.onWatchStatusChange(e.createCompilerDiagnostic(c(t),t),s,i,t)}))},o}function S(t,r,n){r(n),t.exit(e.ExitStatus.DiagnosticsPresent_OutputsSkipped)}e.createDiagnosticReporter=r,e.screenStartingMessageCodes=[e.Diagnostics.Starting_compilation_in_watch_mode.code,e.Diagnostics.File_change_detected_Starting_incremental_compilation.code],e.getLocaleTimeString=a,e.createWatchStatusReporter=o,e.parseConfigFileWithSystem=function(t,r,n,i,a){var o=i;o.onUnRecoverableConfigFileDiagnostic=function(e){return S(i,a,e)};var s=e.getParsedCommandLineOfConfigFile(t,r,o,void 0,n);return o.onUnRecoverableConfigFileDiagnostic=void 0,s},e.getErrorCountForSummary=s,e.getWatchErrorSummaryDiagnosticMessage=c,e.getErrorSummaryText=l,e.isBuilderProgram=u,e.listFiles=d,e.explainFiles=p,e.explainIfFileIsRedirect=f,e.getMatchedFileSpec=m,e.getMatchedIncludeSpec=g,e.fileIncludeReasonToDiagnostics=_,e.emitFilesAndReportErrors=y,e.emitFilesAndReportErrorsAndGetExitStatus=v,e.noopFileWatcher={close:e.noop},e.returnNoopFileWatcher=function(){return e.noopFileWatcher},e.createWatchHost=b,e.WatchType={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",TypeRoots:"Type roots"},e.createWatchFactory=function(t,r){var n=t.trace?r.extendedDiagnostics?e.WatchLogLevel.Verbose:r.diagnostics?e.WatchLogLevel.TriggerOnly:e.WatchLogLevel.None:e.WatchLogLevel.None,i=n!==e.WatchLogLevel.None?function(e){return t.trace(e)}:e.noop,a=e.getWatchFactory(t,n,i);return a.writeLog=i,a},e.createCompilerHostFromProgramHost=function(t,r,n){void 0===n&&(n=t);var i=t.useCaseSensitiveFileNames(),a=e.memoize((function(){return t.getNewLine()}));return{getSourceFile:function(n,i,a){var o,s=r();try{e.performance.mark("beforeIORead"),o=t.readFile(n,s.charset),e.performance.mark("afterIORead"),e.performance.measure("I/O Read","beforeIORead","afterIORead")}catch(e){a&&a(e.message),o=""}return void 0!==o?e.createSourceFile(n,o,i,void 0,void 0,s):void 0},getDefaultLibLocation:e.maybeBind(t,t.getDefaultLibLocation),getDefaultLibFileName:function(e){return t.getDefaultLibFileName(e)},writeFile:function(r,n,i,a){try{e.performance.mark("beforeIOWrite"),e.writeFileEnsuringDirectories(r,n,i,(function(e,r,n){return t.writeFile(e,r,n)}),(function(e){return t.createDirectory(e)}),(function(e){return t.directoryExists(e)})),e.performance.mark("afterIOWrite"),e.performance.measure("I/O Write","beforeIOWrite","afterIOWrite")}catch(e){a&&a(e.message)}},getCurrentDirectory:e.memoize((function(){return t.getCurrentDirectory()})),useCaseSensitiveFileNames:function(){return i},getCanonicalFileName:e.createGetCanonicalFileName(i),getNewLine:function(){return e.getNewLineCharacter(r(),a)},fileExists:function(e){return t.fileExists(e)},readFile:function(e){return t.readFile(e)},trace:e.maybeBind(t,t.trace),directoryExists:e.maybeBind(n,n.directoryExists),getDirectories:e.maybeBind(n,n.getDirectories),realpath:e.maybeBind(t,t.realpath),getEnvironmentVariable:e.maybeBind(t,t.getEnvironmentVariable)||function(){return""},createHash:e.maybeBind(t,t.createHash),readDirectory:e.maybeBind(t,t.readDirectory)}},e.setGetSourceFileAsHashVersioned=function(t,r){var n=t.getSourceFile,a=e.maybeBind(r,r.createHash)||e.generateDjb2Hash;t.getSourceFile=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];var o=n.call.apply(n,i([t],e));return o&&(o.version=a(o.text)),o}},e.createProgramHost=k,e.createWatchCompilerHostOfConfigFile=function(e){var t=e.configFileName,n=e.optionsToExtend,i=e.watchOptionsToExtend,a=e.extraFileExtensions,o=e.system,s=e.createProgram,c=e.reportDiagnostic,l=e.reportWatchStatus,u=c||r(o),d=x(o,s,u,l);return d.onUnRecoverableConfigFileDiagnostic=function(e){return S(o,u,e)},d.configFileName=t,d.optionsToExtend=n,d.watchOptionsToExtend=i,d.extraFileExtensions=a,d},e.createWatchCompilerHostOfFilesAndCompilerOptions=function(e){var t=e.rootFiles,n=e.options,i=e.watchOptions,a=e.projectReferences,o=e.system,s=e.createProgram,c=e.reportDiagnostic,l=e.reportWatchStatus,u=x(o,s,c||r(o),l);return u.rootFiles=t,u.options=n,u.watchOptions=i,u.projectReferences=a,u},e.performIncrementalCompilation=function(t){var n=t.system||e.sys,i=t.host||(t.host=e.createIncrementalCompilerHost(t.options,n)),a=e.createIncrementalProgram(t),o=v(a,t.reportDiagnostic||r(n),(function(e){return i.trace&&i.trace(e)}),t.reportErrorSummary||t.options.pretty?function(e){return n.write(l(e,n.newLine))}:void 0);return t.afterProgramEmitAndDiagnostics&&t.afterProgramEmitAndDiagnostics(a),o}}(d||(d={})),function(e){function t(t,r){if(!e.outFile(t)){var n=e.getTsBuildInfoEmitOutputFilePath(t);if(n){var i=r.readFile(n);if(i){var a=e.getBuildInfo(i);if(a.version===e.version&&a.program)return e.createBuildProgramUsingProgramBuildInfo(a.program,n,r)}}}}function r(t,r){void 0===r&&(r=e.sys);var n=e.createCompilerHostWorker(t,void 0,r);return n.createHash=e.maybeBind(r,r.createHash),e.setGetSourceFileAsHashVersioned(n,r),e.changeCompilerHostLikeToUseCache(n,(function(t){return e.toPath(t,n.getCurrentDirectory(),n.getCanonicalFileName)})),n}e.readBuilderProgram=t,e.createIncrementalCompilerHost=r,e.createIncrementalProgram=function(n){var i=n.rootNames,a=n.options,o=n.configFileParsingDiagnostics,s=n.projectReferences,c=n.host,l=n.createProgram;return c=c||r(a),(l=l||e.createEmitAndSemanticDiagnosticsBuilderProgram)(i,a,c,t(a,c),o,s)},e.createWatchCompilerHost=function(t,r,n,i,a,o,s,c){return e.isArray(t)?e.createWatchCompilerHostOfFilesAndCompilerOptions({rootFiles:t,options:r,watchOptions:c,projectReferences:s,system:n,createProgram:i,reportDiagnostic:a,reportWatchStatus:o}):e.createWatchCompilerHostOfConfigFile({configFileName:t,optionsToExtend:r,watchOptionsToExtend:s,extraFileExtensions:c,system:n,createProgram:i,reportDiagnostic:a,reportWatchStatus:o})},e.createWatchProgram=function(r){var n,a,o,s,c,l,u,d,p,f,m=new e.Map,g=!1,_=r.useCaseSensitiveFileNames(),h=r.getCurrentDirectory(),y=r.configFileName,v=r.optionsToExtend,b=void 0===v?{}:v,k=r.watchOptionsToExtend,x=r.extraFileExtensions,S=r.createProgram,w=r.rootFiles,D=r.options,E=r.watchOptions,T=r.projectReferences,C=!1,A=!1,N=void 0===y?void 0:e.createCachedDirectoryStructureHost(r,h,_),P=N||r,I=e.parseConfigHostFromCompilerHostLike(r,P),F=G();y&&r.configFileParsingResult&&(ue(r.configFileParsingResult),F=G()),te(e.Diagnostics.Starting_compilation_in_watch_mode),y&&!r.configFileParsingResult&&(F=e.getNewLineCharacter(b,(function(){return r.getNewLine()})),e.Debug.assert(!w),le(),F=G());var O,R=e.createWatchFactory(r,D),M=R.watchFile,L=R.watchDirectory,j=R.writeLog,B=e.createGetCanonicalFileName(_);j("Current directory: "+h+" CaseSensitiveFileNames: "+_),y&&(O=M(y,oe,e.PollingInterval.High,E,e.WatchType.ConfigFile));var z=e.createCompilerHostFromProgramHost(r,(function(){return D}),P);e.setGetSourceFileAsHashVersioned(z,r);var U=z.getSourceFile;z.getSourceFile=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return Q.apply(void 0,i([e,$(e)],t))},z.getSourceFileByPath=Q,z.getNewLine=function(){return F},z.fileExists=X,z.onReleaseOldSourceFile=function(e,t,r){var n=m.get(e.resolvedPath);void 0!==n&&(Y(n)?(d||(d=[])).push(e.path):n.sourceFile===e&&(n.fileWatcher&&n.fileWatcher.close(),m.delete(e.resolvedPath),r||q.removeResolutionsOfFile(e.path)))},z.toPath=$,z.getCompilationSettings=function(){return D},z.useSourceOfProjectReferenceRedirect=e.maybeBind(r,r.useSourceOfProjectReferenceRedirect),z.watchDirectoryOfFailedLookupLocation=function(t,r,n){return L(t,r,n,E,e.WatchType.FailedLookupLocations)},z.watchTypeRootsDirectory=function(t,r,n){return L(t,r,n,E,e.WatchType.TypeRoots)},z.getCachedDirectoryStructureHost=function(){return N},z.scheduleInvalidateResolutionsOfFailedLookupLocations=function(){if(!r.setTimeout||!r.clearTimeout)return q.invalidateResolutionsOfFailedLookupLocations();var e=ne();j("Scheduling invalidateFailedLookup"+(e?", Cancelled earlier one":"")),u=r.setTimeout(ie,250)},z.onInvalidatedResolution=ae,z.onChangedAutomaticTypeDirectiveNames=ae,z.fileIsOpen=e.returnFalse,z.getCurrentProgram=K,z.writeLog=j;var q=e.createResolutionCache(z,y?e.getDirectoryPath(e.getNormalizedAbsolutePath(y,h)):h,!1);z.resolveModuleNames=r.resolveModuleNames?function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.resolveModuleNames.apply(r,e)}:function(e,t,r,n){return q.resolveModuleNames(e,t,r,n)},z.resolveTypeReferenceDirectives=r.resolveTypeReferenceDirectives?function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.resolveTypeReferenceDirectives.apply(r,e)}:function(e,t,r){return q.resolveTypeReferenceDirectives(e,t,r)};var J=!!r.resolveModuleNames||!!r.resolveTypeReferenceDirectives;return n=t(D,z),W(),_e(),ye(),y?{getCurrentProgram:H,getProgram:ce,close:V}:{getCurrentProgram:H,getProgram:ce,updateRootFileNames:function(t){e.Debug.assert(!y,"Cannot update root file names with config file watch mode"),w=t,ae()},close:V};function V(){ne(),q.clear(),e.clearMap(m,(function(e){e&&e.fileWatcher&&(e.fileWatcher.close(),e.fileWatcher=void 0)})),O&&(O.close(),O=void 0),o&&(e.clearMap(o,e.closeFileWatcher),o=void 0),c&&(e.clearMap(c,e.closeFileWatcherOf),c=void 0),s&&(e.clearMap(s,e.closeFileWatcher),s=void 0)}function H(){return n}function K(){return n&&n.getProgramOrUndefined()}function W(){j("Synchronizing program"),ne();var t=H();g&&(F=G(),t&&e.changesAffectModuleResolution(t.getCompilerOptions(),D)&&q.clear());var i=q.createHasInvalidatedResolution(J);return e.isProgramUptoDate(K(),w,D,ee,X,i,re,T)?A&&(n=S(void 0,void 0,z,n,f,T),A=!1):function(t){j("CreatingProgramWith::"),j(" roots: "+JSON.stringify(w)),j(" options: "+JSON.stringify(D));var r=g||!K();g=!1,A=!1,q.startCachingPerDirectoryResolution(),z.hasInvalidatedResolution=t,z.hasChangedAutomaticTypeDirectiveNames=re,n=S(w,D,z,n,f,T),q.finishCachingPerDirectoryResolution(),e.updateMissingFilePathsWatch(n.getProgram(),s||(s=new e.Map),me),r&&q.updateTypeRootsWatch();if(d){for(var i=0,a=d;i<a.length;i++){var o=a[i];s.has(o)||m.delete(o)}d=void 0}}(i),r.afterProgramCreate&&t!==n&&r.afterProgramCreate(n),n}function G(){return e.getNewLineCharacter(D||b,(function(){return r.getNewLine()}))}function $(t){return e.toPath(t,h,B)}function Y(e){return"boolean"==typeof e}function X(e){var t=$(e);return!Y(m.get(t))&&P.fileExists(e)}function Q(t,r,n,i,a){var o=m.get(r);if(!Y(o)){if(void 0===o||a||function(e){return"boolean"==typeof e.version}(o)){var s=U(t,n,i);if(o)s?(o.sourceFile=s,o.version=s.version,o.fileWatcher||(o.fileWatcher=de(r,t,pe,e.PollingInterval.Low,E,e.WatchType.SourceFile))):(o.fileWatcher&&o.fileWatcher.close(),m.set(r,!1));else if(s){var c=de(r,t,pe,e.PollingInterval.Low,E,e.WatchType.SourceFile);m.set(r,{sourceFile:s,version:s.version,fileWatcher:c})}else m.set(r,!1);return s}return o.sourceFile}}function Z(e){var t=m.get(e);void 0!==t&&(Y(t)?m.set(e,{version:!1}):t.version=!1)}function ee(e){var t=m.get(e);return t&&t.version?t.version:void 0}function te(t){r.onWatchStatusChange&&r.onWatchStatusChange(e.createCompilerDiagnostic(t),F,D||b)}function re(){return q.hasChangedAutomaticTypeDirectiveNames()}function ne(){return!!u&&(r.clearTimeout(u),u=void 0,!0)}function ie(){u=void 0,q.invalidateResolutionsOfFailedLookupLocations()&&ae()}function ae(){r.setTimeout&&r.clearTimeout&&(l&&r.clearTimeout(l),j("Scheduling update"),l=r.setTimeout(se,250))}function oe(){e.Debug.assert(!!y),a=e.ConfigFileProgramReloadLevel.Full,ae()}function se(){l=void 0,te(e.Diagnostics.File_change_detected_Starting_incremental_compilation),ce()}function ce(){switch(a){case e.ConfigFileProgramReloadLevel.Partial:e.perfLogger.logStartUpdateProgram("PartialConfigReload"),function(){j("Reloading new file names and options"),w=e.getFileNamesFromConfigSpecs(D.configFile.configFileSpecs,e.getNormalizedAbsolutePath(e.getDirectoryPath(y),h),D,I,x),e.updateErrorForNoInputFiles(w,e.getNormalizedAbsolutePath(y,h),D.configFile.configFileSpecs,f,C)&&(A=!0);W()}();break;case e.ConfigFileProgramReloadLevel.Full:e.perfLogger.logStartUpdateProgram("FullConfigReload"),function(){j("Reloading config file: "+y),a=e.ConfigFileProgramReloadLevel.None,N&&N.clearCache();le(),g=!0,W(),_e(),ye()}();break;default:e.perfLogger.logStartUpdateProgram("SynchronizeProgram"),W()}return e.perfLogger.logStopUpdateProgram("Done"),H()}function le(){ue(e.getParsedCommandLineOfConfigFile(y,b,I,void 0,k,x))}function ue(t){w=t.fileNames,D=t.options,E=t.watchOptions,T=t.projectReferences,p=t.wildcardDirectories,f=e.getConfigFileParsingDiagnostics(t).slice(),C=e.canJsonReportNoInputFiles(t.raw),A=!0}function de(e,t,r,n,i,a){return M(t,(function(t,n){return r(t,n,e)}),n,i,a)}function pe(t,r,n){fe(t,n,r),r===e.FileWatcherEventKind.Deleted&&m.has(n)&&q.invalidateResolutionOfFile(n),q.removeResolutionsFromProjectReferenceRedirects(n),Z(n),ae()}function fe(e,t,r){N&&N.addOrDeleteFile(e,t,r)}function me(t){return de(t,t,ge,e.PollingInterval.Medium,E,e.WatchType.MissingFile)}function ge(t,r,n){fe(t,n,r),r===e.FileWatcherEventKind.Created&&s.has(n)&&(s.get(n).close(),s.delete(n),Z(n),ae())}function _e(){p?e.updateWatchingWildcardDirectories(c||(c=new e.Map),new e.Map(e.getEntries(p)),he):c&&e.clearMap(c,e.closeFileWatcherOf)}function he(t,r){return L(t,(function(r){e.Debug.assert(!!y);var n=$(r);N&&N.addOrDeleteFileOrDirectory(r,n),Z(n),e.isIgnoredFileFromWildCardWatching({watchedDirPath:$(t),fileOrDirectory:r,fileOrDirectoryPath:n,configFileName:y,extraFileExtensions:x,options:D,program:H(),currentDirectory:h,useCaseSensitiveFileNames:_,writeLog:j})||a!==e.ConfigFileProgramReloadLevel.Full&&(a=e.ConfigFileProgramReloadLevel.Partial,ae())}),r,E,e.WatchType.WildcardDirectory)}function ye(){var t;e.mutateMap(o||(o=new e.Map),e.arrayToMap((null===(t=D.configFile)||void 0===t?void 0:t.extendedSourceFiles)||e.emptyArray,$),{createNewValue:ve,onDeleteValue:e.closeFileWatcher})}function ve(t){return M(t,oe,e.PollingInterval.High,E,e.WatchType.ExtendedConfigFile)}}}(d||(d={})),function(e){!function(e){e[e.Unbuildable=0]="Unbuildable",e[e.UpToDate=1]="UpToDate",e[e.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",e[e.OutOfDateWithPrepend=3]="OutOfDateWithPrepend",e[e.OutputMissing=4]="OutputMissing",e[e.OutOfDateWithSelf=5]="OutOfDateWithSelf",e[e.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",e[e.UpstreamOutOfDate=7]="UpstreamOutOfDate",e[e.UpstreamBlocked=8]="UpstreamBlocked",e[e.ComputingUpstream=9]="ComputingUpstream",e[e.TsVersionOutputOfDate=10]="TsVersionOutputOfDate",e[e.ContainerOnly=11]="ContainerOnly"}(e.UpToDateStatusType||(e.UpToDateStatusType={})),e.resolveConfigFileProjectName=function(t){return e.fileExtensionIs(t,".json")?t:e.combinePaths(t,"tsconfig.json")}}(d||(d={})),function(e){var t,r,n,a=new Date(-864e13),o=new Date(864e13);function s(t,r){return function(e,t,r){var n,i=e.get(t);return i||(n=r(),e.set(t,n)),i||n}(t,r,(function(){return new e.Map}))}function c(e,t){return t>e?t:e}function l(t){return e.fileExtensionIs(t,".d.ts")||e.fileExtensionIs(t,".d.ets")}function u(e){return!!e&&!!e.buildOrder}function d(e){return u(e)?e.buildOrder:e}function p(t,r){return function(n){var i=r?"["+e.formatColorAndReset(e.getLocaleTimeString(t),e.ForegroundColorEscapeSequences.Grey)+"] ":e.getLocaleTimeString(t)+" - ";i+=""+e.flattenDiagnosticMessageText(n.messageText,t.newLine)+(t.newLine+t.newLine),t.write(i)}}function f(t,r,n,i){var a=e.createProgramHost(t,r);return a.getModifiedTime=t.getModifiedTime?function(e){return t.getModifiedTime(e)}:e.returnUndefined,a.setModifiedTime=t.setModifiedTime?function(e,r){return t.setModifiedTime(e,r)}:e.noop,a.deleteFile=t.deleteFile?function(e){return t.deleteFile(e)}:e.noop,a.reportDiagnostic=n||e.createDiagnosticReporter(t),a.reportSolutionBuilderStatus=i||p(t),a.now=e.maybeBind(t,t.now),a}function m(t,r,n,i,a){var o,s,c=r,l=r,u=c.getCurrentDirectory(),d=e.createGetCanonicalFileName(c.useCaseSensitiveFileNames()),p=(o=i,s={},e.commonOptionsWithBuild.forEach((function(t){e.hasProperty(o,t.name)&&(s[t.name]=o[t.name])})),s),f=e.createCompilerHostFromProgramHost(c,(function(){return x.projectCompilerOptions}));e.setGetSourceFileAsHashVersioned(f,c),f.getParsedCommandLine=function(e){return y(x,e,_(x,e))},f.resolveModuleNames=e.maybeBind(c,c.resolveModuleNames),f.resolveTypeReferenceDirectives=e.maybeBind(c,c.resolveTypeReferenceDirectives);var m=f.resolveModuleNames?void 0:e.createModuleResolutionCache(u,d);if(!f.resolveModuleNames){var g=function(t,r,n){return e.resolveModuleName(t,r,x.projectCompilerOptions,f,m,n).resolvedModule};f.resolveModuleNames=function(t,r,n,i){return e.loadWithLocalCache(e.Debug.checkEachDefined(t),r,i,g)}}var h=e.createWatchFactory(l,i),v=h.watchFile,b=h.watchDirectory,k=h.writeLog,x={host:c,hostWithWatch:l,currentDirectory:u,getCanonicalFileName:d,parseConfigFileHost:e.parseConfigHostFromCompilerHostLike(c),write:e.maybeBind(c,c.trace),options:i,baseCompilerOptions:p,rootNames:n,baseWatchOptions:a,resolvedConfigFilePaths:new e.Map,configFileCache:new e.Map,projectStatus:new e.Map,buildInfoChecked:new e.Map,extendedConfigCache:new e.Map,builderPrograms:new e.Map,diagnostics:new e.Map,projectPendingBuild:new e.Map,projectErrorsReported:new e.Map,compilerHost:f,moduleResolutionCache:m,buildOrder:void 0,readFileWithCache:function(e){return c.readFile(e)},projectCompilerOptions:p,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:t,currentInvalidatedProject:void 0,watch:t,allWatchedWildcardDirectories:new e.Map,allWatchedInputFiles:new e.Map,allWatchedConfigFiles:new e.Map,allWatchedExtendedConfigFiles:new e.Map,timerToBuildInvalidatedProject:void 0,reportFileChangeDetected:!1,watchFile:v,watchDirectory:b,writeLog:k};return x}function g(t,r){return e.toPath(r,t.currentDirectory,t.getCanonicalFileName)}function _(e,t){var r=e.resolvedConfigFilePaths,n=r.get(t);if(void 0!==n)return n;var i=g(e,t);return r.set(t,i),i}function h(e){return!!e.options}function y(t,r,n){var i,a=t.configFileCache,o=a.get(n);if(o)return h(o)?o:void 0;var s,c=t.parseConfigFileHost,l=t.baseCompilerOptions,u=t.baseWatchOptions,d=t.extendedConfigCache,p=t.host;return p.getParsedCommandLine?(s=p.getParsedCommandLine(r))||(i=e.createCompilerDiagnostic(e.Diagnostics.File_0_not_found,r)):(c.onUnRecoverableConfigFileDiagnostic=function(e){return i=e},s=e.getParsedCommandLineOfConfigFile(r,l,c,d,u),c.onUnRecoverableConfigFileDiagnostic=e.noop),a.set(n,s||i),s}function v(t,r){return e.resolveConfigFileProjectName(e.resolvePath(t.currentDirectory,r))}function b(t,r){for(var n,i,a=new e.Map,o=new e.Map,s=[],c=0,l=r;c<l.length;c++){u(l[c])}return i?{buildOrder:n||e.emptyArray,circularDiagnostics:i}:n||e.emptyArray;function u(r,c){var l=_(t,r);if(!o.has(l))if(a.has(l))c||(i||(i=[])).push(e.createCompilerDiagnostic(e.Diagnostics.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,s.join("\r\n")));else{a.set(l,!0),s.push(r);var d=y(t,r,l);if(d&&d.projectReferences)for(var p=0,f=d.projectReferences;p<f.length;p++){var m=f[p];u(v(t,m.path),c||m.circular)}s.pop(),o.set(l,!0),(n||(n=[])).push(r)}}}function k(t){return t.buildOrder||function(t){var r=b(t,t.rootNames.map((function(e){return v(t,e)})));t.resolvedConfigFilePaths.clear();var n=new e.Map(d(r).map((function(e){return[_(t,e),!0]}))),i={onDeleteValue:e.noop};e.mutateMapSkippingNewValues(t.configFileCache,n,i),e.mutateMapSkippingNewValues(t.projectStatus,n,i),e.mutateMapSkippingNewValues(t.buildInfoChecked,n,i),e.mutateMapSkippingNewValues(t.builderPrograms,n,i),e.mutateMapSkippingNewValues(t.diagnostics,n,i),e.mutateMapSkippingNewValues(t.projectPendingBuild,n,i),e.mutateMapSkippingNewValues(t.projectErrorsReported,n,i),t.watch&&(e.mutateMapSkippingNewValues(t.allWatchedConfigFiles,n,{onDeleteValue:e.closeFileWatcher}),t.allWatchedExtendedConfigFiles.forEach((function(e){e.projects.forEach((function(t){n.has(t)||e.projects.delete(t)})),e.close()})),e.mutateMapSkippingNewValues(t.allWatchedWildcardDirectories,n,{onDeleteValue:function(t){return t.forEach(e.closeFileWatcherOf)}}),e.mutateMapSkippingNewValues(t.allWatchedInputFiles,n,{onDeleteValue:function(t){return t.forEach(e.closeFileWatcher)}}));return t.buildOrder=r}(t)}function x(t,r,n){var i=r&&v(t,r),a=k(t);if(u(a))return a;if(i){var o=_(t,i);if(-1===e.findIndex(a,(function(e){return _(t,e)===o})))return}var s=i?b(t,[i]):a;return e.Debug.assert(!u(s)),e.Debug.assert(!n||void 0!==i),e.Debug.assert(!n||s[s.length-1]===i),n?s.slice(0,s.length-1):s}function S(t){t.cache&&w(t);var r=t.compilerHost,n=t.host,a=t.readFileWithCache,o=r.getSourceFile,s=e.changeCompilerHostLikeToUseCache(n,(function(e){return g(t,e)}),(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return o.call.apply(o,i([r],e))})),c=s.originalReadFile,l=s.originalFileExists,u=s.originalDirectoryExists,d=s.originalCreateDirectory,p=s.originalWriteFile,f=s.getSourceFileWithCache,m=s.readFileWithCache;t.readFileWithCache=m,r.getSourceFile=f,t.cache={originalReadFile:c,originalFileExists:l,originalDirectoryExists:u,originalCreateDirectory:d,originalWriteFile:p,originalReadFileWithCache:a,originalGetSourceFile:o}}function w(e){if(e.cache){var t=e.cache,r=e.host,n=e.compilerHost,i=e.extendedConfigCache,a=e.moduleResolutionCache;r.readFile=t.originalReadFile,r.fileExists=t.originalFileExists,r.directoryExists=t.originalDirectoryExists,r.createDirectory=t.originalCreateDirectory,r.writeFile=t.originalWriteFile,n.getSourceFile=t.originalGetSourceFile,e.readFileWithCache=t.originalReadFileWithCache,i.clear(),a&&(a.directoryToModuleNameMap.clear(),a.moduleNameToDirectoryMap.clear()),e.cache=void 0}}function D(e,t){e.projectStatus.delete(t),e.diagnostics.delete(t)}function E(e,t,r){var n=e.projectPendingBuild,i=n.get(t);(void 0===i||i<r)&&n.set(t,r)}function T(t,r){t.allProjectBuildPending&&(t.allProjectBuildPending=!1,t.options.watch&&ee(t,e.Diagnostics.Starting_compilation_in_watch_mode),S(t),d(k(t)).forEach((function(r){return t.projectPendingBuild.set(_(t,r),e.ConfigFileProgramReloadLevel.None)})),r&&r.throwIfCancellationRequested())}function C(t,r){return t.projectPendingBuild.delete(r),t.currentInvalidatedProject=void 0,t.diagnostics.has(r)?e.ExitStatus.DiagnosticsPresent_OutputsSkipped:e.ExitStatus.Success}function A(e,t,n,i,a){var o=!0;return{kind:r.UpdateOutputFileStamps,project:t,projectPath:n,buildOrder:a,getCompilerOptions:function(){return i.options},getCurrentDirectory:function(){return e.currentDirectory},updateOutputFileStatmps:function(){B(e,i,n),o=!1},done:function(){return o&&B(e,i,n),C(e,n)}}}function N(s,u,d,p,f,m,h){var b,k,x,S=s===r.Build?n.CreateProgram:n.EmitBundle;return s===r.Build?{kind:s,project:d,projectPath:p,buildOrder:h,getCompilerOptions:function(){return m.options},getCurrentDirectory:function(){return u.currentDirectory},getBuilderProgram:function(){return D(e.identity)},getProgram:function(){return D((function(e){return e.getProgramOrUndefined()}))},getSourceFile:function(e){return D((function(t){return t.getSourceFile(e)}))},getSourceFiles:function(){return E((function(e){return e.getSourceFiles()}))},getOptionsDiagnostics:function(e){return E((function(t){return t.getOptionsDiagnostics(e)}))},getGlobalDiagnostics:function(e){return E((function(t){return t.getGlobalDiagnostics(e)}))},getConfigFileParsingDiagnostics:function(){return E((function(e){return e.getConfigFileParsingDiagnostics()}))},getSyntacticDiagnostics:function(e,t){return E((function(r){return r.getSyntacticDiagnostics(e,t)}))},getAllDependencies:function(e){return E((function(t){return t.getAllDependencies(e)}))},getSemanticDiagnostics:function(e,t){return E((function(r){return r.getSemanticDiagnostics(e,t)}))},getSemanticDiagnosticsOfNextAffectedFile:function(e,t){return D((function(r){return r.getSemanticDiagnosticsOfNextAffectedFile&&r.getSemanticDiagnosticsOfNextAffectedFile(e,t)}))},emit:function(e,t,r,i,a){return e||i?D((function(n){return n.emit(e,t,r,i,a)})):(q(n.SemanticDiagnostics,r),S===n.EmitBuildInfo?L(t,r):S===n.Emit?M(t,r,a):void 0)},done:w}:{kind:s,project:d,projectPath:p,buildOrder:h,getCompilerOptions:function(){return m.options},getCurrentDirectory:function(){return u.currentDirectory},emit:function(e,t){return S!==n.EmitBundle?x:U(e,t)},done:w};function w(e,t,r){return q(n.Done,e,t,r),C(u,p)}function D(e){return q(n.CreateProgram),b&&e(b)}function E(t){return D(t)||e.emptyArray}function T(){if(e.Debug.assert(void 0===b),u.options.dry)return Z(u,e.Diagnostics.A_non_dry_build_would_build_project_0,d),k=t.Success,void(S=n.QueueReferencingProjects);if(u.options.verbose&&Z(u,e.Diagnostics.Building_project_0,d),0===m.fileNames.length)return re(u,p,e.getConfigFileParsingDiagnostics(m)),k=t.None,void(S=n.QueueReferencingProjects);var r=u.host,i=u.compilerHost;u.projectCompilerOptions=m.options,function(t,r,n){if(!t.moduleResolutionCache)return;var i=t.moduleResolutionCache,a=g(t,r);if(0===i.directoryToModuleNameMap.redirectsMap.size)e.Debug.assert(0===i.moduleNameToDirectoryMap.redirectsMap.size),i.directoryToModuleNameMap.redirectsMap.set(a,i.directoryToModuleNameMap.ownMap),i.moduleNameToDirectoryMap.redirectsMap.set(a,i.moduleNameToDirectoryMap.ownMap);else{e.Debug.assert(i.moduleNameToDirectoryMap.redirectsMap.size>0);var o={sourceFile:n.options.configFile,commandLine:n};i.directoryToModuleNameMap.setOwnMap(i.directoryToModuleNameMap.getOrCreateMapOfCacheRedirects(o)),i.moduleNameToDirectoryMap.setOwnMap(i.moduleNameToDirectoryMap.getOrCreateMapOfCacheRedirects(o))}i.directoryToModuleNameMap.setOwnOptions(n.options),i.moduleNameToDirectoryMap.setOwnOptions(n.options)}(u,d,m),b=r.createProgram(m.fileNames,m.options,i,function(t,r,n){var i=t.options,a=t.builderPrograms,o=t.compilerHost;if(i.force)return;var s=a.get(r);return s||e.readBuilderProgram(n.options,o)}(u,p,m),e.getConfigFileParsingDiagnostics(m),m.projectReferences),u.watch&&u.builderPrograms.set(p,b),S++}function A(e,t,r){var n;e.length?(n=R(u,p,b,m,e,t,r),k=n.buildResult,S=n.step):S++}function P(r){e.Debug.assertIsDefined(b),A(i(i(i(i([],b.getConfigFileParsingDiagnostics()),b.getOptionsDiagnostics(r)),b.getGlobalDiagnostics(r)),b.getSyntacticDiagnostics(void 0,r)),t.SyntaxErrors,"Syntactic")}function I(r){A(e.Debug.checkDefined(b).getSemanticDiagnostics(void 0,r),t.TypeErrors,"Semantic")}function M(r,i,o){var s,d;e.Debug.assertIsDefined(b),e.Debug.assert(S===n.Emit),b.backupState();var f=[],_=e.emitFilesAndReportErrors(b,(function(e){return(d||(d=[])).push(e)}),void 0,void 0,(function(e,t,r){return f.push({name:e,text:t,writeByteOrderMark:r})}),i,!1,o).emitResult;if(d)return b.restoreState(),s=R(u,p,b,m,d,t.DeclarationEmitErrors,"Declaration file"),k=s.buildResult,S=s.step,{emitSkipped:!0,diagnostics:_.diagnostics};var h=u.host,y=u.compilerHost,v=t.DeclarationOutputUnchanged,x=a,w=!1,D=e.createDiagnosticCollection(),E=new e.Map;return f.forEach((function(n){var i,a=n.name,o=n.text,s=n.writeByteOrderMark;!w&&l(a)&&(h.fileExists(a)&&u.readFileWithCache(a)===o?i=h.getModifiedTime(a):(v&=~t.DeclarationOutputUnchanged,w=!0)),E.set(g(u,a),a),e.writeFile(r?{writeFile:r}:y,D,a,o,s),void 0!==i&&(x=c(i,x))})),B(D,E,x,w,f.length?f[0].name:e.getFirstProjectOutput(m,!h.useCaseSensitiveFileNames()),v),_}function L(r,a){e.Debug.assertIsDefined(b),e.Debug.assert(S===n.EmitBuildInfo);var o=b.emitBuildInfo(r,a);return o.diagnostics.length&&(te(u,o.diagnostics),u.diagnostics.set(p,i(i([],u.diagnostics.get(p)),o.diagnostics)),k=t.EmitErrors&k),o.emittedFiles&&u.write&&o.emittedFiles.forEach((function(e){return F(u,m,e)})),O(u,b,m),S=n.QueueReferencingProjects,o}function B(r,i,a,s,c,l){var d,f=r.getDiagnostics();if(f.length)return d=R(u,p,b,m,f,t.EmitErrors,"Emit"),k=d.buildResult,S=d.step,f;u.write&&i.forEach((function(e){return F(u,m,e)}));var g=j(u,m,a,e.Diagnostics.Updating_unchanged_output_timestamps_of_project_0,i);return u.diagnostics.delete(p),u.projectStatus.set(p,{type:e.UpToDateStatusType.UpToDate,newestDeclarationFileContentChangedTime:s?o:g,oldestOutputFileName:c}),O(u,b,m),S=n.QueueReferencingProjects,k=l,f}function U(i,o){if(e.Debug.assert(s===r.UpdateBundle),u.options.dry)return Z(u,e.Diagnostics.A_non_dry_build_would_update_output_of_project_0,d),k=t.Success,void(S=n.QueueReferencingProjects);u.options.verbose&&Z(u,e.Diagnostics.Updating_output_of_project_0,d);var c=u.compilerHost;u.projectCompilerOptions=m.options;var l=e.emitUsingBuildInfo(m,c,(function(e){var t=v(u,e.path);return y(u,t,_(u,t))}),o);if(e.isString(l))return Z(u,e.Diagnostics.Cannot_update_output_of_project_0_because_there_was_error_reading_file_1,d,Q(u,l)),S=n.BuildInvalidatedProjectOfBundle,x=N(r.Build,u,d,p,f,m,h);e.Debug.assert(!!l.length);var b=e.createDiagnosticCollection(),w=new e.Map;return l.forEach((function(t){var r=t.name,n=t.text,a=t.writeByteOrderMark;w.set(g(u,r),r),e.writeFile(i?{writeFile:i}:c,b,r,n,a)})),{emitSkipped:!1,diagnostics:B(b,w,a,!1,l[0].name,t.DeclarationOutputUnchanged)}}function q(t,r,i,a){for(;S<=t&&S<n.Done;){var o=S;switch(S){case n.CreateProgram:T();break;case n.SyntaxDiagnostics:P(r);break;case n.SemanticDiagnostics:I(r);break;case n.Emit:M(i,r,a);break;case n.EmitBuildInfo:L(i,r);break;case n.EmitBundle:U(i,a);break;case n.BuildInvalidatedProjectOfBundle:e.Debug.checkDefined(x).done(r),S=n.Done;break;case n.QueueReferencingProjects:z(u,d,p,f,m,h,e.Debug.checkDefined(k)),S++;break;case n.Done:default:e.assertType(S)}e.Debug.assert(S>o)}}}function P(t,r,n){var i=t.options;return!(r.type===e.UpToDateStatusType.OutOfDateWithPrepend&&!i.force)||(0===n.fileNames.length||!!e.getConfigFileParsingDiagnostics(n).length||!e.isIncrementalCompilation(n.options))}function I(t,n,i){if(t.projectPendingBuild.size&&!u(n)){if(t.currentInvalidatedProject)return e.arrayIsEqualTo(t.currentInvalidatedProject.buildOrder,n)?t.currentInvalidatedProject:void 0;for(var a=t.options,o=t.projectPendingBuild,s=0;s<n.length;s++){var c=n[s],l=_(t,c),d=t.projectPendingBuild.get(l);if(void 0!==d){i&&(i=!1,ae(t,n));var p=y(t,c,l);if(p){d===e.ConfigFileProgramReloadLevel.Full?(W(t,c,l,p),G(t,l,p),$(t,c,l,p),Y(t,c,l,p)):d===e.ConfigFileProgramReloadLevel.Partial&&(p.fileNames=e.getFileNamesFromConfigSpecs(p.options.configFile.configFileSpecs,e.getDirectoryPath(c),p.options,t.parseConfigFileHost),e.updateErrorForNoInputFiles(p.fileNames,c,p.options.configFile.configFileSpecs,p.errors,e.canJsonReportNoInputFiles(p.raw)),Y(t,c,l,p));var f=L(t,p,l);if(oe(t,c,f),!a.force){if(f.type===e.UpToDateStatusType.UpToDate){re(t,l,e.getConfigFileParsingDiagnostics(p)),o.delete(l),a.dry&&Z(t,e.Diagnostics.Project_0_is_up_to_date,c);continue}if(f.type===e.UpToDateStatusType.UpToDateWithUpstreamTypes)return re(t,l,e.getConfigFileParsingDiagnostics(p)),A(t,c,l,p,n)}if(f.type!==e.UpToDateStatusType.UpstreamBlocked){if(f.type!==e.UpToDateStatusType.ContainerOnly)return N(P(t,f,p)?r.Build:r.UpdateBundle,t,c,l,s,p,n);re(t,l,e.getConfigFileParsingDiagnostics(p)),o.delete(l)}else re(t,l,e.getConfigFileParsingDiagnostics(p)),o.delete(l),a.verbose&&Z(t,f.upstreamProjectBlocked?e.Diagnostics.Skipping_build_of_project_0_because_its_dependency_1_was_not_built:e.Diagnostics.Skipping_build_of_project_0_because_its_dependency_1_has_errors,c,f.upstreamProjectName)}else ne(t,l),o.delete(l)}}}}function F(e,t,r){var n=e.write;n&&t.options.listEmittedFiles&&n("TSFILE: "+r)}function O(t,r,n){r?(r&&t.write&&e.listFiles(r,t.write),t.host.afterProgramEmitAndDiagnostics&&t.host.afterProgramEmitAndDiagnostics(r),r.releaseProgram()):t.host.afterEmitBundle&&t.host.afterEmitBundle(n),t.projectCompilerOptions=t.baseCompilerOptions}function R(r,i,a,o,s,c,l){var u=!(c&t.SyntaxErrors)&&a&&!e.outFile(a.getCompilerOptions());return re(r,i,s),r.projectStatus.set(i,{type:e.UpToDateStatusType.Unbuildable,reason:l+" errors"}),u?{buildResult:c,step:n.EmitBuildInfo}:(O(r,a,o),{buildResult:c,step:n.QueueReferencingProjects})}function M(t,r,n,i){if(n<(t.host.getModifiedTime(r)||e.missingFileModifiedTime))return{type:e.UpToDateStatusType.OutOfDateWithSelf,outOfDateOutputFileName:i,newerInputFileName:r}}function L(t,r,n){if(void 0===r)return{type:e.UpToDateStatusType.Unbuildable,reason:"File deleted mid-build"};var i=t.projectStatus.get(n);if(void 0!==i)return i;var s=function(t,r,n){for(var i=void 0,s=a,u=t.host,d=0,p=r.fileNames;d<p.length;d++){var f=p[d];if(!u.fileExists(f))return{type:e.UpToDateStatusType.Unbuildable,reason:f+" does not exist"};var m=u.getModifiedTime(f)||e.missingFileModifiedTime;m>s&&(i=f,s=m)}if(!r.fileNames.length&&!e.canJsonReportNoInputFiles(r.raw))return{type:e.UpToDateStatusType.ContainerOnly};for(var g,h=e.getAllProjectOutputs(r,!u.useCaseSensitiveFileNames()),v="(none)",b=o,k="(none)",x=a,S=a,w=!1,D=0,E=h;D<E.length;D++){var T=E[D];if(!u.fileExists(T)){g=T;break}var C=u.getModifiedTime(T)||e.missingFileModifiedTime;if(C<b&&(b=C,v=T),C<s){w=!0;break}C>x&&(x=C,k=T),l(T)&&(S=c(S,u.getModifiedTime(T)||e.missingFileModifiedTime))}var A,N=!1,P=!1;if(r.projectReferences){t.projectStatus.set(n,{type:e.UpToDateStatusType.ComputingUpstream});for(var I=0,F=r.projectReferences;I<F.length;I++){var O=F[I];P=P||!!O.prepend;var R=e.resolveProjectReferencePath(O),j=_(t,R),B=L(t,y(t,R,j),j);if(B.type!==e.UpToDateStatusType.ComputingUpstream&&B.type!==e.UpToDateStatusType.ContainerOnly){if(B.type===e.UpToDateStatusType.Unbuildable||B.type===e.UpToDateStatusType.UpstreamBlocked)return{type:e.UpToDateStatusType.UpstreamBlocked,upstreamProjectName:O.path,upstreamProjectBlocked:B.type===e.UpToDateStatusType.UpstreamBlocked};if(B.type!==e.UpToDateStatusType.UpToDate)return{type:e.UpToDateStatusType.UpstreamOutOfDate,upstreamProjectName:O.path};if(!g){if(B.newestInputFileTime&&B.newestInputFileTime<=b)continue;if(B.newestDeclarationFileContentChangedTime&&B.newestDeclarationFileContentChangedTime<=b){N=!0,A=O.path;continue}return e.Debug.assert(void 0!==v,"Should have an oldest output filename here"),{type:e.UpToDateStatusType.OutOfDateWithUpstream,outOfDateOutputFileName:v,newerProjectName:O.path}}}}}if(void 0!==g)return{type:e.UpToDateStatusType.OutputMissing,missingOutputFileName:g};if(w)return{type:e.UpToDateStatusType.OutOfDateWithSelf,outOfDateOutputFileName:v,newerInputFileName:i};var z=M(t,r.options.configFilePath,b,v);if(z)return z;var U=e.forEach(r.options.configFile.extendedSourceFiles||e.emptyArray,(function(e){return M(t,e,b,v)}));if(U)return U;if(!t.buildInfoChecked.has(n)){t.buildInfoChecked.set(n,!0);var q=e.getTsBuildInfoEmitOutputFilePath(r.options);if(q){var J=t.readFileWithCache(q),V=J&&e.getBuildInfo(J);if(V&&(V.bundle||V.program)&&V.version!==e.version)return{type:e.UpToDateStatusType.TsVersionOutputOfDate,version:V.version}}}return P&&N?{type:e.UpToDateStatusType.OutOfDateWithPrepend,outOfDateOutputFileName:v,newerProjectName:A}:{type:N?e.UpToDateStatusType.UpToDateWithUpstreamTypes:e.UpToDateStatusType.UpToDate,newestDeclarationFileContentChangedTime:S,newestInputFileTime:s,newestOutputFileTime:x,newestInputFileName:i,newestOutputFileName:k,oldestOutputFileName:v}}(t,r,n);return t.projectStatus.set(n,s),s}function j(t,r,n,i,a){var o=t.host,s=e.getAllProjectOutputs(r,!o.useCaseSensitiveFileNames());if(!a||s.length!==a.size)for(var u=!!t.options.verbose,d=o.now?o.now():new Date,p=0,f=s;p<f.length;p++){var m=f[p];a&&a.has(g(t,m))||(u&&(u=!1,Z(t,i,r.options.configFilePath)),l(m)&&(n=c(n,o.getModifiedTime(m)||e.missingFileModifiedTime)),o.setModifiedTime(m,d))}return n}function B(t,r,n){if(t.options.dry)return Z(t,e.Diagnostics.A_non_dry_build_would_update_timestamps_for_output_of_project_0,r.options.configFilePath);var i=j(t,r,a,e.Diagnostics.Updating_output_timestamps_of_project_0);t.projectStatus.set(n,{type:e.UpToDateStatusType.UpToDate,newestDeclarationFileContentChangedTime:i,oldestOutputFileName:e.getFirstProjectOutput(r,!t.host.useCaseSensitiveFileNames())})}function z(r,n,i,a,o,s,c){if(!(c&t.AnyErrors)&&o.options.composite)for(var l=a+1;l<s.length;l++){var u=s[l],d=_(r,u);if(!r.projectPendingBuild.has(d)){var p=y(r,u,d);if(p&&p.projectReferences)for(var f=0,m=p.projectReferences;f<m.length;f++){var g=m[f];if(_(r,v(r,g.path))===i){var h=r.projectStatus.get(d);if(h)switch(h.type){case e.UpToDateStatusType.UpToDate:if(c&t.DeclarationOutputUnchanged){g.prepend?r.projectStatus.set(d,{type:e.UpToDateStatusType.OutOfDateWithPrepend,outOfDateOutputFileName:h.oldestOutputFileName,newerProjectName:n}):h.type=e.UpToDateStatusType.UpToDateWithUpstreamTypes;break}case e.UpToDateStatusType.UpToDateWithUpstreamTypes:case e.UpToDateStatusType.OutOfDateWithPrepend:c&t.DeclarationOutputUnchanged||r.projectStatus.set(d,{type:e.UpToDateStatusType.OutOfDateWithUpstream,outOfDateOutputFileName:h.type===e.UpToDateStatusType.OutOfDateWithPrepend?h.outOfDateOutputFileName:h.oldestOutputFileName,newerProjectName:n});break;case e.UpToDateStatusType.UpstreamBlocked:_(r,v(r,h.upstreamProjectName))===i&&D(r,d)}E(r,d,e.ConfigFileProgramReloadLevel.None);break}}}}}function U(t,r,n,i){var a=x(t,r,i);if(!a)return e.ExitStatus.InvalidProject_OutputsSkipped;T(t,n);for(var o=!0,s=0;;){var c=I(t,a,o);if(!c)break;o=!1,c.done(n),t.diagnostics.has(c.projectPath)||s++}return w(t),ie(t,a),function(e,t){if(!e.watchAllProjectsPending)return;e.watchAllProjectsPending=!1;for(var r=0,n=d(t);r<n.length;r++){var i=n[r],a=_(e,i),o=y(e,i,a);W(e,i,a,o),G(e,a,o),o&&($(e,i,a,o),Y(e,i,a,o))}}(t,a),u(a)?e.ExitStatus.ProjectReferenceCycle_OutputsSkipped:a.some((function(e){return t.diagnostics.has(_(t,e))}))?s?e.ExitStatus.DiagnosticsPresent_OutputsGenerated:e.ExitStatus.DiagnosticsPresent_OutputsSkipped:e.ExitStatus.Success}function q(t,r,n){var i=x(t,r,n);if(!i)return e.ExitStatus.InvalidProject_OutputsSkipped;if(u(i))return te(t,i.circularDiagnostics),e.ExitStatus.ProjectReferenceCycle_OutputsSkipped;for(var a=t.options,o=t.host,s=a.dry?[]:void 0,c=0,l=i;c<l.length;c++){var d=l[c],p=_(t,d),f=y(t,d,p);if(void 0!==f)for(var m=0,g=e.getAllProjectOutputs(f,!o.useCaseSensitiveFileNames());m<g.length;m++){var h=g[m];o.fileExists(h)&&(s?s.push(h):(o.deleteFile(h),J(t,p,e.ConfigFileProgramReloadLevel.None)))}else ne(t,p)}return s&&Z(t,e.Diagnostics.A_non_dry_build_would_delete_the_following_files_Colon_0,s.map((function(e){return"\r\n * "+e})).join("")),e.ExitStatus.Success}function J(t,r,n){t.host.getParsedCommandLine&&n===e.ConfigFileProgramReloadLevel.Partial&&(n=e.ConfigFileProgramReloadLevel.Full),n===e.ConfigFileProgramReloadLevel.Full&&(t.configFileCache.delete(r),t.buildOrder=void 0),t.needsSummary=!0,D(t,r),E(t,r,n),S(t)}function V(e,t,r){e.reportFileChangeDetected=!0,J(e,t,r),H(e)}function H(e){var t=e.hostWithWatch;t.setTimeout&&t.clearTimeout&&(e.timerToBuildInvalidatedProject&&t.clearTimeout(e.timerToBuildInvalidatedProject),e.timerToBuildInvalidatedProject=t.setTimeout(K,250,e))}function K(t){t.timerToBuildInvalidatedProject=void 0,t.reportFileChangeDetected&&(t.reportFileChangeDetected=!1,t.projectErrorsReported.clear(),ee(t,e.Diagnostics.File_change_detected_Starting_incremental_compilation));var r=k(t),n=I(t,r,!1);n&&(n.done(),t.projectPendingBuild.size)?t.watch&&!t.timerToBuildInvalidatedProject&&H(t):(w(t),ie(t,r))}function W(t,r,n,i){t.watch&&!t.allWatchedConfigFiles.has(n)&&t.allWatchedConfigFiles.set(n,t.watchFile(r,(function(){V(t,n,e.ConfigFileProgramReloadLevel.Full)}),e.PollingInterval.High,null==i?void 0:i.watchOptions,e.WatchType.ConfigFile,r))}function G(t,r,n){e.updateSharedExtendedConfigFileWatcher(r,n,t.allWatchedExtendedConfigFiles,(function(r,i){return t.watchFile(r,(function(){var r;return null===(r=t.allWatchedExtendedConfigFiles.get(i))||void 0===r?void 0:r.projects.forEach((function(r){return V(t,r,e.ConfigFileProgramReloadLevel.Full)}))}),e.PollingInterval.High,null==n?void 0:n.watchOptions,e.WatchType.ExtendedConfigFile)}),(function(e){return g(t,e)}))}function $(t,r,n,i){t.watch&&e.updateWatchingWildcardDirectories(s(t.allWatchedWildcardDirectories,n),new e.Map(e.getEntries(i.wildcardDirectories)),(function(a,o){return t.watchDirectory(a,(function(o){e.isIgnoredFileFromWildCardWatching({watchedDirPath:g(t,a),fileOrDirectory:o,fileOrDirectoryPath:g(t,o),configFileName:r,currentDirectory:t.currentDirectory,options:i.options,program:t.builderPrograms.get(n),useCaseSensitiveFileNames:t.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:function(e){return t.writeLog(e)}})||V(t,n,e.ConfigFileProgramReloadLevel.Partial)}),o,null==i?void 0:i.watchOptions,e.WatchType.WildcardDirectory,r)}))}function Y(t,r,n,i){t.watch&&e.mutateMap(s(t.allWatchedInputFiles,n),e.arrayToMap(i.fileNames,(function(e){return g(t,e)})),{createNewValue:function(a,o){return t.watchFile(o,(function(){return V(t,n,e.ConfigFileProgramReloadLevel.None)}),e.PollingInterval.Low,null==i?void 0:i.watchOptions,e.WatchType.SourceFile,r)},onDeleteValue:e.closeFileWatcher})}function X(t,r,n,i,a){var o=m(t,r,n,i,a);return{build:function(e,t){return U(o,e,t)},clean:function(e){return q(o,e)},buildReferences:function(e,t){return U(o,e,t,!0)},cleanReferences:function(e){return q(o,e,!0)},getNextInvalidatedProject:function(e){return T(o,e),I(o,k(o),!1)},getBuildOrder:function(){return k(o)},getUpToDateStatusOfProject:function(e){var t=v(o,e),r=_(o,t);return L(o,y(o,t,r),r)},invalidateProject:function(t,r){return J(o,t,r||e.ConfigFileProgramReloadLevel.None)},buildNextInvalidatedProject:function(){return K(o)},getAllParsedConfigs:function(){return e.arrayFrom(e.mapDefinedIterator(o.configFileCache.values(),(function(e){return h(e)?e:void 0})))},close:function(){return function(t){e.clearMap(t.allWatchedConfigFiles,e.closeFileWatcher),e.clearMap(t.allWatchedExtendedConfigFiles,(function(e){e.projects.clear(),e.close()})),e.clearMap(t.allWatchedWildcardDirectories,(function(t){return e.clearMap(t,e.closeFileWatcherOf)})),e.clearMap(t.allWatchedInputFiles,(function(t){return e.clearMap(t,e.closeFileWatcher)}))}(o)}}}function Q(t,r){return e.convertToRelativePath(r,t.currentDirectory,(function(e){return t.getCanonicalFileName(e)}))}function Z(t,r){for(var n=[],a=2;a<arguments.length;a++)n[a-2]=arguments[a];t.host.reportSolutionBuilderStatus(e.createCompilerDiagnostic.apply(void 0,i([r],n)))}function ee(t,r){for(var n,a,o=[],s=2;s<arguments.length;s++)o[s-2]=arguments[s];null===(a=(n=t.hostWithWatch).onWatchStatusChange)||void 0===a||a.call(n,e.createCompilerDiagnostic.apply(void 0,i([r],o)),t.host.getNewLine(),t.baseCompilerOptions)}function te(e,t){var r=e.host;t.forEach((function(e){return r.reportDiagnostic(e)}))}function re(e,t,r){te(e,r),e.projectErrorsReported.set(t,!0),r.length&&e.diagnostics.set(t,r)}function ne(e,t){re(e,t,[e.configFileCache.get(t)])}function ie(t,r){if(t.needsSummary){t.needsSummary=!1;var n=t.watch||!!t.host.reportErrorSummary,i=t.diagnostics,a=0;u(r)?(ae(t,r.buildOrder),te(t,r.circularDiagnostics),n&&(a+=e.getErrorCountForSummary(r.circularDiagnostics))):(r.forEach((function(r){var n=_(t,r);t.projectErrorsReported.has(n)||te(t,i.get(n)||e.emptyArray)})),n&&i.forEach((function(t){return a+=e.getErrorCountForSummary(t)}))),t.watch?ee(t,e.getWatchErrorSummaryDiagnosticMessage(a),a):t.host.reportErrorSummary&&t.host.reportErrorSummary(a)}}function ae(t,r){t.options.verbose&&Z(t,e.Diagnostics.Projects_in_this_build_Colon_0,r.map((function(e){return"\r\n * "+Q(t,e)})).join(""))}function oe(t,r,n){t.options.verbose&&function(t,r,n){switch(n.type){case e.UpToDateStatusType.OutOfDateWithSelf:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2,Q(t,r),Q(t,n.outOfDateOutputFileName),Q(t,n.newerInputFileName));case e.UpToDateStatusType.OutOfDateWithUpstream:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2,Q(t,r),Q(t,n.outOfDateOutputFileName),Q(t,n.newerProjectName));case e.UpToDateStatusType.OutputMissing:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_output_file_1_does_not_exist,Q(t,r),Q(t,n.missingOutputFileName));case e.UpToDateStatusType.UpToDate:if(void 0!==n.newestInputFileTime)return Z(t,e.Diagnostics.Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2,Q(t,r),Q(t,n.newestInputFileName||""),Q(t,n.oldestOutputFileName||""));break;case e.UpToDateStatusType.OutOfDateWithPrepend:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed,Q(t,r),Q(t,n.newerProjectName));case e.UpToDateStatusType.UpToDateWithUpstreamTypes:return Z(t,e.Diagnostics.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,Q(t,r));case e.UpToDateStatusType.UpstreamOutOfDate:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,Q(t,r),Q(t,n.upstreamProjectName));case e.UpToDateStatusType.UpstreamBlocked:return Z(t,n.upstreamProjectBlocked?e.Diagnostics.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:e.Diagnostics.Project_0_can_t_be_built_because_its_dependency_1_has_errors,Q(t,r),Q(t,n.upstreamProjectName));case e.UpToDateStatusType.Unbuildable:return Z(t,e.Diagnostics.Failed_to_parse_file_0_Colon_1,Q(t,r),n.reason);case e.UpToDateStatusType.TsVersionOutputOfDate:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,Q(t,r),n.version,e.version);case e.UpToDateStatusType.ContainerOnly:case e.UpToDateStatusType.ComputingUpstream:break;default:e.assertType(n)}}(t,r,n)}!function(e){e[e.None=0]="None",e[e.Success=1]="Success",e[e.DeclarationOutputUnchanged=2]="DeclarationOutputUnchanged",e[e.ConfigFileErrors=4]="ConfigFileErrors",e[e.SyntaxErrors=8]="SyntaxErrors",e[e.TypeErrors=16]="TypeErrors",e[e.DeclarationEmitErrors=32]="DeclarationEmitErrors",e[e.EmitErrors=64]="EmitErrors",e[e.AnyErrors=124]="AnyErrors"}(t||(t={})),e.isCircularBuildOrder=u,e.getBuildOrderFromAnyBuildOrder=d,e.createBuilderStatusReporter=p,e.createSolutionBuilderHost=function(t,r,n,i,a){void 0===t&&(t=e.sys);var o=f(t,r,n,i);return o.reportErrorSummary=a,o},e.createSolutionBuilderWithWatchHost=function(t,r,n,i,a){void 0===t&&(t=e.sys);var o=f(t,r,n,i),s=e.createWatchHost(t,a);return e.copyProperties(o,s),o},e.createSolutionBuilder=function(e,t,r){return X(!1,e,t,r)},e.createSolutionBuilderWithWatch=function(e,t,r,n){return X(!0,e,t,r,n)},function(e){e[e.Build=0]="Build",e[e.UpdateBundle=1]="UpdateBundle",e[e.UpdateOutputFileStamps=2]="UpdateOutputFileStamps"}(r=e.InvalidatedProjectKind||(e.InvalidatedProjectKind={})),function(e){e[e.CreateProgram=0]="CreateProgram",e[e.SyntaxDiagnostics=1]="SyntaxDiagnostics",e[e.SemanticDiagnostics=2]="SemanticDiagnostics",e[e.Emit=3]="Emit",e[e.EmitBundle=4]="EmitBundle",e[e.EmitBuildInfo=5]="EmitBuildInfo",e[e.BuildInvalidatedProjectOfBundle=6]="BuildInvalidatedProjectOfBundle",e[e.QueueReferencingProjects=7]="QueueReferencingProjects",e[e.Done=8]="Done"}(n||(n={}))}(d||(d={})),function(e){!function(t){t.ActionSet="action::set",t.ActionInvalidate="action::invalidate",t.ActionPackageInstalled="action::packageInstalled",t.EventTypesRegistry="event::typesRegistry",t.EventBeginInstallTypes="event::beginInstallTypes",t.EventEndInstallTypes="event::endInstallTypes",t.EventInitializationFailed="event::initializationFailed",function(e){e.GlobalCacheLocation="--globalTypingsCacheLocation",e.LogFile="--logFile",e.EnableTelemetry="--enableTelemetry",e.TypingSafeListLocation="--typingSafeListLocation",e.TypesMapLocation="--typesMapLocation",e.NpmLocation="--npmLocation",e.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"}(t.Arguments||(t.Arguments={})),t.hasArgument=function(t){return e.sys.args.indexOf(t)>=0},t.findArgument=function(t){var r=e.sys.args.indexOf(t);return r>=0&&r<e.sys.args.length-1?e.sys.args[r+1]:void 0},t.nowString=function(){var t=new Date;return e.padLeft(t.getHours().toString(),2,"0")+":"+e.padLeft(t.getMinutes().toString(),2,"0")+":"+e.padLeft(t.getSeconds().toString(),2,"0")+"."+e.padLeft(t.getMilliseconds().toString(),3,"0")}}(e.server||(e.server={}))}(d||(d={})),function(e){!function(t){function r(t,r){return new e.Version(e.getProperty(r,"ts"+e.versionMajorMinor)||e.getProperty(r,"latest")).compareTo(t.version)<=0}function n(e){return t.nodeCoreModules.has(e)?"node":e}t.isTypingUpToDate=r,t.nodeCoreModuleList=["assert","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","dns","domain","events","fs","http","https","http2","inspector","net","os","path","perf_hooks","process","punycode","querystring","readline","repl","stream","string_decoder","timers","tls","tty","url","util","v8","vm","zlib"],t.nodeCoreModules=new e.Set(t.nodeCoreModuleList),t.nonRelativeModuleNameForTypingCache=n,t.loadSafeList=function(t,r){var n=e.readConfigFile(r,(function(e){return t.readFile(e)}));return new e.Map(e.getEntries(n.config))},t.loadTypesMap=function(t,r){var n=e.readConfigFile(r,(function(e){return t.readFile(e)}));if(n.config)return new e.Map(e.getEntries(n.config.simpleMap))},t.discoverTypings=function(t,i,a,o,s,c,l,u,d){if(!l||!l.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};var p=new e.Map;a=e.mapDefined(a,(function(t){var r=e.normalizePath(t);if(e.hasJSFileExtension(r))return r}));var f=[];l.include&&S(l.include,"Explicitly included types");var m=l.exclude||[],g=new e.Set(a.map(e.getDirectoryPath));g.add(o),g.forEach((function(t){w(e.combinePaths(t,"package.json"),f),w(e.combinePaths(t,"bower.json"),f),D(e.combinePaths(t,"bower_components"),f),D(e.combinePaths(t,"node_modules"),f)})),l.disableFilenameBasedTypeAcquisition||function(t){var r=e.mapDefined(t,(function(t){if(e.hasJSFileExtension(t)){var r=e.removeFileExtension(e.getBaseFileName(t.toLowerCase())),n=e.removeMinAndVersionNumbers(r);return s.get(n)}}));r.length&&S(r,"Inferred typings from file names");var n=e.some(t,(function(t){return e.fileExtensionIs(t,".jsx")}));n&&(i&&i("Inferred 'react' typings due to presence of '.jsx' extension"),x("react"))}(a),u&&S(e.deduplicate(u.map(n),e.equateStringsCaseSensitive,e.compareStringsCaseSensitive),"Inferred typings from unresolved imports"),c.forEach((function(e,t){var n=d.get(t);p.has(t)&&void 0===p.get(t)&&void 0!==n&&r(e,n)&&p.set(t,e.typingLocation)}));for(var _=0,h=m;_<h.length;_++){var y=h[_];p.delete(y)&&i&&i("Typing for "+y+" is in exclude list, will be ignored.")}var v=[],b=[];p.forEach((function(e,t){void 0!==e?b.push(e):v.push(t)}));var k={cachedTypingPaths:b,newTypingNames:v,filesToWatch:f};return i&&i("Result: "+JSON.stringify(k)),k;function x(e){p.has(e)||p.set(e,void 0)}function S(t,r){i&&i(r+": "+JSON.stringify(t)),e.forEach(t,x)}function w(r,n){if(t.fileExists(r)){n.push(r);var i=e.readConfigFile(r,(function(e){return t.readFile(e)})).config;S(e.flatMap([i.dependencies,i.devDependencies,i.optionalDependencies,i.peerDependencies],e.getOwnKeys),"Typing names in '"+r+"' dependencies")}}function D(r,n){if(n.push(r),t.directoryExists(r)){var a=t.readDirectory(r,[".json"],void 0,void 0,2);i&&i("Searching for typing names in "+r+"; all files: "+JSON.stringify(a));for(var o=[],s=0,c=a;s<c.length;s++){var l=c[s],u=e.normalizePath(l),d=e.getBaseFileName(u);if("package.json"===d||"bower.json"===d){var f=e.readConfigFile(u,(function(e){return t.readFile(e)})).config;if(("package.json"!==d||!f._requiredBy||0!==e.filter(f._requiredBy,(function(e){return"#"===e[0]||"/"===e})).length)&&f.name){var m=f.types||f.typings;if(m){var g=e.getNormalizedAbsolutePath(m,e.getDirectoryPath(u));i&&i(" Package '"+f.name+"' provides its own types."),p.set(f.name,g)}else o.push(f.name)}}}S(o," Found package names")}}},function(e){e[e.Ok=0]="Ok",e[e.EmptyName=1]="EmptyName",e[e.NameTooLong=2]="NameTooLong",e[e.NameStartsWithDot=3]="NameStartsWithDot",e[e.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",e[e.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters"}(t.NameValidationResult||(t.NameValidationResult={}));var i=214;function a(e,t){if(!e)return 1;if(e.length>i)return 2;if(46===e.charCodeAt(0))return 3;if(95===e.charCodeAt(0))return 4;if(t){var r=/^@([^/]+)\/([^/]+)$/.exec(e);if(r){var n=a(r[1],!1);if(0!==n)return{name:r[1],isScopeName:!0,result:n};var o=a(r[2],!1);return 0!==o?{name:r[2],isScopeName:!1,result:o}:0}}return encodeURIComponent(e)!==e?5:0}function o(t,r,n,a){var o=a?"Scope":"Package";switch(r){case 1:return"'"+t+"':: "+o+" name '"+n+"' cannot be empty";case 2:return"'"+t+"':: "+o+" name '"+n+"' should be less than "+i+" characters";case 3:return"'"+t+"':: "+o+" name '"+n+"' cannot start with '.'";case 4:return"'"+t+"':: "+o+" name '"+n+"' cannot start with '_'";case 5:return"'"+t+"':: "+o+" name '"+n+"' contains non URI safe characters";case 0:return e.Debug.fail();default:throw e.Debug.assertNever(r)}}t.validatePackageName=function(e){return a(e,!0)},t.renderPackageNameValidationFailure=function(e,t){return"object"==typeof e?o(t,e.result,e.name,e.isScopeName):o(t,e,t,!1)}}(e.JsTyping||(e.JsTyping={}))}(d||(d={})),function(e){var t,r;function n(e){return{indentSize:4,tabSize:4,newLineCharacter:e||"\n",convertTabsToSpaces:!0,indentStyle:t.Smart,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:r.Ignore,trimTrailingWhitespace:!0}}!function(e){var t=function(){function e(e){this.text=e}return e.prototype.getText=function(e,t){return 0===e&&t===this.text.length?this.text:this.text.substring(e,t)},e.prototype.getLength=function(){return this.text.length},e.prototype.getChangeRange=function(){},e}();e.fromString=function(e){return new t(e)}}(e.ScriptSnapshot||(e.ScriptSnapshot={})),function(e){e[e.Dependencies=1]="Dependencies",e[e.DevDependencies=2]="DevDependencies",e[e.PeerDependencies=4]="PeerDependencies",e[e.OptionalDependencies=8]="OptionalDependencies",e[e.All=15]="All"}(e.PackageJsonDependencyGroup||(e.PackageJsonDependencyGroup={})),function(e){e[e.Off=0]="Off",e[e.On=1]="On",e[e.Auto=2]="Auto"}(e.PackageJsonAutoImportPreference||(e.PackageJsonAutoImportPreference={})),function(e){e[e.Semantic=0]="Semantic",e[e.PartialSemantic=1]="PartialSemantic",e[e.Syntactic=2]="Syntactic"}(e.LanguageServiceMode||(e.LanguageServiceMode={})),e.emptyOptions={},function(e){e.Original="original",e.TwentyTwenty="2020"}(e.SemanticClassificationFormat||(e.SemanticClassificationFormat={})),function(e){e.none="none",e.definition="definition",e.reference="reference",e.writtenReference="writtenReference"}(e.HighlightSpanKind||(e.HighlightSpanKind={})),function(e){e[e.None=0]="None",e[e.Block=1]="Block",e[e.Smart=2]="Smart"}(t=e.IndentStyle||(e.IndentStyle={})),function(e){e.Ignore="ignore",e.Insert="insert",e.Remove="remove"}(r=e.SemicolonPreference||(e.SemicolonPreference={})),e.getDefaultFormatCodeSettings=n,e.testFormatSettings=n("\n"),function(e){e[e.aliasName=0]="aliasName",e[e.className=1]="className",e[e.enumName=2]="enumName",e[e.fieldName=3]="fieldName",e[e.interfaceName=4]="interfaceName",e[e.keyword=5]="keyword",e[e.lineBreak=6]="lineBreak",e[e.numericLiteral=7]="numericLiteral",e[e.stringLiteral=8]="stringLiteral",e[e.localName=9]="localName",e[e.methodName=10]="methodName",e[e.moduleName=11]="moduleName",e[e.operator=12]="operator",e[e.parameterName=13]="parameterName",e[e.propertyName=14]="propertyName",e[e.punctuation=15]="punctuation",e[e.space=16]="space",e[e.text=17]="text",e[e.typeParameterName=18]="typeParameterName",e[e.enumMemberName=19]="enumMemberName",e[e.functionName=20]="functionName",e[e.regularExpressionLiteral=21]="regularExpressionLiteral"}(e.SymbolDisplayPartKind||(e.SymbolDisplayPartKind={})),function(e){e.Comment="comment",e.Region="region",e.Code="code",e.Imports="imports"}(e.OutliningSpanKind||(e.OutliningSpanKind={})),function(e){e[e.JavaScript=0]="JavaScript",e[e.SourceMap=1]="SourceMap",e[e.Declaration=2]="Declaration"}(e.OutputFileType||(e.OutputFileType={})),function(e){e[e.None=0]="None",e[e.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",e[e.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",e[e.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",e[e.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",e[e.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",e[e.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition"}(e.EndOfLineState||(e.EndOfLineState={})),function(e){e[e.Punctuation=0]="Punctuation",e[e.Keyword=1]="Keyword",e[e.Operator=2]="Operator",e[e.Comment=3]="Comment",e[e.Whitespace=4]="Whitespace",e[e.Identifier=5]="Identifier",e[e.NumberLiteral=6]="NumberLiteral",e[e.BigIntLiteral=7]="BigIntLiteral",e[e.StringLiteral=8]="StringLiteral",e[e.RegExpLiteral=9]="RegExpLiteral"}(e.TokenClass||(e.TokenClass={})),function(e){e.unknown="",e.warning="warning",e.keyword="keyword",e.scriptElement="script",e.moduleElement="module",e.classElement="class",e.localClassElement="local class",e.structElement="struct",e.interfaceElement="interface",e.typeElement="type",e.enumElement="enum",e.enumMemberElement="enum member",e.variableElement="var",e.localVariableElement="local var",e.functionElement="function",e.localFunctionElement="local function",e.memberFunctionElement="method",e.memberGetAccessorElement="getter",e.memberSetAccessorElement="setter",e.memberVariableElement="property",e.constructorImplementationElement="constructor",e.callSignatureElement="call",e.indexSignatureElement="index",e.constructSignatureElement="construct",e.parameterElement="parameter",e.typeParameterElement="type parameter",e.primitiveType="primitive type",e.label="label",e.alias="alias",e.constElement="const",e.letElement="let",e.directory="directory",e.externalModuleName="external module name",e.jsxAttribute="JSX attribute",e.string="string"}(e.ScriptElementKind||(e.ScriptElementKind={})),function(e){e.none="",e.publicMemberModifier="public",e.privateMemberModifier="private",e.protectedMemberModifier="protected",e.exportedModifier="export",e.ambientModifier="declare",e.staticModifier="static",e.abstractModifier="abstract",e.optionalModifier="optional",e.deprecatedModifier="deprecated",e.dtsModifier=".d.ts",e.tsModifier=".ts",e.tsxModifier=".tsx",e.jsModifier=".js",e.jsxModifier=".jsx",e.jsonModifier=".json",e.etsModifier=".ets",e.detsModifier=".d.ets"}(e.ScriptElementKindModifier||(e.ScriptElementKindModifier={})),function(e){e.comment="comment",e.identifier="identifier",e.keyword="keyword",e.numericLiteral="number",e.bigintLiteral="bigint",e.operator="operator",e.stringLiteral="string",e.whiteSpace="whitespace",e.text="text",e.punctuation="punctuation",e.className="class name",e.enumName="enum name",e.interfaceName="interface name",e.moduleName="module name",e.typeParameterName="type parameter name",e.typeAliasName="type alias name",e.parameterName="parameter name",e.docCommentTagName="doc comment tag name",e.jsxOpenTagName="jsx open tag name",e.jsxCloseTagName="jsx close tag name",e.jsxSelfClosingTagName="jsx self closing tag name",e.jsxAttribute="jsx attribute",e.jsxText="jsx text",e.jsxAttributeStringLiteralValue="jsx attribute string literal value"}(e.ClassificationTypeNames||(e.ClassificationTypeNames={})),function(e){e[e.comment=1]="comment",e[e.identifier=2]="identifier",e[e.keyword=3]="keyword",e[e.numericLiteral=4]="numericLiteral",e[e.operator=5]="operator",e[e.stringLiteral=6]="stringLiteral",e[e.regularExpressionLiteral=7]="regularExpressionLiteral",e[e.whiteSpace=8]="whiteSpace",e[e.text=9]="text",e[e.punctuation=10]="punctuation",e[e.className=11]="className",e[e.enumName=12]="enumName",e[e.interfaceName=13]="interfaceName",e[e.moduleName=14]="moduleName",e[e.typeParameterName=15]="typeParameterName",e[e.typeAliasName=16]="typeAliasName",e[e.parameterName=17]="parameterName",e[e.docCommentTagName=18]="docCommentTagName",e[e.jsxOpenTagName=19]="jsxOpenTagName",e[e.jsxCloseTagName=20]="jsxCloseTagName",e[e.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",e[e.jsxAttribute=22]="jsxAttribute",e[e.jsxText=23]="jsxText",e[e.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",e[e.bigintLiteral=25]="bigintLiteral"}(e.ClassificationType||(e.ClassificationType={}))}(d||(d={})),function(e){function t(t){switch(t.kind){case 251:return e.isInJSFile(t)&&e.getJSDocEnumTag(t)?7:1;case 161:case 199:case 164:case 163:case 291:case 292:case 166:case 165:case 167:case 168:case 169:case 253:case 209:case 210:case 290:case 283:return 1;case 160:case 256:case 257:case 178:return 2;case 334:return void 0===t.name?3:2;case 294:case 254:case 255:return 3;case 259:return e.isAmbientModule(t)||1===e.getModuleInstanceState(t)?5:4;case 258:case 267:case 268:case 263:case 264:case 269:case 270:return 7;case 300:return 5}return 7}function r(t){for(;158===t.parent.kind;)t=t.parent;return e.isInternalModuleImportEqualsDeclaration(t.parent)&&t.parent.moduleReference===t}function n(e){return e.expression}function i(e){return e.tag}function o(e){return e.tagName}function s(t,r,n,i,a){var o=i?l(t):c(t);return a&&(o=e.skipOuterExpressions(o)),!!o&&!!o.parent&&r(o.parent)&&n(o.parent)===o}function c(e){return p(e)?e.parent:e}function l(e){return p(e)||f(e)?e.parent:e}function u(t){var r;return e.isIdentifier(t)&&(null===(r=e.tryCast(t.parent,e.isBreakOrContinueStatement))||void 0===r?void 0:r.label)===t}function d(t){var r;return e.isIdentifier(t)&&(null===(r=e.tryCast(t.parent,e.isLabeledStatement))||void 0===r?void 0:r.label)===t}function p(t){var r;return(null===(r=e.tryCast(t.parent,e.isPropertyAccessExpression))||void 0===r?void 0:r.name)===t}function f(t){var r;return(null===(r=e.tryCast(t.parent,e.isElementAccessExpression))||void 0===r?void 0:r.argumentExpression)===t}e.scanner=e.createScanner(99,!0),function(e){e[e.None=0]="None",e[e.Value=1]="Value",e[e.Type=2]="Type",e[e.Namespace=4]="Namespace",e[e.All=7]="All"}(e.SemanticMeaning||(e.SemanticMeaning={})),e.getMeaningFromDeclaration=t,e.getMeaningFromLocation=function(n){return 300===(n=P(n)).kind?1:269===n.parent.kind||275===n.parent.kind||268===n.parent.kind||265===n.parent.kind||e.isImportEqualsDeclaration(n.parent)&&n===n.parent.name?7:r(n)?function(t){var r=158===t.kind?t:e.isQualifiedName(t.parent)&&t.parent.right===t?t.parent:void 0;return r&&263===r.parent.kind?7:4}(n):e.isDeclarationName(n)?t(n.parent):e.isEntityName(n)&&e.isJSDocNameReference(n.parent)?7:function(t){e.isRightSideOfQualifiedNameOrPropertyAccess(t)&&(t=t.parent);switch(t.kind){case 108:return!e.isExpressionNode(t);case 188:return!0}switch(t.parent.kind){case 174:return!0;case 196:return!t.parent.isTypeOf;case 225:return!e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)}return!1}(n)?2:function(e){return function(e){var t=e,r=!0;if(158===t.parent.kind){for(;t.parent&&158===t.parent.kind;)t=t.parent;r=t.right===e}return 174===t.parent.kind&&!r}(e)||function(e){var t=e,r=!0;if(202===t.parent.kind){for(;t.parent&&202===t.parent.kind;)t=t.parent;r=t.name===e}if(!r&&225===t.parent.kind&&289===t.parent.parent.kind){var n=t.parent.parent.parent;return(254===n.kind||255===n.kind)&&117===t.parent.parent.token||256===n.kind&&94===t.parent.parent.token}return!1}(e)}(n)?4:e.isTypeParameterDeclaration(n.parent)?(e.Debug.assert(e.isJSDocTemplateTag(n.parent.parent)),2):e.isLiteralTypeNode(n.parent)?3:1},e.isInRightSideOfInternalImportEqualsDeclaration=r,e.isCallExpressionTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isCallExpression,n,r,i)},e.isNewExpressionTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isNewExpression,n,r,i)},e.isCallOrNewExpressionTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isCallOrNewExpression,n,r,i)},e.isTaggedTemplateTag=function(t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),s(t,e.isTaggedTemplateExpression,i,r,n)},e.isDecoratorTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isDecorator,n,r,i)},e.isJsxOpeningLikeElementTagName=function(t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),s(t,e.isJsxOpeningLikeElement,o,r,n)},e.climbPastPropertyAccess=c,e.climbPastPropertyOrElementAccess=l,e.getTargetLabel=function(e,t){for(;e;){if(247===e.kind&&e.label.escapedText===t)return e.label;e=e.parent}},e.hasPropertyAccessExpressionWithName=function(t,r){return!!e.isPropertyAccessExpression(t.expression)&&t.expression.name.text===r},e.isJumpStatementTarget=u,e.isLabelOfLabeledStatement=d,e.isLabelName=function(e){return d(e)||u(e)},e.isTagName=function(t){var r;return(null===(r=e.tryCast(t.parent,e.isJSDocTag))||void 0===r?void 0:r.tagName)===t},e.isRightSideOfQualifiedName=function(t){var r;return(null===(r=e.tryCast(t.parent,e.isQualifiedName))||void 0===r?void 0:r.right)===t},e.isRightSideOfPropertyAccess=p,e.isArgumentExpressionOfElementAccess=f,e.isNameOfModuleDeclaration=function(t){var r;return(null===(r=e.tryCast(t.parent,e.isModuleDeclaration))||void 0===r?void 0:r.name)===t},e.isNameOfFunctionDeclaration=function(t){var r;return e.isIdentifier(t)&&(null===(r=e.tryCast(t.parent,e.isFunctionLike))||void 0===r?void 0:r.name)===t},e.isLiteralNameOfPropertyDeclarationOrIndexAccess=function(t){switch(t.parent.kind){case 164:case 163:case 291:case 294:case 166:case 165:case 168:case 169:case 259:return e.getNameOfDeclaration(t.parent)===t;case 203:return t.parent.argumentExpression===t;case 159:return!0;case 192:return 190===t.parent.parent.kind;default:return!1}},e.isExpressionOfExternalModuleImportEqualsDeclaration=function(t){return e.isExternalModuleImportEqualsDeclaration(t.parent.parent)&&e.getExternalModuleImportEqualsDeclarationExpression(t.parent.parent)===t},e.getContainerNode=function(t){for(e.isJSDocTypeAlias(t)&&(t=t.parent.parent);;){if(!(t=t.parent))return;switch(t.kind){case 300:case 166:case 165:case 253:case 209:case 168:case 169:case 254:case 255:case 256:case 258:case 259:return t}}},e.getNodeKind=function t(r){switch(r.kind){case 300:return e.isExternalModule(r)?"module":"script";case 259:return"module";case 254:case 223:return"class";case 255:return"struct";case 256:return"interface";case 257:case 327:case 334:return"type";case 258:return"enum";case 251:return c(r);case 199:return c(e.getRootDeclaration(r));case 210:case 253:case 209:return"function";case 168:return"getter";case 169:return"setter";case 166:case 165:return"method";case 291:var n=r.initializer;return e.isFunctionLike(n)?"method":"property";case 164:case 163:case 292:case 293:return"property";case 172:return"index";case 171:return"construct";case 170:return"call";case 167:return"constructor";case 160:return"type parameter";case 294:return"enum member";case 161:return e.hasSyntacticModifier(r,92)?"property":"parameter";case 263:case 268:case 273:case 266:case 272:return"alias";case 218:var i=e.getAssignmentDeclarationKind(r),a=r.right;switch(i){case 7:case 8:case 9:case 0:return"";case 1:case 2:var o=t(a);return""===o?"const":o;case 3:case 5:return e.isFunctionExpression(a)?"method":"property";case 4:return"property";case 6:return"local class";default:return e.assertType(i),""}case 78:return e.isImportClause(r.parent)?"alias":"";case 269:var s=t(r.expression);return""===s?"const":s;default:return""}function c(t){return e.isVarConst(t)?"const":e.isLet(t)?"let":"var"}},e.isThis=function(t){switch(t.kind){case 108:return!0;case 78:return e.identifierIsThisKeyword(t)&&161===t.parent.kind;default:return!1}};var m=/^\/\/\/\s*</;function g(e,t){return h(e.pos,e.end,t)}function _(e,t){return e.pos<t&&t<e.end}function h(e,t,r){return e<=r.pos&&t>=r.end}function y(e,t,r,n){return Math.max(e,r)<Math.min(t,n)}function v(t,r){if(void 0===t||e.nodeIsMissing(t))return!1;switch(t.kind){case 254:case 255:case 256:case 258:case 201:case 197:case 178:case 232:case 260:case 261:case 267:case 271:return b(t,19,r);case 290:return v(t.block,r);case 205:if(!t.arguments)return!0;case 204:case 208:case 187:return b(t,21,r);case 175:case 176:return v(t.type,r);case 167:case 168:case 169:case 253:case 209:case 166:case 165:case 171:case 170:case 210:return t.body?v(t.body,r):t.type?v(t.type,r):k(t,21,r);case 259:return!!t.body&&v(t.body,r);case 236:return t.elseStatement?v(t.elseStatement,r):v(t.thenStatement,r);case 235:return v(t.expression,r)||k(t,26,r);case 200:case 198:case 203:case 159:case 180:return b(t,23,r);case 172:return t.type?v(t.type,r):k(t,23,r);case 287:case 288:return!1;case 239:case 240:case 241:case 238:return v(t.statement,r);case 237:return k(t,115,r)?b(t,21,r):v(t.statement,r);case 177:return v(t.exprName,r);case 213:case 212:case 214:case 221:case 222:return v(t.expression,r);case 206:return v(t.template,r);case 220:return v(e.lastOrUndefined(t.templateSpans),r);case 230:return e.nodeIsPresent(t.literal);case 270:case 264:return e.nodeIsPresent(t.moduleSpecifier);case 216:return v(t.operand,r);case 218:return v(t.right,r);case 219:return v(t.whenFalse,r);default:return!0}}function b(t,r,n){var i=t.getChildren(n);if(i.length){var a=e.last(i);if(a.kind===r)return!0;if(26===a.kind&&1!==i.length)return i[i.length-2].kind===r}return!1}function k(e,t,r){return!!x(e,t,r)}function x(t,r,n){return e.find(t.getChildren(n),(function(e){return e.kind===r}))}function S(t){var r=e.find(t.parent.getChildren(),(function(r){return e.isSyntaxList(r)&&g(r,t)}));return e.Debug.assert(!r||e.contains(r.getChildren(),t)),r}function w(e){return 88===e.kind}function D(e){return 83===e.kind}function E(e){return 98===e.kind}function T(t,r){if(!r)switch(t.kind){case 254:case 223:case 255:return function(t){if(e.isNamedDeclaration(t))return t.name;if(e.isClassDeclaration(t)||e.isStructDeclaration(t)){var r=e.find(t.modifiers,w);if(r)return r}if(e.isClassExpression(t)){var n=e.find(t.getChildren(),D);if(n)return n}}(t);case 253:case 209:return function(t){if(e.isNamedDeclaration(t))return t.name;if(e.isFunctionDeclaration(t)){var r=e.find(t.modifiers,w);if(r)return r}if(e.isFunctionExpression(t)){var n=e.find(t.getChildren(),E);if(n)return n}}(t)}if(e.isNamedDeclaration(t))return t.name}function C(t,r){if(t.importClause){if(t.importClause.name&&t.importClause.namedBindings)return;if(t.importClause.name)return t.importClause.name;if(t.importClause.namedBindings){if(e.isNamedImports(t.importClause.namedBindings)){var n=e.singleOrUndefined(t.importClause.namedBindings.elements);if(!n)return;return n.name}if(e.isNamespaceImport(t.importClause.namedBindings))return t.importClause.namedBindings.name}}if(!r)return t.moduleSpecifier}function A(t,r){if(t.exportClause){if(e.isNamedExports(t.exportClause)){if(!e.singleOrUndefined(t.exportClause.elements))return;return t.exportClause.elements[0].name}if(e.isNamespaceExport(t.exportClause))return t.exportClause.name}if(!r)return t.moduleSpecifier}function N(t,r){var n=t.parent;if((e.isModifier(t)&&(r||88!==t.kind)?e.contains(n.modifiers,t):83===t.kind?e.isClassDeclaration(n)||e.isClassExpression(t):98===t.kind?e.isFunctionDeclaration(n)||e.isFunctionExpression(t):118===t.kind?e.isInterfaceDeclaration(n):92===t.kind?e.isEnumDeclaration(n):150===t.kind?e.isTypeAliasDeclaration(n):141===t.kind||140===t.kind?e.isModuleDeclaration(n):100===t.kind?e.isImportEqualsDeclaration(n):135===t.kind?e.isGetAccessorDeclaration(n):147===t.kind&&e.isSetAccessorDeclaration(n))&&(a=T(n,r)))return a;if((113===t.kind||85===t.kind||119===t.kind)&&e.isVariableDeclarationList(n)&&1===n.declarations.length){var i=n.declarations[0];if(e.isIdentifier(i.name))return i.name}if(150===t.kind){if(e.isImportClause(n)&&n.isTypeOnly)if(a=C(n.parent,r))return a;if(e.isExportDeclaration(n)&&n.isTypeOnly)if(a=A(n,r))return a}if(127===t.kind){if(e.isImportSpecifier(n)&&n.propertyName||e.isExportSpecifier(n)&&n.propertyName||e.isNamespaceImport(n)||e.isNamespaceExport(n))return n.name;if(e.isExportDeclaration(n)&&n.exportClause&&e.isNamespaceExport(n.exportClause))return n.exportClause.name}if(100===t.kind&&e.isImportDeclaration(n)&&(a=C(n,r)))return a;if(93===t.kind){if(e.isExportDeclaration(n))if(a=A(n,r))return a;if(e.isExportAssignment(n))return e.skipOuterExpressions(n.expression)}if(144===t.kind&&e.isExternalModuleReference(n))return n.expression;if(154===t.kind&&(e.isImportDeclaration(n)||e.isExportDeclaration(n))&&n.moduleSpecifier)return n.moduleSpecifier;if((94===t.kind||117===t.kind)&&e.isHeritageClause(n)&&n.token===t.kind){var a=function(e){if(1===e.types.length)return e.types[0].expression}(n);if(a)return a}if(94===t.kind){if(e.isTypeParameterDeclaration(n)&&n.constraint&&e.isTypeReferenceNode(n.constraint))return n.constraint.typeName;if(e.isConditionalTypeNode(n)&&e.isTypeReferenceNode(n.extendsType))return n.extendsType.typeName}if(136===t.kind&&e.isInferTypeNode(n))return n.typeParameter.name;if(101===t.kind&&e.isTypeParameterDeclaration(n)&&e.isMappedTypeNode(n.parent))return n.name;if(139===t.kind&&e.isTypeOperatorNode(n)&&139===n.operator&&e.isTypeReferenceNode(n.type))return n.type.typeName;if(143===t.kind&&e.isTypeOperatorNode(n)&&143===n.operator&&e.isArrayTypeNode(n.type)&&e.isTypeReferenceNode(n.type.elementType))return n.type.elementType.typeName;if(!r){if((103===t.kind&&e.isNewExpression(n)||114===t.kind&&e.isVoidExpression(n)||112===t.kind&&e.isTypeOfExpression(n)||131===t.kind&&e.isAwaitExpression(n)||125===t.kind&&e.isYieldExpression(n)||89===t.kind&&e.isDeleteExpression(n))&&n.expression)return e.skipOuterExpressions(n.expression);if((101===t.kind||102===t.kind)&&e.isBinaryExpression(n)&&n.operatorToken===t)return e.skipOuterExpressions(n.right);if(127===t.kind&&e.isAsExpression(n)&&e.isTypeReferenceNode(n.type))return n.type.typeName;if(101===t.kind&&e.isForInStatement(n)||157===t.kind&&e.isForOfStatement(n))return e.skipOuterExpressions(n.expression)}return t}function P(e){return N(e,!1)}function I(e,t,r){return O(e,t,!1,r,!1)}function F(e,t){return O(e,t,!0,void 0,!1)}function O(e,t,r,n,i){var a=e;e:for(;;){for(var o=0,s=a.getChildren(e);o<s.length;o++){var c=s[o];if((r?c.getFullStart():c.getStart(e,!0))>t)break;var l=c.getEnd();if(t<l||t===l&&(1===c.kind||i)){a=c;continue e}if(n&&l===t){var u=M(t,e,c);if(u&&n(u))return u}}return a}}function R(t,r,n){return function r(i){if(e.isToken(i)&&i.pos===t.end)return i;return e.firstDefined(i.getChildren(n),(function(e){return(e.pos<=t.pos&&e.end>t.end||e.pos===t.end)&&K(e,n)?r(e):void 0}))}(r)}function M(t,r,n,i){var a=function a(o){if(L(o)&&1!==o.kind)return o;var s=o.getChildren(r),c=e.binarySearchKey(s,t,(function(e,t){return t}),(function(e,r){return t<s[e].end?!s[e-1]||t>=s[e-1].end?0:1:-1}));if(c>=0&&s[c]){var l=s[c];if(t<l.end){if(l.getStart(r,!i)>=t||!K(l,r)||z(l)){var u=B(s,c,r);return u&&j(u,r)}return a(l)}}e.Debug.assert(void 0!==n||300===o.kind||1===o.kind||e.isJSDocCommentContainingNode(o));var d=B(s,s.length,r);return d&&j(d,r)}(n||r);return e.Debug.assert(!(a&&z(a))),a}function L(t){return e.isToken(t)&&!z(t)}function j(e,t){if(L(e))return e;var r=e.getChildren(t);if(0===r.length)return e;var n=B(r,r.length,t);return n&&j(n,t)}function B(t,r,n){for(var i=r-1;i>=0;i--){if(z(t[i]))e.Debug.assert(i>0,"`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(K(t[i],n))return t[i]}}function z(t){return e.isJsxText(t)&&t.containsOnlyTriviaWhiteSpaces}function U(t,r,n){var i=e.tokenToString(t.kind),a=e.tokenToString(r),o=t.getFullStart(),s=n.text.lastIndexOf(a,o);if(-1!==s){if(n.text.lastIndexOf(i,o-1)<s){var c=M(s+1,n);if(c&&c.kind===r)return c}for(var l=t.kind,u=0;;){var d=M(t.getFullStart(),n);if(!d)return;if((t=d).kind===r){if(0===u)return t;u--}else t.kind===l&&u++}}}function q(e,t,r){return t?e.getNonNullableType():r?e.getNonOptionalType():e}function J(t,r,n){var i=n.getTypeAtLocation(t);return e.isOptionalChain(t.parent)&&(i=q(i,e.isOptionalChainRoot(t.parent),!0)),(e.isNewExpression(t.parent)?i.getConstructSignatures():i.getCallSignatures()).filter((function(e){return!!e.typeParameters&&e.typeParameters.length>=r}))}function V(t,r){if(-1!==r.text.lastIndexOf("<",t?t.pos:r.text.length))for(var n=t,i=0,a=0;n;){switch(n.kind){case 29:if((n=M(n.getFullStart(),r))&&28===n.kind&&(n=M(n.getFullStart(),r)),!n||!e.isIdentifier(n))return;if(!i)return e.isDeclarationName(n)?void 0:{called:n,nTypeArguments:a};i--;break;case 49:i=3;break;case 48:i=2;break;case 31:i++;break;case 19:if(!(n=U(n,18,r)))return;break;case 21:if(!(n=U(n,20,r)))return;break;case 23:if(!(n=U(n,22,r)))return;break;case 27:a++;break;case 38:case 78:case 10:case 8:case 9:case 110:case 95:case 112:case 94:case 139:case 24:case 51:case 57:case 58:break;default:if(e.isTypeNode(n))break;return}n=M(n.getFullStart(),r)}}function H(t,r,n){return e.formatting.getRangeOfEnclosingComment(t,r,void 0,n)}function K(e,t){return 1===e.kind?!!e.jsDoc:0!==e.getWidth(t)}function W(e,t,r){var n=H(e,t,void 0);return!!n&&r===m.test(e.text.substring(n.pos,n.end))}function G(t,r,n){return e.createTextSpanFromBounds(t.getStart(r),(n||t).getEnd())}function $(t){if(!t.isUnterminated)return e.createTextSpanFromBounds(t.getStart()+1,t.getEnd()-1)}function Y(e,t){return{span:e,newText:t}}function X(e){return 150===e.kind}function Q(t,r){return{fileExists:function(e){return t.fileExists(e)},getCurrentDirectory:function(){return r.getCurrentDirectory()},readFile:e.maybeBind(r,r.readFile),useCaseSensitiveFileNames:e.maybeBind(r,r.useCaseSensitiveFileNames),getSymlinkCache:e.maybeBind(r,r.getSymlinkCache)||t.getSymlinkCache,getGlobalTypingsCacheLocation:e.maybeBind(r,r.getGlobalTypingsCacheLocation),getSourceFiles:function(){return t.getSourceFiles()},redirectTargetsMap:t.redirectTargetsMap,getProjectReferenceRedirect:function(e){return t.getProjectReferenceRedirect(e)},isSourceOfProjectReferenceRedirect:function(e){return t.isSourceOfProjectReferenceRedirect(e)},getNearestAncestorDirectoryWithPackageJson:e.maybeBind(r,r.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:function(){return t.getFileIncludeReasons()}}}function Z(e,t){return a(a({},Q(e,t)),{getCommonSourceDirectory:function(){return e.getCommonSourceDirectory()}})}function ee(t,r,n,i,a){return e.factory.createImportDeclaration(void 0,void 0,t||r?e.factory.createImportClause(!!a,t,r&&r.length?e.factory.createNamedImports(r):void 0):void 0,"string"==typeof n?te(n,i):n)}function te(t,r){return e.factory.createStringLiteral(t,0===r)}function re(t,r){return e.isStringDoubleQuoted(t,r)?1:0}function ne(t,r){if(r.quotePreference&&"auto"!==r.quotePreference)return"single"===r.quotePreference?0:1;var n=t.imports&&e.find(t.imports,(function(t){return e.isStringLiteral(t)&&!e.nodeIsSynthesized(t.parent)}));return n?re(n,t):1}function ie(t){return"default"!==t.escapedName?t.escapedName:e.firstDefined(t.declarations,(function(t){var r=e.getNameOfDeclaration(t);return r&&78===r.kind?r.escapedText:void 0}))}function ae(t,r,n){return e.textSpanContainsPosition(t,r.getStart(n))&&r.getEnd()<=e.textSpanEnd(t)}function oe(e,t){return!!e&&!!t&&e.start===t.start&&e.length===t.length}function se(e){return e.declarations&&e.declarations.length>0&&161===e.declarations[0].kind}e.getLineStartPositionForPosition=function(t,r){return e.getLineStarts(r)[r.getLineAndCharacterOfPosition(t).line]},e.rangeContainsRange=g,e.rangeContainsRangeExclusive=function(e,t){return _(e,t.pos)&&_(e,t.end)},e.rangeContainsPosition=function(e,t){return e.pos<=t&&t<=e.end},e.rangeContainsPositionExclusive=_,e.startEndContainsRange=h,e.rangeContainsStartEnd=function(e,t,r){return e.pos<=t&&e.end>=r},e.rangeOverlapsWithStartEnd=function(e,t,r){return y(e.pos,e.end,t,r)},e.nodeOverlapsWithStartEnd=function(e,t,r,n){return y(e.getStart(t),e.end,r,n)},e.startEndOverlapsWithStartEnd=y,e.positionBelongsToNode=function(t,r,n){return e.Debug.assert(t.pos<=r),r<t.end||!v(t,n)},e.findListItemInfo=function(t){var r=S(t);if(r){var n=r.getChildren();return{listItemIndex:e.indexOfNode(n,t),list:r}}},e.hasChildOfKind=k,e.findChildOfKind=x,e.findContainingList=S,e.getContextualTypeOrAncestorTypeNodeType=function(t,r){var n=r.getContextualType(t);if(n)return n;var i=function(t){var r;return e.findAncestor(t,(function(t){return e.isTypeNode(t)&&(r=t),!e.isQualifiedName(t.parent)&&!e.isTypeNode(t.parent)&&!e.isTypeElement(t.parent)})),r}(t);return i&&r.getTypeAtLocation(i)},e.getAdjustedReferenceLocation=P,e.getAdjustedRenameLocation=function(e){return N(e,!0)},e.getTouchingPropertyName=function(t,r){return I(t,r,(function(t){return e.isPropertyNameLiteral(t)||e.isKeyword(t.kind)||e.isPrivateIdentifier(t)}))},e.getTouchingToken=I,e.getTokenAtPosition=F,e.findTokenOnLeftOfPosition=function(t,r){var n=F(t,r);return e.isToken(n)&&r>n.getStart(t)&&r<n.getEnd()?n:M(r,t)},e.findNextToken=R,e.findPrecedingToken=M,e.isInString=function(t,r,n){if(void 0===n&&(n=M(r,t)),n&&e.isStringTextContainingNode(n)){var i=n.getStart(t),a=n.getEnd();if(i<r&&r<a)return!0;if(r===a)return!!n.isUnterminated}return!1},e.isInsideJsxElementOrAttribute=function(e,t){var r=F(e,t);return!!r&&(11===r.kind||(29===r.kind&&11===r.parent.kind||(29===r.kind&&286===r.parent.kind||(!(!r||19!==r.kind||286!==r.parent.kind)||29===r.kind&&279===r.parent.kind))))},e.isInTemplateString=function(t,r){var n=F(t,r);return e.isTemplateLiteralKind(n.kind)&&r>n.getStart(t)},e.isInJSXText=function(t,r){var n=F(t,r);return!!e.isJsxText(n)||(!(18!==n.kind||!e.isJsxExpression(n.parent)||!e.isJsxElement(n.parent.parent))||!(29!==n.kind||!e.isJsxOpeningLikeElement(n.parent)||!e.isJsxElement(n.parent.parent)))},e.isInsideJsxElement=function(e,t){return function(r){for(;r;)if(r.kind>=277&&r.kind<=286||11===r.kind||29===r.kind||31===r.kind||78===r.kind||19===r.kind||18===r.kind||43===r.kind)r=r.parent;else{if(276!==r.kind)return!1;if(t>r.getStart(e))return!0;r=r.parent}return!1}(F(e,t))},e.findPrecedingMatchingToken=U,e.removeOptionality=q,e.isPossiblyTypeArgumentPosition=function t(r,n,i){var a=V(r,n);return void 0!==a&&(e.isPartOfTypeNode(a.called)||0!==J(a.called,a.nTypeArguments,i).length||t(a.called,n,i))},e.getPossibleGenericSignatures=J,e.getPossibleTypeArgumentsInfo=V,e.isInComment=H,e.hasDocComment=function(t,r){var n=F(t,r);return!!e.findAncestor(n,e.isJSDoc)},e.getNodeModifiers=function(t,r){void 0===r&&(r=0);var n=[],i=e.isDeclaration(t)?e.getCombinedNodeFlagsAlwaysIncludeJSDoc(t)&~r:0;return 8&i&&n.push("private"),16&i&&n.push("protected"),4&i&&n.push("public"),32&i&&n.push("static"),128&i&&n.push("abstract"),1&i&&n.push("export"),8192&i&&n.push("deprecated"),8388608&t.flags&&n.push("declare"),269===t.kind&&n.push("export"),n.length>0?n.join(","):""},e.getTypeArgumentOrTypeParameterList=function(t){return 174===t.kind||204===t.kind?t.typeArguments:e.isFunctionLike(t)||254===t.kind||256===t.kind?t.typeParameters:void 0},e.isComment=function(e){return 2===e||3===e},e.isStringOrRegularExpressionOrTemplateLiteral=function(t){return!(10!==t&&13!==t&&!e.isTemplateLiteralKind(t))},e.isPunctuation=function(e){return 18<=e&&e<=77},e.isInsideTemplateLiteral=function(t,r,n){return e.isTemplateLiteralKind(t.kind)&&t.getStart(n)<r&&r<t.end||!!t.isUnterminated&&r===t.end},e.isAccessibilityModifier=function(e){switch(e){case 123:case 121:case 122:return!0}return!1},e.cloneCompilerOptions=function(t){var r=e.clone(t);return e.setConfigFileInOptions(r,t&&t.configFile),r},e.isArrayLiteralOrObjectLiteralDestructuringPattern=function e(t){if(200===t.kind||201===t.kind){if(218===t.parent.kind&&t.parent.left===t&&62===t.parent.operatorToken.kind)return!0;if(241===t.parent.kind&&t.parent.initializer===t)return!0;if(e(291===t.parent.kind?t.parent.parent:t.parent))return!0}return!1},e.isInReferenceComment=function(e,t){return W(e,t,!0)},e.isInNonReferenceComment=function(e,t){return W(e,t,!1)},e.getReplacementSpanForContextToken=function(e){if(e)switch(e.kind){case 10:case 14:return $(e);default:return G(e)}},e.createTextSpanFromNode=G,e.createTextSpanFromStringLiteralLikeContent=$,e.createTextRangeFromNode=function(t,r){return e.createRange(t.getStart(r),t.end)},e.createTextSpanFromRange=function(t){return e.createTextSpanFromBounds(t.pos,t.end)},e.createTextRangeFromSpan=function(t){return e.createRange(t.start,t.start+t.length)},e.createTextChangeFromStartLength=function(t,r,n){return Y(e.createTextSpan(t,r),n)},e.createTextChange=Y,e.typeKeywords=[129,128,156,132,95,136,139,142,104,145,146,143,148,149,110,114,151,152,153],e.isTypeKeyword=function(t){return e.contains(e.typeKeywords,t)},e.isTypeKeywordToken=X,e.isExternalModuleSymbol=function(e){return!!(1536&e.flags)&&34===e.name.charCodeAt(0)},e.nodeSeenTracker=function(){var t=[];return function(r){var n=e.getNodeId(r);return!t[n]&&(t[n]=!0)}},e.getSnapshotText=function(e){return e.getText(0,e.getLength())},e.repeatString=function(e,t){for(var r="",n=0;n<t;n++)r+=e;return r},e.skipConstraint=function(e){return e.isTypeParameter()&&e.getConstraint()||e},e.getNameFromPropertyName=function(t){return 159===t.kind?e.isStringOrNumericLiteralLike(t.expression)?t.expression.text:void 0:e.isPrivateIdentifier(t)?e.idText(t):e.getTextOfIdentifierOrLiteral(t)},e.programContainsModules=function(e){return e.getSourceFiles().some((function(t){return!(t.isDeclarationFile||e.isSourceFileFromExternalLibrary(t)||!t.externalModuleIndicator&&!t.commonJsModuleIndicator)}))},e.programContainsEs6Modules=function(e){return e.getSourceFiles().some((function(t){return!t.isDeclarationFile&&!e.isSourceFileFromExternalLibrary(t)&&!!t.externalModuleIndicator}))},e.compilerOptionsIndicateEs6Modules=function(e){return!!e.module||e.target>=2||!!e.noEmit},e.createModuleSpecifierResolutionHost=Q,e.getModuleSpecifierResolverHost=Z,e.makeImportIfNecessary=function(e,t,r,n){return e||t&&t.length?ee(e,t,r,n):void 0},e.makeImport=ee,e.makeStringLiteral=te,function(e){e[e.Single=0]="Single",e[e.Double=1]="Double"}(e.QuotePreference||(e.QuotePreference={})),e.quotePreferenceFromString=re,e.getQuotePreference=ne,e.getQuoteFromPreference=function(t){switch(t){case 0:return"'";case 1:return'"';default:return e.Debug.assertNever(t)}},e.symbolNameNoDefault=function(t){var r=ie(t);return void 0===r?void 0:e.unescapeLeadingUnderscores(r)},e.symbolEscapedNameNoDefault=ie,e.isObjectBindingElementWithoutPropertyName=function(t){return e.isBindingElement(t)&&e.isObjectBindingPattern(t.parent)&&e.isIdentifier(t.name)&&!t.propertyName},e.getPropertySymbolFromBindingElement=function(e,t){var r=e.getTypeAtLocation(t.parent);return r&&e.getPropertyOfType(r,t.name.text)},e.getParentNodeInSpan=function(t,r,n){if(t)for(;t.parent;){if(e.isSourceFile(t.parent)||!ae(n,t.parent,r))return t;t=t.parent}},e.findModifier=function(t,r){return t.modifiers&&e.find(t.modifiers,(function(e){return e.kind===r}))},e.insertImports=function(t,r,n,i){var a=234===(e.isArray(n)?n[0]:n).kind?e.isRequireVariableStatement:e.isAnyImportSyntax,o=e.filter(r.statements,a),s=e.isArray(n)?e.stableSort(n,e.OrganizeImports.compareImportsOrRequireStatements):[n];if(o.length)if(o&&e.OrganizeImports.importsAreSorted(o))for(var c=0,l=s;c<l.length;c++){var u=l[c],d=e.OrganizeImports.getImportDeclarationInsertionIndex(o,u);if(0===d){var p=o[0]===r.statements[0]?{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude}:{};t.insertNodeBefore(r,o[0],u,!1,p)}else{var f=o[d-1];t.insertNodeAfter(r,f,u)}}else{var m=e.lastOrUndefined(o);m?t.insertNodesAfter(r,m,s):t.insertNodesAtTopOfFile(r,s,i)}else t.insertNodesAtTopOfFile(r,s,i)},e.getTypeKeywordOfTypeOnlyImport=function(t,r){return e.Debug.assert(t.isTypeOnly),e.cast(t.getChildAt(0,r),X)},e.textSpansEqual=oe,e.documentSpansEqual=function(e,t){return e.fileName===t.fileName&&oe(e.textSpan,t.textSpan)},e.forEachUnique=function(e,t){if(e)for(var r=0;r<e.length;r++)if(e.indexOf(e[r])===r){var n=t(e[r],r);if(n)return n}},e.isTextWhiteSpaceLike=function(t,r,n){for(var i=r;i<n;i++)if(!e.isWhiteSpaceLike(t.charCodeAt(i)))return!1;return!0},e.isFirstDeclarationOfSymbolParameter=se;var ce=function(){var t,r,n,i,a=10*e.defaultMaximumTruncationLength;l();var o=function(t){return c(t,e.SymbolDisplayPartKind.text)};return{displayParts:function(){var r=t.length&&t[t.length-1].text;return i>a&&r&&"..."!==r&&(e.isWhiteSpaceLike(r.charCodeAt(r.length-1))||t.push(ue(" ",e.SymbolDisplayPartKind.space)),t.push(ue("...",e.SymbolDisplayPartKind.punctuation))),t},writeKeyword:function(t){return c(t,e.SymbolDisplayPartKind.keyword)},writeOperator:function(t){return c(t,e.SymbolDisplayPartKind.operator)},writePunctuation:function(t){return c(t,e.SymbolDisplayPartKind.punctuation)},writeTrailingSemicolon:function(t){return c(t,e.SymbolDisplayPartKind.punctuation)},writeSpace:function(t){return c(t,e.SymbolDisplayPartKind.space)},writeStringLiteral:function(t){return c(t,e.SymbolDisplayPartKind.stringLiteral)},writeParameter:function(t){return c(t,e.SymbolDisplayPartKind.parameterName)},writeProperty:function(t){return c(t,e.SymbolDisplayPartKind.propertyName)},writeLiteral:function(t){return c(t,e.SymbolDisplayPartKind.stringLiteral)},writeSymbol:function(e,r){if(i>a)return;s(),i+=e.length,t.push(le(e,r))},writeLine:function(){if(i>a)return;i+=1,t.push(fe()),r=!0},write:o,writeComment:o,getText:function(){return""},getTextPos:function(){return 0},getColumn:function(){return 0},getLine:function(){return 0},isAtStartOfLine:function(){return!1},hasTrailingWhitespace:function(){return!1},hasTrailingComment:function(){return!1},rawWrite:e.notImplemented,getIndent:function(){return n},increaseIndent:function(){n++},decreaseIndent:function(){n--},clear:l,trackSymbol:e.noop,reportInaccessibleThisError:e.noop,reportInaccessibleUniqueSymbolError:e.noop,reportPrivateInBaseOfClassExpression:e.noop};function s(){if(!(i>a)&&r){var o=e.getIndentString(n);o&&(i+=o.length,t.push(ue(o,e.SymbolDisplayPartKind.space))),r=!1}}function c(e,r){i>a||(s(),i+=e.length,t.push(ue(e,r)))}function l(){t=[],r=!0,n=0,i=0}}();function le(t,r){return ue(t,function(t){var r=t.flags;if(3&r)return se(t)?e.SymbolDisplayPartKind.parameterName:e.SymbolDisplayPartKind.localName;if(4&r)return e.SymbolDisplayPartKind.propertyName;if(32768&r)return e.SymbolDisplayPartKind.propertyName;if(65536&r)return e.SymbolDisplayPartKind.propertyName;if(8&r)return e.SymbolDisplayPartKind.enumMemberName;if(16&r)return e.SymbolDisplayPartKind.functionName;if(32&r)return e.SymbolDisplayPartKind.className;if(64&r)return e.SymbolDisplayPartKind.interfaceName;if(384&r)return e.SymbolDisplayPartKind.enumName;if(1536&r)return e.SymbolDisplayPartKind.moduleName;if(8192&r)return e.SymbolDisplayPartKind.methodName;if(262144&r)return e.SymbolDisplayPartKind.typeParameterName;if(524288&r)return e.SymbolDisplayPartKind.aliasName;if(2097152&r)return e.SymbolDisplayPartKind.aliasName;return e.SymbolDisplayPartKind.text}(r))}function ue(t,r){return{text:t,kind:e.SymbolDisplayPartKind[r]}}function de(t){return ue(e.tokenToString(t),e.SymbolDisplayPartKind.keyword)}function pe(t){return ue(t,e.SymbolDisplayPartKind.text)}e.symbolPart=le,e.displayPart=ue,e.spacePart=function(){return ue(" ",e.SymbolDisplayPartKind.space)},e.keywordPart=de,e.punctuationPart=function(t){return ue(e.tokenToString(t),e.SymbolDisplayPartKind.punctuation)},e.operatorPart=function(t){return ue(e.tokenToString(t),e.SymbolDisplayPartKind.operator)},e.textOrKeywordPart=function(t){var r=e.stringToToken(t);return void 0===r?pe(t):de(r)},e.textPart=pe;function fe(){return ue("\n",e.SymbolDisplayPartKind.lineBreak)}function me(e){try{return e(ce),ce.displayParts()}finally{ce.clear()}}function ge(e){return!!(33554432&e.flags)}function _e(e){return!!(2097152&e.flags)}function he(e,t){void 0===t&&(t=!0);var r=e&&ve(e);return r&&!t&&be(r),r}function ye(t,r,n){var i=n(t);return i?e.setOriginalNode(i,t):i=ve(t,n),i&&!r&&be(i),i}function ve(t,r){var n=r?e.visitEachChild(t,(function(e){return ye(e,!0,r)}),e.nullTransformationContext):e.visitEachChild(t,he,e.nullTransformationContext);if(n===t){var i=e.isStringLiteral(t)?e.setOriginalNode(e.factory.createStringLiteralFromNode(t),t):e.isNumericLiteral(t)?e.setOriginalNode(e.factory.createNumericLiteral(t.text,t.numericLiteralFlags),t):e.factory.cloneNode(t);return e.setTextRange(i,t)}return n.parent=void 0,n}function be(e){ke(e),xe(e)}function ke(e){Se(e,512,we)}function xe(t){Se(t,1024,e.getLastChild)}function Se(t,r,n){e.addEmitFlags(t,r);var i=n(t);i&&Se(i,r,n)}function we(e){return e.forEachChild((function(e){return e}))}function De(t,r,n,i,a){e.forEachLeadingCommentRange(n.text,t.pos,Ce(r,n,i,a,e.addSyntheticLeadingComment))}function Ee(t,r,n,i,a){e.forEachTrailingCommentRange(n.text,t.end,Ce(r,n,i,a,e.addSyntheticTrailingComment))}function Te(t,r,n,i,a){e.forEachTrailingCommentRange(n.text,t.pos,Ce(r,n,i,a,e.addSyntheticLeadingComment))}function Ce(e,t,r,n,i){return function(a,o,s,c){3===s?(a+=2,o-=2):a+=2,i(e,r||s,t.text.slice(a,o),void 0!==n?n:c)}}function Ae(t,r){if(e.startsWith(t,r))return 0;var n=t.indexOf(" "+r);return-1===n&&(n=t.indexOf("."+r)),-1===n&&(n=t.indexOf('"'+r)),-1===n?-1:n+1}function Ne(e){switch(e){case 36:case 34:case 37:case 35:return!0;default:return!1}}function Pe(e,t){return t.getTypeAtLocation(e.parent.parent.expression)}function Ie(e){return 170===e||171===e||172===e||163===e||165===e}function Fe(e){return 253===e||167===e||166===e||168===e||169===e}function Oe(e){return 259===e}function Re(e){return 234===e||235===e||237===e||242===e||243===e||244===e||248===e||250===e||164===e||257===e||264===e||263===e||270===e||262===e||269===e}function Me(e,t){return je(e,e.fileExists,t)}function Le(e){try{return e()}catch(e){return}}function je(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return Le((function(){return t&&t.apply(e,r)}))}function Be(t,r){if(r.readFile){var n=function(e){try{return JSON.parse(e)}catch(e){return}}(r.readFile(t)||""),i={};if(n)for(var o=0,s=["dependencies","devDependencies","optionalDependencies","peerDependencies"];o<s.length;o++){var c=s[o],l=n[c];if(l){var u=new e.Map;for(var d in l)u.set(d,l[d]);i[c]=u}}var p=[[1,i.dependencies],[2,i.devDependencies],[8,i.optionalDependencies],[4,i.peerDependencies]];return a(a({},i),{parseable:!!n,fileName:t,get:f,has:function(e,t){return!!f(e,t)}})}function f(e,t){void 0===t&&(t=15);for(var r=0,n=p;r<n.length;r++){var i=n[r],a=i[0],o=i[1];if(o&&t&a){var s=o.get(e);if(void 0!==s)return s}}}}function ze(e){return void 0!==e.file&&void 0!==e.start&&void 0!==e.length}function Ue(t){var r=t.getSourceFile();return!(!r.externalModuleIndicator&&!r.commonJsModuleIndicator)&&(e.isInJSFile(t)||!e.findAncestor(t,e.isGlobalScopeAugmentation))}e.getNewLineOrDefaultFromHost=function(e,t){var r;return(null==t?void 0:t.newLineCharacter)||(null===(r=e.getNewLine)||void 0===r?void 0:r.call(e))||"\r\n"},e.lineBreakPart=fe,e.mapToDisplayParts=me,e.typeToDisplayParts=function(e,t,r,n){return void 0===n&&(n=0),me((function(i){e.writeType(t,r,17408|n,i)}))},e.symbolToDisplayParts=function(e,t,r,n,i){return void 0===i&&(i=0),me((function(a){e.writeSymbol(t,r,n,8|i,a)}))},e.signatureToDisplayParts=function(e,t,r,n){return void 0===n&&(n=0),n|=25632,me((function(i){e.writeSignature(t,r,n,void 0,i)}))},e.isImportOrExportSpecifierName=function(t){return!!t.parent&&e.isImportOrExportSpecifier(t.parent)&&t.parent.propertyName===t},e.getScriptKind=function(t,r){return e.ensureScriptKind(t,r.getScriptKind&&r.getScriptKind(t))},e.getSymbolTarget=function(t,r){for(var n=t;_e(n)||ge(n)&&n.target;)n=ge(n)&&n.target?n.target:e.skipAlias(n,r);return n},e.getUniqueSymbolId=function(t,r){return e.getSymbolId(e.skipAlias(t,r))},e.getFirstNonSpaceCharacterPosition=function(t,r){for(;e.isWhiteSpaceLike(t.charCodeAt(r));)r+=1;return r},e.getPrecedingNonSpaceCharacterPosition=function(t,r){for(;r>-1&&e.isWhiteSpaceSingleLine(t.charCodeAt(r));)r-=1;return r+1},e.getSynthesizedDeepClone=he,e.getSynthesizedDeepCloneWithReplacements=ye,e.getSynthesizedDeepClones=function(t,r){return void 0===r&&(r=!0),t&&e.factory.createNodeArray(t.map((function(e){return he(e,r)})),t.hasTrailingComma)},e.getSynthesizedDeepClonesWithReplacements=function(t,r,n){return e.factory.createNodeArray(t.map((function(e){return ye(e,r,n)})),t.hasTrailingComma)},e.suppressLeadingAndTrailingTrivia=be,e.suppressLeadingTrivia=ke,e.suppressTrailingTrivia=xe,e.copyComments=function(e,t){var r=e.getSourceFile();!function(e,t){for(var r=e.getFullStart(),n=e.getStart(),i=r;i<n;i++)if(10===t.charCodeAt(i))return!0;return!1}(e,r.text)?Te(e,t,r):De(e,t,r),Ee(e,t,r)},e.getUniqueName=function(t,r){for(var n=t,i=1;!e.isFileLevelUniqueName(r,n);i++)n=t+"_"+i;return n},e.getRenameLocation=function(t,r,n,i){for(var a=0,o=-1,s=0,c=t;s<c.length;s++){var l=c[s],u=l.fileName,d=l.textChanges;e.Debug.assert(u===r);for(var p=0,f=d;p<f.length;p++){var m=f[p],g=m.span,_=m.newText,h=Ae(_,n);if(-1!==h&&(o=g.start+a+h,!i))return o;a+=_.length-g.length}}return e.Debug.assert(i),e.Debug.assert(o>=0),o},e.copyLeadingComments=De,e.copyTrailingComments=Ee,e.copyTrailingAsLeadingComments=Te,e.needsParentheses=function(t){return e.isBinaryExpression(t)&&27===t.operatorToken.kind||e.isObjectLiteralExpression(t)},e.getContextualTypeFromParent=function(e,t){var r=e.parent;switch(r.kind){case 205:return t.getContextualType(r);case 218:var n=r,i=n.left,a=n.operatorToken,o=n.right;return Ne(a.kind)?t.getTypeAtLocation(e===o?i:o):t.getContextualType(e);case 287:return r.expression===e?Pe(r,t):void 0;default:return t.getContextualType(e)}},e.quote=function(t,r,n){var i=ne(t,r),a=JSON.stringify(n);return 0===i?"'"+e.stripQuotes(a).replace(/'/g,"\\'").replace(/\\"/g,'"')+"'":a},e.isEqualityOperatorKind=Ne,e.isStringLiteralOrTemplate=function(e){switch(e.kind){case 10:case 14:case 220:case 206:return!0;default:return!1}},e.hasIndexSignature=function(e){return!!e.getStringIndexType()||!!e.getNumberIndexType()},e.getSwitchedType=Pe,e.ANONYMOUS="anonymous function",e.getTypeNodeIfAccessible=function(e,t,r,n){var i=r.getTypeChecker(),a=!0,o=function(){a=!1},s=i.typeToTypeNode(e,t,1,{trackSymbol:function(e,t,r){a=a&&0===i.isSymbolAccessible(e,t,r,!1).accessibility},reportInaccessibleThisError:o,reportPrivateInBaseOfClassExpression:o,reportInaccessibleUniqueSymbolError:o,moduleResolverHost:Z(r,n)});return a?s:void 0},e.syntaxRequiresTrailingCommaOrSemicolonOrASI=Ie,e.syntaxRequiresTrailingFunctionBlockOrSemicolonOrASI=Fe,e.syntaxRequiresTrailingModuleBlockOrSemicolonOrASI=Oe,e.syntaxRequiresTrailingSemicolonOrASI=Re,e.syntaxMayBeASICandidate=e.or(Ie,Fe,Oe,Re),e.positionIsASICandidate=function(t,r,n){var i=e.findAncestor(r,(function(r){return r.end!==t?"quit":e.syntaxMayBeASICandidate(r.kind)}));return!!i&&function(t,r){var n=t.getLastToken(r);if(n&&26===n.kind)return!1;if(Ie(t.kind)){if(n&&27===n.kind)return!1}else if(Oe(t.kind)){if((i=e.last(t.getChildren(r)))&&e.isModuleBlock(i))return!1}else if(Fe(t.kind)){var i;if((i=e.last(t.getChildren(r)))&&e.isFunctionBlock(i))return!1}else if(!Re(t.kind))return!1;if(237===t.kind)return!0;var a=R(t,e.findAncestor(t,(function(e){return!e.parent})),r);return!a||19===a.kind||r.getLineAndCharacterOfPosition(t.getEnd()).line!==r.getLineAndCharacterOfPosition(a.getStart(r)).line}(i,n)},e.probablyUsesSemicolons=function(t){var r=0,n=0;return e.forEachChild(t,(function i(a){if(Re(a.kind)){var o=a.getLastToken(t);o&&26===o.kind?r++:n++}return r+n>=5||e.forEachChild(a,i)})),0===r&&n<=1||r/n>.2},e.tryGetDirectories=function(e,t){return je(e,e.getDirectories,t)||[]},e.tryReadDirectory=function(t,r,n,i,a){return je(t,t.readDirectory,r,n,i,a)||e.emptyArray},e.tryFileExists=Me,e.tryDirectoryExists=function(t,r){return Le((function(){return e.directoryProbablyExists(r,t)}))||!1},e.tryAndIgnoreErrors=Le,e.tryIOAndConsumeErrors=je,e.findPackageJsons=function(t,r,n){var i=[];return e.forEachAncestorDirectory(t,(function(t){if(t===n)return!0;var a=e.combinePaths(t,e.getPackageJsonByPMType(r.getCompilationSettings().packageManagerType));Me(r,a)&&i.push(a)})),i},e.findPackageJson=function(t,r){var n;return e.forEachAncestorDirectory(t,(function(t){var i=e.getModuleByPMType(r.getCompilationSettings().packageManagerType),a=e.getPackageJsonByPMType(r.getCompilationSettings().packageManagerType);return t===i||(!!(n=e.findConfigFile(t,(function(e){return Me(r,e)}),a))||void 0)})),n},e.getPackageJsonsVisibleToFile=function(t,r){if(!r.fileExists)return[];var n=[];return e.forEachAncestorDirectory(e.getDirectoryPath(t),(function(t){var i=e.combinePaths(t,e.getPackageJsonByPMType(r.getCompilationSettings().packageManagerType));if(r.fileExists(i)){var a=Be(i,r);a&&n.push(a)}})),n},e.createPackageJsonInfo=Be,e.consumesNodeCoreModules=function(t){return e.some(t.imports,(function(t){var r=t.text;return e.JsTyping.nodeCoreModules.has(r)}))},e.isInsideNodeModules=function(t){return e.contains(e.getPathComponents(t),"node_modules")},e.isDiagnosticWithLocation=ze,e.findDiagnosticForNode=function(t,r){var n=G(t),i=e.binarySearchKey(r,n,e.identity,e.compareTextSpans);if(i>=0){var a=r[i];return e.Debug.assertEqual(a.file,t.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),e.cast(a,ze)}},e.getDiagnosticsWithinSpan=function(t,r){var n,i=e.binarySearchKey(r,t.start,(function(e){return e.start}),e.compareValues);for(i<0&&(i=~i);(null===(n=r[i-1])||void 0===n?void 0:n.start)===t.start;)i--;for(var a=[],o=e.textSpanEnd(t);;){var s=e.tryCast(r[i],ze);if(!s||s.start>o)break;e.textSpanContainsTextSpan(t,s)&&a.push(s),i++}return a},e.getRefactorContextSpan=function(t){var r=t.startPosition,n=t.endPosition;return e.createTextSpanFromBounds(r,void 0===n?r:n)},e.mapOneOrMany=function(t,r,n){return void 0===n&&(n=e.identity),t?e.isArray(t)?n(e.map(t,r)):r(t,0):void 0},e.firstOrOnly=function(t){return e.isArray(t)?e.first(t):t},e.getNameForExportedSymbol=function(t,r){return 33554432&t.flags||"export="!==t.escapedName&&"default"!==t.escapedName?t.name:e.firstDefined(t.declarations,(function(t){var r;return e.isExportAssignment(t)?null===(r=e.tryCast(e.skipOuterExpressions(t.expression),e.isIdentifier))||void 0===r?void 0:r.text:void 0}))||e.codefix.moduleSymbolToValidIdentifier(function(t){var r;return e.Debug.checkDefined(t.parent,"Symbol parent was undefined. Flags: "+e.Debug.formatSymbolFlags(t.flags)+". Declarations: "+(null===(r=t.declarations)||void 0===r?void 0:r.map((function(t){var r=e.Debug.formatSyntaxKind(t.kind),n=e.isInJSFile(t),i=t.expression;return(n?"[JS]":"")+r+(i?" (expression: "+e.Debug.formatSyntaxKind(i.kind)+")":"")})).join(", "))+".")}(t),r)},e.stringContainsAt=function(e,t,r){var n=t.length;if(n+r>e.length)return!1;for(var i=0;i<n;i++)if(t.charCodeAt(i)!==e.charCodeAt(i+r))return!1;return!0},e.startsWithUnderscore=function(e){return 95===e.charCodeAt(0)},e.isGlobalDeclaration=function(e){return!Ue(e)},e.isNonGlobalDeclaration=Ue,e.isVirtualConstructor=function(t,r,n){var i=t.symbolToString(r),a=e.SymbolDisplay.getSymbolKind(t,r,n);return!(!n.virtual||"__constructor"!==i||"constructor"!==a)}}(d||(d={})),function(e){e.createClassifier=function(){var o=e.createScanner(99,!1);function s(i,s,c){var l=0,u=0,d=[],p=function(t){switch(t){case 3:return{prefix:'"\\\n'};case 2:return{prefix:"'\\\n"};case 1:return{prefix:"/*\n"};case 4:return{prefix:"`\n"};case 5:return{prefix:"}\n",pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return e.Debug.assertNever(t)}}(s),f=p.prefix,m=p.pushTemplate;i=f+i;var g=f.length;m&&d.push(15),o.setText(i);var _=0,h=[],y=0;do{l=o.scan(),e.isTrivia(l)||(k(),u=l);var v=o.getTextPos();if(n(o.getTokenPos(),v,g,a(l),h),v>=i.length){var b=r(o,l,e.lastOrUndefined(d));void 0!==b&&(_=b)}}while(1!==l);function k(){switch(l){case 43:case 67:t[u]||13!==o.reScanSlashToken()||(l=13);break;case 29:78===u&&y++;break;case 31:y>0&&y--;break;case 129:case 148:case 145:case 132:case 149:y>0&&!c&&(l=78);break;case 15:d.push(l);break;case 18:d.length>0&&d.push(l);break;case 19:if(d.length>0){var r=e.lastOrUndefined(d);15===r?17===(l=o.reScanTemplateToken(!1))?d.pop():e.Debug.assertEqual(l,16,"Should have been a template middle."):(e.Debug.assertEqual(r,18,"Should have been an open brace"),d.pop())}break;default:if(!e.isKeyword(l))break;(24===u||e.isKeyword(u)&&e.isKeyword(l)&&!function(t,r){if(!e.isAccessibilityModifier(t))return!0;switch(r){case 135:case 147:case 133:case 124:return!0;default:return!1}}(u,l))&&(l=78)}}return{endOfLineState:_,spans:h}}return{getClassificationsForLine:function(t,r,n){return function(t,r){for(var n=[],a=t.spans,o=0,s=0;s<a.length;s+=3){var c=a[s],l=a[s+1],u=a[s+2];if(o>=0){var d=c-o;d>0&&n.push({length:d,classification:e.TokenClass.Whitespace})}n.push({length:l,classification:i(u)}),o=c+l}var p=r.length-o;p>0&&n.push({length:p,classification:e.TokenClass.Whitespace});return{entries:n,finalLexState:t.endOfLineState}}(s(t,r,n),t)},getEncodedLexicalClassifications:s}};var t=e.arrayToNumericMap([78,10,8,9,13,108,45,46,21,23,19,110,95],(function(e){return e}),(function(){return!0}));function r(t,r,n){switch(r){case 10:if(!t.isUnterminated())return;for(var i=t.getTokenText(),a=i.length-1,o=0;92===i.charCodeAt(a-o);)o++;if(!(1&o))return;return 34===i.charCodeAt(0)?3:2;case 3:return t.isUnterminated()?1:void 0;default:if(e.isTemplateLiteralKind(r)){if(!t.isUnterminated())return;switch(r){case 17:return 5;case 14:return 4;default:return e.Debug.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+r)}}return 15===n?6:void 0}}function n(e,t,r,n,i){if(8!==n){0===e&&r>0&&(e+=r);var a=t-e;a>0&&i.push(e-r,a,n)}}function i(t){switch(t){case 1:return e.TokenClass.Comment;case 3:return e.TokenClass.Keyword;case 4:return e.TokenClass.NumberLiteral;case 25:return e.TokenClass.BigIntLiteral;case 5:return e.TokenClass.Operator;case 6:return e.TokenClass.StringLiteral;case 8:return e.TokenClass.Whitespace;case 10:return e.TokenClass.Punctuation;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return e.TokenClass.Identifier;default:return}}function a(t){if(e.isKeyword(t))return 3;if(function(e){switch(e){case 41:case 43:case 44:case 39:case 40:case 47:case 48:case 49:case 29:case 31:case 32:case 33:case 102:case 101:case 127:case 34:case 35:case 36:case 37:case 50:case 52:case 51:case 55:case 56:case 73:case 72:case 77:case 69:case 70:case 71:case 63:case 64:case 65:case 67:case 68:case 62:case 27:case 60:case 74:case 75:case 76:return!0;default:return!1}}(t)||function(e){switch(e){case 39:case 40:case 54:case 53:case 45:case 46:return!0;default:return!1}}(t))return 5;if(t>=18&&t<=77)return 10;switch(t){case 8:return 4;case 9:return 25;case 10:return 6;case 13:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;default:return e.isTemplateLiteralKind(t)?6:2}}function o(e,t){switch(t){case 259:case 254:case 256:case 253:case 223:case 209:case 210:e.throwIfCancellationRequested()}}function s(t,r,n,i,a){var s=[];return n.forEachChild((function l(u){if(u&&e.textSpanIntersectsWith(a,u.pos,u.getFullWidth())){if(o(r,u.kind),e.isIdentifier(u)&&!e.nodeIsMissing(u)&&i.has(u.escapedText)){var d=t.getSymbolAtLocation(u),p=d&&c(d,e.getMeaningFromLocation(u),t);p&&function(t,r,n){var i=r-t;e.Debug.assert(i>0,"Classification had non-positive length of "+i),s.push(t),s.push(i),s.push(n)}(u.getStart(n),u.getEnd(),p)}u.forEachChild(l)}})),{spans:s,endOfLineState:0}}function c(t,r,n){var i=t.getFlags();return 2885600&i?32&i?11:384&i?12:524288&i?16:1536&i?4&r||1&r&&function(t){return e.some(t.declarations,(function(t){return e.isModuleDeclaration(t)&&1===e.getModuleInstanceState(t)}))}(t)?14:void 0:2097152&i?c(n.getAliasedSymbol(t),r,n):2&r?64&i?13:262144&i?15:void 0:void 0:void 0}function l(e){switch(e){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function u(t){e.Debug.assert(t.spans.length%3==0);for(var r=t.spans,n=[],i=0;i<r.length;i+=3)n.push({textSpan:e.createTextSpan(r[i],r[i+1]),classificationType:l(r[i+2])});return n}function d(t,r,n){var i=n.start,a=n.length,s=e.createScanner(99,!1,r.languageVariant,r.text),c=e.createScanner(99,!1,r.languageVariant,r.text),l=[];return y(r),{spans:l,endOfLineState:0};function u(e,t,r){l.push(e),l.push(t),l.push(r)}function d(t,n,i,a){if(3===n){var o=e.parseIsolatedJSDocComment(r.text,i,a);if(o&&o.jsDoc)return e.setParent(o.jsDoc,t),void function(e){var t=e.pos;if(e.tags)for(var r=0,n=e.tags;r<n.length;r++){var i=n[r];switch(i.pos!==t&&p(t,i.pos-t),u(i.pos,1,10),u(i.tagName.pos,i.tagName.end-i.tagName.pos,18),t=i.tagName.end,i.kind){case 329:a(i);break;case 333:f(i),t=i.end;break;case 332:case 330:y(i.typeExpression),t=i.end}}t!==e.end&&p(t,e.end-t);return;function a(e){e.isNameFirst&&(p(t,e.name.pos-t),u(e.name.pos,e.name.end-e.name.pos,17),t=e.name.end),e.typeExpression&&(p(t,e.typeExpression.pos-t),y(e.typeExpression),t=e.typeExpression.end),e.isNameFirst||(p(t,e.name.pos-t),u(e.name.pos,e.name.end-e.name.pos,17),t=e.name.end)}}(o.jsDoc)}else if(2===n&&function(t,n){var i=/^(\/\/\/\s*)(<)(?:(\S+)((?:[^/]|\/[^>])*)(\/>)?)?/im,a=/(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/gim,o=r.text.substr(t,n),s=i.exec(o);if(!s)return!1;if(!s[3]||!(s[3]in e.commentPragmas))return!1;var c=t;p(c,s[1].length),u(c+=s[1].length,s[2].length,10),u(c+=s[2].length,s[3].length,21),c+=s[3].length;var l=s[4],d=c;for(;;){var f=a.exec(l);if(!f)break;var m=c+f.index;m>d&&(p(d,m-d),d=m),u(d,f[1].length,22),d+=f[1].length,f[2].length&&(p(d,f[2].length),d+=f[2].length),u(d,f[3].length,5),d+=f[3].length,f[4].length&&(p(d,f[4].length),d+=f[4].length),u(d,f[5].length,24),d+=f[5].length}(c+=s[4].length)>d&&p(d,c-d);s[5]&&(u(c,s[5].length,10),c+=s[5].length);var g=t+n;c<g&&p(c,g-c);return!0}(i,a))return;p(i,a)}function p(e,t){u(e,t,1)}function f(e){for(var t=0,r=e.getChildren();t<r.length;t++){y(r[t])}}function m(t,r,n){var i;for(i=r;i<n&&!e.isLineBreak(t.charCodeAt(i));i++);for(u(r,i-r,1),c.setTextPos(i);c.getTextPos()<n;)g()}function g(){var e=c.getTextPos(),t=c.scan(),r=c.getTextPos(),n=h(t);n&&u(e,r-e,n)}function _(t){if(e.isJSDoc(t))return!0;if(e.nodeIsMissing(t))return!0;var n=function(e){switch(e.parent&&e.parent.kind){case 278:if(e.parent.tagName===e)return 19;break;case 279:if(e.parent.tagName===e)return 20;break;case 277:if(e.parent.tagName===e)return 21;break;case 283:if(e.parent.name===e)return 22}return}(t);if(!e.isToken(t)&&11!==t.kind&&void 0===n)return!1;var i=11===t.kind?t.pos:function(t){for(s.setTextPos(t.pos);;){var n=s.getTextPos();if(!e.couldStartTrivia(r.text,n))return n;var i=s.scan(),a=s.getTextPos(),o=a-n;if(!e.isTrivia(i))return n;switch(i){case 4:case 5:continue;case 2:case 3:d(t,i,n,o),s.setTextPos(a);continue;case 7:var c=r.text,l=c.charCodeAt(n);if(60===l||62===l){u(n,o,1);continue}e.Debug.assert(124===l||61===l),m(c,n,a);break;case 6:break;default:e.Debug.assertNever(i)}}}(t),a=t.end-i;if(e.Debug.assert(a>=0),a>0){var o=n||h(t.kind,t);o&&u(i,a,o)}return!0}function h(t,r){if(e.isKeyword(t))return 3;if((29===t||31===t)&&r&&e.getTypeArgumentOrTypeParameterList(r.parent))return 10;if(e.isPunctuation(t)){if(r){var n=r.parent;if(62===t&&(251===n.kind||164===n.kind||161===n.kind||283===n.kind))return 5;if(218===n.kind||216===n.kind||217===n.kind||219===n.kind)return 5}return 10}if(8===t)return 4;if(9===t)return 25;if(10===t)return r&&283===r.parent.kind?24:6;if(13===t)return 6;if(e.isTemplateLiteralKind(t))return 6;if(11===t)return 23;if(78===t){if(r)switch(r.parent.kind){case 254:return r.parent.name===r?11:void 0;case 160:return r.parent.name===r?15:void 0;case 256:return r.parent.name===r?13:void 0;case 258:return r.parent.name===r?12:void 0;case 259:return r.parent.name===r?14:void 0;case 161:return r.parent.name===r?e.isThisIdentifier(r)?3:17:void 0}return 2}}function y(n){if(n&&e.decodedTextSpanIntersectsWith(i,a,n.pos,n.getFullWidth())){o(t,n.kind);for(var s=0,c=n.getChildren(r);s<c.length;s++){var l=c[s];_(l)||y(l)}}}}e.getSemanticClassifications=function(e,t,r,n,i){return u(s(e,t,r,n,i))},e.getEncodedSemanticClassifications=s,e.getSyntacticClassifications=function(e,t,r){return u(d(e,t,r))},e.getEncodedSyntacticClassifications=d}(d||(d={})),function(e){!function(t){!function(t){function r(e,t,r,i){return{spans:n(e,r,i,t),endOfLineState:0}}function n(t,r,n,s){var c=[];return t&&r&&function(t,r,n,s,c){var l=t.getTypeChecker(),u=!1;function d(p){switch(p.kind){case 259:case 254:case 256:case 253:case 223:case 209:case 210:c.throwIfCancellationRequested()}if(p&&e.textSpanIntersectsWith(n,p.pos,p.getFullWidth())&&0!==p.getFullWidth()){var f=u;if((e.isJsxElement(p)||e.isJsxSelfClosingElement(p))&&(u=!0),e.isJsxExpression(p)&&(u=!1),e.isIdentifier(p)&&!u&&!function(t){var r=t.parent;return r&&(e.isImportClause(r)||e.isImportSpecifier(r)||e.isNamespaceImport(r))}(p)){var m=l.getSymbolAtLocation(p);if(m){2097152&m.flags&&(m=l.getAliasedSymbol(m));var g=function(t,r){var n=t.getFlags();if(32&n)return 0;if(384&n)return 1;if(524288&n)return 5;if(64&n){if(2&r)return 2}else if(262144&n)return 4;var a=t.valueDeclaration||t.declarations&&t.declarations[0];a&&e.isBindingElement(a)&&(a=i(a));return a&&o.get(a.kind)}(m,e.getMeaningFromLocation(p));if(void 0!==g){var _=0;if(p.parent)(e.isBindingElement(p.parent)||o.get(p.parent.kind)===g)&&p.parent.name===p&&(_=1);6===g&&a(p)&&(g=9),g=function(t,r,n){if(7===n||9===n||6===n){var i=t.getTypeAtLocation(r);if(i){var o=function(e){return e(i)||i.isUnion()&&i.types.some(e)};if(6!==n&&o((function(e){return e.getConstructSignatures().length>0})))return 0;if(o((function(e){return e.getCallSignatures().length>0}))&&!o((function(e){return e.getProperties().length>0}))||function(t){for(;a(t);)t=t.parent;return e.isCallExpression(t.parent)&&t.parent.expression===t}(r))return 9===n?11:10}}return n}(l,p,g);var h=m.valueDeclaration;if(h){var y=e.getCombinedModifierFlags(h),v=e.getCombinedNodeFlags(h);32&y&&(_|=2),256&y&&(_|=4),0!==g&&2!==g&&(64&y||2&v||8&m.getFlags())&&(_|=8),7!==g&&10!==g||!function(t,r){e.isBindingElement(t)&&(t=i(t));if(e.isVariableDeclaration(t))return(!e.isSourceFile(t.parent.parent.parent)||e.isCatchClause(t.parent))&&t.getSourceFile()===r;if(e.isFunctionDeclaration(t))return!e.isSourceFile(t.parent)&&t.getSourceFile()===r;return!1}(h,r)||(_|=32),t.isSourceFileDefaultLibrary(h.getSourceFile())&&(_|=16)}else m.declarations&&m.declarations.some((function(e){return t.isSourceFileDefaultLibrary(e.getSourceFile())}))&&(_|=16);s(p,g,_)}}}p.virtual||(e.forEachChild(p,d),u=f)}}d(r)}(t,r,n,(function(e,t,n){c.push(e.getStart(r),e.getWidth(r),(t+1<<8)+n)}),s),c}function i(t){for(;;){if(!e.isBindingElement(t.parent.parent))return t.parent.parent;t=t.parent.parent}}function a(t){return e.isQualifiedName(t.parent)&&t.parent.right===t||e.isPropertyAccessExpression(t.parent)&&t.parent.name===t}!function(e){e[e.typeOffset=8]="typeOffset",e[e.modifierMask=255]="modifierMask"}(t.TokenEncodingConsts||(t.TokenEncodingConsts={})),function(e){e[e.class=0]="class",e[e.enum=1]="enum",e[e.interface=2]="interface",e[e.namespace=3]="namespace",e[e.typeParameter=4]="typeParameter",e[e.type=5]="type",e[e.parameter=6]="parameter",e[e.variable=7]="variable",e[e.enumMember=8]="enumMember",e[e.property=9]="property",e[e.function=10]="function",e[e.member=11]="member"}(t.TokenType||(t.TokenType={})),function(e){e[e.declaration=0]="declaration",e[e.static=1]="static",e[e.async=2]="async",e[e.readonly=3]="readonly",e[e.defaultLibrary=4]="defaultLibrary",e[e.local=5]="local"}(t.TokenModifier||(t.TokenModifier={})),t.getSemanticClassifications=function(t,n,i,a){var o=r(t,n,i,a);e.Debug.assert(o.spans.length%3==0);for(var s=o.spans,c=[],l=0;l<s.length;l+=3)c.push({textSpan:e.createTextSpan(s[l],s[l+1]),classificationType:s[l+2]});return c},t.getEncodedSemanticClassifications=r;var o=new e.Map([[251,7],[161,6],[164,9],[259,3],[258,1],[294,8],[254,0],[166,11],[253,10],[209,10],[165,11],[168,9],[169,9],[163,9],[256,2],[257,5],[160,4],[291,9],[292,9]])}(t.v2020||(t.v2020={}))}(e.classifier||(e.classifier={}))}(d||(d={})),function(e){!function(t){!function(r){function n(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:e.map((function(e){var r=e.name,n=e.kind,i=e.span;return{name:r,kind:n,kindModifiers:a(e.extension),sortText:t.SortText.LocationPriority,replacementSpan:i}}))}}function a(t){switch(t){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case".tsbuildinfo":return e.Debug.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";case".d.ets":return".d.ets";case".ets":return".ets";default:return e.Debug.assertNever(t)}}var o;function s(r,n,i,a,o,s){var d,p,f=c(n.parent);switch(f.kind){case 192:var g=c(f.parent);switch(g.kind){case 174:var _=g,h=e.findAncestor(f,(function(e){return e.parent===_}));return h?{kind:2,types:u(a.getTypeArgumentConstraint(h)),isNewIdentifier:!1}:void 0;case 190:var y=g,v=y.indexType,b=y.objectType;if(!e.rangeContainsPosition(v,i))return;return l(a.getTypeFromTypeNode(b));case 196:return{kind:0,paths:m(r,n,o,s,a)};case 183:if(!e.isTypeReferenceNode(g.parent))return;var k=(d=g,p=f,e.mapDefined(d.types,(function(t){return t!==p&&e.isLiteralTypeNode(t)&&e.isStringLiteral(t.literal)?t.literal.text:void 0})));return{kind:2,types:u(a.getTypeArgumentConstraint(g)).filter((function(t){return!e.contains(k,t.value)})),isNewIdentifier:!1};default:return}case 291:return e.isObjectLiteralExpression(f.parent)&&f.name===n?function(r,n){var i=r.getContextualType(n);if(!i)return;var a=r.getContextualType(n,4);return{kind:1,symbols:t.getPropertiesForObjectExpression(i,a,n,r),hasIndexSignature:e.hasIndexSignature(i)}}(a,f.parent):E();case 203:var x=f,S=x.expression,w=x.argumentExpression;return n===e.skipParentheses(w)?l(a.getTypeAtLocation(S)):void 0;case 204:case 205:if(!e.isRequireCall(f,!1)&&!e.isImportCall(f)){var D=e.SignatureHelp.getArgumentInfoForCompletions(n,i,r);return D?function(t,r){var n=!1,i=new e.Map,a=[];r.getResolvedSignature(t.invocation,a,t.argumentCount);var o=e.flatMap(a,(function(a){if(e.signatureHasRestParameter(a)||!(t.argumentCount>a.parameters.length)){var o=r.getParameterType(a,t.argumentIndex);return n=n||!!(4&o.flags),u(o,i)}}));return{kind:2,types:o,isNewIdentifier:n}}(D,a):E()}case 264:case 270:case 275:return{kind:0,paths:m(r,n,o,s,a)};default:return E()}function E(){return{kind:2,types:u(e.getContextualTypeFromParent(n,a)),isNewIdentifier:!1}}}function c(t){switch(t.kind){case 187:return e.walkUpParenthesizedTypes(t);case 208:return e.walkUpParenthesizedExpressions(t);default:return t}}function l(t){return t&&{kind:1,symbols:e.filter(t.getApparentProperties(),(function(t){return!(t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration))})),hasIndexSignature:e.hasIndexSignature(t)}}function u(t,r){return void 0===r&&(r=new e.Map),t?(t=e.skipConstraint(t)).isUnion()?e.flatMap(t.types,(function(e){return u(e,r)})):!t.isStringLiteral()||1024&t.flags||!e.addToSeen(r,t.value)?e.emptyArray:[t]:e.emptyArray}function d(e,t,r){return{name:e,kind:t,extension:r}}function p(e){return d(e,"directory",void 0)}function f(t,r,n){var i=function(t,r){var n=Math.max(t.lastIndexOf(e.directorySeparator),t.lastIndexOf(e.altDirectorySeparator)),i=-1!==n?n+1:0,a=t.length-i;return 0===a||e.isIdentifierText(t.substr(i,a),99)?void 0:e.createTextSpan(r+i,a)}(t,r),a=0===t.length?void 0:e.createTextSpan(r,t.length);return n.map((function(t){var r=t.name,n=t.kind,o=t.extension;return-1!==Math.max(r.indexOf(e.directorySeparator),r.indexOf(e.altDirectorySeparator))?{name:r,kind:n,extension:o,span:a}:{name:r,kind:n,extension:o,span:i}}))}function m(t,r,n,a,o){return f(r.text,r.getStart(t)+1,function(t,r,n,a,o){var s=e.normalizeSlashes(r.text),c=t.path,l=e.getDirectoryPath(c);return function(e){if(e&&e.length>=2&&46===e.charCodeAt(0)){var t=e.length>=3&&46===e.charCodeAt(1)?2:1,r=e.charCodeAt(t);return 47===r||92===r}return!1}(s)||!n.baseUrl&&(e.isRootedDiskPath(s)||e.isUrl(s))?function(t,r,n,a,o){var s=g(n);return n.rootDirs?function(t,r,n,a,o,s,c){var l=o.project||s.getCurrentDirectory(),u=!(s.useCaseSensitiveFileNames&&s.useCaseSensitiveFileNames()),d=function(t,r,n,a){t=t.map((function(t){return e.normalizePath(e.isRootedDiskPath(t)?t:e.combinePaths(r,t))}));var o=e.firstDefined(t,(function(t){return e.containsPath(t,n,r,a)?n.substr(t.length):void 0}));return e.deduplicate(i(i([],t.map((function(t){return e.combinePaths(t,o)}))),[n]),e.equateStringsCaseSensitive,e.compareStringsCaseSensitive)}(t,l,n,u);return e.flatMap(d,(function(e){return h(r,e,a,s,c)}))}(n.rootDirs,t,r,s,n,a,o):h(t,r,s,a,o)}(s,l,n,a,c):function(t,r,n,i,a){var o=n.baseUrl,s=n.paths,c=[],l=g(n);if(o){var u=n.project||i.getCurrentDirectory(),p=e.normalizePath(e.combinePaths(u,o));h(t,p,l,i,void 0,c),s&&y(c,t,p,l.extensions,s,i)}for(var f=v(t),m=0,_=function(t,r,n){var i=n.getAmbientModules().map((function(t){return e.stripQuotes(t.name)})).filter((function(r){return e.startsWith(r,t)}));if(void 0!==r){var a=e.ensureTrailingDirectorySeparator(r);return i.map((function(t){return e.removePrefix(t,a)}))}return i}(t,f,a);m<_.length;m++){var b=_[m];c.push(d(b,"external module name",void 0))}if(k(i,n,r,f,l,c),e.getEmitModuleResolutionKind(n)===e.ModuleResolutionKind.NodeJs){var x=!1;if(void 0===f)for(var w=function(e){c.some((function(t){return t.name===e}))||(x=!0,c.push(d(e,"external module name",void 0)))},D=0,E=function(t,r){if(!t.readFile||!t.fileExists)return e.emptyArray;for(var n=[],i=0,a=e.findPackageJsons(r,t);i<a.length;i++)for(var o=a[i],s=e.readJson(o,t),c=0,l=S;c<l.length;c++){var u=s[l[c]];if(u)for(var d in u)u.hasOwnProperty(d)&&!e.startsWith(d,"@types/")&&n.push(d)}return n}(i,r);D<E.length;D++){w(E[D])}x||e.forEachAncestorDirectory(r,(function(r){var n=e.combinePaths(r,e.getModuleByPMType(i.getCompilationSettings().packageManagerType));e.tryDirectoryExists(i,n)&&h(t,n,l,i,void 0,c)}))}return c}(s,l,n,a,o)}(t,r,n,a,o))}function g(e,t){return void 0===t&&(t=!1),{extensions:_(e),includeExtensions:t}}function _(t){var r=e.getSupportedExtensions(t);return t.resolveJsonModule&&e.getEmitModuleResolutionKind(t)===e.ModuleResolutionKind.NodeJs?r.concat(".json"):r}function h(t,r,n,i,a,o){var s=n.extensions,c=n.includeExtensions;void 0===o&&(o=[]),void 0===t&&(t=""),t=e.normalizeSlashes(t),e.hasTrailingDirectorySeparator(t)||(t=e.getDirectoryPath(t)),""===t&&(t="."+e.directorySeparator),t=e.ensureTrailingDirectorySeparator(t);var l=e.resolvePath(r,t),u=e.hasTrailingDirectorySeparator(l)?l:e.getDirectoryPath(l),f=!(i.useCaseSensitiveFileNames&&i.useCaseSensitiveFileNames());if(!e.tryDirectoryExists(i,u))return o;var m=e.tryReadDirectory(i,u,s,void 0,["./*"]);if(m){for(var g=new e.Map,_=0,h=m;_<h.length;_++){var v=h[_];if(v=e.normalizePath(v),!a||0!==e.comparePaths(v,a,r,f)){var b=c||e.fileExtensionIs(v,".json")?e.getBaseFileName(v):e.removeFileExtension(e.getBaseFileName(v));g.set(b,e.tryGetExtensionFromPath(v))}}g.forEach((function(e,t){o.push(d(t,"script",e))}))}var k=e.tryGetDirectories(i,u);if(k)for(var x=0,S=k;x<S.length;x++){var w=S[x],D=e.getBaseFileName(e.normalizePath(w));"@types"!==D&&o.push(p(D))}var E=e.findPackageJson(u,i);if(E){var T=e.readJson(E,i).typesVersions;if("object"==typeof T){var C=e.getPackageJsonTypesVersionsPaths(T),A=C&&C.paths,N=l.slice(e.ensureTrailingDirectorySeparator(u).length);A&&y(o,N,u,s,A,i)}}return o}function y(t,r,n,i,a,o){for(var s in a)if(e.hasProperty(a,s)){var c=a[s];if(c)for(var l=function(e,r,n){t.some((function(t){return t.name===e}))||t.push(d(e,r,n))},u=0,p=b(s,c,r,n,i,o);u<p.length;u++){var f=p[u];l(f.name,f.kind,f.extension)}}}function v(t){return w(t)?e.hasTrailingDirectorySeparator(t)?t:e.getDirectoryPath(t):void 0}function b(t,r,n,a,o,s){if(!e.endsWith(t,"*"))return e.stringContains(t,"*")?e.emptyArray:u(t);var c=t.slice(0,t.length-1),l=e.tryRemovePrefix(n,c);return void 0===l?u(c):e.flatMap(r,(function(t){return function(t,r,n,a,o){if(!o.readDirectory)return;var s=e.hasZeroOrOneAsteriskCharacter(n)?e.tryParsePattern(n):void 0;if(!s)return;var c=e.resolvePath(s.prefix),l=e.hasTrailingDirectorySeparator(s.prefix)?c:e.getDirectoryPath(c),u=e.hasTrailingDirectorySeparator(s.prefix)?"":e.getBaseFileName(c),f=w(t),m=f?e.hasTrailingDirectorySeparator(t)?t:e.getDirectoryPath(t):void 0,g=f?e.combinePaths(l,u+m):l,_=e.normalizePath(s.suffix),h=e.normalizePath(e.combinePaths(r,g)),y=f?h:e.ensureTrailingDirectorySeparator(h)+u,v=_?"**/*":"./*",b=e.mapDefined(e.tryReadDirectory(o,h,a,void 0,[v]),(function(t){var r=e.tryGetExtensionFromPath(t),n=x(t);return void 0===n?void 0:d(e.removeFileExtension(n),"script",r)})),k=e.mapDefined(e.tryGetDirectories(o,h).map((function(t){return e.combinePaths(h,t)})),(function(e){var t=x(e);return void 0===t?void 0:p(t)}));return i(i([],b),k);function x(t){var r,n,i,a=(r=e.normalizePath(t),n=y,i=_,e.startsWith(r,n)&&e.endsWith(r,i)?r.slice(n.length,r.length-i.length):void 0);return void 0===a?void 0:function(t){return t[0]===e.directorySeparator?t.slice(1):t}(a)}}(l,a,t,o,s)}));function u(t){return e.startsWith(t,n)?[p(t)]:e.emptyArray}}function k(t,r,n,i,a,o){void 0===o&&(o=[]);for(var s=new e.Map,c=0,l=e.tryAndIgnoreErrors((function(){return e.getEffectiveTypeRoots(r,t)}))||e.emptyArray;c<l.length;c++){m(l[c])}for(var u=0,p=e.findPackageJsons(n,t);u<p.length;u++){var f=p[u];m(e.combinePaths(e.getDirectoryPath(f),e.isOhpm(r.packageManagerType)?"oh_modules/@types":"node_modules/@types"))}return o;function m(n){if(e.tryDirectoryExists(t,n))for(var c=0,l=e.tryGetDirectories(t,n);c<l.length;c++){var u=l[c],p=e.unmangleScopedPackageName(u);if(!r.types||e.contains(r.types,p))if(void 0===i)s.has(p)||(o.push(d(p,"external module name",void 0)),s.set(p,!0));else{var f=e.combinePaths(n,u),m=e.tryRemoveDirectoryPrefix(i,p,e.hostGetCanonicalFileName(t));void 0!==m&&h(m,f,a,t,void 0,o)}}}}r.getStringLiteralCompletions=function(r,i,a,o,c,l,u,d){if(e.isInReferenceComment(r,i)){var p=function(t,r,n,i){var a=e.getTokenAtPosition(t,r),o=e.getLeadingCommentRanges(t.text,a.pos),s=o&&e.find(o,(function(e){return r>=e.pos&&r<=e.end}));if(!s)return;var c=t.text.slice(s.pos,r),l=x.exec(c);if(!l)return;var u=l[1],d=l[2],p=l[3],m=e.getDirectoryPath(t.path),_="path"===d?h(p,m,g(n,!0),i,t.path):"types"===d?k(i,n,m,v(p),g(n)):e.Debug.fail();return f(p,s.pos+u.length,_)}(r,i,c,l);return p&&n(p)}if(e.isInString(r,i,a)){if(!a||!e.isStringLiteralLike(a))return;return function(r,i,a,o,s,c){if(void 0===r)return;var l=e.createTextSpanFromStringLiteralLikeContent(i);switch(r.kind){case 0:return n(r.paths);case 1:var u=[];return t.getCompletionEntriesFromSymbols(r.symbols,u,i,a,a,o,99,s,4,c),{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:r.hasIndexSignature,optionalReplacementSpan:l,entries:u};case 2:u=r.types.map((function(r){return{name:r.value,kindModifiers:"",kind:"string",sortText:t.SortText.LocationPriority,replacementSpan:e.getReplacementSpanForContextToken(i)}}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:r.isNewIdentifier,optionalReplacementSpan:l,entries:u};default:return e.Debug.assertNever(r)}}(p=s(r,a,i,o,c,l),a,r,o,u,d)}},r.getStringLiteralCompletionDetails=function(r,n,i,o,c,l,u,d){if(o&&e.isStringLiteralLike(o)){var p=s(n,o,i,c,l,u);return p&&function(r,n,i,o,s,c){switch(i.kind){case 0:return(l=e.find(i.paths,(function(e){return e.name===r})))&&t.createCompletionDetails(r,a(l.extension),l.kind,[e.textPart(r)]);case 1:var l;return(l=e.find(i.symbols,(function(e){return e.name===r})))&&t.createCompletionDetailsForSymbol(l,s,o,n,c);case 2:return e.find(i.types,(function(e){return e.value===r}))?t.createCompletionDetails(r,"","type",[e.textPart(r)]):void 0;default:return e.Debug.assertNever(i)}}(r,o,p,n,c,d)}},function(e){e[e.Paths=0]="Paths",e[e.Properties=1]="Properties",e[e.Types=2]="Types"}(o||(o={}));var x=/^(\/\/\/\s*<reference\s+(path|types)\s*=\s*(?:'|"))([^\3"]*)$/,S=["dependencies","devDependencies","peerDependencies","optionalDependencies"];function w(t){return e.stringContains(t,e.directorySeparator)}}(t.StringCompletions||(t.StringCompletions={}))}(e.Completions||(e.Completions={}))}(d||(d={})),function(e){!function(t){var r,n,i,a,o,s;function c(e){return!!(e&&4&e.kind)}function l(e){return c(e)&&!!e.isFromPackageJson}function u(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:e}}function d(t){return 78===(null==t?void 0:t.kind)?e.createTextSpanFromNode(t):void 0}function p(t,r){return e.isSourceFileJS(t)&&!e.isCheckJsEnabledForFile(t,r)}function f(e){switch(e){case 0:case 3:case 2:return!0;default:return!1}}function m(t,r,n){return"object"==typeof n?e.pseudoBigIntToString(n)+"n":e.isString(n)?e.quote(t,r,n):JSON.stringify(n)}function g(e,t,n){return{name:m(e,t,n),kind:"string",kindModifiers:"",sortText:r.LocationPriority}}function _(t,r,n,i,a,o,s,u,d,p,f,m,g){var _,b=e.getReplacementSpanForContextToken(n),k=d&&function(e){return!!(16&e.kind)}(d),x=d&&function(e){return!!(2&e.kind)}(d)||u;if(d&&function(e){return!!(1&e.kind)}(d))_=u?"this"+(k?"?.":"")+"["+h(a,g,s)+"]":"this"+(k?"?.":".")+s;else if((x||k)&&f){_=x?u?"["+h(a,g,s)+"]":"["+s+"]":s,(k||f.questionDotToken)&&(_="?."+_);var S=e.findChildOfKind(f,24,a)||e.findChildOfKind(f,28,a);if(!S)return;var w=e.startsWith(s,f.name.text)?f.name.end:S.end;b=e.createTextSpanFromBounds(S.getStart(a),w)}if(m&&(void 0===_&&(_=s),_="{"+_+"}","boolean"!=typeof m&&(b=e.createTextSpanFromNode(m,a))),d&&function(e){return!!(8&e.kind)}(d)&&f){void 0===_&&(_=s);var D=e.findPrecedingToken(f.pos,a),E="";D&&e.positionIsASICandidate(D.end,D.parent,a)&&(E=";"),E+="(await "+f.expression.getText()+")",_=u?""+E+_:E+(k?"?.":".")+_,b=e.createTextSpanFromBounds(f.getStart(a),f.end)}if(void 0===_||g.includeCompletionsWithInsertText)return{name:s,kind:e.SymbolDisplay.getSymbolKind(o,t,i),kindModifiers:e.SymbolDisplay.getSymbolModifiers(o,t),sortText:r,source:v(d),hasAction:d&&c(d)||void 0,isRecommended:y(t,p,o)||void 0,insertText:_,replacementSpan:b,isPackageJsonImport:l(d)||void 0}}function h(t,r,n){return/^\d+$/.test(n)?n:e.quote(t,r,n)}function y(e,t,r){return e===t||!!(1048576&e.flags)&&r.getExportSymbolOfSymbol(e)===t}function v(t){return c(t)?e.stripQuotes(t.moduleSymbol.name):1===(null==t?void 0:t.kind)?n.ThisProperty:void 0}function b(t,n,i,a,o,s,c,l,u,d,p,f,m,g,h,y){for(var v=e.timestamp(),b=new e.Map,k=0,x=t;k<x.length;k++){var S=x[k],w=h?h[e.getSymbolId(S)]:void 0,D=T(S,c,w,u,!!f);if(D){var E=D.name,C=D.needsConvertPropertyAccess;if(!b.get(E)){var A=_(S,y&&y[e.getSymbolId(S)]||r.LocationPriority,i,a,o,s,E,C,w,g,p,m,d);if(A){var N=!(w||void 0===S.parent&&!e.some(S.declarations,(function(e){return e.getSourceFile()===a.getSourceFile()})));if(b.set(E,N),S.getJsDocTags().length>0&&(A.jsDoc=S.getJsDocTags()),S.declarations){var P=e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(s,S,o,a,a,7);A.displayParts=P.displayParts}n.push(A)}}}}return l("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(e.timestamp()-v)),{has:function(e){return b.has(e)},add:function(e){return b.set(e,!0)}}}function k(t,r,n,i,a,o,s){var c=t.getCompilerOptions(),l=E(t,r,n,p(n,c),i,{includeCompletionsForModuleExports:!0,includeCompletionsWithInsertText:!0},a,o);if(!l)return{type:"none"};if(0!==l.kind)return{type:"request",request:l};var u=l.symbols,d=l.literals,f=l.location,g=l.completionKind,_=l.symbolToOriginInfoMap,h=l.previousToken,y=l.isJsxInitializer,b=l.isTypeOnlyLocation,k=e.find(d,(function(e){return m(n,s,e)===a.name}));return void 0!==k?{type:"literal",literal:k}:e.firstDefined(u,(function(t){var r=_[e.getSymbolId(t)],n=T(t,c.target,r,g,l.isJsxIdentifierExpected);return n&&n.name===a.name&&v(r)===a.source?{type:"symbol",symbol:t,location:f,symbolToOriginInfoMap:_,previousToken:h,isJsxInitializer:y,isTypeOnlyLocation:b}:void 0}))||{type:"none"}}function x(t,r,n){return w(t,"",r,[e.displayPart(t,n)])}function S(t,r,n,i,a,o,s){var c=r.runWithCancellationToken(a,(function(r){return e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(r,t,n,i,i,7)})),l=c.displayParts,u=c.documentation,d=c.symbolKind,p=c.tags;return w(t.name,e.SymbolDisplay.getSymbolModifiers(r,t),d,l,u,p,o,s)}function w(e,t,r,n,i,a,o,s){return{name:e,kindModifiers:t,kind:r,displayParts:n,documentation:i,tags:a,codeActions:o,source:s}}function D(t,r,n){var i=n.getAccessibleSymbolChain(t,r,67108863,!1);return i?e.first(i):t.parent&&(function(e){return e.declarations.some((function(e){return 300===e.kind}))}(t.parent)?t:D(t.parent,r,n))}function E(t,n,i,a,o,s,c,l){var u,d=8===i.scriptKind,p=t.getTypeChecker(),f=t.getCompilerOptions(),m=e.timestamp(),g=e.getTokenAtPosition(i,o);n("getCompletionData: Get current token: "+(e.timestamp()-m)),m=e.timestamp();var _=e.isInComment(i,o,g);n("getCompletionData: Is inside comment: "+(e.timestamp()-m));var h=!1,y=!1;if(_){if(e.hasDocComment(i,o)){if(64===i.text.charCodeAt(o-1))return{kind:1};var v=e.getLineStartPositionForPosition(o,i);if(!/[^\*|\s(/)]/.test(i.text.substring(v,o)))return{kind:2}}var b=function(t,r){var n=e.findAncestor(t,e.isJSDoc);return n&&n.tags&&(e.rangeContainsPosition(n,r)?e.findLast(n.tags,(function(e){return e.pos<r})):void 0)}(g,o);if(b){if(b.tagName.pos<=o&&o<=b.tagName.end)return{kind:1};if(function(e){switch(e.kind){case 329:case 336:case 330:case 332:case 334:return!0;default:return!1}}(b)&&b.typeExpression&&304===b.typeExpression.kind&&((g=e.getTokenAtPosition(i,o))&&(e.isDeclarationName(g)||336===g.parent.kind&&g.parent.name===g)||(h=he(b.typeExpression))),!h&&e.isJSDocParameterTag(b)&&(e.nodeIsMissing(b.name)||b.name.pos<=o&&o<=b.name.end))return{kind:3,tag:b}}if(!h)return void n("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.")}m=e.timestamp();var k=e.findPrecedingToken(o,i,void 0);n("getCompletionData: Get previous token 1: "+(e.timestamp()-m));var x=k;if(x&&o<=x.end&&(e.isIdentifierOrPrivateIdentifier(x)||e.isKeyword(x.kind))){var S=e.timestamp();x=e.findPrecedingToken(x.getFullStart(),i,void 0),n("getCompletionData: Get previous token 2: "+(e.timestamp()-S))}var w,E=g,T=!1,C=!1,A=!1,N=!1,F=!1,B=!1,z=e.getTouchingPropertyName(i,o);if(x){if(function(t){var r=e.timestamp(),a=function(t){return(e.isRegularExpressionLiteral(t)||e.isStringTextContainingNode(t))&&(e.rangeContainsPositionExclusive(e.createTextRangeFromSpan(e.createTextSpanFromNode(t)),o)||o===t.end&&(!!t.isUnterminated||e.isRegularExpressionLiteral(t)))}(t)||function(t){var r=t.parent,n=r.kind;switch(t.kind){case 27:return 251===n||function(t){return 252===t.parent.kind&&!e.isPossiblyTypeArgumentPosition(t,i,p)}(t)||234===n||258===n||fe(n)||256===n||198===n||257===n||e.isClassLike(r)&&!!r.typeParameters&&r.typeParameters.end>=t.pos;case 24:case 22:return 198===n;case 58:return 199===n;case 20:return 290===n||fe(n);case 18:return 258===n;case 29:return 254===n||223===n||256===n||257===n||e.isFunctionLikeKind(n);case 124:return 164===n&&!e.isClassLike(r.parent);case 25:return 161===n||!!r.parent&&198===r.parent.kind;case 123:case 121:case 122:return 161===n&&!e.isConstructorDeclaration(r.parent);case 127:return 268===n||273===n||266===n;case 135:case 147:return!L(t);case 83:case 84:case 92:case 118:case 98:case 113:case 100:case 119:case 85:case 136:case 150:return!0;case 41:return e.isFunctionLike(t.parent)&&!e.isMethodDeclaration(t.parent)}if(I(O(t))&&L(t))return!1;if(pe(t)&&(!e.isIdentifier(t)||e.isParameterPropertyModifier(O(t))||he(t)))return!1;switch(O(t)){case 126:case 83:case 84:case 85:case 134:case 92:case 98:case 118:case 119:case 121:case 122:case 123:case 124:case 113:return!0;case 130:return e.isPropertyDeclaration(t.parent)}return e.isDeclarationName(t)&&!e.isShorthandPropertyAssignment(t.parent)&&!e.isJsxAttribute(t.parent)&&!(e.isClassLike(t.parent)&&(t!==k||o>k.end))}(t)||function(e){if(8===e.kind){var t=e.getFullText();return"."===t.charAt(t.length-1)}return!1}(t)||function(e){if(11===e.kind)return!0;if(31===e.kind&&e.parent){if(278===e.parent.kind)return 278!==z.parent.kind;if(279===e.parent.kind||277===e.parent.kind)return!!e.parent.parent&&276===e.parent.parent.kind}return!1}(t);return n("getCompletionsAtPosition: isCompletionListBlocker: "+(e.timestamp()-r)),a}(x))return void n("Returning an empty list because completion was requested in an invalid position.");var U=x.parent;if(24===x.kind||28===x.kind)switch(T=24===x.kind,C=28===x.kind,U.kind){case 202:if(E=(w=U).expression,(e.isCallExpression(E)||e.isFunctionLike(E)||e.isEtsComponentExpression(E))&&E.end===x.pos&&E.getChildCount(i)&&21!==e.last(E.getChildren(i)).kind&&!E.getLastToken(i))return;if(E.virtual&&20===(null===(u=e.findPrecedingToken(E.pos,i))||void 0===u?void 0:u.kind))return;break;case 158:E=U.left;break;case 259:E=U.name;break;case 196:case 228:E=U;break;default:return}else if(1===i.languageVariant){if(U&&202===U.kind&&(x=U,U=U.parent),g.parent===z)switch(g.kind){case 31:276!==g.parent.kind&&278!==g.parent.kind||(z=g);break;case 43:277===g.parent.kind&&(z=g)}switch(U.kind){case 279:43===x.kind&&(N=!0,z=x);break;case 218:if(!j(U))break;case 277:case 276:case 278:B=!0,29===x.kind&&(A=!0,z=x);break;case 286:19===k.kind&&31===g.kind&&(B=!0);break;case 283:if(U.initializer===k&&k.end<o){B=!0;break}switch(k.kind){case 62:F=!0;break;case 78:B=!0,U!==k.parent&&!U.initializer&&e.findChildOfKind(U,62,i)&&(F=k)}}}}var q=e.timestamp(),J=5,V=!1,H=!1,K=0,W=[],G=[],$=[],Y=l.getImportSuggestionsCache&&l.getImportSuggestionsCache(),X=le();if(T||C)!function(){J=2;var t=e.isLiteralImportTypeNode(E),r=h||t&&!E.isTypeOf||e.isPartOfTypeNode(E.parent)||e.isPossiblyTypeArgumentPosition(x,i,p),n=e.isInRightSideOfInternalImportEqualsDeclaration(E);if(e.isEntityName(E)||t||e.isPropertyAccessExpression(E)){var a=e.isModuleDeclaration(E.parent);a&&(V=!0);var o=p.getSymbolAtLocation(E);if(o&&1920&(o=e.skipAlias(o,p)).flags){var c=p.getExportsOfModule(o);e.Debug.assertEachIsDefined(c,"getExportsOfModule() should all be defined");for(var l=function(e){return p.isValidPropertyAccess(t?E:E.parent,e.name)},u=function(e){return ue(e)},d=a?function(e){return!!(1920&e.flags)&&!e.declarations.every((function(e){return e.parent===E.parent}))}:n?function(e){return u(e)||l(e)}:r?u:l,f=0,m=c;f<m.length;f++){var g=m[f];d(g)&&W.push(g)}if(!r&&o.declarations&&o.declarations.some((function(e){return 300!==e.kind&&259!==e.kind&&258!==e.kind}))){var _=!1;if((v=p.getTypeOfSymbolAtLocation(o,E).getNonOptionalType()).isNullableType())((b=T&&!C&&!1!==s.includeAutomaticOptionalChainCompletions)||C)&&(v=v.getNonNullableType(),b&&(_=!0));ae(v,!!(32768&E.flags),_)}return}}if(e.isMetaProperty(E)&&(103===E.keywordToken||100===E.keywordToken)&&x===E.getChildAt(1)){var y=103===E.keywordToken?"target":"meta";return void W.push(p.createSymbol(4,e.escapeLeadingUnderscores(y)))}if(!r){var v,b;_=!1;if((v=p.tryGetTypeAtLocationWithoutCheck(E).getNonOptionalType()).isNullableType())((b=T&&!C&&!1!==s.includeAutomaticOptionalChainCompletions)||C)&&(v=v.getNonNullableType(),b&&(_=!0));ae(v,!!(32768&E.flags),_)}}();else if(A){var Q=p.getJsxIntrinsicTagNamesAt(z);e.Debug.assertEachIsDefined(Q,"getJsxIntrinsicTagNames() should all be defined"),ce(),W=Q.concat(W),J=3,K=0}else if(N){var Z=x.parent.parent.openingElement.tagName,ee=p.getSymbolAtLocation(Z);ee&&(W=[ee]),J=3,K=0}else if(!ce())return;var te=t.getEtsLibSFromProgram();W=W.filter((function(t){var r;return!t.declarations||!t.declarations.length||(null!==(r=t.declarations)&&void 0!==r?r:[]).filter((function(t){if(!t.getSourceFile().fileName)return!0;var r=e.sys.resolvePath(t.getSourceFile().fileName);return!(!d&&-1!==te.indexOf(r))})).length})),n("getCompletionData: Semantic work: "+(e.timestamp()-q));var re=k&&function(t,r,n,i){var a=t.parent;switch(t.kind){case 78:return e.getContextualTypeFromParent(t,i);case 62:switch(a.kind){case 251:return i.getContextualType(a.initializer);case 218:return i.getTypeAtLocation(a.left);case 283:return i.getContextualTypeForJsxAttribute(a);default:return}case 103:return i.getContextualType(a);case 81:return e.getSwitchedType(e.cast(a,e.isCaseClause),i);case 18:return e.isJsxExpression(a)&&276!==a.parent.kind?i.getContextualTypeForJsxAttribute(a.parent):void 0;default:var o=e.SignatureHelp.getArgumentInfoForCompletions(t,r,n);return o?i.getContextualTypeForArgumentAtIndex(o.invocation,o.argumentIndex+(27===t.kind?1:0)):e.isEqualityOperatorKind(t.kind)&&e.isBinaryExpression(a)&&e.isEqualityOperatorKind(a.operatorToken.kind)?i.getTypeAtLocation(a.left):i.getContextualType(t)}}(k,o,i,p),ne=e.mapDefined(re&&(re.isUnion()?re.types:[re]),(function(e){return e.isLiteral()?e.value:void 0})),ie=k&&re&&function(t,r,n){return e.firstDefined(r&&(r.isUnion()?r.types:[r]),(function(r){var i=r&&r.symbol;return i&&424&i.flags&&!e.isAbstractConstructorSymbol(i)?D(i,t,n):void 0}))}(k,re,p);return{kind:0,symbols:W,completionKind:J,isInSnippetScope:y,propertyAccessToConvert:w,isNewIdentifierLocation:V,location:z,keywordFilters:K,literals:ne,symbolToOriginInfoMap:G,recommendedCompletion:ie,previousToken:k,isJsxInitializer:F,insideJsDocTagTypeExpression:h,symbolToSortTextMap:$,isTypeOnlyLocation:X,isJsxIdentifierExpected:B};function ae(t,r,n){V=!!t.getStringIndexType(),C&&e.some(t.getCallSignatures())&&(V=!0);var i=196===E.kind?E:E.parent;if(a)W.push.apply(W,e.filter(M(t,p),(function(e){return p.isValidPropertyAccessForCompletions(i,t,e)})));else{for(var o=t.getApparentProperties(),c=0,l=o;c<l.length;c++){var u=l[c];p.isValidPropertyAccessForCompletions(i,t,u)&&oe(u,!1,n)}if(o.length){var d=e.getEtsComponentExpressionInnerCallExpressionNode(E)||e.getRootEtsComponentInnerCallExpressionNode(E);d&&(function(t,r){var n=e.getSourceFileOfNode(t).locals;if(!n)return;var i=78===t.expression.kind?t.expression.escapedText:void 0,a=new e.Map;n.forEach((function(t){var r;e.getEtsExtendDecoratorComponentNames(null===(r=t.valueDeclaration)||void 0===r?void 0:r.decorators,f).forEach((function(e){a.has(e)?a.get(e).push(t):a.set(e,[t])}))})),i&&a.has(i)&&a.get(i).forEach((function(e){oe(e,!1,r)}))}(d,n),function(t,r){var n,i,a=e.getSourceFileOfNode(t).locals;if(!a)return;var o=e.isIdentifier(t.expression)?t.expression.escapedText:void 0,s=new e.Map;a.forEach((function(t){var r;e.hasEtsStylesDecoratorNames(null===(r=t.valueDeclaration)||void 0===r?void 0:r.decorators,f)&&(s.has(t.escapedName)?s.get(t.escapedName).push(t):s.set(t.escapedName,[t]))})),null===(i=null===(n=e.getContainingStruct(t))||void 0===n?void 0:n.symbol.members)||void 0===i||i.forEach((function(t){var r;e.hasEtsStylesDecoratorNames(null===(r=t.valueDeclaration)||void 0===r?void 0:r.decorators,f)&&(s.has(t.escapedName)?s.get(t.escapedName).push(t):s.set(t.escapedName,[t]))})),o&&s.size>0&&s.forEach((function(e){e.forEach((function(e){oe(e,!1,r)}))}))}(d,n))}}if(r&&s.includeCompletionsWithInsertText){var m=p.getPromisedTypeOfPromise(t);if(m)for(var g=0,_=m.getApparentProperties();g<_.length;g++){u=_[g];p.isValidPropertyAccessForCompletions(i,m,u)&&oe(u,!0,n)}}}function oe(t,n,i){var a=e.firstDefined(t.declarations,(function(t){return e.tryCast(e.getNameOfDeclaration(t),e.isComputedPropertyName)}));if(a){var o=se(a.expression),c=o&&p.getSymbolAtLocation(o),l=c&&D(c,x,p);if(l&&!G[e.getSymbolId(l)]){W.push(l);var u=l.parent;G[e.getSymbolId(l)]=u&&e.isExternalModuleSymbol(u)?{kind:m(6),moduleSymbol:u,isDefaultExport:!1}:{kind:m(2)}}else s.includeCompletionsWithInsertText&&(f(t),d(t),W.push(t))}else f(t),d(t),W.push(t);function d(t){(function(t){return!!(t.valueDeclaration&&32&e.getEffectiveModifierFlags(t.valueDeclaration)&&e.isClassLike(t.valueDeclaration.parent))})(t)&&($[e.getSymbolId(t)]=r.LocalDeclarationPriority)}function f(t){s.includeCompletionsWithInsertText&&(n&&!G[e.getSymbolId(t)]?G[e.getSymbolId(t)]={kind:m(8)}:i&&(G[e.getSymbolId(t)]={kind:16}))}function m(e){return i?16|e:e}}function se(t){return e.isIdentifier(t)?t:e.isPropertyAccessExpression(t)?se(t.expression):void 0}function ce(){var a=function(){var t,r,n=function(t){if(t){var r=t.parent;switch(t.kind){case 18:case 27:if(e.isObjectLiteralExpression(r)||e.isObjectBindingPattern(r))return r;break;case 41:return e.isMethodDeclaration(r)?e.tryCast(r.parent,e.isObjectLiteralExpression):void 0;case 78:return"async"===t.text&&e.isShorthandPropertyAssignment(t.parent)?t.parent.parent:void 0}}return}(x);if(!n)return 0;if(J=0,201===n.kind){var i=function(t,r){var n=r.getContextualType(t);if(n)return n;if(e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind)return r.getTypeAtLocation(t.parent);return}(n,p);if(void 0===i)return 16777216&n.flags?2:(H=!0,0);var a=p.getContextualType(n,4),o=(a||i).getStringIndexType(),s=(a||i).getNumberIndexType();if(V=!!o||!!s,t=R(i,a,n,p),r=n.properties,0===t.length&&!s)return H=!0,0}else{e.Debug.assert(197===n.kind),V=!1;var c=e.getRootDeclaration(n.parent);if(!e.isVariableLike(c))return e.Debug.fail("Root declaration is not variable-like.");var l=e.hasInitializer(c)||e.hasType(c)||241===c.parent.parent.kind;if(l||161!==c.kind||(e.isExpression(c.parent)?l=!!p.getContextualType(c.parent):166!==c.parent.kind&&169!==c.parent.kind||(l=e.isExpression(c.parent.parent)&&!!p.getContextualType(c.parent.parent))),l){var u=p.getTypeAtLocation(n);if(!u)return 2;var d=e.getContainingClass(n);t=p.getPropertiesOfType(u).filter((function(t){return!(24&e.getDeclarationModifierFlagsFromSymbol(t))||d&&e.contains(u.symbol.declarations,d)})),r=n.elements}}t&&t.length>0&&(W=function(t,r){if(0===r.length)return t;for(var n=new e.Set,i=new e.Set,a=0,o=r;a<o.length;a++){var s=o[a];if((291===s.kind||292===s.kind||199===s.kind||166===s.kind||168===s.kind||169===s.kind||293===s.kind)&&!he(s)){var c=void 0;if(e.isSpreadAssignment(s))me(s,n);else if(e.isBindingElement(s)&&s.propertyName)78===s.propertyName.kind&&(c=s.propertyName.escapedText);else{var l=e.getNameOfDeclaration(s);c=l&&e.isPropertyNameLiteral(l)?e.getEscapedTextOfIdentifierOrLiteral(l):void 0}void 0!==c&&i.add(c)}}var u=t.filter((function(e){return!i.has(e.escapedName)}));return _e(n,u),u}(t,e.Debug.checkDefined(r)));return ge(),1}()||function(){var t=!x||18!==x.kind&&27!==x.kind?void 0:e.tryCast(x.parent,e.isNamedImportsOrExports);if(!t)return 0;var r=(267===t.kind?t.parent.parent:t.parent).moduleSpecifier;if(!r)return 267===t.kind?2:0;var n=p.getSymbolAtLocation(r);if(!n)return 2;J=3,V=!1;var i=p.getExportsAndPropertiesOfModule(n),a=new e.Set(t.elements.filter((function(e){return!he(e)})).map((function(e){return(e.propertyName||e.name).escapedText})));return W=i.filter((function(e){return"default"!==e.escapedName&&!a.has(e.escapedName)})),1}()||function(){var t,n=!x||18!==x.kind&&27!==x.kind?void 0:e.tryCast(x.parent,e.isNamedExports);if(!n)return 0;var i=e.findAncestor(n,e.or(e.isSourceFile,e.isModuleDeclaration));return J=5,V=!1,null===(t=i.locals)||void 0===t||t.forEach((function(t,n){var a,o;W.push(t),(null===(o=null===(a=i.symbol)||void 0===a?void 0:a.exports)||void 0===o?void 0:o.has(n))&&($[e.getSymbolId(t)]=r.OptionalMember)})),1}()||(function(t){if(t){var r=t.parent;switch(t.kind){case 20:case 27:return e.isConstructorDeclaration(t.parent)?t.parent:void 0;default:if(pe(t))return r.parent}}}(x)?(J=5,V=!0,K=4,1):0)||function(){var t=function(t,r,n,i){switch(n.kind){case 337:return e.tryCast(n.parent,e.isObjectTypeDeclaration);case 1:var a=e.tryCast(e.lastOrUndefined(e.cast(n.parent,e.isSourceFile).statements),e.isObjectTypeDeclaration);if(a&&!e.findChildOfKind(a,19,t))return a;break;case 78:if(e.isPropertyDeclaration(n.parent)&&n.parent.initializer===n)return;if(L(n))return e.findAncestor(n,e.isObjectTypeDeclaration)}if(!r)return;switch(r.kind){case 62:return;case 26:case 19:return L(n)&&n.parent.name===n?n.parent.parent:e.tryCast(n,e.isObjectTypeDeclaration);case 18:case 27:return e.tryCast(r.parent,e.isObjectTypeDeclaration);default:if(!L(r))return e.getLineAndCharacterOfPosition(t,r.getEnd()).line!==e.getLineAndCharacterOfPosition(t,i).line&&e.isObjectTypeDeclaration(n)?n:void 0;var o=e.isClassLike(r.parent.parent)?I:P;return o(r.kind)||41===r.kind||e.isIdentifier(r)&&o(e.stringToToken(r.text))?r.parent.parent:void 0}}(i,x,z,o);if(!t)return 0;if(J=3,V=!0,K=41===x.kind?0:e.isClassLike(t)?2:3,!e.isClassLike(t))return 1;var r=26===x.kind?x.parent.parent:x.parent,n=e.isClassElement(r)?e.getEffectiveModifierFlags(r):0;if(78===x.kind&&!he(x))switch(x.getText()){case"private":n|=8;break;case"static":n|=32}if(!(8&n)){var a=e.flatMap(e.getAllSuperTypeNodes(t),(function(e){var r=p.getTypeAtLocation(e);return 32&n?(null==r?void 0:r.symbol)&&p.getPropertiesOfType(p.getTypeOfSymbolAtLocation(r.symbol,t)):r&&p.getPropertiesOfType(r)}));W=function(t,r,n){for(var i=new e.Set,a=0,o=r;a<o.length;a++){var s=o[a];if((164===s.kind||166===s.kind||168===s.kind||169===s.kind)&&(!he(s)&&!e.hasEffectiveModifier(s,8)&&e.hasEffectiveModifier(s,32)===!!(32&n))){var c=e.getPropertyNameForPropertyNameNode(s.name);c&&i.add(c)}}return t.filter((function(t){return!(i.has(t.escapedName)||!t.declarations||8&e.getDeclarationModifierFlagsFromSymbol(t)||t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration))}))}(a,t.members,n)}return 1}()||function(){var t=function(t){if(t){var r=t.parent;switch(t.kind){case 31:case 30:case 43:case 78:case 202:case 284:case 283:case 285:if(r&&(277===r.kind||278===r.kind)){if(31===t.kind){var n=e.findPrecedingToken(t.pos,i,void 0);if(!r.typeArguments||n&&43===n.kind)break}return r}if(283===r.kind)return r.parent.parent;break;case 10:if(r&&(283===r.kind||285===r.kind))return r.parent.parent;break;case 19:if(r&&286===r.kind&&r.parent&&283===r.parent.kind)return r.parent.parent.parent;if(r&&285===r.kind)return r.parent.parent}}return}(x),r=t&&p.getContextualType(t.attributes);if(!r)return 0;var n=t&&p.getContextualType(t.attributes,4);return W=function(t,r){for(var n=new e.Set,i=new e.Set,a=0,o=r;a<o.length;a++){var s=o[a];he(s)||(283===s.kind?n.add(s.name.escapedText):e.isJsxSpreadAttribute(s)&&me(s,i))}var c=t.filter((function(e){return!n.has(e.escapedName)}));return _e(i,c),c}(R(r,n,t.attributes,p),t.attributes.properties),ge(),J=3,V=!1,1}()||(function(){K=function(t){if(t){var r,n=e.findAncestor(t.parent,(function(t){return e.isClassLike(t)?"quit":!(!e.isFunctionLikeDeclaration(t)||r!==t.body)||(r=t,!1)}));return n&&n}}(x)?5:1,J=1,V=function(){if(x){var e=x.parent.kind;switch(O(x)){case 27:return 204===e||167===e||205===e||200===e||218===e||175===e||201===e;case 20:return 204===e||167===e||205===e||208===e||187===e;case 22:return 200===e||172===e||159===e;case 140:case 141:return!0;case 24:return 259===e;case 18:return 254===e||255===e||201===e;case 62:return 251===e||218===e;case 15:return 220===e;case 16:return 230===e;case 123:case 121:case 122:return 164===e}}return!1}(),k!==x&&e.Debug.assert(!!k,"Expected 'contextToken' to be defined when different from 'previousToken'.");var a=k!==x?k.getStart():o,u=function(t,r,n){var i=t;for(;i&&!e.positionBelongsToNode(i,r,n);)i=i.parent;return i}(x,a,i)||i;y=function(t){switch(t.kind){case 300:case 220:case 286:case 232:return!0;default:return e.isStatement(t)}}(u);var d=2887656|(X?0:111551);W=p.getSymbolsInScope(u,d),e.Debug.assertEachIsDefined(W,"getSymbolsInScope() should all be defined");for(var m=0,g=W;m<g.length;m++){var _=g[m];p.isArgumentsSymbol(_)||e.some(_.declarations,(function(e){return e.getSourceFile()===i}))||($[e.getSymbolId(_)]=r.GlobalsOrKeywords)}if(s.includeCompletionsWithInsertText&&300!==u.kind){var h=p.tryGetThisTypeAt(u,!1);if(h&&!function(e,t,r){var n=r.resolveName("self",void 0,111551,!1);if(n&&r.getTypeOfSymbolAtLocation(n,t)===e)return!0;var i=r.resolveName("global",void 0,111551,!1);if(i&&r.getTypeOfSymbolAtLocation(i,t)===e)return!0;var a=r.resolveName("globalThis",void 0,111551,!1);if(a&&r.getTypeOfSymbolAtLocation(a,t)===e)return!0;return!1}(h,i,p))for(var v=0,b=M(h,p);v<b.length;v++){_=b[v];G[e.getSymbolId(_)]={kind:1},W.push(_),$[e.getSymbolId(_)]=r.SuggestedClassMembers}}if(!H&&!!s.includeCompletionsForModuleExports&&(!(!i.externalModuleIndicator&&!i.commonJsModuleIndicator)||!!e.compilerOptionsIndicateEs6Modules(t.getCompilerOptions())||e.programContainsModules(t))){var S=k&&e.isIdentifier(k)?k.text.toLowerCase():"",w=function(r,a){var o=Y&&Y.get(i.fileName,p,c&&a.getProjectVersion?a.getProjectVersion():void 0);if(o)return n("getSymbolsFromOtherSourceFileExports: Using cached list"),o;var s=e.timestamp();n("getSymbolsFromOtherSourceFileExports: Recomputing list"+(c?" for details entry":""));var l=new e.Map,u=new e.Map,d=new e.Map,f=new e.Map,m=[],g=new e.Map;return e.codefix.forEachExternalModuleToImportFrom(t,a,i,!c,!0,(function(t,r,n,i){if(!c||!c.source||e.stripQuotes(t.name)===c.source){var a=n.getTypeChecker(),o=a.resolveExternalModuleSymbol(t);if(e.addToSeen(l,e.getSymbolId(o))){o!==t&&e.every(o.declarations,e.isNonGlobalDeclaration)&&_(o,t,i,!0);for(var s=0,p=a.getExportsAndPropertiesOfModule(t);s<p.length;s++){var m=p[s],h=e.getSymbolId(m).toString();if(e.addToSeen(u,h)&&!e.some(m.declarations,(function(t){return e.isExportSpecifier(t)&&!!t.propertyName&&e.isIdentifierANonContextualKeyword(t.name)}))){var y=a.getMergedSymbol(m.parent)!==o;if(y||e.some(m.declarations,(function(t){return e.isExportSpecifier(t)&&!t.propertyName&&!!t.parent.parent.moduleSpecifier}))){var v=y?m:de(m);if(!v)continue;var b=e.getSymbolId(v).toString();g.has(b)||d.has(b)?e.addToSeen(d,h):(f.set(b,{alias:m,moduleSymbol:t,isFromPackageJson:i}),d.set(h,!0))}else f.delete(h),_(m,t,i,!1)}}}}})),f.forEach((function(e){return _(e.alias,e.moduleSymbol,e.isFromPackageJson,!1)})),n("getSymbolsFromOtherSourceFileExports: "+(e.timestamp()-s)),m;function _(t,n,i,a){var o="default"===t.escapedName;if(o&&(t=e.getLocalSymbolForExportDefault(t)||t),!p.isUndefinedSymbol(t)){e.addToSeen(g,e.getSymbolId(t));var s={kind:4,moduleSymbol:n,isDefaultExport:o,isFromPackageJson:i};m.push({symbol:t,symbolName:e.getNameForExportedSymbol(t,r),origin:s,skipFilter:a})}}}(t.getCompilerOptions().target,l);!c&&Y&&Y.set(i.fileName,w,l.getProjectVersion&&l.getProjectVersion()),w.forEach((function(t){var n=t.symbol,i=t.symbolName,a=t.skipFilter,o=t.origin;if(c){if(c.source&&e.stripQuotes(o.moduleSymbol.name)!==c.source)return}else if(!a&&!function(e,t){if(0===t.length)return!0;for(var r=0,n=0;n<e.length;n++)if(e.charCodeAt(n)===t.charCodeAt(r)&&++r===t.length)return!0;return!1}(i.toLowerCase(),S))return;var s=e.getSymbolId(n);W.push(n),G[s]=o,$[s]=r.AutoImportSuggestions}))}!function(t){var n=le();n&&(K=x&&e.isAssertionExpression(x.parent)?6:7);var a=function(t){var r=e.findAncestor(t,(function(t){return e.isFunctionBlock(t)||function(t){return t.parent&&e.isArrowFunction(t.parent)&&t.parent.body===t}(t)||e.isBindingPattern(t)?"quit":e.isVariableDeclaration(t)}));return r}(z);e.filterMutate(t,(function(t){if(!e.isSourceFile(z)){if(e.isExportAssignment(z.parent))return!0;if(a&&t.valueDeclaration===a)return!1;var o=e.skipAlias(t,p);if(i.externalModuleIndicator&&!f.allowUmdGlobalAccess&&$[e.getSymbolId(t)]===r.GlobalsOrKeywords&&$[e.getSymbolId(o)]===r.AutoImportSuggestions)return!1;if(t=o,e.isInRightSideOfInternalImportEqualsDeclaration(z))return!!(1920&t.flags);if(n)return ue(t)}return!!(111551&e.getCombinedLocalAndExportSymbolFlags(t))}))}(W)}(),1);return 1===a}function le(){return h||!function(t){return t&&112===t.kind&&(177===t.parent.kind||e.isTypeOfExpression(t.parent))}(x)&&(e.isPossiblyTypeArgumentPosition(x,i,p)||e.isPartOfTypeNode(z)||function(t){if(t){var r=t.parent.kind;switch(t.kind){case 58:return 164===r||163===r||161===r||251===r||e.isFunctionLikeKind(r);case 62:return 257===r;case 127:return 226===r;case 29:return 174===r||207===r;case 94:return 160===r}}return!1}(x))}function ue(t,r){void 0===r&&(r=new e.Map);var n=e.skipAlias(t.exportSymbol||t,p);return!!(788968&n.flags)||!!(1536&n.flags)&&e.addToSeen(r,e.getSymbolId(n))&&p.getExportsOfModule(n).some((function(e){return ue(e,r)}))}function de(t){return function(e,t,r){var n=t;for(;2097152&n.flags&&(n=e.getImmediateAliasedSymbol(n));)if(r(n))return n}(p,t,(function(t){return e.some(t.declarations,(function(t){return e.isExportSpecifier(t)||!!t.localSymbol}))}))}function pe(t){return!!t.parent&&e.isParameter(t.parent)&&e.isConstructorDeclaration(t.parent.parent)&&(e.isParameterPropertyModifier(t.kind)||e.isDeclarationName(t))}function fe(t){return e.isFunctionLikeKind(t)&&167!==t}function me(e,t){var r=e.expression,n=p.getSymbolAtLocation(r),i=n&&p.getTypeOfSymbolAtLocation(n,r),a=i&&i.properties;a&&a.forEach((function(e){t.add(e.name)}))}function ge(){W.forEach((function(t){16777216&t.flags&&($[e.getSymbolId(t)]=$[e.getSymbolId(t)]||r.OptionalMember)}))}function _e(t,n){if(0!==t.size)for(var i=0,a=n;i<a.length;i++){var o=a[i];t.has(o.name)&&($[e.getSymbolId(o)]=r.MemberDeclaredBySpreadAssignment)}}function he(e){return e.getStart(i)<=o&&o<=e.getEnd()}}function T(t,r,n,i,a){var o=c(n)?e.getNameForExportedSymbol(t,r):t.name;if(!(void 0===o||1536&t.flags&&e.isSingleOrDoubleQuote(o.charCodeAt(0))||e.isKnownSymbol(t))){var s={name:o,needsConvertPropertyAccess:!1};if(e.isIdentifierText(o,r,a?1:0)||t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration))return s;switch(i){case 3:return;case 0:return{name:JSON.stringify(o),needsConvertPropertyAccess:!1};case 2:case 1:return 32===o.charCodeAt(0)?void 0:{name:o,needsConvertPropertyAccess:!0};case 5:case 4:return s;default:e.Debug.assertNever(i)}}}!function(e){e.LocalDeclarationPriority="0",e.LocationPriority="1",e.OptionalMember="2",e.MemberDeclaredBySpreadAssignment="3",e.SuggestedClassMembers="4",e.GlobalsOrKeywords="5",e.AutoImportSuggestions="6",e.JavascriptIdentifiers="7"}(r=t.SortText||(t.SortText={})),function(e){e.ThisProperty="ThisProperty/"}(n=t.CompletionSource||(t.CompletionSource={})),function(e){e[e.ThisType=1]="ThisType",e[e.SymbolMember=2]="SymbolMember",e[e.Export=4]="Export",e[e.Promise=8]="Promise",e[e.Nullable=16]="Nullable",e[e.SymbolMemberNoExport=2]="SymbolMemberNoExport",e[e.SymbolMemberExport=6]="SymbolMemberExport"}(i||(i={})),function(e){e[e.None=0]="None",e[e.All=1]="All",e[e.ClassElementKeywords=2]="ClassElementKeywords",e[e.InterfaceElementKeywords=3]="InterfaceElementKeywords",e[e.ConstructorParameterKeywords=4]="ConstructorParameterKeywords",e[e.FunctionLikeBodyKeywords=5]="FunctionLikeBodyKeywords",e[e.TypeAssertionKeywords=6]="TypeAssertionKeywords",e[e.TypeKeywords=7]="TypeKeywords",e[e.Last=7]="Last"}(a||(a={})),function(e){e[e.Continue=0]="Continue",e[e.Success=1]="Success",e[e.Fail=2]="Fail"}(o||(o={})),t.createImportSuggestionsForFileCache=function(){var t,r,n;return{isEmpty:function(){return!t},clear:function(){t=void 0,n=void 0,r=void 0},set:function(e,i,a){t=i,n=e,a&&(r=a)},get:function(i,a,o){if(i===n)return o?r===o?t:void 0:(e.forEach(t,(function(e){var t,r,n;(null===(t=e.symbol.declarations)||void 0===t?void 0:t.length)&&(e.symbol=a.getMergedSymbol(e.origin.isDefaultExport&&null!==(r=e.symbol.declarations[0].localSymbol)&&void 0!==r?r:e.symbol.declarations[0].symbol)),(null===(n=e.origin.moduleSymbol.declarations)||void 0===n?void 0:n.length)&&(e.origin.moduleSymbol=a.getMergedSymbol(e.origin.moduleSymbol.declarations[0].symbol))})),t)}}},t.getCompletionsAtPosition=function(n,i,a,o,s,c,l){var m=i.getTypeChecker(),_=i.getCompilerOptions(),h=e.findPrecedingToken(s,o);if(!l||e.isInString(o,s,h)||function(t,r,n,i){switch(r){case".":case"@":return!0;case'"':case"'":case"`":return!!n&&e.isStringLiteralOrTemplate(n)&&i===n.getStart(t)+1;case"#":return!!n&&e.isPrivateIdentifier(n)&&!!e.getContainingClass(n);case"<":return!!n&&29===n.kind&&(!e.isBinaryExpression(n.parent)||j(n.parent));case"/":return!!n&&(e.isStringLiteralLike(n)?!!e.tryGetImportFromModuleSpecifier(n):43===n.kind&&e.isJsxClosingElement(n.parent));default:return e.Debug.assertNever(r)}}(o,l,h,s)){var y=t.StringCompletions.getStringLiteralCompletions(o,s,h,m,_,n,a,c);if(y)return y;if(h&&e.isBreakOrContinueStatement(h.parent)&&(80===h.kind||86===h.kind||78===h.kind))return function(t){var n=function(t){var n=[],i=new e.Map,a=t;for(;a&&!e.isFunctionLike(a);){if(e.isLabeledStatement(a)){var o=a.label.text;i.has(o)||(i.set(o,!0),n.push({name:o,kindModifiers:"",kind:"label",sortText:r.LocationPriority}))}a=a.parent}return n}(t);if(n.length)return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:n}}(h.parent);var v=E(i,a,o,p(o,_),s,c,void 0,n);if(v)switch(v.kind){case 0:return function(t,n,i,a,o,s){var c=o.symbols,l=o.completionKind,u=o.isInSnippetScope,m=o.isNewIdentifierLocation,_=o.location,h=o.propertyAccessToConvert,y=o.keywordFilters,v=o.literals,k=o.symbolToOriginInfoMap,x=o.recommendedCompletion,S=o.isJsxInitializer,w=o.insideJsDocTagTypeExpression,D=o.symbolToSortTextMap;if(_&&_.parent&&e.isJsxClosingElement(_.parent)){var E=_.parent.parent.openingElement.tagName,T=!!e.findChildOfKind(_.parent,31,t),A={name:E.getFullText(t)+(T?"":">"),kind:"class",kindModifiers:void 0,sortText:r.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:d(_),entries:[A]}}var P=[];if(p(t,i)){var I=b(c,P,void 0,_,t,n,i.target,a,l,s,h,o.isJsxIdentifierExpected,S,x,k,D);!function(t,n,i,a,o){e.getNameTable(t).forEach((function(t,s){if(t!==n){var c=e.unescapeLeadingUnderscores(s);!i.has(c)&&e.isIdentifierText(c,a)&&(i.add(c),o.push({name:c,kind:"warning",kindModifiers:"",sortText:r.JavascriptIdentifiers,isFromUncheckedFile:!0}))}}))}(t,_.pos,I,i.target,P)}else{if(!(m||c&&0!==c.length||0!==y))return;b(c,P,void 0,_,t,n,i.target,a,l,s,h,o.isJsxIdentifierExpected,S,x,k,D)}if(0!==y)for(var F=new e.Set(P.map((function(e){return e.name}))),O=0,R=function(t,r){if(!r)return N(t);var n=t+7+1;return C[n]||(C[n]=N(t).filter((function(t){return!function(e){switch(e){case 126:case 129:case 156:case 132:case 134:case 92:case 155:case 117:case 136:case 118:case 138:case 139:case 140:case 141:case 142:case 145:case 146:case 121:case 122:case 123:case 143:case 148:case 149:case 150:case 152:case 153:return!0;default:return!1}}(e.stringToToken(t.name))})))}(y,!w&&e.isSourceFileJS(t));O<R.length;O++){var M=R[O];F.has(M.name)||P.push(M)}for(var L=0,j=v;L<j.length;L++){var B=j[L];P.push(g(t,s,B))}return{isGlobalCompletion:u,isMemberCompletion:f(l),isNewIdentifierLocation:m,optionalReplacementSpan:d(_),entries:P}}(o,m,_,a,v,c);case 1:return u(e.JsDoc.getJSDocTagNameCompletions());case 2:return u(e.JsDoc.getJSDocTagCompletions());case 3:return u(e.JsDoc.getJSDocParameterNameCompletions(v.tag));default:return e.Debug.assertNever(v)}}},t.getCompletionEntriesFromSymbols=b,t.getCompletionEntryDetails=function(r,n,i,a,o,s,l,u,d){var p=r.getTypeChecker(),f=r.getCompilerOptions(),g=o.name,_=e.findPrecedingToken(a,i);if(e.isInString(i,a,_))return t.StringCompletions.getStringLiteralCompletionDetails(g,i,a,_,p,f,s,d);var h=k(r,n,i,a,o,s,u);switch(h.type){case"request":var y=h.request;switch(y.kind){case 1:return e.JsDoc.getJSDocTagNameCompletionDetails(g);case 2:return e.JsDoc.getJSDocTagCompletionDetails(g);case 3:return e.JsDoc.getJSDocParameterNameCompletionDetails(g);default:return e.Debug.assertNever(y)}case"symbol":var v=h.symbol,b=h.location,w=function(t,r,n,i,a,o,s,l,u,d,p){var f=t[e.getSymbolId(r)];if(!f||!c(f))return{codeActions:void 0,sourceDisplay:void 0};var m=f.moduleSymbol,g=i.getMergedSymbol(e.skipAlias(r.exportSymbol||r,i)),_=e.codefix.getImportCompletionAction(g,m,s,e.getNameForExportedSymbol(r,o.target),a,n,d,u&&e.isIdentifier(u)?u.getStart(s):l,p),h=_.moduleSpecifier,y=_.codeAction;return{sourceDisplay:[e.textPart(h)],codeActions:[y]}}(h.symbolToOriginInfoMap,v,r,p,s,f,i,a,h.previousToken,l,u);return S(v,p,i,b,d,w.codeActions,w.sourceDisplay);case"literal":var D=h.literal;return x(m(i,u,D),"string","string"==typeof D?e.SymbolDisplayPartKind.stringLiteral:e.SymbolDisplayPartKind.numericLiteral);case"none":return A().some((function(e){return e.name===g}))?x(g,"keyword",e.SymbolDisplayPartKind.keyword):void 0;default:e.Debug.assertNever(h)}},t.createCompletionDetailsForSymbol=S,t.createCompletionDetails=w,t.getCompletionEntrySymbol=function(e,t,r,n,i,a,o){var s=k(e,t,r,n,i,a,o);return"symbol"===s.type?s.symbol:void 0},function(e){e[e.Data=0]="Data",e[e.JsDocTagName=1]="JsDocTagName",e[e.JsDocTag=2]="JsDocTag",e[e.JsDocParameterName=3]="JsDocParameterName"}(s||(s={})),function(e){e[e.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",e[e.Global=1]="Global",e[e.PropertyAccess=2]="PropertyAccess",e[e.MemberLike=3]="MemberLike",e[e.String=4]="String",e[e.None=5]="None"}(t.CompletionKind||(t.CompletionKind={}));var C=[],A=e.memoize((function(){for(var t=[],n=80;n<=157;n++)t.push({name:e.tokenToString(n),kind:"keyword",kindModifiers:"",sortText:r.GlobalsOrKeywords});return t}));function N(t){return C[t]||(C[t]=A().filter((function(r){var n=e.stringToToken(r.name);switch(t){case 0:return!1;case 1:return F(n)||134===n||140===n||150===n||141===n||e.isTypeKeyword(n)&&151!==n;case 5:return F(n);case 2:return I(n);case 3:return P(n);case 4:return e.isParameterPropertyModifier(n);case 6:return e.isTypeKeyword(n)||85===n;case 7:return e.isTypeKeyword(n);default:return e.Debug.assertNever(t)}})))}function P(e){return 143===e}function I(t){switch(t){case 126:case 133:case 135:case 147:case 130:case 134:return!0;default:return e.isClassMemberModifier(t)}}function F(t){return 130===t||131===t||127===t||!e.isContextualKeyword(t)&&!I(t)}function O(t){return e.isIdentifier(t)?t.originalKeywordKind||0:t.kind}function R(t,r,n,i){var a=r&&r!==t,o=!a||3&r.flags?t:i.getUnionType([t,r]),s=o.isUnion()?i.getAllPossiblePropertiesOfTypes(o.types.filter((function(t){return!(131068&t.flags||i.isArrayLikeType(t)||e.typeHasCallOrConstructSignatures(t,i)||i.isTypeInvalidDueToUnionDiscriminant(t,n))}))):o.getApparentProperties();return a?s.filter((function(t){return e.some(t.declarations,(function(e){return e.parent!==n}))})):s}function M(t,r){return t.isUnion()?e.Debug.checkEachDefined(r.getAllPossiblePropertiesOfTypes(t.types),"getAllPossiblePropertiesOfTypes() should all be defined"):e.Debug.checkEachDefined(t.getApparentProperties(),"getApparentProperties() should all be defined")}function L(t){return t.parent&&e.isClassOrTypeElement(t.parent)&&e.isObjectTypeDeclaration(t.parent.parent)}function j(t){var r=t.left;return e.nodeIsMissing(r)}t.getPropertiesForObjectExpression=R}(e.Completions||(e.Completions={}))}(d||(d={})),function(e){!function(t){function r(t,r){return{fileName:r.fileName,textSpan:e.createTextSpanFromNode(t,r),kind:"none"}}function n(t){return e.isThrowStatement(t)?[t]:e.isTryStatement(t)?e.concatenate(t.catchClause?n(t.catchClause):t.tryBlock&&n(t.tryBlock),t.finallyBlock&&n(t.finallyBlock)):e.isFunctionLike(t)?void 0:o(t,n)}function a(t){return e.isBreakOrContinueStatement(t)?[t]:e.isFunctionLike(t)?void 0:o(t,a)}function o(t,r){var n=[];return t.forEachChild((function(t){var i=r(t);void 0!==i&&n.push.apply(n,e.toArray(i))})),n}function s(e,t){var r=c(t);return!!r&&r===e}function c(t){return e.findAncestor(t,(function(r){switch(r.kind){case 246:if(242===t.kind)return!1;case 239:case 240:case 241:case 238:case 237:return!t.label||function(t,r){return!!e.findAncestor(t.parent,(function(t){return e.isLabeledStatement(t)?t.label.escapedText===r:"quit"}))}(r,t.label.escapedText);default:return e.isFunctionLike(r)&&"quit"}}))}function l(t,r){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return!(!r||!e.contains(n,r.kind))&&(t.push(r),!0)}function u(t){var r=[];if(l(r,t.getFirstToken(),97,115,90)&&237===t.kind)for(var n=t.getChildren(),i=n.length-1;i>=0&&!l(r,n[i],115);i--);return e.forEach(a(t.statement),(function(e){s(t,e)&&l(r,e.getFirstToken(),80,86)})),r}function d(e){var t=c(e);if(t)switch(t.kind){case 239:case 240:case 241:case 237:case 238:return u(t);case 246:return p(t)}}function p(t){var r=[];return l(r,t.getFirstToken(),107),e.forEach(t.caseBlock.clauses,(function(n){l(r,n.getFirstToken(),81,88),e.forEach(a(n),(function(e){s(t,e)&&l(r,e.getFirstToken(),80)}))})),r}function f(t,r){var n=[];(l(n,t.getFirstToken(),111),t.catchClause&&l(n,t.catchClause.getFirstToken(),82),t.finallyBlock)&&l(n,e.findChildOfKind(t,96,r),96);return n}function m(t,r){var i=function(t){for(var r=t;r.parent;){var n=r.parent;if(e.isFunctionBlock(n)||300===n.kind)return n;if(e.isTryStatement(n)&&n.tryBlock===r&&n.catchClause)return r;r=n}}(t);if(i){var a=[];return e.forEach(n(i),(function(t){a.push(e.findChildOfKind(t,109,r))})),e.isFunctionBlock(i)&&e.forEachReturnStatement(i,(function(t){a.push(e.findChildOfKind(t,105,r))})),a}}function g(t,r){var i=e.getContainingFunction(t);if(i){var a=[];return e.forEachReturnStatement(e.cast(i.body,e.isBlock),(function(t){a.push(e.findChildOfKind(t,105,r))})),e.forEach(n(i.body),(function(t){a.push(e.findChildOfKind(t,109,r))})),a}}function _(t){var r=e.getContainingFunction(t);if(r){var n=[];return r.modifiers&&r.modifiers.forEach((function(e){l(n,e,130)})),e.forEachChild(r,(function(t){h(t,(function(t){e.isAwaitExpression(t)&&l(n,t.getFirstToken(),131)}))})),n}}function h(t,r){r(t),e.isFunctionLike(t)||e.isClassLike(t)||e.isInterfaceDeclaration(t)||e.isModuleDeclaration(t)||e.isTypeAliasDeclaration(t)||e.isTypeNode(t)||e.forEachChild(t,(function(e){return h(e,r)}))}t.getDocumentHighlights=function(t,n,a,o,s){var c=e.getTouchingPropertyName(a,o);if(c.parent&&(e.isJsxOpeningElement(c.parent)&&c.parent.tagName===c||e.isJsxClosingElement(c.parent))){var y=c.parent.parent,v=[y.openingElement,y.closingElement].map((function(e){return r(e.tagName,a)}));return[{fileName:a.fileName,highlightSpans:v}]}return function(t,r,n,i,a){var o=new e.Set(a.map((function(e){return e.fileName}))),s=e.FindAllReferences.getReferenceEntriesForNode(t,r,n,a,i,void 0,o);if(!s)return;var c=e.arrayToMultiMap(s.map(e.FindAllReferences.toHighlightSpan),(function(e){return e.fileName}),(function(e){return e.span}));return e.arrayFrom(c.entries(),(function(t){var r=t[0],i=t[1];if(!o.has(r)){e.Debug.assert(n.redirectTargetsMap.has(r));var s=n.getSourceFile(r);r=e.find(a,(function(e){return!!e.redirectInfo&&e.redirectInfo.redirectTarget===s})).fileName,e.Debug.assert(o.has(r))}return{fileName:r,highlightSpans:i}}))}(o,c,t,n,s)||function(t,n){var a=function(t,n){switch(t.kind){case 99:case 91:return e.isIfStatement(t.parent)?function(t,n){for(var i=function(t,r){var n=[];for(;e.isIfStatement(t.parent)&&t.parent.elseStatement===t;)t=t.parent;for(;;){var i=t.getChildren(r);l(n,i[0],99);for(var a=i.length-1;a>=0&&!l(n,i[a],91);a--);if(!t.elseStatement||!e.isIfStatement(t.elseStatement))break;t=t.elseStatement}return n}(t,n),a=[],o=0;o<i.length;o++){if(91===i[o].kind&&o<i.length-1){for(var s=i[o],c=i[o+1],u=!0,d=c.getStart(n)-1;d>=s.end;d--)if(!e.isWhiteSpaceSingleLine(n.text.charCodeAt(d))){u=!1;break}if(u){a.push({fileName:n.fileName,textSpan:e.createTextSpanFromBounds(s.getStart(),c.end),kind:"reference"}),o++;continue}}a.push(r(i[o],n))}return a}(t.parent,n):void 0;case 105:return c(t.parent,e.isReturnStatement,g);case 109:return c(t.parent,e.isThrowStatement,m);case 111:case 82:case 96:return c(82===t.kind?t.parent.parent:t.parent,e.isTryStatement,f);case 107:return c(t.parent,e.isSwitchStatement,p);case 81:case 88:return e.isDefaultClause(t.parent)||e.isCaseClause(t.parent)?c(t.parent.parent.parent,e.isSwitchStatement,p):void 0;case 80:case 86:return c(t.parent,e.isBreakOrContinueStatement,d);case 97:case 115:case 90:return c(t.parent,(function(t){return e.isIterationStatement(t,!0)}),u);case 133:return s(e.isConstructorDeclaration,[133]);case 135:case 147:return s(e.isAccessor,[135,147]);case 131:return c(t.parent,e.isAwaitExpression,_);case 130:return y(_(t));case 125:return y(function(t){var r=e.getContainingFunction(t);if(!r)return;var n=[];return e.forEachChild(r,(function(t){h(t,(function(t){e.isYieldExpression(t)&&l(n,t.getFirstToken(),125)}))})),n}(t));default:return e.isModifierKind(t.kind)&&(e.isDeclaration(t.parent)||e.isVariableStatement(t.parent))?y((a=t.kind,o=t.parent,e.mapDefined(function(t,r){var n=t.parent;switch(n.kind){case 260:case 300:case 232:case 287:case 288:return 128&r&&e.isClassDeclaration(t)?i(i([],t.members),[t]):n.statements;case 167:case 166:case 253:return i(i([],n.parameters),e.isClassLike(n.parent)?n.parent.members:[]);case 254:case 223:case 255:case 256:case 178:var a=n.members;if(92&r){var o=e.find(n.members,e.isConstructorDeclaration);if(o)return i(i([],a),o.parameters)}else if(128&r)return i(i([],a),[n]);return a;case 201:return;default:e.Debug.assertNever(n,"Invalid container kind.")}}(o,e.modifierToFlag(a)),(function(t){return e.findModifier(t,a)})))):void 0}var a,o;function s(r,i){return c(t.parent,r,(function(t){return e.mapDefined(t.symbol.declarations,(function(t){return r(t)?e.find(t.getChildren(n),(function(t){return e.contains(i,t.kind)})):void 0}))}))}function c(e,t,r){return t(e)?y(r(e,n)):void 0}function y(e){return e&&e.map((function(e){return r(e,n)}))}}(t,n);return a&&[{fileName:n.fileName,highlightSpans:a}]}(c,a)}}(e.DocumentHighlights||(e.DocumentHighlights={}))}(d||(d={})),function(e){function t(t,n,i){void 0===n&&(n="");var a=new e.Map,o=e.createGetCanonicalFileName(!!t);function s(e,t,r,n,i,a,o){return l(e,t,r,n,i,a,!0,o)}function c(e,t,r,n,i,a,o){return l(e,t,r,n,i,a,!1,o)}function l(t,r,n,o,s,c,l,u){var d=e.getOrUpdate(a,o,(function(){return new e.Map})),p=d.get(r),f=6===u?100:n.target||1;!p&&i&&((m=i.getDocument(o,r))&&(e.Debug.assert(l),p={sourceFile:m,languageServiceRefCount:0},d.set(r,p)));if(p)p.sourceFile.version!==c&&(p.sourceFile=e.updateLanguageServiceSourceFile(p.sourceFile,s,c,s.getChangeRange(p.sourceFile.scriptSnapshot),void 0,n),i&&i.setDocument(o,r,p.sourceFile)),l&&p.languageServiceRefCount++;else{var m=e.createLanguageServiceSourceFile(t,s,f,c,!1,u,n);i&&i.setDocument(o,r,m),p={sourceFile:m,languageServiceRefCount:1},d.set(r,p)}return e.Debug.assert(0!==p.languageServiceRefCount),p.sourceFile}function u(t,r){var n=e.Debug.checkDefined(a.get(r)),i=n.get(t);i.languageServiceRefCount--,e.Debug.assert(i.languageServiceRefCount>=0),0===i.languageServiceRefCount&&n.delete(t)}return{acquireDocument:function(t,i,a,c,l){return s(t,e.toPath(t,n,o),i,r(i),a,c,l)},acquireDocumentWithKey:s,updateDocument:function(t,i,a,s,l){return c(t,e.toPath(t,n,o),i,r(i),a,s,l)},updateDocumentWithKey:c,releaseDocument:function(t,i){return u(e.toPath(t,n,o),r(i))},releaseDocumentWithKey:u,getLanguageServiceRefCounts:function(t){return e.arrayFrom(a.entries(),(function(e){var r=e[0],n=e[1].get(t);return[r,n&&n.languageServiceRefCount]}))},reportStats:function(){var t=e.arrayFrom(a.keys()).filter((function(e){return e&&"_"===e.charAt(0)})).map((function(e){var t=a.get(e),r=[];return t.forEach((function(e,t){r.push({name:t,refCount:e.languageServiceRefCount})})),r.sort((function(e,t){return t.refCount-e.refCount})),{bucket:e,sourceFiles:r}}));return JSON.stringify(t,void 0,2)},getKeyForCompilationSettings:r}}function r(t){return e.sourceFileAffectingCompilerOptions.map((function(r){return e.getCompilerOptionValue(t,r)})).join("|")}e.createDocumentRegistry=function(e,r){return t(e,r)},e.createDocumentRegistryInternal=t}(d||(d={})),function(e){!function(t){function r(t,r){return e.forEach(300===t.kind?t.statements:t.body.statements,(function(t){return r(t)||c(t)&&e.forEach(t.body&&t.body.statements,r)}))}function n(t,n){if(t.externalModuleIndicator||void 0!==t.imports)for(var i=0,a=t.imports;i<a.length;i++){var o=a[i];n(e.importFromModuleSpecifier(o),o)}else r(t,(function(t){switch(t.kind){case 270:case 264:(r=t).moduleSpecifier&&e.isStringLiteral(r.moduleSpecifier)&&n(r,r.moduleSpecifier);break;case 263:var r;l(r=t)&&n(r,r.moduleReference.expression)}}))}function i(t,r,n){var i=t.parent;if(i){var a=n.getMergedSymbol(i);return e.isExternalModuleSymbol(a)?{exportingModuleSymbol:a,exportKind:r}:void 0}}function o(e,t){return t.getMergedSymbol(s(e).symbol)}function s(t){if(204===t.kind)return t.getSourceFile();var r=t.parent;return 300===r.kind?r:(e.Debug.assert(260===r.kind),e.cast(r.parent,c))}function c(e){return 259===e.kind&&10===e.name.kind}function l(e){return 275===e.moduleReference.kind&&10===e.moduleReference.expression.kind}t.createImportTracker=function(t,i,u,d){var p=function(t,r,i){for(var a=new e.Map,o=0,s=t;o<s.length;o++){var c=s[o];i&&i.throwIfCancellationRequested(),n(c,(function(t,n){var i=r.getSymbolAtLocation(n);if(i){var o=e.getSymbolId(i).toString(),s=a.get(o);s||a.set(o,s=[]),s.push(t)}}))}return a}(t,u,d);return function(n,f,m){var g=function(t,n,i,a,l,u){var d=a.exportingModuleSymbol,p=a.exportKind,f=e.nodeSeenTracker(),m=e.nodeSeenTracker(),g=[],_=!!d.globalExports,h=_?void 0:[];return v(d),{directImports:g,indirectUsers:y()};function y(){if(_)return t;for(var r=0,i=d.declarations;r<i.length;r++){var a=i[r];e.isExternalModuleAugmentation(a)&&n.has(a.getSourceFile().fileName)&&S(a)}return h.map(e.getSourceFileOfNode)}function v(t){var r=w(t);if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n];if(f(a))switch(u&&u.throwIfCancellationRequested(),a.kind){case 204:if(e.isImportCall(a)){b(a);break}if(!_){var c=a.parent;if(2===p&&251===c.kind){var d=c.name;if(78===d.kind){g.push(d);break}}}break;case 78:break;case 263:x(a,a.name,e.hasSyntacticModifier(a,1),!1);break;case 264:g.push(a);var m=a.importClause&&a.importClause.namedBindings;m&&266===m.kind?x(a,m.name,!1,!0):!_&&e.isDefaultImport(a)&&S(s(a));break;case 270:a.exportClause?272===a.exportClause.kind?S(s(a),!0):g.push(a):v(o(a,l));break;case 196:a.isTypeOf&&!a.qualifier&&k(a)&&S(a.getSourceFile(),!0),g.push(a);break;default:e.Debug.failBadSyntaxKind(a,"Unexpected import kind.")}}}function b(t){S(e.findAncestor(t,c)||t.getSourceFile(),!!k(t,!0))}function k(t,r){return void 0===r&&(r=!1),e.findAncestor(t,(function(t){return r&&c(t)?"quit":e.some(t.modifiers,(function(e){return 93===e.kind}))}))}function x(t,n,i,a){if(2===p)a||g.push(t);else if(!_){var o=s(t);e.Debug.assert(300===o.kind||259===o.kind),i||function(t,n,i){var a=i.getSymbolAtLocation(n);return!!r(t,(function(t){if(e.isExportDeclaration(t)){var r=t.exportClause;return!t.moduleSpecifier&&r&&e.isNamedExports(r)&&r.elements.some((function(e){return i.getExportSpecifierLocalTargetSymbol(e)===a}))}}))}(o,n,l)?S(o,!0):S(o)}}function S(t,r){if(void 0===r&&(r=!1),e.Debug.assert(!_),m(t)&&(h.push(t),r)){var n=l.getMergedSymbol(t.symbol);if(n){e.Debug.assert(!!(1536&n.flags));var i=w(n);if(i)for(var a=0,o=i;a<o.length;a++){var c=o[a];e.isImportTypeNode(c)||S(s(c),!0)}}}}function w(t){return i.get(e.getSymbolId(t).toString())}}(t,i,p,f,u,d),_=g.directImports,h=g.indirectUsers;return a({indirectUsers:h},function(t,r,n,i,a){var o=[],s=[];function c(e,t){o.push([e,t])}if(t)for(var u=0,d=t;u<d.length;u++){p(d[u])}return{importSearches:o,singleReferences:s};function p(t){if(263!==t.kind)if(78!==t.kind)if(196!==t.kind){if(10===t.moduleSpecifier.kind)if(270!==t.kind){var o=t.importClause||{name:void 0,namedBindings:void 0},u=o.name,d=o.namedBindings;if(d)switch(d.kind){case 266:f(d.name);break;case 267:0!==n&&1!==n||m(d);break;default:e.Debug.assertNever(d)}if(u&&(1===n||2===n)&&(!a||u.escapedText===e.symbolEscapedNameNoDefault(r)))c(u,i.getSymbolAtLocation(u))}else t.exportClause&&e.isNamedExports(t.exportClause)&&m(t.exportClause)}else if(t.qualifier){var p=e.getFirstIdentifier(t.qualifier);p.escapedText===e.symbolName(r)&&s.push(p)}else 2===n&&s.push(t.argument.literal);else f(t);else l(t)&&f(t.name)}function f(e){2!==n||a&&!g(e.escapedText)||c(e,i.getSymbolAtLocation(e))}function m(e){if(e)for(var t=0,n=e.elements;t<n.length;t++){var o=n[t],l=o.name,u=o.propertyName;if(g((u||l).escapedText))if(u)s.push(u),a&&l.escapedText!==r.escapedName||c(l,i.getSymbolAtLocation(l));else c(l,273===o.kind&&o.propertyName?i.getExportSpecifierLocalTargetSymbol(o):i.getSymbolAtLocation(l))}}function g(e){return e===r.escapedName||0!==n&&"default"===e}}(_,n,f.exportKind,u,m))}},function(e){e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.ExportEquals=2]="ExportEquals"}(t.ExportKind||(t.ExportKind={})),function(e){e[e.Import=0]="Import",e[e.Export=1]="Export"}(t.ImportExport||(t.ImportExport={})),t.findModuleReferences=function(e,t,r){for(var i=[],a=e.getTypeChecker(),o=0,s=t;o<s.length;o++){var c=s[o],l=r.valueDeclaration;if(300===l.kind){for(var u=0,d=c.referencedFiles;u<d.length;u++){var p=d[u];e.getSourceFileFromReference(c,p)===l&&i.push({kind:"reference",referencingFile:c,ref:p})}for(var f=0,m=c.typeReferenceDirectives;f<m.length;f++){p=m[f];var g=e.getResolvedTypeReferenceDirectives().get(p.fileName);void 0!==g&&g.resolvedFileName===l.fileName&&i.push({kind:"reference",referencingFile:c,ref:p})}}n(c,(function(e,t){a.getSymbolAtLocation(t)===r&&i.push({kind:"import",literal:t})}))}return i},t.getImportOrExportSymbol=function(t,r,n,a){return a?o():o()||function(){if(!function(t){var r=t.parent;switch(r.kind){case 263:return r.name===t&&l(r);case 268:return!r.propertyName;case 265:case 266:return e.Debug.assert(r.name===t),!0;case 199:return e.isInJSFile(t)&&e.isRequireVariableDeclaration(r,!0);default:return!1}}(t))return;var i=n.getImmediateAliasedSymbol(r);if(!i)return;i=function(t,r){if(t.declarations)for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(e.isExportSpecifier(a)&&!a.propertyName&&!a.parent.parent.moduleSpecifier)return r.getExportSpecifierLocalTargetSymbol(a);if(e.isPropertyAccessExpression(a)&&e.isModuleExportsAccessExpression(a.expression)&&!e.isPrivateIdentifier(a.name))return r.getExportSpecifierLocalTargetSymbol(a.name);if(e.isShorthandPropertyAssignment(a)&&e.isBinaryExpression(a.parent.parent)&&2===e.getAssignmentDeclarationKind(a.parent.parent))return r.getExportSpecifierLocalTargetSymbol(a.name)}return t}(i,n),"export="===i.escapedName&&(i=function(t,r){if(2097152&t.flags)return e.Debug.checkDefined(r.getImmediateAliasedSymbol(t));var n=t.valueDeclaration;if(e.isExportAssignment(n))return e.Debug.checkDefined(n.expression.symbol);if(e.isBinaryExpression(n))return e.Debug.checkDefined(n.right.symbol);if(e.isSourceFile(n))return e.Debug.checkDefined(n.symbol);return e.Debug.fail()}(i,n));var a=e.symbolEscapedNameNoDefault(i);if(void 0===a||"default"===a||a===r.escapedName)return{kind:0,symbol:i}}();function o(){var i=t.parent,o=i.parent;if(r.exportSymbol)return 202===i.kind?r.declarations.some((function(e){return e===i}))&&e.isBinaryExpression(o)?d(o,!1):void 0:s(r.exportSymbol,c(i));var l=function(t,r){var n=e.isVariableDeclaration(t)?t:e.isBindingElement(t)?e.walkUpBindingElementsAndPatterns(t):void 0;return n?t.name!==r||e.isCatchClause(n.parent)?void 0:e.isVariableStatement(n.parent.parent)?n.parent.parent:void 0:t}(i,t);if(l&&e.hasSyntacticModifier(l,1)){if(e.isImportEqualsDeclaration(l)&&l.moduleReference===t){if(a)return;return{kind:0,symbol:n.getSymbolAtLocation(l.name)}}return s(r,c(l))}if(e.isNamespaceExport(i))return s(r,0);if(e.isExportAssignment(i))return u(i);if(e.isExportAssignment(o))return u(o);if(e.isBinaryExpression(i))return d(i,!0);if(e.isBinaryExpression(o))return d(o,!0);if(e.isJSDocTypedefTag(i))return s(r,0);function u(t){var n=e.Debug.checkDefined(t.symbol.parent,"Expected export symbol to have a parent"),i=t.isExportEquals?2:1;return{kind:1,symbol:r,exportInfo:{exportingModuleSymbol:n,exportKind:i}}}function d(t,i){var a;switch(e.getAssignmentDeclarationKind(t)){case 1:a=0;break;case 2:a=2;break;default:return}var o=i?n.getSymbolAtLocation(e.getNameOfAccessExpression(e.cast(t.left,e.isAccessExpression))):r;return o&&s(o,a)}}function s(e,t){var r=i(e,t,n);return r&&{kind:1,symbol:e,exportInfo:r}}function c(t){return e.hasSyntacticModifier(t,512)?1:0}},t.getExportInfo=i}(e.FindAllReferences||(e.FindAllReferences={}))}(d||(d={})),function(e){!function(t){var r;function n(e,t){return void 0===t&&(t=1),{kind:t,node:e.name||e,context:s(e)}}function o(e){return e&&void 0===e.kind}function s(t){if(e.isDeclaration(t))return c(t);if(t.parent){if(!e.isDeclaration(t.parent)&&!e.isExportAssignment(t.parent)){if(e.isInJSFile(t)){var r=e.isBinaryExpression(t.parent)?t.parent:e.isAccessExpression(t.parent)&&e.isBinaryExpression(t.parent.parent)&&t.parent.parent.left===t.parent?t.parent.parent:void 0;if(r&&0!==e.getAssignmentDeclarationKind(r))return c(r)}if(e.isJsxOpeningElement(t.parent)||e.isJsxClosingElement(t.parent))return t.parent.parent;if(e.isJsxSelfClosingElement(t.parent)||e.isLabeledStatement(t.parent)||e.isBreakOrContinueStatement(t.parent))return t.parent;if(e.isStringLiteralLike(t)){var n=e.tryGetImportFromModuleSpecifier(t);if(n){var i=e.findAncestor(n,(function(t){return e.isDeclaration(t)||e.isStatement(t)||e.isJSDocTag(t)}));return e.isDeclaration(i)?c(i):i}}var a=e.findAncestor(t,e.isComputedPropertyName);return a?c(a.parent):void 0}return t.parent.name===t||e.isConstructorDeclaration(t.parent)||e.isExportAssignment(t.parent)||(e.isImportOrExportSpecifier(t.parent)||e.isBindingElement(t.parent))&&t.parent.propertyName===t||88===t.kind&&e.hasSyntacticModifier(t.parent,513)?c(t.parent):void 0}}function c(t){if(t)switch(t.kind){case 251:return e.isVariableDeclarationList(t.parent)&&1===t.parent.declarations.length?e.isVariableStatement(t.parent.parent)?t.parent.parent:e.isForInOrOfStatement(t.parent.parent)?c(t.parent.parent):t.parent:t;case 199:return c(t.parent.parent);case 268:return t.parent.parent.parent;case 273:case 266:return t.parent.parent;case 265:case 272:return t.parent;case 218:return e.isExpressionStatement(t.parent)?t.parent:t;case 241:case 240:return{start:t.initializer,end:t.expression};case 291:case 292:return e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)?c(e.findAncestor(t.parent,(function(t){return e.isBinaryExpression(t)||e.isForInOrOfStatement(t)}))):t;default:return t}}function l(e,t,r){if(r){var n=o(r)?h(r.start,t,r.end):h(r,t);return n.start!==e.start||n.length!==e.length?{contextSpan:n}:void 0}}function u(t,i,a,o,s){if(300!==o.kind){var c=t.getTypeChecker();if(292===o.parent.kind){var l=[];return r.getReferenceEntriesForShorthandPropertyAssignment(o,c,(function(e){return l.push(n(e))})),l}if(106===o.kind||e.isSuperProperty(o.parent)){var u=c.getSymbolAtLocation(o);return u.valueDeclaration&&[n(u.valueDeclaration)]}return d(s,o,t,a,i,{implementations:!0,use:1})}}function d(t,n,i,a,o,s,c){return void 0===s&&(s={}),void 0===c&&(c=new e.Set(a.map((function(e){return e.fileName})))),p(r.getReferencedSymbolsForNode(t,n,i,a,o,s,c))}function p(t){return t&&e.flatMap(t,(function(e){return e.references}))}function f(t){var r=t.getSourceFile();return{sourceFile:r,textSpan:h(e.isComputedPropertyName(t)?t.expression:t,r)}}function m(t,n,i){var a=r.getIntersectingMeaningFromDeclarations(i,t),o=t.declarations&&e.firstOrUndefined(t.declarations)||i,s=e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(n,t,o.getSourceFile(),o,o,a);return{displayParts:s.displayParts,kind:s.symbolKind}}function g(e){var t=_(e);if(0===e.kind)return a(a({},t),{isWriteAccess:!1,isDefinition:!1});var r=e.kind,n=e.node;return a(a({},t),{isWriteAccess:v(n),isDefinition:b(n),isInString:2===r||void 0})}function _(e){if(0===e.kind)return{textSpan:e.textSpan,fileName:e.fileName};var t=e.node.getSourceFile(),r=h(e.node,t);return a({textSpan:r,fileName:t.fileName},l(r,t,e.context))}function h(t,r,n){var i=t.getStart(r),a=(n||t).getEnd();return e.isStringLiteralLike(t)&&(e.Debug.assert(void 0===n),i+=1,a-=1),e.createTextSpanFromBounds(i,a)}function y(e){return 0===e.kind?e.textSpan:h(e.node,e.node.getSourceFile())}function v(t){var r=e.getDeclarationFromName(t);return!!r&&function(t){if(8388608&t.flags)return!0;switch(t.kind){case 218:case 199:case 254:case 223:case 255:case 88:case 258:case 294:case 273:case 265:case 263:case 268:case 256:case 327:case 334:case 283:case 259:case 262:case 266:case 272:case 161:case 292:case 257:case 160:return!0;case 291:return!e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent);case 253:case 209:case 167:case 166:case 168:case 169:return!!t.body;case 251:case 164:return!!t.initializer||e.isCatchClause(t.parent);case 165:case 163:case 336:case 329:return!1;default:return e.Debug.failBadSyntaxKind(t)}}(r)||88===t.kind||e.isWriteAccess(t)}function b(t){return 88===t.kind||!!e.getDeclarationFromName(t)||e.isLiteralComputedPropertyDeclarationName(t)||133===t.kind&&e.isConstructorDeclaration(t.parent)}!function(e){e[e.Symbol=0]="Symbol",e[e.Label=1]="Label",e[e.Keyword=2]="Keyword",e[e.This=3]="This",e[e.String=4]="String",e[e.TripleSlashReference=5]="TripleSlashReference"}(t.DefinitionKind||(t.DefinitionKind={})),function(e){e[e.Span=0]="Span",e[e.Node=1]="Node",e[e.StringLiteral=2]="StringLiteral",e[e.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",e[e.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal"}(t.EntryKind||(t.EntryKind={})),t.nodeEntry=n,t.isContextWithStartAndEndNode=o,t.getContextNode=c,t.toContextSpan=l,function(e){e[e.Other=0]="Other",e[e.References=1]="References",e[e.Rename=2]="Rename"}(t.FindReferencesUse||(t.FindReferencesUse={})),t.findReferencedSymbols=function(t,n,i,o,s){var u=e.getTouchingPropertyName(o,s),d=r.getReferencedSymbolsForNode(s,u,t,i,n,{use:1}),p=t.getTypeChecker();return d&&d.length?e.mapDefined(d,(function(t){var r=t.definition,i=t.references;return r&&{definition:p.runWithCancellationToken(n,(function(t){return function(t,r,n){var i=function(){switch(t.type){case 0:var i=m(g=t.symbol,r,n),o=i.displayParts,s=i.kind,l=o.map((function(e){return e.text})).join(""),u=g.declarations&&e.firstOrUndefined(g.declarations),d=u?e.getNameOfDeclaration(u)||u:n;return a(a({},f(d)),{name:l,kind:s,displayParts:o,context:c(u)});case 1:d=t.node;return a(a({},f(d)),{name:d.text,kind:"label",displayParts:[e.displayPart(d.text,e.SymbolDisplayPartKind.text)]});case 2:d=t.node;var p=e.tokenToString(d.kind);return a(a({},f(d)),{name:p,kind:"keyword",displayParts:[{text:p,kind:"keyword"}]});case 3:d=t.node;var g,_=(g=r.getSymbolAtLocation(d))&&e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(r,g,d.getSourceFile(),e.getContainerNode(d),d).displayParts||[e.textPart("this")];return a(a({},f(d)),{name:"this",kind:"var",displayParts:_});case 4:d=t.node;return a(a({},f(d)),{name:d.text,kind:"var",displayParts:[e.displayPart(e.getTextOfNode(d),e.SymbolDisplayPartKind.stringLiteral)]});case 5:return{textSpan:e.createTextSpanFromRange(t.reference),sourceFile:t.file,name:t.reference.fileName,kind:"string",displayParts:[e.displayPart('"'+t.reference.fileName+'"',e.SymbolDisplayPartKind.stringLiteral)]};default:return e.Debug.assertNever(t)}}(),o=i.sourceFile,s=i.textSpan,u=i.name,d=i.kind,p=i.displayParts,g=i.context;return a({containerKind:"",containerName:"",fileName:o.fileName,kind:d,name:u,textSpan:s,displayParts:p},l(s,o,g))}(r,t,u)})),references:i.map(g)}})):void 0},t.getImplementationsAtPosition=function(t,r,n,o,s){var c,l=e.getTouchingPropertyName(o,s),d=u(t,r,n,l,s);if(202===l.parent.kind||199===l.parent.kind||203===l.parent.kind||106===l.kind)c=d&&i([],d);else for(var p=d&&i([],d),f=new e.Map;p&&p.length;){var g=p.shift();if(e.addToSeen(f,e.getNodeId(g.node))){c=e.append(c,g);var h=u(t,r,n,g.node,g.node.pos);h&&p.push.apply(p,h)}}var y=t.getTypeChecker();return e.map(c,(function(t){return function(t,r){var n=_(t);if(0!==t.kind){var i=t.node;return a(a({},n),function(t,r){var n=r.getSymbolAtLocation(e.isDeclaration(t)&&t.name?t.name:t);return n?m(n,r,t):201===t.kind?{kind:"interface",displayParts:[e.punctuationPart(20),e.textPart("object literal"),e.punctuationPart(21)]}:223===t.kind?{kind:"local class",displayParts:[e.punctuationPart(20),e.textPart("anonymous local class"),e.punctuationPart(21)]}:{kind:e.getNodeKind(t),displayParts:[]}}(i,r))}return a(a({},n),{kind:"",displayParts:[]})}(t,y)}))},t.findReferenceOrRenameEntries=function(t,n,i,a,o,s,c){return e.map(p(r.getReferencedSymbolsForNode(o,a,t,i,n,s)),(function(e){return c(e,a,t.getTypeChecker())}))},t.getReferenceEntriesForNode=d,t.toRenameLocation=function(t,r,n,i){return a(a({},_(t)),i&&function(t,r,n){if(0!==t.kind&&e.isIdentifier(r)){var i=t.node,a=t.kind,o=i.parent,s=r.text,c=e.isShorthandPropertyAssignment(o);if(c||e.isObjectBindingElementWithoutPropertyName(o)&&o.name===i&&void 0===o.dotDotDotToken){var l={prefixText:s+": "},u={suffixText:": "+s};if(3===a)return l;if(4===a)return u;if(c){var d=o.parent;return e.isObjectLiteralExpression(d)&&e.isBinaryExpression(d.parent)&&e.isModuleExportsAccessExpression(d.parent.left)?l:u}return l}if(e.isImportSpecifier(o)&&!o.propertyName){var p=e.isExportSpecifier(r.parent)?n.getExportSpecifierLocalTargetSymbol(r.parent):n.getSymbolAtLocation(r);return e.contains(p.declarations,o)?{prefixText:s+" as "}:e.emptyOptions}if(e.isExportSpecifier(o)&&!o.propertyName)return r===t.node||n.getSymbolAtLocation(r)===n.getSymbolAtLocation(t.node)?{prefixText:s+" as "}:{suffixText:" as "+s}}return e.emptyOptions}(t,r,n))},t.toReferenceEntry=g,t.toHighlightSpan=function(e){var t=_(e);if(0===e.kind)return{fileName:t.fileName,span:{textSpan:t.textSpan,kind:"reference"}};var r=v(e.node),n=a({textSpan:t.textSpan,kind:r?"writtenReference":"reference",isInString:2===e.kind||void 0},t.contextSpan&&{contextSpan:t.contextSpan});return{fileName:t.fileName,span:n}},t.getTextSpanOfEntry=y,function(r){function i(t,r,n){for(var i,a=0,o=r.get(t.path)||e.emptyArray;a<o.length;a++){var s=o[a];if(e.isReferencedFile(s)){var c=n.getSourceFileByPath(s.file),l=e.getReferencedFileLocation(n.getSourceFileByPath,s);e.isReferenceFileLocation(l)&&(i=e.append(i,{kind:0,fileName:c.fileName,textSpan:e.createTextSpanFromRange(l)}))}}return i}function a(t,r,n){if(t.parent&&e.isNamespaceExportDeclaration(t.parent)){var i=n.getAliasedSymbol(r),a=n.getMergedSymbol(i);if(i!==a)return a}}function o(t,r,n,i,a,o){var c=1536&t.flags&&t.declarations&&e.find(t.declarations,e.isSourceFile);if(c){var u=t.exports.get("export="),p=l(r,t,!!u,n,o);if(!u||!o.has(c.fileName))return p;var f=r.getTypeChecker();return s(r,p,d(t=e.skipAlias(u,f),void 0,n,o,f,i,a))}}function s(t){for(var r,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];for(var a=0,o=n;a<o.length;a++){var s=o[a];if(s&&s.length)if(r)for(var l=function(n){if(!n.definition||0!==n.definition.type)return r.push(n),"continue";var i=n.definition.symbol,a=e.findIndex(r,(function(e){return!!e.definition&&0===e.definition.type&&e.definition.symbol===i}));if(-1===a)return r.push(n),"continue";var o=r[a];r[a]={definition:o.definition,references:o.references.concat(n.references).sort((function(r,n){var i=c(t,r),a=c(t,n);if(i!==a)return e.compareValues(i,a);var o=y(r),s=y(n);return o.start!==s.start?e.compareValues(o.start,s.start):e.compareValues(o.length,s.length)}))}},u=0,d=s;u<d.length;u++){l(d[u])}else r=s}return r}function c(e,t){var r=0===t.kind?e.getSourceFile(t.fileName):t.node.getSourceFile();return e.getSourceFiles().indexOf(r)}function l(r,i,a,o,s){e.Debug.assert(!!i.valueDeclaration);var c=e.mapDefined(t.findModuleReferences(r,o,i),(function(t){if("import"===t.kind){var r=t.literal.parent;if(e.isLiteralTypeNode(r)){var i=e.cast(r.parent,e.isImportTypeNode);if(a&&!i.qualifier)return}return n(t.literal)}return{kind:0,fileName:t.referencingFile.fileName,textSpan:e.createTextSpanFromRange(t.ref)}}));if(i.declarations)for(var l=0,u=i.declarations;l<u.length;l++){switch((m=u[l]).kind){case 300:break;case 259:s.has(m.getSourceFile().fileName)&&c.push(n(m.name));break;default:e.Debug.assert(!!(33554432&i.flags),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}}var d=i.exports.get("export=");if(d)for(var p=0,f=d.declarations;p<f.length;p++){var m,g=(m=f[p]).getSourceFile();if(s.has(g.fileName)){var _=e.isBinaryExpression(m)&&e.isPropertyAccessExpression(m.left)?m.left.expression:e.isExportAssignment(m)?e.Debug.checkDefined(e.findChildOfKind(m,93,g)):e.getNameOfDeclaration(m)||m;c.push(n(_))}}return c.length?[{definition:{type:0,symbol:i},references:c}]:e.emptyArray}function u(t){return 143===t.kind&&e.isTypeOperatorNode(t.parent)&&143===t.parent.operator}function d(t,r,n,i,a,o,s){var c=r&&function(t,r,n,i){var a=r.parent;if(e.isExportSpecifier(a)&&i)return A(r,t,a,n);return e.firstDefined(t.declarations,(function(i){if(!i.parent){if(33554432&t.flags)return;e.Debug.fail("Unexpected symbol at "+e.Debug.formatSyntaxKind(r.kind)+": "+e.Debug.formatSymbol(t))}return e.isTypeLiteralNode(i.parent)&&e.isUnionTypeNode(i.parent.parent)?n.getPropertyOfType(n.getTypeFromTypeNode(i.parent.parent),t.name):void 0}))}(t,r,a,!q(s))||t,l=r?B(r,c):7,u=[],d=new m(n,i,r?function(t){switch(t.kind){case 167:case 133:return 1;case 78:if(e.isClassLike(t.parent))return e.Debug.assert(t.parent.name===t),2;default:return 0}}(r):0,a,o,l,s,u),f=q(s)?e.find(c.declarations,e.isExportSpecifier):void 0;if(f)C(f.name,c,f,d.createSearch(r,t,void 0),d,!0,!0);else if(r&&88===r.kind)N(r,c,d),g(r,c,{exportingModuleSymbol:e.Debug.checkDefined(c.parent,"Expected export symbol to have a parent"),exportKind:1},d);else{var _=d.createSearch(r,c,void 0,{allSearchSymbols:r?M(c,r,a,2===s.use,!!s.providePrefixAndSuffixTextForRename,!!s.implementations):[c]});p(c,d,_)}return u}function p(t,r,n){var i=function(t){var r=t.declarations,n=t.flags,i=t.parent,a=t.valueDeclaration;if(a&&(209===a.kind||223===a.kind))return a;if(!r)return;if(8196&n){var o=e.find(r,(function(t){return e.hasEffectiveModifier(t,8)||e.isPrivateIdentifierPropertyDeclaration(t)}));return o?e.getAncestor(o,254):void 0}if(r.some(e.isObjectBindingElementWithoutPropertyName))return;var s,c=i&&!(262144&t.flags);if(c&&(!e.isExternalModuleSymbol(i)||i.globalExports))return;for(var l=0,u=r;l<u.length;l++){var d=u[l],p=e.getContainerNode(d);if(s&&s!==p)return;if(!p||300===p.kind&&!e.isExternalOrCommonJsModule(p))return;if(s=p,e.isFunctionExpression(s))for(var f=void 0;f=e.getNextJSDocCommentLocation(s);)s=f}return c?s.getSourceFile():s}(t);if(i)D(i,i.getSourceFile(),n,r,!(e.isSourceFile(i)&&!e.contains(r.sourceFiles,i)));else for(var a=0,o=r.sourceFiles;a<o.length;a++){var s=o[a];r.cancellationToken.throwIfCancellationRequested(),v(s,n,r)}}var f;r.getReferencedSymbolsForNode=function(t,r,c,p,f,m,g){var _,h;if(void 0===m&&(m={}),void 0===g&&(g=new e.Set(p.map((function(e){return e.fileName})))),1===m.use?r=e.getAdjustedReferenceLocation(r):2===m.use&&(r=e.getAdjustedRenameLocation(r)),e.isSourceFile(r)){var y=e.GoToDefinition.getReferenceAtPosition(r,t,c);if(!y)return;var v=c.getTypeChecker().getMergedSymbol(y.file.symbol);if(v)return l(c,v,!1,p,g);if(!(C=c.getFileIncludeReasons()))return;return[{definition:{type:5,reference:y.reference,file:r},references:i(y.file,C,c)||e.emptyArray}]}if(!m.implementations){var b=function(t,r,i){if(e.isTypeKeyword(t.kind)){if(114===t.kind&&e.isVoidExpression(t.parent))return;if(143===t.kind&&!u(t))return;return function(t,r,i,a){var o=e.flatMap(t,(function(t){return i.throwIfCancellationRequested(),e.mapDefined(k(t,e.tokenToString(r),t),(function(e){if(e.kind===r&&(!a||a(e)))return n(e)}))}));return o.length?[{definition:{type:2,node:o[0].node},references:o}]:void 0}(r,t.kind,i,143===t.kind?u:void 0)}if(e.isJumpStatementTarget(t)){var a=e.getTargetLabel(t.parent,t.text);return a&&S(a.parent,a)}if(e.isLabelOfLabeledStatement(t))return S(t.parent,t);if(e.isThis(t))return function(t,r,i){var a=e.getThisContainer(t,!1),o=32;switch(a.kind){case 166:case 165:if(e.isObjectLiteralMethod(a))break;case 164:case 163:case 167:case 168:case 169:o&=e.getSyntacticModifierFlags(a),a=a.parent;break;case 300:if(e.isExternalModule(a)||R(t))return;case 253:case 209:break;default:return}var s=e.flatMap(300===a.kind?r:[a.getSourceFile()],(function(t){return i.throwIfCancellationRequested(),k(t,"this",e.isSourceFile(a)?t:a).filter((function(t){if(!e.isThis(t))return!1;var r=e.getThisContainer(t,!1);switch(a.kind){case 209:case 253:return a.symbol===r.symbol;case 166:case 165:return e.isObjectLiteralMethod(a)&&a.symbol===r.symbol;case 223:case 254:case 255:return r.parent&&a.symbol===r.parent.symbol&&(32&e.getSyntacticModifierFlags(r))===o;case 300:return 300===r.kind&&!e.isExternalModule(r)&&!R(t)}}))})).map((function(e){return n(e)})),c=e.firstDefined(s,(function(t){return e.isParameter(t.node.parent)?t.node:void 0}));return[{definition:{type:3,node:c||t},references:s}]}(t,r,i);if(106===t.kind)return function(t){var r=e.getSuperContainer(t,!1);if(!r)return;var i=32;switch(r.kind){case 164:case 163:case 166:case 165:case 167:case 168:case 169:i&=e.getSyntacticModifierFlags(r),r=r.parent;break;default:return}var a=r.getSourceFile(),o=e.mapDefined(k(a,"super",r),(function(t){if(106===t.kind){var a=e.getSuperContainer(t,!1);return a&&(32&e.getSyntacticModifierFlags(a))===i&&a.parent.symbol===r.symbol?n(t):void 0}}));return[{definition:{type:0,symbol:r.symbol},references:o}]}(t);return}(r,p,f);if(b)return b}var x=c.getTypeChecker(),w=x.getSymbolAtLocation(e.isConstructorDeclaration(r)&&r.parent.name||r);if(w){if("export="===w.escapedName)return l(c,w.parent,!1,p,g);var D=o(w,c,p,f,m,g);if(D&&!(33554432&w.flags))return D;var E=a(r,w,x),T=E&&o(E,c,p,f,m,g);return s(c,D,d(w,r,p,g,x,f,m),T)}if(!m.implementations&&e.isStringLiteralLike(r)){if(e.isRequireCall(r.parent,!0)||e.isExternalModuleReference(r.parent)||e.isImportDeclaration(r.parent)||e.isImportCall(r.parent)){var C=c.getFileIncludeReasons(),A=null===(h=null===(_=r.getSourceFile().resolvedModules)||void 0===_?void 0:_.get(r.text))||void 0===h?void 0:h.resolvedFileName,N=A?c.getSourceFile(A):void 0;if(N)return[{definition:{type:4,node:r},references:i(N,C,c)||e.emptyArray}]}return function(t,r,i,a){var o=e.getContextualTypeOrAncestorTypeNodeType(t,i),s=e.flatMap(r,(function(r){return a.throwIfCancellationRequested(),e.mapDefined(k(r,t.text),(function(r){if(e.isStringLiteralLike(r)&&r.text===t.text){if(!o)return n(r,2);var a=e.getContextualTypeOrAncestorTypeNodeType(r,i);if(o!==i.getStringType()&&o===a)return n(r,2)}}))}));return[{definition:{type:4,node:t},references:s}]}(r,p,x,f)}},r.getReferencesForFileName=function(t,r,n,a){var o,s;void 0===a&&(a=new e.Set(n.map((function(e){return e.fileName}))));var c=null===(o=r.getSourceFile(t))||void 0===o?void 0:o.symbol;if(c)return(null===(s=l(r,c,!1,n,a)[0])||void 0===s?void 0:s.references)||e.emptyArray;var u=r.getFileIncludeReasons(),d=r.getSourceFile(t);return d&&u&&i(d,u,r)||e.emptyArray},function(e){e[e.None=0]="None",e[e.Constructor=1]="Constructor",e[e.Class=2]="Class"}(f||(f={}));var m=function(){function r(t,r,n,i,a,o,s,c){this.sourceFiles=t,this.sourceFilesSet=r,this.specialSearchKind=n,this.checker=i,this.cancellationToken=a,this.searchMeaning=o,this.options=s,this.result=c,this.inheritsFromCache=new e.Map,this.markSeenContainingTypeReference=e.nodeSeenTracker(),this.markSeenReExportRHS=e.nodeSeenTracker(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}return r.prototype.includesSourceFile=function(e){return this.sourceFilesSet.has(e.fileName)},r.prototype.getImportSearches=function(e,r){return this.importTracker||(this.importTracker=t.createImportTracker(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(e,r,2===this.options.use)},r.prototype.createSearch=function(t,r,n,i){void 0===i&&(i={});var a=i.text,o=void 0===a?e.stripQuotes(e.symbolName(e.getLocalSymbolForExportDefault(r)||function(t){if(33555968&t.flags){var r=t.declarations&&e.find(t.declarations,(function(t){return!e.isSourceFile(t)&&!e.isModuleDeclaration(t)}));return r&&r.symbol}}(r)||r)):a,s=i.allSearchSymbols,c=void 0===s?[r]:s,l=e.escapeLeadingUnderscores(o),u=this.options.implementations&&t?function(t,r,n){var i=e.isRightSideOfPropertyAccess(t)?t.parent:void 0,a=i&&n.getTypeAtLocation(i.expression),o=e.mapDefined(a&&(a.isUnionOrIntersection()?a.types:a.symbol===r.parent?void 0:[a]),(function(e){return e.symbol&&96&e.symbol.flags?e.symbol:void 0}));return 0===o.length?void 0:o}(t,r,this.checker):void 0;return{symbol:r,comingFrom:n,text:o,escapedText:l,parents:u,allSearchSymbols:c,includes:function(t){return e.contains(c,t)}}},r.prototype.referenceAdder=function(t){var r=e.getSymbolId(t),i=this.symbolIdToReferences[r];return i||(i=this.symbolIdToReferences[r]=[],this.result.push({definition:{type:0,symbol:t},references:i})),function(e,t){return i.push(n(e,t))}},r.prototype.addStringOrCommentReference=function(e,t){this.result.push({definition:void 0,references:[{kind:0,fileName:e,textSpan:t}]})},r.prototype.markSearchedSymbols=function(t,r){for(var n=e.getNodeId(t),i=this.sourceFileToSeenSymbols[n]||(this.sourceFileToSeenSymbols[n]=new e.Set),a=!1,o=0,s=r;o<s.length;o++){var c=s[o];a=e.tryAddToSet(i,e.getSymbolId(c))||a}return a},r}();function g(e,t,r,n){var i=n.getImportSearches(t,r),a=i.importSearches,o=i.singleReferences,s=i.indirectUsers;if(o.length)for(var c=n.referenceAdder(t),l=0,u=o;l<u.length;l++){var d=u[l];_(d,n)&&c(d)}for(var p=0,f=a;p<f.length;p++){var m=f[p],g=m[0],h=m[1];w(g.getSourceFile(),n.createSearch(g,h,1),n)}if(s.length){var y=void 0;switch(r.exportKind){case 0:y=n.createSearch(e,t,1);break;case 1:y=2===n.options.use?void 0:n.createSearch(e,t,1,{text:"default"})}if(y)for(var b=0,k=s;b<k.length;b++){v(k[b],y,n)}}}function _(t,r){return!!E(t,r)&&(2!==r.options.use||!!e.isIdentifier(t)&&!(e.isImportOrExportSpecifier(t.parent)&&"default"===t.escapedText))}function h(e,t){if(e.declarations)for(var r=0,n=e.declarations;r<n.length;r++){var i=n[r],a=i.getSourceFile();w(a,t.createSearch(i,e,0),t,t.includesSourceFile(a))}}function v(t,r,n){void 0!==e.getNameTable(t).get(r.escapedText)&&w(t,r,n)}function b(t,r,n,i,a){void 0===a&&(a=n);var o=e.isParameterPropertyDeclaration(t.parent,t.parent.parent)?e.first(r.getSymbolsOfParameterPropertyDeclaration(t.parent,t.text)):r.getSymbolAtLocation(t);if(o)for(var s=0,c=k(n,o.name,a);s<c.length;s++){var l=c[s];if(e.isIdentifier(l)&&l!==t&&l.escapedText===t.escapedText){var u=r.getSymbolAtLocation(l);if(u===o||r.getShorthandAssignmentValueSymbol(l.parent)===o||e.isExportSpecifier(l.parent)&&A(l,u,l.parent,r)===o){var d=i(l);if(d)return d}}}}function k(t,r,n){return void 0===n&&(n=t),x(t,r,n).map((function(r){return e.getTouchingPropertyName(t,r)}))}function x(t,r,n){void 0===n&&(n=t);var i=[];if(!r||!r.length)return i;for(var a=t.text,o=a.length,s=r.length,c=a.indexOf(r,n.pos);c>=0&&!(c>n.end);){var l=c+s;0!==c&&e.isIdentifierPart(a.charCodeAt(c-1),99)||l!==o&&e.isIdentifierPart(a.charCodeAt(l),99)||i.push(c),c=a.indexOf(r,c+s+1)}return i}function S(t,r){var i=t.getSourceFile(),a=r.text,o=e.mapDefined(k(i,a,t),(function(t){return t===r||e.isJumpStatementTarget(t)&&e.getTargetLabel(t,a)===r?n(t):void 0}));return[{definition:{type:1,node:r},references:o}]}function w(e,t,r,n){return void 0===n&&(n=!0),r.cancellationToken.throwIfCancellationRequested(),D(e,e,t,r,n)}function D(e,t,r,n,i){if(n.markSearchedSymbols(t,r.allSearchSymbols))for(var a=0,o=x(t,r.text,e);a<o.length;a++){T(t,o[a],r,n,i)}}function E(t,r){return!!(e.getMeaningFromLocation(t)&r.searchMeaning)}function T(r,n,i,a,o){var s=e.getTouchingPropertyName(r,n);if(function(t,r){switch(t.kind){case 79:case 78:return t.text.length===r.length;case 14:case 10:var n=t;return(e.isLiteralNameOfPropertyDeclarationOrIndexAccess(n)||e.isNameOfModuleDeclaration(t)||e.isExpressionOfExternalModuleImportEqualsDeclaration(t)||e.isCallExpression(t.parent)&&e.isBindableObjectDefinePropertyCall(t.parent)&&t.parent.arguments[1]===t)&&n.text.length===r.length;case 8:return e.isLiteralNameOfPropertyDeclarationOrIndexAccess(t)&&t.text.length===r.length;case 88:return 7===r.length;default:return!1}}(s,i.text)){if(E(s,a)){var c=a.checker.getSymbolAtLocation(s);if(c){var l=s.parent;if(!e.isImportSpecifier(l)||l.propertyName!==s){if(e.isExportSpecifier(l))return e.Debug.assert(78===s.kind),void C(s,c,l,i,a,o);var u=function(t,r,n,i){var a=i.checker;return L(r,n,a,!1,2!==i.options.use||!!i.options.providePrefixAndSuffixTextForRename,(function(n,i,a,o){return a&&j(r)!==j(a)&&(a=void 0),t.includes(a||i||n)?{symbol:!i||6&e.getCheckFlags(n)?n:i,kind:o}:void 0}),(function(e){return!(t.parents&&!t.parents.some((function(t){return O(e.parent,t,i.inheritsFromCache,a)})))}))}(i,c,s,a);if(u){switch(a.specialSearchKind){case 0:o&&N(s,u,a);break;case 1:!function(t,r,n,i){e.isNewExpressionTarget(t)&&N(t,n.symbol,i);var a=function(){return i.referenceAdder(n.symbol)};if(e.isClassLike(t.parent))e.Debug.assert(88===t.kind||t.parent.name===t),function(t,r,n){var i=P(t);if(i&&i.declarations)for(var a=0,o=i.declarations;a<o.length;a++){var s=o[a],c=e.findChildOfKind(s,133,r);e.Debug.assert(167===s.kind&&!!c),n(c)}t.exports&&t.exports.forEach((function(t){var r=t.valueDeclaration;if(r&&166===r.kind){var i=r.body;i&&U(i,108,(function(t){e.isNewExpressionTarget(t)&&n(t)}))}}))}(n.symbol,r,a());else{var o=(s=t,e.tryGetClassExtendingExpressionWithTypeArguments(e.climbPastPropertyAccess(s).parent));o&&(function(t,r){var n=P(t.symbol);if(!n||!n.declarations)return;for(var i=0,a=n.declarations;i<a.length;i++){var o=a[i];e.Debug.assert(167===o.kind);var s=o.body;s&&U(s,106,(function(t){e.isCallExpressionTarget(t)&&r(t)}))}}(o,a()),function(e,t){if(function(e){return!!P(e.symbol)}(e))return;var r=e.symbol,n=t.createSearch(void 0,r,void 0);p(r,t,n)}(o,i))}var s}(s,r,i,a);break;case 2:!function(t,r,n){N(t,r.symbol,n);var i=t.parent;if(2===n.options.use||!e.isClassLike(i))return;e.Debug.assert(i.name===t);for(var a=n.referenceAdder(r.symbol),o=0,s=i.members;o<s.length;o++){var c=s[o];e.isMethodOrAccessor(c)&&e.hasSyntacticModifier(c,32)&&(c.body&&c.body.forEachChild((function t(r){108===r.kind?a(r):e.isFunctionLike(r)||e.isClassLike(r)||r.forEachChild(t)})))}}(s,i,a);break;default:e.Debug.assertNever(a.specialSearchKind)}!function(e,r,n,i){var a=t.getImportOrExportSymbol(e,r,i.checker,1===n.comingFrom);if(!a)return;var o=a.symbol;0===a.kind?q(i.options)||h(o,i):g(e,o,a.exportInfo,i)}(s,c,i,a)}else!function(t,r,n){var i=t.flags,a=t.valueDeclaration,o=n.checker.getShorthandAssignmentValueSymbol(a),s=a&&e.getNameOfDeclaration(a);33554432&i||!s||!r.includes(o)||N(s,o,n)}(c,i,a)}}}}else!a.options.implementations&&(a.options.findInStrings&&e.isInString(r,n)||a.options.findInComments&&e.isInNonReferenceComment(r,n))&&a.addStringOrCommentReference(r.fileName,e.createTextSpan(n,i.text.length))}function C(r,n,i,a,o,s,c){e.Debug.assert(!c||!!o.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");var l=i.parent,u=i.propertyName,d=i.name,p=l.parent,f=A(r,n,i,o.checker);if(c||a.includes(f)){if(u?r===u?(p.moduleSpecifier||b(),s&&2!==o.options.use&&o.markSeenReExportRHS(d)&&N(d,e.Debug.checkDefined(i.symbol),o)):o.markSeenReExportRHS(r)&&b():2===o.options.use&&"default"===d.escapedText||b(),!q(o.options)||c){var m=88===r.originalKeywordKind||88===i.name.originalKeywordKind?1:0,_=e.Debug.checkDefined(i.symbol),y=t.getExportInfo(_,m,o.checker);y&&g(r,_,y,o)}if(1!==a.comingFrom&&p.moduleSpecifier&&!u&&!q(o.options)){var v=o.checker.getExportSpecifierLocalTargetSymbol(i);v&&h(v,o)}}function b(){s&&N(r,f,o)}}function A(t,r,n,i){return function(t,r){var n=r.parent,i=r.propertyName,a=r.name;return e.Debug.assert(i===t||a===t),i?i===t:!n.parent.moduleSpecifier}(t,n)&&i.getExportSpecifierLocalTargetSymbol(n)||r}function N(t,r,n){var i="kind"in r?r:{kind:void 0,symbol:r},a=i.kind,o=i.symbol,s=n.referenceAdder(o);n.options.implementations?function(t,r,n){if(e.isDeclarationName(t)&&(i=t.parent,8388608&i.flags?!e.isInterfaceDeclaration(i)&&!e.isTypeAliasDeclaration(i):e.isVariableLike(i)?e.hasInitializer(i):e.isFunctionLikeDeclaration(i)?i.body:e.isClassLike(i)||e.isModuleOrEnumDeclaration(i)))return void r(t);var i;if(78!==t.kind)return;292===t.parent.kind&&z(t,n.checker,r);var a=I(t);if(a)return void r(a);var o=e.findAncestor(t,(function(t){return!e.isQualifiedName(t.parent)&&!e.isTypeNode(t.parent)&&!e.isTypeElement(t.parent)})),s=o.parent;if(e.hasType(s)&&s.type===o&&n.markSeenContainingTypeReference(s))if(e.hasInitializer(s))l(s.initializer);else if(e.isFunctionLike(s)&&s.body){var c=s.body;232===c.kind?e.forEachReturnStatement(c,(function(e){e.expression&&l(e.expression)})):l(c)}else e.isAssertionExpression(s)&&l(s.expression);function l(e){F(e)&&r(e)}}(t,s,n):s(t,a)}function P(e){return e.members&&e.members.get("__constructor")}function I(t){return e.isIdentifier(t)||e.isPropertyAccessExpression(t)?I(t.parent):e.isExpressionWithTypeArguments(t)?e.tryCast(t.parent.parent,e.isClassLike):void 0}function F(e){switch(e.kind){case 208:return F(e.expression);case 210:case 209:case 201:case 223:case 200:return!0;default:return!1}}function O(t,r,n,i){if(t===r)return!0;var a=e.getSymbolId(t)+","+e.getSymbolId(r),o=n.get(a);if(void 0!==o)return o;n.set(a,!1);var s=!!t.declarations&&t.declarations.some((function(t){return e.getAllSuperTypeNodes(t).some((function(e){var t=i.getTypeAtLocation(e);return!!t&&!!t.symbol&&O(t.symbol,r,n,i)}))}));return n.set(a,s),s}function R(e){return 78===e.kind&&161===e.parent.kind&&e.parent.name===e}function M(e,t,r,n,i,a){var o=[];return L(e,t,r,n,!(n&&i),(function(t,r,n){n&&j(e)!==j(n)&&(n=void 0),o.push(n||r||t)}),(function(){return!a})),o}function L(t,r,n,i,o,s,c){var l=e.getContainingObjectLiteralElement(r);if(l){var u=n.getShorthandAssignmentValueSymbol(r.parent);if(u&&i)return s(u,void 0,void 0,3);var d=n.getContextualType(l.parent),p=d&&e.firstDefined(e.getPropertySymbolsFromContextualType(l,n,d,!0),(function(e){return w(e,4)}));if(p)return p;var f=function(t,r){return e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent.parent)?r.getPropertySymbolOfDestructuringAssignment(t):void 0}(r,n),m=f&&s(f,void 0,void 0,4);if(m)return m;var g=u&&s(u,void 0,void 0,3);if(g)return g}var _=a(r,t,n);if(_){var h=s(_,void 0,void 0,1);if(h)return h}var y=w(t);if(y)return y;if(t.valueDeclaration&&e.isParameterPropertyDeclaration(t.valueDeclaration,t.valueDeclaration.parent)){var v=n.getSymbolsOfParameterPropertyDeclaration(e.cast(t.valueDeclaration,e.isParameter),t.name);return e.Debug.assert(2===v.length&&!!(1&v[0].flags)&&!!(4&v[1].flags)),w(1&t.flags?v[1]:v[0])}var b=e.getDeclarationOfKind(t,273);if(!i||b&&!b.propertyName){var k=b&&n.getExportSpecifierLocalTargetSymbol(b);if(k){var x=s(k,void 0,void 0,1);if(x)return x}}if(!i){var S=void 0;return(S=o?e.isObjectBindingElementWithoutPropertyName(r.parent)?e.getPropertySymbolFromBindingElement(n,r.parent):void 0:D(t,n))&&w(S,4)}if(e.Debug.assert(i),o)return(S=D(t,n))&&w(S,4);function w(t,r){return e.firstDefined(n.getRootSymbols(t),(function(i){return s(t,i,void 0,r)||(i.parent&&96&i.parent.flags&&c(i)?function(t,r,n,i){var a=new e.Map;return o(t);function o(t){if(96&t.flags&&e.addToSeen(a,e.getSymbolId(t)))return e.firstDefined(t.declarations,(function(t){return e.firstDefined(e.getAllSuperTypeNodes(t),(function(t){var a=n.getTypeAtLocation(t),s=a&&a.symbol&&n.getPropertyOfType(a,r);return a&&s&&(e.firstDefined(n.getRootSymbols(s),i)||o(a.symbol))}))}))}}(i.parent,i.name,n,(function(e){return s(t,i,e,r)})):void 0)}))}function D(t,r){var n=e.getDeclarationOfKind(t,199);if(n&&e.isObjectBindingElementWithoutPropertyName(n))return e.getPropertySymbolFromBindingElement(r,n)}}function j(t){return!!t.valueDeclaration&&!!(32&e.getEffectiveModifierFlags(t.valueDeclaration))}function B(t,r){var n=e.getMeaningFromLocation(t),i=r.declarations;if(i){var a=void 0;do{a=n;for(var o=0,s=i;o<s.length;o++){var c=s[o],l=e.getMeaningFromDeclaration(c);l&n&&(n|=l)}}while(n!==a)}return n}function z(t,r,n){var i=r.getSymbolAtLocation(t),a=r.getShorthandAssignmentValueSymbol(i.valueDeclaration);if(a)for(var o=0,s=a.getDeclarations();o<s.length;o++){var c=s[o];1&e.getMeaningFromDeclaration(c)&&n(c)}}function U(t,r,n){e.forEachChild(t,(function(e){e.kind===r&&n(e),U(e,r,n)}))}function q(e){return 2===e.use&&e.providePrefixAndSuffixTextForRename}r.eachExportReference=function(r,n,i,a,o,s,c,l){for(var u=t.createImportTracker(r,new e.Set(r.map((function(e){return e.fileName}))),n,i)(a,{exportKind:c?1:0,exportingModuleSymbol:o},!1),d=u.importSearches,p=u.indirectUsers,f=0,m=d;f<m.length;f++){l(m[f][0])}for(var g=0,_=p;g<_.length;g++)for(var h=0,y=k(_[g],c?"default":s);h<y.length;h++){var v=y[h];e.isIdentifier(v)&&!e.isImportOrExportSpecifier(v.parent)&&n.getSymbolAtLocation(v)===a&&l(v)}},r.isSymbolReferencedInFile=function(e,t,r,n){return void 0===n&&(n=r),b(e,t,r,(function(){return!0}),n)||!1},r.eachSymbolReferenceInFile=b,r.someSignatureUsage=function(t,r,n,i){if(!t.name||!e.isIdentifier(t.name))return!1;for(var a=e.Debug.checkDefined(n.getSymbolAtLocation(t.name)),o=0,s=r;o<s.length;o++)for(var c=0,l=k(s[o],a.name);c<l.length;c++){var u=l[c];if(e.isIdentifier(u)&&u!==t.name&&u.escapedText===t.name.escapedText){var d=e.climbPastPropertyAccess(u),p=e.isCallExpression(d.parent)&&d.parent.expression===d?d.parent:void 0,f=n.getSymbolAtLocation(u);if(f&&n.getRootSymbols(f).some((function(e){return e===a}))&&i(u,p))return!0}}return!1},r.getIntersectingMeaningFromDeclarations=B,r.getReferenceEntriesForShorthandPropertyAssignment=z}(r=t.Core||(t.Core={}))}(e.FindAllReferences||(e.FindAllReferences={}))}(d||(d={})),function(e){!function(t){function r(t){return(e.isFunctionExpression(t)||e.isArrowFunction(t)||e.isClassExpression(t))&&e.isVariableDeclaration(t.parent)&&t===t.parent.initializer&&e.isIdentifier(t.parent.name)&&!!(2&e.getCombinedNodeFlags(t.parent))}function n(t){return e.isSourceFile(t)||e.isModuleDeclaration(t)||e.isFunctionDeclaration(t)||e.isFunctionExpression(t)||e.isClassDeclaration(t)||e.isClassExpression(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isGetAccessorDeclaration(t)||e.isSetAccessorDeclaration(t)}function i(t){return e.isSourceFile(t)||e.isModuleDeclaration(t)&&e.isIdentifier(t.name)||e.isFunctionDeclaration(t)||e.isClassDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isGetAccessorDeclaration(t)||e.isSetAccessorDeclaration(t)||function(t){return(e.isFunctionExpression(t)||e.isClassExpression(t))&&e.isNamedDeclaration(t)}(t)||r(t)}function a(t){return e.isSourceFile(t)?t:e.isNamedDeclaration(t)?t.name:r(t)?t.parent.name:e.Debug.checkDefined(t.modifiers&&e.find(t.modifiers,o))}function o(e){return 88===e.kind}function s(e,t){var r=a(t);return r&&e.getSymbolAtLocation(r)}function c(t,r){if(r.body)return r;if(e.isConstructorDeclaration(r))return e.getFirstConstructorWithBody(r.parent);if(e.isFunctionDeclaration(r)||e.isMethodDeclaration(r)){var n=s(t,r);return n&&n.valueDeclaration&&e.isFunctionLikeDeclaration(n.valueDeclaration)&&n.valueDeclaration.body?n.valueDeclaration:void 0}return r}function l(t,r){var n,a=s(t,r);if(a&&a.declarations){var o=e.indicesOf(a.declarations),c=e.map(a.declarations,(function(e){return{file:e.getSourceFile().fileName,pos:e.pos}}));o.sort((function(t,r){return e.compareStringsCaseSensitive(c[t].file,c[r].file)||c[t].pos-c[r].pos}));for(var l=void 0,u=0,d=e.map(o,(function(e){return a.declarations[e]}));u<d.length;u++){var p=d[u];i(p)&&(l&&l.parent===p.parent&&l.end===p.pos||(n=e.append(n,p)),l=p)}}return n}function u(t,r){var n,i,a;return e.isFunctionLikeDeclaration(r)?null!==(i=null!==(n=c(t,r))&&void 0!==n?n:l(t,r))&&void 0!==i?i:r:null!==(a=l(t,r))&&void 0!==a?a:r}function d(t,a){for(var o=t.getTypeChecker(),s=!1;;){if(i(a))return u(o,a);var c;if(n(a))return(c=e.findAncestor(a,i))&&u(o,c);if(e.isDeclarationName(a))return i(a.parent)?u(o,a.parent):n(a.parent)?(c=e.findAncestor(a.parent,i))&&u(o,c):e.isVariableDeclaration(a.parent)&&a.parent.initializer&&r(a.parent.initializer)?a.parent.initializer:void 0;if(e.isConstructorDeclaration(a))return i(a.parent)?a.parent:void 0;if(e.isVariableDeclaration(a)&&a.initializer&&r(a.initializer))return a.initializer;if(!s){var l=o.getSymbolAtLocation(a);if(l&&(2097152&l.flags&&(l=o.getAliasedSymbol(l)),l.valueDeclaration)){s=!0,a=l.valueDeclaration;continue}}return}}function p(t,n){var i=n.getSourceFile(),a=function(t,n){if(e.isSourceFile(n))return{text:n.fileName,pos:0,end:0};if((e.isFunctionDeclaration(n)||e.isClassDeclaration(n))&&!e.isNamedDeclaration(n)){var i=n.modifiers&&e.find(n.modifiers,o);if(i)return{text:"default",pos:i.getStart(),end:i.getEnd()}}var a=r(n)?n.parent.name:e.Debug.checkDefined(e.getNameOfDeclaration(n),"Expected call hierarchy item to have a name"),s=e.isIdentifier(a)?e.idText(a):e.isStringOrNumericLiteralLike(a)?a.text:e.isComputedPropertyName(a)&&e.isStringOrNumericLiteralLike(a.expression)?a.expression.text:void 0;if(void 0===s){var c=t.getTypeChecker(),l=c.getSymbolAtLocation(a);l&&(s=c.symbolToString(l,n))}if(void 0===s){var u=e.createPrinter({removeComments:!0,omitTrailingSemicolon:!0});s=e.usingSingleLineStringWriter((function(e){return u.writeNode(4,n,n.getSourceFile(),e)}))}return{text:s,pos:a.getStart(),end:a.getEnd()}}(t,n),s=function(t){var n,i;if(r(t))return e.isModuleBlock(t.parent.parent.parent.parent)&&e.isIdentifier(t.parent.parent.parent.parent.parent.name)?t.parent.parent.parent.parent.parent.name.getText():void 0;switch(t.kind){case 168:case 169:case 166:return 201===t.parent.kind?null===(n=e.getAssignedName(t.parent))||void 0===n?void 0:n.getText():null===(i=e.getNameOfDeclaration(t.parent))||void 0===i?void 0:i.getText();case 253:case 254:case 255:case 259:if(e.isModuleBlock(t.parent)&&e.isIdentifier(t.parent.parent.name))return t.parent.parent.name.getText()}}(n),c=e.getNodeKind(n),l=e.getNodeModifiers(n),u=e.createTextSpanFromBounds(e.skipTrivia(i.text,n.getFullStart(),!1,!0),n.getEnd()),d=e.createTextSpanFromBounds(a.pos,a.end);return{file:i.fileName,kind:c,kindModifiers:l,name:a.text,containerName:s,span:u,selectionSpan:d}}function f(e){return void 0!==e}function m(t){if(1===t.kind){var r=t.node;if(e.isCallOrNewExpressionTarget(r,!0,!0)||e.isTaggedTemplateTag(r,!0,!0)||e.isDecoratorTarget(r,!0,!0)||e.isJsxOpeningLikeElementTagName(r,!0,!0)||e.isRightSideOfPropertyAccess(r)||e.isArgumentExpressionOfElementAccess(r)){var n=r.getSourceFile();return{declaration:e.findAncestor(r,i)||n,range:e.createTextRangeFromNode(r,n)}}}}function g(t){return e.getNodeId(t.declaration)}function _(t,r){var n=[],a=function(t,r){function n(n){var i=e.isTaggedTemplateExpression(n)?n.tag:e.isJsxOpeningLikeElement(n)?n.tagName:e.isAccessExpression(n)?n:n.expression,a=d(t,i);if(a){var o=e.createTextRangeFromNode(i,n.getSourceFile());if(e.isArray(a))for(var s=0,c=a;s<c.length;s++){var l=c[s];r.push({declaration:l,range:o})}else r.push({declaration:a,range:o})}}return function t(r){if(r&&!(8388608&r.flags))if(i(r)){if(e.isClassLike(r))for(var a=0,o=r.members;a<o.length;a++){var s=o[a];s.name&&e.isComputedPropertyName(s.name)&&t(s.name.expression)}}else{switch(r.kind){case 78:case 263:case 264:case 270:case 256:case 257:return;case 207:case 226:return void t(r.expression);case 251:case 161:return t(r.name),void t(r.initializer);case 204:case 205:return n(r),t(r.expression),void e.forEach(r.arguments,t);case 206:return n(r),t(r.tag),void t(r.template);case 278:case 277:return n(r),t(r.tagName),void t(r.attributes);case 162:return n(r),void t(r.expression);case 202:case 203:n(r),e.forEachChild(r,t)}e.isPartOfTypeNode(r)||e.forEachChild(r,t)}}}(t,n);switch(r.kind){case 300:!function(t,r){e.forEach(t.statements,r)}(r,a);break;case 259:!function(t,r){!e.hasSyntacticModifier(t,2)&&t.body&&e.isModuleBlock(t.body)&&e.forEach(t.body.statements,r)}(r,a);break;case 253:case 209:case 210:case 166:case 168:case 169:!function(t,r,n){var i=c(t,r);i&&(e.forEach(i.parameters,n),n(i.body))}(t.getTypeChecker(),r,a);break;case 254:case 223:case 255:!function(t,r){e.forEach(t.decorators,r);var n=e.getClassExtendsHeritageElement(t);n&&r(n.expression);for(var i=0,a=t.members;i<a.length;i++){var o=a[i];e.forEach(o.decorators,r),e.isPropertyDeclaration(o)?r(o.initializer):e.isConstructorDeclaration(o)&&o.body&&(e.forEach(o.parameters,r),r(o.body))}}(r,a);break;default:e.Debug.assertNever(r)}return n}t.resolveCallHierarchyDeclaration=d,t.createCallHierarchyItem=p,t.getIncomingCalls=function(t,r,n){if(e.isSourceFile(r)||e.isModuleDeclaration(r))return[];var i=a(r),o=e.filter(e.FindAllReferences.findReferenceOrRenameEntries(t,n,t.getSourceFiles(),i,0,{use:1},m),f);return o?e.group(o,g,(function(r){return function(t,r){return n=p(t,r[0].declaration),i=e.map(r,(function(t){return e.createTextSpanFromRange(t.range)})),{from:n,fromSpans:i};var n,i}(t,r)})):[]},t.getOutgoingCalls=function(t,r){return 8388608&r.flags||e.isMethodSignature(r)?[]:e.group(_(t,r),g,(function(r){return function(t,r){return n=p(t,r[0].declaration),i=e.map(r,(function(t){return e.createTextSpanFromRange(t.range)})),{to:n,fromSpans:i};var n,i}(t,r)}))}}(e.CallHierarchy||(e.CallHierarchy={}))}(d||(d={})),function(e){function t(t,n,i,a){var o=i(t);return function(t){var s=a&&a.tryGetSourcePosition({fileName:t,pos:0}),c=function(t){if(i(t)===o)return n;var r=e.tryRemoveDirectoryPrefix(t,o,i);return void 0===r?void 0:n+"/"+r}(s?s.fileName:t);return s?void 0===c?void 0:function(t,n,i,a){var o=e.getRelativePathFromFile(t,n,a);return r(e.getDirectoryPath(i),o)}(s.fileName,c,t,i):c}}function r(t,r){return e.ensurePathIsNonModuleName(function(t,r){return e.normalizePath(e.combinePaths(t,r))}(t,r))}function n(t,r,n,i,a){if(r){if(r.resolvedModule){var o=l(r.resolvedModule.resolvedFileName);if(o)return o}var s=e.forEach(r.failedLookupLocations,(function(t){var r=n(t);return r&&e.find(i,(function(e){return e.fileName===r}))?c(t):void 0}))||e.pathIsRelative(t.text)&&e.forEach(r.failedLookupLocations,c);return s||r.resolvedModule&&{newFileName:r.resolvedModule.resolvedFileName,updated:!1}}function c(t){return e.endsWith(t,e.isOhpm(a)?"/oh-package.json5":"/package.json")?void 0:l(t)}function l(e){var t=n(e);return t&&{newFileName:t,updated:!0}}}function i(t,r){return e.createRange(t.getStart(r)+1,t.end-1)}function a(t,r){if(e.isObjectLiteralExpression(t))for(var n=0,i=t.properties;n<i.length;n++){var a=i[n];e.isPropertyAssignment(a)&&e.isStringLiteral(a.name)&&r(a,a.name.text)}}e.getEditsForFileRename=function(o,s,c,l,u,d,p){var f=e.hostUsesCaseSensitiveFileNames(l),m=e.createGetCanonicalFileName(f),g=t(s,c,m,p),_=t(c,s,m,p);return e.textChanges.ChangeTracker.with({host:l,formatContext:u,preferences:d},(function(t){!function(t,n,o,s,c,l,u){var d=t.getCompilerOptions().configFile;if(!d)return;var p=e.getDirectoryPath(d.fileName),f=e.getTsConfigObjectLiteralExpression(d);if(!f)return;function m(t){for(var r=!1,n=0,i=e.isArrayLiteralExpression(t.initializer)?t.initializer.elements:[t.initializer];n<i.length;n++){r=g(i[n])||r}return r}function g(t){if(!e.isStringLiteral(t))return!1;var a=r(p,t.text),s=o(a);return void 0!==s&&(n.replaceRangeWithText(d,i(t,d),_(s)),!0)}function _(t){return e.getRelativePathFromDirectory(p,t,!u)}a(f,(function(t,r){switch(r){case"files":case"include":case"exclude":if(!m(t)&&"include"===r&&e.isArrayLiteralExpression(t.initializer)){var i=e.mapDefined(t.initializer.elements,(function(t){return e.isStringLiteral(t)?t.text:void 0})),o=e.getFileMatcherPatterns(p,[],i,u,l);e.getRegexFromPattern(e.Debug.checkDefined(o.includeFilePattern),u).test(s)&&!e.getRegexFromPattern(e.Debug.checkDefined(o.includeFilePattern),u).test(c)&&n.insertNodeAfter(d,e.last(t.initializer.elements),e.factory.createStringLiteral(_(c)))}break;case"compilerOptions":a(t.initializer,(function(t,r){var n=e.getOptionFromName(r);n&&(n.isFilePath||"list"===n.type&&n.element.isFilePath)?m(t):"paths"===r&&a(t.initializer,(function(t){if(e.isArrayLiteralExpression(t.initializer))for(var r=0,n=t.initializer.elements;r<n.length;r++){g(n[r])}}))}))}}))}(o,t,g,s,c,l.getCurrentDirectory(),f),function(t,a,o,s,c,l){for(var u=t.getSourceFiles(),d=function(d){var p=o(d.fileName),f=null!=p?p:d.fileName,m=e.getDirectoryPath(f),g=s(d.fileName),_=g||d.fileName,h=e.getDirectoryPath(_),y=void 0!==p||void 0!==g;!function(t,r,n,a){for(var o=0,s=t.referencedFiles||e.emptyArray;o<s.length;o++){var c=s[o];void 0!==(d=n(c.fileName))&&d!==t.text.slice(c.pos,c.end)&&r.replaceRangeWithText(t,c,d)}for(var l=0,u=t.imports;l<u.length;l++){var d,p=u[l];void 0!==(d=a(p))&&d!==p.text&&r.replaceRangeWithText(t,i(p,t),d)}}(d,a,(function(t){if(e.pathIsRelative(t)){var n=r(h,t),i=o(n);return void 0===i?void 0:e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(m,i,l))}}),(function(r){var i=t.getTypeChecker().getSymbolAtLocation(r);if(!i||!i.declarations.some((function(t){return e.isAmbientModule(t)}))){var a=void 0!==g?n(r,e.resolveModuleName(r.text,_,t.getCompilerOptions(),c),o,u,t.getCompilerOptions().packageManagerType):function(t,r,i,a,o,s){if(t){var c=e.find(t.declarations,e.isSourceFile).fileName,l=s(c);return void 0===l?{newFileName:c,updated:!1}:{newFileName:l,updated:!0}}return n(r,o.resolveModuleNames?o.getResolvedModuleWithFailedLookupLocationsFromCache&&o.getResolvedModuleWithFailedLookupLocationsFromCache(r.text,i.fileName):a.getResolvedModuleWithFailedLookupLocationsFromCache(r.text,i.fileName),s,a.getSourceFiles(),a.getCompilerOptions().packageManagerType)}(i,r,d,t,c,o);return void 0!==a&&(a.updated||y&&e.pathIsRelative(r.text))?e.moduleSpecifiers.updateModuleSpecifier(t.getCompilerOptions(),l(f),a.newFileName,e.createModuleSpecifierResolutionHost(t,c),r.text):void 0}}))},p=0,f=u;p<f.length;p++){d(f[p])}}(o,t,g,_,l,m)}))},e.getPathUpdater=t}(d||(d={})),function(e){!function(t){function r(t,r,a){var o,d,p,f=n(r,a,t);if(f)return[(d=f.reference.fileName,p=f.file.fileName,{fileName:p,textSpan:e.createTextSpanFromBounds(0,0),kind:"script",name:d,containerName:void 0,containerKind:void 0})];var m=e.getTouchingPropertyName(r,a);if(m!==r){var g=m.parent,_=t.getTypeChecker();if(e.isJumpStatementTarget(m)){var h=e.getTargetLabel(m.parent,m.text);return h?[l(_,h,"label",m.text,void 0)]:void 0}var y=function(t,r){var n=r.getSymbolAtLocation(t);if(n&&2097152&n.flags&&function(t,r){if(78!==t.kind)return!1;if(t.parent===r)return!0;switch(r.kind){case 265:case 263:return!0;case 268:return 267===r.parent.kind;case 199:case 251:return e.isInJSFile(r)&&e.isRequireVariableDeclaration(r,!0);default:return!1}}(t,n.declarations[0])){var i=r.getAliasedSymbol(n);if(i.declarations)return i}return n}(m,_);if(!y)return function(t,r){if(!e.isPropertyAccessExpression(t.parent)||t.parent.name!==t)return;var n=r.getTypeAtLocation(t.parent.expression);return e.mapDefined(n.isUnionOrIntersection()?n.types:[n],(function(e){var t=r.getIndexInfoOfType(e,0);return t&&t.declaration&&u(r,t.declaration)}))}(m,_);if(204===g.kind||211===g.kind&&e.isCalledStructDeclaration(y.getDeclarations())){var v=y.getDeclarations();if((null==v?void 0:v.length)&&255===v[0].kind)return s(_,y,m)}var b=function(t,r){var n=function(t){var r=e.findAncestor(t,(function(t){return!e.isRightSideOfPropertyAccess(t)})),n=null==r?void 0:r.parent;return n&&e.isCallLikeExpression(n)&&e.getInvokedExpression(n)===r?n:void 0}(r),i=n&&t.getResolvedSignature(n);return e.tryCast(i&&i.declaration,(function(t){return e.isFunctionLike(t)&&!e.isFunctionTypeNode(t)}))}(_,m),k=t.getCompilerOptions();if(b&&(!e.isJsxOpeningLikeElement(m.parent)||!function(e){switch(e.kind){case 167:case 176:case 171:return!0;default:return!1}}(b))&&!e.isVirtualConstructor(_,b.symbol,b)){var x=u(_,b);if(_.getRootSymbols(y).some((function(t){return function(t,r){return t===r.symbol||t===r.symbol.parent||e.isAssignmentExpression(r.parent)||!e.isCallLikeExpression(r.parent)&&t===r.parent.symbol}(t,b)})))return[x];if(e.isIdentifier(m)&&e.isNewExpression(g)&&(null===(o=k.ets)||void 0===o?void 0:o.components.some((function(e){return e===m.escapedText.toString()}))))return[x];var S=s(_,y,m,b)||e.emptyArray;return e.isIdentifier(m)&&e.isEtsComponentExpression(g)?i([],S):106===m.kind?i([x],S):i(i([],S),[x])}if(292===m.parent.kind){var w=_.getShorthandAssignmentValueSymbol(y.valueDeclaration);return w?w.declarations.map((function(e){return c(e,_,w,m)})):[]}if(e.isPropertyName(m)&&e.isBindingElement(g)&&e.isObjectBindingPattern(g.parent)&&m===(g.propertyName||g.name)){var D=e.getNameFromPropertyName(m),E=_.getTypeAtLocation(g.parent);return void 0===D?e.emptyArray:e.flatMap(E.isUnion()?E.types:[E],(function(e){var t=e.getProperty(D);return t&&s(_,t,m)}))}var T=e.getContainingObjectLiteralElement(m);if(T){var C=T&&_.getContextualType(T.parent);if(C)return e.flatMap(e.getPropertySymbolsFromContextualType(T,_,C,!1),(function(e){return s(_,e,m)}))}return s(_,y,m)}}function n(e,t,r){var n=d(e.referencedFiles,t);if(n)return(o=r.getSourceFileFromReference(e,n))&&{reference:n,file:o};var i=d(e.typeReferenceDirectives,t);if(i){var a=r.getResolvedTypeReferenceDirectives().get(i.fileName);return(o=a&&r.getSourceFile(a.resolvedFileName))&&{reference:i,file:o}}var o,s=d(e.libReferenceDirectives,t);return s?(o=r.getLibFileFromReference(s))&&{reference:s,file:o}:void 0}function o(t,r,n){return e.flatMap(!t.isUnion()||32&t.flags?[t]:t.types,(function(e){return e.symbol&&s(r,e.symbol,n)}))}function s(t,r,n,i){var a=e.filter(r.declarations,(function(t){return t!==i&&(!e.isAssignmentDeclaration(t)||t===r.valueDeclaration)}))||void 0;return function(){if(32&r.flags&&!(19&r.flags)&&(e.isNewExpressionTarget(n)||133===n.kind)){return o((e.find(a,e.isClassLike)||e.Debug.fail("Expected declaration to have at least one class-like declaration")).members,!0)}}()||(e.isCallOrNewExpressionTarget(n)||e.isNameOfFunctionDeclaration(n)?o(a,!1):void 0)||e.map(a,(function(e){return c(e,t,r,n)}));function o(i,a){if(i){var o=i.filter(a?e.isConstructorDeclaration:e.isFunctionLike),s=o.filter((function(e){return!!e.body}));return o.length?0!==s.length?s.map((function(e){return c(e,t,r,n)})):[c(e.last(o),t,r,n)]:void 0}}}function c(t,r,n,i){var a=r.symbolToString(n),o=e.SymbolDisplay.getSymbolKind(r,n,i),s=n.parent?r.symbolToString(n.parent,i):"";return l(r,t,o,a,s)}function l(t,r,n,i,o){var s=e.getNameOfDeclaration(r)||r,c=s.getSourceFile(),l=e.createTextSpanFromNode(s,c);return a(a({fileName:c.fileName,textSpan:l,kind:n,name:i,containerKind:void 0,containerName:o},e.FindAllReferences.toContextSpan(l,c,e.FindAllReferences.getContextNode(r))),{isLocal:!t.isDeclarationVisible(r)})}function u(e,t){return c(t,e,t.symbol,t)}function d(t,r){return e.find(t,(function(t){return e.textRangeContainsPositionInclusive(t,r)}))}t.getDefinitionAtPosition=r,t.getReferenceAtPosition=n,t.getTypeDefinitionAtPosition=function(t,r,n){var i=e.getTouchingPropertyName(r,n);if(i!==r){var a=t.getSymbolAtLocation(i);if(a){var s=t.getTypeOfSymbolAtLocation(a,i),c=function(t,r,n){if(r.symbol===t||t.valueDeclaration&&r.symbol&&e.isVariableDeclaration(t.valueDeclaration)&&t.valueDeclaration.initializer===r.symbol.valueDeclaration){var i=r.getCallSignatures();if(1===i.length)return n.getReturnTypeOfSignature(e.first(i))}return}(a,s,t),l=c&&o(c,t,i);return l&&0!==l.length?l:o(s,t,i)}}},t.getDefinitionAndBoundSpan=function(t,n,i){var a=r(t,n,i);if(a&&0!==a.length){var o=d(n.referencedFiles,i)||d(n.typeReferenceDirectives,i)||d(n.libReferenceDirectives,i);if(o)return{definitions:a,textSpan:e.createTextSpanFromRange(o)};var s=e.getTouchingPropertyName(n,i);return{definitions:a,textSpan:e.createTextSpan(s.getStart(),s.getWidth())}}},t.findReferenceInPosition=d}(e.GoToDefinition||(e.GoToDefinition={}))}(d||(d={})),function(e){!function(t){var r,n,i=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","inheritdoc","inner","instance","interface","kind","lends","license","listens","member","memberof","method","mixes","module","name","namespace","override","package","param","private","property","protected","public","readonly","requires","returns","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"];function a(e){var t=e.comment;switch(e.kind){case 319:case 318:return n(e.class);case 333:return i(e.typeParameters.map((function(e){return e.getText()})).join(", "));case 332:return n(e.typeExpression);case 334:case 327:case 336:case 329:case 335:var r=e.name;return r?n(r):t;default:return t}function n(e){return i(e.getText())}function i(e){return void 0===t?e:e+" "+t}}function o(t){return{name:t,kind:"",kindModifiers:"",displayParts:[e.textPart(t)],documentation:e.emptyArray,tags:void 0,codeActions:void 0}}function s(t,r){switch(t.kind){case 253:case 209:case 166:case 167:case 165:case 210:var n=t;return{commentOwner:t,parameters:n.parameters,hasReturn:c(n,r)};case 291:return s(t.initializer,r);case 254:case 255:case 256:case 163:case 258:case 294:case 257:return{commentOwner:t};case 234:var i=t.declarationList.declarations,a=1===i.length&&i[0].initializer?function(t){for(;208===t.kind;)t=t.expression;switch(t.kind){case 209:case 210:return t;case 223:return e.find(t.members,e.isConstructorDeclaration)}}(i[0].initializer):void 0;return a?{commentOwner:t,parameters:a.parameters,hasReturn:c(a,r)}:{commentOwner:t};case 300:return"quit";case 259:return 259===t.parent.kind?void 0:{commentOwner:t};case 235:return s(t.expression,r);case 218:var o=t;return 0===e.getAssignmentDeclarationKind(o)?"quit":e.isFunctionLike(o.right)?{commentOwner:t,parameters:o.right.parameters,hasReturn:c(o.right,r)}:{commentOwner:t};case 164:var l=t.initializer;if(l&&(e.isFunctionExpression(l)||e.isArrowFunction(l)))return{commentOwner:t,parameters:l.parameters,hasReturn:c(l,r)}}}function c(t,r){return!!(null==r?void 0:r.generateReturnInDocTemplate)&&(e.isArrowFunction(t)&&e.isExpression(t.body)||e.isFunctionLikeDeclaration(t)&&t.body&&e.isBlock(t.body)&&!!e.forEachReturnStatement(t.body,(function(e){return e})))}t.getJsDocCommentsFromDeclarations=function(t){var r=[];return e.forEachUnique(t,(function(t){for(var n=0,i=function(t){switch(t.kind){case 329:case 336:return[t];case 327:case 334:return[t,t.parent];default:return e.getJSDocCommentsAndTags(t)}}(t);n<i.length;n++){var a=i[n].comment;void 0!==a&&e.pushIfUnique(r,a)}})),e.intersperse(e.map(r,e.textPart),e.lineBreakPart())},t.getJsDocTagsFromDeclarations=function(t){var r=[];return e.forEachUnique(t,(function(t){for(var n=0,i=e.getJSDocTags(t);n<i.length;n++){var o=i[n];r.push({name:o.tagName.text,text:a(o)})}})),r},t.getJSDocTagNameCompletions=function(){return r||(r=e.map(i,(function(t){return{name:t,kind:"keyword",kindModifiers:"",sortText:e.Completions.SortText.LocationPriority}})))},t.getJSDocTagNameCompletionDetails=o,t.getJSDocTagCompletions=function(){return n||(n=e.map(i,(function(t){return{name:"@"+t,kind:"keyword",kindModifiers:"",sortText:e.Completions.SortText.LocationPriority}})))},t.getJSDocTagCompletionDetails=o,t.getJSDocParameterNameCompletions=function(t){if(!e.isIdentifier(t.name))return e.emptyArray;var r=t.name.text,n=t.parent,i=n.parent;return e.isFunctionLike(i)?e.mapDefined(i.parameters,(function(i){if(e.isIdentifier(i.name)){var a=i.name.text;if(!n.tags.some((function(r){return r!==t&&e.isJSDocParameterTag(r)&&e.isIdentifier(r.name)&&r.name.escapedText===a}))&&(void 0===r||e.startsWith(a,r)))return{name:a,kind:"parameter",kindModifiers:"",sortText:e.Completions.SortText.LocationPriority}}})):[]},t.getJSDocParameterNameCompletionDetails=function(t){return{name:t,kind:"parameter",kindModifiers:"",displayParts:[e.textPart(t)],documentation:e.emptyArray,tags:void 0,codeActions:void 0}},t.getDocCommentTemplateAtPosition=function(t,r,n,i){var a=e.getTokenAtPosition(r,n),o=e.findAncestor(a,e.isJSDoc);if(!o||void 0===o.comment&&!e.length(o.tags)){var c=a.getStart(r);if(o||!(c<n)){var l=function(t,r){return e.forEachAncestor(t,(function(e){return s(e,r)}))}(a,i);if(l){var u=l.commentOwner,d=l.parameters,p=l.hasReturn;if(!(u.getStart(r)<n)){var f=function(t,r){for(var n=t.text,i=e.getLineStartPositionForPosition(r,t),a=i;a<=r&&e.isWhiteSpaceSingleLine(n.charCodeAt(a));a++);return n.slice(i,a)}(r,n),m=e.hasJSFileExtension(r.fileName),g=(d?function(e,t,r,n){return e.map((function(e,i){var a=e.name,o=e.dotDotDotToken,s=78===a.kind?a.text:"param"+i;return r+" * @param "+(t?o?"{...any} ":"{any} ":"")+s+n})).join("")}(d||[],m,f,t):"")+(p?function(e,t){return e+" * @returns"+t}(f,t):"");if(g){var _="/**"+t+f+" * ";return{newText:_+t+g+f+" */"+(c===n?t+f:""),caretOffset:_.length}}return{newText:"/** */",caretOffset:3}}}}}}}(e.JsDoc||(e.JsDoc={}))}(d||(d={})),function(e){!function(t){function r(e,t){switch(e.kind){case 265:case 268:case 263:var r=t.getSymbolAtLocation(e.name),n=t.getAliasedSymbol(r);return r.escapedName!==n.escapedName;default:return!0}}function n(t,r){var n=e.getNameOfDeclaration(t);return!!n&&(a(n,r)||159===n.kind&&i(n.expression,r))}function i(t,r){return a(t,r)||e.isPropertyAccessExpression(t)&&(r.push(t.name.text),!0)&&i(t.expression,r)}function a(t,r){return e.isPropertyNameLiteral(t)&&(r.push(e.getTextOfIdentifierOrLiteral(t)),!0)}function o(t){var r=[],a=e.getNameOfDeclaration(t);if(a&&159===a.kind&&!i(a.expression,r))return e.emptyArray;r.shift();for(var o=e.getContainerNode(t);o;){if(!n(o,r))return e.emptyArray;o=e.getContainerNode(o)}return r.reverse()}function s(t,r){return e.compareValues(t.matchKind,r.matchKind)||e.compareStringsCaseSensitiveUI(t.name,r.name)}function c(t){var r=t.declaration,n=e.getContainerNode(r),i=n&&e.getNameOfDeclaration(n);return{name:t.name,kind:e.getNodeKind(r),kindModifiers:e.getNodeModifiers(r),matchKind:e.PatternMatchKind[t.matchKind],isCaseSensitive:t.isCaseSensitive,fileName:t.fileName,textSpan:e.createTextSpanFromNode(r),containerName:i?i.text:"",containerKind:i?e.getNodeKind(n):""}}t.getNavigateToItems=function(t,n,i,a,l,u){var d=e.createPatternMatcher(a);if(!d)return e.emptyArray;for(var p=[],f=function(e){if(i.throwIfCancellationRequested(),u&&e.isDeclarationFile)return"continue";e.getNamedDeclarations().forEach((function(t,i){!function(e,t,n,i,a,s){var c=e.getMatchForLastSegmentOfPattern(t);if(!c)return;for(var l=0,u=n;l<u.length;l++){var d=u[l];if(r(d,i))if(e.patternContainsDots){var p=e.getFullMatch(o(d),t);p&&s.push({name:t,fileName:a,matchKind:p.kind,isCaseSensitive:p.isCaseSensitive,declaration:d})}else s.push({name:t,fileName:a,matchKind:c.kind,isCaseSensitive:c.isCaseSensitive,declaration:d})}}(d,i,t,n,e.fileName,p)}))},m=0,g=t;m<g.length;m++){f(g[m])}return p.sort(s),(void 0===l?p:p.slice(0,l)).map(c)}}(e.NavigateTo||(e.NavigateTo={}))}(d||(d={})),function(e){!function(t){var r,n,i,o,s,c=/\s+/g,l=150,u=[],d=[],p=[];function f(){i=void 0,n=void 0,u=[],o=void 0,p=[]}function m(e){return G(e.getText(i))}function g(e){return e.node.kind}function _(e,t){e.children?e.children.push(t):e.children=[t]}function h(t){e.Debug.assert(!u.length);var r={node:t,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};o=r;for(var n=0,i=t.statements;n<i.length;n++){T(i[n])}return w(),e.Debug.assert(!o&&!u.length),r}function y(e,t){_(o,v(e,t))}function v(t,r){return{node:t,name:r||(e.isDeclaration(t)||e.isExpression(t)?e.getNameOfDeclaration(t):void 0),additionalNodes:void 0,parent:o,children:void 0,indent:o.indent+1}}function b(t){s||(s=new e.Map),s.set(t,!0)}function k(e){for(var t=0;t<e;t++)w()}function x(t,r){for(var n=[];!e.isPropertyNameLiteral(r);){var i=e.getNameOrArgument(r),a=e.getElementOrPropertyAccessName(r);r=r.expression,"prototype"===a||e.isPrivateIdentifier(i)||n.push(i)}n.push(r);for(var o=n.length-1;o>0;o--){S(t,i=n[o])}return[n.length-1,n[0]]}function S(e,t){var r=v(e,t);_(o,r),u.push(o),d.push(s),s=void 0,o=r}function w(){o.children&&(C(o.children,o),O(o.children)),o=u.pop(),s=d.pop()}function D(e,t,r){S(e,r),T(t),w()}function E(t){t.initializer&&function(e){switch(e.kind){case 210:case 209:case 223:return!0;default:return!1}}(t.initializer)?(S(t),e.forEachChild(t.initializer,T),w()):D(t,t.initializer)}function T(t){var r;if(n.throwIfCancellationRequested(),t&&!e.isToken(t))switch(t.kind){case 167:var i=t;D(i,i.body);for(var a=0,o=i.parameters;a<o.length;a++){var c=o[a];e.isParameterPropertyDeclaration(c,i)&&y(c)}break;case 166:case 168:case 169:case 165:e.hasDynamicName(t)||D(t,t.body);break;case 164:e.hasDynamicName(t)||E(t);break;case 163:e.hasDynamicName(t)||y(t);break;case 265:var l=t;l.name&&y(l.name);var u=l.namedBindings;if(u)if(266===u.kind)y(u);else for(var d=0,p=u.elements;d<p.length;d++){y(p[d])}break;case 292:D(t,t.name);break;case 293:var f=t.expression;e.isIdentifier(f)?y(t,f):y(t);break;case 199:case 291:case 251:var m=t;e.isBindingPattern(m.name)?T(m.name):E(m);break;case 253:var g=t.name;g&&e.isIdentifier(g)&&b(g.text),D(t,t.body);break;case 210:case 209:D(t,t.body);break;case 258:S(t);for(var _=0,h=t.members;_<h.length;_++){J(A=h[_])||y(A)}w();break;case 254:case 223:case 255:case 256:S(t);for(var v=0,C=t.members;v<C.length;v++){var A;T(A=C[v])}w();break;case 259:D(t,q(t).body);break;case 269:var N=t.expression;(m=e.isObjectLiteralExpression(N)||e.isCallExpression(N)?N:e.isArrowFunction(N)||e.isFunctionExpression(N)?N.body:void 0)?(S(t),T(m),w()):y(t);break;case 273:case 263:case 172:case 170:case 171:case 257:y(t);break;case 204:case 218:var P=e.getAssignmentDeclarationKind(t);switch(P){case 1:case 2:return void D(t,t.right);case 6:case 3:var I=(B=t).left,F=3===P?I.expression:I,O=0,R=void 0;return e.isIdentifier(F.expression)?(b(F.expression.text),R=F.expression):(O=(r=x(B,F.expression))[0],R=r[1]),6===P?e.isObjectLiteralExpression(B.right)&&B.right.properties.length>0&&(S(B,R),e.forEachChild(B.right,T),w()):e.isFunctionExpression(B.right)||e.isArrowFunction(B.right)?D(t,B.right,R):(S(B,R),D(t,B.right,I.name),w()),void k(O);case 7:case 9:var M=t,L=(R=7===P?M.arguments[0]:M.arguments[0].expression,M.arguments[1]),j=x(t,R);O=j[0];return S(t,j[1]),S(t,e.setTextRange(e.factory.createIdentifier(L.text),L)),T(t.arguments[2]),w(),w(),void k(O);case 5:var B,z=(I=(B=t).left).expression;if(e.isIdentifier(z)&&"prototype"!==e.getElementOrPropertyAccessName(I)&&s&&s.has(z.text))return void(e.isFunctionExpression(B.right)||e.isArrowFunction(B.right)?D(t,B.right,z):e.isBindableStaticAccessExpression(I)&&(S(B,z),D(B.left,B.right,e.getNameOrArgument(I)),w()));break;case 4:case 0:case 8:break;default:e.Debug.assertNever(P)}default:e.hasJSDocNodes(t)&&e.forEach(t.jsDoc,(function(t){e.forEach(t.tags,(function(t){e.isJSDocTypeAlias(t)&&y(t)}))})),e.forEachChild(t,T)}}function C(t,r){var n=new e.Map;e.filterMutate(t,(function(t,i){var a=t.name||e.getNameOfDeclaration(t.node),o=a&&m(a);if(!o)return!0;var s=n.get(o);if(!s)return n.set(o,t),!0;if(s instanceof Array){for(var c=0,l=s;c<l.length;c++){var u;if(N(u=l[c],t,i,r))return!1}return s.push(t),!0}return!N(u=s,t,i,r)&&(n.set(o,[u,t]),!0)}))}t.getNavigationBarItems=function(t,r){n=r,i=t;try{return e.map(function(e){var t=[];function r(e){if(n(e)&&(t.push(e),e.children))for(var i=0,a=e.children;i<a.length;i++){r(a[i])}}return r(e),t;function n(e){if(e.children)return!0;switch(g(e)){case 254:case 223:case 255:case 258:case 256:case 259:case 300:case 257:case 334:case 327:return!0;case 210:case 253:case 209:return t(e);default:return!1}function t(e){if(!e.node.body)return!1;switch(g(e.parent)){case 260:case 300:case 166:case 167:return!0;default:return!1}}}}(h(t)),B)}finally{f()}},t.getNavigationTree=function(e,t){n=t,i=e;try{return j(h(e))}finally{f()}};var A=((r={})[5]=!0,r[3]=!0,r[7]=!0,r[9]=!0,r[0]=!1,r[1]=!1,r[2]=!1,r[8]=!1,r[6]=!0,r[4]=!1,r);function N(t,r,n,i){return!!function(t,r,n,i){function o(t){return e.isFunctionExpression(t)||e.isFunctionDeclaration(t)||e.isVariableDeclaration(t)}var s=e.isBinaryExpression(r.node)||e.isCallExpression(r.node)?e.getAssignmentDeclarationKind(r.node):0,c=e.isBinaryExpression(t.node)||e.isCallExpression(t.node)?e.getAssignmentDeclarationKind(t.node):0;if(A[s]&&A[c]||o(t.node)&&A[s]||o(r.node)&&A[c]||e.isClassDeclaration(t.node)&&P(t.node)&&A[s]||e.isClassDeclaration(r.node)&&A[c]||e.isClassDeclaration(t.node)&&P(t.node)&&o(r.node)||e.isClassDeclaration(r.node)&&o(t.node)&&P(t.node)){var l=t.additionalNodes&&e.lastOrUndefined(t.additionalNodes)||t.node;if(!e.isClassDeclaration(t.node)&&!e.isClassDeclaration(r.node)||o(t.node)||o(r.node)){var u=o(t.node)?t.node:o(r.node)?r.node:void 0;if(void 0!==u){var d=v(e.setTextRange(e.factory.createConstructorDeclaration(void 0,void 0,[],void 0),u));d.indent=t.indent+1,d.children=t.node===u?t.children:r.children,t.children=t.node===u?e.concatenate([d],r.children||[r]):e.concatenate(t.children||[a({},t)],[d])}else(t.children||r.children)&&(t.children=e.concatenate(t.children||[a({},t)],r.children||[r]),t.children&&(C(t.children,t),O(t.children)));l=t.node=e.setTextRange(e.factory.createClassDeclaration(void 0,void 0,t.name||e.factory.createIdentifier("__class__"),void 0,void 0,[]),t.node)}else t.children=e.concatenate(t.children,r.children),t.children&&C(t.children,t);var p=r.node;return i.children[n-1].node.end===l.end?e.setTextRange(l,{pos:l.pos,end:p.end}):(t.additionalNodes||(t.additionalNodes=[]),t.additionalNodes.push(e.setTextRange(e.factory.createClassDeclaration(void 0,void 0,t.name||e.factory.createIdentifier("__class__"),void 0,void 0,[]),r.node))),!0}return 0!==s}(t,r,n,i)||!!function(t,r,n){if(t.kind!==r.kind||t.parent!==r.parent&&(!I(t,n)||!I(r,n)))return!1;switch(t.kind){case 164:case 166:case 168:case 169:return e.hasSyntacticModifier(t,32)===e.hasSyntacticModifier(r,32);case 259:return F(t,r);default:return!0}}(t.node,r.node,i)&&(function(t,r){var n;t.additionalNodes=t.additionalNodes||[],t.additionalNodes.push(r.node),r.additionalNodes&&(n=t.additionalNodes).push.apply(n,r.additionalNodes);t.children=e.concatenate(t.children,r.children),t.children&&(C(t.children,t),O(t.children))}(t,r),!0)}function P(e){return!!(8&e.flags)}function I(t,r){var n=e.isModuleBlock(t.parent)?t.parent.parent:t.parent;return n===r.node||e.contains(r.additionalNodes,n)}function F(e,t){return e.body.kind===t.body.kind&&(259!==e.body.kind||F(e.body,t.body))}function O(e){e.sort(R)}function R(t,r){return e.compareStringsCaseSensitiveUI(M(t.node),M(r.node))||e.compareValues(g(t),g(r))}function M(t){if(259===t.kind)return U(t);var r=e.getNameOfDeclaration(t);if(r&&e.isPropertyName(r)){var n=e.getPropertyNameForPropertyNameNode(r);return n&&e.unescapeLeadingUnderscores(n)}switch(t.kind){case 209:case 210:case 223:return K(t);default:return}}function L(t,r){if(259===t.kind)return G(U(t));if(r){var n=e.isIdentifier(r)?r.text:e.isElementAccessExpression(r)?"["+m(r.argumentExpression)+"]":m(r);if(n.length>0)return G(n)}switch(t.kind){case 300:var i=t;return e.isExternalModule(i)?'"'+e.escapeString(e.getBaseFileName(e.removeFileExtension(e.normalizePath(i.fileName))))+'"':"<global>";case 269:return e.isExportAssignment(t)&&t.isExportEquals?"export=":"default";case 210:case 253:case 209:case 254:case 223:case 255:return 512&e.getSyntacticModifierFlags(t)?"default":K(t);case 167:return"constructor";case 171:return"new()";case 170:return"()";case 172:return"[]";default:return"<unknown>"}}function j(t){return{text:L(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:H(t.node),spans:z(t),nameSpan:t.name&&V(t.name),childItems:e.map(t.children,j)}}function B(t){return{text:L(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:H(t.node),spans:z(t),childItems:e.map(t.children,(function(t){return{text:L(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:e.getNodeModifiers(t.node),spans:z(t),childItems:p,indent:0,bolded:!1,grayed:!1}}))||p,indent:t.indent,bolded:!1,grayed:!1}}function z(e){var t=[V(e.node)];if(e.additionalNodes)for(var r=0,n=e.additionalNodes;r<n.length;r++){var i=n[r];t.push(V(i))}return t}function U(t){if(e.isAmbientModule(t))return e.getTextOfNode(t.name);for(var r=[e.getTextOfIdentifierOrLiteral(t.name)];t.body&&259===t.body.kind;)t=t.body,r.push(e.getTextOfIdentifierOrLiteral(t.name));return r.join(".")}function q(t){return t.body&&e.isModuleDeclaration(t.body)?q(t.body):t}function J(e){return!e.name||159===e.name.kind}function V(t){return 300===t.kind?e.createTextSpanFromRange(t):e.createTextSpanFromNode(t,i)}function H(t){return t.parent&&251===t.parent.kind&&(t=t.parent),e.getNodeModifiers(t)}function K(t){var r=t.parent;if(t.name&&e.getFullWidth(t.name)>0)return G(e.declarationNameToString(t.name));if(e.isVariableDeclaration(r))return G(e.declarationNameToString(r.name));if(e.isBinaryExpression(r)&&62===r.operatorToken.kind)return m(r.left).replace(c,"");if(e.isPropertyAssignment(r))return m(r.name);if(512&e.getSyntacticModifierFlags(t))return"default";if(e.isClassLike(t))return"<class>";if(e.isCallExpression(r)){var n=W(r.expression);if(void 0!==n)return(n=G(n)).length>l?n+" callback":n+"("+G(e.mapDefined(r.arguments,(function(t){return e.isStringLiteralLike(t)?t.getText(i):void 0})).join(", "))+") callback"}return"<function>"}function W(t){if(e.isIdentifier(t))return t.text;if(e.isPropertyAccessExpression(t)){var r=W(t.expression),n=t.name.text;return void 0===r?n:r+"."+n}}function G(e){return(e=e.length>l?e.substring(0,l)+"...":e).replace(/\\?(\r?\n|\r|\u2028|\u2029)/g,"")}}(e.NavigationBar||(e.NavigationBar={}))}(d||(d={})),function(e){!function(t){function r(t,r){var n=e.isStringLiteral(r)&&r.text;return e.isString(n)&&e.some(t.moduleAugmentations,(function(t){return e.isStringLiteral(t)&&t.text===n}))}function n(t){return void 0!==t&&e.isStringLiteralLike(t)?t.text:void 0}function i(t){var r;if(0===t.length)return t;var n=function(t){for(var r,n={defaultImports:[],namespaceImports:[],namedImports:[]},i={defaultImports:[],namespaceImports:[],namedImports:[]},a=0,o=t;a<o.length;a++){var s=o[a];if(void 0!==s.importClause){var c=s.importClause.isTypeOnly?n:i,l=s.importClause,u=l.name,d=l.namedBindings;u&&c.defaultImports.push(s),d&&(e.isNamespaceImport(d)?c.namespaceImports.push(s):c.namedImports.push(s))}else r=r||s}return{importWithoutClause:r,typeOnlyImports:n,regularImports:i}}(t),i=n.importWithoutClause,a=n.typeOnlyImports,c=n.regularImports,l=[];i&&l.push(i);for(var d=0,p=[c,a];d<p.length;d++){var f=p[d],m=f===a,g=f.defaultImports,_=f.namespaceImports,h=f.namedImports;if(m||1!==g.length||1!==_.length||0!==h.length){for(var y=0,v=e.stableSort(_,(function(e,t){return u(e.importClause.namedBindings.name,t.importClause.namedBindings.name)}));y<v.length;y++){var b=v[y];l.push(o(b,void 0,b.importClause.namedBindings))}if(0!==g.length||0!==h.length){var k=void 0,x=[];if(1===g.length)k=g[0].importClause.name;else for(var S=0,w=g;S<w.length;S++){C=w[S];x.push(e.factory.createImportSpecifier(e.factory.createIdentifier("default"),C.importClause.name))}x.push.apply(x,e.flatMap(h,(function(e){return e.importClause.namedBindings.elements})));var D=s(x),E=g.length>0?g[0]:h[0],T=0===D.length?k?void 0:e.factory.createNamedImports(e.emptyArray):0===h.length?e.factory.createNamedImports(D):e.factory.updateNamedImports(h[0].importClause.namedBindings,D);m&&k&&T?(l.push(o(E,k,void 0)),l.push(o(null!==(r=h[0])&&void 0!==r?r:E,void 0,T))):l.push(o(E,k,T))}}else{var C=g[0];l.push(o(C,C.importClause.name,_[0].importClause.namedBindings))}}return l}function a(t){if(0===t.length)return t;var r=function(e){for(var t,r=[],n=[],i=0,a=e;i<a.length;i++){var o=a[i];void 0===o.exportClause?t=t||o:o.isTypeOnly?n.push(o):r.push(o)}return{exportWithoutClause:t,namedExports:r,typeOnlyExports:n}}(t),n=r.exportWithoutClause,i=r.namedExports,a=r.typeOnlyExports,o=[];n&&o.push(n);for(var c=0,l=[i,a];c<l.length;c++){var u=l[c];if(0!==u.length){var d=[];d.push.apply(d,e.flatMap(u,(function(t){return t.exportClause&&e.isNamedExports(t.exportClause)?t.exportClause.elements:e.emptyArray})));var p=s(d),f=u[0];o.push(e.factory.updateExportDeclaration(f,f.decorators,f.modifiers,f.isTypeOnly,f.exportClause&&(e.isNamedExports(f.exportClause)?e.factory.updateNamedExports(f.exportClause,p):e.factory.updateNamespaceExport(f.exportClause,f.exportClause.name)),f.moduleSpecifier))}}return o}function o(t,r,n){return e.factory.updateImportDeclaration(t,t.decorators,t.modifiers,e.factory.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,n),t.moduleSpecifier)}function s(t){return e.stableSort(t,c)}function c(e,t){return u(e.propertyName||e.name,t.propertyName||t.name)||u(e.name,t.name)}function l(t,r){var i=void 0===t?void 0:n(t),a=void 0===r?void 0:n(r);return e.compareBooleans(void 0===i,void 0===a)||e.compareBooleans(e.isExternalModuleNameRelative(i),e.isExternalModuleNameRelative(a))||e.compareStringsCaseInsensitive(i,a)}function u(t,r){return e.compareStringsCaseInsensitive(t.text,r.text)}function d(t){var r;switch(t.kind){case 263:return null===(r=e.tryCast(t.moduleReference,e.isExternalModuleReference))||void 0===r?void 0:r.expression;case 264:return t.moduleSpecifier;case 234:return t.declarationList.declarations[0].initializer.arguments[0]}}function p(t,r){return l(d(t),d(r))||function(t,r){return e.compareValues(f(t),f(r))}(t,r)}function f(e){var t;switch(e.kind){case 264:return e.importClause?e.importClause.isTypeOnly?1:266===(null===(t=e.importClause.namedBindings)||void 0===t?void 0:t.kind)?2:e.importClause.name?3:4:0;case 263:return 5;case 234:return 6}}t.organizeImports=function(t,s,c,u,d){var f=e.textChanges.ChangeTracker.fromContext({host:c,formatContext:s,preferences:d}),m=function(n){return e.stableSort(i(function(t,n,i){for(var a=i.getTypeChecker(),s=a.getJsxNamespace(n),c=a.getJsxFragmentFactory(n),l=!!(2&n.transformFlags),u=[],d=0,p=t;d<p.length;d++){var f=p[d],m=f.importClause,g=f.moduleSpecifier;if(m){var _=m.name,h=m.namedBindings;if(_&&!v(_)&&(_=void 0),h)if(e.isNamespaceImport(h))v(h.name)||(h=void 0);else{var y=h.elements.filter((function(e){return v(e.name)}));y.length<h.elements.length&&(h=y.length?e.factory.updateNamedImports(h,y):void 0)}_||h?u.push(o(f,_,h)):r(n,g)&&(n.isDeclarationFile?u.push(e.factory.createImportDeclaration(f.decorators,f.modifiers,void 0,g)):u.push(f))}else u.push(f)}return u;function v(t){return l&&(t.text===s||c&&t.text===c)||e.FindAllReferences.Core.isSymbolReferencedInFile(t,a,n)}}(n,t,u)),(function(e,t){return p(e,t)}))};y(t.statements.filter(e.isImportDeclaration),m),y(t.statements.filter(e.isExportDeclaration),a);for(var g=0,_=t.statements.filter(e.isAmbientModule);g<_.length;g++){var h=_[g];if(h.body)y(h.body.statements.filter(e.isImportDeclaration),m),y(h.body.statements.filter(e.isExportDeclaration),a)}return f.getChanges();function y(r,i){if(0!==e.length(r)){e.suppressLeadingTrivia(r[0]);var a=e.group(r,(function(e){return n(e.moduleSpecifier)})),o=e.stableSort(a,(function(e,t){return l(e[0].moduleSpecifier,t[0].moduleSpecifier)})),u=e.flatMap(o,(function(e){return n(e[0].moduleSpecifier)?i(e):e}));0===u.length?f.delete(t,r[0]):f.replaceNodeWithNodes(t,r[0],u,{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Include,suffix:e.getNewLineOrDefaultFromHost(c,s.options)});for(var d=1;d<r.length;d++)f.deleteNode(t,r[d])}}},t.coalesceImports=i,t.coalesceExports=a,t.compareImportOrExportSpecifiers=c,t.compareModuleSpecifiers=l,t.importsAreSorted=function(t){return e.arrayIsSorted(t,p)},t.importSpecifiersAreSorted=function(t){return e.arrayIsSorted(t,c)},t.getImportDeclarationInsertionIndex=function(t,r){var n=e.binarySearch(t,r,e.identity,p);return n<0?~n:n},t.getImportSpecifierInsertionIndex=function(t,r){var n=e.binarySearch(t,r,e.identity,c);return n<0?~n:n},t.compareImportsOrRequireStatements=p}(e.OrganizeImports||(e.OrganizeImports={}))}(d||(d={})),function(e){!function(t){t.collectElements=function(t,r){var l=[];return function(t,r,n){var l=40,u=0,d=i(i([],t.statements),[t.endOfFileToken]),p=d.length;for(;u<p;){for(;u<p&&!e.isAnyImportSyntax(d[u]);)g(d[u]),u++;if(u===p)break;for(var f=u;u<p&&e.isAnyImportSyntax(d[u]);)a(d[u],t,r,n),u++;var m=u-1;m!==f&&n.push(o(e.findChildOfKind(d[f],100,t).getStart(t),d[m].getEnd(),"imports"))}function g(i){var u;if(0!==l){r.throwIfCancellationRequested(),(e.isDeclaration(i)||e.isVariableStatement(i)||1===i.kind)&&a(i,t,r,n),e.isFunctionLike(i)&&e.isBinaryExpression(i.parent)&&e.isPropertyAccessExpression(i.parent.left)&&a(i.parent.left,t,r,n);var d=function(t,r){switch(t.kind){case 232:if(e.isFunctionLike(t.parent))return function(t,r,n){var i=function(t,r,n){if(e.isNodeArrayMultiLine(t.parameters,n)){var i=e.findChildOfKind(t,20,n);if(i)return i}return e.findChildOfKind(r,18,n)}(t,r,n),a=e.findChildOfKind(r,19,n);return i&&a&&s(i,a,t,n,210!==t.kind)}(t.parent,t,r);switch(t.parent.kind){case 237:case 240:case 241:case 239:case 236:case 238:case 245:case 290:return g(t.parent);case 249:var n=t.parent;if(n.tryBlock===t)return g(t.parent);if(n.finallyBlock===t){var i=e.findChildOfKind(n,96,r);if(i)return g(i)}default:return c(e.createTextSpanFromNode(t,r),"code")}case 260:return g(t.parent);case 254:case 223:case 255:case 256:case 258:case 261:case 178:case 197:return g(t);case 180:return g(t,!1,!e.isTupleTypeNode(t.parent),22);case 287:case 288:return _(t.statements);case 201:return m(t);case 200:return m(t,22);case 276:return u(t);case 280:return d(t);case 277:case 278:return p(t.attributes);case 220:case 14:return f(t);case 198:return g(t,!1,!e.isBindingElement(t.parent),22);case 210:return l(t);case 204:return a(t)}function a(t){if(t.arguments.length){var n=e.findChildOfKind(t,20,r),i=e.findChildOfKind(t,21,r);if(n&&i&&!e.positionsAreOnSameLine(n.pos,i.pos,r))return s(n,i,t,r,!1,!0)}}function l(t){if(!e.isBlock(t.body)&&!e.positionsAreOnSameLine(t.body.getFullStart(),t.body.getEnd(),r))return c(e.createTextSpanFromBounds(t.body.getFullStart(),t.body.getEnd()),"code",e.createTextSpanFromNode(t))}function u(t){var n=e.createTextSpanFromBounds(t.openingElement.getStart(r),t.closingElement.getEnd()),i=t.openingElement.tagName.getText(r);return c(n,"code",n,!1,"<"+i+">...</"+i+">")}function d(t){var n=e.createTextSpanFromBounds(t.openingFragment.getStart(r),t.closingFragment.getEnd());return c(n,"code",n,!1,"<>...</>")}function p(e){if(0!==e.properties.length)return o(e.getStart(r),e.getEnd(),"code")}function f(e){if(14!==e.kind||0!==e.text.length)return o(e.getStart(r),e.getEnd(),"code")}function m(t,r){return void 0===r&&(r=18),g(t,!1,!e.isArrayLiteralExpression(t.parent)&&!e.isCallExpression(t.parent),r)}function g(n,i,a,o,c){void 0===i&&(i=!1),void 0===a&&(a=!0),void 0===o&&(o=18),void 0===c&&(c=18===o?19:23);var l=e.findChildOfKind(t,o,r),u=e.findChildOfKind(t,c,r);return l&&u&&s(l,u,n,r,i,a)}function _(t){return t.length?c(e.createTextSpanFromRange(t),"code"):void 0}}(i,t);d&&n.push(d),l--,e.isCallExpression(i)?(l++,g(i.expression),l--,i.arguments.forEach(g),null===(u=i.typeArguments)||void 0===u||u.forEach(g)):e.isIfStatement(i)&&i.elseStatement&&e.isIfStatement(i.elseStatement)?(g(i.expression),g(i.thenStatement),l++,g(i.elseStatement),l--):i.forEachChild(g),l++}}}(t,r,l),function(t,r){for(var i=[],a=t.getLineStarts(),o=0,s=a;o<s.length;o++){var l=s[o],u=t.getLineEndOfPosition(l),d=n(t.text.substring(l,u));if(d&&!e.isInComment(t,l))if(d[1]){var p=i.pop();p&&(p.textSpan.length=u-p.textSpan.start,p.hintSpan.length=u-p.textSpan.start,r.push(p))}else{var f=e.createTextSpanFromBounds(t.text.indexOf("//",l),u);i.push(c(f,"region",f,!1,d[2]||"#region"))}}}(t,l),l.sort((function(e,t){return e.textSpan.start-t.textSpan.start}))};var r=/^\s*\/\/\s*#(end)?region(?:\s+(.*))?(?:\r)?$/;function n(e){return r.exec(e)}function a(t,r,i,a){var s=e.getLeadingCommentRangesOfNode(t,r);if(s){for(var c=-1,l=-1,u=0,d=r.getFullText(),p=0,f=s;p<f.length;p++){var m=f[p],g=m.kind,_=m.pos,h=m.end;switch(i.throwIfCancellationRequested(),g){case 2:if(n(d.slice(_,h))){y(),u=0;break}0===u&&(c=_),l=h,u++;break;case 3:y(),a.push(o(_,h,"comment")),u=0;break;default:e.Debug.assertNever(g)}}y()}function y(){u>1&&a.push(o(c,l,"comment"))}}function o(t,r,n){return c(e.createTextSpanFromBounds(t,r),n)}function s(t,r,n,i,a,o){return void 0===a&&(a=!1),void 0===o&&(o=!0),c(e.createTextSpanFromBounds(o?t.getFullStart():t.getStart(i),r.getEnd()),"code",e.createTextSpanFromNode(n,i),a)}function c(e,t,r,n,i){return void 0===r&&(r=e),void 0===n&&(n=!1),void 0===i&&(i="..."),{textSpan:e,kind:t,hintSpan:r,bannerText:i,autoCollapse:n}}}(e.OutliningElementsCollector||(e.OutliningElementsCollector={}))}(d||(d={})),function(e){var t;function r(e,t){return{kind:e,isCaseSensitive:t}}function n(e,t){var r=t.get(e);return r||t.set(e,r=y(e)),r}function i(i,a,o){var s=function(e,t){for(var r=e.length-t.length,n=function(r){if(D(t,(function(t,n){return p(e.charCodeAt(n+r))===t})))return{value:r}},i=0;i<=r;i++){var a=n(i);if("object"==typeof a)return a.value}return-1}(i,a.textLowerCase);if(0===s)return r(a.text.length===i.length?t.exact:t.prefix,e.startsWith(i,a.text));if(a.isLowerCase){if(-1===s)return;for(var d=0,f=n(i,o);d<f.length;d++){var m=f[d];if(c(i,m,a.text,!0))return r(t.substring,c(i,m,a.text,!1))}if(a.text.length<i.length&&u(i.charCodeAt(s)))return r(t.substring,!1)}else{if(i.indexOf(a.text)>0)return r(t.substring,!0);if(a.characterSpans.length>0){var g=n(i,o),_=!!l(i,g,a,!1)||!l(i,g,a,!0)&&void 0;if(void 0!==_)return r(t.camelCase,_)}}}function a(e,t,r){if(D(t.totalTextChunk.text,(function(e){return 32!==e&&42!==e}))){var n=i(e,t.totalTextChunk,r);if(n)return n}for(var a,s=0,c=t.subWordTextChunks;s<c.length;s++){a=o(a,i(e,c[s],r))}return a}function o(t,r){return e.min(t,r,s)}function s(t,r){return void 0===t?1:void 0===r?-1:e.compareValues(t.kind,r.kind)||e.compareBooleans(!t.isCaseSensitive,!r.isCaseSensitive)}function c(e,t,r,n,i){return void 0===i&&(i={start:0,length:r.length}),i.length<=t.length&&w(0,i.length,(function(a){return function(e,t,r){return r?p(e)===p(t):e===t}(r.charCodeAt(i.start+a),e.charCodeAt(t.start+a),n)}))}function l(t,r,n,i){for(var a,o,s=n.characterSpans,l=0,d=0;;){if(d===s.length)return!0;if(l===r.length)return!1;for(var p=r[l],f=!1;d<s.length;d++){var m=s[d];if(f&&(!u(n.text.charCodeAt(s[d-1].start))||!u(n.text.charCodeAt(s[d].start))))break;if(!c(t,p,n.text,i,m))break;f=!0,a=void 0===a?l:a,o=void 0===o||o,p=e.createTextSpan(p.start+m.length,p.length-m.length)}f||void 0===o||(o=!1),l++}}function u(t){if(t>=65&&t<=90)return!0;if(t<127||!e.isUnicodeIdentifierStart(t,99))return!1;var r=String.fromCharCode(t);return r===r.toUpperCase()}function d(t){if(t>=97&&t<=122)return!0;if(t<127||!e.isUnicodeIdentifierStart(t,99))return!1;var r=String.fromCharCode(t);return r===r.toLowerCase()}function p(e){return e>=65&&e<=90?e-65+97:e<127?e:String.fromCharCode(e).toLowerCase().charCodeAt(0)}function f(e){return e>=48&&e<=57}function m(e){return u(e)||d(e)||f(e)||95===e||36===e}function g(e){for(var t=[],r=0,n=0,i=0;i<e.length;i++){m(e.charCodeAt(i))?(0===n&&(r=i),n++):n>0&&(t.push(_(e.substr(r,n))),n=0)}return n>0&&t.push(_(e.substr(r,n))),t}function _(e){var t=e.toLowerCase();return{text:e,textLowerCase:t,isLowerCase:e===t,characterSpans:h(e)}}function h(e){return v(e,!1)}function y(e){return v(e,!0)}function v(t,r){for(var n=[],i=0,a=1;a<t.length;a++){var o=f(t.charCodeAt(a-1)),s=f(t.charCodeAt(a)),c=S(t,r,a),l=r&&x(t,a,i);(b(t.charCodeAt(a-1))||b(t.charCodeAt(a))||o!==s||c||l)&&(k(t,i,a)||n.push(e.createTextSpan(i,a-i)),i=a)}return k(t,i,t.length)||n.push(e.createTextSpan(i,t.length-i)),n}function b(e){switch(e){case 33:case 34:case 35:case 37:case 38:case 39:case 40:case 41:case 42:case 44:case 45:case 46:case 47:case 58:case 59:case 63:case 64:case 91:case 92:case 93:case 95:case 123:case 125:return!0}return!1}function k(e,t,r){return D(e,(function(e){return b(e)&&95!==e}),t,r)}function x(e,t,r){return t!==r&&t+1<e.length&&u(e.charCodeAt(t))&&d(e.charCodeAt(t+1))&&D(e,u,r,t)}function S(e,t,r){var n=u(e.charCodeAt(r-1));return u(e.charCodeAt(r))&&(!t||!n)}function w(e,t,r){for(var n=e;n<t;n++)if(!r(n))return!1;return!0}function D(e,t,r,n){return void 0===r&&(r=0),void 0===n&&(n=e.length),w(r,n,(function(r){return t(e.charCodeAt(r),r)}))}!function(e){e[e.exact=0]="exact",e[e.prefix=1]="prefix",e[e.substring=2]="substring",e[e.camelCase=3]="camelCase"}(t=e.PatternMatchKind||(e.PatternMatchKind={})),e.createPatternMatcher=function(t){var r=new e.Map,n=t.trim().split(".").map((function(e){return{totalTextChunk:_(t=e.trim()),subWordTextChunks:g(t)};var t}));if(!n.some((function(e){return!e.subWordTextChunks.length})))return{getFullMatch:function(t,i){return function(t,r,n,i){var s,c=a(r,e.last(n),i);if(!c)return;if(n.length-1>t.length)return;for(var l=n.length-2,u=t.length-1;l>=0;l-=1,u-=1)s=o(s,a(t[u],n[l],i));return s}(t,i,n,r)},getMatchForLastSegmentOfPattern:function(t){return a(t,e.last(n),r)},patternContainsDots:n.length>1}},e.breakIntoCharacterSpans=h,e.breakIntoWordSpans=y}(d||(d={})),function(e){e.preProcessFile=function(t,r,n){void 0===r&&(r=!0),void 0===n&&(n=!1);var i,a,o,s={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},c=[],l=0,u=!1;function d(){return a=o,18===(o=e.scanner.scan())?l++:19===o&&l--,o}function p(){var t=e.scanner.getTokenValue(),r=e.scanner.getTokenPos();return{fileName:t,pos:r,end:r+t.length}}function f(){c.push(p()),m()}function m(){0===l&&(u=!0)}function g(){var t=e.scanner.getToken();return 134===t&&(140===(t=d())&&10===(t=d())&&(i||(i=[]),i.push({ref:p(),depth:l})),!0)}function _(){if(24===a)return!1;var t=e.scanner.getToken();if(100===t){if(20===(t=d())){if(10===(t=d())||14===t)return f(),!0}else{if(10===t)return f(),!0;if(150===t){var r=e.scanner.lookAhead((function(){var t=e.scanner.scan();return 154!==t&&(41===t||18===t||78===t||e.isKeyword(t))}));r&&(t=d())}if(78===t||e.isKeyword(t))if(154===(t=d())){if(10===(t=d()))return f(),!0}else if(62===t){if(y(!0))return!0}else{if(27!==t)return!0;t=d()}if(18===t){for(t=d();19!==t&&1!==t;)t=d();19===t&&154===(t=d())&&10===(t=d())&&f()}else 41===t&&127===(t=d())&&(78===(t=d())||e.isKeyword(t))&&154===(t=d())&&10===(t=d())&&f()}return!0}return!1}function h(){var t=e.scanner.getToken();if(93===t){if(m(),150===(t=d())){var r=e.scanner.lookAhead((function(){var t=e.scanner.scan();return 41===t||18===t}));r&&(t=d())}if(18===t){for(t=d();19!==t&&1!==t;)t=d();19===t&&154===(t=d())&&10===(t=d())&&f()}else if(41===t)154===(t=d())&&10===(t=d())&&f();else if(100===t){if(150===(t=d())){r=e.scanner.lookAhead((function(){var t=e.scanner.scan();return 78===t||e.isKeyword(t)}));r&&(t=d())}if((78===t||e.isKeyword(t))&&62===(t=d())&&y(!0))return!0}return!0}return!1}function y(t,r){void 0===r&&(r=!1);var n=t?d():e.scanner.getToken();return 144===n&&(20===(n=d())&&(10===(n=d())||r&&14===n)&&f(),!0)}function v(){var t=e.scanner.getToken();if(78===t&&"define"===e.scanner.getTokenValue()){if(20!==(t=d()))return!0;if(10===(t=d())||14===t){if(27!==(t=d()))return!0;t=d()}if(22!==t)return!0;for(t=d();23!==t&&1!==t;)10!==t&&14!==t||f(),t=d();return!0}return!1}if(r&&function(){for(e.scanner.setText(t),d();1!==e.scanner.getToken();)g()||_()||h()||n&&(y(!1,!0)||v())||d();e.scanner.setText(void 0)}(),e.processCommentPragmas(s,t),e.processPragmasIntoFields(s,e.noop),u){if(i)for(var b=0,k=i;b<k.length;b++){var x=k[b];c.push(x.ref)}return{referencedFiles:s.referencedFiles,typeReferenceDirectives:s.typeReferenceDirectives,libReferenceDirectives:s.libReferenceDirectives,importedFiles:c,isLibFile:!!s.hasNoDefaultLib,ambientExternalModules:void 0}}var S=void 0;if(i)for(var w=0,D=i;w<D.length;w++){0===(x=D[w]).depth?(S||(S=[]),S.push(x.ref.fileName)):c.push(x.ref)}return{referencedFiles:s.referencedFiles,typeReferenceDirectives:s.typeReferenceDirectives,libReferenceDirectives:s.libReferenceDirectives,importedFiles:c,isLibFile:!!s.hasNoDefaultLib,ambientExternalModules:S}}}(d||(d={})),function(e){!function(t){function r(e,t,r,n,a,o){return{canRename:!0,fileToRename:void 0,kind:r,displayName:e,fullDisplayName:t,kindModifiers:n,triggerSpan:i(a,o)}}function n(t){return{canRename:!1,localizedErrorMessage:e.getLocaleSpecificMessage(t)}}function i(t,r){var n=t.getStart(r),i=t.getWidth(r);return e.isStringLiteralLike(t)&&(n+=1,i-=2),e.createTextSpan(n,i)}t.getRenameInfo=function(t,i,a,o){var s=e.getAdjustedRenameLocation(e.getTouchingPropertyName(i,a));if(function(t){switch(t.kind){case 78:case 79:case 10:case 14:case 108:return!0;case 8:return e.isLiteralNameOfPropertyDeclarationOrIndexAccess(t);default:return!1}}(s)){var c=function(t,i,a,o,s){var c=i.getSymbolAtLocation(t);if(!c){if(e.isStringLiteralLike(t)){var l=e.getContextualTypeOrAncestorTypeNodeType(t,i);if(l&&(128&l.flags||1048576&l.flags&&e.every(l.types,(function(e){return!!(128&e.flags)}))))return r(t.text,t.text,"string","",t,a)}else if(e.isLabelName(t)){var u=e.getTextOfNode(t);return r(u,u,"label","",t,a)}return}var d=c.declarations;if(!d||0===d.length)return;if(d.some(o))return n(e.Diagnostics.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(e.isIdentifier(t)&&88===t.originalKeywordKind&&c.parent&&1536&c.parent.flags)return;if(e.isStringLiteralLike(t)&&e.tryGetImportFromModuleSpecifier(t))return s&&s.allowRenameOfImportPath?function(t,r,i){if(!e.isExternalModuleNameRelative(t.text))return n(e.Diagnostics.You_cannot_rename_a_module_via_a_global_import);var a=e.find(i.declarations,e.isSourceFile);if(!a)return;var o=e.endsWith(t.text,"/index")||e.endsWith(t.text,"/index.js")?void 0:e.tryRemoveSuffix(e.removeFileExtension(a.fileName),"/index"),s=void 0===o?a.fileName:o,c=void 0===o?"module":"directory",l=t.text.lastIndexOf("/")+1,u=e.createTextSpan(t.getStart(r)+1+l,t.text.length-l);return{canRename:!0,fileToRename:s,kind:c,displayName:s,fullDisplayName:s,kindModifiers:"",triggerSpan:u}}(t,a,c):void 0;var p=e.SymbolDisplay.getSymbolKind(i,c,t),f=e.isImportOrExportSpecifierName(t)||e.isStringOrNumericLiteralLike(t)&&159===t.parent.kind?e.stripQuotes(e.getTextOfIdentifierOrLiteral(t)):void 0,m=f||i.symbolToString(c),g=f||i.getFullyQualifiedName(c);return r(m,g,p,e.SymbolDisplay.getSymbolModifiers(i,c),t,a)}(s,t.getTypeChecker(),i,(function(e){return t.isSourceFileDefaultLibrary(e.getSourceFile())}),o);if(c)return c}return n(e.Diagnostics.You_cannot_rename_this_element)}}(e.Rename||(e.Rename={}))}(d||(d={})),function(e){!function(t){function r(t,r,n){return e.Debug.assert(n.pos<=r),r<n.end||n.getEnd()===r&&e.getTouchingPropertyName(t,r).pos<n.end}t.getSmartSelectionRange=function(t,n){var o,s,c,d={textSpan:e.createTextSpanFromBounds(n.getFullStart(),n.getEnd())},p=n;e:for(;;){var f=i(p);if(!f.length)break;for(var m=0;m<f.length;m++){var g=f[m-1],_=f[m],h=f[m+1];if(e.getTokenPosOfNode(_,n,!0)>t)break e;if(r(n,t,_)){if(e.isBlock(_)||e.isTemplateSpan(_)||e.isTemplateHead(_)||e.isTemplateTail(_)||g&&e.isTemplateHead(g)||e.isVariableDeclarationList(_)&&e.isVariableStatement(p)||e.isSyntaxList(_)&&e.isVariableDeclarationList(p)||e.isVariableDeclaration(_)&&e.isSyntaxList(p)&&1===f.length||e.isJSDocTypeExpression(_)||e.isJSDocSignature(_)||e.isJSDocTypeLiteral(_)){p=_;break}if(e.isTemplateSpan(p)&&h&&e.isTemplateMiddleOrTemplateTail(h))k(_.getFullStart()-2,h.getStart()+1);var y=e.isSyntaxList(_)&&(c=void 0,18===(c=(s=g)&&s.kind)||22===c||20===c||278===c)&&l(h)&&!e.positionsAreOnSameLine(g.getStart(),h.getStart(),n),v=y?g.getEnd():_.getStart(),b=y?h.getStart():u(n,_);e.hasJSDocNodes(_)&&(null===(o=_.jsDoc)||void 0===o?void 0:o.length)&&k(e.first(_.jsDoc).getStart(),b),k(v,b),(e.isStringLiteral(_)||e.isTemplateLiteral(_))&&k(v+1,b-1),p=_;break}if(m===f.length-1)break e}}return d;function k(r,n){if(r!==n){var i=e.createTextSpanFromBounds(r,n);(!d||!e.textSpansEqual(i,d.textSpan)&&e.textSpanIntersectsWithPosition(i,t))&&(d=a({textSpan:i},d&&{parent:d}))}}};var n=e.or(e.isImportDeclaration,e.isImportEqualsDeclaration);function i(t){if(e.isSourceFile(t))return o(t.getChildAt(0).getChildren(),n);if(e.isMappedTypeNode(t)){var r=t.getChildren(),i=r[0],a=r.slice(1),l=e.Debug.checkDefined(a.pop());e.Debug.assertEqual(i.kind,18),e.Debug.assertEqual(l.kind,19);var u=o(a,(function(e){return e===t.readonlyToken||143===e.kind||e===t.questionToken||57===e.kind})),d=o(u,(function(e){var t=e.kind;return 22===t||160===t||23===t}));return[i,c(s(d,(function(e){return 58===e.kind}))),l]}if(e.isPropertySignature(t))return s(a=o(t.getChildren(),(function(r){return r===t.name||e.contains(t.modifiers,r)})),(function(e){return 58===e.kind}));if(e.isParameter(t)){var p=o(t.getChildren(),(function(e){return e===t.dotDotDotToken||e===t.name}));return s(o(p,(function(e){return e===p[0]||e===t.questionToken})),(function(e){return 62===e.kind}))}return e.isBindingElement(t)?s(t.getChildren(),(function(e){return 62===e.kind})):t.getChildren()}function o(e,t){for(var r,n=[],i=0,a=e;i<a.length;i++){var o=a[i];t(o)?(r=r||[]).push(o):(r&&(n.push(c(r)),r=void 0),n.push(o))}return r&&n.push(c(r)),n}function s(t,r,n){if(void 0===n&&(n=!0),t.length<2)return t;var i=e.findIndex(t,r);if(-1===i)return t;var a=t.slice(0,i),o=t[i],s=e.last(t),l=n&&26===s.kind,u=t.slice(i+1,l?t.length-1:void 0),d=e.compact([a.length?c(a):void 0,o,u.length?c(u):void 0]);return l?d.concat(s):d}function c(t){return e.Debug.assertGreaterThanOrEqual(t.length,1),e.setTextRangePosEnd(e.parseNodeFactory.createSyntaxList(t),t[0].pos,e.last(t).end)}function l(e){var t=e&&e.kind;return 19===t||23===t||21===t||279===t}function u(e,t){switch(t.kind){case 329:case 327:case 336:case 334:case 331:return e.getLineEndOfPosition(t.getStart());default:return t.getEnd()}}}(e.SmartSelectionRange||(e.SmartSelectionRange={}))}(d||(d={})),function(e){!function(t){var r,n;function a(t,r,n){for(var i=t.getFullStart(),a=t.parent;a;){var o=e.findPrecedingToken(i,r,a,!0);if(o)return e.rangeContainsRange(n,o);a=a.parent}return e.Debug.fail("Could not find preceding token")}function o(t,r){var n=function(t,r){if(29===t.kind||20===t.kind)return{list:m(t.parent,t,r),argumentIndex:0};var n=e.findContainingList(t);return n&&{list:n,argumentIndex:d(n,t)}}(t,r);if(n){var i=n.list,a=n.argumentIndex,o=function(t){var r=t.getChildren(),n=e.countWhere(r,(function(e){return 27!==e.kind}));r.length>0&&27===e.last(r).kind&&n++;return n}(i);0!==a&&e.Debug.assertLessThan(a,o);var s=function(t,r){var n=t.getFullStart(),i=e.skipTrivia(r.text,t.getEnd(),!1);return e.createTextSpan(n,i-n)}(i,r);return{list:i,argumentIndex:a,argumentCount:o,argumentsSpan:s}}}function s(t,r,n){var i=t.parent;if(e.isCallOrNewExpression(i)){var a=i,s=o(t,n);if(!s)return;var c=s.list,l=s.argumentIndex,u=s.argumentCount,d=s.argumentsSpan;return{isTypeParameterList:!!i.typeArguments&&i.typeArguments.pos===c.pos,invocation:{kind:0,node:a},argumentsSpan:d,argumentIndex:l,argumentCount:u}}if(e.isNoSubstitutionTemplateLiteral(t)&&e.isTaggedTemplateExpression(i))return e.isInsideTemplateLiteral(t,r,n)?p(i,0,n):void 0;if(e.isTemplateHead(t)&&206===i.parent.kind){var f=i,m=f.parent;return e.Debug.assert(220===f.kind),p(m,l=e.isInsideTemplateLiteral(t,r,n)?0:1,n)}if(e.isTemplateSpan(i)&&e.isTaggedTemplateExpression(i.parent.parent)){var g=i;m=i.parent.parent;if(e.isTemplateTail(t)&&!e.isInsideTemplateLiteral(t,r,n))return;l=function(t,r,n,i){if(e.Debug.assert(n>=r.getStart(),"Assumed 'position' could not occur before node."),e.isTemplateLiteralToken(r))return e.isInsideTemplateLiteral(r,n,i)?0:t+2;return t+1}(g.parent.templateSpans.indexOf(g),t,r,n);return p(m,l,n)}if(e.isJsxOpeningLikeElement(i)){var _=i.attributes.pos,h=e.skipTrivia(n.text,i.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:i},argumentsSpan:e.createTextSpan(_,h-_),argumentIndex:0,argumentCount:1}}var y=e.getPossibleTypeArgumentsInfo(t,n);if(y){var v=y.called,b=y.nTypeArguments;return{isTypeParameterList:!0,invocation:a={kind:1,called:v},argumentsSpan:d=e.createTextSpanFromBounds(v.getStart(n),t.end),argumentIndex:b,argumentCount:b+1}}}function c(t){return e.isBinaryExpression(t.parent)?c(t.parent):t}function l(t){return e.isBinaryExpression(t.left)?l(t.left)+1:2}function u(t){return"__type"===t.name&&e.firstDefined(t.declarations,(function(t){return e.isFunctionTypeNode(t)?t.parent.symbol:void 0}))||t}function d(e,t){for(var r=0,n=0,i=e.getChildren();n<i.length;n++){var a=i[n];if(a===t)break;27!==a.kind&&r++}return r}function p(t,r,n){var i=e.isNoSubstitutionTemplateLiteral(t.template)?1:t.template.templateSpans.length+1;return 0!==r&&e.Debug.assertLessThan(r,i),{isTypeParameterList:!1,invocation:{kind:0,node:t},argumentsSpan:f(t,n),argumentIndex:r,argumentCount:i}}function f(t,r){var n=t.template,i=n.getStart(),a=n.getEnd();220===n.kind&&(0===e.last(n.templateSpans).literal.getFullWidth()&&(a=e.skipTrivia(r.text,a,!1)));return e.createTextSpan(i,a-i)}function m(t,r,n){var i=t.getChildren(n),a=i.indexOf(r);return e.Debug.assert(a>=0&&i.length>a+1),i[a+1]}function g(t){return 0===t.kind?e.getInvokedExpression(t.node):t.called}function _(e){return 0===e.kind?e.node:1===e.kind?e.called:e.node}!function(e){e[e.Call=0]="Call",e[e.TypeArgs=1]="TypeArgs",e[e.Contextual=2]="Contextual"}(r||(r={})),t.getSignatureHelpItems=function(t,r,n,i,d){var p=t.getTypeChecker(),f=e.findTokenOnLeftOfPosition(r,n);if(f){var m=!!i&&"characterTyped"===i.kind;if(!m||!e.isInString(r,n,f)&&!e.isInComment(r,n)){var h=!!i&&"invoked"===i.kind,b=function(t,r,n,i,a){for(var d=function(t){e.Debug.assert(e.rangeContainsRange(t.parent,t),"Not a subspan",(function(){return"Child: "+e.Debug.formatSyntaxKind(t.kind)+", parent: "+e.Debug.formatSyntaxKind(t.parent.kind)}));var a=function(t,r,n,i){return function(t,r,n,i){var a=function(t,r,n){if(20!==t.kind&&27!==t.kind)return;var i=t.parent;switch(i.kind){case 208:case 166:case 209:case 210:var a=o(t,r);if(!a)return;var s=a.argumentIndex,u=a.argumentCount,d=a.argumentsSpan,p=e.isMethodDeclaration(i)?n.getContextualTypeForObjectLiteralElement(i):n.getContextualType(i);return p&&{contextualType:p,argumentIndex:s,argumentCount:u,argumentsSpan:d};case 218:var f=c(i),m=n.getContextualType(f),g=20===t.kind?0:l(i)-1,_=l(f);return m&&{contextualType:m,argumentIndex:g,argumentCount:_,argumentsSpan:e.createTextSpanFromNode(i)};default:return}}(t,n,i);if(!a)return;var s=a.contextualType,d=a.argumentIndex,p=a.argumentCount,f=a.argumentsSpan,m=s.getNonNullableType(),g=m.getCallSignatures();if(1!==g.length)return;var _={kind:2,signature:e.first(g),node:t,symbol:u(m.symbol)};return{isTypeParameterList:!1,invocation:_,argumentsSpan:f,argumentIndex:d,argumentCount:p}}(t,0,n,i)||s(t,r,n)}(t,r,n,i);if(a)return{value:a}},p=t;!e.isSourceFile(p)&&(a||!e.isBlock(p));p=p.parent){var f=d(p);if("object"==typeof f)return f.value}return}(f,n,r,p,h);if(b){d.throwIfCancellationRequested();var k=function(t,r,n,i,o){var s=t.invocation,c=t.argumentCount;switch(s.kind){case 0:if(o&&!function(t,r,n){if(!e.isCallOrNewExpression(r))return!1;var i=r.getChildren(n);switch(t.kind){case 20:return e.contains(i,t);case 27:var o=e.findContainingList(t);return!!o&&e.contains(i,o);case 29:return a(t,n,r.expression);default:return!1}}(i,s.node,n))return;var l=[],u=r.getResolvedSignatureForSignatureHelp(s.node,l,c);return 0===l.length?void 0:{kind:0,candidates:l,resolvedSignature:u};case 1:var d=s.called;if(o&&!a(i,n,e.isIdentifier(d)?d.parent:d))return;if(0!==(l=e.getPossibleGenericSignatures(d,c,r)).length)return{kind:0,candidates:l,resolvedSignature:e.first(l)};var p=r.getSymbolAtLocation(d);return p&&{kind:1,symbol:p};case 2:return{kind:0,candidates:[s.signature],resolvedSignature:s.signature};default:return e.Debug.assertNever(s)}}(b,p,r,f,m);return d.throwIfCancellationRequested(),k?p.runWithCancellationToken(d,(function(e){return 0===k.kind?y(k.candidates,k.resolvedSignature,b,r,e):function(e,t,r,n){var i=t.argumentCount,a=t.argumentsSpan,o=t.invocation,s=t.argumentIndex,c=n.getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(e);if(!c)return;var l=[v(e,c,n,_(o),r)];return{items:l,applicableSpan:a,selectedItemIndex:0,argumentIndex:s,argumentCount:i}}(k.symbol,b,r,e)})):e.isSourceFileJS(r)?function(t,r,n){if(2===t.invocation.kind)return;var i=g(t.invocation),a=e.isPropertyAccessExpression(i)?i.name.text:void 0,o=r.getTypeChecker();return void 0===a?void 0:e.firstDefined(r.getSourceFiles(),(function(r){return e.firstDefined(r.getNamedDeclarations().get(a),(function(e){var i=e.symbol&&o.getTypeOfSymbolAtLocation(e.symbol,e),a=i&&i.getCallSignatures();if(a&&a.length)return o.runWithCancellationToken(n,(function(e){return y(a,a[0],t,r,e,!0)}))}))}))}(b,t,d):void 0}}}},function(e){e[e.Candidate=0]="Candidate",e[e.Type=1]="Type"}(n||(n={})),t.getArgumentInfoForCompletions=function(e,t,r){var n=s(e,t,r);return!n||n.isTypeParameterList||0!==n.invocation.kind?void 0:{invocation:n.invocation.node,argumentCount:n.argumentCount,argumentIndex:n.argumentIndex}};var h=70246400;function y(t,r,n,a,o,s){var c,l=n.isTypeParameterList,u=n.argumentCount,d=n.argumentsSpan,p=n.invocation,f=n.argumentIndex,m=_(p),h=2===p.kind?p.symbol:o.getSymbolAtLocation(g(p))||s&&(null===(c=r.declaration)||void 0===c?void 0:c.symbol),y=h?e.symbolToDisplayParts(o,h,s?a:void 0,void 0):e.emptyArray,v=e.map(t,(function(t){return function(t,r,n,a,o,s){var c=(n?k:x)(t,a,o,s);return e.map(c,(function(n){var s=n.isVariadic,c=n.parameters,l=n.prefix,u=n.suffix,d=i(i([],r),l),p=i(i([],u),function(t,r,n){return e.mapToDisplayParts((function(e){e.writePunctuation(":"),e.writeSpace(" ");var i=n.getTypePredicateOfSignature(t);i?n.writeTypePredicate(i,r,void 0,e):n.writeType(n.getReturnTypeOfSignature(t),r,void 0,e)}))}(t,o,a)),f=t.getDocumentationComment(a),m=t.getJsDocTags();return{isVariadic:s,prefixDisplayParts:d,suffixDisplayParts:p,separatorDisplayParts:b,parameters:c,documentation:f,tags:m}}))}(t,y,l,o,m,a)}));0!==f&&e.Debug.assertLessThan(f,u);for(var S=0,w=0,D=0;D<v.length;D++){var E=v[D];if(t[D]===r&&(S=w,E.length>1))for(var T=0,C=0,A=E;C<A.length;C++){var N=A[C];if(N.isVariadic||N.parameters.length>=u){S=w+T;break}T++}w+=E.length}e.Debug.assert(-1!==S);var P={items:e.flatMapToMutable(v,e.identity),applicableSpan:d,selectedItemIndex:S,argumentIndex:f,argumentCount:u},I=P.items[S];if(I.isVariadic){var F=e.findIndex(I.parameters,(function(e){return!!e.isRest}));-1<F&&F<I.parameters.length-1?P.argumentIndex=I.parameters.length:P.argumentIndex=Math.min(P.argumentIndex,I.parameters.length-1)}return P}function v(t,r,n,a,o){var s=e.symbolToDisplayParts(n,t),c=e.createPrinter({removeComments:!0}),l=r.map((function(e){return S(e,n,a,o,c)})),u=t.getDocumentationComment(n),d=t.getJsDocTags();return{isVariadic:!1,prefixDisplayParts:i(i([],s),[e.punctuationPart(29)]),suffixDisplayParts:[e.punctuationPart(31)],separatorDisplayParts:b,parameters:l,documentation:u,tags:d}}var b=[e.punctuationPart(27),e.spacePart()];function k(t,r,n,a){var o=(t.target||t).typeParameters,s=e.createPrinter({removeComments:!0}),c=(o||e.emptyArray).map((function(e){return S(e,r,n,a,s)})),l=t.thisParameter?[r.symbolToParameterDeclaration(t.thisParameter,n,h)]:[];return r.getExpandedParameters(t).map((function(t){var o=e.factory.createNodeArray(i(i([],l),e.map(t,(function(e){return r.symbolToParameterDeclaration(e,n,h)})))),u=e.mapToDisplayParts((function(e){s.writeList(2576,o,a,e)}));return{isVariadic:!1,parameters:c,prefix:[e.punctuationPart(29)],suffix:i([e.punctuationPart(31)],u)}}))}function x(t,r,n,a){var o=r.hasEffectiveRestParameter(t),s=e.createPrinter({removeComments:!0}),c=e.mapToDisplayParts((function(i){if(t.typeParameters&&t.typeParameters.length){var o=e.factory.createNodeArray(t.typeParameters.map((function(e){return r.typeParameterToDeclaration(e,n,h)})));s.writeList(53776,o,a,i)}})),l=r.getExpandedParameters(t);return l.map((function(t){return{isVariadic:o&&(1===l.length||!!(32768&t[t.length-1].checkFlags)),parameters:t.map((function(t){return function(t,r,n,i,a){var o=e.mapToDisplayParts((function(e){var o=r.symbolToParameterDeclaration(t,n,h);a.writeNode(4,o,i,e)})),s=r.isOptionalParameter(t.valueDeclaration),c=!!(32768&t.checkFlags);return{name:t.name,documentation:t.getDocumentationComment(r),displayParts:o,isOptional:s,isRest:c}}(t,r,n,a,s)})),prefix:i(i([],c),[e.punctuationPart(20)]),suffix:[e.punctuationPart(21)]}}))}function S(t,r,n,i,a){var o=e.mapToDisplayParts((function(e){var o=r.typeParameterToDeclaration(t,n,h);a.writeNode(4,o,i,e)}));return{name:t.symbol.name,documentation:t.symbol.getDocumentationComment(r),displayParts:o,isOptional:!1,isRest:!1}}}(e.SignatureHelp||(e.SignatureHelp={}))}(d||(d={})),function(e){var t=/^data:(?:application\/json(?:;charset=[uU][tT][fF]-8);base64,([A-Za-z0-9+\/=]+)$)?/;function r(t,r,n){var i=e.tryParseRawSourceMap(r);if(i&&i.sources&&i.file&&i.mappings&&(!i.sourcesContent||!i.sourcesContent.some(e.isString)))return e.createDocumentPositionMapper(t,i,n)}e.getSourceMapper=function(t){var r=e.createGetCanonicalFileName(t.useCaseSensitiveFileNames()),n=t.getCurrentDirectory(),i=new e.Map,a=new e.Map;return{tryGetSourcePosition:function t(r){if(!e.isDeclarationFileName(r.fileName))return;if(!c(r.fileName))return;var n=s(r.fileName).getSourcePosition(r);return n&&n!==r?t(n)||n:void 0},tryGetGeneratedPosition:function(i){if(e.isDeclarationFileName(i.fileName))return;var a=c(i.fileName);if(!a)return;var o=t.getProgram();if(o.isSourceOfProjectReferenceRedirect(a.fileName))return;var l=o.getCompilerOptions(),u=e.outFile(l),d=u?e.removeFileExtension(u)+".d.ts":e.getDeclarationEmitOutputFilePathWorker(i.fileName,o.getCompilerOptions(),n,o.getCommonSourceDirectory(),r);if(void 0===d)return;var p=s(d,i.fileName).getGeneratedPosition(i);return p===i?void 0:p},toLineColumnOffset:function(e,t){return u(e).getLineAndCharacterOfPosition(t)},clearCache:function(){i.clear(),a.clear()}};function o(t){return e.toPath(t,n,r)}function s(n,i){var s,c=o(n),l=a.get(c);if(l)return l;if(t.getDocumentPositionMapper)s=t.getDocumentPositionMapper(n,i);else if(t.readFile){var d=u(n);s=d&&e.getDocumentPositionMapper({getSourceFileLike:u,getCanonicalFileName:r,log:function(e){return t.log(e)}},n,e.getLineInfo(d.text,e.getLineStarts(d)),(function(e){return!t.fileExists||t.fileExists(e)?t.readFile(e):void 0}))}return a.set(c,s||e.identitySourceMapConsumer),s||e.identitySourceMapConsumer}function c(e){var r=t.getProgram();if(r){var n=o(e),i=r.getSourceFileByPath(n);return i&&i.resolvedPath===n?i:void 0}}function l(r){var n=o(r),a=i.get(n);if(void 0!==a)return a||void 0;if(t.readFile&&(!t.fileExists||t.fileExists(n))){var s=t.readFile(n),c=!!s&&function(t,r){return{text:t,lineMap:r,getLineAndCharacterOfPosition:function(t){return e.computeLineAndCharacterOfPosition(e.getLineStarts(this),t)}}}(s);return i.set(n,c),c||void 0}i.set(n,!1)}function u(e){return t.getSourceFileLike?t.getSourceFileLike(e):c(e)||l(e)}},e.getDocumentPositionMapper=function(n,i,a,o){var s=e.tryGetSourceMappingURL(a);if(s){var c=t.exec(s);if(c){if(c[1]){var l=c[1];return r(n,e.base64decode(e.sys,l),i)}s=void 0}}var u=[];s&&u.push(s),u.push(i+".map");for(var d=s&&e.getNormalizedAbsolutePath(s,e.getDirectoryPath(i)),p=0,f=u;p<f.length;p++){var m=f[p],g=e.getNormalizedAbsolutePath(m,e.getDirectoryPath(i)),_=o(g,d);if(e.isString(_))return r(n,_,g);if(void 0!==_)return _||void 0}}}(d||(d={})),function(e){var t=new e.Map;function r(t){return e.isPropertyAccessExpression(t)?r(t.expression):t}function n(t){switch(t.kind){case 264:var r=t.importClause,n=t.moduleSpecifier;return r&&!r.name&&r.namedBindings&&266===r.namedBindings.kind&&e.isStringLiteral(n)?r.namedBindings.name:void 0;case 263:return t.name;default:return}}function i(t,r){return e.isReturnStatement(t)&&!!t.expression&&a(t.expression,r)}function a(t,r){if(!o(t)||!t.arguments.every((function(e){return s(e,r)})))return!1;for(var n=t.expression;o(n)||e.isPropertyAccessExpression(n);){if(e.isCallExpression(n)&&!n.arguments.every((function(e){return s(e,r)})))return!1;n=n.expression}return!0}function o(t){return e.isCallExpression(t)&&(e.hasPropertyAccessExpressionWithName(t,"then")&&function(t){return!(t.arguments.length>2)&&(t.arguments.length<2||e.some(t.arguments,(function(t){return 104===t.kind||e.isIdentifier(t)&&"undefined"===t.text})))}(t)||e.hasPropertyAccessExpressionWithName(t,"catch"))}function s(r,n){switch(r.kind){case 253:case 209:case 210:t.set(c(r),!0);case 104:return!0;case 78:case 202:var i=n.getSymbolAtLocation(r);return!!i&&(n.isUndefinedSymbol(i)||e.some(e.skipAlias(i,n).declarations,(function(t){return e.isFunctionLike(t)||e.hasInitializer(t)&&!!t.initializer&&e.isFunctionLike(t.initializer)})));default:return!1}}function c(e){return e.pos.toString()+":"+e.end.toString()}e.computeSuggestionDiagnostics=function(a,o,s){o.getSemanticDiagnostics(a,s);var l,u=[],d=o.getTypeChecker();a.commonJsModuleIndicator&&(e.programContainsEs6Modules(o)||e.compilerOptionsIndicateEs6Modules(o.getCompilerOptions()))&&function(t){return t.statements.some((function(t){switch(t.kind){case 234:return t.declarationList.declarations.some((function(t){return!!t.initializer&&e.isRequireCall(r(t.initializer),!0)}));case 235:var n=t.expression;if(!e.isBinaryExpression(n))return e.isRequireCall(n,!0);var i=e.getAssignmentDeclarationKind(n);return 1===i||2===i;default:return!1}}))}(a)&&u.push(e.createDiagnosticForNode((l=a.commonJsModuleIndicator,e.isBinaryExpression(l)?l.left:l),e.Diagnostics.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module));var p=e.isSourceFileJS(a);if(t.clear(),function r(n){if(p)(function(t,r){var n,i,a,o;if(209===t.kind){if(e.isVariableDeclaration(t.parent)&&(null===(n=t.symbol.members)||void 0===n?void 0:n.size))return!0;var s=r.getSymbolOfExpando(t,!1);return!(!s||!(null===(i=s.exports)||void 0===i?void 0:i.size)&&!(null===(a=s.members)||void 0===a?void 0:a.size))}if(253===t.kind)return!!(null===(o=t.symbol.members)||void 0===o?void 0:o.size);return!1})(n,d)&&u.push(e.createDiagnosticForNode(e.isVariableDeclaration(n.parent)?n.parent.name:n,e.Diagnostics.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(e.isVariableStatement(n)&&n.parent===a&&2&n.declarationList.flags&&1===n.declarationList.declarations.length){var o=n.declarationList.declarations[0].initializer;o&&e.isRequireCall(o,!0)&&u.push(e.createDiagnosticForNode(o,e.Diagnostics.require_call_may_be_converted_to_an_import))}e.codefix.parameterShouldGetTypeFromJSDoc(n)&&u.push(e.createDiagnosticForNode(n.name||n,e.Diagnostics.JSDoc_types_may_be_moved_to_TypeScript_types))}e.isFunctionLikeDeclaration(n)&&function(r,n,a){(function(t,r){return!e.isAsyncFunction(t)&&t.body&&e.isBlock(t.body)&&function(t,r){return!!e.forEachReturnStatement(t,(function(e){return i(e,r)}))}(t.body,r)&&function(e,t){var r=t.getTypeAtLocation(e),n=t.getSignaturesOfType(r,0),i=n.length?t.getReturnTypeOfSignature(n[0]):void 0;return!!i&&!!t.getPromisedTypeOfPromise(i)}(t,r)})(r,n)&&!t.has(c(r))&&a.push(e.createDiagnosticForNode(!r.name&&e.isVariableDeclaration(r.parent)&&e.isIdentifier(r.parent.name)?r.parent.name:r,e.Diagnostics.This_may_be_converted_to_an_async_function))}(n,d,u);n.forEachChild(r)}(a),e.getAllowSyntheticDefaultImports(o.getCompilerOptions()))for(var f=0,m=a.imports;f<m.length;f++){var g=m[f],_=n(e.importFromModuleSpecifier(g));if(_){var h=e.getResolvedModule(a,g.text),y=h&&o.getSourceFile(h.resolvedFileName);y&&y.externalModuleIndicator&&e.isExportAssignment(y.externalModuleIndicator)&&y.externalModuleIndicator.isExportEquals&&u.push(e.createDiagnosticForNode(_,e.Diagnostics.Import_may_be_converted_to_a_default_import))}}return e.addRange(u,a.bindSuggestionDiagnostics),e.addRange(u,o.getSuggestionDiagnostics(a,s)),u.sort((function(e,t){return e.start-t.start}))},e.isReturnStatementWithFixablePromiseHandler=i,e.isFixablePromiseHandler=a}(d||(d={})),function(e){!function(t){var r=70246400;function n(t,r,n){var a=i(t,r,n);if(""!==a)return a;var o=e.getCombinedLocalAndExportSymbolFlags(r);return 32&o?e.getDeclarationOfKind(r,223)?"local class":"class":384&o?"enum":524288&o?"type":64&o?"interface":262144&o?"type parameter":8&o?"enum member":2097152&o?"alias":1536&o?"module":a}function i(t,r,n){var i=t.getRootSymbols(r);if(1===i.length&&8192&e.first(i).flags&&0!==t.getTypeOfSymbolAtLocation(r,n).getNonNullableType().getCallSignatures().length)return"method";if(t.isUndefinedSymbol(r))return"var";if(t.isArgumentsSymbol(r))return"local var";if(108===n.kind&&e.isExpression(n))return"parameter";var a=e.getCombinedLocalAndExportSymbolFlags(r);if(3&a)return e.isFirstDeclarationOfSymbolParameter(r)?"parameter":r.valueDeclaration&&e.isVarConst(r.valueDeclaration)?"const":e.forEach(r.declarations,e.isLet)?"let":s(r)?"local var":"var";if(16&a)return s(r)?"local function":"function";if(32768&a)return"getter";if(65536&a)return"setter";if(8192&a)return"method";if(16384&a)return"constructor";if(4&a){if(33554432&a&&6&r.checkFlags){var o=e.forEach(t.getRootSymbols(r),(function(e){if(98311&e.getFlags())return"property"}));return o||(t.getTypeOfSymbolAtLocation(r,n).getCallSignatures().length?"method":"property")}switch(n.parent&&n.parent.kind){case 278:case 276:case 277:return 78===n.kind?"property":"JSX attribute";case 283:return"JSX attribute";default:return"property"}}return""}function a(t){return!!(8192&e.getCombinedNodeFlagsAlwaysIncludeJSDoc(t))}function o(t){if(t.declarations&&t.declarations.length){var r=t.declarations,n=r[0],i=r.slice(1),o=e.length(i)&&a(n)&&e.some(i,(function(e){return!a(e)}))?8192:0,s=e.getNodeModifiers(n,o);if(s)return s.split(",")}return[]}function s(t){return!t.parent&&e.forEach(t.declarations,(function(t){if(209===t.kind)return!0;if(251!==t.kind&&253!==t.kind)return!1;for(var r=t.parent;!e.isFunctionBlock(r);r=r.parent)if(300===r.kind||260===r.kind)return!1;return!0}))}t.getSymbolKind=n,t.getSymbolModifiers=function(t,r){if(!r)return"";var n=new e.Set(o(r));if(2097152&r.flags){var i=t.getAliasedSymbol(r);i!==r&&e.forEach(o(i),(function(e){n.add(e)}))}return 16777216&r.flags&&n.add("optional"),n.size>0?e.arrayFrom(n.values()).join(","):""},t.getSymbolDisplayPartsDocumentationAndSymbolKind=function t(a,o,s,c,l,u,d){void 0===u&&(u=e.getMeaningFromLocation(l));var p,f,m,g,_=[],h=[],y=[],v=e.getCombinedLocalAndExportSymbolFlags(o),b=1&u?i(a,o,l):"",k=!1,x=108===l.kind&&e.isInExpressionContext(l),S=!1;if(108===l.kind&&!x)return{displayParts:[e.keywordPart(108)],documentation:[],symbolKind:"primitive type",tags:void 0};if(""!==b||32&v||2097152&v){"getter"!==b&&"setter"!==b||(b="property");var w=void 0;if(p=x?a.getTypeAtLocation(l):a.getTypeOfSymbolAtLocation(o.exportSymbol||o,l),l.parent&&202===l.parent.kind){var D=l.parent.name;(D===l||D&&0===D.getFullWidth())&&(l=l.parent)}var E=void 0;if(e.isCallOrNewExpression(l)?E=l:(e.isCallExpressionTarget(l)||e.isNewExpressionTarget(l)||l.parent&&(e.isJsxOpeningLikeElement(l.parent)||e.isTaggedTemplateExpression(l.parent))&&e.isFunctionLike(o.valueDeclaration))&&(E=l.parent),E){w=a.tryGetResolvedSignatureWithoutCheck(E);var T=205===E.kind||e.isCallExpression(E)&&106===E.expression.kind,C=T?p.getConstructSignatures():p.getCallSignatures();if(e.contains(C,w.target)||e.contains(C,w)||(w=C.length?C[0]:void 0),w){switch(T&&32&v?(b="constructor",X(p.symbol,b)):2097152&v?(Q(b="alias"),_.push(e.spacePart()),T&&(4&w.flags&&(_.push(e.keywordPart(126)),_.push(e.spacePart())),_.push(e.keywordPart(103)),_.push(e.spacePart())),Y(o)):X(o,b),b){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":_.push(e.punctuationPart(58)),_.push(e.spacePart()),16&e.getObjectFlags(p)||!p.symbol||(e.addRange(_,e.symbolToDisplayParts(a,p.symbol,c,void 0,5)),_.push(e.lineBreakPart())),T&&(4&w.flags&&(_.push(e.keywordPart(126)),_.push(e.spacePart())),_.push(e.keywordPart(103)),_.push(e.spacePart())),Z(w,C,262144);break;default:Z(w,C)}k=!0,S=C.length>1}}else if(e.isNameOfFunctionDeclaration(l)&&!(98304&v)||133===l.kind&&167===l.parent.kind){var A=l.parent,N=o.declarations&&e.find(o.declarations,(function(e){return e===(133===l.kind?A.parent:A)}));if(N){C=167===A.kind?p.getNonNullableType().getConstructSignatures():p.getNonNullableType().getCallSignatures();w=a.isImplementationOfOverload(A)?C[0]:a.getSignatureFromDeclaration(A),167===A.kind?(b="constructor",X(p.symbol,b)):X(170!==A.kind||2048&p.symbol.flags||4096&p.symbol.flags?o:p.symbol,b),Z(w,C),k=!0,S=C.length>1}}}if(32&v&&!k&&!x&&(G(),e.getDeclarationOfKind(o,223)?Q("local class"):e.getDeclarationOfKind(o,255)?_.push(e.keywordPart(84)):_.push(e.keywordPart(83)),_.push(e.spacePart()),Y(o),ee(o,s)),64&v&&2&u&&(W(),_.push(e.keywordPart(118)),_.push(e.spacePart()),Y(o),ee(o,s)),524288&v&&2&u&&(W(),_.push(e.keywordPart(150)),_.push(e.spacePart()),Y(o),ee(o,s),_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),e.addRange(_,e.typeToDisplayParts(a,a.getDeclaredTypeOfSymbol(o),c,8388608))),384&v&&(W(),e.some(o.declarations,(function(t){return e.isEnumDeclaration(t)&&e.isEnumConst(t)}))&&(_.push(e.keywordPart(85)),_.push(e.spacePart())),_.push(e.keywordPart(92)),_.push(e.spacePart()),Y(o)),1536&v&&!x){W();var P=(V=e.getDeclarationOfKind(o,259))&&V.name&&78===V.name.kind;_.push(e.keywordPart(P?141:140)),_.push(e.spacePart()),Y(o)}if(262144&v&&2&u)if(W(),_.push(e.punctuationPart(20)),_.push(e.textPart("type parameter")),_.push(e.punctuationPart(21)),_.push(e.spacePart()),Y(o),o.parent)$(),Y(o.parent,c),ee(o.parent,c);else{var I=e.getDeclarationOfKind(o,160);if(void 0===I)return e.Debug.fail();if(V=I.parent)if(e.isFunctionLikeKind(V.kind)){$();w=a.getSignatureFromDeclaration(V);171===V.kind?(_.push(e.keywordPart(103)),_.push(e.spacePart())):170!==V.kind&&V.name&&Y(V.symbol),e.addRange(_,e.signatureToDisplayParts(a,w,s,32))}else 257===V.kind&&($(),_.push(e.keywordPart(150)),_.push(e.spacePart()),Y(V.symbol),ee(V.symbol,s))}if(8&v&&(b="enum member",X(o,"enum member"),294===(V=o.declarations[0]).kind)){var F=a.getConstantValue(V);void 0!==F&&(_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),_.push(e.displayPart(e.getTextOfConstantValue(F),"number"==typeof F?e.SymbolDisplayPartKind.numericLiteral:e.SymbolDisplayPartKind.stringLiteral)))}if(2097152&o.flags){if(W(),!k){var O=a.getAliasedSymbol(o);if(O!==o&&O.declarations&&O.declarations.length>0){var R=O.declarations[0],M=e.getNameOfDeclaration(R);if(M){var L=e.isModuleWithStringLiteralName(R)&&e.hasSyntacticModifier(R,2),j="default"!==o.name&&!L,B=t(a,O,e.getSourceFileOfNode(R),R,M,u,j?o:O);_.push.apply(_,B.displayParts),_.push(e.lineBreakPart()),m=B.documentation,g=B.tags}else m=O.getContextualDocumentationComment(R,a),g=O.getJsDocTags()}}switch(o.declarations[0].kind){case 262:_.push(e.keywordPart(93)),_.push(e.spacePart()),_.push(e.keywordPart(141));break;case 269:_.push(e.keywordPart(93)),_.push(e.spacePart()),_.push(e.keywordPart(o.declarations[0].isExportEquals?62:88));break;case 273:_.push(e.keywordPart(93));break;default:_.push(e.keywordPart(100))}_.push(e.spacePart()),Y(o),e.forEach(o.declarations,(function(t){if(263===t.kind){var r=t;if(e.isExternalModuleImportEqualsDeclaration(r))_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),_.push(e.keywordPart(144)),_.push(e.punctuationPart(20)),_.push(e.displayPart(e.getTextOfNode(e.getExternalModuleImportEqualsDeclarationExpression(r)),e.SymbolDisplayPartKind.stringLiteral)),_.push(e.punctuationPart(21));else{var n=a.getSymbolAtLocation(r.moduleReference);n&&(_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),Y(n,c))}return!0}}))}if(!k)if(""!==b){if(p)if(x?(W(),_.push(e.keywordPart(108))):X(o,b),"property"===b||"JSX attribute"===b||3&v||"local var"===b||x){if(_.push(e.punctuationPart(58)),_.push(e.spacePart()),p.symbol&&262144&p.symbol.flags){var z=e.mapToDisplayParts((function(t){var n=a.typeParameterToDeclaration(p,c,r);K().writeNode(4,n,e.getSourceFileOfNode(e.getParseTreeNode(c)),t)}));e.addRange(_,z)}else e.addRange(_,e.typeToDisplayParts(a,p,c));if(o.target&&o.target.tupleLabelDeclaration){var U=o.target.tupleLabelDeclaration;e.Debug.assertNode(U.name,e.isIdentifier),_.push(e.spacePart()),_.push(e.punctuationPart(20)),_.push(e.textPart(e.idText(U.name))),_.push(e.punctuationPart(21))}}else if(16&v||8192&v||16384&v||131072&v||98304&v||"method"===b){(C=p.getNonNullableType().getCallSignatures()).length&&(Z(C[0],C),S=C.length>1)}}else b=n(a,o,l);if(0!==h.length||S||(h=o.getContextualDocumentationComment(c,a)),0===h.length&&4&v&&o.parent&&e.forEach(o.parent.declarations,(function(e){return 300===e.kind})))for(var q=0,J=o.declarations;q<J.length;q++){var V;if((V=J[q]).parent&&218===V.parent.kind){var H=a.getSymbolAtLocation(V.parent.right);if(H&&(h=H.getDocumentationComment(a),y=H.getJsDocTags(),h.length>0))break}}return 0!==y.length||S||(y=o.getJsDocTags()),0===h.length&&m&&(h=m),0===y.length&&g&&(y=g),{displayParts:_,documentation:h,symbolKind:b,tags:0===y.length?void 0:y};function K(){return f||(f=e.createPrinter({removeComments:!0})),f}function W(){_.length&&_.push(e.lineBreakPart()),G()}function G(){d&&(Q("alias"),_.push(e.spacePart()))}function $(){_.push(e.spacePart()),_.push(e.keywordPart(101)),_.push(e.spacePart())}function Y(t,r){d&&t===o&&(t=d);var n=e.symbolToDisplayParts(a,t,r||s,void 0,7);e.addRange(_,n),16777216&o.flags&&_.push(e.punctuationPart(57))}function X(t,r){W(),r&&(Q(r),t&&!e.some(t.declarations,(function(t){return e.isArrowFunction(t)||(e.isFunctionExpression(t)||e.isClassExpression(t))&&!t.name}))&&(_.push(e.spacePart()),Y(t)))}function Q(t){switch(t){case"var":case"function":case"let":case"const":case"constructor":return void _.push(e.textOrKeywordPart(t));default:return _.push(e.punctuationPart(20)),_.push(e.textOrKeywordPart(t)),void _.push(e.punctuationPart(21))}}function Z(t,r,n){void 0===n&&(n=0),e.addRange(_,e.signatureToDisplayParts(a,t,c,32|n)),r.length>1&&(_.push(e.spacePart()),_.push(e.punctuationPart(20)),_.push(e.operatorPart(39)),_.push(e.displayPart((r.length-1).toString(),e.SymbolDisplayPartKind.numericLiteral)),_.push(e.spacePart()),_.push(e.textPart(2===r.length?"overload":"overloads")),_.push(e.punctuationPart(21))),h=t.getDocumentationComment(a),y=t.getJsDocTags(),r.length>1&&0===h.length&&0===y.length&&(h=r[0].getDocumentationComment(a),y=r[0].getJsDocTags())}function ee(t,n){var i=e.mapToDisplayParts((function(i){var o=a.symbolToTypeParameterDeclarations(t,n,r);K().writeList(53776,o,e.getSourceFileOfNode(e.getParseTreeNode(n)),i)}));e.addRange(_,i)}}}(e.SymbolDisplay||(e.SymbolDisplay={}))}(d||(d={})),function(e){function t(t,r){var i=[],a=r.compilerOptions?n(r.compilerOptions,i):{},o=e.getDefaultCompilerOptions();for(var s in o)e.hasProperty(o,s)&&void 0===a[s]&&(a[s]=o[s]);for(var c=0,l=e.transpileOptionValueCompilerOptions;c<l.length;c++){var u=l[c];a[u.name]=u.transpileOptionValue}a.suppressOutputPathCheck=!0,a.allowNonTsExtensions=!0;var d=r.fileName||(r.compilerOptions&&r.compilerOptions.jsx?"module.tsx":"module.ts"),p=e.ensureScriptKind(d,void 0),f=e.createSourceFile(d,t,a.target,void 0,p,a);r.moduleName&&(f.moduleName=r.moduleName),r.renamedDependencies&&(f.renamedDependencies=new e.Map(e.getEntries(r.renamedDependencies)));var m,g,_=e.getNewLineCharacter(a),h={getSourceFile:function(t){return t===e.normalizePath(d)?f:void 0},writeFile:function(t,r){e.fileExtensionIs(t,".map")?(e.Debug.assertEqual(g,void 0,"Unexpected multiple source map outputs, file:",t),g=r):(e.Debug.assertEqual(m,void 0,"Unexpected multiple outputs, file:",t),m=r)},getDefaultLibFileName:function(){return"lib.d.ts"},useCaseSensitiveFileNames:function(){return!1},getCanonicalFileName:function(e){return e},getCurrentDirectory:function(){return""},getNewLine:function(){return _},fileExists:function(e){return e===d},readFile:function(){return""},directoryExists:function(){return!0},getDirectories:function(){return[]}},y=e.createProgram([d],a,h);return r.reportDiagnostics&&(e.addRange(i,y.getSyntacticDiagnostics(f)),e.addRange(i,y.getOptionsDiagnostics())),y.emit(void 0,void 0,void 0,void 0,r.transformers),void 0===m?e.Debug.fail("Output generation failed"):{outputText:m,diagnostics:i,sourceMapText:g}}var r;function n(t,n){r=r||e.filter(e.optionDeclarations,(function(t){return"object"==typeof t.type&&!e.forEachEntry(t.type,(function(e){return"number"!=typeof e}))})),t=e.cloneCompilerOptions(t);for(var i=function(r){if(!e.hasProperty(t,r.name))return"continue";var i=t[r.name];e.isString(i)?t[r.name]=e.parseCustomTypeOption(r,i,n):e.forEachEntry(r.type,(function(e){return e===i}))||n.push(e.createCompilerDiagnosticForInvalidCustomType(r))},a=0,o=r;a<o.length;a++){i(o[a])}return t}e.transpileModule=t,e.transpile=function(r,n,i,a,o){var s=t(r,{compilerOptions:n,fileName:i,reportDiagnostics:!!a,moduleName:o});return e.addRange(a,s.diagnostics),s.outputText},e.fixupCompilerOptions=n}(d||(d={})),function(e){!function(t){!function(e){e[e.FormatDocument=0]="FormatDocument",e[e.FormatSelection=1]="FormatSelection",e[e.FormatOnEnter=2]="FormatOnEnter",e[e.FormatOnSemicolon=3]="FormatOnSemicolon",e[e.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",e[e.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace"}(t.FormattingRequestKind||(t.FormattingRequestKind={}));var r=function(){function t(e,t,r){this.sourceFile=e,this.formattingRequestKind=t,this.options=r}return t.prototype.updateContext=function(t,r,n,i,a){this.currentTokenSpan=e.Debug.checkDefined(t),this.currentTokenParent=e.Debug.checkDefined(r),this.nextTokenSpan=e.Debug.checkDefined(n),this.nextTokenParent=e.Debug.checkDefined(i),this.contextNode=e.Debug.checkDefined(a),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0},t.prototype.ContextNodeAllOnSameLine=function(){return void 0===this.contextNodeAllOnSameLine&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine},t.prototype.NextNodeAllOnSameLine=function(){return void 0===this.nextNodeAllOnSameLine&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine},t.prototype.TokensAreOnSameLine=function(){if(void 0===this.tokensAreOnSameLine){var e=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,t=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=e===t}return this.tokensAreOnSameLine},t.prototype.ContextNodeBlockIsOnOneLine=function(){return void 0===this.contextNodeBlockIsOnOneLine&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine},t.prototype.NextNodeBlockIsOnOneLine=function(){return void 0===this.nextNodeBlockIsOnOneLine&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine},t.prototype.NodeIsOnOneLine=function(e){return this.sourceFile.getLineAndCharacterOfPosition(e.getStart(this.sourceFile)).line===this.sourceFile.getLineAndCharacterOfPosition(e.getEnd()).line},t.prototype.BlockIsOnOneLine=function(t){var r=e.findChildOfKind(t,18,this.sourceFile),n=e.findChildOfKind(t,19,this.sourceFile);return!(!r||!n)&&this.sourceFile.getLineAndCharacterOfPosition(r.getEnd()).line===this.sourceFile.getLineAndCharacterOfPosition(n.getStart(this.sourceFile)).line},t}();t.FormattingContext=r}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){var r,n=e.createScanner(99,!1,0),i=e.createScanner(99,!1,1);!function(e){e[e.Scan=0]="Scan",e[e.RescanGreaterThanToken=1]="RescanGreaterThanToken",e[e.RescanSlashToken=2]="RescanSlashToken",e[e.RescanTemplateToken=3]="RescanTemplateToken",e[e.RescanJsxIdentifier=4]="RescanJsxIdentifier",e[e.RescanJsxText=5]="RescanJsxText",e[e.RescanJsxAttributeValue=6]="RescanJsxAttributeValue"}(r||(r={})),t.getFormattingScanner=function(r,a,o,s,c){var l=1===a?i:n;l.setText(r),l.setTextPos(o);var u,d,p,f,m,g=!0,_=c({advance:function(){m=void 0,l.getStartPos()!==o?g=!!d&&4===e.last(d).kind:l.scan();u=void 0,d=void 0;var t=l.getStartPos();for(;t<s;){var r=l.getToken();if(!e.isTrivia(r))break;l.scan();var n={pos:t,end:l.getStartPos(),kind:r};t=l.getStartPos(),u=e.append(u,n)}p=l.getStartPos()},readTokenInfo:function(r){e.Debug.assert(h());var n=function(e){switch(e.kind){case 33:case 70:case 71:case 49:case 48:return!0}return!1}(r)?1:(a=r,13===a.kind?2:function(e){return 16===e.kind||17===e.kind}(r)?3:function(t){if(t.parent)switch(t.parent.kind){case 283:case 278:case 279:case 277:return e.isKeyword(t.kind)||78===t.kind}return!1}(r)?4:function(t){if(e.isJsxText(t)){var r=e.findAncestor(t.parent,(function(t){return e.isJsxElement(t)}));return!!r&&!e.isParenthesizedExpression(r.parent)}return!1}(r)?5:(i=r,i.parent&&e.isJsxAttribute(i.parent)&&i.parent.initializer===i?6:0));var i;var a;if(m&&n===f)return v(m,r);l.getStartPos()!==p&&(e.Debug.assert(void 0!==m),l.setTextPos(p),l.scan());var o=function(t,r){var n=l.getToken();switch(f=0,r){case 1:if(31===n){f=1;var i=l.reScanGreaterToken();return e.Debug.assert(t.kind===i),i}break;case 2:if(43===(a=n)||67===a){f=2;i=l.reScanSlashToken();return e.Debug.assert(t.kind===i),i}break;case 3:if(19===n)return f=3,l.reScanTemplateToken(!1);break;case 4:return f=4,l.scanJsxIdentifier();case 5:return f=5,l.reScanJsxToken();case 6:return f=6,l.reScanJsxAttributeValue();case 0:break;default:e.Debug.assertNever(r)}var a;return n}(r,n),c=t.createTextRangeWithKind(l.getStartPos(),l.getTextPos(),o);d&&(d=void 0);for(;l.getStartPos()<s&&(o=l.scan(),e.isTrivia(o));){var g=t.createTextRangeWithKind(l.getStartPos(),l.getTextPos(),o);if(d||(d=[]),d.push(g),4===o){l.scan();break}}return v(m={leadingTrivia:u,trailingTrivia:d,token:c},r)},readEOFTokenRange:function(){return e.Debug.assert(y()),t.createTextRangeWithKind(l.getStartPos(),l.getTextPos(),1)},isOnToken:h,isOnEOF:y,getCurrentLeadingTrivia:function(){return u},lastTrailingTriviaWasNewLine:function(){return g},skipToEndOf:function(e){l.setTextPos(e.end),p=l.getStartPos(),f=void 0,m=void 0,g=!1,u=void 0,d=void 0},skipToStartOf:function(e){l.setTextPos(e.pos),p=l.getStartPos(),f=void 0,m=void 0,g=!1,u=void 0,d=void 0}});return m=void 0,l.setText(void 0),_;function h(){var t=m?m.token.kind:l.getToken();return(m?m.token.pos:l.getStartPos())<s&&1!==t&&!e.isTrivia(t)}function y(){return 1===(m?m.token.kind:l.getToken())}function v(t,r){return e.isToken(r)&&t.token.kind!==r.kind&&(t.token.kind=r.kind),t}}}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){t.anyContext=e.emptyArray,function(e){e[e.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",e[e.StopProcessingTokenActions=2]="StopProcessingTokenActions",e[e.InsertSpace=4]="InsertSpace",e[e.InsertNewLine=8]="InsertNewLine",e[e.DeleteSpace=16]="DeleteSpace",e[e.DeleteToken=32]="DeleteToken",e[e.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",e[e.StopAction=3]="StopAction",e[e.ModifySpaceAction=28]="ModifySpaceAction",e[e.ModifyTokenAction=96]="ModifyTokenAction"}(t.RuleAction||(t.RuleAction={})),function(e){e[e.None=0]="None",e[e.CanDeleteNewLines=1]="CanDeleteNewLines"}(t.RuleFlags||(t.RuleFlags={}))}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){function r(e,t,r,n,i,o){return void 0===o&&(o=0),{leftTokenRange:a(t),rightTokenRange:a(r),rule:{debugName:e,context:n,action:i,flags:o}}}function n(e){return{tokens:e,isSpecific:!0}}function a(t){return"number"==typeof t?n([t]):e.isArray(t)?n(t):t}function o(t,r,i){void 0===i&&(i=[]);for(var a=[],o=t;o<=r;o++)e.contains(i,o)||a.push(o);return n(a)}function s(e,t){return function(r){return r.options&&r.options[e]===t}}function c(e){return function(t){return t.options&&t.options.hasOwnProperty(e)&&!!t.options[e]}}function l(e){return function(t){return t.options&&t.options.hasOwnProperty(e)&&!t.options[e]}}function u(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!t.options[e]}}function d(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!t.options[e]||t.TokensAreOnSameLine()}}function p(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!!t.options[e]}}function f(e){return 239===e.contextNode.kind}function m(e){return!f(e)}function g(e){switch(e.contextNode.kind){case 218:return 27!==e.contextNode.operatorToken.kind;case 219:case 185:case 226:case 273:case 268:case 173:case 183:case 184:return!0;case 199:case 257:case 263:case 251:case 161:case 294:case 164:case 163:return 62===e.currentTokenSpan.kind||62===e.nextTokenSpan.kind;case 240:case 160:return 101===e.currentTokenSpan.kind||101===e.nextTokenSpan.kind||62===e.currentTokenSpan.kind||62===e.nextTokenSpan.kind;case 241:return 157===e.currentTokenSpan.kind||157===e.nextTokenSpan.kind}return!1}function _(e){return!g(e)}function h(e){return!y(e)}function y(t){var r=t.contextNode.kind;return 164===r||163===r||161===r||251===r||e.isFunctionLikeKind(r)}function v(e){return 219===e.contextNode.kind||185===e.contextNode.kind}function b(e){return e.TokensAreOnSameLine()||D(e)}function k(e){return 197===e.contextNode.kind||191===e.contextNode.kind||function(e){return w(e)&&(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}(e)}function x(e){return D(e)&&!(e.NextNodeAllOnSameLine()||e.NextNodeBlockIsOnOneLine())}function S(e){return w(e)&&!(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}function w(e){return E(e.contextNode)}function D(e){return E(e.nextTokenParent)}function E(e){if(P(e))return!0;switch(e.kind){case 232:case 261:case 201:case 260:return!0}return!1}function T(e){switch(e.contextNode.kind){case 253:case 166:case 165:case 168:case 169:case 170:case 209:case 167:case 210:case 256:return!0}return!1}function C(e){return!T(e)}function A(e){return 253===e.contextNode.kind||209===e.contextNode.kind}function N(e){return P(e.contextNode)}function P(e){switch(e.kind){case 254:case 255:case 223:case 256:case 258:case 178:case 259:case 270:case 271:case 264:case 267:return!0}return!1}function I(e){switch(e.currentTokenParent.kind){case 254:case 255:case 259:case 258:case 290:case 260:case 246:return!0;case 232:var t=e.currentTokenParent.parent;if(!t||210!==t.kind&&209!==t.kind)return!0}return!1}function F(e){switch(e.contextNode.kind){case 236:case 246:case 239:case 240:case 241:case 238:case 249:case 237:case 245:case 290:return!0;default:return!1}}function O(e){return 201===e.contextNode.kind}function R(e){return function(e){return 204===e.contextNode.kind}(e)||function(e){return 205===e.contextNode.kind}(e)}function M(e){return 27!==e.currentTokenSpan.kind}function L(e){return 23!==e.nextTokenSpan.kind}function j(e){return 21!==e.nextTokenSpan.kind}function B(e){return 210===e.contextNode.kind}function z(e){return 196===e.contextNode.kind}function U(e){return e.TokensAreOnSameLine()&&11!==e.contextNode.kind}function q(e){return 11!==e.contextNode.kind}function J(e){return 276!==e.contextNode.kind&&280!==e.contextNode.kind}function V(e){return 286===e.contextNode.kind||285===e.contextNode.kind}function H(e){return 283===e.nextTokenParent.kind}function K(e){return 283===e.contextNode.kind}function W(e){return 277===e.contextNode.kind}function G(e){return!T(e)&&!D(e)}function $(e){return e.TokensAreOnSameLine()&&!!e.contextNode.decorators&&Y(e.currentTokenParent)&&!Y(e.nextTokenParent)}function Y(t){for(;e.isExpressionNode(t);)t=t.parent;return 162===t.kind}function X(e){return 252===e.currentTokenParent.kind&&e.currentTokenParent.getStart(e.sourceFile)===e.currentTokenSpan.pos}function Q(e){return 2!==e.formattingRequestKind}function Z(e){return 259===e.contextNode.kind}function ee(e){return 178===e.contextNode.kind}function te(e){return 171===e.contextNode.kind}function re(e,t){if(29!==e.kind&&31!==e.kind)return!1;switch(t.kind){case 174:case 207:case 257:case 254:case 223:case 255:case 256:case 253:case 209:case 210:case 166:case 165:case 170:case 171:case 204:case 205:case 225:return!0;default:return!1}}function ne(e){return re(e.currentTokenSpan,e.currentTokenParent)||re(e.nextTokenSpan,e.nextTokenParent)}function ie(e){return 207===e.contextNode.kind}function ae(e){return 114===e.currentTokenSpan.kind&&214===e.currentTokenParent.kind}function oe(e){return 221===e.contextNode.kind&&void 0!==e.contextNode.expression}function se(e){return 227===e.contextNode.kind}function ce(e){return!function(e){switch(e.contextNode.kind){case 236:case 239:case 240:case 241:case 237:case 238:return!0;default:return!1}}(e)}function le(t){var r=t.nextTokenSpan.kind,n=t.nextTokenSpan.pos;if(e.isTrivia(r)){var i=t.nextTokenParent===t.currentTokenParent?e.findNextToken(t.currentTokenParent,e.findAncestor(t.currentTokenParent,(function(e){return!e.parent})),t.sourceFile):t.nextTokenParent.getFirstToken(t.sourceFile);if(!i)return!0;r=i.kind,n=i.getStart(t.sourceFile)}return t.sourceFile.getLineAndCharacterOfPosition(t.currentTokenSpan.pos).line===t.sourceFile.getLineAndCharacterOfPosition(n).line?19===r||1===r:231!==r&&26!==r&&(256===t.contextNode.kind||257===t.contextNode.kind?!e.isPropertySignature(t.currentTokenParent)||!!t.currentTokenParent.type||20!==r:e.isPropertyDeclaration(t.currentTokenParent)?!t.currentTokenParent.initializer:239!==t.currentTokenParent.kind&&233!==t.currentTokenParent.kind&&231!==t.currentTokenParent.kind&&22!==r&&20!==r&&39!==r&&40!==r&&43!==r&&13!==r&&27!==r&&220!==r&&15!==r&&14!==r&&24!==r)}function ue(t){return e.positionIsASICandidate(t.currentTokenSpan.end,t.currentTokenParent,t.sourceFile)}t.getAllRules=function(){for(var a=[],w=0;w<=157;w++)1!==w&&a.push(w);function E(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return{tokens:a.filter((function(t){return!e.some((function(e){return e===t}))})),isSpecific:!1}}var P={tokens:a,isSpecific:!1},Y=n(i(i([],a),[3])),re=n(i(i([],a),[1])),de=o(80,157),pe=o(29,77),fe=[101,102,157,127,138],me=i([78],e.typeKeywords),ge=Y,_e=n([78,3,83,84,93,100]),he=n([21,3,90,111,96,91]),ye=[r("IgnoreBeforeComment",P,[2,3],t.anyContext,1),r("IgnoreAfterLineComment",2,P,t.anyContext,1),r("NotSpaceBeforeColon",P,58,[U,_,h],16),r("SpaceAfterColon",58,P,[U,_],4),r("NoSpaceBeforeQuestionMark",P,57,[U,_,h],16),r("SpaceAfterQuestionMarkInConditionalOperator",57,P,[U,v],4),r("NoSpaceAfterQuestionMark",57,P,[U],16),r("NoSpaceBeforeDot",P,[24,28],[U],16),r("NoSpaceAfterDot",[24,28],P,[U],16),r("NoSpaceBetweenImportParenInImportType",100,20,[U,z],16),r("NoSpaceAfterUnaryPrefixOperator",[45,46,54,53],[8,9,78,20,22,18,108,103],[U,_],16),r("NoSpaceAfterUnaryPreincrementOperator",45,[78,20,108,103],[U],16),r("NoSpaceAfterUnaryPredecrementOperator",46,[78,20,108,103],[U],16),r("NoSpaceBeforeUnaryPostincrementOperator",[78,21,23,103],45,[U,ce],16),r("NoSpaceBeforeUnaryPostdecrementOperator",[78,21,23,103],46,[U,ce],16),r("SpaceAfterPostincrementWhenFollowedByAdd",45,39,[U,g],4),r("SpaceAfterAddWhenFollowedByUnaryPlus",39,39,[U,g],4),r("SpaceAfterAddWhenFollowedByPreincrement",39,45,[U,g],4),r("SpaceAfterPostdecrementWhenFollowedBySubtract",46,40,[U,g],4),r("SpaceAfterSubtractWhenFollowedByUnaryMinus",40,40,[U,g],4),r("SpaceAfterSubtractWhenFollowedByPredecrement",40,46,[U,g],4),r("NoSpaceAfterCloseBrace",19,[27,26],[U],16),r("NewLineBeforeCloseBraceInBlockContext",Y,19,[S],8),r("SpaceAfterCloseBrace",19,E(21),[U,I],4),r("SpaceBetweenCloseBraceAndElse",19,91,[U],4),r("SpaceBetweenCloseBraceAndWhile",19,115,[U],4),r("NoSpaceBetweenEmptyBraceBrackets",18,19,[U,O],16),r("SpaceAfterConditionalClosingParen",21,22,[F],4),r("NoSpaceBetweenFunctionKeywordAndStar",98,41,[A],16),r("SpaceAfterStarInGeneratorDeclaration",41,78,[A],4),r("SpaceAfterFunctionInFuncDecl",98,P,[T],4),r("NewLineAfterOpenBraceInBlockContext",18,P,[S],8),r("SpaceAfterGetSetInMember",[135,147],78,[T],4),r("NoSpaceBetweenYieldKeywordAndStar",125,41,[U,oe],16),r("SpaceBetweenYieldOrYieldStarAndOperand",[125,41],P,[U,oe],4),r("NoSpaceBetweenReturnAndSemicolon",105,26,[U],16),r("SpaceAfterCertainKeywords",[113,109,103,89,105,112,131],P,[U],4),r("SpaceAfterLetConstInVariableDeclaration",[119,85],P,[U,X],4),r("NoSpaceBeforeOpenParenInFuncCall",P,20,[U,R,M],16),r("SpaceBeforeBinaryKeywordOperator",P,fe,[U,g],4),r("SpaceAfterBinaryKeywordOperator",fe,P,[U,g],4),r("SpaceAfterVoidOperator",114,P,[U,ae],4),r("SpaceBetweenAsyncAndOpenParen",130,20,[B,U],4),r("SpaceBetweenAsyncAndFunctionKeyword",130,[98,78],[U],4),r("NoSpaceBetweenTagAndTemplateString",[78,21],[14,15],[U],16),r("SpaceBeforeJsxAttribute",P,78,[H,U],4),r("SpaceBeforeSlashInJsxOpeningElement",P,43,[W,U],4),r("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",43,31,[W,U],16),r("NoSpaceBeforeEqualInJsxAttribute",P,62,[K,U],16),r("NoSpaceAfterEqualInJsxAttribute",62,P,[K,U],16),r("NoSpaceAfterModuleImport",[140,144],20,[U],16),r("SpaceAfterCertainTypeScriptKeywords",[126,83,84,134,88,92,93,94,135,117,100,118,140,141,121,123,122,143,147,124,150,154,139,136],P,[U],4),r("SpaceBeforeCertainTypeScriptKeywords",P,[94,117,154],[U],4),r("SpaceAfterModuleName",10,18,[Z],4),r("SpaceBeforeArrow",P,38,[U],4),r("SpaceAfterArrow",38,P,[U],4),r("NoSpaceAfterEllipsis",25,78,[U],16),r("NoSpaceAfterOptionalParameters",57,[21,27],[U,_],16),r("NoSpaceBetweenEmptyInterfaceBraceBrackets",18,19,[U,ee],16),r("NoSpaceBeforeOpenAngularBracket",me,29,[U,ne],16),r("NoSpaceBetweenCloseParenAndAngularBracket",21,29,[U,ne],16),r("NoSpaceAfterOpenAngularBracket",29,P,[U,ne],16),r("NoSpaceBeforeCloseAngularBracket",P,31,[U,ne],16),r("NoSpaceAfterCloseAngularBracket",31,[20,22,31,27],[U,ne,C],16),r("SpaceBeforeAt",[21,78],59,[U],4),r("NoSpaceAfterAt",59,P,[U],16),r("SpaceAfterDecorator",P,[126,78,93,88,83,84,124,123,121,122,135,147,22,41],[$],4),r("NoSpaceBeforeNonNullAssertionOperator",P,53,[U,se],16),r("NoSpaceAfterNewKeywordOnConstructorSignature",103,20,[U,te],16),r("SpaceLessThanAndNonJSXTypeAnnotation",29,29,[U],4)],ve=[r("SpaceAfterConstructor",133,20,[c("insertSpaceAfterConstructor"),U],4),r("NoSpaceAfterConstructor",133,20,[u("insertSpaceAfterConstructor"),U],16),r("SpaceAfterComma",27,P,[c("insertSpaceAfterCommaDelimiter"),U,J,L,j],4),r("NoSpaceAfterComma",27,P,[u("insertSpaceAfterCommaDelimiter"),U,J],16),r("SpaceAfterAnonymousFunctionKeyword",[98,41],20,[c("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),T],4),r("NoSpaceAfterAnonymousFunctionKeyword",[98,41],20,[u("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),T],16),r("SpaceAfterKeywordInControl",de,20,[c("insertSpaceAfterKeywordsInControlFlowStatements"),F],4),r("NoSpaceAfterKeywordInControl",de,20,[u("insertSpaceAfterKeywordsInControlFlowStatements"),F],16),r("SpaceAfterOpenParen",20,P,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],4),r("SpaceBeforeCloseParen",P,21,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],4),r("SpaceBetweenOpenParens",20,20,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],4),r("NoSpaceBetweenParens",20,21,[U],16),r("NoSpaceAfterOpenParen",20,P,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],16),r("NoSpaceBeforeCloseParen",P,21,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],16),r("SpaceAfterOpenBracket",22,P,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],4),r("SpaceBeforeCloseBracket",P,23,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],4),r("NoSpaceBetweenBrackets",22,23,[U],16),r("NoSpaceAfterOpenBracket",22,P,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],16),r("NoSpaceBeforeCloseBracket",P,23,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],16),r("SpaceAfterOpenBrace",18,P,[p("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),k],4),r("SpaceBeforeCloseBrace",P,19,[p("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),k],4),r("NoSpaceBetweenEmptyBraceBrackets",18,19,[U,O],16),r("NoSpaceAfterOpenBrace",18,P,[l("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),U],16),r("NoSpaceBeforeCloseBrace",P,19,[l("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),U],16),r("SpaceBetweenEmptyBraceBrackets",18,19,[c("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),r("NoSpaceBetweenEmptyBraceBrackets",18,19,[l("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),U],16),r("SpaceAfterTemplateHeadAndMiddle",[15,16],P,[c("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),q],4,1),r("SpaceBeforeTemplateMiddleAndTail",P,[16,17],[c("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),U],4),r("NoSpaceAfterTemplateHeadAndMiddle",[15,16],P,[u("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),q],16,1),r("NoSpaceBeforeTemplateMiddleAndTail",P,[16,17],[u("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),U],16),r("SpaceAfterOpenBraceInJsxExpression",18,P,[c("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],4),r("SpaceBeforeCloseBraceInJsxExpression",P,19,[c("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],4),r("NoSpaceAfterOpenBraceInJsxExpression",18,P,[u("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],16),r("NoSpaceBeforeCloseBraceInJsxExpression",P,19,[u("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],16),r("SpaceAfterSemicolonInFor",26,P,[c("insertSpaceAfterSemicolonInForStatements"),U,f],4),r("NoSpaceAfterSemicolonInFor",26,P,[u("insertSpaceAfterSemicolonInForStatements"),U,f],16),r("SpaceBeforeBinaryOperator",P,pe,[c("insertSpaceBeforeAndAfterBinaryOperators"),U,g],4),r("SpaceAfterBinaryOperator",pe,P,[c("insertSpaceBeforeAndAfterBinaryOperators"),U,g],4),r("NoSpaceBeforeBinaryOperator",P,pe,[u("insertSpaceBeforeAndAfterBinaryOperators"),U,g],16),r("NoSpaceAfterBinaryOperator",pe,P,[u("insertSpaceBeforeAndAfterBinaryOperators"),U,g],16),r("SpaceBeforeOpenParenInFuncDecl",P,20,[c("insertSpaceBeforeFunctionParenthesis"),U,T],4),r("NoSpaceBeforeOpenParenInFuncDecl",P,20,[u("insertSpaceBeforeFunctionParenthesis"),U,T],16),r("NewLineBeforeOpenBraceInControl",he,18,[c("placeOpenBraceOnNewLineForControlBlocks"),F,x],8,1),r("NewLineBeforeOpenBraceInFunction",ge,18,[c("placeOpenBraceOnNewLineForFunctions"),T,x],8,1),r("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",_e,18,[c("placeOpenBraceOnNewLineForFunctions"),N,x],8,1),r("SpaceAfterTypeAssertion",31,P,[c("insertSpaceAfterTypeAssertion"),U,ie],4),r("NoSpaceAfterTypeAssertion",31,P,[u("insertSpaceAfterTypeAssertion"),U,ie],16),r("SpaceBeforeTypeAnnotation",P,[57,58],[c("insertSpaceBeforeTypeAnnotation"),U,y],4),r("NoSpaceBeforeTypeAnnotation",P,[57,58],[u("insertSpaceBeforeTypeAnnotation"),U,y],16),r("NoOptionalSemicolon",26,re,[s("semicolons",e.SemicolonPreference.Remove),le],32),r("OptionalSemicolon",P,re,[s("semicolons",e.SemicolonPreference.Insert),ue],64)],be=[r("NoSpaceBeforeSemicolon",P,26,[U],16),r("SpaceBeforeOpenBraceInControl",he,18,[d("placeOpenBraceOnNewLineForControlBlocks"),F,Q,b],4,1),r("SpaceBeforeOpenBraceInFunction",ge,18,[d("placeOpenBraceOnNewLineForFunctions"),T,D,Q,b],4,1),r("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",_e,18,[d("placeOpenBraceOnNewLineForFunctions"),N,Q,b],4,1),r("NoSpaceBeforeComma",P,27,[U],16),r("NoSpaceBeforeOpenBracket",E(130,81),22,[U],16),r("NoSpaceAfterCloseBracket",23,P,[U,G],16),r("SpaceAfterSemicolon",26,P,[U],4),r("SpaceBetweenForAndAwaitKeyword",97,131,[U],4),r("SpaceBetweenStatements",[21,90,91,81],P,[U,J,m],4),r("SpaceAfterTryCatchFinally",[111,82,96],18,[U],4)];return i(i(i([],ye),ve),be)}}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){var r;function n(){var n,o;return void 0===r&&(n=t.getAllRules(),o=function(e){for(var t=new Array(l*l),r=new Array(t.length),n=0,i=e;n<i.length;n++)for(var o=i[n],s=o.leftTokenRange.isSpecific&&o.rightTokenRange.isSpecific,c=0,d=o.leftTokenRange.tokens;c<d.length;c++)for(var p=d[c],f=0,m=o.rightTokenRange.tokens;f<m.length;f++){var g=a(p,m[f]),_=t[g];void 0===_&&(_=t[g]=[]),u(_,o.rule,s,r,g)}return t}(n),r=function(t){var r=o[a(t.currentTokenSpan.kind,t.nextTokenSpan.kind)];if(r){for(var n=[],s=0,c=0,l=r;c<l.length;c++){var u=l[c],d=~i(s);u.action&d&&e.every(u.context,(function(e){return e(t)}))&&(n.push(u),s|=u.action)}if(n.length)return n}}),r}function i(e){var t=0;return 1&e&&(t|=28),2&e&&(t|=96),28&e&&(t|=28),96&e&&(t|=96),t}function a(t,r){return e.Debug.assert(t<=157&&r<=157,"Must compute formatting context from tokens"),t*l+r}t.getFormatContext=function(e,t){return{options:e,getRules:n(),host:t}};var o,s=5,c=31,l=158;function u(r,n,i,a,l){var u,d,p,f=3&n.action?i?o.StopRulesSpecific:o.StopRulesAny:n.context!==t.anyContext?i?o.ContextRulesSpecific:o.ContextRulesAny:i?o.NoContextRulesSpecific:o.NoContextRulesAny,m=a[l]||0;r.splice(function(e,t){for(var r=0,n=0;n<=t;n+=s)r+=e&c,e>>=s;return r}(m,f),0,n),a[l]=(p=1+((u=m)>>(d=f)&c),e.Debug.assert((p&c)===p,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),u&~(c<<d)|p<<d)}!function(e){e[e.StopRulesSpecific=0]="StopRulesSpecific",e[e.StopRulesAny=1*s]="StopRulesAny",e[e.ContextRulesSpecific=2*s]="ContextRulesSpecific",e[e.ContextRulesAny=3*s]="ContextRulesAny",e[e.NoContextRulesSpecific=4*s]="NoContextRulesSpecific",e[e.NoContextRulesAny=5*s]="NoContextRulesAny"}(o||(o={}))}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){var r,n,i,a,o;function s(t,r,n){var i=e.findPrecedingToken(t,n);return i&&i.kind===r&&t===i.getEnd()?i:void 0}function c(e){for(var t=e;t&&t.parent&&t.parent.end===e.end&&!l(t.parent,t);)t=t.parent;return t}function l(t,r){switch(t.kind){case 254:case 255:case 256:return e.rangeContainsRange(t.members,r);case 259:var n=t.body;return!!n&&260===n.kind&&e.rangeContainsRange(n.statements,r);case 300:case 232:case 260:return e.rangeContainsRange(t.statements,r);case 290:return e.rangeContainsRange(t.block.statements,r)}return!1}function u(t,r,n,i){return t?d({pos:e.getLineStartPositionForPosition(t.getStart(r),r),end:t.end},r,n,i):[]}function d(r,n,i,a){var o=function(t,r){return function n(i){var a=e.forEachChild(i,(function(n){return e.startEndContainsRange(n.getStart(r),n.end,t)&&n}));if(a){var o=n(a);if(o)return o}return i}(r)}(r,n);return t.getFormattingScanner(n.text,n.languageVariant,function(t,r,n){var i=t.getStart(n);if(i===r.pos&&t.end===r.end)return i;var a=e.findPrecedingToken(r.pos,n);return a?a.end>=r.pos?t.pos:a.end:t.pos}(o,r,n),r.end,(function(s){return p(r,o,t.SmartIndenter.getIndentationForNode(o,r,n,i.options),function(e,r,n){for(var i,a=-1;e;){var o=n.getLineAndCharacterOfPosition(e.getStart(n)).line;if(-1!==a&&o!==a)break;if(t.SmartIndenter.shouldIndentChildNode(r,e,i,n))return r.indentSize;a=o,i=e,e=e.parent}return 0}(o,i.options,n),s,i,a,function(t,r){if(!t.length)return a;var n=t.filter((function(t){return e.rangeOverlapsWithStartEnd(r,t.start,t.start+t.length)})).sort((function(e,t){return e.start-t.start}));if(!n.length)return a;var i=0;return function(t){for(;;){if(i>=n.length)return!1;var r=n[i];if(t.end<=r.start)return!1;if(e.startEndOverlapsWithStartEnd(t.pos,t.end,r.start,r.start+r.length))return!0;i++}};function a(){return!1}}(n.parseDiagnostics,r),n)}))}function p(r,n,i,a,o,s,c,l,u){var d,p,m,g,_=s.options,h=s.getRules,y=s.host,v=new t.FormattingContext(u,c,_),b=-1,k=[];if(o.advance(),o.isOnToken()){var x=u.getLineAndCharacterOfPosition(n.getStart(u)).line,S=x;n.decorators&&(S=u.getLineAndCharacterOfPosition(e.getNonDecoratorTokenPosOfNode(n,u)).line),function n(i,a,s,c,f,h){if(!e.rangeOverlapsWithStartEnd(r,i.getStart(u),i.getEnd()))return;var y=E(i,s,f,h),v=a;e.forEachChild(i,(function(e){S(e,-1,i,y,s,c,!1)}),(function(e){w(e,i,s,y)}));for(;o.isOnToken();){var k=o.readTokenInfo(i);if(k.token.end>i.end)break;11!==i.kind?D(k,i,y,i):o.advance()}if(!i.parent&&o.isOnEOF()){var x=o.readEOFTokenRange();x.end<=i.end&&d&&N(x,u.getLineAndCharacterOfPosition(x.pos).line,i,d,m,p,a,y)}function S(a,s,c,l,d,p,f,m){var h=a.getStart(u),y=u.getLineAndCharacterOfPosition(h).line,k=y;a.decorators&&(k=u.getLineAndCharacterOfPosition(e.getNonDecoratorTokenPosOfNode(a,u)).line);var x=-1;if(f&&e.rangeContainsRange(r,c)&&(x=function(r,n,i,a,o){if(e.rangeOverlapsWithStartEnd(a,r,n)||e.rangeContainsStartEnd(a,r,n)){if(-1!==o)return o}else{var s=u.getLineAndCharacterOfPosition(r).line,c=e.getLineStartPositionForPosition(r,u),l=t.SmartIndenter.findFirstNonWhitespaceColumn(c,r,u,_);if(s!==i||r===l){var d=t.SmartIndenter.getBaseIndentation(_);return d>l?d:l}}return-1}(h,a.end,d,r,s),-1!==x&&(s=x)),!e.rangeOverlapsWithStartEnd(r,a.pos,a.end))return a.end<r.pos&&o.skipToEndOf(a),s;if(0===a.getFullWidth())return s;for(;o.isOnToken();){if((S=o.readTokenInfo(i)).token.end>h){S.token.pos>h&&o.skipToStartOf(a);break}D(S,i,l,i)}if(!o.isOnToken())return s;if(e.isToken(a)){var S=o.readTokenInfo(a);if(11!==a.kind)return e.Debug.assert(S.token.end===a.end,"Token end is child end"),D(S,i,l,a),s}var w=162===a.kind?y:p,E=function(e,r,n,i,a,o){var s=t.SmartIndenter.shouldIndentChildNode(_,e)?_.indentSize:0;return o===r?{indentation:r===g?b:a.getIndentation(),delta:Math.min(_.indentSize,a.getDelta(e)+s)}:-1===n?20===e.kind&&r===g?{indentation:b,delta:a.getDelta(e)}:t.SmartIndenter.childStartsOnTheSameLineWithElseInIfStatement(i,e,r,u)||t.SmartIndenter.childIsUnindentedBranchOfConditionalExpression(i,e,r,u)||t.SmartIndenter.argumentStartsOnSameLineAsPreviousArgument(i,e,r,u)?{indentation:a.getIndentation(),delta:s}:{indentation:a.getIndentation()+a.getDelta(e),delta:s}:{indentation:n,delta:s}}(a,y,x,i,l,w);if(n(a,v,y,k,E.indentation,E.delta),11===a.kind){var T={pos:a.getStart(),end:a.getEnd()};if(T.pos!==T.end){var C=c.getChildren(u),A=C[e.findIndex(C,(function(e){return e.pos===a.pos}))-1];if(A&&u.getLineAndCharacterOfPosition(T.end).line!==u.getLineAndCharacterOfPosition(A.end).line){var N=u.getLineAndCharacterOfPosition(T.pos).line===u.getLineAndCharacterOfPosition(A.end).line;I(T,E.indentation,N,!1,!0)}}}return v=i,m&&200===c.kind&&-1===s&&(s=E.indentation),s}function w(r,n,a,s){e.Debug.assert(e.isNodeArray(r));var c=function(e,t){switch(e.kind){case 167:case 253:case 209:case 166:case 165:case 210:if(e.typeParameters===t)return 29;if(e.parameters===t)return 20;break;case 204:case 205:if(e.typeArguments===t)return 29;if(e.arguments===t)return 20;break;case 174:if(e.typeArguments===t)return 29;break;case 178:return 18}return 0}(n,r),l=s,d=a;if(0!==c)for(;o.isOnToken();){if((y=o.readTokenInfo(n)).token.end>r.pos)break;if(y.token.kind===c){d=u.getLineAndCharacterOfPosition(y.token.pos).line,D(y,n,s,n);var p=void 0;if(-1!==b)p=b;else{var f=e.getLineStartPositionForPosition(y.token.pos,u);p=t.SmartIndenter.findFirstNonWhitespaceColumn(f,y.token.pos,u,_)}l=E(n,a,p,_.indentSize)}else D(y,n,s,n)}for(var m=-1,g=0;g<r.length;g++){m=S(r[g],m,i,l,d,d,!0,0===g)}var h=function(e){switch(e){case 20:return 21;case 29:return 31;case 18:return 19}return 0}(c);if(0!==h&&o.isOnToken()){var y;if(27===(y=o.readTokenInfo(n)).token.kind&&e.isCallLikeExpression(n))d!==u.getLineAndCharacterOfPosition(y.token.pos).line&&(o.advance(),y=o.isOnToken()?o.readTokenInfo(n):void 0);y&&y.token.kind===h&&e.rangeContainsRange(n,y.token)&&D(y,n,l,n,!0)}}function D(t,n,i,a,s){e.Debug.assert(e.rangeContainsRange(n,t.token));var c=o.lastTrailingTriviaWasNewLine(),p=!1;t.leadingTrivia&&C(t.leadingTrivia,n,v,i);var f=0,m=e.rangeContainsRange(r,t.token),_=u.getLineAndCharacterOfPosition(t.token.pos);if(m){var h=l(t.token),y=d;if(f=A(t.token,_,n,v,i),!h)if(0===f){var k=y&&u.getLineAndCharacterOfPosition(y.end).line;p=c&&_.line!==k}else p=1===f}if(t.trailingTrivia&&C(t.trailingTrivia,n,v,i),p){var x=m&&!l(t.token)?i.getIndentationForToken(_.line,t.token.kind,a,!!s):-1,S=!0;if(t.leadingTrivia){var w=i.getIndentationForComment(t.token.kind,x,a);S=T(t.leadingTrivia,w,S,(function(e){return P(e.pos,w,!1)}))}-1!==x&&S&&(P(t.token.pos,x,1===f),g=_.line,b=x)}o.advance(),v=n}}(n,n,x,S,i,a)}if(!o.isOnToken()){var w=t.SmartIndenter.nodeWillIndentChild(_,n,void 0,u,!1)?i+_.indentSize:i,D=o.getCurrentLeadingTrivia();D&&T(D,w,!1,(function(e){return A(e,u.getLineAndCharacterOfPosition(e.pos),n,n,void 0)}))}return!1!==_.trimTrailingWhitespace&&function(){var e=d?d.end:r.pos,t=u.getLineAndCharacterOfPosition(e).line,n=u.getLineAndCharacterOfPosition(r.end).line;F(t,n+1,d)}(),k;function E(r,n,i,a){return{getIndentationForComment:function(e,t,r){switch(e){case 19:case 23:case 21:return i+o(r)}return-1!==t?t:i},getIndentationForToken:function(t,a,s,c){return!c&&function(t,i,a){switch(i){case 18:case 19:case 21:case 91:case 115:case 59:return!1;case 43:case 31:switch(a.kind){case 278:case 279:case 277:case 225:return!1}break;case 22:case 23:if(191!==a.kind)return!1}return n!==t&&!(r.decorators&&i===function(t){if(t.modifiers&&t.modifiers.length)return t.modifiers[0].kind;switch(t.kind){case 254:return 83;case 255:return 84;case 256:return 118;case 253:return 98;case 258:return 258;case 168:return 135;case 169:return 147;case 166:if(t.asteriskToken)return 41;case 164:case 161:var r=e.getNameOfDeclaration(t);if(r)return r.kind}}(r))}(t,a,s)?i+o(s):i},getIndentation:function(){return i},getDelta:o,recomputeIndentation:function(e,n){t.SmartIndenter.shouldIndentChildNode(_,n,r,u)&&(i+=e?_.indentSize:-_.indentSize,a=t.SmartIndenter.shouldIndentChildNode(_,r)?_.indentSize:0)}};function o(e){return t.SmartIndenter.nodeWillIndentChild(_,r,e,u,!0)?a:0}}function T(t,n,i,a){for(var o=0,s=t;o<s.length;o++){var c=s[o],l=e.rangeContainsRange(r,c);switch(c.kind){case 3:l&&I(c,n,!i),i=!1;break;case 2:i&&l&&a(c),i=!1;break;case 4:i=!0}}return i}function C(t,n,i,a){for(var o=0,s=t;o<s.length;o++){var c=s[o];if(e.isComment(c.kind)&&e.rangeContainsRange(r,c))A(c,u.getLineAndCharacterOfPosition(c.pos),n,i,a)}}function A(e,t,n,i,a){var o=0;l(e)||(d?o=N(e,t.line,n,d,m,p,i,a):F(u.getLineAndCharacterOfPosition(r.pos).line,t.line));return d=e,p=n,m=t.line,o}function N(t,r,n,i,a,o,s,c){v.updateContext(i,o,t,n,s);var l=h(v),d=!1!==v.options.trimTrailingWhitespace,p=0;return l?e.forEachRight(l,(function(o){switch(p=function(t,r,n,i,a){var o=a!==n;switch(t.action){case 1:return 0;case 16:if(r.end!==i.pos)return R(r.end,i.pos-r.end),o?2:0;break;case 32:R(r.pos,r.end-r.pos);break;case 8:if(1!==t.flags&&n!==a)return 0;if(1!==a-n)return M(r.end,i.pos-r.end,e.getNewLineOrDefaultFromHost(y,_)),o?0:1;break;case 4:if(1!==t.flags&&n!==a)return 0;if(1!==i.pos-r.end||32!==u.text.charCodeAt(r.end))return M(r.end,i.pos-r.end," "),o?2:0;break;case 64:s=r.end,(c=";")&&k.push(e.createTextChangeFromStartLength(s,0,c))}var s,c;return 0}(o,i,a,t,r),p){case 2:n.getStart(u)===t.pos&&c.recomputeIndentation(!1,s);break;case 1:n.getStart(u)===t.pos&&c.recomputeIndentation(!0,s);break;default:e.Debug.assert(0===p)}d=d&&!(16&o.action)&&1!==o.flags})):d=d&&1!==t.kind,r!==a&&d&&F(a,r,i),p}function P(t,r,n){var i=f(r,_);if(n)M(t,0,i);else{var a=u.getLineAndCharacterOfPosition(t),o=e.getStartPositionOfLine(a.line,u);(r!==function(e,t){for(var r=0,n=0;n<t;n++)9===u.text.charCodeAt(e+n)?r+=_.tabSize-r%_.tabSize:r++;return r}(o,a.character)||function(e,t){return e!==u.text.substr(t,e.length)}(i,o))&&M(o,a.character,i)}}function I(r,n,i,a,o){void 0===a&&(a=!0);var s=u.getLineAndCharacterOfPosition(r.pos).line,c=u.getLineAndCharacterOfPosition(r.end).line;if(s!==c){for(var l=[],d=r.pos,p=s;p<c;p++){var m=e.getEndLinePosition(p,u);l.push({pos:d,end:m}),d=e.getStartPositionOfLine(p+1,u)}if(a&&l.push({pos:d,end:r.end}),0!==l.length){var g=e.getStartPositionOfLine(s,u),h=t.SmartIndenter.findFirstNonWhitespaceCharacterAndColumn(g,l[0].pos,u,_),y=0;i&&(y=1,s++);for(var v=n-h.column,b=y;b<l.length;b++,s++){var k=e.getStartPositionOfLine(s,u),x=0===b?h:t.SmartIndenter.findFirstNonWhitespaceCharacterAndColumn(l[b].pos,l[b].end,u,_);if(o){if(e.isLineBreak(u.text.charCodeAt(e.getStartPositionOfLine(s,u))))continue;v=n-x.column}var S=x.column+v;if(S>0){var w=f(S,_);M(k,x.character,w)}else R(k,x.character)}}}else i||P(r.pos,n,!1)}function F(t,r,n){for(var i=t;i<r;i++){var a=e.getStartPositionOfLine(i,u),o=e.getEndLinePosition(i,u);if(!(n&&(e.isComment(n.kind)||e.isStringOrRegularExpressionOrTemplateLiteral(n.kind))&&n.pos<=o&&n.end>o)){var s=O(a,o);-1!==s&&(e.Debug.assert(s===a||!e.isWhiteSpaceSingleLine(u.text.charCodeAt(s-1))),R(s,o+1-s))}}}function O(t,r){for(var n=r;n>=t&&e.isWhiteSpaceSingleLine(u.text.charCodeAt(n));)n--;return n!==r?n+1:-1}function R(t,r){r&&k.push(e.createTextChangeFromStartLength(t,r,""))}function M(t,r,n){(r||n)&&k.push(e.createTextChangeFromStartLength(t,r,n))}}function f(t,r){if((!i||i.tabSize!==r.tabSize||i.indentSize!==r.indentSize)&&(i={tabSize:r.tabSize,indentSize:r.indentSize},a=o=void 0),r.convertTabsToSpaces){var n=void 0,s=Math.floor(t/r.indentSize),c=t%r.indentSize;return o||(o=[]),void 0===o[s]?(n=e.repeatString(" ",r.indentSize*s),o[s]=n):n=o[s],c?n+e.repeatString(" ",c):n}var l=Math.floor(t/r.tabSize),u=t-l*r.tabSize,d=void 0;return a||(a=[]),void 0===a[l]?a[l]=d=e.repeatString("\t",l):d=a[l],u?d+e.repeatString(" ",u):d}t.createTextRangeWithKind=function(t,r,n){var i={pos:t,end:r,kind:n};return e.Debug.isDebugging&&Object.defineProperty(i,"__debugKind",{get:function(){return e.Debug.formatSyntaxKind(n)}}),i},function(e){e[e.Unknown=-1]="Unknown"}(r||(r={})),t.formatOnEnter=function(t,r,n){var i=r.getLineAndCharacterOfPosition(t).line;if(0===i)return[];for(var a=e.getEndLinePosition(i,r);e.isWhiteSpaceSingleLine(r.text.charCodeAt(a));)a--;return e.isLineBreak(r.text.charCodeAt(a))&&a--,d({pos:e.getStartPositionOfLine(i-1,r),end:a+1},r,n,2)},t.formatOnSemicolon=function(e,t,r){return u(c(s(e,26,t)),t,r,3)},t.formatOnOpeningCurly=function(t,r,n){var i=s(t,18,r);if(!i)return[];var a=c(i.parent);return d({pos:e.getLineStartPositionForPosition(a.getStart(r),r),end:t},r,n,4)},t.formatOnClosingCurly=function(e,t,r){return u(c(s(e,19,t)),t,r,5)},t.formatDocument=function(e,t){return d({pos:0,end:e.text.length},e,t,0)},t.formatSelection=function(t,r,n,i){return d({pos:e.getLineStartPositionForPosition(t,n),end:r},n,i,1)},t.formatNodeGivenIndentation=function(e,r,n,i,a,o){var s={pos:0,end:r.text.length};return t.getFormattingScanner(r.text,n,s.pos,s.end,(function(t){return p(s,e,i,a,t,o,1,(function(e){return!1}),r)}))},function(e){e[e.None=0]="None",e[e.LineAdded=1]="LineAdded",e[e.LineRemoved=2]="LineRemoved"}(n||(n={})),t.getRangeOfEnclosingComment=function(t,r,n,i){void 0===i&&(i=e.getTokenAtPosition(t,r));var a=e.findAncestor(i,e.isJSDoc);if(a&&(i=a.parent),!(i.getStart(t)<=r&&r<i.getEnd())){var o=(n=null===n?void 0:void 0===n?e.findPrecedingToken(r,t):n)&&e.getTrailingCommentRanges(t.text,n.end),s=e.getLeadingCommentRangesOfNode(i,t),c=e.concatenate(o,s);return c&&e.find(c,(function(n){return e.rangeContainsPositionExclusive(n,r)||r===n.end&&(2===n.kind||r===t.getFullWidth())}))}},t.getIndentationString=f}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){!function(r){var n,i;function a(e){return e.baseIndentSize||0}function o(e,t,r,n,i,o,l){for(var m,g=e.parent;g;){var h=!0;if(r){var y=e.getStart(i);h=y<r.pos||y>r.end}var v=s(g,e,i),b=v.line===t.line||p(g,e,t.line,i);if(h){var k=null===(m=f(e,i))||void 0===m?void 0:m[0],S=_(e,i,l,!!k&&u(k,i).line>v.line);if(-1!==S)return S+n;if(-1!==(S=c(e,g,t,b,i,l)))return S+n}x(l,g,e,i,o)&&!b&&(n+=l.indentSize);var w=d(g,e,t.line,i);g=(e=g).parent,t=w?i.getLineAndCharacterOfPosition(e.getStart(i)):v}return n+a(l)}function s(e,t,r){var n=f(t,r),i=n?n.pos:e.getStart(r);return r.getLineAndCharacterOfPosition(i)}function c(t,r,n,i,a,o){return(e.isDeclaration(t)||e.isStatementButNotDeclaration(t))&&(300===r.kind||!i)?y(n,a,o):-1}function l(t,r,n,i){var a=e.findNextToken(t,r,i);return a?18===a.kind?1:19===a.kind&&n===u(a,i).line?2:0:0}function u(e,t){return t.getLineAndCharacterOfPosition(e.getStart(t))}function d(t,r,n,i){if(!e.isCallExpression(t)||!e.contains(t.arguments,r))return!1;var a=t.expression.getEnd();return e.getLineAndCharacterOfPosition(i,a).line===n}function p(t,r,n,i){if(236===t.kind&&t.elseStatement===r){var a=e.findChildOfKind(t,91,i);return e.Debug.assert(void 0!==a),u(a,i).line===n}return!1}function f(e,t){return e.parent&&m(e.getStart(t),e.getEnd(),e.parent,t)}function m(t,r,n,i){switch(n.kind){case 174:return a(n.typeArguments);case 201:return a(n.properties);case 200:case 267:case 271:case 197:case 198:return a(n.elements);case 178:return a(n.members);case 253:case 209:case 210:case 166:case 165:case 170:case 167:case 176:case 171:return a(n.typeParameters)||a(n.parameters);case 254:case 223:case 255:case 256:case 257:case 333:return a(n.typeParameters);case 205:case 204:return a(n.typeArguments)||a(n.arguments);case 252:return a(n.declarations)}function a(a){return a&&e.rangeContainsStartEnd(function(e,t,r){for(var n=e.getChildren(r),i=1;i<n.length-1;i++)if(n[i].pos===t.pos&&n[i].end===t.end)return{pos:n[i-1].end,end:n[i+1].getStart(r)};return t}(n,a,i),t,r)?a:void 0}}function g(e,t,r){return e?y(t.getLineAndCharacterOfPosition(e.pos),t,r):-1}function _(e,t,r,n){if(e.parent&&252===e.parent.kind)return-1;var i=f(e,t);if(i){var a=i.indexOf(e);if(-1!==a){var o=h(i,a,t,r);if(-1!==o)return o}return g(i,t,r)+(n?r.indentSize:0)}return-1}function h(t,r,n,i){e.Debug.assert(r>=0&&r<t.length);for(var a=u(t[r],n),o=r-1;o>=0;o--)if(27!==t[o].kind){if(n.getLineAndCharacterOfPosition(t[o].end).line!==a.line)return y(a,n,i);a=u(t[o],n)}return-1}function y(e,t,r){var n=t.getPositionOfLineAndCharacter(e.line,0);return b(n,n+e.character,t,r)}function v(t,r,n,i){for(var a=0,o=0,s=t;s<r;s++){var c=n.text.charCodeAt(s);if(!e.isWhiteSpaceSingleLine(c))break;9===c?o+=i.tabSize+o%i.tabSize:o++,a++}return{column:o,character:a}}function b(e,t,r,n){return v(e,t,r,n).column}function k(e,t,r,n,i){var a=r?r.kind:0;switch(t.kind){case 235:case 254:case 223:case 255:case 256:case 258:case 257:case 200:case 232:case 260:case 201:case 178:case 191:case 180:case 261:case 288:case 287:case 208:case 202:case 204:case 205:case 234:case 269:case 244:case 219:case 198:case 197:case 278:case 281:case 277:case 286:case 165:case 170:case 171:case 161:case 175:case 176:case 187:case 206:case 215:case 271:case 267:case 273:case 268:case 164:return!0;case 251:case 291:case 218:if(!e.indentMultiLineObjectLiteralBeginningOnBlankLine&&n&&201===a)return S(n,r);if(218!==t.kind)return!0;break;case 237:case 238:case 240:case 241:case 239:case 236:case 253:case 209:case 166:case 167:case 168:case 169:return 232!==a;case 210:return n&&208===a?S(n,r):232!==a;case 270:return 271!==a;case 264:return 265!==a||!!r.namedBindings&&267!==r.namedBindings.kind;case 276:return 279!==a;case 280:return 282!==a;case 184:case 183:if(178===a||180===a)return!1}return i}function x(e,t,r,n,i){return void 0===i&&(i=!1),k(e,t,r,n,!1)&&!(i&&r&&function(e,t){switch(e){case 244:case 248:case 242:case 243:return 232!==t.kind;default:return!1}}(r.kind,t))}function S(t,r){var n=e.skipTrivia(t.text,r.pos);return t.getLineAndCharacterOfPosition(n).line===t.getLineAndCharacterOfPosition(r.end).line}!function(e){e[e.Unknown=-1]="Unknown"}(n||(n={})),r.getIndentation=function(r,n,i,s){if(void 0===s&&(s=!1),r>n.text.length)return a(i);if(i.indentStyle===e.IndentStyle.None)return 0;var c=e.findPrecedingToken(r,n,void 0,!0),d=t.getRangeOfEnclosingComment(n,r,c||null);if(d&&3===d.kind)return function(t,r,n,i){var a=e.getLineAndCharacterOfPosition(t,r).line-1,o=e.getLineAndCharacterOfPosition(t,i.pos).line;if(e.Debug.assert(o>=0),a<=o)return b(e.getStartPositionOfLine(o,t),r,t,n);var s=e.getStartPositionOfLine(a,t),c=v(s,r,t,n),l=c.column,u=c.character;if(0===l)return l;var d=t.text.charCodeAt(s+u);return 42===d?l-1:l}(n,r,i,d);if(!c)return a(i);if(e.isStringOrRegularExpressionOrTemplateLiteral(c.kind)&&c.getStart(n)<=r&&r<c.end)return 0;var p=n.getLineAndCharacterOfPosition(r).line;if(i.indentStyle===e.IndentStyle.Block)return function(t,r,n){var i=r;for(;i>0;){var a=t.text.charCodeAt(i);if(!e.isWhiteSpaceLike(a))break;i--}var o=e.getLineStartPositionForPosition(i,t);return b(o,i,t,n)}(n,r,i);if(27===c.kind&&218!==c.parent.kind){var f=function(t,r,n){var i=e.findListItemInfo(t);return i&&i.listItemIndex>0?h(i.list.getChildren(),i.listItemIndex-1,r,n):-1}(c,n,i);if(-1!==f)return f}var y=function(e,t,r){return t&&m(e,e,t,r)}(r,c.parent,n);return y&&!e.rangeContainsRange(y,c)?g(y,n,i)+i.indentSize:function(t,r,n,i,s,c){var d,p=n;for(;p;){if(e.positionBelongsToNode(p,r,t)&&x(c,p,d,t,!0)){var f=u(p,t),m=l(n,p,i,t);return o(p,f,void 0,0!==m?s&&2===m?c.indentSize:0:i!==f.line?c.indentSize:0,t,!0,c)}var g=_(p,t,c,!0);if(-1!==g)return g;d=p,p=p.parent}return a(c)}(n,r,c,p,s,i)},r.getIndentationForNode=function(e,t,r,n){var i=r.getLineAndCharacterOfPosition(e.getStart(r));return o(e,i,t,0,r,!1,n)},r.getBaseIndentation=a,function(e){e[e.Unknown=0]="Unknown",e[e.OpenBrace=1]="OpenBrace",e[e.CloseBrace=2]="CloseBrace"}(i||(i={})),r.isArgumentAndStartLineOverlapsExpressionBeingCalled=d,r.childStartsOnTheSameLineWithElseInIfStatement=p,r.childIsUnindentedBranchOfConditionalExpression=function(t,r,n,i){if(e.isConditionalExpression(t)&&(r===t.whenTrue||r===t.whenFalse)){var a=e.getLineAndCharacterOfPosition(i,t.condition.end).line;if(r===t.whenTrue)return n===a;var o=u(t.whenTrue,i).line,s=e.getLineAndCharacterOfPosition(i,t.whenTrue.end).line;return a===o&&s===n}return!1},r.argumentStartsOnSameLineAsPreviousArgument=function(t,r,n,i){if(e.isCallOrNewExpression(t)){if(!t.arguments)return!1;var a=e.find(t.arguments,(function(e){return e.pos===r.pos}));if(!a)return!1;var o=t.arguments.indexOf(a);if(0===o)return!1;var s=t.arguments[o-1];if(n===e.getLineAndCharacterOfPosition(i,s.getEnd()).line)return!0}return!1},r.getContainingList=f,r.findFirstNonWhitespaceCharacterAndColumn=v,r.findFirstNonWhitespaceColumn=b,r.nodeWillIndentChild=k,r.shouldIndentChildNode=x}(t.SmartIndenter||(t.SmartIndenter={}))}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){function r(t){var r=t.__pos;return e.Debug.assert("number"==typeof r),r}function n(t,r){e.Debug.assert("number"==typeof r),t.__pos=r}function o(t){var r=t.__end;return e.Debug.assert("number"==typeof r),r}function s(t,r){e.Debug.assert("number"==typeof r),t.__end=r}var c,l;function u(t,r){return e.skipTrivia(t,r,!1,!0)}!function(e){e[e.Exclude=0]="Exclude",e[e.IncludeAll=1]="IncludeAll",e[e.JSDoc=2]="JSDoc",e[e.StartLine=3]="StartLine"}(c=t.LeadingTriviaOption||(t.LeadingTriviaOption={})),function(e){e[e.Exclude=0]="Exclude",e[e.ExcludeWhitespace=1]="ExcludeWhitespace",e[e.Include=2]="Include"}(l=t.TrailingTriviaOption||(t.TrailingTriviaOption={}));var d,p={leadingTriviaOption:c.Exclude,trailingTriviaOption:l.Exclude};function f(e,t,r,n){return{pos:m(e,t,n),end:g(e,r,n)}}function m(t,r,n){var i=n.leadingTriviaOption;if(i===c.Exclude)return r.getStart(t);if(i===c.StartLine)return e.getLineStartPositionForPosition(r.getStart(t),t);if(i===c.JSDoc){var a=e.getJSDocCommentRanges(r,t.text);if(null==a?void 0:a.length)return e.getLineStartPositionForPosition(a[0].pos,t)}var o=r.getFullStart(),s=r.getStart(t);if(o===s)return s;var l=e.getLineStartPositionForPosition(o,t);if(e.getLineStartPositionForPosition(s,t)===l)return i===c.IncludeAll?o:s;var d=o>0?1:0,p=e.getStartPositionOfLine(e.getLineOfLocalPosition(t,l)+d,t);return p=u(t.text,p),e.getStartPositionOfLine(e.getLineOfLocalPosition(t,p),t)}function g(t,r,n){var i,a=r.end,o=n.trailingTriviaOption;if(o===l.Exclude)return a;if(o===l.ExcludeWhitespace){var s=e.concatenate(e.getTrailingCommentRanges(t.text,a),e.getLeadingCommentRanges(t.text,a)),c=null===(i=null==s?void 0:s[s.length-1])||void 0===i?void 0:i.end;return c||a}var u=e.skipTrivia(t.text,a,!0);return u===a||o!==l.Include&&!e.isLineBreak(t.text.charCodeAt(u-1))?a:u}function _(e,t){return!!t&&!!e.parent&&(27===t.kind||26===t.kind&&201===e.parent.kind)}!function(e){e[e.Remove=0]="Remove",e[e.ReplaceWithSingleNode=1]="ReplaceWithSingleNode",e[e.ReplaceWithMultipleNodes=2]="ReplaceWithMultipleNodes",e[e.Text=3]="Text"}(d||(d={})),t.isThisTypeAnnotatable=function(t){return e.isFunctionExpression(t)||e.isFunctionDeclaration(t)};var h,y,v=function(){function t(t,r){this.newLineCharacter=t,this.formatContext=r,this.changes=[],this.newFiles=[],this.classesWithNodesInsertedAtStart=new e.Map,this.deletedNodes=[]}return t.fromContext=function(r){return new t(e.getNewLineOrDefaultFromHost(r.host,r.formatContext.options),r.formatContext)},t.with=function(e,r){var n=t.fromContext(e);return r(n),n.getChanges()},t.prototype.pushRaw=function(t,r){e.Debug.assertEqual(t.fileName,r.fileName);for(var n=0,i=r.textChanges;n<i.length;n++){var a=i[n];this.changes.push({kind:d.Text,sourceFile:t,text:a.newText,range:e.createTextRangeFromSpan(a.span)})}},t.prototype.deleteRange=function(e,t){this.changes.push({kind:d.Remove,sourceFile:e,range:t})},t.prototype.delete=function(e,t){this.deletedNodes.push({sourceFile:e,node:t})},t.prototype.deleteNode=function(e,t,r){void 0===r&&(r={leadingTriviaOption:c.IncludeAll}),this.deleteRange(e,f(e,t,t,r))},t.prototype.deleteModifier=function(t,r){this.deleteRange(t,{pos:r.getStart(t),end:e.skipTrivia(t.text,r.end,!0)})},t.prototype.deleteNodeRange=function(e,t,r,n){void 0===n&&(n={leadingTriviaOption:c.IncludeAll});var i=m(e,t,n),a=g(e,r,n);this.deleteRange(e,{pos:i,end:a})},t.prototype.deleteNodeRangeExcludingEnd=function(e,t,r,n){void 0===n&&(n={leadingTriviaOption:c.IncludeAll});var i=m(e,t,n),a=void 0===r?e.text.length:m(e,r,n);this.deleteRange(e,{pos:i,end:a})},t.prototype.replaceRange=function(e,t,r,n){void 0===n&&(n={}),this.changes.push({kind:d.ReplaceWithSingleNode,sourceFile:e,range:t,options:n,node:r})},t.prototype.replaceNode=function(e,t,r,n){void 0===n&&(n=p),this.replaceRange(e,f(e,t,t,n),r,n)},t.prototype.replaceNodeRange=function(e,t,r,n,i){void 0===i&&(i=p),this.replaceRange(e,f(e,t,r,i),n,i)},t.prototype.replaceRangeWithNodes=function(e,t,r,n){void 0===n&&(n={}),this.changes.push({kind:d.ReplaceWithMultipleNodes,sourceFile:e,range:t,options:n,nodes:r})},t.prototype.replaceNodeWithNodes=function(e,t,r,n){void 0===n&&(n=p),this.replaceRangeWithNodes(e,f(e,t,t,n),r,n)},t.prototype.replaceNodeWithText=function(e,t,r){this.replaceRangeWithText(e,f(e,t,t,p),r)},t.prototype.replaceNodeRangeWithNodes=function(e,t,r,n,i){void 0===i&&(i=p),this.replaceRangeWithNodes(e,f(e,t,r,i),n,i)},t.prototype.nextCommaToken=function(t,r){var n=e.findNextToken(r,r.parent,t);return n&&27===n.kind?n:void 0},t.prototype.replacePropertyAssignment=function(e,t,r){var n=this.nextCommaToken(e,t)?"":","+this.newLineCharacter;this.replaceNode(e,t,r,{suffix:n})},t.prototype.insertNodeAt=function(t,r,n,i){void 0===i&&(i={}),this.replaceRange(t,e.createRange(r),n,i)},t.prototype.insertNodesAt=function(t,r,n,i){void 0===i&&(i={}),this.replaceRangeWithNodes(t,e.createRange(r),n,i)},t.prototype.insertNodeAtTopOfFile=function(e,t,r){this.insertAtTopOfFile(e,t,r)},t.prototype.insertNodesAtTopOfFile=function(e,t,r){this.insertAtTopOfFile(e,t,r)},t.prototype.insertAtTopOfFile=function(t,r,n){var i=function(t){for(var r,n=0,i=t.statements;n<i.length;n++){var a=i[n];if(!e.isPrologueDirective(a))break;r=a}var o=0,s=t.text;if(r)return o=r.end,g(),o;var c=e.getShebang(s);void 0!==c&&(o=c.length,g());var l,u,d=e.getLeadingCommentRanges(s,o);if(!d)return o;for(var p=0,f=d;p<f.length;p++){var m=f[p];if(3===m.kind){if(e.isPinnedComment(s,m.pos)){l={range:m,pinnedOrTripleSlash:!0};continue}}else if(e.isRecognizedTripleSlashComment(s,m.pos,m.end)){l={range:m,pinnedOrTripleSlash:!0};continue}if(l){if(l.pinnedOrTripleSlash)break;if(t.getLineAndCharacterOfPosition(m.pos).line>=t.getLineAndCharacterOfPosition(l.range.end).line+2)break}if(t.statements.length)if(void 0===u&&(u=t.getLineAndCharacterOfPosition(t.statements[0].getStart()).line),u<t.getLineAndCharacterOfPosition(m.end).line+2)break;l={range:m,pinnedOrTripleSlash:!1}}l&&(o=l.range.end,g());return o;function g(){if(o<s.length){var t=s.charCodeAt(o);e.isLineBreak(t)&&++o<s.length&&13===t&&10===s.charCodeAt(o)&&o++}}}(t),a={prefix:0===i?void 0:this.newLineCharacter,suffix:(e.isLineBreak(t.text.charCodeAt(i))?"":this.newLineCharacter)+(n?this.newLineCharacter:"")};e.isArray(r)?this.insertNodesAt(t,i,r,a):this.insertNodeAt(t,i,r,a)},t.prototype.insertFirstParameter=function(t,r,n){var i=e.firstOrUndefined(r);i?this.insertNodeBefore(t,i,n):this.insertNodeAt(t,r.pos,n)},t.prototype.insertNodeBefore=function(e,t,r,n,i){void 0===n&&(n=!1),void 0===i&&(i={}),this.insertNodeAt(e,m(e,t,i),r,this.getOptionsForInsertNodeBefore(t,r,n))},t.prototype.insertModifierAt=function(t,r,n,i){void 0===i&&(i={}),this.insertNodeAt(t,r,e.factory.createToken(n),i)},t.prototype.insertModifierBefore=function(e,t,r){return this.insertModifierAt(e,r.getStart(e),t,{suffix:" "})},t.prototype.insertCommentBeforeLine=function(t,r,n,i){var a=e.getStartPositionOfLine(r,t),o=e.getFirstNonSpaceCharacterPosition(t.text,a),s=D(t,o),c=e.getTouchingToken(t,s?o:n),l=t.text.slice(a,o),u=(s?"":this.newLineCharacter)+"//"+i+this.newLineCharacter+l;this.insertText(t,c.getStart(t),u)},t.prototype.insertJsdocCommentBefore=function(t,r,n){var i=r.getStart(t);if(r.jsDoc)for(var a=0,o=r.jsDoc;a<o.length;a++){var s=o[a];this.deleteRange(t,{pos:e.getLineStartPositionForPosition(s.getStart(t),t),end:g(t,s,{})})}var c=e.getPrecedingNonSpaceCharacterPosition(t.text,i-1),l=t.text.slice(c,i);this.insertNodeAt(t,i,n,{preserveLeadingWhitespace:!1,suffix:this.newLineCharacter+l})},t.prototype.replaceRangeWithText=function(e,t,r){this.changes.push({kind:d.Text,sourceFile:e,range:t,text:r})},t.prototype.insertText=function(t,r,n){this.replaceRangeWithText(t,e.createRange(r),n)},t.prototype.tryInsertTypeAnnotation=function(t,r,n){var i,a;if(e.isFunctionLike(r)){if(!(a=e.findChildOfKind(r,21,t))){if(!e.isArrowFunction(r))return!1;a=e.first(r.parameters)}}else a=null!==(i=251===r.kind?r.exclamationToken:r.questionToken)&&void 0!==i?i:r.name;return this.insertNodeAt(t,a.end,n,{prefix:": "}),!0},t.prototype.tryInsertThisTypeAnnotation=function(t,r,n){var i=e.findChildOfKind(r,20,t).getStart(t)+1,a=r.parameters.length?", ":"";this.insertNodeAt(t,i,n,{prefix:"this: ",suffix:a})},t.prototype.insertTypeParameters=function(t,r,n){var i=(e.findChildOfKind(r,20,t)||e.first(r.parameters)).getStart(t);this.insertNodesAt(t,i,n,{prefix:"<",suffix:">",joiner:", "})},t.prototype.getOptionsForInsertNodeBefore=function(t,r,n){return e.isStatement(t)||e.isClassElement(t)?{suffix:n?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:e.isVariableDeclaration(t)?{suffix:", "}:e.isParameter(t)?e.isParameter(r)?{suffix:", "}:{}:e.isStringLiteral(t)&&e.isImportDeclaration(t.parent)||e.isNamedImports(t)?{suffix:", "}:e.isImportSpecifier(t)?{suffix:","+(n?this.newLineCharacter:" ")}:e.Debug.failBadSyntaxKind(t)},t.prototype.insertNodeAtConstructorStart=function(t,r,n){var a=e.firstOrUndefined(r.body.statements);a&&r.body.multiLine?this.insertNodeBefore(t,a,n):this.replaceConstructorBody(t,r,i([n],r.body.statements))},t.prototype.insertNodeAtConstructorEnd=function(t,r,n){var a=e.lastOrUndefined(r.body.statements);a&&r.body.multiLine?this.insertNodeAfter(t,a,n):this.replaceConstructorBody(t,r,i(i([],r.body.statements),[n]))},t.prototype.replaceConstructorBody=function(t,r,n){this.replaceNode(t,r.body,e.factory.createBlock(n,!0))},t.prototype.insertNodeAtEndOfScope=function(t,r,n){var i=m(t,r.getLastToken(),{});this.insertNodeAt(t,i,n,{prefix:e.isLineBreak(t.text.charCodeAt(r.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})},t.prototype.insertNodeAtClassStart=function(e,t,r){this.insertNodeAtStartWorker(e,t,r)},t.prototype.insertNodeAtObjectStart=function(e,t,r){this.insertNodeAtStartWorker(e,t,r)},t.prototype.insertNodeAtStartWorker=function(e,t,r){var n,i=null!==(n=this.guessIndentationFromExistingMembers(e,t))&&void 0!==n?n:this.computeIndentationForNewMember(e,t);this.insertNodeAt(e,k(t).pos,r,this.getInsertNodeAtStartInsertOptions(e,t,i))},t.prototype.guessIndentationFromExistingMembers=function(t,r){for(var n,i=r,a=0,o=k(r);a<o.length;a++){var s=o[a];if(e.rangeStartPositionsAreOnSameLine(i,s,t))return;var c=s.getStart(t),l=e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(e.getLineStartPositionForPosition(c,t),c,t,this.formatContext.options);if(void 0===n)n=l;else if(l!==n)return;i=s}return n},t.prototype.computeIndentationForNewMember=function(t,r){var n,i=r.getStart(t);return e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(e.getLineStartPositionForPosition(i,t),i,t,this.formatContext.options)+(null!==(n=this.formatContext.options.indentSize)&&void 0!==n?n:4)},t.prototype.getInsertNodeAtStartInsertOptions=function(t,r,n){var i=0===k(r).length,a=e.addToSeen(this.classesWithNodesInsertedAtStart,e.getNodeId(r),{node:r,sourceFile:t}),o=e.isObjectLiteralExpression(r)&&(!e.isJsonSourceFile(t)||!i);return{indentation:n,prefix:(e.isObjectLiteralExpression(r)&&e.isJsonSourceFile(t)&&i&&!a?",":"")+this.newLineCharacter,suffix:o?",":""}},t.prototype.insertNodeAfterComma=function(e,t,r){var n=this.insertNodeAfterWorker(e,this.nextCommaToken(e,t)||t,r);this.insertNodeAt(e,n,r,this.getInsertNodeAfterOptions(e,t))},t.prototype.insertNodeAfter=function(e,t,r){var n=this.insertNodeAfterWorker(e,t,r);this.insertNodeAt(e,n,r,this.getInsertNodeAfterOptions(e,t))},t.prototype.insertNodeAtEndOfList=function(e,t,r){this.insertNodeAt(e,t.end,r,{prefix:", "})},t.prototype.insertNodesAfter=function(t,r,n){var i=this.insertNodeAfterWorker(t,r,e.first(n));this.insertNodesAt(t,i,n,this.getInsertNodeAfterOptions(t,r))},t.prototype.insertNodeAfterWorker=function(t,r,n){var i,a;return i=r,a=n,((e.isPropertySignature(i)||e.isPropertyDeclaration(i))&&e.isClassOrTypeElement(a)&&159===a.name.kind||e.isStatementButNotDeclaration(i)&&e.isStatementButNotDeclaration(a))&&59!==t.text.charCodeAt(r.end-1)&&this.replaceRange(t,e.createRange(r.end),e.factory.createToken(26)),g(t,r,{})},t.prototype.getInsertNodeAfterOptions=function(t,r){var n=this.getInsertNodeAfterOptionsWorker(r);return a(a({},n),{prefix:r.end===t.end&&e.isStatement(r)?n.prefix?"\n"+n.prefix:"\n":n.prefix})},t.prototype.getInsertNodeAfterOptionsWorker=function(t){switch(t.kind){case 254:case 255:case 259:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 251:case 10:case 78:return{prefix:", "};case 291:return{suffix:","+this.newLineCharacter};case 93:return{prefix:" "};case 161:return{};default:return e.Debug.assert(e.isStatement(t)||e.isClassOrTypeElement(t)),{suffix:this.newLineCharacter}}},t.prototype.insertName=function(t,r,n){if(e.Debug.assert(!r.name),210===r.kind){var i=e.findChildOfKind(r,38,t),a=e.findChildOfKind(r,20,t);a?(this.insertNodesAt(t,a.getStart(t),[e.factory.createToken(98),e.factory.createIdentifier(n)],{joiner:" "}),E(this,t,i)):(this.insertText(t,e.first(r.parameters).getStart(t),"function "+n+"("),this.replaceRange(t,i,e.factory.createToken(21))),232!==r.body.kind&&(this.insertNodesAt(t,r.body.getStart(t),[e.factory.createToken(18),e.factory.createToken(105)],{joiner:" ",suffix:" "}),this.insertNodesAt(t,r.body.end,[e.factory.createToken(26),e.factory.createToken(19)],{joiner:" "}))}else{var o=e.findChildOfKind(r,209===r.kind?98:83,t).end;this.insertNodeAt(t,o,e.factory.createIdentifier(n),{prefix:" "})}},t.prototype.insertExportModifier=function(e,t){this.insertText(e,t.getStart(e),"export ")},t.prototype.insertNodeInListAfter=function(t,r,n,i){if(void 0===i&&(i=e.formatting.SmartIndenter.getContainingList(r,t)),i){var a=e.indexOfNode(i,r);if(!(a<0)){var o=r.getEnd();if(a!==i.length-1){var s=e.getTokenAtPosition(t,r.end);if(s&&_(r,s)){var c=e.getLineAndCharacterOfPosition(t,u(t.text,i[a+1].getFullStart())),l=e.getLineAndCharacterOfPosition(t,s.end),d=void 0,p=void 0;l.line===c.line?(p=s.end,d=function(e){for(var t="",r=0;r<e;r++)t+=" ";return t}(c.character-l.character)):p=e.getStartPositionOfLine(c.line,t);var f=""+e.tokenToString(s.kind)+t.text.substring(s.end,i[a+1].getStart(t));this.replaceRange(t,e.createRange(p,i[a+1].getStart(t)),n,{prefix:d,suffix:f})}}else{var m=r.getStart(t),g=e.getLineStartPositionForPosition(m,t),h=void 0,y=!1;if(1===i.length)h=27;else{var v=e.findPrecedingToken(r.pos,t);h=_(r,v)?v.kind:27,y=e.getLineStartPositionForPosition(i[a-1].getStart(t),t)!==g}if(function(t,r){for(var n=r;n<t.length;){var i=t.charCodeAt(n);if(!e.isWhiteSpaceSingleLine(i))return 47===i;n++}return!1}(t.text,r.end)&&(y=!0),y){this.replaceRange(t,e.createRange(o),e.factory.createToken(h));for(var b=e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(g,m,t,this.formatContext.options),k=e.skipTrivia(t.text,o,!0,!1);k!==o&&e.isLineBreak(t.text.charCodeAt(k-1));)k--;this.replaceRange(t,e.createRange(k),n,{indentation:b,prefix:this.newLineCharacter})}else this.replaceRange(t,e.createRange(o),n,{prefix:e.tokenToString(h)+" "})}}}else e.Debug.fail("node is not a list element")},t.prototype.parenthesizeExpression=function(t,r){this.replaceRange(t,e.rangeOfNode(r),e.factory.createParenthesizedExpression(r))},t.prototype.finishClassesWithNodesInsertedAtStart=function(){var t=this;this.classesWithNodesInsertedAtStart.forEach((function(r){var n=r.node,i=r.sourceFile,a=function(t,r){var n=e.findChildOfKind(t,18,r),i=e.findChildOfKind(t,19,r);return[null==n?void 0:n.end,null==i?void 0:i.end]}(n,i),o=a[0],s=a[1];if(void 0!==o&&void 0!==s){var c=0===k(n).length,l=e.positionsAreOnSameLine(o,s,i);c&&l&&o!==s-1&&t.deleteRange(i,e.createRange(o,s-1)),l&&t.insertText(i,s-1,t.newLineCharacter)}}))},t.prototype.finishDeleteDeclarations=function(){for(var t=this,r=new e.Set,n=function(t,n){i.deletedNodes.some((function(r){return r.sourceFile===t&&e.rangeContainsRangeExclusive(r.node,n)}))||(e.isArray(n)?i.deleteRange(t,e.rangeOfTypeParameters(t,n)):y.deleteDeclaration(i,r,t,n))},i=this,a=0,o=this.deletedNodes;a<o.length;a++){var s=o[a];n(s.sourceFile,s.node)}r.forEach((function(n){var i=n.getSourceFile(),a=e.formatting.SmartIndenter.getContainingList(n,i);if(n===e.last(a)){var o=e.findLastIndex(a,(function(e){return!r.has(e)}),a.length-2);-1!==o&&t.deleteRange(i,{pos:a[o].end,end:b(i,a[o+1])})}}))},t.prototype.getChanges=function(e){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();for(var t=h.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,e),r=0,n=this.newFiles;r<n.length;r++){var i=n[r],a=i.oldFile,o=i.fileName,s=i.statements;t.push(h.newFileChanges(a,o,s,this.newLineCharacter,this.formatContext))}return t},t.prototype.createNewFile=function(e,t,r){this.newFiles.push({oldFile:e,fileName:t,statements:r})},t}();function b(t,r){return e.skipTrivia(t.text,m(t,r,{leadingTriviaOption:c.IncludeAll}),!1,!0)}function k(t){return e.isObjectLiteralExpression(t)?t.properties:t.members}function x(t,r){for(var n=r.length-1;n>=0;n--){var i=r[n],a=i.span,o=i.newText;t=""+t.substring(0,a.start)+o+t.substring(e.textSpanEnd(a))}return t}function S(t){var n=e.visitEachChild(t,S,e.nullTransformationContext,w,S),i=e.nodeIsSynthesized(n)?n:Object.create(n);return e.setTextRangePosEnd(i,r(t),o(t)),i}function w(t,n,i,a,s){var c=e.visitNodes(t,n,i,a,s);if(!c)return c;var l=c===t?e.factory.createNodeArray(c.slice(0)):c;return e.setTextRangePosEnd(l,r(t),o(t)),l}function D(t,r){return!(e.isInComment(t,r)||e.isInString(t,r)||e.isInTemplateString(t,r)||e.isInJSXText(t,r))}function E(e,t,r,n){void 0===n&&(n={leadingTriviaOption:c.IncludeAll});var i=m(t,r,n),a=g(t,r,n);e.deleteRange(t,{pos:i,end:a})}function T(t,r,n,i){var a=e.Debug.checkDefined(e.formatting.SmartIndenter.getContainingList(i,n)),o=e.indexOfNode(a,i);e.Debug.assert(-1!==o),1!==a.length?(e.Debug.assert(!r.has(i),"Deleting a node twice"),r.add(i),t.deleteRange(n,{pos:b(n,i),end:o===a.length-1?g(n,i,{}):b(n,a[o+1])})):E(t,n,i)}t.ChangeTracker=v,t.getNewFileText=function(e,t,r,n){return h.newFileChangesWorker(void 0,t,e,r,n)},function(t){function r(t,r,n,a,o){var s=n.map((function(e){return 4===e?"":i(e,t,a).text})).join(a),c=e.createSourceFile("any file name",s,99,!0,r);return x(s,e.formatting.formatDocument(c,o))+a}function i(t,r,i){var a=function(t){var r=0,i=e.createTextWriter(t),a=function(e,t,i){t&&n(t,r),i(e,t),t&&s(t,r)},o=function(e){e&&n(e,r)},c=function(e){e&&s(e,r)};function l(t,n){if(n||!function(t){return e.skipTrivia(t,0)===t.length}(t)){r=i.getTextPos();for(var a=0;e.isWhiteSpaceLike(t.charCodeAt(t.length-a-1));)a++;r-=a}}function u(e){i.write(e),l(e,!1)}function d(e){i.writeComment(e)}function p(e){i.writeKeyword(e),l(e,!1)}function f(e){i.writeOperator(e),l(e,!1)}function m(e){i.writePunctuation(e),l(e,!1)}function g(e){i.writeTrailingSemicolon(e),l(e,!1)}function _(e){i.writeParameter(e),l(e,!1)}function h(e){i.writeProperty(e),l(e,!1)}function y(e){i.writeSpace(e),l(e,!1)}function v(e){i.writeStringLiteral(e),l(e,!1)}function b(e,t){i.writeSymbol(e,t),l(e,!1)}function k(e){i.writeLine(e)}function x(){i.increaseIndent()}function S(){i.decreaseIndent()}function w(){return i.getText()}function D(e){i.rawWrite(e),l(e,!1)}function E(e){i.writeLiteral(e),l(e,!0)}function T(){return i.getTextPos()}function C(){return i.getLine()}function A(){return i.getColumn()}function N(){return i.getIndent()}function P(){return i.isAtStartOfLine()}function I(){i.clear(),r=0}return{onEmitNode:a,onBeforeEmitNodeArray:function(e){e&&n(e,r)},onAfterEmitNodeArray:function(e){e&&s(e,r)},onBeforeEmitToken:o,onAfterEmitToken:c,write:u,writeComment:d,writeKeyword:p,writeOperator:f,writePunctuation:m,writeTrailingSemicolon:g,writeParameter:_,writeProperty:h,writeSpace:y,writeStringLiteral:v,writeSymbol:b,writeLine:k,increaseIndent:x,decreaseIndent:S,getText:w,rawWrite:D,writeLiteral:E,getTextPos:T,getLine:C,getColumn:A,getIndent:N,isAtStartOfLine:P,hasTrailingComment:function(){return i.hasTrailingComment()},hasTrailingWhitespace:function(){return i.hasTrailingWhitespace()},clear:I}}(i),o="\n"===i?1:0;return e.createPrinter({newLine:o,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},a).writeNode(4,t,r,a),{text:a.getText(),node:S(t)}}t.getTextChangesFromChanges=function(t,r,n,o){return e.mapDefined(e.group(t,(function(e){return e.sourceFile.path})),(function(t){for(var s=t[0].sourceFile,c=e.stableSort(t,(function(e,t){return e.range.pos-t.range.pos||e.range.end-t.range.end})),l=function(t){e.Debug.assert(c[t].range.end<=c[t+1].range.pos,"Changes overlap",(function(){return JSON.stringify(c[t].range)+" and "+JSON.stringify(c[t+1].range)}))},u=0;u<c.length-1;u++)l(u);var p=e.mapDefined(c,(function(t){var c=e.createTextSpanFromRange(t.range),l=function(t,r,n,o,s){if(t.kind===d.Remove)return"";if(t.kind===d.Text)return t.text;var c=t.options,l=void 0===c?{}:c,u=t.range.pos,p=function(t){return function(t,r,n,o,s,c,l){var u=o.indentation,d=o.prefix,p=o.delta,f=i(t,r,s),m=f.node,g=f.text;l&&l(m,g);var _=function(t,r){var n=t.options,i=!n.semicolons||n.semicolons===e.SemicolonPreference.Ignore,o=n.semicolons===e.SemicolonPreference.Remove||i&&!e.probablyUsesSemicolons(r);return a(a({},n),{semicolons:o?e.SemicolonPreference.Remove:e.SemicolonPreference.Ignore})}(c,r),h=void 0!==u?u:e.formatting.SmartIndenter.getIndentation(n,r,_,d===s||e.getLineStartPositionForPosition(n,r)===n);void 0===p&&(p=e.formatting.SmartIndenter.shouldIndentChildNode(_,t)&&_.indentSize||0);var y={text:g,getLineAndCharacterOfPosition:function(t){return e.getLineAndCharacterOfPosition(this,t)}},v=e.formatting.formatNodeGivenIndentation(m,y,r.languageVariant,h,p,a(a({},c),{options:_}));return x(g,v)}(t,r,u,l,n,o,s)},f=t.kind===d.ReplaceWithMultipleNodes?t.nodes.map((function(t){return e.removeSuffix(p(t),n)})).join(t.options.joiner||n):p(t.node),m=l.preserveLeadingWhitespace||void 0!==l.indentation||e.getLineStartPositionForPosition(u,r)===u?f:f.replace(/^\s+/,"");return(l.prefix||"")+m+(!l.suffix||e.endsWith(m,l.suffix)?"":l.suffix)}(t,s,r,n,o);if(c.length!==l.length||!e.stringContainsAt(s.text,l,c.start))return e.createTextChange(c,l)}));return p.length>0?{fileName:s.fileName,textChanges:p}:void 0}))},t.newFileChanges=function(t,n,i,a,o){var s=r(t,e.getScriptKindFromFileName(n),i,a,o);return{fileName:n,textChanges:[e.createTextChange(e.createTextSpan(0,0),s)],isNewFile:!0}},t.newFileChangesWorker=r,t.getNonformattedText=i}(h||(h={})),t.applyChanges=x,t.isValidLocationToAddComment=D,function(t){function r(t,r,n){if(n.parent.name){var i=e.Debug.checkDefined(e.getTokenAtPosition(r,n.pos-1));t.deleteRange(r,{pos:i.getStart(r),end:n.end})}else{E(t,r,e.getAncestor(n,264))}}t.deleteDeclaration=function(t,n,i,a){switch(a.kind){case 161:var o=a.parent;e.isArrowFunction(o)&&1===o.parameters.length&&!e.findChildOfKind(o,20,i)?t.replaceNodeWithText(i,a,"()"):T(t,n,i,a);break;case 264:case 263:E(t,i,a,{leadingTriviaOption:i.imports.length&&a===e.first(i.imports).parent||a===e.find(i.statements,e.isAnyImportSyntax)?c.Exclude:e.hasJSDocNodes(a)?c.JSDoc:c.StartLine});break;case 199:var s=a.parent;198===s.kind&&a!==e.last(s.elements)?E(t,i,a):T(t,n,i,a);break;case 251:!function(t,r,n,i){var a=i.parent;if(290===a.kind)return void t.deleteNodeRange(n,e.findChildOfKind(a,20,n),e.findChildOfKind(a,21,n));if(1!==a.declarations.length)return void T(t,r,n,i);var o=a.parent;switch(o.kind){case 241:case 240:t.replaceNode(n,i,e.factory.createObjectLiteralExpression());break;case 239:E(t,n,a);break;case 234:E(t,n,o,{leadingTriviaOption:e.hasJSDocNodes(o)?c.JSDoc:c.StartLine});break;default:e.Debug.assertNever(o)}}(t,n,i,a);break;case 160:T(t,n,i,a);break;case 268:var u=a.parent;1===u.elements.length?r(t,i,u):T(t,n,i,a);break;case 266:r(t,i,a);break;case 26:E(t,i,a,{trailingTriviaOption:l.Exclude});break;case 98:E(t,i,a,{leadingTriviaOption:c.Exclude});break;case 254:case 255:case 253:E(t,i,a,{leadingTriviaOption:e.hasJSDocNodes(a)?c.JSDoc:c.StartLine});break;default:e.isImportClause(a.parent)&&a.parent.name===a?function(t,r,n){if(n.namedBindings){var i=n.name.getStart(r),a=e.getTokenAtPosition(r,n.name.end);if(a&&27===a.kind){var o=e.skipTrivia(r.text,a.end,!1,!0);t.deleteRange(r,{pos:i,end:o})}else E(t,r,n.name)}else E(t,r,n.parent)}(t,i,a.parent):e.isCallExpression(a.parent)&&e.contains(a.parent.arguments,a)?T(t,n,i,a):E(t,i,a)}}}(y||(y={})),t.deleteNode=E}(e.textChanges||(e.textChanges={}))}(d||(d={})),function(e){!function(t){var r=e.createMultiMap(),n=new e.Map;function o(t){return e.isArray(t)?e.formatStringFromArgs(e.getLocaleSpecificMessage(t[0]),t.slice(1)):e.getLocaleSpecificMessage(t)}function s(e,t,r,n,i,a){return{fixName:e,description:t,changes:r,fixId:n,fixAllDescription:i,commands:a?[a]:void 0}}function l(e,t){return{changes:e,commands:t}}function u(t,r,n){for(var i=0,a=d(t);i<a.length;i++){var o=a[i];e.contains(r,o.code)&&n(o)}}function d(t){var r=t.program,n=t.sourceFile,a=t.cancellationToken;return i(i(i([],r.getSemanticDiagnostics(n,a)),r.getSyntacticDiagnostics(n,a)),e.computeSuggestionDiagnostics(n,r,a))}t.createCodeFixActionWithoutFixAll=function(e,t,r){return s(e,o(r),t,void 0,void 0)},t.createCodeFixAction=function(e,t,r,n,i,a){return s(e,o(r),t,n,o(i),a)},t.registerCodeFix=function(t){for(var i=0,a=t.errorCodes;i<a.length;i++){var o=a[i];r.add(String(o),t)}if(t.fixIds)for(var s=0,c=t.fixIds;s<c.length;s++){var l=c[s];e.Debug.assert(!n.has(l)),n.set(l,t)}},t.getSupportedErrorCodes=function(){return e.arrayFrom(r.keys())},t.getFixes=function(t){var n=d(t),i=r.get(String(t.errorCode));return e.flatMap(i,(function(r){return e.map(r.getCodeActions(t),function(t,r){for(var n=t.errorCodes,i=0,o=0,s=r;o<s.length;o++){var l=s[o];if(e.contains(n,l.code)&&i++,i>1)break}var u=i<2;return function(e){var t=e.fixId,r=e.fixAllDescription,n=c(e,["fixId","fixAllDescription"]);return u?n:a(a({},n),{fixId:t,fixAllDescription:r})}}(r,n))}))},t.getAllFixes=function(t){return n.get(e.cast(t.fixId,e.isString)).getAllCodeActions(t)},t.createCombinedCodeActions=l,t.createFileTextChanges=function(e,t){return{fileName:e,textChanges:t}},t.codeFixAll=function(t,r,n){var i=[];return l(e.textChanges.ChangeTracker.with(t,(function(e){return u(t,r,(function(t){return n(e,t,i)}))})),0===i.length?void 0:i)},t.eachDiagnostic=u}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){var t,r;t=e.refactor||(e.refactor={}),r=new e.Map,t.registerRefactor=function(e,t){r.set(e,t)},t.getApplicableRefactors=function(n){return e.arrayFrom(e.flatMapIterator(r.values(),(function(e){var r;return n.cancellationToken&&n.cancellationToken.isCancellationRequested()||!(null===(r=e.kinds)||void 0===r?void 0:r.some((function(e){return t.refactorKindBeginsWith(e,n.kind)})))?void 0:e.getAvailableActions(n)})))},t.getEditsForRefactor=function(e,t,n){var i=r.get(t);return i&&i.getEditsForAction(e,n)}}(d||(d={})),function(e){!function(t){var r="addConvertToUnknownForNonOverlappingTypes",n=[e.Diagnostics.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n),a=e.Debug.checkDefined(e.findAncestor(i,(function(t){return e.isAsExpression(t)||e.isTypeAssertionExpression(t)})),"Expected to find an assertion expression"),o=e.isAsExpression(a)?e.factory.createAsExpression(a.expression,e.factory.createKeywordTypeNode(153)):e.factory.createTypeAssertion(e.factory.createKeywordTypeNode(153),a.expression);t.replaceNode(r,a.expression,o)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Add_unknown_conversion_for_non_overlapping_types,r,e.Diagnostics.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){t.registerCodeFix({errorCodes:[e.Diagnostics.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,e.Diagnostics.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code],getCodeActions:function(r){var n=r.sourceFile,i=e.textChanges.ChangeTracker.with(r,(function(t){var r=e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([]),void 0);t.insertNodeAtEndOfScope(n,n,r)}));return[t.createCodeFixActionWithoutFixAll("addEmptyExportDeclaration",i,e.Diagnostics.Add_export_to_make_this_file_into_a_module)]}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingAsync",n=[e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code,e.Diagnostics.Type_0_is_not_comparable_to_type_1.code];function i(n,i,a,o){var s=a((function(t){return function(t,r,n,i){if(i&&i.has(e.getNodeId(n)))return;null==i||i.add(e.getNodeId(n));var a=e.factory.updateModifiers(e.getSynthesizedDeepClone(n,!0),e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(256|e.getSyntacticModifierFlags(n))));t.replaceNode(r,n,a)}(t,n.sourceFile,i,o)}));return t.createCodeFixAction(r,s,e.Diagnostics.Add_async_modifier_to_containing_function,r,e.Diagnostics.Add_all_missing_async_modifiers)}function a(t,r){if(r){var n=e.getTokenAtPosition(t,r.start);return e.findAncestor(n,(function(n){return n.getStart(t)<r.start||n.getEnd()>e.textSpanEnd(r)?"quit":(e.isArrowFunction(n)||e.isMethodDeclaration(n)||e.isFunctionExpression(n)||e.isFunctionDeclaration(n))&&e.textSpansEqual(r,e.createTextSpanFromNode(n,t))}))}}t.registerCodeFix({fixIds:[r],errorCodes:n,getCodeActions:function(t){var r=t.sourceFile,n=t.errorCode,o=t.cancellationToken,s=t.program,c=t.span,l=e.find(s.getDiagnosticsProducingTypeChecker().getDiagnostics(r,o),function(t,r){return function(n){var i=n.start,a=n.length,o=n.relatedInformation,s=n.code;return e.isNumber(i)&&e.isNumber(a)&&e.textSpansEqual({start:i,length:a},t)&&s===r&&!!o&&e.some(o,(function(t){return t.code===e.Diagnostics.Did_you_mean_to_mark_this_function_as_async.code}))}}(c,n)),u=a(r,l&&l.relatedInformation&&e.find(l.relatedInformation,(function(t){return t.code===e.Diagnostics.Did_you_mean_to_mark_this_function_as_async.code})));if(u){return[i(t,u,(function(r){return e.textChanges.ChangeTracker.with(t,r)}))]}},getAllCodeActions:function(r){var o=r.sourceFile,s=new e.Set;return t.codeFixAll(r,n,(function(t,n){var c=n.relatedInformation&&e.find(n.relatedInformation,(function(t){return t.code===e.Diagnostics.Did_you_mean_to_mark_this_function_as_async.code})),l=a(o,c);if(l){return i(r,l,(function(e){return e(t),[]}),s)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingAwait",n=e.Diagnostics.Property_0_does_not_exist_on_type_1.code,a=[e.Diagnostics.This_expression_is_not_callable.code,e.Diagnostics.This_expression_is_not_constructable.code],o=i([e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,e.Diagnostics.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,e.Diagnostics.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,e.Diagnostics.Operator_0_cannot_be_applied_to_type_1.code,e.Diagnostics.Operator_0_cannot_be_applied_to_types_1_and_2.code,e.Diagnostics.This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap.code,e.Diagnostics.Type_0_is_not_an_array_type.code,e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type.code,e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators.code,e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,e.Diagnostics.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,e.Diagnostics.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,e.Diagnostics.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,n],a);function s(r,n,i,a,s,c){var l=r.sourceFile,p=r.program,f=r.cancellationToken,m=function(t,r,n,i,a){var s=function(t,r){if(e.isPropertyAccessExpression(t.parent)&&e.isIdentifier(t.parent.expression))return{identifiers:[t.parent.expression],isCompleteFix:!0};if(e.isIdentifier(t))return{identifiers:[t],isCompleteFix:!0};if(e.isBinaryExpression(t)){for(var n=void 0,i=!0,a=0,o=[t.left,t.right];a<o.length;a++){var s=o[a],c=r.getTypeAtLocation(s);if(r.getPromisedTypeOfPromise(c)){if(!e.isIdentifier(s)){i=!1;continue}(n||(n=[])).push(s)}}return n&&{identifiers:n,isCompleteFix:i}}}(t,a);if(!s)return;for(var c,l=s.isCompleteFix,d=function(t){var s=a.getSymbolAtLocation(t);if(!s)return"continue";var d=e.tryCast(s.valueDeclaration,e.isVariableDeclaration),p=d&&e.tryCast(d.name,e.isIdentifier),f=e.getAncestor(d,234);if(!d||!f||d.type||!d.initializer||f.getSourceFile()!==r||e.hasSyntacticModifier(f,1)||!p||!u(d.initializer))return l=!1,"continue";var m=i.getSemanticDiagnostics(r,n),g=e.FindAllReferences.Core.eachSymbolReferenceInFile(p,a,r,(function(n){return t!==n&&!function(t,r,n,i){var a=e.isPropertyAccessExpression(t.parent)?t.parent.name:e.isBinaryExpression(t.parent)?t.parent:t,s=e.find(r,(function(e){return e.start===a.getStart(n)&&e.start+e.length===a.getEnd()}));return s&&e.contains(o,s.code)||1&i.getTypeAtLocation(a).flags}(n,m,r,a)}));if(g)return l=!1,"continue";(c||(c=[])).push({expression:d.initializer,declarationSymbol:s})},p=0,f=s.identifiers;p<f.length;p++){d(f[p])}return c&&{initializers:c,needsSecondPassForFixAll:!l}}(n,l,f,p,a);if(m){var g=s((function(t){e.forEach(m.initializers,(function(e){var r=e.expression;return d(t,i,l,a,r,c)})),c&&m.needsSecondPassForFixAll&&d(t,i,l,a,n,c)}));return t.createCodeFixActionWithoutFixAll("addMissingAwaitToInitializer",g,1===m.initializers.length?[e.Diagnostics.Add_await_to_initializer_for_0,m.initializers[0].declarationSymbol.name]:e.Diagnostics.Add_await_to_initializers)}}function c(n,i,a,o,s,c){var l=s((function(e){return d(e,a,n.sourceFile,o,i,c)}));return t.createCodeFixAction(r,l,e.Diagnostics.Add_await,r,e.Diagnostics.Fix_all_expressions_possibly_missing_await)}function l(t,r,n,i,a){var o=e.getTokenAtPosition(t,n.start),s=e.findAncestor(o,(function(r){return r.getStart(t)<n.start||r.getEnd()>e.textSpanEnd(n)?"quit":e.isExpression(r)&&e.textSpansEqual(n,e.createTextSpanFromNode(r,t))}));return s&&function(t,r,n,i,a){var o=a.getDiagnosticsProducingTypeChecker().getDiagnostics(t,i);return e.some(o,(function(t){var i=t.start,a=t.length,o=t.relatedInformation,s=t.code;return e.isNumber(i)&&e.isNumber(a)&&e.textSpansEqual({start:i,length:a},n)&&s===r&&!!o&&e.some(o,(function(t){return t.code===e.Diagnostics.Did_you_forget_to_use_await.code}))}))}(t,r,n,i,a)&&u(s)?s:void 0}function u(t){return 32768&t.kind||!!e.findAncestor(t,(function(t){return t.parent&&e.isArrowFunction(t.parent)&&t.parent.body===t||e.isBlock(t)&&(253===t.parent.kind||209===t.parent.kind||210===t.parent.kind||166===t.parent.kind)}))}function d(t,r,i,o,s,c){if(e.isBinaryExpression(s))for(var l=0,u=[s.left,s.right];l<u.length;l++){var d=u[l];if(c&&e.isIdentifier(d))if((g=o.getSymbolAtLocation(d))&&c.has(e.getSymbolId(g)))continue;var f=o.getTypeAtLocation(d),m=o.getPromisedTypeOfPromise(f)?e.factory.createAwaitExpression(d):d;t.replaceNode(i,d,m)}else if(r===n&&e.isPropertyAccessExpression(s.parent)){if(c&&e.isIdentifier(s.parent.expression))if((g=o.getSymbolAtLocation(s.parent.expression))&&c.has(e.getSymbolId(g)))return;t.replaceNode(i,s.parent.expression,e.factory.createParenthesizedExpression(e.factory.createAwaitExpression(s.parent.expression))),p(t,s.parent.expression,i)}else if(e.contains(a,r)&&e.isCallOrNewExpression(s.parent)){if(c&&e.isIdentifier(s))if((g=o.getSymbolAtLocation(s))&&c.has(e.getSymbolId(g)))return;t.replaceNode(i,s,e.factory.createParenthesizedExpression(e.factory.createAwaitExpression(s))),p(t,s,i)}else{var g;if(c&&e.isVariableDeclaration(s.parent)&&e.isIdentifier(s.parent.name))if((g=o.getSymbolAtLocation(s.parent.name))&&!e.tryAddToSet(c,e.getSymbolId(g)))return;t.replaceNode(i,s,e.factory.createAwaitExpression(s))}}function p(t,r,n){var i=e.findPrecedingToken(r.pos,n);i&&e.positionIsASICandidate(i.end,i.parent,n)&&t.insertText(n,r.getStart(n),";")}t.registerCodeFix({fixIds:[r],errorCodes:o,getCodeActions:function(t){var r=t.sourceFile,n=t.errorCode,i=l(r,n,t.span,t.cancellationToken,t.program);if(i){var a=t.program.getTypeChecker(),o=function(r){return e.textChanges.ChangeTracker.with(t,r)};return e.compact([s(t,i,n,a,o),c(t,i,n,a,o)])}},getAllCodeActions:function(r){var n=r.sourceFile,i=r.program,a=r.cancellationToken,u=r.program.getTypeChecker(),d=new e.Set;return t.codeFixAll(r,o,(function(e,t){var o=l(n,t.code,t,a,i);if(o){var p=function(t){return t(e),[]};return s(r,o,t.code,u,p,d)||c(r,o,t.code,u,p,d)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingConst",n=[e.Diagnostics.Cannot_find_name_0.code,e.Diagnostics.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];function i(t,r,n,i,s){var c=e.getTokenAtPosition(r,n),l=e.findAncestor(c,(function(t){return e.isForInOrOfStatement(t.parent)?t.parent.initializer===t:!function(e){switch(e.kind){case 78:case 200:case 201:case 291:case 292:return!0;default:return!1}}(t)&&"quit"}));if(l)return a(t,l,r,s);var u=c.parent;if(e.isBinaryExpression(u)&&62===u.operatorToken.kind&&e.isExpressionStatement(u.parent))return a(t,c,r,s);if(e.isArrayLiteralExpression(u)){var d=i.getTypeChecker();if(!e.every(u.elements,(function(t){return function(t,r){var n=e.isIdentifier(t)?t:e.isAssignmentExpression(t,!0)&&e.isIdentifier(t.left)?t.left:void 0;return!!n&&!r.getSymbolAtLocation(n)}(t,d)})))return;return a(t,u,r,s)}var p=e.findAncestor(c,(function(t){return!!e.isExpressionStatement(t.parent)||!function(e){switch(e.kind){case 78:case 218:case 27:return!0;default:return!1}}(t)&&"quit"}));if(p){if(!o(p,i.getTypeChecker()))return;return a(t,p,r,s)}}function a(t,r,n,i){i&&!e.tryAddToSet(i,r)||t.insertModifierBefore(n,85,r)}function o(t,r){return!!e.isBinaryExpression(t)&&(27===t.operatorToken.kind?e.every([t.left,t.right],(function(e){return o(e,r)})):62===t.operatorToken.kind&&e.isIdentifier(t.left)&&!r.getSymbolAtLocation(t.left))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start,n.program)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Add_const_to_unresolved_variable,r,e.Diagnostics.Add_const_to_all_unresolved_variables)]},fixIds:[r],getAllCodeActions:function(r){var a=new e.Set;return t.codeFixAll(r,n,(function(e,t){return i(e,t.file,t.start,r.program,a)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingDeclareProperty",n=[e.Diagnostics.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration.code];function i(t,r,n,i){var a=e.getTokenAtPosition(r,n);if(e.isIdentifier(a)){var o=a.parent;164!==o.kind||i&&!e.tryAddToSet(i,o)||t.insertModifierBefore(r,134,o)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Prefix_with_declare,r,e.Diagnostics.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[r],getAllCodeActions:function(r){var a=new e.Set;return t.codeFixAll(r,n,(function(e,t){return i(e,t.file,t.start,a)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingInvocationForDecorator",n=[e.Diagnostics._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n),a=e.findAncestor(i,e.isDecorator);e.Debug.assert(!!a,"Expected position to be owned by a decorator.");var o=e.factory.createCallExpression(a.expression,void 0,void 0);t.replaceNode(r,a.expression,o)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Call_decorator_expression,r,e.Diagnostics.Add_to_all_uncalled_decorators)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addNameToNamelessParameter",n=[e.Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n);if(!e.isIdentifier(i))return e.Debug.fail("add-name-to-nameless-parameter operates on identifiers, but got a "+e.Debug.formatSyntaxKind(i.kind));var a=i.parent;if(!e.isParameter(a))return e.Debug.fail("Tried to add a parameter name to a non-parameter: "+e.Debug.formatSyntaxKind(i.kind));var o=a.parent.parameters.indexOf(a);e.Debug.assert(!a.type,"Tried to add a parameter name to a parameter that already had one."),e.Debug.assert(o>-1,"Parameter not found in parent parameter list.");var s=e.factory.createParameterDeclaration(void 0,a.modifiers,a.dotDotDotToken,"arg"+o,a.questionToken,e.factory.createTypeReferenceNode(i,void 0),a.initializer);t.replaceNode(r,i,s)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Add_parameter_name,r,e.Diagnostics.Add_names_to_all_parameters_without_names)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="annotateWithTypeFromJSDoc",n=[e.Diagnostics.JSDoc_types_may_be_moved_to_TypeScript_types.code];function i(t,r){var n=e.getTokenAtPosition(t,r);return e.tryCast(e.isParameter(n.parent)?n.parent.parent:n.parent,a)}function a(t){return function(t){return e.isFunctionLikeDeclaration(t)||251===t.kind||163===t.kind||164===t.kind}(t)&&o(t)}function o(t){return e.isFunctionLikeDeclaration(t)?t.parameters.some(o)||!t.type&&!!e.getJSDocReturnType(t):!t.type&&!!e.getJSDocType(t)}function s(t,r,n){if(e.isFunctionLikeDeclaration(n)&&(e.getJSDocReturnType(n)||n.parameters.some((function(t){return!!e.getJSDocType(t)})))){if(!n.typeParameters){var i=e.getJSDocTypeParameterDeclarations(n);i.length&&t.insertTypeParameters(r,n,i)}var a=e.isArrowFunction(n)&&!e.findChildOfKind(n,20,r);a&&t.insertNodeBefore(r,e.first(n.parameters),e.factory.createToken(20));for(var o=0,s=n.parameters;o<s.length;o++){var l=s[o];if(!l.type){var u=e.getJSDocType(l);u&&t.tryInsertTypeAnnotation(r,l,c(u))}}if(a&&t.insertNodeAfter(r,e.last(n.parameters),e.factory.createToken(21)),!n.type){var d=e.getJSDocReturnType(n);d&&t.tryInsertTypeAnnotation(r,n,c(d))}}else{var p=e.Debug.checkDefined(e.getJSDocType(n),"A JSDocType for this declaration should exist");e.Debug.assert(!n.type,"The JSDocType decl should have a type"),t.tryInsertTypeAnnotation(r,n,c(p))}}function c(t){switch(t.kind){case 306:case 307:return e.factory.createTypeReferenceNode("any",e.emptyArray);case 310:return function(t){return e.factory.createUnionTypeNode([e.visitNode(t.type,c),e.factory.createTypeReferenceNode("undefined",e.emptyArray)])}(t);case 309:return c(t.type);case 308:return function(t){return e.factory.createUnionTypeNode([e.visitNode(t.type,c),e.factory.createTypeReferenceNode("null",e.emptyArray)])}(t);case 312:return function(t){return e.factory.createArrayTypeNode(e.visitNode(t.type,c))}(t);case 311:return function(t){var r;return e.factory.createFunctionTypeNode(e.emptyArray,t.parameters.map(l),null!==(r=t.type)&&void 0!==r?r:e.factory.createKeywordTypeNode(129))}(t);case 174:return function(t){var r=t.typeName,n=t.typeArguments;if(e.isIdentifier(t.typeName)){if(e.isJSDocIndexSignature(t))return function(t){var r=e.factory.createParameterDeclaration(void 0,void 0,void 0,145===t.typeArguments[0].kind?"n":"s",void 0,e.factory.createTypeReferenceNode(145===t.typeArguments[0].kind?"number":"string",[]),void 0),n=e.factory.createTypeLiteralNode([e.factory.createIndexSignature(void 0,void 0,[r],t.typeArguments[1])]);return e.setEmitFlags(n,1),n}(t);var i=t.typeName.text;switch(t.typeName.text){case"String":case"Boolean":case"Object":case"Number":i=i.toLowerCase();break;case"array":case"date":case"promise":i=i[0].toUpperCase()+i.slice(1)}r=e.factory.createIdentifier(i),n="Array"!==i&&"Promise"!==i||t.typeArguments?e.visitNodes(t.typeArguments,c):e.factory.createNodeArray([e.factory.createTypeReferenceNode("any",e.emptyArray)])}return e.factory.createTypeReferenceNode(r,n)}(t);default:var r=e.visitEachChild(t,c,e.nullTransformationContext);return e.setEmitFlags(r,1),r}}function l(t){var r=t.parent.parameters.indexOf(t),n=312===t.type.kind&&r===t.parent.parameters.length-1,i=t.name||(n?"rest":"arg"+r),a=n?e.factory.createToken(25):t.dotDotDotToken;return e.factory.createParameterDeclaration(t.decorators,t.modifiers,a,i,t.questionToken,e.visitNode(t.type,c),t.initializer)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=i(n.sourceFile,n.span.start);if(a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return s(e,n.sourceFile,a)}));return[t.createCodeFixAction(r,o,e.Diagnostics.Annotate_with_type_from_JSDoc,r,e.Diagnostics.Annotate_everything_with_types_from_JSDoc)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&s(e,t.file,r)}))}}),t.parameterShouldGetTypeFromJSDoc=a}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="convertFunctionToEs6Class",n=[e.Diagnostics.This_constructor_function_may_be_converted_to_a_class_declaration.code];function i(t,r,n,i,s,c){var l=i.getSymbolAtLocation(e.getTokenAtPosition(r,n));if(l&&19&l.flags){var u=l.valueDeclaration;if(e.isFunctionDeclaration(u))t.replaceNode(r,u,function(t){var r=f(l);t.body&&r.unshift(e.factory.createConstructorDeclaration(void 0,void 0,t.parameters,t.body));var n=a(t,93);return e.factory.createClassDeclaration(void 0,n,t.name,void 0,void 0,r)}(u));else if(e.isVariableDeclaration(u)){var d=function(t){var r=t.initializer;if(!r||!e.isFunctionExpression(r)||!e.isIdentifier(t.name))return;var n=f(t.symbol);r.body&&n.unshift(e.factory.createConstructorDeclaration(void 0,void 0,r.parameters,r.body));var i=a(t.parent.parent,93);return e.factory.createClassDeclaration(void 0,i,t.name,void 0,void 0,n)}(u);if(!d)return;var p=u.parent.parent;e.isVariableDeclarationList(u.parent)&&u.parent.declarations.length>1?(t.delete(r,u),t.insertNodeAfter(r,p,d)):t.replaceNode(r,p,d)}}function f(n){var i=[];return n.members&&n.members.forEach((function(e,n){if("constructor"!==n){var a=l(e,void 0);a&&i.push.apply(i,a)}else t.delete(r,e.valueDeclaration.parent)})),n.exports&&n.exports.forEach((function(t){if("prototype"===t.name){var r=t.declarations[0];if(1===t.declarations.length&&e.isPropertyAccessExpression(r)&&e.isBinaryExpression(r.parent)&&62===r.parent.operatorToken.kind&&e.isObjectLiteralExpression(r.parent.right))(n=l(r.parent.right.symbol,void 0))&&i.push.apply(i,n)}else{var n;(n=l(t,[e.factory.createToken(124)]))&&i.push.apply(i,n)}})),i;function l(n,i){var l=[];if(!(8192&n.flags||4096&n.flags))return l;var u,d,p=n.valueDeclaration,f=p.parent,m=f.right;if(u=p,d=m,!(e.isAccessExpression(u)?e.isPropertyAccessExpression(u)&&o(u)||e.isFunctionLike(d):e.every(u.properties,(function(t){return!!(e.isMethodDeclaration(t)||e.isGetOrSetAccessorDeclaration(t)||e.isPropertyAssignment(t)&&e.isFunctionExpression(t.initializer)&&t.name||o(t))}))))return l;var g=f.parent&&235===f.parent.kind?f.parent:f;if(t.delete(r,g),!m)return l.push(e.factory.createPropertyDeclaration([],i,n.name,void 0,void 0,void 0)),l;if(e.isAccessExpression(p)&&(e.isFunctionExpression(m)||e.isArrowFunction(m))){var _=e.getQuotePreference(r,s),h=function(t,r,n){if(e.isPropertyAccessExpression(t))return t.name;var i=t.argumentExpression;if(e.isNumericLiteral(i))return i;if(e.isStringLiteralLike(i))return e.isIdentifierText(i.text,r.target)?e.factory.createIdentifier(i.text):e.isNoSubstitutionTemplateLiteral(i)?e.factory.createStringLiteral(i.text,0===n):i;return}(p,c,_);return h?v(l,m,h):l}if(e.isObjectLiteralExpression(m))return e.flatMap(m.properties,(function(t){return e.isMethodDeclaration(t)||e.isGetOrSetAccessorDeclaration(t)?l.concat(t):e.isPropertyAssignment(t)&&e.isFunctionExpression(t.initializer)?v(l,t.initializer,t.name):o(t)?l:[]}));if(e.isSourceFileJS(r))return l;if(!e.isPropertyAccessExpression(p))return l;var y=e.factory.createPropertyDeclaration(void 0,i,p.name,void 0,void 0,m);return e.copyLeadingComments(f.parent,y,r),l.push(y),l;function v(t,n,o){return e.isFunctionExpression(n)?function(t,n,o){var s=e.concatenate(i,a(n,130)),c=e.factory.createMethodDeclaration(void 0,s,void 0,o,void 0,void 0,n.parameters,void 0,n.body);return e.copyLeadingComments(f,c,r),t.concat(c)}(t,n,o):function(t,n,o){var s,c=n.body;s=232===c.kind?c:e.factory.createBlock([e.factory.createReturnStatement(c)]);var l=e.concatenate(i,a(n,130)),u=e.factory.createMethodDeclaration(void 0,l,void 0,o,void 0,void 0,n.parameters,void 0,s);return e.copyLeadingComments(f,u,r),t.concat(u)}(t,n,o)}}}}function a(t,r){return e.filter(t.modifiers,(function(e){return e.kind===r}))}function o(t){return!!t.name&&!(!e.isIdentifier(t.name)||"constructor"!==t.name.text)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start,n.program.getTypeChecker(),n.preferences,n.program.getCompilerOptions())}));return[t.createCodeFixAction(r,a,e.Diagnostics.Convert_function_to_an_ES2015_class,r,e.Diagnostics.Convert_all_constructor_functions_to_classes)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return i(t,r.file,r.start,e.program.getTypeChecker(),e.preferences,e.program.getCompilerOptions())}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r,n="convertToAsyncFunction",a=[e.Diagnostics.This_may_be_converted_to_an_async_function.code],o=!0;function s(t,r,n,i){var a,o=e.getTokenAtPosition(r,n);if(a=e.isIdentifier(o)&&e.isVariableDeclaration(o.parent)&&o.parent.initializer&&e.isFunctionLikeDeclaration(o.parent.initializer)?o.parent.initializer:e.tryCast(e.getContainingFunction(e.getTokenAtPosition(r,n)),e.isFunctionLikeDeclaration)){var s=new e.Map,d=e.isInJSFile(a),f=function(t,r){if(!t.body)return new e.Set;var n=new e.Set;return e.forEachChild(t.body,(function t(i){c(i,r,"then")?(n.add(e.getNodeId(i)),e.forEach(i.arguments,t)):c(i,r,"catch")?(n.add(e.getNodeId(i)),e.forEachChild(i,t)):l(i,r)?n.add(e.getNodeId(i)):e.forEachChild(i,t)})),n}(a,i),m=function(t,r,n){var i=new e.Map,a=e.createMultiMap();return e.forEachChild(t,(function t(o){if(e.isIdentifier(o)){var s=r.getSymbolAtLocation(o);if(s){var c=h(r.getTypeAtLocation(o),r),l=e.getSymbolId(s).toString();if(!c||e.isParameter(o.parent)||e.isFunctionLikeDeclaration(o.parent)||n.has(l)){if(o.parent&&(e.isParameter(o.parent)||e.isVariableDeclaration(o.parent)||e.isBindingElement(o.parent))){var d=o.text,p=a.get(d);if(p&&p.some((function(e){return e!==s}))){var f=u(o,a);i.set(l,f.identifier),n.set(l,f),a.add(d,s)}else{var m=e.getSynthesizedDeepClone(o);n.set(l,x(m)),a.add(d,s)}}}else{var g=e.firstOrUndefined(c.parameters),_=g&&e.isParameter(g.valueDeclaration)&&e.tryCast(g.valueDeclaration.name,e.isIdentifier)||e.factory.createUniqueName("result",16),y=u(_,a);n.set(l,y),a.add(_.text,s)}}}else e.forEachChild(o,t)})),e.getSynthesizedDeepCloneWithReplacements(t,!0,(function(t){if(e.isBindingElement(t)&&e.isIdentifier(t.name)&&e.isObjectBindingPattern(t.parent)){if((a=(n=r.getSymbolAtLocation(t.name))&&i.get(String(e.getSymbolId(n))))&&a.text!==(t.name||t.propertyName).getText())return e.factory.createBindingElement(t.dotDotDotToken,t.propertyName||t.name,a,t.initializer)}else if(e.isIdentifier(t)){var n,a;if(a=(n=r.getSymbolAtLocation(t))&&i.get(String(e.getSymbolId(n))))return e.factory.createIdentifier(a.text)}}))}(a,i,s),g=m.body&&e.isBlock(m.body)?function(t,r){var n=[];return e.forEachReturnStatement(t,(function(t){e.isReturnStatementWithFixablePromiseHandler(t,r)&&n.push(t)})),n}(m.body,i):e.emptyArray,_={checker:i,synthNamesMap:s,setOfExpressionsToReturn:f,isInJSFile:d};if(g.length){var y=a.modifiers?a.modifiers.end:a.decorators?e.skipTrivia(r.text,a.decorators.end):a.getStart(r),v=a.modifiers?{prefix:" "}:{suffix:" "};t.insertModifierAt(r,y,130,v);for(var b=function(n){e.forEachChild(n,(function i(a){if(e.isCallExpression(a)){var o=p(a,_);t.replaceNodeWithNodes(r,n,o)}else e.isFunctionLike(a)||e.forEachChild(a,i)}))},k=0,S=g;k<S.length;k++){b(S[k])}}}}function c(t,r,n){if(!e.isCallExpression(t))return!1;var i=e.hasPropertyAccessExpressionWithName(t,n)&&r.getTypeAtLocation(t);return!(!i||!r.getPromisedTypeOfPromise(i))}function l(t,r){return!!e.isExpression(t)&&!!r.getPromisedTypeOfPromise(r.getTypeAtLocation(t))}function u(t,r){var n=(r.get(t.text)||e.emptyArray).length;return x(0===n?t:e.factory.createIdentifier(t.text+"_"+n))}function d(){return o=!1,e.emptyArray}function p(t,r,n){if(c(t,r.checker,"then"))return 0===t.arguments.length?d():function(t,r,n){var i=t.arguments,a=i[0],o=i[1],s=v(a,r),c=g(a,n,s,t,r);if(o){var l=v(o,r),u=e.factory.createBlock(p(t.expression,r,s).concat(c)),d=g(o,n,l,t,r),f=l?S(l)?l.identifier.text:l.bindingPattern:"e",m=e.factory.createVariableDeclaration(f),_=e.factory.createCatchClause(m,e.factory.createBlock(d));return[e.factory.createTryStatement(u,_,void 0)]}return p(t.expression,r,s).concat(c)}(t,r,n);if(c(t,r.checker,"catch"))return function(t,r,n){var i,a=e.singleOrUndefined(t.arguments),o=a?v(a,r):void 0;n&&!w(t,r)&&(S(n)?(i=n,r.synthNamesMap.forEach((function(t,i){if(t.identifier.text===n.identifier.text){var a=function(t){var r=e.factory.createUniqueName(t.identifier.text,16);return x(r)}(n);r.synthNamesMap.set(i,a)}}))):i=x(e.factory.createUniqueName("result",16),n.types),i.hasBeenDeclared=!0);var s,c,l=e.factory.createBlock(p(t.expression,r,i)),u=a?g(a,i,o,t,r):e.emptyArray,d=o?S(o)?o.identifier.text:o.bindingPattern:"e",f=e.factory.createVariableDeclaration(d),m=e.factory.createCatchClause(f,e.factory.createBlock(u));if(i&&!w(t,r)){c=e.getSynthesizedDeepClone(i.identifier);var _=i.types,h=r.checker.getUnionType(_,2),y=r.isInJSFile?void 0:r.checker.typeToTypeNode(h,void 0,void 0),b=[e.factory.createVariableDeclaration(c,void 0,y)];s=e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList(b,1))}var k=e.factory.createTryStatement(l,m,void 0),D=n&&c&&(E=n,1===E.kind)&&e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.getSynthesizedDeepClone(n.bindingPattern),void 0,void 0,c)],2));var E;return e.compact([s,k,D])}(t,r,n);if(e.isPropertyAccessExpression(t))return p(t.expression,r,n);var i=r.checker.getTypeAtLocation(t);return i&&r.checker.getPromisedTypeOfPromise(i)?(e.Debug.assertNode(t.original.parent,e.isPropertyAccessExpression),function(t,r,n){if(w(t,r))return[e.factory.createReturnStatement(e.getSynthesizedDeepClone(t))];return f(n,e.factory.createAwaitExpression(t),void 0)}(t,r,n)):d()}function f(t,r,n){return!t||b(t)?[e.factory.createExpressionStatement(r)]:S(t)&&t.hasBeenDeclared?[e.factory.createExpressionStatement(e.factory.createAssignment(e.getSynthesizedDeepClone(t.identifier),r))]:[e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.getSynthesizedDeepClone(k(t)),void 0,n,r)],2))]}function m(t,r){if(r&&t){var n=e.factory.createUniqueName("result",16);return i(i([],f(x(n),t,r)),[e.factory.createReturnStatement(n)])}return[e.factory.createReturnStatement(t)]}function g(t,r,n,i,a){var o,s,c,u,p;switch(t.kind){case 104:break;case 202:case 78:if(!n)break;var g=e.factory.createCallExpression(e.getSynthesizedDeepClone(t),void 0,S(n)?[n.identifier]:[]);if(w(i,a))return m(g,null===(o=i.typeArguments)||void 0===o?void 0:o[0]);var v=a.checker.getTypeAtLocation(t),b=a.checker.getSignaturesOfType(v,0);if(!b.length)return d();var x=b[0].getReturnType(),D=f(r,e.factory.createAwaitExpression(g),null===(s=i.typeArguments)||void 0===s?void 0:s[0]);return r&&r.types.push(x),D;case 209:case 210:var E=t.body,T=null===(c=h(a.checker.getTypeAtLocation(t),a.checker))||void 0===c?void 0:c.getReturnType();if(e.isBlock(E)){for(var C=[],A=!1,N=0,P=E.statements;N<P.length;N++){var I=P[N];if(e.isReturnStatement(I))if(A=!0,e.isReturnStatementWithFixablePromiseHandler(I,a.checker))C=C.concat(y(a,[I],r));else{var F=T&&I.expression?_(a.checker,T,I.expression):I.expression;C.push.apply(C,m(F,null===(u=i.typeArguments)||void 0===u?void 0:u[0]))}else C.push(I)}return w(i,a)?C.map((function(t){return e.getSynthesizedDeepClone(t)})):function(t,r,n,i){for(var a=[],o=0,s=t;o<s.length;o++){var c=s[o];if(e.isReturnStatement(c)){if(c.expression){var u=l(c.expression,n.checker)?e.factory.createAwaitExpression(c.expression):c.expression;void 0===r?a.push(e.factory.createExpressionStatement(u)):a.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(k(r),void 0,void 0,u)],2)))}}else a.push(e.getSynthesizedDeepClone(c))}i||void 0===r||a.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(k(r),void 0,void 0,e.factory.createIdentifier("undefined"))],2)));return a}(C,r,a,A)}var O=y(a,e.isFixablePromiseHandler(E,a.checker)?[e.factory.createReturnStatement(E)]:e.emptyArray,r);if(O.length>0)return O;if(T){F=_(a.checker,T,E);if(w(i,a))return m(F,null===(p=i.typeArguments)||void 0===p?void 0:p[0]);var R=f(r,F,void 0);return r&&r.types.push(T),R}return d();default:return d()}return e.emptyArray}function _(t,r,n){var i=e.getSynthesizedDeepClone(n);return t.getPromisedTypeOfPromise(r)?e.factory.createAwaitExpression(i):i}function h(t,r){var n=r.getSignaturesOfType(t,0);return e.lastOrUndefined(n)}function y(t,r,n){for(var i=[],a=0,o=r;a<o.length;a++){var s=o[a];e.forEachChild(s,(function r(a){if(e.isCallExpression(a)){var o=p(a,t,n);if((i=i.concat(o)).length>0)return}else e.isFunctionLike(a)||e.forEachChild(a,r)}))}return i}function v(t,r){var n,i=[];e.isFunctionLikeDeclaration(t)?t.parameters.length>0&&(n=function t(r){if(e.isIdentifier(r))return a(r);var n=e.flatMap(r.elements,(function(r){return e.isOmittedExpression(r)?[]:[t(r.name)]}));return function(t,r,n){void 0===r&&(r=e.emptyArray);void 0===n&&(n=[]);return{kind:1,bindingPattern:t,elements:r,types:n}}(r,n)}(t.parameters[0].name)):e.isIdentifier(t)?n=a(t):e.isPropertyAccessExpression(t)&&e.isIdentifier(t.name)&&(n=a(t.name));if(n&&(!("identifier"in n)||"undefined"!==n.identifier.text))return n;function a(t){var n,a=function(e){return e.symbol?e.symbol:r.checker.getSymbolAtLocation(e)}((n=t).original?n.original:n);return a&&r.synthNamesMap.get(e.getSymbolId(a).toString())||x(t,i)}}function b(t){return!t||(S(t)?!t.identifier.text:e.every(t.elements,b))}function k(e){return S(e)?e.identifier:e.bindingPattern}function x(e,t){return void 0===t&&(t=[]),{kind:0,identifier:e,types:t,hasBeenDeclared:!1}}function S(e){return 0===e.kind}function w(t,r){return!!t.original&&r.setOfExpressionsToReturn.has(e.getNodeId(t.original))}t.registerCodeFix({errorCodes:a,getCodeActions:function(r){o=!0;var i=e.textChanges.ChangeTracker.with(r,(function(e){return s(e,r.sourceFile,r.span.start,r.program.getTypeChecker())}));return o?[t.createCodeFixAction(n,i,e.Diagnostics.Convert_to_async_function,n,e.Diagnostics.Convert_all_to_async_functions)]:[]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,a,(function(t,r){return s(t,r.file,r.start,e.program.getTypeChecker())}))}}),function(e){e[e.Identifier=0]="Identifier",e[e.BindingPattern=1]="BindingPattern"}(r||(r={}))}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){function r(t,r,n,i){for(var a=0,o=t.imports;a<o.length;a++){var s=o[a],c=e.getResolvedModule(t,s.text);if(c&&c.resolvedFileName===r.fileName){var l=e.importFromModuleSpecifier(s);switch(l.kind){case 263:n.replaceNode(t,l,e.makeImport(l.name,void 0,s,i));break;case 204:e.isRequireCall(l,!1)&&n.replaceNode(t,l,e.factory.createPropertyAccessExpression(e.getSynthesizedDeepClone(l),"default"))}}}}function n(t,r){t.forEachChild((function n(i){if(e.isPropertyAccessExpression(i)&&e.isExportsOrModuleExportsOrAlias(t,i.expression)&&e.isIdentifier(i.name)){var a=i.parent;r(i,e.isBinaryExpression(a)&&a.left===i&&62===a.operatorToken.kind)}i.forEachChild(n)}))}function i(t,r,n,i,l,u,d,f,m){switch(r.kind){case 234:return a(t,r,i,n,l,u,m),!1;case 235:var h=r.expression;switch(h.kind){case 204:return e.isRequireCall(h,!0)&&i.replaceNode(t,r,e.makeImport(void 0,void 0,h.arguments[0],m)),!1;case 218:return 62===h.operatorToken.kind&&function(t,r,n,i,a,l){var u=n.left,d=n.right;if(!e.isPropertyAccessExpression(u))return!1;if(e.isExportsOrModuleExportsOrAlias(t,u)){if(!e.isExportsOrModuleExportsOrAlias(t,d)){var f=e.isObjectLiteralExpression(d)?function(t,r){var n=e.mapAllOrFail(t.properties,(function(t){switch(t.kind){case 168:case 169:case 292:case 293:return;case 291:return e.isIdentifier(t.name)?function(t,r,n){var i=[e.factory.createToken(93)];switch(r.kind){case 209:var a=r.name;if(a&&a.text!==t)return o();case 210:return p(t,i,r,n);case 223:return function(t,r,n,i){return e.factory.createClassDeclaration(e.getSynthesizedDeepClones(n.decorators),e.concatenate(r,e.getSynthesizedDeepClones(n.modifiers)),t,e.getSynthesizedDeepClones(n.typeParameters),e.getSynthesizedDeepClones(n.heritageClauses),c(n.members,i))}(t,i,r,n);default:return o()}function o(){return g(i,e.factory.createIdentifier(t),c(r,n))}}(t.name.text,t.initializer,r):void 0;case 166:return e.isIdentifier(t.name)?p(t.name.text,[e.factory.createToken(93)],t,r):void 0;default:e.Debug.assertNever(t,"Convert to ES6 got invalid prop kind "+t.kind)}}));return n&&[n,!1]}(d,l):e.isRequireCall(d,!0)?function(t,r){var n=t.text,i=r.getSymbolAtLocation(t),a=i?i.exports:e.emptyMap;return a.has("export=")?[[s(n)],!0]:a.has("default")?a.size>1?[[o(n),s(n)],!0]:[[s(n)],!0]:[[o(n)],!1]}(d.arguments[0],r):void 0;return f?(i.replaceNodeWithNodes(t,n.parent,f[0]),f[1]):(i.replaceRangeWithText(t,e.createRange(u.getStart(t),d.pos),"export default"),!0)}i.delete(t,n.parent)}else e.isExportsOrModuleExportsOrAlias(t,u.expression)&&function(t,r,n,i){var a=r.left.name.text,o=i.get(a);if(void 0!==o){var s=[g(void 0,o,r.right),_([e.factory.createExportSpecifier(o,a)])];n.replaceNodeWithNodes(t,r.parent,s)}else!function(t,r,n){var i=t.left,a=t.right,o=t.parent,s=i.name.text;if(!(e.isFunctionExpression(a)||e.isArrowFunction(a)||e.isClassExpression(a))||a.name&&a.name.text!==s)n.replaceNodeRangeWithNodes(r,i.expression,e.findChildOfKind(i,24,r),[e.factory.createToken(93),e.factory.createToken(85)],{joiner:" ",suffix:" "});else{n.replaceRange(r,{pos:i.getStart(r),end:a.getStart(r)},e.factory.createToken(93),{suffix:" "}),a.name||n.insertName(r,a,s);var c=e.findChildOfKind(o,26,r);c&&n.delete(r,c)}}(r,t,n)}(t,n,i,a);return!1}(t,n,h,i,d,f)}default:return!1}}function a(r,n,i,a,o,s,c){var u,d=n.declarationList,p=!1,_=e.map(d.declarations,(function(n){var i=n.name,u=n.initializer;if(u){if(e.isExportsOrModuleExportsOrAlias(r,u))return p=!0,h([]);if(e.isRequireCall(u,!0))return p=!0,function(r,n,i,a,o,s){switch(r.kind){case 197:var c=e.mapAllOrFail(r.elements,(function(t){return t.dotDotDotToken||t.initializer||t.propertyName&&!e.isIdentifier(t.propertyName)||!e.isIdentifier(t.name)?void 0:m(t.propertyName&&t.propertyName.text,t.name.text)}));if(c)return h([e.makeImport(void 0,c,n,s)]);case 198:var u=l(t.moduleSpecifierToValidIdentifier(n.text,o),a);return h([e.makeImport(e.factory.createIdentifier(u),void 0,n,s),g(void 0,e.getSynthesizedDeepClone(r),e.factory.createIdentifier(u))]);case 78:return function(t,r,n,i,a){for(var o,s=n.getSymbolAtLocation(t),c=new e.Map,u=!1,d=0,p=i.original.get(t.text);d<p.length;d++){var f=p[d];if(n.getSymbolAtLocation(f)===s&&f!==t){var m=f.parent;if(e.isPropertyAccessExpression(m)){var g=m.expression,_=m.name.text;e.Debug.assert(g===f,"Didn't expect expression === use");var y=c.get(_);void 0===y&&(y=l(_,i),c.set(_,y)),(null!=o?o:o=new e.Map).set(m,e.factory.createIdentifier(y))}else u=!0}}var v=0===c.size?void 0:e.arrayFrom(e.mapIterator(c.entries(),(function(t){var r=t[0],n=t[1];return e.factory.createImportSpecifier(r===n?void 0:e.factory.createIdentifier(r),e.factory.createIdentifier(n))})));v||(u=!0);return h([e.makeImport(u?e.getSynthesizedDeepClone(t):void 0,v,r,a)],o)}(r,n,i,a,s);default:return e.Debug.assertNever(r,"Convert to ES6 module got invalid name kind "+r.kind)}}(i,u.arguments[0],a,o,s,c);if(e.isPropertyAccessExpression(u)&&e.isRequireCall(u.expression,!0))return p=!0,function(t,r,n,i,a){switch(t.kind){case 197:case 198:var o=l(r,i);return h([f(o,r,n,a),g(void 0,t,e.factory.createIdentifier(o))]);case 78:return h([f(t.text,r,n,a)]);default:return e.Debug.assertNever(t,"Convert to ES6 module got invalid syntax form "+t.kind)}}(i,u.name.text,u.expression.arguments[0],o,c)}return h([e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([n],d.flags))])}));if(p)return i.replaceNodeWithNodes(r,n,e.flatMap(_,(function(e){return e.newImports}))),e.forEach(_,(function(t){t.useSitesToUnqualify&&e.copyEntries(t.useSitesToUnqualify,null!=u?u:u=new e.Map)})),u}function o(e){return _(void 0,e)}function s(t){return _([e.factory.createExportSpecifier(void 0,"default")],t)}function c(t,r){return r&&e.some(e.arrayFrom(r.keys()),(function(r){return e.rangeContainsRange(t,r)}))?e.isArray(t)?e.getSynthesizedDeepClonesWithReplacements(t,!0,n):e.getSynthesizedDeepCloneWithReplacements(t,!0,n):t;function n(e){if(202===e.kind){var t=r.get(e);return r.delete(e),t}}}function l(e,t){for(;t.original.has(e)||t.additional.has(e);)e="_"+e;return t.additional.add(e),e}function u(t){var r=e.createMultiMap();return d(t,(function(e){return r.add(e.text,e)})),r}function d(t,r){e.isIdentifier(t)&&function(e){var t=e.parent;switch(t.kind){case 202:return t.name!==e;case 199:case 268:return t.propertyName!==e;default:return!0}}(t)&&r(t),t.forEachChild((function(e){return d(e,r)}))}function p(t,r,n,i){return e.factory.createFunctionDeclaration(e.getSynthesizedDeepClones(n.decorators),e.concatenate(r,e.getSynthesizedDeepClones(n.modifiers)),e.getSynthesizedDeepClone(n.asteriskToken),t,e.getSynthesizedDeepClones(n.typeParameters),e.getSynthesizedDeepClones(n.parameters),e.getSynthesizedDeepClone(n.type),e.factory.converters.convertToFunctionBlock(c(n.body,i)))}function f(t,r,n,i){return"default"===r?e.makeImport(e.factory.createIdentifier(t),void 0,n,i):e.makeImport(void 0,[m(r,t)],n,i)}function m(t,r){return e.factory.createImportSpecifier(void 0!==t&&t!==r?e.factory.createIdentifier(t):void 0,e.factory.createIdentifier(r))}function g(t,r,n){return e.factory.createVariableStatement(t,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(r,void 0,void 0,n)],2))}function _(t,r){return e.factory.createExportDeclaration(void 0,void 0,!1,t&&e.factory.createNamedExports(t),void 0===r?void 0:e.factory.createStringLiteral(r))}function h(e,t){return{newImports:e,useSitesToUnqualify:t}}t.registerCodeFix({errorCodes:[e.Diagnostics.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module.code],getCodeActions:function(o){var s=o.sourceFile,c=o.program,d=o.preferences,p=e.textChanges.ChangeTracker.with(o,(function(t){var o=function(t,r,o,s,c){var d={original:u(t),additional:new e.Set},p=function(t,r,i){var a=new e.Map;return n(t,(function(t){var n=t.name,o=n.text,s=n.originalKeywordKind;!a.has(o)&&(void 0!==s&&e.isNonContextualKeyword(s)||r.resolveName(o,t,111551,!0))&&a.set(o,l("_"+o,i))})),a}(t,r,d);!function(t,r,i){n(t,(function(n,a){if(!a){var o=n.name.text;i.replaceNode(t,n,e.factory.createIdentifier(r.get(o)||o))}}))}(t,p,o);for(var f,m=!1,g=0,_=e.filter(t.statements,e.isVariableStatement);g<_.length;g++){var h=_[g],y=a(t,h,o,r,d,s,c);y&&e.copyEntries(y,null!=f?f:f=new e.Map)}for(var v=0,b=e.filter(t.statements,(function(t){return!e.isVariableStatement(t)}));v<b.length;v++){h=b[v];var k=i(t,h,r,o,d,s,p,f,c);m=m||k}return null==f||f.forEach((function(e,r){o.replaceNode(t,r,e)})),m}(s,c.getTypeChecker(),t,c.getCompilerOptions().target,e.getQuotePreference(s,d));if(o)for(var p=0,f=c.getSourceFiles();p<f.length;p++){var m=f[p];r(m,s,t,e.getQuotePreference(m,d))}}));return[t.createCodeFixActionWithoutFixAll("convertToEs6Module",p,e.Diagnostics.Convert_to_ES6_module)]}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="correctQualifiedNameToIndexedAccessType",n=[e.Diagnostics.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code];function i(t,r){var n=e.findAncestor(e.getTokenAtPosition(t,r),e.isQualifiedName);return e.Debug.assert(!!n,"Expected position to be owned by a qualified name."),e.isIdentifier(n.left)?n:void 0}function a(t,r,n){var i=n.right.text,a=e.factory.createIndexedAccessTypeNode(e.factory.createTypeReferenceNode(n.left,void 0),e.factory.createLiteralTypeNode(e.factory.createStringLiteral(i)));t.replaceNode(r,n,a)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=i(n.sourceFile,n.span.start);if(o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,n.sourceFile,o)})),c=o.left.text+'["'+o.right.text+'"]';return[t.createCodeFixAction(r,s,[e.Diagnostics.Rewrite_as_the_indexed_access_type_0,c],r,e.Diagnostics.Rewrite_all_as_indexed_access_types)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&a(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type.code],n="convertToTypeOnlyExport";function i(t,r){return e.tryCast(e.getTokenAtPosition(r,t.start).parent,e.isExportSpecifier)}function a(t,n,i){if(n){var a=n.parent,o=a.parent,s=function(t,n){var i=t.parent;if(1===i.elements.length)return i.elements;var a=e.getDiagnosticsWithinSpan(e.createTextSpanFromNode(i),n.program.getSemanticDiagnostics(n.sourceFile,n.cancellationToken));return e.filter(i.elements,(function(n){var i;return n===t||(null===(i=e.findDiagnosticForNode(n,a))||void 0===i?void 0:i.code)===r[0]}))}(n,i);if(s.length===a.elements.length)t.insertModifierBefore(i.sourceFile,150,a);else{var c=e.factory.updateExportDeclaration(o,o.decorators,o.modifiers,!1,e.factory.updateNamedExports(a,e.filter(a.elements,(function(t){return!e.contains(s,t)}))),o.moduleSpecifier),l=e.factory.createExportDeclaration(void 0,void 0,!0,e.factory.createNamedExports(s),o.moduleSpecifier);t.replaceNode(i.sourceFile,o,c,{leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Exclude}),t.insertNodeAfter(i.sourceFile,o,l)}}}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var o=e.textChanges.ChangeTracker.with(r,(function(e){return a(e,i(r.span,r.sourceFile),r)}));if(o.length)return[t.createCodeFixAction(n,o,e.Diagnostics.Convert_to_type_only_export,n,e.Diagnostics.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[n],getAllCodeActions:function(n){var o=new e.Map;return t.codeFixAll(n,r,(function(t,r){var s=i(r,n.sourceFile);s&&e.addToSeen(o,e.getNodeId(s.parent.parent))&&a(t,s,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error.code],n="convertToTypeOnlyImport";function i(t,r){return e.tryCast(e.getTokenAtPosition(r,t.start).parent,e.isImportDeclaration)}function a(t,r,n){if(null==r?void 0:r.importClause){var i=r.importClause;t.insertText(n.sourceFile,r.getStart()+6," type"),i.name&&i.namedBindings&&(t.deleteNodeRangeExcludingEnd(n.sourceFile,i.name,r.importClause.namedBindings),t.insertNodeBefore(n.sourceFile,r,e.factory.updateImportDeclaration(r,void 0,void 0,e.factory.createImportClause(!0,i.name,void 0),r.moduleSpecifier)))}}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var o=e.textChanges.ChangeTracker.with(r,(function(e){a(e,i(r.span,r.sourceFile),r)}));if(o.length)return[t.createCodeFixAction(n,o,e.Diagnostics.Convert_to_type_only_import,n,e.Diagnostics.Convert_all_imports_not_used_as_a_value_to_type_only_imports)]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,r,(function(t,r){a(t,i(r,e.sourceFile),e)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="convertLiteralTypeToMappedType",n=[e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];function i(t,r){var n=e.getTokenAtPosition(t,r);if(e.isIdentifier(n)){var i=e.cast(n.parent.parent,e.isPropertySignature),a=n.getText(t);return{container:e.cast(i.parent,e.isTypeLiteralNode),typeNode:i.type,constraint:a,name:"K"===a?"P":"K"}}}function a(t,r,n){var i=n.container,a=n.typeNode,o=n.constraint,s=n.name;t.replaceNode(r,i,e.factory.createMappedTypeNode(void 0,e.factory.createTypeParameterDeclaration(s,e.factory.createTypeReferenceNode(o)),void 0,void 0,a))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start);if(c){var l=c.name,u=c.constraint,d=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,d,[e.Diagnostics.Convert_0_to_1_in_0,u,l],r,e.Diagnostics.Convert_all_type_literals_to_mapped_type)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&a(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.Class_0_incorrectly_implements_interface_1.code,e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],n="fixClassIncorrectlyImplementsInterface";function i(t,r){return e.Debug.checkDefined(e.getContainingClass(e.getTokenAtPosition(t,r)),"There should be a containing class")}function a(t){return!(t.valueDeclaration&&8&e.getEffectiveModifierFlags(t.valueDeclaration))}function o(r,n,i,o,s,c){var l=r.program.getTypeChecker(),u=function(t,r){var n=e.getEffectiveBaseTypeNode(t);if(!n)return e.createSymbolTable();var i=r.getTypeAtLocation(n),o=r.getPropertiesOfType(i);return e.createSymbolTable(o.filter(a))}(o,l),d=l.getTypeAtLocation(n),p=l.getPropertiesOfType(d).filter(e.and(a,(function(e){return!u.has(e.escapedName)}))),f=l.getTypeAtLocation(o),m=e.find(o.members,(function(t){return e.isConstructorDeclaration(t)}));f.getNumberIndexType()||_(d,1),f.getStringIndexType()||_(d,0);var g=t.createImportAdder(i,r.program,c,r.host);function _(e,n){var a=l.getIndexInfoOfType(e,n);a&&h(i,o,l.indexInfoToIndexSignatureDeclaration(a,n,o,void 0,t.getNoopSymbolTrackerWithResolver(r)))}function h(e,t,r){m?s.insertNodeAfter(e,m,r):s.insertNodeAtClassStart(e,t,r)}t.createMissingMemberNodes(o,p,i,r,c,g,(function(e){return h(i,o,e)})),g.writeFixes(s)}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var a=r.sourceFile,s=r.span,c=i(a,s.start);return e.mapDefined(e.getEffectiveImplementsTypeNodes(c),(function(i){var s=e.textChanges.ChangeTracker.with(r,(function(e){return o(r,i,a,c,e,r.preferences)}));return 0===s.length?void 0:t.createCodeFixAction(n,s,[e.Diagnostics.Implement_interface_0,i.getText(a)],n,e.Diagnostics.Implement_all_unimplemented_interfaces)}))},fixIds:[n],getAllCodeActions:function(n){var a=new e.Map;return t.codeFixAll(n,r,(function(t,r){var s=i(r.file,r.start);if(e.addToSeen(a,e.getNodeId(s)))for(var c=0,l=e.getEffectiveImplementsTypeNodes(s);c<l.length;c++){var u=l[c];o(n,u,r.file,s,t,n.preferences)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){t.importFixName="import";var r,n,o="fixMissingImport",s=[e.Diagnostics.Cannot_find_name_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,e.Diagnostics.Cannot_find_namespace_0.code,e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code];function l(t,r,n,i,a){var o=r.getCompilerOptions(),s=[],l=[],d=new e.Map,f=new e.Map;return{addImportFromDiagnostic:function(e,t){var r=h(t,e.code,e.start,n);if(!r||!r.fixes.length)return;m(r)},addImportFromExportedSymbol:function(s,c){var l=e.Debug.checkDefined(s.parent),d=e.getNameForExportedSymbol(s,e.getEmitScriptTarget(o)),f=r.getTypeChecker(),_=f.getMergedSymbol(e.skipAlias(s,f)),h=p(t,_,l,d,a,r,n),y=!!c&&2===o.importsNotUsedAsValues,v=g(t,r);m({fixes:[u(t,h,l,d,r,void 0,y,v,a,i)],symbolName:d})},writeFixes:function(r){for(var n,a=e.getQuotePreference(t,i),o=0,u=s;o<u.length;o++){var p=u[o];E(r,t,p)}for(var m=0,g=l;m<g.length;m++){p=g[m];T(r,t,p,a)}d.forEach((function(e){var n=e.importClauseOrBindingPattern,i=e.defaultImport,a=e.namedImports,o=e.canUseTypeOnlyImport;D(r,t,n,i,a,o)})),f.forEach((function(t,r){var i=t.useRequire,o=c(t,["useRequire"]),s=i?N:A;n=e.combine(n,s(r,a,o))})),n&&e.insertImports(r,t,n,!0)}};function m(t){var r=t.fixes,n=t.symbolName,i=e.first(r);switch(i.kind){case 0:s.push(i);break;case 1:l.push(i);break;case 2:var a=i.importClauseOrBindingPattern,o=i.importKind,c=i.canUseTypeOnlyImport,u=String(e.getNodeId(a));(p=d.get(u))||d.set(u,p={importClauseOrBindingPattern:a,defaultImport:void 0,namedImports:[],canUseTypeOnlyImport:c}),0===o?e.pushIfUnique(p.namedImports,n):(e.Debug.assert(void 0===p.defaultImport||p.defaultImport===n,"(Add to Existing) Default import should be missing or match symbolName"),p.defaultImport=n);break;case 3:var p,m=i.moduleSpecifier,g=(o=i.importKind,i.useRequire),_=i.typeOnly;switch((p=f.get(m))?p.typeOnly=p.typeOnly&&_:f.set(m,p={namedImports:[],namespaceLikeImport:void 0,typeOnly:_,useRequire:g}),o){case 1:e.Debug.assert(void 0===p.defaultImport||p.defaultImport===n,"(Add new) Default import should be missing or match symbolName"),p.defaultImport=n;break;case 0:e.pushIfUnique(p.namedImports||(p.namedImports=[]),n);break;case 3:case 2:e.Debug.assert(void 0===p.namespaceLikeImport||p.namespaceLikeImport.name===n,"Namespacelike import shoudl be missing or match symbolName"),p.namespaceLikeImport={importKind:o,name:n}}break;default:e.Debug.assertNever(i,"fix wasn't never - got kind "+i.kind)}}}function u(t,r,n,i,a,o,s,c,l,u){return e.Debug.assert(r.some((function(e){return e.moduleSymbol===n})),"Some exportInfo should match the specified moduleSymbol"),y(m(r,i,o,s,c,a,t,l,u),t,a,l)}function d(t,r,n,i,a){var o,s,c=i.getCompilerOptions(),l=d(i.getTypeChecker());if(l)return l;var u=null===(s=null===(o=a.getPackageJsonAutoImportProvider)||void 0===o?void 0:o.call(a))||void 0===s?void 0:s.getTypeChecker();return e.Debug.checkDefined(u&&d(u),"Could not find symbol in specified module for code actions");function d(i){var a=k(n,r,i,c);if(a&&e.skipAlias(a.symbol,i)===t)return{moduleSymbol:r,importKind:a.kind,exportedSymbolIsTypeOnly:f(t,i)};var o=i.tryGetMemberInModuleExportsAndProperties(t.name,r);return o&&e.skipAlias(o,i)===t?{moduleSymbol:r,importKind:0,exportedSymbolIsTypeOnly:f(t,i)}:void 0}}function p(t,r,n,i,a,o,s){var c=[],l=o.getCompilerOptions();return F(o,a,t,!1,s,(function(a,o,s){var u=s.getTypeChecker();if(!o||a===n||!e.startsWith(t.fileName,e.getDirectoryPath(o.fileName))){var d=k(t,a,u,l);!d||d.name!==i&&R(a,l.target)!==i||e.skipAlias(d.symbol,u)!==r||c.push({moduleSymbol:a,importKind:d.kind,exportedSymbolIsTypeOnly:f(d.symbol,u)});for(var p=0,m=u.getExportsAndPropertiesOfModule(a);p<m.length;p++){var g=m[p];g.name===i&&e.skipAlias(g,u)===r&&c.push({moduleSymbol:a,importKind:0,exportedSymbolIsTypeOnly:f(g,u)})}}})),c}function f(t,r){return!(111551&e.skipAlias(t,r).flags)}function m(t,r,n,a,o,s,c,l,u){var d=s.getTypeChecker(),p=e.flatMap(t,(function(t){return function(t,r,n){var i=t.moduleSymbol,a=t.importKind;return t.exportedSymbolIsTypeOnly&&e.isSourceFileJS(n)?e.emptyArray:e.mapDefined(n.imports,(function(t){var n=e.importFromModuleSpecifier(t);return e.isRequireVariableDeclaration(n.parent,!0)?r.resolveExternalModuleName(t)===i?{declaration:n.parent,importKind:a}:void 0:(264===n.kind||263===n.kind)&&r.getSymbolAtLocation(t)===i?{declaration:n,importKind:a}:void 0}))}(t,d,c)})),f=void 0===n?void 0:function(t,r,n,i){return e.firstDefined(t,(function(t){var a=t.declaration,o=function(t){var r,n,i;switch(t.kind){case 251:return null===(r=e.tryCast(t.name,e.isIdentifier))||void 0===r?void 0:r.text;case 263:return t.name.text;case 264:return null===(i=e.tryCast(null===(n=t.importClause)||void 0===n?void 0:n.namedBindings,e.isNamespaceImport))||void 0===i?void 0:i.name.text;default:return e.Debug.assertNever(t)}}(a);if(o){var s=function(t,r){var n;switch(t.kind){case 251:return r.resolveExternalModuleName(t.initializer.arguments[0]);case 263:return r.getAliasedSymbol(t.symbol);case 264:var i=e.tryCast(null===(n=t.importClause)||void 0===n?void 0:n.namedBindings,e.isNamespaceImport);return i&&r.getAliasedSymbol(i.symbol);default:return e.Debug.assertNever(t)}}(a,i);if(s&&s.exports.has(e.escapeLeadingUnderscores(r)))return{kind:0,namespacePrefix:o,position:n}}}))}(p,r,n,d),m=function(t,r){return e.firstDefined(t,(function(e){var t=e.declaration,n=e.importKind;if(263!==t.kind){if(251===t.kind)return 0!==n&&1!==n||197!==t.name.kind?void 0:{kind:2,importClauseOrBindingPattern:t.name,importKind:n,moduleSpecifier:t.initializer.arguments[0].text,canUseTypeOnlyImport:!1};var i=t.importClause;if(i){var a=i.name,o=i.namedBindings;return 1===n&&!a||0===n&&(!o||267===o.kind)?{kind:2,importClauseOrBindingPattern:i,importKind:n,moduleSpecifier:t.moduleSpecifier.getText(),canUseTypeOnlyImport:r}:void 0}}}))}(p,void 0!==n&&function(t,r){return e.isValidTypeOnlyAliasUseSite(e.getTokenAtPosition(t,r))}(c,n)),g=m?[m]:function(t,r,n,i,a,o,s,c,l){var u=e.firstDefined(r,(function(t){return function(t,r,n){var i=t.declaration,a=t.importKind,o=264===i.kind?i.moduleSpecifier:251===i.kind?i.initializer.arguments[0]:275===i.moduleReference.kind?i.moduleReference.expression:void 0;return o&&e.isStringLiteral(o)?{kind:3,moduleSpecifier:o.text,importKind:a,typeOnly:r,useRequire:n}:void 0}(t,o,s)}));return u?[u]:_(n,i,a,o,s,t,c,l)}(t,p,s,c,n,a,o,l,u);return i(i([],f?[f]:e.emptyArray),g)}function g(t,r){if(!e.isSourceFileJS(t))return!1;if(t.commonJsModuleIndicator&&!t.externalModuleIndicator)return!0;if(t.externalModuleIndicator&&!t.commonJsModuleIndicator)return!1;var n=r.getCompilerOptions();if(n.configFile)return e.getEmitModuleKind(n)<e.ModuleKind.ES2015;for(var i=0,a=r.getSourceFiles();i<a.length;i++){var o=a[i];if(o!==t&&e.isSourceFileJS(o)&&!r.isSourceFileFromExternalLibrary(o)){if(o.commonJsModuleIndicator&&!o.externalModuleIndicator)return!0;if(o.externalModuleIndicator&&!o.commonJsModuleIndicator)return!1}}return!0}function _(t,r,n,i,a,o,s,c){var l=e.isSourceFileJS(r),u=t.getCompilerOptions();return e.flatMap(o,(function(o){var d=o.moduleSymbol,p=o.importKind,f=o.exportedSymbolIsTypeOnly;return e.moduleSpecifiers.getModuleSpecifiers(d,t.getTypeChecker(),u,r,e.createModuleSpecifierResolutionHost(t,s),c).map((function(t){return f&&l?{kind:1,moduleSpecifier:t,position:e.Debug.checkDefined(n,"position should be defined")}:{kind:3,moduleSpecifier:t,importKind:p,useRequire:a,typeOnly:i}}))}))}function h(t,r,n,i){var o,s,c,l,u,d=e.getTokenAtPosition(t.sourceFile,n),p=r===e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code?function(t,r){var n=t.sourceFile,i=t.program,a=t.host,o=t.preferences,s=i.getTypeChecker(),c=function(t,r){var n=e.isIdentifier(t)?r.getSymbolAtLocation(t):void 0;if(e.isUMDExportSymbol(n))return n;var i=t.parent;return e.isJsxOpeningLikeElement(i)&&i.tagName===t||e.isJsxOpeningFragment(i)?e.tryCast(r.resolveName(r.getJsxNamespace(i),e.isJsxOpeningLikeElement(i)?t:i,111551,!1),e.isUMDExportSymbol):void 0}(r,s);if(!c)return;var l=s.getAliasedSymbol(c),u=c.name,d=[{moduleSymbol:l,importKind:b(n,i.getCompilerOptions()),exportedSymbolIsTypeOnly:!1}],p=g(n,i);return{fixes:m(d,u,e.isIdentifier(r)?r.getStart(n):void 0,!1,p,i,n,a,o),symbolName:u}}(t,d):e.isIdentifier(d)?function(t,r,n){var i=t.sourceFile,a=t.program,o=t.cancellationToken,s=t.host,c=t.preferences,l=a.getTypeChecker(),u=function(t,r,n){var i=n.parent;if((e.isJsxOpeningLikeElement(i)||e.isJsxClosingElement(i))&&i.tagName===n){var a=r.getJsxNamespace(t);if(e.isIntrinsicJsxName(n.text)||!r.resolveName(a,i,111551,!0))return a}return n.text}(i,l,r);e.Debug.assert("default"!==u,"'default' isn't a legal identifier and couldn't occur here");var d=2===a.getCompilerOptions().importsNotUsedAsValues&&e.isValidTypeOnlyAliasUseSite(r),p=g(i,a),_=function(t,r,n,i,a,o,s){var c=e.createMultiMap();function l(t,r,n,i){c.add(e.getUniqueSymbolId(r,i).toString(),{moduleSymbol:t,importKind:n,exportedSymbolIsTypeOnly:f(r,i)})}return F(a,s,i,!0,o,(function(e,a,o){var s=o.getTypeChecker();n.throwIfCancellationRequested();var c=o.getCompilerOptions(),u=k(i,e,s,c);u&&(u.name===t||R(e,c.target)===t)&&I(u.symbolForMeaning,r)&&l(e,u.symbol,u.kind,s);var d=s.tryGetMemberInModuleExportsAndProperties(t,e);d&&I(d,r)&&l(e,d,0,s)})),c}(u,e.getMeaningFromLocation(r),o,i,a,n,s),h=e.arrayFrom(e.flatMapIterator(_.entries(),(function(e){e[0];return m(e[1],u,r.getStart(i),d,p,a,i,s,c)})));return{fixes:h,symbolName:u}}(t,d,i):void 0;return p&&a(a({},p),{fixes:(o=p.fixes,s=t.sourceFile,c=t.program,l=t.host,u=L(s,c,l).allowsImportingSpecifier,e.sort(o,(function(t,r){return e.compareValues(t.kind,r.kind)||v(t,r,u)})))})}function y(e,t,r,n){if(0===e[0].kind||2===e[0].kind)return e[0];var i=L(t,r,n).allowsImportingSpecifier;return e.reduce((function(e,t){return-1===v(t,e,i)?t:e}))}function v(t,r,n){return 0!==t.kind&&0!==r.kind?e.compareBooleans(n(t.moduleSpecifier),n(r.moduleSpecifier))||e.compareNumberOfDirectorySeparators(t.moduleSpecifier,r.moduleSpecifier):0}function b(t,r){if(e.getAllowSyntheticDefaultImports(r))return 1;var n=e.getEmitModuleKind(r);switch(n){case e.ModuleKind.AMD:case e.ModuleKind.CommonJS:case e.ModuleKind.UMD:return e.isInJSFile(t)&&e.isExternalModule(t)?2:3;case e.ModuleKind.System:case e.ModuleKind.ES2015:case e.ModuleKind.ES2020:case e.ModuleKind.ESNext:case e.ModuleKind.None:return 2;default:return e.Debug.assertNever(n,"Unexpected moduleKind "+n)}}function k(e,t,r,n){var i=function(e,t,r,n){var i=r.tryGetMemberInModuleExports("default",t);if(i)return{symbol:i,kind:1};var a=r.resolveExternalModuleSymbol(t);return a===t?void 0:{symbol:a,kind:x(e,n)}}(e,t,r,n);if(i){var o=i.symbol,s=i.kind,c=S(o,r,n);return c&&a({symbol:o,kind:s},c)}}function x(t,r){var n=e.getAllowSyntheticDefaultImports(r);if(e.getEmitModuleKind(r)>=e.ModuleKind.ES2015)return n?1:2;if(e.isInJSFile(t))return e.isExternalModule(t)?1:3;for(var i=0,a=t.statements;i<a.length;i++){var o=a[i];if(e.isImportEqualsDeclaration(o))return 3}return n?1:3}function S(t,r,n){var i=e.getLocalSymbolForExportDefault(t);if(i)return{symbolForMeaning:i,name:i.name};var a,o=(a=t).declarations&&e.firstDefined(a.declarations,(function(t){var r;return e.isExportAssignment(t)?null===(r=e.tryCast(e.skipOuterExpressions(t.expression),e.isIdentifier))||void 0===r?void 0:r.text:e.isExportSpecifier(t)?(e.Debug.assert("default"===t.name.text,"Expected the specifier to be a default export"),t.propertyName&&t.propertyName.text):void 0}));if(void 0!==o)return{symbolForMeaning:t,name:o};if(2097152&t.flags){var s=r.getImmediateAliasedSymbol(t);if(s&&s.parent)return S(s,r,n)}return"default"!==t.escapedName&&"export="!==t.escapedName?{symbolForMeaning:t,name:t.getName()}:{symbolForMeaning:t,name:e.getNameForExportedSymbol(t,n.target)}}function w(r,n,i,a,s){var c,l=e.textChanges.ChangeTracker.with(r,(function(t){c=function(t,r,n,i,a){switch(i.kind){case 0:return E(t,r,i),[e.Diagnostics.Change_0_to_1,n,i.namespacePrefix+"."+n];case 1:return T(t,r,i,a),[e.Diagnostics.Change_0_to_1,n,C(i.moduleSpecifier,a)+n];case 2:var o=i.importClauseOrBindingPattern,s=i.importKind,c=i.canUseTypeOnlyImport,l=i.moduleSpecifier;D(t,r,o,1===s?n:void 0,0===s?[n]:e.emptyArray,c);var u=e.stripQuotes(l);return[1===s?e.Diagnostics.Add_default_import_0_to_existing_import_declaration_from_1:e.Diagnostics.Add_0_to_existing_import_declaration_from_1,n,u];case 3:s=i.importKind,l=i.moduleSpecifier;var d=i.typeOnly,p=i.useRequire?N:A,f=1===s?{defaultImport:n,typeOnly:d}:0===s?{namedImports:[n],typeOnly:d}:{namespaceLikeImport:{importKind:s,name:n},typeOnly:d};return e.insertImports(t,r,p(l,a,f),!0),[1===s?e.Diagnostics.Import_default_0_from_module_1:e.Diagnostics.Import_0_from_module_1,n,l];default:return e.Debug.assertNever(i,"Unexpected fix kind "+i.kind)}}(t,n,i,a,s)}));return t.createCodeFixAction(t.importFixName,l,c,o,e.Diagnostics.Add_all_missing_imports)}function D(t,r,n,i,a,o){if(197!==n.kind){var s=!o&&n.isTypeOnly;if(i&&(e.Debug.assert(!n.name,"Cannot add a default import to an import clause that already has one"),t.insertNodeAt(r,n.getStart(r),e.factory.createIdentifier(i),{suffix:", "})),a.length){var c=n.namedBindings&&e.cast(n.namedBindings,e.isNamedImports).elements,l=e.stableSort(a.map((function(t){return e.factory.createImportSpecifier(void 0,e.factory.createIdentifier(t))})),e.OrganizeImports.compareImportOrExportSpecifiers);if((null==c?void 0:c.length)&&e.OrganizeImports.importSpecifiersAreSorted(c))for(var u=0,d=l;u<d.length;u++){var p=d[u],f=e.OrganizeImports.getImportSpecifierInsertionIndex(c,p),m=n.namedBindings.elements[f-1];m?t.insertNodeInListAfter(r,m,p):t.insertNodeBefore(r,c[0],p,!e.positionsAreOnSameLine(c[0].getStart(),n.parent.getStart(),r))}else if(null==c?void 0:c.length)for(var g=0,_=l;g<_.length;g++){p=_[g];t.insertNodeInListAfter(r,e.last(c),p,c)}else if(l.length){var h=e.factory.createNamedImports(l);n.namedBindings?t.replaceNode(r,n.namedBindings,h):t.insertNodeAfter(r,e.Debug.checkDefined(n.name,"Import clause must have either named imports or a default import"),h)}}s&&t.delete(r,e.getTypeKeywordOfTypeOnlyImport(n,r))}else{i&&b(n,i,"default");for(var y=0,v=a;y<v.length;y++){b(n,v[y],void 0)}}function b(n,i,a){var o=e.factory.createBindingElement(void 0,a,i);n.elements.length?t.insertNodeInListAfter(r,e.last(n.elements),o):t.replaceNode(r,n,e.factory.createObjectBindingPattern([o]))}}function E(e,t,r){var n=r.namespacePrefix,i=r.position;e.insertText(t,i,n+".")}function T(e,t,r,n){var i=r.moduleSpecifier,a=r.position;e.insertText(t,a,C(i,n))}function C(t,r){var n=e.getQuoteFromPreference(r);return"import("+n+t+n+")."}function A(t,r,n){var i,a,o,s=e.makeStringLiteral(t,r);(void 0!==n.defaultImport||(null===(i=n.namedImports)||void 0===i?void 0:i.length))&&(o=e.combine(o,e.makeImport(void 0===n.defaultImport?void 0:e.factory.createIdentifier(n.defaultImport),null===(a=n.namedImports)||void 0===a?void 0:a.map((function(t){return e.factory.createImportSpecifier(void 0,e.factory.createIdentifier(t))})),t,r,n.typeOnly)));var c=n.namespaceLikeImport,l=n.typeOnly;if(c){var u=3===c.importKind?e.factory.createImportEqualsDeclaration(void 0,void 0,l,e.factory.createIdentifier(c.name),e.factory.createExternalModuleReference(s)):e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(l,void 0,e.factory.createNamespaceImport(e.factory.createIdentifier(c.name))),s);o=e.combine(o,u)}return e.Debug.checkDefined(o)}function N(t,r,n){var i,a,o,s=e.makeStringLiteral(t,r);if(n.defaultImport||(null===(i=n.namedImports)||void 0===i?void 0:i.length)){var c=(null===(a=n.namedImports)||void 0===a?void 0:a.map((function(t){return e.factory.createBindingElement(void 0,void 0,t)})))||[];n.defaultImport&&c.unshift(e.factory.createBindingElement(void 0,"default",n.defaultImport));var l=P(e.factory.createObjectBindingPattern(c),s);o=e.combine(o,l)}if(n.namespaceLikeImport){l=P(n.namespaceLikeImport.name,s);o=e.combine(o,l)}return e.Debug.checkDefined(o)}function P(t,r){return e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration("string"==typeof t?e.factory.createIdentifier(t):t,void 0,void 0,e.factory.createCallExpression(e.factory.createIdentifier("require"),void 0,[r]))],2))}function I(t,r){var n=t.declarations;return e.some(n,(function(t){return!!(e.getMeaningFromDeclaration(t)&r)}))}function F(t,r,n,i,a,o){var s,c;O(t,r,n,i,(function(e,r){return o(e,r,t,!1)}));var l=a&&(null===(s=r.getPackageJsonAutoImportProvider)||void 0===s?void 0:s.call(r));if(l){var u=e.timestamp();O(l,r,n,i,(function(e,t){return o(e,t,l,!0)})),null===(c=r.log)||void 0===c||c.call(r,"forEachExternalModuleToImportFrom autoImportProvider: "+(e.timestamp()-u))}}function O(t,r,n,i,a){var o,s=0,c=e.createModuleSpecifierResolutionHost(t,r),l=i&&L(n,t,r,c);!function(t,r,n){for(var i=0,a=t.getAmbientModules();i<a.length;i++){n(a[i],void 0)}for(var o=0,s=r;o<s.length;o++){var c=s[o];e.isExternalOrCommonJsModule(c)&&n(t.getMergedSymbol(c.symbol),c)}}(t.getTypeChecker(),t.getSourceFiles(),(function(r,i){void 0===i?!l||l.allowsImportingAmbientModule(r)?a(r,i):l&&s++:i&&i!==n&&function(t,r,n,i){var a,o=e.isOhpm(t.getCompilerOptions().packageManagerType),s=e.hostGetCanonicalFileName(i),c=null===(a=i.getGlobalTypingsCacheLocation)||void 0===a?void 0:a.call(i);return!!e.moduleSpecifiers.forEachFileNameOfModule(r.fileName,n.fileName,i,!1,(function(i){var a=t.getSourceFile(i);return(a===n||!a)&&function(t,r,n,i,a){var o=e.forEachAncestorDirectory(r,(function(t){return"node_modules"===e.getBaseFileName(t)||a&&"oh_modules"===e.getBaseFileName(t)?t:void 0})),s=o&&e.getDirectoryPath(n(o));return void 0===s||e.startsWith(n(t),s)||!!i&&e.startsWith(n(i),s)}(r.fileName,i,s,c,o)}),o)}(t,n,i,c)&&(!l||l.allowsImportingSourceFile(i)?a(r,i):l&&s++)})),null===(o=r.log)||void 0===o||o.call(r,"forEachExternalModuleToImportFrom: filtered out "+s+" modules by package.json or oh-package.json5 contents")}function R(t,r){return M(e.removeFileExtension(e.stripQuotes(t.name)),r)}function M(t,r){var n=e.getBaseFileName(e.removeSuffix(t,"/index")),i="",a=!0,o=n.charCodeAt(0);e.isIdentifierStart(o,r)?i+=String.fromCharCode(o):a=!1;for(var s=1;s<n.length;s++){var c=n.charCodeAt(s),l=e.isIdentifierPart(c,r);if(l){var u=String.fromCharCode(c);a||(u=u.toUpperCase()),i+=u}a=l}return e.isStringANonContextualKeyword(i)?"_"+i:i||"_"}function L(t,r,n,i){void 0===i&&(i=e.createModuleSpecifierResolutionHost(r,n));var a,o=(n.getPackageJsonsVisibleToFile&&n.getPackageJsonsVisibleToFile(t.fileName)||e.getPackageJsonsVisibleToFile(t.fileName,n)).filter((function(e){return e.parseable}));return{allowsImportingAmbientModule:function(t){if(!o.length)return!0;var r=l(t.valueDeclaration.getSourceFile().fileName);if(void 0===r)return!0;var n=e.stripQuotes(t.getName());if(c(n))return!0;return s(r)||s(n)},allowsImportingSourceFile:function(e){if(!o.length)return!0;var t=l(e.fileName);if(!t)return!0;return s(t)},allowsImportingSpecifier:function(t){if(!o.length||c(t))return!0;if(e.pathIsRelative(t)||e.isRootedDiskPath(t))return!0;return s(t)},moduleSpecifierResolutionHost:i};function s(t){for(var r=u(t),n=0,i=o;n<i.length;n++){var a=i[n];if(a.has(r)||a.has(e.getTypesPackageName(r)))return!0}return!1}function c(r){return!!(e.isSourceFileJS(t)&&e.JsTyping.nodeCoreModules.has(r)&&(void 0===a&&(a=e.consumesNodeCoreModules(t)),a))}function l(r){if(e.stringContains(r,"node_modules")||e.stringContains(r,"oh_modules")){var a=e.moduleSpecifiers.getModulesPackageName(n.getCompilationSettings(),t.path,r,i);if(a)return e.pathIsRelative(a)||e.isRootedDiskPath(a)?void 0:u(a)}}function u(t){var r=e.getPathComponents(e.getPackageNameFromTypesPackageName(t)).slice(1);return e.startsWith(r[0],"@")?r[0]+"/"+r[1]:r[0]}}t.registerCodeFix({errorCodes:s,getCodeActions:function(t){var r=t.errorCode,n=t.preferences,i=t.sourceFile,a=t.span,o=h(t,r,a.start,!0);if(o){var s=o.fixes,c=o.symbolName,l=e.getQuotePreference(i,n);return s.map((function(e){return w(t,i,c,e,l)}))}},fixIds:[o],getAllCodeActions:function(r){var n=l(r.sourceFile,r.program,!0,r.preferences,r.host);return t.eachDiagnostic(r,s,(function(e){return n.addImportFromDiagnostic(e,r)})),t.createCombinedCodeActions(e.textChanges.ChangeTracker.with(r,n.writeFixes))}}),t.createImportAdder=function(e,t,r,n){return l(e,t,!1,r,n)},function(e){e[e.UseNamespace=0]="UseNamespace",e[e.ImportType=1]="ImportType",e[e.AddToExisting=2]="AddToExisting",e[e.AddNew=3]="AddNew"}(r||(r={})),function(e){e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.Namespace=2]="Namespace",e[e.CommonJS=3]="CommonJS"}(n||(n={})),t.getImportCompletionAction=function(t,r,n,i,a,o,s,c,l){var f,m,h,v,b=o.getCompilerOptions(),k=e.pathIsBareSpecifier(e.stripQuotes(r.name))?[d(t,r,n,o,a)]:p(n,t,r,i,a,o,!0),x=g(n,o),S=2===b.importsNotUsedAsValues&&!e.isSourceFileJS(n)&&e.isValidTypeOnlyAliasUseSite(e.getTokenAtPosition(n,c)),D=y(_(o,n,c,S,x,k,a,l),n,o,a).moduleSpecifier,E=u(n,k,r,i,o,c,S,x,a,l);return{moduleSpecifier:D,codeAction:(f=w({host:a,formatContext:s,preferences:l},n,i,E,e.getQuotePreference(n,l)),m=f.description,h=f.changes,v=f.commands,{description:m,changes:h,commands:v})}},t.forEachExternalModuleToImportFrom=F,t.moduleSymbolToValidIdentifier=R,t.moduleSpecifierToValidIdentifier=M}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixNoPropertyAccessFromIndexSignature",n=[e.Diagnostics.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];function i(t,r,n,i){var a=e.getQuotePreference(r,i),o=e.factory.createStringLiteral(n.name.text,0===a);t.replaceNode(r,n,e.isPropertyAccessChain(n)?e.factory.createElementAccessChain(n.expression,n.questionDotToken,o):e.factory.createElementAccessExpression(n.expression,o))}function a(t,r){return e.cast(e.getTokenAtPosition(t,r).parent,e.isPropertyAccessExpression)}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=n.preferences,l=a(o,s.start),u=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,l,c)}));return[t.createCodeFixAction(r,u,[e.Diagnostics.Use_element_access_for_0,l.name.text],r,e.Diagnostics.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return i(t,r.file,a(r.file,r.start),e.preferences)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixImplicitThis",n=[e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];function i(t,r,n,i){var a=e.getTokenAtPosition(r,n);e.Debug.assert(108===a.kind);var o=e.getThisContainer(a,!1);if((e.isFunctionDeclaration(o)||e.isFunctionExpression(o))&&!e.isSourceFile(e.getThisContainer(o,!1))){var s=e.Debug.assertDefined(e.findChildOfKind(o,98,r)),c=o.name,l=e.Debug.assertDefined(o.body);if(e.isFunctionExpression(o)){if(c&&e.FindAllReferences.Core.isSymbolReferencedInFile(c,i,r,l))return;return t.delete(r,s),c&&t.delete(r,c),t.insertText(r,l.pos," =>"),[e.Diagnostics.Convert_function_expression_0_to_arrow_function,c?c.text:e.ANONYMOUS]}return t.replaceNode(r,s,e.factory.createToken(85)),t.insertText(r,c.end," = "),t.insertText(r,l.pos," =>"),[e.Diagnostics.Convert_function_declaration_0_to_arrow_function,c.text]}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a,o=n.sourceFile,s=n.program,c=n.span,l=e.textChanges.ChangeTracker.with(n,(function(e){a=i(e,o,c.start,s.getTypeChecker())}));return a?[t.createCodeFixAction(r,l,a,r,e.Diagnostics.Fix_all_implicit_this_errors)]:e.emptyArray},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){i(t,r.file,r.start,e.program.getTypeChecker())}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixIncorrectNamedTupleSyntax",n=[e.Diagnostics.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,e.Diagnostics.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.span,o=function(t,r){var n=e.getTokenAtPosition(t,r);return e.findAncestor(n,(function(e){return 193===e.kind}))}(i,a.start),s=e.textChanges.ChangeTracker.with(n,(function(t){return function(t,r,n){if(!n)return;var i=n.type,a=!1,o=!1;for(;181===i.kind||182===i.kind||187===i.kind;)181===i.kind?a=!0:182===i.kind&&(o=!0),i=i.type;var s=e.factory.updateNamedTupleMember(n,n.dotDotDotToken||(o?e.factory.createToken(25):void 0),n.name,n.questionToken||(a?e.factory.createToken(57):void 0),i);if(s===n)return;t.replaceNode(r,n,s)}(t,i,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Move_labeled_tuple_element_modifiers_to_labels,r,e.Diagnostics.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[r]})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixSpelling",n=[e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,e.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2.code,e.Diagnostics.No_overload_matches_this_call.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code];function i(t,r,n,i){var a=e.getTokenAtPosition(t,r),o=a.parent;if(i!==e.Diagnostics.No_overload_matches_this_call.code&&i!==e.Diagnostics.Type_0_is_not_assignable_to_type_1.code||e.isJsxAttribute(o)){var s,c=n.program.getTypeChecker();if(e.isPropertyAccessExpression(o)&&o.name===a){e.Debug.assert(e.isIdentifierOrPrivateIdentifier(a),"Expected an identifier for spelling (property access)");var l=c.getTypeAtLocation(o.expression);32&o.flags&&(l=c.getNonNullableType(l)),s=c.getSuggestedSymbolForNonexistentProperty(a,l)}else if(e.isQualifiedName(o)&&o.right===a){var u=c.getSymbolAtLocation(o.left);u&&1536&u.flags&&(s=c.getSuggestedSymbolForNonexistentModule(o.right,u))}else if(e.isImportSpecifier(o)&&o.name===a){e.Debug.assertNode(a,e.isIdentifier,"Expected an identifier for spelling (import)");var d=function(t,r,n){if(!n||!e.isStringLiteralLike(n.moduleSpecifier))return;var i=e.getResolvedModule(t,n.moduleSpecifier.text);return i?r.program.getSourceFile(i.resolvedFileName):void 0}(t,n,e.findAncestor(a,e.isImportDeclaration));d&&d.symbol&&(s=c.getSuggestedSymbolForNonexistentModule(a,d.symbol))}else if(e.isJsxAttribute(o)&&o.name===a){e.Debug.assertNode(a,e.isIdentifier,"Expected an identifier for JSX attribute");var p=e.findAncestor(a,e.isJsxOpeningLikeElement),f=c.getContextualTypeForArgumentAtIndex(p,0);s=c.getSuggestedSymbolForNonexistentJSXAttribute(a,f)}else{var m=e.getMeaningFromLocation(a),g=e.getTextOfNode(a);e.Debug.assert(void 0!==g,"name should be defined"),s=c.getSuggestedSymbolForNonexistentSymbol(a,g,function(e){var t=0;4&e&&(t|=1920);2&e&&(t|=788968);1&e&&(t|=111551);return t}(m))}return void 0===s?void 0:{node:a,suggestedSymbol:s}}}function a(t,r,n,i,a){var o=e.symbolName(i);if(!e.isIdentifierText(o,a)&&e.isPropertyAccessExpression(n.parent)){var s=i.valueDeclaration;e.isNamedDeclaration(s)&&e.isPrivateIdentifier(s.name)?t.replaceNode(r,n,e.factory.createIdentifier(o)):t.replaceNode(r,n.parent,e.factory.createElementAccessExpression(n.parent.expression,e.factory.createStringLiteral(o)))}else t.replaceNode(r,n,e.factory.createIdentifier(o))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.errorCode,c=i(o,n.span.start,n,s);if(c){var l=c.node,u=c.suggestedSymbol,d=n.host.getCompilationSettings().target,p=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,l,u,d)}));return[t.createCodeFixAction("spelling",p,[e.Diagnostics.Change_spelling_to_0,e.symbolName(u)],r,e.Diagnostics.Fix_all_detected_spelling_errors)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,r.start,e,r.code),o=e.host.getCompilationSettings().target;n&&a(t,e.sourceFile,n.node,n.suggestedSymbol,o)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r,n="returnValueCorrect",i="fixAddReturnStatement",a="fixRemoveBracesFromArrowFunctionBody",o="fixWrapTheBlockWithParen",s=[e.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code,e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];function c(t,r,n){var i=t.createSymbol(4,r.escapedText);i.type=t.getTypeAtLocation(n);var a=e.createSymbolTable([i]);return t.createAnonymousType(void 0,a,[],[],void 0,void 0)}function l(t,n,i,a){if(n.body&&e.isBlock(n.body)&&1===e.length(n.body.statements)){var o=e.first(n.body.statements);if(e.isExpressionStatement(o)&&u(t,n,t.getTypeAtLocation(o.expression),i,a))return{declaration:n,kind:r.MissingReturnStatement,expression:o.expression,statement:o,commentSource:o.expression};if(e.isLabeledStatement(o)&&e.isExpressionStatement(o.statement)){var s=e.factory.createObjectLiteralExpression([e.factory.createPropertyAssignment(o.label,o.statement.expression)]);if(u(t,n,c(t,o.label,o.statement.expression),i,a))return e.isArrowFunction(n)?{declaration:n,kind:r.MissingParentheses,expression:s,statement:o,commentSource:o.statement.expression}:{declaration:n,kind:r.MissingReturnStatement,expression:s,statement:o,commentSource:o.statement.expression}}else if(e.isBlock(o)&&1===e.length(o.statements)){var l=e.first(o.statements);if(e.isLabeledStatement(l)&&e.isExpressionStatement(l.statement)){s=e.factory.createObjectLiteralExpression([e.factory.createPropertyAssignment(l.label,l.statement.expression)]);if(u(t,n,c(t,l.label,l.statement.expression),i,a))return{declaration:n,kind:r.MissingReturnStatement,expression:s,statement:o,commentSource:l}}}}}function u(t,r,n,i,a){if(a){var o=t.getSignatureFromDeclaration(r);if(o){e.hasSyntacticModifier(r,256)&&(n=t.createPromiseType(n));var s=t.createSignature(r,o.typeParameters,o.thisParameter,o.parameters,n,void 0,o.minArgumentCount,o.flags);n=t.createAnonymousType(void 0,e.createSymbolTable(),[s],[],void 0,void 0)}else n=t.getAnyType()}return t.isTypeAssignableTo(n,i)}function d(t,r,n,i){var a=e.getTokenAtPosition(r,n);if(a.parent){var o=e.findAncestor(a.parent,e.isFunctionLikeDeclaration);switch(i){case e.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value.code:if(!(o&&o.body&&o.type&&e.rangeContainsRange(o.type,a)))return;return l(t,o,t.getTypeFromTypeNode(o.type),!1);case e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!o||!e.isCallExpression(o.parent)||!o.body)return;var s=o.parent.arguments.indexOf(o),c=t.getContextualTypeForArgumentAtIndex(o.parent,s);if(!c)return;return l(t,o,c,!0);case e.Diagnostics.Type_0_is_not_assignable_to_type_1.code:if(!e.isDeclarationName(a)||!e.isVariableLike(a.parent)&&!e.isJsxAttribute(a.parent))return;var u=function(t){switch(t.kind){case 251:case 161:case 199:case 164:case 291:return t.initializer;case 283:return t.initializer&&(e.isJsxExpression(t.initializer)?t.initializer.expression:void 0);case 292:case 163:case 294:case 336:case 329:return}}(a.parent);if(!u||!e.isFunctionLikeDeclaration(u)||!u.body)return;return l(t,u,t.getTypeAtLocation(a.parent),!0)}}}function p(t,r,n,i){e.suppressLeadingAndTrailingTrivia(n);var a=e.probablyUsesSemicolons(r);t.replaceNode(r,i,e.factory.createReturnStatement(n),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Exclude,suffix:a?";":void 0})}function f(t,r,n,i,a,o){var s=o||e.needsParentheses(i)?e.factory.createParenthesizedExpression(i):i;e.suppressLeadingAndTrailingTrivia(a),e.copyComments(a,s),t.replaceNode(r,n.body,s)}function m(t,r,n,i){t.replaceNode(r,n.body,e.factory.createParenthesizedExpression(i))}function g(r,a,o){var s=e.textChanges.ChangeTracker.with(r,(function(e){return p(e,r.sourceFile,a,o)}));return t.createCodeFixAction(n,s,e.Diagnostics.Add_a_return_statement,i,e.Diagnostics.Add_all_missing_return_statement)}function _(r,i,a){var s=e.textChanges.ChangeTracker.with(r,(function(e){return m(e,r.sourceFile,i,a)}));return t.createCodeFixAction(n,s,e.Diagnostics.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,o,e.Diagnostics.Wrap_all_object_literal_with_parentheses)}!function(e){e[e.MissingReturnStatement=0]="MissingReturnStatement",e[e.MissingParentheses=1]="MissingParentheses"}(r||(r={})),t.registerCodeFix({errorCodes:s,fixIds:[i,a,o],getCodeActions:function(i){var o=i.program,s=i.sourceFile,c=i.span.start,l=i.errorCode,u=d(o.getTypeChecker(),s,c,l);if(u)return u.kind===r.MissingReturnStatement?e.append([g(i,u.expression,u.statement)],e.isArrowFunction(u.declaration)?function(r,i,o,s){var c=e.textChanges.ChangeTracker.with(r,(function(e){return f(e,r.sourceFile,i,o,s,!1)}));return t.createCodeFixAction(n,c,e.Diagnostics.Remove_braces_from_arrow_function_body,a,e.Diagnostics.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}(i,u.declaration,u.expression,u.commentSource):void 0):[_(i,u.declaration,u.expression)]},getAllCodeActions:function(r){return t.codeFixAll(r,s,(function(t,n){var s=d(r.program.getTypeChecker(),n.file,n.start,n.code);if(s)switch(r.fixId){case i:p(t,n.file,s.expression,s.statement);break;case a:if(!e.isArrowFunction(s.declaration))return;f(t,n.file,s.declaration,s.expression,s.commentSource,!1);break;case o:if(!e.isArrowFunction(s.declaration))return;m(t,n.file,s.declaration,s.expression);break;default:e.Debug.fail(JSON.stringify(r.fixId))}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r,n="fixMissingMember",i="fixMissingFunctionDeclaration",a=[e.Diagnostics.Property_0_does_not_exist_on_type_1.code,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,e.Diagnostics.Property_0_is_missing_in_type_1_but_required_in_type_2.code,e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,e.Diagnostics.Cannot_find_name_0.code];function o(t,r,n,i){var a=e.getTokenAtPosition(t,r);if(e.isIdentifier(a)||e.isPrivateIdentifier(a)){var o=a.parent;if(e.isIdentifier(a)&&e.isCallExpression(o))return{kind:2,token:a,call:o,sourceFile:t,modifierFlags:0,parentDeclaration:t};if(e.isPropertyAccessExpression(o)){var s=e.skipConstraint(n.getTypeAtLocation(o.expression)),c=s.symbol;if(c&&c.declarations){if(e.isIdentifier(a)&&e.isCallExpression(o.parent)){var l=e.find(c.declarations,e.isModuleDeclaration),u=null==l?void 0:l.getSourceFile();if(l&&u&&!i.isSourceFileFromExternalLibrary(u))return{kind:2,token:a,call:o.parent,sourceFile:t,modifierFlags:1,parentDeclaration:l};var d=e.find(c.declarations,e.isSourceFile);if(t.commonJsModuleIndicator)return;if(d&&!i.isSourceFileFromExternalLibrary(d))return{kind:2,token:a,call:o.parent,sourceFile:d,modifierFlags:1,parentDeclaration:d}}var p=e.find(c.declarations,e.isClassLike);if(p||!e.isPrivateIdentifier(a)){var f=p||e.find(c.declarations,e.isInterfaceDeclaration);if(f&&!i.isSourceFileFromExternalLibrary(f.getSourceFile())){var m=(s.target||s)!==n.getDeclaredTypeOfSymbol(c);if(m&&(e.isPrivateIdentifier(a)||e.isInterfaceDeclaration(f)))return;var g=f.getSourceFile(),_=(m?32:0)|(e.startsWithUnderscore(a.text)?8:0),h=e.isSourceFileJS(g);return{kind:1,token:a,call:e.tryCast(o.parent,e.isCallExpression),modifierFlags:_,parentDeclaration:f,declSourceFile:g,isJSFile:h}}var y=e.find(c.declarations,e.isEnumDeclaration);return!y||e.isPrivateIdentifier(a)||i.isSourceFileFromExternalLibrary(y.getSourceFile())?void 0:{kind:0,token:a,parentDeclaration:y}}}}}}function s(t,r,n,i,a){var o=i.text;if(a){if(223===n.kind)return;var s=n.name.getText(),l=c(e.factory.createIdentifier(s),o);t.insertNodeAfter(r,n,l)}else if(e.isPrivateIdentifier(i)){var u=e.factory.createPropertyDeclaration(void 0,void 0,o,void 0,void 0,void 0),p=d(n);p?t.insertNodeAfter(r,p,u):t.insertNodeAtClassStart(r,n,u)}else{var f=e.getFirstConstructorWithBody(n);if(!f)return;var m=c(e.factory.createThis(),o);t.insertNodeAtConstructorEnd(r,f,m)}}function c(t,r){return e.factory.createExpressionStatement(e.factory.createAssignment(e.factory.createPropertyAccessExpression(t,r),e.factory.createIdentifier("undefined")))}function l(t,r,n){var i;if(218===n.parent.parent.kind){var a=n.parent.parent,o=n.parent===a.left?a.right:a.left,s=t.getWidenedType(t.getBaseTypeOfLiteralType(t.getTypeAtLocation(o)));i=t.typeToTypeNode(s,r,void 0)}else{var c=t.getContextualType(n.parent);i=c?t.typeToTypeNode(c,void 0,void 0):void 0}return i||e.factory.createKeywordTypeNode(129)}function u(t,r,n,i,a,o){var s=e.factory.createPropertyDeclaration(void 0,o?e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(o)):void 0,i,void 0,a,void 0),c=d(n);c?t.insertNodeAfter(r,c,s):t.insertNodeAtClassStart(r,n,s)}function d(t){for(var r,n=0,i=t.members;n<i.length;n++){var a=i[n];if(!e.isPropertyDeclaration(a))break;r=a}return r}function p(r,n,i,a,o,s,c){var l=t.createImportAdder(c,r.program,r.preferences,r.host),u=t.createSignatureDeclarationFromCallExpression(166,r,l,i,a,o,s),d=e.findAncestor(i,(function(t){return e.isMethodDeclaration(t)||e.isConstructorDeclaration(t)}));d&&d.parent===s?n.insertNodeAfter(c,d,u):n.insertNodeAtClassStart(c,s,u),l.writeFixes(n)}function f(t,r,n){var i=n.token,a=n.parentDeclaration,o=e.some(a.members,(function(e){var t=r.getTypeAtLocation(e);return!!(t&&402653316&t.flags)})),s=e.factory.createEnumMember(i,o?e.factory.createStringLiteral(i.text):void 0);t.replaceNode(a.getSourceFile(),a,e.factory.updateEnumDeclaration(a,a.decorators,a.modifiers,a.name,e.concatenate(a.members,e.singleElementArray(s))),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Exclude})}function m(r,n,i){var a=t.createImportAdder(n.sourceFile,n.program,n.preferences,n.host),o=t.createSignatureDeclarationFromCallExpression(253,n,a,i.call,e.idText(i.token),i.modifierFlags,i.parentDeclaration);r.insertNodeAtEndOfScope(i.sourceFile,i.parentDeclaration,o)}t.registerCodeFix({errorCodes:a,getCodeActions:function(r){var a=r.program.getTypeChecker(),c=o(r.sourceFile,r.span.start,a,r.program);if(c){if(2===c.kind){var d=e.textChanges.ChangeTracker.with(r,(function(e){return m(e,r,c)}));return[t.createCodeFixAction(i,d,[e.Diagnostics.Add_missing_function_declaration_0,c.token.text],i,e.Diagnostics.Add_all_missing_function_declarations)]}if(0===c.kind){d=e.textChanges.ChangeTracker.with(r,(function(e){return f(e,r.program.getTypeChecker(),c)}));return[t.createCodeFixAction(n,d,[e.Diagnostics.Add_missing_enum_member_0,c.token.text],n,e.Diagnostics.Add_all_missing_members)]}return e.concatenate(function(r,i){var a=i.parentDeclaration,o=i.declSourceFile,s=i.modifierFlags,c=i.token,l=i.call;if(void 0===l)return;if(e.isPrivateIdentifier(c))return;var u=c.text,d=function(t){return e.textChanges.ChangeTracker.with(r,(function(e){return p(r,e,l,c,t,a,o)}))},f=[t.createCodeFixAction(n,d(32&s),[32&s?e.Diagnostics.Declare_static_method_0:e.Diagnostics.Declare_method_0,u],n,e.Diagnostics.Add_all_missing_members)];8&s&&f.unshift(t.createCodeFixActionWithoutFixAll(n,d(8),[e.Diagnostics.Declare_private_method_0,u]));return f}(r,c),function(r,i){return i.isJSFile?e.singleElementArray(function(r,i){var a=i.parentDeclaration,o=i.declSourceFile,c=i.modifierFlags,l=i.token;if(e.isInterfaceDeclaration(a))return;var u=e.textChanges.ChangeTracker.with(r,(function(e){return s(e,o,a,l,!!(32&c))}));if(0===u.length)return;var d=32&c?e.Diagnostics.Initialize_static_property_0:e.isPrivateIdentifier(l)?e.Diagnostics.Declare_a_private_field_named_0:e.Diagnostics.Initialize_property_0_in_the_constructor;return t.createCodeFixAction(n,u,[d,l.text],n,e.Diagnostics.Add_all_missing_members)}(r,i)):function(r,i){var a=i.parentDeclaration,o=i.declSourceFile,s=i.modifierFlags,c=i.token,d=c.text,p=32&s,f=l(r.program.getTypeChecker(),a,c),m=function(t){return e.textChanges.ChangeTracker.with(r,(function(e){return u(e,o,a,d,f,t)}))},g=[t.createCodeFixAction(n,m(32&s),[p?e.Diagnostics.Declare_static_property_0:e.Diagnostics.Declare_property_0,d],n,e.Diagnostics.Add_all_missing_members)];if(p||e.isPrivateIdentifier(c))return g;8&s&&g.unshift(t.createCodeFixActionWithoutFixAll(n,m(8),[e.Diagnostics.Declare_private_property_0,d]));return g.push(function(r,i,a,o,s){var c=e.factory.createKeywordTypeNode(148),l=e.factory.createParameterDeclaration(void 0,void 0,void 0,"x",void 0,c,void 0),u=e.factory.createIndexSignature(void 0,void 0,[l],s),d=e.textChanges.ChangeTracker.with(r,(function(e){return e.insertNodeAtClassStart(i,a,u)}));return t.createCodeFixActionWithoutFixAll(n,d,[e.Diagnostics.Add_index_signature_for_property_0,o])}(r,o,a,c.text,f)),g}(r,i)}(r,c))}},fixIds:[n,i],getAllCodeActions:function(r){var n=r.program,c=r.fixId,d=n.getTypeChecker(),g=new e.Map,_=new e.Map;return t.createCombinedCodeActions(e.textChanges.ChangeTracker.with(r,(function(h){t.eachDiagnostic(r,a,(function(t){var n=o(t.file,t.start,d,r.program);if(n&&e.addToSeen(g,e.getNodeId(n.parentDeclaration)+"#"+n.token.text))if(c===i)2===n.kind&&m(h,r,n);else if(0===n.kind&&f(h,d,n),1===n.kind){var a=n.parentDeclaration,s=n.token,l=e.getOrUpdate(_,a,(function(){return[]}));l.some((function(e){return e.token.text===s.text}))||l.push(n)}})),_.forEach((function(i,a){for(var o=t.getAllSupers(a,d),c=function(t){if(o.some((function(e){var r=_.get(e);return!!r&&r.some((function(e){return e.token.text===t.token.text}))})))return"continue";var i=t.parentDeclaration,a=t.declSourceFile,c=t.modifierFlags,d=t.token,f=t.call,m=t.isJSFile;if(f&&!e.isPrivateIdentifier(d))p(r,h,f,d,32&c,i,a);else if(m&&!e.isInterfaceDeclaration(i))s(h,a,i,d,!!(32&c));else{var g=l(n.getTypeChecker(),i,d);u(h,a,i,d.text,g,32&c)}},f=0,m=i;f<m.length;f++){c(m[f])}}))})))}}),function(e){e[e.Enum=0]="Enum",e[e.ClassOrInterface=1]="ClassOrInterface",e[e.Function=2]="Function"}(r||(r={}))}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingNewOperator",n=[e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];function i(t,r,n){var i=e.cast(function(t,r){var n=e.getTokenAtPosition(t,r.start),i=e.textSpanEnd(r);for(;n.end<i;)n=n.parent;return n}(r,n),e.isCallExpression),a=e.factory.createNewExpression(i.expression,i.typeArguments,i.arguments);t.replaceNode(r,i,a)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=n.sourceFile,o=n.span,s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,a,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Add_missing_new_operator_to_call,r,e.Diagnostics.Add_missing_new_operator_to_all_calls)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return i(t,e.sourceFile,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="installTypesPackage",n=e.Diagnostics.Cannot_find_module_0_or_its_corresponding_type_declarations.code,i=[n,e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type.code];function a(e,t){return{type:"install package",file:e,packageName:t}}function o(t,r){var n=e.cast(e.getTokenAtPosition(t,r),e.isStringLiteral).text,i=e.parsePackageName(n).packageName;return e.isExternalModuleNameRelative(i)?void 0:i}function s(t,r,i){var a;return i===n?e.JsTyping.nodeCoreModules.has(t)?"@types/node":void 0:(null===(a=r.isKnownTypesPackageName)||void 0===a?void 0:a.call(r,t))?e.getTypesPackageName(t):void 0}t.registerCodeFix({errorCodes:i,getCodeActions:function(n){var i=n.host,c=n.sourceFile,l=o(c,n.span.start);if(void 0!==l){var u=s(l,i,n.errorCode);return void 0===u?[]:[t.createCodeFixAction("fixCannotFindModule",[],[e.Diagnostics.Install_0,u],r,e.Diagnostics.Install_all_missing_types_packages,a(c.fileName,u))]}},fixIds:[r],getAllCodeActions:function(n){return t.codeFixAll(n,i,(function(t,i,c){var l=o(i.file,i.start);if(void 0!==l)if(n.fixId===r){var u=s(l,n.host,i.code);u&&c.push(a(i.file.fileName,u))}else e.Debug.fail("Bad fixId: "+n.fixId)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,e.Diagnostics.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code],n="fixClassDoesntImplementInheritedAbstractMember";function i(t,r){var n=e.getTokenAtPosition(t,r);return e.cast(n.parent,e.isClassLike)}function a(r,n,i,a,s){var c=e.getEffectiveBaseTypeNode(r),l=i.program.getTypeChecker(),u=l.getTypeAtLocation(c),d=l.getPropertiesOfType(u).filter(o),p=t.createImportAdder(n,i.program,s,i.host);t.createMissingMemberNodes(r,d,n,i,s,p,(function(e){return a.insertNodeAtClassStart(n,r,e)})),p.writeFixes(a)}function o(t){var r=e.getSyntacticModifierFlags(e.first(t.getDeclarations()));return!(8&r||!(128&r))}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var o=r.sourceFile,s=r.span,c=e.textChanges.ChangeTracker.with(r,(function(e){return a(i(o,s.start),o,r,e,r.preferences)}));return 0===c.length?void 0:[t.createCodeFixAction(n,c,e.Diagnostics.Implement_inherited_abstract_class,n,e.Diagnostics.Implement_all_inherited_abstract_classes)]},fixIds:[n],getAllCodeActions:function(n){var o=new e.Map;return t.codeFixAll(n,r,(function(t,r){var s=i(r.file,r.start);e.addToSeen(o,e.getNodeId(s))&&a(s,n.sourceFile,n,t,n.preferences)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="classSuperMustPrecedeThisAccess",n=[e.Diagnostics.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];function i(e,t,r,n){e.insertNodeAtConstructorStart(t,r,n),e.delete(t,n)}function a(t,r){var n=e.getTokenAtPosition(t,r);if(108===n.kind){var i=e.getContainingFunction(n),a=o(i.body);return a&&!a.expression.arguments.some((function(t){return e.isPropertyAccessExpression(t)&&t.expression===n}))?{constructor:i,superCall:a}:void 0}}function o(t){return e.isExpressionStatement(t)&&e.isSuperCall(t.expression)?t:e.isFunctionLike(t)?void 0:e.forEachChild(t,o)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=a(o,s.start);if(c){var l=c.constructor,u=c.superCall,d=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,o,l,u)}));return[t.createCodeFixAction(r,d,e.Diagnostics.Make_super_call_the_first_statement_in_the_constructor,r,e.Diagnostics.Make_all_super_calls_the_first_statement_in_their_constructor)]}},fixIds:[r],getAllCodeActions:function(r){var o=r.sourceFile,s=new e.Map;return t.codeFixAll(r,n,(function(t,r){var n=a(r.file,r.start);if(n){var c=n.constructor,l=n.superCall;e.addToSeen(s,e.getNodeId(c.parent))&&i(t,o,c,l)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="constructorForDerivedNeedSuperCall",n=[e.Diagnostics.Constructors_for_derived_classes_must_contain_a_super_call.code];function i(t,r){var n=e.getTokenAtPosition(t,r);return e.Debug.assert(e.isConstructorDeclaration(n.parent),"token should be at the constructor declaration"),n.parent}function a(t,r,n){var i=e.factory.createExpressionStatement(e.factory.createCallExpression(e.factory.createSuper(),void 0,e.emptyArray));t.insertNodeAtConstructorStart(r,n,i)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start),l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Add_missing_super_call,r,e.Diagnostics.Add_all_missing_super_calls)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return a(t,e.sourceFile,i(r.file,r.start))}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="enableExperimentalDecorators",n=[e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning.code];function i(r,n){t.setJsonCompilerOptionValue(r,n,"experimentalDecorators",e.factory.createTrue())}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=n.program.getCompilerOptions().configFile;if(void 0!==a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,a)}));return[t.createCodeFixActionWithoutFixAll(r,o,e.Diagnostics.Enable_the_experimentalDecorators_option_in_your_configuration_file)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t){var r=e.program.getCompilerOptions().configFile;void 0!==r&&i(t,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixEnableJsxFlag",n=[e.Diagnostics.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];function i(r,n){t.setJsonCompilerOptionValue(r,n,"jsx",e.factory.createStringLiteral("react"))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=n.program.getCompilerOptions().configFile;if(void 0!==a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,a)}));return[t.createCodeFixActionWithoutFixAll(r,o,e.Diagnostics.Enable_the_jsx_flag_in_your_configuration_file)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t){var r=e.program.getCompilerOptions().configFile;void 0!==r&&i(t,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){t.registerCodeFix({errorCodes:[e.Diagnostics.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher.code,e.Diagnostics.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher.code],getCodeActions:function(r){var n=r.program.getCompilerOptions(),i=n.configFile;if(void 0!==i){var a=[],o=e.getEmitModuleKind(n);if(o>=e.ModuleKind.ES2015&&o<e.ModuleKind.ESNext){var s=e.textChanges.ChangeTracker.with(r,(function(r){t.setJsonCompilerOptionValue(r,i,"module",e.factory.createStringLiteral("esnext"))}));a.push(t.createCodeFixActionWithoutFixAll("fixModuleOption",s,[e.Diagnostics.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}var c=e.getEmitScriptTarget(n);if(c<4||c>99){s=e.textChanges.ChangeTracker.with(r,(function(r){if(e.getTsConfigObjectLiteralExpression(i)){var n=[["target",e.factory.createStringLiteral("es2017")]];o===e.ModuleKind.CommonJS&&n.push(["module",e.factory.createStringLiteral("commonjs")]),t.setJsonCompilerOptionValues(r,i,n)}}));a.push(t.createCodeFixActionWithoutFixAll("fixTargetOption",s,[e.Diagnostics.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return a.length?a:void 0}}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixPropertyAssignment",n=[e.Diagnostics.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code];function i(t,r,n){t.replaceNode(r,n,e.factory.createPropertyAssignment(n.name,n.objectAssignmentInitializer))}function a(t,r){return e.cast(e.getTokenAtPosition(t,r).parent,e.isShorthandPropertyAssignment)}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=a(n.sourceFile,n.span.start),s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,o)}));return[t.createCodeFixAction(r,s,[e.Diagnostics.Change_0_to_1,"=",":"],r,[e.Diagnostics.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,a(t.file,t.start))}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="extendsInterfaceBecomesImplements",n=[e.Diagnostics.Cannot_extend_an_interface_0_Did_you_mean_implements.code];function i(t,r){var n=e.getTokenAtPosition(t,r),i=e.getContainingClass(n).heritageClauses,a=i[0].getFirstToken();return 94===a.kind?{extendsToken:a,heritageClauses:i}:void 0}function a(t,r,n,i){if(t.replaceNode(r,n,e.factory.createToken(117)),2===i.length&&94===i[0].token&&117===i[1].token){var a=i[1].getFirstToken(),o=a.getFullStart();t.replaceRange(r,{pos:o,end:o},e.factory.createToken(27));for(var s=r.text,c=a.end;c<s.length&&e.isWhiteSpaceSingleLine(s.charCodeAt(c));)c++;t.deleteRange(r,{pos:a.getStart(),end:c})}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=i(o,n.span.start);if(s){var c=s.extendsToken,l=s.heritageClauses,u=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c,l)}));return[t.createCodeFixAction(r,u,e.Diagnostics.Change_extends_to_implements,r,e.Diagnostics.Change_all_extended_interfaces_to_implements)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&a(e,t.file,r.extendsToken,r.heritageClauses)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="forgottenThisPropertyAccess",n=e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,i=[e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies.code,n];function a(t,r,i){var a=e.getTokenAtPosition(t,r);if(e.isIdentifier(a))return{node:a,className:i===n?e.getContainingClass(a).name.text:void 0}}function o(t,r,n){var i=n.node,a=n.className;e.suppressLeadingAndTrailingTrivia(i),t.replaceNode(r,i,e.factory.createPropertyAccessExpression(a?e.factory.createIdentifier(a):e.factory.createThis(),i))}t.registerCodeFix({errorCodes:i,getCodeActions:function(n){var i=n.sourceFile,s=a(i,n.span.start,n.errorCode);if(s){var c=e.textChanges.ChangeTracker.with(n,(function(e){return o(e,i,s)}));return[t.createCodeFixAction(r,c,[e.Diagnostics.Add_0_to_unresolved_variable,s.className||"this"],r,e.Diagnostics.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,i,(function(t,r){var n=a(r.file,r.start,r.code);n&&o(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixInvalidJsxCharacters_expression",n="fixInvalidJsxCharacters_htmlEntity",i=[e.Diagnostics.Unexpected_token_Did_you_mean_or_gt.code,e.Diagnostics.Unexpected_token_Did_you_mean_or_rbrace.code];t.registerCodeFix({errorCodes:i,fixIds:[r,n],getCodeActions:function(i){var a=i.sourceFile,s=i.preferences,c=i.span,l=e.textChanges.ChangeTracker.with(i,(function(e){return o(e,s,a,c.start,!1)})),u=e.textChanges.ChangeTracker.with(i,(function(e){return o(e,s,a,c.start,!0)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Wrap_invalid_character_in_an_expression_container,r,e.Diagnostics.Wrap_all_invalid_characters_in_an_expression_container),t.createCodeFixAction(n,u,e.Diagnostics.Convert_invalid_character_to_its_html_entity_code,n,e.Diagnostics.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions:function(e){return t.codeFixAll(e,i,(function(t,r){return o(t,e.preferences,r.file,r.start,e.fixId===n)}))}});var a={">":">","}":"}"};function o(t,r,n,i,o){var s=n.getText()[i];if(function(t){return e.hasProperty(a,t)}(s)){var c=o?a[s]:"{"+e.quote(n,r,s)+"}";t.replaceRangeWithText(n,{pos:i,end:i+1},c)}}}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="unusedIdentifier",n="unusedIdentifier_prefix",i="unusedIdentifier_delete",a="unusedIdentifier_deleteImports",o="unusedIdentifier_infer",s=[e.Diagnostics._0_is_declared_but_its_value_is_never_read.code,e.Diagnostics._0_is_declared_but_never_used.code,e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read.code,e.Diagnostics.All_imports_in_import_declaration_are_unused.code,e.Diagnostics.All_destructured_elements_are_unused.code,e.Diagnostics.All_variables_are_unused.code,e.Diagnostics.All_type_parameters_are_unused.code];function c(t,r,n){t.replaceNode(r,n.parent,e.factory.createKeywordTypeNode(153))}function l(n,a){return t.createCodeFixAction(r,n,a,i,e.Diagnostics.Delete_all_unused_declarations)}function u(t,r,n){t.delete(r,e.Debug.checkDefined(e.cast(n.parent,e.isDeclarationWithTypeParameterChildren).typeParameters,"The type parameter to delete should exist"))}function d(e){return 100===e.kind||78===e.kind&&(268===e.parent.kind||265===e.parent.kind)}function p(t){return 100===t.kind?e.tryCast(t.parent,e.isImportDeclaration):void 0}function f(t,r){return e.isVariableDeclarationList(r.parent)&&e.first(r.parent.getChildren(t))===r}function m(e,t,r){e.delete(t,234===r.parent.kind?r.parent:r)}function g(t,r,n,i){r!==e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read.code&&(136===i.kind&&(i=e.cast(i.parent,e.isInferTypeNode).typeParameter.name),e.isIdentifier(i)&&function(e){switch(e.parent.kind){case 161:case 160:return!0;case 251:switch(e.parent.parent.parent.kind){case 241:case 240:return!0}}return!1}(i)&&(t.replaceNode(n,i,e.factory.createIdentifier("_"+i.text)),e.isParameter(i.parent)&&e.getJSDocParameterTags(i.parent).forEach((function(r){e.isIdentifier(r.name)&&t.replaceNode(n,r.name,e.factory.createIdentifier("_"+r.name.text))}))))}function _(t,r,n,i,a,o,s,c){!function(t,r,n,i,a,o,s,c){var l=t.parent;e.isParameter(l)?function(t,r,n,i,a,o,s,c){void 0===c&&(c=!1);(function(t,r,n,i,a,o,s){var c=n.parent;switch(c.kind){case 166:case 167:var l=c.parameters.indexOf(n),u=e.isMethodDeclaration(c)?c.name:c,d=e.FindAllReferences.Core.getReferencedSymbolsForNode(c.pos,u,a,i,o);if(d)for(var p=0,f=d;p<f.length;p++)for(var m=0,g=f[p].references;m<g.length;m++){var _=g[m];if(1===_.kind){var h=e.isSuperKeyword(_.node)&&e.isCallExpression(_.node.parent)&&_.node.parent.arguments.length>l,v=e.isPropertyAccessExpression(_.node.parent)&&e.isSuperKeyword(_.node.parent.expression)&&e.isCallExpression(_.node.parent.parent)&&_.node.parent.parent.arguments.length>l,b=(e.isMethodDeclaration(_.node.parent)||e.isMethodSignature(_.node.parent))&&_.node.parent!==n.parent&&_.node.parent.parameters.length>l;if(h||v||b)return!1}}return!0;case 253:return!c.name||!function(t,r,n){return!!e.FindAllReferences.Core.eachSymbolReferenceInFile(n,t,r,(function(t){return e.isIdentifier(t)&&e.isCallExpression(t.parent)&&t.parent.arguments.indexOf(t)>=0}))}(t,r,c.name)||y(c,n,s);case 209:case 210:return y(c,n,s);case 169:return!1;default:return e.Debug.failBadSyntaxKind(c)}})(i,r,n,a,o,s,c)&&(n.modifiers&&n.modifiers.length>0&&(!e.isIdentifier(n.name)||e.FindAllReferences.Core.isSymbolReferencedInFile(n.name,i,r))?n.modifiers.forEach((function(e){return t.deleteModifier(r,e)})):!n.initializer&&h(n,i,a)&&t.delete(r,n))}(r,n,l,i,a,o,s,c):c&&e.isIdentifier(t)&&e.FindAllReferences.Core.isSymbolReferencedInFile(t,i,n)||r.delete(n,e.isImportClause(l)?t:e.isComputedPropertyName(l)?l.parent:l)}(r,n,t,i,a,o,s,c),e.isIdentifier(r)&&e.FindAllReferences.Core.eachSymbolReferenceInFile(r,i,t,(function(r){var i;e.isPropertyAccessExpression(r.parent)&&r.parent.name===r&&(r=r.parent),!c&&(i=r,(e.isBinaryExpression(i.parent)&&i.parent.left===i||(e.isPostfixUnaryExpression(i.parent)||e.isPrefixUnaryExpression(i.parent))&&i.parent.operand===i)&&e.isExpressionStatement(i.parent.parent))&&n.delete(t,r.parent.parent)}))}function h(t,r,n){var i=t.parent.parameters.indexOf(t);return!e.FindAllReferences.Core.someSignatureUsage(t.parent,n,r,(function(e,t){return!t||t.arguments.length>i}))}function y(t,r,n){var i=t.parameters,a=i.indexOf(r);return e.Debug.assert(-1!==a,"The parameter should already be in the list"),n?i.slice(a+1).every((function(t){return e.isIdentifier(t.name)&&!t.symbol.isReferenced})):a===i.length-1}t.registerCodeFix({errorCodes:s,getCodeActions:function(i){var s=i.errorCode,h=i.sourceFile,y=i.program,v=i.cancellationToken,b=y.getTypeChecker(),k=y.getSourceFiles(),x=e.getTokenAtPosition(h,i.span.start);if(e.isJSDocTemplateTag(x))return[l(e.textChanges.ChangeTracker.with(i,(function(e){return e.delete(h,x)})),e.Diagnostics.Remove_template_tag)];if(29===x.kind)return[l(w=e.textChanges.ChangeTracker.with(i,(function(e){return u(e,h,x)})),e.Diagnostics.Remove_type_parameters)];var S=p(x);if(S){var w=e.textChanges.ChangeTracker.with(i,(function(e){return e.delete(h,S)}));return[t.createCodeFixAction(r,w,[e.Diagnostics.Remove_import_from_0,e.showModuleSpecifier(S)],a,e.Diagnostics.Delete_all_unused_imports)]}if(d(x)&&(A=e.textChanges.ChangeTracker.with(i,(function(e){return _(h,x,e,b,k,y,v,!1)}))).length)return[t.createCodeFixAction(r,A,[e.Diagnostics.Remove_unused_declaration_for_Colon_0,x.getText(h)],a,e.Diagnostics.Delete_all_unused_imports)];if(e.isObjectBindingPattern(x.parent)||e.isArrayBindingPattern(x.parent)){if(e.isParameter(x.parent.parent)){var D=x.parent.elements,E=[D.length>1?e.Diagnostics.Remove_unused_declarations_for_Colon_0:e.Diagnostics.Remove_unused_declaration_for_Colon_0,e.map(D,(function(e){return e.getText(h)})).join(", ")];return[l(e.textChanges.ChangeTracker.with(i,(function(t){return function(t,r,n){e.forEach(n.elements,(function(e){return t.delete(r,e)}))}(t,h,x.parent)})),E)]}return[l(e.textChanges.ChangeTracker.with(i,(function(e){return e.delete(h,x.parent.parent)})),e.Diagnostics.Remove_unused_destructuring_declaration)]}if(f(h,x))return[l(e.textChanges.ChangeTracker.with(i,(function(e){return m(e,h,x.parent)})),e.Diagnostics.Remove_variable_statement)];var T=[];if(136===x.kind){w=e.textChanges.ChangeTracker.with(i,(function(e){return c(e,h,x)}));var C=e.cast(x.parent,e.isInferTypeNode).typeParameter.name.text;T.push(t.createCodeFixAction(r,w,[e.Diagnostics.Replace_infer_0_with_unknown,C],o,e.Diagnostics.Replace_all_unused_infer_with_unknown))}else{var A;if((A=e.textChanges.ChangeTracker.with(i,(function(e){return _(h,x,e,b,k,y,v,!1)}))).length){C=e.isComputedPropertyName(x.parent)?x.parent:x;T.push(l(A,[e.Diagnostics.Remove_unused_declaration_for_Colon_0,C.getText(h)]))}}var N=e.textChanges.ChangeTracker.with(i,(function(e){return g(e,s,h,x)}));return N.length&&T.push(t.createCodeFixAction(r,N,[e.Diagnostics.Prefix_0_with_an_underscore,x.getText(h)],n,e.Diagnostics.Prefix_all_unused_declarations_with_where_possible)),T},fixIds:[n,i,a,o],getAllCodeActions:function(r){var l=r.sourceFile,y=r.program,v=r.cancellationToken,b=y.getTypeChecker(),k=y.getSourceFiles();return t.codeFixAll(r,s,(function(t,s){var x=e.getTokenAtPosition(l,s.start);switch(r.fixId){case n:g(t,s.code,l,x);break;case a:var S=p(x);S?t.delete(l,S):d(x)&&_(l,x,t,b,k,y,v,!0);break;case i:if(136===x.kind||d(x))break;if(e.isJSDocTemplateTag(x))t.delete(l,x);else if(29===x.kind)u(t,l,x);else if(e.isObjectBindingPattern(x.parent)){if(x.parent.parent.initializer)break;e.isParameter(x.parent.parent)&&!h(x.parent.parent,b,k)||t.delete(l,x.parent.parent)}else{if(e.isArrayBindingPattern(x.parent.parent)&&x.parent.parent.parent.initializer)break;f(l,x)?m(t,l,x.parent):_(l,x,t,b,k,y,v,!0)}break;case o:136===x.kind&&c(t,l,x);break;default:e.Debug.fail(JSON.stringify(r.fixId))}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixUnreachableCode",n=[e.Diagnostics.Unreachable_code_detected.code];function i(t,r,n,i,a){var o=e.getTokenAtPosition(r,n),s=e.findAncestor(o,e.isStatement);if(s.getStart(r)!==o.getStart(r)){var c=JSON.stringify({statementKind:e.Debug.formatSyntaxKind(s.kind),tokenKind:e.Debug.formatSyntaxKind(o.kind),errorCode:a,start:n,length:i});e.Debug.fail("Token and statement should start at the same point. "+c)}var l=(e.isBlock(s.parent)?s.parent:s).parent;if(!e.isBlock(s.parent)||s===e.first(s.parent.statements))switch(l.kind){case 236:if(l.elseStatement){if(e.isBlock(s.parent))break;return void t.replaceNode(r,s,e.factory.createBlock(e.emptyArray))}case 238:case 239:return void t.delete(r,l)}if(e.isBlock(s.parent)){var u=n+i,d=e.Debug.checkDefined(function(e,t){for(var r,n=0,i=e;n<i.length;n++){var a=i[n];if(!t(a))break;r=a}return r}(e.sliceAfter(s.parent.statements,s),(function(e){return e.pos<u})),"Some statement should be last");t.deleteNodeRange(r,s,d)}else t.delete(r,s)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start,n.span.length,n.errorCode)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Remove_unreachable_code,r,e.Diagnostics.Remove_all_unreachable_code)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start,t.length,t.code)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixUnusedLabel",n=[e.Diagnostics.Unused_label.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n),a=e.cast(i.parent,e.isLabeledStatement),o=i.getStart(r),s=a.statement.getStart(r),c=e.positionsAreOnSameLine(o,s,r)?s:e.skipTrivia(r.text,e.findChildOfKind(a,58,r).end,!0);t.deleteRange(r,{pos:o,end:c})}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Remove_unused_label,r,e.Diagnostics.Remove_all_unused_labels)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixJSDocTypes_plain",n="fixJSDocTypes_nullable",i=[e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments.code];function a(e,t,r,n,i){e.replaceNode(t,r,i.typeToTypeNode(n,r,void 0))}function o(t,r,n){var i=e.findAncestor(e.getTokenAtPosition(t,r),s),a=i&&i.type;return a&&{typeNode:a,type:n.getTypeFromTypeNode(a)}}function s(e){switch(e.kind){case 226:case 170:case 171:case 253:case 168:case 172:case 191:case 166:case 165:case 161:case 164:case 163:case 169:case 257:case 207:case 251:return!0;default:return!1}}t.registerCodeFix({errorCodes:i,getCodeActions:function(i){var s=i.sourceFile,c=i.program.getTypeChecker(),l=o(s,i.span.start,c);if(l){var u=l.typeNode,d=l.type,p=u.getText(s),f=[m(d,r,e.Diagnostics.Change_all_jsdoc_style_types_to_TypeScript)];return 308===u.kind&&f.push(m(c.getNullableType(d,32768),n,e.Diagnostics.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),f}function m(r,n,o){var l=e.textChanges.ChangeTracker.with(i,(function(e){return a(e,s,u,r,c)}));return t.createCodeFixAction("jdocTypes",l,[e.Diagnostics.Change_0_to_1,p,c.typeToString(r)],n,o)}},fixIds:[r,n],getAllCodeActions:function(e){var r=e.fixId,s=e.program,c=e.sourceFile,l=s.getTypeChecker();return t.codeFixAll(e,i,(function(e,t){var i=o(t.file,t.start,l);if(i){var s=i.typeNode,u=i.type,d=308===s.kind&&r===n?l.getNullableType(u,32768):u;a(e,c,s,d,l)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixMissingCallParentheses",n=[e.Diagnostics.This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it_instead.code];function i(e,t,r){e.replaceNodeWithText(t,r,r.text+"()")}function a(t,r){var n=e.getTokenAtPosition(t,r);if(e.isPropertyAccessExpression(n.parent)){for(var i=n.parent;e.isPropertyAccessExpression(i.parent);)i=i.parent;return i.name}if(e.isIdentifier(n))return n}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=a(n.sourceFile,n.span.start);if(o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Add_missing_call_parentheses,r,e.Diagnostics.Add_all_missing_call_parentheses)]}},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=a(t.file,t.start);r&&i(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixAwaitInSyncFunction",n=[e.Diagnostics.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,e.Diagnostics.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code];function i(t,r){var n=e.getTokenAtPosition(t,r),i=e.getContainingFunction(n);if(i){var a,o;switch(i.kind){case 166:a=i.name;break;case 253:case 209:a=e.findChildOfKind(i,98,t);break;case 210:a=e.findChildOfKind(i,20,t)||e.first(i.parameters);break;default:return}return a&&{insertBefore:a,returnType:(o=i,o.type?o.type:e.isVariableDeclaration(o.parent)&&o.parent.type&&e.isFunctionTypeNode(o.parent.type)?o.parent.type.type:void 0)}}}function a(t,r,n){var i=n.insertBefore,a=n.returnType;if(a){var o=e.getEntityNameFromTypeNode(a);o&&78===o.kind&&"Promise"===o.text||t.replaceNode(r,a,e.factory.createTypeReferenceNode("Promise",e.factory.createNodeArray([a])))}t.insertModifierBefore(r,130,i)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start);if(c){var l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Add_async_modifier_to_containing_function,r,e.Diagnostics.Add_all_missing_async_modifiers)]}},fixIds:[r],getAllCodeActions:function(r){var o=new e.Map;return t.codeFixAll(r,n,(function(t,n){var s=i(n.file,n.start);s&&e.addToSeen(o,e.getNodeId(s.insertBefore))&&a(t,r.sourceFile,s)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,e.Diagnostics._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],n="fixPropertyOverrideAccessor";function i(r,n,i,a,o){var s,c;if(a===e.Diagnostics._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)s=n,c=n+i;else if(a===e.Diagnostics._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){var l=o.program.getTypeChecker(),u=e.getTokenAtPosition(r,n).parent;e.Debug.assert(e.isAccessor(u),"error span of fixPropertyOverrideAccessor should only be on an accessor");var d=u.parent;e.Debug.assert(e.isClassLike(d),"erroneous accessors should only be inside classes");var p=e.singleOrUndefined(t.getAllSupers(d,l));if(!p)return[];var f=e.unescapeLeadingUnderscores(e.getTextOfPropertyName(u.name)),m=l.getPropertyOfType(l.getTypeAtLocation(p),f);if(!m||!m.valueDeclaration)return[];s=m.valueDeclaration.pos,c=m.valueDeclaration.end,r=e.getSourceFileOfNode(m.valueDeclaration)}else e.Debug.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+a);return t.generateAccessorFromProperty(r,o.program,s,c,o,e.Diagnostics.Generate_get_and_set_accessors.message)}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var a=i(r.sourceFile,r.span.start,r.span.length,r.errorCode,r);if(a)return[t.createCodeFixAction(n,a,e.Diagnostics.Generate_get_and_set_accessors,n,e.Diagnostics.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,r,(function(t,r){var n=i(r.file,r.start,r.length,r.code,e);if(n)for(var a=0,o=n;a<o.length;a++){var s=o[a];t.pushRaw(e.sourceFile,s)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="inferFromUsage",n=[e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,e.Diagnostics.Variable_0_implicitly_has_an_1_type.code,e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code,e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,e.Diagnostics.Member_0_implicitly_has_an_1_type.code,e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];function a(t,r){switch(t){case e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code:case e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.isSetAccessorDeclaration(e.getContainingFunction(r))?e.Diagnostics.Infer_type_of_0_from_usage:e.Diagnostics.Infer_parameter_types_from_usage;case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code:case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Infer_parameter_types_from_usage;case e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return e.Diagnostics.Infer_this_type_of_0_from_usage;default:return e.Diagnostics.Infer_type_of_0_from_usage}}function o(r,n,i,a,o,p,_,h,y){if(e.isParameterPropertyModifier(i.kind)||78===i.kind||25===i.kind||108===i.kind){var v=i.parent,b=t.createImportAdder(n,o,y,h);switch(a=function(t){switch(t){case e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Variable_0_implicitly_has_an_1_type.code;case e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code;case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code;case e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Member_0_implicitly_has_an_1_type.code}return t}(a)){case e.Diagnostics.Member_0_implicitly_has_an_1_type.code:case e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(e.isVariableDeclaration(v)&&_(v)||e.isPropertyDeclaration(v)||e.isPropertySignature(v))return s(r,b,n,v,o,h,p),b.writeFixes(r),v;if(e.isPropertyAccessExpression(v)){var k=f(v.name,o,p),x=e.getTypeNodeIfAccessible(k,v,o,h);if(x){var S=e.factory.createJSDocTypeTag(void 0,e.factory.createJSDocTypeExpression(x),"");d(r,n,e.cast(v.parent.parent,e.isExpressionStatement),[S])}return b.writeFixes(r),v}return;case e.Diagnostics.Variable_0_implicitly_has_an_1_type.code:var w=o.getTypeChecker().getSymbolAtLocation(i);return w&&w.valueDeclaration&&e.isVariableDeclaration(w.valueDeclaration)&&_(w.valueDeclaration)?(s(r,b,n,w.valueDeclaration,o,h,p),b.writeFixes(r),w.valueDeclaration):void 0}var D=e.getContainingFunction(i);if(void 0!==D){var E;switch(a){case e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code:if(e.isSetAccessorDeclaration(D)){c(r,b,n,D,o,h,p),E=D;break}case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code:if(_(D)){var T=e.cast(v,e.isParameter);!function(t,r,n,i,a,o,s,c){if(!e.isIdentifier(i.name))return;var d=function(t,r,n,i){var a=m(t,r,n,i);return a&&g(n,a,i).parameters(t)||t.parameters.map((function(t){return{declaration:t,type:e.isIdentifier(t.name)?f(t.name,n,i):n.getTypeChecker().getAnyType()}}))}(a,n,o,c);if(e.Debug.assert(a.parameters.length===d.length,"Parameter count and inference count should match"),e.isInJSFile(a))u(t,n,d,o,s);else{var p=e.isArrowFunction(a)&&!e.findChildOfKind(a,20,n);p&&t.insertNodeBefore(n,e.first(a.parameters),e.factory.createToken(20));for(var _=0,h=d;_<h.length;_++){var y=h[_],v=y.declaration,b=y.type;!v||v.type||v.initializer||l(t,r,n,v,b,o,s)}p&&t.insertNodeAfter(n,e.last(a.parameters),e.factory.createToken(21))}}(r,b,n,T,D,o,h,p),E=T}break;case e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:e.isGetAccessorDeclaration(D)&&e.isIdentifier(D.name)&&(l(r,b,n,D,f(D.name,o,p),o,h),E=D);break;case e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:e.isSetAccessorDeclaration(D)&&(c(r,b,n,D,o,h,p),E=D);break;case e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:e.textChanges.isThisTypeAnnotatable(D)&&_(D)&&(!function(t,r,n,i,a,o){var s=m(n,r,i,o);if(!s||!s.length)return;var c=g(i,s,o).thisParameter(),l=e.getTypeNodeIfAccessible(c,n,i,a);if(!l)return;e.isInJSFile(n)?function(t,r,n,i){d(t,r,n,[e.factory.createJSDocThisTag(void 0,e.factory.createJSDocTypeExpression(i))])}(t,r,n,l):t.tryInsertThisTypeAnnotation(r,n,l)}(r,n,D,o,h,p),E=D);break;default:return e.Debug.fail(String(a))}return b.writeFixes(r),E}}}function s(t,r,n,i,a,o,s){e.isIdentifier(i.name)&&l(t,r,n,i,f(i.name,a,s),a,o)}function c(t,r,n,i,a,o,s){var c=e.firstOrUndefined(i.parameters);if(c&&e.isIdentifier(i.name)&&e.isIdentifier(c.name)){var d=f(i.name,a,s);d===a.getTypeChecker().getAnyType()&&(d=f(c.name,a,s)),e.isInJSFile(i)?u(t,n,[{declaration:c,type:d}],a,o):l(t,r,n,c,d,a,o)}}function l(r,n,i,a,o,s,c){var l=e.getTypeNodeIfAccessible(o,a,s,c);if(l)if(e.isInJSFile(i)&&163!==a.kind){var u=e.isVariableDeclaration(a)?e.tryCast(a.parent.parent,e.isVariableStatement):a;if(!u)return;var p=e.factory.createJSDocTypeExpression(l);d(r,i,u,[e.isGetAccessorDeclaration(a)?e.factory.createJSDocReturnTag(void 0,p,""):e.factory.createJSDocTypeTag(void 0,p,"")])}else(function(r,n,i,a,o,s){var c=t.tryGetAutoImportableReferenceFromTypeNode(r,s);if(c&&a.tryInsertTypeAnnotation(i,n,c.typeNode))return e.forEach(c.symbols,(function(e){return o.addImportFromExportedSymbol(e,!0)})),!0;return!1})(l,a,i,r,n,e.getEmitScriptTarget(s.getCompilerOptions()))||r.tryInsertTypeAnnotation(i,a,l)}function u(t,r,n,i,a){var o=n.length&&n[0].declaration.parent;if(o){var s=e.mapDefined(n,(function(t){var r=t.declaration;if(!r.initializer&&!e.getJSDocType(r)&&e.isIdentifier(r.name)){var n=t.type&&e.getTypeNodeIfAccessible(t.type,r,i,a);if(n){var o=e.factory.cloneNode(r.name);return e.setEmitFlags(o,3584),{name:e.factory.cloneNode(r.name),param:r,isOptional:!!t.isOptional,typeNode:n}}}}));if(s.length)if(e.isArrowFunction(o)||e.isFunctionExpression(o)){var c=e.isArrowFunction(o)&&!e.findChildOfKind(o,20,r);c&&t.insertNodeBefore(r,e.first(o.parameters),e.factory.createToken(20)),e.forEach(s,(function(n){var i=n.typeNode,a=n.param,o=e.factory.createJSDocTypeTag(void 0,e.factory.createJSDocTypeExpression(i)),s=e.factory.createJSDocComment(void 0,[o]);t.insertNodeAt(r,a.getStart(r),s,{suffix:" "})})),c&&t.insertNodeAfter(r,e.last(o.parameters),e.factory.createToken(21))}else{var l=e.map(s,(function(t){var r=t.name,n=t.typeNode,i=t.isOptional;return e.factory.createJSDocParameterTag(void 0,r,!!i,e.factory.createJSDocTypeExpression(n),!1,"")}));d(t,r,o,l)}}}function d(t,r,n,a){var o=e.mapDefined(n.jsDoc,(function(e){return e.comment})),s=e.flatMapToMutable(n.jsDoc,(function(e){return e.tags})),c=a.filter((function(t){return!s||!s.some((function(r,n){var i=function(t,r){if(t.kind!==r.kind)return;switch(t.kind){case 329:var n=t,i=r;return e.isIdentifier(n.name)&&e.isIdentifier(i.name)&&n.name.escapedText===i.name.escapedText?e.factory.createJSDocParameterTag(void 0,i.name,!1,i.typeExpression,i.isNameFirst,n.comment):void 0;case 330:return e.factory.createJSDocReturnTag(void 0,r.typeExpression,t.comment)}}(r,t);return i&&(s[n]=i),!!i}))})),l=e.factory.createJSDocComment(o.join("\n"),e.factory.createNodeArray(i(i([],s||e.emptyArray),c))),u=210===n.kind?function(e){if(164===e.parent.kind)return e.parent;return e.parent.parent}(n):n;u.jsDoc=n.jsDoc,u.jsDocCache=n.jsDocCache,t.insertJsdocCommentBefore(r,u,l)}function p(t,r,n){return e.mapDefined(e.FindAllReferences.getReferenceEntriesForNode(-1,t,r,r.getSourceFiles(),n),(function(t){return 0!==t.kind?e.tryCast(t.node,e.isIdentifier):void 0}))}function f(e,t,r){return g(t,p(e,t,r),r).single()}function m(t,r,n,i){var a;switch(t.kind){case 167:a=e.findChildOfKind(t,133,r);break;case 210:case 209:var o=t.parent;a=(e.isVariableDeclaration(o)||e.isPropertyDeclaration(o))&&e.isIdentifier(o.name)?o.name:t.name;break;case 253:case 166:case 165:a=t.name}if(a)return p(a,n,i)}function g(t,r,n){var a=t.getTypeChecker(),o={string:function(){return a.getStringType()},number:function(){return a.getNumberType()},Array:function(e){return a.createArrayType(e)},Promise:function(e){return a.createPromiseType(e)}},s=[a.getStringType(),a.getNumberType(),a.createArrayType(a.getAnyType()),a.createPromiseType(a.getAnyType())];return{single:function(){return g(u(r))},parameters:function(o){if(0===r.length||!o.parameters)return;for(var s=c(),l=0,f=r;l<f.length;l++){var m=f[l];n.throwIfCancellationRequested(),d(m,s)}var _=i(i([],s.constructs||[]),s.calls||[]);return o.parameters.map((function(r,i){for(var s=[],c=e.isRestParameter(r),l=!1,d=0,f=_;d<f.length;d++){var m=f[d];if(m.argumentTypes.length<=i)l=e.isInJSFile(o),s.push(a.getUndefinedType());else if(c)for(var h=i;h<m.argumentTypes.length;h++)s.push(a.getBaseTypeOfLiteralType(m.argumentTypes[h]));else s.push(a.getBaseTypeOfLiteralType(m.argumentTypes[i]))}if(e.isIdentifier(r.name)){var y=u(p(r.name,t,n));s.push.apply(s,c?e.mapDefined(y,a.getElementTypeOfArrayType):y)}var v=g(s);return{type:c?a.createArrayType(v):v,isOptional:l&&!c,declaration:r}}))},thisParameter:function(){for(var t=c(),i=0,a=r;i<a.length;i++){var o=a[i];n.throwIfCancellationRequested(),d(o,t)}return g(t.candidateThisTypes||e.emptyArray)}};function c(){return{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}}function l(t){for(var r=new e.Map,n=0,i=t;n<i.length;n++){var a=i[n];a.properties&&a.properties.forEach((function(e,t){r.has(t)||r.set(t,[]),r.get(t).push(e)}))}var o=new e.Map;return r.forEach((function(e,t){o.set(t,l(e))})),{isNumber:t.some((function(e){return e.isNumber})),isString:t.some((function(e){return e.isString})),isNumberOrString:t.some((function(e){return e.isNumberOrString})),candidateTypes:e.flatMap(t,(function(e){return e.candidateTypes})),properties:o,calls:e.flatMap(t,(function(e){return e.calls})),constructs:e.flatMap(t,(function(e){return e.constructs})),numberIndex:e.forEach(t,(function(e){return e.numberIndex})),stringIndex:e.forEach(t,(function(e){return e.stringIndex})),candidateThisTypes:e.flatMap(t,(function(e){return e.candidateThisTypes})),inferredTypes:void 0}}function u(e){for(var t={isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0},r=0,i=e;r<i.length;r++){var a=i[r];n.throwIfCancellationRequested(),d(a,t)}return _(t)}function d(t,r){for(;e.isRightSideOfQualifiedNameOrPropertyAccess(t);)t=t.parent;switch(t.parent.kind){case 235:!function(t,r){v(r,e.isCallExpression(t)?a.getVoidType():a.getAnyType())}(t,r);break;case 217:r.isNumber=!0;break;case 216:!function(e,t){switch(e.operator){case 45:case 46:case 40:case 54:t.isNumber=!0;break;case 39:t.isNumberOrString=!0}}(t.parent,r);break;case 218:!function(t,r,n){switch(r.operatorToken.kind){case 42:case 41:case 43:case 44:case 47:case 48:case 49:case 50:case 51:case 52:case 64:case 66:case 65:case 67:case 68:case 72:case 73:case 77:case 69:case 71:case 70:case 40:case 29:case 32:case 31:case 33:var i=a.getTypeAtLocation(r.left===t?r.right:r.left);1056&i.flags?v(n,i):n.isNumber=!0;break;case 63:case 39:var o=a.getTypeAtLocation(r.left===t?r.right:r.left);1056&o.flags?v(n,o):296&o.flags?n.isNumber=!0:402653316&o.flags?n.isString=!0:1&o.flags||(n.isNumberOrString=!0);break;case 62:case 34:case 36:case 37:case 35:v(n,a.getTypeAtLocation(r.left===t?r.right:r.left));break;case 101:t===r.left&&(n.isString=!0);break;case 56:case 60:t!==r.left||251!==t.parent.parent.kind&&!e.isAssignmentExpression(t.parent.parent,!0)||v(n,a.getTypeAtLocation(r.right))}}(t,t.parent,r);break;case 287:case 288:!function(e,t){v(t,a.getTypeAtLocation(e.parent.parent.expression))}(t.parent,r);break;case 204:case 205:t.parent.expression===t?function(e,t){var r={argumentTypes:[],return_:{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}};if(e.arguments)for(var n=0,i=e.arguments;n<i.length;n++){var o=i[n];r.argumentTypes.push(a.getTypeAtLocation(o))}d(e,r.return_),204===e.kind?(t.calls||(t.calls=[])).push(r):(t.constructs||(t.constructs=[])).push(r)}(t.parent,r):f(t,r);break;case 202:!function(t,r){var n=e.escapeLeadingUnderscores(t.name.text);r.properties||(r.properties=new e.Map);var i=r.properties.get(n)||{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};d(t,i),r.properties.set(n,i)}(t.parent,r);break;case 203:!function(e,t,r){if(t===e.argumentExpression)return void(r.isNumberOrString=!0);var n=a.getTypeAtLocation(e.argumentExpression),i={isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};d(e,i),296&n.flags?r.numberIndex=i:r.stringIndex=i}(t.parent,t,r);break;case 291:case 292:!function(t,r){var n=e.isVariableDeclaration(t.parent.parent)?t.parent.parent:t.parent;b(r,a.getTypeAtLocation(n))}(t.parent,r);break;case 164:!function(e,t){b(t,a.getTypeAtLocation(e.parent))}(t.parent,r);break;case 251:var n=t.parent,i=n.name,o=n.initializer;if(t===i){o&&v(r,a.getTypeAtLocation(o));break}default:return f(t,r)}}function f(t,r){e.isExpressionNode(t)&&v(r,a.getContextualType(t))}function m(e){return g(_(e))}function g(t){if(!t.length)return a.getAnyType();var r=a.getUnionType([a.getStringType(),a.getNumberType()]),n=function(t,r){for(var n=[],i=0,a=t;i<a.length;i++)for(var o=a[i],s=0,c=r;s<c.length;s++){var l=c[s],u=l.high,d=l.low;u(o)&&(e.Debug.assert(!d(o),"Priority can't have both low and high"),n.push(d))}return t.filter((function(e){return n.every((function(t){return!t(e)}))}))}(t,[{high:function(e){return e===a.getStringType()||e===a.getNumberType()},low:function(e){return e===r}},{high:function(e){return!(16385&e.flags)},low:function(e){return!!(16385&e.flags)}},{high:function(t){return!(114689&t.flags||16&e.getObjectFlags(t))},low:function(t){return!!(16&e.getObjectFlags(t))}}]),i=n.filter((function(t){return 16&e.getObjectFlags(t)}));return i.length&&(n=n.filter((function(t){return!(16&e.getObjectFlags(t))}))).push(function(t){if(1===t.length)return t[0];for(var r=[],n=[],i=[],o=[],s=!1,c=!1,l=e.createMultiMap(),u=0,d=t;u<d.length;u++){for(var p=d[u],f=0,m=a.getPropertiesOfType(p);f<m.length;f++){var g=m[f];l.add(g.name,a.getTypeOfSymbolAtLocation(g,g.valueDeclaration))}r.push.apply(r,a.getSignaturesOfType(p,0)),n.push.apply(n,a.getSignaturesOfType(p,1)),p.stringIndexInfo&&(i.push(p.stringIndexInfo.type),s=s||p.stringIndexInfo.isReadonly),p.numberIndexInfo&&(o.push(p.numberIndexInfo.type),c=c||p.numberIndexInfo.isReadonly)}var _=e.mapEntries(l,(function(e,r){var n=r.length<t.length?16777216:0,i=a.createSymbol(4|n,e);return i.type=a.getUnionType(r),[e,i]}));return a.createAnonymousType(t[0].symbol,_,r,n,i.length?a.createIndexInfo(a.getUnionType(i),s):void 0,o.length?a.createIndexInfo(a.getUnionType(o),c):void 0)}(i)),a.getWidenedType(a.getUnionType(n.map(a.getBaseTypeOfLiteralType),2))}function _(t){var r,n,i,c=[];return t.isNumber&&c.push(a.getNumberType()),t.isString&&c.push(a.getStringType()),t.isNumberOrString&&c.push(a.getUnionType([a.getStringType(),a.getNumberType()])),t.numberIndex&&c.push(a.createArrayType(m(t.numberIndex))),((null===(r=t.properties)||void 0===r?void 0:r.size)||(null===(n=t.calls)||void 0===n?void 0:n.length)||(null===(i=t.constructs)||void 0===i?void 0:i.length)||t.stringIndex)&&c.push(function(t){var r=new e.Map;t.properties&&t.properties.forEach((function(e,t){var n=a.createSymbol(4,t);n.type=m(e),r.set(t,n)}));var n=t.calls?[y(t.calls)]:[],i=t.constructs?[y(t.constructs)]:[],o=t.stringIndex&&a.createIndexInfo(m(t.stringIndex),!1);return a.createAnonymousType(void 0,r,n,i,o,void 0)}(t)),c.push.apply(c,(t.candidateTypes||[]).map((function(e){return a.getBaseTypeOfLiteralType(e)}))),c.push.apply(c,function(t){if(!t.properties||!t.properties.size)return[];var r=s.filter((function(r){return function(t,r){return!!r.properties&&!e.forEachEntry(r.properties,(function(r,n){var i,o=a.getTypeOfPropertyOfType(t,n);return!o||(r.calls?!a.getSignaturesOfType(o,0).length||!a.isTypeAssignableTo(o,(i=r.calls,a.createAnonymousType(void 0,e.createSymbolTable(),[y(i)],e.emptyArray,void 0,void 0))):!a.isTypeAssignableTo(o,m(r)))}))}(r,t)}));if(0<r.length&&r.length<3)return r.map((function(r){return function(t,r){if(!(4&e.getObjectFlags(t)&&r.properties))return t;var n=t.target,i=e.singleOrUndefined(n.typeParameters);if(!i)return t;var s=[];return r.properties.forEach((function(t,r){var o=a.getTypeOfPropertyOfType(n,r);e.Debug.assert(!!o,"generic should have all the properties of its reference."),s.push.apply(s,h(o,m(t),i))})),o[t.symbol.escapedName](g(s))}(r,t)}));return[]}(t)),c}function h(t,r,n){if(t===n)return[r];if(3145728&t.flags)return e.flatMap(t.types,(function(e){return h(e,r,n)}));if(4&e.getObjectFlags(t)&&4&e.getObjectFlags(r)){var i=a.getTypeArguments(t),o=a.getTypeArguments(r),s=[];if(i&&o)for(var c=0;c<i.length;c++)o[c]&&s.push.apply(s,h(i[c],o[c],n));return s}var l=a.getSignaturesOfType(t,0),u=a.getSignaturesOfType(r,0);return 1===l.length&&1===u.length?function(t,r,n){for(var i=[],o=0;o<t.parameters.length;o++){var s=t.parameters[o],c=r.parameters[o],l=t.declaration&&e.isRestParameter(t.declaration.parameters[o]);if(!c)break;var u=a.getTypeOfSymbolAtLocation(s,s.valueDeclaration),d=l&&a.getElementTypeOfArrayType(u);d&&(u=d);var p=c.type||a.getTypeOfSymbolAtLocation(c,c.valueDeclaration);i.push.apply(i,h(u,p,n))}var f=a.getReturnTypeOfSignature(t),m=a.getReturnTypeOfSignature(r);return i.push.apply(i,h(f,m,n)),i}(l[0],u[0],n):[]}function y(t){for(var r=[],n=Math.max.apply(Math,t.map((function(e){return e.argumentTypes.length}))),i=function(n){var i=a.createSymbol(1,e.escapeLeadingUnderscores("arg"+n));i.type=g(t.map((function(e){return e.argumentTypes[n]||a.getUndefinedType()}))),t.some((function(e){return void 0===e.argumentTypes[n]}))&&(i.flags|=16777216),r.push(i)},o=0;o<n;o++)i(o);var s=m(l(t.map((function(e){return e.return_}))));return a.createSignature(void 0,void 0,void 0,r,s,void 0,n,0)}function v(e,t){!t||1&t.flags||131072&t.flags||(e.candidateTypes||(e.candidateTypes=[])).push(t)}function b(e,t){!t||1&t.flags||131072&t.flags||(e.candidateThisTypes||(e.candidateThisTypes=[])).push(t)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i,s=n.sourceFile,c=n.program,l=n.span.start,u=n.errorCode,d=n.cancellationToken,p=n.host,f=n.preferences,m=e.getTokenAtPosition(s,l),g=e.textChanges.ChangeTracker.with(n,(function(t){i=o(t,s,m,u,c,d,e.returnTrue,p,f)})),_=i&&e.getNameOfDeclaration(i);return _&&0!==g.length?[t.createCodeFixAction(r,g,[a(u,m),_.getText(s)],r,e.Diagnostics.Infer_all_types_from_usage)]:void 0},fixIds:[r],getAllCodeActions:function(r){var i=r.sourceFile,a=r.program,s=r.cancellationToken,c=r.host,l=r.preferences,u=e.nodeSeenTracker();return t.codeFixAll(r,n,(function(t,r){o(t,i,e.getTokenAtPosition(r.file,r.start),r.code,a,s,u,c,l)}))}}),t.addJSDocTags=d}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixReturnTypeInAsyncFunction",n=[e.Diagnostics.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];function i(t,r,n){if(!e.isInJSFile(t)){var i=e.getTokenAtPosition(t,n),a=e.findAncestor(i,e.isFunctionLikeDeclaration),o=null==a?void 0:a.type;if(o){var s=r.getTypeFromTypeNode(o),c=r.getAwaitedType(s)||r.getVoidType(),l=r.typeToTypeNode(c,o,void 0);return l?{returnTypeNode:o,returnType:s,promisedTypeNode:l,promisedType:c}:void 0}}}function a(t,r,n,i){t.replaceNode(r,n,e.factory.createTypeReferenceNode("Promise",[i]))}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=n.sourceFile,s=n.program,c=n.span,l=s.getTypeChecker(),u=i(o,s.getTypeChecker(),c.start);if(u){var d=u.returnTypeNode,p=u.returnType,f=u.promisedTypeNode,m=u.promisedType,g=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,d,f)}));return[t.createCodeFixAction(r,g,[e.Diagnostics.Replace_0_with_Promise_1,l.typeToString(p),l.typeToString(m)],r,e.Diagnostics.Fix_all_incorrect_return_type_of_an_async_functions)]}},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,e.program.getTypeChecker(),r.start);n&&a(t,r.file,n.returnTypeNode,n.promisedTypeNode)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="disableJsDiagnostics",n="disableJsDiagnostics",i=e.mapDefined(Object.keys(e.Diagnostics),(function(t){var r=e.Diagnostics[t];return r.category===e.DiagnosticCategory.Error?r.code:void 0}));function a(t,r,n,i){var a=e.getLineAndCharacterOfPosition(r,n).line;i&&!e.tryAddToSet(i,a)||t.insertCommentBeforeLine(r,a,n," @ts-ignore")}t.registerCodeFix({errorCodes:i,getCodeActions:function(i){var o=i.sourceFile,s=i.program,c=i.span,l=i.host,u=i.formatContext;if(e.isInJSFile(o)&&e.isCheckJsEnabledForFile(o,s.getCompilerOptions())){var d=o.checkJsDirective?"":e.getNewLineOrDefaultFromHost(l,u.options),p=[t.createCodeFixActionWithoutFixAll(r,[t.createFileTextChanges(o.fileName,[e.createTextChange(o.checkJsDirective?e.createTextSpanFromBounds(o.checkJsDirective.pos,o.checkJsDirective.end):e.createTextSpan(0,0),"// @ts-nocheck"+d)])],e.Diagnostics.Disable_checking_for_this_file)];return e.textChanges.isValidLocationToAddComment(o,c.start)&&p.unshift(t.createCodeFixAction(r,e.textChanges.ChangeTracker.with(i,(function(e){return a(e,o,c.start)})),e.Diagnostics.Ignore_this_error_message,n,e.Diagnostics.Add_ts_ignore_to_all_error_messages)),p}},fixIds:[n],getAllCodeActions:function(r){var n=new e.Set;return t.codeFixAll(r,i,(function(t,r){e.textChanges.isValidLocationToAddComment(r.file,r.start)&&a(t,r.file,r.start,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){function r(t){return{trackSymbol:e.noop,moduleResolverHost:e.getModuleSpecifierResolverHost(t.program,t.host)}}function n(t,n,i,s,c,l,u){var p=t.getDeclarations();if(p&&p.length){var m=s.program.getTypeChecker(),g=e.getEmitScriptTarget(s.program.getCompilerOptions()),_=p[0],h=e.getSynthesizedDeepClone(e.getNameOfDeclaration(_),!1),y=function(t){if(4&t)return e.factory.createToken(123);if(16&t)return e.factory.createToken(122);return}(e.getEffectiveModifierFlags(_)),v=y?e.factory.createNodeArray([y]):void 0,b=m.getWidenedType(m.getTypeOfSymbolAtLocation(t,n)),k=!!(16777216&t.flags),x=!!(8388608&n.flags),S=e.getQuotePreference(i,c);switch(_.kind){case 163:case 164:var w=0===S?268435456:void 0,D=m.typeToTypeNode(b,n,w,r(s));if(l)(E=d(D,g))&&(D=E.typeNode,f(l,E.symbols));u(e.factory.createPropertyDeclaration(void 0,v,h,k?e.factory.createToken(57):void 0,D,void 0));break;case 168:case 169:var E,T=m.typeToTypeNode(b,n,void 0,r(s)),C=e.getAllAccessorDeclarations(p,_),A=C.secondAccessor?[C.firstAccessor,C.secondAccessor]:[C.firstAccessor];if(l)(E=d(T,g))&&(T=E.typeNode,f(l,E.symbols));for(var N=0,P=A;N<P.length;N++){var I=P[N];if(e.isGetAccessorDeclaration(I))u(e.factory.createGetAccessorDeclaration(void 0,v,h,e.emptyArray,T,x?void 0:o(S)));else{e.Debug.assertNode(I,e.isSetAccessorDeclaration,"The counterpart to a getter should be a setter");var F=e.getSetAccessorValueParameter(I),O=F&&e.isIdentifier(F.name)?e.idText(F.name):void 0;u(e.factory.createSetAccessorDeclaration(void 0,v,h,a(1,[O],[T],1,!1),x?void 0:o(S)))}}break;case 165:case 166:var R=m.getSignaturesOfType(b,0);if(!e.some(R))break;if(1===p.length){e.Debug.assert(1===R.length,"One declaration implies one signature"),j(S,R[0],v,h,x?void 0:o(S));break}for(var M=0,L=R;M<L.length;M++){j(S,L[M],e.getSynthesizedDeepClones(v,!1),e.getSynthesizedDeepClone(h,!1))}if(!x)if(p.length>R.length)j(S,m.getSignatureFromDeclaration(p[p.length-1]),v,h,o(S));else e.Debug.assert(p.length===R.length,"Declarations and signatures should match count"),u(function(t,r,n,i,s){for(var c=t[0],l=t[0].minArgumentCount,u=!1,d=0,p=t;d<p.length;d++){var f=p[d];l=Math.min(f.minArgumentCount,l),e.signatureHasRestParameter(f)&&(u=!0),f.parameters.length>=c.parameters.length&&(!e.signatureHasRestParameter(f)||e.signatureHasRestParameter(c))&&(c=f)}var m=c.parameters.length-(e.signatureHasRestParameter(c)?1:0),g=c.parameters.map((function(e){return e.name})),_=a(m,g,void 0,l,!1);if(u){var h=e.factory.createArrayTypeNode(e.factory.createKeywordTypeNode(129)),y=e.factory.createParameterDeclaration(void 0,void 0,e.factory.createToken(25),g[m]||"rest",m>=l?e.factory.createToken(57):void 0,h,void 0);_.push(y)}return function(t,r,n,i,a,s,c){return e.factory.createMethodDeclaration(void 0,t,void 0,r,n?e.factory.createToken(57):void 0,i,a,s,o(c))}(i,r,n,void 0,_,void 0,s)}(R,h,k,v,S))}}function j(t,i,a,o,c){var p=function(t,n,i,a,o,s,c,l,u){var p=t.program,m=p.getTypeChecker(),g=e.getEmitScriptTarget(p.getCompilerOptions()),_=1073742081|(0===n?268435456:0),h=m.signatureToSignatureDeclaration(i,166,a,_,r(t));if(!h)return;var y=h.typeParameters,v=h.parameters,b=h.type;if(u){if(y){var k=e.sameMap(y,(function(t){var r,n=t.constraint,i=t.default;n&&((r=d(n,g))&&(n=r.typeNode,f(u,r.symbols)));i&&((r=d(i,g))&&(i=r.typeNode,f(u,r.symbols)));return e.factory.updateTypeParameterDeclaration(t,t.name,n,i)}));y!==k&&(y=e.setTextRange(e.factory.createNodeArray(k,y.hasTrailingComma),y))}var x=e.sameMap(v,(function(t){var r=d(t.type,g),n=t.type;return r&&(n=r.typeNode,f(u,r.symbols)),e.factory.updateParameterDeclaration(t,t.decorators,t.modifiers,t.dotDotDotToken,t.name,t.questionToken,n,t.initializer)}));if(v!==x&&(v=e.setTextRange(e.factory.createNodeArray(x,v.hasTrailingComma),v)),b){var S=d(b,g);S&&(b=S.typeNode,f(u,S.symbols))}}return e.factory.updateMethodDeclaration(h,void 0,o,h.asteriskToken,s,c?e.factory.createToken(57):void 0,y,v,b,l)}(s,t,i,n,a,o,k,c,l);p&&u(p)}}function i(t,r,n,i,a,o,s){var c=t.typeToTypeNode(n,i,o,s);if(c&&e.isImportTypeNode(c)){var l=d(c,a);if(l)return f(r,l.symbols),l.typeNode}return c}function a(t,r,n,i,a){for(var o=[],s=0;s<t;s++){var c=e.factory.createParameterDeclaration(void 0,void 0,void 0,r&&r[s]||"arg"+s,void 0!==i&&s>=i?e.factory.createToken(57):void 0,a?void 0:n&&n[s]||e.factory.createKeywordTypeNode(129),void 0);o.push(c)}return o}function o(t){return s(e.Diagnostics.Method_not_implemented.message,t)}function s(t,r){return e.factory.createBlock([e.factory.createThrowStatement(e.factory.createNewExpression(e.factory.createIdentifier("Error"),void 0,[e.factory.createStringLiteral(t,0===r)]))],!0)}function c(t,r,n){var i=e.getTsConfigObjectLiteralExpression(r);if(i){var a=u(i,"compilerOptions");if(void 0!==a){var o=a.initializer;if(e.isObjectLiteralExpression(o))for(var s=0,c=n;s<c.length;s++){var d=c[s],p=d[0],f=d[1],m=u(o,p);void 0===m?t.insertNodeAtObjectStart(r,o,l(p,f)):t.replaceNode(r,m.initializer,f)}}else t.insertNodeAtObjectStart(r,i,l("compilerOptions",e.factory.createObjectLiteralExpression(n.map((function(e){return l(e[0],e[1])})),!0)))}}function l(t,r){return e.factory.createPropertyAssignment(e.factory.createStringLiteral(t),r)}function u(t,r){return e.find(t.properties,(function(t){return e.isPropertyAssignment(t)&&!!t.name&&e.isStringLiteral(t.name)&&t.name.text===r}))}function d(t,r){var n,i=e.visitNode(t,(function t(i){var a;if(e.isLiteralImportTypeNode(i)&&i.qualifier){var o=e.getFirstIdentifier(i.qualifier),s=e.getNameForExportedSymbol(o.symbol,r),c=s!==o.text?p(i.qualifier,e.factory.createIdentifier(s)):i.qualifier;n=e.append(n,o.symbol);var l=null===(a=i.typeArguments)||void 0===a?void 0:a.map(t);return e.factory.createTypeReferenceNode(c,l)}return e.visitEachChild(i,t,e.nullTransformationContext)}));if(n&&i)return{typeNode:i,symbols:n}}function p(t,r){return 78===t.kind?r:e.factory.createQualifiedName(p(t.left,r),t.right)}function f(e,t){t.forEach((function(t){return e.addImportFromExportedSymbol(t,!0)}))}t.createMissingMemberNodes=function(e,t,r,i,a,o,s){for(var c=e.symbol.members,l=0,u=t;l<u.length;l++){var d=u[l];c.has(d.escapedName)||n(d,e,r,i,a,o,s)}},t.getNoopSymbolTrackerWithResolver=r,t.createSignatureDeclarationFromCallExpression=function(t,n,c,l,u,d,p){var f=e.getQuotePreference(n.sourceFile,n.preferences),m=e.getEmitScriptTarget(n.program.getCompilerOptions()),g=r(n),_=n.program.getTypeChecker(),h=e.isInJSFile(p),y=l.typeArguments,v=l.arguments,b=l.parent,k=h?void 0:_.getContextualType(l),x=e.map(v,(function(t){return e.isIdentifier(t)?t.text:e.isPropertyAccessExpression(t)&&e.isIdentifier(t.name)?t.name.text:void 0})),S=h?[]:e.map(v,(function(e){return i(_,c,_.getBaseTypeOfLiteralType(_.getTypeAtLocation(e)),p,m,void 0,g)})),w=d?e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(d)):void 0,D=e.isYieldExpression(b)?e.factory.createToken(41):void 0,E=h||void 0===y?void 0:e.map(y,(function(t,r){return e.factory.createTypeParameterDeclaration(84+y.length-1<=90?String.fromCharCode(84+r):"T"+r)})),T=a(v.length,x,S,void 0,h),C=h||void 0===k?void 0:_.typeToTypeNode(k,p,void 0,g);return 166===t?e.factory.createMethodDeclaration(void 0,w,D,u,void 0,E,T,C,e.isInterfaceDeclaration(p)?void 0:o(f)):e.factory.createFunctionDeclaration(void 0,w,D,u,E,T,C,s(e.Diagnostics.Function_not_implemented.message,f))},t.typeToAutoImportableTypeNode=i,t.createStubbedBody=s,t.setJsonCompilerOptionValues=c,t.setJsonCompilerOptionValue=function(e,t,r,n){c(e,t,[[r,n]])},t.createJsonPropertyAssignment=l,t.findJsonProperty=u,t.tryGetAutoImportableReferenceFromTypeNode=d,t.importSymbols=f}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){function r(t){return e.isParameterPropertyDeclaration(t,t.parent)||e.isPropertyDeclaration(t)||e.isPropertyAssignment(t)}function n(t,r){return e.isIdentifier(r)?e.factory.createIdentifier(t):e.factory.createStringLiteral(t)}function a(t,r,n){var i=r?n.name:e.factory.createThis();return e.isIdentifier(t)?e.factory.createPropertyAccessExpression(i,t):e.factory.createElementAccessExpression(i,e.factory.createStringLiteralFromNode(t))}function o(t){return t?e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(t)):void 0}function s(t,i,a,o,s){void 0===s&&(s=!0);var c=e.getTokenAtPosition(t,a),u=a===o&&s,d=e.findAncestor(c.parent,r);if(!d||!e.nodeOverlapsWithStartEnd(d.name,t,a,o)&&!u)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_property_for_which_to_generate_accessor)};if(!function(t){return e.isIdentifier(t)||e.isStringLiteral(t)}(d.name))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Name_is_not_valid)};if(124!=(124|e.getEffectiveModifierFlags(d)))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Can_only_convert_property_with_modifier)};var p=d.name.text,f=e.startsWithUnderscore(p),m=n(f?p:e.getUniqueName("_"+p,t),d.name),g=n(f?e.getUniqueName(p.substring(1),t):p,d.name);return{isStatic:e.hasStaticModifier(d),isReadonly:e.hasEffectiveReadonlyModifier(d),type:l(d,i),container:161===d.kind?d.parent.parent:d.parent,originalName:d.name.text,declaration:d,fieldName:m,accessorName:g,renameAccessor:f}}function c(t,r,n,i,a){e.isParameterPropertyDeclaration(i,i.parent)?t.insertNodeAtClassStart(r,a,n):e.isPropertyAssignment(i)?t.insertNodeAfterComma(r,i,n):t.insertNodeAfter(r,i,n)}function l(t,r){var n=e.getTypeAnnotationNode(t);if(e.isPropertyDeclaration(t)&&n&&t.questionToken){var a=r.getTypeChecker(),o=a.getTypeFromTypeNode(n);if(!a.isTypeAssignableTo(a.getUndefinedType(),o)){var s=e.isUnionTypeNode(n)?n.types:[n];return e.factory.createUnionTypeNode(i(i([],s),[e.factory.createKeywordTypeNode(151)]))}}return n}t.generateAccessorFromProperty=function(t,r,n,i,l,u){var d=s(t,r,n,i);if(d&&!e.refactor.isRefactorErrorInfo(d)){var p,f,m=e.textChanges.ChangeTracker.fromContext(l),g=d.isStatic,_=d.isReadonly,h=d.fieldName,y=d.accessorName,v=d.originalName,b=d.type,k=d.container,x=d.declaration;if(e.suppressLeadingAndTrailingTrivia(h),e.suppressLeadingAndTrailingTrivia(y),e.suppressLeadingAndTrailingTrivia(x),e.suppressLeadingAndTrailingTrivia(k),e.isClassLike(k)){var S=e.getEffectiveModifierFlags(x);if(e.isSourceFileJS(t)){var w=o(S);p=w,f=w}else p=o(function(e){e&=-65,e&=-9,16&e||(e|=4);return e}(S)),f=o(function(e){return e&=-5,e&=-17,e|=8,e}(S))}!function(t,r,n,i,a,o){e.isPropertyDeclaration(n)?function(t,r,n,i,a,o){var s=e.factory.updatePropertyDeclaration(n,n.decorators,o,a,n.questionToken||n.exclamationToken,i,n.initializer);t.replaceNode(r,n,s)}(t,r,n,i,a,o):e.isPropertyAssignment(n)?function(t,r,n,i){var a=e.factory.updatePropertyAssignment(n,i,n.initializer);t.replacePropertyAssignment(r,n,a)}(t,r,n,a):t.replaceNode(r,n,e.factory.updateParameterDeclaration(n,n.decorators,o,n.dotDotDotToken,e.cast(a,e.isIdentifier),n.questionToken,n.type,n.initializer))}(m,t,x,b,h,f);var D=function(t,r,n,i,o,s){return e.factory.createGetAccessorDeclaration(void 0,i,r,void 0,n,e.factory.createBlock([e.factory.createReturnStatement(a(t,o,s))],!0))}(h,y,b,p,g,k);if(e.suppressLeadingAndTrailingTrivia(D),c(m,t,D,x,k),_){var E=e.getFirstConstructorWithBody(k);E&&function(t,r,n,i,a){if(!n.body)return;n.body.forEachChild((function n(o){e.isElementAccessExpression(o)&&108===o.expression.kind&&e.isStringLiteral(o.argumentExpression)&&o.argumentExpression.text===a&&e.isWriteAccess(o)&&t.replaceNode(r,o.argumentExpression,e.factory.createStringLiteral(i)),e.isPropertyAccessExpression(o)&&108===o.expression.kind&&o.name.text===a&&e.isWriteAccess(o)&&t.replaceNode(r,o.name,e.factory.createIdentifier(i)),e.isFunctionLike(o)||e.isClassLike(o)||o.forEachChild(n)}))}(m,t,E,h.text,v)}else{var T=function(t,r,n,i,o,s){return e.factory.createSetAccessorDeclaration(void 0,i,r,[e.factory.createParameterDeclaration(void 0,void 0,void 0,e.factory.createIdentifier("value"),void 0,n)],e.factory.createBlock([e.factory.createExpressionStatement(e.factory.createAssignment(a(t,o,s),e.factory.createIdentifier("value")))],!0))}(h,y,b,p,g,k);e.suppressLeadingAndTrailingTrivia(T),c(m,t,T,x,k)}return m.getChanges()}},t.getAccessorConvertiblePropertyAtPosition=s,t.getAllSupers=function(t,r){for(var n=[];t;){var i=e.getClassExtendsHeritageElement(t),a=i&&r.getSymbolAtLocation(i.expression);if(!a)break;var o=2097152&a.flags?r.getAliasedSymbol(a):a,s=e.find(o.declarations,e.isClassLike);if(!s)break;n.push(s),t=s}return n}}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="invalidImportSyntax";function n(n,i,a,o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return e.replaceNode(i,a,o)}));return t.createCodeFixActionWithoutFixAll(r,s,[e.Diagnostics.Replace_import_with_0,s[0].textChanges[0].newText])}function i(i,a){var o=i.program.getTypeChecker().getTypeAtLocation(a);if(!o.symbol||!o.symbol.originatingImport)return[];var s=[],c=o.symbol.originatingImport;if(e.isImportCall(c)||e.addRange(s,function(t,r){var i=e.getSourceFileOfNode(r),a=e.getNamespaceDeclarationNode(r),o=t.program.getCompilerOptions(),s=[];return s.push(n(t,i,r,e.makeImport(a.name,void 0,r.moduleSpecifier,e.getQuotePreference(i,t.preferences)))),e.getEmitModuleKind(o)===e.ModuleKind.CommonJS&&s.push(n(t,i,r,e.factory.createImportEqualsDeclaration(void 0,void 0,!1,a.name,e.factory.createExternalModuleReference(r.moduleSpecifier)))),s}(i,c)),e.isExpression(a)&&(!e.isNamedDeclaration(a.parent)||a.parent.name!==a)){var l=i.sourceFile,u=e.textChanges.ChangeTracker.with(i,(function(t){return t.replaceNode(l,a,e.factory.createPropertyAccessExpression(a,"default"),{})}));s.push(t.createCodeFixActionWithoutFixAll(r,u,e.Diagnostics.Use_synthetic_default_member))}return s}t.registerCodeFix({errorCodes:[e.Diagnostics.This_expression_is_not_callable.code,e.Diagnostics.This_expression_is_not_constructable.code],getCodeActions:function(t){var r=t.sourceFile,n=e.Diagnostics.This_expression_is_not_callable.code===t.errorCode?204:205,a=e.findAncestor(e.getTokenAtPosition(r,t.span.start),(function(e){return e.kind===n}));if(!a)return[];var o=a.expression;return i(t,o)}}),t.registerCodeFix({errorCodes:[e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,e.Diagnostics.Type_predicate_0_is_not_assignable_to_1.code,e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_string_index_type_2.code,e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2.code,e.Diagnostics.Numeric_index_type_0_is_not_assignable_to_string_index_type_1.code,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_type_2.code,e.Diagnostics.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,e.Diagnostics.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:function(t){var r=t.sourceFile,n=e.findAncestor(e.getTokenAtPosition(r,t.span.start),(function(e){return e.getStart()===t.span.start&&e.getEnd()===t.span.start+t.span.length}));if(!n)return[];return i(t,n)}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="strictClassInitialization",n="addMissingPropertyDefiniteAssignmentAssertions",i="addMissingPropertyUndefinedType",a="addMissingPropertyInitializer",o=[e.Diagnostics.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];function s(t,r){var n=e.getTokenAtPosition(t,r);return e.isIdentifier(n)?e.cast(n.parent,e.isPropertyDeclaration):void 0}function c(i,a){var o=e.textChanges.ChangeTracker.with(i,(function(e){return l(e,i.sourceFile,a)}));return t.createCodeFixAction(r,o,[e.Diagnostics.Add_definite_assignment_assertion_to_property_0,a.getText()],n,e.Diagnostics.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function l(t,r,n){var i=e.factory.updatePropertyDeclaration(n,n.decorators,n.modifiers,n.name,e.factory.createToken(53),n.type,n.initializer);t.replaceNode(r,n,i)}function u(n,a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return d(e,n.sourceFile,a)}));return t.createCodeFixAction(r,o,[e.Diagnostics.Add_undefined_type_to_property_0,a.name.getText()],i,e.Diagnostics.Add_undefined_type_to_all_uninitialized_properties)}function d(t,r,n){var i=e.factory.createKeywordTypeNode(151),a=n.type,o=e.isUnionTypeNode(a)?a.types.concat(i):[a,i];t.replaceNode(r,a,e.factory.createUnionTypeNode(o))}function p(t,r,n,i){var a=e.factory.updatePropertyDeclaration(n,n.decorators,n.modifiers,n.name,n.questionToken,n.type,i);t.replaceNode(r,n,a)}function f(e,t){return m(e,e.getTypeFromTypeNode(t.type))}function m(t,r){if(512&r.flags)return r===t.getFalseType()||r===t.getFalseType(!0)?e.factory.createFalse():e.factory.createTrue();if(r.isStringLiteral())return e.factory.createStringLiteral(r.value);if(r.isNumberLiteral())return e.factory.createNumericLiteral(r.value);if(2048&r.flags)return e.factory.createBigIntLiteral(r.value);if(r.isUnion())return e.firstDefined(r.types,(function(e){return m(t,e)}));if(r.isClass()){var n=e.getClassLikeDeclarationOfSymbol(r.symbol);if(!n||e.hasSyntacticModifier(n,128))return;var i=e.getFirstConstructorWithBody(n);if(i&&i.parameters.length)return;return e.factory.createNewExpression(e.factory.createIdentifier(r.symbol.name),void 0,void 0)}return t.isArrayLikeType(r)?e.factory.createArrayLiteralExpression():void 0}t.registerCodeFix({errorCodes:o,getCodeActions:function(n){var i=s(n.sourceFile,n.span.start);if(i){var o=[u(n,i),c(n,i)];return e.append(o,function(n,i){var o=n.program.getTypeChecker(),s=f(o,i);if(!s)return;var c=e.textChanges.ChangeTracker.with(n,(function(e){return p(e,n.sourceFile,i,s)}));return t.createCodeFixAction(r,c,[e.Diagnostics.Add_initializer_to_property_0,i.name.getText()],a,e.Diagnostics.Add_initializers_to_all_uninitialized_properties)}(n,i)),o}},fixIds:[n,i,a],getAllCodeActions:function(r){return t.codeFixAll(r,o,(function(t,o){var c=s(o.file,o.start);if(c)switch(r.fixId){case n:l(t,o.file,c);break;case i:d(t,o.file,c);break;case a:var u=f(r.program.getTypeChecker(),c);if(!u)return;p(t,o.file,c,u);break;default:e.Debug.fail(JSON.stringify(r.fixId))}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="requireInTs",n=[e.Diagnostics.require_call_may_be_converted_to_an_import.code];function i(t,r,n){var i=n.allowSyntheticDefaults,a=n.defaultImportName,o=n.namedImports,s=n.statement,c=n.required;t.replaceNode(r,s,a&&!i?e.factory.createImportEqualsDeclaration(void 0,void 0,!1,a,e.factory.createExternalModuleReference(c)):e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,a,o),c))}function a(t,r,n){var i=e.getTokenAtPosition(t,n).parent;if(!e.isRequireCall(i,!0))throw e.Debug.failBadSyntaxKind(i);var a=e.cast(i.parent,e.isVariableDeclaration),o=e.tryCast(a.name,e.isIdentifier),s=e.isObjectBindingPattern(a.name)?function(t){for(var r=[],n=0,i=t.elements;n<i.length;n++){var a=i[n];if(!e.isIdentifier(a.name)||a.initializer)return;r.push(e.factory.createImportSpecifier(e.tryCast(a.propertyName,e.isIdentifier),a.name))}if(r.length)return e.factory.createNamedImports(r)}(a.name):void 0;if(o||s)return{allowSyntheticDefaults:e.getAllowSyntheticDefaultImports(r.getCompilerOptions()),defaultImportName:o,namedImports:s,statement:e.cast(a.parent.parent,e.isVariableStatement),required:e.first(i.arguments)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=a(n.sourceFile,n.program,n.span.start);if(o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Convert_require_to_import,r,e.Diagnostics.Convert_all_require_to_import)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=a(r.file,e.program,r.start);n&&i(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="useDefaultImport",n=[e.Diagnostics.Import_may_be_converted_to_a_default_import.code];function i(t,r){var n=e.getTokenAtPosition(t,r);if(e.isIdentifier(n)){var i=n.parent;if(e.isImportEqualsDeclaration(i)&&e.isExternalModuleReference(i.moduleReference))return{importNode:i,name:n,moduleSpecifier:i.moduleReference.expression};if(e.isNamespaceImport(i)){var a=i.parent.parent;return{importNode:a,name:n,moduleSpecifier:a.moduleSpecifier}}}}function a(t,r,n,i){t.replaceNode(r,n.importNode,e.makeImport(n.name,void 0,n.moduleSpecifier,e.getQuotePreference(r,i)))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span.start,c=i(o,s);if(c){var l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c,n.preferences)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Convert_to_default_import,r,e.Diagnostics.Convert_all_to_default_imports)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,r.start);n&&a(t,r.file,n,e.preferences)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="useBigintLiteral",n=[e.Diagnostics.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];function i(t,r,n){var i=e.tryCast(e.getTokenAtPosition(r,n.start),e.isNumericLiteral);if(i){var a=i.getText(r)+"n";t.replaceNode(r,i,e.factory.createBigIntLiteral(a))}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Convert_to_a_bigint_numeric_literal,r,e.Diagnostics.Convert_all_to_bigint_numeric_literals)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixAddModuleReferTypeMissingTypeof",n=[e.Diagnostics.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];function i(t,r){var n=e.getTokenAtPosition(t,r);return e.Debug.assert(100===n.kind,"This token should be an ImportKeyword"),e.Debug.assert(196===n.parent.kind,"Token parent should be an ImportType"),n.parent}function a(t,r,n){var i=e.factory.updateImportTypeNode(n,n.argument,n.qualifier,n.typeArguments,!0);t.replaceNode(r,n,i)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start),l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Add_missing_typeof,r,e.Diagnostics.Add_missing_typeof)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return a(t,e.sourceFile,i(r.file,r.start))}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="wrapJsxInFragment",n=[e.Diagnostics.JSX_expressions_must_have_one_parent_element.code];function i(t,r){var n=e.getTokenAtPosition(t,r).parent.parent;if((e.isBinaryExpression(n)||(n=n.parent,e.isBinaryExpression(n)))&&e.nodeIsMissing(n.operatorToken))return n}function a(t,r,n){var i=function(t){var r=[],n=t;for(;;){if(e.isBinaryExpression(n)&&e.nodeIsMissing(n.operatorToken)&&27===n.operatorToken.kind){if(r.push(n.left),e.isJsxChild(n.right))return r.push(n.right),r;if(e.isBinaryExpression(n.right)){n=n.right;continue}return}return}}(n);i&&t.replaceNode(r,n,e.factory.createJsxFragment(e.factory.createJsxOpeningFragment(),i,e.factory.createJsxJsxClosingFragment()))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.program.getCompilerOptions().jsx;if(2===o||3===o){var s=n.sourceFile,c=n.span,l=i(s,c.start);if(l){var u=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,s,l)}));return[t.createCodeFixAction(r,u,e.Diagnostics.Wrap_in_JSX_fragment,r,e.Diagnostics.Wrap_all_unparented_JSX_in_JSX_fragment)]}}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(e.sourceFile,r.start);n&&a(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixConvertToMappedObjectType",n=[e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead.code];function a(t,r){var n=e.getTokenAtPosition(t,r),i=e.cast(n.parent.parent,e.isIndexSignatureDeclaration);if(!e.isClassDeclaration(i.parent))return{indexSignature:i,container:e.isInterfaceDeclaration(i.parent)?i.parent:e.cast(i.parent.parent,e.isTypeAliasDeclaration)}}function o(t,r,n){var a,o,s=n.indexSignature,c=n.container,l=(e.isInterfaceDeclaration(c)?c.members:c.type.members).filter((function(t){return!e.isIndexSignatureDeclaration(t)})),u=e.first(s.parameters),d=e.factory.createTypeParameterDeclaration(e.cast(u.name,e.isIdentifier),u.type),p=e.factory.createMappedTypeNode(e.hasEffectiveReadonlyModifier(s)?e.factory.createModifier(143):void 0,d,void 0,s.questionToken,s.type),f=e.factory.createIntersectionTypeNode(i(i(i([],e.getAllSuperTypeNodes(c)),[p]),l.length?[e.factory.createTypeLiteralNode(l)]:e.emptyArray));t.replaceNode(r,c,(a=c,o=f,e.factory.createTypeAliasDeclaration(a.decorators,a.modifiers,a.name,a.typeParameters,o)))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,s=n.span,c=a(i,s.start);if(c){var l=e.textChanges.ChangeTracker.with(n,(function(e){return o(e,i,c)})),u=e.idText(c.container.name);return[t.createCodeFixAction(r,l,[e.Diagnostics.Convert_0_to_mapped_object_type,u],r,[e.Diagnostics.Convert_0_to_mapped_object_type,u])]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=a(t.file,t.start);r&&o(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="removeAccidentalCallParentheses",n=[e.Diagnostics.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=e.findAncestor(e.getTokenAtPosition(n.sourceFile,n.span.start),e.isCallExpression);if(i){var a=e.textChanges.ChangeTracker.with(n,(function(e){e.deleteRange(n.sourceFile,{pos:i.expression.end,end:i.end})}));return[t.createCodeFixActionWithoutFixAll(r,a,e.Diagnostics.Remove_parentheses)]}},fixIds:[r]})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="removeUnnecessaryAwait",n=[e.Diagnostics.await_has_no_effect_on_the_type_of_this_expression.code];function i(t,r,n){var i=e.tryCast(e.getTokenAtPosition(r,n.start),(function(e){return 131===e.kind})),a=i&&e.tryCast(i.parent,e.isAwaitExpression);if(a){var o=a;if(e.isParenthesizedExpression(a.parent)){var s=e.getLeftmostExpression(a.expression,!1);if(e.isIdentifier(s)){var c=e.findPrecedingToken(a.parent.pos,r);c&&103!==c.kind&&(o=a.parent)}}t.replaceNode(r,o,a.expression)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Remove_unnecessary_await,r,e.Diagnostics.Remove_all_unnecessary_uses_of_await)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],n="splitTypeOnlyImport";function i(t,r){return e.findAncestor(e.getTokenAtPosition(t,r.start),e.isImportDeclaration)}function a(t,r,n){if(r){var i=e.Debug.checkDefined(r.importClause);t.replaceNode(n.sourceFile,r,e.factory.updateImportDeclaration(r,r.decorators,r.modifiers,e.factory.updateImportClause(i,i.isTypeOnly,i.name,void 0),r.moduleSpecifier)),t.insertNodeAfter(n.sourceFile,r,e.factory.createImportDeclaration(void 0,void 0,e.factory.updateImportClause(i,i.isTypeOnly,void 0,i.namedBindings),r.moduleSpecifier))}}t.registerCodeFix({errorCodes:r,fixIds:[n],getCodeActions:function(r){var o=e.textChanges.ChangeTracker.with(r,(function(e){return a(e,i(r.sourceFile,r.span),r)}));if(o.length)return[t.createCodeFixAction(n,o,e.Diagnostics.Split_into_two_separate_import_declarations,n,e.Diagnostics.Split_all_invalid_type_only_imports)]},getAllCodeActions:function(e){return t.codeFixAll(e,r,(function(t,r){a(t,i(e.sourceFile,r),e)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixConvertConstToLet",n=[e.Diagnostics.Cannot_assign_to_0_because_it_is_a_constant.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.span,o=n.program,s=function(t,r,n){var i=e.getTokenAtPosition(t,r),a=n.getTypeChecker(),o=a.getSymbolAtLocation(i);if(o)return o.valueDeclaration.parent.parent}(i,a.start,o),c=e.textChanges.ChangeTracker.with(n,(function(e){return function(e,t,r){if(!r)return;var n=r.getStart();e.replaceRangeWithText(t,{pos:n,end:n+5},"let")}(e,i,s)}));return[t.createCodeFixAction(r,c,e.Diagnostics.Convert_const_to_let,r,e.Diagnostics.Convert_const_to_let)]},fixIds:[r]})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixExpectedComma",n=[e.Diagnostics._0_expected.code];function i(t,r,n){var i=e.getTokenAtPosition(t,r);return 26===i.kind&&i.parent&&(e.isObjectLiteralExpression(i.parent)||e.isArrayLiteralExpression(i.parent))?{node:i}:void 0}function a(t,r,n){var i=n.node,a=e.factory.createToken(27);t.replaceNode(r,i,a)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=i(o,n.span.start,n.errorCode);if(s){var c=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,s)}));return[t.createCodeFixAction(r,c,[e.Diagnostics.Change_0_to_1,";",","],r,[e.Diagnostics.Change_0_to_1,";",","])]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,r.start,r.code);n&&a(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addVoidToPromise",n=[e.Diagnostics.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];function i(t,r,n,i,a){var o=e.getTokenAtPosition(r,n.start);if(e.isIdentifier(o)&&e.isCallExpression(o.parent)&&o.parent.expression===o&&0===o.parent.arguments.length){var s=i.getTypeChecker(),c=s.getSymbolAtLocation(o),l=null==c?void 0:c.valueDeclaration;if(l&&e.isParameter(l)&&e.isNewExpression(l.parent.parent)&&!(null==a?void 0:a.has(l))){null==a||a.add(l);var u=function(t){var r;if(!e.isInJSFile(t))return t.typeArguments;if(e.isParenthesizedExpression(t.parent)){var n=null===(r=e.getJSDocTypeTag(t.parent))||void 0===r?void 0:r.typeExpression.type;if(n&&e.isTypeReferenceNode(n)&&e.isIdentifier(n.typeName)&&"Promise"===e.idText(n.typeName))return n.typeArguments}}(l.parent.parent);if(e.some(u)){var d=u[0],p=!e.isUnionTypeNode(d)&&!e.isParenthesizedTypeNode(d)&&e.isParenthesizedTypeNode(e.factory.createUnionTypeNode([d,e.factory.createKeywordTypeNode(114)]).types[0]);p&&t.insertText(r,d.pos,"("),t.insertText(r,d.end,p?") | void":" | void")}else{var f=s.getResolvedSignature(o.parent),m=null==f?void 0:f.parameters[0],g=m&&s.getTypeOfSymbolAtLocation(m,l.parent.parent);e.isInJSFile(l)?(!g||3&g.flags)&&(t.insertText(r,l.parent.parent.end,")"),t.insertText(r,e.skipTrivia(r.text,l.parent.parent.pos),"/** @type {Promise<void>} */(")):(!g||2&g.flags)&&t.insertText(r,l.parent.parent.expression.end,"<void>")}}}}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span,n.program)}));if(a.length>0)return[t.createCodeFixAction("addVoidToPromise",a,e.Diagnostics.Add_void_to_Promise_resolved_without_a_value,r,e.Diagnostics.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions:function(r){return t.codeFixAll(r,n,(function(t,n){return i(t,n.file,n,r.program,new e.Set)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="Convert export",n={name:"Convert default export to named export",description:e.Diagnostics.Convert_default_export_to_named_export.message,kind:"refactor.rewrite.export.named"},i={name:"Convert named export to default export",description:e.Diagnostics.Convert_named_export_to_default_export.message,kind:"refactor.rewrite.export.default"};function o(t,r){void 0===r&&(r=!0);var n=t.file,i=e.getRefactorContextSpan(t),a=e.getTokenAtPosition(n,i.start),o=a.parent&&1&e.getSyntacticModifierFlags(a.parent)&&r?a.parent:e.getParentNodeInSpan(a,n,i);if(!(o&&(e.isSourceFile(o.parent)||e.isModuleBlock(o.parent)&&e.isAmbientModule(o.parent.parent))))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_export_statement)};var s=e.isSourceFile(o.parent)?o.parent.symbol:o.parent.parent.symbol,c=e.getSyntacticModifierFlags(o),l=!!(512&c);if(!(1&c)||!l&&s.exports.has("default"))return{error:e.getLocaleSpecificMessage(e.Diagnostics.This_file_already_has_a_default_export)};switch(o.kind){case 253:case 254:case 256:case 258:case 257:case 259:var u=o;return u.name&&e.isIdentifier(u.name)?{exportNode:u,exportName:u.name,wasDefault:l,exportingModuleSymbol:s}:void 0;case 234:var d=o;if(!(2&d.declarationList.flags)||1!==d.declarationList.declarations.length)return;var p=e.first(d.declarationList.declarations);if(!p.initializer)return;return e.Debug.assert(!l,"Can't have a default flag here"),e.isIdentifier(p.name)?{exportNode:d,exportName:p.name,wasDefault:l,exportingModuleSymbol:s}:void 0;default:return}}function s(t,r){return e.factory.createImportSpecifier(t===r?void 0:e.factory.createIdentifier(t),e.factory.createIdentifier(r))}t.registerRefactor(r,{kinds:[n.kind,i.kind],getAvailableActions:function(s){var c=o(s,"invoked"===s.triggerReason);if(!c)return e.emptyArray;if(!t.isRefactorErrorInfo(c)){var l=c.wasDefault?n:i;return[{name:r,description:l.description,actions:[l]}]}return s.preferences.provideRefactorNotApplicableReason?[{name:r,description:e.Diagnostics.Convert_default_export_to_named_export.message,actions:[a(a({},n),{notApplicableReason:c.error}),a(a({},i),{notApplicableReason:c.error})]}]:e.emptyArray},getEditsForAction:function(r,a){e.Debug.assert(a===n.name||a===i.name,"Unexpected action name");var c=o(r);e.Debug.assert(c&&!t.isRefactorErrorInfo(c),"Expected applicable refactor info");var l=e.textChanges.ChangeTracker.with(r,(function(t){return function(t,r,n,i,a){(function(t,r,n,i){var a=r.wasDefault,o=r.exportNode,s=r.exportName;if(a)n.delete(t,e.Debug.checkDefined(e.findModifier(o,88),"Should find a default keyword in modifier list"));else{var c=e.Debug.checkDefined(e.findModifier(o,93),"Should find an export keyword in modifier list");switch(o.kind){case 253:case 254:case 256:n.insertNodeAfter(t,c,e.factory.createToken(88));break;case 234:var l=e.first(o.declarationList.declarations);if(!e.FindAllReferences.Core.isSymbolReferencedInFile(s,i,t)&&!l.type){n.replaceNode(t,o,e.factory.createExportDefault(e.Debug.checkDefined(l.initializer,"Initializer was previously known to be present")));break}case 258:case 257:case 259:n.deleteModifier(t,c),n.insertNodeAfter(t,o,e.factory.createExportDefault(e.factory.createIdentifier(s.text)));break;default:e.Debug.assertNever(o,"Unexpected exportNode kind "+o.kind)}}})(t,n,i,r.getTypeChecker()),function(t,r,n,i){var a=r.wasDefault,o=r.exportName,c=r.exportingModuleSymbol,l=t.getTypeChecker(),u=e.Debug.checkDefined(l.getSymbolAtLocation(o),"Export name should resolve to a symbol");e.FindAllReferences.Core.eachExportReference(t.getSourceFiles(),l,i,u,c,o.text,a,(function(t){var r=t.getSourceFile();a?function(t,r,n,i){var a=r.parent;switch(a.kind){case 202:n.replaceNode(t,r,e.factory.createIdentifier(i));break;case 268:case 273:var o=a;n.replaceNode(t,o,s(i,o.name.text));break;case 265:var c=a;e.Debug.assert(c.name===r,"Import clause name should match provided ref");o=s(i,r.text);var l=c.namedBindings;if(l)if(266===l.kind){n.deleteRange(t,{pos:r.getStart(t),end:l.getStart(t)});var u=e.isStringLiteral(c.parent.moduleSpecifier)?e.quotePreferenceFromString(c.parent.moduleSpecifier,t):1,d=e.makeImport(void 0,[s(i,r.text)],c.parent.moduleSpecifier,u);n.insertNodeAfter(t,c.parent,d)}else n.delete(t,r),n.insertNodeAtEndOfList(t,l.elements,o);else n.replaceNode(t,r,e.factory.createNamedImports([o]));break;default:e.Debug.failBadSyntaxKind(a)}}(r,t,n,o.text):function(t,r,n){var i=r.parent;switch(i.kind){case 202:n.replaceNode(t,r,e.factory.createIdentifier("default"));break;case 268:var a=e.factory.createIdentifier(i.name.text);1===i.parent.elements.length?n.replaceNode(t,i.parent,a):(n.delete(t,i),n.insertNodeBefore(t,i.parent,a));break;case 273:n.replaceNode(t,i,(o="default",s=i.name.text,e.factory.createExportSpecifier(o===s?void 0:e.factory.createIdentifier(o),e.factory.createIdentifier(s))));break;default:e.Debug.assertNever(i,"Unexpected parent kind "+i.kind)}var o,s}(r,t,n)}))}(r,n,i,a)}(r.file,r.program,c,t,r.cancellationToken)}));return{edits:l,renameFilename:void 0,renameLocation:void 0}}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r="Convert import",n={name:"Convert namespace import to named imports",description:e.Diagnostics.Convert_namespace_import_to_named_imports.message,kind:"refactor.rewrite.import.named"},i={name:"Convert named imports to namespace import",description:e.Diagnostics.Convert_named_imports_to_namespace_import.message,kind:"refactor.rewrite.import.namespace"};function o(t,r){void 0===r&&(r=!0);var n=t.file,i=e.getRefactorContextSpan(t),a=e.getTokenAtPosition(n,i.start),o=r?e.findAncestor(a,e.isImportDeclaration):e.getParentNodeInSpan(a,n,i);if(!o||!e.isImportDeclaration(o))return{error:"Selection is not an import declaration."};if(!(o.getEnd()<i.start+i.length)){var s=o.importClause;return s?s.namedBindings?s.namedBindings:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_namespace_import_or_named_imports)}:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_import_clause)}}}function s(t){return e.isPropertyAccessExpression(t)?t.name:t.right}function c(t,r,n){return e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,r,n&&n.length?e.factory.createNamedImports(n):void 0),t.moduleSpecifier)}t.registerRefactor(r,{kinds:[n.kind,i.kind],getAvailableActions:function(s){var c=o(s,"invoked"===s.triggerReason);if(!c)return e.emptyArray;if(!t.isRefactorErrorInfo(c)){var l=266===c.kind?n:i;return[{name:r,description:l.description,actions:[l]}]}return s.preferences.provideRefactorNotApplicableReason?[{name:r,description:n.description,actions:[a(a({},n),{notApplicableReason:c.error})]},{name:r,description:i.description,actions:[a(a({},i),{notApplicableReason:c.error})]}]:e.emptyArray},getEditsForAction:function(r,a){e.Debug.assert(a===n.name||a===i.name,"Unexpected action name");var l=o(r);return e.Debug.assert(l&&!t.isRefactorErrorInfo(l),"Expected applicable refactor info"),{edits:e.textChanges.ChangeTracker.with(r,(function(t){return n=r.file,i=r.program,a=t,o=l,u=i.getTypeChecker(),void(266===o.kind?function(t,r,n,i,a){var o=!1,l=[],u=new e.Map;e.FindAllReferences.Core.eachSymbolReferenceInFile(i.name,r,t,(function(t){if(e.isPropertyAccessOrQualifiedName(t.parent)){var n=s(t.parent).text;r.resolveName(n,t,67108863,!0)&&u.set(n,!0),e.Debug.assert(function(t){return e.isPropertyAccessExpression(t)?t.expression:t.left}(t.parent)===t,"Parent expression should match id"),l.push(t.parent)}else o=!0}));for(var d=new e.Map,p=0,f=l;p<f.length;p++){var m=f[p],g=s(m).text,_=d.get(g);void 0===_&&d.set(g,_=u.has(g)?e.getUniqueName(g,t):g),n.replaceNode(t,m,e.factory.createIdentifier(_))}var h=[];d.forEach((function(t,r){h.push(e.factory.createImportSpecifier(t===r?void 0:e.factory.createIdentifier(r),e.factory.createIdentifier(t)))}));var y=i.parent.parent;o&&!a?n.insertNodeAfter(t,y,c(y,void 0,h)):n.replaceNode(t,y,c(y,o?e.factory.createIdentifier(i.name.text):void 0,h))}(n,u,a,o,e.getAllowSyntheticDefaultImports(i.getCompilerOptions())):function(t,r,n,i){for(var a=i.parent.parent,o=a.moduleSpecifier,s=o&&e.isStringLiteral(o)?e.codefix.moduleSpecifierToValidIdentifier(o.text,99):"module",l=i.elements.some((function(n){return e.FindAllReferences.Core.eachSymbolReferenceInFile(n.name,r,t,(function(e){return!!r.resolveName(s,e,67108863,!0)}))||!1})),u=l?e.getUniqueName(s,t):s,d=[],p=function(i){var a=(i.propertyName||i.name).text;e.FindAllReferences.Core.eachSymbolReferenceInFile(i.name,r,t,(function(r){var o=e.factory.createPropertyAccessExpression(e.factory.createIdentifier(u),a);e.isShorthandPropertyAssignment(r.parent)?n.replaceNode(t,r.parent,e.factory.createPropertyAssignment(r.text,o)):e.isExportSpecifier(r.parent)&&!r.parent.propertyName?d.some((function(e){return e.name===i.name}))||d.push(e.factory.createImportSpecifier(i.propertyName&&e.factory.createIdentifier(i.propertyName.text),e.factory.createIdentifier(i.name.text))):n.replaceNode(t,r,o)}))},f=0,m=i.elements;f<m.length;f++)p(m[f]);n.replaceNode(t,i,e.factory.createNamespaceImport(e.factory.createIdentifier(u))),d.length&&n.insertNodeAfter(t,i.parent.parent,c(a,void 0,d))}(n,u,a,o));var n,i,a,o,u})),renameFilename:void 0,renameLocation:void 0}}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Convert to optional chain expression",i=e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_optional_chain_expression),o={name:n,description:i,kind:"refactor.rewrite.expression.optionalChain"};function s(t){return e.isBinaryExpression(t)||e.isConditionalExpression(t)}function c(t){return s(t)||function(t){return e.isExpressionStatement(t)||e.isReturnStatement(t)||e.isVariableStatement(t)}(t)}function l(t,r){void 0===r&&(r=!0);var n=t.file,i=t.program,a=e.getRefactorContextSpan(t),o=0===a.length;if(!o||r){var l=e.getTokenAtPosition(n,a.start),p=e.findTokenOnLeftOfPosition(n,a.start+a.length),m=e.createTextSpanFromBounds(l.pos,p&&p.end>=l.pos?p.getEnd():l.getEnd()),g=o?function(e){for(;e.parent;){if(c(e)&&!c(e.parent))return e;e=e.parent}return}(l):function(e,t){for(;e.parent;){if(c(e)&&0!==t.length&&e.end>=t.start+t.length)return e;e=e.parent}return}(l,m),_=g&&c(g)?function(t){if(s(t))return t;if(e.isVariableStatement(t)){var r=e.getSingleVariableOfVariableStatement(t),n=null==r?void 0:r.initializer;return n&&s(n)?n:void 0}return t.expression&&s(t.expression)?t.expression:void 0}(g):void 0;if(!_)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_convertible_access_expression)};var h=i.getTypeChecker();return e.isConditionalExpression(_)?function(t,r){var n=t.condition,i=f(t.whenTrue);if(!i||r.isNullableType(r.getTypeAtLocation(i)))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_convertible_access_expression)};if((e.isPropertyAccessExpression(n)||e.isIdentifier(n))&&d(n,i.expression))return{finalExpression:i,occurrences:[n],expression:t};if(e.isBinaryExpression(n)){var a=u(i.expression,n);return a?{finalExpression:i,occurrences:a,expression:t}:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_matching_access_expressions)}}}(_,h):function(t){if(55!==t.operatorToken.kind)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Can_only_convert_logical_AND_access_chains)};var r=f(t.right);if(!r)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_convertible_access_expression)};var n=u(r.expression,t.left);return n?{finalExpression:r,occurrences:n,expression:t}:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_matching_access_expressions)}}(_)}}function u(t,r){for(var n=[];e.isBinaryExpression(r)&&55===r.operatorToken.kind;){var i=d(e.skipParentheses(t),e.skipParentheses(r.right));if(!i)break;n.push(i),t=i,r=r.left}var a=d(t,r);return a&&n.push(a),n.length>0?n:void 0}function d(t,r){if(e.isIdentifier(r)||e.isPropertyAccessExpression(r)||e.isElementAccessExpression(r))return function(t,r){for(;(e.isCallExpression(t)||e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t))&&p(t)!==p(r);)t=t.expression;for(;e.isPropertyAccessExpression(t)&&e.isPropertyAccessExpression(r)||e.isElementAccessExpression(t)&&e.isElementAccessExpression(r);){if(p(t)!==p(r))return!1;t=t.expression,r=r.expression}return e.isIdentifier(t)&&e.isIdentifier(r)&&t.getText()===r.getText()}(t,r)?r:void 0}function p(t){return e.isIdentifier(t)||e.isStringOrNumericLiteralLike(t)?t.getText():e.isPropertyAccessExpression(t)?p(t.name):e.isElementAccessExpression(t)?p(t.argumentExpression):void 0}function f(t){return t=e.skipParentheses(t),e.isBinaryExpression(t)?f(t.left):(e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)||e.isCallExpression(t))&&!e.isOptionalChain(t)?t:void 0}function m(t,r,n){if(e.isPropertyAccessExpression(r)||e.isElementAccessExpression(r)||e.isCallExpression(r)){var i=m(t,r.expression,n),a=n.length>0?n[n.length-1]:void 0,o=(null==a?void 0:a.getText())===r.expression.getText();if(o&&n.pop(),e.isCallExpression(r))return o?e.factory.createCallChain(i,e.factory.createToken(28),r.typeArguments,r.arguments):e.factory.createCallChain(i,r.questionDotToken,r.typeArguments,r.arguments);if(e.isPropertyAccessExpression(r))return o?e.factory.createPropertyAccessChain(i,e.factory.createToken(28),r.name):e.factory.createPropertyAccessChain(i,r.questionDotToken,r.name);if(e.isElementAccessExpression(r))return o?e.factory.createElementAccessChain(i,e.factory.createToken(28),r.argumentExpression):e.factory.createElementAccessChain(i,r.questionDotToken,r.argumentExpression)}return r}t.registerRefactor(n,{kinds:[o.kind],getAvailableActions:function(r){var s=l(r,"invoked"===r.triggerReason);if(!s)return e.emptyArray;if(!t.isRefactorErrorInfo(s))return[{name:n,description:i,actions:[o]}];if(r.preferences.provideRefactorNotApplicableReason)return[{name:n,description:i,actions:[a(a({},o),{notApplicableReason:s.error})]}];return e.emptyArray},getEditsForAction:function(r,n){var i=l(r);return e.Debug.assert(i&&!t.isRefactorErrorInfo(i),"Expected applicable refactor info"),{edits:e.textChanges.ChangeTracker.with(r,(function(t){return function(t,r,n,i,a){var o=i.finalExpression,s=i.occurrences,c=i.expression,l=s[s.length-1],u=m(r,o,s);u&&(e.isPropertyAccessExpression(u)||e.isElementAccessExpression(u)||e.isCallExpression(u))&&(e.isBinaryExpression(c)?n.replaceNodeRange(t,l,o,u):e.isConditionalExpression(c)&&n.replaceNode(t,c,e.factory.createBinaryExpression(u,e.factory.createToken(60),c.whenFalse)))}(r.file,r.program.getTypeChecker(),t,i)})),renameFilename:void 0,renameLocation:void 0}}})}(t.convertToOptionalChainExpression||(t.convertToOptionalChainExpression={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Convert overload list to single signature",i=e.Diagnostics.Convert_overload_list_to_single_signature.message,a={name:n,description:i,kind:"refactor.rewrite.function.overloadList"};function o(e){switch(e.kind){case 165:case 166:case 170:case 167:case 171:case 253:return!0}return!1}function s(t,r,n){var i=e.getTokenAtPosition(t,r),a=e.findAncestor(i,o);if(a){var s=n.getTypeChecker(),c=a.symbol;if(c){var l=c.declarations;if(!(e.length(l)<=1)&&e.every(l,(function(r){return e.getSourceFileOfNode(r)===t}))&&o(l[0])){var u=l[0].kind;if(e.every(l,(function(e){return e.kind===u}))){var d=l;if(!e.some(d,(function(t){return!!t.typeParameters||e.some(t.parameters,(function(t){return!!t.decorators||!!t.modifiers||!e.isIdentifier(t.name)}))}))){var p=e.mapDefined(d,(function(e){return s.getSignatureFromDeclaration(e)}));if(e.length(p)===e.length(l)){var f=s.getReturnTypeOfSignature(p[0]);if(e.every(p,(function(e){return s.getReturnTypeOfSignature(e)===f})))return d}}}}}}}t.registerRefactor(n,{kinds:[a.kind],getEditsForAction:function(t){var r=t.file,n=t.startPosition,i=t.program,a=s(r,n,i);if(!a)return;var o=i.getTypeChecker(),c=a[a.length-1],l=c;switch(c.kind){case 165:l=e.factory.updateMethodSignature(c,c.modifiers,c.name,c.questionToken,c.typeParameters,d(a),c.type);break;case 166:l=e.factory.updateMethodDeclaration(c,c.decorators,c.modifiers,c.asteriskToken,c.name,c.questionToken,c.typeParameters,d(a),c.type,c.body);break;case 170:l=e.factory.updateCallSignature(c,c.typeParameters,d(a),c.type);break;case 167:l=e.factory.updateConstructorDeclaration(c,c.decorators,c.modifiers,d(a),c.body);break;case 171:l=e.factory.updateConstructSignature(c,c.typeParameters,d(a),c.type);break;case 253:l=e.factory.updateFunctionDeclaration(c,c.decorators,c.modifiers,c.asteriskToken,c.name,c.typeParameters,d(a),c.type,c.body);break;default:return e.Debug.failBadSyntaxKind(c,"Unhandled signature kind in overload list conversion refactoring")}if(l===c)return;var u=e.textChanges.ChangeTracker.with(t,(function(e){e.replaceNodeRange(r,a[0],a[a.length-1],l)}));return{renameFilename:void 0,renameLocation:void 0,edits:u};function d(t){var r=t[t.length-1];return e.isFunctionLikeDeclaration(r)&&r.body&&(t=t.slice(0,t.length-1)),e.factory.createNodeArray([e.factory.createParameterDeclaration(void 0,void 0,e.factory.createToken(25),"args",void 0,e.factory.createUnionTypeNode(e.map(t,p)))])}function p(t){var r=e.map(t.parameters,f);return e.setEmitFlags(e.factory.createTupleTypeNode(r),e.some(r,(function(t){return!!e.length(e.getSyntheticLeadingComments(t))}))?0:1)}function f(t){e.Debug.assert(e.isIdentifier(t.name));var r=e.setTextRange(e.factory.createNamedTupleMember(t.dotDotDotToken,t.name,t.questionToken,t.type||e.factory.createKeywordTypeNode(129)),t),n=t.symbol&&t.symbol.getDocumentationComment(o);if(n){var i=e.displayPartsToString(n);i.length&&e.setSyntheticLeadingComments(r,[{text:"*\n"+i.split("\n").map((function(e){return" * "+e})).join("\n")+"\n ",kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return r}},getAvailableActions:function(t){var r=t.file,o=t.startPosition,c=t.program;return s(r,o,c)?[{name:n,description:i,actions:[a]}]:e.emptyArray}})}(t.addOrRemoveBracesToArrowFunction||(t.addOrRemoveBracesToArrowFunction={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n,i,o,s,c="Extract Symbol",l={name:"Extract Constant",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_constant),kind:"refactor.extract.constant"},u={name:"Extract Function",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_function),kind:"refactor.extract.function"};function d(r){var n=r.kind,i=f(r.file,e.getRefactorContextSpan(r),"invoked"===r.triggerReason),o=i.targetRange;if(void 0===o){if(!i.errors||0===i.errors.length||!r.preferences.provideRefactorNotApplicableReason)return e.emptyArray;var s=[];return t.refactorKindBeginsWith(u.kind,n)&&s.push({name:c,description:u.description,actions:[a(a({},u),{notApplicableReason:A(i.errors)})]}),t.refactorKindBeginsWith(l.kind,n)&&s.push({name:c,description:l.description,actions:[a(a({},l),{notApplicableReason:A(i.errors)})]}),s}var d=function(t,r){var n=_(t,r),i=n.scopes,a=n.readsAndWrites,o=a.functionErrorsPerScope,s=a.constantErrorsPerScope,c=i.map((function(t,r){var n,i,a=function(t){return e.isFunctionLikeDeclaration(t)?"inner function":e.isClassLike(t)?"method":"function"}(t),c=function(t){return e.isClassLike(t)?"readonly field":"constant"}(t),l=e.isFunctionLikeDeclaration(t)?function(t){switch(t.kind){case 167:return"constructor";case 209:case 253:return t.name?"function '"+t.name.text+"'":e.ANONYMOUS;case 210:return"arrow function";case 166:return"method '"+t.name.getText()+"'";case 168:return"'get "+t.name.getText()+"'";case 169:return"'set "+t.name.getText()+"'";default:throw e.Debug.assertNever(t,"Unexpected scope kind "+t.kind)}}(t):e.isClassLike(t)?function(e){return 254===e.kind?e.name?"class '"+e.name.text+"'":"anonymous class declaration":e.name?"class expression '"+e.name.text+"'":"anonymous class expression"}(t):function(e){return 260===e.kind?"namespace '"+e.parent.name.getText()+"'":e.externalModuleIndicator?0:1}(t);return 1===l?(n=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[a,"global"]),i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[c,"global"])):0===l?(n=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[a,"module"]),i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[c,"module"])):(n=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1),[a,l]),i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1),[c,l])),0!==r||e.isClassLike(t)||(i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_enclosing_scope),[c])),{functionExtraction:{description:n,errors:o[r]},constantExtraction:{description:i,errors:s[r]}}}));return c}(o,r);if(void 0===d)return e.emptyArray;for(var p,m,g=[],h=new e.Map,y=[],v=new e.Map,b=0,k=0,x=d;k<x.length;k++){var S=x[k],w=S.functionExtraction,D=S.constantExtraction,E=w.description;if(t.refactorKindBeginsWith(u.kind,n)&&(0===w.errors.length?h.has(E)||(h.set(E,!0),g.push({description:E,name:"function_scope_"+b,kind:u.kind})):p||(p={description:E,name:"function_scope_"+b,notApplicableReason:A(w.errors),kind:u.kind})),t.refactorKindBeginsWith(l.kind,n))if(0===D.errors.length){var T=D.description;v.has(T)||(v.set(T,!0),y.push({description:T,name:"constant_scope_"+b,kind:l.kind}))}else m||(m={description:E,name:"constant_scope_"+b,notApplicableReason:A(D.errors),kind:l.kind});b++}var C=[];return g.length?C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_function),actions:g}):r.preferences.provideRefactorNotApplicableReason&&p&&C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_function),actions:[p]}),y.length?C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_constant),actions:y}):r.preferences.provideRefactorNotApplicableReason&&m&&C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_constant),actions:[m]}),C.length?C:e.emptyArray;function A(e){var t=e[0].messageText;return"string"!=typeof t&&(t=t.messageText),t}}function p(t,r){var n=f(t.file,e.getRefactorContextSpan(t)).targetRange,a=/^function_scope_(\d+)$/.exec(r);if(a){var o=+a[1];return e.Debug.assert(isFinite(o),"Expected to parse a finite number from the function scope index"),function(t,r,n){var a=_(t,r),o=a.scopes,s=a.readsAndWrites,c=s.target,l=s.usagesPerScope,u=s.functionErrorsPerScope,d=s.exposedVariableDeclarations;return e.Debug.assert(!u[n].length,"The extraction went missing? How?"),r.cancellationToken.throwIfCancellationRequested(),function(t,r,n,a,o,s){var c,l,u=n.usages,d=n.typeParameterUsages,p=n.substitutions,f=s.program.getTypeChecker(),m=e.getEmitScriptTarget(s.program.getCompilerOptions()),g=e.codefix.createImportAdder(s.file,s.program,s.preferences,s.host),_=r.getSourceFile(),k=e.getUniqueName(e.isClassLike(r)?"newMethod":"newFunction",_),x=e.isInJSFile(r),w=e.factory.createIdentifier(k),D=[],E=[];u.forEach((function(t,n){var i;if(!x){var a=f.getTypeOfSymbolAtLocation(t.symbol,t.node);a=f.getBaseTypeOfLiteralType(a),i=e.codefix.typeToAutoImportableTypeNode(f,g,a,r,m,1)}var o=e.factory.createParameterDeclaration(void 0,void 0,void 0,n,void 0,i);D.push(o),2===t.usage&&(l||(l=[])).push(t),E.push(e.factory.createIdentifier(n))}));var T=e.arrayFrom(d.values()).map((function(e){return{type:e,declaration:h(e)}})).sort(y),C=0===T.length?void 0:T.map((function(e){return e.declaration})),A=void 0!==C?C.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)})):void 0;if(e.isExpression(t)&&!x){var N=f.getContextualType(t);c=f.typeToTypeNode(N,r,1)}var P,I=function(t,r,n,i,a){var o,s=void 0!==n||r.length>0;if(e.isBlock(t)&&!s&&0===i.size)return{body:e.factory.createBlock(t.statements,!0),returnValueProperty:void 0};var c=!1,l=e.factory.createNodeArray(e.isBlock(t)?t.statements.slice(0):[e.isStatement(t)?t:e.factory.createReturnStatement(t)]);if(s||i.size){var u=e.visitNodes(l,p).slice();if(s&&!a&&e.isStatement(t)){var d=v(r,n);1===d.length?u.push(e.factory.createReturnStatement(d[0].name)):u.push(e.factory.createReturnStatement(e.factory.createObjectLiteralExpression(d)))}return{body:e.factory.createBlock(u,!0),returnValueProperty:o}}return{body:e.factory.createBlock(l,!0),returnValueProperty:void 0};function p(t){if(!c&&e.isReturnStatement(t)&&s){var a=v(r,n);return t.expression&&(o||(o="__return"),a.unshift(e.factory.createPropertyAssignment(o,e.visitNode(t.expression,p)))),1===a.length?e.factory.createReturnStatement(a[0].name):e.factory.createReturnStatement(e.factory.createObjectLiteralExpression(a))}var l=c;c=c||e.isFunctionLikeDeclaration(t)||e.isClassLike(t);var u=i.get(e.getNodeId(t).toString()),d=u?e.getSynthesizedDeepClone(u):e.visitEachChild(t,p,e.nullTransformationContext);return c=l,d}}(t,a,l,p,!!(o.facts&i.HasReturn)),F=I.body,O=I.returnValueProperty;if(e.suppressLeadingAndTrailingTrivia(F),e.isClassLike(r)){var R=x?[]:[e.factory.createModifier(121)];o.facts&i.InStaticRegion&&R.push(e.factory.createModifier(124)),o.facts&i.IsAsyncFunction&&R.push(e.factory.createModifier(130)),P=e.factory.createMethodDeclaration(void 0,R.length?R:void 0,o.facts&i.IsGenerator?e.factory.createToken(41):void 0,w,void 0,C,D,c,F)}else P=e.factory.createFunctionDeclaration(void 0,o.facts&i.IsAsyncFunction?[e.factory.createToken(130)]:void 0,o.facts&i.IsGenerator?e.factory.createToken(41):void 0,w,C,D,c,F);var M=e.textChanges.ChangeTracker.fromContext(s),L=function(t,r){return e.find(function(t){if(e.isFunctionLikeDeclaration(t)){var r=t.body;if(e.isBlock(r))return r.statements}else{if(e.isModuleBlock(t)||e.isSourceFile(t))return t.statements;if(e.isClassLike(t))return t.members;e.assertType(t)}return e.emptyArray}(r),(function(r){return r.pos>=t&&e.isFunctionLikeDeclaration(r)&&!e.isConstructorDeclaration(r)}))}((b(o.range)?e.last(o.range):o.range).end,r);L?M.insertNodeBefore(s.file,L,P,!0):M.insertNodeAtEndOfScope(s.file,r,P);g.writeFixes(M);var j=[],B=function(t,r,n){var a=e.factory.createIdentifier(n);if(e.isClassLike(t)){var o=r.facts&i.InStaticRegion?e.factory.createIdentifier(t.name.text):e.factory.createThis();return e.factory.createPropertyAccessExpression(o,a)}return a}(r,o,k),z=e.factory.createCallExpression(B,A,E);o.facts&i.IsGenerator&&(z=e.factory.createYieldExpression(e.factory.createToken(41),z));o.facts&i.IsAsyncFunction&&(z=e.factory.createAwaitExpression(z));S(t)&&(z=e.factory.createJsxExpression(void 0,z));if(a.length&&!l)if(e.Debug.assert(!O,"Expected no returnValueProperty"),e.Debug.assert(!(o.facts&i.HasReturn),"Expected RangeFacts.HasReturn flag to be unset"),1===a.length){var U=a[0];j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.getSynthesizedDeepClone(U.name),void 0,e.getSynthesizedDeepClone(U.type),z)],U.parent.flags)))}else{for(var q=[],J=[],V=a[0].parent.flags,H=!1,K=0,W=a;K<W.length;K++){U=W[K];q.push(e.factory.createBindingElement(void 0,void 0,e.getSynthesizedDeepClone(U.name)));var G=f.typeToTypeNode(f.getBaseTypeOfLiteralType(f.getTypeAtLocation(U)),r,1);J.push(e.factory.createPropertySignature(void 0,U.symbol.name,void 0,G)),H=H||void 0!==U.type,V&=U.parent.flags}var $=H?e.factory.createTypeLiteralNode(J):void 0;$&&e.setEmitFlags($,1),j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.factory.createObjectBindingPattern(q),void 0,$,z)],V)))}else if(a.length||l){if(a.length)for(var Y=0,X=a;Y<X.length;Y++){var Q=(U=X[Y]).parent.flags;2&Q&&(Q=-3&Q|1),j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(U.symbol.name,void 0,ne(U.type))],Q)))}O&&j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(O,void 0,ne(c))],1)));var Z=v(a,l);O&&Z.unshift(e.factory.createShorthandPropertyAssignment(O)),1===Z.length?(e.Debug.assert(!O,"Shouldn't have returnValueProperty here"),j.push(e.factory.createExpressionStatement(e.factory.createAssignment(Z[0].name,z))),o.facts&i.HasReturn&&j.push(e.factory.createReturnStatement())):(j.push(e.factory.createExpressionStatement(e.factory.createAssignment(e.factory.createObjectLiteralExpression(Z),z))),O&&j.push(e.factory.createReturnStatement(e.factory.createIdentifier(O))))}else o.facts&i.HasReturn?j.push(e.factory.createReturnStatement(z)):b(o.range)?j.push(e.factory.createExpressionStatement(z)):j.push(z);b(o.range)?M.replaceNodeRangeWithNodes(s.file,e.first(o.range),e.last(o.range),j):M.replaceNodeWithNodes(s.file,o.range,j);var ee=M.getChanges(),te=(b(o.range)?e.first(o.range):o.range).getSourceFile().fileName,re=e.getRenameLocation(ee,te,k,!1);return{renameFilename:te,renameLocation:re,edits:ee};function ne(t){if(void 0!==t){for(var r=e.getSynthesizedDeepClone(t),n=r;e.isParenthesizedTypeNode(n);)n=n.type;return e.isUnionTypeNode(n)&&e.find(n.types,(function(e){return 151===e.kind}))?r:e.factory.createUnionTypeNode([r,e.factory.createKeywordTypeNode(151)])}}}(c,o[n],l[n],d,t,r)}(n,t,o)}var s=/^constant_scope_(\d+)$/.exec(r);if(s){o=+s[1];return e.Debug.assert(isFinite(o),"Expected to parse a finite number from the constant scope index"),function(t,r,n){var a=_(t,r),o=a.scopes,s=a.readsAndWrites,c=s.target,l=s.usagesPerScope,u=s.constantErrorsPerScope,d=s.exposedVariableDeclarations;return e.Debug.assert(!u[n].length,"The extraction went missing? How?"),e.Debug.assert(0===d.length,"Extract constant accepted a range containing a variable declaration?"),r.cancellationToken.throwIfCancellationRequested(),function(t,r,n,a,o){var s,c=n.substitutions,l=o.program.getTypeChecker(),u=r.getSourceFile(),d=e.getUniqueName(e.isClassLike(r)?"newProperty":"newLocal",u),p=e.isInJSFile(r),f=p||!l.isContextSensitive(t)?void 0:l.typeToTypeNode(l.getContextualType(t),r,1),m=function(t,r){return r.size?n(t):t;function n(t){var i=r.get(e.getNodeId(t).toString());return i?e.getSynthesizedDeepClone(i):e.visitEachChild(t,n,e.nullTransformationContext)}}(t,c);s=A(f,m),f=s.variableType,m=s.initializer,e.suppressLeadingAndTrailingTrivia(m);var _=e.textChanges.ChangeTracker.fromContext(o);if(e.isClassLike(r)){e.Debug.assert(!p,"Cannot extract to a JS class");var h=[];h.push(e.factory.createModifier(121)),a&i.InStaticRegion&&h.push(e.factory.createModifier(124)),h.push(e.factory.createModifier(143));var y=e.factory.createPropertyDeclaration(void 0,h,d,void 0,f,m),v=e.factory.createPropertyAccessExpression(a&i.InStaticRegion?e.factory.createIdentifier(r.name.getText()):e.factory.createThis(),e.factory.createIdentifier(d));S(t)&&(v=e.factory.createJsxExpression(void 0,v));var b=function(t,r){var n,i=r.members;e.Debug.assert(i.length>0,"Found no members");for(var a=!0,o=0,s=i;o<s.length;o++){var c=s[o];if(c.pos>t)return n||i[0];if(a&&!e.isPropertyDeclaration(c)){if(void 0!==n)return c;a=!1}n=c}return void 0===n?e.Debug.fail():n}(t.pos,r);_.insertNodeBefore(o.file,b,y,!0),_.replaceNode(o.file,t,v)}else{var k=e.factory.createVariableDeclaration(d,void 0,f,m),w=function(t,r){var n;for(;void 0!==t&&t!==r;){if(e.isVariableDeclaration(t)&&t.initializer===n&&e.isVariableDeclarationList(t.parent)&&t.parent.declarations.length>1)return t;n=t,t=t.parent}}(t,r);if(w){_.insertNodeBefore(o.file,w,k);v=e.factory.createIdentifier(d);_.replaceNode(o.file,t,v)}else if(235===t.parent.kind&&r===e.findAncestor(t,g)){var D=e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([k],2));_.replaceNode(o.file,t.parent,D)}else{D=e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([k],2)),b=function(t,r){var n;e.Debug.assert(!e.isClassLike(r));for(var i=t;i!==r;i=i.parent)g(i)&&(n=i);for(i=(n||t).parent;;i=i.parent){if(x(i)){for(var a=void 0,o=0,s=i.statements;o<s.length;o++){var c=s[o];if(c.pos>t.pos)break;a=c}return!a&&e.isCaseClause(i)?(e.Debug.assert(e.isSwitchStatement(i.parent.parent),"Grandparent isn't a switch statement"),i.parent.parent):e.Debug.checkDefined(a,"prevStatement failed to get set")}e.Debug.assert(i!==r,"Didn't encounter a block-like before encountering scope")}}(t,r);if(0===b.pos?_.insertNodeAtTopOfFile(o.file,D,!1):_.insertNodeBefore(o.file,b,D,!1),235===t.parent.kind)_.delete(o.file,t.parent);else{v=e.factory.createIdentifier(d);S(t)&&(v=e.factory.createJsxExpression(void 0,v)),_.replaceNode(o.file,t,v)}}}var E=_.getChanges(),T=t.getSourceFile().fileName,C=e.getRenameLocation(E,T,d,!0);return{renameFilename:T,renameLocation:C,edits:E};function A(n,i){if(void 0===n)return{variableType:n,initializer:i};if(!e.isFunctionExpression(i)&&!e.isArrowFunction(i)||i.typeParameters)return{variableType:n,initializer:i};var a=l.getTypeAtLocation(t),o=e.singleOrUndefined(l.getSignaturesOfType(a,0));if(!o)return{variableType:n,initializer:i};if(o.getTypeParameters())return{variableType:n,initializer:i};for(var s=[],c=!1,u=0,d=i.parameters;u<d.length;u++){var p=d[u];if(p.type)s.push(p);else{var f=l.getTypeAtLocation(p);f===l.getAnyType()&&(c=!0),s.push(e.factory.updateParameterDeclaration(p,p.decorators,p.modifiers,p.dotDotDotToken,p.name,p.questionToken,p.type||l.typeToTypeNode(f,r,1),p.initializer))}}if(c)return{variableType:n,initializer:i};if(n=void 0,e.isArrowFunction(i))i=e.factory.updateArrowFunction(i,t.modifiers,i.typeParameters,s,i.type||l.typeToTypeNode(o.getReturnType(),r,1),i.equalsGreaterThanToken,i.body);else{if(o&&o.thisParameter){var m=e.firstOrUndefined(s);if(!m||e.isIdentifier(m.name)&&"this"!==m.name.escapedText){var g=l.getTypeOfSymbolAtLocation(o.thisParameter,t);s.splice(0,0,e.factory.createParameterDeclaration(void 0,void 0,void 0,"this",void 0,l.typeToTypeNode(g,r,1)))}}i=e.factory.updateFunctionExpression(i,t.modifiers,i.asteriskToken,i.name,i.typeParameters,s,i.type||l.typeToTypeNode(o.getReturnType(),r,1),i.body)}return{variableType:n,initializer:i}}}(e.isExpression(c)?c:c.statements[0].expression,o[n],l[n],t.facts,r)}(n,t,o)}e.Debug.fail("Unrecognized action name")}function f(t,r,a){void 0===a&&(a=!0);var o=r.length;if(0===o&&!a)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractEmpty)]};var s=0===o&&a,c=e.getTokenAtPosition(t,r.start),l=s?function(t){return e.findAncestor(t,(function(t){return t.parent&&k(t)&&!e.isBinaryExpression(t.parent)}))}(c):e.getParentNodeInSpan(c,t,r),u=e.findTokenOnLeftOfPosition(t,e.textSpanEnd(r)),d=s?l:e.getParentNodeInSpan(u,t,r),p=[],f=i.None;if(!l||!d)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};if(l.parent!==d.parent)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};if(l!==d){if(!x(l.parent))return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};for(var g=[],_=0,h=l.parent.statements;_<h.length;_++){var y=h[_];if(y===l||g.length){var v=w(y);if(v)return{errors:v};g.push(y)}if(y===d)break}return g.length?{targetRange:{range:g,facts:f,declarations:p}}:{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]}}if(e.isJSDoc(l))return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractJSDoc)]};if(e.isReturnStatement(l)&&!l.expression)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};var b=function(t){if(e.isReturnStatement(t)){if(t.expression)return t.expression}else if(e.isVariableStatement(t)){for(var r=0,n=void 0,i=0,a=t.declarationList.declarations;i<a.length;i++){var o=a[i];o.initializer&&(r++,n=o.initializer)}if(1===r)return n}else if(e.isVariableDeclaration(t)&&t.initializer)return t.initializer;return t}(l),S=function(t){if(e.isIdentifier(e.isExpressionStatement(t)?t.expression:t))return[e.createDiagnosticForNode(t,n.cannotExtractIdentifier)];return}(b)||w(b);return S?{errors:S}:{targetRange:{range:m(b),facts:f,declarations:p}};function w(t){var a;if(function(e){e[e.None=0]="None",e[e.Break=1]="Break",e[e.Continue=2]="Continue",e[e.Return=4]="Return"}(a||(a={})),e.Debug.assert(t.pos<=t.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),e.Debug.assert(!e.positionIsSynthesized(t.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!(e.isStatement(t)||e.isExpressionNode(t)&&k(t)))return[e.createDiagnosticForNode(t,n.statementOrExpressionExpected)];if(8388608&t.flags)return[e.createDiagnosticForNode(t,n.cannotExtractAmbientBlock)];var o,s=e.getContainingClass(t);s&&function(t,r){for(var n=t;n!==r;){if(164===n.kind){e.hasSyntacticModifier(n,32)&&(f|=i.InStaticRegion);break}if(161===n.kind){167===e.getContainingFunction(n).kind&&(f|=i.InStaticRegion);break}166===n.kind&&e.hasSyntacticModifier(n,32)&&(f|=i.InStaticRegion),n=n.parent}}(t,s);var c,l=4;return function t(a){if(o)return!0;if(e.isDeclaration(a)){var s=251===a.kind?a.parent.parent:a;if(e.hasSyntacticModifier(s,1))return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractExportedEntity)),!0;p.push(a.symbol)}switch(a.kind){case 264:return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractImport)),!0;case 269:return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractExportedEntity)),!0;case 106:if(204===a.parent.kind){var u=e.getContainingClass(a);if(u.pos<r.start||u.end>=r.start+r.length)return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractSuper)),!0}else f|=i.UsesThis;break;case 210:e.forEachChild(a,(function t(r){if(e.isThis(r))f|=i.UsesThis;else{if(e.isClassLike(r)||e.isFunctionLike(r)&&!e.isArrowFunction(r))return!1;e.forEachChild(r,t)}}));case 254:case 253:e.isSourceFile(a.parent)&&void 0===a.parent.externalModuleIndicator&&(o||(o=[])).push(e.createDiagnosticForNode(a,n.functionWillNotBeVisibleInTheNewScope));case 223:case 209:case 166:case 167:case 168:case 169:return!1}var d=l;switch(a.kind){case 236:case 249:l=0;break;case 232:a.parent&&249===a.parent.kind&&a.parent.finallyBlock===a&&(l=4);break;case 288:case 287:l|=1;break;default:e.isIterationStatement(a,!1)&&(l|=3)}switch(a.kind){case 188:case 108:f|=i.UsesThis;break;case 247:var m=a.label;(c||(c=[])).push(m.escapedText),e.forEachChild(a,t),c.pop();break;case 243:case 242:(m=a.label)?e.contains(c,m.escapedText)||(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):l&(243===a.kind?1:2)||(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break;case 215:f|=i.IsAsyncFunction;break;case 221:f|=i.IsGenerator;break;case 244:4&l?f|=i.HasReturn:(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractRangeContainingConditionalReturnStatement));break;default:e.forEachChild(a,t)}l=d}(t),o}}function m(t){return e.isStatement(t)?[t]:e.isExpressionNode(t)?e.isExpressionStatement(t.parent)?[t.parent]:t:void 0}function g(t){return e.isFunctionLikeDeclaration(t)||e.isSourceFile(t)||e.isModuleBlock(t)||e.isClassLike(t)}function _(t,r){var a=r.file,o=function(t){var r=b(t.range)?e.first(t.range):t.range;if(t.facts&i.UsesThis){var n=e.getContainingClass(r);if(n){var a=e.findAncestor(r,e.isFunctionLikeDeclaration);return a?[a,n]:[n]}}for(var o=[];;)if(161===(r=r.parent).kind&&(r=e.findAncestor(r,(function(t){return e.isFunctionLikeDeclaration(t)})).parent),g(r)&&(o.push(r),300===r.kind))return o}(t),s=function(t,r){return b(t.range)?{pos:e.first(t.range).getStart(r),end:e.last(t.range).getEnd()}:t.range}(t,a),c=function(t,r,a,o,s,c){var l,u,d=new e.Map,p=[],f=[],m=[],g=[],_=[],h=new e.Map,y=[],v=b(t.range)?1===t.range.length&&e.isExpressionStatement(t.range[0])?t.range[0].expression:void 0:t.range;if(void 0===v){var k=t.range,x=e.first(k).getStart(),S=e.last(k).end;u=e.createFileDiagnostic(o,x,S-x,n.expressionExpected)}else 147456&s.getTypeAtLocation(v).flags&&(u=e.createDiagnosticForNode(v,n.uselessConstantType));for(var w=0,D=r;w<D.length;w++){var E=D[w];p.push({usages:new e.Map,typeParameterUsages:new e.Map,substitutions:new e.Map}),f.push(new e.Map),m.push(e.isFunctionLikeDeclaration(E)&&253!==E.kind?[e.createDiagnosticForNode(E,n.cannotExtractToOtherFunctionLike)]:[]);var T=[];u&&T.push(u),e.isClassLike(E)&&e.isInJSFile(E)&&T.push(e.createDiagnosticForNode(E,n.cannotExtractToJSClass)),e.isArrowFunction(E)&&!e.isBlock(E.body)&&T.push(e.createDiagnosticForNode(E,n.cannotExtractToExpressionArrowFunction)),g.push(T)}var C=new e.Map,A=b(t.range)?e.factory.createBlock(t.range):t.range,N=b(t.range)?e.first(t.range):t.range,P=q(N);if(V(A),P&&!b(t.range)){J(s.getContextualType(t.range))}if(d.size>0){for(var I=new e.Map,F=0,O=N;void 0!==O&&F<r.length;O=O.parent)if(O===r[F]&&(I.forEach((function(e,t){p[F].typeParameterUsages.set(t,e)})),F++),e.isDeclarationWithTypeParameters(O))for(var R=0,M=e.getEffectiveTypeParameterDeclarations(O);R<M.length;R++){var L=M[R],j=s.getTypeAtLocation(L);d.has(j.id.toString())&&I.set(j.id.toString(),j)}e.Debug.assert(F===r.length,"Should have iterated all scopes")}if(_.length){var B=e.isBlockScope(r[0],r[0].parent)?r[0]:e.getEnclosingBlockScopeContainer(r[0]);e.forEachChild(B,W)}for(var z=function(r){var i=p[r];if(r>0&&(i.usages.size>0||i.typeParameterUsages.size>0)){var a=b(t.range)?t.range[0]:t.range;g[r].push(e.createDiagnosticForNode(a,n.cannotAccessVariablesFromNestedScopes))}var o,s=!1;if(p[r].usages.forEach((function(t){2===t.usage&&(s=!0,106500&t.symbol.flags&&t.symbol.valueDeclaration&&e.hasEffectiveModifier(t.symbol.valueDeclaration,64)&&(o=t.symbol.valueDeclaration))})),e.Debug.assert(b(t.range)||0===y.length,"No variable declarations expected if something was extracted"),s&&!b(t.range)){var c=e.createDiagnosticForNode(t.range,n.cannotWriteInExpression);m[r].push(c),g[r].push(c)}else if(o&&r>0){c=e.createDiagnosticForNode(o,n.cannotExtractReadonlyPropertyInitializerOutsideConstructor);m[r].push(c),g[r].push(c)}else if(l){c=e.createDiagnosticForNode(l,n.cannotExtractExportedEntity);m[r].push(c),g[r].push(c)}},U=0;U<r.length;U++)z(U);return{target:A,usagesPerScope:p,functionErrorsPerScope:m,constantErrorsPerScope:g,exposedVariableDeclarations:y};function q(t){return!!e.findAncestor(t,(function(t){return e.isDeclarationWithTypeParameters(t)&&0!==e.getEffectiveTypeParameterDeclarations(t).length}))}function J(e){for(var t=0,r=s.getSymbolWalker((function(){return c.throwIfCancellationRequested(),!0})).walkType(e).visitedTypes;t<r.length;t++){var n=r[t];n.isTypeParameter()&&d.set(n.id.toString(),n)}}function V(t,r){(void 0===r&&(r=1),P)&&J(s.getTypeAtLocation(t));if(e.isDeclaration(t)&&t.symbol&&_.push(t),e.isAssignmentExpression(t))V(t.left,2),V(t.right);else if(e.isUnaryExpressionWithWrite(t))V(t.operand,2);else if(e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t))e.forEachChild(t,V);else if(e.isIdentifier(t)){if(!t.parent)return;if(e.isQualifiedName(t.parent)&&t!==t.parent.left)return;if(e.isPropertyAccessExpression(t.parent)&&t!==t.parent.expression)return;H(t,r,e.isPartOfTypeNode(t))}else e.forEachChild(t,V)}function H(t,n,i){var a=K(t,n,i);if(a)for(var o=0;o<r.length;o++){var s=f[o].get(a);s&&p[o].substitutions.set(e.getNodeId(t).toString(),s)}}function K(c,l,u){var d=G(c);if(d){var _=e.getSymbolId(d).toString(),h=C.get(_);if(h&&h>=l)return _;if(C.set(_,l),h){for(var y=0,v=p;y<v.length;y++){var b=v[y];b.usages.get(c.text)&&b.usages.set(c.text,{usage:l,symbol:d,node:c})}return _}var k=d.getDeclarations(),x=k&&e.find(k,(function(e){return e.getSourceFile()===o}));if(x&&!e.rangeContainsStartEnd(a,x.getStart(),x.end)){if(t.facts&i.IsGenerator&&2===l){for(var S=e.createDiagnosticForNode(c,n.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators),w=0,D=m;w<D.length;w++){D[w].push(S)}for(var E=0,T=g;E<T.length;E++){T[E].push(S)}}for(var A=0;A<r.length;A++){var N=r[A];if(s.resolveName(d.name,N,d.flags,!1)!==d&&!f[A].has(_)){var P=$(d.exportSymbol||d,N,u);if(P)f[A].set(_,P);else if(u){if(!(262144&d.flags)){S=e.createDiagnosticForNode(c,n.typeWillNotBeVisibleInTheNewScope);m[A].push(S),g[A].push(S)}}else p[A].usages.set(c.text,{usage:l,symbol:d,node:c})}}return _}}}function W(r){if(!(r===t.range||b(t.range)&&t.range.indexOf(r)>=0)){var n=e.isIdentifier(r)?G(r):s.getSymbolAtLocation(r);if(n){var i=e.find(_,(function(e){return e.symbol===n}));if(i)if(e.isVariableDeclaration(i)){var a=i.symbol.id.toString();h.has(a)||(y.push(i),h.set(a,!0))}else l=l||i}e.forEachChild(r,W)}}function G(t){return t.parent&&e.isShorthandPropertyAssignment(t.parent)&&t.parent.name===t?s.getShorthandAssignmentValueSymbol(t.parent):s.getSymbolAtLocation(t)}function $(t,r,n){if(t){var i=t.getDeclarations();if(i&&i.some((function(e){return e.parent===r})))return e.factory.createIdentifier(t.name);var a=$(t.parent,r,n);if(void 0!==a)return n?e.factory.createQualifiedName(a,e.factory.createIdentifier(t.name)):e.factory.createPropertyAccessExpression(a,t.name)}}}(t,o,s,a,r.program.getTypeChecker(),r.cancellationToken);return{scopes:o,readsAndWrites:c}}function h(e){var t,r=e.symbol;if(r&&r.declarations)for(var n=0,i=r.declarations;n<i.length;n++){var a=i[n];(void 0===t||a.pos<t.pos)&&(t=a)}return t}function y(t,r){var n=t.type,i=t.declaration,a=r.type,o=r.declaration;return e.compareProperties(i,o,"pos",e.compareValues)||e.compareStringsCaseSensitive(n.symbol?n.symbol.getName():"",a.symbol?a.symbol.getName():"")||e.compareValues(n.id,a.id)}function v(t,r){var n=e.map(t,(function(t){return e.factory.createShorthandPropertyAssignment(t.symbol.name)})),i=e.map(r,(function(t){return e.factory.createShorthandPropertyAssignment(t.symbol.name)}));return void 0===n?i:void 0===i?n:n.concat(i)}function b(t){return e.isArray(t)}function k(e){var t=e.parent;if(294===t.kind)return!1;switch(e.kind){case 10:return 264!==t.kind&&268!==t.kind;case 222:case 197:case 199:return!1;case 78:return 199!==t.kind&&268!==t.kind&&273!==t.kind}return!0}function x(e){switch(e.kind){case 232:case 300:case 260:case 287:return!0;default:return!1}}function S(t){return(e.isJsxElement(t)||e.isJsxSelfClosingElement(t)||e.isJsxFragment(t))&&e.isJsxElement(t.parent)}t.registerRefactor(c,{kinds:[l.kind,u.kind],getAvailableActions:d,getEditsForAction:p}),r.getAvailableActions=d,r.getEditsForAction=p,function(t){function r(t){return{message:t,code:0,category:e.DiagnosticCategory.Message,key:t}}t.cannotExtractRange=r("Cannot extract range."),t.cannotExtractImport=r("Cannot extract import statement."),t.cannotExtractSuper=r("Cannot extract super call."),t.cannotExtractJSDoc=r("Cannot extract JSDoc."),t.cannotExtractEmpty=r("Cannot extract empty range."),t.expressionExpected=r("expression expected."),t.uselessConstantType=r("No reason to extract constant of type."),t.statementOrExpressionExpected=r("Statement or expression expected."),t.cannotExtractRangeContainingConditionalBreakOrContinueStatements=r("Cannot extract range containing conditional break or continue statements."),t.cannotExtractRangeContainingConditionalReturnStatement=r("Cannot extract range containing conditional return statement."),t.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=r("Cannot extract range containing labeled break or continue with target outside of the range."),t.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=r("Cannot extract range containing writes to references located outside of the target range in generators."),t.typeWillNotBeVisibleInTheNewScope=r("Type will not visible in the new scope."),t.functionWillNotBeVisibleInTheNewScope=r("Function will not visible in the new scope."),t.cannotExtractIdentifier=r("Select more than a single identifier."),t.cannotExtractExportedEntity=r("Cannot extract exported declaration"),t.cannotWriteInExpression=r("Cannot write back side-effects when extracting an expression"),t.cannotExtractReadonlyPropertyInitializerOutsideConstructor=r("Cannot move initialization of read-only class property outside of the constructor"),t.cannotExtractAmbientBlock=r("Cannot extract code from ambient contexts"),t.cannotAccessVariablesFromNestedScopes=r("Cannot access variables from nested scopes"),t.cannotExtractToOtherFunctionLike=r("Cannot extract method to a function-like scope that is not a function"),t.cannotExtractToJSClass=r("Cannot extract constant to a class scope in JS"),t.cannotExtractToExpressionArrowFunction=r("Cannot extract constant to an arrow function without a block")}(n=r.Messages||(r.Messages={})),function(e){e[e.None=0]="None",e[e.HasReturn=1]="HasReturn",e[e.IsGenerator=2]="IsGenerator",e[e.IsAsyncFunction=4]="IsAsyncFunction",e[e.UsesThis=8]="UsesThis",e[e.InStaticRegion=16]="InStaticRegion"}(i||(i={})),r.getRangeToExtract=f,function(e){e[e.Module=0]="Module",e[e.Global=1]="Global"}(o||(o={})),function(e){e[e.Read=1]="Read",e[e.Write=2]="Write"}(s||(s={}))}(t.extractSymbol||(t.extractSymbol={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r="Extract type",n={name:"Extract to type alias",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_type_alias),kind:"refactor.extract.type"},i={name:"Extract to interface",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_interface),kind:"refactor.extract.interface"},o={name:"Extract to typedef",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_typedef),kind:"refactor.extract.typedef"};function s(t,r){void 0===r&&(r=!0);var n=t.file,i=t.startPosition,a=e.isSourceFileJS(n),o=e.getTokenAtPosition(n,i),s=e.createTextRangeFromSpan(e.getRefactorContextSpan(t)),u=s.pos===s.end&&r,d=e.findAncestor(o,(function(t){return t.parent&&e.isTypeNode(t)&&!l(s,t.parent,n)&&(u||e.nodeOverlapsWithStartEnd(o,n,s.pos,s.end))}));if(!d||!e.isTypeNode(d))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Selection_is_not_a_valid_type_node)};var p=t.program.getTypeChecker(),f=e.Debug.checkDefined(e.findAncestor(d,e.isStatement),"Should find a statement"),m=function(t,r,n,i){var a=[];return o(r)?void 0:a;function o(s){if(e.isTypeReferenceNode(s)){if(e.isIdentifier(s.typeName)&&(p=t.resolveName(s.typeName.text,s.typeName,262144,!0))){var c=e.cast(e.first(p.declarations),e.isTypeParameterDeclaration);l(n,c,i)&&!l(r,c,i)&&e.pushIfUnique(a,c)}}else if(e.isInferTypeNode(s)){var u=e.findAncestor(s,(function(t){return e.isConditionalTypeNode(t)&&l(t.extendsType,s,i)}));if(!u||!l(r,u,i))return!0}else if(e.isTypePredicateNode(s)||e.isThisTypeNode(s)){var d=e.findAncestor(s.parent,e.isFunctionLike);if(d&&d.type&&l(d.type,s,i)&&!l(r,d,i))return!0}else if(e.isTypeQueryNode(s)){var p;if(e.isIdentifier(s.exprName)){if((p=t.resolveName(s.exprName.text,s.exprName,111551,!1))&&l(n,p.valueDeclaration,i)&&!l(r,p.valueDeclaration,i))return!0}else if(e.isThisIdentifier(s.exprName.left)&&!l(r,s.parent,i))return!0}return i&&e.isTupleTypeNode(s)&&e.getLineAndCharacterOfPosition(i,s.pos).line===e.getLineAndCharacterOfPosition(i,s.end).line&&e.setEmitFlags(s,1),e.forEachChild(s,o)}}(p,d,f,n);return m?{isJS:a,selection:d,firstStatement:f,typeParameters:m,typeElements:c(p,d)}:{error:e.getLocaleSpecificMessage(e.Diagnostics.No_type_could_be_extracted_from_this_type_node)}}function c(t,r){if(r){if(e.isIntersectionTypeNode(r)){for(var n=[],i=new e.Map,a=0,o=r.types;a<o.length;a++){var s=c(t,o[a]);if(!s||!s.every((function(t){return t.name&&e.addToSeen(i,e.getNameFromPropertyName(t.name))})))return;e.addRange(n,s)}return n}return e.isParenthesizedTypeNode(r)?c(t,r.type):e.isTypeLiteralNode(r)?r.members:void 0}}function l(t,r,n){return e.rangeContainsStartEnd(t,e.skipTrivia(n.text,r.pos),r.end)}t.registerRefactor(r,{kinds:[n.kind,i.kind,o.kind],getAvailableActions:function(c){var l=s(c,"invoked"===c.triggerReason);return l?t.isRefactorErrorInfo(l)?c.preferences.provideRefactorNotApplicableReason?[{name:r,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_type),actions:[a(a({},o),{notApplicableReason:l.error}),a(a({},n),{notApplicableReason:l.error}),a(a({},i),{notApplicableReason:l.error})]}]:e.emptyArray:[{name:r,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_type),actions:l.isJS?[o]:e.append([n],l.typeElements&&i)}]:e.emptyArray},getEditsForAction:function(r,a){var c=r.file,l=s(r);e.Debug.assert(l&&!t.isRefactorErrorInfo(l),"Expected to find a range to extract");var u=e.getUniqueName("NewType",c),d=e.textChanges.ChangeTracker.with(r,(function(t){switch(a){case n.name:return e.Debug.assert(!l.isJS,"Invalid actionName/JS combo"),function(t,r,n,i){var a=i.firstStatement,o=i.selection,s=i.typeParameters,c=e.factory.createTypeAliasDeclaration(void 0,void 0,n,s.map((function(t){return e.factory.updateTypeParameterDeclaration(t,t.name,t.constraint,void 0)})),o);t.insertNodeBefore(r,a,e.ignoreSourceNewlines(c),!0),t.replaceNode(r,o,e.factory.createTypeReferenceNode(n,s.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)}))),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.ExcludeWhitespace})}(t,c,u,l);case o.name:return e.Debug.assert(l.isJS,"Invalid actionName/JS combo"),function(t,r,n,i){var a=i.firstStatement,o=i.selection,s=i.typeParameters,c=e.factory.createJSDocTypedefTag(e.factory.createIdentifier("typedef"),e.factory.createJSDocTypeExpression(o),e.factory.createIdentifier(n)),l=[];e.forEach(s,(function(t){var r=e.getEffectiveConstraintOfTypeParameter(t),n=e.factory.createTypeParameterDeclaration(t.name),i=e.factory.createJSDocTemplateTag(e.factory.createIdentifier("template"),r&&e.cast(r,e.isJSDocTypeExpression),[n]);l.push(i)})),t.insertNodeBefore(r,a,e.factory.createJSDocComment(void 0,e.factory.createNodeArray(e.concatenate(l,[c]))),!0),t.replaceNode(r,o,e.factory.createTypeReferenceNode(n,s.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)}))))}(t,c,u,l);case i.name:return e.Debug.assert(!l.isJS&&!!l.typeElements,"Invalid actionName/JS combo"),function(t,r,n,i){var a,o=i.firstStatement,s=i.selection,c=i.typeParameters,l=i.typeElements,u=e.factory.createInterfaceDeclaration(void 0,void 0,n,c,void 0,l);e.setTextRange(u,null===(a=l[0])||void 0===a?void 0:a.parent),t.insertNodeBefore(r,o,e.ignoreSourceNewlines(u),!0),t.replaceNode(r,s,e.factory.createTypeReferenceNode(n,c.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)}))),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.ExcludeWhitespace})}(t,c,u,l);default:e.Debug.fail("Unexpected action name")}})),p=c.fileName;return{edits:d,renameFilename:p,renameLocation:e.getRenameLocation(d,p,u,!1)}}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r,n,i;t.generateGetAccessorAndSetAccessor||(t.generateGetAccessorAndSetAccessor={}),r="Generate 'get' and 'set' accessors",n=e.Diagnostics.Generate_get_and_set_accessors.message,i={name:r,description:n,kind:"refactor.rewrite.property.generateAccessors"},t.registerRefactor(r,{kinds:[i.kind],getEditsForAction:function(r,n){if(r.endPosition){var i=e.codefix.getAccessorConvertiblePropertyAtPosition(r.file,r.program,r.startPosition,r.endPosition);e.Debug.assert(i&&!t.isRefactorErrorInfo(i),"Expected applicable refactor info");var a=e.codefix.generateAccessorFromProperty(r.file,r.program,r.startPosition,r.endPosition,r,n);if(a){var o=r.file.fileName,s=i.renameAccessor?i.accessorName:i.fieldName;return{renameFilename:o,renameLocation:(e.isIdentifier(s)?0:-1)+e.getRenameLocation(a,o,s.text,e.isParameter(i.declaration)),edits:a}}}},getAvailableActions:function(o){if(!o.endPosition)return e.emptyArray;var s=e.codefix.getAccessorConvertiblePropertyAtPosition(o.file,o.program,o.startPosition,o.endPosition,"invoked"===o.triggerReason);return s?t.isRefactorErrorInfo(s)?o.preferences.provideRefactorNotApplicableReason?[{name:r,description:n,actions:[a(a({},i),{notApplicableReason:s.error})]}]:e.emptyArray:[{name:r,description:n,actions:[i]}]:e.emptyArray}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(e){e.isRefactorErrorInfo=function(e){return void 0!==e.error},e.refactorKindBeginsWith=function(e,t){return!t||e.substr(0,t.length)===t}}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r="Move to a new file",n=e.getLocaleSpecificMessage(e.Diagnostics.Move_to_a_new_file),o={name:r,description:n,kind:"refactor.move.newFile"};function s(t){var r=function(t){var r=t.file,n=e.createTextRangeFromSpan(e.getRefactorContextSpan(t)),i=r.statements,a=e.findIndex(i,(function(e){return e.end>n.pos}));if(-1!==a){var o=i[a];if(e.isNamedDeclaration(o)&&o.name&&e.rangeContainsRange(o.name,n))return{toMove:[i[a]],afterLast:i[a+1]};if(!(n.pos>o.getStart(r))){var s=e.findIndex(i,(function(e){return e.end>n.end}),a);if(-1===s||!(0===s||i[s].getStart(r)<n.end))return{toMove:i.slice(a,-1===s?i.length:s),afterLast:-1===s?void 0:i[s]}}}}(t);if(void 0!==r){var n=[],i=[],a=r.toMove,o=r.afterLast;return e.getRangesWhere(a,c,(function(e,t){for(var r=e;r<t;r++)n.push(a[r]);i.push({first:a[e],afterLast:o})})),0===n.length?void 0:{all:n,ranges:i}}}function c(t){return!function(t){switch(t.kind){case 264:return!0;case 263:return!e.hasSyntacticModifier(t,1);case 234:return t.declarationList.declarations.every((function(t){return!!t.initializer&&e.isRequireCall(t.initializer,!0)}));default:return!1}}(t)&&!e.isPrologueDirective(t)}function l(e,t,r){for(var n=0,i=t;n<i.length;n++){var a=i[n],o=a.first,s=a.afterLast;r.deleteNodeRangeExcludingEnd(e,o,s)}}function u(e){return 264===e.kind?e.moduleSpecifier:263===e.kind?e.moduleReference.expression:e.initializer.arguments[0]}function d(t,r){if(e.isImportDeclaration(t))e.isStringLiteral(t.moduleSpecifier)&&r(t);else if(e.isImportEqualsDeclaration(t))e.isExternalModuleReference(t.moduleReference)&&e.isStringLiteralLike(t.moduleReference.expression)&&r(t);else if(e.isVariableStatement(t))for(var n=0,i=t.declarationList.declarations;n<i.length;n++){var a=i[n];a.initializer&&e.isRequireCall(a.initializer,!0)&&r(a)}}function p(t,r,n,i,a){if(n=e.ensurePathIsNonModuleName(n),i){var o=r.map((function(t){return e.factory.createImportSpecifier(void 0,e.factory.createIdentifier(t))}));return e.makeImportIfNecessary(t,o,n,a)}e.Debug.assert(!t,"No default import should exist");var s=r.map((function(t){return e.factory.createBindingElement(void 0,void 0,t)}));return s.length?f(e.factory.createObjectBindingPattern(s),void 0,m(e.factory.createStringLiteral(n))):void 0}function f(t,r,n,i){return void 0===i&&(i=2),e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(t,void 0,r,n)],i))}function m(t){return e.factory.createCallExpression(e.factory.createIdentifier("require"),void 0,[t])}function g(t,r,n,i){switch(r.kind){case 264:!function(t,r,n,i){if(!r.importClause)return;var a=r.importClause,o=a.name,s=a.namedBindings,c=!o||i(o),l=!s||(266===s.kind?i(s.name):0!==s.elements.length&&s.elements.every((function(e){return i(e.name)})));if(c&&l)n.delete(t,r);else if(o&&c&&n.delete(t,o),s)if(l)n.replaceNode(t,r.importClause,e.factory.updateImportClause(r.importClause,r.importClause.isTypeOnly,o,void 0));else if(267===s.kind)for(var u=0,d=s.elements;u<d.length;u++){var p=d[u];i(p.name)&&n.delete(t,p)}}(t,r,n,i);break;case 263:i(r.name)&&n.delete(t,r);break;case 251:!function(t,r,n,i){var a=r.name;switch(a.kind){case 78:i(a)&&n.delete(t,a);break;case 198:break;case 197:if(a.elements.every((function(t){return e.isIdentifier(t.name)&&i(t.name)})))n.delete(t,e.isVariableDeclarationList(r.parent)&&1===r.parent.declarations.length?r.parent.parent:r);else for(var o=0,s=a.elements;o<s.length;o++){var c=s[o];e.isIdentifier(c.name)&&i(c.name)&&n.delete(t,c.name)}}}(t,r,n,i);break;default:e.Debug.assertNever(r,"Unexpected import decl kind "+r.kind)}}function _(t){switch(t.kind){case 263:case 268:case 265:case 266:return!0;case 251:return h(t);case 199:return e.isVariableDeclaration(t.parent.parent)&&h(t.parent.parent);default:return!1}}function h(t){return e.isSourceFile(t.parent.parent.parent)&&!!t.initializer&&e.isRequireCall(t.initializer,!0)}function y(t,r,n){switch(t.kind){case 264:var i=t.importClause;if(!i)return;var a=i.name&&n(i.name)?i.name:void 0,o=i.namedBindings&&function(t,r){if(266===t.kind)return r(t.name)?t:void 0;var n=t.elements.filter((function(e){return r(e.name)}));return n.length?e.factory.createNamedImports(n):void 0}(i.namedBindings,n);return a||o?e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,a,o),r):void 0;case 263:return n(t.name)?t:void 0;case 251:var s=function(t,r){switch(t.kind){case 78:return r(t)?t:void 0;case 198:return t;case 197:var n=t.elements.filter((function(t){return t.propertyName||!e.isIdentifier(t.name)||r(t.name)}));return n.length?e.factory.createObjectBindingPattern(n):void 0}}(t.name,n);return s?f(s,t.type,m(r),t.parent.flags):void 0;default:return e.Debug.assertNever(t,"Unexpected import kind "+t.kind)}}function v(t,r,n){t.forEachChild((function t(i){if(e.isIdentifier(i)&&!e.isDeclarationName(i)){var a=r.getSymbolAtLocation(i);a&&n(a)}else i.forEachChild(t)}))}t.registerRefactor(r,{kinds:[o.kind],getAvailableActions:function(t){var i=s(t);return t.preferences.allowTextChangesInNewFiles&&i?[{name:r,description:n,actions:[o]}]:t.preferences.provideRefactorNotApplicableReason?[{name:r,description:n,actions:[a(a({},o),{notApplicableReason:e.getLocaleSpecificMessage(e.Diagnostics.Selection_is_not_a_valid_statement_or_statements)})]}]:e.emptyArray},getEditsForAction:function(t,n){e.Debug.assert(n===r,"Wrong refactor invoked");var a=e.Debug.checkDefined(s(t));return{edits:e.textChanges.ChangeTracker.with(t,(function(r){return n=t.file,o=t.program,s=a,c=r,f=t.host,h=t.preferences,D=o.getTypeChecker(),F=function(t,r,n){var i=new b,a=new b,o=new b,s=e.find(r,(function(e){return!!(2&e.transformFlags)})),c=S(s);c&&a.add(c);for(var l=0,u=r;l<u.length;l++)w(y=u[l],(function(t){i.add(e.Debug.checkDefined(e.isExpressionStatement(t)?n.getSymbolAtLocation(t.expression.left):t.symbol,"Need a symbol here"))}));for(var d=0,p=r;d<p.length;d++)v(y=p[d],n,(function(e){if(e.declarations)for(var r=0,n=e.declarations;r<n.length;r++){var s=n[r];_(s)?a.add(e):k(s)&&x(s)===t&&!i.has(e)&&o.add(e)}}));for(var f=a.clone(),m=new b,g=0,h=t.statements;g<h.length;g++){var y=h[g];e.contains(r,y)||(c&&2&y.transformFlags&&f.delete(c),v(y,n,(function(e){i.has(e)&&m.add(e),f.delete(e)})))}return{movedSymbols:i,newFileImportsFromOldFile:o,oldFileImportsFromNewFile:m,oldImportsNeededByNewFile:a,unusedImportsFromOldFile:f};function S(t){if(void 0!==t){var r=n.getJsxNamespace(t),i=n.resolveName(r,t,1920,!0);return i&&e.some(i.declarations,_)?i:void 0}}}(n,s.all,D),O=e.getDirectoryPath(n.fileName),R=e.extensionFromPath(n.fileName),M=function(t,r,n,i){for(var a=t,o=1;;o++){var s=e.combinePaths(n,a+r);if(!i.fileExists(s))return a;a=t+"."+o}}(F.movedSymbols.forEachEntry(e.symbolNameNoDefault)||"newFile",R,O,f),L=M+R,c.createNewFile(n,e.combinePaths(O,L),function(t,r,n,a,o,s,c){var f=o.getTypeChecker(),_=e.takeWhile(t.statements,e.isPrologueDirective);if(!t.externalModuleIndicator&&!t.commonJsModuleIndicator)return l(t,a.ranges,n),i(i([],_),a.all);var h=!!t.externalModuleIndicator,v=e.getQuotePreference(t,c),b=function(t,r,n,i){var a,o=[];return t.forEach((function(t){"default"===t.escapedName?a=e.factory.createIdentifier(e.symbolNameNoDefault(t)):o.push(t.name)})),p(a,o,r,n,i)}(r.oldFileImportsFromNewFile,s,h,v);b&&e.insertImports(n,t,b,!0),function(t,r,n,i,a){for(var o=0,s=t.statements;o<s.length;o++){var c=s[o];e.contains(r,c)||d(c,(function(e){return g(t,e,n,(function(e){return i.has(a.getSymbolAtLocation(e))}))}))}}(t,a.all,n,r.unusedImportsFromOldFile,f),l(t,a.ranges,n),function(t,r,n,i,a){for(var o=r.getTypeChecker(),s=function(r){if(r===n)return"continue";for(var s=function(s){d(s,(function(c){if(o.getSymbolAtLocation(u(c))===n.symbol){var l=function(t){var r=e.isBindingElement(t.parent)?e.getPropertySymbolFromBindingElement(o,t.parent):e.skipAlias(o.getSymbolAtLocation(t),o);return!!r&&i.has(r)};g(r,c,t,l);var d=e.combinePaths(e.getDirectoryPath(u(c).text),a),p=y(c,e.factory.createStringLiteral(d),l);p&&t.insertNodeAfter(r,s,p);var f=function(t){switch(t.kind){case 264:return t.importClause&&t.importClause.namedBindings&&266===t.importClause.namedBindings.kind?t.importClause.namedBindings.name:void 0;case 263:return t.name;case 251:return e.tryCast(t.name,e.isIdentifier);default:return e.Debug.assertNever(t,"Unexpected node kind "+t.kind)}}(c);f&&function(t,r,n,i,a,o,s,c){var l=e.codefix.moduleSpecifierToValidIdentifier(a,99),u=!1,d=[];if(e.FindAllReferences.Core.eachSymbolReferenceInFile(s,n,r,(function(t){e.isPropertyAccessExpression(t.parent)&&(u=u||!!n.resolveName(l,t,67108863,!0),i.has(n.getSymbolAtLocation(t.parent.name))&&d.push(t))})),d.length){for(var p=u?e.getUniqueName(l,r):l,f=0,g=d;f<g.length;f++){var _=g[f];t.replaceNode(r,_,e.factory.createIdentifier(p))}t.insertNodeAfter(r,c,function(t,r,n){var i=e.factory.createIdentifier(r),a=e.factory.createStringLiteral(n);switch(t.kind){case 264:return e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamespaceImport(i)),a);case 263:return e.factory.createImportEqualsDeclaration(void 0,void 0,!1,i,e.factory.createExternalModuleReference(a));case 251:return e.factory.createVariableDeclaration(i,void 0,void 0,m(a));default:return e.Debug.assertNever(t,"Unexpected node kind "+t.kind)}}(c,a,o))}}(t,r,o,i,a,d,f,c)}}))},c=0,l=r.statements;c<l.length;c++)s(l[c])},c=0,l=r.getSourceFiles();c<l.length;c++)s(l[c])}(n,o,t,r.movedSymbols,s);var x=function(t,r,n,i,a,o,s){for(var c,l=[],f=0,m=t.statements;f<m.length;f++)d(m[f],(function(t){e.append(l,y(t,u(t),(function(e){return r.has(a.getSymbolAtLocation(e))})))}));var g=[],_=e.nodeSeenTracker();return n.forEach((function(r){for(var n=0,a=r.declarations;n<a.length;n++){var s=a[n];if(k(s)){var l=E(s);if(l){var u=T(s);_(u)&&C(t,u,i,o),e.hasSyntacticModifier(s,512)?c=l:g.push(l.text)}}}})),e.append(l,p(c,g,e.removeFileExtension(e.getBaseFileName(t.fileName)),o,s)),l}(t,r.oldImportsNeededByNewFile,r.newFileImportsFromOldFile,n,f,h,v),D=function(t,r,n,a){return e.flatMap(r,(function(r){if(s=r,e.Debug.assert(e.isSourceFile(s.parent),"Node parent should be a SourceFile"),(S(s)||e.isVariableStatement(s))&&!A(t,r,a)&&w(r,(function(t){return n.has(e.Debug.checkDefined(t.symbol))}))){var o=function(e,t){return t?[N(e)]:function(e){return i([e],P(e).map(I))}(e)}(r,a);if(o)return o}var s;return r}))}(t,a.all,r.oldFileImportsFromNewFile,h);return x.length&&D.length?i(i(i(i([],_),x),[4]),D):i(i(i([],_),x),D)}(n,F,c,s,o,M,h)),void function(t,r,n,i,a){var o=t.getCompilerOptions().configFile;if(o){var s=e.normalizePath(e.combinePaths(n,"..",i)),c=e.getRelativePathFromFile(o.fileName,s,a),l=o.statements[0]&&e.tryCast(o.statements[0].expression,e.isObjectLiteralExpression),u=l&&e.find(l.properties,(function(t){return e.isPropertyAssignment(t)&&e.isStringLiteral(t.name)&&"files"===t.name.text}));u&&e.isArrayLiteralExpression(u.initializer)&&r.insertNodeInListAfter(o,e.last(u.initializer.elements),e.factory.createStringLiteral(c),u.initializer.elements)}}(o,c,n.fileName,L,e.hostGetCanonicalFileName(f));var n,o,s,c,f,h,D,F,O,R,M,L})),renameFilename:void 0,renameLocation:void 0}}});var b=function(){function t(){this.map=new e.Map}return t.prototype.add=function(t){this.map.set(String(e.getSymbolId(t)),t)},t.prototype.has=function(t){return this.map.has(String(e.getSymbolId(t)))},t.prototype.delete=function(t){this.map.delete(String(e.getSymbolId(t)))},t.prototype.forEach=function(e){this.map.forEach(e)},t.prototype.forEachEntry=function(t){return e.forEachEntry(this.map,t)},t.prototype.clone=function(){var r=new t;return e.copyEntries(this.map,r.map),r},t}();function k(t){return S(t)&&e.isSourceFile(t.parent)||e.isVariableDeclaration(t)&&e.isSourceFile(t.parent.parent.parent)}function x(t){return e.isVariableDeclaration(t)?t.parent.parent.parent:t.parent}function S(e){switch(e.kind){case 253:case 254:case 259:case 258:case 257:case 256:case 263:return!0;default:return!1}}function w(t,r){switch(t.kind){case 253:case 254:case 259:case 258:case 257:case 256:case 263:return r(t);case 234:return e.firstDefined(t.declarationList.declarations,(function(e){return D(e.name,r)}));case 235:var n=t.expression;return e.isBinaryExpression(n)&&1===e.getAssignmentDeclarationKind(n)?r(t):void 0}}function D(t,r){switch(t.kind){case 78:return r(e.cast(t.parent,(function(t){return e.isVariableDeclaration(t)||e.isBindingElement(t)})));case 198:case 197:return e.firstDefined(t.elements,(function(t){return e.isOmittedExpression(t)?void 0:D(t.name,r)}));default:return e.Debug.assertNever(t,"Unexpected name kind "+t.kind)}}function E(t){return e.isExpressionStatement(t)?e.tryCast(t.expression.left.name,e.isIdentifier):e.tryCast(t.name,e.isIdentifier)}function T(t){switch(t.kind){case 251:return t.parent.parent;case 199:return T(e.cast(t.parent.parent,(function(t){return e.isVariableDeclaration(t)||e.isBindingElement(t)})));default:return t}}function C(t,r,n,i){if(!A(t,r,i))if(i)e.isExpressionStatement(r)||n.insertExportModifier(t,r);else{var a=P(r);0!==a.length&&n.insertNodesAfter(t,r,a.map(I))}}function A(t,r,n){return n?!e.isExpressionStatement(r)&&e.hasSyntacticModifier(r,1):P(r).some((function(r){return t.symbol.exports.has(e.escapeLeadingUnderscores(r))}))}function N(t){var r=e.concatenate([e.factory.createModifier(93)],t.modifiers);switch(t.kind){case 253:return e.factory.updateFunctionDeclaration(t,t.decorators,r,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body);case 254:return e.factory.updateClassDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members);case 234:return e.factory.updateVariableStatement(t,r,t.declarationList);case 259:return e.factory.updateModuleDeclaration(t,t.decorators,r,t.name,t.body);case 258:return e.factory.updateEnumDeclaration(t,t.decorators,r,t.name,t.members);case 257:return e.factory.updateTypeAliasDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.type);case 256:return e.factory.updateInterfaceDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members);case 263:return e.factory.updateImportEqualsDeclaration(t,t.decorators,r,t.isTypeOnly,t.name,t.moduleReference);case 235:return e.Debug.fail();default:return e.Debug.assertNever(t,"Unexpected declaration kind "+t.kind)}}function P(t){switch(t.kind){case 253:case 254:return[t.name.text];case 234:return e.mapDefined(t.declarationList.declarations,(function(t){return e.isIdentifier(t.name)?t.name.text:void 0}));case 259:case 258:case 257:case 256:case 263:return e.emptyArray;case 235:return e.Debug.fail("Can't export an ExpressionStatement");default:return e.Debug.assertNever(t,"Unexpected decl kind "+t.kind)}}function I(t){return e.factory.createExpressionStatement(e.factory.createBinaryExpression(e.factory.createPropertyAccessExpression(e.factory.createIdentifier("exports"),e.factory.createIdentifier(t)),62,e.factory.createIdentifier(t)))}}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Add or remove braces in an arrow function",i=e.Diagnostics.Add_or_remove_braces_in_an_arrow_function.message,o={name:"Add braces to arrow function",description:e.Diagnostics.Add_braces_to_arrow_function.message,kind:"refactor.rewrite.arrow.braces.add"},s={name:"Remove braces from arrow function",description:e.Diagnostics.Remove_braces_from_arrow_function.message,kind:"refactor.rewrite.arrow.braces.remove"};function c(r,n,i,a){void 0===i&&(i=!0);var c=e.getTokenAtPosition(r,n),l=e.getContainingFunction(c);if(!l)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_a_containing_arrow_function)};if(!e.isArrowFunction(l))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Containing_function_is_not_an_arrow_function)};if(e.rangeContainsRange(l,c)&&(!e.rangeContainsRange(l.body,c)||i)){if(t.refactorKindBeginsWith(o.kind,a)&&e.isExpression(l.body))return{func:l,addBraces:!0,expression:l.body};if(t.refactorKindBeginsWith(s.kind,a)&&e.isBlock(l.body)&&1===l.body.statements.length){var u=e.first(l.body.statements);if(e.isReturnStatement(u))return{func:l,addBraces:!1,expression:u.expression,returnStatement:u}}}}t.registerRefactor(n,{kinds:[s.kind],getEditsForAction:function(r,n){var i=r.file,a=r.startPosition,l=c(i,a);e.Debug.assert(l&&!t.isRefactorErrorInfo(l),"Expected applicable refactor info");var u,d=l.expression,p=l.returnStatement,f=l.func;if(n===o.name){var m=e.factory.createReturnStatement(d);u=e.factory.createBlock([m],!0),e.suppressLeadingAndTrailingTrivia(u),e.copyLeadingComments(d,m,i,3,!0)}else if(n===s.name&&p){var g=d||e.factory.createVoidZero();u=e.needsParentheses(g)?e.factory.createParenthesizedExpression(g):g,e.suppressLeadingAndTrailingTrivia(u),e.copyTrailingAsLeadingComments(p,u,i,3,!1),e.copyLeadingComments(p,u,i,3,!1),e.copyTrailingComments(p,u,i,3,!1)}else e.Debug.fail("invalid action");var _=e.textChanges.ChangeTracker.with(r,(function(e){e.replaceNode(i,f.body,u)}));return{renameFilename:void 0,renameLocation:void 0,edits:_}},getAvailableActions:function(r){var l=r.file,u=r.startPosition,d=r.triggerReason,p=c(l,u,"invoked"===d);if(!p)return e.emptyArray;if(!t.isRefactorErrorInfo(p))return[{name:n,description:i,actions:[p.addBraces?o:s]}];if(r.preferences.provideRefactorNotApplicableReason)return[{name:n,description:i,actions:[a(a({},o),{notApplicableReason:p.error}),a(a({},s),{notApplicableReason:p.error})]}];return e.emptyArray}})}(t.addOrRemoveBracesToArrowFunction||(t.addOrRemoveBracesToArrowFunction={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Convert parameters to destructured object",a=2,o=e.getLocaleSpecificMessage(e.Diagnostics.Convert_parameters_to_destructured_object),s={name:n,description:o,kind:"refactor.rewrite.parameters.toDestructured"};function c(t,r){var n=e.getContainingObjectLiteralElement(t);if(n){var i=r.getContextualTypeForObjectLiteralElement(n),a=null==i?void 0:i.getSymbol();if(a&&!(6&e.getCheckFlags(a)))return a}}function l(t){var r=t.node;return e.isImportSpecifier(r.parent)||e.isImportClause(r.parent)||e.isImportEqualsDeclaration(r.parent)||e.isNamespaceImport(r.parent)||e.isExportSpecifier(r.parent)||e.isExportAssignment(r.parent)?r:void 0}function u(t){if(e.isDeclaration(t.node.parent))return t.node}function d(t){if(t.node.parent){var r=t.node,n=r.parent;switch(n.kind){case 204:case 205:var i=e.tryCast(n,e.isCallOrNewExpression);if(i&&i.expression===r)return i;break;case 202:var a=e.tryCast(n,e.isPropertyAccessExpression);if(a&&a.parent&&a.name===r){var o=e.tryCast(a.parent,e.isCallOrNewExpression);if(o&&o.expression===a)return o}break;case 203:var s=e.tryCast(n,e.isElementAccessExpression);if(s&&s.parent&&s.argumentExpression===r){var c=e.tryCast(s.parent,e.isCallOrNewExpression);if(c&&c.expression===s)return c}}}}function p(t){if(t.node.parent){var r=t.node,n=r.parent;switch(n.kind){case 202:var i=e.tryCast(n,e.isPropertyAccessExpression);if(i&&i.expression===r)return i;break;case 203:var a=e.tryCast(n,e.isElementAccessExpression);if(a&&a.expression===r)return a}}}function f(t){var r=t.node;if(2===e.getMeaningFromLocation(r)||e.isExpressionWithTypeArgumentsInClassExtendsClause(r.parent))return r}function m(t,r,n){var i=e.getTouchingToken(t,r),o=e.getContainingFunctionDeclaration(i);if(!function(t){var r=e.findAncestor(t,e.isJSDocNode);if(r){var n=e.findAncestor(r,(function(t){return!e.isJSDocNode(t)}));return!!n&&e.isFunctionLikeDeclaration(n)}return!1}(i))return!(o&&function(t,r){if(!function(t,r){return function(e){if(v(e))return e.length-1;return e.length}(t)>=a&&e.every(t,(function(t){return function(t,r){if(e.isRestParameter(t)){var n=r.getTypeAtLocation(t);if(!r.isArrayType(n)&&!r.isTupleType(n))return!1}return!t.modifiers&&!t.decorators&&e.isIdentifier(t.name)}(t,r)}))}(t.parameters,r))return!1;switch(t.kind){case 253:return h(t)&&_(t,r);case 166:if(e.isObjectLiteralExpression(t.parent)){var n=c(t.name,r);return 1===(null==n?void 0:n.declarations.length)&&_(t,r)}return _(t,r);case 167:return e.isClassDeclaration(t.parent)?h(t.parent)&&_(t,r):y(t.parent.parent)&&_(t,r);case 209:case 210:return y(t.parent)}return!1}(o,n)&&e.rangeContainsRange(o,i))||o.body&&e.rangeContainsRange(o.body,i)?void 0:o}function g(t){return e.isMethodSignature(t)&&(e.isInterfaceDeclaration(t.parent)||e.isTypeLiteralNode(t.parent))}function _(e,t){return!!e.body&&!t.isImplementationOfOverload(e)}function h(t){return!!t.name||!!e.findModifier(t,88)}function y(t){return e.isVariableDeclaration(t)&&e.isVarConst(t)&&e.isIdentifier(t.name)&&!t.type}function v(t){return t.length>0&&e.isThis(t[0].name)}function b(t){return v(t)&&(t=e.factory.createNodeArray(t.slice(1),t.hasTrailingComma)),t}function k(t,r){var n=b(t.parameters),i=e.isRestParameter(e.last(n)),a=i?r.slice(0,n.length-1):r,o=e.map(a,(function(t,r){var i,a,o=S(n[r]),s=(i=o,a=t,e.isIdentifier(a)&&e.getTextOfIdentifierOrLiteral(a)===i?e.factory.createShorthandPropertyAssignment(i):e.factory.createPropertyAssignment(i,a));return e.suppressLeadingAndTrailingTrivia(s.name),e.isPropertyAssignment(s)&&e.suppressLeadingAndTrailingTrivia(s.initializer),e.copyComments(t,s),s}));if(i&&r.length>=n.length){var s=r.slice(n.length-1),c=e.factory.createPropertyAssignment(S(e.last(n)),e.factory.createArrayLiteralExpression(s));o.push(c)}return e.factory.createObjectLiteralExpression(o,!1)}function x(t,r,n){var i,a,o,s=r.getTypeChecker(),c=b(t.parameters),l=e.map(c,(function(t){var r=e.factory.createBindingElement(void 0,void 0,S(t),e.isRestParameter(t)&&_(t)?e.factory.createArrayLiteralExpression():t.initializer);e.suppressLeadingAndTrailingTrivia(r),t.initializer&&r.initializer&&e.copyComments(t.initializer,r.initializer);return r})),u=e.factory.createObjectBindingPattern(l),d=(i=c,a=e.map(i,g),e.addEmitFlags(e.factory.createTypeLiteralNode(a),1));e.every(c,_)&&(o=e.factory.createObjectLiteralExpression());var p=e.factory.createParameterDeclaration(void 0,void 0,void 0,u,void 0,d,o);if(v(t.parameters)){var f=t.parameters[0],m=e.factory.createParameterDeclaration(void 0,void 0,void 0,f.name,void 0,f.type);return e.suppressLeadingAndTrailingTrivia(m.name),e.copyComments(f.name,m.name),f.type&&(e.suppressLeadingAndTrailingTrivia(m.type),e.copyComments(f.type,m.type)),e.factory.createNodeArray([m,p])}return e.factory.createNodeArray([p]);function g(t){var i,a,o=t.type;o||!t.initializer&&!e.isRestParameter(t)||(i=t,a=s.getTypeAtLocation(i),o=e.getTypeNodeIfAccessible(a,i,r,n));var c=e.factory.createPropertySignature(void 0,S(t),_(t)?e.factory.createToken(57):t.questionToken,o);return e.suppressLeadingAndTrailingTrivia(c),e.copyComments(t.name,c.name),t.type&&c.type&&e.copyComments(t.type,c.type),c}function _(t){if(e.isRestParameter(t)){var r=s.getTypeAtLocation(t);return!s.isTupleType(r)}return s.isOptionalParameter(t)}}function S(t){return e.getTextOfIdentifierOrLiteral(t.name)}t.registerRefactor(n,{kinds:[s.kind],getEditsForAction:function(t,r){e.Debug.assert(r===n,"Unexpected action name");var a=t.file,o=t.startPosition,s=t.program,_=t.cancellationToken,h=t.host,y=m(a,o,s.getTypeChecker());if(!y||!_)return;var v=function(t,r,n){var a=function(t){switch(t.kind){case 253:return t.name?[t.name]:[e.Debug.checkDefined(e.findModifier(t,88),"Nameless function declaration should be a default export")];case 166:return[t.name];case 167:var r=e.Debug.checkDefined(e.findChildOfKind(t,133,t.getSourceFile()),"Constructor declaration should have constructor keyword");return 223===t.parent.kind?[t.parent.parent.name,r]:[r];case 210:return[t.parent.name];case 209:return t.name?[t.name,t.parent.name]:[t.parent.name];default:return e.Debug.assertNever(t,"Unexpected function declaration kind "+t.kind)}}(t),o=e.isConstructorDeclaration(t)?function(t){switch(t.parent.kind){case 254:var r=t.parent;return r.name?[r.name]:[e.Debug.checkDefined(e.findModifier(r,88),"Nameless class declaration should be a default export")];case 223:var n=t.parent,i=t.parent.parent,a=n.name;return a?[a,i.name]:[i.name]}}(t):[],s=e.deduplicate(i(i([],a),o),e.equateValues),m=r.getTypeChecker(),_=e.flatMap(s,(function(t){return e.FindAllReferences.getReferenceEntriesForNode(-1,t,r,r.getSourceFiles(),n)})),h=y(_);e.every(h.declarations,(function(t){return e.contains(s,t)}))||(h.valid=!1);return h;function y(r){for(var n={accessExpressions:[],typeUsages:[]},i={functionCalls:[],declarations:[],classReferences:n,valid:!0},s=e.map(a,v),_=e.map(o,v),h=e.isConstructorDeclaration(t),y=e.map(a,(function(e){return c(e,m)})),b=0,k=r;b<k.length;b++){var x=k[b];if(0!==x.kind){if(e.contains(y,v(x.node))){if(g(x.node.parent)){i.signature=x.node.parent;continue}if(w=d(x)){i.functionCalls.push(w);continue}}var S=c(x.node,m);if(S&&e.contains(y,S))if(D=u(x)){i.declarations.push(D);continue}if(e.contains(s,v(x.node))||e.isNewExpressionTarget(x.node)){var w;if(l(x))continue;if(D=u(x)){i.declarations.push(D);continue}if(w=d(x)){i.functionCalls.push(w);continue}}if(h&&e.contains(_,v(x.node))){var D;if(l(x))continue;if(D=u(x)){i.declarations.push(D);continue}var E=p(x);if(E){n.accessExpressions.push(E);continue}if(e.isClassDeclaration(t.parent)){var T=f(x);if(T){n.typeUsages.push(T);continue}}}i.valid=!1}else i.valid=!1}return i}function v(t){var r=m.getSymbolAtLocation(t);return r&&e.getSymbolTarget(r,m)}}(y,s,_);if(v.valid){var b=e.textChanges.ChangeTracker.with(t,(function(t){return function(t,r,n,i,a,o){var s=o.signature,c=e.map(x(a,r,n),(function(t){return e.getSynthesizedDeepClone(t)}));if(s){m(s,e.map(x(s,r,n),(function(t){return e.getSynthesizedDeepClone(t)})))}m(a,c);for(var l=e.sortAndDeduplicate(o.functionCalls,(function(t,r){return e.compareValues(t.pos,r.pos)})),u=0,d=l;u<d.length;u++){var p=d[u];if(p.arguments&&p.arguments.length){var f=e.getSynthesizedDeepClone(k(a,p.arguments),!0);i.replaceNodeRange(e.getSourceFileOfNode(p),e.first(p.arguments),e.last(p.arguments),f,{leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Include})}}function m(r,n){i.replaceNodeRangeWithNodes(t,e.first(r.parameters),e.last(r.parameters),n,{joiner:", ",indentation:0,leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Include})}}(a,s,h,t,y,v)}));return{renameFilename:void 0,renameLocation:void 0,edits:b}}return{edits:[]}},getAvailableActions:function(t){var r=t.file,i=t.startPosition;return e.isSourceFileJS(r)?e.emptyArray:m(r,i,t.program.getTypeChecker())?[{name:n,description:o,actions:[s]}]:e.emptyArray}})}(t.convertParamsToDestructuredObject||(t.convertParamsToDestructuredObject={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Convert to template string",i=e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_template_string),o={name:n,description:i,kind:"refactor.rewrite.string"};function s(t,r){var n=e.getTokenAtPosition(t,r),i=l(n);return!u(i)&&e.isParenthesizedExpression(i.parent)&&e.isBinaryExpression(i.parent.parent)?i.parent.parent:n}function c(t,r){var n=l(r),i=t.file,a=function(t,r){var n=t.nodes,i=t.operators,a=p(i,r),o=f(n,r,a),s=m(0,n),c=s[0],l=s[1],u=s[2];if(c===n.length){var d=e.factory.createNoSubstitutionTemplateLiteral(l);return o(u,d),d}var _=[],h=e.factory.createTemplateHead(l);o(u,h);for(var y,v=function(t){var r=function(t){e.isParenthesizedExpression(t)&&(g(t),t=t.expression);return t}(n[t]);a(t,r);var i=m(t+1,n),s=i[0],c=i[1],l=i[2],u=(t=s-1)===n.length-1;if(e.isTemplateExpression(r)){var d=e.map(r.templateSpans,(function(t,n){g(t);var i=r.templateSpans[n+1],a=t.literal.text+(i?"":c);return e.factory.createTemplateSpan(t.expression,u?e.factory.createTemplateTail(a):e.factory.createTemplateMiddle(a))}));_.push.apply(_,d)}else{var p=u?e.factory.createTemplateTail(c):e.factory.createTemplateMiddle(c);o(l,p),_.push(e.factory.createTemplateSpan(r,p))}y=t},b=c;b<n.length;b++)v(b),b=y;return e.factory.createTemplateExpression(h,_)}(d(n),i),o=e.getTrailingCommentRanges(i.text,n.end);if(o){var s=o[o.length-1],c={pos:o[0].pos,end:s.end};return e.textChanges.ChangeTracker.with(t,(function(e){e.deleteRange(i,c),e.replaceNode(i,n,a)}))}return e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(i,n,a)}))}function l(t){return e.findAncestor(t.parent,(function(t){switch(t.kind){case 202:case 203:return!1;case 220:case 218:return!(e.isBinaryExpression(t.parent)&&(r=t.parent,62!==r.operatorToken.kind));default:return"quit"}var r}))||t}function u(e){var t=d(e),r=t.containsString,n=t.areOperatorsValid;return r&&n}function d(t){if(e.isBinaryExpression(t)){var r=d(t.left),n=r.nodes,i=r.operators,a=r.containsString,o=r.areOperatorsValid;if(!a&&!e.isStringLiteral(t.right)&&!e.isTemplateExpression(t.right))return{nodes:[t],operators:[],containsString:!1,areOperatorsValid:!0};var s=39===t.operatorToken.kind,c=o&&s;return n.push(t.right),i.push(t.operatorToken),{nodes:n,operators:i,containsString:!0,areOperatorsValid:c}}return{nodes:[t],operators:[],containsString:e.isStringLiteral(t),areOperatorsValid:!0}}t.registerRefactor(n,{kinds:[o.kind],getEditsForAction:function(t,r){var n=t.file,a=t.startPosition,o=s(n,a);if(r===i)return{edits:c(t,o)};return e.Debug.fail("invalid action")},getAvailableActions:function(t){var r=t.file,c=t.startPosition,d=l(s(r,c)),p={name:n,description:i,actions:[]};if(e.isBinaryExpression(d)&&u(d))return p.actions.push(o),[p];if(t.preferences.provideRefactorNotApplicableReason)return p.actions.push(a(a({},o),{notApplicableReason:e.getLocaleSpecificMessage(e.Diagnostics.Can_only_convert_string_concatenation)})),[p];return e.emptyArray}});var p=function(t,r){return function(n,i){n<t.length&&e.copyTrailingComments(t[n],i,r,3,!1)}},f=function(t,r,n){return function(i,a){for(;i.length>0;){var o=i.shift();e.copyTrailingComments(t[o],a,r,3,!1),n(o,a)}}};function m(t,r){for(var n=[],i="";t<r.length;){var a=r[t];if(!e.isStringLiteralLike(a)){if(e.isTemplateExpression(a)){i+=a.head.text;break}break}i+=a.text,n.push(t),t++}return[t,i,n]}function g(t){var r=t.getSourceFile();e.copyTrailingComments(t,t.expression,r,3,!1),e.copyTrailingAsLeadingComments(t.expression,t.expression,r,3,!1)}}(t.convertStringOrTemplateLiteral||(t.convertStringOrTemplateLiteral={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Convert arrow function or function expression",i=e.getLocaleSpecificMessage(e.Diagnostics.Convert_arrow_function_or_function_expression),o={name:"Convert to anonymous function",description:e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},s={name:"Convert to named function",description:e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_named_function),kind:"refactor.rewrite.function.named"},c={name:"Convert to arrow function",description:e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};function l(t){var r=!1;return t.forEachChild((function t(n){e.isThis(n)?r=!0:e.isClassLike(n)||e.isFunctionDeclaration(n)||e.isFunctionExpression(n)||e.forEachChild(n,t)})),r}function u(t,r,n){var i=e.getTokenAtPosition(t,r),a=n.getTypeChecker(),o=function(t,r,n){if(!function(t){return e.isVariableDeclaration(t)||e.isVariableDeclarationList(t)&&1===t.declarations.length}(n))return;var i=(e.isVariableDeclaration(n)?n:e.first(n.declarations)).initializer;if(i&&(e.isArrowFunction(i)||e.isFunctionExpression(i)&&!p(t,r,i)))return i;return}(t,a,i.parent);if(o&&!l(o.body))return{selectedVariableDeclaration:!0,func:o};var s=e.getContainingFunction(i);if(s&&(e.isFunctionExpression(s)||e.isArrowFunction(s))&&!e.rangeContainsRange(s.body,i)&&!l(s.body)){if(e.isFunctionExpression(s)&&p(t,a,s))return;return{selectedVariableDeclaration:!1,func:s}}}function d(t){return e.isExpression(t)?e.factory.createBlock([e.factory.createReturnStatement(t)],!0):t}function p(t,r,n){return!!n.name&&e.FindAllReferences.Core.isSymbolReferencedInFile(n.name,r,t)}t.registerRefactor(n,{kinds:[o.kind,s.kind,c.kind],getEditsForAction:function(t,r){var n=t.file,i=t.startPosition,a=t.program,l=u(n,i,a);if(!l)return;var p=l.func,f=[];switch(r){case o.name:f.push.apply(f,function(t,r){var n=t.file,i=d(r.body),a=e.factory.createFunctionExpression(r.modifiers,r.asteriskToken,void 0,r.typeParameters,r.parameters,r.type,i);return e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(n,r,a)}))}(t,p));break;case s.name:var m=function(t){var r=t.parent;if(!e.isVariableDeclaration(r)||!e.isVariableDeclarationInVariableStatement(r))return;var n=r.parent,i=n.parent;return e.isVariableDeclarationList(n)&&e.isVariableStatement(i)&&e.isIdentifier(r.name)?{variableDeclaration:r,variableDeclarationList:n,statement:i,name:r.name}:void 0}(p);if(!m)return;f.push.apply(f,function(t,r,n){var i=t.file,a=d(r.body),o=n.variableDeclaration,s=n.variableDeclarationList,c=n.statement,l=n.name;e.suppressLeadingTrivia(c);var u=e.factory.createFunctionDeclaration(r.decorators,c.modifiers,r.asteriskToken,l,r.typeParameters,r.parameters,r.type,a);return 1===s.declarations.length?e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(i,c,u)})):e.textChanges.ChangeTracker.with(t,(function(e){e.delete(i,o),e.insertNodeAfter(i,c,u)}))}(t,p,m));break;case c.name:if(!e.isFunctionExpression(p))return;f.push.apply(f,function(t,r){var n,i=t.file,a=r.body.statements,o=a[0];!function(t,r){return 1===t.statements.length&&e.isReturnStatement(r)&&!!r.expression}(r.body,o)?n=r.body:(n=o.expression,e.suppressLeadingAndTrailingTrivia(n),e.copyComments(o,n));var s=e.factory.createArrowFunction(r.modifiers,r.typeParameters,r.parameters,r.type,e.factory.createToken(38),n);return e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(i,r,s)}))}(t,p));break;default:return e.Debug.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:f}},getAvailableActions:function(r){var l=r.file,d=r.startPosition,p=r.program,f=r.kind,m=u(l,d,p);if(!m)return e.emptyArray;var g=m.selectedVariableDeclaration,_=m.func,h=[],y=[];if(t.refactorKindBeginsWith(s.kind,f)){(v=g||e.isArrowFunction(_)&&e.isVariableDeclaration(_.parent)?void 0:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_convert_to_named_function))?y.push(a(a({},s),{notApplicableReason:v})):h.push(s)}if(t.refactorKindBeginsWith(o.kind,f)){(v=!g&&e.isArrowFunction(_)?void 0:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_convert_to_anonymous_function))?y.push(a(a({},o),{notApplicableReason:v})):h.push(o)}if(t.refactorKindBeginsWith(c.kind,f)){var v;(v=e.isFunctionExpression(_)?void 0:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_convert_to_arrow_function))?y.push(a(a({},c),{notApplicableReason:v})):h.push(c)}return[{name:n,description:i,actions:0===h.length&&r.preferences.provideRefactorNotApplicableReason?y:h}]}})}(t.convertArrowFunctionOrFunctionExpression||(t.convertArrowFunctionOrFunctionExpression={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Infer function return type",i=e.Diagnostics.Infer_function_return_type.message,o={name:n,description:i,kind:"refactor.rewrite.function.returnType"};function s(r){if(!e.isInJSFile(r.file)&&t.refactorKindBeginsWith(o.kind,r.kind)){var n=e.getTokenAtPosition(r.file,r.startPosition),i=e.findAncestor(n,c);if(!i||!i.body||i.type)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Return_type_must_be_inferred_from_a_function)};var a=r.program.getTypeChecker(),s=function(t,r){if(t.isImplementationOfOverload(r)){var n=t.getTypeAtLocation(r).getCallSignatures();if(n.length>1)return t.getUnionType(e.mapDefined(n,(function(e){return e.getReturnType()})))}var i=t.getSignatureFromDeclaration(r);if(i)return t.getReturnTypeOfSignature(i)}(a,i);if(!s)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_determine_function_return_type)};var l=a.typeToTypeNode(s,i,1);return l?{declaration:i,returnTypeNode:l}:void 0}}function c(e){switch(e.kind){case 253:case 209:case 210:case 166:return!0;default:return!1}}t.registerRefactor(n,{kinds:[o.kind],getEditsForAction:function(r){var n=s(r);if(n&&!t.isRefactorErrorInfo(n)){return{renameFilename:void 0,renameLocation:void 0,edits:e.textChanges.ChangeTracker.with(r,(function(e){return e.tryInsertTypeAnnotation(r.file,n.declaration,n.returnTypeNode)}))}}return},getAvailableActions:function(r){var c=s(r);if(!c)return e.emptyArray;if(!t.isRefactorErrorInfo(c))return[{name:n,description:i,actions:[o]}];if(r.preferences.provideRefactorNotApplicableReason)return[{name:n,description:i,actions:[a(a({},o),{notApplicableReason:c.error})]}];return e.emptyArray}})}(t.inferFunctionReturnType||(t.inferFunctionReturnType={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){function t(t,n,i,a){var o=e.isNodeKind(t)?new r(t,n,i):78===t?new u(78,n,i):79===t?new d(79,n,i):new c(t,n,i);return o.parent=a,o.flags=1099100160&a.flags,o}e.servicesVersion="0.8";var r=function(){function r(e,t,r){this.pos=t,this.end=r,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.kind=e}return r.prototype.assertHasRealPosition=function(t){e.Debug.assert(!e.positionIsSynthesized(this.pos)&&!e.positionIsSynthesized(this.end),t||"Node must have a real position for this operation")},r.prototype.getSourceFile=function(){return e.getSourceFileOfNode(this)},r.prototype.getStart=function(t,r){return this.assertHasRealPosition(),e.getTokenPosOfNode(this,t,r)},r.prototype.getFullStart=function(){return this.assertHasRealPosition(),this.pos},r.prototype.getEnd=function(){return this.assertHasRealPosition(),this.end},r.prototype.getWidth=function(e){return this.assertHasRealPosition(),this.getEnd()-this.getStart(e)},r.prototype.getFullWidth=function(){return this.assertHasRealPosition(),this.end-this.pos},r.prototype.getLeadingTriviaWidth=function(e){return this.assertHasRealPosition(),this.getStart(e)-this.pos},r.prototype.getFullText=function(e){return this.assertHasRealPosition(),(e||this.getSourceFile()).text.substring(this.pos,this.end)},r.prototype.getText=function(e){return this.assertHasRealPosition(),e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())},r.prototype.getChildCount=function(e){return this.getChildren(e).length},r.prototype.getChildAt=function(e,t){return this.getChildren(t)[e]},r.prototype.getChildren=function(r){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),this._children||(this._children=function(r,i){if(!e.isNodeKind(r.kind))return e.emptyArray;var a=[];if(e.isJSDocCommentContainingNode(r))return r.forEachChild((function(e){a.push(e)})),a;var o=i?i.fileName:r.getSourceFile().fileName;o&&8===e.getScriptKindFromFileName(o)&&e.scanner.setEtsContext(!0);e.scanner.setText((i||r.getSourceFile()).text);var s=r.pos,c=function(e){n(a,s,e.pos,r),a.push(e),s=e.end},l=function(e){n(a,s,e.pos,r),a.push(function(e,r){var i=t(337,e.pos,e.end,r);i._children=[];for(var a=e.pos,o=0,s=e;o<s.length;o++){var c=s[o];c.virtual||(n(i._children,a,c.pos,r),i._children.push(c),a=c.end)}return n(i._children,a,e.end,r),i}(e,r)),s=e.end};return e.forEach(r.jsDoc,c),s=r.pos,r.forEachChild(c,l),n(a,s,r.end,r),e.scanner.setText(void 0),e.scanner.setEtsContext(!1),a}(this,r))},r.prototype.getFirstToken=function(t){this.assertHasRealPosition();var r=this.getChildren(t);if(r.length){var n=e.find(r,(function(e){return e.kind<304||e.kind>336}));return n.kind<158?n:n.getFirstToken(t)}},r.prototype.getLastToken=function(t){this.assertHasRealPosition();var r=this.getChildren(t),n=e.lastOrUndefined(r);if(n)return n.kind<158?n:n.getLastToken(t)},r.prototype.forEachChild=function(t,r){return e.forEachChild(this,t,r)},r}();function n(r,n,i,a){if(!a.virtual)for(e.scanner.setTextPos(n);n<i;){var o=e.scanner.scan(),s=e.scanner.getTextPos();if(s<=i&&(78===o&&e.Debug.fail("Did not expect "+e.Debug.formatSyntaxKind(a.kind)+" to have an Identifier in its trivia"),r.push(t(o,n,s,a))),n=s,1===o)break}}var o=function(){function t(e,t){this.pos=e,this.end=t,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0}return t.prototype.getSourceFile=function(){return e.getSourceFileOfNode(this)},t.prototype.getStart=function(t,r){return e.getTokenPosOfNode(this,t,r)},t.prototype.getFullStart=function(){return this.pos},t.prototype.getEnd=function(){return this.end},t.prototype.getWidth=function(e){return this.getEnd()-this.getStart(e)},t.prototype.getFullWidth=function(){return this.end-this.pos},t.prototype.getLeadingTriviaWidth=function(e){return this.getStart(e)-this.pos},t.prototype.getFullText=function(e){return(e||this.getSourceFile()).text.substring(this.pos,this.end)},t.prototype.getText=function(e){return e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())},t.prototype.getChildCount=function(){return 0},t.prototype.getChildAt=function(){},t.prototype.getChildren=function(){return 1===this.kind&&this.jsDoc||e.emptyArray},t.prototype.getFirstToken=function(){},t.prototype.getLastToken=function(){},t.prototype.forEachChild=function(){},t}(),s=function(){function t(e,t){this.flags=e,this.escapedName=t}return t.prototype.getFlags=function(){return this.flags},Object.defineProperty(t.prototype,"name",{get:function(){return e.symbolName(this)},enumerable:!1,configurable:!0}),t.prototype.getEscapedName=function(){return this.escapedName},t.prototype.getName=function(){return this.name},t.prototype.getDeclarations=function(){return this.declarations},t.prototype.getDocumentationComment=function(t){if(!this.documentationComment)if(this.documentationComment=e.emptyArray,!this.declarations&&this.target&&this.target.tupleLabelDeclaration){var r=this.target.tupleLabelDeclaration;this.documentationComment=g([r],t)}else this.documentationComment=g(this.declarations,t);return this.documentationComment},t.prototype.getContextualDocumentationComment=function(t,r){switch(null==t?void 0:t.kind){case 168:return this.contextualGetAccessorDocumentationComment||(this.contextualGetAccessorDocumentationComment=e.emptyArray,this.contextualGetAccessorDocumentationComment=g(e.filter(this.declarations,e.isGetAccessor),r)),this.contextualGetAccessorDocumentationComment;case 169:return this.contextualSetAccessorDocumentationComment||(this.contextualSetAccessorDocumentationComment=e.emptyArray,this.contextualSetAccessorDocumentationComment=g(e.filter(this.declarations,e.isSetAccessor),r)),this.contextualSetAccessorDocumentationComment;default:return this.getDocumentationComment(r)}},t.prototype.getJsDocTags=function(){return void 0===this.tags&&(this.tags=e.JsDoc.getJsDocTagsFromDeclarations(this.declarations)),this.tags},t}(),c=function(e){function t(t,r,n){var i=e.call(this,r,n)||this;return i.kind=t,i}return l(t,e),t}(o),u=function(t){function r(e,r,n){var i=t.call(this,r,n)||this;return i.kind=78,i}return l(r,t),Object.defineProperty(r.prototype,"text",{get:function(){return e.idText(this)},enumerable:!1,configurable:!0}),r}(o);u.prototype.kind=78;var d=function(t){function r(e,r,n){return t.call(this,r,n)||this}return l(r,t),Object.defineProperty(r.prototype,"text",{get:function(){return e.idText(this)},enumerable:!1,configurable:!0}),r}(o);d.prototype.kind=79;var p=function(){function t(e,t){this.checker=e,this.flags=t}return t.prototype.getFlags=function(){return this.flags},t.prototype.getSymbol=function(){return this.symbol},t.prototype.getProperties=function(){return this.checker.getPropertiesOfType(this)},t.prototype.getProperty=function(e){return this.checker.getPropertyOfType(this,e)},t.prototype.getApparentProperties=function(){return this.checker.getAugmentedPropertiesOfType(this)},t.prototype.getCallSignatures=function(){return this.checker.getSignaturesOfType(this,0)},t.prototype.getConstructSignatures=function(){return this.checker.getSignaturesOfType(this,1)},t.prototype.getStringIndexType=function(){return this.checker.getIndexTypeOfType(this,0)},t.prototype.getNumberIndexType=function(){return this.checker.getIndexTypeOfType(this,1)},t.prototype.getBaseTypes=function(){return this.isClassOrInterface()?this.checker.getBaseTypes(this):void 0},t.prototype.isNullableType=function(){return this.checker.isNullableType(this)},t.prototype.getNonNullableType=function(){return this.checker.getNonNullableType(this)},t.prototype.getNonOptionalType=function(){return this.checker.getNonOptionalType(this)},t.prototype.getConstraint=function(){return this.checker.getBaseConstraintOfType(this)},t.prototype.getDefault=function(){return this.checker.getDefaultFromTypeParameter(this)},t.prototype.isUnion=function(){return!!(1048576&this.flags)},t.prototype.isIntersection=function(){return!!(2097152&this.flags)},t.prototype.isUnionOrIntersection=function(){return!!(3145728&this.flags)},t.prototype.isLiteral=function(){return!!(384&this.flags)},t.prototype.isStringLiteral=function(){return!!(128&this.flags)},t.prototype.isNumberLiteral=function(){return!!(256&this.flags)},t.prototype.isTypeParameter=function(){return!!(262144&this.flags)},t.prototype.isClassOrInterface=function(){return!!(3&e.getObjectFlags(this))},t.prototype.isClass=function(){return!!(1&e.getObjectFlags(this))},Object.defineProperty(t.prototype,"typeArguments",{get:function(){if(4&e.getObjectFlags(this))return this.checker.getTypeArguments(this)},enumerable:!1,configurable:!0}),t}(),f=function(){function t(e,t){this.checker=e,this.flags=t}return t.prototype.getDeclaration=function(){return this.declaration},t.prototype.getTypeParameters=function(){return this.typeParameters},t.prototype.getParameters=function(){return this.parameters},t.prototype.getReturnType=function(){return this.checker.getReturnTypeOfSignature(this)},t.prototype.getDocumentationComment=function(){return this.documentationComment||(this.documentationComment=g(e.singleElementArray(this.declaration),this.checker))},t.prototype.getJsDocTags=function(){return void 0===this.jsDocTags&&(this.jsDocTags=this.declaration?function(t,r){var n=e.JsDoc.getJsDocTagsFromDeclarations(t);(0===n.length||t.some(m))&&e.forEachUnique(t,(function(e){var t=_(r,e,(function(e){return e.getJsDocTags()}));t&&(n=i(i([],t),n))}));return n}([this.declaration],this.checker):[]),this.jsDocTags},t}();function m(t){return e.getJSDocTags(t).some((function(e){return"inheritDoc"===e.tagName.text}))}function g(t,r){if(!t)return e.emptyArray;var n=e.JsDoc.getJsDocCommentsFromDeclarations(t);return r&&(0===n.length||t.some(m))&&e.forEachUnique(t,(function(t){var i=_(r,t,(function(e){return e.getDocumentationComment(r)}));i&&(n=0===n.length?i.slice():i.concat(e.lineBreakPart(),n))})),n}function _(t,r,n){return e.firstDefined(r.parent?e.getAllSuperTypeNodes(r.parent):e.emptyArray,(function(e){var i=t.getPropertyOfType(t.getTypeAtLocation(e),r.symbol.name);return i?n(i):void 0}))}var h=function(t){function r(e,r,n){var i=t.call(this,e,r,n)||this;return i.kind=300,i}return l(r,t),r.prototype.update=function(t,r){return e.updateSourceFile(this,t,r)},r.prototype.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(this,t)},r.prototype.getLineStarts=function(){return e.getLineStarts(this)},r.prototype.getPositionOfLineAndCharacter=function(t,r,n){return e.computePositionOfLineAndCharacter(e.getLineStarts(this),t,r,this.text,n)},r.prototype.getLineEndOfPosition=function(e){var t,r=this.getLineAndCharacterOfPosition(e).line,n=this.getLineStarts();r+1>=n.length&&(t=this.getEnd()),t||(t=n[r+1]-1);var i=this.getFullText();return"\n"===i[t]&&"\r"===i[t-1]?t-1:t},r.prototype.getNamedDeclarations=function(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations},r.prototype.computeNamedDeclarations=function(){var t=e.createMultiMap();return this.forEachChild((function i(a){switch(a.kind){case 253:case 209:case 166:case 165:var o=a,s=n(o);if(s){var c=function(e){var r=t.get(e);r||t.set(e,r=[]);return r}(s),l=e.lastOrUndefined(c);l&&o.parent===l.parent&&o.symbol===l.symbol?o.body&&!l.body&&(c[c.length-1]=o):c.push(o)}e.forEachChild(a,i);break;case 254:case 223:case 255:case 256:case 257:case 258:case 259:case 263:case 273:case 268:case 265:case 266:case 168:case 169:case 178:r(a),e.forEachChild(a,i);break;case 161:if(!e.hasSyntacticModifier(a,92))break;case 251:case 199:var u=a;if(e.isBindingPattern(u.name)){e.forEachChild(u.name,i);break}u.initializer&&i(u.initializer);case 294:case 164:case 163:r(a);break;case 270:var d=a;d.exportClause&&(e.isNamedExports(d.exportClause)?e.forEach(d.exportClause.elements,i):i(d.exportClause.name));break;case 264:var p=a.importClause;p&&(p.name&&r(p.name),p.namedBindings&&(266===p.namedBindings.kind?r(p.namedBindings):e.forEach(p.namedBindings.elements,i)));break;case 218:0!==e.getAssignmentDeclarationKind(a)&&r(a);default:e.forEachChild(a,i)}})),t;function r(e){var r=n(e);r&&t.add(r,e)}function n(t){var r=e.getNonAssignedNameOfDeclaration(t);return r&&(e.isComputedPropertyName(r)&&e.isPropertyAccessExpression(r.expression)?r.expression.name.text:e.isPropertyName(r)?e.getNameFromPropertyName(r):void 0)}},r}(r),y=function(){function t(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r}return t.prototype.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(this,t)},t}();function v(t){var r=!0;for(var n in t)if(e.hasProperty(t,n)&&!b(n)){r=!1;break}if(r)return t;var i={};for(var n in t){if(e.hasProperty(t,n))i[b(n)?n:n.charAt(0).toLowerCase()+n.substr(1)]=t[n]}return i}function b(e){return!e.length||e.charAt(0)===e.charAt(0).toLowerCase()}function k(){return{target:1,jsx:1}}e.toEditorSettings=v,e.displayPartsToString=function(t){return t?e.map(t,(function(e){return e.text})).join(""):""},e.getDefaultCompilerOptions=k,e.getSupportedCodeFixes=function(){return e.codefix.getSupportedErrorCodes()};var x=function(){function t(t,r){this.host=t,this.currentDirectory=t.getCurrentDirectory(),this.fileNameToEntry=new e.Map;for(var n=0,i=t.getScriptFileNames();n<i.length;n++){var a=i[n];this.createEntry(a,e.toPath(a,this.currentDirectory,r))}this._compilationSettings=t.getCompilationSettings()||{target:1,jsx:1}}return t.prototype.compilationSettings=function(){return this._compilationSettings},t.prototype.getProjectReferences=function(){return this.host.getProjectReferences&&this.host.getProjectReferences()},t.prototype.createEntry=function(t,r){var n,i=this.host.getScriptSnapshot(t);return n=i?{hostFileName:t,version:this.host.getScriptVersion(t),scriptSnapshot:i,scriptKind:e.getScriptKind(t,this.host)}:t,this.fileNameToEntry.set(r,n),n},t.prototype.getEntryByPath=function(e){return this.fileNameToEntry.get(e)},t.prototype.getHostFileInformation=function(t){var r=this.fileNameToEntry.get(t);return e.isString(r)?void 0:r},t.prototype.getOrCreateEntryByPath=function(t,r){var n=this.getEntryByPath(r)||this.createEntry(t,r);return e.isString(n)?void 0:n},t.prototype.getRootFileNames=function(){var t=[];return this.fileNameToEntry.forEach((function(r){e.isString(r)?t.push(r):t.push(r.hostFileName)})),t},t.prototype.getScriptSnapshot=function(e){var t=this.getHostFileInformation(e);return t&&t.scriptSnapshot},t}(),S=function(){function t(e){this.host=e}return t.prototype.getCurrentSourceFile=function(t){var r=this.host.getScriptSnapshot(t);if(!r)throw new Error("Could not find file: '"+t+"'.");var n,i=e.getScriptKind(t,this.host),a=this.host.getScriptVersion(t);if(this.currentFileName!==t)n=D(t,r,99,a,!0,i,this.host.getCompilationSettings());else if(this.currentFileVersion!==a){var o=r.getChangeRange(this.currentFileScriptSnapshot);n=E(this.currentSourceFile,r,a,o,void 0,this.host.getCompilationSettings())}return n&&(this.currentFileVersion=a,this.currentFileName=t,this.currentFileScriptSnapshot=r,this.currentSourceFile=n),this.currentSourceFile},t}();function w(e,t,r){e.version=r,e.scriptSnapshot=t}function D(t,r,n,i,a,o,s){var c=e.createSourceFile(t,e.getSnapshotText(r),n,a,o,s);return w(c,r,i),c}function E(t,r,n,i,a,o){if(i&&n!==t.version){var s=void 0,c=0!==i.span.start?t.text.substr(0,i.span.start):"",l=e.textSpanEnd(i.span)!==t.text.length?t.text.substr(e.textSpanEnd(i.span)):"";if(0===i.newLength)s=c&&l?c+l:c||l;else{var u=r.getText(i.span.start,i.span.start+i.newLength);s=c&&l?c+u+l:c?c+u:u+l}var d=e.updateSourceFile(t,s,i,a,o);return w(d,r,n),d.nameTable=void 0,t!==d&&t.scriptSnapshot&&(t.scriptSnapshot.dispose&&t.scriptSnapshot.dispose(),t.scriptSnapshot=void 0),d}return D(t.fileName,r,t.languageVersion,n,!0,t.scriptKind,o)}e.createLanguageServiceSourceFile=D,e.updateLanguageServiceSourceFile=E;var T={isCancellationRequested:e.returnFalse,throwIfCancellationRequested:e.noop},C=function(){function t(e){this.cancellationToken=e}return t.prototype.isCancellationRequested=function(){return this.cancellationToken.isCancellationRequested()},t.prototype.throwIfCancellationRequested=function(){if(this.isCancellationRequested())throw null===e.tracing||void 0===e.tracing||e.tracing.instant("session","cancellationThrown",{kind:"CancellationTokenObject"}),new e.OperationCanceledException},t}(),A=function(){function t(e,t){void 0===t&&(t=20),this.hostCancellationToken=e,this.throttleWaitMilliseconds=t,this.lastCancellationCheckTime=0}return t.prototype.isCancellationRequested=function(){var t=e.timestamp();return Math.abs(t-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds&&(this.lastCancellationCheckTime=t,this.hostCancellationToken.isCancellationRequested())},t.prototype.throwIfCancellationRequested=function(){if(this.isCancellationRequested())throw null===e.tracing||void 0===e.tracing||e.tracing.instant("session","cancellationThrown",{kind:"ThrottledCancellationToken"}),new e.OperationCanceledException},t}();e.ThrottledCancellationToken=A;var N=["getSyntacticDiagnostics","getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls"],P=i(i([],N),["getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getOccurrencesAtPosition","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors"]);function I(t){var r=function(t){switch(t.kind){case 10:case 14:case 8:if(159===t.parent.kind)return e.isObjectLiteralElement(t.parent.parent)?t.parent.parent:void 0;case 78:return!e.isObjectLiteralElement(t.parent)||201!==t.parent.parent.kind&&284!==t.parent.parent.kind||t.parent.name!==t?void 0:t.parent}return}(t);return r&&(e.isObjectLiteralExpression(r.parent)||e.isJsxAttributes(r.parent))?r:void 0}function F(t,r,n,i){var a=e.getNameFromPropertyName(t.name);if(!a)return e.emptyArray;if(!n.isUnion())return(o=n.getProperty(a))?[o]:e.emptyArray;var o,s=e.mapDefined(n.types,(function(n){return(e.isObjectLiteralExpression(t.parent)||e.isJsxAttributes(t.parent))&&r.isTypeInvalidDueToUnionDiscriminant(n,t.parent)?void 0:n.getProperty(a)}));if(i&&(0===s.length||s.length===n.types.length)&&(o=n.getProperty(a)))return[o];return 0===s.length?e.mapDefined(n.types,(function(e){return e.getProperty(a)})):s}e.createLanguageService=function(t,r,n){var o,s;void 0===r&&(r=e.createDocumentRegistry(t.useCaseSensitiveFileNames&&t.useCaseSensitiveFileNames(),t.getCurrentDirectory())),s=void 0===n?e.LanguageServiceMode.Semantic:"boolean"==typeof n?n?e.LanguageServiceMode.Syntactic:e.LanguageServiceMode.Semantic:n;var c,l,u=new S(t),d=0,p=t.getCancellationToken?new C(t.getCancellationToken()):T,f=t.getCurrentDirectory();function m(e){t.log&&t.log(e)}!e.localizedDiagnosticMessages&&t.getLocalizedDiagnosticMessages&&e.setLocalizedDiagnosticMessages(t.getLocalizedDiagnosticMessages());var g=e.hostUsesCaseSensitiveFileNames(t),_=e.createGetCanonicalFileName(g),h=e.getSourceMapper({useCaseSensitiveFileNames:function(){return g},getCurrentDirectory:function(){return f},getProgram:k,fileExists:e.maybeBind(t,t.fileExists),readFile:e.maybeBind(t,t.readFile),getDocumentPositionMapper:e.maybeBind(t,t.getDocumentPositionMapper),getSourceFileLike:e.maybeBind(t,t.getSourceFileLike),log:m});function y(e){var t=c.getSourceFile(e);if(!t){var r=new Error("Could not find source file: '"+e+"'.");throw r.ProgramFiles=c.getSourceFiles().map((function(e){return e.fileName})),r}return t}function b(){var n,i;if(e.Debug.assert(s!==e.LanguageServiceMode.Syntactic),t.getProjectVersion){var a=t.getProjectVersion();if(a){if(l===a&&!(null===(n=t.hasChangedAutomaticTypeDirectiveNames)||void 0===n?void 0:n.call(t)))return;l=a}}var o=t.getTypeRootsVersion?t.getTypeRootsVersion():0;d!==o&&(m("TypeRoots version has changed; provide new program"),c=void 0,d=o);var u=new x(t,_),y=u.getRootFileNames(),v=t.hasInvalidatedResolution||e.returnFalse,b=e.maybeBind(t,t.hasChangedAutomaticTypeDirectiveNames),k=u.getProjectReferences();if(!e.isProgramUptoDate(c,y,u.compilationSettings(),(function(e,r){return t.getScriptVersion(r)}),T,v,b,k)){var S=u.compilationSettings(),w={getSourceFile:function(t,r,n,i){return C(t,e.toPath(t,f,_),r,n,i)},getSourceFileByPath:C,getCancellationToken:function(){return p},getCanonicalFileName:_,useCaseSensitiveFileNames:function(){return g},getNewLine:function(){return e.getNewLineCharacter(S,(function(){return e.getNewLineOrDefaultFromHost(t)}))},getDefaultLibFileName:function(e){return t.getDefaultLibFileName(e)},writeFile:e.noop,getCurrentDirectory:function(){return f},fileExists:T,readFile:function(r){var n=e.toPath(r,f,_),i=u&&u.getEntryByPath(n);if(i)return e.isString(i)?void 0:e.getSnapshotText(i.scriptSnapshot);return t.readFile&&t.readFile(r)},getSymlinkCache:e.maybeBind(t,t.getSymlinkCache),realpath:e.maybeBind(t,t.realpath),directoryExists:function(r){return e.directoryProbablyExists(r,t)},getDirectories:function(e){return t.getDirectories?t.getDirectories(e):[]},readDirectory:function(r,n,i,a,o){return e.Debug.checkDefined(t.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),t.readDirectory(r,n,i,a,o)},onReleaseOldSourceFile:function(e,t){var n=r.getKeyForCompilationSettings(t);r.releaseDocumentWithKey(e.resolvedPath,n)},hasInvalidatedResolution:v,hasChangedAutomaticTypeDirectiveNames:b,trace:e.maybeBind(t,t.trace),resolveModuleNames:e.maybeBind(t,t.resolveModuleNames),resolveTypeReferenceDirectives:e.maybeBind(t,t.resolveTypeReferenceDirectives),useSourceOfProjectReferenceRedirect:e.maybeBind(t,t.useSourceOfProjectReferenceRedirect),getTagNameNeededCheckByFile:e.maybeBind(t,t.getTagNameNeededCheckByFile),getExpressionCheckedResultsByFile:e.maybeBind(t,t.getExpressionCheckedResultsByFile)};null===(i=t.setCompilerHost)||void 0===i||i.call(t,w);var D=r.getKeyForCompilationSettings(S),E={rootNames:y,options:S,host:w,oldProgram:c,projectReferences:k};return c=e.createProgram(E),u=void 0,h.clearCache(),void c.getTypeChecker()}function T(r){var n=e.toPath(r,f,_),i=u&&u.getEntryByPath(n);return i?!e.isString(i):!!t.fileExists&&t.fileExists(r)}function C(t,n,i,a,o){e.Debug.assert(void 0!==u,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");var s=u&&u.getOrCreateEntryByPath(t,n);if(s){if(!o){var l=c&&c.getSourceFileByPath(n);if(l)return e.Debug.assertEqual(s.scriptKind,l.scriptKind,"Registered script kind should match new script kind."),r.updateDocumentWithKey(t,n,S,D,s.scriptSnapshot,s.version,s.scriptKind)}return r.acquireDocumentWithKey(t,n,S,D,s.scriptSnapshot,s.version,s.scriptKind)}}}function k(){if(s!==e.LanguageServiceMode.Syntactic)return b(),c;e.Debug.assert(void 0===c)}function w(t,r,n){var i=e.normalizePath(t);e.Debug.assert(n.some((function(t){return e.normalizePath(t)===i}))),b();var a=e.mapDefined(n,(function(e){return c.getSourceFile(e)})),o=y(t);return e.DocumentHighlights.getDocumentHighlights(c,p,o,r,a)}function D(t,r,n,i){b();var a=n&&2===n.use?c.getSourceFiles().filter((function(e){return!c.isSourceFileDefaultLibrary(e)})):c.getSourceFiles();return e.FindAllReferences.findReferenceOrRenameEntries(c,p,a,t,r,n,i)}function E(r){var n=e.getScriptKind(r,t);return 3===n||4===n}var A=new e.Map(e.getEntries(((o={})[18]=19,o[20]=21,o[22]=23,o[31]=29,o)));function O(r){var n;return e.Debug.assertEqual(r.type,"install package"),t.installPackage?t.installPackage({fileName:(n=r.file,e.toPath(n,f,_)),packageName:r.packageName}):Promise.reject("Host does not implement `installPackage`")}function R(e,t){return{lineStarts:e.getLineStarts(),firstLine:e.getLineAndCharacterOfPosition(t.pos).line,lastLine:e.getLineAndCharacterOfPosition(t.end).line}}function M(t,r,n){for(var i=u.getCurrentSourceFile(t),a=[],o=R(i,r),s=o.lineStarts,c=o.firstLine,l=o.lastLine,d=n||!1,p=Number.MAX_VALUE,f=new e.Map,m=new RegExp(/\S/),g=e.isInsideJsxElement(i,s[c]),_=g?"{/*":"//",h=c;h<=l;h++){var y=i.text.substring(s[h],i.getLineEndOfPosition(s[h])),v=m.exec(y);v&&(p=Math.min(p,v.index),f.set(h.toString(),v.index),y.substr(v.index,_.length)!==_&&(d=void 0===n||n))}for(h=c;h<=l;h++)if(c===l||s[h]!==r.end){var b=f.get(h.toString());void 0!==b&&(g?a.push.apply(a,L(t,{pos:s[h]+p,end:i.getLineEndOfPosition(s[h])},d,g)):d?a.push({newText:_,span:{length:0,start:s[h]+p}}):i.text.substr(s[h]+b,_.length)===_&&a.push({newText:"",span:{length:_.length,start:s[h]+b}}))}return a}function L(t,r,n,i){for(var a,o=u.getCurrentSourceFile(t),s=[],c=o.text,l=!1,d=n||!1,p=[],f=r.pos,m=void 0!==i?i:e.isInsideJsxElement(o,f),g=m?"{/*":"/*",_=m?"*/}":"*/",h=m?"\\{\\/\\*":"\\/\\*",y=m?"\\*\\/\\}":"\\*\\/";f<=r.end;){var v=c.substr(f,g.length)===g?g.length:0,b=e.isInComment(o,f+v);if(b)m&&(b.pos--,b.end++),p.push(b.pos),3===b.kind&&p.push(b.end),l=!0,f=b.end+1;else{var k=c.substring(f,r.end).search("("+h+")|("+y+")");d=void 0!==n?n:d||!e.isTextWhiteSpaceLike(c,f,-1===k?r.end:f+k),f=-1===k?r.end+1:f+k+_.length}}if(d||!l){2!==(null===(a=e.isInComment(o,r.pos))||void 0===a?void 0:a.kind)&&e.insertSorted(p,r.pos,e.compareValues),e.insertSorted(p,r.end,e.compareValues);var x=p[0];c.substr(x,g.length)!==g&&s.push({newText:g,span:{length:0,start:x}});for(var S=1;S<p.length-1;S++)c.substr(p[S]-_.length,_.length)!==_&&s.push({newText:_,span:{length:0,start:p[S]}}),c.substr(p[S],g.length)!==g&&s.push({newText:g,span:{length:0,start:p[S]}});s.length%2!=0&&s.push({newText:_,span:{length:0,start:p[p.length-1]}})}else for(var w=0,D=p;w<D.length;w++){var E=D[w],T=E-_.length>0?E-_.length:0;v=c.substr(T,_.length)===_?_.length:0;s.push({newText:"",span:{length:g.length,start:E-v}})}return s}function j(t){var r=t.openingElement,n=t.closingElement,i=t.parent;return!e.tagNamesAreEquivalent(r.tagName,n.tagName)||e.isJsxElement(i)&&e.tagNamesAreEquivalent(r.tagName,i.openingElement.tagName)&&j(i)}function B(r,n,i,a,o,s){var c="number"==typeof n?[n,void 0]:[n.pos,n.end];return{file:r,startPosition:c[0],endPosition:c[1],program:k(),host:t,formatContext:e.formatting.getFormatContext(a,t),cancellationToken:p,preferences:i,triggerReason:o,kind:s}}A.forEach((function(e,t){return A.set(e.toString(),Number(t))}));var z={dispose:function(){if(c){var n=r.getKeyForCompilationSettings(c.getCompilerOptions());e.forEach(c.getSourceFiles(),(function(e){return r.releaseDocumentWithKey(e.resolvedPath,n)})),c=void 0}t=void 0},cleanupSemanticCache:function(){c=void 0},getSyntacticDiagnostics:function(e){return b(),c.getSyntacticDiagnostics(y(e),p).slice()},getSemanticDiagnostics:function(t){b();var r=y(t),n=c.getSemanticDiagnostics(r,p);if(!e.getEmitDeclarations(c.getCompilerOptions()))return n.slice();var a=c.getDeclarationDiagnostics(r,p);return i(i([],n),a)},getSuggestionDiagnostics:function(t){return b(),e.computeSuggestionDiagnostics(y(t),c,p)},getCompilerOptionsDiagnostics:function(){return b(),i(i([],c.getOptionsDiagnostics(p)),c.getGlobalDiagnostics(p))},getSyntacticClassifications:function(t,r){return e.getSyntacticClassifications(p,u.getCurrentSourceFile(t),r)},getSemanticClassifications:function(t,r,n){return E(t)?(b(),"2020"===(n||"original")?e.classifier.v2020.getSemanticClassifications(c,p,y(t),r):e.getSemanticClassifications(c.getTypeChecker(),p,y(t),c.getClassifiableNames(),r)):[]},getEncodedSyntacticClassifications:function(t,r){return e.getEncodedSyntacticClassifications(p,u.getCurrentSourceFile(t),r)},getEncodedSemanticClassifications:function(t,r,n){return E(t)?(b(),"original"===(n||"original")?e.getEncodedSemanticClassifications(c.getTypeChecker(),p,y(t),c.getClassifiableNames(),r):e.classifier.v2020.getEncodedSemanticClassifications(c,p,y(t),r)):{spans:[],endOfLineState:0}},getCompletionsAtPosition:function(r,n,i){void 0===i&&(i=e.emptyOptions);var o=a(a({},e.identity(i)),{includeCompletionsForModuleExports:i.includeCompletionsForModuleExports||i.includeExternalModuleExports,includeCompletionsWithInsertText:i.includeCompletionsWithInsertText||i.includeInsertTextCompletions});return b(),e.Completions.getCompletionsAtPosition(t,c,m,y(r),n,o,i.triggerCharacter)},getCompletionEntryDetails:function(r,n,i,a,o,s){return void 0===s&&(s=e.emptyOptions),b(),e.Completions.getCompletionEntryDetails(c,m,y(r),n,{name:i,source:o},t,a&&e.formatting.getFormatContext(a,t),s,p)},getCompletionEntrySymbol:function(r,n,i,a,o){return void 0===o&&(o=e.emptyOptions),b(),e.Completions.getCompletionEntrySymbol(c,m,y(r),n,{name:i,source:a},t,o)},getSignatureHelpItems:function(t,r,n){var i=(void 0===n?e.emptyOptions:n).triggerReason;b();var a=y(t);return e.SignatureHelp.getSignatureHelpItems(c,a,r,i,p)},getQuickInfoAtPosition:function(t,r){b();var n=y(t),i=e.getTouchingPropertyName(n,r);if(i!==n){var a=c.getTypeChecker(),o=function(t){if(e.isNewExpression(t.parent)&&t.pos===t.parent.pos)return t.parent.expression;return t}(i),s=function(t,r){var n=I(t);if(n){var i=r.getContextualType(n.parent),a=i&&F(n,r,i,!1);if(a&&1===a.length)return e.first(a)}return r.getSymbolAtLocation(t)}(o,a);if(!s||a.isUnknownSymbol(s)){var l=function(t,r,n){switch(r.kind){case 78:return!e.isLabelName(r)&&!e.isTagName(r);case 202:case 158:return!e.isInComment(t,n);case 108:case 188:case 106:return!0;default:return!1}}(n,o,r)?a.getTypeAtLocation(o):void 0;return l&&{kind:"",kindModifiers:"",textSpan:e.createTextSpanFromNode(o,n),displayParts:a.runWithCancellationToken(p,(function(t){return e.typeToDisplayParts(t,l,e.getContainerNode(o))})),documentation:l.symbol?l.symbol.getDocumentationComment(a):void 0,tags:l.symbol?l.symbol.getJsDocTags():void 0}}var u=a.runWithCancellationToken(p,(function(t){return e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(t,s,n,e.getContainerNode(o),o)})),d=u.symbolKind,f=u.displayParts,m=u.documentation,g=u.tags;return{kind:d,kindModifiers:e.SymbolDisplay.getSymbolModifiers(a,s),textSpan:e.createTextSpanFromNode(o,n),displayParts:f,documentation:m,tags:g}}},getDefinitionAtPosition:function(t,r){return b(),e.GoToDefinition.getDefinitionAtPosition(c,y(t),r)},getDefinitionAndBoundSpan:function(t,r){return b(),e.GoToDefinition.getDefinitionAndBoundSpan(c,y(t),r)},getImplementationAtPosition:function(t,r){return b(),e.FindAllReferences.getImplementationsAtPosition(c,p,c.getSourceFiles(),y(t),r)},getTypeDefinitionAtPosition:function(t,r){return b(),e.GoToDefinition.getTypeDefinitionAtPosition(c.getTypeChecker(),y(t),r)},getReferencesAtPosition:function(t,r){return b(),D(e.getTouchingPropertyName(y(t),r),r,{use:1},e.FindAllReferences.toReferenceEntry)},findReferences:function(t,r){return b(),e.FindAllReferences.findReferencedSymbols(c,p,c.getSourceFiles(),y(t),r)},getFileReferences:function(t){return b(),e.FindAllReferences.Core.getReferencesForFileName(t,c,c.getSourceFiles()).map(e.FindAllReferences.toReferenceEntry)},getOccurrencesAtPosition:function(t,r){return e.flatMap(w(t,r,[t]),(function(e){return e.highlightSpans.map((function(t){return a(a({fileName:e.fileName,textSpan:t.textSpan,isWriteAccess:"writtenReference"===t.kind,isDefinition:!1},t.isInString&&{isInString:!0}),t.contextSpan&&{contextSpan:t.contextSpan})}))}))},getDocumentHighlights:w,getNameOrDottedNameSpan:function(t,r,n){var i=u.getCurrentSourceFile(t),a=e.getTouchingPropertyName(i,r);if(a!==i){switch(a.kind){case 202:case 158:case 10:case 95:case 110:case 104:case 106:case 108:case 188:case 78:break;default:return}for(var o=a;;)if(e.isRightSideOfPropertyAccess(o)||e.isRightSideOfQualifiedName(o))o=o.parent;else{if(!e.isNameOfModuleDeclaration(o))break;if(259!==o.parent.parent.kind||o.parent.parent.body!==o.parent)break;o=o.parent.parent.name}return e.createTextSpanFromBounds(o.getStart(),a.getEnd())}},getBreakpointStatementAtPosition:function(t,r){var n=u.getCurrentSourceFile(t);return e.BreakpointResolver.spanInSourceFileAtLocation(n,r)},getNavigateToItems:function(t,r,n,i){void 0===i&&(i=!1),b();var a=n?[y(n)]:c.getSourceFiles();return e.NavigateTo.getNavigateToItems(a,c.getTypeChecker(),p,t,r,i)},getRenameInfo:function(t,r,n){return b(),e.Rename.getRenameInfo(c,y(t),r,n)},getSmartSelectionRange:function(t,r){return e.SmartSelectionRange.getSmartSelectionRange(r,u.getCurrentSourceFile(t))},findRenameLocations:function(t,r,n,i,o){b();var s=y(t),c=e.getAdjustedRenameLocation(e.getTouchingPropertyName(s,r));if(e.isIdentifier(c)&&(e.isJsxOpeningElement(c.parent)||e.isJsxClosingElement(c.parent))&&e.isIntrinsicJsxName(c.escapedText)){var l=c.parent.parent;return[l.openingElement,l.closingElement].map((function(t){var r=e.createTextSpanFromNode(t.tagName,s);return a({fileName:s.fileName,textSpan:r},e.FindAllReferences.toContextSpan(r,s,t.parent))}))}return D(c,r,{findInStrings:n,findInComments:i,providePrefixAndSuffixTextForRename:o,use:2},(function(t,r,n){return e.FindAllReferences.toRenameLocation(t,r,n,o||!1)}))},getNavigationBarItems:function(t){return e.NavigationBar.getNavigationBarItems(u.getCurrentSourceFile(t),p)},getNavigationTree:function(t){return e.NavigationBar.getNavigationTree(u.getCurrentSourceFile(t),p)},getOutliningSpans:function(t){var r=u.getCurrentSourceFile(t);return e.OutliningElementsCollector.collectElements(r,p)},getTodoComments:function(t,r){b();var n=y(t);p.throwIfCancellationRequested();var i,a,o=n.text,s=[];if(r.length>0&&(a=n.fileName,!e.stringContains(a,"/node_modules/"))&&!function(t){return e.stringContains(t,"/oh_modules/")}(n.fileName))for(var c=function(){var t="("+/(?:^(?:\s|\*)*)/.source+"|"+/(?:\/\/+\s*)/.source+"|"+/(?:\/\*+\s*)/.source+")",n="(?:"+e.map(r,(function(e){return"("+(e.text.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")+")")})).join("|")+")",i=t+"("+n+/(?:.*?)/.source+")"+/(?:$|\*\/)/.source;return new RegExp(i,"gim")}(),l=void 0;l=c.exec(o);){p.throwIfCancellationRequested();e.Debug.assert(l.length===r.length+3);var u=l[1],d=l.index+u.length;if(e.isInComment(n,d)){for(var f=void 0,m=0;m<r.length;m++)l[m+3]&&(f=r[m]);if(void 0===f)return e.Debug.fail();if(!((i=o.charCodeAt(d+f.text.length))>=97&&i<=122||i>=65&&i<=90||i>=48&&i<=57)){var g=l[2];s.push({descriptor:f,message:g,position:d})}}}return s},getBraceMatchingAtPosition:function(t,r){var n=u.getCurrentSourceFile(t),i=e.getTouchingToken(n,r),a=i.getStart(n)===r?A.get(i.kind.toString()):void 0,o=a&&e.findChildOfKind(i.parent,a,n);return o?[e.createTextSpanFromNode(i,n),e.createTextSpanFromNode(o,n)].sort((function(e,t){return e.start-t.start})):e.emptyArray},getIndentationAtPosition:function(t,r,n){var i=e.timestamp(),a=v(n),o=u.getCurrentSourceFile(t);m("getIndentationAtPosition: getCurrentSourceFile: "+(e.timestamp()-i)),i=e.timestamp();var s=e.formatting.SmartIndenter.getIndentation(r,o,a);return m("getIndentationAtPosition: computeIndentation : "+(e.timestamp()-i)),s},getFormattingEditsForRange:function(r,n,i,a){var o=u.getCurrentSourceFile(r);return e.formatting.formatSelection(n,i,o,e.formatting.getFormatContext(v(a),t))},getFormattingEditsForDocument:function(r,n){return e.formatting.formatDocument(u.getCurrentSourceFile(r),e.formatting.getFormatContext(v(n),t))},getFormattingEditsAfterKeystroke:function(r,n,i,a){var o=u.getCurrentSourceFile(r),s=e.formatting.getFormatContext(v(a),t);if(!e.isInComment(o,n))switch(i){case"{":return e.formatting.formatOnOpeningCurly(n,o,s);case"}":return e.formatting.formatOnClosingCurly(n,o,s);case";":return e.formatting.formatOnSemicolon(n,o,s);case"\n":return e.formatting.formatOnEnter(n,o,s)}return[]},getDocCommentTemplateAtPosition:function(r,n,i){return e.JsDoc.getDocCommentTemplateAtPosition(e.getNewLineOrDefaultFromHost(t),u.getCurrentSourceFile(r),n,i)},isValidBraceCompletionAtPosition:function(t,r,n){if(60===n)return!1;var i=u.getCurrentSourceFile(t);if(e.isInString(i,r))return!1;if(e.isInsideJsxElementOrAttribute(i,r))return 123===n;if(e.isInTemplateString(i,r))return!1;switch(n){case 39:case 34:case 96:return!e.isInComment(i,r)}return!0},getJsxClosingTagAtPosition:function(t,r){var n=u.getCurrentSourceFile(t),i=e.findPrecedingToken(r,n);if(i){var a=31===i.kind&&e.isJsxOpeningElement(i.parent)?i.parent.parent:e.isJsxText(i)?i.parent:void 0;return a&&j(a)?{newText:"</"+a.openingElement.tagName.getText(n)+">"}:void 0}},getSpanOfEnclosingComment:function(t,r,n){var i=u.getCurrentSourceFile(t),a=e.formatting.getRangeOfEnclosingComment(i,r);return!a||n&&3!==a.kind?void 0:e.createTextSpanFromRange(a)},getCodeFixesAtPosition:function(r,n,i,a,o,s){void 0===s&&(s=e.emptyOptions),b();var l=y(r),u=e.createTextSpanFromBounds(n,i),d=e.formatting.getFormatContext(o,t);return e.flatMap(e.deduplicate(a,e.equateValues,e.compareValues),(function(r){return p.throwIfCancellationRequested(),e.codefix.getFixes({errorCode:r,sourceFile:l,span:u,program:c,host:t,cancellationToken:p,formatContext:d,preferences:s})}))},getCombinedCodeFix:function(r,n,i,a){void 0===a&&(a=e.emptyOptions),b(),e.Debug.assert("file"===r.type);var o=y(r.fileName),s=e.formatting.getFormatContext(i,t);return e.codefix.getAllFixes({fixId:n,sourceFile:o,program:c,host:t,cancellationToken:p,formatContext:s,preferences:a})},applyCodeActionCommand:function(t,r){var n="string"==typeof t?r:t;return e.isArray(n)?Promise.all(n.map((function(e){return O(e)}))):O(n)},organizeImports:function(r,n,i){void 0===i&&(i=e.emptyOptions),b(),e.Debug.assert("file"===r.type);var a=y(r.fileName),o=e.formatting.getFormatContext(n,t);return e.OrganizeImports.organizeImports(a,o,t,c,i)},getEditsForFileRename:function(r,n,i,a){return void 0===a&&(a=e.emptyOptions),e.getEditsForFileRename(k(),r,n,t,e.formatting.getFormatContext(i,t),a,h)},getEmitOutput:function(r,n,i){b();var a=y(r),o=t.getCustomTransformers&&t.getCustomTransformers();return e.getFileEmitOutput(c,a,!!n,p,o,i)},getNonBoundSourceFile:function(e){return u.getCurrentSourceFile(e)},getProgram:k,getAutoImportProvider:function(){var e;return null===(e=t.getPackageJsonAutoImportProvider)||void 0===e?void 0:e.call(t)},getApplicableRefactors:function(t,r,n,i,a){void 0===n&&(n=e.emptyOptions),b();var o=y(t);return e.refactor.getApplicableRefactors(B(o,r,n,e.emptyOptions,i,a))},getEditsForRefactor:function(t,r,n,i,a,o){void 0===o&&(o=e.emptyOptions),b();var s=y(t);return e.refactor.getEditsForRefactor(B(s,n,o,r),i,a)},toLineColumnOffset:h.toLineColumnOffset,getSourceMapper:function(){return h},clearSourceMapperCache:function(){return h.clearCache()},prepareCallHierarchy:function(t,r){b();var n=e.CallHierarchy.resolveCallHierarchyDeclaration(c,e.getTouchingPropertyName(y(t),r));return n&&e.mapOneOrMany(n,(function(t){return e.CallHierarchy.createCallHierarchyItem(c,t)}))},provideCallHierarchyIncomingCalls:function(t,r){b();var n=y(t),i=e.firstOrOnly(e.CallHierarchy.resolveCallHierarchyDeclaration(c,0===r?n:e.getTouchingPropertyName(n,r)));return i?e.CallHierarchy.getIncomingCalls(c,i,p):[]},provideCallHierarchyOutgoingCalls:function(t,r){b();var n=y(t),i=e.firstOrOnly(e.CallHierarchy.resolveCallHierarchyDeclaration(c,0===r?n:e.getTouchingPropertyName(n,r)));return i?e.CallHierarchy.getOutgoingCalls(c,i):[]},toggleLineComment:M,toggleMultilineComment:L,commentSelection:function(e,t){var r=R(u.getCurrentSourceFile(e),t);return r.firstLine===r.lastLine&&t.pos!==t.end?L(e,t,!0):M(e,t,!0)},uncommentSelection:function(t,r){var n=u.getCurrentSourceFile(t),i=[],a=r.pos,o=r.end;a===o&&(o+=e.isInsideJsxElement(n,a)?2:1);for(var s=a;s<=o;s++){var c=e.isInComment(n,s);if(c){switch(c.kind){case 2:i.push.apply(i,M(t,{end:c.end,pos:c.pos+1},!1));break;case 3:i.push.apply(i,L(t,{end:c.end,pos:c.pos+1},!1))}s=c.end+1}}return i}};switch(s){case e.LanguageServiceMode.Semantic:break;case e.LanguageServiceMode.PartialSemantic:N.forEach((function(e){return z[e]=function(){throw new Error("LanguageService Operation: "+e+" not allowed in LanguageServiceMode.PartialSemantic")}}));break;case e.LanguageServiceMode.Syntactic:P.forEach((function(e){return z[e]=function(){throw new Error("LanguageService Operation: "+e+" not allowed in LanguageServiceMode.Syntactic")}}));break;default:e.Debug.assertNever(s)}return z},e.getNameTable=function(t){return t.nameTable||function(t){var r=t.nameTable=new e.Map;t.forEachChild((function t(n){if(e.isIdentifier(n)&&!e.isTagName(n)&&n.escapedText||e.isStringOrNumericLiteralLike(n)&&function(t){return e.isDeclarationName(t)||275===t.parent.kind||function(e){return e&&e.parent&&203===e.parent.kind&&e.parent.argumentExpression===e}(t)||e.isLiteralComputedPropertyDeclarationName(t)}(n)){var i=e.getEscapedTextOfIdentifierOrLiteral(n);r.set(i,void 0===r.get(i)?n.pos:-1)}else if(e.isPrivateIdentifier(n)){i=n.escapedText;r.set(i,void 0===r.get(i)?n.pos:-1)}if(e.forEachChild(n,t),e.hasJSDocNodes(n))for(var a=0,o=n.jsDoc;a<o.length;a++){var s=o[a];e.forEachChild(s,t)}}))}(t),t.nameTable},e.getContainingObjectLiteralElement=I,e.getPropertySymbolsFromContextualType=F,e.getDefaultLibFilePath=function(t){return __dirname+e.directorySeparator+e.getDefaultLibFileName(t)},e.setObjectAllocator({getNodeConstructor:function(){return r},getTokenConstructor:function(){return c},getIdentifierConstructor:function(){return u},getPrivateIdentifierConstructor:function(){return d},getSourceFileConstructor:function(){return h},getSymbolConstructor:function(){return s},getTypeConstructor:function(){return p},getSignatureConstructor:function(){return f},getSourceMapSourceConstructor:function(){return y}})}(d||(d={})),function(e){!function(t){t.spanInSourceFileAtLocation=function(t,r){if(!t.isDeclarationFile){var n=e.getTokenAtPosition(t,r),i=t.getLineAndCharacterOfPosition(r).line;if(t.getLineAndCharacterOfPosition(n.getStart(t)).line>i){var a=e.findPrecedingToken(n.pos,t);if(!a||t.getLineAndCharacterOfPosition(a.getEnd()).line!==i)return;n=a}if(!(8388608&n.flags))return d(n)}function o(r,n){var i=r.decorators?e.skipTrivia(t.text,r.decorators.end):r.getStart(t);return e.createTextSpanFromBounds(i,(n||r).getEnd())}function s(r,n){return o(r,e.findNextToken(n,n.parent,t))}function c(e,r){return e&&i===t.getLineAndCharacterOfPosition(e.getStart(t)).line?d(e):d(r)}function l(r){return d(e.findPrecedingToken(r.pos,t))}function u(r){return d(e.findNextToken(r,r.parent,t))}function d(r){if(r){var n=r.parent;switch(r.kind){case 234:return y(r.declarationList.declarations[0]);case 251:case 164:case 163:return y(r);case 161:return function t(r){if(e.isBindingPattern(r.name))return x(r.name);if(function(t){return!!t.initializer||void 0!==t.dotDotDotToken||e.hasSyntacticModifier(t,12)}(r))return o(r);var n=r.parent,i=n.parameters.indexOf(r);return e.Debug.assert(-1!==i),0!==i?t(n.parameters[i-1]):d(n.body)}(r);case 253:case 166:case 165:case 168:case 169:case 167:case 209:case 210:return function(e){if(!e.body)return;if(v(e))return o(e);return d(e.body)}(r);case 232:if(e.isFunctionBlock(r))return function(e){var t=e.statements.length?e.statements[0]:e.getLastToken();if(v(e.parent))return c(e.parent,t);return d(t)}(r);case 260:return b(r);case 290:return b(r.block);case 235:return o(r.expression);case 244:return o(r.getChildAt(0),r.expression);case 238:return s(r,r.expression);case 237:return d(r.statement);case 250:return o(r.getChildAt(0));case 236:return s(r,r.expression);case 247:return d(r.statement);case 243:case 242:return o(r.getChildAt(0),r.label);case 239:return function(e){if(e.initializer)return k(e);if(e.condition)return o(e.condition);if(e.incrementor)return o(e.incrementor)}(r);case 240:return s(r,r.expression);case 241:return k(r);case 246:return s(r,r.expression);case 287:case 288:return d(r.statements[0]);case 249:return b(r.tryBlock);case 248:case 269:return o(r,r.expression);case 263:return o(r,r.moduleReference);case 264:case 270:return o(r,r.moduleSpecifier);case 259:if(1!==e.getModuleInstanceState(r))return;case 254:case 258:case 294:case 199:return o(r);case 245:return d(r.statement);case 162:return _=n.decorators,e.createTextSpanFromBounds(e.skipTrivia(t.text,_.pos),_.end);case 197:case 198:return x(r);case 256:case 257:return;case 26:case 1:return c(e.findPrecedingToken(r.pos,t));case 27:return l(r);case 18:return function(r){switch(r.parent.kind){case 258:var n=r.parent;return c(e.findPrecedingToken(r.pos,t,r.parent),n.members.length?n.members[0]:n.getLastToken(t));case 254:var i=r.parent;return c(e.findPrecedingToken(r.pos,t,r.parent),i.members.length?i.members[0]:i.getLastToken(t));case 261:return c(r.parent.parent,r.parent.clauses[0])}return d(r.parent)}(r);case 19:return function(t){switch(t.parent.kind){case 260:if(1!==e.getModuleInstanceState(t.parent.parent))return;case 258:case 254:return o(t);case 232:if(e.isFunctionBlock(t.parent))return o(t);case 290:return d(e.lastOrUndefined(t.parent.statements));case 261:var r=t.parent,n=e.lastOrUndefined(r.clauses);return n?d(e.lastOrUndefined(n.statements)):void 0;case 197:var i=t.parent;return d(e.lastOrUndefined(i.elements)||i);default:if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)){var a=t.parent;return o(e.lastOrUndefined(a.properties)||a)}return d(t.parent)}}(r);case 23:return function(t){if(198===t.parent.kind){var r=t.parent;return o(e.lastOrUndefined(r.elements)||r)}if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)){var n=t.parent;return o(e.lastOrUndefined(n.elements)||n)}return d(t.parent)}(r);case 20:return function(e){if(237===e.parent.kind||204===e.parent.kind||205===e.parent.kind)return l(e);if(208===e.parent.kind)return u(e);return d(e.parent)}(r);case 21:return function(e){switch(e.parent.kind){case 209:case 253:case 210:case 166:case 165:case 168:case 169:case 167:case 238:case 237:case 239:case 241:case 204:case 205:case 208:return l(e);default:return d(e.parent)}}(r);case 58:return function(t){if(e.isFunctionLike(t.parent)||291===t.parent.kind||161===t.parent.kind)return l(t);return d(t.parent)}(r);case 31:case 29:return function(e){if(207===e.parent.kind)return u(e);return d(e.parent)}(r);case 115:return function(e){if(237===e.parent.kind)return s(e,e.parent.expression);return d(e.parent)}(r);case 91:case 82:case 96:return u(r);case 157:return function(e){if(241===e.parent.kind)return u(e);return d(e.parent)}(r);default:if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(r))return S(r);if((78===r.kind||222===r.kind||291===r.kind||292===r.kind)&&e.isArrayLiteralOrObjectLiteralDestructuringPattern(n))return o(r);if(218===r.kind){var i=r,a=i.left,p=i.operatorToken;if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(a))return S(a);if(62===p.kind&&e.isArrayLiteralOrObjectLiteralDestructuringPattern(r.parent))return o(r);if(27===p.kind)return d(a)}if(e.isExpressionNode(r))switch(n.kind){case 237:return l(r);case 162:return d(r.parent);case 239:case 241:return o(r);case 218:if(27===r.parent.operatorToken.kind)return o(r);break;case 210:if(r.parent.body===r)return o(r)}switch(r.parent.kind){case 291:if(r.parent.name===r&&!e.isArrayLiteralOrObjectLiteralDestructuringPattern(r.parent.parent))return d(r.parent.initializer);break;case 207:if(r.parent.type===r)return u(r.parent.type);break;case 251:case 161:var f=r.parent,m=f.initializer,g=f.type;if(m===r||g===r||e.isAssignmentOperator(r.kind))return l(r);break;case 218:a=r.parent.left;if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(a)&&r!==a)return l(r);break;default:if(e.isFunctionLike(r.parent)&&r.parent.type===r)return l(r)}return d(r.parent)}}var _;function h(r){return e.isVariableDeclarationList(r.parent)&&r.parent.declarations[0]===r?o(e.findPrecedingToken(r.pos,t,r.parent),r):o(r)}function y(r){if(240===r.parent.parent.kind)return d(r.parent.parent);var n=r.parent;return e.isBindingPattern(r.name)?x(r.name):r.initializer||e.hasSyntacticModifier(r,1)||241===n.parent.kind?h(r):e.isVariableDeclarationList(r.parent)&&r.parent.declarations[0]!==r?d(e.findPrecedingToken(r.pos,t,r.parent)):void 0}function v(t){return e.hasSyntacticModifier(t,1)||254===t.parent.kind&&167!==t.kind}function b(r){switch(r.parent.kind){case 259:if(1!==e.getModuleInstanceState(r.parent))return;case 238:case 236:case 240:return c(r.parent,r.statements[0]);case 239:case 241:return c(e.findPrecedingToken(r.pos,t,r.parent),r.statements[0])}return d(r.statements[0])}function k(e){if(252!==e.initializer.kind)return d(e.initializer);var t=e.initializer;return t.declarations.length>0?d(t.declarations[0]):void 0}function x(t){var r=e.forEach(t.elements,(function(e){return 224!==e.kind?e:void 0}));return r?d(r):199===t.parent.kind?o(t.parent):h(t.parent)}function S(t){e.Debug.assert(198!==t.kind&&197!==t.kind);var r=200===t.kind?t.elements:t.properties,n=e.forEach(r,(function(e){return 224!==e.kind?e:void 0}));return n?d(n):o(218===t.parent.kind?t.parent:t)}}}}(e.BreakpointResolver||(e.BreakpointResolver={}))}(d||(d={})),function(e){e.transform=function(t,r,n){var i=[];n=e.fixupCompilerOptions(n,i);var a=e.isArray(t)?t:[t],o=e.transformNodes(void 0,void 0,e.factory,n,a,r,!0);return o.diagnostics=e.concatenate(o.diagnostics,i),o}}(d||(d={}));var d,p=function(){return this}();!function(e){function t(e,t){e&&e.log("*INTERNAL ERROR* - Exception in typescript services: "+t.message)}var r=function(){function t(e){this.scriptSnapshotShim=e}return t.prototype.getText=function(e,t){return this.scriptSnapshotShim.getText(e,t)},t.prototype.getLength=function(){return this.scriptSnapshotShim.getLength()},t.prototype.getChangeRange=function(t){var r=t,n=this.scriptSnapshotShim.getChangeRange(r.scriptSnapshotShim);if(null===n)return null;var i=JSON.parse(n);return e.createTextChangeRange(e.createTextSpan(i.span.start,i.span.length),i.newLength)},t.prototype.dispose=function(){"dispose"in this.scriptSnapshotShim&&this.scriptSnapshotShim.dispose()},t}(),n=function(){function t(t){var r=this;this.shimHost=t,this.loggingEnabled=!1,this.tracingEnabled=!1,"getModuleResolutionsForFile"in this.shimHost&&(this.resolveModuleNames=function(t,n){var i=JSON.parse(r.shimHost.getModuleResolutionsForFile(n));return e.map(t,(function(t){var r=e.getProperty(i,t);return r?{resolvedFileName:r,extension:e.extensionFromPath(r),isExternalLibraryImport:!1}:void 0}))}),"directoryExists"in this.shimHost&&(this.directoryExists=function(e){return r.shimHost.directoryExists(e)}),"getTypeReferenceDirectiveResolutionsForFile"in this.shimHost&&(this.resolveTypeReferenceDirectives=function(t,n){var i=JSON.parse(r.shimHost.getTypeReferenceDirectiveResolutionsForFile(n));return e.map(t,(function(t){return e.getProperty(i,t)}))})}return t.prototype.log=function(e){this.loggingEnabled&&this.shimHost.log(e)},t.prototype.trace=function(e){this.tracingEnabled&&this.shimHost.trace(e)},t.prototype.error=function(e){this.shimHost.error(e)},t.prototype.getProjectVersion=function(){if(this.shimHost.getProjectVersion)return this.shimHost.getProjectVersion()},t.prototype.getTypeRootsVersion=function(){return this.shimHost.getTypeRootsVersion?this.shimHost.getTypeRootsVersion():0},t.prototype.useCaseSensitiveFileNames=function(){return!!this.shimHost.useCaseSensitiveFileNames&&this.shimHost.useCaseSensitiveFileNames()},t.prototype.getCompilationSettings=function(){var e=this.shimHost.getCompilationSettings();if(null===e||""===e)throw Error("LanguageServiceShimHostAdapter.getCompilationSettings: empty compilationSettings");var t=JSON.parse(e);return t.allowNonTsExtensions=!0,t},t.prototype.getScriptFileNames=function(){var e=this.shimHost.getScriptFileNames();return JSON.parse(e)},t.prototype.getScriptSnapshot=function(e){var t=this.shimHost.getScriptSnapshot(e);return t&&new r(t)},t.prototype.getScriptKind=function(e){return"getScriptKind"in this.shimHost?this.shimHost.getScriptKind(e):0},t.prototype.getScriptVersion=function(e){return this.shimHost.getScriptVersion(e)},t.prototype.getLocalizedDiagnosticMessages=function(){var e=this.shimHost.getLocalizedDiagnosticMessages();if(null===e||""===e)return null;try{return JSON.parse(e)}catch(e){return this.log(e.description||"diagnosticMessages.generated.json has invalid JSON format"),null}},t.prototype.getCancellationToken=function(){var t=this.shimHost.getCancellationToken();return new e.ThrottledCancellationToken(t)},t.prototype.getCurrentDirectory=function(){return this.shimHost.getCurrentDirectory()},t.prototype.getDirectories=function(e){return JSON.parse(this.shimHost.getDirectories(e))},t.prototype.getDefaultLibFileName=function(e){return this.shimHost.getDefaultLibFileName(JSON.stringify(e))},t.prototype.readDirectory=function(t,r,n,i,a){var o=e.getFileMatcherPatterns(t,n,i,this.shimHost.useCaseSensitiveFileNames(),this.shimHost.getCurrentDirectory());return JSON.parse(this.shimHost.readDirectory(t,JSON.stringify(r),JSON.stringify(o.basePaths),o.excludePattern,o.includeFilePattern,o.includeDirectoryPattern,a))},t.prototype.readFile=function(e,t){return this.shimHost.readFile(e,t)},t.prototype.fileExists=function(e){return this.shimHost.fileExists(e)},t}();e.LanguageServiceShimHostAdapter=n;var o=function(){function t(e){var t=this;this.shimHost=e,this.useCaseSensitiveFileNames=!!this.shimHost.useCaseSensitiveFileNames&&this.shimHost.useCaseSensitiveFileNames(),"directoryExists"in this.shimHost?this.directoryExists=function(e){return t.shimHost.directoryExists(e)}:this.directoryExists=void 0,"realpath"in this.shimHost?this.realpath=function(e){return t.shimHost.realpath(e)}:this.realpath=void 0}return t.prototype.readDirectory=function(t,r,n,i,a){var o=e.getFileMatcherPatterns(t,n,i,this.shimHost.useCaseSensitiveFileNames(),this.shimHost.getCurrentDirectory());return JSON.parse(this.shimHost.readDirectory(t,JSON.stringify(r),JSON.stringify(o.basePaths),o.excludePattern,o.includeFilePattern,o.includeDirectoryPattern,a))},t.prototype.fileExists=function(e){return this.shimHost.fileExists(e)},t.prototype.readFile=function(e){return this.shimHost.readFile(e)},t.prototype.getDirectories=function(e){return JSON.parse(this.shimHost.getDirectories(e))},t}();function s(e,t,r,n){return u(e,t,!0,r,n)}function u(r,n,i,a,o){try{var s=function(t,r,n,i){var a;i&&(t.log(r),a=e.timestamp());var o=n();if(i){var s=e.timestamp();if(t.log(r+" completed in "+(s-a)+" msec"),e.isString(o)){var c=o;c.length>128&&(c=c.substring(0,128)+"..."),t.log(" result.length="+c.length+", result='"+JSON.stringify(c)+"'")}}return o}(r,n,a,o);return i?JSON.stringify({result:s}):s}catch(i){return i instanceof e.OperationCanceledException?JSON.stringify({canceled:!0}):(t(r,i),i.description=n,JSON.stringify({error:i}))}}e.CoreServicesShimHostAdapter=o;var d=function(){function e(e){this.factory=e,e.registerShim(this)}return e.prototype.dispose=function(e){this.factory.unregisterShim(this)},e}();function f(t,r){return t.map((function(t){return function(t,r){return{message:e.flattenDiagnosticMessageText(t.messageText,r),start:t.start,length:t.length,category:e.diagnosticCategoryName(t),code:t.code,reportsUnnecessary:t.reportsUnnecessary,reportsDeprecated:t.reportsDeprecated}}(t,r)}))}e.realizeDiagnostics=f;var m=function(t){function r(e,r,n){var i=t.call(this,e)||this;return i.host=r,i.languageService=n,i.logPerformance=!1,i.logger=i.host,i}return l(r,t),r.prototype.forwardJSONCall=function(e,t){return s(this.logger,e,t,this.logPerformance)},r.prototype.dispose=function(e){this.logger.log("dispose()"),this.languageService.dispose(),this.languageService=null,p&&p.CollectGarbage&&(p.CollectGarbage(),this.logger.log("CollectGarbage()")),this.logger=null,t.prototype.dispose.call(this,e)},r.prototype.refresh=function(e){this.forwardJSONCall("refresh("+e+")",(function(){return null}))},r.prototype.cleanupSemanticCache=function(){var e=this;this.forwardJSONCall("cleanupSemanticCache()",(function(){return e.languageService.cleanupSemanticCache(),null}))},r.prototype.realizeDiagnostics=function(t){return f(t,e.getNewLineOrDefaultFromHost(this.host))},r.prototype.getSyntacticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getSyntacticClassifications('"+t+"', "+r+", "+n+")",(function(){return i.languageService.getSyntacticClassifications(t,e.createTextSpan(r,n))}))},r.prototype.getSemanticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getSemanticClassifications('"+t+"', "+r+", "+n+")",(function(){return i.languageService.getSemanticClassifications(t,e.createTextSpan(r,n))}))},r.prototype.getEncodedSyntacticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getEncodedSyntacticClassifications('"+t+"', "+r+", "+n+")",(function(){return g(i.languageService.getEncodedSyntacticClassifications(t,e.createTextSpan(r,n)))}))},r.prototype.getEncodedSemanticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getEncodedSemanticClassifications('"+t+"', "+r+", "+n+")",(function(){return g(i.languageService.getEncodedSemanticClassifications(t,e.createTextSpan(r,n)))}))},r.prototype.getSyntacticDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSyntacticDiagnostics('"+e+"')",(function(){var r=t.languageService.getSyntacticDiagnostics(e);return t.realizeDiagnostics(r)}))},r.prototype.getSemanticDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSemanticDiagnostics('"+e+"')",(function(){var r=t.languageService.getSemanticDiagnostics(e);return t.realizeDiagnostics(r)}))},r.prototype.getSuggestionDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSuggestionDiagnostics('"+e+"')",(function(){return t.realizeDiagnostics(t.languageService.getSuggestionDiagnostics(e))}))},r.prototype.getCompilerOptionsDiagnostics=function(){var e=this;return this.forwardJSONCall("getCompilerOptionsDiagnostics()",(function(){var t=e.languageService.getCompilerOptionsDiagnostics();return e.realizeDiagnostics(t)}))},r.prototype.getQuickInfoAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getQuickInfoAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getQuickInfoAtPosition(e,t)}))},r.prototype.getNameOrDottedNameSpan=function(e,t,r){var n=this;return this.forwardJSONCall("getNameOrDottedNameSpan('"+e+"', "+t+", "+r+")",(function(){return n.languageService.getNameOrDottedNameSpan(e,t,r)}))},r.prototype.getBreakpointStatementAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getBreakpointStatementAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getBreakpointStatementAtPosition(e,t)}))},r.prototype.getSignatureHelpItems=function(e,t,r){var n=this;return this.forwardJSONCall("getSignatureHelpItems('"+e+"', "+t+")",(function(){return n.languageService.getSignatureHelpItems(e,t,r)}))},r.prototype.getDefinitionAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getDefinitionAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getDefinitionAtPosition(e,t)}))},r.prototype.getDefinitionAndBoundSpan=function(e,t){var r=this;return this.forwardJSONCall("getDefinitionAndBoundSpan('"+e+"', "+t+")",(function(){return r.languageService.getDefinitionAndBoundSpan(e,t)}))},r.prototype.getTypeDefinitionAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getTypeDefinitionAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getTypeDefinitionAtPosition(e,t)}))},r.prototype.getImplementationAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getImplementationAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getImplementationAtPosition(e,t)}))},r.prototype.getRenameInfo=function(e,t,r){var n=this;return this.forwardJSONCall("getRenameInfo('"+e+"', "+t+")",(function(){return n.languageService.getRenameInfo(e,t,r)}))},r.prototype.getSmartSelectionRange=function(e,t){var r=this;return this.forwardJSONCall("getSmartSelectionRange('"+e+"', "+t+")",(function(){return r.languageService.getSmartSelectionRange(e,t)}))},r.prototype.findRenameLocations=function(e,t,r,n,i){var a=this;return this.forwardJSONCall("findRenameLocations('"+e+"', "+t+", "+r+", "+n+", "+i+")",(function(){return a.languageService.findRenameLocations(e,t,r,n,i)}))},r.prototype.getBraceMatchingAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getBraceMatchingAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getBraceMatchingAtPosition(e,t)}))},r.prototype.isValidBraceCompletionAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("isValidBraceCompletionAtPosition('"+e+"', "+t+", "+r+")",(function(){return n.languageService.isValidBraceCompletionAtPosition(e,t,r)}))},r.prototype.getSpanOfEnclosingComment=function(e,t,r){var n=this;return this.forwardJSONCall("getSpanOfEnclosingComment('"+e+"', "+t+")",(function(){return n.languageService.getSpanOfEnclosingComment(e,t,r)}))},r.prototype.getIndentationAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getIndentationAtPosition('"+e+"', "+t+")",(function(){var i=JSON.parse(r);return n.languageService.getIndentationAtPosition(e,t,i)}))},r.prototype.getReferencesAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getReferencesAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getReferencesAtPosition(e,t)}))},r.prototype.findReferences=function(e,t){var r=this;return this.forwardJSONCall("findReferences('"+e+"', "+t+")",(function(){return r.languageService.findReferences(e,t)}))},r.prototype.getFileReferences=function(e){var t=this;return this.forwardJSONCall("getFileReferences('"+e+")",(function(){return t.languageService.getFileReferences(e)}))},r.prototype.getOccurrencesAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getOccurrencesAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getOccurrencesAtPosition(e,t)}))},r.prototype.getDocumentHighlights=function(t,r,n){var i=this;return this.forwardJSONCall("getDocumentHighlights('"+t+"', "+r+")",(function(){var a=i.languageService.getDocumentHighlights(t,r,JSON.parse(n)),o=e.toFileNameLowerCase(e.normalizeSlashes(t));return e.filter(a,(function(t){return e.toFileNameLowerCase(e.normalizeSlashes(t.fileName))===o}))}))},r.prototype.getCompletionsAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getCompletionsAtPosition('"+e+"', "+t+", "+r+")",(function(){return n.languageService.getCompletionsAtPosition(e,t,r)}))},r.prototype.getCompletionEntryDetails=function(e,t,r,n,i,a){var o=this;return this.forwardJSONCall("getCompletionEntryDetails('"+e+"', "+t+", '"+r+"')",(function(){var s=void 0===n?void 0:JSON.parse(n);return o.languageService.getCompletionEntryDetails(e,t,r,s,i,a)}))},r.prototype.getFormattingEditsForRange=function(e,t,r,n){var i=this;return this.forwardJSONCall("getFormattingEditsForRange('"+e+"', "+t+", "+r+")",(function(){var a=JSON.parse(n);return i.languageService.getFormattingEditsForRange(e,t,r,a)}))},r.prototype.getFormattingEditsForDocument=function(e,t){var r=this;return this.forwardJSONCall("getFormattingEditsForDocument('"+e+"')",(function(){var n=JSON.parse(t);return r.languageService.getFormattingEditsForDocument(e,n)}))},r.prototype.getFormattingEditsAfterKeystroke=function(e,t,r,n){var i=this;return this.forwardJSONCall("getFormattingEditsAfterKeystroke('"+e+"', "+t+", '"+r+"')",(function(){var a=JSON.parse(n);return i.languageService.getFormattingEditsAfterKeystroke(e,t,r,a)}))},r.prototype.getDocCommentTemplateAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getDocCommentTemplateAtPosition('"+e+"', "+t+")",(function(){return n.languageService.getDocCommentTemplateAtPosition(e,t,r)}))},r.prototype.getNavigateToItems=function(e,t,r){var n=this;return this.forwardJSONCall("getNavigateToItems('"+e+"', "+t+", "+r+")",(function(){return n.languageService.getNavigateToItems(e,t,r)}))},r.prototype.getNavigationBarItems=function(e){var t=this;return this.forwardJSONCall("getNavigationBarItems('"+e+"')",(function(){return t.languageService.getNavigationBarItems(e)}))},r.prototype.getNavigationTree=function(e){var t=this;return this.forwardJSONCall("getNavigationTree('"+e+"')",(function(){return t.languageService.getNavigationTree(e)}))},r.prototype.getOutliningSpans=function(e){var t=this;return this.forwardJSONCall("getOutliningSpans('"+e+"')",(function(){return t.languageService.getOutliningSpans(e)}))},r.prototype.getTodoComments=function(e,t){var r=this;return this.forwardJSONCall("getTodoComments('"+e+"')",(function(){return r.languageService.getTodoComments(e,JSON.parse(t))}))},r.prototype.prepareCallHierarchy=function(e,t){var r=this;return this.forwardJSONCall("prepareCallHierarchy('"+e+"', "+t+")",(function(){return r.languageService.prepareCallHierarchy(e,t)}))},r.prototype.provideCallHierarchyIncomingCalls=function(e,t){var r=this;return this.forwardJSONCall("provideCallHierarchyIncomingCalls('"+e+"', "+t+")",(function(){return r.languageService.provideCallHierarchyIncomingCalls(e,t)}))},r.prototype.provideCallHierarchyOutgoingCalls=function(e,t){var r=this;return this.forwardJSONCall("provideCallHierarchyOutgoingCalls('"+e+"', "+t+")",(function(){return r.languageService.provideCallHierarchyOutgoingCalls(e,t)}))},r.prototype.getEmitOutput=function(e){var t=this;return this.forwardJSONCall("getEmitOutput('"+e+"')",(function(){var r=t.languageService.getEmitOutput(e),n=r.diagnostics,i=c(r,["diagnostics"]);return a(a({},i),{diagnostics:t.realizeDiagnostics(n)})}))},r.prototype.getEmitOutputObject=function(e){var t=this;return u(this.logger,"getEmitOutput('"+e+"')",!1,(function(){return t.languageService.getEmitOutput(e)}),this.logPerformance)},r.prototype.toggleLineComment=function(e,t){var r=this;return this.forwardJSONCall("toggleLineComment('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.toggleLineComment(e,t)}))},r.prototype.toggleMultilineComment=function(e,t){var r=this;return this.forwardJSONCall("toggleMultilineComment('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.toggleMultilineComment(e,t)}))},r.prototype.commentSelection=function(e,t){var r=this;return this.forwardJSONCall("commentSelection('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.commentSelection(e,t)}))},r.prototype.uncommentSelection=function(e,t){var r=this;return this.forwardJSONCall("uncommentSelection('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.uncommentSelection(e,t)}))},r}(d);function g(e){return{spans:e.spans.join(","),endOfLineState:e.endOfLineState}}var _=function(t){function r(r,n){var i=t.call(this,r)||this;return i.logger=n,i.logPerformance=!1,i.classifier=e.createClassifier(),i}return l(r,t),r.prototype.getEncodedLexicalClassifications=function(e,t,r){var n=this;return void 0===r&&(r=!1),s(this.logger,"getEncodedLexicalClassifications",(function(){return g(n.classifier.getEncodedLexicalClassifications(e,t,r))}),this.logPerformance)},r.prototype.getClassificationsForLine=function(e,t,r){void 0===r&&(r=!1);for(var n=this.classifier.getClassificationsForLine(e,t,r),i="",a=0,o=n.entries;a<o.length;a++){var s=o[a];i+=s.length+"\n",i+=s.classification+"\n"}return i+=n.finalLexState},r}(d),h=function(t){function r(e,r,n){var i=t.call(this,e)||this;return i.logger=r,i.host=n,i.logPerformance=!1,i}return l(r,t),r.prototype.forwardJSONCall=function(e,t){return s(this.logger,e,t,this.logPerformance)},r.prototype.resolveModuleName=function(t,r,n){var i=this;return this.forwardJSONCall("resolveModuleName('"+t+"')",(function(){var a=JSON.parse(n),o=e.resolveModuleName(r,e.normalizeSlashes(t),a,i.host),s=o.resolvedModule?o.resolvedModule.resolvedFileName:void 0;return o.resolvedModule&&".ts"!==o.resolvedModule.extension&&".tsx"!==o.resolvedModule.extension&&".d.ts"!==o.resolvedModule.extension&&".ets"!==o.resolvedModule.extension&&".d.ets"!==o.resolvedModule.extension&&(s=void 0),{resolvedFileName:s,failedLookupLocations:o.failedLookupLocations}}))},r.prototype.resolveTypeReferenceDirective=function(t,r,n){var i=this;return this.forwardJSONCall("resolveTypeReferenceDirective("+t+")",(function(){var a=JSON.parse(n),o=e.resolveTypeReferenceDirective(r,e.normalizeSlashes(t),a,i.host);return{resolvedFileName:o.resolvedTypeReferenceDirective?o.resolvedTypeReferenceDirective.resolvedFileName:void 0,primary:!o.resolvedTypeReferenceDirective||o.resolvedTypeReferenceDirective.primary,failedLookupLocations:o.failedLookupLocations}}))},r.prototype.getPreProcessedFileInfo=function(t,r){var n=this;return this.forwardJSONCall("getPreProcessedFileInfo('"+t+"')",(function(){var t=e.preProcessFile(e.getSnapshotText(r),!0,!0);return{referencedFiles:n.convertFileReferences(t.referencedFiles),importedFiles:n.convertFileReferences(t.importedFiles),ambientExternalModules:t.ambientExternalModules,isLibFile:t.isLibFile,typeReferenceDirectives:n.convertFileReferences(t.typeReferenceDirectives),libReferenceDirectives:n.convertFileReferences(t.libReferenceDirectives)}}))},r.prototype.getAutomaticTypeDirectiveNames=function(t){var r=this;return this.forwardJSONCall("getAutomaticTypeDirectiveNames('"+t+"')",(function(){var n=JSON.parse(t);return e.getAutomaticTypeDirectiveNames(n,r.host)}))},r.prototype.convertFileReferences=function(t){if(t){for(var r=[],n=0,i=t;n<i.length;n++){var a=i[n];r.push({path:e.normalizeSlashes(a.fileName),position:a.pos,length:a.end-a.pos})}return r}},r.prototype.getTSConfigFileInfo=function(t,r){var n=this;return this.forwardJSONCall("getTSConfigFileInfo('"+t+"')",(function(){var a=e.parseJsonText(t,e.getSnapshotText(r)),o=e.normalizeSlashes(t),s=e.parseJsonSourceFileConfigFileContent(a,n.host,e.getDirectoryPath(o),{},o);return{options:s.options,typeAcquisition:s.typeAcquisition,files:s.fileNames,raw:s.raw,errors:f(i(i([],a.parseDiagnostics),s.errors),"\r\n")}}))},r.prototype.getDefaultCompilationSettings=function(){return this.forwardJSONCall("getDefaultCompilationSettings()",(function(){return e.getDefaultCompilerOptions()}))},r.prototype.discoverTypings=function(t){var r=this,n=e.createGetCanonicalFileName(!1);return this.forwardJSONCall("discoverTypings()",(function(){var i=JSON.parse(t);return void 0===r.safeList&&(r.safeList=e.JsTyping.loadSafeList(r.host,e.toPath(i.safeListPath,i.safeListPath,n))),e.JsTyping.discoverTypings(r.host,(function(e){return r.logger.log(e)}),i.fileNames,e.toPath(i.projectRootPath,i.projectRootPath,n),r.safeList,i.packageNameToTypingLocation,i.typeAcquisition,i.unresolvedImports,i.typesRegistry)}))},r}(d),y=function(){function r(){this._shims=[]}return r.prototype.getServicesVersion=function(){return e.servicesVersion},r.prototype.createLanguageServiceShim=function(r){try{void 0===this.documentRegistry&&(this.documentRegistry=e.createDocumentRegistry(r.useCaseSensitiveFileNames&&r.useCaseSensitiveFileNames(),r.getCurrentDirectory()));var i=new n(r),a=e.createLanguageService(i,this.documentRegistry,!1);return new m(this,r,a)}catch(e){throw t(r,e),e}},r.prototype.createClassifierShim=function(e){try{return new _(this,e)}catch(r){throw t(e,r),r}},r.prototype.createCoreServicesShim=function(e){try{var r=new o(e);return new h(this,e,r)}catch(r){throw t(e,r),r}},r.prototype.close=function(){e.clear(this._shims),this.documentRegistry=void 0},r.prototype.registerShim=function(e){this._shims.push(e)},r.prototype.unregisterShim=function(e){for(var t=0;t<this._shims.length;t++)if(this._shims[t]===e)return void delete this._shims[t];throw new Error("Invalid operation")},r}();e.TypeScriptServicesFactory=y}(d||(d={})),function(){if("object"!=typeof globalThis)try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:!0}),__magic__.globalThis=__magic__,"undefined"==typeof globalThis&&(window.globalThis=window),delete Object.prototype.__magic__}catch(e){window.globalThis=window}}(),("undefined"==typeof process||process.browser)&&(globalThis.TypeScript=globalThis.TypeScript||{},globalThis.TypeScript.Services=globalThis.TypeScript.Services||{},globalThis.TypeScript.Services.TypeScriptServicesFactory=d.TypeScriptServicesFactory,globalThis.toolsVersion=d.versionMajorMinor),e.exports&&(e.exports=d),function(e){var t={since:"4.0",warnAfter:"4.1",message:"Use the appropriate method on 'ts.factory' or the 'factory' supplied by your transformation context instead."};e.createNodeArray=e.Debug.deprecate(e.factory.createNodeArray,t),e.createNumericLiteral=e.Debug.deprecate(e.factory.createNumericLiteral,t),e.createBigIntLiteral=e.Debug.deprecate(e.factory.createBigIntLiteral,t),e.createStringLiteral=e.Debug.deprecate(e.factory.createStringLiteral,t),e.createStringLiteralFromNode=e.Debug.deprecate(e.factory.createStringLiteralFromNode,t),e.createRegularExpressionLiteral=e.Debug.deprecate(e.factory.createRegularExpressionLiteral,t),e.createLoopVariable=e.Debug.deprecate(e.factory.createLoopVariable,t),e.createUniqueName=e.Debug.deprecate(e.factory.createUniqueName,t),e.createPrivateIdentifier=e.Debug.deprecate(e.factory.createPrivateIdentifier,t),e.createSuper=e.Debug.deprecate(e.factory.createSuper,t),e.createThis=e.Debug.deprecate(e.factory.createThis,t),e.createNull=e.Debug.deprecate(e.factory.createNull,t),e.createTrue=e.Debug.deprecate(e.factory.createTrue,t),e.createFalse=e.Debug.deprecate(e.factory.createFalse,t),e.createModifier=e.Debug.deprecate(e.factory.createModifier,t),e.createModifiersFromModifierFlags=e.Debug.deprecate(e.factory.createModifiersFromModifierFlags,t),e.createQualifiedName=e.Debug.deprecate(e.factory.createQualifiedName,t),e.updateQualifiedName=e.Debug.deprecate(e.factory.updateQualifiedName,t),e.createComputedPropertyName=e.Debug.deprecate(e.factory.createComputedPropertyName,t),e.updateComputedPropertyName=e.Debug.deprecate(e.factory.updateComputedPropertyName,t),e.createTypeParameterDeclaration=e.Debug.deprecate(e.factory.createTypeParameterDeclaration,t),e.updateTypeParameterDeclaration=e.Debug.deprecate(e.factory.updateTypeParameterDeclaration,t),e.createParameter=e.Debug.deprecate(e.factory.createParameterDeclaration,t),e.updateParameter=e.Debug.deprecate(e.factory.updateParameterDeclaration,t),e.createDecorator=e.Debug.deprecate(e.factory.createDecorator,t),e.updateDecorator=e.Debug.deprecate(e.factory.updateDecorator,t),e.createProperty=e.Debug.deprecate(e.factory.createPropertyDeclaration,t),e.updateProperty=e.Debug.deprecate(e.factory.updatePropertyDeclaration,t),e.createMethod=e.Debug.deprecate(e.factory.createMethodDeclaration,t),e.updateMethod=e.Debug.deprecate(e.factory.updateMethodDeclaration,t),e.createConstructor=e.Debug.deprecate(e.factory.createConstructorDeclaration,t),e.updateConstructor=e.Debug.deprecate(e.factory.updateConstructorDeclaration,t),e.createGetAccessor=e.Debug.deprecate(e.factory.createGetAccessorDeclaration,t),e.updateGetAccessor=e.Debug.deprecate(e.factory.updateGetAccessorDeclaration,t),e.createSetAccessor=e.Debug.deprecate(e.factory.createSetAccessorDeclaration,t),e.updateSetAccessor=e.Debug.deprecate(e.factory.updateSetAccessorDeclaration,t),e.createCallSignature=e.Debug.deprecate(e.factory.createCallSignature,t),e.updateCallSignature=e.Debug.deprecate(e.factory.updateCallSignature,t),e.createConstructSignature=e.Debug.deprecate(e.factory.createConstructSignature,t),e.updateConstructSignature=e.Debug.deprecate(e.factory.updateConstructSignature,t),e.updateIndexSignature=e.Debug.deprecate(e.factory.updateIndexSignature,t),e.createKeywordTypeNode=e.Debug.deprecate(e.factory.createKeywordTypeNode,t),e.createTypePredicateNodeWithModifier=e.Debug.deprecate(e.factory.createTypePredicateNode,t),e.updateTypePredicateNodeWithModifier=e.Debug.deprecate(e.factory.updateTypePredicateNode,t),e.createTypeReferenceNode=e.Debug.deprecate(e.factory.createTypeReferenceNode,t),e.updateTypeReferenceNode=e.Debug.deprecate(e.factory.updateTypeReferenceNode,t),e.createFunctionTypeNode=e.Debug.deprecate(e.factory.createFunctionTypeNode,t),e.updateFunctionTypeNode=e.Debug.deprecate(e.factory.updateFunctionTypeNode,t),e.createConstructorTypeNode=e.Debug.deprecate((function(t,r,n){return e.factory.createConstructorTypeNode(void 0,t,r,n)}),t),e.updateConstructorTypeNode=e.Debug.deprecate((function(t,r,n,i){return e.factory.updateConstructorTypeNode(t,t.modifiers,r,n,i)}),t),e.createTypeQueryNode=e.Debug.deprecate(e.factory.createTypeQueryNode,t),e.updateTypeQueryNode=e.Debug.deprecate(e.factory.updateTypeQueryNode,t),e.createTypeLiteralNode=e.Debug.deprecate(e.factory.createTypeLiteralNode,t),e.updateTypeLiteralNode=e.Debug.deprecate(e.factory.updateTypeLiteralNode,t),e.createArrayTypeNode=e.Debug.deprecate(e.factory.createArrayTypeNode,t),e.updateArrayTypeNode=e.Debug.deprecate(e.factory.updateArrayTypeNode,t),e.createTupleTypeNode=e.Debug.deprecate(e.factory.createTupleTypeNode,t),e.updateTupleTypeNode=e.Debug.deprecate(e.factory.updateTupleTypeNode,t),e.createOptionalTypeNode=e.Debug.deprecate(e.factory.createOptionalTypeNode,t),e.updateOptionalTypeNode=e.Debug.deprecate(e.factory.updateOptionalTypeNode,t),e.createRestTypeNode=e.Debug.deprecate(e.factory.createRestTypeNode,t),e.updateRestTypeNode=e.Debug.deprecate(e.factory.updateRestTypeNode,t),e.createUnionTypeNode=e.Debug.deprecate(e.factory.createUnionTypeNode,t),e.updateUnionTypeNode=e.Debug.deprecate(e.factory.updateUnionTypeNode,t),e.createIntersectionTypeNode=e.Debug.deprecate(e.factory.createIntersectionTypeNode,t),e.updateIntersectionTypeNode=e.Debug.deprecate(e.factory.updateIntersectionTypeNode,t),e.createConditionalTypeNode=e.Debug.deprecate(e.factory.createConditionalTypeNode,t),e.updateConditionalTypeNode=e.Debug.deprecate(e.factory.updateConditionalTypeNode,t),e.createInferTypeNode=e.Debug.deprecate(e.factory.createInferTypeNode,t),e.updateInferTypeNode=e.Debug.deprecate(e.factory.updateInferTypeNode,t),e.createImportTypeNode=e.Debug.deprecate(e.factory.createImportTypeNode,t),e.updateImportTypeNode=e.Debug.deprecate(e.factory.updateImportTypeNode,t),e.createParenthesizedType=e.Debug.deprecate(e.factory.createParenthesizedType,t),e.updateParenthesizedType=e.Debug.deprecate(e.factory.updateParenthesizedType,t),e.createThisTypeNode=e.Debug.deprecate(e.factory.createThisTypeNode,t),e.updateTypeOperatorNode=e.Debug.deprecate(e.factory.updateTypeOperatorNode,t),e.createIndexedAccessTypeNode=e.Debug.deprecate(e.factory.createIndexedAccessTypeNode,t),e.updateIndexedAccessTypeNode=e.Debug.deprecate(e.factory.updateIndexedAccessTypeNode,t),e.createMappedTypeNode=e.Debug.deprecate(e.factory.createMappedTypeNode,t),e.updateMappedTypeNode=e.Debug.deprecate(e.factory.updateMappedTypeNode,t),e.createLiteralTypeNode=e.Debug.deprecate(e.factory.createLiteralTypeNode,t),e.updateLiteralTypeNode=e.Debug.deprecate(e.factory.updateLiteralTypeNode,t),e.createObjectBindingPattern=e.Debug.deprecate(e.factory.createObjectBindingPattern,t),e.updateObjectBindingPattern=e.Debug.deprecate(e.factory.updateObjectBindingPattern,t),e.createArrayBindingPattern=e.Debug.deprecate(e.factory.createArrayBindingPattern,t),e.updateArrayBindingPattern=e.Debug.deprecate(e.factory.updateArrayBindingPattern,t),e.createBindingElement=e.Debug.deprecate(e.factory.createBindingElement,t),e.updateBindingElement=e.Debug.deprecate(e.factory.updateBindingElement,t),e.createArrayLiteral=e.Debug.deprecate(e.factory.createArrayLiteralExpression,t),e.updateArrayLiteral=e.Debug.deprecate(e.factory.updateArrayLiteralExpression,t),e.createObjectLiteral=e.Debug.deprecate(e.factory.createObjectLiteralExpression,t),e.updateObjectLiteral=e.Debug.deprecate(e.factory.updateObjectLiteralExpression,t),e.createPropertyAccess=e.Debug.deprecate(e.factory.createPropertyAccessExpression,t),e.updatePropertyAccess=e.Debug.deprecate(e.factory.updatePropertyAccessExpression,t),e.createPropertyAccessChain=e.Debug.deprecate(e.factory.createPropertyAccessChain,t),e.updatePropertyAccessChain=e.Debug.deprecate(e.factory.updatePropertyAccessChain,t),e.createElementAccess=e.Debug.deprecate(e.factory.createElementAccessExpression,t),e.updateElementAccess=e.Debug.deprecate(e.factory.updateElementAccessExpression,t),e.createElementAccessChain=e.Debug.deprecate(e.factory.createElementAccessChain,t),e.updateElementAccessChain=e.Debug.deprecate(e.factory.updateElementAccessChain,t),e.createCall=e.Debug.deprecate(e.factory.createCallExpression,t),e.updateCall=e.Debug.deprecate(e.factory.updateCallExpression,t),e.createCallChain=e.Debug.deprecate(e.factory.createCallChain,t),e.updateCallChain=e.Debug.deprecate(e.factory.updateCallChain,t),e.createNew=e.Debug.deprecate(e.factory.createNewExpression,t),e.updateNew=e.Debug.deprecate(e.factory.updateNewExpression,t),e.createTypeAssertion=e.Debug.deprecate(e.factory.createTypeAssertion,t),e.updateTypeAssertion=e.Debug.deprecate(e.factory.updateTypeAssertion,t),e.createParen=e.Debug.deprecate(e.factory.createParenthesizedExpression,t),e.updateParen=e.Debug.deprecate(e.factory.updateParenthesizedExpression,t),e.createFunctionExpression=e.Debug.deprecate(e.factory.createFunctionExpression,t),e.updateFunctionExpression=e.Debug.deprecate(e.factory.updateFunctionExpression,t),e.createDelete=e.Debug.deprecate(e.factory.createDeleteExpression,t),e.updateDelete=e.Debug.deprecate(e.factory.updateDeleteExpression,t),e.createTypeOf=e.Debug.deprecate(e.factory.createTypeOfExpression,t),e.updateTypeOf=e.Debug.deprecate(e.factory.updateTypeOfExpression,t),e.createVoid=e.Debug.deprecate(e.factory.createVoidExpression,t),e.updateVoid=e.Debug.deprecate(e.factory.updateVoidExpression,t),e.createAwait=e.Debug.deprecate(e.factory.createAwaitExpression,t),e.updateAwait=e.Debug.deprecate(e.factory.updateAwaitExpression,t),e.createPrefix=e.Debug.deprecate(e.factory.createPrefixUnaryExpression,t),e.updatePrefix=e.Debug.deprecate(e.factory.updatePrefixUnaryExpression,t),e.createPostfix=e.Debug.deprecate(e.factory.createPostfixUnaryExpression,t),e.updatePostfix=e.Debug.deprecate(e.factory.updatePostfixUnaryExpression,t),e.createBinary=e.Debug.deprecate(e.factory.createBinaryExpression,t),e.updateConditional=e.Debug.deprecate(e.factory.updateConditionalExpression,t),e.createTemplateExpression=e.Debug.deprecate(e.factory.createTemplateExpression,t),e.updateTemplateExpression=e.Debug.deprecate(e.factory.updateTemplateExpression,t),e.createTemplateHead=e.Debug.deprecate(e.factory.createTemplateHead,t),e.createTemplateMiddle=e.Debug.deprecate(e.factory.createTemplateMiddle,t),e.createTemplateTail=e.Debug.deprecate(e.factory.createTemplateTail,t),e.createNoSubstitutionTemplateLiteral=e.Debug.deprecate(e.factory.createNoSubstitutionTemplateLiteral,t),e.updateYield=e.Debug.deprecate(e.factory.updateYieldExpression,t),e.createSpread=e.Debug.deprecate(e.factory.createSpreadElement,t),e.updateSpread=e.Debug.deprecate(e.factory.updateSpreadElement,t),e.createOmittedExpression=e.Debug.deprecate(e.factory.createOmittedExpression,t),e.createAsExpression=e.Debug.deprecate(e.factory.createAsExpression,t),e.updateAsExpression=e.Debug.deprecate(e.factory.updateAsExpression,t),e.createNonNullExpression=e.Debug.deprecate(e.factory.createNonNullExpression,t),e.updateNonNullExpression=e.Debug.deprecate(e.factory.updateNonNullExpression,t),e.createNonNullChain=e.Debug.deprecate(e.factory.createNonNullChain,t),e.updateNonNullChain=e.Debug.deprecate(e.factory.updateNonNullChain,t),e.createMetaProperty=e.Debug.deprecate(e.factory.createMetaProperty,t),e.updateMetaProperty=e.Debug.deprecate(e.factory.updateMetaProperty,t),e.createTemplateSpan=e.Debug.deprecate(e.factory.createTemplateSpan,t),e.updateTemplateSpan=e.Debug.deprecate(e.factory.updateTemplateSpan,t),e.createSemicolonClassElement=e.Debug.deprecate(e.factory.createSemicolonClassElement,t),e.createBlock=e.Debug.deprecate(e.factory.createBlock,t),e.updateBlock=e.Debug.deprecate(e.factory.updateBlock,t),e.createVariableStatement=e.Debug.deprecate(e.factory.createVariableStatement,t),e.updateVariableStatement=e.Debug.deprecate(e.factory.updateVariableStatement,t),e.createEmptyStatement=e.Debug.deprecate(e.factory.createEmptyStatement,t),e.createExpressionStatement=e.Debug.deprecate(e.factory.createExpressionStatement,t),e.updateExpressionStatement=e.Debug.deprecate(e.factory.updateExpressionStatement,t),e.createStatement=e.Debug.deprecate(e.factory.createExpressionStatement,t),e.updateStatement=e.Debug.deprecate(e.factory.updateExpressionStatement,t),e.createIf=e.Debug.deprecate(e.factory.createIfStatement,t),e.updateIf=e.Debug.deprecate(e.factory.updateIfStatement,t),e.createDo=e.Debug.deprecate(e.factory.createDoStatement,t),e.updateDo=e.Debug.deprecate(e.factory.updateDoStatement,t),e.createWhile=e.Debug.deprecate(e.factory.createWhileStatement,t),e.updateWhile=e.Debug.deprecate(e.factory.updateWhileStatement,t),e.createFor=e.Debug.deprecate(e.factory.createForStatement,t),e.updateFor=e.Debug.deprecate(e.factory.updateForStatement,t),e.createForIn=e.Debug.deprecate(e.factory.createForInStatement,t),e.updateForIn=e.Debug.deprecate(e.factory.updateForInStatement,t),e.createForOf=e.Debug.deprecate(e.factory.createForOfStatement,t),e.updateForOf=e.Debug.deprecate(e.factory.updateForOfStatement,t),e.createContinue=e.Debug.deprecate(e.factory.createContinueStatement,t),e.updateContinue=e.Debug.deprecate(e.factory.updateContinueStatement,t),e.createBreak=e.Debug.deprecate(e.factory.createBreakStatement,t),e.updateBreak=e.Debug.deprecate(e.factory.updateBreakStatement,t),e.createReturn=e.Debug.deprecate(e.factory.createReturnStatement,t),e.updateReturn=e.Debug.deprecate(e.factory.updateReturnStatement,t),e.createWith=e.Debug.deprecate(e.factory.createWithStatement,t),e.updateWith=e.Debug.deprecate(e.factory.updateWithStatement,t),e.createSwitch=e.Debug.deprecate(e.factory.createSwitchStatement,t),e.updateSwitch=e.Debug.deprecate(e.factory.updateSwitchStatement,t),e.createLabel=e.Debug.deprecate(e.factory.createLabeledStatement,t),e.updateLabel=e.Debug.deprecate(e.factory.updateLabeledStatement,t),e.createThrow=e.Debug.deprecate(e.factory.createThrowStatement,t),e.updateThrow=e.Debug.deprecate(e.factory.updateThrowStatement,t),e.createTry=e.Debug.deprecate(e.factory.createTryStatement,t),e.updateTry=e.Debug.deprecate(e.factory.updateTryStatement,t),e.createDebuggerStatement=e.Debug.deprecate(e.factory.createDebuggerStatement,t),e.createVariableDeclarationList=e.Debug.deprecate(e.factory.createVariableDeclarationList,t),e.updateVariableDeclarationList=e.Debug.deprecate(e.factory.updateVariableDeclarationList,t),e.createFunctionDeclaration=e.Debug.deprecate(e.factory.createFunctionDeclaration,t),e.updateFunctionDeclaration=e.Debug.deprecate(e.factory.updateFunctionDeclaration,t),e.createClassDeclaration=e.Debug.deprecate(e.factory.createClassDeclaration,t),e.updateClassDeclaration=e.Debug.deprecate(e.factory.updateClassDeclaration,t),e.createInterfaceDeclaration=e.Debug.deprecate(e.factory.createInterfaceDeclaration,t),e.updateInterfaceDeclaration=e.Debug.deprecate(e.factory.updateInterfaceDeclaration,t),e.createTypeAliasDeclaration=e.Debug.deprecate(e.factory.createTypeAliasDeclaration,t),e.updateTypeAliasDeclaration=e.Debug.deprecate(e.factory.updateTypeAliasDeclaration,t),e.createEnumDeclaration=e.Debug.deprecate(e.factory.createEnumDeclaration,t),e.updateEnumDeclaration=e.Debug.deprecate(e.factory.updateEnumDeclaration,t),e.createModuleDeclaration=e.Debug.deprecate(e.factory.createModuleDeclaration,t),e.updateModuleDeclaration=e.Debug.deprecate(e.factory.updateModuleDeclaration,t),e.createModuleBlock=e.Debug.deprecate(e.factory.createModuleBlock,t),e.updateModuleBlock=e.Debug.deprecate(e.factory.updateModuleBlock,t),e.createCaseBlock=e.Debug.deprecate(e.factory.createCaseBlock,t),e.updateCaseBlock=e.Debug.deprecate(e.factory.updateCaseBlock,t),e.createNamespaceExportDeclaration=e.Debug.deprecate(e.factory.createNamespaceExportDeclaration,t),e.updateNamespaceExportDeclaration=e.Debug.deprecate(e.factory.updateNamespaceExportDeclaration,t),e.createImportEqualsDeclaration=e.Debug.deprecate(e.factory.createImportEqualsDeclaration,t),e.updateImportEqualsDeclaration=e.Debug.deprecate(e.factory.updateImportEqualsDeclaration,t),e.createImportDeclaration=e.Debug.deprecate(e.factory.createImportDeclaration,t),e.updateImportDeclaration=e.Debug.deprecate(e.factory.updateImportDeclaration,t),e.createNamespaceImport=e.Debug.deprecate(e.factory.createNamespaceImport,t),e.updateNamespaceImport=e.Debug.deprecate(e.factory.updateNamespaceImport,t),e.createNamedImports=e.Debug.deprecate(e.factory.createNamedImports,t),e.updateNamedImports=e.Debug.deprecate(e.factory.updateNamedImports,t),e.createImportSpecifier=e.Debug.deprecate(e.factory.createImportSpecifier,t),e.updateImportSpecifier=e.Debug.deprecate(e.factory.updateImportSpecifier,t),e.createExportAssignment=e.Debug.deprecate(e.factory.createExportAssignment,t),e.updateExportAssignment=e.Debug.deprecate(e.factory.updateExportAssignment,t),e.createNamedExports=e.Debug.deprecate(e.factory.createNamedExports,t),e.updateNamedExports=e.Debug.deprecate(e.factory.updateNamedExports,t),e.createExportSpecifier=e.Debug.deprecate(e.factory.createExportSpecifier,t),e.updateExportSpecifier=e.Debug.deprecate(e.factory.updateExportSpecifier,t),e.createExternalModuleReference=e.Debug.deprecate(e.factory.createExternalModuleReference,t),e.updateExternalModuleReference=e.Debug.deprecate(e.factory.updateExternalModuleReference,t),e.createJSDocTypeExpression=e.Debug.deprecate(e.factory.createJSDocTypeExpression,t),e.createJSDocTypeTag=e.Debug.deprecate(e.factory.createJSDocTypeTag,t),e.createJSDocReturnTag=e.Debug.deprecate(e.factory.createJSDocReturnTag,t),e.createJSDocThisTag=e.Debug.deprecate(e.factory.createJSDocThisTag,t),e.createJSDocComment=e.Debug.deprecate(e.factory.createJSDocComment,t),e.createJSDocParameterTag=e.Debug.deprecate(e.factory.createJSDocParameterTag,t),e.createJSDocClassTag=e.Debug.deprecate(e.factory.createJSDocClassTag,t),e.createJSDocAugmentsTag=e.Debug.deprecate(e.factory.createJSDocAugmentsTag,t),e.createJSDocEnumTag=e.Debug.deprecate(e.factory.createJSDocEnumTag,t),e.createJSDocTemplateTag=e.Debug.deprecate(e.factory.createJSDocTemplateTag,t),e.createJSDocTypedefTag=e.Debug.deprecate(e.factory.createJSDocTypedefTag,t),e.createJSDocCallbackTag=e.Debug.deprecate(e.factory.createJSDocCallbackTag,t),e.createJSDocSignature=e.Debug.deprecate(e.factory.createJSDocSignature,t),e.createJSDocPropertyTag=e.Debug.deprecate(e.factory.createJSDocPropertyTag,t),e.createJSDocTypeLiteral=e.Debug.deprecate(e.factory.createJSDocTypeLiteral,t),e.createJSDocImplementsTag=e.Debug.deprecate(e.factory.createJSDocImplementsTag,t),e.createJSDocAuthorTag=e.Debug.deprecate(e.factory.createJSDocAuthorTag,t),e.createJSDocPublicTag=e.Debug.deprecate(e.factory.createJSDocPublicTag,t),e.createJSDocPrivateTag=e.Debug.deprecate(e.factory.createJSDocPrivateTag,t),e.createJSDocProtectedTag=e.Debug.deprecate(e.factory.createJSDocProtectedTag,t),e.createJSDocReadonlyTag=e.Debug.deprecate(e.factory.createJSDocReadonlyTag,t),e.createJSDocTag=e.Debug.deprecate(e.factory.createJSDocUnknownTag,t),e.createJsxElement=e.Debug.deprecate(e.factory.createJsxElement,t),e.updateJsxElement=e.Debug.deprecate(e.factory.updateJsxElement,t),e.createJsxSelfClosingElement=e.Debug.deprecate(e.factory.createJsxSelfClosingElement,t),e.updateJsxSelfClosingElement=e.Debug.deprecate(e.factory.updateJsxSelfClosingElement,t),e.createJsxOpeningElement=e.Debug.deprecate(e.factory.createJsxOpeningElement,t),e.updateJsxOpeningElement=e.Debug.deprecate(e.factory.updateJsxOpeningElement,t),e.createJsxClosingElement=e.Debug.deprecate(e.factory.createJsxClosingElement,t),e.updateJsxClosingElement=e.Debug.deprecate(e.factory.updateJsxClosingElement,t),e.createJsxFragment=e.Debug.deprecate(e.factory.createJsxFragment,t),e.createJsxText=e.Debug.deprecate(e.factory.createJsxText,t),e.updateJsxText=e.Debug.deprecate(e.factory.updateJsxText,t),e.createJsxOpeningFragment=e.Debug.deprecate(e.factory.createJsxOpeningFragment,t),e.createJsxJsxClosingFragment=e.Debug.deprecate(e.factory.createJsxJsxClosingFragment,t),e.updateJsxFragment=e.Debug.deprecate(e.factory.updateJsxFragment,t),e.createJsxAttribute=e.Debug.deprecate(e.factory.createJsxAttribute,t),e.updateJsxAttribute=e.Debug.deprecate(e.factory.updateJsxAttribute,t),e.createJsxAttributes=e.Debug.deprecate(e.factory.createJsxAttributes,t),e.updateJsxAttributes=e.Debug.deprecate(e.factory.updateJsxAttributes,t),e.createJsxSpreadAttribute=e.Debug.deprecate(e.factory.createJsxSpreadAttribute,t),e.updateJsxSpreadAttribute=e.Debug.deprecate(e.factory.updateJsxSpreadAttribute,t),e.createJsxExpression=e.Debug.deprecate(e.factory.createJsxExpression,t),e.updateJsxExpression=e.Debug.deprecate(e.factory.updateJsxExpression,t),e.createCaseClause=e.Debug.deprecate(e.factory.createCaseClause,t),e.updateCaseClause=e.Debug.deprecate(e.factory.updateCaseClause,t),e.createDefaultClause=e.Debug.deprecate(e.factory.createDefaultClause,t),e.updateDefaultClause=e.Debug.deprecate(e.factory.updateDefaultClause,t),e.createHeritageClause=e.Debug.deprecate(e.factory.createHeritageClause,t),e.updateHeritageClause=e.Debug.deprecate(e.factory.updateHeritageClause,t),e.createCatchClause=e.Debug.deprecate(e.factory.createCatchClause,t),e.updateCatchClause=e.Debug.deprecate(e.factory.updateCatchClause,t),e.createPropertyAssignment=e.Debug.deprecate(e.factory.createPropertyAssignment,t),e.updatePropertyAssignment=e.Debug.deprecate(e.factory.updatePropertyAssignment,t),e.createShorthandPropertyAssignment=e.Debug.deprecate(e.factory.createShorthandPropertyAssignment,t),e.updateShorthandPropertyAssignment=e.Debug.deprecate(e.factory.updateShorthandPropertyAssignment,t),e.createSpreadAssignment=e.Debug.deprecate(e.factory.createSpreadAssignment,t),e.updateSpreadAssignment=e.Debug.deprecate(e.factory.updateSpreadAssignment,t),e.createEnumMember=e.Debug.deprecate(e.factory.createEnumMember,t),e.updateEnumMember=e.Debug.deprecate(e.factory.updateEnumMember,t),e.updateSourceFileNode=e.Debug.deprecate(e.factory.updateSourceFile,t),e.createNotEmittedStatement=e.Debug.deprecate(e.factory.createNotEmittedStatement,t),e.createPartiallyEmittedExpression=e.Debug.deprecate(e.factory.createPartiallyEmittedExpression,t),e.updatePartiallyEmittedExpression=e.Debug.deprecate(e.factory.updatePartiallyEmittedExpression,t),e.createCommaList=e.Debug.deprecate(e.factory.createCommaListExpression,t),e.updateCommaList=e.Debug.deprecate(e.factory.updateCommaListExpression,t),e.createBundle=e.Debug.deprecate(e.factory.createBundle,t),e.updateBundle=e.Debug.deprecate(e.factory.updateBundle,t),e.createImmediatelyInvokedFunctionExpression=e.Debug.deprecate(e.factory.createImmediatelyInvokedFunctionExpression,t),e.createImmediatelyInvokedArrowFunction=e.Debug.deprecate(e.factory.createImmediatelyInvokedArrowFunction,t),e.createVoidZero=e.Debug.deprecate(e.factory.createVoidZero,t),e.createExportDefault=e.Debug.deprecate(e.factory.createExportDefault,t),e.createExternalModuleExport=e.Debug.deprecate(e.factory.createExternalModuleExport,t),e.createNamespaceExport=e.Debug.deprecate(e.factory.createNamespaceExport,t),e.updateNamespaceExport=e.Debug.deprecate(e.factory.updateNamespaceExport,t),e.createToken=e.Debug.deprecate((function(t){return e.factory.createToken(t)}),t),e.createIdentifier=e.Debug.deprecate((function(t){return e.factory.createIdentifier(t,void 0,void 0)}),t),e.createTempVariable=e.Debug.deprecate((function(t){return e.factory.createTempVariable(t,void 0)}),t),e.getGeneratedNameForNode=e.Debug.deprecate((function(t){return e.factory.getGeneratedNameForNode(t,void 0)}),t),e.createOptimisticUniqueName=e.Debug.deprecate((function(t){return e.factory.createUniqueName(t,16)}),t),e.createFileLevelUniqueName=e.Debug.deprecate((function(t){return e.factory.createUniqueName(t,48)}),t),e.createIndexSignature=e.Debug.deprecate((function(t,r,n,i){return e.factory.createIndexSignature(t,r,n,i)}),t),e.createTypePredicateNode=e.Debug.deprecate((function(t,r){return e.factory.createTypePredicateNode(void 0,t,r)}),t),e.updateTypePredicateNode=e.Debug.deprecate((function(t,r,n){return e.factory.updateTypePredicateNode(t,void 0,r,n)}),t),e.createLiteral=e.Debug.deprecate((function(t){return"number"==typeof t?e.factory.createNumericLiteral(t):"object"==typeof t&&"base10Value"in t?e.factory.createBigIntLiteral(t):"boolean"==typeof t?t?e.factory.createTrue():e.factory.createFalse():"string"==typeof t?e.factory.createStringLiteral(t,void 0):e.factory.createStringLiteralFromNode(t)}),{since:"4.0",warnAfter:"4.1",message:"Use `factory.createStringLiteral`, `factory.createStringLiteralFromNode`, `factory.createNumericLiteral`, `factory.createBigIntLiteral`, `factory.createTrue`, `factory.createFalse`, or the factory supplied by your transformation context instead."}),e.createMethodSignature=e.Debug.deprecate((function(t,r,n,i,a){return e.factory.createMethodSignature(void 0,i,a,t,r,n)}),t),e.updateMethodSignature=e.Debug.deprecate((function(t,r,n,i,a,o){return e.factory.updateMethodSignature(t,t.modifiers,a,o,r,n,i)}),t),e.createTypeOperatorNode=e.Debug.deprecate((function(t,r){var n;return r?n=t:(r=t,n=139),e.factory.createTypeOperatorNode(n,r)}),t),e.createTaggedTemplate=e.Debug.deprecate((function(t,r,n){var i;return n?i=r:n=r,e.factory.createTaggedTemplateExpression(t,i,n)}),t),e.updateTaggedTemplate=e.Debug.deprecate((function(t,r,n,i){var a;return i?a=n:i=n,e.factory.updateTaggedTemplateExpression(t,r,a,i)}),t),e.updateBinary=e.Debug.deprecate((function(t,r,n,i){return void 0===i&&(i=t.operatorToken),"number"==typeof i&&(i=i===t.operatorToken.kind?t.operatorToken:e.factory.createToken(i)),e.factory.updateBinaryExpression(t,r,i,n)}),t),e.createConditional=e.Debug.deprecate((function(t,r,n,i,a){return 5===arguments.length?e.factory.createConditionalExpression(t,r,n,i,a):3===arguments.length?e.factory.createConditionalExpression(t,e.factory.createToken(57),r,e.factory.createToken(58),n):e.Debug.fail("Argument count mismatch")}),t),e.createYield=e.Debug.deprecate((function(t,r){var n;return r?n=t:r=t,e.factory.createYieldExpression(n,r)}),t),e.createClassExpression=e.Debug.deprecate((function(t,r,n,i,a){return e.factory.createClassExpression(void 0,t,r,n,i,a)}),t),e.updateClassExpression=e.Debug.deprecate((function(t,r,n,i,a,o){return e.factory.updateClassExpression(t,void 0,r,n,i,a,o)}),t),e.createPropertySignature=e.Debug.deprecate((function(t,r,n,i,a){var o=e.factory.createPropertySignature(t,r,n,i);return o.initializer=a,o}),t),e.updatePropertySignature=e.Debug.deprecate((function(t,r,n,i,a,o){var s=e.factory.updatePropertySignature(t,r,n,i,a);return t.initializer!==o&&(s===t&&(s=e.factory.cloneNode(t)),s.initializer=o),s}),t),e.createExpressionWithTypeArguments=e.Debug.deprecate((function(t,r){return e.factory.createExpressionWithTypeArguments(r,t)}),t),e.updateExpressionWithTypeArguments=e.Debug.deprecate((function(t,r,n){return e.factory.updateExpressionWithTypeArguments(t,n,r)}),t),e.createArrowFunction=e.Debug.deprecate((function(t,r,n,i,a,o){return 6===arguments.length?e.factory.createArrowFunction(t,r,n,i,a,o):5===arguments.length?e.factory.createArrowFunction(t,r,n,i,void 0,a):e.Debug.fail("Argument count mismatch")}),t),e.updateArrowFunction=e.Debug.deprecate((function(t,r,n,i,a,o,s){return 7===arguments.length?e.factory.updateArrowFunction(t,r,n,i,a,o,s):6===arguments.length?e.factory.updateArrowFunction(t,r,n,i,a,t.equalsGreaterThanToken,o):e.Debug.fail("Argument count mismatch")}),t),e.createVariableDeclaration=e.Debug.deprecate((function(t,r,n,i){return 4===arguments.length?e.factory.createVariableDeclaration(t,r,n,i):arguments.length>=1&&arguments.length<=3?e.factory.createVariableDeclaration(t,void 0,r,n):e.Debug.fail("Argument count mismatch")}),t),e.updateVariableDeclaration=e.Debug.deprecate((function(t,r,n,i,a){return 5===arguments.length?e.factory.updateVariableDeclaration(t,r,n,i,a):4===arguments.length?e.factory.updateVariableDeclaration(t,r,t.exclamationToken,n,i):e.Debug.fail("Argument count mismatch")}),t),e.createImportClause=e.Debug.deprecate((function(t,r,n){return void 0===n&&(n=!1),e.factory.createImportClause(n,t,r)}),t),e.updateImportClause=e.Debug.deprecate((function(t,r,n,i){return e.factory.updateImportClause(t,i,r,n)}),t),e.createExportDeclaration=e.Debug.deprecate((function(t,r,n,i,a){return void 0===a&&(a=!1),e.factory.createExportDeclaration(t,r,a,n,i)}),t),e.updateExportDeclaration=e.Debug.deprecate((function(t,r,n,i,a,o){return e.factory.updateExportDeclaration(t,r,n,o,i,a)}),t),e.createJSDocParamTag=e.Debug.deprecate((function(t,r,n,i){return e.factory.createJSDocParameterTag(void 0,t,r,n,!1,i)}),t),e.createComma=e.Debug.deprecate((function(t,r){return e.factory.createComma(t,r)}),t),e.createLessThan=e.Debug.deprecate((function(t,r){return e.factory.createLessThan(t,r)}),t),e.createAssignment=e.Debug.deprecate((function(t,r){return e.factory.createAssignment(t,r)}),t),e.createStrictEquality=e.Debug.deprecate((function(t,r){return e.factory.createStrictEquality(t,r)}),t),e.createStrictInequality=e.Debug.deprecate((function(t,r){return e.factory.createStrictInequality(t,r)}),t),e.createAdd=e.Debug.deprecate((function(t,r){return e.factory.createAdd(t,r)}),t),e.createSubtract=e.Debug.deprecate((function(t,r){return e.factory.createSubtract(t,r)}),t),e.createLogicalAnd=e.Debug.deprecate((function(t,r){return e.factory.createLogicalAnd(t,r)}),t),e.createLogicalOr=e.Debug.deprecate((function(t,r){return e.factory.createLogicalOr(t,r)}),t),e.createPostfixIncrement=e.Debug.deprecate((function(t){return e.factory.createPostfixIncrement(t)}),t),e.createLogicalNot=e.Debug.deprecate((function(t){return e.factory.createLogicalNot(t)}),t),e.createNode=e.Debug.deprecate((function(t,r,n){return void 0===r&&(r=0),void 0===n&&(n=0),e.setTextRangePosEnd(300===t?e.parseBaseNodeFactory.createBaseSourceFileNode(t):78===t?e.parseBaseNodeFactory.createBaseIdentifierNode(t):79===t?e.parseBaseNodeFactory.createBasePrivateIdentifierNode(t):e.isNodeKind(t)?e.parseBaseNodeFactory.createBaseNode(t):e.parseBaseNodeFactory.createBaseTokenNode(t),r,n)}),{since:"4.0",warnAfter:"4.1",message:"Use an appropriate `factory` method instead."}),e.getMutableClone=e.Debug.deprecate((function(t){var r=e.factory.cloneNode(t);return e.setTextRange(r,t),e.setParent(r,t.parent),r}),{since:"4.0",warnAfter:"4.1",message:"Use an appropriate `factory.update...` method instead, use `setCommentRange` or `setSourceMapRange`, and avoid setting `parent`."}),e.isTypeAssertion=e.Debug.deprecate((function(e){return 207===e.kind}),{since:"4.0",warnAfter:"4.1",message:"Use `isTypeAssertionExpression` instead."})}(d||(d={})),function(e){e.cookBookMsg=[],e.cookBookTag=[];for(var t=0;t<=151;t++)e.cookBookMsg[t]="";e.cookBookTag[1]="Objects with property names that are not identifiers are not supported (arkts-identifiers-as-prop-names)",e.cookBookTag[2]='"Symbol()" API is not supported (arkts-no-symbol)',e.cookBookTag[3]='Private "#" identifiers are not supported (arkts-no-private-identifiers)',e.cookBookTag[4]="Use unique names for types and namespaces. (arkts-unique-names)",e.cookBookTag[5]='Use "let" instead of "var" (arkts-no-var)',e.cookBookTag[6]="",e.cookBookTag[7]="",e.cookBookTag[8]='Use explicit types instead of "any", "unknown" (arkts-no-any-unknown)',e.cookBookTag[9]="",e.cookBookTag[10]="",e.cookBookTag[11]="",e.cookBookTag[12]="",e.cookBookTag[13]="",e.cookBookTag[14]='Use "class" instead of a type with call signature (arkts-no-call-signatures)',e.cookBookTag[15]='Use "class" instead of a type with constructor signature (arkts-no-ctor-signatures-type)',e.cookBookTag[16]="Only one static block is supported (arkts-no-multiple-static-blocks)",e.cookBookTag[17]="Indexed signatures are not supported (arkts-no-indexed-signatures)",e.cookBookTag[18]="",e.cookBookTag[19]="Use inheritance instead of intersection types (arkts-no-intersection-types)",e.cookBookTag[20]="",e.cookBookTag[21]='Type notation using "this" is not supported (arkts-no-typing-with-this)',e.cookBookTag[22]="Conditional types are not supported (arkts-no-conditional-types)",e.cookBookTag[23]="",e.cookBookTag[24]="",e.cookBookTag[25]='Declaring fields in "constructor" is not supported (arkts-no-ctor-prop-decls)',e.cookBookTag[26]="",e.cookBookTag[27]="Construct signatures are not supported in interfaces (arkts-no-ctor-signatures-iface)",e.cookBookTag[28]="Indexed access types are not supported (arkts-no-aliases-by-index)",e.cookBookTag[29]="Indexed access is not supported for fields (arkts-no-props-by-index)",e.cookBookTag[30]="Structural typing is not supported (arkts-no-structural-typing)",e.cookBookTag[31]="",e.cookBookTag[32]="",e.cookBookTag[33]="",e.cookBookTag[34]="Type inference in case of generic function calls is limited (arkts-no-inferred-generic-params)",e.cookBookTag[35]="",e.cookBookTag[36]="",e.cookBookTag[37]="RegExp literals are not supported (arkts-no-regexp-literals)",e.cookBookTag[38]="Object literal must correspond to some explicitly declared class or interface (arkts-no-untyped-obj-literals)",e.cookBookTag[39]="",e.cookBookTag[40]="Object literals cannot be used as type declarations (arkts-no-obj-literals-as-types)",e.cookBookTag[41]="",e.cookBookTag[42]="",e.cookBookTag[43]="Array literals must contain elements of only inferrable types (arkts-no-noninferrable-arr-literals)",e.cookBookTag[44]="",e.cookBookTag[45]="",e.cookBookTag[46]="Use arrow functions instead of function expressions (arkts-no-func-expressions)",e.cookBookTag[47]="",e.cookBookTag[48]="",e.cookBookTag[49]="Use generic functions instead of generic arrow functions (arkts-no-generic-lambdas)",e.cookBookTag[50]="Class literals are not supported (arkts-no-class-literals)",e.cookBookTag[51]='Classes cannot be specified in "implements" clause (arkts-implements-only-iface)',e.cookBookTag[52]="Reassigning object methods is not supported (arkts-no-method-reassignment)",e.cookBookTag[53]='Only "as T" syntax is supported for type casts (arkts-as-casts)',e.cookBookTag[54]="JSX expressions are not supported (arkts-no-jsx)",e.cookBookTag[55]='Unary operators "+", "-" and "~" work only on numbers (arkts-no-polymorphic-unops)',e.cookBookTag[56]="",e.cookBookTag[57]="",e.cookBookTag[58]="",e.cookBookTag[59]='"delete" operator is not supported (arkts-no-delete)',e.cookBookTag[60]='"typeof" operator is allowed only in expression contexts (arkts-no-type-query)',e.cookBookTag[61]="",e.cookBookTag[62]="",e.cookBookTag[63]="",e.cookBookTag[64]="",e.cookBookTag[65]='"instanceof" operator is partially supported (arkts-instanceof-ref-types)',e.cookBookTag[66]='"in" operator is not supported (arkts-no-in)',e.cookBookTag[67]="",e.cookBookTag[68]="",e.cookBookTag[69]="Destructuring assignment is not supported (arkts-no-destruct-assignment)",e.cookBookTag[70]="",e.cookBookTag[71]='The comma operator "," is supported only in "for" loops (arkts-no-comma-outside-loops)',e.cookBookTag[72]="",e.cookBookTag[73]="",e.cookBookTag[74]="Destructuring variable declarations are not supported (arkts-no-destruct-decls)",e.cookBookTag[75]="",e.cookBookTag[76]="",e.cookBookTag[77]="",e.cookBookTag[78]="",e.cookBookTag[79]="Type annotation in catch clause is not supported (arkts-no-types-in-catch)",e.cookBookTag[80]='"for .. in" is not supported (arkts-no-for-in)',e.cookBookTag[81]="",e.cookBookTag[82]="",e.cookBookTag[83]="Mapped type expression is not supported (arkts-no-mapped-types)",e.cookBookTag[84]='"with" statement is not supported (arkts-no-with)',e.cookBookTag[85]="",e.cookBookTag[86]="",e.cookBookTag[87]='"throw" statements cannot accept values of arbitrary types (arkts-limited-throw)',e.cookBookTag[88]="",e.cookBookTag[89]="",e.cookBookTag[90]="Function return type inference is limited (arkts-no-implicit-return-types)",e.cookBookTag[91]="Destructuring parameter declarations are not supported (arkts-no-destruct-params)",e.cookBookTag[92]="Nested functions are not supported (arkts-no-nested-funcs)",e.cookBookTag[93]='Using "this" inside stand-alone functions is not supported (arkts-no-standalone-this)',e.cookBookTag[94]="Generator functions are not supported (arkts-no-generators)",e.cookBookTag[95]="",e.cookBookTag[96]='Type guarding is supported with "instanceof" and "as" (arkts-no-is)',e.cookBookTag[97]="",e.cookBookTag[98]="",e.cookBookTag[99]="It is possible to spread only arrays or classes derived from arrays into the rest parameter or array literals (arkts-no-spread)",e.cookBookTag[100]="",e.cookBookTag[101]="",e.cookBookTag[102]="Interface can not extend interfaces with the same method (arkts-no-extend-same-prop)",e.cookBookTag[103]="Declaration merging is not supported (arkts-no-decl-merging)",e.cookBookTag[104]="Interfaces cannot extend classes (arkts-extends-only-class)",e.cookBookTag[105]="",e.cookBookTag[106]="Constructor function type is not supported (arkts-no-ctor-signatures-funcs)",e.cookBookTag[107]="",e.cookBookTag[108]="",e.cookBookTag[109]="",e.cookBookTag[110]="",e.cookBookTag[111]="Enumeration members can be initialized only with compile time expressions of the same type (arkts-no-enum-mixed-types)",e.cookBookTag[112]="",e.cookBookTag[113]='"enum" declaration merging is not supported (arkts-no-enum-merging)',e.cookBookTag[114]="Namespaces cannot be used as objects (arkts-no-ns-as-obj)",e.cookBookTag[115]="",e.cookBookTag[116]="Non-declaration statements in namespaces are not supported (single semicolons are considered as empty non-delcaration statements) (arkts-no-ns-statements)",e.cookBookTag[117]="",e.cookBookTag[118]="Special import type declarations are not supported (arkts-no-special-imports)",e.cookBookTag[119]="Importing a module for side-effects only is not supported (arkts-no-side-effects-imports)",e.cookBookTag[120]='"import default as ..." is not supported (arkts-no-import-default-as)',e.cookBookTag[121]='"require" and "import" assignment are not supported (arkts-no-require)',e.cookBookTag[122]="",e.cookBookTag[123]="",e.cookBookTag[124]="",e.cookBookTag[125]="",e.cookBookTag[126]='"export = ..." assignment is not supported (arkts-no-export-assignment)',e.cookBookTag[127]='Special "export type" declarations are not supported (arkts-no-special-exports)',e.cookBookTag[128]="Ambient module declaration is not supported (arkts-no-ambient-decls)",e.cookBookTag[129]="Wildcards in module names are not supported (arkts-no-module-wildcards)",e.cookBookTag[130]="Universal module definitions (UMD) are not supported (arkts-no-umd)",e.cookBookTag[131]="",e.cookBookTag[132]='"new.target" is not supported (arkts-no-new-target)',e.cookBookTag[133]="",e.cookBookTag[134]="Definite assignment assertions are not supported (arkts-no-definite-assignment)",e.cookBookTag[135]="",e.cookBookTag[136]="Prototype assignment is not supported (arkts-no-prototype-assignment)",e.cookBookTag[137]='"globalThis" is not supported (arkts-no-globalthis)',e.cookBookTag[138]="Some of utility types are not supported (arkts-no-utility-types)",e.cookBookTag[139]="Declaring properties on functions is not supported (arkts-no-func-props)",e.cookBookTag[140]='"Function.apply", "Function.bind", "Function.call" are not supported (arkts-no-func-apply-bind-call)',e.cookBookTag[141]="",e.cookBookTag[142]='"as const" assertions are not supported (arkts-no-as-const)',e.cookBookTag[143]="Import assertions are not supported (arkts-no-import-assertions)",e.cookBookTag[144]="Usage of standard library is restricted (arkts-limited-stdlib)",e.cookBookTag[145]="Strict type checking is enforced (arkts-strict-typing)",e.cookBookTag[146]="Switching off type checks with in-place comments is not allowed (arkts-strict-typing-required)",e.cookBookTag[147]="No dependencies on TypeScript code are currently allowed (arkts-no-ts-deps)",e.cookBookTag[148]="No decorators except ArkUI decorators are currently allowed (arkts-no-decorators-except-arkui)",e.cookBookTag[149]="Classes cannot be used as objects (arkts-no-classes-as-obj)",e.cookBookTag[150]='"import" statements after other statements are not allowed (arkts-no-misplaced-imports)',e.cookBookTag[151]='Usage of "ESObject" type is restricted (arkts-limited-esobj)'}(d||(d={})),function(e){!function(e){e.TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE=2322,e.TYPE_UNKNOWN_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE=/^Type '(.*)\bunknown\b(.*)' is not assignable to type '.*'\.$/,e.TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE=/^Type 'null' is not assignable to type '.*'\.$/,e.TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE=/^Type 'undefined' is not assignable to type '.*'\.$/,e.ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE=2345,e.ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE=/^Argument of type 'null' is not assignable to parameter of type '.*'\.$/,e.ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE=/^Argument of type 'undefined' is not assignable to parameter of type '.*'\.$/,e.NO_OVERLOAD_MATCHES_THIS_CALL_ERROR_CODE=2769;var t=function(){function t(e){this.inLibCall=!1,this.filteredDiagnosticMessages=[],this.filteredDiagnosticMessages=e}return t.prototype.configure=function(e,t){this.inLibCall=e,this.diagnosticMessages=t},t.prototype.checkMessageText=function(t){return!this.inLibCall||!(t.match(e.ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE)||t.match(e.ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE)||t.match(e.TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE)||t.match(e.TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))},t.prototype.checkMessageChain=function(t){if(t.code==e.TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE){if(t.messageText.match(e.TYPE_UNKNOWN_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))return!1;if(this.inLibCall&&t.messageText.match(e.TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))return!1;if(this.inLibCall&&t.messageText.match(e.TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))return!1}if(t.code==e.ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE){if(this.inLibCall&&t.messageText.match(e.ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE))return!1;if(this.inLibCall&&t.messageText.match(e.ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE))return!1}return null==t.next||this.checkMessageChain(t.next[0])},t.prototype.checkFilteredDiagnosticMessages=function(e){if(0==this.filteredDiagnosticMessages.length)return!0;if("string"!=typeof e&&this.filteredDiagnosticMessages.includes(e))return!1;for(var t=0,r=this.filteredDiagnosticMessages;t<r.length;t++){var n=r[t];if("string"!=typeof e){for(var i=e,a=n;i;){if(!a)return!0;if(i.code!=a.code)return!0;if(i.messageText!=a.messageText)return!0;i=i.next?i.next[0]:void 0,a=a.next?a.next[0]:void 0}return!1}if(e==n.messageText)return!1}return!0},t.prototype.checkDiagnosticMessage=function(e){return!!this.diagnosticMessages&&(!(this.inLibCall&&!this.checkFilteredDiagnosticMessages(e))&&("string"==typeof e?this.checkMessageText(e):!!this.checkMessageChain(e)||(this.diagnosticMessages.push(e),!1)))},t}();e.LibraryTypeCallDiagnosticChecker=t}(e.LibraryTypeCallDiagnosticCheckerNamespace||(e.LibraryTypeCallDiagnosticCheckerNamespace={}))}(d||(d={})),function(e){!function(e){var t;!function(e){e[e.AnyType=0]="AnyType",e[e.SymbolType=1]="SymbolType",e[e.ObjectLiteralNoContextType=2]="ObjectLiteralNoContextType",e[e.ArrayLiteralNoContextType=3]="ArrayLiteralNoContextType",e[e.ComputedPropertyName=4]="ComputedPropertyName",e[e.LiteralAsPropertyName=5]="LiteralAsPropertyName",e[e.TypeQuery=6]="TypeQuery",e[e.RegexLiteral=7]="RegexLiteral",e[e.IsOperator=8]="IsOperator",e[e.DestructuringParameter=9]="DestructuringParameter",e[e.YieldExpression=10]="YieldExpression",e[e.InterfaceMerging=11]="InterfaceMerging",e[e.EnumMerging=12]="EnumMerging",e[e.InterfaceExtendsClass=13]="InterfaceExtendsClass",e[e.IndexMember=14]="IndexMember",e[e.WithStatement=15]="WithStatement",e[e.ThrowStatement=16]="ThrowStatement",e[e.IndexedAccessType=17]="IndexedAccessType",e[e.UnknownType=18]="UnknownType",e[e.ForInStatement=19]="ForInStatement",e[e.InOperator=20]="InOperator",e[e.ImportFromPath=21]="ImportFromPath",e[e.FunctionExpression=22]="FunctionExpression",e[e.IntersectionType=23]="IntersectionType",e[e.ObjectTypeLiteral=24]="ObjectTypeLiteral",e[e.CommaOperator=25]="CommaOperator",e[e.LimitedReturnTypeInference=26]="LimitedReturnTypeInference",e[e.LambdaWithTypeParameters=27]="LambdaWithTypeParameters",e[e.ClassExpression=28]="ClassExpression",e[e.DestructuringAssignment=29]="DestructuringAssignment",e[e.DestructuringDeclaration=30]="DestructuringDeclaration",e[e.VarDeclaration=31]="VarDeclaration",e[e.CatchWithUnsupportedType=32]="CatchWithUnsupportedType",e[e.DeleteOperator=33]="DeleteOperator",e[e.DeclWithDuplicateName=34]="DeclWithDuplicateName",e[e.UnaryArithmNotNumber=35]="UnaryArithmNotNumber",e[e.ConstructorType=36]="ConstructorType",e[e.ConstructorIface=37]="ConstructorIface",e[e.ConstructorFuncs=38]="ConstructorFuncs",e[e.CallSignature=39]="CallSignature",e[e.TypeAssertion=40]="TypeAssertion",e[e.PrivateIdentifier=41]="PrivateIdentifier",e[e.LocalFunction=42]="LocalFunction",e[e.ConditionalType=43]="ConditionalType",e[e.MappedType=44]="MappedType",e[e.NamespaceAsObject=45]="NamespaceAsObject",e[e.ClassAsObject=46]="ClassAsObject",e[e.NonDeclarationInNamespace=47]="NonDeclarationInNamespace",e[e.GeneratorFunction=48]="GeneratorFunction",e[e.FunctionContainsThis=49]="FunctionContainsThis",e[e.PropertyAccessByIndex=50]="PropertyAccessByIndex",e[e.JsxElement=51]="JsxElement",e[e.EnumMemberNonConstInit=52]="EnumMemberNonConstInit",e[e.ImplementsClass=53]="ImplementsClass",e[e.NoUndefinedPropAccess=54]="NoUndefinedPropAccess",e[e.MultipleStaticBlocks=55]="MultipleStaticBlocks",e[e.ThisType=56]="ThisType",e[e.IntefaceExtendDifProps=57]="IntefaceExtendDifProps",e[e.StructuralIdentity=58]="StructuralIdentity",e[e.DefaultImport=59]="DefaultImport",e[e.ExportAssignment=60]="ExportAssignment",e[e.ImportAssignment=61]="ImportAssignment",e[e.GenericCallNoTypeArgs=62]="GenericCallNoTypeArgs",e[e.ParameterProperties=63]="ParameterProperties",e[e.InstanceofUnsupported=64]="InstanceofUnsupported",e[e.ShorthandAmbientModuleDecl=65]="ShorthandAmbientModuleDecl",e[e.WildcardsInModuleName=66]="WildcardsInModuleName",e[e.UMDModuleDefinition=67]="UMDModuleDefinition",e[e.NewTarget=68]="NewTarget",e[e.DefiniteAssignment=69]="DefiniteAssignment",e[e.Prototype=70]="Prototype",e[e.GlobalThis=71]="GlobalThis",e[e.UtilityType=72]="UtilityType",e[e.PropertyDeclOnFunction=73]="PropertyDeclOnFunction",e[e.FunctionApplyBindCall=74]="FunctionApplyBindCall",e[e.ConstAssertion=75]="ConstAssertion",e[e.ImportAssertion=76]="ImportAssertion",e[e.SpreadOperator=77]="SpreadOperator",e[e.LimitedStdLibApi=78]="LimitedStdLibApi",e[e.ErrorSuppression=79]="ErrorSuppression",e[e.StrictDiagnostic=80]="StrictDiagnostic",e[e.UnsupportedDecorators=81]="UnsupportedDecorators",e[e.ImportAfterStatement=82]="ImportAfterStatement",e[e.EsObjectType=83]="EsObjectType",e[e.LAST_ID=84]="LAST_ID"}(t=e.FaultID||(e.FaultID={}));var r=function(){this.cookBookRef="-1"};e.FaultAttributs=r,e.faultsAttrs=[],e.faultsAttrs[t.LiteralAsPropertyName]={migratable:!0,cookBookRef:"1"},e.faultsAttrs[t.ComputedPropertyName]={cookBookRef:"1"},e.faultsAttrs[t.SymbolType]={cookBookRef:"2"},e.faultsAttrs[t.PrivateIdentifier]={migratable:!0,cookBookRef:"3"},e.faultsAttrs[t.DeclWithDuplicateName]={migratable:!0,cookBookRef:"4"},e.faultsAttrs[t.VarDeclaration]={migratable:!0,cookBookRef:"5"},e.faultsAttrs[t.AnyType]={cookBookRef:"8"},e.faultsAttrs[t.UnknownType]={cookBookRef:"8"},e.faultsAttrs[t.CallSignature]={cookBookRef:"14"},e.faultsAttrs[t.ConstructorType]={cookBookRef:"15"},e.faultsAttrs[t.MultipleStaticBlocks]={cookBookRef:"16"},e.faultsAttrs[t.IndexMember]={cookBookRef:"17"},e.faultsAttrs[t.IntersectionType]={cookBookRef:"19"},e.faultsAttrs[t.ThisType]={cookBookRef:"21"},e.faultsAttrs[t.ConditionalType]={cookBookRef:"22"},e.faultsAttrs[t.ParameterProperties]={migratable:!0,cookBookRef:"25"},e.faultsAttrs[t.ConstructorIface]={cookBookRef:"27"},e.faultsAttrs[t.IndexedAccessType]={cookBookRef:"28"},e.faultsAttrs[t.PropertyAccessByIndex]={migratable:!0,cookBookRef:"29"},e.faultsAttrs[t.StructuralIdentity]={cookBookRef:"30"},e.faultsAttrs[t.GenericCallNoTypeArgs]={cookBookRef:"34"},e.faultsAttrs[t.RegexLiteral]={cookBookRef:"37"},e.faultsAttrs[t.ObjectLiteralNoContextType]={cookBookRef:"38"},e.faultsAttrs[t.ObjectTypeLiteral]={cookBookRef:"40"},e.faultsAttrs[t.ArrayLiteralNoContextType]={cookBookRef:"43"},e.faultsAttrs[t.FunctionExpression]={migratable:!0,cookBookRef:"46"},e.faultsAttrs[t.LambdaWithTypeParameters]={migratable:!0,cookBookRef:"49"},e.faultsAttrs[t.ClassExpression]={migratable:!0,cookBookRef:"50"},e.faultsAttrs[t.ImplementsClass]={cookBookRef:"51"},e.faultsAttrs[t.NoUndefinedPropAccess]={cookBookRef:"52"},e.faultsAttrs[t.TypeAssertion]={migratable:!0,cookBookRef:"53"},e.faultsAttrs[t.JsxElement]={cookBookRef:"54"},e.faultsAttrs[t.UnaryArithmNotNumber]={cookBookRef:"55"},e.faultsAttrs[t.DeleteOperator]={cookBookRef:"59"},e.faultsAttrs[t.TypeQuery]={cookBookRef:"60"},e.faultsAttrs[t.InstanceofUnsupported]={cookBookRef:"65"},e.faultsAttrs[t.InOperator]={cookBookRef:"66"},e.faultsAttrs[t.DestructuringAssignment]={migratable:!0,cookBookRef:"69"},e.faultsAttrs[t.CommaOperator]={cookBookRef:"71"},e.faultsAttrs[t.DestructuringDeclaration]={migratable:!0,cookBookRef:"74"},e.faultsAttrs[t.CatchWithUnsupportedType]={migratable:!0,cookBookRef:"79"},e.faultsAttrs[t.ForInStatement]={cookBookRef:"80"},e.faultsAttrs[t.MappedType]={cookBookRef:"83"},e.faultsAttrs[t.WithStatement]={cookBookRef:"84"},e.faultsAttrs[t.ThrowStatement]={migratable:!0,cookBookRef:"87"},e.faultsAttrs[t.LimitedReturnTypeInference]={migratable:!0,cookBookRef:"90"},e.faultsAttrs[t.DestructuringParameter]={cookBookRef:"91"},e.faultsAttrs[t.LocalFunction]={migratable:!0,cookBookRef:"92"},e.faultsAttrs[t.FunctionContainsThis]={cookBookRef:"93"},e.faultsAttrs[t.GeneratorFunction]={cookBookRef:"94"},e.faultsAttrs[t.YieldExpression]={cookBookRef:"94"},e.faultsAttrs[t.IsOperator]={cookBookRef:"96"},e.faultsAttrs[t.SpreadOperator]={cookBookRef:"99"},e.faultsAttrs[t.IntefaceExtendDifProps]={cookBookRef:"102"},e.faultsAttrs[t.InterfaceMerging]={cookBookRef:"103"},e.faultsAttrs[t.InterfaceExtendsClass]={cookBookRef:"104"},e.faultsAttrs[t.ConstructorFuncs]={cookBookRef:"106"},e.faultsAttrs[t.EnumMemberNonConstInit]={cookBookRef:"111"},e.faultsAttrs[t.EnumMerging]={cookBookRef:"113"},e.faultsAttrs[t.NamespaceAsObject]={cookBookRef:"114"},e.faultsAttrs[t.NonDeclarationInNamespace]={cookBookRef:"116"},e.faultsAttrs[t.ImportFromPath]={cookBookRef:"119"},e.faultsAttrs[t.DefaultImport]={migratable:!0,cookBookRef:"120"},e.faultsAttrs[t.ImportAssignment]={cookBookRef:"121"},e.faultsAttrs[t.ExportAssignment]={cookBookRef:"126"},e.faultsAttrs[t.ShorthandAmbientModuleDecl]={cookBookRef:"128"},e.faultsAttrs[t.WildcardsInModuleName]={cookBookRef:"129"},e.faultsAttrs[t.UMDModuleDefinition]={cookBookRef:"130"},e.faultsAttrs[t.NewTarget]={cookBookRef:"132"},e.faultsAttrs[t.DefiniteAssignment]={warning:!0,cookBookRef:"134"},e.faultsAttrs[t.Prototype]={cookBookRef:"136"},e.faultsAttrs[t.GlobalThis]={cookBookRef:"137"},e.faultsAttrs[t.UtilityType]={cookBookRef:"138"},e.faultsAttrs[t.PropertyDeclOnFunction]={cookBookRef:"139"},e.faultsAttrs[t.FunctionApplyBindCall]={cookBookRef:"140"},e.faultsAttrs[t.ConstAssertion]={cookBookRef:"142"},e.faultsAttrs[t.ImportAssertion]={cookBookRef:"143"},e.faultsAttrs[t.LimitedStdLibApi]={cookBookRef:"144"},e.faultsAttrs[t.StrictDiagnostic]={cookBookRef:"145"},e.faultsAttrs[t.ErrorSuppression]={cookBookRef:"146"},e.faultsAttrs[t.UnsupportedDecorators]={warning:!0,cookBookRef:"148"},e.faultsAttrs[t.ClassAsObject]={cookBookRef:"149"},e.faultsAttrs[t.ImportAfterStatement]={cookBookRef:"150"},e.faultsAttrs[t.EsObjectType]={warning:!0,cookBookRef:"151"}}(e.Problems||(e.Problems={}))}(d||(d={})),function(e){!function(t){var r;t.PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE=2564,t.NON_INITIALIZABLE_PROPERTY_DECORATORS=["Link","Consume","ObjectLink","Prop","BuilderParam"],t.NON_INITIALIZABLE_PROPERTY_ClASS_DECORATORS=["CustomDialog"],t.LIMITED_STANDARD_UTILITY_TYPES=["Awaited","Pick","Omit","Exclude","Extract","NonNullable","Parameters","ConstructorParameters","ReturnType","InstanceType","ThisParameterType","OmitThisParameter","ThisType","Uppercase","Lowercase","Capitalize","Uncapitalize"],t.ALLOWED_STD_SYMBOL_API=["iterator"],function(e){e[e.WARNING=1]="WARNING",e[e.ERROR=2]="ERROR"}(t.ProblemSeverity||(t.ProblemSeverity={})),t.ARKTS_IGNORE_DIRS=["node_modules","oh_modules","build",".preview"],t.ARKTS_IGNORE_FILES=["hvigorfile.ts"],t.setTypeChecker=function(e){r=e};var n=!1;function i(e){return e.kind>=62&&e.kind<=77}function a(r){return!(void 0===r||!e.isTypeReferenceNode(r))&&t.TYPED_ARRAYS.includes(s(r.typeName))}function o(t,r){return!(void 0===t||!e.isTypeReferenceNode(t))&&s(t.typeName)===r}function s(t){return e.isIdentifier(t)?t.escapedText.toString():s(t.left)+s(t.right)}function c(e){if(e.isUnion()){for(var t=0,r=e.types;t<r.length;t++){if(!(296&r[t].flags))return!1}return!0}return!!(296&e.getFlags())}function l(e){return!!(4&e.getFlags())}function u(e,t){var r=!!(67108864&e.flags);if(!p(e)||!e.isUnion()||r)return!1;for(var n=0,i=e.types;n<i.length;n++){if(!(i[n].flags&t))return!1}return!0}function d(e,t){var r=!!(67108864&e.flags);return!(!f(e)||r)&&!!(e.flags&t)}function p(e){return e.symbol&&!!(384&e.symbol.flags)}function f(e){return e.symbol&&!!(8&e.symbol.flags)}function m(e,t){if(!e)return!1;for(var r=0,n=e;r<n.length;r++){if(n[r].kind===t)return!0}return!1}function g(e){return 2097152&e.getFlags()?r.getAliasedSymbol(e):e}t.setTestMode=function(e){n=e},t.getStartPos=function(e){return 2===e.kind||3===e.kind?e.pos:e.getStart()},t.getEndPos=function(e){return 2===e.kind||3===e.kind?e.end:e.getEnd()},t.isAssignmentOperator=i,t.isTypedArray=a,t.isType=o,t.entityNameToString=s,t.isNumberType=c,t.isBooleanType=function(e){return!!(528&e.getFlags())},t.isStringLikeType=function(e){if(e.isUnion()){for(var t=0,r=e.types;t<r.length;t++){if(!(402653316&r[t].flags))return!1}return!0}return!!(402653316&e.getFlags())},t.isStringType=l,t.isPrimitiveEnumType=u,t.isPrimitiveEnumMemberType=d,t.unwrapParenthesizedType=function(t){for(;e.isParenthesizedTypeNode(t);)t=t.type;return t},t.findParentIf=function(e){for(var t=e.parent;t;){if(236===t.kind)return t;t=t.parent}return null},t.isDestructuringAssignmentLHS=function(t){for(var r=t.parent,n=t;r;){if(e.isBinaryExpression(r)&&i(r.operatorToken)&&r.left===n)return!0;if((e.isForStatement(r)||e.isForInStatement(r)||e.isForOfStatement(r))&&r.initializer&&r.initializer===n)return!0;n=r,r=r.parent}return!1},t.isEnumType=p,t.isEnumMemberType=f,t.isObjectLiteralType=function(e){return e.symbol&&!!(4096&e.symbol.flags)},t.isNumberLikeType=function(e){return!!(296&e.getFlags())},t.hasModifier=m,t.unwrapParenthesized=function(t){for(var r=t;e.isParenthesizedExpression(r);)r=r.expression;return r},t.followIfAliased=g;var _,h=new e.Map;function y(e){var t=h,n=t.get(e);if(void 0!==n)return null!==n?n:void 0;var i=r.getSymbolAtLocation(e);if(void 0!==i)return i=g(i),t.set(e,i),i;t.set(e,null)}function v(e){return M(e)||258===e||254===e||256===e||257===e}function b(e){var t=e.getFlags();return!!(16&t||512&t||8&t||256&t)}function k(e){var t,r,n;return S(e)&&1===(null===(t=e.typeArguments)||void 0===t?void 0:t.length)&&1===(null===(r=e.target.typeParameters)||void 0===r?void 0:r.length)&&"Array"===(null===(n=e.getSymbol())||void 0===n?void 0:n.getName())}function x(t,n){S(t)&&t.target!==t&&(t=t.target);var i=r.typeToTypeNode(t,void 0,0);if(n===_.Array&&(k(t)||a(i)))return!0;if(n!==_.Array&&o(i,n.toString()))return!0;if(!t.symbol||!t.symbol.declarations)return!1;for(var s=0,c=t.symbol.declarations;s<c.length;s++){var l=c[s];if((e.isClassDeclaration(l)||e.isInterfaceDeclaration(l))&&l.heritageClauses)for(var u=0,d=l.heritageClauses;u<d.length;u++){if(F(d[u].types,n))return!0}}return!1}function S(e){return!!(524288&e.getFlags())&&!!(4&e.objectFlags)}function w(e){return!!(1&e.getFlags())}function D(e){return!!(e.flags&&(1&e.flags||2&e.flags||2097152&e.flags))}function E(e){if(e&&e.declarations&&e.declarations.length>0)return e.declarations[0]}function T(t){if(e.isParenthesizedExpression(t)||e.isAsExpression(t)&&145===t.type.kind)return T(t.expression);switch(t.kind){case 216:return function(e){return t=e.operator,(39===t||40===t||54===t)&&T(e.operand);var t}(t);case 208:case 218:return function(e){return t=e.operatorToken,(41===t.kind||43===t.kind||44===t.kind||40===t.kind||39===t.kind||47===t.kind||48===t.kind||56===t.kind||49===t.kind||50===t.kind||52===t.kind||51===t.kind||55===t.kind)&&T(e.left)&&T(e.right);var t}(t);case 219:return function(e){return T(e.whenTrue)&&T(e.whenFalse)}(t);case 78:return function(t){var n=r.getSymbolAtLocation(t),i=E(n);return!!i&&(function(t){return e.isVariableDeclaration(t)&&e.isVariableDeclarationList(t.parent)}(i)&&C(i.parent)||294===i.kind)}(t);case 8:case 10:return!0;case 202:var n=t;if(A(n))return!0;var i=r.getSymbolAtLocation(n.expression);if(!i)return!1;var a=i.getDeclarations();return!(!a||1!==a.length)&&e.isEnumDeclaration(a[0]);default:return!1}}function C(t){return!!(2&e.getCombinedNodeFlags(t))}function A(e){var t=8===e.kind?Number(e.getText()):r.getConstantValue(e);return void 0!==t&&"number"==typeof t}function N(e){var t=r.getConstantValue(e);return void 0!==t&&"string"==typeof t}function P(t,r){if(S(t)&&t.target!==t&&(t=t.target),S(r)&&r.target!==r&&(r=r.target),t===r||O(r))return!0;if(!t.symbol||!t.symbol.declarations)return!1;for(var n=0,i=t.symbol.declarations;n<i.length;n++){var a=i[n];if((e.isClassDeclaration(a)||e.isInterfaceDeclaration(a))&&a.heritageClauses)for(var o=0,s=a.heritageClauses;o<s.length;o++){var c=s[o],l=!t.isClass()||94!==c.token;if(I(c.types,r,l))return!0}}return!1}function I(e,t,n){for(var i=0,a=e;i<a.length;i++){var o=a[i],s=r.getTypeAtLocation(o);if(S(s)&&s.target!==s&&(s=s.target),s&&s.isClass()!==n&&P(s,t))return!0}return!1}function F(e,t){for(var n=0,i=e;n<i.length;n++){var a=i[n],o=r.getTypeAtLocation(a);if(S(o)&&o.target!==o&&(o=o.target),o&&x(o,t))return!0}return!1}function O(e){if(!e)return!1;if(e.symbol&&e.isClassOrInterface()&&"Object"===e.symbol.name)return!0;var t=r.typeToTypeNode(e,void 0,void 0);return void 0!==t&&146===t.kind}function R(t){return!!t&&(void 0!==(t=H(t))&&t.isClassOrInterface()&&function(e){if(void 0===e.symbol.members)return!0;var t=!1,r=!1;return e.symbol.members.forEach((function(e){16384&e.flags&&(t=!0,void 0!==e.declarations&&e.declarations.length>0&&0===e.declarations[0].parameters.length)&&(r=!0)})),!t||r}(t)&&!function(t){if(void 0===t.symbol.members)return!1;var r=!1;return t.symbol.members.forEach((function(t){void 0!==t.declarations&&t.declarations.length>0&&e.isPropertyDeclaration(t.declarations[0])&&m(t.declarations[0].modifiers,143)&&(r=!0)})),r}(t)&&!function(e){return!!(e.isClass()&&e.symbol.declarations&&e.symbol.declarations.length>0&&m(e.symbol.declarations[0].modifiers,126))}(t))}function M(e){return 255===e}function L(e){return M(e.kind)}function j(e){var t=r.getPropertiesOfType(e);if(null==t?void 0:t.length)for(var n=0,i=t;n<i.length;n++){if(8192&i[n].getFlags())return!0}return!1}function B(e,t){var n=r.getPropertiesOfType(e);if(n.length)for(var i=0,a=n;i<a.length;i++){var o=a[i];if(o.name===t)return o}}function z(e){return e.isUnion()?e.getNonNullableType():e}function U(t,n){if(void 0===t)return!1;var i=z(t);if(w(i)||ee(i))return!0;if(function(t,n){if(ne(t)||b(t)){var i=e.isCallExpression(n)?de(n):r.getSymbolAtLocation(n);if(i&&te(i))return!0}return!1}(i,n))return!0;if(Y(i)&&e.isObjectLiteralExpression(n))return function(t){for(var r=0,n=t.properties;r<n.length;r++){var i=n[r];if(!i.name||!e.isStringLiteral(i.name)&&!e.isNumericLiteral(i.name))return!1}return!0}(n);if(X(i)||Q(i)||Z(i)){if(!i.aliasTypeArguments||1!==i.aliasTypeArguments.length)return!1;i=i.aliasTypeArguments[0]}var a=z(r.getTypeAtLocation(n));if(a.isUnion()){for(var o=!0,s=0,c=a.types;s<c.length;s++){var l=c[s];o&&(o=q(t,l))}return o}if(t.isUnion())for(var u=0,d=t.types;u<d.length;u++){if(U(l=d[u],n))return!0}return e.isObjectLiteralExpression(n)?function(t,r){if(e.isObjectLiteralExpression(r))return R(t)&&!j(t)&&K(t,r);return!1}(i,n):q(t,a)}function q(e,t){if(t.isUnion()){for(var n=!0,i=0,a=t.types;i<a.length;i++){var o=a[i];n&&(n=q(e,o))}return n}if(e.isUnion())for(var s=0,p=e.types;s<p.length;s++){if(q(o=p[s],t))return!0}var f=!!(32768&t.flags),m=!!(65536&t.flags);return!(!f&&!m)||(!(!w(e)&&!ee(e))||(!!function(e,t){var r=u(t,256)||d(t,256),n=u(t,128)||d(t,128);return c(e)&&r||l(e)&&n}(e=r.getBaseTypeOfLiteralType(e),t=r.getBaseTypeOfLiteralType(t))||(!!function(e,t){return(V(e)||J(e))&&(V(t)||J(t))}(e,t)||(e===t||P(t,H(e))))))}function J(e){var t=e.getCallSignatures();return t&&t.length>0}function V(e){var t=e.getSymbol();return t&&"Function"===t.getName()&&G(t)}function H(e){return 524288&e.getFlags()&&4&e.objectFlags?e.target:e}function K(t,n){for(var i,a=0,o=n.properties;a<o.length;a++){var s=o[a];if(e.isPropertyAssignment(s)){var c=s,l=B(t,c.name.getText());if(!l||!(null===(i=l.declarations)||void 0===i?void 0:i.length))return!1;if(!U(r.getTypeOfSymbolAtLocation(l,l.declarations[0]),c.initializer))return!1}}return!0}function W(e){var t=r.getFullyQualifiedName(e),n=t.lastIndexOf(".");return-1===n?void 0:t.substring(0,n)}function G(e){var t=W(e);return!t||"global"===t}function $(e,t){if(e)return e.find((function(e){return e.kind===t}))}function Y(e){if(e.aliasSymbol){var t=e.target;if(t){var r=t.aliasSymbol;return!!r&&"Record"===r.getName()&&G(r)}}return!1}function X(e){var t=e.aliasSymbol;return!!t&&"Partial"===t.getName()&&G(t)}function Q(e){var t=e.aliasSymbol;return!!t&&"Required"===t.getName()&&G(t)}function Z(e){var t=e.aliasSymbol;return!!t&&"Readonly"===t.getName()&&G(t)}function ee(e){var t,r=e.getNonNullableType();if(r.isUnion()){for(var n=0,i=r.types;n<i.length;n++){if(!ee(i[n]))return!1}return!0}return te(null!==(t=r.aliasSymbol)&&void 0!==t?t:r.getSymbol())}function te(r){if(r&&r.declarations&&r.declarations.length>0){var i=r.declarations[0].getSourceFile();if(!i)return!1;var a=i.fileName,o=e.getAnyExtensionFromPath(a),s=t.ARKTS_IGNORE_DIRS.some((function(t){return re(e.normalizePath(a),t)}))||t.ARKTS_IGNORE_FILES.some((function(t){return e.getBaseFileName(a)===t})),c=".ets"===o,l=".ts"===o&&!i.isDeclarationFile;return!((c||l&&n)&&!s)&&!t.STANDARD_LIBRARIES.includes(e.getBaseFileName(i.fileName).toLowerCase())}return!1}function re(t,r){for(var n=0,i=e.getPathComponents(t);n<i.length;n++){if(i[n]===r)return!0}return!1}function ne(e){var t;return ie(null!==(t=e.aliasSymbol)&&void 0!==t?t:e.getSymbol())}function ie(r){if(r&&r.declarations&&r.declarations.length>0){var n=r.declarations[0].getSourceFile();return n&&t.STANDARD_LIBRARIES.includes(e.getBaseFileName(n.fileName).toLowerCase())}return!1}function ae(e){return!!(67108864&e.flags)}function oe(e){if(void 0===e)return!1;if((e=e.getNonNullableType()).isUnion()){for(var t=0,r=e.types;t<r.length;t++){var n=oe(r[t]);if(n||void 0===n)return n}return!1}return!!ee(e)||!!(ne(e)||ae(e)||w(e))&&void 0}function se(r){return e.isTypeReferenceNode(r)&&e.isIdentifier(r.typeName)&&r.typeName.text===t.ES_OBJECT}function ce(e){var t=y(e);if(void 0!==t)return le(t)}function le(t){var r=E(t);if(r&&e.isVariableDeclaration(r))return r.type}function ue(e){if(e.isUnionOrIntersection()){for(var t=0,r=e.types;t<r.length;t++){if(ue(r[t]))return!0}return!1}return!!(524288&e.flags)&&!!(16&e.objectFlags)}function de(e){var t=r.getResolvedSignature(e),n=null==t?void 0:t.getDeclaration();if(n&&n.name)return r.getSymbolAtLocation(n.name)}t.trueSymbolAtLocation=y,t.isTypeDeclSyntaxKind=v,t.symbolHasDuplicateName=function(e,t){var r=null==e?void 0:e.getDeclarations();if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n].kind,o=v(a)&&259===t||v(t)&&259===a;if(78!==a&&a!==t&&!o)return!0}return!1},t.isReferenceType=function(e){var t=e.getFlags();return!!(58982400&t||524288&t||16&t||32&t||67108864&t||8&t||4&t)},t.isPrimitiveType=b,t.isTypeSymbol=function(e){return!!(e&&e.flags&&(32&e.flags||64&e.flags))},t.isGenericArrayType=k,t.isDerivedFrom=x,t.isTypeReference=S,t.isNullType=function(t){return e.isLiteralTypeNode(t)&&104===t.literal.kind},t.isThisOrSuperExpr=function(e){return 108===e.kind||106===e.kind},t.isPrototypeSymbol=function(e){return!!e&&!!e.flags&&!!(4194304&e.flags)},t.isFunctionSymbol=function(e){return!!e&&!!e.flags&&!!(16&e.flags)},t.isInterfaceType=function(e){return!!(e&&e.symbol&&e.symbol.flags&&64&e.symbol.flags)},t.isAnyType=w,t.isUnknownType=function(e){return!!(2&e.getFlags())},t.isUnsupportedType=D,t.isUnsupportedUnionType=function(e){return!!e.isUnion()&&!(t=e,r=t.types,2===r.length&&(65536&r[0].flags||65536&r[1].flags)||function(e){var t=e.types;return 1048592===e.flags&&2===t.length&&512===t[0].flags&&512===t[1].flags}(e));var t,r},t.isFunctionOrMethod=function(e){return!!(e&&(16&e.flags||8192&e.flags))},t.isMethodAssignment=function(e){return!!e&&!!(8192&e.flags)&&!!(67108864&e.flags)},t.getDeclaration=E,t.isValidEnumMemberInit=function(e){return!!A(e.parent)||(!!N(e.parent)||T(e))},t.isCompileTimeExpression=T,t.isConst=C,t.isNumberConstantValue=A,t.isIntegerConstantValue=function(e){var t=8===e.kind?Number(e.getText()):r.getConstantValue(e);return void 0!==t&&"number"==typeof t&&t.toFixed(0)===t.toString()},t.isStringConstantValue=N,t.relatedByInheritanceOrIdentical=P,t.needToDeduceStructuralIdentity=function(e,t,r){if(void 0===r&&(r=!1),ee(t))return!1;var n=t.isClassOrInterface()&&e.isClassOrInterface()&&!P(e,t);return r&&n&&(n=!P(t,e)),n},t.hasPredecessor=function(e,t){for(var r=e.parent;void 0!==r;){if(t(r))return!0;r=r.parent}return!1},t.processParentTypes=I,t.processParentTypesCheck=F,t.isObjectType=O,t.logTscDiagnostic=function(t,r){t.forEach((function(t){var n=e.flattenDiagnosticMessageText(t.messageText,"\n");if(t.file&&t.start){var i=e.getLineAndCharacterOfPosition(t.file,t.start),a=i.line,o=i.character;n=t.file.fileName+" ("+(a+1)+", "+(o+1)+"): "+n}r(n)}))},t.encodeProblemInfo=function(e){return e.problem+"%"+e.start+"%"+e.end},t.decodeAutofixInfo=function(e){var t=e.split("%");return{problemID:t[0],start:Number.parseInt(t[1]),end:Number.parseInt(t[2])}},t.isCallToFunctionWithOmittedReturnType=function(t){if(e.isCallExpression(t)){var n=r.getResolvedSignature(t);if(n){var i=n.getDeclaration();if(!i||!i.type)return!0}}return!1},t.validateObjectLiteralType=R,t.isStructDeclarationKind=M,t.isStructDeclaration=L,t.isStructObjectInitializer=function(t){if(e.isCallLikeExpression(t.parent)){var n=r.getResolvedSignature(t.parent),i=null==n?void 0:n.declaration;return!!i&&e.isConstructorDeclaration(i)&&L(i.parent)}return!1},t.hasMethods=j,t.isExpressionAssignableToType=U,t.isLiteralType=function(e){return e.isLiteral()||!!(512&e.flags)},t.validateFields=K,t.isSupportedType=function t(r){if(e.isParenthesizedTypeNode(r))return t(r.type);if(e.isArrayTypeNode(r))return t(r.elementType);if(e.isTypeReferenceNode(r)&&r.typeArguments){for(var n=0,i=r.typeArguments;n<i.length;n++){if(!t(i[n]))return!1}return!0}if(e.isUnionTypeNode(r)){for(var a=0,o=r.types;a<o.length;a++){if(!t(o[a]))return!1}return!0}if(e.isTupleTypeNode(r)){for(var s=0,c=r.elements;s<c.length;s++){var l=c[s];if(e.isTypeNode(l)&&!t(l))return!1;if(e.isNamedTupleMember(l)&&!t(l.type))return!1}return!0}return!e.isTypeLiteralNode(r)&&!e.isTypeQueryNode(r)&&!e.isIntersectionTypeNode(r)&&(129!==(u=r.kind)&&153!==u&&149!==u&&190!==u&&185!==u&&191!==u&&186!==u);var u},t.isStruct=function(e){if(!e.declarations)return!1;for(var t=0,r=e.declarations;t<r.length;t++){if(L(r[t]))return!0}return!1},t.getDecorators=function(t){if(t.decorators)return e.filter(t.decorators,e.isDecorator)},function(e){e[e.Array=0]="Array",e.String="String",e.Set="Set",e.Map="Map",e.Error="Error"}(_=t.CheckType||(t.CheckType={})),t.ES_OBJECT="ESObject",t.LIMITED_STD_GLOBAL_FUNC=["eval"],t.LIMITED_STD_OBJECT_API=["__proto__","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__","assign","create","defineProperties","defineProperty","freeze","fromEntries","getOwnPropertyDescriptor","getOwnPropertyDescriptors","getOwnPropertySymbols","getPrototypeOf","hasOwnProperty","is","isExtensible","isFrozen","isPrototypeOf","isSealed","preventExtensions","propertyIsEnumerable","seal","setPrototypeOf"],t.LIMITED_STD_REFLECT_API=["apply","construct","defineProperty","deleteProperty","getOwnPropertyDescriptor","getPrototypeOf","isExtensible","preventExtensions","setPrototypeOf"],t.LIMITED_STD_PROXYHANDLER_API=["apply","construct","defineProperty","deleteProperty","get","getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"],t.ARKUI_DECORATORS=["AnimatableExtend","Builder","BuilderParam","Component","Concurrent","Consume","CustomDialog","Entry","Extend","Link","LocalStorageLink","LocalStorageProp","ObjectLink","Observed","Preview","Prop","Provide","Reusable","State","StorageLink","StorageProp","Styles","Watch"],t.FUNCTION_HAS_NO_RETURN_ERROR_CODE=2366,t.NON_RETURN_FUNCTION_DECORATORS=["AnimatableExtend","Builder","Extend","Styles"],t.STANDARD_LIBRARIES=["lib.dom.d.ts","lib.dom.iterable.d.ts","lib.webworker.d.ts","lib.webworker.importscripd.ts","lib.webworker.iterable.d.ts","lib.scripthost.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","lib.es5.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.sharedmemory.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.es2023.array.d.ts"],t.TYPED_ARRAYS=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],t.getParentSymbolName=W,t.isGlobalSymbol=G,t.isSymbolAPI=function(e){var t=W(e),r=t||e.escapedName;return"Symbol"===r||"SymbolConstructor"===r},t.isStdSymbol=function(t){return"Symbol"===e.TypeScriptLinter.tsTypeChecker.getFullyQualifiedName(t)&&G(t)},t.isSymbolIterator=function(e){var t=e.name,r=W(e);return("Symbol"===r||"SymbolConstructor"===r)&&"iterator"===t},t.isDefaultImport=function(e){var t;return"default"===(null===(t=null==e?void 0:e.propertyName)||void 0===t?void 0:t.text)},t.hasAccessModifier=function(e){var t=e.modifiers;return!!t&&(m(t,123)||m(t,122)||m(t,121))},t.getModifier=$,t.getAccessModifier=function(e){var t,r;return null!==(r=null!==(t=$(e,123))&&void 0!==t?t:$(e,122))&&void 0!==r?r:$(e,121)},t.isStdRecordType=Y,t.isStdPartialType=X,t.isStdRequiredType=Q,t.isStdReadonlyType=Z,t.isLibraryType=ee,t.hasLibraryType=function(e){return ee(r.getTypeAtLocation(e))},t.isLibrarySymbol=te,t.pathContainsDirectory=re,t.getScriptKind=function(t){var r=t.fileName;switch(e.getAnyExtensionFromPath(r).toLowerCase()){case".js":return 1;case".jsx":return 2;case".ts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}},t.isStdLibraryType=ne,t.isStdLibrarySymbol=ie,t.isIntrinsicObjectType=ae,t.isDynamicType=oe,t.isDynamicLiteralInitializer=function(t){if(!e.isObjectLiteralExpression(t)&&!e.isArrayLiteralExpression(t))return!1;for(var n=t;e.isObjectLiteralExpression(n)||e.isArrayLiteralExpression(n);){var i=r.getContextualType(n);if(void 0!==i){var a=oe(i);if(void 0!==a)return a}n=n.parent,e.isPropertyAssignment(n)&&(n=n.parent)}if(e.isCallExpression(n)){var o=n;if(w(l=r.getTypeAtLocation(o.expression)))return!0;var s=l.symbol;if(te(s))return!0;if(e.isPropertyAccessExpression(o.expression)&&(s=r.getSymbolAtLocation(o.expression.expression))&&2097152&s.getFlags()&&te(s=r.getAliasedSymbol(s)))return!0}if(e.isBinaryExpression(n)){var c=n;if(e.isPropertyAccessExpression(c.left)){var l,u=c.left;return te((l=r.getTypeAtLocation(u.expression)).symbol)}}return!1},t.isEsObjectType=se,t.isInsideBlock=function(t){for(var r=t.parent;r;){if(e.isBlock(r))return!0;r=r.parent}return!1},t.isEsObjectPossiblyAllowed=function(t){return e.isVariableDeclaration(t.parent)},t.isValueAssignableToESObject=function(t){if(e.isArrayLiteralExpression(t)||e.isObjectLiteralExpression(t))return!1;var r=e.TypeScriptLinter.tsTypeChecker.getTypeAtLocation(t);return D(r)||ue(r)},t.getVariableDeclarationTypeNode=ce,t.getSymbolDeclarationTypeNode=le,t.hasEsObjectType=function(e){var t=ce(e);return void 0!==t&&se(t)},t.symbolHasEsObjectType=function(e){var t=le(e);return void 0!==t&&se(t)},t.isEsObjectSymbol=function(r){var n=E(r);return!!n&&e.isTypeAliasDeclaration(n)&&n.name.escapedText===t.ES_OBJECT&&129===n.type.kind},t.isAnonymousType=ue,t.getSymbolOfCallExpression=de,t.typeIsRecursive=function e(t,n){if(void 0===n&&(n=void 0),void 0===n)n=t;else{if(n===t)return!0;if(n.aliasSymbol)return!1}if(n.isUnion())for(var i=0,a=n.types;i<a.length;i++){if(e(t,a[i]))return!0}if(524288&n.flags&&4&n.objectFlags){var o=r.getTypeArguments(n);if(o)for(var s=0,c=o;s<c.length;s++){if(e(t,c[s]))return!0}}return!1}}(e.Utils||(e.Utils={}))}(d||(d={})),function(e){!function(t){var r=e.Problems.FaultID;t.AUTOFIX_ALL={problemID:"",start:-1,end:-1};var n=[r.LiteralAsPropertyName,r.PropertyAccessByIndex];t.autofixInfo=[],t.shouldAutofix=function(e,i){return!n.includes(i)&&(0!==t.autofixInfo.length&&(1===t.autofixInfo.length&&t.autofixInfo[0]===t.AUTOFIX_ALL||-1!==t.autofixInfo.findIndex((function(t){return t.start===e.getStart()&&t.end===e.getEnd()&&t.problemID===r[i]}))))};var i=e.createPrinter({omitTrailingSemicolon:!1,removeComments:!1});function a(e){return"__"+e.getText()}function o(e){var t=e.getText();return t.substring(1,t.length-1)}t.fixLiteralAsPropertyName=function(t){if(e.isPropertyDeclaration(t)||e.isPropertyAssignment(t)){var r=t.name,n=8===(i=r).kind?a(i):10===i.kind?o(i):"";if(n)return[{replacementText:n,start:r.getStart(),end:r.getEnd()}]}var i},t.fixPropertyAccessByIndex=function(t){if(e.isElementAccessExpression(t)){var r=t,n=8===(i=r.argumentExpression).kind?a(i):10===i.kind?o(i):"";if(n)return[{replacementText:r.expression.getText()+"."+n,start:r.getStart(),end:r.getEnd()}]}var i},t.fixFunctionExpression=function(t,r,n){void 0===r&&(r=t.parameters),void 0===n&&(n=t.type);var a=e.factory.createArrowFunction(void 0,void 0,r,n,e.factory.createToken(38),t.body),o=i.printNode(4,a,t.getSourceFile());return{start:t.getStart(),end:t.getEnd(),replacementText:o}},t.fixReturnType=function(t,r){var n=": "+i.printNode(4,r,t.getSourceFile()),a=function(t){if(t.body)for(var r=e.isArrowFunction(t)?t.equalsGreaterThanToken.getStart():t.body.getStart(),n=t.getChildren(),i=n.length-1;i>=0;i--){var a=n[i];if(21===a.kind&&a.getEnd()<r)return a.getEnd()}return-1}(t);return{start:a,end:a,replacementText:n}},t.fixCtorParameterProperties=function(t,r){for(var n=[],a=t.getStart(),o=[{start:a,end:a,replacementText:""}],s=0;s<t.parameters.length;s++){var c=t.parameters[s];if(e.isIdentifier(c.name)&&e.Utils.hasAccessModifier(c)){var l=e.factory.createIdentifier(c.name.text),u=e.factory.createPropertyDeclaration(void 0,c.modifiers,l,void 0,r[s],void 0),d=i.printNode(4,u,t.getSourceFile())+"\n";o[0].replacementText+=d;var p=e.factory.createParameterDeclaration(void 0,void 0,void 0,c.name,c.questionToken,c.type,c.initializer),f=i.printNode(4,p,t.getSourceFile());o.push({start:c.getStart(),end:c.getEnd(),replacementText:f}),n.push(e.factory.createExpressionStatement(e.factory.createAssignment(e.factory.createPropertyAccessExpression(e.factory.createThis(),l),l)))}}if(t.body){var m=e.factory.createBlock(n.concat(t.body.statements),!0),g=i.printNode(4,m,t.getSourceFile());o.push({start:t.body.getStart(),end:t.body.getEnd(),replacementText:g})}return o}}(e.Autofixer||(e.Autofixer={}))}(d||(d={})),function(e){var t=e.Problems.FaultID,r=function(){function r(){}return r.initStatic=function(){r.nodeDesc[t.AnyType]='"any" type',r.nodeDesc[t.SymbolType]='"symbol" type',r.nodeDesc[t.ObjectLiteralNoContextType]="Object literals with no context Class or Interface type",r.nodeDesc[t.ArrayLiteralNoContextType]="Array literals with no context Array type",r.nodeDesc[t.ComputedPropertyName]="Computed properties",r.nodeDesc[t.LiteralAsPropertyName]="String or integer literal as property name",r.nodeDesc[t.TypeQuery]='"typeof" operations',r.nodeDesc[t.RegexLiteral]="regex literals",r.nodeDesc[t.IsOperator]='"is" operations',r.nodeDesc[t.DestructuringParameter]="destructuring parameters",r.nodeDesc[t.YieldExpression]='"yield" operations',r.nodeDesc[t.InterfaceMerging]="merging interfaces",r.nodeDesc[t.EnumMerging]="merging enums",r.nodeDesc[t.InterfaceExtendsClass]="interfaces inherited from classes",r.nodeDesc[t.IndexMember]="index members",r.nodeDesc[t.WithStatement]='"with" statements',r.nodeDesc[t.ThrowStatement]='"throw" statements with expression of wrong type',r.nodeDesc[t.IndexedAccessType]="Indexed access type",r.nodeDesc[t.UnknownType]='"unknown" type',r.nodeDesc[t.ForInStatement]='"for-In" statements',r.nodeDesc[t.InOperator]='"in" operations',r.nodeDesc[t.ImportFromPath]="imports from path",r.nodeDesc[t.FunctionExpression]="function expressions",r.nodeDesc[t.IntersectionType]="intersection types and type literals",r.nodeDesc[t.ObjectTypeLiteral]="Object type literals",r.nodeDesc[t.CommaOperator]="comma operator",r.nodeDesc[t.LimitedReturnTypeInference]="Functions with limited return type inference",r.nodeDesc[t.LambdaWithTypeParameters]="Lambda function with type parameters",r.nodeDesc[t.ClassExpression]="Class expressions",r.nodeDesc[t.DestructuringAssignment]="Destructuring assignments",r.nodeDesc[t.DestructuringDeclaration]="Destructuring variable declarations",r.nodeDesc[t.VarDeclaration]='"var" declarations',r.nodeDesc[t.CatchWithUnsupportedType]='"catch" clause with unsupported exception type',r.nodeDesc[t.DeleteOperator]='"delete" operations',r.nodeDesc[t.DeclWithDuplicateName]="Declarations with duplicate name",r.nodeDesc[t.UnaryArithmNotNumber]="Unary arithmetics with not-numeric values",r.nodeDesc[t.ConstructorType]="Constructor type",r.nodeDesc[t.ConstructorFuncs]="Constructor function type is not supported",r.nodeDesc[t.ConstructorIface]="Construct signatures are not supported in interfaces",r.nodeDesc[t.CallSignature]="Call signatures",r.nodeDesc[t.TypeAssertion]="Type assertion expressions",r.nodeDesc[t.PrivateIdentifier]='Private identifiers (with "#" prefix)',r.nodeDesc[t.LocalFunction]="Local function declarations",r.nodeDesc[t.ConditionalType]="Conditional type",r.nodeDesc[t.MappedType]="Mapped type",r.nodeDesc[t.NamespaceAsObject]="Namespaces used as objects",r.nodeDesc[t.ClassAsObject]="Class used as object",r.nodeDesc[t.NonDeclarationInNamespace]="Non-declaration statements in namespaces",r.nodeDesc[t.GeneratorFunction]="Generator functions",r.nodeDesc[t.FunctionContainsThis]='Functions containing "this"',r.nodeDesc[t.PropertyAccessByIndex]="property access by index",r.nodeDesc[t.JsxElement]="JSX Elements",r.nodeDesc[t.EnumMemberNonConstInit]="Enum members with non-constant initializer",r.nodeDesc[t.ImplementsClass]='Class type mentioned in "implements" clause',r.nodeDesc[t.NoUndefinedPropAccess]="Access to undefined field",r.nodeDesc[t.MultipleStaticBlocks]="Multiple static blocks",r.nodeDesc[t.ThisType]='"this" type',r.nodeDesc[t.IntefaceExtendDifProps]="Extends same properties with different types",r.nodeDesc[t.StructuralIdentity]="Use of type structural identity",r.nodeDesc[t.DefaultImport]="Default import declarations",r.nodeDesc[t.ExportAssignment]="Export assignments (export = ..)",r.nodeDesc[t.ImportAssignment]="Import assignments (import = ..)",r.nodeDesc[t.GenericCallNoTypeArgs]="Generic calls without type arguments",r.nodeDesc[t.ParameterProperties]="Parameter properties in constructor",r.nodeDesc[t.InstanceofUnsupported]='Left-hand side of "instanceof" is wrong',r.nodeDesc[t.ShorthandAmbientModuleDecl]="Shorthand ambient module declaration",r.nodeDesc[t.WildcardsInModuleName]="Wildcards in module name",r.nodeDesc[t.UMDModuleDefinition]="UMD module definition",r.nodeDesc[t.NewTarget]='"new.target" meta-property',r.nodeDesc[t.DefiniteAssignment]="Definite assignment assertion",r.nodeDesc[t.Prototype]="Prototype assignment",r.nodeDesc[t.GlobalThis]="Use of globalThis",r.nodeDesc[t.UtilityType]="Standard Utility types",r.nodeDesc[t.PropertyDeclOnFunction]="Property declaration on function",r.nodeDesc[t.FunctionApplyBindCall]="Invoking methods of function objects",r.nodeDesc[t.ConstAssertion]='"as const" assertion',r.nodeDesc[t.ImportAssertion]="Import assertion",r.nodeDesc[t.SpreadOperator]="Spread operation",r.nodeDesc[t.LimitedStdLibApi]="Limited standard library API",r.nodeDesc[t.ErrorSuppression]="Error suppression annotation",r.nodeDesc[t.StrictDiagnostic]="Strict diagnostic",r.nodeDesc[t.UnsupportedDecorators]="Unsupported decorators",r.nodeDesc[t.ImportAfterStatement]="Import declaration after other declaration or statement",r.nodeDesc[t.EsObjectType]='Restricted "ESObject" type'},r.nodeDesc=[],r.tsSyntaxKindNames=[],r.terminalTokens=new e.Set([18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,60,57,58,59,61,62,63,64,65,66,67,68,69,70,71,72,73,77,1,2,3,4,5,6,7]),r.incrementOnlyTokens=new e.Map([[129,t.AnyType],[149,t.SymbolType],[188,t.ThisType],[177,t.TypeQuery],[212,t.DeleteOperator],[13,t.RegexLiteral],[173,t.IsOperator],[221,t.YieldExpression],[172,t.IndexMember],[245,t.WithStatement],[190,t.IndexedAccessType],[153,t.UnknownType],[101,t.InOperator],[170,t.CallSignature],[184,t.IntersectionType],[178,t.ObjectTypeLiteral],[176,t.ConstructorFuncs],[79,t.PrivateIdentifier],[185,t.ConditionalType],[191,t.MappedType],[276,t.JsxElement],[277,t.JsxElement],[263,t.ImportAssignment],[262,t.UMDModuleDefinition]]),r}();e.LinterConfig=r}(d||(d={})),function(e){var t=e.Problems.FaultID,r=e.Problems.faultsAttrs,n=e.perfLogger,i=e.LibraryTypeCallDiagnosticCheckerNamespace.ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE,a=e.LibraryTypeCallDiagnosticCheckerNamespace.TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE,o=e.LibraryTypeCallDiagnosticCheckerNamespace.NO_OVERLOAD_MATCHES_THIS_CALL_ERROR_CODE,s=e.LibraryTypeCallDiagnosticCheckerNamespace.LibraryTypeCallDiagnosticChecker,c=function(){function c(t,r,n){this.sourceFile=t,this.tscStrictDiagnostics=n,this.handlersMap=new e.Map([[201,this.handleObjectLiteralExpression],[200,this.handleArrayLiteralExpression],[161,this.handleParameter],[258,this.handleEnumDeclaration],[256,this.handleInterfaceDeclaration],[248,this.handleThrowStatement],[265,this.handleImportClause],[239,this.handleForStatement],[240,this.handleForInStatement],[241,this.handleForOfStatement],[264,this.handleImportDeclaration],[202,this.handlePropertyAccessExpression],[164,this.handlePropertyAssignmentOrDeclaration],[291,this.handlePropertyAssignmentOrDeclaration],[209,this.handleFunctionExpression],[210,this.handleArrowFunction],[223,this.handleClassExpression],[290,this.handleCatchClause],[253,this.handleFunctionDeclaration],[216,this.handlePrefixUnaryExpression],[218,this.handleBinaryExpression],[252,this.handleVariableDeclarationList],[251,this.handleVariableDeclaration],[254,this.handleClassDeclaration],[259,this.handleModuleDeclaration],[257,this.handleTypeAliasDeclaration],[268,this.handleImportSpecifier],[266,this.handleNamespaceImport],[207,this.handleTypeAssertionExpression],[166,this.handleMethodDeclaration],[78,this.handleIdentifier],[203,this.handleElementAccessExpression],[294,this.handleEnumMember],[174,this.handleTypeReference],[269,this.handleExportAssignment],[204,this.handleCallExpression],[228,this.handleMetaProperty],[205,this.handleNewExpression],[226,this.handleAsExpression],[222,this.handleSpreadOp],[293,this.handleSpreadOp],[168,this.handleGetAccessor],[169,this.handleSetAccessor],[171,this.handleConstructSignature],[225,this.handleExpressionWithTypeArguments],[159,this.handleComputedPropertyName]]),this.validatedTypesSet=new e.Set,c.tsTypeChecker=r.getTypeChecker(),this.currentErrorLine=0,this.currentWarningLine=0,this.staticBlocks=new e.Set,this.libraryTypeCallDiagnosticChecker=new s(c.filteredDiagnosticMessages)}return c.initGlobals=function(){c.filteredDiagnosticMessages=[]},c.initStatic=function(){c.strictMode=!0,c.logTscErrors=!1,c.warningsAsErrors=!1,c.lintEtsOnly=!0,c.totalVisitedNodes=0,c.nodeCounters=[],c.lineCounters=[],c.totalErrorLines=0,c.totalWarningLines=0,c.errorLineNumbersString="",c.warningLineNumbersString="",e.Autofixer.autofixInfo.length=0;for(var r=0;r<t.LAST_ID;r++)c.nodeCounters[r]=0,c.lineCounters[r]=0;c.problemsInfos=[]},c.prototype.incrementCounters=function(i,a,o,s){if(void 0===o&&(o=!1),c.strictMode||!r[a].migratable){var l=e.Utils.getStartPos(i),u=e.Utils.getEndPos(i);c.nodeCounters[a]++;var d=this.sourceFile.getLineAndCharacterOfPosition(l),p=d.line,f=d.character;++p,++f;var m=e.LinterConfig.nodeDesc[a],g="unknown",_=r[a]?Number(r[a].cookBookRef):0,h=e.cookBookTag[_],y=e.Utils.ProblemSeverity.ERROR;r[a]&&r[a].warning&&(y=e.Utils.ProblemSeverity.WARNING);var v={line:p,column:f,start:l,end:u,type:g,severity:y,problem:t[a],suggest:_>0?e.cookBookMsg[_]:"",rule:_>0&&""!==h?h:m||g,ruleTag:_,autofixable:o,autofix:s};c.problemsInfos.push(v),c.reportDiagnostics||n.logEvent("Warning: "+this.sourceFile.fileName+" ("+p+", "+f+"): "+(m||g)),c.lineCounters[a]++,r[a].warning?p!==this.currentWarningLine&&(this.currentWarningLine=p,++c.totalWarningLines,c.warningLineNumbersString+=p+", "):p!==this.currentErrorLine&&(this.currentErrorLine=p,++c.totalErrorLines,c.errorLineNumbersString+=p+", ")}},c.prototype.visitTSNode=function(t){var r=this;!function t(n){if(null===n||null===n.kind)return;if(c.totalVisitedNodes++,e.isStructDeclaration(n))return void r.handleStructDeclaration(n);if(r.handleComments(n),e.LinterConfig.terminalTokens.has(n.kind))return;var i=e.LinterConfig.incrementOnlyTokens.get(n.kind);if(void 0!==i)r.incrementCounters(n,i);else{var a=r.handlersMap.get(n.kind);void 0!==a&&a.call(r,n)}e.forEachChild(n,t)}(t)},c.prototype.countInterfaceExtendsDifferentPropertyTypes=function(e,r,n,i){if(i){var a=i.getText(),o=r.get(n);o?o!==a&&this.incrementCounters(e,t.IntefaceExtendDifProps):r.set(n,a)}},c.prototype.countDeclarationsWithDuplicateName=function(r,n,i){var a=c.tsTypeChecker.getSymbolAtLocation(r);a&&e.Utils.symbolHasDuplicateName(a,null!=i?i:n.kind)&&this.incrementCounters(n,t.DeclWithDuplicateName)},c.prototype.countClassMembersWithDuplicateName=function(r){for(var n=0,i=r.members;n<i.length;n++){var a=i[n];if(a.name&&(e.isIdentifier(a.name)||e.isPrivateIdentifier(a.name)))for(var o=0,s=r.members;o<s.length;o++){var c=s[o];if(a!==c&&(c.name&&(e.isIdentifier(c.name)||e.isPrivateIdentifier(c.name)))){if(e.isIdentifier(a.name)&&e.isPrivateIdentifier(c.name)&&a.name.text===c.name.text.substring(1)){this.incrementCounters(a,t.DeclWithDuplicateName);break}if(e.isPrivateIdentifier(a.name)&&e.isIdentifier(c.name)&&a.name.text.substring(1)===c.name.text){this.incrementCounters(a,t.DeclWithDuplicateName);break}}}}},c.prototype.functionContainsThis=function(t){var r=!1;return function t(n){r||(108!==n.kind?e.isClassDeclaration(n)||e.isClassExpression(n)||e.isModuleDeclaration(n)||e.isFunctionDeclaration(n)||e.isFunctionExpression(n)||n.forEachChild(t):r=!0)}(t),r},c.prototype.isPrototypePropertyAccess=function(t,r,n,i){if(!e.isIdentifier(t.name)||"prototype"!==t.name.text)return!1;for(var a=t;a&&e.isPropertyAccessExpression(a);){var o=e.Utils.trueSymbolAtLocation(a.expression);if(e.Utils.isLibrarySymbol(o))return!1;a=a.expression}if(e.isIdentifier(a)&&"prototype"!==a.text){var s=c.tsTypeChecker.getTypeAtLocation(a);if(e.Utils.isAnyType(s))return!1}if(e.Utils.isPrototypeSymbol(r))return!0;if(e.Utils.isTypeSymbol(n)||e.Utils.isFunctionSymbol(n))return!0;var l=c.tsTypeChecker.typeToTypeNode(i,void 0,0);return l&&e.isFunctionTypeNode(l)||e.Utils.isAnyType(i)},c.prototype.interfaceInheritanceLint=function(r,n){for(var i=0,a=n;i<a.length;i++){var o=a[i];if(94===o.token)for(var s=new e.Map,l=0,u=o.types;l<u.length;l++){var d=u[l],p=c.tsTypeChecker.getTypeAtLocation(d.expression);p.isClass()?this.incrementCounters(r,t.InterfaceExtendsClass):p.isClassOrInterface()&&this.lintForInterfaceExtendsDifferentPorpertyTypes(r,p,s)}}},c.prototype.lintForInterfaceExtendsDifferentPorpertyTypes=function(e,t,r){for(var n=0,i=t.getProperties();n<i.length;n++){var a=i[n];if(a.declarations){var o=a.declarations[0];(165===o.kind||166===o.kind||164===o.kind||163===o.kind)&&this.countInterfaceExtendsDifferentPropertyTypes(e,r,a.name,o.type)}}},c.prototype.handleObjectLiteralExpression=function(r){var n=r;if(!e.Utils.isDestructuringAssignmentLHS(n)){var i=c.tsTypeChecker.getContextualType(n);e.Utils.isStructObjectInitializer(n)||e.Utils.isDynamicLiteralInitializer(n)||e.Utils.isExpressionAssignableToType(i,n)||this.incrementCounters(r,t.ObjectLiteralNoContextType)}},c.prototype.handleArrayLiteralExpression=function(r){if(!e.Utils.isDestructuringAssignmentLHS(r)){for(var n=r,i=!1,a=0,o=n.elements;a<o.length;a++){var s=o[a];if(201===s.kind){var l=c.tsTypeChecker.getContextualType(s);if(!e.Utils.isDynamicLiteralInitializer(n)&&!e.Utils.isExpressionAssignableToType(l,s)){i=!0;break}}}i&&this.incrementCounters(r,t.ArrayLiteralNoContextType)}},c.prototype.handleParameter=function(r){var n=r;(e.isArrayBindingPattern(n.name)||e.isObjectBindingPattern(n.name))&&this.incrementCounters(r,t.DestructuringParameter);var i=n.modifiers;i&&(e.Utils.hasModifier(i,123)||e.Utils.hasModifier(i,122)||e.Utils.hasModifier(i,143)||e.Utils.hasModifier(i,121))&&this.incrementCounters(r,t.ParameterProperties),this.handleDecorators(n.decorators),this.handleDeclarationInferredType(n)},c.prototype.handleEnumDeclaration=function(r){var n=r;this.countDeclarationsWithDuplicateName(n.name,n);var i=e.Utils.trueSymbolAtLocation(n.name);if(i){var a=i.getDeclarations();if(a){for(var o=0,s=0,c=a;s<c.length;s++){258===c[s].kind&&o++}o>1&&this.incrementCounters(r,t.EnumMerging)}}},c.prototype.handleInterfaceDeclaration=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.name),a=i?i.getDeclarations():null;if(a){for(var o=0,s=0,c=a;s<c.length;s++){256===c[s].kind&&o++}o>1&&this.incrementCounters(r,t.InterfaceMerging)}n.heritageClauses&&this.interfaceInheritanceLint(r,n.heritageClauses),this.countDeclarationsWithDuplicateName(n.name,n)},c.prototype.handleThrowStatement=function(r){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n.expression);i.isClassOrInterface()&&e.Utils.isDerivedFrom(i,e.Utils.CheckType.Error)||this.incrementCounters(r,t.ThrowStatement)},c.prototype.handleForStatement=function(r){var n=r.initializer;n&&(e.isArrayLiteralExpression(n)||e.isObjectLiteralExpression(n))&&this.incrementCounters(n,t.DestructuringAssignment)},c.prototype.handleForInStatement=function(r){var n=r.initializer;(e.isArrayLiteralExpression(n)||e.isObjectLiteralExpression(n))&&this.incrementCounters(n,t.DestructuringAssignment),this.incrementCounters(r,t.ForInStatement)},c.prototype.handleForOfStatement=function(r){var n=r.initializer;(e.isArrayLiteralExpression(n)||e.isObjectLiteralExpression(n))&&this.incrementCounters(n,t.DestructuringAssignment)},c.prototype.handleImportDeclaration=function(r){for(var n=r,i=0,a=n.parent.statements;i<a.length;i++){var o=a[i];if(o===n)break;if(!e.isImportDeclaration(o)){this.incrementCounters(r,t.ImportAfterStatement);break}}10===n.moduleSpecifier.kind&&(n.importClause||this.incrementCounters(r,t.ImportFromPath))},c.prototype.handlePropertyAccessExpression=function(r){if(!e.isCallExpression(r.parent)||r!=r.parent.expression){var n=r,i=e.Utils.trueSymbolAtLocation(n),a=e.Utils.trueSymbolAtLocation(n.expression),o=c.tsTypeChecker.getTypeAtLocation(n.expression);this.isPrototypePropertyAccess(n,i,a,o)&&this.incrementCounters(n.name,t.Prototype),i&&e.Utils.isSymbolAPI(i)&&!e.Utils.ALLOWED_STD_SYMBOL_API.includes(i.getName())&&this.incrementCounters(n,t.SymbolType),a&&e.Utils.symbolHasEsObjectType(a)&&this.incrementCounters(n,t.EsObjectType)}},c.prototype.handlePropertyAssignmentOrDeclaration=function(r){var n,i=r.name;if(i&&(8===i.kind||10===i.kind)){var a=!1,o=!1;if(e.isPropertyAssignment(r)){var s=c.tsTypeChecker.getContextualType(r.parent);s&&(a=e.Utils.isStdRecordType(s),o=e.Utils.isLibraryType(s)||e.Utils.isDynamicLiteralInitializer(r.parent))}if(!a&&!o){var l=e.Autofixer.fixLiteralAsPropertyName(r),u=void 0!==l;e.Autofixer.shouldAutofix(r,t.LiteralAsPropertyName)||(l=void 0),this.incrementCounters(r,t.LiteralAsPropertyName,u,l)}}if(e.isPropertyDeclaration(r)){var d=r.decorators;this.handleDecorators(d),this.filterOutDecoratorsDiagnostics(d,e.Utils.NON_INITIALIZABLE_PROPERTY_DECORATORS,{begin:i.getStart(),end:i.getStart()},e.Utils.PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE);var p=r.parent.decorators,f=null===(n=r.type)||void 0===n?void 0:n.getText();this.filterOutDecoratorsDiagnostics(p,e.Utils.NON_INITIALIZABLE_PROPERTY_ClASS_DECORATORS,{begin:i.getStart(),end:i.getStart()},e.Utils.PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE,f),this.handleDeclarationInferredType(r),this.handleDefiniteAssignmentAssertion(r)}},c.prototype.filterOutDecoratorsDiagnostics=function(t,r,n,i,a){if(this.tscStrictDiagnostics&&this.sourceFile&&(null==t?void 0:t.some((function(t){var n="";return e.isIdentifier(t.expression)?n=t.expression.text:e.isCallExpression(t.expression)&&e.isIdentifier(t.expression.expression)&&(n=t.expression.expression.text),r.includes(e.Utils.NON_INITIALIZABLE_PROPERTY_ClASS_DECORATORS[0])?r.includes(n)&&"CustomDialogController"===a:r.includes(n)})))){var o=e.normalizePath(this.sourceFile.fileName),s=this.tscStrictDiagnostics.get(o);if(s){var c=s.filter((function(e){return e.code!==i||(void 0===e.start||(e.start<n.begin||e.start>n.end))}));this.tscStrictDiagnostics.set(o,c)}}},c.prototype.checkInRange=function(e,t){for(var r=0;r<e.length;r++)if(t>=e[r].begin&&t<e[r].end)return!1;return!0},c.prototype.filterStrictDiagnostics=function(t,r){if(!this.tscStrictDiagnostics||!this.sourceFile)return!1;var n=e.normalizePath(this.sourceFile.fileName),i=this.tscStrictDiagnostics.get(n);if(!i)return!1;var a=function(e){var n=t[e.code];return!n||(!(void 0!==e.start&&!n(e.start))||r.checkDiagnosticMessage(e.messageText))};return!i.every(a)&&(this.tscStrictDiagnostics.set(n,i.filter(a)),!0)},c.prototype.handleFunctionExpression=function(r){var n,i=r,a=void 0!==i.asteriskToken,o=this.functionContainsThis(i.body),s=e.Utils.hasPredecessor(i,e.isClassLike)||e.Utils.hasPredecessor(i,e.isInterfaceDeclaration),c=void 0!==i.typeParameters&&i.typeParameters.length>0,l=this.handleMissingReturnType(i),u=l[0],d=l[1],p=!(c||a||o||u);p&&e.Autofixer.shouldAutofix(r,t.FunctionExpression)&&(n=[e.Autofixer.fixFunctionExpression(i,i.parameters,d)]),this.incrementCounters(r,t.FunctionExpression,p,n),c&&this.incrementCounters(i,t.LambdaWithTypeParameters),a&&this.incrementCounters(i,t.GeneratorFunction),o&&!s&&this.incrementCounters(i,t.FunctionContainsThis),u&&this.incrementCounters(i,t.LimitedReturnTypeInference)},c.prototype.handleArrowFunction=function(r){var n=r,i=this.functionContainsThis(n.body),a=e.Utils.hasPredecessor(n,e.isClassLike)||e.Utils.hasPredecessor(n,e.isInterfaceDeclaration);i&&!a&&this.incrementCounters(n,t.FunctionContainsThis);var o=c.tsTypeChecker.getContextualType(n);o&&e.Utils.isLibraryType(o)||(n.type||this.handleMissingReturnType(n),n.typeParameters&&n.typeParameters.length>0&&this.incrementCounters(r,t.LambdaWithTypeParameters))},c.prototype.handleClassExpression=function(e){this.incrementCounters(e,t.ClassExpression)},c.prototype.handleFunctionDeclaration=function(r){var n=r;n.type||this.handleMissingReturnType(n),n.name&&this.countDeclarationsWithDuplicateName(n.name,n),n.body&&this.functionContainsThis(n.body)&&this.incrementCounters(r,t.FunctionContainsThis),e.isSourceFile(n.parent)||e.isModuleBlock(n.parent)||this.incrementCounters(n,t.LocalFunction),n.asteriskToken&&this.incrementCounters(r,t.GeneratorFunction)},c.prototype.handleMissingReturnType=function(r){if(!r.body)return[!1,void 0];var n,i,a=!1,o=e.isFunctionExpression(r),s=this.hasLimitedTypeInferenceFromReturnExpr(r.body),l=c.tsTypeChecker.getSignatureFromDeclaration(r);if(l){var u=c.tsTypeChecker.getReturnTypeOfSignature(l);!u||e.Utils.isUnsupportedType(u)?s=!0:s&&(a=!!(i=c.tsTypeChecker.typeToTypeNode(u,r,0)),!o&&i&&e.Autofixer.shouldAutofix(r,t.LimitedReturnTypeInference)&&(n=[e.Autofixer.fixReturnType(r,i)]))}return s&&!o&&this.incrementCounters(r,t.LimitedReturnTypeInference,a,n),[s&&!i,i]},c.prototype.hasLimitedTypeInferenceFromReturnExpr=function(t){var r=!1;if(e.isBlock(t))!function t(n){r||(e.isReturnStatement(n)&&n.expression&&e.Utils.isCallToFunctionWithOmittedReturnType(e.Utils.unwrapParenthesized(n.expression))?r=!0:e.isFunctionDeclaration(n)||e.isFunctionExpression(n)||e.isMethodDeclaration(n)||e.isAccessor(n)||e.isArrowFunction(n)||n.forEachChild(t))}(t);else{var n=e.Utils.unwrapParenthesized(t);r=e.Utils.isCallToFunctionWithOmittedReturnType(n)}return r},c.prototype.handlePrefixUnaryExpression=function(r){var n=r,i=n.operator;39!==i&&40!==i&&54!==i||(2344&c.tsTypeChecker.getTypeAtLocation(n.operand).getFlags()&&(54!==i||8!==n.operand.kind||e.Utils.isIntegerConstantValue(n.operand))||this.incrementCounters(r,t.UnaryArithmNotNumber))},c.prototype.handleBinaryExpression=function(r){var n=r,i=n.left,a=n.right;if(e.Utils.isAssignmentOperator(n.operatorToken)&&((e.isObjectLiteralExpression(i)||e.isArrayLiteralExpression(i))&&this.incrementCounters(r,t.DestructuringAssignment),e.isPropertyAccessExpression(i))){var o=e.Utils.trueSymbolAtLocation(i),s=e.Utils.trueSymbolAtLocation(i.expression);o&&8192&o.flags&&this.incrementCounters(i,t.NoUndefinedPropAccess),e.Utils.isMethodAssignment(o)&&s&&16&s.flags&&this.incrementCounters(i,t.PropertyDeclOnFunction)}var l=c.tsTypeChecker.getTypeAtLocation(i),u=c.tsTypeChecker.getTypeAtLocation(a);if(39===n.operatorToken.kind)if(e.Utils.isEnumMemberType(l)&&e.Utils.isEnumMemberType(u)){if(296&l.flags&&296&u.getFlags()||402653316&l.flags&&402653316&u.getFlags())return}else{if(e.Utils.isNumberType(l)&&e.Utils.isNumberType(u))return;if(e.Utils.isStringLikeType(l)||e.Utils.isStringLikeType(u))return}else if(50===n.operatorToken.kind||51===n.operatorToken.kind||52===n.operatorToken.kind||47===n.operatorToken.kind||48===n.operatorToken.kind||49===n.operatorToken.kind){if(!e.Utils.isNumberType(l)||!e.Utils.isNumberType(u)||8===i.kind&&!e.Utils.isIntegerConstantValue(i)||8===a.kind&&!e.Utils.isIntegerConstantValue(a))return}else if(27===n.operatorToken.kind){for(var d=n,p=d.parent;p&&218===p.kind;)p=(d=p).parent;if(p&&239===p.kind){var f=p;if(d===f.initializer||d===f.incrementor)return}this.incrementCounters(r,t.CommaOperator)}else if(102===n.operatorToken.kind){var m=e.Utils.unwrapParenthesized(n.left),g=e.Utils.trueSymbolAtLocation(m);if(108===i.kind)return;(e.Utils.isPrimitiveType(l)||e.isTypeNode(m)||e.Utils.isTypeSymbol(g))&&this.incrementCounters(r,t.InstanceofUnsupported)}else if(62===n.operatorToken.kind){e.Utils.needToDeduceStructuralIdentity(u,l)&&this.incrementCounters(n,t.StructuralIdentity);var _=e.Utils.getVariableDeclarationTypeNode(i);this.handleEsObjectAssignment(n,_,a)}},c.prototype.handleVariableDeclarationList=function(r){3&e.getCombinedNodeFlags(r)||this.incrementCounters(r,t.VarDeclaration)},c.prototype.handleVariableDeclaration=function(r){var n=this,i=r;(e.isArrayBindingPattern(i.name)||e.isObjectBindingPattern(i.name))&&this.incrementCounters(r,t.DestructuringDeclaration);var a=function(t){if(e.isIdentifier(t))n.countDeclarationsWithDuplicateName(t,t,t.parent.kind);else for(var r=0,i=t.elements;r<i.length;r++){var o=i[r];e.isOmittedExpression(o)||a(o.name)}};if(a(i.name),i.type&&i.initializer){var o=i.initializer,s=c.tsTypeChecker.getTypeAtLocation(i.type),l=c.tsTypeChecker.getTypeAtLocation(o);e.Utils.needToDeduceStructuralIdentity(l,s)&&this.incrementCounters(i,t.StructuralIdentity)}this.handleEsObjectDelaration(i),this.handleDeclarationInferredType(i),this.handleDefiniteAssignmentAssertion(i)},c.prototype.handleEsObjectDelaration=function(r){var n=!!r.type&&e.Utils.isEsObjectType(r.type),i=r.initializer&&e.Utils.getVariableDeclarationTypeNode(r.initializer),a=!!i&&e.Utils.isEsObjectType(i),o=e.Utils.isInsideBlock(r);!n&&!a||o?r.initializer&&this.handleEsObjectAssignment(r,r.type,r.initializer):this.incrementCounters(r,t.EsObjectType)},c.prototype.handleEsObjectAssignment=function(r,n,i){var a=!!n,o=!!n&&e.Utils.isEsObjectType(n),s=e.Utils.getVariableDeclarationTypeNode(i),c=!!s&&e.Utils.isEsObjectType(s);(a&&!o&&c||o&&!e.Utils.isValueAssignableToESObject(i))&&this.incrementCounters(r,t.EsObjectType)},c.prototype.handleCatchClause=function(e){var r=e;r.variableDeclaration&&r.variableDeclaration.type&&this.incrementCounters(e,t.CatchWithUnsupportedType)},c.prototype.handleClassDeclaration=function(e){var r=this,n=e;this.staticBlocks.clear(),n.name&&this.countDeclarationsWithDuplicateName(n.name,n),this.countClassMembersWithDuplicateName(n);var i=function(e){for(var n=0,i=e.types;n<i.length;n++){var a=i[n];c.tsTypeChecker.getTypeAtLocation(a.expression).isClass()&&117===e.token&&r.incrementCounters(a,t.ImplementsClass)}};if(n.heritageClauses)for(var a=0,o=n.heritageClauses;a<o.length;a++){var s=o[a];s&&i(s)}this.handleDecorators(n.decorators)},c.prototype.handleModuleDeclaration=function(r){var n=r;this.countDeclarationsWithDuplicateName(n.name,n);var i=n.body,a=n.modifiers;if(i&&e.isModuleBlock(i))for(var o=0,s=i.statements;o<s.length;o++){var c=s[o];switch(c.kind){case 234:case 253:case 254:case 256:case 257:case 258:case 270:case 259:break;default:this.incrementCounters(c,t.NonDeclarationInNamespace)}}16&n.flags||!e.Utils.hasModifier(a,134)||this.incrementCounters(n,t.ShorthandAmbientModuleDecl),e.isStringLiteral(n.name)&&n.name.text.includes("*")&&this.incrementCounters(n,t.WildcardsInModuleName)},c.prototype.handleTypeAliasDeclaration=function(e){var t=e;this.countDeclarationsWithDuplicateName(t.name,t)},c.prototype.handleImportClause=function(r){var n=r;if(n.name&&this.countDeclarationsWithDuplicateName(n.name,n),n.namedBindings&&e.isNamedImports(n.namedBindings)){for(var i=[],a=void 0,o=0,s=n.namedBindings.elements;o<s.length;o++){var c=s[o];e.Utils.isDefaultImport(c)?a=c:i.push(c)}if(a){this.incrementCounters(a,t.DefaultImport,!0,void 0)}}},c.prototype.handleImportSpecifier=function(e){var t=e;this.countDeclarationsWithDuplicateName(t.name,t)},c.prototype.handleNamespaceImport=function(e){var t=e;this.countDeclarationsWithDuplicateName(t.name,t)},c.prototype.handleTypeAssertionExpression=function(e){var r=e;"const"===r.type.getText()?this.incrementCounters(r,t.ConstAssertion):this.incrementCounters(e,t.TypeAssertion)},c.prototype.handleMethodDeclaration=function(r){var n,i,a=r,o=this.functionContainsThis(a),s=!1;if(a.modifiers)for(var c=0,l=a.modifiers;c<l.length;c++){if(124===l[c].kind){s=!0;break}}s&&o&&this.incrementCounters(r,t.FunctionContainsThis),a.type||this.handleMissingReturnType(a),a.asteriskToken&&this.incrementCounters(r,t.GeneratorFunction),this.handleDecorators(a.decorators),this.filterOutDecoratorsDiagnostics(e.Utils.getDecorators(a),e.Utils.NON_RETURN_FUNCTION_DECORATORS,{begin:a.parameters.end,end:null!==(i=null===(n=a.body)||void 0===n?void 0:n.getStart())&&void 0!==i?i:a.parameters.end},e.Utils.FUNCTION_HAS_NO_RETURN_ERROR_CODE)},c.prototype.handleIdentifier=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n);i&&(1536&i.flags&&33554432&i.flags&&"globalThis"===n.text?this.incrementCounters(r,t.GlobalThis):this.handleRestrictedValues(n,i))},c.prototype.isAllowedClassValueContext=function(t){for(var r=t;e.isPropertyAccessExpression(r.parent)||e.isQualifiedName(r.parent);)r=r.parent;if(e.isPropertyAssignment(r.parent)&&e.isObjectLiteralExpression(r.parent.parent)&&(r=r.parent.parent),e.isArrowFunction(r.parent)&&r.parent.body===r&&(r=r.parent),e.isCallExpression(r.parent)||e.isNewExpression(r.parent)){var n=r.parent.expression,i=e.Utils.isAnyType(c.tsTypeChecker.getTypeAtLocation(n))||e.Utils.hasLibraryType(n);if(n!==r&&i)return!0}return!1},c.prototype.handleRestrictedValues=function(r,n){512&n.flags&&n&&e.Utils.symbolHasDuplicateName(n,259)||928&n.flags&&!e.Utils.isStruct(n)&&this.identiferUseInValueContext(r,n)&&(32&n.flags&&this.isAllowedClassValueContext(r)||(512&n.flags?this.incrementCounters(r,t.NamespaceAsObject):this.incrementCounters(r,t.ClassAsObject)))},c.prototype.identiferUseInValueContext=function(t,r){for(var n=t;e.isPropertyAccessExpression(n.parent)||e.isQualifiedName(n.parent);)n=n.parent;var i=n.parent;return!(e.isTypeNode(i)&&!e.isTypeOfExpression(i)||this.isEnumPropAccess(t,r,i)||e.isExpressionWithTypeArguments(i)||e.isExportAssignment(i)||e.isExportSpecifier(i)||e.isMetaProperty(i)||e.isImportClause(i)||e.isClassLike(i)||e.isInterfaceDeclaration(i)||e.isModuleDeclaration(i)||e.isEnumDeclaration(i)||e.isNamespaceImport(i)||e.isImportSpecifier(i)||e.isImportEqualsDeclaration(i)||e.isQualifiedName(n)&&t!==n.right||e.isPropertyAccessExpression(n)&&t!==n.name||e.isNewExpression(n.parent)&&n===n.parent.expression||e.isBinaryExpression(n.parent)&&102===n.parent.operatorToken.kind)},c.prototype.isEnumPropAccess=function(t,r,n){return e.isElementAccessExpression(n)&&!!(384&r.flags)&&(n.expression==t||e.isPropertyAccessExpression(n.expression)&&n.expression.name==t)},c.prototype.handleElementAccessExpression=function(r){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n.expression),a=c.tsTypeChecker.typeToTypeNode(i,void 0,0),o=e.Utils.isDerivedFrom(i,e.Utils.CheckType.Array),s=i.isClassOrInterface()&&!e.Utils.isGenericArrayType(i)&&!o,l=e.Utils.isThisOrSuperExpr(n.expression)&&!o;if(!e.Utils.isLibraryType(i)&&!e.Utils.isTypedArray(a)&&(s||e.Utils.isObjectLiteralType(i)||l)){var u=e.Autofixer.fixPropertyAccessByIndex(r),d=void 0!==u;e.Autofixer.shouldAutofix(r,t.PropertyAccessByIndex)||(u=void 0),this.incrementCounters(r,t.PropertyAccessByIndex,d,u)}e.Utils.hasEsObjectType(n.expression)&&this.incrementCounters(r,t.EsObjectType)},c.prototype.handleEnumMember=function(r){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n),a=c.tsTypeChecker.getConstantValue(n);n.initializer&&!e.Utils.isValidEnumMemberInit(n.initializer)&&this.incrementCounters(r,t.EnumMemberNonConstInit);var o=n.parent.members[0],s=c.tsTypeChecker.getTypeAtLocation(o),l=c.tsTypeChecker.getConstantValue(o);void 0!==a&&"string"==typeof a&&void 0!==l&&"string"==typeof l||void 0!==a&&"number"==typeof a&&void 0!==l&&"number"==typeof l||s!==i&&this.incrementCounters(r,t.EnumMemberNonConstInit)},c.prototype.handleExportAssignment=function(e){e.isExportEquals&&this.incrementCounters(e,t.ExportAssignment)},c.prototype.handleCallExpression=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.expression),a=c.tsTypeChecker.getTypeAtLocation(n.expression),o=c.tsTypeChecker.getResolvedSignature(n);this.handleImportCall(n),this.handleRequireCall(n),void 0!==i&&(this.handleStdlibAPICall(n,i),this.handleFunctionApplyBindPropCall(n,i),e.Utils.symbolHasEsObjectType(i)&&this.incrementCounters(n,t.EsObjectType)),void 0!==o&&(e.Utils.isLibrarySymbol(i)||this.handleGenericCallWithNoTypeArgs(n,o),this.handleStructIdentAndUndefinedInArgs(n,o)),this.handleLibraryTypeCall(n,a),e.isPropertyAccessExpression(n.expression)&&e.Utils.hasEsObjectType(n.expression.expression)&&this.incrementCounters(r,t.EsObjectType)},c.prototype.handleImportCall=function(r){if(100===r.expression.kind){var n=r.arguments;if(n.length>1&&e.isObjectLiteralExpression(n[1]))for(var i=0,a=n[1].properties;i<a.length;i++){var o=a[i];if((e.isPropertyAssignment(o)||e.isShorthandPropertyAssignment(o))&&"assert"===o.name.getText()){this.incrementCounters(o,t.ImportAssertion);break}}}},c.prototype.handleRequireCall=function(r){if(e.isIdentifier(r.expression)&&"require"===r.expression.text&&e.isVariableDeclaration(r.parent)){var n=c.tsTypeChecker.getTypeAtLocation(r.expression);e.Utils.isInterfaceType(n)&&"NodeRequire"===n.symbol.name&&this.incrementCounters(r.parent,t.ImportAssignment)}},c.prototype.handleGenericCallWithNoTypeArgs=function(r,n){var i,a,o=e.isNewExpression(r)?167:253,s=c.tsTypeChecker.signatureToSignatureDeclaration(n,o,void 0,70221856);if(null==s?void 0:s.typeArguments)for(var l=s.typeArguments,u=null!==(a=null===(i=r.typeArguments)||void 0===i?void 0:i.length)&&void 0!==a?a:0;u<l.length;++u){if(153==l[u].kind){this.incrementCounters(r,t.GenericCallNoTypeArgs);break}}},c.prototype.handleFunctionApplyBindPropCall=function(e,r){var n=c.tsTypeChecker.getFullyQualifiedName(r);c.listApplyBindCallApis.includes(n)&&this.incrementCounters(e,t.FunctionApplyBindCall)},c.prototype.handleStructIdentAndUndefinedInArgs=function(r,n){if(r.arguments)for(var i=0;i<r.arguments.length;++i){var a=r.arguments[i],o=c.tsTypeChecker.getTypeAtLocation(a);if(o){var s=i<n.parameters.length?i:n.parameters.length-1,l=n.parameters[s];if(l){var u=l.valueDeclaration;if(u&&e.isParameter(u)){var d=c.tsTypeChecker.getTypeOfSymbolAtLocation(l,u);if(u.dotDotDotToken&&e.Utils.isGenericArrayType(d)&&d.typeArguments&&(d=d.typeArguments[0]),!d)continue;e.Utils.needToDeduceStructuralIdentity(o,d)&&this.incrementCounters(a,t.StructuralIdentity)}}}}},c.prototype.handleStdlibAPICall=function(r,n){var i=n.getName(),a=e.Utils.getParentSymbolName(n);if(void 0!==a){var o=c.LimitedApis.get(a);void 0===o||null!==o.arr&&!o.arr.includes(i)||this.incrementCounters(r,o.fault)}else{if(e.Utils.LIMITED_STD_GLOBAL_FUNC.includes(i))return void this.incrementCounters(r,t.LimitedStdLibApi);var s=n.escapedName;"Symbol"!==s&&"SymbolConstructor"!==s||this.incrementCounters(r,t.SymbolType)}},c.prototype.findNonFilteringRangesFunctionCalls=function(t){for(var r=[],n=0,i=t.arguments;n<i.length;n++){var a=i[n];if(e.isArrowFunction(a)){var o=a;r.push({begin:o.body.pos,end:o.body.end})}else e.isCallExpression(a)&&r.push({begin:a.arguments.pos,end:a.arguments.end})}return r},c.prototype.handleLibraryTypeCall=function(t,r){var n,s=this,l=e.Utils.isLibraryType(r),u=[];this.libraryTypeCallDiagnosticChecker.configure(l,u);var d=this.findNonFilteringRangesFunctionCalls(t),p=[];if(0!==d.length){var f=d.length;p.push({begin:t.arguments.pos,end:d[0].begin}),p.push({begin:d[f-1].end,end:t.arguments.end});for(var m=0;m<f-1;m++)p.push({begin:d[m].end,end:d[m+1].begin})}else p.push({begin:t.arguments.pos,end:t.arguments.end});this.filterStrictDiagnostics(((n={})[i]=function(e){return s.checkInRange([{begin:t.pos,end:t.end}],e)},n[o]=function(e){return s.checkInRange([{begin:t.pos,end:t.end}],e)},n[a]=function(e){return s.checkInRange(p,e)},n),this.libraryTypeCallDiagnosticChecker);for(var g=0,_=u;g<_.length;g++){var h=_[g];c.filteredDiagnosticMessages.push(h)}},c.prototype.handleNewExpression=function(e){var t=e,r=c.tsTypeChecker.getResolvedSignature(t);void 0!==r&&(this.handleStructIdentAndUndefinedInArgs(t,r),this.handleGenericCallWithNoTypeArgs(t,r))},c.prototype.handleAsExpression=function(r){var n,i,a=r;"const"===a.type.getText()&&this.incrementCounters(r,t.ConstAssertion);var o=c.tsTypeChecker.getTypeAtLocation(a.type).getNonNullableType(),s=c.tsTypeChecker.getTypeAtLocation(a.expression).getNonNullableType();e.Utils.needToDeduceStructuralIdentity(s,o,!0)&&this.incrementCounters(a,t.StructuralIdentity),(e.Utils.isNumberType(s)&&"Number"===(null===(n=o.getSymbol())||void 0===n?void 0:n.getName())||e.Utils.isBooleanType(s)&&"Boolean"===(null===(i=o.getSymbol())||void 0===i?void 0:i.getName()))&&this.incrementCounters(r,t.TypeAssertion)},c.prototype.handleTypeReference=function(r){var n=r,i=e.Utils.isEsObjectType(n),a=e.Utils.isEsObjectPossiblyAllowed(n);if(!i||a){var o=e.Utils.entityNameToString(n.typeName);if(e.Utils.LIMITED_STANDARD_UTILITY_TYPES.includes(o))this.incrementCounters(r,t.UtilityType);else{var s="Partial"===e.Utils.entityNameToString(n.typeName),l=!!n.typeArguments&&1===n.typeArguments.length,u=!!n.typeArguments&&l&&n.typeArguments[0],d=u&&c.tsTypeChecker.getTypeFromTypeNode(u);s&&d&&!d.isClassOrInterface()&&this.incrementCounters(r,t.UtilityType)}}else this.incrementCounters(r,t.EsObjectType)},c.prototype.handleMetaProperty=function(e){"target"===e.name.text&&this.incrementCounters(e,t.NewTarget)},c.prototype.handleStructDeclaration=function(t){var r=this;t.forEachChild((function(t){e.isConstructorDeclaration(t)||r.visitTSNode(t)}))},c.prototype.handleSpreadOp=function(r){if(e.isSpreadElement(r)){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n.expression);if(i){var a=c.tsTypeChecker.typeToTypeNode(i,void 0,0);if(void 0!==a&&(e.isCallLikeExpression(r.parent)||e.isArrayLiteralExpression(r.parent))&&(e.isArrayTypeNode(a)||e.Utils.isTypedArray(a)||e.Utils.isDerivedFrom(i,e.Utils.CheckType.Array)))return}}this.incrementCounters(r,t.SpreadOperator)},c.prototype.handleConstructSignature=function(e){switch(e.parent.kind){case 178:this.incrementCounters(e,t.ConstructorType);break;case 256:this.incrementCounters(e,t.ConstructorIface);break;default:return}},c.prototype.handleComments=function(t){var r=t.getSourceFile().getFullText(),n=t.parent;if(!n||n.getFullStart()!==t.getFullStart()){var i=e.getLeadingCommentRanges(r,t.getFullStart());if(i)for(var a=0,o=i;a<o.length;a++){var s=o[a];this.checkErrorSuppressingAnnotation(s,r)}}if(!n||n.getEnd()!==t.getEnd()){var c=e.getTrailingCommentRanges(r,t.getEnd());if(c)for(var l=0,u=c;l<u.length;l++){s=u[l];this.checkErrorSuppressingAnnotation(s,r)}}},c.prototype.handleExpressionWithTypeArguments=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.expression);i&&e.Utils.isEsObjectSymbol(i)&&this.incrementCounters(n,t.EsObjectType)},c.prototype.handleComputedPropertyName=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.expression);i&&e.Utils.isSymbolIterator(i)||this.incrementCounters(r,t.ComputedPropertyName)},c.prototype.checkErrorSuppressingAnnotation=function(e,r){var n=3===e.kind?r.slice(e.pos+2,e.end-2):r.slice(e.pos+2,e.end);if(!n.endsWith("\n")){var i=n.trim();(i.startsWith("@ts-ignore")||i.startsWith("@ts-nocheck")||i.startsWith("@ts-expect-error"))&&this.incrementCounters(e,t.ErrorSuppression)}},c.prototype.handleDecorators=function(r){if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n],o="";e.isIdentifier(a.expression)?o=a.expression.text:e.isCallExpression(a.expression)&&e.isIdentifier(a.expression.expression)&&(o=a.expression.expression.text),e.Utils.ARKUI_DECORATORS.includes(o)||this.incrementCounters(a,t.UnsupportedDecorators)}},c.prototype.handleGetAccessor=function(e){this.handleDecorators(e.decorators)},c.prototype.handleSetAccessor=function(e){this.handleDecorators(e.decorators)},c.prototype.handleDeclarationInferredType=function(t){if(!(t.type||e.isCatchClause(t.parent)||e.isArrayBindingPattern(t.name)||e.isObjectBindingPattern(t.name))){var r=c.tsTypeChecker.getTypeAtLocation(t);r&&this.validateDeclInferredType(r,t)}},c.prototype.handleDefiniteAssignmentAssertion=function(e){void 0!==e.exclamationToken&&this.incrementCounters(e,t.DefiniteAssignment)},c.prototype.checkAnyOrUnknownChildNode=function(e){if(129===e.kind||153===e.kind)return!0;for(var t=0,r=e.getChildren();t<r.length;t++){var n=r[t];if(this.checkAnyOrUnknownChildNode(n))return!0}return!1},c.prototype.handleInferredObjectreference=function(e,t){var r=c.tsTypeChecker.getTypeArguments(e);if(r&&!this.checkAnyOrUnknownChildNode(t))for(var n=0,i=r;n<i.length;n++){var a=i[n];this.validateDeclInferredType(a,t)}},c.prototype.validateDeclInferredType=function(r,n){if(void 0===r.aliasSymbol){var i=524288&r.flags,a=4&r.objectFlags;if(i&&a)this.handleInferredObjectreference(r,n);else if(!this.validatedTypesSet.has(r)){if(r.isUnion()){this.validatedTypesSet.add(r);for(var o=0,s=r.types;o<s.length;o++){var c=s[o];this.validateDeclInferredType(c,n)}}e.Utils.isAnyType(r)?this.incrementCounters(n,t.AnyType):e.Utils.isUnknownType(r)&&this.incrementCounters(n,t.UnknownType)}}},c.prototype.lint=function(){this.visitTSNode(this.sourceFile)},c.reportDiagnostics=!0,c.problemsInfos=[],c.filteredDiagnosticMessages=[],c.listApplyBindCallApis=["Function.apply","Function.call","Function.bind","CallableFunction.apply","CallableFunction.call","CallableFunction.bind"],c.LimitedApis=new e.Map([["global",{arr:e.Utils.LIMITED_STD_GLOBAL_FUNC,fault:t.LimitedStdLibApi}],["Object",{arr:e.Utils.LIMITED_STD_OBJECT_API,fault:t.LimitedStdLibApi}],["ObjectConstructor",{arr:e.Utils.LIMITED_STD_OBJECT_API,fault:t.LimitedStdLibApi}],["Reflect",{arr:e.Utils.LIMITED_STD_REFLECT_API,fault:t.LimitedStdLibApi}],["ProxyHandler",{arr:e.Utils.LIMITED_STD_PROXYHANDLER_API,fault:t.LimitedStdLibApi}],["Symbol",{arr:null,fault:t.SymbolType}],["SymbolConstructor",{arr:null,fault:t.SymbolType}]]),c}();e.TypeScriptLinter=c}(d||(d={})),function(e){var t=function(){function t(t,i){var o=function(t,n){var i=a({},t.getCompilerOptions()),o=function(e){var t=r(),n=!1;return Object.keys(t).forEach((function(t){n=n||!!e[t]})),n}(i),s=r(!o),c=function(t,r,n,i){var a=function(e,t,r,n){var i={rootNames:e,host:r,options:t};n&&(i.options=Object.assign(i.options,n));return i.options.allowJs=!0,i.options.checkJs=!0,i}(t,r,n,i),o=e.createProgram(a);return o}(t.getRootFileNames(),i,n,s);return{strict:o?t:c,nonStrict:o?c:t,wasStrict:o}}(t,i),s=o.strict,c=o.nonStrict,l=o.wasStrict;this.diagnosticsExtractor=new n(s,c),this.wasStrict=l}return t.prototype.getOriginalProgram=function(){return this.wasStrict?this.diagnosticsExtractor.strictProgram:this.diagnosticsExtractor.nonStrictProgram},t.prototype.getStrictProgram=function(){return this.diagnosticsExtractor.strictProgram},t.prototype.getStrictDiagnostics=function(e){return this.diagnosticsExtractor.getStrictDiagnostics(e)},t}();function r(e){return void 0===e&&(e=!0),{strictNullChecks:e,strictFunctionTypes:e,strictPropertyInitialization:e,noImplicitReturns:e}}e.TSCCompiledProgram=t;var n=function(){function t(e,t){this.strictProgram=e,this.nonStrictProgram=t}return t.prototype.getStrictDiagnostics=function(t){var r=i(this.strictProgram,t).filter((function(e){return!(0===e.length&&0===e.start)})),n=i(this.nonStrictProgram,t).reduce((function(e,t){var r=o(t);return r&&e.add(r),e}),new e.Set);return r.filter((function(e){var t=o(e);return t&&!n.has(t)}))},t}();function i(e,t){var r=e.getSourceFile(t);return e.getSemanticDiagnostics(r).concat(e.getSyntacticDiagnostics(r)).filter((function(e){return e.file===r}))}function o(e){if(void 0!==e.start&&void 0!==e.length)return e.code+"%"+e.start+"%"+e.length}}(d||(d={})),function(e){function t(t,r){var n,i,a,o,s,c,l=r.severity===e.Utils.ProblemSeverity.ERROR?e.DiagnosticCategory.Error:e.DiagnosticCategory.Warning;return n=l,i=-1,a=t,o=r.start,s=r.end-r.start+1,c=r.rule,{category:n,code:i,file:a,start:o,length:s,messageText:c}}e.translateDiag=t,e.runArkTSLinter=function(r,n,i){var a;e.TypeScriptLinter.errorLineNumbersString="",e.TypeScriptLinter.warningLineNumbersString="";var o=[];e.LinterConfig.initStatic();var s=new e.TSCCompiledProgram(r,n),c=s.getStrictProgram(),l=[];i?l.push(i):l=c.getSourceFiles();var u=function(t,r){var n=new e.Map;return r.forEach((function(r){var i=t.getStrictDiagnostics(r.fileName);0!==i.length&&n.set(e.normalizePath(r.fileName),i)})),n}(s,l);e.TypeScriptLinter.initGlobals();for(var d=function(r){if(e.TypeScriptLinter.initStatic(),e.TypeScriptLinter.lintEtsOnly&&8!==r.scriptKind)return"continue";var n=new e.TypeScriptLinter(r,c,u);e.Utils.setTypeChecker(e.TypeScriptLinter.tsTypeChecker),n.lint();var i=null!==(a=u.get(r.fileName))&&void 0!==a?a:[];e.TypeScriptLinter.problemsInfos.forEach((function(e){return i.push(t(r,e))})),o.push.apply(o,i)},p=0,f=l;p<f.length;p++){d(f[p])}return o}}(d||(d={}))},89387:e=>{function t(e){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}t.keys=()=>[],t.resolve=t,t.id=89387,e.exports=t},95540:(e,t,r)=>{var n=r(20181).Buffer;void 0===n.from&&(n.from=function(e,t,r){return new n(e,t,r)},n.alloc=n.from),e.exports=n},51324:(e,t,r)=>{var n=r(51007),i=r(2203),a=r(95540);i.Writable&&i.Writable.prototype.destroy||(i=r(47715)),e.exports=function(e){return new n((function(t,r){var n=[],o=i.Transform().on("finish",(function(){t(a.concat(n))})).on("error",r);o._transform=function(e,t,r){n.push(e),r()},e.on("error",r).pipe(o)}))}},92321:(e,t,r)=>{var n,i=r(92096),a=r(2203);function o(e,t){return n||function(){var e,t,r;for(n=[],t=0;t<256;t++){for(e=t,r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>=1;n[t]=e>>>0}}(),e.charCodeAt&&(e=e.charCodeAt(0)),i(t).shiftRight(8).and(16777215).xor(n[i(t).xor(e).and(255)]).value}function s(){if(!(this instanceof s))return new s;this.key0=305419896,this.key1=591751049,this.key2=878082192}a.Writable&&a.Writable.prototype.destroy||(a=r(47715)),s.prototype.update=function(e){this.key0=o(e,this.key0),this.key1=i(this.key0).and(255).and(4294967295).add(this.key1),this.key1=i(this.key1).multiply(134775813).add(1).and(4294967295).value,this.key2=o(i(this.key1).shiftRight(24).and(255),this.key2)},s.prototype.decryptByte=function(e){var t=i(this.key2).or(2);return e^=i(t).multiply(i(1^t)).shiftRight(8).and(255),this.update(e),e},s.prototype.stream=function(){var e=a.Transform(),t=this;return e._transform=function(e,r,n){for(var i=0;i<e.length;i++)e[i]=t.decryptByte(e[i]);this.push(e),n()},e},e.exports=s},12994:(e,t,r)=>{var n=r(2203),i=r(39023);function a(){if(!(this instanceof a))return new a;n.Transform.call(this)}n.Writable&&n.Writable.prototype.destroy||(n=r(47715)),i.inherits(a,n.Transform),a.prototype._transform=function(e,t,r){r()},e.exports=a},63822:(e,t,r)=>{var n=r(46892),i=r(17437),a=r(20603),o=r(51007),s=r(51324),c=r(58189),l=r(95540),u=r(16928),d=r(41723).Writer,p=r(3214),f=l.alloc(4);f.writeUInt32LE(101010256,0),e.exports=function(e,t){var r,l,m,g,_=i(),h=i(),y=t&&t.tailSize||80;return t&&t.crx&&(l=function(e){var t=e.stream(0).pipe(i());return t.pull(4).then((function(e){var r;if(875721283===e.readUInt32LE(0))return t.pull(12).then((function(e){r=n.parse(e).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars})).then((function(){return t.pull(r.pubKeyLength+r.signatureLength)})).then((function(e){return r.publicKey=e.slice(0,r.pubKeyLength),r.signature=e.slice(r.pubKeyLength),r.size=16+r.pubKeyLength+r.signatureLength,r}))}))}(e)),e.size().then((function(t){return r=t,e.stream(Math.max(0,t-y)).on("error",(function(e){_.emit("error",e)})).pipe(_),_.pull(f)})).then((function(){return o.props({directory:_.pull(22),crxHeader:l})})).then((function(t){var a=t.directory;if(m=t.crxHeader&&t.crxHeader.size||0,65535==(g=n.parse(a).word32lu("signature").word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars).numberOfRecords||65535==g.numberOfRecords||4294967295==g.offsetToStartOfCentralDirectory){const t=20,a=r-(y-_.match+t),o=i();return e.stream(a).pipe(o),o.pull(t).then((function(t){return function(e,t){var r=n.parse(t).word32lu("signature").word32lu("diskNumber").word64lu("offsetToStartOfCentralDirectory").word32lu("numberOfDisks").vars;if(117853008!=r.signature)throw new Error("invalid zip64 end of central dir locator signature (0x07064b50): 0x"+r.signature.toString(16));var a=i();return e.stream(r.offsetToStartOfCentralDirectory).pipe(a),a.pull(56)}(e,t)})).then((function(e){g=function(e){var t=n.parse(e).word32lu("signature").word64lu("sizeOfCentralDirectory").word16lu("version").word16lu("versionsNeededToExtract").word32lu("diskNumber").word32lu("diskStart").word64lu("numberOfRecordsOnDisk").word64lu("numberOfRecords").word64lu("sizeOfCentralDirectory").word64lu("offsetToStartOfCentralDirectory").vars;if(101075792!=t.signature)throw new Error("invalid zip64 end of central dir locator signature (0x06064b50): 0x0"+t.signature.toString(16));return t}(e)}))}g.offsetToStartOfCentralDirectory+=m})).then((function(){if(g.commentLength)return _.pull(g.commentLength).then((function(e){g.comment=e.toString("utf8")}))})).then((function(){return e.stream(g.offsetToStartOfCentralDirectory).pipe(h),g.extract=function(e){if(!e||!e.path)throw new Error("PATH_MISSING");return e.path=u.resolve(u.normalize(e.path)),g.files.then((function(t){return o.map(t,(function(t){if("Directory"!=t.type){var r=u.join(e.path,t.path);if(0==r.indexOf(e.path)){var n=e.getWriter?e.getWriter({path:r}):d({path:r});return new o((function(r,i){t.stream(e.password).on("error",i).pipe(n).on("close",r).on("error",i)}))}}}),{concurrency:e.concurrency>1?e.concurrency:1})}))},g.files=o.mapSeries(Array(g.numberOfRecords),(function(){return h.pull(46).then((function(t){var r=n.parse(t).word32lu("signature").word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars;return r.offsetToLocalFileHeader+=m,r.lastModifiedDateTime=p(r.lastModifiedDate,r.lastModifiedTime),h.pull(r.fileNameLength).then((function(e){return r.pathBuffer=e,r.path=e.toString("utf8"),r.isUnicode=!!(2048&r.flags),h.pull(r.extraFieldLength)})).then((function(e){return r.extra=c(e,r),h.pull(r.fileCommentLength)})).then((function(t){return r.comment=t,r.type=0===r.uncompressedSize&&/[\/\\]$/.test(r.path)?"Directory":"File",r.stream=function(t){return a(e,r.offsetToLocalFileHeader,t,r)},r.buffer=function(e){return s(r.stream(e))},r}))}))})),o.props(g)}))}},74773:(e,t,r)=>{var n=r(63735),i=r(51007),a=r(63822),o=r(2203);o.Writable&&o.Writable.prototype.destroy||(o=r(47715)),e.exports={buffer:function(e,t){return a({stream:function(t,r){var n=o.PassThrough();return n.end(e.slice(t,r)),n},size:function(){return i.resolve(e.length)}},t)},file:function(e,t){return a({stream:function(t,r){return n.createReadStream(e,{start:t,end:r&&t+r})},size:function(){return new i((function(t,r){n.stat(e,(function(e,n){e?r(e):t(n.size)}))}))}},t)},url:function(e,t,r){if("string"==typeof t&&(t={url:t}),!t.url)throw"URL missing";t.headers=t.headers||{};var n={stream:function(r,n){var i=Object.create(t);return i.headers=Object.create(t.headers),i.headers.range="bytes="+r+"-"+(n||""),e(i)},size:function(){return new i((function(r,n){var i=e(t);i.on("response",(function(e){i.abort(),e.headers["content-length"]?r(e.headers["content-length"]):n(new Error("Missing content length header"))})).on("error",n)}))}};return a(n,r)},s3:function(e,t,r){return a({size:function(){return new i((function(r,n){e.headObject(t,(function(e,t){e?n(e):r(t.ContentLength)}))}))},stream:function(r,n){var i={};for(var a in t)i[a]=t[a];return i.Range="bytes="+r+"-"+(n||""),e.getObject(i).createReadStream()}},r)},custom:function(e,t){return a(e,t)}}},20603:(e,t,r)=>{var n=r(51007),i=r(92321),a=r(17437),o=r(2203),s=r(46892),c=r(43106),l=r(58189),u=r(95540),d=r(3214);o.Writable&&o.Writable.prototype.destroy||(o=r(47715)),e.exports=function(e,t,r,p){var f=a(),m=o.PassThrough(),g=e.stream(t);return g.pipe(f).on("error",(function(e){m.emit("error",e)})),m.vars=f.pull(30).then((function(e){var t=s.parse(e).word32lu("signature").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars;return t.lastModifiedDateTime=d(t.lastModifiedDate,t.lastModifiedTime),f.pull(t.fileNameLength).then((function(e){return t.fileName=e.toString("utf8"),f.pull(t.extraFieldLength)})).then((function(e){var a;return t.extra=l(e,t),p&&p.compressedSize&&(t=p),1&t.flags&&(a=f.pull(12).then((function(e){if(!r)throw new Error("MISSING_PASSWORD");var n=i();String(r).split("").forEach((function(e){n.update(e)}));for(var a=0;a<e.length;a++)e[a]=n.decryptByte(e[a]);t.decrypt=n,t.compressedSize-=12;var o=8&t.flags?t.lastModifiedTime>>8&255:t.crc32>>24&255;if(e[11]!==o)throw new Error("BAD_PASSWORD");return t}))),n.resolve(a).then((function(){return m.emit("vars",t),t}))}))})),m.vars.then((function(e){var t,r=!(8&e.flags)||e.compressedSize>0,n=e.compressionMethod?c.createInflateRaw():o.PassThrough();r?(m.size=e.uncompressedSize,t=e.compressedSize):(t=u.alloc(4)).writeUInt32LE(134695760,0);var i=f.stream(t);e.decrypt&&(i=i.pipe(e.decrypt.stream())),i.pipe(n).on("error",(function(e){m.emit("error",e)})).pipe(m).on("finish",(function(){g.destroy?g.destroy():g.abort?g.abort():g.close?g.close():g.push?g.push():console.log("warning - unable to close stream")}))})).catch((function(e){m.emit("error",e)})),m}},17437:(e,t,r)=>{var n=r(2203),i=r(51007),a=r(39023),o=r(95540);function s(){if(!(this instanceof s))return new s;n.Duplex.call(this,{decodeStrings:!1,objectMode:!0}),this.buffer=o.from("");var e=this;e.on("finish",(function(){e.finished=!0,e.emit("chunk",!1)}))}n.Writable&&n.Writable.prototype.destroy||(n=r(47715)),a.inherits(s,n.Duplex),s.prototype._write=function(e,t,r){this.buffer=o.concat([this.buffer,e]),this.cb=r,this.emit("chunk")},s.prototype.stream=function(e,t){var r,i=n.PassThrough(),a=this;function o(){if("function"==typeof a.cb){var e=a.cb;return a.cb=void 0,e()}}function s(){var n;if(a.buffer&&a.buffer.length){if("number"==typeof e)n=a.buffer.slice(0,e),a.buffer=a.buffer.slice(e),e-=n.length,r=!e;else{var c=a.buffer.indexOf(e);if(-1!==c)a.match=c,t&&(c+=e.length),n=a.buffer.slice(0,c),a.buffer=a.buffer.slice(c),r=!0;else{var l=a.buffer.length-e.length;l<=0?o():(n=a.buffer.slice(0,l),a.buffer=a.buffer.slice(l))}}n&&i.write(n,(function(){(0===a.buffer.length||e.length&&a.buffer.length<=e.length)&&o()}))}if(r)a.removeListener("chunk",s),i.end();else if(a.finished)return a.removeListener("chunk",s),void a.emit("error",new Error("FILE_ENDED"))}return a.on("chunk",s),s(),i},s.prototype.pull=function(e,t){if(0===e)return i.resolve("");if(!isNaN(e)&&this.buffer.length>e){var r=this.buffer.slice(0,e);return this.buffer=this.buffer.slice(e),i.resolve(r)}var a,s,c=o.from(""),l=this,u=n.Transform();return u._transform=function(e,t,r){c=o.concat([c,e]),r()},new i((function(r,n){if(a=n,s=function(e){l.__emittedError=e,n(e)},l.finished)return n(new Error("FILE_ENDED"));l.once("error",s),l.stream(e,t).on("error",n).pipe(u).on("finish",(function(){r(c)})).on("error",n)})).finally((function(){l.removeListener("error",a),l.removeListener("error",s)}))},s.prototype._read=function(){},e.exports=s},39149:(e,t,r)=>{e.exports=function(e){e.path=a.resolve(a.normalize(e.path));var t=new n(e),r=new o.Writable({objectMode:!0});r._write=function(t,r,n){if("Directory"==t.type)return n();var o=a.join(e.path,t.path);if(0!=o.indexOf(e.path))return n();const s=e.getWriter?e.getWriter({path:o}):i({path:o});t.pipe(s).on("error",n).on("close",n)};var l=s(t,r);return t.once("crx-header",(function(e){l.crxHeader=e})),t.pipe(r).on("finish",(function(){l.emit("close")})),l.promise=function(){return new c((function(e,t){l.on("close",e),l.on("error",t)}))},l};var n=r(199),i=r(41723).Writer,a=r(16928),o=r(2203),s=r(87450),c=r(51007)},199:(e,t,r)=>{var n=r(39023),i=r(43106),a=r(2203),o=r(46892),s=r(51007),c=r(17437),l=r(12994),u=r(51324),d=r(58189),p=r(95540),f=r(3214);a.Writable&&a.Writable.prototype.destroy||(a=r(47715));var m=p.alloc(4);function g(e){if(!(this instanceof g))return new g(e);var t=this;t._opts=e||{verbose:!1},c.call(t,t._opts),t.on("finish",(function(){t.emit("end"),t.emit("close")})),t._readRecord().catch((function(e){t.__emittedError&&t.__emittedError===e||t.emit("error",e)}))}m.writeUInt32LE(101010256,0),n.inherits(g,c),g.prototype._readRecord=function(){var e=this;return e.pull(4).then((function(t){if(0!==t.length){var r=t.readUInt32LE(0);if(875721283===r)return e._readCrxHeader();if(67324752===r)return e._readFile();if(33639248===r)return e.reachedCD=!0,e._readCentralDirectoryFileHeader();if(101010256===r)return e._readEndOfCentralDirectoryRecord();if(e.reachedCD){return e.pull(m,!0).then((function(){return e._readEndOfCentralDirectoryRecord()}))}e.emit("error",new Error("invalid signature: 0x"+r.toString(16)))}}))},g.prototype._readCrxHeader=function(){var e=this;return e.pull(12).then((function(t){return e.crxHeader=o.parse(t).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars,e.pull(e.crxHeader.pubKeyLength+e.crxHeader.signatureLength)})).then((function(t){return e.crxHeader.publicKey=t.slice(0,e.crxHeader.pubKeyLength),e.crxHeader.signature=t.slice(e.crxHeader.pubKeyLength),e.emit("crx-header",e.crxHeader),e._readRecord()}))},g.prototype._readFile=function(){var e=this;return e.pull(26).then((function(t){var r=o.parse(t).word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars;return r.lastModifiedDateTime=f(r.lastModifiedDate,r.lastModifiedTime),e.crxHeader&&(r.crxHeader=e.crxHeader),e.pull(r.fileNameLength).then((function(t){var n=t.toString("utf8"),o=a.PassThrough(),c=!1;return o.autodrain=function(){c=!0;var e=o.pipe(l());return e.promise=function(){return new s((function(t,r){e.on("finish",t),e.on("error",r)}))},e},o.buffer=function(){return u(o)},o.path=n,o.props={},o.props.path=n,o.props.pathBuffer=t,o.props.flags={isUnicode:!!(2048&r.flags)},o.type=0===r.uncompressedSize&&/[\/\\]$/.test(n)?"Directory":"File",e._opts.verbose&&("Directory"===o.type?console.log(" creating:",n):"File"===o.type&&(0===r.compressionMethod?console.log(" extracting:",n):console.log(" inflating:",n))),e.pull(r.extraFieldLength).then((function(t){var l=d(t,r);o.vars=r,o.extra=l,e._opts.forceStream?e.push(o):(e.emit("entry",o),(e._readableState.pipesCount||e._readableState.pipes&&e._readableState.pipes.length)&&e.push(o)),e._opts.verbose&&console.log({filename:n,vars:r,extra:l});var u,f=!(8&r.flags)||r.compressedSize>0;o.__autodraining=c;var m=r.compressionMethod&&!c?i.createInflateRaw():a.PassThrough();return f?(o.size=r.uncompressedSize,u=r.compressedSize):(u=p.alloc(4)).writeUInt32LE(134695760,0),new s((function(t,r){e.stream(u).pipe(m).on("error",(function(t){e.emit("error",t)})).pipe(o).on("finish",(function(){return f?e._readRecord().then(t).catch(r):e._processDataDescriptor(o).then(t).catch(r)}))}))}))}))}))},g.prototype._processDataDescriptor=function(e){var t=this;return t.pull(16).then((function(r){var n=o.parse(r).word32lu("dataDescriptorSignature").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").vars;return e.size=n.uncompressedSize,t._readRecord()}))},g.prototype._readCentralDirectoryFileHeader=function(){var e=this;return e.pull(42).then((function(t){var r=o.parse(t).word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars;return e.pull(r.fileNameLength).then((function(t){return r.fileName=t.toString("utf8"),e.pull(r.extraFieldLength)})).then((function(t){return e.pull(r.fileCommentLength)})).then((function(t){return e._readRecord()}))}))},g.prototype._readEndOfCentralDirectoryRecord=function(){var e=this;return e.pull(18).then((function(t){var r=o.parse(t).word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars;return e.pull(r.commentLength).then((function(t){t=t.toString("utf8"),e.end(),e.push(null)}))}))},g.prototype.promise=function(){var e=this;return new s((function(t,r){e.on("finish",t),e.on("error",r)}))},e.exports=g},3214:e=>{e.exports=function(e,t){const r=31&e,n=e>>5&15,i=1980+(e>>9&127),a=t?2*(31&t):0,o=t?t>>5&63:0,s=t?t>>11:0;return new Date(Date.UTC(i,n-1,r,s,o,a))}},58189:(e,t,r)=>{var n=r(46892);e.exports=function(e,t){for(var r;!r&&e&&e.length;){var i=n.parse(e).word16lu("signature").word16lu("partsize").word64lu("uncompressedSize").word64lu("compressedSize").word64lu("offset").word64lu("disknum").vars;1===i.signature?r=i:e=e.slice(i.partsize+4)}return r=r||{},4294967295===t.compressedSize&&(t.compressedSize=r.compressedSize),4294967295===t.uncompressedSize&&(t.uncompressedSize=r.uncompressedSize),4294967295===t.offsetToLocalFileHeader&&(t.offsetToLocalFileHeader=r.offset),r}},97315:(e,t,r)=>{var n=r(2203),i=r(199),a=r(87450),o=r(51324);n.Writable&&n.Writable.prototype.destroy||(n=r(47715)),e.exports=function(e,t){var r,s=n.PassThrough({objectMode:!0}),c=n.PassThrough(),l=n.Transform({objectMode:!0}),u=e instanceof RegExp?e:e&&new RegExp(e);l._transform=function(e,t,n){if(r||u&&!u.exec(e.path))return e.autodrain(),n();r=!0,d.emit("entry",e),e.on("error",(function(e){c.emit("error",e)})),e.pipe(c).on("error",(function(e){n(e)})).on("finish",(function(e){n(null,e)}))},s.pipe(i(t)).on("error",(function(e){c.emit("error",e)})).pipe(l).on("error",Object).on("finish",(function(){r?c.end():c.emit("error",new Error("PATTERN_NOT_FOUND"))}));var d=a(s,c);return d.buffer=function(){return o(c)},d}},28383:(e,t,r)=>{"use strict";var n=r(33225),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(15622));a.inherits=r(72017);var o=r(80253),s=r(38589);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},4291:(e,t,r)=>{"use strict";e.exports=a;var n=r(68609),i=Object.create(r(15622));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(72017),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},80253:(e,t,r)=>{"use strict";var n=r(33225);e.exports=y;var i,a=r(64634);y.ReadableState=h;r(24434).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(54531),c=r(92861).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(15622));u.inherits=r(72017);var d=r(39023),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(76005),g=r(46033);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(28383));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(83141).I),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(28383),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,S(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&S(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(83141).I),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(w,e):w(e))}function w(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(E,e,t))}function E(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):S(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&S(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},68609:(e,t,r)=>{"use strict";e.exports=o;var n=r(28383),i=Object.create(r(15622));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(72017),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},38589:(e,t,r)=>{"use strict";var n=r(33225);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(15622));s.inherits=r(72017);var c={deprecate:r(27983)},l=r(54531),u=r(92861).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(46033);function m(){}function g(e,t){a=a||r(28383),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(28383),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},76005:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=r(39023);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},46033:(e,t,r)=>{"use strict";var n=r(33225);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},54531:(e,t,r)=>{e.exports=r(2203)},47715:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(80253)).Stream=n||t,t.Readable=t,t.Writable=r(38589),t.Duplex=r(28383),t.Transform=r(68609),t.PassThrough=r(4291))},14490:(e,t,r)=>{"use strict";r(1528),r(36761),r(42791),t.Parse=r(199),t.ParseOne=r(97315),t.Extract=r(39149),t.Open=r(74773)},27983:(e,t,r)=>{e.exports=r(39023).deprecate},22587:(e,t,r)=>{"use strict";r.r(t),r.d(t,{NIL:()=>x,parse:()=>h,stringify:()=>d,v1:()=>_,v3:()=>v,v4:()=>b,v5:()=>k,validate:()=>l,version:()=>S});var n=r(76982),i=r.n(n);const a=new Uint8Array(256);let o=a.length;function s(){return o>a.length-16&&(i().randomFillSync(a),o=0),a.slice(o,o+=16)}const c=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;const l=function(e){return"string"==typeof e&&c.test(e)},u=[];for(let e=0;e<256;++e)u.push((e+256).toString(16).substr(1));const d=function(e,t=0){const r=(u[e[t+0]]+u[e[t+1]]+u[e[t+2]]+u[e[t+3]]+"-"+u[e[t+4]]+u[e[t+5]]+"-"+u[e[t+6]]+u[e[t+7]]+"-"+u[e[t+8]]+u[e[t+9]]+"-"+u[e[t+10]]+u[e[t+11]]+u[e[t+12]]+u[e[t+13]]+u[e[t+14]]+u[e[t+15]]).toLowerCase();if(!l(r))throw TypeError("Stringified UUID is invalid");return r};let p,f,m=0,g=0;const _=function(e,t,r){let n=t&&r||0;const i=t||new Array(16);let a=(e=e||{}).node||p,o=void 0!==e.clockseq?e.clockseq:f;if(null==a||null==o){const t=e.random||(e.rng||s)();null==a&&(a=p=[1|t[0],t[1],t[2],t[3],t[4],t[5]]),null==o&&(o=f=16383&(t[6]<<8|t[7]))}let c=void 0!==e.msecs?e.msecs:Date.now(),l=void 0!==e.nsecs?e.nsecs:g+1;const u=c-m+(l-g)/1e4;if(u<0&&void 0===e.clockseq&&(o=o+1&16383),(u<0||c>m)&&void 0===e.nsecs&&(l=0),l>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");m=c,g=l,f=o,c+=122192928e5;const _=(1e4*(268435455&c)+l)%4294967296;i[n++]=_>>>24&255,i[n++]=_>>>16&255,i[n++]=_>>>8&255,i[n++]=255&_;const h=c/4294967296*1e4&268435455;i[n++]=h>>>8&255,i[n++]=255&h,i[n++]=h>>>24&15|16,i[n++]=h>>>16&255,i[n++]=o>>>8|128,i[n++]=255&o;for(let e=0;e<6;++e)i[n+e]=a[e];return t||d(i)};const h=function(e){if(!l(e))throw TypeError("Invalid UUID");let t;const r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=255&t,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=255&t,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=255&t,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=255&t,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=255&t,r};function y(e,t,r){function n(e,n,i,a){if("string"==typeof e&&(e=function(e){e=unescape(encodeURIComponent(e));const t=[];for(let r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t}(e)),"string"==typeof n&&(n=h(n)),16!==n.length)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let o=new Uint8Array(16+e.length);if(o.set(n),o.set(e,n.length),o=r(o),o[6]=15&o[6]|t,o[8]=63&o[8]|128,i){a=a||0;for(let e=0;e<16;++e)i[a+e]=o[e];return i}return d(o)}try{n.name=e}catch(e){}return n.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",n.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",n}const v=y("v3",48,(function(e){return Array.isArray(e)?e=Buffer.from(e):"string"==typeof e&&(e=Buffer.from(e,"utf8")),i().createHash("md5").update(e).digest()}));const b=function(e,t,r){const n=(e=e||{}).random||(e.rng||s)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,t){r=r||0;for(let e=0;e<16;++e)t[r+e]=n[e];return t}return d(n)};const k=y("v5",80,(function(e){return Array.isArray(e)?e=Buffer.from(e):"string"==typeof e&&(e=Buffer.from(e,"utf8")),i().createHash("sha1").update(e).digest()})),x="00000000-0000-0000-0000-000000000000";const S=function(e){if(!l(e))throw TypeError("Invalid UUID");return parseInt(e.substr(14,1),16)}},86587:e=>{e.exports=function e(t,r){if(t&&r)return e(t)(r);if("function"!=typeof t)throw new TypeError("need wrapper function");return Object.keys(t).forEach((function(e){n[e]=t[e]})),n;function n(){for(var e=new Array(arguments.length),r=0;r<e.length;r++)e[r]=arguments[r];var n=t.apply(this,e),i=e[e.length-1];return"function"==typeof n&&n!==i&&Object.keys(i).forEach((function(e){n[e]=i[e]})),n}}},31487:(e,t)=>{"use strict"; -/** - * Character classes and associated utilities for the 5th edition of XML 1.0. - * - * @author Louis-Dominique Dubeau - * @license MIT - * @copyright Louis-Dominique Dubeau - */Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR="\t\n\r -퟿-�𐀀-􏿿",t.S=" \t\r\n",t.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NAME_CHAR="-"+t.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.CHAR_RE=new RegExp("^["+t.CHAR+"]$","u"),t.S_RE=new RegExp("^["+t.S+"]+$","u"),t.NAME_START_CHAR_RE=new RegExp("^["+t.NAME_START_CHAR+"]$","u"),t.NAME_CHAR_RE=new RegExp("^["+t.NAME_CHAR+"]$","u"),t.NAME_RE=new RegExp("^["+t.NAME_START_CHAR+"]["+t.NAME_CHAR+"]*$","u"),t.NMTOKEN_RE=new RegExp("^["+t.NAME_CHAR+"]+$","u");function r(e){return e>=65&&e<=90||e>=97&&e<=122||58===e||95===e||8204===e||8205===e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}t.S_LIST=[32,10,13,9],t.isChar=function(e){return e>=32&&e<=55295||10===e||13===e||9===e||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isS=function(e){return 32===e||10===e||13===e||9===e},t.isNameStartChar=r,t.isNameChar=function(e){return r(e)||e>=48&&e<=57||45===e||46===e||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},84797:(e,t)=>{"use strict"; -/** - * Character classes and associated utilities for the 2nd edition of XML 1.1. - * - * @author Louis-Dominique Dubeau - * @license MIT - * @copyright Louis-Dominique Dubeau - */Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR="-퟿-�𐀀-􏿿",t.RESTRICTED_CHAR="-\b\v\f--„†-Ÿ",t.S=" \t\r\n",t.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NAME_CHAR="-"+t.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.CHAR_RE=new RegExp("^["+t.CHAR+"]$","u"),t.RESTRICTED_CHAR_RE=new RegExp("^["+t.RESTRICTED_CHAR+"]$","u"),t.S_RE=new RegExp("^["+t.S+"]+$","u"),t.NAME_START_CHAR_RE=new RegExp("^["+t.NAME_START_CHAR+"]$","u"),t.NAME_CHAR_RE=new RegExp("^["+t.NAME_CHAR+"]$","u"),t.NAME_RE=new RegExp("^["+t.NAME_START_CHAR+"]["+t.NAME_CHAR+"]*$","u"),t.NMTOKEN_RE=new RegExp("^["+t.NAME_CHAR+"]+$","u");function r(e){return e>=65&&e<=90||e>=97&&e<=122||58===e||95===e||8204===e||8205===e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}t.S_LIST=[32,10,13,9],t.isChar=function(e){return e>=1&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isRestrictedChar=function(e){return e>=1&&e<=8||11===e||12===e||e>=14&&e<=31||e>=127&&e<=132||e>=134&&e<=159},t.isCharAndNotRestricted=function(e){return 9===e||10===e||13===e||e>31&&e<127||133===e||e>159&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isS=function(e){return 32===e||10===e||13===e||9===e},t.isNameStartChar=r,t.isNameChar=function(e){return r(e)||e>=48&&e<=57||45===e||46===e||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},60446:(e,t)=>{"use strict"; -/** - * Character class utilities for XML NS 1.0 edition 3. - * - * @author Louis-Dominique Dubeau - * @license MIT - * @copyright Louis-Dominique Dubeau - */function r(e){return e>=65&&e<=90||95===e||e>=97&&e<=122||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8204&&e<=8205||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}Object.defineProperty(t,"__esModule",{value:!0}),t.NC_NAME_START_CHAR="A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NC_NAME_CHAR="-"+t.NC_NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.NC_NAME_START_CHAR_RE=new RegExp("^["+t.NC_NAME_START_CHAR+"]$","u"),t.NC_NAME_CHAR_RE=new RegExp("^["+t.NC_NAME_CHAR+"]$","u"),t.NC_NAME_RE=new RegExp("^["+t.NC_NAME_START_CHAR+"]["+t.NC_NAME_CHAR+"]*$","u"),t.isNCNameStartChar=r,t.isNCNameChar=function(e){return r(e)||45===e||46===e||e>=48&&e<=57||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},48919:(e,t,r)=>{ -/** - * ZipStream - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-zip-stream/blob/master/LICENSE} - * @copyright (c) 2014 Chris Talkington, contributors. - */ -var n=r(39023).inherits,i=r(8351).ZipArchiveOutputStream,a=r(8351).ZipArchiveEntry,o=r(4655),s=e.exports=function(e){if(!(this instanceof s))return new s(e);(e=this.options=e||{}).zlib=e.zlib||{},i.call(this,e),"number"==typeof e.level&&e.level>=0&&(e.zlib.level=e.level,delete e.level),e.forceZip64||"number"!=typeof e.zlib.level||0!==e.zlib.level||(e.store=!0),e.namePrependSlash=e.namePrependSlash||!1,e.comment&&e.comment.length>0&&this.setComment(e.comment)};n(s,i),s.prototype._normalizeFileData=function(e){var t="directory"===(e=o.defaults(e,{type:"file",name:null,namePrependSlash:this.options.namePrependSlash,linkname:null,date:null,mode:null,store:this.options.store,comment:""})).type,r="symlink"===e.type;return e.name&&(e.name=o.sanitizePath(e.name),r||"/"!==e.name.slice(-1)?t&&(e.name+="/"):(t=!0,e.type="directory")),(t||r)&&(e.store=!0),e.date=o.dateify(e.date),e},s.prototype.entry=function(e,t,r){if("function"!=typeof r&&(r=this._emitErrorCallback.bind(this)),"file"===(t=this._normalizeFileData(t)).type||"directory"===t.type||"symlink"===t.type)if("string"==typeof t.name&&0!==t.name.length){if("symlink"!==t.type||"string"==typeof t.linkname){var n=new a(t.name);return n.setTime(t.date,this.options.forceLocalTime),t.namePrependSlash&&n.setName(t.name,!0),t.store&&n.setMethod(0),t.comment.length>0&&n.setComment(t.comment),"symlink"===t.type&&"number"!=typeof t.mode&&(t.mode=40960),"number"==typeof t.mode&&("symlink"===t.type&&(t.mode|=40960),n.setUnixMode(t.mode)),"symlink"===t.type&&"string"==typeof t.linkname&&(e=Buffer.from(t.linkname)),i.prototype.entry.call(this,n,e,r)}r(new Error("entry linkname must be a non-empty string value when type equals symlink"))}else r(new Error("entry name must be a non-empty string value"));else r(new Error(t.type+" entries not currently supported"))},s.prototype.finalize=function(){this.finish()}},10317:(e,t,r)=>{var n=r(63735),i=r(16928),a=r(16308),o=r(40209),s=r(9897),c=r(79001),l=r(53577),u=e.exports={},d=/[\/\\]/g;u.exists=function(){var e=i.join.apply(i,arguments);return n.existsSync(e)},u.expand=function(...e){var t=c(e[0])?e.shift():{},r=Array.isArray(e[0])?e[0]:e;if(0===r.length)return[];var u=function(e,t){var r=[];return a(e).forEach((function(e){var n=0===e.indexOf("!");n&&(e=e.slice(1));var i=t(e);r=n?o(r,i):s(r,i)})),r}(r,(function(e){return l.sync(e,t)}));return t.filter&&(u=u.filter((function(e){e=i.join(t.cwd||"",e);try{return"function"==typeof t.filter?t.filter(e):n.statSync(e)[t.filter]()}catch(e){return!1}}))),u},u.expandMapping=function(e,t,r){r=Object.assign({rename:function(e,t){return i.join(e||"",t)}},r);var n=[],a={};return u.expand(r,e).forEach((function(e){var o=e;r.flatten&&(o=i.basename(o)),r.ext&&(o=o.replace(/(\.[^\/]*)?$/,r.ext));var s=r.rename(t,o,r);r.cwd&&(e=i.join(r.cwd,e)),s=s.replace(d,"/"),e=e.replace(d,"/"),a[s]?a[s].src.push(e):(n.push({src:[e],dest:s}),a[s]=n[n.length-1])})),n},u.normalizeFilesArray=function(e){var t=[];return e.forEach((function(e){("src"in e||"dest"in e)&&t.push(e)})),0===t.length?[]:t=_(t).chain().forEach((function(e){"src"in e&&e.src&&(Array.isArray(e.src)?e.src=a(e.src):e.src=[e.src])})).map((function(e){var t=Object.assign({},e);if(delete t.src,delete t.dest,e.expand)return u.expandMapping(e.src,e.dest,t).map((function(t){var r=Object.assign({},e);return r.orig=Object.assign({},e),r.src=t.src,r.dest=t.dest,["expand","cwd","flatten","rename","ext"].forEach((function(e){delete r[e]})),r}));var r=Object.assign({},e);return r.orig=Object.assign({},e),"src"in r&&Object.defineProperty(r,"src",{enumerable:!0,get:function r(){var n;return"result"in r||(n=e.src,n=Array.isArray(n)?a(n):[n],r.result=u.expand(t,n)),r.result}}),"dest"in r&&(r.dest=e.dest),r})).flatten().value()}},4655:(e,t,r)=>{var n=r(63735),i=r(16928),a=r(85),o=r(14100),s=r(71676),c=r(2203).Stream,l=r(34198).PassThrough,u=e.exports={};u.file=r(10317),u.collectStream=function(e,t){var r=[],n=0;e.on("error",t),e.on("data",(function(e){r.push(e),n+=e.length})),e.on("end",(function(){var e=Buffer.alloc(n),i=0;r.forEach((function(t){t.copy(e,i),i+=t.length})),t(null,e)}))},u.dateify=function(e){return(e=e||new Date)instanceof Date||(e="string"==typeof e?new Date(e):new Date),e},u.defaults=function(e,t,r){var n=arguments;return n[0]=n[0]||{},s(...n)},u.isStream=function(e){return e instanceof c},u.lazyReadStream=function(e){return new a.Readable((function(){return n.createReadStream(e)}))},u.normalizeInputSource=function(e){return null===e?Buffer.alloc(0):"string"==typeof e?Buffer.from(e):u.isStream(e)?e.pipe(new l):e},u.sanitizePath=function(e){return o(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,"")},u.trailingSlashIt=function(e){return"/"!==e.slice(-1)?e+"/":e},u.unixifyPath=function(e){return o(e,!1).replace(/^\w+:/,"")},u.walkdir=function(e,t,r){var a=[];"function"==typeof t&&(r=t,t=e),n.readdir(e,(function(o,s){var c,l,d=0;if(o)return r(o);!function o(){if(!(c=s[d++]))return r(null,a);l=i.join(e,c),n.stat(l,(function(e,r){a.push({path:l,relative:i.relative(t,l).replace(/\\/g,"/"),stats:r}),r&&r.isDirectory()?u.walkdir(l,t,(function(e,t){t.forEach((function(e){a.push(e)})),o()})):o()}))}()}))}},42613:e=>{"use strict";e.exports=require("assert")},20181:e=>{"use strict";e.exports=require("buffer")},35317:e=>{"use strict";e.exports=require("child_process")},49140:e=>{"use strict";e.exports=require("constants")},76982:e=>{"use strict";e.exports=require("crypto")},24434:e=>{"use strict";e.exports=require("events")},79896:e=>{"use strict";e.exports=require("fs")},50264:e=>{"use strict";e.exports=require("inspector")},70857:e=>{"use strict";e.exports=require("os")},16928:e=>{"use strict";e.exports=require("path")},82987:e=>{"use strict";e.exports=require("perf_hooks")},932:e=>{"use strict";e.exports=require("process")},2203:e=>{"use strict";e.exports=require("stream")},13193:e=>{"use strict";e.exports=require("string_decoder")},39023:e=>{"use strict";e.exports=require("util")},43106:e=>{"use strict";e.exports=require("zlib")},62116:(e,t,r)=>{const{Argument:n}=r(39297),{Command:i}=r(23749),{CommanderError:a,InvalidArgumentError:o}=r(43666),{Help:s}=r(13693),{Option:c}=r(75019);(t=e.exports=new i).program=t,t.Argument=n,t.Command=i,t.CommanderError=a,t.Help=s,t.InvalidArgumentError=o,t.InvalidOptionArgumentError=o,t.Option=c},39297:(e,t,r)=>{const{InvalidArgumentError:n}=r(43666);t.Argument=class{constructor(e,t){switch(this.description=t||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e}this._name.length>3&&"..."===this._name.slice(-3)&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_concatValue(e,t){return t!==this.defaultValue&&Array.isArray(t)?t.concat(e):[e]}default(e,t){return this.defaultValue=e,this.defaultValueDescription=t,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(e,t)=>{if(!this.argChoices.includes(e))throw new n(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(e,t):e},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}},t.humanReadableArgName=function(e){const t=e.name()+(!0===e.variadic?"...":"");return e.required?"<"+t+">":"["+t+"]"}},23749:(e,t,r)=>{const n=r(24434).EventEmitter,i=r(35317),a=r(16928),o=r(79896),s=r(932),{Argument:c,humanReadableArgName:l}=r(39297),{CommanderError:u}=r(43666),{Help:d}=r(13693),{Option:p,splitOptionFlags:f,DualOptions:m}=r(75019),{suggestSimilar:g}=r(87369);class _ extends n{constructor(e){super(),this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!0,this._args=[],this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=e||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._outputConfiguration={writeOut:e=>s.stdout.write(e),writeErr:e=>s.stderr.write(e),getOutHelpWidth:()=>s.stdout.isTTY?s.stdout.columns:void 0,getErrHelpWidth:()=>s.stderr.isTTY?s.stderr.columns:void 0,outputError:(e,t)=>t(e)},this._hidden=!1,this._hasHelpOption=!0,this._helpFlags="-h, --help",this._helpDescription="display help for command",this._helpShortFlag="-h",this._helpLongFlag="--help",this._addImplicitHelpCommand=void 0,this._helpCommandName="help",this._helpCommandnameAndArgs="help [command]",this._helpCommandDescription="display help for command",this._helpConfiguration={}}copyInheritedSettings(e){return this._outputConfiguration=e._outputConfiguration,this._hasHelpOption=e._hasHelpOption,this._helpFlags=e._helpFlags,this._helpDescription=e._helpDescription,this._helpShortFlag=e._helpShortFlag,this._helpLongFlag=e._helpLongFlag,this._helpCommandName=e._helpCommandName,this._helpCommandnameAndArgs=e._helpCommandnameAndArgs,this._helpCommandDescription=e._helpCommandDescription,this._helpConfiguration=e._helpConfiguration,this._exitCallback=e._exitCallback,this._storeOptionsAsProperties=e._storeOptionsAsProperties,this._combineFlagAndOptionalValue=e._combineFlagAndOptionalValue,this._allowExcessArguments=e._allowExcessArguments,this._enablePositionalOptions=e._enablePositionalOptions,this._showHelpAfterError=e._showHelpAfterError,this._showSuggestionAfterError=e._showSuggestionAfterError,this}command(e,t,r){let n=t,i=r;"object"==typeof n&&null!==n&&(i=n,n=null),i=i||{};const[,a,o]=e.match(/([^ ]+) *(.*)/),s=this.createCommand(a);return n&&(s.description(n),s._executableHandler=!0),i.isDefault&&(this._defaultCommandName=s._name),s._hidden=!(!i.noHelp&&!i.hidden),s._executableFile=i.executableFile||null,o&&s.arguments(o),this.commands.push(s),s.parent=this,s.copyInheritedSettings(this),n?this:s}createCommand(e){return new _(e)}createHelp(){return Object.assign(new d,this.configureHelp())}configureHelp(e){return void 0===e?this._helpConfiguration:(this._helpConfiguration=e,this)}configureOutput(e){return void 0===e?this._outputConfiguration:(Object.assign(this._outputConfiguration,e),this)}showHelpAfterError(e=!0){return"string"!=typeof e&&(e=!!e),this._showHelpAfterError=e,this}showSuggestionAfterError(e=!0){return this._showSuggestionAfterError=!!e,this}addCommand(e,t){if(!e._name)throw new Error("Command passed to .addCommand() must have a name\n- specify the name in Command constructor or using .name()");return(t=t||{}).isDefault&&(this._defaultCommandName=e._name),(t.noHelp||t.hidden)&&(e._hidden=!0),this.commands.push(e),e.parent=this,this}createArgument(e,t){return new c(e,t)}argument(e,t,r,n){const i=this.createArgument(e,t);return"function"==typeof r?i.default(n).argParser(r):i.default(r),this.addArgument(i),this}arguments(e){return e.split(/ +/).forEach((e=>{this.argument(e)})),this}addArgument(e){const t=this._args.slice(-1)[0];if(t&&t.variadic)throw new Error(`only the last argument can be variadic '${t.name()}'`);if(e.required&&void 0!==e.defaultValue&&void 0===e.parseArg)throw new Error(`a default value for a required argument is never used: '${e.name()}'`);return this._args.push(e),this}addHelpCommand(e,t){return!1===e?this._addImplicitHelpCommand=!1:(this._addImplicitHelpCommand=!0,"string"==typeof e&&(this._helpCommandName=e.split(" ")[0],this._helpCommandnameAndArgs=e),this._helpCommandDescription=t||this._helpCommandDescription),this}_hasImplicitHelpCommand(){return void 0===this._addImplicitHelpCommand?this.commands.length&&!this._actionHandler&&!this._findCommand("help"):this._addImplicitHelpCommand}hook(e,t){const r=["preSubcommand","preAction","postAction"];if(!r.includes(e))throw new Error(`Unexpected value for event passed to hook : '${e}'.\nExpecting one of '${r.join("', '")}'`);return this._lifeCycleHooks[e]?this._lifeCycleHooks[e].push(t):this._lifeCycleHooks[e]=[t],this}exitOverride(e){return this._exitCallback=e||(e=>{if("commander.executeSubCommandAsync"!==e.code)throw e}),this}_exit(e,t,r){this._exitCallback&&this._exitCallback(new u(e,t,r)),s.exit(e)}action(e){return this._actionHandler=t=>{const r=this._args.length,n=t.slice(0,r);return this._storeOptionsAsProperties?n[r]=this:n[r]=this.opts(),n.push(this),e.apply(this,n)},this}createOption(e,t){return new p(e,t)}addOption(e){const t=e.name(),r=e.attributeName();if(e.negate){const t=e.long.replace(/^--no-/,"--");this._findOption(t)||this.setOptionValueWithSource(r,void 0===e.defaultValue||e.defaultValue,"default")}else void 0!==e.defaultValue&&this.setOptionValueWithSource(r,e.defaultValue,"default");this.options.push(e);const n=(t,n,i)=>{null==t&&void 0!==e.presetArg&&(t=e.presetArg);const a=this.getOptionValue(r);if(null!==t&&e.parseArg)try{t=e.parseArg(t,a)}catch(e){if("commander.invalidArgument"===e.code){const t=`${n} ${e.message}`;this.error(t,{exitCode:e.exitCode,code:e.code})}throw e}else null!==t&&e.variadic&&(t=e._concatValue(t,a));null==t&&(t=!e.negate&&(!(!e.isBoolean()&&!e.optional)||"")),this.setOptionValueWithSource(r,t,i)};return this.on("option:"+t,(t=>{const r=`error: option '${e.flags}' argument '${t}' is invalid.`;n(t,r,"cli")})),e.envVar&&this.on("optionEnv:"+t,(t=>{const r=`error: option '${e.flags}' value '${t}' from env '${e.envVar}' is invalid.`;n(t,r,"env")})),this}_optionEx(e,t,r,n,i){if("object"==typeof t&&t instanceof p)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");const a=this.createOption(t,r);if(a.makeOptionMandatory(!!e.mandatory),"function"==typeof n)a.default(i).argParser(n);else if(n instanceof RegExp){const e=n;n=(t,r)=>{const n=e.exec(t);return n?n[0]:r},a.default(i).argParser(n)}else a.default(n);return this.addOption(a)}option(e,t,r,n){return this._optionEx({},e,t,r,n)}requiredOption(e,t,r,n){return this._optionEx({mandatory:!0},e,t,r,n)}combineFlagAndOptionalValue(e=!0){return this._combineFlagAndOptionalValue=!!e,this}allowUnknownOption(e=!0){return this._allowUnknownOption=!!e,this}allowExcessArguments(e=!0){return this._allowExcessArguments=!!e,this}enablePositionalOptions(e=!0){return this._enablePositionalOptions=!!e,this}passThroughOptions(e=!0){if(this._passThroughOptions=!!e,this.parent&&e&&!this.parent._enablePositionalOptions)throw new Error("passThroughOptions can not be used without turning on enablePositionalOptions for parent command(s)");return this}storeOptionsAsProperties(e=!0){if(this._storeOptionsAsProperties=!!e,this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");return this}getOptionValue(e){return this._storeOptionsAsProperties?this[e]:this._optionValues[e]}setOptionValue(e,t){return this.setOptionValueWithSource(e,t,void 0)}setOptionValueWithSource(e,t,r){return this._storeOptionsAsProperties?this[e]=t:this._optionValues[e]=t,this._optionValueSources[e]=r,this}getOptionValueSource(e){return this._optionValueSources[e]}getOptionValueSourceWithGlobals(e){let t;return v(this).forEach((r=>{void 0!==r.getOptionValueSource(e)&&(t=r.getOptionValueSource(e))})),t}_prepareUserArgs(e,t){if(void 0!==e&&!Array.isArray(e))throw new Error("first parameter to parse must be array or undefined");let r;switch(t=t||{},void 0===e&&(e=s.argv,s.versions&&s.versions.electron&&(t.from="electron")),this.rawArgs=e.slice(),t.from){case void 0:case"node":this._scriptPath=e[1],r=e.slice(2);break;case"electron":s.defaultApp?(this._scriptPath=e[1],r=e.slice(2)):r=e.slice(1);break;case"user":r=e.slice(0);break;default:throw new Error(`unexpected parse option { from: '${t.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",r}parse(e,t){const r=this._prepareUserArgs(e,t);return this._parseCommand([],r),this}async parseAsync(e,t){const r=this._prepareUserArgs(e,t);return await this._parseCommand([],r),this}_executeSubCommand(e,t){t=t.slice();let r=!1;const n=[".js",".ts",".tsx",".mjs",".cjs"];function c(e,t){const r=a.resolve(e,t);if(o.existsSync(r))return r;if(n.includes(a.extname(t)))return;const i=n.find((e=>o.existsSync(`${r}${e}`)));return i?`${r}${i}`:void 0}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let l,d=e._executableFile||`${this._name}-${e._name}`,p=this._executableDir||"";if(this._scriptPath){let e;try{e=o.realpathSync(this._scriptPath)}catch(t){e=this._scriptPath}p=a.resolve(a.dirname(e),p)}if(p){let t=c(p,d);if(!t&&!e._executableFile&&this._scriptPath){const r=a.basename(this._scriptPath,a.extname(this._scriptPath));r!==this._name&&(t=c(p,`${r}-${e._name}`))}d=t||d}if(r=n.includes(a.extname(d)),"win32"!==s.platform?r?(t.unshift(d),t=y(s.execArgv).concat(t),l=i.spawn(s.argv[0],t,{stdio:"inherit"})):l=i.spawn(d,t,{stdio:"inherit"}):(t.unshift(d),t=y(s.execArgv).concat(t),l=i.spawn(s.execPath,t,{stdio:"inherit"})),!l.killed){["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((e=>{s.on(e,(()=>{!1===l.killed&&null===l.exitCode&&l.kill(e)}))}))}const f=this._exitCallback;f?l.on("close",(()=>{f(new u(s.exitCode||0,"commander.executeSubCommandAsync","(close)"))})):l.on("close",s.exit.bind(s)),l.on("error",(t=>{if("ENOENT"===t.code){const t=p?`searched for local subcommand relative to directory '${p}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",r=`'${d}' does not exist\n - if '${e._name}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead\n - if the default executable name is not suitable, use the executableFile option to supply a custom name or path\n - ${t}`;throw new Error(r)}if("EACCES"===t.code)throw new Error(`'${d}' not executable`);if(f){const e=new u(1,"commander.executeSubCommandAsync","(error)");e.nestedError=t,f(e)}else s.exit(1)})),this.runningCommand=l}_dispatchSubcommand(e,t,r){const n=this._findCommand(e);let i;return n||this.help({error:!0}),i=this._chainOrCallSubCommandHook(i,n,"preSubcommand"),i=this._chainOrCall(i,(()=>{if(!n._executableHandler)return n._parseCommand(t,r);this._executeSubCommand(n,t.concat(r))})),i}_checkNumberOfArguments(){this._args.forEach(((e,t)=>{e.required&&null==this.args[t]&&this.missingArgument(e.name())})),this._args.length>0&&this._args[this._args.length-1].variadic||this.args.length>this._args.length&&this._excessArguments(this.args)}_processArguments(){const e=(e,t,r)=>{let n=t;if(null!==t&&e.parseArg)try{n=e.parseArg(t,r)}catch(r){if("commander.invalidArgument"===r.code){const n=`error: command-argument value '${t}' is invalid for argument '${e.name()}'. ${r.message}`;this.error(n,{exitCode:r.exitCode,code:r.code})}throw r}return n};this._checkNumberOfArguments();const t=[];this._args.forEach(((r,n)=>{let i=r.defaultValue;r.variadic?n<this.args.length?(i=this.args.slice(n),r.parseArg&&(i=i.reduce(((t,n)=>e(r,n,t)),r.defaultValue))):void 0===i&&(i=[]):n<this.args.length&&(i=this.args[n],r.parseArg&&(i=e(r,i,r.defaultValue))),t[n]=i})),this.processedArgs=t}_chainOrCall(e,t){return e&&e.then&&"function"==typeof e.then?e.then((()=>t())):t()}_chainOrCallHooks(e,t){let r=e;const n=[];return v(this).reverse().filter((e=>void 0!==e._lifeCycleHooks[t])).forEach((e=>{e._lifeCycleHooks[t].forEach((t=>{n.push({hookedCommand:e,callback:t})}))})),"postAction"===t&&n.reverse(),n.forEach((e=>{r=this._chainOrCall(r,(()=>e.callback(e.hookedCommand,this)))})),r}_chainOrCallSubCommandHook(e,t,r){let n=e;return void 0!==this._lifeCycleHooks[r]&&this._lifeCycleHooks[r].forEach((e=>{n=this._chainOrCall(n,(()=>e(this,t)))})),n}_parseCommand(e,t){const r=this.parseOptions(t);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(r.operands),t=r.unknown,this.args=e.concat(t),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),t);if(this._hasImplicitHelpCommand()&&e[0]===this._helpCommandName)return 1===e.length&&this.help(),this._dispatchSubcommand(e[1],[],[this._helpLongFlag]);if(this._defaultCommandName)return h(this,t),this._dispatchSubcommand(this._defaultCommandName,e,t);!this.commands.length||0!==this.args.length||this._actionHandler||this._defaultCommandName||this.help({error:!0}),h(this,r.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();const n=()=>{r.unknown.length>0&&this.unknownOption(r.unknown[0])},i=`command:${this.name()}`;if(this._actionHandler){let r;return n(),this._processArguments(),r=this._chainOrCallHooks(r,"preAction"),r=this._chainOrCall(r,(()=>this._actionHandler(this.processedArgs))),this.parent&&(r=this._chainOrCall(r,(()=>{this.parent.emit(i,e,t)}))),r=this._chainOrCallHooks(r,"postAction"),r}if(this.parent&&this.parent.listenerCount(i))n(),this._processArguments(),this.parent.emit(i,e,t);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,t);this.listenerCount("command:*")?this.emit("command:*",e,t):this.commands.length?this.unknownCommand():(n(),this._processArguments())}else this.commands.length?(n(),this.help({error:!0})):(n(),this._processArguments())}_findCommand(e){if(e)return this.commands.find((t=>t._name===e||t._aliases.includes(e)))}_findOption(e){return this.options.find((t=>t.is(e)))}_checkForMissingMandatoryOptions(){for(let e=this;e;e=e.parent)e.options.forEach((t=>{t.mandatory&&void 0===e.getOptionValue(t.attributeName())&&e.missingMandatoryOptionValue(t)}))}_checkForConflictingLocalOptions(){const e=this.options.filter((e=>{const t=e.attributeName();return void 0!==this.getOptionValue(t)&&"default"!==this.getOptionValueSource(t)}));e.filter((e=>e.conflictsWith.length>0)).forEach((t=>{const r=e.find((e=>t.conflictsWith.includes(e.attributeName())));r&&this._conflictingOption(t,r)}))}_checkForConflictingOptions(){for(let e=this;e;e=e.parent)e._checkForConflictingLocalOptions()}parseOptions(e){const t=[],r=[];let n=t;const i=e.slice();function a(e){return e.length>1&&"-"===e[0]}let o=null;for(;i.length;){const e=i.shift();if("--"===e){n===r&&n.push(e),n.push(...i);break}if(!o||a(e)){if(o=null,a(e)){const t=this._findOption(e);if(t){if(t.required){const e=i.shift();void 0===e&&this.optionMissingArgument(t),this.emit(`option:${t.name()}`,e)}else if(t.optional){let e=null;i.length>0&&!a(i[0])&&(e=i.shift()),this.emit(`option:${t.name()}`,e)}else this.emit(`option:${t.name()}`);o=t.variadic?t:null;continue}}if(e.length>2&&"-"===e[0]&&"-"!==e[1]){const t=this._findOption(`-${e[1]}`);if(t){t.required||t.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${t.name()}`,e.slice(2)):(this.emit(`option:${t.name()}`),i.unshift(`-${e.slice(2)}`));continue}}if(/^--[^=]+=/.test(e)){const t=e.indexOf("="),r=this._findOption(e.slice(0,t));if(r&&(r.required||r.optional)){this.emit(`option:${r.name()}`,e.slice(t+1));continue}}if(a(e)&&(n=r),(this._enablePositionalOptions||this._passThroughOptions)&&0===t.length&&0===r.length){if(this._findCommand(e)){t.push(e),i.length>0&&r.push(...i);break}if(e===this._helpCommandName&&this._hasImplicitHelpCommand()){t.push(e),i.length>0&&t.push(...i);break}if(this._defaultCommandName){r.push(e),i.length>0&&r.push(...i);break}}if(this._passThroughOptions){n.push(e),i.length>0&&n.push(...i);break}n.push(e)}else this.emit(`option:${o.name()}`,e)}return{operands:t,unknown:r}}opts(){if(this._storeOptionsAsProperties){const e={},t=this.options.length;for(let r=0;r<t;r++){const t=this.options[r].attributeName();e[t]=t===this._versionOptionName?this._version:this[t]}return e}return this._optionValues}optsWithGlobals(){return v(this).reduce(((e,t)=>Object.assign(e,t.opts())),{})}error(e,t){this._outputConfiguration.outputError(`${e}\n`,this._outputConfiguration.writeErr),"string"==typeof this._showHelpAfterError?this._outputConfiguration.writeErr(`${this._showHelpAfterError}\n`):this._showHelpAfterError&&(this._outputConfiguration.writeErr("\n"),this.outputHelp({error:!0}));const r=t||{},n=r.exitCode||1,i=r.code||"commander.error";this._exit(n,i,e)}_parseOptionsEnv(){this.options.forEach((e=>{if(e.envVar&&e.envVar in s.env){const t=e.attributeName();(void 0===this.getOptionValue(t)||["default","config","env"].includes(this.getOptionValueSource(t)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,s.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}}))}_parseOptionsImplied(){const e=new m(this.options),t=e=>void 0!==this.getOptionValue(e)&&!["default","implied"].includes(this.getOptionValueSource(e));this.options.filter((r=>void 0!==r.implied&&t(r.attributeName())&&e.valueFromOption(this.getOptionValue(r.attributeName()),r))).forEach((e=>{Object.keys(e.implied).filter((e=>!t(e))).forEach((t=>{this.setOptionValueWithSource(t,e.implied[t],"implied")}))}))}missingArgument(e){const t=`error: missing required argument '${e}'`;this.error(t,{code:"commander.missingArgument"})}optionMissingArgument(e){const t=`error: option '${e.flags}' argument missing`;this.error(t,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){const t=`error: required option '${e.flags}' not specified`;this.error(t,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,t){const r=e=>{const t=e.attributeName(),r=this.getOptionValue(t),n=this.options.find((e=>e.negate&&t===e.attributeName())),i=this.options.find((e=>!e.negate&&t===e.attributeName()));return n&&(void 0===n.presetArg&&!1===r||void 0!==n.presetArg&&r===n.presetArg)?n:i||e},n=e=>{const t=r(e),n=t.attributeName();return"env"===this.getOptionValueSource(n)?`environment variable '${t.envVar}'`:`option '${t.flags}'`},i=`error: ${n(e)} cannot be used with ${n(t)}`;this.error(i,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let t="";if(e.startsWith("--")&&this._showSuggestionAfterError){let r=[],n=this;do{const e=n.createHelp().visibleOptions(n).filter((e=>e.long)).map((e=>e.long));r=r.concat(e),n=n.parent}while(n&&!n._enablePositionalOptions);t=g(e,r)}const r=`error: unknown option '${e}'${t}`;this.error(r,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;const t=this._args.length,r=1===t?"":"s",n=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${t} argument${r} but got ${e.length}.`;this.error(n,{code:"commander.excessArguments"})}unknownCommand(){const e=this.args[0];let t="";if(this._showSuggestionAfterError){const r=[];this.createHelp().visibleCommands(this).forEach((e=>{r.push(e.name()),e.alias()&&r.push(e.alias())})),t=g(e,r)}const r=`error: unknown command '${e}'${t}`;this.error(r,{code:"commander.unknownCommand"})}version(e,t,r){if(void 0===e)return this._version;this._version=e,t=t||"-V, --version",r=r||"output the version number";const n=this.createOption(t,r);return this._versionOptionName=n.attributeName(),this.options.push(n),this.on("option:"+n.name(),(()=>{this._outputConfiguration.writeOut(`${e}\n`),this._exit(0,"commander.version",e)})),this}description(e,t){return void 0===e&&void 0===t?this._description:(this._description=e,t&&(this._argsDescription=t),this)}summary(e){return void 0===e?this._summary:(this._summary=e,this)}alias(e){if(void 0===e)return this._aliases[0];let t=this;if(0!==this.commands.length&&this.commands[this.commands.length-1]._executableHandler&&(t=this.commands[this.commands.length-1]),e===t._name)throw new Error("Command alias can't be the same as its name");return t._aliases.push(e),this}aliases(e){return void 0===e?this._aliases:(e.forEach((e=>this.alias(e))),this)}usage(e){if(void 0===e){if(this._usage)return this._usage;const e=this._args.map((e=>l(e)));return[].concat(this.options.length||this._hasHelpOption?"[options]":[],this.commands.length?"[command]":[],this._args.length?e:[]).join(" ")}return this._usage=e,this}name(e){return void 0===e?this._name:(this._name=e,this)}nameFromFilename(e){return this._name=a.basename(e,a.extname(e)),this}executableDir(e){return void 0===e?this._executableDir:(this._executableDir=e,this)}helpInformation(e){const t=this.createHelp();return void 0===t.helpWidth&&(t.helpWidth=e&&e.error?this._outputConfiguration.getErrHelpWidth():this._outputConfiguration.getOutHelpWidth()),t.formatHelp(this,t)}_getHelpContext(e){const t={error:!!(e=e||{}).error};let r;return r=t.error?e=>this._outputConfiguration.writeErr(e):e=>this._outputConfiguration.writeOut(e),t.write=e.write||r,t.command=this,t}outputHelp(e){let t;"function"==typeof e&&(t=e,e=void 0);const r=this._getHelpContext(e);v(this).reverse().forEach((e=>e.emit("beforeAllHelp",r))),this.emit("beforeHelp",r);let n=this.helpInformation(r);if(t&&(n=t(n),"string"!=typeof n&&!Buffer.isBuffer(n)))throw new Error("outputHelp callback must return a string or a Buffer");r.write(n),this.emit(this._helpLongFlag),this.emit("afterHelp",r),v(this).forEach((e=>e.emit("afterAllHelp",r)))}helpOption(e,t){if("boolean"==typeof e)return this._hasHelpOption=e,this;this._helpFlags=e||this._helpFlags,this._helpDescription=t||this._helpDescription;const r=f(this._helpFlags);return this._helpShortFlag=r.shortFlag,this._helpLongFlag=r.longFlag,this}help(e){this.outputHelp(e);let t=s.exitCode||0;0===t&&e&&"function"!=typeof e&&e.error&&(t=1),this._exit(t,"commander.help","(outputHelp)")}addHelpText(e,t){const r=["beforeAll","before","after","afterAll"];if(!r.includes(e))throw new Error(`Unexpected value for position to addHelpText.\nExpecting one of '${r.join("', '")}'`);const n=`${e}Help`;return this.on(n,(e=>{let r;r="function"==typeof t?t({error:e.error,command:e.command}):t,r&&e.write(`${r}\n`)})),this}}function h(e,t){e._hasHelpOption&&t.find((t=>t===e._helpLongFlag||t===e._helpShortFlag))&&(e.outputHelp(),e._exit(0,"commander.helpDisplayed","(outputHelp)"))}function y(e){return e.map((e=>{if(!e.startsWith("--inspect"))return e;let t,r,n="127.0.0.1",i="9229";return null!==(r=e.match(/^(--inspect(-brk)?)$/))?t=r[1]:null!==(r=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))?(t=r[1],/^\d+$/.test(r[3])?i=r[3]:n=r[3]):null!==(r=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))&&(t=r[1],n=r[3],i=r[4]),t&&"0"!==i?`${t}=${n}:${parseInt(i)+1}`:e}))}function v(e){const t=[];for(let r=e;r;r=r.parent)t.push(r);return t}t.Command=_},43666:(e,t)=>{class r extends Error{constructor(e,t,r){super(r),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=t,this.exitCode=e,this.nestedError=void 0}}t.CommanderError=r,t.InvalidArgumentError=class extends r{constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}},13693:(e,t,r)=>{const{humanReadableArgName:n}=r(39297);t.Help=class{constructor(){this.helpWidth=void 0,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}visibleCommands(e){const t=e.commands.filter((e=>!e._hidden));if(e._hasImplicitHelpCommand()){const[,r,n]=e._helpCommandnameAndArgs.match(/([^ ]+) *(.*)/),i=e.createCommand(r).helpOption(!1);i.description(e._helpCommandDescription),n&&i.arguments(n),t.push(i)}return this.sortSubcommands&&t.sort(((e,t)=>e.name().localeCompare(t.name()))),t}compareOptions(e,t){const r=e=>e.short?e.short.replace(/^-/,""):e.long.replace(/^--/,"");return r(e).localeCompare(r(t))}visibleOptions(e){const t=e.options.filter((e=>!e.hidden)),r=e._hasHelpOption&&e._helpShortFlag&&!e._findOption(e._helpShortFlag),n=e._hasHelpOption&&!e._findOption(e._helpLongFlag);if(r||n){let i;i=r?n?e.createOption(e._helpFlags,e._helpDescription):e.createOption(e._helpShortFlag,e._helpDescription):e.createOption(e._helpLongFlag,e._helpDescription),t.push(i)}return this.sortOptions&&t.sort(this.compareOptions),t}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];const t=[];for(let r=e.parent;r;r=r.parent){const e=r.options.filter((e=>!e.hidden));t.push(...e)}return this.sortOptions&&t.sort(this.compareOptions),t}visibleArguments(e){return e._argsDescription&&e._args.forEach((t=>{t.description=t.description||e._argsDescription[t.name()]||""})),e._args.find((e=>e.description))?e._args:[]}subcommandTerm(e){const t=e._args.map((e=>n(e))).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(t?" "+t:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,t){return t.visibleCommands(e).reduce(((e,r)=>Math.max(e,t.subcommandTerm(r).length)),0)}longestOptionTermLength(e,t){return t.visibleOptions(e).reduce(((e,r)=>Math.max(e,t.optionTerm(r).length)),0)}longestGlobalOptionTermLength(e,t){return t.visibleGlobalOptions(e).reduce(((e,r)=>Math.max(e,t.optionTerm(r).length)),0)}longestArgumentTermLength(e,t){return t.visibleArguments(e).reduce(((e,r)=>Math.max(e,t.argumentTerm(r).length)),0)}commandUsage(e){let t=e._name;e._aliases[0]&&(t=t+"|"+e._aliases[0]);let r="";for(let t=e.parent;t;t=t.parent)r=t.name()+" "+r;return r+t+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){const t=[];if(e.argChoices&&t.push(`choices: ${e.argChoices.map((e=>JSON.stringify(e))).join(", ")}`),void 0!==e.defaultValue){(e.required||e.optional||e.isBoolean()&&"boolean"==typeof e.defaultValue)&&t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`)}return void 0!==e.presetArg&&e.optional&&t.push(`preset: ${JSON.stringify(e.presetArg)}`),void 0!==e.envVar&&t.push(`env: ${e.envVar}`),t.length>0?`${e.description} (${t.join(", ")})`:e.description}argumentDescription(e){const t=[];if(e.argChoices&&t.push(`choices: ${e.argChoices.map((e=>JSON.stringify(e))).join(", ")}`),void 0!==e.defaultValue&&t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),t.length>0){const r=`(${t.join(", ")})`;return e.description?`${e.description} ${r}`:r}return e.description}formatHelp(e,t){const r=t.padWidth(e,t),n=t.helpWidth||80;function i(e,i){if(i){const a=`${e.padEnd(r+2)}${i}`;return t.wrap(a,n-2,r+2)}return e}function a(e){return e.join("\n").replace(/^/gm," ".repeat(2))}let o=[`Usage: ${t.commandUsage(e)}`,""];const s=t.commandDescription(e);s.length>0&&(o=o.concat([s,""]));const c=t.visibleArguments(e).map((e=>i(t.argumentTerm(e),t.argumentDescription(e))));c.length>0&&(o=o.concat(["Arguments:",a(c),""]));const l=t.visibleOptions(e).map((e=>i(t.optionTerm(e),t.optionDescription(e))));if(l.length>0&&(o=o.concat(["Options:",a(l),""])),this.showGlobalOptions){const r=t.visibleGlobalOptions(e).map((e=>i(t.optionTerm(e),t.optionDescription(e))));r.length>0&&(o=o.concat(["Global Options:",a(r),""]))}const u=t.visibleCommands(e).map((e=>i(t.subcommandTerm(e),t.subcommandDescription(e))));return u.length>0&&(o=o.concat(["Commands:",a(u),""])),o.join("\n")}padWidth(e,t){return Math.max(t.longestOptionTermLength(e,t),t.longestGlobalOptionTermLength(e,t),t.longestSubcommandTermLength(e,t),t.longestArgumentTermLength(e,t))}wrap(e,t,r,n=40){if(e.match(/[\n]\s+/))return e;const i=t-r;if(i<n)return e;const a=e.slice(0,r),o=e.slice(r),s=" ".repeat(r),c=new RegExp(".{1,"+(i-1)+"}([\\s​]|$)|[^\\s​]+?([\\s​]|$)","g");return a+(o.match(c)||[]).map(((e,t)=>("\n"===e.slice(-1)&&(e=e.slice(0,e.length-1)),(t>0?s:"")+e.trimRight()))).join("\n")}}},75019:(e,t,r)=>{const{InvalidArgumentError:n}=r(43666);function i(e){let t,r;const n=e.split(/[ |,]+/);return n.length>1&&!/^[[<]/.test(n[1])&&(t=n.shift()),r=n.shift(),!t&&/^-[^-]$/.test(r)&&(t=r,r=void 0),{shortFlag:t,longFlag:r}}t.Option=class{constructor(e,t){this.flags=e,this.description=t||"",this.required=e.includes("<"),this.optional=e.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(e),this.mandatory=!1;const r=i(e);this.short=r.shortFlag,this.long=r.longFlag,this.negate=!1,this.long&&(this.negate=this.long.startsWith("--no-")),this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0}default(e,t){return this.defaultValue=e,this.defaultValueDescription=t,this}preset(e){return this.presetArg=e,this}conflicts(e){return this.conflictsWith=this.conflictsWith.concat(e),this}implies(e){return this.implied=Object.assign(this.implied||{},e),this}env(e){return this.envVar=e,this}argParser(e){return this.parseArg=e,this}makeOptionMandatory(e=!0){return this.mandatory=!!e,this}hideHelp(e=!0){return this.hidden=!!e,this}_concatValue(e,t){return t!==this.defaultValue&&Array.isArray(t)?t.concat(e):[e]}choices(e){return this.argChoices=e.slice(),this.parseArg=(e,t)=>{if(!this.argChoices.includes(e))throw new n(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(e,t):e},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return this.name().replace(/^no-/,"").split("-").reduce(((e,t)=>e+t[0].toUpperCase()+t.slice(1)))}is(e){return this.short===e||this.long===e}isBoolean(){return!this.required&&!this.optional&&!this.negate}},t.splitOptionFlags=i,t.DualOptions=class{constructor(e){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,e.forEach((e=>{e.negate?this.negativeOptions.set(e.attributeName(),e):this.positiveOptions.set(e.attributeName(),e)})),this.negativeOptions.forEach(((e,t)=>{this.positiveOptions.has(t)&&this.dualOptions.add(t)}))}valueFromOption(e,t){const r=t.attributeName();if(!this.dualOptions.has(r))return!0;const n=this.negativeOptions.get(r).presetArg,i=void 0!==n&&n;return t.negate===(i===e)}}},87369:(e,t)=>{const r=3;t.suggestSimilar=function(e,t){if(!t||0===t.length)return"";t=Array.from(new Set(t));const n=e.startsWith("--");n&&(e=e.slice(2),t=t.map((e=>e.slice(2))));let i=[],a=r;return t.forEach((t=>{if(t.length<=1)return;const n=function(e,t){if(Math.abs(e.length-t.length)>r)return Math.max(e.length,t.length);const n=[];for(let t=0;t<=e.length;t++)n[t]=[t];for(let e=0;e<=t.length;e++)n[0][e]=e;for(let r=1;r<=t.length;r++)for(let i=1;i<=e.length;i++){let a=1;a=e[i-1]===t[r-1]?0:1,n[i][r]=Math.min(n[i-1][r]+1,n[i][r-1]+1,n[i-1][r-1]+a),i>1&&r>1&&e[i-1]===t[r-2]&&e[i-2]===t[r-1]&&(n[i][r]=Math.min(n[i][r],n[i-2][r-2]+1))}return n[e.length][t.length]}(e,t),o=Math.max(e.length,t.length);(o-n)/o>.4&&(n<a?(a=n,i=[t]):n===a&&i.push(t))})),i.sort(((e,t)=>e.localeCompare(t))),n&&(i=i.map((e=>`--${e}`))),i.length>1?`\n(Did you mean one of ${i.join(", ")}?)`:1===i.length?`\n(Did you mean ${i[0]}?)`:""}},67634:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.util=t.tokenizers=t.transforms=t.inspect=t.stringify=t.parse=void 0;const a=r(70558),o=r(1339),s=r(29610),c=r(63409),l=r(5919),u=r(56945),d=r(81219),p=r(68646),f=r(72693),m=r(59192),g=r(98274);i(r(97140),t),t.parse=function(e,t={}){return(0,a.default)(t)(e)},t.stringify=(0,u.default)();var _=r(42237);Object.defineProperty(t,"inspect",{enumerable:!0,get:function(){return _.default}}),t.transforms={flow:m.flow,align:d.default,indent:p.default,crlf:f.default},t.tokenizers={tag:c.default,type:l.default,name:s.default,description:o.default},t.util={rewireSpecs:g.rewireSpecs,rewireSource:g.rewireSource,seedBlock:g.seedBlock,seedTokens:g.seedTokens}},66127:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=/^@\S+/;t.default=function({fence:e="```"}={}){const t=function(e){return"string"==typeof e?t=>t.split(e).length%2==0:e}(e),n=(e,r)=>t(e)?!r:r;return function(e){const t=[[]];let i=!1;for(const a of e)r.test(a.tokens.description)&&!i?t.push([a]):t[t.length-1].push(a),i=n(a.tokens.description,i);return t}}},70558:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(97140),i=r(98274),a=r(66127),o=r(89239),s=r(45377),c=r(63409),l=r(5919),u=r(29610),d=r(1339);t.default=function({startLine:e=0,fence:t="```",spacing:r="compact",markers:p=n.Markers,tokenizers:f=[(0,c.default)(),(0,l.default)(r),(0,u.default)(),(0,d.default)(r)]}={}){if(e<0||e%1>0)throw new Error("Invalid startLine");const m=(0,o.default)({startLine:e,markers:p}),g=(0,a.default)({fence:t}),_=(0,s.default)({tokenizers:f}),h=(0,d.getJoiner)(r);return function(e){const t=[];for(const r of(0,i.splitLines)(e)){const e=m(r);if(null===e)continue;const n=g(e),i=n.slice(1).map(_);t.push({description:h(n[0],p),tags:i,source:e,problems:i.reduce(((e,t)=>e.concat(t.problems)),[])})}return t}}},89239:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(97140),i=r(98274);t.default=function({startLine:e=0,markers:t=n.Markers}={}){let r=null,a=e;return function(e){let n=e;const o=(0,i.seedTokens)();if([o.lineEnd,n]=(0,i.splitCR)(n),[o.start,n]=(0,i.splitSpace)(n),null===r&&n.startsWith(t.start)&&!n.startsWith(t.nostart)&&(r=[],o.delimiter=n.slice(0,t.start.length),n=n.slice(t.start.length),[o.postDelimiter,n]=(0,i.splitSpace)(n)),null===r)return a++,null;const s=n.trimRight().endsWith(t.end);if(""===o.delimiter&&n.startsWith(t.delim)&&!n.startsWith(t.end)&&(o.delimiter=t.delim,n=n.slice(t.delim.length),[o.postDelimiter,n]=(0,i.splitSpace)(n)),s){const e=n.trimRight();o.end=n.slice(e.length-t.end.length),n=e.slice(0,-t.end.length)}if(o.description=n,r.push({number:a,source:e,tokens:o}),a++,s){const e=r.slice();return r=null,e}return null}}},45377:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(98274);t.default=function({tokenizers:e}){return function(t){var r;let i=(0,n.seedSpec)({source:t});for(const t of e)if(i=t(i),null===(r=i.problems[i.problems.length-1])||void 0===r?void 0:r.critical)break;return i}}},1339:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getJoiner=void 0;const n=r(97140);function i(e){return"compact"===e?a:"preserve"===e?c:e}function a(e,t=n.Markers){return e.map((({tokens:{description:e}})=>e.trim())).filter((e=>""!==e)).join(" ")}t.default=function(e="compact",t=n.Markers){const r=i(e);return e=>(e.description=r(e.source,t),e)},t.getJoiner=i;const o=(e,{tokens:t},r)=>""===t.type?e:r,s=({tokens:e})=>(""===e.delimiter?e.start:e.postDelimiter.slice(1))+e.description;function c(e,t=n.Markers){if(0===e.length)return"";""===e[0].tokens.description&&e[0].tokens.delimiter===t.start&&(e=e.slice(1));const r=e[e.length-1];return void 0!==r&&""===r.tokens.description&&r.tokens.end.endsWith(t.end)&&(e=e.slice(0,-1)),(e=e.slice(e.reduce(o,0))).map(s).join("\n")}},29610:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(98274);t.default=function(){const e=(e,{tokens:t},r)=>""===t.type?e:r;return t=>{const{tokens:r}=t.source[t.source.reduce(e,0)],i=r.description.trimLeft(),a=i.split('"');if(a.length>1&&""===a[0]&&a.length%2==1)return t.name=a[1],r.name=`"${a[1]}"`,[r.postName,r.description]=(0,n.splitSpace)(i.slice(r.name.length)),t;let o,s=0,c="",l=!1;for(const e of i){if(0===s&&(0,n.isSpace)(e))break;"["===e&&s++,"]"===e&&s--,c+=e}if(0!==s)return t.problems.push({code:"spec:name:unpaired-brackets",message:"unpaired brackets",line:t.source[0].number,critical:!0}),t;const u=c;if("["===c[0]&&"]"===c[c.length-1]){l=!0,c=c.slice(1,-1);const e=c.split("=");if(c=e[0].trim(),void 0!==e[1]&&(o=e.slice(1).join("=").trim()),""===c)return t.problems.push({code:"spec:name:empty-name",message:"empty name",line:t.source[0].number,critical:!0}),t;if(""===o)return t.problems.push({code:"spec:name:empty-default",message:"empty default value",line:t.source[0].number,critical:!0}),t;if(!((d=o)&&d.startsWith('"')&&d.endsWith('"'))&&/=(?!>)/.test(o))return t.problems.push({code:"spec:name:invalid-default",message:"invalid default value syntax",line:t.source[0].number,critical:!0}),t}var d;return t.optional=l,t.name=c,r.name=u,void 0!==o&&(t.default=o),[r.postName,r.description]=(0,n.splitSpace)(i.slice(r.name.length)),t}}},63409:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return e=>{const{tokens:t}=e.source[0],r=t.description.match(/\s*(@(\S+))(\s*)/);return null===r?(e.problems.push({code:"spec:tag:prefix",message:'tag should start with "@" symbol',line:e.source[0].number,critical:!0}),e):(t.tag=r[1],t.postTag=r[3],t.description=t.description.slice(r[0].length),e.tag=r[2],e)}}},5919:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(98274);t.default=function(e="compact"){const t=function(e){return"compact"===e?e=>e.map(i).join(""):"preserve"===e?e=>e.join("\n"):e}(e);return e=>{let r=0,i=[];for(const[t,{tokens:n}]of e.source.entries()){let a="";if(0===t&&"{"!==n.description[0])return e;for(const e of n.description)if("{"===e&&r++,"}"===e&&r--,a+=e,0===r)break;if(i.push([n,a]),0===r)break}if(0!==r)return e.problems.push({code:"spec:type:unpaired-curlies",message:"unpaired curlies",line:e.source[0].number,critical:!0}),e;const a=[],o=i[0][0].postDelimiter.length;for(const[e,[t,r]]of i.entries())t.type=r,e>0&&(t.type=t.postDelimiter.slice(o)+r,t.postDelimiter=t.postDelimiter.slice(0,o)),[t.postType,t.description]=(0,n.splitSpace)(t.description.slice(r.length)),a.push(t.type);return a[0]=a[0].slice(1),a[a.length-1]=a[a.length-1].slice(0,-1),e.type=t(a),e}};const i=e=>e.trim()},97140:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Markers=void 0,function(e){e.start="/**",e.nostart="/***",e.delim="*",e.end="*/"}(t.Markers||(t.Markers={}))},56945:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return e=>e.source.map((({tokens:e})=>function(e){return e.start+e.delimiter+e.postDelimiter+e.tag+e.postTag+e.type+e.postType+e.name+e.postName+e.description+e.end+e.lineEnd}(e))).join("\n")}},42237:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(98274),i={line:0,start:0,delimiter:0,postDelimiter:0,tag:0,postTag:0,name:0,postName:0,type:0,postType:0,description:0,end:0,lineEnd:0},a={lineEnd:"CR"},o=Object.keys(i),s=e=>(0,n.isSpace)(e)?`{${e.length}}`:e,c=e=>"|"+e.join("|")+"|",l=(e,t)=>Object.keys(t).map((r=>s(t[r]).padEnd(e[r])));t.default=function({source:e}){var t,r;if(0===e.length)return"";const n=Object.assign({},i);for(const e of o)n[e]=(null!==(t=a[e])&&void 0!==t?t:e).length;for(const{number:t,tokens:r}of e){n.line=Math.max(n.line,t.toString().length);for(const e in r)n[e]=Math.max(n[e],s(r[e]).length)}const u=[[],[]];for(const e of o)u[0].push((null!==(r=a[e])&&void 0!==r?r:e).padEnd(n[e]));for(const e of o)u[1].push("-".padEnd(n[e],"-"));for(const{number:t,tokens:r}of e){const e=t.toString().padStart(n.line);u.push([e,...l(n,r)])}return u.map(c).join("\n")}},81219:function(e,t,r){"use strict";var n=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r};Object.defineProperty(t,"__esModule",{value:!0});const i=r(97140),a=r(98274),o={start:0,tag:0,type:0,name:0},s=e=>"".padStart(e," ");t.default=function(e=i.Markers){let t,r=!1;function c(n){const i=Object.assign({},n.tokens);""!==i.tag&&(r=!0);const a=""===i.tag&&""===i.name&&""===i.type&&""===i.description;if(i.end===e.end&&a)return i.start=s(t.start+1),Object.assign(Object.assign({},n),{tokens:i});switch(i.delimiter){case e.start:i.start=s(t.start);break;case e.delim:i.start=s(t.start+1);break;default:i.delimiter="",i.start=s(t.start+2)}if(!r)return i.postDelimiter=""===i.description?"":" ",Object.assign(Object.assign({},n),{tokens:i});const o={delim:!1,tag:!1,type:!1,name:!1};return""===i.description&&(o.name=!0,i.postName="",""===i.name&&(o.type=!0,i.postType="",""===i.type&&(o.tag=!0,i.postTag="",""===i.tag&&(o.delim=!0)))),i.postDelimiter=o.delim?"":" ",o.tag||(i.postTag=s(t.tag-i.tag.length+1)),o.type||(i.postType=s(t.type-i.type.length+1)),o.name||(i.postName=s(t.name-i.name.length+1)),Object.assign(Object.assign({},n),{tokens:i})}return r=>{var{source:s}=r,l=n(r,["source"]);return t=s.reduce(((e=i.Markers)=>(t,{tokens:r})=>({start:r.delimiter===e.start?r.start.length:t.start,tag:Math.max(t.tag,r.tag.length),type:Math.max(t.type,r.type.length),name:Math.max(t.name,r.name.length)}))(e),Object.assign({},o)),(0,a.rewireSource)(Object.assign(Object.assign({},l),{source:s.map(c)}))}}},72693:function(e,t,r){"use strict";var n=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r};Object.defineProperty(t,"__esModule",{value:!0});const i=r(98274);t.default=function(e){function t(t){return Object.assign(Object.assign({},t),{tokens:Object.assign(Object.assign({},t.tokens),{lineEnd:"LF"===e?"":"\r"})})}return e=>{var{source:r}=e,a=n(e,["source"]);return(0,i.rewireSource)(Object.assign(Object.assign({},a),{source:r.map(t)}))}}},68646:function(e,t,r){"use strict";var n=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r};Object.defineProperty(t,"__esModule",{value:!0});const i=r(98274);t.default=function(e){let t;const r=r=>{if(void 0===t){const n=e-r.length;t=n>0?(e=>{const t="".padStart(e," ");return e=>e+t})(n):(e=>t=>t.slice(e))(-n)}return t(r)},a=e=>Object.assign(Object.assign({},e),{tokens:Object.assign(Object.assign({},e.tokens),{start:r(e.tokens.start)})});return e=>{var{source:t}=e,r=n(e,["source"]);return(0,i.rewireSource)(Object.assign(Object.assign({},r),{source:t.map(a)}))}}},59192:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.flow=void 0,t.flow=function(...e){return t=>e.reduce(((e,t)=>t(e)),t)}},98274:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.rewireSpecs=t.rewireSource=t.seedTokens=t.seedSpec=t.seedBlock=t.splitLines=t.splitSpace=t.splitCR=t.hasCR=t.isSpace=void 0,t.isSpace=function(e){return/^\s+$/.test(e)},t.hasCR=function(e){return/\r$/.test(e)},t.splitCR=function(e){const t=e.match(/\r+$/);return null==t?["",e]:[e.slice(-t[0].length),e.slice(0,-t[0].length)]},t.splitSpace=function(e){const t=e.match(/^\s+/);return null==t?["",e]:[e.slice(0,t[0].length),e.slice(t[0].length)]},t.splitLines=function(e){return e.split(/\n/)},t.seedBlock=function(e={}){return Object.assign({description:"",tags:[],source:[],problems:[]},e)},t.seedSpec=function(e={}){return Object.assign({tag:"",name:"",type:"",optional:!1,description:"",problems:[],source:[]},e)},t.seedTokens=function(e={}){return Object.assign({start:"",delimiter:"",postDelimiter:"",tag:"",postTag:"",name:"",postName:"",type:"",postType:"",description:"",end:"",lineEnd:""},e)},t.rewireSource=function(e){const t=e.source.reduce(((e,t)=>e.set(t.number,t)),new Map);for(const r of e.tags)r.source=r.source.map((e=>t.get(e.number)));return e},t.rewireSpecs=function(e){const t=e.tags.reduce(((e,t)=>t.source.reduce(((e,t)=>e.set(t.number,t)),e)),new Map);return e.source=e.source.map((e=>t.get(e.number)||e)),e}},22268:(e,t,r)=>{"use strict";function n(e,...t){return(...r)=>e(...t,...r)}function i(e){return function(...t){var r=t.pop();return e.call(this,t,r)}}r.r(t),r.d(t,{all:()=>ge,allLimit:()=>_e,allSeries:()=>he,any:()=>rt,anyLimit:()=>nt,anySeries:()=>it,apply:()=>n,applyEach:()=>P,applyEachSeries:()=>O,asyncify:()=>d,auto:()=>L,autoInject:()=>q,cargo:()=>K,cargoQueue:()=>W,compose:()=>Y,concat:()=>Z,concatLimit:()=>Q,concatSeries:()=>ee,constant:()=>te,default:()=>_t,detect:()=>ne,detectLimit:()=>ie,detectSeries:()=>ae,dir:()=>se,doDuring:()=>ce,doUntil:()=>le,doWhilst:()=>ce,during:()=>ft,each:()=>de,eachLimit:()=>pe,eachOf:()=>A,eachOfLimit:()=>E,eachOfSeries:()=>I,eachSeries:()=>fe,ensureAsync:()=>me,every:()=>ge,everyLimit:()=>_e,everySeries:()=>he,filter:()=>ke,filterLimit:()=>xe,filterSeries:()=>Se,find:()=>ne,findLimit:()=>ie,findSeries:()=>ae,flatMap:()=>Z,flatMapLimit:()=>Q,flatMapSeries:()=>ee,foldl:()=>G,foldr:()=>Je,forEach:()=>de,forEachLimit:()=>pe,forEachOf:()=>A,forEachOfLimit:()=>E,forEachOfSeries:()=>I,forEachSeries:()=>fe,forever:()=>we,groupBy:()=>Ee,groupByLimit:()=>De,groupBySeries:()=>Te,inject:()=>G,log:()=>Ce,map:()=>N,mapLimit:()=>X,mapSeries:()=>F,mapValues:()=>Ne,mapValuesLimit:()=>Ae,mapValuesSeries:()=>Pe,memoize:()=>Ie,nextTick:()=>Fe,parallel:()=>Re,parallelLimit:()=>Me,priorityQueue:()=>Ue,queue:()=>Le,race:()=>qe,reduce:()=>G,reduceRight:()=>Je,reflect:()=>Ve,reflectAll:()=>He,reject:()=>We,rejectLimit:()=>Ge,rejectSeries:()=>$e,retry:()=>Ze,retryable:()=>et,select:()=>ke,selectLimit:()=>xe,selectSeries:()=>Se,seq:()=>$,series:()=>tt,setImmediate:()=>u,some:()=>rt,someLimit:()=>nt,someSeries:()=>it,sortBy:()=>at,timeout:()=>ot,times:()=>ct,timesLimit:()=>st,timesSeries:()=>lt,transform:()=>ut,tryEach:()=>dt,unmemoize:()=>pt,until:()=>mt,waterfall:()=>gt,whilst:()=>ft,wrapSync:()=>d});var a="function"==typeof queueMicrotask&&queueMicrotask,o="function"==typeof setImmediate&&setImmediate,s="object"==typeof process&&"function"==typeof process.nextTick;function c(e){setTimeout(e,0)}function l(e){return(t,...r)=>e((()=>t(...r)))}var u=l(a?queueMicrotask:o?setImmediate:s?process.nextTick:c);function d(e){return m(e)?function(...t){const r=t.pop();return p(e.apply(this,t),r)}:i((function(t,r){var n;try{n=e.apply(this,t)}catch(e){return r(e)}if(n&&"function"==typeof n.then)return p(n,r);r(null,n)}))}function p(e,t){return e.then((e=>{f(t,null,e)}),(e=>{f(t,e&&(e instanceof Error||e.message)?e:new Error(e))}))}function f(e,t,r){try{e(t,r)}catch(e){u((e=>{throw e}),e)}}function m(e){return"AsyncFunction"===e[Symbol.toStringTag]}function g(e){if("function"!=typeof e)throw new Error("expected a function");return m(e)?d(e):e}function _(e,t){if(t||(t=e.length),!t)throw new Error("arity is undefined");return function(...r){return"function"==typeof r[t-1]?e.apply(this,r):new Promise(((n,i)=>{r[t-1]=(e,...t)=>{if(e)return i(e);n(t.length>1?t:t[0])},e.apply(this,r)}))}}function h(e){return function(t,...r){return _((function(n){var i=this;return e(t,((e,t)=>{g(e).apply(i,r.concat(t))}),n)}))}}function y(e,t,r,n){t=t||[];var i=[],a=0,o=g(r);return e(t,((e,t,r)=>{var n=a++;o(e,((e,t)=>{i[n]=t,r(e)}))}),(e=>{n(e,i)}))}function v(e){return e&&"number"==typeof e.length&&e.length>=0&&e.length%1==0}var b={};function k(e){function t(...t){if(null!==e){var r=e;e=null,r.apply(this,t)}}return Object.assign(t,e),t}function x(e){if(v(e))return function(e){var t=-1,r=e.length;return function(){return++t<r?{value:e[t],key:t}:null}}(e);var t,r,n,i,a=function(e){return e[Symbol.iterator]&&e[Symbol.iterator]()}(e);return a?function(e){var t=-1;return function(){var r=e.next();return r.done?null:(t++,{value:r.value,key:t})}}(a):(r=(t=e)?Object.keys(t):[],n=-1,i=r.length,function e(){var a=r[++n];return"__proto__"===a?e():n<i?{value:t[a],key:a}:null})}function S(e){return function(...t){if(null===e)throw new Error("Callback was already called.");var r=e;e=null,r.apply(this,t)}}function w(e,t,r,n){let i=!1,a=!1,o=!1,s=0,c=0;function l(){s>=t||o||i||(o=!0,e.next().then((({value:e,done:t})=>{if(!a&&!i){if(o=!1,t)return i=!0,void(s<=0&&n(null));s++,r(e,c,u),c++,l()}})).catch(d))}function u(e,t){if(s-=1,!a)return e?d(e):!1===e?(i=!0,void(a=!0)):t===b||i&&s<=0?(i=!0,n(null)):void l()}function d(e){a||(o=!1,i=!0,n(e))}l()}var D=e=>(t,r,n)=>{if(n=k(n),e<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!t)return n(null);if("AsyncGenerator"===t[Symbol.toStringTag])return w(t,e,r,n);if(function(e){return"function"==typeof e[Symbol.asyncIterator]}(t))return w(t[Symbol.asyncIterator](),e,r,n);var i=x(t),a=!1,o=!1,s=0,c=!1;function l(e,t){if(!o)if(s-=1,e)a=!0,n(e);else if(!1===e)a=!0,o=!0;else{if(t===b||a&&s<=0)return a=!0,n(null);c||u()}}function u(){for(c=!0;s<e&&!a;){var t=i();if(null===t)return a=!0,void(s<=0&&n(null));s+=1,r(t.value,t.key,S(l))}c=!1}u()};var E=_((function(e,t,r,n){return D(t)(e,g(r),n)}),4);function T(e,t,r){r=k(r);var n=0,i=0,{length:a}=e,o=!1;function s(e,t){!1===e&&(o=!0),!0!==o&&(e?r(e):++i!==a&&t!==b||r(null))}for(0===a&&r(null);n<a;n++)t(e[n],n,S(s))}function C(e,t,r){return E(e,1/0,t,r)}var A=_((function(e,t,r){return(v(e)?T:C)(e,g(t),r)}),3);var N=_((function(e,t,r){return y(A,e,t,r)}),3),P=h(N);var I=_((function(e,t,r){return E(e,1,t,r)}),3);var F=_((function(e,t,r){return y(I,e,t,r)}),3),O=h(F);const R=Symbol("promiseCallback");function M(){let e,t;function r(r,...n){if(r)return t(r);e(n.length>1?n:n[0])}return r[R]=new Promise(((r,n)=>{e=r,t=n})),r}function L(e,t,r){"number"!=typeof t&&(r=t,t=null),r=k(r||M());var n=Object.keys(e).length;if(!n)return r(null);t||(t=n);var i={},a=0,o=!1,s=!1,c=Object.create(null),l=[],u=[],d={};function p(e,t){l.push((()=>function(e,t){if(s)return;var n=S(((t,...n)=>{if(a--,!1!==t)if(n.length<2&&([n]=n),t){var l={};if(Object.keys(i).forEach((e=>{l[e]=i[e]})),l[e]=n,s=!0,c=Object.create(null),o)return;r(t,l)}else i[e]=n,(c[e]||[]).forEach((e=>e())),f();else o=!0}));a++;var l=g(t[t.length-1]);t.length>1?l(i,n):l(n)}(e,t)))}function f(){if(!o){if(0===l.length&&0===a)return r(null,i);for(;l.length&&a<t;){l.shift()()}}}function m(t){var r=[];return Object.keys(e).forEach((n=>{const i=e[n];Array.isArray(i)&&i.indexOf(t)>=0&&r.push(n)})),r}return Object.keys(e).forEach((t=>{var r=e[t];if(!Array.isArray(r))return p(t,[r]),void u.push(t);var n=r.slice(0,r.length-1),i=n.length;if(0===i)return p(t,r),void u.push(t);d[t]=i,n.forEach((a=>{if(!e[a])throw new Error("async.auto task `"+t+"` has a non-existent dependency `"+a+"` in "+n.join(", "));!function(e,t){var r=c[e];r||(r=c[e]=[]);r.push(t)}(a,(()=>{0===--i&&p(t,r)}))}))})),function(){var e=0;for(;u.length;)e++,m(u.pop()).forEach((e=>{0==--d[e]&&u.push(e)}));if(e!==n)throw new Error("async.auto cannot execute tasks due to a recursive dependency")}(),f(),r[R]}var j=/^(?:async\s+)?(?:function)?\s*\w*\s*\(\s*([^)]+)\s*\)(?:\s*{)/,B=/^(?:async\s+)?\(?\s*([^)=]+)\s*\)?(?:\s*=>)/,z=/,/,U=/(=.+)?(\s*)$/;function q(e,t){var r={};return Object.keys(e).forEach((t=>{var n,i=e[t],a=m(i),o=!a&&1===i.length||a&&0===i.length;if(Array.isArray(i))n=[...i],i=n.pop(),r[t]=n.concat(n.length>0?s:i);else if(o)r[t]=i;else{if(n=function(e){const t=function(e){let t="",r=0,n=e.indexOf("*/");for(;r<e.length;)if("/"===e[r]&&"/"===e[r+1]){let t=e.indexOf("\n",r);r=-1===t?e.length:t}else if(-1!==n&&"/"===e[r]&&"*"===e[r+1]){let i=e.indexOf("*/",r);-1!==i?(r=i+2,n=e.indexOf("*/",r)):(t+=e[r],r++)}else t+=e[r],r++;return t}(e.toString());let r=t.match(j);if(r||(r=t.match(B)),!r)throw new Error("could not parse args in autoInject\nSource:\n"+t);let[,n]=r;return n.replace(/\s/g,"").split(z).map((e=>e.replace(U,"").trim()))}(i),0===i.length&&!a&&0===n.length)throw new Error("autoInject task functions require explicit parameters.");a||n.pop(),r[t]=n.concat(s)}function s(e,t){var r=n.map((t=>e[t]));r.push(t),g(i)(...r)}})),L(r,t)}class J{constructor(){this.head=this.tail=null,this.length=0}removeLink(e){return e.prev?e.prev.next=e.next:this.head=e.next,e.next?e.next.prev=e.prev:this.tail=e.prev,e.prev=e.next=null,this.length-=1,e}empty(){for(;this.head;)this.shift();return this}insertAfter(e,t){t.prev=e,t.next=e.next,e.next?e.next.prev=t:this.tail=t,e.next=t,this.length+=1}insertBefore(e,t){t.prev=e.prev,t.next=e,e.prev?e.prev.next=t:this.head=t,e.prev=t,this.length+=1}unshift(e){this.head?this.insertBefore(this.head,e):V(this,e)}push(e){this.tail?this.insertAfter(this.tail,e):V(this,e)}shift(){return this.head&&this.removeLink(this.head)}pop(){return this.tail&&this.removeLink(this.tail)}toArray(){return[...this]}*[Symbol.iterator](){for(var e=this.head;e;)yield e.data,e=e.next}remove(e){for(var t=this.head;t;){var{next:r}=t;e(t)&&this.removeLink(t),t=r}return this}}function V(e,t){e.length=1,e.head=e.tail=t}function H(e,t,r){if(null==t)t=1;else if(0===t)throw new RangeError("Concurrency must not be zero");var n=g(e),i=0,a=[];const o={error:[],drain:[],saturated:[],unsaturated:[],empty:[]};function s(e,t){return e?t?void(o[e]=o[e].filter((e=>e!==t))):o[e]=[]:Object.keys(o).forEach((e=>o[e]=[]))}function c(e,...t){o[e].forEach((e=>e(...t)))}var l=!1;function d(e,t,r,n){if(null!=n&&"function"!=typeof n)throw new Error("task callback must be a function");var i,a;function o(e,...t){return e?r?a(e):i():t.length<=1?i(t[0]):void i(t)}h.started=!0;var s=h._createTaskItem(e,r?o:n||o);if(t?h._tasks.unshift(s):h._tasks.push(s),l||(l=!0,u((()=>{l=!1,h.process()}))),r||!n)return new Promise(((e,t)=>{i=e,a=t}))}function p(e){return function(t,...r){i-=1;for(var n=0,o=e.length;n<o;n++){var s=e[n],l=a.indexOf(s);0===l?a.shift():l>0&&a.splice(l,1),s.callback(t,...r),null!=t&&c("error",t,s.data)}i<=h.concurrency-h.buffer&&c("unsaturated"),h.idle()&&c("drain"),h.process()}}function f(e){return!(0!==e.length||!h.idle())&&(u((()=>c("drain"))),!0)}const m=e=>t=>{if(!t)return new Promise(((t,r)=>{!function(e,t){const r=(...n)=>{s(e,r),t(...n)};o[e].push(r)}(e,((e,n)=>{if(e)return r(e);t(n)}))}));s(e),function(e,t){o[e].push(t)}(e,t)};var _=!1,h={_tasks:new J,_createTaskItem:(e,t)=>({data:e,callback:t}),*[Symbol.iterator](){yield*h._tasks[Symbol.iterator]()},concurrency:t,payload:r,buffer:t/4,started:!1,paused:!1,push(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!1,!1,t)))}return d(e,!1,!1,t)},pushAsync(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!1,!0,t)))}return d(e,!1,!0,t)},kill(){s(),h._tasks.empty()},unshift(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!0,!1,t)))}return d(e,!0,!1,t)},unshiftAsync(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!0,!0,t)))}return d(e,!0,!0,t)},remove(e){h._tasks.remove(e)},process(){if(!_){for(_=!0;!h.paused&&i<h.concurrency&&h._tasks.length;){var e=[],t=[],r=h._tasks.length;h.payload&&(r=Math.min(r,h.payload));for(var o=0;o<r;o++){var s=h._tasks.shift();e.push(s),a.push(s),t.push(s.data)}i+=1,0===h._tasks.length&&c("empty"),i===h.concurrency&&c("saturated");var l=S(p(e));n(t,l)}_=!1}},length:()=>h._tasks.length,running:()=>i,workersList:()=>a,idle:()=>h._tasks.length+i===0,pause(){h.paused=!0},resume(){!1!==h.paused&&(h.paused=!1,u(h.process))}};return Object.defineProperties(h,{saturated:{writable:!1,value:m("saturated")},unsaturated:{writable:!1,value:m("unsaturated")},empty:{writable:!1,value:m("empty")},drain:{writable:!1,value:m("drain")},error:{writable:!1,value:m("error")}}),h}function K(e,t){return H(e,1,t)}function W(e,t,r){return H(e,t,r)}var G=_((function(e,t,r,n){n=k(n);var i=g(r);return I(e,((e,r,n)=>{i(t,e,((e,r)=>{t=r,n(e)}))}),(e=>n(e,t)))}),4);function $(...e){var t=e.map(g);return function(...e){var r=this,n=e[e.length-1];return"function"==typeof n?e.pop():n=M(),G(t,e,((e,t,n)=>{t.apply(r,e.concat(((e,...t)=>{n(e,t)})))}),((e,t)=>n(e,...t))),n[R]}}function Y(...e){return $(...e.reverse())}var X=_((function(e,t,r,n){return y(D(t),e,r,n)}),4);var Q=_((function(e,t,r,n){var i=g(r);return X(e,t,((e,t)=>{i(e,((e,...r)=>e?t(e):t(e,r)))}),((e,t)=>{for(var r=[],i=0;i<t.length;i++)t[i]&&(r=r.concat(...t[i]));return n(e,r)}))}),4);var Z=_((function(e,t,r){return Q(e,1/0,t,r)}),3);var ee=_((function(e,t,r){return Q(e,1,t,r)}),3);function te(...e){return function(...t){return t.pop()(null,...e)}}function re(e,t){return(r,n,i,a)=>{var o,s=!1;const c=g(i);r(n,((r,n,i)=>{c(r,((n,a)=>n||!1===n?i(n):e(a)&&!o?(s=!0,o=t(!0,r),i(null,b)):void i()))}),(e=>{if(e)return a(e);a(null,s?o:t(!1))}))}}var ne=_((function(e,t,r){return re((e=>e),((e,t)=>t))(A,e,t,r)}),3);var ie=_((function(e,t,r,n){return re((e=>e),((e,t)=>t))(D(t),e,r,n)}),4);var ae=_((function(e,t,r){return re((e=>e),((e,t)=>t))(D(1),e,t,r)}),3);function oe(e){return(t,...r)=>g(t)(...r,((t,...r)=>{"object"==typeof console&&(t?console.error&&console.error(t):console[e]&&r.forEach((t=>console[e](t))))}))}var se=oe("dir");var ce=_((function(e,t,r){r=S(r);var n,i=g(e),a=g(t);function o(e,...t){if(e)return r(e);!1!==e&&(n=t,a(...t,s))}function s(e,t){return e?r(e):!1!==e?t?void i(o):r(null,...n):void 0}return s(null,!0)}),3);function le(e,t,r){const n=g(t);return ce(e,((...e)=>{const t=e.pop();n(...e,((e,r)=>t(e,!r)))}),r)}function ue(e){return(t,r,n)=>e(t,n)}var de=_((function(e,t,r){return A(e,ue(g(t)),r)}),3);var pe=_((function(e,t,r,n){return D(t)(e,ue(g(r)),n)}),4);var fe=_((function(e,t,r){return pe(e,1,t,r)}),3);function me(e){return m(e)?e:function(...t){var r=t.pop(),n=!0;t.push(((...e)=>{n?u((()=>r(...e))):r(...e)})),e.apply(this,t),n=!1}}var ge=_((function(e,t,r){return re((e=>!e),(e=>!e))(A,e,t,r)}),3);var _e=_((function(e,t,r,n){return re((e=>!e),(e=>!e))(D(t),e,r,n)}),4);var he=_((function(e,t,r){return re((e=>!e),(e=>!e))(I,e,t,r)}),3);function ye(e,t,r,n){var i=new Array(t.length);e(t,((e,t,n)=>{r(e,((e,r)=>{i[t]=!!r,n(e)}))}),(e=>{if(e)return n(e);for(var r=[],a=0;a<t.length;a++)i[a]&&r.push(t[a]);n(null,r)}))}function ve(e,t,r,n){var i=[];e(t,((e,t,n)=>{r(e,((r,a)=>{if(r)return n(r);a&&i.push({index:t,value:e}),n(r)}))}),(e=>{if(e)return n(e);n(null,i.sort(((e,t)=>e.index-t.index)).map((e=>e.value)))}))}function be(e,t,r,n){return(v(t)?ye:ve)(e,t,g(r),n)}var ke=_((function(e,t,r){return be(A,e,t,r)}),3);var xe=_((function(e,t,r,n){return be(D(t),e,r,n)}),4);var Se=_((function(e,t,r){return be(I,e,t,r)}),3);var we=_((function(e,t){var r=S(t),n=g(me(e));return function e(t){if(t)return r(t);!1!==t&&n(e)}()}),2);var De=_((function(e,t,r,n){var i=g(r);return X(e,t,((e,t)=>{i(e,((r,n)=>r?t(r):t(r,{key:n,val:e})))}),((e,t)=>{for(var r={},{hasOwnProperty:i}=Object.prototype,a=0;a<t.length;a++)if(t[a]){var{key:o}=t[a],{val:s}=t[a];i.call(r,o)?r[o].push(s):r[o]=[s]}return n(e,r)}))}),4);function Ee(e,t,r){return De(e,1/0,t,r)}function Te(e,t,r){return De(e,1,t,r)}var Ce=oe("log");var Ae=_((function(e,t,r,n){n=k(n);var i={},a=g(r);return D(t)(e,((e,t,r)=>{a(e,t,((e,n)=>{if(e)return r(e);i[t]=n,r(e)}))}),(e=>n(e,i)))}),4);function Ne(e,t,r){return Ae(e,1/0,t,r)}function Pe(e,t,r){return Ae(e,1,t,r)}function Ie(e,t=(e=>e)){var r=Object.create(null),n=Object.create(null),a=g(e),o=i(((e,i)=>{var o=t(...e);o in r?u((()=>i(null,...r[o]))):o in n?n[o].push(i):(n[o]=[i],a(...e,((e,...t)=>{e||(r[o]=t);var i=n[o];delete n[o];for(var a=0,s=i.length;a<s;a++)i[a](e,...t)})))}));return o.memo=r,o.unmemoized=e,o}var Fe=l(s?process.nextTick:o?setImmediate:c),Oe=_(((e,t,r)=>{var n=v(t)?[]:{};e(t,((e,t,r)=>{g(e)(((e,...i)=>{i.length<2&&([i]=i),n[t]=i,r(e)}))}),(e=>r(e,n)))}),3);function Re(e,t){return Oe(A,e,t)}function Me(e,t,r){return Oe(D(t),e,r)}function Le(e,t){var r=g(e);return H(((e,t)=>{r(e[0],t)}),t,1)}class je{constructor(){this.heap=[],this.pushCount=Number.MIN_SAFE_INTEGER}get length(){return this.heap.length}empty(){return this.heap=[],this}percUp(e){let t;for(;e>0&&ze(this.heap[e],this.heap[t=Be(e)]);){let r=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=r,e=t}}percDown(e){let t;for(;(t=1+(e<<1))<this.heap.length&&(t+1<this.heap.length&&ze(this.heap[t+1],this.heap[t])&&(t+=1),!ze(this.heap[e],this.heap[t]));){let r=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=r,e=t}}push(e){e.pushCount=++this.pushCount,this.heap.push(e),this.percUp(this.heap.length-1)}unshift(e){return this.heap.push(e)}shift(){let[e]=this.heap;return this.heap[0]=this.heap[this.heap.length-1],this.heap.pop(),this.percDown(0),e}toArray(){return[...this]}*[Symbol.iterator](){for(let e=0;e<this.heap.length;e++)yield this.heap[e].data}remove(e){let t=0;for(let r=0;r<this.heap.length;r++)e(this.heap[r])||(this.heap[t]=this.heap[r],t++);this.heap.splice(t);for(let e=Be(this.heap.length-1);e>=0;e--)this.percDown(e);return this}}function Be(e){return(e+1>>1)-1}function ze(e,t){return e.priority!==t.priority?e.priority<t.priority:e.pushCount<t.pushCount}function Ue(e,t){var r=Le(e,t),{push:n,pushAsync:i}=r;function a(e,t){return Array.isArray(e)?e.map((e=>({data:e,priority:t}))):{data:e,priority:t}}return r._tasks=new je,r._createTaskItem=({data:e,priority:t},r)=>({data:e,priority:t,callback:r}),r.push=function(e,t=0,r){return n(a(e,t),r)},r.pushAsync=function(e,t=0,r){return i(a(e,t),r)},delete r.unshift,delete r.unshiftAsync,r}var qe=_((function(e,t){if(t=k(t),!Array.isArray(e))return t(new TypeError("First argument to race must be an array of functions"));if(!e.length)return t();for(var r=0,n=e.length;r<n;r++)g(e[r])(t)}),2);function Je(e,t,r,n){var i=[...e].reverse();return G(i,t,r,n)}function Ve(e){var t=g(e);return i((function(e,r){return e.push(((e,...t)=>{let n={};if(e&&(n.error=e),t.length>0){var i=t;t.length<=1&&([i]=t),n.value=i}r(null,n)})),t.apply(this,e)}))}function He(e){var t;return Array.isArray(e)?t=e.map(Ve):(t={},Object.keys(e).forEach((r=>{t[r]=Ve.call(this,e[r])}))),t}function Ke(e,t,r,n){const i=g(r);return be(e,t,((e,t)=>{i(e,((e,r)=>{t(e,!r)}))}),n)}var We=_((function(e,t,r){return Ke(A,e,t,r)}),3);var Ge=_((function(e,t,r,n){return Ke(D(t),e,r,n)}),4);var $e=_((function(e,t,r){return Ke(I,e,t,r)}),3);function Ye(e){return function(){return e}}const Xe=5,Qe=0;function Ze(e,t,r){var n={times:Xe,intervalFunc:Ye(Qe)};if(arguments.length<3&&"function"==typeof e?(r=t||M(),t=e):(!function(e,t){if("object"==typeof t)e.times=+t.times||Xe,e.intervalFunc="function"==typeof t.interval?t.interval:Ye(+t.interval||Qe),e.errorFilter=t.errorFilter;else{if("number"!=typeof t&&"string"!=typeof t)throw new Error("Invalid arguments for async.retry");e.times=+t||Xe}}(n,e),r=r||M()),"function"!=typeof t)throw new Error("Invalid arguments for async.retry");var i=g(t),a=1;return function e(){i(((t,...i)=>{!1!==t&&(t&&a++<n.times&&("function"!=typeof n.errorFilter||n.errorFilter(t))?setTimeout(e,n.intervalFunc(a-1)):r(t,...i))}))}(),r[R]}function et(e,t){t||(t=e,e=null);let r=e&&e.arity||t.length;m(t)&&(r+=1);var n=g(t);return i(((t,i)=>{function a(e){n(...t,e)}return(t.length<r-1||null==i)&&(t.push(i),i=M()),e?Ze(e,a,i):Ze(a,i),i[R]}))}function tt(e,t){return Oe(I,e,t)}var rt=_((function(e,t,r){return re(Boolean,(e=>e))(A,e,t,r)}),3);var nt=_((function(e,t,r,n){return re(Boolean,(e=>e))(D(t),e,r,n)}),4);var it=_((function(e,t,r){return re(Boolean,(e=>e))(I,e,t,r)}),3);var at=_((function(e,t,r){var n=g(t);return N(e,((e,t)=>{n(e,((r,n)=>{if(r)return t(r);t(r,{value:e,criteria:n})}))}),((e,t)=>{if(e)return r(e);r(null,t.sort(i).map((e=>e.value)))}));function i(e,t){var r=e.criteria,n=t.criteria;return r<n?-1:r>n?1:0}}),3);function ot(e,t,r){var n=g(e);return i(((i,a)=>{var o,s=!1;i.push(((...e)=>{s||(a(...e),clearTimeout(o))})),o=setTimeout((function(){var t=e.name||"anonymous",n=new Error('Callback function "'+t+'" timed out.');n.code="ETIMEDOUT",r&&(n.info=r),s=!0,a(n)}),t),n(...i)}))}function st(e,t,r,n){var i=g(r);return X(function(e){for(var t=Array(e);e--;)t[e]=e;return t}(e),t,i,n)}function ct(e,t,r){return st(e,1/0,t,r)}function lt(e,t,r){return st(e,1,t,r)}function ut(e,t,r,n){arguments.length<=3&&"function"==typeof t&&(n=r,r=t,t=Array.isArray(e)?[]:{}),n=k(n||M());var i=g(r);return A(e,((e,r,n)=>{i(t,e,r,n)}),(e=>n(e,t))),n[R]}var dt=_((function(e,t){var r,n=null;return fe(e,((e,t)=>{g(e)(((e,...i)=>{if(!1===e)return t(e);i.length<2?[r]=i:r=i,n=e,t(e?null:{})}))}),(()=>t(n,r)))}));function pt(e){return(...t)=>(e.unmemoized||e)(...t)}var ft=_((function(e,t,r){r=S(r);var n=g(t),i=g(e),a=[];function o(e,...t){if(e)return r(e);a=t,!1!==e&&i(s)}function s(e,t){return e?r(e):!1!==e?t?void n(o):r(null,...a):void 0}return i(s)}),3);function mt(e,t,r){const n=g(e);return ft((e=>n(((t,r)=>e(t,!r)))),t,r)}var gt=_((function(e,t){if(t=k(t),!Array.isArray(e))return t(new Error("First argument to waterfall must be an array of functions"));if(!e.length)return t();var r=0;function n(t){g(e[r++])(...t,S(i))}function i(i,...a){if(!1!==i)return i||r===e.length?t(i,...a):void n(a)}n([])})),_t={apply:n,applyEach:P,applyEachSeries:O,asyncify:d,auto:L,autoInject:q,cargo:K,cargoQueue:W,compose:Y,concat:Z,concatLimit:Q,concatSeries:ee,constant:te,detect:ne,detectLimit:ie,detectSeries:ae,dir:se,doUntil:le,doWhilst:ce,each:de,eachLimit:pe,eachOf:A,eachOfLimit:E,eachOfSeries:I,eachSeries:fe,ensureAsync:me,every:ge,everyLimit:_e,everySeries:he,filter:ke,filterLimit:xe,filterSeries:Se,forever:we,groupBy:Ee,groupByLimit:De,groupBySeries:Te,log:Ce,map:N,mapLimit:X,mapSeries:F,mapValues:Ne,mapValuesLimit:Ae,mapValuesSeries:Pe,memoize:Ie,nextTick:Fe,parallel:Re,parallelLimit:Me,priorityQueue:Ue,queue:Le,race:qe,reduce:G,reduceRight:Je,reflect:Ve,reflectAll:He,reject:We,rejectLimit:Ge,rejectSeries:$e,retry:Ze,retryable:et,seq:$,series:tt,setImmediate:u,some:rt,someLimit:nt,someSeries:it,sortBy:at,timeout:ot,times:ct,timesLimit:st,timesSeries:lt,transform:ut,tryEach:dt,unmemoize:pt,until:mt,waterfall:gt,whilst:ft,all:ge,allLimit:_e,allSeries:he,any:rt,anyLimit:nt,anySeries:it,find:ne,findLimit:ie,findSeries:ae,flatMap:Z,flatMapLimit:Q,flatMapSeries:ee,forEach:de,forEachSeries:fe,forEachLimit:pe,forEachOf:A,forEachOfSeries:I,forEachOfLimit:E,inject:G,foldl:G,foldr:Je,select:ke,selectLimit:xe,selectSeries:Se,wrapSync:d,during:ft,doDuring:ce}},79429:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>M});var n={Space_Separator:/[\u1680\u2000-\u200A\u202F\u205F\u3000]/,ID_Start:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\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\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\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-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\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]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/,ID_Continue:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\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\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\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\u09FC\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\u0AF9-\u0AFF\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\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\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\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\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-\u191E\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\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\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\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-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\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-\uFE2F\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]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/},i={isSpaceSeparator:e=>"string"==typeof e&&n.Space_Separator.test(e),isIdStartChar:e=>"string"==typeof e&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||"$"===e||"_"===e||n.ID_Start.test(e)),isIdContinueChar:e=>"string"==typeof e&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e>="0"&&e<="9"||"$"===e||"_"===e||"‌"===e||"‍"===e||n.ID_Continue.test(e)),isDigit:e=>"string"==typeof e&&/[0-9]/.test(e),isHexDigit:e=>"string"==typeof e&&/[0-9A-Fa-f]/.test(e)};let a,o,s,c,l,u,d,p,f;function m(e,t,r){const n=e[t];if(null!=n&&"object"==typeof n)if(Array.isArray(n))for(let e=0;e<n.length;e++){const t=String(e),i=m(n,t,r);void 0===i?delete n[t]:Object.defineProperty(n,t,{value:i,writable:!0,enumerable:!0,configurable:!0})}else for(const e in n){const t=m(n,e,r);void 0===t?delete n[e]:Object.defineProperty(n,e,{value:t,writable:!0,enumerable:!0,configurable:!0})}return r.call(e,t,n)}let g,_,h,y,v;function b(){for(g="default",_="",h=!1,y=1;;){v=k();const e=S[g]();if(e)return e}}function k(){if(a[c])return String.fromCodePoint(a.codePointAt(c))}function x(){const e=k();return"\n"===e?(l++,u=0):e?u+=e.length:u++,e&&(c+=e.length),e}const S={default(){switch(v){case"\t":case"\v":case"\f":case" ":case" ":case"\ufeff":case"\n":case"\r":case"\u2028":case"\u2029":return void x();case"/":return x(),void(g="comment");case void 0:return x(),w("eof")}if(!i.isSpaceSeparator(v))return S[o]();x()},comment(){switch(v){case"*":return x(),void(g="multiLineComment");case"/":return x(),void(g="singleLineComment")}throw N(x())},multiLineComment(){switch(v){case"*":return x(),void(g="multiLineCommentAsterisk");case void 0:throw N(x())}x()},multiLineCommentAsterisk(){switch(v){case"*":return void x();case"/":return x(),void(g="default");case void 0:throw N(x())}x(),g="multiLineComment"},singleLineComment(){switch(v){case"\n":case"\r":case"\u2028":case"\u2029":return x(),void(g="default");case void 0:return x(),w("eof")}x()},value(){switch(v){case"{":case"[":return w("punctuator",x());case"n":return x(),D("ull"),w("null",null);case"t":return x(),D("rue"),w("boolean",!0);case"f":return x(),D("alse"),w("boolean",!1);case"-":case"+":return"-"===x()&&(y=-1),void(g="sign");case".":return _=x(),void(g="decimalPointLeading");case"0":return _=x(),void(g="zero");case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return _=x(),void(g="decimalInteger");case"I":return x(),D("nfinity"),w("numeric",1/0);case"N":return x(),D("aN"),w("numeric",NaN);case'"':case"'":return h='"'===x(),_="",void(g="string")}throw N(x())},identifierNameStartEscape(){if("u"!==v)throw N(x());x();const e=E();switch(e){case"$":case"_":break;default:if(!i.isIdStartChar(e))throw I()}_+=e,g="identifierName"},identifierName(){switch(v){case"$":case"_":case"‌":case"‍":return void(_+=x());case"\\":return x(),void(g="identifierNameEscape")}if(!i.isIdContinueChar(v))return w("identifier",_);_+=x()},identifierNameEscape(){if("u"!==v)throw N(x());x();const e=E();switch(e){case"$":case"_":case"‌":case"‍":break;default:if(!i.isIdContinueChar(e))throw I()}_+=e,g="identifierName"},sign(){switch(v){case".":return _=x(),void(g="decimalPointLeading");case"0":return _=x(),void(g="zero");case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return _=x(),void(g="decimalInteger");case"I":return x(),D("nfinity"),w("numeric",y*(1/0));case"N":return x(),D("aN"),w("numeric",NaN)}throw N(x())},zero(){switch(v){case".":return _+=x(),void(g="decimalPoint");case"e":case"E":return _+=x(),void(g="decimalExponent");case"x":case"X":return _+=x(),void(g="hexadecimal")}return w("numeric",0*y)},decimalInteger(){switch(v){case".":return _+=x(),void(g="decimalPoint");case"e":case"E":return _+=x(),void(g="decimalExponent")}if(!i.isDigit(v))return w("numeric",y*Number(_));_+=x()},decimalPointLeading(){if(i.isDigit(v))return _+=x(),void(g="decimalFraction");throw N(x())},decimalPoint(){switch(v){case"e":case"E":return _+=x(),void(g="decimalExponent")}return i.isDigit(v)?(_+=x(),void(g="decimalFraction")):w("numeric",y*Number(_))},decimalFraction(){switch(v){case"e":case"E":return _+=x(),void(g="decimalExponent")}if(!i.isDigit(v))return w("numeric",y*Number(_));_+=x()},decimalExponent(){switch(v){case"+":case"-":return _+=x(),void(g="decimalExponentSign")}if(i.isDigit(v))return _+=x(),void(g="decimalExponentInteger");throw N(x())},decimalExponentSign(){if(i.isDigit(v))return _+=x(),void(g="decimalExponentInteger");throw N(x())},decimalExponentInteger(){if(!i.isDigit(v))return w("numeric",y*Number(_));_+=x()},hexadecimal(){if(i.isHexDigit(v))return _+=x(),void(g="hexadecimalInteger");throw N(x())},hexadecimalInteger(){if(!i.isHexDigit(v))return w("numeric",y*Number(_));_+=x()},string(){switch(v){case"\\":return x(),void(_+=function(){switch(k()){case"b":return x(),"\b";case"f":return x(),"\f";case"n":return x(),"\n";case"r":return x(),"\r";case"t":return x(),"\t";case"v":return x(),"\v";case"0":if(x(),i.isDigit(k()))throw N(x());return"\0";case"x":return x(),function(){let e="",t=k();if(!i.isHexDigit(t))throw N(x());if(e+=x(),t=k(),!i.isHexDigit(t))throw N(x());return e+=x(),String.fromCodePoint(parseInt(e,16))}();case"u":return x(),E();case"\n":case"\u2028":case"\u2029":return x(),"";case"\r":return x(),"\n"===k()&&x(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case void 0:throw N(x())}return x()}());case'"':return h?(x(),w("string",_)):void(_+=x());case"'":return h?void(_+=x()):(x(),w("string",_));case"\n":case"\r":throw N(x());case"\u2028":case"\u2029":!function(e){console.warn(`JSON5: '${F(e)}' in strings is not valid ECMAScript; consider escaping`)}(v);break;case void 0:throw N(x())}_+=x()},start(){switch(v){case"{":case"[":return w("punctuator",x())}g="value"},beforePropertyName(){switch(v){case"$":case"_":return _=x(),void(g="identifierName");case"\\":return x(),void(g="identifierNameStartEscape");case"}":return w("punctuator",x());case'"':case"'":return h='"'===x(),void(g="string")}if(i.isIdStartChar(v))return _+=x(),void(g="identifierName");throw N(x())},afterPropertyName(){if(":"===v)return w("punctuator",x());throw N(x())},beforePropertyValue(){g="value"},afterPropertyValue(){switch(v){case",":case"}":return w("punctuator",x())}throw N(x())},beforeArrayValue(){if("]"===v)return w("punctuator",x());g="value"},afterArrayValue(){switch(v){case",":case"]":return w("punctuator",x())}throw N(x())},end(){throw N(x())}};function w(e,t){return{type:e,value:t,line:l,column:u}}function D(e){for(const t of e){if(k()!==t)throw N(x());x()}}function E(){let e="",t=4;for(;t-- >0;){const t=k();if(!i.isHexDigit(t))throw N(x());e+=x()}return String.fromCodePoint(parseInt(e,16))}const T={start(){if("eof"===d.type)throw P();C()},beforePropertyName(){switch(d.type){case"identifier":case"string":return p=d.value,void(o="afterPropertyName");case"punctuator":return void A();case"eof":throw P()}},afterPropertyName(){if("eof"===d.type)throw P();o="beforePropertyValue"},beforePropertyValue(){if("eof"===d.type)throw P();C()},beforeArrayValue(){if("eof"===d.type)throw P();"punctuator"!==d.type||"]"!==d.value?C():A()},afterPropertyValue(){if("eof"===d.type)throw P();switch(d.value){case",":return void(o="beforePropertyName");case"}":A()}},afterArrayValue(){if("eof"===d.type)throw P();switch(d.value){case",":return void(o="beforeArrayValue");case"]":A()}},end(){}};function C(){let e;switch(d.type){case"punctuator":switch(d.value){case"{":e={};break;case"[":e=[]}break;case"null":case"boolean":case"numeric":case"string":e=d.value}if(void 0===f)f=e;else{const t=s[s.length-1];Array.isArray(t)?t.push(e):Object.defineProperty(t,p,{value:e,writable:!0,enumerable:!0,configurable:!0})}if(null!==e&&"object"==typeof e)s.push(e),o=Array.isArray(e)?"beforeArrayValue":"beforePropertyName";else{const e=s[s.length-1];o=null==e?"end":Array.isArray(e)?"afterArrayValue":"afterPropertyValue"}}function A(){s.pop();const e=s[s.length-1];o=null==e?"end":Array.isArray(e)?"afterArrayValue":"afterPropertyValue"}function N(e){return O(void 0===e?`JSON5: invalid end of input at ${l}:${u}`:`JSON5: invalid character '${F(e)}' at ${l}:${u}`)}function P(){return O(`JSON5: invalid end of input at ${l}:${u}`)}function I(){return u-=5,O(`JSON5: invalid identifier character at ${l}:${u}`)}function F(e){const t={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};if(t[e])return t[e];if(e<" "){const t=e.charCodeAt(0).toString(16);return"\\x"+("00"+t).substring(t.length)}return e}function O(e){const t=new SyntaxError(e);return t.lineNumber=l,t.columnNumber=u,t}const R={parse:function(e,t){a=String(e),o="start",s=[],c=0,l=1,u=0,d=void 0,p=void 0,f=void 0;do{d=b(),T[o]()}while("eof"!==d.type);return"function"==typeof t?m({"":f},"",t):f},stringify:function(e,t,r){const n=[];let a,o,s,c="",l="";if(null==t||"object"!=typeof t||Array.isArray(t)||(r=t.space,s=t.quote,t=t.replacer),"function"==typeof t)o=t;else if(Array.isArray(t)){a=[];for(const e of t){let t;"string"==typeof e?t=e:("number"==typeof e||e instanceof String||e instanceof Number)&&(t=String(e)),void 0!==t&&a.indexOf(t)<0&&a.push(t)}}return r instanceof Number?r=Number(r):r instanceof String&&(r=String(r)),"number"==typeof r?r>0&&(r=Math.min(10,Math.floor(r)),l=" ".substr(0,r)):"string"==typeof r&&(l=r.substr(0,10)),u("",{"":e});function u(e,t){let r=t[e];switch(null!=r&&("function"==typeof r.toJSON5?r=r.toJSON5(e):"function"==typeof r.toJSON&&(r=r.toJSON(e))),o&&(r=o.call(t,e,r)),r instanceof Number?r=Number(r):r instanceof String?r=String(r):r instanceof Boolean&&(r=r.valueOf()),r){case null:return"null";case!0:return"true";case!1:return"false"}return"string"==typeof r?d(r):"number"==typeof r?String(r):"object"==typeof r?Array.isArray(r)?function(e){if(n.indexOf(e)>=0)throw TypeError("Converting circular structure to JSON5");n.push(e);let t=c;c+=l;let r,i=[];for(let t=0;t<e.length;t++){const r=u(String(t),e);i.push(void 0!==r?r:"null")}if(0===i.length)r="[]";else if(""===l){r="["+i.join(",")+"]"}else{let e=",\n"+c,n=i.join(e);r="[\n"+c+n+",\n"+t+"]"}return n.pop(),c=t,r}(r):function(e){if(n.indexOf(e)>=0)throw TypeError("Converting circular structure to JSON5");n.push(e);let t=c;c+=l;let r,i=a||Object.keys(e),o=[];for(const t of i){const r=u(t,e);if(void 0!==r){let e=p(t)+":";""!==l&&(e+=" "),e+=r,o.push(e)}}if(0===o.length)r="{}";else{let e;if(""===l)e=o.join(","),r="{"+e+"}";else{let n=",\n"+c;e=o.join(n),r="{\n"+c+e+",\n"+t+"}"}}return n.pop(),c=t,r}(r):void 0}function d(e){const t={"'":.1,'"':.2},r={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};let n="";for(let a=0;a<e.length;a++){const o=e[a];switch(o){case"'":case'"':t[o]++,n+=o;continue;case"\0":if(i.isDigit(e[a+1])){n+="\\x00";continue}}if(r[o])n+=r[o];else if(o<" "){let e=o.charCodeAt(0).toString(16);n+="\\x"+("00"+e).substring(e.length)}else n+=o}const a=s||Object.keys(t).reduce(((e,r)=>t[e]<t[r]?e:r));return n=n.replace(new RegExp(a,"g"),r[a]),a+n+a}function p(e){if(0===e.length)return d(e);const t=String.fromCodePoint(e.codePointAt(0));if(!i.isIdStartChar(t))return d(e);for(let r=t.length;r<e.length;r++)if(!i.isIdContinueChar(String.fromCodePoint(e.codePointAt(r))))return d(e);return e}}};const M=R},63598:e=>{"use strict";e.exports=JSON.parse('{"data":[{"filePath":"@internal/component/ets/ability_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/action_sheet.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/alert_dialog.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/alphabet_indexer.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/animator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/badge.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/blank.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/calendar.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/calendar_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/canvas.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/checkbox.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/checkboxgroup.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/circle.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/column.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/column_split.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/common.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/common_ts_ets_api.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/container_span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/context_menu.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/counter.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/custom_dialog_controller.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/data_panel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/date_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/divider.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/effect_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/ellipse.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/embedded_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/enums.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/flex.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/flow_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/folder_stack.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/form_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/form_link.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/for_each.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/gauge.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/gesture.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/gridItem.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid_col.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid_container.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid_row.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/hyperlink.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image_animator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image_common.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image_span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/inspector.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/lazy_for_each.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/line.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/list.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/list_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/list_item_group.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/loading_progress.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/location_button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/marquee.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/matrix2d.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/media_cached_image.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/menu.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/menu_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/menu_item_group.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/navigation.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/navigator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/nav_destination.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/nav_router.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/node_container.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/page_transition.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/panel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/particle.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/paste_button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/path.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/pattern_lock.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/plugin_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/polygon.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/polyline.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/progress.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/qrcode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/radio.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rating.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rect.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/refresh.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/relative_container.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/remote_window.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rich_editor.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rich_text.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/root_scene.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/row.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/row_split.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/save_button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/screen.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/scroll.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/scroll_bar.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/search.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/security_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/select.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/shape.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/sidebar.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/slider.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/stack.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/state_management.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/stepper.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/stepper_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/styled_string.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/swiper.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/symbolglyph.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/symbol_span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/tabs.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/tab_content.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_area.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_clock.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_common.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_input.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_timer.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/time_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/toggle.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/ui_extension_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/units.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/video.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/water_flow.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/web.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@internal/component/ets/window_scene.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/xcomponent.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/ets/global.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/ets/global.d.ts","kitName":"ArkUI","subSystem":"公共基础类库"},{"filePath":"@internal/ets/lifecycle.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.ability.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.dataUriUtils.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.errorCode.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.featureAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.particleAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.particleAbility.d.ts","kitName":"AbilityKit","subSystem":"资源调度"},{"filePath":"@ohos.ability.wantConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.abilityAccessCtrl.d.ts","kitName":"AbilityKit","subSystem":"安全基础能力"},{"filePath":"@ohos.accessibility.config.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.accessibility.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.accessibility.GesturePath.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.accessibility.GesturePoint.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.account.appAccount.d.ts","kitName":"BasicServicesKit","subSystem":"账号"},{"filePath":"@ohos.account.distributedAccount.d.ts","kitName":"BasicServicesKit","subSystem":"账号"},{"filePath":"@ohos.account.osAccount.d.ts","kitName":"BasicServicesKit","subSystem":"账号"},{"filePath":"@ohos.advertising.AdComponent.d.ets","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.advertising.AdsServiceExtensionAbility.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.advertising.AutoAdComponent.d.ets","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.advertising.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.ai.intelligentVoice.d.ts","kitName":"MindSporeLiteKit","subSystem":"AI业务"},{"filePath":"@ohos.ai.mindSporeLite.d.ts","kitName":"MindSporeLiteKit","subSystem":"AI业务"},{"filePath":"@ohos.animation.windowAnimationManager.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.animator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.app.ability.Ability.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AbilityConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.abilityDelegatorRegistry.d.ts","kitName":"TestKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AbilityLifecycleCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.abilityManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AbilityStage.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ActionExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ApplicationStateChangeCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.appManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.appRecovery.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AtomicServiceOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AutoFillExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.autoFillManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.autoStartupManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ChildProcess.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.childProcessManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.common.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.Configuration.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ConfigurationConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.contextConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.dataUriUtils.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.dialogRequest.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.dialogSession.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.DriverExtensionAbility.d.ts","kitName":"DriverDevelopmentKit","subSystem":"驱动"},{"filePath":"@ohos.app.ability.EmbeddableUIAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.EmbeddedUIExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.EnvironmentCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.errorManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.insightIntent.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.InsightIntentContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.insightIntentDriver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.InsightIntentExecutor.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.MediaControlExtensionAbility.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.app.ability.missionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.OpenLinkOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.PrintExtensionAbility.d.ts","kitName":"BasicServicesKit","subSystem":"打印"},{"filePath":"@ohos.app.ability.quickFixManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ServiceExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ShareExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.StartOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UIAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UIExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UIExtensionContentSession.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UserAuthExtensionAbility.d.ts","kitName":"UserAuthenticationKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.VpnExtensionAbility.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.Want.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.wantAgent.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.wantConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupListener.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.businessAbilityRouter.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formAgent.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formBindingData.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.FormExtensionAbility.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formHost.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formInfo.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formObserver.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formProvider.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.abilityDelegatorRegistry.d.ts","kitName":"TestKit","subSystem":"元能力"},{"filePath":"@ohos.application.abilityManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.AccessibilityExtensionAbility.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.application.appManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.BackupExtensionAbility.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.application.Configuration.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.ConfigurationConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.DataShareExtensionAbility.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.application.formBindingData.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formError.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formHost.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formInfo.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formProvider.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.missionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.StaticSubscriberExtensionAbility.d.ts","kitName":"BasicServicesKit","subSystem":"元能力"},{"filePath":"@ohos.application.StaticSubscriberExtensionContext.d.ts","kitName":"BasicServicesKit","subSystem":"元能力"},{"filePath":"@ohos.application.testRunner.d.ts","kitName":"TestKit","subSystem":"元能力"},{"filePath":"@ohos.application.uriPermissionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.Want.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.WindowExtensionAbility.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.arkui.advanced.Chip.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ChipGroup.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ComposeListItem.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ComposeTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Counter.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Dialog.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.EditableTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ExceptionPrompt.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Filter.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.GridObjectSortComponent.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Popup.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ProgressButton.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SegmentButton.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SelectionMenu.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SelectTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SplitLayout.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SubHeader.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SwipeRefresher.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.TabTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ToolBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.TreeView.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.componentSnapshot.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.componentUtils.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.dragController.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.drawableDescriptor.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.inspector.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.observer.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.performanceMonitor.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.shape.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.UIContext.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.UIContext.d.ts","kitName":"ArkUI","subSystem":"元能力"},{"filePath":"@ohos.arkui.uiExtension.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.backgroundTaskManager.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.base.d.ts","kitName":"BasicServicesKit","subSystem":"SDK"},{"filePath":"@ohos.batteryInfo.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.batteryStatistics.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.bluetooth.a2dp.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.access.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.baseProfile.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.ble.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.connection.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.constant.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.hfp.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.hid.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.map.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.pan.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.pbap.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.socket.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.wearDetection.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetoothManager.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.brightness.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.buffer.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.bundle.appControl.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.bundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.bundleMonitor.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.bundleResourceManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.defaultAppManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.distributedBundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.freeInstall.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.innerBundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.installer.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.launcherBundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.overlay.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundleState.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.bytrace.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.calendarManager.d.ts","kitName":"CalendarKit","subSystem":"应用"},{"filePath":"@ohos.charger.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.commonEventManager.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"@ohos.configPolicy.d.ts","kitName":"BasicServicesKit","subSystem":"定制"},{"filePath":"@ohos.connectedTag.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.contact.d.ts","kitName":"ContactsKit","subSystem":"应用"},{"filePath":"@ohos.continuation.continuationManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.convertxml.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.cooperate.d.ts","kitName":"DistributedServiceKit","subSystem":"综合传感处理平台"},{"filePath":"@ohos.curves.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.data.cloudData.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.cloudExtension.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.commonType.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.dataAbility.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.dataShare.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.dataSharePredicates.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.DataShareResultSet.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.distributedData.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.distributedDataObject.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.distributedKVStore.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.preferences.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.rdb.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.relationalStore.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.storage.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.unifiedDataChannel.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.uniformDataStruct.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.uniformTypeDescriptor.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.ValuesBucket.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.deviceAttest.d.ts","kitName":"BasicServicesKit","subSystem":"XTS"},{"filePath":"@ohos.deviceInfo.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@ohos.deviceStatus.dragInteraction.d.ts","kitName":"ArkUI","subSystem":"综合传感处理平台"},{"filePath":"@ohos.display.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.display.d.ts","kitName":"ArkUI","subSystem":"窗口"},{"filePath":"@ohos.distributedBundle.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.distributedDeviceManager.d.ts","kitName":"DistributedServiceKit","subSystem":"分布式硬件"},{"filePath":"@ohos.distributedHardware.deviceManager.d.ts","kitName":"DistributedServiceKit","subSystem":"分布式硬件"},{"filePath":"@ohos.distributedHardware.hardwareManager.d.ts","kitName":"DistributedServiceKit","subSystem":"分布式硬件"},{"filePath":"@ohos.distributedMissionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.dlpPermission.d.ts","kitName":"DataLossPreventionKit","subSystem":"安全基础能力"},{"filePath":"@ohos.document.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.driver.deviceManager.d.ts","kitName":"DriverDevelopmentKit","subSystem":"驱动"},{"filePath":"@ohos.effectKit.d.ts","kitName":"ArkGraphics2D","subSystem":"OS媒体软件"},{"filePath":"@ohos.enterprise.accountManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.adminManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.applicationManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.bluetoothManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.browser.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.bundleManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.dateTimeManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.deviceControl.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.deviceInfo.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.deviceSettings.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.EnterpriseAdminExtensionAbility.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.locationManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.networkManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.restrictions.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.securityManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.systemManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.usbManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.wifiManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.events.emitter.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"@ohos.faultLogger.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.file.backup.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.cloudSync.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.cloudSyncManager.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.environment.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fileAccess.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fileExtensionInfo.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fileuri.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fs.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.hash.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.photoAccessHelper.d.ts","kitName":"MediaLibraryKit","subSystem":"文件管理"},{"filePath":"@ohos.file.PhotoPickerComponent.d.ets","kitName":"MediaLibraryKit","subSystem":"文件管理"},{"filePath":"@ohos.file.picker.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.recent.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.securityLabel.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.statvfs.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.storageStatistics.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.trash.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.volumeManager.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.fileio.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.filemanagement.userFileManager.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.fileshare.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.font.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.geolocation.d.ts","kitName":"LocationKit","subSystem":"位置服务"},{"filePath":"@ohos.geoLocationManager.d.ts","kitName":"LocationKit","subSystem":"位置服务"},{"filePath":"@ohos.graphics.colorSpaceManager.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.graphics.displaySync.d.ts","kitName":"ArkGraphics2D","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.graphics.hdrCapability.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.hiAppEvent.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hichecker.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hidebug.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hilog.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiSysEvent.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiTraceChain.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiTraceMeter.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiviewdfx.hiAppEvent.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.i18n.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"@ohos.identifier.oaid.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.inputMethod.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.inputMethod.Panel.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.inputMethodEngine.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.InputMethodExtensionAbility.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.InputMethodExtensionContext.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.inputMethodList.d.ets","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.InputMethodSubtype.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.intl.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"@ohos.logLibrary.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.matrix4.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.measure.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.mediaquery.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.multimedia.audio.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.audioHaptic.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avCastPicker.d.ets","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avCastPickerParam.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avsession.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avVolumePanel.d.ets","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.camera.d.ts","kitName":"CameraKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.cameraPicker.d.ts","kitName":"CameraKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.drm.d.ts","kitName":"DrmKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.image.d.ts","kitName":"ImageKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.media.d.ts","kitName":"MediaKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.mediaLibrary.d.ts","kitName":"MediaLibraryKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.systemSoundManager.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimodalInput.gestureEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputConsumer.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputDevice.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputDeviceCooperate.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputEventClient.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputMonitor.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.intentionCode.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.keyCode.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.keyEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.mouseEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.pointer.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.shortKey.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.touchEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.net.connection.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.connection.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.ethernet.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.http.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.mdns.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.networkSecurity.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.policy.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.sharing.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.socket.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.statistics.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.vpn.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.vpn.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"@ohos.net.vpnExtension.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.vpnExtension.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"@ohos.net.webSocket.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.webSocket.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.nfc.cardEmulation.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.nfc.controller.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.nfc.tag.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.notificationManager.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@ohos.notificationSubscribe.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@ohos.pasteboard.d.ts","kitName":"BasicServicesKit","subSystem":"剪贴板"},{"filePath":"@ohos.PiPWindow.d.ts","kitName":"ArkUI","subSystem":"窗口"},{"filePath":"@ohos.pluginComponent.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.power.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.print.d.ts","kitName":"BasicServicesKit","subSystem":"打印"},{"filePath":"@ohos.privacyManager.d.ts","kitName":"AbilityKit","subSystem":"安全基础能力"},{"filePath":"@ohos.process.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.prompt.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.promptAction.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.reminderAgent.d.ts","kitName":"BackgroundTasksKit","subSystem":"事件通知"},{"filePath":"@ohos.reminderAgentManager.d.ts","kitName":"BackgroundTasksKit","subSystem":"事件通知"},{"filePath":"@ohos.request.d.ts","kitName":"BasicServicesKit","subSystem":"上传下载"},{"filePath":"@ohos.resourceManager.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"@ohos.resourceschedule.backgroundTaskManager.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.deviceStandby.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.systemload.d.ts","kitName":"BasicServicesKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.usageStatistics.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.workScheduler.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.router.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.rpc.d.ts","kitName":"IPCKit","subSystem":"基础通信"},{"filePath":"@ohos.runningLock.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.screen.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.screenLock.d.ts","kitName":"BasicServicesKit","subSystem":"主题"},{"filePath":"@ohos.screenshot.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.secureElement.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.security.asset.d.ts","kitName":"Asset Store Kit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.cert.d.ts","kitName":"DeviceCertificateKit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.certManager.d.ts","kitName":"DeviceCertificateKit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.cryptoFramework.d.ts","kitName":"CryptoArchitectureKit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.huks.d.ts","kitName":"UniversalKeystoreKit","subSystem":"安全基础能力"},{"filePath":"@ohos.sensor.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"@ohos.settings.d.ts","kitName":"BasicServicesKit","subSystem":"应用"},{"filePath":"@ohos.statfs.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.stationary.d.ts","kitName":"MultimodalAwarenessKit","subSystem":"综合传感处理平台"},{"filePath":"@ohos.systemCapability.d.ts","kitName":"BasicServicesKit","subSystem":"研发工具链"},{"filePath":"@ohos.systemDateTime.d.ts","kitName":"BasicServicesKit","subSystem":"时间时区"},{"filePath":"@ohos.systemparameter.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@ohos.systemParameterEnhance.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@ohos.systemTime.d.ts","kitName":"BasicServicesKit","subSystem":"时间时区"},{"filePath":"@ohos.systemTimer.d.ts","kitName":"BasicServicesKit","subSystem":"时间时区"},{"filePath":"@ohos.taskpool.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.telephony.call.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.call.d.ts","kitName":"TelephonyKit","subSystem":"应用"},{"filePath":"@ohos.telephony.data.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.observer.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.radio.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.sim.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.sms.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.vcard.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.thermal.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.uiAppearance.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.uiExtensionHost.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.UiTest.d.ts","kitName":"TestKit","subSystem":"测试框架"},{"filePath":"@ohos.update.d.ts","kitName":"BasicServicesKit","subSystem":"升级服务"},{"filePath":"@ohos.uri.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.url.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.usb.d.ts","kitName":"BasicServicesKit","subSystem":"USB服务"},{"filePath":"@ohos.usbManager.d.ts","kitName":"BasicServicesKit","subSystem":"USB服务"},{"filePath":"@ohos.userIAM.faceAuth.d.ts","kitName":"UserAuthenticationKit","subSystem":"用户IAM"},{"filePath":"@ohos.userIAM.userAuth.d.ts","kitName":"UserAuthenticationKit","subSystem":"用户IAM"},{"filePath":"@ohos.userIAM.userAuthIcon.d.ets","kitName":"UserAuthenticationKit","subSystem":"用户IAM"},{"filePath":"@ohos.util.ArrayList.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Deque.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.HashMap.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.HashSet.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.json.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.LightWeightMap.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.LightWeightSet.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.LinkedList.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.List.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.PlainArray.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Queue.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Stack.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.TreeMap.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.TreeSet.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Vector.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.vibrator.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"@ohos.wallpaper.d.ts","kitName":"BasicServicesKit","subSystem":"主题"},{"filePath":"@ohos.WallpaperExtensionAbility.d.ts","kitName":"BasicServicesKit","subSystem":"主题"},{"filePath":"@ohos.wantAgent.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.web.netErrorList.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@ohos.web.webview.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@ohos.wifi.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiext.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiManager.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiManagerExt.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiManagerExt.d.ts","kitName":"ConnectivityKit","subSystem":"元能力"},{"filePath":"@ohos.window.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.window.d.ts","kitName":"ArkUI","subSystem":"窗口"},{"filePath":"@ohos.worker.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.WorkSchedulerExtensionAbility.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.xml.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.zlib.d.ts","kitName":"BasicServicesKit","subSystem":"包管理"},{"filePath":"@system.app.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.battery.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@system.bluetooth.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@system.brightness.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@system.cipher.d.ts","kitName":"CryptoArchitectureKit","subSystem":"安全基础能力"},{"filePath":"@system.configuration.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.device.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@system.file.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@system.geolocation.d.ts","kitName":"LocationKit","subSystem":"位置服务"},{"filePath":"@system.mediaquery.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.notification.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@system.package.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@system.prompt.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.request.d.ts","kitName":"BasicServicesKit","subSystem":"上传下载"},{"filePath":"@system.router.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.sensor.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"@system.storage.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@system.vibrator.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"ability/abilityResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/connectOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/dataAbilityHelper.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/dataAbilityOperation.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/dataAbilityResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/startAbilityParameter.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/want.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"advertising/advertisement.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"app/appVersionInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"app/context.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"app/processInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityDelegator.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/abilityDelegatorArgs.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityFirstFrameStateData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityForegroundStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityMonitor.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityRunningInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStageContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStageMonitor.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStateData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AccessibilityExtensionContext.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"application/AppForegroundStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ApplicationContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ApplicationStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AppStateData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillRect.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillRequest.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillType.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoStartupCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoStartupInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/BaseContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/BusinessAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/Context.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinuableInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinueCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinueDeviceInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinueMissionInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/DriverExtensionContext.d.ts","kitName":"DriverDevelopmentKit","subSystem":"驱动"},{"filePath":"application/EmbeddableUIAbilityContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ErrorObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/EventHub.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ExtensionRunningInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/FormExtensionContext.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"application/LoopObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MediaControlExtensionContext.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"application/MissionCallbacks.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionDeviceInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionListener.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionParameter.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionSnapshot.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/PageNodeInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ProcessData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ProcessInformation.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ProcessRunningInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ServiceExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/shellCmdResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/UIAbilityContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/UIExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ViewData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/VpnExtensionContext.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"application/WorkSchedulerExtensionContext.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"arkui/AlphabetIndexerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/BlankModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/BuilderNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ButtonModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CalendarPickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CheckboxGroupModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CheckboxModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ColumnModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ColumnSplitModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CommonModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ComponentContent.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CounterModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/DataPanelModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/DatePickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/DividerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/FormComponentModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/FrameNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GaugeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/Graphics.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridColModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridRowModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/HyperlinkModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ImageAnimatorModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ImageModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ImageSpanModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/LineModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ListItemGroupModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ListItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ListModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/LoadingProgressModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/MarqueeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/MenuItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/MenuModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavDestinationModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavigationModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavigatorModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavRouterModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NodeController.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PanelModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PathModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PatternLockModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PolygonModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PolylineModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ProgressModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/QRCodeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RadioModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RatingModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RectModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RenderNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RichEditorModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RowModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RowSplitModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ScrollModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SearchModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SelectModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ShapeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SideBarContainerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SliderModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SpanModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/StackModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/StepperItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SwiperModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TabsModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextAreaModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextClockModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextInputModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextPickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextTimerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TimePickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ToggleModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/VideoModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/WaterFlowModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/XComponentNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"bundle/abilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/applicationInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/bundleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/bundleInstaller.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/bundleStatusCallback.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/customizeData.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/elementName.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/hapModuleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/launcherAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/moduleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/PermissionDef.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/remoteAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/shortcutInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/AbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ApplicationInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/AppProvisionInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/BundleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/BundlePackInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/BundleResourceInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/DispatchInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ElementName.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ExtensionAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/HapModuleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/LauncherAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/LauncherAbilityResourceInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/Metadata.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/OverlayModuleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/PermissionDef.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/RecoverableApplicationInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/RemoteAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/SharedBundleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ShortcutInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"common/full/canvaspattern.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/console.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/dom.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/featureability.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/global.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/viewmodel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/console.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/featureability.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/global.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/viewmodel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"commonEvent/commonEventData.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"commonEvent/commonEventPublishData.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"commonEvent/commonEventSubscribeInfo.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"commonEvent/commonEventSubscriber.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"continuation/continuationExtraParams.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"continuation/continuationResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"data/rdb/resultSet.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"global/rawFileDescriptor.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"global/resource.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"multimedia/soundPool.d.ts","kitName":"MediaKit","subSystem":"OS媒体软件"},{"filePath":"notification/notificationActionButton.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/NotificationCommonDef.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationContent.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationContent.d.ts","kitName":"NotificationKit","subSystem":"安全基础能力"},{"filePath":"notification/notificationFlags.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationRequest.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSlot.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSorting.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSortingMap.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSubscribeInfo.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSubscriber.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationTemplate.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationUserInput.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"security/PermissionRequestResult.d.ts","kitName":"AbilityKit","subSystem":"安全基础能力"},{"filePath":"tag/nfctech.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"tag/tagSession.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"wantAgent/triggerInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@internal/component/ets/component3d.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/styled_string.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/web.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@ohos.app.appstartup.StartupConfig.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupConfigEntry.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupListener.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.startupManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupTask.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.arkui.shape.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.commonEvent.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"@ohos.graphics.common2D.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.graphics.drawing.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.notification.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@ohos.security.securityGuard.d.ts","kitName":"securityGuardKit","subSystem":"安全基础能力"},{"filePath":"@system.fetch.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@system.network.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"application/VpnExtensionContext.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"application/WindowExtensionContext.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"arkui/AttributeUpdater.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"data/rdb/resultSet.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"multimedia/ringtonePlayer.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"multimedia/systemTonePlayer.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@internal/component/ets/repeat.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"application/AbilityFirstFrameStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStartCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityFirstFrameStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.graphics.text.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"wantAgent/wantAgentInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"permissions.d.ts","kitName":"NA","subSystem":"NA"}]}')},739:e=>{"use strict";e.exports=JSON.parse('{"compileOnSave":false,"compilerOptions":{"ets":{"render":{"method":["build","pageTransition"],"decorator":"Builder"},"components":["AbilityComponent","AlphabetIndexer","Animator","Badge","Blank","Button","Calendar","CalendarPicker","Camera","Canvas","Checkbox","CheckboxGroup","Circle","ColorPicker","ColorPickerDialog","Column","ColumnSplit","Component3D","Counter","DataPanel","DatePicker","Divider","Ellipse","Flex","FormComponent","Gauge","GeometryView","Grid","GridItem","GridContainer","Hyperlink","Image","ImageAnimator","LazyVGridLayout","Line","List","ListItem","ListItemGroup","LoadingProgress","Marquee","Menu","MenuItem","MenuItemGroup","Navigation","Navigator","Option","PageTransitionEnter","PageTransitionExit","Panel","Particle","Path","PatternLock","Piece","PluginComponent","Polygon","Polyline","Progress","QRCode","Radio","Rating","Rect","Refresh","RelativeContainer","RemoteWindow","Row","RowSplit","RichText","Scroll","ScrollBar","Search","Section","Select","Shape","Sheet","SideBarContainer","Slider","Span","Stack","Stepper","StepperItem","Swiper","TabContent","Tabs","Text","TextPicker","TextClock","TextArea","TextInput","TextTimer","TimePicker","Toggle","Video","Web","XComponent","GridRow","GridCol"],"extend":{"decorator":"Extend","components":[{"name":"AbilityComponent","type":"AbilityComponentAttribute","instance":"AbilityComponentInstance"},{"name":"AlphabetIndexer","type":"AlphabetIndexerAttribute","instance":"AlphabetIndexerInstance"},{"name":"Animator","type":"AnimatorAttribute","instance":"AnimatorInstance"},{"name":"Badge","type":"BadgeAttribute","instance":"BadgeInstance"},{"name":"Blank","type":"BlankAttribute","instance":"BlankInstance"},{"name":"Button","type":"ButtonAttribute","instance":"ButtonInstance"},{"name":"Calendar","type":"CalendarAttribute","instance":"CalendarInstance"},{"name":"CalendarPicker","type":"CalendarPickerAttribute","instance":"CalendarPickerInstance"},{"name":"Camera","type":"CameraAttribute","instance":"CameraInstance"},{"name":"Canvas","type":"CanvasAttribute","instance":"CanvasInstance"},{"name":"Checkbox","type":"CheckboxAttribute","instance":"CheckboxInstance"},{"name":"CheckboxGroup","type":"CheckboxGroupAttribute","instance":"CheckboxGroupInstance"},{"name":"Circle","type":"CircleAttribute","instance":"CircleInstance"},{"name":"ColorPicker","type":"ColorPickerAttribute","instance":"ColorPickerInstance"},{"name":"ColorPickerDialog","type":"ColorPickerDialogAttribute","instance":"ColorPickerDialogInstance"},{"name":"Column","type":"ColumnAttribute","instance":"ColumnInstance"},{"name":"ColumnSplit","type":"ColumnSplitAttribute","instance":"ColumnSplitInstance"},{"name":"Component3D","type":"Component3DAttribute","instance":"Component3DInstance"},{"name":"Counter","type":"CounterAttribute","instance":"CounterInstance"},{"name":"DataPanel","type":"DataPanelAttribute","instance":"DataPanelInstance"},{"name":"DatePicker","type":"DatePickerAttribute","instance":"DatePickerInstance"},{"name":"Divider","type":"DividerAttribute","instance":"DividerInstance"},{"name":"Ellipse","type":"EllipseAttribute","instance":"EllipseInstance"},{"name":"Flex","type":"FlexAttribute","instance":"FlexInstance"},{"name":"FormComponent","type":"FormComponentAttribute","instance":"FormComponentInstance"},{"name":"Gauge","type":"GaugeAttribute","instance":"GaugeInstance"},{"name":"GeometryView","type":"GeometryViewAttribute","instance":"GeometryViewInstance"},{"name":"Grid","type":"GridAttribute","instance":"GridInstance"},{"name":"GridItem","type":"GridItemAttribute","instance":"GridItemInstance"},{"name":"GridContainer","type":"GridContainerAttribute","instance":"GridContainerInstance"},{"name":"Hyperlink","type":"HyperlinkAttribute","instance":"HyperlinkInstance"},{"name":"Image","type":"ImageAttribute","instance":"ImageInstance"},{"name":"ImageAnimator","type":"ImageAnimatorAttribute","instance":"ImageAnimatorInstance"},{"name":"LazyVGridLayout","type":"LazyVGridLayoutAttribute","instance":"LazyVGridLayoutInstance"},{"name":"Line","type":"LineAttribute","instance":"LineInstance"},{"name":"List","type":"ListAttribute","instance":"ListInstance"},{"name":"ListItem","type":"ListItemAttribute","instance":"ListItemInstance"},{"name":"ListItemGroup","type":"ListItemGroupAttribute","instance":"ListItemGroupInstance"},{"name":"LoadingProgress","type":"LoadingProgressAttribute","instance":"LoadingProgressInstance"},{"name":"Marquee","type":"MarqueeAttribute","instance":"MarqueeInstance"},{"name":"Menu","type":"MenuAttribute","instance":"MenuInstance"},{"name":"MenuItem","type":"MenuItemAttribute","instance":"MenuItemInstance"},{"name":"MenuItemGroup","type":"MenuItemGroupAttribute","instance":"MenuItemGroupInstance"},{"name":"Navigation","type":"NavigationAttribute","instance":"NavigationInstance"},{"name":"Navigator","type":"NavigatorAttribute","instance":"NavigatorInstance"},{"name":"Option","type":"OptionAttribute","instance":"OptionInstance"},{"name":"PageTransitionEnter","type":"PageTransitionEnterAttribute","instance":"PageTransitionEnterInstance"},{"name":"PageTransitionExit","type":"PageTransitionExitAttribute","instance":"PageTransitionExitInstance"},{"name":"Panel","type":"PanelAttribute","instance":"PanelInstance"},{"name":"Particle","type":"ParticleAttribute","instance":"ParticleInstance"},{"name":"Path","type":"PathAttribute","instance":"PathInstance"},{"name":"PatternLock","type":"PatternLockAttribute","instance":"PatternLockInstance"},{"name":"Piece","type":"PieceAttribute","instance":"PieceInstance"},{"name":"PluginComponent","type":"PluginComponentAttribute","instance":"PluginComponentInstance"},{"name":"Polygon","type":"PolygonAttribute","instance":"PolygonInstance"},{"name":"Polyline","type":"PolylineAttribute","instance":"PolylineInstance"},{"name":"Progress","type":"ProgressAttribute","instance":"ProgressInstance"},{"name":"QRCode","type":"QRCodeAttribute","instance":"QRCodeInstance"},{"name":"Radio","type":"RadioAttribute","instance":"RadioInstance"},{"name":"Rating","type":"RatingAttribute","instance":"RatingInstance"},{"name":"Rect","type":"RectAttribute","instance":"RectInstance"},{"name":"RelativeContainer","type":"RelativeContainerAttribute","instance":"RelativeContainerInstance"},{"name":"Refresh","type":"RefreshAttribute","instance":"RefreshInstance"},{"name":"RemoteWindow","type":"RemoteWindowAttribute","instance":"RemoteWindowInstance"},{"name":"Row","type":"RowAttribute","instance":"RowInstance"},{"name":"RowSplit","type":"RowSplitAttribute","instance":"RowSplitInstance"},{"name":"RichText","type":"RichTextAttribute","instance":"RichTextInstance"},{"name":"Scroll","type":"ScrollAttribute","instance":"ScrollInstance"},{"name":"ScrollBar","type":"ScrollBarAttribute","instance":"ScrollBarInstance"},{"name":"Search","type":"SearchAttribute","instance":"SearchInstance"},{"name":"Section","type":"SectionAttribute","instance":"SectionInstance"},{"name":"Select","type":"SelectAttribute","instance":"SelectInstance"},{"name":"Shape","type":"ShapeAttribute","instance":"ShapeInstance"},{"name":"Sheet","type":"SheetAttribute","instance":"SheetInstance"},{"name":"SideBarContainer","type":"SideBarContainerAttribute","instance":"SideBarContainerInstance"},{"name":"Slider","type":"SliderAttribute","instance":"SliderInstance"},{"name":"Span","type":"SpanAttribute","instance":"SpanInstance"},{"name":"Stack","type":"StackAttribute","instance":"StackInstance"},{"name":"Stepper","type":"StepperAttribute","instance":"StepperInstance"},{"name":"StepperItem","type":"StepperItemAttribute","instance":"StepperItemInstance"},{"name":"Swiper","type":"SwiperAttribute","instance":"SwiperInstance"},{"name":"TabContent","type":"TabContentAttribute","instance":"TabContentInstance"},{"name":"Tabs","type":"TabsAttribute","instance":"TabsInstance"},{"name":"Text","type":"TextAttribute","instance":"TextInstance"},{"name":"TextPicker","type":"TextPickerAttribute","instance":"TextPickerInstance"},{"name":"TextClock","type":"TextClockAttribute","instance":"TextClockInstance"},{"name":"TextArea","type":"TextAreaAttribute","instance":"TextAreaInstance"},{"name":"TextInput","type":"TextInputAttribute","instance":"TextInputInstance"},{"name":"TextTimer","type":"TextTimerAttribute","instance":"TextTimerInstance"},{"name":"TimePicker","type":"TimePickerAttribute","instance":"TimePickerInstance"},{"name":"Toggle","type":"ToggleAttribute","instance":"ToggleInstance"},{"name":"Video","type":"VideoAttribute","instance":"VideoInstance"},{"name":"Web","type":"WebAttribute","instance":"WebInstance"},{"name":"XComponent","type":"XComponentAttribute","instance":"XComponentInstance"},{"name":"GridRow","type":"GridRowAttribute","instance":"GridRowInterface"},{"name":"GridCol","type":"GridColAttribute","instance":"GridColInterface"}]},"styles":{"decorator":"Styles","component":{"name":"Common","type":"T","instance":"CommonInstance"},"property":"stateStyles"},"customComponent":"CustomComponent","propertyDecorators":[],"emitDecorators":[],"libs":[]},"allowJs":false,"allowSyntheticDefaultImports":true,"esModuleInterop":true,"importsNotUsedAsValues":"preserve","noImplicitAny":false,"noUnusedLocals":false,"noUnusedParameters":false,"experimentalDecorators":true,"moduleResolution":"node","resolveJsonModule":true,"skipLibCheck":true,"sourceMap":true,"module":"commonjs","target":"es2017","types":[],"typeRoots":[],"lib":["es2020"],"alwaysStrict":true},"exclude":["node_modules"]}')},61574:e=>{"use strict";e.exports=JSON.parse('{"DOC":{"API_DOC_ATOMICSERVICE_01":"JSDoc label order error, please adjust the order of [atomicservice] labels.","API_DOC_ATOMICSERVICE_02":"The validity verification of the JSDoc tag failed. The [atomicservice] tag is not allowed to be reused, please delete the extra tags.","API_DOC_ATOMICSERVICE_03":"It was detected that there is an inheritable label [atomicservice] in the current file, but there are child nodes without this label.","API_DOC_CONSTANT_01":"JSDoc label order error, please adjust the order of [constant] labels.","API_DOC_CONSTANT_02":"JSDoc label validity verification failed. The [constant] label is not allowed. Please check the label usage method.","API_DOC_CONSTANT_03":"JSDoc tag validity verification failed. Please confirm if the [constant] tag is missing.","API_DOC_CONSTANT_04":"The validity verification of the JSDoc tag failed. The [constant] tag is not allowed to be reused, please delete the extra tags.","API_DOC_CROSSPLATFORM_01":"JSDoc label order error, please adjust the order of [crossplatform] labels.","API_DOC_CROSSPLATFORM_02":"The validity verification of the JSDoc tag failed. The [crossplatform] tag is not allowed to be reused, please delete the extra tags.","API_DOC_CROSSPLATFORM_03":"It was detected that there is an inheritable label [form] in the current file, but there are child nodes without this label.","API_DOC_DEFAULT_01":"The [default] tag value is incorrect. Please supplement the default value.","API_DOC_DEFAULT_02":"JSDoc label order error, please adjust the order of [default] labels.","API_DOC_DEFAULT_03":"JSDoc label validity verification failed. The [default] label is not allowed. Please check the label usage method.","API_DOC_DEFAULT_04":"The validity verification of the JSDoc tag failed. The [default] tag is not allowed to be reused, please delete the extra tags.","API_DOC_DEPRECATED_01":"The [deprecated] tag value is incorrect. Please check the usage method.","API_DOC_DEPRECATED_02":"JSDoc label order error, please adjust the order of [deprecated] labels.","API_DOC_DEPRECATED_03":"It was detected that there is an inheritable label [deprecated] in the current file, but there are child nodes without this label.","API_DOC_DEPRECATED_04":"The validity verification of the JSDoc tag failed. The [deprecated] tag is not allowed to be reused, please delete the extra tags.","API_DOC_ENUM_01":"The [enum] tag type is incorrect. Please check if the tag type is { string } or { number }.","API_DOC_ENUM_02":"JSDoc label order error, please adjust the order of [enum] labels.","API_DOC_ENUM_03":"JSDoc label validity verification failed. The [enum] label is not allowed. Please check the label usage method.","API_DOC_ENUM_04":"JSDoc tag validity verification failed. Please confirm if the [enum] tag is missing.","API_DOC_ENUM_05":"The validity verification of the JSDoc tag failed. The [enum] tag is not allowed to be reused, please delete the extra tags.","API_DOC_EXAMPLE_01":"JSDoc label order error, please adjust the order of [example] labels.","API_DOC_EXAMPLE_02":"The validity verification of the JSDoc tag failed. The [example] tag is not allowed to be reused, please delete the extra tags.","API_DOC_EXTENDS_01":"The [extends] tag value is incorrect. Please check if the tag value matches the inherited class name.","API_DOC_EXTENDS_02":"JSDoc label order error, please adjust the order of [extends] labels.","API_DOC_EXTENDS_03":"JSDoc label validity verification failed. The [extends] label is not allowed. Please check the label usage method.","API_DOC_EXTENDS_04":"JSDoc tag validity verification failed. Please confirm if the [extends] tag is missing.","API_DOC_EXTENDS_05":"The validity verification of the JSDoc tag failed. The [extends] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FAMODELONLY_01":"JSDoc label order error, please adjust the order of [famodelonly] labels.","API_DOC_FAMODELONLY_02":"The validity verification of the JSDoc tag failed. The [famodelonly] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FAMODELONLY_03":"It was detected that there is an inheritable label [famodelonly] in the current file, but there are child nodes without this label.","API_DOC_FIRES_01":"JSDoc label order error, please adjust the order of [fires] labels.","API_DOC_FIRES_02":"The validity verification of the JSDoc tag failed. The [fires] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FORM_01":"JSDoc label order error, please adjust the order of [form] labels.","API_DOC_FORM_02":"The validity verification of the JSDoc tag failed. The [form] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FORM_03":"It was detected that there is an inheritable label [form] in the current file, but there are child nodes without this label.","API_DOC_IMPLEMENTS_01":"JSDoc label order error, please adjust the order of [implements] labels.","API_DOC_IMPLEMENTS_02":"JSDoc label validity verification failed. The [implements] label is not allowed. Please check the label usage method.","API_DOC_IMPLEMENTS_03":"JSDoc tag validity verification failed. Please confirm if the [implements] tag is missing.","API_DOC_IMPLEMENTS_04":"The validity verification of the JSDoc tag failed. The [implements] tag is not allowed to be reused, please delete the extra tags.","API_DOC_IMPLEMENTS_05":"The [implements] tag value is incorrect. Please check if the tag value matches the inherited class name.","API_DOC_INTERFACE_01":"JSDoc label order error, please adjust the order of [interface] labels.","API_DOC_INTERFACE_02":"The validity verification of the JSDoc tag failed. The [interface] tag is not allowed to be reused, please delete the extra tags.","API_DOC_NAMESPACE_01":"The [namespace] tag value is incorrect. Please check if it matches the namespace name.","API_DOC_NAMESPACE_02":"JSDoc label order error, please adjust the order of [namespace] labels.","API_DOC_NAMESPACE_03":"JSDoc tag validity verification failed. Please confirm if the [namespace] tag is missing.","API_DOC_NAMESPACE_04":"JSDoc label validity verification failed. The [namespace] label is not allowed. Please check the label usage method.","API_DOC_NAMESPACE_05":"The validity verification of the JSDoc tag failed. The [namespace] tag is not allowed to be reused, please delete the extra tags.","API_DOC_PARAM_01":"The type of the [1] [param] tag is incorrect. Please check if it matches the type of the [1] parameter.","API_DOC_PARAM_02":"The value of the [1] [param] tag is incorrect. Please check if it matches the [1] parameter name.","API_DOC_PARAM_03":"JSDoc tag validity verification failed.There are [1] redundant [param]. Please check if the tag should be deleted.","API_DOC_PARAM_04":"JSDoc tag validity verification failed. Please confirm if the [param] tag is missing.","API_DOC_PARAM_05":"JSDoc label validity verification failed. The [param] label is not allowed. Please check the label usage method.","API_DOC_PARAM_06":"JSDoc label order error, please adjust the order of [param] labels.","API_DOC_PERMISSION_01":"The [permission] tag value is incorrect. Please check if the permission field has been configured or update the configuration file.","API_DOC_PERMISSION_02":"JSDoc label order error, please adjust the order of [permission] labels.","API_DOC_PERMISSION_03":"JSDoc label validity verification failed. The [permission] label is not allowed. Please check the label usage method.","API_DOC_PERMISSION_04":"The validity verification of the JSDoc tag failed. The [permission] tag is not allowed to be reused, please delete the extra tags.","API_DOC_PERMISSION_05":"JSDoc tag validity verification failed. Please confirm if the [permission] tag is missing.","API_DOC_READONLY_01":"JSDoc label order error, please adjust the order of [readonly] labels.","API_DOC_READONLY_02":"JSDoc label validity verification failed. The [readonly] label is not allowed. Please check the label usage method.","API_DOC_READONLY_03":"The validity verification of the JSDoc tag failed. The [readonly] tag is not allowed to be reused, please delete the extra tags.","API_DOC_RETURNS_01":"The [returns] tag was used incorrectly. The returns tag should not be used when the return type is void.","API_DOC_RETURNS_02":"The [returns] tag type is incorrect. Please check if the tag type is consistent with the return type.","API_DOC_RETURNS_03":"JSDoc label order error, please adjust the order of [returns] labels.","API_DOC_RETURNS_04":"JSDoc tag validity verification failed. Please confirm if the [returns] tag is missing.","API_DOC_RETURNS_05":"The validity verification of the JSDoc tag failed. The [returns] tag is not allowed to be reused, please delete the extra tags.","API_DOC_RETURNS_06":"JSDoc label validity verification failed. The [returns] label is not allowed. Please check the label usage method.","API_DOC_SINCE_01":"The [since] tag value is incorrect. Please check if the tag value is a numerical value.","API_DOC_SINCE_02":"JSDoc label order error, please adjust the order of [since] labels.","API_DOC_SINCE_03":"JSDoc tag validity verification failed. Please confirm if the [since] tag is missing.","API_DOC_SINCE_04":"The validity verification of the JSDoc tag failed. The [since] tag is not allowed to be reused, please delete the extra tags.","API_DOC_STAGEMODELONLY_01":"It was detected that there is an inheritable label [stagemodelonly] in the current file, but there are child nodes without this label.","API_DOC_STAGEMODELONLY_02":"JSDoc label order error, please adjust the order of [stagemodelonly] labels.","API_DOC_STAGEMODELONLY_03":"The validity verification of the JSDoc tag failed. The [stagemodelonly] tag is not allowed to be reused, please delete the extra tags.","API_DOC_STATIC_01":"JSDoc label order error, please adjust the order of [static] labels.","API_DOC_STATIC_02":"The validity verification of the JSDoc tag failed. The [static] tag is not allowed to be reused, please delete the extra tags.","API_DOC_STRUCT_01":"The [struct] tag value is incorrect. Please check if it matches the struct name.","API_DOC_STRUCT_02":"JSDoc label order error, please adjust the order of [struct] labels.","API_DOC_STRUCT_03":"JSDoc label validity verification failed. The [struct] label is not allowed. Please check the label usage method.","API_DOC_STRUCT_04":"JSDoc tag validity verification failed. Please confirm if the [struct] tag is missing.","API_DOC_STRUCT_05":"The validity verification of the JSDoc tag failed. The [struct] tag is not allowed to be reused, please delete the extra tags.","API_DOC_SYSCAP_01":"The [syscap] tag value is incorrect. Please check if the syscap field is configured.","API_DOC_SYSCAP_02":"JSDoc label order error, please adjust the order of [syscap] labels.","API_DOC_SYSCAP_03":"JSDoc tag validity verification failed. Please confirm if the [syscap] tag is missing.","API_DOC_SYSCAP_04":"The validity verification of the JSDoc tag failed. The [syscap] tag is not allowed to be reused, please delete the extra tags.","API_DOC_SYSTEMAPI_01":"JSDoc label order error, please adjust the order of [systemapi] labels.","API_DOC_SYSTEMAPI_02":"It was detected that there is an inheritable label [systemapi] in the current file, but there are child nodes without this label.","API_DOC_SYSTEMAPI_03":"The validity verification of the JSDoc tag failed. The [systemapi] tag is not allowed to be reused, please delete the extra tags.","API_DOC_TEST_01":"JSDoc label order error, please adjust the order of [test] labels.","API_DOC_TEST_02":"It was detected that there is an inheritable label [test] in the current file, but there are child nodes without this label.","API_DOC_TEST_03":"The validity verification of the JSDoc tag failed. The [test] tag is not allowed to be reused, please delete the extra tags.","API_DOC_THROWS_01":"The type of the [1] [throws] tag is incorrect. Please check if the tag value is a numerical value.","API_DOC_THROWS_02":"The type of the [1] [throws] tag is incorrect. Please fill in [BusinessError].","API_DOC_THROWS_03":"JSDoc label order error, please adjust the order of [throws] labels.","API_DOC_THROWS_04":"JSDoc label validity verification failed. The [throws] label is not allowed. Please check the label usage method.","API_DOC_TYPE_01":"The [type] tag type is incorrect. Please check if the type matches the attribute type.","API_DOC_TYPE_02":"JSDoc label order error, please adjust the order of [type] labels.","API_DOC_TYPE_03":"JSDoc label validity verification failed. The [type] label is not allowed. Please check the label usage method.","API_DOC_TYPE_04":"JSDoc tag validity verification failed. Please confirm if the [type] tag is missing.","API_DOC_TYPE_05":"The validity verification of the JSDoc tag failed. The [type] tag is not allowed to be reused, please delete the extra tags.","API_DOC_TYPEDEF_01":"The [typedef] tag value is incorrect. Please check if it matches the interface name or type content.","API_DOC_TYPEDEF_02":"JSDoc label order error, please adjust the order of [typedef] labels.","API_DOC_TYPEDEF_03":"JSDoc label validity verification failed. The [typedef] label is not allowed. Please check the label usage method.","API_DOC_TYPEDEF_04":"JSDoc tag validity verification failed. Please confirm if the [typedef] tag is missing.","API_DOC_TYPEDEF_05":"The validity verification of the JSDoc tag failed. The [typedef] tag is not allowed to be reused, please delete the extra tags.","API_DOC_USEINSTEAD_01":"The [useinstead] tag value is incorrect. Please check the usage method.","API_DOC_USEINSTEAD_02":"JSDoc label order error, please adjust the order of [useinstead] labels.","API_DOC_USEINSTEAD_03":"JSDoc label validity verification failed. The [useinstead] label is not allowed. Please check the label usage method.","API_DOC_USEINSTEAD_04":"The validity verification of the JSDoc tag failed. The [useinstead] tag is not allowed to be reused, please delete the extra tags.","API_DOC_GLOBAL_01":"JSDoc tag validity verification failed. Please confirm if the [file] tag is missing.","API_DOC_GLOBAL_02":"JSDoc tag validity verification failed. Please confirm if the [kit] tag is missing.","API_DOC_JSDOC_01":"Jsdoc needs to be added to the current API.","API_DOC_JSDOC_02":"JSDoc tag validity verification failed. Please confirm if the [since] tag is missing.JSDoc tag validity verification failed. Please confirm if the [syscap] tag is missing."},"DEFINE":{"API_DEFINE_UNALLOWABLE_01":"Illegal [any] keyword used in the API.","API_DEFINE_UNALLOWABLE_02":"Illegal [this] keyword used in the API.","API_DEFINE_UNALLOWABLE_03":"Illegal [unknown] keyword used in the API.","API_DEFINE_NAME_01":"Prohibited word in [XXXX]:{option}.The word allowed is [XXXX].","API_DEFINE_NAME_02":"Prohibited word in [XXXX]:{ability} in the [XXXX] file.","API_DEFINE_SPELLING_01":"Error words in [$$]: {$$}. please confirm whether it needs to be corrected to a common word.","API_DEFINE_EVENT_01":"The event name should be string.","API_DEFINE_EVENT_02":"The event name cannot be Null value.","API_DEFINE_EVENT_03":"The callback parameter of off function should be optional.","API_DEFINE_EVENT_04":"The off functions of one single event should have at least one callback parameter, and the callback parameter should be the last parameter.","API_DEFINE_EVENT_05":"The on and off event subscription methods do not appear in pair.","API_DEFINE_EVENT_06":"The event subscription methods should has at least one parameter.","API_DEFINE_EVENT_07":"Please check if the changed API version number is 10.","API_DEFINE_HUMP_01":"This API file should be named by large hump.","API_DEFINE_HUMP_02":"This API file should be named by small hump.","API_DEFINE_HUMP_03":"This name [XXXX] should be named by large hump.","API_DEFINE_HUMP_04":"This name [XXXX] should be named by small hump.","API_DEFINE_HUMP_05":"This name [XXXX] should be named by all uppercase."},"CHANEGE":{"API_CHANGE_INCOMPATIBLE_01":"Forbid changes: API level change to system.","API_CHANGE_INCOMPATIBLE_02":"Forbid changes: API mode change.","API_CHANGE_INCOMPATIBLE_03":"Forbid changes: API card delete.","API_CHANGE_INCOMPATIBLE_04":"Forbid changes: API crossplatform delete.","API_CHANGE_INCOMPATIBLE_05":"Forbid changes: API errorcode cannot be created or modified.","API_CHANGE_INCOMPATIBLE_06":"Forbid changes: API cannot be changed.","API_CHANGE_INCOMPATIBLE_07":"Forbid changes: Function return type cannot be changed.","API_CHANGE_INCOMPATIBLE_08":"Forbid changes: Property cannot be changed.","API_CHANGE_INCOMPATIBLE_09":"Forbid changes: Constant value cannot be changed.","API_CHANGE_INCOMPATIBLE_10":"Forbid changes: Type alias cannot be changed.","API_CHANGE_INCOMPATIBLE_11":"Forbid changes: Enum number value cannot be changed.","API_CHANGE_INCOMPATIBLE_12":"Forbid changes: API cannot be deleted.","API_CHANGE_INCOMPATIBLE_13":"Forbid changes: Historical JSDoc cannot be changed.","API_CHANGE_INCOMPATIBLE_14":"Forbid changes: API changes must add a new section of JSDoc.","API_CHANGE_INCOMPATIBLE_15":"Forbid changes: Parameters cannot be changed.","API_CHANGE_INCOMPATIBLE_16":"Forbid changes: Permission tag cannot be created or modified."}}')},98768:e=>{"use strict";e.exports=JSON.parse('{"ApiCheckVersion":12}')},54732:e=>{"use strict";e.exports=JSON.parse('{"dictionariesArr":["a","aa","aaa","aaaa","aaaaa","aab","aac","aachen","aad","aapl","aapt","aar","aardvark","aaren","aarhus","aarika","aaron","ab","aba","aback","abacus","abaft","abagael","abagail","abalone","abandon","abandoned","abandoner","abandonment","abase","abasement","abaser","abash","abashed","abashment","abate","abated","abatement","abater","abattoir","abb","abba","abbe","abbess","abbey","abbi","abbie","abbot","abbott","abbr","abbrev","abbreviate","abbreviated","abbreviates","abbreviating","abbreviation","abby","abbye","abc","abcd","abcde","abcdef","abcdefghijklmnopqrstuvwxyz","abd","abdel","abdicate","abdication","abdomen","abdominal","abduct","abduction","abductor","abdul","abe","abeam","abel","abelard","abelson","aberdeen","abernathy","aberrant","aberration","aberrational","abet","abetted","abetting","abettor","abeu","abey","abeyance","abeyant","abhor","abhorred","abhorrence","abhorrent","abhorrer","abhorring","abi","abidance","abide","abider","abiding","abidjan","abie","abigael","abigail","abigale","abilene","abilities","ability","abject","abjection","abjectness","abjuration","abjuratory","abjure","abjurer","ablate","ablation","ablative","ablaze","able","abler","ables","ablest","abloom","ablution","abm","abnegate","abnegation","abner","abnormal","abnormality","abo","aboard","abode","abolish","abolisher","abolishment","abolition","abolitionism","abolitionist","abominable","abominably","abominate","abomination","aboriginal","aborigine","aborning","abort","aborted","aborting","abortion","abortionist","abortive","abortiveness","abound","about","above","aboveboard","aboveground","abra","abracadabra","abrade","abrader","abraham","abrahan","abram","abramo","abramson","abran","abrasion","abrasive","abrasiveness","abreaction","abreast","abridge","abridged","abridger","abridgment","abroad","abrogate","abrogation","abrogator","abrupt","abruptness","abs","abscess","abscissa","abscission","abscond","absconder","abseil","absence","absent","absentee","absenteeism","absentia","absentminded","absentmindedness","absinthe","abslistview","absolute","absolutely","absoluteness","absolution","absolutism","absolutist","absolve","absolver","absorb","absorbed","absorbency","absorbent","absorber","absorbing","absorption","absorptive","absorptivity","abspath","abstain","abstainer","abstemious","abstemiousness","abstention","abstinence","abstinent","abstract","abstractapplicationcontext","abstractautowirecapablebeanfactory","abstractbeanfactory","abstractchannelhandlercontext","abstracted","abstractedness","abstracter","abstracthttp","abstraction","abstractionism","abstractionist","abstractions","abstractness","abstractor","abstractplainsocketimpl","abstractprotocol","abstruse","abstruseness","absurd","absurdity","absurdness","abuja","abundance","abundant","abuse","abused","abuser","abuses","abusing","abusive","abusiveness","abut","abutment","abutted","abutter","abutting","abuzz","abysmal","abyss","abyssal","abyssinia","abyssinian","ac","acacia","academe","academia","academic","academical","academician","academicianship","academy","acadia","acanthus","acapulco","acc","accdb","accede","accelerate","accelerated","accelerating","acceleration","accelerator","accelerometer","accent","accented","accentual","accentuate","accentuation","accept","acceptability","acceptable","acceptableness","acceptably","acceptance","acceptant","acceptation","accepted","accepter","accepting","acceptor","accepts","acces","access","accesscontroller","accessed","accesses","accessibility","accessible","accessibly","accessing","accession","accesslogvalve","accessor","accessories","accessors","accessory","accesstoken","accidence","accident","accidental","accidentally","accidentalness","acclaim","acclaimer","acclamation","acclimate","acclimation","acclimatisation","acclimatise","acclimatization","acclimatize","acclimatized","acclimatizes","acclivity","accolade","accommodate","accommodated","accommodating","accommodation","accommodative","accommodativeness","accompanied","accompanier","accompaniment","accompanist","accompany","accomplice","accomplish","accomplished","accomplisher","accomplishing","accomplishment","accord","accordance","accordant","accorder","according","accordingly","accordion","accordionist","accost","account","accountability","accountable","accountableness","accountably","accountancy","accountant","accounted","accountid","accounting","accountname","accountnumber","accounts","accounttype","accouter","accouterment","accouterments","accoutrement","accra","accredit","accreditation","accredited","accretion","accrual","accrue","acct","acculturate","acculturation","accumsan","accumulate","accumulated","accumulation","accumulative","accumulativeness","accumulator","accuracy","accurate","accurately","accurateness","accursed","accursedness","accusal","accusation","accusative","accusatory","accuse","accused","accuser","accusing","accustom","accustomed","accustomedness","acd","ace","aced","acerbate","acerbic","acerbically","acerbity","acetaminophen","acetate","acetic","acetone","acetonic","acetylene","acevedo","acf","achaean","ache","achebe","ached","achene","achernar","aches","acheson","achievable","achieve","achieved","achievement","achievements","achiever","achieving","achilles","aching","achive","achoo","achromatic","achy","acid","acidic","acidification","acidify","acidity","acidness","acidoses","acidosis","acidulous","acing","ack","ackerman","acknowledge","acknowledgeable","acknowledged","acknowledgedly","acknowledger","acknowledgment","acl","aclass","aclu","acm","acme","acne","acolyte","aconcagua","aconite","acorn","acosta","acoustic","acoustical","acoustician","acoustics","acquaint","acquaintance","acquaintanceship","acquainted","acquiesce","acquiescence","acquiescent","acquirable","acquire","acquired","acquirement","acquiring","acquisition","acquisitive","acquisitiveness","acquit","acquittal","acquittance","acquitted","acquitter","acquitting","acre","acreage","acrid","acridity","acridness","acrimonious","acrimoniousness","acrimony","acrobat","acrobatic","acrobatically","acrobatics","acronym","acrophobia","acropolis","across","acrostic","acrux","acrylate","acrylic","acs","act","acta","actaeon","acth","acting","actinic","actinide","actinium","actinometer","action","actionbar","actionbaractivity","actionbardrawertoggle","actionbarsherlock","actionbarsize","actionbutton","actioncontroller","actionevent","actionlink","actionlistener","actionname","actionpack","actionperformed","actionresult","actions","actionscript","actionview","activate","activated","activatedroute","activating","activation","activator","active","activeadmin","activecell","activedocument","actively","activemodel","activemq","activeness","activerecord","actives","activesheet","activesupport","activewindow","activeworkbook","activex","activexobject","activism","activist","activities","activity","activitycompat","activityindicator","activitymanager","activitythread","acton","actor","actors","actress","acts","actual","actuality","actualization","actualize","actualizes","actually","actualwidth","actuarial","actuary","actuate","actuation","actuator","acuity","acumen","acupressure","acupuncture","acupuncturist","acute","acuteness","acyclic","acyclically","acyclovir","ad","ada","adage","adagio","adah","adair","adaline","adam","adamant","adamo","adamson","adan","adana","adapt","adaptability","adaptable","adaptation","adapted","adaptedness","adapter","adapters","adapterview","adapting","adaption","adaptive","adaptively","adaptiveness","adaptivity","adaptor","adara","adata","adb","adc","add","adda","addaction","addactionlistener","addall","addams","addattribute","addbutton","addcell","addchild","addclass","addcolumn","addcomponent","adddays","added","addelement","addend","addenda","addendum","adder","addevent","addeventlistener","addflags","addgesturerecognizer","addgroup","addhandler","addheader","addi","addia","addict","addiction","addictive","addie","addin","adding","addison","additem","addition","additional","additionally","additions","additive","additivity","addle","addlistener","addmarker","addobject","addobserver","addon","addons","addproperty","addr","addrange","address","addressability","addressable","addressbook","addressed","addressee","addresser","addresses","addressid","addressing","addressline","addressof","addressograph","addrow","adds","addslashes","addsubview","addtab","addtarget","addtextchangedlistener","addto","addtobackstack","addtype","adduce","adducer","adduct","adduction","adductor","adduser","addvalue","addview","addwidget","addwithvalue","addy","ade","adecoder","adel","adela","adelaida","adelaide","adelbert","adele","adelheid","adelice","adelina","adelind","adeline","adella","adelle","aden","adena","adenauer","adenine","adenoid","adenoidal","adept","adeptness","adequacy","adequate","adequateness","adey","adf","adfs","adham","adhara","adhere","adherence","adherent","adherer","adhesion","adhesive","adhesiveness","adi","adiabatic","adiabatically","adiana","adidas","adieu","adina","adipiscing","adipisicing","adipose","adirondack","adis","adj","adjacency","adjacent","adjectival","adjective","adjoin","adjoint","adjourn","adjournment","adjudge","adjudicate","adjudication","adjudicator","adjudicatory","adjunct","adjuration","adjure","adjust","adjustable","adjustably","adjusted","adjuster","adjusting","adjustive","adjustment","adjustments","adjustor","adjutant","adkins","adlai","adler","adm","adman","admen","admin","adminhtml","administer","administrable","administrate","administration","administrative","administrator","administrators","administratrix","admins","admirable","admirableness","admirably","admiral","admiralty","admiration","admire","admirer","admiring","admissibility","admissible","admissibly","admission","admit","admittance","admitted","admittedly","admitting","admix","admixture","admob","admonish","admonisher","admonishing","admonishment","admonition","admonitory","ado","adobe","adodb","adolescence","adolescent","adolf","adolfo","adolph","adolphe","adolpho","adolphus","adonis","adopt","adopted","adopter","adoption","adoptive","adopts","adora","adorable","adorableness","adorably","adoration","adore","adoree","adorer","adoring","adorn","adorne","adorned","adornment","adp","adr","adrea","adrenal","adrenalin","adrenaline","adrequest","adress","adresse","adria","adrian","adriana","adriane","adrianna","adrianne","adriano","adriatic","adrien","adriena","adrienne","adrift","adroit","adroitness","ads","adsense","adsorb","adsorbate","adsorbent","adsorption","adsorptive","adt","adulate","adulation","adulator","adulatory","adult","adulterant","adulterate","adulterated","adulteration","adulterer","adulteress","adulterous","adultery","adulthood","adultness","adults","adumbrate","adumbration","adumbrative","adv","advance","advanced","advancement","advancer","advances","advantage","advantageous","advantageousness","advantages","advent","adventist","adventitious","adventitiousness","adventive","adventure","adventurer","adventuresome","adventuress","adventurous","adventurousness","adverb","adverbial","adversarial","adversary","adverse","adverseness","adversity","advert","advertise","advertised","advertisement","advertiser","advertisers","advertising","advertorial","advice","advices","adview","advil","advisability","advisable","advisableness","advisably","advise","advised","advisedly","advisee","advisement","adviser","advisor","advisory","advocacy","advocate","advocation","advt","adwords","adz","adze","ae","aegean","aegis","aelfric","aenean","aeneas","aeneid","aeolian","aeolus","aeon","aerate","aeration","aerator","aerial","aerialist","aerie","aeriel","aeriela","aeriell","aeroacoustic","aerobatic","aerobic","aerobically","aerodrome","aerodynamic","aerodynamically","aerodynamics","aeronautic","aeronautical","aeronautics","aerosol","aerosolize","aerospace","aes","aeschylus","aesculapius","aesop","aesthete","aesthetic","aesthetically","aestheticism","aesthetics","aether","aetiology","af","afaik","afar","afb","afc","afd","afdc","aff","affability","affable","affably","affair","affect","affectation","affected","affectedness","affecter","affecting","affection","affectionate","affectioned","affectioning","affective","affects","afferent","affiance","affidavit","affiliate","affiliated","affiliation","affine","affinity","affirm","affirmation","affirmative","affix","afflatus","afflict","affliction","afflictive","affluence","affluent","afford","affordable","afforest","afforestation","afforested","afforesting","afforests","affray","affricate","affrication","affricative","affright","affront","afghan","afghani","afghanistan","aficionado","afield","afire","aflame","afloat","aflutter","afnetworking","afoot","afore","aforementioned","aforesaid","aforethought","afoul","afr","afraid","afresh","africa","african","afrikaans","afrikaner","afro","afrocentric","afrocentrism","aft","after","afterbirth","afterbirths","afterburner","aftercare","aftereffect","afterglow","afterimage","afterlife","afterlives","aftermath","aftermaths","aftermost","afternoon","afters","aftershave","aftershock","aftertaste","aftertextchanged","afterthought","afterward","afterwards","afterworld","afton","ag","agace","again","against","agamemnon","agapae","agape","agar","agassiz","agata","agate","agatha","agathe","agave","age","aged","agedness","ageism","ageist","ageless","agelessness","agencies","agency","agenda","agent","agented","agenting","agentive","agents","ageratum","ages","agg","aggi","aggie","agglomerate","agglomeration","agglutinate","agglutination","agglutinin","aggrandize","aggrandizement","aggravate","aggravating","aggravation","aggregate","aggregated","aggregately","aggregateness","aggregates","aggregation","aggregations","aggregative","aggregator","aggression","aggressive","aggressively","aggressiveness","aggressor","aggrieve","aggrieved","aggy","aghast","agile","agility","agitate","agitated","agitation","agitator","agitprop","aglaia","agleam","aglitter","aglow","agna","agnella","agnes","agnese","agnesse","agneta","agnew","agni","agnola","agnostic","agnosticism","ago","agog","agonize","agonized","agonizedly","agonizing","agony","agoraphobia","agoraphobic","agosto","agra","agrarian","agrarianism","agree","agreeable","agreeableness","agreeably","agreed","agreeing","agreement","agreements","agreer","agretha","agribusiness","agricola","agricultural","agriculturalist","agriculture","agriculturist","agrippa","agrippina","agrochemicals","agronomic","agronomist","agronomy","aground","aguascalientes","ague","aguie","aguilar","aguinaldo","aguirre","aguistin","aguste","agustin","ah","aha","ahab","aharon","ahead","ahem","ahmad","ahmadabad","ahmed","ahoy","ahriman","ai","aid","aida","aidan","aide","aided","aider","aids","aigneis","aigrette","aiken","ail","aila","ailbert","aile","ailee","aileen","ailene","aileron","ailey","aili","ailina","ailment","ailsun","ailyn","aim","aime","aimed","aimee","aimer","aimil","aiming","aimless","aimlessness","aims","ain","aindrea","ainslee","ainsley","ainslie","ainu","air","airbag","airbase","airbnb","airborne","airbrush","airbus","aircraft","aircrew","airdrop","airdropped","airdropping","airedale","aires","airfare","airfield","airflow","airfoil","airframe","airfreight","airhead","airily","airiness","airing","airless","airlessness","airlift","airline","airliner","airlock","airmail","airman","airmass","airmen","airpark","airplane","airplay","airport","airship","airsick","airsickness","airspace","airspeed","airstrip","airtight","airtightness","airtime","airwaves","airway","airworthiness","airworthy","airy","aisha","aisle","aitch","aj","ajar","ajax","ajaxoptions","ajay","ajp","ak","aka","akbar","akihito","akim","akimbo","akin","akita","akka","akkad","akron","aksel","al","ala","alabama","alabaman","alabamian","alabaster","alack","alacrity","aladdin","alain","alaine","alair","alameda","alamo","alamofire","alamogordo","alan","alana","alanah","aland","alane","alanine","alanna","alano","alanson","alar","alard","alaric","alarm","alarming","alarmist","alarmmanager","alarms","alas","alasdair","alaska","alaskan","alastair","alasteir","alaster","alayne","alb","alba","albacore","albania","albanian","albany","albatross","albedo","albee","albeit","alberich","alberik","alberio","albert","alberta","albertan","albertina","albertine","alberto","albie","albigensian","albina","albinism","albino","albion","albireo","albrecht","album","albumen","albumin","albuminous","albums","albuquerque","alcatraz","alcestis","alchemical","alchemist","alchemy","alcibiades","alcmena","alcoa","alcohol","alcoholic","alcoholically","alcoholism","alcott","alcove","alcuin","alcyone","aldan","aldebaran","aldehyde","alden","alder","alderamin","alderman","aldermen","alderwoman","alderwomen","aldin","aldis","aldo","aldon","aldous","aldric","aldrich","aldridge","aldrin","aldus","aldwin","ale","aleatory","alec","alecia","aleck","aleda","alee","aleece","aleen","alehouse","aleichem","alejandra","alejandrina","alejandro","alejoa","aleksandr","alembert","alembic","alena","alene","aleph","aleppo","aler","alert","alertcontroller","alertdialog","alerted","alertness","alerts","alertview","alessandra","alessandro","aleta","alethea","aleut","aleutian","alewife","alewives","alex","alexa","alexander","alexandr","alexandra","alexandre","alexandria","alexandrian","alexandrina","alexandro","alexei","alexi","alexia","alexina","alexine","alexio","alf","alfa","alfalfa","alfi","alfie","alfons","alfonse","alfonso","alfonzo","alford","alfred","alfreda","alfredo","alfresco","alfy","alg","alga","algae","algaecide","algal","algebra","algebraic","algebraical","algebraist","algenib","alger","algeria","algerian","algernon","algieba","algiers","alginate","algo","algol","algonquian","algonquin","algorithm","algorithmic","algorithmically","algorithms","alhambra","alhena","ali","alia","alias","aliased","aliases","aliasing","alibi","alic","alica","alice","alicea","alicia","alick","alida","alidia","alie","alien","alienable","alienate","alienation","alienist","alighieri","alight","align","aligned","aligner","alignleft","alignment","alignparentbottom","alignparentleft","alignparentright","alignparentstart","alignparenttop","alika","alike","alikee","alikeness","aliment","alimentary","alimony","alina","aline","alinement","alioth","aliqua","aliquam","aliquet","aliquip","aliquot","alisa","alisander","alisha","alison","alissa","alist","alistair","alister","alisun","alive","aliveness","alix","aliyah","aliyahs","aliza","alkaid","alkali","alkalies","alkaline","alkalinity","alkalize","alkaloid","alkyd","alkyl","all","alla","allah","allahabad","allan","allard","allay","allayne","alldata","alleen","allegation","allege","alleged","allegheny","allegiance","allegiant","allegoric","allegorical","allegoricalness","allegorist","allegory","allegra","allegretto","allegri","allegro","allele","alleluia","allemande","allen","allendale","allende","allene","allentown","allergen","allergenic","allergic","allergically","allergist","allergy","alleviate","alleviation","alleviator","alley","alleyn","alleyway","allhallows","alli","alliance","allianora","allie","allier","allies","alligator","allin","allina","allison","allissa","allister","allistir","alliterate","alliteration","alliterative","allix","alloc","allocable","allocatable","allocate","allocated","allocates","allocating","allocation","allocations","allocative","allocator","allophone","allophonic","allot","allotment","allotments","allotrope","allotropic","allots","allotted","allotter","allotting","allover","allow","allowable","allowableness","allowably","allowance","allowbackup","allowed","allowfullscreen","allowget","allowing","allowoverride","allows","alloy","alloyed","allspice","allstate","allsun","allude","allure","allurement","alluring","allusion","allusive","allusiveness","alluvial","alluvions","alluvium","allx","ally","allyce","allyn","allys","allyson","alma","almach","almaden","almagest","almanac","almaty","almeda","almeria","almeta","almightiness","almighty","almira","almire","almond","almoner","almost","alms","almshouse","almsman","alnico","alnilam","alnitak","aloe","aloft","aloha","aloin","aloise","aloisia","alon","alone","aloneness","along","alongshore","alongside","alonso","alonzo","aloof","aloofness","alot","aloud","aloysia","aloysius","alp","alpaca","alpert","alpha","alphabet","alphabetic","alphabetical","alphabetically","alphabetization","alphabetize","alphabetizer","alphabets","alphanumeric","alphanumerical","alphard","alphecca","alpheratz","alphonse","alphonso","alpine","alps","already","alric","alright","alsace","alsatian","also","alsop","alston","alt","alta","altai","altaic","altair","altar","altarpiece","alter","alterable","alteration","altercate","altercation","altered","altering","alternate","alternately","alternation","alternative","alternatively","alternativeness","alternatives","alternator","althea","although","altimeter","altiplano","altitude","alto","altogether","alton","altos","altruism","altruist","altruistic","altruistically","alu","aludra","aluin","aluino","alum","alumina","aluminum","alumna","alumnae","alumni","alumnus","alundum","alva","alvan","alvarado","alvarez","alvaro","alveolar","alveoli","alveolus","alvera","alverta","alvie","alvin","alvina","alvinia","alvira","alvis","alvy","alway","always","alwin","alwyn","alyce","alyda","alyosha","alys","alysa","alyse","alysia","alyson","alyss","alyssa","alzheimer","am","ama","amabel","amabelle","amadeus","amado","amain","amalea","amalee","amaleta","amalgam","amalgamate","amalgamation","amalia","amalie","amalita","amalle","amanda","amandi","amandie","amandy","amanuenses","amanuensis","amara","amaranth","amaranths","amaretto","amargo","amarillo","amaryllis","amass","amasser","amata","amateur","amateurish","amateurishness","amateurism","amati","amatory","amaze","amazed","amazement","amazing","amazon","amazonaws","amazonian","amazons","ambassador","ambassadorial","ambassadorship","ambassadress","amber","ambergris","amberly","ambiance","ambidexterity","ambidextrous","ambience","ambient","ambiguity","ambiguous","ambiguously","ambiguousness","ambit","ambition","ambitious","ambitiousness","ambivalence","ambivalent","amble","ambler","ambros","ambrose","ambrosi","ambrosia","ambrosial","ambrosio","ambrosius","ambulance","ambulant","ambulate","ambulation","ambulatory","ambur","ambuscade","ambuscader","ambush","ambusher","amby","amcharts","amd","amdahl","ame","ameba","amelia","amelie","amelina","ameline","ameliorate","amelioration","amelita","amen","amenability","amenably","amend","amended","amender","amendment","amends","amenhotep","amenity","amenorrhea","amer","amerada","amerasian","amerce","amercement","america","american","americana","americanism","americanization","americanize","americanized","americans","americium","amerigo","amerind","amerindian","amery","ameslan","amet","amethyst","amethystine","amharic","amherst","ami","amiability","amiable","amiableness","amiably","amicability","amicable","amicableness","amicably","amid","amide","amidships","amidst","amie","amiga","amigo","amii","amil","amines","amino","aminobenzoic","amir","amish","amiss","amitie","amity","ammamaria","amman","ammerman","ammeter","ammo","ammonia","ammoniac","ammonium","ammunition","amnesia","amnesiac","amnesic","amnesty","amniocenteses","amniocentesis","amnion","amniotic","amoco","amoeba","amoebic","amoeboid","amok","among","amongst","amontillado","amoral","amorality","amorous","amorousness","amorphous","amorphousness","amortization","amortize","amortized","amory","amos","amount","amounts","amour","amp","amparo","amperage","ampere","ampersand","ampex","amphetamine","amphibian","amphibious","amphibiousness","amphibology","amphitheater","amphora","amphorae","ample","ampleness","amplification","amplifier","amplify","amplitude","ampoule","ampule","amputate","amputation","amputee","amqp","amritsar","ams","amsterdam","amt","amtrak","amuck","amulet","amundsen","amur","amuse","amused","amusement","amuser","amusing","amusingness","amway","amy","amye","amyl","amylase","amz","amzn","an","ana","anabal","anabaptist","anabel","anabella","anabelle","anabolic","anabolism","anachronism","anachronistic","anachronistically","anacin","anaconda","anacreon","anaerobe","anaerobic","anaerobically","anaglyph","anagram","anagrammatic","anagrammatically","anagrammed","anagramming","anaheim","anal","analects","analgesia","analgesic","analiese","analise","anallese","anallise","analog","analogical","analogize","analogous","analogousness","analogue","analogy","analysand","analyse","analyses","analysis","analyst","analytic","analytical","analyticity","analytics","analyzable","analyze","analyzed","analyzer","analyzing","anamorphic","ananias","anapaest","anapest","anapestic","anaphora","anaphoric","anaphorically","anaplasmosis","anarchic","anarchical","anarchism","anarchist","anarchistic","anarchy","anastasia","anastasie","anastassia","anastigmatic","anastomoses","anastomosis","anastomotic","anathema","anathematize","anatol","anatola","anatole","anatolia","anatolian","anatollo","anatomic","anatomical","anatomist","anatomize","anatomy","anaxagoras","ancell","ancestor","ancestors","ancestortype","ancestral","ancestress","ancestry","anchor","anchorage","anchored","anchorite","anchoritism","anchorman","anchormen","anchorpane","anchorpeople","anchorperson","anchors","anchorwoman","anchorwomen","anchovy","ancient","ancientness","ancillary","and","andalso","andalusia","andalusian","andaman","andante","andean","andee","andeee","anderea","anders","andersen","anderson","andes","andi","andie","andiron","andonis","andorra","andover","andra","andre","andrea","andreana","andree","andrei","andrej","andrew","andrey","andria","andriana","andriette","andris","androgen","androgenic","androgynous","androgyny","andromache","andromeda","andropov","andros","andrus","andy","anecdotal","anecdote","anechoic","anemia","anemic","anemically","anemometer","anemometry","anemone","anent","aneroid","anestassia","anesthesia","anesthesiologist","anesthesiology","anesthetic","anesthetically","anesthetist","anesthetization","anesthetize","anesthetizer","anet","anett","anetta","anette","aneurysm","anew","ang","angara","ange","angel","angela","angele","angeleno","angeles","angelfish","angeli","angelia","angelic","angelica","angelical","angelico","angelika","angelina","angeline","angelique","angelita","angelle","angelo","angelou","anger","angevin","angie","angil","angina","angiography","angioplasty","angiosperm","angkor","angle","angler","angles","angleworm","anglia","anglican","anglicanism","anglicism","anglicization","anglicize","angling","anglo","anglophile","anglophilia","anglophobe","anglophobia","angola","angolan","angora","angrily","angriness","angry","angst","angstrom","anguilla","anguish","angular","angularfire","angularity","angularjs","angus","angy","anheuser","anhydride","anhydrite","anhydrous","ania","aniakchak","anibal","anica","aniline","anim","animadversion","animadvert","animal","animalcule","animals","animate","animated","animatedly","animately","animateness","animates","animatewithduration","animating","animation","animations","animator","animism","animist","animistic","animized","animosity","animus","anion","anionic","anise","aniseed","aniseikonic","anisette","anisotropic","anisotropy","anissa","anita","anitra","anjanette","anjela","ankara","ankh","ankhs","ankle","anklebone","anklet","ann","anna","annabal","annabel","annabela","annabell","annabella","annabelle","annadiana","annadiane","annal","annalee","annaliese","annalise","annalist","annamaria","annamarie","annapolis","annapurna","anne","anneal","annealer","annecorinne","annelid","anneliese","annelise","annemarie","annetta","annette","annex","annexation","annexe","anni","annice","annie","annihilate","annihilation","annihilator","annissa","anniversary","annmaria","annmarie","annnora","annora","annotate","annotated","annotation","annotations","annotator","announce","announced","announcement","announcements","announcer","annoy","annoyance","annoyed","annoyer","annoying","annual","annualized","annuitant","annuity","annul","annular","annuli","annulled","annulling","annulment","annulus","annum","annunciate","annunciation","annunciator","anny","anode","anodic","anodize","anodyne","anoint","anointer","anointment","anomalous","anomalousness","anomaly","anomic","anomie","anon","anonfun","anonymity","anonymous","anonymousness","anopheles","anorak","anorectic","anorexia","anorexic","another","anouilh","ans","ansel","ansell","anselm","anselma","anselmo","anshan","ansi","ansible","ansley","anson","anstice","answer","answerable","answered","answerer","answering","answers","ant","antacid","antaeus","antagonism","antagonist","antagonistic","antagonistically","antagonize","antagonized","antagonizing","antananarivo","antarctic","antarctica","antares","ante","anteater","antebellum","antecedence","antecedent","antechamber","antedate","antediluvian","anteing","antelope","antenatal","antenna","antennae","anterior","anteroom","anthe","anthea","anthem","anther","anthia","anthiathia","anthill","anthologist","anthologize","anthology","anthony","anthraces","anthracite","anthrax","anthropic","anthropocentric","anthropogenic","anthropoid","anthropological","anthropologist","anthropology","anthropometric","anthropometry","anthropomorphic","anthropomorphically","anthropomorphism","anthropomorphizing","anthropomorphous","anti","antiabortion","antiabortionist","antiaircraft","antibacterial","antibiotic","antibody","antic","anticancer","antichrist","anticipate","anticipated","anticipation","anticipative","anticipatory","anticked","anticking","anticlerical","anticlimactic","anticlimactically","anticlimax","anticline","anticlockwise","anticoagulant","anticoagulation","anticommunism","anticommunist","anticompetitive","anticyclone","anticyclonic","antidemocratic","antidepressant","antidisestablishmentarianism","antidote","antietam","antifascist","antiformant","antifreeze","antifundamentalist","antigen","antigenic","antigenicity","antigone","antigua","antihero","antiheroes","antihistamine","antihistorical","antiknock","antilabor","antillean","antilles","antilogarithm","antilogs","antimacassar","antimalarial","antimatter","antimicrobial","antimissile","antimony","antin","anting","antinomian","antinomy","antinuclear","antioch","antioxidant","antiparticle","antipas","antipasti","antipasto","antipathetic","antipathy","antipersonnel","antiperspirant","antiphon","antiphonal","antipodal","antipode","antipodean","antipodes","antipollution","antipoverty","antiquarian","antiquarianism","antiquary","antiquate","antiquation","antique","antiquity","antiredeposition","antiresonance","antiresonator","antisemitic","antisemitism","antisepses","antisepsis","antiseptic","antiseptically","antiserum","antislavery","antisocial","antispasmodic","antisubmarine","antisymmetric","antisymmetry","antitank","antitheses","antithesis","antithetic","antithetical","antithyroid","antitoxin","antitrust","antivenin","antiviral","antivivisectionist","antiwar","antler","antlr","antmatchers","antofagasta","antoine","antoinette","anton","antone","antonella","antonetta","antoni","antonia","antonie","antonietta","antonin","antonina","antonino","antoninus","antonio","antonius","antonovics","antony","antonym","antonymous","antral","antsy","antwan","antwerp","anubis","anus","anvil","anxiety","anxious","anxiousness","any","anya","anybody","anyhow","anymore","anyobject","anyone","anyplace","anything","anytime","anyway","anyways","anywhere","anywise","ao","aol","aop","aorta","aortic","aot","ap","apace","apache","apalachicola","apart","apartheid","apartment","apartness","apathetic","apathetically","apathy","apatite","apb","apc","ape","aped","apelike","apennines","aper","aperiodic","aperiodically","aperiodicity","aperitif","aperture","apex","aphasia","aphasic","aphelia","aphelion","aphid","aphonic","aphorism","aphoristic","aphoristically","aphrodisiac","aphrodite","api","apia","apiarist","apiary","apical","apices","apiclient","apicontroller","apidocs","apiece","apikey","apis","apiservice","apish","apishness","apiurl","apiversion","apk","apl","aplenty","aplomb","apns","apo","apocalypse","apocalyptic","apocrypha","apocryphal","apocryphalness","apogee","apolar","apolitical","apollinaire","apollo","apollonian","apologetic","apologetically","apologetics","apologia","apologies","apologist","apologize","apologizer","apologizes","apologizing","apology","apoplectic","apoplexy","apos","apostasy","apostate","apostatize","apostle","apostleship","apostolic","apostrophe","apostrophized","apothecary","apothegm","apotheoses","apotheosis","apotheosized","apotheosizes","apotheosizing","app","appalachia","appalachian","appall","appalling","appaloosa","appanage","apparatus","apparel","apparency","apparent","apparently","apparentness","apparition","appbar","appbarlayout","appbundle","appcelerator","appclassloader","appcompat","appcompatactivity","appcomponent","appconfig","appcontext","appcontroller","appdata","appdelegate","appdomain","appeal","appealer","appealing","appear","appearance","appeared","appearer","appearing","appears","appease","appeased","appeasement","appeaser","appellant","appellate","appellation","appellative","append","appendage","appendchild","appenddata","appendectomy","appended","appender","appendices","appendicitis","appending","appendix","appendline","appends","appendtext","appendto","appengine","appertain","appetite","appetizer","appetizing","appia","appian","appid","appium","appkit","applaud","applauder","applause","apple","applecart","applejack","apples","applesauce","applescript","appleseed","applet","appleton","applewebkit","appliance","applicabilities","applicability","applicable","applicably","applicant","applicants","applicate","application","applicationcontext","applicationcontroller","applicationdbcontext","applicationdispatcher","applicationfilterchain","applicationid","applicationname","applicationrecord","applications","applicationuser","applicative","applicator","applied","applier","applies","appliqu","appliqud","apply","applybindings","applying","appmodule","appname","appoint","appointee","appointer","appointive","appointment","appointments","appolonia","appomattox","apportion","apportionment","appose","apposite","appositeness","apposition","appositive","appraisal","appraise","appraised","appraisees","appraiser","appraises","appraising","appreciable","appreciably","appreciate","appreciated","appreciation","appreciative","appreciativeness","appreciator","appreciatory","apprehend","apprehender","apprehensible","apprehension","apprehensive","apprehensiveness","apprentice","apprenticeship","apprise","apprizer","apprizingly","apprizings","approach","approachability","approachable","approacher","approaches","approaching","approbate","approbation","appropriable","appropriate","appropriated","appropriately","appropriateness","appropriation","appropriator","approval","approve","approved","approver","approving","approx","approximate","approximately","approximation","approximative","apps","appserver","appsettings","appspot","appstore","apptheme","appurtenance","appurtenant","appwidgetmanager","apr","apricot","april","aprilette","apron","apropos","aps","apse","apsis","apt","aptana","apter","aptest","aptitude","aptness","apuleius","aq","aqua","aquaculture","aqualung","aquamarine","aquanaut","aquaplane","aquarium","aquarius","aquatic","aquatically","aquavit","aqueduct","aqueous","aquiculture","aquifer","aquila","aquiline","aquinas","aquino","aquitaine","ar","ara","arab","arabel","arabela","arabele","arabella","arabelle","arabesque","arabia","arabian","arabic","arability","arabist","arable","araby","araceli","arachnid","arachnoid","arachnophobia","arafat","araguaya","aral","araldo","aramaic","aramco","arange","arapaho","arapahoe","arapahoes","ararat","araucanian","arawak","arawakan","arb","arbiter","arbitrage","arbitrager","arbitrageur","arbitrament","arbitrarily","arbitrariness","arbitrary","arbitrate","arbitration","arbitrator","arbor","arboreal","arbores","arboretum","arborvitae","arbutus","arc","arcade","arcadia","arcadian","arcana","arcane","arcgis","arch","archaeological","archaeologist","archaic","archaically","archaimbaud","archaism","archaist","archaize","archaizer","archambault","archangel","archbishop","archbishopric","archdeacon","archdiocesan","archdiocese","archduchess","archduke","archean","archenemy","archeologist","archeology","archer","archery","archetypal","archetype","archfiend","archfool","archibald","archibaldo","archibold","archie","archiepiscopal","archimedes","arching","archipelago","architect","architectonic","architectonics","architectural","architecture","architectures","architrave","archival","archive","archived","archives","archivist","archness","archway","archy","arclike","arco","arcsine","arctangent","arctic","arcturus","arcu","arda","ardabil","ardath","ardeen","ardelia","ardelis","ardella","ardelle","arden","ardency","ardene","ardenia","ardent","ardine","ardis","ardisj","ardith","ardor","ardra","arduino","arduous","arduousness","ardyce","ardys","ardyth","are","area","areal","areas","areawide","areequal","arel","aren","arena","arenaceous","arequipa","ares","aretha","arg","argb","argc","argent","argentina","argentine","argentinean","argentinian","arginine","argmax","argo","argon","argonaut","argonne","argosy","argot","argparse","args","arguable","arguably","argue","arguer","arguing","argument","argumentation","argumentative","argumentativeness","argumentexception","argumentnullexception","arguments","argus","argv","argyle","ari","aria","ariadne","arial","ariana","arianism","arianist","arid","aridatha","aridity","aridness","arie","ariel","ariela","ariella","arielle","aries","aright","arin","ario","ariosto","arise","arisen","arises","aristarchus","aristides","aristocracy","aristocrat","aristocratic","aristocratically","aristophanes","aristotelean","aristotelian","aristotle","arithmetic","arithmetical","arithmetician","arithmetize","arius","ariz","arizona","arizonan","arizonian","arjuna","ark","ark","arkansan","arkansas","arkhangelsk","arkwright","arlan","arlana","arlee","arleen","arlen","arlena","arlene","arleta","arlette","arley","arleyne","arlie","arliene","arlin","arlina","arlinda","arline","arlington","arluene","arly","arlyn","arlyne","arm","armada","armadillo","armageddon","armagnac","armament","arman","armand","armando","armata","armature","armband","armchair","armco","armeabi","armed","armenia","armenian","armer","armful","armhole","armin","arming","arminius","armistice","armless","armlet","armload","armonk","armor","armored","armorer","armorial","armory","armour","armpit","armrest","arms","armstrong","armv","army","arn","arnaldo","arne","arneb","arney","arnhem","arni","arnie","arno","arnold","arnoldo","arnuad","arnulfo","arny","aroma","aromatherapist","aromatherapy","aromatic","aromatically","aromaticity","aromaticness","aron","arose","around","arousal","arouse","aroused","arp","arpa","arpanet","arpeggio","arquillian","arr","arrack","arragon","arraign","arraignment","arrange","arrangeable","arranged","arrangement","arranger","arranges","arranging","arrant","arras","array","arrayadapter","arraybuffer","arraycollection","arraycopy","arrayer","arrayindexoutofboundsexception","arraylist","arrays","arraysize","arraywithobjects","arrear","arrest","arrestee","arrester","arresting","arrestor","arrhenius","arrhythmia","arrhythmic","arrhythmical","arri","arrival","arrive","arrived","arriver","arrives","arrogance","arrogant","arrogate","arrogation","arron","arrow","arrowhead","arrowroot","arrows","arroyo","arsenal","arsenate","arsenic","arsenide","arsine","arson","arsonist","art","artair","artaxerxes","arte","artefact","artemas","artemis","artemus","arterial","arteriolar","arteriole","arterioscleroses","arteriosclerosis","artery","artesian","artful","artfulness","arther","arthritic","arthritides","arthritis","arthrogram","arthropod","arthroscope","arthroscopic","arthur","arthurian","artichoke","article","articleid","articles","articulable","articular","articulate","articulated","articulately","articulateness","articulates","articulation","articulator","articulatory","artie","artifact","artifactid","artifactory","artifacts","artifice","artificer","artificial","artificiality","artificialness","artillerist","artillery","artilleryman","artillerymen","artiness","artisan","artist","artiste","artistic","artistically","artistry","artists","artless","artlessness","arts","artsy","artur","arturo","artus","artwork","arty","aruba","arum","arv","arvie","arvin","arvy","ary","aryan","aryn","as","asa","asama","asap","asarray","asax","asbestos","asc","ascella","ascend","ascendancy","ascendant","ascender","ascending","ascension","ascent","ascertain","ascertainment","ascetic","ascetically","asceticism","ascii","ascot","ascribe","ascription","ascriptive","ascx","asd","asdf","ase","asenumerable","aseptic","aseptically","asexual","asexuality","asf","asgard","ash","ashame","ashamed","ashanti","ashbey","ashby","ashcan","ashely","asher","asheville","ashia","ashien","ashil","ashkenazim","ashkhabad","ashla","ashlan","ashland","ashlar","ashlee","ashleigh","ashlen","ashley","ashli","ashlie","ashlin","ashly","ashman","ashmolean","ashore","ashram","ashton","ashtray","ashurbanipal","ashx","ashy","asia","asian","asiatic","aside","asilomar","asimov","asin","asinine","asininity","asio","ask","askance","asked","asker","askew","asking","asks","asl","aslant","asleep","aslist","asm","asmara","asmx","asn","asocial","asoka","asp","asparagus","aspartame","aspca","aspect","aspectj","aspects","aspell","aspen","asper","asperity","aspersion","asphalt","asphodel","asphyxia","asphyxiate","asphyxiation","aspic","aspidiske","aspidistra","aspirant","aspirate","aspiration","aspirational","aspirator","aspire","aspirer","aspirin","asplenium","aspnet","aspnetcore","aspx","asquith","ass","assad","assail","assailable","assailant","assam","assamese","assassin","assassinate","assassination","assault","assaulter","assaultive","assay","assayer","assemblage","assemble","assembled","assembler","assemblies","assembly","assemblyidentity","assemblyman","assemblymen","assemblyname","assemblywoman","assemblywomen","assent","assert","assertequals","asserter","assertion","assertional","assertionerror","assertions","assertive","assertiveness","asserts","assertthat","asserttrue","assess","assessed","assesses","assessment","assessor","asset","assetmanager","assets","asseverate","asseveration","asshole","assiduity","assiduous","assiduousness","assign","assignable","assignation","assigned","assignee","assigner","assigning","assignment","assignments","assignor","assigns","assimilate","assimilation","assimilationist","assisi","assist","assistance","assistant","assistantship","assisted","assister","assize","assn","assoc","associable","associate","associated","associateship","association","associational","associations","associative","associativity","associator","assonance","assonant","assort","assorter","assortment","asst","assuage","assuaged","assumability","assume","assumed","assumer","assumes","assuming","assumption","assumptions","assumptive","assurance","assure","assured","assuredness","assurer","assuring","assyria","assyrian","assyriology","ast","astaire","astarte","astatine","astc","aster","asteria","asterisk","asterisked","astern","asteroid","asteroidal","asthma","asthmatic","astigmatic","astigmatism","astir","aston","astonish","astonishing","astonishment","astor","astoria","astound","astounding","astra","astraddle","astrakhan","astral","astray","astrid","astride","astring","astringency","astringent","astrix","astrolabe","astrologer","astrological","astrologist","astrology","astronaut","astronautic","astronautical","astronautics","astronomer","astronomic","astronomical","astronomy","astrophysical","astrophysicist","astrophysics","astroturf","asturias","astute","astuteness","astype","asuncin","asunder","asus","aswan","aswell","asylum","asymmetric","asymmetrical","asymmetry","asymptomatic","asymptomatically","asymptote","asymptotic","asymptotically","async","asynccallback","asynchronism","asynchronous","asynchronously","asynchrony","asyncio","asyncresult","asynctask","at","atacama","atahualpa","atalanta","atan","atari","atatrk","atavism","atavist","atavistic","ataxia","ataxic","ate","atelier","atemporal","athabasca","athabascan","athabaska","athabaskan","atheism","atheist","atheistic","athena","athene","athenian","athens","atheroscleroses","atherosclerosis","athirst","athlete","athletic","athletically","athleticism","athletics","athwart","atilt","atindex","atkins","atkinson","atl","atlanta","atlante","atlantes","atlantic","atlantis","atlas","atlassian","atleast","atm","atman","atmosphere","atmospheric","atmospherically","atoi","atoll","atom","atomic","atomically","atomicity","atomics","atomistic","atomization","atomize","atomizer","atoms","atonal","atonality","atone","atonement","atop","atp","atreus","atria","atrial","atrium","atrocious","atrociousness","atrocity","atrophic","atrophy","atropine","atropos","ats","att","attach","attached","attacher","attachevent","attaching","attachment","attachments","attack","attacker","attacks","attain","attainabilities","attainability","attainable","attainableness","attainably","attainder","attained","attainer","attainment","attar","attempt","attempted","attempter","attempting","attempts","attend","attendance","attendant","attended","attendee","attendees","attender","attention","attentional","attentionality","attentive","attentiveness","attenuate","attenuated","attenuation","attenuator","attest","attestation","attested","attester","attic","attica","attila","attire","attitude","attitudinal","attitudinize","attlee","attn","attorney","attr","attract","attractant","attraction","attractive","attractiveness","attractivenesses","attractor","attrib","attributable","attribute","attributed","attributeerror","attributename","attributer","attributes","attributeset","attributevalue","attribution","attributional","attributive","attrition","attrs","atts","attucks","attune","atty","atv","atwitter","atwood","atypical","au","aube","auberge","aubergine","auberon","aubert","auberta","aubine","aubree","aubrette","aubrey","aubrie","aubry","auburn","auc","auckland","auction","auctioneer","auctor","aud","audacious","audaciousness","audacity","auden","audi","audibility","audible","audibles","audibly","audie","audience","audio","audiobook","audioformat","audiogram","audiological","audiologist","audiology","audiomanager","audiometer","audiometric","audiometry","audiophile","audioplayer","audiotape","audiovisual","audit","audited","audition","auditor","auditorium","auditory","audra","audre","audrey","audrie","audry","audrye","audubon","audy","auerbach","aug","augean","auger","aught","augie","augment","augmentation","augmentative","augmenter","augue","augur","augury","august","augusta","augustan","auguste","augustin","augustina","augustine","augustinian","augustness","augusto","augustus","augy","auk","aundrea","aunt","auntie","aunty","aura","aural","aurea","aurel","aurelea","aurelia","aurelie","aurelio","aurelius","aureole","aureomycin","auria","auric","auricle","auricular","aurie","auriga","aurilia","aurlie","auroora","aurora","auroral","aurore","aurthur","auschwitz","auscultate","auscultation","auspice","auspicious","auspiciousness","auspiciousnesses","aussie","austen","austere","austereness","austerity","austin","austina","austine","austral","australasia","australasian","australes","australia","australian","australis","australites","australoid","australopithecus","austria","austrian","austronesian","aut","aute","auth","authentic","authentically","authenticate","authenticated","authenticating","authentication","authenticationmanager","authenticator","authenticatorbase","authenticity","author","authoress","authorial","authoritarian","authoritarianism","authoritative","authoritativeness","authorities","authority","authorization","authorize","authorized","authorizer","authorizes","authors","authorship","authservice","authtoken","autism","autistic","auto","autobahn","autobiographer","autobiographic","autobiographical","autobiography","autoclave","autocollimator","autocommit","autocomplete","autocompletetextview","autoconfigure","autocorrelate","autocorrelation","autocracy","autocrat","autocratic","autocratically","autodesk","autodial","autodidact","autoeventwireup","autofac","autofill","autofilter","autofluorescence","autofocus","autogeneratecolumns","autograph","autographs","autoignition","autoimmune","autoimmunity","autoincrement","autolayout","autoload","autoloader","automagically","automaker","automapper","automata","automate","automated","automatic","automatically","automating","automation","automatism","automatize","automaton","automobile","automorphism","automotive","autonavigator","autonomic","autonomous","autonomy","autopilot","autoplay","autopostback","autoprefixer","autopsy","autoregressive","autorelease","autorepeat","autosize","autostart","autosuggestibility","autotransformer","autowire","autowired","autowiredannotationbeanpostprocessor","autoworker","autumn","autumnal","aux","auxiliary","auxin","av","ava","avail","availability","available","availableness","availably","availing","avalanche","avalon","avant","avarice","avaricious","avariciousness","avast","avatar","avaudioplayer","avaunt","avc","avd","avdp","ave","aveline","avenge","avenged","avenger","aventine","aventino","avenue","average","averages","averell","averil","averill","avernus","averred","averrer","averring","averroes","avers","averse","averseness","aversion","avert","avery","averyl","aves","avesta","avfoundation","avg","avi","avian","aviary","aviate","aviation","aviator","aviatrices","aviatrix","avicenna","avictor","avid","avidity","avie","avigdor","avignon","avila","avionic","avionics","avior","avis","avitaminoses","avitaminosis","aviv","aviva","avivah","avocado","avocation","avocational","avogadro","avoid","avoidable","avoidably","avoidance","avoided","avoider","avoiding","avoids","avoirdupois","avon","avouch","avow","avowal","avowed","avower","avplayer","avr","avram","avril","avrit","avro","avrom","avuncular","avx","aw","awacs","await","awaiting","awake","awakefromnib","awaken","awakened","awakener","awakening","award","awarder","aware","awareness","awash","away","awe","aweigh","awesome","awesomeness","awestruck","awful","awfuller","awfullest","awfulness","awhile","awk","awkward","awkwardness","awl","awn","awning","awoke","awoken","awol","awry","aws","awt","ax","axd","axe","axehead","axel","axeman","axes","axial","axillary","axiological","axiology","axiom","axiomatic","axiomatically","axiomatization","axiomatize","axion","axios","axis","axle","axletree","axolotl","axon","ay","ayah","ayahs","ayala","ayatollah","ayatollahs","aye","ayers","aylmar","aylmer","aymara","aymer","ayn","az","azalea","azania","azazel","azerbaijan","azimuth","azimuthal","azimuths","azores","azov","azt","aztec","aztecan","azure","azurewebsites","b","ba","baa","baal","bab","babar","babara","babb","babbage","babbette","babbie","babbitt","babble","babbler","babcock","babe","babel","babette","babita","babka","baboon","babushka","baby","babyhood","babyish","babylon","babylonia","babylonian","babysat","babysit","babysitter","babysitting","bac","bacall","bacardi","baccalaureate","baccarat","bacchanal","bacchanalia","bacchanalian","bacchic","bacchus","bach","bachelor","bachelorhood","bacillary","bacilli","bacillus","back","backache","backarrow","backbench","backbencher","backbit","backbite","backbiter","backbitten","backboard","backbone","backbreaking","backbutton","backchaining","backcloth","backcolor","backdate","backdrop","backdropped","backdropping","backed","backend","backends","backer","backfield","backfill","backfire","backgammon","background","backgroundcolor","backgroundimage","backgrounds","backgroundworker","backhand","backhanded","backhander","backhoe","backing","backlash","backless","backlog","backlogged","backlogging","backorder","backpack","backpacker","backpedal","backplane","backplate","backrest","backscatter","backseat","backside","backslapper","backslapping","backslash","backslashes","backslid","backslide","backslider","backspace","backspin","backstabber","backstabbing","backstage","backstair","backstitch","backstop","backstopped","backstopping","backstreet","backstretch","backstroke","backtalk","backticks","backtrace","backtrack","backtracking","backup","backups","backus","backward","backwardness","backwards","backwash","backwater","backwood","backwoodsman","backwoodsmen","backyard","bacon","baconer","bacteria","bacterial","bactericidal","bactericide","bacteriologic","bacteriological","bacteriologist","bacteriology","bacterium","bactria","bad","badder","baddest","baddie","bade","baden","badge","badger","badinage","badland","badlands","badlogic","badly","badman","badmen","badminton","badmouth","badmouths","badness","badrequest","baedeker","baez","baffin","baffle","bafflement","baffler","baffling","bag","bagatelle","bagel","bagful","baggage","baggageman","baggagemen","bagged","bagger","baggily","bagginess","bagging","baggy","baghdad","bagpipe","bagpiper","bagrodia","bags","baguette","baguio","bah","baha","bahama","bahamanian","bahamian","bahia","bahrain","bahs","baikal","bail","bailey","bailie","bailiff","bailiwick","baillie","bailout","bailsman","bailsmen","baily","baird","bairn","bait","baiter","baize","baja","bak","bake","baked","bakehouse","bakelite","baker","bakersfield","bakery","bakeshop","baking","baklava","baksheesh","baku","bakunin","bal","balaclava","balalaika","balance","balanced","balancedness","balancer","balanchine","balancing","balboa","balcony","bald","balder","balderdash","baldfaced","baldness","baldric","balduin","baldwin","baldy","bale","balearic","baleen","baleful","balefuller","balefullest","balefulness","baler","balfour","bali","balinese","balk","balkan","balkanization","balkanize","balker","balkhash","balkiness","balky","ball","ballad","ballade","balladeer","balladry","ballard","ballast","ballcock","baller","ballerina","ballet","balletic","ballfields","ballgame","ballistic","ballistics","balloon","balloonist","ballot","balloter","ballpark","ballplayer","ballpoint","ballroom","balls","ballsy","ballyhoo","balm","balminess","balmy","baloney","balsa","balsam","balsamic","balthazar","baltic","baltimore","baluchistan","baluster","balustrade","balzac","bam","bamako","bamberger","bambi","bambie","bamboo","bamboozle","bamby","ban","banach","banal","banality","banana","bananas","bancroft","band","bandage","bandager","bandanna","bandbox","bandeau","bandeaux","bander","banding","bandit","banditry","bandmaster","bandoleer","bandpass","bands","bandsman","bandsmen","bandstand","bandstop","bandung","bandwagon","bandwidth","bandwidths","bandy","bane","baneful","banefuller","banefullest","bang","bangalore","banger","bangkok","bangladesh","bangladeshi","bangle","bangor","bangui","bani","banish","banisher","banishment","banister","banjarmasin","banjo","banjoist","banjul","bank","bankaccount","bankbook","bankcard","banker","banking","banknote","bankroll","bankrupt","bankruptcy","banks","banky","banned","banneker","banner","banners","banning","bannister","bannock","banns","banquet","banqueter","banquette","bans","banshee","bantam","bantamweight","banter","banterer","bantering","banting","bantu","banyan","banzai","baobab","baos","baotou","baptism","baptismal","baptist","baptiste","baptistery","baptistry","baptize","baptized","baptizer","baptizes","bar","barabbas","barb","barbabas","barbabra","barbadian","barbados","barbara","barbaraanne","barbarella","barbarian","barbarianism","barbaric","barbarically","barbarism","barbarity","barbarize","barbarossa","barbarous","barbarousness","barbary","barbe","barbecue","barbed","barbee","barbel","barbell","barbeque","barber","barbered","barberry","barbershop","barbette","barbey","barbi","barbie","barbital","barbiturate","barbour","barbra","barbuda","barbwire","barby","barcarole","barcelona","barchart","barclay","barcode","bard","barde","bardeen","bardic","bare","bareback","barefaced","barefacedness","barefoot","barehanded","bareheaded","barelegged","barely","bareness","barents","barf","barfly","bargain","bargainer","barge","bargeman","bargemen","bargepole","barhop","barhopped","barhopping","bari","baritone","barium","bark","barked","barkeep","barkeeper","barker","barkley","barks","barley","barleycorn","barlow","barmaid","barman","barmen","barn","barnabas","barnabe","barnaby","barnacle","barnard","barnaul","barnebas","barnes","barnett","barney","barnful","barnhard","barnie","barnsful","barnstorm","barnstormer","barnum","barny","barnyard","baroda","barometer","barometric","barometrically","baron","baronage","baroness","baronet","baronetcy","baronial","barony","baroque","barplot","barque","barquisimeto","barr","barrack","barracker","barracuda","barrage","barranquilla","barre","barred","barrel","barren","barrenness","barrera","barret","barrett","barrette","barri","barricade","barrie","barrier","barriers","barring","barrio","barrister","barron","barroom","barrow","barry","barrymore","bars","barstool","barstow","bart","bartel","bartend","bartender","barter","barterer","barth","barthel","bartholdi","bartholemy","bartholomeo","bartholomeus","bartholomew","bartie","bartk","bartlet","bartlett","bartolemo","bartolomeo","barton","bartram","barty","bary","barycenter","barycentre","barycentric","baryon","baryram","baryshnikov","bas","basal","basalt","basaltic","bascom","base","baseadapter","baseaddress","baseball","baseband","baseboard","baseclass","basecontroller","based","basedir","basel","baseless","baseline","basely","baseman","basemen","basement","basename","baseness","basepath","baseplate","bases","basetting","basetype","baseurl","bash","bashful","bashfulness","basho","bashrc","basia","basic","basically","basicdbobject","basichttpbinding","basicnamevaluepair","basics","basie","basil","basilar","basile","basilica","basilio","basilisk","basilius","basin","basinful","basis","bask","basket","basketball","basketry","basketwork","basophilic","basque","basra","bass","basset","basseterre","bassett","bassinet","bassist","basso","bassoon","bassoonist","basswood","bast","bastard","bastardization","bastardize","bastardized","bastardy","baste","baster","bastian","bastien","bastille","basting","bastion","basutoland","bat","bataan","batavia","batch","batches","batchsize","bate","bated","bater","bates","bath","bathe","bather","bathetic","bathhouse","bathmat","batholomew","bathos","bathrobe","bathroom","baths","bathsheba","bathtub","bathwater","bathyscaphe","bathysphere","batik","batista","batiste","batman","batmen","baton","batsheva","batsman","batsmen","battalion","batted","batten","batter","batteries","battery","batting","battle","battledore","battledress","battlefield","battlefront","battleground","battlement","battler","battleship","batty","batu","batwings","bauble","baud","baudelaire","baudoin","baudouin","bauer","bauhaus","baulk","bausch","bauxite","bavaria","bavarian","bawd","bawdily","bawdiness","bawdy","bawl","bawler","bax","baxie","baxter","baxy","bay","bayamon","bayard","bayberry","bayda","bayer","bayes","bayesian","baylor","bayonet","bayonne","bayou","bayreuth","baz","bazaar","bazel","bazillion","bazooka","bb","bbb","bbbb","bbc","bbl","bbox","bbq","bbs","bc","bcc","bcd","bcp","bcrypt","bd","bdd","bdist","bdrm","be","bea","beach","beachcomber","beachhead","beachwear","beacon","beacons","bead","beading","beadle","beadsman","beadworker","beady","beagle","beak","beaker","beale","bealle","beam","bean","beanbag","beancreationexception","beanie","beanpole","beans","beanstalk","beanutils","bear","bearable","bearably","beard","bearded","beardless","beardmore","beardsley","bearer","bearing","bearish","bearishness","bearlike","bearnaise","bearnard","bearskin","beasley","beast","beasties","beastings","beastliness","beastly","beat","beatable","beatably","beaten","beater","beatific","beatifically","beatification","beatify","beating","beatitude","beatlemania","beatles","beatnik","beatrice","beatrisa","beatrix","beatriz","beats","beau","beauchamps","beaufort","beaujolais","beaumarchais","beaumont","beauregard","beaut","beauteous","beauteousness","beautician","beautification","beautifier","beautiful","beautifully","beautifulness","beautifulsoup","beautify","beauty","beauvoir","beaux","beaver","beaverton","bebe","bebop","becalm","became","because","becca","bechtel","beck","becka","becker","becket","beckett","becki","beckie","beckon","becky","becloud","become","becomes","becoming","becquerel","bed","bedaub","bedazzle","bedazzlement","bedbug","bedchamber","bedclothes","bedded","bedder","bedding","bede","bedeck","bedevil","bedevilment","bedfast","bedfellow","bedford","bedim","bedimmed","bedimming","bedizen","bedlam","bedlinen","bedmaker","bedmate","bedouin","bedpan","bedpost","bedraggle","bedridden","bedrock","bedroll","bedroom","bedsheets","bedside","bedsit","bedsitter","bedsore","bedspread","bedspring","bedstead","bedstraw","bedtime","bee","beebe","beebread","beech","beecher","beechnut","beechwood","beef","beefburger","beefcake","beefiness","beefsteak","beefy","beehive","beekeeper","beekeeping","beeline","beelzebub","been","beep","beeper","beer","beerbohm","beermat","beery","beeswax","beet","beethoven","beetle","beeton","beetroot","beeves","befall","befell","befit","befitted","befitting","befog","befogged","befogging","before","beforeeach","beforehand","beforesend","befoul","befriend","befuddle","befuddlement","beg","began","beget","begetting","beggar","beggarliness","beggarly","beggary","begged","begging","begin","beginform","begining","begininvoke","beginner","beginners","beginning","beginpath","begins","begintransaction","begone","begonia","begot","begotten","begrime","begrudge","begrudging","beguile","beguilement","beguiler","beguiling","beguine","begum","begun","behalf","behalves","behan","behave","behaves","behaving","behavior","behavioral","behaviorism","behaviorist","behavioristic","behaviors","behaviorsubject","behaviour","behead","beheld","behemoth","behemoths","behest","behind","behindhand","behold","beholder","behoofs","behoove","behooving","behring","beiderbecke","beige","beijing","beilul","being","beirut","beitris","bejewel","bekesy","bekki","bel","bela","belabor","belarus","belate","belated","belatedness","belau","belay","belch","beleaguer","belem","belfast","belfry","belg","belgian","belgium","belgrade","belia","belicia","belie","belief","beliefs","belier","believability","believable","believably","believe","believed","believer","believes","believing","belinda","belita","belittle","belittlement","belittler","belize","bell","bella","belladonna","bellamy","bellanca","bellatrix","bellboy","belle","belled","belletrist","belletristic","belleville","bellflower","bellhop","bellicose","bellicoseness","bellicosity","belligerence","belligerency","belligerent","bellina","belling","bellini","bellman","bellmen","bellovin","bellow","bellows","bells","bellwether","bellwood","belly","bellyache","bellyacher","bellybutton","bellyful","bellyfull","belmont","belmopan","beloit","belong","belonging","belongs","belongsto","belongstomany","belorussia","belorussian","belove","beloved","below","belshazzar","belt","belted","belting","belton","beltran","beltsville","beltway","beluga","belushi","belva","belvedere","belvia","bely","beman","bemire","bemoan","bemuse","bemused","bemusement","ben","benacerraf","benares","bench","bencher","benchmark","benchmarking","benchmarks","bend","bended","bender","bendick","bendicty","bendite","bendix","beneath","benedetta","benedetto","benedick","benedict","benedicta","benedictine","benediction","benedicto","benedictory","benedikt","benedikta","benefaction","benefactor","benefactress","benefice","beneficence","beneficent","beneficial","beneficialness","beneficiary","benefit","benefiter","benefits","benelux","benet","benetta","benetton","benevolence","benevolent","benevolentness","bengal","bengali","benghazi","bengt","beniamino","benighted","benightedness","benign","benignant","benignity","benin","beninese","benita","benito","benjamen","benjamin","benji","benjie","benjy","benn","bennett","benni","bennie","bennington","benny","benoit","benoite","benson","bent","bentham","bentlee","bentley","benton","bents","bentwood","benumb","benyamin","benz","benzedrine","benzene","benzine","beograd","beowulf","bequeath","bequeaths","bequest","ber","berate","berber","bereave","bereavement","bereft","berenice","beret","berg","bergen","berger","bergerac","berget","berglund","bergman","bergson","bergsten","bergstrom","beribbon","beriberi","bering","beringer","berk","berke","berkeley","berkelium","berkie","berkley","berkly","berkowitz","berkshire","berky","berle","berlin","berliner","berlioz","berlitz","berm","berman","bermuda","bermudan","bermudian","bern","berna","bernadene","bernadette","bernadina","bernadine","bernard","bernardina","bernardine","bernardino","bernardo","bernarr","bernays","bernbach","berne","bernelle","bernese","bernete","bernetta","bernette","bernhard","bernhardt","berni","bernice","bernie","berniece","bernini","bernita","bernoulli","bernstein","berny","berra","berri","berrie","berry","berrylike","berserk","berserker","bert","berta","berte","berth","bertha","berthe","berths","berti","bertie","bertillon","bertina","bertine","berton","bertram","bertrand","bertrando","berty","beryl","beryle","beryllium","berzelius","bes","beseech","beseecher","beseeching","beseem","beset","besetting","beside","besides","besiege","besieger","besmear","besmirch","besom","besot","besotted","besotting","besought","bespangle","bespatter","bespeak","bespectacled","bespoke","bespoken","bess","bessel","bessemer","bessie","bessy","best","bestial","bestiality","bestiary","bestir","bestirred","bestirring","bestow","bestowal","bestrew","bestrewn","bestridden","bestride","bestrode","bestseller","bestselling","bestubble","bet","beta","betake","betaken","betatron","betcha","betel","betelgeuse","beth","bethanne","bethany","bethe","bethel","bethena","bethesda","bethina","bethink","bethlehem","bethought","bethune","betide","betimes","betoken","betook","betray","betrayal","betrayer","betroth","betrothal","betrothed","betroths","betsey","betsy","betta","bette","betteann","betteanne","better","betterment","betti","bettie","bettina","bettine","betting","bettor","betty","bettye","between","betweenness","betwixt","beulah","bev","bevan","bevel","beverage","beverie","beverlee","beverley","beverlie","beverly","bevin","bevon","bevvy","bevy","bewail","beware","bewhisker","bewigged","bewilder","bewildered","bewildering","bewilderment","bewitch","bewitching","bewitchment","bey","beyond","bezel","bezier","bf","bfs","bg","bgcolor","bgr","bh","bhopal","bhutan","bhutanese","bhutto","bi","bialystok","bianca","bianco","bianka","biannual","bias","biased","biases","biathlon","biaxial","bib","bibbed","bibbie","bibbing","bibby","bibbye","bibendum","bibi","bible","biblical","biblicists","bibliographer","bibliographic","bibliographical","bibliography","bibliophile","bibulous","bicameral","bicameralism","bicarb","bicarbonate","bicentenary","bicentennial","bicep","biceps","bichromate","bicker","bickerer","bickering","biconcave","biconnected","biconvex","bicuspid","bicycle","bicycler","bicyclist","bid","biddable","bidden","bidder","biddie","bidding","biddle","biddy","bide","bider","bidet","bidget","bidiagonal","bidirectional","bids","biennial","biennium","bienville","bier","bierce","bifocal","bifurcate","bifurcation","big","bigamist","bigamous","bigamy","bigdecimal","bigelow","bigfoot","bigged","bigger","biggest","biggie","bigging","biggish","bighead","bighearted","bigheartedness","bighorn","bight","bigint","biginteger","bigmouth","bigmouths","bigness","bigot","bigoted","bigotry","bigquery","bigwig","biharmonic","bijection","bijective","bijou","bijoux","bike","biker","bikini","biko","bil","bilabial","bilateral","bilateralness","bilayer","bilbao","bilberry","bilbo","bile","bilge","bili","biliary","bilinear","bilingual","bilingualism","bilious","biliousness","bilk","bilker","bill","billboard","biller","billet","billfold","billi","billiard","billie","billing","billings","billingsgate","billion","billionaire","billions","billionths","billow","billowy","billposters","bills","billy","billye","bimbo","bimetallic","bimetallism","bimini","bimodal","bimolecular","bimonthly","bin","binaries","binary","binaural","bind","bindable","binded","binder","bindery","binding","bindingcontext","bindingflags","bindingness","bindingredirect","bindingresult","bindings","bindingsource","bindle","bindparam","binds","bindvalue","bindweed","bing","binge","bingham","binghamton","bingo","bini","bink","binky","binnacle","binned","binni","binnie","binning","binny","binocular","binodal","binomial","bins","bintray","binuclear","bio","biochemical","biochemist","biochemistry","biodegradability","biodegradable","biodiversity","bioengineering","bioethics","biofeedback","biog","biograph","biographer","biographic","biographical","biography","bioko","biol","biologic","biological","biologist","biology","biomass","biomedical","biomedicine","biometric","biometrics","biometry","biomolecule","biomorph","bionic","bionically","bionics","biophysic","biophysical","biophysicist","biophysics","biopic","biopsy","biorhythm","bios","bioscience","biosphere","biostatistic","biosynthesized","biotechnological","biotechnologist","biotechnology","biotic","biotin","bipartisan","bipartisanship","bipartite","bipartition","biped","bipedal","biplane","bipolar","bipolarity","biracial","birch","bird","birdbath","birdbaths","birdbrain","birdcage","birder","birdhouse","birdie","birdieing","birdlike","birdlime","birds","birdseed","birdseye","birdsong","birdtables","birdwatch","birefringence","birefringent","biretta","birgit","birgitta","birk","birkenstock","birmingham","biro","biron","birt","birth","birthdate","birthday","birthmark","birthplace","birthrate","birthright","births","birthstone","bis","biscay","biscayne","biscuit","bisect","bisection","bisector","biserial","bisexual","bisexuality","bishkek","bishop","bishopric","bismarck","bismark","bismuth","bismuths","bison","bisque","bissau","bistable","bistate","bistro","bisyllabic","bit","bitblt","bitbucket","bitch","bitchily","bitchiness","bitchy","bitcoin","bitcoins","bitconverter","bite","biter","biting","bitmap","bitmapdata","bitmapdrawable","bitmapfactory","bitmapimage","bitmaps","bitnami","bitnet","bitrate","bits","bitser","bitset","bitted","bitten","bitter","bittern","bitterness","bitternut","bitterroot","bittersweet","bitting","bitty","bitumen","bituminous","bitwise","bivalent","bivalve","bivariate","bivouac","bivouacked","bivouacking","biweekly","biyearly","biz","bizarre","bizarreness","bizet","biztalk","bizzes","bj","bjorn","bk","bl","bla","blab","blabbed","blabber","blabbermouth","blabbermouths","blabbing","blabla","blablabla","black","blackamoor","blackball","blackberry","blackbird","blackbirder","blackboard","blackbody","blackburn","blackcolor","blackcurrant","blacken","blackener","blackfeet","blackfoot","blackguard","blackhead","blacking","blackish","blackjack","blackleg","blacklist","blackmail","blackmailer","blackman","blackmer","blackness","blackout","blackpool","blacksmith","blacksmiths","blacksnake","blackspot","blackstone","blackthorn","blacktop","blacktopped","blacktopping","blackwell","bladder","bladdernut","bladderwort","blade","blah","blahblah","blahs","blaine","blair","blaire","blake","blakelee","blakeley","blakey","blame","blameless","blamelessness","blamer","blameworthiness","blameworthy","blanc","blanca","blanch","blancha","blanchard","blanche","blancher","blancmange","bland","blandish","blandishment","blandit","blandness","blane","blank","blankenship","blanket","blanketing","blankness","blanks","blanton","blantyre","blare","blarney","blas","blaspheme","blasphemer","blasphemous","blasphemousness","blasphemy","blast","blaster","blasting","blastoff","blatancy","blatant","blather","blatting","blatz","blavatsky","blayne","blaze","blazer","blazing","blazon","blazoner","bldg","ble","bleach","bleached","bleacher","bleak","bleakness","blear","blearily","bleariness","bleary","bleat","bleater","bleed","bleeder","bleeker","bleep","blemish","blemished","blench","blend","blender","blenheim","bless","blessed","blessedness","blessing","blevins","blew","bligh","blight","blighter","blimey","blimp","blind","blinded","blinder","blindfold","blinding","blindly","blindness","blindside","blink","blinker","blinking","blinks","blinni","blinnie","blinny","blintz","blintze","blip","blipped","blipping","bliss","blisse","blissful","blissfulness","blister","blistering","blistery","blit","blithe","blitheness","blither","blithesome","blitz","blitzkrieg","blizzard","blk","bloat","bloater","blob","blobbed","blobbing","blobs","bloc","bloch","block","blockade","blockader","blockage","blockbuster","blockbusting","blockchain","blocked","blocker","blockhead","blockhouse","blocking","blockjunit","blockquote","blocks","blocksize","blocky","bloemfontein","blog","blogger","blogging","bloginfo","blogpost","blogs","blogspot","bloke","blomberg","blomquist","blond","blonde","blondell","blondelle","blondie","blondish","blondness","blondy","blood","bloodbath","bloodbaths","bloodcurdling","bloodhound","bloodied","bloodiness","bloodless","bloodlessness","bloodletting","bloodline","bloodmobile","bloodroot","bloodshed","bloodshot","bloodsport","bloodstain","bloodstock","bloodstone","bloodstream","bloodsucker","bloodsucking","bloodthirstily","bloodthirstiness","bloodthirsty","bloodworm","bloody","bloodymindedness","bloom","bloomer","bloomfield","bloomington","bloop","blooper","blossom","blossomy","blot","blotch","blotchy","blotted","blotter","blotting","blotto","blouse","blow","blower","blowfish","blowfly","blowgun","blowing","blown","blowout","blowpipe","blowtorch","blowup","blowy","blowzy","blt","blubber","blubbery","blucher","bludgeon","blue","blueback","bluebeard","bluebell","blueberry","bluebill","bluebird","bluebonnet","bluebook","bluebottle","bluebush","bluefish","bluegill","bluegrass","blueing","blueish","bluejacket","bluejeans","bluemix","blueness","bluenose","bluepoint","blueprint","bluer","bluest","bluestocking","bluesy","bluet","bluetooth","bluetoothadapter","bluetoothdevice","bluff","bluffer","bluffness","bluing","bluish","bluishness","blum","blumenthal","blunder","blunderbuss","blunderer","blundering","blunt","bluntness","blur","blurb","blurred","blurriness","blurring","blurry","blurt","blush","blusher","blushing","bluster","blusterer","blustering","blusterous","blustery","blvd","blythe","bm","bmi","bmp","bmw","bn","bo","boa","boar","board","boarded","boarder","boardgames","boarding","boardinghouse","boardroom","boards","boardwalk","boast","boaster","boastful","boastfulness","boat","boatclubs","boater","boathouse","boating","boatload","boatman","boatmen","boatswain","boatyard","bob","bobbe","bobbed","bobbee","bobbette","bobbi","bobbie","bobbin","bobbing","bobbitt","bobble","bobbsey","bobby","bobbye","bobbysoxer","bobcat","bobette","bobina","bobine","bobinette","bobolink","bobrow","bobs","bobsled","bobsledded","bobsledder","bobsledding","bobsleigh","bobsleighs","bobtail","bobwhite","boca","boccaccio","boccie","bock","bockwurst","bod","bode","bodega","bodenheim","bodhidharma","bodhisattva","bodice","bodied","bodies","bodiless","bodily","boding","bodkin","body","bodybuilder","bodybuilding","bodyguard","bodying","bodyparser","bodysuit","bodyweight","bodywork","boeing","boeotia","boeotian","boer","bog","bogart","bogartian","bogey","bogeyman","bogeymen","bogged","bogging","boggle","boggling","boggy","bogie","bogot","bogus","bogy","bogyman","bogymen","boheme","bohemia","bohemian","bohemianism","bohr","boigie","boil","boiled","boiler","boilermaker","boilerplate","boils","bois","boise","boisterous","boisterousness","bokeh","bola","bold","boldface","boldness","bole","bolero","boleyn","bolivar","bolivares","bolivia","bolivian","boll","bollard","bollix","bolo","bologna","bolometer","boloney","bolshevik","bolshevism","bolshevist","bolshevistic","bolshoi","bolster","bolsterer","bolt","bolted","bolter","bolton","bolts","boltzmann","bolus","bom","bomb","bombard","bombardier","bombardment","bombast","bombastic","bombastically","bombay","bomber","bombproof","bombshell","bona","bonanza","bonaparte","bonaventure","bonbon","bond","bondage","bonder","bondholder","bondie","bondman","bondmen","bondon","bonds","bondsman","bondsmen","bondwoman","bondwomen","bondy","bone","boned","bonehead","boneless","boner","bones","bonfire","bong","bongo","bonham","bonhomie","boniface","boniness","bonita","bonito","bonjour","bonkers","bonn","bonnee","bonner","bonnet","bonneted","bonneville","bonni","bonnibelle","bonnie","bonny","bonsai","bontempo","bonus","bony","bonzes","boo","boob","booby","boodle","boogeyman","boogie","boogieing","boohoo","book","bookbind","bookbinder","bookbindery","bookbinding","bookcase","booked","bookend","booker","bookid","bookie","booking","bookings","bookish","bookishness","bookkeep","bookkeeper","bookkeeping","booklet","bookmaker","bookmaking","bookmark","bookmarks","bookmobile","bookplate","books","bookseller","bookshelf","bookshelves","bookshop","bookstall","bookstore","bookwork","bookworm","bool","boole","boolean","booleanfield","booleans","boom","boomer","boomerang","boomtown","boon","boondocks","boondoggle","boondoggler","boone","boonie","boonies","boony","boor","boorish","boorishness","boost","booster","boosterism","boot","bootblack","boote","bootee","booth","boothe","booths","bootie","booting","bootlaces","bootle","bootleg","bootlegged","bootlegger","bootlegging","bootless","bootloader","bootply","bootprints","bootstrap","bootstrapcdn","bootstrapped","bootstrapper","bootstrapping","booty","booze","boozer","boozy","bop","bopped","bopping","borate","borax","bord","bordeaux","bordello","borden","border","borderbrush","bordercolor","bordered","borderer","borderfactory","borderland","borderlayout","borderline","borderpane","borderradius","borders","borderstyle","borderthickness","borderwidth","bordie","bordon","bordy","bore","borealis","boreas","bored","boredom","boreholes","borer","borg","borges","borgia","boric","boring","boris","bork","born","borne","borneo","borodin","boron","borosilicate","borough","boroughs","borroughs","borrow","borrowed","borrower","borrowing","borscht","borstal","boru","borzoi","bos","bosch","bose","bosh","bosnia","bosnian","bosom","bosomy","boson","bosporus","boss","bossily","bossiness","bossism","bossy","bostitch","boston","bostonian","bosun","boswell","bot","botanic","botanical","botanist","botany","botch","botcher","botes","botfly","both","bother","bothered","bothersome","bothy","boto","bots","botswana","botticelli","bottle","bottleneck","bottler","bottom","bottomless","bottomlessness","bottommost","botulin","botulinus","botulism","boucher","boudoir","bouffant","bougainvillea","bough","boughs","bought","bouillabaisse","bouillon","boulder","boulevard","bounce","bouncer","bouncily","bouncing","bouncy","bouncycastle","bound","boundaries","boundary","bounded","boundedness","bounden","bounder","bounders","boundfield","bounding","boundingbox","boundless","boundlessness","bounds","bounteous","bounteousness","bountiful","bountifulness","bounty","bouquet","bourbaki","bourbon","bourgeois","bourgeoisie","bourke","bourne","bournemouth","bout","boutique","boutonnire","bouvier","bovary","bovine","bow","bowditch","bowdlerization","bowdlerize","bowed","bowel","bowell","bowen","bower","bowers","bowery","bowes","bowie","bowing","bowl","bowlder","bowleg","bowlegged","bowler","bowlful","bowline","bowling","bowman","bowmen","bows","bowser","bowsprit","bowstring","bowwow","box","boxcar","boxed","boxer","boxes","boxful","boxing","boxlayout","boxlike","boxplot","boxtops","boxwood","boxy","boy","boyce","boycey","boycie","boycott","boycotter","boyd","boyer","boyfriend","boyhood","boyish","boyishness","boyle","boys","boyscout","boysenberry","bozo","bp","bpi","bpm","bps","bq","br","bra","brace","braced","bracelet","bracer","braces","brachia","brachium","bracken","bracket","bracketed","bracketing","brackets","brackish","brackishness","bract","brad","bradan","bradawl","bradbury","bradburys","bradded","bradding","braddock","brade","braden","bradford","bradley","bradly","bradney","bradshaw","bradstreet","brady","brae","brag","bragg","braggadocio","braggart","bragged","bragger","braggest","bragging","brahe","brahma","brahman","brahmanism","brahmaputra","brahmin","brahms","braid","braider","braiding","braille","brain","brainard","braincell","brainchild","brainchildren","braininess","brainless","brainlessness","brainpower","brainstorm","brainstorming","brainteaser","brainteasing","braintree","brainwash","brainwasher","brainwashing","brainwave","brainy","braise","brake","brakeman","brakemen","bram","bramble","brambling","brambly","brampton","bran","brana","branch","branched","branches","branching","branchlike","branchville","brand","brandais","brande","brandea","branded","brandeis","brandel","branden","brandenburg","brander","brandi","brandice","brandie","branding","brandise","brandish","brando","brandon","brands","brandt","brandtr","brandy","brandyn","brandywine","braniff","branned","branning","brannon","brant","brantley","braque","brash","brashness","brasilia","brass","brasserie","brassiere","brassily","brassiness","brassy","brat","bratislava","brattain","bratty","bratwurst","braun","bravado","bravadoes","brave","braveness","bravery","bravest","bravo","bravura","brawl","brawler","brawn","brawniness","brawny","bray","brayer","braze","brazen","brazenness","brazer","brazier","brazil","brazilian","brazos","brazzaville","breach","breacher","bread","breadbasket","breadboard","breadbox","breadcrumb","breadcrumbs","breadfruit","breadline","breadth","breadths","breadwinner","break","breakable","breakables","breakage","breakaway","breakdown","breaker","breakfast","breakfaster","breakfront","breaking","breakneck","breakout","breakpoint","breakpoints","breaks","breakthrough","breakthroughs","breakup","breakwater","bream","breanne","brear","breast","breastbone","breastfed","breastfeed","breasting","breastplate","breaststroke","breastwork","breath","breathable","breathalyser","breathalyzer","breathe","breather","breathing","breathless","breathlessness","breaths","breathtaking","breathy","brecht","breckenridge","bred","bredes","bree","breech","breeching","breed","breeder","breeding","breeds","breena","breeze","breezeway","breezily","breeziness","breezy","bremen","bremsstrahlung","bren","brena","brenda","brendan","brenden","brendin","brendis","brendon","brenn","brenna","brennan","brennen","brenner","brent","brenton","bresenham","brest","bret","brethren","breton","brett","breve","brevet","brevetted","brevetting","breviary","brevity","brew","brewer","brewery","brewing","brewpub","brewster","brezhnev","bria","brian","briana","brianna","brianne","briano","briant","briar","bribe","briber","bribery","brice","brick","brickbat","bricklayer","bricklaying","brickmason","brickwork","brickyard","bridal","bridalveil","bride","bridegroom","bridesmaid","bridewell","bridge","bridgeable","bridged","bridgehead","bridgeport","bridger","bridges","bridget","bridgetown","bridgett","bridgette","bridgewater","bridgework","bridging","bridgman","bridie","bridle","bridled","bridleway","brie","brief","briefcase","briefed","briefing","briefly","briefness","briefs","brien","brier","brietta","brig","brigade","brigadier","brigadoon","brigand","brigandage","brigantine","brigg","brigham","bright","brighten","brightener","brightness","brighton","brigid","brigida","brigit","brigitta","brigitte","brilliance","brilliancy","brilliant","brilliantine","brilliantness","brillo","brillouin","brim","brimful","brimless","brimmed","brimming","brimstone","brina","brindisi","brindle","brine","briner","briney","bring","bringer","bringing","brings","brininess","brink","brinkley","brinkmanship","brinn","brinna","briny","brioche","brion","briquet","briquette","brisbane","brisk","brisket","briskness","bristle","bristly","bristol","brit","brita","britain","britannia","britannic","britannica","britches","briticism","british","britisher","britishly","britney","britni","briton","britt","britta","brittan","brittaney","brittani","brittany","britte","britten","britteny","brittle","brittleness","brittne","brittney","brittni","brnaba","brnaby","brno","bro","broach","broacher","broad","broadband","broadcast","broadcaster","broadcasting","broadcastreceiver","broadcasts","broadcloth","broadcloths","broaden","broader","broadleaved","broadloom","broadminded","broadness","broadsheet","broadside","broadsword","broadway","brobdingnag","brobdingnagian","brocade","broccoli","brochette","brochure","brock","brockie","brocky","brod","broddie","broddy","broderic","broderick","brodie","brody","brogan","broglie","brogue","broil","broiler","brok","broke","broken","brokenhearted","brokenness","broker","brokerage","brokers","bromide","bromidic","bromine","bron","bronc","bronchi","bronchial","bronchiolar","bronchiole","bronchiolitis","bronchitic","bronchitis","broncho","bronchus","bronco","broncobuster","bronnie","bronny","bronson","bronte","brontosaur","brontosaurus","bronx","bronze","bronzed","bronzing","brooch","brood","brooder","broodiness","brooding","broodmare","broody","brook","brookdale","brooke","brookfield","brookhaven","brooklet","brooklyn","brookmont","brookside","broom","broomstick","bros","brose","broth","brothel","brother","brotherhood","brotherliness","brotherly","broths","brougham","brought","brouhaha","brow","browbeat","brown","browne","brownell","brownian","brownie","browning","brownish","brownness","brownout","brownstone","brownsville","brows","browse","browser","browserify","browsermodule","browsername","browsers","browsing","brr","brubeck","bruce","brucellosis","brucie","bruckner","bruegel","brueghel","bruin","bruis","bruise","bruised","bruiser","bruit","brumidi","brummel","brunch","brunei","brunelleschi","brunet","brunette","brunhilda","brunhilde","bruno","brunswick","brunt","brush","brusher","brushes","brushfire","brushlike","brushoff","brushwood","brushwork","brushy","brusque","brusqueness","brussels","brutal","brutality","brutalization","brutalize","brutalized","brutalizes","brute","brutish","brutishness","brutus","bruxelles","bryan","bryana","bryant","bryanty","bryce","bryn","bryna","brynn","brynna","brynne","brynner","bryon","brzezinski","bs","bsa","bsd","bson","bss","bst","bstr","bt","btc","btn","btnsave","btnsubmit","btree","btu","btw","bu","bub","bubble","bubblegum","bubbler","bubbles","bubbling","bubbly","buber","bubo","buboes","bubonic","buccaneer","buchanan","bucharest","buchenwald","buchwald","buck","buckaroo","buckboard","bucker","bucket","bucketful","bucketname","buckets","buckeye","buckhorn","buckie","buckingham","buckle","buckled","buckler","buckles","buckley","buckling","buckner","buckram","bucksaw","buckshot","buckskin","buckteeth","bucktooth","buckwheat","bucky","bucolic","bucolically","bud","budapest","budd","budded","buddha","buddhism","buddhist","buddie","budding","buddy","budge","budgerigar","budget","budgetary","budgeter","budgie","budging","budweiser","buehring","buena","buf","buff","buffalo","buffaloes","buffer","buffered","bufferedimage","bufferedinputstream","bufferedoutputstream","bufferedreader","bufferedwriter","bufferer","buffering","buffers","buffersize","buffet","bufflehead","buffoon","buffoonery","buffoonish","buffy","buford","bufsize","bug","bugaboo","bugatti","bugbear","bugeyed","bugged","bugger","buggered","buggering","buggery","bugging","buggy","bugle","bugler","bugs","bugzilla","buick","build","buildconfig","buildcontext","builddir","builder","builders","building","buildings","buildpack","builds","buildscript","buildtoolsversion","buildtypes","buildup","built","builtin","builtins","buiron","bujumbura","bukhara","bukharin","bukkit","bulawayo","bulb","bulba","bulblet","bulbous","bulfinch","bulganin","bulgaria","bulgarian","bulge","bulgy","bulimarexia","bulimia","bulimic","bulk","bulkhead","bulkiness","bulky","bull","bulldog","bulldogged","bulldogger","bulldogging","bulldoze","bulldozer","bullet","bulletin","bulletproof","bullets","bullfight","bullfighter","bullfighting","bullfinch","bullfrog","bullhead","bullheaded","bullheadedness","bullhide","bullhorn","bullied","bullion","bullish","bullishness","bullock","bullpen","bullring","bullseye","bullshit","bullshitted","bullshitter","bullshitting","bullwhackers","bullwinkle","bully","bullyboy","bullying","bulrush","bultmann","bulwark","bum","bumble","bumblebee","bumbler","bumbling","bumbry","bummed","bummer","bummest","bumming","bump","bumper","bumpiness","bumpkin","bumppo","bumptious","bumptiousness","bumpy","bun","bunch","bunche","bunchy","bunco","buncombe","bundestag","bundle","bundled","bundler","bundles","bundling","bundy","bung","bungalow","bungee","bunghole","bungle","bungler","bungling","bunin","bunion","bunk","bunker","bunkhouse","bunkmate","bunko","bunkum","bunni","bunnie","bunny","bunsen","bunt","bunting","bunyan","buoy","buoyancy","buoyant","bur","burbank","burble","burbler","burbs","burch","burden","burdensome","burdensomeness","burdock","bureau","bureaucracy","bureaucrat","bureaucratic","bureaucratically","bureaucratization","bureaucratize","burg","burgeon","burger","burgess","burgh","burgher","burghs","burglar","burglarize","burglarproof","burglary","burgle","burgomaster","burgoyne","burgundian","burgundy","burial","buried","burier","burk","burke","burl","burlap","burler","burlesque","burlesquer","burley","burlie","burliness","burlingame","burlington","burly","burma","burmese","burn","burnable","burnaby","burnard","burne","burned","burner","burnett","burning","burnish","burnisher","burnoose","burnout","burns","burnside","burnt","burp","burr","burris","burrito","burro","burroughs","burrow","burrower","bursa","bursae","bursar","bursary","bursitis","burst","burster","burt","burtie","burton","burty","burundi","burundian","bury","bus","busboy","busby","busch","buses","busgirl","bush","bushel","bushido","bushiness","bushing","bushland","bushman","bushmaster","bushmen","bushnell","bushwhack","bushwhacker","bushwhacking","bushy","busily","business","businesses","businesslike","businessman","businessmen","businesspeople","businessperson","businesswoman","businesswomen","busk","busker","buskin","buss","bust","bustard","buster","bustle","bustling","busty","busy","busybody","busyness","busywork","but","butane","butch","butcher","butcherer","butchery","butene","butler","butt","butte","butted","butter","butterball","buttercup","buttered","butterfat","butterfield","butterfingered","butterfingers","butterfly","butterknife","buttermilk","butternut","butterscotch","buttery","butting","buttock","button","buttoner","buttonhole","buttonholer","buttons","buttonweed","buttonwood","buttress","butyl","butyrate","buuel","buxom","buxomness","buxtehude","buy","buyback","buyer","buyers","buying","buyout","buys","buzz","buzzard","buzzer","buzzword","buzzy","bv","bw","bx","bxs","by","bye","byelaw","byelorussia","byers","bygone","byid","bylaw","byline","byliner","byob","bypass","bypath","bypaths","byplay","byproduct","byram","byran","byrann","byrd","byre","byref","byrle","byrne","byroad","byrom","byron","byronic","byronism","bystander","byte","bytearray","bytearrayinputstream","bytearrayoutputstream","bytebuffer","bytecode","bytes","bytesread","bytestring","byval","byway","byword","byzantine","byzantium","bz","c","ca","cab","cabal","cabala","caballed","caballero","caballing","cabana","cabaret","cabbage","cabbed","cabbing","cabby","cabdriver","caber","cabernet","cabin","cabinet","cabinetmaker","cabinetmaking","cabinetry","cabinetwork","cable","cablecast","cablegram","cabochon","caboodle","caboose","cabot","cabrera","cabrini","cabriolet","cabstand","cacao","cacciatore","cache","cached","cachepot","caches","cachet","caching","cacilia","cacilie","cackle","cackler","cackly","cacm","cacophonist","cacophonous","cacophony","cacti","cactus","cad","cadaver","cadaverous","caddish","caddishness","caddric","caddy","cadence","cadenced","cadencing","cadent","cadenza","cadet","cadette","cadge","cadger","cadillac","cadiz","cadmium","cadre","caducei","caduceus","caedmon","caesar","caesura","caf","cafe","cafeteria","caffe","caffeine","caftan","cage","caged","cager","cagey","cagier","cagiest","cagily","caginess","cagney","cahokia","cahoot","cahra","cai","caiaphas","caiman","cain","caine","cairistiona","cairn","cairo","caisson","caitiff","caitlin","caitrin","cajole","cajolement","cajoler","cajolery","cajun","cake","cakephp","cakewalk","cal","calabash","calaboose","calais","calamari","calamine","calamitous","calamitousness","calamity","calayer","calc","calcareous","calcareousness","calciferous","calcification","calcify","calcimine","calcine","calcite","calcium","calcomp","calculability","calculable","calculate","calculated","calculates","calculating","calculatingly","calculation","calculations","calculative","calculator","calculi","calculus","calcutta","calder","caldera","calderon","caldron","caldwell","cale","caleb","caledonia","calendar","calendars","calender","calf","calfskin","calgary","calhoun","cali","caliban","caliber","calibrate","calibrated","calibrater","calibrating","calibration","calibrator","calibri","calico","calicoes","calida","calif","california","californian","californium","caligula","caliper","caliph","caliphate","caliphs","calisthenic","calisthenics","call","calla","callable","callactivityoncreate","callaghan","callahan","callao","callback","callbacks","callean","called","callee","caller","callers","calley","calli","callida","callie","calligraph","calligrapher","calligraphic","calligraphist","calligraphy","calling","callingconvention","calliope","callisthenics","callisto","calloc","callosity","callous","callousness","callout","callow","callowness","calls","callsite","callus","cally","calm","calming","calmness","caloocan","caloric","calorie","calories","calorific","calorimeter","calorimetric","calorimetry","caltech","calumet","calumniate","calumniation","calumniator","calumnious","calumny","calv","calvary","calve","calvert","calves","calvin","calvinism","calvinist","calvinistic","calyces","calypso","calyx","cam","camacho","camala","camaraderie","camber","cambial","cambium","cambodia","cambodian","cambrian","cambric","cambridge","camcorder","camden","came","camel","camelcase","camelhair","camella","camellia","camelopardalis","camelot","camembert","cameo","camera","camerae","cameraman","cameramen","cameras","cameraupdatefactory","camerawoman","camerawomen","cameron","cameroon","cameroonian","camey","cami","camila","camile","camilla","camille","camino","camion","camisole","cammed","cammi","cammie","cammy","camoens","camomile","camouflage","camouflager","camp","campaign","campaigner","campaigns","campanile","campanological","campanologist","campanology","campbell","campbellsport","camper","campesinos","campest","campfire","campground","camphor","campinas","camping","campos","campsite","campus","campy","camry","camshaft","camus","can","canaan","canaanite","canactivate","canad","canada","canadian","canadianism","canal","canaletto","canalization","canalize","canap","canard","canaries","canary","canasta","canaveral","canberra","cancan","cancel","cancelate","cancelbuttontitle","canceled","canceler","cancellation","cancellationtoken","cancelled","cancer","cancerous","cancun","candace","candelabra","candelabrum","candi","candice","candid","candida","candidacy","candidate","candidates","candidature","candide","candidly","candidness","candie","candle","candlelight","candlelit","candlepower","candler","candlestick","candlewick","candor","candra","candy","cane","canebrake","caner","canexecute","canine","caning","canis","canister","caniuse","canker","cankerous","cannabis","canned","cannelloni","canner","cannery","cannes","cannibal","cannibalism","cannibalistic","cannibalization","cannibalize","cannily","canniness","canninesses","canning","cannister","cannon","cannonade","cannonball","cannot","canny","canoe","canoeist","canoga","canon","canonic","canonical","canonicalization","canonicalize","canonist","canonization","canonize","canonized","canopus","canopy","canst","cant","cantabile","cantabrigian","cantaloupe","cantankerous","cantankerousness","cantata","canted","canteen","canter","canterbury","cantered","cantering","canticle","cantilever","canto","canton","cantonal","cantonese","cantonment","cantor","cantrell","cants","cantu","canute","canvas","canvasback","canvass","canvasser","canyon","cap","capabilities","capability","capable","capableness","capabler","capablest","capably","capacious","capaciousness","capacitance","capacitate","capacitive","capacitor","capacity","caparison","cape","capek","capella","caper","capeskin","capet","capetown","caph","capillarity","capillary","capistrano","capita","capital","capitalism","capitalist","capitalistic","capitalistically","capitalization","capitalize","capitalized","capitalizer","capitalizes","capitan","capitation","capitol","capitoline","capitulate","capitulation","caplet","capo","capon","capone","capote","capped","capping","cappuccino","cappy","capra","capri","caprice","capricious","capriciousness","capricorn","caps","capsicum","capsize","capstan","capstone","capsular","capsule","capsulize","capt","captain","captaincy","captcha","caption","captions","captious","captiousness","captivate","captivation","captivator","captive","captivity","captor","capture","captured","capturer","captures","capturing","capulet","caputo","capybara","car","cara","caracalla","caracas","caracul","carafe","caralie","caramel","caramelize","carapace","carapaxes","carat","caravaggio","caravan","caravaner","caravansary","caravanserai","caravel","caraway","carbide","carbine","carbohydrate","carbolic","carboloy","carbon","carbonaceous","carbonate","carbonation","carbondale","carbone","carbonic","carboniferous","carbonization","carbonize","carbonizer","carbonizes","carbonyl","carborundum","carboy","carbuncle","carbuncular","carburetor","carburetter","carburettor","carcase","carcass","carce","carcinogen","carcinogenic","carcinogenicity","carcinoma","card","cardamom","cardboard","cardenas","carder","cardholders","cardiac","cardiff","cardigan","cardin","cardinal","cardinality","carding","cardiod","cardiogram","cardiograph","cardiographs","cardioid","cardiologist","cardiology","cardiomegaly","cardiopulmonary","cardiovascular","cards","cardsharp","cardview","care","cared","careen","career","careerism","careerist","careers","carefree","careful","carefuller","carefullest","carefully","carefulness","caregiver","careless","carelessness","caren","carena","carer","cares","caresa","caress","caressa","caresse","caresser","caressing","caressive","caret","caretaker","careworn","carey","carfare","cargo","cargoes","carhop","carhopped","carhopping","cari","caria","carib","caribbean","caribou","caricature","caricaturisation","caricaturist","caricaturization","carid","carie","caries","caril","carillon","carillonned","carillonning","carilyn","carin","carina","carine","caring","cariotta","carious","carissa","carita","caritta","carjack","carl","carla","carlee","carleen","carlen","carlene","carleton","carletonian","carley","carlie","carlin","carlina","carline","carling","carlita","carlo","carload","carlota","carlotta","carlsbad","carlson","carlton","carly","carlye","carlyle","carlyn","carlynn","carlynne","carma","carmel","carmela","carmelia","carmelina","carmelita","carmella","carmelle","carmelo","carmen","carmencita","carmichael","carmina","carmine","carmita","carmon","carnage","carnal","carnality","carnap","carnation","carnegie","carnelian","carney","carnival","carnivore","carnivorous","carnivorousness","carnot","carny","caro","carob","carol","carola","carolan","carolann","carole","carolee","caroler","carolin","carolina","caroline","carolingian","carolinian","caroljean","carolus","carolyn","carolyne","carolynn","carom","caron","carotene","carotid","carousal","carouse","carousel","carouser","carp","carpal","carpathian","carpel","carpenter","carpentering","carpentry","carper","carpet","carpetbag","carpetbagged","carpetbagger","carpetbagging","carpeting","carpi","carping","carpool","carport","carpus","carr","carrageen","carree","carrel","carri","carriage","carriageway","carrie","carried","carrier","carriers","carrierwave","carries","carrillo","carrion","carrissa","carrol","carroll","carrot","carroty","carrousel","carry","carryall","carrying","carryout","carryover","cars","carsick","carsickness","carson","cart","cartage","carte","cartel","carter","cartesian","carthage","carthaginian","carthorse","cartier","cartilage","cartilaginous","cartload","cartographer","cartographic","cartography","carton","cartoon","cartoonist","cartridge","cartwheel","cartwright","carty","caruso","carve","carven","carver","carving","cary","caryatid","caryl","caryn","cas","casaba","casablanca","casals","casandra","casanova","casar","casbah","cascade","cascades","cascadetype","cascading","cascara","case","casebook","cased","caseharden","casein","caseload","casement","cases","casework","caseworker","casey","cash","cashbook","cashew","cashier","cashless","cashmere","casi","casie","casing","casino","cask","casket","caspar","casper","caspian","cass","cassandra","cassandre","cassandry","cassatt","cassaundra","cassava","casserole","cassette","cassey","cassi","cassia","cassie","cassino","cassiopeia","cassite","cassius","cassock","cassondra","cassowary","cassy","cast","castaneda","castanet","castaway","caste","casted","castellated","caster","castigate","castigation","castigator","castile","castillo","casting","castle","castoff","castor","castrate","castration","castries","castro","casts","casual","casualness","casualty","casuist","casuistic","casuistry","cat","cataclysm","cataclysmal","cataclysmic","catacomb","catafalque","catalan","catalepsy","cataleptic","catalina","catalog","cataloger","catalogue","catalonia","catalpa","catalysis","catalyst","catalytic","catalytically","catalyze","catamaran","catapult","cataract","catarina","catarrh","catarrhs","catastrophe","catastrophic","catastrophically","catatonia","catatonic","catawba","catbird","catboat","catcall","catch","catchable","catchall","catcher","catches","catching","catchment","catchpenny","catchphrase","catchup","catchword","catchy","cate","catechism","catechist","catechize","catecholamine","categoria","categoric","categorical","categorie","categories","categorization","categorize","categorized","category","categoryid","categoryinfo","categoryname","catenate","catenation","cater","catercorner","caterer","caterina","catering","caterpillar","caterwaul","catfish","catgut","catha","catharina","catharine","catharses","catharsis","cathartic","cathay","cathe","cathedral","cathee","cather","catherin","catherina","catherine","catheter","catheterize","cathi","cathie","cathleen","cathlene","cathode","cathodic","catholic","catholicism","catholicity","cathrin","cathrine","cathryn","cathy","cathyleen","cati","catid","catie","catiline","catina","cation","cationic","catkin","catlaina","catlee","catlike","catlin","catnap","catnapped","catnapping","catnip","cato","catrina","catriona","cats","catskill","catsup","catt","cattail","catted","cattery","cattily","cattiness","catting","cattle","cattleman","cattlemen","catty","catullus","catv","catwalk","caty","caucasian","caucasoid","caucasus","cauchy","caucus","caudal","caught","cauldron","cauliflower","caulk","caulker","causal","causality","causate","causation","causative","cause","caused","causeless","causer","causerie","causes","causeway","causing","caustic","caustically","causticity","cauterization","cauterize","cauterized","caution","cautionary","cautioner","cautious","cautiousness","cavalcade","cavalier","cavalierness","cavalry","cavalryman","cavalrymen","cave","caveat","caveats","caveatted","caveatting","caveman","cavemen","cavendish","caver","cavern","cavernous","caviar","cavil","caviler","caving","cavity","cavort","cavour","caw","caxton","cay","caye","cayenne","cayla","cayman","cayuga","cayuse","caz","cazzie","cb","cbc","cbind","cbs","cc","ccc","cccccc","cchaddie","ccp","cctv","ccu","cd","cdata","cdate","cdb","cdc","cde","cdecl","cdef","cdf","cdh","cdi","cdn","cdnjs","cdr","cds","cdt","ce","cease","ceasefire","ceaseless","ceaselessness","ceasing","ceausescu","cebu","cebuano","ceca","cecal","cece","cecelia","cecil","cecile","ceciley","cecilia","cecilio","cecilius","cecilla","cecily","cecum","ced","cedar","cede","ceded","ceder","cedes","cedilla","ceding","cedric","cef","ceil","ceilidh","ceiling","cel","celandine","celanese","cele","celebes","celebrant","celebrate","celebrated","celebratedness","celebration","celebrator","celebratory","celebrity","celene","celerity","celery","celesta","celeste","celestia","celestial","celestina","celestine","celestyn","celestyna","celia","celibacy","celibate","celie","celina","celinda","celine","celinka","celisse","celka","cell","cellar","cellarer","celle","cellforrowat","cellforrowatindexpath","cellidentifier","cellini","cellist","cello","cellophane","cellpadding","cellphone","cells","cellspacing","celltemplate","cellular","cellulite","celluloid","cellulose","cellvalue","celsius","celt","celtic","cement","cementa","cementer","cementum","cemetery","cenobite","cenobitic","cenotaph","cenotaphs","cenozoic","censer","censor","censored","censorial","censorious","censoriousness","censorship","censure","censurer","census","cent","centaur","centaurus","centavo","centenarian","centenary","centennial","center","centerboard","centered","centerer","centerfold","centerhorizontal","centering","centerline","centerpiece","centers","centervertical","centerx","centery","centigrade","centigram","centiliter","centime","centimeter","centipede","centos","central","centralia","centralism","centralist","centrality","centralization","centralize","centralized","centralizer","centralizes","centre","centrefold","centrex","centric","centrifugal","centrifugate","centrifugation","centrifuge","centripetal","centrist","centroid","cents","centuries","centurion","century","ceo","cephalic","cepheid","cepheus","cer","ceramic","ceramicist","ceramist","cerate","cerberus","cereal","cerebellar","cerebellum","cerebra","cerebral","cerebrate","cerebration","cerebrum","cerement","ceremonial","ceremonious","ceremoniousness","ceremony","cerenkov","ceres","cerf","cerise","cerium","cermet","cern","cerr","cert","certain","certainer","certainest","certainly","certainty","certifiable","certifiably","certificate","certificates","certification","certified","certifier","certify","certiorari","certitude","certs","cerulean","cervantes","cervical","cervices","cervix","cesar","cesare","cesarean","cesaro","cesium","cessation","cession","cessna","cesspit","cesspool","cest","cesya","cet","cetacean","cetera","cetus","cex","ceylon","ceylonese","cezanne","cf","cfc","cfg","cfif","cflags","cfm","cfo","cfoutput","cfset","cg","cgal","cgcolor","cgfloat","cgi","cgimage","cglib","cgpoint","cgpointmake","cgrect","cgrectmake","cgsize","cgsizemake","ch","chablis","chad","chadd","chaddie","chaddy","chadian","chadwick","chafe","chafer","chaff","chaffer","chafferer","chaffey","chaffinch","chagall","chagrin","chai","chaim","chain","chained","chaining","chainlike","chains","chainsaw","chair","chairlady","chairlift","chairman","chairmanship","chairmen","chairperson","chairwoman","chairwomen","chaise","chalcedony","chaldea","chaldean","chalet","chalice","chalk","chalkboard","chalkiness","chalkline","chalky","challenge","challenged","challenger","challenges","challenging","challis","chalmers","chamber","chamberer","chamberlain","chambermaid","chamberpot","chambers","chambray","chameleon","chamfer","chammy","chamois","chamomile","champ","champagne","champaign","champion","championship","champlain","chan","chance","chanced","chancel","chancellery","chancellor","chancellorship","chancellorsville","chancery","chances","chancey","chanciness","chancing","chancre","chancy","chanda","chandal","chandelier","chandigarh","chandler","chandra","chandragupta","chandrasekhar","chandy","chane","chanel","chaney","chang","changchun","change","changeabilities","changeability","changeable","changeableness","changeably","changed","changeless","changeling","changelog","changeover","changer","changes","changeset","changing","changsha","channa","channel","channeler","channelid","channeling","channelization","channelize","channellings","channels","channing","chanson","chant","chantal","chantalle","chanter","chanteuse","chantey","chanticleer","chantilly","chantry","chanty","chanukah","chao","chaos","chaotic","chaotically","chap","chaparral","chapbook","chapeau","chapel","chaperon","chaperonage","chaperone","chaperoned","chaplain","chaplaincy","chaplet","chaplin","chapman","chappaquiddick","chapped","chapping","chapter","chapters","char","chara","charabanc","character","characterful","characteristic","characteristically","characteristics","characterizable","characterization","characterize","characterized","characterizer","characterless","characters","charade","chararray","charat","charbroil","charcoal","charcode","charcodeat","chard","chardonnay","charfield","charge","chargeable","chargeableness","charged","charger","chargers","charges","charging","charil","charily","charin","charindex","chariness","chariot","charioteer","charis","charisma","charismata","charismatic","charismatically","charissa","charisse","charita","charitable","charitableness","charitablenesses","charitably","charity","charla","charlady","charlatan","charlatanism","charlatanry","charlean","charleen","charlemagne","charlena","charlene","charles","charleston","charley","charlie","charline","charlot","charlotta","charlotte","charlottesville","charlottetown","charlton","charm","charmain","charmaine","charmane","charmer","charmian","charmin","charmine","charming","charmion","charmless","charo","charolais","charon","charred","charring","chars","charsequence","charset","chart","chartdata","charted","charter","chartered","charterer","charting","chartist","chartres","chartreuse","chartroom","charts","charwoman","charwomen","chary","charybdis","charyl","chas","chase","chaser","chasing","chasity","chasm","chassis","chaste","chastely","chasten","chasteness","chastise","chastisement","chastiser","chastity","chasuble","chat","chateaubriand","chateaus","chats","chattahoochee","chattanooga","chatted","chattel","chatter","chatterbox","chatterer","chatterley","chatterton","chattily","chattiness","chatting","chatty","chaucer","chauffeur","chaunce","chauncey","chautauqua","chauvinism","chauvinist","chauvinistic","chauvinistically","chavez","chaw","chayefsky","chdir","che","cheap","cheapen","cheaper","cheapest","cheapish","cheapness","cheapskate","cheat","cheater","cheating","chechen","chechnya","check","checkable","checkbook","checkbox","checkboxes","checkboxlist","checked","checker","checkerboard","checkin","checking","checklist","checkmark","checkmate","checkoff","checkout","checkpoint","checkroom","checks","checkselfpermission","checkstyle","checksum","checksummed","checksumming","checkup","cheddar","cheek","cheekbone","cheekily","cheekiness","cheeky","cheep","cheer","cheerer","cheerful","cheerfuller","cheerfullest","cheerfulness","cheerily","cheeriness","cheerio","cheerios","cheerleader","cheerless","cheerlessness","cheers","cheery","cheese","cheeseburger","cheesecake","cheesecloth","cheesecloths","cheeseparing","cheesiness","cheesy","cheetah","cheetahs","cheeto","cheever","chef","cheffed","cheffing","chekhov","chelate","chelation","chelsae","chelsea","chelsey","chelsie","chelsy","chelyabinsk","chem","chemic","chemical","chemiluminescence","chemiluminescent","chemise","chemist","chemistry","chemotherapeutic","chemotherapy","chemurgy","chen","cheng","chengdu","chenille","cheops","cher","chere","cherey","cheri","cherianne","cherice","cherida","cherie","cherilyn","cherilynn","cherin","cherise","cherish","cherisher","cheriton","cherlyn","chernenko","chernobyl","cherokee","cheroot","cherri","cherrita","cherry","cherrypy","chert","cherub","cherubic","cherubim","chervil","chery","cherye","cheryl","chesapeake","cheshire","cheslie","chess","chessboard","chessman","chessmen","chest","chester","chesterfield","chesterton","chestful","chestnut","cheston","chesty","chet","chev","chevalier","cheviot","chevrolet","chevron","chevy","chew","chewer","chewiness","chewy","cheyenne","chg","chge","chi","chiang","chianti","chiaroscuro","chiarra","chiba","chic","chicago","chicagoan","chicana","chicane","chicanery","chicano","chichi","chick","chickadee","chickasaw","chicken","chickenfeed","chickenhearted","chickenpox","chickie","chickpea","chickweed","chicky","chicle","chicness","chico","chicory","chide","chiding","chief","chiefdom","chieftain","chiffon","chiffonier","chigger","chignon","chihuahua","chilblain","child","childbearing","childbirth","childbirths","childcare","childes","childhood","childish","childishness","childitem","childless","childlessness","childlike","childlikeness","childminders","childnode","childnodes","childposition","childprocess","childproof","childrearing","children","childs","chile","chilean","chili","chilies","chill","chiller","chilli","chilliness","chilling","chillness","chilly","chilton","chimaera","chimaerical","chimborazo","chime","chimer","chimera","chimeric","chimerical","chimiques","chimney","chimp","chimpanzee","chimu","chin","china","chinaman","chinamen","chinatown","chinchilla","chine","chinese","ching","chink","chinless","chinned","chinner","chinning","chino","chinook","chinstrap","chintz","chintzy","chip","chipboard","chipewyan","chipmunk","chipped","chippendale","chipper","chippewa","chipping","chips","chiquia","chiquita","chiral","chirico","chirography","chiropodist","chiropody","chiropractic","chiropractor","chirp","chirpy","chirrup","chisel","chiseler","chisholm","chisinau","chit","chitchat","chitchatted","chitchatting","chitin","chitinous","chittagong","chitterlings","chivalric","chivalrous","chivalrously","chivalrousness","chivalry","chive","chivvy","chivying","chk","chlamydia","chlamydiae","chlo","chloe","chloette","chloral","chlorate","chlordane","chloride","chlorinate","chlorinated","chlorinates","chlorination","chlorine","chloris","chlorofluorocarbon","chloroform","chlorophyll","chloroplast","chloroquine","chm","chmod","chock","chockablock","chocoholic","chocolate","chocolaty","choctaw","choice","choiceness","choices","choir","choirboy","choirmaster","choke","chokeberry","chokecherry","choker","chokes","choking","choler","cholera","choleric","cholesterol","choline","cholinesterase","chomp","chomsky","chongqing","choose","chooser","chooses","choosiness","choosing","choosy","chop","chophouse","chopin","chopped","chopper","choppily","choppiness","chopping","choppy","chopstick","choral","chorale","chord","chordal","chordata","chordate","chording","chore","chorea","choreograph","choreographer","choreographic","choreographically","choreographs","choreography","chorines","chorion","chorister","choroid","chortle","chortler","chorus","chose","chosen","chou","chow","chowder","chown","chr","chretien","chris","chrism","chrissake","chrisse","chrissie","chrissy","christ","christa","christabel","christabella","christal","christalle","christan","christchurch","christean","christel","christen","christendom","christened","christening","christensen","christenson","christi","christian","christiana","christiane","christianity","christianize","christiano","christians","christiansen","christie","christin","christina","christine","christlike","christmas","christmastide","christmastime","christoffel","christoffer","christoforo","christoper","christoph","christophe","christopher","christophorus","christos","christy","christye","christyna","chrisy","chroma","chromate","chromatic","chromatically","chromaticism","chromaticness","chromatics","chromatin","chromatogram","chromatograph","chromatographic","chromatography","chromic","chromite","chromium","chromosomal","chromosome","chromosphere","chronic","chronically","chronicle","chronicled","chronicler","chrono","chronograph","chronographs","chronography","chronological","chronologist","chronology","chronometer","chronometric","chrotoem","chrysa","chrysalids","chrysalis","chrysanthemum","chrysler","chrysostom","chrystal","chryste","chrystel","chteau","chteaux","chtelaine","chub","chubbiness","chubby","chucho","chuck","chuckhole","chuckle","chuckling","chuff","chug","chugged","chugging","chukchi","chukka","chum","chumash","chummed","chummily","chumminess","chumming","chummy","chump","chumping","chung","chungking","chunk","chunked","chunkiness","chunks","chunksize","chunky","chuntering","church","churchgoer","churchgoing","churchill","churchillian","churchliness","churchly","churchman","churchmen","churchwarden","churchwoman","churchwomen","churchyard","churl","churlish","churlishness","churn","churner","churning","chute","chutney","chutzpa","chutzpah","chutzpahs","chuvash","chyme","ci","cia","ciao","cicada","cicatrice","cicatrix","cicely","cicero","cicerone","ciceroni","ciceronian","cicily","cid","cider","ciel","cigar","cigarette","cigarillo","cilantro","cilia","ciliate","ciliately","cilium","cilka","cin","cinch","cinchona","cincinnati","cincture","cinda","cindee","cindelyn","cinder","cinderella","cindi","cindie","cindra","cindy","cine","cinema","cinematic","cinematographer","cinematographic","cinematography","cinerama","cinnabar","cinnamon","cint","cipher","ciphered","ciphers","ciphertext","cir","circa","circadian","circe","circle","circler","circles","circlet","circuit","circuital","circuitous","circuitousness","circuitry","circuity","circulant","circular","circularity","circularize","circularness","circulate","circulation","circulations","circulative","circulatory","circumcise","circumcised","circumciser","circumcision","circumference","circumferential","circumflex","circumlocution","circumlocutory","circumnavigate","circumnavigation","circumnavigational","circumpolar","circumscribe","circumscription","circumspect","circumspection","circumsphere","circumstance","circumstances","circumstantial","circumvent","circumvention","circus","cirillo","cirilo","ciro","cirque","cirrhoses","cirrhosis","cirrhotic","cirri","cirrus","cis","cisco","cissiee","cissy","cistern","cit","citadel","citation","citations","cite","cited","citibank","cities","citified","citizen","citizenry","citizens","citizenship","citrate","citric","citroen","citron","citronella","citrus","city","cityid","cityname","cityscape","citywide","civet","civic","civics","civil","civilian","civility","civilization","civilizational","civilize","civilized","civilizedness","civilizer","civilizes","civvies","cj","cjs","ck","ckeditor","cl","clack","clad","cladding","clads","claiborn","claiborne","claim","claimable","claimant","claimed","claimer","claiming","claims","clair","claire","clairol","clairvoyance","clairvoyant","clam","clambake","clamber","clamberer","clammed","clammily","clamminess","clamming","clammy","clamor","clamorer","clamorous","clamorousness","clamp","clampdown","clamper","clamshell","clan","clancy","clandestine","clandestineness","clang","clanger","clangor","clangorous","clank","clanking","clannish","clannishness","clansman","clansmen","clap","clapboard","clapeyron","clapped","clapper","clapping","clapton","claptrap","claque","clara","clarabelle","clarance","clare","claremont","clarence","clarendon","claresta","claret","clareta","claretta","clarette","clarey","clari","claribel","clarice","clarie","clarification","clarifier","clarify","clarinda","clarine","clarinet","clarinetist","clarinettist","clarion","clarissa","clarisse","clarita","clarities","clarity","clark","clarke","clarridge","clary","clash","clasher","clasp","clasped","clasper","class","classa","classb","classcastexception","classer","classes","classic","classical","classicism","classicist","classics","classid","classifiable","classification","classificatory","classified","classifier","classify","classiness","classless","classlist","classloader","classmate","classmethod","classname","classnotfoundexception","classpath","classroom","classrunner","classwork","classworlds","classy","clat","clatter","clatterer","clattering","clattery","claude","claudell","claudelle","claudetta","claudette","claudia","claudian","claudianus","claudie","claudina","claudine","claudio","claudius","claus","clausal","clause","clausen","clauses","clausewitz","clausius","claustrophobia","claustrophobic","clave","clavichord","clavicle","clavier","claw","clawer","clay","clayborn","clayborne","claybourne","clayey","clayier","clayiest","claymore","clayson","clayton","clazz","clea","clean","cleanable","cleaned","cleaner","cleanest","cleaning","cleanliness","cleanly","cleanness","cleans","cleanse","cleanser","cleanup","clear","clearance","clearcolor","clearcut","cleared","clearer","clearfix","clearheaded","clearheadedness","clearing","clearinghouse","clearinterval","clearly","clearness","clearrect","clears","cleartimeout","clearwater","clearway","cleat","cleavage","cleave","cleaver","cleavland","clef","cleft","clem","clematis","clemence","clemenceau","clemency","clement","clemente","clementia","clementina","clementine","clementius","clements","clemmie","clemmy","clemons","clemson","clench","clenches","clenching","cleo","cleon","cleopatra","clerc","clerestory","clergy","clergyman","clergymen","clergywoman","clergywomen","cleric","clerical","clericalism","clerissa","clerk","clerkship","cletis","cletus","cleve","cleveland","clever","cleverness","clevey","clevie","clevis","clew","clf","cli","cliburn","clich","clichd","click","clickable","clicked","clicker","clickhandler","clicking","clickonce","clicks","client","clientcontext","cliente","clientheight","clientid","clientle","clientname","clients","clientsecret","clientsocket","clientwidth","clientx","clienty","cliff","cliffhanger","cliffhanging","clifford","clifton","clim","climacteric","climactic","climate","climatic","climatically","climatological","climatologist","climatology","climax","climb","climbable","climbdown","climbed","climber","clime","clinch","clincher","clinching","cline","cling","clinger","clinging","clingy","clinic","clinical","clinician","clinit","clink","clinker","clinometer","clint","clinton","clio","cliometric","cliometrician","clip","clipboard","clipped","clipper","clipping","clips","clique","cliquey","cliquier","cliquiest","cliquish","cliquishness","clitoral","clitorides","clitoris","clive","clj","clk","cllocation","cllocationcoordinate","cllocationmanager","clo","cloaca","cloacae","cloak","cloakroom","clob","clobber","cloche","clock","clocker","clockmaker","clocks","clockwatcher","clockwise","clockwork","clod","clodded","clodding","cloddish","cloddishness","clodhopper","cloe","clog","clogged","clogging","cloisonn","cloisonnes","cloister","cloistral","clojure","clomp","clonal","clone","cloned","clones","cloning","clonk","clop","clopped","clopping","cloris","close","closed","closefisted","closehandle","closely","closemouthed","closeness","closeout","closer","closers","closes","closest","closet","closeup","closing","closure","closured","closures","closuring","clot","cloth","clothbound","clothe","clothes","clothesbrush","clotheshorse","clothesline","clothesman","clothesmen","clothespin","clothier","clothing","clotho","cloths","clotilda","clotted","clotting","cloture","cloud","cloudburst","clouded","cloudera","cloudflare","cloudformation","cloudfront","cloudiness","cloudless","cloudlessness","clouds","cloudscape","cloudwatch","cloudy","clout","clove","cloven","clover","cloverleaf","clovis","clown","clownish","clownishness","cloy","cloying","clr","cls","clsid","club","clubbed","clubbing","clubfeet","clubfoot","clubhouse","clubroom","clubs","cluck","clue","clueless","clues","cluj","clump","clumpy","clumsily","clumsiness","clumsy","clung","clunk","clunky","cluster","clustered","clustering","clusters","clutch","clutter","cluttered","cly","clyde","clydesdale","clytemnestra","clyve","clywd","cm","cmake","cmakefiles","cmakelists","cmap","cmath","cmd","cmdlet","cmdline","cmds","cmos","cmp","cms","cmu","cn","cname","cnf","cnidarian","cnn","cns","cnt","co","coach","coacher","coachman","coachmen","coachwork","coadjutor","coagulable","coagulant","coagulate","coagulation","coagulator","coal","coaler","coalesce","coalescence","coalescent","coalface","coalfield","coalition","coalitionist","coalminers","coarse","coarsen","coarseness","coast","coastal","coaster","coastguard","coastline","coat","coated","coates","coating","coattail","coattest","coauthor","coax","coaxer","coaxial","coaxing","cob","cobain","cobalt","cobb","cobbed","cobbie","cobbing","cobble","cobbler","cobblestone","cobby","coble","cobol","cobra","cobweb","cobwebbed","cobwebbing","cobwebby","coca","cocaine","cocci","coccus","coccyges","coccyx","cochabamba","cochin","cochineal","cochise","cochlea","cochleae","cochlear","cochran","cock","cockade","cockamamie","cockatoo","cockatrice","cockcrow","cocker","cockerel","cockeye","cockeyed","cockfight","cockfighting","cockily","cockiness","cockle","cocklebur","cockleshell","cockney","cockpit","cockroach","cockscomb","cockshies","cocksucker","cocksure","cocktail","cocky","coco","cocoa","cocoapods","coconut","cocoon","cocos","cocteau","cod","coda","codded","codding","coddle","coddler","code","codebase","codebehind","codebook","codebreak","codec","codecs","coded","codee","codegen","codehaus","codeigniter","codeine","codemirror","codename","codepad","codepen","codependency","codependent","codeplex","codeproject","coder","coders","codes","codesandbox","codetermine","codeword","codex","codfish","codger","codi","codices","codicil","codie","codification","codifier","codify","codigo","coding","codling","codpiece","cody","coed","coedited","coediting","coeditor","coedits","coeducation","coeducational","coef","coeff","coefficient","coefficients","coelenterate","coequal","coerce","coercer","coercible","coercion","coercive","coerciveness","coeval","coexist","coexistence","coexistent","coextensive","cofactor","coffee","coffeecake","coffeecup","coffeehouse","coffeemaker","coffeepot","coffeescript","coffer","cofferdam","coffey","coffin","coffman","cog","cogency","cogent","cogged","cogging","cogitate","cogitation","cogitator","cognac","cognate","cognation","cognition","cognitional","cognitive","cognito","cognizable","cognizance","cognizances","cognizant","cognomen","cognoscente","cognoscenti","cogwheel","cohabit","cohabitant","cohabitation","cohabitational","cohan","coheir","cohen","cohere","coherence","coherencies","coherency","coherent","coherer","cohesion","cohesive","cohesiveness","cohn","coho","cohoes","cohort","coif","coiffed","coiffing","coiffure","coil","coimbatore","coin","coinage","coincide","coincidence","coincident","coincidental","coined","coiner","coins","coinsurance","cointon","cointreau","coital","coitus","coke","col","cola","colan","colander","colas","colatitude","colb","colbert","colby","cold","coldblooded","coldfusion","coldish","coldness","cole","coleen","coleman","colene","coleridge","coleslaw","colet","coletta","colette","coleus","colfax","colgate","colic","colicky","coliform","colin","coliru","coliseum","colitis","coll","collaborate","collaboration","collaborative","collaborator","collage","collagen","collapse","collapsed","collapsibility","collapsible","collapsing","collar","collarbone","collard","collarless","collate","collated","collateral","collation","collator","colleague","colleagues","collect","collected","collectedness","collectible","collecting","collection","collections","collectionview","collective","collectivism","collectivist","collectivity","collectivization","collectivize","collector","collectors","collects","colleen","college","colleges","collegiality","collegian","collegiate","collen","collete","collette","collide","collider","collie","collier","colliery","collimate","collimated","collimates","collimating","collimation","collimator","collin","colline","collinear","collinearity","collision","collisional","collisions","collocate","collocation","colloid","colloidal","colloq","colloquial","colloquialism","colloquies","colloquium","colloquy","collude","collusion","collusive","colly","collying","colman","colname","colnames","colo","cologne","colombia","colombian","colombo","colon","colonel","colonelcy","colonial","colonialism","colonialist","colonist","colonization","colonize","colonized","colonizer","colonizes","colonnade","colons","colony","colophon","color","coloraccent","coloradan","colorado","coloradoan","colorant","coloration","coloratura","colorbar","colorblind","colorblindness","colorbox","colored","colorer","colorfast","colorfastness","colorful","colorfulness","colorimeter","colorimetry","colorindex","coloring","colorization","colorize","colorizing","colorless","colorlessness","colormap","colorprimary","colorprimarydark","colors","colorspace","colorwithred","colossal","colosseum","colossi","colossus","colostomy","colostrum","colour","colours","cols","colspan","colt","colter","coltish","coltishness","coltrane","columbia","columbian","columbine","columbus","column","columna","columnar","columncount","columndefinition","columndefinitions","columnindex","columnist","columnize","columnname","columnnames","columns","columnspan","columnwidth","colver","com","coma","comae","comaker","comanche","comatose","comb","combat","combatant","combative","combativeness","combed","comber","combination","combinational","combinations","combinator","combinatorial","combinatoric","combine","combined","combiner","combines","combining","combo","combobox","comboboxitem","combs","combusted","combustibility","combustible","combustion","combustive","comcast","comdex","comdr","come","comeback","comedian","comedic","comedienne","comedown","comedy","comeliness","comely","comer","comes","comestible","comet","cometary","cometh","comeuppance","comfit","comfort","comfortability","comfortable","comfortableness","comfortably","comforted","comforter","comforting","comfy","comic","comical","comicality","cominform","coming","comity","comm","comma","command","commandant","commandargument","commandbutton","commandeer","commander","commanding","commandline","commandlink","commandment","commandname","commando","commandparameter","commandrunnerimpl","commands","commandtext","commandtype","commas","commemorate","commemoration","commemorative","commemorator","commence","commencement","commencer","commend","commendably","commendation","commendatory","commender","commensurable","commensurate","commensurates","commensuration","comment","commentary","commentate","commentator","commented","commenter","commenting","comments","commerce","commercial","commercialism","commercialization","commercialize","commie","commingle","commiserate","commiseration","commissar","commissariat","commissary","commission","commissioner","commit","commitment","commits","committable","committal","committals","committed","committee","committeeman","committeemen","committeewoman","committeewomen","committing","commode","commodes","commodious","commodiousness","commodity","commodo","commodore","common","commonality","commonalty","commondatakinds","commoner","commonjs","commonly","commonness","commonplace","commonplaceness","commons","commonsense","commonweal","commonwealth","commonwealths","commotion","communal","communality","commune","communicability","communicable","communicably","communicant","communicate","communicates","communicating","communication","communicational","communications","communicative","communicativeness","communicator","communion","communique","communism","communist","communistic","communitarian","communities","community","communize","commutable","commutate","commutation","commutative","commutativity","commutator","commute","commuter","comoros","comp","compact","compaction","compactness","compactor","companies","companion","companionable","companionableness","companionably","companionship","companionway","company","companyid","companyname","compaq","comparabilities","comparability","comparable","comparableness","comparably","comparative","comparativeness","comparator","compare","compared","comparer","compares","compareto","comparing","comparison","comparisons","compartment","compartmental","compartmentalization","compartmentalize","compass","compassion","compassionate","compassionateness","compat","compatibility","compatible","compatibleness","compatibly","compatriot","compeer","compel","compellable","compelled","compelling","compendious","compendium","compensable","compensate","compensated","compensation","compensator","compensatory","compete","competence","competency","competent","competing","competition","competitive","competitiveness","competitor","competitors","compilable","compilation","compile","compiled","compiler","compilers","compilerservices","compiles","compilesdkversion","compiling","complacence","complacency","complacent","complain","complainant","complainer","complaining","complains","complaint","complaints","complaisance","complaisant","complected","complement","complementariness","complementarity","complementary","complementation","complementer","completablefuture","complete","completed","completely","completeness","completer","completes","completing","completion","completionhandler","complex","complexion","complexional","complexity","complexness","complextype","compliance","compliant","complicate","complicated","complicatedness","complication","complicator","complicit","complicity","complier","compliment","complimentary","complimenter","comply","component","componentdidmount","componentinfo","componentmodel","componentname","components","componentscan","componentwillmount","comport","comportment","compose","composed","composedness","composer","composers","composite","composition","compositional","compositions","compositor","compost","composure","compote","compound","compoundbutton","compounded","compounder","comprehend","comprehending","comprehensibility","comprehensible","comprehensibleness","comprehensibly","comprehension","comprehensions","comprehensive","comprehensiveness","compress","compressed","compressformat","compressibility","compressible","compressing","compression","compressional","compressive","compressor","comprise","compromise","compromised","compromiser","compromising","compton","comptroller","compulsion","compulsive","compulsiveness","compulsivity","compulsorily","compulsory","compunction","compuserve","computability","computable","computably","computation","computational","computations","compute","computed","computer","computerese","computerization","computerize","computername","computers","computes","computing","comrade","comradely","comradeship","comte","con","conakry","conan","conant","concat","concatenate","concatenated","concatenating","concatenation","concave","concaveness","conceal","concealed","concealer","concealing","concealment","conceded","conceit","conceited","conceitedness","conceivable","conceivably","conceive","conceiver","concentrate","concentration","concentrator","concentrically","concepcin","concept","conception","conceptional","concepts","conceptual","conceptuality","conceptualization","conceptualizations","conceptualize","conceptualizing","conceptually","concern","concerned","concerning","concerns","concert","concerted","concertina","concertize","concertmaster","concerto","concession","concessionaire","concessional","concessionary","concetta","concettina","conch","conchita","conchs","concierge","conciliar","conciliate","conciliation","conciliator","conciliatory","concise","conciseness","concision","conclave","conclude","concluder","conclusion","conclusions","conclusive","conclusiveness","concoct","concocter","concoction","concomitant","concord","concordance","concordant","concordat","concorde","concordia","concourse","concrete","concreteness","concretion","concubinage","concubine","concupiscence","concupiscent","concur","concurrence","concurrency","concurrent","concurrenthashmap","concurrently","concuss","concussion","cond","conda","condemn","condemnate","condemnation","condemnatory","condemner","condensate","condensation","condense","condensed","condenser","condensible","condescend","condescending","condescension","condign","condiment","condimentum","condition","conditional","conditionally","conditionals","conditioned","conditioner","conditioning","conditions","condo","condole","condolence","condom","condominium","condone","condoner","condor","condorcet","conduce","conducive","conduciveness","conduct","conductance","conductibility","conductible","conduction","conductive","conductivity","conductor","conductress","conduit","coneflower","conestoga","coney","conf","confab","confabbed","confabbing","confabulate","confabulation","confect","confection","confectioner","confectionery","confectionist","confederacy","confederate","confer","conferee","conference","conferences","conferrable","conferral","conferred","conferrer","conferring","confessed","confession","confessional","confessor","confetti","confidant","confidante","confide","confidence","confident","confidential","confidentiality","confidentialness","confider","confiding","config","configchanges","configfile","configs","configsections","configurable","configuration","configurationmanager","configurations","configure","configured","configureservices","configuring","confine","confined","confinement","confiner","confirm","confirmation","confirmatory","confirmed","confirmedness","confirmpassword","confirms","confiscate","confiscation","confiscator","confiscatory","conflagration","conflate","conflation","conflict","conflicting","conflicts","confluence","confluent","conform","conformable","conformal","conformance","conformational","conformer","conforming","conformism","conformist","conformities","conformity","conforms","confound","confounded","confront","confrontation","confrontational","confronter","confrre","confucian","confucianism","confucius","confuse","confused","confusedness","confuses","confusing","confusion","confutation","confute","confuter","cong","conga","congeal","congealment","congenial","congeniality","conger","congeries","congest","congestion","conglomerate","conglomeration","congo","congolese","congrats","congratulate","congratulation","congratulations","congratulatory","congregate","congregation","congregational","congregationalism","congregationalist","congress","congressional","congressman","congressmen","congresspeople","congressperson","congresswoman","congresswomen","congreve","congruence","congruences","congruency","congruent","congruential","congruity","congruous","congruousness","congue","conic","conical","conicalness","conics","conifer","coniferous","conjectural","conjecture","conjecturer","conjoint","conjugacy","conjugal","conjugate","conjugation","conjunct","conjunction","conjunctiva","conjunctive","conjunctivitis","conjuration","conjure","conjurer","conjuring","conk","conker","conley","conman","conn","connect","connected","connectedly","connectedness","connectible","connecticut","connecting","connection","connectionfactory","connectionhandler","connectionimpl","connectionless","connectionmanager","connectionpool","connectionresult","connections","connectionstring","connectionstrings","connective","connectivity","connectivitymanager","connector","connectors","connects","connelly","conner","connery","connexion","conney","conni","connie","conniption","connivance","connive","conniver","connoisseur","connor","connotative","connstring","connubial","conny","conquer","conquerable","conquered","conqueror","conquers","conquest","conquistador","conrad","conrade","conrado","conrail","conroy","cons","consalve","consanguineous","consanguinity","conscienceless","conscientious","conscientiousness","conscionable","conscious","consciousness","conscription","consecrate","consecrated","consecrates","consecrating","consecration","consectetur","consecutive","consecutiveness","consensus","consent","consenter","consenting","consequat","consequence","consequences","consequent","consequential","consequentiality","consequentialness","consequently","conservancy","conservation","conservationism","conservationist","conservatism","conservative","conservativeness","conservator","conservatory","consider","considerable","considerables","considerably","considerate","considerateness","consideration","considerations","considered","considerer","considering","considers","consign","consignee","consignment","consist","consistence","consistency","consistent","consistently","consisting","consistory","consists","consolable","consolata","consolation","consolatory","console","consoleapplication","consoled","consoler","consolidate","consolidated","consolidates","consolidation","consolidator","consoling","consomm","consonance","consonances","consonant","consonantal","consortia","consortium","conspectus","conspicuous","conspicuousness","conspiracy","conspirator","conspiratorial","const","constable","constabulary","constance","constancia","constancy","constant","constanta","constantia","constantin","constantina","constantine","constantino","constantinople","constantly","constants","constellation","consternate","consternation","constexpr","constipate","constipation","constituency","constituent","constitute","constituted","constitutes","constituting","constitution","constitutional","constitutionality","constitutionally","constitutive","constr","constrain","constrained","constrainedly","constraint","constraintbottom","constraintend","constraintlayout","constraints","constraintstart","constrainttop","constrict","constriction","constrictor","construable","construct","constructed","constructibility","constructible","constructing","construction","constructional","constructionist","constructions","constructive","constructiveness","constructor","constructorresolver","constructors","constructs","construe","consuela","consuelo","consul","consular","consulate","consulship","consult","consultancy","consultant","consultation","consultative","consulted","consulter","consulting","consumable","consume","consumed","consumer","consumerism","consumerist","consumers","consumes","consuming","consummate","consummated","consumption","consumptive","cont","contact","contacted","contactform","contactid","contacting","contactlist","contactname","contacts","contactscontract","contagion","contagious","contagiousness","contain","contained","container","containerbase","containerization","containerize","containers","containerview","containing","containment","contains","containskey","contaminant","contaminate","contaminated","contaminates","contaminating","contamination","contaminative","contaminator","contd","contemn","contemplate","contemplation","contemplative","contemplativeness","contemporaneity","contemporaneous","contemporaneousness","contempt","contemptible","contemptibleness","contemptibly","contemptuous","contemptuousness","content","contentcontrol","contentdescription","contented","contenteditable","contentedly","contentedness","contention","contentious","contentiousness","contentlength","contently","contentment","contentmode","contentoffset","contentpage","contentpane","contentplaceholder","contentpresenter","contentprovider","contentresolver","contents","contentsize","contenttemplate","contenttype","contentvalues","contentview","contentwindow","conterminous","contest","contestable","contestant","contested","context","contextcompat","contexthandler","contextloader","contextloaderlistener","contextmenu","contextpath","contexts","contextual","contextualize","contiguity","contiguous","contiguousness","continence","continent","continental","continents","contingency","contingent","continua","continuable","continual","continually","continuance","continuant","continuation","continue","continued","continuer","continues","continuewith","continuing","continuity","continuous","continuously","continuousness","continuum","contort","contortion","contortionist","contour","contours","contra","contraband","contrabass","contraception","contraceptive","contract","contractible","contractile","contractor","contracts","contractual","contradict","contradiction","contradictorily","contradictoriness","contradictory","contradistinction","contraflow","contrail","contraindicate","contraindication","contralto","contrapositive","contraption","contrapuntal","contrariety","contrarily","contrariness","contrariwise","contrary","contrast","contrasting","contrastive","contravene","contravener","contravention","contreras","contretemps","contrib","contribute","contributed","contributing","contribution","contributions","contributive","contributor","contributorily","contributors","contributory","contrite","contriteness","contrition","contrivance","contrive","contrived","contriver","control","controlid","controllability","controllable","controllably","controlled","controller","controllercontext","controllername","controllers","controlling","controls","controltemplate","controltovalidate","controversial","controversialists","controversy","controvert","controvertible","contumacious","contumacy","contumelious","contumely","contuse","contusion","conundrum","conurbation","conv","convalesce","convalescence","convalescent","convallis","convect","convection","convectional","convector","convene","convener","convenience","convenient","conveniently","conventicle","convention","conventional","conventionalism","conventionalist","conventionality","conventionalize","conventions","convergence","convergent","conversant","conversation","conversational","conversationalist","conversations","conversazione","converse","conversion","conversioning","conversions","convert","converted","converter","converters","convertibility","convertible","convertibleness","converting","converts","convertto","convertview","convex","convexity","convey","conveyance","conveyancer","conveyancing","conveyor","convict","conviction","convince","convinced","convincer","convincing","convincingness","convivial","conviviality","convoke","convolute","convoluted","convolution","convolve","convolved","convolves","convolving","convoy","convulse","convulsion","convulsive","convulsiveness","conway","cony","coo","cook","cookbook","cooke","cooked","cooker","cookery","cookie","cookiecontainer","cookies","cooking","cookout","cooks","cookware","cooky","cool","coolant","cooled","cooler","cooley","coolheaded","coolidge","coolie","coolness","coon","coonskin","coop","cooper","cooperage","cooperate","cooperation","cooperative","cooperativeness","cooperator","coord","coordinate","coordinated","coordinateness","coordinates","coordination","coordinator","coordinatorlayout","coords","coors","coot","cootie","cop","copay","cope","copeland","copenhagen","coper","copernican","copernicus","copied","copier","copies","copilot","coping","copious","copiousness","coplanar","copland","copley","copolymer","copora","copped","copper","copperfield","copperhead","copperplate","coppersmith","coppersmiths","coppery","coppice","copping","coppola","copra","coprolite","coprophagous","cops","copse","copter","coptic","copula","copulate","copulation","copulative","copy","copybook","copycat","copycatted","copycatting","copying","copyist","copyright","copyrighter","copyto","copywriter","coquetry","coquette","coquettish","cor","cora","corabel","corabella","corabelle","coracle","coral","coralie","coraline","coralline","coralyn","corba","corbel","corbet","corbett","corbie","corbin","corby","cord","corda","cordage","corded","cordelia","cordelie","cordell","corder","cordey","cordi","cordial","cordiality","cordialness","cordie","cordillera","cordilleras","cording","cordite","cordless","cordoba","cordon","cordova","cordovan","cordula","corduroy","cordy","core","cored","coredata","coreen","corefoundation","corella","corenda","corene","corer","cores","corespondent","coretta","corette","corey","corfu","corgi","cori","coriander","corie","corilla","corina","corine","coring","corinna","corinne","corinth","corinthian","corinthians","coriolanus","coriolis","coriss","corissa","cork","corked","corker","corks","corkscrew","corliss","corly","corm","cormack","cormorant","corn","cornall","cornball","cornbread","corncob","corncrake","cornea","corneal","corneille","cornela","cornelia","cornelius","cornell","cornelle","corner","cornerradius","corners","cornerstone","cornet","corney","cornfield","cornflake","cornflour","cornflower","cornice","cornie","cornily","corniness","cornish","cornmeal","cornrow","cornstalk","cornstarch","cornucopia","cornwall","cornwallis","corny","corolla","corollary","corona","coronado","coronal","coronary","coronate","coronation","coroner","coronet","corot","coroutine","coroutines","corp","corpora","corporal","corporate","corporately","corporation","corporations","corporatism","corporatist","corporeal","corporeality","corporealness","corps","corpse","corpsman","corpsmen","corpulence","corpulent","corpulentness","corpus","corpuscle","corpuscular","corr","corral","corralled","corralling","correct","correctable","corrected","correcting","correction","correctional","corrections","corrective","correctly","correctness","corrector","correggio","correlate","correlated","correlation","correlative","correna","correspond","correspondence","correspondent","corresponding","corresponds","correy","corri","corrianne","corridor","corrie","corrigenda","corrigendum","corrigible","corrina","corrine","corrinne","corroborate","corroborated","corroboration","corroborative","corroborator","corroboratory","corrode","corrodible","corrosion","corrosive","corrosiveness","corrugate","corrugation","corrupt","corrupted","corrupter","corruptibility","corruptible","corruption","corruptions","corruptive","corruptness","corry","cors","corsage","corsair","corset","corsica","corsican","cort","cortes","cortex","cortez","cortge","cortical","cortices","corticosteroid","cortie","cortisone","cortland","cortney","corty","corundum","coruscate","coruscation","corvallis","corvette","corvus","cory","cos","cosby","cosetta","cosette","cosign","cosignatory","cosily","cosimo","cosine","cosiness","cosme","cosmetic","cosmetically","cosmetician","cosmetologist","cosmetology","cosmic","cosmical","cosmo","cosmogonist","cosmogony","cosmological","cosmologist","cosmology","cosmonaut","cosmopolitan","cosmopolitanism","cosmos","cosponsor","cossack","cosset","cost","costa","costanza","costar","costarred","costarring","costello","costive","costiveness","costless","costliness","costly","costner","costs","costume","costumer","cot","cotangent","cote","coterie","coterminous","cotillion","cotonou","cotopaxi","cottage","cottager","cottar","cotted","cotter","cotton","cottonmouth","cottonmouths","cottonseed","cottontail","cottonwood","cottony","cotyledon","couch","couchbase","couchdb","couching","cougar","cough","cougher","coughs","could","couldn","couldnt","coule","coulomb","council","councilman","councilmen","councilor","councilperson","councilwoman","councilwomen","counsel","counsellings","counselor","count","countability","countable","countably","countdown","countdowntimer","counted","countenance","countenancer","counter","counteract","counteraction","counterargument","counterattack","counterbalance","counterclaim","counterclockwise","counterculture","countercyclical","counterespionage","counterexample","counterfeit","counterfeiter","counterflow","counterfoil","counterforce","counterinsurgency","counterintelligence","counterintuitive","counterman","countermand","countermeasure","countermen","counteroffensive","counteroffer","counterpane","counterpart","counterpoint","counterpoise","counterproductive","counterproposal","counterrevolution","counterrevolutionary","counters","countersign","countersignature","countersink","counterspy","counterstrike","countersunk","countertenor","countervail","counterweight","countess","countif","counting","countless","countries","countrify","country","countrycode","countryid","countryman","countrymen","countryname","countryside","countrywide","countrywoman","countrywomen","counts","county","coup","coupe","couperin","couple","coupled","coupler","couplers","couples","couplet","coupling","coupon","coupons","courage","courageous","courageously","courageousness","courages","courbet","courgette","courier","course","courseid","coursename","courser","courses","coursework","coursing","court","courtenay","courteous","courteousness","courteousnesses","courtesan","courtesied","courtesy","courtesying","courthouse","courtier","courtliness","courtly","courtnay","courtney","courtroom","courts","courtship","courtyard","couscous","cousin","cousinly","cousteau","cout","couture","couturier","cov","covalent","covariance","covariant","covariate","covary","cove","coven","covenant","covenanted","covenanter","covent","coventry","cover","coverable","coverage","coverall","covered","coverer","covering","coverlet","covers","coversheet","covert","covertness","covet","coveter","coveting","covetous","covetousness","covey","covington","cow","coward","cowardice","cowardliness","cowardly","cowbell","cowbird","cowboy","cowcatcher","cowed","cower","cowering","cowgirl","cowhand","cowherd","cowhide","cowl","cowley","cowlick","cowling","cowman","cowmen","coworker","cowper","cowpoke","cowpony","cowpox","cowpunch","cowpuncher","cowrie","cowshed","cowslip","cox","coxcomb","coxswain","coy","coyer","coyest","coyly","coyness","coyote","coyoteadapter","coypu","cozen","cozenage","cozily","coziness","cozmo","cozumel","cozy","cp","cpa","cpan","cpanel","cpd","cpi","cpl","cplusplus","cpo","cpp","cppreference","cpr","cps","cpt","cpu","cpus","cpython","cq","cql","cr","crab","crabapple","crabbe","crabbed","crabbedness","crabber","crabbily","crabbiness","crabbing","crabby","crabgrass","crablike","crack","crackable","crackdown","cracker","crackerjack","crackle","crackling","crackly","crackpot","crackup","cradle","cradler","cradling","craft","craftily","craftiness","craftsman","craftsmanship","craftsmen","craftspeople","craftspersons","craftswoman","craftswomen","crafty","crag","craggie","cragginess","craggy","craig","craigslist","cram","cramer","crammed","crammer","cramming","cramp","cramper","crampon","cran","cranach","cranberry","crandall","crane","cranelike","cranford","cranial","cranium","crank","crankcase","crankily","crankiness","crankshaft","cranky","cranmer","cranny","cranston","crap","crape","crapped","crappie","crapping","crappy","crapshooter","cras","crash","crashed","crasher","crashes","crashing","crashlytics","crass","crassness","crate","crater","cravat","cravatted","cravatting","crave","craven","cravenness","craver","craving","craw","crawdad","crawfish","crawford","crawl","crawler","crawling","crawlspace","crawlway","crawly","cray","crayfish","crayola","crayon","craze","crazily","craziness","crazy","crc","crche","creak","creakily","creakiness","creaky","cream","creamer","creamery","creamily","creaminess","creamy","crease","creased","creases","creasing","creat","create","createbean","createbitmap","createchooser","createclass","createcommand","createconnection","createcriteria","created","createdat","createdate","createdby","createddate","createdon","createelement","createfile","createinstance","createmap","createobject","createobjecturl","createparallelgroup","createquery","creates","createserver","createstatement","createtable","createtextnode","createuser","createview","creating","creation","creationdate","creationism","creationist","creative","creativeness","creativities","creativity","creator","creators","creature","creatureliness","creaturely","cred","credence","credent","credential","credentials","credenza","credibility","credible","credibly","credit","creditability","creditable","creditableness","creditably","credited","creditor","credits","creditworthiness","credo","creds","credulity","credulous","credulousness","cree","creed","creedal","creeds","creek","creekside","creel","creep","creeper","creepily","creepiness","creepy","cref","creigh","creight","creighton","cremate","cremation","crematoria","crematorium","crematory","creme","crenelate","crenelation","creole","creon","creosote","crepe","crept","crescendo","crescendoed","crescendoing","crescent","cress","crest","crestfallen","crestfallenness","cresting","crestless","crestview","cretaceous","cretaceously","cretan","crete","cretin","cretinism","cretinous","cretonne","crevasse","crevice","crew","crewel","crewelwork","crewman","crewmen","crib","cribbage","cribbed","cribber","cribbing","crichton","crick","cricket","cricketer","cried","crier","cries","crime","crimea","crimean","crimes","criminal","criminality","criminalization","criminalize","criminologist","criminology","crimp","crimper","crimson","crin","cringe","cringer","crinkle","crinkly","crinoline","cripple","crippler","crippling","cris","crisco","crises","crisis","crisp","crisper","crispiness","crispness","crispy","criss","crisscross","crissie","crissy","crista","cristabel","cristal","cristen","cristi","cristian","cristiano","cristie","cristin","cristina","cristine","cristionna","cristobal","cristy","crit","criteria","criterion","critic","critical","criticality","critically","criticalness","criticism","criticize","criticized","criticizer","criticizes","criticizing","criticizingly","critique","critter","crlf","crm","croak","croaker","croaky","croat","croatia","croatian","croce","crochet","crocheter","crock","crockery","crockett","crockpot","crocodile","crocus","croesus","croft","crofter","croissant","croix","cromwell","cromwellian","cron","crone","cronin","cronjob","cronkite","crontab","cronus","crony","crook","crooked","crookedness","crookes","crookneck","croon","crooner","crop","cropland","cropped","cropper","cropping","croquet","croquette","crosby","crosier","cross","crossarm","crossbar","crossbarred","crossbarring","crossbeam","crossbones","crossbow","crossbowman","crossbowmen","crossbred","crossbreed","crosscheck","crosscurrent","crosscut","crosscutting","crossdomain","crossed","crosses","crossfire","crosshatch","crossing","crossness","crossorigin","crossover","crosspatch","crosspiece","crosspoint","crossproduct","crossroad","crossroads","crosstalk","crosstown","crosswalk","crossway","crosswind","crosswise","crossword","crotch","crotchet","crotchetiness","crotchety","crotchless","croton","crouch","croup","croupier","croupy","crow","crowbait","crowbar","crowbarred","crowbarring","crowd","crowded","crowdedness","crowfeet","crowfoot","crowley","crown","crowned","crowner","crozier","crs","crt","crucial","crucible","crucifiable","crucifix","crucifixion","cruciform","crucify","crud","crudded","crudding","cruddy","crude","crudeness","crudits","crudity","cruel","cruelness","cruelty","cruet","cruft","crufty","cruikshank","cruise","cruiser","cruller","crumb","crumble","crumbliness","crumbly","crumby","crumminess","crummy","crump","crumpet","crumple","crunch","crunchiness","crunchy","crupper","crusade","crusader","cruse","crush","crushable","crusher","crushing","crushproof","crusoe","crust","crustacean","crustal","crustily","crustiness","crusty","crutch","crux","cruz","cry","crybaby","cryogenic","cryogenics","cryostat","cryosurgery","crypt","cryptanalysis","cryptanalyst","cryptanalytic","cryptic","cryptically","crypto","cryptogram","cryptographer","cryptographic","cryptographically","cryptography","cryptologic","cryptological","cryptologist","cryptology","cryptozoic","crysta","crystal","crystalline","crystallite","crystallization","crystallize","crystallized","crystallizes","crystallizing","crystallographer","crystallographic","crystallography","crystie","cs","csc","cse","csharp","cshtml","csp","csproj","csr","csrf","csrftoken","css","cssclass","cssmenu","cssref","cssselector","cst","cstdlib","cstr","cstring","csv","csvfile","ct","cte","cthrine","ctime","ctl","ctn","ctor","ctp","ctr","ctrl","cts","ctx","ctype","ctypes","cu","cub","cuba","cuban","cubbed","cubbing","cubbyhole","cube","cuber","cubes","cubic","cubical","cubicle","cubism","cubist","cubit","cuboid","cuchulain","cuckold","cuckoldry","cuckoo","cucumber","cud","cuda","cuddle","cuddly","cudgel","cue","cuff","cuisinart","cuisine","culbertson","culinary","cull","cullan","cullen","cullender","culler","culley","cullie","cullin","cully","culminate","culmination","culotte","culpa","culpability","culpable","culpableness","culpably","culprit","cult","cultism","cultist","cultivable","cultivate","cultivated","cultivation","cultivator","cultural","culture","cultured","cultureinfo","cultures","culver","culvert","cum","cumber","cumberland","cumbersome","cumbersomeness","cumbrous","cumin","cummerbund","cummings","cumquat","cumsum","cumulate","cumulation","cumulative","cumuli","cumulonimbi","cumulonimbus","cumulus","cunard","cuneiform","cunnilingus","cunning","cunningham","cunningness","cunt","cup","cupboard","cupcake","cupertino","cupful","cupid","cupidinously","cupidity","cupola","cupped","cupping","cupric","cuprous","cur","curability","curabitur","curable","curableness","curably","curacao","curacy","curare","curate","curative","curator","curatorial","curb","curbing","curbside","curbstone","curcio","curd","curdate","curdle","cure","cured","curer","curettage","curfew","curfs","curia","curiae","curie","curio","curiosity","curious","curiousness","curitiba","curium","curl","curler","curlew","curlicue","curliness","curling","curlopt","curly","curlycue","curmudgeon","curr","curran","currant","curred","currencies","currency","current","currentculture","currentdate","currentdb","currentdevice","currentdomain","currentindex","currentitem","currentline","currentlocation","currently","currentness","currentnode","currentpage","currentposition","currentrow","currentstate","currenttarget","currentthread","currenttime","currenttimemillis","currentuser","currentvalue","currentversion","currey","curricle","curricula","curricular","curriculum","currie","currier","curring","curry","currycomb","curs","curse","cursed","cursedness","curses","cursive","cursiveness","cursives","cursor","cursorily","cursoriness","cursors","cursory","cursus","curt","curtail","curtailer","curtailment","curtain","curtice","curtis","curtness","curtsey","curtsy","curvaceous","curvaceousness","curvature","curve","curved","curves","curvilinear","curvilinearity","curving","curvy","cus","cushion","cushman","cushy","cusp","cuspid","cuspidor","cuss","cussed","cussedness","cusses","cussing","cust","custard","custer","custid","custodial","custodian","custodianship","custody","custom","customadapter","customarily","customariness","customary","customcell","customer","customerid","customername","customers","customhouse","customizable","customization","customize","customized","customizing","customview","cut","cutaneous","cutaway","cutback","cute","cuteness","cutesy","cuticle","cutlass","cutler","cutlery","cutlet","cutoff","cutout","cuts","cutter","cutthroat","cutting","cuttle","cuttlebone","cuttlefish","cutup","cutworm","cuvier","cuzco","cv","cvs","cvtcolor","cw","cwd","cwiki","cwt","cx","cxf","cxx","cxxflags","cy","cyan","cyanamid","cyanate","cyanic","cyanide","cyanogen","cyb","cybele","cybernetic","cybernetics","cyberpunk","cyberspace","cybil","cybill","cyborg","cyclades","cyclamen","cycle","cycler","cycles","cycleway","cyclic","cyclical","cycling","cyclist","cyclohexanol","cycloid","cycloidal","cyclometer","cyclone","cyclonic","cyclopean","cyclopedia","cyclopes","cyclops","cyclotron","cyder","cygnet","cygnus","cygwin","cyl","cylinder","cylindric","cylindrical","cymbal","cymbalist","cymbre","cynde","cyndi","cyndia","cyndie","cyndy","cynic","cynical","cynicism","cynosure","cynthea","cynthia","cynthie","cynthy","cypher","cypreses","cypress","cyprian","cypriot","cyprus","cyrano","cyril","cyrill","cyrille","cyrillic","cyrillus","cyrus","cyst","cystic","cython","cytochemistry","cytologist","cytology","cytolysis","cytoplasm","cytoplasmic","cytosine","cytotoxic","cz","czar","czarevitch","czarina","czarism","czarist","czarship","czech","czechoslovak","czechoslovakia","czechoslovakian","czechs","czerniak","czerny","d","da","dab","dabbed","dabber","dabbing","dabble","dabbler","dac","dacca","dace","dacey","dacha","dachau","dachshund","dacia","dacie","dacron","dactyl","dactylic","dacy","dad","dada","dadaism","dadaist","daddy","dade","dado","dadoes","dados","daedalus","dael","daemon","daemoncommandexecution","daemonic","daffi","daffie","daffiness","daffodil","daffy","daft","daftness","dag","dagger","dagmar","dagny","dagscheduler","daguerre","daguerreotype","dagwood","dahl","dahlia","dahomey","daile","dailiness","daily","daimler","daintily","daintiness","dainty","daiquiri","dairy","dairying","dairyland","dairymaid","dairyman","dairymen","dairywoman","dairywomen","dais","daisey","daisi","daisie","daisy","dakar","dakota","dakotan","dal","dale","dalenna","daleth","daley","dalhousie","dali","dalia","dalian","dalila","dall","dallas","dalli","dalliance","dallier","dallon","dally","dalmatia","dalmatian","daloris","dalston","dalt","dalton","dalvik","dalvikvm","daly","dam","damage","damageable","damaged","damager","damaging","damara","damaris","damascus","damask","dame","damian","damiano","damien","damion","damita","dammed","damming","dammit","damn","damnably","damnation","damned","damnedest","damning","damocles","damon","damp","damped","dampen","dampener","damper","damping","dampness","damsel","damselfly","damson","dan","dana","danbury","dance","dancelike","dancer","dandelion","dander","dandify","dandily","dandle","dandruff","dandy","dane","danelaw","danell","danella","danette","dang","danger","dangerfield","dangerous","dangerousness","dangle","dangler","dangling","dani","dania","danial","danica","danice","danie","daniel","daniela","daniele","daniella","danielle","danielson","danika","danila","danish","danit","danita","dank","dankness","danna","dannel","danni","dannie","danny","dannye","danseuse","dante","danton","danube","danubian","danville","danya","danyelle","danyette","danzig","dao","daphene","daphna","daphne","dapibus","dapper","dapperness","dapple","dar","dara","darb","darbee","darbie","darby","darcee","darcey","darci","darcie","darcy","darda","dardanelles","dare","daredevil","daredevilry","dareen","darell","darelle","daren","darer","daresay","dari","daria","darice","darill","darin","daring","daringness","dario","darius","darjeeling","dark","darken","darkener","darker","darkish","darkly","darkness","darkroom","darla","darleen","darlene","darline","darling","darlingness","darlington","darlleen","darn","darnall","darned","darnell","darner","darning","daron","darpa","darrel","darrell","darrelle","darren","darrick","darrin","darrow","darryl","darsey","darsie","dart","dartboard","darter","darth","dartmouth","darvon","darwin","darwinian","darwinism","darwinist","darya","daryl","daryle","daryn","das","dash","dasha","dashboard","dashed","dasher","dashes","dashiki","dashing","dasi","dasie","dask","dastard","dastardliness","dastardly","dasya","dat","data","dataaccess","dataadapter","dataannotations","dataarray","database","databaseerror","databasehelper","databasename","databasereference","databases","databind","databinding","datacenter","datacolumn","datacontext","datacontract","datafield","datafile","dataflow","dataframe","dataframes","datagram","datagrid","datagridtemplatecolumn","datagridtextcolumn","datagridview","dataindex","datainputstream","dataitem","datalist","datamation","datamedia","datamember","datamodel","datanode","datanucleus","dataobject","dataoutputstream","datapoint","datapoints","dataprovider","datareader","datarow","datas","dataservice","dataset","datasets","datasheet","datasnapshot","datasource","datasourceid","datasources","datastax","datastore","datastream","datastring","datatable","datatables","datatemplate","datatextfield","datatransfer","datatrigger","datatype","datatypes","dataurl","datausingencoding","datavaluefield","dataview","date","dateadd","datecreated","dated","datediff","datedly","datedness","datefield","dateformat","dateformatter","datefrom","dateless","dateline","dateofbirth","datepart","datepicker","datepickerdialog","dater","daterange","dates","datestr","datestring","datetime","datetimefield","datetimeformat","datetimeformatter","datetimeoffset","datetimepicker","dateto","dateutil","datevalue","datha","dating","dative","datos","datsun","datum","daub","dauber","daugherty","daughter","daumier","daune","daunt","daunted","daunting","dauntless","dauntlessness","dauphin","dav","davao","dave","daveen","daven","davenport","daveta","davey","david","davida","davidde","davide","davidson","davie","davin","davina","davine","davinich","davis","davit","davita","davon","davy","dawdle","dawdler","dawes","dawn","dawna","dawson","day","daybed","daybreak","daycare","daydream","daydreamer","dayle","daylight","dayna","dayofmonth","dayofweek","days","daysack","daytime","dayton","daze","dazed","dazzle","dazzler","dazzling","db","dba","dbadapter","dbc","dbconn","dbconnect","dbconnection","dbcontext","dbcp","dbd","dbf","dbg","dbh","dbhelper","dbhost","dbi","dbl","dbms","dbname","dbnull","dbo","dbpath","dbpedia","dbs","dbset","dbtype","dbus","dbuser","dbutante","dc","dcc","dcollet","dcolletage","dct","dd","ddd","dddd","ddene","ddf","ddl","dds","ddt","de","deacon","deaconess","deactivate","dead","deadbeat","deadbolt","deaden","deadener","deadening","deadhead","deadline","deadliness","deadlock","deadly","deadness","deadpan","deadpanned","deadpanner","deadpanning","deadwood","deaf","deafen","deafening","deafness","deal","dealer","dealership","dealing","dealloc","deallocate","deallocated","deallocator","deals","dealt","dean","deana","deandre","deane","deanery","deann","deanna","deanne","deanship","dear","dearborn","dearness","dearth","dearths","deary","deassign","death","deathbed","deathblow","deathless","deathlike","deathly","deaths","deathtrap","deathward","deathwatch","deb","debacle","debar","debark","debarkation","debarment","debarring","debaser","debatable","debate","debater","debauch","debauched","debauchedness","debauchee","debaucher","debauchery","debbi","debbie","debby","debee","debenture","debera","debi","debian","debilitate","debilitation","debility","debit","debonair","debonairness","debor","debora","deborah","debouch","debounce","debra","debrief","debris","debt","debtor","debug","debugged","debugger","debugging","debussy","debut","dec","decade","decadency","decadent","decades","decaf","decaffeinate","decagon","decal","decalogue","decamp","decampment","decapitate","decapitator","decathlon","decatur","decay","decca","deccan","decease","decedent","deceit","deceitful","deceitfulness","deceive","deceived","deceiver","deceives","deceiving","deceivingly","decelerate","deceleration","decelerator","december","decency","decennial","decent","deception","deceptive","deceptiveness","decertify","dechlorinate","decibel","decidability","decidable","decide","decided","decidedness","decides","deciding","deciduous","deciduousness","decile","deciliter","decimal","decimalformat","decimals","decimate","decimation","decimeter","decipher","decipherable","decipherer","decision","decisional","decisioned","decisioning","decisions","decisive","decisiveness","deck","deckchair","decker","deckhand","decking","decl","declamation","declamatory","declarable","declaration","declarations","declarative","declarator","declaratory","declare","declared","declarer","declares","declaring","declension","declination","decline","decliner","declivity","declspec","decltype","decnet","deco","decode","decoded","decodefile","decoder","decoderesource","decodestream","decoding","decolletes","decolorising","decomposability","decomposable","decompose","decomposition","decompress","decongestant","deconstruction","deconvolution","decor","decorate","decorated","decorates","decorating","decoration","decorative","decorativeness","decorator","decorators","decorous","decorousness","decorticate","decortication","decorum","decorview","decoupage","decouple","decoy","decrease","decreases","decreasing","decree","decreeing","decrement","decremental","decrepit","decrepitude","decriminalization","decriminalize","decry","decrypt","decrypted","decryption","decstation","decsystem","dectape","decustomised","dede","dedekind","dedicate","dedicated","dedication","dedicative","dedicator","dedicatory","dedie","dedra","deduce","deducible","deduct","deductibility","deductible","deduction","deductive","dee","deeann","deeanne","deed","deeded","deedee","deeding","deejay","deem","deemphasis","deena","deep","deepcopy","deepen","deeper","deepish","deeply","deepness","deer","deerdre","deere","deerskin","deerstalker","deerstalking","deeyn","def","deface","defacement","defaecate","defalcate","defalcation","defamation","defamatory","defame","defamer","default","defaultactioninvocation","defaultbuildoperationexecutor","defaultcenter","defaultconfig","defaultdict","defaulter","defaultfilterchain","defaulthttpclient","defaulting","defaultlistablebeanfactory","defaultmanager","defaultmaven","defaults","defaultsingletonbeanregistry","defaulttablemodel","defaultvalue","defaultview","defeat","defeated","defeater","defeatism","defeatist","defeats","defecate","defecation","defect","defection","defective","defectiveness","defector","defend","defendant","defended","defenestrate","defense","defenseless","defenselessness","defenses","defensibility","defensible","defensibly","defensive","defensiveness","defer","deference","deferent","deferential","deferrable","deferral","deferred","deferrer","deferring","deffer","defiance","defiant","defibrillator","deficiency","deficient","deficit","defier","defile","defilement","definable","definably","define","defineclass","defined","defineproperty","definer","defines","defining","definite","definitely","definiteness","definition","definitional","definitions","definitive","definitiveness","defis","deflate","deflation","deflationary","deflect","deflected","deflection","deflector","defn","defocus","defocussing","defoe","defog","defogger","defoliant","defoliator","deform","deformational","deformed","deformity","defraud","defrauder","defrayal","defrost","defroster","defs","deft","deftness","defun","defunct","defy","defying","deg","degas","degassing","degauss","degeneracy","degenerate","degenerateness","degrade","degraded","degradedness","degrading","degrease","degree","degrees","degum","dehlia","dehumanize","dehydrator","deice","deicer","deictic","deidre","deification","deify","deign","deimos","deina","deirdre","deist","deistic","deity","deja","deject","dejected","dejectedness","dejection","dejesus","dekalb","dekastere","del","dela","delacroix","delacruz","delainey","delaney","delano","delaware","delawarean","delay","delayed","delayer","delays","delbert","delcina","delcine","delectable","delectableness","delectably","delectation","delegable","delegate","delegated","delegates","delegatingconstructoraccessorimpl","delegatingfilterproxy","delegatingmethodaccessorimpl","delegation","deleon","delete","deleted","deleterious","deleteriousness","deletes","deleting","deletion","delfs","delft","delftware","delgado","delhi","deli","delia","deliberate","deliberately","deliberateness","deliberative","deliberativeness","delibes","delicacy","delicate","delicateness","delicatenesses","delicates","delicatessen","delicious","deliciousness","delicti","delighted","delightedness","delightful","delightfulness","delila","delilah","delilahs","delim","delimited","delimiter","delimiters","delims","delinda","delineate","delineation","delinquency","delinquent","deliquesce","deliquescent","delirious","deliriousness","delirium","delius","deliver","deliverable","deliverables","deliverance","delivered","deliverer","delivering","delivers","delivery","deliverymen","dell","della","dellwood","delly","delmar","delmarva","delmer","delmonico","delmor","delmore","delora","delores","deloria","deloris","delphi","delphic","delphine","delphinia","delphinium","delphinus","delta","deltatime","deltax","deltay","deltoid","delude","deluder","deluding","deluge","delusion","delusional","delusive","delusiveness","deluxe","delve","delver","dem","demagnify","demagogic","demagogue","demagoguery","demagogy","demand","demander","demanding","demandingly","demands","demarcate","demarcation","demavend","demean","demeanor","demented","dementedness","dementia","demerol","demesne","demeter","demetra","demetre","demetri","demetria","demetrius","demigod","demijohn","demimondaine","demimonde","demineralization","deming","demise","demit","demitasse","demitted","demitting","demo","democracy","democrat","democratic","democratically","democratization","democratize","democratizes","democritus","demographer","demographic","demographical","demography","demolish","demolisher","demolition","demon","demonetization","demoniac","demoniacal","demonic","demonology","demonstrable","demonstrableness","demonstrably","demonstrate","demonstrated","demonstrates","demonstrating","demonstration","demonstrative","demonstrativeness","demonstrativenesses","demonstratives","demonstrator","demoralization","demoralizer","demoralizing","demorgan","demos","demosthenes","demote","demotic","demott","demount","dempsey","demulcent","demultiplex","demur","demure","demureness","demurral","demurred","demurrer","demurring","demythologization","demythologize","den","dena","dendrite","dene","deneb","denebola","deneen","deng","dengue","deni","deniable","denial","denice","denied","denier","denigrate","denigration","denim","denise","denizen","denmark","denna","denned","dennet","denney","denni","dennie","denning","dennison","denny","denominate","denominational","denominator","denote","denotes","denouement","denounce","denouncement","denouncer","dens","dense","densely","denseness","densitometer","densitometric","densitometry","density","dent","dental","dentifrice","dentin","dentine","dentist","dentistry","dentition","denture","denuclearize","denudation","denude","denuder","denunciate","denunciation","denver","deny","denying","denys","denyse","deodorant","deodorization","deodorize","deodorizer","deon","deonne","deoxyribonucleic","dep","depart","department","departmental","departmentalization","departmentalize","departmentid","departments","departure","depend","dependability","dependable","dependableness","dependably","dependant","dependence","dependencies","dependency","dependencyobject","dependencyproperty","dependent","dependentassembly","depending","depends","dependson","depict","depicted","depicter","depiction","depilatory","deplete","depletion","deplorable","deplorableness","deplorably","deplore","deplorer","deploring","deploy","deployable","deployed","deployer","deploying","deployment","deployments","depolarize","deponent","deport","deportation","deportee","deportment","depose","deposit","depositary","deposition","depositor","depository","depot","deprave","depraved","depravedness","depraver","depravity","deprecate","deprecated","deprecating","deprecation","deprecatory","depreciable","depreciate","depreciating","depreciation","depreciative","depress","depressant","depressible","depression","depressive","depressor","deprive","deps","dept","depth","depths","deputation","depute","deputize","deputy","deque","dequeue","dequeuereusablecell","dequeuereusablecellwithidentifier","der","derail","derailment","derange","derangement","derby","derbyshire","dereference","dereferencing","derek","derelict","dereliction","derick","deride","deriding","derision","derisive","derisiveness","derisory","derivable","derivate","derivation","derivative","derivativeness","derivatives","derive","derived","deriveddata","derives","deriving","derk","dermal","dermatitides","dermatitis","dermatological","dermatologist","dermatology","dermis","dermot","derogate","derogation","derogatorily","derogatory","derrek","derrick","derrida","derrik","derril","derringer","derrire","derron","derry","dervish","derward","derwin","des","desalinate","desalination","desalinization","desalinize","desalt","desc","descant","descartes","descend","descendant","descendants","descended","descendent","descender","descending","descends","descent","descr","describable","describe","described","describes","describing","description","descriptions","descriptive","descriptiveness","descriptor","descriptors","descry","desdemona","desecrate","desecrater","desecration","deselect","deserialization","deserialize","deserialized","deserializeobject","deserializer","deserializing","desert","deserter","desertification","desertion","deserunt","deserve","deserved","deservedness","deserves","deserving","desi","desiccant","desiccate","desiccation","desiccator","desiderata","desideratum","design","designable","designate","designated","designation","designational","designator","designed","designer","designers","designing","designs","desirabilia","desirability","desirable","desirableness","desirably","desirae","desire","desired","desiredcapabilities","desiree","desirer","desiri","desirous","desirousness","desist","desk","desktop","desktops","desmond","desmund","desolate","desolateness","desolater","desolating","desolation","desorption","despair","despairer","despairing","desperado","desperadoes","desperate","desperateness","desperation","despicable","despicably","despise","despiser","despite","despoil","despoilment","despond","despondence","despondency","despondent","despotic","despotically","despotism","dessert","dessicate","dest","destdir","destinate","destination","destinations","destinationviewcontroller","destine","destiny","destitute","destituteness","destitution","destroy","destroyed","destroyer","destroying","destroys","destruct","destructibility","destructible","destruction","destructive","destructiveness","destructor","destructors","destructuring","desuetude","desultorily","desultoriness","desultory","det","detach","detached","detachedness","detacher","detachment","detail","detailed","detailedness","details","detailview","detailviewcontroller","detain","detainee","detainer","detainment","detect","detectability","detectable","detectably","detected","detecting","detection","detective","detector","detects","detentes","detention","deter","detergency","detergent","deteriorate","deterioration","determent","determinability","determinable","determinableness","determinacy","determinant","determinate","determinateness","determination","determinative","determinativeness","determine","determined","determinedly","determinedness","determiner","determines","determining","determinism","deterministic","deterministically","deterred","deterrence","deterrent","deterring","deters","detersive","detestable","detestableness","detestably","detestation","dethrone","dethronement","detonable","detonate","detonated","detonation","detonator","detour","detox","detoxification","detoxify","detract","detractive","detribalize","detriment","detrimental","detritus","detroit","deuce","deuced","deus","deuterium","deuteron","deuteronomy","deutsch","dev","deva","devan","devanagari","devastate","devastating","devastation","devastator","devcenter","devdependencies","devel","develop","developed","developer","developerguide","developers","developerworks","developing","development","developmental","devexpress","devi","deviance","deviancy","deviant","deviate","deviated","deviating","deviation","device","deviceid","devicename","devices","devil","devilish","devilishness","devilment","devilry","deviltry","devin","devina","devinne","devious","deviousness","devise","deviser","devkit","devland","devlen","devlin","devoice","devolution","devolve","devon","devondra","devonian","devonna","devonne","devonshire","devops","devora","devote","devoted","devotee","devotion","devotional","devour","devourer","devout","devoutness","devs","devtools","devy","dew","dewain","dewar","dewayne","dewberry","dewclaw","dewdrop","dewey","dewie","dewiness","dewitt","dewlap","dewy","dex","dexedrine","dexes","dexter","dexterity","dexterous","dexterousness","dextrose","df","dfa","dfd","dff","dfs","dg","dgv","dh","dhaka","dhaulagiri","dhcp","dhe","dhoti","dhow","di","dia","diabase","diabetes","diabetic","diabolic","diabolical","diabolicalness","diabolism","diachronic","diacritic","diacritical","diadem","diaereses","diaeresis","diag","diaghilev","diagnometer","diagnosable","diagnose","diagnosed","diagnosis","diagnostic","diagnostically","diagnostician","diagnostics","diagonal","diagonalize","diagram","diagrammable","diagrammatic","diagrammaticality","diagrammatically","diagrammed","diagrammer","diagramming","diagrams","diahann","dial","dialect","dialectal","dialectic","dialectical","dialed","dialer","dialing","dialog","dialogflow","dialogfragment","dialogged","dialogging","dialoginterface","dialogresult","dialogs","dialogue","dials","dialysis","dialyzed","dialyzes","diam","diamagnetic","diameter","diametric","diametrical","diamond","diamondback","diamonds","dian","diana","diandra","diane","dianemarie","diann","dianna","dianne","diannne","diapason","diaper","diaphanous","diaphanousness","diaphragm","diaphragmatic","diarist","diarmid","diarrhea","diarrheal","diary","diaspora","diastase","diastole","diastolic","diathermy","diathesis","diatom","diatomic","diatonic","diatribe","diaz","dibble","dibs","dic","dicaprio","dice","dicer","dicey","dichloride","dichotomization","dichotomize","dichotomous","dichotomy","dicier","diciest","dicing","dick","dickens","dickensian","dicker","dickerson","dickey","dickie","dickier","dickiest","dickinson","dickson","dicky","dicotyledon","dicotyledonous","dict","dicta","dictaphone","dictate","dictation","dictator","dictatorial","dictatorialness","dictatorship","diction","dictionaries","dictionary","dicts","dictum","did","didactic","didactically","didactics","diddle","diddler","diderot","didfinishlaunchingwithoptions","didi","didn","didnt","dido","didoes","didreceivememorywarning","didselectrowatindexpath","didst","die","died","diefenbaker","diego","dieing","dielectric","diem","diena","dierdre","diereses","dieresis","dies","diesel","diet","dietary","dieter","dietetic","dietetics","diethylaminoethyl","diethylstilbestrol","dietitian","dietrich","dietz","dif","diff","differ","difference","differences","different","differentiability","differentiable","differential","differentiate","differentiated","differentiation","differentiator","differently","differentness","differing","differs","difficile","difficult","difficulties","difficulty","diffidence","diffident","diffract","diffraction","diffractometer","diffs","diffuse","diffuseness","diffuser","diffusible","diffusion","diffusional","diffusive","diffusiveness","diffusivity","dig","digerati","digest","digested","digester","digestibility","digestible","digestifs","digestion","digestive","digg","digger","digging","digit","digital","digitalis","digitalization","digitalized","digitalizes","digitalizing","digitalocean","digitalwrite","digitization","digitize","digitizer","digits","dignified","dignify","dignissim","dignitary","dignity","digram","digraph","digraphs","digress","digression","digressive","digressiveness","dihedral","dijit","dijkstra","dijon","dike","diker","diktat","dilan","dilapidate","dilapidation","dilatation","dilate","dilated","dilation","dilator","dilatoriness","dilatory","dilbert","dilemma","dilettante","dilettantish","dilettantism","diligence","diligent","diligentness","dilithium","dill","dillard","dillie","dilling","dillinger","dillis","dillon","dilly","dillydally","dilogarithm","diluent","dilute","diluted","diluteness","dilution","dim","dimaggio","dime","dimen","dimension","dimensional","dimensionality","dimensionless","dimensions","dimer","dimethyl","dimethylglyoxime","diminish","diminished","diminuendo","diminution","diminutive","diminutiveness","dimitri","dimitry","dimity","dimmed","dimmer","dimmest","dimming","dimness","dimorphism","dimple","dimply","dims","dimwit","dimwitted","din","dina","dinah","dinar","dine","diner","dinette","ding","dingbat","dinghy","dingily","dinginess","dingle","dingo","dingoes","dingus","dingy","dinky","dinned","dinner","dinnertime","dinnerware","dinnie","dinning","dinny","dino","dinosaur","dint","diocesan","diocese","diocletian","diode","diogenes","dion","dione","dionis","dionisio","dionne","dionysian","dionysus","diophantine","diopter","dior","diorama","dioxalate","dioxide","dioxin","dip","diphtheria","diphthong","diplexers","diploid","diploma","diplomacy","diplomat","diplomata","diplomatic","diplomatically","diplomatics","diplomatist","dipodic","dipody","dipole","dipped","dipper","dipping","dippy","dipsomania","dipsomaniac","dipstick","dipterous","diptych","diptychs","dir","dirac","dire","direct","directcast","directed","direction","directional","directionality","directions","directive","directives","directivity","directly","directness","director","directorate","directorial","directories","directorship","directory","directoryentry","directoryinfo","directrix","directs","directx","direful","direness","dirge","dirichlet","dirigible","dirk","dirname","dirndl","dirpath","dirs","dirt","dirtily","dirtiness","dirty","dis","disable","disabled","disablement","disabler","disables","disabling","disabuse","disadvantage","disadvantaged","disadvantages","disagree","disagreeable","disallow","disambiguate","disappear","disappeared","disappearing","disappears","disappointed","disappointing","disarming","disarrange","disaster","disastrous","disband","disbandment","disbar","disbarment","disbarring","disbelieving","disbursal","disburse","disbursement","disburser","disc","discard","discarded","discern","discerner","discernibility","discernible","discernibly","discerning","discernment","discharged","disciple","discipleship","disciplinarian","disciplinary","discipline","disciplined","discipliner","disciplines","disciplining","disclaimer","disclosed","disclosure","disco","discography","discolor","discolored","discoloreds","discombobulate","discomfit","discomfiture","discommode","disconcerting","disconnect","disconnected","disconnectedness","disconnecter","disconsolate","discord","discordance","discordant","discorporate","discotheque","discount","discourage","discouraged","discouragement","discouraging","discover","discoverable","discovered","discoverer","discovering","discovery","discreet","discreetly","discreetness","discrepancy","discrepant","discrete","discreteness","discreteobjectkeyframe","discretion","discretionary","discretization","discretized","discriminable","discriminant","discriminate","discriminated","discriminating","discrimination","discriminator","discriminatory","discursiveness","discus","discuss","discussant","discussed","discusser","discusses","discussing","discussion","discussions","disdain","disdainful","disdainfulness","disease","disembowel","disembowelment","disengage","disfigure","disfigurement","disfranchise","disfranchisement","disgorge","disgrace","disgracer","disgruntle","disgruntlement","disguise","disguised","disguiser","disgust","disgusted","disgustful","disgusting","dish","dishabille","disharmonious","dishcloth","dishcloths","dishevel","dishevelment","dishonest","dishonored","dishpan","dishrag","dishtowel","dishwasher","dishwater","disillusion","disillusionment","disinfectant","disinherit","disinterested","disinterestedness","disinvest","disjoin","disjointedness","disjunct","disjunctive","disk","diskette","disks","dislike","dislodge","dislodgement","dismal","dismalness","dismantle","dismantlement","dismay","dismayed","dismaying","dismember","dismemberment","dismiss","dismissed","dismissive","dismissviewcontrolleranimated","disney","disneyland","disoblige","disorder","disordered","disorderedness","disorderliness","disorderly","disorganize","disorganized","disp","disparage","disparagement","disparager","disparaging","disparate","disparateness","dispatch","dispatched","dispatcher","dispatcherservlet","dispatchevent","dispatcheventimpl","dispatching","dispatchmessage","dispatchqueue","dispatchtouchevent","dispel","dispelled","dispelling","dispensable","dispensary","dispensate","dispensation","dispense","dispenser","dispersal","dispersant","disperse","dispersed","disperser","dispersible","dispersion","dispersive","dispersiveness","dispirit","displace","display","displayalerts","displayclass","displayed","displayfor","displaying","displaymetrics","displayname","displays","displease","displeased","displeasure","disport","disposable","disposal","dispose","disposed","disposing","disposition","dispositional","disproportional","disproportionate","disproportionation","disprove","disputable","disputably","disputant","disputation","disputatious","dispute","disputed","disputer","disquiet","disquieting","disquisition","disqus","disraeli","disregard","disregardful","disrepair","disreputable","disreputableness","disrepute","disrespect","disrupt","disrupted","disrupter","disruption","disruptive","disruptor","dissatisfy","dissect","dissed","dissemble","dissembler","disseminate","dissemination","dissension","dissent","dissenter","dissertation","disservice","disses","dissever","dissidence","dissident","dissimilar","dissing","dissipate","dissipated","dissipatedly","dissipatedness","dissipater","dissipation","dissociable","dissociate","dissociated","dissociation","dissociative","dissoluble","dissolute","dissoluteness","dissolve","dissolved","dissonance","dissonant","dissuade","dissuader","dissuasive","dist","distaff","distal","distance","distances","distant","distantness","distaste","distemper","distend","distension","distention","distillate","distillation","distillery","distinct","distincter","distinctest","distinction","distinctive","distinctiveness","distinctness","distinguish","distinguishable","distinguishably","distinguished","distinguisher","distort","distorted","distorter","distortion","distract","distracted","distractedness","distracting","distrait","distraught","distress","distressful","distressing","distribute","distributed","distributer","distributing","distribution","distributional","distributions","distributive","distributiveness","distributivity","distributor","distributorship","district","distro","distrust","disturb","disturbance","disturbed","disturber","disturbing","distutils","disulfide","disuse","disyllable","dita","ditch","ditcher","dither","ditsy","ditto","ditty","ditz","ditzel","diuresis","diuretic","diurnal","div","diva","divalent","divan","dive","dived","diver","diverge","divergence","divergent","diverse","diverseness","diversification","diversifier","diversify","diversion","diversionary","diversity","divert","diverticulitis","divertimento","divest","divestiture","divestment","divid","dividable","divide","divided","dividend","divider","dividing","divination","divine","diviner","divinity","divisibility","divisible","division","divisional","divisions","divisive","divisiveness","divisor","divorce","divorcement","divot","divs","divulge","divvy","dix","dixie","dixiecrat","dixieland","dixon","dizzily","dizziness","dizzy","dizzying","dj","djakarta","django","djangoproject","djava","djellaba","djellabah","djibouti","dk","dl","dlg","dlib","dll","dllexport","dllimport","dlls","dlopen","dm","dma","dmd","dmg","dmitri","dml","dmod","dms","dmz","dn","dna","dname","dnepr","dnepropetrovsk","dnieper","dniester","dniren","dnn","dns","do","doa","doable","dob","dobbin","doberman","dobro","doc","docent","docid","docile","docility","dock","docker","dockerfile","docket","dockland","dockpanel","dockside","dockworker","dockyard","docmd","docreatebean","docs","doctor","doctoral","doctorate","doctorow","doctors","doctrinaire","doctrinal","doctrine","doctype","docudrama","document","documentary","documentation","documentbuilder","documentbuilderfactory","documented","documentelement","documentid","documentroot","documents","documentsdirectory","docusign","docx","dod","dodder","dode","dodecahedra","dodecahedral","dodecahedron","dodge","dodgem","dodger","dodgson","dodi","dodie","dodington","dodo","dodoma","dodson","dody","doe","doer","does","doeskin","doesn","doesnt","doevents","doexecute","doff","dofilter","dofilterinternal","dog","dogcart","dogcatcher","doge","dogeared","doget","dogetbean","dogfight","dogfish","dogfought","dogged","doggedness","doggerel","dogging","doggone","doggy","doghouse","dogie","dogleg","doglegged","doglegging","dogma","dogmatic","dogmatically","dogmatics","dogmatism","dogmatist","dogs","dogsbody","dogtooth","dogtown","dogtrot","dogtrotted","dogtrotting","dogwood","dogy","doh","doha","doi","doily","doinbackground","doing","doit","dojo","dolby","doldrum","doldrums","dole","doled","doleful","dolefuller","dolefullest","dolefulness","doles","dolf","doling","doll","dollar","dollars","dolley","dolli","dollie","dollop","dolly","dolmen","dolomite","dolomitic","dolor","dolore","dolores","dolorita","dolorous","dolph","dolphin","dolt","doltish","doltishness","dom","domain","domainname","domains","domcontentloaded","domdocument","dome","domelement","domenic","domenico","domeniga","domesday","domestic","domestically","domesticate","domesticated","domestication","domesticity","domicile","domiciliary","dominance","dominant","dominate","domination","dominator","dominatrices","dominatrix","domineer","domineering","domineeringness","dominga","domingo","dominguez","domini","dominic","dominica","dominican","dominick","dominik","dominion","dominique","domino","dominoes","domitian","dompdf","don","dona","donahue","donal","donald","donaldson","donall","donalt","donate","donatello","donation","donations","donative","donaugh","donavon","done","donec","donella","donelle","donetsk","donetta","dong","dongle","donia","donica","donielle","donizetti","donkey","donn","donna","donnamarie","donne","donned","donnell","donnelly","donner","donni","donnie","donning","donnish","donnishness","donny","donnybrook","donor","donovan","dont","donut","donutted","donutting","doodad","doodle","doodlebug","doodler","doohickey","dooley","doolittle","doom","doomsday","doonesbury","door","doorbell","doorhandles","doorkeep","doorkeeper","doorknob","doorman","doormat","doormen","doornail","doorplate","doors","doorstep","doorstepped","doorstepping","doorstop","doorway","dooryard","dopa","dopamine","dopant","dope","doper","dopey","dopier","dopiest","dopiness","dopost","doppler","doprivileged","dor","dora","dorado","doralia","doralin","doralyn","doralynn","doralynne","dorcas","dorchester","doreen","dorelia","dorella","dorelle","dorena","dorene","doretta","dorette","dorey","dori","doria","dorian","doric","dorice","dorie","dorine","dorisa","dorise","dorita","dork","dorky","dorm","dormancy","dormant","dormer","dormice","dormitory","dormouse","doro","dorolice","dorolisa","dorotea","doroteya","dorothea","dorothee","dorothy","dorree","dorri","dorrie","dorry","dorsal","dorsey","dorthea","dorthy","dortmund","dory","dos","dosage","dose","dosi","dosimeter","dosimetry","dosomething","dossier","dost","dostart","dostoevsky","dostuff","dot","dotage","dotard","dote","doter","doti","doting","dotnet","dotnetfiddle","dots","dotson","dotted","dotti","dottie","dottiness","dotting","dotty","douala","douay","double","doubleanimation","doubled","doubleday","doubleheader","doubleness","doubler","doubles","doublespeak","doublet","doublethink","doubleton","doublevalue","doubling","doubloon","doubly","doubt","doubted","doubter","doubtful","doubtfulness","doubting","doubtless","doubtlessness","doubts","douche","doug","dough","dougherty","doughs","doughty","doughy","dougie","douglas","douglass","dougy","dour","dourness","douro","douse","douser","dov","dove","dovecote","dover","dovetail","dovish","dow","dowager","dowdily","dowdiness","dowdy","dowel","dower","down","downbeat","downcase","downcast","downdraft","downer","downey","downfall","downgrade","downhearted","downheartedness","downhill","downland","download","downloadable","downloaded","downloader","downloadfile","downloading","downloadmanager","downloads","downloadurl","downpipes","downplay","downpour","downrange","downright","downrightness","downriver","downs","downscale","downside","downsides","downsize","downslope","downspout","downstage","downstairs","downstate","downstream","downswing","downtime","downto","downtown","downtowner","downtrend","downtrodden","downturn","downvote","downvoted","downvotes","downward","downwardness","downwind","downy","dowork","dowry","dowse","dowser","doxology","doxygen","doy","doyen","doyenne","doyle","doz","doze","dozen","dozens","dozenths","dozer","dozy","dp","dpi","dpkg","dplyr","dps","dpt","dq","dr","drab","drabbed","drabber","drabbest","drabbing","drabness","drachma","draco","draconian","dracula","draft","draftee","drafter","draftily","draftiness","drafting","draftsman","draftsmanship","draftsmen","draftsperson","draftswoman","draftswomen","drafty","drag","draggable","dragged","dragger","dragging","draggy","dragnet","dragon","dragonfly","dragonhead","dragoon","drailleur","drain","drainage","drainboard","drained","drainer","drainpipe","drake","dram","drama","dramamine","dramatic","dramatical","dramatically","dramatics","dramatist","dramatization","dramatize","dramatized","dramatizer","dramaturgy","drambuie","drammed","dramming","drank","drano","drape","draper","drapery","drastic","drastically","drat","dratted","dratting","dravidian","draw","drawable","drawables","drawback","drawbacks","drawbitmap","drawbridge","drawchart","drawer","drawerlayout","drawimage","drawing","drawl","drawler","drawline","drawling","drawly","drawn","drawnly","drawnness","drawrect","draws","drawstring","drawtext","dray","dre","dread","dreadful","dreadfulness","dreadlocks","dreadnought","dream","dreamboat","dreamed","dreamer","dreamily","dreaminess","dreaming","dreamland","dreamless","dreamlessness","dreamlike","dreamweaver","dreamworld","dreamy","drear","drearily","dreariness","dreary","dreddy","dredge","dredger","dredi","dreg","dreiser","drench","drencher","drer","dresden","dress","dressage","dressed","dresser","dresses","dressiness","dressing","dressmaker","dressmaking","dressy","drew","drexel","dreyfus","dreyfuss","drib","dribble","dribbler","driblet","dried","drier","drift","drifter","drifting","driftwood","drill","driller","drilling","drillmaster","drink","drinkable","drinker","drinking","drinks","drip","dripped","dripping","drippy","drive","drivel","driveler","driven","driver","driverclassname","drivermanager","drivers","drives","driveway","driving","drizzle","drizzling","drizzly","drm","drogue","droid","droll","drollery","drollness","drolly","dromedary","drona","drone","droning","drool","drools","droop","droopiness","drooping","droopy","drop","dropbox","dropboxusercontent","dropdown","dropdownlist","dropdownlistfor","dropdowns","drophead","dropkick","droplet","dropout","droppable","dropped","dropper","dropping","drops","dropsical","dropsy","dropzone","drosophila","dross","drought","drove","drover","drown","drowner","drowse","drowsily","drowsiness","drowsy","dru","drub","drubbed","drubber","drubbing","druci","drucie","drucill","drucy","drud","drudge","drudger","drudgery","drudging","drug","drugged","druggie","drugging","druggist","drugi","drugless","drugs","drugstore","druid","druidism","drum","drumbeat","drumhead","drumlin","drummed","drummer","drumming","drummond","drumstick","drunk","drunkard","drunken","drunkenness","drupal","drupe","drury","drusi","drusie","drusilla","drusy","druthers","drv","drwxr","dry","dryad","dryden","dryer","dryish","dryness","drys","drystone","drywall","ds","dsa","dsc","dshabill","dshubba","dsl","dsn","dsp","dss","dsseldorf","dst","dt","dtd","dte","dtente","dtm","dto","dtp","dts","dtype","dtypes","du","dual","dualism","dualist","dualistic","duality","duane","dub","dubai","dubbed","dubber","dubbin","dubbing","dubcek","dubhe","dubiety","dubious","dubiousness","dublin","dubrovnik","dubuque","ducal","ducat","duce","duchamp","duchess","duchy","duck","duckbill","ducker","duckling","duckpins","duckpond","duckweed","ducky","duct","ducted","ductile","ductility","ducting","ductless","ducts","ductwork","dud","dudder","dude","dudgeon","dudley","due","duedate","duel","duelist","dueness","duenna","duet","duetted","duetting","duff","duffel","duffer","duffie","duffy","dug","dugald","dugout","duh","dui","duis","duisburg","duke","dukedom","dukey","dukie","duky","dulce","dulcea","dulcet","dulci","dulcia","dulciana","dulcie","dulcify","dulcimer","dulcine","dulcinea","dulcy","dull","dullard","dulles","dullness","dully","dulness","dulsea","duluth","duly","dumas","dumb","dumbbell","dumbfound","dumbness","dumbo","dumbstruck","dumbwaiter","dumdum","dummies","dummy","dumont","dump","dumped","dumper","dumpiness","dumping","dumpling","dumps","dumpster","dumpty","dumpy","dun","dunant","dunbar","dunc","duncan","dunce","dundee","dunderhead","dune","dunedin","dung","dungaree","dungeon","dunghill","dunham","dunk","dunker","dunkirk","dunlap","dunn","dunne","dunned","dunner","dunnest","dunning","dunno","dunstan","duo","duodecimal","duodena","duodenal","duodenum","duologue","duopolist","duopoly","dup","dupe","duper","dupion","duple","duplex","duplexer","duplicability","duplicable","duplicate","duplicated","duplicates","duplicating","duplication","duplicative","duplicator","duplicitous","duplicity","dupont","dur","durability","durable","durableness","durably","duracell","duran","durance","durand","durant","durante","duration","durational","durban","duress","durex","durham","during","durkee","durkheim","durocher","durst","durum","durward","duse","dusenberg","dusenbury","dushanbe","dusk","duskiness","dusky","dust","dustbin","dustcart","dustcover","duster","dustily","dustin","dustiness","dusting","dustless","dustman","dustmen","dustpan","dusty","dutch","dutchman","dutchmen","dutchwoman","dutchwomen","duteous","dutiable","dutiful","dutifulness","duty","duvalier","duvet","duxes","dv","dvd","dvina","dvork","dw","dwain","dwarf","dwarfish","dwarfism","dwayne","dweeb","dwell","dweller","dwelling","dwelt","dwi","dwight","dwindle","dword","dx","dximagetransform","dy","dyad","dyadic","dyan","dyana","dyane","dyann","dyanna","dyanne","dybbuk","dybbukim","dye","dyed","dyeing","dyer","dyes","dyestuff","dying","dyke","dylan","dyld","dylib","dyn","dyna","dynah","dynamic","dynamical","dynamically","dynamicresource","dynamics","dynamism","dynamite","dynamiter","dynamized","dynamo","dynamodb","dynastic","dynasty","dyne","dyno","dysentery","dysfunction","dysfunctional","dyslectic","dyslexia","dyslexic","dyslexically","dyspepsia","dyspeptic","dysprosium","dystopia","dystrophy","dz","dzerzhinsky","e","ea","each","eachelle","eada","eadie","eadith","eadmund","eager","eagerness","eagle","eaglet","eakins","eal","ealasaid","eamon","ean","eap","ear","earache","eardrum","earful","earhart","earing","earl","earldom","earle","earlene","earlie","earlier","earliest","earline","earliness","earlobe","early","earmark","earmuff","earn","earned","earner","earnest","earnestine","earnestness","earning","earnings","earp","earphone","earpieces","earplug","earring","earshot","earsplitting","earth","eartha","earthbound","earthed","earthenware","earthiness","earthliness","earthling","earthly","earthmen","earthmover","earthmoving","earthquake","earths","earthshaking","earthward","earthwork","earthworm","earthy","earvin","earwax","earwig","earwigged","earwigging","ease","eased","easel","easement","easer","eases","easier","easies","easiest","easily","easiness","easing","east","eastbound","easter","easterly","eastern","easterner","easternmost","easthampton","easting","eastland","eastman","eastward","eastwick","eastwood","easy","easygoing","easygoingness","eat","eatable","eatables","eaten","eater","eatery","eating","eaton","eave","eavesdrop","eavesdropped","eavesdropper","eavesdropping","eax","eb","eba","ebay","ebb","ebba","ebcdic","eben","ebeneezer","ebeneser","ebenezer","eberhard","eberto","ebola","ebonee","ebonics","ebony","ebook","ebp","ebro","ebs","ebullience","ebullient","ebullition","ebx","ec","ecb","ecc","eccentric","eccentrically","eccentricity","eccl","eccles","ecclesiastes","ecclesiastic","ecclesiastical","ecdh","ecdhe","ecdsa","ecg","echelon","echinoderm","echo","echoed","echoes","echoic","echoing","echolocation","eclectic","eclectically","eclecticism","eclipse","eclipselink","ecliptic","eclogue","ecma","ecmascript","eco","ecocide","ecol","ecole","ecologic","ecological","ecologist","ecology","ecommerce","econ","econometric","econometrica","econometricians","econometrics","economic","economical","economics","economist","economization","economize","economizer","economizing","economy","ecosystem","ecru","ecs","ecstasy","ecstatic","ecstatically","ect","ectoplasm","ecuador","ecuadoran","ecuadorean","ecuadorian","ecumenic","ecumenical","ecumenicism","ecumenicist","ecumenics","ecumenism","ecumenist","ecx","eczema","ed","eda","edam","edan","edd","edda","eddi","eddie","eddy","ede","edee","edeline","edelweiss","edema","edematous","eden","edgar","edgard","edgardo","edge","edgeless","edger","edgerton","edges","edgewater","edgewise","edgewood","edgily","edginess","edging","edgy","edi","edibility","edible","edibleness","edict","edie","edification","edifice","edifier","edify","edifying","edik","edin","edinburgh","edison","edit","edita","editable","edited","edith","editha","edithe","editing","edition","editions","edititemtemplate","editor","editorfor","editorial","editorialist","editorialize","editorializer","editors","editorship","edits","edittext","ediva","edlin","edm","edmon","edmond","edmonton","edmund","edmx","edna","edouard","edp","eds","edsel","edsger","edt","edu","eduard","eduardo","educ","educability","educable","educate","educated","education","educational","educationalists","educationists","educative","educator","educe","eduction","eduino","edutainment","edvard","edward","edwardian","edwardo","edwin","edwina","edx","edy","edyth","edythe","ee","eec","eee","eeg","eek","eel","eelgrass","eeo","eeoc","eerie","eerily","eeriness","eeyore","ef","eff","efface","effaceable","effacement","effacer","effect","effective","effectively","effectiveness","effectives","effector","effects","effectual","effectualness","effectuate","effectuation","effeminacy","effeminate","effendi","efferent","effervesce","effervescence","effervescent","effete","effeteness","efficacious","efficaciousness","efficacy","efficiency","efficient","efficiently","effie","effigy","effloresce","efflorescence","efflorescent","effluence","effluent","effluvia","effluvium","efflux","effluxion","effort","effortless","effortlessness","efforts","effrontery","effulgence","effulgent","effuse","effusion","effusive","effusiveness","efl","efrain","efrem","efren","eft","eg","ega","egad","egalitarian","egalitarianism","egalitarians","egan","egbert","egerton","egestas","eget","egg","eggbeater","eggcup","egger","egghead","eggheaded","eggnog","eggplant","eggs","eggshell","egis","egl","eglantine","ego","egocentric","egocentrically","egocentricity","egoism","egoist","egoistic","egoistical","egomania","egomaniac","egon","egor","egotism","egotist","egotistic","egotistical","egregious","egregiousness","egrep","egress","egret","egypt","egyptian","egyptology","eh","ehcache","ehrlich","ei","eichmann","eid","eider","eiderdown","eidetic","eiffel","eigen","eigenfunction","eigenstate","eigenvalue","eigenvector","eight","eighteen","eighteenths","eightfold","eighth","eighths","eightieths","eightpence","eighty","eileen","eilis","eimile","einstein","einsteinian","einsteinium","eire","eirena","eisenhower","eisenstein","eisner","eisteddfod","either","eiusmod","ej","ejabberd","ejaculate","ejaculation","ejaculatory","ejb","eject","ejecta","ejection","ejector","ejs","ekaterina","ekberg","eke","eked","ekg","ekstrom","el","elaborate","elaborateness","elaboration","elaborators","elaina","elaine","elana","eland","elane","elanor","elans","elapse","elapsed","elapsedtime","elastic","elastically","elasticated","elasticbeanstalk","elasticity","elasticize","elasticsearch","elastodynamics","elastomer","elate","elated","elatedness","elater","elation","elayne","elb","elba","elbe","elbert","elberta","elbertina","elbertine","elbow","elbowroom","elbrus","elden","elder","elderberry","elderflower","elderliness","elderly","eldest","eldin","eldon","eldorado","eldredge","eldridge","ele","eleanor","eleanora","eleanore","eleazar","elect","electable","elected","election","electioneer","elective","electiveness","elector","electoral","electorate","electra","electress","electric","electrical","electricalness","electrician","electricity","electrification","electrifier","electrify","electro","electrocardiogram","electrocardiograph","electrocardiographs","electrocardiography","electrochemical","electrocute","electrocution","electrode","electrodynamic","electrodynamics","electroencephalogram","electroencephalograph","electroencephalographic","electroencephalographs","electroencephalography","electrologist","electroluminescent","electrolysis","electrolyte","electrolytic","electrolytically","electrolyze","electromagnet","electromagnetic","electromagnetically","electromagnetism","electromechanical","electromechanics","electromotive","electromyograph","electromyographic","electromyographically","electromyography","electron","electronegative","electronic","electronically","electronics","electrophoresis","electrophorus","electroplate","electroscope","electroscopic","electroshock","electrostatic","electrostatics","electrotherapist","electrotype","electroweak","eleemosynary","eleen","elegance","elegant","elegiac","elegiacal","elegy","eleifend","elem","element","elemental","elementarily","elementariness","elementary","elementat","elementid","elementname","elementref","elements","elementtree","elementtype","elementum","elems","elena","elene","eleni","elenore","eleonora","eleonore","elephant","elephantiases","elephantiasis","elephantine","elev","elevate","elevated","elevation","elevator","eleven","elevens","elevenths","elf","elfie","elfin","elfish","elfreda","elfrida","elfrieda","elga","elgar","eli","elia","elianora","elianore","elicia","elicit","elicitation","elide","elie","elif","eligibility","eligible","elihu","elijah","eliminate","eliminated","eliminates","eliminating","elimination","eliminator","elinor","elinore","eliot","elisa","elisabet","elisabeth","elisabetta","elise","eliseo","elisha","elision","elissa","elit","elita","elite","elitism","elitist","elixir","eliza","elizabet","elizabeth","elizabethan","elk","elka","elke","elkhart","ell","ella","elladine","ellary","elle","ellen","ellene","ellerey","ellery","ellesmere","ellette","elli","ellie","ellington","elliot","elliott","ellipse","ellipsis","ellipsoid","ellipsoidal","ellipsometer","ellipsometry","elliptic","elliptical","ellipticity","ellison","ellissa","ellswerth","ellsworth","ellwood","elly","ellyn","ellynn","elm","elma","elmah","elmer","elmhurst","elmira","elmo","elmore","elmsford","elna","elnar","elnath","elnora","elnore","elocution","elocutionary","elocutionist","elodea","elohim","eloisa","eloise","elongate","elongation","elonore","elope","elopement","eloper","eloquence","eloquent","elora","eloy","elroy","els","elsa","elsbeth","else","elseif","elset","elsewhere","elsey","elsi","elsie","elsif","elsinore","elspeth","elston","elsworth","elsy","elt","eltanin","elton","eluate","elucidate","elucidation","elude","elusive","elusiveness","elute","elution","elva","elven","elver","elvera","elves","elvia","elvin","elvina","elvira","elvis","elvish","elvyn","elwin","elwira","elwood","elwyn","ely","elyn","elyse","elysees","elysha","elysia","elysian","elysium","elyssa","em","ema","emaciate","emaciation","emacs","email","emailaddress","emailid","emails","emalee","emalia","emanate","emanation","emancipate","emancipation","emancipator","emanuel","emanuele","emasculate","emasculation","embalm","embalmer","embank","embankment","embarcadero","embargo","embargoes","embark","embarkation","embarrass","embarrassed","embarrassedly","embarrassing","embarrassment","embassy","embattle","embed","embeddable","embedded","embedder","embedding","embellish","embellished","embellisher","embellishment","ember","emberjs","embezzle","embezzlement","embezzler","embitter","embitterment","emblazon","emblazonment","emblem","emblematic","embodier","embodiment","embody","embolden","embolism","embosom","emboss","embosser","embouchure","embower","embrace","embraceable","embracer","embracing","embrasure","embrittle","embrocation","embroider","embroiderer","embroidery","embroil","embroilment","embryo","embryologist","embryology","embryonic","emcee","emceeing","emelda","emelen","emelia","emelina","emeline","emelita","emelyne","emend","emendation","emera","emerald","emerge","emergence","emergency","emergent","emerita","emeritae","emeriti","emeritus","emerson","emery","emetic","emf","emigrant","emigrate","emigration","emil","emile","emilee","emili","emilia","emilie","emiline","emilio","emily","eminence","eminent","emir","emirate","emissary","emission","emissivity","emit","emits","emittance","emitted","emitter","emitting","emlen","emlyn","emlynn","emlynne","emma","emmalee","emmaline","emmalyn","emmalynn","emmalynne","emmanuel","emmeline","emmerich","emmery","emmet","emmett","emmey","emmi","emmie","emmit","emmott","emmy","emmye","emogene","emoji","emollient","emolument","emory","emote","emotion","emotional","emotionalism","emotionality","emotionalize","emotionless","emotive","emp","empaneled","empaneling","empath","empathetic","empathetical","empathic","empathize","empathy","emperor","emphases","emphasis","emphasize","emphatic","emphatically","emphysema","emphysematous","empid","empire","empiric","empirical","empiricism","empiricist","emplace","emplacement","employ","employability","employable","employed","employee","employeeid","employeename","employees","employer","employers","employment","empname","empno","emporium","empower","empowerment","empress","emptier","emptily","emptiness","empty","empyrean","emr","ems","emt","emu","emulate","emulated","emulation","emulative","emulator","emulators","emulsification","emulsifier","emulsify","emulsion","emyle","emylee","en","enable","enabled","enabledelayedexpansion","enableevents","enabler","enables","enabling","enact","enactment","ename","enamel","enameler","enamelware","enamor","enc","encamp","encampment","encapsulate","encapsulated","encapsulation","encase","encasement","encephalitic","encephalitides","encephalitis","encephalographic","encephalopathy","enchain","enchant","enchanter","enchanting","enchantment","enchantress","enchilada","encipher","encipherer","encircle","encirclement","encl","enclave","enclose","enclosed","enclosing","enclosure","encode","encoded","encoder","encodes","encodeuricomponent","encoding","encodings","encomium","encompass","encore","encounter","encountered","encountering","encounters","encourage","encouraged","encouragement","encourager","encouraging","encroach","encroacher","encroachment","encrust","encrustation","encrypt","encrypted","encrypting","encryption","enctype","encumber","encumbered","encumbrance","encumbrancer","ency","encyclical","encyclopaedia","encyclopedia","encyclopedic","encyst","encystment","end","endanger","endangerment","endblock","enddate","endear","endearing","endearment","endeavor","endeavored","endeavorer","ended","endemic","endemically","endemicity","ender","endfor","endforeach","endgame","endian","endicott","endif","endindex","ending","endings","endive","endl","endless","endlessness","endmost","endnote","endocrine","endocrinologist","endocrinology","endogamous","endogamy","endogenous","endomorphism","endorse","endorsement","endorser","endoscope","endoscopic","endoscopy","endosperm","endothelial","endothermic","endow","endowment","endpoint","endpoints","endregion","ends","endswith","endtime","endue","endungeoned","endurable","endurably","endurance","endure","enduring","enduringness","endways","endwhile","endymion","ene","enema","enemies","enemy","energetic","energetically","energetics","energize","energized","energizer","energy","enervate","enervation","enfeeble","enfeeblement","enfilade","enfold","enforce","enforceability","enforceable","enforced","enforcement","enforcer","enforcible","enforcing","enfranchise","enfranchisement","enfranchiser","eng","engage","engagement","engaging","engel","engelbert","engender","engine","engineer","engineering","engineers","engines","england","englebert","englewood","english","englishman","englishmen","englishwoman","englishwomen","engorge","engorgement","engracia","engram","engrave","engraver","engraving","engross","engrossed","engrosser","engrossing","engrossment","engulf","engulfment","enhance","enhanceable","enhanced","enhancement","enhancer","enharmonic","enid","enif","enigma","enigmatic","enigmatically","enim","eniwetok","enjambement","enjambment","enjoin","enjoinder","enjoy","enjoyability","enjoyable","enjoyableness","enjoyably","enjoyed","enjoyment","enkidu","enlarge","enlargeable","enlargement","enlarger","enlighten","enlightened","enlightening","enlightenment","enlist","enlistee","enlister","enlistment","enliven","enlivenment","enmesh","enmeshment","enmity","ennis","ennoble","ennoblement","ennobler","ennui","enoch","enoent","enormity","enormous","enormousness","enos","enough","enoughs","enplane","enqueue","enquirer","enquiringly","enquiry","enrage","enrapture","enrica","enrich","enricher","enrichetta","enrichment","enrico","enrika","enrique","enriqueta","enrobed","enroll","enrollee","enrollment","ens","ensconce","ensemble","enshrine","enshrinement","enshroud","ensign","ensilage","enslave","enslavement","enslaver","ensnare","ensnarement","ensolite","ensue","ensure","ensurer","ensures","ensuring","ent","entail","entailer","entailment","entangle","entanglement","entangler","entente","enter","entered","enterer","entering","enteritides","enteritis","enterprise","enterpriser","enterprising","enters","entertain","entertainer","entertaining","entertainment","enthalpy","enthrall","enthrallment","enthrone","enthronement","enthuse","enthusiasm","enthusiast","enthusiastic","enthusiastically","entice","enticement","enticing","entire","entirely","entirerow","entirety","entities","entitle","entitled","entitlement","entity","entityframework","entityframeworkcore","entityid","entitymanager","entitymanagerfactory","entityname","entitystate","entitytype","entomb","entombment","entomological","entomologist","entomology","entourage","entr","entrails","entrain","entrainer","entrance","entrancement","entranceway","entrancing","entrant","entrap","entrapment","entrapped","entrapping","entre","entreat","entreating","entreaty","entrench","entrenchment","entrepreneur","entrepreneurial","entrepreneurs","entrepreneurship","entries","entropic","entropy","entrust","entry","entrypoint","entryset","entryway","entwine","enum","enumerable","enumerate","enumerated","enumerates","enumerating","enumeration","enumerative","enumerator","enums","enunciable","enunciate","enunciated","enunciation","enureses","enuresis","env","envelop","envelope","enveloper","envelopment","envenom","enviable","enviableness","enviably","envied","envier","envious","enviousness","environ","environment","environmental","environmentalism","environmentalist","environments","envisage","envision","envoy","envs","envy","envying","enzymatic","enzymatically","enzyme","enzymology","eo","eocene","eoe","eof","eohippus","eol","eolanda","eolande","eolian","eon","eos","eot","ep","epa","epaulet","ephedrine","ephemera","ephemeral","ephemerids","ephemeris","ephesian","ephesians","ephesus","ephraim","ephrayim","ephrem","epi","epic","epically","epicenter","epictetus","epicure","epicurean","epicurus","epicycle","epicyclic","epicyclical","epicycloid","epidemic","epidemically","epidemiological","epidemiologist","epidemiology","epidermal","epidermic","epidermis","epidural","epigenetic","epiglottis","epigram","epigrammatic","epigraph","epigrapher","epigraphs","epigraphy","epilepsy","epileptic","epilogue","epimethius","epinephrine","epiphany","epiphenomena","episcopacy","episcopal","episcopalian","episcopate","episode","episodes","episodic","episodically","epistemic","epistemological","epistemology","epistle","epistolary","epistolatory","epitaph","epitaphs","epitaxial","epitaxy","epithelial","epithelium","epithet","epitome","epitomize","epitomized","epitomizer","epoch","epochal","epochs","epoll","eponymous","epoxy","eps","epsg","epsilon","epsom","epstein","eq","equ","equability","equable","equableness","equably","equal","equaling","equality","equalization","equalize","equalized","equalizer","equalizes","equally","equals","equalsignorecase","equalto","equanimity","equate","equation","equations","equator","equatorial","equerry","equestrian","equestrianism","equestrienne","equiangular","equidistant","equilateral","equilibrate","equilibration","equilibrium","equine","equinoctial","equinox","equip","equipage","equipartition","equipment","equipoise","equipotent","equipped","equipping","equiproportional","equiproportionality","equiproportionate","equitable","equitableness","equitably","equitation","equity","equiv","equivalence","equivalent","equivalents","equivocal","equivocalness","equivocate","equivocation","equivocator","equuleus","er","era","eradicable","eradicate","eradication","eradicator","eran","eras","erase","erased","eraser","erasion","erasmus","erastus","erasure","erat","erato","eratosthenes","erb","erbium","erda","ere","erebus","erect","erectile","erection","erectness","erector","erek","erelong","eremite","erena","erg","ergo","ergodic","ergodicity","ergonomic","ergonomically","ergonomics","ergophobia","ergosterol","ergot","erhard","erhart","eric","erica","erich","ericha","erick","ericka","erickson","ericson","ericsson","eridanus","erie","erik","erika","erikson","erin","erina","erinn","erinna","eris","eritrea","erl","erlang","erlenmeyer","erma","ermanno","ermengarde","ermentrude","ermin","ermina","ermine","erminia","erminie","erna","ernaline","ernest","ernesta","ernestine","ernesto","ernestus","ernie","ernst","erny","erode","erodible","erogenous","eros","erosible","erosion","erosional","erosive","erosiveness","erotic","erotica","erotically","eroticism","erp","err","errancy","errand","errant","errantry","errata","erratic","erratically","erratum","errick","erring","errmode","errmsg","errno","errol","erroll","erroneous","erroneousness","error","errorcode","errordocument","errorhandler","errorlevel","errorlistener","errorlog","errormessage","errormsg","errorreportvalve","errors","errorthrown","ersatz","erse","erskine","erst","erstwhile","ertha","eruct","eructation","erudite","erudition","erupt","eruption","eruptive","erv","ervin","erwin","eryn","erysipelas","erythrocyte","es","esau","esb","esc","escadrille","escalate","escalation","escalator","escallop","escapable","escapade","escape","escaped","escapee","escapement","escaper","escapes","escaping","escapism","escapist","escapology","escarole","escarpment","eschatology","escher","escherichia","eschew","escondido","escort","escritoire","escrow","escudo","escutcheon","esdras","ese","esi","eskimo","esl","eslint","esma","esmaria","esmark","esme","esmeralda","esophageal","esophagi","esophagus","esoteric","esoterica","esoterically","esp","espadrille","espagnol","espalier","especial","especially","esperanto","esperanza","espinoza","espionage","esplanade","esposito","espousal","espouse","espouser","espresso","esprit","espy","esq","esquire","esra","esri","essa","essay","essayer","essayist","esse","essen","essence","essene","essential","essentialist","essentially","essentialness","essentials","essequibo","essex","essie","essy","est","esta","establish","established","establisher","establishing","establishment","estado","estate","esteban","esteem","estel","estela","estele","estell","estella","estelle","ester","esterhzy","estes","estevan","esther","esthete","esthetic","esthetically","esthetics","estimable","estimableness","estimate","estimated","estimates","estimating","estimation","estimator","estonia","estonian","estoppal","estrada","estrange","estrangement","estranger","estrella","estrellita","estrogen","estrous","estrus","estuarine","estuary","et","eta","etag","etan","etc","etcetera","etch","etcher","etching","etd","eternal","eternalness","eternity","eth","ethan","ethane","ethanol","ethe","ethel","ethelbert","ethelda","ethelin","ethelind","etheline","ethelred","ethelyn","ether","ethereal","etherealness","etherized","ethernet","ethic","ethical","ethically","ethicalness","ethicist","ethiopia","ethiopian","ethnic","ethnically","ethnicity","ethnocentric","ethnocentrism","ethnographers","ethnographic","ethnography","ethnological","ethnologist","ethnology","ethnomethodology","ethological","ethologist","ethology","ethos","ethyl","ethylene","etiam","etienne","etiologic","etiological","etiology","etiquette","etl","etna","etree","etruria","etruscan","etta","etti","ettie","ettore","etty","etymological","etymologist","etymology","eu","eucalypti","eucalyptus","eucharist","eucharistic","euchre","euclid","euclidean","eudora","euell","eugen","eugene","eugenia","eugenic","eugenically","eugenicist","eugenics","eugenie","eugenio","eugenius","eugine","euismod","eula","eulalie","euler","eulerian","eulogist","eulogistic","eulogize","eulogized","eulogizer","eulogy","eumenides","eunice","eunuch","eunuchs","euphemia","euphemism","euphemist","euphemistic","euphemistically","euphonious","euphonium","euphony","euphoria","euphoric","euphorically","euphrates","eur","eurasia","eurasian","eureka","euripides","euro","eurodollar","europa","europe","european","europeanization","europeanized","europium","eurydice","eustace","eustachian","eustacia","eutectic","euterpe","euthanasia","euthenics","ev","eva","evacuate","evacuation","evacuee","evade","evader","eval","evaleen","evaluable","evaluate","evaluated","evaluates","evaluating","evaluation","evaluational","evaluative","evaluator","evan","evanescence","evanescent","evangelia","evangelic","evangelical","evangelicalism","evangelin","evangelina","evangeline","evangelism","evangelist","evangelistic","evangelize","evania","evanne","evanston","evansville","evaporate","evaporation","evaporative","evaporator","evasion","evasive","evasiveness","eve","eveleen","evelin","evelina","eveline","evelyn","even","evened","evener","evenhanded","evening","evenki","evenly","evenness","evens","evensong","event","eventargs","eventbus","eventdata","eventdate","eventdispatchthread","eventemitter","eventful","eventfulness","eventhandler","eventid","eventide","eventlistener","eventlog","eventname","eventqueue","events","eventtrigger","eventtype","eventual","eventuality","eventually","eventuate","ever","everard","eveready","evered","everest","everett","everette","everglade","everglades","evergreen","everhart","everlasting","everlastingness","everliving","evermore","evernote","everready","every","everybody","everyday","everydayness","everyman","everyone","everyplace","everything","everytime","everywhere","eves","evey","evict","eviction","evidence","evident","evidential","evie","evil","evildoer","evildoing","evilness","evin","evince","eviscerate","evisceration","evita","evocable","evocate","evocation","evocative","evocativeness","evoke","evolute","evolution","evolutionarily","evolutionary","evolutionist","evolve","evolved","evonne","evp","evt","evvie","evvy","evy","evyn","ew","ewan","eward","ewart","ewe","ewell","ewen","ewer","ewing","ex","exacerbate","exacerbation","exact","exacter","exacting","exactingness","exaction","exactitude","exactly","exactness","exaggerate","exaggerated","exaggeration","exaggerative","exaggerator","exalt","exaltation","exalted","exalter","exam","examen","examination","examine","examined","examinees","examiner","examines","examining","example","exampled","examples","exams","exasperate","exasperated","exasperating","exasperation","exc","excalibur","excavate","excavation","excavator","excedrin","exceed","exceeded","exceeder","exceeding","exceeds","excel","excelled","excellence","excellency","excellent","excelling","excelsior","except","exception","exceptionable","exceptional","exceptionalness","exceptionhandler","exceptions","excerpt","excerpter","excess","excessive","excessiveness","exchange","exchangeable","exchanger","exchanges","exchequer","excise","excision","excitability","excitable","excitableness","excitably","excitation","excitatory","excite","excited","excitement","exciter","exciting","excitingly","exciton","exclaim","exclaimer","exclamation","exclamatory","exclude","excluded","excluder","excludes","excluding","exclusion","exclusionary","exclusioner","exclusions","exclusive","exclusively","exclusiveness","exclusivity","excommunicate","excommunication","excoriate","excoriation","excrement","excremental","excrescence","excrescent","excreta","excrete","excreter","excretion","excretory","excruciate","excruciating","excruciation","exculpate","exculpation","exculpatory","excursion","excursionist","excursive","excursiveness","excursus","excusable","excusableness","excusably","excuse","excused","excuser","exe","exec","execrable","execrableness","execrably","execrate","execration","execsql","executable","executables","execute","executeactionstaskexecuter","executed","executenonquery","executequery","executer","executereader","executes","executescalar","executescript","executesql","executeupdate","executing","execution","executional","executioncontext","executioner","executionexception","executions","executive","executor","executors","executorservice","executrices","executrix","exegeses","exegesis","exegete","exegetic","exegetical","exemplar","exemplariness","exemplary","exemple","exemplification","exemplifier","exemplify","exempt","exemption","exercise","exerciser","exercises","exercitation","exert","exertion","exeter","exeunt","exhalation","exhale","exhaust","exhausted","exhauster","exhaustible","exhausting","exhaustion","exhaustive","exhaustiveness","exhibit","exhibition","exhibitioner","exhibitionism","exhibitionist","exhibitor","exhilarate","exhilarating","exhilaration","exhort","exhortation","exhorter","exhumation","exhume","exhumer","exif","exigence","exigency","exigent","exiguity","exiguous","exile","exist","existed","existence","existent","existential","existentialism","existentialist","existentialistic","existents","existing","exists","exit","exitcode","exited","exiting","exits","exobiology","exocrine","exodus","exogamous","exogamy","exogenous","exonerate","exoneration","exorbitance","exorbitant","exorcise","exorcism","exorcist","exorcizer","exoskeleton","exosphere","exothermic","exothermically","exotic","exotica","exotically","exoticism","exoticness","exp","expand","expandability","expandable","expandablelistview","expanded","expander","expanding","expands","expanse","expansible","expansion","expansionary","expansionism","expansionist","expansive","expansiveness","expatiate","expatiation","expatriate","expatriation","expect","expectancy","expectant","expectation","expectational","expectations","expected","expectedconditions","expecting","expectorant","expectorate","expectoration","expects","expedience","expediency","expedient","expedients","expedite","expediter","expedition","expeditionary","expeditious","expeditiousness","expeditor","expel","expellable","expelled","expelling","expend","expendable","expended","expender","expenditure","expense","expenses","expensive","expensiveness","experience","experienced","experiences","experiencing","experiential","experiment","experimental","experimentalism","experimentalist","experimentation","experimented","experimenter","experimenting","experiments","expert","experted","experting","expertise","expertize","expertness","expertnesses","experts","expiable","expiate","expiation","expiatory","expiration","expire","expired","expires","expiresbytype","expiry","explain","explainable","explained","explainer","explaining","explains","explanation","explanations","explanatory","expletive","explicable","explicate","explication","explicative","explicit","explicitly","explicitness","explode","exploded","exploder","exploit","exploitation","exploitative","exploited","exploiter","exploration","exploratory","explore","explored","explorer","exploring","explosion","explosive","explosiveness","expo","exponent","exponential","exponentiate","exponentiation","export","exportability","exportable","exportation","exported","exporter","exporting","exports","expos","expose","exposed","exposer","exposes","exposing","exposit","exposition","expositor","expository","expostulate","expostulation","exposure","expound","expounder","expr","express","expressed","expresser","expressibility","expressible","expressibly","expression","expressionism","expressionist","expressionistic","expressionless","expressions","expressive","expressiveness","expressjs","expressway","expropriate","expropriation","expropriator","expulsion","expunge","expunger","expurgate","expurgated","expurgation","exquisite","exquisiteness","ext","extant","extemporaneous","extemporaneousness","extempore","extemporization","extemporize","extemporizer","extend","extendability","extended","extendedly","extendedness","extender","extendibility","extendibles","extending","extends","extensibility","extensible","extension","extensional","extensions","extensive","extensively","extensiveness","extensor","extent","extenuate","extenuation","exterior","exterminate","extermination","exterminator","extern","external","externalities","externalization","externalize","externally","externals","extinct","extinction","extinguish","extinguishable","extinguisher","extirpate","extirpation","extjs","extol","extolled","extoller","extolling","extort","extorter","extortion","extortionate","extortioner","extortionist","extra","extracellular","extract","extracted","extracting","extraction","extractive","extractor","extracts","extracurricular","extradite","extradition","extragalactic","extralegal","extramarital","extramural","extraneous","extraneousness","extraordinarily","extraordinariness","extraordinary","extrapolate","extrapolation","extras","extrasensory","extraterrestrial","extraterritorial","extraterritoriality","extravagance","extravagant","extravaganza","extravehicular","extravert","extrema","extremal","extreme","extremely","extremeness","extremism","extremist","extremity","extricable","extricate","extrication","extrinsic","extrinsically","extroversion","extrovert","extrude","extruder","extrusion","extrusive","exuberance","exuberant","exudate","exudation","exude","exult","exultant","exultation","exulting","exurb","exurban","exurbanite","exurbia","exxon","ey","eyck","eyde","eydie","eye","eyeball","eyebrow","eyed","eyedropper","eyeful","eyeglass","eyelash","eyeless","eyelet","eyelid","eyeliner","eyeopener","eyeopening","eyepiece","eyer","eyes","eyeshadow","eyesight","eyesore","eyestrain","eyeteeth","eyetooth","eyewash","eyewitness","eyre","eyrie","eysenck","ez","ezechiel","ezekiel","ezequiel","eziechiele","ezmeralda","ezra","ezri","f","f0_","fa","faa","fab","fabe","faber","faberg","fabian","fabiano","fabien","fabio","fable","fabler","fabric","fabricate","fabrication","fabricator","fabulists","fabulous","fabulousness","fac","facade","facades","face","facebook","facecloth","facecloths","faced","faceless","facelets","faceplate","facer","faces","facescontext","facet","facetious","facetiousness","facets","facial","facile","facileness","facilisis","facilitate","facilitation","facilitator","facilitatory","facilities","facility","facing","facsimile","facsimileing","fact","faction","factional","factionalism","factious","factiousness","factitious","facto","factoid","factor","factorial","factories","factoring","factorisable","factorization","factorize","factors","factory","factorygirl","factotum","facts","factual","factuality","factualness","faculty","fad","faddish","faddist","fade","faded","fadedly","fadein","fadeout","fader","fades","fadeto","fading","fae","faence","faerie","faeroe","faery","fafnir","fag","fagged","fagging","faggoting","fagin","fagot","fagoting","fahd","fahrenheit","fail","failed","failing","faille","failover","fails","failsafe","failure","failures","fain","faina","faint","fainter","fainthearted","faintness","fair","fairbanks","fairchild","faired","fairfax","fairfield","fairgoer","fairground","fairing","fairish","fairleigh","fairless","fairlie","fairly","fairmont","fairness","fairport","fairs","fairview","fairway","fairy","fairyland","fairytale","faisal","faisalabad","faith","faithed","faithful","faithfulness","faithfuls","faithing","faithless","faithlessness","faiths","fajitas","fake","faker","fakir","falafel","falcon","falconer","falconry","falito","falk","falkland","falkner","fall","fallacious","fallaciousness","fallacy","fallback","faller","fallibility","fallible","fallibleness","fallibly","falling","falloff","fallon","fallopian","fallout","fallow","fallowness","falls","false","falsehood","falseness","falsetto","falsie","falsifiability","falsifiable","falsification","falsifier","falsify","falsity","falstaff","falter","falterer","faltering","falwell","fame","famed","fames","familial","familiar","familiarity","familiarization","familiarize","familiarized","familiarizer","familiarizing","familiarly","familiarness","families","family","famine","faming","famish","famous","famously","famousness","fan","fanatic","fanatical","fanaticalness","fanaticism","fanchette","fanchon","fancie","fancied","fancier","fanciest","fanciful","fancifulness","fancily","fanciness","fancy","fancybox","fancying","fancywork","fandango","fanechka","fanfare","fanfold","fang","fangled","fania","fanlight","fanned","fanni","fannie","fanning","fanny","fanout","fans","fantail","fantasia","fantasist","fantasize","fantastic","fantastical","fantasy","fanya","fanzine","faq","faqs","far","fara","farad","faraday","farah","farand","faraway","farber","farce","farcical","fare","farer","farewell","farfetchedness","fargo","farica","farina","farinaceous","farkas","farlay","farlee","farleigh","farley","farlie","farly","farm","farmer","farmhand","farmhouse","farming","farmington","farmland","farmstead","farmworker","farmyard","faro","farr","farra","farrago","farragoes","farragut","farrah","farrakhan","farrand","farrel","farrell","farrier","farris","farrow","farseeing","farsighted","farsightedness","fart","farther","farthermost","farthest","farthing","fas","fascia","fascicle","fasciculate","fasciculation","fascinate","fascinating","fascination","fascism","fascist","fascistic","fashion","fashionable","fashionableness","fashionably","fashioner","fassbinder","fast","fasta","fastback","fastball","fastcgi","fasten","fastener","fastening","faster","fasterxml","fastest","fastidious","fastidiousness","fastness","fat","fatal","fatalism","fatalist","fatalistic","fatalistically","fatality","fatback","fate","fateful","fatefulness","fates","fathead","fatheaded","father","fathered","fatherhood","fatherland","fatherless","fatherliness","fatherly","fathom","fathomable","fathomless","fatigue","fatigued","fatiguing","fatima","fatness","fatso","fatted","fatten","fattener","fatter","fattest","fattiness","fatting","fatty","fatuity","fatuous","fatuousness","fatwa","faucet","faucibus","faulkner","faulknerian","fault","faultfinder","faultfinding","faultily","faultiness","faultless","faultlessness","faults","faulty","faun","fauna","faunie","fauntleroy","faust","faustian","faustina","faustine","faustino","faustus","fauvism","fav","favicon","favor","favorable","favorableness","favorably","favored","favoredness","favorer","favoring","favorings","favorite","favorites","favoritism","favors","favour","favourite","fawkes","fawn","fawne","fawner","fawnia","fawning","fax","fay","faydra","faye","fayette","fayetteville","fayina","fayre","fayth","faythe","faze","fb","fbi","fc","fcc","fclose","fcm","fcntl","fct","fd","fda","fdic","fdr","fds","fe","fealty","fear","fearful","fearfuller","fearfullest","fearfulness","fearless","fearlessness","fearsome","fearsomeness","feasibility","feasible","feasibleness","feasibly","feast","feaster","feat","feater","feather","featherbed","featherbedding","featherbrain","feathered","feathering","featherless","featherlight","featherman","feathertop","featherweight","feathery","feats","feature","featured","featureless","features","feb","febrile","february","fecal","feces","fecha","feckless","fecklessness","fecund","fecundability","fecundate","fecundation","fecundity","fed","federal","federalism","federalist","federalization","federalize","federate","federated","federation","federative","federica","federico","fedex","fedora","feds","fee","feeble","feebleness","feebly","feed","feedback","feedbag","feeder","feeding","feedlot","feeds","feedstock","feedstuffs","feeing","feel","feeler","feeling","feelingly","feelingness","feelings","feels","fees","feet","feign","feigned","feigner","feint","feisty","felder","feldman","feldspar","felecia","felic","felicdad","felice","felicia","felicio","felicitate","felicitation","felicitous","felicitousness","felicity","felicle","felike","feliks","feline","felipa","felipe","felis","felisha","felita","felix","feliza","felizio","fell","fella","fellatio","felled","feller","felling","fellini","fellness","fellow","fellowman","fellowmen","fellowship","fellowshipped","fellowshipping","felon","felonious","feloniousness","felony","felt","felting","fem","female","femaleness","feminine","feminineness","femininity","feminism","feminist","femme","femoral","femur","fen","fence","fenced","fencepost","fencer","fencing","fend","fender","fenelia","fenestration","fenian","fenland","fennel","fenwick","feodor","feodora","feof","fer","feral","ferber","ferd","ferdie","ferdinand","ferdinanda","ferdinande","ferdinando","ferdy","fergus","ferguson","ferlinghetti","fermat","ferment","fermentation","fermented","fermenter","fermenting","fermentum","fermi","fermion","fermium","fern","fernanda","fernande","fernandez","fernandina","fernando","ferne","fernery","ferny","ferocious","ferociousness","ferocity","ferrari","ferraro","ferreira","ferrel","ferrell","ferrer","ferret","ferreter","ferric","ferris","ferrite","ferro","ferroelectric","ferromagnet","ferromagnetic","ferrous","ferrule","ferry","ferryboat","ferryman","ferrymen","fertile","fertileness","fertility","fertilization","fertilize","fertilized","fertilizer","fertilizes","ferule","fervency","fervent","fervid","fervidness","fervor","fess","fest","festal","fester","festival","festive","festiveness","festivity","festoon","feta","fetal","fetch","fetchall","fetchdata","fetched","fetchedresultscontroller","fetcher","fetches","fetching","fetchrequest","fetchtype","feted","fetich","fetid","fetidness","feting","fetish","fetishism","fetishist","fetishistic","fetlock","fetter","fettle","fettling","fettuccine","fetus","feud","feudal","feudalism","feudalistic","feudatory","feugiat","fever","feverish","feverishness","few","fewer","fewness","fey","feynman","fez","fezzes","ff","ffa","ffb","ffc","ffd","ffe","fff","ffff","ffffff","ffffffff","ffi","fflush","ffmpeg","fft","fftw","fg","fgetc","fgets","fh","fha","fi","fianc","fiance","fiann","fianna","fiasco","fiascoes","fiat","fib","fibbed","fibber","fibbing","fiber","fiberboard","fiberfill","fiberglas","fiberglass","fibonacci","fibril","fibrillate","fibrillation","fibrin","fibroblast","fibroid","fibroses","fibrosis","fibrous","fibrousness","fibula","fibulae","fibular","fica","fices","fiche","fichte","fichu","fickle","fickleness","ficos","fiction","fictional","fictionalization","fictionalize","fictitious","fictitiousness","fictive","ficus","fid","fiddle","fiddler","fiddlestick","fiddling","fiddly","fide","fidel","fidela","fidelia","fidelio","fidelity","fidget","fidgety","fido","fidole","fiducial","fiduciary","fie","fief","fiefdom","field","fielded","fielder","fieldid","fielding","fieldname","fieldnames","fields","fieldset","fieldstone","fieldtype","fieldvalue","fieldwork","fieldworker","fiend","fiendish","fiendishness","fierce","fierceness","fierily","fieriness","fiery","fies","fiesta","fife","fifer","fifi","fifine","fifo","fifteen","fifteenths","fifth","fifths","fiftieths","fifty","fig","figaro","figcaption","figged","figging","fight","fightback","fighter","fighting","figment","figsize","figueroa","figural","figuration","figurative","figurativeness","figure","figured","figurehead","figurer","figures","figurine","figuring","fiji","fijian","fil","filament","filamentary","filamentous","filbert","filberte","filberto","filch","file","fileaccess","filechooser","filecontent","filed","filedata","filedialog","fileextension","fileformat","filehandle","fileid","fileinfo","fileinput","fileinputstream","filelist","filemanager","filemode","filename","filenames","fileno","filenotfoundexception","fileoutputstream","filepath","filer","filereader","files","fileset","filesize","filesmatch","filestream","filesystem","filesystemobject","filesystems","filet","filetree","filetype","fileupload","fileurl","fileurlwithpath","fileutils","filewriter","filia","filial","filibuster","filibusterer","filide","filigree","filigreeing","filing","filings","filip","filipino","filippa","filippo","fill","fillcolor","filled","filler","fillet","filleting","filling","fillip","fillmore","fillna","fillrect","fills","fillstyle","filly","film","filmdom","filmer","filminess","filming","filmmaker","filmore","films","filmstrip","filmy","filofax","filter","filterable","filterchain","filterchainproxy","filtercontext","filtered","filterer","filtering","filters","filth","filthily","filthiness","filths","filthy","filtrate","filtrated","filtrates","filtrating","filtration","fin","fina","finagle","finagler","final","finale","finalist","finality","finalization","finalize","finally","finalname","finance","financed","finances","financial","financier","financing","finch","find","findable","findall","findbugs","findbyid","findclass","findcontrol","findelement","findelements","finder","findfragmentbyid","finding","findings","findlay","findley","findone","finds","findstr","findviewbyid","fine","finely","fineness","finery","finespun","finesse","finger","fingerboard","fingerer","fingering","fingerless","fingerling","fingernail","fingerprint","fingers","fingertip","finial","finical","finickiness","finicky","fining","finis","finish","finished","finisher","finishes","finishing","finite","finitely","finiteness","fink","finland","finlay","finley","finn","finnbogadottir","finned","finnegan","finner","finning","finnish","finny","fiona","fionna","fionnula","fiord","fiorello","fiorenze","fiori","fir","fire","firearm","fireball","firebase","firebaseauth","firebasedatabase","firebird","fireboat","firebomb","firebox","firebrand","firebreak","firebrick","firebug","firecracker","fired","firedamp","fireevent","firefight","firefly","firefox","firefoxdriver","fireguard","firehouse","firelight","fireman","firemen","fireplace","fireplug","firepower","fireproof","firer","fires","firesafe","fireside","firestone","firestore","firestorm","firetrap","firetruck","firewall","firewalls","firewater","firewood","firework","firing","firkin","firm","firmament","firmer","firmest","firmly","firmness","firms","firmware","firring","first","firstborn","firstchild","firsthand","firstly","firstname","firstordefault","firth","firths","fis","fiscal","fischbein","fischer","fish","fishbowl","fishcake","fisher","fisherman","fishermen","fishery","fishhook","fishily","fishiness","fishing","fishkill","fishmeal","fishmonger","fishnet","fishpond","fishtail","fishtanks","fishwife","fishwives","fishy","fisk","fiske","fissile","fission","fissionable","fissure","fist","fistfight","fistful","fisticuff","fistula","fistulous","fit","fitch","fitchburg","fitful","fitfulness","fitments","fitness","fits","fitssystemwindows","fitted","fitter","fittest","fitting","fittingly","fittingness","fittings","fitz","fitzgerald","fitzpatrick","fitzroy","five","fivefold","fiver","fix","fixable","fixate","fixatifs","fixation","fixative","fixed","fixedness","fixer","fixes","fixing","fixity","fixture","fixtures","fizeau","fizz","fizzer","fizzle","fizzy","fjord","fjs","fk","fl","fla","flab","flabbergast","flabbergasting","flabbily","flabbiness","flabby","flaccid","flaccidity","flack","flag","flagella","flagellate","flagellation","flagellum","flagged","flagging","flaggingly","flagman","flagmen","flagon","flagpole","flagrance","flagrancy","flagrant","flags","flagship","flagstaff","flagstone","flail","flair","flak","flake","flaker","flakiness","flaky","flam","flamb","flambeing","flambes","flamboyance","flamboyancy","flamboyant","flame","flamen","flamenco","flameproof","flamer","flamethrower","flaming","flamingo","flammability","flammable","flan","flanagan","flanders","flange","flank","flanker","flannel","flannelet","flannelette","flap","flapjack","flapped","flapper","flapping","flaps","flare","flareup","flaring","flash","flashback","flashbulb","flashcard","flashcube","flasher","flashgun","flashily","flashiness","flashing","flashlight","flashy","flask","flat","flatbed","flatboat","flatcar","flatfeet","flatfish","flatfoot","flathead","flatiron","flatland","flatmap","flatmate","flatness","flatt","flatted","flatten","flattened","flattener","flatter","flatterer","flattering","flattery","flattest","flatting","flattish","flattop","flatulence","flatulent","flatus","flatware","flatworm","flaubert","flaunt","flaunting","flautist","flavor","flavored","flavorer","flavorful","flavoring","flavorless","flavors","flavorsome","flaw","flawed","flawless","flawlessly","flawlessness","flaws","flax","flaxseed","flay","flayer","fld","flea","fleabag","fleabites","fleawort","fleck","fledermaus","fledge","fledged","fledgling","flee","fleece","fleecer","fleeciness","fleecy","fleeing","fleet","fleeting","fleetingly","fleetingness","fleetness","fleischer","fleischman","fleisher","flem","fleming","flemish","flemished","flemishing","flemming","flesh","flesher","fleshiness","fleshless","fleshly","fleshpot","fleshy","fletch","fletcher","fletching","fleur","fleurette","flew","flews","flex","flexbox","flexed","flexibility","flexible","flexibly","flexitime","flexslider","flextime","flexural","flexure","flibbertigibbet","flick","flicker","flickering","flickery","flickr","flier","flight","flightiness","flightless","flightpath","flights","flighty","flimflam","flimflammed","flimflamming","flimsily","flimsiness","flimsy","flin","flinch","flincher","flinching","fling","flinger","flink","flinn","flint","flintiness","flintless","flintlock","flintstones","flinty","flip","flipflop","flippable","flippancy","flippant","flipped","flipper","flippest","flipping","flirt","flirtation","flirtatious","flirtatiousness","flit","flitted","flitting","flo","float","floated","floater","floating","floatingactionbutton","floats","floatvalue","floaty","flocculate","flocculation","flock","floe","flog","flogged","flogger","flogging","flood","floodgate","floodlight","floodlit","floodplain","floodwater","floor","floorboard","floorer","flooring","floorspace","floorwalker","floozy","flop","flophouse","flopped","flopper","floppily","floppiness","flopping","floppy","flor","flora","floral","florance","flore","florella","florence","florencia","florentia","florentine","florenza","florescence","florescent","floret","florette","flori","floria","florian","florid","florida","floridan","floridian","floridness","florie","florin","florina","florinda","florine","florist","florri","florrie","florry","flory","floss","flossi","flossie","flossy","flot","flotation","flotilla","flotsam","flounce","flouncing","flouncy","flounder","flour","flourish","flourisher","flourishing","floury","flout","flouter","flow","flowchart","flowed","flower","flowerbed","flowerer","floweriness","flowerless","flowerpot","flowers","flowery","flowing","flowlayout","flown","flows","flowstone","floyd","flss","flt","flu","flub","flubbed","flubbing","fluctuate","fluctuation","flue","fluency","fluent","fluently","fluff","fluffiness","fluffy","fluid","fluidity","fluidized","fluidness","fluidpage","fluke","fluky","flume","flummox","flung","flunk","flunkey","flunky","fluoresce","fluorescence","fluorescent","fluoridate","fluoridation","fluoride","fluorimetric","fluorinated","fluorine","fluorite","fluorocarbon","fluoroscope","fluoroscopic","flurry","flush","flushed","flushing","flushness","fluster","flute","fluter","fluting","flutist","flutter","flutterer","fluttery","flux","fluxed","fluxes","fluxing","flv","fly","flyaway","flyblown","flyby","flybys","flycatcher","flyer","flying","flyleaf","flyleaves","flynn","flyover","flypaper","flysheet","flyspeck","flyswatter","flyway","flyweight","flywheel","fm","fmap","fmt","fn","fname","fnma","fno","fnr","fo","foal","foam","foaminess","foamy","fob","fobbed","fobbing","focal","focally","foch","foci","focus","focusable","focused","focuser","focuses","focusing","fodder","foe","foetid","fofl","fog","fogbound","fogged","foggily","fogginess","fogging","foggy","foghorn","fogs","fogy","fogyish","foible","foil","foist","fokker","fol","fold","foldaway","folded","folder","foldername","folderpath","folders","folding","foldout","foldr","folds","foley","foliage","foliate","foliation","folio","folk","folklike","folklore","folkloric","folklorist","folks","folksiness","folksinger","folksinging","folksong","folksy","folktale","folkway","foll","follicle","follicular","follow","followed","follower","followers","following","follows","followsymlinks","followup","folly","folsom","fomalhaut","foment","fomentation","fomenter","fond","fonda","fondant","fondle","fondler","fondness","fondue","fons","fonsie","font","fontaine","fontainebleau","fontana","fontanel","fontanelle","fontawesome","fontfamily","fontname","fonts","fontsize","fontstyle","fontweight","fontwithname","fonz","fonzie","foo","foobar","food","foodie","foods","foodstuff","fool","foolery","foolhardily","foolhardiness","foolhardy","foolish","foolishness","foolproof","foolscap","foos","foot","footage","football","footbridge","foote","footer","footfall","foothill","foothold","footing","footless","footlights","footling","footlocker","footloose","footman","footmarks","footmen","footnote","footpad","footpath","footpaths","footplate","footprint","footrace","footrest","footsie","footsore","footstep","footstool","footwear","footwork","fop","fopen","fopped","foppery","fopping","foppish","foppishness","for","forage","forager","forall","foray","forayer","forbade","forbear","forbearance","forbearer","forbes","forbid","forbidden","forbidding","forbiddingness","forbore","forborne","force","forced","forcefield","forceful","forcefulness","forceps","forcer","forces","forcible","forcibleness","forcibly","forcing","forcontrolevents","ford","fordable","fordham","fore","foreach","forearm","forebear","forebode","foreboding","forebodingness","forecast","forecaster","forecastle","foreclose","foreclosure","forecolor","forecourt","foredoom","forefather","forefeet","forefinger","forefoot","forefront","foregoer","foregoing","foregone","foregos","foreground","foregroundcolor","forehand","forehead","foreign","foreigner","foreignkey","foreignness","foreknew","foreknow","foreknowledge","foreknown","foreleg","forelimb","forelock","foreman","foremast","foremen","foremost","forename","forenoon","forensic","forensically","forensics","foreordain","forepart","forepaws","forepeople","foreperson","foreplay","forequarter","forerunner","foresail","foresaw","foresee","foreseeable","foreseeing","foreseen","foreseer","foreshadow","foreshore","foreshorten","foresight","foresighted","foresightedness","foreskin","forest","forestall","forestaller","forestallment","forestation","forestations","forester","forestland","forestry","foretaste","foretell","foreteller","forethought","foretold","forever","forevermore","forewarn","forewarner","forewent","forewoman","forewomen","foreword","forfeit","forfeiter","forfeiture","forfend","forgather","forgave","forge","forged","forger","forgery","forges","forget","forgetful","forgetfulness","forgettable","forgettably","forgetting","forging","forgivable","forgivably","forgive","forgiven","forgiveness","forgiver","forgiving","forgivingly","forgivingness","forgo","forgoer","forgoes","forgone","forgot","forgotten","forhttpheaderfield","forindexpath","fork","forked","forkey","forkful","forking","forklift","forks","forlorn","forlornness","form","formability","formal","formaldehyde","formalin","formalism","formalist","formalistic","formality","formalization","formalize","formalized","formalizer","formalizes","formally","formalness","formals","formant","format","formatdate","formate","formation","formative","formatively","formativeness","formats","formatted","formatter","formatters","formatting","formbuilder","formcontrol","formcontrolname","formdata","formed","former","formerly","formfitting","formgroup","formic","formica","formid","formidable","formidableness","formidably","forming","formless","formlessness","formmethod","formname","formosa","formosan","forms","formsauthentication","formset","formula","formulaic","formular","formulas","formulate","formulated","formulation","formulator","forname","fornicate","fornication","fornicator","forrest","forrester","forroot","forsake","forsaken","forsook","forsooth","forstate","forster","forswear","forswore","forsworn","forsythia","fort","fortaleza","forte","forth","forthcome","forthcoming","forthright","forthrightness","forthwith","fortieths","fortification","fortified","fortifier","fortify","fortiori","fortissimo","fortitude","fortnight","fortnightly","fortran","fortress","fortuitous","fortuitousness","fortuity","fortunate","fortunately","fortunateness","fortune","fortuneteller","fortunetelling","forty","forum","forums","forward","forwarded","forwarder","forwarding","forwardness","forwards","forwent","fos","foss","fossil","fossiliferous","fossilization","fossilize","fossilized","foster","fosterer","foto","foucault","fought","foul","foulard","foulmouth","foulness","fouls","found","foundation","foundational","founded","founder","founders","founding","foundling","foundry","founds","fount","fountain","fountainhead","four","fourfold","fourier","fourpence","fourpenny","fourposter","fourscore","foursome","foursquare","fourteen","fourteener","fourteenths","fourth","fourths","fout","fovea","fowl","fowler","fowling","fox","foxfire","foxglove","foxhall","foxhole","foxhound","foxily","foxiness","foxing","foxtail","foxtrot","foxtrotted","foxtrotting","foxy","foyer","fp","fpga","fpic","fpm","fpo","fprintf","fps","fq","fql","fr","frac","fracas","fractal","fraction","fractional","fractionate","fractionation","fractioned","fractioning","fractions","fractious","fractiousness","fracture","frag","fragile","fragility","fragment","fragmentactivity","fragmentarily","fragmentariness","fragmentary","fragmentation","fragmentmanager","fragmentmanagerimpl","fragmentpageradapter","fragments","fragmenttransaction","fragonard","fragrance","fragrant","frail","frailness","frailty","frame","frameborder","framebuffer","framed","framelayout","framer","framerate","frames","framework","frameworkelement","frameworkmethod","frameworks","frameworkservlet","framing","fran","franc","francaise","france","francene","francesca","francesco","franchise","franchisee","franchiser","franchot","francie","francine","francis","francisca","franciscan","francisco","franciska","franciskus","francium","franck","francklin","francklyn","franco","francois","francoise","francophone","francyne","frangibility","frangible","frank","frankel","frankenstein","franker","frankford","frankfort","frankfurt","frankfurter","frankie","frankincense","frankish","franklin","frankly","franklyn","frankness","franky","franni","frannie","franny","fransisco","frantic","frantically","franticness","frants","franz","franzen","frapp","frappeed","frappeing","frappes","frasco","fraser","frasier","frasquito","frat","fraternal","fraternity","fraternization","fraternize","fraternizer","fraternizing","fratricidal","fratricide","frau","fraud","fraudsters","fraudulence","fraudulent","fraught","fraulein","fray","frayda","frayne","fraze","frazer","frazier","frazzle","fread","freak","freakish","freakishness","freaky","freckle","freckly","fred","freda","freddi","freddie","freddy","fredek","fredelia","frederic","frederica","frederich","frederick","fredericka","frederico","fredericton","frederigo","frederik","frederique","fredholm","fredi","fredia","fredra","fredric","fredrick","fredrickson","fredrika","free","freebase","freebie","freeboot","freebooter","freeborn","freebsd","freed","freedman","freedmen","freedom","freehand","freehanded","freehold","freeholder","freeing","freelance","freeland","freeload","freeloader","freely","freeman","freemarker","freemason","freemasonry","freemen","freemon","freeness","freeport","freestanding","freestone","freestyle","freethinker","freethinking","freetown","freetype","freeway","freewheel","freewheeler","freewheeling","freewill","freezable","freeze","freezer","freezes","freezing","freida","freight","freighter","fremont","french","frenchman","frenchmen","frenchwoman","frenchwomen","frenetic","frenetically","frenzied","frenzy","freon","freq","frequencies","frequency","frequent","frequented","frequenter","frequentest","frequenting","frequently","frequentness","frequents","fresco","frescoes","fresh","freshen","freshener","fresher","freshest","freshet","freshly","freshman","freshmen","freshness","freshwater","fresnel","fresno","fret","fretboard","fretful","fretfulness","fretsaw","fretted","fretting","fretwork","freud","freudian","frey","freya","fri","friable","friableness","friar","friary","fricassee","fricasseeing","frication","fricative","frick","friction","frictional","frictionless","friday","fridge","fried","frieda","friedan","friedcake","friederike","friedman","friedrich","friedrick","friend","friendless","friendlessness","friendlies","friendlily","friendliness","friendly","friends","friendship","frier","fries","frieze","frig","frigate","frigga","frigged","frigging","fright","frighten","frightening","frightful","frightfulness","frigid","frigidaire","frigidity","frigidness","frill","frilly","fringe","fringilla","frippery","frisbee","frisco","frisian","frisk","frisker","friskily","friskiness","frisky","frisson","frito","fritter","fritterer","fritz","frivolity","frivolous","frivolousness","frizz","frizzle","frizzly","frizzy","frm","fro","frobisher","frock","frocking","frog","frogged","frogging","frogman","frogmarched","frogmen","froissart","frolic","frolicked","frolicker","frolicking","frolicsome","from","frombody","fromcharcode","fromdate","fromfile","fromhtml","fromimage","fromjson","fromm","fromseconds","fromstring","frond","front","frontage","frontal","frontenac","frontend","frontier","frontiersman","frontiersmen","frontispiece","frontrunner","frontward","frosh","frost","frostbelt","frostbit","frostbite","frostbiting","frostbitten","frosted","frosteds","frostily","frostiness","frosting","frosty","froth","frothiness","froths","frothy","froufrou","froward","frowardness","frown","frowner","frowning","frowzily","frowziness","frowzy","froze","frozen","frozenness","fructify","fructose","fruehauf","frugal","frugality","fruit","fruitcake","fruiter","fruiterer","fruitful","fruitfuller","fruitfullest","fruitfulness","fruitiness","fruition","fruitless","fruitlessness","fruits","fruity","frump","frumpish","frumpy","frunze","frustrate","frustrated","frustrater","frustrating","frustration","frustum","fry","frye","fryer","fs","fscanf","fseek","fsharp","fslic","fso","fst","fstream","ft","ftc","fte","ftp","ftpclient","fu","fuchs","fuchsia","fuck","fucker","fucking","fud","fuddle","fudge","fuel","fueler","fuentes","fugal","fugger","fugiat","fugitive","fugitiveness","fugue","fuhrer","fuji","fujitsu","fujiyama","fukuoka","fulani","fulbright","fulcrum","fulfill","fulfilled","fulfiller","fulfillment","full","fullback","fullcalendar","fuller","fullerton","fullish","fullname","fullness","fullpath","fullscreen","fullstops","fulltext","fullword","fully","fulminate","fulmination","fulness","fulsome","fulsomeness","fulton","fulvia","fumble","fumbler","fumbling","fume","fumigant","fumigate","fumigation","fumigator","fuming","fumy","fun","funafuti","func","funcs","function","functional","functionalism","functionalist","functionalities","functionality","functionally","functionary","functioning","functionname","functions","functools","functor","fund","fundamental","fundamentalism","fundamentalist","fundamentally","fundamentals","funded","fundholders","fundholding","funding","funds","fundy","funeral","funerary","funereal","funfair","fungal","fungi","fungible","fungicidal","fungicide","fungoid","fungous","fungus","funicular","funk","funkiness","funky","funned","funnel","funner","funnest","funnily","funniness","funning","funny","fur","furbelow","furbish","furbisher","furious","furiousness","furl","furlong","furlough","furloughs","furn","furnace","furnish","furnished","furnisher","furnishing","furniture","furor","furore","furred","furrier","furriness","furring","furrow","furry","further","furtherance","furtherer","furthermore","furthermost","furthest","furtive","furtiveness","fury","furze","fusce","fuse","fusebox","fusee","fuselage","fushun","fusibility","fusible","fusiform","fusilier","fusillade","fusion","fuss","fussbudget","fusser","fussily","fussiness","fusspot","fussy","fustian","fustiness","fusty","fut","futile","futileness","futility","futon","future","futures","futuretask","futurism","futurist","futuristic","futurity","futurologist","futurology","futz","fuze","fuzhou","fuzz","fuzzbuster","fuzzily","fuzziness","fuzzy","fv","fw","fwd","fwiw","fwlink","fwrite","fwww","fwy","fx","fxml","fxmlloader","fy","fyi","g","ga","gab","gabardine","gabbed","gabbey","gabbi","gabbie","gabbiness","gabbing","gabble","gabby","gabe","gaberdine","gabey","gabfest","gabi","gabie","gable","gabon","gabonese","gaborone","gabriel","gabriela","gabriele","gabriell","gabriella","gabrielle","gabriellia","gabriello","gabrila","gaby","gac","gacrux","gad","gadabout","gadded","gadder","gadding","gadfly","gadget","gadgetry","gadolinium","gadsden","gae","gaea","gael","gaelan","gaelic","gaff","gaffe","gaffer","gag","gaga","gagarin","gage","gager","gagged","gagging","gaggle","gagwriter","gaiety","gail","gaile","gaily","gain","gained","gainer","gaines","gainesville","gainful","gainfulness","gaining","gainly","gains","gainsaid","gainsay","gainsayer","gainsborough","gait","gaiter","gaithersburg","gal","gala","galactic","galahad","galapagos","galatea","galatia","galatians","galaxy","galbraith","galbreath","gale","galen","galena","galenite","galibi","galilean","galilee","galileo","galina","gall","gallagher","gallant","gallanted","gallanting","gallantry","gallants","gallard","gallbladder","gallegos","galleon","galleria","galleries","gallery","galley","gallic","gallicism","gallimaufry","galling","gallium","gallivant","gallon","gallonage","gallop","galloper","galloway","gallows","gallstone","gallup","galois","galoot","galore","galosh","galsworthy","galumph","galumphs","galvan","galvani","galvanic","galvanism","galvanization","galvanize","galvanometer","galvanometric","galven","galveston","galvin","gama","gamaliel","gambia","gambian","gambit","gamble","gambler","gambol","game","gamecock","gameid","gamekeeper","gameness","gameobject","games","gamescene","gamesmanship","gamesmen","gamest","gamestate","gamester","gamete","gametic","gametime","gamin","gamine","gaminess","gaming","gamma","gammon","gamow","gamut","gamy","gan","gander","gandhi","gandhian","gang","gangbusters","ganger","ganges","gangland","ganglia","gangling","ganglion","ganglionic","gangplank","gangrene","gangrenous","gangster","gangtok","gangway","gannet","gannie","gannon","ganny","gantlet","gantry","ganymede","gao","gaol","gaoler","gap","gape","gaper","gapi","gaping","gapped","gapping","gaps","gaq","gar","garage","garald","garb","garbage","garbageman","garbanzo","garble","garbler","garbo","garcia","gard","garden","gardener","gardenia","gardening","gardie","gardiner","gardner","gardy","gare","garek","gareth","garey","garfield","garfish","garfunkel","gargantua","gargantuan","gargle","gargoyle","garibaldi","garik","garish","garishness","garland","garlic","garlicked","garlicking","garlicky","garment","garner","garnet","garnett","garnette","garnish","garnishee","garnisheeing","garnishment","garold","garon","garote","garotte","garrard","garred","garrek","garret","garreth","garrett","garrick","garrik","garring","garrison","garrot","garrote","garroter","garrott","garrotte","garrulity","garrulous","garrulousness","garry","garter","garth","garv","garvey","garvin","garvy","garwin","garwood","gary","garza","gas","gasbag","gascony","gaseous","gaseousness","gases","gash","gasification","gasifier","gasify","gasket","gaslight","gasohol","gasoline","gasometer","gasp","gaspar","gaspard","gasparo","gasper","gasping","gassed","gasser","gasset","gassiness","gassing","gassy","gaston","gastric","gastritides","gastritis","gastroenteritides","gastroenteritis","gastrointestinal","gastronome","gastronomic","gastronomical","gastronomy","gastropod","gasworks","gate","gateau","gateaux","gatecrash","gatehouse","gatekeeper","gatepost","gates","gateway","gather","gathered","gatherer","gathering","gathers","gatlinburg","gatling","gator","gatorade","gatsby","gatt","gatun","gauche","gaucheness","gaucherie","gaucho","gaudily","gaudiness","gaudy","gauge","gaugeable","gauger","gauguin","gaul","gaulish","gaulle","gaultiero","gaunt","gauntlet","gauntley","gauntness","gauss","gausses","gaussian","gautama","gauthier","gautier","gauze","gauziness","gauzy","gav","gavan","gave","gavel","gaven","gavin","gavotte","gavra","gavrielle","gawain","gawen","gawk","gawkily","gawkiness","gawky","gay","gaye","gayel","gayelord","gayety","gayla","gayle","gayleen","gaylene","gayler","gaylor","gaylord","gayness","gaynor","gaza","gaze","gazebo","gazelle","gazer","gazette","gazetteer","gaziantep","gazillion","gazpacho","gb","gbc","gbp","gc","gca","gcc","gcd","gcloud","gcm","gcp","gcs","gd","gdal","gdansk","gdata","gdb","gdel","gdi","gdk","gdp","gdx","ge","gear","gearalt","gearard","gearbox","gearing","gearshift","gearstick","gearwheel","geary","gecko","geckodriver","ged","gee","geegaw","geeing","geek","geeky","geese","geest","geezer","gehenna","gehrig","geiger","geigy","geisha","gel","gelatin","gelatinous","gelatinousness","gelcap","geld","gelding","gelid","gelignite","gelled","gelling","gelya","gem","gemfile","gemini","gemlike","gemma","gemmed","gemming","gemological","gemologist","gemology","gems","gemstone","gen","gena","genaro","gendarme","gender","genderless","gene","genealogical","genealogist","genealogy","genera","general","generalissimo","generalist","generality","generalizable","generalization","generalize","generalized","generalizer","generally","generalness","generalship","generate","generated","generatedvalue","generates","generating","generation","generational","generations","generationtype","generative","generator","generators","generic","generically","generics","generosity","generous","generously","generousness","genes","genesco","genesis","genet","genetic","genetically","geneticist","genetics","geneva","genevieve","genevra","genghis","genia","genial","geniality","genially","genialness","genie","genies","genii","genital","genitalia","genitals","genitive","genitourinary","genius","genna","genni","gennie","gennifer","genny","geno","genoa","genocidal","genocide","genome","genotype","genovera","genre","genres","gent","genteel","genteelness","gentian","gentile","gentility","gentle","gentlefolk","gentleman","gentlemanliness","gentlemanly","gentlemen","gentleness","gentlewoman","gentlewomen","gently","gentrification","gentrify","gentry","genuflect","genuflection","genuine","genuinely","genuineness","genus","genvieve","genymotion","geo","geocentric","geocentrically","geocentricism","geochemical","geochemistry","geochronology","geocode","geocoder","geocoding","geode","geodesic","geodesy","geodetic","geoff","geoffrey","geoffry","geog","geographer","geographic","geographical","geography","geoip","geojson","geolocation","geologic","geological","geologist","geology","geom","geomagnetic","geomagnetically","geomagnetism","geometer","geometric","geometrical","geometrician","geometry","geomorphological","geomorphology","geophysical","geophysicist","geophysics","geopoint","geopolitic","geopolitical","geopolitics","georas","geordie","georg","george","georgeanna","georgeanne","georgena","georgeta","georgetown","georgetta","georgette","georgi","georgia","georgian","georgiana","georgianna","georgianne","georgie","georgina","georgine","georgy","geostationary","geosynchronous","geosyncline","geothermal","geothermic","ger","gerald","geralda","geraldine","geranium","gerard","gerardo","gerber","gerbil","gerda","gerek","gerhard","gerhardine","gerhardt","geri","gerianna","gerianne","geriatric","geriatrics","gerick","gerik","geritol","gerladina","germ","germain","germaine","german","germana","germane","germania","germanic","germanium","germanized","germantown","germany","germayne","germen","germicidal","germicide","germinal","germinate","germinated","germination","germinative","gerome","geronimo","gerontocracy","gerontological","gerontologist","gerontology","gerrard","gerri","gerrie","gerrilee","gerrit","gerry","gerrymander","gershwin","gert","gerta","gerti","gertie","gertrud","gertruda","gertrude","gertrudis","gerty","gerund","gerundive","gery","gestalt","gestapo","gestate","gestation","gestational","gesticulate","gesticulation","gesticulative","gestural","gesture","gesturedetector","gesturerecognizer","gestures","gesundheit","get","getabsolutepath","getaccesstoken","getaction","getactionbar","getactivesheet","getactivespreadsheet","getactivity","getaddress","getaddrinfo","getage","getall","getapplication","getapplicationcontext","getarguments","getassets","getasync","getattr","getattribute","getaway","getbasecontext","getbean","getbody","getboolean","getbootstrap","getboundingclientrect","getbounds","getbroadcast","getbyid","getbytes","getcell","getch","getchar","getchild","getchildat","getchildren","getclass","getclassloader","getcode","getcollection","getcolor","getcolumn","getcolumnindex","getcomponent","getconnection","getcontent","getcontentpane","getcontentresolver","getcontext","getcount","getcurrentinstance","getcurrentposition","getcurrentsession","getcurrentuser","getcwd","getdata","getdate","getday","getdefault","getdefaultproguardfile","getdefaultsharedpreferences","getdescription","getdouble","getdrawable","getelement","getelementbyid","getelementsbyclassname","getelementsbyname","getelementsbytagname","getemail","getentity","getenumerator","getenv","getexternalstoragedirectory","getextras","getfield","getfile","getfilename","getfiles","getfirstname","getfragmentmanager","getfullyear","gethashcode","getheight","gethours","gethsemane","getid","getimage","getindex","getinfo","getinputstream","getinstance","getint","getintent","getitem","getitemcount","getitemid","getitems","getjson","getjsonarray","getjsonobject","getkey","getkeycode","getlasterror","getlatitude","getlayoutinflater","getlayoutparams","getlength","getline","getlist","getlocation","getlogger","getlong","getlongitude","getmap","getmenuinflater","getmessage","getmethod","getminutes","getmodel","getmonth","getname","getnext","getnumber","getobject","getopt","getoutputstream","getpackagemanager","getpackagename","getpage","getparameter","getparameters","getparent","getpassword","getpath","getpid","getpixel","getposition","getpreferredsize","getprice","getproperties","getproperty","getquery","getrange","getreadabledatabase","getreference","getrepository","getrequest","getresource","getresourceasstream","getresources","getresponse","getresponsecode","getresponsestream","getresult","getresultlist","getrow","getruntime","gets","getscript","getselecteditem","getselection","getservice","getsession","getsettings","getsharedpreferences","getsheetbyname","getsimplename","getsingleton","getsize","getsource","getstate","getstatus","getstream","getstring","getstringextra","getsupportactionbar","getsupportfragmentmanager","getsystemservice","gettable","gettag","getter","getters","gettext","gettime","gettimeinmillis","getting","gettitle","gettoken","gettransaction","getty","gettype","gettysburg","getup","geturl","getuser","getuserid","getusername","getusers","getvalue","getvalues","getview","getwidth","getwindow","getwritabledatabase","getwriter","getx","gety","gevent","gewgaw","gewrztraminer","geyser","gf","gfortran","gfx","gg","ggplot","gh","ghana","ghanaian","ghanian","ghastliness","ghastly","ghat","ghats","ghc","ghci","ghent","gherardo","gherkin","ghetto","ghettoize","ghi","ghibelline","ghost","ghostlike","ghostliness","ghostly","ghostscript","ghostwrite","ghostwritten","ghostwrote","ghoul","ghoulish","ghoulishness","ghq","ghz","gi","giacinta","giacobo","giacometti","giacomo","giacopo","gian","giana","gianina","gianna","gianni","giannini","giant","giantess","giantkiller","giauque","giavani","gib","gibb","gibber","gibberish","gibbet","gibbie","gibbon","gibbous","gibbousness","gibby","gibe","giber","giblet","gibraltar","gibson","gid","giddap","giddily","giddiness","giddings","giddy","gide","gideon","gielgud","gienah","gif","giff","giffard","giffer","giffie","gifford","giffy","gift","gifted","giftedness","gig","gigabyte","gigacycle","gigahertz","gigantic","gigantically","giganticness","gigavolt","gigawatt","gigged","gigging","giggle","giggler","giggling","giggly","gigi","gigo","gigolo","gil","gila","gilbert","gilberta","gilberte","gilbertina","gilbertine","gilberto","gilbertson","gilburt","gilchrist","gild","gilda","gilder","gilding","gilead","gilemette","giles","gilgamesh","gilkson","gill","gillan","gilles","gillespie","gillette","gilli","gilliam","gillian","gillie","gilligan","gilly","gilmore","gilt","gimbaled","gimbals","gimbel","gimcrack","gimcrackery","gimlet","gimme","gimmick","gimmickry","gimmicky","gimp","gimpy","gin","gina","ginelle","ginevra","ginger","gingerbread","gingerliness","gingerly","gingersnap","gingery","gingham","gingivitis","gingrich","ginkgo","ginkgoes","ginmill","ginned","ginni","ginnie","ginnifer","ginning","ginny","gino","ginsberg","ginsburg","ginseng","gioconda","giordano","giorgi","giorgia","giorgio","giorgione","giotto","giovanna","giovanni","gipsy","giraffe","giralda","giraldo","giraud","giraudoux","gird","girded","girder","girdle","girdler","girl","girlfriend","girlhood","girlie","girlish","girlishness","girls","giro","girt","girth","girths","gis","gisela","giselbert","gisele","gisella","giselle","gish","gist","git","github","githubusercontent","gitignore","gitlab","giuditta","giulia","giuliano","giulietta","giulio","giuseppe","giustina","giustino","giusto","give","giveaway","giveback","given","givenname","giver","gives","giving","giza","gizela","gizmo","gizzard","gk","gl","glac","glacial","glaciate","glaciation","glacier","glaciological","glaciologist","glaciology","glad","gladded","gladden","gladder","gladdest","gladding","gladdy","glade","gladi","gladiator","gladiatorial","gladiola","gladioli","gladiolus","gladly","gladness","gladsome","gladstone","gladys","glamor","glamorization","glamorize","glamorizer","glamorous","glamorousness","glance","glancing","gland","glanders","glandes","glandular","glans","glare","glaring","glaringness","glaser","glasgow","glasnost","glass","glassblower","glassblowing","glassfish","glassful","glasshouse","glassily","glassiness","glassless","glassware","glasswort","glassy","glastonbury","glaswegian","glaucoma","glaucous","glaze","glazed","glazer","glazier","glazing","glbindbuffer","glbindtexture","glclear","glcolor","gleam","glean","gleaner","gleaning","gleason","gleda","glee","gleed","gleeful","gleefulness","gleeing","glen","glenable","glenda","glendale","glenden","glendon","glenine","glenn","glenna","glennie","glennis","gles","glew","glfloat","glfw","glib","glibber","glibbest","glibc","glibness","glide","glider","glim","glimmer","glimmering","glimpse","glimpser","glint","glissandi","glissando","glisten","glister","glitch","glitter","glittering","glittery","glitz","glitzy","glm","glmatrixmode","gloaming","gloat","gloater","gloating","glob","global","globalism","globalist","globalization","globally","globals","globe","globetrotter","globular","globularity","globularness","globule","globulin","glockenspiel","glommed","gloom","gloomily","gloominess","gloomy","glop","glopped","glopping","gloppy","glori","gloria","gloriana","gloriane","glorification","glorifier","glorify","glorious","gloriousness","glory","gloss","glossary","glossily","glossiness","glossolalia","glossy","glottal","glottalization","glottis","gloucester","glove","gloveless","glover","glow","glower","glowing","glowworm","glsl","gltexparameteri","glucose","glue","glued","gluer","gluey","gluier","gluiest","gluint","glum","glummer","glummest","glumness","gluon","glut","glutamate","gluten","glutenous","glutinous","glutinousness","glutted","glutting","glutton","gluttonous","gluttony","glvertex","glyceride","glycerin","glycerinate","glycerine","glycerol","glycerolized","glycine","glycogen","glycol","glyn","glynda","glynis","glynn","glynnis","glyph","glyphicon","glyphs","gm","gmap","gmaps","gmp","gms","gmt","gn","gnarl","gnash","gnat","gnaw","gnawer","gnawing","gneiss","gnni","gnome","gnomelike","gnomic","gnomish","gnomonic","gnostic","gnosticism","gnp","gnu","gnuplot","go","goa","goad","goal","goalie","goalkeeper","goalkeeping","goalless","goalmouth","goalpost","goals","goalscorer","goalscoring","goaltender","goat","goatee","goatherd","goatskin","gob","goback","gobbed","gobbet","gobbing","gobble","gobbledegook","gobbledygook","gobbler","gobi","goblet","goblin","god","godaddy","godard","godart","godchild","godchildren","goddammit","goddamn","goddard","goddart","goddaughter","godded","goddess","godding","godfather","godforsaken","godfree","godfrey","godfry","godhead","godhood","godiva","godless","godlessness","godlike","godlikeness","godliness","godly","godmother","godot","godparent","godsend","godson","godspeed","godthaab","godunov","godwin","godzilla","goebbels","goer","goering","goes","goethals","goethe","gofer","goff","gog","goggle","goggler","gogh","gogol","goiania","going","goiter","golan","golang","golconda","gold","golda","goldarina","goldberg","goldbrick","goldbricker","golden","goldenness","goldenrod","goldenseal","goldfinch","goldfish","goldi","goldia","goldie","goldilocks","goldina","golding","goldman","goldmine","goldsmith","goldsmiths","goldstein","goldwater","goldwyn","goldy","goleta","golf","golfer","golgotha","goliath","goliaths","golly","gomez","gomorrah","gompers","gonad","gonadal","gondola","gondolier","gondwanaland","gone","goner","gong","gonion","gonna","gonorrhea","gonorrheal","gonzales","gonzalez","gonzalo","goo","goober","good","goodbye","goodhearted","goodie","goodish","goodly","goodman","goodness","goodnight","goodrich","goods","goodwill","goodwin","goody","goodyear","gooey","goof","goofiness","goofy","goog","googling","gooier","gooiest","gook","goon","goop","goos","goose","gooseberry","goosebumps","gop","gopath","gopher","goran","goraud","gorbachev","gordan","gorden","gordian","gordie","gordimer","gordon","gordy","gore","goren","gorey","gorgas","gorge","gorged","gorgeous","gorgeousness","gorger","gorges","gorging","gorgon","gorgonzola","gorham","gorilla","gorily","goriness","goring","gorky","gormandize","gormandizer","gormless","gorp","gorse","gory","gos","gosh","goshawk","gosling","gospel","gospeler","gossamer","gossip","gossipy","got","gotcha","goth","gotham","gothart","gothic","gothicism","goths","goto","gotta","gotten","gottfried","goucher","gouda","gouge","gouger","goulash","gould","gounod","gourd","gourde","gourmand","gourmet","gout","gouty","gov","govern","governable","governance","governed","governess","governing","government","governmental","governments","governor","governorship","govt","gown","goya","gp","gpa","gpg","gpio","gpl","gpo","gps","gpss","gpu","gpus","gr","grab","grabbed","grabber","grabbing","grabs","gracchus","grace","graceful","gracefuller","gracefullest","gracefully","gracefulness","graceland","graceless","gracelessness","gracia","gracie","graciela","gracious","graciousness","grackle","grad","gradate","gradation","grade","graded","gradeigh","gradely","grader","grades","gradey","gradient","gradients","gradientstop","gradle","gradlew","gradual","gradualism","gradualist","gradually","gradualness","graduand","graduate","graduation","grady","graehme","graeme","graff","graffias","graffiti","graffito","graft","grafter","grafting","grafton","graham","grahame","graig","grail","grails","grain","grained","grainer","graininess","graining","grainy","gram","grammar","grammarian","grammatic","grammatical","grammaticality","grammaticalness","gramme","grammy","gramophone","grampians","grampus","gran","granada","granary","grand","grandam","grandaunt","grandchild","grandchildren","granddad","granddaddy","granddaughter","grandee","grandeur","grandfather","grandiloquence","grandiloquent","grandiose","grandiosity","grandkid","grandma","grandmaster","grandmother","grandnephew","grandness","grandniece","grandpa","grandparent","grandson","grandstand","grandstander","granduncle","grange","granger","granite","granitic","grannie","granny","granola","grant","granted","grantee","granter","grantham","granthem","grantley","grantor","grantresults","grants","grantsmanship","granular","granularity","granulate","granulation","granule","granulocytic","granville","grape","grapefruit","grapeshot","grapevine","graph","grapheme","graphic","graphical","graphicness","graphics","graphite","graphologist","graphology","graphql","graphs","graphviz","grapnel","grapple","grappler","grappling","grasp","grasper","grasping","graspingness","grass","grasshopper","grassland","grassroots","grassy","grata","grate","grateful","gratefuller","gratefullest","gratefulness","grater","grates","gratia","gratiana","graticule","gratification","gratified","gratify","gratifying","grating","gratis","gratitude","gratuitous","gratuitousness","gratuity","gravamen","grave","gravedigger","gravel","graven","graveness","graver","graves","graveside","gravestone","graveyard","gravid","gravida","gravidness","gravimeter","gravimetric","gravitas","gravitate","gravitation","gravitational","graviton","gravity","gravy","gray","graybeard","grayce","grayish","grayness","grayscale","grayson","graze","grazer","grazia","grazing","grease","greasepaint","greaseproof","greaser","greasily","greasiness","greasy","great","greatcoat","greaten","greater","greatest","greathearted","greatly","greatness","grebe","grecian","greece","greed","greedily","greediness","greeds","greedy","greek","greeley","green","greenback","greenbelt","greenberg","greenblatt","greenbriar","greene","greenery","greenfeld","greenfield","greenfly","greengage","greengrocer","greengrocery","greenhorn","greenhouse","greening","greenish","greenland","greenmail","greenness","greenpeace","greenroom","greensboro","greensleeves","greensville","greensward","greentree","greenville","greenwich","greenwood","greer","greet","greeter","greeting","greetings","greets","greg","gregarious","gregariousness","gregg","greggory","gregoire","gregoor","gregor","gregorian","gregoriancalendar","gregorio","gregorius","gregory","gremlin","grenada","grenade","grenadian","grenadier","grenadine","grenadines","grendel","grenier","grenoble","grenville","grep","grepcode","grepl","gresham","greta","gretal","gretchen","grete","gretel","grethel","gretna","gretta","gretzky","grew","grey","greybeard","greyhound","greyness","grid","gridbagconstraints","gridbaglayout","griddata","gridded","griddle","griddlecake","gridiron","gridlayout","gridlock","gridpane","grids","gridview","gridviewcolumn","gridviewrow","gridx","gridy","grief","grieg","grier","grievance","grieve","griever","grieving","grievous","grievousness","griff","griffie","griffin","griffith","griffon","griffy","grill","grille","griller","grillwork","grim","grimace","grimacer","grimaldi","grime","grimes","griminess","grimm","grimmer","grimmest","grimness","grimy","grin","grinch","grind","grinder","grinding","grindstone","gringo","grinned","grinner","grinning","grip","gripe","griper","grippe","gripper","gripping","gris","griselda","grisliness","grisly","grissel","grist","gristle","gristliness","gristly","gristmill","griswold","grit","gritted","gritter","grittiness","gritting","gritty","griz","grizzle","grizzling","grizzly","grnewald","groan","groaner","groat","grocer","grocery","grog","groggily","grogginess","groggy","groin","grok","grokked","grokking","grommet","gromyko","groofs","groom","groomer","groomsman","groomsmen","groot","groove","groover","groovy","grope","groper","gropius","grosbeak","grosgrain","gross","grosset","grossman","grossness","grosvenor","grosz","grotesque","grotesqueness","grotius","groton","grotto","grottoes","grouch","grouchily","grouchiness","grouchy","ground","groundbreaking","grounded","grounder","groundhog","groundless","groundlessness","groundnut","groundsheet","groundskeepers","groundsman","groundswell","groundwater","groundwork","group","groupbox","groupby","grouped","grouper","groupid","groupie","grouping","grouplayout","groupname","groupon","groupposition","groups","grouse","grouser","grout","grouter","grove","grovel","groveler","grovelike","groveling","grover","grow","grower","growing","growingly","growl","growler","growling","growly","grown","grownup","grows","growth","growths","grp","grpc","grub","grubbed","grubber","grubbily","grubbiness","grubbing","grubby","grubstake","grudge","grudger","grudging","gruel","grueling","gruesome","gruesomeness","gruff","gruffness","grumble","grumbler","grumbling","grumman","grump","grumpily","grumpiness","grumpy","grundy","grunge","grungy","grunion","grunt","grunter","grus","grusky","gruyeres","gruyre","gryphon","gs","gsa","gsl","gsm","gson","gsp","gst","gstatic","gstreamer","gsub","gt","gte","gteborg","gtest","gtk","gtm","gu","guacamole","guadalajara","guadalcanal","guadalquivir","guadalupe","guadeloupe","guallatiri","gualterio","guam","guamanian","guangzhou","guanine","guano","guantanamo","guarani","guarantee","guaranteed","guaranteeing","guarantees","guarantor","guaranty","guard","guarded","guardedness","guarder","guardhouse","guardia","guardian","guardianship","guardrail","guardroom","guards","guardsman","guardsmen","guarnieri","guatemala","guatemalan","guava","guayaquil","gubernatorial","gucci","gudgeon","guelph","guendolen","guenevere","guenna","guenther","guernsey","guerra","guerrero","guerrilla","guess","guessable","guessed","guesser","guesses","guessing","guesstimate","guesswork","guest","guests","guevara","guff","guffaw","guggenheim","guglielma","guglielmo","guhleman","gui","guiana","guice","guid","guidance","guide","guidebook","guided","guideline","guidelines","guidepost","guider","guides","guido","guids","guilbert","guild","guilder","guildhall","guile","guileful","guileless","guilelessness","guillaume","guillema","guillemette","guillemot","guillermo","guillotine","guilt","guiltily","guiltiness","guiltless","guiltlessness","guilty","guinea","guinean","guinevere","guinna","guinness","guise","guitar","guitarist","guiyang","guizot","gujarat","gujarati","gujranwala","gulag","gulch","gulden","gulf","gull","gullah","gullet","gulley","gullibility","gullible","gulliver","gully","gulp","gum","gumbo","gumboil","gumboots","gumdrop","gummed","gumminess","gumming","gummy","gumption","gumshoe","gumshoeing","gumtree","gun","gunar","gunboat","gunderson","gunfight","gunfighter","gunfire","gunflint","gunfought","gunicorn","gunilla","gunk","gunky","gunman","gunmen","gunmetal","gunnar","gunned","gunnel","gunner","gunnery","gunning","gunny","gunnysack","gunpoint","gunpowder","gunrunner","gunrunning","guns","gunship","gunshot","gunsling","gunslinger","gunsmith","gunsmiths","guntar","gunter","gunther","gunwale","guofeng","guppy","gupta","gurgle","gurkha","gurney","guru","gus","gusella","gush","gusher","gushy","guss","gusset","gussi","gussie","gussy","gust","gusta","gustaf","gustafson","gustatory","gustav","gustave","gustavo","gustavus","gusted","gusti","gustie","gustily","gustiness","gusting","gusto","gustoes","gusts","gusty","gut","gutenberg","guthrey","guthrie","guthry","gutierrez","gutless","gutlessness","guts","gutser","gutsiness","gutsy","gutted","gutter","guttering","guttersnipe","gutting","guttural","gutturalness","gutty","guy","guyana","guyanese","guys","guzman","guzzle","guzzler","gv","gw","gwalior","gwen","gwendolen","gwendolin","gwendoline","gwendolyn","gweneth","gwenette","gwenneth","gwenni","gwennie","gwenny","gwenora","gwenore","gwt","gwyn","gwyneth","gwynne","gx","gy","gym","gymkhana","gymnasia","gymnasium","gymnast","gymnastic","gymnastically","gymnastics","gymnosperm","gynecologic","gynecological","gynecologist","gynecology","gyp","gypped","gypper","gypping","gypsite","gypster","gypsum","gypsy","gyrate","gyration","gyrator","gyrfalcon","gyro","gyrocompass","gyroscope","gyroscopic","gyve","gz","gzip","h","ha","haag","haas","habakkuk","habeas","haber","haberdasher","haberdashery","haberman","habib","habiliment","habit","habitability","habitable","habitableness","habitant","habitat","habitation","habitations","habits","habitu","habitual","habitualness","habituate","habituation","hacienda","hack","hackage","hacked","hacker","hackers","hackett","hacking","hackle","hackler","hackney","hacks","hacksaw","hackwork","hacky","had","hadamard","hadar","haddad","haddock","hades","hadj","hadji","hadlee","hadleigh","hadley","hadn","hadoop","hadria","hadrian","hadron","hadst","haemoglobin","haemophilia","haemorrhage","hafiz","hafnium","haft","hag","hagan","hagar","hagen","hager","haggai","haggard","haggardness","hagged","hagging","haggis","haggish","haggle","haggler","hagiographa","hagiographer","hagiography","hagstrom","hague","haha","hahn","hahnium","haifa","haiku","hail","hailee","hailer","hailey","hailstone","hailstorm","haily","haiphong","hair","hairball","hairbreadth","hairbreadths","hairbrush","haircare","haircloth","haircloths","haircut","haircutting","hairdo","hairdresser","hairdressing","hairdryer","hairiness","hairless","hairlessness","hairlike","hairline","hairnet","hairpiece","hairpin","hairsbreadth","hairsbreadths","hairsplitter","hairsplitting","hairspray","hairspring","hairstyle","hairstylist","hairy","haiti","haitian","hajj","hajjes","hajji","hake","hakeem","hakim","hakka","hakluyt","hal","halal","halalled","halalling","halberd","halcyon","haldane","hale","haleakala","haleigh","haler","halest","halette","haley","half","halfback","halfbreed","halfhearted","halfheartedness","halfpence","halfpenny","halfpennyworth","halftime","halftone","halfway","halfword","hali","halibut","halide","halie","halifax","halimeda","halite","halitoses","halitosis","hall","hallelujah","hallelujahs","halley","halli","halliard","hallie","hallinan","hallmark","hallo","halloo","hallow","halloween","hallowing","hallows","hallsy","hallucinate","hallucination","hallucinatory","hallucinogen","hallucinogenic","hallway","hally","halo","halocarbon","halogen","halogenated","halon","halpern","halsey","halsy","halt","halter","halting","halve","halves","halyard","ham","hamal","haman","hamburg","hamburger","hamcrest","hamel","hamey","hamhung","hamid","hamil","hamilcar","hamilton","hamiltonian","hamish","hamitic","haml","hamlen","hamlet","hamlin","hammad","hammarskjold","hammed","hammer","hammerer","hammerhead","hammering","hammerless","hammerlock","hammerstein","hammertoe","hammett","hamming","hammock","hammond","hammurabi","hammy","hamnet","hamper","hampered","hampshire","hampton","hamster","hamstring","hamstrung","hamsun","han","hana","hanan","hancock","hand","handbag","handbagged","handbagging","handball","handbarrow","handbasin","handbill","handbook","handbrake","handcar","handcart","handclasp","handcraft","handcuff","handcuffs","handed","handedness","handel","hander","handful","handgun","handhold","handicap","handicapped","handicapper","handicapping","handicraft","handicraftsman","handicraftsmen","handily","handiness","handiwork","handkerchief","handle","handleable","handlebar","handlebars","handlecallback","handlechange","handleclick","handled","handleerror","handlelaunchactivity","handlemessage","handlenonsuccessanddebuggernotification","handler","handlerequest","handlers","handles","handless","handlesubmit","handling","handmade","handmaid","handmaiden","handout","handover","handpick","handrail","hands","handsaw","handset","handshake","handshaker","handshaking","handsome","handsomely","handsomeness","handspike","handspring","handstand","handwork","handwoven","handwrite","handwriting","handwritten","handy","handyman","handymen","haney","hang","hangar","hangdog","hanged","hanger","hanging","hangman","hangmen","hangnail","hangout","hangover","hangs","hangul","hangup","hangzhou","hank","hankel","hanker","hankerer","hankering","hankie","hanky","hanna","hannah","hanni","hannibal","hannie","hanny","hanoi","hanover","hanoverian","hans","hansel","hansen","hansiain","hansom","hanson","hanuka","hanukkah","hanukkahs","hap","hapgood","haphazard","haphazardness","hapless","haplessness","haploid","happed","happen","happened","happening","happens","happenstance","happily","happiness","happing","happy","haproxy","hapsburg","harald","harangue","haranguer","harare","harass","harasser","harassment","harbert","harbin","harbinger","harbor","harborer","harcourt","hard","hardback","hardball","hardboard","hardboiled","hardbound","hardcode","hardcoded","hardcoding","hardcore","hardcover","harden","hardened","hardener","hardening","harder","hardest","hardhat","hardheaded","hardheadedness","hardhearted","hardheartedness","hardihood","hardily","hardin","hardiness","harding","hardliner","hardly","hardness","hardscrabble","hardshell","hardship","hardstand","hardtack","hardtop","hardware","hardwire","hardwood","hardworking","hardy","hare","harebell","harebrained","harelip","harelipped","harem","hargreaves","hark","harlan","harland","harlem","harlen","harlene","harlequin","harley","harli","harlie","harlin","harlot","harlotry","harlow","harm","harman","harmed","harmer","harmful","harmfulness","harmless","harmlessness","harmon","harmonia","harmonic","harmonica","harmonically","harmonics","harmonie","harmonious","harmoniousness","harmonium","harmonization","harmonizations","harmonize","harmonized","harmonizer","harmonizes","harmony","harness","harnessed","harnesser","harnesses","harold","haroun","harp","harper","harping","harpist","harpoon","harpooner","harpsichord","harpsichordist","harpy","harrell","harri","harridan","harrie","harrier","harriet","harriett","harrietta","harriette","harrington","harriot","harriott","harrisburg","harrison","harrisonburg","harrow","harrower","harrumph","harry","harsh","harshen","harshness","hart","harte","hartford","hartley","hartline","hartman","hartwell","harv","harvard","harvest","harvested","harvester","harvestman","harvey","harwell","harwilll","has","hasattr","hasbro","hasclass","hasfocus","hash","hashcode","hashed","hasheem","hasher","hashes","hashim","hashing","hashish","hashlib","hashmap","hashset","hashtable","hashtag","hashtags","hasidim","haskel","haskell","haskins","haslett","hasmany","hasn","hasnext","hasone","hasownproperty","hasp","hassle","hassock","hast","haste","hasten","hastener","hastie","hastily","hastiness","hastings","hasty","hasvalue","hat","hatch","hatchback","hatcheck","hatched","hatcher","hatchery","hatchet","hatching","hatchure","hatchway","hate","hateful","hatefulness","hater","hatfield","hathaway","hatless","hatred","hatstands","hatted","hatter","hatteras","hatti","hattie","hatting","hatty","hauberk","haugen","haughtily","haughtiness","haughty","haul","haulage","hauler","haunch","haunt","haunter","haunting","hauptmann","hausa","hausdorff","hauser","hauteur","havana","havarti","have","havel","haven","havent","haver","haversack","having","havoc","havocked","havocking","haw","hawaii","hawaiian","hawk","hawker","hawking","hawkins","hawkish","hawkishness","hawley","haws","hawser","hawthorn","hawthorne","hay","haycock","hayden","haydn","haydon","hayes","hayfield","hayley","hayloft","haymow","haynes","hayrick","hayride","hayseed","haystack","haywain","hayward","haywire","haywood","hayyim","hazard","hazardous","hazardousness","haze","hazel","hazelcast","hazelnut","hazer","hazily","haziness","hazing","hazlett","hazlitt","hazy","hb","hbase","hbm","hbo","hbox","hbs","hc","hd","hdc","hdd","hdf","hdfs","hdpi","hdqrs","hdr","hdtv","he","head","headache","headaches","headband","headboard","headcount","headdress","header","headers","headerstyle","headertemplate","headertext","headerview","headfirst","headgear","headhunt","headhunter","headhunting","headily","headiness","heading","headings","headlamp","headland","headless","headlessness","headlight","headline","headliner","headlines","headlock","headlong","headman","headmaster","headmastership","headmen","headmistress","headphone","headpiece","headpin","headquarter","headrest","headroom","heads","headscarf","headset","headship","headshrinker","headsman","headsmen","headstall","headstand","headstock","headstone","headstrong","headwaiter","headwall","headwater","headway","headwind","headword","heady","heal","healed","healer","heall","health","healthcare","healthful","healthfully","healthfulness","healthily","healthiness","healths","healthy","heap","hear","heard","hearer","hearing","hearken","hears","hearsay","hearse","hearst","heart","heartache","heartbeat","heartbreak","heartbreaking","heartbroke","heartbroken","heartburn","heartburning","hearted","hearten","heartening","heartfelt","hearth","hearthrug","hearths","hearthstone","heartily","heartiness","heartland","heartless","heartlessness","heartrending","hearts","heartsick","heartsickness","heartstrings","heartthrob","heartwarming","heartwood","hearty","heat","heated","heatedly","heater","heath","heathen","heathendom","heathenish","heathenism","heather","heathery","heathkit","heathland","heathman","heaths","heatmap","heatproof","heats","heatstroke","heatwave","heave","heaven","heavenliness","heavenly","heavenward","heaver","heaves","heavily","heaviness","heaviside","heavy","heavyhearted","heavyset","heavyweight","heb","hebe","hebephrenic","hebert","hebraic","hebraism","hebrew","hebrides","hecate","hecatomb","heck","heckle","heckler","hectare","hectic","hectically","hectogram","hectometer","hector","hecuba","heda","hedda","heddi","heddie","hedge","hedgehog","hedgehop","hedgehopped","hedgehopping","hedger","hedgerow","hedging","hedi","hedonism","hedonist","hedonistic","hedvig","hedvige","hedwig","hedwiga","hedy","heed","heeded","heedful","heedfulness","heeding","heedless","heedlessness","heehaw","heel","heeler","heeling","heelless","heep","hefner","heft","heftily","heftiness","hefty","hegel","hegelian","hegemonic","hegemony","hegira","heida","heidegger","heidelberg","heidi","heidie","heifer","heifetz","height","heighten","heights","heimlich","heindrick","heine","heineken","heinlein","heinous","heinousness","heinrich","heinrick","heinrik","heinz","heinze","heir","heiress","heirloom","heisenberg","heiser","heist","heister","hejira","helaina","helaine","held","helen","helena","helene","helenka","helga","helge","helical","helices","helicon","helicopter","heliocentric","heliography","heliopolis","helios","heliosphere","heliotrope","heliport","helium","helix","hell","hellbender","hellbent","hellcat","hellebore","hellene","hellenic","hellenism","hellenist","hellenistic","hellenization","hellenize","heller","hellespont","hellfire","hellhole","helli","hellion","hellish","hellishness","hellman","hello","helloworld","helluva","helm","helmed","helmet","helmholtz","helming","helms","helmsman","helmsmen","helmut","helot","help","helped","helper","helpers","helpful","helpfulness","helping","helpless","helplessness","helpline","helpmate","helpmeet","helps","helsa","helsinki","helve","helvetian","helvetica","helvetius","helyn","hem","hematite","hematologic","hematological","hematologist","hematology","heme","hemingway","hemisphere","hemispheric","hemispherical","hemline","hemlock","hemmed","hemmer","hemming","hemoglobin","hemolytic","hemophilia","hemophiliac","hemorrhage","hemorrhagic","hemorrhoid","hemostat","hemp","hemstitch","hen","hence","henceforth","henceforward","hench","henchman","henchmen","henderson","hendrerit","hendrick","hendrickson","hendrik","hendrika","hendrix","henge","henka","henley","henna","hennessey","henning","henpeck","henri","henrie","henrieta","henrietta","henriette","henrik","henry","henryetta","hensley","henson","hep","heparin","hepatic","hepatitides","hepatitis","hepburn","hephaestus","hephzibah","hepper","heppest","hepplewhite","heptagon","heptagonal","heptane","heptathlon","her","hera","heracles","heraclitus","herald","heralded","heraldic","heraldry","herb","herbaceous","herbage","herbal","herbalism","herbalist","herbart","herbert","herbicidal","herbicide","herbie","herbivore","herbivorous","herby","herc","herculaneum","hercule","herculean","herculie","herd","herder","herdsman","herdsmen","here","hereabout","hereafter","hereby","hereditary","heredity","hereford","herein","hereinafter","hereof","hereon","heres","heresy","heretic","heretical","hereto","heretofore","hereunder","hereunto","hereupon","herewith","heriberto","heritable","heritage","heritor","herkimer","herman","hermann","hermaphrodite","hermaphroditic","hermaphroditus","hermeneutic","hermeneutics","hermes","hermetic","hermetical","hermia","hermie","hermina","hermine","herminia","hermione","hermit","hermitage","hermite","hermitian","hermon","hermosa","hermosillo","hermy","hernandez","hernando","hernia","hernial","herniate","hero","herod","herodotus","heroes","heroic","heroically","heroics","heroin","heroine","heroism","heroku","herokuapp","herold","heron","herpes","herpetologist","herpetology","herr","herrera","herrick","herring","herringbone","herrington","hersch","herschel","herself","hersey","hersh","hershel","hershey","herta","hertha","hertz","hertzog","hertzsprung","herve","hervey","herzegovina","herzl","hes","hesiod","hesitance","hesitancy","hesitant","hesitantly","hesitate","hesitater","hesitating","hesitation","hesperus","hess","hesse","hessian","hester","hesther","hestia","heston","heterodox","heterodoxy","heterodyne","heterogamous","heterogamy","heterogeneity","heterogeneous","heterogeneousness","heterosexual","heterosexuality","heterostructure","heterozygous","hetti","hettie","hetty","heublein","heuristic","heuristically","heusen","heuser","hew","hewe","hewer","hewet","hewett","hewie","hewitt","hewlett","hex","hexachloride","hexadecimal","hexafluoride","hexagon","hexagonal","hexagram","hexameter","hexer","hey","heyday","heyerdahl","heywood","hezekiah","hf","hg","hgt","hgwy","hh","hhh","hhs","hi","hialeah","hiatus","hiawatha","hibachi","hibernate","hibernation","hibernator","hibernia","hibernian","hibiscus","hiccup","hick","hickey","hickman","hickok","hickory","hicks","hid","hidden","hiddenfield","hiddenfor","hide","hideaway","hidebound","hideous","hideousness","hideout","hider","hides","hiding","hie","hieing","hierarchal","hierarchic","hierarchical","hierarchy","hieratic","hieroglyph","hieroglyphic","hieroglyphics","hieroglyphs","hieronymus","hifalutin","higashiosaka","higgins","high","highball","highborn","highboy","highbrow","highchair","highcharts","higher","highest","highfalutin","highfield","highgui","highhanded","highhandedness","highish","highland","highlander","highlands","highlight","highlighted","highlighting","highlights","highly","highness","highpoint","highroad","highs","highscore","hight","hightail","highway","highwayman","highwaymen","hijack","hijacker","hike","hiker","hilario","hilarious","hilariousness","hilarity","hilarius","hilary","hilbert","hilda","hildagard","hildagarde","hilde","hildebrand","hildegaard","hildegarde","hildy","hill","hillard","hillary","hillbilly","hillcrest","hillel","hiller","hillery","hilliard","hilliary","hillie","hillier","hilliness","hillman","hillmen","hillock","hillsboro","hillsdale","hillside","hilltop","hillwalking","hilly","hillyer","hilt","hilton","him","himalaya","himalayan","himmler","himself","hinayana","hind","hinda","hindemith","hindenburg","hinder","hindered","hinderer","hindi","hindmost","hindquarter","hindrance","hindsight","hindu","hinduism","hindustan","hindustani","hines","hinge","hinger","hinkle","hinsdale","hinstance","hint","hinter","hinterland","hinton","hints","hinze","hip","hipbone","hipness","hipparchus","hipped","hipper","hippest","hippie","hipping","hippo","hippocrates","hippocratic","hippodrome","hippopotamus","hippy","hipster","hiragana","hiram","hire","hired","hireling","hirer","hirey","hiring","hirohito","hiroshi","hiroshima","hirsch","hirsute","hirsuteness","his","hispanic","hispaniola","hiss","hisser","hissing","hist","histamine","histidine","histochemic","histochemical","histochemistry","histogram","histological","histologist","histology","historian","historic","historical","historically","historicalness","historicism","historicist","historicity","historiographer","historiography","history","histrionic","histrionically","histrionics","hit","hitachi","hitch","hitchcock","hitcher","hitchhike","hither","hitherto","hitler","hitless","hits","hittable","hitter","hitting","hittite","hiv","hive","hk","hkey","hklm","hl","hloise","hls","hm","hmac","hmm","hmo","hmong","hms","hn","ho","hoar","hoard","hoarder","hoarding","hoarfrost","hoariness","hoarse","hoarseness","hoary","hoax","hoaxer","hob","hobard","hobart","hobbed","hobbes","hobbies","hobbing","hobbit","hobble","hobbler","hobbs","hobby","hobbyhorse","hobbyist","hobday","hobey","hobgoblin","hobie","hobnail","hobnob","hobnobbed","hobnobbing","hobo","hoboken","hoc","hock","hocker","hockey","hockney","hockshop","hod","hodge","hodgepodge","hodgkin","hoe","hoebart","hoecake","hoedown","hoeing","hoer","hoff","hoffa","hoffman","hofstadter","hog","hogan","hogarth","hogback","hogged","hogger","hogging","hoggish","hogshead","hogtie","hogtying","hogwash","hohenlohe","hohenstaufen","hohenzollern","hohhot","hoist","hoister","hoke","hokey","hokier","hokiest","hokkaido","hokum","hokusai","holbein","holbrook","holcomb","hold","holdall","holden","holder","holders","holding","holdout","holdover","holds","holdup","hole","holes","holey","holiday","holidaymaker","holidays","holier","holiness","holistic","holistically","holland","hollandaise","hollander","holler","hollerith","holley","holli","hollie","hollister","hollow","holloway","hollowness","hollowware","holly","hollyanne","hollyhock","hollywood","holm","holman","holmes","holmium","holo","holocaust","holocene","hologram","holograph","holographic","holographs","holography","holst","holstein","holster","holt","holy","holyoke","holystone","holzman","hom","homage","homager","hombre","homburg","home","homebody","homebound","homeboy","homebrew","homebuilder","homebuilding","homebuilt","homecoming","homecontroller","homegrown","homeland","homeless","homelessness","homelike","homeliness","homely","homemade","homemake","homemaker","homemaking","homeomorph","homeomorphic","homeomorphism","homeopath","homeopathic","homeopaths","homeopathy","homeostases","homeostasis","homeostatic","homeowner","homeownership","homepage","homer","homere","homeric","homerists","homeroom","homerus","homes","homeschooling","homescreen","homesick","homesickness","homespun","homestead","homesteader","homestretch","hometown","homeward","homework","homeworker","homey","homeyness","homicidal","homicide","homier","homiest","homiletic","homily","hominess","homing","hominid","hominy","homo","homogamy","homogenate","homogeneity","homogeneous","homogenization","homogenize","homogenizer","homograph","homographs","homological","homologous","homologue","homology","homomorphic","homomorphism","homonym","homophobia","homophobic","homophone","homopolymers","homosexual","homosexuality","homotopy","homozygous","hon","honcho","honda","hondo","honduran","honduras","hone","honecker","honest","honestly","honesty","honey","honeybee","honeycomb","honeydew","honeylocust","honeymoon","honeymooner","honeysuckle","honeywell","hong","honiara","honk","honker","honky","honolulu","honor","honorable","honorableness","honorables","honorablies","honorably","honorarily","honorarium","honorary","honored","honoree","honorer","honoria","honorific","honors","honshu","hooch","hood","hooded","hoodedness","hoodlum","hoodoo","hoodwink","hoodwinker","hooey","hoof","hoofer","hoofmark","hook","hookah","hookahs","hooke","hooked","hookedness","hooker","hookey","hooking","hooks","hookup","hookworm","hooky","hooligan","hooliganism","hoop","hooper","hoopla","hooray","hoosegow","hoosier","hoot","hootch","hootenanny","hooter","hoover","hooves","hop","hope","hoped","hopeful","hopefully","hopefulness","hopeless","hopelessness","hoper","hopes","hopewell","hopi","hoping","hopkins","hopkinsian","hopped","hopper","hopping","hoppled","hopples","hopscotch","horace","horacio","horatia","horatio","horatius","horde","horehound","horizon","horizontal","horizontalalign","horizontalalignment","horizontalcontentalignment","horizontally","horizontalscrollview","hormel","hormonal","hormone","hormuz","horn","hornbeam","hornblende","hornblower","horne","horned","hornedness","hornet","horniness","hornless","hornlike","hornpipe","horny","horologic","horological","horologist","horology","horoscope","horowitz","horrendous","horrible","horribleness","horribly","horrid","horridness","horrific","horrifically","horrify","horrifying","horror","hors","horse","horseback","horsedom","horseflesh","horsefly","horsehair","horsehide","horselaugh","horselaughs","horseless","horselike","horsely","horseman","horsemanship","horsemen","horseplay","horseplayer","horsepower","horseradish","horseshoe","horseshoeing","horseshoer","horsetail","horsewhip","horsewhipped","horsewhipping","horsewoman","horsewomen","horsey","horsier","horsiest","horsing","horst","hort","hortatory","horten","hortense","hortensia","horticultural","horticulture","horticulturist","horton","horus","hos","hosanna","hose","hosea","hosepipe","hosier","hosiery","hosp","hospice","hospitable","hospitably","hospital","hospitality","hospitalization","hospitalize","host","hostage","hostconfig","hosted","hostel","hosteler","hostelry","hostess","hostile","hostility","hosting","hostler","hostname","hosts","hot","hotbed","hotblooded","hotbox","hotcake","hotchpotch","hotel","hotelier","hotelman","hotels","hotfoot","hothead","hotheaded","hotheadedness","hothouse","hotmail","hotness","hotplate","hotpot","hotrod","hotshot","hotspot","hotted","hottentot","hotter","hottest","hotting","houdaille","houdini","hough","hound","hounder","hounding","hour","hourglass","houri","hourly","hours","house","houseboat","housebound","houseboy","housebreak","housebreaker","housebreaking","housebroke","housebroken","housebuilding","houseclean","housecleaning","housecoat","housefly","houseful","household","householder","househusband","housekeep","housekeeper","housekeeping","houselights","housemaid","houseman","housemen","housemother","housemoving","houseparent","houseplant","houser","houses","housetop","housewares","housewarming","housewife","housewifeliness","housewifely","housewives","housework","houseworker","housing","housman","houston","houyhnhnm","hov","hove","hovel","hover","hovercraft","hovered","hoverer","hovering","hovers","how","howard","howbeit","howdah","howdahs","howdy","howe","howell","however","howey","howie","howitzer","howl","howler","howrah","howsoever","howto","hoy","hoyden","hoydenish","hoyle","hoyt","hp","hpa","hpp","hq","hql","hr","href","hresult","hrh","hrothgar","hrs","hs","hsl","hsqldb","hst","hsv","ht","htaccess","htc","htdocs","hth","htm","html","htmlattributes","htmldocument","htmlelement","htmlentities","htmlhelper","htmlspecialchars","htmlstring","htmltextwriter","htmlunit","htons","hts","http","httpapplication","httpbackend","httpclient","httpcomponents","httpconnection","httpcontext","httpd","httpentity","httpget","httphandler","httpheader","httpheaders","httplib","httpmethod","httponly","httppost","httpprovider","httprequest","httprequestmessage","httpresponse","httpresponsemessage","httpresponseredirect","httpruntime","https","httpsecurity","httpserver","httpservlet","httpservletrequest","httpservletresponse","httpsession","httpstatus","httpstatuscode","httpurlconnection","httputility","httpwebrequest","httpwebresponse","hu","huang","huarache","huawei","hub","hubba","hubbard","hubble","hubbub","hubby","hubcap","hube","huber","hubert","huberto","hubey","hubie","hubris","hubs","huck","huckleberry","huckster","hud","huddersfield","huddle","huddler","hudson","hue","huerta","huey","huff","huffily","huffiness","huffman","huffy","hug","huge","hugely","hugeness","hugged","hugger","hugging","huggins","hugh","hughie","hugibert","hugo","huguenot","hugues","huh","huhs","hui","huitzilopitchli","hula","hulda","hulk","hull","hullabaloo","huller","hulling","hullo","hum","human","humane","humaneness","humaner","humanest","humanism","humanist","humanistic","humanitarian","humanitarianism","humanity","humanization","humanize","humanized","humanizer","humanizes","humanizing","humankind","humanness","humannesses","humanoid","humans","humbert","humberto","humble","humbleness","humbly","humboldt","humbug","humbugged","humbugging","humdinger","humdrum","hume","humeral","humeri","humerus","humfrey","humfrid","humfried","humid","humidification","humidifier","humidify","humidistat","humidity","humidor","humiliate","humiliating","humiliation","humility","hummed","hummel","hummer","humming","hummingbird","hummock","hummocky","hummus","humongous","humor","humored","humorist","humorless","humorlessness","humorous","humorousness","hump","humpback","humph","humphrey","humphs","humpty","humus","humvee","hun","hunch","hunchback","hundred","hundredfold","hundreds","hundredths","hundredweight","hunfredo","hung","hungarian","hungary","hunger","hungover","hungrily","hungriness","hungry","hunk","hunker","hunky","hunt","hunter","hunting","huntington","huntlee","huntley","huntress","huntsman","huntsmen","huntsville","hurdle","hurdler","hurl","hurlee","hurleigh","hurler","hurley","hurling","huron","hurray","hurricane","hurried","hurriedness","hurry","hurst","hurt","hurter","hurtful","hurtfulness","hurting","hurtle","hurts","hurwitz","hus","husain","husband","husbander","husbandman","husbandmen","husbandry","husein","hush","husk","husker","huskily","huskiness","husking","husky","hussar","hussein","husserl","hussy","hustings","hustle","hustler","huston","hut","hutch","hutchins","hutchinson","hutchison","hutted","hutting","hutton","hutu","huxley","huygens","huzzah","huzzahs","hv","hw","hwnd","hwy","hx","hy","hyacinth","hyacintha","hyacinthe","hyacinthia","hyacinthie","hyacinths","hyades","hyaena","hyannis","hyatt","hybrid","hybridism","hybridization","hybridize","hyde","hyderabad","hydra","hydrangea","hydrant","hydrate","hydration","hydraulic","hydraulically","hydraulicked","hydraulicking","hydraulics","hydrazine","hydride","hydro","hydrocarbon","hydrocephali","hydrocephalus","hydrochemistry","hydrochloric","hydrochloride","hydrodynamic","hydrodynamical","hydrodynamics","hydroelectric","hydroelectrically","hydroelectricity","hydrofluoric","hydrofoil","hydrogen","hydrogenate","hydrogenation","hydrogenations","hydrogenous","hydrological","hydrologist","hydrology","hydrolysis","hydrolyze","hydrolyzed","hydromagnetic","hydromechanics","hydrometer","hydrometry","hydrophilic","hydrophobia","hydrophobic","hydrophone","hydroplane","hydroponic","hydroponics","hydrosphere","hydrostatic","hydrostatics","hydrotherapy","hydrothermal","hydrous","hydroxide","hydroxy","hydroxyl","hydroxylate","hydroxyzine","hyena","hygiene","hygienic","hygienically","hygienics","hygienist","hygrometer","hygroscopic","hying","hyman","hymen","hymeneal","hymie","hymn","hymnal","hymnbook","hynda","hype","hyper","hyperactive","hyperactivity","hyperbola","hyperbole","hyperbolic","hyperbolically","hyperboloid","hyperboloidal","hypercellularity","hypercritical","hypercube","hyperemia","hyperemic","hyperfine","hypergamous","hypergamy","hyperglycemia","hyperinflation","hyperion","hyperledger","hyperlink","hyperlinks","hypermarket","hypermedia","hyperplane","hyperplasia","hypersensitive","hypersensitiveness","hypersensitivity","hypersonic","hyperspace","hypersphere","hypertension","hypertensive","hypertext","hyperthyroid","hyperthyroidism","hypertrophy","hypervelocity","hyperventilate","hyperventilation","hyphen","hyphenate","hyphenated","hyphenation","hyphens","hypnoses","hypnosis","hypnotherapy","hypnotic","hypnotically","hypnotism","hypnotist","hypnotize","hypo","hypoactive","hypoallergenic","hypocellularity","hypochondria","hypochondriac","hypocrisy","hypocrite","hypocritical","hypodermic","hypoglycemia","hypoglycemic","hypophyseal","hypophysectomized","hypotenuse","hypothalami","hypothalamic","hypothalamically","hypothalamus","hypothermia","hypotheses","hypothesis","hypothesize","hypothesizer","hypothetic","hypothetical","hypothyroid","hypothyroidism","hypoxia","hyssop","hysterectomy","hysteresis","hysteria","hysteric","hysterical","hyundai","hz","i","ia","iaccoca","iactionresult","iago","iain","iam","iamb","iambi","iambic","iambus","ian","ianthe","iasyncresult","ib","ibaction","ibadan","ibb","ibbie","ibby","iberia","iberian","ibero","ibex","ibid","ibidem","ibinder","ibis","ibm","ibo","iboutlet","ibrahim","ibsen","ibuprofen","ic","icarus","icbm","icc","ice","iceberg","iceboat","icebound","icebox","icebreaker","icecap","iceland","icelander","icelandic","iceman","icemen","icepack","icepick","ichabod","ichneumon","ichthyologist","ichthyology","icicle","icily","iciness","icing","icky","icloud","icmp","ico","icollection","icommand","icon","iconic","iconoclasm","iconoclast","iconoclastic","iconography","icons","iconv","icosahedra","icosahedral","icosahedron","ics","ictus","icu","icy","id","ida","idaho","idahoan","idahoes","idalia","idalina","idaline","idc","ide","idea","ideal","idealism","idealist","idealistic","idealistically","idealization","idealize","idealized","idealizer","ideally","idealogical","ideas","ideate","ideation","idell","idelle","idem","idempotent","ident","identical","identicalness","identifiability","identifiable","identifiably","identification","identified","identifier","identifiers","identifies","identify","identifying","identities","identity","identitymodel","identityserver","ideogram","ideograph","ideographic","ideographs","ideological","ideologist","ideologue","ideology","ideone","ides","idette","idf","idictionary","idiocy","idiolect","idiom","idiomatic","idiomatically","idiopathic","idiosyncrasy","idiosyncratic","idiosyncratically","idiot","idiotic","idiotically","idisposable","idl","idle","idleness","idler","idol","idolater","idolatress","idolatrous","idolatry","idolization","idolize","idolized","idolizer","idp","ids","idt","iduser","idx","idyll","idyllic","idyllically","ie","ieee","ienumerable","ienumerator","ietf","ieyasu","if","iface","ifdef","ifelse","iferror","iffiness","iffy","ifmodule","ifndef","ifni","ifnull","ifoo","iframe","iframes","ifs","ifstream","ig","iggie","iggy","igloo","ignace","ignacio","ignacius","ignatius","ignaz","ignazio","igneous","ignitable","ignite","igniter","ignition","ignoble","ignobleness","ignobly","ignominious","ignominy","ignorable","ignoramus","ignorance","ignorant","ignorantness","ignore","ignorecase","ignored","ignorer","ignores","ignoring","igor","igraph","iguana","iguassu","ih","ii","iid","iif","iii","iirc","iis","ij","ijsselmeer","ik","ike","ikey","ikhnaton","ikon","il","ila","ilaire","ilario","ilea","ileana","ileane","ileitides","ileitis","ilene","ileum","ilia","iliac","iliad","ilise","ilist","ilium","ilk","ilka","ill","illa","illegal","illegalaccessexception","illegalargumentexception","illegality","illegalstateexception","illegibility","illegible","illegibly","illegitimacy","illegitimate","illiberal","illiberality","illicit","illicitness","illimitable","illimitableness","illinois","illinoisan","illiquid","illiteracy","illiterate","illiterateness","illness","illogic","illogical","illogicality","illogicalness","illume","illuminate","illuminati","illuminating","illuminatingly","illumination","illumine","illus","illusion","illusionary","illusionist","illusive","illusiveness","illusoriness","illusory","illustrate","illustrated","illustrates","illustration","illustrative","illustrator","illustrious","illustriousness","illy","iloc","ilogger","ilona","ilsa","ilse","ilysa","ilyse","ilyssa","ilyushin","im","imag","image","imageadapter","imagearray","imagebutton","imagedata","imagefield","imagefile","imageformat","imageicon","imageid","imageio","imagelist","imageloader","imagemagick","imagen","imagename","imagenamed","imagepath","imagepicker","imagery","images","imageshack","imagesize","imagesource","imageuri","imageurl","imageview","imagewidth","imagick","imaginable","imaginableness","imaginably","imaginariness","imaginary","imagination","imaginative","imaginativeness","imagine","imagined","imaginer","imaging","imago","imagoes","imam","imap","imbalance","imbecile","imbecilic","imbecility","imbibe","imbiber","imbrication","imbrium","imbroglio","imbruing","imbue","imdb","ime","imei","imelda","imessage","imf","img","imgdata","imgproc","imgs","imgur","imgurl","imgview","imho","imitable","imitate","imitation","imitative","imitativeness","imitator","imm","immaculate","immaculateness","immanence","immanency","immanent","immanuel","immaterial","immateriality","immaterialness","immature","immatureness","immaturity","immeasurable","immeasurableness","immeasurably","immediacy","immediate","immediately","immediateness","immemorial","immense","immenseness","immensity","immerse","immersible","immersion","immigrant","immigrate","immigration","imminence","imminent","imminentness","immobile","immobility","immobilization","immobilize","immoderate","immoderateness","immoderation","immodest","immodesty","immolate","immolation","immoral","immorality","immortal","immortality","immortalize","immortalized","immovability","immovable","immovableness","immovably","immune","immunity","immunization","immunize","immunoassay","immunodeficiency","immunodeficient","immunologic","immunological","immunologist","immunology","immure","immutability","immutable","immutableness","immutably","imnsho","imo","imogen","imogene","imojean","imp","impact","impaction","impactor","impair","impaired","impairer","impairment","impala","impale","impalement","impaler","impalpable","impalpably","impanel","impart","impartation","impartial","impartiality","impassable","impassableness","impassably","impasse","impassibility","impassible","impassibly","impassion","impassioned","impassive","impassiveness","impassivity","impasto","impatience","impatiens","impatient","impeach","impeachable","impeacher","impeachment","impeccability","impeccable","impeccably","impecunious","impecuniousness","imped","impedance","impede","impeded","impeder","impediment","impedimenta","impel","impelled","impeller","impelling","impend","impenetrability","impenetrable","impenetrableness","impenetrably","impenitence","impenitent","imperative","imperativeness","imperceivable","imperceptibility","imperceptible","imperceptibly","imperceptive","imperdiet","imperf","imperfect","imperfectability","imperfection","imperfectness","imperial","imperialism","imperialist","imperialistic","imperialistically","imperil","imperilment","imperious","imperiousness","imperishable","imperishableness","imperishably","impermanence","impermanent","impermeability","impermeable","impermeableness","impermeably","impermissible","impersonal","impersonality","impersonalized","impersonate","impersonation","impersonator","impertinence","impertinent","imperturbability","imperturbable","imperturbably","impervious","imperviousness","impetigo","impetuosity","impetuous","impetuousness","impetus","impiety","imping","impinge","impingement","impious","impiousness","impish","impishness","impl","implacability","implacable","implacableness","implacably","implant","implantation","implanter","implausibility","implausible","implausibly","implement","implementability","implementable","implementation","implementations","implemented","implementer","implementing","implementor","implements","implicant","implicate","implication","implications","implicative","implicit","implicitly","implicitness","implied","implies","implode","implore","imploring","implosion","implosive","imply","implying","impolite","impoliteness","impolitic","impoliticness","imponderable","imponderableness","import","importance","important","importantly","importation","imported","importer","importerror","importing","importlib","imports","importunate","importunateness","importune","importuner","importunity","imposable","impose","imposer","imposing","imposingly","imposition","impossibility","impossible","impossibleness","impossibly","impost","imposter","impostor","imposture","impotence","impotency","impotent","impound","impoundments","impoverish","impoverisher","impoverishment","impracticable","impracticableness","impracticably","impractical","impracticality","impracticalness","imprecate","imprecation","imprecise","impreciseness","imprecision","impregnability","impregnable","impregnableness","impregnably","impregnate","impregnation","impresario","impress","impressed","impresser","impressibility","impressible","impression","impressionability","impressionable","impressionableness","impressionism","impressionist","impressionistic","impressions","impressive","impressiveness","impressment","imprimatur","imprint","imprinter","imprinting","imprison","imprisonment","improbability","improbable","improbableness","improbably","impromptu","improper","improperness","impropitious","impropriety","improve","improved","improvement","improvements","improver","improves","improvidence","improvident","improving","improvisation","improvisational","improvisatory","improvise","improviser","imprudence","imprudent","impudence","impudent","impugn","impugner","impulse","impulsion","impulsive","impulsiveness","impunity","impure","impureness","impurity","imputation","impute","imread","imshow","imus","in","ina","inaccessible","inaccurate","inaction","inactive","inadequate","inadvertence","inadvertent","inalienability","inalienably","inalterable","inalterableness","inamorata","inane","inanimate","inanimateness","inanity","inappeasable","inappropriate","inarray","inarticulate","inasmuch","inaugural","inaugurate","inauguration","inauthenticity","inbound","inbox","inbred","inbreed","inbuilt","inc","inca","incalculableness","incalculably","incandescence","incandescent","incant","incantation","incantatory","incapable","incapacitate","incapacitation","incarcerate","incarceration","incarnadine","incarnate","incarnation","incase","incendiary","incense","incentive","incentively","incentives","incept","inception","inceptive","inceptor","incessant","incest","incestuous","incestuousness","inch","inches","inchoate","inchon","inchworm","incidence","incident","incidental","incidentally","incidents","incididunt","incinerate","incineration","incinerator","incipience","incipiency","incipient","incise","incision","incisive","incisiveness","incisor","incite","incitement","inciter","incl","inclination","incline","inclined","incliner","inclining","include","included","includes","including","inclusion","inclusive","inclusiveness","incognito","incoherency","income","incoming","incommode","incommunicado","incomparable","incompatible","incompetent","incomplete","inconceivability","inconceivable","inconceivableness","incondensable","incongruousness","inconsiderable","inconsiderableness","inconsistence","inconsistent","inconsolable","inconsolableness","inconsolably","incontestability","incontestably","incontrovertibly","inconvenience","inconvenient","inconvertibility","inconvertible","incorporable","incorporate","incorporated","incorrect","incorrectly","incorrigibility","incorrigible","incorrigibleness","incorrigibly","incorruptible","incorruptibly","incr","increase","increased","increaser","increases","increasing","increasingly","incredible","incredibleness","incredibly","increment","incremental","incrementation","incremented","incrementing","increments","incriminate","incrimination","incriminatory","incrustation","incubate","incubation","incubator","incubus","inculcate","inculcation","inculpate","incumbency","incumbent","incunabula","incunabulum","incurable","incurious","incursion","ind","indebted","indebtedness","indeed","indefatigable","indefatigableness","indefatigably","indefeasible","indefeasibly","indefinable","indefinableness","indefinite","indefinitely","indelible","indelibly","indemnification","indemnify","indemnity","indent","indentation","indented","indenter","indention","indenture","independence","independent","independently","indescribable","indescribableness","indescribably","indestructible","indestructibleness","indestructibly","indeterminably","indeterminacy","indeterminate","indeterminism","index","indexation","indexed","indexeddb","indexer","indexerror","indexes","indexing","indexof","indexpath","india","indian","indiana","indianan","indianapolis","indianian","indicant","indicate","indicated","indicates","indicating","indication","indicative","indicator","indicators","indices","indict","indicter","indictment","indifference","indigence","indigenous","indigenousness","indigent","indigestible","indignant","indignation","indigo","indira","indirect","indirection","indirectly","indiscreet","indiscriminate","indiscriminateness","indispensability","indispensable","indispensableness","indispensably","indisputable","indisputableness","indissoluble","indissolubleness","indissolubly","indistinguishable","indistinguishableness","indite","indium","individual","individualism","individualist","individualistic","individualistically","individuality","individualization","individualize","individualized","individualizer","individualizes","individualizing","individually","individuals","individuate","individuation","indivisible","indivisibleness","indivisibly","indochina","indochinese","indoctrinate","indoctrination","indoctrinator","indolence","indolent","indomitable","indomitableness","indomitably","indonesia","indonesian","indoor","indore","indra","indubitable","indubitableness","indubitably","induce","induced","inducement","inducer","inducible","induct","inductance","inductee","induction","inductive","inductiveness","inductor","indulge","indulgence","indulgent","indulger","indus","industrial","industrialism","industrialist","industrialization","industrialize","industrialized","industries","industrious","industriousness","industry","indx","indy","inebriate","inebriation","inedible","ineducable","ineffability","ineffable","ineffableness","ineffably","inefficient","inelastic","ineligibly","ineluctable","ineluctably","inept","ineptitude","ineptness","inequality","inequivalent","inerrant","inert","inertia","inertial","inertness","ines","inescapably","inesita","inessa","inestimably","inet","inetaddress","inetpub","inevitability","inevitable","inevitableness","inevitably","inexact","inexhaustible","inexhaustibleness","inexhaustibly","inexorability","inexorable","inexorableness","inexorably","inexpedience","inexplicable","inexplicableness","inexplicably","inexplicit","inexpressibility","inexpressible","inexpressibleness","inextricably","inez","inf","infamous","infamy","infancy","infant","infanticide","infantile","infantry","infantryman","infantrymen","infarct","infarction","infatuate","infatuation","infauna","infect","infected","infecter","infection","infectious","infectiousness","infective","infer","inference","inferential","inferior","inferiority","infernal","inferno","inferred","inferring","infertile","infest","infestation","infester","infidel","infighting","infile","infill","infiltrate","infiltrator","infinispan","infinite","infinitely","infinitesimal","infinitival","infinitive","infinitude","infinitum","infinity","infirmary","infirmity","infix","inflammable","inflammableness","inflammation","inflammatory","inflatable","inflate","inflated","inflateexception","inflater","inflating","inflation","inflationary","inflect","inflection","inflectional","inflexible","inflexibleness","inflexion","inflict","inflicter","infliction","inflow","influence","influenced","influencer","influent","influential","influenza","info","infobox","infocenter","infomercial","inform","informatica","informatics","information","informational","informations","informative","informativeness","informatory","informed","informer","infos","infotainment","infowindow","infra","infrared","infrasonic","infrastructural","infrastructure","infrequence","infringe","infringement","infringer","infuriate","infuriating","infuriation","infuse","infuser","infusible","infusibleness","ing","inga","ingaberg","ingaborg","ingamar","ingar","inge","ingeberg","ingeborg","ingelbert","ingemar","ingenious","ingeniousness","ingenuity","ingenuous","ingenuousness","inger","ingersoll","ingest","ingestible","ingestion","inglebert","inglenook","inglewood","inglis","ingmar","ingnue","ingoing","ingot","ingra","ingrained","ingram","ingrate","ingratiate","ingratiating","ingratiation","ingredient","ingredients","ingres","ingress","ingression","ingrid","ingrim","ingrown","inguinal","ingunna","inhabit","inhabitable","inhabitance","inhabited","inhabiter","inhalant","inhalation","inhalator","inhale","inhere","inherent","inherently","inherit","inheritable","inheritableness","inheritance","inherited","inheriting","inheritor","inheritress","inheritrix","inherits","inhibit","inhibited","inhibiter","inhibition","inhibitor","inhibitory","inhomogeneous","inhospitable","inhospitableness","inhospitality","ini","inigo","inimical","inimitable","inimitableness","inimitably","inion","iniquitous","iniquitousness","iniquity","init","initandlisten","initial","initialcontext","initialer","initialisation","initialise","initialised","initializable","initialization","initializations","initialize","initializecomponent","initialized","initializer","initializers","initializes","initializing","initially","initials","initialstate","initiate","initiated","initiates","initiating","initiation","initiative","initiator","initiatory","initmap","initwithdata","initwithframe","initwithnibname","initwithstyle","initwithtitle","inject","injectable","injected","injecting","injection","injections","injector","injunctive","injure","injured","injurer","injurious","injuriousness","ink","inkblot","inker","inkiness","inkling","inkscape","inkstand","inkwell","inky","inland","inlander","inlay","inletting","inline","inlined","inlining","inly","inmost","inn","inna","innards","innate","innateness","inner","innerexception","innerheight","innerhtml","innermost","innersole","innerspring","innertext","innervate","innervation","innerwidth","inning","innis","innkeeper","innocence","innocent","innocuous","innocuousness","innodb","innovate","innovation","innovative","innovator","innovatory","innsbruck","innuendo","innumerability","innumerable","innumerableness","innumerably","innumerate","inoculate","inoculation","inoculative","inode","inoffensive","inonu","inopportune","inopportuneness","inorder","inordinate","inordinateness","inorganic","inotifypropertychanged","inout","inp","inpatient","inplace","input","inputarray","inputbox","inputdata","inputfield","inputfile","inputid","inputline","inputmethodmanager","inputs","inputstream","inputstreamreader","inputstring","inputted","inputtext","inputting","inputtype","inputvalue","inquire","inquirer","inquiring","inquiry","inquisition","inquisitional","inquisitive","inquisitiveness","inquisitor","inquisitorial","inri","inrush","ins","insalubrious","insamplesize","insane","insanitary","insatiability","insatiable","insatiableness","insatiably","inscribe","inscription","inscrutability","inscrutable","inscrutableness","inscrutably","inseam","insecticidal","insecticide","insectivore","insectivorous","insecure","insecureness","inseminate","insemination","insensate","insensateness","insensible","insensitive","insentient","inseparable","insert","insertafter","insertbefore","insertcell","inserted","inserter","inserting","insertion","inserts","inset","insets","insetting","inshore","inside","insider","insidious","insidiousness","insight","insightful","insights","insigne","insignia","insignificant","insinuate","insinuating","insinuation","insinuator","insipid","insipidity","insist","insistence","insistent","insisting","insociable","insofar","insole","insolence","insolent","insoluble","insolubleness","insolubly","insomnia","insomniac","insomuch","insouciance","insouciant","inspect","inspecting","inspection","inspective","inspector","inspectorate","inspiration","inspirational","inspire","inspired","inspirer","inspiring","inspirit","inst","instagram","install","installable","installation","installations","installed","installer","installers","installing","installment","installs","instance","instanceid","instanceof","instances","instant","instantaneous","instantaneousness","instantiate","instantiated","instantiates","instantiateviewcontrollerwithidentifier","instantiating","instantiation","instantly","instate","instead","instigate","instigation","instigator","instillation","instinct","instinctive","instinctual","institute","instituter","institutes","institution","institutional","institutionalism","institutionalist","institutionalization","institutionalize","institutions","institutor","instr","instream","instruct","instructed","instruction","instructional","instructions","instructive","instructiveness","instructor","instrument","instrumental","instrumentalist","instrumentality","instrumentation","instruments","insubordinate","insubstantial","insufferable","insufferably","insufficient","insular","insularity","insulate","insulated","insulation","insulator","insulin","insult","insulter","insulting","insuperable","insuperably","insupportable","insupportableness","insurance","insure","insured","insurer","insurgence","insurgency","insurgent","insurmountably","insurrection","insurrectionist","int","intact","intactness","intaglio","intake","intangible","intarray","integer","integerfield","integers","integrability","integrable","integral","integrand","integrate","integrated","integrates","integrating","integration","integrative","integrator","integrity","integument","intel","intellect","intellective","intellectual","intellectualism","intellectuality","intellectualize","intellectualness","intelligence","intelligencer","intelligent","intelligentsia","intelligibilities","intelligibility","intelligible","intelligibleness","intelligibly","intellij","intellisense","intelsat","intemperate","intend","intendant","intended","intendedness","intender","intensification","intensifier","intensify","intensional","intensity","intensive","intensiveness","intent","intentfilter","intention","intentional","intentionality","intentionally","intentions","intentness","intents","intentservice","inter","interact","interacting","interaction","interactions","interactive","interactively","interactivity","interacts","interaxial","interbank","interbred","interbreed","intercalate","intercalation","intercase","intercaste","intercede","interceder","intercensal","intercept","interception","interceptor","interceptors","intercession","intercessor","intercessory","interchange","interchangeability","interchangeable","interchangeableness","interchangeably","interchanger","intercity","interclass","intercohort","intercollegiate","intercom","intercommunicate","intercommunication","interconnect","interconnected","interconnectedness","interconnection","interconnectivity","intercontinental","interconversion","intercorrelated","intercourse","interdata","interdenominational","interdepartmental","interdependence","interdependency","interdependent","interdict","interdiction","interdisciplinary","interdum","interest","interested","interesting","interestingly","interestingness","interests","interface","interfaces","interfacing","interfaith","interfere","interference","interferer","interfering","interferometer","interferometric","interferometry","interferon","interfile","intergalactic","intergeneration","intergenerational","interglacial","intergovernmental","intergroup","interim","interindex","interindustry","interior","interj","interject","interjection","interjectional","interlace","interlard","interlayer","interleave","interleukin","interlibrary","interline","interlinear","interlingua","interlingual","interlining","interlink","interlisp","interlobular","interlock","interlocker","interlocutor","interlocutory","interlope","interloper","interlude","intermarriage","intermarry","intermediary","intermediate","intermediateness","intermediates","intermediation","interment","intermeshed","intermetrics","intermezzi","intermezzo","interminably","intermingle","intermission","intermittent","intermix","intermodule","intermolecular","intern","internal","internaldofilter","internalization","internalize","internally","internals","international","internationale","internationalism","internationalist","internationality","internationalization","internationalize","interne","internecine","internee","internet","internetwork","internist","internment","internship","internuclear","interocular","interoffice","interop","interoperability","interopservices","interp","interpenetrates","interpersonal","interplanetary","interplay","interpol","interpolate","interpolated","interpolation","interpose","interposer","interposition","interpret","interpretable","interpretation","interpretative","interpreted","interpreter","interpreting","interpretive","interpretor","interprets","interprocess","interprocessor","interquartile","interracial","interred","interregional","interregnum","interrelate","interrelated","interrelatedness","interrelation","interrelationship","interring","interrogate","interrogation","interrogative","interrogator","interrogatory","interrupt","interrupted","interruptedexception","interrupter","interruptibility","interruptible","interruption","interrupts","interscholastic","intersect","intersection","intersects","intersession","interspecies","intersperse","interspersion","interstage","interstate","interstellar","interstice","interstitial","intersurvey","intertask","intertwine","interurban","interval","intervals","intervene","intervener","intervenor","intervention","interventionism","interventionist","interview","interviewed","interviewee","interviewer","interviewing","interviews","intervocalic","interweave","interwove","interwoven","intestacy","intestinal","intestine","inti","intifada","intimacy","intimal","intimate","intimateness","intimater","intimation","intimidate","intimidating","intimidation","intl","into","intolerable","intolerableness","intolerant","intonate","intonation","intoxicant","intoxicate","intoxicated","intoxication","intptr","intra","intracellular","intracity","intraclass","intracohort","intractability","intractable","intractableness","intradepartmental","intrafamily","intragenerational","intraindustry","intraline","intrametropolitan","intramural","intramuscular","intranasal","intranet","intransigence","intransigent","intransitive","intraoffice","intraprocess","intrapulmonary","intraregional","intrasectoral","intrastate","intratissue","intrauterine","intravenous","intrepid","intrepidity","intrepidness","intricacy","intricate","intricateness","intrigue","intriguer","intriguing","intrinsic","intrinsically","intro","introduce","introduced","introducer","introduces","introducing","introduction","introductory","introit","introject","introspect","introspection","introspective","introspectiveness","introversion","introvert","intrude","intruder","intrusion","intrusive","intrusiveness","ints","intubate","intubation","intuit","intuition","intuitionist","intuitive","intuitiveness","intval","intvalue","inuit","inundate","inundation","inure","inv","invade","invader","invalid","invalidate","invalidated","invalidism","invalidoperationexception","invariable","invariant","invariantculture","invasion","invasive","invective","invectiveness","inveigh","inveigher","inveighs","inveigle","inveigler","invent","invented","invention","inventive","inventiveness","inventor","inventory","inverness","inverse","inversion","invert","inverted","inverter","invertible","invest","invested","investigate","investigating","investigation","investigator","investigatory","investing","investiture","investment","investments","investor","investors","inveteracy","inveterate","inviability","invidious","invidiousness","invigilate","invigilator","invigorate","invigorating","invigoration","invigorations","invincibility","invincible","invincibleness","invincibly","inviolability","inviolably","inviolate","inviolateness","inviscid","invisible","invisibleness","invitation","invitational","invite","invited","invitee","inviter","inviting","invocable","invocablehandlermethod","invocate","invocation","invocations","invocationtargetexception","invoice","invoices","invoke","invoked","invokelater","invokemethod","invokenative","invoker","invokes","invoking","involuntariness","involuntary","involute","involution","involutorial","involve","involved","involvedly","involvement","involver","involves","involving","invulnerability","invulnerableness","inward","inwardness","io","ioc","ioctl","iodate","iodation","iodide","iodinate","iodine","iodize","ioe","ioerror","ioexception","iolande","iolanthe","ion","iona","ionesco","ionian","ionic","ionicframework","ionization","ionize","ionized","ionizer","ionizes","ionizing","ionosphere","ionospheric","iorgo","iormina","ios","iosep","iostream","iot","iota","iou","ioutils","iowa","iowan","ip","ipa","ipad","ipaddress","ipc","ipecac","ipendpoint","iphigenia","iphone","iphoneos","iphones","iphonesimulator","ipn","ipo","ipod","ips","ipso","ipsum","ipswich","iptables","ipv","ipython","iq","iqbal","iqueryable","iquitos","ir","ira","iran","iranian","iraq","iraqi","irascibility","irascible","irascibly","irate","irateness","irb","irc","ire","ireful","ireland","irena","irene","irenic","irepository","irides","iridescence","iridescent","iridium","irids","irina","iris","irish","irishman","irishmen","irishwoman","irishwomen","irita","irk","irksome","irksomeness","irkutsk","irma","iron","ironclad","ironer","ironic","ironical","ironicalness","ironing","ironmonger","ironmongery","ironpython","ironside","ironstone","ironware","ironwood","ironwork","ironworker","irony","iroquoian","iroquois","irow","irq","irradiate","irradiation","irrational","irrationality","irrationalness","irrawaddy","irreclaimable","irreconcilability","irreconcilable","irreconcilableness","irreconcilably","irrecoverable","irrecoverableness","irrecoverably","irredeemable","irredeemably","irredentism","irredentist","irreducibility","irreducible","irreducibly","irreflexive","irrefutable","irrefutably","irregardless","irregular","irregularity","irrelevance","irrelevancy","irrelevant","irreligious","irremediable","irremediableness","irremediably","irremovable","irreparable","irreparableness","irreparably","irreplaceable","irrepressible","irrepressibly","irreproachable","irreproachableness","irreproachably","irreproducibility","irreproducible","irresistibility","irresistible","irresistibleness","irresistibly","irresolute","irresoluteness","irresolution","irresolvable","irrespective","irresponsibility","irresponsible","irresponsibleness","irresponsibly","irretrievable","irretrievably","irreverence","irreverent","irreversible","irreversibly","irrevocable","irrevocableness","irrevocably","irrigable","irrigate","irrigation","irritability","irritable","irritableness","irritably","irritant","irritate","irritated","irritating","irritation","irrupt","irruption","irs","irtish","irv","irvin","irvine","irving","irwin","irwinn","is","isa","isaac","isaak","isabel","isabelita","isabella","isabelle","isac","isacco","isactive","isadmin","isador","isadora","isadore","isahella","isaiah","isak","isarray","isassignablefrom","isauthenticated","isbn","iscariot","ischecked","isconnected","isdeleted","isdigit","isdirectory","iseabal","isempty","isenabled","isequal","isequaltostring","iserror","iservice","isexpanded","isfahan","isfile","ish","isherwood","ishidden","ishim","ishmael","ishtar","isiah","isiahi","isidor","isidora","isidore","isidoro","isidro","isin","isinglass","isinstance","isis","iskindofclass","isl","islam","islamabad","islamic","island","islander","islandia","islands","isle","islet","isloading","isloggedin","ism","ismael","ismatch","isn","isnan","isnt","isnull","isnullorempty","isnullorwhitespace","isnumber","isnumeric","iso","isobar","isobaric","isobel","isochronal","isochronous","isocline","isocyanate","isodate","isodine","isolate","isolated","isolation","isolationism","isolationist","isolationistic","isolator","isolde","isomer","isomeric","isomerism","isometric","isometrically","isometrics","isomorph","isomorphic","isomorphically","isomorphism","isopen","isoperimetrical","isopleth","isopleths","isosceles","isostatic","isotherm","isothermal","isotonic","isotope","isotopic","isotropic","isotropically","isotropy","isp","ispahan","ispell","isplaying","ispostback","isprime","isr","israel","israeli","israelite","isreadonly","isrequired","isrunning","iss","issac","isselected","isset","issi","issiah","issie","issuable","issuance","issuant","issue","issuecomment","issued","issuer","issues","issuing","issy","ist","istanbul","isthmian","isthmus","istream","istrue","istvan","isuzu","isvalid","isvisible","it","itaipu","ital","italian","italianate","italic","italicization","italicize","italicized","italy","itasca","itch","itchiness","itchy","itcorp","itel","item","itemarray","itemcode","itemcontainerstyle","itemcount","itemgetter","itemgroup","itemid","itemization","itemize","itemized","itemizer","itemizes","itemlabel","itemlist","itemname","itemprop","items","itemscontrol","itemspanel","itemspaneltemplate","itemssource","itemstyle","itemtemplate","itemtype","itemvalue","itemview","iter","iterable","iterate","iterated","iterates","iterating","iteration","iterations","iterative","iterator","iterators","iteritems","itertools","itext","itextpdf","itextsharp","ithaca","ithacan","itinerant","itinerary","itm","ito","itr","its","itself","itt","itunes","iu","iud","iv","iva","ivan","ivanhoe","ivar","ive","iver","ivett","ivette","ivie","ivonne","ivor","ivory","ivs","ivy","iw","iwc","ix","iy","izaak","izabel","izak","izanagi","izanami","izhevsk","izmir","izvestia","izzy","j","ja","jab","jabbed","jabber","jabberer","jabbing","jabez","jablonsky","jabot","jacaranda","jacenta","jacinda","jacinta","jacintha","jacinthe","jack","jackal","jackass","jackboot","jackdaw","jackelyn","jacket","jacketed","jackhammer","jacki","jackie","jackknife","jackknives","jacklin","jacklyn","jackman","jackpot","jackquelin","jackqueline","jackrabbit","jackson","jacksonian","jacksonville","jackstraw","jacky","jaclin","jaclyn","jacob","jacobean","jacobi","jacobian","jacobin","jacobite","jacobo","jacobs","jacobsen","jacobson","jacobus","jacoby","jacoco","jacquard","jacquelin","jacqueline","jacquelyn","jacquelynn","jacquenetta","jacquenette","jacques","jacquetta","jacquette","jacqui","jacquie","jacuzzi","jacynth","jada","jade","jaded","jadedness","jadeite","jae","jaeger","jag","jagged","jaggedness","jagger","jaggers","jagging","jaguar","jail","jailbird","jailbreak","jailer","jaime","jaimie","jain","jaine","jainism","jaipur","jakarta","jake","jakie","jakob","jalapeo","jalopy","jalousie","jam","jamaal","jamaica","jamaican","jamal","jamar","jamb","jambalaya","jamboree","jame","jamel","james","jameson","jamestown","jamesy","jamey","jami","jamie","jamil","jamill","jamima","jamison","jammal","jammed","jammie","jamming","jan","jana","janacek","janaya","janaye","jandy","jane","janean","janeczka","janeen","janeiro","janek","janel","janela","janell","janella","janelle","janene","janenna","janessa","janesville","janet","janeta","janetta","janette","janeva","janey","jangle","jangler","jangly","jania","janice","janie","janifer","janina","janine","janis","janissary","janith","janitor","janitorial","janka","janna","jannel","jannelle","jannie","janos","janot","jansen","jansenist","january","janus","jany","japan","japanese","japanned","japanner","japanning","jape","japura","jaquelin","jaquelyn","jaquenetta","jaquenette","jaquith","jar","jarad","jard","jardinire","jareb","jared","jarful","jargon","jarib","jarid","jarlsberg","jarrad","jarray","jarred","jarret","jarrett","jarrid","jarring","jarrod","jars","jarvis","jase","jasen","jasmin","jasmina","jasmine","jason","jasper","jasperreports","jastrow","jasun","jato","jaundice","jaundiced","jaunt","jauntily","jauntiness","jaunty","java","javac","javadoc","javadocs","javaee","javafx","javamail","javanese","javascript","javascripts","javascriptserializer","javase","javassist","javax","javelin","javier","jaw","jawbone","jawbreaker","jawline","jax","jaxartes","jaxb","jaxbcontext","jaxrs","jaxws","jay","jayapura","jaybird","jaycee","jaye","jayme","jaymee","jaymie","jayne","jaynell","jayson","jaywalk","jaywalker","jazmin","jazz","jazziness","jazzmen","jazzy","jb","jboss","jbutton","jc","jcenter","jcheckbox","jcombobox","jcomponent","jcp","jcr","jcs","jct","jd","jdavie","jdbc","jdbctemplate","jdialog","jdk","jdt","je","jealous","jealousness","jealousy","jean","jeana","jeane","jeanelle","jeanette","jeanie","jeanine","jeanna","jeanne","jeannette","jeannie","jeannine","jecho","jed","jedd","jeddy","jedediah","jedi","jedidiah","jee","jeep","jeer","jeerer","jeering","jeeves","jeez","jeff","jefferey","jefferson","jeffersonian","jeffery","jeffie","jeffrey","jeffry","jeffy","jehad","jehanna","jehoshaphat","jehovah","jehu","jejuna","jejune","jejuneness","jejunum","jekyll","jelene","jell","jello","jelly","jellybean","jellyfish","jellying","jellylike","jellyroll","jemie","jemima","jemimah","jemmie","jemmy","jen","jena","jenda","jenelle","jeni","jenica","jeniece","jenifer","jeniffer","jenilee","jenine","jenkins","jenn","jenna","jennee","jenner","jennet","jennette","jenni","jennica","jennie","jennifer","jennilee","jennine","jennings","jenny","jeno","jens","jensen","jeopard","jeopardize","jeopardy","jephthah","jerad","jerald","jeralee","jeramey","jeramie","jere","jereme","jeremiad","jeremiah","jeremiahs","jeremias","jeremie","jeremy","jeri","jericho","jerk","jerker","jerkily","jerkin","jerkiness","jerkwater","jerky","jermain","jermaine","jermayne","jeroboam","jerold","jerome","jeromy","jerri","jerrie","jerrilee","jerrilyn","jerrine","jerrod","jerrold","jerrome","jerry","jerrybuilt","jerrylee","jersey","jerusalem","jervis","jes","jess","jessa","jessalin","jessalyn","jessamine","jessamyn","jesse","jessee","jesselyn","jessey","jessi","jessica","jessie","jessika","jessy","jest","jester","jesting","jesuit","jesus","jet","jetbrains","jeth","jethro","jetliner","jetport","jetsam","jetted","jetting","jettison","jetty","jew","jewel","jeweler","jewelery","jewell","jewelle","jewelled","jewellery","jewelry","jewess","jewish","jewishness","jewry","jezebel","jf","jfilechooser","jfk","jframe","jg","jhipster","jib","jibbed","jibbing","jibe","jid","jidda","jiff","jiffy","jig","jigged","jigger","jigging","jiggle","jiggly","jigsaw","jihad","jilin","jill","jillana","jillane","jillayne","jilleen","jillene","jilli","jillian","jillie","jilly","jilt","jilter","jim","jimenez","jimmie","jimmy","jimsonweed","jinan","jingle","jingler","jingly","jingo","jingoism","jingoist","jingoistic","jinja","jinn","jinnah","jinni","jinny","jinrikisha","jinx","jioendpoint","jira","jit","jitney","jitter","jitterbug","jitterbugged","jitterbugger","jitterbugging","jittery","jiujitsu","jivaro","jive","jj","jk","jkl","jks","jl","jlabel","jlist","jls","jm","jmenu","jmenuitem","jmeter","jmp","jms","jmx","jna","jndi","jni","jnienv","jnlp","jo","joachim","joan","joana","joane","joanie","joann","joanna","joanne","joaquin","job","jobbed","jobber","jobbery","jobbing","jobey","jobholder","jobi","jobid","jobie","jobina","jobj","jobject","jobless","joblessness","jobname","jobrel","jobs","jobtitle","joby","jobye","jobyna","jocasta","jocelin","joceline","jocelyn","jocelyne","jock","jockey","jocko","jockstrap","jocose","jocoseness","jocosity","jocular","jocularity","jocund","jocundity","joda","jodee","jodhpurs","jodi","jodie","jody","joe","joeann","joel","joela","joelie","joell","joella","joelle","joellen","joelly","joellyn","joelynn","joesph","joete","joey","jog","jogged","jogger","jogging","joggle","joggler","jogjakarta","johan","johann","johanna","johannah","johannes","johannesburg","johansen","johanson","john","johna","johnath","johnathan","johnathon","johnette","johnie","johnna","johnnie","johnny","johnnycake","johns","johnsen","johnson","johnston","johnstown","johny","joice","join","joincolumn","joincolumns","joined","joiner","joinery","joining","joins","joint","jointable","jointed","jointedness","jointer","jointly","jointures","joist","jojo","joke","joker","jokes","jokey","jokier","jokiest","jokily","joking","jolee","joleen","jolene","joletta","joli","jolie","joliet","joline","jolla","jollification","jollily","jolliness","jollity","jolly","jolson","jolt","jolter","joly","jolyn","jolynn","jon","jonah","jonahs","jonas","jonathan","jonathon","jone","jonell","jones","joni","jonie","jonquil","jonson","joomla","jooq","joplin","joptionpane","jordain","jordan","jordana","jordanian","jordanna","jordon","jorey","jorgan","jorge","jorgensen","jorgenson","jori","jorie","jorrie","jorry","jory","joscelin","jose","josee","josef","josefa","josefina","joseito","joseph","josepha","josephina","josephine","josephs","josephson","josephus","josey","josh","josher","joshia","joshua","joshuah","josi","josiah","josias","josie","joss","josselyn","jostle","josue","josy","jot","jotted","jotter","jotting","joule","jounce","jouncy","jourdain","jourdan","journal","journalese","journalism","journalist","journalistic","journalize","journalized","journalizer","journey","journeyer","journeyman","journeymen","joust","jouster","jovanovich","jove","jovial","joviality","jovian","jowl","jowly","joy","joya","joyan","joyann","joyce","joycean","joycelin","joye","joyful","joyfuller","joyfullest","joyfulness","joyless","joylessness","joyner","joyous","joyousness","joyridden","joyride","joyrode","joystick","jozef","jp","jpa","jpanel","jpeg","jpg","jpn","jq","jqgrid","jqm","jqplot","jquery","jquerymobile","jqueryui","jqxhr","jr","jradiobutton","jre","jruby","js","jsandye","jsbin","jsch","jscript","jscrollpane","jsessionid","jsf","jsfiddle","jshint","json","jsonarray","jsonb","jsonconvert","jsondata","jsonexception","jsonobj","jsonobject","jsonobjectwithdata","jsonp","jsonparser","jsonpath","jsonproperty","jsonreader","jsonrequestbehavior","jsonresponse","jsonresult","jsonserializer","jsonstr","jsonstring","jsoup","jsp","jspservlet","jsr","jsref","jstl","jstree","jsx","jt","jta","jtable","jtc","jtextarea","jtextfield","juan","juana","juanita","juarez","jubal","jubilant","jubilate","jubilation","jubilee","jud","judah","judaic","judaical","judaism","judas","judd","juddered","juddering","jude","judea","judge","judgement","judger","judgeship","judging","judgment","judgmental","judi","judicable","judicatory","judicature","judicial","judiciary","judicious","judiciousness","judie","judith","juditha","judo","judon","judson","judy","judye","jug","jugate","jugful","jugged","juggernaut","jugging","juggle","juggler","jugglery","jugular","juice","juicer","juicily","juiciness","juicy","juieta","jujitsu","juju","jujube","jujutsu","juke","jukebox","jul","jule","julee","julep","juli","julia","julian","juliana","juliane","juliann","julianna","julianne","julie","julienne","juliet","julieta","julietta","juliette","julina","juline","julio","julissa","julita","julius","july","julys","jumble","jumbo","jumbotron","jump","jumped","jumper","jumpily","jumpiness","jumping","jumps","jumpsuit","jumpy","jun","junco","junction","juncture","june","juneau","junette","jung","jungfrau","jungian","jungle","junia","junie","junina","junior","juniority","juniper","junit","junk","junker","junkerdom","junket","junketeer","junkie","junkyard","juno","junta","jupiter","jupyter","jurassic","juridic","juridical","juried","jurisdiction","jurisdictional","jurisprudence","jurisprudent","jurisprudential","jurist","juristic","juror","jurua","jury","jurying","juryman","jurymen","jurywoman","jurywomen","just","justed","justen","juster","justest","justice","justiciable","justifiability","justifiable","justifiably","justification","justified","justifier","justify","justin","justina","justine","justing","justinian","justinn","justino","justis","justness","justo","justs","justus","jut","jute","jutish","jutland","jutted","jutting","juvenal","juvenile","juxtapose","juxtaposition","jv","jvm","jvms","jw","jwt","jyoti","jython","k","ka","kaaba","kabob","kaboom","kabuki","kabul","kacey","kacie","kacy","kaddish","kaela","kaffeeklatch","kaffeeklatsch","kafka","kafkaesque","kaftan","kagoshima","kahaleel","kahlil","kahlua","kahn","kai","kaia","kaifeng","kaila","kaile","kailey","kain","kaine","kaiser","kaitlin","kaitlyn","kaitlynn","kaja","kajar","kakalina","kala","kalahari","kalamazoo","kalashnikov","kalb","kale","kaleb","kaleena","kaleidescope","kaleidoscope","kaleidoscopic","kaleidoscopically","kalgoorlie","kali","kalie","kalil","kalila","kalina","kalinda","kalindi","kalle","kalli","kally","kalmyk","kalvin","kama","kamchatka","kamehameha","kameko","kamikaze","kamila","kamilah","kamillah","kampala","kampuchea","kan","kanchenjunga","kandace","kandahar","kandinsky","kandy","kane","kangaroo","kania","kankakee","kannada","kano","kanpur","kansan","kansas","kant","kantian","kanya","kaohsiung","kaolin","kaolinite","kaplan","kapok","kaposi","kappa","kaput","kara","karachi","karaf","karaganda","karakorum","karakul","karalee","karalynn","karamazov","karaoke","karat","karate","kare","karee","kareem","karel","karen","karena","karenina","kari","karia","karie","karil","karilynn","karim","karin","karina","karine","kariotta","karisa","karissa","karita","karl","karla","karlan","karlee","karleen","karlen","karlene","karlie","karlik","karlis","karloff","karlotta","karlotte","karly","karlyn","karma","karmen","karmic","karna","karney","karo","karol","karola","karole","karolina","karoline","karoly","karon","karp","karrah","karrie","karroo","karry","kart","kary","karyl","karylin","karyn","kasai","kasey","kashmir","kaspar","kasparov","kasper","kass","kassandra","kassey","kassi","kassia","kassie","kat","kata","katakana","katalin","kate","katee","katelyn","katerina","katerine","katey","kath","katha","katharina","katharine","katharyn","kathe","katherina","katherine","katheryn","kathi","kathiawar","kathie","kathleen","kathlin","kathmandu","kathrine","kathryn","kathryne","kathy","kathye","kati","katie","katina","katine","katinka","katleen","katlin","katmai","katmandu","katowice","katrina","katrine","katrinka","katti","kattie","katuscha","katusha","katy","katya","katydid","katz","kauai","kauffman","kaufman","kaunas","kaunda","kawabata","kawasaki","kay","kayak","kaycee","kaye","kayla","kayle","kaylee","kayley","kaylil","kaylyn","kayne","kayo","kazakh","kazakhstan","kazan","kazantzakis","kazoo","kb","kbd","kc","kcal","kd","kde","ke","kean","keane","kearney","keary","keaton","keats","kebab","keck","keefe","keefer","keegan","keel","keelby","keeley","keelhaul","keelia","keely","keen","keenan","keene","keener","keening","keenness","keep","keepalive","keeper","keeping","keeps","keepsake","keewatin","keg","kegged","kegging","keillor","keir","keisha","keith","kelbee","kelby","kelcey","kelci","kelcie","kelcy","kele","kelila","kellby","kellen","keller","kelley","kelli","kellia","kellie","kellina","kellogg","kellsie","kelly","kellyann","kelp","kelsey","kelsi","kelsy","kelt","kelvin","kelwin","kemerovo","kemp","kempis","ken","kendal","kendall","kendell","kendo","kendra","kendre","kendrick","kenilworth","kenmore","kenn","kenna","kennan","kennecott","kenned","kennedy","kennel","kenneth","kennett","kennie","kenning","kennith","kenny","keno","kenon","kenosha","kensington","kent","kenton","kentuckian","kentucky","kenya","kenyan","kenyatta","kenyon","keogh","keokuk","kepi","kepler","kept","ker","keras","keratin","kerberos","kerbside","kerby","kerchief","kerensky","keri","keriann","kerianne","kerk","kermie","kermit","kermy","kern","kerned","kernel","kernels","kerning","kerosene","kerouac","kerr","kerri","kerrie","kerrill","kerrin","kerry","kerstin","kerwin","kerwinn","kesley","keslie","kessia","kessiah","kessler","kestrel","ketch","ketchup","ketone","ketosis","kettering","ketti","kettie","kettle","kettledrum","kettleful","ketty","kev","kevan","keven","kevin","kevina","kevlar","kevon","kevorkian","kevyn","kewaskum","kewaunee","kewpie","key","keyboard","keyboardist","keyboards","keychain","keyclick","keycloak","keycode","keydown","keyed","keyerror","keyevent","keyframes","keyhole","keyname","keynes","keynesian","keynote","keynoter","keypad","keypair","keypath","keypoints","keypress","keypressed","keypunch","keypuncher","keyring","keys","keyset","keyspace","keystone","keystore","keystroke","keystrokes","keytime","keytool","keyup","keyvalue","keyvaluepair","keyword","keywords","kf","kg","kgb","kh","khabarovsk","khachaturian","khaki","khalid","khalil","khan","kharkov","khartoum","khayyam","khmer","khoisan","khomeini","khorana","khrushchev","khtml","khufu","khulna","khwarizmi","khyber","khz","ki","kia","kiah","kial","kib","kibana","kibble","kibbutz","kibbutzim","kibitz","kibitzer","kibosh","kick","kickapoo","kickback","kickball","kicker","kickoff","kicks","kickstand","kickstarter","kicky","kid","kidd","kidded","kidder","kiddie","kidding","kiddish","kiddo","kiddy","kiddying","kidless","kidnap","kidnaper","kidnaping","kidnapped","kidnapper","kidnapping","kidney","kids","kidskin","kieffer","kiel","kielbasa","kielbasi","kiele","kienan","kier","kierkegaard","kiersten","kieth","kiev","kigali","kikelia","kikuyu","kilauea","kile","kiley","kilian","kilimanjaro","kill","killdeer","killebrew","killed","killer","killian","killie","killing","killjoy","kills","killy","kiln","kilo","kilobaud","kilobit","kilobuck","kilobyte","kilocycle","kilogauss","kilogram","kilohertz","kilohm","kilojoule","kiloliter","kilometer","kiloton","kilovolt","kilowatt","kiloword","kilt","kilter","kim","kimball","kimbell","kimberlee","kimberley","kimberli","kimberly","kimberlyn","kimble","kimbra","kimmi","kimmie","kimmy","kimono","kin","kincaid","kind","kinda","kinder","kindergarten","kindergrtner","kindhearted","kindheartedness","kindle","kindler","kindliness","kindling","kindly","kindness","kindred","kinds","kine","kinect","kinematic","kinematics","kinesics","kinesthesis","kinesthetic","kinesthetically","kinetic","kinetically","kinetics","kinfolk","king","kingbird","kingdom","kingfisher","kinglet","kingliness","kingly","kingpin","kingsbury","kingship","kingsley","kingsly","kingston","kingstown","kingwood","kink","kinkily","kinkiness","kinky","kinna","kinney","kinnickinnic","kinnie","kinny","kinsey","kinsfolk","kinshasa","kinshasha","kinship","kinsley","kinsman","kinsmen","kinswoman","kinswomen","kiosk","kiowa","kip","kipling","kipp","kippar","kipped","kipper","kippie","kipping","kippy","kira","kirbee","kirbie","kirby","kirchhoff","kirchner","kirchoff","kirghistan","kirghiz","kirghizia","kiri","kiribati","kirinyaga","kirk","kirkland","kirkpatrick","kirkwood","kirov","kirsch","kirsten","kirsteni","kirsti","kirstin","kirstyn","kisangani","kishinev","kismet","kiss","kissee","kisser","kissiah","kissie","kissinger","kit","kitakyushu","kitbag","kitchen","kitchener","kitchenette","kitchenware","kite","kiter","kith","kiths","kitkat","kits","kitsch","kitschy","kitted","kitten","kittenish","kittenishness","kitti","kittie","kitting","kittiwakes","kitty","kivy","kiwanis","kiwi","kiwifruit","kizzee","kizzie","kk","kkk","kl","klan","klansman","klara","klarika","klarrisa","klass","klaus","klaxon","klee","kleenex","klein","kleinrock","klemens","klement","kleon","kleptomania","kleptomaniac","kliment","kline","klingon","klondike","kludge","kludger","kludgey","klutz","klutziness","klutzy","klux","klystron","km","kmeans","kml","kn","knack","knacker","knackwurst","knapp","knapsack","knauer","knave","knavery","knavish","knead","kneader","knee","kneecap","kneecapped","kneecapping","kneeing","kneel","kneeler","kneepad","knell","knelt","knesset","knew","kngwarreye","knick","knickerbocker","knickknack","knievel","knife","knight","knighthood","knightliness","knightly","knish","knit","knitr","knits","knitted","knitter","knitting","knitwear","knives","knob","knobbly","knobby","knobeloch","knock","knockabout","knockdown","knocker","knockoff","knockout","knockoutjs","knockwurst","knoll","knopf","knossos","knot","knothole","knotted","knottiness","knotting","knotty","know","knowable","knower","knowhow","knowing","knowingly","knowings","knowledge","knowledgeable","knowledgeableness","knowledgeably","knowledgecenter","knowles","known","knows","knox","knoxville","knuckle","knuckleball","knuckleduster","knucklehead","knudsen","knudson","knurl","knuth","knutsen","knutson","ko","koala","kobayashi","kobe","koch","kochab","kodak","kodaly","kodiak","koenig","koenigsberg","koenraad","koestler","kohinoor","kohl","kohler","kohlrabi","kohlrabies","kola","kolyma","kommunizma","kong","kongo","konrad","konstance","konstantin","konstantine","konstanze","koo","kook","kookaburra","kookiness","kooky","koontz","kopeck","koppers","kora","koral","koralle","koran","koranic","kordula","kore","korea","korean","korella","koren","koressa","korey","kori","korie","kornberg","korney","korrie","korry","kort","kory","korzybski","kosciusko","kosher","kossuth","kosygin","kotlin","kovacs","kowalewski","kowalski","kowloon","kowtow","kp","kph","kr","kraal","kraemer","kraft","krakatau","krakatoa","krakow","kramer","krasnodar","krasnoyarsk","krause","kraut","krebs","kremlin","kremlinologist","kremlinology","kresge","krieger","kriegspiel","krill","kringle","kris","krisha","krishna","krishnah","krispin","krissie","krissy","krista","kristal","kristan","kriste","kristel","kristen","kristi","kristian","kristie","kristien","kristin","kristina","kristine","kristo","kristofer","kristoffer","kristofor","kristoforo","kristopher","kristy","kristyn","krna","krnur","kroc","kroger","krone","kronecker","kronor","kropotkin","krueger","kruger","krugerrand","krupp","kruse","krypton","krysta","krystal","krystalle","krystle","krystyna","ks","ksh","kt","ku","kube","kubectl","kubelet","kubernetes","kublai","kubrick","kuchen","kudos","kudzu","kuenning","kuhn","kuibyshev","kumar","kumquat","kunming","kuomintang","kurd","kurdish","kurdistan","kurosawa","kurt","kurtis","kurtosis","kusch","kuwait","kuwaiti","kuznets","kuznetsk","kv","kvetch","kvp","kw","kwakiutl","kwangchow","kwangju","kwanzaa","kwargs","kwh","kx","ky","kyla","kyle","kylen","kylie","kylila","kylynn","kym","kynthia","kyoto","kyrgyzstan","kyrstin","kyushu","l","la","lab","laban","label","labeled","labeler","labelfor","labelled","labelledby","labellings","labels","labia","labial","labile","labiodental","labium","labor","laboratory","labore","labored","laboredness","laborer","laboring","laborings","laborious","laboriousness","laboris","laborsaving","laborum","labrador","labradorean","labs","laburnum","labyrinth","labyrinthine","labyrinths","lac","lace","laced","lacee","lacer","lacerate","laceration","laces","lacewing","lacey","lachesis","lachrymal","lachrymose","lacie","lacing","lacinia","lack","lackadaisic","lackadaisical","lackawanna","lacker","lackey","lacking","lackluster","lacks","laconic","laconically","lacquer","lacquerer","lacrosse","lactate","lactation","lactational","lacteal","lactic","lactose","lacuna","lacunae","lacus","lacy","lad","ladder","laddie","lade","laded","laden","ladened","ladening","lading","ladle","ladoga","ladonna","lady","ladybird","ladybug","ladyfinger","ladylike","ladylove","ladyship","laetitia","laetrile","lafayette","lafitte","lag","lager","laggard","laggardness","lagged","lagging","lagniappe","lagoon","lagos","lagrange","lagrangian","laguerre","laguna","lahore","laid","laidlaw","lain","laina","lainey","lair","laird","laissez","laity","laius","lake","lakehurst","lakeisha","laker","lakeside","lakewood","lakisha","lakshmi","lallygag","lallygagged","lallygagging","lalo","lam","lama","lamaism","lamar","lamarck","lamasery","lamaze","lamb","lambada","lambaste","lambda","lambdas","lambency","lambent","lambert","lambkin","lamborghini","lambskin","lambswool","lame","lamebrain","lamed","lameness","lament","lamentable","lamentableness","lamentably","lamentation","lamented","lamina","laminae","laminar","laminate","lamination","lammed","lammer","lamming","lammond","lamond","lamont","lamp","lampblack","lamplight","lamplighter","lampoon","lampooner","lamport","lamppost","lamprey","lampshade","lan","lana","lanae","lanai","lancashire","lancaster","lance","lancelot","lancer","lancet","land","landau","lander","landfall","landfill","landforms","landhold","landholder","landing","landis","landlady","landless","landlines","landlocked","landlord","landlubber","landmark","landmass","landon","landowner","landownership","landowning","landry","lands","landsat","landscape","landscaper","landslid","landslide","landslip","landsman","landsmen","landsteiner","landward","landwehr","lane","lanette","laney","lang","lange","langeland","langerhans","langford","langland","langley","langmuir","langsdon","langston","language","languages","languid","languidness","languish","languisher","languishing","languor","languorous","lani","lanie","lanita","lank","lankiness","lankness","lanky","lanna","lanni","lannie","lanny","lanolin","lansing","lantern","lanthanide","lanthanum","lanyard","lanzhou","lao","laocoon","laoreet","laotian","lap","lapack","lapboard","lapdog","lapel","lapidary","lapin","laplace","lapland","lapp","lapped","lappet","lapping","lapply","laps","lapse","lapsed","lapser","lapses","lapsing","laptop","laptops","lapwing","lara","laraine","laramie","laravel","larboard","larcenist","larcenous","larceny","larch","lard","larder","lardner","lardy","laredo","large","largehearted","largely","largemouth","largeness","larger","largess","largest","largish","largo","lari","lariat","larina","larine","larisa","larissa","lark","larker","larkspur","larousse","larry","lars","larsen","larson","larva","larvae","larval","laryngeal","larynges","laryngitides","laryngitis","larynx","laryssa","las","lasagna","lasagne","lascaux","lascivious","lasciviousness","lase","laser","lash","lashed","lasher","lashing","lass","lassa","lassen","lassie","lassitude","lasso","lassoer","last","laster","lastindex","lastindexof","lasting","lastingness","lastly","lastmodified","lastname","lastrow","laszlo","lat","latasha","latashia","latch","latching","latchkey","late","latecomer","lated","lately","latency","lateness","latent","later","lateral","lateralization","lateran","latest","latex","lath","lathe","lather","latherer","lathery","lathing","lathrop","laths","latia","latices","latin","latina","latinate","latino","latish","latisha","latitude","latitudinal","latitudinarian","latitudinary","latlng","latonya","latoya","latrena","latrina","latrine","latrobe","latte","latter","lattice","latticework","latticing","lattimer","latvia","latvian","laud","laudably","laudanum","laudatory","lauder","lauderdale","lauds","laue","laugh","laughable","laughableness","laughably","laugher","laughing","laughingstock","laughs","laughter","laughton","launce","launch","launched","launcher","launches","launching","launchoptions","launchpad","launder","laundered","launderer","launderette","laundress","laundrette","laundromat","laundry","laundryman","laundrymen","laundrywoman","laundrywomen","laura","lauraine","laural","lauralee","laurasia","laure","laureate","laureateship","lauree","laureen","laurel","laurella","lauren","laurena","laurence","laurene","laurent","laurentian","lauretta","laurette","lauri","laurianne","laurice","laurie","lauritz","lauryn","lausanne","lava","lavage","laval","lavaliere","lavatory","lave","lavena","lavender","lavern","laverna","laverne","lavina","lavinia","lavinie","lavish","lavishness","lavoisier","lavonne","law","lawanda","lawbreaker","lawbreaking","lawford","lawful","lawfulness","lawgiver","lawgiving","lawless","lawlessness","lawmaker","lawmaking","lawman","lawmen","lawn","lawnmower","lawrence","lawrenceville","lawrencium","lawry","laws","lawson","lawsuit","lawton","lawyer","lawyers","lax","laxative","laxativeness","laxer","laxes","laxity","laxness","lay","layabout","layamon","layaway","layer","layered","layering","layers","layette","layla","layman","laymen","layne","layney","layoff","layout","layoutinflater","layoutmanager","layoutparams","layouts","layoutsubviews","layover","laypeople","layperson","lays","layton","layup","laywoman","laywomen","lazar","lazare","lazaro","lazarus","laze","lazily","laziness","lazuli","lazy","lazybones","lb","lbj","lbl","lbound","lbs","lc","lcd","lcm","lcom","ld","lda","ldap","ldc","ldflags","ldr","le","lea","leach","leachate","lead","leadbelly","leaded","leaden","leadenness","leader","leaderboard","leaderless","leaders","leadership","leading","leads","leadsman","leadsmen","leaf","leafage","leafhopper","leafiness","leafless","leaflet","leafstalk","leafy","league","leaguer","leah","leak","leakage","leaked","leaker","leakey","leakiness","leaking","leaks","leaky","lean","leander","leandra","leaner","leaning","leann","leanna","leanne","leanness","leanor","leanora","leap","leaper","leapfrog","leapfrogged","leapfrogging","lear","learn","learned","learnedly","learnedness","learner","learning","learns","learnt","leary","leas","lease","leaseback","leasehold","leaseholder","leaser","leash","leasing","least","leastwise","leather","leatherette","leathern","leatherneck","leathery","leave","leaven","leavened","leavening","leavenworth","leaver","leaves","leaving","lebanese","lebanon","lebbie","lebensraum","lebesgue","leblanc","lecher","lecherous","lecherousness","lechery","lecithin","lectern","lecture","lecturer","lectures","lectureship","lectus","led","leda","lederberg","ledge","ledger","lee","leeann","leeanne","leech","leeds","leek","leela","leelah","leeland","leena","leer","leeriness","leering","leery","leesa","leese","leeuwenhoek","leeward","leeway","left","leftism","leftist","leftmost","leftover","leftward","lefty","leg","legacy","legal","legalese","legalism","legalistic","legality","legalization","legalize","legalized","legally","legate","legatee","legation","legato","legend","legendarily","legendary","legendre","leger","legerdemain","legged","legginess","legging","leggy","leghorn","legibility","legible","legibly","legion","legionary","legionnaire","legislate","legislation","legislative","legislator","legislature","legit","legitimacy","legitimate","legitimation","legitimatize","legitimization","legitimize","legless","legman","legmen","lego","legra","legree","legroom","legs","legstraps","legume","leguminous","legwork","lehigh","lehman","lei","leia","leibniz","leicester","leiden","leif","leigh","leigha","leighton","leila","leilah","leipzig","leisha","leisure","leisureliness","leisurely","leisurewear","leitmotif","leitmotiv","lek","lela","lelah","leland","lelia","lem","lemaitre","lemar","lemke","lemma","lemme","lemmie","lemming","lemmy","lemon","lemonade","lemony","lemuel","lemur","lemuria","len","lena","lenard","lenci","lend","lender","lenee","lenette","lenght","length","lengthen","lengthener","lengthily","lengthiness","lengths","lengthwise","lengthy","lenience","leniency","lenient","lenin","leningrad","leninism","leninist","lenitive","lenka","lenna","lennard","lennie","lennon","lenny","leno","lenoir","lenora","lenore","lenovo","lens","lent","lenticular","lentil","lento","leo","leodora","leoine","leola","leoline","leon","leona","leonanie","leonard","leonardo","leoncavallo","leone","leonel","leonelle","leonerd","leonhard","leonid","leonidas","leonie","leonine","leonor","leonora","leonore","leontine","leontyne","leopard","leopardess","leopardskin","leopold","leopoldo","leopoldville","leora","leotard","leper","lepidus","lepke","leprechaun","leprosy","leprous","lepta","lepton","lepus","lerner","leroi","leroy","les","lesa","lesbian","lesbianism","leshia","lesion","lesley","lesli","leslie","lesly","lesotho","less","lessee","lessen","lesseps","lesser","lesses","lessie","lessing","lesson","lessons","lessor","lest","lester","lesya","let","leta","letdown","letha","lethal","lethality","lethargic","lethargically","lethargy","lethe","lethia","leticia","letisha","letitia","letizia","lets","letsencrypt","letta","letter","letterbox","lettered","letterer","letterhead","lettering","letterman","lettermen","letterpress","letters","letti","lettie","letting","lettuce","letty","letup","leukemia","leukemic","leukocyte","leupold","lev","levant","levee","leveeing","level","leveled","leveler","levelheaded","levelheadedness","leveling","levelness","levels","levenshtein","lever","leverage","levesque","levey","levi","leviathan","levier","levin","levine","levitate","levitation","leviticus","levitt","levity","levon","levy","lew","lewd","lewdness","lewellyn","lewes","lewie","lewinsky","lewis","lewiss","lex","lexeme","lexer","lexi","lexical","lexicographer","lexicographic","lexicographical","lexicography","lexicon","lexie","lexine","lexington","lexus","lexy","leyden","leyla","lezley","lezlie","lf","lfs","lft","lg","lh","lhasa","lhotse","lhs","li","lia","liability","liable","liaise","liaison","liam","lian","liana","liane","lianna","lianne","liar","lib","libation","libbed","libbey","libbi","libbie","libbing","libboost","libby","libc","libcore","libcurl","libdispatch","libel","libeler","libelous","liberace","liberal","liberalism","liberality","liberalization","liberalize","liberalized","liberalizer","liberalness","liberate","liberation","liberationists","liberator","liberia","liberian","libero","libertarian","libertarianism","libertine","liberty","libexec","libgcc","libgdx","libidinal","libidinous","libidinousness","libido","libopencv","libpng","libra","librarian","libraries","library","libretoes","libretos","librettist","libretto","libreville","librium","libs","libstdc","libsystem","libusb","libx","libxml","libya","libyan","lice","licence","license","licensed","licensee","licenser","licenses","licensing","licensor","licentiate","licentious","licentiousness","licha","lichee","lichen","lichtenstein","lichter","licit","lick","licked","licker","lickerish","licking","licorice","lid","lida","lidded","lidding","lidia","lidless","lido","lie","lieberman","liebfraumilch","liechtenstein","lied","lief","liefs","liege","lien","lier","lies","liesa","lieu","lieut","lieutenancy","lieutenant","life","lifeblood","lifeboat","lifebuoy","lifecycle","lifecyclebase","lifeforms","lifeguard","lifeless","lifelessness","lifelike","lifelikeness","lifeline","lifelong","lifer","liferay","lifesaver","lifesaving","lifespan","lifestyle","lifetaking","lifetime","lifework","lifo","lift","lifter","lifting","liftoff","ligament","ligand","ligate","ligation","ligature","light","lightblue","lightbox","lighted","lighten","lightener","lightening","lighter","lightered","lightering","lighters","lightest","lightface","lightgray","lightheaded","lighthearted","lightheartedness","lighthouse","lighting","lightly","lightness","lightning","lightproof","lights","lightship","lightweight","ligneous","lignite","lignum","ligula","likability","likable","likableness","like","likeability","liked","likelihood","likely","liken","likeness","liker","likes","likest","likewise","liking","lil","lila","lilac","lilah","lilia","lilian","liliana","liliane","lilith","liliuokalani","lilla","lille","lilli","lillian","lillie","lilliput","lilliputian","lilllie","lilly","lilongwe","lilt","lilting","lily","lilyan","lim","lima","limb","limbaugh","limber","limbered","limberness","limbers","limbic","limbless","limbo","limburger","lime","limeade","limekiln","limelight","limerick","limestone","limit","limitability","limitably","limitation","limitations","limited","limitedly","limitedness","limiter","limiting","limitless","limitlessness","limits","limn","limo","limoges","limousine","limp","limper","limpet","limpid","limpidity","limpidness","limpness","limpopo","limy","lin","lina","linage","linalg","linc","linchpin","lincoln","lind","linda","lindberg","lindbergh","linden","lindholm","lindi","lindie","lindon","lindquist","lindsay","lindsey","lindstrom","lindsy","lindy","line","linea","lineage","lineal","lineament","linear","lineargradientbrush","linearity","linearize","linearlayout","linearlayoutmanager","linebacker","linechart","linecolor","lined","linefeed","linell","lineman","linemen","linen","lineno","linenumber","liner","lines","linesman","linesmen","linestyle","linet","lineto","linette","lineup","linewidth","ling","linger","lingerer","lingerie","lingering","lingo","lingoes","lingua","lingual","linguine","linguini","linguist","linguistic","linguistically","linguistics","liniment","lining","link","linkable","linkage","linkbutton","linked","linkedhashmap","linkedin","linkedlist","linker","linkid","linking","links","linkup","linn","linnaeus","linnea","linnell","linnet","linnie","lino","linode","linoel","linoleum","linotype","linq","linseed","linspace","lint","lintel","linter","linton","linty","linus","linux","linwood","linzy","lion","lionel","lionello","lioness","lionhearted","lionization","lionize","lionizer","lip","lipase","lipid","liposuction","lipped","lipper","lippi","lipping","lippmann","lippy","lipread","lipschitz","lipscomb","lipstick","lipton","liq","liquefaction","liquefier","liquefy","liqueur","liquibase","liquid","liquidate","liquidation","liquidator","liquidity","liquidize","liquidizer","liquidness","liquor","liquorice","liquorish","lira","lire","lis","lisa","lisabeth","lisbeth","lisbon","lise","lisetta","lisette","lisha","lishe","lisle","lisp","lisper","liss","lissa","lissajous","lissi","lissie","lissome","lissomeness","lissomness","lissy","list","lista","listactivity","listadapter","listb","listbox","listboxitem","listdata","listdir","liste","listed","listen","listener","listeners","listening","listens","lister","listerine","listfiles","listfragment","listid","listing","listings","listitem","listitems","listless","listlessness","listnode","liston","lists","listview","listviewitem","liszt","lit","lita","litany","litchi","lite","liter","literacy","literal","literalism","literalistic","literally","literalness","literals","literariness","literary","literate","literati","literation","literature","lithe","litheness","lithesome","lithium","lithograph","lithographer","lithographic","lithographically","lithographs","lithography","lithology","lithosphere","lithospheric","lithuania","lithuanian","litigant","litigate","litigation","litigator","litigious","litigiousness","litmus","litotes","litter","litterbug","little","littleneck","littleness","littleton","litton","littoral","littrateur","liturgic","liturgical","liturgics","liturgist","liturgy","liuka","liv","liva","livability","livable","livableness","livably","live","lived","livedata","livelihood","liveliness","livelong","lively","liven","liveness","liver","liveried","liverish","livermore","liverpool","liverpudlian","liverwort","liverwurst","livery","liveryman","liverymen","lives","livestock","livia","livid","lividness","living","livingness","livingston","livingstone","livonia","livvie","livvy","livvyy","livy","liz","liza","lizabeth","lizard","lizbeth","lizette","lizzie","lizzy","ljava","ljubljana","lk","ll","llama","llano","llb","llc","lld","lldb","llewellyn","lloyd","llvm","llywellyn","lm","ln","lname","lng","lnk","lo","load","loadable","loadclass","loaddata","loaded","loader","loaders","loadfile","loadhtml","loadimage","loading","loadlibrary","loadmodule","loads","loadstar","loadstone","loadurl","loadxml","loaf","loafer","loam","loamy","loan","loaner","loaning","loans","loansharking","loanword","loath","loathe","loather","loathing","loathness","loathsome","loathsomeness","loaves","lob","lobachevsky","lobar","lobbed","lobber","lobbing","lobby","lobbyist","lobe","lobortis","lobotomist","lobotomize","lobotomy","lobster","lobular","lobularity","lobule","loc","local","localcontainerentitymanagerfactorybean","localdate","localdatetime","localdb","locale","locales","localhost","localisms","locality","localization","localize","localized","localizeddescription","localizer","localizes","locally","localname","locals","localstorage","localtime","locatable","locate","located","locater","locating","location","locational","locationid","locationlistener","locationmanager","locationprovider","locationrequest","locations","locative","locator","loch","lochinvar","lochs","loci","lock","lockable","locke","lockean","locked","locker","locket","lockhart","lockheed","lockian","locking","lockjaw","locknut","lockout","locks","locksmith","locksmithing","locksmiths","lockstep","lockup","lockwood","loco","locomotion","locomotive","locomotor","locomotory","locoweed","locus","locust","locution","lodash","lode","lodestar","lodestone","lodge","lodged","lodgepole","lodger","lodges","lodging","lodgment","lodovico","lodowick","lodz","loeb","loella","loewe","loewi","loft","lofter","loftily","loftiness","lofty","log","logan","loganberry","logarithm","logarithmic","logarithmically","logback","logbook","logcat","loge","logfile","logged","loggedin","logger","loggerfactory","loggerhead","loggers","loggia","logging","logic","logical","logicality","logically","logicalness","logician","login","loginactivity","loginbutton","logincontroller","loginform","loginpage","logins","loginurl","loginview","logion","logistic","logistical","logits","logjam","loglevel","logmanager","logo","logon","logos","logotype","logout","logrolling","logs","logstash","logy","lohengrin","loin","loincloth","loincloths","loire","lois","loise","loiter","loiterer","loki","lol","lola","loleta","lolita","loll","loller","lollipop","lolly","lomb","lombard","lombardi","lombardy","lombok","lome","lon","lona","london","londonderry","londoner","lone","lonee","loneliness","lonely","loneness","loner","lonesome","lonesomeness","long","longboat","longbow","longed","longeing","longer","longest","longevity","longfellow","longhair","longhand","longhorn","longing","longish","longitude","longitudinal","longness","longs","longshoreman","longshoremen","longsighted","longstanding","longstreet","longsword","longterm","longtime","longueuil","longueur","longways","longword","loni","lonna","lonnard","lonni","lonnie","lonny","loofah","loofahs","look","lookahead","lookalike","lookat","lookbehind","looked","looker","looking","lookout","looks","lookup","lookups","loom","looming","loomis","loon","loony","loop","loopback","looped","looper","loophole","looping","loops","loopy","loose","loosed","looseleaf","loosely","loosen","loosener","looseness","looses","loosing","loot","looter","lop","lope","loper","lopez","lopped","lopper","lopping","lopsided","lopsidedness","loquacious","loquaciousness","loquacity","lora","lorain","loraine","loralee","loralie","loralyn","lorant","lord","lording","lordliness","lordly","lordship","lore","loree","loreen","lorelei","lorelle","lorem","lorempixel","loren","lorena","lorene","lorentz","lorentzian","lorenz","lorenza","lorenzo","loretta","lorette","lorgnette","lori","loria","lorianna","lorianne","lorie","lorilee","lorilyn","lorin","lorinda","lorine","loris","lorita","lorn","lorna","lorne","lorraine","lorrayne","lorre","lorri","lorrie","lorrin","lorry","lorryload","lory","los","lose","loser","loses","losing","loss","lossage","losses","lossless","lossy","lost","lot","lothaire","lothario","lotion","lots","lott","lotta","lotte","lotted","lotter","lottery","lotti","lottie","lotting","lotto","lotty","lotus","lou","loud","louden","loudhailer","loudly","loudmouth","loudmouths","loudness","loudspeaker","loudspeaking","louella","louie","louis","louisa","louise","louisette","louisiana","louisianan","louisianian","louisville","lounge","lounger","lour","lourdes","louse","lousewort","lousily","lousiness","lousy","lout","loutish","loutishness","loutitia","louver","louvre","lovable","lovableness","lovably","love","lovebird","lovechild","lovecraft","loved","lovejoy","lovelace","loveland","loveless","lovelessness","lovelies","loveliness","lovelinesses","lovell","lovelorn","lovelornness","lovely","lovemaking","lover","lovesick","lovestruck","loving","lovingly","lovingness","low","lowborn","lowboy","lowbrow","lowdown","lowe","lowell","lower","lowercase","lowermost","lowery","lowest","lowish","lowland","lowlands","lowlife","lowlight","lowliness","lowly","lowness","lowrance","lox","loy","loyal","loyaler","loyalest","loyalism","loyalist","loyalty","loyang","loyd","loydie","loyola","lozenge","lp","lparam","lpg","lpn","lq","lr","lrow","ls","lsb","lsd","lst","lstm","lt","ltd","lte","ltr","ltrim","lts","lu","lua","luanda","luann","luau","lubber","lubbock","lube","lubricant","lubricate","lubrication","lubricator","lubricious","lubricity","lubumbashi","luca","lucais","luce","lucene","lucent","lucerne","lucho","luci","lucia","lucian","luciana","luciano","lucid","lucidity","lucidness","lucie","lucien","lucienne","lucifer","lucila","lucile","lucilia","lucille","lucina","lucinda","lucine","lucio","lucita","lucite","lucius","luck","luckier","luckily","luckiness","luckless","lucknow","lucky","lucrative","lucrativeness","lucre","lucretia","lucretius","luctus","lucubrate","lucubration","lucy","luddite","ludhiana","ludicrous","ludicrousness","ludlow","ludmilla","ludo","ludovico","ludovika","ludvig","ludwig","luella","luelle","luff","lufthansa","luftwaffe","lug","luge","luger","luggage","lugged","lugger","lugging","lugosi","lugsail","lugubrious","lugubriousness","luigi","luis","luisa","luise","lukas","luke","lukewarm","lukewarmness","lula","lulita","lull","lullaby","lulu","lumbago","lumbar","lumber","lumberer","lumbering","lumberjack","lumberman","lumbermen","lumberyard","lumen","luminance","luminary","luminescence","luminescent","luminosity","luminous","luminousness","lumire","lummox","lump","lumper","lumpiness","lumpish","lumpishness","lumpy","luna","lunacy","lunar","lunary","lunate","lunatic","lunation","lunch","luncheon","luncheonette","luncher","lunchpack","lunchroom","lunchtime","lund","lundberg","lundquist","lune","lung","lunge","lunger","lungfish","lungful","lunkhead","lupe","lupine","lupus","lura","lurch","lurcher","lure","lurer","lurette","lurex","luria","lurid","luridness","lurk","lurker","lurleen","lurlene","lurline","lusa","lusaka","luscious","lusciousness","lush","lushness","lusitania","lust","luster","lustering","lusterless","lustful","lustfulness","lustily","lustiness","lustrous","lustrousness","lusty","lutanist","lute","lutenist","lutero","lutetium","luther","lutheran","lutheranism","luting","lutz","luxe","luxembourg","luxembourgian","luxemburg","luxuriance","luxuriant","luxuriate","luxuriation","luxurious","luxuriousness","luxury","luz","luzon","lv","lvalue","lvl","lw","lwjgl","lwp","lx","lxml","ly","lyallpur","lyceum","lychee","lycopodium","lycra","lycurgus","lyda","lydia","lydian","lydie","lydon","lye","lyell","lying","lyle","lyly","lyman","lyme","lymph","lymphatic","lymphocyte","lymphoid","lymphoma","lymphs","lyn","lynch","lynchburg","lyncher","lynching","lynda","lynde","lyndel","lyndell","lyndon","lyndsay","lyndsey","lyndsie","lyndy","lynea","lynelle","lynett","lynette","lynn","lynna","lynne","lynnea","lynnell","lynnelle","lynnet","lynnett","lynnette","lynsey","lynx","lyon","lyra","lyre","lyrebird","lyric","lyrical","lyricalness","lyricism","lyricist","lyrics","lysenko","lysine","lysistrata","lysol","lyssa","lyx","lz","m","ma","maalox","maana","mab","mabel","mabelle","mable","mac","macabre","macadam","macadamize","macao","macaque","macaroni","macaroon","macarthur","macaulay","macaw","macbeth","macbook","maccabees","maccabeus","macdonald","macdraw","mace","macedon","macedonia","macedonian","macer","macerate","maceration","macgregor","mach","machete","machiavelli","machiavellian","machinate","machination","machine","machinelike","machinery","machines","machinist","machismo","macho","machs","macias","macintosh","mack","mackenzie","mackerel","mackinac","mackinaw","mackintosh","macleish","macmillan","macon","macos","macosx","macpaint","macports","macram","macro","macrobiotic","macrobiotics","macrocosm","macrodynamic","macroeconomic","macroeconomics","macromolecular","macromolecule","macron","macrophage","macros","macroscopic","macroscopically","macrosimulation","macrosocioeconomic","macs","mactivity","macy","mad","mada","madagascan","madagascar","madalena","madalyn","madam","madame","madapter","madcap","maddalena","madded","madden","maddening","madder","maddest","maddi","maddie","madding","maddox","maddy","made","madeira","madel","madelaine","madeleine","madelena","madelene","madelin","madelina","madeline","madella","madelle","madelon","madelyn","mademoiselle","madge","madhouse","madhya","madison","madlen","madlin","madman","madmen","madness","madonna","madras","madrid","madrigal","madsen","madurai","madwoman","madwomen","mady","mae","maecenas","maegan","maelstrom","maestro","maeterlinck","mafia","mafiosi","mafioso","mag","magazine","magda","magdaia","magdalen","magdalena","magdalene","mage","magellan","magellanic","magenta","magento","magged","maggee","maggi","maggie","magging","maggot","maggoty","maggy","magi","magic","magical","magically","magician","magick","magicked","magicking","magill","maginot","magisterial","magistracy","magistrate","magma","magna","magnanimity","magnanimosity","magnanimous","magnate","magnesia","magnesite","magnesium","magnet","magnetic","magnetically","magnetics","magnetism","magnetite","magnetizable","magnetization","magnetize","magnetized","magneto","magnetodynamics","magnetohydrodynamical","magnetohydrodynamics","magnetometer","magnetosphere","magnetron","magnification","magnificence","magnificent","magnified","magnify","magniloquence","magniloquent","magnitogorsk","magnitude","magnolia","magnum","magnuson","magog","magoo","magpie","magritte","magruder","magsaysay","maguire","magus","magyar","mahabharata","mahala","mahalia","maharajah","maharajahs","maharanee","maharani","maharashtra","maharishi","mahatma","mahavira","mahayana","mahayanist","mahdi","mahfouz","mahican","mahjong","mahler","mahmoud","mahmud","mahogany","mahomet","mahout","mai","maia","maible","maid","maiden","maidenhair","maidenhead","maidenhood","maidenly","maidservant","maier","maiga","maighdiln","maigret","mail","mailaddress","mailbag","mailbox","mailchimp","mailer","mailgun","mailing","mailitem","maillol","maillot","mailman","mailmen","mailmessage","mails","mailto","maim","maiman","maimed","maimedness","maimer","maimonides","main","mainactivity","mainapp","mainbrace","mainbundle","mainclass","maincontent","maincontroller","mainctrl","maine","mainer","mainform","mainframe","mainland","mainlander","mainlayout","mainline","mainliner","mainloop","mainly","mainmast","mainmenu","mainpage","mainpanel","mains","mainsail","mainscreen","mainspring","mainstay","mainstream","maintain","maintainability","maintainable","maintained","maintainer","maintaining","maintains","maintenance","mainthread","maintop","mainview","mainviewcontroller","mainviewmodel","mainwindow","maiolica","mair","maire","maisey","maisie","maison","maisonette","maitilde","maize","maj","maje","majestic","majestically","majesty","majolica","major","majorca","majordomo","majorette","majority","majuro","makable","makarios","make","makefile","makefiles","makeover","maker","makers","makes","makeshift","maketext","makeup","making","mal","mala","malabar","malabo","malacca","malachi","malachite","maladapt","maladjust","maladjustment","maladministration","maladroit","maladroitness","malady","malagasy","malaise","malamud","malamute","malanie","malaprop","malapropism","malaria","malarial","malarious","malarkey","malathion","malawi","malawian","malay","malaya","malayalam","malayan","malaysia","malaysian","malchy","malcolm","malcontent","malcontented","malcontentedness","maldive","maldivian","maldonado","male","maledict","malediction","malefaction","malefactor","malefic","maleficence","maleficent","malena","maleness","malesuada","malevolence","malevolencies","malevolent","malfeasance","malfeasant","malformation","malformed","malformedurlexception","malfunction","mali","malia","malian","malibu","malice","malicious","maliciousness","malign","malignancy","malignant","malignity","malina","malinda","malinde","malinger","malingerer","malinowski","malissa","malissia","mall","mallard","mallarm","malleability","malleable","malleableness","mallet","mallissa","malloc","mallorie","mallory","mallow","malnourished","malnutrition","malocclusion","malodorous","malone","malorie","malory","malposed","malpractice","malraux","malt","malta","malted","maltese","malthus","malthusian","malting","maltose","maltreat","maltreatment","malty","malva","malvin","malvina","malware","malynda","mama","mamba","mambo","mame","mamet","mamie","mamma","mammal","mammalian","mammary","mammogram","mammography","mammon","mammoth","mammoths","mammy","mamore","mamp","man","manacle","manage","manageability","manageable","manageableness","managed","managedbean","managedobjectcontext","management","manager","manageress","managerial","managers","managership","manages","managing","managua","manama","mananas","manasseh","manatee","manaus","manchester","manchu","manchuria","manchurian","mancini","manciple","mancunian","manda","mandala","mandalay","mandamus","mandarin","mandate","mandatory","mandel","mandela","mandelbrot","mandi","mandible","mandibular","mandie","mandingo","mandolin","mandrake","mandrel","mandrill","mandy","mane","manet","maneuver","maneuverability","maneuverer","manfred","manful","manganese","mange","manger","manginess","mangle","mangler","mango","mangoes","mangrove","mangy","manhandle","manhattan","manhole","manhood","manhunt","mani","mania","maniac","maniacal","manic","manically","manichean","manicure","manicurist","manifest","manifestation","manifesto","manifests","manifold","manifolder","manifoldness","manikin","manila","manilla","manioc","manipulability","manipulable","manipulate","manipulated","manipulating","manipulation","manipulations","manipulative","manipulator","manipulatory","manitoba","manitoulin","manitowoc","mankind","mankowski","manley","manlike","manliness","manly","mann","manna","manned","mannequin","manner","mannered","mannerism","mannerist","mannerliness","mannerly","mannheim","mannie","mannikin","manning","mannish","mannishness","manny","mano","manolo","manometer","manon","manor","manorial","manpower","manqu","mans","mansard","manse","manservant","mansfield","mansion","manslaughter","manson","manta","mantegna","mantel","mantelpiece","mantes","mantilla","mantis","mantissa","mantle","mantling","mantra","mantrap","manual","manually","manuals","manuel","manuela","manufacture","manufacturer","manufacturers","manufacturing","manumission","manumit","manumitted","manumitting","manure","manuscript","manville","manx","many","manya","manytomany","manytomanyfield","manytoone","mao","maoism","maoist","maori","map","mapbox","mapdispatchtoprops","mapfragment","mapi","maple","maplecrest","mapmaker","mapoptions","mappable","mappath","mapped","mappedby","mapper","mappers","mapping","mappings","mapplethorpe","mapred","mapreduce","maproute","maps","mapstatetoprops","maptypeid","maputo","mapview","mar","mara","marabel","marabou","marabout","maraca","maracaibo","maraschino","marat","marathi","marathon","marathoner","maraud","marauder","marble","marbleize","marbler","marbling","marc","marceau","marcel","marcela","marcelia","marcelino","marcella","marcelle","marcellina","marcelline","marcello","marcellus","marcelo","march","marchall","marchelle","marcher","marchioness","marci","marcia","marciano","marcie","marcile","marcille","marco","marconi","marcotte","marcus","marcy","mardi","marduk","mare","mareah","maren","marena","maressa","marga","margalit","margalo","margaret","margareta","margarete","margaretha","margarethe","margaretta","margarette","margarine","margarita","margarito","margaux","marge","margeaux","margery","marget","margette","margi","margie","margin","marginal","marginalia","marginality","marginalization","marginalize","marginbottom","marginend","marginleft","marginright","margins","marginstart","margintop","margit","margo","margot","margret","margrethe","marguerite","margy","mari","maria","mariachi","mariadb","mariam","marian","mariana","mariann","marianna","marianne","mariano","maribel","maribelle","maribeth","marice","maricela","maridel","marie","marieann","mariejeanne","mariel","mariele","marielle","mariellen","marietta","mariette","marigold","marijn","marijo","marijuana","marika","marilee","marilin","marillin","marilyn","marimba","marin","marina","marinade","marinara","marinate","marination","marine","mariner","marinna","marino","mario","marion","marionette","mariquilla","marisa","mariska","marisol","marissa","marita","maritain","marital","maritime","maritsa","maritza","mariupol","marius","mariya","marj","marja","marje","marji","marjie","marjoram","marjorie","marjory","marjy","mark","markab","markdown","marked","markedly","marker","markeroptions","markers","market","marketa","marketability","marketable","marketeer","marketer","marketing","marketplace","markets","markham","marking","markism","markka","markkaa","marklogic","markos","markov","markovian","markovitz","marks","marksman","marksmanship","marksmen","markup","markus","marl","marla","marlane","marlboro","marlborough","marleah","marlee","marleen","marlena","marlene","marley","marlie","marlin","marline","marlinespike","marlo","marlon","marlow","marlowe","marlyn","marmaduke","marmalade","marmara","marmoreal","marmoset","marmot","marna","marne","marney","marni","marnia","marnie","maroon","marque","marquee","marquesas","marquess","marquetry","marquette","marquez","marquis","marquise","marquisette","marquita","marrakesh","marred","marriage","marriageability","marriageable","married","marrilee","marring","marriott","marris","marrissa","marrow","marrowbone","marry","mars","marseillaise","marseille","marseilles","marsh","marsha","marshal","marshalas","marshall","marshalled","marshaller","marshalling","marshallings","marshiness","marshland","marshmallow","marshy","marsiella","marsupial","mart","marta","martainn","martel","martelle","marten","martguerita","martha","marthe","marthena","marti","martial","martian","martica","martie","martin","martina","martinet","martinez","martingale","martini","martinique","martino","martinson","martita","marty","martyn","martynne","martyr","martyrdom","marv","marva","marve","marvel","marvell","marvelous","marven","marvin","marwin","marx","marxian","marxism","marxist","mary","marya","maryann","maryanna","maryanne","marybelle","marybeth","maryellen","maryjane","maryjo","maryl","maryland","marylee","marylin","marylinda","marylou","marylynne","maryrose","marys","marysa","marzipan","mas","masada","masai","masaryk","masc","mascagni","mascara","mascot","masculine","masculineness","masculinity","masefield","maser","maseru","mash","masha","mashhad","mask","masked","masker","masking","masks","masochism","masochist","masochistic","masochistically","mason","masonic","masonite","masonry","masque","masquer","masquerade","masquerader","mass","massa","massachusetts","massacre","massage","massager","massasoit","massenet","masseur","masseuse","massey","massif","massimiliano","massimo","massing","massive","massively","massiveness","massless","mast","mastectomy","master","masterclass","mastered","masterful","masterfulness","masterliness","masterly","mastermind","masterpage","masterpiece","masters","mastership","masterstroke","masterwork","mastery","masthead","mastic","masticate","mastication","mastiff","mastodon","mastoid","masturbate","masturbation","masturbatory","mat","mata","matador","match","matchable","matchbook","matchbox","matchcase","matched","matcher","matchers","matches","matching","matchless","matchlock","matchmake","matchmaker","matchmaking","matchplay","matchstick","matchwood","mate","mated","matelda","mateo","mater","material","materialism","materialist","materialistic","materialistically","materiality","materialization","materialize","materialized","materializer","materializes","materializing","materialness","materials","maternal","maternity","mates","math","mathe","mathematic","mathematica","mathematical","mathematically","mathematician","mathematics","mathematik","mather","mathew","mathewson","mathian","mathias","mathieu","mathilda","mathilde","mathis","mathjax","maths","mathworks","matias","matilda","matilde","matine","mating","matins","matisse","matlab","matmul","matplotlib","matriarch","matriarchal","matriarchs","matriarchy","matrices","matricidal","matricide","matriculate","matriculation","matriel","matrimonial","matrimony","matrix","matron","matsumoto","matt","matte","mattel","matteo","matter","matterhorn","matters","matthaeus","mattheus","matthew","matthias","matthieu","matthiew","matthus","matti","mattias","mattie","matting","mattins","mattis","mattock","mattress","matty","maturate","maturation","maturational","mature","matureness","maturer","maturity","matzo","matzot","maud","maude","maudie","maudlin","maugham","maui","maul","mauler","maunder","maupassant","maura","maure","maureen","maureene","maurene","mauriac","maurice","mauricio","maurie","maurine","mauris","maurise","maurita","mauritania","mauritanian","mauritian","mauritius","maurits","maurizia","maurizio","mauro","maurois","maury","mauser","mausoleum","mauve","maven","mavencentral","mavencli","maverick","mavin","mavis","mavra","maw","mawkish","mawkishness","mawr","max","maxcdn","maxdate","maxdepth","maxheight","maxi","maxie","maxilla","maxillae","maxillary","maxim","maxima","maximal","maximality","maximilian","maximilianus","maximilien","maximization","maximize","maximized","maximizer","maximo","maximum","maxine","maxlen","maxlength","maxlines","maxoccurs","maxsize","maxtor","maxvalue","maxwell","maxwellian","maxwidth","maxx","maxy","may","maya","mayan","maybe","maybelle","mayday","maye","mayer","mayest","mayfair","mayflower","mayfly","mayhap","mayhem","mayn","maynard","mayne","maynord","mayo","mayonnaise","mayor","mayoral","mayoralty","mayoress","mayorship","maypole","mayra","mayst","mazama","mazarin","mazatlan","mazda","maze","mazed","mazedness","mazurka","mazzini","mb","mba","mbabane","mbini","mbostock","mbp","mbuilder","mc","mcadam","mcallister","mcamera","mcbride","mccabe","mccain","mccall","mccarthy","mccarthyism","mccartney","mccarty","mccauley","mcclain","mcclellan","mcclure","mccluskey","mcconnell","mccormick","mccoy","mccracken","mccray","mccullough","mcdaniel","mcdermott","mcdonald","mcdonnell","mcdougall","mcdowell","mce","mcelhaney","mcenroe","mcfadden","mcfarland","mcgee","mcgill","mcgovern","mcgowan","mcgrath","mcgraw","mcgregor","mcguffey","mcguire","mci","mcintosh","mcintyre","mckay","mckee","mckenzie","mckesson","mckinley","mckinney","mcknight","mclanahan","mclaughlin","mclean","mcleod","mcluhan","mcmahon","mcmartin","mcmillan","mcnamara","mcnaughton","mcneil","mcontext","mcpherson","mcrypt","mcursor","md","mdash","mdata","mdb","mdc","mdf","mdi","mdl","mdm","mdn","mdpi","mdrawerlayout","mdse","mdt","me","mead","meade","meadow","meadowland","meadowlark","meadows","meadowsweet","meagan","meager","meagerness","meaghan","meagres","meal","mealiness","meals","mealtime","mealy","mealybug","mealymouthed","mean","meander","meaneing","meanie","meaning","meaningful","meaningfulness","meaningless","meaninglessness","meanings","meanness","means","meant","meantime","meanwhile","meany","meara","meas","measle","measles","measly","measurable","measurably","measure","measured","measureless","measurement","measurements","measurer","measures","measurespec","measuring","meat","meataxe","meatball","meatiness","meatless","meatloaf","meatloaves","meatpacking","meaty","mecca","mechanic","mechanical","mechanics","mechanism","mechanisms","mechanist","mechanistic","mechanistically","mechanization","mechanize","mechanized","mechanizer","mechanizes","mechanochemically","mechelle","med","medal","medalist","medallion","medan","meddle","meddlesome","medea","medellin","medfield","media","mediaelement","mediaeval","medial","medials","median","mediaplayer","mediarecorder","mediastore","mediate","mediateness","mediation","mediator","mediatype","mediawiki","medic","medicaid","medical","medicament","medicare","medicate","medication","medici","medicinal","medicine","medico","medieval","medievalist","medina","mediocre","mediocrity","meditate","meditation","meditative","meditativeness","mediterranean","medium","mediumistic","medley","medulla","medusa","meed","meek","meekness","meerschaum","meet","meeter","meeting","meetinghouse","meetings","meets","meetup","mef","meg","mega","megabit","megabuck","megabyte","megacycle","megadeath","megadeaths","megahertz","megalith","megalithic","megaliths","megalomania","megalomaniac","megalopolis","megan","megaphone","megaton","megavolt","megawatt","megaword","megen","meggi","meggie","meggy","meghan","meghann","megohm","mehetabel","mei","meier","meighen","meiji","meioses","meiosis","meiotic","meir","meister","meistersinger","mejia","mekong","mel","mela","melamie","melamine","melancholia","melancholic","melancholy","melanesia","melanesian","melange","melania","melanie","melanin","melanoma","melantha","melany","melba","melbourne","melcher","melchior","meld","melendez","melesa","melessa","melicent","melina","melinda","melinde","meliorate","melioration","melisa","melisande","melisandra","melisenda","melisent","melissa","melisse","melita","melitta","mella","melli","mellicent","mellie","mellifluous","mellifluousness","mellisa","mellisent","mellon","melloney","mellow","mellowness","melly","melodee","melodic","melodically","melodie","melodious","melodiousness","melodrama","melodramatic","melodramatically","melody","melon","melonie","melony","melosa","melpomene","melt","meltdown","melter","melting","melton","melva","melville","melvin","melvyn","mem","member","membered","memberid","members","membership","memberships","membrane","membranous","memcache","memcached","memcpy","memento","memling","memo","memoir","memorabilia","memorability","memorable","memorableness","memorably","memorandum","memorial","memorialize","memorialized","memoriam","memorization","memorize","memorized","memorizer","memorizes","memory","memoryless","memorystream","memphis","memset","men","menace","menacing","menage","menagerie","menander","menarche","menard","mencius","mencken","mend","mendacious","mendaciousness","mendacity","mendel","mendeleev","mendelevium","mendelian","mendelssohn","mender","mendez","mendicancy","mendicant","mendie","mending","mendocino","mendoza","mendy","menelaus","menes","menfolk","menhaden","menial","meningeal","meninges","meningitides","meningitis","meninx","menisci","meniscus","menkalinan","menkar","menkent","menlo","mennonite","menominee","menopausal","menopause","menorah","menorahs","menotti","mens","mensa","mensch","menservants","menstrual","menstruate","menstruation","mensurable","mensuration","menswear","mental","mentalist","mentality","menthol","mentholated","mention","mentionable","mentioned","mentioner","mentioning","mentions","mentor","menu","menubar","menuhin","menuinflater","menuitem","menuitems","menus","menzies","meow","mephistopheles","mer","merak","mercado","mercantile","mercator","mercedes","mercenariness","mercenary","mercer","mercerize","merchandise","merchandiser","merchant","merchantability","merchantman","merchantmen","merci","mercie","merciful","mercifully","mercifulness","merciless","mercilessness","merck","mercurial","mercuric","mercury","mercy","mere","meredeth","meredith","meredithe","merell","merely","meretricious","meretriciousness","merganser","merge","merged","merger","merges","mergesort","merging","meridel","meridian","meridional","meridith","meriel","merilee","merill","merilyn","meringue","merino","meris","merissa","merit","merited","meritocracy","meritocratic","meritocrats","meritorious","meritoriousness","meriwether","merl","merla","merle","merlin","merlina","merline","mermaid","merman","mermen","merna","merola","meromorphic","merralee","merrel","merriam","merrick","merridie","merrie","merrielle","merrile","merrilee","merrili","merrill","merrily","merrimac","merrimack","merriment","merriness","merritt","merry","merrymaker","merrymaking","mersey","merton","merv","mervin","merwin","merwyn","meryl","mes","mesa","mesabi","mescal","mescaline","mesdames","mesdemoiselles","mesh","meshed","meshgrid","mesmeric","mesmerism","mesmerize","mesmerized","mesmerizer","mesolithic","mesomorph","mesomorphs","meson","mesopotamia","mesopotamian","mesos","mesosphere","mesozoic","mesquite","mess","message","messagebox","messageboxbuttons","messageboxicon","messagedigest","messageid","messagequeue","messages","messagetype","messaging","messed","messeigneurs","messenger","messerschmidt","messes","messiaen","messiah","messiahs","messianic","messieurs","messily","messiness","messing","messmate","messrs","messy","mestizo","met","meta","metabolic","metabolically","metabolism","metabolite","metabolize","metacarpal","metacarpi","metacarpus","metacircular","metacircularity","metaclass","metacpan","metadata","metal","metalanguage","metalization","metalized","metallic","metalliferous","metallings","metallography","metalloid","metallurgic","metallurgical","metallurgist","metallurgy","metalsmith","metalwork","metalworking","metamathematical","metamorphic","metamorphism","metamorphose","metamorphosis","metaphor","metaphoric","metaphorical","metaphosphate","metaphysic","metaphysical","metastability","metastable","metastases","metastasis","metastasize","metastatic","metastore","metatarsal","metatarsi","metatarsus","metatheses","metathesis","metathesized","metathesizes","metathesizing","metavariable","mete","metempsychoses","metempsychosis","meteor","meteoric","meteorically","meteorite","meteoritic","meteoritics","meteoroid","meteorologic","meteorological","meteorologist","meteorology","meter","meters","meth","methadone","methane","methanol","methinks","methionine","method","methodandargscaller","methodical","methodicalness","methodinfo","methodism","methodist","methodname","methodological","methodologists","methodology","methods","methought","methuen","methuselah","methuselahs","methyl","methylated","methylene","meticulous","meticulousness","metonymy","metrecal","metric","metrical","metricate","metricize","metrics","metro","metronome","metropolis","metropolitan","metropolitanization","mets","metternich","mettle","mettlesome","metus","metzler","meuse","mew","mewl","mews","mex","mexicali","mexican","mexico","meyer","meyerbeer","mezzanine","mezzo","mf","mfa","mfc","mfg","mfr","mg","mgm","mgmt","mgr","mh","mhandler","mhz","mi","mia","miami","miaplacidus","miasma","miasmal","mib","mic","mica","micaela","micah","mice","micelles","mich","michael","michaela","michaelangelo","michaelina","michaeline","michaella","michaelmas","michaelson","michail","michal","michale","micheal","micheil","michel","michelangelo","michele","michelin","michelina","micheline","michell","michelle","michelson","michigan","michigander","michiganite","mick","mickelson","mickey","micki","mickie","micky","micmac","micra","micro","microamp","microanalysis","microanalytic","microbe","microbial","microbicidal","microbicide","microbiological","microbiologist","microbiology","microbrewery","microchemistry","microchip","microcircuit","microcode","microcomputer","microcosm","microcosmic","microdensitometer","microdot","microeconomic","microeconomics","microelectronic","microelectronics","microfiber","microfiche","microfilm","microfossils","micrography","microgroove","microhydrodynamics","microinstruction","microjoule","microlevel","microlight","micromanage","micromanagement","micrometeorite","micrometeoritic","micrometer","micron","micronesia","micronesian","microorganism","microphone","microport","microprocessing","microprocessor","microprogram","microprogrammed","microprogramming","micros","microscope","microscopic","microscopical","microscopy","microsecond","microseconds","microservice","microservices","microsimulation","microsoft","microsomal","microstore","microsurgery","microsystems","microtime","microvax","microvaxes","microvolt","microwave","microwaveable","microword","mid","midair","midas","midband","midday","midden","middest","middle","middlebrow","middlebury","middleman","middlemen","middlemost","middlename","middlesex","middleton","middletown","middleware","middleweight","middling","middy","mideast","mideastern","midfield","midge","midget","midi","midland","midlife","midlives","midmorn","midmost","midnight","midpoint","midrange","midrib","midriff","midscale","midsection","midship","midshipman","midshipmen","midspan","midst","midstream","midsummer","midterm","midtown","midway","midweek","midwest","midwestern","midwesterner","midwicket","midwife","midwifery","midwinter","midwives","midyear","mien","miff","mig","might","mightily","mightiness","mightn","mighty","mignon","mignonette","mignonne","migr","migraine","migrant","migrate","migrated","migrating","migration","migrations","migrative","migratory","miguel","miguela","miguelita","mikado","mikael","mikaela","mike","mikel","mikey","mikhail","mikkel","mikol","mikoyan","mil","milady","milagros","milan","milanese","milch","mild","mildew","mildness","mildred","mildrid","mile","mileage","milena","milepost","miler","miles","milestone","milford","milicent","milieu","milissent","militancy","militant","militantness","militarily","militarism","militarist","militaristic","militarization","militarize","military","militate","militia","militiaman","militiamen","milk","milka","milken","milker","milkiness","milkmaid","milkman","milkmen","milkshake","milksop","milkweed","milky","mill","millage","millard","millay","millenarian","millenarianism","millennial","millennialism","millennium","millepede","miller","millet","milli","milliamp","milliampere","milliard","millibar","millicent","millidegree","millie","milligram","millijoule","millikan","milliliter","millimeter","milliner","millinery","milling","million","millionaire","millions","millionth","millionths","millipede","millis","millisecond","milliseconds","millisent","millivolt","millivoltmeter","milliwatt","millpond","millrace","millstone","millstream","millwright","milly","milne","milo","milquetoast","milt","miltiades","miltie","milton","miltonic","miltown","milty","milwaukee","milzie","mimd","mime","mimemessage","mimeograph","mimeographs","mimer","mimesis","mimetic","mimetically","mimetype","mimi","mimic","mimicked","mimicker","mimicking","mimicry","mimosa","min","mina","minaret","minatory","mince","mincemeat","mincer","mincing","mind","minda","mindanao","mindate","mindbogglingly","minded","minder","mindful","mindfully","mindfulness","mindless","mindlessness","mindoro","minds","mindset","mindy","mine","minecraft","minefield","miner","mineral","mineralization","mineralized","mineralogical","mineralogist","mineralogy","minerva","mineshaft","minestrone","minesweeper","minetta","minette","mineworkers","minflater","ming","mingle","mingus","mingw","minheight","mini","miniature","miniaturist","miniaturization","miniaturize","minibike","minibus","minicab","minicam","minicomputer","miniconda","minidress","minified","minify","minifyenabled","minim","minima","minimal","minimalism","minimalist","minimalistic","minimality","minimax","minimization","minimize","minimized","minimizer","minimum","mining","minion","miniseries","miniskirt","minister","ministerial","ministrant","ministration","ministry","minivan","miniver","mink","minke","minlength","minn","minna","minnaminnie","minne","minneapolis","minnesinger","minnesota","minnesotan","minni","minnie","minnnie","minnow","minny","minoan","minoccurs","minolta","minor","minority","minos","minot","minotaur","minoxidil","mins","minsdkversion","minsk","minsky","minster","minstrel","minstrelsy","mint","minta","mintage","mintaka","minter","minty","minuend","minuet","minuit","minus","minuscule","minute","minuteman","minutemen","minuteness","minutes","minutia","minutiae","minvalue","minwidth","minx","miny","miocene","mipmap","mips","miquela","mir","mira","mirabeau","mirabel","mirabella","mirabelle","mirach","miracle","miraculous","miraculousness","mirage","miran","miranda","mire","mireielle","mireille","mirella","mirelle","mirfak","miriam","mirilla","mirna","miro","mirror","mirrors","mirth","mirthful","mirthfulness","mirthless","mirthlessness","mirths","mirv","miry","mirzam","mis","misaddress","misadventure","misalign","misalignment","misalliance","misanalysed","misanthrope","misanthropic","misanthropically","misanthropist","misanthropy","misapplier","misapply","misapprehend","misapprehension","misappropriate","misbegotten","misbehave","misbehaver","misbehavior","misbrand","misc","miscalculate","miscalculation","miscall","miscarriage","miscarry","miscast","miscegenation","miscellanea","miscellaneous","miscellany","mischa","mischance","mischief","mischievous","mischievousness","miscibility","miscible","misclassification","misclassified","misclassifying","miscode","miscommunicate","miscomprehended","misconceive","misconception","misconduct","misconfiguration","misconstruction","misconstrue","miscopying","miscount","miscreant","miscue","misdeal","misdealt","misdeed","misdemeanant","misdemeanor","misdiagnose","misdid","misdirect","misdirection","misdirector","misdo","misdoes","misdone","miser","miserable","miserableness","miserably","miserliness","miserly","misery","mises","misfeasance","misfeature","misfield","misfile","misfire","misfit","misfitted","misfitting","misfortune","misgauge","misgiving","misgovern","misgovernment","misguidance","misguide","misguided","misguidedness","misguider","misha","mishandle","mishap","mishapped","mishapping","mishear","misheard","mishitting","mishmash","misidentification","misidentify","misinform","misinformation","misinterpret","misinterpretation","misinterpreter","misjudge","misjudging","misjudgment","miskito","mislabel","mislaid","mislay","mislead","misleader","misleading","misled","mismanage","mismanagement","mismatch","misname","misnomer","misogamist","misogamy","misogynist","misogynistic","misogynous","misogyny","misperceive","misplace","misplacement","misplay","mispositioned","misprint","misprision","mispronounce","mispronunciation","misquotation","misquote","misread","misreader","misrelated","misremember","misreport","misrepresent","misrepresentation","misrepresenter","misroute","misrule","miss","missal","missed","misses","misshape","misshapen","misshapenness","missie","missile","missilery","missing","mission","missionary","missioned","missioner","missioning","missis","mississauga","mississippi","mississippian","missive","missoula","missouri","missourian","misspeak","misspecification","misspecified","misspell","misspelling","misspend","misspent","misspoke","misspoken","misstate","misstatement","misstater","misstep","misstepped","misstepping","missus","missy","mist","mistakable","mistake","mistaken","mistaker","mistakes","mistaking","mistassini","mister","misti","mistily","mistime","mistiness","mistletoe","mistook","mistral","mistranslated","mistranslates","mistranslating","mistranslation","mistreat","mistreatment","mistress","mistrial","mistrust","mistruster","mistrustful","misty","mistype","misunderstand","misunderstander","misunderstanding","misunderstood","misuse","misuser","miswritten","mit","mitch","mitchael","mitchel","mitchell","mite","miter","miterer","mitford","mithra","mithridates","mitigate","mitigated","mitigation","mitoses","mitosis","mitotic","mitre","mitsubishi","mitt","mitten","mitterrand","mitty","mitzi","mitzvahs","mix","mixable","mixed","mixer","mixin","mixing","mixins","mixture","mizar","mizzen","mizzenmast","mj","mk","mkdir","mkdirs","mkl","mkmapview","mks","mktime","mkyong","ml","mle","mlist","mlistener","mlle","mm","mmap","mme","mmm","mmmm","mms","mmsc","mn","mname","mnchhausen","mnemonic","mnemonically","mnemonics","mnemosyne","mnist","mno","mnt","mo","moan","moat","mob","mobbed","mobber","mobbing","mobcap","mobil","mobile","mobility","mobilizable","mobilization","mobilize","mobilized","mobilizer","mobilizes","mobster","mobutu","moc","moccasin","mocha","mock","mocked","mockers","mockery","mocking","mockingbird","mockito","mocks","mod","modal","modality","modals","mode","model","modeladmin","modelandview","modelattribute","modelbuilder","modeled","modeler","modelform","modeling","modelitem","modelling","modelname","models","modelserializer","modelstate","modelversion","modelview","modem","moderate","moderated","moderateness","moderation","moderator","modern","modernism","modernist","modernistic","modernity","modernization","modernize","modernized","modernizer","modernizes","modernizr","modernness","modes","modest","modesta","modestia","modestine","modesto","modesty","modicum","modifiability","modifiable","modifiableness","modification","modifications","modified","modifier","modifiers","modifies","modify","modifying","modigliani","modish","modishness","mods","modula","modular","modularity","modularization","modularize","modulate","modulation","modulator","module","moduleid","modulename","modules","moduli","modulo","modulus","modus","moe","moen","mogadiscio","mogadishu","mogul","mohair","mohamed","mohammad","mohammed","mohammedan","mohammedanism","mohandas","mohandis","mohawk","mohegan","mohican","moho","mohorovicic","mohr","moiety","moil","moina","moines","moira","moire","moise","moiseyev","moishe","moist","moisten","moistener","moistness","moisture","moisturize","mojave","mojo","mojoexecutor","molal","molar","molarity","molasses","mold","moldavia","moldavian","moldboard","molder","moldiness","molding","moldova","moldy","mole","molecular","molecularity","molecule","molehill","moleskin","molest","molestation","molested","molester","molestie","moliere","molina","moline","moll","mollee","molli","mollie","mollification","mollify","mollis","mollusc","mollusk","molly","mollycoddle","mollycoddler","molnar","moloch","molokai","molotov","molt","molter","moluccas","molybdenite","molybdenum","mom","mombasa","moment","momenta","momentarily","momentariness","momentary","momentjs","momentous","momentousness","moments","momentum","momma","mommy","mon","mona","monaco","monad","monadic","monads","monah","monarch","monarchic","monarchical","monarchism","monarchist","monarchistic","monarchs","monarchy","monash","monastery","monastic","monastical","monasticism","monaural","mondale","monday","mondrian","monegasque","monera","monet","monetarily","monetarism","monetarist","monetary","monetization","monetize","money","moneybag","moneychangers","moneyer","moneylender","moneymaker","moneymaking","monfort","monger","mongo","mongoclient","mongod","mongodb","mongoid","mongol","mongolia","mongolian","mongolic","mongolism","mongoloid","mongoose","mongrel","monica","monies","monika","moniker","monique","monism","monist","monition","monitor","monitored","monitoring","monitors","monitory","monk","monkey","monkeyshine","monkish","monkshood","monmouth","mono","monobehaviour","monochromatic","monochromator","monochrome","monocle","monoclinic","monoclonal","monocotyledon","monocotyledonous","monocular","monodevelop","monodic","monodist","monody","monogamist","monogamous","monogamy","monogram","monogrammed","monogramming","monograph","monographs","monolingual","monolingualism","monolith","monolithic","monolithically","monoliths","monologist","monologue","monomania","monomaniac","monomaniacal","monomer","monomeric","monomial","monongahela","mononuclear","mononucleoses","mononucleosis","monophonic","monoplane","monopole","monopolist","monopolistic","monopolization","monopolize","monopolized","monopolizes","monopoly","monorail","monospace","monostable","monosyllabic","monosyllable","monotheism","monotheist","monotheistic","monotone","monotonic","monotonically","monotonicity","monotonous","monotonousness","monotony","monotouch","monovalent","monoxide","monro","monroe","monrovia","monsanto","monseigneur","monsieur","monsignor","monsignori","monsoon","monsoonal","monster","monstrance","monstrosity","monstrous","monstrousness","mont","montage","montague","montaigne","montana","montanan","montcalm","montclair","monte","montenegrin","montenegro","monterey","monterrey","montesquieu","montessori","monteverdi","montevideo","montezuma","montgomery","month","monthly","months","monti","monticello","montmartre","montoya","montpelier","montrachet","montreal","montserrat","monty","monument","monumental","monumentality","moo","mooch","mood","moodily","moodiness","moodle","moody","moog","moon","moonbeam","mooney","moonless","moonlight","moonlighting","moonlit","moonscape","moonshine","moonshiner","moonshot","moonstone","moonstruck","moonwalk","moor","moore","mooring","moorish","moorland","moose","moot","mootools","mop","mope","moped","moper","mopey","mopier","mopiest","mopish","mopped","moppet","mopping","moq","mora","moraine","moral","morale","morales","moralist","moralistic","moralistically","morality","moralization","moralize","moralled","moraller","moralling","moran","morass","moratorium","moravia","moravian","moray","morbi","morbid","morbidity","morbidness","mord","mordancy","mordant","mordecai","mordred","mordy","more","moreen","morehouse","morel","moreland","morena","moreno","moreover","morey","morgan","morgana","morganica","morganne","morgen","morgue","morgun","moria","moriarty","moribund","moribundity","morie","morin","morion","morison","morissa","morita","moritz","morlee","morley","morly","mormon","mormonism","morn","morna","morning","moro","moroccan","morocco","moron","moroni","moronic","moronically","morose","moroseness","morph","morpheme","morphemic","morpheus","morphia","morphine","morphism","morphologic","morphological","morphology","morphophonemic","morphophonemics","morphs","morrie","morris","morrison","morristown","morrow","morry","morse","morsel","mort","mortal","mortality","mortar","mortarboard","mortbay","morten","mortgage","mortgageable","mortgagee","mortgagor","mortice","mortician","mortie","mortification","mortified","mortifier","mortify","mortimer","mortise","morton","mortuary","morty","mos","mosaic","mosaicked","mosaicking","moscone","moscow","mose","moseley","moselle","moser","mosey","moshe","moslem","mosley","mosque","mosquito","mosquitoes","moss","mossback","mossberg","mossy","most","mostly","mosul","mot","mote","motel","motet","moth","mothball","mother","motherboard","motherfucker","motherfucking","motherhood","mothering","motherland","motherless","motherliness","motherly","moths","motif","motile","motility","motion","motional","motioner","motionevent","motionless","motionlessness","motions","motivate","motivated","motivation","motivational","motivator","motive","motiveless","motley","motlier","motliest","motocross","motor","motorbike","motorboat","motorcade","motorcar","motorcycle","motorcyclist","motoring","motorist","motorization","motorize","motorized","motorman","motormen","motormouth","motormouths","motorola","motorway","motown","mott","mottle","mottler","motto","mottoes","moue","moulder","moult","mound","mount","mountable","mountain","mountaineer","mountaineering","mountainous","mountainousness","mountainside","mountaintop","mountbatten","mountebank","mounted","mounter","mountie","mounties","mounting","mounts","mourn","mourner","mournful","mournfuller","mournfullest","mournfulness","mourning","mouse","mousedown","mouseenter","mouseevent","mouseeventargs","mouseleave","mousemove","mouseout","mouseover","mouser","mousetrap","mousetrapped","mousetrapping","mouseup","mousewheel","mousex","mousey","mousiness","mousing","mousse","moussorgsky","mousy","mouth","mouthe","mouthful","mouthiness","mouthorgan","mouthpiece","mouths","mouthwash","mouthwatering","mouthy","mouton","mov","movable","movableness","move","moved","movement","movements","movenext","mover","moves","moveto","movetofirst","movetonext","movie","movieclip","moviegoer","movieid","movies","moving","movl","movq","mow","mower","mowgli","mowing","moxie","moyer","moyna","moyra","moz","mozambican","mozambique","mozart","mozelle","mozes","mozilla","mozzarella","mp","mpaint","mpdf","mpeg","mpg","mph","mpi","mpl","mplayer","mq","mqtt","mr","mrecyclerview","mri","mrs","ms","msb","msbuild","msc","mscorlib","msdn","mse","msec","msft","msg","msgbox","msgid","msgr","msgs","msi","msie","msil","msmq","mso","msp","mssql","mst","msvc","msw","msxml","msys","mt","mtcars","mtg","mtge","mtier","mtime","mts","mtu","mtv","mu","muawiya","mubarak","much","muchness","mucilage","mucilaginous","muck","mucker","muckrake","muckraker","mucky","mucosa","mucous","mucus","mud","mudded","muddily","muddiness","mudding","muddle","muddlehead","muddleheaded","muddler","muddy","mudflat","mudguard","mudlarks","mudroom","mudslide","mudsling","mudslinger","mudslinging","mueller","muenster","muesli","muezzin","muff","muffin","muffle","muffler","mufi","mufinella","mufti","mug","mugabe","mugged","mugger","mugginess","mugging","muggy","mugshot","mugwump","muhammad","muhammadan","muhammadanism","muir","muire","mukden","mukluk","mul","mulatto","mulattoes","mulberry","mulch","mulct","mulder","mule","muleskinner","mulesoft","muleteer","mulish","mulishness","mull","mullah","mullahs","mullein","mullen","muller","mullet","mulligan","mulligatawny","mullikan","mullins","mullion","mult","multan","multer","multi","multibus","multicast","multicellular","multichannel","multicollinearity","multicolor","multicolumn","multicomponent","multicomputer","multics","multicultural","multiculturalism","multidex","multidimensional","multidimensionality","multidisciplinary","multifaceted","multifamily","multifarious","multifariousness","multifigure","multiform","multifunction","multiindex","multilateral","multilayer","multilevel","multiline","multilingual","multilingualism","multimap","multimedia","multimegaton","multimeter","multimillionaire","multinational","multinomial","multipart","multiphase","multiple","multiples","multiplet","multiplex","multiplexor","multipliable","multiplicand","multiplication","multiplicative","multiplicity","multiplied","multiplier","multiply","multiplying","multiprocess","multiprocessing","multiprocessor","multiprogram","multiprogrammed","multiprogramming","multipurpose","multiracial","multiselect","multistage","multistory","multisyllabic","multitasking","multithreaded","multithreading","multitude","multitudinous","multitudinousness","multiuser","multivalent","multivalued","multivariate","multiversity","multiviews","multivitamin","mum","mumble","mumbler","mumbletypeg","mumford","mummed","mummer","mummery","mummification","mummify","mumming","mummy","mumps","mun","munch","muncher","munchies","muncie","mundane","mundt","munge","munich","municipal","municipality","munificence","munificent","munition","munmro","munoz","munro","munroe","munsey","munson","munster","muon","muong","muppet","mural","muralist","murasaki","murat","murchison","murcia","murder","murderer","murderess","murderous","murderousness","murdoch","murdock","mureil","murial","muriatic","muriel","murielle","murillo","murk","murkily","murkiness","murky","murmansk","murmur","murmurer","murmuring","murmurous","murphy","murrain","murray","murrow","murrumbidgee","murry","murvyn","mus","muscat","muscatel","muscle","musclebound","muscovite","muscovy","muscular","muscularity","musculature","muse","muser","musette","museum","mush","musher","mushiness","mushroom","mushy","musial","music","musical","musicale","musicality","musicals","musician","musicianship","musicked","musicking","musicological","musicologist","musicology","musing","musk","muskeg","muskegon","muskellunge","musket","musketeer","musketry","muskie","muskiness","muskmelon","muskox","muskrat","musky","muslim","muslin","muss","mussel","mussolini","mussorgsky","mussy","must","mustache","mustachio","mustang","mustard","muster","mustily","mustiness","mustn","musty","mut","mutability","mutable","mutableness","mutably","mutagen","mutant","mutate","mutating","mutation","mutational","mutations","mutator","mute","muted","muteness","mutex","mutilate","mutilation","mutilator","mutineer","mutinous","mutiny","mutsuhito","mutt","mutter","mutterer","mutton","muttonchops","mutual","mutuality","mutually","muumuu","mux","muzak","muzo","muzzle","muzzled","muzzler","mv","mvc","mview","mviewpager","mvn","mvnrepository","mvp","mvvm","mvvmcross","mw","mwebview","mx","mxml","my","myaction","myactivity","myadapter","myanmar","myapp","myapplication","myarr","myarray","mybase","mybatis","mybean","mybutton","myca","mycah","mycanvas","mycarousel","mycell","mycenae","mycenaean","mychal","mychart","myclass","mycollection","mycologist","mycology","mycommand","mycompany","mycomponent","myconnection","mycontext","mycontrol","mycontroller","myctrl","mydata","mydatabase","mydate","mydb","mydf","mydict","mydir","mydiv","mydomain","myelement","myelitides","myelitis","myemail","myentity","myenum","myer","myers","myevent","myfaces","myfield","myfile","myfolder","myform","myfragment","myframe","myfunc","myfunction","mygrid","myhost","myid","myimage","myinput","myint","myintent","myinterface","myisam","myitem","myjson","mykey","mylabel","mylar","myles","mylib","mylist","mylo","mymap","mymethod","mymodal","mymodel","mymodule","myna","myname","mynamespace","mynheer","mynumber","myobj","myobject","myocardial","myocardium","myopia","myopic","myopically","myoptions","mypackage","mypage","mypanel","mypassword","mypath","myplugin","myprogram","myproject","myproperty","myra","myrah","myranda","myrange","myrdal","myreader","myriad","myriam","myrilla","myrle","myrlene","myrmidon","myrna","myron","myrow","myrrh","myrrhs","myrta","myrtia","myrtice","myrtie","myrtle","myrvyn","myrwyn","mys","myscript","myselect","myself","myserver","myservice","mysite","mysore","mysql","mysqlclient","mysqlcommand","mysqlconnection","mysqld","mysqldb","mysqldump","mysqli","mysqlio","myst","mysterious","mysteriousness","mystery","mystic","mystical","mysticism","mystification","mystifier","mystify","mystifying","mystique","mystr","mystring","mystruct","mytable","mytask","mytest","mytext","myth","mythic","mythical","mythographer","mythography","mythological","mythologist","mythologize","mythology","mythread","myths","mytimer","mytype","myurl","myuser","myusername","myval","myvalue","myvar","myvariable","myvector","myview","myviewcontroller","myviewholder","myviewmodel","mywebsite","mywebview","mywindow","mz","n","na","naacp","naam","nab","nabbed","nabbing","nabble","nabisco","nabob","nabokov","nacelle","nacho","nacl","nacre","nacreous","nada","nadean","nadeen","nader","nadia","nadine","nadir","nadiya","nady","nadya","nae","nag","nagasaki","nagged","nagger","nagging","nagios","nagoya","nagpur","nagy","nahuatl","nahum","naiad","naifs","nail","nailbrush","nailer","naipaul","nair","nairobi","naismith","naive","naivet","naivety","nakamura","nakayama","naked","nakedness","nakoma","nalani","nam","nama","namath","name","nameable","named","namedrop","namedropping","nameerror","nameless","namelist","namely","namenode","nameof","nameplate","namer","names","namesake","namespace","namespaces","namevaluepair","namevaluepairs","namibia","namibian","naming","nan","nana","nanak","nananne","nance","nancee","nancey","nanchang","nanci","nancie","nancy","nanete","nanette","nani","nanice","nanine","nanjing","nanking","nannette","nanni","nannie","nanny","nano","nanometer","nanon","nanook","nanosecond","nanoseconds","nanotime","nansen","nantes","nantucket","naoma","naomi","nap","napalm","nape","naphtali","naphtha","naphthalene","napier","napkin","naples","napless","napoleon","napoleonic","napped","napper","nappie","napping","nappy","nara","narbonne","narc","narcissism","narcissist","narcissistic","narcissus","narcoleptic","narcoses","narcosis","narcotic","narcotization","narcotize","nari","nariko","nark","narmada","narragansett","narrate","narration","narrative","narratology","narrator","narrow","narrowed","narrowing","narrowness","narwhal","nary","nas","nasa","nasal","nasality","nasalization","nasalize","nascence","nascent","nasdaq","nash","nashua","nashville","nasm","nassau","nasser","nastily","nastiness","nasturtium","nasty","nat","nata","natal","natala","natale","natalee","natalia","natalie","natalina","nataline","natalist","natality","natalya","nataniel","natasha","natassia","natch","natchez","nate","nathalia","nathalie","nathan","nathanael","nathanial","nathaniel","nathanil","nation","national","nationalism","nationalist","nationalistic","nationalistically","nationality","nationalization","nationalize","nationalized","nationalizer","nationhood","nations","nationwide","native","nativeconstructoraccessorimpl","nativeelement","natively","nativemethodaccessorimpl","nativeness","nativescript","nativestart","natividad","nativity","natka","natl","nato","natter","nattily","nattiness","natty","natural","naturalism","naturalist","naturalistic","naturalization","naturalize","naturalized","naturally","naturalness","naturals","nature","naturist","naugahyde","naught","naughtily","naughtiness","naughty","naur","nauru","nausea","nauseate","nauseating","nauseous","nauseousness","nautical","nautilus","nav","navaho","navajo","navajoes","naval","navarro","navbar","navcontroller","nave","navel","navigability","navigable","navigableness","navigate","navigated","navigates","navigating","navigation","navigational","navigationbar","navigationcontroller","navigationitem","navigationview","navigator","navona","navratilova","navvy","navy","nay","naysayer","nazarene","nazareth","nazi","nazism","nb","nba","nbc","nbr","nbs","nbsp","nc","ncaa","ncc","nchar","nco","ncol","ncols","ncr","ncurses","nd","ndarray","ndb","ndjamena","ndk","ne","neal","neala","neale","neall","nealon","nealson","nealy","neanderthal","neap","neapolitan","near","nearby","nearest","nearly","nearness","nearside","nearsighted","nearsightedness","neat","neaten","neath","neatness","neb","nebr","nebraska","nebraskan","nebuchadnezzar","nebula","nebulae","nebular","nebulous","nebulousness","nec","necessaries","necessarily","necessary","necessitate","necessitation","necessitous","necessity","neck","neckband","neckerchief","necking","necklace","neckline","necktie","necrology","necromancer","necromancy","necromantic","necrophilia","necrophiliac","necropolis","necropsy","necroses","necrosis","necrotic","nectar","nectarine","nectarous","nectary","ned","neda","nedda","neddie","neddy","nedi","need","needed","needer","needful","needham","neediness","needing","needle","needlecraft","needlepoint","needless","needlessness","needlewoman","needlewomen","needlework","needn","needs","needy","neel","neely","nefarious","nefariousness","nefen","nefertiti","neg","negate","negated","negater","negation","negative","negativeness","negativism","negativity","negator","negev","neglect","neglecter","neglectful","neglectfulness","negligee","negligence","negligent","negligibility","negligible","negligibly","negotiability","negotiable","negotiant","negotiate","negotiation","negotiator","negress","negritude","negro","negroes","negroid","nehemiah","nehru","neigh","neighbor","neighbored","neighborer","neighborhood","neighborliness","neighborlinesses","neighborly","neighbors","neighbours","neighs","neil","neila","neile","neill","neilla","neille","neither","nelda","nelia","nelie","nell","nelle","nelli","nellie","nelly","nels","nelsen","nelson","nematic","nematode","nembutal","nemeses","nemesis","nenter","neo","neoclassic","neoclassical","neoclassicism","neocolonialism","neocortex","neodymium","neogene","neolithic","neologism","neomycin","neon","neonatal","neonate","neophyte","neoplasm","neoplastic","neoprene","nepal","nepalese","nepali","nepenthe","nephew","nephrite","nephritic","nephritides","nephritis","nepotism","nepotist","neptune","neptunium","neque","nerd","nerdy","nereid","nerf","nerissa","nerita","nero","neron","nert","nerta","nerte","nerti","nertie","nerty","neruda","nerve","nerveless","nervelessness","nerviness","nerving","nervous","nervousness","nervy","nessa","nessi","nessie","nessy","nest","nesta","nested","nestedscrollview","nester","nesting","nestle","nestler","nestling","nestor","nestorius","net","netball","netbeans","netflix","netframework","nether","netherlander","netherlands","nethermost","netherworld","netscape","netstat","nett","netta","netti","nettie","netting","nettle","nettlesome","netty","network","networkcredential","networkinfo","networking","networks","networkstream","networkx","netzahualcoyotl","neue","neumann","neural","neuralgia","neuralgic","neurasthenia","neurasthenic","neuritic","neuritides","neuritis","neuroanatomy","neurobiology","neurological","neurologist","neurology","neuromuscular","neuron","neuronal","neurone","neurons","neuropathology","neurophysiology","neuropsychiatric","neuroses","neurosis","neurosurgeon","neurosurgery","neurotic","neurotically","neurotransmitter","neut","neuter","neutral","neutralise","neutralism","neutralist","neutrality","neutralization","neutralize","neutralized","neutrino","neutron","nev","neva","nevada","nevadan","nevadian","never","nevermore","nevertheless","nevi","nevil","nevile","neville","nevin","nevis","nevsa","nevsky","nevus","new","newark","newarr","newarray","newbie","newborn","newbury","newburyport","newcastle","newcomer","newdata","newdate","newdiv","newed","newel","newell","newer","newest","newfangled","newfile","newfound","newfoundland","newfoundlander","newguid","newheight","newid","newimage","newinstance","newish","newitem","newline","newlines","newlist","newly","newlywed","newman","newname","newness","newnode","newobj","newobject","newpage","newpassword","newpath","newport","newrelic","newrow","news","newsagent","newsboy","newscast","newscaster","newscasting","newsdealer","newsed","newses","newsflash","newsgirl","newsgroup","newsing","newsize","newsletter","newsman","newsmen","newspaper","newspaperman","newspapermen","newspaperwoman","newspaperwomen","newsprint","newsreader","newsreel","newsroom","newsstand","newstate","newstr","newstring","newsweek","newsweekly","newswire","newswoman","newswomen","newsworthiness","newsworthy","newsy","newt","newtab","newtext","newton","newtonian","newtonsoft","newurl","newuser","newval","newvalue","newversion","newwidth","newx","nexis","next","nextdouble","nextint","nextline","nextpage","nextprops","nexttoken","nextval","nexus","neysa","nf","nfc","nfl","nfs","ng","ngaliema","ngclass","ngfor","ngif","nginx","ngmodel","ngmodule","ngoninit","ngram","ngroute","ngstrm","nguyen","ngx","nh","nhibernate","nhl","ni","niacin","niagara","nial","niall","niamey","nib","nibbed","nibbing","nibble","nibbler","nibelung","nibh","nic","nicaean","nicaragua","nicaraguan","niccolo","nice","nicely","nicene","niceness","nicer","nicety","niche","nichol","nicholas","nichole","nicholle","nicholson","nick","nickel","nickelodeon","nicker","nickey","nicki","nickie","nicklaus","nicknack","nickname","nicknamer","nicko","nickola","nickolai","nickolaus","nicky","nico","nicobar","nicodemus","nicol","nicola","nicolai","nicole","nicolea","nicolette","nicoli","nicolina","nicoline","nicolle","nicosia","nicotine","nid","niebuhr","niece","niel","niels","nielsen","nielson","nietzsche","nieves","nifi","nifty","nigel","niger","nigeria","nigerian","nigerien","niggard","niggardliness","niggardly","nigger","niggle","niggler","niggling","nigh","nighs","night","nightcap","nightclothes","nightclub","nightclubbed","nightclubbing","nightdress","nightfall","nightgown","nighthawk","nightie","nightingale","nightlife","nightlong","nightly","nightmare","nightmarish","nights","nightshade","nightshirt","nightspot","nightstand","nightstick","nighttime","nightwear","nighty","nih","nihilism","nihilist","nihilistic","nijinsky","nikaniki","nike","niki","nikita","nikki","nikkie","nikko","niko","nikola","nikolai","nikolaos","nikolaus","nikolayev","nikoletta","nikolia","nikolos","nikon","nil","nilclass","nile","nilled","nilling","nilpotent","nils","nilsen","nilson","nilsson","nimbi","nimble","nimbleness","nimbly","nimbus","nimby","nimitz","nimrod","nina","nincompoop","nine","ninefold","ninepence","ninepin","ninepins","nineteen","nineteenths","ninetieths","ninetta","ninette","ninety","nineveh","ninja","ninject","ninnetta","ninnette","ninny","ninon","nintendo","ninth","ninths","nio","niobe","niobium","nioendpoint","nip","nipped","nipper","nippiness","nipping","nipple","nippon","nipponese","nippy","nirenberg","nirvana","nisei","nisi","nisl","nissa","nissan","nisse","nissie","nissy","nit","nita","niter","nitpick","nitrate","nitration","nitric","nitride","nitriding","nitrification","nitrite","nitrocellulose","nitrogen","nitrogenous","nitroglycerin","nitrous","nitwit","niven","nix","nixer","nixie","nixon","nj","nk","nkrumah","nl","nlog","nlp","nlrb","nls","nltk","nm","nmap","nn","no","noaa","noach","noactionbar","noah","noak","noam","noami","nob","nobe","nobel","nobelist","nobelium","nobie","nobility","noble","nobleman","noblemen","nobleness","noblesse","noblewoman","noblewomen","nobody","noby","noclassdeffounderror","noconflict","nocount","nocturnal","nocturne","nod","nodal","nodded","nodding","noddle","noddy","node","nodeid","nodejs","nodelist","nodemon","nodename","nodes","nodetype","nodevalue","nodoz","nodular","nodule","noe","noel","noelani","noell","noella","noelle","noellyn","noelyn","noemi","noes","noexcept","nofollow","noggin","nohow","nohup","noise","noiseless","noiselessness","noisemake","noisemaker","noisily","noisiness","noisome","noisy","nokia","nokogiri","nola","nolan","nolana","noland","nolie","noll","nollie","nolly","nolock","nom","nomad","nomadic","nombre","nome","nomenclature","nomethoderror","nomi","nominal","nominalized","nominally","nominals","nominate","nomination","nominative","nominator","nominee","non","nona","nonabrasive","nonabsorbent","nonacademic","nonacceptance","nonacid","nonactive","nonadaptive","nonaddictive","nonadhesive","nonadjacent","nonadjustable","nonadministrative","nonage","nonagenarian","nonaggression","nonagricultural","nonah","nonalcoholic","nonaligned","nonalignment","nonallergic","nonappearance","nonassignable","nonathletic","nonatomic","nonattendance","nonautomotive","nonavailability","nonbasic","nonbeliever","nonbelligerent","nonblocking","nonbreakable","nonburnable","nonbusiness","noncaloric","noncancerous","noncarbohydrate","nonce","nonchalance","nonchalant","nonchargeable","nonclerical","nonclinical","noncollectable","noncom","noncombatant","noncombustible","noncommercial","noncommissioned","noncommittal","noncommunicable","noncompeting","noncompetitive","noncompliance","noncomplying","noncomprehending","nonconducting","nonconductor","nonconforming","nonconformist","nonconformity","nonconsecutive","nonconservative","nonconstructive","noncontagious","noncontiguous","noncontinuous","noncontributing","noncontributory","noncontroversial","nonconvertible","noncooperation","noncorroding","noncorrosive","noncredit","noncriminal","noncritical","noncrystalline","noncumulative","noncustodial","noncyclic","nondairy","nondecreasing","nondeductible","nondelivery","nondemocratic","nondenominational","nondepartmental","nondepreciating","nondescript","nondestructive","nondetachable","nondeterminacy","nondeterminate","nondeterminism","nondeterministic","nondeterministically","nondisciplinary","nondisclosure","nondiscrimination","nondiscriminatory","nondramatic","nondrinker","nondrying","nondurable","none","noneconomic","noneducational","noneffective","nonelastic","nonelectric","nonelectrical","nonemergency","nonempty","nonenforceable","nonentity","nonequivalence","nonequivalent","nones","nonessential","nonesuch","nonetheless","nonetype","nonevent","nonexchangeable","nonexclusive","nonexempt","nonexistence","nonexistent","nonexplosive","nonextensible","nonfactual","nonfading","nonfat","nonfatal","nonfattening","nonferrous","nonfiction","nonfictional","nonflammable","nonflowering","nonfluctuating","nonflying","nonfood","nonfreezing","nonfunctional","nongovernmental","nongranular","nonhazardous","nonhereditary","nonhuman","noni","nonidentical","nonie","noninclusive","nonindependent","nonindustrial","noninfectious","noninflammatory","noninflationary","noninflected","nonintellectual","noninteracting","noninterchangeable","noninterference","nonintervention","nonintoxicating","nonintuitive","noninvasive","nonionic","nonirritating","nonjudgmental","nonjudicial","nonlegal","nonlethal","nonlinear","nonlinearity","nonlinguistic","nonliterary","nonliving","nonlocal","nonmagical","nonmagnetic","nonmalignant","nonmember","nonmetal","nonmetallic","nonmigratory","nonmilitant","nonmilitary","nonna","nonnah","nonnarcotic","nonnative","nonnegative","nonnegotiable","nonnuclear","nonnull","nonnumerical","nonobjective","nonobligatory","nonobservance","nonobservant","nonoccupational","nonoccurence","nonofficial","nonogenarian","nonoperational","nonoperative","nonorthogonal","nonorthogonality","nonparallel","nonparametric","nonpareil","nonparticipant","nonparticipating","nonpartisan","nonpaying","nonpayment","nonperformance","nonperforming","nonperishable","nonperson","nonperturbing","nonphysical","nonplus","nonplussed","nonplussing","nonpoisonous","nonpolitical","nonpolluting","nonporous","nonpracticing","nonprejudicial","nonprescription","nonprocedural","nonproductive","nonprofessional","nonprofit","nonprogrammable","nonprogrammer","nonproliferation","nonpublic","nonpunishable","nonracial","nonradioactive","nonrandom","nonreactive","nonreciprocal","nonreciprocating","nonrecognition","nonrecoverable","nonrecurring","nonredeemable","nonreducing","nonrefillable","nonrefundable","nonreligious","nonrenewable","nonrepresentational","nonresident","nonresidential","nonresidual","nonresistance","nonresistant","nonrespondent","nonresponse","nonrestrictive","nonreturnable","nonrhythmic","nonrigid","nonsalaried","nonscheduled","nonscientific","nonscoring","nonseasonal","nonsectarian","nonsecular","nonsegregated","nonsense","nonsensical","nonsensicalness","nonsensitive","nonsexist","nonsexual","nonsingular","nonskid","nonslip","nonsmoker","nonsmoking","nonsocial","nonspeaking","nonspecialist","nonspecializing","nonspecific","nonspiritual","nonstaining","nonstandard","nonstarter","nonstick","nonstop","nonstrategic","nonstriking","nonstructural","nonsuccessive","nonsupervisory","nonsupport","nonsurgical","nonsustaining","nonsympathizer","nontarnishable","nontaxable","nontechnical","nontenured","nonterminal","nonterminating","nontermination","nontheatrical","nonthinking","nonthreatening","nontoxic","nontraditional","nontransferable","nontransparent","nontrivial","nontropical","nonuniform","nonunion","nonuser","nonvenomous","nonverbal","nonveteran","nonviable","nonviolence","nonviolent","nonvirulent","nonvocal","nonvocational","nonvolatile","nonvolunteer","nonvoter","nonvoting","nonwhite","nonworking","nonyielding","nonzero","noob","noodle","nook","noon","noonday","nooning","noontide","noontime","noop","noose","nop","nope","nor","nora","norad","noradrenalin","noradrenaline","norah","norbert","norberto","norbie","norby","nordhoff","nordic","nordstrom","norean","noredirect","noreen","noreferrer","norene","norfolk","norina","norine","norm","norma","normal","normalcy","normality","normalization","normalizations","normalize","normalized","normalizes","normally","normals","norman","normand","normandy","normative","normativeness","normie","normy","norplant","norri","norrie","norristown","norry","norse","norseman","norsemen","north","northampton","northbound","northeast","northeaster","northeastern","northeastward","norther","northerly","northern","northerner","northernmost","northfield","northing","northland","northmen","northrop","northrup","norths","northumberland","northward","northwest","northwester","northwestern","northwestward","norton","norw","norwalk","norway","norwegian","norwich","nos","noscript","nose","nosebag","nosebleed","nosecone","nosed","nosedive","nosegay","nosferatu","nosh","nosily","nosiness","nosing","nosql","nostalgia","nostalgic","nostalgically","nostradamus","nostrand","nostril","nostrud","nostrum","nosuchelementexception","nosuchmethoderror","nosy","not","notability","notable","notableness","notably","notarial","notarization","notarize","notary","notate","notation","notational","notative","notch","note","notebook","notebooks","noted","notedness","notempty","notepad","notepaper","notes","noteworthiness","noteworthy","notfound","nothing","nothingness","notice","noticeable","noticeably","noticeboard","noticed","notices","noticing","notif","notifiable","notification","notificationcompat","notificationmanager","notifications","notified","notifier","notify","notifydatasetchanged","notifypropertychanged","notimplementedexception","noting","notion","notional","notnull","notoriety","notorious","notoriousness","notre","nottingham","notwithstanding","nouakchott","nougat","noumea","noun","nourish","nourished","nourisher","nourishment","nous","nouveau","nouvelle","nov","nova","novae","novak","novalidate","novel","novelette","novelia","novelist","novelization","novelize","novell","novella","novelty","november","novena","novene","novgorod","novice","novitiate","novocain","novocaine","novokuznetsk","novosibirsk","now","nowadays","noway","nowell","nowhere","nowise","nowrap","noxious","noxiousness","noyce","noyes","nozzle","np","npe","npm","npmjs","npos","nr","nra","nroff","nrow","nrows","ns","nsa","nsarray","nsattributedstring","nsbundle","nscalendar","nscoder","nsdata","nsdate","nsdateformatter","nsdictionary","nsdocumentdirectory","nsentitydescription","nserror","nservicebus","nsf","nsfetchedresultscontroller","nsfetchrequest","nsfilemanager","nsindexpath","nsinteger","nsjsonserialization","nslayoutconstraint","nslog","nsmakerange","nsmanagedobject","nsmanagedobjectcontext","nsmutablearray","nsmutabledata","nsmutabledictionary","nsmutablestring","nsmutableurlrequest","nsnotification","nsnotificationcenter","nsnumber","nsobject","nsoperationqueue","nspredicate","nsrange","nssearchpathfordirectoriesindomains","nsset","nssortdescriptor","nsstring","nstimeinterval","nstimer","nsuinteger","nsurl","nsurlconnection","nsurlrequest","nsurlsession","nsuserdefaults","nsuserdomainmask","nsutf","nsvalue","nsview","nsxmlparser","nt","ntdll","nth","ntlm","ntp","nu","nuance","nub","nubbin","nubby","nubia","nubian","nubile","nuclear","nuclease","nucleate","nucleated","nucleation","nuclei","nucleic","nucleoli","nucleolus","nucleon","nucleotide","nucleus","nuclide","nude","nudely","nudeness","nudest","nudge","nudger","nudism","nudist","nudity","nugatory","nugent","nuget","nugget","nuisance","nuke","nukualofa","nul","null","nulla","nullable","nullam","nullif","nullification","nullifier","nullify","nullity","nullpointerexception","nullptr","nullreferenceexception","nulls","num","numb","numba","number","numbered","numberer","numberformat","numberformatexception","numbering","numberless","numberofrowsinsection","numberplate","numbers","numberwithint","numbing","numbness","numbskull","numel","numerable","numeracy","numeral","numerate","numerates","numeration","numerator","numeric","numerical","numero","numerological","numerologist","numerology","numerous","numerousness","numinous","numismatic","numismatics","numismatist","numpy","numrows","nums","numskull","nun","nunavut","nunc","nuncio","nunez","nunit","nunki","nunnery","nuptial","nuremberg","nureyev","nurse","nursemaid","nurser","nursery","nurseryman","nurserymen","nursling","nurture","nurturer","nus","nut","nutate","nutation","nutch","nutcrack","nutcracker","nuthatch","nutmeat","nutmeg","nutmegged","nutmegging","nutpick","nutrasweet","nutria","nutrient","nutriment","nutrition","nutritional","nutritionist","nutritious","nutritiousness","nutritive","nuts","nutshell","nutted","nuttiness","nutting","nutty","nuzzle","nv","nvarchar","nvidia","nvl","nvm","nw","nwt","nx","ny","nyasa","nyc","nydia","nye","nyerere","nylon","nymph","nymphet","nympholepsy","nymphomania","nymphomaniac","nymphs","nyquist","nyse","nyssa","nytimes","nz","o","oa","oaf","oafish","oafishness","oahu","oak","oakland","oakley","oakmont","oakum","oakwood","oar","oarlock","oarsman","oarsmen","oarswoman","oarswomen","oas","oases","oasis","oat","oatcake","oater","oates","oath","oaths","oatmeal","oauth","oaxaca","ob","obadiah","obadias","obama","obbligato","obduracy","obdurate","obdurateness","obed","obediah","obedience","obedient","obeisance","obeisant","obelisk","oberlin","oberon","obese","obesity","obey","obeyer","obfuscate","obfuscated","obfuscation","obfuscatory","obi","obidiah","obie","obit","obituary","obj","objc","object","objectanimationusingkeyframes","objectatindex","objectclass","objectcontext","objectforkey","objectid","objectify","objectinputstream","objection","objectionable","objectionableness","objectionably","objective","objectiveness","objectivity","objectmapper","objectname","objector","objectoutputstream","objects","objecttype","objphpexcel","objs","objurgate","objurgation","oblate","oblation","obligate","obligation","obligational","obligatorily","obligatory","oblige","obliged","obliger","obliges","obliging","obligingness","oblique","obliqueness","obliquity","obliterate","obliteration","obliterative","oblivion","oblivious","obliviousness","oblong","oblongness","obloquies","obloquy","obnoxious","obnoxiousness","oboe","oboist","obos","obs","obscene","obscenity","obscurantism","obscurantist","obscuration","obscure","obscureness","obscurity","obsequies","obsequious","obsequiousness","obsequy","observability","observable","observablearray","observablecollection","observablelist","observables","observably","observance","observant","observantly","observants","observation","observational","observations","observatory","observe","observed","observer","observers","observing","obsess","obsession","obsessional","obsessive","obsessiveness","obsidian","obsolesce","obsolescence","obsolescent","obsolete","obsoleteness","obstacle","obstetric","obstetrical","obstetrician","obstetrics","obstinacy","obstinate","obstinateness","obstreperous","obstreperousness","obstruct","obstructed","obstructer","obstruction","obstructionism","obstructionist","obstructive","obstructiveness","obtain","obtainable","obtainably","obtained","obtaining","obtainment","obtains","obtrude","obtruder","obtrusion","obtrusive","obtrusiveness","obtuse","obtuseness","obverse","obviate","obvious","obviously","obviousness","oby","oc","ocaml","ocarina","occ","occam","occasion","occasional","occasionally","occasions","occident","occidental","occipital","occlude","occlusion","occlusive","occult","occulter","occultism","occupancy","occupant","occupation","occupational","occupied","occupier","occupies","occupy","occur","occured","occurence","occurences","occuring","occurred","occurrence","occurrences","occurring","occurs","ocean","oceanfront","oceangoing","oceania","oceanic","oceanographer","oceanographic","oceanography","oceanology","oceanside","oceanus","ocelot","ocher","ochoa","oci","ocks","oconomowoc","ocr","oct","octagon","octagonal","octahedral","octahedron","octal","octane","octant","octave","octavia","octavian","octavio","octavius","octavo","octennial","octet","octile","octillion","october","octogenarian","octopus","octoroon","ocular","oculist","od","odalisque","odata","odbc","odd","oddball","oddity","oddly","oddment","oddness","odds","ode","odele","odelia","odelinda","odell","odella","odelle","oder","oderberg","odessa","odets","odetta","odette","odey","odie","odilia","odille","odin","odio","odious","odiousness","odis","odium","odo","odom","odometer","odoo","odor","odoriferous","odorless","odorous","ods","ody","odysseus","odyssey","oe","oed","oedipal","oedipus","oem","oems","oenology","oenophile","oersted","oesophagi","oeuvre","of","ofcourse","ofelia","ofella","off","offal","offbeat","offcuts","offenbach","offend","offender","offending","offense","offensive","offensively","offensiveness","offer","offered","offerer","offering","offers","offertory","offhand","offhanded","offhandedness","office","officeholder","officemate","officer","officership","offices","officia","official","officialdom","officialism","officially","officiant","officiate","officiation","officiator","officio","officious","officiousness","offing","offish","offline","offload","offprint","offramp","offs","offset","offsetheight","offsets","offsetting","offsettop","offsetwidth","offsetx","offsety","offshoot","offshore","offside","offspring","offstage","offtrack","ofilia","ofs","ofstream","oft","often","oftentimes","ofttimes","oftype","og","ogbomosho","ogdan","ogden","ogdon","ogg","ogilvy","ogive","ogle","oglethorpe","ogre","ogreish","ogress","oh","ohio","ohioan","ohm","ohmic","ohmmeter","oho","ohos","ohs","ohsa","oi","oid","oil","oilcloth","oilcloths","oiler","oilfield","oiliness","oilman","oilmen","oilseed","oilskin","oily","oink","ointment","oise","oj","ojibwa","ok","okamoto","okapi","okay","okayama","okeechobee","okefenokee","okhotsk","okhttp","okhttpclient","okinawa","okinawan","okla","oklahoma","oklahoman","okra","oks","oktoberfest","ol","ola","olaf","olag","olav","old","olden","oldenburg","older","oldest","oldfield","oldie","oldish","oldness","oldsmobile","oldster","olduvai","oldvalue","oldversion","ole","oleaginous","oleander","oledb","oledbcommand","oledbconnection","oledbdataadapter","olefin","oleg","olen","olenek","olenka","olenolin","oleo","oleomargarine","oles","olfactory","olga","olia","oligarch","oligarchic","oligarchical","oligarchs","oligarchy","oligocene","oligopolistic","oligopoly","olimpia","olin","olive","oliver","olivero","olivette","olivetti","olivia","olivie","olivier","oliviero","oliy","ollie","olly","olmec","olmsted","olsen","olson","olva","olvan","olwen","olympe","olympia","olympiad","olympian","olympic","olympie","olympus","om","omaha","oman","omar","ombudsman","ombudsmen","omdurman","omega","omelet","omelette","omen","omero","omg","omicron","ominous","ominousness","omission","omit","omitted","omitting","omni","omniauth","omnibus","omnipotence","omnipotent","omnipresence","omnipresent","omniscience","omniscient","omnivore","omnivorous","omnivorousness","omp","oms","omsk","on","onactivitycreated","onactivityresult","onanism","onassis","onattach","onbackpressed","onbeforeunload","onbindviewholder","onblur","oncancelled","once","onceperrequestfilter","oncer","onchange","oncheckedchanged","onclick","onclicklistener","onclientclick","onclose","oncogene","oncologist","oncology","oncoming","oncomplete","oncompleted","onconfigurationchanged","oncreate","oncreateoptionsmenu","oncreateview","oncreateviewholder","ondatachange","ondelete","ondestroy","ondraw","ondrea","one","oneal","onedrive","onega","onegin","oneida","oneness","oner","onerous","onerousness","onerror","ones","oneself","onetime","onetomany","onetoone","oneupmanship","oneway","onfailure","onfocus","onfre","onfroi","ongoing","onida","oninit","onion","onionskin","onitemclick","onitemclicklistener","onitemselected","onitemselectedlistener","onkeydown","onkeypress","onkeyup","onlayout","online","onlinedocs","onlinepubs","onload","onlocationchanged","onlooker","onlooking","only","onmeasure","onmessage","onmodelcreating","onmousedown","onmouseout","onmouseover","onnext","ono","onofredo","onomatopoeia","onomatopoeic","onomatopoetic","onondaga","onopen","onoptionsitemselected","onpause","onpostexecute","onpreexecute","onpress","onprogressupdate","onpropertychanged","onreadystatechange","onreceive","onresponse","onresume","onrush","ons","onsager","onsaveinstancestate","onscroll","onselect","onset","onsetting","onshore","onside","onslaught","onstart","onstartcommand","onstop","onsubmit","onsuccess","ont","ontarian","ontario","ontextchanged","onto","ontogeny","ontological","ontology","ontouch","ontouchevent","ontouchlistener","onupdate","onupgrade","onus","onward","onwards","onyx","oo","oodles","ooh","oohs","oolitic","oom","oona","ooo","oop","oops","oort","oos","ooze","oozie","oozy","op","opacity","opal","opalescence","opalescent","opalina","opaline","opaque","opaqueness","opcode","opcodes","ope","opec","opel","open","openapi","opencart","opencast","opencl","openconnection","opencv","opendatabase","opendir","opened","opener","openerp","openfile","openfiledialog","opengl","opengroup","openhanded","openhandedness","openhearted","openid","opening","openjdk","openjpa","openlayers","openmp","openness","openoffice.org","openpyxl","openqa","opens","opensession","openshift","opensource","openssh","openssl","openstack","openstream","openstreetmap","opensymphony","openurl","openwork","openxml","openxmlformats","opera","operable","operand","operandi","operands","operant","operate","operates","operatic","operatically","operating","operation","operational","operationalization","operationalize","operationcontract","operations","operative","operatively","operativeness","operatives","operator","operators","operetta","ophelia","ophelie","ophiuchus","ophthalmic","ophthalmologist","ophthalmology","opiate","opine","opinion","opinionated","opinionatedness","opinions","opioid","opium","opossum","opp","oppenheimer","opponent","opportune","opportunism","opportunist","opportunistic","opportunistically","opportunities","opportunity","oppose","opposed","opposer","opposite","oppositeness","opposition","oppositional","oppress","oppression","oppressive","oppressiveness","oppressor","opprobrious","opprobrium","oprah","ops","opt","opted","optgroup","opthalmic","opthalmologic","opthalmology","optic","optical","optician","optics","optima","optimal","optimality","optimisation","optimise","optimised","optimism","optimist","optimistic","optimistically","optimization","optimizations","optimize","optimized","optimizer","optimizes","optimizing","optimum","option","optional","optionality","optionally","options","optoelectronic","optometric","optometrist","optometry","opts","opulence","opulent","opus","oq","or","ora","oracle","oracular","oral","oralee","oralia","oralie","oralla","oralle","oran","orange","orangeade","orangery","oranges","orangutan","oranjestad","orate","oration","orator","oratorical","oratorio","oratory","orazio","orb","orbadiah","orbicular","orbiculares","orbit","orbital","orchard","orchestra","orchestral","orchestrate","orchestrater","orchestration","orchestrator","orchid","orci","ord","ordain","ordainer","ordainment","ordeal","order","orderby","orderbydescending","orderdate","ordered","ordereddict","orderer","orderid","ordering","orderitem","orderless","orderliness","orderly","ordernumber","orders","ordinal","ordinance","ordinarily","ordinariness","ordinary","ordinate","ordinated","ordinates","ordinating","ordination","ordnance","ordovician","ordure","ore","oreg","oregano","oregon","oregonian","orel","orelee","orelia","orelie","orella","orelle","orelse","oren","oreo","orestes","org","organ","organdie","organdy","organelle","organic","organically","organisation","organism","organismic","organist","organizable","organization","organizational","organizations","organize","organized","organizer","organizes","organizing","organometallic","organza","orgasm","orgasmic","orgiastic","orgy","oriana","oriel","orient","orientable","oriental","orientate","orientated","orientates","orientation","orientations","oriented","orienteering","orienter","orifice","orig","origami","origin","original","originality","originally","originate","originated","origination","originative","originator","origins","orin","orinoco","oriole","orion","orison","oriya","orizaba","orkney","orlan","orland","orlando","orleans","orlick","orlon","orly","orm","ormlite","ormolu","ornament","ornamental","ornamentation","ornare","ornate","ornateness","orneriness","ornery","ornithological","ornithologist","ornithology","orographic","orography","orono","orotund","orotundity","orphan","orphanage","orphanhood","orpheus","orphic","orr","orran","orren","orrin","orris","ors","orsa","orsola","orson","ortega","ortensia","orthodontia","orthodontic","orthodontics","orthodontist","orthodox","orthodoxies","orthodoxly","orthodoxy","orthogonal","orthogonality","orthogonalization","orthogonalized","orthographic","orthographically","orthography","orthonormal","orthopedic","orthopedics","orthopedist","orthophosphate","orthorhombic","ortiz","orton","orv","orval","orville","orwell","orwellian","os","osage","osaka","osbert","osborn","osborne","osbourn","osbourne","oscar","osceola","oscillate","oscillation","oscillator","oscillatory","oscilloscope","osculate","osculation","osgi","osgood","osha","oshawa","oshkosh","osier","osiris","oslo","osm","osman","osmium","osmond","osmoses","osmosis","osmotic","osmund","osprey","oss","osseous","ossie","ossification","ossify","ostensible","ostensibly","ostentation","ostentatious","ostentatiousness","osteoarthritides","osteoarthritis","osteology","osteopath","osteopathic","osteopaths","osteopathy","osteoporoses","osteoporosis","ostracise","ostracism","ostracize","ostrander","ostream","ostrich","ostrogoth","ostwald","osvaldo","oswald","oswell","osx","ot","otb","otc","otes","otf","otha","othelia","othella","othello","other","otherbuttontitles","otherness","others","otherwise","otherworld","otherworldly","othilia","othilie","otho","otiose","otis","otoh","otp","ottawa","otter","ottilie","otto","ottoman","ou","ouagadougou","oubliette","ouch","ought","oughtn","ouija","ounce","ouput","our","ours","ourself","ourselves","oust","ouster","out","outage","outargue","outback","outbalance","outbid","outbidding","outboard","outboast","outbound","outbreak","outbroke","outbroken","outbuilding","outburst","outcast","outclass","outcome","outcomes","outcrop","outcropped","outcropping","outcry","outdated","outdid","outdir","outdistance","outdo","outdoes","outdone","outdoor","outdoorsy","outdraw","outdrawn","outdrew","outer","outerheight","outerhtml","outermost","outerwear","outface","outfall","outfield","outfielder","outfight","outfile","outfit","outfitted","outfitter","outfitting","outflank","outflow","outfought","outfox","outgeneraled","outgo","outgoes","outgoing","outgrew","outgrip","outgrow","outgrown","outgrowth","outgrowths","outguess","outhit","outhitting","outhouse","outing","outlaid","outland","outlander","outlandish","outlandishness","outlast","outlaw","outlawry","outlay","outlet","outlets","outliers","outline","outlined","outlive","outlook","outlying","outmaneuver","outmatch","outmigration","outmoded","outness","outnumber","outofmemoryerror","outpaced","outpatient","outperform","outplacement","outplay","outpoint","outpost","outpour","outpouring","outproduce","output","outputdirectory","outputfile","outputlabel","outputpath","outputs","outputstream","outputstreamwriter","outputted","outputtext","outputting","outr","outrace","outrage","outrageous","outrageousness","outran","outrank","outreach","outrider","outrigger","outright","outrun","outrunning","outs","outscore","outsell","outset","outsetting","outshine","outshone","outshout","outside","outsider","outsize","outskirt","outsmart","outsold","outsource","outspend","outspent","outspoke","outspoken","outspokenness","outspread","outstanding","outstate","outstation","outstay","outstream","outstretch","outstrip","outstripped","outstripping","outtake","outvote","outward","outwardness","outwear","outweigh","outweighs","outwit","outwitted","outwitting","outwore","outwork","outworn","ouzo","ov","ova","oval","ovalness","ovarian","ovary","ovate","ovation","oven","ovenbird","over","overabundance","overabundant","overachieve","overact","overage","overaggressive","overall","overallocation","overambitious","overanxious","overarching","overarm","overate","overattentive","overawe","overbalance","overbear","overbearing","overbearingness","overbid","overbidding","overbite","overblown","overboard","overbold","overbook","overbore","overborne","overbought","overbuild","overbuilt","overburden","overburdening","overbuy","overcame","overcapacity","overcapitalize","overcareful","overcast","overcasting","overcautious","overcerebral","overcharge","overcloud","overcoat","overcoating","overcome","overcomer","overcommitment","overcompensate","overcompensation","overcomplexity","overcomplicated","overconfidence","overconfident","overconscientious","overconsumption","overcook","overcooled","overcorrection","overcritical","overcrowd","overcurious","overdecorate","overdependent","overdetermined","overdevelop","overdid","overdo","overdoes","overdone","overdose","overdraft","overdraw","overdrawn","overdress","overdrew","overdrive","overdriven","overdrove","overdub","overdubbed","overdubbing","overdue","overeager","overeagerness","overeat","overeater","overeducated","overemotional","overemphases","overemphasis","overemphasize","overenthusiastic","overestimate","overestimation","overexcite","overexercise","overexert","overexertion","overexploitation","overexploited","overexpose","overexposure","overextend","overextension","overfall","overfed","overfeed","overfill","overfishing","overflew","overflight","overflow","overflown","overflows","overfly","overfond","overfull","overgeneralize","overgenerous","overgraze","overgrew","overground","overgrow","overgrown","overgrowth","overgrowths","overhand","overhang","overhasty","overhaul","overhead","overhear","overheard","overhearer","overheat","overhung","overincredulous","overindulge","overindulgence","overindulgent","overinflated","overjoy","overkill","overladed","overladen","overlaid","overlain","overland","overlap","overlapped","overlapping","overlaps","overlarge","overlay","overlays","overleaf","overlie","overload","overloaded","overloading","overloads","overlong","overlook","overlooked","overlooking","overlord","overloud","overly","overmanning","overmaster","overmatching","overmodest","overmuch","overnice","overnight","overoptimism","overoptimistic","overpaid","overparticular","overpass","overpay","overpayment","overplay","overpopulate","overpopulation","overpopulous","overpower","overpowering","overpraise","overprecise","overpressure","overprice","overprint","overproduce","overproduction","overprotect","overprotection","overqualified","overran","overrate","overreach","overreact","overreaction","overred","overrefined","overrepresented","overridden","override","overriden","overrider","overrides","overriding","overripe","overrode","overrule","overrun","overrunning","oversample","oversaturate","oversaw","oversea","oversee","overseeing","overseen","overseer","oversell","oversensitive","oversensitiveness","oversensitivity","oversexed","overshadow","overshoe","overshoot","overshot","oversight","oversimple","oversimplification","oversimplify","oversize","oversleep","overslept","oversoft","oversoftness","oversold","overspecialization","overspecialize","overspend","overspent","overspill","overspread","overstaffed","overstate","overstatement","overstay","overstep","overstepped","overstepping","overstimulate","overstock","overstraining","overstressed","overstretch","overstrict","overstrike","overstrung","overstuffed","oversubscribe","oversubtle","oversupply","oversuspicious","overt","overtake","overtaken","overtax","overthrew","overthrow","overthrown","overtightened","overtime","overtire","overtone","overtook","overture","overturn","overuse","overvalue","overview","overweening","overweight","overwhelm","overwhelming","overwinter","overwork","overwrap","overwrite","overwrites","overwriting","overwritten","overwrote","overwrought","overzealous","overzealousness","ovid","oviduct","oviform","oviparous","ovoid","ovular","ovulate","ovulatory","ovule","ovum","ow","owasp","owe","owen","owin","owl","owlet","owlish","owlishness","own","owned","owner","ownerid","owners","ownership","owning","owns","ox","oxalate","oxalic","oxaloacetic","oxblood","oxbow","oxcart","oxen","oxford","oxidant","oxidate","oxidation","oxidative","oxide","oxidization","oxidize","oxidized","oxidizer","oxidizes","oxnard","oxonian","oxtail","oxus","oxyacetylene","oxygen","oxygenate","oxygenation","oxyhydroxides","oxymora","oxymoron","oyster","oystering","oz","ozark","ozone","ozymandias","ozzie","ozzy","p","pa","pablo","pablum","pabst","pabulum","pac","pace","pacemaker","pacer","pacesetter","pacesetting","pacheco","pachyderm","pachysandra","pacific","pacifically","pacification","pacifier","pacifism","pacifist","pacifistic","pacify","pack","package","packaged","packagemanager","packagename","packager","packages","packaging","packard","packed","packer","packet","packets","packhorse","packing","packinghouse","packs","packsaddle","packston","packwood","paco","pacorro","pact","pad","padang","padded","paddie","padding","paddingbottom","paddingleft","paddingright","paddingtop","paddle","paddler","paddock","paddy","padget","padgett","padilla","padlock","padraic","padraig","padre","padrewski","padriac","padx","pady","paean","paediatrician","paediatrics","paedophilia","paella","paeony","pagan","paganini","paganism","page","pageable","pageant","pageantry","pageboy","pagecount","paged","pageful","pageid","pageindex","pagename","pagenum","pagenumber","pager","pageradapter","pages","pagesize","pagetitle","pageview","pageviewcontroller","pagex","pagey","paginate","pagination","paginator","paging","paglia","pagoda","pahlavi","paid","paige","pail","pailful","pain","paine","painful","painfuller","painfullest","painfulness","painkiller","painkilling","painless","painlessness","painstaking","paint","paintbox","paintbrush","paintcomponent","painted","painter","painterly","painting","paintwork","pair","paired","pairing","pairs","pairwise","paisley","pajama","pakistan","pakistani","pal","palace","paladin","palaeolithic","palaeontologists","palaeontology","palanquin","palatability","palatable","palatableness","palatal","palatalization","palatalize","palate","palatial","palatinate","palatine","palaver","pale","paleface","palembang","paleness","paleocene","paleogene","paleographer","paleography","paleolithic","paleontologist","paleontology","paleozoic","palermo","palestine","palestinian","palestrina","palette","paley","palfrey","palimony","palimpsest","palindrome","palindromic","paling","palisade","palisades","palish","pall","palladio","palladium","pallbearer","pallet","palletized","palliate","palliation","palliative","pallid","pallidness","pallor","palm","palmate","palmer","palmerston","palmetto","palmist","palmistry","palmolive","palmtop","palmy","palmyra","palo","paloma","palomar","palomino","palpable","palpably","palpate","palpation","palpitate","palpitation","palsy","paltriness","paltry","paludal","pam","pamela","pamelina","pamella","pamirs","pammi","pammie","pammy","pampas","pamper","pamperer","pampers","pamphlet","pamphleteer","pan","panacea","panache","panama","panamanian","pancake","panchito","pancho","panchromatic","pancreas","pancreatic","panda","pandas","pandemic","pandemonium","pander","pandoc","pandora","pane","panegyric","panel","panelgrid","panelgroup","paneling","panelist","panelization","panelized","panels","panes","pang","pangaea","pangolin","panhandle","panic","panicked","panicking","panicky","panier","panjandrum","pankhurst","panmunjom","panned","pannier","panning","panoply","panorama","panoramic","panpipes","pansie","pansy","pant","pantagruel","pantaloon","pantaloons","pantheism","pantheist","pantheistic","pantheon","panther","pantie","pantiled","pantograph","pantomime","pantomimic","pantomimist","pantry","pantsuit","pantyhose","pantyliner","pantywaist","panza","paola","paoli","paolina","paolo","pap","papa","papacy","papagena","papageno","papal","paparazzi","papaw","papaya","paper","paperback","paperboard","paperboy","paperclip","paperer","papergirl","paperhanger","paperhanging","paperiness","paperless","papers","paperweight","paperwork","papery","papilla","papillae","papillary","papist","papoose","pappas","papped","papping","pappy","paprika","papyri","papyrus","paquito","par","para","parable","parabola","parabolic","paraboloid","paraboloidal","paracelsus","paracetamol","parachute","parachuter","parachutist","paraclete","parade","parader","paradigm","paradigmatic","paradisaic","paradisaical","paradise","paradox","paradoxic","paradoxical","paradoxicalness","paraffin","paragon","paragraph","paragrapher","paragraphs","paraguay","paraguayan","parakeet","paralegal","paralinguistic","parallax","parallel","paralleled","parallelepiped","parallelism","parallelization","parallelize","parallelogram","paralysis","paralytic","paralytically","paralyze","paralyzed","paralyzedly","paralyzer","paralyzing","paralyzingly","param","paramagnet","paramagnetic","paramaribo","paramecia","paramecium","paramedic","paramedical","parameter","parameterization","parameterize","parameterized","parameterless","parametername","parameters","parametric","parametrically","parametrization","parametrize","paramiko","paramilitary","paramname","paramount","paramour","params","paramus","paran","paranoia","paranoiac","paranoid","paranormal","parapet","paraphernalia","paraphrase","paraphraser","paraplegia","paraplegic","paraprofessional","parapsychologist","parapsychology","paraquat","parasite","parasitic","parasitically","parasitism","parasitologist","parasitology","parasol","parasympathetic","parathion","parathyroid","paratroop","paratrooper","paratyphoid","parboil","parc","parcel","parcelable","parceled","parceling","parch","parcheesi","parchment","pardon","pardonable","pardonableness","pardonably","pardoner","pare","paregoric","parens","parent","parentage","parental","parentelement","parenteral","parentheses","parenthesis","parenthesize","parenthetic","parenthetical","parenthood","parentid","parentnode","parentrunner","parents","pares","paresis","pareto","parfait","pariah","pariahs","pariatur","parietal","parimutuel","paring","paris","parish","parishioner","parisian","parity","park","parka","parke","parker","parkersburg","parkhouse","parking","parkinson","parkish","parkland","parklike","parkman","parkway","parlance","parlay","parley","parliament","parliamentarian","parliamentary","parlor","parlous","parm","parmesan","parmigiana","parnassus","parnell","parochial","parochialism","parochiality","parodied","parodist","parody","parole","parolee","paroxysm","paroxysmal","parquet","parquetry","parr","parrakeet","parred","parricidal","parricide","parring","parrish","parrnell","parrot","parrotlike","parry","pars","parse","parsec","parsecolor","parsed","parsedouble","parsee","parseexact","parseexception","parsefloat","parseint","parsejson","parseobject","parser","parsers","parses","parsifal","parsimonious","parsimony","parsing","parsley","parsnip","parson","parsonage","parsons","part","partake","partaken","partaker","parter","parterre","parthenogeneses","parthenogenesis","parthenon","parthia","partial","partiality","partially","partials","partialview","participant","participants","participate","participation","participator","participatory","participial","participle","particle","particleboard","particles","particolored","particular","particularistic","particularity","particularization","particularize","particularly","particulate","parties","parting","partisan","partisanship","partition","partitioned","partitioner","partitioning","partitions","partitive","partizan","partly","partner","partners","partnership","partnumber","partook","partridge","parts","parturition","partway","party","parvenu","pas","pasadena","pascal","pascale","paschal","pasha","paso","pasquale","pass","passably","passage","passageway","passaic","passband","passbook","passed","passel","passenger","passengers","passer","passerby","passersby","passes","passim","passing","passion","passionate","passionated","passionateness","passionates","passionating","passioned","passionflower","passioning","passionless","passivated","passive","passiveness","passivity","passkey","passmark","passover","passphrase","passport","passwd","password","passwords","past","pasta","paste","pastebin","pasteboard","pasted","pastel","pastern","pasternak","pastespecial","pasteup","pasteur","pasteurization","pasteurize","pasteurized","pasteurizer","pastiche","pastille","pastime","pastiness","pasting","pastor","pastoral","pastoralization","pastorate","pastrami","pastry","pasts","pasturage","pasture","pasturer","pasty","pat","patagonia","patagonian","patch","patched","patcher","patches","patchily","patchiness","patching","patchwork","patchy","pate","patel","patella","patellae","paten","patent","patentee","patents","pater","paterfamilias","paternal","paternalism","paternalist","paternalistic","paternity","paternoster","paterson","path","pathetic","pathetically","pathfinder","pathforresource","pathinfo","pathless","pathname","pathogen","pathogenesis","pathogenic","pathologic","pathological","pathologist","pathology","pathos","paths","pathvariable","pathway","patience","patient","patientid","patients","patin","patina","patine","patio","patna","patois","paton","patresfamilias","patriarch","patriarchal","patriarchate","patriarchs","patriarchy","patric","patrica","patrice","patricia","patrician","patricide","patricio","patrick","patrimonial","patrimony","patriot","patriotic","patriotically","patriotism","patristic","patrizia","patrizio","patrizius","patrol","patrolled","patrolling","patrolman","patrolmen","patrolwoman","patrolwomen","patron","patronage","patroness","patronization","patronize","patronized","patronizer","patronizes","patronizing","patronymic","patronymically","patroon","patsy","patted","patten","patter","patterer","pattern","patternlayout","patternless","patterns","patterson","patti","pattie","pattin","patting","patton","patty","paucity","paul","paula","paule","pauletta","paulette","pauli","paulie","paulina","pauline","pauling","paulita","paulo","paulsen","paulson","paulus","pauly","paunch","paunchiness","paunchy","pauper","pauperism","pauperize","pause","paused","pauses","pavarotti","pave","paved","pavel","pavement","paver","paves","pavia","pavilion","paving","pavla","pavlov","pavlova","pavlovian","paw","pawl","pawn","pawnbroker","pawnbroking","pawnee","pawner","pawnshop","pawpaw","pawtucket","pax","paxes","paxon","paxton","pay","payable","payback","paycheck","payday","payed","payee","payer","paying","payload","paymaster","payment","payments","payne","payoff","payola","payout","paypal","payroll","pays","payslip","payson","payton","paz","pb","pbkdf","pbs","pbx","pc","pca","pcap","pcb","pch","pci","pcl","pcm","pcp","pcre","pcs","pct","pd","pdata","pdb","pdf","pdfbox","pdfreader","pdfs","pdfwriter","pdialog","pdo","pdoexception","pdp","pdq","pdt","pe","pea","peabody","peace","peaceable","peaceableness","peaceably","peaceful","peacefuller","peacefullest","peacefulness","peacekeeping","peacemaker","peacemaking","peacetime","peach","peachtree","peachy","peacock","peadar","peafowl","peahen","peak","peaked","peakiness","peaks","peaky","peal","peale","pealed","peals","peanut","pear","pearce","pearl","pearla","pearle","pearler","pearlie","pearline","pearly","pearson","peartrees","peary","peasant","peasanthood","peasantry","peashooter","peat","peats","peaty","pebble","pebbling","pebbly","pebrook","pecan","peccadillo","peccadilloes","peccary","pechora","peck","pecker","peckinpah","pecl","pecos","pectic","pectin","pectoral","peculate","peculator","peculiar","peculiarity","pecuniary","pedagogic","pedagogical","pedagogics","pedagogue","pedagogy","pedal","pedant","pedantic","pedantically","pedantry","peddle","peddler","peder","pederast","pederasty","pedestal","pedestrian","pedestrianization","pedestrianize","pediatric","pediatrician","pedicab","pedicure","pedicurist","pedigree","pediment","pedlar","pedometer","pedophile","pedophilia","pedro","peduncle","pee","peeing","peek","peekaboo","peel","peeler","peeling","peen","peep","peeper","peephole","peepshow","peepy","peer","peerage","peeress","peerless","peerlessness","peers","peeve","peevers","peevish","peevishness","peewee","peg","pegasus","pegboard","pegeen","pegged","peggi","peggie","pegging","peggy","pei","peignoir","peiping","peirce","pejoration","pejorative","peke","pekinese","peking","pekingese","pekoe","pelagic","pele","pelee","pelf","pelham","pelican","pellagra","pellentesque","pellet","pellucid","peloponnese","pelt","pelter","pelvic","pelvis","pem","pembroke","pemmican","pen","pena","penal","penalization","penalize","penalized","penalty","penance","pence","penchant","pencil","pend","pendant","pendent","penderecki","pending","pendingintent","pendleton","pendulous","pendulum","penelopa","penelope","penetrability","penetrable","penetrate","penetrating","penetration","penetrative","penetrativeness","penetrator","penguin","penicillin","penile","peninsula","peninsular","penis","penitence","penitent","penitential","penitentiary","penknife","penknives","penlight","penman","penmanship","penmen","penn","penna","pennant","penned","penney","penni","pennie","penniless","penning","pennington","pennis","pennon","pennsylvania","pennsylvanian","penny","pennyweight","pennyworth","penologist","penology","penrod","pens","pensacola","pension","pensioner","pensive","pensiveness","pent","pentacle","pentagon","pentagonal","pentagram","pentaho","pentameter","pentateuch","pentathlete","pentathlon","pentatonic","pentecost","pentecostal","pentecostalism","penthouse","pentium","penuche","penultimate","penumbra","penumbrae","penurious","penuriousness","penury","peon","peonage","peony","people","peoples","peoria","pep","pepe","pepi","pepillo","pepin","pepita","pepito","pepped","pepper","peppercorn","pepperer","peppergrass","peppermint","pepperoni","peppery","peppiness","pepping","peppy","peps","pepsi","pepsico","pepsin","peptic","peptidase","peptide","peptizing","pepys","pequot","per","peradventure","perambulate","perambulation","perambulator","perc","percale","perceivably","perceive","perceived","perceiver","percent","percentage","percentages","percentile","percept","perceptible","perceptibly","perception","perceptional","perceptive","perceptiveness","perceptual","perceval","perch","perchance","perchlorate","perchlorination","percipience","percipient","percival","percolate","percolation","percolator","percuss","percussion","percussionist","percussive","percussiveness","percutaneous","percy","perdition","perdurable","peregrinate","peregrination","peregrine","perelman","peremptorily","peremptory","perennial","perestroika","perez","perf","perfect","perfecta","perfecter","perfectibility","perfectible","perfection","perfectionism","perfectionist","perfective","perfectiveness","perfectly","perfectness","perfidious","perfidiousness","perfidy","perforate","perforated","perforation","perforce","perform","performance","performant","performclick","performcreate","performed","performer","performing","performlaunchactivity","performs","performseguewithidentifier","performselector","perfume","perfumer","perfumery","perfunctorily","perfunctoriness","perfunctory","perfused","perfusion","pergamon","pergola","perhaps","peri","peria","pericardia","pericardium","perice","periclean","pericles","perigee","perihelia","perihelion","peril","perilla","perilous","perilousness","perimeter","perinatal","perinea","perineum","period","periodic","periodical","periodically","periodicity","periodontal","periodontics","periodontist","periods","peripatetic","peripheral","periphery","periphrases","periphrasis","periphrastic","periscope","perish","perishable","perishing","peristalses","peristalsis","peristaltic","peristyle","peritoneal","peritoneum","peritonitis","periwig","periwigged","periwigging","periwinkle","perjure","perjurer","perjury","perk","perkily","perkin","perkiness","perky","perl","perla","perldoc","perle","perm","permafrost","permalink","permalloy","permanence","permanency","permanent","permanently","permanentness","permeability","permeable","permeableness","permeate","permian","permissibility","permissible","permissibleness","permissibly","permission","permissions","permissive","permissiveness","permit","permitall","permits","permitted","permitting","perms","permutation","permutations","permute","pernell","pernicious","perniciousness","pernod","peron","peroration","perot","peroxidase","peroxide","perpend","perpendicular","perpendicularity","perpetrate","perpetration","perpetrator","perpetual","perpetuate","perpetuation","perpetuity","perplex","perplexed","perplexity","perquisite","perren","perri","perrine","perror","perry","persecute","persecution","persecutor","persecutory","perseid","persephone","perseus","perseverance","persevere","persevering","pershing","persia","persian","persiflage","persimmon","persis","persist","persisted","persistence","persistent","persisting","persists","persnickety","person","persona","personable","personableness","personae","personage","personal","personality","personalization","personalize","personalized","personally","personalty","personid","personification","personifier","personify","personname","personnel","persons","perspective","perspex","perspicacious","perspicaciousness","perspicacity","perspicuity","perspicuous","perspicuousness","perspiration","perspire","persuade","persuaded","persuader","persuasion","persuasive","persuasively","persuasiveness","pert","pertain","perth","pertinacious","pertinaciousness","pertinacity","pertinence","pertinent","pertness","perturb","perturbation","perturbed","pertussis","peru","peruke","perusal","peruse","peruser","peruvian","pervade","pervasion","pervasive","pervasiveness","perverse","perverseness","perversion","perversity","pervert","perverted","perverter","perviousness","peseta","peshawar","peskily","peskiness","pesky","peso","pessimal","pessimism","pessimist","pessimistic","pessimistically","pest","pester","pesticide","pestiferous","pestilence","pestilent","pestilential","pestle","pesto","pet","peta","petal","petard","petcock","pete","peter","peters","petersburg","petersen","peterson","peterus","petey","pethidine","petiole","petite","petiteness","petition","petitioner","petitions","petits","petkiewicz","petr","petra","petrarch","petrel","petri","petrifaction","petrify","petrina","petrochemical","petrodollar","petroglyph","petrol","petrolatum","petroleum","petrolled","petrolling","petrologist","petrology","petronella","petronia","petronilla","petronille","pets","petted","petter","pettibone","petticoat","pettifog","pettifogged","pettifogger","pettifogging","pettily","pettiness","petting","pettis","pettish","pettishness","petty","petulance","petulant","petunia","peugeot","pew","pewaukee","pewee","pewit","pewter","peyote","peyter","peyton","pf","pfc","pfennig","pfizer","pfobject","pfuser","pfx","pg","pgp","pgsql","ph","phaedra","phaethon","phaeton","phage","phagocyte","phaidra","phalanger","phalanges","phalanx","phalli","phallic","phallus","phanerozoic","phantasm","phantasmagoria","phantasmal","phantasy","phantom","phantomjs","phar","pharaoh","pharaohs","pharetra","pharisaic","pharisaical","pharisee","pharmaceutic","pharmaceutical","pharmaceutics","pharmacist","pharmacological","pharmacologist","pharmacology","pharmacopoeia","pharmacy","pharyngeal","pharynges","pharyngitides","pharyngitis","pharynx","phase","phasellus","phaseout","phases","phd","pheasant","phebe","phedra","phekda","phelia","phelps","phenacetin","phenobarbital","phenol","phenolic","phenolphthalein","phenomena","phenomenal","phenomenological","phenomenology","phenomenon","phenotype","phenyl","phenylalanine","pheromone","phew","phi","phial","phialled","phialling","phidias","phil","philadelphia","philander","philanderer","philanthropic","philanthropically","philanthropist","philanthropy","philatelic","philatelist","philately","philbert","philco","philharmonic","philip","philipa","philippa","philippe","philippians","philippic","philippine","philis","philistine","philistinism","phillida","phillie","phillip","phillipa","phillipe","phillipp","phillis","philly","philodendron","philological","philologist","philology","philomena","philosopher","philosophic","philosophical","philosophize","philosophized","philosophizer","philosophizes","philosophy","philter","philtre","phineas","phip","phipps","phlebitides","phlebitis","phlegm","phlegmatic","phlegmatically","phloem","phlox","phobia","phobic","phobos","phoebe","phoenicia","phoenician","phoenix","phone","phonegap","phoneme","phonemic","phonemically","phonemics","phonenumber","phones","phonetic","phonetically","phonetician","phonetics","phonewindow","phonic","phonically","phonics","phoniness","phonograph","phonographer","phonographic","phonographs","phonologic","phonological","phonologist","phonology","phonon","phony","phooey","phosphatase","phosphate","phosphide","phosphine","phosphor","phosphoresce","phosphorescence","phosphorescent","phosphoric","phosphorous","phosphorus","photo","photocell","photochemical","photochemistry","photocopier","photocopy","photoelectric","photoelectrically","photoelectronic","photoelectrons","photoengrave","photoengraver","photoengraving","photofinishing","photogenic","photogenically","photograph","photographer","photographic","photographically","photographs","photography","photojournalism","photojournalist","photoluminescence","photolysis","photolytic","photometer","photometric","photometrically","photometry","photomicrograph","photomicrography","photomultiplier","photon","photorealism","photos","photosensitive","photoshop","photosphere","photostat","photostatic","photostatted","photostatting","photosyntheses","photosynthesis","photosynthesize","photosynthetic","phototypesetter","phototypesetting","php","phpexcel","phpinfo","phpmailer","phpmyadmin","phpstorm","phpunit","phrasal","phrase","phrasebook","phrasemaking","phraseology","phrases","phrasing","phrenological","phrenologist","phrenology","phtml","phyla","phylactery","phylae","phylis","phyllida","phyllis","phyllys","phylogeny","phylum","phylys","phys","physic","physical","physicality","physically","physician","physicist","physicked","physicking","physics","physicsbody","physiochemical","physiognomy","physiography","physiologic","physiological","physiologist","physiology","physiotherapist","physiotherapy","physique","phytoplankton","pi","pia","piaf","piaget","pianism","pianissimo","pianist","pianistic","piano","pianoforte","pianola","piaster","piata","piazza","pibroch","pibrochs","pic","pica","picador","picaresque","picasso","picayune","piccadilly","piccalilli","piccolo","pick","pickaback","pickax","pickaxe","picked","picker","pickerel","pickering","pickerview","picket","picketer","pickett","pickford","picking","pickle","pickman","pickoff","pickpocket","picks","pickup","pickwick","picky","picnic","picnicked","picnicker","picnicking","picofarad","picojoule","picoseconds","picot","pics","pict","pictograph","pictographs","pictorial","pictorialness","picture","picturebox","pictures","picturesque","picturesqueness","pid","piddle","piddly","pidgin","pids","pie","piebald","piece","piecemeal","piecer","pieces","piecewise","piecework","pieceworker","piechart","piedmont","pieing","pier","pierce","piercer","piercing","pierette","pierre","pierrette","pierrot","pierson","pieter","pietra","pietrek","pietro","piety","piezoelectric","piezoelectricity","piffle","pig","pigeon","pigeonhole","pigged","piggery","pigging","piggish","piggishness","piggy","piggyback","pigheaded","pigheadedness","piglet","pigment","pigmentation","pigmy","pigpen","pigroot","pigskin","pigsty","pigswill","pigtail","pike","piker","pikestaff","pil","pilaf","pilaster","pilate","pilau","pilchard","pilcomayo","pile","pileup","pilfer","pilferage","pilferer","pilgrim","pilgrimage","piling","pill","pillage","pillar","pillbox","pillion","pillory","pillow","pillowcase","pillowslip","pills","pillsbury","pilot","pilothouse","piloting","pimento","pimiento","pimp","pimpernel","pimple","pimplike","pimply","pin","pinafore","pinatubo","pinball","pincas","pincer","pinch","pinchas","pincher","pincus","pincushion","pindar","pine","pineapple","pined","pinehurst","pines","pinfeather","ping","pinhead","pinheaded","pinhole","pining","pinion","pink","pinkerton","pinkeye","pinkie","pinkish","pinkness","pinko","pinky","pinnacle","pinnate","pinned","pinning","pinocchio","pinochet","pinochle","pinpoint","pinprick","pins","pinsetter","pinsky","pinstripe","pint","pintail","pinter","pinterest","pinto","pinup","pinvoke","pinwheel","piny","pinyin","pion","pioneer","piotr","pious","piousness","pip","pipe","pipeline","pipelines","piper","pipermail","pipes","pipestone","pipet","pipette","pipework","piping","pipit","pippa","pipped","pippin","pipping","pippo","pippy","pipsqueak","piquancy","piquant","piquantness","pique","piracy","piraeus","pirandello","piranha","pirate","piratical","pirogi","pirogies","pirouette","pis","pisa","piscatorial","pisces","pisistratus","pismire","piss","pissaro","pistachio","piste","pistil","pistillate","pistol","pistole","pistoleers","piston","pit","pita","pitapat","pitapatted","pitapatting","pitcairn","pitch","pitchblende","pitcher","pitchfork","pitching","pitchman","pitchmen","pitchstone","piteous","piteousness","pitfall","pitfalls","pith","pithily","pithiness","piths","pithy","pitiable","pitiableness","pitiably","pitier","pitiful","pitifuller","pitifullest","pitifulness","pitiless","pitilessness","pitman","pitney","piton","pitt","pittance","pitted","pitting","pittman","pittsburgh","pittsfield","pittston","pituitary","pity","pitying","pius","pivot","pivotal","pivoting","pivottable","pix","pixel","pixelformat","pixels","pixie","pixiness","pixmap","pizarro","pizazz","pizza","pizzeria","pizzicati","pizzicato","pj","pk","pkcs","pkey","pkg","pkgs","pkt","pkwy","pl","placard","placate","placatory","place","placeable","placebo","placed","placehold","placeholder","placeholders","placekick","placeless","placemark","placement","placenta","placental","placer","placerat","places","placid","placidity","placidness","placing","placket","plagiarism","plagiarist","plagiarize","plagiary","plague","plagued","plaguer","plaice","plaid","plain","plainclothes","plainclothesman","plainclothesmen","plainfield","plainness","plainsman","plainsmen","plainsocketimpl","plainsong","plainspoken","plaint","plaintext","plaintiff","plaintive","plaintiveness","plainview","plait","plaiting","plan","planar","planarity","planck","plane","planeload","planer","planes","planet","planetarium","planetary","planetesimal","planetoid","planets","plangency","plangent","plank","planking","plankton","planned","planner","planning","plano","planoconcave","planoconvex","plans","plant","plantagenet","plantain","plantar","plantation","planter","planting","plantlike","plants","plaque","plash","plasm","plasma","plasmid","plaster","plasterboard","plasterer","plastering","plasterwork","plastic","plastically","plasticine","plasticity","plasticize","plat","plate","plateau","plateful","platelet","platen","plater","platform","platforms","plath","plating","platinize","platinum","platitude","platitudinous","plato","platonic","platonism","platonist","platoon","platte","platted","platter","platteville","platting","platy","platypus","platys","plaudit","plausibility","plausible","plausibly","plautus","play","playability","playable","playact","playacting","playback","playbill","playbook","playboy","played","player","playerid","playername","players","playfellow","playframework","playful","playfulness","playgirl","playgoer","playground","playgroup","playhouse","playing","playlist","playlists","playmate","playoff","playpen","playroom","plays","playsound","playtex","plaything","playtime","playwright","playwriting","plaza","plea","plead","pleader","pleading","pleas","pleasant","pleasanter","pleasantest","pleasantness","pleasantry","please","pleased","pleaser","pleases","pleasing","pleasingness","pleasurable","pleasurableness","pleasurably","pleasure","pleasureful","pleasures","pleat","pleater","plebe","plebeian","plebiscite","plectra","plectrum","pledge","pledger","pleiads","pleistocene","plenary","plenipotentiary","plenitude","plenteous","plenteousness","plentiful","plentifulness","plenty","plenum","pleonasm","plethora","pleura","pleurae","pleural","pleurisy","plexiglas","plexus","pliability","pliable","pliableness","pliancy","pliant","pliantness","plication","plier","plight","plimsolls","plink","plinker","plinth","plinths","pliny","pliocene","plist","plnkr","plo","plod","plodded","plodder","plodding","plone","plop","plopped","plopping","plosive","plot","plotly","plots","plotted","plotter","plotting","plover","plow","plowed","plower","plowman","plowmen","plowshare","ploy","plpgsql","pls","plt","pluck","plucker","pluckily","pluckiness","plucky","plug","pluggable","plugged","plugging","plughole","plugin","plugins","plum","plumage","plumb","plumbago","plumbed","plumber","plumbing","plume","plummer","plummest","plummet","plummy","plump","plumper","plumpness","plumy","plunder","plunge","plunger","plunk","plunker","pluperfect","plural","pluralism","pluralist","pluralistic","plurality","pluralization","pluralize","pluralizer","plus","plush","plushness","plushy","plussed","plussing","plutarch","pluto","plutocracy","plutocrat","plutocratic","plutonium","pluvial","ply","plymouth","plyr","plywood","plz","pm","pmd","pms","pn","pname","pneumatic","pneumatically","pneumatics","pneumonia","png","po","poach","poacher","poc","pocahontas","pock","pocket","pocketbook","pocketful","pocketing","pocketknife","pocketknives","pockmark","poco","pocono","pocoo","pod","podcast","podded","podding","podge","podgorica","podiatrist","podiatry","podium","pods","podunk","poe","poem","poesy","poet","poetaster","poetess","poetic","poetical","poetically","poeticalness","poetics","poetry","pogo","pogrom","poi","poignancy","poignant","poincar","poinciana","poindexter","poinsettia","point","pointblank","pointed","pointedness","pointer","pointers","pointf","pointillism","pointillist","pointing","pointless","pointlessness","points","pointy","pois","poise","poison","poisoner","poisoning","poisonous","poisson","pojo","poke","pokemon","poker","pokerface","poky","pol","poland","polanski","polar","polarimeter","polarimetry","polaris","polariscope","polarity","polarization","polarize","polarized","polarizes","polarizing","polarogram","polarograph","polarography","polaroid","pole","polecat","polemic","polemical","polemicist","polemics","poler","polestar","poleward","police","policeman","policemen","policewoman","policewomen","policies","policy","policyholder","policymaker","policymaking","polio","poliomyelitides","poliomyelitis","polis","polish","polished","polisher","politburo","polite","politeness","politesse","politic","political","politically","politician","politicians","politicization","politicize","politicked","politicking","politico","politics","polity","polk","polka","poll","pollack","pollard","polled","pollen","pollinate","pollination","pollinator","polling","polliwog","pollock","polls","pollster","pollutant","pollute","polluted","polluter","pollution","pollux","polly","pollyanna","pollywog","polo","polonaise","polonium","poltergeist","poltroon","poly","polyandrous","polyandry","polyatomic","polybutene","polycarbonate","polychemicals","polyclinic","polycrystalline","polyelectrolytes","polyester","polyether","polyethylene","polyfill","polyfills","polygamist","polygamous","polygamy","polyglot","polygon","polygonal","polygons","polygraph","polygraphs","polygynous","polyhedral","polyhedron","polyhymnia","polyisobutylene","polyisocyanates","polyline","polymath","polymaths","polymer","polymerase","polymeric","polymerization","polymerize","polymorph","polymorphic","polymorphism","polymyositis","polynesia","polynesian","polynomial","polyp","polyphemus","polyphonic","polyphony","polyphosphate","polypropylene","polystyrene","polysyllabic","polysyllable","polytechnic","polytheism","polytheist","polytheistic","polythene","polytonal","polytopes","polyunsaturated","polyurethane","polyvinyl","pom","pomade","pomander","pomegranate","pomerania","pomeranian","pommel","pomona","pomp","pompadour","pompano","pompeian","pompeii","pompey","pompom","pompon","pomposity","pompous","pompousness","ponce","ponchartrain","poncho","pond","ponder","ponderer","ponderous","ponderousness","pone","pong","pongee","poniard","pons","pontchartrain","pontiac","pontianak","pontiff","pontifical","pontificate","pontoon","pony","ponytail","pooch","poodle","poof","pooh","poohs","pool","poole","pooling","poolroom","pools","poolside","poona","poop","poor","poorboy","poorhouse","poorly","poorness","pop","popcorn","pope","popek","popen","popeye","popgun","popinjay","poplar","poplin","popocatepetl","popover","poppa","popped","popper","poppet","popping","poppins","poppy","poppycock","poppyseed","pops","popsicle","populace","popular","popularism","popularity","popularization","popularize","popularized","popularizer","popularizes","popularizing","populate","populated","populates","populating","population","populism","populist","populous","populousness","popup","popupmenu","popups","popupwindow","por","porcelain","porch","porcine","porcupine","pore","porfirio","porgy","poring","pork","porker","porky","porn","porno","pornographer","pornographic","pornographically","pornography","porosity","porous","porousness","porphyritic","porphyry","porpoise","porridge","porrima","porringer","porsche","port","porta","portability","portable","portables","portably","portage","portaged","portaging","portal","portamento","portcullis","porte","ported","portend","portent","portentous","portentousness","porter","porterage","porterhouse","portfolio","porthole","portia","portico","porticoes","portie","porting","portion","portions","portire","portland","portlet","portliness","portly","portmanteau","portrait","portraitist","portraiture","portray","portrayal","portrayer","ports","portsmouth","porttitor","portugal","portuguese","portulaca","porty","pos","pose","posed","poseidon","poser","poses","poseur","posh","posing","posit","positifs","position","positionable","positional","positioned","positioning","positions","positive","positiveness","positives","positivism","positivist","positivity","positron","posix","posixct","posner","poss","posse","possess","possessed","possession","possessional","possessive","possessiveness","possessor","possibilities","possibility","possible","possibly","possum","post","postage","postal","postalcode","postback","postbag","postbox","postcard","postcode","postcondition","postconsonantal","postconstruct","postcss","postdata","postdate","postdelayed","postdoctoral","posted","poster","posterior","posteriori","posterity","posters","postfields","postfix","postgis","postgraduate","postgres","postgresql","posthaste","posthumous","posthumousness","posthypnotic","postid","postilion","postimg","postindustrial","posting","postlude","postman","postmarital","postmark","postmaster","postmen","postmeridian","postmessage","postmeta","postmistress","postmodern","postmodernist","postmortem","postnasal","postnatal","postoperative","postorder","postpaid","postpartum","postpone","postponement","postpositions","postprandial","posts","postscript","postsecondary","postulate","postulation","postural","posture","posturer","postvocalic","postwar","posuere","posx","posy","pot","potability","potable","potableness","potage","potash","potassium","potato","potatoes","potbelly","potboil","potboiler","potemkin","potency","potent","potentate","potential","potentiality","potentially","potentiating","potentiometer","potful","pothead","pother","potherb","potholder","pothole","potholing","pothook","potion","potlatch","potluck","potomac","potpie","potpourri","potsdam","potsherd","potshot","pottage","pottawatomie","potted","potter","pottery","potting","potts","potty","pouch","poughkeepsie","poul","poulterer","poultice","poultry","pounce","pound","poundage","pounder","pounds","pour","pourer","poussin","pout","pouter","poverty","pow","powder","powderpuff","powdery","powell","power","powerboat","powered","powerful","powerfulness","powerhouse","powerless","powerlessness","powermanager","powermock","powerpoint","powers","powershell","powhatan","powwow","pox","poznan","pp","ppa","ppc","ppm","ppp","ppr","pprint","pps","ppt","pq","pqr","pr","practicability","practicable","practicably","practical","practicality","practically","practicalness","practice","practiced","practicer","practices","practicing","practicum","practise","practitioner","pradesh","prado","praesent","praetor","praetorian","pragma","pragmatic","pragmatical","pragmatics","pragmatism","pragmatist","prague","praia","prairie","praise","praiser","praiseworthiness","praiseworthy","praising","prakrit","praline","pram","prance","prancer","prancing","prank","prankster","praseodymium","pratchett","prate","prater","pratfall","prating","pratt","prattle","prattler","prattling","prattville","pravda","prawn","praxes","praxis","praxiteles","pray","prayer","prayerbook","prayerful","prayerfulness","prc","prcis","prd","pre","preach","preacher","preaching","preachment","preachy","preadolescence","preakness","preallocate","preallocation","preallocator","preamble","preamp","preamplifier","prearrange","prearrangement","preassign","preauthorize","prebendary","prebuilt","precambrian","precancel","precancerous","precarious","precariousness","precaution","precautionary","precede","preceded","precedence","precedent","precedented","preceding","precept","preceptive","preceptor","precess","precession","precinct","preciosity","precious","preciousness","precipice","precipitable","precipitant","precipitate","precipitateness","precipitation","precipitous","precipitousness","precise","precisely","preciseness","precision","preclude","preclusion","precocious","precociousness","precocity","precode","precognition","precognitive","precollege","precolonial","precompile","precompiled","precomputed","preconceive","preconception","precondition","preconscious","precook","precursor","precursory","precut","pred","predate","predation","predator","predatory","predecease","predecessor","predeclared","predecline","predefine","predefined","predefinition","predesignate","predestination","predestine","predetermination","predetermine","predeterminer","predicable","predicament","predicate","predicates","predicatewithformat","predication","predicator","predict","predictability","predictable","predictably","predicted","prediction","predictions","predictive","predictor","predigest","predilect","predilection","predispose","predisposition","predoctoral","predominance","predominant","predominate","predomination","preemie","preeminence","preeminent","preemployment","preempt","preemption","preemptive","preemptor","preen","preener","preexist","preexistence","preexistent","pref","prefab","prefabbed","prefabbing","prefabricate","prefabrication","preface","prefacer","prefatory","prefect","prefecture","prefer","preferable","preferableness","preferably","preference","preferencemanager","preferences","preferential","preferment","preferred","preferring","prefetch","prefheight","prefiguration","prefigure","prefix","prefixed","prefixes","preflight","preform","prefs","prefwidth","preg","pregnancy","pregnant","preheat","prehensile","prehistoric","prehistorical","prehistory","preindustrial","preinitialize","preinterview","preisolated","prejudge","prejudger","prejudgment","prejudice","prejudiced","prejudicial","prekindergarten","prelacy","prelate","preliminarily","preliminary","preliterate","preload","preloaded","preloader","prelude","preluder","premarital","premarket","premature","prematureness","prematurity","premed","premedical","premeditate","premeditated","premeditation","premenstrual","premier","premiere","premiership","preminger","premise","premiss","premium","premix","premolar","premonition","premonitory","pren","prenatal","prent","prentice","prenticed","prenticing","prentiss","prenuptial","preoccupation","preoccupy","preoperative","preordain","prep","prepackage","prepaid","preparation","preparative","preparatory","prepare","prepared","preparedly","preparedness","preparedstatement","prepareforsegue","preparestatement","preparing","prepay","prepayment","prepend","prepender","prepends","preplanned","preponderance","preponderant","preponderate","preposition","prepositional","prepossess","prepossessing","prepossession","preposterous","preposterousness","prepped","prepping","preppy","preprepared","preprint","preprocess","preprocessed","preprocessing","preprocessor","preproduction","preprogrammed","prepubescence","prepubescent","prepublication","prepuce","prequel","preradiation","prerecord","preregister","preregistration","prerequisite","prerequisites","prerogative","pres","presage","presager","presbyopia","presbyter","presbyterian","presbyterianism","presbytery","preschool","prescience","prescient","prescott","prescribe","prescribed","prescriber","prescript","prescription","prescriptive","preselect","preselected","preselecteduris","presence","present","presentable","presentableness","presentably","presentation","presentational","presentations","presented","presenter","presentiment","presenting","presentment","presentmodalviewcontroller","presents","presentviewcontroller","preservation","preservationist","preservative","preserve","preserved","preserver","preserves","preserving","preset","presets","presetting","preshrank","preshrink","preshrunk","preside","presidency","president","presidential","presider","presidia","presidium","presley","presoaks","presort","press","pressed","presser","presses","pressing","pressingly","pressman","pressmen","pressure","pressurization","pressurize","pressurized","prestashop","prestidigitate","prestidigitation","prestidigitator","prestidigitatorial","prestige","prestigious","presto","preston","presumably","presume","presumer","presuming","presumption","presumptive","presumptuous","presumptuousness","presuppose","presupposition","pretax","preteen","pretend","pretended","pretender","pretending","pretense","pretension","pretentious","pretentiousness","preterit","preterite","preternatural","pretest","pretext","pretium","pretoria","pretreated","pretreatment","pretrial","prettier","prettify","prettily","prettiness","pretty","prettyprint","pretzel","prev","prevail","prevailing","prevalence","prevalent","prevaricate","prevaricator","prevent","preventable","preventably","preventative","preventdefault","prevented","preventer","preventing","prevention","preventive","preventiveness","prevents","preview","previous","previously","prevision","prevstate","prewar","prexes","prey","preyer","pri","priam","priapic","pribilof","price","priced","priceless","pricer","prices","pricey","pricier","priciest","pricing","prick","pricker","pricking","prickle","prickliness","prickly","pride","prideful","prier","priest","priestess","priesthood","priestley","priestliness","priestly","prig","prigged","prigging","priggish","priggishness","prim","primacy","primal","primarily","primary","primarykey","primarystage","primate","prime","primed","primefaces","primely","primeness","primer","primes","primeval","priming","primitive","primitiveness","primitives","primitivism","primmed","primmer","primmest","primming","primness","primogenitor","primogeniture","primordial","primp","primrose","prince","princedom","princeliness","princely","princess","princeton","principal","principality","principe","principia","principle","principled","principles","print","printable","printably","printed","printer","printers","printf","printing","println","printmake","printmaker","printmaking","printout","prints","printstacktrace","printstream","printwriter","prinz","prio","prior","prioress","priori","priorities","prioritize","priority","priory","pris","prisca","priscella","priscilla","prise","prised","prism","prismatic","prison","prisoner","prissie","prissily","prissiness","prissy","pristine","prithee","priv","privacy","private","privateer","privatekey","privateness","privation","privative","privatization","privatize","privet","privilege","privileged","privileges","privily","privy","prize","prized","prizefight","prizefighter","prizefighting","prizewinner","prizewinning","prj","prntscr","pro","proactive","prob","probabilist","probabilistic","probabilistically","probabilities","probability","probable","probably","probate","probated","probates","probating","probation","probational","probationary","probationer","probative","probe","prober","probity","problem","problematic","problematical","problems","proboscis","proc","procaine","procedural","procedure","procedures","proceed","proceeder","proceeding","proceeds","process","processbuilder","processdata","processed","processes","processid","processing","procession","processional","processname","processor","processors","processrequest","processstartinfo","proclamation","proclivity","proconsular","procrastinate","procrastination","procrastinator","procreational","procreatory","procrustean","procrustes","procs","proctor","proctorial","procurable","procure","procurement","procyon","prod","prodded","prodding","prodid","prodigal","prodigality","prodigious","prodigiousness","prodigy","produce","produced","producer","producers","produces","producible","producing","product","productcode","productid","production","productive","productively","productiveness","productivities","productivity","productize","productlist","productname","products","producttype","prof","profanation","profane","profaneness","profanity","professed","profession","professional","professionalism","professionalize","professionals","professor","professorial","professors","professorship","proffer","proficiency","proficient","profile","profiler","profiles","profiling","profit","profitability","profitable","profitableness","profitably","profiteer","profiterole","profitless","profits","profligacy","profligate","proforma","profound","profoundity","profoundness","profundity","profuse","profuseness","prog","progenitor","progeny","progesterone","progid","prognathous","prognoses","prognosis","prognostic","prognosticate","prognostication","prognosticator","program","programatically","programdata","programed","programing","programm","programmability","programmable","programmatic","programmatically","programme","programmed","programmer","programmers","programming","programmings","programs","progress","progressbar","progressdialog","progression","progressive","progressiveness","progressivism","proguard","proguardfiles","prohibit","prohibited","prohibiter","prohibition","prohibitionist","prohibitive","prohibitiveness","prohibitory","proin","proj","project","projected","projectid","projectile","projection","projectionist","projections","projective","projectname","projector","projects","prokofieff","prokofiev","prolegomena","proletarian","proletarianization","proletarianized","proletariat","proliferate","proliferation","prolific","prolifically","prolix","prolixity","prolog","prologize","prologue","prologuize","prolong","prolongate","prolongation","prolonger","promenade","promenader","promethean","prometheus","promethium","prominence","prominent","promiscuity","promiscuous","promiscuousness","promise","promised","promises","promising","promissory","promo","promontory","promote","promoted","promoter","promotion","promotions","promotive","promotiveness","prompt","prompted","prompter","prompting","promptitude","promptness","prompts","promulgate","promulgation","promulgator","pron","prone","proneness","prong","pronghorn","pronominalization","pronominalize","pronounce","pronounceable","pronounced","pronouncedly","pronouncement","pronouncer","pronto","pronunciation","proof","proofed","proofer","proofing","proofread","proofreader","prop","propaganda","propagandist","propagandistic","propagandize","propagate","propagated","propagation","propagator","propel","propellant","propelled","propeller","propelling","propensity","proper","properly","properness","propertied","properties","property","propertychanged","propertychangedeventargs","propertychangedeventhandler","propertygroup","propertyinfo","propertyname","propertytype","propertyvalue","prophecy","prophesier","prophesy","prophet","prophetess","prophetic","prophetical","prophylactic","prophylaxes","prophylaxis","propinquity","propionate","propitiate","propitiatory","propitious","propitiousness","propname","proponent","proportion","proportional","proportionality","proportionate","proportioner","proportionment","proposal","proposals","propose","proposed","proposition","propped","propping","proprietary","proprietor","proprietorial","proprietorship","proprietress","propriety","proprioception","proprioceptive","props","proptypes","propulsion","propulsive","propylene","prorogation","prorogue","pros","prosaic","prosaically","proscenium","prosciutti","prosciutto","proscription","proscriptive","prose","prosecute","prosecution","prosecutor","proselyte","proselytism","proselytize","proser","proserpine","prosodic","prosody","prospect","prospection","prospective","prospectiveness","prospector","prospectus","prosper","prosperity","prosperous","prosperousness","prostate","prostheses","prosthesis","prosthetic","prosthetics","prostitute","prostitution","prostrate","prostration","prosy","prot","protactinium","protagonist","protagoras","protean","protease","protect","protected","protecting","protection","protectiondomain","protectionism","protectionist","protective","protectiveness","protector","protectorate","protein","proteolysis","proteolytic","proterozoic","protest","protestant","protestantism","protestation","protesting","proteus","protg","protges","proto","protobuf","protocol","protocols","protoplasm","protoplasmic","prototype","prototypes","prototypic","prototypical","protozoa","protozoan","protozoic","protozoon","protract","protractor","protrude","protrusile","protrusion","protrusive","protuberance","protuberant","proud","proudhon","proust","prov","provabilities","provability","provable","provableness","provably","prove","proved","proven","provenal","provenance","provencals","provence","provender","provenience","provenly","prover","proverb","proverbial","proverbs","proves","provide","provided","providence","provident","providential","provider","providername","providers","provides","providing","province","provincial","provincialism","proving","provision","provisional","provisioner","provisioning","proviso","provo","provocateur","provocative","provocativeness","provoke","provoked","provoking","provolone","provost","prow","prowess","prowl","prowler","proxies","proximal","proximate","proximateness","proximity","proxmire","proxy","prozac","prto","pru","prude","prudence","prudent","prudential","prudery","prudi","prudish","prudishness","prudy","prue","pruitt","prune","pruner","prurience","prurient","prussia","prussian","prussic","prut","pry","pryce","pryer","prying","ps","psalm","psalmist","psalms","psalter","psaltery","psd","psephologist","pseudo","pseudocode","pseudonym","pseudonymous","pseudopod","pseudoscience","pshaw","psi","psittacoses","psittacosis","psoriases","psoriasis","psql","psr","psst","pst","pstmt","psych","psyche","psychedelic","psychedelically","psychiatric","psychiatrist","psychiatry","psychic","psychical","psycho","psychoacoustic","psychoacoustics","psychoactive","psychoanalysis","psychoanalyst","psychoanalytic","psychoanalytical","psychoanalyze","psychobabble","psychobiology","psychocultural","psychodrama","psychogenic","psychokinesis","psycholinguistic","psycholinguistics","psycholinguists","psychological","psychologist","psychology","psychometric","psychometrics","psychometry","psychoneuroses","psychoneurosis","psychopath","psychopathic","psychopathology","psychopaths","psychopathy","psychophysic","psychophysical","psychophysics","psychophysiology","psychos","psychosis","psychosocial","psychosomatic","psychosomatics","psychotherapeutic","psychotherapist","psychotherapy","psychotic","psychotically","psychotropic","psychs","psycopg","pt","pta","ptah","ptain","ptarmigan","pterodactyl","pthread","pthreads","pto","ptolemaic","ptolemaists","ptolemy","ptomaine","ptr","pts","pu","pub","pubbed","pubbing","pubdate","pubertal","puberty","pubes","pubescence","pubescent","pubic","pubis","public","publican","publication","publications","publicist","publicity","publicize","publicized","publickey","publickeytoken","publicly","publicness","publics","publish","publishable","published","publisher","publishers","publishes","publishing","pubnub","pubs","pubsub","puccini","puce","puck","pucker","puckett","puckish","puckishness","pudding","puddle","puddler","puddling","puddly","pudenda","pudendum","pudginess","pudgy","puebla","pueblo","puerile","puerility","puerperal","puers","puerto","puff","puffball","puffer","puffery","puffin","puffiness","puffy","pug","puget","pugged","pugging","pugh","pugilism","pugilist","pugilistic","pugnacious","pugnaciousness","pugnacity","puissant","puke","pukka","pulaski","pulchritude","pulchritudinous","pule","pulitzer","pull","pullback","pulled","pullet","pulley","pulling","pullman","pullout","pullover","pulls","pulmonary","pulp","pulpiness","pulpit","pulpwood","pulpy","pulsar","pulsate","pulsation","pulse","pulser","pulverable","pulverization","pulverize","pulverized","pulverizer","pulverizes","pulvinar","puma","pumice","pummel","pump","pumpernickel","pumping","pumpkin","pun","punch","punchbowl","punched","puncheon","puncher","punchline","punchy","punctilio","punctilious","punctiliousness","punctual","punctualities","punctuality","punctualness","punctuate","punctuation","punctuational","puncture","pundit","punditry","pungency","pungent","punic","puniness","punish","punished","punisher","punishment","punitive","punitiveness","punjab","punjabi","punk","punky","punned","punning","punster","punt","punter","puny","pup","pupa","pupae","pupal","pupate","pupil","pupillage","pupped","puppet","puppeteer","puppetry","pupping","puppy","puppyish","purblind","purcell","purchasable","purchase","purchased","purchaser","purchases","purchasing","purdah","purdahs","purdue","pure","purebred","puree","pureeing","purely","pureness","purgation","purgative","purgatorial","purgatory","purge","purger","purify","purim","purina","purine","purism","purist","puristic","puritan","puritanic","puritanical","puritanism","purity","purl","purlieu","purloin","purloiner","purple","purplish","purport","purported","purpose","purposeful","purposefulness","purposeless","purposelessness","purposes","purposive","purposiveness","purr","purring","purse","purser","pursuance","pursuant","pursue","pursuer","pursuit","purulence","purulent","purus","purvey","purveyance","purveyor","purview","pus","pusan","pusey","push","pushbutton","pushcart","pushchair","pushdown","pushed","pusher","pushes","pushily","pushiness","pushing","pushkin","pushover","pushstate","pushtu","pushviewcontroller","pushy","pusillanimity","pusillanimous","puss","pussy","pussycat","pussyfoot","pustular","pustule","put","putative","putchar","putextra","putin","putint","putnam","putnem","putout","putrefaction","putrefactive","putrefy","putrescence","putrescent","putrid","putridity","putridness","puts","putsch","putstring","putstrln","putt","putted","puttee","putter","putting","putty","puttying","puzzle","puzzled","puzzlement","puzzler","pv","pvc","pvt","pw","pwd","px","py","pyc","pycharm","pycharmprojects","pydata","pydev","pygame","pygmalion","pygmy","pyhrric","pyinstaller","pyknotic","pylab","pyle","pylon","pylori","pyloric","pylorus","pym","pymongo","pynchon","pyobject","pyodbc","pyongyang","pyorrhea","pyotr","pypi","pyplot","pypy","pyqt","pyramid","pyramidal","pyre","pyrenees","pyrex","pyridine","pyrimidine","pyrite","pyroelectric","pyroelectricity","pyrolysis","pyrolyze","pyromania","pyromaniac","pyrometer","pyrometry","pyrophosphate","pyrotechnic","pyrotechnical","pyrotechnics","pyroxene","pyroxenite","pyrrhic","pyside","pyspark","pytest","pythagoras","pythagorean","pythias","python","pythonic","pythonpath","pytorch","pyx","q","qa","qaddafi","qantas","qapplication","qatar","qb","qc","qdebug","qed","qemu","qi","qid","qimage","qingdao","qiqihar","ql","qlabel","qlineedit","qlist","qm","qmainwindow","qmake","qml","qmodelindex","qn","qname","qobject","qom","qos","qp","qpushbutton","qq","qr","qrcode","qry","qs","qsa","qsort","qstring","qt","qtcore","qtgui","qthread","qtquick","qtwidgets","qty","qu","qua","quaalude","quack","quackery","quackish","quad","quadded","quadding","quadrangle","quadrangular","quadrant","quadraphonic","quadrapole","quadratic","quadratical","quadrature","quadrennial","quadrennium","quadric","quadriceps","quadrilateral","quadrille","quadrillion","quadripartite","quadriplegia","quadriplegic","quadrivia","quadrivium","quadruped","quadrupedal","quadruple","quadruplet","quadruplicate","quadruply","quadrupole","quadword","quaff","quaffer","quagmire","quahog","quail","quaint","quaintness","quake","quaker","quakeress","quakerism","quaky","qualification","qualified","qualifier","qualifiers","qualify","qualitative","quality","qualm","qualmish","quam","quandary","quangos","quanta","quantico","quantifiable","quantified","quantifier","quantify","quantile","quantitative","quantitativeness","quantities","quantity","quantization","quantize","quantizer","quantum","quarantine","quark","quarrel","quarreler","quarrellings","quarrelsome","quarrelsomeness","quarrier","quarry","quarryman","quarrymen","quart","quarter","quarterback","quarterdeck","quarterer","quarterfinal","quartering","quarterly","quartermaster","quarters","quarterstaff","quarterstaves","quartet","quartic","quartile","quarto","quartz","quartzcore","quartzite","quasar","quash","quasi","quasilinear","quasimodo","quaternary","quaternion","quatrain","quaver","quavering","quavery","quay","quayle","quayside","que","queasily","queasiness","queasy","quebec","quechua","queen","queenie","queenly","queensland","queer","queerness","quell","queller","quench","quenchable","quenched","quencher","quenchless","quent","quentin","querida","queried","queries","quern","querulous","querulousness","query","querybuilder","querying","queryselector","queryselectorall","queryset","querystring","ques","quest","quested","quester","questing","question","questionable","questionableness","questionably","questioned","questioner","questionid","questioning","questionnaire","questions","quests","quetzalcoatl","queue","queued","queuer","queues","queuing","quezon","qui","quibble","quibbler","quiche","quick","quickbooks","quicken","quicker","quickest","quickie","quicklime","quickly","quickness","quicksand","quicksilver","quicksort","quickstart","quickstep","quid","quiesce","quiescence","quiescent","quiet","quieted","quieten","quieter","quieting","quietly","quietness","quiets","quietude","quietus","quill","quillan","quilt","quilter","quilting","quince","quincentenary","quincey","quincy","quinine","quinlan","quinn","quinquennial","quinsy","quint","quinta","quintana","quintessence","quintessential","quintet","quintic","quintile","quintilian","quintilla","quintillion","quintillionth","quintin","quintina","quinton","quintuple","quintuplet","quintus","quip","quipped","quipper","quipping","quipster","quire","quired","quires","quirinal","quiring","quirk","quirkiness","quirks","quirksmode","quirky","quirt","quis","quisling","quisque","quit","quitclaim","quite","quito","quittance","quitter","quitting","quiver","quivering","quivery","quixote","quixotic","quixotically","quixotism","quiz","quizzed","quizzer","quizzes","quizzical","quizzing","quo","quoin","quoit","quondam","quonset","quora","quorate","quorum","quot","quota","quotability","quotation","quote","quoted","quotename","quoter","quotes","quotidian","quotient","quoting","qux","qvariant","qvboxlayout","qw","qwerty","qwertys","qwidget","qx","r","ra","rab","rabat","rabbet","rabbi","rabbinate","rabbinic","rabbinical","rabbit","rabbiter","rabbitmq","rabble","rabbler","rabelais","rabelaisian","rabi","rabid","rabidness","rabies","rabin","rabis","raccoon","race","racecourse","racegoers","racehorse","raceme","racer","races","racetrack","raceway","rachael","rachel","rachele","rachelle","rachmaninoff","racial","racialism","racialist","racily","racine","raciness","racism","racist","rack","racket","racketeer","rackety","rackspace","raconteur","racoon","racquet","racquetball","racy","rad","radar","radarscope","radcliffe","radded","radder","raddest","raddie","radding","raddy","radial","radian","radiance","radians","radiant","radiate","radiation","radiative","radiator","radical","radicalism","radicalization","radicalize","radicalness","radices","radii","radio","radioactive","radioactivity","radioastronomical","radioastronomy","radiobutton","radiobuttons","radiocarbon","radiochemical","radiochemistry","radiogalaxy","radiogram","radiographer","radiographic","radiography","radiogroup","radioisotope","radiologic","radiological","radiologist","radiology","radioman","radiomen","radiometer","radiometric","radiometry","radionics","radionuclide","radiopasteurization","radiophone","radiophysics","radios","radioscopy","radiosonde","radiosterilization","radiosterilized","radiotelegraph","radiotelegraphs","radiotelegraphy","radiotelephone","radiotherapist","radiotherapy","radish","radium","radius","radix","radon","rads","rae","raeann","raf","rafa","rafael","rafaela","rafaelia","rafaelita","rafaellle","rafaello","rafe","raff","raffaello","raffarty","rafferty","raffia","raffish","raffishness","raffle","rafi","raft","rafter","rag","raga","ragamuffin","ragbag","rage","ragged","raggedness","raggedy","ragging","raging","raglan","ragnar","ragnark","ragout","ragtag","ragtime","ragweed","ragwort","rah","rahal","rahel","rahs","raid","raider","rail","railbird","railer","railhead","railing","raillery","railroad","railroader","railroading","rails","railscasts","railsinstaller","railties","railway","railwaymen","raiment","raimondo","raimund","raimundo","rain","raina","rainbow","raincloud","raincoat","raindrop","raine","rainer","rainfall","rainforest","rainier","rainless","rainmaker","rainmaking","rainproof","rainstorm","rainwater","rainy","raise","raised","raisepropertychanged","raiser","raises","raisin","raising","raj","rajah","rajahs","rajive","rake","rakel","raker","rakish","rakishness","raleigh","ralf","ralina","rally","ralph","ralston","ram","rama","ramada","ramadan","ramakrishna","raman","ramayana","ramble","rambler","rambling","rambo","rambunctious","rambunctiousness","ramekin","ramie","ramification","ramify","ramirez","ramiro","ramjet","rammed","ramming","ramo","ramon","ramona","ramonda","ramp","rampage","rampancy","rampant","rampart","ramrod","ramrodded","ramrodding","rams","ramsay","ramses","ramsey","ramshackle","ran","rana","rance","rancell","ranch","rancher","rancho","rancid","rancidity","rancidness","rancor","rancorous","rand","randa","randal","randall","randee","randell","randene","randi","randie","randiness","randint","randn","randolf","randolph","random","randomization","randomize","randomly","randomness","randomnumber","randrange","randy","ranee","rang","range","ranged","rangeland","ranger","ranges","ranginess","ranging","rangoon","rangy","rani","rania","ranice","ranier","ranique","rank","ranked","ranker","rankin","rankine","ranking","rankle","rankness","ranks","ranna","ransack","ransacker","ransell","ransom","ransomer","rant","ranter","ranting","raoul","rap","rapacious","rapaciousness","rapacity","rape","rapeseed","raphael","raphaela","rapid","rapidity","rapidly","rapidness","rapier","rapine","rapist","rapped","rappel","rappelled","rappelling","rapper","rapping","rapport","rapporteur","rapprochement","rapscallion","rapt","raptness","rapture","rapturous","rapturousness","rapunzel","raquel","raquela","rar","rare","rarebit","rarefaction","rarefy","rarely","rareness","rarity","rasalgethi","rasalhague","rascal","rash","rasher","rashness","rasia","rasla","rasmussen","rasp","raspberry","raspberrypi","rasper","rasping","rasputin","raspy","rastaban","rastafarian","raster","rastus","rat","ratchet","rate","rateable","rated","ratepayer","rater","rates","ratfor","rather","rathskeller","ratifier","ratify","rating","ratings","ratio","ratiocinate","ratiocination","ration","rational","rationale","rationalism","rationalist","rationalistic","rationality","rationalization","rationalize","rationalizer","rationalness","ratios","ratliff","ratlike","ratline","rattail","rattan","ratted","ratter","ratting","rattle","rattlebrain","rattlesnake","rattletrap","rattling","rattly","rattrap","ratty","raucous","raucousness","raul","raunchily","raunchiness","raunchy","ravage","ravager","rave","ravel","raveling","raven","ravenous","raver","ravi","ravid","ravine","ravioli","ravish","ravisher","ravishing","ravishment","raviv","raw","rawalpindi","rawboned","rawdata","rawhide","rawley","rawlings","rawlins","rawlinson","rawness","rawquery","rawson","rawvalue","rax","ray","rayburn","raychel","raye","rayleigh","raymond","raymondville","raymund","raymundo","rayna","raynard","raynell","rayner","raynor","rayon","rayshell","raytheon","raywenderlich","raze","razer","razor","razorback","razorblades","razz","razzmatazz","rb","rbenv","rbi","rbind","rbp","rbx","rc","rca","rcp","rcpp","rcpt","rcs","rcx","rd","rda","rdata","rdbms","rdd","rdf","rdfs","rdi","rdoc","rdp","rdr","rds","rdx","re","rea","reabbreviate","reach","reachability","reachable","reachably","reached","reacher","reaches","reaching","reacquisition","react","reactant","reactdom","reacted","reaction","reactionary","reactive","reactivex","reactivity","reactjs","reactor","read","readability","readable","readably","readalllines","readalltext","readdata","readdir","readdress","reade","reader","readers","readership","readfile","readfilesync","readied","readies","readily","readiness","readinesses","reading","readings","readint","readkey","readline","readlines","readme","readobject","readonly","readopt","readout","reads","readstring","readthedocs","readtoend","readvalue","readwrite","ready","readying","readystate","reagan","reagen","real","realise","realised","realism","realisms","realist","realistic","realistically","reality","realizability","realizable","realizableness","realizably","realization","realize","realized","realizer","realizes","realizing","realloc","really","realm","realness","realpath","realpolitik","realtime","realtor","realty","ream","reamer","reamonn","reanimate","reap","reaper","reappraise","rear","rearguard","rearmost","rearrange","rearward","reason","reasonable","reasonableness","reasonably","reasoner","reasoning","reasonless","reasons","reassess","reassign","reassuringly","reattach","reawakening","reba","rebase","rebate","rebbecca","rebe","rebeca","rebecca","rebecka","rebeka","rebekah","rebekkah","rebel","rebeller","rebellion","rebellious","rebelliousness","rebid","rebidding","rebind","rebirth","reboil","rebook","reboot","rebound","rebroadcast","rebuild","rebuilding","rebuilt","rebuke","rebuking","rebus","rebuttal","rebutting","rec","recalcitrance","recalcitrant","recalculate","recalibrate","recall","recant","recantation","recap","recappable","recapping","recaptcha","recast","recd","recede","receipt","receivable","receive","received","receiver","receivers","receivership","receives","receiving","recency","recension","recent","recently","recentness","receptacle","reception","receptionist","receptive","receptiveness","receptivity","receptor","recess","recessional","recessionary","recessive","recessiveness","rechargeable","recheck","recherch","recherches","recidivism","recidivist","recieve","recieved","recife","recipe","recipes","recipiency","recipient","recipients","reciprocal","reciprocate","reciprocation","reciprocity","recital","recitalist","recitative","recite","reciter","recked","recking","reckless","recklessness","reckon","reckoner","reckoning","reclaim","reclamation","recline","recliner","recluse","reclusion","recode","recognise","recognition","recognizability","recognizable","recognizably","recognize","recognized","recognizedly","recognizer","recognizes","recognizing","recognizingly","recoilless","recoinage","recolor","recombinant","recombine","recommend","recommendation","recommendations","recommended","recommends","recompense","recompile","recompute","reconcile","reconciled","reconciler","recondite","reconditeness","reconfigurability","reconfigure","reconnaissance","reconnect","reconnoiter","reconquer","reconsecrate","reconstitute","reconstruct","reconstructed","reconstruction","reconsult","recontact","recontaminate","recontribute","recook","recopy","record","recorded","recorder","recordid","recording","records","recordset","recourse","recover","recoverability","recoverable","recovery","recreant","recreate","recreated","recreating","recreational","recriminate","recrimination","recriminatory","recross","recrudesce","recrudescence","recrudescent","recruit","recruiter","recruitment","recrystallize","rect","recta","rectal","rectangle","rectangles","rectangular","rectifiable","rectification","rectifier","rectify","rectilinear","rectitude","recto","rector","rectory","rects","rectum","recumbent","recuperate","recuperation","recur","recurrence","recurrent","recurring","recurse","recursion","recursive","recursively","recusant","recuse","recv","recyclable","recycle","recycled","recycler","recyclerview","recycling","red","redact","redacted","redaction","redactor","redbird","redbreast","redbrick","redbud","redcap","redcoat","redcolor","redcurrant","redd","redden","redder","reddest","redding","reddish","reddit","redeclaration","redecorate","redeem","redeemable","redeemed","redeemer","redefine","redemption","redemptioner","redemptive","redeposit","redesign","redetermination","redford","redgrave","redhat","redhead","redhook","redial","redim","redirect","redirected","redirecting","redirection","redirects","redirectto","redirecttoaction","redis","redlining","redmine","redmond","redneck","redness","redo","redolence","redolent","redondo","redouble","redoubtably","redound","redraw","redshift","redskin","redstone","reduce","reduced","reducer","reducers","reduces","reducibility","reducible","reducibly","reducing","reduct","reduction","reductionism","reductionist","redundancy","redundant","redux","redwood","redye","redyeing","ree","reeba","reebok","reece","reecho","reed","reediness","reeding","reedville","reedy","reef","reefer","reek","reeker","reel","reeler","reena","reenforcement","reentrant","reese","reestimate","reeta","reeva","reeve","reeves","reexamine","ref","refactor","refactored","refactoring","refection","refectory","refer","referee","refereed","refereeing","reference","referenced","referencedcolumnname","referenceerror","references","referencing","referendum","referent","referential","referentiality","referer","referral","referred","referrer","referring","refers","reffed","reffing","refid","refile","refinance","refine","refined","refinement","refinish","refit","reflect","reflectance","reflected","reflection","reflectional","reflective","reflectivemethodinvocation","reflectiveness","reflectivity","reflector","reflects","reflex","reflexion","reflexive","reflexiveness","reflexivity","reflooring","refluent","reflux","refman","refocus","refold","reforestation","reforge","reform","reformat","reformatory","reformed","reformer","reformism","reformist","refract","refractive","refractiveness","refractometer","refractoriness","refractory","refrain","refresh","refreshed","refreshes","refreshing","refreshment","refrigerant","refrigerate","refrigerated","refrigeration","refrigerator","refrozen","refry","refs","refuge","refugee","refugio","refulgence","refulgent","refund","refunder","refurbish","refurbishment","refusal","refuse","refused","refuser","refuses","refutation","refute","refuter","reg","regal","regale","regalement","regalia","regan","regard","regarding","regardless","regards","regather","regatta","regen","regency","regeneracy","regenerate","regenerately","regenerateness","regex","regexes","regexoptions","regexp","regexr","reggae","reggi","reggie","reggy","regicide","regime","regimen","regiment","regimental","regimentation","regina","reginae","reginald","reginauld","regine","region","regional","regionalism","regions","regis","register","registered","registering","registerreceiver","registers","registertype","registrable","registrant","registrar","registration","registrations","registry","regnant","regor","regress","regression","regressive","regressiveness","regressors","regret","regretful","regretfulness","regrettable","regrettably","regretted","regretting","reground","regroup","regrow","regular","regularexpressions","regularity","regularization","regularize","regularly","regulate","regulated","regulation","regulations","regulative","regulator","regulatory","regulus","regurgitate","regurgitation","rehab","rehabbed","rehabbing","rehabilitate","rehabilitation","rehang","rehear","rehears","rehearsal","rehearse","rehearsed","rehearser","reheat","reheating","rehnquist","rehydrate","reich","reichenberg","reichstag","reichstags","reid","reidar","reider","reign","reiko","reilly","reimburse","reimbursement","rein","reina","reinald","reinaldo","reindeer","reindex","reine","reinforce","reinforced","reinforcement","reinforcer","reinhard","reinhardt","reinhold","reinold","reinstall","reinstalled","reinstalling","reinstate","reinstatement","reinsurance","reinterpret","reinvent","reinwald","reissue","reit","reiterative","reject","rejected","rejecter","rejecting","rejection","rejector","rejigger","rejoice","rejoicing","rejoinder","rejuvenate","rejuvenatory","rel","relapse","relate","related","relatedby","relatedly","relatedness","relater","relates","relating","relation","relational","relations","relationship","relationships","relative","relativelayout","relatively","relativeness","relativepath","relativesource","relativism","relativist","relativistic","relativistically","relativity","relator","relax","relaxant","relaxation","relaxed","relaxedness","relaxing","relay","relaycommand","relearn","releasable","release","released","releases","releasing","relent","relenting","relentless","relentlessness","relevance","relevancy","relevant","reliability","reliable","reliables","reliably","reliance","reliant","relic","relicense","relict","relief","relies","relieve","relieved","relievedly","reliever","religion","religionists","religiosity","religious","religiousness","relink","relinquish","relinquishment","reliquary","relish","relive","reload","reloaddata","reloaded","reloading","reloads","relocate","relu","reluctance","reluctant","rely","relying","rem","remade","remain","remainder","remained","remaining","remains","remake","remand","remap","remapping","remark","remarkable","remarkableness","remarkably","remarked","remarks","remarque","rematch","rembrandt","remeasure","remediable","remediableness","remedy","remember","remembered","rememberer","remembering","rememberme","remembrance","remembrancer","remind","reminded","reminder","reminders","reminds","remington","reminisce","reminiscence","reminiscent","remiss","remissness","remit","remittance","remitted","remitting","remnant","remodel","remolding","remonstrant","remonstrate","remonstration","remonstrative","remorse","remorseful","remorsefulness","remorseless","remorselessness","remote","remotely","remotemessage","remoteness","remotes","remotetestrunner","remoteviews","remotewebdriver","remoting","remoulds","removal","remove","removeall","removeat","removeattr","removechild","removeclass","removed","removeeventlistener","removefromsuperview","removeitem","removes","removing","remunerate","remunerated","remuneration","remunerative","remunerativeness","remus","remy","ren","rena","renado","renae","renaissance","renal","renaldo","rename","renamed","renaming","renard","renascence","renata","renate","renato","renaturation","renaud","renault","rend","render","rendered","renderer","renderers","rendering","renders","rendertransform","rendezvous","rendition","rene","renee","renegade","renege","reneger","renell","renelle","renew","renewal","renewer","renie","rennet","rennie","rennin","reno","renoir","renounce","renouncement","renouncer","renovate","renovation","renovator","renown","rensselaer","rent","rental","rentaller","renter","renumber","renumeration","renunciate","renunciation","renville","reoccupy","reopen","reorder","reordering","reorganized","rep","repack","repaint","repair","repairable","repairer","repairman","repairmen","repairs","repaper","reparable","reparation","repartee","reparteeing","repartition","repast","repatriate","repave","repeal","repealer","repeat","repeatability","repeatable","repeatably","repeated","repeatedly","repeater","repeating","repeats","repel","repelled","repellent","repelling","repent","repentance","repentant","repertoire","repertory","repetition","repetitions","repetitious","repetitiousness","repetitive","repetitiveness","repine","repiner","repl","replace","replaceall","replaced","replacement","replacements","replaces","replacewith","replacing","replay","replayed","replenish","replenishment","replete","repleteness","repletion","replica","replicas","replicate","replicated","replication","replicator","replied","replies","replug","reply","repo","reponse","repopulate","report","reported","reportelement","reporter","reporting","reportorial","reports","reportviewer","repos","repose","reposeful","repositories","repository","repr","reprehend","reprehenderit","reprehensibility","reprehensible","reprehensibleness","reprehensibly","reprehension","represent","representable","representation","representational","representations","representative","representativeness","representativity","represented","representing","represents","repress","repression","repressive","repressiveness","reprieve","reprimand","reprint","reprisal","reproach","reproacher","reproachful","reproachfulness","reproaching","reprobate","reprocess","reproduce","reproduced","reproducibility","reproducible","reproducibly","reproductive","reproof","reprove","reproving","reps","reptile","reptilian","republic","republican","republicanism","republish","repudiate","repudiation","repudiator","repugnance","repugnant","repulse","repulsion","repulsive","repulsiveness","reputability","reputably","reputation","repute","reputed","reputing","req","request","requestanimationframe","requestbody","requestcode","requestcontext","requestdata","requested","requestfocus","requesthandler","requestid","requesting","requestlocationupdates","requestmapping","requestmappinghandleradapter","requestmethod","requestoptions","requestparam","requestpermissions","requestqueue","requests","requesturl","requestwithurl","requiem","require","required","requiredfieldvalidator","requirejs","requirement","requirements","requires","requiring","requisite","requisiteness","requisition","requisitioner","requital","requite","requited","requiter","reread","rerecord","rerouteing","rerun","rerunning","res","resample","rescale","rescind","rescission","rescue","reseal","research","researched","researchers","researching","reselect","resemblant","resemble","resend","resent","resentful","resentfulness","resentment","reserpine","reservation","reservations","reserve","reserved","reservedness","reservednesses","reservist","reservoir","reset","resets","resetting","resettle","reshape","resharper","reshipping","reshow","reshuffle","resid","reside","residence","residency","resident","residential","resider","resides","residua","residual","residuary","residue","residuum","resignation","resigned","resignfirstresponder","resilience","resiliency","resilient","resin","resinlike","resinous","resiny","resist","resistance","resistant","resistantly","resistants","resisted","resistible","resistibly","resisting","resistive","resistiveness","resistivity","resistless","resistor","resizable","resize","resized","resizes","resizing","resold","resole","resoluble","resolute","resoluteness","resolution","resolutions","resolvability","resolvable","resolve","resolved","resolvent","resolver","resolvers","resolves","resolving","resonance","resonant","resonate","resonator","resorption","resort","resound","resource","resourcebundle","resourcedictionary","resourceful","resourcefulness","resourceid","resourcemanager","resourcename","resources","resourcetype","resp","respect","respectability","respectable","respectably","respected","respectful","respectfulness","respecting","respective","respectively","respectiveness","respects","respell","respiration","respirator","respiratory","resplendence","resplendent","respond","responded","respondent","responder","responding","responds","respondstoselector","response","responsebody","responsecode","responsedata","responseentity","responsejson","responseobject","responser","responses","responsestring","responsetext","responsetype","responsibilities","responsibility","responsible","responsibleness","responsibly","responsive","responsiveness","respray","resque","rest","restapi","restart","restarted","restarting","restarts","restate","restaurant","restaurants","restaurateur","restclient","restcontroller","resteasy","rested","rester","restful","restfuller","restfullest","restfulness","restitution","restive","restiveness","restkit","restless","restlessness","restlet","restorability","restoration","restorative","restore","restored","restorer","restoring","restrained","restraint","restrict","restricted","restricting","restriction","restrictions","restrictive","restrictively","restrictiveness","restrictives","restroom","restructurability","restructure","rests","resttemplate","restudy","restyle","resubstitute","result","resultado","resultant","resultarray","resultcode","resulted","resulting","resultlist","results","resultset","resume","resumes","resumption","resurface","resurgence","resurgent","resurrect","resurrection","resurvey","resuscitate","resuscitation","resuscitator","resx","ret","reta","retail","retailer","retain","retained","retainer","retaining","retains","retake","retaliate","retaliation","retaliatory","retard","retardant","retardation","retarder","retch","retention","retentive","retentiveness","retentivity","retest","retha","rethink","rethought","reticence","reticent","reticle","reticular","reticulate","reticulation","reticule","reticulum","retina","retinal","retinue","retire","retiredness","retiree","retirement","retiring","retort","retract","retractile","retrench","retrenchment","retributed","retribution","retributive","retries","retrieval","retrieve","retrieved","retriever","retrieves","retrieving","retrive","retro","retroactive","retrofire","retrofit","retrofitted","retrofitting","retroflection","retroflex","retroflexion","retrogradations","retrograde","retrogress","retrogression","retrogressive","retrorocket","retrospect","retrospection","retrospective","retrovirus","retrovision","retry","retrying","retsina","return","returnable","returned","returnee","returning","returns","returntransfer","returntype","returnurl","returnvalue","retval","retype","reub","reube","reuben","reunion","reusable","reuse","reused","reuseidentifier","reusing","reuters","reuther","reutilization","reuven","rev","reva","revalidate","revanchist","reveal","revealed","revealing","revealingly","reveals","reveille","revel","revelation","revelatory","revelry","revenge","revenger","revenue","revenuer","reverberant","reverberate","reverberation","revere","reverence","reverencer","reverend","reverent","reverential","reverie","revers","reversal","reverse","reversed","reverser","reversibility","reversible","reversibly","reversing","reversion","reversioner","revert","reverter","revertible","revet","revetment","review","reviewed","reviewer","reviewing","reviews","revile","revilement","reviler","revise","revised","revision","revisionary","revisionism","revisionist","revisions","revitalize","revival","revivalism","revivalist","revive","reviver","revivification","revivify","revkah","revlon","revocable","revoke","revolt","revolter","revolting","revolution","revolutionariness","revolutionary","revolutionist","revolutionize","revolutionizer","revolve","revolver","revue","revulsion","revved","revving","reward","rewarded","rewarding","rewards","rewarm","reweave","rewedding","reweigh","rewind","rewire","rework","rewrite","rewritebase","rewritecond","rewriteengine","rewriterule","rewrites","rewriting","rewritten","rex","rexes","rextester","rey","reyes","reykjavik","reyna","reynaldo","reynard","reynold","rezone","rf","rfc","rfd","rg","rgb","rgba","rh","rhapsodic","rhapsodical","rhapsodize","rhapsody","rhea","rheba","rhee","rheims","rheinholdt","rhel","rhenish","rhenium","rheology","rheostat","rhesus","rheta","rhetoric","rhetorical","rhetorician","rhett","rhetta","rheum","rheumatic","rheumatically","rheumatics","rheumatism","rheumatoid","rheumy","rhiamon","rhianna","rhiannon","rhianon","rhine","rhineland","rhinelander","rhinestone","rhinitides","rhinitis","rhino","rhinoceros","rhinotracheitis","rhizome","rho","rhoda","rhodes","rhodesia","rhodesian","rhodia","rhodie","rhodium","rhododendron","rhodolite","rhodonite","rhody","rhombic","rhomboid","rhomboidal","rhombus","rhona","rhoncus","rhonda","rhone","rhs","rhubarb","rhyme","rhymester","rhys","rhythm","rhythmic","rhythmical","rhythmics","ri","rial","riane","riannon","rianon","rib","ribald","ribaldry","ribbed","ribbentrop","ribber","ribbing","ribbon","ribcage","riboflavin","ribonucleic","ribosomal","ribosome","ric","rica","rican","ricard","ricardo","ricca","riccardo","rice","ricer","rich","richard","richardo","richardson","richart","richelieu","richen","richey","richfaces","richfield","richie","richland","richmond","richmound","richness","richter","richtextbox","richthofen","richy","rici","rick","rickard","rickenbacker","rickenbaugh","rickert","rickets","rickety","rickey","ricki","rickie","rickover","rickrack","rickshaw","ricky","rico","ricochet","ricoriki","ricotta","rid","riddance","ridden","ridding","riddle","ride","rider","riderless","ridership","ridge","ridgefield","ridgepole","ridgway","ridgy","ridicule","ridiculer","ridiculous","ridiculously","ridiculousness","riding","riemann","riesling","rife","riff","riffle","riffraff","rifle","rifled","rifleman","riflemen","rifler","rifling","rift","rig","riga","rigamarole","rigatoni","rigel","rigged","rigger","rigging","riggs","right","righteous","righteousness","righteousnesses","rightful","rightfulness","rightism","rightist","rightmost","rightness","rights","rightsize","rightward","rigid","rigidbody","rigidify","rigidity","rigidness","rigmarole","rigoberto","rigoletto","rigor","rigorous","rigorousness","rik","riki","rikki","rile","riley","rilke","rill","rim","rimbaud","rime","rimer","rimless","rimmed","rimming","rina","rinaldo","rind","rinehart","rinflate","ring","ringer","ringing","ringleader","ringlet","ringlike","ringling","ringmaster","ringo","rings","ringside","ringworm","rink","rinse","rio","riobard","riordan","riot","rioter","riotous","riotousness","rip","riparian","ripcord","ripe","ripen","ripened","ripeness","ripenesses","riper","ripest","ripley","ripoff","riposte","ripped","ripper","ripping","ripple","rippler","ripply","ripsaw","riptide","risa","risc","rise","risen","riser","risibility","risible","rising","risk","risker","riskily","riskiness","risks","risky","risotto","risqu","rissole","risus","rita","ritalin","ritchie","rite","ritter","ritual","ritualism","ritualistic","ritualistically","ritualized","ritz","ritzy","riv","riva","rival","rivaled","rivalee","rivalry","rive","river","rivera","riverbank","riverbed","riverboat","riverfront","riverine","rivers","riverside","riverview","rivet","riveter","riveting","rivi","riviera","rivkah","rivulet","rivy","riyadh","riyal","rj","rk","rl","rm","rmi","rms","rn","rna","rnd","rng","rnn","rnorm","ro","roach","road","roadbed","roadblock","roadhouse","roadie","roadkill","roadmap","roadrunner","roads","roadshow","roadside","roadsigns","roadster","roadsweepers","roadway","roadwork","roadworthy","roam","roaming","roan","roana","roanna","roanne","roanoke","roar","roarer","roaring","roarke","roast","roaster","rob","robb","robbed","robber","robbert","robbery","robbi","robbie","robbin","robbing","robby","robbyn","robe","robena","robenia","robers","roberson","robert","roberta","roberto","robertson","robeson","robespierre","robin","robina","robinet","robinett","robinetta","robinette","robinia","robinson","robinsonville","robles","robolectric","robot","robotic","robotism","robotize","roboto","robots","robson","robt","robust","robustness","roby","robyn","roc","rocco","roch","rocha","rochambeau","roche","rochell","rochella","rochelle","rochester","rochette","rock","rockabilly","rockabye","rockaway","rockbound","rockefeller","rocker","rocket","rocketry","rockey","rockfall","rockford","rockie","rockiness","rockland","rockne","rocks","rockville","rockwell","rocky","rococo","rod","roda","rodd","rodded","roddenberry","rodder","roddie","rodding","roddy","rode","rodent","rodeo","roderic","roderich","roderick","roderigo","rodge","rodger","rodi","rodie","rodin","rodina","rodney","rodolfo","rodolph","rodolphe","rodrick","rodrigo","rodriguez","rodrique","rodriquez","roe","roebuck","roentgen","rofl","rog","rogelio","roger","rogerio","roget","rogue","rogued","roguery","rogues","roguing","roguish","roguishness","roi","roil","roister","roisterer","rojas","roland","rolando","roldan","role","roleid","rolename","roles","roley","rolf","rolfe","roll","rolland","rollback","rolled","roller","rollerblade","rollerskating","rollick","rollicking","rollie","rollin","rolling","rollo","rollover","rolls","rollup","rolodex","rolph","rolvaag","rom","roma","romain","romaine","roman","romance","romancer","romanesque","romania","romanian","romano","romanov","romans","romansh","romantic","romantically","romanticism","romanticist","romanticize","romany","rome","romeo","romero","rommel","romney","romola","romona","romonda","romp","romper","romulus","romy","ron","rona","ronald","ronalda","ronda","rondo","ronica","ronna","ronni","ronnica","ronnie","ronny","ronstadt","rontgen","roo","roobbie","rood","roof","roofer","roofgarden","roofing","roofless","rooftop","rook","rookery","rookie","room","roomer","roomette","roomful","roomid","roominess","roommate","rooms","roomy","rooney","roosevelt","rooseveltian","roost","rooster","root","rootdir","rooted","rooter","rootless","rootlessness","rootlet","rootnode","rootobject","rootproject","roots","rootscope","rootstock","rootview","rootviewcontroller","rope","roper","roping","roquefort","roquemore","ror","rora","rori","rorie","rorke","rorschach","rory","ros","rosa","rosabel","rosabella","rosabelle","rosaleen","rosales","rosalia","rosalie","rosalind","rosalinda","rosalinde","rosaline","rosalyn","rosalynd","rosamond","rosamund","rosana","rosanna","rosanne","rosario","rosary","rosco","roscoe","rose","roseann","roseanna","roseanne","roseate","roseau","rosebud","rosebush","rosecrans","roseland","roselia","roselin","roseline","rosella","roselle","rosemaria","rosemarie","rosemary","rosemonde","rosen","rosenberg","rosenblum","rosendo","rosene","rosenthal","rosenzweig","rosetta","rosette","rosewater","rosewood","roshelle","rosicrucian","rosie","rosily","rosin","rosina","rosiness","rosita","roslyn","rosmunda","ross","rossetti","rossi","rossie","rossini","rossy","rostand","roster","rostov","rostra","rostrum","roswell","rosy","rot","rota","rotarian","rotary","rotate","rotated","rotates","rotatex","rotatey","rotating","rotation","rotational","rotations","rotative","rotator","rotatory","rotc","rote","rotgut","roth","rothschild","rotisserie","rotogravure","rotor","rototill","rotted","rotten","rottenness","rotter","rotterdam","rotting","rotund","rotunda","rotundity","rotundness","rou","rouault","rouge","rough","roughage","roughen","rougher","roughhouse","roughish","roughly","roughneck","roughness","roughs","roughshod","roulette","round","roundabout","rounded","roundedness","roundelay","roundels","rounder","roundhead","roundheaded","roundheadedness","roundhouse","rounding","roundish","roundness","roundoff","rounds","roundup","roundworm","rourke","rouse","rouser","rousseau","roust","roustabout","rout","route","routed","routedata","routedeventargs","routeparams","routeprovider","router","routerlink","routermodule","routers","routes","routine","routines","routing","routinize","rouvin","rove","rover","roving","row","rowan","rowboat","rowcount","rowdata","rowdatabound","rowdefinition","rowdefinitions","rowdily","rowdiness","rowdy","rowdyism","rowe","rowel","rowen","rowena","rower","rowheight","rowid","rowindex","rowland","rowley","rownames","rowney","rownum","rownumber","rows","rowspan","rowtype","rowview","roxana","roxane","roxanna","roxanne","roxi","roxie","roxine","roxy","roy","royal","royalist","royall","royalty","royce","roz","rozalie","rozalin","rozamond","rozanna","rozanne","roze","rozele","rozella","rozelle","rozina","rp","rpath","rpc","rpi","rpm","rps","rpt","rpy","rq","rr","rriocard","rs","rsa","rsfsr","rsi","rsp","rspec","rss","rssi","rst","rstrip","rstudio","rsv","rsvp","rsx","rsync","rt","rtc","rte","rtf","rtfm","rtl","rtmp","rtp","rtrim","rtsp","ru","rub","rubaiyat","rubato","rubbed","rubber","rubberize","rubberneck","rubbery","rubbing","rubbish","rubbishy","rubble","rubdown","rube","rubella","ruben","rubetta","rubi","rubia","rubicon","rubicund","rubidium","rubie","rubies","rubik","rubin","rubina","rubinstein","ruble","rubout","rubric","ruby","rubygems","rubyonrails","ruchbah","ruck","rucksack","ruckus","ruction","rudd","rudder","rudderless","ruddie","ruddiness","ruddy","rude","rudeness","rudie","rudiger","rudiment","rudimentariness","rudimentary","rudolf","rudolfo","rudolph","rudy","rudyard","rue","rueful","ruefulness","rufe","ruff","ruffian","ruffle","ruffled","ruffler","ruffly","rufus","rug","rugby","rugged","ruggedness","ruggiero","rugging","ruhr","ruin","ruination","ruiner","ruinous","ruinousness","ruiz","rule","rulebook","ruled","ruler","rules","ruling","rum","rumania","rumanian","rumba","rumble","rumbler","rumbustious","rumen","rumford","ruminant","ruminate","ruminative","rummage","rummager","rummel","rummer","rummest","rummy","rumor","rumored","rumorer","rumormonger","rump","rumpelstiltskin","rumple","rumply","rumpus","run","runabout","runaround","runat","runaway","rundown","rune","rung","runge","runic","runif","runlet","runnable","runnel","runner","runners","running","runny","runnymede","runoff","runonuithread","runs","runserver","runt","runtask","runtime","runtimeerror","runtimeexception","runtimes","runtiness","runty","runway","runwith","runworker","runyon","rupee","rupert","ruperta","ruperto","rupiah","rupiahs","ruppert","ruprecht","rupture","rural","rurality","rurik","ruse","rush","rushdie","rusher","rushes","rushing","rushmore","rushy","rusk","ruskin","russ","russel","russell","russet","russetting","russia","russian","russo","rust","rustbelt","rustic","rustically","rusticate","rustication","rusticity","rustie","rustin","rustiness","rustle","rustler","rustproof","rusty","rut","rutabaga","rutger","ruth","ruthann","ruthanne","ruthe","ruthenium","rutherford","rutherfordium","ruthi","ruthie","ruthless","ruthlessness","ruthy","rutland","rutledge","rutrum","rutted","rutter","ruttger","rutting","rutty","ruy","rv","rvalue","rvm","rvs","rw","rwanda","rwandan","rwy","rx","rxjava","rxjs","ry","ryan","ryann","rycca","rydberg","ryder","rye","ryley","ryon","ryukyu","ryun","rz","s","sa","saab","saar","saas","saba","sabbath","sabbaths","sabbatical","saber","sabered","sabik","sabin","sabina","sabine","sable","sabot","sabotage","saboteur","sabra","sabrina","sac","sacajawea","saccharides","saccharin","saccharine","sacco","sacerdotal","sacha","sachem","sachet","sachs","sack","sackcloth","sackcloths","sacker","sackful","sacking","sacra","sacral","sacrament","sacramental","sacramento","sacred","sacredness","sacrifice","sacrificer","sacrificial","sacrilege","sacrilegious","sacristan","sacristy","sacroiliac","sacrosanct","sacrosanctness","sacrum","sad","sada","sadat","saddam","sadden","sadder","saddest","saddle","saddlebag","saddler","sadducee","sade","sadella","sades","sadie","sadism","sadist","sadistic","sadistically","sadly","sadness","sadomasochism","sadomasochist","sadomasochistic","sadr","sadye","safari","safe","safeguard","safekeeping","safely","safeness","safer","safes","safest","safety","safflower","saffron","sag","saga","sagacious","sagaciousness","sagacity","sagan","sage","sagebrush","sagged","sagger","sagging","saggy","saginaw","sagittarius","sagittis","sago","saguaro","sahara","saharan","sahel","sahib","said","saidee","saids","saigon","sail","sailboard","sailboat","sailcloth","sailcloths","sailer","sailfish","sailing","sailor","sailplane","sails","saint","sainthood","saintlike","saintliness","saintly","saiph","saith","saiths","sakai","sake","saker","sakhalin","sakharov","saki","sal","salaam","salable","salacious","salaciousness","salacity","salad","saladin","salado","salaidh","salamander","salami","salaries","salary","salas","salazar","sale","saleability","saleem","salem","salerno","sales","salesclerk","salesforce","salesgirl","saleslady","salesman","salesmanship","salesmen","salespeople","salesperson","salesroom","saleswoman","saleswomen","salience","saliency","salient","salim","salina","saline","salinger","salinity","salisbury","salish","saliva","salivary","salivate","salivation","salk","salle","sallee","salli","sallie","sallow","sallowness","sallust","sally","sallyann","sallyanne","salmon","salmonella","salmonellae","saloma","salome","salomi","salomo","salomon","salomone","salon","salonika","saloon","saloonkeeper","salsa","salsify","salt","saltcellar","salted","salter","saltine","saltiness","saltness","salton","saltpeter","salts","saltshaker","saltwater","salty","salubrious","salubriousness","salubrity","salutariness","salutary","salutation","salutatory","salute","saluter","salvador","salvadoran","salvadorian","salvage","salvageable","salvager","salvation","salvatore","salve","salver","salvidor","salvo","salween","salyut","salz","sam","samaccountname","samantha","samara","samaria","samaritan","samarium","samarkand","samba","same","sameness","saml","sammie","sammy","samoa","samoan","samoset","samovar","samoyed","samp","sampan","sample","sampled","sampler","samples","sampling","sampson","samson","samsonite","samsung","samuel","samuele","samuelson","samurai","san","sana","sanatorium","sanborn","sance","sanchez","sancho","sanctification","sanctifier","sanctify","sanctimonious","sanctimoniousness","sanctimony","sanction","sanctioned","sanctity","sanctuary","sanctum","sand","sandal","sandalwood","sandbag","sandbagged","sandbagging","sandbank","sandbar","sandblast","sandblaster","sandbox","sandburg","sandcastle","sande","sander","sanderling","sanderson","sandhill","sandhog","sandi","sandia","sandie","sandiness","sandinista","sandlot","sandlotter","sandman","sandmen","sandor","sandoval","sandpaper","sandpile","sandpiper","sandpit","sandra","sandro","sandstone","sandstorm","sandusky","sandwich","sandy","sandye","sane","saned","saneness","sanes","sanford","sanforized","sang","sanger","sangfroid","sangria","sanguinary","sanguine","sanguined","sanguinely","sanguineness","sanguineous","sanguines","sanguining","sanhedrin","saning","sanitarian","sanitarium","sanitary","sanitate","sanitation","sanitize","sanitizer","sanity","sank","sankara","sans","sanserif","sanskrit","sanskritic","sanskritize","sanson","sansone","santa","santana","santayana","santeria","santiago","santo","sap","sapien","sapience","sapient","sapless","sapling","sapped","sapper","sapphira","sapphire","sappho","sappiness","sapping","sapply","sapporo","sappy","saprophyte","saprophytic","sapsucker","sapwood","sara","saraann","saracen","saragossa","sarah","sarajane","sarajevo","saran","sarape","sarasota","saratoga","saratov","sarawak","sarcasm","sarcastic","sarcastically","sarcoma","sarcophagi","sarcophagus","sardine","sardinia","sardonic","sardonically","saree","sarena","sarene","sarette","sargasso","sarge","sargent","sargon","sari","sarina","sarine","sarita","sarnoff","sarong","saroyan","sarsaparilla","sarto","sartorial","sartorius","sartre","sas","sascha","sase","sash","sasha","sashay","sashenka","sask","saskatchewan","saskatoon","sasl","sass","sassafras","sassoon","sassy","sat","satan","satanic","satanical","satanism","satanist","satchel","sate","sateen","satellite","satiable","satiate","satiation","satiety","satin","satinwood","satiny","satire","satiric","satirical","satirist","satirize","satirizes","satisfaction","satisfactorily","satisfactoriness","satisfactory","satisfiability","satisfiable","satisfied","satisfier","satisfies","satisfy","satisfying","satisfyingly","satori","satrap","saturate","saturated","saturater","saturates","saturation","saturday","saturn","saturnalia","saturnine","satyanarayanan","satyr","satyriases","satyriasis","satyric","sauce","saucepan","saucer","saucily","sauciness","saucy","saud","saudi","saudra","sauerkraut","saukville","saul","sault","sauna","sauncho","saunder","saunderson","saundra","saunter","saurian","sauropod","sausage","saussure","saut","sauternes","sauveur","savage","savageness","savagery","savanna","savannah","savant","save","saveas","savechanges","saved","savedata","savedinstancestate","savefig","savefile","saveloy","saver","saves","savina","saving","savings","savior","saviour","savonarola","savor","savored","savorer","savorier","savoriest","savoriness","savoring","savoringly","savory","savoy","savoyard","savvy","saw","sawbones","sawbuck","sawdust","sawer","sawfly","sawhorse","sawmill","sawtooth","sawyer","sawyere","sax","saxe","saxifrage","saxon","saxony","saxophone","saxophonist","saxton","say","sayer","sayest","sayhello","saying","sayre","says","sb","sba","sbin","sbt","sc","scab","scabbard","scabbed","scabbiness","scabbing","scabby","scabies","scabrous","scabrousness","scad","scaffold","scaffolding","scala","scalability","scalable","scalar","scalatest","scalawag","scald","scale","scaled","scalefactor","scaleless","scalene","scaler","scales","scaletype","scalex","scaley","scaliness","scaling","scallion","scallop","scalloper","scalloping","scalp","scalpel","scalper","scalping","scaly","scam","scammed","scamming","scamp","scamper","scampi","scan","scandal","scandalize","scandalized","scandalmonger","scandalous","scandalousness","scandinavia","scandinavian","scandium","scanf","scanned","scanner","scanning","scans","scansion","scant","scantest","scantily","scantiness","scantly","scantness","scanty","scape","scapegoat","scapegrace","scapula","scapulae","scapular","scar","scarab","scaramouch","scarborough","scarce","scarceness","scarcity","scare","scarecrow","scared","scaremonger","scaremongering","scarer","scarf","scarface","scarification","scarify","scarily","scariness","scarlatina","scarlatti","scarlet","scarlett","scarp","scarred","scarring","scarves","scary","scat","scathe","scathed","scathing","scatological","scatology","scatted","scatter","scatterbrain","scatterer","scattergun","scattering","scatting","scavenge","scavenger","sccs","sce","scelerisque","scenario","scenarios","scenarist","scene","scenery","scenes","scenic","scenically","scent","scented","scentless","scents","scepter","scepters","sceptically","sch","schaefer","schaeffer","schafer","schaffner","schantz","schapiro","scheat","sched","schedar","schedule","scheduled","scheduledthreadpoolexecutor","scheduler","schedulers","schedules","scheduling","scheherazade","scheherezade","schelling","schema","schemalocation","schemas","schemata","schematic","schematically","scheme","schemer","schemes","schemta","schenectady","scherzo","schick","schiller","schilling","schism","schismatic","schist","schizo","schizoid","schizomycetes","schizophrenia","schizophrenic","schizophrenically","schlemiel","schlep","schlepped","schlepping","schlesinger","schliemann","schlitz","schlock","schlocky","schloss","schmaltz","schmaltzy","schmidt","schmitt","schmo","schmoes","schmooze","schmuck","schnabel","schnapps","schnauzer","schneider","schnitzel","schnook","schnoz","schnozzle","schoenberg","schofield","scholar","scholarship","scholastic","scholastically","school","schoolbag","schoolbook","schoolboy","schoolchild","schoolchildren","schooldays","schooled","schoolfellow","schoolfriend","schoolgirl","schoolgirlish","schoolhouse","schooling","schoolmarm","schoolmarmish","schoolmaster","schoolmate","schoolmistress","schoolroom","schools","schoolteacher","schoolwork","schoolyard","schooner","schopenhauer","schottky","schrdinger","schrieffer","schroeder","schroedinger","schubert","schultz","schulz","schumacher","schuman","schumann","schuss","schussboomer","schuster","schuyler","schuylkill","schwa","schwab","schwartz","schwartzkopf","schwarzenegger","schweitzer","schweppes","schwinger","schwinn","sci","sciatic","sciatica","science","scientific","scientifically","scientist","scientists","scientology","scikit","scimitar","scintilla","scintillate","scintillation","scintillator","scion","scipio","scipy","scissor","scissors","scleroses","sclerosis","sclerotic","scm","scoff","scoffer","scofflaw","scold","scolder","scolioses","scoliosis","scollop","sconce","scone","scons","scoop","scooper","scoot","scooter","scope","scoped","scopes","scoping","scops","scorbutic","scorch","scorcher","scorching","score","scoreboard","scorecard","scored","scorekeeper","scoreless","scoreline","scores","scoring","scorn","scorner","scornful","scornfulness","scorpio","scorpion","scorpius","scorsese","scot","scotch","scotchgard","scotchman","scotchmen","scotchs","scotchwoman","scotchwomen","scotia","scotian","scotland","scotsman","scotsmen","scotswoman","scotswomen","scott","scotti","scottie","scottish","scottsdale","scotty","scoundrel","scour","scourer","scourge","scourger","scouring","scout","scouter","scouting","scoutmaster","scow","scowl","scowler","scp","scr","scrabble","scrabbler","scrag","scragged","scragging","scraggly","scraggy","scram","scramble","scrambler","scrammed","scramming","scranton","scrap","scrapbook","scrape","scraped","scraper","scrapheap","scraping","scrapped","scrapper","scrapping","scrappy","scrapy","scrapyard","scratch","scratched","scratcher","scratches","scratchily","scratchiness","scratchy","scrawl","scrawler","scrawly","scrawniness","scrawny","scream","screamer","screaming","scree","screech","screecher","screechy","screed","screen","screencast","screened","screenheight","screening","screenorientation","screenplay","screens","screenshot","screenshots","screensize","screenupdating","screenwidth","screenwriter","screw","screwball","screwdriver","screwed","screwer","screwiness","screwup","screwworm","screwy","scriabin","scribal","scribble","scribbler","scribe","scriber","scribner","scrim","scrimmage","scrimmager","scrimp","scrimshaw","scrip","scripps","script","scriptblock","scripted","scripting","scriptmanager","scriptreference","scripts","scriptural","scripture","scriptwriter","scriptwriting","scriven","scrivener","scrod","scrofula","scrofulous","scroll","scrollable","scrollbar","scrollbars","scrolled","scroller","scrollheight","scrolling","scrollleft","scrollpane","scrolls","scrollto","scrolltop","scrollview","scrollviewer","scrooge","scrota","scrotal","scrotum","scrounge","scroungy","scrub","scrubbed","scrubber","scrubbing","scrubby","scruff","scruffily","scruffiness","scruffy","scruggs","scrum","scrummage","scrumptious","scrunch","scrunchy","scruple","scrupulosity","scrupulous","scrupulousness","scrutable","scrutinize","scrutinized","scrutinizer","scrutinizing","scrutinizingly","scrutiny","scsi","scss","scuba","scud","scudded","scudding","scuff","scuffle","scull","sculler","scullery","sculley","scullion","sculpt","sculptor","sculptress","sculptural","sculpture","scum","scumbag","scummed","scumming","scummy","scupper","scurf","scurfy","scurrility","scurrilous","scurrilousness","scurry","scurvily","scurviness","scurvy","scutcheon","scuttle","scuttlebutt","scuzzy","scylla","scythe","scythia","sd","sda","sdate","sdcard","sdf","sdi","sdk","sdks","sdl","sdp","se","sea","seabed","seabird","seaboard","seaborg","seaborn","seaborne","seabrook","seacoast","seafare","seafarer","seafood","seafront","seagate","seagoing","seagram","seagull","seahorse","seal","sealant","sealed","sealer","seals","sealskin","seam","seamail","seaman","seamanship","seamer","seaminess","seamless","seamlessly","seamlessness","seams","seamstress","seamus","seamy","sean","seana","seaplane","seaport","seaquake","seaquarium","sear","search","searchable","searchbar","searchbox","searchcontroller","searched","searcher","searches","searchform","searching","searchlight","searchquery","searchresult","searchresults","searchstring","searchterm","searchtext","searchview","searing","sears","seascape","seashell","seashore","seasick","seasickness","seaside","season","seasonable","seasonableness","seasonably","seasonal","seasonality","seasoned","seasoner","seasoning","seat","seatbelt","seated","seater","seating","seato","seats","seattle","seawall","seaward","seawater","seaway","seaweed","seaworthiness","seaworthinesses","seaworthy","sebaceous","sebastian","sebastiano","sebastien","seborrhea","sec","secant","secede","secession","secessionist","seclude","secluded","secludedness","seclusion","seclusive","seconal","second","secondarily","secondary","seconder","secondhand","secondly","seconds","secondviewcontroller","secrecy","secret","secretarial","secretariat","secretary","secretaryship","secrete","secretion","secretive","secretiveness","secretkey","secretory","secrets","secs","sect","sectarian","sectarianism","sectary","section","sectional","sectionalism","sectionalized","sectioned","sectioning","sections","sector","sectoral","sectored","sectoring","sectors","sects","secular","secularism","secularist","secularity","secularization","secularize","secularized","secure","secured","securely","securerandom","securing","security","securityexception","secy","sed","sedan","sedate","sedateness","sedation","sedative","sedentary","seder","sedge","sedgwick","sedgy","sediment","sedimentary","sedimentation","sedition","seditious","seditiousness","seduce","seducer","seduction","seductive","seductiveness","seductress","sedulous","see","seebeck","seed","seedbed","seedcase","seeded","seeder","seediness","seeding","seedless","seedling","seedpod","seeds","seedy","seeing","seeings","seek","seekbar","seeker","seeking","seeley","seem","seemed","seeming","seemingly","seemliness","seemly","seems","seen","seep","seepage","seer","seersucker","sees","seesaw","seethe","seg","segfault","segment","segmental","segmentation","segmented","segments","segovia","segre","segregant","segregate","segregated","segregation","segregationist","segregative","segue","segueing","segundo","seidel","seigneur","seignior","seiko","seine","seiner","seinfeld","seismic","seismically","seismograph","seismographer","seismographic","seismographs","seismography","seismologic","seismological","seismologist","seismology","seismometer","seize","seizer","seizin","seizing","seizor","seizure","seka","sel","sela","selassie","selby","seldom","select","selectable","selectall","selectbox","selectcommand","selected","selecteddate","selectedimage","selectedindex","selectedindexchanged","selecteditem","selecteditems","selectedrow","selectedvalue","selecting","selectinput","selection","selectional","selectionchanged","selectionmode","selections","selectionstart","selectitem","selective","selectively","selectiveness","selectivity","selectlist","selectlistitem","selectman","selectmany","selectmen","selectness","selectnodes","selectonemenu","selector","selectors","selectric","selects","selectsinglenode","selena","selenate","selene","selenite","selenium","seleniumhq","selenographer","selenography","selestina","seleucid","seleucus","self","selfish","selfishness","selfless","selflessness","selfness","selfridge","selfsame","selfsameness","selia","selie","selig","selim","selina","selinda","seline","selinux","seljuk","selkirk","sell","sella","selle","seller","sellers","selling","sellout","sells","selma","seltzer","selvage","selves","selznick","sem","semantic","semantical","semantically","semanticist","semantics","semaphore","semarang","semblance","semen","semester","semi","semiannual","semiarid","semiautomated","semiautomatic","semicircle","semicircular","semicolon","semicolons","semiconductor","semiconscious","semidefinite","semidetached","semidrying","semifinal","semifinalist","semilogarithmic","semimonthly","seminal","seminar","seminarian","seminary","seminole","semiofficial","semiotic","semioticians","semiotics","semipermanent","semipermeable","semiprecious","semiprivate","semiprofessional","semipublic","semiquantitative","semiramis","semiretired","semisecret","semiskilled","semisolid","semistructured","semisweet","semite","semitic","semitone","semitrailer","semitrance","semitransparent","semitropical","semivowel","semiweekly","semiyearly","semolina","semper","sempiternal","sempstress","semtex","semver","sen","sena","senate","senator","senatorial","sencha","send","sendai","senddata","sendemail","sender","senderid","sendevent","sendfile","sendgrid","sending","sendkeys","sendmail","sendmessage","sendrequest","sends","sendto","seneca","senegal","senegalese","senescence","senescent","senile","senility","senior","seniority","senna","sennacherib","sennett","senor","senora","senorita","sens","sensate","sensately","sensation","sensational","sensationalism","sensationalist","sensationalize","sense","senseless","senselessness","sensibility","sensible","sensibleness","sensibly","sensitive","sensitiveness","sensitives","sensitivity","sensitization","sensitize","sensitized","sensitizers","sensor","sensormanager","sensors","sensory","sensual","sensualist","sensuality","sensuous","sensuousness","sensurround","sent","sentence","sentences","sentential","sententious","sentience","sentient","sentiment","sentimental","sentimentalism","sentimentalist","sentimentality","sentimentalization","sentimentalize","sentimentalizes","sentinel","sentry","seo","seora","seoul","sep","sepal","separability","separable","separableness","separably","separate","separated","separately","separateness","separates","separating","separation","separatism","separatist","separator","separators","seperate","seperated","sephardi","sephira","sepia","sepoy","sepses","sepsis","sept","septa","septate","september","septennial","septet","septic","septicemia","septicemic","septillion","septuagenarian","septuagint","septum","sepulcher","sepulchers","sepulchral","seq","seqnum","sequel","sequelize","sequence","sequenced","sequencer","sequences","sequent","sequential","sequentiality","sequentialize","sequentially","sequester","sequestrate","sequestration","sequin","sequitur","sequoia","sequoya","ser","sera","serafin","seraglio","serape","seraph","seraphic","seraphically","seraphim","seraphs","serb","serbia","serbian","serbo","sere","serena","serenade","serenader","serendipitous","serendipity","serene","sereneness","serengeti","serenity","serf","serfdom","serge","sergeant","sergei","sergent","sergio","serial","serializable","serialization","serialize","serialized","serializedname","serializeobject","serializer","serializers","serializing","serialnumber","serialport","serialversionuid","serie","series","serif","serigraph","serigraphs","serious","seriously","seriousness","sermon","sermonize","serological","serology","serons","serous","serpens","serpent","serpentine","serra","serrano","serrate","serration","serried","serum","serv","servant","serve","served","server","serverfault","serverless","servername","servers","serverside","serversocket","serves","service","serviceability","serviceable","serviceableness","servicebehaviors","serviced","servicehost","serviceid","serviceman","servicemen","servicemodel","servicename","serviceprovider","services","servicestack","servicetype","servicewoman","servicewomen","serviette","servile","servilely","servileness","serviles","servility","serving","servitor","servitude","servlet","servletcontainer","servletcontext","servletexception","servlethandler","servlets","servo","servomechanism","servomotor","ses","sesame","sesquicentennial","sess","sessile","session","sessionfactory","sessionid","sessionimpl","sessions","sessionstate","sessionstorage","set","setaccessible","setaction","setactive","setadapter","setarguments","setattr","setattribute","setback","setbackground","setbackgroundcolor","setbackgroundimage","setbackgroundresource","setborder","setbounds","setcancelable","setcapability","setcellvalue","setcenter","setchecked","setcolor","setcontent","setcontenttext","setcontenttype","setcontentview","setcookie","setdata","setdatasource","setdate","setdateformat","setdefault","setdefaultcloseoperation","setdelegate","setdescription","setdt","setduration","seteditable","setenabled","setentity","setenv","seterror","setfill","setflags","setfont","setforeground","setframe","setgeometry","seth","setheader","seticon","setid","setimage","setimagebitmap","setimageresource","setint","setinterval","setitem","setitems","setjavascriptenabled","setlasterror","setlayout","setlayoutmanager","setlayoutparams","setlength","setlevel","setlistadapter","setlocal","setlocale","setlocation","setlocationrelativeto","setmap","setmessage","setmodel","setname","setnegativebutton","setobject","setobjectname","seton","setonclicklistener","setonitemclicklistener","setontouchlistener","setopt","setosa","setpadding","setparameter","setpassword","setposition","setpositivebutton","setpreferredsize","setprogress","setproperty","setq","setrequestheader","setrequestmethod","setrequestproperty","setresult","sets","setscene","setscrew","setselected","setselection","setsize","setstate","setstatus","setstring","setstyle","setsupportactionbar","sett","settable","settag","settee","setter","setters","settext","settextcolor","settextsize","settime","settimeout","setting","settings","settitle","settle","settled","settlement","settler","settling","settype","settypeface","setup","setups","setuptools","setupui","seturl","setusername","setvalue","setvalues","setview","setvisibility","setvisible","setw","setwidth","setx","sety","seumas","seurat","seuss","sevastopol","seven","sevenfold","sevenpence","seventeen","seventeenths","sevenths","seventieths","seventy","sever","several","severalfold","severalty","severance","severe","severed","severeness","severing","severity","severn","severs","severus","seville","sew","sewage","seward","sewer","sewerage","sewing","sewn","sex","sexagenarian","sexily","sexiness","sexism","sexist","sexless","sexologist","sexology","sexpot","sextans","sextant","sextet","sextillion","sexton","sextuple","sextuplet","sexual","sexuality","sexualized","sexy","seychelles","seyfert","seymour","sf","sfml","sftp","sg","sgt","sh","sha","shabbily","shabbiness","shabby","shack","shackle","shackler","shackleton","shad","shade","shaded","shadeless","shader","shaders","shadily","shadiness","shading","shadow","shadowbox","shadower","shadowiness","shadows","shadowy","shady","shae","shafer","shaffer","shaft","shafting","shag","shagged","shagginess","shagging","shaggy","shah","shahs","shaina","shaine","shakable","shakably","shake","shakeable","shakedown","shaken","shakeout","shaker","shakespeare","shakespearean","shakespearian","shakeup","shakily","shakiness","shaking","shaky","shale","shall","shallot","shallow","shallowness","shalna","shalne","shalom","shalt","sham","shaman","shamanic","shamble","shambles","shame","shamefaced","shameful","shamefulness","shameless","shamelessness","shammed","shammer","shamming","shammy","shampoo","shampooer","shamrock","shamus","shan","shana","shanan","shanda","shandee","shandeigh","shandie","shandra","shandy","shane","shanghai","shanghaiing","shani","shanie","shank","shanna","shannah","shannan","shannen","shannon","shanon","shanta","shantee","shantis","shantung","shanty","shantytown","shape","shaped","shapeless","shapelessness","shapeliness","shapely","shaper","shapes","shapiro","shara","sharable","sharai","shard","shards","share","shareable","sharecrop","sharecropped","sharecropper","sharecropping","shared","sharedapplication","sharedinstance","sharedpreferences","shareholder","shareholding","sharepoint","sharer","shares","shareware","shari","sharia","sharing","sharity","shark","sharkskin","sharl","sharla","sharleen","sharlene","sharline","sharon","sharona","sharp","sharpe","sharpen","sharpened","sharpener","sharper","sharpie","sharpness","sharpshoot","sharpshooter","sharpshooting","sharpy","sharron","sharyl","shasta","shat","shatter","shattering","shatterproof","shaughn","shaula","shaun","shauna","shave","shaved","shaver","shavian","shaving","shavuot","shaw","shawano","shawl","shawn","shawna","shawnee","shay","shayla","shaylah","shaylyn","shaylynn","shayna","shayne","shcharansky","she","shea","sheaf","shear","shearer","sheath","sheathe","sheather","sheathing","sheaths","sheave","sheaves","sheba","shebang","shebeli","sheboygan","shed","shedding","shedir","sheds","sheela","sheelagh","sheelah","sheen","sheena","sheeny","sheep","sheepdog","sheepfold","sheepherder","sheepish","sheepishness","sheepskin","sheer","sheeree","sheerness","sheet","sheeting","sheetlike","sheetname","sheetrock","sheets","sheff","sheffie","sheffield","sheffielder","sheffy","sheik","sheikdom","sheikh","sheila","sheilah","shekel","shel","shela","shelagh","shelba","shelbi","shelby","shelden","sheldon","shelf","shelia","shell","shellac","shellacked","shellacking","shelled","shelley","shellfire","shellfish","shelli","shellie","shells","shelly","shelter","sheltered","shelterer","shelton","shelve","shelver","shelves","shelving","shem","shena","shenandoah","shenanigan","shenyang","sheol","shep","shepard","shepherd","shepherdess","sheppard","shepperd","sher","sheratan","sheraton","sherbet","sherd","sheree","sheri","sheridan","sherie","sheriff","sherill","sherilyn","sherline","sherlock","sherlocke","sherm","sherman","shermie","shermy","sherpa","sherri","sherrie","sherry","sherwin","sherwood","sherwynd","sherye","sheryl","shetland","shevardnadze","shew","shewn","shh","shi","shiatsu","shibboleth","shibboleths","shield","shielded","shielder","shields","shift","shifted","shiftily","shiftiness","shifting","shiftless","shiftlessness","shifts","shifty","shiite","shijiazhuang","shikoku","shill","shillelagh","shillelaghs","shilling","shillong","shiloh","shim","shimmed","shimmer","shimmery","shimming","shimmy","shin","shina","shinbone","shindig","shine","shiner","shingle","shingler","shinguard","shininess","shining","shinned","shinning","shinny","shinsplints","shinto","shintoism","shintoist","shiny","shinyapp","ship","shipboard","shipborne","shipbuild","shipbuilder","shipload","shipman","shipmate","shipmen","shipment","shipowner","shippable","shipped","shipper","shipping","ships","shipshape","shipwreck","shipwright","shipyard","shir","shiraz","shire","shirk","shirker","shirl","shirlee","shirleen","shirlene","shirley","shirline","shiro","shirr","shirt","shirtfront","shirting","shirtless","shirtmake","shirtmaker","shirts","shirtsleeve","shirttail","shirtwaist","shit","shitting","shitty","shiv","shiva","shiver","shiverer","shivery","shivved","shivving","shlemiel","shm","shmuel","shoal","shoat","shock","shocker","shocking","shockley","shockproof","shod","shoddily","shoddiness","shoddy","shoe","shoehorn","shoeing","shoelace","shoemake","shoemaker","shoer","shoes","shoeshine","shoestring","shoetree","shogun","shogunate","shoji","sholom","shone","shoo","shoofly","shook","shoot","shooter","shooting","shootout","shop","shopify","shopkeep","shopkeeper","shoplift","shoplifter","shoplifting","shoppe","shopped","shopper","shopping","shops","shoptalk","shopworn","shore","shorebird","shoreline","shorewood","shoring","short","shortage","shortbread","shortcake","shortchange","shortcode","shortcoming","shortcrust","shortcut","shortcuts","shortcutting","shorten","shortened","shortener","shortening","shorter","shortest","shortfall","shorthand","shorthorn","shortie","shortish","shortlist","shortly","shortname","shortness","shortsighted","shortsightedness","shortstop","shortwave","shorty","shoshana","shoshanna","shoshone","shostakovitch","shot","shotgun","shotgunned","shotgunner","shotgunning","shots","shotted","shotting","should","shoulder","shouldn","shout","shove","shovel","shoveler","shovelful","shover","show","showasaction","showbiz","showbizzes","showboat","showcase","showdialog","showdown","showed","shower","showery","showgirl","showily","showiness","showing","showinputdialog","showman","showmanship","showmen","showmessage","showmessagedialog","shown","showoff","showpiece","showplace","showroom","shows","showthread","showy","shp","shpt","shrank","shrapnel","shred","shredded","shredder","shredding","shreveport","shrew","shrewd","shrewdness","shrewish","shrewishness","shriek","shrieker","shrift","shrike","shrill","shrillness","shrilly","shrimp","shrine","shrink","shrinkage","shrinker","shrinking","shrive","shrivel","shriven","shropshire","shroud","shrub","shrubbed","shrubbery","shrubbing","shrubby","shrug","shrugged","shrugging","shrunk","sht","shtick","shtml","shu","shuck","shucker","shucks","shudder","shuddery","shuffle","shuffleboard","shuffled","shuffles","shuffling","shulman","shun","shunned","shunning","shunt","shunter","shurlock","shurlocke","shurwood","shush","shut","shutdown","shuteye","shutil","shutoff","shutout","shutter","shutterbug","shuttering","shutting","shuttle","shuttlecock","shy","shyer","shyest","shylock","shylockian","shyness","shyster","si","siam","siamese","sian","siana","sianna","sib","sibbie","sibby","sibeal","sibel","sibelius","sibella","sibelle","siberia","siberian","sibilance","sibilancy","sibilant","sibilla","sibley","sibling","siblings","sibyl","sibylla","sibylle","sibylline","sic","sicilian","siciliana","sicily","sick","sickbay","sickbed","sicken","sickener","sickening","sicker","sickie","sickish","sickle","sickliness","sickly","sickness","sicko","sickout","sickroom","sid","side","sidearm","sideband","sidebar","sideboard","sideburns","sidecar","sided","sidedness","sidekick","sidekiq","sidelight","sideline","sidelong","sideman","sidemen","sidenav","sidepiece","sider","sidereal","sides","sidesaddle","sideshow","sidesplitting","sidestep","sidestepped","sidestepping","sidestroke","sideswipe","sidetrack","sidewalk","sidewall","sidewards","sideway","sidewinder","siding","sidle","sidnee","sidney","sidoney","sidonia","sidonnie","sids","siege","siegel","siegfried","sieglinda","siegmund","siemens","siena","sienna","sierpinski","sierra","siesta","sieve","siffre","sift","sifted","sifter","sig","sigfrid","sigfried","siggraph","sigh","sigher","sighs","sight","sighted","sighter","sighting","sightless","sightliness","sightly","sightread","sightsee","sightseeing","sigint","sigismond","sigismondo","sigismund","sigismundo","sigma","sigmoid","sigmund","sign","signal","signaled","signaler","signaling","signalization","signalize","signally","signalman","signalmen","signalr","signals","signatory","signature","signatures","signboard","signed","signer","signet","significance","significant","significantly","signification","signify","signin","signing","signor","signora","signore","signori","signories","signorina","signorine","signout","signpost","signs","signup","sigrid","sigsegv","sigurd","sigvard","sihanouk","sikh","sikhism","sikhs","sikkim","sikkimese","sikorsky","silage","silas","sile","sileas","siled","silence","silencer","silent","silently","silentness","silesia","silhouette","silica","silicate","siliceous","silicide","silicon","silicone","silicoses","silicosis","silk","silken","silkily","silkiness","silkscreen","silkworm","silky","sill","silliness","silly","silo","silt","siltation","siltstone","silty","silurian","silva","silvain","silvan","silvana","silvano","silvanus","silver","silverer","silverfish","silverlight","silverman","silversmith","silversmiths","silverstein","silverware","silvery","silvester","silvia","silvie","silvio","sim","simd","simenon","simeon","simian","similar","similarity","similarly","simile","similiar","similitude","simla","simmer","simmonds","simmons","simmonsville","simms","simon","simona","simone","simonette","simonize","simonne","simony","simpatico","simper","simple","simpleadapter","simplecursoradapter","simpledateformat","simpleminded","simpleness","simpler","simplest","simpleton","simpletype","simplex","simplexml","simplexmlelement","simplicity","simplification","simplified","simplifies","simplify","simplifying","simplistic","simplistically","simply","simpson","simula","simulacrum","simulate","simulated","simulating","simulation","simulative","simulator","simulcast","simultaneity","simultaneous","simultaneously","simultaneousness","sin","sinai","sinatra","since","sincere","sincereness","sincerer","sincerest","sincerity","sinclair","sinclare","sindbad","sindee","sindhi","sine","sinecure","sinecurist","sinew","sinewy","sinful","sinfulness","sing","singapore","singaporean","singborg","singe","singeing","singer","singing","single","singlehanded","singleline","singleness","singleordefault","singlet","singleton","singletons","singletree","singsong","singular","singularity","singularization","sinhalese","sinister","sinisterness","sinistral","sink","sinkable","sinker","sinkhole","sinkiang","sinking","sinks","sinless","sinlessness","sinned","sinner","sinning","sinon","sint","sinter","sinuosity","sinuous","sinuousities","sinuousness","sinus","sinusitis","sinusoid","sinusoidal","siobhan","sioux","siouxie","sip","siphon","siphons","sipped","sipper","sipping","sir","sire","sired","siren","sires","siring","sirius","sirloin","sirocco","sirred","sirring","sirup","sis","sisal","sisely","sisile","sissie","sissified","sissy","sister","sisterhood","sisterliness","sisterly","sistine","sisyphean","sisyphus","sit","sitar","sitarist","sitcom","site","sitecore","siteid","sitemap","sitename","sitepoint","sites","sits","sitter","sitting","situ","situate","situation","situational","situationist","situations","situs","siusan","siva","siward","six","sixfold","sixgun","sixpence","sixpenny","sixshooter","sixteen","sixteenths","sixth","sixths","sixtieths","sixty","sizable","sizableness","size","sized","sizeof","sizer","sizes","sizing","sizzle","sizzler","sj","sjaelland","sk","ska","skaction","skat","skate","skateboard","skater","skedaddle","skeet","skein","skeletal","skeleton","skell","skelly","skeptic","skeptical","skepticism","sketch","sketchbook","sketcher","sketchily","sketchiness","sketchpad","sketchy","skew","skewer","skewing","skewness","ski","skid","skidded","skidding","skiff","skiing","skilfully","skill","skilled","skillet","skillful","skillfulness","skillfulnesses","skilling","skills","skim","skimmed","skimmer","skimming","skimp","skimpily","skimpiness","skimpy","skin","skincare","skindive","skinflint","skinhead","skinless","skinned","skinner","skinniness","skinning","skinny","skins","skintight","skip","skipp","skipped","skipper","skippie","skipping","skippy","skips","skipton","skirmish","skirmisher","skirt","skirter","skirting","skit","skitter","skittish","skittishness","skittle","skivvy","sklearn","skoal","skopje","skspritenode","sku","skulduggery","skulk","skulker","skull","skullcap","skullduggery","skunk","skview","sky","skycap","skydiver","skydiving","skye","skyhook","skyjack","skyjacker","skylab","skylar","skylark","skylarker","skyler","skylight","skyline","skype","skyrocket","skyscrape","skyscraper","skyward","skywave","skyway","skywriter","skywriting","sl","slab","slabbed","slabbing","slack","slacken","slacker","slackness","slade","slag","slagged","slagging","slain","slake","slaked","slalom","slam","slammed","slammer","slamming","slander","slanderous","slanderousness","slang","slangy","slant","slanting","slantwise","slap","slapdash","slaphappy","slapped","slapper","slapping","slapstick","slash","slashes","slashing","slat","slate","slater","slather","slating","slatted","slattern","slatting","slaughter","slaughterer","slaughterhouse","slav","slave","slaveholder","slaver","slavery","slaves","slavic","slavish","slavishness","slavonic","slaw","slay","sleaze","sleazily","sleaziness","sleazy","sled","sledded","sledder","sledding","sledge","sledgehammer","sleek","sleekness","sleep","sleeper","sleepily","sleepiness","sleeping","sleepless","sleeplessness","sleepover","sleepwalk","sleepwalker","sleepwear","sleepy","sleepyhead","sleet","sleety","sleeve","sleeveless","sleeving","sleigh","sleighs","sleight","sleken","slender","slenderize","slenderness","slept","slesinger","sleuth","sleuths","slew","slf","slice","sliced","slicer","slices","slicing","slick","slicker","slickness","slid","slide","slidedown","slider","sliders","slides","slideshow","slidetoggle","slideup","sliding","slight","slighter","slighting","slightly","slightness","slim","slime","sliminess","slimline","slimmed","slimmer","slimmest","slimming","slimness","slimy","sling","slings","slingshot","slink","slinky","slip","slipcase","slipcover","slipknot","slippage","slipped","slipper","slipperiness","slippery","slipping","slipshod","slipstream","slipway","slit","slither","slithery","slitted","slitter","slitting","sliver","slivery","sln","sloan","sloane","slob","slobber","slobbery","slocum","sloe","slog","slogan","sloganeer","slogged","slogging","sloop","slop","slope","sloped","slopped","sloppily","sloppiness","slopping","sloppy","slosh","slot","sloth","slothful","slothfulness","sloths","slots","slotted","slotting","slouch","sloucher","slouchy","slough","sloughs","slovak","slovakia","slovakian","sloven","slovene","slovenia","slovenian","slovenliness","slovenly","slow","slowcoaches","slowdown","slower","slowing","slowish","slowly","slowness","slowpoke","slows","slr","sludge","sludgy","slue","slug","sluggard","slugged","slugger","slugging","sluggish","sluggishness","sluice","slum","slumber","slumberer","slumberous","slumlord","slummed","slummer","slumming","slummy","slump","slung","slunk","slur","slurp","slurred","slurried","slurring","slurry","slurrying","slush","slushiness","slushy","slut","sluttish","slutty","sly","slyness","sm","smack","smacker","small","smaller","smallest","smallholders","smallholding","smallint","smallish","smallness","smallpox","smalltalk","smalltime","smallwood","smarmy","smart","smarten","smarter","smartness","smartphone","smartphones","smarty","smartypants","smash","smasher","smashing","smashup","smattering","smb","smear","smearer","smeary","smell","smeller","smelliness","smelly","smelt","smelter","smetana","smidgen","smilax","smile","smiley","smilies","smiling","smirch","smirk","smirnoff","smite","smiter","smith","smithereens","smithfield","smiths","smithson","smithsonian","smithtown","smithy","smitten","smitty","smock","smocking","smog","smoggy","smoke","smokehouse","smokeless","smoker","smokescreen","smokestack","smokey","smokiness","smoking","smoky","smolder","smoldering","smolensk","smollett","smooch","smooth","smoothen","smoother","smoothie","smoothing","smoothly","smoothness","smooths","smote","smother","smp","smrgsbord","sms","smsa","smsmanager","smth","smtp","smtpclient","smucker","smudge","smudginess","smudgy","smug","smugged","smugger","smuggest","smugging","smuggle","smuggler","smugness","smut","smuts","smutted","smuttiness","smutting","smutty","smyrna","sn","snack","snackbar","snaffle","snafu","snag","snagged","snagging","snail","snake","snakebird","snakebite","snakelike","snakeroot","snaky","sname","snap","snapback","snapdragon","snapped","snapper","snappily","snappiness","snapping","snappish","snappishness","snappy","snapshot","snapshots","snapshotted","snapshotting","snare","snarer","snarf","snarl","snarler","snarling","snarly","snatch","snatcher","snazzily","snazzy","snd","snead","sneak","sneaker","sneakily","sneakiness","sneaking","sneaky","sneed","sneer","sneerer","sneering","sneeze","snell","snick","snicker","snide","snideness","snider","sniff","sniffer","sniffle","sniffler","sniffles","snifter","snigger","snip","snipe","sniper","snipped","snipper","snippet","snippets","snipping","snippy","snit","snitch","snivel","sniveler","snmp","sno","snob","snobbery","snobbish","snobbishness","snobby","snodgrass","snood","snook","snooker","snoop","snooper","snoopy","snoot","snootily","snootiness","snooty","snooze","snore","snorkel","snort","snorter","snot","snotted","snottily","snottiness","snotting","snotty","snout","snow","snowball","snowbank","snowbelt","snowbird","snowblower","snowboard","snowbound","snowcapped","snowden","snowdrift","snowdrop","snowfall","snowfield","snowflake","snowily","snowiness","snowman","snowmen","snowmobile","snowplough","snowploughs","snowplow","snowshed","snowshoe","snowshoeing","snowshoer","snowstorm","snowsuit","snowy","snprintf","sns","snub","snubbed","snubber","snubbing","snuff","snuffbox","snuffer","snuffle","snuffler","snuffly","snug","snugged","snugger","snuggest","snugging","snuggle","snuggly","snugness","snyder","so","soa","soak","soaker","soap","soapaction","soapbox","soapclient","soapenv","soapiness","soapobject","soapstone","soapsud","soapui","soapy","soar","soarer","soaring","sob","sobbed","sobbing","sober","soberer","soberness","sobriety","sobriquet","soc","soccer","sociabilities","sociability","sociable","sociably","social","socialism","socialist","socialistic","socialite","sociality","socialization","socialize","socialized","socializer","socially","societal","society","socio","sociobiology","sociocultural","sociodemographic","socioeconomic","socioeconomically","sociolinguistics","sociological","sociologist","sociology","sociometric","sociometry","sociopath","sociopaths","sock","sockaddr","socket","socketexception","socketio","socketprocessor","sockets","sockfd","socks","socorro","socrates","socratic","sod","soda","sodales","sodded","sodden","soddenness","sodding","soddy","sodium","sodom","sodomite","sodomize","sodomy","soever","sofa","sofia","sofie","soft","softball","softbound","soften","softener","softhearted","softie","softlayer","softmax","softness","software","softwood","softy","soggily","sogginess","soggy","soho","soign","soil","soiled","soire","sojourn","sol","solace","solacer","solar","solaria","solaris","solarium","sold","solder","soldier","soldiery","sole","solecism","soled","solely","solemn","solemness","solemnify","solemnity","solemnization","solemnize","solemnness","solenoid","soler","soles","solicit","solicitation","solicited","solicitor","solicitous","solicitousness","solicitude","solid","solidarity","solidcolorbrush","solidi","solidification","solidify","solidity","solidness","solidus","soliloquies","soliloquize","soliloquy","soling","solipsism","solipsist","solis","solitaire","solitary","solitude","sollie","solly","solo","soloist","solomon","solon","soloviev","solr","solstice","solubility","soluble","solute","solution","solutions","solvable","solvating","solve","solved","solvency","solvent","solvently","solver","solves","solving","solzhenitsyn","som","soma","somali","somalia","somalian","somatic","somber","somberness","sombre","sombrero","some","somebody","someclass","somedata","someday","somefile","somefunc","somefunction","somehow","someid","somemethod","somename","someobject","someone","someplace","someproperty","somersault","somerset","somersetted","somersetting","somerville","somestring","sometable","sometext","something","somethingelse","sometime","sometimes","sometype","someurl","somevalue","somevar","someway","somewhat","somewhere","somme","sommelier","somnambulism","somnambulist","somnolence","somnolent","somoza","somthing","son","sonar","sonarqube","sonata","sonatina","sonatype","sondheim","sondra","sonenberg","song","songbag","songbird","songbook","songfest","songful","songfulness","songhai","songhua","songs","songster","songstress","songwriter","songwriting","sonia","sonic","sonja","sonnet","sonni","sonnie","sonnnie","sonny","sonoma","sonora","sonority","sonorous","sonorousness","sontag","sonuvabitch","sony","sonya","soon","sooner","soonish","soot","sooth","soothe","soother","soothing","soothingness","sooths","soothsay","soothsayer","sooty","sop","sophey","sophi","sophia","sophie","sophism","sophist","sophister","sophistic","sophistical","sophisticate","sophisticated","sophisticatedly","sophistication","sophistry","sophoclean","sophocles","sophomore","sophomoric","sophronia","soporific","soporifically","sopped","sopping","soppy","soprano","sopwith","sorbet","sorbonne","sorcerer","sorceress","sorcery","sorcha","sordid","sordidness","sore","sorehead","soreness","sorensen","sorenson","sorghum","sorority","sorrel","sorrentine","sorrily","sorriness","sorrow","sorrower","sorrowful","sorrowfulness","sorry","sort","sorta","sortable","sortby","sorted","sortedlist","sorter","sortexpression","sortie","sortieing","sorting","sortorder","sorts","sos","sosa","sosanna","sot","soto","sottish","sou","soubriquet","souffl","sough","soughs","sought","soul","soulful","soulfulness","soulless","sound","soundboard","soundcloud","sounder","sounders","soundest","sounding","soundings","soundless","soundly","soundness","soundproof","soundproofing","sounds","soundtrack","soup","souphanouvong","soupon","soupy","sour","source","sourcecode","sourced","sourceencoding","sourcefile","sourceforge","sourceid","sourceless","sourcemap","sourcepath","sources","sourcetype","sourcing","sourdough","sourdoughs","sourish","sourness","sourpuss","sous","sousa","sousaphone","souse","south","southampton","southbound","southeast","southeaster","southeastern","southeastward","souther","southerly","southern","southerner","southernisms","southernmost","southey","southfield","southing","southland","southpaw","souths","southward","southwest","southwester","southwestern","southwestward","souvenir","sovereign","sovereignty","soviet","sow","sowbelly","sowens","sower","soweto","sown","sox","soy","soybean","soyinka","soyuz","sp","spa","spaatz","space","spacecraft","spaced","spaceflight","spaceman","spacemen","spaceport","spacer","spaces","spaceship","spacesuit","spacewalk","spacewar","spacewoman","spacewomen","spacey","spacial","spacier","spaciest","spaciness","spacing","spacious","spaciousness","spackle","spade","spadeful","spader","spadework","spadices","spadix","spafford","spaghetti","spahn","spain","spake","spalding","spam","span","spandex","spandrels","spangle","spanglish","spaniard","spaniel","spanielled","spanielling","spanish","spank","spanker","spanking","spanned","spanner","spanning","spans","spar","sparc","sparcstation","spare","spareness","sparer","spareribs","sparing","spark","sparkconf","sparkcontext","sparker","sparkle","sparkler","sparkman","sparks","sparksession","sparksubmit","sparky","sparling","sparql","sparred","sparrer","sparring","sparrow","spars","sparse","sparseness","sparsity","sparta","spartacus","spartan","spasm","spasmodic","spasmodically","spastic","spat","spate","spathe","spatial","spatiality","spatted","spatter","spatterdock","spatting","spatula","spavin","spawn","spawned","spawner","spawning","spay","spca","speak","speakable","speakeasy","speaker","speakers","speakership","speaking","speaks","spear","spearer","spearfish","spearhead","spearmint","spears","spec","special","specialcells","specialism","specialist","specialization","specialize","specialized","specializing","specially","specialty","specie","species","specif","specifiability","specifiable","specifiably","specific","specifically","specification","specifications","specificity","specifics","specified","specifier","specifies","specify","specifying","specimen","specious","speciousness","speck","speckle","specs","spectacle","spectacular","spectator","specter","spectra","spectral","spectralness","spectrogram","spectrograph","spectrographically","spectrography","spectrometer","spectrometric","spectrometry","spectrophotometer","spectrophotometric","spectrophotometry","spectroscope","spectroscopic","spectroscopically","spectroscopy","spectrum","specular","specularity","speculate","speculation","speculative","speculator","sped","speech","speechless","speechlessness","speed","speedboat","speedboating","speeder","speedily","speediness","speedometer","speeds","speedster","speedup","speedway","speedwell","speedy","speer","speleological","speleologist","speleology","spell","spellbind","spellbinder","spellbound","spelldown","spelled","speller","spelling","spells","spelunker","spelunking","spence","spencer","spencerian","spend","spender","spending","spends","spendthrift","spengler","spenglerian","spense","spenser","spenserian","spent","sperm","spermatophyte","spermatozoa","spermatozoon","spermicidal","spermicide","sperry","spew","spewer","spf","sphagnum","sphere","spheric","spherical","spherics","spheroid","spheroidal","spherule","sphincter","sphinx","spi","spic","spica","spice","spicebush","spicily","spiciness","spicule","spicy","spider","spiderweb","spiderwort","spidery","spiegel","spiel","spielberg","spier","spiffy","spigot","spike","spiker","spikiness","spiky","spill","spillage","spillane","spillover","spillway","spin","spinach","spinal","spindle","spindly","spine","spineless","spinelessness","spinet","spininess","spinnability","spinnaker","spinner","spinneret","spinning","spinoza","spinster","spinsterhood","spinsterish","spiny","spiracle","spiraea","spiral","spire","spirea","spirit","spirited","spiritedness","spiritless","spirits","spiritual","spiritualism","spiritualist","spiritualistic","spirituality","spirituous","spiro","spirochete","spiry","spit","spitball","spite","spiteful","spitefuller","spitefullest","spitefulness","spitfire","spits","spitted","spitting","spittle","spittoon","spitz","spl","splash","splashdown","splasher","splashily","splashiness","splashscreen","splashy","splat","splatted","splatter","splatting","splay","splayfeet","splayfoot","spleen","splendid","splendidness","splendor","splendorous","splenetic","splice","splicer","spline","splint","splinter","splintery","split","splits","splittable","splitted","splitter","splitting","splodge","splotch","splotchy","splurge","splutter","splutterer","spock","spoil","spoilables","spoilage","spoiled","spoiler","spoilsport","spokane","spoke","spoken","spokeshave","spokesman","spokesmen","spokespeople","spokesperson","spokeswoman","spokeswomen","spoliation","sponge","spongecake","sponger","sponginess","spongy","sponsor","sponsorship","spontaneity","spontaneous","spontaneousness","spoof","spook","spookiness","spooky","spool","spoon","spoonbill","spoonerism","spoonful","spoor","sporadic","sporadically","spore","sporran","sport","sportiness","sporting","sportive","sportiveness","sports","sportscast","sportsman","sportsmanlike","sportsmanship","sportsmen","sportswear","sportswoman","sportswomen","sportswriter","sporty","sposato","spot","spotify","spotless","spotlessness","spotlight","spotlit","spots","spotted","spotter","spottily","spottiness","spotting","spotty","spousal","spouse","spout","spouter","sprain","sprang","sprat","sprawl","spray","sprayed","sprayer","sprays","spread","spreadeagled","spreader","spreadsheet","spreadsheetapp","spreadsheets","spree","spreeing","sprig","sprigged","sprigging","sprightliness","sprightly","spring","springapplication","springboard","springbok","springboot","springbootapplication","springeing","springer","springfield","springframework","springily","springiness","springing","springjunit","springlike","springsource","springsteen","springtime","springy","sprinkle","sprinkler","sprinkling","sprint","sprintf","sprite","spritebatch","spritekit","sprites","spritz","sprocket","sprocketed","sprockets","sproul","sprout","spruce","spruceness","sprue","sprung","spry","spryness","spss","spud","spudded","spudding","spuds","spume","spumone","spumoni","spumy","spun","spunk","spunky","spur","spurge","spurious","spuriousness","spurn","spurred","spurring","spurt","sputa","sputnik","sputter","sputum","spy","spyder","spyglass","sq","sql","sqlalchemy","sqlclient","sqlcmd","sqlcommand","sqlconnection","sqlcontext","sqldataadapter","sqldatareader","sqldatasource","sqldbtype","sqlerror","sqlexception","sqlexpress","sqlfiddle","sqlite","sqliteconnection","sqlitedatabase","sqliteopenhelper","sqlparameter","sqlplus","sqlquery","sqlserver","sqlsrv","sqlstate","sqoop","sqq","sqrt","sqs","squab","squabbed","squabber","squabbest","squabbing","squabble","squabbler","squad","squadded","squadding","squadron","squalid","squalidness","squall","squaller","squally","squalor","squamous","squander","squanto","square","squared","squareness","squarer","squares","squaresville","squareup","squarish","squash","squashiness","squashy","squat","squatness","squatted","squatter","squattest","squatting","squaw","squawk","squawker","squeak","squeaker","squeakily","squeakiness","squeaky","squeal","squealer","squeamish","squeamishness","squeegee","squeegeeing","squeeze","squeezer","squelch","squelcher","squelchy","squib","squibb","squibbed","squibbing","squid","squidded","squidding","squiggle","squiggly","squint","squinter","squinting","squire","squirehood","squirm","squirmy","squirrel","squirt","squirter","squish","squishy","sr","srand","src","srcdir","srcdirs","sref","srinagar","sro","srv","ss","ssa","sscanf","ssd","sse","ssh","sshd","ssid","ssis","ssl","sslcontext","sslsocketimpl","sslv","ssms","ssn","sso","ssrs","sss","sst","sstream","ssw","st","sta","stab","stabbed","stabber","stabbing","stability","stabilizability","stabilization","stabilize","stabilizer","stable","stableman","stablemate","stablemen","stableness","stabler","stables","stablest","stabling","stably","staccato","stace","stacee","stacey","staci","stacia","stacie","stack","stackable","stackblitz","stacked","stacker","stackexchange","stacking","stacklayout","stackoverflow","stackpane","stackpanel","stacks","stacktrace","stacy","stadia","stadias","stadium","stael","stafani","staff","staffard","staffer","stafford","staffordshire","staffroom","staford","stag","stage","stagecoach","stagecraft","staged","stagehand","stager","stages","stagestruck","stagflation","stagged","stagger","staggerer","staggering","staggers","stagging","staginess","staging","stagnancy","stagnant","stagnate","stagnation","stagy","stahl","staid","staidness","stain","stained","stainer","stainless","stair","staircase","stairway","stairwell","stake","stakeholder","stakeout","stalactite","stalag","stalagmite","stale","stalemate","staleness","staley","stalin","stalingrad","stalinist","stalk","stalker","stall","stalled","stallholders","stallion","stallone","stalls","stalwart","stalwartness","stamen","stamford","stamina","staminate","stammer","stammerer","stammering","stamp","stamped","stampede","stampeder","stamper","stan","stance","stanch","stancher","stanchion","stand","standalone","standard","standardcontext","standardcontextvalve","standardenginevalve","standardhost","standardhostvalve","standardization","standardize","standardized","standardizer","standardizes","standards","standarduserdefaults","standardwrapper","standardwrappervalve","standby","standbys","standee","standford","standing","standish","standoff","standoffish","standout","standpipe","standpoint","stands","standstill","stanfield","stanford","stanislas","stanislaus","stanislavsky","stanislaw","stank","stanleigh","stanley","stanly","stannic","stannous","stanton","stanwood","stanza","staph","staphs","staphylococcal","staphylococci","staphylococcus","staple","stapled","stapler","stapleton","star","starboard","starch","starchily","starchiness","starchy","stardom","stardust","stare","starfish","stargate","stargaze","staring","stark","starkey","starkness","starla","starlene","starless","starlet","starlight","starlin","starling","starlit","starr","starred","starring","starry","stars","starship","starstruck","start","startactivity","startactivityforresult","startangle","startanimation","startdate","started","starter","starters","startid","startindex","startinfo","starting","startinternal","startle","startling","startnew","startpoint","startpos","startrow","starts","startservice","startstop","startswith","starttime","starttls","startup","startups","startx","starty","starvation","starve","starveling","starver","stash","stasis","stat","state","statecraft","stated","stateful","statehood","statehouse","stateid","stateless","statelessness","stateliness","stately","statement","statements","staten","statename","stateparams","stateprovider","stater","stateroom","states","stateside","statesman","statesmanlike","statesmanship","statesmen","stateswoman","stateswomen","statewide","static","statical","statically","staticfiles","staticmethod","staticresource","statics","statictext","stating","station","stationarity","stationary","stationer","stationery","stationmaster","stations","statistic","statistical","statistician","statistics","statler","stator","stats","statuary","statue","statuesque","statuette","stature","status","statusbar","statuscode","statuses","statusid","statustext","statute","statutorily","statutory","stauffer","staunch","staunchness","stave","stavro","stay","stayed","stayer","staying","stays","std","stdafx","stdcall","stdclass","stderr","stdin","stdint","stdio","stdlib","stdout","stdtypes","ste","stead","steadfast","steadfastness","steadily","steadiness","steading","steady","steak","steakhouse","steal","stealer","stealing","stealth","stealthily","stealthiness","stealths","stealthy","steam","steamboat","steamer","steamfitter","steamfitting","steamily","steaminess","steamroll","steamroller","steamship","steamy","stearn","stearne","steed","steel","steele","steeliness","steelmaker","steelwork","steelworker","steely","steelyard","steen","steep","steepen","steeper","steeple","steeplebush","steeplechase","steeplejack","steepness","steer","steerage","steerer","steersman","steersmen","steeves","stefa","stefan","stefania","stefanie","stefano","steffane","steffen","steffi","steffie","stegosauri","stegosaurus","stein","steinbeck","steinberg","steinem","steiner","steinmetz","steinway","stella","stellar","stellated","stem","stemless","stemmed","stemming","stemware","stench","stencil","stenciler","stencillings","stendhal","stendler","stengel","steno","stenographer","stenographic","stenography","stenotype","stentorian","step","stepbrother","stepchild","stepchildren","stepdaughter","stepfather","stepha","stephan","stephana","stephani","stephanie","stephannie","stephanus","stephen","stephenie","stephenson","stephi","stephie","stephine","stepladder","stepmother","stepparent","steppe","stepper","stepping","steppingstone","steps","stepsister","stepson","stepwise","stereo","stereographic","stereography","stereophonic","stereoscope","stereoscopic","stereoscopically","stereoscopy","stereotype","stereotypic","stereotypical","sterile","sterility","sterilization","sterilize","sterilized","sterilizes","sterling","sterlingness","stern","sternal","sternberg","sterne","sternness","sterno","sternum","steroid","steroidal","stertorous","stesha","stet","stethoscope","stetson","stetted","stetting","steuben","stevana","steve","stevedore","steven","stevena","stevenson","stevie","stevy","stew","steward","stewardess","stewardship","stewart","stg","sth","stick","sticker","stickily","stickiness","sticking","stickle","stickleback","stickler","stickpin","sticks","stickup","sticky","stieglitz","stiff","stiffen","stiffness","stifle","stifler","stifling","stigma","stigmata","stigmatic","stigmatization","stigmatizations","stigmatize","stigmatized","stile","stiletto","still","stillbirth","stillbirths","stillborn","stiller","stillest","stillman","stillmann","stillness","stillwell","stilt","stilted","stilton","stimson","stimulant","stimulate","stimulated","stimulation","stimulative","stimulator","stimulatory","stimuli","stimulus","stine","sting","stinger","stingily","stinginess","stinging","stingray","stingy","stink","stinkbug","stinker","stinking","stinkpot","stinky","stint","stinter","stinting","stipend","stipendiary","stipple","stippler","stipulate","stipulation","stir","stirling","stirred","stirrer","stirring","stirrup","stitch","stitcher","stitchery","stitching","stl","stm","stmt","stoat","stochastic","stochastically","stochasticity","stock","stockade","stockbreeder","stockbroker","stockbroking","stocker","stockhausen","stockholder","stockholm","stockily","stockiness","stockinet","stockinette","stocking","stockist","stockpile","stockpiler","stockpot","stockroom","stocks","stocktaking","stockton","stocky","stockyard","stoddard","stodge","stodgily","stodginess","stodgy","stogy","stoic","stoical","stoichiometric","stoichiometry","stoicism","stoke","stoker","stokes","stol","stole","stolen","stolid","stolidity","stolidness","stolon","stomach","stomachache","stomacher","stomachs","stomp","stone","stonecutter","stonehenge","stoneless","stonemason","stoner","stonewall","stoneware","stonewashed","stonework","stonewort","stonily","stoniness","stony","stood","stooge","stool","stoop","stop","stopcock","stopgap","stoplight","stopover","stoppable","stoppage","stoppard","stopped","stopper","stopping","stopple","stoppropagation","stops","stopwatch","stopwords","storage","store","stored","storedprocedure","storefront","storehouse","storeid","storekeep","storekeeper","storeroom","stores","stories","storing","stork","storm","stormbound","stormer","stormi","stormie","stormily","storminess","stormtroopers","stormy","story","storyboard","storyboards","storybook","storyline","storyteller","storytelling","stouffer","stoup","stout","stouten","stouthearted","stoutness","stove","stovepipe","stover","stow","stowage","stowaway","stowe","str","strabo","strace","straddle","straddler","stradivari","stradivarius","strafe","strafer","straggle","straggly","straight","straightaway","straightedge","straighten","straightener","straightforward","straightforwardness","straightjacket","straightness","straightway","strain","strained","strainer","straining","strains","strait","straiten","straitjacket","straitlaced","straitness","strand","stranded","strange","strangely","strangeness","stranger","strangle","stranglehold","strangles","strangulate","strangulation","strap","strapless","strapped","strapping","strasbourg","strata","stratagem","strategic","strategical","strategics","strategies","strategist","strategy","stratford","strati","stratification","stratified","stratify","stratigraphic","stratigraphical","stratigraphy","stratosphere","stratospheric","stratospherically","stratum","stratus","strauss","stravinsky","straw","strawberry","strawflower","stray","strayer","strcat","strcmp","strcpy","strdup","streak","streaker","streaky","stream","streamed","streamer","streaming","streamline","streamreader","streams","streamwriter","street","streetcar","streetlight","streets","streetwalker","streetwise","streisand","strength","strengthen","strengthener","strengths","strenuous","strenuousness","strep","streptococcal","streptococci","streptococcus","streptomycin","strerror","stress","stressed","stressful","stretch","stretchability","stretchable","stretched","stretcher","stretchy","strew","strewn","strftime","stria","striae","striate","striated","striation","stricken","strickland","strict","stricter","strictest","strictly","strictmode","strictness","stricture","stridden","stride","stridency","strident","strider","strides","strife","strike","strikebreak","strikebreaker","strikebreaking","strikeout","striker","strikes","striking","strindberg","string","stringarray","stringbuffer","stringbuilder","stringbyappendingpathcomponent","stringcomparison","stringed","stringencoding","stringency","stringent","stringer","stringformat","stringify","stringiness","stringing","stringio","stringlength","stringlist","stringproperty","stringr","stringreader","stringrequest","strings","stringsasfactors","stringsplitoptions","stringstream","stringtokenizer","stringtype","stringutils","stringvalue","stringvar","stringwithformat","stringwriter","stringy","strip","stripe","striped","striper","stripling","stripped","stripper","stripping","strips","stripslashes","striptease","stripteaser","stripy","strive","striven","striver","strlen","strncpy","strobe","stroboscope","stroboscopic","strode","stroke","strokecolor","strokewidth","stroking","stroll","stroller","strom","stromberg","stromboli","strong","strongbow","strongbox","stronger","strongheart","stronghold","strongish","strongly","strongman","strongmen","strongroom","strontium","strop","strophe","strophic","stropped","stropping","strove","strpos","strptime","strs","strsplit","strsql","strstr","strtok","strtolower","strtotime","struck","struct","structfield","structs","structural","structuralism","structuralist","structure","structured","structureless","structures","structuring","strudel","struggle","struggled","struggler","struggling","strum","strummed","strumming","strumpet","strung","strut","struts","strutted","strutter","strutting","strychnine","sts","stu","stuart","stub","stubbed","stubbing","stubble","stubblefield","stubbly","stubborn","stubbornness","stubby","stubs","stucco","stuccoes","stuck","stud","studbook","studded","studding","studebaker","student","studentid","studentname","students","studentship","studied","studiedness","studier","studies","studio","studios","studious","studiousness","study","studying","stuff","stuffily","stuffiness","stuffing","stuffs","stuffy","stultify","stumble","stumbled","stumbling","stump","stumpage","stumped","stumper","stumpy","stun","stung","stunk","stunned","stunner","stunning","stunt","stunted","stupefaction","stupefy","stupendous","stupendousness","stupid","stupidity","stupidness","stupor","sturdily","sturdiness","sturdy","sturgeon","sturm","stutter","stuttgart","stuyvesant","sty","stygian","style","styleable","styleclass","styled","styles","stylesheet","stylesheets","styleurls","styli","styling","stylish","stylishness","stylist","stylistic","stylistically","stylites","stylization","stylize","stylos","stylus","stymie","stymieing","stymy","styptic","styrene","styrofoam","styx","su","suable","suarez","suasion","suave","suaveness","suavity","sub","subaltern","subarctic","subareas","subarray","subaru","subassembly","subatomic","subbasement","subbed","subbing","subbranch","subcaste","subcat","subcategories","subcategorizing","subcategory","subchain","subclass","subclasses","subclassifications","subclassing","subclauses","subcommand","subcommittee","subcompact","subcomponent","subcomputation","subconcept","subconscious","subconsciousness","subconstituent","subcontinent","subcontinental","subcontract","subcontractor","subcultural","subculture","subcutaneous","subdir","subdirectories","subdirectory","subdistrict","subdivide","subdivision","subdomain","subdomains","subdue","subdued","subduer","subexpression","subfamily","subfield","subfile","subfolder","subfolders","subform","subfreezing","subgoal","subgraph","subgraphs","subgroup","subharmonic","subhead","subheading","subhuman","subindex","subinterval","subitem","subitems","subj","subject","subjection","subjective","subjectiveness","subjectivist","subjectivity","subjects","subjoin","subjugate","subjugation","subjunctive","subkey","sublayer","sublease","sublet","subletting","sublimate","sublimation","sublime","sublimeness","sublimer","subliminal","sublimity","sublist","subliterary","sublunary","submachine","submarginal","submarine","submariner","submenu","submerge","submergence","submerse","submersible","submersion","submicroscopic","submission","submissions","submissive","submissiveness","submit","submitbutton","submitform","submits","submittable","submittal","submitted","submitter","submitting","submode","submodule","submodules","subnational","subnet","subnetwork","subnormal","suboptimal","suborbital","suborder","subordinate","subordinately","subordinates","subordination","subordinator","suborn","subornation","subpage","subparagraph","subpart","subplot","subplots","subpoena","subpopulation","subproblem","subprocess","subprofessional","subprogram","subproject","subproof","subqueries","subquery","subquestion","subrange","subregion","subregional","subreport","subrogation","subroutine","subs","subsample","subschema","subscribe","subscribed","subscriber","subscribers","subscribing","subscript","subscripted","subscription","subscriptions","subsection","subsegment","subsentence","subsequence","subsequent","subsequently","subservience","subservient","subset","subsets","subside","subsidence","subsidiarity","subsidiary","subsidization","subsidize","subsidized","subsidizer","subsidy","subsist","subsistence","subsistent","subsocietal","subsoil","subsonic","subspace","subspecies","substance","substandard","substantial","substantially","substantialness","substantiate","substantiated","substantiation","substantive","substantiveness","substantivity","substation","substerilization","substitutability","substitute","substituted","substitution","substitutionary","substitutive","substr","substrata","substrate","substratum","substring","substrings","substructure","subsume","subsurface","subsystem","subtable","subtask","subteen","subtenancy","subtenant","subtend","subterfuge","subterranean","subtest","subtext","subtitle","subtle","subtleness","subtlety","subtly","subtopic","subtotal","subtract","subtracter","subtracting","subtraction","subtrahend","subtree","subtropic","subtropical","subtype","subunit","suburb","suburban","suburbanite","suburbanization","suburbanized","suburbanizing","suburbia","subvention","subversion","subversive","subversiveness","subvert","subverter","subview","subviews","subway","subzero","succ","succeed","succeeded","succeeder","succeeds","succesfully","success","successful","successfull","successfully","successfulness","succession","successive","successiveness","successor","successorship","succinct","succinctness","succor","succored","succorer","succotash","succubus","succulence","succulency","succulent","succumb","such","suchlike","suck","sucker","suckle","suckling","sucks","sucre","sucrose","suction","sud","sudan","sudanese","sudanic","sudden","suddenly","suddenness","sudetenland","sudo","sudoku","suds","sudsy","sue","sued","suede","suellen","suer","suet","suetonius","suety","suez","suffer","sufferance","sufferer","suffering","suffice","sufficiency","sufficient","sufficiently","suffix","suffixation","suffixed","suffixes","suffocate","suffocating","suffolk","suffragan","suffrage","suffragette","suffragist","suffuse","suffusion","sufi","sufism","sugar","sugarcane","sugarcoat","sugarless","sugarplum","sugary","suggest","suggested","suggester","suggestibility","suggestible","suggesting","suggestion","suggestions","suggestive","suggestiveness","suggests","sugillate","suharto","sui","suicidal","suicide","suit","suitability","suitable","suitableness","suitably","suitcase","suite","suited","suites","suiting","suitor","suits","sukarno","sukey","suki","sukiyaki","sukkot","sukkoth","sula","sulawesi","suleiman","sulfa","sulfaquinoxaline","sulfate","sulfide","sulfite","sulfonamide","sulfur","sulfuric","sulfurous","sulfurousness","sulk","sulkily","sulkiness","sulky","sulla","sullen","sullenness","sullied","sullivan","sully","sulphate","sulphide","sulphuric","sultan","sultana","sultanate","sultrily","sultriness","sultry","sulzberger","sum","sumac","sumach","sumatra","sumatran","sumer","sumeria","sumerian","summability","summable","summand","summarily","summarise","summarization","summarize","summarized","summarizer","summary","summation","summed","summer","summerdale","summerhouse","summertime","summery","summing","summit","summitry","summon","summoner","summons","sumner","sumo","sump","sumptuous","sumptuousness","sums","sumter","sun","sunbaked","sunbath","sunbathe","sunbather","sunbathing","sunbaths","sunbeam","sunbelt","sunblock","sunbonnet","sunburn","sunburst","suncream","sundae","sundanese","sundas","sunday","sunder","sundial","sundown","sundowner","sundris","sundry","sunfish","sunflower","sung","sunglass","sunk","sunlamp","sunless","sunlight","sunlit","sunned","sunni","sunniness","sunning","sunnite","sunny","sunnyvale","sunrise","sunroof","sunscreen","sunset","sunsetting","sunshade","sunshine","sunshiny","sunspot","sunstroke","sunt","suntan","suntanned","suntanning","sunup","sup","super","superabundance","superabundant","superannuate","superannuation","superb","superbness","supercargo","supercargoes","supercharge","supercharger","supercilious","superciliousness","supercity","superclass","supercomputer","supercomputing","superconcept","superconducting","superconductivity","superconductor","supercooled","supercooling","supercritical","superdense","superego","supererogation","supererogatory","superficial","superficiality","superfine","superfix","superfluity","superfluous","superfluousness","superheat","superhero","superheroes","superhighway","superhuman","superhumanness","superimpose","superimposition","superintend","superintendence","superintendency","superintendent","superior","superiority","superlative","superlativeness","superlunary","supermachine","superman","supermarket","supermen","supermodel","supermom","supernal","supernatant","supernatural","supernaturalism","supernaturalness","supernormal","supernova","supernovae","supernumerary","superordinate","superpose","superposition","superpower","superpredicate","supersaturate","supersaturation","superscribe","superscript","superscription","supersede","superseder","supersensitive","supersensitiveness","superset","supersonic","supersonically","supersonics","superstar","superstition","superstitious","superstore","superstructural","superstructure","supertanker","supertitle","superuser","supervene","supervention","superview","supervise","supervised","supervision","supervisor","supervisory","superwoman","superwomen","supine","supineness","supp","supper","suppl","supplant","supplanter","supple","supplement","supplemental","supplementary","supplementation","supplementer","suppleness","suppliant","supplicant","supplicate","supplication","supplied","supplier","suppliers","supplies","supply","supplying","support","supportability","supportable","supported","supporter","supporting","supportive","supportmapfragment","supports","suppose","supposed","supposedly","supposing","supposition","suppository","suppress","suppressant","suppressed","suppressible","suppression","suppressive","suppresslint","suppressor","suppresswarnings","suppurate","suppuration","supra","supranational","supranationalism","suprasegmental","supremacist","supremacy","supremal","supreme","supremeness","supremo","supt","surabaya","surat","surcease","surcharge","surcingle","surd","sure","sured","surefire","surefooted","surely","sureness","surer","surest","surety","surf","surface","surfaced","surfaceholder","surfacer","surfaces","surfaceview","surfacing","surfactant","surfboard","surfeit","surfer","surfing","surge","surged","surgeon","surgery","surges","surgical","surinam","suriname","surinamese","surliness","surly","surmise","surmiser","surmount","surmountable","surname","surpass","surpassed","surpassing","surplice","surplus","surplussed","surplussing","surprise","surprised","surpriser","surprising","surprisingly","surreal","surrealism","surrealist","surrealistic","surrealistically","surreality","surrender","surrenderer","surreptitious","surreptitiousness","surrey","surrogacy","surrogate","surrogation","surround","surrounded","surrounding","surtax","surveillance","surveillant","survey","surveyed","surveying","surveyor","surveys","survivability","survivable","survival","survivalist","survive","survived","survivor","survivorship","surya","sus","susan","susana","susanetta","susann","susanna","susannah","susanne","susceptibilities","susceptibility","susceptible","suscipit","susette","sushi","susi","susie","suspect","suspected","suspecter","suspecting","suspend","suspended","suspender","suspendisse","suspense","suspenseful","suspension","suspensive","suspensor","suspicion","suspicious","suspiciousness","susquehanna","sussex","sustain","sustainability","sustainable","sustainer","sustainment","sustenance","susy","sutherlan","sutherland","sutler","sutton","suture","suv","suva","suwanee","suzann","suzanna","suzanne","suzerain","suzerainty","suzette","suzhou","suzi","suzie","suzuki","suzy","sv","svalbard","svc","svelte","sven","svend","svengali","sverdlovsk","svetlana","svg","svm","svn","sw","swab","swabbed","swabbing","swabby","swabian","swaddle","swag","swagged","swagger","swagging","swahili","swain","swak","swallow","swallower","swallowtail","swam","swami","swamp","swamper","swampland","swampy","swan","swanee","swank","swankily","swankiness","swanky","swanlike","swanned","swanning","swansea","swanson","swap","swappable","swapped","swapper","swapping","swaps","sward","swarm","swarmer","swart","swarthiness","swarthmore","swarthy","swartz","swash","swashbuckler","swashbuckling","swastika","swat","swatch","swath","swathe","swather","swaths","swatted","swatter","swatting","sway","swayback","swayer","swazi","swaziland","swear","swearer","swearword","sweat","sweatband","sweater","sweatily","sweatiness","sweatpants","sweatshirt","sweatshop","sweaty","swed","swede","sweden","swedenborg","swedish","sweeney","sweep","sweeper","sweeping","sweepingness","sweeps","sweepstake","sweepstakes","sweet","sweetbread","sweetbrier","sweetcorn","sweeten","sweetened","sweetener","sweetening","sweetheart","sweetie","sweeting","sweetish","sweetmeat","sweetness","sweetshop","swell","swellhead","swelling","swelter","sweltering","swen","swenson","swept","sweptback","swerve","swerving","swf","swi","swift","swifter","swiftness","swig","swigged","swigging","swill","swim","swimmer","swimming","swimsuit","swinburne","swindle","swindler","swine","swineherd","swing","swingeing","swinger","swinging","swingutilities","swingworker","swingy","swinish","swinishness","swink","swipe","swiper","swiperefreshlayout","swiping","swirl","swirling","swirly","swish","swishy","swiss","switch","switchback","switchblade","switchboard","switched","switcher","switches","switchgear","switching","switchman","switchmap","switchmen","switchover","switz","switzer","switzerland","swivel","swizzle","swob","swollen","swoon","swooning","swoop","swoosh","swop","sword","swordfish","swordplay","swordplayer","swordsman","swordsmanship","swordsmen","swordtail","swore","sworn","swot","swt","swum","swung","sx","sy","sybarite","sybaritic","sybase","sybil","sybila","sybilla","sybille","sybyl","sycamore","sycophancy","sycophant","sycophantic","sycophantically","syd","sydel","sydelle","sydney","sykes","sylas","syllabi","syllabic","syllabicate","syllabication","syllabicity","syllabification","syllabify","syllable","syllabub","syllabus","syllabusss","syllogism","syllogistic","sylow","sylph","sylphic","sylphlike","sylphs","sylvan","sylvania","sylvester","sylvia","sylvie","sym","syman","symbiont","symbioses","symbiosis","symbiotic","symbol","symbolic","symbolical","symbolics","symbolism","symbolist","symbolization","symbolize","symbolized","symbolizes","symbols","symfony","symington","symlink","symlinks","symmetric","symmetrical","symmetrically","symmetricalness","symmetrization","symmetrizing","symmetry","symon","sympathetic","sympathetically","sympathize","sympathized","sympathizer","sympathizing","sympathy","symphonic","symphonists","symphony","symposium","symptom","symptomatic","symptomatically","symptomatology","symptoms","sympy","syn","synagogal","synagogue","synapse","synaptic","sync","synced","synchronism","synchronization","synchronize","synchronized","synchronizer","synchronous","synchronously","synchronousness","synchrony","synchrotron","syncing","syncopate","syncopation","syncope","syndic","syndicalist","syndicate","syndrome","synergism","synergistic","synergy","synfuel","synge","synod","synonym","synonymic","synonymous","synonyms","synonymy","synopses","synopsis","synopsized","synopsizes","synopsizing","synoptic","syntactic","syntactical","syntactically","syntactics","syntax","syntaxerror","syntheses","synthesis","synthesize","synthesized","synthesizer","synthesizes","synthetic","synthetically","syphilis","syphilitic","syphilized","syphilizing","syracuse","syria","syriac","syrian","syringe","syrup","syrupy","sys","sysadmin","syscall","syscap","sysdate","syslog","system","systematic","systematical","systematics","systematization","systematize","systematized","systematizer","systematizing","systemctl","systemd","systemic","systemically","systemization","systemjs","systems","systole","systolic","syswow","sz","szilard","szymborska","t","ta","tab","tabasco","tabatha","tabb","tabbar","tabbarcontroller","tabbatha","tabbed","tabbi","tabbie","tabbing","tabbitha","tabbouleh","tabboulehs","tabby","tabcontent","tabcontrol","taber","tabernacle","tabhost","tabid","tabina","tabindex","tabitem","tabitha","tabla","tablayout","table","tablea","tableau","tableaux","tableb","tablecell","tablecloth","tablecloths","tablecolumn","tabledata","tableid","tableland","tablelayout","tablemodel","tablename","tablerow","tables","tablesorter","tablespace","tablespoon","tablespoonful","tablet","tabletop","tablets","tableview","tableviewcontroller","tableware","tabling","tabloid","taboo","tabor","tabpanel","tabriz","tabs","tabula","tabular","tabulate","tabulation","tabulator","tabview","tac","tachometer","tachometry","tachycardia","tachyon","tacit","tacitness","taciturn","taciturnity","tacitus","tack","tacker","tackiness","tackle","tackler","tackling","tacky","taco","tacoma","tact","tactful","tactfulness","tactic","tactical","tactician","tactile","tactility","tactless","tactlessness","tactual","tad","tadd","taddeo","taddeusz","tadeas","tadeo","tades","tadio","tadpole","tadzhikistan","tadzhikstan","taegu","taejon","taffeta","taffrail","taffy","taft","tag","tagalog","tagged","tagger","tagging","tagid","taglib","tagname","tagore","tags","tagus","tahiti","tahitian","tahoe","tahoma","taichung","taiga","tail","tailback","tailcoat","tailer","tailgate","tailgater","tailing","tailless","taillessness","taillight","tailor","tailpipe","tailspin","tailwind","tainan","taine","taint","tainted","taipei","tait","taite","taiwan","taiwanese","taiyuan","tajikistan","take","takeaway","taken","takeoff","takeout","takeover","taker","takes","taking","taklamakan","talbert","talbot","talc","talcked","talcking","talcum","tale","talebearer","talent","talented","talentless","taler","tali","talia","taliesin","talion","talisman","talismanic","talk","talkative","talkativeness","talked","talker","talkie","talking","talks","talky","tall","talladega","tallahassee","tallahatchie","tallahoosa","tallboy","tallchief","talley","talleyrand","tallia","tallie","tallinn","tallish","tallness","tallou","tallow","tallowy","tallulah","tally","tallyho","talmud","talmudic","talmudist","talon","talus","talya","talyah","tam","tamable","tamale","tamar","tamara","tamarack","tamarah","tamarind","tamarra","tamas","tambourine","tame","tamed","tameka","tameness","tamera","tamerlane","tami","tamika","tamiko","tamil","tamma","tammany","tammara","tammi","tammie","tammy","tamp","tampa","tampax","tamper","tampered","tamperer","tampon","tamqrah","tamra","tan","tana","tanager","tanaka","tananarive","tanbark","tancred","tandem","tandi","tandie","tandoori","tandy","taney","tang","tanganyika","tangelo","tangency","tangent","tangential","tangerine","tangibility","tangible","tangibleness","tangibly","tangier","tangle","tango","tangshan","tangy","tanhya","tani","tania","tanisha","tanitansy","tank","tankard","tanker","tankful","tann","tanned","tannenbaum","tanner","tannery","tannest","tanney","tannhuser","tannie","tannin","tanning","tanny","tansy","tantalization","tantalize","tantalized","tantalizing","tantalizingly","tantalizingness","tantalum","tantalus","tantamount","tantra","tantrum","tanya","tanzania","tanzanian","tao","taoism","taoist","tap","tapdance","tape","taped","tapeline","taper","taperer","tapestry","tapeworm","tapioca","tapir","tapped","tapper","tappet","tapping","taproom","taproot","taps","tar","tara","tarah","tarantella","tarantula","tarawa","tarazed","tarbell","tardily","tardiness","tardy","tare","target","targeted","targetentity","targetframework","targeting","targetname","targetnamespace","targetpath","targetproperty","targets","targetsdkversion","targettype","tariff","tarim","tarkington","tarmac","tarmacked","tarmacking","tarn","tarnish","tarnished","taro","tarot","tarp","tarpapered","tarpaulin","tarpon","tarra","tarragon","tarrah","tarrance","tarred","tarring","tarry","tarrytown","tarsal","tarsi","tarsus","tart","tartan","tartar","tartaric","tartary","tartness","tartuffe","taryn","tarzan","tasha","tashkent","tasia","task","taskawaiter","taskbar","tasked","taskgraph","taskid","tasklist","taskmaster","taskmistress","taskname","tasks","taskthread","tasmania","tasmanian","tass","tassel","tassellings","taste","tasted","tasteful","tastefulness","tasteless","tastelessness","taster","tastes","tastily","tastiness","tasting","tasty","tat","tatami","tatar","tate","tater","tatiana","tatiania","tatted","tatter","tatterdemalion","tattered","tatting","tattle","tattler","tattletale","tattoo","tattooer","tattooist","tatty","tatum","tau","taught","taunt","taunter","taunting","taupe","taurus","taut","tauten","tautness","tautological","tautologous","tautology","tavern","taverner","tawdrily","tawdriness","tawdry","tawney","tawny","tawnya","tawsha","tax","taxable","taxably","taxation","taxed","taxes","taxi","taxicab","taxidermist","taxidermy","taximeter","taxing","taxiway","taxonomic","taxonomically","taxonomist","taxonomy","taxpayer","taxpaying","taylor","tb","tba","tbilisi","tbl","tbn","tbody","tbs","tbsp","tc","tchaikovsky","tchar","tcl","tcp","tcpclient","tcpdf","tcs","td","tdd","tds","te","tea","teabag","teacake","teacart","teach","teachable","teacher","teachers","teaching","teacloth","teacup","teacupful","teador","teahouse","teak","teakettle","teakwood","teal","tealeaves","team","teamcity","teamid","teammate","teamname","teams","teamster","teamwork","teapot","tear","tearaway","teardown","teardrop","tearer","tearful","tearfulness","teargas","teargassed","teargassing","tearjerker","tearoom","teary","teas","teasdale","tease","teasel","teaser","teashop","teasing","teaspoon","teaspoonful","teat","teatime","tech","techcrunch","technet","technetium","technetwork","technical","technicality","technically","technicalness","technician","technicolor","technion","technique","techniques","technocracy","technocrat","technocratic","technological","technologies","technologist","technology","technophobia","technophobic","technotes","techs","tectonic","tectonically","tectonics","tecumseh","ted","tedd","tedda","teddi","teddie","teddy","tedi","tedie","tedious","tediousness","tedium","tedman","tedmund","tedra","tee","teeing","teem","teeming","teemingness","teen","teena","teenage","teenager","teeny","teenybopper","teepee","teeshirt","teeter","teeth","teethe","teether","teething","teethmarks","teetotal","teetotaler","teetotalism","tefl","teflon","tegucigalpa","teheran","tehran","teirtza","tektite","tektronix","tel","telecast","telecommunicate","telecommunication","telecommute","telecoms","teleconference","teledyne","telefunken","telegenic","telegram","telegrammed","telegramming","telegraph","telegraphic","telegraphically","telegraphist","telegraphs","telegraphy","telekineses","telekinesis","telekinetic","telemachus","telemann","telemarketer","telemarketing","telemeter","telemetric","telemetry","teleological","teleology","telepathic","telepathically","telepathy","telephone","telephonic","telephonist","telephony","telephonymanager","telephoto","telephotography","teleprinter","teleprocessing","teleprompter","telerik","telescope","telescopic","telescopically","teletext","telethon","teletype","teletypewriter","televangelism","televangelist","televise","television","televisor","televisual","telex","tell","teller","telling","tells","telltale","tellurium","tellus","telly","telnet","telomeric","telugu","tem","temblor","temerity","temp","temparray","tempdata","tempdb","tempe","temper","tempera","temperament","temperamental","temperance","temperate","temperately","temperateness","temperature","tempered","tempering","tempers","tempest","tempestuous","tempestuousness","tempfile","template","templatebinding","templated","templatefield","templates","templateurl","templating","temple","templeman","templeton","templist","tempo","tempoes","tempor","temporal","temporarily","temporariness","temporarinesses","temporary","temporize","temporizer","temporizing","temporizings","temps","tempt","temptable","temptation","tempted","tempter","tempting","temptress","tempura","tempuri","tempus","ten","tenabilities","tenability","tenable","tenableness","tenably","tenacious","tenaciousness","tenacity","tenancy","tenant","tenanted","tenantid","tenantry","tench","tend","tended","tendency","tendentious","tendentiousness","tender","tendered","tenderer","tenderest","tenderfoot","tenderhearted","tenderheartedness","tendering","tenderize","tenderizer","tenderloin","tenderly","tenderness","tending","tendinitis","tendon","tendril","tends","tenebrous","tenement","tenet","tenex","tenfold","tenn","tenneco","tenner","tennessean","tennessee","tenney","tennis","tennyson","tenochtitlan","tenon","tenor","tenpin","tens","tense","tenseness","tensile","tension","tensional","tensionless","tensions","tensity","tensor","tensorflow","tensorial","tensors","tenspot","tent","tentacle","tentative","tentativeness","tented","tenter","tenterhook","tenth","tenths","tenting","tentity","tenuity","tenuous","tenuousness","tenure","teodoor","teodor","teodora","teodorico","teodoro","tepee","tepid","tepidity","tepidness","tequila","tera","teradata","teratogenic","teratology","terbium","tercel","tercentenary","tercentennial","terence","terencio","teresa","terese","tereshkova","teresina","teresita","teressa","teri","teriann","terkel","term","termagant","termcap","termer","terminable","terminableness","terminal","terminals","terminate","terminated","terminates","terminating","termination","terminative","terminator","termini","terminological","terminology","terminus","termite","terms","tern","ternary","terpsichore","terpsichorean","terr","terra","terrace","terracing","terracotta","terraform","terrain","terramycin","terran","terrance","terrapin","terrarium","terrazzo","terre","terrel","terrell","terrence","terrestrial","terri","terrible","terribleness","terribly","terrie","terrier","terrific","terrifically","terrify","terrifying","terrijo","terrill","terrine","territorial","territoriality","territory","terror","terrorism","terrorist","terroristic","terrorize","terrorized","terrorizer","terry","terrycloth","terrye","terse","terseness","tersina","tertian","tertiary","terza","tesl","tesla","tesol","tess","tessa","tessellate","tessellation","tesseract","tesseral","tessi","tessie","tessy","test","testability","testable","testament","testamentary","testapp","testate","testator","testatrices","testatrix","testbed","testcard","testcase","testclass","testcompile","testcontroller","testdata","testdb","teste","tested","tester","testers","testes","testfile","testicle","testicular","testid","testifier","testify","testily","testimonial","testimony","testiness","testing","testis","testlist","testmethod","testname","testng","testobject","testosterone","testrunner","tests","testservice","teststring","testsuite","testtable","testuser","testy","tetanus","tetchy","tether","tethered","tethys","tetons","tetra","tetrachloride","tetracycline","tetrafluoride","tetragonal","tetrahalides","tetrahedral","tetrahedron","tetrameron","tetrameter","tetrasodium","tetravalent","teuton","teutonic","tex","texaco","texan","texas","texcoord","text","textalign","textalignment","textappearance","textappearancemedium","textarea","textblock","textbook","textbox","textboxes","textboxfor","textchanged","textcolor","textcontent","textedit","textelement","textfield","textfieldexpression","textfields","textfile","textile","textinput","textinputlayout","textlabel","textmate","texto","textron","texts","textsize","textstatus","textstyle","texttospeech","textual","textural","texture","textured","textures","textutils","textview","textviews","textwatcher","textwrapping","textwriter","tf","tfoot","tform","tfs","tg","tgt","tgz","th","thacher","thackeray","thad","thaddeus","thaddus","thadeus","thai","thailand","thain","thaine","thalami","thalamus","thales","thalia","thalidomide","thallium","thallophyte","thames","than","thane","thanh","thank","thanker","thankful","thankfuller","thankfullest","thankfulness","thankless","thanklessness","thanks","thanksgiving","thankyou","thant","thanx","thar","that","thatch","thatcher","thatching","thats","thaumaturge","thaw","thaxter","thayer","thayne","thc","the","thea","thead","theadora","theano","theater","theatergoer","theatergoing","theatric","theatrical","theatricality","theatrics","thebault","thebes","theda","thedate","thedric","thedrick","thee","theeing","theform","theft","theiler","their","theirs","theism","theist","theistic","thekla","thelist","thelma","them","themas","thematic","thematically","thematics","theme","themeoverlay","themeresource","themes","themistocles","themselves","then","thence","thenceforth","thenceforward","thenreturn","theo","theobald","theocracy","theocratic","theocritus","theodolite","theodor","theodora","theodore","theodoric","theodosia","theodosian","theodosius","theologian","theological","theologists","theology","theorem","theoretic","theoretical","theoretically","theoretician","theoretics","theories","theorist","theorization","theorize","theory","theosophic","theosophical","theosophist","theosophy","therapeutic","therapeutically","therapeutics","therapist","therapy","theravada","there","thereabout","thereafter","thereat","thereby","therefor","therefore","therefrom","therein","thereof","thereon","theres","theresa","therese","theresina","theresita","theressa","thereto","theretofore","thereunder","thereunto","thereupon","therewith","therine","therm","thermal","thermionic","thermionics","thermistor","thermo","thermocouple","thermodynamic","thermodynamical","thermodynamics","thermoelastic","thermoelectric","thermoformed","thermoforming","thermogravimetric","thermoluminescence","thermometer","thermometric","thermometry","thermonuclear","thermopile","thermoplastic","thermopower","thermos","thermosetting","thermostable","thermostat","thermostatic","thermostatically","thermostatics","thermostatted","thermostatting","theron","thesauri","thesaurus","these","theseus","thesis","thespian","thespis","thessalonian","thessalonki","thessaly","theta","thevalue","thew","they","thia","thiamine","thibaud","thibaut","thick","thicken","thickener","thickening","thicket","thickheaded","thickish","thickness","thickset","thief","thiensville","thieu","thieve","thievery","thievish","thievishness","thigh","thighbone","thighs","thimble","thimbleful","thimbu","thimphu","thin","thine","thing","thingamabob","thingamajig","things","thingy","think","thinkable","thinkableness","thinkably","thinker","thinking","thinkingly","thinks","thinned","thinner","thinness","thinnest","thinning","thinnish","thiocyanate","thiouracil","third","thirst","thirster","thirstily","thirstiness","thirsty","thirteen","thirteenths","thirtieths","thirty","this","thiscall","thistle","thistledown","thisworkbook","thither","tho","thole","thom","thoma","thomas","thomasa","thomasin","thomasina","thomasine","thomism","thomistic","thompson","thomson","thong","thor","thoracic","thorax","thorazine","thoreau","thoriate","thorin","thorium","thorn","thornburg","thorndike","thornie","thorniness","thornton","thorny","thorough","thoroughbred","thoroughfare","thoroughgoing","thoroughly","thoroughness","thorpe","thorstein","thorsten","thorvald","those","thoth","thou","though","thought","thoughtful","thoughtfully","thoughtfulness","thoughtless","thoughtlessness","thoughts","thousand","thousandfold","thousands","thousandths","thr","thrace","thracian","thrall","thralldom","thrash","thrasher","thrashing","thread","threadbare","threaded","threader","threadid","threadidx","threading","threadlike","threadlocal","threadpool","threadpoolexecutor","threads","threadstart","thready","threat","threaten","threatener","threatening","three","threefold","threepence","threepenny","threescore","threesome","threeten","threnody","thresh","thresher","threshold","threw","thrice","thrift","thriftily","thriftiness","thriftless","thrifty","thrill","thriller","thrilling","thrive","thriver","thriving","throat","throatily","throatiness","throaty","throb","throbbed","throbbing","throe","throeing","thrombi","thromboses","thrombosis","thrombotic","thrombus","throne","throneberry","throng","throttle","throttler","through","throughout","throughput","throughway","throw","throwable","throwaway","throwback","thrower","throwing","thrown","throwout","throws","thru","thrum","thrummed","thrumming","thrush","thrust","thruster","thruway","thu","thucydides","thud","thudded","thudding","thug","thuggee","thuggery","thuggish","thule","thulium","thumb","thumbnail","thumbnails","thumbs","thumbscrew","thumbtack","thump","thunder","thunderbird","thunderbolt","thunderclap","thundercloud","thunderer","thunderhead","thundering","thunderous","thundershower","thunderstorm","thunderstruck","thundery","thunk","thur","thurber","thurman","thursday","thurstan","thurston","thus","thwack","thwacker","thwart","thwarter","thx","thy","thyme","thymeleaf","thymine","thymus","thyratron","thyristor","thyroglobulin","thyroid","thyroidal","thyronine","thyrotoxic","thyrotrophic","thyrotrophin","thyrotropic","thyrotropin","thyroxine","thyself","ti","tia","tianjin","tiara","tibble","tiber","tiberius","tibet","tibetan","tibia","tibiae","tibial","tibold","tiburon","tic","tick","ticker","ticket","tickets","ticking","tickle","tickler","ticklish","ticklishness","ticks","ticktacktoe","ticktock","ticonderoga","tid","tidal","tidbit","tiddlywinks","tide","tideland","tidewater","tideway","tidily","tidiness","tidy","tidying","tidyr","tidyverse","tie","tieback","tiebold","tiebout","tiebreaker","tieck","tied","tiena","tienanmen","tientsin","tier","tierney","tiertza","ties","tif","tiff","tiffani","tiffanie","tiffany","tiffi","tiffie","tiffy","tiger","tigerish","tight","tighten","tightener","tightfisted","tightly","tightness","tightrope","tightwad","tigress","tigris","tijuana","tike","til","tilda","tilde","tildi","tildie","tildy","tile","tiled","tiler","tiles","tiling","till","tillable","tillage","tiller","tillich","tillie","tillman","tilly","tilt","tilth","tim","timber","timbering","timberland","timberline","timbre","timbrel","timbuktu","time","timebase","timed","timedelta","timediff","timeframe","timeinterval","timeit","timekeeper","timekeeping","timeless","timelessness","timeline","timeliness","timely","timeout","timeouts","timepicker","timepiece","timer","timers","timertask","times","timescale","timeseries","timeserver","timeserving","timeshare","timesheet","timespan","timestamp","timestamped","timestamps","timetable","timeunit","timeworn","timex","timezone","timezones","timi","timid","timidity","timidness","timing","timings","timmi","timmie","timmy","timofei","timon","timorous","timorousness","timoteo","timothea","timothee","timotheus","timothy","timpani","timpanist","timur","tin","tina","tincidunt","tincture","tinder","tinderbox","tine","tinfoil","ting","tinge","tingeing","tingle","tingling","tingly","tinily","tininess","tinker","tinkertoy","tinkle","tinkling","tinkly","tinned","tinner","tinnily","tinniness","tinning","tinnitus","tinny","tinplate","tinsel","tinseltown","tinsmith","tinsmiths","tint","tintcolor","tinter","tintinnabulation","tintoretto","tintype","tinware","tiny","tinyint","tinymce","tinypic","tioga","tip","tiphani","tiphanie","tiphany","tipi","tipo","tipoff","tippecanoe","tipped","tipper","tipperary","tippet","tipping","tipple","tippler","tippy","tips","tipsily","tipsiness","tipster","tipsy","tiptoe","tiptoeing","tiptop","tirade","tirana","tirane","tire","tired","tireder","tiredest","tiredness","tireless","tirelessness","tires","tiresias","tiresome","tiresomeness","tiring","tiro","tirol","tirolean","tirrell","tis","tish","tisha","tissue","tit","titan","titanate","titania","titanic","titanically","titanium","titbit","titel","titer","tithe","tither","tithing","titian","titicaca","titillate","titillating","titillation","titivate","titivation","title","titlebar","titled","titleholder","titlelabel","titles","titling","titmice","titmouse","tito","titrate","titration","titted","titter","titting","tittle","titular","titulo","titus","tizzy","tj","tk","tkey","tkinter","tko","tl","tlaloc","tlc","tld","tldr","tlingit","tls","tlsv","tm","tmodel","tmp","tmpdir","tmpl","tmux","tn","tnpk","tns","tnt","to","toad","toadstool","toady","toadyism","toarray","toast","toaster","toastmaster","toastmistress","toasty","tobacco","tobacconist","tobaggon","tobago","tobase","tobe","tobey","tobi","tobiah","tobias","tobie","tobin","tobit","tobject","toboggan","tobottomof","toby","tobye","tobytearray","toc","tocantins","toccata","tochararray","tocqueville","tocsin","tod","todataurl","todate","todatetime","today","todays","todd","toddie","toddle","toddler","toddy","todictionary","todo","todolist","todos","todouble","toe","toecap","toeclip","toefl","toehold","toeing","toenail","toendof","toequal","toffee","tofixed","tofu","tog","toga","toge","together","togetherness","togged","togging","toggle","togglebutton","toggleclass","toggled","toggler","toggles","toggling","togo","togolese","toiboid","toil","toilet","toiletry","toilette","toilsome","toilsomeness","toinette","toint","toitem","tojo","tojson","tok","tokamak","tokay","toke","token","tokenism","tokenize","tokenized","tokenizer","tokens","tokugawa","tokyo","tokyoite","toland","told","tole","toledo","toleftof","tolerability","tolerable","tolerably","tolerance","tolerant","tolerate","toleration","tolist","tolkien","toll","tollbooth","tollbooths","tolley","tollgate","tollhouse","tollway","tolower","tolowercase","tolstoy","toluene","tolyatti","tom","toma","tomahawk","tomasina","tomasine","tomaso","tomato","tomatoes","tomb","tombaugh","tombigbee","tomblike","tombola","tomboy","tomboyish","tombstone","tomcat","tomcatted","tomcatting","tome","tomfool","tomfoolery","tomi","tomkin","tomlin","tommed","tommi","tommie","tomming","tommy","tomographic","tomography","tomorrow","tompkins","tomsk","tomtit","ton","tonal","tonality","tone","tonearm","toneless","tonelessness","toner","tong","tonga","tongan","tongue","tongueless","tonguing","toni","tonia","tonic","tonie","tonight","tonio","tonk","tonnage","tonne","tonnie","tons","tonsil","tonsillectomy","tonsillitis","tonsorial","tonsure","tonto","tony","tonya","tonye","too","toodle","took","tool","toolbar","toolbox","toolchain","toolchains","tooler","tooling","toolkit","toolkits","toolmake","toolmaker","toolmaking","tools","toolset","toolsmith","tooltip","tooltips","toomey","toot","tooter","tooth","toothache","toothbrush","toothily","toothless","toothmarks","toothpaste","toothpick","tooths","toothsome","toothy","tootle","toots","tootsie","tootsy","top","topaz","topbar","topcoat","topdressing","topeka","toper","topflight","topgallant","topiary","topic","topical","topicality","topics","topknot","topleft","topless","toplevel","topmast","topmost","topnav","topnotch","topocentric","topographer","topographic","topographical","topography","topological","topologist","topology","topped","topper","topping","topple","topsail","topside","topsoil","topspin","topsy","toque","tor","torah","torahs","torch","torchbearer","torchlight","tore","toreador","torey","tori","torie","torightof","torin","torment","tormenting","tormentor","torn","tornado","tornadoes","toroid","toroidal","toronto","torpedo","torpedoes","torpid","torpidity","torpor","torque","torquemada","torr","torrance","torre","torrence","torrens","torrent","torrential","torrey","torricelli","torrid","torridity","torridness","torrie","torrin","torry","tors","torsi","torsion","torsional","torsions","torso","tort","torte","tortellini","torten","tortilla","tortoise","tortoiseshell","tortoisesvn","tortola","tortoni","tortor","tortuga","tortuous","tortuousness","torture","torturous","torus","tory","tos","tosca","toscanini","toshiba","toss","tossup","tostartof","tostring","tot","totable","total","totalamount","totalcount","totaler","totalistic","totalitarian","totalitarianism","totality","totalizator","totalizing","totally","totalprice","totals","totaltime","tote","totem","totemic","toter","toting","toto","totopof","totted","totter","totterer","tottering","totting","toucan","touch","touchable","touchableopacity","touchdown","touched","toucher","touches","touchesbegan","touchily","touchiness","touching","touchline","touchscreen","touchstart","touchstone","touchy","tough","toughen","toughener","toughness","toughs","toulouse","toupee","toupper","touppercase","tour","toured","tourer","touring","tourism","tourist","touristic","touristy","tourmaline","tournament","tourney","tourniquet","tours","tousle","tout","touter","tova","tove","tow","toward","towardliness","towardly","towards","towboat","towel","towelette","toweling","tower","towering","towhead","towhee","towline","town","towner","townes","towney","townhouse","townie","townley","townsend","townsfolk","township","townsman","townsmen","townspeople","townswoman","townswomen","towny","towpath","towpaths","towrope","towsley","toxemia","toxic","toxicity","toxicological","toxicologist","toxicology","toxin","toy","toyer","toymaker","toynbee","toyoda","toyota","toys","toyshop","tp","tpl","tq","tr","trac","trace","traceability","traceable","traceableness","traceback","traced","tracee","traceless","tracepoint","tracer","tracery","traces","tracey","trachea","tracheae","tracheal","tracheotomy","traci","tracie","tracing","track","trackage","trackball","trackbed","tracked","tracker","tracking","trackless","tracks","tracksuit","tract","tractability","tractable","tractably","tractarians","traction","tractive","tractor","tracts","tracy","trade","trademark","tradeoff","trader","trades","tradesman","tradesmen","tradespeople","tradespersons","tradeswoman","tradeswomen","trading","tradition","traditional","traditionalism","traditionalist","traditionalistic","traditionalized","traditionally","traduce","traefik","trafalgar","traffic","trafficked","trafficker","trafficking","tragedian","tragedienne","tragedy","tragic","tragically","tragicomedy","tragicomic","trail","trailblazer","trailblazing","trailer","trailing","trails","trailside","train","trainable","trained","trainee","traineeships","trainer","training","trainman","trainmen","trains","trainspotter","traipse","trait","traitor","traitorous","traits","trajan","trajectory","tram","trammed","trammel","trammeled","tramming","tramp","trample","trampler","trampoline","tramway","tran","trance","tranche","tranquil","tranquility","tranquilize","tranquilized","tranquilizer","tranquilizes","tranquilizing","tranquillize","tranquillizer","tranquilness","trans","transact","transaction","transactional","transactionid","transactionmanager","transactions","transactionscope","transactor","transalpine","transaminase","transatlantic","transcaucasia","transceiver","transcend","transcendence","transcendent","transcendental","transcendentalism","transcendentalist","transclude","transconductance","transcontinental","transcribe","transcriber","transcript","transcription","transcultural","transducer","transduction","transect","transept","transfer","transferability","transferal","transferee","transference","transferor","transferral","transferred","transferrer","transferring","transfers","transfiguration","transfigure","transfinite","transfix","transform","transformation","transformational","transformations","transformed","transformer","transformers","transforming","transforms","transfuse","transfusion","transgress","transgression","transgressor","transience","transiency","transient","transistor","transistorize","transit","transite","transition","transitional","transitions","transitive","transitiveness","transitivenesses","transitivity","transitoriness","transitory","transl","translatability","translatable","translate","translated","translates","translatesautoresizingmaskintoconstraints","translatex","translatey","translatez","translating","translation","translational","translations","translator","transliterate","translucence","translucency","translucent","transmigrate","transmissible","transmission","transmissive","transmit","transmittable","transmittal","transmittance","transmitted","transmitter","transmitting","transmogrification","transmogrify","transmutation","transmute","transnational","transoceanic","transom","transonic","transpacific","transparency","transparent","transparentness","transpiration","transpire","transplant","transplantation","transpolar","transponder","transport","transportability","transportable","transportation","transports","transpose","transposed","transposition","transputer","transsexual","transsexualism","transship","transshipment","transshipped","transshipping","transubstantiation","transvaal","transversal","transverse","transvestism","transvestite","transvestitism","transylvania","trap","trapdoor","trapeze","trapezium","trapezoid","trapezoidal","trappable","trapped","trapper","trapping","trappist","trapshooting","trash","trashcan","trashiness","trashy","trastevere","trauma","traumatic","traumatically","traumatize","travail","travel","traveled","traveler","traveling","travelog","travelogue","traver","traversal","traverse","traverser","traversing","travertine","travesty","travis","travus","trawl","trawler","tray","treacherous","treacherousness","treachery","treacle","treacly","tread","treader","treadle","treadmill","treadwell","treas","treason","treasonous","treasure","treasurer","treasurership","treasury","treat","treatable","treated","treater","treating","treatise","treatment","treats","treaty","treble","treblinka","tree","treeing","treeless","treelike","treemap","treenode","trees","treeset","treetop","treeview","treeviewitem","trefoil","trefor","trek","trekked","trekker","trekkie","trekking","trellis","tremain","tremaine","trematode","tremayne","tremble","trembler","trembles","trembly","tremendous","tremendousness","tremolo","tremor","tremulous","tremulousness","trench","trenchancy","trenchant","trencher","trencherman","trenchermen","trend","trendily","trendiness","trends","trendy","trenna","trent","trenton","trepanned","trepidation","tresa","trescha","trespass","trespasser","tress","tressa","tressed","tresses","tressing","trestle","tresult","trev","trevar","trevelyan","trever","trevino","trevor","trey","tri","triable","triableness","triad","triadic","triage","trial","trialization","trialled","trialling","trials","triamcinolone","triangle","triangles","triangulable","triangular","triangularization","triangulate","triangulation","triangulum","trianon","triassic","triathlon","triatomic","tribal","tribalism","tribe","tribesman","tribesmen","tribeswoman","tribeswomen","tribulate","tribulation","tribunal","tribune","tributary","tribute","trice","tricentennial","triceps","triceratops","trichina","trichinae","trichinoses","trichinosis","trichloroacetic","trichloroethane","trichotomy","trichromatic","tricia","trick","trickery","trickily","trickiness","trickle","tricks","trickster","tricky","tricolor","tricycle","trident","tridiagonal","trie","tried","triennial","trier","tries","trieste","triffid","trifle","trifler","trifluoride","trifocals","trig","trigged","trigger","triggered","triggering","triggers","triggest","trigging","triglyceride","trigonal","trigonometric","trigonometrical","trigonometry","trigram","trihedral","trike","trilateral","trilby","trilingual","trill","trillion","trillionth","trillionths","trillium","trilobite","trilogy","trim","trimaran","trimble","trimer","trimester","trimmed","trimmer","trimmest","trimming","trimness","trimodal","trimonthly","trimurti","trina","trinidad","trinitarian","trinitrotoluene","trinity","trinket","trinketer","trio","triode","trioxide","trip","tripartite","tripartition","tripe","triphenylarsine","triphenylphosphine","triphenylstibine","triphosphopyridine","triple","triplet","triplex","triplicate","triplication","triply","tripod","tripodal","tripoli","tripolyphosphate","tripos","tripp","trippe","tripped","tripper","tripping","trips","triptych","triptychs","tripwire","trireme","tris","trisect","trisection","trisector","trish","trisha","trisodium","trista","tristam","tristan","tristate","tristique","trisyllable","trite","tritely","triteness","tritium","triton","triumph","triumphal","triumphalism","triumphant","triumphs","triumvir","triumvirate","triune","trivalent","trivet","trivia","trivial","triviality","trivialization","trivialize","trivially","trivium","trix","trixi","trixie","trixy","trobriand","trochaic","trochee","trod","trodden","trodes","troff","troglodyte","troika","trojan","troll","trolled","trolley","trolleybus","trolling","trollish","trollop","trollope","trolly","trombone","trombonist","tromp","trondheim","troop","trooper","troopship","trope","tropez","trophic","trophy","tropic","tropical","tropism","tropocollagen","troposphere","tropospheric","trot","troth","troths","trotsky","trotted","trotter","trotting","troubadour","trouble","troubled","troublemaker","troubler","troubles","troubleshoot","troubleshooter","troubleshooting","troubleshot","troublesome","troublesomeness","trough","troughs","trounce","trouncer","troupe","trouper","trouser","trousseau","trousseaux","trout","troutman","trove","trow","trowel","troweler","troy","troyes","trstram","truancy","truant","truce","truck","truckee","trucker","trucking","truckle","truckload","truculence","truculent","truda","trude","trudeau","trudey","trudge","trudi","trudie","trudy","true","truelove","trueman","trueness","truer","truest","truetype","truffle","truism","trujillo","trula","truly","trumaine","truman","trumann","trumbull","trump","trumpery","trumpet","trumpeter","trunc","truncate","truncated","truncation","truncheon","trundle","trundler","trunk","trunnion","truss","trusser","trussing","trust","trusted","trustee","trusteeing","trusteeship","truster","trustful","trustfulness","trustiness","trusting","trusts","truststore","trustworthier","trustworthiest","trustworthiness","trustworthy","trusty","truth","truthful","truthfulness","truths","truthy","trw","trx","try","tryed","trygetvalue","trying","tryout","tryparse","trypsin","tryst","ts","tsa","tsarevich","tsarina","tsarism","tsarist","tsc","tsconfig","tsetse","tsimshian","tsiolkovsky","tsitsihar","tslint","tsource","tsp","tspan","tsql","tst","tsunami","tsunematsu","tsv","tswana","tsx","tt","ttf","ttk","ttl","tts","ttt","tty","ttys","tu","tuamotu","tuareg","tub","tuba","tubae","tubal","tubbed","tubbing","tubby","tube","tubeless","tuber","tubercle","tubercular","tuberculin","tuberculoses","tuberculosis","tuberculous","tuberose","tuberous","tubing","tubman","tubular","tubule","tuck","tucker","tuckie","tucky","tucson","tucuman","tude","tudor","tue","tuesday","tuft","tufter","tufting","tug","tugboat","tugged","tugging","tuition","tulane","tularemia","tulip","tull","tulle","tulley","tully","tulsa","tum","tumble","tumbledown","tumbler","tumbleweed","tumblr","tumbrel","tumescence","tumescent","tumid","tumidity","tummy","tumor","tumorous","tums","tumult","tumultuous","tumultuousness","tumulus","tun","tuna","tunable","tunableness","tundra","tune","tuned","tuneful","tunefulness","tuneless","tuner","tuneup","tung","tungstate","tungsten","tungus","tunguska","tunic","tuning","tunis","tunisia","tunisian","tunned","tunnel","tunneler","tunning","tunny","tup","tupelo","tupi","tuple","tuples","tuppence","tupperware","tupungato","turban","turbid","turbidity","turbinate","turbine","turbo","turbocharged","turbocharger","turbofan","turbojet","turbolinks","turboprop","turbot","turbulence","turbulent","turd","tureen","turf","turfy","turgenev","turgid","turgidity","turgidness","turin","turing","turk","turkestan","turkey","turkic","turkish","turkmenistan","turmeric","turmoil","turn","turnabout","turnaround","turnbuckle","turncoat","turned","turner","turning","turnip","turnkey","turnoff","turnout","turnover","turnpike","turnround","turns","turnstile","turnstone","turntable","turpentine","turpin","turpis","turpitude","turquoise","turret","turtle","turtleback","turtledove","turtleneck","turtles","turves","turvy","tuscaloosa","tuscan","tuscany","tuscarora","tuscon","tush","tusk","tuskegee","tusker","tussle","tussock","tussocky","tussuad","tut","tutankhamen","tutelage","tutelary","tutor","tutored","tutorial","tutorials","tutorialspoint","tutorship","tutsi","tutsplus","tutted","tutti","tutting","tuttle","tutu","tuvalu","tux","tuxedo","tv","tva","tvalue","tvs","tw","twa","twaddle","twaddler","twain","twang","twangy","twas","tweak","tweaked","tweaking","tweaks","twee","tweed","tweediness","tweedledee","tweedledum","tweedy","tween","tweepy","tweet","tweeter","tweets","tweeze","tweezer","twelfth","twelfths","twelve","twelvemonth","twelvemonths","twentieths","twenty","twerp","twice","twiddle","twiddler","twiddly","twig","twigged","twigging","twiggy","twila","twilight","twilio","twilit","twill","twin","twine","twiner","twinge","twinkie","twinkle","twinkler","twinkling","twinkly","twinned","twinning","twirl","twirler","twirling","twirly","twist","twisted","twister","twists","twisty","twit","twitch","twitchy","twitted","twitter","twitterer","twittery","twitting","twixt","two","twofer","twofold","twopence","twopenny","twosome","twoway","twp","twx","twyla","tx","txn","txt","txtbox","txtname","txtusername","ty","tybalt","tybi","tybie","tycoon","tye","tyeing","tying","tyke","tylenol","tyler","tymon","tymothy","tympani","tympanist","tympanum","tynan","tyndale","tyndall","tyne","typ","type","typeahead","typecast","typed","typedarray","typedef","typeerror","typeface","typeid","typeless","typename","typeof","types","typesafe","typescript","typeset","typesetter","typesetting","typewrite","typewriter","typewriting","typewritten","typewrote","typhoid","typhon","typhoon","typhus","typical","typicality","typically","typicalness","typification","typify","typing","typings","typist","typo","typographer","typographic","typographical","typography","typological","typology","typos","tyrannic","tyrannical","tyrannicalness","tyrannicide","tyrannize","tyrannizer","tyrannizing","tyrannosaur","tyrannosaurus","tyrannous","tyranny","tyrant","tyree","tyreo","tyro","tyrol","tyrolean","tyrone","tyrosine","tyrus","tyson","tz","tzar","tzarina","tzeltal","tzinfo","u","ua","uac","uar","uart","uaw","ub","ubangi","uber","ubiquitous","ubiquity","ubound","ubuntu","uc","ucayali","uccello","uchar","uci","ucla","ud","udale","udall","udder","udell","udf","udp","ue","uf","ufa","ufo","ufologist","ufology","ug","uganda","ugandan","ugh","ughs","uglification","uglify","ugliness","uglis","ugly","ugo","uh","uhf","ui","uialertaction","uialertcontroller","uialertview","uiapplication","uibarbuttonitem","uibezierpath","uibutton","uicollectionview","uicollectionviewcell","uicolor","uicomponent","uicontrol","uicontroleventtouchupinside","uicontrolstatenormal","uid","uidevice","uielement","uievent","uifont","uighur","uigraphicsgetcurrentcontext","uigraphicsgetimagefromcurrentimagecontext","uiimage","uiimagepickercontroller","uiimageview","uikit","uilabel","uimanager","uinavigationbar","uinavigationcontroller","uint","uipickerview","uiscreen","uiscrollview","uisearchbar","uistoryboard","uistoryboardsegue","uiswing","uitabbarcontroller","uitableview","uitableviewcell","uitableviewcontroller","uitableviewdatasource","uitableviewdelegate","uitapgesturerecognizer","uitextfield","uitextview","uitouch","uiview","uiviewcontroller","uiwebview","uiwindow","uix","ujungpandang","uk","ukase","ukraine","ukrainian","ukulele","ul","ula","ulberto","ulcer","ulcerate","ulceration","ulcerous","ulick","ulises","ulla","ullamco","ullamcorper","ullman","ulna","ulnae","ulnar","ulong","ulric","ulrica","ulrich","ulrick","ulrika","ulrikaumeko","ulrike","ulster","ult","ulterior","ultimas","ultimate","ultimately","ultimateness","ultimatum","ultimo","ultra","ultracentrifugally","ultracentrifugation","ultracentrifuge","ultraconservative","ultrafast","ultrahigh","ultralight","ultramarine","ultramodern","ultramontane","ultrashort","ultrasonic","ultrasonically","ultrasonics","ultrasound","ultrastructure","ultrasuede","ultraviolet","ultrices","ultricies","ultrix","ululate","ululation","ulyanovsk","ulysses","um","umbel","umber","umberto","umbilical","umbilici","umbilicus","umbra","umbraco","umbrage","umbrageous","umbrella","umbriel","umd","umeko","umiak","uml","umlaut","ump","umpire","umpteen","un","una","unabated","unable","unabridged","unacceptability","unacceptable","unaccepted","unaccommodating","unaccountability","unaccustomed","unadapted","unadulterated","unadventurous","unalienability","unalterable","unalterableness","unalterably","unambiguity","unambiguous","unambitious","uname","unamused","unanimity","unanimous","unanticipated","unapologetic","unapologizing","unappeasable","unappeasably","unappreciative","unary","unassailable","unassailableness","unassertive","unassuming","unassumingness","unauthorized","unavailable","unavailing","unaware","unbalanced","unbar","unbarring","unbecoming","unbeknown","unbelieving","unbiased","unbid","unbind","unblessed","unblinking","unbodied","unbolt","unbound","unbounded","unbreakability","unbred","unbroken","unbuckle","unbudging","unburnt","unc","uncap","uncapping","uncatalogued","uncaught","uncauterized","unceasing","uncelebrated","uncertain","unchallengeable","unchanged","unchanging","unchangingness","uncharacteristic","uncharismatic","unchastity","uncheck","unchecked","unchristian","uncial","uncivilized","unclassified","uncle","unclear","unclouded","uncodable","uncollected","uncolored","uncoloredness","uncombable","uncomfortable","uncomment","uncommon","uncommunicative","uncompetitive","uncomplicated","uncomprehending","uncompressed","uncompromisable","unconcern","unconcerned","unconfirmed","unconfused","unconscionable","unconscionableness","unconscionably","unconstitutional","unconsumed","uncontentious","uncontrollability","unconvertible","uncool","uncooperative","uncork","uncouple","uncouth","uncouthness","uncreate","uncritical","uncross","uncrowded","unction","unctions","unctuous","unctuousness","uncustomary","uncut","und","undated","undaunted","undeceive","undecided","undeclared","undedicated","undef","undefinability","undefined","undefinedness","undelete","undeliverability","undeniable","undeniableness","undeniably","undependable","under","underachieve","underachiever","underact","underadjusting","underage","underarm","underbedding","underbelly","underbid","underbidding","underbracing","underbrush","undercarriage","undercharge","underclass","underclassman","underclassmen","underclothes","underclothing","undercoat","undercoating","underconsumption","undercooked","undercount","undercover","undercurrent","undercut","undercutting","underdeveloped","underdevelopment","underdog","underdone","undereducated","underemphasis","underemployed","underemployment","underenumerated","underenumeration","underestimate","underexploited","underexpose","underexposure","underfed","underfeed","underfloor","underflow","underfoot","underfund","underfur","undergarment","undergirding","undergo","undergoes","undergone","undergrad","undergraduate","underground","undergrowth","undergrowths","underhand","underhanded","underhandedness","underheat","underinvestment","underlaid","underlain","underlay","underlie","underline","underling","underlip","underloaded","underly","underlying","undermanned","undermentioned","undermine","undermost","underneath","underneaths","undernourished","undernourishment","underpaid","underpants","underpart","underpass","underpay","underpayment","underperformed","underpin","underpinned","underpinning","underplay","underpopulated","underpopulation","underpowered","underpricing","underprivileged","underproduction","underrate","underregistration","underreported","underreporting","underrepresentation","underrepresented","underscore","underscores","undersea","undersealed","undersecretary","undersell","undersexed","undershirt","undershoot","undershorts","undershot","underside","undersign","undersigned","undersized","undersizes","undersizing","underskirt","undersold","underspecification","underspecified","underspend","understaffed","understand","understandability","understandable","understandably","understanding","understands","understate","understatement","understocked","understood","understrength","understructure","understudy","undertake","undertaken","undertaker","undertaking","underthings","undertone","undertook","undertow","underused","underusing","underutilization","underutilized","undervaluation","undervalue","underwater","underway","underwear","underweight","underwent","underwhelm","underwood","underworld","underwrite","underwriter","underwritten","underwrote","undeserving","undesigned","undesirable","undeviating","undialyzed","undiplomatic","undiscerning","undiscriminating","undo","undocumented","undoubted","undramatic","undramatized","undress","undrinkability","undrinkable","undroppable","undue","undulant","undulate","undulation","unearth","unearthliness","unearthly","unease","uneconomic","uneducated","unemployed","unemployment","unencroachable","unending","unendurable","unenergized","unenforced","unenterprising","unescape","unesco","unethical","uneulogized","unexacting","unexceptionably","unexcited","unexpected","unexpectedly","unexpectedness","unfading","unfailing","unfailingness","unfair","unfamiliar","unfashionable","unfathomably","unfavored","unfeeling","unfeigned","unfelt","unfeminine","unfertile","unfetchable","unfinished","unflagging","unflappability","unflappable","unflappably","unflinching","unfold","unfoldment","unforced","unforgeable","unfortunate","unfortunately","unfossilized","unfraternizing","unfrozen","unfulfillable","unfunny","unfussy","ungainliness","ungainly","ungava","ungenerous","ungentle","unglamorous","ungrammaticality","ungrudging","unguent","ungulate","unhandled","unharmonious","unharness","unhistorical","unholy","unhook","unhydrolyzed","unhygienic","uni","unibus","unicameral","unicef","unicellular","unicode","unicorn","unicycle","unicyclist","unideal","unidimensional","unidiomatic","unidirectional","unidirectionality","unidolized","unifiable","unification","unified","unifier","unifilar","uniform","uniformity","uniformness","unify","unilateral","unilateralism","unilateralist","unimodal","unimpeachably","unimportance","unimportant","unimpressive","unindustrialized","uninhibited","uninitialized","uninominal","uninstall","uninstalled","uninstalling","uninsured","unintellectual","unintended","uninteresting","uninterrupted","uninterruptedness","unintuitive","uninviting","union","unionism","unionist","unionize","unions","uniplus","unipolar","uniprocessor","uniq","uniqid","unique","uniqueid","uniqueidentifier","uniquely","uniqueness","uniroyal","unisex","unisoft","unison","unistd","unisys","unit","unitarian","unitarianism","unitary","unite","united","uniter","unitize","unitofwork","unitprice","units","unittest","unity","unityengine","univ","univac","univalent","univalve","univariate","universal","universalism","universalistic","universality","universalize","universalizer","universally","universe","universities","university","unix","unixtime","unjam","unkempt","unkind","unkink","unknightly","unknowable","unknowing","unknown","unknownhostexception","unlabored","unlace","unlearn","unless","unlike","unlikeable","unlikeliness","unlikely","unlimber","unlimited","unlink","unlist","unlit","unliterary","unload","unloaded","unlock","unlocked","unloose","unlucky","unmagnetized","unmanageably","unmanaged","unmanagedtype","unmannered","unmarshal","unmarshaller","unmask","unmeaning","unmeasured","unmeetable","unmelodious","unmemorable","unmemorialized","unmentionable","unmerciful","unmeritorious","unmethodical","unmineralized","unmissable","unmistakably","unmitigated","unmnemonic","unmobilized","unmoral","unmount","unmovable","unmoving","unnamed","unnaturalness","unnavigable","unnecessarily","unnecessary","unneeded","unnerving","unnest","uno","unobliging","unobtrusive","unoffensive","unofficial","unordered","unorganized","unorthodox","unpack","unpacked","unpacking","unpaintable","unpalatability","unpalatable","unpartizan","unpatronizing","unpeople","unperceptive","unperson","unperturbed","unphysical","unpick","unpicturesque","unpinning","unpkg","unpleasing","unploughed","unpolarized","unpopular","unpractical","unprecedented","unpredictable","unpreemphasized","unpremeditated","unpretentiousness","unprincipled","unproblematic","unproductive","unpropitious","unprovable","unproven","unprovocative","unpunctual","unqualified","unquestionable","unraisable","unravellings","unreachable","unread","unreadability","unreadable","unreal","unrealizable","unreasonable","unreasoning","unreceptive","unrecognized","unrecordable","unreflective","unregister","unrelated","unrelenting","unreliable","unremitting","unrepeatability","unrepeated","unrepentant","unreported","unrepresentative","unreproducible","unresolved","unresponsive","unrest","unrestrained","unrewarding","unriddle","unripe","unromantic","unruliness","unruly","unsafe","unsaleable","unsanitary","unsavored","unsavoriness","unseal","unsearchable","unseasonal","unseeing","unseen","unselected","unselfconscious","unselfconsciousness","unselfishness","unsellable","unsentimental","unserialize","unset","unsettled","unsettledness","unsettling","unshapely","unshaven","unshift","unshorn","unsighted","unsightliness","unsigned","unskilful","unsociability","unsociable","unsocial","unsorted","unsound","unspeakably","unspecific","unspecified","unspectacular","unspoilt","unspoke","unsporting","unstable","unstigmatized","unstilted","unstinting","unstopping","unstrapping","unstudied","unstuffy","unsubdued","unsubscribe","unsubstantial","unsubtle","unsuccessful","unsuitable","unsupported","unsupportedencodingexception","unsupportedoperationexception","unsure","unsuspecting","unswerving","unsymmetrical","unsympathetic","unsystematic","unsystematized","untactful","untalented","untaxing","unteach","untellable","untenable","untested","unthinking","until","untill","untiring","untitled","unto","untouchable","untouched","untoward","untowardness","untraceable","untrue","untrusted","untruthfulness","untwist","unukalhai","unusable","unused","unusual","unusualness","unutterable","unutterably","unvocalized","unvulcanized","unwaivering","unwanted","unwarrantable","unwarrantably","unwashed","unwearable","unwearied","unwed","unwedge","unwelcome","unwell","unwieldiness","unwieldy","unwind","unwomanly","unworkable","unworried","unwrap","unwrapping","unyielding","unyoke","unzip","up","upanishads","uparrow","upbeat","upbraid","upbring","upbringing","upc","upchuck","upcome","upcoming","upcountry","upd","updatability","updatable","update","updated","updatedat","updatepanel","updater","updates","updatesourcetrigger","updating","updike","updraft","upend","upfield","upfront","upgrade","upgradeable","upgraded","upgrades","upgrading","upheaval","upheld","uphill","uphold","upholder","upholster","upholsterer","upholstery","upi","upkeep","upland","uplander","uplift","uplifter","upload","uploaded","uploadedfile","uploader","uploadfile","uploading","uploads","upmarket","upon","upped","upper","uppercase","upperclassman","upperclassmen","uppercut","uppercutting","uppermost","upping","uppish","uppity","upraise","uprated","uprating","uprear","upright","uprightness","uprise","uprising","upriver","uproar","uproarious","uproariousness","uproot","uprooter","ups","upscale","upsert","upset","upsetting","upshot","upside","upsilon","upslope","upstage","upstairs","upstanding","upstandingness","upstart","upstate","upstream","upstroke","upsurge","upswing","upswung","uptake","upthrust","uptight","uptime","upto","upton","uptown","uptrend","upturn","upvote","upvoted","upvotes","upward","upwardness","upwards","upwelling","upwind","uq","ur","uracil","ural","urania","uranium","uranus","uranyl","urbain","urban","urbana","urbane","urbanism","urbanite","urbanity","urbanization","urbanize","urbano","urbanologist","urbanology","urbanus","urchin","urdu","urea","uremia","uremic","ureter","urethane","urethra","urethrae","urethral","urethritis","urey","urge","urgency","urgent","urger","uri","uriah","uric","uriel","urikind","urinal","urinalyses","urinalysis","urinary","urinate","urination","urine","uris","url","urlclassloader","urlconnection","urldecode","urlencode","urlencoded","urlencoder","urllib","urlopen","urlparameter","urlpatterns","urlrequest","urlrouterprovider","urls","urlsession","urlstring","urlwithstring","urn","urna","urning","urogenital","urological","urologist","urology","urquhart","ursa","ursala","ursine","ursola","urson","ursula","ursulina","ursuline","urticaria","uruguay","uruguayan","urumqi","us","usa","usability","usable","usably","usaf","usage","usages","usart","usb","usc","uscg","usd","usda","use","usec","usecase","used","usedrange","useful","usefull","usefulness","useless","uselessness","usenet","usenix","user","useragent","userbundle","usercontrol","usercontroller","userdao","userdata","userdefaults","userdetails","userdetailsservice","useremail","userfile","userform","userguide","userid","userinfo","userinput","userinteractionenabled","userlist","userlogin","usermanager","usermanual","usermodel","username","usernames","userpassword","userprofile","userrepository","userrole","users","userscontroller","userservice","usertype","uses","usg","usher","usherette","ushort","usia","using","usmc","usn","uso","usort","usp","usps","usr","uss","ussr","ustinov","usu","usual","usually","usuals","usuario","usurer","usurious","usuriousness","usurp","usurpation","usurper","usury","ut","uta","utah","utahan","utc","utcnow","ute","utensil","uteri","uterine","uterus","utf","utica","util","utile","utilitarian","utilitarianism","utilities","utility","utilization","utilize","utilizer","utilizes","utilizing","utils","utl","utm","utmost","utopia","utopian","utopianism","utrecht","utrillo","utter","utterance","uttered","utterer","utterly","uttermost","uu","uucp","uuid","uv","uvula","uvular","uw","uwp","uwsgi","ux","uxorious","uzbek","uzbekistan","uzi","v","va","vaadin","vacancy","vacant","vacantness","vacate","vacation","vacationist","vacationland","vaccinate","vaccination","vaccine","vaccinia","vaccinial","vachel","vacillate","vacillating","vacillation","vacillator","vaclav","vacua","vacuity","vacuo","vacuolate","vacuolated","vacuole","vacuolization","vacuous","vacuousness","vacuum","vader","vaduz","vagabond","vagabondage","vagarious","vagary","vagina","vaginae","vaginal","vagrancy","vagrant","vague","vagueing","vagueness","vail","vain","vainglorious","vaingloriousness","vainglory","val","valance","valaree","valaria","valarie","valdemar","valdez","vale","valeda","valediction","valedictorian","valedictory","valence","valencia","valency","valene","valenka","valentia","valentijn","valentin","valentina","valentine","valentino","valenzuela","valera","valeria","valerian","valerie","valerye","valet","valetudinarian","valetudinarianism","valgrind","valhalla","valiance","valiant","valiantness","valid","valida","validate","validated","validates","validating","validation","validationerror","validationmessagefor","validationresult","validations","validator","validators","validity","validness","validnesses","valign","valina","valise","valium","valkyrie","valle","vallejo","valletta","valley","valli","vallie","vally","valma","valois","valor","valorous","valparaiso","valry","vals","valuable","valuableness","valuables","valuably","valuate","valuation","valuator","value","valuechanged","valued","valueerror","valueeventlistener","valueforkey","valueless","valuelessness","valueof","valuer","values","valuetype","valve","valveless","valves","valvular","vamoose","vamp","vamper","vampire","van","vanadium","vance","vancouver","vanda","vandal","vandalism","vandalize","vandenberg","vanderbilt","vanderburgh","vanderpoel","vandyke","vane","vanessa","vang","vanguard","vania","vanilla","vanish","vanisher","vanishing","vanity","vanna","vanned","vanni","vannie","vanning","vanny","vanquish","vanquisher","vantage","vanuatu","vanya","vanzetti","vapid","vapidity","vapidness","vapor","vaporer","vaporing","vaporisation","vaporise","vaporization","vaporize","vaporizer","vaporous","vapory","vaquero","var","varanasi","varbinary","varchar","varese","vargas","variability","variable","variablename","variableness","variables","variably","variadic","varian","variance","variances","variant","variants","variate","variation","variational","variations","varicolored","varicose","varied","variedly","variegate","variegation","varier","varies","varietal","variety","various","varistor","varityping","varius","varlet","varmint","varname","varnish","varnished","varnisher","vars","varsity","vary","varying","vascular","vase","vasectomy","vaseline","vasili","vasily","vasomotor","vasquez","vassal","vassalage","vassar","vassili","vassily","vast","vastly","vastness","vat","vatican","vatted","vatting","vaudeville","vaudevillian","vaudois","vaughan","vaughn","vault","vaulter","vaulting","vaunt","vaunter","vax","vaxes","vazquez","vb","vba","vbcrlf","vbnewline","vbo","vbox","vbs","vbscript","vc","vcard","vcf","vcl","vcr","vcs","vd","vdt","vdu","ve","veal","vealed","vealer","veals","veblen","vec","vect","vector","vectorial","vectorization","vectorize","vectorized","vectorizing","vectors","ved","veda","vedanta","veejay","veep","veer","veering","veg","vega","vegan","vegemite","veges","vegetable","vegetarian","vegetarianism","vegetate","vegetation","vegetative","vegged","veggie","vegging","vehemence","vehemency","vehement","vehicle","vehicles","vehicula","vehicular","veil","veiling","vein","veining","vel","vela","velar","velarize","velcro","veld","veldt","velez","velit","vella","vellum","velma","velocipede","velocity","velor","velour","velsquez","velum","velveeta","velvet","velveteen","velvety","velzquez","venal","venality","venation","vend","vender","vendetta","vendible","vendor","vendors","veneer","veneerer","veneering","venenatis","venerability","venerable","venerate","veneration","venereal","venetian","venezuela","venezuelan","vengeance","vengeful","vengefulness","venial","venialness","veniam","venice","venireman","veniremen","venison","venita","venn","venom","venomous","venomousness","venous","vent","venter","ventilate","ventilated","ventilation","ventilator","ventral","ventricle","ventricular","ventriloquies","ventriloquism","ventriloquist","ventriloquy","ventura","venture","venturesome","venturesomeness","venturi","venturous","venturousness","venue","venues","venus","venusian","venv","ver","vera","veracious","veraciousness","veracities","veracity","veracruz","veradis","veranda","verandahed","verb","verbal","verbalization","verbalize","verbalized","verbalizer","verballed","verballing","verbatim","verbena","verbiage","verbose","verbosity","verboten","verbs","verdana","verdant","verde","verderer","verdi","verdict","verdigris","verdure","vere","verena","verene","verge","verger","vergil","veridical","veriee","verifiability","verifiable","verifiableness","verification","verified","verifier","verifies","verify","verifying","verifypeer","verile","verily","verina","verine","verisimilitude","veritable","veritableness","veritably","verity","verizon","verla","verlag","verlaine","vermeer","vermicelli","vermiculite","vermiform","vermilion","vermin","verminous","vermont","vermonter","vermouth","vermouths","vern","verna","vernacular","vernal","verne","vernen","verney","vernice","vernier","vernon","vernor","verona","veronese","veronica","veronika","veronike","veronique","verruca","verrucae","versa","versailles","versatec","versatile","versatileness","versatility","verse","versed","verses","versicle","versification","versifier","versify","versing","version","versioncode","versioned","versioning","versionname","versions","verso","versus","vert","vertebra","vertebrae","vertebral","vertebrate","vertebration","vertex","vertical","verticalalignment","vertically","vertices","vertiginous","vertigo","vertigoes","vertx","verve","very","vesalius","vesicle","vesicular","vesiculate","vespasian","vesper","vespucci","vessel","vest","vesta","vestal","vestibular","vestibule","vestibulum","vestige","vestigial","vesting","vestment","vestry","vestryman","vestrymen","vesture","vesuvius","vet","vetch","veter","veteran","veterinarian","veterinary","veto","vetoes","vetted","vetting","vevay","vex","vexation","vexatious","vexatiousness","vexed","vf","vfs","vfw","vfy","vg","vga","vh","vhdl","vhf","vhost","vhosts","vhs","vi","via","viability","viable","viably","viaduct","viagra","vial","viand","vibe","vibraharp","vibrancy","vibrant","vibraphone","vibraphonist","vibrate","vibration","vibrational","vibrato","vibrator","vibratory","vibrio","vibrionic","viburnum","vic","vicar","vicarage","vicarious","vicariousness","vice","viced","vicegerent","vicennial","vicente","viceregal","viceroy","vichy","vichyssoise","vicing","vicinity","vicious","viciousness","vicissitude","vick","vickers","vicki","vickie","vicksburg","vicky","victim","victimization","victimize","victimized","victimizer","victoir","victor","victoria","victorian","victorianism","victorious","victoriousness","victory","victrola","victual","victualer","vicua","vid","vida","vidal","videlicet","video","videocapture","videocassette","videoconferencing","videodisc","videodisk","videoid","videophone","videoplayer","videos","videotape","videoview","vidovic","vidovik","vie","vienna","viennese","vientiane","vier","viet","vietcong","vietminh","vietnam","vietnamese","view","viewable","viewbag","viewbox","viewchild","viewcontext","viewcontroller","viewcontrollers","viewdata","viewdidappear","viewdidload","viewed","viewer","viewers","viewfinder","viewgraph","viewgroup","viewholder","viewing","viewless","viewmodel","viewmodels","viewname","viewpager","viewpoint","viewport","viewrootimpl","views","viewstate","viewtopic","viewtype","viewwillappear","viewwithtag","vigesimal","vigil","vigilance","vigilant","vigilante","vigilantism","vigilantist","vignette","vignetter","vignetting","vignettist","vigor","vigorous","vigorousness","vii","viii","vijayawada","viki","viking","vikki","vikky","vikram","vila","vile","vilely","vileness","vilest","vilhelmina","vilification","vilifier","vilify","villa","village","villager","villain","villainous","villainousness","villainy","villarreal","ville","villein","villeinage","villi","villon","villus","vilma","vilnius","vilyui","vim","vimeo","vimrc","vin","vina","vinaigrette","vince","vincent","vincenty","vincenz","vinci","vincible","vindemiatrix","vindicate","vindication","vindicator","vindictive","vindictiveness","vine","vinegar","vinegary","vineyard","vinita","vinni","vinnie","vinny","vino","vinous","vinson","vintage","vintager","vintner","vinyl","viol","viola","violable","violante","violate","violated","violates","violating","violation","violations","violator","viole","violence","violent","violet","violetta","violette","violin","violinist","violist","violoncellist","violoncello","vip","viper","viperous","virago","viragoes","viral","vireo","virge","virgie","virgil","virgilio","virgin","virgina","virginal","virginia","virginian","virginie","virginity","virgo","virgule","virile","virility","virologist","virology","virtual","virtualbox","virtualenv","virtualenvs","virtualfilterchain","virtualhost","virtualization","virtually","virtue","virtuosity","virtuoso","virtuosoes","virtuous","virtuousness","virulence","virulent","virus","vis","visa","visage","visakhapatnam","visayans","viscera","visceral","viscid","viscoelastic","viscoelasticity","viscometer","viscose","viscosity","viscount","viscountcy","viscountess","viscous","viscousness","viscus","vise","viselike","vishnu","visibility","visible","visibly","visigoth","visigoths","vision","visionariness","visionary","visit","visitable","visitant","visitation","visited","visiting","visitor","visitors","visits","visor","vista","vistula","visual","visualization","visualize","visualized","visualizer","visualizes","visually","visualstate","visualstudio","vita","vitae","vital","vitality","vitalization","vitalize","vitamin","vite","vitia","vitiate","vitiation","viticulture","viticulturist","vitim","vito","vitoria","vitreous","vitrifaction","vitrification","vitrify","vitrine","vitriol","vitriolic","vitro","vittles","vittoria","vittorio","vituperate","vituperation","vituperative","vitus","viv","viva","vivace","vivacious","vivaciousness","vivacity","vivaldi","vivamus","vivaria","vivarium","vivaxes","vive","vivekananda","viverra","vivi","vivia","vivian","viviana","vivianna","vivianne","vivid","vividness","vivie","vivien","viviene","vivienne","vivifier","vivify","viviparous","vivisect","vivisection","vivisectional","vivisectionist","viviyan","vivo","vivyan","vivyanne","vixen","vixenish","viz","vizier","vizor","vj","vk","vl","vlad","vladamir","vladimir","vladivostok","vlc","vlf","vlookup","vlsi","vm","vms","vmware","vn","vnd","vo","voa","vocab","vocable","vocabularian","vocabularianism","vocabulary","vocal","vocalic","vocalise","vocalism","vocalist","vocalization","vocalize","vocalized","vocalizer","vocation","vocational","vocative","vociferate","vociferation","vociferous","vociferousness","vocoded","vocoder","vodka","voe","vogel","vogella","vogue","vogueing","voguish","voice","voiceband","voiced","voiceless","voicelessness","voicer","voices","voicing","void","voidable","voided","voider","voiding","voidness","voids","voil","voila","voile","voip","vol","volar","volatile","volatileness","volatility","volatilization","volatilize","volcanic","volcanically","volcanism","volcano","volcanoes","vole","volga","volgograd","volition","volitional","volitionality","volkswagen","volley","volleyball","volleyer","volleyerror","volstead","volt","volta","voltage","voltaic","voltaire","volterra","voltmeter","volubility","voluble","volubly","volume","volumes","volumetric","volumetrically","voluminous","voluminousness","voluntarily","voluntariness","voluntarism","voluntary","volunteer","voluptate","voluptuary","voluptuous","voluptuousness","volute","volutpat","volvo","vomit","von","vonda","vonnegut","vonni","vonnie","vonny","vonr","voodoo","voodooism","voracious","voraciousness","voracity","voronezh","vorster","vortex","vortices","vorticity","votary","vote","voted","voter","votes","voting","votive","vouch","voucher","vouchsafe","vow","vowel","vowelled","vowelling","vowels","vower","voyage","voyager","voyageur","voyeur","voyeurism","voyeuristic","vp","vpc","vpn","vps","vr","vs","vscode","vsts","vstudio","vt","vtable","vtk","vtol","vue","vuejs","vuex","vulcan","vulcanization","vulcanize","vulcanized","vulg","vulgar","vulgarian","vulgarism","vulgarity","vulgarization","vulgarize","vulgate","vulnerabilities","vulnerability","vulnerable","vulnerably","vulpine","vulputate","vulture","vulturelike","vulturous","vulva","vulvae","vv","vw","vx","vy","vying","vyky","w","wa","waals","wabash","wac","wacke","wackes","wackiness","wacko","wacky","waco","wad","wadded","wadding","waddle","wade","wader","wadi","wadsworth","wafer","waffle","wafs","waft","wafter","wag","wage","waged","wager","wages","wagged","waggery","wagging","waggish","waggishness","waggle","waggly","wagner","wagnerian","wagon","wagoner","wagtail","wahl","waif","waikiki","wail","wailer","wain","wainscot","wainwright","waist","waistband","waistcoat","waister","waistline","wait","waite","waited","waiter","waitfor","waiting","waitkey","waitpeople","waitperson","waitress","waits","waive","waiver","wake","wakefield","wakeful","wakefulness","waken","waker","wakeup","waksman","wal","walbridge","walcott","wald","waldemar","walden","waldensian","waldheim","waldo","waldon","waldorf","wale","wales","walesa","walford","walgreen","waling","walk","walkabout","walkaway","walker","walkie","walking","walkman","walkout","walkover","walks","walkthrough","walkway","wall","wallaby","wallace","wallache","wallah","wallas","wallboard","wallenstein","waller","wallet","walleye","wallflower","wallie","wallis","walliw","walloon","wallop","walloper","walloping","wallow","wallower","wallpaper","walls","wally","walnut","walpole","walpurgisnacht","walrus","walsh","walt","walter","walther","walton","waltz","waltzer","walworth","waly","wamp","wampum","wan","wanamaker","wand","wanda","wander","wanderer","wanderlust","wandie","wandis","wane","waneta","wang","wangle","wangler","wanids","wankel","wanna","wannabe","wanned","wanner","wanness","wannest","wanning","wansee","wansley","want","wanted","wanter","wanting","wanton","wantonness","wants","wapiti","war","warble","warbler","warbonnet","ward","warde","warden","warder","wardrobe","wardroom","wards","wardship","ware","warehouse","warehouseman","warfare","warfield","warhead","warhol","warhorse","warily","wariness","warinesses","waring","warless","warlike","warlock","warlord","warm","warmblooded","warmed","warmer","warmhearted","warmheartedness","warmish","warmness","warmonger","warmongering","warms","warmth","warmths","warn","warned","warner","warning","warnings","warnock","warp","warpaint","warpath","warpaths","warper","warplane","warrant","warranted","warranter","warranty","warred","warren","warrener","warring","warrior","wars","warsaw","warship","wart","warthog","wartime","warty","warwick","wary","was","wasatch","wash","washable","washbasin","washboard","washbowl","washburn","washcloth","washcloths","washday","washed","washer","washerwoman","washerwomen","washing","washington","washingtonian","washoe","washout","washrag","washroom","washstand","washtub","washy","wasn","wasp","waspish","waspishness","wassail","wasserman","wassermann","wast","wastage","waste","wastebasket","wasted","wasteful","wastefulness","wasteland","wastepaper","waster","wastewater","wasting","wastrel","wat","watanabe","watch","watchable","watchband","watchdog","watchdogged","watchdogging","watched","watcher","watches","watchful","watchfulness","watching","watchmake","watchmaker","watchman","watchmen","watchpoints","watchtower","watchword","water","waterbird","waterborne","waterbury","watercolor","watercolorist","watercourse","watercraft","watercress","waterer","waterfall","waterfowl","waterfront","watergate","waterhole","waterhouse","wateriness","watering","waterless","waterlily","waterline","waterlogged","waterloo","waterman","watermark","watermelon","watermill","waterproof","waters","watershed","waterside","watersider","waterspout","watertight","watertightness","watertown","waterway","waterwheel","waterworks","watery","watir","watkins","wats","watson","watt","wattage","watteau","wattenberg","watterson","wattle","watusi","waugh","waukesha","waunona","waupaca","waupun","wausau","wauwatosa","wav","wave","waveband","waveform","wavefront","waveguide","waveland","wavelength","wavelengths","wavelet","wavelike","wavenumber","waver","wavering","waverley","waverly","waves","wavily","waviness","wavy","wax","waxer","waxiness","waxwing","waxwork","waxy","way","wayfarer","wayfaring","waylaid","waylan","wayland","waylay","waylayer","wayleave","waylen","waylin","waylon","waymarked","wayne","waynesboro","waypoint","waypoints","ways","wayside","wayward","waywardness","wb","wc","wcf","wchar","wd","we","weak","weaken","weakener","weakfish","weakish","weakliness","weakling","weakly","weakness","weakreference","weal","wealth","wealthiness","wealths","wealthy","wean","weaner","weanling","weapon","weaponless","weaponry","weapons","wear","wearable","wearer","wearied","wearily","weariness","wearing","wearisome","wearisomeness","weary","wearying","weasel","weather","weatherbeaten","weathercock","weatherer","weatherford","weathering","weatherize","weatherman","weathermen","weatherperson","weatherproof","weatherstrip","weatherstripped","weatherstripping","weave","weaver","weaves","weaving","web","webapi","webapp","webappclassloader","webappcontext","webapplication","webapps","webb","webbed","webber","webbing","webbrowser","webcam","webclient","webcontainer","webcontrols","webcore","webdav","webdriver","webdriverwait","webelement","weber","webern","webexception","webfeet","webfont","webfoot","webform","webforms","webgl","webhook","webhooks","webhost","webkit","weblog","weblogic","weblogs","webm","webmaster","webmethod","webmvc","webp","webpack","webpage","webpages","webrequest","webresponse","webrick","webroot","webrtc","webserver","webservice","webservices","websettings","website","websites","websocket","websockets","websphere","webster","websterville","webstore","webstorm","webview","webviewclient","wed","wedded","weddell","wedder","wedding","wedge","wedgie","wedgwood","wedlock","wednesday","wee","weed","weeder","weediness","weedkiller","weedless","weedy","weeing","week","weekday","weekdays","weekend","weekender","weekends","weekly","weeknight","weeks","ween","weenie","weeny","weep","weeper","weepy","weevil","weft","wehr","wei","weibull","weidar","weider","weidman","weierstrass","weigh","weighed","weigher","weighs","weight","weighted","weighter","weightily","weightiness","weighting","weightless","weightlessness","weightlifter","weightlifting","weights","weightsum","weighty","weill","weinberg","weiner","weinstein","weir","weird","weirdie","weirdness","weirdo","weisenheimer","weiss","weissman","weissmuller","weizmann","weka","welbie","welby","welcher","welches","welcome","welcomed","welcomeness","welcoming","weld","welder","weldon","weldwood","welfare","welkin","well","welland","wellbeing","weller","welles","wellesley","wellhead","wellington","wellman","wellness","wells","wellspring","wellsville","welmers","welsh","welsher","welshman","welshmen","welshwoman","welshwomen","welt","welter","welterweight","wen","wench","wencher","wend","wenda","wendall","wendel","wendeline","wendell","wendi","wendie","wendy","wendye","wenona","wenonah","went","wentworth","wept","were","weren","werewolf","werewolves","werner","wernher","werror","werther","werwolf","wes","wesley","wesleyan","wessex","wesson","west","westbound","westbrook","westbrooke","westchester","wester","westerly","western","westerner","westernization","westernize","westernmost","westfield","westhampton","westing","westinghouse","westleigh","westley","westminster","westmore","weston","westphalia","westport","westward","westwood","wet","wetback","wether","wetland","wetness","wettable","wetter","wettest","wetting","weyden","weyerhauser","weylin","wezen","wf","wff","wg","wget","wh","whack","whacker","whale","whaleboat","whalebone","whalen","whaler","whaling","wham","whammed","whamming","whammy","wharf","wharton","wharves","what","whatchamacallit","whatever","whatnot","whats","whatsapp","whatsoever","whatwg","wheal","wheat","wheatgerm","wheaties","wheatland","wheaton","wheatstone","whee","wheedle","wheel","wheelbarrow","wheelbase","wheelchair","wheeler","wheelhouse","wheelie","wheeling","wheelock","wheels","wheelwright","wheeze","wheezily","wheeziness","wheezy","whelan","whelk","wheller","whelm","whelp","when","whence","whenever","whensoever","where","whereabout","whereas","whereat","whereby","wherefore","wherein","whereof","whereon","wheresoever","whereto","whereupon","wherever","wherewith","wherewithal","wherry","whet","whether","whetstone","whetted","whetting","whew","whey","which","whichever","whiff","whiffle","whiffler","whiffletree","whig","while","whilom","whilst","whim","whimmed","whimming","whimper","whimsey","whimsical","whimsicality","whimsy","whine","whining","whinny","whiny","whip","whipcord","whiplash","whippany","whipped","whipper","whippersnapper","whippet","whipping","whipple","whippletree","whippoorwill","whips","whipsaw","whir","whirl","whirligig","whirlpool","whirlwind","whirly","whirlybird","whirred","whirring","whisk","whisker","whiskery","whiskey","whisper","whisperer","whispering","whist","whistle","whistleable","whistler","whistling","whit","whitaker","whitby","whitcomb","white","whitebait","whitecap","whitecolor","whiteface","whitefield","whitefish","whitehall","whitehead","whitehorse","whiteleaf","whiteley","whitelist","whiten","whitener","whiteness","whitening","whiteout","whitespace","whitespaces","whitetail","whitewall","whitewash","whitewater","whitey","whitfield","whither","whitier","whitiest","whiting","whitish","whitley","whitlock","whitman","whitney","whitsunday","whittaker","whitter","whittier","whittle","whittler","whiz","whizkid","whizzbang","whizzed","whizzes","whizzing","whl","who","whoa","whodunit","whoever","whois","whole","wholegrain","wholehearted","wholeheartedness","wholemeal","wholeness","wholesale","wholesaler","wholesome","wholesomeness","wholewheat","wholly","whom","whomever","whomsoever","whoop","whoopee","whooper","whoosh","whop","whopper","whopping","whore","whorehouse","whoreish","whorish","whorl","whose","whoso","whosoever","why","whys","wi","wiatt","wich","wichita","wick","wicked","wickedness","wicker","wickerwork","wicket","wicketkeeper","wicking","wid","wide","widely","widemouthed","widen","widener","wideness","wider","widespread","widgeon","widget","widgets","widow","widower","widowhood","width","widths","widthwise","wieland","wield","wielder","wiemar","wiener","wienie","wier","wiesel","wife","wifeless","wifely","wifi","wifimanager","wig","wigeon","wigged","wigging","wiggins","wiggle","wiggler","wiggly","wight","wiglet","wigmaker","wigner","wigwag","wigwagged","wigwagging","wigwam","wiki","wikimedia","wikipedia","wilberforce","wilbert","wilbur","wilburn","wilburt","wilcox","wild","wilda","wildcard","wildcards","wildcat","wildcatted","wildcatter","wildcatting","wilde","wildebeest","wilden","wilder","wilderness","wildfire","wildflower","wildfly","wildfowl","wilding","wildlife","wildly","wildness","wildon","wile","wileen","wilek","wiley","wilford","wilfred","wilfredo","wilfrid","wilfulness","wilhelm","wilhelmina","wilhelmine","wilie","wilily","wiliness","wilkerson","wilkes","wilkins","wilkinson","will","willa","willabella","willamette","willamina","willard","willcox","willdon","willed","willem","willemstad","willer","willetta","willette","willey","willful","willfulness","willi","william","williamsburg","williamson","willie","willied","willies","willing","willinger","willingest","willingness","willisson","williwaw","willoughby","willow","willower","willowy","willpower","willy","willyt","wilma","wilmar","wilmer","wilmette","wilmington","wilona","wilone","wilow","wilshire","wilson","wilsonian","wilt","wilton","wily","wimbledon","wimp","wimpish","wimple","wimpy","win","winapi","wince","winch","winchell","wincher","winchester","wind","windbag","windblown","windbreak","windburn","winded","winder","windfall","windflower","windham","windhoek","windily","windiness","winding","windjammer","windlass","windless","windmill","window","windowless","windowmanager","windowpane","windows","windowsazure","windowsill","windowstate","windpipe","windproof","windrow","winds","windscreen","windshield","windsock","windsor","windstorm","windsurf","windswept","windup","windward","windy","wine","wineglass","winegrower","winehead","winemake","winemaster","winery","winesap","wineskin","winfield","winform","winforms","winfred","winfrey","winfx","wing","wingback","wingding","wingeing","winger","wingless","winglike","wingman","wingmen","wingspan","wingspread","wingtip","wini","winifield","winifred","wink","winker","winking","winkle","winless","winn","winna","winnable","winnah","winne","winnebago","winner","winners","winnetka","winni","winnie","winnifred","winning","winnipeg","winnow","winny","wino","winograd","winona","winonah","winooski","winrt","wins","winsborough","winsett","winslow","winsock","winsome","winsomeness","winston","winter","winterer","wintergreen","winterize","winters","wintertime","winthrop","wintriness","wintry","winy","wipe","wiper","wire","wired","wirehair","wireless","wireman","wiremen","wirer","wires","wireshark","wiretap","wiretapped","wiretapper","wiretapping","wiriness","wiring","wiry","wis","wisc","wisconsin","wisconsinite","wisdom","wisdoms","wise","wiseacre","wisecrack","wised","wisely","wiseness","wisenheimer","wises","wish","wishbone","wishes","wishful","wishfulness","wishlist","wishy","wising","wisp","wispy","wist","wisteria","wistful","wistfulness","wit","witch","witchcraft","witchdoctor","witchery","with","withal","withcolumn","withdraw","withdrawal","withdrawer","withdrawn","withdrawnness","withdrew","withe","wither","withering","witherspoon","withevent","withheld","withhold","withholder","withidentifier","within","withobject","without","withrowanimation","withs","withstand","withstood","withstring","witless","witlessness","witness","witnessed","witt","witted","witter","wittgenstein","witticism","wittie","wittily","wittiness","witting","wittings","witty","witwatersrand","wive","wives","wix","wiz","wizard","wizardry","wizen","wk","wkhtmltopdf","wkwebview","wl","wlan","wls","wm","wmi","wn","wnd","wndproc","wno","wnw","wo","woad","wobble","wobbler","wobbliness","wobbly","wodehouse","woe","woebegone","woeful","woefuller","woefullest","woefulness","woff","wok","woke","wolcott","wold","wolf","wolfe","wolfer","wolff","wolfgang","wolfhound","wolfie","wolfish","wolfishness","wolfram","wolfy","wollongong","wollstonecraft","wolsey","wolverhampton","wolverine","wolverton","wolves","woman","womanhood","womanish","womanize","womanized","womanizer","womanizes","womankind","womanlike","womanliness","womanly","womb","wombat","women","womenfolk","won","wonder","wondered","wonderer","wonderful","wonderfulness","wondering","wonderland","wonderment","wondrous","wondrousness","wong","wonk","wonky","wonned","wonning","wont","wonted","wontedness","woo","woocommerce","wood","woodard","woodberry","woodbine","woodblock","woodbury","woodcarver","woodcarving","woodchopper","woodchuck","woodcock","woodcraft","woodcut","woodcutter","woodcutting","wooden","woodenness","woodgrain","woodhen","woodhull","woodie","woodiness","woodland","woodlawn","woodlice","woodlot","woodlouse","woodman","woodmen","woodpecker","woodpile","woodrow","woodruff","woods","woodshed","woodshedded","woodshedding","woodside","woodsman","woodsmen","woodsmoke","woodstock","woodsy","woodward","woodwind","woodwork","woodworker","woodworking","woodworm","woody","woodyard","woof","woofer","wool","woolf","woolgather","woolgatherer","woolgathering","woolliness","woolly","woolongong","woolworth","woonsocket","wooster","wooten","woozily","wooziness","woozy","wop","worcester","worcestershire","word","wordage","wordbook","wordcount","worden","wordily","wordiness","wording","wordless","wordlist","wordplay","wordpress","words","wordsworth","wordy","wore","work","workability","workable","workableness","workably","workaday","workaholic","workaround","workarounds","workbench","workbook","workbooks","workday","workdir","worked","worker","workers","workfare","workflow","workflows","workforce","workhorse","workhouse","working","workingman","workingmen","workingwoman","workingwomen","workitem","worklight","workload","workman","workmanlike","workmanship","workmate","workmen","workout","workpiece","workplace","workroom","works","worksheet","worksheetfunction","worksheets","workshop","workspace","workspaces","workstation","worktable","worktop","workup","workweek","world","worldlier","worldliest","worldliness","worldly","worlds","worldwide","worm","wormer","wormhole","worms","wormwood","wormy","worn","worried","worrier","worries","worriment","worrisome","worry","worrying","worrywart","worse","worsen","worship","worshiper","worshipful","worshipfulness","worst","worsted","wort","worth","worthily","worthiness","worthinesses","worthington","worthless","worthlessness","worths","worthwhile","worthy","wost","wot","wotan","would","wouldn","wouldst","wound","wounded","wounder","wounding","wounds","wove","woven","wovens","wow","wozniak","wp","wparam","wpdb","wpf","wpfapplication","wpm","wr","wrack","wraith","wraiths","wrangell","wrangle","wrangler","wrap","wraparound","wrapped","wrapper","wrappers","wrapping","wraps","wrasse","wrath","wrathful","wraths","wreak","wreath","wreathe","wreaths","wreck","wreckage","wrecker","wren","wrench","wrenching","wrennie","wrest","wrester","wrestle","wrestler","wrestling","wretch","wretched","wretchedness","wriggle","wriggler","wriggly","wright","wrigley","wring","wringer","wrinkle","wrinkled","wrinkly","wrist","wristband","wristwatch","writ","writable","write","writebytes","writefile","writehead","writeline","writeln","writeobject","writer","writerow","writers","writes","writestring","writeto","writetofile","writeup","writhe","writing","written","wroclaw","wrong","wrongdoer","wrongdoing","wronger","wrongful","wrongfulness","wrongheaded","wrongheadedness","wrongly","wrongness","wronskian","wrote","wroth","wrought","wrt","wrung","wry","wryer","wryest","wryness","ws","wscript","wsdl","wsfilter","wsgi","wshttpbinding","wso","wsp","wss","wsse","wstring","wsw","wt","wtf","wu","wuhan","wurlitzer","wurst","wuss","wussy","wv","ww","wwdc","wwi","wwii","www","wwwroot","wx","wxpython","wxwidgets","wy","wyatan","wyatt","wycherley","wycliffe","wye","wyeth","wylie","wylma","wyman","wyn","wyndham","wynn","wynne","wynnie","wynny","wyo","wyoming","wyomingite","wysiwyg","x","xa","xamarin","xaml","xampp","xanadu","xanthippe","xanthus","xargs","xavier","xaviera","xaxis","xb","xbox","xc","xcode","xcopy","xd","xdata","xdebug","xdoc","xdocument","xe","xebec","xelement","xemacs","xena","xenakis","xenia","xenix","xenon","xenophobe","xenophobia","xenophobic","xenophon","xenos","xerces","xerographic","xerography","xerox","xerxes","xever","xf","xfbml","xff","xffff","xffffff","xffffffff","xhdpi","xhosa","xhr","xhtml","xhttp","xi","xian","xiaoping","xib","xii","xiii","ximenes","ximenez","ximian","xingu","xis","xiv","xix","xkcd","xl","xlab","xlabel","xlapp","xlarge","xldown","xlim","xlink","xls","xlsm","xlsx","xlup","xm","xmas","xmax","xmin","xml","xmlattribute","xmldata","xmldoc","xmldocument","xmlelement","xmlfile","xmlhttp","xmlhttprequest","xmlnode","xmlns","xmlparser","xmlreader","xmlrootelement","xmlrpc","xmlschema","xmlserializer","xmlsoap","xmlstring","xmltype","xmlwriter","xmm","xmpp","xms","xmx","xn","xna","xochipilli","xor","xp","xpath","xpos","xquery","xr","xrange","xref","xs","xscale","xsd","xsi","xsl","xslt","xsp","xss","xstream","xt","xterm","xticks","xts","xtype","xunit","xuzhou","xv","xvi","xvii","xviii","xwork","xx","xxl","xxx","xxxx","xxxxx","xxxxxx","xxxxxxx","xxxxxxxx","xxxxxxxxx","xxxxxxxxxx","xy","xylem","xylene","xylia","xylina","xylophone","xylophonist","xymenes","xyz","xz","y","ya","yacc","yacht","yachting","yachtsman","yachtsmen","yachtswoman","yachtswomen","yack","yagi","yahoo","yahweh","yak","yakima","yakked","yakking","yakut","yakutsk","yale","yalies","yalonda","yalow","yalta","yalu","yam","yamaha","yaml","yammer","yamoussoukro","yanaton","yance","yancey","yancy","yang","yangon","yangtze","yank","yankee","yaounde","yap","yapped","yapping","yaqui","yard","yardage","yardarm","yardley","yardman","yardmaster","yardmen","yardstick","yarmulke","yarn","yaroslavl","yarrow","yasmeen","yasmin","yates","yaw","yawl","yawn","yawner","yawning","yaxis","yay","yb","yc","ycombinator","yd","ydata","ye","yea","yeager","yeah","yeahs","year","yearbook","yearling","yearlong","yearly","yearn","yearner","yearning","years","yeast","yeastiness","yeasty","yeats","yecch","yegg","yehudi","yehudit","yekaterinburg","yelena","yell","yellow","yellowhammers","yellowish","yellowknife","yellowness","yellowstone","yellowy","yelp","yelper","yeltsin","yemen","yemeni","yemenite","yen","yenisei","yenned","yenning","yentl","yeoman","yeomanry","yeomen","yep","yerevan","yerkes","yes","yesenia","yeshiva","yessed","yessing","yesterday","yesteryear","yet","yeti","yetta","yettie","yetty","yevette","yevtushenko","yew","yggdrasil","yi","yiddish","yield","yielded","yielding","yields","yii","yiiframework","yikes","yin","yip","yipe","yipped","yippee","yipping","ylab","ylabel","ylim","ym","ymax","ymca","ymha","ymin","ymir","yml","ymmv","yn","ynes","ynez","yo","yoda","yodel","yodeler","yoder","yoga","yoghurt","yogi","yogurt","yoke","yoked","yokel","yokes","yoking","yoknapatawpha","yoko","yokohama","yolanda","yolande","yolane","yolanthe","yolk","yon","yonder","yong","yonkers","yore","yorgo","yorick","york","yorke","yorker","yorkshire","yorktown","yoruba","yosemite","yoshi","yoshiko","yost","you","young","younger","youngish","youngster","youngstown","your","yourapp","yourclass","yourdomain","yours","yourself","yourselves","yourtable","youth","youthful","youthfulness","youths","youtrack","youtu","yovonnda","yow","yowl","yp","ypos","ypres","ypsilanti","yr","yrs","ys","ysabel","yscale","yt","ytterbium","yttrium","yuan","yuba","yucatan","yucca","yuck","yucky","yugo","yugoslav","yugoslavia","yugoslavian","yuh","yui","yuk","yuki","yukked","yukking","yukon","yul","yule","yuletide","yulma","yum","yuma","yummy","yunnan","yup","yuppie","yuri","yurik","yurt","yuv","yves","yvette","yvon","yvonne","yvor","yw","ywca","ywha","yy","yyy","yyyy","yyyymmdd","z","za","zabrina","zaccaria","zach","zacharia","zachariah","zacharie","zachary","zacherie","zachery","zack","zackariah","zag","zagging","zagreb","zahara","zaire","zairian","zak","zambezi","zambia","zambian","zamboni","zamenhof","zamora","zan","zandra","zane","zaneta","zaniness","zanuck","zany","zanzibar","zap","zapata","zaporozhye","zappa","zapped","zapper","zapping","zara","zarah","zared","zaria","zarla","zc","ze","zea","zeal","zealand","zealot","zealotry","zealous","zealousness","zeb","zebadiah","zebedee","zebra","zebu","zebulen","zebulon","zechariah","zed","zedekiah","zedong","zeffirelli","zeiss","zeitgeist","zeke","zelda","zelig","zellerbach","zelma","zen","zena","zend","zendframework","zenger","zenia","zenith","zeniths","zennist","zeno","zephaniah","zephyr","zephyrus","zeppelin","zerk","zero","zeroed","zeroes","zeroing","zeromq","zeros","zest","zestful","zestfulness","zesty","zeta","zeugma","zeus","zf","zh","zhdanov","zhengzhou","zhivago","zhukov","zi","zia","zibo","ziegfeld","ziegler","zig","zigged","zigging","ziggy","zigzag","zigzagged","zigzagger","zigzagging","zilch","zillion","zilvia","zimbabwe","zimbabwean","zimmerman","zinc","zincked","zincking","zindex","zing","zingy","zinnia","zion","zionism","zionist","zip","zipcode","zipfile","zipped","zipper","zipping","zippy","zips","zircon","zirconium","zit","zita","zitella","zither","zk","zlib","zloty","zm","zmq","zn","zodiac","zodiacal","zoe","zola","zollie","zolly","zomba","zombi","zombie","zonal","zonda","zondra","zone","zoned","zoneddatetime","zoneid","zones","zoning","zonked","zonnya","zoo","zookeeper","zookeepers","zoological","zoologist","zoology","zoom","zoomed","zooming","zoophyte","zoophytic","zora","zorah","zorana","zorina","zorine","zorn","zoroaster","zoroastrian","zoroastrianism","zorro","zosma","zounds","zr","zrich","zs","zsazsa","zsh","zsigmondy","zu","zubenelgenubi","zubeneschamali","zucchini","zukor","zulema","zulu","zululand","zuni","zuzana","zwieback","zwingli","zworykin","zx","zxing","zydeco","zygote","zygoteinit","zygotic","zymurgy","zz","zzz"]}')},77596:e=>{"use strict";e.exports=JSON.parse('{"dictionariesSupplementaryArr":["a256","a2dpsource","aafwk","abilityname","abilityslice","abnormally","accelerates","accents","accommodates","acmmax","acn","activates","actived","adcp","adjusts","adpu","adts","advertisements","affinities","agrees","alerting","algrithom","aligns","alpha","alpnprotocols","alterase","alternating","altitudes","amb","ambisonic","ambisonics","amr","animatable","annually","antialias","apdu","apecified","apertures","appselect","arcs","arfcn","arkui","arrarybuffer","arraybuffer","arrlist","ashmem","associating","asy","asyn","asynchronized","atime","atio","atomicservice","atqa","attaches","attachment0","attribs","audios","authenticates","authinfo","autocorrect","averr","avoidareachange","avrcp","avsession","backgrounding","backs","base64","bassboost","beta1","bevels","bgra","bidirectionally","bitrates","blending","blendmode","blocklist","bms","bolder","bonded","bonding","booted","brightens","brighter","brightest","browsable","bscribes","bsic","bssid","bufferfi","bufferfv","bufferiv","bufferqueue","bufferuiv","bundlename","bundlestat","buttonconfig","bypassed","bytrace","callbackfn","camped","canceling","cancelling","cancels","capabilitys","capturers","ccm","cdma","ce","certsign","cft","channeldown","channelup","checkboxgroup","chload","chromaticities","chrominance","circled","clamped","clamps","cloudfile","coincides","collaborated","collapses","collations","collectable","colno","colorfilter","complies","compositing","compresses","cone","conferencing","confpersist","connectable","contentful","contex","controlpanel","controlparam","convertxml","cpid","cpuprofiler","cpx","cpy","creatable","crl","crops","crosshair","crowdtest","crowdtested","crowdtesting","csh","cug","cyclewindows","daltonization","darkens","darkest","dataability","datareceive","dataresubmissionhandler","datashare","datasync","dbm","dci","ddmp","de","deactivated","deactivation","decodes","decomposed","decompressed","decompressing","decr","decrypts","defaulted","delegator","deletable","deletefile","denormalization","denormalize","denormalized","densitys","deregistered","deregisters","deselected","designative","desynchronized","detents","developtools","devicemanager","dfactor","dfx","dialling","dimbehind","dirent","dirxml","disables","disallowed","disallows","discharging","disconnecting","disconnection","disconnects","discription","dismissal","dismissing","dispatches","displacement","dlp","dnd","dnses","donot","downlink","downmix","dpad","drains","dragbar","drawbuffer","drm","dsda","dsds","dsf","dtmf","ducked","ducking","earfcn","earphones","earpiece","ebu","ece","edr","efuse","egid","ehrpd","ejectclosecd","emption","emphasized","encapsulates","encloses","encompassed","encrypts","endc","endx","endy","enrolled","enrolls","enumeratable","erasing","eration","errcode","erver","esim","ethiopic","ets","euid","evdo","evenodd","evicted","excepted","exempted","extention","f1","faultlog","faultlogger","fchmod","fchown","fdatasync","fdn","fdopen","fileio","fileshare","fillets","flac","flg","flushes","foldable","foregrounding","formatable","forwardmail","freesize","fstat","fsync","ftruncate","fulfills","fuma","furse","gamepad","gba","geofence","getunfilteredlinkurl","glasses","gnss","graphicseditor","greate","gtc","hailing","handheld","handhold","handsfree","handsfreeunit","hanguel","hangups","hanja","hankaku","hapmodule","haps","haptic","haptics","hce","hdcp","headed","headersreceive","headphones","heapsnapshot","heating","heavier","henkan","hevc","hexadecagonal","hfp","hibernates","hibernating","hichecker","hidebug","hierarchically","hifi","hilog","hisysevent","hitrace","hiview","hiviewdfx","hkdf","hlg","hogp","hsp","hspa","hspap","htmltext","huks","hwid","icq","id","idm","ifaces","illuminated","ima","imager","imagevideo","imclient","imengine","immersive","imms","ims","imsi","inactived","inactivity","inclusiza","inconsistency","indata","indcating","ineffective","injects","ino","inputer","inputers","inputevent","inputmethod","inputmethodengine","inquired","inspected","inspectors","instanced","intercepted","interchanged","interleaved","internalformat","internationalized","interpolating","interpolatingSpring","interpolator","interworking","invalidates","ipaddr","isdn","isim","issuers","ivi","iwlan","jis","judged","kaihong","kbdillum","kbdinputassist","kbps","kdf","keyof","keyframe","keyguard","keyusage","khronos","kneading","kvpairs","kvstore","lable","lanes","lasted","lastmode","latn","layoutable","lbitfield","lboolean","lbyte","lchown","lclampf","ldpi","lenum","lfloat","libraryname","lifted","lifts","linearly","lintptr","listened","llbackfn","lockdown","lockscreen","lod","loggable","logoff","longitudinally","lowercased","lightens","lightupEffect","lpx","lru","lseek","lshort","lsizei","lsizeiptr","lstat","lubyte","luint","luma","lushort","lux","mah","malham","map","mcc","md5","mdns","mdnserror","mediaquery","meid","messageerror","metered","metering","mgf","mgf1","mifare","minibar","minimizing","mirrored","missions","mkdtemp","mmax","mmi","mmicode","mnc","moderately","moitor","mplink","mschap","msdos","msdp","mserr","msn","mtp","muhenkan","multifrequency","multimodal","multiplies","multisample","multisim","multitask","mutes","narrowband","nci","ndef","neglects","negotiated","neighborhoods","netmask","nets","nextgroup","nlink","nmea","nnrt","nopadding","mori","normalizer","notifies","notifying","numpad","nvalidates","nweb","oaep","obscured","ofb","offhook","offscreen","omapi","oncancel","ondataresubmission","ondataresubmitted","onexit","onfinish","onframe","onmessageerror","onrepeat","oob","oobinline","openharmony","oper","operated","operatorconfigs","opkey","opl","opname","option","originating","osd","ott","ounted","overheated","overline","owningproperties","ows","oximeter","p2p","paginated","paramcheck","parameterf","parameteri","paren","parseinfo","participating","passpoint","pastedata","patchlevel","pbap","pbo","pda","pdu","peap","persion","persistable","perso","personalisation","pertaining","pgo","photographing","pickers","pixelmap","playpause","playstate","plmn","plurals","plusminus","pmm","pnn","pobox","polylines","pooled","ppid","pread","precisiontype","precomposed","precon","preconnect","preconnected","preconnectable","preempted","preferentially","preinstalled","prelaunch","preloads","premises","premultiplied","premultiply","prepares","preresolve","presently","presistent","prevgroup","prikey","primaries","proactively","prohibits","promisify","provisioned","proxyed","psc","psk","psrc","pss","pssh","puk","pvr","querier","queriers","radiuses","rasterizer","rawfile","rdb","rdev","reassociate","rebounds","recalculated","reconfiguration","reconfirm","recovered","recovering","recovers","recursions","reclaimed","redirections","refill","refusing","rejects","relocation","remidner","remotedevice","removable","renderbuffer","renderbuffertarget","repayment","repeates","reposition","resizeable","resmgr","resourceschedule","restores","restricts","resubmission","resubmitted","resultsets","resumed","retried","revocation","revoked","rewinding","rfcomm","rfid","rfkill","ringtone","ringtones","rle","rmdir","rotatable","rscp","rsrp","rtd","rtt","rtcp","ruim","rwt","s5","sac","sae","sak","satellites","sbc","scdma","scene","sco","scrambling","screenlock","screenoff","screensaver","scrolldown","scrollup","sdpi","searchsetter","sece","secinfo","seeked","semicircles","sensing","sequenceable","settingsdata","sfactor","sha1","shadertype","sharedarraybuffer","shenzhen","shortkey","shuts","sigalgs","silenced","singly","slidable","sliderstyle","statvfs","stk","str","strokes","sm3","smil","smpte","smsc","snoozing","snorm","snr","socid","softer","sonification","sortings","spatialization","spawns","spay","spdy","speakerphone","specificed","speedratings","spellcheck","spn","spooler","spp","spry","spy","srgb","ssp","stablization","statfs","stopcd","storei","storge","stroked","subassembies","subassemblies","subcomponents","subframe","subframes","subkeys","subnode","subpixel","subscrbers","subscribale","subscribes","substate","subtitles","subtypes","subwindow","subwindows","superimposed","suscriber","suscribes","suspends","switchvideomode","synched","synchronizes","synchronizing","synth","syscreen","sysevent","sysex","sysrq","systemapp","systembar","systemsize","systemui","showcounter","tailoring","talkback","taskmanager","taskpool","tbla","tcpnodelay","tdm","tdscdma","telecom","tethering","texel","textarget","textblob","textclock","texttimer","thirdparty","timeinterfaceimpl","tlsv12","tlsv13","tnf","totalsize","touchpad","trackinfo","tranlisterated","transcode","transferable","transfunc","transliterated","transliterator","transpilation","trashed","traversed","traverses","truncates","trustlist","tsbundle","ttls","tunneled","txpower","uarfcn","ubset","ucs","udid","uint8","uint8arr","uitest","umalqura","unapply","unassigned","unauth","unbinding","unblocking","uncalibrated","uncategorized","uncatergorized","unclearable","unconditional","undefer","undisturbed","unduck","unducked","unequal","unfiltered","unfocused","unhealthy","unhold","unicom","unicon","uniform1ui","uniforms","uninit","uninitialize","uninitializes","uninstallation","uninstalls","unlinked","unlocking","unlocks","unmap","unmapping","unmarshalling","unmountable","unmounted","unmute","unmutes","unobserve","unperceivable","unpressed","unregistered","unregistering","unregisters","unremovable","unrendered","unrestricted","unsecure","unsent","unspec","unshare","unsubscribes","unsuccessfully","unsupport","unsuspended","uplink","useriam","userspace","usim","ussd","utilized","utimes","uuids","uwb","uids","v9","varyings","viewframe","vibrates","vibrating","vlr","voicemail","volte","volumemanager","vorbis","vpr","vss","vsync","wakes","waking","wallpapers","wantagent","wapi","wappush","watchers","waterflow","wcdma","wcdmn","weakmap","weakset","wearables","weighing","wep","wideband","wifiext","wimax","wireframe","wma","wmp","wmv","wmx","wordprocessor","workscheduler","woy","wrappedvalue","writemask","wukong","wvx","wwan","x25519","x509","xcomponent","xfer","xldpi","xoffset","xxldpi","xxxldpi","ycbcr","ycrcb","yoffset","zenkaku","zfail","zoffset","zoomin","zoomout","zoomreset","zooms","zpass","commonevent","clouddata","unadjustable","unprepare","unchained","sandboxes","sar","adapts","followx"]}')},93460:e=>{"use strict";e.exports=JSON.parse('[{"badWord":"option","suggestion":"options","ignore":["options","optionMode","_OPTION_"]}]')},289:e=>{"use strict";e.exports=JSON.parse('[{"word":"ability","files":[".*d.ts$"]}]')},85311:e=>{"use strict";e.exports=JSON.parse('{"app":{"bundleName":"ohos.global.systemres","icon":"$media:ohos_app_icon","label":"$string:ohos_app_name","singleton":true,"vendor":"ohos","version":{"code":2,"name":"2.0.0.1"},"apiVersion":{"compatible":3,"target":3}},"deviceConfig":{"default":{}},"module":{"package":"ohos.global.systemres","generateBuildHash":true,"deviceType":["default","tv","car","wearable","tablet","2in1"],"distro":{"deliveryWithInstall":true,"moduleName":"entry","moduleType":"entry"},"definePermissions":[{"name":"ohos.permission.ANSWER_CALL","grantMode":"user_grant","since":9,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_answer_call","description":"$string:ohos_desc_answer_call"},{"name":"ohos.permission.USE_BLUETOOTH","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DISCOVER_BLUETOOTH","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_BLUETOOTH","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_BLUETOOTH","grantMode":"user_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false,"label":"$string:ohos_lab_access_bluetooth","description":"$string:ohos_desc_access_bluetooth"},{"name":"ohos.permission.GET_BLUETOOTH_LOCAL_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERNET","grantMode":"system_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_internet","description":"$string:ohos_desc_internet"},{"name":"ohos.permission.MODIFY_AUDIO_SETTINGS","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_modify_audio_settings","description":"$string:ohos_desc_modify_audio_settings"},{"name":"ohos.permission.ACCESS_NOTIFICATION_POLICY","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.READ_CALENDAR","grantMode":"user_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_calendar","description":"$string:ohos_desc_read_calendar"},{"name":"ohos.permission.READ_CALL_LOG","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_call_log","description":"$string:ohos_desc_read_call_log"},{"name":"ohos.permission.READ_CELL_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_cell_messages","description":"$string:ohos_desc_read_cell_messages"},{"name":"ohos.permission.READ_CONTACTS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_contacts","description":"$string:ohos_desc_read_contacts"},{"name":"ohos.permission.GET_TELEPHONY_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_telephony_state","description":"$string:ohos_desc_get_telephony_state"},{"name":"ohos.permission.GET_PHONE_NUMBERS","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_phone_numbers","description":"$string:ohos_desc_get_phone_numbers"},{"name":"ohos.permission.READ_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_messages","description":"$string:ohos_desc_read_messages"},{"name":"ohos.permission.RECEIVE_MMS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_receive_mms","description":"$string:ohos_desc_receive_mms"},{"name":"ohos.permission.RECEIVE_SMS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_receive_sms","description":"$string:ohos_desc_receive_sms"},{"name":"ohos.permission.RECEIVE_WAP_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_receive_wap_messages","description":"$string:ohos_desc_receive_wap_messages"},{"name":"ohos.permission.MICROPHONE","grantMode":"user_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_microphone","description":"$string:ohos_desc_microphone"},{"name":"ohos.permission.SEND_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_send_messages","description":"$string:ohos_desc_send_messages"},{"name":"ohos.permission.WRITE_CALENDAR","grantMode":"user_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_calendar","description":"$string:ohos_desc_write_calendar"},{"name":"ohos.permission.WRITE_CALL_LOG","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_call_log","description":"$string:ohos_desc_write_call_log"},{"name":"ohos.permission.WRITE_CONTACTS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_contacts","description":"$string:ohos_desc_write_contacts"},{"name":"ohos.permission.DISTRIBUTED_DATASYNC","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_distributed_datasync","description":"$string:ohos_desc_distributed_datasync"},{"name":"ohos.permission.DISTRIBUTED_SOFTBUS_CENTER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":true},{"name":"ohos.permission.MANAGE_VOICEMAIL","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_manage_voicemail","description":"$string:ohos_desc_manage_voicemail"},{"name":"ohos.permission.REQUIRE_FORM","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.AGENT_REQUIRE_FORM","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.LOCATION_IN_BACKGROUND","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false,"label":"$string:ohos_lab_location_in_background","description":"$string:ohos_desc_location_in_background"},{"name":"ohos.permission.LOCATION","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_location","description":"$string:ohos_desc_location"},{"name":"ohos.permission.APPROXIMATELY_LOCATION","grantMode":"user_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":true,"label":"$string:ohos_lab_approximately_location","description":"$string:ohos_desc_approximately_location"},{"name":"ohos.permission.MEDIA_LOCATION","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_media_location","description":"$string:ohos_desc_media_location"},{"name":"ohos.permission.GET_NETWORK_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_network_info","description":"$string:ohos_desc_get_network_info"},{"name":"ohos.permission.PLACE_CALL","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_place_call","description":"$string:ohos_desc_place_call"},{"name":"ohos.permission.CAMERA","grantMode":"user_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_camera","description":"$string:ohos_desc_camera"},{"name":"ohos.permission.SET_NETWORK_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_network_info","description":"$string:ohos_desc_set_network_info"},{"name":"ohos.permission.REMOVE_CACHE_FILES","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_MEDIA","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_read_media","description":"$string:ohos_desc_read_media"},{"name":"ohos.permission.REBOOT","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUNNING_LOCK","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_MEDIA","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_write_media","description":"$string:ohos_desc_write_media"},{"name":"ohos.permission.SET_TIME","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_time","description":"$string:ohos_desc_set_time"},{"name":"ohos.permission.SET_TIME_ZONE","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_time_zone","description":"$string:ohos_desc_set_time_zone"},{"name":"ohos.permission.DOWNLOAD_SESSION_MANAGER","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_download_session_manager","description":"$string:ohos_desc_download_session_manager"},{"name":"ohos.permission.COMMONEVENT_STICKY","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_commonevent_sticky","description":"$string:ohos_desc_commonevent_sticky"},{"name":"ohos.permission.SYSTEM_FLOAT_WINDOW","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PRIVACY_WINDOW","grantMode":"system_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.POWER_MANAGER","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REFRESH_USER_ACTION","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.POWER_OPTIMIZATION","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REBOOT_RECOVERY","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_LOCAL_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_manage_local_accounts","description":"$string:ohos_desc_manage_local_accounts"},{"name":"ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_interact_across_local_accounts","description":"$string:ohos_desc_interact_across_local_accounts"},{"name":"ohos.permission.VIBRATE","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_vibrate","description":"$string:ohos_desc_vibrate"},{"name":"ohos.permission.SYSTEM_LIGHT_CONTROL","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACTIVITY_MOTION","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_activity_motion","description":"$string:ohos_desc_activity_motion"},{"name":"ohos.permission.READ_HEALTH_DATA","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_health_data","description":"$string:ohos_desc_read_health_data"},{"name":"ohos.permission.CONNECT_IME_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_connect_ime_ability","description":"$string:ohos_desc_connect_ime_ability"},{"name":"ohos.permission.CONNECT_SCREEN_SAVER_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_SCREEN_SAVER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_SCREEN_SAVER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_WALLPAPER","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_wallpaper","description":"$string:ohos_desc_set_wallpaper"},{"name":"ohos.permission.GET_WALLPAPER","grantMode":"system_grant","availableLevel":"system_basic","provisionEnable":true,"since":7,"deprecated":"","distributedSceneEnable":false,"label":"$string:ohos_lab_get_wallpaper","description":"$string:ohos_desc_get_wallpaper"},{"name":"ohos.permission.CHANGE_ABILITY_ENABLED_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_MISSIONS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"since 9","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLEAN_BACKGROUND_PROCESSES","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.KEEP_BACKGROUND_RUNNING","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPDATE_CONFIGURATION","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPDATE_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.FACTORY_RESET","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPDATE_MIGRATE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GRANT_SENSITIVE_PERMISSIONS","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REVOKE_SENSITIVE_PERMISSIONS","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SENSITIVE_PERMISSIONS","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS_EXTENSION","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_interact_across_local_accounts_extension","description":"$string:ohos_desc_interact_across_local_accounts_extension"},{"name":"ohos.permission.LISTEN_BUNDLE_CHANGE","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_BUNDLE_INFO","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCELEROMETER","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_accelerometer","description":"$string:ohos_desc_accelerometer"},{"name":"ohos.permission.GYROSCOPE","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_gyroscope","description":"$string:ohos_desc_gyroscope"},{"name":"ohos.permission.GET_BUNDLE_INFO_PRIVILEGED","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SHORTCUTS","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.radio.ACCESS_FM_AM","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_TELEPHONY_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_telephony_state","description":"$string:ohos_desc_set_telephony_state"},{"name":"ohos.permission.START_ABILIIES_FROM_BACKGROUND","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"since 9","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_ABILITIES_FROM_BACKGROUND","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.BUNDLE_ACTIVE_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_bundle_active_info","description":"$string:ohos_desc_bundle_active_info"},{"name":"ohos.permission.START_INVISIBLE_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.sec.ACCESS_UDID","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.LAUNCH_DATA_PRIVACY_CENTER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_MEDIA_RESOURCES","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PUBLISH_AGENT_REMINDER","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_publish_agent_reminder","description":"$string:ohos_desc_publish_agent_reminder"},{"name":"ohos.permission.CONTROL_TASK_SYNC_ANIMATOR","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_control_task_sync_animator","description":"$string:ohos_desc_control_task_sync_animator"},{"name":"ohos.permission.INPUT_MONITORING","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_MISSIONS","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NOTIFICATION_CONTROLLER","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_notification_controller","description":"$string:ohos_desc_notification_controller"},{"name":"ohos.permission.CONNECTIVITY_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_NET_STRATEGY","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_NETWORK_STATS","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_VPN","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.SET_ABILITY_CONTROLLER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_USER_IDM","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_USER_IDM","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NETSYS_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_BIOMETRIC","grantMode":"system_grant","availableLevel":"normal","since":6,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_USER_AUTH_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_FINGERPRINT_AUTH","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PIN_AUTH","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_AUTH_RESPOOL","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ENFORCE_USER_IDM","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.GET_RUNNING_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLEAN_APPLICATION_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUNNING_STATE_OBSERVER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CAPTURE_SCREEN","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_INFO_INTERNAL","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_WIFI_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_PEERS_MAC","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_LOCAL_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_WIFI_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_WIFI_CONNECTION","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DUMP","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_WIFI_HOTSPOT","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_ALL_APP_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SECURE_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_DFX_SYSEVENT","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_HIVIEW_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_HIVIEW_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_ENTERPRISE_INFO","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_BUNDLE_DIR","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_DATETIME","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_GET_DEVICE_INFO","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_RESET_DEVICE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_WIFI","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_GET_NETWORK_INFO","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_ACCOUNT_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_BUNDLE_INSTALL_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_NETWORK","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SET_APP_RUNNING_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_SCREENOFF_TIME","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SECURITY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_BLUETOOTH","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_WIFI","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_RESTRICTIONS","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_APPLICATION","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_LOCATION","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_REBOOT","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_LOCK_DEVICE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_GET_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_INSTALL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_CERTIFICATE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_RESTRICT_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_USB","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_NETWORK","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_BROWSER_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NFC_TAG","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.NFC_CARD_EMULATION","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.PERMISSION_USED_STATS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NOTIFICATION_AGENT_CONTROLLER","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MOUNT_UNMOUNT_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MOUNT_FORMAT_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.STORAGE_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.BACKUP","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLOUDFILE_SYNC_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLOUDFILE_SYNC","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.FILE_ACCESS_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_DEFAULT_APPLICATION","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_DEFAULT_APPLICATION","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_IDS","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_DISPOSED_APP_STATUS","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DLP_FILE","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PROVISIONING_MESSAGE","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SYSTEM_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_IMAGEVIDEO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_imagevideo","description":"$string:ohos_desc_read_imagevideo"},{"name":"ohos.permission.READ_AUDIO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_audio","description":"$string:ohos_desc_read_audio"},{"name":"ohos.permission.READ_DOCUMENT","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_document","description":"$string:ohos_desc_read_document"},{"name":"ohos.permission.WRITE_IMAGEVIDEO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_imagevideo","description":"$string:ohos_desc_write_imagevideo"},{"name":"ohos.permission.WRITE_AUDIO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_audio","description":"$string:ohos_desc_write_audio"},{"name":"ohos.permission.WRITE_DOCUMENT","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_document","description":"$string:ohos_desc_write_document"},{"name":"ohos.permission.ABILITY_BACKGROUND_COMMUNICATION","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.securityguard.REPORT_SECURITY_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.securityguard.REQUEST_SECURITY_MODEL_RESULT","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.securityguard.REQUEST_SECURITY_EVENT_INFO","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.ACCESS_CERT_MANAGER_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_CERT_MANAGER","grantMode":"system_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.GET_LOCAL_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_DISTRIBUTED_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_DISTRIBUTED_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_ACCESSIBILITY_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_ACCESSIBILITY_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PUSH_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_APP_PUSH_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_APP_PUSH_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_AUDIO_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_CAMERA_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECEIVER_STARTUP_COMPLETED","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_WHOLE_CALENDAR","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_whole_calendar","description":"$string:ohos_desc_read_whole_calendar"},{"name":"ohos.permission.WRITE_WHOLE_CALENDAR","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_whole_calendar","description":"$string:ohos_desc_write_whole_calendar"},{"name":"ohos.permission.ACCESS_SERVICE_DM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUN_ANY_CODE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.APP_TRACKING_CONSENT","grantMode":"user_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_app_tracking_consent","description":"$string:ohos_desc_app_tracking_consent"},{"name":"ohos.permission.PUBLISH_SYSTEM_COMMON_EVENT","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SCREEN_LOCK_INNER","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PRINT","grantMode":"system_grant","since":10,"deprecated":"","availableLevel":"normal","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_PRINT_JOB","grantMode":"system_grant","since":10,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CHANGE_OVERLAY_ENABLED_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CONNECT_CELLULAR_CALL_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.CONNECT_IMS_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SENSING_WITH_ULTRASOUND","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PROXY_AUTHORIZATION_URI","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_ENTERPRISE_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_INSTALLED_BUNDLE_LIST","grantMode":"user_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_installed_bundle_list","description":"$string:ohos_desc_get_installed_bundle_list"},{"name":"ohos.permission.ACCESS_CAST_ENGINE_MIRROR","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_CAST_ENGINE_STREAM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLOUDDATA_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DEVICE_STANDBY_EXEMPTION","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RESTRICT_APPLICATION_ACTIVE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SENSOR","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPLOAD_SESSION_MANAGER","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PREPARE_APP_TERMINATE","grantMode":"system_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_ECOLOGICAL_RULE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SCENE_CODE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.FILE_GUARD_MANAGER","grantMode":"system_grant","availableLevel":"system_core","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_FILE_GUARD_POLICY","grantMode":"system_grant","availableLevel":"system_core","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.securityguard.SET_MODEL_STATE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.hsdr.HSDR_ACCESS","grantMode":"system_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.SUPPORT_USER_AUTH","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CAPTURE_VOICE_DOWNLINK_AUDIO","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_INTELLIGENT_VOICE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_SELF_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.OBSERVE_FORM_RUNNING","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_DEVICE_AUTH_CRED","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.UNINSTALL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECOVER_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_DOMAIN_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_UNREMOVABLE_NOTIFICATION","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.QUERY_ACCESSIBILITY_ELEMENT","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACTIVATE_THEME_PACKAGE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ATTEST_KEY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WAKEUP_VOICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WAKEUP_VISION","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENABLE_DISTRIBUTED_HARDWARE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":true},{"name":"ohos.permission.ACCESS_DISTRIBUTED_HARDWARE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.INSTANTSHARE_SWITCH_CONTROL","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_INSTANTSHARE_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_INSTANTSHARE_PRIVATE_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SECURE_PASTE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_PASTEBOARD","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_pasteboard","description":"$string:ohos_desc_read_pasteboard"},{"name":"ohos.permission.ACCESS_MCP_AUTHORIZATION","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_BUNDLE_RESOURCES","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_CODE_PROTECT_INFO","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_ADVANCED_SECURITY_MODE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_DEVELOPER_MODE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUN_DYN_CODE","grantMode":"system_grant","availableLevel":"normal","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.COOPERATE_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PERCEIVE_TRAIL","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DISABLE_PERMISSION_DIALOG","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXECUTE_INSIGHT_INTENT","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_ACTIVATION_LOCK","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.VERIFY_ACTIVATION_LOCK","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_PRIVATE_PHOTOS","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_OUC","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.TRUSTED_RING_HASH_DATA_PERMISSION","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.QUERY_TRUSTED_RING_USER_INFO","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_TRUSTED_RING","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_TRUSTED_RING","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INPUT_CONTROL_DISPATCHING","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERCEPT_INPUT_EVENT","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SECURITY_PRIVACY_CENTER","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SECURITY_PRIVACY_ADVICE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_SECURITY_PRIVACY_ADVICE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_SECURITY_PRIVACY_MESSAGER","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECORD_VOICE_CALL","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_APP_INSTALL_INFO","grantMode":"system_grant","since":11,"availableLevel":"system_core","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECEIVE_APP_INSTALL_INFO_CHANGE","grantMode":"system_grant","since":11,"availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_ADVANCED_SECURITY_MODE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.STORE_PERSISTENT_DATA","grantMode":"system_grant","availableLevel":"normal","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_HIVIEWX","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PASSWORDVAULT_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_LOWPOWER_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_USB","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_USB_SERIAL","grantMode":"system_grant","availableLevel":"system_basic","since":16,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_SCSI_PERIPHERAL","grantMode":"system_grant","availableLevel":"system_basic","since":16,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_EXTENSIONAL_DEVICE_DRIVER","grantMode":"system_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_DRIVERS","grantMode":"system_grant","availableLevel":"system_basic","since":16,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"isKernelEffect":false,"hasValue":true},{"name":"ohos.permission.ACCESS_DDK_HID","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_APP_BOOT","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_HIVIEWCARE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CONNECT_UI_EXTENSION_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_WRITE_DOWNLOAD_DIRECTORY","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_write_download_directory","description":"$string:ohos_desc_read_write_download_directory"},{"name":"ohos.permission.READ_WRITE_DOCUMENTS_DIRECTORY","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_write_documents_directory","description":"$string:ohos_desc_read_write_documents_directory"},{"name":"ohos.permission.READ_WRITE_DESKTOP_DIRECTORY","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_write_desktop_directory","description":"$string:ohos_desc_read_write_desktop_directory"},{"name":"ohos.permission.FILE_ACCESS_PERSIST","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_SANDBOX_POLICY","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_ACCOUNT_KIT_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REQUEST_ANONYMOUS_ATTEST","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_ACCOUNT_KIT_UI","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_ABILITY_WITH_ANIMATION","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_RECENT_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_CLOUD_SYNC_CONFIG","grantMode":"system_grant","availableLevel":"normal","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_CLOUD_SYNC_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_FINDDEVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_FINDSERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.TRIGGER_ACTIVATIONLOCK","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_USB_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_PRIVACY_PUSH_DATA","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_STATUSBAR_ICON","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_SYSTEM_DIALOG","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SYSTEM_AUDIO_EFFECTS","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false}]}}')},11663:e=>{"use strict";e.exports=JSON.parse('{"SystemCapability":["SystemCapability.Applications.CalendarData","SystemCapability.ArkUI.ArkUI.Full","SystemCapability.ArkUI.ArkUI.Lite","SystemCapability.ArkUI.ArkUI.Napi","SystemCapability.ArkUI.ArkUI.Libuv","SystemCapability.ArkUI.UiAppearance","SystemCapability.BundleManager.BundleFramework","SystemCapability.BundleManager.DistributedBundleFramework","SystemCapability.BundleManager.Zlib","SystemCapability.BundleManager.BundleFramework.Core","SystemCapability.BundleManager.BundleFramework.FreeInstall","SystemCapability.BundleManager.BundleFramework.Resource","SystemCapability.BundleManager.BundleFramework.DefaultApp","SystemCapability.BundleManager.BundleFramework.Launcher","SystemCapability.BundleManager.BundleFramework.SandboxApp","SystemCapability.BundleManager.BundleFramework.QuickFix","SystemCapability.BundleManager.BundleFramework.AppControl","SystemCapability.BundleManager.BundleFramework.Overlay","SystemCapability.Developtools.Syscap","SystemCapability.Graphic.Graphic2D.WebGL","SystemCapability.Graphic.Graphic2D.WebGL2","SystemCapability.Graphic.Graphic2D.ColorManager.Core","SystemCapability.Graphic.Vulkan","SystemCapability.Window.SessionManager","SystemCapability.WindowManager.WindowManager.Core","SystemCapability.Notification.CommonEvent","SystemCapability.Notification.Notification","SystemCapability.Notification.ReminderAgent","SystemCapability.Notification.Emitter","SystemCapability.Communication.IPC.Core","SystemCapability.Communication.SoftBus.Core","SystemCapability.Communication.NetManager.Core","SystemCapability.Communication.NetManager.Extension","SystemCapability.Communication.NetStack","SystemCapability.Communication.WiFi.Core","SystemCapability.Communication.WiFi.STA","SystemCapability.Communication.WiFi.AP.Core","SystemCapability.Communication.WiFi.AP.Extension","SystemCapability.Communication.WiFi.P2P","SystemCapability.Communication.Bluetooth.Core","SystemCapability.Communication.Bluetooth.Lite","SystemCapability.Communication.NFC.Core","SystemCapability.Communication.ConnectedTag","SystemCapability.Communication.NFC.Tag","SystemCapability.Communication.NFC.CardEmulation","SystemCapability.Communication.NetManager.Ethernet","SystemCapability.Communication.NetManager.NetSharing","SystemCapability.Communication.NetManager.MDNS","SystemCapability.Communication.NetManager.Vpn","SystemCapability.Communication.SecureElement","SystemCapability.Location.Location.Core","SystemCapability.Location.Location.Geocoder","SystemCapability.Location.Location.Geofence","SystemCapability.Location.Location.Gnss","SystemCapability.Location.Location.Lite","SystemCapability.Msdp.DeviceStatus.Stationary","SystemCapability.MultimodalInput.Input.Core","SystemCapability.MultimodalInput.Input.InputDevice","SystemCapability.MultimodalInput.Input.RemoteInputDevice","SystemCapability.MultimodalInput.Input.InputMonitor","SystemCapability.MultimodalInput.Input.InputConsumer","SystemCapability.MultimodalInput.Input.InputSimulator","SystemCapability.MultimodalInput.Input.InputFilter","SystemCapability.MultimodalInput.Input.Cooperator","SystemCapability.MultimodalInput.Input.Pointer","SystemCapability.PowerManager.BatteryManager.Extension","SystemCapability.PowerManager.BatteryStatistics","SystemCapability.PowerManager.DisplayPowerManager","SystemCapability.PowerManager.DisplayPowerManager.Lite","SystemCapability.PowerManager.ThermalManager","SystemCapability.PowerManager.PowerManager.Core","SystemCapability.PowerManager.PowerManager.Lite","SystemCapability.PowerManager.BatteryManager.Core","SystemCapability.PowerManager.BatteryManager.Lite","SystemCapability.PowerManager.PowerManager.Extension","SystemCapability.Multimedia.Media.Core","SystemCapability.Multimedia.Media.AudioPlayer","SystemCapability.Multimedia.Media.AudioRecorder","SystemCapability.Multimedia.Media.VideoPlayer","SystemCapability.Multimedia.Media.VideoRecorder","SystemCapability.Multimedia.Media.CodecBase","SystemCapability.Multimedia.Media.AudioDecoder","SystemCapability.Multimedia.Media.AudioEncoder","SystemCapability.Multimedia.Media.VideoDecoder","SystemCapability.Multimedia.Media.VideoEncoder","SystemCapability.Multimedia.Media.Spliter","SystemCapability.Multimedia.Media.Muxer","SystemCapability.Multimedia.Media.AVScreenCapture","SystemCapability.Multimedia.Media.SoundPool","SystemCapability.Multimedia.AVSession.Core","SystemCapability.Multimedia.AVSession.Manager","SystemCapability.Multimedia.AVSession.AVCast","SystemCapability.Multimedia.Audio.Core","SystemCapability.Multimedia.Audio.Tone","SystemCapability.Multimedia.Audio.Interrupt","SystemCapability.Multimedia.Audio.Renderer","SystemCapability.Multimedia.Audio.Capturer","SystemCapability.Multimedia.Audio.Device","SystemCapability.Multimedia.Audio.Volume","SystemCapability.Multimedia.Audio.Communication","SystemCapability.Multimedia.Audio.PlaybackCapture","SystemCapability.Multimedia.Camera.Core","SystemCapability.Multimedia.Camera.DistributedCore","SystemCapability.Multimedia.Image.Core","SystemCapability.Multimedia.Image.ImageSource","SystemCapability.Multimedia.Image.ImagePacker","SystemCapability.Multimedia.Image.ImageReceiver","SystemCapability.Multimedia.MediaLibrary.Core","SystemCapability.Multimedia.MediaLibrary.SmartAlbum","SystemCapability.Multimedia.MediaLibrary.DistributedCore","SystemCapability.Multimedia.Media.AVPlayer","SystemCapability.Multimedia.Media.AVRecorder","SystemCapability.Multimedia.Image.ImageCreator","SystemCapability.Multimedia.SystemSound.Core","SystemCapability.Telephony.CoreService","SystemCapability.Telephony.CallManager","SystemCapability.Telephony.CellularCall","SystemCapability.Telephony.CellularData","SystemCapability.Telephony.SmsMms","SystemCapability.Telephony.StateRegistry","SystemCapability.Global.I18n","SystemCapability.Global.ResourceManager","SystemCapability.Customization.ConfigPolicy","SystemCapability.Customization.EnterpriseDeviceManager","SystemCapability.BarrierFree.Accessibility.Core","SystemCapability.BarrierFree.Accessibility.Vision","SystemCapability.BarrierFree.Accessibility.Hearing","SystemCapability.BarrierFree.Accessibility.Interaction","SystemCapability.ResourceSchedule.WorkScheduler","SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask","SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask","SystemCapability.ResourceSchedule.UsageStatistics.App","SystemCapability.ResourceSchedule.UsageStatistics.AppGroup","SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply","SystemCapability.Utils.Lang","SystemCapability.HiviewDFX.HiLog","SystemCapability.HiviewDFX.HiLogLite","SystemCapability.HiviewDFX.HiTrace","SystemCapability.HiviewDFX.Hiview.FaultLogger","SystemCapability.HiviewDFX.Hiview.LogLibrary","SystemCapability.HiviewDFX.HiviewLite","SystemCapability.HiviewDFX.HiChecker","SystemCapability.HiviewDFX.HiCollie","SystemCapability.HiviewDFX.HiDumper","SystemCapability.HiviewDFX.HiAppEvent","SystemCapability.HiviewDFX.HiSysEvent","SystemCapability.HiviewDFX.HiEventLite","SystemCapability.HiviewDFX.HiProfiler.HiDebug","SystemCapability.Update.UpdateService","SystemCapability.DistributedHardware.DeviceManager","SystemCapability.Security.DeviceAuth","SystemCapability.Security.DataTransitManager","SystemCapability.Security.DeviceSecurityLevel","SystemCapability.Security.Huks.Core","SystemCapability.Security.Huks.Extension","SystemCapability.Security.AccessToken","SystemCapability.Security.Cipher","SystemCapability.Security.CertificateManager","SystemCapability.Security.CryptoFramework","SystemCapability.Security.CryptoFramework.Cert","SystemCapability.Security.DataLossPrevention","SystemCapability.Security.Cert","SystemCapability.Security.SecurityGuard","SystemCapability.Account.OsAccount","SystemCapability.Account.AppAccount","SystemCapability.UserIAM.UserAuth.Core","SystemCapability.UserIAM.UserAuth.PinAuth","SystemCapability.UserIAM.UserAuth.FaceAuth","SystemCapability.MiscServices.InputMethodFramework","SystemCapability.MiscServices.Pasteboard","SystemCapability.MiscServices.Time","SystemCapability.MiscServices.Wallpaper","SystemCapability.MiscServices.ScreenLock","SystemCapability.MiscServices.Upload","SystemCapability.MiscServices.Download","SystemCapability.FileManagement.StorageService.Backup","SystemCapability.FileManagement.StorageService.SpatialStatistics","SystemCapability.FileManagement.StorageService.Volume","SystemCapability.FileManagement.StorageService.Encryption","SystemCapability.FileManagement.File.FileIO","SystemCapability.FileManagement.File.FileIO.Lite","SystemCapability.FileManagement.File.Environment","SystemCapability.FileManagement.File.DistributedFile","SystemCapability.FileManagement.File.Environment.FolderObtain","SystemCapability.FileManagement.AppFileService","SystemCapability.FileManagement.AppFileService.FolderAuthorization","SystemCapability.FileManagement.UserFileService","SystemCapability.FileManagement.UserFileManager","SystemCapability.FileManagement.UserFileManager.DistributedCore","SystemCapability.FileManagement.UserFileManager.Core","SystemCapability.FileManagement.UserFileService.FolderSelection","SystemCapability.USB.USBManager","SystemCapability.Sensors.Sensor","SystemCapability.Sensors.MiscDevice","SystemCapability.Sensors.Sensor.Lite","SystemCapability.Sensors.MiscDevice.Lite","SystemCapability.Startup.SystemInfo","SystemCapability.Startup.SystemInfo.Lite","SystemCapability.DistributedDataManager.RelationalStore.Core","SystemCapability.DistributedDataManager.RelationalStore.Synchronize","SystemCapability.DistributedDataManager.RelationalStore.Lite","SystemCapability.DistributedDataManager.KVStore.Core","SystemCapability.DistributedDataManager.KVStore.Lite","SystemCapability.DistributedDataManager.KVStore.DistributedKVStore","SystemCapability.DistributedDataManager.DataObject.DistributedObject","SystemCapability.DistributedDataManager.Preferences.Core","SystemCapability.DistributedDataManager.DataShare.Core","SystemCapability.DistributedDataManager.DataShare.Consumer","SystemCapability.DistributedDataManager.DataShare.Provider","SystemCapability.DistributedDataManager.UDMF.Core","SystemCapability.DistributedDataManager.CloudSync.Config","SystemCapability.DistributedDataManager.CloudSync.Client","SystemCapability.DistributedDataManager.CloudSync.Server","SystemCapability.Ability.AbilityBase","SystemCapability.Ability.AbilityRuntime.Core","SystemCapability.Ability.AbilityRuntime.FAModel","SystemCapability.Ability.AbilityRuntime.AbilityCore","SystemCapability.Ability.AbilityRuntime.Mission","SystemCapability.Ability.AbilityTools.AbilityAssistant","SystemCapability.Ability.Form","SystemCapability.Ability.DistributedAbilityManager","SystemCapability.Ability.AbilityRuntime.QuickFix","SystemCapability.Applications.ContactsData","SystemCapability.Applications.Contacts","SystemCapability.Applications.Settings.Core","SystemCapability.Test.UiTest","SystemCapability.Web.Webview.Core","SystemCapability.Cloud.AAID","SystemCapability.Advertising.OAID","SystemCapability.Cloud.VAID","SystemCapability.Cloud.Push","SystemCapability.XTS.DeviceAttest","SystemCapability.XTS.DeviceAttest.Lite","SystemCapability.Base","SystemCapability.FileManagement.DistributedFileService.CloudSyncManager","SystemCapability.FileManagement.DistributedFileService.CloudSync.Core","SystemCapability.MultimodalInput.Input.ShortKey","SystemCapability.Msdp.DeviceStatus.Cooperate","SystemCapability.Request.FileTransferAgent","SystemCapability.ResourceSchedule.DeviceStandby","SystemCapability.AI.MindSporeLite","SystemCapability.Print.PrintFramework","SystemCapability.DistributedDataManager.Preferences.Core.Lite","SystemCapability.Driver.ExternalDevice","SystemCapability.FileManagement.PhotoAccessHelper.Core","SystemCapability.AI.IntelligentVoice.Core","SystemCapability.Msdp.DeviceStatus.Drag","SystemCapability.DistributedDataManager.CommonType","SystemCapability.Multimedia.Audio.Spatialization","SystemCapability.Multimedia.AudioHaptic.Core","SystemCapability.ArkUi.Graphics3D","SystemCapability.Multimedia.Drm.Core","SystemCapability.Graphics.Drawing"],"test2":[1,2,3]}')}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.loaded=!0,r.exports}__webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=(e,t)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var __webpack_exports__=__webpack_require__(32875)})(); \ No newline at end of file diff --git a/build-tools/dts_parser/kit.json b/build-tools/dts_parser/kit.json index dfe42871f2eb892da4e60ad2afa359cfe14552f2..4f61dd0c677f02b0acc7ed632ea569d578ad2a45 100644 --- a/build-tools/dts_parser/kit.json +++ b/build-tools/dts_parser/kit.json @@ -251,6 +251,7 @@ }, { "filePath": "@ohos.application.appManager.d.ts", "kitName": "AbilityKit", "subSystem": "元能力" }, { "filePath": "@ohos.application.BackupExtensionAbility.d.ts", "kitName": "CoreFileKit", "subSystem": "文件管理" }, + { "filePath": "@ohos.application.CompletionHandler.d.ts", "kitName": "AbilityKit", "subSystem": "元能力" }, { "filePath": "@ohos.application.Configuration.d.ts", "kitName": "AbilityKit", "subSystem": "元能力" }, { "filePath": "@ohos.application.ConfigurationConstant.d.ts", "kitName": "AbilityKit", "subSystem": "元能力" }, { @@ -376,6 +377,7 @@ { "filePath": "@ohos.data.unifiedDataChannel.d.ts", "kitName": "ArkData", "subSystem": "分布式数据管理" }, { "filePath": "@ohos.data.uniformDataStruct.d.ts", "kitName": "ArkData", "subSystem": "分布式数据管理" }, { "filePath": "@ohos.data.uniformTypeDescriptor.d.ts", "kitName": "ArkData", "subSystem": "分布式数据管理" }, + { "filePath": "@ohos.data.UdmfComponents.d.ets", "kitName": "ArkData", "subSystem": "分布式数据管理" }, { "filePath": "@ohos.data.ValuesBucket.d.ts", "kitName": "ArkData", "subSystem": "分布式数据管理" }, { "filePath": "@ohos.deviceAttest.d.ts", "kitName": "BasicServicesKit", "subSystem": "XTS" }, { "filePath": "@ohos.deviceInfo.d.ts", "kitName": "BasicServicesKit", "subSystem": "启动恢复" }, @@ -797,6 +799,7 @@ { "filePath": "arkui/SpanModifier.d.ts", "kitName": "ArkUI", "subSystem": "ArkUI开发框架" }, { "filePath": "arkui/StackModifier.d.ts", "kitName": "ArkUI", "subSystem": "ArkUI开发框架" }, { "filePath": "arkui/StepperItemModifier.d.ts", "kitName": "ArkUI", "subSystem": "ArkUI开发框架" }, + { "filePath": "arkui/StepperModifier.d.ts", "kitName": "ArkUI", "subSystem": "ArkUI开发框架" }, { "filePath": "arkui/SwiperModifier.d.ts", "kitName": "ArkUI", "subSystem": "ArkUI开发框架" }, { "filePath": "arkui/TabsModifier.d.ts", "kitName": "ArkUI", "subSystem": "ArkUI开发框架" }, { "filePath": "arkui/TextAreaModifier.d.ts", "kitName": "ArkUI", "subSystem": "ArkUI开发框架" }, diff --git a/build-tools/dts_parser/package/JS_API_CHECK.js b/build-tools/dts_parser/package/JS_API_CHECK.js deleted file mode 100644 index 8bf34081e4eb363631e38aafcadc41a26df3c20c..0000000000000000000000000000000000000000 --- a/build-tools/dts_parser/package/JS_API_CHECK.js +++ /dev/null @@ -1,117 +0,0 @@ -/*! version:1.0.0 */(()=>{var __webpack_modules__={49792:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CsvFormatterStream=void 0;const n=r(2203),i=r(17693);class a extends n.Transform{constructor(e){super({writableObjectMode:e.objectMode}),this.hasWrittenBOM=!1,this.formatterOptions=e,this.rowFormatter=new i.RowFormatter(e),this.hasWrittenBOM=!e.writeBOM}transform(e){return this.rowFormatter.rowTransform=e,this}_transform(e,t,r){let n=!1;try{this.hasWrittenBOM||(this.push(this.formatterOptions.BOM),this.hasWrittenBOM=!0),this.rowFormatter.format(e,((e,t)=>e?(n=!0,r(e)):(t&&t.forEach((e=>{this.push(Buffer.from(e,"utf8"))})),n=!0,r())))}catch(e){if(n)throw e;r(e)}}_flush(e){this.rowFormatter.finish(((t,r)=>t?e(t):(r&&r.forEach((e=>{this.push(Buffer.from(e,"utf8"))})),e())))}}t.CsvFormatterStream=a},68502:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormatterOptions=void 0;t.FormatterOptions=class{constructor(e={}){var t;this.objectMode=!0,this.delimiter=",",this.rowDelimiter="\n",this.quote='"',this.escape=this.quote,this.quoteColumns=!1,this.quoteHeaders=this.quoteColumns,this.headers=null,this.includeEndRowDelimiter=!1,this.writeBOM=!1,this.BOM="\ufeff",this.alwaysWriteHeaders=!1,Object.assign(this,e||{}),void 0===(null==e?void 0:e.quoteHeaders)&&(this.quoteHeaders=this.quoteColumns),!0===(null==e?void 0:e.quote)?this.quote='"':!1===(null==e?void 0:e.quote)&&(this.quote=""),"string"!=typeof(null==e?void 0:e.escape)&&(this.escape=this.quote),this.shouldWriteHeaders=!!this.headers&&(null===(t=e.writeHeaders)||void 0===t||t),this.headers=Array.isArray(this.headers)?this.headers:null,this.escapedQuote=`${this.escape}${this.quote}`}}},68091:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FieldFormatter=void 0;const i=n(r(87914)),a=n(r(74733)),o=n(r(10912));t.FieldFormatter=class{constructor(e){this._headers=null,this.formatterOptions=e,null!==e.headers&&(this.headers=e.headers),this.REPLACE_REGEXP=new RegExp(e.quote,"g");const t=`[${e.delimiter}${o.default(e.rowDelimiter)}|\r|\n]`;this.ESCAPE_REGEXP=new RegExp(t)}set headers(e){this._headers=e}shouldQuote(e,t){const r=t?this.formatterOptions.quoteHeaders:this.formatterOptions.quoteColumns;return i.default(r)?r:Array.isArray(r)?r[e]:null!==this._headers&&r[this._headers[e]]}format(e,t,r){const n=`${a.default(e)?"":e}`.replace(/\0/g,""),{formatterOptions:i}=this;if(""!==i.quote){if(-1!==n.indexOf(i.quote))return this.quoteField(n.replace(this.REPLACE_REGEXP,i.escapedQuote))}return-1!==n.search(this.ESCAPE_REGEXP)||this.shouldQuote(t,r)?this.quoteField(n):n}quoteField(e){const{quote:t}=this.formatterOptions;return`${t}${e}${t}`}}},50803:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RowFormatter=void 0;const i=n(r(85710)),a=n(r(8142)),o=r(68091),s=r(90565);class c{constructor(e){this.rowCount=0,this.formatterOptions=e,this.fieldFormatter=new o.FieldFormatter(e),this.headers=e.headers,this.shouldWriteHeaders=e.shouldWriteHeaders,this.hasWrittenHeaders=!1,null!==this.headers&&(this.fieldFormatter.headers=this.headers),e.transform&&(this.rowTransform=e.transform)}static isRowHashArray(e){return!!Array.isArray(e)&&(Array.isArray(e[0])&&2===e[0].length)}static isRowArray(e){return Array.isArray(e)&&!this.isRowHashArray(e)}static gatherHeaders(e){return c.isRowHashArray(e)?e.map((e=>e[0])):Array.isArray(e)?e:Object.keys(e)}static createTransform(e){return s.isSyncTransform(e)?(t,r)=>{let n=null;try{n=e(t)}catch(e){return r(e)}return r(null,n)}:(t,r)=>{e(t,r)}}set rowTransform(e){if(!i.default(e))throw new TypeError("The transform should be a function");this._rowTransform=c.createTransform(e)}format(e,t){this.callTransformer(e,((r,n)=>{if(r)return t(r);if(!e)return t(null);const i=[];if(n){const{shouldFormatColumns:e,headers:t}=this.checkHeaders(n);if(this.shouldWriteHeaders&&t&&!this.hasWrittenHeaders&&(i.push(this.formatColumns(t,!0)),this.hasWrittenHeaders=!0),e){const e=this.gatherColumns(n);i.push(this.formatColumns(e,!1))}}return t(null,i)}))}finish(e){const t=[];if(this.formatterOptions.alwaysWriteHeaders&&0===this.rowCount){if(!this.headers)return e(new Error("`alwaysWriteHeaders` option is set to true but `headers` option not provided."));t.push(this.formatColumns(this.headers,!0))}return this.formatterOptions.includeEndRowDelimiter&&t.push(this.formatterOptions.rowDelimiter),e(null,t)}checkHeaders(e){if(this.headers)return{shouldFormatColumns:!0,headers:this.headers};const t=c.gatherHeaders(e);return this.headers=t,this.fieldFormatter.headers=t,this.shouldWriteHeaders?{shouldFormatColumns:!a.default(t,e),headers:t}:{shouldFormatColumns:!0,headers:null}}gatherColumns(e){if(null===this.headers)throw new Error("Headers is currently null");return Array.isArray(e)?c.isRowHashArray(e)?this.headers.map(((t,r)=>{const n=e[r];return n?n[1]:""})):c.isRowArray(e)&&!this.shouldWriteHeaders?e:this.headers.map(((t,r)=>e[r])):this.headers.map((t=>e[t]))}callTransformer(e,t){return this._rowTransform?this._rowTransform(e,t):t(null,e)}formatColumns(e,t){const r=e.map(((e,r)=>this.fieldFormatter.format(e,r,t))).join(this.formatterOptions.delimiter),{rowCount:n}=this;return this.rowCount+=1,n?[this.formatterOptions.rowDelimiter,r].join(""):r}}t.RowFormatter=c},17693:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FieldFormatter=t.RowFormatter=void 0;var n=r(50803);Object.defineProperty(t,"RowFormatter",{enumerable:!0,get:function(){return n.RowFormatter}});var i=r(68091);Object.defineProperty(t,"FieldFormatter",{enumerable:!0,get:function(){return i.FieldFormatter}})},1696:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.writeToPath=t.writeToString=t.writeToBuffer=t.writeToStream=t.write=t.format=t.FormatterOptions=t.CsvFormatterStream=void 0;const s=r(39023),c=r(2203),l=a(r(79896)),u=r(68502),d=r(49792);o(r(90565),t);var p=r(49792);Object.defineProperty(t,"CsvFormatterStream",{enumerable:!0,get:function(){return p.CsvFormatterStream}});var f=r(68502);Object.defineProperty(t,"FormatterOptions",{enumerable:!0,get:function(){return f.FormatterOptions}}),t.format=e=>new d.CsvFormatterStream(new u.FormatterOptions(e)),t.write=(e,r)=>{const n=t.format(r),i=s.promisify(((e,t)=>{n.write(e,void 0,t)}));return e.reduce(((e,t)=>e.then((()=>i(t)))),Promise.resolve()).then((()=>n.end())).catch((e=>{n.emit("error",e)})),n},t.writeToStream=(e,r,n)=>t.write(r,n).pipe(e),t.writeToBuffer=(e,r={})=>{const n=[],i=new c.Writable({write(e,t,r){n.push(e),r()}});return new Promise(((a,o)=>{i.on("error",o).on("finish",(()=>a(Buffer.concat(n)))),t.write(e,r).pipe(i)}))},t.writeToString=(e,r)=>t.writeToBuffer(e,r).then((e=>e.toString())),t.writeToPath=(e,r,n)=>{const i=l.createWriteStream(e,{encoding:"utf8"});return t.write(r,n).pipe(i)}},90565:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSyncTransform=void 0,t.isSyncTransform=e=>1===e.length},68273:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CsvParserStream=void 0;const n=r(13193),i=r(2203),a=r(55698),o=r(65856);class s extends i.Transform{constructor(e){super({objectMode:e.objectMode}),this.lines="",this.rowCount=0,this.parsedRowCount=0,this.parsedLineCount=0,this.endEmitted=!1,this.headersEmitted=!1,this.parserOptions=e,this.parser=new o.Parser(e),this.headerTransformer=new a.HeaderTransformer(e),this.decoder=new n.StringDecoder(e.encoding),this.rowTransformerValidator=new a.RowTransformerValidator}get hasHitRowLimit(){return this.parserOptions.limitRows&&this.rowCount>=this.parserOptions.maxRows}get shouldEmitRows(){return this.parsedRowCount>this.parserOptions.skipRows}get shouldSkipLine(){return this.parsedLineCount<=this.parserOptions.skipLines}transform(e){return this.rowTransformerValidator.rowTransform=e,this}validate(e){return this.rowTransformerValidator.rowValidator=e,this}emit(e,...t){return"end"===e?(this.endEmitted||(this.endEmitted=!0,super.emit("end",this.rowCount)),!1):super.emit(e,...t)}_transform(e,t,r){if(this.hasHitRowLimit)return r();const n=s.wrapDoneCallback(r);try{const{lines:t}=this,r=t+this.decoder.write(e),i=this.parse(r,!0);return this.processRows(i,n)}catch(e){return n(e)}}_flush(e){const t=s.wrapDoneCallback(e);if(this.hasHitRowLimit)return t();try{const e=this.lines+this.decoder.end(),r=this.parse(e,!1);return this.processRows(r,t)}catch(e){return t(e)}}parse(e,t){if(!e)return[];const{line:r,rows:n}=this.parser.parse(e,t);return this.lines=r,n}processRows(e,t){const r=e.length,n=i=>{const a=e=>e?t(e):i%100!=0?n(i+1):void setImmediate((()=>n(i+1)));if(this.checkAndEmitHeaders(),i>=r||this.hasHitRowLimit)return t();if(this.parsedLineCount+=1,this.shouldSkipLine)return a();const o=e[i];this.rowCount+=1,this.parsedRowCount+=1;const s=this.rowCount;return this.transformRow(o,((e,t)=>{if(e)return this.rowCount-=1,a(e);if(!t)return a(new Error("expected transform result"));if(t.isValid){if(t.row)return this.pushRow(t.row,a)}else this.emit("data-invalid",t.row,s,t.reason);return a()}))};n(0)}transformRow(e,t){try{this.headerTransformer.transform(e,((r,n)=>r?t(r):n?n.isValid?n.row?this.shouldEmitRows?this.rowTransformerValidator.transformAndValidate(n.row,t):this.skipRow(t):(this.rowCount-=1,this.parsedRowCount-=1,t(null,{row:null,isValid:!0})):this.shouldEmitRows?t(null,{isValid:!1,row:e}):this.skipRow(t):t(new Error("Expected result from header transform"))))}catch(e){t(e)}}checkAndEmitHeaders(){!this.headersEmitted&&this.headerTransformer.headers&&(this.headersEmitted=!0,this.emit("headers",this.headerTransformer.headers))}skipRow(e){return this.rowCount-=1,e(null,{row:null,isValid:!0})}pushRow(e,t){try{this.parserOptions.objectMode?this.push(e):this.push(JSON.stringify(e)),t()}catch(e){t(e)}}static wrapDoneCallback(e){let t=!1;return(r,...n)=>{if(r){if(t)throw r;return t=!0,void e(r)}e(...n)}}}t.CsvParserStream=s},96793:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ParserOptions=void 0;const i=n(r(10912)),a=n(r(74733));t.ParserOptions=class{constructor(e){var t;if(this.objectMode=!0,this.delimiter=",",this.ignoreEmpty=!1,this.quote='"',this.escape=null,this.escapeChar=this.quote,this.comment=null,this.supportsComments=!1,this.ltrim=!1,this.rtrim=!1,this.trim=!1,this.headers=null,this.renameHeaders=!1,this.strictColumnHandling=!1,this.discardUnmappedColumns=!1,this.carriageReturn="\r",this.encoding="utf8",this.limitRows=!1,this.maxRows=0,this.skipLines=0,this.skipRows=0,Object.assign(this,e||{}),this.delimiter.length>1)throw new Error("delimiter option must be one character long");this.escapedDelimiter=i.default(this.delimiter),this.escapeChar=null!==(t=this.escape)&&void 0!==t?t:this.quote,this.supportsComments=!a.default(this.comment),this.NEXT_TOKEN_REGEXP=new RegExp(`([^\\s]|\\r\\n|\\n|\\r|${this.escapedDelimiter})`),this.maxRows>0&&(this.limitRows=!0)}}},77190:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.parseString=t.parseFile=t.parseStream=t.parse=t.ParserOptions=t.CsvParserStream=void 0;const s=a(r(79896)),c=r(2203),l=r(96793),u=r(68273);o(r(50331),t);var d=r(68273);Object.defineProperty(t,"CsvParserStream",{enumerable:!0,get:function(){return d.CsvParserStream}});var p=r(96793);Object.defineProperty(t,"ParserOptions",{enumerable:!0,get:function(){return p.ParserOptions}}),t.parse=e=>new u.CsvParserStream(new l.ParserOptions(e)),t.parseStream=(e,t)=>e.pipe(new u.CsvParserStream(new l.ParserOptions(t))),t.parseFile=(e,t={})=>s.createReadStream(e).pipe(new u.CsvParserStream(new l.ParserOptions(t))),t.parseString=(e,t)=>{const r=new c.Readable;return r.push(e),r.push(null),r.pipe(new u.CsvParserStream(new l.ParserOptions(t)))}},1381:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;const n=r(77366),i=r(57291),a=r(7757);class o{constructor(e){this.parserOptions=e,this.rowParser=new i.RowParser(this.parserOptions)}static removeBOM(e){return e&&65279===e.charCodeAt(0)?e.slice(1):e}parse(e,t){const r=new n.Scanner({line:o.removeBOM(e),parserOptions:this.parserOptions,hasMoreData:t});return this.parserOptions.supportsComments?this.parseWithComments(r):this.parseWithoutComments(r)}parseWithoutComments(e){const t=[];let r=!0;for(;r;)r=this.parseRow(e,t);return{line:e.line,rows:t}}parseWithComments(e){const{parserOptions:t}=this,r=[];for(let n=e.nextCharacterToken;null!==n;n=e.nextCharacterToken)if(a.Token.isTokenComment(n,t)){if(null===e.advancePastLine())return{line:e.lineFromCursor,rows:r};if(!e.hasMoreCharacters)return{line:e.lineFromCursor,rows:r};e.truncateToCursor()}else if(!this.parseRow(e,r))break;return{line:e.line,rows:r}}parseRow(e,t){if(!e.nextNonSpaceToken)return!1;const r=this.rowParser.parse(e);return null!==r&&(this.parserOptions.ignoreEmpty&&i.RowParser.isEmptyRow(r)||t.push(r),!0)}}t.Parser=o},57291:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RowParser=void 0;const n=r(95779),i=r(7757);t.RowParser=class{constructor(e){this.parserOptions=e,this.columnParser=new n.ColumnParser(e)}static isEmptyRow(e){return""===e.join("").replace(/\s+/g,"")}parse(e){const{parserOptions:t}=this,{hasMoreData:r}=e,n=e,a=[];let o=this.getStartToken(n,a);for(;o;){if(i.Token.isTokenRowDelimiter(o))return n.advancePastToken(o),!n.hasMoreCharacters&&i.Token.isTokenCarriageReturn(o,t)&&r?null:(n.truncateToCursor(),a);if(!this.shouldSkipColumnParse(n,o,a)){const e=this.columnParser.parse(n);if(null===e)return null;a.push(e)}o=n.nextNonSpaceToken}return r?null:(n.truncateToCursor(),a)}getStartToken(e,t){const r=e.nextNonSpaceToken;return null!==r&&i.Token.isTokenDelimiter(r,this.parserOptions)?(t.push(""),e.nextNonSpaceToken):r}shouldSkipColumnParse(e,t,r){const{parserOptions:n}=this;if(i.Token.isTokenDelimiter(t,n)){e.advancePastToken(t);const a=e.nextCharacterToken;if(!e.hasMoreCharacters||null!==a&&i.Token.isTokenRowDelimiter(a))return r.push(""),!0;if(null!==a&&i.Token.isTokenDelimiter(a,n))return r.push(""),!0}return!1}}},77366:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Scanner=void 0;const n=r(7757),i=/((?:\r\n)|\n|\r)/;t.Scanner=class{constructor(e){this.cursor=0,this.line=e.line,this.lineLength=this.line.length,this.parserOptions=e.parserOptions,this.hasMoreData=e.hasMoreData,this.cursor=e.cursor||0}get hasMoreCharacters(){return this.lineLength>this.cursor}get nextNonSpaceToken(){const{lineFromCursor:e}=this,t=this.parserOptions.NEXT_TOKEN_REGEXP;if(-1===e.search(t))return null;const r=t.exec(e);if(null==r)return null;const i=r[1],a=this.cursor+(r.index||0);return new n.Token({token:i,startCursor:a,endCursor:a+i.length-1})}get nextCharacterToken(){const{cursor:e,lineLength:t}=this;return t<=e?null:new n.Token({token:this.line[e],startCursor:e,endCursor:e})}get lineFromCursor(){return this.line.substr(this.cursor)}advancePastLine(){const e=i.exec(this.lineFromCursor);return e?(this.cursor+=(e.index||0)+e[0].length,this):this.hasMoreData?null:(this.cursor=this.lineLength,this)}advanceTo(e){return this.cursor=e,this}advanceToToken(e){return this.cursor=e.startCursor,this}advancePastToken(e){return this.cursor=e.endCursor+1,this}truncateToCursor(){return this.line=this.lineFromCursor,this.lineLength=this.line.length,this.cursor=0,this}}},7757:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Token=void 0;t.Token=class{constructor(e){this.token=e.token,this.startCursor=e.startCursor,this.endCursor=e.endCursor}static isTokenRowDelimiter(e){const t=e.token;return"\r"===t||"\n"===t||"\r\n"===t}static isTokenCarriageReturn(e,t){return e.token===t.carriageReturn}static isTokenComment(e,t){return t.supportsComments&&!!e&&e.token===t.comment}static isTokenEscapeCharacter(e,t){return e.token===t.escapeChar}static isTokenQuote(e,t){return e.token===t.quote}static isTokenDelimiter(e,t){return e.token===t.delimiter}}},9651:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnFormatter=void 0;t.ColumnFormatter=class{constructor(e){e.trim?this.format=e=>e.trim():e.ltrim?this.format=e=>e.trimLeft():e.rtrim?this.format=e=>e.trimRight():this.format=e=>e}}},25454:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnParser=void 0;const n=r(73353),i=r(13830),a=r(7757);t.ColumnParser=class{constructor(e){this.parserOptions=e,this.quotedColumnParser=new i.QuotedColumnParser(e),this.nonQuotedColumnParser=new n.NonQuotedColumnParser(e)}parse(e){const{nextNonSpaceToken:t}=e;return null!==t&&a.Token.isTokenQuote(t,this.parserOptions)?(e.advanceToToken(t),this.quotedColumnParser.parse(e)):this.nonQuotedColumnParser.parse(e)}}},73353:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NonQuotedColumnParser=void 0;const n=r(9651),i=r(7757);t.NonQuotedColumnParser=class{constructor(e){this.parserOptions=e,this.columnFormatter=new n.ColumnFormatter(e)}parse(e){if(!e.hasMoreCharacters)return null;const{parserOptions:t}=this,r=[];let n=e.nextCharacterToken;for(;n&&(!i.Token.isTokenDelimiter(n,t)&&!i.Token.isTokenRowDelimiter(n));n=e.nextCharacterToken)r.push(n.token),e.advancePastToken(n);return this.columnFormatter.format(r.join(""))}}},13830:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuotedColumnParser=void 0;const n=r(9651),i=r(7757);t.QuotedColumnParser=class{constructor(e){this.parserOptions=e,this.columnFormatter=new n.ColumnFormatter(e)}parse(e){if(!e.hasMoreCharacters)return null;const t=e.cursor,{foundClosingQuote:r,col:n}=this.gatherDataBetweenQuotes(e);if(!r){if(e.advanceTo(t),!e.hasMoreData)throw new Error(`Parse Error: missing closing: '${this.parserOptions.quote||""}' in line: at '${e.lineFromCursor.replace(/[\r\n]/g,"\\n'")}'`);return null}return this.checkForMalformedColumn(e),n}gatherDataBetweenQuotes(e){const{parserOptions:t}=this;let r=!1,n=!1;const a=[];let o=e.nextCharacterToken;for(;!n&&null!==o;o=e.nextCharacterToken){const s=i.Token.isTokenQuote(o,t);if(!r&&s)r=!0;else if(r)if(i.Token.isTokenEscapeCharacter(o,t)){e.advancePastToken(o);const r=e.nextCharacterToken;null!==r&&(i.Token.isTokenQuote(r,t)||i.Token.isTokenEscapeCharacter(r,t))?(a.push(r.token),o=r):s?n=!0:a.push(o.token)}else s?n=!0:a.push(o.token);e.advancePastToken(o)}return{col:this.columnFormatter.format(a.join("")),foundClosingQuote:n}}checkForMalformedColumn(e){const{parserOptions:t}=this,{nextNonSpaceToken:r}=e;if(r){const n=i.Token.isTokenDelimiter(r,t),a=i.Token.isTokenRowDelimiter(r);if(!n&&!a){const n=e.lineFromCursor.substr(0,10).replace(/[\r\n]/g,"\\n'");throw new Error(`Parse Error: expected: '${t.escapedDelimiter}' OR new line got: '${r.token}'. at '${n}`)}e.advanceToToken(r)}else e.hasMoreData||e.advancePastLine()}}},95779:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnFormatter=t.QuotedColumnParser=t.NonQuotedColumnParser=t.ColumnParser=void 0;var n=r(25454);Object.defineProperty(t,"ColumnParser",{enumerable:!0,get:function(){return n.ColumnParser}});var i=r(73353);Object.defineProperty(t,"NonQuotedColumnParser",{enumerable:!0,get:function(){return i.NonQuotedColumnParser}});var a=r(13830);Object.defineProperty(t,"QuotedColumnParser",{enumerable:!0,get:function(){return a.QuotedColumnParser}});var o=r(9651);Object.defineProperty(t,"ColumnFormatter",{enumerable:!0,get:function(){return o.ColumnFormatter}})},65856:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuotedColumnParser=t.NonQuotedColumnParser=t.ColumnParser=t.Token=t.Scanner=t.RowParser=t.Parser=void 0;var n=r(1381);Object.defineProperty(t,"Parser",{enumerable:!0,get:function(){return n.Parser}});var i=r(57291);Object.defineProperty(t,"RowParser",{enumerable:!0,get:function(){return i.RowParser}});var a=r(77366);Object.defineProperty(t,"Scanner",{enumerable:!0,get:function(){return a.Scanner}});var o=r(7757);Object.defineProperty(t,"Token",{enumerable:!0,get:function(){return o.Token}});var s=r(95779);Object.defineProperty(t,"ColumnParser",{enumerable:!0,get:function(){return s.ColumnParser}}),Object.defineProperty(t,"NonQuotedColumnParser",{enumerable:!0,get:function(){return s.NonQuotedColumnParser}}),Object.defineProperty(t,"QuotedColumnParser",{enumerable:!0,get:function(){return s.QuotedColumnParser}})},57854:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.HeaderTransformer=void 0;const i=n(r(58254)),a=n(r(85710)),o=n(r(90879)),s=n(r(31324));t.HeaderTransformer=class{constructor(e){this.headers=null,this.receivedHeaders=!1,this.shouldUseFirstRow=!1,this.processedFirstRow=!1,this.headersLength=0,this.parserOptions=e,!0===e.headers?this.shouldUseFirstRow=!0:Array.isArray(e.headers)?this.setHeaders(e.headers):a.default(e.headers)&&(this.headersTransform=e.headers)}transform(e,t){return this.shouldMapRow(e)?t(null,this.processRow(e)):t(null,{row:null,isValid:!0})}shouldMapRow(e){const{parserOptions:t}=this;if(!this.headersTransform&&t.renameHeaders&&!this.processedFirstRow){if(!this.receivedHeaders)throw new Error("Error renaming headers: new headers must be provided in an array");return this.processedFirstRow=!0,!1}if(!this.receivedHeaders&&Array.isArray(e)){if(this.headersTransform)this.setHeaders(this.headersTransform(e));else{if(!this.shouldUseFirstRow)return!0;this.setHeaders(e)}return!1}return!0}processRow(e){if(!this.headers)return{row:e,isValid:!0};const{parserOptions:t}=this;if(!t.discardUnmappedColumns&&e.length>this.headersLength){if(!t.strictColumnHandling)throw new Error(`Unexpected Error: column header mismatch expected: ${this.headersLength} columns got: ${e.length}`);return{row:e,isValid:!1,reason:`Column header mismatch expected: ${this.headersLength} columns got: ${e.length}`}}return t.strictColumnHandling&&e.length<this.headersLength?{row:e,isValid:!1,reason:`Column header mismatch expected: ${this.headersLength} columns got: ${e.length}`}:{row:this.mapHeaders(e),isValid:!0}}mapHeaders(e){const t={},{headers:r,headersLength:n}=this;for(let a=0;a<n;a+=1){const n=r[a];if(!i.default(n)){const r=e[a];i.default(r)?t[n]="":t[n]=r}}return t}setHeaders(e){var t;const r=e.filter((e=>!!e));if(o.default(r).length!==r.length){const e=s.default(r),t=Object.keys(e).filter((t=>e[t].length>1));throw new Error(`Duplicate headers found ${JSON.stringify(t)}`)}this.headers=e,this.receivedHeaders=!0,this.headersLength=(null===(t=this.headers)||void 0===t?void 0:t.length)||0}}},77701:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RowTransformerValidator=void 0;const i=n(r(85710)),a=r(50331);class o{constructor(){this._rowTransform=null,this._rowValidator=null}static createTransform(e){return a.isSyncTransform(e)?(t,r)=>{let n=null;try{n=e(t)}catch(e){return r(e)}return r(null,n)}:e}static createValidator(e){return a.isSyncValidate(e)?(t,r)=>{r(null,{row:t,isValid:e(t)})}:(t,r)=>{e(t,((e,n,i)=>e?r(e):r(null,n?{row:t,isValid:n,reason:i}:{row:t,isValid:!1,reason:i})))}}set rowTransform(e){if(!i.default(e))throw new TypeError("The transform should be a function");this._rowTransform=o.createTransform(e)}set rowValidator(e){if(!i.default(e))throw new TypeError("The validate should be a function");this._rowValidator=o.createValidator(e)}transformAndValidate(e,t){return this.callTransformer(e,((e,r)=>e?t(e):r?this.callValidator(r,((e,n)=>e?t(e):n&&!n.isValid?t(null,{row:r,isValid:!1,reason:n.reason}):t(null,{row:r,isValid:!0}))):t(null,{row:null,isValid:!0})))}callTransformer(e,t){return this._rowTransform?this._rowTransform(e,t):t(null,e)}callValidator(e,t){return this._rowValidator?this._rowValidator(e,t):t(null,{row:e,isValid:!0})}}t.RowTransformerValidator=o},55698:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HeaderTransformer=t.RowTransformerValidator=void 0;var n=r(77701);Object.defineProperty(t,"RowTransformerValidator",{enumerable:!0,get:function(){return n.RowTransformerValidator}});var i=r(57854);Object.defineProperty(t,"HeaderTransformer",{enumerable:!0,get:function(){return i.HeaderTransformer}})},50331:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSyncValidate=t.isSyncTransform=void 0,t.isSyncTransform=e=>1===e.length,t.isSyncValidate=e=>1===e.length},8505:e=>{"use strict";function t(e,t,i){e instanceof RegExp&&(e=r(e,i)),t instanceof RegExp&&(t=r(t,i));var a=n(e,t,i);return a&&{start:a[0],end:a[1],pre:i.slice(0,a[0]),body:i.slice(a[0]+e.length,a[1]),post:i.slice(a[1]+t.length)}}function r(e,t){var r=t.match(e);return r?r[0]:null}function n(e,t,r){var n,i,a,o,s,c=r.indexOf(e),l=r.indexOf(t,c+1),u=c;if(c>=0&&l>0){if(e===t)return[c,l];for(n=[],a=r.length;u>=0&&!s;)u==c?(n.push(u),c=r.indexOf(e,u+1)):1==n.length?s=[n.pop(),l]:((i=n.pop())<a&&(a=i,o=l),l=r.indexOf(t,u+1)),u=c<l&&c>=0?c:l;n.length&&(s=[a,o])}return s}e.exports=t,t.range=n},92096:(e,t,r)=>{var n;e=r.nmd(e);var i=function(e){"use strict";var t=1e7,r=7,n=9007199254740992,a=f(n),o="0123456789abcdefghijklmnopqrstuvwxyz",s="function"==typeof BigInt;function c(e,t,r,n){return void 0===e?c[0]:void 0!==t&&(10!=+t||r)?K(e,t,r,n):X(e)}function l(e,t){this.value=e,this.sign=t,this.isSmall=!1}function u(e){this.value=e,this.sign=e<0,this.isSmall=!0}function d(e){this.value=e}function p(e){return-n<e&&e<n}function f(e){return e<1e7?[e]:e<1e14?[e%1e7,Math.floor(e/1e7)]:[e%1e7,Math.floor(e/1e7)%1e7,Math.floor(e/1e14)]}function m(e){g(e);var r=e.length;if(r<4&&P(e,a)<0)switch(r){case 0:return 0;case 1:return e[0];case 2:return e[0]+e[1]*t;default:return e[0]+(e[1]+e[2]*t)*t}return e}function g(e){for(var t=e.length;0===e[--t];);e.length=t+1}function _(e){for(var t=new Array(e),r=-1;++r<e;)t[r]=0;return t}function h(e){return e>0?Math.floor(e):Math.ceil(e)}function y(e,r){var n,i,a=e.length,o=r.length,s=new Array(a),c=0,l=t;for(i=0;i<o;i++)c=(n=e[i]+r[i]+c)>=l?1:0,s[i]=n-c*l;for(;i<a;)c=(n=e[i]+c)===l?1:0,s[i++]=n-c*l;return c>0&&s.push(c),s}function v(e,t){return e.length>=t.length?y(e,t):y(t,e)}function b(e,r){var n,i,a=e.length,o=new Array(a),s=t;for(i=0;i<a;i++)n=e[i]-s+r,r=Math.floor(n/s),o[i]=n-r*s,r+=1;for(;r>0;)o[i++]=r%s,r=Math.floor(r/s);return o}function k(e,r){var n,i,a=e.length,o=r.length,s=new Array(a),c=0,l=t;for(n=0;n<o;n++)(i=e[n]-c-r[n])<0?(i+=l,c=1):c=0,s[n]=i;for(n=o;n<a;n++){if(!((i=e[n]-c)<0)){s[n++]=i;break}i+=l,s[n]=i}for(;n<a;n++)s[n]=e[n];return g(s),s}function x(e,r,n){var i,a,o=e.length,s=new Array(o),c=-r,d=t;for(i=0;i<o;i++)a=e[i]+c,c=Math.floor(a/d),a%=d,s[i]=a<0?a+d:a;return"number"==typeof(s=m(s))?(n&&(s=-s),new u(s)):new l(s,n)}function E(e,r){var n,i,a,o,s=e.length,c=r.length,l=_(s+c),u=t;for(a=0;a<s;++a){o=e[a];for(var d=0;d<c;++d)n=o*r[d]+l[a+d],i=Math.floor(n/u),l[a+d]=n-i*u,l[a+d+1]+=i}return g(l),l}function S(e,r){var n,i,a=e.length,o=new Array(a),s=t,c=0;for(i=0;i<a;i++)n=e[i]*r+c,c=Math.floor(n/s),o[i]=n-c*s;for(;c>0;)o[i++]=c%s,c=Math.floor(c/s);return o}function D(e,t){for(var r=[];t-- >0;)r.push(0);return r.concat(e)}function w(e,t){var r=Math.max(e.length,t.length);if(r<=30)return E(e,t);r=Math.ceil(r/2);var n=e.slice(r),i=e.slice(0,r),a=t.slice(r),o=t.slice(0,r),s=w(i,o),c=w(n,a),l=w(v(i,n),v(o,a)),u=v(v(s,D(k(k(l,s),c),r)),D(c,2*r));return g(u),u}function T(e,r,n){return new l(e<t?S(r,e):E(r,f(e)),n)}function C(e){var r,n,i,a,o=e.length,s=_(o+o),c=t;for(i=0;i<o;i++){n=0-(a=e[i])*a;for(var l=i;l<o;l++)r=a*e[l]*2+s[i+l]+n,n=Math.floor(r/c),s[i+l]=r-n*c;s[i+o]=n}return g(s),s}function A(e,r){var n,i,a,o,s=e.length,c=_(s),l=t;for(a=0,n=s-1;n>=0;--n)a=(o=a*l+e[n])-(i=h(o/r))*r,c[n]=0|i;return[c,0|a]}function N(e,r){var n,i=X(r);if(s)return[new d(e.value/i.value),new d(e.value%i.value)];var a,o=e.value,p=i.value;if(0===p)throw new Error("Cannot divide by zero");if(e.isSmall)return i.isSmall?[new u(h(o/p)),new u(o%p)]:[c[0],e];if(i.isSmall){if(1===p)return[e,c[0]];if(-1==p)return[e.negate(),c[0]];var y=Math.abs(p);if(y<t){a=m((n=A(o,y))[0]);var v=n[1];return e.sign&&(v=-v),"number"==typeof a?(e.sign!==i.sign&&(a=-a),[new u(a),new u(v)]):[new l(a,e.sign!==i.sign),new u(v)]}p=f(y)}var b=P(o,p);if(-1===b)return[c[0],e];if(0===b)return[c[e.sign===i.sign?1:-1],c[0]];n=o.length+p.length<=200?function(e,r){var n,i,a,o,s,c,l,u=e.length,d=r.length,p=t,f=_(r.length),g=r[d-1],h=Math.ceil(p/(2*g)),y=S(e,h),v=S(r,h);for(y.length<=u&&y.push(0),v.push(0),g=v[d-1],i=u-d;i>=0;i--){for(n=p-1,y[i+d]!==g&&(n=Math.floor((y[i+d]*p+y[i+d-1])/g)),a=0,o=0,c=v.length,s=0;s<c;s++)a+=n*v[s],l=Math.floor(a/p),o+=y[i+s]-(a-l*p),a=l,o<0?(y[i+s]=o+p,o=-1):(y[i+s]=o,o=0);for(;0!==o;){for(n-=1,a=0,s=0;s<c;s++)(a+=y[i+s]-p+v[s])<0?(y[i+s]=a+p,a=0):(y[i+s]=a,a=1);o+=a}f[i]=n}return y=A(y,h)[0],[m(f),m(y)]}(o,p):function(e,r){for(var n,i,a,o,s,c=e.length,l=r.length,u=[],d=[],p=t;c;)if(d.unshift(e[--c]),g(d),P(d,r)<0)u.push(0);else{a=d[(i=d.length)-1]*p+d[i-2],o=r[l-1]*p+r[l-2],i>l&&(a=(a+1)*p),n=Math.ceil(a/o);do{if(P(s=S(r,n),d)<=0)break;n--}while(n);u.push(n),d=k(d,s)}return u.reverse(),[m(u),m(d)]}(o,p),a=n[0];var x=e.sign!==i.sign,E=n[1],D=e.sign;return"number"==typeof a?(x&&(a=-a),a=new u(a)):a=new l(a,x),"number"==typeof E?(D&&(E=-E),E=new u(E)):E=new l(E,D),[a,E]}function P(e,t){if(e.length!==t.length)return e.length>t.length?1:-1;for(var r=e.length-1;r>=0;r--)if(e[r]!==t[r])return e[r]>t[r]?1:-1;return 0}function I(e){var t=e.abs();return!t.isUnit()&&(!!(t.equals(2)||t.equals(3)||t.equals(5))||!(t.isEven()||t.isDivisibleBy(3)||t.isDivisibleBy(5))&&(!!t.lesser(49)||void 0))}function F(e,t){for(var r,n,a,o=e.prev(),s=o,c=0;s.isEven();)s=s.divide(2),c++;e:for(n=0;n<t.length;n++)if(!e.lesser(t[n])&&!(a=i(t[n]).modPow(s,e)).isUnit()&&!a.equals(o)){for(r=c-1;0!=r;r--){if((a=a.square().mod(e)).isUnit())return!1;if(a.equals(o))continue e}return!1}return!0}l.prototype=Object.create(c.prototype),u.prototype=Object.create(c.prototype),d.prototype=Object.create(c.prototype),l.prototype.add=function(e){var t=X(e);if(this.sign!==t.sign)return this.subtract(t.negate());var r=this.value,n=t.value;return t.isSmall?new l(b(r,Math.abs(n)),this.sign):new l(v(r,n),this.sign)},l.prototype.plus=l.prototype.add,u.prototype.add=function(e){var t=X(e),r=this.value;if(r<0!==t.sign)return this.subtract(t.negate());var n=t.value;if(t.isSmall){if(p(r+n))return new u(r+n);n=f(Math.abs(n))}return new l(b(n,Math.abs(r)),r<0)},u.prototype.plus=u.prototype.add,d.prototype.add=function(e){return new d(this.value+X(e).value)},d.prototype.plus=d.prototype.add,l.prototype.subtract=function(e){var t=X(e);if(this.sign!==t.sign)return this.add(t.negate());var r=this.value,n=t.value;return t.isSmall?x(r,Math.abs(n),this.sign):function(e,t,r){var n;return P(e,t)>=0?n=k(e,t):(n=k(t,e),r=!r),"number"==typeof(n=m(n))?(r&&(n=-n),new u(n)):new l(n,r)}(r,n,this.sign)},l.prototype.minus=l.prototype.subtract,u.prototype.subtract=function(e){var t=X(e),r=this.value;if(r<0!==t.sign)return this.add(t.negate());var n=t.value;return t.isSmall?new u(r-n):x(n,Math.abs(r),r>=0)},u.prototype.minus=u.prototype.subtract,d.prototype.subtract=function(e){return new d(this.value-X(e).value)},d.prototype.minus=d.prototype.subtract,l.prototype.negate=function(){return new l(this.value,!this.sign)},u.prototype.negate=function(){var e=this.sign,t=new u(-this.value);return t.sign=!e,t},d.prototype.negate=function(){return new d(-this.value)},l.prototype.abs=function(){return new l(this.value,!1)},u.prototype.abs=function(){return new u(Math.abs(this.value))},d.prototype.abs=function(){return new d(this.value>=0?this.value:-this.value)},l.prototype.multiply=function(e){var r,n,i,a=X(e),o=this.value,s=a.value,u=this.sign!==a.sign;if(a.isSmall){if(0===s)return c[0];if(1===s)return this;if(-1===s)return this.negate();if((r=Math.abs(s))<t)return new l(S(o,r),u);s=f(r)}return n=o.length,i=s.length,new l(-.012*n-.012*i+15e-6*n*i>0?w(o,s):E(o,s),u)},l.prototype.times=l.prototype.multiply,u.prototype._multiplyBySmall=function(e){return p(e.value*this.value)?new u(e.value*this.value):T(Math.abs(e.value),f(Math.abs(this.value)),this.sign!==e.sign)},l.prototype._multiplyBySmall=function(e){return 0===e.value?c[0]:1===e.value?this:-1===e.value?this.negate():T(Math.abs(e.value),this.value,this.sign!==e.sign)},u.prototype.multiply=function(e){return X(e)._multiplyBySmall(this)},u.prototype.times=u.prototype.multiply,d.prototype.multiply=function(e){return new d(this.value*X(e).value)},d.prototype.times=d.prototype.multiply,l.prototype.square=function(){return new l(C(this.value),!1)},u.prototype.square=function(){var e=this.value*this.value;return p(e)?new u(e):new l(C(f(Math.abs(this.value))),!1)},d.prototype.square=function(e){return new d(this.value*this.value)},l.prototype.divmod=function(e){var t=N(this,e);return{quotient:t[0],remainder:t[1]}},d.prototype.divmod=u.prototype.divmod=l.prototype.divmod,l.prototype.divide=function(e){return N(this,e)[0]},d.prototype.over=d.prototype.divide=function(e){return new d(this.value/X(e).value)},u.prototype.over=u.prototype.divide=l.prototype.over=l.prototype.divide,l.prototype.mod=function(e){return N(this,e)[1]},d.prototype.mod=d.prototype.remainder=function(e){return new d(this.value%X(e).value)},u.prototype.remainder=u.prototype.mod=l.prototype.remainder=l.prototype.mod,l.prototype.pow=function(e){var t,r,n,i=X(e),a=this.value,o=i.value;if(0===o)return c[1];if(0===a)return c[0];if(1===a)return c[1];if(-1===a)return i.isEven()?c[1]:c[-1];if(i.sign)return c[0];if(!i.isSmall)throw new Error("The exponent "+i.toString()+" is too large.");if(this.isSmall&&p(t=Math.pow(a,o)))return new u(h(t));for(r=this,n=c[1];!0&o&&(n=n.times(r),--o),0!==o;)o/=2,r=r.square();return n},u.prototype.pow=l.prototype.pow,d.prototype.pow=function(e){var t=X(e),r=this.value,n=t.value,i=BigInt(0),a=BigInt(1),o=BigInt(2);if(n===i)return c[1];if(r===i)return c[0];if(r===a)return c[1];if(r===BigInt(-1))return t.isEven()?c[1]:c[-1];if(t.isNegative())return new d(i);for(var s=this,l=c[1];(n&a)===a&&(l=l.times(s),--n),n!==i;)n/=o,s=s.square();return l},l.prototype.modPow=function(e,t){if(e=X(e),(t=X(t)).isZero())throw new Error("Cannot take modPow with modulus 0");var r=c[1],n=this.mod(t);for(e.isNegative()&&(e=e.multiply(c[-1]),n=n.modInv(t));e.isPositive();){if(n.isZero())return c[0];e.isOdd()&&(r=r.multiply(n).mod(t)),e=e.divide(2),n=n.square().mod(t)}return r},d.prototype.modPow=u.prototype.modPow=l.prototype.modPow,l.prototype.compareAbs=function(e){var t=X(e),r=this.value,n=t.value;return t.isSmall?1:P(r,n)},u.prototype.compareAbs=function(e){var t=X(e),r=Math.abs(this.value),n=t.value;return t.isSmall?r===(n=Math.abs(n))?0:r>n?1:-1:-1},d.prototype.compareAbs=function(e){var t=this.value,r=X(e).value;return(t=t>=0?t:-t)===(r=r>=0?r:-r)?0:t>r?1:-1},l.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=X(e),r=this.value,n=t.value;return this.sign!==t.sign?t.sign?1:-1:t.isSmall?this.sign?-1:1:P(r,n)*(this.sign?-1:1)},l.prototype.compareTo=l.prototype.compare,u.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=X(e),r=this.value,n=t.value;return t.isSmall?r==n?0:r>n?1:-1:r<0!==t.sign?r<0?-1:1:r<0?1:-1},u.prototype.compareTo=u.prototype.compare,d.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=this.value,r=X(e).value;return t===r?0:t>r?1:-1},d.prototype.compareTo=d.prototype.compare,l.prototype.equals=function(e){return 0===this.compare(e)},d.prototype.eq=d.prototype.equals=u.prototype.eq=u.prototype.equals=l.prototype.eq=l.prototype.equals,l.prototype.notEquals=function(e){return 0!==this.compare(e)},d.prototype.neq=d.prototype.notEquals=u.prototype.neq=u.prototype.notEquals=l.prototype.neq=l.prototype.notEquals,l.prototype.greater=function(e){return this.compare(e)>0},d.prototype.gt=d.prototype.greater=u.prototype.gt=u.prototype.greater=l.prototype.gt=l.prototype.greater,l.prototype.lesser=function(e){return this.compare(e)<0},d.prototype.lt=d.prototype.lesser=u.prototype.lt=u.prototype.lesser=l.prototype.lt=l.prototype.lesser,l.prototype.greaterOrEquals=function(e){return this.compare(e)>=0},d.prototype.geq=d.prototype.greaterOrEquals=u.prototype.geq=u.prototype.greaterOrEquals=l.prototype.geq=l.prototype.greaterOrEquals,l.prototype.lesserOrEquals=function(e){return this.compare(e)<=0},d.prototype.leq=d.prototype.lesserOrEquals=u.prototype.leq=u.prototype.lesserOrEquals=l.prototype.leq=l.prototype.lesserOrEquals,l.prototype.isEven=function(){return!(1&this.value[0])},u.prototype.isEven=function(){return!(1&this.value)},d.prototype.isEven=function(){return(this.value&BigInt(1))===BigInt(0)},l.prototype.isOdd=function(){return!(1&~this.value[0])},u.prototype.isOdd=function(){return!(1&~this.value)},d.prototype.isOdd=function(){return(this.value&BigInt(1))===BigInt(1)},l.prototype.isPositive=function(){return!this.sign},u.prototype.isPositive=function(){return this.value>0},d.prototype.isPositive=u.prototype.isPositive,l.prototype.isNegative=function(){return this.sign},u.prototype.isNegative=function(){return this.value<0},d.prototype.isNegative=u.prototype.isNegative,l.prototype.isUnit=function(){return!1},u.prototype.isUnit=function(){return 1===Math.abs(this.value)},d.prototype.isUnit=function(){return this.abs().value===BigInt(1)},l.prototype.isZero=function(){return!1},u.prototype.isZero=function(){return 0===this.value},d.prototype.isZero=function(){return this.value===BigInt(0)},l.prototype.isDivisibleBy=function(e){var t=X(e);return!t.isZero()&&(!!t.isUnit()||(0===t.compareAbs(2)?this.isEven():this.mod(t).isZero()))},d.prototype.isDivisibleBy=u.prototype.isDivisibleBy=l.prototype.isDivisibleBy,l.prototype.isPrime=function(t){var r=I(this);if(r!==e)return r;var n=this.abs(),a=n.bitLength();if(a<=64)return F(n,[2,3,5,7,11,13,17,19,23,29,31,37]);for(var o=Math.log(2)*a.toJSNumber(),s=Math.ceil(!0===t?2*Math.pow(o,2):o),c=[],l=0;l<s;l++)c.push(i(l+2));return F(n,c)},d.prototype.isPrime=u.prototype.isPrime=l.prototype.isPrime,l.prototype.isProbablePrime=function(t,r){var n=I(this);if(n!==e)return n;for(var a=this.abs(),o=t===e?5:t,s=[],c=0;c<o;c++)s.push(i.randBetween(2,a.minus(2),r));return F(a,s)},d.prototype.isProbablePrime=u.prototype.isProbablePrime=l.prototype.isProbablePrime,l.prototype.modInv=function(e){for(var t,r,n,a=i.zero,o=i.one,s=X(e),c=this.abs();!c.isZero();)t=s.divide(c),r=a,n=s,a=o,s=c,o=r.subtract(t.multiply(o)),c=n.subtract(t.multiply(c));if(!s.isUnit())throw new Error(this.toString()+" and "+e.toString()+" are not co-prime");return-1===a.compare(0)&&(a=a.add(e)),this.isNegative()?a.negate():a},d.prototype.modInv=u.prototype.modInv=l.prototype.modInv,l.prototype.next=function(){var e=this.value;return this.sign?x(e,1,this.sign):new l(b(e,1),this.sign)},u.prototype.next=function(){var e=this.value;return e+1<n?new u(e+1):new l(a,!1)},d.prototype.next=function(){return new d(this.value+BigInt(1))},l.prototype.prev=function(){var e=this.value;return this.sign?new l(b(e,1),!0):x(e,1,this.sign)},u.prototype.prev=function(){var e=this.value;return e-1>-n?new u(e-1):new l(a,!0)},d.prototype.prev=function(){return new d(this.value-BigInt(1))};for(var O=[1];2*O[O.length-1]<=t;)O.push(2*O[O.length-1]);var R=O.length,M=O[R-1];function L(e){return Math.abs(e)<=t}function j(e,t,r){t=X(t);for(var n=e.isNegative(),a=t.isNegative(),o=n?e.not():e,s=a?t.not():t,c=0,l=0,u=null,d=null,p=[];!o.isZero()||!s.isZero();)c=(u=N(o,M))[1].toJSNumber(),n&&(c=M-1-c),l=(d=N(s,M))[1].toJSNumber(),a&&(l=M-1-l),o=u[0],s=d[0],p.push(r(c,l));for(var f=0!==r(n?1:0,a?1:0)?i(-1):i(0),m=p.length-1;m>=0;m-=1)f=f.multiply(M).add(i(p[m]));return f}l.prototype.shiftLeft=function(e){var t=X(e).toJSNumber();if(!L(t))throw new Error(String(t)+" is too large for shifting.");if(t<0)return this.shiftRight(-t);var r=this;if(r.isZero())return r;for(;t>=R;)r=r.multiply(M),t-=R-1;return r.multiply(O[t])},d.prototype.shiftLeft=u.prototype.shiftLeft=l.prototype.shiftLeft,l.prototype.shiftRight=function(e){var t,r=X(e).toJSNumber();if(!L(r))throw new Error(String(r)+" is too large for shifting.");if(r<0)return this.shiftLeft(-r);for(var n=this;r>=R;){if(n.isZero()||n.isNegative()&&n.isUnit())return n;n=(t=N(n,M))[1].isNegative()?t[0].prev():t[0],r-=R-1}return(t=N(n,O[r]))[1].isNegative()?t[0].prev():t[0]},d.prototype.shiftRight=u.prototype.shiftRight=l.prototype.shiftRight,l.prototype.not=function(){return this.negate().prev()},d.prototype.not=u.prototype.not=l.prototype.not,l.prototype.and=function(e){return j(this,e,(function(e,t){return e&t}))},d.prototype.and=u.prototype.and=l.prototype.and,l.prototype.or=function(e){return j(this,e,(function(e,t){return e|t}))},d.prototype.or=u.prototype.or=l.prototype.or,l.prototype.xor=function(e){return j(this,e,(function(e,t){return e^t}))},d.prototype.xor=u.prototype.xor=l.prototype.xor;var B=1<<30,z=(t&-t)*(t&-t)|B;function U(e){var r=e.value,n="number"==typeof r?r|B:"bigint"==typeof r?r|BigInt(B):r[0]+r[1]*t|z;return n&-n}function q(e,t){if(t.compareTo(e)<=0){var r=q(e,t.square(t)),n=r.p,a=r.e,o=n.multiply(t);return o.compareTo(e)<=0?{p:o,e:2*a+1}:{p:n,e:2*a}}return{p:i(1),e:0}}function J(e,t){return e=X(e),t=X(t),e.greater(t)?e:t}function V(e,t){return e=X(e),t=X(t),e.lesser(t)?e:t}function H(e,t){if(e=X(e).abs(),t=X(t).abs(),e.equals(t))return e;if(e.isZero())return t;if(t.isZero())return e;for(var r,n,i=c[1];e.isEven()&&t.isEven();)r=V(U(e),U(t)),e=e.divide(r),t=t.divide(r),i=i.multiply(r);for(;e.isEven();)e=e.divide(U(e));do{for(;t.isEven();)t=t.divide(U(t));e.greater(t)&&(n=t,t=e,e=n),t=t.subtract(e)}while(!t.isZero());return i.isUnit()?e:e.multiply(i)}l.prototype.bitLength=function(){var e=this;return e.compareTo(i(0))<0&&(e=e.negate().subtract(i(1))),0===e.compareTo(i(0))?i(0):i(q(e,i(2)).e).add(i(1))},d.prototype.bitLength=u.prototype.bitLength=l.prototype.bitLength;var K=function(e,t,r,n){r=r||o,e=String(e),n||(e=e.toLowerCase(),r=r.toLowerCase());var i,a=e.length,s=Math.abs(t),c={};for(i=0;i<r.length;i++)c[r[i]]=i;for(i=0;i<a;i++){if("-"!==(d=e[i])&&(d in c&&c[d]>=s)){if("1"===d&&1===s)continue;throw new Error(d+" is not a valid digit in base "+t+".")}}t=X(t);var l=[],u="-"===e[0];for(i=u?1:0;i<e.length;i++){var d;if((d=e[i])in c)l.push(X(c[d]));else{if("<"!==d)throw new Error(d+" is not a valid character");var p=i;do{i++}while(">"!==e[i]&&i<e.length);l.push(X(e.slice(p+1,i)))}}return W(l,t,u)};function W(e,t,r){var n,i=c[0],a=c[1];for(n=e.length-1;n>=0;n--)i=i.add(e[n].times(a)),a=a.times(t);return r?i.negate():i}function G(e,t){if((t=i(t)).isZero()){if(e.isZero())return{value:[0],isNegative:!1};throw new Error("Cannot convert nonzero numbers to base 0.")}if(t.equals(-1)){if(e.isZero())return{value:[0],isNegative:!1};if(e.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-e.toJSNumber())).map(Array.prototype.valueOf,[1,0])),isNegative:!1};var r=Array.apply(null,Array(e.toJSNumber()-1)).map(Array.prototype.valueOf,[0,1]);return r.unshift([1]),{value:[].concat.apply([],r),isNegative:!1}}var n=!1;if(e.isNegative()&&t.isPositive()&&(n=!0,e=e.abs()),t.isUnit())return e.isZero()?{value:[0],isNegative:!1}:{value:Array.apply(null,Array(e.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:n};for(var a,o=[],s=e;s.isNegative()||s.compareAbs(t)>=0;){a=s.divmod(t),s=a.quotient;var c=a.remainder;c.isNegative()&&(c=t.minus(c).abs(),s=s.next()),o.push(c.toJSNumber())}return o.push(s.toJSNumber()),{value:o.reverse(),isNegative:n}}function $(e,t,r){var n=G(e,t);return(n.isNegative?"-":"")+n.value.map((function(e){return function(e,t){return e<(t=t||o).length?t[e]:"<"+e+">"}(e,r)})).join("")}function Y(e){if(p(+e)){var t=+e;if(t===h(t))return s?new d(BigInt(t)):new u(t);throw new Error("Invalid integer: "+e)}var n="-"===e[0];n&&(e=e.slice(1));var i=e.split(/e/i);if(i.length>2)throw new Error("Invalid integer: "+i.join("e"));if(2===i.length){var a=i[1];if("+"===a[0]&&(a=a.slice(1)),(a=+a)!==h(a)||!p(a))throw new Error("Invalid integer: "+a+" is not a valid exponent.");var o=i[0],c=o.indexOf(".");if(c>=0&&(a-=o.length-c-1,o=o.slice(0,c)+o.slice(c+1)),a<0)throw new Error("Cannot include negative exponent part for integers");e=o+=new Array(a+1).join("0")}if(!/^([0-9][0-9]*)$/.test(e))throw new Error("Invalid integer: "+e);if(s)return new d(BigInt(n?"-"+e:e));for(var f=[],m=e.length,_=r,y=m-_;m>0;)f.push(+e.slice(y,m)),(y-=_)<0&&(y=0),m-=_;return g(f),new l(f,n)}function X(e){return"number"==typeof e?function(e){if(s)return new d(BigInt(e));if(p(e)){if(e!==h(e))throw new Error(e+" is not an integer.");return new u(e)}return Y(e.toString())}(e):"string"==typeof e?Y(e):"bigint"==typeof e?new d(e):e}l.prototype.toArray=function(e){return G(this,e)},u.prototype.toArray=function(e){return G(this,e)},d.prototype.toArray=function(e){return G(this,e)},l.prototype.toString=function(t,r){if(t===e&&(t=10),10!==t||r)return $(this,t,r);for(var n,i=this.value,a=i.length,o=String(i[--a]);--a>=0;)n=String(i[a]),o+="0000000".slice(n.length)+n;return(this.sign?"-":"")+o},u.prototype.toString=function(t,r){return t===e&&(t=10),10!=t||r?$(this,t,r):String(this.value)},d.prototype.toString=u.prototype.toString,d.prototype.toJSON=l.prototype.toJSON=u.prototype.toJSON=function(){return this.toString()},l.prototype.valueOf=function(){return parseInt(this.toString(),10)},l.prototype.toJSNumber=l.prototype.valueOf,u.prototype.valueOf=function(){return this.value},u.prototype.toJSNumber=u.prototype.valueOf,d.prototype.valueOf=d.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};for(var Q=0;Q<1e3;Q++)c[Q]=X(Q),Q>0&&(c[-Q]=X(-Q));return c.one=c[1],c.zero=c[0],c.minusOne=c[-1],c.max=J,c.min=V,c.gcd=H,c.lcm=function(e,t){return e=X(e).abs(),t=X(t).abs(),e.divide(H(e,t)).multiply(t)},c.isInstance=function(e){return e instanceof l||e instanceof u||e instanceof d},c.randBetween=function(e,r,n){e=X(e),r=X(r);var i=n||Math.random,a=V(e,r),o=J(e,r).subtract(a).add(1);if(o.isSmall)return a.add(Math.floor(i()*o));for(var s=G(o,t).value,l=[],u=!0,d=0;d<s.length;d++){var p=u?s[d]+(d+1<s.length?s[d+1]/t:0):t,f=h(i()*p);l.push(f),f<s[d]&&(u=!1)}return a.add(c.fromArray(l,t,!1))},c.fromArray=function(e,t,r){return W(e.map(X),X(t||10),r)},c}();e.hasOwnProperty("exports")&&(e.exports=i),void 0===(n=function(){return i}.call(t,r,t,e))||(e.exports=n)},46892:(e,t,r)=>{var n=r(54787),i=r(24434).EventEmitter,a=r(86512),o=r(94644),s=r(2203).Stream;function c(e){for(var t=0,r=0;r<e.length;r++)t+=Math.pow(256,r)*e[r];return t}function l(e){for(var t=0,r=0;r<e.length;r++)t+=Math.pow(256,e.length-r-1)*e[r];return t}function u(e){var t=l(e);return 128&~e[0]||(t-=Math.pow(256,e.length)),t}function d(e){var t=c(e);return 128&~e[e.length-1]||(t-=Math.pow(256,e.length)),t}function p(e){var t={};return[1,2,4,8].forEach((function(r){var n=8*r;t["word"+n+"le"]=t["word"+n+"lu"]=e(r,c),t["word"+n+"ls"]=e(r,d),t["word"+n+"be"]=t["word"+n+"bu"]=e(r,l),t["word"+n+"bs"]=e(r,u)})),t.word8=t.word8u=t.word8be,t.word8s=t.word8bs,t}(t=e.exports=function(e,r){if(Buffer.isBuffer(e))return t.parse(e);var n=t.stream();return e&&e.pipe?e.pipe(n):e&&(e.on(r||"data",(function(e){n.write(e)})),e.on("end",(function(){n.end()}))),n}).stream=function(e){if(e)return t.apply(null,arguments);var r=null;function c(e,t,n){r={bytes:e,skip:n,cb:function(e){r=null,t(e)}},u()}var l=null;function u(){if(r)if("function"==typeof r)r();else{var e,t=l+r.bytes;if(f.length>=t)null==l?(e=f.splice(0,t),r.skip||(e=e.slice())):(r.skip||(e=f.slice(l,t)),l=t),r.skip?r.cb():r.cb(e)}else _&&(g=!0)}var d=n.light((function(e){function t(){g||e.next()}var n=p((function(e,r){return function(n){c(e,(function(e){m.set(n,r(e)),t()}))}}));return n.tap=function(t){e.nest(t,m.store)},n.into=function(t,r){m.get(t)||m.set(t,{});var n=m;m=o(n.get(t)),e.nest((function(){r.apply(this,arguments),this.tap((function(){m=n}))}),m.store)},n.flush=function(){m.store={},t()},n.loop=function(r){var n=!1;e.nest(!1,(function i(){this.vars=m.store,r.call(this,(function(){n=!0,t()}),m.store),this.tap(function(){n?e.next():i.call(this)}.bind(this))}),m.store)},n.buffer=function(e,r){"string"==typeof r&&(r=m.get(r)),c(r,(function(r){m.set(e,r),t()}))},n.skip=function(e){"string"==typeof e&&(e=m.get(e)),c(e,(function(){t()}))},n.scan=function(e,n){if("string"==typeof n)n=new Buffer(n);else if(!Buffer.isBuffer(n))throw new Error("search must be a Buffer or a string");var i=0;r=function(){var a=f.indexOf(n,l+i),o=a-l-i;-1!==a?(r=null,null!=l?(m.set(e,f.slice(l,l+i+o)),l+=i+o+n.length):(m.set(e,f.slice(0,i+o)),f.splice(0,i+o+n.length)),t(),u()):o=Math.max(f.length-n.length-l-i,0),i+=o},u()},n.peek=function(t){l=0,e.nest((function(){t.call(this,m.store),this.tap((function(){l=null}))}))},n}));d.writable=!0;var f=a();d.write=function(e){f.push(e),u()};var m=o(),g=!1,_=!1;return d.end=function(){_=!0},d.pipe=s.prototype.pipe,Object.getOwnPropertyNames(i.prototype).forEach((function(e){d[e]=i.prototype[e]})),d},t.parse=function(e){var t=p((function(i,a){return function(o){if(r+i<=e.length){var s=e.slice(r,r+i);r+=i,n.set(o,a(s))}else n.set(o,null);return t}})),r=0,n=o();return t.vars=n.store,t.tap=function(e){return e.call(t,n.store),t},t.into=function(e,r){n.get(e)||n.set(e,{});var i=n;return n=o(i.get(e)),r.call(t,n.store),n=i,t},t.loop=function(e){for(var r=!1,i=function(){r=!0};!1===r;)e.call(t,i,n.store);return t},t.buffer=function(i,a){"string"==typeof a&&(a=n.get(a));var o=e.slice(r,Math.min(e.length,r+a));return r+=a,n.set(i,o),t},t.skip=function(e){return"string"==typeof e&&(e=n.get(e)),r+=e,t},t.scan=function(i,a){if("string"==typeof a)a=new Buffer(a);else if(!Buffer.isBuffer(a))throw new Error("search must be a Buffer or a string");n.set(i,null);for(var o=0;o+r<=e.length-a.length+1;o++){for(var s=0;s<a.length&&e[r+o+s]===a[s];s++);if(s===a.length)break}return n.set(i,e.slice(r,r+o)),r+=o+a.length,t},t.peek=function(e){var i=r;return e.call(t,n.store),r=i,t},t.flush=function(){return n.store={},t},t.eof=function(){return r>=e.length},t}},94644:e=>{e.exports=function(e){function t(e,t){var n=r.store,i=e.split(".");i.slice(0,-1).forEach((function(e){void 0===n[e]&&(n[e]={}),n=n[e]}));var a=i[i.length-1];return 1==arguments.length?n[a]:n[a]=t}var r={get:function(e){return t(e)},set:function(e,r){return t(e,r)},store:e||{}};return r}},87813:(e,t,r)=>{"use strict";const{Buffer:n}=r(20181),i=Symbol.for("BufferList");function a(e){if(!(this instanceof a))return new a(e);a._init.call(this,e)}a._init=function(e){Object.defineProperty(this,i,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)},a.prototype._new=function(e){return new a(e)},a.prototype._offset=function(e){if(0===e)return[0,0];let t=0;for(let r=0;r<this._bufs.length;r++){const n=t+this._bufs[r].length;if(e<n||r===this._bufs.length-1)return[r,e-t];t=n}},a.prototype._reverseOffset=function(e){const t=e[0];let r=e[1];for(let e=0;e<t;e++)r+=this._bufs[e].length;return r},a.prototype.get=function(e){if(e>this.length||e<0)return;const t=this._offset(e);return this._bufs[t[0]][t[1]]},a.prototype.slice=function(e,t){return"number"==typeof e&&e<0&&(e+=this.length),"number"==typeof t&&t<0&&(t+=this.length),this.copy(null,0,e,t)},a.prototype.copy=function(e,t,r,i){if(("number"!=typeof r||r<0)&&(r=0),("number"!=typeof i||i>this.length)&&(i=this.length),r>=this.length)return e||n.alloc(0);if(i<=0)return e||n.alloc(0);const a=!!e,o=this._offset(r),s=i-r;let c=s,l=a&&t||0,u=o[1];if(0===r&&i===this.length){if(!a)return 1===this._bufs.length?this._bufs[0]:n.concat(this._bufs,this.length);for(let t=0;t<this._bufs.length;t++)this._bufs[t].copy(e,l),l+=this._bufs[t].length;return e}if(c<=this._bufs[o[0]].length-u)return a?this._bufs[o[0]].copy(e,t,u,u+c):this._bufs[o[0]].slice(u,u+c);a||(e=n.allocUnsafe(s));for(let t=o[0];t<this._bufs.length;t++){const r=this._bufs[t].length-u;if(!(c>r)){this._bufs[t].copy(e,l,u,u+c),l+=r;break}this._bufs[t].copy(e,l,u),l+=r,c-=r,u&&(u=0)}return e.length>l?e.slice(0,l):e},a.prototype.shallowSlice=function(e,t){if(e=e||0,t="number"!=typeof t?this.length:t,e<0&&(e+=this.length),t<0&&(t+=this.length),e===t)return this._new();const r=this._offset(e),n=this._offset(t),i=this._bufs.slice(r[0],n[0]+1);return 0===n[1]?i.pop():i[i.length-1]=i[i.length-1].slice(0,n[1]),0!==r[1]&&(i[0]=i[0].slice(r[1])),this._new(i)},a.prototype.toString=function(e,t,r){return this.slice(t,r).toString(e)},a.prototype.consume=function(e){if(e=Math.trunc(e),Number.isNaN(e)||e<=0)return this;for(;this._bufs.length;){if(!(e>=this._bufs[0].length)){this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift()}return this},a.prototype.duplicate=function(){const e=this._new();for(let t=0;t<this._bufs.length;t++)e.append(this._bufs[t]);return e},a.prototype.append=function(e){if(null==e)return this;if(e.buffer)this._appendBuffer(n.from(e.buffer,e.byteOffset,e.byteLength));else if(Array.isArray(e))for(let t=0;t<e.length;t++)this.append(e[t]);else if(this._isBufferList(e))for(let t=0;t<e._bufs.length;t++)this.append(e._bufs[t]);else"number"==typeof e&&(e=e.toString()),this._appendBuffer(n.from(e));return this},a.prototype._appendBuffer=function(e){this._bufs.push(e),this.length+=e.length},a.prototype.indexOf=function(e,t,r){if(void 0===r&&"string"==typeof t&&(r=t,t=void 0),"function"==typeof e||Array.isArray(e))throw new TypeError('The "value" argument must be one of type string, Buffer, BufferList, or Uint8Array.');if("number"==typeof e?e=n.from([e]):"string"==typeof e?e=n.from(e,r):this._isBufferList(e)?e=e.slice():Array.isArray(e.buffer)?e=n.from(e.buffer,e.byteOffset,e.byteLength):n.isBuffer(e)||(e=n.from(e)),t=Number(t||0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),0===e.length)return t>this.length?this.length:t;const i=this._offset(t);let a=i[0],o=i[1];for(;a<this._bufs.length;a++){const t=this._bufs[a];for(;o<t.length;){if(t.length-o>=e.length){const r=t.indexOf(e,o);if(-1!==r)return this._reverseOffset([a,r]);o=t.length-e.length+1}else{const t=this._reverseOffset([a,o]);if(this._match(t,e))return t;o++}}o=0}return-1},a.prototype._match=function(e,t){if(this.length-e<t.length)return!1;for(let r=0;r<t.length;r++)if(this.get(e+r)!==t[r])return!1;return!0},function(){const e={readDoubleBE:8,readDoubleLE:8,readFloatBE:4,readFloatLE:4,readInt32BE:4,readInt32LE:4,readUInt32BE:4,readUInt32LE:4,readInt16BE:2,readInt16LE:2,readUInt16BE:2,readUInt16LE:2,readInt8:1,readUInt8:1,readIntBE:null,readIntLE:null,readUIntBE:null,readUIntLE:null};for(const t in e)!function(t){a.prototype[t]=null===e[t]?function(e,r){return this.slice(e,e+r)[t](0,r)}:function(r=0){return this.slice(r,r+e[t])[t](0)}}(t)}(),a.prototype._isBufferList=function(e){return e instanceof a||a.isBufferList(e)},a.isBufferList=function(e){return null!=e&&e[i]},e.exports=a},44829:(e,t,r)=>{"use strict";const n=r(34198).Duplex,i=r(72017),a=r(87813);function o(e){if(!(this instanceof o))return new o(e);if("function"==typeof e){this._callback=e;const t=function(e){this._callback&&(this._callback(e),this._callback=null)}.bind(this);this.on("pipe",(function(e){e.on("error",t)})),this.on("unpipe",(function(e){e.removeListener("error",t)})),e=null}a._init.call(this,e),n.call(this)}i(o,n),Object.assign(o.prototype,a.prototype),o.prototype._new=function(e){return new o(e)},o.prototype._write=function(e,t,r){this._appendBuffer(e),"function"==typeof r&&r()},o.prototype._read=function(e){if(!this.length)return this.push(null);e=Math.min(e,this.length),this.push(this.slice(0,e)),this.consume(e)},o.prototype.end=function(e){n.prototype.end.call(this,e),this._callback&&(this._callback(null,this.slice()),this._callback=null)},o.prototype._destroy=function(e,t){this._bufs.length=0,this.length=0,t(e)},o.prototype._isBufferList=function(e){return e instanceof o||e instanceof a||o.isBufferList(e)},o.isBufferList=a.isBufferList,e.exports=o,e.exports.BufferListStream=o,e.exports.BufferList=a},7988:e=>{"use strict";e.exports=function(e){var t=e._SomePromiseArray;function r(e){var r=new t(e),n=r.promise();return r.setHowMany(1),r.setUnwrap(),r.init(),n}e.any=function(e){return r(e)},e.prototype.any=function(){return r(this)}}},28210:(e,t,r)=>{"use strict";var n;try{throw new Error}catch(e){n=e}var i=r(71065),a=r(49937),o=r(92208);function s(){this._customScheduler=!1,this._isTickUsed=!1,this._lateQueue=new a(16),this._normalQueue=new a(16),this._haveDrainedQueues=!1,this._trampolineEnabled=!0;var e=this;this.drainQueues=function(){e._drainQueues()},this._schedule=i}function c(e,t,r){this._lateQueue.push(e,t,r),this._queueTick()}function l(e,t,r){this._normalQueue.push(e,t,r),this._queueTick()}function u(e){this._normalQueue._pushOne(e),this._queueTick()}s.prototype.setScheduler=function(e){var t=this._schedule;return this._schedule=e,this._customScheduler=!0,t},s.prototype.hasCustomScheduler=function(){return this._customScheduler},s.prototype.enableTrampoline=function(){this._trampolineEnabled=!0},s.prototype.disableTrampolineIfNecessary=function(){o.hasDevTools&&(this._trampolineEnabled=!1)},s.prototype.haveItemsQueued=function(){return this._isTickUsed||this._haveDrainedQueues},s.prototype.fatalError=function(e,t){t?(process.stderr.write("Fatal "+(e instanceof Error?e.stack:e)+"\n"),process.exit(2)):this.throwLater(e)},s.prototype.throwLater=function(e,t){if(1===arguments.length&&(t=e,e=function(){throw t}),"undefined"!=typeof setTimeout)setTimeout((function(){e(t)}),0);else try{this._schedule((function(){e(t)}))}catch(e){throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n")}},o.hasDevTools?(s.prototype.invokeLater=function(e,t,r){this._trampolineEnabled?c.call(this,e,t,r):this._schedule((function(){setTimeout((function(){e.call(t,r)}),100)}))},s.prototype.invoke=function(e,t,r){this._trampolineEnabled?l.call(this,e,t,r):this._schedule((function(){e.call(t,r)}))},s.prototype.settlePromises=function(e){this._trampolineEnabled?u.call(this,e):this._schedule((function(){e._settlePromises()}))}):(s.prototype.invokeLater=c,s.prototype.invoke=l,s.prototype.settlePromises=u),s.prototype._drainQueue=function(e){for(;e.length()>0;){var t=e.shift();if("function"==typeof t){var r=e.shift(),n=e.shift();t.call(r,n)}else t._settlePromises()}},s.prototype._drainQueues=function(){this._drainQueue(this._normalQueue),this._reset(),this._haveDrainedQueues=!0,this._drainQueue(this._lateQueue)},s.prototype._queueTick=function(){this._isTickUsed||(this._isTickUsed=!0,this._schedule(this.drainQueues))},s.prototype._reset=function(){this._isTickUsed=!1},e.exports=s,e.exports.firstLineError=n},54271:e=>{"use strict";e.exports=function(e,t,r,n){var i=!1,a=function(e,t){this._reject(t)},o=function(e,t){t.promiseRejectionQueued=!0,t.bindingPromise._then(a,a,null,this,e)},s=function(e,t){50397184&this._bitField||this._resolveCallback(t.target)},c=function(e,t){t.promiseRejectionQueued||this._reject(e)};e.prototype.bind=function(a){i||(i=!0,e.prototype._propagateFrom=n.propagateFromFunction(),e.prototype._boundValue=n.boundValueFunction());var l=r(a),u=new e(t);u._propagateFrom(this,1);var d=this._target();if(u._setBoundTo(l),l instanceof e){var p={promiseRejectionQueued:!1,promise:u,target:d,bindingPromise:l};d._then(t,o,void 0,u,p),l._then(s,c,void 0,u,p),u._setOnCancel(l)}else u._resolveCallback(d);return u},e.prototype._setBoundTo=function(e){void 0!==e?(this._bitField=2097152|this._bitField,this._boundTo=e):this._bitField=-2097153&this._bitField},e.prototype._isBound=function(){return!(2097152&~this._bitField)},e.bind=function(t,r){return e.resolve(r).bind(t)}}},51007:(e,t,r)=>{"use strict";var n;"undefined"!=typeof Promise&&(n=Promise);var i=r(39979)();i.noConflict=function(){try{Promise===i&&(Promise=n)}catch(e){}return i},e.exports=i},31675:(e,t,r)=>{"use strict";var n=Object.create;if(n){var i=n(null),a=n(null);i[" size"]=a[" size"]=0}e.exports=function(e){var t,n,o=r(92208),s=o.canEvaluate,c=o.isIdentifier,l=function(e){return new Function("ensureMethod"," \n return function(obj) { \n 'use strict' \n var len = this.length; \n ensureMethod(obj, 'methodName'); \n switch(len) { \n case 1: return obj.methodName(this[0]); \n case 2: return obj.methodName(this[0], this[1]); \n case 3: return obj.methodName(this[0], this[1], this[2]); \n case 0: return obj.methodName(); \n default: \n return obj.methodName.apply(obj, this); \n } \n }; \n ".replace(/methodName/g,e))(p)},u=function(e){return new Function("obj"," \n 'use strict'; \n return obj.propertyName; \n ".replace("propertyName",e))},d=function(e,t,r){var n=r[e];if("function"!=typeof n){if(!c(e))return null;if(n=t(e),r[e]=n,r[" size"]++,r[" size"]>512){for(var i=Object.keys(r),a=0;a<256;++a)delete r[i[a]];r[" size"]=i.length-256}}return n};function p(t,r){var n;if(null!=t&&(n=t[r]),"function"!=typeof n){var i="Object "+o.classString(t)+" has no method '"+o.toString(r)+"'";throw new e.TypeError(i)}return n}function f(e){return p(e,this.pop()).apply(e,this)}function m(e){return e[this]}function g(e){var t=+this;return t<0&&(t=Math.max(0,t+e.length)),e[t]}t=function(e){return d(e,l,i)},n=function(e){return d(e,u,a)},e.prototype.call=function(e){for(var r=arguments.length,n=new Array(Math.max(r-1,0)),i=1;i<r;++i)n[i-1]=arguments[i];if(s){var a=t(e);if(null!==a)return this._then(a,void 0,void 0,n,void 0)}return n.push(e),this._then(f,void 0,void 0,n,void 0)},e.prototype.get=function(e){var t;if("number"==typeof e)t=g;else if(s){var r=n(e);t=null!==r?r:m}else t=m;return this._then(t,void 0,void 0,e,void 0)}}},2994:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i){var a=r(92208),o=a.tryCatch,s=a.errorObj,c=e._async;e.prototype.break=e.prototype.cancel=function(){if(!i.cancellation())return this._warn("cancellation is disabled");for(var e=this,t=e;e._isCancellable();){if(!e._cancelBy(t)){t._isFollowing()?t._followee().cancel():t._cancelBranched();break}var r=e._cancellationParent;if(null==r||!r._isCancellable()){e._isFollowing()?e._followee().cancel():e._cancelBranched();break}e._isFollowing()&&e._followee().cancel(),e._setWillBeCancelled(),t=e,e=r}},e.prototype._branchHasCancelled=function(){this._branchesRemainingToCancel--},e.prototype._enoughBranchesHaveCancelled=function(){return void 0===this._branchesRemainingToCancel||this._branchesRemainingToCancel<=0},e.prototype._cancelBy=function(e){return e===this?(this._branchesRemainingToCancel=0,this._invokeOnCancel(),!0):(this._branchHasCancelled(),!!this._enoughBranchesHaveCancelled()&&(this._invokeOnCancel(),!0))},e.prototype._cancelBranched=function(){this._enoughBranchesHaveCancelled()&&this._cancel()},e.prototype._cancel=function(){this._isCancellable()&&(this._setCancelled(),c.invoke(this._cancelPromises,this,void 0))},e.prototype._cancelPromises=function(){this._length()>0&&this._settlePromises()},e.prototype._unsetOnCancel=function(){this._onCancelField=void 0},e.prototype._isCancellable=function(){return this.isPending()&&!this._isCancelled()},e.prototype.isCancellable=function(){return this.isPending()&&!this.isCancelled()},e.prototype._doInvokeOnCancel=function(e,t){if(a.isArray(e))for(var r=0;r<e.length;++r)this._doInvokeOnCancel(e[r],t);else if(void 0!==e)if("function"==typeof e){if(!t){var n=o(e).call(this._boundValue());n===s&&(this._attachExtraTrace(n.e),c.throwLater(n.e))}}else e._resultCancelled(this)},e.prototype._invokeOnCancel=function(){var e=this._onCancel();this._unsetOnCancel(),c.invoke(this._doInvokeOnCancel,this,e)},e.prototype._invokeInternalOnCancel=function(){this._isCancellable()&&(this._doInvokeOnCancel(this._onCancel(),!0),this._unsetOnCancel())},e.prototype._resultCancelled=function(){this.cancel()}}},91674:(e,t,r)=>{"use strict";e.exports=function(e){var t=r(92208),n=r(7585).keys,i=t.tryCatch,a=t.errorObj;return function(r,o,s){return function(c){var l=s._boundValue();e:for(var u=0;u<r.length;++u){var d=r[u];if(d===Error||null!=d&&d.prototype instanceof Error){if(c instanceof d)return i(o).call(l,c)}else if("function"==typeof d){var p=i(d).call(l,c);if(p===a)return p;if(p)return i(o).call(l,c)}else if(t.isObject(c)){for(var f=n(d),m=0;m<f.length;++m){var g=f[m];if(d[g]!=c[g])continue e}return i(o).call(l,c)}}return e}}}},30297:e=>{"use strict";e.exports=function(e){var t=!1,r=[];function n(){this._trace=new n.CapturedTrace(i())}function i(){var e=r.length-1;if(e>=0)return r[e]}return e.prototype._promiseCreated=function(){},e.prototype._pushContext=function(){},e.prototype._popContext=function(){return null},e._peekContext=e.prototype._peekContext=function(){},n.prototype._pushContext=function(){void 0!==this._trace&&(this._trace._promiseCreated=null,r.push(this._trace))},n.prototype._popContext=function(){if(void 0!==this._trace){var e=r.pop(),t=e._promiseCreated;return e._promiseCreated=null,t}return null},n.CapturedTrace=null,n.create=function(){if(t)return new n},n.deactivateLongStackTraces=function(){},n.activateLongStackTraces=function(){var r=e.prototype._pushContext,a=e.prototype._popContext,o=e._peekContext,s=e.prototype._peekContext,c=e.prototype._promiseCreated;n.deactivateLongStackTraces=function(){e.prototype._pushContext=r,e.prototype._popContext=a,e._peekContext=o,e.prototype._peekContext=s,e.prototype._promiseCreated=c,t=!1},t=!0,e.prototype._pushContext=n.prototype._pushContext,e.prototype._popContext=n.prototype._popContext,e._peekContext=e.prototype._peekContext=i,e.prototype._promiseCreated=function(){var e=this._peekContext();e&&null==e._promiseCreated&&(e._promiseCreated=this)}},n}},6636:(e,t,r)=>{"use strict";e.exports=function(e,t){var n,i,a,o=e._getDomain,s=e._async,c=r(90403).Warning,l=r(92208),u=l.canAttachTrace,d=/[\\\/]bluebird[\\\/]js[\\\/](release|debug|instrumented)/,p=/\((?:timers\.js):\d+:\d+\)/,f=/[\/<\(](.+?):(\d+):(\d+)\)?\s*$/,m=null,g=null,_=!1,h=!(0==l.env("BLUEBIRD_DEBUG")||!l.env("BLUEBIRD_DEBUG")&&"development"!==l.env("NODE_ENV")),y=!(0==l.env("BLUEBIRD_WARNINGS")||!h&&!l.env("BLUEBIRD_WARNINGS")),v=!(0==l.env("BLUEBIRD_LONG_STACK_TRACES")||!h&&!l.env("BLUEBIRD_LONG_STACK_TRACES")),b=0!=l.env("BLUEBIRD_W_FORGOTTEN_RETURN")&&(y||!!l.env("BLUEBIRD_W_FORGOTTEN_RETURN"));e.prototype.suppressUnhandledRejections=function(){var e=this._target();e._bitField=-1048577&e._bitField|524288},e.prototype._ensurePossibleRejectionHandled=function(){524288&this._bitField||(this._setRejectionIsUnhandled(),s.invokeLater(this._notifyUnhandledRejection,this,void 0))},e.prototype._notifyUnhandledRejectionIsHandled=function(){q("rejectionHandled",n,void 0,this)},e.prototype._setReturnedNonUndefined=function(){this._bitField=268435456|this._bitField},e.prototype._returnedNonUndefined=function(){return!!(268435456&this._bitField)},e.prototype._notifyUnhandledRejection=function(){if(this._isRejectionUnhandled()){var e=this._settledValue();this._setUnhandledRejectionIsNotified(),q("unhandledRejection",i,e,this)}},e.prototype._setUnhandledRejectionIsNotified=function(){this._bitField=262144|this._bitField},e.prototype._unsetUnhandledRejectionIsNotified=function(){this._bitField=-262145&this._bitField},e.prototype._isUnhandledRejectionNotified=function(){return(262144&this._bitField)>0},e.prototype._setRejectionIsUnhandled=function(){this._bitField=1048576|this._bitField},e.prototype._unsetRejectionIsUnhandled=function(){this._bitField=-1048577&this._bitField,this._isUnhandledRejectionNotified()&&(this._unsetUnhandledRejectionIsNotified(),this._notifyUnhandledRejectionIsHandled())},e.prototype._isRejectionUnhandled=function(){return(1048576&this._bitField)>0},e.prototype._warn=function(e,t,r){return j(e,t,r||this)},e.onPossiblyUnhandledRejection=function(e){var t=o();i="function"==typeof e?null===t?e:l.domainBind(t,e):void 0},e.onUnhandledRejectionHandled=function(e){var t=o();n="function"==typeof e?null===t?e:l.domainBind(t,e):void 0};var k=function(){};e.longStackTraces=function(){if(s.haveItemsQueued()&&!Y.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");if(!Y.longStackTraces&&V()){var r=e.prototype._captureStackTrace,n=e.prototype._attachExtraTrace;Y.longStackTraces=!0,k=function(){if(s.haveItemsQueued()&&!Y.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");e.prototype._captureStackTrace=r,e.prototype._attachExtraTrace=n,t.deactivateLongStackTraces(),s.enableTrampoline(),Y.longStackTraces=!1},e.prototype._captureStackTrace=M,e.prototype._attachExtraTrace=L,t.activateLongStackTraces(),s.disableTrampolineIfNecessary()}},e.hasLongStackTraces=function(){return Y.longStackTraces&&V()};var x=function(){try{if("function"==typeof CustomEvent){var e=new CustomEvent("CustomEvent");return l.global.dispatchEvent(e),function(e,t){var r=new CustomEvent(e.toLowerCase(),{detail:t,cancelable:!0});return!l.global.dispatchEvent(r)}}if("function"==typeof Event){e=new Event("CustomEvent");return l.global.dispatchEvent(e),function(e,t){var r=new Event(e.toLowerCase(),{cancelable:!0});return r.detail=t,!l.global.dispatchEvent(r)}}return(e=document.createEvent("CustomEvent")).initCustomEvent("testingtheevent",!1,!0,{}),l.global.dispatchEvent(e),function(e,t){var r=document.createEvent("CustomEvent");return r.initCustomEvent(e.toLowerCase(),!1,!0,t),!l.global.dispatchEvent(r)}}catch(e){}return function(){return!1}}(),E=l.isNode?function(){return process.emit.apply(process,arguments)}:l.global?function(e){var t="on"+e.toLowerCase(),r=l.global[t];return!!r&&(r.apply(l.global,[].slice.call(arguments,1)),!0)}:function(){return!1};function S(e,t){return{promise:t}}var D={promiseCreated:S,promiseFulfilled:S,promiseRejected:S,promiseResolved:S,promiseCancelled:S,promiseChained:function(e,t,r){return{promise:t,child:r}},warning:function(e,t){return{warning:t}},unhandledRejection:function(e,t,r){return{reason:t,promise:r}},rejectionHandled:S},w=function(e){var t=!1;try{t=E.apply(null,arguments)}catch(e){s.throwLater(e),t=!0}var r=!1;try{r=x(e,D[e].apply(null,arguments))}catch(e){s.throwLater(e),r=!0}return r||t};function T(){return!1}function C(e,t,r){var n=this;try{e(t,r,(function(e){if("function"!=typeof e)throw new TypeError("onCancel must be a function, got: "+l.toString(e));n._attachCancellationCallback(e)}))}catch(e){return e}}function A(e){if(!this._isCancellable())return this;var t=this._onCancel();void 0!==t?l.isArray(t)?t.push(e):this._setOnCancel([t,e]):this._setOnCancel(e)}function N(){return this._onCancelField}function P(e){this._onCancelField=e}function I(){this._cancellationParent=void 0,this._onCancelField=void 0}function F(e,t){if(1&t){this._cancellationParent=e;var r=e._branchesRemainingToCancel;void 0===r&&(r=0),e._branchesRemainingToCancel=r+1}2&t&&e._isBound()&&this._setBoundTo(e._boundTo)}e.config=function(t){if("longStackTraces"in(t=Object(t))&&(t.longStackTraces?e.longStackTraces():!t.longStackTraces&&e.hasLongStackTraces()&&k()),"warnings"in t){var r=t.warnings;Y.warnings=!!r,b=Y.warnings,l.isObject(r)&&"wForgottenReturn"in r&&(b=!!r.wForgottenReturn)}if("cancellation"in t&&t.cancellation&&!Y.cancellation){if(s.haveItemsQueued())throw new Error("cannot enable cancellation after promises are in use");e.prototype._clearCancellationData=I,e.prototype._propagateFrom=F,e.prototype._onCancel=N,e.prototype._setOnCancel=P,e.prototype._attachCancellationCallback=A,e.prototype._execute=C,O=F,Y.cancellation=!0}return"monitoring"in t&&(t.monitoring&&!Y.monitoring?(Y.monitoring=!0,e.prototype._fireEvent=w):!t.monitoring&&Y.monitoring&&(Y.monitoring=!1,e.prototype._fireEvent=T)),e},e.prototype._fireEvent=T,e.prototype._execute=function(e,t,r){try{e(t,r)}catch(e){return e}},e.prototype._onCancel=function(){},e.prototype._setOnCancel=function(e){},e.prototype._attachCancellationCallback=function(e){},e.prototype._captureStackTrace=function(){},e.prototype._attachExtraTrace=function(){},e.prototype._clearCancellationData=function(){},e.prototype._propagateFrom=function(e,t){};var O=function(e,t){2&t&&e._isBound()&&this._setBoundTo(e._boundTo)};function R(){var t=this._boundTo;return void 0!==t&&t instanceof e?t.isFulfilled()?t.value():void 0:t}function M(){this._trace=new G(this._peekContext())}function L(e,t){if(u(e)){var r=this._trace;if(void 0!==r&&t&&(r=r._parent),void 0!==r)r.attachExtraTrace(e);else if(!e.__stackCleaned__){var n=z(e);l.notEnumerableProp(e,"stack",n.message+"\n"+n.stack.join("\n")),l.notEnumerableProp(e,"__stackCleaned__",!0)}}}function j(t,r,n){if(Y.warnings){var i,a=new c(t);if(r)n._attachExtraTrace(a);else if(Y.longStackTraces&&(i=e._peekContext()))i.attachExtraTrace(a);else{var o=z(a);a.stack=o.message+"\n"+o.stack.join("\n")}w("warning",a)||U(a,"",!0)}}function B(e){for(var t=[],r=0;r<e.length;++r){var n=e[r],i=" (No stack trace)"===n||m.test(n),a=i&&H(n);i&&!a&&(_&&" "!==n.charAt(0)&&(n=" "+n),t.push(n))}return t}function z(e){var t=e.stack,r=e.toString();return t="string"==typeof t&&t.length>0?function(e){for(var t=e.stack.replace(/\s+$/g,"").split("\n"),r=0;r<t.length;++r){var n=t[r];if(" (No stack trace)"===n||m.test(n))break}return r>0&&"SyntaxError"!=e.name&&(t=t.slice(r)),t}(e):[" (No stack trace)"],{message:r,stack:"SyntaxError"==e.name?t:B(t)}}function U(e,t,r){if("undefined"!=typeof console){var n;if(l.isObject(e)){var i=e.stack;n=t+g(i,e)}else n=t+String(e);"function"==typeof a?a(n,r):"function"!=typeof console.log&&"object"!=typeof console.log||console.log(n)}}function q(e,t,r,n){var i=!1;try{"function"==typeof t&&(i=!0,"rejectionHandled"===e?t(n):t(r,n))}catch(e){s.throwLater(e)}"unhandledRejection"===e?w(e,r,n)||i||U(r,"Unhandled rejection "):w(e,n)}function J(e){var t;if("function"==typeof e)t="[function "+(e.name||"anonymous")+"]";else{t=e&&"function"==typeof e.toString?e.toString():l.toString(e);if(/\[object [a-zA-Z0-9$_]+\]/.test(t))try{t=JSON.stringify(e)}catch(e){}0===t.length&&(t="(empty array)")}return"(<"+function(e){var t=41;if(e.length<t)return e;return e.substr(0,t-3)+"..."}(t)+">, no stack trace)"}function V(){return"function"==typeof $}var H=function(){return!1},K=/[\/<\(]([^:\/]+):(\d+):(?:\d+)\)?\s*$/;function W(e){var t=e.match(K);if(t)return{fileName:t[1],line:parseInt(t[2],10)}}function G(e){this._parent=e,this._promisesCreated=0;var t=this._length=1+(void 0===e?0:e._length);$(this,G),t>32&&this.uncycle()}l.inherits(G,Error),t.CapturedTrace=G,G.prototype.uncycle=function(){var e=this._length;if(!(e<2)){for(var t=[],r={},n=0,i=this;void 0!==i;++n)t.push(i),i=i._parent;for(n=(e=this._length=n)-1;n>=0;--n){var a=t[n].stack;void 0===r[a]&&(r[a]=n)}for(n=0;n<e;++n){var o=r[t[n].stack];if(void 0!==o&&o!==n){o>0&&(t[o-1]._parent=void 0,t[o-1]._length=1),t[n]._parent=void 0,t[n]._length=1;var s=n>0?t[n-1]:this;o<e-1?(s._parent=t[o+1],s._parent.uncycle(),s._length=s._parent._length+1):(s._parent=void 0,s._length=1);for(var c=s._length+1,l=n-2;l>=0;--l)t[l]._length=c,c++;return}}}},G.prototype.attachExtraTrace=function(e){if(!e.__stackCleaned__){this.uncycle();for(var t=z(e),r=t.message,n=[t.stack],i=this;void 0!==i;)n.push(B(i.stack.split("\n"))),i=i._parent;!function(e){for(var t=e[0],r=1;r<e.length;++r){for(var n=e[r],i=t.length-1,a=t[i],o=-1,s=n.length-1;s>=0;--s)if(n[s]===a){o=s;break}for(s=o;s>=0;--s){var c=n[s];if(t[i]!==c)break;t.pop(),i--}t=n}}(n),function(e){for(var t=0;t<e.length;++t)(0===e[t].length||t+1<e.length&&e[t][0]===e[t+1][0])&&(e.splice(t,1),t--)}(n),l.notEnumerableProp(e,"stack",function(e,t){for(var r=0;r<t.length-1;++r)t[r].push("From previous event:"),t[r]=t[r].join("\n");return r<t.length&&(t[r]=t[r].join("\n")),e+"\n"+t.join("\n")}(r,n)),l.notEnumerableProp(e,"__stackCleaned__",!0)}};var $=function(){var e=/^\s*at\s*/,t=function(e,t){return"string"==typeof e?e:void 0!==t.name&&void 0!==t.message?t.toString():J(t)};if("number"==typeof Error.stackTraceLimit&&"function"==typeof Error.captureStackTrace){Error.stackTraceLimit+=6,m=e,g=t;var r=Error.captureStackTrace;return H=function(e){return d.test(e)},function(e,t){Error.stackTraceLimit+=6,r(e,t),Error.stackTraceLimit-=6}}var n,i=new Error;if("string"==typeof i.stack&&i.stack.split("\n")[0].indexOf("stackDetection@")>=0)return m=/@/,g=t,_=!0,function(e){e.stack=(new Error).stack};try{throw new Error}catch(e){n="stack"in e}return!("stack"in i)&&n&&"number"==typeof Error.stackTraceLimit?(m=e,g=t,function(e){Error.stackTraceLimit+=6;try{throw new Error}catch(t){e.stack=t.stack}Error.stackTraceLimit-=6}):(g=function(e,t){return"string"==typeof e?e:"object"!=typeof t&&"function"!=typeof t||void 0===t.name||void 0===t.message?J(t):t.toString()},null)}();"undefined"!=typeof console&&void 0!==console.warn&&(a=function(e){console.warn(e)},l.isNode&&process.stderr.isTTY?a=function(e,t){var r=t?"":"";console.warn(r+e+"\n")}:l.isNode||"string"!=typeof(new Error).stack||(a=function(e,t){console.warn("%c"+e,t?"color: darkorange":"color: red")}));var Y={warnings:y,longStackTraces:!1,cancellation:!1,monitoring:!1};return v&&e.longStackTraces(),{longStackTraces:function(){return Y.longStackTraces},warnings:function(){return Y.warnings},cancellation:function(){return Y.cancellation},monitoring:function(){return Y.monitoring},propagateFromFunction:function(){return O},boundValueFunction:function(){return R},checkForgottenReturns:function(e,t,r,n,i){if(void 0===e&&null!==t&&b){if(void 0!==i&&i._returnedNonUndefined())return;if(!(65535&n._bitField))return;r&&(r+=" ");var a="",o="";if(t._trace){for(var s=t._trace.stack.split("\n"),c=B(s),l=c.length-1;l>=0;--l){var u=c[l];if(!p.test(u)){var d=u.match(f);d&&(a="at "+d[1]+":"+d[2]+":"+d[3]+" ");break}}if(c.length>0){var m=c[0];for(l=0;l<s.length;++l)if(s[l]===m){l>0&&(o="\n"+s[l-1]);break}}}var g="a promise was created in a "+r+"handler "+a+"but was not returned from it, see http://goo.gl/rRqMUw"+o;n._warn(g,!0,t)}},setBounds:function(e,t){if(V()){for(var r,n,i=e.stack.split("\n"),a=t.stack.split("\n"),o=-1,s=-1,c=0;c<i.length;++c){if(l=W(i[c])){r=l.fileName,o=l.line;break}}for(c=0;c<a.length;++c){var l;if(l=W(a[c])){n=l.fileName,s=l.line;break}}o<0||s<0||!r||!n||r!==n||o>=s||(H=function(e){if(d.test(e))return!0;var t=W(e);return!!(t&&t.fileName===r&&o<=t.line&&t.line<=s)})}},warn:j,deprecated:function(e,t){var r=e+" is deprecated and will be removed in a future version.";return t&&(r+=" Use "+t+" instead."),j(r)},CapturedTrace:G,fireDomEvent:x,fireGlobalEvent:E}}},56774:e=>{"use strict";e.exports=function(e){function t(){return this.value}function r(){throw this.reason}e.prototype.return=e.prototype.thenReturn=function(r){return r instanceof e&&r.suppressUnhandledRejections(),this._then(t,void 0,void 0,{value:r},void 0)},e.prototype.throw=e.prototype.thenThrow=function(e){return this._then(r,void 0,void 0,{reason:e},void 0)},e.prototype.catchThrow=function(e){if(arguments.length<=1)return this._then(void 0,r,void 0,{reason:e},void 0);var t=arguments[1];return this.caught(e,(function(){throw t}))},e.prototype.catchReturn=function(r){if(arguments.length<=1)return r instanceof e&&r.suppressUnhandledRejections(),this._then(void 0,t,void 0,{value:r},void 0);var n=arguments[1];n instanceof e&&n.suppressUnhandledRejections();return this.caught(r,(function(){return n}))}}},93425:e=>{"use strict";e.exports=function(e,t){var r=e.reduce,n=e.all;function i(){return n(this)}e.prototype.each=function(e){return r(this,e,t,0)._then(i,void 0,void 0,this,void 0)},e.prototype.mapSeries=function(e){return r(this,e,t,t)},e.each=function(e,n){return r(e,n,t,0)._then(i,void 0,void 0,e,void 0)},e.mapSeries=function(e,n){return r(e,n,t,t)}}},90403:(e,t,r)=>{"use strict";var n,i,a=r(7585),o=a.freeze,s=r(92208),c=s.inherits,l=s.notEnumerableProp;function u(e,t){function r(n){if(!(this instanceof r))return new r(n);l(this,"message","string"==typeof n?n:t),l(this,"name",e),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):Error.call(this)}return c(r,Error),r}var d=u("Warning","warning"),p=u("CancellationError","cancellation error"),f=u("TimeoutError","timeout error"),m=u("AggregateError","aggregate error");try{n=TypeError,i=RangeError}catch(e){n=u("TypeError","type error"),i=u("RangeError","range error")}for(var g="join pop push shift unshift slice filter forEach some every map indexOf lastIndexOf reduce reduceRight sort reverse".split(" "),_=0;_<g.length;++_)"function"==typeof Array.prototype[g[_]]&&(m.prototype[g[_]]=Array.prototype[g[_]]);a.defineProperty(m.prototype,"length",{value:0,configurable:!1,writable:!0,enumerable:!0}),m.prototype.isOperational=!0;var h=0;function y(e){if(!(this instanceof y))return new y(e);l(this,"name","OperationalError"),l(this,"message",e),this.cause=e,this.isOperational=!0,e instanceof Error?(l(this,"message",e.message),l(this,"stack",e.stack)):Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}m.prototype.toString=function(){var e=Array(4*h+1).join(" "),t="\n"+e+"AggregateError of:\n";h++,e=Array(4*h+1).join(" ");for(var r=0;r<this.length;++r){for(var n=this[r]===this?"[Circular AggregateError]":this[r]+"",i=n.split("\n"),a=0;a<i.length;++a)i[a]=e+i[a];t+=(n=i.join("\n"))+"\n"}return h--,t},c(y,Error);var v=Error.__BluebirdErrorTypes__;v||(v=o({CancellationError:p,TimeoutError:f,OperationalError:y,RejectionError:y,AggregateError:m}),a.defineProperty(Error,"__BluebirdErrorTypes__",{value:v,writable:!1,enumerable:!1,configurable:!1})),e.exports={Error,TypeError:n,RangeError:i,CancellationError:v.CancellationError,OperationalError:v.OperationalError,TimeoutError:v.TimeoutError,AggregateError:v.AggregateError,Warning:d}},7585:e=>{var t=function(){"use strict";return void 0===this}();if(t)e.exports={freeze:Object.freeze,defineProperty:Object.defineProperty,getDescriptor:Object.getOwnPropertyDescriptor,keys:Object.keys,names:Object.getOwnPropertyNames,getPrototypeOf:Object.getPrototypeOf,isArray:Array.isArray,isES5:t,propertyIsWritable:function(e,t){var r=Object.getOwnPropertyDescriptor(e,t);return!(r&&!r.writable&&!r.set)}};else{var r={}.hasOwnProperty,n={}.toString,i={}.constructor.prototype,a=function(e){var t=[];for(var n in e)r.call(e,n)&&t.push(n);return t};e.exports={isArray:function(e){try{return"[object Array]"===n.call(e)}catch(e){return!1}},keys:a,names:a,defineProperty:function(e,t,r){return e[t]=r.value,e},getDescriptor:function(e,t){return{value:e[t]}},freeze:function(e){return e},getPrototypeOf:function(e){try{return Object(e).constructor.prototype}catch(e){return i}},isES5:t,propertyIsWritable:function(){return!0}}}},72730:e=>{"use strict";e.exports=function(e,t){var r=e.map;e.prototype.filter=function(e,n){return r(this,e,n,t)},e.filter=function(e,n,i){return r(e,n,i,t)}}},90401:(e,t,r)=>{"use strict";e.exports=function(e,t){var n=r(92208),i=e.CancellationError,a=n.errorObj;function o(e,t,r){this.promise=e,this.type=t,this.handler=r,this.called=!1,this.cancelPromise=null}function s(e){this.finallyHandler=e}function c(e,t){return null!=e.cancelPromise&&(arguments.length>1?e.cancelPromise._reject(t):e.cancelPromise._cancel(),e.cancelPromise=null,!0)}function l(){return d.call(this,this.promise._target()._settledValue())}function u(e){if(!c(this,e))return a.e=e,a}function d(r){var n=this.promise,o=this.handler;if(!this.called){this.called=!0;var d=this.isFinallyHandler()?o.call(n._boundValue()):o.call(n._boundValue(),r);if(void 0!==d){n._setReturnedNonUndefined();var p=t(d,n);if(p instanceof e){if(null!=this.cancelPromise){if(p._isCancelled()){var f=new i("late cancellation observer");return n._attachExtraTrace(f),a.e=f,a}p.isPending()&&p._attachCancellationCallback(new s(this))}return p._then(l,u,void 0,this,void 0)}}}return n.isRejected()?(c(this),a.e=r,a):(c(this),r)}return o.prototype.isFinallyHandler=function(){return 0===this.type},s.prototype._resultCancelled=function(){c(this.finallyHandler)},e.prototype._passThrough=function(e,t,r,n){return"function"!=typeof e?this.then():this._then(r,n,void 0,new o(this,t,e),void 0)},e.prototype.lastly=e.prototype.finally=function(e){return this._passThrough(e,0,d,d)},e.prototype.tap=function(e){return this._passThrough(e,1,d)},o}},65734:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=r(90403).TypeError,c=r(92208),l=c.errorObj,u=c.tryCatch,d=[];function p(t,r,i,a){if(o.cancellation()){var s=new e(n),c=this._finallyPromise=new e(n);this._promise=s.lastly((function(){return c})),s._captureStackTrace(),s._setOnCancel(this)}else{(this._promise=new e(n))._captureStackTrace()}this._stack=a,this._generatorFunction=t,this._receiver=r,this._generator=void 0,this._yieldHandlers="function"==typeof i?[i].concat(d):d,this._yieldedPromise=null,this._cancellationPhase=!1}c.inherits(p,a),p.prototype._isResolved=function(){return null===this._promise},p.prototype._cleanup=function(){this._promise=this._generator=null,o.cancellation()&&null!==this._finallyPromise&&(this._finallyPromise._fulfill(),this._finallyPromise=null)},p.prototype._promiseCancelled=function(){if(!this._isResolved()){var t;if(void 0!==this._generator.return)this._promise._pushContext(),t=u(this._generator.return).call(this._generator,void 0),this._promise._popContext();else{var r=new e.CancellationError("generator .return() sentinel");e.coroutine.returnSentinel=r,this._promise._attachExtraTrace(r),this._promise._pushContext(),t=u(this._generator.throw).call(this._generator,r),this._promise._popContext()}this._cancellationPhase=!0,this._yieldedPromise=null,this._continue(t)}},p.prototype._promiseFulfilled=function(e){this._yieldedPromise=null,this._promise._pushContext();var t=u(this._generator.next).call(this._generator,e);this._promise._popContext(),this._continue(t)},p.prototype._promiseRejected=function(e){this._yieldedPromise=null,this._promise._attachExtraTrace(e),this._promise._pushContext();var t=u(this._generator.throw).call(this._generator,e);this._promise._popContext(),this._continue(t)},p.prototype._resultCancelled=function(){if(this._yieldedPromise instanceof e){var t=this._yieldedPromise;this._yieldedPromise=null,t.cancel()}},p.prototype.promise=function(){return this._promise},p.prototype._run=function(){this._generator=this._generatorFunction.call(this._receiver),this._receiver=this._generatorFunction=void 0,this._promiseFulfilled(void 0)},p.prototype._continue=function(t){var r=this._promise;if(t===l)return this._cleanup(),this._cancellationPhase?r.cancel():r._rejectCallback(t.e,!1);var n=t.value;if(!0===t.done)return this._cleanup(),this._cancellationPhase?r.cancel():r._resolveCallback(n);var a=i(n,this._promise);if(a instanceof e||(a=function(t,r,n){for(var a=0;a<r.length;++a){n._pushContext();var o=u(r[a])(t);if(n._popContext(),o===l){n._pushContext();var s=e.reject(l.e);return n._popContext(),s}var c=i(o,n);if(c instanceof e)return c}return null}(a,this._yieldHandlers,this._promise),null!==a)){var o=(a=a._target())._bitField;50397184&o?33554432&o?e._async.invoke(this._promiseFulfilled,this,a._value()):16777216&o?e._async.invoke(this._promiseRejected,this,a._reason()):this._promiseCancelled():(this._yieldedPromise=a,a._proxy(this,null))}else this._promiseRejected(new s("A value %s was yielded that could not be treated as a promise\n\n See http://goo.gl/MqrFmX\n\n".replace("%s",n)+"From coroutine:\n"+this._stack.split("\n").slice(1,-7).join("\n")))},e.coroutine=function(e,t){if("function"!=typeof e)throw new s("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n");var r=Object(t).yieldHandler,n=p,i=(new Error).stack;return function(){var t=e.apply(this,arguments),a=new n(void 0,void 0,r,i),o=a.promise();return a._generator=t,a._promiseFulfilled(void 0),o}},e.coroutine.addYieldHandler=function(e){if("function"!=typeof e)throw new s("expecting a function but got "+c.classString(e));d.push(e)},e.spawn=function(r){if(o.deprecated("Promise.spawn()","Promise.coroutine()"),"function"!=typeof r)return t("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n");var n=new p(r,this),i=n.promise();return n._run(e.spawn),i}}},46564:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s,c=r(92208),l=c.canEvaluate,u=c.tryCatch,d=c.errorObj;if(l){for(var p=function(e){return new Function("value","holder"," \n 'use strict'; \n holder.pIndex = value; \n holder.checkFulfillment(this); \n ".replace(/Index/g,e))},f=function(e){return new Function("promise","holder"," \n 'use strict'; \n holder.pIndex = promise; \n ".replace(/Index/g,e))},m=function(t){for(var r=new Array(t),n=0;n<r.length;++n)r[n]="this.p"+(n+1);var i=r.join(" = ")+" = null;",o="var promise;\n"+r.map((function(e){return" \n promise = "+e+"; \n if (promise instanceof Promise) { \n promise.cancel(); \n } \n "})).join("\n"),s=r.join(", "),c="Holder$"+t,l="return function(tryCatch, errorObj, Promise, async) { \n 'use strict'; \n function [TheName](fn) { \n [TheProperties] \n this.fn = fn; \n this.asyncNeeded = true; \n this.now = 0; \n } \n \n [TheName].prototype._callFunction = function(promise) { \n promise._pushContext(); \n var ret = tryCatch(this.fn)([ThePassedArguments]); \n promise._popContext(); \n if (ret === errorObj) { \n promise._rejectCallback(ret.e, false); \n } else { \n promise._resolveCallback(ret); \n } \n }; \n \n [TheName].prototype.checkFulfillment = function(promise) { \n var now = ++this.now; \n if (now === [TheTotal]) { \n if (this.asyncNeeded) { \n async.invoke(this._callFunction, this, promise); \n } else { \n this._callFunction(promise); \n } \n \n } \n }; \n \n [TheName].prototype._resultCancelled = function() { \n [CancellationCode] \n }; \n \n return [TheName]; \n }(tryCatch, errorObj, Promise, async); \n ";return l=l.replace(/\[TheName\]/g,c).replace(/\[TheTotal\]/g,t).replace(/\[ThePassedArguments\]/g,s).replace(/\[TheProperties\]/g,i).replace(/\[CancellationCode\]/g,o),new Function("tryCatch","errorObj","Promise","async",l)(u,d,e,a)},g=[],_=[],h=[],y=0;y<8;++y)g.push(m(y+1)),_.push(p(y+1)),h.push(f(y+1));s=function(e){this._reject(e)}}e.join=function(){var r,a=arguments.length-1;if(a>0&&"function"==typeof arguments[a]&&(r=arguments[a],a<=8&&l)){(x=new e(i))._captureStackTrace();for(var u=new(0,g[a-1])(r),d=_,p=0;p<a;++p){var f=n(arguments[p],x);if(f instanceof e){var m=(f=f._target())._bitField;50397184&m?33554432&m?d[p].call(x,f._value(),u):16777216&m?x._reject(f._reason()):x._cancel():(f._then(d[p],s,void 0,x,u),h[p](f,u),u.asyncNeeded=!1)}else d[p].call(x,f,u)}if(!x._isFateSealed()){if(u.asyncNeeded){var y=o();null!==y&&(u.fn=c.domainBind(y,u.fn))}x._setAsyncGuaranteed(),x._setOnCancel(u)}return x}for(var v=arguments.length,b=new Array(v),k=0;k<v;++k)b[k]=arguments[k];r&&b.pop();var x=new t(b).promise();return void 0!==r?x.spread(r):x}}},35956:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=e._getDomain,c=r(92208),l=c.tryCatch,u=c.errorObj,d=e._async;function p(e,t,r,n){this.constructor$(e),this._promise._captureStackTrace();var i=s();this._callback=null===i?t:c.domainBind(i,t),this._preservedValues=n===a?new Array(this.length()):null,this._limit=r,this._inFlight=0,this._queue=[],d.invoke(this._asyncInit,this,void 0)}function f(t,r,i,a){if("function"!=typeof r)return n("expecting a function but got "+c.classString(r));var o=0;if(void 0!==i){if("object"!=typeof i||null===i)return e.reject(new TypeError("options argument must be an object but it is "+c.classString(i)));if("number"!=typeof i.concurrency)return e.reject(new TypeError("'concurrency' must be a number but it is "+c.classString(i.concurrency)));o=i.concurrency}return new p(t,r,o="number"==typeof o&&isFinite(o)&&o>=1?o:0,a).promise()}c.inherits(p,t),p.prototype._asyncInit=function(){this._init$(void 0,-2)},p.prototype._init=function(){},p.prototype._promiseFulfilled=function(t,r){var n=this._values,a=this.length(),s=this._preservedValues,c=this._limit;if(r<0){if(n[r=-1*r-1]=t,c>=1&&(this._inFlight--,this._drainQueue(),this._isResolved()))return!0}else{if(c>=1&&this._inFlight>=c)return n[r]=t,this._queue.push(r),!1;null!==s&&(s[r]=t);var d=this._promise,p=this._callback,f=d._boundValue();d._pushContext();var m=l(p).call(f,t,r,a),g=d._popContext();if(o.checkForgottenReturns(m,g,null!==s?"Promise.filter":"Promise.map",d),m===u)return this._reject(m.e),!0;var _=i(m,this._promise);if(_ instanceof e){var h=(_=_._target())._bitField;if(!(50397184&h))return c>=1&&this._inFlight++,n[r]=_,_._proxy(this,-1*(r+1)),!1;if(!(33554432&h))return 16777216&h?(this._reject(_._reason()),!0):(this._cancel(),!0);m=_._value()}n[r]=m}return++this._totalResolved>=a&&(null!==s?this._filter(n,s):this._resolve(n),!0)},p.prototype._drainQueue=function(){for(var e=this._queue,t=this._limit,r=this._values;e.length>0&&this._inFlight<t;){if(this._isResolved())return;var n=e.pop();this._promiseFulfilled(r[n],n)}},p.prototype._filter=function(e,t){for(var r=t.length,n=new Array(r),i=0,a=0;a<r;++a)e[a]&&(n[i++]=t[a]);n.length=i,this._resolve(n)},p.prototype.preservedValues=function(){return this._preservedValues},e.prototype.map=function(e,t){return f(this,e,t,null)},e.map=function(e,t,r,n){return f(e,t,r,n)}}},6241:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a){var o=r(92208),s=o.tryCatch;e.method=function(r){if("function"!=typeof r)throw new e.TypeError("expecting a function but got "+o.classString(r));return function(){var n=new e(t);n._captureStackTrace(),n._pushContext();var i=s(r).apply(this,arguments),o=n._popContext();return a.checkForgottenReturns(i,o,"Promise.method",n),n._resolveFromSyncValue(i),n}},e.attempt=e.try=function(r){if("function"!=typeof r)return i("expecting a function but got "+o.classString(r));var n,c=new e(t);if(c._captureStackTrace(),c._pushContext(),arguments.length>1){a.deprecated("calling Promise.try with more than 1 argument");var l=arguments[1],u=arguments[2];n=o.isArray(l)?s(r).apply(u,l):s(r).call(u,l)}else n=s(r)();var d=c._popContext();return a.checkForgottenReturns(n,d,"Promise.try",c),c._resolveFromSyncValue(n),c},e.prototype._resolveFromSyncValue=function(e){e===o.errorObj?this._rejectCallback(e.e,!1):this._resolveCallback(e,!0)}}},41231:(e,t,r)=>{"use strict";var n=r(92208),i=n.maybeWrapAsError,a=r(90403).OperationalError,o=r(7585);var s=/^(?:name|message|stack|cause)$/;function c(e){var t;if(function(e){return e instanceof Error&&o.getPrototypeOf(e)===Error.prototype}(e)){(t=new a(e)).name=e.name,t.message=e.message,t.stack=e.stack;for(var r=o.keys(e),i=0;i<r.length;++i){var c=r[i];s.test(c)||(t[c]=e[c])}return t}return n.markAsOriginatingFromRejection(e),e}e.exports=function(e,t){return function(r,n){if(null!==e){if(r){var a=c(i(r));e._attachExtraTrace(a),e._reject(a)}else if(t){for(var o=arguments.length,s=new Array(Math.max(o-1,0)),l=1;l<o;++l)s[l-1]=arguments[l];e._fulfill(s)}else e._fulfill(n);e=null}}}},36340:(e,t,r)=>{"use strict";e.exports=function(e){var t=r(92208),n=e._async,i=t.tryCatch,a=t.errorObj;function o(e,r){if(!t.isArray(e))return s.call(this,e,r);var o=i(r).apply(this._boundValue(),[null].concat(e));o===a&&n.throwLater(o.e)}function s(e,t){var r=this._boundValue(),o=void 0===e?i(t).call(r,null):i(t).call(r,null,e);o===a&&n.throwLater(o.e)}function c(e,t){if(!e){var r=new Error(e+"");r.cause=e,e=r}var o=i(t).call(this._boundValue(),e);o===a&&n.throwLater(o.e)}e.prototype.asCallback=e.prototype.nodeify=function(e,t){if("function"==typeof e){var r=s;void 0!==t&&Object(t).spread&&(r=o),this._then(r,c,void 0,this,e)}return this}}},39979:(e,t,r)=>{"use strict";e.exports=function(){var t=function(){return new f("circular promise resolution chain\n\n See http://goo.gl/MqrFmX\n")},n=function(){return new C.PromiseInspection(this._target())},i=function(e){return C.reject(new f(e))};function a(){}var o,s={},c=r(92208);o=c.isNode?function(){var e=process.domain;return void 0===e&&(e=null),e}:function(){return null},c.notEnumerableProp(C,"_getDomain",o);var l=r(7585),u=r(28210),d=new u;l.defineProperty(C,"_async",{value:d});var p=r(90403),f=C.TypeError=p.TypeError;C.RangeError=p.RangeError;var m=C.CancellationError=p.CancellationError;C.TimeoutError=p.TimeoutError,C.OperationalError=p.OperationalError,C.RejectionError=p.OperationalError,C.AggregateError=p.AggregateError;var g=function(){},_={},h={},y=r(78974)(C,g),v=r(52661)(C,g,y,i,a),b=r(30297)(C),k=b.create,x=r(6636)(C,b),E=(x.CapturedTrace,r(90401)(C,y)),S=r(91674)(h),D=r(41231),w=c.errorObj,T=c.tryCatch;function C(e){this._bitField=0,this._fulfillmentHandler0=void 0,this._rejectionHandler0=void 0,this._promise0=void 0,this._receiver0=void 0,e!==g&&(!function(e,t){if("function"!=typeof t)throw new f("expecting a function but got "+c.classString(t));if(e.constructor!==C)throw new f("the promise constructor cannot be invoked directly\n\n See http://goo.gl/MqrFmX\n")}(this,e),this._resolveFromExecutor(e)),this._promiseCreated(),this._fireEvent("promiseCreated",this)}function A(e){this.promise._resolveCallback(e)}function N(e){this.promise._rejectCallback(e,!1)}function P(e){var t=new C(g);t._fulfillmentHandler0=e,t._rejectionHandler0=e,t._promise0=e,t._receiver0=e}return C.prototype.toString=function(){return"[object Promise]"},C.prototype.caught=C.prototype.catch=function(e){var t=arguments.length;if(t>1){var r,n=new Array(t-1),a=0;for(r=0;r<t-1;++r){var o=arguments[r];if(!c.isObject(o))return i("expecting an object but got A catch statement predicate "+c.classString(o));n[a++]=o}return n.length=a,e=arguments[r],this.then(void 0,S(n,e,this))}return this.then(void 0,e)},C.prototype.reflect=function(){return this._then(n,n,void 0,this,void 0)},C.prototype.then=function(e,t){if(x.warnings()&&arguments.length>0&&"function"!=typeof e&&"function"!=typeof t){var r=".then() only accepts functions but was passed: "+c.classString(e);arguments.length>1&&(r+=", "+c.classString(t)),this._warn(r)}return this._then(e,t,void 0,void 0,void 0)},C.prototype.done=function(e,t){this._then(e,t,void 0,void 0,void 0)._setIsFinal()},C.prototype.spread=function(e){return"function"!=typeof e?i("expecting a function but got "+c.classString(e)):this.all()._then(e,void 0,void 0,_,void 0)},C.prototype.toJSON=function(){var e={isFulfilled:!1,isRejected:!1,fulfillmentValue:void 0,rejectionReason:void 0};return this.isFulfilled()?(e.fulfillmentValue=this.value(),e.isFulfilled=!0):this.isRejected()&&(e.rejectionReason=this.reason(),e.isRejected=!0),e},C.prototype.all=function(){return arguments.length>0&&this._warn(".all() was passed arguments but it does not take any"),new v(this).promise()},C.prototype.error=function(e){return this.caught(c.originatesFromRejection,e)},C.getNewLibraryCopy=e.exports,C.is=function(e){return e instanceof C},C.fromNode=C.fromCallback=function(e){var t=new C(g);t._captureStackTrace();var r=arguments.length>1&&!!Object(arguments[1]).multiArgs,n=T(e)(D(t,r));return n===w&&t._rejectCallback(n.e,!0),t._isFateSealed()||t._setAsyncGuaranteed(),t},C.all=function(e){return new v(e).promise()},C.cast=function(e){var t=y(e);return t instanceof C||((t=new C(g))._captureStackTrace(),t._setFulfilled(),t._rejectionHandler0=e),t},C.resolve=C.fulfilled=C.cast,C.reject=C.rejected=function(e){var t=new C(g);return t._captureStackTrace(),t._rejectCallback(e,!0),t},C.setScheduler=function(e){if("function"!=typeof e)throw new f("expecting a function but got "+c.classString(e));return d.setScheduler(e)},C.prototype._then=function(e,t,r,n,i){var a=void 0!==i,s=a?i:new C(g),l=this._target(),u=l._bitField;a||(s._propagateFrom(this,3),s._captureStackTrace(),void 0===n&&2097152&this._bitField&&(n=50397184&u?this._boundValue():l===this?void 0:this._boundTo),this._fireEvent("promiseChained",this,s));var p=o();if(50397184&u){var f,_,h=l._settlePromiseCtx;33554432&u?(_=l._rejectionHandler0,f=e):16777216&u?(_=l._fulfillmentHandler0,f=t,l._unsetRejectionIsUnhandled()):(h=l._settlePromiseLateCancellationObserver,_=new m("late cancellation observer"),l._attachExtraTrace(_),f=t),d.invoke(h,l,{handler:null===p?f:"function"==typeof f&&c.domainBind(p,f),promise:s,receiver:n,value:_})}else l._addCallbacks(e,t,s,n,p);return s},C.prototype._length=function(){return 65535&this._bitField},C.prototype._isFateSealed=function(){return!!(117506048&this._bitField)},C.prototype._isFollowing=function(){return!(67108864&~this._bitField)},C.prototype._setLength=function(e){this._bitField=-65536&this._bitField|65535&e},C.prototype._setFulfilled=function(){this._bitField=33554432|this._bitField,this._fireEvent("promiseFulfilled",this)},C.prototype._setRejected=function(){this._bitField=16777216|this._bitField,this._fireEvent("promiseRejected",this)},C.prototype._setFollowing=function(){this._bitField=67108864|this._bitField,this._fireEvent("promiseResolved",this)},C.prototype._setIsFinal=function(){this._bitField=4194304|this._bitField},C.prototype._isFinal=function(){return(4194304&this._bitField)>0},C.prototype._unsetCancelled=function(){this._bitField=-65537&this._bitField},C.prototype._setCancelled=function(){this._bitField=65536|this._bitField,this._fireEvent("promiseCancelled",this)},C.prototype._setWillBeCancelled=function(){this._bitField=8388608|this._bitField},C.prototype._setAsyncGuaranteed=function(){d.hasCustomScheduler()||(this._bitField=134217728|this._bitField)},C.prototype._receiverAt=function(e){var t=0===e?this._receiver0:this[4*e-4+3];if(t!==s)return void 0===t&&this._isBound()?this._boundValue():t},C.prototype._promiseAt=function(e){return this[4*e-4+2]},C.prototype._fulfillmentHandlerAt=function(e){return this[4*e-4+0]},C.prototype._rejectionHandlerAt=function(e){return this[4*e-4+1]},C.prototype._boundValue=function(){},C.prototype._migrateCallback0=function(e){e._bitField;var t=e._fulfillmentHandler0,r=e._rejectionHandler0,n=e._promise0,i=e._receiverAt(0);void 0===i&&(i=s),this._addCallbacks(t,r,n,i,null)},C.prototype._migrateCallbackAt=function(e,t){var r=e._fulfillmentHandlerAt(t),n=e._rejectionHandlerAt(t),i=e._promiseAt(t),a=e._receiverAt(t);void 0===a&&(a=s),this._addCallbacks(r,n,i,a,null)},C.prototype._addCallbacks=function(e,t,r,n,i){var a=this._length();if(a>=65531&&(a=0,this._setLength(0)),0===a)this._promise0=r,this._receiver0=n,"function"==typeof e&&(this._fulfillmentHandler0=null===i?e:c.domainBind(i,e)),"function"==typeof t&&(this._rejectionHandler0=null===i?t:c.domainBind(i,t));else{var o=4*a-4;this[o+2]=r,this[o+3]=n,"function"==typeof e&&(this[o+0]=null===i?e:c.domainBind(i,e)),"function"==typeof t&&(this[o+1]=null===i?t:c.domainBind(i,t))}return this._setLength(a+1),a},C.prototype._proxy=function(e,t){this._addCallbacks(void 0,void 0,t,e,null)},C.prototype._resolveCallback=function(e,r){if(!(117506048&this._bitField)){if(e===this)return this._rejectCallback(t(),!1);var n=y(e,this);if(!(n instanceof C))return this._fulfill(e);r&&this._propagateFrom(n,2);var i=n._target();if(i!==this){var a=i._bitField;if(50397184&a)if(33554432&a)this._fulfill(i._value());else if(16777216&a)this._reject(i._reason());else{var o=new m("late cancellation observer");i._attachExtraTrace(o),this._reject(o)}else{var s=this._length();s>0&&i._migrateCallback0(this);for(var c=1;c<s;++c)i._migrateCallbackAt(this,c);this._setFollowing(),this._setLength(0),this._setFollowee(i)}}else this._reject(t())}},C.prototype._rejectCallback=function(e,t,r){var n=c.ensureErrorObject(e),i=n===e;if(!i&&!r&&x.warnings()){var a="a promise was rejected with a non-error: "+c.classString(e);this._warn(a,!0)}this._attachExtraTrace(n,!!t&&i),this._reject(e)},C.prototype._resolveFromExecutor=function(e){var t=this;this._captureStackTrace(),this._pushContext();var r=!0,n=this._execute(e,(function(e){t._resolveCallback(e)}),(function(e){t._rejectCallback(e,r)}));r=!1,this._popContext(),void 0!==n&&t._rejectCallback(n,!0)},C.prototype._settlePromiseFromHandler=function(e,t,r,n){var i=n._bitField;if(!(65536&i)){var a;n._pushContext(),t===_?r&&"number"==typeof r.length?a=T(e).apply(this._boundValue(),r):(a=w).e=new f("cannot .spread() a non-array: "+c.classString(r)):a=T(e).call(t,r);var o=n._popContext();65536&(i=n._bitField)||(a===h?n._reject(r):a===w?n._rejectCallback(a.e,!1):(x.checkForgottenReturns(a,o,"",n,this),n._resolveCallback(a)))}},C.prototype._target=function(){for(var e=this;e._isFollowing();)e=e._followee();return e},C.prototype._followee=function(){return this._rejectionHandler0},C.prototype._setFollowee=function(e){this._rejectionHandler0=e},C.prototype._settlePromise=function(e,t,r,i){var o=e instanceof C,s=this._bitField,c=!!(134217728&s);65536&s?(o&&e._invokeInternalOnCancel(),r instanceof E&&r.isFinallyHandler()?(r.cancelPromise=e,T(t).call(r,i)===w&&e._reject(w.e)):t===n?e._fulfill(n.call(r)):r instanceof a?r._promiseCancelled(e):o||e instanceof v?e._cancel():r.cancel()):"function"==typeof t?o?(c&&e._setAsyncGuaranteed(),this._settlePromiseFromHandler(t,r,i,e)):t.call(r,i,e):r instanceof a?r._isResolved()||(33554432&s?r._promiseFulfilled(i,e):r._promiseRejected(i,e)):o&&(c&&e._setAsyncGuaranteed(),33554432&s?e._fulfill(i):e._reject(i))},C.prototype._settlePromiseLateCancellationObserver=function(e){var t=e.handler,r=e.promise,n=e.receiver,i=e.value;"function"==typeof t?r instanceof C?this._settlePromiseFromHandler(t,n,i,r):t.call(n,i,r):r instanceof C&&r._reject(i)},C.prototype._settlePromiseCtx=function(e){this._settlePromise(e.promise,e.handler,e.receiver,e.value)},C.prototype._settlePromise0=function(e,t,r){var n=this._promise0,i=this._receiverAt(0);this._promise0=void 0,this._receiver0=void 0,this._settlePromise(n,e,i,t)},C.prototype._clearCallbackDataAtIndex=function(e){var t=4*e-4;this[t+2]=this[t+3]=this[t+0]=this[t+1]=void 0},C.prototype._fulfill=function(e){var r=this._bitField;if(!((117506048&r)>>>16)){if(e===this){var n=t();return this._attachExtraTrace(n),this._reject(n)}this._setFulfilled(),this._rejectionHandler0=e,(65535&r)>0&&(134217728&r?this._settlePromises():d.settlePromises(this))}},C.prototype._reject=function(e){var t=this._bitField;if(!((117506048&t)>>>16)){if(this._setRejected(),this._fulfillmentHandler0=e,this._isFinal())return d.fatalError(e,c.isNode);(65535&t)>0?d.settlePromises(this):this._ensurePossibleRejectionHandled()}},C.prototype._fulfillPromises=function(e,t){for(var r=1;r<e;r++){var n=this._fulfillmentHandlerAt(r),i=this._promiseAt(r),a=this._receiverAt(r);this._clearCallbackDataAtIndex(r),this._settlePromise(i,n,a,t)}},C.prototype._rejectPromises=function(e,t){for(var r=1;r<e;r++){var n=this._rejectionHandlerAt(r),i=this._promiseAt(r),a=this._receiverAt(r);this._clearCallbackDataAtIndex(r),this._settlePromise(i,n,a,t)}},C.prototype._settlePromises=function(){var e=this._bitField,t=65535&e;if(t>0){if(16842752&e){var r=this._fulfillmentHandler0;this._settlePromise0(this._rejectionHandler0,r,e),this._rejectPromises(t,r)}else{var n=this._rejectionHandler0;this._settlePromise0(this._fulfillmentHandler0,n,e),this._fulfillPromises(t,n)}this._setLength(0)}this._clearCancellationData()},C.prototype._settledValue=function(){var e=this._bitField;return 33554432&e?this._rejectionHandler0:16777216&e?this._fulfillmentHandler0:void 0},C.defer=C.pending=function(){return x.deprecated("Promise.defer","new Promise"),{promise:new C(g),resolve:A,reject:N}},c.notEnumerableProp(C,"_makeSelfResolutionError",t),r(6241)(C,g,y,i,x),r(54271)(C,g,y,x),r(2994)(C,v,i,x),r(56774)(C),r(34900)(C),r(46564)(C,v,y,g,d,o),C.Promise=C,C.version="3.4.7",r(35956)(C,v,i,y,g,x),r(31675)(C),r(46178)(C,i,y,k,g,x),r(76406)(C,g,x),r(65734)(C,i,g,y,a,x),r(36340)(C),r(75818)(C,g),r(74416)(C,v,y,i),r(33381)(C,g,y,i),r(68722)(C,v,i,y,g,x),r(59047)(C,v,x),r(47784)(C,v,i),r(72730)(C,g),r(93425)(C,g),r(7988)(C),c.toFastProperties(C),c.toFastProperties(C.prototype),P({a:1}),P({b:2}),P({c:3}),P(1),P((function(){})),P(void 0),P(!1),P(new C(g)),x.setBounds(u.firstLineError,c.lastLineError),C}},52661:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a){var o=r(92208);o.isArray;function s(r){var n=this._promise=new e(t);r instanceof e&&n._propagateFrom(r,3),n._setOnCancel(this),this._values=r,this._length=0,this._totalResolved=0,this._init(void 0,-2)}return o.inherits(s,a),s.prototype.length=function(){return this._length},s.prototype.promise=function(){return this._promise},s.prototype._init=function t(r,a){var s=n(this._values,this._promise);if(s instanceof e){var c=(s=s._target())._bitField;if(this._values=s,!(50397184&c))return this._promise._setAsyncGuaranteed(),s._then(t,this._reject,void 0,this,a);if(!(33554432&c))return 16777216&c?this._reject(s._reason()):this._cancel();s=s._value()}if(null!==(s=o.asArray(s)))0!==s.length?this._iterate(s):-5===a?this._resolveEmptyArray():this._resolve(function(e){switch(e){case-2:return[];case-3:return{}}}(a));else{var l=i("expecting an array or an iterable object but got "+o.classString(s)).reason();this._promise._rejectCallback(l,!1)}},s.prototype._iterate=function(t){var r=this.getActualLength(t.length);this._length=r,this._values=this.shouldCopyValues()?new Array(r):this._values;for(var i=this._promise,a=!1,o=null,s=0;s<r;++s){var c=n(t[s],i);o=c instanceof e?(c=c._target())._bitField:null,a?null!==o&&c.suppressUnhandledRejections():null!==o?50397184&o?a=33554432&o?this._promiseFulfilled(c._value(),s):16777216&o?this._promiseRejected(c._reason(),s):this._promiseCancelled(s):(c._proxy(this,s),this._values[s]=c):a=this._promiseFulfilled(c,s)}a||i._setAsyncGuaranteed()},s.prototype._isResolved=function(){return null===this._values},s.prototype._resolve=function(e){this._values=null,this._promise._fulfill(e)},s.prototype._cancel=function(){!this._isResolved()&&this._promise._isCancellable()&&(this._values=null,this._promise._cancel())},s.prototype._reject=function(e){this._values=null,this._promise._rejectCallback(e,!1)},s.prototype._promiseFulfilled=function(e,t){return this._values[t]=e,++this._totalResolved>=this._length&&(this._resolve(this._values),!0)},s.prototype._promiseCancelled=function(){return this._cancel(),!0},s.prototype._promiseRejected=function(e){return this._totalResolved++,this._reject(e),!0},s.prototype._resultCancelled=function(){if(!this._isResolved()){var t=this._values;if(this._cancel(),t instanceof e)t.cancel();else for(var r=0;r<t.length;++r)t[r]instanceof e&&t[r].cancel()}},s.prototype.shouldCopyValues=function(){return!0},s.prototype.getActualLength=function(e){return e},s}},75818:(e,t,r)=>{"use strict";e.exports=function(e,t){var n={},i=r(92208),a=r(41231),o=i.withAppended,s=i.maybeWrapAsError,c=i.canEvaluate,l=r(90403).TypeError,u={__isPromisified__:!0},d=new RegExp("^(?:"+["arity","length","name","arguments","caller","callee","prototype","__isPromisified__"].join("|")+")$"),p=function(e){return i.isIdentifier(e)&&"_"!==e.charAt(0)&&"constructor"!==e};function f(e){return!d.test(e)}function m(e){try{return!0===e.__isPromisified__}catch(e){return!1}}function g(e,t,r){var n=i.getDataPropertyOrDefault(e,t+r,u);return!!n&&m(n)}function _(e,t,r,n){for(var a=i.inheritedDataKeys(e),o=[],s=0;s<a.length;++s){var c=a[s],u=e[c],d=n===p||p(c,u,e);"function"!=typeof u||m(u)||g(e,c,t)||!n(c,u,e,d)||o.push(c,u)}return function(e,t,r){for(var n=0;n<e.length;n+=2){var i=e[n];if(r.test(i))for(var a=i.replace(r,""),o=0;o<e.length;o+=2)if(e[o]===a)throw new l("Cannot promisify an API that has normal methods with '%s'-suffix\n\n See http://goo.gl/MqrFmX\n".replace("%s",t))}}(o,t,r),o}var h;h=function(r,c,l,u,d,p){var f=Math.max(0,function(e){return"number"==typeof e.length?Math.max(Math.min(e.length,1024),0):0}(u)-1),m=function(e){for(var t=[e],r=Math.max(0,e-1-3),n=e-1;n>=r;--n)t.push(n);for(n=e+1;n<=3;++n)t.push(n);return t}(f),g="string"==typeof r||c===n;function _(e){var t,r=(t=e,i.filledRange(t,"_arg","")).join(", "),n=e>0?", ":"";return(g?"ret = callback.call(this, {{args}}, nodeback); break;\n":void 0===c?"ret = callback({{args}}, nodeback); break;\n":"ret = callback.call(receiver, {{args}}, nodeback); break;\n").replace("{{args}}",r).replace(", ",n)}var h="string"==typeof r?"this != null ? this['"+r+"'] : fn":"fn",y="'use strict'; \n var ret = function (Parameters) { \n 'use strict'; \n var len = arguments.length; \n var promise = new Promise(INTERNAL); \n promise._captureStackTrace(); \n var nodeback = nodebackForPromise(promise, "+p+"); \n var ret; \n var callback = tryCatch([GetFunctionCode]); \n switch(len) { \n [CodeForSwitchCase] \n } \n if (ret === errorObj) { \n promise._rejectCallback(maybeWrapAsError(ret.e), true, true);\n } \n if (!promise._isFateSealed()) promise._setAsyncGuaranteed(); \n return promise; \n }; \n notEnumerableProp(ret, '__isPromisified__', true); \n return ret; \n ".replace("[CodeForSwitchCase]",function(){for(var e="",t=0;t<m.length;++t)e+="case "+m[t]+":"+_(m[t]);return e+=" \n default: \n var args = new Array(len + 1); \n var i = 0; \n for (var i = 0; i < len; ++i) { \n args[i] = arguments[i]; \n } \n args[i] = nodeback; \n [CodeForCall] \n break; \n ".replace("[CodeForCall]",g?"ret = callback.apply(this, args);\n":"ret = callback.apply(receiver, args);\n")}()).replace("[GetFunctionCode]",h);return y=y.replace("Parameters",function(e){return i.filledRange(Math.max(e,3),"_arg","")}(f)),new Function("Promise","fn","receiver","withAppended","maybeWrapAsError","nodebackForPromise","tryCatch","errorObj","notEnumerableProp","INTERNAL",y)(e,u,c,o,s,a,i.tryCatch,i.errorObj,i.notEnumerableProp,t)};var y=c?h:function(r,c,l,u,d,p){var f=function(){return this}(),m=r;function g(){var i=c;c===n&&(i=this);var l=new e(t);l._captureStackTrace();var u="string"==typeof m&&this!==f?this[m]:r,d=a(l,p);try{u.apply(i,o(arguments,d))}catch(e){l._rejectCallback(s(e),!0,!0)}return l._isFateSealed()||l._setAsyncGuaranteed(),l}return"string"==typeof m&&(r=u),i.notEnumerableProp(g,"__isPromisified__",!0),g};function v(e,t,r,a,o){for(var s=new RegExp(t.replace(/([$])/,"\\$")+"$"),c=_(e,t,s,r),l=0,u=c.length;l<u;l+=2){var d=c[l],p=c[l+1],f=d+t;if(a===y)e[f]=y(d,n,d,p,t,o);else{var m=a(p,(function(){return y(d,n,d,p,t,o)}));i.notEnumerableProp(m,"__isPromisified__",!0),e[f]=m}}return i.toFastProperties(e),e}e.promisify=function(e,t){if("function"!=typeof e)throw new l("expecting a function but got "+i.classString(e));if(m(e))return e;var r=function(e,t,r){return y(e,t,void 0,e,null,r)}(e,void 0===(t=Object(t)).context?n:t.context,!!t.multiArgs);return i.copyDescriptors(e,r,f),r},e.promisifyAll=function(e,t){if("function"!=typeof e&&"object"!=typeof e)throw new l("the target of promisifyAll must be an object or a function\n\n See http://goo.gl/MqrFmX\n");var r=!!(t=Object(t)).multiArgs,n=t.suffix;"string"!=typeof n&&(n="Async");var a=t.filter;"function"!=typeof a&&(a=p);var o=t.promisifier;if("function"!=typeof o&&(o=y),!i.isIdentifier(n))throw new RangeError("suffix must be a valid identifier\n\n See http://goo.gl/MqrFmX\n");for(var s=i.inheritedDataKeys(e),c=0;c<s.length;++c){var u=e[s[c]];"constructor"!==s[c]&&i.isClass(u)&&(v(u.prototype,n,a,o,r),v(u,n,a,o,r))}return v(e,n,a,o,r)}}},74416:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i){var a,o=r(92208),s=o.isObject,c=r(7585);"function"==typeof Map&&(a=Map);var l=function(){var e=0,t=0;function r(r,n){this[e]=r,this[e+t]=n,e++}return function(n){t=n.size,e=0;var i=new Array(2*n.size);return n.forEach(r,i),i}}();function u(e){var t,r=!1;if(void 0!==a&&e instanceof a)t=l(e),r=!0;else{var n=c.keys(e),i=n.length;t=new Array(2*i);for(var o=0;o<i;++o){var s=n[o];t[o]=e[s],t[o+i]=s}}this.constructor$(t),this._isMap=r,this._init$(void 0,-3)}function d(t){var r,a=n(t);return s(a)?(r=a instanceof e?a._then(e.props,void 0,void 0,void 0,void 0):new u(a).promise(),a instanceof e&&r._propagateFrom(a,2),r):i("cannot await properties of a non-object\n\n See http://goo.gl/MqrFmX\n")}o.inherits(u,t),u.prototype._init=function(){},u.prototype._promiseFulfilled=function(e,t){if(this._values[t]=e,++this._totalResolved>=this._length){var r;if(this._isMap)r=function(e){for(var t=new a,r=e.length/2|0,n=0;n<r;++n){var i=e[r+n],o=e[n];t.set(i,o)}return t}(this._values);else{r={};for(var n=this.length(),i=0,o=this.length();i<o;++i)r[this._values[i+n]]=this._values[i]}return this._resolve(r),!0}return!1},u.prototype.shouldCopyValues=function(){return!1},u.prototype.getActualLength=function(e){return e>>1},e.prototype.props=function(){return d(this)},e.props=function(e){return d(e)}}},49937:e=>{"use strict";function t(e){this._capacity=e,this._length=0,this._front=0}t.prototype._willBeOverCapacity=function(e){return this._capacity<e},t.prototype._pushOne=function(e){var t=this.length();this._checkCapacity(t+1),this[this._front+t&this._capacity-1]=e,this._length=t+1},t.prototype.push=function(e,t,r){var n=this.length()+3;if(this._willBeOverCapacity(n))return this._pushOne(e),this._pushOne(t),void this._pushOne(r);var i=this._front+n-3;this._checkCapacity(n);var a=this._capacity-1;this[i+0&a]=e,this[i+1&a]=t,this[i+2&a]=r,this._length=n},t.prototype.shift=function(){var e=this._front,t=this[e];return this[e]=void 0,this._front=e+1&this._capacity-1,this._length--,t},t.prototype.length=function(){return this._length},t.prototype._checkCapacity=function(e){this._capacity<e&&this._resizeTo(this._capacity<<1)},t.prototype._resizeTo=function(e){var t=this._capacity;this._capacity=e,function(e,t,r,n,i){for(var a=0;a<i;++a)r[a+n]=e[a+t],e[a+t]=void 0}(this,0,this,t,this._front+this._length&t-1)},e.exports=t},33381:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i){var a=r(92208);function o(r,s){var c,l=n(r);if(l instanceof e)return(c=l).then((function(e){return o(e,c)}));if(null===(r=a.asArray(r)))return i("expecting an array or an iterable object but got "+a.classString(r));var u=new e(t);void 0!==s&&u._propagateFrom(s,3);for(var d=u._fulfill,p=u._reject,f=0,m=r.length;f<m;++f){var g=r[f];(void 0!==g||f in r)&&e.cast(g)._then(d,p,void 0,u,null)}return u}e.race=function(e){return o(e,void 0)},e.prototype.race=function(){return o(this,void 0)}}},68722:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=e._getDomain,c=r(92208),l=c.tryCatch;function u(t,r,n,i){this.constructor$(t);var o=s();this._fn=null===o?r:c.domainBind(o,r),void 0!==n&&(n=e.resolve(n))._attachCancellationCallback(this),this._initialValue=n,this._currentCancellable=null,this._eachValues=i===a?Array(this._length):0===i?null:void 0,this._promise._captureStackTrace(),this._init$(void 0,-5)}function d(e,t){this.isFulfilled()?t._resolve(e):t._reject(e)}function p(e,t,r,i){return"function"!=typeof t?n("expecting a function but got "+c.classString(t)):new u(e,t,r,i).promise()}function f(t){this.accum=t,this.array._gotAccum(t);var r=i(this.value,this.array._promise);return r instanceof e?(this.array._currentCancellable=r,r._then(m,void 0,void 0,this,void 0)):m.call(this,r)}function m(t){var r,n=this.array,i=n._promise,a=l(n._fn);i._pushContext(),(r=void 0!==n._eachValues?a.call(i._boundValue(),t,this.index,this.length):a.call(i._boundValue(),this.accum,t,this.index,this.length))instanceof e&&(n._currentCancellable=r);var s=i._popContext();return o.checkForgottenReturns(r,s,void 0!==n._eachValues?"Promise.each":"Promise.reduce",i),r}c.inherits(u,t),u.prototype._gotAccum=function(e){void 0!==this._eachValues&&null!==this._eachValues&&e!==a&&this._eachValues.push(e)},u.prototype._eachComplete=function(e){return null!==this._eachValues&&this._eachValues.push(e),this._eachValues},u.prototype._init=function(){},u.prototype._resolveEmptyArray=function(){this._resolve(void 0!==this._eachValues?this._eachValues:this._initialValue)},u.prototype.shouldCopyValues=function(){return!1},u.prototype._resolve=function(e){this._promise._resolveCallback(e),this._values=null},u.prototype._resultCancelled=function(t){if(t===this._initialValue)return this._cancel();this._isResolved()||(this._resultCancelled$(),this._currentCancellable instanceof e&&this._currentCancellable.cancel(),this._initialValue instanceof e&&this._initialValue.cancel())},u.prototype._iterate=function(t){var r,n;this._values=t;var i=t.length;if(void 0!==this._initialValue?(r=this._initialValue,n=0):(r=e.resolve(t[0]),n=1),this._currentCancellable=r,!r.isRejected())for(;n<i;++n){var a={accum:null,value:t[n],index:n,length:i,array:this};r=r._then(f,void 0,void 0,a,void 0)}void 0!==this._eachValues&&(r=r._then(this._eachComplete,void 0,void 0,this,void 0)),r._then(d,d,void 0,r,this)},e.prototype.reduce=function(e,t){return p(this,e,t,null)},e.reduce=function(e,t,r,n){return p(e,t,r,n)}}},71065:(e,t,r)=>{"use strict";var n,i=r(92208),a=i.getNativePromise();if(i.isNode&&"undefined"==typeof MutationObserver){var o=global.setImmediate,s=process.nextTick;n=i.isRecentNode?function(e){o.call(global,e)}:function(e){s.call(process,e)}}else if("function"==typeof a&&"function"==typeof a.resolve){var c=a.resolve();n=function(e){c.then(e)}}else n="undefined"==typeof MutationObserver||"undefined"!=typeof window&&window.navigator&&(window.navigator.standalone||window.cordova)?"undefined"!=typeof setImmediate?function(e){setImmediate(e)}:"undefined"!=typeof setTimeout?function(e){setTimeout(e,0)}:function(){throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n")}:function(){var e=document.createElement("div"),t={attributes:!0},r=!1,n=document.createElement("div");new MutationObserver((function(){e.classList.toggle("foo"),r=!1})).observe(n,t);return function(i){var a=new MutationObserver((function(){a.disconnect(),i()}));a.observe(e,t),r||(r=!0,n.classList.toggle("foo"))}}();e.exports=n},59047:(e,t,r)=>{"use strict";e.exports=function(e,t,n){var i=e.PromiseInspection;function a(e){this.constructor$(e)}r(92208).inherits(a,t),a.prototype._promiseResolved=function(e,t){return this._values[e]=t,++this._totalResolved>=this._length&&(this._resolve(this._values),!0)},a.prototype._promiseFulfilled=function(e,t){var r=new i;return r._bitField=33554432,r._settledValueField=e,this._promiseResolved(t,r)},a.prototype._promiseRejected=function(e,t){var r=new i;return r._bitField=16777216,r._settledValueField=e,this._promiseResolved(t,r)},e.settle=function(e){return n.deprecated(".settle()",".reflect()"),new a(e).promise()},e.prototype.settle=function(){return e.settle(this)}}},47784:(e,t,r)=>{"use strict";e.exports=function(e,t,n){var i=r(92208),a=r(90403).RangeError,o=r(90403).AggregateError,s=i.isArray,c={};function l(e){this.constructor$(e),this._howMany=0,this._unwrap=!1,this._initialized=!1}function u(e,t){if((0|t)!==t||t<0)return n("expecting a positive integer\n\n See http://goo.gl/MqrFmX\n");var r=new l(e),i=r.promise();return r.setHowMany(t),r.init(),i}i.inherits(l,t),l.prototype._init=function(){if(this._initialized)if(0!==this._howMany){this._init$(void 0,-5);var e=s(this._values);!this._isResolved()&&e&&this._howMany>this._canPossiblyFulfill()&&this._reject(this._getRangeError(this.length()))}else this._resolve([])},l.prototype.init=function(){this._initialized=!0,this._init()},l.prototype.setUnwrap=function(){this._unwrap=!0},l.prototype.howMany=function(){return this._howMany},l.prototype.setHowMany=function(e){this._howMany=e},l.prototype._promiseFulfilled=function(e){return this._addFulfilled(e),this._fulfilled()===this.howMany()&&(this._values.length=this.howMany(),1===this.howMany()&&this._unwrap?this._resolve(this._values[0]):this._resolve(this._values),!0)},l.prototype._promiseRejected=function(e){return this._addRejected(e),this._checkOutcome()},l.prototype._promiseCancelled=function(){return this._values instanceof e||null==this._values?this._cancel():(this._addRejected(c),this._checkOutcome())},l.prototype._checkOutcome=function(){if(this.howMany()>this._canPossiblyFulfill()){for(var e=new o,t=this.length();t<this._values.length;++t)this._values[t]!==c&&e.push(this._values[t]);return e.length>0?this._reject(e):this._cancel(),!0}return!1},l.prototype._fulfilled=function(){return this._totalResolved},l.prototype._rejected=function(){return this._values.length-this.length()},l.prototype._addRejected=function(e){this._values.push(e)},l.prototype._addFulfilled=function(e){this._values[this._totalResolved++]=e},l.prototype._canPossiblyFulfill=function(){return this.length()-this._rejected()},l.prototype._getRangeError=function(e){var t="Input array must contain at least "+this._howMany+" items but contains only "+e+" items";return new a(t)},l.prototype._resolveEmptyArray=function(){this._reject(this._getRangeError(0))},e.some=function(e,t){return u(e,t)},e.prototype.some=function(e){return u(this,e)},e._SomePromiseArray=l}},34900:e=>{"use strict";e.exports=function(e){function t(e){void 0!==e?(e=e._target(),this._bitField=e._bitField,this._settledValueField=e._isFateSealed()?e._settledValue():void 0):(this._bitField=0,this._settledValueField=void 0)}t.prototype._settledValue=function(){return this._settledValueField};var r=t.prototype.value=function(){if(!this.isFulfilled())throw new TypeError("cannot get fulfillment value of a non-fulfilled promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},n=t.prototype.error=t.prototype.reason=function(){if(!this.isRejected())throw new TypeError("cannot get rejection reason of a non-rejected promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},i=t.prototype.isFulfilled=function(){return!!(33554432&this._bitField)},a=t.prototype.isRejected=function(){return!!(16777216&this._bitField)},o=t.prototype.isPending=function(){return!(50397184&this._bitField)},s=t.prototype.isResolved=function(){return!!(50331648&this._bitField)};t.prototype.isCancelled=function(){return!!(8454144&this._bitField)},e.prototype.__isCancelled=function(){return!(65536&~this._bitField)},e.prototype._isCancelled=function(){return this._target().__isCancelled()},e.prototype.isCancelled=function(){return!!(8454144&this._target()._bitField)},e.prototype.isPending=function(){return o.call(this._target())},e.prototype.isRejected=function(){return a.call(this._target())},e.prototype.isFulfilled=function(){return i.call(this._target())},e.prototype.isResolved=function(){return s.call(this._target())},e.prototype.value=function(){return r.call(this._target())},e.prototype.reason=function(){var e=this._target();return e._unsetRejectionIsUnhandled(),n.call(e)},e.prototype._value=function(){return this._settledValue()},e.prototype._reason=function(){return this._unsetRejectionIsUnhandled(),this._settledValue()},e.PromiseInspection=t}},78974:(e,t,r)=>{"use strict";e.exports=function(e,t){var n=r(92208),i=n.errorObj,a=n.isObject;var o={}.hasOwnProperty;return function(r,s){if(a(r)){if(r instanceof e)return r;var c=function(e){try{return function(e){return e.then}(e)}catch(e){return i.e=e,i}}(r);if(c===i){s&&s._pushContext();var l=e.reject(c.e);return s&&s._popContext(),l}if("function"==typeof c){if(function(e){try{return o.call(e,"_promise0")}catch(e){return!1}}(r)){l=new e(t);return r._then(l._fulfill,l._reject,void 0,l,null),l}return function(r,a,o){var s=new e(t),c=s;o&&o._pushContext();s._captureStackTrace(),o&&o._popContext();var l=!0,u=n.tryCatch(a).call(r,d,p);l=!1,s&&u===i&&(s._rejectCallback(u.e,!0,!0),s=null);function d(e){s&&(s._resolveCallback(e),s=null)}function p(e){s&&(s._rejectCallback(e,l,!0),s=null)}return c}(r,c,s)}}return r}}},76406:(e,t,r)=>{"use strict";e.exports=function(e,t,n){var i=r(92208),a=e.TimeoutError;function o(e){this.handle=e}o.prototype._resultCancelled=function(){clearTimeout(this.handle)};var s=function(e){return c(+this).thenReturn(e)},c=e.delay=function(r,i){var a,c;return void 0!==i?(a=e.resolve(i)._then(s,null,null,r,void 0),n.cancellation()&&i instanceof e&&a._setOnCancel(i)):(a=new e(t),c=setTimeout((function(){a._fulfill()}),+r),n.cancellation()&&a._setOnCancel(new o(c)),a._captureStackTrace()),a._setAsyncGuaranteed(),a};e.prototype.delay=function(e){return c(e,this)};function l(e){return clearTimeout(this.handle),e}function u(e){throw clearTimeout(this.handle),e}e.prototype.timeout=function(e,t){var r,s;e=+e;var c=new o(setTimeout((function(){r.isPending()&&function(e,t,r){var n;n="string"!=typeof t?t instanceof Error?t:new a("operation timed out"):new a(t),i.markAsOriginatingFromRejection(n),e._attachExtraTrace(n),e._reject(n),null!=r&&r.cancel()}(r,t,s)}),e));return n.cancellation()?(s=this.then(),(r=s._then(l,u,void 0,c,void 0))._setOnCancel(c)):r=this._then(l,u,void 0,c,void 0),r}}},46178:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=r(92208),c=r(90403).TypeError,l=r(92208).inherits,u=s.errorObj,d=s.tryCatch,p={};function f(e){setTimeout((function(){throw e}),0)}function m(t,r){var i=0,o=t.length,s=new e(a);return function a(){if(i>=o)return s._fulfill();var c=function(e){var t=n(e);return t!==e&&"function"==typeof e._isDisposable&&"function"==typeof e._getDisposer&&e._isDisposable()&&t._setDisposable(e._getDisposer()),t}(t[i++]);if(c instanceof e&&c._isDisposable()){try{c=n(c._getDisposer().tryDispose(r),t.promise)}catch(e){return f(e)}if(c instanceof e)return c._then(a,f,null,null,null)}a()}(),s}function g(e,t,r){this._data=e,this._promise=t,this._context=r}function _(e,t,r){this.constructor$(e,t,r)}function h(e){return g.isDisposer(e)?(this.resources[this.index]._setDisposable(e),e.promise()):e}function y(e){this.length=e,this.promise=null,this[e-1]=null}g.prototype.data=function(){return this._data},g.prototype.promise=function(){return this._promise},g.prototype.resource=function(){return this.promise().isFulfilled()?this.promise().value():p},g.prototype.tryDispose=function(e){var t=this.resource(),r=this._context;void 0!==r&&r._pushContext();var n=t!==p?this.doDispose(t,e):null;return void 0!==r&&r._popContext(),this._promise._unsetDisposable(),this._data=null,n},g.isDisposer=function(e){return null!=e&&"function"==typeof e.resource&&"function"==typeof e.tryDispose},l(_,g),_.prototype.doDispose=function(e,t){return this.data().call(e,e,t)},y.prototype._resultCancelled=function(){for(var t=this.length,r=0;r<t;++r){var n=this[r];n instanceof e&&n.cancel()}},e.using=function(){var r=arguments.length;if(r<2)return t("you must pass at least 2 arguments to Promise.using");var i,a=arguments[r-1];if("function"!=typeof a)return t("expecting a function but got "+s.classString(a));var c=!0;2===r&&Array.isArray(arguments[0])?(r=(i=arguments[0]).length,c=!1):(i=arguments,r--);for(var l=new y(r),p=0;p<r;++p){var f=i[p];if(g.isDisposer(f)){var _=f;(f=f.promise())._setDisposable(_)}else{var v=n(f);v instanceof e&&(f=v._then(h,null,null,{resources:l,index:p},void 0))}l[p]=f}var b=new Array(l.length);for(p=0;p<b.length;++p)b[p]=e.resolve(l[p]).reflect();var k=e.all(b).then((function(e){for(var t=0;t<e.length;++t){var r=e[t];if(r.isRejected())return u.e=r.error(),u;if(!r.isFulfilled())return void k.cancel();e[t]=r.value()}x._pushContext(),a=d(a);var n=c?a.apply(void 0,e):a(e),i=x._popContext();return o.checkForgottenReturns(n,i,"Promise.using",x),n})),x=k.lastly((function(){var t=new e.PromiseInspection(k);return m(l,t)}));return l.promise=x,x._setOnCancel(l),x},e.prototype._setDisposable=function(e){this._bitField=131072|this._bitField,this._disposer=e},e.prototype._isDisposable=function(){return(131072&this._bitField)>0},e.prototype._getDisposer=function(){return this._disposer},e.prototype._unsetDisposable=function(){this._bitField=-131073&this._bitField,this._disposer=void 0},e.prototype.disposer=function(e){if("function"==typeof e)return new _(e,this,i());throw new c}}},92208:function(e,t,r){"use strict";var n=r(7585),i="undefined"==typeof navigator,a={e:{}},o,s="undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:void 0!==this?this:null;function c(){try{var e=o;return o=null,e.apply(this,arguments)}catch(e){return a.e=e,a}}function l(e){return o=e,c}var u=function(e,t){var r={}.hasOwnProperty;function n(){for(var n in this.constructor=e,this.constructor$=t,t.prototype)r.call(t.prototype,n)&&"$"!==n.charAt(n.length-1)&&(this[n+"$"]=t.prototype[n])}return n.prototype=t.prototype,e.prototype=new n,e.prototype};function d(e){return null==e||!0===e||!1===e||"string"==typeof e||"number"==typeof e}function p(e){return"function"==typeof e||"object"==typeof e&&null!==e}function f(e){return d(e)?new Error(D(e)):e}function m(e,t){var r,n=e.length,i=new Array(n+1);for(r=0;r<n;++r)i[r]=e[r];return i[r]=t,i}function g(e,t,r){if(!n.isES5)return{}.hasOwnProperty.call(e,t)?e[t]:void 0;var i=Object.getOwnPropertyDescriptor(e,t);return null!=i?null==i.get&&null==i.set?i.value:r:void 0}function _(e,t,r){if(d(e))return e;var i={value:r,configurable:!0,enumerable:!1,writable:!0};return n.defineProperty(e,t,i),e}function h(e){throw e}var y=function(){var e=[Array.prototype,Object.prototype,Function.prototype],t=function(t){for(var r=0;r<e.length;++r)if(e[r]===t)return!0;return!1};if(n.isES5){var r=Object.getOwnPropertyNames;return function(e){for(var i=[],a=Object.create(null);null!=e&&!t(e);){var o;try{o=r(e)}catch(e){return i}for(var s=0;s<o.length;++s){var c=o[s];if(!a[c]){a[c]=!0;var l=Object.getOwnPropertyDescriptor(e,c);null!=l&&null==l.get&&null==l.set&&i.push(c)}}e=n.getPrototypeOf(e)}return i}}var i={}.hasOwnProperty;return function(r){if(t(r))return[];var n=[];e:for(var a in r)if(i.call(r,a))n.push(a);else{for(var o=0;o<e.length;++o)if(i.call(e[o],a))continue e;n.push(a)}return n}}(),v=/this\s*\.\s*\S+\s*=/;function b(e){try{if("function"==typeof e){var t=n.names(e.prototype),r=n.isES5&&t.length>1,i=t.length>0&&!(1===t.length&&"constructor"===t[0]),a=v.test(e+"")&&n.names(e).length>0;if(r||i||a)return!0}return!1}catch(e){return!1}}function k(e){function t(){}t.prototype=e;for(var r=8;r--;)new t;return e}var x=/^[a-z$_][a-z$_0-9]*$/i;function E(e){return x.test(e)}function S(e,t,r){for(var n=new Array(e),i=0;i<e;++i)n[i]=t+i+r;return n}function D(e){try{return e+""}catch(e){return"[no string representation]"}}function w(e){return null!==e&&"object"==typeof e&&"string"==typeof e.message&&"string"==typeof e.name}function T(e){try{_(e,"isOperational",!0)}catch(e){}}function C(e){return null!=e&&(e instanceof Error.__BluebirdErrorTypes__.OperationalError||!0===e.isOperational)}function A(e){return w(e)&&n.propertyIsWritable(e,"stack")}var N="stack"in new Error?function(e){return A(e)?e:new Error(D(e))}:function(e){if(A(e))return e;try{throw new Error(D(e))}catch(e){return e}};function P(e){return{}.toString.call(e)}function I(e,t,r){for(var i=n.names(e),a=0;a<i.length;++a){var o=i[a];if(r(o))try{n.defineProperty(t,o,n.getDescriptor(e,o))}catch(e){}}}var F=function(e){return n.isArray(e)?e:null};if("undefined"!=typeof Symbol&&Symbol.iterator){var O="function"==typeof Array.from?function(e){return Array.from(e)}:function(e){for(var t,r=[],n=e[Symbol.iterator]();!(t=n.next()).done;)r.push(t.value);return r};F=function(e){return n.isArray(e)?e:null!=e&&"function"==typeof e[Symbol.iterator]?O(e):null}}var R="undefined"!=typeof process&&"[object process]"===P(process).toLowerCase(),M="undefined"!=typeof process&&void 0!==process.env;function L(e){return M?process.env[e]:void 0}function j(){if("function"==typeof Promise)try{var e=new Promise((function(){}));if("[object Promise]"==={}.toString.call(e))return Promise}catch(e){}}function B(e,t){return e.bind(t)}var z={isClass:b,isIdentifier:E,inheritedDataKeys:y,getDataPropertyOrDefault:g,thrower:h,isArray:n.isArray,asArray:F,notEnumerableProp:_,isPrimitive:d,isObject:p,isError:w,canEvaluate:i,errorObj:a,tryCatch:l,inherits:u,withAppended:m,maybeWrapAsError:f,toFastProperties:k,filledRange:S,toString:D,canAttachTrace:A,ensureErrorObject:N,originatesFromRejection:C,markAsOriginatingFromRejection:T,classString:P,copyDescriptors:I,hasDevTools:!1,isNode:R,hasEnvVariables:M,env:L,global:s,getNativePromise:j,domainBind:B},U;z.isRecentNode=z.isNode&&(U=process.versions.node.split(".").map(Number),0===U[0]&&U[1]>10||U[0]>0),z.isNode&&z.toFastProperties(process);try{throw new Error}catch(e){z.lastLineError=e}e.exports=z},68928:(e,t,r)=>{var n=r(49818),i=r(8505);e.exports=function(e){if(!e)return[];"{}"===e.substr(0,2)&&(e="\\{\\}"+e.substr(2));return h(function(e){return e.split("\\\\").join(a).split("\\{").join(o).split("\\}").join(s).split("\\,").join(c).split("\\.").join(l)}(e),!0).map(d)};var a="\0SLASH"+Math.random()+"\0",o="\0OPEN"+Math.random()+"\0",s="\0CLOSE"+Math.random()+"\0",c="\0COMMA"+Math.random()+"\0",l="\0PERIOD"+Math.random()+"\0";function u(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function d(e){return e.split(a).join("\\").split(o).join("{").split(s).join("}").split(c).join(",").split(l).join(".")}function p(e){if(!e)return[""];var t=[],r=i("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,s=n.split(",");s[s.length-1]+="{"+a+"}";var c=p(o);return o.length&&(s[s.length-1]+=c.shift(),s.push.apply(s,c)),t.push.apply(t,s),t}function f(e){return"{"+e+"}"}function m(e){return/^-?0\d/.test(e)}function g(e,t){return e<=t}function _(e,t){return e>=t}function h(e,t){var r=[],a=i("{","}",e);if(!a||/\$$/.test(a.pre))return[e];var o,c=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(a.body),l=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(a.body),d=c||l,y=a.body.indexOf(",")>=0;if(!d&&!y)return a.post.match(/,.*\}/)?h(e=a.pre+"{"+a.body+s+a.post):[e];if(d)o=a.body.split(/\.\./);else if(1===(o=p(a.body)).length&&1===(o=h(o[0],!1).map(f)).length)return(k=a.post.length?h(a.post,!1):[""]).map((function(e){return a.pre+o[0]+e}));var v,b=a.pre,k=a.post.length?h(a.post,!1):[""];if(d){var x=u(o[0]),E=u(o[1]),S=Math.max(o[0].length,o[1].length),D=3==o.length?Math.abs(u(o[2])):1,w=g;E<x&&(D*=-1,w=_);var T=o.some(m);v=[];for(var C=x;w(C,E);C+=D){var A;if(l)"\\"===(A=String.fromCharCode(C))&&(A="");else if(A=String(C),T){var N=S-A.length;if(N>0){var P=new Array(N+1).join("0");A=C<0?"-"+P+A.slice(1):P+A}}v.push(A)}}else v=n(o,(function(e){return h(e,!1)}));for(var I=0;I<v.length;I++)for(var F=0;F<k.length;F++){var O=b+v[I]+k[F];(!t||d||O)&&r.push(O)}return r}},42746:e=>{var t=Object.prototype.toString,r="undefined"!=typeof Buffer&&"function"==typeof Buffer.alloc&&"function"==typeof Buffer.allocUnsafe&&"function"==typeof Buffer.from;e.exports=function(e,n,i){if("number"==typeof e)throw new TypeError('"value" argument must not be a number');return a=e,"ArrayBuffer"===t.call(a).slice(8,-1)?function(e,t,n){t>>>=0;var i=e.byteLength-t;if(i<0)throw new RangeError("'offset' is out of bounds");if(void 0===n)n=i;else if((n>>>=0)>i)throw new RangeError("'length' is out of bounds");return r?Buffer.from(e.slice(t,t+n)):new Buffer(new Uint8Array(e.slice(t,t+n)))}(e,n,i):"string"==typeof e?function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!Buffer.isEncoding(t))throw new TypeError('"encoding" must be a valid string encoding');return r?Buffer.from(e,t):new Buffer(e,t)}(e,n):r?Buffer.from(e):new Buffer(e);var a}},36761:(e,t,r)=>{"use strict";var n=r(60382);function i(e,t){"string"==typeof e||e instanceof String?e=n(e):("number"==typeof e||e instanceof Number)&&(e=n([e]));for(var r=e.length,i=t=t||this.length-r;i>=0;i--){for(var a=!1,o=0;o<r;o++)if(this[i+o]!=e[o]){a=!0;break}if(!a)return i}return-1}Buffer.prototype.indexOf||(Buffer.prototype.indexOf=function(e,t){t=t||0,"string"==typeof e||e instanceof String?e=n(e):("number"==typeof e||e instanceof Number)&&(e=n([e]));for(var r=e.length,i=t;i<=this.length-r;i++){for(var a=!1,o=0;o<r;o++)if(this[i+o]!=e[o]){a=!0;break}if(!a)return i}return-1}),Buffer.prototype.lastIndexOf?-1===n("ABC").lastIndexOf("ABC")&&(Buffer.prototype.lastIndexOf=i):Buffer.prototype.lastIndexOf=i},60382:e=>{e.exports=function(e){return(process&&process.version?process.version:"v5.0.0").split(".")[0].replace("v","")<6?new Buffer(e):Buffer.from(e)}},86512:e=>{function t(e){if(!(this instanceof t))return new t(e);this.buffers=e||[],this.length=this.buffers.reduce((function(e,t){return e+t.length}),0)}e.exports=t,t.prototype.push=function(){for(var e=0;e<arguments.length;e++)if(!Buffer.isBuffer(arguments[e]))throw new TypeError("Tried to push a non-buffer");for(e=0;e<arguments.length;e++){var t=arguments[e];this.buffers.push(t),this.length+=t.length}return this.length},t.prototype.unshift=function(){for(var e=0;e<arguments.length;e++)if(!Buffer.isBuffer(arguments[e]))throw new TypeError("Tried to unshift a non-buffer");for(e=0;e<arguments.length;e++){var t=arguments[e];this.buffers.unshift(t),this.length+=t.length}return this.length},t.prototype.copy=function(e,t,r,n){return this.slice(r,n).copy(e,t,0,n-r)},t.prototype.splice=function(e,r){var n=this.buffers,i=e>=0?e:this.length-e,a=[].slice.call(arguments,2);(void 0===r||r>this.length-i)&&(r=this.length-i);for(e=0;e<a.length;e++)this.length+=a[e].length;for(var o=new t,s=0,c=0;c<n.length&&s+n[c].length<i;c++)s+=n[c].length;if(i-s>0){var l=i-s;if(l+r<n[c].length){o.push(n[c].slice(l,l+r));var u=n[c],d=new Buffer(l);for(e=0;e<l;e++)d[e]=u[e];var p=new Buffer(u.length-l-r);for(e=l+r;e<u.length;e++)p[e-r-l]=u[e];if(a.length>0){var f=a.slice();f.unshift(d),f.push(p),n.splice.apply(n,[c,1].concat(f)),c+=f.length,a=[]}else n.splice(c,1,d,p),c+=2}else o.push(n[c].slice(l)),n[c]=n[c].slice(0,l),c++}for(a.length>0&&(n.splice.apply(n,[c,0].concat(a)),c+=a.length);o.length<r;){var m=n[c],g=m.length,_=Math.min(g,r-o.length);_===g?(o.push(m),n.splice(c,1)):(o.push(m.slice(0,_)),n[c]=n[c].slice(_))}return this.length-=o.length,o},t.prototype.slice=function(e,t){var r=this.buffers;void 0===t&&(t=this.length),void 0===e&&(e=0),t>this.length&&(t=this.length);for(var n=0,i=0;i<r.length&&n+r[i].length<=e;i++)n+=r[i].length;for(var a=new Buffer(t-e),o=0,s=i;o<t-e&&s<r.length;s++){var c=r[s].length,l=0===o?e-n:0,u=o+c>=t-e?Math.min(l+(t-e)-o,c):c;r[s].copy(a,o,l,u),o+=u-l}return a},t.prototype.pos=function(e){if(e<0||e>=this.length)throw new Error("oob");for(var t=e,r=0,n=null;;){if(t<(n=this.buffers[r]).length)return{buf:r,offset:t};t-=n.length,r++}},t.prototype.get=function(e){var t=this.pos(e);return this.buffers[t.buf].get(t.offset)},t.prototype.set=function(e,t){var r=this.pos(e);return this.buffers[r.buf].set(r.offset,t)},t.prototype.indexOf=function(e,t){if("string"==typeof e)e=new Buffer(e);else if(!(e instanceof Buffer))throw new Error("Invalid type for a search string");if(!e.length)return 0;if(!this.length)return-1;var r,n=0,i=0,a=0,o=0;if(t){var s=this.pos(t);n=s.buf,i=s.offset,o=t}for(;;){for(;i>=this.buffers[n].length;)if(i=0,++n>=this.buffers.length)return-1;if(this.buffers[n][i]==e[a]){if(0==a&&(r={i:n,j:i,pos:o}),++a==e.length)return r.pos}else 0!=a&&(n=r.i,i=r.j,o=r.pos,a=0);i++,o++}},t.prototype.toBuffer=function(){return this.slice()},t.prototype.toString=function(e,t,r){return this.slice(t,r).toString(e)}},54787:(e,t,r)=>{var n=r(36623),i=r(24434).EventEmitter;function a(e){var t=a.saw(e,{}),r=e.call(t.handlers,t);return void 0!==r&&(t.handlers=r),t.record(),t.chain()}e.exports=a,a.light=function(e){var t=a.saw(e,{}),r=e.call(t.handlers,t);return void 0!==r&&(t.handlers=r),t.chain()},a.saw=function(e,t){var r=new i;return r.handlers=t,r.actions=[],r.chain=function(){var e=n(r.handlers).map((function(t){if(this.isRoot)return t;var n=this.path;"function"==typeof t&&this.update((function(){return r.actions.push({path:n,args:[].slice.call(arguments)}),e}))}));return process.nextTick((function(){r.emit("begin"),r.next()})),e},r.pop=function(){return r.actions.shift()},r.next=function(){var e=r.pop();if(e){if(!e.trap){var t=r.handlers;e.path.forEach((function(e){t=t[e]})),t.apply(r.handlers,e.args)}}else r.emit("end")},r.nest=function(t){var n=[].slice.call(arguments,1),i=!0;if("boolean"==typeof t){i=t;t=n.shift()}var o=a.saw(e,{}),s=e.call(o.handlers,o);void 0!==s&&(o.handlers=s),void 0!==r.step&&o.record(),t.apply(o.chain(),n),!1!==i&&o.on("end",r.next)},r.record=function(){!function(e){e.step=0,e.pop=function(){return e.actions[e.step++]},e.trap=function(t,r){var n=Array.isArray(t)?t:[t];e.actions.push({path:n,step:e.step,cb:r,trap:!0})},e.down=function(t){var r=(Array.isArray(t)?t:[t]).join("/"),n=e.actions.slice(e.step).map((function(t){return!(t.trap&&t.step<=e.step)&&t.path.join("/")==r})).indexOf(!0);n>=0?e.step+=n:e.step=e.actions.length;var i=e.actions[e.step-1];i&&i.trap?(e.step=i.step,i.cb()):e.next()},e.jump=function(t){e.step=t,e.next()}}(r)},["trap","down","jump"].forEach((function(e){r[e]=function(){throw new Error("To use the trap, down and jump features, please call record() first to start recording actions.")}})),r}},49818:e=>{e.exports=function(e,r){for(var n=[],i=0;i<e.length;i++){var a=r(e[i],i);t(a)?n.push.apply(n,a):n.push(a)}return n};var t=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},15622:(e,t,r)=>{function n(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===n(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===n(e)},t.isObject=function(e){return"object"==typeof e&&null!==e},t.isDate=function(e){return"[object Date]"===n(e)},t.isError=function(e){return"[object Error]"===n(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=r(20181).Buffer.isBuffer},52566:(e,t)=>{ -/*! crc32.js (C) 2014-present SheetJS -- http://sheetjs.com */ -var r;r=function(e){e.version="1.2.2";var t=function(){for(var e=0,t=new Array(256),r=0;256!=r;++r)e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=r)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1,t[r]=e;return"undefined"!=typeof Int32Array?new Int32Array(t):t}(),r=function(e){var t=0,r=0,n=0,i="undefined"!=typeof Int32Array?new Int32Array(4096):new Array(4096);for(n=0;256!=n;++n)i[n]=e[n];for(n=0;256!=n;++n)for(r=e[n],t=256+n;t<4096;t+=256)r=i[t]=r>>>8^e[255&r];var a=[];for(n=1;16!=n;++n)a[n-1]="undefined"!=typeof Int32Array?i.subarray(256*n,256*n+256):i.slice(256*n,256*n+256);return a}(t),n=r[0],i=r[1],a=r[2],o=r[3],s=r[4],c=r[5],l=r[6],u=r[7],d=r[8],p=r[9],f=r[10],m=r[11],g=r[12],_=r[13],h=r[14];e.table=t,e.bstr=function(e,r){for(var n=~r,i=0,a=e.length;i<a;)n=n>>>8^t[255&(n^e.charCodeAt(i++))];return~n},e.buf=function(e,r){for(var y=~r,v=e.length-15,b=0;b<v;)y=h[e[b++]^255&y]^_[e[b++]^y>>8&255]^g[e[b++]^y>>16&255]^m[e[b++]^y>>>24]^f[e[b++]]^p[e[b++]]^d[e[b++]]^u[e[b++]]^l[e[b++]]^c[e[b++]]^s[e[b++]]^o[e[b++]]^a[e[b++]]^i[e[b++]]^n[e[b++]]^t[e[b++]];for(v+=15;b<v;)y=y>>>8^t[255&(y^e[b++])];return~y},e.str=function(e,r){for(var n=~r,i=0,a=e.length,o=0,s=0;i<a;)(o=e.charCodeAt(i++))<128?n=n>>>8^t[255&(n^o)]:o<2048?n=(n=n>>>8^t[255&(n^(192|o>>6&31))])>>>8^t[255&(n^(128|63&o))]:o>=55296&&o<57344?(o=64+(1023&o),s=1023&e.charCodeAt(i++),n=(n=(n=(n=n>>>8^t[255&(n^(240|o>>8&7))])>>>8^t[255&(n^(128|o>>2&63))])>>>8^t[255&(n^(128|s>>6&15|(3&o)<<4))])>>>8^t[255&(n^(128|63&s))]):n=(n=(n=n>>>8^t[255&(n^(224|o>>12&15))])>>>8^t[255&(n^(128|o>>6&63))])>>>8^t[255&(n^(128|63&o))];return~n}},"undefined"==typeof DO_NOT_EXPORT_CRC?r(t):r({})},74353:function(e){e.exports=function(){"use strict";var e=1e3,t=6e4,r=36e5,n="millisecond",i="second",a="minute",o="hour",s="day",c="week",l="month",u="quarter",d="year",p="date",f="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,g=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,_={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],r=e%100;return"["+e+(t[(r-20)%10]||t[r]||t[0])+"]"}},h=function(e,t,r){var n=String(e);return!n||n.length>=t?e:""+Array(t+1-n.length).join(r)+e},y={s:h,z:function(e){var t=-e.utcOffset(),r=Math.abs(t),n=Math.floor(r/60),i=r%60;return(t<=0?"+":"-")+h(n,2,"0")+":"+h(i,2,"0")},m:function e(t,r){if(t.date()<r.date())return-e(r,t);var n=12*(r.year()-t.year())+(r.month()-t.month()),i=t.clone().add(n,l),a=r-i<0,o=t.clone().add(n+(a?-1:1),l);return+(-(n+(r-i)/(a?i-o:o-i))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(e){return{M:l,y:d,w:c,d:s,D:p,h:o,m:a,s:i,ms:n,Q:u}[e]||String(e||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}},v="en",b={};b[v]=_;var k="$isDayjsObject",x=function(e){return e instanceof w||!(!e||!e[k])},E=function e(t,r,n){var i;if(!t)return v;if("string"==typeof t){var a=t.toLowerCase();b[a]&&(i=a),r&&(b[a]=r,i=a);var o=t.split("-");if(!i&&o.length>1)return e(o[0])}else{var s=t.name;b[s]=t,i=s}return!n&&i&&(v=i),i||!n&&v},S=function(e,t){if(x(e))return e.clone();var r="object"==typeof t?t:{};return r.date=e,r.args=arguments,new w(r)},D=y;D.l=E,D.i=x,D.w=function(e,t){return S(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var w=function(){function _(e){this.$L=E(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[k]=!0}var h=_.prototype;return h.parse=function(e){this.$d=function(e){var t=e.date,r=e.utc;if(null===t)return new Date(NaN);if(D.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(m);if(n){var i=n[2]-1||0,a=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)):new Date(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)}}return new Date(t)}(e),this.init()},h.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},h.$utils=function(){return D},h.isValid=function(){return!(this.$d.toString()===f)},h.isSame=function(e,t){var r=S(e);return this.startOf(t)<=r&&r<=this.endOf(t)},h.isAfter=function(e,t){return S(e)<this.startOf(t)},h.isBefore=function(e,t){return this.endOf(t)<S(e)},h.$g=function(e,t,r){return D.u(e)?this[t]:this.set(r,e)},h.unix=function(){return Math.floor(this.valueOf()/1e3)},h.valueOf=function(){return this.$d.getTime()},h.startOf=function(e,t){var r=this,n=!!D.u(t)||t,u=D.p(e),f=function(e,t){var i=D.w(r.$u?Date.UTC(r.$y,t,e):new Date(r.$y,t,e),r);return n?i:i.endOf(s)},m=function(e,t){return D.w(r.toDate()[e].apply(r.toDate("s"),(n?[0,0,0,0]:[23,59,59,999]).slice(t)),r)},g=this.$W,_=this.$M,h=this.$D,y="set"+(this.$u?"UTC":"");switch(u){case d:return n?f(1,0):f(31,11);case l:return n?f(1,_):f(0,_+1);case c:var v=this.$locale().weekStart||0,b=(g<v?g+7:g)-v;return f(n?h-b:h+(6-b),_);case s:case p:return m(y+"Hours",0);case o:return m(y+"Minutes",1);case a:return m(y+"Seconds",2);case i:return m(y+"Milliseconds",3);default:return this.clone()}},h.endOf=function(e){return this.startOf(e,!1)},h.$set=function(e,t){var r,c=D.p(e),u="set"+(this.$u?"UTC":""),f=(r={},r[s]=u+"Date",r[p]=u+"Date",r[l]=u+"Month",r[d]=u+"FullYear",r[o]=u+"Hours",r[a]=u+"Minutes",r[i]=u+"Seconds",r[n]=u+"Milliseconds",r)[c],m=c===s?this.$D+(t-this.$W):t;if(c===l||c===d){var g=this.clone().set(p,1);g.$d[f](m),g.init(),this.$d=g.set(p,Math.min(this.$D,g.daysInMonth())).$d}else f&&this.$d[f](m);return this.init(),this},h.set=function(e,t){return this.clone().$set(e,t)},h.get=function(e){return this[D.p(e)]()},h.add=function(n,u){var p,f=this;n=Number(n);var m=D.p(u),g=function(e){var t=S(f);return D.w(t.date(t.date()+Math.round(e*n)),f)};if(m===l)return this.set(l,this.$M+n);if(m===d)return this.set(d,this.$y+n);if(m===s)return g(1);if(m===c)return g(7);var _=(p={},p[a]=t,p[o]=r,p[i]=e,p)[m]||1,h=this.$d.getTime()+n*_;return D.w(h,this)},h.subtract=function(e,t){return this.add(-1*e,t)},h.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return r.invalidDate||f;var n=e||"YYYY-MM-DDTHH:mm:ssZ",i=D.z(this),a=this.$H,o=this.$m,s=this.$M,c=r.weekdays,l=r.months,u=r.meridiem,d=function(e,r,i,a){return e&&(e[r]||e(t,n))||i[r].slice(0,a)},p=function(e){return D.s(a%12||12,e,"0")},m=u||function(e,t,r){var n=e<12?"AM":"PM";return r?n.toLowerCase():n};return n.replace(g,(function(e,n){return n||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return D.s(t.$y,4,"0");case"M":return s+1;case"MM":return D.s(s+1,2,"0");case"MMM":return d(r.monthsShort,s,l,3);case"MMMM":return d(l,s);case"D":return t.$D;case"DD":return D.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return d(r.weekdaysMin,t.$W,c,2);case"ddd":return d(r.weekdaysShort,t.$W,c,3);case"dddd":return c[t.$W];case"H":return String(a);case"HH":return D.s(a,2,"0");case"h":return p(1);case"hh":return p(2);case"a":return m(a,o,!0);case"A":return m(a,o,!1);case"m":return String(o);case"mm":return D.s(o,2,"0");case"s":return String(t.$s);case"ss":return D.s(t.$s,2,"0");case"SSS":return D.s(t.$ms,3,"0");case"Z":return i}return null}(e)||i.replace(":","")}))},h.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},h.diff=function(n,p,f){var m,g=this,_=D.p(p),h=S(n),y=(h.utcOffset()-this.utcOffset())*t,v=this-h,b=function(){return D.m(g,h)};switch(_){case d:m=b()/12;break;case l:m=b();break;case u:m=b()/3;break;case c:m=(v-y)/6048e5;break;case s:m=(v-y)/864e5;break;case o:m=v/r;break;case a:m=v/t;break;case i:m=v/e;break;default:m=v}return f?m:D.a(m)},h.daysInMonth=function(){return this.endOf(l).$D},h.$locale=function(){return b[this.$L]},h.locale=function(e,t){if(!e)return this.$L;var r=this.clone(),n=E(e,t,!0);return n&&(r.$L=n),r},h.clone=function(){return D.w(this.$d,this)},h.toDate=function(){return new Date(this.valueOf())},h.toJSON=function(){return this.isValid()?this.toISOString():null},h.toISOString=function(){return this.$d.toISOString()},h.toString=function(){return this.$d.toUTCString()},_}(),T=w.prototype;return S.prototype=T,[["$ms",n],["$s",i],["$m",a],["$H",o],["$W",s],["$M",l],["$y",d],["$D",p]].forEach((function(e){T[e[1]]=function(t){return this.$g(t,e[0],e[1])}})),S.extend=function(e,t){return e.$i||(e(t,w,S),e.$i=!0),S},S.locale=E,S.isDayjs=x,S.unix=function(e){return S(1e3*e)},S.en=b[v],S.Ls=b,S.p={},S}()},90445:function(e){e.exports=function(){"use strict";var e={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d\d/,n=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,a={},o=function(e){return(e=+e)+(e>68?1900:2e3)},s=function(e){return function(t){this[e]=+t}},c=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var t=e.match(/([+-]|\d\d)/g),r=60*t[1]+(+t[2]||0);return 0===r?0:"+"===t[0]?-r:r}(e)}],l=function(e){var t=a[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var r,n=a.meridiem;if(n){for(var i=1;i<=24;i+=1)if(e.indexOf(n(i,0,t))>-1){r=i>12;break}}else r=e===(t?"pm":"PM");return r},d={A:[i,function(e){this.afternoon=u(e,!1)}],a:[i,function(e){this.afternoon=u(e,!0)}],S:[/\d/,function(e){this.milliseconds=100*+e}],SS:[r,function(e){this.milliseconds=10*+e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[n,s("seconds")],ss:[n,s("seconds")],m:[n,s("minutes")],mm:[n,s("minutes")],H:[n,s("hours")],h:[n,s("hours")],HH:[n,s("hours")],hh:[n,s("hours")],D:[n,s("day")],DD:[r,s("day")],Do:[i,function(e){var t=a.ordinal,r=e.match(/\d+/);if(this.day=r[0],t)for(var n=1;n<=31;n+=1)t(n).replace(/\[|\]/g,"")===e&&(this.day=n)}],M:[n,s("month")],MM:[r,s("month")],MMM:[i,function(e){var t=l("months"),r=(l("monthsShort")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(r<1)throw new Error;this.month=r%12||r}],MMMM:[i,function(e){var t=l("months").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\d+/,s("year")],YY:[r,function(e){this.year=o(e)}],YYYY:[/\d{4}/,s("year")],Z:c,ZZ:c};function p(r){var n,i;n=r,i=a&&a.formats;for(var o=(r=n.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,r,n){var a=n&&n.toUpperCase();return r||i[n]||e[n]||i[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,r){return t||r.slice(1)}))}))).match(t),s=o.length,c=0;c<s;c+=1){var l=o[c],u=d[l],p=u&&u[0],f=u&&u[1];o[c]=f?{regex:p,parser:f}:l.replace(/^\[|\]$/g,"")}return function(e){for(var t={},r=0,n=0;r<s;r+=1){var i=o[r];if("string"==typeof i)n+=i.length;else{var a=i.regex,c=i.parser,l=e.slice(n),u=a.exec(l)[0];c.call(t,u),e=e.replace(u,"")}}return function(e){var t=e.afternoon;if(void 0!==t){var r=e.hours;t?r<12&&(e.hours+=12):12===r&&(e.hours=0),delete e.afternoon}}(t),t}}return function(e,t,r){r.p.customParseFormat=!0,e&&e.parseTwoDigitYear&&(o=e.parseTwoDigitYear);var n=t.prototype,i=n.parse;n.parse=function(e){var t=e.date,n=e.utc,o=e.args;this.$u=n;var s=o[1];if("string"==typeof s){var c=!0===o[2],l=!0===o[3],u=c||l,d=o[2];l&&(d=o[2]),a=this.$locale(),!c&&d&&(a=r.Ls[d]),this.$d=function(e,t,r){try{if(["x","X"].indexOf(t)>-1)return new Date(("X"===t?1e3:1)*e);var n=p(t)(e),i=n.year,a=n.month,o=n.day,s=n.hours,c=n.minutes,l=n.seconds,u=n.milliseconds,d=n.zone,f=new Date,m=o||(i||a?1:f.getDate()),g=i||f.getFullYear(),_=0;i&&!a||(_=a>0?a-1:f.getMonth());var h=s||0,y=c||0,v=l||0,b=u||0;return d?new Date(Date.UTC(g,_,m,h,y,v,b+60*d.offset*1e3)):r?new Date(Date.UTC(g,_,m,h,y,v,b)):new Date(g,_,m,h,y,v,b)}catch(e){return new Date("")}}(t,s,n),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(s)&&(this.$d=new Date("")),a={}}else if(s instanceof Array)for(var f=s.length,m=1;m<=f;m+=1){o[1]=s[m-1];var g=r.apply(this,o);if(g.isValid()){this.$d=g.$d,this.$L=g.$L,this.init();break}m===f&&(this.$d=new Date(""))}else i.call(this,e)}}}()},83826:function(e){e.exports=function(){"use strict";var e="minute",t=/[+-]\d\d(?::?\d\d)?/g,r=/([+-]|\d\d)/g;return function(n,i,a){var o=i.prototype;a.utc=function(e){return new i({date:e,utc:!0,args:arguments})},o.utc=function(t){var r=a(this.toDate(),{locale:this.$L,utc:!0});return t?r.add(this.utcOffset(),e):r},o.local=function(){return a(this.toDate(),{locale:this.$L,utc:!1})};var s=o.parse;o.parse=function(e){e.utc&&(this.$u=!0),this.$utils().u(e.$offset)||(this.$offset=e.$offset),s.call(this,e)};var c=o.init;o.init=function(){if(this.$u){var e=this.$d;this.$y=e.getUTCFullYear(),this.$M=e.getUTCMonth(),this.$D=e.getUTCDate(),this.$W=e.getUTCDay(),this.$H=e.getUTCHours(),this.$m=e.getUTCMinutes(),this.$s=e.getUTCSeconds(),this.$ms=e.getUTCMilliseconds()}else c.call(this)};var l=o.utcOffset;o.utcOffset=function(n,i){var a=this.$utils().u;if(a(n))return this.$u?0:a(this.$offset)?l.call(this):this.$offset;if("string"==typeof n&&(n=function(e){void 0===e&&(e="");var n=e.match(t);if(!n)return null;var i=(""+n[0]).match(r)||["-",0,0],a=i[0],o=60*+i[1]+ +i[2];return 0===o?0:"+"===a?o:-o}(n),null===n))return this;var o=Math.abs(n)<=16?60*n:n,s=this;if(i)return s.$offset=o,s.$u=0===n,s;if(0!==n){var c=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(s=this.local().add(o+c,e)).$offset=o,s.$x.$localOffset=c}else s=this.utc();return s};var u=o.format;o.format=function(e){var t=e||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return u.call(this,t)},o.valueOf=function(){var e=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*e},o.isUTC=function(){return!!this.$u},o.toISOString=function(){return this.toDate().toISOString()},o.toString=function(){return this.toDate().toUTCString()};var d=o.toDate;o.toDate=function(e){return"s"===e&&this.$offset?a(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():d.call(this)};var p=o.diff;o.diff=function(e,t,r){if(e&&this.$u===e.$u)return p.call(this,e,t,r);var n=this.local(),i=a(e).local();return p.call(n,i,t,r)}}}()},87450:(e,t,r)=>{"use strict";var n=r(35053);function i(e,t,r){void 0===r&&(r=t,t=e,e=null),n.Duplex.call(this,e),"function"!=typeof r.read&&(r=new n.Readable(e).wrap(r)),this._writable=t,this._readable=r,this._waiting=!1;var i=this;t.once("finish",(function(){i.end()})),this.once("finish",(function(){t.end()})),r.on("readable",(function(){i._waiting&&(i._waiting=!1,i._read())})),r.once("end",(function(){i.push(null)})),e&&void 0!==e.bubbleErrors&&!e.bubbleErrors||(t.on("error",(function(e){i.emit("error",e)})),r.on("error",(function(e){i.emit("error",e)})))}i.prototype=Object.create(n.Duplex.prototype,{constructor:{value:i}}),i.prototype._write=function(e,t,r){this._writable.write(e,t,r)},i.prototype._read=function(){for(var e,t=0;null!==(e=this._readable.read());)this.push(e),t++;0===t&&(this._waiting=!0)},e.exports=function(e,t,r){return new i(e,t,r)},e.exports.DuplexWrapper=i},44849:(e,t,r)=>{"use strict";var n=r(33225),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(15622));a.inherits=r(72017);var o=r(5335),s=r(75675);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},11557:(e,t,r)=>{"use strict";e.exports=a;var n=r(31719),i=Object.create(r(15622));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(72017),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},5335:(e,t,r)=>{"use strict";var n=r(33225);e.exports=y;var i,a=r(64634);y.ReadableState=h;r(24434).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(13961),c=r(92861).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(15622));u.inherits=r(72017);var d=r(39023),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(46631),g=r(72351);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(44849));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(83141).I),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(44849),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,E(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&E(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(83141).I),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(w,e,t))}function w(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):E(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&E(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},31719:(e,t,r)=>{"use strict";e.exports=o;var n=r(44849),i=Object.create(r(15622));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(72017),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},75675:(e,t,r)=>{"use strict";var n=r(33225);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(15622));s.inherits=r(72017);var c={deprecate:r(27983)},l=r(13961),u=r(92861).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(72351);function m(){}function g(e,t){a=a||r(44849),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(44849),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},46631:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=r(39023);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},72351:(e,t,r)=>{"use strict";var n=r(33225);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},13961:(e,t,r)=>{e.exports=r(2203)},35053:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(5335)).Stream=n||t,t.Readable=t,t.Writable=r(75675),t.Duplex=r(44849),t.Transform=r(31719),t.PassThrough=r(11557))},26611:(e,t,r)=>{var n=r(83519),i=function(){},a=function(e,t,r){if("function"==typeof t)return a(e,null,t);t||(t={}),r=n(r||i);var o=e._writableState,s=e._readableState,c=t.readable||!1!==t.readable&&e.readable,l=t.writable||!1!==t.writable&&e.writable,u=!1,d=function(){e.writable||p()},p=function(){l=!1,c||r.call(e)},f=function(){c=!1,l||r.call(e)},m=function(t){r.call(e,t?new Error("exited with error code: "+t):null)},g=function(t){r.call(e,t)},_=function(){process.nextTick(h)},h=function(){if(!u)return(!c||s&&s.ended&&!s.destroyed)&&(!l||o&&o.ended&&!o.destroyed)?void 0:r.call(e,new Error("premature close"))},y=function(){e.req.on("finish",p)};return!function(e){return e.setHeader&&"function"==typeof e.abort}(e)?l&&!o&&(e.on("end",d),e.on("close",d)):(e.on("complete",p),e.on("abort",_),e.req?y():e.on("request",y)),function(e){return e.stdio&&Array.isArray(e.stdio)&&3===e.stdio.length}(e)&&e.on("exit",m),e.on("end",f),e.on("finish",p),!1!==t.error&&e.on("error",g),e.on("close",_),function(){u=!0,e.removeListener("complete",p),e.removeListener("abort",_),e.removeListener("request",y),e.req&&e.req.removeListener("finish",p),e.removeListener("end",d),e.removeListener("close",d),e.removeListener("finish",p),e.removeListener("exit",m),e.removeListener("end",f),e.removeListener("error",g),e.removeListener("close",_)}};e.exports=a},6752:(e,t,r)=>{if(parseInt(process.versions.node.split(".")[0],10)<10)throw new Error("For node versions older than 10, please use the ES5 Import: https://github.com/exceljs/exceljs#es5-imports");e.exports=r(25046)},75772:(e,t,r)=>{const n=r(79896),i=r(67808),a=r(90445),o=r(83826),s=r(74353).extend(a).extend(o),c=r(87137),{fs:{exists:l}}=r(67032),u={true:!0,false:!1,"#N/A":{error:"#N/A"},"#REF!":{error:"#REF!"},"#NAME?":{error:"#NAME?"},"#DIV/0!":{error:"#DIV/0!"},"#NULL!":{error:"#NULL!"},"#VALUE!":{error:"#VALUE!"},"#NUM!":{error:"#NUM!"}};e.exports=class{constructor(e){this.workbook=e,this.worksheet=null}async readFile(e,t){if(t=t||{},!await l(e))throw new Error(`File not found: ${e}`);const r=n.createReadStream(e),i=await this.read(r,t);return r.close(),i}read(e,t){return t=t||{},new Promise(((r,n)=>{const a=this.workbook.addWorksheet(t.sheetName),o=t.dateFormats||["YYYY-MM-DD[T]HH:mm:ssZ","YYYY-MM-DD[T]HH:mm:ss","MM-DD-YYYY","YYYY-MM-DD"],c=t.map||function(e){if(""===e)return null;const t=Number(e);if(!Number.isNaN(t)&&t!==1/0)return t;const r=o.reduce(((t,r)=>{if(t)return t;const n=s(e,r,!0);return n.isValid()?n:null}),null);if(r)return new Date(r.valueOf());const n=u[e];return void 0!==n?n:e},l=i.parse(t.parserOptions).on("data",(e=>{a.addRow(e.map(c))})).on("end",(()=>{l.emit("worksheet",a)}));l.on("worksheet",r).on("error",n),e.pipe(l)}))}createInputStream(){throw new Error("`CSV#createInputStream` is deprecated. You should use `CSV#read` instead. This method will be removed in version 5.0. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md")}write(e,t){return new Promise(((r,n)=>{t=t||{};const a=this.workbook.getWorksheet(t.sheetName||t.sheetId),o=i.format(t.formatterOptions);e.on("finish",(()=>{r()})),o.on("error",n),o.pipe(e);const{dateFormat:c,dateUTC:l}=t,u=t.map||(e=>{if(e){if(e.text||e.hyperlink)return e.hyperlink||e.text||"";if(e.formula||e.result)return e.result||"";if(e instanceof Date)return c?l?s.utc(e).format(c):s(e).format(c):l?s.utc(e).format():s(e).format();if(e.error)return e.error;if("object"==typeof e)return JSON.stringify(e)}return e}),d=void 0===t.includeEmptyRows||t.includeEmptyRows;let p=1;a&&a.eachRow(((e,t)=>{if(d)for(;p++<t-1;)o.write([]);const{values:r}=e;r.shift(),o.write(r.map(u)),p=t})),o.end()}))}writeFile(e,t){const r={encoding:(t=t||{}).encoding||"utf8"},i=n.createWriteStream(e,r);return this.write(i,t)}async writeBuffer(e){const t=new c;return await this.write(t,e),t.read()}}},14917:(e,t,r)=>{"use strict";const n=r(29428);class i{constructor(e,t,r=0){if(this.worksheet=e,t)if("string"==typeof t){const e=n.decodeAddress(t);this.nativeCol=e.col+r,this.nativeColOff=0,this.nativeRow=e.row+r,this.nativeRowOff=0}else void 0!==t.nativeCol?(this.nativeCol=t.nativeCol||0,this.nativeColOff=t.nativeColOff||0,this.nativeRow=t.nativeRow||0,this.nativeRowOff=t.nativeRowOff||0):void 0!==t.col?(this.col=t.col+r,this.row=t.row+r):(this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0);else this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0}static asInstance(e){return e instanceof i||null==e?e:new i(e)}get col(){return this.nativeCol+Math.min(this.colWidth-1,this.nativeColOff)/this.colWidth}set col(e){this.nativeCol=Math.floor(e),this.nativeColOff=Math.floor((e-this.nativeCol)*this.colWidth)}get row(){return this.nativeRow+Math.min(this.rowHeight-1,this.nativeRowOff)/this.rowHeight}set row(e){this.nativeRow=Math.floor(e),this.nativeRowOff=Math.floor((e-this.nativeRow)*this.rowHeight)}get colWidth(){return this.worksheet&&this.worksheet.getColumn(this.nativeCol+1)&&this.worksheet.getColumn(this.nativeCol+1).isCustomWidth?Math.floor(1e4*this.worksheet.getColumn(this.nativeCol+1).width):64e4}get rowHeight(){return this.worksheet&&this.worksheet.getRow(this.nativeRow+1)&&this.worksheet.getRow(this.nativeRow+1).height?Math.floor(1e4*this.worksheet.getRow(this.nativeRow+1).height):18e4}get model(){return{nativeCol:this.nativeCol,nativeColOff:this.nativeColOff,nativeRow:this.nativeRow,nativeRowOff:this.nativeRowOff}}set model(e){this.nativeCol=e.nativeCol,this.nativeColOff=e.nativeColOff,this.nativeRow=e.nativeRow,this.nativeRowOff=e.nativeRowOff}}e.exports=i},88732:(e,t,r)=>{const n=r(29428),i=r(67984),a=r(70880),{slideFormula:o}=r(34667),s=r(87952);class c{constructor(e,t,r){if(!e||!t)throw new Error("A Cell needs a Row");this._row=e,this._column=t,n.validateAddress(r),this._address=r,this._value=l.create(c.Types.Null,this),this.style=this._mergeStyle(e.style,t.style,{}),this._mergeCount=0}get worksheet(){return this._row.worksheet}get workbook(){return this._row.worksheet.workbook}destroy(){delete this.style,delete this._value,delete this._row,delete this._column,delete this._address}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e}get font(){return this.style.font}set font(e){this.style.font=e}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e}get border(){return this.style.border}set border(e){this.style.border=e}get fill(){return this.style.fill}set fill(e){this.style.fill=e}get protection(){return this.style.protection}set protection(e){this.style.protection=e}_mergeStyle(e,t,r){const n=e&&e.numFmt||t&&t.numFmt;n&&(r.numFmt=n);const i=e&&e.font||t&&t.font;i&&(r.font=i);const a=e&&e.alignment||t&&t.alignment;a&&(r.alignment=a);const o=e&&e.border||t&&t.border;o&&(r.border=o);const s=e&&e.fill||t&&t.fill;s&&(r.fill=s);const c=e&&e.protection||t&&t.protection;return c&&(r.protection=c),r}get address(){return this._address}get row(){return this._row.number}get col(){return this._column.number}get $col$row(){return`$${this._column.letter}$${this.row}`}get type(){return this._value.type}get effectiveType(){return this._value.effectiveType}toCsvString(){return this._value.toCsvString()}addMergeRef(){this._mergeCount++}releaseMergeRef(){this._mergeCount--}get isMerged(){return this._mergeCount>0||this.type===c.Types.Merge}merge(e,t){this._value.release(),this._value=l.create(c.Types.Merge,this,e),t||(this.style=e.style)}unmerge(){this.type===c.Types.Merge&&(this._value.release(),this._value=l.create(c.Types.Null,this),this.style=this._mergeStyle(this._row.style,this._column.style,{}))}isMergedTo(e){return this._value.type===c.Types.Merge&&this._value.isMergedTo(e)}get master(){return this.type===c.Types.Merge?this._value.master:this}get isHyperlink(){return this._value.type===c.Types.Hyperlink}get hyperlink(){return this._value.hyperlink}get value(){return this._value.value}set value(e){this.type!==c.Types.Merge?(this._value.release(),this._value=l.create(l.getType(e),this,e)):this._value.master.value=e}get note(){return this._comment&&this._comment.note}set note(e){this._comment=new s(e)}get text(){return this._value.toString()}get html(){return i.escapeHtml(this.text)}toString(){return this.text}_upgradeToHyperlink(e){this.type===c.Types.String&&(this._value=l.create(c.Types.Hyperlink,this,{text:this._value.value,hyperlink:e}))}get formula(){return this._value.formula}get result(){return this._value.result}get formulaType(){return this._value.formulaType}get fullAddress(){const{worksheet:e}=this._row;return{sheetName:e.name,address:this.address,row:this.row,col:this.col}}get name(){return this.names[0]}set name(e){this.names=[e]}get names(){return this.workbook.definedNames.getNamesEx(this.fullAddress)}set names(e){const{definedNames:t}=this.workbook;t.removeAllNames(this.fullAddress),e.forEach((e=>{t.addEx(this.fullAddress,e)}))}addName(e){this.workbook.definedNames.addEx(this.fullAddress,e)}removeName(e){this.workbook.definedNames.removeEx(this.fullAddress,e)}removeAllNames(){this.workbook.definedNames.removeAllNames(this.fullAddress)}get _dataValidations(){return this.worksheet.dataValidations}get dataValidation(){return this._dataValidations.find(this.address)}set dataValidation(e){this._dataValidations.add(this.address,e)}get model(){const{model:e}=this._value;return e.style=this.style,this._comment&&(e.comment=this._comment.model),e}set model(e){if(this._value.release(),this._value=l.create(e.type,this),this._value.model=e,e.comment&&"note"===e.comment.type)this._comment=s.fromModel(e.comment);e.style?this.style=e.style:this.style={}}}c.Types=a.ValueType;const l={getType:e=>null==e?c.Types.Null:e instanceof String||"string"==typeof e?c.Types.String:"number"==typeof e?c.Types.Number:"boolean"==typeof e?c.Types.Boolean:e instanceof Date?c.Types.Date:e.text&&e.hyperlink?c.Types.Hyperlink:e.formula||e.sharedFormula?c.Types.Formula:e.richText?c.Types.RichText:e.sharedString?c.Types.SharedString:e.error?c.Types.Error:c.Types.JSON,types:[{t:c.Types.Null,f:class{constructor(e){this.model={address:e.address,type:c.Types.Null}}get value(){return null}set value(e){}get type(){return c.Types.Null}get effectiveType(){return c.Types.Null}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return""}release(){}toString(){return""}}},{t:c.Types.Number,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Number,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Number}get effectiveType(){return c.Types.Number}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.String,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.String}get effectiveType(){return c.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return`"${this.model.value.replace(/"/g,'""')}"`}release(){}toString(){return this.model.value}}},{t:c.Types.Date,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Date,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Date}get effectiveType(){return c.Types.Date}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toISOString()}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.Hyperlink,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Hyperlink,text:t?t.text:void 0,hyperlink:t?t.hyperlink:void 0},t&&t.tooltip&&(this.model.tooltip=t.tooltip)}get value(){const e={text:this.model.text,hyperlink:this.model.hyperlink};return this.model.tooltip&&(e.tooltip=this.model.tooltip),e}set value(e){this.model={text:e.text,hyperlink:e.hyperlink},e.tooltip&&(this.model.tooltip=e.tooltip)}get text(){return this.model.text}set text(e){this.model.text=e}get hyperlink(){return this.model.hyperlink}set hyperlink(e){this.model.hyperlink=e}get type(){return c.Types.Hyperlink}get effectiveType(){return c.Types.Hyperlink}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.hyperlink}release(){}toString(){return this.model.text}}},{t:c.Types.Formula,f:class{constructor(e,t){this.cell=e,this.model={address:e.address,type:c.Types.Formula,shareType:t?t.shareType:void 0,ref:t?t.ref:void 0,formula:t?t.formula:void 0,sharedFormula:t?t.sharedFormula:void 0,result:t?t.result:void 0}}_copyModel(e){const t={},r=r=>{const n=e[r];n&&(t[r]=n)};return r("formula"),r("result"),r("ref"),r("shareType"),r("sharedFormula"),t}get value(){return this._copyModel(this.model)}set value(e){this.model=this._copyModel(e)}validate(e){switch(l.getType(e)){case c.Types.Null:case c.Types.String:case c.Types.Number:case c.Types.Date:break;case c.Types.Hyperlink:case c.Types.Formula:default:throw new Error("Cannot process that type of result value")}}get dependencies(){return{ranges:this.formula.match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g),cells:this.formula.replace(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g,"").match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}/g)}}get formula(){return this.model.formula||this._getTranslatedFormula()}set formula(e){this.model.formula=e}get formulaType(){return this.model.formula?a.FormulaType.Master:this.model.sharedFormula?a.FormulaType.Shared:a.FormulaType.None}get result(){return this.model.result}set result(e){this.model.result=e}get type(){return c.Types.Formula}get effectiveType(){const e=this.model.result;return null==e?a.ValueType.Null:e instanceof String||"string"==typeof e?a.ValueType.String:"number"==typeof e?a.ValueType.Number:e instanceof Date?a.ValueType.Date:e.text&&e.hyperlink?a.ValueType.Hyperlink:e.formula?a.ValueType.Formula:a.ValueType.Null}get address(){return this.model.address}set address(e){this.model.address=e}_getTranslatedFormula(){if(!this._translatedFormula&&this.model.sharedFormula){const{worksheet:e}=this.cell,t=e.findCell(this.model.sharedFormula);this._translatedFormula=t&&o(t.formula,t.address,this.model.address)}return this._translatedFormula}toCsvString(){return`${this.model.result||""}`}release(){}toString(){return this.model.result?this.model.result.toString():""}}},{t:c.Types.Merge,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Merge,master:t?t.address:void 0},this._master=t,t&&t.addMergeRef()}get value(){return this._master.value}set value(e){e instanceof c?(this._master&&this._master.releaseMergeRef(),e.addMergeRef(),this._master=e):this._master.value=e}isMergedTo(e){return e===this._master}get master(){return this._master}get type(){return c.Types.Merge}get effectiveType(){return this._master.effectiveType}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return""}release(){this._master.releaseMergeRef()}toString(){return this.value.toString()}}},{t:c.Types.JSON,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.String,value:JSON.stringify(t),rawValue:t}}get value(){return this.model.rawValue}set value(e){this.model.rawValue=e,this.model.value=JSON.stringify(e)}get type(){return c.Types.String}get effectiveType(){return c.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value}release(){}toString(){return this.model.value}}},{t:c.Types.SharedString,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.SharedString,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.SharedString}get effectiveType(){return c.Types.SharedString}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.RichText,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}toString(){return this.model.value.richText.map((e=>e.text)).join("")}get type(){return c.Types.RichText}get effectiveType(){return c.Types.RichText}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return`"${this.text.replace(/"/g,'""')}"`}release(){}}},{t:c.Types.Boolean,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Boolean,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Boolean}get effectiveType(){return c.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value?1:0}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.Error,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Error,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Error}get effectiveType(){return c.Types.Error}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.toString()}release(){}toString(){return this.model.value.error.toString()}}}].reduce(((e,t)=>(e[t.t]=t.f,e)),[]),create(e,t,r){const n=this.types[e];if(!n)throw new Error(`Could not create Value of type ${e}`);return new n(t,r)}};e.exports=c},93362:(e,t,r)=>{"use strict";const n=r(67984),i=r(70880),a=r(29428);class o{constructor(e,t,r){this._worksheet=e,this._number=t,!1!==r&&(this.defn=r)}get number(){return this._number}get worksheet(){return this._worksheet}get letter(){return a.n2l(this._number)}get isCustomWidth(){return void 0!==this.width&&9!==this.width}get defn(){return{header:this._header,key:this.key,width:this.width,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel}}set defn(e){e?(this.key=e.key,this.width=void 0!==e.width?e.width:9,this.outlineLevel=e.outlineLevel,e.style?this.style=e.style:this.style={},this.header=e.header,this._hidden=!!e.hidden):(delete this._header,delete this._key,delete this.width,this.style={},this.outlineLevel=0)}get headers(){return this._header&&this._header instanceof Array?this._header:[this._header]}get header(){return this._header}set header(e){void 0!==e?(this._header=e,this.headers.forEach(((e,t)=>{this._worksheet.getCell(t+1,this.number).value=e}))):this._header=void 0}get key(){return this._key}set key(e){(this._key&&this._worksheet.getColumnKey(this._key))===this&&this._worksheet.deleteColumnKey(this._key),this._key=e,e&&this._worksheet.setColumnKey(this._key,this)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel||0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=this._worksheet.properties.outlineLevelCol)}toString(){return JSON.stringify({key:this.key,width:this.width,headers:this.headers.length?this.headers:void 0})}equivalentTo(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&n.isEqual(this.style,e.style)}get isDefault(){if(this.isCustomWidth)return!1;if(this.hidden)return!1;if(this.outlineLevel)return!1;const e=this.style;return!e||!(e.font||e.numFmt||e.alignment||e.border||e.fill||e.protection)}get headerCount(){return this.headers.length}eachCell(e,t){const r=this.number;t||(t=e,e=null),this._worksheet.eachRow(e,((e,n)=>{t(e.getCell(r),n)}))}get values(){const e=[];return this.eachCell(((t,r)=>{t&&t.type!==i.ValueType.Null&&(e[r]=t.value)})),e}set values(e){if(!e)return;const t=this.number;let r=0;e.hasOwnProperty("0")&&(r=1),e.forEach(((e,n)=>{this._worksheet.getCell(n+r,t).value=e}))}_applyStyle(e,t){return this.style[e]=t,this.eachCell((r=>{r[e]=t})),t}get numFmt(){return this.style.numFmt}set numFmt(e){this._applyStyle("numFmt",e)}get font(){return this.style.font}set font(e){this._applyStyle("font",e)}get alignment(){return this.style.alignment}set alignment(e){this._applyStyle("alignment",e)}get protection(){return this.style.protection}set protection(e){this._applyStyle("protection",e)}get border(){return this.style.border}set border(e){this._applyStyle("border",e)}get fill(){return this.style.fill}set fill(e){this._applyStyle("fill",e)}static toModel(e){const t=[];let r=null;return e&&e.forEach(((e,n)=>{e.isDefault?r&&(r=null):r&&e.equivalentTo(r)?r.max=n+1:(r={min:n+1,max:n+1,width:void 0!==e.width?e.width:9,style:e.style,isCustomWidth:e.isCustomWidth,hidden:e.hidden,outlineLevel:e.outlineLevel,collapsed:e.collapsed},t.push(r))})),t.length?t:void 0}static fromModel(e,t){const r=[];let n=1,i=0;for(t=(t=t||[]).sort((function(e,t){return e.min-t.min}));i<t.length;){const a=t[i++];for(;n<a.min;)r.push(new o(e,n++));for(;n<=a.max;)r.push(new o(e,n++,a))}return r.length?r:null}}e.exports=o},88561:e=>{e.exports=class{constructor(e){this.model=e||{}}add(e,t){return this.model[e]=t}find(e){return this.model[e]}remove(e){this.model[e]=void 0}}},13522:(e,t,r)=>{"use strict";const n=r(67984),i=r(29428),a=r(38583),o=r(69311),s=/[$](\w+)[$](\d+)(:[$](\w+)[$](\d+))?/;e.exports=class{constructor(){this.matrixMap={}}getMatrix(e){return this.matrixMap[e]||(this.matrixMap[e]=new a)}add(e,t){const r=i.decodeEx(e);this.addEx(r,t)}addEx(e,t){const r=this.getMatrix(t);if(e.top)for(let t=e.left;t<=e.right;t++)for(let n=e.top;n<=e.bottom;n++){const a={sheetName:e.sheetName,address:i.n2l(t)+n,row:n,col:t};r.addCellEx(a)}else r.addCellEx(e)}remove(e,t){const r=i.decodeEx(e);this.removeEx(r,t)}removeEx(e,t){this.getMatrix(t).removeCellEx(e)}removeAllNames(e){n.each(this.matrixMap,(t=>{t.removeCellEx(e)}))}forEach(e){n.each(this.matrixMap,((t,r)=>{t.forEach((t=>{e(r,t)}))}))}getNames(e){return this.getNamesEx(i.decodeEx(e))}getNamesEx(e){return n.map(this.matrixMap,((t,r)=>t.findCellEx(e)&&r)).filter(Boolean)}_explore(e,t){t.mark=!1;const{sheetName:r}=t,n=new o(t.row,t.col,t.row,t.col,r);let i,a;function s(i,a){const o=e.findCellAt(r,i,t.col);return!(!o||!o.mark)&&(n[a]=i,o.mark=!1,!0)}for(a=t.row-1;s(a,"top");a--);for(a=t.row+1;s(a,"bottom");a++);function c(t,i){const o=[];for(a=n.top;a<=n.bottom;a++){const n=e.findCellAt(r,a,t);if(!n||!n.mark)return!1;o.push(n)}n[i]=t;for(let e=0;e<o.length;e++)o[e].mark=!1;return!0}for(i=t.col-1;c(i,"left");i--);for(i=t.col+1;c(i,"right");i++);return n}getRanges(e,t){if(!(t=t||this.matrixMap[e]))return{name:e,ranges:[]};t.forEach((e=>{e.mark=!0}));return{name:e,ranges:t.map((e=>e.mark&&this._explore(t,e))).filter(Boolean).map((e=>e.$shortRange))}}normaliseMatrix(e,t){e.forEachInSheet(t,((e,t,r)=>{e&&(e.row===t&&e.col===r||(e.row=t,e.col=r,e.address=i.n2l(r)+t))}))}spliceRows(e,t,r,i){n.each(this.matrixMap,(n=>{n.spliceRows(e,t,r,i),this.normaliseMatrix(n,e)}))}spliceColumns(e,t,r,i){n.each(this.matrixMap,(n=>{n.spliceColumns(e,t,r,i),this.normaliseMatrix(n,e)}))}get model(){return n.map(this.matrixMap,((e,t)=>this.getRanges(t,e))).filter((e=>e.ranges.length))}set model(e){const t=this.matrixMap={};e.forEach((e=>{const r=t[e.name]=new a;e.ranges.forEach((e=>{s.test(e.split("!").pop()||"")&&r.addCell(e)}))}))}}},70880:e=>{"use strict";e.exports={ValueType:{Null:0,Merge:1,Number:2,String:3,Date:4,Hyperlink:5,Formula:6,SharedString:7,RichText:8,Boolean:9,Error:10},FormulaType:{None:0,Master:1,Shared:2},RelationshipType:{None:0,OfficeDocument:1,Worksheet:2,CalcChain:3,SharedStrings:4,Styles:5,Theme:6,Hyperlink:7},DocumentType:{Xlsx:1},ReadingOrder:{LeftToRight:1,RightToLeft:2},ErrorValue:{NotApplicable:"#N/A",Ref:"#REF!",Name:"#NAME?",DivZero:"#DIV/0!",Null:"#NULL!",Value:"#VALUE!",Num:"#NUM!"}}},90239:(e,t,r)=>{const n=r(29428),i=r(14917);e.exports=class{constructor(e,t){this.worksheet=e,this.model=t}get model(){switch(this.type){case"background":return{type:this.type,imageId:this.imageId};case"image":return{type:this.type,imageId:this.imageId,hyperlinks:this.range.hyperlinks,range:{tl:this.range.tl.model,br:this.range.br&&this.range.br.model,ext:this.range.ext,editAs:this.range.editAs}};default:throw new Error("Invalid Image Type")}}set model({type:e,imageId:t,range:r,hyperlinks:a}){if(this.type=e,this.imageId=t,"image"===e)if("string"==typeof r){const e=n.decode(r);this.range={tl:new i(this.worksheet,{col:e.left,row:e.top},-1),br:new i(this.worksheet,{col:e.right,row:e.bottom},0),editAs:"oneCell"}}else this.range={tl:new i(this.worksheet,r.tl,0),br:r.br&&new i(this.worksheet,r.br,0),ext:r.ext,editAs:r.editAs,hyperlinks:a||r.hyperlinks}}}},98236:(e,t,r)=>{"use strict";const n=r(59276);e.exports=class{constructor(e){this.model=e}get xlsx(){return this._xlsx||(this._xlsx=new n(this)),this._xlsx}}},87952:(e,t,r)=>{const n=r(67984);class i{constructor(e){this.note=e}get model(){let e=null;if("string"==typeof this.note)e={type:"note",note:{texts:[{text:this.note}]}};else e={type:"note",note:this.note};return n.deepMerge({},i.DEFAULT_CONFIGS,e)}set model(e){const{note:t}=e,{texts:r}=t;1===r.length&&1===Object.keys(r[0]).length?this.note=r[0].text:this.note=t}static fromModel(e){const t=new i;return t.model=e,t}}i.DEFAULT_CONFIGS={note:{margins:{insetmode:"auto",inset:[.13,.13,.25,.25]},protection:{locked:"True",lockText:"True"},editAs:"absolute"}},e.exports=i},69311:(e,t,r)=>{const n=r(29428);class i{constructor(){this.decode(arguments)}setTLBR(e,t,r,i,a){if(arguments.length<4){const i=n.decodeAddress(e),o=n.decodeAddress(t);this.model={top:Math.min(i.row,o.row),left:Math.min(i.col,o.col),bottom:Math.max(i.row,o.row),right:Math.max(i.col,o.col),sheetName:r},this.setTLBR(i.row,i.col,o.row,o.col,a)}else this.model={top:Math.min(e,r),left:Math.min(t,i),bottom:Math.max(e,r),right:Math.max(t,i),sheetName:a}}decode(e){switch(e.length){case 5:this.setTLBR(e[0],e[1],e[2],e[3],e[4]);break;case 4:this.setTLBR(e[0],e[1],e[2],e[3]);break;case 3:this.setTLBR(e[0],e[1],e[2]);break;case 2:this.setTLBR(e[0],e[1]);break;case 1:{const t=e[0];if(t instanceof i)this.model={top:t.model.top,left:t.model.left,bottom:t.model.bottom,right:t.model.right,sheetName:t.sheetName};else if(t instanceof Array)this.decode(t);else if(t.top&&t.left&&t.bottom&&t.right)this.model={top:t.top,left:t.left,bottom:t.bottom,right:t.right,sheetName:t.sheetName};else{const e=n.decodeEx(t);e.top?this.model={top:e.top,left:e.left,bottom:e.bottom,right:e.right,sheetName:e.sheetName}:this.model={top:e.row,left:e.col,bottom:e.row,right:e.col,sheetName:e.sheetName}}break}case 0:this.model={top:0,left:0,bottom:0,right:0};break;default:throw new Error(`Invalid number of arguments to _getDimensions() - ${e.length}`)}}get top(){return this.model.top||1}set top(e){this.model.top=e}get left(){return this.model.left||1}set left(e){this.model.left=e}get bottom(){return this.model.bottom||1}set bottom(e){this.model.bottom=e}get right(){return this.model.right||1}set right(e){this.model.right=e}get sheetName(){return this.model.sheetName}set sheetName(e){this.model.sheetName=e}get _serialisedSheetName(){const{sheetName:e}=this.model;return e?/^[a-zA-Z0-9]*$/.test(e)?`${e}!`:`'${e}'!`:""}expand(e,t,r,n){(!this.model.top||e<this.top)&&(this.top=e),(!this.model.left||t<this.left)&&(this.left=t),(!this.model.bottom||r>this.bottom)&&(this.bottom=r),(!this.model.right||n>this.right)&&(this.right=n)}expandRow(e){if(e){const{dimensions:t,number:r}=e;t&&this.expand(r,t.min,r,t.max)}}expandToAddress(e){const t=n.decodeEx(e);this.expand(t.row,t.col,t.row,t.col)}get tl(){return n.n2l(this.left)+this.top}get $t$l(){return`$${n.n2l(this.left)}$${this.top}`}get br(){return n.n2l(this.right)+this.bottom}get $b$r(){return`$${n.n2l(this.right)}$${this.bottom}`}get range(){return`${this._serialisedSheetName+this.tl}:${this.br}`}get $range(){return`${this._serialisedSheetName+this.$t$l}:${this.$b$r}`}get shortRange(){return this.count>1?this.range:this._serialisedSheetName+this.tl}get $shortRange(){return this.count>1?this.$range:this._serialisedSheetName+this.$t$l}get count(){return(1+this.bottom-this.top)*(1+this.right-this.left)}toString(){return this.range}intersects(e){return(!e.sheetName||!this.sheetName||e.sheetName===this.sheetName)&&(!(e.bottom<this.top)&&(!(e.top>this.bottom)&&(!(e.right<this.left)&&!(e.left>this.right))))}contains(e){const t=n.decodeEx(e);return this.containsEx(t)}containsEx(e){return(!e.sheetName||!this.sheetName||e.sheetName===this.sheetName)&&(e.row>=this.top&&e.row<=this.bottom&&e.col>=this.left&&e.col<=this.right)}forEachAddress(e){for(let t=this.left;t<=this.right;t++)for(let r=this.top;r<=this.bottom;r++)e(n.encodeAddress(r,t),r,t)}}e.exports=i},5842:(e,t,r)=>{"use strict";const n=r(67984),i=r(70880),a=r(29428),o=r(88732);e.exports=class{constructor(e,t){this._worksheet=e,this._number=t,this._cells=[],this.style={},this.outlineLevel=0}get number(){return this._number}get worksheet(){return this._worksheet}commit(){this._worksheet._commitRow(this)}destroy(){delete this._worksheet,delete this._cells,delete this.style}findCell(e){return this._cells[e-1]}getCellEx(e){let t=this._cells[e.col-1];if(!t){const r=this._worksheet.getColumn(e.col);t=new o(this,r,e.address),this._cells[e.col-1]=t}return t}getCell(e){if("string"==typeof e){const t=this._worksheet.getColumnKey(e);e=t?t.number:a.l2n(e)}return this._cells[e-1]||this.getCellEx({address:a.encodeAddress(this._number,e),row:this._number,col:e})}splice(e,t,...r){const n=e+t,i=r.length-t,a=this._cells.length;let o,s,c;if(i<0)for(o=e+r.length;o<=a;o++)c=this._cells[o-1],s=this._cells[o-i-1],s?(c=this.getCell(o),c.value=s.value,c.style=s.style,c._comment=s._comment):c&&(c.value=null,c.style={},c._comment=void 0);else if(i>0)for(o=a;o>=n;o--)s=this._cells[o-1],s?(c=this.getCell(o+i),c.value=s.value,c.style=s.style,c._comment=s._comment):this._cells[o+i-1]=void 0;for(o=0;o<r.length;o++)c=this.getCell(e+o),c.value=r[o],c.style={},c._comment=void 0}eachCell(e,t){if(t||(t=e,e=null),e&&e.includeEmpty){const e=this._cells.length;for(let r=1;r<=e;r++)t(this.getCell(r),r)}else this._cells.forEach(((e,r)=>{e&&e.type!==i.ValueType.Null&&t(e,r+1)}))}addPageBreak(e,t){const r=this._worksheet,n=Math.max(0,e-1)||0,i=Math.max(0,t-1)||16838,a={id:this._number,max:i,man:1};n&&(a.min=n),r.rowBreaks.push(a)}get values(){const e=[];return this._cells.forEach((t=>{t&&t.type!==i.ValueType.Null&&(e[t.col]=t.value)})),e}set values(e){if(this._cells=[],e)if(e instanceof Array){let t=0;e.hasOwnProperty("0")&&(t=1),e.forEach(((e,r)=>{void 0!==e&&(this.getCellEx({address:a.encodeAddress(this._number,r+t),row:this._number,col:r+t}).value=e)}))}else this._worksheet.eachColumnKey(((t,r)=>{void 0!==e[r]&&(this.getCellEx({address:a.encodeAddress(this._number,t.number),row:this._number,col:t.number}).value=e[r])}));else;}get hasValues(){return n.some(this._cells,(e=>e&&e.type!==i.ValueType.Null))}get cellCount(){return this._cells.length}get actualCellCount(){let e=0;return this.eachCell((()=>{e++})),e}get dimensions(){let e=0,t=0;return this._cells.forEach((r=>{r&&r.type!==i.ValueType.Null&&((!e||e>r.col)&&(e=r.col),t<r.col&&(t=r.col))})),e>0?{min:e,max:t}:null}_applyStyle(e,t){return this.style[e]=t,this._cells.forEach((r=>{r&&(r[e]=t)})),t}get numFmt(){return this.style.numFmt}set numFmt(e){this._applyStyle("numFmt",e)}get font(){return this.style.font}set font(e){this._applyStyle("font",e)}get alignment(){return this.style.alignment}set alignment(e){this._applyStyle("alignment",e)}get protection(){return this.style.protection}set protection(e){this._applyStyle("protection",e)}get border(){return this.style.border}set border(e){this._applyStyle("border",e)}get fill(){return this.style.fill}set fill(e){this._applyStyle("fill",e)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel||0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=this._worksheet.properties.outlineLevelRow)}get model(){const e=[];let t=0,r=0;return this._cells.forEach((n=>{if(n){const i=n.model;i&&((!t||t>n.col)&&(t=n.col),r<n.col&&(r=n.col),e.push(i))}})),this.height||e.length?{cells:e,number:this.number,min:t,max:r,height:this.height,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel,collapsed:this.collapsed}:null}set model(e){if(e.number!==this._number)throw new Error("Invalid row number in model");let t;this._cells=[],e.cells.forEach((e=>{switch(e.type){case o.Types.Merge:break;default:{let r;if(e.address)r=a.decodeAddress(e.address);else if(t){const{row:e}=t,n=t.col+1;r={row:e,col:n,address:a.encodeAddress(e,n),$col$row:`$${a.n2l(n)}$${e}`}}t=r;this.getCellEx(r).model=e;break}}})),e.height?this.height=e.height:delete this.height,this.hidden=e.hidden,this.outlineLevel=e.outlineLevel||0,this.style=e.style&&JSON.parse(JSON.stringify(e.style))||{}}}},7694:(e,t,r)=>{const n=r(29428);class i{constructor(e,t,r){this.table=e,this.column=t,this.index=r}_set(e,t){this.table.cacheState(),this.column[e]=t}get name(){return this.column.name}set name(e){this._set("name",e)}get filterButton(){return this.column.filterButton}set filterButton(e){this.column.filterButton=e}get style(){return this.column.style}set style(e){this.column.style=e}get totalsRowLabel(){return this.column.totalsRowLabel}set totalsRowLabel(e){this._set("totalsRowLabel",e)}get totalsRowFunction(){return this.column.totalsRowFunction}set totalsRowFunction(e){this._set("totalsRowFunction",e)}get totalsRowResult(){return this.column.totalsRowResult}set totalsRowResult(e){this._set("totalsRowResult",e)}get totalsRowFormula(){return this.column.totalsRowFormula}set totalsRowFormula(e){this._set("totalsRowFormula",e)}}e.exports=class{constructor(e,t){this.worksheet=e,t&&(this.table=t,this.validate(),this.store())}getFormula(e){switch(e.totalsRowFunction){case"none":return null;case"average":return`SUBTOTAL(101,${this.table.name}[${e.name}])`;case"countNums":return`SUBTOTAL(102,${this.table.name}[${e.name}])`;case"count":return`SUBTOTAL(103,${this.table.name}[${e.name}])`;case"max":return`SUBTOTAL(104,${this.table.name}[${e.name}])`;case"min":return`SUBTOTAL(105,${this.table.name}[${e.name}])`;case"stdDev":return`SUBTOTAL(106,${this.table.name}[${e.name}])`;case"var":return`SUBTOTAL(107,${this.table.name}[${e.name}])`;case"sum":return`SUBTOTAL(109,${this.table.name}[${e.name}])`;case"custom":return e.totalsRowFormula;default:throw new Error(`Invalid Totals Row Function: ${e.totalsRowFunction}`)}}get width(){return this.table.columns.length}get height(){return this.table.rows.length}get filterHeight(){return this.height+(this.table.headerRow?1:0)}get tableHeight(){return this.filterHeight+(this.table.totalsRow?1:0)}validate(){const{table:e}=this,t=(e,t,r)=>{void 0===e[t]&&(e[t]=r)};t(e,"headerRow",!0),t(e,"totalsRow",!1),t(e,"style",{}),t(e.style,"theme","TableStyleMedium2"),t(e.style,"showFirstColumn",!1),t(e.style,"showLastColumn",!1),t(e.style,"showRowStripes",!1),t(e.style,"showColumnStripes",!1);const r=(e,t)=>{if(!e)throw new Error(t)};r(e.ref,"Table must have ref"),r(e.columns,"Table must have column definitions"),r(e.rows,"Table must have row definitions"),e.tl=n.decodeAddress(e.ref);const{row:i,col:a}=e.tl;r(i>0,"Table must be on valid row"),r(a>0,"Table must be on valid col");const{width:o,filterHeight:s,tableHeight:c}=this;e.autoFilterRef=n.encode(i,a,i+s-1,a+o-1),e.tableRef=n.encode(i,a,i+c-1,a+o-1),e.columns.forEach(((e,n)=>{r(e.name,`Column ${n} must have a name`),0===n?t(e,"totalsRowLabel","Total"):(t(e,"totalsRowFunction","none"),e.totalsRowFormula=this.getFormula(e))}))}store(){const e=(e,t)=>{t&&Object.keys(t).forEach((r=>{e[r]=t[r]}))},{worksheet:t,table:r}=this,{row:n,col:i}=r.tl;let a=0;if(r.headerRow){const o=t.getRow(n+a++);r.columns.forEach(((t,r)=>{const{style:n,name:a}=t,s=o.getCell(i+r);s.value=a,e(s,n)}))}if(r.rows.forEach((o=>{const s=t.getRow(n+a++);o.forEach(((t,n)=>{const a=s.getCell(i+n);a.value=t,e(a,r.columns[n].style)}))})),r.totalsRow){const o=t.getRow(n+a++);r.columns.forEach(((t,r)=>{const n=o.getCell(i+r);if(0===r)n.value=t.totalsRowLabel;else{const e=this.getFormula(t);n.value=e?{formula:t.totalsRowFormula,result:t.totalsRowResult}:null}e(n,t.style)}))}}load(e){const{table:t}=this,{row:r,col:n}=t.tl;let i=0;if(t.headerRow){const a=e.getRow(r+i++);t.columns.forEach(((e,t)=>{a.getCell(n+t).value=e.name}))}if(t.rows.forEach((t=>{const a=e.getRow(r+i++);t.forEach(((e,t)=>{a.getCell(n+t).value=e}))})),t.totalsRow){const a=e.getRow(r+i++);t.columns.forEach(((e,t)=>{const r=a.getCell(n+t);if(0===t)r.value=e.totalsRowLabel;else{this.getFormula(e)&&(r.value={formula:e.totalsRowFormula,result:e.totalsRowResult})}}))}}get model(){return this.table}set model(e){this.table=e}cacheState(){this._cache||(this._cache={ref:this.ref,width:this.width,tableHeight:this.tableHeight})}commit(){if(!this._cache)return;this.validate();const e=n.decodeAddress(this._cache.ref);if(this.ref!==this._cache.ref)for(let t=0;t<this._cache.tableHeight;t++){const r=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){r.getCell(e.col+t).value=null}}else{for(let t=this.tableHeight;t<this._cache.tableHeight;t++){const r=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){r.getCell(e.col+t).value=null}}for(let t=0;t<this.tableHeight;t++){const r=this.worksheet.getRow(e.row+t);for(let t=this.width;t<this._cache.width;t++){r.getCell(e.col+t).value=null}}}this.store()}addRow(e,t){this.cacheState(),void 0===t?this.table.rows.push(e):this.table.rows.splice(t,0,e)}removeRows(e,t=1){this.cacheState(),this.table.rows.splice(e,t)}getColumn(e){const t=this.table.columns[e];return new i(this,t,e)}addColumn(e,t,r){this.cacheState(),void 0===r?(this.table.columns.push(e),this.table.rows.forEach(((e,r)=>{e.push(t[r])}))):(this.table.columns.splice(r,0,e),this.table.rows.forEach(((e,n)=>{e.splice(r,0,t[n])})))}removeColumns(e,t=1){this.cacheState(),this.table.columns.splice(e,t),this.table.rows.forEach((r=>{r.splice(e,t)}))}_assign(e,t,r){this.cacheState(),e[t]=r}get ref(){return this.table.ref}set ref(e){this._assign(this.table,"ref",e)}get name(){return this.table.name}set name(e){this.table.name=e}get displayName(){return this.table.displyName||this.table.name}set displayNamename(e){this.table.displayName=e}get headerRow(){return this.table.headerRow}set headerRow(e){this._assign(this.table,"headerRow",e)}get totalsRow(){return this.table.totalsRow}set totalsRow(e){this._assign(this.table,"totalsRow",e)}get theme(){return this.table.style.name}set theme(e){this.table.style.name=e}get showFirstColumn(){return this.table.style.showFirstColumn}set showFirstColumn(e){this.table.style.showFirstColumn=e}get showLastColumn(){return this.table.style.showLastColumn}set showLastColumn(e){this.table.style.showLastColumn=e}get showRowStripes(){return this.table.style.showRowStripes}set showRowStripes(e){this.table.style.showRowStripes=e}get showColumnStripes(){return this.table.style.showColumnStripes}set showColumnStripes(e){this.table.style.showColumnStripes=e}}},12432:(e,t,r)=>{"use strict";const n=r(82346),i=r(13522),a=r(59276),o=r(75772);e.exports=class{constructor(){this.category="",this.company="",this.created=new Date,this.description="",this.keywords="",this.manager="",this.modified=this.created,this.properties={},this.calcProperties={},this._worksheets=[],this.subject="",this.title="",this.views=[],this.media=[],this._definedNames=new i}get xlsx(){return this._xlsx||(this._xlsx=new a(this)),this._xlsx}get csv(){return this._csv||(this._csv=new o(this)),this._csv}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addWorksheet(e,t){const r=this.nextId;t&&("string"==typeof t?(console.trace('tabColor argument is now deprecated. Please use workbook.addWorksheet(name, {properties: { tabColor: { argb: "rbg value" } }'),t={properties:{tabColor:{argb:t}}}):(t.argb||t.theme||t.indexed)&&(console.trace("tabColor argument is now deprecated. Please use workbook.addWorksheet(name, {properties: { tabColor: { ... } }"),t={properties:{tabColor:t}}));const i=this._worksheets.reduce(((e,t)=>(t&&t.orderNo)>e?t.orderNo:e),0),a=Object.assign({},t,{id:r,name:e,orderNo:i+1,workbook:this}),o=new n(a);return this._worksheets[r]=o,o}removeWorksheetEx(e){delete this._worksheets[e.id]}removeWorksheet(e){const t=this.getWorksheet(e);t&&t.destroy()}getWorksheet(e){return void 0===e?this._worksheets.find(Boolean):"number"==typeof e?this._worksheets[e]:"string"==typeof e?this._worksheets.find((t=>t&&t.name===e)):void 0}get worksheets(){return this._worksheets.slice(1).sort(((e,t)=>e.orderNo-t.orderNo)).filter(Boolean)}eachSheet(e){this.worksheets.forEach((t=>{e(t,t.id)}))}get definedNames(){return this._definedNames}clearThemes(){this._themes=void 0}addImage(e){const t=this.media.length;return this.media.push(Object.assign({},e,{type:"image"})),t}getImage(e){return this.media[e]}get model(){return{creator:this.creator||"Unknown",lastModifiedBy:this.lastModifiedBy||"Unknown",lastPrinted:this.lastPrinted,created:this.created,modified:this.modified,properties:this.properties,worksheets:this.worksheets.map((e=>e.model)),sheets:this.worksheets.map((e=>e.model)).filter(Boolean),definedNames:this._definedNames.model,views:this.views,company:this.company,manager:this.manager,title:this.title,subject:this.subject,keywords:this.keywords,category:this.category,description:this.description,language:this.language,revision:this.revision,contentStatus:this.contentStatus,themes:this._themes,media:this.media,calcProperties:this.calcProperties}}set model(e){this.creator=e.creator,this.lastModifiedBy=e.lastModifiedBy,this.lastPrinted=e.lastPrinted,this.created=e.created,this.modified=e.modified,this.company=e.company,this.manager=e.manager,this.title=e.title,this.subject=e.subject,this.keywords=e.keywords,this.category=e.category,this.description=e.description,this.language=e.language,this.revision=e.revision,this.contentStatus=e.contentStatus,this.properties=e.properties,this.calcProperties=e.calcProperties,this._worksheets=[],e.worksheets.forEach((t=>{const{id:r,name:i,state:a}=t,o=e.sheets&&e.sheets.findIndex((e=>e.id===r));(this._worksheets[r]=new n({id:r,name:i,orderNo:o,state:a,workbook:this})).model=t})),this._definedNames.model=e.definedNames,this.views=e.views,this._themes=e.themes,this.media=e.media||[]}}},82346:(e,t,r)=>{const n=r(67984),i=r(29428),a=r(69311),o=r(5842),s=r(93362),c=r(70880),l=r(90239),u=r(7694),d=r(88561),p=r(7257),{copyStyle:f}=r(76172);e.exports=class{constructor(e){e=e||{},this._workbook=e.workbook,this.id=e.id,this.orderNo=e.orderNo,this.name=e.name,this.state=e.state||"visible",this._rows=[],this._columns=null,this._keys={},this._merges={},this.rowBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,dyDescent:55,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:"portrait",horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!(!e.pageSetup||!e.pageSetup.fitToWidth&&!e.pageSetup.fitToHeight||e.pageSetup.scale),pageOrder:"downThenOver",blackAndWhite:!1,draft:!1,cellComments:"None",errors:"displayed",scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,firstPageNumber:void 0,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.dataValidations=new d,this.views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this.tables={},this.conditionalFormattings=[]}get name(){return this._name}set name(e){if(void 0===e&&(e=`sheet${this.id}`),this._name!==e){if("string"!=typeof e)throw new Error("The name has to be a string.");if(""===e)throw new Error("The name can't be empty.");if("History"===e)throw new Error('The name "History" is protected. Please use a different name.');if(/[*?:/\\[\]]/.test(e))throw new Error(`Worksheet name ${e} cannot include any of the following characters: * ? : \\ / [ ]`);if(/(^')|('$)/.test(e))throw new Error(`The first or last character of worksheet name cannot be a single quotation mark: ${e}`);if(e&&e.length>31&&(console.warn(`Worksheet name ${e} exceeds 31 chars. This will be truncated`),e=e.substring(0,31)),this._workbook._worksheets.find((t=>t&&t.name.toLowerCase()===e.toLowerCase())))throw new Error(`Worksheet name already exists: ${e}`);this._name=e}}get workbook(){return this._workbook}destroy(){this._workbook.removeWorksheetEx(this)}get dimensions(){const e=new a;return this._rows.forEach((t=>{if(t){const r=t.dimensions;r&&e.expand(t.number,r.min,t.number,r.max)}})),e}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce(((e,t)=>{const r=(t.header?1:t.headers&&t.headers.length)||0;return Math.max(e,r)}),0);let t=1;const r=this._columns=[];e.forEach((e=>{const n=new s(this,t++,!1);r.push(n),n.defn=e}))}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){n.each(this._keys,e)}getColumn(e){if("string"==typeof e){const t=this._keys[e];if(t)return t;e=i.l2n(e)}if(this._columns||(this._columns=[]),e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new s(this,t++))}return this._columns[e-1]}spliceColumns(e,t,...r){const n=this._rows.length;if(r.length>0)for(let i=0;i<n;i++){const n=[e,t];r.forEach((e=>{n.push(e[i]||null)}));const a=this.getRow(i+1);a.splice.apply(a,n)}else this._rows.forEach((r=>{r&&r.splice(e,t)}));const i=r.length-t,a=e+t,o=this._columns.length;if(i<0)for(let t=e+r.length;t<=o;t++)this.getColumn(t).defn=this.getColumn(t-i).defn;else if(i>0)for(let e=o;e>=a;e--)this.getColumn(e+i).defn=this.getColumn(e).defn;for(let t=e;t<e+r.length;t++)this.getColumn(t).defn=null;this.workbook.definedNames.spliceColumns(this.name,e,t,r.length)}get lastColumn(){return this.getColumn(this.columnCount)}get columnCount(){let e=0;return this.eachRow((t=>{e=Math.max(e,t.cellCount)})),e}get actualColumnCount(){const e=[];let t=0;return this.eachRow((r=>{r.eachCell((({col:r})=>{e[r]||(e[r]=!0,t++)}))})),t}_commitRow(){}get _lastRowNumber(){const e=this._rows;let t=e.length;for(;t>0&&void 0===e[t-1];)t--;return t}get _nextRow(){return this._lastRowNumber+1}get lastRow(){if(this._rows.length)return this._rows[this._rows.length-1]}findRow(e){return this._rows[e-1]}findRows(e,t){return this._rows.slice(e-1,e-1+t)}get rowCount(){return this._lastRowNumber}get actualRowCount(){let e=0;return this.eachRow((()=>{e++})),e}getRow(e){let t=this._rows[e-1];return t||(t=this._rows[e-1]=new o(this,e)),t}getRows(e,t){if(t<1)return;const r=[];for(let n=e;n<e+t;n++)r.push(this.getRow(n));return r}addRow(e,t="n"){const r=this._nextRow,n=this.getRow(r);return n.values=e,this._setStyleOption(r,"i"===t[0]?t:"n"),n}addRows(e,t="n"){const r=[];return e.forEach((e=>{r.push(this.addRow(e,t))})),r}insertRow(e,t,r="n"){return this.spliceRows(e,0,t),this._setStyleOption(e,r),this.getRow(e)}insertRows(e,t,r="n"){if(this.spliceRows(e,0,...t),"n"!==r)for(let n=0;n<t.length;n++)"o"===r[0]&&void 0!==this.findRow(t.length+e+n)?this._copyStyle(t.length+e+n,e+n,"+"===r[1]):"i"===r[0]&&void 0!==this.findRow(e-1)&&this._copyStyle(e-1,e+n,"+"===r[1]);return this.getRows(e,t.length)}_setStyleOption(e,t="n"){"o"===t[0]&&void 0!==this.findRow(e+1)?this._copyStyle(e+1,e,"+"===t[1]):"i"===t[0]&&void 0!==this.findRow(e-1)&&this._copyStyle(e-1,e,"+"===t[1])}_copyStyle(e,t,r=!1){const n=this.getRow(e),i=this.getRow(t);i.style=f(n.style),n.eachCell({includeEmpty:r},((e,t)=>{i.getCell(t).style=f(e.style)})),i.height=n.height}duplicateRow(e,t,r=!1){const n=this._rows[e-1],i=new Array(t).fill(n.values);this.spliceRows(e+1,r?0:t,...i);for(let r=0;r<t;r++){const t=this._rows[e+r];t.style=n.style,t.height=n.height,n.eachCell({includeEmpty:!0},((e,r)=>{t.getCell(r).style=e.style}))}}spliceRows(e,t,...r){const n=e+t,i=r.length,a=i-t,o=this._rows.length;let s,c;if(a<0)for(e===o&&(this._rows[o-1]=void 0),s=n;s<=o;s++)if(c=this._rows[s-1],c){const e=this.getRow(s+a);e.values=c.values,e.style=c.style,e.height=c.height,c.eachCell({includeEmpty:!0},((t,r)=>{e.getCell(r).style=t.style})),this._rows[s-1]=void 0}else this._rows[s+a-1]=void 0;else if(a>0)for(s=o;s>=n;s--)if(c=this._rows[s-1],c){const e=this.getRow(s+a);e.values=c.values,e.style=c.style,e.height=c.height,c.eachCell({includeEmpty:!0},((t,r)=>{if(e.getCell(r).style=t.style,"MergeValue"===t._value.constructor.name){const e=this.getRow(t._row._number+i).getCell(r),n=t._value._master,a=this.getRow(n._row._number+i).getCell(n._column._number);e.merge(a)}}))}else this._rows[s+a-1]=void 0;for(s=0;s<i;s++){const t=this.getRow(e+s);t.style={},t.values=r[s]}this.workbook.definedNames.spliceRows(this.name,e,t,i)}eachRow(e,t){if(t||(t=e,e=void 0),e&&e.includeEmpty){const e=this._rows.length;for(let r=1;r<=e;r++)t(this.getRow(r),r)}else this._rows.forEach((e=>{e&&e.hasValues&&t(e,e.number)}))}getSheetValues(){const e=[];return this._rows.forEach((t=>{t&&(e[t.number]=t.values)})),e}findCell(e,t){const r=i.getAddress(e,t),n=this._rows[r.row-1];return n?n.findCell(r.col):void 0}getCell(e,t){const r=i.getAddress(e,t);return this.getRow(r.row).getCellEx(r)}mergeCells(...e){const t=new a(e);this._mergeCellsInternal(t)}mergeCellsWithoutStyle(...e){const t=new a(e);this._mergeCellsInternal(t,!0)}_mergeCellsInternal(e,t){n.each(this._merges,(t=>{if(t.intersects(e))throw new Error("Cannot merge already merged cells")}));const r=this.getCell(e.top,e.left);for(let n=e.top;n<=e.bottom;n++)for(let i=e.left;i<=e.right;i++)(n>e.top||i>e.left)&&this.getCell(n,i).merge(r,t);this._merges[r.address]=e}_unMergeMaster(e){const t=this._merges[e.address];if(t){for(let e=t.top;e<=t.bottom;e++)for(let r=t.left;r<=t.right;r++)this.getCell(e,r).unmerge();delete this._merges[e.address]}}get hasMerges(){return n.some(this._merges,Boolean)}unMergeCells(...e){const t=new a(e);for(let e=t.top;e<=t.bottom;e++)for(let r=t.left;r<=t.right;r++){const t=this.findCell(e,r);t&&(t.type===c.ValueType.Merge?this._unMergeMaster(t.master):this._merges[t.address]&&this._unMergeMaster(t))}}fillFormula(e,t,r,n="shared"){const a=i.decode(e),{top:o,left:s,bottom:c,right:l}=a,u=l-s+1,d=i.encodeAddress(o,s),p="shared"===n;let f;f="function"==typeof r?r:Array.isArray(r)?Array.isArray(r[0])?(e,t)=>r[e-o][t-s]:(e,t)=>r[(e-o)*u+(t-s)]:()=>{};let m=!0;for(let r=o;r<=c;r++)for(let i=s;i<=l;i++)m?(this.getCell(r,i).value={shareType:n,formula:t,ref:e,result:f(r,i)},m=!1):this.getCell(r,i).value=p?{sharedFormula:d,result:f(r,i)}:f(r,i)}addImage(e,t){const r={type:"image",imageId:e,range:t};this._media.push(new l(this,r))}getImages(){return this._media.filter((e=>"image"===e.type))}addBackgroundImage(e){const t={type:"background",imageId:e};this._media.push(new l(this,t))}getBackgroundImageId(){const e=this._media.find((e=>"background"===e.type));return e&&e.imageId}protect(e,t){return new Promise((r=>{this.sheetProtection={sheet:!0},t&&"spinCount"in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName="SHA-512",this.sheetProtection.saltValue=p.randomBytes(16).toString("base64"),this.sheetProtection.spinCount=t&&"spinCount"in t?t.spinCount:1e5,this.sheetProtection.hashValue=p.convertPasswordToHash(e,"SHA512",this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&"spinCount"in t&&delete this.sheetProtection.spinCount),r()}))}unprotect(){this.sheetProtection=null}addTable(e){const t=new u(this,e);return this.tables[e.name]=t,t}getTable(e){return this.tables[e]}removeTable(e){delete this.tables[e]}getTables(){return Object.values(this.tables)}addConditionalFormatting(e){this.conditionalFormattings.push(e)}removeConditionalFormatting(e){"number"==typeof e?this.conditionalFormattings.splice(e,1):this.conditionalFormattings=e instanceof Function?this.conditionalFormattings.filter(e):[]}get tabColor(){return console.trace("worksheet.tabColor property is now deprecated. Please use worksheet.properties.tabColor"),this.properties.tabColor}set tabColor(e){console.trace("worksheet.tabColor property is now deprecated. Please use worksheet.properties.tabColor"),this.properties.tabColor=e}get model(){const e={id:this.id,name:this.name,dataValidations:this.dataValidations.model,properties:this.properties,state:this.state,pageSetup:this.pageSetup,headerFooter:this.headerFooter,rowBreaks:this.rowBreaks,views:this.views,autoFilter:this.autoFilter,media:this._media.map((e=>e.model)),sheetProtection:this.sheetProtection,tables:Object.values(this.tables).map((e=>e.model)),conditionalFormattings:this.conditionalFormattings};e.cols=s.toModel(this.columns);const t=e.rows=[],r=e.dimensions=new a;return this._rows.forEach((e=>{const n=e&&e.model;n&&(r.expand(n.number,n.min,n.number,n.max),t.push(n))})),e.merges=[],n.each(this._merges,(t=>{e.merges.push(t.range)})),e}_parseRows(e){this._rows=[],e.rows.forEach((e=>{const t=new o(this,e.number);this._rows[t.number-1]=t,t.model=e}))}_parseMergeCells(e){n.each(e.mergeCells,(e=>{this.mergeCellsWithoutStyle(e)}))}set model(e){this.name=e.name,this._columns=s.fromModel(this,e.cols),this._parseRows(e),this._parseMergeCells(e),this.dataValidations=new d(e.dataValidations),this.properties=e.properties,this.pageSetup=e.pageSetup,this.headerFooter=e.headerFooter,this.views=e.views,this.autoFilter=e.autoFilter,this._media=e.media.map((e=>new l(this,e))),this.sheetProtection=e.sheetProtection,this.tables=e.tables.reduce(((e,t)=>{const r=new u;return r.model=t,e[t.name]=r,e}),{}),this.conditionalFormattings=e.conditionalFormattings}}},25046:(e,t,r)=>{const n={Workbook:r(12432),ModelContainer:r(98236),stream:{xlsx:{WorkbookWriter:r(3682),WorkbookReader:r(34114)}}};Object.assign(n,r(70880)),e.exports=n},31090:(e,t,r)=>{const{EventEmitter:n}=r(24434),i=r(37043),a=r(70880),o=r(71745);e.exports=class extends n{constructor({workbook:e,id:t,iterator:r,options:n}){super(),this.workbook=e,this.id=t,this.iterator=r,this.options=n}get count(){return this.hyperlinks&&this.hyperlinks.length||0}each(e){return this.hyperlinks.forEach(e)}async read(){const{iterator:e,options:t}=this;let r=!1,n=null;switch(t.hyperlinks){case"emit":r=!0;break;case"cache":this.hyperlinks=n={}}if(r||n)try{for await(const t of i(e))for(const{eventType:e,value:i}of t)if("opentag"===e){const e=i;if("Relationship"===e.name){const t=e.attributes.Id;if(e.attributes.Type===o.Hyperlink){const i={type:a.RelationshipType.Styles,rId:t,target:e.attributes.Target,targetMode:e.attributes.TargetMode};r?this.emit("hyperlink",i):n[i.rId]=i}}}this.emit("finished")}catch(e){this.emit("error",e)}else this.emit("finished")}}},95234:(e,t,r)=>{const n=r(12141),i=r(71745),a=r(29428),o=r(41710),s=r(23712);e.exports=class{constructor(e,t,r){this.id=r.id,this.count=0,this._worksheet=e,this._workbook=r.workbook,this._sheetRelsWriter=t}get commentsStream(){return this._commentsStream||(this._commentsStream=this._workbook._openStream(`/xl/comments${this.id}.xml`)),this._commentsStream}get vmlStream(){return this._vmlStream||(this._vmlStream=this._workbook._openStream(`xl/drawings/vmlDrawing${this.id}.vml`)),this._vmlStream}_addRelationships(){const e={Type:i.Comments,Target:`../comments${this.id}.xml`};this._sheetRelsWriter.addRelationship(e);const t={Type:i.VmlDrawing,Target:`../drawings/vmlDrawing${this.id}.vml`};this.vmlRelId=this._sheetRelsWriter.addRelationship(t)}_addCommentRefs(){this._workbook.commentRefs.push({commentName:`comments${this.id}`,vmlDrawing:`vmlDrawing${this.id}`})}_writeOpen(){this.commentsStream.write('<?xml version="1.0" encoding="UTF-8" standalone="yes"?><comments xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><authors><author>Author</author></authors><commentList>'),this.vmlStream.write('<?xml version="1.0" encoding="UTF-8"?><xml xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:x="urn:schemas-microsoft-com:office:excel"><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1" /></o:shapelayout><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe"><v:stroke joinstyle="miter" /><v:path gradientshapeok="t" o:connecttype="rect" /></v:shapetype>')}_writeComment(e,t){const r=new o,i=new n;r.render(i,e),this.commentsStream.write(i.xml);const a=new s,c=new n;a.render(c,e,t),this.vmlStream.write(c.xml)}_writeClose(){this.commentsStream.write("</commentList></comments>"),this.vmlStream.write("</xml>")}addComments(e){e&&e.length&&(this.startedData||(this._worksheet.comments=[],this._writeOpen(),this._addRelationships(),this._addCommentRefs(),this.startedData=!0),e.forEach((e=>{e.refAddress=a.decodeAddress(e.ref)})),e.forEach((e=>{this._writeComment(e,this.count),this.count+=1})))}commit(){this.count&&(this._writeClose(),this.commentsStream.end(),this.vmlStream.end())}}},72404:(e,t,r)=>{const n=r(67032),i=r(71745);class a{constructor(e){this.writer=e}push(e){this.writer.addHyperlink(e)}}e.exports=class{constructor(e){this.id=e.id,this.count=0,this._hyperlinks=[],this._workbook=e.workbook}get stream(){return this._stream||(this._stream=this._workbook._openStream(`/xl/worksheets/_rels/sheet${this.id}.xml.rels`)),this._stream}get length(){return this._hyperlinks.length}each(e){return this._hyperlinks.forEach(e)}get hyperlinksProxy(){return this._hyperlinksProxy||(this._hyperlinksProxy=new a(this))}addHyperlink(e){const t={Target:e.target,Type:i.Hyperlink,TargetMode:"External"},r=this._writeRelationship(t);this._hyperlinks.push({rId:r,address:e.address})}addMedia(e){return this._writeRelationship(e)}addRelationship(e){return this._writeRelationship(e)}commit(){this.count&&(this._writeClose(),this.stream.end())}_writeOpen(){this.stream.write('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">')}_writeRelationship(e){this.count||this._writeOpen();const t="rId"+ ++this.count;return e.TargetMode?this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${n.xmlEncode(e.Target)}" TargetMode="${e.TargetMode}"/>`):this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${e.Target}"/>`),t}_writeClose(){this.stream.write("</Relationships>")}}},34114:(e,t,r)=>{const n=r(79896),{EventEmitter:i}=r(24434),{PassThrough:a,Readable:o}=r(34198),s=r(2203),c=r(14490),l=r(35083),u=r(83676),d=r(37043),p=r(17647),f=r(22519),m=r(61724),g=r(51648),_=r(31090);l.setGracefulCleanup();class h extends i{constructor(e,t={}){super(),this.input=e,this.options={worksheets:"emit",sharedStrings:"cache",hyperlinks:"ignore",styles:"ignore",entries:"ignore",...t},this.styles=new p,this.styles.init()}_getStream(e){if(e instanceof s.Readable||e instanceof o)return e;if("string"==typeof e)return n.createReadStream(e);throw new Error(`Could not recognise input: ${e}`)}async read(e,t){try{for await(const{eventType:r,value:n}of this.parse(e,t))switch(r){case"shared-strings":case"hyperlinks":this.emit(r,n);break;case"worksheet":this.emit(r,n),await n.read()}this.emit("end"),this.emit("finished")}catch(e){this.emit("error",e)}}async*[Symbol.asyncIterator](){for await(const{eventType:e,value:t}of this.parse())"worksheet"===e&&(yield t)}async*parse(e,t){t&&(this.options=t);const r=this.stream=this._getStream(e||this.input),i=c.Parse({forceStream:!0});r.pipe(i);const o=[];for await(const e of u(i)){let t,r;switch(e.path){case"_rels/.rels":break;case"xl/_rels/workbook.xml.rels":await this._parseRels(e);break;case"xl/workbook.xml":await this._parseWorkbook(e);break;case"xl/sharedStrings.xml":yield*this._parseSharedStrings(e);break;case"xl/styles.xml":await this._parseStyles(e);break;default:e.path.match(/xl\/worksheets\/sheet\d+[.]xml/)?(t=e.path.match(/xl\/worksheets\/sheet(\d+)[.]xml/),r=t[1],this.sharedStrings&&this.workbookRels?yield*this._parseWorksheet(u(e),r):await new Promise(((t,i)=>{l.file(((a,s,c,l)=>{if(a)return i(a);o.push({sheetNo:r,path:s,tempFileCleanupCallback:l});const u=n.createWriteStream(s);return u.on("error",i),e.pipe(u),u.on("finish",(()=>t()))}))}))):e.path.match(/xl\/worksheets\/_rels\/sheet\d+[.]xml.rels/)&&(t=e.path.match(/xl\/worksheets\/_rels\/sheet(\d+)[.]xml.rels/),r=t[1],yield*this._parseHyperlinks(u(e),r))}e.autodrain()}for(const{sheetNo:e,path:t,tempFileCleanupCallback:r}of o){let i=n.createReadStream(t);i[Symbol.asyncIterator]||(i=i.pipe(new a)),yield*this._parseWorksheet(i,e),r()}}_emitEntry(e){"emit"===this.options.entries&&this.emit("entry",e)}async _parseRels(e){const t=new m;this.workbookRels=await t.parseStream(u(e))}async _parseWorkbook(e){this._emitEntry({type:"workbook"});const t=new f;await t.parseStream(u(e)),this.properties=t.map.workbookPr,this.model=t.model}async*_parseSharedStrings(e){switch(this._emitEntry({type:"shared-strings"}),this.options.sharedStrings){case"cache":this.sharedStrings=[];break;case"emit":break;default:return}let t=null,r=[],n=0,i=null;for await(const a of d(u(e)))for(const{eventType:e,value:o}of a)if("opentag"===e){const e=o;switch(e.name){case"b":i=i||{},i.bold=!0;break;case"charset":i=i||{},i.charset=parseInt(e.attributes.charset,10);break;case"color":i=i||{},i.color={},e.attributes.rgb&&(i.color.argb=e.attributes.argb),e.attributes.val&&(i.color.argb=e.attributes.val),e.attributes.theme&&(i.color.theme=e.attributes.theme);break;case"family":i=i||{},i.family=parseInt(e.attributes.val,10);break;case"i":i=i||{},i.italic=!0;break;case"outline":i=i||{},i.outline=!0;break;case"rFont":i=i||{},i.name=e.value;break;case"si":i=null,r=[],t=null;break;case"sz":i=i||{},i.size=parseInt(e.attributes.val,10);break;case"strike":break;case"t":t=null;break;case"u":i=i||{},i.underline=!0;break;case"vertAlign":i=i||{},i.vertAlign=e.attributes.val}}else if("text"===e)t=t?t+o:o;else if("closetag"===e){switch(o.name){case"r":r.push({font:i,text:t}),i=null,t=null;break;case"si":"cache"===this.options.sharedStrings?this.sharedStrings.push(r.length?{richText:r}:t):"emit"===this.options.sharedStrings&&(yield{index:n++,text:r.length?{richText:r}:t}),r=[],i=null,t=null}}}async _parseStyles(e){this._emitEntry({type:"styles"}),"cache"===this.options.styles&&(this.styles=new p,await this.styles.parseStream(u(e)))}*_parseWorksheet(e,t){this._emitEntry({type:"worksheet",id:t});const r=new g({workbook:this,id:t,iterator:e,options:this.options}),n=(this.workbookRels||[]).find((e=>e.Target===`worksheets/sheet${t}.xml`)),i=n&&(this.model.sheets||[]).find((e=>e.rId===n.Id));i&&(r.id=i.id,r.name=i.name,r.state=i.state),"emit"===this.options.worksheets&&(yield{eventType:"worksheet",value:r})}*_parseHyperlinks(e,t){this._emitEntry({type:"hyperlinks",id:t});const r=new _({workbook:this,id:t,iterator:e,options:this.options});"emit"===this.options.hyperlinks&&(yield{eventType:"hyperlinks",value:r})}}h.Options={worksheets:["emit","ignore"],sharedStrings:["cache","emit","ignore"],hyperlinks:["cache","emit","ignore"],styles:["cache","ignore"],entries:["emit","ignore"]},e.exports=h},3682:(e,t,r)=>{const n=r(79896),i=r(10711),a=r(87137),o=r(71745),s=r(17647),c=r(92391),l=r(13522),u=r(1298),d=r(61724),p=r(40814),f=r(15888),m=r(22519),g=r(96242),_=r(58444),h=r(46046);e.exports=class{constructor(e){e=e||{},this.created=e.created||new Date,this.modified=e.modified||this.created,this.creator=e.creator||"ExcelJS",this.lastModifiedBy=e.lastModifiedBy||"ExcelJS",this.lastPrinted=e.lastPrinted,this.useSharedStrings=e.useSharedStrings||!1,this.sharedStrings=new c,this.styles=e.useStyles?new s(!0):new s.Mock(!0),this._definedNames=new l,this._worksheets=[],this.views=[],this.zipOptions=e.zip,this.media=[],this.commentRefs=[],this.zip=i("zip",this.zipOptions),e.stream?this.stream=e.stream:e.filename?this.stream=n.createWriteStream(e.filename):this.stream=new a,this.zip.pipe(this.stream),this.promise=Promise.all([this.addThemes(),this.addOfficeRels()])}get definedNames(){return this._definedNames}_openStream(e){const t=new a({bufSize:65536,batch:!0});return this.zip.append(t,{name:e}),t.on("finish",(()=>{t.emit("zipped")})),t}_commitWorksheets(){const e=this._worksheets.map((function(e){return e.committed?Promise.resolve():new Promise((t=>{e.stream.on("zipped",(()=>{t()})),e.commit()}))}));return e.length?Promise.all(e):Promise.resolve()}async commit(){return await this.promise,await this.addMedia(),await this._commitWorksheets(),await Promise.all([this.addContentTypes(),this.addApp(),this.addCore(),this.addSharedStrings(),this.addStyles(),this.addWorkbookRels()]),await this.addWorkbook(),this._finalize()}get nextId(){let e;for(e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addImage(e){const t=this.media.length,r=Object.assign({},e,{type:"image",name:`image${t}.${e.extension}`});return this.media.push(r),t}getImage(e){return this.media[e]}addWorksheet(e,t){const r=void 0!==(t=t||{}).useSharedStrings?t.useSharedStrings:this.useSharedStrings;t.tabColor&&(console.trace("tabColor option has moved to { properties: tabColor: {...} }"),t.properties=Object.assign({tabColor:t.tabColor},t.properties));const n=this.nextId,i=new _({id:n,name:e=e||`sheet${n}`,workbook:this,useSharedStrings:r,properties:t.properties,state:t.state,pageSetup:t.pageSetup,views:t.views,autoFilter:t.autoFilter,headerFooter:t.headerFooter});return this._worksheets[n]=i,i}getWorksheet(e){return void 0===e?this._worksheets.find((()=>!0)):"number"==typeof e?this._worksheets[e]:"string"==typeof e?this._worksheets.find((t=>t&&t.name===e)):void 0}addStyles(){return new Promise((e=>{this.zip.append(this.styles.xml,{name:"xl/styles.xml"}),e()}))}addThemes(){return new Promise((e=>{this.zip.append(h,{name:"xl/theme/theme1.xml"}),e()}))}addOfficeRels(){return new Promise((e=>{const t=(new d).toXml([{Id:"rId1",Type:o.OfficeDocument,Target:"xl/workbook.xml"},{Id:"rId2",Type:o.CoreProperties,Target:"docProps/core.xml"},{Id:"rId3",Type:o.ExtenderProperties,Target:"docProps/app.xml"}]);this.zip.append(t,{name:"/_rels/.rels"}),e()}))}addContentTypes(){return new Promise((e=>{const t={worksheets:this._worksheets.filter(Boolean),sharedStrings:this.sharedStrings,commentRefs:this.commentRefs,media:this.media},r=(new p).toXml(t);this.zip.append(r,{name:"[Content_Types].xml"}),e()}))}addMedia(){return Promise.all(this.media.map((e=>{if("image"===e.type){const t=`xl/media/${e.name}`;if(e.filename)return this.zip.file(e.filename,{name:t});if(e.buffer)return this.zip.append(e.buffer,{name:t});if(e.base64){const r=e.base64,n=r.substring(r.indexOf(",")+1);return this.zip.append(n,{name:t,base64:!0})}}throw new Error("Unsupported media")})))}addApp(){return new Promise((e=>{const t={worksheets:this._worksheets.filter(Boolean)},r=(new f).toXml(t);this.zip.append(r,{name:"docProps/app.xml"}),e()}))}addCore(){return new Promise((e=>{const t=(new u).toXml(this);this.zip.append(t,{name:"docProps/core.xml"}),e()}))}addSharedStrings(){return this.sharedStrings.count?new Promise((e=>{const t=(new g).toXml(this.sharedStrings);this.zip.append(t,{name:"/xl/sharedStrings.xml"}),e()})):Promise.resolve()}addWorkbookRels(){let e=1;const t=[{Id:"rId"+e++,Type:o.Styles,Target:"styles.xml"},{Id:"rId"+e++,Type:o.Theme,Target:"theme/theme1.xml"}];return this.sharedStrings.count&&t.push({Id:"rId"+e++,Type:o.SharedStrings,Target:"sharedStrings.xml"}),this._worksheets.forEach((r=>{r&&(r.rId="rId"+e++,t.push({Id:r.rId,Type:o.Worksheet,Target:`worksheets/sheet${r.id}.xml`}))})),new Promise((e=>{const r=(new d).toXml(t);this.zip.append(r,{name:"/xl/_rels/workbook.xml.rels"}),e()}))}addWorkbook(){const{zip:e}=this,t={worksheets:this._worksheets.filter(Boolean),definedNames:this._definedNames.model,views:this.views,properties:{},calcProperties:{}};return new Promise((r=>{const n=new m;n.prepare(t),e.append(n.toXml(t),{name:"/xl/workbook.xml"}),r()}))}_finalize(){return new Promise(((e,t)=>{this.stream.on("error",t),this.stream.on("finish",(()=>{e(this)})),this.zip.on("error",t),this.zip.finalize()}))}}},51648:(e,t,r)=>{const{EventEmitter:n}=r(24434),i=r(37043),a=r(67984),o=r(67032),s=r(29428),c=r(69311),l=r(5842),u=r(93362);class d extends n{constructor({workbook:e,id:t,iterator:r,options:n}){super(),this.workbook=e,this.id=t,this.iterator=r,this.options=n||{},this.name=`Sheet${this.id}`,this._columns=null,this._keys={},this._dimensions=new c}destroy(){throw new Error("Invalid Operation: destroy")}get dimensions(){return this._dimensions}get columns(){return this._columns}getColumn(e){if("string"==typeof e){const t=this._keys[e];if(t)return t;e=s.l2n(e)}if(this._columns||(this._columns=[]),e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new u(this,t++))}return this._columns[e-1]}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){a.each(this._keys,e)}async read(){try{for await(const e of this.parse())for(const{eventType:t,value:r}of e)this.emit(t,r);this.emit("finished")}catch(e){this.emit("error",e)}}async*[Symbol.asyncIterator](){for await(const e of this.parse())for(const{eventType:t,value:r}of e)"row"===t&&(yield r)}async*parse(){const{iterator:e,options:t}=this;let r=!1,n=!1,a=null;if("emit"===t.worksheets)r=!0;switch(t.hyperlinks){case"emit":n=!0;break;case"cache":this.hyperlinks=a={}}if(!r&&!n&&!a)return;const{sharedStrings:c,styles:d,properties:p}=this.workbook;let f=!1,m=!1,g=!1,_=null,h=null,y=null,v=null;for await(const t of i(e)){const e=[];for(const{eventType:i,value:b}of t)if("opentag"===i){const t=b;if(r)switch(t.name){case"cols":f=!0,_=[];break;case"sheetData":m=!0;break;case"col":f&&_.push({min:parseInt(t.attributes.min,10),max:parseInt(t.attributes.max,10),width:parseFloat(t.attributes.width),styleId:parseInt(t.attributes.style||"0",10)});break;case"row":if(m){const e=parseInt(t.attributes.r,10);if(h=new l(this,e),t.attributes.ht&&(h.height=parseFloat(t.attributes.ht)),t.attributes.s){const e=parseInt(t.attributes.s,10),r=d.getStyleModel(e);r&&(h.style=r)}}break;case"c":h&&(y={ref:t.attributes.r,s:parseInt(t.attributes.s,10),t:t.attributes.t});break;case"f":y&&(v=y.f={text:""});break;case"v":case"is":case"t":y&&(v=y.v={text:""})}if(n||a)switch(t.name){case"hyperlinks":g=!0;break;case"hyperlink":if(g){const r={ref:t.attributes.ref,rId:t.attributes["r:id"]};n?e.push({eventType:"hyperlink",value:r}):a[r.ref]=r}}}else if("text"===i)r&&v&&(v.text+=b);else if("closetag"===i){const t=b;if(r)switch(t.name){case"cols":f=!1,this._columns=u.fromModel(_);break;case"sheetData":m=!1;break;case"row":this._dimensions.expandRow(h),e.push({eventType:"row",value:h}),h=null;break;case"c":if(h&&y){const e=s.decodeAddress(y.ref),t=h.getCell(e.col);if(y.s){const e=d.getStyleModel(y.s);e&&(t.style=e)}if(y.f){const e={formula:y.f.text};y.v&&("str"===y.t?e.result=o.xmlDecode(y.v.text):e.result=parseFloat(y.v.text)),t.value=e}else if(y.v)switch(y.t){case"s":{const e=parseInt(y.v.text,10);t.value=c?c[e]:{sharedString:e};break}case"inlineStr":case"str":t.value=o.xmlDecode(y.v.text);break;case"e":t.value={error:y.v.text};break;case"b":t.value=0!==parseInt(y.v.text,10);break;default:o.isDateFmt(t.numFmt)?t.value=o.excelToDate(parseFloat(y.v.text),p.model&&p.model.date1904):t.value=parseFloat(y.v.text)}if(a){const e=a[y.ref];e&&(t.text=t.value,t.value=void 0,t.hyperlink=e)}y=null}}if((n||a)&&"hyperlinks"===t.name)g=!1}e.length>0&&(yield e)}}}e.exports=d},58444:(e,t,r)=>{const n=r(67984),i=r(71745),a=r(29428),o=r(7257),s=r(69311),c=r(40524),l=r(5842),u=r(93362),d=r(72404),p=r(95234),f=r(88561),m=new c,g=r(62447),_=r(27210),h=r(93236),y=r(35772),v=r(8599),b=r(80981),k=r(76591),x=r(27832),E=r(94482),S=r(97802),D=r(64892),w=r(47749),T=r(74711),C=r(12700),A=r(87182),N=r(9668),P={dataValidations:new _,sheetProperties:new h,sheetFormatProperties:new y,columns:new g({tag:"cols",length:!1,childXform:new v}),row:new b,hyperlinks:new g({tag:"hyperlinks",length:!1,childXform:new k}),sheetViews:new g({tag:"sheetViews",length:!1,childXform:new x}),sheetProtection:new E,pageMargins:new S,pageSeteup:new D,autoFilter:new w,picture:new T,conditionalFormattings:new C,headerFooter:new A,rowBreaks:new N};e.exports=class{constructor(e){this.id=e.id,this.name=e.name||`Sheet${this.id}`,this.state=e.state||"visible",this._rows=[],this._columns=null,this._keys={},this._merges=[],this._merges.add=function(){},this._sheetRelsWriter=new d(e),this._sheetCommentsWriter=new p(this,this._sheetRelsWriter,e),this._dimensions=new s,this._rowZero=1,this.committed=!1,this.dataValidations=new f,this._formulae={},this._siFormulae=0,this.conditionalFormatting=[],this.rowBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,dyDescent:55,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:"portrait",horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!(!e.pageSetup||!e.pageSetup.fitToWidth&&!e.pageSetup.fitToHeight||e.pageSetup.scale),pageOrder:"downThenOver",blackAndWhite:!1,draft:!1,cellComments:"None",errors:"displayed",scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.useSharedStrings=e.useSharedStrings||!1,this._workbook=e.workbook,this.hasComments=!1,this._views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this._writeOpenWorksheet(),this.startedData=!1}get workbook(){return this._workbook}get stream(){return this._stream||(this._stream=this._workbook._openStream(`/xl/worksheets/sheet${this.id}.xml`),this._stream.pause()),this._stream}destroy(){throw new Error("Invalid Operation: destroy")}commit(){this.committed||(this._rows.forEach((e=>{e&&this._writeRow(e)})),this._rows=null,this.startedData||this._writeOpenSheetData(),this._writeCloseSheetData(),this._writeAutoFilter(),this._writeMergeCells(),this._writeHyperlinks(),this._writeConditionalFormatting(),this._writeDataValidations(),this._writeSheetProtection(),this._writePageMargins(),this._writePageSetup(),this._writeBackground(),this._writeHeaderFooter(),this._writeRowBreaks(),this._writeLegacyData(),this._writeCloseWorksheet(),this.stream.end(),this._sheetCommentsWriter.commit(),this._sheetRelsWriter.commit(),this.committed=!0)}get dimensions(){return this._dimensions}get views(){return this._views}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce(((e,t)=>{const r=(t.header?1:t.headers&&t.headers.length)||0;return Math.max(e,r)}),0);let t=1;const r=this._columns=[];e.forEach((e=>{const n=new u(this,t++,!1);r.push(n),n.defn=e}))}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){n.each(this._keys,e)}getColumn(e){if("string"==typeof e){const t=this._keys[e];if(t)return t;e=a.l2n(e)}if(this._columns||(this._columns=[]),e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new u(this,t++))}return this._columns[e-1]}get _nextRow(){return this._rowZero+this._rows.length}eachRow(e,t){if(t||(t=e,e=void 0),e&&e.includeEmpty){const e=this._nextRow;for(let r=this._rowZero;r<e;r++)t(this.getRow(r),r)}else this._rows.forEach((e=>{e.hasValues&&t(e,e.number)}))}_commitRow(e){let t=!1;for(;this._rows.length&&!t;){const r=this._rows.shift();this._rowZero++,r&&(this._writeRow(r),t=r.number===e.number,this._rowZero=r.number+1)}}get lastRow(){if(this._rows.length)return this._rows[this._rows.length-1]}findRow(e){const t=e-this._rowZero;return this._rows[t]}getRow(e){const t=e-this._rowZero;if(t<0)throw new Error("Out of bounds: this row has been committed");let r=this._rows[t];return r||(this._rows[t]=r=new l(this,e)),r}addRow(e){const t=new l(this,this._nextRow);return this._rows[t.number-this._rowZero]=t,t.values=e,t}findCell(e,t){const r=a.getAddress(e,t),n=this.findRow(r.row);return n?n.findCell(r.column):void 0}getCell(e,t){const r=a.getAddress(e,t);return this.getRow(r.row).getCellEx(r)}mergeCells(...e){const t=new s(e);this._merges.forEach((e=>{if(e.intersects(t))throw new Error("Cannot merge already merged cells")}));const r=this.getCell(t.top,t.left);for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++)(e>t.top||n>t.left)&&this.getCell(e,n).merge(r);this._merges.push(t)}addConditionalFormatting(e){this.conditionalFormatting.push(e)}removeConditionalFormatting(e){"number"==typeof e?this.conditionalFormatting.splice(e,1):this.conditionalFormatting=e instanceof Function?this.conditionalFormatting.filter(e):[]}addBackgroundImage(e){this._background={imageId:e}}getBackgroundImageId(){return this._background&&this._background.imageId}protect(e,t){return new Promise((r=>{this.sheetProtection={sheet:!0},t&&"spinCount"in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName="SHA-512",this.sheetProtection.saltValue=o.randomBytes(16).toString("base64"),this.sheetProtection.spinCount=t&&"spinCount"in t?t.spinCount:1e5,this.sheetProtection.hashValue=o.convertPasswordToHash(e,"SHA512",this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&"spinCount"in t&&delete this.sheetProtection.spinCount),r()}))}unprotect(){this.sheetProtection=null}_write(e){m.reset(),m.addText(e),this.stream.write(m)}_writeSheetProperties(e,t,r){const n={outlineProperties:t&&t.outlineProperties,tabColor:t&&t.tabColor,pageSetup:r&&r.fitToPage?{fitToPage:r.fitToPage}:void 0};e.addText(P.sheetProperties.toXml(n))}_writeSheetFormatProperties(e,t){const r=t?{defaultRowHeight:t.defaultRowHeight,dyDescent:t.dyDescent,outlineLevelCol:t.outlineLevelCol,outlineLevelRow:t.outlineLevelRow}:void 0;t.defaultColWidth&&(r.defaultColWidth=t.defaultColWidth),e.addText(P.sheetFormatProperties.toXml(r))}_writeOpenWorksheet(){m.reset(),m.addText('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>'),m.addText('<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">'),this._writeSheetProperties(m,this.properties,this.pageSetup),m.addText(P.sheetViews.toXml(this.views)),this._writeSheetFormatProperties(m,this.properties),this.stream.write(m)}_writeColumns(){const e=u.toModel(this.columns);e&&(P.columns.prepare(e,{styles:this._workbook.styles}),this.stream.write(P.columns.toXml(e)))}_writeOpenSheetData(){this._write("<sheetData>")}_writeRow(e){if(this.startedData||(this._writeColumns(),this._writeOpenSheetData(),this.startedData=!0),e.hasValues||e.height){const{model:t}=e,r={styles:this._workbook.styles,sharedStrings:this.useSharedStrings?this._workbook.sharedStrings:void 0,hyperlinks:this._sheetRelsWriter.hyperlinksProxy,merges:this._merges,formulae:this._formulae,siFormulae:this._siFormulae,comments:[]};P.row.prepare(t,r),this.stream.write(P.row.toXml(t)),r.comments.length&&(this.hasComments=!0,this._sheetCommentsWriter.addComments(r.comments))}}_writeCloseSheetData(){this._write("</sheetData>")}_writeMergeCells(){this._merges.length&&(m.reset(),m.addText(`<mergeCells count="${this._merges.length}">`),this._merges.forEach((e=>{m.addText(`<mergeCell ref="${e}"/>`)})),m.addText("</mergeCells>"),this.stream.write(m))}_writeHyperlinks(){this.stream.write(P.hyperlinks.toXml(this._sheetRelsWriter._hyperlinks))}_writeConditionalFormatting(){const e={styles:this._workbook.styles};P.conditionalFormattings.prepare(this.conditionalFormatting,e),this.stream.write(P.conditionalFormattings.toXml(this.conditionalFormatting))}_writeRowBreaks(){this.stream.write(P.rowBreaks.toXml(this.rowBreaks))}_writeDataValidations(){this.stream.write(P.dataValidations.toXml(this.dataValidations.model))}_writeSheetProtection(){this.stream.write(P.sheetProtection.toXml(this.sheetProtection))}_writePageMargins(){this.stream.write(P.pageMargins.toXml(this.pageSetup.margins))}_writePageSetup(){this.stream.write(P.pageSeteup.toXml(this.pageSetup))}_writeHeaderFooter(){this.stream.write(P.headerFooter.toXml(this.headerFooter))}_writeAutoFilter(){this.stream.write(P.autoFilter.toXml(this.autoFilter))}_writeBackground(){if(this._background){if(void 0!==this._background.imageId){const e=this._workbook.getImage(this._background.imageId),t=this._sheetRelsWriter.addMedia({Target:`../media/${e.name}`,Type:i.Image});this._background={...this._background,rId:t}}this.stream.write(P.picture.toXml({rId:this._background.rId}))}}_writeLegacyData(){this.hasComments&&(m.reset(),m.addText(`<legacyDrawing r:id="${this._sheetCommentsWriter.vmlRelId}"/>`),this.stream.write(m))}_writeDimensions(){}_writeCloseWorksheet(){this._write("</worksheet>")}}},50323:(e,t)=>{const r="undefined"==typeof TextDecoder?null:new TextDecoder("utf-8");t.bufferToString=function(e){return"string"==typeof e?e:r?r.decode(e):e.toString()}},24463:(e,t,r)=>{const n="undefined"==typeof TextEncoder?null:new TextEncoder("utf-8"),{Buffer:i}=r(20181);t.stringToBuffer=function(e){return"string"!=typeof e?e:n?i.from(n.encode(e).buffer):i.from(e)}},38583:(e,t,r)=>{const n=r(67984),i=r(29428);e.exports=class{constructor(e){this.template=e,this.sheets={}}addCell(e){this.addCellEx(i.decodeEx(e))}getCell(e){return this.findCellEx(i.decodeEx(e),!0)}findCell(e){return this.findCellEx(i.decodeEx(e),!1)}findCellAt(e,t,r){const n=this.sheets[e],i=n&&n[t];return i&&i[r]}addCellEx(e){if(e.top)for(let t=e.top;t<=e.bottom;t++)for(let r=e.left;r<=e.right;r++)this.getCellAt(e.sheetName,t,r);else this.findCellEx(e,!0)}getCellEx(e){return this.findCellEx(e,!0)}findCellEx(e,t){const r=this.findSheet(e,t),n=this.findSheetRow(r,e,t);return this.findRowCell(n,e,t)}getCellAt(e,t,r){const n=this.sheets[e]||(this.sheets[e]=[]),a=n[t]||(n[t]=[]);return a[r]||(a[r]={sheetName:e,address:i.n2l(r)+t,row:t,col:r})}removeCellEx(e){const t=this.findSheet(e);if(!t)return;const r=this.findSheetRow(t,e);r&&delete r[e.col]}forEachInSheet(e,t){const r=this.sheets[e];r&&r.forEach(((e,r)=>{e&&e.forEach(((e,n)=>{e&&t(e,r,n)}))}))}forEach(e){n.each(this.sheets,((t,r)=>{this.forEachInSheet(r,e)}))}map(e){const t=[];return this.forEach((r=>{t.push(e(r))})),t}findSheet(e,t){const r=e.sheetName;return this.sheets[r]?this.sheets[r]:t?this.sheets[r]=[]:void 0}findSheetRow(e,t,r){const{row:n}=t;return e&&e[n]?e[n]:r?e[n]=[]:void 0}findRowCell(e,t,r){const{col:n}=t;return e&&e[n]?e[n]:r?e[n]=this.template?Object.assign(t,JSON.parse(JSON.stringify(this.template))):t:void 0}spliceRows(e,t,r,n){const i=this.sheets[e];if(i){const e=[];for(let t=0;t<n;t++)e.push([]);i.splice(t,r,...e)}}spliceColumns(e,t,r,i){const a=this.sheets[e];if(a){const e=[];for(let t=0;t<i;t++)e.push(null);n.each(a,(n=>{n.splice(t,r,...e)}))}}}},29428:e=>{const t=/^[A-Z]+\d+$/,r={_dictionary:["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"],_l2nFill:0,_l2n:{},_n2l:[],_level:e=>e<=26?1:e<=676?2:3,_fill(e){let t,r,n,i,a,o=1;if(e>=4)throw new Error("Out of bounds. Excel supports columns from 1 to 16384");if(this._l2nFill<1&&e>=1){for(;o<=26;)t=this._dictionary[o-1],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=1}if(this._l2nFill<2&&e>=2){for(o=27;o<=702;)r=o-27,n=r%26,i=Math.floor(r/26),t=this._dictionary[i]+this._dictionary[n],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=2}if(this._l2nFill<3&&e>=3){for(o=703;o<=16384;)r=o-703,n=r%26,i=Math.floor(r/26)%26,a=Math.floor(r/676),t=this._dictionary[a]+this._dictionary[i]+this._dictionary[n],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=3}},l2n(e){if(this._l2n[e]||this._fill(e.length),!this._l2n[e])throw new Error(`Out of bounds. Invalid column letter: ${e}`);return this._l2n[e]},n2l(e){if(e<1||e>16384)throw new Error(`${e} is out of bounds. Excel supports columns from 1 to 16384`);return this._n2l[e]||this._fill(this._level(e)),this._n2l[e]},_hash:{},validateAddress(e){if(!t.test(e))throw new Error(`Invalid Address: ${e}`);return!0},decodeAddress(e){const t=e.length<5&&this._hash[e];if(t)return t;let r=!1,n="",i=0,a=!1,o="",s=0;for(let t,c=0;c<e.length;c++)if(t=e.charCodeAt(c),!a&&t>=65&&t<=90)r=!0,n+=e[c],i=26*i+t-64;else if(t>=48&&t<=57)a=!0,o+=e[c],s=10*s+t-48;else if(a&&r&&36!==t)break;if(r){if(i>16384)throw new Error(`Out of bounds. Invalid column letter: ${n}`)}else i=void 0;a||(s=void 0);const c={address:e=n+o,col:i,row:s,$col$row:`$${n}$${o}`};return i<=100&&s<=100&&(this._hash[e]=c,this._hash[c.$col$row]=c),c},getAddress(e,t){if(t){const r=this.n2l(t)+e;return this.decodeAddress(r)}return this.decodeAddress(e)},decode(e){const t=e.split(":");if(2===t.length){const e=this.decodeAddress(t[0]),r=this.decodeAddress(t[1]),n={top:Math.min(e.row,r.row),left:Math.min(e.col,r.col),bottom:Math.max(e.row,r.row),right:Math.max(e.col,r.col)};return n.tl=this.n2l(n.left)+n.top,n.br=this.n2l(n.right)+n.bottom,n.dimensions=`${n.tl}:${n.br}`,n}return this.decodeAddress(e)},decodeEx(e){const t=e.match(/(?:(?:(?:'((?:[^']|'')*)')|([^'^ !]*))!)?(.*)/),r=t[1]||t[2],n=t[3],i=n.split(":");if(i.length>1){let e=this.decodeAddress(i[0]),t=this.decodeAddress(i[1]);const n=Math.min(e.row,t.row),a=Math.min(e.col,t.col),o=Math.max(e.row,t.row),s=Math.max(e.col,t.col);return e=this.n2l(a)+n,t=this.n2l(s)+o,{top:n,left:a,bottom:o,right:s,sheetName:r,tl:{address:e,col:a,row:n,$col$row:`$${this.n2l(a)}$${n}`,sheetName:r},br:{address:t,col:s,row:o,$col$row:`$${this.n2l(s)}$${o}`,sheetName:r},dimensions:`${e}:${t}`}}if(n.startsWith("#"))return r?{sheetName:r,error:n}:{error:n};const a=this.decodeAddress(n);return r?{sheetName:r,...a}:a},encodeAddress:(e,t)=>r.n2l(t)+e,encode(){switch(arguments.length){case 2:return r.encodeAddress(arguments[0],arguments[1]);case 4:return`${r.encodeAddress(arguments[0],arguments[1])}:${r.encodeAddress(arguments[2],arguments[3])}`;default:throw new Error("Can only encode with 2 or 4 arguments")}},inRange(e,t){const[r,n,,i,a]=e,[o,s]=t;return o>=r&&o<=i&&s>=n&&s<=a}};e.exports=r},76172:(e,t)=>{const r=(e,t)=>({...e,...t.reduce(((t,r)=>(e[r]&&(t[r]={...e[r]}),t)),{})}),n=(e,t,n,i=[])=>{e[n]&&(t[n]=r(e[n],i))};t.copyStyle=e=>{if(!e)return e;if(t=e,0===Object.keys(t).length)return{};var t;const i={...e};return n(e,i,"font",["color"]),n(e,i,"alignment"),n(e,i,"protection"),e.border&&(n(e,i,"border"),n(e.border,i.border,"top",["color"]),n(e.border,i.border,"left",["color"]),n(e.border,i.border,"bottom",["color"]),n(e.border,i.border,"right",["color"]),n(e.border,i.border,"diagonal",["color"])),e.fill&&(n(e,i,"fill",["fgColor","bgColor","center"]),e.fill.stops&&(i.fill.stops=e.fill.stops.map((e=>r(e,["color"]))))),i}},7257:(e,t,r)=>{"use strict";const n=r(76982),i={hash(e,...t){const r=n.createHash(e);return r.update(Buffer.concat(t)),r.digest()},convertPasswordToHash(e,t,r,i){t=t.toLowerCase();if(n.getHashes().indexOf(t)<0)throw new Error(`Hash algorithm '${t}' not supported!`);const a=Buffer.from(e,"utf16le");let o=this.hash(t,Buffer.from(r,"base64"),a);for(let e=0;e<i;e++){const r=Buffer.alloc(4);r.writeUInt32LE(e,0),o=this.hash(t,o,r)}return o.toString("base64")},randomBytes:e=>n.randomBytes(e)};e.exports=i},83676:e=>{function t(e,t){return new Promise((r=>{let n=!1;const i=()=>{n||(n=!0,e.removeListener(t,i),r())};e.addListener(t,i)}))}e.exports=async function*(e){const r=[];let n;e.on("data",(e=>r.push(e)));const i=new Promise((e=>n=e));let a=!1;e.on("end",(()=>{a=!0,n()}));let o=!1;for(e.on("error",(e=>{o=e,n()}));!a||r.length>0;){if(0===r.length)e.resume(),await Promise.race([t(e,"data"),i]);else{e.pause();const t=r.shift();yield t}if(o)throw o}n()}},37043:(e,t,r)=>{const{SaxesParser:n}=r(38223),{PassThrough:i}=r(34198),{bufferToString:a}=r(50323);e.exports=async function*(e){e.pipe&&!e[Symbol.asyncIterator]&&(e=e.pipe(new i));const t=new n;let r;t.on("error",(e=>{r=e}));let o=[];t.on("opentag",(e=>o.push({eventType:"opentag",value:e}))),t.on("text",(e=>o.push({eventType:"text",value:e}))),t.on("closetag",(e=>o.push({eventType:"closetag",value:e})));for await(const n of e){if(t.write(a(n)),r)throw r;yield o,o=[]}}},34667:(e,t,r)=>{const n=r(29428),i=/(([a-z_\-0-9]*)!)?([a-z0-9_$]{2,})([(])?/gi,a=/^([$])?([a-z]+)([$])?([1-9][0-9]*)$/i;e.exports={slideFormula:function(e,t,r){const o=n.decode(t),s=n.decode(r);return e.replace(i,((e,t,r,i,c)=>{if(c)return e;const l=a.exec(i);if(l){const r=l[1],i=l[2].toUpperCase(),a=l[3],c=l[4];if(i.length>3||3===i.length&&i>"XFD")return e;let u=n.l2n(i),d=parseInt(c,10);r||(u+=s.col-o.col),a||(d+=s.row-o.row);return(t||"")+(r||"")+n.n2l(u)+(a||"")+d}return e}))}}},92391:e=>{e.exports=class{constructor(){this._values=[],this._totalRefs=0,this._hash=Object.create(null)}get count(){return this._values.length}get values(){return this._values}get totalRefs(){return this._totalRefs}getString(e){return this._values[e]}add(e){let t=this._hash[e];return void 0===t&&(t=this._hash[e]=this._values.length,this._values.push(e)),this._totalRefs++,t}}},87137:(e,t,r)=>{const n=r(34198),i=r(67032),a=r(40524);class o{constructor(e,t){this._data=e,this._encoding=t}get length(){return this.toBuffer().length}copy(e,t,r,n){return this.toBuffer().copy(e,t,r,n)}toBuffer(){return this._buffer||(this._buffer=Buffer.from(this._data,this._encoding)),this._buffer}}class s{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,r,n){return this._data._buf.copy(e,t,r,n)}toBuffer(){return this._data.toBuffer()}}class c{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,r,n){this._data.copy(e,t,r,n)}toBuffer(){return this._data}}class l{constructor(e){this.size=e,this.buffer=Buffer.alloc(e),this.iRead=0,this.iWrite=0}toBuffer(){if(0===this.iRead&&this.iWrite===this.size)return this.buffer;const e=Buffer.alloc(this.iWrite-this.iRead);return this.buffer.copy(e,0,this.iRead,this.iWrite),e}get length(){return this.iWrite-this.iRead}get eod(){return this.iRead===this.iWrite}get full(){return this.iWrite===this.size}read(e){let t;return 0===e?null:void 0===e||e>=this.length?(t=this.toBuffer(),this.iRead=this.iWrite,t):(t=Buffer.alloc(e),this.buffer.copy(t,0,this.iRead,e),this.iRead+=e,t)}write(e,t,r){const n=Math.min(r,this.size-this.iWrite);return e.copy(this.buffer,this.iWrite,t,t+n),this.iWrite+=n,n}}const u=function(e){e=e||{},this.bufSize=e.bufSize||1048576,this.buffers=[],this.batch=e.batch||!1,this.corked=!1,this.inPos=0,this.outPos=0,this.pipes=[],this.paused=!1,this.encoding=null};i.inherits(u,n.Duplex,{toBuffer(){switch(this.buffers.length){case 0:return null;case 1:return this.buffers[0].toBuffer();default:return Buffer.concat(this.buffers.map((e=>e.toBuffer())))}},_getWritableBuffer(){if(this.buffers.length){const e=this.buffers[this.buffers.length-1];if(!e.full)return e}const e=new l(this.bufSize);return this.buffers.push(e),e},async _pipe(e){await Promise.all(this.pipes.map((function(t){return new Promise((r=>{t.write(e.toBuffer(),(()=>{r()}))}))})))},_writeToBuffers(e){let t=0;const r=e.length;for(;t<r;){t+=this._getWritableBuffer().write(e,t,r-t)}},async write(e,t,r){let n;if(t instanceof Function&&(r=t,t="utf8"),r=r||i.nop,e instanceof a)n=new s(e);else if(e instanceof Buffer)n=new c(e);else{if(!("string"==typeof e||e instanceof String||e instanceof ArrayBuffer))throw new Error("Chunk must be one of type String, Buffer or StringBuf.");n=new o(e,t)}if(this.pipes.length)if(this.batch)for(this._writeToBuffers(n);!this.corked&&this.buffers.length>1;)this._pipe(this.buffers.shift());else this.corked?(this._writeToBuffers(n),process.nextTick(r)):(await this._pipe(n),r());else this.paused||this.emit("data",n.toBuffer()),this._writeToBuffers(n),this.emit("readable");return!0},cork(){this.corked=!0},_flush(){if(this.pipes.length)for(;this.buffers.length;)this._pipe(this.buffers.shift())},uncork(){this.corked=!1,this._flush()},end(e,t,r){const n=e=>{e?r(e):(this._flush(),this.pipes.forEach((e=>{e.end()})),this.emit("finish"))};e?this.write(e,t,n):n()},read(e){let t;if(e){for(t=[];e&&this.buffers.length&&!this.buffers[0].eod;){const r=this.buffers[0],n=r.read(e);e-=n.length,t.push(n),r.eod&&r.full&&this.buffers.shift()}return Buffer.concat(t)}return t=this.buffers.map((e=>e.toBuffer())).filter(Boolean),this.buffers=[],Buffer.concat(t)},setEncoding(e){this.encoding=e},pause(){this.paused=!0},resume(){this.paused=!1},isPaused(){return!!this.paused},pipe(e){this.pipes.push(e),!this.paused&&this.buffers.length&&this.end()},unpipe(e){this.pipes=this.pipes.filter((t=>t!==e))},unshift(){throw new Error("Not Implemented")},wrap(){throw new Error("Not Implemented")}}),e.exports=u},40524:e=>{e.exports=class{constructor(e){this._buf=Buffer.alloc(e&&e.size||16384),this._encoding=e&&e.encoding||"utf8",this._inPos=0,this._buffer=void 0}get length(){return this._inPos}get capacity(){return this._buf.length}get buffer(){return this._buf}toBuffer(){return this._buffer||(this._buffer=Buffer.alloc(this.length),this._buf.copy(this._buffer,0,0,this.length)),this._buffer}reset(e){e=e||0,this._buffer=void 0,this._inPos=e}_grow(e){let t=2*this._buf.length;for(;t<e;)t*=2;const r=Buffer.alloc(t);this._buf.copy(r,0),this._buf=r}addText(e){this._buffer=void 0;let t=this._inPos+this._buf.write(e,this._inPos,this._encoding);for(;t>=this._buf.length-4;)this._grow(this._inPos+e.length),t=this._inPos+this._buf.write(e,this._inPos,this._encoding);this._inPos=t}addStringBuf(e){e.length&&(this._buffer=void 0,this.length+e.length>this.capacity&&this._grow(this.length+e.length),e._buf.copy(this._buf,this._inPos,0,e.length),this._inPos+=e.length)}}},67984:e=>{const{toString:t}=Object.prototype,r=/["&<>]/,n={each:function(e,t){e&&(Array.isArray(e)?e.forEach(t):Object.keys(e).forEach((r=>{t(e[r],r)})))},some:function(e,t){return!!e&&(Array.isArray(e)?e.some(t):Object.keys(e).some((r=>t(e[r],r))))},every:function(e,t){return!e||(Array.isArray(e)?e.every(t):Object.keys(e).every((r=>t(e[r],r))))},map:function(e,t){return e?Array.isArray(e)?e.map(t):Object.keys(e).map((r=>t(e[r],r))):[]},keyBy:(e,t)=>e.reduce(((e,r)=>(e[r[t]]=r,e)),{}),isEqual:function(e,t){const r=typeof e,i=typeof t,a=Array.isArray(e),o=Array.isArray(t);let s;if(r!==i)return!1;if("object"==typeof e){if(a||o)return!(!a||!o)&&(e.length===t.length&&e.every(((e,r)=>{const i=t[r];return n.isEqual(e,i)})));if(null===e||null===t)return e===t;if(s=Object.keys(e),Object.keys(t).length!==s.length)return!1;for(const e of s)if(!t.hasOwnProperty(e))return!1;return n.every(e,((e,r)=>{const i=t[r];return n.isEqual(e,i)}))}return e===t},escapeHtml(e){const t=r.exec(e);if(!t)return e;let n="",i="",a=0,o=t.index;for(;o<e.length;o++){switch(e.charAt(o)){case'"':i=""";break;case"&":i="&";break;case"'":i="'";break;case"<":i="<";break;case">":i=">";break;default:continue}a!==o&&(n+=e.substring(a,o)),a=o+1,n+=i}return a!==o?n+e.substring(a,o):n},strcmp:(e,t)=>e<t?-1:e>t?1:0,isUndefined:e=>"[object Undefined]"===t.call(e),isObject:e=>"[object Object]"===t.call(e),deepMerge(){const e=arguments[0]||{},{length:t}=arguments;let r,i,a;function o(t,o){r=e[o],a=Array.isArray(t),n.isObject(t)||a?(a?(a=!1,i=r&&Array.isArray(r)?r:[]):i=r&&n.isObject(r)?r:{},e[o]=n.deepMerge(i,t)):n.isUndefined(t)||(e[o]=t)}for(let e=0;e<t;e++)n.each(arguments[e],o);return e}};e.exports=n},67032:(e,t,r)=>{const n=r(79896),i=/[<>&'"\x7F\x00-\x08\x0B-\x0C\x0E-\x1F]/,a={nop(){},promiseImmediate:e=>new Promise((t=>{global.setImmediate?setImmediate((()=>{t(e)})):setTimeout((()=>{t(e)}),1)})),inherits:function(e,t,r,n){e.super_=t,n||(n=r,r=null),r&&Object.keys(r).forEach((t=>{Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}));const i={constructor:{value:e,enumerable:!1,writable:!1,configurable:!0}};n&&Object.keys(n).forEach((e=>{i[e]=Object.getOwnPropertyDescriptor(n,e)})),e.prototype=Object.create(t.prototype,i)},dateToExcel:(e,t)=>25569+e.getTime()/864e5-(t?1462:0),excelToDate(e,t){const r=Math.round(24*(e-25569+(t?1462:0))*3600*1e3);return new Date(r)},parsePath(e){const t=e.lastIndexOf("/");return{path:e.substring(0,t),name:e.substring(t+1)}},getRelsPath(e){const t=a.parsePath(e);return`${t.path}/_rels/${t.name}.rels`},xmlEncode(e){const t=i.exec(e);if(!t)return e;let r="",n="",a=0,o=t.index;for(;o<e.length;o++){const t=e.charCodeAt(o);switch(t){case 34:n=""";break;case 38:n="&";break;case 39:n="'";break;case 60:n="<";break;case 62:n=">";break;case 127:n="";break;default:if(t<=31&&(t<=8||t>=11&&13!==t)){n="";break}continue}a!==o&&(r+=e.substring(a,o)),a=o+1,n&&(r+=n)}return a!==o?r+e.substring(a,o):r},xmlDecode:e=>e.replace(/&([a-z]*);/g,(e=>{switch(e){case"<":return"<";case">":return">";case"&":return"&";case"'":return"'";case""":return'"';default:return e}})),validInt(e){const t=parseInt(e,10);return Number.isNaN(t)?0:t},isDateFmt(e){if(!e)return!1;return null!==(e=(e=e.replace(/\[[^\]]*]/g,"")).replace(/"[^"]*"/g,"")).match(/[ymdhMsb]+/)},fs:{exists:e=>new Promise((t=>{n.access(e,n.constants.F_OK,(e=>{t(!e)}))}))},toIsoDateString:e=>e.toIsoString().subsstr(0,10),parseBoolean:e=>!0===e||"true"===e||1===e||"1"===e};e.exports=a},12141:(e,t,r)=>{const n=r(67984),i=r(67032),a=">";function o(e,t,r){e.push(` ${t}="${i.xmlEncode(r.toString())}"`)}function s(e,t){if(t){const r=[];n.each(t,((e,t)=>{void 0!==e&&o(r,t,e)})),e.push(r.join(""))}}class c{constructor(){this._xml=[],this._stack=[],this._rollbacks=[]}get tos(){return this._stack.length?this._stack[this._stack.length-1]:void 0}get cursor(){return this._xml.length}openXml(e){const t=this._xml;t.push("<?xml"),s(t,e),t.push("?>\n")}openNode(e,t){const r=this.tos,n=this._xml;r&&this.open&&n.push(a),this._stack.push(e),n.push("<"),n.push(e),s(n,t),this.leaf=!0,this.open=!0}addAttribute(e,t){if(!this.open)throw new Error("Cannot write attributes to node if it is not open");void 0!==t&&o(this._xml,e,t)}addAttributes(e){if(!this.open)throw new Error("Cannot write attributes to node if it is not open");s(this._xml,e)}writeText(e){const t=this._xml;this.open&&(t.push(a),this.open=!1),this.leaf=!1,t.push(i.xmlEncode(e.toString()))}writeXml(e){this.open&&(this._xml.push(a),this.open=!1),this.leaf=!1,this._xml.push(e)}closeNode(){const e=this._stack.pop(),t=this._xml;this.leaf?t.push("/>"):(t.push("</"),t.push(e),t.push(a)),this.open=!1,this.leaf=!1}leafNode(e,t,r){this.openNode(e,t),void 0!==r&&this.writeText(r),this.closeNode()}closeAll(){for(;this._stack.length;)this.closeNode()}addRollback(){return this._rollbacks.push({xml:this._xml.length,stack:this._stack.length,leaf:this.leaf,open:this.open}),this.cursor}commit(){this._rollbacks.pop()}rollback(){const e=this._rollbacks.pop();this._xml.length>e.xml&&this._xml.splice(e.xml,this._xml.length-e.xml),this._stack.length>e.stack&&this._stack.splice(e.stack,this._stack.length-e.stack),this.leaf=e.leaf,this.open=e.open}get xml(){return this.closeAll(),this._xml.join("")}}c.StdDocAttributes={version:"1.0",encoding:"UTF-8",standalone:"yes"},e.exports=c},1495:(e,t,r)=>{const n=r(24434),i=r(58833),a=r(87137),{stringToBuffer:o}=r(24463);class s extends n.EventEmitter{constructor(e){super(),this.options=Object.assign({type:"nodebuffer",compression:"DEFLATE"},e),this.zip=new i,this.stream=new a}append(e,t){t.hasOwnProperty("base64")&&t.base64?this.zip.file(t.name,e,{base64:!0}):(process.browser&&"string"==typeof e&&(e=o(e)),this.zip.file(t.name,e))}async finalize(){const e=await this.zip.generateAsync(this.options);this.stream.end(e),this.emit("finish")}read(e){return this.stream.read(e)}setEncoding(e){return this.stream.setEncoding(e)}pause(){return this.stream.pause()}resume(){return this.stream.resume()}isPaused(){return this.stream.isPaused()}pipe(e,t){return this.stream.pipe(e,t)}unpipe(e){return this.stream.unpipe(e)}unshift(e){return this.stream.unshift(e)}wrap(e){return this.stream.wrap(e)}}e.exports={ZipWriter:s}},77118:e=>{e.exports={0:{f:"General"},1:{f:"0"},2:{f:"0.00"},3:{f:"#,##0"},4:{f:"#,##0.00"},9:{f:"0%"},10:{f:"0.00%"},11:{f:"0.00E+00"},12:{f:"# ?/?"},13:{f:"# ??/??"},14:{f:"mm-dd-yy"},15:{f:"d-mmm-yy"},16:{f:"d-mmm"},17:{f:"mmm-yy"},18:{f:"h:mm AM/PM"},19:{f:"h:mm:ss AM/PM"},20:{f:"h:mm"},21:{f:"h:mm:ss"},22:{f:'m/d/yy "h":mm'},27:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},28:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},29:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},30:{"zh-tw":"m/d/yy ","zh-cn":"m-d-yy","ja-jp":"m/d/yy","ko-kr":"mm-dd-yy"},31:{"zh-tw":'yyyy"年"m"月"d"日"',"zh-cn":'yyyy"年"m"月"d"日"',"ja-jp":'yyyy"年"m"月"d"日"',"ko-kr":'yyyy"년" mm"월" dd"일"'},32:{"zh-tw":'hh"時"mm"分"',"zh-cn":'h"时"mm"分"',"ja-jp":'h"時"mm"分"',"ko-kr":'h"시" mm"분"'},33:{"zh-tw":'hh"時"mm"分"ss"秒"',"zh-cn":'h"时"mm"分"ss"秒"',"ja-jp":'h"時"mm"分"ss"秒"',"ko-kr":'h"시" mm"분" ss"초"'},34:{"zh-tw":'上午/下午 hh"時"mm"分"',"zh-cn":'上午/下午 h"时"mm"分"',"ja-jp":'yyyy"年"m"月"',"ko-kr":"yyyy-mm-dd"},35:{"zh-tw":'上午/下午 hh"時"mm"分"ss"秒"',"zh-cn":'上午/下午 h"时"mm"分"ss"秒"',"ja-jp":'m"月"d"日"',"ko-kr":"yyyy-mm-dd"},36:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},37:{f:"#,##0 ;(#,##0)"},38:{f:"#,##0 ;[Red](#,##0)"},39:{f:"#,##0.00 ;(#,##0.00)"},40:{f:"#,##0.00 ;[Red](#,##0.00)"},45:{f:"mm:ss"},46:{f:"[h]:mm:ss"},47:{f:"mmss.0"},48:{f:"##0.0E+0"},49:{f:"@"},50:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},51:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},52:{"zh-tw":'上午/下午 hh"時"mm"分"',"zh-cn":'yyyy"年"m"月"',"ja-jp":'yyyy"年"m"月"',"ko-kr":"yyyy-mm-dd"},53:{"zh-tw":'上午/下午 hh"時"mm"分"ss"秒"',"zh-cn":'m"月"d"日"',"ja-jp":'m"月"d"日"',"ko-kr":"yyyy-mm-dd"},54:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},55:{"zh-tw":'上午/下午 hh"時"mm"分"',"zh-cn":'上午/下午 h"时"mm"分"',"ja-jp":'yyyy"年"m"月"',"ko-kr":"yyyy-mm-dd"},56:{"zh-tw":'上午/下午 hh"時"mm"分"ss"秒"',"zh-cn":'上午/下午 h"时"mm"分"ss"秒"',"ja-jp":'m"月"d"日"',"ko-kr":"yyyy-mm-dd"},57:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},58:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},59:{"th-th":"t0"},60:{"th-th":"t0.00"},61:{"th-th":"t#,##0"},62:{"th-th":"t#,##0.00"},67:{"th-th":"t0%"},68:{"th-th":"t0.00%"},69:{"th-th":"t# ?/?"},70:{"th-th":"t# ??/??"},81:{"th-th":"d/m/bb"}}},71745:e=>{"use strict";e.exports={OfficeDocument:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Worksheet:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",CalcChain:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/calcChain",SharedStrings:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Styles:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Theme:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",Hyperlink:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",Image:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",CoreProperties:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",ExtenderProperties:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",Comments:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",VmlDrawing:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",Table:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/table"}},87242:(e,t,r)=>{const n=r(37043),i=r(12141);class a{prepare(){}render(){}parseOpen(e){}parseText(e){}parseClose(e){}reconcile(e,t){}reset(){this.model=null,this.map&&Object.values(this.map).forEach((e=>{e instanceof a?e.reset():e.xform&&e.xform.reset()}))}mergeModel(e){this.model=Object.assign(this.model||{},e)}async parse(e){for await(const t of e)for(const{eventType:e,value:r}of t)if("opentag"===e)this.parseOpen(r);else if("text"===e)this.parseText(r);else if("closetag"===e&&!this.parseClose(r.name))return this.model;return this.model}async parseStream(e){return this.parse(n(e))}get xml(){return this.toXml(this.model)}toXml(e){const t=new i;return this.render(t,e),t.xml}static toAttribute(e,t,r=!1){if(void 0===e){if(r)return t}else if(r||e!==t)return e.toString()}static toStringAttribute(e,t,r=!1){return a.toAttribute(e,t,r)}static toStringValue(e,t){return void 0===e?t:e}static toBoolAttribute(e,t,r=!1){if(void 0===e){if(r)return t}else if(r||e!==t)return e?"1":"0"}static toBoolValue(e,t){return void 0===e?t:"1"===e}static toIntAttribute(e,t,r=!1){return a.toAttribute(e,t,r)}static toIntValue(e,t){return void 0===e?t:parseInt(e,10)}static toFloatAttribute(e,t,r=!1){return a.toAttribute(e,t,r)}static toFloatValue(e,t){return void 0===e?t:parseFloat(e)}}e.exports=a},78788:(e,t,r)=>{const n=r(87242),i=r(29428);function a(e){try{return i.decodeEx(e),!0}catch(e){return!1}}function o(e){const t=[];let r=!1,n="";return e.split(",").forEach((e=>{if(!e)return;const i=(e.match(/'/g)||[]).length;if(!i)return void(r?n+=`${e},`:a(e)&&t.push(e));const o=i%2==0;!r&&o&&a(e)?t.push(e):r&&!o?(r=!1,a(n+e)&&t.push(n+e),n=""):(r=!0,n+=`${e},`)})),t}e.exports=class extends n{render(e,t){e.openNode("definedName",{name:t.name,localSheetId:t.localSheetId}),e.writeText(t.ranges.join(",")),e.closeNode()}parseOpen(e){return"definedName"===e.name&&(this._parsedName=e.attributes.name,this._parsedLocalSheetId=e.attributes.localSheetId,this._parsedText=[],!0)}parseText(e){this._parsedText.push(e)}parseClose(){return this.model={name:this._parsedName,ranges:o(this._parsedText.join(""))},void 0!==this._parsedLocalSheetId&&(this.model.localSheetId=parseInt(this._parsedLocalSheetId,10)),!1}}},63722:(e,t,r)=>{const n=r(67032),i=r(87242);e.exports=class extends i{render(e,t){e.leafNode("sheet",{sheetId:t.id,name:t.name,state:t.state,"r:id":t.rId})}parseOpen(e){return"sheet"===e.name&&(this.model={name:n.xmlDecode(e.attributes.name),id:parseInt(e.attributes.sheetId,10),state:e.attributes.state,rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},58655:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){e.leafNode("calcPr",{calcId:171027,fullCalcOnLoad:t.fullCalcOnLoad?1:void 0})}parseOpen(e){return"calcPr"===e.name&&(this.model={},!0)}parseText(){}parseClose(){return!1}}},22403:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){e.leafNode("workbookPr",{date1904:t.date1904?1:void 0,defaultThemeVersion:164011,filterPrivacy:1})}parseOpen(e){return"workbookPr"===e.name&&(this.model={date1904:"1"===e.attributes.date1904},!0)}parseText(){}parseClose(){return!1}}},41711:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){const r={xWindow:t.x||0,yWindow:t.y||0,windowWidth:t.width||12e3,windowHeight:t.height||24e3,firstSheet:t.firstSheet,activeTab:t.activeTab};t.visibility&&"visible"!==t.visibility&&(r.visibility=t.visibility),e.leafNode("workbookView",r)}parseOpen(e){if("workbookView"===e.name){const t=this.model={},r=function(e,r,n){const i=void 0!==r?t[e]=r:n;void 0!==i&&(t[e]=i)},n=function(e,r,n){const i=void 0!==r?t[e]=parseInt(r,10):n;void 0!==i&&(t[e]=i)};return n("x",e.attributes.xWindow,0),n("y",e.attributes.yWindow,0),n("width",e.attributes.windowWidth,25e3),n("height",e.attributes.windowHeight,1e4),r("visibility",e.attributes.visibility,"visible"),n("activeTab",e.attributes.activeTab,void 0),n("firstSheet",e.attributes.firstSheet,void 0),!0}return!1}parseText(){}parseClose(){return!1}}},22519:(e,t,r)=>{const n=r(67984),i=r(29428),a=r(12141),o=r(87242),s=r(52789),c=r(62447),l=r(78788),u=r(63722),d=r(41711),p=r(22403),f=r(58655);class m extends o{constructor(){super(),this.map={fileVersion:m.STATIC_XFORMS.fileVersion,workbookPr:new p,bookViews:new c({tag:"bookViews",count:!1,childXform:new d}),sheets:new c({tag:"sheets",count:!1,childXform:new u}),definedNames:new c({tag:"definedNames",count:!1,childXform:new l}),calcPr:new f}}prepare(e){e.sheets=e.worksheets;const t=[];let r=0;e.sheets.forEach((e=>{if(e.pageSetup&&e.pageSetup.printArea&&e.pageSetup.printArea.split("&&").forEach((n=>{const i=n.split(":"),a={name:"_xlnm.Print_Area",ranges:[`'${e.name}'!$${i[0]}:$${i[1]}`],localSheetId:r};t.push(a)})),e.pageSetup&&(e.pageSetup.printTitlesRow||e.pageSetup.printTitlesColumn)){const n=[];if(e.pageSetup.printTitlesColumn){const t=e.pageSetup.printTitlesColumn.split(":");n.push(`'${e.name}'!$${t[0]}:$${t[1]}`)}if(e.pageSetup.printTitlesRow){const t=e.pageSetup.printTitlesRow.split(":");n.push(`'${e.name}'!$${t[0]}:$${t[1]}`)}const i={name:"_xlnm.Print_Titles",ranges:n,localSheetId:r};t.push(i)}r++})),t.length&&(e.definedNames=e.definedNames.concat(t)),(e.media||[]).forEach(((e,t)=>{e.name=e.type+(t+1)}))}render(e,t){e.openXml(a.StdDocAttributes),e.openNode("workbook",m.WORKBOOK_ATTRIBUTES),this.map.fileVersion.render(e),this.map.workbookPr.render(e,t.properties),this.map.bookViews.render(e,t.views),this.map.sheets.render(e,t.sheets),this.map.definedNames.render(e,t.definedNames),this.map.calcPr.render(e,t.calcProperties),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):("workbook"===e.name||(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):"workbook"!==e||(this.model={sheets:this.map.sheets.model,properties:this.map.workbookPr.model||{},views:this.map.bookViews.model,calcProperties:{}},this.map.definedNames.model&&(this.model.definedNames=this.map.definedNames.model),!1)}reconcile(e){const t=(e.workbookRels||[]).reduce(((e,t)=>(e[t.Id]=t,e)),{}),r=[];let a,o=0;(e.sheets||[]).forEach((n=>{const i=t[n.rId];i&&(a=e.worksheetHash[`xl/${i.Target.replace(/^(\s|\/xl\/)+/,"")}`],a&&(a.name=n.name,a.id=n.id,a.state=n.state,r[o++]=a))}));const s=[];n.each(e.definedNames,(e=>{if("_xlnm.Print_Area"===e.name){if(a=r[e.localSheetId],a){a.pageSetup||(a.pageSetup={});const t=i.decodeEx(e.ranges[0]);a.pageSetup.printArea=a.pageSetup.printArea?`${a.pageSetup.printArea}&&${t.dimensions}`:t.dimensions}}else if("_xlnm.Print_Titles"===e.name){if(a=r[e.localSheetId],a){a.pageSetup||(a.pageSetup={});const t=e.ranges.join(","),r=/\$/g,n=/\$\d+:\$\d+/,i=t.match(n);if(i&&i.length){const e=i[0];a.pageSetup.printTitlesRow=e.replace(r,"")}const o=/\$[A-Z]+:\$[A-Z]+/,s=t.match(o);if(s&&s.length){const e=s[0];a.pageSetup.printTitlesColumn=e.replace(r,"")}}}else s.push(e)})),e.definedNames=s,e.media.forEach(((e,t)=>{e.index=t}))}}m.WORKBOOK_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"x15","xmlns:x15":"http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"},m.STATIC_XFORMS={fileVersion:new s({tag:"fileVersion",$:{appName:"xl",lastEdited:5,lowestEdited:5,rupBuild:9303}})},e.exports=m},41710:(e,t,r)=>{const n=r(95814),i=r(67032),a=r(87242),o=e.exports=function(e){this.model=e};i.inherits(o,a,{get tag(){return"r"},get richTextXform(){return this._richTextXform||(this._richTextXform=new n),this._richTextXform},render(e,t){t=t||this.model,e.openNode("comment",{ref:t.ref,authorId:0}),e.openNode("text"),t&&t.note&&t.note.texts&&t.note.texts.forEach((t=>{this.richTextXform.render(e,t)})),e.closeNode(),e.closeNode()},parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"comment":return this.model={type:"note",note:{texts:[]},...e.attributes},!0;case"r":return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}},parseText(e){this.parser&&this.parser.parseText(e)},parseClose(e){switch(e){case"comment":return!1;case"r":return this.model.note.texts.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}})},10959:(e,t,r)=>{const n=r(12141),i=r(67032),a=r(87242),o=r(41710),s=e.exports=function(){this.map={comment:new o}};i.inherits(s,a,{COMMENTS_ATTRIBUTES:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main"}},{render(e,t){t=t||this.model,e.openXml(n.StdDocAttributes),e.openNode("comments",s.COMMENTS_ATTRIBUTES),e.openNode("authors"),e.leafNode("author",null,"Author"),e.closeNode(),e.openNode("commentList"),t.comments.forEach((t=>{this.map.comment.render(e,t)})),e.closeNode(),e.closeNode()},parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"commentList":return this.model={comments:[]},!0;case"comment":return this.parser=this.map.comment,this.parser.parseOpen(e),!0;default:return!1}},parseText(e){this.parser&&this.parser.parseText(e)},parseClose(e){switch(e){case"commentList":return!1;case"comment":return this.model.comments.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}})},57190:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this._model=e}get tag(){return this._model&&this._model.tag}render(e,t,r){(t===r[2]||"x:SizeWithCells"===this.tag&&t===r[1])&&e.leafNode(this.tag)}parseOpen(e){return e.name===this.tag&&(this.model={},this.model[this.tag]=!0,!0)}parseText(){}parseClose(){return!1}}},59718:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this._model=e}get tag(){return this._model&&this._model.tag}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(e){return e.name===this.tag&&(this.text="",!0)}parseText(e){this.text=e}parseClose(){return!1}}},44110:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"x:Anchor"}getAnchorRect(e){const t=Math.floor(e.left),r=Math.floor(68*(e.left-t)),n=Math.floor(e.top),i=Math.floor(18*(e.top-n)),a=Math.floor(e.right),o=Math.floor(68*(e.right-a)),s=Math.floor(e.bottom);return[t,r,n,i,a,o,s,Math.floor(18*(e.bottom-s))]}getDefaultRect(e){const t=e.col,r=Math.max(e.row-2,0);return[t,6,r,14,t+2,2,r+4,16]}render(e,t){const r=t.anchor?this.getAnchorRect(t.anchor):this.getDefaultRect(t.refAddress);e.leafNode("x:Anchor",null,r.join(", "))}parseOpen(e){return e.name===this.tag&&(this.text="",!0)}parseText(e){this.text=e}parseClose(){return!1}}},59887:(e,t,r)=>{const n=r(87242),i=r(44110),a=r(59718),o=r(57190),s=["twoCells","oneCells","absolute"];e.exports=class extends n{constructor(){super(),this.map={"x:Anchor":new i,"x:Locked":new a({tag:"x:Locked"}),"x:LockText":new a({tag:"x:LockText"}),"x:SizeWithCells":new o({tag:"x:SizeWithCells"}),"x:MoveWithCells":new o({tag:"x:MoveWithCells"})}}get tag(){return"x:ClientData"}render(e,t){const{protection:r,editAs:n}=t.note;e.openNode(this.tag,{ObjectType:"Note"}),this.map["x:MoveWithCells"].render(e,n,s),this.map["x:SizeWithCells"].render(e,n,s),this.map["x:Anchor"].render(e,t),this.map["x:Locked"].render(e,r.locked),e.leafNode("x:AutoFill",null,"False"),this.map["x:LockText"].render(e,r.lockText),e.leafNode("x:Row",null,t.refAddress.row-1),e.leafNode("x:Column",null,t.refAddress.col-1),e.closeNode()}parseOpen(e){if(e.name===this.tag)this.reset(),this.model={anchor:[],protection:{},editAs:""};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.normalizeModel(),!1)}normalizeModel(){const e=Object.assign({},this.map["x:MoveWithCells"].model,this.map["x:SizeWithCells"].model),t=Object.keys(e).length;this.model.editAs=s[t],this.model.anchor=this.map["x:Anchor"].text,this.model.protection.locked=this.map["x:Locked"].text,this.model.protection.lockText=this.map["x:LockText"].text}}},43316:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(23712);class o extends i{constructor(){super(),this.map={"v:shape":new a}}get tag(){return"xml"}render(e,t){e.openXml(n.StdDocAttributes),e.openNode(this.tag,o.DRAWING_ATTRIBUTES),e.openNode("o:shapelayout",{"v:ext":"edit"}),e.leafNode("o:idmap",{"v:ext":"edit",data:1}),e.closeNode(),e.openNode("v:shapetype",{id:"_x0000_t202",coordsize:"21600,21600","o:spt":202,path:"m,l,21600r21600,l21600,xe"}),e.leafNode("v:stroke",{joinstyle:"miter"}),e.leafNode("v:path",{gradientshapeok:"t","o:connecttype":"rect"}),e.closeNode(),t.comments.forEach(((t,r)=>{this.map["v:shape"].render(e,t,r)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={comments:[]};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.comments.push(this.parser.model),this.parser=void 0),!0):e!==this.tag}reconcile(e,t){e.anchors.forEach((e=>{e.br?this.map["xdr:twoCellAnchor"].reconcile(e,t):this.map["xdr:oneCellAnchor"].reconcile(e,t)}))}}o.DRAWING_ATTRIBUTES={"xmlns:v":"urn:schemas-microsoft-com:vml","xmlns:o":"urn:schemas-microsoft-com:office:office","xmlns:x":"urn:schemas-microsoft-com:office:excel"},e.exports=o},23712:(e,t,r)=>{const n=r(87242),i=r(81905),a=r(59887);class o extends n{constructor(){super(),this.map={"v:textbox":new i,"x:ClientData":new a}}get tag(){return"v:shape"}render(e,t,r){e.openNode("v:shape",o.V_SHAPE_ATTRIBUTES(t,r)),e.leafNode("v:fill",{color2:"infoBackground [80]"}),e.leafNode("v:shadow",{color:"none [81]",obscured:"t"}),e.leafNode("v:path",{"o:connecttype":"none"}),this.map["v:textbox"].render(e,t),this.map["x:ClientData"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={margins:{insetmode:e.attributes["o:insetmode"]},anchor:"",editAs:"",protection:{}};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.margins.inset=this.map["v:textbox"].model&&this.map["v:textbox"].model.inset,this.model.protection=this.map["x:ClientData"].model&&this.map["x:ClientData"].model.protection,this.model.anchor=this.map["x:ClientData"].model&&this.map["x:ClientData"].model.anchor,this.model.editAs=this.map["x:ClientData"].model&&this.map["x:ClientData"].model.editAs,!1)}}o.V_SHAPE_ATTRIBUTES=(e,t)=>({id:`_x0000_s${1025+t}`,type:"#_x0000_t202",style:"position:absolute; margin-left:105.3pt;margin-top:10.5pt;width:97.8pt;height:59.1pt;z-index:1;visibility:hidden",fillcolor:"infoBackground [80]",strokecolor:"none [81]","o:insetmode":e.note.margins&&e.note.margins.insetmode}),e.exports=o},81905:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"v:textbox"}conversionUnit(e,t,r){return`${parseFloat(e)*t.toFixed(2)}${r}`}reverseConversionUnit(e){return(e||"").split(",").map((e=>Number(parseFloat(this.conversionUnit(parseFloat(e),.1,"")).toFixed(2))))}render(e,t){const r={style:"mso-direction-alt:auto"};if(t&&t.note){let{inset:e}=t.note&&t.note.margins;Array.isArray(e)&&(e=e.map((e=>this.conversionUnit(e,10,"mm"))).join(",")),e&&(r.inset=e)}e.openNode("v:textbox",r),e.leafNode("div",{style:"text-align:left"}),e.closeNode()}parseOpen(e){return e.name!==this.tag||(this.model={inset:this.reverseConversionUnit(e.attributes.inset)},!0)}parseText(){}parseClose(e){return e!==this.tag}}},60554:(e,t,r)=>{const n=r(87242);e.exports=class extends n{createNewModel(e){return{}}parseOpen(e){return this.parser=this.parser||this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag&&(this.model=this.createNewModel(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}onParserClose(e,t){this.model[e]=t.model}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.onParserClose(e,this.parser),this.parser=void 0),!0):e!==this.tag}}},38955:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){e.openNode("HeadingPairs"),e.openNode("vt:vector",{size:2,baseType:"variant"}),e.openNode("vt:variant"),e.leafNode("vt:lpstr",void 0,"Worksheets"),e.closeNode(),e.openNode("vt:variant"),e.leafNode("vt:i4",void 0,t.length),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(e){return"HeadingPairs"===e.name}parseText(){}parseClose(e){return"HeadingPairs"!==e}}},30449:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){e.openNode("TitlesOfParts"),e.openNode("vt:vector",{size:t.length,baseType:"lpstr"}),t.forEach((t=>{e.leafNode("vt:lpstr",void 0,t.name)})),e.closeNode(),e.closeNode()}parseOpen(e){return"TitlesOfParts"===e.name}parseText(){}parseClose(e){return"TitlesOfParts"!==e}}},15888:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(71207),o=r(38955),s=r(30449);class c extends i{constructor(){super(),this.map={Company:new a({tag:"Company"}),Manager:new a({tag:"Manager"}),HeadingPairs:new o,TitleOfParts:new s}}render(e,t){e.openXml(n.StdDocAttributes),e.openNode("Properties",c.PROPERTY_ATTRIBUTES),e.leafNode("Application",void 0,"Microsoft Excel"),e.leafNode("DocSecurity",void 0,"0"),e.leafNode("ScaleCrop",void 0,"false"),this.map.HeadingPairs.render(e,t.worksheets),this.map.TitleOfParts.render(e,t.worksheets),this.map.Company.render(e,t.company||""),this.map.Manager.render(e,t.manager),e.leafNode("LinksUpToDate",void 0,"false"),e.leafNode("SharedDoc",void 0,"false"),e.leafNode("HyperlinksChanged",void 0,"false"),e.leafNode("AppVersion",void 0,"16.0300"),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"Properties"===e.name||(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):"Properties"!==e||(this.model={worksheets:this.map.TitleOfParts.model,company:this.map.Company.model,manager:this.map.Manager.model},!1)}}c.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3,6}/,"")},c.DateAttrs={"xsi:type":"dcterms:W3CDTF"},c.PROPERTY_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties","xmlns:vt":"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"},e.exports=c},40814:(e,t,r)=>{const n=r(12141),i=r(87242);class a extends i{render(e,t){e.openXml(n.StdDocAttributes),e.openNode("Types",a.PROPERTY_ATTRIBUTES);const r={};(t.media||[]).forEach((t=>{if("image"===t.type){const n=t.extension;r[n]||(r[n]=!0,e.leafNode("Default",{Extension:n,ContentType:`image/${n}`}))}})),e.leafNode("Default",{Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"}),e.leafNode("Default",{Extension:"xml",ContentType:"application/xml"}),e.leafNode("Override",{PartName:"/xl/workbook.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"}),t.worksheets.forEach((t=>{const r=`/xl/worksheets/sheet${t.id}.xml`;e.leafNode("Override",{PartName:r,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"})})),e.leafNode("Override",{PartName:"/xl/theme/theme1.xml",ContentType:"application/vnd.openxmlformats-officedocument.theme+xml"}),e.leafNode("Override",{PartName:"/xl/styles.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"});t.sharedStrings&&t.sharedStrings.count&&e.leafNode("Override",{PartName:"/xl/sharedStrings.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml"}),t.tables&&t.tables.forEach((t=>{e.leafNode("Override",{PartName:`/xl/tables/${t.target}`,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml"})})),t.drawings&&t.drawings.forEach((t=>{e.leafNode("Override",{PartName:`/xl/drawings/${t.name}.xml`,ContentType:"application/vnd.openxmlformats-officedocument.drawing+xml"})})),t.commentRefs&&(e.leafNode("Default",{Extension:"vml",ContentType:"application/vnd.openxmlformats-officedocument.vmlDrawing"}),t.commentRefs.forEach((({commentName:t})=>{e.leafNode("Override",{PartName:`/xl/${t}.xml`,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml"})}))),e.leafNode("Override",{PartName:"/docProps/core.xml",ContentType:"application/vnd.openxmlformats-package.core-properties+xml"}),e.leafNode("Override",{PartName:"/docProps/app.xml",ContentType:"application/vnd.openxmlformats-officedocument.extended-properties+xml"}),e.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}}a.PROPERTY_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"},e.exports=a},1298:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(59874),o=r(71207),s=r(65208);class c extends i{constructor(){super(),this.map={"dc:creator":new o({tag:"dc:creator"}),"dc:title":new o({tag:"dc:title"}),"dc:subject":new o({tag:"dc:subject"}),"dc:description":new o({tag:"dc:description"}),"dc:identifier":new o({tag:"dc:identifier"}),"dc:language":new o({tag:"dc:language"}),"cp:keywords":new o({tag:"cp:keywords"}),"cp:category":new o({tag:"cp:category"}),"cp:lastModifiedBy":new o({tag:"cp:lastModifiedBy"}),"cp:lastPrinted":new a({tag:"cp:lastPrinted",format:c.DateFormat}),"cp:revision":new s({tag:"cp:revision"}),"cp:version":new o({tag:"cp:version"}),"cp:contentStatus":new o({tag:"cp:contentStatus"}),"cp:contentType":new o({tag:"cp:contentType"}),"dcterms:created":new a({tag:"dcterms:created",attrs:c.DateAttrs,format:c.DateFormat}),"dcterms:modified":new a({tag:"dcterms:modified",attrs:c.DateAttrs,format:c.DateFormat})}}render(e,t){e.openXml(n.StdDocAttributes),e.openNode("cp:coreProperties",c.CORE_PROPERTY_ATTRIBUTES),this.map["dc:creator"].render(e,t.creator),this.map["dc:title"].render(e,t.title),this.map["dc:subject"].render(e,t.subject),this.map["dc:description"].render(e,t.description),this.map["dc:identifier"].render(e,t.identifier),this.map["dc:language"].render(e,t.language),this.map["cp:keywords"].render(e,t.keywords),this.map["cp:category"].render(e,t.category),this.map["cp:lastModifiedBy"].render(e,t.lastModifiedBy),this.map["cp:lastPrinted"].render(e,t.lastPrinted),this.map["cp:revision"].render(e,t.revision),this.map["cp:version"].render(e,t.version),this.map["cp:contentStatus"].render(e,t.contentStatus),this.map["cp:contentType"].render(e,t.contentType),this.map["dcterms:created"].render(e,t.created),this.map["dcterms:modified"].render(e,t.modified),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"cp:coreProperties":case"coreProperties":return!0;default:if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case"cp:coreProperties":case"coreProperties":return this.model={creator:this.map["dc:creator"].model,title:this.map["dc:title"].model,subject:this.map["dc:subject"].model,description:this.map["dc:description"].model,identifier:this.map["dc:identifier"].model,language:this.map["dc:language"].model,keywords:this.map["cp:keywords"].model,category:this.map["cp:category"].model,lastModifiedBy:this.map["cp:lastModifiedBy"].model,lastPrinted:this.map["cp:lastPrinted"].model,revision:this.map["cp:revision"].model,contentStatus:this.map["cp:contentStatus"].model,contentType:this.map["cp:contentType"].model,created:this.map["dcterms:created"].model,modified:this.map["dcterms:modified"].model},!1;default:throw new Error(`Unexpected xml node in parseClose: ${e}`)}}}c.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3}/,"")},c.DateAttrs={"xsi:type":"dcterms:W3CDTF"},c.CORE_PROPERTY_ATTRIBUTES={"xmlns:cp":"http://schemas.openxmlformats.org/package/2006/metadata/core-properties","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:dcterms":"http://purl.org/dc/terms/","xmlns:dcmitype":"http://purl.org/dc/dcmitype/","xmlns:xsi":"http://www.w3.org/2001/XMLSchema-instance"},e.exports=c},7431:(e,t,r)=>{const n=r(87242);e.exports=class extends n{render(e,t){e.leafNode("Relationship",t)}parseOpen(e){return"Relationship"===e.name&&(this.model=e.attributes,!0)}parseText(){}parseClose(){return!1}}},61724:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(7431);class o extends i{constructor(){super(),this.map={Relationship:new a}}render(e,t){t=t||this._values,e.openXml(n.StdDocAttributes),e.openNode("Relationships",o.RELATIONSHIPS_ATTRIBUTES),t.forEach((t=>{this.map.Relationship.render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if("Relationships"===e.name)return this.model=[],!0;if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.push(this.parser.model),this.parser=void 0),!0;if("Relationships"===e)return!1;throw new Error(`Unexpected xml node in parseClose: ${e}`)}}o.RELATIONSHIPS_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},e.exports=o},36662:(e,t,r)=>{const n=r(87242);e.exports=class extends n{parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={range:{editAs:e.attributes.editAs||"oneCell"}};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}reconcilePicture(e,t){if(e&&e.rId){const r=t.rels[e.rId].Target.match(/.*\/media\/(.+[.][a-zA-Z]{3,4})/);if(r){const e=r[1],n=t.mediaIndex[e];return t.media[n]}}}}},78631:(e,t,r)=>{const n=r(87242),i=r(92539);e.exports=class extends n{constructor(){super(),this.map={"a:blip":new i}}get tag(){return"xdr:blipFill"}render(e,t){e.openNode(this.tag),this.map["a:blip"].render(e,t),e.openNode("a:stretch"),e.leafNode("a:fillRect"),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model=this.map["a:blip"].model,!1)}}},92539:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"a:blip"}render(e,t){e.leafNode(this.tag,{"xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","r:embed":t.rId,cstate:"print"})}parseOpen(e){return e.name!==this.tag||(this.model={rId:e.attributes["r:embed"]},!0)}parseText(){}parseClose(e){return e!==this.tag}}},250:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"xdr:cNvPicPr"}render(e){e.openNode(this.tag),e.leafNode("a:picLocks",{noChangeAspect:"1"}),e.closeNode()}parseOpen(e){return e.name,this.tag,!0}parseText(){}parseClose(e){return e!==this.tag}}},57289:(e,t,r)=>{const n=r(87242),i=r(68749),a=r(84625);e.exports=class extends n{constructor(){super(),this.map={"a:hlinkClick":new i,"a:extLst":new a}}get tag(){return"xdr:cNvPr"}render(e,t){e.openNode(this.tag,{id:t.index,name:`Picture ${t.index}`}),this.map["a:hlinkClick"].render(e,t),this.map["a:extLst"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model=this.map["a:hlinkClick"].model,!1)}}},76244:(e,t,r)=>{const n=r(87242),i=r(65208);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.map={"xdr:col":new i({tag:"xdr:col",zero:!0}),"xdr:colOff":new i({tag:"xdr:colOff",zero:!0}),"xdr:row":new i({tag:"xdr:row",zero:!0}),"xdr:rowOff":new i({tag:"xdr:rowOff",zero:!0})}}render(e,t){e.openNode(this.tag),this.map["xdr:col"].render(e,t.nativeCol),this.map["xdr:colOff"].render(e,t.nativeColOff),this.map["xdr:row"].render(e,t.nativeRow),this.map["xdr:rowOff"].render(e,t.nativeRowOff),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model={nativeCol:this.map["xdr:col"].model,nativeColOff:this.map["xdr:colOff"].model,nativeRow:this.map["xdr:row"].model,nativeRowOff:this.map["xdr:rowOff"].model},!1)}}},66386:(e,t,r)=>{const n=r(29428),i=r(12141),a=r(87242),o=r(43285),s=r(80715);class c extends a{constructor(){super(),this.map={"xdr:twoCellAnchor":new o,"xdr:oneCellAnchor":new s}}prepare(e){e.anchors.forEach(((e,t)=>{e.anchorType=function(e){return("string"==typeof e.range?n.decode(e.range):e.range).br?"xdr:twoCellAnchor":"xdr:oneCellAnchor"}(e);this.map[e.anchorType].prepare(e,{index:t})}))}get tag(){return"xdr:wsDr"}render(e,t){e.openXml(i.StdDocAttributes),e.openNode(this.tag,c.DRAWING_ATTRIBUTES),t.anchors.forEach((t=>{this.map[t.anchorType].render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={anchors:[]};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.anchors.push(this.parser.model),this.parser=void 0),!0):e!==this.tag}reconcile(e,t){e.anchors.forEach((e=>{e.br?this.map["xdr:twoCellAnchor"].reconcile(e,t):this.map["xdr:oneCellAnchor"].reconcile(e,t)}))}}c.DRAWING_ATTRIBUTES={"xmlns:xdr":"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing","xmlns:a":"http://schemas.openxmlformats.org/drawingml/2006/main"},e.exports=c},84625:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"a:extLst"}render(e){e.openNode(this.tag),e.openNode("a:ext",{uri:"{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}"}),e.leafNode("a16:creationId",{"xmlns:a16":"http://schemas.microsoft.com/office/drawing/2014/main",id:"{00000000-0008-0000-0000-000002000000}"}),e.closeNode(),e.closeNode()}parseOpen(e){return e.name,this.tag,!0}parseText(){}parseClose(e){return e!==this.tag}}},44183:(e,t,r)=>{const n=r(87242),i=9525;e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.map={}}render(e,t){e.openNode(this.tag);const r=Math.floor(t.width*i),n=Math.floor(t.height*i);e.addAttribute("cx",r),e.addAttribute("cy",n),e.closeNode()}parseOpen(e){return e.name===this.tag&&(this.model={width:parseInt(e.attributes.cx||"0",10)/i,height:parseInt(e.attributes.cy||"0",10)/i},!0)}parseText(){}parseClose(){return!1}}},68749:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"a:hlinkClick"}render(e,t){t.hyperlinks&&t.hyperlinks.rId&&e.leafNode(this.tag,{"xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","r:id":t.hyperlinks.rId,tooltip:t.hyperlinks.tooltip})}parseOpen(e){return e.name!==this.tag||(this.model={hyperlinks:{rId:e.attributes["r:id"],tooltip:e.attributes.tooltip}},!0)}parseText(){}parseClose(){return!1}}},30246:(e,t,r)=>{const n=r(87242),i=r(57289),a=r(250);e.exports=class extends n{constructor(){super(),this.map={"xdr:cNvPr":new i,"xdr:cNvPicPr":new a}}get tag(){return"xdr:nvPicPr"}render(e,t){e.openNode(this.tag),this.map["xdr:cNvPr"].render(e,t),this.map["xdr:cNvPicPr"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model=this.map["xdr:cNvPr"].model,!1)}}},80715:(e,t,r)=>{const n=r(36662),i=r(52789),a=r(76244),o=r(44183),s=r(11932);e.exports=class extends n{constructor(){super(),this.map={"xdr:from":new a({tag:"xdr:from"}),"xdr:ext":new o({tag:"xdr:ext"}),"xdr:pic":new s,"xdr:clientData":new i({tag:"xdr:clientData"})}}get tag(){return"xdr:oneCellAnchor"}prepare(e,t){this.map["xdr:pic"].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs||"oneCell"}),this.map["xdr:from"].render(e,t.range.tl),this.map["xdr:ext"].render(e,t.range.ext),this.map["xdr:pic"].render(e,t.picture),this.map["xdr:clientData"].render(e,{}),e.closeNode()}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.range.tl=this.map["xdr:from"].model,this.model.range.ext=this.map["xdr:ext"].model,this.model.picture=this.map["xdr:pic"].model,!1)}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}}},11932:(e,t,r)=>{const n=r(87242),i=r(52789),a=r(78631),o=r(30246),s=r(27299);e.exports=class extends n{constructor(){super(),this.map={"xdr:nvPicPr":new o,"xdr:blipFill":new a,"xdr:spPr":new i(s)}}get tag(){return"xdr:pic"}prepare(e,t){e.index=t.index+1}render(e,t){e.openNode(this.tag),this.map["xdr:nvPicPr"].render(e,t),this.map["xdr:blipFill"].render(e,t),this.map["xdr:spPr"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.mergeModel(this.parser.model),this.parser=void 0),!0):e!==this.tag}}},27299:e=>{e.exports={tag:"xdr:spPr",c:[{tag:"a:xfrm",c:[{tag:"a:off",$:{x:"0",y:"0"}},{tag:"a:ext",$:{cx:"0",cy:"0"}}]},{tag:"a:prstGeom",$:{prst:"rect"},c:[{tag:"a:avLst"}]}]}},43285:(e,t,r)=>{const n=r(36662),i=r(52789),a=r(76244),o=r(11932);e.exports=class extends n{constructor(){super(),this.map={"xdr:from":new a({tag:"xdr:from"}),"xdr:to":new a({tag:"xdr:to"}),"xdr:pic":new o,"xdr:clientData":new i({tag:"xdr:clientData"})}}get tag(){return"xdr:twoCellAnchor"}prepare(e,t){this.map["xdr:pic"].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs||"oneCell"}),this.map["xdr:from"].render(e,t.range.tl),this.map["xdr:to"].render(e,t.range.br),this.map["xdr:pic"].render(e,t.picture),this.map["xdr:clientData"].render(e,{}),e.closeNode()}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.range.tl=this.map["xdr:from"].model,this.model.range.br=this.map["xdr:to"].model,this.model.picture=this.map["xdr:pic"].model,!1)}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}}},62447:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.always=!!e.always,this.count=e.count,this.empty=e.empty,this.$count=e.$count||"count",this.$=e.$,this.childXform=e.childXform,this.maxItems=e.maxItems}prepare(e,t){const{childXform:r}=this;e&&e.forEach(((e,n)=>{t.index=n,r.prepare(e,t)}))}render(e,t){if(this.always||t&&t.length){e.openNode(this.tag,this.$),this.count&&e.addAttribute(this.$count,t&&t.length||0);const{childXform:r}=this;(t||[]).forEach(((t,n)=>{r.render(e,t,n)})),e.closeNode()}else this.empty&&e.leafNode(this.tag)}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model=[],!0):!!this.childXform.parseOpen(e)&&(this.parser=this.childXform,!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)&&(this.model.push(this.parser.model),this.parser=void 0,this.maxItems&&this.model.length>this.maxItems))throw new Error(`Max ${this.childXform.tag} count (${this.maxItems}) exceeded`);return!0}return!1}reconcile(e,t){if(e){const{childXform:r}=this;e.forEach((e=>{r.reconcile(e,t)}))}}}},47749:(e,t,r)=>{const n=r(29428),i=r(87242);e.exports=class extends i{get tag(){return"autoFilter"}render(e,t){if(t)if("string"==typeof t)e.leafNode("autoFilter",{ref:t});else{const r=function(e){return"string"==typeof e?e:n.getAddress(e.row,e.column).address},i=r(t.from),a=r(t.to);i&&a&&e.leafNode("autoFilter",{ref:`${i}:${a}`})}}parseOpen(e){"autoFilter"===e.name&&(this.model=e.attributes.ref)}}},57963:(e,t,r)=>{const n=r(67032),i=r(87242),a=r(69311),o=r(70880),s=r(95814);function c(e){if(null==e)return o.ValueType.Null;if(e instanceof String||"string"==typeof e)return o.ValueType.String;if("number"==typeof e)return o.ValueType.Number;if("boolean"==typeof e)return o.ValueType.Boolean;if(e instanceof Date)return o.ValueType.Date;if(e.text&&e.hyperlink)return o.ValueType.Hyperlink;if(e.formula)return o.ValueType.Formula;if(e.error)return o.ValueType.Error;throw new Error("I could not understand type of value")}e.exports=class extends i{constructor(){super(),this.richTextXForm=new s}get tag(){return"c"}prepare(e,t){const r=t.styles.addStyleModel(e.style||{},(n=e).type===o.ValueType.Formula?c(n.result):n.type);var n;switch(r&&(e.styleId=r),e.comment&&t.comments.push({...e.comment,ref:e.address}),e.type){case o.ValueType.String:case o.ValueType.RichText:t.sharedStrings&&(e.ssId=t.sharedStrings.add(e.value));break;case o.ValueType.Date:t.date1904&&(e.date1904=!0);break;case o.ValueType.Hyperlink:t.sharedStrings&&void 0!==e.text&&null!==e.text&&(e.ssId=t.sharedStrings.add(e.text)),t.hyperlinks.push({address:e.address,target:e.hyperlink,tooltip:e.tooltip});break;case o.ValueType.Merge:t.merges.add(e);break;case o.ValueType.Formula:if(t.date1904&&(e.date1904=!0),"shared"===e.shareType&&(e.si=t.siFormulae++),e.formula)t.formulae[e.address]=e;else if(e.sharedFormula){const r=t.formulae[e.sharedFormula];if(!r)throw new Error(`Shared Formula master must exist above and or left of clone for cell ${e.address}`);void 0===r.si?(r.shareType="shared",r.si=t.siFormulae++,r.range=new a(r.address,e.address)):r.range&&r.range.expandToAddress(e.address),e.si=r.si}}}renderFormula(e,t){let r=null;switch(t.shareType){case"shared":r={t:"shared",ref:t.ref||t.range.range,si:t.si};break;case"array":r={t:"array",ref:t.ref};break;default:void 0!==t.si&&(r={t:"shared",si:t.si})}switch(c(t.result)){case o.ValueType.Null:e.leafNode("f",r,t.formula);break;case o.ValueType.String:e.addAttribute("t","str"),e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result);break;case o.ValueType.Number:e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result);break;case o.ValueType.Boolean:e.addAttribute("t","b"),e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result?1:0);break;case o.ValueType.Error:e.addAttribute("t","e"),e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result.error);break;case o.ValueType.Date:e.leafNode("f",r,t.formula),e.leafNode("v",null,n.dateToExcel(t.result,t.date1904));break;default:throw new Error("I could not understand type of value")}}render(e,t){if(t.type!==o.ValueType.Null||t.styleId){switch(e.openNode("c"),e.addAttribute("r",t.address),t.styleId&&e.addAttribute("s",t.styleId),t.type){case o.ValueType.Null:break;case o.ValueType.Number:e.leafNode("v",null,t.value);break;case o.ValueType.Boolean:e.addAttribute("t","b"),e.leafNode("v",null,t.value?"1":"0");break;case o.ValueType.Error:e.addAttribute("t","e"),e.leafNode("v",null,t.value.error);break;case o.ValueType.String:case o.ValueType.RichText:void 0!==t.ssId?(e.addAttribute("t","s"),e.leafNode("v",null,t.ssId)):t.value&&t.value.richText?(e.addAttribute("t","inlineStr"),e.openNode("is"),t.value.richText.forEach((t=>{this.richTextXForm.render(e,t)})),e.closeNode("is")):(e.addAttribute("t","str"),e.leafNode("v",null,t.value));break;case o.ValueType.Date:e.leafNode("v",null,n.dateToExcel(t.value,t.date1904));break;case o.ValueType.Hyperlink:void 0!==t.ssId?(e.addAttribute("t","s"),e.leafNode("v",null,t.ssId)):(e.addAttribute("t","str"),e.leafNode("v",null,t.text));break;case o.ValueType.Formula:this.renderFormula(e,t);case o.ValueType.Merge:}e.closeNode()}}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"c":return this.model={address:e.attributes.r},this.t=e.attributes.t,e.attributes.s&&(this.model.styleId=parseInt(e.attributes.s,10)),!0;case"f":return this.currentNode="f",this.model.si=e.attributes.si,this.model.shareType=e.attributes.t,this.model.ref=e.attributes.ref,!0;case"v":return this.currentNode="v",!0;case"t":return this.currentNode="t",!0;case"r":return this.parser=this.richTextXForm,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){if(this.parser)this.parser.parseText(e);else switch(this.currentNode){case"f":this.model.formula=this.model.formula?this.model.formula+e:e;break;case"v":case"t":this.model.value&&this.model.value.richText?this.model.value.richText.text=this.model.value.richText.text?this.model.value.richText.text+e:e:this.model.value=this.model.value?this.model.value+e:e}}parseClose(e){switch(e){case"c":{const{model:e}=this;if(e.formula||e.shareType)e.type=o.ValueType.Formula,e.value&&("str"===this.t?e.result=n.xmlDecode(e.value):"b"===this.t?e.result=0!==parseInt(e.value,10):"e"===this.t?e.result={error:e.value}:e.result=parseFloat(e.value),e.value=void 0);else if(void 0!==e.value)switch(this.t){case"s":e.type=o.ValueType.String,e.value=parseInt(e.value,10);break;case"str":e.type=o.ValueType.String,e.value=n.xmlDecode(e.value);break;case"inlineStr":e.type=o.ValueType.String;break;case"b":e.type=o.ValueType.Boolean,e.value=0!==parseInt(e.value,10);break;case"e":e.type=o.ValueType.Error,e.value={error:e.value};break;default:e.type=o.ValueType.Number,e.value=parseFloat(e.value)}else e.styleId?e.type=o.ValueType.Null:e.type=o.ValueType.Merge;return!1}case"f":case"v":case"is":return this.currentNode=void 0,!0;case"t":return this.parser?(this.parser.parseClose(e),!0):(this.currentNode=void 0,!0);case"r":return this.model.value=this.model.value||{},this.model.value.richText=this.model.value.richText||[],this.model.value.richText.push(this.parser.model),this.parser=void 0,this.currentNode=void 0,!0;default:return!!this.parser&&(this.parser.parseClose(e),!0)}}reconcile(e,t){const r=e.styleId&&t.styles&&t.styles.getStyleModel(e.styleId);switch(r&&(e.style=r),void 0!==e.styleId&&(e.styleId=void 0),e.type){case o.ValueType.String:"number"==typeof e.value&&t.sharedStrings&&(e.value=t.sharedStrings.getString(e.value)),e.value.richText&&(e.type=o.ValueType.RichText);break;case o.ValueType.Number:r&&n.isDateFmt(r.numFmt)&&(e.type=o.ValueType.Date,e.value=n.excelToDate(e.value,t.date1904));break;case o.ValueType.Formula:void 0!==e.result&&r&&n.isDateFmt(r.numFmt)&&(e.result=n.excelToDate(e.result,t.date1904)),"shared"===e.shareType&&(e.ref?t.formulae[e.si]=e.address:(e.sharedFormula=t.formulae[e.si],delete e.shareType),delete e.si)}const i=t.hyperlinkMap[e.address];i&&(e.type===o.ValueType.Formula?(e.text=e.result,e.result=void 0):(e.text=e.value,e.value=void 0),e.type=o.ValueType.Hyperlink,e.hyperlink=i);const a=t.commentsMap&&t.commentsMap[e.address];a&&(e.comment=a)}}},95996:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"x14:cfIcon"}render(e,t){e.leafNode(this.tag,{iconSet:t.iconSet,iconId:t.iconId})}parseOpen({attributes:e}){this.model={iconSet:e.iconSet,iconId:n.toIntValue(e.iconId)}}parseClose(e){return e!==this.tag}}},86827:(e,t,r)=>{const{v4:n}=r(22587),i=r(87242),a=r(60554),o=r(55092),s=r(82507),c={"3Triangles":!0,"3Stars":!0,"5Boxes":!0};class l extends a{constructor(){super(),this.map={"x14:dataBar":this.databarXform=new o,"x14:iconSet":this.iconSetXform=new s}}get tag(){return"x14:cfRule"}static isExt(e){return"dataBar"===e.type?o.isExt(e):!("iconSet"!==e.type||!e.custom&&!c[e.iconSet])}prepare(e){l.isExt(e)&&(e.x14Id=`{${n()}}`.toUpperCase())}render(e,t){if(l.isExt(t))switch(t.type){case"dataBar":this.renderDataBar(e,t);break;case"iconSet":this.renderIconSet(e,t)}}renderDataBar(e,t){e.openNode(this.tag,{type:"dataBar",id:t.x14Id}),this.databarXform.render(e,t),e.closeNode()}renderIconSet(e,t){e.openNode(this.tag,{type:"iconSet",priority:t.priority,id:t.x14Id||`{${n()}}`}),this.iconSetXform.render(e,t),e.closeNode()}createNewModel({attributes:e}){return{type:e.type,x14Id:e.id,priority:i.toIntValue(e.priority)}}onParserClose(e,t){Object.assign(this.model,t.model)}}e.exports=l},76721:(e,t,r)=>{const n=r(60554),i=r(60999);e.exports=class extends n{constructor(){super(),this.map={"xm:f":this.fExtXform=new i}}get tag(){return"x14:cfvo"}render(e,t){e.openNode(this.tag,{type:t.type}),void 0!==t.value&&this.fExtXform.render(e,t.value),e.closeNode()}createNewModel(e){return{type:e.attributes.type}}onParserClose(e,t){if("xm:f"===e)this.model.value=t.model?parseFloat(t.model):0}}},99215:(e,t,r)=>{const n=r(60554),i=r(91848),a=r(86827);e.exports=class extends n{constructor(){super(),this.map={"xm:sqref":this.sqRef=new i,"x14:cfRule":this.cfRule=new a}}get tag(){return"x14:conditionalFormatting"}prepare(e,t){e.rules.forEach((e=>{this.cfRule.prepare(e,t)}))}render(e,t){t.rules.some(a.isExt)&&(e.openNode(this.tag,{"xmlns:xm":"http://schemas.microsoft.com/office/excel/2006/main"}),t.rules.filter(a.isExt).forEach((t=>this.cfRule.render(e,t))),this.sqRef.render(e,t.ref),e.closeNode())}createNewModel(){return{rules:[]}}onParserClose(e,t){switch(e){case"xm:sqref":this.model.ref=t.model;break;case"x14:cfRule":this.model.rules.push(t.model)}}}},76672:(e,t,r)=>{const n=r(60554),i=r(86827),a=r(99215);e.exports=class extends n{constructor(){super(),this.map={"x14:conditionalFormatting":this.cfXform=new a}}get tag(){return"x14:conditionalFormattings"}hasContent(e){return void 0===e.hasExtContent&&(e.hasExtContent=e.some((e=>e.rules.some(i.isExt)))),e.hasExtContent}prepare(e,t){e.forEach((e=>{this.cfXform.prepare(e,t)}))}render(e,t){this.hasContent(t)&&(e.openNode(this.tag),t.forEach((t=>this.cfXform.render(e,t))),e.closeNode())}createNewModel(){return[]}onParserClose(e,t){this.model.push(t.model)}}},55092:(e,t,r)=>{const n=r(87242),i=r(60554),a=r(42720),o=r(76721);e.exports=class extends i{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new o,"x14:borderColor":this.borderColorXform=new a("x14:borderColor"),"x14:negativeBorderColor":this.negativeBorderColorXform=new a("x14:negativeBorderColor"),"x14:negativeFillColor":this.negativeFillColorXform=new a("x14:negativeFillColor"),"x14:axisColor":this.axisColorXform=new a("x14:axisColor")}}static isExt(e){return!e.gradient}get tag(){return"x14:dataBar"}render(e,t){e.openNode(this.tag,{minLength:n.toIntAttribute(t.minLength,0,!0),maxLength:n.toIntAttribute(t.maxLength,100,!0),border:n.toBoolAttribute(t.border,!1),gradient:n.toBoolAttribute(t.gradient,!0),negativeBarColorSameAsPositive:n.toBoolAttribute(t.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:n.toBoolAttribute(t.negativeBarBorderColorSameAsPositive,!0),axisPosition:n.toAttribute(t.axisPosition,"auto"),direction:n.toAttribute(t.direction,"leftToRight")}),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),this.borderColorXform.render(e,t.borderColor),this.negativeBorderColorXform.render(e,t.negativeBorderColor),this.negativeFillColorXform.render(e,t.negativeFillColor),this.axisColorXform.render(e,t.axisColor),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],minLength:n.toIntValue(e.minLength,0),maxLength:n.toIntValue(e.maxLength,100),border:n.toBoolValue(e.border,!1),gradient:n.toBoolValue(e.gradient,!0),negativeBarColorSameAsPositive:n.toBoolValue(e.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:n.toBoolValue(e.negativeBarBorderColorSameAsPositive,!0),axisPosition:n.toStringValue(e.axisPosition,"auto"),direction:n.toStringValue(e.direction,"leftToRight")}}onParserClose(e,t){const[,r]=e.split(":");if("cfvo"===r)this.model.cfvo.push(t.model);else this.model[r]=t.model}}},60999:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"xm:f"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}},82507:(e,t,r)=>{const n=r(87242),i=r(60554),a=r(76721),o=r(95996);e.exports=class extends i{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new a,"x14:cfIcon":this.cfIconXform=new o}}get tag(){return"x14:iconSet"}render(e,t){e.openNode(this.tag,{iconSet:n.toStringAttribute(t.iconSet),reverse:n.toBoolAttribute(t.reverse,!1),showValue:n.toBoolAttribute(t.showValue,!0),custom:n.toBoolAttribute(t.icons,!1)}),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),t.icons&&t.icons.forEach(((t,r)=>{t.iconId=r,this.cfIconXform.render(e,t)})),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],iconSet:n.toStringValue(e.iconSet,"3TrafficLights"),reverse:n.toBoolValue(e.reverse,!1),showValue:n.toBoolValue(e.showValue,!0)}}onParserClose(e,t){const[,r]=e.split(":");switch(r){case"cfvo":this.model.cfvo.push(t.model);break;case"cfIcon":this.model.icons||(this.model.icons=[]),this.model.icons.push(t.model);break;default:this.model[r]=t.model}}}},91848:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"xm:sqref"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}},49115:(e,t,r)=>{const n=r(87242),i=r(60554),a=r(69311),o=r(89676),s=r(44200),c=r(93459),l=r(93937),u=r(65515),d={"3Triangles":!0,"3Stars":!0,"5Boxes":!0},p=e=>{const{type:t,operator:r}=e;switch(t){case"containsText":case"containsBlanks":case"notContainsBlanks":case"containsErrors":case"notContainsErrors":return{type:"containsText",operator:t};default:return{type:t,operator:r}}};class f extends i{constructor(){super(),this.map={dataBar:this.databarXform=new o,extLst:this.extLstRefXform=new s,formula:this.formulaXform=new c,colorScale:this.colorScaleXform=new l,iconSet:this.iconSetXform=new u}}get tag(){return"cfRule"}static isPrimitive(e){return"iconSet"!==e.type||!e.custom&&!d[e.iconSet]}render(e,t){switch(t.type){case"expression":this.renderExpression(e,t);break;case"cellIs":this.renderCellIs(e,t);break;case"top10":this.renderTop10(e,t);break;case"aboveAverage":this.renderAboveAverage(e,t);break;case"dataBar":this.renderDataBar(e,t);break;case"colorScale":this.renderColorScale(e,t);break;case"iconSet":this.renderIconSet(e,t);break;case"containsText":this.renderText(e,t);break;case"timePeriod":this.renderTimePeriod(e,t)}}renderExpression(e,t){e.openNode(this.tag,{type:"expression",dxfId:t.dxfId,priority:t.priority}),this.formulaXform.render(e,t.formulae[0]),e.closeNode()}renderCellIs(e,t){e.openNode(this.tag,{type:"cellIs",dxfId:t.dxfId,priority:t.priority,operator:t.operator}),t.formulae.forEach((t=>{this.formulaXform.render(e,t)})),e.closeNode()}renderTop10(e,t){e.leafNode(this.tag,{type:"top10",dxfId:t.dxfId,priority:t.priority,percent:n.toBoolAttribute(t.percent,!1),bottom:n.toBoolAttribute(t.bottom,!1),rank:n.toIntValue(t.rank,10,!0)})}renderAboveAverage(e,t){e.leafNode(this.tag,{type:"aboveAverage",dxfId:t.dxfId,priority:t.priority,aboveAverage:n.toBoolAttribute(t.aboveAverage,!0)})}renderDataBar(e,t){e.openNode(this.tag,{type:"dataBar",priority:t.priority}),this.databarXform.render(e,t),this.extLstRefXform.render(e,t),e.closeNode()}renderColorScale(e,t){e.openNode(this.tag,{type:"colorScale",priority:t.priority}),this.colorScaleXform.render(e,t),e.closeNode()}renderIconSet(e,t){f.isPrimitive(t)&&(e.openNode(this.tag,{type:"iconSet",priority:t.priority}),this.iconSetXform.render(e,t),e.closeNode())}renderText(e,t){e.openNode(this.tag,{type:t.operator,dxfId:t.dxfId,priority:t.priority,operator:n.toStringAttribute(t.operator,"containsText")});const r=(e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];const t=new a(e.ref),{tl:r}=t;switch(e.operator){case"containsText":return`NOT(ISERROR(SEARCH("${e.text}",${r})))`;case"containsBlanks":return`LEN(TRIM(${r}))=0`;case"notContainsBlanks":return`LEN(TRIM(${r}))>0`;case"containsErrors":return`ISERROR(${r})`;case"notContainsErrors":return`NOT(ISERROR(${r}))`;default:return}})(t);r&&this.formulaXform.render(e,r),e.closeNode()}renderTimePeriod(e,t){e.openNode(this.tag,{type:"timePeriod",dxfId:t.dxfId,priority:t.priority,timePeriod:t.timePeriod});const r=(e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];const t=new a(e.ref),{tl:r}=t;switch(e.timePeriod){case"thisWeek":return`AND(TODAY()-ROUNDDOWN(${r},0)<=WEEKDAY(TODAY())-1,ROUNDDOWN(${r},0)-TODAY()<=7-WEEKDAY(TODAY()))`;case"lastWeek":return`AND(TODAY()-ROUNDDOWN(${r},0)>=(WEEKDAY(TODAY())),TODAY()-ROUNDDOWN(${r},0)<(WEEKDAY(TODAY())+7))`;case"nextWeek":return`AND(ROUNDDOWN(${r},0)-TODAY()>(7-WEEKDAY(TODAY())),ROUNDDOWN(${r},0)-TODAY()<(15-WEEKDAY(TODAY())))`;case"yesterday":return`FLOOR(${r},1)=TODAY()-1`;case"today":return`FLOOR(${r},1)=TODAY()`;case"tomorrow":return`FLOOR(${r},1)=TODAY()+1`;case"last7Days":return`AND(TODAY()-FLOOR(${r},1)<=6,FLOOR(${r},1)<=TODAY())`;case"lastMonth":return`AND(MONTH(${r})=MONTH(EDATE(TODAY(),0-1)),YEAR(${r})=YEAR(EDATE(TODAY(),0-1)))`;case"thisMonth":return`AND(MONTH(${r})=MONTH(TODAY()),YEAR(${r})=YEAR(TODAY()))`;case"nextMonth":return`AND(MONTH(${r})=MONTH(EDATE(TODAY(),0+1)),YEAR(${r})=YEAR(EDATE(TODAY(),0+1)))`;default:return}})(t);r&&this.formulaXform.render(e,r),e.closeNode()}createNewModel({attributes:e}){return{...p(e),dxfId:n.toIntValue(e.dxfId),priority:n.toIntValue(e.priority),timePeriod:e.timePeriod,percent:n.toBoolValue(e.percent),bottom:n.toBoolValue(e.bottom),rank:n.toIntValue(e.rank),aboveAverage:n.toBoolValue(e.aboveAverage)}}onParserClose(e,t){switch(e){case"dataBar":case"extLst":case"colorScale":case"iconSet":Object.assign(this.model,t.model);break;case"formula":this.model.formulae=this.model.formulae||[],this.model.formulae.push(t.model)}}}e.exports=f},78929:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"cfvo"}render(e,t){e.leafNode(this.tag,{type:t.type,val:t.value})}parseOpen(e){this.model={type:e.attributes.type,value:n.toFloatValue(e.attributes.val)}}parseClose(e){return e!==this.tag}}},93937:(e,t,r)=>{const n=r(60554),i=r(42720),a=r(78929);e.exports=class extends n{constructor(){super(),this.map={cfvo:this.cfvoXform=new a,color:this.colorXform=new i}}get tag(){return"colorScale"}render(e,t){e.openNode(this.tag),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),t.color.forEach((t=>{this.colorXform.render(e,t)})),e.closeNode()}createNewModel(e){return{cfvo:[],color:[]}}onParserClose(e,t){this.model[e].push(t.model)}}},59975:(e,t,r)=>{const n=r(60554),i=r(49115);e.exports=class extends n{constructor(){super(),this.map={cfRule:new i}}get tag(){return"conditionalFormatting"}render(e,t){t.rules.some(i.isPrimitive)&&(e.openNode(this.tag,{sqref:t.ref}),t.rules.forEach((r=>{i.isPrimitive(r)&&(r.ref=t.ref,this.map.cfRule.render(e,r))})),e.closeNode())}createNewModel({attributes:e}){return{ref:e.sqref,rules:[]}}onParserClose(e,t){this.model.rules.push(t.model)}}},12700:(e,t,r)=>{const n=r(87242),i=r(59975);e.exports=class extends n{constructor(){super(),this.cfXform=new i}get tag(){return"conditionalFormatting"}reset(){this.model=[]}prepare(e,t){let r=e.reduce(((e,t)=>Math.max(e,...t.rules.map((e=>e.priority||0)))),1);e.forEach((e=>{e.rules.forEach((e=>{e.priority||(e.priority=r++),e.style&&(e.dxfId=t.styles.addDxfStyle(e.style))}))}))}render(e,t){t.forEach((t=>{this.cfXform.render(e,t)}))}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"conditionalFormatting"===e.name&&(this.parser=this.cfXform,this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(!!this.parser.parseClose(e)||(this.model.push(this.parser.model),this.parser=void 0,!1))}reconcile(e,t){e.forEach((e=>{e.rules.forEach((e=>{void 0!==e.dxfId&&(e.style=t.styles.getDxfStyle(e.dxfId),delete e.dxfId)}))}))}}},89676:(e,t,r)=>{const n=r(60554),i=r(42720),a=r(78929);e.exports=class extends n{constructor(){super(),this.map={cfvo:this.cfvoXform=new a,color:this.colorXform=new i}}get tag(){return"dataBar"}render(e,t){e.openNode(this.tag),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),this.colorXform.render(e,t.color),e.closeNode()}createNewModel(){return{cfvo:[]}}onParserClose(e,t){switch(e){case"cfvo":this.model.cfvo.push(t.model);break;case"color":this.model.color=t.model}}}},44200:(e,t,r)=>{const n=r(87242),i=r(60554);class a extends n{get tag(){return"x14:id"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}class o extends i{constructor(){super(),this.map={"x14:id":this.idXform=new a}}get tag(){return"ext"}render(e,t){e.openNode(this.tag,{uri:"{B025F937-C7B1-47D3-B67F-A62EFF666E3E}","xmlns:x14":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"}),this.idXform.render(e,t.x14Id),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model.x14Id=t.model}}e.exports=class extends i{constructor(){super(),this.map={ext:new o}}get tag(){return"extLst"}render(e,t){e.openNode(this.tag),this.map.ext.render(e,t),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){Object.assign(this.model,t.model)}}},93459:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"formula"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}},65515:(e,t,r)=>{const n=r(87242),i=r(60554),a=r(78929);e.exports=class extends i{constructor(){super(),this.map={cfvo:this.cfvoXform=new a}}get tag(){return"iconSet"}render(e,t){e.openNode(this.tag,{iconSet:n.toStringAttribute(t.iconSet,"3TrafficLights"),reverse:n.toBoolAttribute(t.reverse,!1),showValue:n.toBoolAttribute(t.showValue,!0)}),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),e.closeNode()}createNewModel({attributes:e}){return{iconSet:n.toStringValue(e.iconSet,"3TrafficLights"),reverse:n.toBoolValue(e.reverse),showValue:n.toBoolValue(e.showValue),cfvo:[]}}onParserClose(e,t){this.model[e].push(t.model)}}},8599:(e,t,r)=>{const n=r(67032),i=r(87242);e.exports=class extends i{get tag(){return"col"}prepare(e,t){const r=t.styles.addStyleModel(e.style||{});r&&(e.styleId=r)}render(e,t){e.openNode("col"),e.addAttribute("min",t.min),e.addAttribute("max",t.max),t.width&&e.addAttribute("width",t.width),t.styleId&&e.addAttribute("style",t.styleId),t.hidden&&e.addAttribute("hidden","1"),t.bestFit&&e.addAttribute("bestFit","1"),t.outlineLevel&&e.addAttribute("outlineLevel",t.outlineLevel),t.collapsed&&e.addAttribute("collapsed","1"),e.addAttribute("customWidth","1"),e.closeNode()}parseOpen(e){if("col"===e.name){const t=this.model={min:parseInt(e.attributes.min||"0",10),max:parseInt(e.attributes.max||"0",10),width:void 0===e.attributes.width?void 0:parseFloat(e.attributes.width||"0")};return e.attributes.style&&(t.styleId=parseInt(e.attributes.style,10)),n.parseBoolean(e.attributes.hidden)&&(t.hidden=!0),n.parseBoolean(e.attributes.bestFit)&&(t.bestFit=!0),e.attributes.outlineLevel&&(t.outlineLevel=parseInt(e.attributes.outlineLevel,10)),n.parseBoolean(e.attributes.collapsed)&&(t.collapsed=!0),!0}return!1}parseText(){}parseClose(){return!1}reconcile(e,t){e.styleId&&(e.style=t.styles.getStyleModel(e.styleId))}}},27210:(e,t,r)=>{const n=r(67984),i=r(67032),a=r(29428),o=r(87242),s=r(69311);function c(e,t,r,n){const i=t[r];void 0!==i?e[r]=i:void 0!==n&&(e[r]=n)}function l(e,t,r,n){const a=t[r];void 0!==a?e[r]=i.parseBoolean(a):void 0!==n&&(e[r]=n)}e.exports=class extends o{get tag(){return"dataValidations"}render(e,t){const r=function(e){const t=n.map(e,((e,t)=>({address:t,dataValidation:e,marked:!1}))).sort(((e,t)=>n.strcmp(e.address,t.address))),r=n.keyBy(t,"address"),i=(t,r,i)=>{for(let o=0;o<r;o++){const r=a.encodeAddress(t.row+o,i);if(!e[r]||!n.isEqual(e[t.address],e[r]))return!1}return!0};return t.map((t=>{if(!t.marked){const o=a.decodeEx(t.address);if(o.dimensions)return r[o.dimensions].marked=!0,{...t.dataValidation,sqref:t.address};let s=1,c=a.encodeAddress(o.row+s,o.col);for(;e[c]&&n.isEqual(t.dataValidation,e[c]);)s++,c=a.encodeAddress(o.row+s,o.col);let l=1;for(;i(o,s,o.col+l);)l++;for(let e=0;e<s;e++)for(let t=0;t<l;t++)c=a.encodeAddress(o.row+e,o.col+t),r[c].marked=!0;if(s>1||l>1){const e=o.row+(s-1),r=o.col+(l-1);return{...t.dataValidation,sqref:`${t.address}:${a.encodeAddress(e,r)}`}}return{...t.dataValidation,sqref:t.address}}return null})).filter(Boolean)}(t);r.length&&(e.openNode("dataValidations",{count:r.length}),r.forEach((t=>{e.openNode("dataValidation"),"any"!==t.type&&(e.addAttribute("type",t.type),t.operator&&"list"!==t.type&&"between"!==t.operator&&e.addAttribute("operator",t.operator),t.allowBlank&&e.addAttribute("allowBlank","1")),t.showInputMessage&&e.addAttribute("showInputMessage","1"),t.promptTitle&&e.addAttribute("promptTitle",t.promptTitle),t.prompt&&e.addAttribute("prompt",t.prompt),t.showErrorMessage&&e.addAttribute("showErrorMessage","1"),t.errorStyle&&e.addAttribute("errorStyle",t.errorStyle),t.errorTitle&&e.addAttribute("errorTitle",t.errorTitle),t.error&&e.addAttribute("error",t.error),e.addAttribute("sqref",t.sqref),(t.formulae||[]).forEach(((r,n)=>{e.openNode(`formula${n+1}`),"date"===t.type?e.writeText(i.dateToExcel(new Date(r))):e.writeText(r),e.closeNode()})),e.closeNode()})),e.closeNode())}parseOpen(e){switch(e.name){case"dataValidations":return this.model={},!0;case"dataValidation":{this._address=e.attributes.sqref;const t={type:e.attributes.type||"any",formulae:[]};switch(e.attributes.type&&l(t,e.attributes,"allowBlank"),l(t,e.attributes,"showInputMessage"),l(t,e.attributes,"showErrorMessage"),t.type){case"any":case"list":case"custom":break;default:c(t,e.attributes,"operator","between")}return c(t,e.attributes,"promptTitle"),c(t,e.attributes,"prompt"),c(t,e.attributes,"errorStyle"),c(t,e.attributes,"errorTitle"),c(t,e.attributes,"error"),this._dataValidation=t,!0}case"formula1":case"formula2":return this._formula=[],!0;default:return!1}}parseText(e){this._formula&&this._formula.push(e)}parseClose(e){switch(e){case"dataValidations":return!1;case"dataValidation":this._dataValidation.formulae&&this._dataValidation.formulae.length||(delete this._dataValidation.formulae,delete this._dataValidation.operator);return(this._address.split(/\s+/g)||[]).forEach((e=>{if(e.includes(":")){new s(e).forEachAddress((e=>{this.model[e]=this._dataValidation}))}else this.model[e]=this._dataValidation})),!0;case"formula1":case"formula2":{let e=this._formula.join("");switch(this._dataValidation.type){case"whole":case"textLength":e=parseInt(e,10);break;case"decimal":e=parseFloat(e);break;case"date":e=i.excelToDate(parseFloat(e))}return this._dataValidation.formulae.push(e),this._formula=void 0,!0}default:return!0}}}},2601:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"dimension"}render(e,t){t&&e.leafNode("dimension",{ref:t})}parseOpen(e){return"dimension"===e.name&&(this.model=e.attributes.ref,!0)}parseText(){}parseClose(){return!1}}},81099:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"drawing"}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){return e.name===this.tag&&(this.model={rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},17100:(e,t,r)=>{const n=r(60554),i=r(76672);class a extends n{constructor(){super(),this.map={"x14:conditionalFormattings":this.conditionalFormattings=new i}}get tag(){return"ext"}hasContent(e){return this.conditionalFormattings.hasContent(e.conditionalFormattings)}prepare(e,t){this.conditionalFormattings.prepare(e.conditionalFormattings,t)}render(e,t){e.openNode("ext",{uri:"{78C0D931-6437-407d-A8EE-F0AAD7539E65}","xmlns:x14":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"}),this.conditionalFormattings.render(e,t.conditionalFormattings),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}}e.exports=class extends n{constructor(){super(),this.map={ext:this.ext=new a}}get tag(){return"extLst"}prepare(e,t){this.ext.prepare(e,t)}hasContent(e){return this.ext.hasContent(e)}render(e,t){this.hasContent(t)&&(e.openNode("extLst"),this.ext.render(e,t),e.closeNode())}createNewModel(){return{}}onParserClose(e,t){Object.assign(this.model,t.model)}}},87182:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"headerFooter"}render(e,t){if(t){e.addRollback();let r=!1;e.openNode("headerFooter"),t.differentFirst&&(e.addAttribute("differentFirst","1"),r=!0),t.differentOddEven&&(e.addAttribute("differentOddEven","1"),r=!0),t.oddHeader&&"string"==typeof t.oddHeader&&(e.leafNode("oddHeader",null,t.oddHeader),r=!0),t.oddFooter&&"string"==typeof t.oddFooter&&(e.leafNode("oddFooter",null,t.oddFooter),r=!0),t.evenHeader&&"string"==typeof t.evenHeader&&(e.leafNode("evenHeader",null,t.evenHeader),r=!0),t.evenFooter&&"string"==typeof t.evenFooter&&(e.leafNode("evenFooter",null,t.evenFooter),r=!0),t.firstHeader&&"string"==typeof t.firstHeader&&(e.leafNode("firstHeader",null,t.firstHeader),r=!0),t.firstFooter&&"string"==typeof t.firstFooter&&(e.leafNode("firstFooter",null,t.firstFooter),r=!0),r?(e.closeNode(),e.commit()):e.rollback()}}parseOpen(e){switch(e.name){case"headerFooter":return this.model={},e.attributes.differentFirst&&(this.model.differentFirst=1===parseInt(e.attributes.differentFirst,0)),e.attributes.differentOddEven&&(this.model.differentOddEven=1===parseInt(e.attributes.differentOddEven,0)),!0;case"oddHeader":return this.currentNode="oddHeader",!0;case"oddFooter":return this.currentNode="oddFooter",!0;case"evenHeader":return this.currentNode="evenHeader",!0;case"evenFooter":return this.currentNode="evenFooter",!0;case"firstHeader":return this.currentNode="firstHeader",!0;case"firstFooter":return this.currentNode="firstFooter",!0;default:return!1}}parseText(e){switch(this.currentNode){case"oddHeader":this.model.oddHeader=e;break;case"oddFooter":this.model.oddFooter=e;break;case"evenHeader":this.model.evenHeader=e;break;case"evenFooter":this.model.evenFooter=e;break;case"firstHeader":this.model.firstHeader=e;break;case"firstFooter":this.model.firstFooter=e}}parseClose(){switch(this.currentNode){case"oddHeader":case"oddFooter":case"evenHeader":case"evenFooter":case"firstHeader":case"firstFooter":return this.currentNode=void 0,!0;default:return!1}}}},76591:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"hyperlink"}render(e,t){this.isInternalLink(t)?e.leafNode("hyperlink",{ref:t.address,"r:id":t.rId,tooltip:t.tooltip,location:t.target}):e.leafNode("hyperlink",{ref:t.address,"r:id":t.rId,tooltip:t.tooltip})}parseOpen(e){return"hyperlink"===e.name&&(this.model={address:e.attributes.ref,rId:e.attributes["r:id"],tooltip:e.attributes.tooltip},e.attributes.location&&(this.model.target=e.attributes.location),!0)}parseText(){}parseClose(){return!1}isInternalLink(e){return e.target&&/^[^!]+![a-zA-Z]+[\d]+$/.test(e.target)}}},49012:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"mergeCell"}render(e,t){e.leafNode("mergeCell",{ref:t})}parseOpen(e){return"mergeCell"===e.name&&(this.model=e.attributes.ref,!0)}parseText(){}parseClose(){return!1}}},96209:(e,t,r)=>{const n=r(67984),i=r(69311),a=r(29428),o=r(70880);e.exports=class{constructor(){this.merges={}}add(e){if(this.merges[e.master])this.merges[e.master].expandToAddress(e.address);else{const t=`${e.master}:${e.address}`;this.merges[e.master]=new i(t)}}get mergeCells(){return n.map(this.merges,(e=>e.range))}reconcile(e,t){n.each(e,(e=>{const r=a.decode(e);for(let e=r.top;e<=r.bottom;e++){const n=t[e-1];for(let t=r.left;t<=r.right;t++){const i=n.cells[t-1];i?i.type===o.ValueType.Merge&&(i.master=r.tl):n.cells[t]={type:o.ValueType.Null,address:a.encodeAddress(e,t)}}}}))}getMasterAddress(e){const t=this.hash[e];return t&&t.tl}}},48223:(e,t,r)=>{const n=r(87242),i=e=>void 0!==e;e.exports=class extends n{get tag(){return"outlinePr"}render(e,t){return!(!t||!i(t.summaryBelow)&&!i(t.summaryRight))&&(e.leafNode(this.tag,{summaryBelow:i(t.summaryBelow)?Number(t.summaryBelow):void 0,summaryRight:i(t.summaryRight)?Number(t.summaryRight):void 0}),!0)}parseOpen(e){return e.name===this.tag&&(this.model={summaryBelow:i(e.attributes.summaryBelow)?Boolean(Number(e.attributes.summaryBelow)):void 0,summaryRight:i(e.attributes.summaryRight)?Boolean(Number(e.attributes.summaryRight)):void 0},!0)}parseText(){}parseClose(){return!1}}},67735:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"brk"}render(e,t){e.leafNode("brk",t)}parseOpen(e){return"brk"===e.name&&(this.model=e.attributes.ref,!0)}parseText(){}parseClose(){return!1}}},97802:(e,t,r)=>{const n=r(67984),i=r(87242);e.exports=class extends i{get tag(){return"pageMargins"}render(e,t){if(t){const r={left:t.left,right:t.right,top:t.top,bottom:t.bottom,header:t.header,footer:t.footer};n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={left:parseFloat(e.attributes.left||.7),right:parseFloat(e.attributes.right||.7),top:parseFloat(e.attributes.top||.75),bottom:parseFloat(e.attributes.bottom||.75),header:parseFloat(e.attributes.header||.3),footer:parseFloat(e.attributes.footer||.3)},!0)}parseText(){}parseClose(){return!1}}},87610:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"pageSetUpPr"}render(e,t){return!(!t||!t.fitToPage)&&(e.leafNode(this.tag,{fitToPage:t.fitToPage?"1":void 0}),!0)}parseOpen(e){return e.name===this.tag&&(this.model={fitToPage:"1"===e.attributes.fitToPage},!0)}parseText(){}parseClose(){return!1}}},64892:(e,t,r)=>{const n=r(67984),i=r(87242);function a(e){return e?"1":void 0}function o(e){if("overThenDown"===e)return e}function s(e){switch(e){case"atEnd":case"asDisplyed":return e;default:return}}function c(e){switch(e){case"dash":case"blank":case"NA":return e;default:return}}e.exports=class extends i{get tag(){return"pageSetup"}render(e,t){if(t){const r={paperSize:t.paperSize,orientation:t.orientation,horizontalDpi:t.horizontalDpi,verticalDpi:t.verticalDpi,pageOrder:o(t.pageOrder),blackAndWhite:a(t.blackAndWhite),draft:a(t.draft),cellComments:s(t.cellComments),errors:c(t.errors),scale:t.scale,fitToWidth:t.fitToWidth,fitToHeight:t.fitToHeight,firstPageNumber:t.firstPageNumber,useFirstPageNumber:a(t.firstPageNumber),usePrinterDefaults:a(t.usePrinterDefaults),copies:t.copies};n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={paperSize:(t=e.attributes.paperSize,void 0!==t?parseInt(t,10):void 0),orientation:e.attributes.orientation||"portrait",horizontalDpi:parseInt(e.attributes.horizontalDpi||"4294967295",10),verticalDpi:parseInt(e.attributes.verticalDpi||"4294967295",10),pageOrder:e.attributes.pageOrder||"downThenOver",blackAndWhite:"1"===e.attributes.blackAndWhite,draft:"1"===e.attributes.draft,cellComments:e.attributes.cellComments||"None",errors:e.attributes.errors||"displayed",scale:parseInt(e.attributes.scale||"100",10),fitToWidth:parseInt(e.attributes.fitToWidth||"1",10),fitToHeight:parseInt(e.attributes.fitToHeight||"1",10),firstPageNumber:parseInt(e.attributes.firstPageNumber||"1",10),useFirstPageNumber:"1"===e.attributes.useFirstPageNumber,usePrinterDefaults:"1"===e.attributes.usePrinterDefaults,copies:parseInt(e.attributes.copies||"1",10)},!0);var t}parseText(){}parseClose(){return!1}}},74711:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"picture"}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){return e.name===this.tag&&(this.model={rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},4505:(e,t,r)=>{const n=r(67984),i=r(87242);function a(e){return e?"1":void 0}e.exports=class extends i{get tag(){return"printOptions"}render(e,t){if(t){const r={headings:a(t.showRowColHeaders),gridLines:a(t.showGridLines),horizontalCentered:a(t.horizontalCentered),verticalCentered:a(t.verticalCentered)};n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={showRowColHeaders:"1"===e.attributes.headings,showGridLines:"1"===e.attributes.gridLines,horizontalCentered:"1"===e.attributes.horizontalCentered,verticalCentered:"1"===e.attributes.verticalCentered},!0)}parseText(){}parseClose(){return!1}}},9668:(e,t,r)=>{"use strict";const n=r(67735),i=r(62447);e.exports=class extends i{constructor(){super({tag:"rowBreaks",count:!0,childXform:new n})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),this.count&&(e.addAttribute(this.$count,t.length),e.addAttribute("manualBreakCount",t.length));const{childXform:r}=this;t.forEach((t=>{r.render(e,t)})),e.closeNode()}else this.empty&&e.leafNode(this.tag)}}},80981:(e,t,r)=>{const n=r(87242),i=r(67032),a=r(57963);e.exports=class extends n{constructor(e){super(),this.maxItems=e&&e.maxItems,this.map={c:new a}}get tag(){return"row"}prepare(e,t){const r=t.styles.addStyleModel(e.style);r&&(e.styleId=r);const n=this.map.c;e.cells.forEach((e=>{n.prepare(e,t)}))}render(e,t,r){e.openNode("row"),e.addAttribute("r",t.number),t.height&&(e.addAttribute("ht",t.height),e.addAttribute("customHeight","1")),t.hidden&&e.addAttribute("hidden","1"),t.min>0&&t.max>0&&t.min<=t.max&&e.addAttribute("spans",`${t.min}:${t.max}`),t.styleId&&(e.addAttribute("s",t.styleId),e.addAttribute("customFormat","1")),e.addAttribute("x14ac:dyDescent","0.25"),t.outlineLevel&&e.addAttribute("outlineLevel",t.outlineLevel),t.collapsed&&e.addAttribute("collapsed","1");const n=this.map.c;t.cells.forEach((t=>{n.render(e,t,r)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if("row"===e.name){this.numRowsSeen+=1;const t=e.attributes.spans?e.attributes.spans.split(":").map((e=>parseInt(e,10))):[void 0,void 0],r=this.model={number:parseInt(e.attributes.r,10),min:t[0],max:t[1],cells:[]};return e.attributes.s&&(r.styleId=parseInt(e.attributes.s,10)),i.parseBoolean(e.attributes.hidden)&&(r.hidden=!0),i.parseBoolean(e.attributes.bestFit)&&(r.bestFit=!0),e.attributes.ht&&(r.height=parseFloat(e.attributes.ht)),e.attributes.outlineLevel&&(r.outlineLevel=parseInt(e.attributes.outlineLevel,10)),i.parseBoolean(e.attributes.collapsed)&&(r.collapsed=!0),!0}return this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){if(this.model.cells.push(this.parser.model),this.maxItems&&this.model.cells.length>this.maxItems)throw new Error(`Max column count (${this.maxItems}) exceeded`);this.parser=void 0}return!0}return!1}reconcile(e,t){e.style=e.styleId?t.styles.getStyleModel(e.styleId):{},void 0!==e.styleId&&(e.styleId=void 0);const r=this.map.c;e.cells.forEach((e=>{r.reconcile(e,t)}))}}},35772:(e,t,r)=>{const n=r(67984),i=r(87242);e.exports=class extends i{get tag(){return"sheetFormatPr"}render(e,t){if(t){const r={defaultRowHeight:t.defaultRowHeight,outlineLevelRow:t.outlineLevelRow,outlineLevelCol:t.outlineLevelCol,"x14ac:dyDescent":t.dyDescent};t.defaultColWidth&&(r.defaultColWidth=t.defaultColWidth),t.defaultRowHeight&&15===t.defaultRowHeight||(r.customHeight="1"),n.some(r,(e=>void 0!==e))&&e.leafNode("sheetFormatPr",r)}}parseOpen(e){return"sheetFormatPr"===e.name&&(this.model={defaultRowHeight:parseFloat(e.attributes.defaultRowHeight||"0"),dyDescent:parseFloat(e.attributes["x14ac:dyDescent"]||"0"),outlineLevelRow:parseInt(e.attributes.outlineLevelRow||"0",10),outlineLevelCol:parseInt(e.attributes.outlineLevelCol||"0",10)},e.attributes.defaultColWidth&&(this.model.defaultColWidth=parseFloat(e.attributes.defaultColWidth)),!0)}parseText(){}parseClose(){return!1}}},93236:(e,t,r)=>{const n=r(87242),i=r(42720),a=r(87610),o=r(48223);e.exports=class extends n{constructor(){super(),this.map={tabColor:new i("tabColor"),pageSetUpPr:new a,outlinePr:new o}}get tag(){return"sheetPr"}render(e,t){if(t){e.addRollback(),e.openNode("sheetPr");let r=!1;r=this.map.tabColor.render(e,t.tabColor)||r,r=this.map.pageSetUpPr.render(e,t.pageSetup)||r,r=this.map.outlinePr.render(e,t.outlineProperties)||r,r?(e.closeNode(),e.commit()):e.rollback()}}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.reset(),!0):!!this.map[e.name]&&(this.parser=this.map[e.name],this.parser.parseOpen(e),!0)}parseText(e){return!!this.parser&&(this.parser.parseText(e),!0)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(this.map.tabColor.model||this.map.pageSetUpPr.model||this.map.outlinePr.model?(this.model={},this.map.tabColor.model&&(this.model.tabColor=this.map.tabColor.model),this.map.pageSetUpPr.model&&(this.model.pageSetup=this.map.pageSetUpPr.model),this.map.outlinePr.model&&(this.model.outlineProperties=this.map.outlinePr.model)):this.model=null,!1)}}},94482:(e,t,r)=>{const n=r(67984),i=r(87242);function a(e,t){return e?t:void 0}function o(e,t){return e===t||void 0}e.exports=class extends i{get tag(){return"sheetProtection"}render(e,t){if(t){const r={sheet:a(t.sheet,"1"),selectLockedCells:!1===t.selectLockedCells?"1":void 0,selectUnlockedCells:!1===t.selectUnlockedCells?"1":void 0,formatCells:a(t.formatCells,"0"),formatColumns:a(t.formatColumns,"0"),formatRows:a(t.formatRows,"0"),insertColumns:a(t.insertColumns,"0"),insertRows:a(t.insertRows,"0"),insertHyperlinks:a(t.insertHyperlinks,"0"),deleteColumns:a(t.deleteColumns,"0"),deleteRows:a(t.deleteRows,"0"),sort:a(t.sort,"0"),autoFilter:a(t.autoFilter,"0"),pivotTables:a(t.pivotTables,"0")};t.sheet&&(r.algorithmName=t.algorithmName,r.hashValue=t.hashValue,r.saltValue=t.saltValue,r.spinCount=t.spinCount,r.objects=a(!1===t.objects,"1"),r.scenarios=a(!1===t.scenarios,"1")),n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={sheet:o(e.attributes.sheet,"1"),objects:"1"!==e.attributes.objects&&void 0,scenarios:"1"!==e.attributes.scenarios&&void 0,selectLockedCells:"1"!==e.attributes.selectLockedCells&&void 0,selectUnlockedCells:"1"!==e.attributes.selectUnlockedCells&&void 0,formatCells:o(e.attributes.formatCells,"0"),formatColumns:o(e.attributes.formatColumns,"0"),formatRows:o(e.attributes.formatRows,"0"),insertColumns:o(e.attributes.insertColumns,"0"),insertRows:o(e.attributes.insertRows,"0"),insertHyperlinks:o(e.attributes.insertHyperlinks,"0"),deleteColumns:o(e.attributes.deleteColumns,"0"),deleteRows:o(e.attributes.deleteRows,"0"),sort:o(e.attributes.sort,"0"),autoFilter:o(e.attributes.autoFilter,"0"),pivotTables:o(e.attributes.pivotTables,"0")},e.attributes.algorithmName&&(this.model.algorithmName=e.attributes.algorithmName,this.model.hashValue=e.attributes.hashValue,this.model.saltValue=e.attributes.saltValue,this.model.spinCount=parseInt(e.attributes.spinCount,10)),!0)}parseText(){}parseClose(){return!1}}},27832:(e,t,r)=>{const n=r(29428),i=r(87242),a={frozen:"frozen",frozenSplit:"frozen",split:"split"};e.exports=class extends i{get tag(){return"sheetView"}prepare(e){switch(e.state){case"frozen":case"split":break;default:e.state="normal"}}render(e,t){e.openNode("sheetView",{workbookViewId:t.workbookViewId||0});const r=function(t,r,n){n&&e.addAttribute(t,r)};let i,a,o,s;switch(r("rightToLeft","1",!0===t.rightToLeft),r("tabSelected","1",t.tabSelected),r("showRuler","0",!1===t.showRuler),r("showRowColHeaders","0",!1===t.showRowColHeaders),r("showGridLines","0",!1===t.showGridLines),r("zoomScale",t.zoomScale,t.zoomScale),r("zoomScaleNormal",t.zoomScaleNormal,t.zoomScaleNormal),r("view",t.style,t.style),t.state){case"frozen":a=t.xSplit||0,o=t.ySplit||0,i=t.topLeftCell||n.getAddress(o+1,a+1).address,s=(t.xSplit&&t.ySplit?"bottomRight":t.xSplit&&"topRight")||"bottomLeft",e.leafNode("pane",{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:i,activePane:s,state:"frozen"}),e.leafNode("selection",{pane:s,activeCell:t.activeCell,sqref:t.activeCell});break;case"split":"topLeft"===t.activePane&&(t.activePane=void 0),e.leafNode("pane",{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:t.topLeftCell,activePane:t.activePane}),e.leafNode("selection",{pane:t.activePane,activeCell:t.activeCell,sqref:t.activeCell});break;case"normal":t.activeCell&&e.leafNode("selection",{activeCell:t.activeCell,sqref:t.activeCell})}e.closeNode()}parseOpen(e){switch(e.name){case"sheetView":return this.sheetView={workbookViewId:parseInt(e.attributes.workbookViewId,10),rightToLeft:"1"===e.attributes.rightToLeft,tabSelected:"1"===e.attributes.tabSelected,showRuler:!("0"===e.attributes.showRuler),showRowColHeaders:!("0"===e.attributes.showRowColHeaders),showGridLines:!("0"===e.attributes.showGridLines),zoomScale:parseInt(e.attributes.zoomScale||"100",10),zoomScaleNormal:parseInt(e.attributes.zoomScaleNormal||"100",10),style:e.attributes.view},this.pane=void 0,this.selections={},!0;case"pane":return this.pane={xSplit:parseInt(e.attributes.xSplit||"0",10),ySplit:parseInt(e.attributes.ySplit||"0",10),topLeftCell:e.attributes.topLeftCell,activePane:e.attributes.activePane||"topLeft",state:e.attributes.state},!0;case"selection":{const t=e.attributes.pane||"topLeft";return this.selections[t]={pane:t,activeCell:e.attributes.activeCell},!0}default:return!1}}parseText(){}parseClose(e){let t,r;return"sheetView"!==e||(this.sheetView&&this.pane?(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,state:a[this.pane.state]||"split",xSplit:this.pane.xSplit,ySplit:this.pane.ySplit,topLeftCell:this.pane.topLeftCell,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},"split"===this.model.state&&(t.activePane=this.pane.activePane),r=this.selections[this.pane.activePane],r&&r.activeCell&&(t.activeCell=r.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)):(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,state:"normal",showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},r=this.selections.topLeft,r&&r.activeCell&&(t.activeCell=r.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)),!1)}reconcile(){}}},57985:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"tablePart"}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){return e.name===this.tag&&(this.model={rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},59629:(e,t,r)=>{const n=r(67984),i=r(29428),a=r(12141),o=r(71745),s=r(96209),c=r(87242),l=r(62447),u=r(80981),d=r(8599),p=r(2601),f=r(76591),m=r(49012),g=r(27210),_=r(93236),h=r(35772),y=r(27832),v=r(94482),b=r(97802),k=r(64892),x=r(4505),E=r(47749),S=r(74711),D=r(81099),w=r(57985),T=r(9668),C=r(87182),A=r(12700),N=r(17100),P=(e,t)=>{if(!t||!t.length)return e;if(!e||!e.length)return t;const r={},n={};return e.forEach((e=>{r[e.ref]=e,e.rules.forEach((e=>{const{x14Id:t}=e;t&&(n[t]=e)}))})),t.forEach((t=>{t.rules.forEach((i=>{const a=n[i.x14Id];a?((e,t)=>{Object.keys(t).forEach((r=>{const n=e[r],i=t[r];void 0===n&&void 0!==i&&(e[r]=i)}))})(a,i):r[t.ref]?r[t.ref].rules.push(i):e.push({ref:t.ref,rules:[i]})}))})),e};class I extends c{constructor(e){super();const{maxRows:t,maxCols:r,ignoreNodes:n}=e||{};this.ignoreNodes=n||[],this.map={sheetPr:new _,dimension:new p,sheetViews:new l({tag:"sheetViews",count:!1,childXform:new y}),sheetFormatPr:new h,cols:new l({tag:"cols",count:!1,childXform:new d}),sheetData:new l({tag:"sheetData",count:!1,empty:!0,childXform:new u({maxItems:r}),maxItems:t}),autoFilter:new E,mergeCells:new l({tag:"mergeCells",count:!0,childXform:new m}),rowBreaks:new T,hyperlinks:new l({tag:"hyperlinks",count:!1,childXform:new f}),pageMargins:new b,dataValidations:new g,pageSetup:new k,headerFooter:new C,printOptions:new x,picture:new S,drawing:new D,sheetProtection:new v,tableParts:new l({tag:"tableParts",count:!0,childXform:new w}),conditionalFormatting:new A,extLst:new N}}prepare(e,t){t.merges=new s,e.hyperlinks=t.hyperlinks=[],e.comments=t.comments=[],t.formulae={},t.siFormulae=0,this.map.cols.prepare(e.cols,t),this.map.sheetData.prepare(e.rows,t),this.map.conditionalFormatting.prepare(e.conditionalFormattings,t),e.mergeCells=t.merges.mergeCells;const r=e.rels=[];function n(e){return`rId${e.length+1}`}if(e.hyperlinks.forEach((e=>{const t=n(r);e.rId=t,r.push({Id:t,Type:o.Hyperlink,Target:e.target,TargetMode:"External"})})),e.comments.length>0){const a={Id:n(r),Type:o.Comments,Target:`../comments${e.id}.xml`};r.push(a);const s={Id:n(r),Type:o.VmlDrawing,Target:`../drawings/vmlDrawing${e.id}.vml`};r.push(s),e.comments.forEach((e=>{e.refAddress=i.decodeAddress(e.ref)})),t.commentRefs.push({commentName:`comments${e.id}`,vmlDrawing:`vmlDrawing${e.id}`})}const a=[];let c;e.media.forEach((i=>{if("background"===i.type){const a=n(r);c=t.media[i.imageId],r.push({Id:a,Type:o.Image,Target:`../media/${c.name}.${c.extension}`}),e.background={rId:a},e.image=t.media[i.imageId]}else if("image"===i.type){let{drawing:s}=e;c=t.media[i.imageId],s||(s=e.drawing={rId:n(r),name:"drawing"+ ++t.drawingsCount,anchors:[],rels:[]},t.drawings.push(s),r.push({Id:s.rId,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",Target:`../drawings/${s.name}.xml`}));let l=this.preImageId===i.imageId?a[i.imageId]:a[s.rels.length];l||(l=n(s.rels),a[s.rels.length]=l,s.rels.push({Id:l,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/${c.name}.${c.extension}`}));const u={picture:{rId:l},range:i.range};if(i.hyperlinks&&i.hyperlinks.hyperlink){const e=n(s.rels);a[s.rels.length]=e,u.picture.hyperlinks={tooltip:i.hyperlinks.tooltip,rId:e},s.rels.push({Id:e,Type:o.Hyperlink,Target:i.hyperlinks.hyperlink,TargetMode:"External"})}this.preImageId=i.imageId,s.anchors.push(u)}})),e.tables.forEach((e=>{const i=n(r);e.rId=i,r.push({Id:i,Type:o.Table,Target:`../tables/${e.target}`}),e.columns.forEach((e=>{const{style:r}=e;r&&(e.dxfId=t.styles.addDxfStyle(r))}))})),this.map.extLst.prepare(e,t)}render(e,t){e.openXml(a.StdDocAttributes),e.openNode("worksheet",I.WORKSHEET_ATTRIBUTES);const r=t.properties?{defaultRowHeight:t.properties.defaultRowHeight,dyDescent:t.properties.dyDescent,outlineLevelCol:t.properties.outlineLevelCol,outlineLevelRow:t.properties.outlineLevelRow}:void 0;t.properties&&t.properties.defaultColWidth&&(r.defaultColWidth=t.properties.defaultColWidth);const n={outlineProperties:t.properties&&t.properties.outlineProperties,tabColor:t.properties&&t.properties.tabColor,pageSetup:t.pageSetup&&t.pageSetup.fitToPage?{fitToPage:t.pageSetup.fitToPage}:void 0},i=t.pageSetup&&t.pageSetup.margins,s={showRowColHeaders:t.pageSetup&&t.pageSetup.showRowColHeaders,showGridLines:t.pageSetup&&t.pageSetup.showGridLines,horizontalCentered:t.pageSetup&&t.pageSetup.horizontalCentered,verticalCentered:t.pageSetup&&t.pageSetup.verticalCentered},c=t.sheetProtection;this.map.sheetPr.render(e,n),this.map.dimension.render(e,t.dimensions),this.map.sheetViews.render(e,t.views),this.map.sheetFormatPr.render(e,r),this.map.cols.render(e,t.cols),this.map.sheetData.render(e,t.rows),this.map.sheetProtection.render(e,c),this.map.autoFilter.render(e,t.autoFilter),this.map.mergeCells.render(e,t.mergeCells),this.map.conditionalFormatting.render(e,t.conditionalFormattings),this.map.dataValidations.render(e,t.dataValidations),this.map.hyperlinks.render(e,t.hyperlinks),this.map.printOptions.render(e,s),this.map.pageMargins.render(e,i),this.map.pageSetup.render(e,t.pageSetup),this.map.headerFooter.render(e,t.headerFooter),this.map.rowBreaks.render(e,t.rowBreaks),this.map.drawing.render(e,t.drawing),this.map.picture.render(e,t.background),this.map.tableParts.render(e,t.tables),this.map.extLst.render(e,t),t.rels&&t.rels.forEach((t=>{t.Type===o.VmlDrawing&&e.leafNode("legacyDrawing",{"r:id":t.Id})})),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"worksheet"===e.name?(n.each(this.map,(e=>{e.reset()})),!0):(this.map[e.name]&&!this.ignoreNodes.includes(e.name)&&(this.parser=this.map[e.name],this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if("worksheet"===e){const e=this.map.sheetFormatPr.model||{};this.map.sheetPr.model&&this.map.sheetPr.model.tabColor&&(e.tabColor=this.map.sheetPr.model.tabColor),this.map.sheetPr.model&&this.map.sheetPr.model.outlineProperties&&(e.outlineProperties=this.map.sheetPr.model.outlineProperties);const t={fitToPage:this.map.sheetPr.model&&this.map.sheetPr.model.pageSetup&&this.map.sheetPr.model.pageSetup.fitToPage||!1,margins:this.map.pageMargins.model},r=Object.assign(t,this.map.pageSetup.model,this.map.printOptions.model),n=P(this.map.conditionalFormatting.model,this.map.extLst.model&&this.map.extLst.model["x14:conditionalFormattings"]);return this.model={dimensions:this.map.dimension.model,cols:this.map.cols.model,rows:this.map.sheetData.model,mergeCells:this.map.mergeCells.model,hyperlinks:this.map.hyperlinks.model,dataValidations:this.map.dataValidations.model,properties:e,views:this.map.sheetViews.model,pageSetup:r,headerFooter:this.map.headerFooter.model,background:this.map.picture.model,drawing:this.map.drawing.model,tables:this.map.tableParts.model,conditionalFormattings:n},this.map.autoFilter.model&&(this.model.autoFilter=this.map.autoFilter.model),this.map.sheetProtection.model&&(this.model.sheetProtection=this.map.sheetProtection.model),!1}return!0}reconcile(e,t){const r=(e.relationships||[]).reduce(((r,n)=>{if(r[n.Id]=n,n.Type===o.Comments&&(e.comments=t.comments[n.Target].comments),n.Type===o.VmlDrawing&&e.comments&&e.comments.length){const r=t.vmlDrawings[n.Target].comments;e.comments.forEach(((e,t)=>{e.note=Object.assign({},e.note,r[t])}))}return r}),{});if(t.commentsMap=(e.comments||[]).reduce(((e,t)=>(t.ref&&(e[t.ref]=t),e)),{}),t.hyperlinkMap=(e.hyperlinks||[]).reduce(((e,t)=>(t.rId&&(e[t.address]=r[t.rId].Target),e)),{}),t.formulae={},e.rows=e.rows&&e.rows.filter(Boolean)||[],e.rows.forEach((e=>{e.cells=e.cells&&e.cells.filter(Boolean)||[]})),this.map.cols.reconcile(e.cols,t),this.map.sheetData.reconcile(e.rows,t),this.map.conditionalFormatting.reconcile(e.conditionalFormattings,t),e.media=[],e.drawing){const n=r[e.drawing.rId].Target.match(/\/drawings\/([a-zA-Z0-9]+)[.][a-zA-Z]{3,4}$/);if(n){const r=n[1];t.drawings[r].anchors.forEach((t=>{if(t.medium){const r={type:"image",imageId:t.medium.index,range:t.range,hyperlinks:t.picture.hyperlinks};e.media.push(r)}}))}}const n=e.background&&r[e.background.rId];if(n){const r=n.Target.split("/media/")[1],i=t.mediaIndex&&t.mediaIndex[r];void 0!==i&&e.media.push({type:"background",imageId:i})}e.tables=(e.tables||[]).map((e=>{const n=r[e.rId];return t.tables[n.Target]})),delete e.relationships,delete e.hyperlinks,delete e.comments}}I.WORKSHEET_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"x14ac","xmlns:x14ac":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac"},e.exports=I},36006:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr}render(e,t){t&&(e.openNode(this.tag),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.model=!0)}parseText(){}parseClose(){return!1}}},59874:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this._format=e.format||function(e){try{return Number.isNaN(e.getTime())?"":e.toISOString()}catch(e){return""}},this._parse=e.parse||function(e){return new Date(e)}}render(e,t){t&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,this._format(t)):e.writeText(this._format(t)),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=this._parse(e.attributes[this.attr]):this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this._parse(this.text.join(""))),!1}}},65208:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.zero=e.zero}render(e,t){(t||this.zero)&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){return e.name===this.tag&&(this.attr?this.model=parseInt(e.attributes[this.attr],10):this.text=[],!0)}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=parseInt(this.text.join("")||0,10)),!1}}},71207:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs}render(e,t){void 0!==t&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=e.attributes[this.attr]:this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this.text.join("")),!1}}},52789:(e,t,r)=>{const n=r(87242),i=r(12141);function a(e,t){e.openNode(t.tag,t.$),t.c&&t.c.forEach((t=>{a(e,t)})),t.t&&e.writeText(t.t),e.closeNode()}e.exports=class extends n{constructor(e){super(),this._model=e}render(e){if(!this._xml){const e=new i;a(e,this._model),this._xml=e.xml}e.writeXml(this._xml)}parseOpen(){return!0}parseText(){}parseClose(e){return e!==this._model.tag}}},428:(e,t,r)=>{const n=r(67403),i=r(95814),a=r(87242);e.exports=class extends a{constructor(){super(),this.map={r:new i,t:new n}}get tag(){return"rPh"}render(e,t){if(e.openNode(this.tag,{sb:t.sb||0,eb:t.eb||0}),t&&t.hasOwnProperty("richText")&&t.richText){const{r}=this.map;t.richText.forEach((t=>{r.render(e,t)}))}else t&&this.map.t.render(e,t.text);e.closeNode()}parseOpen(e){const{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={sb:parseInt(e.attributes.sb,10),eb:parseInt(e.attributes.eb,10)},!0):(this.parser=this.map[t],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case"r":{let e=this.model.richText;e||(e=this.model.richText=[]),e.push(this.parser.model);break}case"t":this.model.text=this.parser.model}this.parser=void 0}return!0}return e!==this.tag}}},95814:(e,t,r)=>{const n=r(67403),i=r(73784),a=r(87242);class o extends a{constructor(e){super(),this.model=e}get tag(){return"r"}get textXform(){return this._textXform||(this._textXform=new n)}get fontXform(){return this._fontXform||(this._fontXform=new i(o.FONT_OPTIONS))}render(e,t){t=t||this.model,e.openNode("r"),t.font&&this.fontXform.render(e,t.font),this.textXform.render(e,t.text),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"r":return this.model={},!0;case"t":return this.parser=this.textXform,this.parser.parseOpen(e),!0;case"rPr":return this.parser=this.fontXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case"r":return!1;case"t":return this.model.text=this.parser.model,this.parser=void 0,!0;case"rPr":return this.model.font=this.parser.model,this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}}o.FONT_OPTIONS={tagName:"rPr",fontNameTag:"rFont"},e.exports=o},52765:(e,t,r)=>{const n=r(67403),i=r(95814),a=r(428),o=r(87242);e.exports=class extends o{constructor(e){super(),this.model=e,this.map={r:new i,t:new n,rPh:new a}}get tag(){return"si"}render(e,t){e.openNode(this.tag),t&&t.hasOwnProperty("richText")&&t.richText?t.richText.length?t.richText.forEach((t=>{this.map.r.render(e,t)})):this.map.t.render(e,""):null!=t&&this.map.t.render(e,t),e.closeNode()}parseOpen(e){const{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={},!0):(this.parser=this.map[t],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case"r":{let e=this.model.richText;e||(e=this.model.richText=[]),e.push(this.parser.model);break}case"t":this.model=this.parser.model}this.parser=void 0}return!0}return e!==this.tag}}},96242:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(52765);e.exports=class extends i{constructor(e){super(),this.model=e||{values:[],count:0},this.hash=Object.create(null),this.rich=Object.create(null)}get sharedStringXform(){return this._sharedStringXform||(this._sharedStringXform=new a)}get values(){return this.model.values}get uniqueCount(){return this.model.values.length}get count(){return this.model.count}getString(e){return this.model.values[e]}add(e){return e.richText?this.addRichText(e):this.addText(e)}addText(e){let t=this.hash[e];return void 0===t&&(t=this.hash[e]=this.model.values.length,this.model.values.push(e)),this.model.count++,t}addRichText(e){const t=this.sharedStringXform.toXml(e);let r=this.rich[t];return void 0===r&&(r=this.rich[t]=this.model.values.length,this.model.values.push(e)),this.model.count++,r}render(e,t){t=t||this._values,e.openXml(n.StdDocAttributes),e.openNode("sst",{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:t.count,uniqueCount:t.values.length});const r=this.sharedStringXform;t.values.forEach((t=>{r.render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"sst":return!0;case"si":return this.parser=this.sharedStringXform,this.parser.parseOpen(e),!0;default:throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.values.push(this.parser.model),this.model.count++,this.parser=void 0),!0;if("sst"===e)return!1;throw new Error(`Unexpected xml node in parseClose: ${e}`)}}},67403:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"t"}render(e,t){e.openNode("t"),/^\s|\n|\s$/.test(t)&&e.addAttribute("xml:space","preserve"),e.writeText(t),e.closeNode()}get model(){return this._text.join("").replace(/_x([0-9A-F]{4})_/g,((e,t)=>String.fromCharCode(parseInt(t,16))))}parseOpen(e){return"t"===e.name&&(this._text=[],!0)}parseText(e){this._text.push(e)}parseClose(){return!1}}},15542:(e,t,r)=>{const n=r(70880),i=r(67032),a=r(87242),o={horizontalValues:["left","center","right","fill","centerContinuous","distributed","justify"].reduce(((e,t)=>(e[t]=!0,e)),{}),horizontal(e){return this.horizontalValues[e]?e:void 0},verticalValues:["top","middle","bottom","distributed","justify"].reduce(((e,t)=>(e[t]=!0,e)),{}),vertical(e){return"middle"===e?"center":this.verticalValues[e]?e:void 0},wrapText:e=>!!e||void 0,shrinkToFit:e=>!!e||void 0,textRotation:e=>"vertical"===e||(e=i.validInt(e))>=-90&&e<=90?e:void 0,indent:e=>(e=i.validInt(e),Math.max(0,e)),readingOrder(e){switch(e){case"ltr":return n.ReadingOrder.LeftToRight;case"rtl":return n.ReadingOrder.RightToLeft;default:return}}},s={toXml(e){if(e=o.textRotation(e)){if("vertical"===e)return 255;const t=Math.round(e);if(t>=0&&t<=90)return t;if(t<0&&t>=-90)return 90-t}},toModel(e){const t=i.validInt(e);if(void 0!==t){if(255===t)return"vertical";if(t>=0&&t<=90)return t;if(t>90&&t<=180)return 90-t}}};e.exports=class extends a{get tag(){return"alignment"}render(e,t){e.addRollback(),e.openNode("alignment");let r=!1;function n(t,n){n&&(e.addAttribute(t,n),r=!0)}n("horizontal",o.horizontal(t.horizontal)),n("vertical",o.vertical(t.vertical)),n("wrapText",!!o.wrapText(t.wrapText)&&"1"),n("shrinkToFit",!!o.shrinkToFit(t.shrinkToFit)&&"1"),n("indent",o.indent(t.indent)),n("textRotation",s.toXml(t.textRotation)),n("readingOrder",o.readingOrder(t.readingOrder)),e.closeNode(),r?e.commit():e.rollback()}parseOpen(e){const t={};let r=!1;function n(e,n,i){e&&(t[n]=i,r=!0)}n(e.attributes.horizontal,"horizontal",e.attributes.horizontal),n(e.attributes.vertical,"vertical","center"===e.attributes.vertical?"middle":e.attributes.vertical),n(e.attributes.wrapText,"wrapText",i.parseBoolean(e.attributes.wrapText)),n(e.attributes.shrinkToFit,"shrinkToFit",i.parseBoolean(e.attributes.shrinkToFit)),n(e.attributes.indent,"indent",parseInt(e.attributes.indent,10)),n(e.attributes.textRotation,"textRotation",s.toModel(e.attributes.textRotation)),n(e.attributes.readingOrder,"readingOrder","2"===e.attributes.readingOrder?"rtl":"ltr"),this.model=r?t:null}parseText(){}parseClose(){return!1}}},46503:(e,t,r)=>{const n=r(87242),i=r(67032),a=r(42720);class o extends n{constructor(e){super(),this.name=e,this.map={color:new a}}get tag(){return this.name}render(e,t,r){const n=t&&t.color||r||this.defaultColor;e.openNode(this.name),t&&t.style&&(e.addAttribute("style",t.style),n&&this.map.color.render(e,n)),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.name:{const{style:t}=e.attributes;return this.model=t?{style:t}:void 0,!0}case"color":return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(e===this.name&&this.map.color.model&&(this.model||(this.model={}),this.model.color=this.map.color.model),!1)}validStyle(e){return o.validStyleValues[e]}}o.validStyleValues=["thin","dashed","dotted","dashDot","hair","dashDotDot","slantDashDot","mediumDashed","mediumDashDotDot","mediumDashDot","medium","double","thick"].reduce(((e,t)=>(e[t]=!0,e)),{});e.exports=class extends n{constructor(){super(),this.map={top:new o("top"),left:new o("left"),bottom:new o("bottom"),right:new o("right"),diagonal:new o("diagonal")}}render(e,t){const{color:r}=t;function n(n,i){n&&!n.color&&t.color&&(n={...n,color:t.color}),i.render(e,n,r)}e.openNode("border"),t.diagonal&&t.diagonal.style&&(t.diagonal.up&&e.addAttribute("diagonalUp","1"),t.diagonal.down&&e.addAttribute("diagonalDown","1")),n(t.left,this.map.left),n(t.right,this.map.right),n(t.top,this.map.top),n(t.bottom,this.map.bottom),n(t.diagonal,this.map.diagonal),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"border"===e.name?(this.reset(),this.diagonalUp=i.parseBoolean(e.attributes.diagonalUp),this.diagonalDown=i.parseBoolean(e.attributes.diagonalDown),!0):(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if("border"===e){const e=this.model={},t=function(t,r,n){r&&(n&&Object.assign(r,n),e[t]=r)};t("left",this.map.left.model),t("right",this.map.right.model),t("top",this.map.top.model),t("bottom",this.map.bottom.model),t("diagonal",this.map.diagonal.model,{up:this.diagonalUp,down:this.diagonalDown})}return!1}}},42720:(e,t,r)=>{const n=r(87242);e.exports=class extends n{constructor(e){super(),this.name=e||"color"}get tag(){return this.name}render(e,t){return!!t&&(e.openNode(this.name),t.argb?e.addAttribute("rgb",t.argb):void 0!==t.theme?(e.addAttribute("theme",t.theme),void 0!==t.tint&&e.addAttribute("tint",t.tint)):void 0!==t.indexed?e.addAttribute("indexed",t.indexed):e.addAttribute("auto","1"),e.closeNode(),!0)}parseOpen(e){return e.name===this.name&&(e.attributes.rgb?this.model={argb:e.attributes.rgb}:e.attributes.theme?(this.model={theme:parseInt(e.attributes.theme,10)},e.attributes.tint&&(this.model.tint=parseFloat(e.attributes.tint))):e.attributes.indexed?this.model={indexed:parseInt(e.attributes.indexed,10)}:this.model=void 0,!0)}parseText(){}parseClose(){return!1}}},64621:(e,t,r)=>{const n=r(87242),i=r(15542),a=r(46503),o=r(96112),s=r(73784),c=r(81198),l=r(84330);e.exports=class extends n{constructor(){super(),this.map={alignment:new i,border:new a,fill:new o,font:new s,numFmt:new c,protection:new l}}get tag(){return"dxf"}render(e,t){if(e.openNode(this.tag),t.font&&this.map.font.render(e,t.font),t.numFmt&&t.numFmtId){const r={id:t.numFmtId,formatCode:t.numFmt};this.map.numFmt.render(e,r)}t.fill&&this.map.fill.render(e,t.fill),t.alignment&&this.map.alignment.render(e,t.alignment),t.border&&this.map.border.render(e,t.border),t.protection&&this.map.protection.render(e,t.protection),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.reset(),!0):(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model={alignment:this.map.alignment.model,border:this.map.border.model,fill:this.map.fill.model,font:this.map.font.model,numFmt:this.map.numFmt.model,protection:this.map.protection.model},!1)}}},96112:(e,t,r)=>{const n=r(87242),i=r(42720);class a extends n{constructor(){super(),this.map={color:new i}}get tag(){return"stop"}render(e,t){e.openNode("stop"),e.addAttribute("position",t.position),this.map.color.render(e,t.color),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"stop":return this.model={position:parseFloat(e.attributes.position)},!0;case"color":return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(){}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.model.color=this.parser.model,this.parser=void 0),!0)}}class o extends n{constructor(){super(),this.map={fgColor:new i("fgColor"),bgColor:new i("bgColor")}}get name(){return"pattern"}get tag(){return"patternFill"}render(e,t){e.openNode("patternFill"),e.addAttribute("patternType",t.pattern),t.fgColor&&this.map.fgColor.render(e,t.fgColor),t.bgColor&&this.map.bgColor.render(e,t.bgColor),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"patternFill"===e.name?(this.model={type:"pattern",pattern:e.attributes.patternType},!0):(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.parser.model&&(this.model[e]=this.parser.model),this.parser=void 0),!0)}}class s extends n{constructor(){super(),this.map={stop:new a}}get name(){return"gradient"}get tag(){return"gradientFill"}render(e,t){switch(e.openNode("gradientFill"),t.gradient){case"angle":e.addAttribute("degree",t.degree);break;case"path":e.addAttribute("type","path"),t.center.left&&(e.addAttribute("left",t.center.left),void 0===t.center.right&&e.addAttribute("right",t.center.left)),t.center.right&&e.addAttribute("right",t.center.right),t.center.top&&(e.addAttribute("top",t.center.top),void 0===t.center.bottom&&e.addAttribute("bottom",t.center.top)),t.center.bottom&&e.addAttribute("bottom",t.center.bottom)}const r=this.map.stop;t.stops.forEach((t=>{r.render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"gradientFill":{const t=this.model={stops:[]};return e.attributes.degree?(t.gradient="angle",t.degree=parseInt(e.attributes.degree,10)):"path"===e.attributes.type&&(t.gradient="path",t.center={left:e.attributes.left?parseFloat(e.attributes.left):0,top:e.attributes.top?parseFloat(e.attributes.top):0},e.attributes.right!==e.attributes.left&&(t.center.right=e.attributes.right?parseFloat(e.attributes.right):0),e.attributes.bottom!==e.attributes.top&&(t.center.bottom=e.attributes.bottom?parseFloat(e.attributes.bottom):0)),!0}case"stop":return this.parser=this.map.stop,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.model.stops.push(this.parser.model),this.parser=void 0),!0)}}class c extends n{constructor(){super(),this.map={patternFill:new o,gradientFill:new s}}get tag(){return"fill"}render(e,t){switch(e.addRollback(),e.openNode("fill"),t.type){case"pattern":this.map.patternFill.render(e,t);break;case"gradient":this.map.gradientFill.render(e,t);break;default:return void e.rollback()}e.closeNode(),e.commit()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"fill"===e.name?(this.model={},!0):(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.model=this.parser.model,this.model.type=this.parser.name,this.parser=void 0),!0)}validStyle(e){return c.validPatternValues[e]}}c.validPatternValues=["none","solid","darkVertical","darkGray","mediumGray","lightGray","gray125","gray0625","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","lightGrid"].reduce(((e,t)=>(e[t]=!0,e)),{}),c.StopXform=a,c.PatternFillXform=o,c.GradientFillXform=s,e.exports=c},73784:(e,t,r)=>{"use strict";const n=r(42720),i=r(36006),a=r(65208),o=r(71207),s=r(15631),c=r(67984),l=r(87242);class u extends l{constructor(e){super(),this.options=e||u.OPTIONS,this.map={b:{prop:"bold",xform:new i({tag:"b",attr:"val"})},i:{prop:"italic",xform:new i({tag:"i",attr:"val"})},u:{prop:"underline",xform:new s},charset:{prop:"charset",xform:new a({tag:"charset",attr:"val"})},color:{prop:"color",xform:new n},condense:{prop:"condense",xform:new i({tag:"condense",attr:"val"})},extend:{prop:"extend",xform:new i({tag:"extend",attr:"val"})},family:{prop:"family",xform:new a({tag:"family",attr:"val"})},outline:{prop:"outline",xform:new i({tag:"outline",attr:"val"})},vertAlign:{prop:"vertAlign",xform:new o({tag:"vertAlign",attr:"val"})},scheme:{prop:"scheme",xform:new o({tag:"scheme",attr:"val"})},shadow:{prop:"shadow",xform:new i({tag:"shadow",attr:"val"})},strike:{prop:"strike",xform:new i({tag:"strike",attr:"val"})},sz:{prop:"size",xform:new a({tag:"sz",attr:"val"})}},this.map[this.options.fontNameTag]={prop:"name",xform:new o({tag:this.options.fontNameTag,attr:"val"})}}get tag(){return this.options.tagName}render(e,t){const{map:r}=this;e.openNode(this.options.tagName),c.each(this.map,((n,i)=>{r[i].xform.render(e,t[n.prop])})),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):this.map[e.name]?(this.parser=this.map[e.name].xform,this.parser.parseOpen(e)):e.name===this.options.tagName&&(this.model={},!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser&&!this.parser.parseClose(e)){const t=this.map[e];return this.parser.model&&(this.model[t.prop]=this.parser.model),this.parser=void 0,!0}return e!==this.options.tagName}}u.OPTIONS={tagName:"font",fontNameTag:"name"},e.exports=u},81198:(e,t,r)=>{const n=r(67984),i=r(77118),a=r(87242);const o=function(){const e={};return n.each(i,((t,r)=>{t.f&&(e[t.f]=parseInt(r,10))})),e}();class s extends a{constructor(e,t){super(),this.id=e,this.formatCode=t}get tag(){return"numFmt"}render(e,t){e.leafNode("numFmt",{numFmtId:t.id,formatCode:t.formatCode})}parseOpen(e){return"numFmt"===e.name&&(this.model={id:parseInt(e.attributes.numFmtId,10),formatCode:e.attributes.formatCode.replace(/[\\](.)/g,"$1")},!0)}parseText(){}parseClose(){return!1}}s.getDefaultFmtId=function(e){return o[e]},s.getDefaultFmtCode=function(e){return i[e]&&i[e].f},e.exports=s},84330:(e,t,r)=>{const n=r(87242),i={boolean:(e,t)=>void 0===e?t:e};e.exports=class extends n{get tag(){return"protection"}render(e,t){e.addRollback(),e.openNode("protection");let r=!1;function n(t,n){void 0!==n&&(e.addAttribute(t,n),r=!0)}n("locked",i.boolean(t.locked,!0)?void 0:"0"),n("hidden",i.boolean(t.hidden,!1)?"1":void 0),e.closeNode(),r?e.commit():e.rollback()}parseOpen(e){const t={locked:!("0"===e.attributes.locked),hidden:"1"===e.attributes.hidden},r=!t.locked||t.hidden;this.model=r?t:null}parseText(){}parseClose(){return!1}}},51566:(e,t,r)=>{const n=r(87242),i=r(15542),a=r(84330);e.exports=class extends n{constructor(e){super(),this.xfId=!(!e||!e.xfId),this.map={alignment:new i,protection:new a}}get tag(){return"xf"}render(e,t){e.openNode("xf",{numFmtId:t.numFmtId||0,fontId:t.fontId||0,fillId:t.fillId||0,borderId:t.borderId||0}),this.xfId&&e.addAttribute("xfId",t.xfId||0),t.numFmtId&&e.addAttribute("applyNumberFormat","1"),t.fontId&&e.addAttribute("applyFont","1"),t.fillId&&e.addAttribute("applyFill","1"),t.borderId&&e.addAttribute("applyBorder","1"),t.alignment&&e.addAttribute("applyAlignment","1"),t.protection&&e.addAttribute("applyProtection","1"),t.alignment&&this.map.alignment.render(e,t.alignment),t.protection&&this.map.protection.render(e,t.protection),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"xf":return this.model={numFmtId:parseInt(e.attributes.numFmtId,10),fontId:parseInt(e.attributes.fontId,10),fillId:parseInt(e.attributes.fillId,10),borderId:parseInt(e.attributes.borderId,10)},this.xfId&&(this.model.xfId=parseInt(e.attributes.xfId,10)),!0;case"alignment":return this.parser=this.map.alignment,this.parser.parseOpen(e),!0;case"protection":return this.parser=this.map.protection,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.map.protection===this.parser?this.model.protection=this.parser.model:this.model.alignment=this.parser.model,this.parser=void 0),!0):"xf"!==e}}},17647:(e,t,r)=>{const n=r(70880),i=r(12141),a=r(87242),o=r(52789),s=r(62447),c=r(73784),l=r(96112),u=r(46503),d=r(81198),p=r(51566),f=r(64621);class m extends a{constructor(e){super(),this.map={numFmts:new s({tag:"numFmts",count:!0,childXform:new d}),fonts:new s({tag:"fonts",count:!0,childXform:new c,$:{"x14ac:knownFonts":1}}),fills:new s({tag:"fills",count:!0,childXform:new l}),borders:new s({tag:"borders",count:!0,childXform:new u}),cellStyleXfs:new s({tag:"cellStyleXfs",count:!0,childXform:new p}),cellXfs:new s({tag:"cellXfs",count:!0,childXform:new p({xfId:!0})}),dxfs:new s({tag:"dxfs",always:!0,count:!0,childXform:new f}),numFmt:new d,font:new c,fill:new l,border:new u,style:new p({xfId:!0}),cellStyles:m.STATIC_XFORMS.cellStyles,tableStyles:m.STATIC_XFORMS.tableStyles,extLst:m.STATIC_XFORMS.extLst},e&&this.init()}initIndex(){this.index={style:{},numFmt:{},numFmtNextId:164,font:{},border:{},fill:{}}}init(){this.model={styles:[],numFmts:[],fonts:[],borders:[],fills:[],dxfs:[]},this.initIndex(),this._addBorder({}),this._addStyle({numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}),this._addFill({type:"pattern",pattern:"none"}),this._addFill({type:"pattern",pattern:"gray125"}),this.weakMap=new WeakMap}render(e,t){t=t||this.model,e.openXml(i.StdDocAttributes),e.openNode("styleSheet",m.STYLESHEET_ATTRIBUTES),this.index?(t.numFmts&&t.numFmts.length&&(e.openNode("numFmts",{count:t.numFmts.length}),t.numFmts.forEach((t=>{e.writeXml(t)})),e.closeNode()),t.fonts.length||this._addFont({size:11,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}),e.openNode("fonts",{count:t.fonts.length,"x14ac:knownFonts":1}),t.fonts.forEach((t=>{e.writeXml(t)})),e.closeNode(),e.openNode("fills",{count:t.fills.length}),t.fills.forEach((t=>{e.writeXml(t)})),e.closeNode(),e.openNode("borders",{count:t.borders.length}),t.borders.forEach((t=>{e.writeXml(t)})),e.closeNode(),this.map.cellStyleXfs.render(e,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),e.openNode("cellXfs",{count:t.styles.length}),t.styles.forEach((t=>{e.writeXml(t)})),e.closeNode()):(this.map.numFmts.render(e,t.numFmts),this.map.fonts.render(e,t.fonts),this.map.fills.render(e,t.fills),this.map.borders.render(e,t.borders),this.map.cellStyleXfs.render(e,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),this.map.cellXfs.render(e,t.styles)),m.STATIC_XFORMS.cellStyles.render(e),this.map.dxfs.render(e,t.dxfs),m.STATIC_XFORMS.tableStyles.render(e),m.STATIC_XFORMS.extLst.render(e),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"styleSheet"===e.name?(this.initIndex(),!0):(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if("styleSheet"===e){this.model={};const e=(e,t)=>{t.model&&t.model.length&&(this.model[e]=t.model)};if(e("numFmts",this.map.numFmts),e("fonts",this.map.fonts),e("fills",this.map.fills),e("borders",this.map.borders),e("styles",this.map.cellXfs),e("dxfs",this.map.dxfs),this.index={model:[],numFmt:[]},this.model.numFmts){const e=this.index.numFmt;this.model.numFmts.forEach((t=>{e[t.id]=t.formatCode}))}return!1}return!0}addStyleModel(e,t){if(!e)return 0;if(this.model.fonts.length||this._addFont({size:11,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}),this.weakMap&&this.weakMap.has(e))return this.weakMap.get(e);const r={};if(t=t||n.ValueType.Number,e.numFmt)r.numFmtId=this._addNumFmtStr(e.numFmt);else switch(t){case n.ValueType.Number:r.numFmtId=this._addNumFmtStr("General");break;case n.ValueType.Date:r.numFmtId=this._addNumFmtStr("mm-dd-yy")}e.font&&(r.fontId=this._addFont(e.font)),e.border&&(r.borderId=this._addBorder(e.border)),e.fill&&(r.fillId=this._addFill(e.fill)),e.alignment&&(r.alignment=e.alignment),e.protection&&(r.protection=e.protection);const i=this._addStyle(r);return this.weakMap&&this.weakMap.set(e,i),i}getStyleModel(e){const t=this.model.styles[e];if(!t)return null;let r=this.index.model[e];if(r)return r;if(r=this.index.model[e]={},t.numFmtId){const e=this.index.numFmt[t.numFmtId]||d.getDefaultFmtCode(t.numFmtId);e&&(r.numFmt=e)}function n(e,t,n){if(n||0===n){const i=t[n];i&&(r[e]=i)}}return n("font",this.model.fonts,t.fontId),n("border",this.model.borders,t.borderId),n("fill",this.model.fills,t.fillId),t.alignment&&(r.alignment=t.alignment),t.protection&&(r.protection=t.protection),r}addDxfStyle(e){return e.numFmt&&(e.numFmtId=this._addNumFmtStr(e.numFmt)),this.model.dxfs.push(e),this.model.dxfs.length-1}getDxfStyle(e){return this.model.dxfs[e]}_addStyle(e){const t=this.map.style.toXml(e);let r=this.index.style[t];return void 0===r&&(r=this.index.style[t]=this.model.styles.length,this.model.styles.push(t)),r}_addNumFmtStr(e){let t=d.getDefaultFmtId(e);if(void 0!==t)return t;if(t=this.index.numFmt[e],void 0!==t)return t;t=this.index.numFmt[e]=164+this.model.numFmts.length;const r=this.map.numFmt.toXml({id:t,formatCode:e});return this.model.numFmts.push(r),t}_addFont(e){const t=this.map.font.toXml(e);let r=this.index.font[t];return void 0===r&&(r=this.index.font[t]=this.model.fonts.length,this.model.fonts.push(t)),r}_addBorder(e){const t=this.map.border.toXml(e);let r=this.index.border[t];return void 0===r&&(r=this.index.border[t]=this.model.borders.length,this.model.borders.push(t)),r}_addFill(e){const t=this.map.fill.toXml(e);let r=this.index.fill[t];return void 0===r&&(r=this.index.fill[t]=this.model.fills.length,this.model.fills.push(t)),r}}m.STYLESHEET_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"x14ac x16r2","xmlns:x14ac":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac","xmlns:x16r2":"http://schemas.microsoft.com/office/spreadsheetml/2015/02/main"},m.STATIC_XFORMS={cellStyles:new o({tag:"cellStyles",$:{count:1},c:[{tag:"cellStyle",$:{name:"Normal",xfId:0,builtinId:0}}]}),dxfs:new o({tag:"dxfs",$:{count:0}}),tableStyles:new o({tag:"tableStyles",$:{count:0,defaultTableStyle:"TableStyleMedium2",defaultPivotStyle:"PivotStyleLight16"}}),extLst:new o({tag:"extLst",c:[{tag:"ext",$:{uri:"{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}","xmlns:x14":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"},c:[{tag:"x14:slicerStyles",$:{defaultSlicerStyle:"SlicerStyleLight1"}}]},{tag:"ext",$:{uri:"{9260A510-F301-46a8-8635-F512D64BE5F5}","xmlns:x15":"http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"},c:[{tag:"x15:timelineStyles",$:{defaultTimelineStyle:"TimeSlicerStyleLight1"}}]}]})};m.Mock=class extends m{constructor(){super(),this.model={styles:[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}],numFmts:[],fonts:[{size:11,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}],borders:[{}],fills:[{type:"pattern",pattern:"none"},{type:"pattern",pattern:"gray125"}]}}parseStream(e){return e.autodrain(),Promise.resolve()}addStyleModel(e,t){return t===n.ValueType.Date?this.dateStyleId:0}get dateStyleId(){if(!this._dateStyleId){const e={numFmtId:d.getDefaultFmtId("mm-dd-yy")};this._dateStyleId=this.model.styles.length,this.model.styles.push(e)}return this._dateStyleId}getStyleModel(){return{}}},e.exports=m},15631:(e,t,r)=>{const n=r(87242);class i extends n{constructor(e){super(),this.model=e}get tag(){return"u"}render(e,t){if(!0===(t=t||this.model))e.leafNode("u");else{const r=i.Attributes[t];r&&e.leafNode("u",r)}}parseOpen(e){"u"===e.name&&(this.model=e.attributes.val||!0)}parseText(){}parseClose(){return!1}}i.Attributes={single:{},double:{val:"double"},singleAccounting:{val:"singleAccounting"},doubleAccounting:{val:"doubleAccounting"}},e.exports=i},90290:(e,t,r)=>{const n=r(87242),i=r(24089);e.exports=class extends n{constructor(){super(),this.map={filterColumn:new i}}get tag(){return"autoFilter"}prepare(e){e.columns.forEach(((e,t)=>{this.map.filterColumn.prepare(e,{index:t})}))}render(e,t){return e.openNode(this.tag,{ref:t.autoFilterRef}),t.columns.forEach((t=>{this.map.filterColumn.render(e,t)})),e.closeNode(),!0}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)return this.model={autoFilterRef:e.attributes.ref,columns:[]},!0;if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.columns.push(this.parser.model),this.parser=void 0),!0;if(e===this.tag)return!1;throw new Error(`Unexpected xml node in parseClose: ${e}`)}}},61238:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"customFilter"}render(e,t){e.leafNode(this.tag,{val:t.val,operator:t.operator})}parseOpen(e){return e.name===this.tag&&(this.model={val:e.attributes.val,operator:e.attributes.operator},!0)}parseText(){}parseClose(){return!1}}},24089:(e,t,r)=>{const n=r(87242),i=r(62447),a=r(61238),o=r(59644);e.exports=class extends n{constructor(){super(),this.map={customFilters:new i({tag:"customFilters",count:!1,empty:!0,childXform:new a}),filters:new i({tag:"filters",count:!1,empty:!0,childXform:new o})}}get tag(){return"filterColumn"}prepare(e,t){e.colId=t.index.toString()}render(e,t){return t.customFilters?(e.openNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?"0":"1"}),this.map.customFilters.render(e,t.customFilters),e.closeNode(),!0):(e.leafNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?"0":"1"}),!0)}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;const{attributes:t}=e;if(e.name===this.tag)return this.model={filterButton:"0"===t.hiddenButton},!0;if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.customFilters=this.map.customFilters.model,!1)}}},59644:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"filter"}render(e,t){e.leafNode(this.tag,{val:t.val})}parseOpen(e){return e.name===this.tag&&(this.model={val:e.attributes.val},!0)}parseText(){}parseClose(){return!1}}},57715:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"tableColumn"}prepare(e,t){e.id=t.index+1}render(e,t){return e.leafNode(this.tag,{id:t.id.toString(),name:t.name,totalsRowLabel:t.totalsRowLabel,totalsRowFunction:t.totalsRowFunction,dxfId:t.dxfId}),!0}parseOpen(e){if(e.name===this.tag){const{attributes:t}=e;return this.model={name:t.name,totalsRowLabel:t.totalsRowLabel,totalsRowFunction:t.totalsRowFunction,dxfId:t.dxfId},!0}return!1}parseText(){}parseClose(){return!1}}},16949:(e,t,r)=>{const n=r(87242);e.exports=class extends n{get tag(){return"tableStyleInfo"}render(e,t){return e.leafNode(this.tag,{name:t.theme?t.theme:void 0,showFirstColumn:t.showFirstColumn?"1":"0",showLastColumn:t.showLastColumn?"1":"0",showRowStripes:t.showRowStripes?"1":"0",showColumnStripes:t.showColumnStripes?"1":"0"}),!0}parseOpen(e){if(e.name===this.tag){const{attributes:t}=e;return this.model={theme:t.name?t.name:null,showFirstColumn:"1"===t.showFirstColumn,showLastColumn:"1"===t.showLastColumn,showRowStripes:"1"===t.showRowStripes,showColumnStripes:"1"===t.showColumnStripes},!0}return!1}parseText(){}parseClose(){return!1}}},71998:(e,t,r)=>{const n=r(12141),i=r(87242),a=r(62447),o=r(90290),s=r(57715),c=r(16949);class l extends i{constructor(){super(),this.map={autoFilter:new o,tableColumns:new a({tag:"tableColumns",count:!0,empty:!0,childXform:new s}),tableStyleInfo:new c}}prepare(e,t){this.map.autoFilter.prepare(e),this.map.tableColumns.prepare(e.columns,t)}get tag(){return"table"}render(e,t){e.openXml(n.StdDocAttributes),e.openNode(this.tag,{...l.TABLE_ATTRIBUTES,id:t.id,name:t.name,displayName:t.displayName||t.name,ref:t.tableRef,totalsRowCount:t.totalsRow?"1":void 0,totalsRowShown:t.totalsRow?void 0:"1",headerRowCount:t.headerRow?"1":"0"}),this.map.autoFilter.render(e,t),this.map.tableColumns.render(e,t.columns),this.map.tableStyleInfo.render(e,t.style),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;const{name:t,attributes:r}=e;if(t===this.tag)this.reset(),this.model={name:r.name,displayName:r.displayName||r.name,tableRef:r.ref,totalsRow:"1"===r.totalsRowCount,headerRow:"1"===r.headerRowCount};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.columns=this.map.tableColumns.model,this.map.autoFilter.model&&(this.model.autoFilterRef=this.map.autoFilter.model.autoFilterRef,this.map.autoFilter.model.columns.forEach(((e,t)=>{this.model.columns[t].filterButton=e.filterButton}))),this.model.style=this.map.tableStyleInfo.model,!1)}reconcile(e,t){e.columns.forEach((e=>{void 0!==e.dxfId&&(e.style=t.styles.getDxfStyle(e.dxfId))}))}}l.TABLE_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"xr xr3","xmlns:xr":"http://schemas.microsoft.com/office/spreadsheetml/2014/revision","xmlns:xr3":"http://schemas.microsoft.com/office/spreadsheetml/2016/revision3"},e.exports=l},59276:(e,t,r)=>{const n=r(79896),i=r(58833),{PassThrough:a}=r(34198),o=r(1495),s=r(87137),c=r(67032),l=r(12141),{bufferToString:u}=r(50323),d=r(17647),p=r(1298),f=r(96242),m=r(61724),g=r(40814),_=r(15888),h=r(22519),y=r(59629),v=r(66386),b=r(71998),k=r(10959),x=r(43316),E=r(46046);class S{constructor(e){this.workbook=e}async readFile(e,t){if(!await c.fs.exists(e))throw new Error(`File not found: ${e}`);const r=n.createReadStream(e);try{const e=await this.read(r,t);return r.close(),e}catch(e){throw r.close(),e}}parseRels(e){return(new m).parseStream(e)}parseWorkbook(e){return(new h).parseStream(e)}parseSharedStrings(e){return(new f).parseStream(e)}reconcile(e,t){const r=new h,n=new y(t),i=new v,a=new b;r.reconcile(e);const o={media:e.media,mediaIndex:e.mediaIndex};Object.keys(e.drawings).forEach((t=>{const r=e.drawings[t],n=e.drawingRels[t];n&&(o.rels=n.reduce(((e,t)=>(e[t.Id]=t,e)),{}),(r.anchors||[]).forEach((e=>{const t=e.picture&&e.picture.hyperlinks;t&&o.rels[t.rId]&&(t.hyperlink=o.rels[t.rId].Target,delete t.rId)})),i.reconcile(r,o))}));const s={styles:e.styles};Object.values(e.tables).forEach((e=>{a.reconcile(e,s)}));const c={styles:e.styles,sharedStrings:e.sharedStrings,media:e.media,mediaIndex:e.mediaIndex,date1904:e.properties&&e.properties.date1904,drawings:e.drawings,comments:e.comments,tables:e.tables,vmlDrawings:e.vmlDrawings};e.worksheets.forEach((t=>{t.relationships=e.worksheetRels[t.sheetNo],n.reconcile(t,c)})),delete e.worksheetHash,delete e.worksheetRels,delete e.globalRels,delete e.sharedStrings,delete e.workbookRels,delete e.sheetDefs,delete e.styles,delete e.mediaIndex,delete e.drawings,delete e.drawingRels,delete e.vmlDrawings}async _processWorksheetEntry(e,t,r,n,i){const a=new y(n),o=await a.parseStream(e);o.sheetNo=r,t.worksheetHash[i]=o,t.worksheets.push(o)}async _processCommentEntry(e,t,r){const n=new k,i=await n.parseStream(e);t.comments[`../${r}.xml`]=i}async _processTableEntry(e,t,r){const n=new b,i=await n.parseStream(e);t.tables[`../tables/${r}.xml`]=i}async _processWorksheetRelsEntry(e,t,r){const n=new m,i=await n.parseStream(e);t.worksheetRels[r]=i}async _processMediaEntry(e,t,r){const n=r.lastIndexOf(".");if(n>=1){const i=r.substr(n+1),a=r.substr(0,n);await new Promise(((n,o)=>{const c=new s;c.on("finish",(()=>{t.mediaIndex[r]=t.media.length,t.mediaIndex[a]=t.media.length;const e={type:"image",name:a,extension:i,buffer:c.toBuffer()};t.media.push(e),n()})),e.on("error",(e=>{o(e)})),e.pipe(c)}))}}async _processDrawingEntry(e,t,r){const n=new v,i=await n.parseStream(e);t.drawings[r]=i}async _processDrawingRelsEntry(e,t,r){const n=new m,i=await n.parseStream(e);t.drawingRels[r]=i}async _processVmlDrawingEntry(e,t,r){const n=new x,i=await n.parseStream(e);t.vmlDrawings[`../drawings/${r}.vml`]=i}async _processThemeEntry(e,t,r){await new Promise(((n,i)=>{const a=new s;e.on("error",i),a.on("error",i),a.on("finish",(()=>{t.themes[r]=a.read().toString(),n()})),e.pipe(a)}))}createInputStream(){throw new Error("`XLSX#createInputStream` is deprecated. You should use `XLSX#read` instead. This method will be removed in version 5.0. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md")}async read(e,t){!e[Symbol.asyncIterator]&&e.pipe&&(e=e.pipe(new a));const r=[];for await(const t of e)r.push(t);return this.load(Buffer.concat(r),t)}async load(e,t){let r;r=t&&t.base64?Buffer.from(e.toString(),"base64"):e;const n={worksheets:[],worksheetHash:{},worksheetRels:[],themes:{},media:[],mediaIndex:{},drawings:{},drawingRels:{},comments:{},tables:{},vmlDrawings:{}},o=await i.loadAsync(r);for(const e of Object.values(o.files))if(!e.dir){let r,i=e.name;if("/"===i[0]&&(i=i.substr(1)),i.match(/xl\/media\//)||i.match(/xl\/theme\/([a-zA-Z0-9]+)[.]xml/))r=new a,r.write(await e.async("nodebuffer"));else{let t;r=new a({writableObjectMode:!0,readableObjectMode:!0}),t=process.browser?u(await e.async("nodebuffer")):await e.async("string");const n=16384;for(let e=0;e<t.length;e+=n)r.write(t.substring(e,e+n))}switch(r.end(),i){case"_rels/.rels":n.globalRels=await this.parseRels(r);break;case"xl/workbook.xml":{const e=await this.parseWorkbook(r);n.sheets=e.sheets,n.definedNames=e.definedNames,n.views=e.views,n.properties=e.properties,n.calcProperties=e.calcProperties;break}case"xl/_rels/workbook.xml.rels":n.workbookRels=await this.parseRels(r);break;case"xl/sharedStrings.xml":n.sharedStrings=new f,await n.sharedStrings.parseStream(r);break;case"xl/styles.xml":n.styles=new d,await n.styles.parseStream(r);break;case"docProps/app.xml":{const e=new _,t=await e.parseStream(r);n.company=t.company,n.manager=t.manager;break}case"docProps/core.xml":{const e=new p,t=await e.parseStream(r);Object.assign(n,t);break}default:{let e=i.match(/xl\/worksheets\/sheet(\d+)[.]xml/);if(e){await this._processWorksheetEntry(r,n,e[1],t,i);break}if(e=i.match(/xl\/worksheets\/_rels\/sheet(\d+)[.]xml.rels/),e){await this._processWorksheetRelsEntry(r,n,e[1]);break}if(e=i.match(/xl\/theme\/([a-zA-Z0-9]+)[.]xml/),e){await this._processThemeEntry(r,n,e[1]);break}if(e=i.match(/xl\/media\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/),e){await this._processMediaEntry(r,n,e[1]);break}if(e=i.match(/xl\/drawings\/([a-zA-Z0-9]+)[.]xml/),e){await this._processDrawingEntry(r,n,e[1]);break}if(e=i.match(/xl\/(comments\d+)[.]xml/),e){await this._processCommentEntry(r,n,e[1]);break}if(e=i.match(/xl\/tables\/(table\d+)[.]xml/),e){await this._processTableEntry(r,n,e[1]);break}if(e=i.match(/xl\/drawings\/_rels\/([a-zA-Z0-9]+)[.]xml[.]rels/),e){await this._processDrawingRelsEntry(r,n,e[1]);break}if(e=i.match(/xl\/drawings\/(vmlDrawing\d+)[.]vml/),e){await this._processVmlDrawingEntry(r,n,e[1]);break}}}}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async addMedia(e,t){await Promise.all(t.media.map((async t=>{if("image"===t.type){const r=`xl/media/${t.name}.${t.extension}`;if(t.filename){const i=await function(e,t){return new Promise(((r,i)=>{n.readFile(e,t,((e,t)=>{e?i(e):r(t)}))}))}(t.filename);return e.append(i,{name:r})}if(t.buffer)return e.append(t.buffer,{name:r});if(t.base64){const n=t.base64,i=n.substring(n.indexOf(",")+1);return e.append(i,{name:r,base64:!0})}}throw new Error("Unsupported media")})))}addDrawings(e,t){const r=new v,n=new m;t.worksheets.forEach((t=>{const{drawing:i}=t;if(i){r.prepare(i,{});let t=r.toXml(i);e.append(t,{name:`xl/drawings/${i.name}.xml`}),t=n.toXml(i.rels),e.append(t,{name:`xl/drawings/_rels/${i.name}.xml.rels`})}}))}addTables(e,t){const r=new b;t.worksheets.forEach((t=>{const{tables:n}=t;n.forEach((t=>{r.prepare(t,{});const n=r.toXml(t);e.append(n,{name:`xl/tables/${t.target}`})}))}))}async addContentTypes(e,t){const r=(new g).toXml(t);e.append(r,{name:"[Content_Types].xml"})}async addApp(e,t){const r=(new _).toXml(t);e.append(r,{name:"docProps/app.xml"})}async addCore(e,t){const r=new p;e.append(r.toXml(t),{name:"docProps/core.xml"})}async addThemes(e,t){const r=t.themes||{theme1:E};Object.keys(r).forEach((t=>{const n=r[t],i=`xl/theme/${t}.xml`;e.append(n,{name:i})}))}async addOfficeRels(e){const t=(new m).toXml([{Id:"rId1",Type:S.RelType.OfficeDocument,Target:"xl/workbook.xml"},{Id:"rId2",Type:S.RelType.CoreProperties,Target:"docProps/core.xml"},{Id:"rId3",Type:S.RelType.ExtenderProperties,Target:"docProps/app.xml"}]);e.append(t,{name:"_rels/.rels"})}async addWorkbookRels(e,t){let r=1;const n=[{Id:"rId"+r++,Type:S.RelType.Styles,Target:"styles.xml"},{Id:"rId"+r++,Type:S.RelType.Theme,Target:"theme/theme1.xml"}];t.sharedStrings.count&&n.push({Id:"rId"+r++,Type:S.RelType.SharedStrings,Target:"sharedStrings.xml"}),t.worksheets.forEach((e=>{e.rId="rId"+r++,n.push({Id:e.rId,Type:S.RelType.Worksheet,Target:`worksheets/sheet${e.id}.xml`})}));const i=(new m).toXml(n);e.append(i,{name:"xl/_rels/workbook.xml.rels"})}async addSharedStrings(e,t){t.sharedStrings&&t.sharedStrings.count&&e.append(t.sharedStrings.xml,{name:"xl/sharedStrings.xml"})}async addStyles(e,t){const{xml:r}=t.styles;r&&e.append(r,{name:"xl/styles.xml"})}async addWorkbook(e,t){const r=new h;e.append(r.toXml(t),{name:"xl/workbook.xml"})}async addWorksheets(e,t){const r=new y,n=new m,i=new k,a=new x;t.worksheets.forEach((t=>{let o=new l;r.render(o,t),e.append(o.xml,{name:`xl/worksheets/sheet${t.id}.xml`}),t.rels&&t.rels.length&&(o=new l,n.render(o,t.rels),e.append(o.xml,{name:`xl/worksheets/_rels/sheet${t.id}.xml.rels`})),t.comments.length>0&&(o=new l,i.render(o,t),e.append(o.xml,{name:`xl/comments${t.id}.xml`}),o=new l,a.render(o,t),e.append(o.xml,{name:`xl/drawings/vmlDrawing${t.id}.vml`}))}))}_finalize(e){return new Promise(((t,r)=>{e.on("finish",(()=>{t(this)})),e.on("error",r),e.finalize()}))}prepareModel(e,t){e.creator=e.creator||"ExcelJS",e.lastModifiedBy=e.lastModifiedBy||"ExcelJS",e.created=e.created||new Date,e.modified=e.modified||new Date,e.useSharedStrings=void 0===t.useSharedStrings||t.useSharedStrings,e.useStyles=void 0===t.useStyles||t.useStyles,e.sharedStrings=new f,e.styles=e.useStyles?new d(!0):new d.Mock;const r=new h,n=new y;r.prepare(e);const i={sharedStrings:e.sharedStrings,styles:e.styles,date1904:e.properties.date1904,drawingsCount:0,media:e.media};i.drawings=e.drawings=[],i.commentRefs=e.commentRefs=[];let a=0;e.tables=[],e.worksheets.forEach((t=>{t.tables.forEach((t=>{a++,t.target=`table${a}.xml`,t.id=a,e.tables.push(t)})),n.prepare(t,i)}))}async write(e,t){t=t||{};const{model:r}=this.workbook,n=new o.ZipWriter(t.zip);return n.pipe(e),this.prepareModel(r,t),await this.addContentTypes(n,r),await this.addOfficeRels(n,r),await this.addWorkbookRels(n,r),await this.addWorksheets(n,r),await this.addSharedStrings(n,r),await this.addDrawings(n,r),await this.addTables(n,r),await Promise.all([this.addThemes(n,r),this.addStyles(n,r)]),await this.addMedia(n,r),await Promise.all([this.addApp(n,r),this.addCore(n,r)]),await this.addWorkbook(n,r),this._finalize(n)}writeFile(e,t){const r=n.createWriteStream(e);return new Promise(((e,n)=>{r.on("finish",(()=>{e()})),r.on("error",(e=>{n(e)})),this.write(r,t).then((()=>{r.end()})).catch((e=>{n(e)}))}))}async writeBuffer(e){const t=new s;return await this.write(t,e),t.read()}}S.RelType=r(71745),e.exports=S},46046:e=>{e.exports='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"> <a:shade val="95000"/> <a:satMod val="105000"/> </a:schemeClr> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <a:scene3d> <a:camera prst="orthographicFront"> <a:rot lat="0" lon="0" rev="0"/> </a:camera> <a:lightRig rig="threePt" dir="t"> <a:rot lat="0" lon="0" rev="1200000"/> </a:lightRig> </a:scene3d> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="1"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="3"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="2"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="lt1"/> </a:fontRef> </a:style> </a:spDef> <a:lnDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="2"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="0"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="1"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="tx1"/> </a:fontRef> </a:style> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>'},67017:(e,t,r)=>{var n=r(63735),i=r(16928),a=r(16308),o=r(40209),s=r(9897),c=r(79001),l=r(53577),u=e.exports={},d=/[\/\\]/g;u.exists=function(){var e=i.join.apply(i,arguments);return n.existsSync(e)},u.expand=function(...e){var t=c(e[0])?e.shift():{},r=Array.isArray(e[0])?e[0]:e;if(0===r.length)return[];var u=function(e,t){var r=[];return a(e).forEach((function(e){var n=0===e.indexOf("!");n&&(e=e.slice(1));var i=t(e);r=n?o(r,i):s(r,i)})),r}(r,(function(e){return l.sync(e,t)}));return t.filter&&(u=u.filter((function(e){e=i.join(t.cwd||"",e);try{return"function"==typeof t.filter?t.filter(e):n.statSync(e)[t.filter]()}catch(e){return!1}}))),u},u.expandMapping=function(e,t,r){r=Object.assign({rename:function(e,t){return i.join(e||"",t)}},r);var n=[],a={};return u.expand(r,e).forEach((function(e){var o=e;r.flatten&&(o=i.basename(o)),r.ext&&(o=o.replace(/(\.[^\/]*)?$/,r.ext));var s=r.rename(t,o,r);r.cwd&&(e=i.join(r.cwd,e)),s=s.replace(d,"/"),e=e.replace(d,"/"),a[s]?a[s].src.push(e):(n.push({src:[e],dest:s}),a[s]=n[n.length-1])})),n},u.normalizeFilesArray=function(e){var t=[];return e.forEach((function(e){("src"in e||"dest"in e)&&t.push(e)})),0===t.length?[]:t=_(t).chain().forEach((function(e){"src"in e&&e.src&&(Array.isArray(e.src)?e.src=a(e.src):e.src=[e.src])})).map((function(e){var t=Object.assign({},e);if(delete t.src,delete t.dest,e.expand)return u.expandMapping(e.src,e.dest,t).map((function(t){var r=Object.assign({},e);return r.orig=Object.assign({},e),r.src=t.src,r.dest=t.dest,["expand","cwd","flatten","rename","ext"].forEach((function(e){delete r[e]})),r}));var r=Object.assign({},e);return r.orig=Object.assign({},e),"src"in r&&Object.defineProperty(r,"src",{enumerable:!0,get:function r(){var n;return"result"in r||(n=e.src,n=Array.isArray(n)?a(n):[n],r.result=u.expand(t,n)),r.result}}),"dest"in r&&(r.dest=e.dest),r})).flatten().value()}},5955:(e,t,r)=>{var n=r(63735),i=r(16928),a=(r(39023),r(85)),o=r(14100),s=r(71676),c=r(2203).Stream,l=r(85756).PassThrough,u=e.exports={};u.file=r(67017),u.collectStream=function(e,t){var r=[],n=0;e.on("error",t),e.on("data",(function(e){r.push(e),n+=e.length})),e.on("end",(function(){var e=new Buffer(n),i=0;r.forEach((function(t){t.copy(e,i),i+=t.length})),t(null,e)}))},u.dateify=function(e){return(e=e||new Date)instanceof Date||(e="string"==typeof e?new Date(e):new Date),e},u.defaults=function(e,t,r){var n=arguments;return n[0]=n[0]||{},s(...n)},u.isStream=function(e){return e instanceof c},u.lazyReadStream=function(e){return new a.Readable((function(){return n.createReadStream(e)}))},u.normalizeInputSource=function(e){if(null===e)return new Buffer(0);if("string"==typeof e)return new Buffer(e);if(u.isStream(e)&&!e._readableState){var t=new l;return e.pipe(t),t}return e},u.sanitizePath=function(e){return o(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,"")},u.trailingSlashIt=function(e){return"/"!==e.slice(-1)?e+"/":e},u.unixifyPath=function(e){return o(e,!1).replace(/^\w+:/,"")},u.walkdir=function(e,t,r){var a=[];"function"==typeof t&&(r=t,t=e),n.readdir(e,(function(o,s){var c,l,d=0;if(o)return r(o);!function o(){if(!(c=s[d++]))return r(null,a);l=i.join(e,c),n.stat(l,(function(e,r){a.push({path:l,relative:i.relative(t,l).replace(/\\/g,"/"),stats:r}),r&&r.isDirectory()?u.walkdir(l,t,(function(e,t){t.forEach((function(e){a.push(e)})),o()})):o()}))}()}))}},89196:(e,t,r)=>{"use strict";var n=r(33225),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(15622));a.inherits=r(72017);var o=r(14418),s=r(43462);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},61526:(e,t,r)=>{"use strict";e.exports=a;var n=r(42540),i=Object.create(r(15622));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(72017),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},14418:(e,t,r)=>{"use strict";var n=r(33225);e.exports=y;var i,a=r(64634);y.ReadableState=h;r(24434).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(15426),c=r(92861).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(15622));u.inherits=r(72017);var d=r(39023),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(78740),g=r(99426);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(89196));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(83141).I),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(89196),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,E(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&E(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(83141).I),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(w,e,t))}function w(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):E(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&E(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},42540:(e,t,r)=>{"use strict";e.exports=o;var n=r(89196),i=Object.create(r(15622));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(72017),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},43462:(e,t,r)=>{"use strict";var n=r(33225);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(15622));s.inherits=r(72017);var c={deprecate:r(27983)},l=r(15426),u=r(92861).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(99426);function m(){}function g(e,t){a=a||r(89196),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(89196),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},78740:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=r(39023);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},99426:(e,t,r)=>{"use strict";var n=r(33225);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},15426:(e,t,r)=>{e.exports=r(2203)},85756:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(14418)).Stream=n||t,t.Readable=t,t.Writable=r(43462),t.Duplex=r(89196),t.Transform=r(42540),t.PassThrough=r(61526))},10711:(e,t,r)=>{ -/** - * Archiver Vending - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(28064),i={},a=function(e,t){return a.create(e,t)};a.create=function(e,t){if(i[e]){var r=new n(e,t);return r.setFormat(e),r.setModule(new i[e](t)),r}throw new Error("create("+e+"): format not registered")},a.registerFormat=function(e,t){if(i[e])throw new Error("register("+e+"): format already registered");if("function"!=typeof t)throw new Error("register("+e+"): format module invalid");if("function"!=typeof t.prototype.append||"function"!=typeof t.prototype.finalize)throw new Error("register("+e+"): format module missing methods");i[e]=t},a.isRegisteredFormat=function(e){return!!i[e]},a.registerFormat("zip",r(50903)),a.registerFormat("tar",r(14815)),a.registerFormat("json",r(71252)),e.exports=a},28064:(e,t,r)=>{ -/** - * Archiver Core - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(79896),i=r(76965),a=r(22268),o=r(16928),s=r(5955),c=r(39023).inherits,l=r(3253),u=r(34198).Transform,d="win32"===process.platform,p=function(e,t){if(!(this instanceof p))return new p(e,t);"string"!=typeof e&&(t=e,e="zip"),t=this.options=s.defaults(t,{highWaterMark:1048576,statConcurrency:4}),u.call(this,t),this._format=!1,this._module=!1,this._pending=0,this._pointer=0,this._entriesCount=0,this._entriesProcessedCount=0,this._fsEntriesTotalBytes=0,this._fsEntriesProcessedBytes=0,this._queue=a.queue(this._onQueueTask.bind(this),1),this._queue.drain(this._onQueueDrain.bind(this)),this._statQueue=a.queue(this._onStatQueueTask.bind(this),t.statConcurrency),this._statQueue.drain(this._onQueueDrain.bind(this)),this._state={aborted:!1,finalize:!1,finalizing:!1,finalized:!1,modulePiped:!1},this._streams=[]};c(p,u),p.prototype._abort=function(){this._state.aborted=!0,this._queue.kill(),this._statQueue.kill(),this._queue.idle()&&this._shutdown()},p.prototype._append=function(e,t){var r={source:null,filepath:e};(t=t||{}).name||(t.name=e),t.sourcePath=e,r.data=t,this._entriesCount++,t.stats&&t.stats instanceof n.Stats?(r=this._updateQueueTaskWithStats(r,t.stats))&&(t.stats.size&&(this._fsEntriesTotalBytes+=t.stats.size),this._queue.push(r)):this._statQueue.push(r)},p.prototype._finalize=function(){this._state.finalizing||this._state.finalized||this._state.aborted||(this._state.finalizing=!0,this._moduleFinalize(),this._state.finalizing=!1,this._state.finalized=!0)},p.prototype._maybeFinalize=function(){return!(this._state.finalizing||this._state.finalized||this._state.aborted)&&(!!(this._state.finalize&&0===this._pending&&this._queue.idle()&&this._statQueue.idle())&&(this._finalize(),!0))},p.prototype._moduleAppend=function(e,t,r){this._state.aborted?r():this._module.append(e,t,function(e){if(this._task=null,this._state.aborted)this._shutdown();else{if(e)return this.emit("error",e),void setImmediate(r);this.emit("entry",t),this._entriesProcessedCount++,t.stats&&t.stats.size&&(this._fsEntriesProcessedBytes+=t.stats.size),this.emit("progress",{entries:{total:this._entriesCount,processed:this._entriesProcessedCount},fs:{totalBytes:this._fsEntriesTotalBytes,processedBytes:this._fsEntriesProcessedBytes}}),setImmediate(r)}}.bind(this))},p.prototype._moduleFinalize=function(){"function"==typeof this._module.finalize?this._module.finalize():"function"==typeof this._module.end?this._module.end():this.emit("error",new l("NOENDMETHOD"))},p.prototype._modulePipe=function(){this._module.on("error",this._onModuleError.bind(this)),this._module.pipe(this),this._state.modulePiped=!0},p.prototype._moduleSupports=function(e){return!(!this._module.supports||!this._module.supports[e])&&this._module.supports[e]},p.prototype._moduleUnpipe=function(){this._module.unpipe(this),this._state.modulePiped=!1},p.prototype._normalizeEntryData=function(e,t){e=s.defaults(e,{type:"file",name:null,date:null,mode:null,prefix:null,sourcePath:null,stats:!1}),t&&!1===e.stats&&(e.stats=t);var r="directory"===e.type;return e.name&&("string"==typeof e.prefix&&""!==e.prefix&&(e.name=e.prefix+"/"+e.name,e.prefix=null),e.name=s.sanitizePath(e.name),"symlink"!==e.type&&"/"===e.name.slice(-1)?(r=!0,e.type="directory"):r&&(e.name+="/")),"number"==typeof e.mode?e.mode&=d?511:4095:e.stats&&null===e.mode?(e.mode=d?511&e.stats.mode:4095&e.stats.mode,d&&r&&(e.mode=493)):null===e.mode&&(e.mode=r?493:420),e.stats&&null===e.date?e.date=e.stats.mtime:e.date=s.dateify(e.date),e},p.prototype._onModuleError=function(e){this.emit("error",e)},p.prototype._onQueueDrain=function(){this._state.finalizing||this._state.finalized||this._state.aborted||this._state.finalize&&0===this._pending&&this._queue.idle()&&this._statQueue.idle()&&this._finalize()},p.prototype._onQueueTask=function(e,t){var r=()=>{e.data.callback&&e.data.callback(),t()};this._state.finalizing||this._state.finalized||this._state.aborted?r():(this._task=e,this._moduleAppend(e.source,e.data,r))},p.prototype._onStatQueueTask=function(e,t){this._state.finalizing||this._state.finalized||this._state.aborted?t():n.lstat(e.filepath,function(r,n){if(this._state.aborted)setImmediate(t);else{if(r)return this._entriesCount--,this.emit("warning",r),void setImmediate(t);(e=this._updateQueueTaskWithStats(e,n))&&(n.size&&(this._fsEntriesTotalBytes+=n.size),this._queue.push(e)),setImmediate(t)}}.bind(this))},p.prototype._shutdown=function(){this._moduleUnpipe(),this.end()},p.prototype._transform=function(e,t,r){e&&(this._pointer+=e.length),r(null,e)},p.prototype._updateQueueTaskWithStats=function(e,t){if(t.isFile())e.data.type="file",e.data.sourceType="stream",e.source=s.lazyReadStream(e.filepath);else if(t.isDirectory()&&this._moduleSupports("directory"))e.data.name=s.trailingSlashIt(e.data.name),e.data.type="directory",e.data.sourcePath=s.trailingSlashIt(e.filepath),e.data.sourceType="buffer",e.source=Buffer.concat([]);else{if(!t.isSymbolicLink()||!this._moduleSupports("symlink"))return t.isDirectory()?this.emit("warning",new l("DIRECTORYNOTSUPPORTED",e.data)):t.isSymbolicLink()?this.emit("warning",new l("SYMLINKNOTSUPPORTED",e.data)):this.emit("warning",new l("ENTRYNOTSUPPORTED",e.data)),null;var r=n.readlinkSync(e.filepath),i=o.dirname(e.filepath);e.data.type="symlink",e.data.linkname=o.relative(i,o.resolve(i,r)),e.data.sourceType="buffer",e.source=Buffer.concat([])}return e.data=this._normalizeEntryData(e.data,t),e},p.prototype.abort=function(){return this._state.aborted||this._state.finalized||this._abort(),this},p.prototype.append=function(e,t){if(this._state.finalize||this._state.aborted)return this.emit("error",new l("QUEUECLOSED")),this;if("string"!=typeof(t=this._normalizeEntryData(t)).name||0===t.name.length)return this.emit("error",new l("ENTRYNAMEREQUIRED")),this;if("directory"===t.type&&!this._moduleSupports("directory"))return this.emit("error",new l("DIRECTORYNOTSUPPORTED",{name:t.name})),this;if(e=s.normalizeInputSource(e),Buffer.isBuffer(e))t.sourceType="buffer";else{if(!s.isStream(e))return this.emit("error",new l("INPUTSTEAMBUFFERREQUIRED",{name:t.name})),this;t.sourceType="stream"}return this._entriesCount++,this._queue.push({data:t,source:e}),this},p.prototype.directory=function(e,t,r){if(this._state.finalize||this._state.aborted)return this.emit("error",new l("QUEUECLOSED")),this;if("string"!=typeof e||0===e.length)return this.emit("error",new l("DIRECTORYDIRPATHREQUIRED")),this;this._pending++,!1===t?t="":"string"!=typeof t&&(t=e);var n=!1;"function"==typeof r?(n=r,r={}):"object"!=typeof r&&(r={});var a=i(e,{stat:!0,dot:!0});return a.on("error",function(e){this.emit("error",e)}.bind(this)),a.on("match",function(i){a.pause();var o=!1,s=Object.assign({},r);s.name=i.relative,s.prefix=t,s.stats=i.stat,s.callback=a.resume.bind(a);try{if(n)if(!1===(s=n(s)))o=!0;else if("object"!=typeof s)throw new l("DIRECTORYFUNCTIONINVALIDDATA",{dirpath:e})}catch(e){return void this.emit("error",e)}o?a.resume():this._append(i.absolute,s)}.bind(this)),a.on("end",function(){this._pending--,this._maybeFinalize()}.bind(this)),this},p.prototype.file=function(e,t){return this._state.finalize||this._state.aborted?(this.emit("error",new l("QUEUECLOSED")),this):"string"!=typeof e||0===e.length?(this.emit("error",new l("FILEFILEPATHREQUIRED")),this):(this._append(e,t),this)},p.prototype.glob=function(e,t,r){this._pending++,t=s.defaults(t,{stat:!0,pattern:e});var n=i(t.cwd||".",t);return n.on("error",function(e){this.emit("error",e)}.bind(this)),n.on("match",function(e){n.pause();var t=Object.assign({},r);t.callback=n.resume.bind(n),t.stats=e.stat,t.name=e.relative,this._append(e.absolute,t)}.bind(this)),n.on("end",function(){this._pending--,this._maybeFinalize()}.bind(this)),this},p.prototype.finalize=function(){if(this._state.aborted){var e=new l("ABORTED");return this.emit("error",e),Promise.reject(e)}if(this._state.finalize){var t=new l("FINALIZING");return this.emit("error",t),Promise.reject(t)}this._state.finalize=!0,0===this._pending&&this._queue.idle()&&this._statQueue.idle()&&this._finalize();var r=this;return new Promise((function(e,t){var n;r._module.on("end",(function(){n||e()})),r._module.on("error",(function(e){n=!0,t(e)}))}))},p.prototype.setFormat=function(e){return this._format?(this.emit("error",new l("FORMATSET")),this):(this._format=e,this)},p.prototype.setModule=function(e){return this._state.aborted?(this.emit("error",new l("ABORTED")),this):this._state.module?(this.emit("error",new l("MODULESET")),this):(this._module=e,this._modulePipe(),this)},p.prototype.symlink=function(e,t,r){if(this._state.finalize||this._state.aborted)return this.emit("error",new l("QUEUECLOSED")),this;if("string"!=typeof e||0===e.length)return this.emit("error",new l("SYMLINKFILEPATHREQUIRED")),this;if("string"!=typeof t||0===t.length)return this.emit("error",new l("SYMLINKTARGETREQUIRED",{filepath:e})),this;if(!this._moduleSupports("symlink"))return this.emit("error",new l("SYMLINKNOTSUPPORTED",{filepath:e})),this;var n={type:"symlink"};return n.name=e.replace(/\\/g,"/"),n.linkname=t.replace(/\\/g,"/"),n.sourceType="buffer","number"==typeof r&&(n.mode=r),this._entriesCount++,this._queue.push({data:n,source:Buffer.concat([])}),this},p.prototype.pointer=function(){return this._pointer},p.prototype.use=function(e){return this._streams.push(e),this},e.exports=p},3253:(e,t,r)=>{ -/** - * Archiver Core - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(39023);const i={ABORTED:"archive was aborted",DIRECTORYDIRPATHREQUIRED:"diretory dirpath argument must be a non-empty string value",DIRECTORYFUNCTIONINVALIDDATA:"invalid data returned by directory custom data function",ENTRYNAMEREQUIRED:"entry name must be a non-empty string value",FILEFILEPATHREQUIRED:"file filepath argument must be a non-empty string value",FINALIZING:"archive already finalizing",QUEUECLOSED:"queue closed",NOENDMETHOD:"no suitable finalize/end method defined by module",DIRECTORYNOTSUPPORTED:"support for directory entries not defined by module",FORMATSET:"archive format already set",INPUTSTEAMBUFFERREQUIRED:"input source must be valid Stream or Buffer instance",MODULESET:"module already set",SYMLINKNOTSUPPORTED:"support for symlink entries not defined by module",SYMLINKFILEPATHREQUIRED:"symlink filepath argument must be a non-empty string value",SYMLINKTARGETREQUIRED:"symlink target argument must be a non-empty string value",ENTRYNOTSUPPORTED:"entry not supported"};function a(e,t){Error.captureStackTrace(this,this.constructor),this.message=i[e]||e,this.code=e,this.data=t}n.inherits(a,Error),e.exports=a},71252:(e,t,r)=>{ -/** - * JSON Format Plugin - * - * @module plugins/json - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(39023).inherits,i=r(34198).Transform,a=r(72127),o=r(5955),s=function(e){if(!(this instanceof s))return new s(e);e=this.options=o.defaults(e,{}),i.call(this,e),this.supports={directory:!0,symlink:!0},this.files=[]};n(s,i),s.prototype._transform=function(e,t,r){r(null,e)},s.prototype._writeStringified=function(){var e=JSON.stringify(this.files);this.write(e)},s.prototype.append=function(e,t,r){var n=this;function i(e,i){e?r(e):(t.size=i.length||0,t.crc32=a.unsigned(i),n.files.push(t),r(null,t))}t.crc32=0,"buffer"===t.sourceType?i(null,e):"stream"===t.sourceType&&o.collectStream(e,i)},s.prototype.finalize=function(){this._writeStringified(),this.end()},e.exports=s},14815:(e,t,r)=>{ -/** - * TAR Format Plugin - * - * @module plugins/tar - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(43106),i=r(42797),a=r(5955),o=function(e){if(!(this instanceof o))return new o(e);"object"!=typeof(e=this.options=a.defaults(e,{gzip:!1})).gzipOptions&&(e.gzipOptions={}),this.supports={directory:!0,symlink:!0},this.engine=i.pack(e),this.compressor=!1,e.gzip&&(this.compressor=n.createGzip(e.gzipOptions),this.compressor.on("error",this._onCompressorError.bind(this)))};o.prototype._onCompressorError=function(e){this.engine.emit("error",e)},o.prototype.append=function(e,t,r){var n=this;function i(e,i){e?r(e):n.engine.entry(t,i,(function(e){r(e,t)}))}if(t.mtime=t.date,"buffer"===t.sourceType)i(null,e);else if("stream"===t.sourceType&&t.stats){t.size=t.stats.size;var o=n.engine.entry(t,(function(e){r(e,t)}));e.pipe(o)}else"stream"===t.sourceType&&a.collectStream(e,i)},o.prototype.finalize=function(){this.engine.finalize()},o.prototype.on=function(){return this.engine.on.apply(this.engine,arguments)},o.prototype.pipe=function(e,t){return this.compressor?this.engine.pipe.apply(this.engine,[this.compressor]).pipe(e,t):this.engine.pipe.apply(this.engine,arguments)},o.prototype.unpipe=function(){return this.compressor?this.compressor.unpipe.apply(this.compressor,arguments):this.engine.unpipe.apply(this.engine,arguments)},e.exports=o},50903:(e,t,r)=>{ -/** - * ZIP Format Plugin - * - * @module plugins/zip - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(64253),i=r(5955),a=function(e){if(!(this instanceof a))return new a(e);e=this.options=i.defaults(e,{comment:"",forceUTC:!1,namePrependSlash:!1,store:!1}),this.supports={directory:!0,symlink:!0},this.engine=new n(e)};a.prototype.append=function(e,t,r){this.engine.entry(e,t,r)},a.prototype.finalize=function(){this.engine.finalize()},a.prototype.on=function(){return this.engine.on.apply(this.engine,arguments)},a.prototype.pipe=function(){return this.engine.pipe.apply(this.engine,arguments)},a.prototype.unpipe=function(){return this.engine.unpipe.apply(this.engine,arguments)},e.exports=a},72127:(e,t,r)=>{var n=r(20181).Buffer,i=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];function a(e){if(n.isBuffer(e))return e;var t="function"==typeof n.alloc&&"function"==typeof n.from;if("number"==typeof e)return t?n.alloc(e):new n(e);if("string"==typeof e)return t?n.from(e):new n(e);throw new Error("input must be buffer, number, or string, received "+typeof e)}function o(e,t){e=a(e),n.isBuffer(t)&&(t=t.readUInt32BE(0));for(var r=~t,o=0;o<e.length;o++)r=i[255&(r^e[o])]^r>>>8;return~r}function s(){return e=o.apply(null,arguments),(t=a(4)).writeInt32BE(e,0),t;var e,t}"undefined"!=typeof Int32Array&&(i=new Int32Array(i)),s.signed=function(){return o.apply(null,arguments)},s.unsigned=function(){return o.apply(null,arguments)>>>0},e.exports=s},24345:e=>{var t=e.exports=function(){};t.prototype.getName=function(){},t.prototype.getSize=function(){},t.prototype.getLastModifiedDate=function(){},t.prototype.isDirectory=function(){}},42049:(e,t,r)=>{var n=r(39023).inherits,i=r(34198).Transform,a=r(24345),o=r(2305),s=e.exports=function(e){if(!(this instanceof s))return new s(e);i.call(this,e),this.offset=0,this._archive={finish:!1,finished:!1,processing:!1}};n(s,i),s.prototype._appendBuffer=function(e,t,r){},s.prototype._appendStream=function(e,t,r){},s.prototype._emitErrorCallback=function(e){e&&this.emit("error",e)},s.prototype._finish=function(e){},s.prototype._normalizeEntry=function(e){},s.prototype._transform=function(e,t,r){r(null,e)},s.prototype.entry=function(e,t,r){if(t=t||null,"function"!=typeof r&&(r=this._emitErrorCallback.bind(this)),e instanceof a)if(this._archive.finish||this._archive.finished)r(new Error("unacceptable entry after finish"));else{if(!this._archive.processing){if(this._archive.processing=!0,this._normalizeEntry(e),this._entry=e,t=o.normalizeInputSource(t),Buffer.isBuffer(t))this._appendBuffer(e,t,r);else{if(!o.isStream(t))return this._archive.processing=!1,void r(new Error("input source must be valid Stream or Buffer instance"));this._appendStream(e,t,r)}return this}r(new Error("already processing an entry"))}else r(new Error("not a valid instance of ArchiveEntry"))},s.prototype.finish=function(){this._archive.processing?this._archive.finish=!0:this._finish()},s.prototype.getBytesWritten=function(){return this.offset},s.prototype.write=function(e,t){return e&&(this.offset+=e.length),i.prototype.write.call(this,e,t)}},2251:e=>{e.exports={WORD:4,DWORD:8,EMPTY:Buffer.alloc(0),SHORT:2,SHORT_MASK:65535,SHORT_SHIFT:16,SHORT_ZERO:Buffer.from(Array(2)),LONG:4,LONG_ZERO:Buffer.from(Array(4)),MIN_VERSION_INITIAL:10,MIN_VERSION_DATA_DESCRIPTOR:20,MIN_VERSION_ZIP64:45,VERSION_MADEBY:45,METHOD_STORED:0,METHOD_DEFLATED:8,PLATFORM_UNIX:3,PLATFORM_FAT:0,SIG_LFH:67324752,SIG_DD:134695760,SIG_CFH:33639248,SIG_EOCD:101010256,SIG_ZIP64_EOCD:101075792,SIG_ZIP64_EOCD_LOC:117853008,ZIP64_MAGIC_SHORT:65535,ZIP64_MAGIC:4294967295,ZIP64_EXTRA_ID:1,ZLIB_NO_COMPRESSION:0,ZLIB_BEST_SPEED:1,ZLIB_BEST_COMPRESSION:9,ZLIB_DEFAULT_COMPRESSION:-1,MODE_MASK:4095,DEFAULT_FILE_MODE:33188,DEFAULT_DIR_MODE:16877,EXT_FILE_ATTR_DIR:1106051088,EXT_FILE_ATTR_FILE:2175008800,S_IFMT:61440,S_IFIFO:4096,S_IFCHR:8192,S_IFDIR:16384,S_IFBLK:24576,S_IFREG:32768,S_IFLNK:40960,S_IFSOCK:49152,S_DOS_A:32,S_DOS_D:16,S_DOS_V:8,S_DOS_S:4,S_DOS_H:2,S_DOS_R:1}},12415:(e,t,r)=>{var n=r(36612),i=e.exports=function(){return this instanceof i?(this.descriptor=!1,this.encryption=!1,this.utf8=!1,this.numberOfShannonFanoTrees=0,this.strongEncryption=!1,this.slidingDictionarySize=0,this):new i};i.prototype.encode=function(){return n.getShortBytes((this.descriptor?8:0)|(this.utf8?2048:0)|(this.encryption?1:0)|(this.strongEncryption?64:0))},i.prototype.parse=function(e,t){var r=n.getShortBytesValue(e,t),a=new i;return a.useDataDescriptor(!!(8&r)),a.useUTF8ForNames(!!(2048&r)),a.useStrongEncryption(!!(64&r)),a.useEncryption(!!(1&r)),a.setSlidingDictionarySize(2&r?8192:4096),a.setNumberOfShannonFanoTrees(4&r?3:2),a},i.prototype.setNumberOfShannonFanoTrees=function(e){this.numberOfShannonFanoTrees=e},i.prototype.getNumberOfShannonFanoTrees=function(){return this.numberOfShannonFanoTrees},i.prototype.setSlidingDictionarySize=function(e){this.slidingDictionarySize=e},i.prototype.getSlidingDictionarySize=function(){return this.slidingDictionarySize},i.prototype.useDataDescriptor=function(e){this.descriptor=e},i.prototype.usesDataDescriptor=function(){return this.descriptor},i.prototype.useEncryption=function(e){this.encryption=e},i.prototype.usesEncryption=function(){return this.encryption},i.prototype.useStrongEncryption=function(e){this.strongEncryption=e},i.prototype.usesStrongEncryption=function(){return this.strongEncryption},i.prototype.useUTF8ForNames=function(e){this.utf8=e},i.prototype.usesUTF8ForNames=function(){return this.utf8}},11277:e=>{e.exports={PERM_MASK:4095,FILE_TYPE_FLAG:61440,LINK_FLAG:40960,FILE_FLAG:32768,DIR_FLAG:16384,DEFAULT_LINK_PERM:511,DEFAULT_DIR_PERM:493,DEFAULT_FILE_PERM:420}},36612:e=>{var t=e.exports={};t.dateToDos=function(e,t){var r=(t=t||!1)?e.getFullYear():e.getUTCFullYear();return r<1980?2162688:r>=2044?2141175677:r-1980<<25|(t?e.getMonth():e.getUTCMonth())+1<<21|(t?e.getDate():e.getUTCDate())<<16|(t?e.getHours():e.getUTCHours())<<11|(t?e.getMinutes():e.getUTCMinutes())<<5|(t?e.getSeconds():e.getUTCSeconds())/2},t.dosToDate=function(e){return new Date(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1)},t.fromDosTime=function(e){return t.dosToDate(e.readUInt32LE(0))},t.getEightBytes=function(e){var t=Buffer.alloc(8);return t.writeUInt32LE(e%4294967296,0),t.writeUInt32LE(e/4294967296|0,4),t},t.getShortBytes=function(e){var t=Buffer.alloc(2);return t.writeUInt16LE((65535&e)>>>0,0),t},t.getShortBytesValue=function(e,t){return e.readUInt16LE(t)},t.getLongBytes=function(e){var t=Buffer.alloc(4);return t.writeUInt32LE((4294967295&e)>>>0,0),t},t.getLongBytesValue=function(e,t){return e.readUInt32LE(t)},t.toDosTime=function(e){return t.getLongBytes(t.dateToDos(e))}},74355:(e,t,r)=>{var n=r(39023).inherits,i=r(14100),a=r(24345),o=r(12415),s=r(11277),c=r(2251),l=r(36612),u=e.exports=function(e){if(!(this instanceof u))return new u(e);a.call(this),this.platform=c.PLATFORM_FAT,this.method=-1,this.name=null,this.size=0,this.csize=0,this.gpb=new o,this.crc=0,this.time=-1,this.minver=c.MIN_VERSION_INITIAL,this.mode=-1,this.extra=null,this.exattr=0,this.inattr=0,this.comment=null,e&&this.setName(e)};n(u,a),u.prototype.getCentralDirectoryExtra=function(){return this.getExtra()},u.prototype.getComment=function(){return null!==this.comment?this.comment:""},u.prototype.getCompressedSize=function(){return this.csize},u.prototype.getCrc=function(){return this.crc},u.prototype.getExternalAttributes=function(){return this.exattr},u.prototype.getExtra=function(){return null!==this.extra?this.extra:c.EMPTY},u.prototype.getGeneralPurposeBit=function(){return this.gpb},u.prototype.getInternalAttributes=function(){return this.inattr},u.prototype.getLastModifiedDate=function(){return this.getTime()},u.prototype.getLocalFileDataExtra=function(){return this.getExtra()},u.prototype.getMethod=function(){return this.method},u.prototype.getName=function(){return this.name},u.prototype.getPlatform=function(){return this.platform},u.prototype.getSize=function(){return this.size},u.prototype.getTime=function(){return-1!==this.time?l.dosToDate(this.time):-1},u.prototype.getTimeDos=function(){return-1!==this.time?this.time:0},u.prototype.getUnixMode=function(){return this.platform!==c.PLATFORM_UNIX?0:this.getExternalAttributes()>>c.SHORT_SHIFT&c.SHORT_MASK},u.prototype.getVersionNeededToExtract=function(){return this.minver},u.prototype.setComment=function(e){Buffer.byteLength(e)!==e.length&&this.getGeneralPurposeBit().useUTF8ForNames(!0),this.comment=e},u.prototype.setCompressedSize=function(e){if(e<0)throw new Error("invalid entry compressed size");this.csize=e},u.prototype.setCrc=function(e){if(e<0)throw new Error("invalid entry crc32");this.crc=e},u.prototype.setExternalAttributes=function(e){this.exattr=e>>>0},u.prototype.setExtra=function(e){this.extra=e},u.prototype.setGeneralPurposeBit=function(e){if(!(e instanceof o))throw new Error("invalid entry GeneralPurposeBit");this.gpb=e},u.prototype.setInternalAttributes=function(e){this.inattr=e},u.prototype.setMethod=function(e){if(e<0)throw new Error("invalid entry compression method");this.method=e},u.prototype.setName=function(e,t=!1){e=i(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,""),t&&(e=`/${e}`),Buffer.byteLength(e)!==e.length&&this.getGeneralPurposeBit().useUTF8ForNames(!0),this.name=e},u.prototype.setPlatform=function(e){this.platform=e},u.prototype.setSize=function(e){if(e<0)throw new Error("invalid entry size");this.size=e},u.prototype.setTime=function(e,t){if(!(e instanceof Date))throw new Error("invalid entry time");this.time=l.dateToDos(e,t)},u.prototype.setUnixMode=function(e){var t=0;t|=(e|=this.isDirectory()?c.S_IFDIR:c.S_IFREG)<<c.SHORT_SHIFT|(this.isDirectory()?c.S_DOS_D:c.S_DOS_A),this.setExternalAttributes(t),this.mode=e&c.MODE_MASK,this.platform=c.PLATFORM_UNIX},u.prototype.setVersionNeededToExtract=function(e){this.minver=e},u.prototype.isDirectory=function(){return"/"===this.getName().slice(-1)},u.prototype.isUnixSymlink=function(){return(this.getUnixMode()&s.FILE_TYPE_FLAG)===s.LINK_FLAG},u.prototype.isZip64=function(){return this.csize>c.ZIP64_MAGIC||this.size>c.ZIP64_MAGIC}},90116:(e,t,r)=>{var n=r(39023).inherits,i=r(72127),{CRC32Stream:a}=r(2229),{DeflateCRC32Stream:o}=r(2229),s=r(42049),c=(r(74355),r(12415),r(2251)),l=(r(2305),r(36612)),u=e.exports=function(e){if(!(this instanceof u))return new u(e);e=this.options=this._defaults(e),s.call(this,e),this._entry=null,this._entries=[],this._archive={centralLength:0,centralOffset:0,comment:"",finish:!1,finished:!1,processing:!1,forceZip64:e.forceZip64,forceLocalTime:e.forceLocalTime}};n(u,s),u.prototype._afterAppend=function(e){this._entries.push(e),e.getGeneralPurposeBit().usesDataDescriptor()&&this._writeDataDescriptor(e),this._archive.processing=!1,this._entry=null,this._archive.finish&&!this._archive.finished&&this._finish()},u.prototype._appendBuffer=function(e,t,r){0===t.length&&e.setMethod(c.METHOD_STORED);var n=e.getMethod();return n===c.METHOD_STORED&&(e.setSize(t.length),e.setCompressedSize(t.length),e.setCrc(i.unsigned(t))),this._writeLocalFileHeader(e),n===c.METHOD_STORED?(this.write(t),this._afterAppend(e),void r(null,e)):n===c.METHOD_DEFLATED?void this._smartStream(e,r).end(t):void r(new Error("compression method "+n+" not implemented"))},u.prototype._appendStream=function(e,t,r){e.getGeneralPurposeBit().useDataDescriptor(!0),e.setVersionNeededToExtract(c.MIN_VERSION_DATA_DESCRIPTOR),this._writeLocalFileHeader(e);var n=this._smartStream(e,r);t.once("error",(function(e){n.emit("error",e),n.end()})),t.pipe(n)},u.prototype._defaults=function(e){return"object"!=typeof e&&(e={}),"object"!=typeof e.zlib&&(e.zlib={}),"number"!=typeof e.zlib.level&&(e.zlib.level=c.ZLIB_BEST_SPEED),e.forceZip64=!!e.forceZip64,e.forceLocalTime=!!e.forceLocalTime,e},u.prototype._finish=function(){this._archive.centralOffset=this.offset,this._entries.forEach(function(e){this._writeCentralFileHeader(e)}.bind(this)),this._archive.centralLength=this.offset-this._archive.centralOffset,this.isZip64()&&this._writeCentralDirectoryZip64(),this._writeCentralDirectoryEnd(),this._archive.processing=!1,this._archive.finish=!0,this._archive.finished=!0,this.end()},u.prototype._normalizeEntry=function(e){-1===e.getMethod()&&e.setMethod(c.METHOD_DEFLATED),e.getMethod()===c.METHOD_DEFLATED&&(e.getGeneralPurposeBit().useDataDescriptor(!0),e.setVersionNeededToExtract(c.MIN_VERSION_DATA_DESCRIPTOR)),-1===e.getTime()&&e.setTime(new Date,this._archive.forceLocalTime),e._offsets={file:0,data:0,contents:0}},u.prototype._smartStream=function(e,t){var r=e.getMethod()===c.METHOD_DEFLATED?new o(this.options.zlib):new a,n=null;return r.once("end",function(){var i=r.digest().readUInt32BE(0);e.setCrc(i),e.setSize(r.size()),e.setCompressedSize(r.size(!0)),this._afterAppend(e),t(n,e)}.bind(this)),r.once("error",(function(e){n=e})),r.pipe(this,{end:!1}),r},u.prototype._writeCentralDirectoryEnd=function(){var e=this._entries.length,t=this._archive.centralLength,r=this._archive.centralOffset;this.isZip64()&&(e=c.ZIP64_MAGIC_SHORT,t=c.ZIP64_MAGIC,r=c.ZIP64_MAGIC),this.write(l.getLongBytes(c.SIG_EOCD)),this.write(c.SHORT_ZERO),this.write(c.SHORT_ZERO),this.write(l.getShortBytes(e)),this.write(l.getShortBytes(e)),this.write(l.getLongBytes(t)),this.write(l.getLongBytes(r));var n=this.getComment(),i=Buffer.byteLength(n);this.write(l.getShortBytes(i)),this.write(n)},u.prototype._writeCentralDirectoryZip64=function(){this.write(l.getLongBytes(c.SIG_ZIP64_EOCD)),this.write(l.getEightBytes(44)),this.write(l.getShortBytes(c.MIN_VERSION_ZIP64)),this.write(l.getShortBytes(c.MIN_VERSION_ZIP64)),this.write(c.LONG_ZERO),this.write(c.LONG_ZERO),this.write(l.getEightBytes(this._entries.length)),this.write(l.getEightBytes(this._entries.length)),this.write(l.getEightBytes(this._archive.centralLength)),this.write(l.getEightBytes(this._archive.centralOffset)),this.write(l.getLongBytes(c.SIG_ZIP64_EOCD_LOC)),this.write(c.LONG_ZERO),this.write(l.getEightBytes(this._archive.centralOffset+this._archive.centralLength)),this.write(l.getLongBytes(1))},u.prototype._writeCentralFileHeader=function(e){var t=e.getGeneralPurposeBit(),r=e.getMethod(),n=e._offsets,i=e.getSize(),a=e.getCompressedSize();if(e.isZip64()||n.file>c.ZIP64_MAGIC){i=c.ZIP64_MAGIC,a=c.ZIP64_MAGIC,e.setVersionNeededToExtract(c.MIN_VERSION_ZIP64);var o=Buffer.concat([l.getShortBytes(c.ZIP64_EXTRA_ID),l.getShortBytes(24),l.getEightBytes(e.getSize()),l.getEightBytes(e.getCompressedSize()),l.getEightBytes(n.file)],28);e.setExtra(o)}this.write(l.getLongBytes(c.SIG_CFH)),this.write(l.getShortBytes(e.getPlatform()<<8|c.VERSION_MADEBY)),this.write(l.getShortBytes(e.getVersionNeededToExtract())),this.write(t.encode()),this.write(l.getShortBytes(r)),this.write(l.getLongBytes(e.getTimeDos())),this.write(l.getLongBytes(e.getCrc())),this.write(l.getLongBytes(a)),this.write(l.getLongBytes(i));var s=e.getName(),u=e.getComment(),d=e.getCentralDirectoryExtra();t.usesUTF8ForNames()&&(s=Buffer.from(s),u=Buffer.from(u)),this.write(l.getShortBytes(s.length)),this.write(l.getShortBytes(d.length)),this.write(l.getShortBytes(u.length)),this.write(c.SHORT_ZERO),this.write(l.getShortBytes(e.getInternalAttributes())),this.write(l.getLongBytes(e.getExternalAttributes())),n.file>c.ZIP64_MAGIC?this.write(l.getLongBytes(c.ZIP64_MAGIC)):this.write(l.getLongBytes(n.file)),this.write(s),this.write(d),this.write(u)},u.prototype._writeDataDescriptor=function(e){this.write(l.getLongBytes(c.SIG_DD)),this.write(l.getLongBytes(e.getCrc())),e.isZip64()?(this.write(l.getEightBytes(e.getCompressedSize())),this.write(l.getEightBytes(e.getSize()))):(this.write(l.getLongBytes(e.getCompressedSize())),this.write(l.getLongBytes(e.getSize())))},u.prototype._writeLocalFileHeader=function(e){var t=e.getGeneralPurposeBit(),r=e.getMethod(),n=e.getName(),i=e.getLocalFileDataExtra();e.isZip64()&&(t.useDataDescriptor(!0),e.setVersionNeededToExtract(c.MIN_VERSION_ZIP64)),t.usesUTF8ForNames()&&(n=Buffer.from(n)),e._offsets.file=this.offset,this.write(l.getLongBytes(c.SIG_LFH)),this.write(l.getShortBytes(e.getVersionNeededToExtract())),this.write(t.encode()),this.write(l.getShortBytes(r)),this.write(l.getLongBytes(e.getTimeDos())),e._offsets.data=this.offset,t.usesDataDescriptor()?(this.write(c.LONG_ZERO),this.write(c.LONG_ZERO),this.write(c.LONG_ZERO)):(this.write(l.getLongBytes(e.getCrc())),this.write(l.getLongBytes(e.getCompressedSize())),this.write(l.getLongBytes(e.getSize()))),this.write(l.getShortBytes(n.length)),this.write(l.getShortBytes(i.length)),this.write(n),this.write(i),e._offsets.contents=this.offset},u.prototype.getComment=function(e){return null!==this._archive.comment?this._archive.comment:""},u.prototype.isZip64=function(){return this._archive.forceZip64||this._entries.length>c.ZIP64_MAGIC_SHORT||this._archive.centralLength>c.ZIP64_MAGIC||this._archive.centralOffset>c.ZIP64_MAGIC},u.prototype.setComment=function(e){this._archive.comment=e}},95305:(e,t,r)=>{e.exports={ArchiveEntry:r(24345),ZipArchiveEntry:r(74355),ArchiveOutputStream:r(42049),ZipArchiveOutputStream:r(90116)}},2305:(e,t,r)=>{var n=r(2203).Stream,i=r(34198).PassThrough,a=e.exports={};a.isStream=function(e){return e instanceof n},a.normalizeInputSource=function(e){if(null===e)return Buffer.alloc(0);if("string"==typeof e)return Buffer.from(e);if(a.isStream(e)&&!e._readableState){var t=new i;return e.pipe(t),t}return e}},96903:(e,t,r)=>{"use strict";const{Transform:n}=r(34198),i=r(52566);e.exports=class extends n{constructor(e){super(e),this.checksum=Buffer.allocUnsafe(4),this.checksum.writeInt32BE(0,0),this.rawSize=0}_transform(e,t,r){e&&(this.checksum=i.buf(e,this.checksum)>>>0,this.rawSize+=e.length),r(null,e)}digest(e){const t=Buffer.allocUnsafe(4);return t.writeUInt32BE(this.checksum>>>0,0),e?t.toString(e):t}hex(){return this.digest("hex").toUpperCase()}size(){return this.rawSize}}},17853:(e,t,r)=>{"use strict";const{DeflateRaw:n}=r(43106),i=r(52566);e.exports=class extends n{constructor(e){super(e),this.checksum=Buffer.allocUnsafe(4),this.checksum.writeInt32BE(0,0),this.rawSize=0,this.compressedSize=0}push(e,t){return e&&(this.compressedSize+=e.length),super.push(e,t)}_transform(e,t,r){e&&(this.checksum=i.buf(e,this.checksum)>>>0,this.rawSize+=e.length),super._transform(e,t,r)}digest(e){const t=Buffer.allocUnsafe(4);return t.writeUInt32BE(this.checksum>>>0,0),e?t.toString(e):t}hex(){return this.digest("hex").toUpperCase()}size(e=!1){return e?this.compressedSize:this.rawSize}}},2229:(e,t,r)=>{"use strict";e.exports={CRC32Stream:r(96903),DeflateCRC32Stream:r(17853)}},32:(e,t,r)=>{var n=r(39023),i=r(44829),a=r(24627),o=r(34198).Writable,s=r(34198).PassThrough,c=function(){},l=function(e){return(e&=511)&&512-e},u=function(e,t){this._parent=e,this.offset=t,s.call(this,{autoDestroy:!1})};n.inherits(u,s),u.prototype.destroy=function(e){this._parent.destroy(e)};var d=function(e){if(!(this instanceof d))return new d(e);o.call(this,e),e=e||{},this._offset=0,this._buffer=i(),this._missing=0,this._partial=!1,this._onparse=c,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var t=this,r=t._buffer,n=function(){t._continue()},s=function(e){if(t._locked=!1,e)return t.destroy(e);t._stream||n()},p=function(){t._stream=null;var e=l(t._header.size);e?t._parse(e,f):t._parse(512,y),t._locked||n()},f=function(){t._buffer.consume(l(t._header.size)),t._parse(512,y),n()},m=function(){var e=t._header.size;t._paxGlobal=a.decodePax(r.slice(0,e)),r.consume(e),p()},g=function(){var e=t._header.size;t._pax=a.decodePax(r.slice(0,e)),t._paxGlobal&&(t._pax=Object.assign({},t._paxGlobal,t._pax)),r.consume(e),p()},_=function(){var n=t._header.size;this._gnuLongPath=a.decodeLongPath(r.slice(0,n),e.filenameEncoding),r.consume(n),p()},h=function(){var n=t._header.size;this._gnuLongLinkPath=a.decodeLongPath(r.slice(0,n),e.filenameEncoding),r.consume(n),p()},y=function(){var i,o=t._offset;try{i=t._header=a.decode(r.slice(0,512),e.filenameEncoding,e.allowUnknownFormat)}catch(e){t.emit("error",e)}return r.consume(512),i?"gnu-long-path"===i.type?(t._parse(i.size,_),void n()):"gnu-long-link-path"===i.type?(t._parse(i.size,h),void n()):"pax-global-header"===i.type?(t._parse(i.size,m),void n()):"pax-header"===i.type?(t._parse(i.size,g),void n()):(t._gnuLongPath&&(i.name=t._gnuLongPath,t._gnuLongPath=null),t._gnuLongLinkPath&&(i.linkname=t._gnuLongLinkPath,t._gnuLongLinkPath=null),t._pax&&(t._header=i=function(e,t){return t.path&&(e.name=t.path),t.linkpath&&(e.linkname=t.linkpath),t.size&&(e.size=parseInt(t.size,10)),e.pax=t,e}(i,t._pax),t._pax=null),t._locked=!0,i.size&&"directory"!==i.type?(t._stream=new u(t,o),t.emit("entry",i,t._stream,s),t._parse(i.size,p),void n()):(t._parse(512,y),void t.emit("entry",i,function(e,t){var r=new u(e,t);return r.end(),r}(t,o),s))):(t._parse(512,y),void n())};this._onheader=y,this._parse(512,y)};n.inherits(d,o),d.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.emit("close"))},d.prototype._parse=function(e,t){this._destroyed||(this._offset+=e,this._missing=e,t===this._onheader&&(this._partial=!1),this._onparse=t)},d.prototype._continue=function(){if(!this._destroyed){var e=this._cb;this._cb=c,this._overflow?this._write(this._overflow,void 0,e):e()}},d.prototype._write=function(e,t,r){if(!this._destroyed){var n=this._stream,i=this._buffer,a=this._missing;if(e.length&&(this._partial=!0),e.length<a)return this._missing-=e.length,this._overflow=null,n?n.write(e,r):(i.append(e),r());this._cb=r,this._missing=0;var o=null;e.length>a&&(o=e.slice(a),e=e.slice(0,a)),n?n.end(e):i.append(e),this._overflow=o,this._onparse()}},d.prototype._final=function(e){if(this._partial)return this.destroy(new Error("Unexpected end of data"));e()},e.exports=d},24627:(e,t)=>{var r=Buffer.alloc,n="0".charCodeAt(0),i=Buffer.from("ustar\0","binary"),a=Buffer.from("00","binary"),o=Buffer.from("ustar ","binary"),s=Buffer.from(" \0","binary"),c=parseInt("7777",8),l=257,u=function(e,t,r,n){for(;r<n;r++)if(e[r]===t)return r;return n},d=function(e){for(var t=256,r=0;r<148;r++)t+=e[r];for(var n=156;n<512;n++)t+=e[n];return t},p=function(e,t){return(e=e.toString(8)).length>t?"7777777777777777777".slice(0,t)+" ":"0000000000000000000".slice(0,t-e.length)+e+" "};var f=function(e,t,r){if(128&(e=e.slice(t,t+r))[t=0])return function(e){var t;if(128===e[0])t=!0;else{if(255!==e[0])return null;t=!1}for(var r=[],n=e.length-1;n>0;n--){var i=e[n];t?r.push(i):r.push(255-i)}var a=0,o=r.length;for(n=0;n<o;n++)a+=r[n]*Math.pow(256,n);return t?a:-1*a}(e);for(;t<e.length&&32===e[t];)t++;for(var n=(i=u(e,32,t,e.length),a=e.length,o=e.length,"number"!=typeof i?o:(i=~~i)>=a?a:i>=0||(i+=a)>=0?i:0);t<n&&0===e[t];)t++;return n===t?0:parseInt(e.slice(t,n).toString(),8);var i,a,o},m=function(e,t,r,n){return e.slice(t,u(e,0,t,t+r)).toString(n)},g=function(e){var t=Buffer.byteLength(e),r=Math.floor(Math.log(t)/Math.log(10))+1;return t+r>=Math.pow(10,r)&&r++,t+r+e};t.decodeLongPath=function(e,t){return m(e,0,e.length,t)},t.encodePax=function(e){var t="";e.name&&(t+=g(" path="+e.name+"\n")),e.linkname&&(t+=g(" linkpath="+e.linkname+"\n"));var r=e.pax;if(r)for(var n in r)t+=g(" "+n+"="+r[n]+"\n");return Buffer.from(t)},t.decodePax=function(e){for(var t={};e.length;){for(var r=0;r<e.length&&32!==e[r];)r++;var n=parseInt(e.slice(0,r).toString(),10);if(!n)return t;var i=e.slice(r+1,n-1).toString(),a=i.indexOf("=");if(-1===a)return t;t[i.slice(0,a)]=i.slice(a+1),e=e.slice(n)}return t},t.encode=function(e){var t=r(512),o=e.name,s="";if(5===e.typeflag&&"/"!==o[o.length-1]&&(o+="/"),Buffer.byteLength(o)!==o.length)return null;for(;Buffer.byteLength(o)>100;){var u=o.indexOf("/");if(-1===u)return null;s+=s?"/"+o.slice(0,u):o.slice(0,u),o=o.slice(u+1)}return Buffer.byteLength(o)>100||Buffer.byteLength(s)>155||e.linkname&&Buffer.byteLength(e.linkname)>100?null:(t.write(o),t.write(p(e.mode&c,6),100),t.write(p(e.uid,6),108),t.write(p(e.gid,6),116),t.write(p(e.size,11),124),t.write(p(e.mtime.getTime()/1e3|0,11),136),t[156]=n+function(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}(e.type),e.linkname&&t.write(e.linkname,157),i.copy(t,l),a.copy(t,263),e.uname&&t.write(e.uname,265),e.gname&&t.write(e.gname,297),t.write(p(e.devmajor||0,6),329),t.write(p(e.devminor||0,6),337),s&&t.write(s,345),t.write(p(d(t),6),148),t)},t.decode=function(e,t,r){var a=0===e[156]?0:e[156]-n,c=m(e,0,100,t),u=f(e,100,8),p=f(e,108,8),g=f(e,116,8),_=f(e,124,12),h=f(e,136,12),y=function(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}(a),v=0===e[157]?null:m(e,157,100,t),b=m(e,265,32),k=m(e,297,32),x=f(e,329,8),E=f(e,337,8),S=d(e);if(256===S)return null;if(S!==f(e,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(0===i.compare(e,l,263))e[345]&&(c=m(e,345,155,t)+"/"+c);else if(0===o.compare(e,l,263)&&0===s.compare(e,263,265));else if(!r)throw new Error("Invalid tar header: unknown format.");return 0===a&&c&&"/"===c[c.length-1]&&(a=5),{name:c,mode:u,uid:p,gid:g,size:_,mtime:new Date(1e3*h),type:y,linkname:v,uname:b,gname:k,devmajor:x,devminor:E}}},42797:(e,t,r)=>{t.extract=r(32),t.pack=r(56620)},56620:(e,t,r)=>{var n=r(72170),i=r(26611),a=r(72017),o=Buffer.alloc,s=r(34198).Readable,c=r(34198).Writable,l=r(13193).StringDecoder,u=r(24627),d=parseInt("755",8),p=parseInt("644",8),f=o(1024),m=function(){},g=function(e,t){(t&=511)&&e.push(f.slice(0,512-t))};var _=function(e){c.call(this),this.written=0,this._to=e,this._destroyed=!1};a(_,c),_.prototype._write=function(e,t,r){if(this.written+=e.length,this._to.push(e))return r();this._to._drain=r},_.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var h=function(){c.call(this),this.linkname="",this._decoder=new l("utf-8"),this._destroyed=!1};a(h,c),h.prototype._write=function(e,t,r){this.linkname+=this._decoder.write(e),r()},h.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var y=function(){c.call(this),this._destroyed=!1};a(y,c),y.prototype._write=function(e,t,r){r(new Error("No body allowed for this entry"))},y.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var v=function(e){if(!(this instanceof v))return new v(e);s.call(this,e),this._drain=m,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};a(v,s),v.prototype.entry=function(e,t,r){if(this._stream)throw new Error("already piping an entry");if(!this._finalized&&!this._destroyed){"function"==typeof t&&(r=t,t=null),r||(r=m);var a=this;if(e.size&&"symlink"!==e.type||(e.size=0),e.type||(e.type=function(e){switch(e&n.S_IFMT){case n.S_IFBLK:return"block-device";case n.S_IFCHR:return"character-device";case n.S_IFDIR:return"directory";case n.S_IFIFO:return"fifo";case n.S_IFLNK:return"symlink"}return"file"}(e.mode)),e.mode||(e.mode="directory"===e.type?d:p),e.uid||(e.uid=0),e.gid||(e.gid=0),e.mtime||(e.mtime=new Date),"string"==typeof t&&(t=Buffer.from(t)),Buffer.isBuffer(t)){e.size=t.length,this._encode(e);var o=this.push(t);return g(a,e.size),o?process.nextTick(r):this._drain=r,new y}if("symlink"===e.type&&!e.linkname){var s=new h;return i(s,(function(t){if(t)return a.destroy(),r(t);e.linkname=s.linkname,a._encode(e),r()})),s}if(this._encode(e),"file"!==e.type&&"contiguous-file"!==e.type)return process.nextTick(r),new y;var c=new _(this);return this._stream=c,i(c,(function(t){return a._stream=null,t?(a.destroy(),r(t)):c.written!==e.size?(a.destroy(),r(new Error("size mismatch"))):(g(a,e.size),a._finalizing&&a.finalize(),void r())})),c}},v.prototype.finalize=function(){this._stream?this._finalizing=!0:this._finalized||(this._finalized=!0,this.push(f),this.push(null))},v.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())},v.prototype._encode=function(e){if(!e.pax){var t=u.encode(e);if(t)return void this.push(t)}this._encodePax(e)},v.prototype._encodePax=function(e){var t=u.encodePax({name:e.name,linkname:e.linkname,pax:e.pax}),r={name:"PaxHeader",mode:e.mode,uid:e.uid,gid:e.gid,size:t.length,mtime:e.mtime,type:"pax-header",linkname:e.linkname&&"PaxHeader",uname:e.uname,gname:e.gname,devmajor:e.devmajor,devminor:e.devminor};this.push(u.encode(r)),this.push(t),g(this,t.length),r.size=e.size,r.type=e.type,this.push(u.encode(r))},v.prototype._read=function(e){var t=this._drain;this._drain=m,t()},e.exports=v},64253:(e,t,r)=>{ -/** - * ZipStream - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-zip-stream/blob/master/LICENSE} - * @copyright (c) 2014 Chris Talkington, contributors. - */ -var n=r(39023).inherits,i=r(95305).ZipArchiveOutputStream,a=r(95305).ZipArchiveEntry,o=r(43029),s=e.exports=function(e){if(!(this instanceof s))return new s(e);(e=this.options=e||{}).zlib=e.zlib||{},i.call(this,e),"number"==typeof e.level&&e.level>=0&&(e.zlib.level=e.level,delete e.level),e.forceZip64||"number"!=typeof e.zlib.level||0!==e.zlib.level||(e.store=!0),e.namePrependSlash=e.namePrependSlash||!1,e.comment&&e.comment.length>0&&this.setComment(e.comment)};n(s,i),s.prototype._normalizeFileData=function(e){var t="directory"===(e=o.defaults(e,{type:"file",name:null,namePrependSlash:this.options.namePrependSlash,linkname:null,date:null,mode:null,store:this.options.store,comment:""})).type,r="symlink"===e.type;return e.name&&(e.name=o.sanitizePath(e.name),r||"/"!==e.name.slice(-1)?t&&(e.name+="/"):(t=!0,e.type="directory")),(t||r)&&(e.store=!0),e.date=o.dateify(e.date),e},s.prototype.entry=function(e,t,r){if("function"!=typeof r&&(r=this._emitErrorCallback.bind(this)),"file"===(t=this._normalizeFileData(t)).type||"directory"===t.type||"symlink"===t.type)if("string"==typeof t.name&&0!==t.name.length){if("symlink"!==t.type||"string"==typeof t.linkname){var n=new a(t.name);return n.setTime(t.date,this.options.forceLocalTime),t.namePrependSlash&&n.setName(t.name,!0),t.store&&n.setMethod(0),t.comment.length>0&&n.setComment(t.comment),"symlink"===t.type&&"number"!=typeof t.mode&&(t.mode=40960),"number"==typeof t.mode&&("symlink"===t.type&&(t.mode|=40960),n.setUnixMode(t.mode)),"symlink"===t.type&&"string"==typeof t.linkname&&(e=Buffer.from(t.linkname)),i.prototype.entry.call(this,n,e,r)}r(new Error("entry linkname must be a non-empty string value when type equals symlink"))}else r(new Error("entry name must be a non-empty string value"));else r(new Error(t.type+" entries not currently supported"))},s.prototype.finalize=function(){this.finish()}},81695:(e,t,r)=>{var n=r(63735),i=r(16928),a=r(16308),o=r(40209),s=r(9897),c=r(79001),l=r(53577),u=e.exports={},d=/[\/\\]/g;u.exists=function(){var e=i.join.apply(i,arguments);return n.existsSync(e)},u.expand=function(...e){var t=c(e[0])?e.shift():{},r=Array.isArray(e[0])?e[0]:e;if(0===r.length)return[];var u=function(e,t){var r=[];return a(e).forEach((function(e){var n=0===e.indexOf("!");n&&(e=e.slice(1));var i=t(e);r=n?o(r,i):s(r,i)})),r}(r,(function(e){return l.sync(e,t)}));return t.filter&&(u=u.filter((function(e){e=i.join(t.cwd||"",e);try{return"function"==typeof t.filter?t.filter(e):n.statSync(e)[t.filter]()}catch(e){return!1}}))),u},u.expandMapping=function(e,t,r){r=Object.assign({rename:function(e,t){return i.join(e||"",t)}},r);var n=[],a={};return u.expand(r,e).forEach((function(e){var o=e;r.flatten&&(o=i.basename(o)),r.ext&&(o=o.replace(/(\.[^\/]*)?$/,r.ext));var s=r.rename(t,o,r);r.cwd&&(e=i.join(r.cwd,e)),s=s.replace(d,"/"),e=e.replace(d,"/"),a[s]?a[s].src.push(e):(n.push({src:[e],dest:s}),a[s]=n[n.length-1])})),n},u.normalizeFilesArray=function(e){var t=[];return e.forEach((function(e){("src"in e||"dest"in e)&&t.push(e)})),0===t.length?[]:t=_(t).chain().forEach((function(e){"src"in e&&e.src&&(Array.isArray(e.src)?e.src=a(e.src):e.src=[e.src])})).map((function(e){var t=Object.assign({},e);if(delete t.src,delete t.dest,e.expand)return u.expandMapping(e.src,e.dest,t).map((function(t){var r=Object.assign({},e);return r.orig=Object.assign({},e),r.src=t.src,r.dest=t.dest,["expand","cwd","flatten","rename","ext"].forEach((function(e){delete r[e]})),r}));var r=Object.assign({},e);return r.orig=Object.assign({},e),"src"in r&&Object.defineProperty(r,"src",{enumerable:!0,get:function r(){var n;return"result"in r||(n=e.src,n=Array.isArray(n)?a(n):[n],r.result=u.expand(t,n)),r.result}}),"dest"in r&&(r.dest=e.dest),r})).flatten().value()}},43029:(e,t,r)=>{var n=r(63735),i=r(16928),a=r(85),o=r(14100),s=r(71676),c=r(2203).Stream,l=r(34198).PassThrough,u=e.exports={};u.file=r(81695),u.collectStream=function(e,t){var r=[],n=0;e.on("error",t),e.on("data",(function(e){r.push(e),n+=e.length})),e.on("end",(function(){var e=Buffer.alloc(n),i=0;r.forEach((function(t){t.copy(e,i),i+=t.length})),t(null,e)}))},u.dateify=function(e){return(e=e||new Date)instanceof Date||(e="string"==typeof e?new Date(e):new Date),e},u.defaults=function(e,t,r){var n=arguments;return n[0]=n[0]||{},s(...n)},u.isStream=function(e){return e instanceof c},u.lazyReadStream=function(e){return new a.Readable((function(){return n.createReadStream(e)}))},u.normalizeInputSource=function(e){return null===e?Buffer.alloc(0):"string"==typeof e?Buffer.from(e):u.isStream(e)?e.pipe(new l):e},u.sanitizePath=function(e){return o(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,"")},u.trailingSlashIt=function(e){return"/"!==e.slice(-1)?e+"/":e},u.unixifyPath=function(e){return o(e,!1).replace(/^\w+:/,"")},u.walkdir=function(e,t,r){var a=[];"function"==typeof t&&(r=t,t=e),n.readdir(e,(function(o,s){var c,l,d=0;if(o)return r(o);!function o(){if(!(c=s[d++]))return r(null,a);l=i.join(e,c),n.stat(l,(function(e,r){a.push({path:l,relative:i.relative(t,l).replace(/\\/g,"/"),stats:r}),r&&r.isDirectory()?u.walkdir(l,t,(function(e,t){t.forEach((function(e){a.push(e)})),o()})):o()}))}()}))}},67808:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CsvParserStream=t.ParserOptions=t.parseFile=t.parseStream=t.parseString=t.parse=t.FormatterOptions=t.CsvFormatterStream=t.writeToPath=t.writeToString=t.writeToBuffer=t.writeToStream=t.write=t.format=void 0;var n=r(1696);Object.defineProperty(t,"format",{enumerable:!0,get:function(){return n.format}}),Object.defineProperty(t,"write",{enumerable:!0,get:function(){return n.write}}),Object.defineProperty(t,"writeToStream",{enumerable:!0,get:function(){return n.writeToStream}}),Object.defineProperty(t,"writeToBuffer",{enumerable:!0,get:function(){return n.writeToBuffer}}),Object.defineProperty(t,"writeToString",{enumerable:!0,get:function(){return n.writeToString}}),Object.defineProperty(t,"writeToPath",{enumerable:!0,get:function(){return n.writeToPath}}),Object.defineProperty(t,"CsvFormatterStream",{enumerable:!0,get:function(){return n.CsvFormatterStream}}),Object.defineProperty(t,"FormatterOptions",{enumerable:!0,get:function(){return n.FormatterOptions}});var i=r(77190);Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return i.parse}}),Object.defineProperty(t,"parseString",{enumerable:!0,get:function(){return i.parseString}}),Object.defineProperty(t,"parseStream",{enumerable:!0,get:function(){return i.parseStream}}),Object.defineProperty(t,"parseFile",{enumerable:!0,get:function(){return i.parseFile}}),Object.defineProperty(t,"ParserOptions",{enumerable:!0,get:function(){return i.ParserOptions}}),Object.defineProperty(t,"CsvParserStream",{enumerable:!0,get:function(){return i.CsvParserStream}})},72170:(e,t,r)=>{e.exports=r(79896).constants||r(49140)},61455:(e,t,r)=>{e.exports=u,u.realpath=u,u.sync=d,u.realpathSync=d,u.monkeypatch=function(){n.realpath=u,n.realpathSync=d},u.unmonkeypatch=function(){n.realpath=i,n.realpathSync=a};var n=r(79896),i=n.realpath,a=n.realpathSync,o=process.version,s=/^v[0-5]\./.test(o),c=r(46674);function l(e){return e&&"realpath"===e.syscall&&("ELOOP"===e.code||"ENOMEM"===e.code||"ENAMETOOLONG"===e.code)}function u(e,t,r){if(s)return i(e,t,r);"function"==typeof t&&(r=t,t=null),i(e,t,(function(n,i){l(n)?c.realpath(e,t,r):r(n,i)}))}function d(e,t){if(s)return a(e,t);try{return a(e,t)}catch(r){if(l(r))return c.realpathSync(e,t);throw r}}},46674:(e,t,r)=>{var n=r(16928),i="win32"===process.platform,a=r(79896),o=process.env.NODE_DEBUG&&/fs/.test(process.env.NODE_DEBUG);function s(e){return"function"==typeof e?e:function(){var e;if(o){var t=new Error;e=function(e){e&&(t.message=e.message,r(e=t))}}else e=r;return e;function r(e){if(e){if(process.throwDeprecation)throw e;if(!process.noDeprecation){var t="fs: missing callback "+(e.stack||e.message);process.traceDeprecation?console.trace(t):console.error(t)}}}}()}n.normalize;if(i)var c=/(.*?)(?:[\/\\]+|$)/g;else c=/(.*?)(?:[\/]+|$)/g;if(i)var l=/^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/;else l=/^[\/]*/;t.realpathSync=function(e,t){if(e=n.resolve(e),t&&Object.prototype.hasOwnProperty.call(t,e))return t[e];var r,o,s,u,d=e,p={},f={};function m(){var t=l.exec(e);r=t[0].length,o=t[0],s=t[0],u="",i&&!f[s]&&(a.lstatSync(s),f[s]=!0)}for(m();r<e.length;){c.lastIndex=r;var g=c.exec(e);if(u=o,o+=g[0],s=u+g[1],r=c.lastIndex,!(f[s]||t&&t[s]===s)){var _;if(t&&Object.prototype.hasOwnProperty.call(t,s))_=t[s];else{var h=a.lstatSync(s);if(!h.isSymbolicLink()){f[s]=!0,t&&(t[s]=s);continue}var y=null;if(!i){var v=h.dev.toString(32)+":"+h.ino.toString(32);p.hasOwnProperty(v)&&(y=p[v])}null===y&&(a.statSync(s),y=a.readlinkSync(s)),_=n.resolve(u,y),t&&(t[s]=_),i||(p[v]=y)}e=n.resolve(_,e.slice(r)),m()}}return t&&(t[d]=e),e},t.realpath=function(e,t,r){if("function"!=typeof r&&(r=s(t),t=null),e=n.resolve(e),t&&Object.prototype.hasOwnProperty.call(t,e))return process.nextTick(r.bind(null,null,t[e]));var o,u,d,p,f=e,m={},g={};function _(){var t=l.exec(e);o=t[0].length,u=t[0],d=t[0],p="",i&&!g[d]?a.lstat(d,(function(e){if(e)return r(e);g[d]=!0,h()})):process.nextTick(h)}function h(){if(o>=e.length)return t&&(t[f]=e),r(null,e);c.lastIndex=o;var n=c.exec(e);return p=u,u+=n[0],d=p+n[1],o=c.lastIndex,g[d]||t&&t[d]===d?process.nextTick(h):t&&Object.prototype.hasOwnProperty.call(t,d)?b(t[d]):a.lstat(d,y)}function y(e,n){if(e)return r(e);if(!n.isSymbolicLink())return g[d]=!0,t&&(t[d]=d),process.nextTick(h);if(!i){var o=n.dev.toString(32)+":"+n.ino.toString(32);if(m.hasOwnProperty(o))return v(null,m[o],d)}a.stat(d,(function(e){if(e)return r(e);a.readlink(d,(function(e,t){i||(m[o]=t),v(e,t)}))}))}function v(e,i,a){if(e)return r(e);var o=n.resolve(p,i);t&&(t[a]=o),b(o)}function b(t){e=n.resolve(t,e.slice(o)),_()}_()}},41723:(e,t,r)=>{r(40983),r(13942),t.Writer=r(89510),t.ZH={Reader:r(64315),Writer:r(37291)},t.ig={Reader:r(61468),Writer:r(75064)},t.N_={Reader:r(65657),Writer:r(55509)},t.by={Reader:r(58349),Writer:r(67225)},t.ig.Reader,t.ZH.Reader,t.N_.Reader,t.by.Reader,t.Writer.Dir=t.ig.Writer,t.Writer.File=t.ZH.Writer,t.Writer.Link=t.N_.Writer,t.Writer.Proxy=t.by.Writer,r(65243)},40983:(e,t,r)=>{e.exports=i;var n=r(2203).Stream;function i(){n.call(this)}function a(e,t,r){return e instanceof Error||(e=new Error(e)),e.code=e.code||t,e.path=e.path||r.path,e.fstream_type=e.fstream_type||r.type,e.fstream_path=e.fstream_path||r.path,r._path!==r.path&&(e.fstream_unc_path=e.fstream_unc_path||r._path),r.linkpath&&(e.fstream_linkpath=e.fstream_linkpath||r.linkpath),e.fstream_class=e.fstream_class||r.constructor.name,e.fstream_stack=e.fstream_stack||(new Error).stack.split(/\n/).slice(3).map((function(e){return e.replace(/^ {4}at /,"")})),e}r(72017)(i,n),i.prototype.on=function(e,t){return"ready"===e&&this.ready?process.nextTick(t.bind(this)):n.prototype.on.call(this,e,t),this},i.prototype.abort=function(){this._aborted=!0,this.emit("abort")},i.prototype.destroy=function(){},i.prototype.warn=function(e,t){var r=this,n=a(e,t,r);r.listeners("warn")?r.emit("warn",n):console.error("%s %s\npath = %s\nsyscall = %s\nfstream_type = %s\nfstream_path = %s\nfstream_unc_path = %s\nfstream_class = %s\nfstream_stack =\n%s\n",t||"UNKNOWN",n.stack,n.path,n.syscall,n.fstream_type,n.fstream_path,n.fstream_unc_path,n.fstream_class,n.fstream_stack.join("\n"))},i.prototype.info=function(e,t){this.emit("info",e,t)},i.prototype.error=function(e,t,r){var n=a(e,t,this);if(r)throw n;this.emit("error",n)}},65243:e=>{e.exports=function e(t){if(t._collected)return;if(t._paused)return t.on("resume",e.bind(null,t));t._collected=!0,t.pause(),t.on("data",n),t.on("end",n);var r=[];function n(e){"string"==typeof e&&(e=new Buffer(e)),Buffer.isBuffer(e)&&!e.length||r.push(e)}t.on("entry",a);var i=[];function a(t){e(t),i.push(t)}t.on("proxy",(function(e){e.pause()})),t.pipe=(o=t.pipe,function(e){var s=0;return function c(){var l=i[s++];if(!l)return t.removeListener("entry",a),t.removeListener("data",n),t.removeListener("end",n),t.pipe=o,e&&t.pipe(e),r.forEach((function(e){e?t.emit("data",e):t.emit("end")})),void t.resume();l.on("end",c),e?e.add(l):t.emit("entry",l)}(),e});var o}},61468:(e,t,r)=>{e.exports=c;var n=r(63735),i=r(72017),a=r(16928),o=r(13942),s=r(42613).ok;function c(e){var t=this;if(!(t instanceof c))throw new Error("DirReader must be called as constructor.");if("Directory"!==e.type||!e.Directory)throw new Error("Non-directory type "+e.type);t.entries=null,t._index=-1,t._paused=!1,t._length=-1,e.sort&&(this.sort=e.sort),o.call(this,e)}i(c,o),c.prototype._getEntries=function(){var e=this;e._gotEntries||(e._gotEntries=!0,n.readdir(e._path,(function(t,r){if(t)return e.error(t);function n(){e._length=e.entries.length,"function"==typeof e.sort&&(e.entries=e.entries.sort(e.sort.bind(e))),e._read()}e.entries=r,e.emit("entries",r),e._paused?e.once("resume",n):n()})))},c.prototype._read=function(){var e=this;if(!e.entries)return e._getEntries();if(!(e._paused||e._currentEntry||e._aborted))if(e._index++,e._index>=e.entries.length)e._ended||(e._ended=!0,e.emit("end"),e.emit("close"));else{var t=a.resolve(e._path,e.entries[e._index]);s(t!==e._path),s(e.entries[e._index]),e._currentEntry=t,n[e.props.follow?"stat":"lstat"](t,(function(r,n){if(r)return e.error(r);var i=e._proxy||e;n.path=t,n.basename=a.basename(t),n.dirname=a.dirname(t);var s=e.getChildProps.call(i,n);s.path=t,s.basename=a.basename(t),s.dirname=a.dirname(t);var c=o(s,n);e._currentEntry=c,c.on("pause",(function(t){e._paused||c._disowned||e.pause(t)})),c.on("resume",(function(t){e._paused&&!c._disowned&&e.resume(t)})),c.on("stat",(function(t){e.emit("_entryStat",c,t),c._aborted||(c._paused?c.once("resume",(function(){e.emit("entryStat",c,t)})):e.emit("entryStat",c,t))})),c.on("ready",(function t(){if(e._paused)return c.pause(e),e.once("resume",t);"Socket"===c.type?e.emit("socket",c):e.emitEntry(c)}));var l=!1;function u(){l||(l=!0,e.emit("childEnd",c),e.emit("entryEnd",c),e._currentEntry=null,e._paused||e._read())}c.on("close",u),c.on("disown",u),c.on("error",(function(t){c._swallowErrors?(e.warn(t),c.emit("end"),c.emit("close")):e.emit("error",t)})),["child","childEnd","warn"].forEach((function(t){c.on(t,e.emit.bind(e,t))}))}))}},c.prototype.disown=function(e){e.emit("beforeDisown"),e._disowned=!0,e.parent=e.root=null,e===this._currentEntry&&(this._currentEntry=null),e.emit("disown")},c.prototype.getChildProps=function(){return{depth:this.depth+1,root:this.root||this,parent:this,follow:this.follow,filter:this.filter,sort:this.props.sort,hardlinks:this.props.hardlinks}},c.prototype.pause=function(e){var t=this;t._paused||(e=e||t,t._paused=!0,t._currentEntry&&t._currentEntry.pause&&t._currentEntry.pause(e),t.emit("pause",e))},c.prototype.resume=function(e){var t=this;t._paused&&(e=e||t,t._paused=!1,t.emit("resume",e),t._paused||(t._currentEntry?t._currentEntry.resume&&t._currentEntry.resume(e):t._read()))},c.prototype.emitEntry=function(e){this.emit("entry",e),this.emit("child",e)}},75064:(e,t,r)=>{e.exports=c;var n=r(89510),i=r(72017),a=r(43480),o=r(16928),s=r(65243);function c(e){var t=this;t instanceof c||t.error("DirWriter must be called as constructor.",null,!0),"Directory"===e.type&&e.Directory||t.error("Non-directory type "+e.type+" "+JSON.stringify(e),null,!0),n.call(this,e)}i(c,n),c.prototype._create=function(){var e=this;a(e._path,n.dirmode,(function(t){if(t)return e.error(t);e.ready=!0,e.emit("ready"),e._process()}))},c.prototype.write=function(){return!0},c.prototype.end=function(){this._ended=!0,this._process()},c.prototype.add=function(e){var t=this;return s(e),!t.ready||t._currentEntry?(t._buffer.push(e),!1):t._ended?t.error("add after end"):(t._buffer.push(e),t._process(),0===this._buffer.length)},c.prototype._process=function(){var e=this;if(!e._processing){var t=e._buffer.shift();if(!t)return e.emit("drain"),void(e._ended&&e._finish());e._processing=!0,e.emit("entry",t);var r,i=t;do{if((r=i._path||i.path)===e.root._path||r===e._path||r&&0===r.indexOf(e._path))return e._processing=!1,t._collected&&t.pipe(),e._process();i=i.parent}while(i);var a={parent:e,root:e.root||e,type:t.type,depth:e.depth+1};r=t._path||t.path||t.props.path,t.parent&&(r=r.substr(t.parent._path.length+1)),a.path=o.join(e.path,o.join("/",r)),a.filter=e.filter,Object.keys(t.props).forEach((function(e){a.hasOwnProperty(e)||(a[e]=t.props[e])}));var s=e._currentChild=new n(a);s.on("ready",(function(){t.pipe(s),t.resume()})),s.on("error",(function(t){s._swallowErrors?(e.warn(t),s.emit("end"),s.emit("close")):e.emit("error",t)})),s.on("close",(function(){if(c)return;c=!0,e._currentChild=null,e._processing=!1,e._process()}));var c=!1}}},64315:(e,t,r)=>{e.exports=c;var n=r(63735),i=r(72017),a=r(13942),o={EOF:!0},s={CLOSE:!0};function c(e){var t=this;if(!(t instanceof c))throw new Error("FileReader must be called as constructor.");if(!("Link"===e.type&&e.Link||"File"===e.type&&e.File))throw new Error("Non-file type "+e.type);t._buffer=[],t._bytesEmitted=0,a.call(t,e)}i(c,a),c.prototype._getStream=function(){var e=this,t=e._stream=n.createReadStream(e._path,e.props);e.props.blksize&&(t.bufferSize=e.props.blksize),t.on("open",e.emit.bind(e,"open")),t.on("data",(function(t){e._bytesEmitted+=t.length,t.length&&(e._paused||e._buffer.length?(e._buffer.push(t),e._read()):e.emit("data",t))})),t.on("end",(function(){e._paused||e._buffer.length?(e._buffer.push(o),e._read()):e.emit("end"),e._bytesEmitted!==e.props.size&&e.error("Didn't get expected byte count\nexpect: "+e.props.size+"\nactual: "+e._bytesEmitted)})),t.on("close",(function(){e._paused||e._buffer.length?(e._buffer.push(s),e._read()):e.emit("close")})),t.on("error",(function(t){e.emit("error",t)})),e._read()},c.prototype._read=function(){var e=this;if(!e._paused){if(!e._stream)return e._getStream();if(e._buffer.length){for(var t=e._buffer,r=0,n=t.length;r<n;r++){var i=t[r];if(i===o?e.emit("end"):i===s?e.emit("close"):e.emit("data",i),e._paused)return void(e._buffer=t.slice(r))}e._buffer.length=0}}},c.prototype.pause=function(e){var t=this;t._paused||(e=e||t,t._paused=!0,t._stream&&t._stream.pause(),t.emit("pause",e))},c.prototype.resume=function(e){var t=this;t._paused&&(e=e||t,t.emit("resume",e),t._paused=!1,t._stream&&t._stream.resume(),t._read())}},37291:(e,t,r)=>{e.exports=s;var n=r(63735),i=r(89510),a=r(72017),o={};function s(e){var t=this;if(!(t instanceof s))throw new Error("FileWriter must be called as constructor.");if("File"!==e.type||!e.File)throw new Error("Non-file type "+e.type);t._buffer=[],t._bytesWritten=0,i.call(this,e)}a(s,i),s.prototype._create=function(){var e=this;if(!e._stream){var t={};e.props.flags&&(t.flags=e.props.flags),t.mode=i.filemode,e._old&&e._old.blksize&&(t.bufferSize=e._old.blksize),e._stream=n.createWriteStream(e._path,t),e._stream.on("open",(function(){e.ready=!0,e._buffer.forEach((function(t){t===o?e._stream.end():e._stream.write(t)})),e.emit("ready"),e.emit("drain")})),e._stream.on("error",(function(t){e.emit("error",t)})),e._stream.on("drain",(function(){e.emit("drain")})),e._stream.on("close",(function(){e._finish()}))}},s.prototype.write=function(e){var t=this;if(t._bytesWritten+=e.length,!t.ready){if(!Buffer.isBuffer(e)&&"string"!=typeof e)throw new Error("invalid write data");return t._buffer.push(e),!1}var r=t._stream.write(e);return!1===r&&t._stream._queue?t._stream._queue.length<=2:r},s.prototype.end=function(e){var t=this;return e&&t.write(e),t.ready?t._stream.end():(t._buffer.push(o),!1)},s.prototype._finish=function(){var e=this;"number"==typeof e.size&&e._bytesWritten!==e.size&&e.error("Did not get expected byte count.\nexpect: "+e.size+"\nactual: "+e._bytesWritten),i.prototype._finish.call(e)}},54186:e=>{e.exports=function(e){var t,r=["Directory","File","SymbolicLink","Link","BlockDevice","CharacterDevice","FIFO","Socket"];if(e.type&&-1!==r.indexOf(e.type))return e[e.type]=!0,e.type;for(var n=0,i=r.length;n<i;n++){var a=e[t=r[n]]||e["is"+t];if("function"==typeof a&&(a=a.call(e)),a)return e[t]=!0,e.type=t,t}return null}},65657:(e,t,r)=>{e.exports=o;var n=r(63735),i=r(72017),a=r(13942);function o(e){if(!(this instanceof o))throw new Error("LinkReader must be called as constructor.");if(!("Link"===e.type&&e.Link||"SymbolicLink"===e.type&&e.SymbolicLink))throw new Error("Non-link type "+e.type);a.call(this,e)}i(o,a),o.prototype._stat=function(e){var t=this;n.readlink(t._path,(function(r,n){if(r)return t.error(r);t.linkpath=t.props.linkpath=n,t.emit("linkpath",n),a.prototype._stat.call(t,e)}))},o.prototype._read=function(){var e=this;e._paused||e._ended||(e.emit("end"),e.emit("close"),e._ended=!0)}},55509:(e,t,r)=>{e.exports=c;var n=r(63735),i=r(89510),a=r(72017),o=r(16928),s=r(4239);function c(e){if(!(this instanceof c))throw new Error("LinkWriter must be called as constructor.");if(!("Link"===e.type&&e.Link||"SymbolicLink"===e.type&&e.SymbolicLink))throw new Error("Non-link type "+e.type);""===e.linkpath&&(e.linkpath="."),e.linkpath||this.error("Need linkpath property to create "+e.type),i.call(this,e)}function l(e,t,r){s(e._path,(function(i){if(i)return e.error(i);!function(e,t,r){n[r](t,e._path,(function(t){if(t){if("ENOENT"!==t.code&&"EACCES"!==t.code&&"EPERM"!==t.code||"win32"!==process.platform)return e.error(t);e.ready=!0,e.emit("ready"),e.emit("end"),e.emit("close"),e.end=e._finish=function(){}}u(e)}))}(e,t,r)}))}function u(e){e.ready=!0,e.emit("ready"),e._ended&&!e._finished&&e._finish()}a(c,i),c.prototype._create=function(){var e=this,t="Link"===e.type||"win32"===process.platform,r=t?"link":"symlink",i=t?o.resolve(e.dirname,e.linkpath):e.linkpath;if(t)return l(e,i,r);n.readlink(e._path,(function(t,n){if(n&&n===i)return u(e);l(e,i,r)}))},c.prototype.end=function(){this._ended=!0,this.ready&&(this._finished=!0,this._finish())}},58349:(e,t,r)=>{e.exports=s;var n=r(13942),i=r(54186),a=r(72017),o=r(63735);function s(e){var t=this;if(!(t instanceof s))throw new Error("ProxyReader must be called as constructor.");t.props=e,t._buffer=[],t.ready=!1,n.call(t,e)}a(s,n),s.prototype._stat=function(){var e=this,t=e.props,r=t.follow?"stat":"lstat";o[r](t.path,(function(r,a){var o;o=r||!a?"File":i(a),t[o]=!0,t.type=e.type=o,e._old=a,e._addProxy(n(t,a))}))},s.prototype._addProxy=function(e){var t=this;if(t._proxyTarget)return t.error("proxy already set");t._proxyTarget=e,e._proxy=t,["error","data","end","close","linkpath","entry","entryEnd","child","childEnd","warn","stat"].forEach((function(r){e.on(r,t.emit.bind(t,r))})),t.emit("proxy",e),e.on("ready",(function(){t.ready=!0,t.emit("ready")}));var r=t._buffer;t._buffer.length=0,r.forEach((function(t){e[t[0]].apply(e,t[1])}))},s.prototype.pause=function(){return!!this._proxyTarget&&this._proxyTarget.pause()},s.prototype.resume=function(){return!!this._proxyTarget&&this._proxyTarget.resume()}},67225:(e,t,r)=>{e.exports=c;var n=r(89510),i=r(54186),a=r(72017),o=r(65243),s=r(79896);function c(e){var t=this;if(!(t instanceof c))throw new Error("ProxyWriter must be called as constructor.");t.props=e,t._needDrain=!1,n.call(t,e)}a(c,n),c.prototype._stat=function(){var e=this,t=e.props,r=t.follow?"stat":"lstat";s[r](t.path,(function(r,a){var o;o=r||!a?"File":i(a),t[o]=!0,t.type=e.type=o,e._old=a,e._addProxy(n(t,a))}))},c.prototype._addProxy=function(e){var t=this;if(t._proxy)return t.error("proxy already set");t._proxy=e,["ready","error","close","pipe","drain","warn"].forEach((function(r){e.on(r,t.emit.bind(t,r))})),t.emit("proxy",e),t._buffer.forEach((function(t){e[t[0]].apply(e,t[1])})),t._buffer.length=0,t._needsDrain&&t.emit("drain")},c.prototype.add=function(e){return o(e),this._proxy?this._proxy.add(e):(this._buffer.push(["add",[e]]),this._needDrain=!0,!1)},c.prototype.write=function(e){return this._proxy?this._proxy.write(e):(this._buffer.push(["write",[e]]),this._needDrain=!0,!1)},c.prototype.end=function(e){return this._proxy?this._proxy.end(e):(this._buffer.push(["end",[e]]),!1)}},13942:(e,t,r)=>{e.exports=d;var n=r(63735),i=r(2203).Stream,a=r(72017),o=r(16928),s=r(54186),c=d.hardLinks={},l=r(40983);a(d,l);var u=r(65657);function d(e,t){var n,i,a=this;if(!(a instanceof d))return new d(e,t);switch("string"==typeof e&&(e={path:e}),e.type&&"function"==typeof e.type?i=n=e.type:(n=s(e),i=d),t&&!n&&(e[n=s(t)]=!0,e.type=n),n){case"Directory":i=r(61468);break;case"Link":case"File":i=r(64315);break;case"SymbolicLink":i=u;break;case"Socket":i=r(36206);break;case null:i=r(58349)}if(!(a instanceof i))return new i(e);l.call(a),e.path||a.error("Must provide a path",null,!0),a.readable=!0,a.writable=!1,a.type=n,a.props=e,a.depth=e.depth=e.depth||0,a.parent=e.parent||null,a.root=e.root||e.parent&&e.parent.root||a,a._path=a.path=o.resolve(e.path),"win32"===process.platform&&(a.path=a._path=a.path.replace(/\?/g,"_"),a._path.length>=260&&(a._swallowErrors=!0,a._path="\\\\?\\"+a.path.replace(/\//g,"\\"))),a.basename=e.basename=o.basename(a.path),a.dirname=e.dirname=o.dirname(a.path),e.parent=e.root=null,a.size=e.size,a.filter="function"==typeof e.filter?e.filter:null,"alpha"===e.sort&&(e.sort=p),a._stat(t)}function p(e,t){return e===t?0:e.toLowerCase()>t.toLowerCase()?1:e.toLowerCase()<t.toLowerCase()?-1:e>t?1:-1}d.prototype._stat=function(e){var t=this,r=t.props,i=r.follow?"stat":"lstat";function a(e,n){if(e)return t.error(e);if(Object.keys(n).forEach((function(e){r[e]=n[e]})),void 0!==t.size&&r.size!==t.size)return t.error("incorrect size");t.size=r.size;var i=s(r);if(!1!==r.hardlinks&&"Directory"!==i&&r.nlink&&r.nlink>1){var a=r.dev+":"+r.ino;c[a]!==t._path&&c[a]?(i=t.type=t.props.type="Link",t.Link=t.props.Link=!0,t.linkpath=t.props.linkpath=c[a],t._stat=t._read=u.prototype._read):c[a]=t._path}if(t.type&&t.type!==i&&t.error("Unexpected type: "+i),t.filter){var o=t._proxy||t;if(!t.filter.call(o,o,r))return void(t._disowned||(t.abort(),t.emit("end"),t.emit("close")))}var l=["_stat","stat","ready"],d=0;!function e(){if(t._aborted)return t.emit("end"),void t.emit("close");if(t._paused&&"Directory"!==t.type)t.once("resume",e);else{var n=l[d++];if(!n)return t._read();t.emit(n,r),e()}}()}e?process.nextTick(a.bind(null,null,e)):n[i](t._path,a)},d.prototype.pipe=function(e){var t=this;return"function"==typeof e.add&&t.on("entry",(function(r){!1===e.add(r)&&t.pause()})),i.prototype.pipe.apply(this,arguments)},d.prototype.pause=function(e){this._paused=!0,e=e||this,this.emit("pause",e),this._stream&&this._stream.pause(e)},d.prototype.resume=function(e){this._paused=!1,e=e||this,this.emit("resume",e),this._stream&&this._stream.resume(e),this._read()},d.prototype._read=function(){this.error("Cannot read unknown type: "+this.type)}},36206:(e,t,r)=>{e.exports=a;var n=r(72017),i=r(13942);function a(e){if(!(this instanceof a))throw new Error("SocketReader must be called as constructor.");if("Socket"!==e.type||!e.Socket)throw new Error("Non-socket type "+e.type);i.call(this,e)}n(a,i),a.prototype._read=function(){var e=this;e._paused||e._ended||(e.emit("end"),e.emit("close"),e._ended=!0)}},89510:(e,t,r)=>{e.exports=g;var n=r(63735),i=r(72017),a=r(4239),o=r(43480),s=r(16928),c="win32"===process.platform?0:process.umask(),l=r(54186),u=r(40983);i(g,u),g.dirmode=parseInt("0777",8)&~c,g.filemode=parseInt("0666",8)&~c;var d=r(75064),p=r(55509),f=r(37291),m=r(67225);function g(e,t){var r=this;"string"==typeof e&&(e={path:e});var n=g;switch(l(e)){case"Directory":n=d;break;case"File":n=f;break;case"Link":case"SymbolicLink":n=p;break;default:n=m}if(!(r instanceof n))return new n(e);u.call(r),e.path||r.error("Must provide a path",null,!0),r.type=e.type,r.props=e,r.depth=e.depth||0,r.clobber=!1!==e.clobber||e.clobber,r.parent=e.parent||null,r.root=e.root||e.parent&&e.parent.root||r,r._path=r.path=s.resolve(e.path),"win32"===process.platform&&(r.path=r._path=r.path.replace(/\?/g,"_"),r._path.length>=260&&(r._swallowErrors=!0,r._path="\\\\?\\"+r.path.replace(/\//g,"\\"))),r.basename=s.basename(e.path),r.dirname=s.dirname(e.path),r.linkpath=e.linkpath||null,e.parent=e.root=null,r.size=e.size,"string"==typeof e.mode&&(e.mode=parseInt(e.mode,8)),r.readable=!1,r.writable=!0,r._buffer=[],r.ready=!1,r.filter="function"==typeof e.filter?e.filter:null,r._stat(t)}function _(e){o(s.dirname(e._path),g.dirmode,(function(t,r){return t?e.error(t):(e._madeDir=r,e._create())}))}function h(e,t,r,i,a){var o=t.mode,s=t.follow||"SymbolicLink"!==e.type?"chmod":"lchmod";if(!n[s])return a();if("number"!=typeof o)return a();var c=r.mode&parseInt("0777",8);if((o&=parseInt("0777",8))===c)return a();n[s](i,o,a)}function y(e,t,r,i,a){if("win32"===process.platform)return a();if(!process.getuid||0!==process.getuid())return a();if("number"!=typeof t.uid&&"number"!=typeof t.gid)return a();if(r.uid===t.uid&&r.gid===t.gid)return a();var o=e.props.follow||"SymbolicLink"!==e.type?"chown":"lchown";if(!n[o])return a();"number"!=typeof t.uid&&(t.uid=r.uid),"number"!=typeof t.gid&&(t.gid=r.gid),n[o](i,t.uid,t.gid,a)}function v(e,t,r,i,a){if(!n.utimes||"win32"===process.platform)return a();var o=t.follow||"SymbolicLink"!==e.type?"utimes":"lutimes";if("lutimes"!==o||n[o]||(o="utimes"),!n[o])return a();var s=r.atime,c=r.mtime,l=t.atime,u=t.mtime;if(void 0===l&&(l=s),void 0===u&&(u=c),k(l)||(l=new Date(l)),k(u)||(l=new Date(u)),l.getTime()===s.getTime()&&u.getTime()===c.getTime())return a();n[o](i,l,u,a)}function b(e,t,r){var i=e._madeDir,a=s.dirname(t);!function(e,t,r){var i={};Object.keys(e.props).forEach((function(t){i[t]=e.props[t],"mode"===t&&"Directory"!==e.type&&(i[t]=i[t]|parseInt("0111",8))}));var a=3,o=null;function s(e){if(!o)return e?r(o=e):0==--a?r():void 0}n.stat(t,(function(n,a){if(n)return r(o=n);h(e,i,a,t,s),y(e,i,a,t,s),v(e,i,a,t,s)}))}(e,a,(function(t){return t?r(t):a===i?r():void b(e,a,r)}))}function k(e){return"object"==typeof e&&"[object Date]"===function(e){return Object.prototype.toString.call(e)}(e)}g.prototype._create=function(){var e=this;n[e.props.follow?"stat":"lstat"](e._path,(function(t){if(t)return e.warn("Cannot create "+e._path+"\nUnsupported type: "+e.type,"ENOTSUP");e._finish()}))},g.prototype._stat=function(e){var t=this,r=t.props.follow?"stat":"lstat",i=t._proxy||t;function o(e,r){return t.filter&&!t.filter.call(i,i,r)?(t._aborted=!0,t.emit("end"),void t.emit("close")):e||!r?_(t):(t._old=r,l(r)!==t.type||"File"===t.type&&r.nlink>1?a(t._path,(function(e){if(e)return t.error(e);t._old=null,_(t)})):void _(t))}e?o(null,e):n[r](t._path,o)},g.prototype._finish=function(){var e=this;if(e._finishing);else{e._finishing=!0;var t=0,r=null,i=!1;if(e._old)e._old.atime=new Date(0),e._old.mtime=new Date(0),o(e._old);else{var a=e.props.follow?"stat":"lstat";n[a](e._path,(function(t,r){if(t)return"ENOENT"!==t.code||"Link"!==e.type&&"SymbolicLink"!==e.type||"win32"!==process.platform?e.error(t):(e.ready=!0,e.emit("ready"),e.emit("end"),e.emit("close"),void(e.end=e._finish=function(){}));o(e._old=r)}))}}function o(r){t+=3,h(e,e.props,r,e._path,s("chmod")),y(e,e.props,r,e._path,s("chown")),v(e,e.props,r,e._path,s("utimes"))}function s(n){return function(a){if(!r){if(a)return a.fstream_finish_call=n,e.error(r=a);if(!(--t>0||i)){if(i=!0,!e._madeDir)return o();b(e,e._path,o)}}function o(t){if(t)return t.fstream_finish_call="setupMadeDir",e.error(t);e.emit("end"),e.emit("close")}}}},g.prototype.pipe=function(){this.error("Can't pipe from writable stream")},g.prototype.add=function(){this.error("Can't add to non-Directory type")},g.prototype.write=function(){return!0}},61198:(e,t,r)=>{function n(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.setopts=function(e,t,r){r||(r={});if(r.matchBase&&-1===t.indexOf("/")){if(r.noglobstar)throw new Error("base matching requires globstar");t="**/"+t}e.silent=!!r.silent,e.pattern=t,e.strict=!1!==r.strict,e.realpath=!!r.realpath,e.realpathCache=r.realpathCache||Object.create(null),e.follow=!!r.follow,e.dot=!!r.dot,e.mark=!!r.mark,e.nodir=!!r.nodir,e.nodir&&(e.mark=!0);e.sync=!!r.sync,e.nounique=!!r.nounique,e.nonull=!!r.nonull,e.nosort=!!r.nosort,e.nocase=!!r.nocase,e.stat=!!r.stat,e.noprocess=!!r.noprocess,e.absolute=!!r.absolute,e.fs=r.fs||i,e.maxLength=r.maxLength||1/0,e.cache=r.cache||Object.create(null),e.statCache=r.statCache||Object.create(null),e.symlinks=r.symlinks||Object.create(null),function(e,t){e.ignore=t.ignore||[],Array.isArray(e.ignore)||(e.ignore=[e.ignore]);e.ignore.length&&(e.ignore=e.ignore.map(u))}(e,r),e.changedCwd=!1;var o=process.cwd();n(r,"cwd")?(e.cwd=a.resolve(r.cwd),e.changedCwd=e.cwd!==o):e.cwd=o;e.root=r.root||a.resolve(e.cwd,"/"),e.root=a.resolve(e.root),"win32"===process.platform&&(e.root=e.root.replace(/\\/g,"/"));e.cwdAbs=s(e.cwd)?e.cwd:d(e,e.cwd),"win32"===process.platform&&(e.cwdAbs=e.cwdAbs.replace(/\\/g,"/"));e.nomount=!!r.nomount,r.nonegate=!0,r.nocomment=!0,r.allowWindowsEscape=!1,e.minimatch=new c(t,r),e.options=e.minimatch.options},t.ownProp=n,t.makeAbs=d,t.finish=function(e){for(var t=e.nounique,r=t?[]:Object.create(null),n=0,i=e.matches.length;n<i;n++){var a=e.matches[n];if(a&&0!==Object.keys(a).length){var o=Object.keys(a);t?r.push.apply(r,o):o.forEach((function(e){r[e]=!0}))}else if(e.nonull){var s=e.minimatch.globSet[n];t?r.push(s):r[s]=!0}}t||(r=Object.keys(r));e.nosort||(r=r.sort(l));if(e.mark){for(n=0;n<r.length;n++)r[n]=e._mark(r[n]);e.nodir&&(r=r.filter((function(t){var r=!/\/$/.test(t),n=e.cache[t]||e.cache[d(e,t)];return r&&n&&(r="DIR"!==n&&!Array.isArray(n)),r})))}e.ignore.length&&(r=r.filter((function(t){return!p(e,t)})));e.found=r},t.mark=function(e,t){var r=d(e,t),n=e.cache[r],i=t;if(n){var a="DIR"===n||Array.isArray(n),o="/"===t.slice(-1);if(a&&!o?i+="/":!a&&o&&(i=i.slice(0,-1)),i!==t){var s=d(e,i);e.statCache[s]=e.statCache[r],e.cache[s]=e.cache[r]}}return i},t.isIgnored=p,t.childrenIgnored=function(e,t){return!!e.ignore.length&&e.ignore.some((function(e){return!(!e.gmatcher||!e.gmatcher.match(t))}))};var i=r(79896),a=r(16928),o=r(94027),s=r(52641),c=o.Minimatch;function l(e,t){return e.localeCompare(t,"en")}function u(e){var t=null;if("/**"===e.slice(-3)){var r=e.replace(/(\/\*\*)+$/,"");t=new c(r,{dot:!0})}return{matcher:new c(e,{dot:!0}),gmatcher:t}}function d(e,t){var r=t;return r="/"===t.charAt(0)?a.join(e.root,t):s(t)||""===t?t:e.changedCwd?a.resolve(e.cwd,t):a.resolve(t),"win32"===process.platform&&(r=r.replace(/\\/g,"/")),r}function p(e,t){return!!e.ignore.length&&e.ignore.some((function(e){return e.matcher.match(t)||!(!e.gmatcher||!e.gmatcher.match(t))}))}},53577:(e,t,r)=>{e.exports=y;var n=r(61455),i=r(94027),a=(i.Minimatch,r(72017)),o=r(24434).EventEmitter,s=r(16928),c=r(42613),l=r(52641),u=r(34700),d=r(61198),p=d.setopts,f=d.ownProp,m=r(53423),g=(r(39023),d.childrenIgnored),_=d.isIgnored,h=r(83519);function y(e,t,r){if("function"==typeof t&&(r=t,t={}),t||(t={}),t.sync){if(r)throw new TypeError("callback provided to sync glob");return u(e,t)}return new b(e,t,r)}y.sync=u;var v=y.GlobSync=u.GlobSync;function b(e,t,r){if("function"==typeof t&&(r=t,t=null),t&&t.sync){if(r)throw new TypeError("callback provided to sync glob");return new v(e,t)}if(!(this instanceof b))return new b(e,t,r);p(this,e,t),this._didRealPath=!1;var n=this.minimatch.set.length;this.matches=new Array(n),"function"==typeof r&&(r=h(r),this.on("error",r),this.on("end",(function(e){r(null,e)})));var i=this;if(this._processing=0,this._emitQueue=[],this._processQueue=[],this.paused=!1,this.noprocess)return this;if(0===n)return s();for(var a=!0,o=0;o<n;o++)this._process(this.minimatch.set[o],o,!1,s);function s(){--i._processing,i._processing<=0&&(a?process.nextTick((function(){i._finish()})):i._finish())}a=!1}y.glob=y,y.hasMagic=function(e,t){var r=function(e,t){if(null===t||"object"!=typeof t)return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e}({},t);r.noprocess=!0;var n=new b(e,r).minimatch.set;if(!e)return!1;if(n.length>1)return!0;for(var i=0;i<n[0].length;i++)if("string"!=typeof n[0][i])return!0;return!1},y.Glob=b,a(b,o),b.prototype._finish=function(){if(c(this instanceof b),!this.aborted){if(this.realpath&&!this._didRealpath)return this._realpath();d.finish(this),this.emit("end",this.found)}},b.prototype._realpath=function(){if(!this._didRealpath){this._didRealpath=!0;var e=this.matches.length;if(0===e)return this._finish();for(var t=this,r=0;r<this.matches.length;r++)this._realpathSet(r,n)}function n(){0==--e&&t._finish()}},b.prototype._realpathSet=function(e,t){var r=this.matches[e];if(!r)return t();var i=Object.keys(r),a=this,o=i.length;if(0===o)return t();var s=this.matches[e]=Object.create(null);i.forEach((function(r,i){r=a._makeAbs(r),n.realpath(r,a.realpathCache,(function(n,i){n?"stat"===n.syscall?s[r]=!0:a.emit("error",n):s[i]=!0,0==--o&&(a.matches[e]=s,t())}))}))},b.prototype._mark=function(e){return d.mark(this,e)},b.prototype._makeAbs=function(e){return d.makeAbs(this,e)},b.prototype.abort=function(){this.aborted=!0,this.emit("abort")},b.prototype.pause=function(){this.paused||(this.paused=!0,this.emit("pause"))},b.prototype.resume=function(){if(this.paused){if(this.emit("resume"),this.paused=!1,this._emitQueue.length){var e=this._emitQueue.slice(0);this._emitQueue.length=0;for(var t=0;t<e.length;t++){var r=e[t];this._emitMatch(r[0],r[1])}}if(this._processQueue.length){var n=this._processQueue.slice(0);this._processQueue.length=0;for(t=0;t<n.length;t++){var i=n[t];this._processing--,this._process(i[0],i[1],i[2],i[3])}}}},b.prototype._process=function(e,t,r,n){if(c(this instanceof b),c("function"==typeof n),!this.aborted)if(this._processing++,this.paused)this._processQueue.push([e,t,r,n]);else{for(var a,o=0;"string"==typeof e[o];)o++;switch(o){case e.length:return void this._processSimple(e.join("/"),t,n);case 0:a=null;break;default:a=e.slice(0,o).join("/")}var s,u=e.slice(o);null===a?s=".":l(a)||l(e.map((function(e){return"string"==typeof e?e:"[*]"})).join("/"))?(a&&l(a)||(a="/"+a),s=a):s=a;var d=this._makeAbs(s);if(g(this,s))return n();u[0]===i.GLOBSTAR?this._processGlobStar(a,s,d,u,t,r,n):this._processReaddir(a,s,d,u,t,r,n)}},b.prototype._processReaddir=function(e,t,r,n,i,a,o){var s=this;this._readdir(r,a,(function(c,l){return s._processReaddir2(e,t,r,n,i,a,l,o)}))},b.prototype._processReaddir2=function(e,t,r,n,i,a,o,c){if(!o)return c();for(var l=n[0],u=!!this.minimatch.negate,d=l._glob,p=this.dot||"."===d.charAt(0),f=[],m=0;m<o.length;m++){if("."!==(_=o[m]).charAt(0)||p)(u&&!e?!_.match(l):_.match(l))&&f.push(_)}var g=f.length;if(0===g)return c();if(1===n.length&&!this.mark&&!this.stat){this.matches[i]||(this.matches[i]=Object.create(null));for(m=0;m<g;m++){var _=f[m];e&&(_="/"!==e?e+"/"+_:e+_),"/"!==_.charAt(0)||this.nomount||(_=s.join(this.root,_)),this._emitMatch(i,_)}return c()}n.shift();for(m=0;m<g;m++){_=f[m];e&&(_="/"!==e?e+"/"+_:e+_),this._process([_].concat(n),i,a,c)}c()},b.prototype._emitMatch=function(e,t){if(!this.aborted&&!_(this,t))if(this.paused)this._emitQueue.push([e,t]);else{var r=l(t)?t:this._makeAbs(t);if(this.mark&&(t=this._mark(t)),this.absolute&&(t=r),!this.matches[e][t]){if(this.nodir){var n=this.cache[r];if("DIR"===n||Array.isArray(n))return}this.matches[e][t]=!0;var i=this.statCache[r];i&&this.emit("stat",t,i),this.emit("match",t)}}},b.prototype._readdirInGlobStar=function(e,t){if(!this.aborted){if(this.follow)return this._readdir(e,!1,t);var r=this,n=m("lstat\0"+e,(function(n,i){if(n&&"ENOENT"===n.code)return t();var a=i&&i.isSymbolicLink();r.symlinks[e]=a,a||!i||i.isDirectory()?r._readdir(e,!1,t):(r.cache[e]="FILE",t())}));n&&r.fs.lstat(e,n)}},b.prototype._readdir=function(e,t,r){if(!this.aborted&&(r=m("readdir\0"+e+"\0"+t,r))){if(t&&!f(this.symlinks,e))return this._readdirInGlobStar(e,r);if(f(this.cache,e)){var n=this.cache[e];if(!n||"FILE"===n)return r();if(Array.isArray(n))return r(null,n)}this.fs.readdir(e,function(e,t,r){return function(n,i){n?e._readdirError(t,n,r):e._readdirEntries(t,i,r)}}(this,e,r))}},b.prototype._readdirEntries=function(e,t,r){if(!this.aborted){if(!this.mark&&!this.stat)for(var n=0;n<t.length;n++){var i=t[n];i="/"===e?e+i:e+"/"+i,this.cache[i]=!0}return this.cache[e]=t,r(null,t)}},b.prototype._readdirError=function(e,t,r){if(!this.aborted){switch(t.code){case"ENOTSUP":case"ENOTDIR":var n=this._makeAbs(e);if(this.cache[n]="FILE",n===this.cwdAbs){var i=new Error(t.code+" invalid cwd "+this.cwd);i.path=this.cwd,i.code=t.code,this.emit("error",i),this.abort()}break;case"ENOENT":case"ELOOP":case"ENAMETOOLONG":case"UNKNOWN":this.cache[this._makeAbs(e)]=!1;break;default:this.cache[this._makeAbs(e)]=!1,this.strict&&(this.emit("error",t),this.abort()),this.silent||console.error("glob error",t)}return r()}},b.prototype._processGlobStar=function(e,t,r,n,i,a,o){var s=this;this._readdir(r,a,(function(c,l){s._processGlobStar2(e,t,r,n,i,a,l,o)}))},b.prototype._processGlobStar2=function(e,t,r,n,i,a,o,s){if(!o)return s();var c=n.slice(1),l=e?[e]:[],u=l.concat(c);this._process(u,i,!1,s);var d=this.symlinks[r],p=o.length;if(d&&a)return s();for(var f=0;f<p;f++){if("."!==o[f].charAt(0)||this.dot){var m=l.concat(o[f],c);this._process(m,i,!0,s);var g=l.concat(o[f],n);this._process(g,i,!0,s)}}s()},b.prototype._processSimple=function(e,t,r){var n=this;this._stat(e,(function(i,a){n._processSimple2(e,t,i,a,r)}))},b.prototype._processSimple2=function(e,t,r,n,i){if(this.matches[t]||(this.matches[t]=Object.create(null)),!n)return i();if(e&&l(e)&&!this.nomount){var a=/[\/\\]$/.test(e);"/"===e.charAt(0)?e=s.join(this.root,e):(e=s.resolve(this.root,e),a&&(e+="/"))}"win32"===process.platform&&(e=e.replace(/\\/g,"/")),this._emitMatch(t,e),i()},b.prototype._stat=function(e,t){var r=this._makeAbs(e),n="/"===e.slice(-1);if(e.length>this.maxLength)return t();if(!this.stat&&f(this.cache,r)){var i=this.cache[r];if(Array.isArray(i)&&(i="DIR"),!n||"DIR"===i)return t(null,i);if(n&&"FILE"===i)return t()}var a=this.statCache[r];if(void 0!==a){if(!1===a)return t(null,a);var o=a.isDirectory()?"DIR":"FILE";return n&&"FILE"===o?t():t(null,o,a)}var s=this,c=m("stat\0"+r,(function(n,i){if(i&&i.isSymbolicLink())return s.fs.stat(r,(function(n,a){n?s._stat2(e,r,null,i,t):s._stat2(e,r,n,a,t)}));s._stat2(e,r,n,i,t)}));c&&s.fs.lstat(r,c)},b.prototype._stat2=function(e,t,r,n,i){if(r&&("ENOENT"===r.code||"ENOTDIR"===r.code))return this.statCache[t]=!1,i();var a="/"===e.slice(-1);if(this.statCache[t]=n,"/"===t.slice(-1)&&n&&!n.isDirectory())return i(null,!1,n);var o=!0;return n&&(o=n.isDirectory()?"DIR":"FILE"),this.cache[t]=this.cache[t]||o,a&&"FILE"===o?i():i(null,o,n)}},34700:(e,t,r)=>{e.exports=f,f.GlobSync=m;var n=r(61455),i=r(94027),a=(i.Minimatch,r(53577).Glob,r(39023),r(16928)),o=r(42613),s=r(52641),c=r(61198),l=c.setopts,u=c.ownProp,d=c.childrenIgnored,p=c.isIgnored;function f(e,t){if("function"==typeof t||3===arguments.length)throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167");return new m(e,t).found}function m(e,t){if(!e)throw new Error("must provide pattern");if("function"==typeof t||3===arguments.length)throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167");if(!(this instanceof m))return new m(e,t);if(l(this,e,t),this.noprocess)return this;var r=this.minimatch.set.length;this.matches=new Array(r);for(var n=0;n<r;n++)this._process(this.minimatch.set[n],n,!1);this._finish()}m.prototype._finish=function(){if(o.ok(this instanceof m),this.realpath){var e=this;this.matches.forEach((function(t,r){var i=e.matches[r]=Object.create(null);for(var a in t)try{a=e._makeAbs(a),i[n.realpathSync(a,e.realpathCache)]=!0}catch(t){if("stat"!==t.syscall)throw t;i[e._makeAbs(a)]=!0}}))}c.finish(this)},m.prototype._process=function(e,t,r){o.ok(this instanceof m);for(var n,a=0;"string"==typeof e[a];)a++;switch(a){case e.length:return void this._processSimple(e.join("/"),t);case 0:n=null;break;default:n=e.slice(0,a).join("/")}var c,l=e.slice(a);null===n?c=".":s(n)||s(e.map((function(e){return"string"==typeof e?e:"[*]"})).join("/"))?(n&&s(n)||(n="/"+n),c=n):c=n;var u=this._makeAbs(c);d(this,c)||(l[0]===i.GLOBSTAR?this._processGlobStar(n,c,u,l,t,r):this._processReaddir(n,c,u,l,t,r))},m.prototype._processReaddir=function(e,t,r,n,i,o){var s=this._readdir(r,o);if(s){for(var c=n[0],l=!!this.minimatch.negate,u=c._glob,d=this.dot||"."===u.charAt(0),p=[],f=0;f<s.length;f++){if("."!==(_=s[f]).charAt(0)||d)(l&&!e?!_.match(c):_.match(c))&&p.push(_)}var m=p.length;if(0!==m)if(1!==n.length||this.mark||this.stat){n.shift();for(f=0;f<m;f++){var g;_=p[f];g=e?[e,_]:[_],this._process(g.concat(n),i,o)}}else{this.matches[i]||(this.matches[i]=Object.create(null));for(var f=0;f<m;f++){var _=p[f];e&&(_="/"!==e.slice(-1)?e+"/"+_:e+_),"/"!==_.charAt(0)||this.nomount||(_=a.join(this.root,_)),this._emitMatch(i,_)}}}},m.prototype._emitMatch=function(e,t){if(!p(this,t)){var r=this._makeAbs(t);if(this.mark&&(t=this._mark(t)),this.absolute&&(t=r),!this.matches[e][t]){if(this.nodir){var n=this.cache[r];if("DIR"===n||Array.isArray(n))return}this.matches[e][t]=!0,this.stat&&this._stat(t)}}},m.prototype._readdirInGlobStar=function(e){if(this.follow)return this._readdir(e,!1);var t,r;try{r=this.fs.lstatSync(e)}catch(e){if("ENOENT"===e.code)return null}var n=r&&r.isSymbolicLink();return this.symlinks[e]=n,n||!r||r.isDirectory()?t=this._readdir(e,!1):this.cache[e]="FILE",t},m.prototype._readdir=function(e,t){if(t&&!u(this.symlinks,e))return this._readdirInGlobStar(e);if(u(this.cache,e)){var r=this.cache[e];if(!r||"FILE"===r)return null;if(Array.isArray(r))return r}try{return this._readdirEntries(e,this.fs.readdirSync(e))}catch(t){return this._readdirError(e,t),null}},m.prototype._readdirEntries=function(e,t){if(!this.mark&&!this.stat)for(var r=0;r<t.length;r++){var n=t[r];n="/"===e?e+n:e+"/"+n,this.cache[n]=!0}return this.cache[e]=t,t},m.prototype._readdirError=function(e,t){switch(t.code){case"ENOTSUP":case"ENOTDIR":var r=this._makeAbs(e);if(this.cache[r]="FILE",r===this.cwdAbs){var n=new Error(t.code+" invalid cwd "+this.cwd);throw n.path=this.cwd,n.code=t.code,n}break;case"ENOENT":case"ELOOP":case"ENAMETOOLONG":case"UNKNOWN":this.cache[this._makeAbs(e)]=!1;break;default:if(this.cache[this._makeAbs(e)]=!1,this.strict)throw t;this.silent||console.error("glob error",t)}},m.prototype._processGlobStar=function(e,t,r,n,i,a){var o=this._readdir(r,a);if(o){var s=n.slice(1),c=e?[e]:[],l=c.concat(s);this._process(l,i,!1);var u=o.length;if(!this.symlinks[r]||!a)for(var d=0;d<u;d++){if("."!==o[d].charAt(0)||this.dot){var p=c.concat(o[d],s);this._process(p,i,!0);var f=c.concat(o[d],n);this._process(f,i,!0)}}}},m.prototype._processSimple=function(e,t){var r=this._stat(e);if(this.matches[t]||(this.matches[t]=Object.create(null)),r){if(e&&s(e)&&!this.nomount){var n=/[\/\\]$/.test(e);"/"===e.charAt(0)?e=a.join(this.root,e):(e=a.resolve(this.root,e),n&&(e+="/"))}"win32"===process.platform&&(e=e.replace(/\\/g,"/")),this._emitMatch(t,e)}},m.prototype._stat=function(e){var t=this._makeAbs(e),r="/"===e.slice(-1);if(e.length>this.maxLength)return!1;if(!this.stat&&u(this.cache,t)){var n=this.cache[t];if(Array.isArray(n)&&(n="DIR"),!r||"DIR"===n)return n;if(r&&"FILE"===n)return!1}var i=this.statCache[t];if(!i){var a;try{a=this.fs.lstatSync(t)}catch(e){if(e&&("ENOENT"===e.code||"ENOTDIR"===e.code))return this.statCache[t]=!1,!1}if(a&&a.isSymbolicLink())try{i=this.fs.statSync(t)}catch(e){i=a}else i=a}this.statCache[t]=i;n=!0;return i&&(n=i.isDirectory()?"DIR":"FILE"),this.cache[t]=this.cache[t]||n,(!r||"FILE"!==n)&&n},m.prototype._mark=function(e){return c.mark(this,e)},m.prototype._makeAbs=function(e){return c.makeAbs(this,e)}},1283:e=>{"use strict";e.exports=function(e){if(null===e||"object"!=typeof e)return e;if(e instanceof Object)var r={__proto__:t(e)};else r=Object.create(null);return Object.getOwnPropertyNames(e).forEach((function(t){Object.defineProperty(r,t,Object.getOwnPropertyDescriptor(e,t))})),r};var t=Object.getPrototypeOf||function(e){return e.__proto__}},63735:(e,t,r)=>{var n,i,a=r(79896),o=r(69106),s=r(11995),c=r(1283),l=r(39023);function u(e,t){Object.defineProperty(e,n,{get:function(){return t}})}"function"==typeof Symbol&&"function"==typeof Symbol.for?(n=Symbol.for("graceful-fs.queue"),i=Symbol.for("graceful-fs.previous")):(n="___graceful-fs.queue",i="___graceful-fs.previous");var d,p=function(){};if(l.debuglog?p=l.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(p=function(){var e=l.format.apply(l,arguments);e="GFS4: "+e.split(/\n/).join("\nGFS4: "),console.error(e)}),!a[n]){var f=global[n]||[];u(a,f),a.close=function(e){function t(t,r){return e.call(a,t,(function(e){e||_(),"function"==typeof r&&r.apply(this,arguments)}))}return Object.defineProperty(t,i,{value:e}),t}(a.close),a.closeSync=function(e){function t(t){e.apply(a,arguments),_()}return Object.defineProperty(t,i,{value:e}),t}(a.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",(function(){p(a[n]),r(42613).equal(a[n].length,0)}))}function m(e){o(e),e.gracefulify=m,e.createReadStream=function(t,r){return new e.ReadStream(t,r)},e.createWriteStream=function(t,r){return new e.WriteStream(t,r)};var t=e.readFile;e.readFile=function(e,r,n){"function"==typeof r&&(n=r,r=null);return function e(r,n,i,a){return t(r,n,(function(t){!t||"EMFILE"!==t.code&&"ENFILE"!==t.code?"function"==typeof i&&i.apply(this,arguments):g([e,[r,n,i],t,a||Date.now(),Date.now()])}))}(e,r,n)};var r=e.writeFile;e.writeFile=function(e,t,n,i){"function"==typeof n&&(i=n,n=null);return function e(t,n,i,a,o){return r(t,n,i,(function(r){!r||"EMFILE"!==r.code&&"ENFILE"!==r.code?"function"==typeof a&&a.apply(this,arguments):g([e,[t,n,i,a],r,o||Date.now(),Date.now()])}))}(e,t,n,i)};var n=e.appendFile;n&&(e.appendFile=function(e,t,r,i){"function"==typeof r&&(i=r,r=null);return function e(t,r,i,a,o){return n(t,r,i,(function(n){!n||"EMFILE"!==n.code&&"ENFILE"!==n.code?"function"==typeof a&&a.apply(this,arguments):g([e,[t,r,i,a],n,o||Date.now(),Date.now()])}))}(e,t,r,i)});var i=e.copyFile;i&&(e.copyFile=function(e,t,r,n){"function"==typeof r&&(n=r,r=0);return function e(t,r,n,a,o){return i(t,r,n,(function(i){!i||"EMFILE"!==i.code&&"ENFILE"!==i.code?"function"==typeof a&&a.apply(this,arguments):g([e,[t,r,n,a],i,o||Date.now(),Date.now()])}))}(e,t,r,n)});var a=e.readdir;e.readdir=function(e,t,r){"function"==typeof t&&(r=t,t=null);var n=c.test(process.version)?function(e,t,r,n){return a(e,i(e,t,r,n))}:function(e,t,r,n){return a(e,t,i(e,t,r,n))};return n(e,t,r);function i(e,t,r,i){return function(a,o){!a||"EMFILE"!==a.code&&"ENFILE"!==a.code?(o&&o.sort&&o.sort(),"function"==typeof r&&r.call(this,a,o)):g([n,[e,t,r],a,i||Date.now(),Date.now()])}}};var c=/^v[0-5]\./;if("v0.8"===process.version.substr(0,4)){var l=s(e);_=l.ReadStream,h=l.WriteStream}var u=e.ReadStream;u&&(_.prototype=Object.create(u.prototype),_.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,(function(t,r){t?(e.autoClose&&e.destroy(),e.emit("error",t)):(e.fd=r,e.emit("open",r),e.read())}))});var d=e.WriteStream;d&&(h.prototype=Object.create(d.prototype),h.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,(function(t,r){t?(e.destroy(),e.emit("error",t)):(e.fd=r,e.emit("open",r))}))}),Object.defineProperty(e,"ReadStream",{get:function(){return _},set:function(e){_=e},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return h},set:function(e){h=e},enumerable:!0,configurable:!0});var p=_;Object.defineProperty(e,"FileReadStream",{get:function(){return p},set:function(e){p=e},enumerable:!0,configurable:!0});var f=h;function _(e,t){return this instanceof _?(u.apply(this,arguments),this):_.apply(Object.create(_.prototype),arguments)}function h(e,t){return this instanceof h?(d.apply(this,arguments),this):h.apply(Object.create(h.prototype),arguments)}Object.defineProperty(e,"FileWriteStream",{get:function(){return f},set:function(e){f=e},enumerable:!0,configurable:!0});var y=e.open;function v(e,t,r,n){return"function"==typeof r&&(n=r,r=null),function e(t,r,n,i,a){return y(t,r,n,(function(o,s){!o||"EMFILE"!==o.code&&"ENFILE"!==o.code?"function"==typeof i&&i.apply(this,arguments):g([e,[t,r,n,i],o,a||Date.now(),Date.now()])}))}(e,t,r,n)}return e.open=v,e}function g(e){p("ENQUEUE",e[0].name,e[1]),a[n].push(e),h()}function _(){for(var e=Date.now(),t=0;t<a[n].length;++t)a[n][t].length>2&&(a[n][t][3]=e,a[n][t][4]=e);h()}function h(){if(clearTimeout(d),d=void 0,0!==a[n].length){var e=a[n].shift(),t=e[0],r=e[1],i=e[2],o=e[3],s=e[4];if(void 0===o)p("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-o>=6e4){p("TIMEOUT",t.name,r);var c=r.pop();"function"==typeof c&&c.call(null,i)}else{var l=Date.now()-s,u=Math.max(s-o,1);l>=Math.min(1.2*u,100)?(p("RETRY",t.name,r),t.apply(null,r.concat([o]))):a[n].push(e)}void 0===d&&(d=setTimeout(h,0))}}global[n]||u(global,a[n]),e.exports=m(c(a)),process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!a.__patched&&(e.exports=m(a),a.__patched=!0)},11995:(e,t,r)=>{var n=r(2203).Stream;e.exports=function(e){return{ReadStream:function t(r,i){if(!(this instanceof t))return new t(r,i);n.call(this);var a=this;this.path=r,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536,i=i||{};for(var o=Object.keys(i),s=0,c=o.length;s<c;s++){var l=o[s];this[l]=i[l]}this.encoding&&this.setEncoding(this.encoding);if(void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(void 0===this.end)this.end=1/0;else if("number"!=typeof this.end)throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(null!==this.fd)return void process.nextTick((function(){a._read()}));e.open(this.path,this.flags,this.mode,(function(e,t){if(e)return a.emit("error",e),void(a.readable=!1);a.fd=t,a.emit("open",t),a._read()}))},WriteStream:function t(r,i){if(!(this instanceof t))return new t(r,i);n.call(this),this.path=r,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,i=i||{};for(var a=Object.keys(i),o=0,s=a.length;o<s;o++){var c=a[o];this[c]=i[c]}if(void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],null===this.fd&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}}},69106:(e,t,r)=>{var n=r(49140),i=process.cwd,a=null,o=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return a||(a=i.call(process)),a};try{process.cwd()}catch(e){}if("function"==typeof process.chdir){var s=process.chdir;process.chdir=function(e){a=null,s.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,s)}e.exports=function(e){n.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&function(e){e.lchmod=function(t,r,i){e.open(t,n.O_WRONLY|n.O_SYMLINK,r,(function(t,n){t?i&&i(t):e.fchmod(n,r,(function(t){e.close(n,(function(e){i&&i(t||e)}))}))}))},e.lchmodSync=function(t,r){var i,a=e.openSync(t,n.O_WRONLY|n.O_SYMLINK,r),o=!0;try{i=e.fchmodSync(a,r),o=!1}finally{if(o)try{e.closeSync(a)}catch(e){}else e.closeSync(a)}return i}}(e);e.lutimes||function(e){n.hasOwnProperty("O_SYMLINK")&&e.futimes?(e.lutimes=function(t,r,i,a){e.open(t,n.O_SYMLINK,(function(t,n){t?a&&a(t):e.futimes(n,r,i,(function(t){e.close(n,(function(e){a&&a(t||e)}))}))}))},e.lutimesSync=function(t,r,i){var a,o=e.openSync(t,n.O_SYMLINK),s=!0;try{a=e.futimesSync(o,r,i),s=!1}finally{if(s)try{e.closeSync(o)}catch(e){}else e.closeSync(o)}return a}):e.futimes&&(e.lutimes=function(e,t,r,n){n&&process.nextTick(n)},e.lutimesSync=function(){})}(e);e.chown=i(e.chown),e.fchown=i(e.fchown),e.lchown=i(e.lchown),e.chmod=t(e.chmod),e.fchmod=t(e.fchmod),e.lchmod=t(e.lchmod),e.chownSync=a(e.chownSync),e.fchownSync=a(e.fchownSync),e.lchownSync=a(e.lchownSync),e.chmodSync=r(e.chmodSync),e.fchmodSync=r(e.fchmodSync),e.lchmodSync=r(e.lchmodSync),e.stat=s(e.stat),e.fstat=s(e.fstat),e.lstat=s(e.lstat),e.statSync=c(e.statSync),e.fstatSync=c(e.fstatSync),e.lstatSync=c(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(e,t,r){r&&process.nextTick(r)},e.lchmodSync=function(){});e.chown&&!e.lchown&&(e.lchown=function(e,t,r,n){n&&process.nextTick(n)},e.lchownSync=function(){});"win32"===o&&(e.rename="function"!=typeof e.rename?e.rename:function(t){function r(r,n,i){var a=Date.now(),o=0;t(r,n,(function s(c){if(c&&("EACCES"===c.code||"EPERM"===c.code||"EBUSY"===c.code)&&Date.now()-a<6e4)return setTimeout((function(){e.stat(n,(function(e,a){e&&"ENOENT"===e.code?t(r,n,s):i(c)}))}),o),void(o<100&&(o+=10));i&&i(c)}))}return Object.setPrototypeOf&&Object.setPrototypeOf(r,t),r}(e.rename));function t(t){return t?function(r,n,i){return t.call(e,r,n,(function(e){l(e)&&(e=null),i&&i.apply(this,arguments)}))}:t}function r(t){return t?function(r,n){try{return t.call(e,r,n)}catch(e){if(!l(e))throw e}}:t}function i(t){return t?function(r,n,i,a){return t.call(e,r,n,i,(function(e){l(e)&&(e=null),a&&a.apply(this,arguments)}))}:t}function a(t){return t?function(r,n,i){try{return t.call(e,r,n,i)}catch(e){if(!l(e))throw e}}:t}function s(t){return t?function(r,n,i){function a(e,t){t&&(t.uid<0&&(t.uid+=4294967296),t.gid<0&&(t.gid+=4294967296)),i&&i.apply(this,arguments)}return"function"==typeof n&&(i=n,n=null),n?t.call(e,r,n,a):t.call(e,r,a)}:t}function c(t){return t?function(r,n){var i=n?t.call(e,r,n):t.call(e,r);return i&&(i.uid<0&&(i.uid+=4294967296),i.gid<0&&(i.gid+=4294967296)),i}:t}function l(e){return!e||("ENOSYS"===e.code||!(process.getuid&&0===process.getuid()||"EINVAL"!==e.code&&"EPERM"!==e.code))}e.read="function"!=typeof e.read?e.read:function(t){function r(r,n,i,a,o,s){var c;if(s&&"function"==typeof s){var l=0;c=function(u,d,p){if(u&&"EAGAIN"===u.code&&l<10)return l++,t.call(e,r,n,i,a,o,c);s.apply(this,arguments)}}return t.call(e,r,n,i,a,o,c)}return Object.setPrototypeOf&&Object.setPrototypeOf(r,t),r}(e.read),e.readSync="function"!=typeof e.readSync?e.readSync:(u=e.readSync,function(t,r,n,i,a){for(var o=0;;)try{return u.call(e,t,r,n,i,a)}catch(e){if("EAGAIN"===e.code&&o<10){o++;continue}throw e}});var u}},90874:e=>{"use strict";var t,r,n=global.MutationObserver||global.WebKitMutationObserver;if(process.browser)if(n){var i=0,a=new n(l),o=global.document.createTextNode("");a.observe(o,{characterData:!0}),t=function(){o.data=i=++i%2}}else if(global.setImmediate||void 0===global.MessageChannel)t="document"in global&&"onreadystatechange"in global.document.createElement("script")?function(){var e=global.document.createElement("script");e.onreadystatechange=function(){l(),e.onreadystatechange=null,e.parentNode.removeChild(e),e=null},global.document.documentElement.appendChild(e)}:function(){setTimeout(l,0)};else{var s=new global.MessageChannel;s.port1.onmessage=l,t=function(){s.port2.postMessage(0)}}else t=function(){process.nextTick(l)};var c=[];function l(){var e,t;r=!0;for(var n=c.length;n;){for(t=c,c=[],e=-1;++e<n;)t[e]();n=c.length}r=!1}e.exports=function(e){1!==c.push(e)||r||t()}},53423:(e,t,r)=>{var n=r(86587),i=Object.create(null),a=r(83519);e.exports=n((function(e,t){return i[e]?(i[e].push(t),null):(i[e]=[t],function(e){return a((function t(){var r=i[e],n=r.length,a=function(e){for(var t=e.length,r=[],n=0;n<t;n++)r[n]=e[n];return r}(arguments);try{for(var o=0;o<n;o++)r[o].apply(null,a)}finally{r.length>n?(r.splice(0,n),process.nextTick((function(){t.apply(null,a)}))):delete i[e]}}))}(e))}))},72017:(e,t,r)=>{try{var n=r(39023);if("function"!=typeof n.inherits)throw"";e.exports=n.inherits}catch(t){e.exports=r(56698)}},56698:e=>{"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},64634:e=>{var t={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==t.call(e)}},32678:(e,t,r)=>{"use strict";var n=r(11132),i=r(76954),a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";t.encode=function(e){for(var t,r,i,o,s,c,l,u=[],d=0,p=e.length,f=p,m="string"!==n.getTypeOf(e);d<e.length;)f=p-d,m?(t=e[d++],r=d<p?e[d++]:0,i=d<p?e[d++]:0):(t=e.charCodeAt(d++),r=d<p?e.charCodeAt(d++):0,i=d<p?e.charCodeAt(d++):0),o=t>>2,s=(3&t)<<4|r>>4,c=f>1?(15&r)<<2|i>>6:64,l=f>2?63&i:64,u.push(a.charAt(o)+a.charAt(s)+a.charAt(c)+a.charAt(l));return u.join("")},t.decode=function(e){var t,r,n,o,s,c,l=0,u=0,d="data:";if(e.substr(0,5)===d)throw new Error("Invalid base64 input, it looks like a data url.");var p,f=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(e.charAt(e.length-1)===a.charAt(64)&&f--,e.charAt(e.length-2)===a.charAt(64)&&f--,f%1!=0)throw new Error("Invalid base64 input, bad content length.");for(p=i.uint8array?new Uint8Array(0|f):new Array(0|f);l<e.length;)t=a.indexOf(e.charAt(l++))<<2|(o=a.indexOf(e.charAt(l++)))>>4,r=(15&o)<<4|(s=a.indexOf(e.charAt(l++)))>>2,n=(3&s)<<6|(c=a.indexOf(e.charAt(l++))),p[u++]=t,64!==s&&(p[u++]=r),64!==c&&(p[u++]=n);return p}},18807:(e,t,r)=>{"use strict";var n=r(37882),i=r(4982),a=r(71919),o=r(88432);function s(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}s.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o("data_length")),t=this;return e.on("end",(function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")})),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},s.createWorkerFrom=function(e,t,r){return e.pipe(new a).pipe(new o("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new o("compressedSize")).withStreamInfo("compression",t)},e.exports=s},63078:(e,t,r)=>{"use strict";var n=r(80193);t.STORE={magic:"\0\0",compressWorker:function(){return new n("STORE compression")},uncompressWorker:function(){return new n("STORE decompression")}},t.DEFLATE=r(32039)},88786:(e,t,r)=>{"use strict";var n=r(11132);var i=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();e.exports=function(e,t){return void 0!==e&&e.length?"string"!==n.getTypeOf(e)?function(e,t,r,n){var a=i,o=n+r;e=~e;for(var s=n;s<o;s++)e=e>>>8^a[255&(e^t[s])];return~e}(0|t,e,e.length,0):function(e,t,r,n){var a=i,o=n+r;e=~e;for(var s=n;s<o;s++)e=e>>>8^a[255&(e^t.charCodeAt(s))];return~e}(0|t,e,e.length,0):0}},75051:(e,t)=>{"use strict";t.base64=!1,t.binary=!1,t.dir=!1,t.createFolders=!0,t.date=null,t.compression=null,t.compressionOptions=null,t.comment=null,t.unixPermissions=null,t.dosPermissions=null},37882:(e,t,r)=>{"use strict";var n=null;n="undefined"!=typeof Promise?Promise:r(39977),e.exports={Promise:n}},32039:(e,t,r)=>{"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=r(51668),a=r(11132),o=r(80193),s=n?"uint8array":"array";function c(e,t){o.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}t.magic="\b\0",a.inherits(c,o),c.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(a.transformTo(s,e.data),!1)},c.prototype.flush=function(){o.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},c.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},c.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},t.compressWorker=function(e){return new c("Deflate",e)},t.uncompressWorker=function(){return new c("Inflate",{})}},33890:(e,t,r)=>{"use strict";var n=r(11132),i=r(80193),a=r(8222),o=r(88786),s=r(6407),c=function(e,t){var r,n="";for(r=0;r<t;r++)n+=String.fromCharCode(255&e),e>>>=8;return n},l=function(e,t,r,i,l,u){var d,p,f=e.file,m=e.compression,g=u!==a.utf8encode,_=n.transformTo("string",u(f.name)),h=n.transformTo("string",a.utf8encode(f.name)),y=f.comment,v=n.transformTo("string",u(y)),b=n.transformTo("string",a.utf8encode(y)),k=h.length!==f.name.length,x=b.length!==y.length,E="",S="",D="",w=f.dir,T=f.date,C={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(C.crc32=e.crc32,C.compressedSize=e.compressedSize,C.uncompressedSize=e.uncompressedSize);var A=0;t&&(A|=8),g||!k&&!x||(A|=2048);var N,P,I,F=0,O=0;w&&(F|=16),"UNIX"===l?(O=798,F|=(N=f.unixPermissions,P=w,I=N,N||(I=P?16893:33204),(65535&I)<<16)):(O=20,F|=63&(f.dosPermissions||0)),d=T.getUTCHours(),d<<=6,d|=T.getUTCMinutes(),d<<=5,d|=T.getUTCSeconds()/2,p=T.getUTCFullYear()-1980,p<<=4,p|=T.getUTCMonth()+1,p<<=5,p|=T.getUTCDate(),k&&(S=c(1,1)+c(o(_),4)+h,E+="up"+c(S.length,2)+S),x&&(D=c(1,1)+c(o(v),4)+b,E+="uc"+c(D.length,2)+D);var R="";return R+="\n\0",R+=c(A,2),R+=m.magic,R+=c(d,2),R+=c(p,2),R+=c(C.crc32,4),R+=c(C.compressedSize,4),R+=c(C.uncompressedSize,4),R+=c(_.length,2),R+=c(E.length,2),{fileRecord:s.LOCAL_FILE_HEADER+R+_+E,dirRecord:s.CENTRAL_FILE_HEADER+c(O,2)+R+c(v.length,2)+"\0\0\0\0"+c(F,4)+c(i,4)+_+E+v}},u=function(e){return s.DATA_DESCRIPTOR+c(e.crc32,4)+c(e.compressedSize,4)+c(e.uncompressedSize,4)};function d(e,t,r,n){i.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}n.inherits(d,i),d.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,i.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},d.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var r=l(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},d.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=l(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:u(e),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},d.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var r=this.bytesWritten-e,i=function(e,t,r,i,a){var o=n.transformTo("string",a(i));return s.CENTRAL_DIRECTORY_END+"\0\0\0\0"+c(e,2)+c(e,2)+c(t,4)+c(r,4)+c(o.length,2)+o}(this.dirRecords.length,r,e,this.zipComment,this.encodeFileName);this.push({data:i,meta:{percent:100}})},d.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},d.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on("data",(function(e){t.processChunk(e)})),e.on("end",(function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()})),e.on("error",(function(e){t.error(e)})),this},d.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},d.prototype.error=function(e){var t=this._sources;if(!i.prototype.error.call(this,e))return!1;for(var r=0;r<t.length;r++)try{t[r].error(e)}catch(e){}return!0},d.prototype.lock=function(){i.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},e.exports=d},41269:(e,t,r)=>{"use strict";var n=r(63078),i=r(33890);t.generateWorker=function(e,t,r){var a=new i(t.streamFiles,r,t.platform,t.encodeFileName),o=0;try{e.forEach((function(e,r){o++;var i=function(e,t){var r=e||t,i=n[r];if(!i)throw new Error(r+" is not a valid compression method !");return i}(r.options.compression,t.compression),s=r.options.compressionOptions||t.compressionOptions||{},c=r.dir,l=r.date;r._compressWorker(i,s).withStreamInfo("file",{name:e,dir:c,date:l,comment:r.comment||"",unixPermissions:r.unixPermissions,dosPermissions:r.dosPermissions}).pipe(a)})),a.entriesCount=o}catch(e){a.error(e)}return a}},58833:(e,t,r)=>{"use strict";function n(){if(!(this instanceof n))return new n;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var e=new n;for(var t in this)"function"!=typeof this[t]&&(e[t]=this[t]);return e}}n.prototype=r(98442),n.prototype.loadAsync=r(80629),n.support=r(76954),n.defaults=r(75051),n.version="3.10.1",n.loadAsync=function(e,t){return(new n).loadAsync(e,t)},n.external=r(37882),e.exports=n},80629:(e,t,r)=>{"use strict";var n=r(11132),i=r(37882),a=r(8222),o=r(47548),s=r(71919),c=r(50417);function l(e){return new i.Promise((function(t,r){var n=e.decompressed.getContentWorker().pipe(new s);n.on("error",(function(e){r(e)})).on("end",(function(){n.streamInfo.crc32!==e.decompressed.crc32?r(new Error("Corrupted zip : CRC32 mismatch")):t()})).resume()}))}e.exports=function(e,t){var r=this;return t=n.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:a.utf8decode}),c.isNode&&c.isStream(e)?i.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):n.prepareContent("the loaded zip file",e,!0,t.optimizedBinaryString,t.base64).then((function(e){var r=new o(t);return r.load(e),r})).then((function(e){var r=[i.Promise.resolve(e)],n=e.files;if(t.checkCRC32)for(var a=0;a<n.length;a++)r.push(l(n[a]));return i.Promise.all(r)})).then((function(e){for(var i=e.shift(),a=i.files,o=0;o<a.length;o++){var s=a[o],c=s.fileNameStr,l=n.resolve(s.fileNameStr);r.file(l,s.decompressed,{binary:!0,optimizedBinaryString:!0,date:s.date,dir:s.dir,comment:s.fileCommentStr.length?s.fileCommentStr:null,unixPermissions:s.unixPermissions,dosPermissions:s.dosPermissions,createFolders:t.createFolders}),s.dir||(r.file(l).unsafeOriginalName=c)}return i.zipComment.length&&(r.comment=i.zipComment),r}))}},50417:e=>{"use strict";e.exports={isNode:"undefined"!=typeof Buffer,newBufferFrom:function(e,t){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(e,t);if("number"==typeof e)throw new Error('The "data" argument must not be a number');return new Buffer(e,t)},allocBuffer:function(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t},isBuffer:function(e){return Buffer.isBuffer(e)},isStream:function(e){return e&&"function"==typeof e.on&&"function"==typeof e.pause&&"function"==typeof e.resume}}},60905:(e,t,r)=>{"use strict";var n=r(11132),i=r(80193);function a(e,t){i.call(this,"Nodejs stream input adapter for "+e),this._upstreamEnded=!1,this._bindStream(t)}n.inherits(a,i),a.prototype._bindStream=function(e){var t=this;this._stream=e,e.pause(),e.on("data",(function(e){t.push({data:e,meta:{percent:0}})})).on("error",(function(e){t.isPaused?this.generatedError=e:t.error(e)})).on("end",(function(){t.isPaused?t._upstreamEnded=!0:t.end()}))},a.prototype.pause=function(){return!!i.prototype.pause.call(this)&&(this._stream.pause(),!0)},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},e.exports=a},54644:(e,t,r)=>{"use strict";var n=r(30186).Readable;function i(e,t,r){n.call(this,t),this._helper=e;var i=this;e.on("data",(function(e,t){i.push(e)||i._helper.pause(),r&&r(t)})).on("error",(function(e){i.emit("error",e)})).on("end",(function(){i.push(null)}))}r(11132).inherits(i,n),i.prototype._read=function(){this._helper.resume()},e.exports=i},98442:(e,t,r)=>{"use strict";var n=r(8222),i=r(11132),a=r(80193),o=r(88648),s=r(75051),c=r(18807),l=r(89985),u=r(41269),d=r(50417),p=r(60905),f=function(e,t,r){var n,o=i.getTypeOf(t),u=i.extend(r||{},s);u.date=u.date||new Date,null!==u.compression&&(u.compression=u.compression.toUpperCase()),"string"==typeof u.unixPermissions&&(u.unixPermissions=parseInt(u.unixPermissions,8)),u.unixPermissions&&16384&u.unixPermissions&&(u.dir=!0),u.dosPermissions&&16&u.dosPermissions&&(u.dir=!0),u.dir&&(e=g(e)),u.createFolders&&(n=m(e))&&_.call(this,n,!0);var f="string"===o&&!1===u.binary&&!1===u.base64;r&&void 0!==r.binary||(u.binary=!f),(t instanceof c&&0===t.uncompressedSize||u.dir||!t||0===t.length)&&(u.base64=!1,u.binary=!0,t="",u.compression="STORE",o="string");var h=null;h=t instanceof c||t instanceof a?t:d.isNode&&d.isStream(t)?new p(e,t):i.prepareContent(e,t,u.binary,u.optimizedBinaryString,u.base64);var y=new l(e,h,u);this.files[e]=y},m=function(e){"/"===e.slice(-1)&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf("/");return t>0?e.substring(0,t):""},g=function(e){return"/"!==e.slice(-1)&&(e+="/"),e},_=function(e,t){return t=void 0!==t?t:s.createFolders,e=g(e),this.files[e]||f.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function h(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var y={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(e){var t,r,n;for(t in this.files)n=this.files[t],(r=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(r,n)},filter:function(e){var t=[];return this.forEach((function(r,n){e(r,n)&&t.push(n)})),t},file:function(e,t,r){if(1===arguments.length){if(h(e)){var n=e;return this.filter((function(e,t){return!t.dir&&n.test(e)}))}var i=this.files[this.root+e];return i&&!i.dir?i:null}return e=this.root+e,f.call(this,e,t,r),this},folder:function(e){if(!e)return this;if(h(e))return this.filter((function(t,r){return r.dir&&e.test(t)}));var t=this.root+e,r=_.call(this,t),n=this.clone();return n.root=r.name,n},remove:function(e){e=this.root+e;var t=this.files[e];if(t||("/"!==e.slice(-1)&&(e+="/"),t=this.files[e]),t&&!t.dir)delete this.files[e];else for(var r=this.filter((function(t,r){return r.name.slice(0,e.length)===e})),n=0;n<r.length;n++)delete this.files[r[n].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(e){var t,r={};try{if((r=i.extend(e||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:n.utf8encode})).type=r.type.toLowerCase(),r.compression=r.compression.toUpperCase(),"binarystring"===r.type&&(r.type="string"),!r.type)throw new Error("No output type specified.");i.checkSupport(r.type),"darwin"!==r.platform&&"freebsd"!==r.platform&&"linux"!==r.platform&&"sunos"!==r.platform||(r.platform="UNIX"),"win32"===r.platform&&(r.platform="DOS");var s=r.comment||this.comment||"";t=u.generateWorker(this,r,s)}catch(e){(t=new a("error")).error(e)}return new o(t,r.type||"string",r.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type="nodebuffer"),this.generateInternalStream(e).toNodejsStream(t)}};e.exports=y},41191:(e,t,r)=>{"use strict";var n=r(15074);function i(e){n.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}r(11132).inherits(i,n),i.prototype.byteAt=function(e){return this.data[this.zero+e]},i.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),a=this.length-4;a>=0;--a)if(this.data[a]===t&&this.data[a+1]===r&&this.data[a+2]===n&&this.data[a+3]===i)return a-this.zero;return-1},i.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),a=this.readData(4);return t===a[0]&&r===a[1]&&n===a[2]&&i===a[3]},i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},15074:(e,t,r)=>{"use strict";var n=r(11132);function i(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}i.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+e+"). Corrupted zip ?")},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(){},readInt:function(e){var t,r=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},e.exports=i},32916:(e,t,r)=>{"use strict";var n=r(77959);function i(e){n.call(this,e)}r(11132).inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},69663:(e,t,r)=>{"use strict";var n=r(15074);function i(e){n.call(this,e)}r(11132).inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},77959:(e,t,r)=>{"use strict";var n=r(41191);function i(e){n.call(this,e)}r(11132).inherits(i,n),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},69483:(e,t,r)=>{"use strict";var n=r(11132),i=r(76954),a=r(41191),o=r(69663),s=r(32916),c=r(77959);e.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),"string"!==t||i.uint8array?"nodebuffer"===t?new s(e):i.uint8array?new c(n.transformTo("uint8array",e)):new a(n.transformTo("array",e)):new o(e)}},6407:(e,t)=>{"use strict";t.LOCAL_FILE_HEADER="PK",t.CENTRAL_FILE_HEADER="PK",t.CENTRAL_DIRECTORY_END="PK",t.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",t.ZIP64_CENTRAL_DIRECTORY_END="PK",t.DATA_DESCRIPTOR="PK\b"},81019:(e,t,r)=>{"use strict";var n=r(80193),i=r(11132);function a(e){n.call(this,"ConvertWorker to "+e),this.destType=e}i.inherits(a,n),a.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},e.exports=a},71919:(e,t,r)=>{"use strict";var n=r(80193),i=r(88786);function a(){n.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}r(11132).inherits(a,n),a.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},e.exports=a},88432:(e,t,r)=>{"use strict";var n=r(11132),i=r(80193);function a(e){i.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(a,i),a.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},e.exports=a},4982:(e,t,r)=>{"use strict";var n=r(11132),i=r(80193);function a(e){i.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then((function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()}),(function(e){t.error(e)}))}n.inherits(a,i),a.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},a.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},a.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},e.exports=a},80193:e=>{"use strict";function t(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}t.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r<this._listeners[e].length;r++)this._listeners[e][r].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on("data",(function(e){t.processChunk(e)})),e.on("end",(function(){t.end()})),e.on("error",(function(e){t.error(e)})),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;this.isPaused=!1;var e=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e="Worker "+this.name;return this.previous?this.previous+" -> "+e:e}},e.exports=t},88648:(e,t,r)=>{"use strict";var n=r(11132),i=r(81019),a=r(80193),o=r(32678),s=r(76954),c=r(37882),l=null;if(s.nodestream)try{l=r(54644)}catch(e){}function u(e,t){return new c.Promise((function(r,i){var a=[],s=e._internalType,c=e._outputType,l=e._mimeType;e.on("data",(function(e,r){a.push(e),t&&t(r)})).on("error",(function(e){a=[],i(e)})).on("end",(function(){try{var e=function(e,t,r){switch(e){case"blob":return n.newBlob(n.transformTo("arraybuffer",t),r);case"base64":return o.encode(t);default:return n.transformTo(e,t)}}(c,function(e,t){var r,n=0,i=null,a=0;for(r=0;r<t.length;r++)a+=t[r].length;switch(e){case"string":return t.join("");case"array":return Array.prototype.concat.apply([],t);case"uint8array":for(i=new Uint8Array(a),r=0;r<t.length;r++)i.set(t[r],n),n+=t[r].length;return i;case"nodebuffer":return Buffer.concat(t);default:throw new Error("concat : unsupported type '"+e+"'")}}(s,a),l);r(e)}catch(e){i(e)}a=[]})).resume()}))}function d(e,t,r){var o=t;switch(t){case"blob":case"arraybuffer":o="uint8array";break;case"base64":o="string"}try{this._internalType=o,this._outputType=t,this._mimeType=r,n.checkSupport(o),this._worker=e.pipe(new i(o)),e.lock()}catch(e){this._worker=new a("error"),this._worker.error(e)}}d.prototype={accumulate:function(e){return u(this,e)},on:function(e,t){var r=this;return"data"===e?this._worker.on(e,(function(e){t.call(r,e.data,e.meta)})):this._worker.on(e,(function(){n.delay(t,arguments,r)})),this},resume:function(){return n.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(n.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new l(this,{objectMode:"nodebuffer"!==this._outputType},e)}},e.exports=d},76954:(e,t,r)=>{"use strict";if(t.base64=!0,t.array=!0,t.string=!0,t.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,t.nodebuffer="undefined"!=typeof Buffer,t.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)t.blob=!1;else{var n=new ArrayBuffer(0);try{t.blob=0===new Blob([n],{type:"application/zip"}).size}catch(e){try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);i.append(n),t.blob=0===i.getBlob("application/zip").size}catch(e){t.blob=!1}}}try{t.nodestream=!!r(30186).Readable}catch(e){t.nodestream=!1}},8222:(e,t,r)=>{"use strict";for(var n=r(11132),i=r(76954),a=r(50417),o=r(80193),s=new Array(256),c=0;c<256;c++)s[c]=c>=252?6:c>=248?5:c>=240?4:c>=224?3:c>=192?2:1;s[254]=s[254]=1;function l(){o.call(this,"utf-8 decode"),this.leftOver=null}function u(){o.call(this,"utf-8 encode")}t.utf8encode=function(e){return i.nodebuffer?a.newBufferFrom(e,"utf-8"):function(e){var t,r,n,a,o,s=e.length,c=0;for(a=0;a<s;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(n=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(n-56320),a++),c+=r<128?1:r<2048?2:r<65536?3:4;for(t=i.uint8array?new Uint8Array(c):new Array(c),o=0,a=0;o<c;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(n=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(n-56320),a++),r<128?t[o++]=r:r<2048?(t[o++]=192|r>>>6,t[o++]=128|63&r):r<65536?(t[o++]=224|r>>>12,t[o++]=128|r>>>6&63,t[o++]=128|63&r):(t[o++]=240|r>>>18,t[o++]=128|r>>>12&63,t[o++]=128|r>>>6&63,t[o++]=128|63&r);return t}(e)},t.utf8decode=function(e){return i.nodebuffer?n.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,r,i,a,o=e.length,c=new Array(2*o);for(r=0,t=0;t<o;)if((i=e[t++])<128)c[r++]=i;else if((a=s[i])>4)c[r++]=65533,t+=a-1;else{for(i&=2===a?31:3===a?15:7;a>1&&t<o;)i=i<<6|63&e[t++],a--;a>1?c[r++]=65533:i<65536?c[r++]=i:(i-=65536,c[r++]=55296|i>>10&1023,c[r++]=56320|1023&i)}return c.length!==r&&(c.subarray?c=c.subarray(0,r):c.length=r),n.applyFromCharCode(c)}(e=n.transformTo(i.uint8array?"uint8array":"array",e))},n.inherits(l,o),l.prototype.processChunk=function(e){var r=n.transformTo(i.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var a=r;(r=new Uint8Array(a.length+this.leftOver.length)).set(this.leftOver,0),r.set(a,this.leftOver.length)}else r=this.leftOver.concat(r);this.leftOver=null}var o=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;r>=0&&128==(192&e[r]);)r--;return r<0||0===r?t:r+s[e[r]]>t?r:t}(r),c=r;o!==r.length&&(i.uint8array?(c=r.subarray(0,o),this.leftOver=r.subarray(o,r.length)):(c=r.slice(0,o),this.leftOver=r.slice(o,r.length))),this.push({data:t.utf8decode(c),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:t.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},t.Utf8DecodeWorker=l,n.inherits(u,o),u.prototype.processChunk=function(e){this.push({data:t.utf8encode(e.data),meta:e.meta})},t.Utf8EncodeWorker=u},11132:(e,t,r)=>{"use strict";var n=r(76954),i=r(32678),a=r(50417),o=r(37882);function s(e){return e}function c(e,t){for(var r=0;r<e.length;++r)t[r]=255&e.charCodeAt(r);return t}r(42791),t.newBlob=function(e,r){t.checkSupport("blob");try{return new Blob([e],{type:r})}catch(t){try{var n=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return n.append(e),n.getBlob(r)}catch(e){throw new Error("Bug : can't construct the Blob.")}}};var l={stringifyByChunk:function(e,t,r){var n=[],i=0,a=e.length;if(a<=r)return String.fromCharCode.apply(null,e);for(;i<a;)"array"===t||"nodebuffer"===t?n.push(String.fromCharCode.apply(null,e.slice(i,Math.min(i+r,a)))):n.push(String.fromCharCode.apply(null,e.subarray(i,Math.min(i+r,a)))),i+=r;return n.join("")},stringifyByChar:function(e){for(var t="",r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},applyCanBeUsed:{uint8array:function(){try{return n.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(e){return!1}}(),nodebuffer:function(){try{return n.nodebuffer&&1===String.fromCharCode.apply(null,a.allocBuffer(1)).length}catch(e){return!1}}()}};function u(e){var r=65536,n=t.getTypeOf(e),i=!0;if("uint8array"===n?i=l.applyCanBeUsed.uint8array:"nodebuffer"===n&&(i=l.applyCanBeUsed.nodebuffer),i)for(;r>1;)try{return l.stringifyByChunk(e,n,r)}catch(e){r=Math.floor(r/2)}return l.stringifyByChar(e)}function d(e,t){for(var r=0;r<e.length;r++)t[r]=e[r];return t}t.applyFromCharCode=u;var p={};p.string={string:s,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return p.string.uint8array(e).buffer},uint8array:function(e){return c(e,new Uint8Array(e.length))},nodebuffer:function(e){return c(e,a.allocBuffer(e.length))}},p.array={string:u,array:s,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(e)}},p.arraybuffer={string:function(e){return u(new Uint8Array(e))},array:function(e){return d(new Uint8Array(e),new Array(e.byteLength))},arraybuffer:s,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(new Uint8Array(e))}},p.uint8array={string:u,array:function(e){return d(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:s,nodebuffer:function(e){return a.newBufferFrom(e)}},p.nodebuffer={string:u,array:function(e){return d(e,new Array(e.length))},arraybuffer:function(e){return p.nodebuffer.uint8array(e).buffer},uint8array:function(e){return d(e,new Uint8Array(e.length))},nodebuffer:s},t.transformTo=function(e,r){if(r||(r=""),!e)return r;t.checkSupport(e);var n=t.getTypeOf(r);return p[n][e](r)},t.resolve=function(e){for(var t=e.split("/"),r=[],n=0;n<t.length;n++){var i=t[n];"."===i||""===i&&0!==n&&n!==t.length-1||(".."===i?r.pop():r.push(i))}return r.join("/")},t.getTypeOf=function(e){return"string"==typeof e?"string":"[object Array]"===Object.prototype.toString.call(e)?"array":n.nodebuffer&&a.isBuffer(e)?"nodebuffer":n.uint8array&&e instanceof Uint8Array?"uint8array":n.arraybuffer&&e instanceof ArrayBuffer?"arraybuffer":void 0},t.checkSupport=function(e){if(!n[e.toLowerCase()])throw new Error(e+" is not supported by this platform")},t.MAX_VALUE_16BITS=65535,t.MAX_VALUE_32BITS=-1,t.pretty=function(e){var t,r,n="";for(r=0;r<(e||"").length;r++)n+="\\x"+((t=e.charCodeAt(r))<16?"0":"")+t.toString(16).toUpperCase();return n},t.delay=function(e,t,r){setImmediate((function(){e.apply(r||null,t||[])}))},t.inherits=function(e,t){var r=function(){};r.prototype=t.prototype,e.prototype=new r},t.extend=function(){var e,t,r={};for(e=0;e<arguments.length;e++)for(t in arguments[e])Object.prototype.hasOwnProperty.call(arguments[e],t)&&void 0===r[t]&&(r[t]=arguments[e][t]);return r},t.prepareContent=function(e,r,a,s,l){return o.Promise.resolve(r).then((function(e){return n.blob&&(e instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(e)))&&"undefined"!=typeof FileReader?new o.Promise((function(t,r){var n=new FileReader;n.onload=function(e){t(e.target.result)},n.onerror=function(e){r(e.target.error)},n.readAsArrayBuffer(e)})):e})).then((function(r){var u,d=t.getTypeOf(r);return d?("arraybuffer"===d?r=t.transformTo("uint8array",r):"string"===d&&(l?r=i.decode(r):a&&!0!==s&&(r=c(u=r,n.uint8array?new Uint8Array(u.length):new Array(u.length)))),r):o.Promise.reject(new Error("Can't read the data of '"+e+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))}))}},47548:(e,t,r)=>{"use strict";var n=r(69483),i=r(11132),a=r(6407),o=r(17404),s=r(76954);function c(e){this.files=[],this.loadOptions=e}c.prototype={checkSignature:function(e){if(!this.reader.readAndCheckSignature(e)){this.reader.index-=4;var t=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+i.pretty(t)+", expected "+i.pretty(e)+")")}},isSignature:function(e,t){var r=this.reader.index;this.reader.setIndex(e);var n=this.reader.readString(4)===t;return this.reader.setIndex(r),n},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=s.uint8array?"uint8array":"array",r=i.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(r)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,r,n=this.zip64EndOfCentralSize-44;0<n;)e=this.reader.readInt(2),t=this.reader.readInt(4),r=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:r}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var e,t;for(e=0;e<this.files.length;e++)t=this.files[e],this.reader.setIndex(t.localHeaderOffset),this.checkSignature(a.LOCAL_FILE_HEADER),t.readLocalPart(this.reader),t.handleUTF8(),t.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(a.CENTRAL_FILE_HEADER);)(e=new o({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(a.CENTRAL_DIRECTORY_END);if(e<0)throw!this.isSignature(0,a.LOCAL_FILE_HEADER)?new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html"):new Error("Corrupted zip: can't find end of central directory");this.reader.setIndex(e);var t=e;if(this.checkSignature(a.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===i.MAX_VALUE_16BITS||this.diskWithCentralDirStart===i.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===i.MAX_VALUE_16BITS||this.centralDirRecords===i.MAX_VALUE_16BITS||this.centralDirSize===i.MAX_VALUE_32BITS||this.centralDirOffset===i.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(e),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,a.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var r=this.centralDirOffset+this.centralDirSize;this.zip64&&(r+=20,r+=12+this.zip64EndOfCentralSize);var n=t-r;if(n>0)this.isSignature(t,a.CENTRAL_FILE_HEADER)||(this.reader.zero=n);else if(n<0)throw new Error("Corrupted zip: missing "+Math.abs(n)+" bytes.")},prepareReader:function(e){this.reader=n(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},e.exports=c},17404:(e,t,r)=>{"use strict";var n=r(69483),i=r(11132),a=r(18807),o=r(88786),s=r(8222),c=r(63078),l=r(76954);function u(e,t){this.options=e,this.loadOptions=t}u.prototype={isEncrypted:function(){return!(1&~this.bitFlag)},useUTF8:function(){return!(2048&~this.bitFlag)},readLocalPart:function(e){var t,r;if(e.skip(22),this.fileNameLength=e.readInt(2),r=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(r),-1===this.compressedSize||-1===this.uncompressedSize)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(null===(t=function(e){for(var t in c)if(Object.prototype.hasOwnProperty.call(c,t)&&c[t].magic===e)return c[t];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+i.pretty(this.compressionMethod)+" unknown (inner file : "+i.transformTo("string",this.fileName)+")");this.decompressed=new a(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0===e&&(this.dosPermissions=63&this.externalFileAttributes),3===e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=n(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4<i;)t=e.readInt(2),r=e.readInt(2),n=e.readData(r),this.extraFields[t]={id:t,length:r,value:n};e.setIndex(i)},handleUTF8:function(){var e=l.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=s.utf8decode(this.fileName),this.fileCommentStr=s.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();if(null!==t)this.fileNameStr=t;else{var r=i.transformTo(e,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(r)}var n=this.findExtraFieldUnicodeComment();if(null!==n)this.fileCommentStr=n;else{var a=i.transformTo(e,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(a)}}},findExtraFieldUnicodePath:function(){var e=this.extraFields[28789];if(e){var t=n(e.value);return 1!==t.readInt(1)||o(this.fileName)!==t.readInt(4)?null:s.utf8decode(t.readData(e.length-5))}return null},findExtraFieldUnicodeComment:function(){var e=this.extraFields[25461];if(e){var t=n(e.value);return 1!==t.readInt(1)||o(this.fileComment)!==t.readInt(4)?null:s.utf8decode(t.readData(e.length-5))}return null}},e.exports=u},89985:(e,t,r)=>{"use strict";var n=r(88648),i=r(4982),a=r(8222),o=r(18807),s=r(80193),c=function(e,t,r){this.name=e,this.dir=r.dir,this.date=r.date,this.comment=r.comment,this.unixPermissions=r.unixPermissions,this.dosPermissions=r.dosPermissions,this._data=t,this._dataBinary=r.binary,this.options={compression:r.compression,compressionOptions:r.compressionOptions}};c.prototype={internalStream:function(e){var t=null,r="string";try{if(!e)throw new Error("No output type specified.");var i="string"===(r=e.toLowerCase())||"text"===r;"binarystring"!==r&&"text"!==r||(r="string"),t=this._decompressWorker();var o=!this._dataBinary;o&&!i&&(t=t.pipe(new a.Utf8EncodeWorker)),!o&&i&&(t=t.pipe(new a.Utf8DecodeWorker))}catch(e){(t=new s("error")).error(e)}return new n(t,r,"")},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||"nodebuffer").toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof o&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var r=this._decompressWorker();return this._dataBinary||(r=r.pipe(new a.Utf8EncodeWorker)),o.createWorkerFrom(r,e,t)},_decompressWorker:function(){return this._data instanceof o?this._data.getContentWorker():this._data instanceof s?this._data:new i(this._data)}};for(var l=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],u=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},d=0;d<l.length;d++)c.prototype[l[d]]=u;e.exports=c},61538:(e,t,r)=>{"use strict";var n=r(33225),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(15622));a.inherits=r(72017);var o=r(92672),s=r(39744);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},82564:(e,t,r)=>{"use strict";e.exports=a;var n=r(97294),i=Object.create(r(15622));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(72017),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},92672:(e,t,r)=>{"use strict";var n=r(33225);e.exports=y;var i,a=r(64634);y.ReadableState=h;r(24434).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(7964),c=r(92861).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(15622));u.inherits=r(72017);var d=r(39023),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(49026),g=r(20332);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(61538));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(83141).I),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(61538),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,E(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&E(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(83141).I),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(w,e,t))}function w(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):E(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&E(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},97294:(e,t,r)=>{"use strict";e.exports=o;var n=r(61538),i=Object.create(r(15622));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(72017),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},39744:(e,t,r)=>{"use strict";var n=r(33225);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(15622));s.inherits=r(72017);var c={deprecate:r(27983)},l=r(7964),u=r(92861).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(20332);function m(){}function g(e,t){a=a||r(61538),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(61538),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},49026:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=r(39023);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},20332:(e,t,r)=>{"use strict";var n=r(33225);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},7964:(e,t,r)=>{e.exports=r(2203)},30186:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(92672)).Stream=n||t,t.Readable=t,t.Writable=r(39744),t.Duplex=r(61538),t.Transform=r(97294),t.PassThrough=r(82564))},85:(e,t,r)=>{var n=r(39023),i=r(28768);function a(e,t,r){e[t]=function(){return delete e[t],r.apply(this,arguments),this[t].apply(this,arguments)}}function o(e,t){if(!(this instanceof o))return new o(e,t);i.call(this,t),a(this,"_read",(function(){var r=e.call(this,t),n=this.emit.bind(this,"error");r.on("error",n),r.pipe(this)})),this.emit("readable")}function s(e,t){if(!(this instanceof s))return new s(e,t);i.call(this,t),a(this,"_write",(function(){var r=e.call(this,t),n=this.emit.bind(this,"error");r.on("error",n),this.pipe(r)})),this.emit("writable")}e.exports={Readable:o,Writable:s},n.inherits(o,i),n.inherits(s,i)},42676:(e,t,r)=>{"use strict";var n=r(33225),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(15622));a.inherits=r(72017);var o=r(82922),s=r(34734);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},86462:(e,t,r)=>{"use strict";e.exports=a;var n=r(75828),i=Object.create(r(15622));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(72017),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},82922:(e,t,r)=>{"use strict";var n=r(33225);e.exports=y;var i,a=r(64634);y.ReadableState=h;r(24434).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(57354),c=r(92861).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(15622));u.inherits=r(72017);var d=r(39023),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(14156),g=r(18762);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(42676));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(83141).I),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(42676),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,E(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&E(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(83141).I),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(w,e,t))}function w(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):E(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&E(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},75828:(e,t,r)=>{"use strict";e.exports=o;var n=r(42676),i=Object.create(r(15622));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(72017),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},34734:(e,t,r)=>{"use strict";var n=r(33225);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(15622));s.inherits=r(72017);var c={deprecate:r(27983)},l=r(57354),u=r(92861).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(18762);function m(){}function g(e,t){a=a||r(42676),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(42676),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},14156:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=r(39023);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},18762:(e,t,r)=>{"use strict";var n=r(33225);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},57354:(e,t,r)=>{e.exports=r(2203)},28768:(e,t,r)=>{e.exports=r(13940).PassThrough},13940:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(82922)).Stream=n||t,t.Readable=t,t.Writable=r(34734),t.Duplex=r(42676),t.Transform=r(75828),t.PassThrough=r(86462))},39977:(e,t,r)=>{"use strict";var n=r(90874);function i(){}var a={},o=["REJECTED"],s=["FULFILLED"],c=["PENDING"];if(!process.browser)var l=["UNHANDLED"];function u(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=c,this.queue=[],this.outcome=void 0,process.browser||(this.handled=l),e!==i&&m(this,e)}function d(e,t,r){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof r&&(this.onRejected=r,this.callRejected=this.otherCallRejected)}function p(e,t,r){n((function(){var n;try{n=t(r)}catch(t){return a.reject(e,t)}n===e?a.reject(e,new TypeError("Cannot resolve promise with itself")):a.resolve(e,n)}))}function f(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function m(e,t){var r=!1;function n(t){r||(r=!0,a.reject(e,t))}function i(t){r||(r=!0,a.resolve(e,t))}var o=g((function(){t(i,n)}));"error"===o.status&&n(o.value)}function g(e,t){var r={};try{r.value=e(t),r.status="success"}catch(e){r.status="error",r.value=e}return r}e.exports=u,u.prototype.finally=function(e){if("function"!=typeof e)return this;var t=this.constructor;return this.then((function(r){return t.resolve(e()).then((function(){return r}))}),(function(r){return t.resolve(e()).then((function(){throw r}))}))},u.prototype.catch=function(e){return this.then(null,e)},u.prototype.then=function(e,t){if("function"!=typeof e&&this.state===s||"function"!=typeof t&&this.state===o)return this;var r=new this.constructor(i);(process.browser||this.handled===l&&(this.handled=null),this.state!==c)?p(r,this.state===s?e:t,this.outcome):this.queue.push(new d(r,e,t));return r},d.prototype.callFulfilled=function(e){a.resolve(this.promise,e)},d.prototype.otherCallFulfilled=function(e){p(this.promise,this.onFulfilled,e)},d.prototype.callRejected=function(e){a.reject(this.promise,e)},d.prototype.otherCallRejected=function(e){p(this.promise,this.onRejected,e)},a.resolve=function(e,t){var r=g(f,t);if("error"===r.status)return a.reject(e,r.value);var n=r.value;if(n)m(e,n);else{e.state=s,e.outcome=t;for(var i=-1,o=e.queue.length;++i<o;)e.queue[i].callFulfilled(t)}return e},a.reject=function(e,t){e.state=o,e.outcome=t,process.browser||e.handled===l&&n((function(){e.handled===l&&process.emit("unhandledRejection",t,e)}));for(var r=-1,i=e.queue.length;++r<i;)e.queue[r].callRejected(t);return e},u.resolve=function(e){if(e instanceof this)return e;return a.resolve(new this(i),e)},u.reject=function(e){var t=new this(i);return a.reject(t,e)},u.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var r=e.length,n=!1;if(!r)return this.resolve([]);var o=new Array(r),s=0,c=-1,l=new this(i);for(;++c<r;)u(e[c],c);return l;function u(e,i){t.resolve(e).then((function(e){o[i]=e,++s!==r||n||(n=!0,a.resolve(l,o))}),(function(e){n||(n=!0,a.reject(l,e))}))}},u.race=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var r=e.length,n=!1;if(!r)return this.resolve([]);var o=-1,s=new this(i);for(;++o<r;)c=e[o],t.resolve(c).then((function(e){n||(n=!0,a.resolve(s,e))}),(function(e){n||(n=!0,a.reject(s,e))}));var c;return s}},1528:(e,t,r)=>{"use strict";var n=r(24434).listenerCount;n=n||function(e,t){var r=e&&e._events&&e._events[t];return Array.isArray(r)?r.length:"function"==typeof r?1:0},e.exports=n},71676:e=>{var t=9007199254740991,r="[object Arguments]",n="[object Function]",i="[object GeneratorFunction]",a=/^(?:0|[1-9]\d*)$/;function o(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}var s=Object.prototype,c=s.hasOwnProperty,l=s.toString,u=s.propertyIsEnumerable,d=Math.max;function p(e,t){var n=v(e)||function(e){return function(e){return function(e){return!!e&&"object"==typeof e}(e)&&b(e)}(e)&&c.call(e,"callee")&&(!u.call(e,"callee")||l.call(e)==r)}(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],i=n.length,a=!!i;for(var o in e)!t&&!c.call(e,o)||a&&("length"==o||h(o,i))||n.push(o);return n}function f(e,t,r,n){return void 0===e||y(e,s[r])&&!c.call(n,r)?t:e}function m(e,t,r){var n=e[t];c.call(e,t)&&y(n,r)&&(void 0!==r||t in e)||(e[t]=r)}function g(e){if(!k(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t,r,n,i=(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||s,t===n),a=[];for(var o in e)("constructor"!=o||!i&&c.call(e,o))&&a.push(o);return a}function _(e,t){return t=d(void 0===t?e.length-1:t,0),function(){for(var r=arguments,n=-1,i=d(r.length-t,0),a=Array(i);++n<i;)a[n]=r[t+n];n=-1;for(var s=Array(t+1);++n<t;)s[n]=r[n];return s[t]=a,o(e,this,s)}}function h(e,r){return!!(r=null==r?t:r)&&("number"==typeof e||a.test(e))&&e>-1&&e%1==0&&e<r}function y(e,t){return e===t||e!=e&&t!=t}var v=Array.isArray;function b(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=t}(e.length)&&!function(e){var t=k(e)?l.call(e):"";return t==n||t==i}(e)}function k(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}var x,E=(x=function(e,t,r,n){!function(e,t,r,n){r||(r={});for(var i=-1,a=t.length;++i<a;){var o=t[i],s=n?n(r[o],e[o],o,r,e):void 0;m(r,o,void 0===s?e[o]:s)}}(t,function(e){return b(e)?p(e,!0):g(e)}(t),e,n)},_((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,a=n>2?t[2]:void 0;for(i=x.length>3&&"function"==typeof i?(n--,i):void 0,a&&function(e,t,r){if(!k(r))return!1;var n=typeof t;return!!("number"==n?b(r)&&h(t,r.length):"string"==n&&t in r)&&y(r[t],e)}(t[0],t[1],a)&&(i=n<3?void 0:i,n=1),e=Object(e);++r<n;){var o=t[r];o&&x(e,o,r,i)}return e}))),S=_((function(e){return e.push(void 0,f),o(E,void 0,e)}));e.exports=S},40209:e=>{var t="__lodash_hash_undefined__",r=9007199254740991,n="[object Arguments]",i="[object Function]",a="[object GeneratorFunction]",o=/^\[object .+?Constructor\]$/,s="object"==typeof global&&global&&global.Object===Object&&global,c="object"==typeof self&&self&&self.Object===Object&&self,l=s||c||Function("return this")();function u(e,t){return!!(e?e.length:0)&&function(e,t,r){if(t!=t)return function(e,t,r,n){var i=e.length,a=r+(n?1:-1);for(;n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}(e,f,r);var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,0)>-1}function d(e,t,r){for(var n=-1,i=e?e.length:0;++n<i;)if(r(t,e[n]))return!0;return!1}function p(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}function f(e){return e!=e}function m(e,t){return e.has(t)}var g,_=Array.prototype,h=Function.prototype,y=Object.prototype,v=l["__core-js_shared__"],b=(g=/[^.]+$/.exec(v&&v.keys&&v.keys.IE_PROTO||""))?"Symbol(src)_1."+g:"",k=h.toString,x=y.hasOwnProperty,E=y.toString,S=RegExp("^"+k.call(x).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=l.Symbol,w=y.propertyIsEnumerable,T=_.splice,C=D?D.isConcatSpreadable:void 0,A=Math.max,N=U(l,"Map"),P=U(Object,"create");function I(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function F(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function O(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function R(e){var t=-1,r=e?e.length:0;for(this.__data__=new O;++t<r;)this.add(e[t])}function M(e,t){for(var r,n,i=e.length;i--;)if((r=e[i][0])===(n=t)||r!=r&&n!=n)return i;return-1}function L(e,t,r,n){var i,a=-1,o=u,s=!0,c=e.length,l=[],p=t.length;if(!c)return l;r&&(t=function(e,t){for(var r=-1,n=e?e.length:0,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}(t,(i=r,function(e){return i(e)}))),n?(o=d,s=!1):t.length>=200&&(o=m,s=!1,t=new R(t));e:for(;++a<c;){var f=e[a],g=r?r(f):f;if(f=n||0!==f?f:0,s&&g==g){for(var _=p;_--;)if(t[_]===g)continue e;l.push(f)}else o(t,g,n)||l.push(f)}return l}function j(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=q),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?j(s,t-1,r,n,i):p(i,s):n||(i[i.length]=s)}return i}function B(e){if(!Y(e)||(t=e,b&&b in t))return!1;var t,r=$(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?S:o;return r.test(function(e){if(null!=e){try{return k.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}function z(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function U(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return B(r)?r:void 0}function q(e){return K(e)||function(e){return G(e)&&x.call(e,"callee")&&(!w.call(e,"callee")||E.call(e)==n)}(e)||!!(C&&e&&e[C])}I.prototype.clear=function(){this.__data__=P?P(null):{}},I.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},I.prototype.get=function(e){var r=this.__data__;if(P){var n=r[e];return n===t?void 0:n}return x.call(r,e)?r[e]:void 0},I.prototype.has=function(e){var t=this.__data__;return P?void 0!==t[e]:x.call(t,e)},I.prototype.set=function(e,r){return this.__data__[e]=P&&void 0===r?t:r,this},F.prototype.clear=function(){this.__data__=[]},F.prototype.delete=function(e){var t=this.__data__,r=M(t,e);return!(r<0)&&(r==t.length-1?t.pop():T.call(t,r,1),!0)},F.prototype.get=function(e){var t=this.__data__,r=M(t,e);return r<0?void 0:t[r][1]},F.prototype.has=function(e){return M(this.__data__,e)>-1},F.prototype.set=function(e,t){var r=this.__data__,n=M(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},O.prototype.clear=function(){this.__data__={hash:new I,map:new(N||F),string:new I}},O.prototype.delete=function(e){return z(this,e).delete(e)},O.prototype.get=function(e){return z(this,e).get(e)},O.prototype.has=function(e){return z(this,e).has(e)},O.prototype.set=function(e,t){return z(this,e).set(e,t),this},R.prototype.add=R.prototype.push=function(e){return this.__data__.set(e,t),this},R.prototype.has=function(e){return this.__data__.has(e)};var J,V,H=(J=function(e,t){return G(e)?L(e,j(t,1,G,!0)):[]},V=A(void 0===V?J.length-1:V,0),function(){for(var e=arguments,t=-1,r=A(e.length-V,0),n=Array(r);++t<r;)n[t]=e[V+t];t=-1;for(var i=Array(V+1);++t<V;)i[t]=e[t];return i[V]=n,function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(J,this,i)});var K=Array.isArray;function W(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=r}(e.length)&&!$(e)}function G(e){return function(e){return!!e&&"object"==typeof e}(e)&&W(e)}function $(e){var t=Y(e)?E.call(e):"";return t==i||t==a}function Y(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}e.exports=H},10912:e=>{var t=1/0,r="[object Symbol]",n=/[\\^$.*+?()[\]{}|]/g,i=RegExp(n.source),a="object"==typeof global&&global&&global.Object===Object&&global,o="object"==typeof self&&self&&self.Object===Object&&self,s=a||o||Function("return this")(),c=Object.prototype.toString,l=s.Symbol,u=l?l.prototype:void 0,d=u?u.toString:void 0;function p(e){if("string"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&c.call(e)==r}(e))return d?d.call(e):"";var n=e+"";return"0"==n&&1/e==-t?"-0":n}e.exports=function(e){var t;return(e=null==(t=e)?"":p(t))&&i.test(e)?e.replace(n,"\\$&"):e}},16308:e=>{var t=9007199254740991,r="[object Arguments]",n="[object Function]",i="[object GeneratorFunction]",a="object"==typeof global&&global&&global.Object===Object&&global,o="object"==typeof self&&self&&self.Object===Object&&self,s=a||o||Function("return this")();function c(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}var l=Object.prototype,u=l.hasOwnProperty,d=l.toString,p=s.Symbol,f=l.propertyIsEnumerable,m=p?p.isConcatSpreadable:void 0;function g(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=_),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?g(s,t-1,r,n,i):c(i,s):n||(i[i.length]=s)}return i}function _(e){return h(e)||function(e){return function(e){return function(e){return!!e&&"object"==typeof e}(e)&&function(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=t}(e.length)&&!function(e){var t=function(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}(e)?d.call(e):"";return t==n||t==i}(e)}(e)}(e)&&u.call(e,"callee")&&(!f.call(e,"callee")||d.call(e)==r)}(e)||!!(m&&e&&e[m])}var h=Array.isArray;e.exports=function(e){return(e?e.length:0)?g(e,1):[]}},31324:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=1,a=2,o=1/0,s=9007199254740991,c="[object Arguments]",l="[object Array]",u="[object Boolean]",d="[object Date]",p="[object Error]",f="[object Function]",m="[object GeneratorFunction]",g="[object Map]",_="[object Number]",h="[object Object]",y="[object Promise]",v="[object RegExp]",b="[object Set]",k="[object String]",x="[object Symbol]",E="[object WeakMap]",S="[object ArrayBuffer]",D="[object DataView]",w=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,T=/^\w*$/,C=/^\./,A=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,N=/\\(\\)?/g,P=/^\[object .+?Constructor\]$/,I=/^(?:0|[1-9]\d*)$/,F={};F["[object Float32Array]"]=F["[object Float64Array]"]=F["[object Int8Array]"]=F["[object Int16Array]"]=F["[object Int32Array]"]=F["[object Uint8Array]"]=F["[object Uint8ClampedArray]"]=F["[object Uint16Array]"]=F["[object Uint32Array]"]=!0,F[c]=F[l]=F[S]=F[u]=F[D]=F[d]=F[p]=F[f]=F[g]=F[_]=F[h]=F[v]=F[b]=F[k]=F[E]=!1;var O="object"==typeof global&&global&&global.Object===Object&&global,R="object"==typeof self&&self&&self.Object===Object&&self,M=O||R||Function("return this")(),L=t&&!t.nodeType&&t,j=L&&e&&!e.nodeType&&e,B=j&&j.exports===L&&O.process,z=function(){try{return B&&B.binding("util")}catch(e){}}(),U=z&&z.isTypedArray;function q(e,t,r,n){for(var i=-1,a=e?e.length:0;++i<a;){var o=e[i];t(n,o,r(o),e)}return n}function J(e,t){for(var r=-1,n=e?e.length:0;++r<n;)if(t(e[r],r,e))return!0;return!1}function V(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}function H(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function K(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var W,G,$,Y=Array.prototype,X=Function.prototype,Q=Object.prototype,Z=M["__core-js_shared__"],ee=(W=/[^.]+$/.exec(Z&&Z.keys&&Z.keys.IE_PROTO||""))?"Symbol(src)_1."+W:"",te=X.toString,re=Q.hasOwnProperty,ne=Q.toString,ie=RegExp("^"+te.call(re).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ae=M.Symbol,oe=M.Uint8Array,se=Q.propertyIsEnumerable,ce=Y.splice,le=(G=Object.keys,$=Object,function(e){return G($(e))}),ue=He(M,"DataView"),de=He(M,"Map"),pe=He(M,"Promise"),fe=He(M,"Set"),me=He(M,"WeakMap"),ge=He(Object,"create"),_e=Ze(ue),he=Ze(de),ye=Ze(pe),ve=Ze(fe),be=Ze(me),ke=ae?ae.prototype:void 0,xe=ke?ke.valueOf:void 0,Ee=ke?ke.toString:void 0;function Se(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function De(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function we(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Te(e){var t=-1,r=e?e.length:0;for(this.__data__=new we;++t<r;)this.add(e[t])}function Ce(e){this.__data__=new De(e)}function Ae(e,t){var r=ot(e)||at(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],n=r.length,i=!!n;for(var a in e)!t&&!re.call(e,a)||i&&("length"==a||We(a,n))||r.push(a);return r}function Ne(e,t){for(var r=e.length;r--;)if(it(e[r][0],t))return r;return-1}function Pe(e,t,r,n){return Oe(e,(function(e,i,a){t(n,e,r(e),a)})),n}Se.prototype.clear=function(){this.__data__=ge?ge(null):{}},Se.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},Se.prototype.get=function(e){var t=this.__data__;if(ge){var r=t[e];return r===n?void 0:r}return re.call(t,e)?t[e]:void 0},Se.prototype.has=function(e){var t=this.__data__;return ge?void 0!==t[e]:re.call(t,e)},Se.prototype.set=function(e,t){return this.__data__[e]=ge&&void 0===t?n:t,this},De.prototype.clear=function(){this.__data__=[]},De.prototype.delete=function(e){var t=this.__data__,r=Ne(t,e);return!(r<0)&&(r==t.length-1?t.pop():ce.call(t,r,1),!0)},De.prototype.get=function(e){var t=this.__data__,r=Ne(t,e);return r<0?void 0:t[r][1]},De.prototype.has=function(e){return Ne(this.__data__,e)>-1},De.prototype.set=function(e,t){var r=this.__data__,n=Ne(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},we.prototype.clear=function(){this.__data__={hash:new Se,map:new(de||De),string:new Se}},we.prototype.delete=function(e){return Ve(this,e).delete(e)},we.prototype.get=function(e){return Ve(this,e).get(e)},we.prototype.has=function(e){return Ve(this,e).has(e)},we.prototype.set=function(e,t){return Ve(this,e).set(e,t),this},Te.prototype.add=Te.prototype.push=function(e){return this.__data__.set(e,n),this},Te.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.clear=function(){this.__data__=new De},Ce.prototype.delete=function(e){return this.__data__.delete(e)},Ce.prototype.get=function(e){return this.__data__.get(e)},Ce.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.set=function(e,t){var r=this.__data__;if(r instanceof De){var n=r.__data__;if(!de||n.length<199)return n.push([e,t]),this;r=this.__data__=new we(n)}return r.set(e,t),this};var Ie,Fe,Oe=(Ie=function(e,t){return e&&Re(e,t,mt)},function(e,t){if(null==e)return e;if(!st(e))return Ie(e,t);for(var r=e.length,n=Fe?r:-1,i=Object(e);(Fe?n--:++n<r)&&!1!==t(i[n],n,i););return e}),Re=function(e){return function(t,r,n){for(var i=-1,a=Object(t),o=n(t),s=o.length;s--;){var c=o[e?s:++i];if(!1===r(a[c],c,a))break}return t}}();function Me(e,t){for(var r=0,n=(t=Ge(t,e)?[t]:qe(t)).length;null!=e&&r<n;)e=e[Qe(t[r++])];return r&&r==n?e:void 0}function Le(e,t){return null!=e&&t in Object(e)}function je(e,t,r,n,o){return e===t||(null==e||null==t||!ut(e)&&!dt(t)?e!=e&&t!=t:function(e,t,r,n,o,s){var f=ot(e),m=ot(t),y=l,E=l;f||(y=(y=Ke(e))==c?h:y);m||(E=(E=Ke(t))==c?h:E);var w=y==h&&!V(e),T=E==h&&!V(t),C=y==E;if(C&&!w)return s||(s=new Ce),f||ft(e)?Je(e,t,r,n,o,s):function(e,t,r,n,o,s,c){switch(r){case D:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case S:return!(e.byteLength!=t.byteLength||!n(new oe(e),new oe(t)));case u:case d:case _:return it(+e,+t);case p:return e.name==t.name&&e.message==t.message;case v:case k:return e==t+"";case g:var l=H;case b:var f=s&a;if(l||(l=K),e.size!=t.size&&!f)return!1;var m=c.get(e);if(m)return m==t;s|=i,c.set(e,t);var h=Je(l(e),l(t),n,o,s,c);return c.delete(e),h;case x:if(xe)return xe.call(e)==xe.call(t)}return!1}(e,t,y,r,n,o,s);if(!(o&a)){var A=w&&re.call(e,"__wrapped__"),N=T&&re.call(t,"__wrapped__");if(A||N){var P=A?e.value():e,I=N?t.value():t;return s||(s=new Ce),r(P,I,n,o,s)}}if(!C)return!1;return s||(s=new Ce),function(e,t,r,n,i,o){var s=i&a,c=mt(e),l=c.length,u=mt(t),d=u.length;if(l!=d&&!s)return!1;var p=l;for(;p--;){var f=c[p];if(!(s?f in t:re.call(t,f)))return!1}var m=o.get(e);if(m&&o.get(t))return m==t;var g=!0;o.set(e,t),o.set(t,e);var _=s;for(;++p<l;){var h=e[f=c[p]],y=t[f];if(n)var v=s?n(y,h,f,t,e,o):n(h,y,f,e,t,o);if(!(void 0===v?h===y||r(h,y,n,i,o):v)){g=!1;break}_||(_="constructor"==f)}if(g&&!_){var b=e.constructor,k=t.constructor;b==k||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof k&&k instanceof k||(g=!1)}return o.delete(e),o.delete(t),g}(e,t,r,n,o,s)}(e,t,je,r,n,o))}function Be(e){return!(!ut(e)||function(e){return!!ee&&ee in e}(e))&&(ct(e)||V(e)?ie:P).test(Ze(e))}function ze(e){return"function"==typeof e?e:null==e?gt:"object"==typeof e?ot(e)?function(e,t){if(Ge(e)&&$e(t))return Ye(Qe(e),t);return function(r){var n=function(e,t,r){var n=null==e?void 0:Me(e,t);return void 0===n?r:n}(r,e);return void 0===n&&n===t?function(e,t){return null!=e&&function(e,t,r){t=Ge(t,e)?[t]:qe(t);var n,i=-1,a=t.length;for(;++i<a;){var o=Qe(t[i]);if(!(n=null!=e&&r(e,o)))break;e=e[o]}if(n)return n;a=e?e.length:0;return!!a&<(a)&&We(o,a)&&(ot(e)||at(e))}(e,t,Le)}(r,e):je(t,n,void 0,i|a)}}(e[0],e[1]):function(e){var t=function(e){var t=mt(e),r=t.length;for(;r--;){var n=t[r],i=e[n];t[r]=[n,i,$e(i)]}return t}(e);if(1==t.length&&t[0][2])return Ye(t[0][0],t[0][1]);return function(r){return r===e||function(e,t,r,n){var o=r.length,s=o,c=!n;if(null==e)return!s;for(e=Object(e);o--;){var l=r[o];if(c&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++o<s;){var u=(l=r[o])[0],d=e[u],p=l[1];if(c&&l[2]){if(void 0===d&&!(u in e))return!1}else{var f=new Ce;if(n)var m=n(d,p,u,e,t,f);if(!(void 0===m?je(p,d,n,i|a,f):m))return!1}}return!0}(r,e,t)}}(e):Ge(t=e)?(r=Qe(t),function(e){return null==e?void 0:e[r]}):function(e){return function(t){return Me(t,e)}}(t);var t,r}function Ue(e){if(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||Q,t!==n)return le(e);var t,r,n,i=[];for(var a in Object(e))re.call(e,a)&&"constructor"!=a&&i.push(a);return i}function qe(e){return ot(e)?e:Xe(e)}function Je(e,t,r,n,o,s){var c=o&a,l=e.length,u=t.length;if(l!=u&&!(c&&u>l))return!1;var d=s.get(e);if(d&&s.get(t))return d==t;var p=-1,f=!0,m=o&i?new Te:void 0;for(s.set(e,t),s.set(t,e);++p<l;){var g=e[p],_=t[p];if(n)var h=c?n(_,g,p,t,e,s):n(g,_,p,e,t,s);if(void 0!==h){if(h)continue;f=!1;break}if(m){if(!J(t,(function(e,t){if(!m.has(t)&&(g===e||r(g,e,n,o,s)))return m.add(t)}))){f=!1;break}}else if(g!==_&&!r(g,_,n,o,s)){f=!1;break}}return s.delete(e),s.delete(t),f}function Ve(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function He(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Be(r)?r:void 0}var Ke=function(e){return ne.call(e)};function We(e,t){return!!(t=null==t?s:t)&&("number"==typeof e||I.test(e))&&e>-1&&e%1==0&&e<t}function Ge(e,t){if(ot(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!pt(e))||(T.test(e)||!w.test(e)||null!=t&&e in Object(t))}function $e(e){return e==e&&!ut(e)}function Ye(e,t){return function(r){return null!=r&&(r[e]===t&&(void 0!==t||e in Object(r)))}}(ue&&Ke(new ue(new ArrayBuffer(1)))!=D||de&&Ke(new de)!=g||pe&&Ke(pe.resolve())!=y||fe&&Ke(new fe)!=b||me&&Ke(new me)!=E)&&(Ke=function(e){var t=ne.call(e),r=t==h?e.constructor:void 0,n=r?Ze(r):void 0;if(n)switch(n){case _e:return D;case he:return g;case ye:return y;case ve:return b;case be:return E}return t});var Xe=nt((function(e){var t;e=null==(t=e)?"":function(e){if("string"==typeof e)return e;if(pt(e))return Ee?Ee.call(e):"";var t=e+"";return"0"==t&&1/e==-o?"-0":t}(t);var r=[];return C.test(e)&&r.push(""),e.replace(A,(function(e,t,n,i){r.push(n?i.replace(N,"$1"):t||e)})),r}));function Qe(e){if("string"==typeof e||pt(e))return e;var t=e+"";return"0"==t&&1/e==-o?"-0":t}function Ze(e){if(null!=e){try{return te.call(e)}catch(e){}try{return e+""}catch(e){}}return""}var et,tt,rt=(et=function(e,t,r){re.call(e,r)?e[r].push(t):e[r]=[t]},function(e,t){var r=ot(e)?q:Pe,n=tt?tt():{};return r(e,et,ze(t),n)});function nt(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new TypeError("Expected a function");var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var o=e.apply(this,n);return r.cache=a.set(i,o),o};return r.cache=new(nt.Cache||we),r}function it(e,t){return e===t||e!=e&&t!=t}function at(e){return function(e){return dt(e)&&st(e)}(e)&&re.call(e,"callee")&&(!se.call(e,"callee")||ne.call(e)==c)}nt.Cache=we;var ot=Array.isArray;function st(e){return null!=e&<(e.length)&&!ct(e)}function ct(e){var t=ut(e)?ne.call(e):"";return t==f||t==m}function lt(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=s}function ut(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function dt(e){return!!e&&"object"==typeof e}function pt(e){return"symbol"==typeof e||dt(e)&&ne.call(e)==x}var ft=U?function(e){return function(t){return e(t)}}(U):function(e){return dt(e)&<(e.length)&&!!F[ne.call(e)]};function mt(e){return st(e)?Ae(e):Ue(e)}function gt(e){return e}e.exports=rt},87914:e=>{var t=Object.prototype.toString;e.exports=function(e){return!0===e||!1===e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Boolean]"==t.call(e)}},8142:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=1,a=2,o=9007199254740991,s="[object Arguments]",c="[object Array]",l="[object AsyncFunction]",u="[object Boolean]",d="[object Date]",p="[object Error]",f="[object Function]",m="[object GeneratorFunction]",g="[object Map]",_="[object Number]",h="[object Null]",y="[object Object]",v="[object Promise]",b="[object Proxy]",k="[object RegExp]",x="[object Set]",E="[object String]",S="[object Symbol]",D="[object Undefined]",w="[object WeakMap]",T="[object ArrayBuffer]",C="[object DataView]",A=/^\[object .+?Constructor\]$/,N=/^(?:0|[1-9]\d*)$/,P={};P["[object Float32Array]"]=P["[object Float64Array]"]=P["[object Int8Array]"]=P["[object Int16Array]"]=P["[object Int32Array]"]=P["[object Uint8Array]"]=P["[object Uint8ClampedArray]"]=P["[object Uint16Array]"]=P["[object Uint32Array]"]=!0,P[s]=P[c]=P[T]=P[u]=P[C]=P[d]=P[p]=P[f]=P[g]=P[_]=P[y]=P[k]=P[x]=P[E]=P[w]=!1;var I="object"==typeof global&&global&&global.Object===Object&&global,F="object"==typeof self&&self&&self.Object===Object&&self,O=I||F||Function("return this")(),R=t&&!t.nodeType&&t,M=R&&e&&!e.nodeType&&e,L=M&&M.exports===R,j=L&&I.process,B=function(){try{return j&&j.binding&&j.binding("util")}catch(e){}}(),z=B&&B.isTypedArray;function U(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}function q(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function J(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var V,H,K,W=Array.prototype,G=Function.prototype,$=Object.prototype,Y=O["__core-js_shared__"],X=G.toString,Q=$.hasOwnProperty,Z=(V=/[^.]+$/.exec(Y&&Y.keys&&Y.keys.IE_PROTO||""))?"Symbol(src)_1."+V:"",ee=$.toString,te=RegExp("^"+X.call(Q).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),re=L?O.Buffer:void 0,ne=O.Symbol,ie=O.Uint8Array,ae=$.propertyIsEnumerable,oe=W.splice,se=ne?ne.toStringTag:void 0,ce=Object.getOwnPropertySymbols,le=re?re.isBuffer:void 0,ue=(H=Object.keys,K=Object,function(e){return H(K(e))}),de=Be(O,"DataView"),pe=Be(O,"Map"),fe=Be(O,"Promise"),me=Be(O,"Set"),ge=Be(O,"WeakMap"),_e=Be(Object,"create"),he=Je(de),ye=Je(pe),ve=Je(fe),be=Je(me),ke=Je(ge),xe=ne?ne.prototype:void 0,Ee=xe?xe.valueOf:void 0;function Se(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function De(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function we(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Te(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new we;++t<r;)this.add(e[t])}function Ce(e){var t=this.__data__=new De(e);this.size=t.size}function Ae(e,t){var r=Ke(e),n=!r&&He(e),i=!r&&!n&&We(e),a=!r&&!n&&!i&&Qe(e),o=r||n||i||a,s=o?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],c=s.length;for(var l in e)!t&&!Q.call(e,l)||o&&("length"==l||i&&("offset"==l||"parent"==l)||a&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||qe(l,c))||s.push(l);return s}function Ne(e,t){for(var r=e.length;r--;)if(Ve(e[r][0],t))return r;return-1}function Pe(e){return null==e?void 0===e?D:h:se&&se in Object(e)?function(e){var t=Q.call(e,se),r=e[se];try{e[se]=void 0;var n=!0}catch(e){}var i=ee.call(e);n&&(t?e[se]=r:delete e[se]);return i}(e):function(e){return ee.call(e)}(e)}function Ie(e){return Xe(e)&&Pe(e)==s}function Fe(e,t,r,n,o){return e===t||(null==e||null==t||!Xe(e)&&!Xe(t)?e!=e&&t!=t:function(e,t,r,n,o,l){var f=Ke(e),m=Ke(t),h=f?c:Ue(e),v=m?c:Ue(t),b=(h=h==s?y:h)==y,D=(v=v==s?y:v)==y,w=h==v;if(w&&We(e)){if(!We(t))return!1;f=!0,b=!1}if(w&&!b)return l||(l=new Ce),f||Qe(e)?Me(e,t,r,n,o,l):function(e,t,r,n,o,s,c){switch(r){case C:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case T:return!(e.byteLength!=t.byteLength||!s(new ie(e),new ie(t)));case u:case d:case _:return Ve(+e,+t);case p:return e.name==t.name&&e.message==t.message;case k:case E:return e==t+"";case g:var l=q;case x:var f=n&i;if(l||(l=J),e.size!=t.size&&!f)return!1;var m=c.get(e);if(m)return m==t;n|=a,c.set(e,t);var h=Me(l(e),l(t),n,o,s,c);return c.delete(e),h;case S:if(Ee)return Ee.call(e)==Ee.call(t)}return!1}(e,t,h,r,n,o,l);if(!(r&i)){var A=b&&Q.call(e,"__wrapped__"),N=D&&Q.call(t,"__wrapped__");if(A||N){var P=A?e.value():e,I=N?t.value():t;return l||(l=new Ce),o(P,I,r,n,l)}}if(!w)return!1;return l||(l=new Ce),function(e,t,r,n,a,o){var s=r&i,c=Le(e),l=c.length,u=Le(t),d=u.length;if(l!=d&&!s)return!1;var p=l;for(;p--;){var f=c[p];if(!(s?f in t:Q.call(t,f)))return!1}var m=o.get(e);if(m&&o.get(t))return m==t;var g=!0;o.set(e,t),o.set(t,e);var _=s;for(;++p<l;){var h=e[f=c[p]],y=t[f];if(n)var v=s?n(y,h,f,t,e,o):n(h,y,f,e,t,o);if(!(void 0===v?h===y||a(h,y,r,n,o):v)){g=!1;break}_||(_="constructor"==f)}if(g&&!_){var b=e.constructor,k=t.constructor;b==k||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof k&&k instanceof k||(g=!1)}return o.delete(e),o.delete(t),g}(e,t,r,n,o,l)}(e,t,r,n,Fe,o))}function Oe(e){return!(!Ye(e)||function(e){return!!Z&&Z in e}(e))&&(Ge(e)?te:A).test(Je(e))}function Re(e){if(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||$,t!==n)return ue(e);var t,r,n,i=[];for(var a in Object(e))Q.call(e,a)&&"constructor"!=a&&i.push(a);return i}function Me(e,t,r,n,o,s){var c=r&i,l=e.length,u=t.length;if(l!=u&&!(c&&u>l))return!1;var d=s.get(e);if(d&&s.get(t))return d==t;var p=-1,f=!0,m=r&a?new Te:void 0;for(s.set(e,t),s.set(t,e);++p<l;){var g=e[p],_=t[p];if(n)var h=c?n(_,g,p,t,e,s):n(g,_,p,e,t,s);if(void 0!==h){if(h)continue;f=!1;break}if(m){if(!U(t,(function(e,t){if(i=t,!m.has(i)&&(g===e||o(g,e,r,n,s)))return m.push(t);var i}))){f=!1;break}}else if(g!==_&&!o(g,_,r,n,s)){f=!1;break}}return s.delete(e),s.delete(t),f}function Le(e){return function(e,t,r){var n=t(e);return Ke(e)?n:function(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}(n,r(e))}(e,Ze,ze)}function je(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function Be(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Oe(r)?r:void 0}Se.prototype.clear=function(){this.__data__=_e?_e(null):{},this.size=0},Se.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Se.prototype.get=function(e){var t=this.__data__;if(_e){var r=t[e];return r===n?void 0:r}return Q.call(t,e)?t[e]:void 0},Se.prototype.has=function(e){var t=this.__data__;return _e?void 0!==t[e]:Q.call(t,e)},Se.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=_e&&void 0===t?n:t,this},De.prototype.clear=function(){this.__data__=[],this.size=0},De.prototype.delete=function(e){var t=this.__data__,r=Ne(t,e);return!(r<0)&&(r==t.length-1?t.pop():oe.call(t,r,1),--this.size,!0)},De.prototype.get=function(e){var t=this.__data__,r=Ne(t,e);return r<0?void 0:t[r][1]},De.prototype.has=function(e){return Ne(this.__data__,e)>-1},De.prototype.set=function(e,t){var r=this.__data__,n=Ne(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},we.prototype.clear=function(){this.size=0,this.__data__={hash:new Se,map:new(pe||De),string:new Se}},we.prototype.delete=function(e){var t=je(this,e).delete(e);return this.size-=t?1:0,t},we.prototype.get=function(e){return je(this,e).get(e)},we.prototype.has=function(e){return je(this,e).has(e)},we.prototype.set=function(e,t){var r=je(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Te.prototype.add=Te.prototype.push=function(e){return this.__data__.set(e,n),this},Te.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.clear=function(){this.__data__=new De,this.size=0},Ce.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Ce.prototype.get=function(e){return this.__data__.get(e)},Ce.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.set=function(e,t){var r=this.__data__;if(r instanceof De){var n=r.__data__;if(!pe||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new we(n)}return r.set(e,t),this.size=r.size,this};var ze=ce?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var o=e[r];t(o,r,e)&&(a[i++]=o)}return a}(ce(e),(function(t){return ae.call(e,t)})))}:function(){return[]},Ue=Pe;function qe(e,t){return!!(t=null==t?o:t)&&("number"==typeof e||N.test(e))&&e>-1&&e%1==0&&e<t}function Je(e){if(null!=e){try{return X.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ve(e,t){return e===t||e!=e&&t!=t}(de&&Ue(new de(new ArrayBuffer(1)))!=C||pe&&Ue(new pe)!=g||fe&&Ue(fe.resolve())!=v||me&&Ue(new me)!=x||ge&&Ue(new ge)!=w)&&(Ue=function(e){var t=Pe(e),r=t==y?e.constructor:void 0,n=r?Je(r):"";if(n)switch(n){case he:return C;case ye:return g;case ve:return v;case be:return x;case ke:return w}return t});var He=Ie(function(){return arguments}())?Ie:function(e){return Xe(e)&&Q.call(e,"callee")&&!ae.call(e,"callee")},Ke=Array.isArray;var We=le||function(){return!1};function Ge(e){if(!Ye(e))return!1;var t=Pe(e);return t==f||t==m||t==l||t==b}function $e(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=o}function Ye(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Xe(e){return null!=e&&"object"==typeof e}var Qe=z?function(e){return function(t){return e(t)}}(z):function(e){return Xe(e)&&$e(e.length)&&!!P[Pe(e)]};function Ze(e){return null!=(t=e)&&$e(t.length)&&!Ge(t)?Ae(e):Re(e);var t}e.exports=function(e,t){return Fe(e,t)}},85710:e=>{var t="[object Null]",r="[object Undefined]",n="object"==typeof global&&global&&global.Object===Object&&global,i="object"==typeof self&&self&&self.Object===Object&&self,a=n||i||Function("return this")(),o=Object.prototype,s=o.hasOwnProperty,c=o.toString,l=a.Symbol,u=l?l.toStringTag:void 0;function d(e){return null==e?void 0===e?r:t:u&&u in Object(e)?function(e){var t=s.call(e,u),r=e[u];try{e[u]=void 0;var n=!0}catch(e){}var i=c.call(e);n&&(t?e[u]=r:delete e[u]);return i}(e):function(e){return c.call(e)}(e)}e.exports=function(e){if(!function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}(e))return!1;var t=d(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},74733:e=>{e.exports=function(e){return null==e}},79001:e=>{var t,r,n=Function.prototype,i=Object.prototype,a=n.toString,o=i.hasOwnProperty,s=a.call(Object),c=i.toString,l=(t=Object.getPrototypeOf,r=Object,function(e){return t(r(e))});e.exports=function(e){if(!function(e){return!!e&&"object"==typeof e}(e)||"[object Object]"!=c.call(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e))return!1;var t=l(e);if(null===t)return!0;var r=o.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&a.call(r)==s}},58254:e=>{e.exports=function(e){return void 0===e}},9897:e=>{var t="__lodash_hash_undefined__",r=9007199254740991,n="[object Arguments]",i="[object Function]",a="[object GeneratorFunction]",o=/^\[object .+?Constructor\]$/,s="object"==typeof global&&global&&global.Object===Object&&global,c="object"==typeof self&&self&&self.Object===Object&&self,l=s||c||Function("return this")();function u(e,t){return!!(e?e.length:0)&&function(e,t,r){if(t!=t)return function(e,t,r,n){var i=e.length,a=r+(n?1:-1);for(;n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}(e,f,r);var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,0)>-1}function d(e,t,r){for(var n=-1,i=e?e.length:0;++n<i;)if(r(t,e[n]))return!0;return!1}function p(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}function f(e){return e!=e}function m(e,t){return e.has(t)}function g(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var _,h=Array.prototype,y=Function.prototype,v=Object.prototype,b=l["__core-js_shared__"],k=(_=/[^.]+$/.exec(b&&b.keys&&b.keys.IE_PROTO||""))?"Symbol(src)_1."+_:"",x=y.toString,E=v.hasOwnProperty,S=v.toString,D=RegExp("^"+x.call(E).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),w=l.Symbol,T=v.propertyIsEnumerable,C=h.splice,A=w?w.isConcatSpreadable:void 0,N=Math.max,P=J(l,"Map"),I=J(l,"Set"),F=J(Object,"create");function O(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function R(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function M(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function L(e){var t=-1,r=e?e.length:0;for(this.__data__=new M;++t<r;)this.add(e[t])}function j(e,t){for(var r,n,i=e.length;i--;)if((r=e[i][0])===(n=t)||r!=r&&n!=n)return i;return-1}function B(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=V),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?B(s,t-1,r,n,i):p(i,s):n||(i[i.length]=s)}return i}function z(e){if(!Q(e)||(t=e,k&&k in t))return!1;var t,r=X(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?D:o;return r.test(function(e){if(null!=e){try{return x.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}O.prototype.clear=function(){this.__data__=F?F(null):{}},O.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},O.prototype.get=function(e){var r=this.__data__;if(F){var n=r[e];return n===t?void 0:n}return E.call(r,e)?r[e]:void 0},O.prototype.has=function(e){var t=this.__data__;return F?void 0!==t[e]:E.call(t,e)},O.prototype.set=function(e,r){return this.__data__[e]=F&&void 0===r?t:r,this},R.prototype.clear=function(){this.__data__=[]},R.prototype.delete=function(e){var t=this.__data__,r=j(t,e);return!(r<0)&&(r==t.length-1?t.pop():C.call(t,r,1),!0)},R.prototype.get=function(e){var t=this.__data__,r=j(t,e);return r<0?void 0:t[r][1]},R.prototype.has=function(e){return j(this.__data__,e)>-1},R.prototype.set=function(e,t){var r=this.__data__,n=j(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},M.prototype.clear=function(){this.__data__={hash:new O,map:new(P||R),string:new O}},M.prototype.delete=function(e){return q(this,e).delete(e)},M.prototype.get=function(e){return q(this,e).get(e)},M.prototype.has=function(e){return q(this,e).has(e)},M.prototype.set=function(e,t){return q(this,e).set(e,t),this},L.prototype.add=L.prototype.push=function(e){return this.__data__.set(e,t),this},L.prototype.has=function(e){return this.__data__.has(e)};var U=I&&1/g(new I([,-0]))[1]==1/0?function(e){return new I(e)}:function(){};function q(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function J(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return z(r)?r:void 0}function V(e){return G(e)||function(e){return Y(e)&&E.call(e,"callee")&&(!T.call(e,"callee")||S.call(e)==n)}(e)||!!(A&&e&&e[A])}var H,K,W=(H=function(e){return function(e,t,r){var n=-1,i=u,a=e.length,o=!0,s=[],c=s;if(r)o=!1,i=d;else if(a>=200){var l=t?null:U(e);if(l)return g(l);o=!1,i=m,c=new L}else c=t?[]:s;e:for(;++n<a;){var p=e[n],f=t?t(p):p;if(p=r||0!==p?p:0,o&&f==f){for(var _=c.length;_--;)if(c[_]===f)continue e;t&&c.push(f),s.push(p)}else i(c,f,r)||(c!==s&&c.push(f),s.push(p))}return s}(B(e,1,Y,!0))},K=N(void 0===K?H.length-1:K,0),function(){for(var e=arguments,t=-1,r=N(e.length-K,0),n=Array(r);++t<r;)n[t]=e[K+t];t=-1;for(var i=Array(K+1);++t<K;)i[t]=e[t];return i[K]=n,function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(H,this,i)});var G=Array.isArray;function $(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=r}(e.length)&&!X(e)}function Y(e){return function(e){return!!e&&"object"==typeof e}(e)&&$(e)}function X(e){var t=Q(e)?S.call(e):"";return t==i||t==a}function Q(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}e.exports=W},90879:e=>{var t=200,r="__lodash_hash_undefined__",n="[object Function]",i="[object GeneratorFunction]",a=/^\[object .+?Constructor\]$/,o="object"==typeof global&&global&&global.Object===Object&&global,s="object"==typeof self&&self&&self.Object===Object&&self,c=o||s||Function("return this")();function l(e,t){return!!(e?e.length:0)&&function(e,t,r){if(t!=t)return function(e,t,r,n){var i=e.length,a=r+(n?1:-1);for(;n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}(e,d,r);var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,0)>-1}function u(e,t,r){for(var n=-1,i=e?e.length:0;++n<i;)if(r(t,e[n]))return!0;return!1}function d(e){return e!=e}function p(e,t){return e.has(t)}function f(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var m,g=Array.prototype,_=Function.prototype,h=Object.prototype,y=c["__core-js_shared__"],v=(m=/[^.]+$/.exec(y&&y.keys&&y.keys.IE_PROTO||""))?"Symbol(src)_1."+m:"",b=_.toString,k=h.hasOwnProperty,x=h.toString,E=RegExp("^"+b.call(k).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),S=g.splice,D=M(c,"Map"),w=M(c,"Set"),T=M(Object,"create");function C(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function A(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function N(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function P(e){var t=-1,r=e?e.length:0;for(this.__data__=new N;++t<r;)this.add(e[t])}function I(e,t){for(var r,n,i=e.length;i--;)if((r=e[i][0])===(n=t)||r!=r&&n!=n)return i;return-1}function F(e){if(!L(e)||(t=e,v&&v in t))return!1;var t,r=function(e){var t=L(e)?x.call(e):"";return t==n||t==i}(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?E:a;return r.test(function(e){if(null!=e){try{return b.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}C.prototype.clear=function(){this.__data__=T?T(null):{}},C.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},C.prototype.get=function(e){var t=this.__data__;if(T){var n=t[e];return n===r?void 0:n}return k.call(t,e)?t[e]:void 0},C.prototype.has=function(e){var t=this.__data__;return T?void 0!==t[e]:k.call(t,e)},C.prototype.set=function(e,t){return this.__data__[e]=T&&void 0===t?r:t,this},A.prototype.clear=function(){this.__data__=[]},A.prototype.delete=function(e){var t=this.__data__,r=I(t,e);return!(r<0)&&(r==t.length-1?t.pop():S.call(t,r,1),!0)},A.prototype.get=function(e){var t=this.__data__,r=I(t,e);return r<0?void 0:t[r][1]},A.prototype.has=function(e){return I(this.__data__,e)>-1},A.prototype.set=function(e,t){var r=this.__data__,n=I(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},N.prototype.clear=function(){this.__data__={hash:new C,map:new(D||A),string:new C}},N.prototype.delete=function(e){return R(this,e).delete(e)},N.prototype.get=function(e){return R(this,e).get(e)},N.prototype.has=function(e){return R(this,e).has(e)},N.prototype.set=function(e,t){return R(this,e).set(e,t),this},P.prototype.add=P.prototype.push=function(e){return this.__data__.set(e,r),this},P.prototype.has=function(e){return this.__data__.has(e)};var O=w&&1/f(new w([,-0]))[1]==1/0?function(e){return new w(e)}:function(){};function R(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function M(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return F(r)?r:void 0}function L(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}e.exports=function(e){return e&&e.length?function(e,r,n){var i=-1,a=l,o=e.length,s=!0,c=[],d=c;if(n)s=!1,a=u;else if(o>=t){var m=r?null:O(e);if(m)return f(m);s=!1,a=p,d=new P}else d=r?[]:c;e:for(;++i<o;){var g=e[i],_=r?r(g):g;if(g=n||0!==g?g:0,s&&_==_){for(var h=d.length;h--;)if(d[h]===_)continue e;r&&d.push(_),c.push(g)}else a(d,_,n)||(d!==c&&d.push(_),c.push(g))}return c}(e):[]}},2543:function(e,t,r){var n; -/** - * @license - * Lodash <https://lodash.com/> - * Copyright OpenJS Foundation and other contributors <https://openjsf.org/> - * Released under MIT license <https://lodash.com/license> - * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */e=r.nmd(e),function(){var i,a="Expected a function",o="__lodash_hash_undefined__",s="__lodash_placeholder__",c=16,l=32,u=64,d=128,p=256,f=1/0,m=9007199254740991,g=NaN,_=4294967295,h=[["ary",d],["bind",1],["bindKey",2],["curry",8],["curryRight",c],["flip",512],["partial",l],["partialRight",u],["rearg",p]],y="[object Arguments]",v="[object Array]",b="[object Boolean]",k="[object Date]",x="[object Error]",E="[object Function]",S="[object GeneratorFunction]",D="[object Map]",w="[object Number]",T="[object Object]",C="[object Promise]",A="[object RegExp]",N="[object Set]",P="[object String]",I="[object Symbol]",F="[object WeakMap]",O="[object ArrayBuffer]",R="[object DataView]",M="[object Float32Array]",L="[object Float64Array]",j="[object Int8Array]",B="[object Int16Array]",z="[object Int32Array]",U="[object Uint8Array]",q="[object Uint8ClampedArray]",J="[object Uint16Array]",V="[object Uint32Array]",H=/\b__p \+= '';/g,K=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,G=/&(?:amp|lt|gt|quot|#39);/g,$=/[&<>"']/g,Y=RegExp(G.source),X=RegExp($.source),Q=/<%-([\s\S]+?)%>/g,Z=/<%([\s\S]+?)%>/g,ee=/<%=([\s\S]+?)%>/g,te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,re=/^\w*$/,ne=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,ae=RegExp(ie.source),oe=/^\s+/,se=/\s/,ce=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,le=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,de=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,pe=/[()=,{}\[\]\/\s]/,fe=/\\(\\)?/g,me=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ge=/\w*$/,_e=/^[-+]0x[0-9a-f]+$/i,he=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,ve=/^0o[0-7]+$/i,be=/^(?:0|[1-9]\d*)$/,ke=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,xe=/($^)/,Ee=/['\n\r\u2028\u2029\\]/g,Se="\\ud800-\\udfff",De="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",we="\\u2700-\\u27bf",Te="a-z\\xdf-\\xf6\\xf8-\\xff",Ce="A-Z\\xc0-\\xd6\\xd8-\\xde",Ae="\\ufe0e\\ufe0f",Ne="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Pe="['’]",Ie="["+Se+"]",Fe="["+Ne+"]",Oe="["+De+"]",Re="\\d+",Me="["+we+"]",Le="["+Te+"]",je="[^"+Se+Ne+Re+we+Te+Ce+"]",Be="\\ud83c[\\udffb-\\udfff]",ze="[^"+Se+"]",Ue="(?:\\ud83c[\\udde6-\\uddff]){2}",qe="[\\ud800-\\udbff][\\udc00-\\udfff]",Je="["+Ce+"]",Ve="\\u200d",He="(?:"+Le+"|"+je+")",Ke="(?:"+Je+"|"+je+")",We="(?:['’](?:d|ll|m|re|s|t|ve))?",Ge="(?:['’](?:D|LL|M|RE|S|T|VE))?",$e="(?:"+Oe+"|"+Be+")"+"?",Ye="["+Ae+"]?",Xe=Ye+$e+("(?:"+Ve+"(?:"+[ze,Ue,qe].join("|")+")"+Ye+$e+")*"),Qe="(?:"+[Me,Ue,qe].join("|")+")"+Xe,Ze="(?:"+[ze+Oe+"?",Oe,Ue,qe,Ie].join("|")+")",et=RegExp(Pe,"g"),tt=RegExp(Oe,"g"),rt=RegExp(Be+"(?="+Be+")|"+Ze+Xe,"g"),nt=RegExp([Je+"?"+Le+"+"+We+"(?="+[Fe,Je,"$"].join("|")+")",Ke+"+"+Ge+"(?="+[Fe,Je+He,"$"].join("|")+")",Je+"?"+He+"+"+We,Je+"+"+Ge,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Re,Qe].join("|"),"g"),it=RegExp("["+Ve+Se+De+Ae+"]"),at=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ot=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],st=-1,ct={};ct[M]=ct[L]=ct[j]=ct[B]=ct[z]=ct[U]=ct[q]=ct[J]=ct[V]=!0,ct[y]=ct[v]=ct[O]=ct[b]=ct[R]=ct[k]=ct[x]=ct[E]=ct[D]=ct[w]=ct[T]=ct[A]=ct[N]=ct[P]=ct[F]=!1;var lt={};lt[y]=lt[v]=lt[O]=lt[R]=lt[b]=lt[k]=lt[M]=lt[L]=lt[j]=lt[B]=lt[z]=lt[D]=lt[w]=lt[T]=lt[A]=lt[N]=lt[P]=lt[I]=lt[U]=lt[q]=lt[J]=lt[V]=!0,lt[x]=lt[E]=lt[F]=!1;var ut={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},dt=parseFloat,pt=parseInt,ft="object"==typeof global&&global&&global.Object===Object&&global,mt="object"==typeof self&&self&&self.Object===Object&&self,gt=ft||mt||Function("return this")(),_t=t&&!t.nodeType&&t,ht=_t&&e&&!e.nodeType&&e,yt=ht&&ht.exports===_t,vt=yt&&ft.process,bt=function(){try{var e=ht&&ht.require&&ht.require("util").types;return e||vt&&vt.binding&&vt.binding("util")}catch(e){}}(),kt=bt&&bt.isArrayBuffer,xt=bt&&bt.isDate,Et=bt&&bt.isMap,St=bt&&bt.isRegExp,Dt=bt&&bt.isSet,wt=bt&&bt.isTypedArray;function Tt(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function Ct(e,t,r,n){for(var i=-1,a=null==e?0:e.length;++i<a;){var o=e[i];t(n,o,r(o),e)}return n}function At(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}function Nt(e,t){for(var r=null==e?0:e.length;r--&&!1!==t(e[r],r,e););return e}function Pt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(!t(e[r],r,e))return!1;return!0}function It(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var o=e[r];t(o,r,e)&&(a[i++]=o)}return a}function Ft(e,t){return!!(null==e?0:e.length)&&Jt(e,t,0)>-1}function Ot(e,t,r){for(var n=-1,i=null==e?0:e.length;++n<i;)if(r(t,e[n]))return!0;return!1}function Rt(e,t){for(var r=-1,n=null==e?0:e.length,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}function Mt(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}function Lt(e,t,r,n){var i=-1,a=null==e?0:e.length;for(n&&a&&(r=e[++i]);++i<a;)r=t(r,e[i],i,e);return r}function jt(e,t,r,n){var i=null==e?0:e.length;for(n&&i&&(r=e[--i]);i--;)r=t(r,e[i],i,e);return r}function Bt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}var zt=Wt("length");function Ut(e,t,r){var n;return r(e,(function(e,r,i){if(t(e,r,i))return n=r,!1})),n}function qt(e,t,r,n){for(var i=e.length,a=r+(n?1:-1);n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}function Jt(e,t,r){return t==t?function(e,t,r){var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,r):qt(e,Ht,r)}function Vt(e,t,r,n){for(var i=r-1,a=e.length;++i<a;)if(n(e[i],t))return i;return-1}function Ht(e){return e!=e}function Kt(e,t){var r=null==e?0:e.length;return r?Yt(e,t)/r:g}function Wt(e){return function(t){return null==t?i:t[e]}}function Gt(e){return function(t){return null==e?i:e[t]}}function $t(e,t,r,n,i){return i(e,(function(e,i,a){r=n?(n=!1,e):t(r,e,i,a)})),r}function Yt(e,t){for(var r,n=-1,a=e.length;++n<a;){var o=t(e[n]);o!==i&&(r=r===i?o:r+o)}return r}function Xt(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}function Qt(e){return e?e.slice(0,gr(e)+1).replace(oe,""):e}function Zt(e){return function(t){return e(t)}}function er(e,t){return Rt(t,(function(t){return e[t]}))}function tr(e,t){return e.has(t)}function rr(e,t){for(var r=-1,n=e.length;++r<n&&Jt(t,e[r],0)>-1;);return r}function nr(e,t){for(var r=e.length;r--&&Jt(t,e[r],0)>-1;);return r}var ir=Gt({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),ar=Gt({"&":"&","<":"<",">":">",'"':""","'":"'"});function or(e){return"\\"+ut[e]}function sr(e){return it.test(e)}function cr(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function lr(e,t){return function(r){return e(t(r))}}function ur(e,t){for(var r=-1,n=e.length,i=0,a=[];++r<n;){var o=e[r];o!==t&&o!==s||(e[r]=s,a[i++]=r)}return a}function dr(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}function pr(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=[e,e]})),r}function fr(e){return sr(e)?function(e){var t=rt.lastIndex=0;for(;rt.test(e);)++t;return t}(e):zt(e)}function mr(e){return sr(e)?function(e){return e.match(rt)||[]}(e):function(e){return e.split("")}(e)}function gr(e){for(var t=e.length;t--&&se.test(e.charAt(t)););return t}var _r=Gt({"&":"&","<":"<",">":">",""":'"',"'":"'"});var hr=function e(t){var r,n=(t=null==t?gt:hr.defaults(gt.Object(),t,hr.pick(gt,ot))).Array,se=t.Date,Se=t.Error,De=t.Function,we=t.Math,Te=t.Object,Ce=t.RegExp,Ae=t.String,Ne=t.TypeError,Pe=n.prototype,Ie=De.prototype,Fe=Te.prototype,Oe=t["__core-js_shared__"],Re=Ie.toString,Me=Fe.hasOwnProperty,Le=0,je=(r=/[^.]+$/.exec(Oe&&Oe.keys&&Oe.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"",Be=Fe.toString,ze=Re.call(Te),Ue=gt._,qe=Ce("^"+Re.call(Me).replace(ie,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Je=yt?t.Buffer:i,Ve=t.Symbol,He=t.Uint8Array,Ke=Je?Je.allocUnsafe:i,We=lr(Te.getPrototypeOf,Te),Ge=Te.create,$e=Fe.propertyIsEnumerable,Ye=Pe.splice,Xe=Ve?Ve.isConcatSpreadable:i,Qe=Ve?Ve.iterator:i,Ze=Ve?Ve.toStringTag:i,rt=function(){try{var e=pa(Te,"defineProperty");return e({},"",{}),e}catch(e){}}(),it=t.clearTimeout!==gt.clearTimeout&&t.clearTimeout,ut=se&&se.now!==gt.Date.now&&se.now,ft=t.setTimeout!==gt.setTimeout&&t.setTimeout,mt=we.ceil,_t=we.floor,ht=Te.getOwnPropertySymbols,vt=Je?Je.isBuffer:i,bt=t.isFinite,zt=Pe.join,Gt=lr(Te.keys,Te),yr=we.max,vr=we.min,br=se.now,kr=t.parseInt,xr=we.random,Er=Pe.reverse,Sr=pa(t,"DataView"),Dr=pa(t,"Map"),wr=pa(t,"Promise"),Tr=pa(t,"Set"),Cr=pa(t,"WeakMap"),Ar=pa(Te,"create"),Nr=Cr&&new Cr,Pr={},Ir=ja(Sr),Fr=ja(Dr),Or=ja(wr),Rr=ja(Tr),Mr=ja(Cr),Lr=Ve?Ve.prototype:i,jr=Lr?Lr.valueOf:i,Br=Lr?Lr.toString:i;function zr(e){if(rs(e)&&!Ho(e)&&!(e instanceof Vr)){if(e instanceof Jr)return e;if(Me.call(e,"__wrapped__"))return Ba(e)}return new Jr(e)}var Ur=function(){function e(){}return function(t){if(!ts(t))return{};if(Ge)return Ge(t);e.prototype=t;var r=new e;return e.prototype=i,r}}();function qr(){}function Jr(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}function Vr(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=_,this.__views__=[]}function Hr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Kr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Wr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Gr(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new Wr;++t<r;)this.add(e[t])}function $r(e){var t=this.__data__=new Kr(e);this.size=t.size}function Yr(e,t){var r=Ho(e),n=!r&&Vo(e),i=!r&&!n&&$o(e),a=!r&&!n&&!i&&us(e),o=r||n||i||a,s=o?Xt(e.length,Ae):[],c=s.length;for(var l in e)!t&&!Me.call(e,l)||o&&("length"==l||i&&("offset"==l||"parent"==l)||a&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||va(l,c))||s.push(l);return s}function Xr(e){var t=e.length;return t?e[$n(0,t-1)]:i}function Qr(e,t){return Ra(Ni(e),cn(t,0,e.length))}function Zr(e){return Ra(Ni(e))}function en(e,t,r){(r!==i&&!Uo(e[t],r)||r===i&&!(t in e))&&on(e,t,r)}function tn(e,t,r){var n=e[t];Me.call(e,t)&&Uo(n,r)&&(r!==i||t in e)||on(e,t,r)}function rn(e,t){for(var r=e.length;r--;)if(Uo(e[r][0],t))return r;return-1}function nn(e,t,r,n){return fn(e,(function(e,i,a){t(n,e,r(e),a)})),n}function an(e,t){return e&&Pi(t,Is(t),e)}function on(e,t,r){"__proto__"==t&&rt?rt(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}function sn(e,t){for(var r=-1,a=t.length,o=n(a),s=null==e;++r<a;)o[r]=s?i:Ts(e,t[r]);return o}function cn(e,t,r){return e==e&&(r!==i&&(e=e<=r?e:r),t!==i&&(e=e>=t?e:t)),e}function ln(e,t,r,n,a,o){var s,c=1&t,l=2&t,u=4&t;if(r&&(s=a?r(e,n,a,o):r(e)),s!==i)return s;if(!ts(e))return e;var d=Ho(e);if(d){if(s=function(e){var t=e.length,r=new e.constructor(t);t&&"string"==typeof e[0]&&Me.call(e,"index")&&(r.index=e.index,r.input=e.input);return r}(e),!c)return Ni(e,s)}else{var p=ga(e),f=p==E||p==S;if($o(e))return Si(e,c);if(p==T||p==y||f&&!a){if(s=l||f?{}:ha(e),!c)return l?function(e,t){return Pi(e,ma(e),t)}(e,function(e,t){return e&&Pi(t,Fs(t),e)}(s,e)):function(e,t){return Pi(e,fa(e),t)}(e,an(s,e))}else{if(!lt[p])return a?e:{};s=function(e,t,r){var n=e.constructor;switch(t){case O:return Di(e);case b:case k:return new n(+e);case R:return function(e,t){var r=t?Di(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case M:case L:case j:case B:case z:case U:case q:case J:case V:return wi(e,r);case D:return new n;case w:case P:return new n(e);case A:return function(e){var t=new e.constructor(e.source,ge.exec(e));return t.lastIndex=e.lastIndex,t}(e);case N:return new n;case I:return i=e,jr?Te(jr.call(i)):{}}var i}(e,p,c)}}o||(o=new $r);var m=o.get(e);if(m)return m;o.set(e,s),ss(e)?e.forEach((function(n){s.add(ln(n,t,r,n,e,o))})):ns(e)&&e.forEach((function(n,i){s.set(i,ln(n,t,r,i,e,o))}));var g=d?i:(u?l?aa:ia:l?Fs:Is)(e);return At(g||e,(function(n,i){g&&(n=e[i=n]),tn(s,i,ln(n,t,r,i,e,o))})),s}function un(e,t,r){var n=r.length;if(null==e)return!n;for(e=Te(e);n--;){var a=r[n],o=t[a],s=e[a];if(s===i&&!(a in e)||!o(s))return!1}return!0}function dn(e,t,r){if("function"!=typeof e)throw new Ne(a);return Pa((function(){e.apply(i,r)}),t)}function pn(e,t,r,n){var i=-1,a=Ft,o=!0,s=e.length,c=[],l=t.length;if(!s)return c;r&&(t=Rt(t,Zt(r))),n?(a=Ot,o=!1):t.length>=200&&(a=tr,o=!1,t=new Gr(t));e:for(;++i<s;){var u=e[i],d=null==r?u:r(u);if(u=n||0!==u?u:0,o&&d==d){for(var p=l;p--;)if(t[p]===d)continue e;c.push(u)}else a(t,d,n)||c.push(u)}return c}zr.templateSettings={escape:Q,evaluate:Z,interpolate:ee,variable:"",imports:{_:zr}},zr.prototype=qr.prototype,zr.prototype.constructor=zr,Jr.prototype=Ur(qr.prototype),Jr.prototype.constructor=Jr,Vr.prototype=Ur(qr.prototype),Vr.prototype.constructor=Vr,Hr.prototype.clear=function(){this.__data__=Ar?Ar(null):{},this.size=0},Hr.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Hr.prototype.get=function(e){var t=this.__data__;if(Ar){var r=t[e];return r===o?i:r}return Me.call(t,e)?t[e]:i},Hr.prototype.has=function(e){var t=this.__data__;return Ar?t[e]!==i:Me.call(t,e)},Hr.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=Ar&&t===i?o:t,this},Kr.prototype.clear=function(){this.__data__=[],this.size=0},Kr.prototype.delete=function(e){var t=this.__data__,r=rn(t,e);return!(r<0)&&(r==t.length-1?t.pop():Ye.call(t,r,1),--this.size,!0)},Kr.prototype.get=function(e){var t=this.__data__,r=rn(t,e);return r<0?i:t[r][1]},Kr.prototype.has=function(e){return rn(this.__data__,e)>-1},Kr.prototype.set=function(e,t){var r=this.__data__,n=rn(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Wr.prototype.clear=function(){this.size=0,this.__data__={hash:new Hr,map:new(Dr||Kr),string:new Hr}},Wr.prototype.delete=function(e){var t=ua(this,e).delete(e);return this.size-=t?1:0,t},Wr.prototype.get=function(e){return ua(this,e).get(e)},Wr.prototype.has=function(e){return ua(this,e).has(e)},Wr.prototype.set=function(e,t){var r=ua(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Gr.prototype.add=Gr.prototype.push=function(e){return this.__data__.set(e,o),this},Gr.prototype.has=function(e){return this.__data__.has(e)},$r.prototype.clear=function(){this.__data__=new Kr,this.size=0},$r.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},$r.prototype.get=function(e){return this.__data__.get(e)},$r.prototype.has=function(e){return this.__data__.has(e)},$r.prototype.set=function(e,t){var r=this.__data__;if(r instanceof Kr){var n=r.__data__;if(!Dr||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Wr(n)}return r.set(e,t),this.size=r.size,this};var fn=Oi(kn),mn=Oi(xn,!0);function gn(e,t){var r=!0;return fn(e,(function(e,n,i){return r=!!t(e,n,i)})),r}function _n(e,t,r){for(var n=-1,a=e.length;++n<a;){var o=e[n],s=t(o);if(null!=s&&(c===i?s==s&&!ls(s):r(s,c)))var c=s,l=o}return l}function hn(e,t){var r=[];return fn(e,(function(e,n,i){t(e,n,i)&&r.push(e)})),r}function yn(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=ya),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?yn(s,t-1,r,n,i):Mt(i,s):n||(i[i.length]=s)}return i}var vn=Ri(),bn=Ri(!0);function kn(e,t){return e&&vn(e,t,Is)}function xn(e,t){return e&&bn(e,t,Is)}function En(e,t){return It(t,(function(t){return Qo(e[t])}))}function Sn(e,t){for(var r=0,n=(t=bi(t,e)).length;null!=e&&r<n;)e=e[La(t[r++])];return r&&r==n?e:i}function Dn(e,t,r){var n=t(e);return Ho(e)?n:Mt(n,r(e))}function wn(e){return null==e?e===i?"[object Undefined]":"[object Null]":Ze&&Ze in Te(e)?function(e){var t=Me.call(e,Ze),r=e[Ze];try{e[Ze]=i;var n=!0}catch(e){}var a=Be.call(e);n&&(t?e[Ze]=r:delete e[Ze]);return a}(e):function(e){return Be.call(e)}(e)}function Tn(e,t){return e>t}function Cn(e,t){return null!=e&&Me.call(e,t)}function An(e,t){return null!=e&&t in Te(e)}function Nn(e,t,r){for(var a=r?Ot:Ft,o=e[0].length,s=e.length,c=s,l=n(s),u=1/0,d=[];c--;){var p=e[c];c&&t&&(p=Rt(p,Zt(t))),u=vr(p.length,u),l[c]=!r&&(t||o>=120&&p.length>=120)?new Gr(c&&p):i}p=e[0];var f=-1,m=l[0];e:for(;++f<o&&d.length<u;){var g=p[f],_=t?t(g):g;if(g=r||0!==g?g:0,!(m?tr(m,_):a(d,_,r))){for(c=s;--c;){var h=l[c];if(!(h?tr(h,_):a(e[c],_,r)))continue e}m&&m.push(_),d.push(g)}}return d}function Pn(e,t,r){var n=null==(e=Ca(e,t=bi(t,e)))?e:e[La(Ya(t))];return null==n?i:Tt(n,e,r)}function In(e){return rs(e)&&wn(e)==y}function Fn(e,t,r,n,a){return e===t||(null==e||null==t||!rs(e)&&!rs(t)?e!=e&&t!=t:function(e,t,r,n,a,o){var s=Ho(e),c=Ho(t),l=s?v:ga(e),u=c?v:ga(t),d=(l=l==y?T:l)==T,p=(u=u==y?T:u)==T,f=l==u;if(f&&$o(e)){if(!$o(t))return!1;s=!0,d=!1}if(f&&!d)return o||(o=new $r),s||us(e)?ra(e,t,r,n,a,o):function(e,t,r,n,i,a,o){switch(r){case R:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case O:return!(e.byteLength!=t.byteLength||!a(new He(e),new He(t)));case b:case k:case w:return Uo(+e,+t);case x:return e.name==t.name&&e.message==t.message;case A:case P:return e==t+"";case D:var s=cr;case N:var c=1&n;if(s||(s=dr),e.size!=t.size&&!c)return!1;var l=o.get(e);if(l)return l==t;n|=2,o.set(e,t);var u=ra(s(e),s(t),n,i,a,o);return o.delete(e),u;case I:if(jr)return jr.call(e)==jr.call(t)}return!1}(e,t,l,r,n,a,o);if(!(1&r)){var m=d&&Me.call(e,"__wrapped__"),g=p&&Me.call(t,"__wrapped__");if(m||g){var _=m?e.value():e,h=g?t.value():t;return o||(o=new $r),a(_,h,r,n,o)}}if(!f)return!1;return o||(o=new $r),function(e,t,r,n,a,o){var s=1&r,c=ia(e),l=c.length,u=ia(t),d=u.length;if(l!=d&&!s)return!1;var p=l;for(;p--;){var f=c[p];if(!(s?f in t:Me.call(t,f)))return!1}var m=o.get(e),g=o.get(t);if(m&&g)return m==t&&g==e;var _=!0;o.set(e,t),o.set(t,e);var h=s;for(;++p<l;){var y=e[f=c[p]],v=t[f];if(n)var b=s?n(v,y,f,t,e,o):n(y,v,f,e,t,o);if(!(b===i?y===v||a(y,v,r,n,o):b)){_=!1;break}h||(h="constructor"==f)}if(_&&!h){var k=e.constructor,x=t.constructor;k==x||!("constructor"in e)||!("constructor"in t)||"function"==typeof k&&k instanceof k&&"function"==typeof x&&x instanceof x||(_=!1)}return o.delete(e),o.delete(t),_}(e,t,r,n,a,o)}(e,t,r,n,Fn,a))}function On(e,t,r,n){var a=r.length,o=a,s=!n;if(null==e)return!o;for(e=Te(e);a--;){var c=r[a];if(s&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++a<o;){var l=(c=r[a])[0],u=e[l],d=c[1];if(s&&c[2]){if(u===i&&!(l in e))return!1}else{var p=new $r;if(n)var f=n(u,d,l,e,t,p);if(!(f===i?Fn(d,u,3,n,p):f))return!1}}return!0}function Rn(e){return!(!ts(e)||(t=e,je&&je in t))&&(Qo(e)?qe:ye).test(ja(e));var t}function Mn(e){return"function"==typeof e?e:null==e?ic:"object"==typeof e?Ho(e)?qn(e[0],e[1]):Un(e):fc(e)}function Ln(e){if(!Sa(e))return Gt(e);var t=[];for(var r in Te(e))Me.call(e,r)&&"constructor"!=r&&t.push(r);return t}function jn(e){if(!ts(e))return function(e){var t=[];if(null!=e)for(var r in Te(e))t.push(r);return t}(e);var t=Sa(e),r=[];for(var n in e)("constructor"!=n||!t&&Me.call(e,n))&&r.push(n);return r}function Bn(e,t){return e<t}function zn(e,t){var r=-1,i=Wo(e)?n(e.length):[];return fn(e,(function(e,n,a){i[++r]=t(e,n,a)})),i}function Un(e){var t=da(e);return 1==t.length&&t[0][2]?wa(t[0][0],t[0][1]):function(r){return r===e||On(r,e,t)}}function qn(e,t){return ka(e)&&Da(t)?wa(La(e),t):function(r){var n=Ts(r,e);return n===i&&n===t?Cs(r,e):Fn(t,n,3)}}function Jn(e,t,r,n,a){e!==t&&vn(t,(function(o,s){if(a||(a=new $r),ts(o))!function(e,t,r,n,a,o,s){var c=Aa(e,r),l=Aa(t,r),u=s.get(l);if(u)return void en(e,r,u);var d=o?o(c,l,r+"",e,t,s):i,p=d===i;if(p){var f=Ho(l),m=!f&&$o(l),g=!f&&!m&&us(l);d=l,f||m||g?Ho(c)?d=c:Go(c)?d=Ni(c):m?(p=!1,d=Si(l,!0)):g?(p=!1,d=wi(l,!0)):d=[]:as(l)||Vo(l)?(d=c,Vo(c)?d=ys(c):ts(c)&&!Qo(c)||(d=ha(l))):p=!1}p&&(s.set(l,d),a(d,l,n,o,s),s.delete(l));en(e,r,d)}(e,t,s,r,Jn,n,a);else{var c=n?n(Aa(e,s),o,s+"",e,t,a):i;c===i&&(c=o),en(e,s,c)}}),Fs)}function Vn(e,t){var r=e.length;if(r)return va(t+=t<0?r:0,r)?e[t]:i}function Hn(e,t,r){t=t.length?Rt(t,(function(e){return Ho(e)?function(t){return Sn(t,1===e.length?e[0]:e)}:e})):[ic];var n=-1;t=Rt(t,Zt(la()));var i=zn(e,(function(e,r,i){var a=Rt(t,(function(t){return t(e)}));return{criteria:a,index:++n,value:e}}));return function(e,t){var r=e.length;for(e.sort(t);r--;)e[r]=e[r].value;return e}(i,(function(e,t){return function(e,t,r){var n=-1,i=e.criteria,a=t.criteria,o=i.length,s=r.length;for(;++n<o;){var c=Ti(i[n],a[n]);if(c)return n>=s?c:c*("desc"==r[n]?-1:1)}return e.index-t.index}(e,t,r)}))}function Kn(e,t,r){for(var n=-1,i=t.length,a={};++n<i;){var o=t[n],s=Sn(e,o);r(s,o)&&ei(a,bi(o,e),s)}return a}function Wn(e,t,r,n){var i=n?Vt:Jt,a=-1,o=t.length,s=e;for(e===t&&(t=Ni(t)),r&&(s=Rt(e,Zt(r)));++a<o;)for(var c=0,l=t[a],u=r?r(l):l;(c=i(s,u,c,n))>-1;)s!==e&&Ye.call(s,c,1),Ye.call(e,c,1);return e}function Gn(e,t){for(var r=e?t.length:0,n=r-1;r--;){var i=t[r];if(r==n||i!==a){var a=i;va(i)?Ye.call(e,i,1):pi(e,i)}}return e}function $n(e,t){return e+_t(xr()*(t-e+1))}function Yn(e,t){var r="";if(!e||t<1||t>m)return r;do{t%2&&(r+=e),(t=_t(t/2))&&(e+=e)}while(t);return r}function Xn(e,t){return Ia(Ta(e,t,ic),e+"")}function Qn(e){return Xr(Us(e))}function Zn(e,t){var r=Us(e);return Ra(r,cn(t,0,r.length))}function ei(e,t,r,n){if(!ts(e))return e;for(var a=-1,o=(t=bi(t,e)).length,s=o-1,c=e;null!=c&&++a<o;){var l=La(t[a]),u=r;if("__proto__"===l||"constructor"===l||"prototype"===l)return e;if(a!=s){var d=c[l];(u=n?n(d,l,c):i)===i&&(u=ts(d)?d:va(t[a+1])?[]:{})}tn(c,l,u),c=c[l]}return e}var ti=Nr?function(e,t){return Nr.set(e,t),e}:ic,ri=rt?function(e,t){return rt(e,"toString",{configurable:!0,enumerable:!1,value:tc(t),writable:!0})}:ic;function ni(e){return Ra(Us(e))}function ii(e,t,r){var i=-1,a=e.length;t<0&&(t=-t>a?0:a+t),(r=r>a?a:r)<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=n(a);++i<a;)o[i]=e[i+t];return o}function ai(e,t){var r;return fn(e,(function(e,n,i){return!(r=t(e,n,i))})),!!r}function oi(e,t,r){var n=0,i=null==e?n:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;n<i;){var a=n+i>>>1,o=e[a];null!==o&&!ls(o)&&(r?o<=t:o<t)?n=a+1:i=a}return i}return si(e,t,ic,r)}function si(e,t,r,n){var a=0,o=null==e?0:e.length;if(0===o)return 0;for(var s=(t=r(t))!=t,c=null===t,l=ls(t),u=t===i;a<o;){var d=_t((a+o)/2),p=r(e[d]),f=p!==i,m=null===p,g=p==p,_=ls(p);if(s)var h=n||g;else h=u?g&&(n||f):c?g&&f&&(n||!m):l?g&&f&&!m&&(n||!_):!m&&!_&&(n?p<=t:p<t);h?a=d+1:o=d}return vr(o,4294967294)}function ci(e,t){for(var r=-1,n=e.length,i=0,a=[];++r<n;){var o=e[r],s=t?t(o):o;if(!r||!Uo(s,c)){var c=s;a[i++]=0===o?0:o}}return a}function li(e){return"number"==typeof e?e:ls(e)?g:+e}function ui(e){if("string"==typeof e)return e;if(Ho(e))return Rt(e,ui)+"";if(ls(e))return Br?Br.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function di(e,t,r){var n=-1,i=Ft,a=e.length,o=!0,s=[],c=s;if(r)o=!1,i=Ot;else if(a>=200){var l=t?null:Yi(e);if(l)return dr(l);o=!1,i=tr,c=new Gr}else c=t?[]:s;e:for(;++n<a;){var u=e[n],d=t?t(u):u;if(u=r||0!==u?u:0,o&&d==d){for(var p=c.length;p--;)if(c[p]===d)continue e;t&&c.push(d),s.push(u)}else i(c,d,r)||(c!==s&&c.push(d),s.push(u))}return s}function pi(e,t){return null==(e=Ca(e,t=bi(t,e)))||delete e[La(Ya(t))]}function fi(e,t,r,n){return ei(e,t,r(Sn(e,t)),n)}function mi(e,t,r,n){for(var i=e.length,a=n?i:-1;(n?a--:++a<i)&&t(e[a],a,e););return r?ii(e,n?0:a,n?a+1:i):ii(e,n?a+1:0,n?i:a)}function gi(e,t){var r=e;return r instanceof Vr&&(r=r.value()),Lt(t,(function(e,t){return t.func.apply(t.thisArg,Mt([e],t.args))}),r)}function _i(e,t,r){var i=e.length;if(i<2)return i?di(e[0]):[];for(var a=-1,o=n(i);++a<i;)for(var s=e[a],c=-1;++c<i;)c!=a&&(o[a]=pn(o[a]||s,e[c],t,r));return di(yn(o,1),t,r)}function hi(e,t,r){for(var n=-1,a=e.length,o=t.length,s={};++n<a;){var c=n<o?t[n]:i;r(s,e[n],c)}return s}function yi(e){return Go(e)?e:[]}function vi(e){return"function"==typeof e?e:ic}function bi(e,t){return Ho(e)?e:ka(e,t)?[e]:Ma(vs(e))}var ki=Xn;function xi(e,t,r){var n=e.length;return r=r===i?n:r,!t&&r>=n?e:ii(e,t,r)}var Ei=it||function(e){return gt.clearTimeout(e)};function Si(e,t){if(t)return e.slice();var r=e.length,n=Ke?Ke(r):new e.constructor(r);return e.copy(n),n}function Di(e){var t=new e.constructor(e.byteLength);return new He(t).set(new He(e)),t}function wi(e,t){var r=t?Di(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function Ti(e,t){if(e!==t){var r=e!==i,n=null===e,a=e==e,o=ls(e),s=t!==i,c=null===t,l=t==t,u=ls(t);if(!c&&!u&&!o&&e>t||o&&s&&l&&!c&&!u||n&&s&&l||!r&&l||!a)return 1;if(!n&&!o&&!u&&e<t||u&&r&&a&&!n&&!o||c&&r&&a||!s&&a||!l)return-1}return 0}function Ci(e,t,r,i){for(var a=-1,o=e.length,s=r.length,c=-1,l=t.length,u=yr(o-s,0),d=n(l+u),p=!i;++c<l;)d[c]=t[c];for(;++a<s;)(p||a<o)&&(d[r[a]]=e[a]);for(;u--;)d[c++]=e[a++];return d}function Ai(e,t,r,i){for(var a=-1,o=e.length,s=-1,c=r.length,l=-1,u=t.length,d=yr(o-c,0),p=n(d+u),f=!i;++a<d;)p[a]=e[a];for(var m=a;++l<u;)p[m+l]=t[l];for(;++s<c;)(f||a<o)&&(p[m+r[s]]=e[a++]);return p}function Ni(e,t){var r=-1,i=e.length;for(t||(t=n(i));++r<i;)t[r]=e[r];return t}function Pi(e,t,r,n){var a=!r;r||(r={});for(var o=-1,s=t.length;++o<s;){var c=t[o],l=n?n(r[c],e[c],c,r,e):i;l===i&&(l=e[c]),a?on(r,c,l):tn(r,c,l)}return r}function Ii(e,t){return function(r,n){var i=Ho(r)?Ct:nn,a=t?t():{};return i(r,e,la(n,2),a)}}function Fi(e){return Xn((function(t,r){var n=-1,a=r.length,o=a>1?r[a-1]:i,s=a>2?r[2]:i;for(o=e.length>3&&"function"==typeof o?(a--,o):i,s&&ba(r[0],r[1],s)&&(o=a<3?i:o,a=1),t=Te(t);++n<a;){var c=r[n];c&&e(t,c,n,o)}return t}))}function Oi(e,t){return function(r,n){if(null==r)return r;if(!Wo(r))return e(r,n);for(var i=r.length,a=t?i:-1,o=Te(r);(t?a--:++a<i)&&!1!==n(o[a],a,o););return r}}function Ri(e){return function(t,r,n){for(var i=-1,a=Te(t),o=n(t),s=o.length;s--;){var c=o[e?s:++i];if(!1===r(a[c],c,a))break}return t}}function Mi(e){return function(t){var r=sr(t=vs(t))?mr(t):i,n=r?r[0]:t.charAt(0),a=r?xi(r,1).join(""):t.slice(1);return n[e]()+a}}function Li(e){return function(t){return Lt(Qs(Vs(t).replace(et,"")),e,"")}}function ji(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=Ur(e.prototype),n=e.apply(r,t);return ts(n)?n:r}}function Bi(e){return function(t,r,n){var a=Te(t);if(!Wo(t)){var o=la(r,3);t=Is(t),r=function(e){return o(a[e],e,a)}}var s=e(t,r,n);return s>-1?a[o?t[s]:s]:i}}function zi(e){return na((function(t){var r=t.length,n=r,o=Jr.prototype.thru;for(e&&t.reverse();n--;){var s=t[n];if("function"!=typeof s)throw new Ne(a);if(o&&!c&&"wrapper"==sa(s))var c=new Jr([],!0)}for(n=c?n:r;++n<r;){var l=sa(s=t[n]),u="wrapper"==l?oa(s):i;c=u&&xa(u[0])&&424==u[1]&&!u[4].length&&1==u[9]?c[sa(u[0])].apply(c,u[3]):1==s.length&&xa(s)?c[l]():c.thru(s)}return function(){var e=arguments,n=e[0];if(c&&1==e.length&&Ho(n))return c.plant(n).value();for(var i=0,a=r?t[i].apply(this,e):n;++i<r;)a=t[i].call(this,a);return a}}))}function Ui(e,t,r,a,o,s,c,l,u,p){var f=t&d,m=1&t,g=2&t,_=24&t,h=512&t,y=g?i:ji(e);return function d(){for(var v=arguments.length,b=n(v),k=v;k--;)b[k]=arguments[k];if(_)var x=ca(d),E=function(e,t){for(var r=e.length,n=0;r--;)e[r]===t&&++n;return n}(b,x);if(a&&(b=Ci(b,a,o,_)),s&&(b=Ai(b,s,c,_)),v-=E,_&&v<p){var S=ur(b,x);return Gi(e,t,Ui,d.placeholder,r,b,S,l,u,p-v)}var D=m?r:this,w=g?D[e]:e;return v=b.length,l?b=function(e,t){var r=e.length,n=vr(t.length,r),a=Ni(e);for(;n--;){var o=t[n];e[n]=va(o,r)?a[o]:i}return e}(b,l):h&&v>1&&b.reverse(),f&&u<v&&(b.length=u),this&&this!==gt&&this instanceof d&&(w=y||ji(w)),w.apply(D,b)}}function qi(e,t){return function(r,n){return function(e,t,r,n){return kn(e,(function(e,i,a){t(n,r(e),i,a)})),n}(r,e,t(n),{})}}function Ji(e,t){return function(r,n){var a;if(r===i&&n===i)return t;if(r!==i&&(a=r),n!==i){if(a===i)return n;"string"==typeof r||"string"==typeof n?(r=ui(r),n=ui(n)):(r=li(r),n=li(n)),a=e(r,n)}return a}}function Vi(e){return na((function(t){return t=Rt(t,Zt(la())),Xn((function(r){var n=this;return e(t,(function(e){return Tt(e,n,r)}))}))}))}function Hi(e,t){var r=(t=t===i?" ":ui(t)).length;if(r<2)return r?Yn(t,e):t;var n=Yn(t,mt(e/fr(t)));return sr(t)?xi(mr(n),0,e).join(""):n.slice(0,e)}function Ki(e){return function(t,r,a){return a&&"number"!=typeof a&&ba(t,r,a)&&(r=a=i),t=ms(t),r===i?(r=t,t=0):r=ms(r),function(e,t,r,i){for(var a=-1,o=yr(mt((t-e)/(r||1)),0),s=n(o);o--;)s[i?o:++a]=e,e+=r;return s}(t,r,a=a===i?t<r?1:-1:ms(a),e)}}function Wi(e){return function(t,r){return"string"==typeof t&&"string"==typeof r||(t=hs(t),r=hs(r)),e(t,r)}}function Gi(e,t,r,n,a,o,s,c,d,p){var f=8&t;t|=f?l:u,4&(t&=~(f?u:l))||(t&=-4);var m=[e,t,a,f?o:i,f?s:i,f?i:o,f?i:s,c,d,p],g=r.apply(i,m);return xa(e)&&Na(g,m),g.placeholder=n,Fa(g,e,t)}function $i(e){var t=we[e];return function(e,r){if(e=hs(e),(r=null==r?0:vr(gs(r),292))&&bt(e)){var n=(vs(e)+"e").split("e");return+((n=(vs(t(n[0]+"e"+(+n[1]+r)))+"e").split("e"))[0]+"e"+(+n[1]-r))}return t(e)}}var Yi=Tr&&1/dr(new Tr([,-0]))[1]==f?function(e){return new Tr(e)}:lc;function Xi(e){return function(t){var r=ga(t);return r==D?cr(t):r==N?pr(t):function(e,t){return Rt(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Qi(e,t,r,o,f,m,g,_){var h=2&t;if(!h&&"function"!=typeof e)throw new Ne(a);var y=o?o.length:0;if(y||(t&=-97,o=f=i),g=g===i?g:yr(gs(g),0),_=_===i?_:gs(_),y-=f?f.length:0,t&u){var v=o,b=f;o=f=i}var k=h?i:oa(e),x=[e,t,r,o,f,v,b,m,g,_];if(k&&function(e,t){var r=e[1],n=t[1],i=r|n,a=i<131,o=n==d&&8==r||n==d&&r==p&&e[7].length<=t[8]||384==n&&t[7].length<=t[8]&&8==r;if(!a&&!o)return e;1&n&&(e[2]=t[2],i|=1&r?0:4);var c=t[3];if(c){var l=e[3];e[3]=l?Ci(l,c,t[4]):c,e[4]=l?ur(e[3],s):t[4]}(c=t[5])&&(l=e[5],e[5]=l?Ai(l,c,t[6]):c,e[6]=l?ur(e[5],s):t[6]);(c=t[7])&&(e[7]=c);n&d&&(e[8]=null==e[8]?t[8]:vr(e[8],t[8]));null==e[9]&&(e[9]=t[9]);e[0]=t[0],e[1]=i}(x,k),e=x[0],t=x[1],r=x[2],o=x[3],f=x[4],!(_=x[9]=x[9]===i?h?0:e.length:yr(x[9]-y,0))&&24&t&&(t&=-25),t&&1!=t)E=8==t||t==c?function(e,t,r){var a=ji(e);return function o(){for(var s=arguments.length,c=n(s),l=s,u=ca(o);l--;)c[l]=arguments[l];var d=s<3&&c[0]!==u&&c[s-1]!==u?[]:ur(c,u);return(s-=d.length)<r?Gi(e,t,Ui,o.placeholder,i,c,d,i,i,r-s):Tt(this&&this!==gt&&this instanceof o?a:e,this,c)}}(e,t,_):t!=l&&33!=t||f.length?Ui.apply(i,x):function(e,t,r,i){var a=1&t,o=ji(e);return function t(){for(var s=-1,c=arguments.length,l=-1,u=i.length,d=n(u+c),p=this&&this!==gt&&this instanceof t?o:e;++l<u;)d[l]=i[l];for(;c--;)d[l++]=arguments[++s];return Tt(p,a?r:this,d)}}(e,t,r,o);else var E=function(e,t,r){var n=1&t,i=ji(e);return function t(){return(this&&this!==gt&&this instanceof t?i:e).apply(n?r:this,arguments)}}(e,t,r);return Fa((k?ti:Na)(E,x),e,t)}function Zi(e,t,r,n){return e===i||Uo(e,Fe[r])&&!Me.call(n,r)?t:e}function ea(e,t,r,n,a,o){return ts(e)&&ts(t)&&(o.set(t,e),Jn(e,t,i,ea,o),o.delete(t)),e}function ta(e){return as(e)?i:e}function ra(e,t,r,n,a,o){var s=1&r,c=e.length,l=t.length;if(c!=l&&!(s&&l>c))return!1;var u=o.get(e),d=o.get(t);if(u&&d)return u==t&&d==e;var p=-1,f=!0,m=2&r?new Gr:i;for(o.set(e,t),o.set(t,e);++p<c;){var g=e[p],_=t[p];if(n)var h=s?n(_,g,p,t,e,o):n(g,_,p,e,t,o);if(h!==i){if(h)continue;f=!1;break}if(m){if(!Bt(t,(function(e,t){if(!tr(m,t)&&(g===e||a(g,e,r,n,o)))return m.push(t)}))){f=!1;break}}else if(g!==_&&!a(g,_,r,n,o)){f=!1;break}}return o.delete(e),o.delete(t),f}function na(e){return Ia(Ta(e,i,Ha),e+"")}function ia(e){return Dn(e,Is,fa)}function aa(e){return Dn(e,Fs,ma)}var oa=Nr?function(e){return Nr.get(e)}:lc;function sa(e){for(var t=e.name+"",r=Pr[t],n=Me.call(Pr,t)?r.length:0;n--;){var i=r[n],a=i.func;if(null==a||a==e)return i.name}return t}function ca(e){return(Me.call(zr,"placeholder")?zr:e).placeholder}function la(){var e=zr.iteratee||ac;return e=e===ac?Mn:e,arguments.length?e(arguments[0],arguments[1]):e}function ua(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function da(e){for(var t=Is(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,Da(i)]}return t}function pa(e,t){var r=function(e,t){return null==e?i:e[t]}(e,t);return Rn(r)?r:i}var fa=ht?function(e){return null==e?[]:(e=Te(e),It(ht(e),(function(t){return $e.call(e,t)})))}:_c,ma=ht?function(e){for(var t=[];e;)Mt(t,fa(e)),e=We(e);return t}:_c,ga=wn;function _a(e,t,r){for(var n=-1,i=(t=bi(t,e)).length,a=!1;++n<i;){var o=La(t[n]);if(!(a=null!=e&&r(e,o)))break;e=e[o]}return a||++n!=i?a:!!(i=null==e?0:e.length)&&es(i)&&va(o,i)&&(Ho(e)||Vo(e))}function ha(e){return"function"!=typeof e.constructor||Sa(e)?{}:Ur(We(e))}function ya(e){return Ho(e)||Vo(e)||!!(Xe&&e&&e[Xe])}function va(e,t){var r=typeof e;return!!(t=null==t?m:t)&&("number"==r||"symbol"!=r&&be.test(e))&&e>-1&&e%1==0&&e<t}function ba(e,t,r){if(!ts(r))return!1;var n=typeof t;return!!("number"==n?Wo(r)&&va(t,r.length):"string"==n&&t in r)&&Uo(r[t],e)}function ka(e,t){if(Ho(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!ls(e))||(re.test(e)||!te.test(e)||null!=t&&e in Te(t))}function xa(e){var t=sa(e),r=zr[t];if("function"!=typeof r||!(t in Vr.prototype))return!1;if(e===r)return!0;var n=oa(r);return!!n&&e===n[0]}(Sr&&ga(new Sr(new ArrayBuffer(1)))!=R||Dr&&ga(new Dr)!=D||wr&&ga(wr.resolve())!=C||Tr&&ga(new Tr)!=N||Cr&&ga(new Cr)!=F)&&(ga=function(e){var t=wn(e),r=t==T?e.constructor:i,n=r?ja(r):"";if(n)switch(n){case Ir:return R;case Fr:return D;case Or:return C;case Rr:return N;case Mr:return F}return t});var Ea=Oe?Qo:hc;function Sa(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Fe)}function Da(e){return e==e&&!ts(e)}function wa(e,t){return function(r){return null!=r&&(r[e]===t&&(t!==i||e in Te(r)))}}function Ta(e,t,r){return t=yr(t===i?e.length-1:t,0),function(){for(var i=arguments,a=-1,o=yr(i.length-t,0),s=n(o);++a<o;)s[a]=i[t+a];a=-1;for(var c=n(t+1);++a<t;)c[a]=i[a];return c[t]=r(s),Tt(e,this,c)}}function Ca(e,t){return t.length<2?e:Sn(e,ii(t,0,-1))}function Aa(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Na=Oa(ti),Pa=ft||function(e,t){return gt.setTimeout(e,t)},Ia=Oa(ri);function Fa(e,t,r){var n=t+"";return Ia(e,function(e,t){var r=t.length;if(!r)return e;var n=r-1;return t[n]=(r>1?"& ":"")+t[n],t=t.join(r>2?", ":" "),e.replace(ce,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return At(h,(function(r){var n="_."+r[0];t&r[1]&&!Ft(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(le);return t?t[1].split(ue):[]}(n),r)))}function Oa(e){var t=0,r=0;return function(){var n=br(),a=16-(n-r);if(r=n,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(i,arguments)}}function Ra(e,t){var r=-1,n=e.length,a=n-1;for(t=t===i?n:t;++r<t;){var o=$n(r,a),s=e[o];e[o]=e[r],e[r]=s}return e.length=t,e}var Ma=function(e){var t=Ro(e,(function(e){return 500===r.size&&r.clear(),e})),r=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ne,(function(e,r,n,i){t.push(n?i.replace(fe,"$1"):r||e)})),t}));function La(e){if("string"==typeof e||ls(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ja(e){if(null!=e){try{return Re.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ba(e){if(e instanceof Vr)return e.clone();var t=new Jr(e.__wrapped__,e.__chain__);return t.__actions__=Ni(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var za=Xn((function(e,t){return Go(e)?pn(e,yn(t,1,Go,!0)):[]})),Ua=Xn((function(e,t){var r=Ya(t);return Go(r)&&(r=i),Go(e)?pn(e,yn(t,1,Go,!0),la(r,2)):[]})),qa=Xn((function(e,t){var r=Ya(t);return Go(r)&&(r=i),Go(e)?pn(e,yn(t,1,Go,!0),i,r):[]}));function Ja(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:gs(r);return i<0&&(i=yr(n+i,0)),qt(e,la(t,3),i)}function Va(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var a=n-1;return r!==i&&(a=gs(r),a=r<0?yr(n+a,0):vr(a,n-1)),qt(e,la(t,3),a,!0)}function Ha(e){return(null==e?0:e.length)?yn(e,1):[]}function Ka(e){return e&&e.length?e[0]:i}var Wa=Xn((function(e){var t=Rt(e,yi);return t.length&&t[0]===e[0]?Nn(t):[]})),Ga=Xn((function(e){var t=Ya(e),r=Rt(e,yi);return t===Ya(r)?t=i:r.pop(),r.length&&r[0]===e[0]?Nn(r,la(t,2)):[]})),$a=Xn((function(e){var t=Ya(e),r=Rt(e,yi);return(t="function"==typeof t?t:i)&&r.pop(),r.length&&r[0]===e[0]?Nn(r,i,t):[]}));function Ya(e){var t=null==e?0:e.length;return t?e[t-1]:i}var Xa=Xn(Qa);function Qa(e,t){return e&&e.length&&t&&t.length?Wn(e,t):e}var Za=na((function(e,t){var r=null==e?0:e.length,n=sn(e,t);return Gn(e,Rt(t,(function(e){return va(e,r)?+e:e})).sort(Ti)),n}));function eo(e){return null==e?e:Er.call(e)}var to=Xn((function(e){return di(yn(e,1,Go,!0))})),ro=Xn((function(e){var t=Ya(e);return Go(t)&&(t=i),di(yn(e,1,Go,!0),la(t,2))})),no=Xn((function(e){var t=Ya(e);return t="function"==typeof t?t:i,di(yn(e,1,Go,!0),i,t)}));function io(e){if(!e||!e.length)return[];var t=0;return e=It(e,(function(e){if(Go(e))return t=yr(e.length,t),!0})),Xt(t,(function(t){return Rt(e,Wt(t))}))}function ao(e,t){if(!e||!e.length)return[];var r=io(e);return null==t?r:Rt(r,(function(e){return Tt(t,i,e)}))}var oo=Xn((function(e,t){return Go(e)?pn(e,t):[]})),so=Xn((function(e){return _i(It(e,Go))})),co=Xn((function(e){var t=Ya(e);return Go(t)&&(t=i),_i(It(e,Go),la(t,2))})),lo=Xn((function(e){var t=Ya(e);return t="function"==typeof t?t:i,_i(It(e,Go),i,t)})),uo=Xn(io);var po=Xn((function(e){var t=e.length,r=t>1?e[t-1]:i;return r="function"==typeof r?(e.pop(),r):i,ao(e,r)}));function fo(e){var t=zr(e);return t.__chain__=!0,t}function mo(e,t){return t(e)}var go=na((function(e){var t=e.length,r=t?e[0]:0,n=this.__wrapped__,a=function(t){return sn(t,e)};return!(t>1||this.__actions__.length)&&n instanceof Vr&&va(r)?((n=n.slice(r,+r+(t?1:0))).__actions__.push({func:mo,args:[a],thisArg:i}),new Jr(n,this.__chain__).thru((function(e){return t&&!e.length&&e.push(i),e}))):this.thru(a)}));var _o=Ii((function(e,t,r){Me.call(e,r)?++e[r]:on(e,r,1)}));var ho=Bi(Ja),yo=Bi(Va);function vo(e,t){return(Ho(e)?At:fn)(e,la(t,3))}function bo(e,t){return(Ho(e)?Nt:mn)(e,la(t,3))}var ko=Ii((function(e,t,r){Me.call(e,r)?e[r].push(t):on(e,r,[t])}));var xo=Xn((function(e,t,r){var i=-1,a="function"==typeof t,o=Wo(e)?n(e.length):[];return fn(e,(function(e){o[++i]=a?Tt(t,e,r):Pn(e,t,r)})),o})),Eo=Ii((function(e,t,r){on(e,r,t)}));function So(e,t){return(Ho(e)?Rt:zn)(e,la(t,3))}var Do=Ii((function(e,t,r){e[r?0:1].push(t)}),(function(){return[[],[]]}));var wo=Xn((function(e,t){if(null==e)return[];var r=t.length;return r>1&&ba(e,t[0],t[1])?t=[]:r>2&&ba(t[0],t[1],t[2])&&(t=[t[0]]),Hn(e,yn(t,1),[])})),To=ut||function(){return gt.Date.now()};function Co(e,t,r){return t=r?i:t,t=e&&null==t?e.length:t,Qi(e,d,i,i,i,i,t)}function Ao(e,t){var r;if("function"!=typeof t)throw new Ne(a);return e=gs(e),function(){return--e>0&&(r=t.apply(this,arguments)),e<=1&&(t=i),r}}var No=Xn((function(e,t,r){var n=1;if(r.length){var i=ur(r,ca(No));n|=l}return Qi(e,n,t,r,i)})),Po=Xn((function(e,t,r){var n=3;if(r.length){var i=ur(r,ca(Po));n|=l}return Qi(t,n,e,r,i)}));function Io(e,t,r){var n,o,s,c,l,u,d=0,p=!1,f=!1,m=!0;if("function"!=typeof e)throw new Ne(a);function g(t){var r=n,a=o;return n=o=i,d=t,c=e.apply(a,r)}function _(e){var r=e-u;return u===i||r>=t||r<0||f&&e-d>=s}function h(){var e=To();if(_(e))return y(e);l=Pa(h,function(e){var r=t-(e-u);return f?vr(r,s-(e-d)):r}(e))}function y(e){return l=i,m&&n?g(e):(n=o=i,c)}function v(){var e=To(),r=_(e);if(n=arguments,o=this,u=e,r){if(l===i)return function(e){return d=e,l=Pa(h,t),p?g(e):c}(u);if(f)return Ei(l),l=Pa(h,t),g(u)}return l===i&&(l=Pa(h,t)),c}return t=hs(t)||0,ts(r)&&(p=!!r.leading,s=(f="maxWait"in r)?yr(hs(r.maxWait)||0,t):s,m="trailing"in r?!!r.trailing:m),v.cancel=function(){l!==i&&Ei(l),d=0,n=u=o=l=i},v.flush=function(){return l===i?c:y(To())},v}var Fo=Xn((function(e,t){return dn(e,1,t)})),Oo=Xn((function(e,t,r){return dn(e,hs(t)||0,r)}));function Ro(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Ne(a);var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var o=e.apply(this,n);return r.cache=a.set(i,o)||a,o};return r.cache=new(Ro.Cache||Wr),r}function Mo(e){if("function"!=typeof e)throw new Ne(a);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ro.Cache=Wr;var Lo=ki((function(e,t){var r=(t=1==t.length&&Ho(t[0])?Rt(t[0],Zt(la())):Rt(yn(t,1),Zt(la()))).length;return Xn((function(n){for(var i=-1,a=vr(n.length,r);++i<a;)n[i]=t[i].call(this,n[i]);return Tt(e,this,n)}))})),jo=Xn((function(e,t){var r=ur(t,ca(jo));return Qi(e,l,i,t,r)})),Bo=Xn((function(e,t){var r=ur(t,ca(Bo));return Qi(e,u,i,t,r)})),zo=na((function(e,t){return Qi(e,p,i,i,i,t)}));function Uo(e,t){return e===t||e!=e&&t!=t}var qo=Wi(Tn),Jo=Wi((function(e,t){return e>=t})),Vo=In(function(){return arguments}())?In:function(e){return rs(e)&&Me.call(e,"callee")&&!$e.call(e,"callee")},Ho=n.isArray,Ko=kt?Zt(kt):function(e){return rs(e)&&wn(e)==O};function Wo(e){return null!=e&&es(e.length)&&!Qo(e)}function Go(e){return rs(e)&&Wo(e)}var $o=vt||hc,Yo=xt?Zt(xt):function(e){return rs(e)&&wn(e)==k};function Xo(e){if(!rs(e))return!1;var t=wn(e);return t==x||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!as(e)}function Qo(e){if(!ts(e))return!1;var t=wn(e);return t==E||t==S||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Zo(e){return"number"==typeof e&&e==gs(e)}function es(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=m}function ts(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function rs(e){return null!=e&&"object"==typeof e}var ns=Et?Zt(Et):function(e){return rs(e)&&ga(e)==D};function is(e){return"number"==typeof e||rs(e)&&wn(e)==w}function as(e){if(!rs(e)||wn(e)!=T)return!1;var t=We(e);if(null===t)return!0;var r=Me.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Re.call(r)==ze}var os=St?Zt(St):function(e){return rs(e)&&wn(e)==A};var ss=Dt?Zt(Dt):function(e){return rs(e)&&ga(e)==N};function cs(e){return"string"==typeof e||!Ho(e)&&rs(e)&&wn(e)==P}function ls(e){return"symbol"==typeof e||rs(e)&&wn(e)==I}var us=wt?Zt(wt):function(e){return rs(e)&&es(e.length)&&!!ct[wn(e)]};var ds=Wi(Bn),ps=Wi((function(e,t){return e<=t}));function fs(e){if(!e)return[];if(Wo(e))return cs(e)?mr(e):Ni(e);if(Qe&&e[Qe])return function(e){for(var t,r=[];!(t=e.next()).done;)r.push(t.value);return r}(e[Qe]());var t=ga(e);return(t==D?cr:t==N?dr:Us)(e)}function ms(e){return e?(e=hs(e))===f||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function gs(e){var t=ms(e),r=t%1;return t==t?r?t-r:t:0}function _s(e){return e?cn(gs(e),0,_):0}function hs(e){if("number"==typeof e)return e;if(ls(e))return g;if(ts(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=ts(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Qt(e);var r=he.test(e);return r||ve.test(e)?pt(e.slice(2),r?2:8):_e.test(e)?g:+e}function ys(e){return Pi(e,Fs(e))}function vs(e){return null==e?"":ui(e)}var bs=Fi((function(e,t){if(Sa(t)||Wo(t))Pi(t,Is(t),e);else for(var r in t)Me.call(t,r)&&tn(e,r,t[r])})),ks=Fi((function(e,t){Pi(t,Fs(t),e)})),xs=Fi((function(e,t,r,n){Pi(t,Fs(t),e,n)})),Es=Fi((function(e,t,r,n){Pi(t,Is(t),e,n)})),Ss=na(sn);var Ds=Xn((function(e,t){e=Te(e);var r=-1,n=t.length,a=n>2?t[2]:i;for(a&&ba(t[0],t[1],a)&&(n=1);++r<n;)for(var o=t[r],s=Fs(o),c=-1,l=s.length;++c<l;){var u=s[c],d=e[u];(d===i||Uo(d,Fe[u])&&!Me.call(e,u))&&(e[u]=o[u])}return e})),ws=Xn((function(e){return e.push(i,ea),Tt(Rs,i,e)}));function Ts(e,t,r){var n=null==e?i:Sn(e,t);return n===i?r:n}function Cs(e,t){return null!=e&&_a(e,t,An)}var As=qi((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=Be.call(t)),e[t]=r}),tc(ic)),Ns=qi((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=Be.call(t)),Me.call(e,t)?e[t].push(r):e[t]=[r]}),la),Ps=Xn(Pn);function Is(e){return Wo(e)?Yr(e):Ln(e)}function Fs(e){return Wo(e)?Yr(e,!0):jn(e)}var Os=Fi((function(e,t,r){Jn(e,t,r)})),Rs=Fi((function(e,t,r,n){Jn(e,t,r,n)})),Ms=na((function(e,t){var r={};if(null==e)return r;var n=!1;t=Rt(t,(function(t){return t=bi(t,e),n||(n=t.length>1),t})),Pi(e,aa(e),r),n&&(r=ln(r,7,ta));for(var i=t.length;i--;)pi(r,t[i]);return r}));var Ls=na((function(e,t){return null==e?{}:function(e,t){return Kn(e,t,(function(t,r){return Cs(e,r)}))}(e,t)}));function js(e,t){if(null==e)return{};var r=Rt(aa(e),(function(e){return[e]}));return t=la(t),Kn(e,r,(function(e,r){return t(e,r[0])}))}var Bs=Xi(Is),zs=Xi(Fs);function Us(e){return null==e?[]:er(e,Is(e))}var qs=Li((function(e,t,r){return t=t.toLowerCase(),e+(r?Js(t):t)}));function Js(e){return Xs(vs(e).toLowerCase())}function Vs(e){return(e=vs(e))&&e.replace(ke,ir).replace(tt,"")}var Hs=Li((function(e,t,r){return e+(r?"-":"")+t.toLowerCase()})),Ks=Li((function(e,t,r){return e+(r?" ":"")+t.toLowerCase()})),Ws=Mi("toLowerCase");var Gs=Li((function(e,t,r){return e+(r?"_":"")+t.toLowerCase()}));var $s=Li((function(e,t,r){return e+(r?" ":"")+Xs(t)}));var Ys=Li((function(e,t,r){return e+(r?" ":"")+t.toUpperCase()})),Xs=Mi("toUpperCase");function Qs(e,t,r){return e=vs(e),(t=r?i:t)===i?function(e){return at.test(e)}(e)?function(e){return e.match(nt)||[]}(e):function(e){return e.match(de)||[]}(e):e.match(t)||[]}var Zs=Xn((function(e,t){try{return Tt(e,i,t)}catch(e){return Xo(e)?e:new Se(e)}})),ec=na((function(e,t){return At(t,(function(t){t=La(t),on(e,t,No(e[t],e))})),e}));function tc(e){return function(){return e}}var rc=zi(),nc=zi(!0);function ic(e){return e}function ac(e){return Mn("function"==typeof e?e:ln(e,1))}var oc=Xn((function(e,t){return function(r){return Pn(r,e,t)}})),sc=Xn((function(e,t){return function(r){return Pn(e,r,t)}}));function cc(e,t,r){var n=Is(t),i=En(t,n);null!=r||ts(t)&&(i.length||!n.length)||(r=t,t=e,e=this,i=En(t,Is(t)));var a=!(ts(r)&&"chain"in r&&!r.chain),o=Qo(e);return At(i,(function(r){var n=t[r];e[r]=n,o&&(e.prototype[r]=function(){var t=this.__chain__;if(a||t){var r=e(this.__wrapped__);return(r.__actions__=Ni(this.__actions__)).push({func:n,args:arguments,thisArg:e}),r.__chain__=t,r}return n.apply(e,Mt([this.value()],arguments))})})),e}function lc(){}var uc=Vi(Rt),dc=Vi(Pt),pc=Vi(Bt);function fc(e){return ka(e)?Wt(La(e)):function(e){return function(t){return Sn(t,e)}}(e)}var mc=Ki(),gc=Ki(!0);function _c(){return[]}function hc(){return!1}var yc=Ji((function(e,t){return e+t}),0),vc=$i("ceil"),bc=Ji((function(e,t){return e/t}),1),kc=$i("floor");var xc,Ec=Ji((function(e,t){return e*t}),1),Sc=$i("round"),Dc=Ji((function(e,t){return e-t}),0);return zr.after=function(e,t){if("function"!=typeof t)throw new Ne(a);return e=gs(e),function(){if(--e<1)return t.apply(this,arguments)}},zr.ary=Co,zr.assign=bs,zr.assignIn=ks,zr.assignInWith=xs,zr.assignWith=Es,zr.at=Ss,zr.before=Ao,zr.bind=No,zr.bindAll=ec,zr.bindKey=Po,zr.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ho(e)?e:[e]},zr.chain=fo,zr.chunk=function(e,t,r){t=(r?ba(e,t,r):t===i)?1:yr(gs(t),0);var a=null==e?0:e.length;if(!a||t<1)return[];for(var o=0,s=0,c=n(mt(a/t));o<a;)c[s++]=ii(e,o,o+=t);return c},zr.compact=function(e){for(var t=-1,r=null==e?0:e.length,n=0,i=[];++t<r;){var a=e[t];a&&(i[n++]=a)}return i},zr.concat=function(){var e=arguments.length;if(!e)return[];for(var t=n(e-1),r=arguments[0],i=e;i--;)t[i-1]=arguments[i];return Mt(Ho(r)?Ni(r):[r],yn(t,1))},zr.cond=function(e){var t=null==e?0:e.length,r=la();return e=t?Rt(e,(function(e){if("function"!=typeof e[1])throw new Ne(a);return[r(e[0]),e[1]]})):[],Xn((function(r){for(var n=-1;++n<t;){var i=e[n];if(Tt(i[0],this,r))return Tt(i[1],this,r)}}))},zr.conforms=function(e){return function(e){var t=Is(e);return function(r){return un(r,e,t)}}(ln(e,1))},zr.constant=tc,zr.countBy=_o,zr.create=function(e,t){var r=Ur(e);return null==t?r:an(r,t)},zr.curry=function e(t,r,n){var a=Qi(t,8,i,i,i,i,i,r=n?i:r);return a.placeholder=e.placeholder,a},zr.curryRight=function e(t,r,n){var a=Qi(t,c,i,i,i,i,i,r=n?i:r);return a.placeholder=e.placeholder,a},zr.debounce=Io,zr.defaults=Ds,zr.defaultsDeep=ws,zr.defer=Fo,zr.delay=Oo,zr.difference=za,zr.differenceBy=Ua,zr.differenceWith=qa,zr.drop=function(e,t,r){var n=null==e?0:e.length;return n?ii(e,(t=r||t===i?1:gs(t))<0?0:t,n):[]},zr.dropRight=function(e,t,r){var n=null==e?0:e.length;return n?ii(e,0,(t=n-(t=r||t===i?1:gs(t)))<0?0:t):[]},zr.dropRightWhile=function(e,t){return e&&e.length?mi(e,la(t,3),!0,!0):[]},zr.dropWhile=function(e,t){return e&&e.length?mi(e,la(t,3),!0):[]},zr.fill=function(e,t,r,n){var a=null==e?0:e.length;return a?(r&&"number"!=typeof r&&ba(e,t,r)&&(r=0,n=a),function(e,t,r,n){var a=e.length;for((r=gs(r))<0&&(r=-r>a?0:a+r),(n=n===i||n>a?a:gs(n))<0&&(n+=a),n=r>n?0:_s(n);r<n;)e[r++]=t;return e}(e,t,r,n)):[]},zr.filter=function(e,t){return(Ho(e)?It:hn)(e,la(t,3))},zr.flatMap=function(e,t){return yn(So(e,t),1)},zr.flatMapDeep=function(e,t){return yn(So(e,t),f)},zr.flatMapDepth=function(e,t,r){return r=r===i?1:gs(r),yn(So(e,t),r)},zr.flatten=Ha,zr.flattenDeep=function(e){return(null==e?0:e.length)?yn(e,f):[]},zr.flattenDepth=function(e,t){return(null==e?0:e.length)?yn(e,t=t===i?1:gs(t)):[]},zr.flip=function(e){return Qi(e,512)},zr.flow=rc,zr.flowRight=nc,zr.fromPairs=function(e){for(var t=-1,r=null==e?0:e.length,n={};++t<r;){var i=e[t];n[i[0]]=i[1]}return n},zr.functions=function(e){return null==e?[]:En(e,Is(e))},zr.functionsIn=function(e){return null==e?[]:En(e,Fs(e))},zr.groupBy=ko,zr.initial=function(e){return(null==e?0:e.length)?ii(e,0,-1):[]},zr.intersection=Wa,zr.intersectionBy=Ga,zr.intersectionWith=$a,zr.invert=As,zr.invertBy=Ns,zr.invokeMap=xo,zr.iteratee=ac,zr.keyBy=Eo,zr.keys=Is,zr.keysIn=Fs,zr.map=So,zr.mapKeys=function(e,t){var r={};return t=la(t,3),kn(e,(function(e,n,i){on(r,t(e,n,i),e)})),r},zr.mapValues=function(e,t){var r={};return t=la(t,3),kn(e,(function(e,n,i){on(r,n,t(e,n,i))})),r},zr.matches=function(e){return Un(ln(e,1))},zr.matchesProperty=function(e,t){return qn(e,ln(t,1))},zr.memoize=Ro,zr.merge=Os,zr.mergeWith=Rs,zr.method=oc,zr.methodOf=sc,zr.mixin=cc,zr.negate=Mo,zr.nthArg=function(e){return e=gs(e),Xn((function(t){return Vn(t,e)}))},zr.omit=Ms,zr.omitBy=function(e,t){return js(e,Mo(la(t)))},zr.once=function(e){return Ao(2,e)},zr.orderBy=function(e,t,r,n){return null==e?[]:(Ho(t)||(t=null==t?[]:[t]),Ho(r=n?i:r)||(r=null==r?[]:[r]),Hn(e,t,r))},zr.over=uc,zr.overArgs=Lo,zr.overEvery=dc,zr.overSome=pc,zr.partial=jo,zr.partialRight=Bo,zr.partition=Do,zr.pick=Ls,zr.pickBy=js,zr.property=fc,zr.propertyOf=function(e){return function(t){return null==e?i:Sn(e,t)}},zr.pull=Xa,zr.pullAll=Qa,zr.pullAllBy=function(e,t,r){return e&&e.length&&t&&t.length?Wn(e,t,la(r,2)):e},zr.pullAllWith=function(e,t,r){return e&&e.length&&t&&t.length?Wn(e,t,i,r):e},zr.pullAt=Za,zr.range=mc,zr.rangeRight=gc,zr.rearg=zo,zr.reject=function(e,t){return(Ho(e)?It:hn)(e,Mo(la(t,3)))},zr.remove=function(e,t){var r=[];if(!e||!e.length)return r;var n=-1,i=[],a=e.length;for(t=la(t,3);++n<a;){var o=e[n];t(o,n,e)&&(r.push(o),i.push(n))}return Gn(e,i),r},zr.rest=function(e,t){if("function"!=typeof e)throw new Ne(a);return Xn(e,t=t===i?t:gs(t))},zr.reverse=eo,zr.sampleSize=function(e,t,r){return t=(r?ba(e,t,r):t===i)?1:gs(t),(Ho(e)?Qr:Zn)(e,t)},zr.set=function(e,t,r){return null==e?e:ei(e,t,r)},zr.setWith=function(e,t,r,n){return n="function"==typeof n?n:i,null==e?e:ei(e,t,r,n)},zr.shuffle=function(e){return(Ho(e)?Zr:ni)(e)},zr.slice=function(e,t,r){var n=null==e?0:e.length;return n?(r&&"number"!=typeof r&&ba(e,t,r)?(t=0,r=n):(t=null==t?0:gs(t),r=r===i?n:gs(r)),ii(e,t,r)):[]},zr.sortBy=wo,zr.sortedUniq=function(e){return e&&e.length?ci(e):[]},zr.sortedUniqBy=function(e,t){return e&&e.length?ci(e,la(t,2)):[]},zr.split=function(e,t,r){return r&&"number"!=typeof r&&ba(e,t,r)&&(t=r=i),(r=r===i?_:r>>>0)?(e=vs(e))&&("string"==typeof t||null!=t&&!os(t))&&!(t=ui(t))&&sr(e)?xi(mr(e),0,r):e.split(t,r):[]},zr.spread=function(e,t){if("function"!=typeof e)throw new Ne(a);return t=null==t?0:yr(gs(t),0),Xn((function(r){var n=r[t],i=xi(r,0,t);return n&&Mt(i,n),Tt(e,this,i)}))},zr.tail=function(e){var t=null==e?0:e.length;return t?ii(e,1,t):[]},zr.take=function(e,t,r){return e&&e.length?ii(e,0,(t=r||t===i?1:gs(t))<0?0:t):[]},zr.takeRight=function(e,t,r){var n=null==e?0:e.length;return n?ii(e,(t=n-(t=r||t===i?1:gs(t)))<0?0:t,n):[]},zr.takeRightWhile=function(e,t){return e&&e.length?mi(e,la(t,3),!1,!0):[]},zr.takeWhile=function(e,t){return e&&e.length?mi(e,la(t,3)):[]},zr.tap=function(e,t){return t(e),e},zr.throttle=function(e,t,r){var n=!0,i=!0;if("function"!=typeof e)throw new Ne(a);return ts(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),Io(e,t,{leading:n,maxWait:t,trailing:i})},zr.thru=mo,zr.toArray=fs,zr.toPairs=Bs,zr.toPairsIn=zs,zr.toPath=function(e){return Ho(e)?Rt(e,La):ls(e)?[e]:Ni(Ma(vs(e)))},zr.toPlainObject=ys,zr.transform=function(e,t,r){var n=Ho(e),i=n||$o(e)||us(e);if(t=la(t,4),null==r){var a=e&&e.constructor;r=i?n?new a:[]:ts(e)&&Qo(a)?Ur(We(e)):{}}return(i?At:kn)(e,(function(e,n,i){return t(r,e,n,i)})),r},zr.unary=function(e){return Co(e,1)},zr.union=to,zr.unionBy=ro,zr.unionWith=no,zr.uniq=function(e){return e&&e.length?di(e):[]},zr.uniqBy=function(e,t){return e&&e.length?di(e,la(t,2)):[]},zr.uniqWith=function(e,t){return t="function"==typeof t?t:i,e&&e.length?di(e,i,t):[]},zr.unset=function(e,t){return null==e||pi(e,t)},zr.unzip=io,zr.unzipWith=ao,zr.update=function(e,t,r){return null==e?e:fi(e,t,vi(r))},zr.updateWith=function(e,t,r,n){return n="function"==typeof n?n:i,null==e?e:fi(e,t,vi(r),n)},zr.values=Us,zr.valuesIn=function(e){return null==e?[]:er(e,Fs(e))},zr.without=oo,zr.words=Qs,zr.wrap=function(e,t){return jo(vi(t),e)},zr.xor=so,zr.xorBy=co,zr.xorWith=lo,zr.zip=uo,zr.zipObject=function(e,t){return hi(e||[],t||[],tn)},zr.zipObjectDeep=function(e,t){return hi(e||[],t||[],ei)},zr.zipWith=po,zr.entries=Bs,zr.entriesIn=zs,zr.extend=ks,zr.extendWith=xs,cc(zr,zr),zr.add=yc,zr.attempt=Zs,zr.camelCase=qs,zr.capitalize=Js,zr.ceil=vc,zr.clamp=function(e,t,r){return r===i&&(r=t,t=i),r!==i&&(r=(r=hs(r))==r?r:0),t!==i&&(t=(t=hs(t))==t?t:0),cn(hs(e),t,r)},zr.clone=function(e){return ln(e,4)},zr.cloneDeep=function(e){return ln(e,5)},zr.cloneDeepWith=function(e,t){return ln(e,5,t="function"==typeof t?t:i)},zr.cloneWith=function(e,t){return ln(e,4,t="function"==typeof t?t:i)},zr.conformsTo=function(e,t){return null==t||un(e,t,Is(t))},zr.deburr=Vs,zr.defaultTo=function(e,t){return null==e||e!=e?t:e},zr.divide=bc,zr.endsWith=function(e,t,r){e=vs(e),t=ui(t);var n=e.length,a=r=r===i?n:cn(gs(r),0,n);return(r-=t.length)>=0&&e.slice(r,a)==t},zr.eq=Uo,zr.escape=function(e){return(e=vs(e))&&X.test(e)?e.replace($,ar):e},zr.escapeRegExp=function(e){return(e=vs(e))&&ae.test(e)?e.replace(ie,"\\$&"):e},zr.every=function(e,t,r){var n=Ho(e)?Pt:gn;return r&&ba(e,t,r)&&(t=i),n(e,la(t,3))},zr.find=ho,zr.findIndex=Ja,zr.findKey=function(e,t){return Ut(e,la(t,3),kn)},zr.findLast=yo,zr.findLastIndex=Va,zr.findLastKey=function(e,t){return Ut(e,la(t,3),xn)},zr.floor=kc,zr.forEach=vo,zr.forEachRight=bo,zr.forIn=function(e,t){return null==e?e:vn(e,la(t,3),Fs)},zr.forInRight=function(e,t){return null==e?e:bn(e,la(t,3),Fs)},zr.forOwn=function(e,t){return e&&kn(e,la(t,3))},zr.forOwnRight=function(e,t){return e&&xn(e,la(t,3))},zr.get=Ts,zr.gt=qo,zr.gte=Jo,zr.has=function(e,t){return null!=e&&_a(e,t,Cn)},zr.hasIn=Cs,zr.head=Ka,zr.identity=ic,zr.includes=function(e,t,r,n){e=Wo(e)?e:Us(e),r=r&&!n?gs(r):0;var i=e.length;return r<0&&(r=yr(i+r,0)),cs(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&Jt(e,t,r)>-1},zr.indexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:gs(r);return i<0&&(i=yr(n+i,0)),Jt(e,t,i)},zr.inRange=function(e,t,r){return t=ms(t),r===i?(r=t,t=0):r=ms(r),function(e,t,r){return e>=vr(t,r)&&e<yr(t,r)}(e=hs(e),t,r)},zr.invoke=Ps,zr.isArguments=Vo,zr.isArray=Ho,zr.isArrayBuffer=Ko,zr.isArrayLike=Wo,zr.isArrayLikeObject=Go,zr.isBoolean=function(e){return!0===e||!1===e||rs(e)&&wn(e)==b},zr.isBuffer=$o,zr.isDate=Yo,zr.isElement=function(e){return rs(e)&&1===e.nodeType&&!as(e)},zr.isEmpty=function(e){if(null==e)return!0;if(Wo(e)&&(Ho(e)||"string"==typeof e||"function"==typeof e.splice||$o(e)||us(e)||Vo(e)))return!e.length;var t=ga(e);if(t==D||t==N)return!e.size;if(Sa(e))return!Ln(e).length;for(var r in e)if(Me.call(e,r))return!1;return!0},zr.isEqual=function(e,t){return Fn(e,t)},zr.isEqualWith=function(e,t,r){var n=(r="function"==typeof r?r:i)?r(e,t):i;return n===i?Fn(e,t,i,r):!!n},zr.isError=Xo,zr.isFinite=function(e){return"number"==typeof e&&bt(e)},zr.isFunction=Qo,zr.isInteger=Zo,zr.isLength=es,zr.isMap=ns,zr.isMatch=function(e,t){return e===t||On(e,t,da(t))},zr.isMatchWith=function(e,t,r){return r="function"==typeof r?r:i,On(e,t,da(t),r)},zr.isNaN=function(e){return is(e)&&e!=+e},zr.isNative=function(e){if(Ea(e))throw new Se("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Rn(e)},zr.isNil=function(e){return null==e},zr.isNull=function(e){return null===e},zr.isNumber=is,zr.isObject=ts,zr.isObjectLike=rs,zr.isPlainObject=as,zr.isRegExp=os,zr.isSafeInteger=function(e){return Zo(e)&&e>=-9007199254740991&&e<=m},zr.isSet=ss,zr.isString=cs,zr.isSymbol=ls,zr.isTypedArray=us,zr.isUndefined=function(e){return e===i},zr.isWeakMap=function(e){return rs(e)&&ga(e)==F},zr.isWeakSet=function(e){return rs(e)&&"[object WeakSet]"==wn(e)},zr.join=function(e,t){return null==e?"":zt.call(e,t)},zr.kebabCase=Hs,zr.last=Ya,zr.lastIndexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var a=n;return r!==i&&(a=(a=gs(r))<0?yr(n+a,0):vr(a,n-1)),t==t?function(e,t,r){for(var n=r+1;n--;)if(e[n]===t)return n;return n}(e,t,a):qt(e,Ht,a,!0)},zr.lowerCase=Ks,zr.lowerFirst=Ws,zr.lt=ds,zr.lte=ps,zr.max=function(e){return e&&e.length?_n(e,ic,Tn):i},zr.maxBy=function(e,t){return e&&e.length?_n(e,la(t,2),Tn):i},zr.mean=function(e){return Kt(e,ic)},zr.meanBy=function(e,t){return Kt(e,la(t,2))},zr.min=function(e){return e&&e.length?_n(e,ic,Bn):i},zr.minBy=function(e,t){return e&&e.length?_n(e,la(t,2),Bn):i},zr.stubArray=_c,zr.stubFalse=hc,zr.stubObject=function(){return{}},zr.stubString=function(){return""},zr.stubTrue=function(){return!0},zr.multiply=Ec,zr.nth=function(e,t){return e&&e.length?Vn(e,gs(t)):i},zr.noConflict=function(){return gt._===this&&(gt._=Ue),this},zr.noop=lc,zr.now=To,zr.pad=function(e,t,r){e=vs(e);var n=(t=gs(t))?fr(e):0;if(!t||n>=t)return e;var i=(t-n)/2;return Hi(_t(i),r)+e+Hi(mt(i),r)},zr.padEnd=function(e,t,r){e=vs(e);var n=(t=gs(t))?fr(e):0;return t&&n<t?e+Hi(t-n,r):e},zr.padStart=function(e,t,r){e=vs(e);var n=(t=gs(t))?fr(e):0;return t&&n<t?Hi(t-n,r)+e:e},zr.parseInt=function(e,t,r){return r||null==t?t=0:t&&(t=+t),kr(vs(e).replace(oe,""),t||0)},zr.random=function(e,t,r){if(r&&"boolean"!=typeof r&&ba(e,t,r)&&(t=r=i),r===i&&("boolean"==typeof t?(r=t,t=i):"boolean"==typeof e&&(r=e,e=i)),e===i&&t===i?(e=0,t=1):(e=ms(e),t===i?(t=e,e=0):t=ms(t)),e>t){var n=e;e=t,t=n}if(r||e%1||t%1){var a=xr();return vr(e+a*(t-e+dt("1e-"+((a+"").length-1))),t)}return $n(e,t)},zr.reduce=function(e,t,r){var n=Ho(e)?Lt:$t,i=arguments.length<3;return n(e,la(t,4),r,i,fn)},zr.reduceRight=function(e,t,r){var n=Ho(e)?jt:$t,i=arguments.length<3;return n(e,la(t,4),r,i,mn)},zr.repeat=function(e,t,r){return t=(r?ba(e,t,r):t===i)?1:gs(t),Yn(vs(e),t)},zr.replace=function(){var e=arguments,t=vs(e[0]);return e.length<3?t:t.replace(e[1],e[2])},zr.result=function(e,t,r){var n=-1,a=(t=bi(t,e)).length;for(a||(a=1,e=i);++n<a;){var o=null==e?i:e[La(t[n])];o===i&&(n=a,o=r),e=Qo(o)?o.call(e):o}return e},zr.round=Sc,zr.runInContext=e,zr.sample=function(e){return(Ho(e)?Xr:Qn)(e)},zr.size=function(e){if(null==e)return 0;if(Wo(e))return cs(e)?fr(e):e.length;var t=ga(e);return t==D||t==N?e.size:Ln(e).length},zr.snakeCase=Gs,zr.some=function(e,t,r){var n=Ho(e)?Bt:ai;return r&&ba(e,t,r)&&(t=i),n(e,la(t,3))},zr.sortedIndex=function(e,t){return oi(e,t)},zr.sortedIndexBy=function(e,t,r){return si(e,t,la(r,2))},zr.sortedIndexOf=function(e,t){var r=null==e?0:e.length;if(r){var n=oi(e,t);if(n<r&&Uo(e[n],t))return n}return-1},zr.sortedLastIndex=function(e,t){return oi(e,t,!0)},zr.sortedLastIndexBy=function(e,t,r){return si(e,t,la(r,2),!0)},zr.sortedLastIndexOf=function(e,t){if(null==e?0:e.length){var r=oi(e,t,!0)-1;if(Uo(e[r],t))return r}return-1},zr.startCase=$s,zr.startsWith=function(e,t,r){return e=vs(e),r=null==r?0:cn(gs(r),0,e.length),t=ui(t),e.slice(r,r+t.length)==t},zr.subtract=Dc,zr.sum=function(e){return e&&e.length?Yt(e,ic):0},zr.sumBy=function(e,t){return e&&e.length?Yt(e,la(t,2)):0},zr.template=function(e,t,r){var n=zr.templateSettings;r&&ba(e,t,r)&&(t=i),e=vs(e),t=xs({},t,n,Zi);var a,o,s=xs({},t.imports,n.imports,Zi),c=Is(s),l=er(s,c),u=0,d=t.interpolate||xe,p="__p += '",f=Ce((t.escape||xe).source+"|"+d.source+"|"+(d===ee?me:xe).source+"|"+(t.evaluate||xe).source+"|$","g"),m="//# sourceURL="+(Me.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++st+"]")+"\n";e.replace(f,(function(t,r,n,i,s,c){return n||(n=i),p+=e.slice(u,c).replace(Ee,or),r&&(a=!0,p+="' +\n__e("+r+") +\n'"),s&&(o=!0,p+="';\n"+s+";\n__p += '"),n&&(p+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),u=c+t.length,t})),p+="';\n";var g=Me.call(t,"variable")&&t.variable;if(g){if(pe.test(g))throw new Se("Invalid `variable` option passed into `_.template`")}else p="with (obj) {\n"+p+"\n}\n";p=(o?p.replace(H,""):p).replace(K,"$1").replace(W,"$1;"),p="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+p+"return __p\n}";var _=Zs((function(){return De(c,m+"return "+p).apply(i,l)}));if(_.source=p,Xo(_))throw _;return _},zr.times=function(e,t){if((e=gs(e))<1||e>m)return[];var r=_,n=vr(e,_);t=la(t),e-=_;for(var i=Xt(n,t);++r<e;)t(r);return i},zr.toFinite=ms,zr.toInteger=gs,zr.toLength=_s,zr.toLower=function(e){return vs(e).toLowerCase()},zr.toNumber=hs,zr.toSafeInteger=function(e){return e?cn(gs(e),-9007199254740991,m):0===e?e:0},zr.toString=vs,zr.toUpper=function(e){return vs(e).toUpperCase()},zr.trim=function(e,t,r){if((e=vs(e))&&(r||t===i))return Qt(e);if(!e||!(t=ui(t)))return e;var n=mr(e),a=mr(t);return xi(n,rr(n,a),nr(n,a)+1).join("")},zr.trimEnd=function(e,t,r){if((e=vs(e))&&(r||t===i))return e.slice(0,gr(e)+1);if(!e||!(t=ui(t)))return e;var n=mr(e);return xi(n,0,nr(n,mr(t))+1).join("")},zr.trimStart=function(e,t,r){if((e=vs(e))&&(r||t===i))return e.replace(oe,"");if(!e||!(t=ui(t)))return e;var n=mr(e);return xi(n,rr(n,mr(t))).join("")},zr.truncate=function(e,t){var r=30,n="...";if(ts(t)){var a="separator"in t?t.separator:a;r="length"in t?gs(t.length):r,n="omission"in t?ui(t.omission):n}var o=(e=vs(e)).length;if(sr(e)){var s=mr(e);o=s.length}if(r>=o)return e;var c=r-fr(n);if(c<1)return n;var l=s?xi(s,0,c).join(""):e.slice(0,c);if(a===i)return l+n;if(s&&(c+=l.length-c),os(a)){if(e.slice(c).search(a)){var u,d=l;for(a.global||(a=Ce(a.source,vs(ge.exec(a))+"g")),a.lastIndex=0;u=a.exec(d);)var p=u.index;l=l.slice(0,p===i?c:p)}}else if(e.indexOf(ui(a),c)!=c){var f=l.lastIndexOf(a);f>-1&&(l=l.slice(0,f))}return l+n},zr.unescape=function(e){return(e=vs(e))&&Y.test(e)?e.replace(G,_r):e},zr.uniqueId=function(e){var t=++Le;return vs(e)+t},zr.upperCase=Ys,zr.upperFirst=Xs,zr.each=vo,zr.eachRight=bo,zr.first=Ka,cc(zr,(xc={},kn(zr,(function(e,t){Me.call(zr.prototype,t)||(xc[t]=e)})),xc),{chain:!1}),zr.VERSION="4.17.21",At(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){zr[e].placeholder=zr})),At(["drop","take"],(function(e,t){Vr.prototype[e]=function(r){r=r===i?1:yr(gs(r),0);var n=this.__filtered__&&!t?new Vr(this):this.clone();return n.__filtered__?n.__takeCount__=vr(r,n.__takeCount__):n.__views__.push({size:vr(r,_),type:e+(n.__dir__<0?"Right":"")}),n},Vr.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),At(["filter","map","takeWhile"],(function(e,t){var r=t+1,n=1==r||3==r;Vr.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:la(e,3),type:r}),t.__filtered__=t.__filtered__||n,t}})),At(["head","last"],(function(e,t){var r="take"+(t?"Right":"");Vr.prototype[e]=function(){return this[r](1).value()[0]}})),At(["initial","tail"],(function(e,t){var r="drop"+(t?"":"Right");Vr.prototype[e]=function(){return this.__filtered__?new Vr(this):this[r](1)}})),Vr.prototype.compact=function(){return this.filter(ic)},Vr.prototype.find=function(e){return this.filter(e).head()},Vr.prototype.findLast=function(e){return this.reverse().find(e)},Vr.prototype.invokeMap=Xn((function(e,t){return"function"==typeof e?new Vr(this):this.map((function(r){return Pn(r,e,t)}))})),Vr.prototype.reject=function(e){return this.filter(Mo(la(e)))},Vr.prototype.slice=function(e,t){e=gs(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Vr(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==i&&(r=(t=gs(t))<0?r.dropRight(-t):r.take(t-e)),r)},Vr.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Vr.prototype.toArray=function(){return this.take(_)},kn(Vr.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),n=/^(?:head|last)$/.test(t),a=zr[n?"take"+("last"==t?"Right":""):t],o=n||/^find/.test(t);a&&(zr.prototype[t]=function(){var t=this.__wrapped__,s=n?[1]:arguments,c=t instanceof Vr,l=s[0],u=c||Ho(t),d=function(e){var t=a.apply(zr,Mt([e],s));return n&&p?t[0]:t};u&&r&&"function"==typeof l&&1!=l.length&&(c=u=!1);var p=this.__chain__,f=!!this.__actions__.length,m=o&&!p,g=c&&!f;if(!o&&u){t=g?t:new Vr(this);var _=e.apply(t,s);return _.__actions__.push({func:mo,args:[d],thisArg:i}),new Jr(_,p)}return m&&g?e.apply(this,s):(_=this.thru(d),m?n?_.value()[0]:_.value():_)})})),At(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Pe[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);zr.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var i=this.value();return t.apply(Ho(i)?i:[],e)}return this[r]((function(r){return t.apply(Ho(r)?r:[],e)}))}})),kn(Vr.prototype,(function(e,t){var r=zr[t];if(r){var n=r.name+"";Me.call(Pr,n)||(Pr[n]=[]),Pr[n].push({name:t,func:r})}})),Pr[Ui(i,2).name]=[{name:"wrapper",func:i}],Vr.prototype.clone=function(){var e=new Vr(this.__wrapped__);return e.__actions__=Ni(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ni(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ni(this.__views__),e},Vr.prototype.reverse=function(){if(this.__filtered__){var e=new Vr(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Vr.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,r=Ho(e),n=t<0,i=r?e.length:0,a=function(e,t,r){var n=-1,i=r.length;for(;++n<i;){var a=r[n],o=a.size;switch(a.type){case"drop":e+=o;break;case"dropRight":t-=o;break;case"take":t=vr(t,e+o);break;case"takeRight":e=yr(e,t-o)}}return{start:e,end:t}}(0,i,this.__views__),o=a.start,s=a.end,c=s-o,l=n?s:o-1,u=this.__iteratees__,d=u.length,p=0,f=vr(c,this.__takeCount__);if(!r||!n&&i==c&&f==c)return gi(e,this.__actions__);var m=[];e:for(;c--&&p<f;){for(var g=-1,_=e[l+=t];++g<d;){var h=u[g],y=h.iteratee,v=h.type,b=y(_);if(2==v)_=b;else if(!b){if(1==v)continue e;break e}}m[p++]=_}return m},zr.prototype.at=go,zr.prototype.chain=function(){return fo(this)},zr.prototype.commit=function(){return new Jr(this.value(),this.__chain__)},zr.prototype.next=function(){this.__values__===i&&(this.__values__=fs(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?i:this.__values__[this.__index__++]}},zr.prototype.plant=function(e){for(var t,r=this;r instanceof qr;){var n=Ba(r);n.__index__=0,n.__values__=i,t?a.__wrapped__=n:t=n;var a=n;r=r.__wrapped__}return a.__wrapped__=e,t},zr.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Vr){var t=e;return this.__actions__.length&&(t=new Vr(this)),(t=t.reverse()).__actions__.push({func:mo,args:[eo],thisArg:i}),new Jr(t,this.__chain__)}return this.thru(eo)},zr.prototype.toJSON=zr.prototype.valueOf=zr.prototype.value=function(){return gi(this.__wrapped__,this.__actions__)},zr.prototype.first=zr.prototype.head,Qe&&(zr.prototype[Qe]=function(){return this}),zr}();gt._=hr,(n=function(){return hr}.call(t,r,t,e))===i||(e.exports=n)}.call(this)},94027:(e,t,r)=>{e.exports=p,p.Minimatch=f;var n=function(){try{return r(16928)}catch(e){}}()||{sep:"/"};p.sep=n.sep;var i=p.GLOBSTAR=f.GLOBSTAR={},a=r(68928),o={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},s="[^/]",c=s+"*?",l="().*{}+?[]^$\\!".split("").reduce((function(e,t){return e[t]=!0,e}),{});var u=/\/+/;function d(e,t){t=t||{};var r={};return Object.keys(e).forEach((function(t){r[t]=e[t]})),Object.keys(t).forEach((function(e){r[e]=t[e]})),r}function p(e,t,r){return g(t),r||(r={}),!(!r.nocomment&&"#"===t.charAt(0))&&new f(t,r).match(e)}function f(e,t){if(!(this instanceof f))return new f(e,t);g(e),t||(t={}),e=e.trim(),t.allowWindowsEscape||"/"===n.sep||(e=e.split(n.sep).join("/")),this.options=t,this.set=[],this.pattern=e,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.make()}function m(e,t){return t||(t=this instanceof f?this.options:{}),e=void 0===e?this.pattern:e,g(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:a(e)}p.filter=function(e,t){return t=t||{},function(r,n,i){return p(r,e,t)}},p.defaults=function(e){if(!e||"object"!=typeof e||!Object.keys(e).length)return p;var t=p,r=function(r,n,i){return t(r,n,d(e,i))};return(r.Minimatch=function(r,n){return new t.Minimatch(r,d(e,n))}).defaults=function(r){return t.defaults(d(e,r)).Minimatch},r.filter=function(r,n){return t.filter(r,d(e,n))},r.defaults=function(r){return t.defaults(d(e,r))},r.makeRe=function(r,n){return t.makeRe(r,d(e,n))},r.braceExpand=function(r,n){return t.braceExpand(r,d(e,n))},r.match=function(r,n,i){return t.match(r,n,d(e,i))},r},f.defaults=function(e){return p.defaults(e).Minimatch},f.prototype.debug=function(){},f.prototype.make=function(){var e=this.pattern,t=this.options;if(!t.nocomment&&"#"===e.charAt(0))return void(this.comment=!0);if(!e)return void(this.empty=!0);this.parseNegate();var r=this.globSet=this.braceExpand();t.debug&&(this.debug=function(){console.error.apply(console,arguments)});this.debug(this.pattern,r),r=this.globParts=r.map((function(e){return e.split(u)})),this.debug(this.pattern,r),r=r.map((function(e,t,r){return e.map(this.parse,this)}),this),this.debug(this.pattern,r),r=r.filter((function(e){return-1===e.indexOf(!1)})),this.debug(this.pattern,r),this.set=r},f.prototype.parseNegate=function(){var e=this.pattern,t=!1,r=this.options,n=0;if(r.nonegate)return;for(var i=0,a=e.length;i<a&&"!"===e.charAt(i);i++)t=!t,n++;n&&(this.pattern=e.substr(n));this.negate=t},p.braceExpand=function(e,t){return m(e,t)},f.prototype.braceExpand=m;var g=function(e){if("string"!=typeof e)throw new TypeError("invalid pattern");if(e.length>65536)throw new TypeError("pattern is too long")};f.prototype.parse=function(e,t){g(e);var r=this.options;if("**"===e){if(!r.noglobstar)return i;e="*"}if(""===e)return"";var n,a="",u=!!r.nocase,d=!1,p=[],f=[],m=!1,h=-1,y=-1,v="."===e.charAt(0)?"":r.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",b=this;function k(){if(n){switch(n){case"*":a+=c,u=!0;break;case"?":a+=s,u=!0;break;default:a+="\\"+n}b.debug("clearStateChar %j %j",n,a),n=!1}}for(var x,E=0,S=e.length;E<S&&(x=e.charAt(E));E++)if(this.debug("%s\t%s %s %j",e,E,a,x),d&&l[x])a+="\\"+x,d=!1;else switch(x){case"/":return!1;case"\\":k(),d=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s\t%s %s %j <-- stateChar",e,E,a,x),m){this.debug(" in class"),"!"===x&&E===y+1&&(x="^"),a+=x;continue}b.debug("call clearStateChar %j",n),k(),n=x,r.noext&&k();continue;case"(":if(m){a+="(";continue}if(!n){a+="\\(";continue}p.push({type:n,start:E-1,reStart:a.length,open:o[n].open,close:o[n].close}),a+="!"===n?"(?:(?!(?:":"(?:",this.debug("plType %j %j",n,a),n=!1;continue;case")":if(m||!p.length){a+="\\)";continue}k(),u=!0;var D=p.pop();a+=D.close,"!"===D.type&&f.push(D),D.reEnd=a.length;continue;case"|":if(m||!p.length||d){a+="\\|",d=!1;continue}k(),a+="|";continue;case"[":if(k(),m){a+="\\"+x;continue}m=!0,y=E,h=a.length,a+=x;continue;case"]":if(E===y+1||!m){a+="\\"+x,d=!1;continue}var w=e.substring(y+1,E);try{RegExp("["+w+"]")}catch(e){var T=this.parse(w,_);a=a.substr(0,h)+"\\["+T[0]+"\\]",u=u||T[1],m=!1;continue}u=!0,m=!1,a+=x;continue;default:k(),d?d=!1:!l[x]||"^"===x&&m||(a+="\\"),a+=x}m&&(w=e.substr(y+1),T=this.parse(w,_),a=a.substr(0,h)+"\\["+T[0],u=u||T[1]);for(D=p.pop();D;D=p.pop()){var C=a.slice(D.reStart+D.open.length);this.debug("setting tail",a,D),C=C.replace(/((?:\\{2}){0,64})(\\?)\|/g,(function(e,t,r){return r||(r="\\"),t+t+r+"|"})),this.debug("tail=%j\n %s",C,C,D,a);var A="*"===D.type?c:"?"===D.type?s:"\\"+D.type;u=!0,a=a.slice(0,D.reStart)+A+"\\("+C}k(),d&&(a+="\\\\");var N=!1;switch(a.charAt(0)){case"[":case".":case"(":N=!0}for(var P=f.length-1;P>-1;P--){var I=f[P],F=a.slice(0,I.reStart),O=a.slice(I.reStart,I.reEnd-8),R=a.slice(I.reEnd-8,I.reEnd),M=a.slice(I.reEnd);R+=M;var L=F.split("(").length-1,j=M;for(E=0;E<L;E++)j=j.replace(/\)[+*?]?/,"");var B="";""===(M=j)&&t!==_&&(B="$"),a=F+O+M+B+R}""!==a&&u&&(a="(?=.)"+a);N&&(a=v+a);if(t===_)return[a,u];if(!u)return function(e){return e.replace(/\\(.)/g,"$1")}(e);var z=r.nocase?"i":"";try{var U=new RegExp("^"+a+"$",z)}catch(e){return new RegExp("$.")}return U._glob=e,U._src=a,U};var _={};p.makeRe=function(e,t){return new f(e,t||{}).makeRe()},f.prototype.makeRe=function(){if(this.regexp||!1===this.regexp)return this.regexp;var e=this.set;if(!e.length)return this.regexp=!1,this.regexp;var t=this.options,r=t.noglobstar?c:t.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",n=t.nocase?"i":"",a=e.map((function(e){return e.map((function(e){return e===i?r:"string"==typeof e?function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}(e):e._src})).join("\\/")})).join("|");a="^(?:"+a+")$",this.negate&&(a="^(?!"+a+").*$");try{this.regexp=new RegExp(a,n)}catch(e){this.regexp=!1}return this.regexp},p.match=function(e,t,r){var n=new f(t,r=r||{});return e=e.filter((function(e){return n.match(e)})),n.options.nonull&&!e.length&&e.push(t),e},f.prototype.match=function(e,t){if(void 0===t&&(t=this.partial),this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return""===e;if("/"===e&&t)return!0;var r=this.options;"/"!==n.sep&&(e=e.split(n.sep).join("/")),e=e.split(u),this.debug(this.pattern,"split",e);var i,a,o=this.set;for(this.debug(this.pattern,"set",o),a=e.length-1;a>=0&&!(i=e[a]);a--);for(a=0;a<o.length;a++){var s=o[a],c=e;if(r.matchBase&&1===s.length&&(c=[i]),this.matchOne(c,s,t))return!!r.flipNegate||!this.negate}return!r.flipNegate&&this.negate},f.prototype.matchOne=function(e,t,r){var n=this.options;this.debug("matchOne",{this:this,file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var a=0,o=0,s=e.length,c=t.length;a<s&&o<c;a++,o++){this.debug("matchOne loop");var l,u=t[o],d=e[a];if(this.debug(t,u,d),!1===u)return!1;if(u===i){this.debug("GLOBSTAR",[t,u,d]);var p=a,f=o+1;if(f===c){for(this.debug("** at the end");a<s;a++)if("."===e[a]||".."===e[a]||!n.dot&&"."===e[a].charAt(0))return!1;return!0}for(;p<s;){var m=e[p];if(this.debug("\nglobstar while",e,p,t,f,m),this.matchOne(e.slice(p),t.slice(f),r))return this.debug("globstar found match!",p,s,m),!0;if("."===m||".."===m||!n.dot&&"."===m.charAt(0)){this.debug("dot detected!",e,p,t,f);break}this.debug("globstar swallow a segment, and continue"),p++}return!(!r||(this.debug("\n>>> no match, partial?",e,p,t,f),p!==s))}if("string"==typeof u?(l=d===u,this.debug("string match",u,d,l)):(l=d.match(u),this.debug("pattern match",u,d,l)),!l)return!1}if(a===s&&o===c)return!0;if(a===s)return r;if(o===c)return a===s-1&&""===e[a];throw new Error("wtf?")}},43480:(e,t,r)=>{var n=r(16928),i=r(79896),a=parseInt("0777",8);function o(e,t,r,s){"function"==typeof t?(r=t,t={}):t&&"object"==typeof t||(t={mode:t});var c=t.mode,l=t.fs||i;void 0===c&&(c=a),s||(s=null);var u=r||function(){};e=n.resolve(e),l.mkdir(e,c,(function(r){if(!r)return u(null,s=s||e);if("ENOENT"===r.code){if(n.dirname(e)===e)return u(r);o(n.dirname(e),t,(function(r,n){r?u(r,n):o(e,t,u,n)}))}else l.stat(e,(function(e,t){e||!t.isDirectory()?u(r,s):u(null,s)}))}))}e.exports=o.mkdirp=o.mkdirP=o,o.sync=function e(t,r,o){r&&"object"==typeof r||(r={mode:r});var s=r.mode,c=r.fs||i;void 0===s&&(s=a),o||(o=null),t=n.resolve(t);try{c.mkdirSync(t,s),o=o||t}catch(i){if("ENOENT"===i.code)o=e(n.dirname(t),r,o),e(t,r,o);else{var l;try{l=c.statSync(t)}catch(e){throw i}if(!l.isDirectory())throw i}}return o}},14100:e=>{ -/*! - * normalize-path <https://github.com/jonschlinkert/normalize-path> - * - * Copyright (c) 2014-2018, Jon Schlinkert. - * Released under the MIT License. - */ -e.exports=function(e,t){if("string"!=typeof e)throw new TypeError("expected path to be a string");if("\\"===e||"/"===e)return"/";var r=e.length;if(r<=1)return e;var n="";if(r>4&&"\\"===e[3]){var i=e[2];"?"!==i&&"."!==i||"\\\\"!==e.slice(0,2)||(e=e.slice(2),n="//")}var a=e.split(/[/\\]+/);return!1!==t&&""===a[a.length-1]&&a.pop(),n+a.join("/")}},83519:(e,t,r)=>{var n=r(86587);function i(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function a(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}e.exports=n(i),e.exports.strict=n(a),i.proto=i((function(){Object.defineProperty(Function.prototype,"once",{value:function(){return i(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return a(this)},configurable:!0})}))},51668:(e,t,r)=>{"use strict";var n={};(0,r(9805).assign)(n,r(63303),r(87083),r(19681)),e.exports=n},63303:(e,t,r)=>{"use strict";var n=r(58411),i=r(9805),a=r(41996),o=r(54674),s=r(44442),c=Object.prototype.toString,l=0,u=-1,d=0,p=8;function f(e){if(!(this instanceof f))return new f(e);this.options=i.assign({level:u,method:p,chunkSize:16384,windowBits:15,memLevel:8,strategy:d,to:""},e||{});var t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new s,this.strm.avail_out=0;var r=n.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==l)throw new Error(o[r]);if(t.header&&n.deflateSetHeader(this.strm,t.header),t.dictionary){var m;if(m="string"==typeof t.dictionary?a.string2buf(t.dictionary):"[object ArrayBuffer]"===c.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,(r=n.deflateSetDictionary(this.strm,m))!==l)throw new Error(o[r]);this._dict_set=!0}}function m(e,t){var r=new f(t);if(r.push(e,!0),r.err)throw r.msg||o[r.err];return r.result}f.prototype.push=function(e,t){var r,o,s=this.strm,u=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,"string"==typeof e?s.input=a.string2buf(e):"[object ArrayBuffer]"===c.call(e)?s.input=new Uint8Array(e):s.input=e,s.next_in=0,s.avail_in=s.input.length;do{if(0===s.avail_out&&(s.output=new i.Buf8(u),s.next_out=0,s.avail_out=u),1!==(r=n.deflate(s,o))&&r!==l)return this.onEnd(r),this.ended=!0,!1;0!==s.avail_out&&(0!==s.avail_in||4!==o&&2!==o)||("string"===this.options.to?this.onData(a.buf2binstring(i.shrinkBuf(s.output,s.next_out))):this.onData(i.shrinkBuf(s.output,s.next_out)))}while((s.avail_in>0||0===s.avail_out)&&1!==r);return 4===o?(r=n.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===l):2!==o||(this.onEnd(l),s.avail_out=0,!0)},f.prototype.onData=function(e){this.chunks.push(e)},f.prototype.onEnd=function(e){e===l&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Deflate=f,t.deflate=m,t.deflateRaw=function(e,t){return(t=t||{}).raw=!0,m(e,t)},t.gzip=function(e,t){return(t=t||{}).gzip=!0,m(e,t)}},87083:(e,t,r)=>{"use strict";var n=r(71447),i=r(9805),a=r(41996),o=r(19681),s=r(54674),c=r(44442),l=r(37414),u=Object.prototype.toString;function d(e){if(!(this instanceof d))return new d(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(15&t.windowBits||(t.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new c,this.strm.avail_out=0;var r=n.inflateInit2(this.strm,t.windowBits);if(r!==o.Z_OK)throw new Error(s[r]);if(this.header=new l,n.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=a.string2buf(t.dictionary):"[object ArrayBuffer]"===u.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=n.inflateSetDictionary(this.strm,t.dictionary))!==o.Z_OK))throw new Error(s[r])}function p(e,t){var r=new d(t);if(r.push(e,!0),r.err)throw r.msg||s[r.err];return r.result}d.prototype.push=function(e,t){var r,s,c,l,d,p=this.strm,f=this.options.chunkSize,m=this.options.dictionary,g=!1;if(this.ended)return!1;s=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,"string"==typeof e?p.input=a.binstring2buf(e):"[object ArrayBuffer]"===u.call(e)?p.input=new Uint8Array(e):p.input=e,p.next_in=0,p.avail_in=p.input.length;do{if(0===p.avail_out&&(p.output=new i.Buf8(f),p.next_out=0,p.avail_out=f),(r=n.inflate(p,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&m&&(r=n.inflateSetDictionary(this.strm,m)),r===o.Z_BUF_ERROR&&!0===g&&(r=o.Z_OK,g=!1),r!==o.Z_STREAM_END&&r!==o.Z_OK)return this.onEnd(r),this.ended=!0,!1;p.next_out&&(0!==p.avail_out&&r!==o.Z_STREAM_END&&(0!==p.avail_in||s!==o.Z_FINISH&&s!==o.Z_SYNC_FLUSH)||("string"===this.options.to?(c=a.utf8border(p.output,p.next_out),l=p.next_out-c,d=a.buf2string(p.output,c),p.next_out=l,p.avail_out=f-l,l&&i.arraySet(p.output,p.output,c,l,0),this.onData(d)):this.onData(i.shrinkBuf(p.output,p.next_out)))),0===p.avail_in&&0===p.avail_out&&(g=!0)}while((p.avail_in>0||0===p.avail_out)&&r!==o.Z_STREAM_END);return r===o.Z_STREAM_END&&(s=o.Z_FINISH),s===o.Z_FINISH?(r=n.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===o.Z_OK):s!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),p.avail_out=0,!0)},d.prototype.onData=function(e){this.chunks.push(e)},d.prototype.onEnd=function(e){e===o.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Inflate=d,t.inflate=p,t.inflateRaw=function(e,t){return(t=t||{}).raw=!0,p(e,t)},t.ungzip=p},9805:(e,t)=>{"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function n(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var i in r)n(r,i)&&(e[i]=r[i])}}return e},t.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var i={arraySet:function(e,t,r,n,i){if(t.subarray&&e.subarray)e.set(t.subarray(r,r+n),i);else for(var a=0;a<n;a++)e[i+a]=t[r+a]},flattenChunks:function(e){var t,r,n,i,a,o;for(n=0,t=0,r=e.length;t<r;t++)n+=e[t].length;for(o=new Uint8Array(n),i=0,t=0,r=e.length;t<r;t++)a=e[t],o.set(a,i),i+=a.length;return o}},a={arraySet:function(e,t,r,n,i){for(var a=0;a<n;a++)e[i+a]=t[r+a]},flattenChunks:function(e){return[].concat.apply([],e)}};t.setTyped=function(e){e?(t.Buf8=Uint8Array,t.Buf16=Uint16Array,t.Buf32=Int32Array,t.assign(t,i)):(t.Buf8=Array,t.Buf16=Array,t.Buf32=Array,t.assign(t,a))},t.setTyped(r)},41996:(e,t,r)=>{"use strict";var n=r(9805),i=!0,a=!0;try{String.fromCharCode.apply(null,[0])}catch(e){i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){a=!1}for(var o=new n.Buf8(256),s=0;s<256;s++)o[s]=s>=252?6:s>=248?5:s>=240?4:s>=224?3:s>=192?2:1;function c(e,t){if(t<65534&&(e.subarray&&a||!e.subarray&&i))return String.fromCharCode.apply(null,n.shrinkBuf(e,t));for(var r="",o=0;o<t;o++)r+=String.fromCharCode(e[o]);return r}o[254]=o[254]=1,t.string2buf=function(e){var t,r,i,a,o,s=e.length,c=0;for(a=0;a<s;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(i=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(i-56320),a++),c+=r<128?1:r<2048?2:r<65536?3:4;for(t=new n.Buf8(c),o=0,a=0;o<c;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(i=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(i-56320),a++),r<128?t[o++]=r:r<2048?(t[o++]=192|r>>>6,t[o++]=128|63&r):r<65536?(t[o++]=224|r>>>12,t[o++]=128|r>>>6&63,t[o++]=128|63&r):(t[o++]=240|r>>>18,t[o++]=128|r>>>12&63,t[o++]=128|r>>>6&63,t[o++]=128|63&r);return t},t.buf2binstring=function(e){return c(e,e.length)},t.binstring2buf=function(e){for(var t=new n.Buf8(e.length),r=0,i=t.length;r<i;r++)t[r]=e.charCodeAt(r);return t},t.buf2string=function(e,t){var r,n,i,a,s=t||e.length,l=new Array(2*s);for(n=0,r=0;r<s;)if((i=e[r++])<128)l[n++]=i;else if((a=o[i])>4)l[n++]=65533,r+=a-1;else{for(i&=2===a?31:3===a?15:7;a>1&&r<s;)i=i<<6|63&e[r++],a--;a>1?l[n++]=65533:i<65536?l[n++]=i:(i-=65536,l[n++]=55296|i>>10&1023,l[n++]=56320|1023&i)}return c(l,n)},t.utf8border=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;r>=0&&128==(192&e[r]);)r--;return r<0||0===r?t:r+o[e[r]]>t?r:t}},53269:e=>{"use strict";e.exports=function(e,t,r,n){for(var i=65535&e,a=e>>>16&65535,o=0;0!==r;){r-=o=r>2e3?2e3:r;do{a=a+(i=i+t[n++]|0)|0}while(--o);i%=65521,a%=65521}return i|a<<16}},19681:e=>{"use strict";e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},14823:e=>{"use strict";var t=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();e.exports=function(e,r,n,i){var a=t,o=i+n;e^=-1;for(var s=i;s<o;s++)e=e>>>8^a[255&(e^r[s])];return~e}},58411:(e,t,r)=>{"use strict";var n,i=r(9805),a=r(23665),o=r(53269),s=r(14823),c=r(54674),l=0,u=4,d=0,p=-2,f=-1,m=4,g=2,_=8,h=9,y=286,v=30,b=19,k=2*y+1,x=15,E=3,S=258,D=S+E+1,w=42,T=103,C=113,A=666,N=1,P=2,I=3,F=4;function O(e,t){return e.msg=c[t],t}function R(e){return(e<<1)-(e>4?9:0)}function M(e){for(var t=e.length;--t>=0;)e[t]=0}function L(e){var t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(i.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function j(e,t){a._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,L(e.strm)}function B(e,t){e.pending_buf[e.pending++]=t}function z(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function U(e,t){var r,n,i=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-D?e.strstart-(e.w_size-D):0,l=e.window,u=e.w_mask,d=e.prev,p=e.strstart+S,f=l[a+o-1],m=l[a+o];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(l[(r=t)+o]===m&&l[r+o-1]===f&&l[r]===l[a]&&l[++r]===l[a+1]){a+=2,r++;do{}while(l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&a<p);if(n=S-(p-a),a=p-S,n>o){if(e.match_start=t,o=n,n>=s)break;f=l[a+o-1],m=l[a+o]}}}while((t=d[t&u])>c&&0!=--i);return o<=e.lookahead?o:e.lookahead}function q(e){var t,r,n,a,c,l,u,d,p,f,m=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-D)){i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=r=e.hash_size;do{n=e.head[--t],e.head[t]=n>=m?n-m:0}while(--r);t=r=m;do{n=e.prev[--t],e.prev[t]=n>=m?n-m:0}while(--r);a+=m}if(0===e.strm.avail_in)break;if(l=e.strm,u=e.window,d=e.strstart+e.lookahead,p=a,f=void 0,(f=l.avail_in)>p&&(f=p),r=0===f?0:(l.avail_in-=f,i.arraySet(u,l.input,l.next_in,f,d),1===l.state.wrap?l.adler=o(l.adler,u,f,d):2===l.state.wrap&&(l.adler=s(l.adler,u,f,d)),l.next_in+=f,l.total_in+=f,f),e.lookahead+=r,e.lookahead+e.insert>=E)for(c=e.strstart-e.insert,e.ins_h=e.window[c],e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+E-1])&e.hash_mask,e.prev[c&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=c,c++,e.insert--,!(e.lookahead+e.insert<E)););}while(e.lookahead<D&&0!==e.strm.avail_in)}function J(e,t){for(var r,n;;){if(e.lookahead<D){if(q(e),e.lookahead<D&&t===l)return N;if(0===e.lookahead)break}if(r=0,e.lookahead>=E&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+E-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==r&&e.strstart-r<=e.w_size-D&&(e.match_length=U(e,r)),e.match_length>=E)if(n=a._tr_tally(e,e.strstart-e.match_start,e.match_length-E),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=E){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+E-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(0!=--e.match_length);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=e.strstart<E-1?e.strstart:E-1,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}function V(e,t){for(var r,n,i;;){if(e.lookahead<D){if(q(e),e.lookahead<D&&t===l)return N;if(0===e.lookahead)break}if(r=0,e.lookahead>=E&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+E-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=E-1,0!==r&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-D&&(e.match_length=U(e,r),e.match_length<=5&&(1===e.strategy||e.match_length===E&&e.strstart-e.match_start>4096)&&(e.match_length=E-1)),e.prev_length>=E&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-E,n=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-E),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+E-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!=--e.prev_length);if(e.match_available=0,e.match_length=E-1,e.strstart++,n&&(j(e,!1),0===e.strm.avail_out))return N}else if(e.match_available){if((n=a._tr_tally(e,0,e.window[e.strstart-1]))&&j(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return N}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=a._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<E-1?e.strstart:E-1,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}function H(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}function K(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=_,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(2*k),this.dyn_dtree=new i.Buf16(2*(2*v+1)),this.bl_tree=new i.Buf16(2*(2*b+1)),M(this.dyn_ltree),M(this.dyn_dtree),M(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(x+1),this.heap=new i.Buf16(2*y+1),M(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*y+1),M(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function W(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=g,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?w:C,e.adler=2===t.wrap?0:1,t.last_flush=l,a._tr_init(t),d):O(e,p)}function G(e){var t,r=W(e);return r===d&&((t=e.state).window_size=2*t.w_size,M(t.head),t.max_lazy_match=n[t.level].max_lazy,t.good_match=n[t.level].good_length,t.nice_match=n[t.level].nice_length,t.max_chain_length=n[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=E-1,t.match_available=0,t.ins_h=0),r}function $(e,t,r,n,a,o){if(!e)return p;var s=1;if(t===f&&(t=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),a<1||a>h||r!==_||n<8||n>15||t<0||t>9||o<0||o>m)return O(e,p);8===n&&(n=9);var c=new K;return e.state=c,c.strm=e,c.wrap=s,c.gzhead=null,c.w_bits=n,c.w_size=1<<c.w_bits,c.w_mask=c.w_size-1,c.hash_bits=a+7,c.hash_size=1<<c.hash_bits,c.hash_mask=c.hash_size-1,c.hash_shift=~~((c.hash_bits+E-1)/E),c.window=new i.Buf8(2*c.w_size),c.head=new i.Buf16(c.hash_size),c.prev=new i.Buf16(c.w_size),c.lit_bufsize=1<<a+6,c.pending_buf_size=4*c.lit_bufsize,c.pending_buf=new i.Buf8(c.pending_buf_size),c.d_buf=1*c.lit_bufsize,c.l_buf=3*c.lit_bufsize,c.level=t,c.strategy=o,c.method=r,G(e)}n=[new H(0,0,0,0,(function(e,t){var r=65535;for(r>e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(q(e),0===e.lookahead&&t===l)return N;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,j(e,!1),0===e.strm.avail_out))return N;if(e.strstart-e.block_start>=e.w_size-D&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=0,t===u?(j(e,!0),0===e.strm.avail_out?I:F):(e.strstart>e.block_start&&(j(e,!1),e.strm.avail_out),N)})),new H(4,4,8,4,J),new H(4,5,16,8,J),new H(4,6,32,32,J),new H(4,4,16,16,V),new H(8,16,32,32,V),new H(8,16,128,128,V),new H(8,32,128,256,V),new H(32,128,258,1024,V),new H(32,258,258,4096,V)],t.deflateInit=function(e,t){return $(e,t,_,15,8,0)},t.deflateInit2=$,t.deflateReset=G,t.deflateResetKeep=W,t.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?p:(e.state.gzhead=t,d):p},t.deflate=function(e,t){var r,i,o,c;if(!e||!e.state||t>5||t<0)return e?O(e,p):p;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||i.status===A&&t!==u)return O(e,0===e.avail_out?-5:p);if(i.strm=e,r=i.last_flush,i.last_flush=t,i.status===w)if(2===i.wrap)e.adler=0,B(i,31),B(i,139),B(i,8),i.gzhead?(B(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),B(i,255&i.gzhead.time),B(i,i.gzhead.time>>8&255),B(i,i.gzhead.time>>16&255),B(i,i.gzhead.time>>24&255),B(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),B(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(B(i,255&i.gzhead.extra.length),B(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(B(i,0),B(i,0),B(i,0),B(i,0),B(i,0),B(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),B(i,3),i.status=C);else{var f=_+(i.w_bits-8<<4)<<8;f|=(i.strategy>=2||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(f|=32),f+=31-f%31,i.status=C,z(i,f),0!==i.strstart&&(z(i,e.adler>>>16),z(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),L(e),o=i.pending,i.pending!==i.pending_buf_size));)B(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),L(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,B(i,c)}while(0!==c);i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===c&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),L(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,B(i,c)}while(0!==c);i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===c&&(i.status=T)}else i.status=T;if(i.status===T&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&L(e),i.pending+2<=i.pending_buf_size&&(B(i,255&e.adler),B(i,e.adler>>8&255),e.adler=0,i.status=C)):i.status=C),0!==i.pending){if(L(e),0===e.avail_out)return i.last_flush=-1,d}else if(0===e.avail_in&&R(t)<=R(r)&&t!==u)return O(e,-5);if(i.status===A&&0!==e.avail_in)return O(e,-5);if(0!==e.avail_in||0!==i.lookahead||t!==l&&i.status!==A){var m=2===i.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(q(e),0===e.lookahead)){if(t===l)return N;break}if(e.match_length=0,r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=0,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}(i,t):3===i.strategy?function(e,t){for(var r,n,i,o,s=e.window;;){if(e.lookahead<=S){if(q(e),e.lookahead<=S&&t===l)return N;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=E&&e.strstart>0&&(n=s[i=e.strstart-1])===s[++i]&&n===s[++i]&&n===s[++i]){o=e.strstart+S;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&i<o);e.match_length=S-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=E?(r=a._tr_tally(e,1,e.match_length-E),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=0,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}(i,t):n[i.level].func(i,t);if(m!==I&&m!==F||(i.status=A),m===N||m===I)return 0===e.avail_out&&(i.last_flush=-1),d;if(m===P&&(1===t?a._tr_align(i):5!==t&&(a._tr_stored_block(i,0,0,!1),3===t&&(M(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),L(e),0===e.avail_out))return i.last_flush=-1,d}return t!==u?d:i.wrap<=0?1:(2===i.wrap?(B(i,255&e.adler),B(i,e.adler>>8&255),B(i,e.adler>>16&255),B(i,e.adler>>24&255),B(i,255&e.total_in),B(i,e.total_in>>8&255),B(i,e.total_in>>16&255),B(i,e.total_in>>24&255)):(z(i,e.adler>>>16),z(i,65535&e.adler)),L(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?d:1)},t.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==w&&69!==t&&73!==t&&91!==t&&t!==T&&t!==C&&t!==A?O(e,p):(e.state=null,t===C?O(e,-3):d):p},t.deflateSetDictionary=function(e,t){var r,n,a,s,c,l,u,f,m=t.length;if(!e||!e.state)return p;if(2===(s=(r=e.state).wrap)||1===s&&r.status!==w||r.lookahead)return p;for(1===s&&(e.adler=o(e.adler,t,m,0)),r.wrap=0,m>=r.w_size&&(0===s&&(M(r.head),r.strstart=0,r.block_start=0,r.insert=0),f=new i.Buf8(r.w_size),i.arraySet(f,t,m-r.w_size,r.w_size,0),t=f,m=r.w_size),c=e.avail_in,l=e.next_in,u=e.input,e.avail_in=m,e.next_in=0,e.input=t,q(r);r.lookahead>=E;){n=r.strstart,a=r.lookahead-(E-1);do{r.ins_h=(r.ins_h<<r.hash_shift^r.window[n+E-1])&r.hash_mask,r.prev[n&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=n,n++}while(--a);r.strstart=n,r.lookahead=E-1,q(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=E-1,r.match_available=0,e.next_in=l,e.input=u,e.avail_in=c,r.wrap=s,d},t.deflateInfo="pako deflate (from Nodeca project)"},37414:e=>{"use strict";e.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},47293:e=>{"use strict";e.exports=function(e,t){var r,n,i,a,o,s,c,l,u,d,p,f,m,g,_,h,y,v,b,k,x,E,S,D,w;r=e.state,n=e.next_in,D=e.input,i=n+(e.avail_in-5),a=e.next_out,w=e.output,o=a-(t-e.avail_out),s=a+(e.avail_out-257),c=r.dmax,l=r.wsize,u=r.whave,d=r.wnext,p=r.window,f=r.hold,m=r.bits,g=r.lencode,_=r.distcode,h=(1<<r.lenbits)-1,y=(1<<r.distbits)-1;e:do{m<15&&(f+=D[n++]<<m,m+=8,f+=D[n++]<<m,m+=8),v=g[f&h];t:for(;;){if(f>>>=b=v>>>24,m-=b,0===(b=v>>>16&255))w[a++]=65535&v;else{if(!(16&b)){if(64&b){if(32&b){r.mode=12;break e}e.msg="invalid literal/length code",r.mode=30;break e}v=g[(65535&v)+(f&(1<<b)-1)];continue t}for(k=65535&v,(b&=15)&&(m<b&&(f+=D[n++]<<m,m+=8),k+=f&(1<<b)-1,f>>>=b,m-=b),m<15&&(f+=D[n++]<<m,m+=8,f+=D[n++]<<m,m+=8),v=_[f&y];;){if(f>>>=b=v>>>24,m-=b,16&(b=v>>>16&255)){if(x=65535&v,m<(b&=15)&&(f+=D[n++]<<m,(m+=8)<b&&(f+=D[n++]<<m,m+=8)),(x+=f&(1<<b)-1)>c){e.msg="invalid distance too far back",r.mode=30;break e}if(f>>>=b,m-=b,x>(b=a-o)){if((b=x-b)>u&&r.sane){e.msg="invalid distance too far back",r.mode=30;break e}if(E=0,S=p,0===d){if(E+=l-b,b<k){k-=b;do{w[a++]=p[E++]}while(--b);E=a-x,S=w}}else if(d<b){if(E+=l+d-b,(b-=d)<k){k-=b;do{w[a++]=p[E++]}while(--b);if(E=0,d<k){k-=b=d;do{w[a++]=p[E++]}while(--b);E=a-x,S=w}}}else if(E+=d-b,b<k){k-=b;do{w[a++]=p[E++]}while(--b);E=a-x,S=w}for(;k>2;)w[a++]=S[E++],w[a++]=S[E++],w[a++]=S[E++],k-=3;k&&(w[a++]=S[E++],k>1&&(w[a++]=S[E++]))}else{E=a-x;do{w[a++]=w[E++],w[a++]=w[E++],w[a++]=w[E++],k-=3}while(k>2);k&&(w[a++]=w[E++],k>1&&(w[a++]=w[E++]))}break}if(64&b){e.msg="invalid distance code",r.mode=30;break e}v=_[(65535&v)+(f&(1<<b)-1)]}}break}}while(n<i&&a<s);n-=k=m>>3,f&=(1<<(m-=k<<3))-1,e.next_in=n,e.next_out=a,e.avail_in=n<i?i-n+5:5-(n-i),e.avail_out=a<s?s-a+257:257-(a-s),r.hold=f,r.bits=m}},71447:(e,t,r)=>{"use strict";var n=r(9805),i=r(53269),a=r(14823),o=r(47293),s=r(21998),c=1,l=2,u=0,d=-2,p=1,f=12,m=30,g=852,_=592;function h(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function y(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function v(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=p,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new n.Buf32(g),t.distcode=t.distdyn=new n.Buf32(_),t.sane=1,t.back=-1,u):d}function b(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,v(e)):d}function k(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?d:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,b(e))):d}function x(e,t){var r,n;return e?(n=new y,e.state=n,n.window=null,(r=k(e,t))!==u&&(e.state=null),r):d}var E,S,D=!0;function w(e){if(D){var t;for(E=new n.Buf32(512),S=new n.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(c,e.lens,0,288,E,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(l,e.lens,0,32,S,0,e.work,{bits:5}),D=!1}e.lencode=E,e.lenbits=9,e.distcode=S,e.distbits=5}function T(e,t,r,i){var a,o=e.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new n.Buf8(o.wsize)),i>=o.wsize?(n.arraySet(o.window,t,r-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):((a=o.wsize-o.wnext)>i&&(a=i),n.arraySet(o.window,t,r-i,a,o.wnext),(i-=a)?(n.arraySet(o.window,t,r-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=a))),0}t.inflateReset=b,t.inflateReset2=k,t.inflateResetKeep=v,t.inflateInit=function(e){return x(e,15)},t.inflateInit2=x,t.inflate=function(e,t){var r,g,_,y,v,b,k,x,E,S,D,C,A,N,P,I,F,O,R,M,L,j,B,z,U=0,q=new n.Buf8(4),J=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return d;(r=e.state).mode===f&&(r.mode=13),v=e.next_out,_=e.output,k=e.avail_out,y=e.next_in,g=e.input,b=e.avail_in,x=r.hold,E=r.bits,S=b,D=k,j=u;e:for(;;)switch(r.mode){case p:if(0===r.wrap){r.mode=13;break}for(;E<16;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(2&r.wrap&&35615===x){r.check=0,q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0),x=0,E=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&x)<<8)+(x>>8))%31){e.msg="incorrect header check",r.mode=m;break}if(8!=(15&x)){e.msg="unknown compression method",r.mode=m;break}if(E-=4,L=8+(15&(x>>>=4)),0===r.wbits)r.wbits=L;else if(L>r.wbits){e.msg="invalid window size",r.mode=m;break}r.dmax=1<<L,e.adler=r.check=1,r.mode=512&x?10:f,x=0,E=0;break;case 2:for(;E<16;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(r.flags=x,8!=(255&r.flags)){e.msg="unknown compression method",r.mode=m;break}if(57344&r.flags){e.msg="unknown header flags set",r.mode=m;break}r.head&&(r.head.text=x>>8&1),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0)),x=0,E=0,r.mode=3;case 3:for(;E<32;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.head&&(r.head.time=x),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,q[2]=x>>>16&255,q[3]=x>>>24&255,r.check=a(r.check,q,4,0)),x=0,E=0,r.mode=4;case 4:for(;E<16;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.head&&(r.head.xflags=255&x,r.head.os=x>>8),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0)),x=0,E=0,r.mode=5;case 5:if(1024&r.flags){for(;E<16;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.length=x,r.head&&(r.head.extra_len=x),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0)),x=0,E=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&((C=r.length)>b&&(C=b),C&&(r.head&&(L=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,g,y,C,L)),512&r.flags&&(r.check=a(r.check,g,C,y)),b-=C,y+=C,r.length-=C),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===b)break e;C=0;do{L=g[y+C++],r.head&&L&&r.length<65536&&(r.head.name+=String.fromCharCode(L))}while(L&&C<b);if(512&r.flags&&(r.check=a(r.check,g,C,y)),b-=C,y+=C,L)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=8;case 8:if(4096&r.flags){if(0===b)break e;C=0;do{L=g[y+C++],r.head&&L&&r.length<65536&&(r.head.comment+=String.fromCharCode(L))}while(L&&C<b);if(512&r.flags&&(r.check=a(r.check,g,C,y)),b-=C,y+=C,L)break e}else r.head&&(r.head.comment=null);r.mode=9;case 9:if(512&r.flags){for(;E<16;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(x!==(65535&r.check)){e.msg="header crc mismatch",r.mode=m;break}x=0,E=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=f;break;case 10:for(;E<32;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}e.adler=r.check=h(x),x=0,E=0,r.mode=11;case 11:if(0===r.havedict)return e.next_out=v,e.avail_out=k,e.next_in=y,e.avail_in=b,r.hold=x,r.bits=E,2;e.adler=r.check=1,r.mode=f;case f:if(5===t||6===t)break e;case 13:if(r.last){x>>>=7&E,E-=7&E,r.mode=27;break}for(;E<3;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}switch(r.last=1&x,E-=1,3&(x>>>=1)){case 0:r.mode=14;break;case 1:if(w(r),r.mode=20,6===t){x>>>=2,E-=2;break e}break;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=m}x>>>=2,E-=2;break;case 14:for(x>>>=7&E,E-=7&E;E<32;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if((65535&x)!=(x>>>16^65535)){e.msg="invalid stored block lengths",r.mode=m;break}if(r.length=65535&x,x=0,E=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(C=r.length){if(C>b&&(C=b),C>k&&(C=k),0===C)break e;n.arraySet(_,g,y,C,v),b-=C,y+=C,k-=C,v+=C,r.length-=C;break}r.mode=f;break;case 17:for(;E<14;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(r.nlen=257+(31&x),x>>>=5,E-=5,r.ndist=1+(31&x),x>>>=5,E-=5,r.ncode=4+(15&x),x>>>=4,E-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=m;break}r.have=0,r.mode=18;case 18:for(;r.have<r.ncode;){for(;E<3;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.lens[J[r.have++]]=7&x,x>>>=3,E-=3}for(;r.have<19;)r.lens[J[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,B={bits:r.lenbits},j=s(0,r.lens,0,19,r.lencode,0,r.work,B),r.lenbits=B.bits,j){e.msg="invalid code lengths set",r.mode=m;break}r.have=0,r.mode=19;case 19:for(;r.have<r.nlen+r.ndist;){for(;I=(U=r.lencode[x&(1<<r.lenbits)-1])>>>16&255,F=65535&U,!((P=U>>>24)<=E);){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(F<16)x>>>=P,E-=P,r.lens[r.have++]=F;else{if(16===F){for(z=P+2;E<z;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(x>>>=P,E-=P,0===r.have){e.msg="invalid bit length repeat",r.mode=m;break}L=r.lens[r.have-1],C=3+(3&x),x>>>=2,E-=2}else if(17===F){for(z=P+3;E<z;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}E-=P,L=0,C=3+(7&(x>>>=P)),x>>>=3,E-=3}else{for(z=P+7;E<z;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}E-=P,L=0,C=11+(127&(x>>>=P)),x>>>=7,E-=7}if(r.have+C>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=m;break}for(;C--;)r.lens[r.have++]=L}}if(r.mode===m)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=m;break}if(r.lenbits=9,B={bits:r.lenbits},j=s(c,r.lens,0,r.nlen,r.lencode,0,r.work,B),r.lenbits=B.bits,j){e.msg="invalid literal/lengths set",r.mode=m;break}if(r.distbits=6,r.distcode=r.distdyn,B={bits:r.distbits},j=s(l,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,B),r.distbits=B.bits,j){e.msg="invalid distances set",r.mode=m;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(b>=6&&k>=258){e.next_out=v,e.avail_out=k,e.next_in=y,e.avail_in=b,r.hold=x,r.bits=E,o(e,D),v=e.next_out,_=e.output,k=e.avail_out,y=e.next_in,g=e.input,b=e.avail_in,x=r.hold,E=r.bits,r.mode===f&&(r.back=-1);break}for(r.back=0;I=(U=r.lencode[x&(1<<r.lenbits)-1])>>>16&255,F=65535&U,!((P=U>>>24)<=E);){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(I&&!(240&I)){for(O=P,R=I,M=F;I=(U=r.lencode[M+((x&(1<<O+R)-1)>>O)])>>>16&255,F=65535&U,!(O+(P=U>>>24)<=E);){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}x>>>=O,E-=O,r.back+=O}if(x>>>=P,E-=P,r.back+=P,r.length=F,0===I){r.mode=26;break}if(32&I){r.back=-1,r.mode=f;break}if(64&I){e.msg="invalid literal/length code",r.mode=m;break}r.extra=15&I,r.mode=22;case 22:if(r.extra){for(z=r.extra;E<z;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.length+=x&(1<<r.extra)-1,x>>>=r.extra,E-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;I=(U=r.distcode[x&(1<<r.distbits)-1])>>>16&255,F=65535&U,!((P=U>>>24)<=E);){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(!(240&I)){for(O=P,R=I,M=F;I=(U=r.distcode[M+((x&(1<<O+R)-1)>>O)])>>>16&255,F=65535&U,!(O+(P=U>>>24)<=E);){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}x>>>=O,E-=O,r.back+=O}if(x>>>=P,E-=P,r.back+=P,64&I){e.msg="invalid distance code",r.mode=m;break}r.offset=F,r.extra=15&I,r.mode=24;case 24:if(r.extra){for(z=r.extra;E<z;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.offset+=x&(1<<r.extra)-1,x>>>=r.extra,E-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=m;break}r.mode=25;case 25:if(0===k)break e;if(C=D-k,r.offset>C){if((C=r.offset-C)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=m;break}C>r.wnext?(C-=r.wnext,A=r.wsize-C):A=r.wnext-C,C>r.length&&(C=r.length),N=r.window}else N=_,A=v-r.offset,C=r.length;C>k&&(C=k),k-=C,r.length-=C;do{_[v++]=N[A++]}while(--C);0===r.length&&(r.mode=21);break;case 26:if(0===k)break e;_[v++]=r.length,k--,r.mode=21;break;case 27:if(r.wrap){for(;E<32;){if(0===b)break e;b--,x|=g[y++]<<E,E+=8}if(D-=k,e.total_out+=D,r.total+=D,D&&(e.adler=r.check=r.flags?a(r.check,_,D,v-D):i(r.check,_,D,v-D)),D=k,(r.flags?x:h(x))!==r.check){e.msg="incorrect data check",r.mode=m;break}x=0,E=0}r.mode=28;case 28:if(r.wrap&&r.flags){for(;E<32;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(x!==(4294967295&r.total)){e.msg="incorrect length check",r.mode=m;break}x=0,E=0}r.mode=29;case 29:j=1;break e;case m:j=-3;break e;case 31:return-4;default:return d}return e.next_out=v,e.avail_out=k,e.next_in=y,e.avail_in=b,r.hold=x,r.bits=E,(r.wsize||D!==e.avail_out&&r.mode<m&&(r.mode<27||4!==t))&&T(e,e.output,e.next_out,D-e.avail_out)?(r.mode=31,-4):(S-=e.avail_in,D-=e.avail_out,e.total_in+=S,e.total_out+=D,r.total+=D,r.wrap&&D&&(e.adler=r.check=r.flags?a(r.check,_,D,e.next_out-D):i(r.check,_,D,e.next_out-D)),e.data_type=r.bits+(r.last?64:0)+(r.mode===f?128:0)+(20===r.mode||15===r.mode?256:0),(0===S&&0===D||4===t)&&j===u&&(j=-5),j)},t.inflateEnd=function(e){if(!e||!e.state)return d;var t=e.state;return t.window&&(t.window=null),e.state=null,u},t.inflateGetHeader=function(e,t){var r;return e&&e.state&&2&(r=e.state).wrap?(r.head=t,t.done=!1,u):d},t.inflateSetDictionary=function(e,t){var r,n=t.length;return e&&e.state?0!==(r=e.state).wrap&&11!==r.mode?d:11===r.mode&&i(1,t,n,0)!==r.check?-3:T(e,t,n,n)?(r.mode=31,-4):(r.havedict=1,u):d},t.inflateInfo="pako inflate (from Nodeca project)"},21998:(e,t,r)=>{"use strict";var n=r(9805),i=15,a=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],o=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],s=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],c=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];e.exports=function(e,t,r,l,u,d,p,f){var m,g,_,h,y,v,b,k,x,E=f.bits,S=0,D=0,w=0,T=0,C=0,A=0,N=0,P=0,I=0,F=0,O=null,R=0,M=new n.Buf16(16),L=new n.Buf16(16),j=null,B=0;for(S=0;S<=i;S++)M[S]=0;for(D=0;D<l;D++)M[t[r+D]]++;for(C=E,T=i;T>=1&&0===M[T];T--);if(C>T&&(C=T),0===T)return u[d++]=20971520,u[d++]=20971520,f.bits=1,0;for(w=1;w<T&&0===M[w];w++);for(C<w&&(C=w),P=1,S=1;S<=i;S++)if(P<<=1,(P-=M[S])<0)return-1;if(P>0&&(0===e||1!==T))return-1;for(L[1]=0,S=1;S<i;S++)L[S+1]=L[S]+M[S];for(D=0;D<l;D++)0!==t[r+D]&&(p[L[t[r+D]]++]=D);if(0===e?(O=j=p,v=19):1===e?(O=a,R-=257,j=o,B-=257,v=256):(O=s,j=c,v=-1),F=0,D=0,S=w,y=d,A=C,N=0,_=-1,h=(I=1<<C)-1,1===e&&I>852||2===e&&I>592)return 1;for(;;){b=S-N,p[D]<v?(k=0,x=p[D]):p[D]>v?(k=j[B+p[D]],x=O[R+p[D]]):(k=96,x=0),m=1<<S-N,w=g=1<<A;do{u[y+(F>>N)+(g-=m)]=b<<24|k<<16|x}while(0!==g);for(m=1<<S-1;F&m;)m>>=1;if(0!==m?(F&=m-1,F+=m):F=0,D++,0==--M[S]){if(S===T)break;S=t[r+p[D]]}if(S>C&&(F&h)!==_){for(0===N&&(N=C),y+=w,P=1<<(A=S-N);A+N<T&&!((P-=M[A+N])<=0);)A++,P<<=1;if(I+=1<<A,1===e&&I>852||2===e&&I>592)return 1;u[_=F&h]=C<<24|A<<16|y-d}}return 0!==F&&(u[y+F]=S-N<<24|64<<16),f.bits=C,0}},54674:e=>{"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},23665:(e,t,r)=>{"use strict";var n=r(9805),i=0,a=1;function o(e){for(var t=e.length;--t>=0;)e[t]=0}var s=0,c=29,l=256,u=l+1+c,d=30,p=19,f=2*u+1,m=15,g=16,_=7,h=256,y=16,v=17,b=18,k=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],x=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],E=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],S=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],D=new Array(2*(u+2));o(D);var w=new Array(2*d);o(w);var T=new Array(512);o(T);var C=new Array(256);o(C);var A=new Array(c);o(A);var N,P,I,F=new Array(d);function O(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}function R(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function M(e){return e<256?T[e]:T[256+(e>>>7)]}function L(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function j(e,t,r){e.bi_valid>g-r?(e.bi_buf|=t<<e.bi_valid&65535,L(e,e.bi_buf),e.bi_buf=t>>g-e.bi_valid,e.bi_valid+=r-g):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)}function B(e,t,r){j(e,r[2*t],r[2*t+1])}function z(e,t){var r=0;do{r|=1&e,e>>>=1,r<<=1}while(--t>0);return r>>>1}function U(e,t,r){var n,i,a=new Array(m+1),o=0;for(n=1;n<=m;n++)a[n]=o=o+r[n-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];0!==s&&(e[2*i]=z(a[s]++,s))}}function q(e){var t;for(t=0;t<u;t++)e.dyn_ltree[2*t]=0;for(t=0;t<d;t++)e.dyn_dtree[2*t]=0;for(t=0;t<p;t++)e.bl_tree[2*t]=0;e.dyn_ltree[2*h]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function J(e){e.bi_valid>8?L(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function V(e,t,r,n){var i=2*t,a=2*r;return e[i]<e[a]||e[i]===e[a]&&n[t]<=n[r]}function H(e,t,r){for(var n=e.heap[r],i=r<<1;i<=e.heap_len&&(i<e.heap_len&&V(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!V(t,n,e.heap[i],e.depth));)e.heap[r]=e.heap[i],r=i,i<<=1;e.heap[r]=n}function K(e,t,r){var n,i,a,o,s=0;if(0!==e.last_lit)do{n=e.pending_buf[e.d_buf+2*s]<<8|e.pending_buf[e.d_buf+2*s+1],i=e.pending_buf[e.l_buf+s],s++,0===n?B(e,i,t):(B(e,(a=C[i])+l+1,t),0!==(o=k[a])&&j(e,i-=A[a],o),B(e,a=M(--n),r),0!==(o=x[a])&&j(e,n-=F[a],o))}while(s<e.last_lit);B(e,h,t)}function W(e,t){var r,n,i,a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.has_stree,c=t.stat_desc.elems,l=-1;for(e.heap_len=0,e.heap_max=f,r=0;r<c;r++)0!==a[2*r]?(e.heap[++e.heap_len]=l=r,e.depth[r]=0):a[2*r+1]=0;for(;e.heap_len<2;)a[2*(i=e.heap[++e.heap_len]=l<2?++l:0)]=1,e.depth[i]=0,e.opt_len--,s&&(e.static_len-=o[2*i+1]);for(t.max_code=l,r=e.heap_len>>1;r>=1;r--)H(e,a,r);i=c;do{r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],H(e,a,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,a[2*i]=a[2*r]+a[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,a[2*r+1]=a[2*n+1]=i,e.heap[1]=i++,H(e,a,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,a,o,s,c=t.dyn_tree,l=t.max_code,u=t.stat_desc.static_tree,d=t.stat_desc.has_stree,p=t.stat_desc.extra_bits,g=t.stat_desc.extra_base,_=t.stat_desc.max_length,h=0;for(a=0;a<=m;a++)e.bl_count[a]=0;for(c[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<f;r++)(a=c[2*c[2*(n=e.heap[r])+1]+1]+1)>_&&(a=_,h++),c[2*n+1]=a,n>l||(e.bl_count[a]++,o=0,n>=g&&(o=p[n-g]),s=c[2*n],e.opt_len+=s*(a+o),d&&(e.static_len+=s*(u[2*n+1]+o)));if(0!==h){do{for(a=_-1;0===e.bl_count[a];)a--;e.bl_count[a]--,e.bl_count[a+1]+=2,e.bl_count[_]--,h-=2}while(h>0);for(a=_;0!==a;a--)for(n=e.bl_count[a];0!==n;)(i=e.heap[--r])>l||(c[2*i+1]!==a&&(e.opt_len+=(a-c[2*i+1])*c[2*i],c[2*i+1]=a),n--)}}(e,t),U(a,l,e.bl_count)}function G(e,t,r){var n,i,a=-1,o=t[1],s=0,c=7,l=4;for(0===o&&(c=138,l=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=o,o=t[2*(n+1)+1],++s<c&&i===o||(s<l?e.bl_tree[2*i]+=s:0!==i?(i!==a&&e.bl_tree[2*i]++,e.bl_tree[2*y]++):s<=10?e.bl_tree[2*v]++:e.bl_tree[2*b]++,s=0,a=i,0===o?(c=138,l=3):i===o?(c=6,l=3):(c=7,l=4))}function $(e,t,r){var n,i,a=-1,o=t[1],s=0,c=7,l=4;for(0===o&&(c=138,l=3),n=0;n<=r;n++)if(i=o,o=t[2*(n+1)+1],!(++s<c&&i===o)){if(s<l)do{B(e,i,e.bl_tree)}while(0!=--s);else 0!==i?(i!==a&&(B(e,i,e.bl_tree),s--),B(e,y,e.bl_tree),j(e,s-3,2)):s<=10?(B(e,v,e.bl_tree),j(e,s-3,3)):(B(e,b,e.bl_tree),j(e,s-11,7));s=0,a=i,0===o?(c=138,l=3):i===o?(c=6,l=3):(c=7,l=4)}}o(F);var Y=!1;function X(e,t,r,i){j(e,(s<<1)+(i?1:0),3),function(e,t,r,i){J(e),i&&(L(e,r),L(e,~r)),n.arraySet(e.pending_buf,e.window,t,r,e.pending),e.pending+=r}(e,t,r,!0)}t._tr_init=function(e){Y||(!function(){var e,t,r,n,i,a=new Array(m+1);for(r=0,n=0;n<c-1;n++)for(A[n]=r,e=0;e<1<<k[n];e++)C[r++]=n;for(C[r-1]=n,i=0,n=0;n<16;n++)for(F[n]=i,e=0;e<1<<x[n];e++)T[i++]=n;for(i>>=7;n<d;n++)for(F[n]=i<<7,e=0;e<1<<x[n]-7;e++)T[256+i++]=n;for(t=0;t<=m;t++)a[t]=0;for(e=0;e<=143;)D[2*e+1]=8,e++,a[8]++;for(;e<=255;)D[2*e+1]=9,e++,a[9]++;for(;e<=279;)D[2*e+1]=7,e++,a[7]++;for(;e<=287;)D[2*e+1]=8,e++,a[8]++;for(U(D,u+1,a),e=0;e<d;e++)w[2*e+1]=5,w[2*e]=z(e,5);N=new O(D,k,l+1,u,m),P=new O(w,x,0,d,m),I=new O(new Array(0),E,0,p,_)}(),Y=!0),e.l_desc=new R(e.dyn_ltree,N),e.d_desc=new R(e.dyn_dtree,P),e.bl_desc=new R(e.bl_tree,I),e.bi_buf=0,e.bi_valid=0,q(e)},t._tr_stored_block=X,t._tr_flush_block=function(e,t,r,n){var o,s,c=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return i;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return a;for(t=32;t<l;t++)if(0!==e.dyn_ltree[2*t])return a;return i}(e)),W(e,e.l_desc),W(e,e.d_desc),c=function(e){var t;for(G(e,e.dyn_ltree,e.l_desc.max_code),G(e,e.dyn_dtree,e.d_desc.max_code),W(e,e.bl_desc),t=p-1;t>=3&&0===e.bl_tree[2*S[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),o=e.opt_len+3+7>>>3,(s=e.static_len+3+7>>>3)<=o&&(o=s)):o=s=r+5,r+4<=o&&-1!==t?X(e,t,r,n):4===e.strategy||s===o?(j(e,2+(n?1:0),3),K(e,D,w)):(j(e,4+(n?1:0),3),function(e,t,r,n){var i;for(j(e,t-257,5),j(e,r-1,5),j(e,n-4,4),i=0;i<n;i++)j(e,e.bl_tree[2*S[i]+1],3);$(e,e.dyn_ltree,t-1),$(e,e.dyn_dtree,r-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,c+1),K(e,e.dyn_ltree,e.dyn_dtree)),q(e),n&&J(e)},t._tr_tally=function(e,t,r){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(C[r]+l+1)]++,e.dyn_dtree[2*M(t)]++),e.last_lit===e.lit_bufsize-1},t._tr_align=function(e){j(e,2,3),B(e,h,D),function(e){16===e.bi_valid?(L(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},44442:e=>{"use strict";e.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},52641:e=>{"use strict";function t(e){return"/"===e.charAt(0)}function r(e){var t=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/.exec(e),r=t[1]||"",n=Boolean(r&&":"!==r.charAt(1));return Boolean(t[2]||n)}e.exports="win32"===process.platform?r:t,e.exports.posix=t,e.exports.win32=r},33225:e=>{"use strict";"undefined"==typeof process||!process.version||0===process.version.indexOf("v0.")||0===process.version.indexOf("v1.")&&0!==process.version.indexOf("v1.8.")?e.exports={nextTick:function(e,t,r,n){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var i,a,o=arguments.length;switch(o){case 0:case 1:return process.nextTick(e);case 2:return process.nextTick((function(){e.call(null,t)}));case 3:return process.nextTick((function(){e.call(null,t,r)}));case 4:return process.nextTick((function(){e.call(null,t,r,n)}));default:for(i=new Array(o-1),a=0;a<i.length;)i[a++]=arguments[a];return process.nextTick((function(){e.apply(null,i)}))}}}:e.exports=process},30113:e=>{"use strict";const t={};function r(e,r,n){n||(n=Error);class i extends n{constructor(e,t,n){super(function(e,t,n){return"string"==typeof r?r:r(e,t,n)}(e,t,n))}}i.prototype.name=n.name,i.prototype.code=e,t[e]=i}function n(e,t){if(Array.isArray(e)){const r=e.length;return e=e.map((e=>String(e))),r>2?`one of ${t} ${e.slice(0,r-1).join(", ")}, or `+e[r-1]:2===r?`one of ${t} ${e[0]} or ${e[1]}`:`of ${t} ${e[0]}`}return`of ${t} ${String(e)}`}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){let i;var a,o;let s;if("string"==typeof t&&(a="not ",t.substr(!o||o<0?0:+o,a.length)===a)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))s=`The ${e} ${i} ${n(t,"type")}`;else{const r=function(e,t,r){return"number"!=typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";s=`The "${e}" ${r} ${i} ${n(t,"type")}`}return s+=". Received type "+typeof r,s}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.F=t},25382:(e,t,r)=>{"use strict";var n=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=l;var i=r(45412),a=r(16708);r(72017)(l,i);for(var o=n(a.prototype),s=0;s<o.length;s++){var c=o[s];l.prototype[c]||(l.prototype[c]=a.prototype[c])}function l(e){if(!(this instanceof l))return new l(e);i.call(this,e),a.call(this,e),this.allowHalfOpen=!0,e&&(!1===e.readable&&(this.readable=!1),!1===e.writable&&(this.writable=!1),!1===e.allowHalfOpen&&(this.allowHalfOpen=!1,this.once("end",u)))}function u(){this._writableState.ended||process.nextTick(d,this)}function d(e){e.end()}Object.defineProperty(l.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(l.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(l.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(l.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}})},63600:(e,t,r)=>{"use strict";e.exports=i;var n=r(74610);function i(e){if(!(this instanceof i))return new i(e);n.call(this,e)}r(72017)(i,n),i.prototype._transform=function(e,t,r){r(null,e)}},45412:(e,t,r)=>{"use strict";var n;e.exports=S,S.ReadableState=E;r(24434).EventEmitter;var i=function(e,t){return e.listeners(t).length},a=r(81416),o=r(20181).Buffer,s=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var c,l=r(39023);c=l&&l.debuglog?l.debuglog("stream"):function(){};var u,d,p,f=r(80345),m=r(75896),g=r(65291).getHighWaterMark,_=r(30113).F,h=_.ERR_INVALID_ARG_TYPE,y=_.ERR_STREAM_PUSH_AFTER_EOF,v=_.ERR_METHOD_NOT_IMPLEMENTED,b=_.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(72017)(S,a);var k=m.errorOrDestroy,x=["error","close","destroy","pause","resume"];function E(e,t,i){n=n||r(25382),e=e||{},"boolean"!=typeof i&&(i=t instanceof n),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=g(this,e,"readableHighWaterMark",i),this.buffer=new f,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(u||(u=r(83141).I),this.decoder=new u(e.encoding),this.encoding=e.encoding)}function S(e){if(n=n||r(25382),!(this instanceof S))return new S(e);var t=this instanceof n;this._readableState=new E(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),a.call(this)}function D(e,t,r,n,i){c("readableAddChunk",t);var a,l=e._readableState;if(null===t)l.reading=!1,function(e,t){if(c("onEofChunk"),t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?A(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,N(e)))}(e,l);else if(i||(a=function(e,t){var r;n=t,o.isBuffer(n)||n instanceof s||"string"==typeof t||void 0===t||e.objectMode||(r=new h("chunk",["string","Buffer","Uint8Array"],t));var n;return r}(l,t)),a)k(e,a);else if(l.objectMode||t&&t.length>0)if("string"==typeof t||l.objectMode||Object.getPrototypeOf(t)===o.prototype||(t=function(e){return o.from(e)}(t)),n)l.endEmitted?k(e,new b):w(e,l,t,!0);else if(l.ended)k(e,new y);else{if(l.destroyed)return!1;l.reading=!1,l.decoder&&!r?(t=l.decoder.write(t),l.objectMode||0!==t.length?w(e,l,t,!1):P(e,l)):w(e,l,t,!1)}else n||(l.reading=!1,P(e,l));return!l.ended&&(l.length<l.highWaterMark||0===l.length)}function w(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(t.awaitDrain=0,e.emit("data",r)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&A(e)),P(e,t)}Object.defineProperty(S.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),S.prototype.destroy=m.destroy,S.prototype._undestroy=m.undestroy,S.prototype._destroy=function(e,t){t(e)},S.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=o.from(e,t),t=""),r=!0),D(this,e,t,!1,r)},S.prototype.unshift=function(e){return D(this,e,null,!0,!1)},S.prototype.isPaused=function(){return!1===this._readableState.flowing},S.prototype.setEncoding=function(e){u||(u=r(83141).I);var t=new u(e);this._readableState.decoder=t,this._readableState.encoding=this._readableState.decoder.encoding;for(var n=this._readableState.buffer.head,i="";null!==n;)i+=t.write(n.data),n=n.next;return this._readableState.buffer.clear(),""!==i&&this._readableState.buffer.push(i),this._readableState.length=i.length,this};var T=1073741824;function C(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=T?e=T:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function A(e){var t=e._readableState;c("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(c("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(N,e))}function N(e){var t=e._readableState;c("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,M(e)}function P(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length<t.highWaterMark||t.flowing&&0===t.length);){var r=t.length;if(c("maybeReadMore read 0"),e.read(0),r===t.length)break}t.readingMore=!1}function F(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function O(e){c("readable nexttick read 0"),e.read(0)}function R(e,t){c("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),M(e),t.flowing&&!t.reading&&e.read(0)}function M(e){var t=e._readableState;for(c("flow",t.flowing);t.flowing&&null!==e.read(););}function L(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function j(e){var t=e._readableState;c("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(B,t,e))}function B(e,t){if(c("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function z(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}S.prototype.read=function(e){c("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&((0!==t.highWaterMark?t.length>=t.highWaterMark:t.length>0)||t.ended))return c("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?j(this):A(this),null;if(0===(e=C(e,t))&&t.ended)return 0===t.length&&j(this),null;var n,i=t.needReadable;return c("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&c("length less than watermark",i=!0),t.ended||t.reading?c("reading or ended",i=!1):i&&(c("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=C(r,t))),null===(n=e>0?L(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&j(this)),null!==n&&this.emit("data",n),n},S.prototype._read=function(e){k(this,new v("_read()"))},S.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,c("pipe count=%d opts=%j",n.pipesCount,t);var a=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?s:g;function o(t,i){c("onunpipe"),t===r&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,c("cleanup"),e.removeListener("close",f),e.removeListener("finish",m),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",o),r.removeListener("end",s),r.removeListener("end",g),r.removeListener("data",d),u=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function s(){c("onend"),e.end()}n.endEmitted?process.nextTick(a):r.once("end",a),e.on("unpipe",o);var l=function(e){return function(){var t=e._readableState;c("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&i(e,"data")&&(t.flowing=!0,M(e))}}(r);e.on("drain",l);var u=!1;function d(t){c("ondata");var i=e.write(t);c("dest.write",i),!1===i&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==z(n.pipes,e))&&!u&&(c("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function p(t){c("onerror",t),g(),e.removeListener("error",p),0===i(e,"error")&&k(e,t)}function f(){e.removeListener("finish",m),g()}function m(){c("onfinish"),e.removeListener("close",f),g()}function g(){c("unpipe"),r.unpipe(e)}return r.on("data",d),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",p),e.once("close",f),e.once("finish",m),e.emit("pipe",r),n.flowing||(c("pipe resume"),r.resume()),e},S.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=z(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},S.prototype.on=function(e,t){var r=a.prototype.on.call(this,e,t),n=this._readableState;return"data"===e?(n.readableListening=this.listenerCount("readable")>0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,c("on readable",n.length,n.reading),n.length?A(this):n.reading||process.nextTick(O,this))),r},S.prototype.addListener=S.prototype.on,S.prototype.removeListener=function(e,t){var r=a.prototype.removeListener.call(this,e,t);return"readable"===e&&process.nextTick(F,this),r},S.prototype.removeAllListeners=function(e){var t=a.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||process.nextTick(F,this),t},S.prototype.resume=function(){var e=this._readableState;return e.flowing||(c("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(R,e,t))}(this,e)),e.paused=!1,this},S.prototype.pause=function(){return c("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(c("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},S.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(c("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(c("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<x.length;a++)e.on(x[a],this.emit.bind(this,x[a]));return this._read=function(t){c("wrapped _read",t),n&&(n=!1,e.resume())},this},"function"==typeof Symbol&&(S.prototype[Symbol.asyncIterator]=function(){return void 0===d&&(d=r(2955)),d(this)}),Object.defineProperty(S.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(S.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(S.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(e){this._readableState&&(this._readableState.flowing=e)}}),S._fromList=L,Object.defineProperty(S.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}}),"function"==typeof Symbol&&(S.from=function(e,t){return void 0===p&&(p=r(96532)),p(S,e,t)})},74610:(e,t,r)=>{"use strict";e.exports=u;var n=r(30113).F,i=n.ERR_METHOD_NOT_IMPLEMENTED,a=n.ERR_MULTIPLE_CALLBACK,o=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,c=r(25382);function l(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new a);r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function u(e){if(!(this instanceof u))return new u(e);c.call(this,e),this._transformState={afterTransform:l.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",d)}function d(){var e=this;"function"!=typeof this._flush||this._readableState.destroyed?p(this,null,null):this._flush((function(t,r){p(e,t,r)}))}function p(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new s;if(e._transformState.transforming)throw new o;return e.push(null)}r(72017)(u,c),u.prototype.push=function(e,t){return this._transformState.needTransform=!1,c.prototype.push.call(this,e,t)},u.prototype._transform=function(e,t,r){r(new i("_transform()"))},u.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},u.prototype._read=function(e){var t=this._transformState;null===t.writechunk||t.transforming?t.needTransform=!0:(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform))},u.prototype._destroy=function(e,t){c.prototype._destroy.call(this,e,(function(e){t(e)}))}},16708:(e,t,r)=>{"use strict";function n(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}var i;e.exports=S,S.WritableState=E;var a={deprecate:r(27983)},o=r(81416),s=r(20181).Buffer,c=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var l,u=r(75896),d=r(65291).getHighWaterMark,p=r(30113).F,f=p.ERR_INVALID_ARG_TYPE,m=p.ERR_METHOD_NOT_IMPLEMENTED,g=p.ERR_MULTIPLE_CALLBACK,_=p.ERR_STREAM_CANNOT_PIPE,h=p.ERR_STREAM_DESTROYED,y=p.ERR_STREAM_NULL_VALUES,v=p.ERR_STREAM_WRITE_AFTER_END,b=p.ERR_UNKNOWN_ENCODING,k=u.errorOrDestroy;function x(){}function E(e,t,a){i=i||r(25382),e=e||{},"boolean"!=typeof a&&(a=t instanceof i),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=d(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var o=!1===e.decodeStrings;this.decodeStrings=!o,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if("function"!=typeof i)throw new g;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,i){--t.pendingcb,r?(process.nextTick(i,n),process.nextTick(N,e,t),e._writableState.errorEmitted=!0,k(e,n)):(i(n),e._writableState.errorEmitted=!0,k(e,n),N(e,t))}(e,r,n,t,i);else{var a=C(r)||e.destroyed;a||r.corked||r.bufferProcessing||!r.bufferedRequest||T(e,r),n?process.nextTick(w,e,r,a,i):w(e,r,a,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new n(this)}function S(e){var t=this instanceof(i=i||r(25382));if(!t&&!l.call(S,this))return new S(e);this._writableState=new E(e,this,t),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),o.call(this)}function D(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new h("write")):r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function w(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),N(e,t)}function T(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var i=t.bufferedRequestCount,a=new Array(i),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,D(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new n(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(D(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function C(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function A(e,t){e._final((function(r){t.pendingcb--,r&&k(e,r),t.prefinished=!0,e.emit("prefinish"),N(e,t)}))}function N(e,t){var r=C(t);if(r&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,process.nextTick(A,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var n=e._readableState;(!n||n.autoDestroy&&n.endEmitted)&&e.destroy()}return r}r(72017)(S,o),E.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(E.prototype,"buffer",{get:a.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(l=Function.prototype[Symbol.hasInstance],Object.defineProperty(S,Symbol.hasInstance,{value:function(e){return!!l.call(this,e)||this===S&&(e&&e._writableState instanceof E)}})):l=function(e){return e instanceof this},S.prototype.pipe=function(){k(this,new _)},S.prototype.write=function(e,t,r){var n,i=this._writableState,a=!1,o=!i.objectMode&&(n=e,s.isBuffer(n)||n instanceof c);return o&&!s.isBuffer(e)&&(e=function(e){return s.from(e)}(e)),"function"==typeof t&&(r=t,t=null),o?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof r&&(r=x),i.ending?function(e,t){var r=new v;k(e,r),process.nextTick(t,r)}(this,r):(o||function(e,t,r,n){var i;return null===r?i=new y:"string"==typeof r||t.objectMode||(i=new f("chunk",["string","Buffer"],r)),!i||(k(e,i),process.nextTick(n,i),!1)}(this,i,e,r))&&(i.pendingcb++,a=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=s.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var c=t.objectMode?1:n.length;t.length+=c;var l=t.length<t.highWaterMark;l||(t.needDrain=!0);if(t.writing||t.corked){var u=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},u?u.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else D(e,t,!1,c,n,i,a);return l}(this,i,o,e,t,r)),a},S.prototype.cork=function(){this._writableState.corked++},S.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||T(this,e))},S.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new b(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(S.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(S.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),S.prototype._write=function(e,t,r){r(new m("_write()"))},S.prototype._writev=null,S.prototype.end=function(e,t,r){var n=this._writableState;return"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,N(e,t),r&&(t.finished?process.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r),this},Object.defineProperty(S.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(S.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),S.prototype.destroy=u.destroy,S.prototype._undestroy=u.undestroy,S.prototype._destroy=function(e,t){t(e)}},2955:(e,t,r)=>{"use strict";var n;function i(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var a=r(86238),o=Symbol("lastResolve"),s=Symbol("lastReject"),c=Symbol("error"),l=Symbol("ended"),u=Symbol("lastPromise"),d=Symbol("handlePromise"),p=Symbol("stream");function f(e,t){return{value:e,done:t}}function m(e){var t=e[o];if(null!==t){var r=e[p].read();null!==r&&(e[u]=null,e[o]=null,e[s]=null,t(f(r,!1)))}}function g(e){process.nextTick(m,e)}var _=Object.getPrototypeOf((function(){})),h=Object.setPrototypeOf((i(n={get stream(){return this[p]},next:function(){var e=this,t=this[c];if(null!==t)return Promise.reject(t);if(this[l])return Promise.resolve(f(void 0,!0));if(this[p].destroyed)return new Promise((function(t,r){process.nextTick((function(){e[c]?r(e[c]):t(f(void 0,!0))}))}));var r,n=this[u];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[l]?r(f(void 0,!0)):t[d](r,n)}),n)}}(n,this));else{var i=this[p].read();if(null!==i)return Promise.resolve(f(i,!1));r=new Promise(this[d])}return this[u]=r,r}},Symbol.asyncIterator,(function(){return this})),i(n,"return",(function(){var e=this;return new Promise((function(t,r){e[p].destroy(null,(function(e){e?r(e):t(f(void 0,!0))}))}))})),n),_);e.exports=function(e){var t,r=Object.create(h,(i(t={},p,{value:e,writable:!0}),i(t,o,{value:null,writable:!0}),i(t,s,{value:null,writable:!0}),i(t,c,{value:null,writable:!0}),i(t,l,{value:e._readableState.endEmitted,writable:!0}),i(t,d,{value:function(e,t){var n=r[p].read();n?(r[u]=null,r[o]=null,r[s]=null,e(f(n,!1))):(r[o]=e,r[s]=t)},writable:!0}),t));return r[u]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[s];return null!==t&&(r[u]=null,r[o]=null,r[s]=null,t(e)),void(r[c]=e)}var n=r[o];null!==n&&(r[u]=null,r[o]=null,r[s]=null,n(f(void 0,!0))),r[l]=!0})),e.on("readable",g.bind(null,r)),r}},80345:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function a(e,t,r){return(t=s(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,s(n.key),n)}}function s(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}var c=r(20181).Buffer,l=r(39023).inspect,u=l&&l.custom||"inspect";e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}var t,r,n;return t=e,(r=[{key:"push",value:function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return c.alloc(0);for(var t,r,n,i=c.allocUnsafe(e>>>0),a=this.head,o=0;a;)t=a.data,r=i,n=o,c.prototype.copy.call(t,r,n),o+=a.data.length,a=a.next;return i}},{key:"consume",value:function(e,t){var r;return e<this.head.data.length?(r=this.head.data.slice(0,e),this.head.data=this.head.data.slice(e)):r=e===this.head.data.length?this.shift():t?this._getString(e):this._getBuffer(e),r}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(e){var t=this.head,r=1,n=t.data;for(e-=n.length;t=t.next;){var i=t.data,a=e>i.length?i.length:e;if(a===i.length?n+=i:n+=i.slice(0,e),0==(e-=a)){a===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(a));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=c.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,a),0==(e-=a)){a===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(a));break}++n}return this.length-=n,t}},{key:u,value:function(e,t){return l(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&o(t.prototype,r),n&&o(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}()},75896:e=>{"use strict";function t(e,t){n(e,t),r(e)}function r(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function n(e,t){e.emit("error",t)}e.exports={destroy:function(e,i){var a=this,o=this._readableState&&this._readableState.destroyed,s=this._writableState&&this._writableState.destroyed;return o||s?(i?i(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(n,this,e)):process.nextTick(n,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!i&&e?a._writableState?a._writableState.errorEmitted?process.nextTick(r,a):(a._writableState.errorEmitted=!0,process.nextTick(t,a,e)):process.nextTick(t,a,e):i?(process.nextTick(r,a),i(e)):process.nextTick(r,a)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}}},86238:(e,t,r)=>{"use strict";var n=r(30113).F.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,r,a){if("function"==typeof r)return e(t,null,r);r||(r={}),a=function(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];e.apply(this,n)}}}(a||i);var o=r.readable||!1!==r.readable&&t.readable,s=r.writable||!1!==r.writable&&t.writable,c=function(){t.writable||u()},l=t._writableState&&t._writableState.finished,u=function(){s=!1,l=!0,o||a.call(t)},d=t._readableState&&t._readableState.endEmitted,p=function(){o=!1,d=!0,s||a.call(t)},f=function(e){a.call(t,e)},m=function(){var e;return o&&!d?(t._readableState&&t._readableState.ended||(e=new n),a.call(t,e)):s&&!l?(t._writableState&&t._writableState.ended||(e=new n),a.call(t,e)):void 0},g=function(){t.req.on("finish",u)};return!function(e){return e.setHeader&&"function"==typeof e.abort}(t)?s&&!t._writableState&&(t.on("end",c),t.on("close",c)):(t.on("complete",u),t.on("abort",m),t.req?g():t.on("request",g)),t.on("end",p),t.on("finish",u),!1!==r.error&&t.on("error",f),t.on("close",m),function(){t.removeListener("complete",u),t.removeListener("abort",m),t.removeListener("request",g),t.req&&t.req.removeListener("finish",u),t.removeListener("end",c),t.removeListener("close",c),t.removeListener("finish",u),t.removeListener("end",p),t.removeListener("error",f),t.removeListener("close",m)}}},96532:(e,t,r)=>{"use strict";function n(e,t,r,n,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void r(e)}s.done?t(c):Promise.resolve(c).then(n,i)}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var o=r(30113).F.ERR_INVALID_ARG_TYPE;e.exports=function(e,t,r){var s;if(t&&"function"==typeof t.next)s=t;else if(t&&t[Symbol.asyncIterator])s=t[Symbol.asyncIterator]();else{if(!t||!t[Symbol.iterator])throw new o("iterable",["Iterable"],t);s=t[Symbol.iterator]()}var c=new e(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({objectMode:!0},r)),l=!1;function u(){return d.apply(this,arguments)}function d(){var e;return e=function*(){try{var e=yield s.next(),t=e.value;e.done?c.push(null):c.push(yield t)?u():l=!1}catch(e){c.destroy(e)}},d=function(){var t=this,r=arguments;return new Promise((function(i,a){var o=e.apply(t,r);function s(e){n(o,i,a,s,c,"next",e)}function c(e){n(o,i,a,s,c,"throw",e)}s(void 0)}))},d.apply(this,arguments)}return c._read=function(){l||(l=!0,u())},c}},57758:(e,t,r)=>{"use strict";var n;var i=r(30113).F,a=i.ERR_MISSING_ARGS,o=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function c(e){e()}function l(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];var u,d=function(e){return e.length?"function"!=typeof e[e.length-1]?s:e.pop():s}(t);if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new a("streams");var p=t.map((function(e,i){var a=i<t.length-1;return function(e,t,i,a){a=function(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}(a);var s=!1;e.on("close",(function(){s=!0})),void 0===n&&(n=r(86238)),n(e,{readable:t,writable:i},(function(e){if(e)return a(e);s=!0,a()}));var c=!1;return function(t){if(!s&&!c)return c=!0,function(e){return e.setHeader&&"function"==typeof e.abort}(e)?e.abort():"function"==typeof e.destroy?e.destroy():void a(t||new o("pipe"))}}(e,a,i>0,(function(e){u||(u=e),e&&p.forEach(c),a||(p.forEach(c),d(u))}))}));return t.reduce(l)}},65291:(e,t,r)=>{"use strict";var n=r(30113).F.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var a=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=a){if(!isFinite(a)||Math.floor(a)!==a||a<0)throw new n(i?r:"highWaterMark",a);return Math.floor(a)}return e.objectMode?16:16384}}},81416:(e,t,r)=>{e.exports=r(2203)},34198:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n.Readable,Object.assign(e.exports,n),e.exports.Stream=n):((t=e.exports=r(45412)).Stream=n||t,t.Readable=t,t.Writable=r(16708),t.Duplex=r(25382),t.Transform=r(74610),t.PassThrough=r(63600),t.finished=r(86238),t.pipeline=r(57758))},76965:(e,t,r)=>{e.exports=u;const n=r(79896),{EventEmitter:i}=r(24434),{Minimatch:a}=r(25835),{resolve:o}=r(16928);function s(e,t){return new Promise(((r,i)=>{(t?n.stat:n.lstat)(e,((n,i)=>{if(n)if("ENOENT"===n.code)r(t?s(e,!1):null);else r(null);else r(i)}))}))}async function*c(e,t,r,i,a,o){let l=await function(e,t){return new Promise(((r,i)=>{n.readdir(e,{withFileTypes:!0},((e,n)=>{if(e)switch(e.code){case"ENOTDIR":t?i(e):r([]);break;case"ENOTSUP":case"ENOENT":case"ENAMETOOLONG":case"UNKNOWN":r([]);break;default:i(e)}else r(n)}))}))}(t+e,o);for(const n of l){let o=n.name;void 0===o&&(o=n,i=!0);const l=e+"/"+o,u=l.slice(1),d=t+"/"+u;let p=null;(i||r)&&(p=await s(d,r)),p||void 0===n.name||(p=n),null===p&&(p={isDirectory:()=>!1}),p.isDirectory()?a(u)||(yield{relative:u,absolute:d,stats:p},yield*c(l,t,r,i,a,!1)):yield{relative:u,absolute:d,stats:p}}}class l extends i{constructor(e,t,r){if(super(),"function"==typeof t&&(r=t,t=null),this.options=function(e){return{pattern:e.pattern,dot:!!e.dot,noglobstar:!!e.noglobstar,matchBase:!!e.matchBase,nocase:!!e.nocase,ignore:e.ignore,skip:e.skip,follow:!!e.follow,stat:!!e.stat,nodir:!!e.nodir,mark:!!e.mark,silent:!!e.silent,absolute:!!e.absolute}}(t||{}),this.matchers=[],this.options.pattern){const e=Array.isArray(this.options.pattern)?this.options.pattern:[this.options.pattern];this.matchers=e.map((e=>new a(e,{dot:this.options.dot,noglobstar:this.options.noglobstar,matchBase:this.options.matchBase,nocase:this.options.nocase})))}if(this.ignoreMatchers=[],this.options.ignore){const e=Array.isArray(this.options.ignore)?this.options.ignore:[this.options.ignore];this.ignoreMatchers=e.map((e=>new a(e,{dot:!0})))}if(this.skipMatchers=[],this.options.skip){const e=Array.isArray(this.options.skip)?this.options.skip:[this.options.skip];this.skipMatchers=e.map((e=>new a(e,{dot:!0})))}this.iterator=async function*(e,t,r,n){yield*c("",e,t,r,n,!0)}(o(e||"."),this.options.follow,this.options.stat,this._shouldSkipDirectory.bind(this)),this.paused=!1,this.inactive=!1,this.aborted=!1,r&&(this._matches=[],this.on("match",(e=>this._matches.push(this.options.absolute?e.absolute:e.relative))),this.on("error",(e=>r(e))),this.on("end",(()=>r(null,this._matches)))),setTimeout((()=>this._next()),0)}_shouldSkipDirectory(e){return this.skipMatchers.some((t=>t.match(e)))}_fileMatches(e,t){const r=e+(t?"/":"");return(0===this.matchers.length||this.matchers.some((e=>e.match(r))))&&!this.ignoreMatchers.some((e=>e.match(r)))&&(!this.options.nodir||!t)}_next(){this.paused||this.aborted?this.inactive=!0:this.iterator.next().then((e=>{if(e.done)this.emit("end");else{const t=e.value.stats.isDirectory();if(this._fileMatches(e.value.relative,t)){let r=e.value.relative,n=e.value.absolute;this.options.mark&&t&&(r+="/",n+="/"),this.options.stat?this.emit("match",{relative:r,absolute:n,stat:e.value.stats}):this.emit("match",{relative:r,absolute:n})}this._next(this.iterator)}})).catch((e=>{this.abort(),this.emit("error",e),e.code||this.options.silent||console.error(e)}))}abort(){this.aborted=!0}pause(){this.paused=!0}resume(){this.paused=!1,this.inactive&&(this.inactive=!1,this._next())}}function u(e,t,r){return new l(e,t,r)}u.ReaddirGlob=l},84928:(e,t,r)=>{var n=r(8505);e.exports=function(e){if(!e)return[];"{}"===e.substr(0,2)&&(e="\\{\\}"+e.substr(2));return _(function(e){return e.split("\\\\").join(i).split("\\{").join(a).split("\\}").join(o).split("\\,").join(s).split("\\.").join(c)}(e),!0).map(u)};var i="\0SLASH"+Math.random()+"\0",a="\0OPEN"+Math.random()+"\0",o="\0CLOSE"+Math.random()+"\0",s="\0COMMA"+Math.random()+"\0",c="\0PERIOD"+Math.random()+"\0";function l(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function u(e){return e.split(i).join("\\").split(a).join("{").split(o).join("}").split(s).join(",").split(c).join(".")}function d(e){if(!e)return[""];var t=[],r=n("{","}",e);if(!r)return e.split(",");var i=r.pre,a=r.body,o=r.post,s=i.split(",");s[s.length-1]+="{"+a+"}";var c=d(o);return o.length&&(s[s.length-1]+=c.shift(),s.push.apply(s,c)),t.push.apply(t,s),t}function p(e){return"{"+e+"}"}function f(e){return/^-?0\d/.test(e)}function m(e,t){return e<=t}function g(e,t){return e>=t}function _(e,t){var r=[],i=n("{","}",e);if(!i)return[e];var a=i.pre,s=i.post.length?_(i.post,!1):[""];if(/\$$/.test(i.pre))for(var c=0;c<s.length;c++){var u=a+"{"+i.body+"}"+s[c];r.push(u)}else{var h,y,v=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(i.body),b=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(i.body),k=v||b,x=i.body.indexOf(",")>=0;if(!k&&!x)return i.post.match(/,.*\}/)?_(e=i.pre+"{"+i.body+o+i.post):[e];if(k)h=i.body.split(/\.\./);else if(1===(h=d(i.body)).length&&1===(h=_(h[0],!1).map(p)).length)return s.map((function(e){return i.pre+h[0]+e}));if(k){var E=l(h[0]),S=l(h[1]),D=Math.max(h[0].length,h[1].length),w=3==h.length?Math.abs(l(h[2])):1,T=m;S<E&&(w*=-1,T=g);var C=h.some(f);y=[];for(var A=E;T(A,S);A+=w){var N;if(b)"\\"===(N=String.fromCharCode(A))&&(N="");else if(N=String(A),C){var P=D-N.length;if(P>0){var I=new Array(P+1).join("0");N=A<0?"-"+I+N.slice(1):I+N}}y.push(N)}}else{y=[];for(var F=0;F<h.length;F++)y.push.apply(y,_(h[F],!1))}for(F=0;F<y.length;F++)for(c=0;c<s.length;c++){u=a+y[F]+s[c];(!t||k||u)&&r.push(u)}}return r}},88664:e=>{const t="object"==typeof process&&process&&"win32"===process.platform;e.exports=t?{sep:"\\"}:{sep:"/"}},25835:(e,t,r)=>{const n=e.exports=(e,t,r={})=>(_(t),!(!r.nocomment&&"#"===t.charAt(0))&&new v(t,r).match(e));e.exports=n;const i=r(88664);n.sep=i.sep;const a=Symbol("globstar **");n.GLOBSTAR=a;const o=r(84928),s={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},c="[^/]",l=c+"*?",u=e=>e.split("").reduce(((e,t)=>(e[t]=!0,e)),{}),d=u("().*{}+?[]^$\\!"),p=u("[.("),f=/\/+/;n.filter=(e,t={})=>(r,i,a)=>n(r,e,t);const m=(e,t={})=>{const r={};return Object.keys(e).forEach((t=>r[t]=e[t])),Object.keys(t).forEach((e=>r[e]=t[e])),r};n.defaults=e=>{if(!e||"object"!=typeof e||!Object.keys(e).length)return n;const t=n,r=(r,n,i)=>t(r,n,m(e,i));return(r.Minimatch=class extends t.Minimatch{constructor(t,r){super(t,m(e,r))}}).defaults=r=>t.defaults(m(e,r)).Minimatch,r.filter=(r,n)=>t.filter(r,m(e,n)),r.defaults=r=>t.defaults(m(e,r)),r.makeRe=(r,n)=>t.makeRe(r,m(e,n)),r.braceExpand=(r,n)=>t.braceExpand(r,m(e,n)),r.match=(r,n,i)=>t.match(r,n,m(e,i)),r},n.braceExpand=(e,t)=>g(e,t);const g=(e,t={})=>(_(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:o(e)),_=e=>{if("string"!=typeof e)throw new TypeError("invalid pattern");if(e.length>65536)throw new TypeError("pattern is too long")},h=Symbol("subparse");n.makeRe=(e,t)=>new v(e,t||{}).makeRe(),n.match=(e,t,r={})=>{const n=new v(t,r);return e=e.filter((e=>n.match(e))),n.options.nonull&&!e.length&&e.push(t),e};const y=e=>e.replace(/[[\]\\]/g,"\\$&");class v{constructor(e,t){_(e),t||(t={}),this.options=t,this.set=[],this.pattern=e,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||!1===t.allowWindowsEscape,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.make()}debug(){}make(){const e=this.pattern,t=this.options;if(!t.nocomment&&"#"===e.charAt(0))return void(this.comment=!0);if(!e)return void(this.empty=!0);this.parseNegate();let r=this.globSet=this.braceExpand();t.debug&&(this.debug=(...e)=>console.error(...e)),this.debug(this.pattern,r),r=this.globParts=r.map((e=>e.split(f))),this.debug(this.pattern,r),r=r.map(((e,t,r)=>e.map(this.parse,this))),this.debug(this.pattern,r),r=r.filter((e=>-1===e.indexOf(!1))),this.debug(this.pattern,r),this.set=r}parseNegate(){if(this.options.nonegate)return;const e=this.pattern;let t=!1,r=0;for(let n=0;n<e.length&&"!"===e.charAt(n);n++)t=!t,r++;r&&(this.pattern=e.slice(r)),this.negate=t}matchOne(e,t,r){var n=this.options;this.debug("matchOne",{this:this,file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var i=0,o=0,s=e.length,c=t.length;i<s&&o<c;i++,o++){this.debug("matchOne loop");var l,u=t[o],d=e[i];if(this.debug(t,u,d),!1===u)return!1;if(u===a){this.debug("GLOBSTAR",[t,u,d]);var p=i,f=o+1;if(f===c){for(this.debug("** at the end");i<s;i++)if("."===e[i]||".."===e[i]||!n.dot&&"."===e[i].charAt(0))return!1;return!0}for(;p<s;){var m=e[p];if(this.debug("\nglobstar while",e,p,t,f,m),this.matchOne(e.slice(p),t.slice(f),r))return this.debug("globstar found match!",p,s,m),!0;if("."===m||".."===m||!n.dot&&"."===m.charAt(0)){this.debug("dot detected!",e,p,t,f);break}this.debug("globstar swallow a segment, and continue"),p++}return!(!r||(this.debug("\n>>> no match, partial?",e,p,t,f),p!==s))}if("string"==typeof u?(l=d===u,this.debug("string match",u,d,l)):(l=d.match(u),this.debug("pattern match",u,d,l)),!l)return!1}if(i===s&&o===c)return!0;if(i===s)return r;if(o===c)return i===s-1&&""===e[i];throw new Error("wtf?")}braceExpand(){return g(this.pattern,this.options)}parse(e,t){_(e);const r=this.options;if("**"===e){if(!r.noglobstar)return a;e="*"}if(""===e)return"";let n="",i=!1,o=!1;const u=[],f=[];let m,g,v,b,k=!1,x=-1,E=-1,S="."===e.charAt(0),D=r.dot||S;const w=e=>"."===e.charAt(0)?"":r.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",T=()=>{if(m){switch(m){case"*":n+=l,i=!0;break;case"?":n+=c,i=!0;break;default:n+="\\"+m}this.debug("clearStateChar %j %j",m,n),m=!1}};for(let t,a=0;a<e.length&&(t=e.charAt(a));a++)if(this.debug("%s\t%s %s %j",e,a,n,t),o){if("/"===t)return!1;d[t]&&(n+="\\"),n+=t,o=!1}else switch(t){case"/":return!1;case"\\":if(k&&"-"===e.charAt(a+1)){n+=t;continue}T(),o=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s\t%s %s %j <-- stateChar",e,a,n,t),k){this.debug(" in class"),"!"===t&&a===E+1&&(t="^"),n+=t;continue}this.debug("call clearStateChar %j",m),T(),m=t,r.noext&&T();continue;case"(":{if(k){n+="(";continue}if(!m){n+="\\(";continue}const t={type:m,start:a-1,reStart:n.length,open:s[m].open,close:s[m].close};this.debug(this.pattern,"\t",t),u.push(t),n+=t.open,0===t.start&&"!"!==t.type&&(S=!0,n+=w(e.slice(a+1))),this.debug("plType %j %j",m,n),m=!1;continue}case")":{const e=u[u.length-1];if(k||!e){n+="\\)";continue}u.pop(),T(),i=!0,v=e,n+=v.close,"!"===v.type&&f.push(Object.assign(v,{reEnd:n.length}));continue}case"|":{const t=u[u.length-1];if(k||!t){n+="\\|";continue}T(),n+="|",0===t.start&&"!"!==t.type&&(S=!0,n+=w(e.slice(a+1)));continue}case"[":if(T(),k){n+="\\"+t;continue}k=!0,E=a,x=n.length,n+=t;continue;case"]":if(a===E+1||!k){n+="\\"+t;continue}g=e.substring(E+1,a);try{RegExp("["+y(g.replace(/\\([^-\]])/g,"$1"))+"]"),n+=t}catch(e){n=n.substring(0,x)+"(?:$.)"}i=!0,k=!1;continue;default:T(),!d[t]||"^"===t&&k||(n+="\\"),n+=t}for(k&&(g=e.slice(E+1),b=this.parse(g,h),n=n.substring(0,x)+"\\["+b[0],i=i||b[1]),v=u.pop();v;v=u.pop()){let e;e=n.slice(v.reStart+v.open.length),this.debug("setting tail",n,v),e=e.replace(/((?:\\{2}){0,64})(\\?)\|/g,((e,t,r)=>(r||(r="\\"),t+t+r+"|"))),this.debug("tail=%j\n %s",e,e,v,n);const t="*"===v.type?l:"?"===v.type?c:"\\"+v.type;i=!0,n=n.slice(0,v.reStart)+t+"\\("+e}T(),o&&(n+="\\\\");const C=p[n.charAt(0)];for(let e=f.length-1;e>-1;e--){const r=f[e],i=n.slice(0,r.reStart),a=n.slice(r.reStart,r.reEnd-8);let o=n.slice(r.reEnd);const s=n.slice(r.reEnd-8,r.reEnd)+o,c=i.split(")").length,l=i.split("(").length-c;let u=o;for(let e=0;e<l;e++)u=u.replace(/\)[+*?]?/,"");o=u;n=i+a+o+(""===o&&t!==h?"(?:$|\\/)":"")+s}if(""!==n&&i&&(n="(?=.)"+n),C&&(n=(S?"":D?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)")+n),t===h)return[n,i];if(r.nocase&&!i&&(i=e.toUpperCase()!==e.toLowerCase()),!i)return(e=>e.replace(/\\(.)/g,"$1"))(e);const A=r.nocase?"i":"";try{return Object.assign(new RegExp("^"+n+"$",A),{_glob:e,_src:n})}catch(e){return new RegExp("$.")}}makeRe(){if(this.regexp||!1===this.regexp)return this.regexp;const e=this.set;if(!e.length)return this.regexp=!1,this.regexp;const t=this.options,r=t.noglobstar?l:t.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",n=t.nocase?"i":"";let i=e.map((e=>(e=e.map((e=>"string"==typeof e?e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):e===a?a:e._src)).reduce(((e,t)=>(e[e.length-1]===a&&t===a||e.push(t),e)),[]),e.forEach(((t,n)=>{t===a&&e[n-1]!==a&&(0===n?e.length>1?e[n+1]="(?:\\/|"+r+"\\/)?"+e[n+1]:e[n]=r:n===e.length-1?e[n-1]+="(?:\\/|"+r+")?":(e[n-1]+="(?:\\/|\\/"+r+"\\/)"+e[n+1],e[n+1]=a))})),e.filter((e=>e!==a)).join("/")))).join("|");i="^(?:"+i+")$",this.negate&&(i="^(?!"+i+").*$");try{this.regexp=new RegExp(i,n)}catch(e){this.regexp=!1}return this.regexp}match(e,t=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return""===e;if("/"===e&&t)return!0;const r=this.options;"/"!==i.sep&&(e=e.split(i.sep).join("/")),e=e.split(f),this.debug(this.pattern,"split",e);const n=this.set;let a;this.debug(this.pattern,"set",n);for(let t=e.length-1;t>=0&&(a=e[t],!a);t--);for(let i=0;i<n.length;i++){const o=n[i];let s=e;r.matchBase&&1===o.length&&(s=[a]);if(this.matchOne(s,o,t))return!!r.flipNegate||!this.negate}return!r.flipNegate&&this.negate}static defaults(e){return n.defaults(e).Minimatch}}n.Minimatch=v},4239:(e,t,r)=>{e.exports=p,p.sync=h;var n=r(42613),i=r(16928),a=r(79896),o=void 0;try{o=r(53577)}catch(e){}var s=parseInt("666",8),c={nosort:!0,silent:!0},l=0,u="win32"===process.platform;function d(e){if(["unlink","chmod","stat","lstat","rmdir","readdir"].forEach((function(t){e[t]=e[t]||a[t],e[t+="Sync"]=e[t]||a[t]})),e.maxBusyTries=e.maxBusyTries||3,e.emfileWait=e.emfileWait||1e3,!1===e.glob&&(e.disableGlob=!0),!0!==e.disableGlob&&void 0===o)throw Error("glob dependency not found, set `options.disableGlob = true` if intentional");e.disableGlob=e.disableGlob||!1,e.glob=e.glob||c}function p(e,t,r){"function"==typeof t&&(r=t,t={}),n(e,"rimraf: missing path"),n.equal(typeof e,"string","rimraf: path should be a string"),n.equal(typeof r,"function","rimraf: callback function required"),n(t,"rimraf: invalid options argument provided"),n.equal(typeof t,"object","rimraf: options should be object"),d(t);var i=0,a=null,s=0;if(t.disableGlob||!o.hasMagic(e))return c(null,[e]);function c(e,n){return e?r(e):0===(s=n.length)?r():void n.forEach((function(e){f(e,t,(function n(o){if(o){if(("EBUSY"===o.code||"ENOTEMPTY"===o.code||"EPERM"===o.code)&&i<t.maxBusyTries)return i++,setTimeout((function(){f(e,t,n)}),100*i);if("EMFILE"===o.code&&l<t.emfileWait)return setTimeout((function(){f(e,t,n)}),l++);"ENOENT"===o.code&&(o=null)}l=0,function(e){a=a||e,0==--s&&r(a)}(o)}))}))}t.lstat(e,(function(r,n){if(!r)return c(null,[e]);o(e,t.glob,c)}))}function f(e,t,r){n(e),n(t),n("function"==typeof r),t.lstat(e,(function(n,i){return n&&"ENOENT"===n.code?r(null):(n&&"EPERM"===n.code&&u&&m(e,t,n,r),i&&i.isDirectory()?_(e,t,n,r):void t.unlink(e,(function(n){if(n){if("ENOENT"===n.code)return r(null);if("EPERM"===n.code)return u?m(e,t,n,r):_(e,t,n,r);if("EISDIR"===n.code)return _(e,t,n,r)}return r(n)})))}))}function m(e,t,r,i){n(e),n(t),n("function"==typeof i),r&&n(r instanceof Error),t.chmod(e,s,(function(n){n?i("ENOENT"===n.code?null:r):t.stat(e,(function(n,a){n?i("ENOENT"===n.code?null:r):a.isDirectory()?_(e,t,r,i):t.unlink(e,i)}))}))}function g(e,t,r){n(e),n(t),r&&n(r instanceof Error);try{t.chmodSync(e,s)}catch(e){if("ENOENT"===e.code)return;throw r}try{var i=t.statSync(e)}catch(e){if("ENOENT"===e.code)return;throw r}i.isDirectory()?y(e,t,r):t.unlinkSync(e)}function _(e,t,r,a){n(e),n(t),r&&n(r instanceof Error),n("function"==typeof a),t.rmdir(e,(function(o){!o||"ENOTEMPTY"!==o.code&&"EEXIST"!==o.code&&"EPERM"!==o.code?o&&"ENOTDIR"===o.code?a(r):a(o):function(e,t,r){n(e),n(t),n("function"==typeof r),t.readdir(e,(function(n,a){if(n)return r(n);var o,s=a.length;if(0===s)return t.rmdir(e,r);a.forEach((function(n){p(i.join(e,n),t,(function(n){if(!o)return n?r(o=n):void(0==--s&&t.rmdir(e,r))}))}))}))}(e,t,a)}))}function h(e,t){var r;if(d(t=t||{}),n(e,"rimraf: missing path"),n.equal(typeof e,"string","rimraf: path should be a string"),n(t,"rimraf: missing options"),n.equal(typeof t,"object","rimraf: options should be object"),t.disableGlob||!o.hasMagic(e))r=[e];else try{t.lstatSync(e),r=[e]}catch(n){r=o.sync(e,t.glob)}if(r.length)for(var i=0;i<r.length;i++){e=r[i];try{var a=t.lstatSync(e)}catch(r){if("ENOENT"===r.code)return;"EPERM"===r.code&&u&&g(e,t,r)}try{a&&a.isDirectory()?y(e,t,null):t.unlinkSync(e)}catch(r){if("ENOENT"===r.code)return;if("EPERM"===r.code)return u?g(e,t,r):y(e,t,r);if("EISDIR"!==r.code)throw r;y(e,t,r)}}}function y(e,t,r){n(e),n(t),r&&n(r instanceof Error);try{t.rmdirSync(e)}catch(a){if("ENOENT"===a.code)return;if("ENOTDIR"===a.code)throw r;"ENOTEMPTY"!==a.code&&"EEXIST"!==a.code&&"EPERM"!==a.code||function(e,t){n(e),n(t),t.readdirSync(e).forEach((function(r){h(i.join(e,r),t)}));var r=u?100:1,a=0;for(;;){var o=!0;try{var s=t.rmdirSync(e,t);return o=!1,s}finally{if(++a<r&&o)continue}}}(e,t)}}},92861:(e,t,r)=>{var n=r(20181),i=n.Buffer;function a(e,t){for(var r in e)t[r]=e[r]}function o(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(a(n,t),t.Buffer=o),a(i,o),o.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},o.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"==typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},38223:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(31487),i=r(84797),a=r(60446);var o=n.isS,s=n.isChar,c=n.isNameStartChar,l=n.isNameChar,u=n.S_LIST,d=n.NAME_RE,p=i.isChar,f=a.isNCNameStartChar,m=a.isNCNameChar,g=a.NC_NAME_RE;const _="http://www.w3.org/XML/1998/namespace",h="http://www.w3.org/2000/xmlns/",y={__proto__:null,xml:_,xmlns:h},v={__proto__:null,amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},b=-1,k=-2,x=13,E=33,S=10,D=60,w=61,T=62,C=63,A=93,N=e=>34===e||39===e,P=[34,39],I=[...P,91,T],F=[...P,D,A],O=[w,C,...u],R=[...u,T,38,D];function M(e,t,r){switch(t){case"xml":r!==_&&e.fail(`xml prefix must be bound to ${_}.`);break;case"xmlns":r!==h&&e.fail(`xmlns prefix must be bound to ${h}.`)}switch(r){case h:e.fail(""===t?`the default namespace may not be set to ${r}.`:`may not assign a prefix (even "xmlns") to the URI ${h}.`);break;case _:switch(t){case"xml":break;case"":e.fail(`the default namespace may not be set to ${r}.`);break;default:e.fail("may not assign the xml namespace to another prefix.")}}}const L=e=>g.test(e),j=e=>d.test(e);t.EVENTS=["xmldecl","text","processinginstruction","doctype","comment","opentagstart","attribute","opentag","closetag","cdata","error","end","ready"];const B={xmldecl:"xmldeclHandler",text:"textHandler",processinginstruction:"piHandler",doctype:"doctypeHandler",comment:"commentHandler",opentagstart:"openTagStartHandler",attribute:"attributeHandler",opentag:"openTagHandler",closetag:"closeTagHandler",cdata:"cdataHandler",error:"errorHandler",end:"endHandler",ready:"readyHandler"};t.SaxesParser=class{constructor(e){this.opt=null!=e?e:{},this.fragmentOpt=!!this.opt.fragment;const t=this.xmlnsOpt=!!this.opt.xmlns;if(this.trackPosition=!1!==this.opt.position,this.fileName=this.opt.fileName,t){this.nameStartCheck=f,this.nameCheck=m,this.isName=L,this.processAttribs=this.processAttribsNS,this.pushAttrib=this.pushAttribNS,this.ns=Object.assign({__proto__:null},y);const e=this.opt.additionalNamespaces;null!=e&&(!function(e,t){for(const r of Object.keys(t))M(e,r,t[r])}(this,e),Object.assign(this.ns,e))}else this.nameStartCheck=c,this.nameCheck=l,this.isName=j,this.processAttribs=this.processAttribsPlain,this.pushAttrib=this.pushAttribPlain;this.stateTable=[this.sBegin,this.sBeginWhitespace,this.sDoctype,this.sDoctypeQuote,this.sDTD,this.sDTDQuoted,this.sDTDOpenWaka,this.sDTDOpenWakaBang,this.sDTDComment,this.sDTDCommentEnding,this.sDTDCommentEnded,this.sDTDPI,this.sDTDPIEnding,this.sText,this.sEntity,this.sOpenWaka,this.sOpenWakaBang,this.sComment,this.sCommentEnding,this.sCommentEnded,this.sCData,this.sCDataEnding,this.sCDataEnding2,this.sPIFirstChar,this.sPIRest,this.sPIBody,this.sPIEnding,this.sXMLDeclNameStart,this.sXMLDeclName,this.sXMLDeclEq,this.sXMLDeclValueStart,this.sXMLDeclValue,this.sXMLDeclSeparator,this.sXMLDeclEnding,this.sOpenTag,this.sOpenTagSlash,this.sAttrib,this.sAttribName,this.sAttribNameSawWhite,this.sAttribValue,this.sAttribValueQuoted,this.sAttribValueClosed,this.sAttribValueUnquoted,this.sCloseTag,this.sCloseTagSawWhite],this._init()}get closed(){return this._closed}_init(){var e;this.openWakaBang="",this.text="",this.name="",this.piTarget="",this.entity="",this.q=null,this.tags=[],this.tag=null,this.topNS=null,this.chunk="",this.chunkPosition=0,this.i=0,this.prevI=0,this.carriedFromPrevious=void 0,this.forbiddenState=0,this.attribList=[];const{fragmentOpt:t}=this;this.state=t?x:0,this.reportedTextBeforeRoot=this.reportedTextAfterRoot=this.closedRoot=this.sawRoot=t,this.xmlDeclPossible=!t,this.xmlDeclExpects=["version"],this.entityReturnState=void 0;let{defaultXMLVersion:r}=this.opt;if(void 0===r){if(!0===this.opt.forceXMLVersion)throw new Error("forceXMLVersion set but defaultXMLVersion is not set");r="1.0"}this.setXMLVersion(r),this.positionAtNewLine=0,this.doctype=!1,this._closed=!1,this.xmlDecl={version:void 0,encoding:void 0,standalone:void 0},this.line=1,this.column=0,this.ENTITIES=Object.create(v),null===(e=this.readyHandler)||void 0===e||e.call(this)}get position(){return this.chunkPosition+this.i}get columnIndex(){return this.position-this.positionAtNewLine}on(e,t){this[B[e]]=t}off(e){this[B[e]]=void 0}makeError(e){var t;let r=null!==(t=this.fileName)&&void 0!==t?t:"";return this.trackPosition&&(r.length>0&&(r+=":"),r+=`${this.line}:${this.column}`),r.length>0&&(r+=": "),new Error(r+e)}fail(e){const t=this.makeError(e),r=this.errorHandler;if(void 0===r)throw t;return r(t),this}write(e){if(this.closed)return this.fail("cannot write after close; assign an onready handler.");let t=!1;null===e?(t=!0,e=""):"object"==typeof e&&(e=e.toString()),void 0!==this.carriedFromPrevious&&(e=`${this.carriedFromPrevious}${e}`,this.carriedFromPrevious=void 0);let r=e.length;const n=e.charCodeAt(r-1);!t&&(13===n||n>=55296&&n<=56319)&&(this.carriedFromPrevious=e[r-1],r--,e=e.slice(0,r));const{stateTable:i}=this;for(this.chunk=e,this.i=0;this.i<r;)i[this.state].call(this);return this.chunkPosition+=r,t?this.end():this}close(){return this.write(null)}getCode10(){const{chunk:e,i:t}=this;if(this.prevI=t,this.i=t+1,t>=e.length)return b;const r=e.charCodeAt(t);if(this.column++,r<55296){if(r>=32||9===r)return r;switch(r){case S:return this.line++,this.column=0,this.positionAtNewLine=this.position,S;case 13:return e.charCodeAt(t+1)===S&&(this.i=t+2),this.line++,this.column=0,this.positionAtNewLine=this.position,k;default:return this.fail("disallowed character."),r}}if(r>56319)return r>=57344&&r<=65533||this.fail("disallowed character."),r;const n=65536+1024*(r-55296)+(e.charCodeAt(t+1)-56320);return this.i=t+2,n>1114111&&this.fail("disallowed character."),n}getCode11(){const{chunk:e,i:t}=this;if(this.prevI=t,this.i=t+1,t>=e.length)return b;const r=e.charCodeAt(t);if(this.column++,r<55296){if(r>31&&r<127||r>159&&8232!==r||9===r)return r;switch(r){case S:return this.line++,this.column=0,this.positionAtNewLine=this.position,S;case 13:{const r=e.charCodeAt(t+1);r!==S&&133!==r||(this.i=t+2)}case 133:case 8232:return this.line++,this.column=0,this.positionAtNewLine=this.position,k;default:return this.fail("disallowed character."),r}}if(r>56319)return r>=57344&&r<=65533||this.fail("disallowed character."),r;const n=65536+1024*(r-55296)+(e.charCodeAt(t+1)-56320);return this.i=t+2,n>1114111&&this.fail("disallowed character."),n}getCodeNorm(){const e=this.getCode();return e===k?S:e}unget(){this.i=this.prevI,this.column--}captureTo(e){let{i:t}=this;const{chunk:r}=this;for(;;){const n=this.getCode(),i=n===k,a=i?S:n;if(a===b||e.includes(a))return this.text+=r.slice(t,this.prevI),a;i&&(this.text+=`${r.slice(t,this.prevI)}\n`,t=this.i)}}captureToChar(e){let{i:t}=this;const{chunk:r}=this;for(;;){let n=this.getCode();switch(n){case k:this.text+=`${r.slice(t,this.prevI)}\n`,t=this.i,n=S;break;case b:return this.text+=r.slice(t),!1}if(n===e)return this.text+=r.slice(t,this.prevI),!0}}captureNameChars(){const{chunk:e,i:t}=this;for(;;){const r=this.getCode();if(r===b)return this.name+=e.slice(t),b;if(!l(r))return this.name+=e.slice(t,this.prevI),r===k?S:r}}skipSpaces(){for(;;){const e=this.getCodeNorm();if(e===b||!o(e))return e}}setXMLVersion(e){this.currentXMLVersion=e,"1.0"===e?(this.isChar=s,this.getCode=this.getCode10):(this.isChar=p,this.getCode=this.getCode11)}sBegin(){65279===this.chunk.charCodeAt(0)&&(this.i++,this.column++),this.state=1}sBeginWhitespace(){const e=this.i,t=this.skipSpaces();switch(this.prevI!==e&&(this.xmlDeclPossible=!1),t){case D:if(this.state=15,0!==this.text.length)throw new Error("no-empty text at start");break;case b:break;default:this.unget(),this.state=x,this.xmlDeclPossible=!1}}sDoctype(){var e;const t=this.captureTo(I);switch(t){case T:null===(e=this.doctypeHandler)||void 0===e||e.call(this,this.text),this.text="",this.state=x,this.doctype=!0;break;case b:break;default:this.text+=String.fromCodePoint(t),91===t?this.state=4:N(t)&&(this.state=3,this.q=t)}}sDoctypeQuote(){const e=this.q;this.captureToChar(e)&&(this.text+=String.fromCodePoint(e),this.q=null,this.state=2)}sDTD(){const e=this.captureTo(F);e!==b&&(this.text+=String.fromCodePoint(e),e===A?this.state=2:e===D?this.state=6:N(e)&&(this.state=5,this.q=e))}sDTDQuoted(){const e=this.q;this.captureToChar(e)&&(this.text+=String.fromCodePoint(e),this.state=4,this.q=null)}sDTDOpenWaka(){const e=this.getCodeNorm();switch(this.text+=String.fromCodePoint(e),e){case 33:this.state=7,this.openWakaBang="";break;case C:this.state=11;break;default:this.state=4}}sDTDOpenWakaBang(){const e=String.fromCodePoint(this.getCodeNorm()),t=this.openWakaBang+=e;this.text+=e,"-"!==t&&(this.state="--"===t?8:4,this.openWakaBang="")}sDTDComment(){this.captureToChar(45)&&(this.text+="-",this.state=9)}sDTDCommentEnding(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),this.state=45===e?10:8}sDTDCommentEnded(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),e===T?this.state=4:(this.fail("malformed comment."),this.state=8)}sDTDPI(){this.captureToChar(C)&&(this.text+="?",this.state=12)}sDTDPIEnding(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),e===T&&(this.state=4)}sText(){0!==this.tags.length?this.handleTextInRoot():this.handleTextOutsideRoot()}sEntity(){let{i:e}=this;const{chunk:t}=this;e:for(;;)switch(this.getCode()){case k:this.entity+=`${t.slice(e,this.prevI)}\n`,e=this.i;break;case 59:{const{entityReturnState:r}=this,n=this.entity+t.slice(e,this.prevI);let i;this.state=r,""===n?(this.fail("empty entity name."),i="&;"):(i=this.parseEntity(n),this.entity=""),r===x&&void 0===this.textHandler||(this.text+=i);break e}case b:this.entity+=t.slice(e);break e}}sOpenWaka(){const e=this.getCode();if(c(e))this.state=34,this.unget(),this.xmlDeclPossible=!1;else switch(e){case 47:this.state=43,this.xmlDeclPossible=!1;break;case 33:this.state=16,this.openWakaBang="",this.xmlDeclPossible=!1;break;case C:this.state=23;break;default:this.fail("disallowed character in tag name"),this.state=x,this.xmlDeclPossible=!1}}sOpenWakaBang(){switch(this.openWakaBang+=String.fromCodePoint(this.getCodeNorm()),this.openWakaBang){case"[CDATA[":this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0),this.state=20,this.openWakaBang="";break;case"--":this.state=17,this.openWakaBang="";break;case"DOCTYPE":this.state=2,(this.doctype||this.sawRoot)&&this.fail("inappropriately located doctype declaration."),this.openWakaBang="";break;default:this.openWakaBang.length>=7&&this.fail("incorrect syntax.")}}sComment(){this.captureToChar(45)&&(this.state=18)}sCommentEnding(){var e;const t=this.getCodeNorm();45===t?(this.state=19,null===(e=this.commentHandler)||void 0===e||e.call(this,this.text),this.text=""):(this.text+=`-${String.fromCodePoint(t)}`,this.state=17)}sCommentEnded(){const e=this.getCodeNorm();e!==T?(this.fail("malformed comment."),this.text+=`--${String.fromCodePoint(e)}`,this.state=17):this.state=x}sCData(){this.captureToChar(A)&&(this.state=21)}sCDataEnding(){const e=this.getCodeNorm();e===A?this.state=22:(this.text+=`]${String.fromCodePoint(e)}`,this.state=20)}sCDataEnding2(){var e;const t=this.getCodeNorm();switch(t){case T:null===(e=this.cdataHandler)||void 0===e||e.call(this,this.text),this.text="",this.state=x;break;case A:this.text+="]";break;default:this.text+=`]]${String.fromCodePoint(t)}`,this.state=20}}sPIFirstChar(){const e=this.getCodeNorm();this.nameStartCheck(e)?(this.piTarget+=String.fromCodePoint(e),this.state=24):e===C||o(e)?(this.fail("processing instruction without a target."),this.state=e===C?26:25):(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(e),this.state=24)}sPIRest(){const{chunk:e,i:t}=this;for(;;){const r=this.getCodeNorm();if(r===b)return void(this.piTarget+=e.slice(t));if(!this.nameCheck(r)){this.piTarget+=e.slice(t,this.prevI);const n=r===C;n||o(r)?"xml"===this.piTarget?(this.xmlDeclPossible||this.fail("an XML declaration must be at the start of the document."),this.state=n?E:27):this.state=n?26:25:(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(r));break}}}sPIBody(){if(0===this.text.length){const e=this.getCodeNorm();e===C?this.state=26:o(e)||(this.text=String.fromCodePoint(e))}else this.captureToChar(C)&&(this.state=26)}sPIEnding(){var e;const t=this.getCodeNorm();if(t===T){const{piTarget:t}=this;"xml"===t.toLowerCase()&&this.fail("the XML declaration must appear at the start of the document."),null===(e=this.piHandler)||void 0===e||e.call(this,{target:t,body:this.text}),this.piTarget=this.text="",this.state=x}else t===C?this.text+="?":(this.text+=`?${String.fromCodePoint(t)}`,this.state=25);this.xmlDeclPossible=!1}sXMLDeclNameStart(){const e=this.skipSpaces();e!==C?e!==b&&(this.state=28,this.name=String.fromCodePoint(e)):this.state=E}sXMLDeclName(){const e=this.captureTo(O);if(e===C)return this.state=E,this.name+=this.text,this.text="",void this.fail("XML declaration is incomplete.");if(o(e)||e===w){if(this.name+=this.text,this.text="",!this.xmlDeclExpects.includes(this.name))switch(this.name.length){case 0:this.fail("did not expect any more name/value pairs.");break;case 1:this.fail(`expected the name ${this.xmlDeclExpects[0]}.`);break;default:this.fail(`expected one of ${this.xmlDeclExpects.join(", ")}`)}this.state=e===w?30:29}}sXMLDeclEq(){const e=this.getCodeNorm();if(e===C)return this.state=E,void this.fail("XML declaration is incomplete.");o(e)||(e!==w&&this.fail("value required."),this.state=30)}sXMLDeclValueStart(){const e=this.getCodeNorm();if(e===C)return this.state=E,void this.fail("XML declaration is incomplete.");o(e)||(N(e)?this.q=e:(this.fail("value must be quoted."),this.q=32),this.state=31)}sXMLDeclValue(){const e=this.captureTo([this.q,C]);if(e===C)return this.state=E,this.text="",void this.fail("XML declaration is incomplete.");if(e===b)return;const t=this.text;switch(this.text="",this.name){case"version":{this.xmlDeclExpects=["encoding","standalone"];const e=t;this.xmlDecl.version=e,/^1\.[0-9]+$/.test(e)?this.opt.forceXMLVersion||this.setXMLVersion(e):this.fail("version number must match /^1\\.[0-9]+$/.");break}case"encoding":/^[A-Za-z][A-Za-z0-9._-]*$/.test(t)||this.fail("encoding value must match /^[A-Za-z0-9][A-Za-z0-9._-]*$/."),this.xmlDeclExpects=["standalone"],this.xmlDecl.encoding=t;break;case"standalone":"yes"!==t&&"no"!==t&&this.fail('standalone value must match "yes" or "no".'),this.xmlDeclExpects=[],this.xmlDecl.standalone=t}this.name="",this.state=32}sXMLDeclSeparator(){const e=this.getCodeNorm();e!==C?(o(e)||(this.fail("whitespace required."),this.unget()),this.state=27):this.state=E}sXMLDeclEnding(){var e;this.getCodeNorm()===T?("xml"!==this.piTarget?this.fail("processing instructions are not allowed before root."):"version"!==this.name&&this.xmlDeclExpects.includes("version")&&this.fail("XML declaration must contain a version."),null===(e=this.xmldeclHandler)||void 0===e||e.call(this,this.xmlDecl),this.name="",this.piTarget=this.text="",this.state=x):this.fail("The character ? is disallowed anywhere in XML declarations."),this.xmlDeclPossible=!1}sOpenTag(){var e;const t=this.captureNameChars();if(t===b)return;const r=this.tag={name:this.name,attributes:Object.create(null)};switch(this.name="",this.xmlnsOpt&&(this.topNS=r.ns=Object.create(null)),null===(e=this.openTagStartHandler)||void 0===e||e.call(this,r),this.sawRoot=!0,!this.fragmentOpt&&this.closedRoot&&this.fail("documents may contain only one root."),t){case T:this.openTag();break;case 47:this.state=35;break;default:o(t)||this.fail("disallowed character in tag name."),this.state=36}}sOpenTagSlash(){this.getCode()===T?this.openSelfClosingTag():(this.fail("forward-slash in opening tag not followed by >."),this.state=36)}sAttrib(){const e=this.skipSpaces();e!==b&&(c(e)?(this.unget(),this.state=37):e===T?this.openTag():47===e?this.state=35:this.fail("disallowed character in attribute name."))}sAttribName(){const e=this.captureNameChars();e===w?this.state=39:o(e)?this.state=38:e===T?(this.fail("attribute without value."),this.pushAttrib(this.name,this.name),this.name=this.text="",this.openTag()):e!==b&&this.fail("disallowed character in attribute name.")}sAttribNameSawWhite(){const e=this.skipSpaces();switch(e){case b:return;case w:this.state=39;break;default:this.fail("attribute without value."),this.text="",this.name="",e===T?this.openTag():c(e)?(this.unget(),this.state=37):(this.fail("disallowed character in attribute name."),this.state=36)}}sAttribValue(){const e=this.getCodeNorm();N(e)?(this.q=e,this.state=40):o(e)||(this.fail("unquoted attribute value."),this.state=42,this.unget())}sAttribValueQuoted(){const{q:e,chunk:t}=this;let{i:r}=this;for(;;)switch(this.getCode()){case e:return this.pushAttrib(this.name,this.text+t.slice(r,this.prevI)),this.name=this.text="",this.q=null,void(this.state=41);case 38:return this.text+=t.slice(r,this.prevI),this.state=14,void(this.entityReturnState=40);case S:case k:case 9:this.text+=`${t.slice(r,this.prevI)} `,r=this.i;break;case D:return this.text+=t.slice(r,this.prevI),void this.fail("disallowed character.");case b:return void(this.text+=t.slice(r))}}sAttribValueClosed(){const e=this.getCodeNorm();o(e)?this.state=36:e===T?this.openTag():47===e?this.state=35:c(e)?(this.fail("no whitespace between attributes."),this.unget(),this.state=37):this.fail("disallowed character in attribute name.")}sAttribValueUnquoted(){const e=this.captureTo(R);switch(e){case 38:this.state=14,this.entityReturnState=42;break;case D:this.fail("disallowed character.");break;case b:break;default:this.text.includes("]]>")&&this.fail('the string "]]>" is disallowed in char data.'),this.pushAttrib(this.name,this.text),this.name=this.text="",e===T?this.openTag():this.state=36}}sCloseTag(){const e=this.captureNameChars();e===T?this.closeTag():o(e)?this.state=44:e!==b&&this.fail("disallowed character in closing tag.")}sCloseTagSawWhite(){switch(this.skipSpaces()){case T:this.closeTag();break;case b:break;default:this.fail("disallowed character in closing tag.")}}handleTextInRoot(){let{i:e,forbiddenState:t}=this;const{chunk:r,textHandler:n}=this;e:for(;;)switch(this.getCode()){case D:if(this.state=15,void 0!==n){const{text:t}=this,i=r.slice(e,this.prevI);0!==t.length?(n(t+i),this.text=""):0!==i.length&&n(i)}t=0;break e;case 38:this.state=14,this.entityReturnState=x,void 0!==n&&(this.text+=r.slice(e,this.prevI)),t=0;break e;case A:switch(t){case 0:t=1;break;case 1:t=2;break;case 2:break;default:throw new Error("impossible state")}break;case T:2===t&&this.fail('the string "]]>" is disallowed in char data.'),t=0;break;case k:void 0!==n&&(this.text+=`${r.slice(e,this.prevI)}\n`),e=this.i,t=0;break;case b:void 0!==n&&(this.text+=r.slice(e));break e;default:t=0}this.forbiddenState=t}handleTextOutsideRoot(){let{i:e}=this;const{chunk:t,textHandler:r}=this;let n=!1;e:for(;;){const i=this.getCode();switch(i){case D:if(this.state=15,void 0!==r){const{text:n}=this,i=t.slice(e,this.prevI);0!==n.length?(r(n+i),this.text=""):0!==i.length&&r(i)}break e;case 38:this.state=14,this.entityReturnState=x,void 0!==r&&(this.text+=t.slice(e,this.prevI)),n=!0;break e;case k:void 0!==r&&(this.text+=`${t.slice(e,this.prevI)}\n`),e=this.i;break;case b:void 0!==r&&(this.text+=t.slice(e));break e;default:o(i)||(n=!0)}}n&&(this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0))}pushAttribNS(e,t){var r;const{prefix:n,local:i}=this.qname(e),a={name:e,prefix:n,local:i,value:t};if(this.attribList.push(a),null===(r=this.attributeHandler)||void 0===r||r.call(this,a),"xmlns"===n){const e=t.trim();"1.0"===this.currentXMLVersion&&""===e&&this.fail("invalid attempt to undefine prefix in XML 1.0"),this.topNS[i]=e,M(this,i,e)}else if("xmlns"===e){const e=t.trim();this.topNS[""]=e,M(this,"",e)}}pushAttribPlain(e,t){var r;const n={name:e,value:t};this.attribList.push(n),null===(r=this.attributeHandler)||void 0===r||r.call(this,n)}end(){var e,t;this.sawRoot||this.fail("document must contain a root element.");const{tags:r}=this;for(;r.length>0;){const e=r.pop();this.fail(`unclosed tag: ${e.name}`)}0!==this.state&&this.state!==x&&this.fail("unexpected end.");const{text:n}=this;return 0!==n.length&&(null===(e=this.textHandler)||void 0===e||e.call(this,n),this.text=""),this._closed=!0,null===(t=this.endHandler)||void 0===t||t.call(this),this._init(),this}resolve(e){var t,r;let n=this.topNS[e];if(void 0!==n)return n;const{tags:i}=this;for(let t=i.length-1;t>=0;t--)if(n=i[t].ns[e],void 0!==n)return n;return n=this.ns[e],void 0!==n?n:null===(r=(t=this.opt).resolvePrefix)||void 0===r?void 0:r.call(t,e)}qname(e){const t=e.indexOf(":");if(-1===t)return{prefix:"",local:e};const r=e.slice(t+1),n=e.slice(0,t);return(""===n||""===r||r.includes(":"))&&this.fail(`malformed name: ${e}.`),{prefix:n,local:r}}processAttribsNS(){var e;const{attribList:t}=this,r=this.tag;{const{prefix:t,local:n}=this.qname(r.name);r.prefix=t,r.local=n;const i=r.uri=null!==(e=this.resolve(t))&&void 0!==e?e:"";""!==t&&("xmlns"===t&&this.fail('tags may not have "xmlns" as prefix.'),""===i&&(this.fail(`unbound namespace prefix: ${JSON.stringify(t)}.`),r.uri=t))}if(0===t.length)return;const{attributes:n}=r,i=new Set;for(const e of t){const{name:t,prefix:r,local:a}=e;let o,s;""===r?(o="xmlns"===t?h:"",s=t):(o=this.resolve(r),void 0===o&&(this.fail(`unbound namespace prefix: ${JSON.stringify(r)}.`),o=r),s=`{${o}}${a}`),i.has(s)&&this.fail(`duplicate attribute: ${s}.`),i.add(s),e.uri=o,n[t]=e}this.attribList=[]}processAttribsPlain(){const{attribList:e}=this,t=this.tag.attributes;for(const{name:r,value:n}of e)void 0!==t[r]&&this.fail(`duplicate attribute: ${r}.`),t[r]=n;this.attribList=[]}openTag(){var e;this.processAttribs();const{tags:t}=this,r=this.tag;r.isSelfClosing=!1,null===(e=this.openTagHandler)||void 0===e||e.call(this,r),t.push(r),this.state=x,this.name=""}openSelfClosingTag(){var e,t,r;this.processAttribs();const{tags:n}=this,i=this.tag;i.isSelfClosing=!0,null===(e=this.openTagHandler)||void 0===e||e.call(this,i),null===(t=this.closeTagHandler)||void 0===t||t.call(this,i);null===(this.tag=null!==(r=n[n.length-1])&&void 0!==r?r:null)&&(this.closedRoot=!0),this.state=x,this.name=""}closeTag(){const{tags:e,name:t}=this;if(this.state=x,this.name="",""===t)return this.fail("weird empty close tag."),void(this.text+="</>");const r=this.closeTagHandler;let n=e.length;for(;n-- >0;){const n=this.tag=e.pop();if(this.topNS=n.ns,null==r||r(n),n.name===t)break;this.fail("unexpected close tag.")}0===n?this.closedRoot=!0:n<0&&(this.fail(`unmatched closing tag: ${t}.`),this.text+=`</${t}>`)}parseEntity(e){if("#"!==e[0]){const t=this.ENTITIES[e];return void 0!==t?t:(this.fail(this.isName(e)?"undefined entity.":"disallowed character in entity name."),`&${e};`)}let t=NaN;return"x"===e[1]&&/^#x[0-9a-f]+$/i.test(e)?t=parseInt(e.slice(2),16):/^#[0-9]+$/.test(e)&&(t=parseInt(e.slice(1),10)),this.isChar(t)?String.fromCodePoint(t):(this.fail("malformed character entity."),`&${e};`)}}},42791:function(){!function(e,t){"use strict";if(!e.setImmediate){var r,n,i,a,o,s=1,c={},l=!1,u=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?r=function(e){process.nextTick((function(){f(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,r=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}}()?e.MessageChannel?((i=new MessageChannel).port1.onmessage=function(e){f(e.data)},r=function(e){i.port2.postMessage(e)}):u&&"onreadystatechange"in u.createElement("script")?(n=u.documentElement,r=function(e){var t=u.createElement("script");t.onreadystatechange=function(){f(e),t.onreadystatechange=null,n.removeChild(t),t=null},n.appendChild(t)}):r=function(e){setTimeout(f,0,e)}:(a="setImmediate$"+Math.random()+"$",o=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(a)&&f(+t.data.slice(a.length))},e.addEventListener?e.addEventListener("message",o,!1):e.attachEvent("onmessage",o),r=function(t){e.postMessage(a+t,"*")}),d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var i={callback:e,args:t};return c[s]=i,r(s),s++},d.clearImmediate=p}function p(e){delete c[e]}function f(e){if(l)setTimeout(f,0,e);else{var r=c[e];if(r){l=!0;try{!function(e){var r=e.callback,n=e.args;switch(n.length){case 0:r();break;case 1:r(n[0]);break;case 2:r(n[0],n[1]);break;case 3:r(n[0],n[1],n[2]);break;default:r.apply(t,n)}}(r)}finally{p(e),l=!1}}}}}("undefined"==typeof self?"undefined"==typeof global?this:global:self)},92345:(e,t,r)=>{e=r.nmd(e);var n,i=r(19665).SourceMapConsumer,a=r(16928);try{(n=r(79896)).existsSync&&n.readFileSync||(n=null)}catch(e){}var o=r(42746);function s(e,t){return e.require(t)}var c=!1,l=!1,u=!1,d="auto",p={},f={},m=/^data:application\/json[^,]+base64,/,g=[],_=[];function h(){return"browser"===d||"node"!==d&&("undefined"!=typeof window&&"function"==typeof XMLHttpRequest&&!(window.require&&window.module&&window.process&&"renderer"===window.process.type))}function y(e){return function(t){for(var r=0;r<e.length;r++){var n=e[r](t);if(n)return n}return null}}var v=y(g);function b(e,t){if(!e)return t;var r=a.dirname(e),n=/^\w+:\/\/[^\/]*/.exec(r),i=n?n[0]:"",o=r.slice(i.length);return i&&/^\/\w\:/.test(o)?(i+="/")+a.resolve(r.slice(i.length),t).replace(/\\/g,"/"):i+a.resolve(r.slice(i.length),t)}g.push((function(e){if(e=e.trim(),/^file:/.test(e)&&(e=e.replace(/file:\/\/\/(\w:)?/,(function(e,t){return t?"":"/"}))),e in p)return p[e];var t="";try{if(n)n.existsSync(e)&&(t=n.readFileSync(e,"utf8"));else{var r=new XMLHttpRequest;r.open("GET",e,!1),r.send(null),4===r.readyState&&200===r.status&&(t=r.responseText)}}catch(e){}return p[e]=t}));var k=y(_);function x(e){var t=f[e.source];if(!t){var r=k(e.source);r?(t=f[e.source]={url:r.url,map:new i(r.map)}).map.sourcesContent&&t.map.sources.forEach((function(e,r){var n=t.map.sourcesContent[r];if(n){var i=b(t.url,e);p[i]=n}})):t=f[e.source]={url:null,map:null}}if(t&&t.map&&"function"==typeof t.map.originalPositionFor){var n=t.map.originalPositionFor(e);if(null!==n.source)return n.source=b(t.url,n.source),n}return e}function E(e){var t=/^eval at ([^(]+) \((.+):(\d+):(\d+)\)$/.exec(e);if(t){var r=x({source:t[2],line:+t[3],column:t[4]-1});return"eval at "+t[1]+" ("+r.source+":"+r.line+":"+(r.column+1)+")"}return(t=/^eval at ([^(]+) \((.+)\)$/.exec(e))?"eval at "+t[1]+" ("+E(t[2])+")":e}function S(){var e,t="";if(this.isNative())t="native";else{!(e=this.getScriptNameOrSourceURL())&&this.isEval()&&(t=this.getEvalOrigin(),t+=", "),t+=e||"<anonymous>";var r=this.getLineNumber();if(null!=r){t+=":"+r;var n=this.getColumnNumber();n&&(t+=":"+n)}}var i="",a=this.getFunctionName(),o=!0,s=this.isConstructor();if(!(this.isToplevel()||s)){var c=this.getTypeName();"[object Object]"===c&&(c="null");var l=this.getMethodName();a?(c&&0!=a.indexOf(c)&&(i+=c+"."),i+=a,l&&a.indexOf("."+l)!=a.length-l.length-1&&(i+=" [as "+l+"]")):i+=c+"."+(l||"<anonymous>")}else s?i+="new "+(a||"<anonymous>"):a?i+=a:(i+=t,o=!1);return o&&(i+=" ("+t+")"),i}function D(e){var t={};return Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach((function(r){t[r]=/^(?:is|get)/.test(r)?function(){return e[r].call(e)}:e[r]})),t.toString=S,t}function w(e,t){if(void 0===t&&(t={nextPosition:null,curPosition:null}),e.isNative())return t.curPosition=null,e;var r=e.getFileName()||e.getScriptNameOrSourceURL();if(r){var n=e.getLineNumber(),i=e.getColumnNumber()-1,a=/^v(10\.1[6-9]|10\.[2-9][0-9]|10\.[0-9]{3,}|1[2-9]\d*|[2-9]\d|\d{3,}|11\.11)/.test("object"==typeof process&&null!==process?process.version:"")?0:62;1===n&&i>a&&!h()&&!e.isEval()&&(i-=a);var o=x({source:r,line:n,column:i});t.curPosition=o;var s=(e=D(e)).getFunctionName;return e.getFunctionName=function(){return null==t.nextPosition?s():t.nextPosition.name||s()},e.getFileName=function(){return o.source},e.getLineNumber=function(){return o.line},e.getColumnNumber=function(){return o.column+1},e.getScriptNameOrSourceURL=function(){return o.source},e}var c=e.isEval()&&e.getEvalOrigin();return c?(c=E(c),(e=D(e)).getEvalOrigin=function(){return c},e):e}function T(e,t){u&&(p={},f={});for(var r=(e.name||"Error")+": "+(e.message||""),n={nextPosition:null,curPosition:null},i=[],a=t.length-1;a>=0;a--)i.push("\n at "+w(t[a],n)),n.nextPosition=n.curPosition;return n.curPosition=n.nextPosition=null,r+i.reverse().join("")}function C(e){var t=/\n at [^(]+ \((.*):(\d+):(\d+)\)/.exec(e.stack);if(t){var r=t[1],i=+t[2],a=+t[3],o=p[r];if(!o&&n&&n.existsSync(r))try{o=n.readFileSync(r,"utf8")}catch(e){o=""}if(o){var s=o.split(/(?:\r\n|\r|\n)/)[i-1];if(s)return r+":"+i+"\n"+s+"\n"+new Array(a).join(" ")+"^"}}return null}function A(e){var t=C(e),r=function(){if("object"==typeof process&&null!==process)return process.stderr}();r&&r._handle&&r._handle.setBlocking&&r._handle.setBlocking(!0),t&&(console.error(),console.error(t)),console.error(e.stack),function(e){if("object"==typeof process&&null!==process&&"function"==typeof process.exit)process.exit(e)}(1)}_.push((function(e){var t,r=function(e){var t;if(h())try{var r=new XMLHttpRequest;r.open("GET",e,!1),r.send(null),t=4===r.readyState?r.responseText:null;var n=r.getResponseHeader("SourceMap")||r.getResponseHeader("X-SourceMap");if(n)return n}catch(e){}t=v(e);for(var i,a,o=/(?:\/\/[@#][\s]*sourceMappingURL=([^\s'"]+)[\s]*$)|(?:\/\*[@#][\s]*sourceMappingURL=([^\s*'"]+)[\s]*(?:\*\/)[\s]*$)/gm;a=o.exec(t);)i=a;return i?i[1]:null}(e);if(!r)return null;if(m.test(r)){var n=r.slice(r.indexOf(",")+1);t=o(n,"base64").toString(),r=e}else r=b(e,r),t=v(r);return t?{url:r,map:t}:null}));var N=g.slice(0),P=_.slice(0);t.wrapCallSite=w,t.getErrorSource=C,t.mapSourcePosition=x,t.retrieveSourceMap=k,t.install=function(t){if((t=t||{}).environment&&(d=t.environment,-1===["node","browser","auto"].indexOf(d)))throw new Error("environment "+d+" was unknown. Available options are {auto, browser, node}");if(t.retrieveFile&&(t.overrideRetrieveFile&&(g.length=0),g.unshift(t.retrieveFile)),t.retrieveSourceMap&&(t.overrideRetrieveSourceMap&&(_.length=0),_.unshift(t.retrieveSourceMap)),t.hookRequire&&!h()){var r=s(e,"module"),n=r.prototype._compile;n.__sourceMapSupport||(r.prototype._compile=function(e,t){return p[t]=e,f[t]=void 0,n.call(this,e,t)},r.prototype._compile.__sourceMapSupport=!0)}if(u||(u="emptyCacheBetweenOperations"in t&&t.emptyCacheBetweenOperations),c||(c=!0,Error.prepareStackTrace=T),!l){var i=!("handleUncaughtExceptions"in t)||t.handleUncaughtExceptions;try{!1===s(e,"worker_threads").isMainThread&&(i=!1)}catch(e){}i&&"object"==typeof process&&null!==process&&"function"==typeof process.on&&(l=!0,a=process.emit,process.emit=function(e){if("uncaughtException"===e){var t=arguments[1]&&arguments[1].stack,r=this.listeners(e).length>0;if(t&&!r)return A(arguments[1])}return a.apply(this,arguments)})}var a},t.resetRetrieveHandlers=function(){g.length=0,_.length=0,g=N.slice(0),_=P.slice(0),k=y(_),v=y(g)}},80735:(e,t,r)=>{var n=r(90251),i=Object.prototype.hasOwnProperty,a="undefined"!=typeof Map;function o(){this._array=[],this._set=a?new Map:Object.create(null)}o.fromArray=function(e,t){for(var r=new o,n=0,i=e.length;n<i;n++)r.add(e[n],t);return r},o.prototype.size=function(){return a?this._set.size:Object.getOwnPropertyNames(this._set).length},o.prototype.add=function(e,t){var r=a?e:n.toSetString(e),o=a?this.has(e):i.call(this._set,r),s=this._array.length;o&&!t||this._array.push(e),o||(a?this._set.set(e,s):this._set[r]=s)},o.prototype.has=function(e){if(a)return this._set.has(e);var t=n.toSetString(e);return i.call(this._set,t)},o.prototype.indexOf=function(e){if(a){var t=this._set.get(e);if(t>=0)return t}else{var r=n.toSetString(e);if(i.call(this._set,r))return this._set[r]}throw new Error('"'+e+'" is not in the set.')},o.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)},o.prototype.toArray=function(){return this._array.slice()},t.C=o},17092:(e,t,r)=>{var n=r(32364);t.encode=function(e){var t,r="",i=function(e){return e<0?1+(-e<<1):0+(e<<1)}(e);do{t=31&i,(i>>>=5)>0&&(t|=32),r+=n.encode(t)}while(i>0);return r},t.decode=function(e,t,r){var i,a,o,s,c=e.length,l=0,u=0;do{if(t>=c)throw new Error("Expected more digits in base 64 VLQ value.");if(-1===(a=n.decode(e.charCodeAt(t++))))throw new Error("Invalid base64 digit: "+e.charAt(t-1));i=!!(32&a),l+=(a&=31)<<u,u+=5}while(i);r.value=(s=(o=l)>>1,1&~o?s:-s),r.rest=t}},32364:(e,t)=>{var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");t.encode=function(e){if(0<=e&&e<r.length)return r[e];throw new TypeError("Must be between 0 and 63: "+e)},t.decode=function(e){return 65<=e&&e<=90?e-65:97<=e&&e<=122?e-97+26:48<=e&&e<=57?e-48+52:43==e?62:47==e?63:-1}},41163:(e,t)=>{function r(e,n,i,a,o,s){var c=Math.floor((n-e)/2)+e,l=o(i,a[c],!0);return 0===l?c:l>0?n-c>1?r(c,n,i,a,o,s):s==t.LEAST_UPPER_BOUND?n<a.length?n:-1:c:c-e>1?r(e,c,i,a,o,s):s==t.LEAST_UPPER_BOUND?c:e<0?-1:e}t.GREATEST_LOWER_BOUND=1,t.LEAST_UPPER_BOUND=2,t.search=function(e,n,i,a){if(0===n.length)return-1;var o=r(-1,n.length,e,n,i,a||t.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&0===i(n[o],n[o-1],!0);)--o;return o}},43302:(e,t,r)=>{var n=r(90251);function i(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}i.prototype.unsortedForEach=function(e,t){this._array.forEach(e,t)},i.prototype.add=function(e){var t,r,i,a,o,s;t=this._last,r=e,i=t.generatedLine,a=r.generatedLine,o=t.generatedColumn,s=r.generatedColumn,a>i||a==i&&s>=o||n.compareByGeneratedPositionsInflated(t,r)<=0?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},i.prototype.toArray=function(){return this._sorted||(this._array.sort(n.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},t.P=i},43801:(e,t)=>{function r(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function n(e,t,i,a){if(i<a){var o=i-1;r(e,(u=i,d=a,Math.round(u+Math.random()*(d-u))),a);for(var s=e[a],c=i;c<a;c++)t(e[c],s)<=0&&r(e,o+=1,c);r(e,o+1,c);var l=o+1;n(e,t,i,l-1),n(e,t,l+1,a)}var u,d}t.g=function(e,t){n(e,t,0,e.length-1)}},47446:(e,t,r)=>{var n=r(90251),i=r(41163),a=r(80735).C,o=r(17092),s=r(43801).g;function c(e,t){var r=e;return"string"==typeof e&&(r=n.parseSourceMapInput(e)),null!=r.sections?new d(r,t):new l(r,t)}function l(e,t){var r=e;"string"==typeof e&&(r=n.parseSourceMapInput(e));var i=n.getArg(r,"version"),o=n.getArg(r,"sources"),s=n.getArg(r,"names",[]),c=n.getArg(r,"sourceRoot",null),l=n.getArg(r,"sourcesContent",null),u=n.getArg(r,"mappings"),d=n.getArg(r,"file",null);if(i!=this._version)throw new Error("Unsupported version: "+i);c&&(c=n.normalize(c)),o=o.map(String).map(n.normalize).map((function(e){return c&&n.isAbsolute(c)&&n.isAbsolute(e)?n.relative(c,e):e})),this._names=a.fromArray(s.map(String),!0),this._sources=a.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map((function(e){return n.computeSourceURL(c,e,t)})),this.sourceRoot=c,this.sourcesContent=l,this._mappings=u,this._sourceMapURL=t,this.file=d}function u(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}function d(e,t){var r=e;"string"==typeof e&&(r=n.parseSourceMapInput(e));var i=n.getArg(r,"version"),o=n.getArg(r,"sections");if(i!=this._version)throw new Error("Unsupported version: "+i);this._sources=new a,this._names=new a;var s={line:-1,column:0};this._sections=o.map((function(e){if(e.url)throw new Error("Support for url field in sections not implemented.");var r=n.getArg(e,"offset"),i=n.getArg(r,"line"),a=n.getArg(r,"column");if(i<s.line||i===s.line&&a<s.column)throw new Error("Section offsets must be ordered and non-overlapping.");return s=r,{generatedOffset:{generatedLine:i+1,generatedColumn:a+1},consumer:new c(n.getArg(e,"map"),t)}}))}c.fromSourceMap=function(e,t){return l.fromSourceMap(e,t)},c.prototype._version=3,c.prototype.__generatedMappings=null,Object.defineProperty(c.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),c.prototype.__originalMappings=null,Object.defineProperty(c.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),c.prototype._charIsMappingSeparator=function(e,t){var r=e.charAt(t);return";"===r||","===r},c.prototype._parseMappings=function(e,t){throw new Error("Subclasses must implement _parseMappings")},c.GENERATED_ORDER=1,c.ORIGINAL_ORDER=2,c.GREATEST_LOWER_BOUND=1,c.LEAST_UPPER_BOUND=2,c.prototype.eachMapping=function(e,t,r){var i,a=t||null;switch(r||c.GENERATED_ORDER){case c.GENERATED_ORDER:i=this._generatedMappings;break;case c.ORIGINAL_ORDER:i=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var o=this.sourceRoot;i.map((function(e){var t=null===e.source?null:this._sources.at(e.source);return{source:t=n.computeSourceURL(o,t,this._sourceMapURL),generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:null===e.name?null:this._names.at(e.name)}}),this).forEach(e,a)},c.prototype.allGeneratedPositionsFor=function(e){var t=n.getArg(e,"line"),r={source:n.getArg(e,"source"),originalLine:t,originalColumn:n.getArg(e,"column",0)};if(r.source=this._findSourceIndex(r.source),r.source<0)return[];var a=[],o=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",n.compareByOriginalPositions,i.LEAST_UPPER_BOUND);if(o>=0){var s=this._originalMappings[o];if(void 0===e.column)for(var c=s.originalLine;s&&s.originalLine===c;)a.push({line:n.getArg(s,"generatedLine",null),column:n.getArg(s,"generatedColumn",null),lastColumn:n.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++o];else for(var l=s.originalColumn;s&&s.originalLine===t&&s.originalColumn==l;)a.push({line:n.getArg(s,"generatedLine",null),column:n.getArg(s,"generatedColumn",null),lastColumn:n.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++o]}return a},t.SourceMapConsumer=c,l.prototype=Object.create(c.prototype),l.prototype.consumer=c,l.prototype._findSourceIndex=function(e){var t,r=e;if(null!=this.sourceRoot&&(r=n.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(t=0;t<this._absoluteSources.length;++t)if(this._absoluteSources[t]==e)return t;return-1},l.fromSourceMap=function(e,t){var r=Object.create(l.prototype),i=r._names=a.fromArray(e._names.toArray(),!0),o=r._sources=a.fromArray(e._sources.toArray(),!0);r.sourceRoot=e._sourceRoot,r.sourcesContent=e._generateSourcesContent(r._sources.toArray(),r.sourceRoot),r.file=e._file,r._sourceMapURL=t,r._absoluteSources=r._sources.toArray().map((function(e){return n.computeSourceURL(r.sourceRoot,e,t)}));for(var c=e._mappings.toArray().slice(),d=r.__generatedMappings=[],p=r.__originalMappings=[],f=0,m=c.length;f<m;f++){var g=c[f],_=new u;_.generatedLine=g.generatedLine,_.generatedColumn=g.generatedColumn,g.source&&(_.source=o.indexOf(g.source),_.originalLine=g.originalLine,_.originalColumn=g.originalColumn,g.name&&(_.name=i.indexOf(g.name)),p.push(_)),d.push(_)}return s(r.__originalMappings,n.compareByOriginalPositions),r},l.prototype._version=3,Object.defineProperty(l.prototype,"sources",{get:function(){return this._absoluteSources.slice()}}),l.prototype._parseMappings=function(e,t){for(var r,i,a,c,l,d=1,p=0,f=0,m=0,g=0,_=0,h=e.length,y=0,v={},b={},k=[],x=[];y<h;)if(";"===e.charAt(y))d++,y++,p=0;else if(","===e.charAt(y))y++;else{for((r=new u).generatedLine=d,c=y;c<h&&!this._charIsMappingSeparator(e,c);c++);if(a=v[i=e.slice(y,c)])y+=i.length;else{for(a=[];y<c;)o.decode(e,y,b),l=b.value,y=b.rest,a.push(l);if(2===a.length)throw new Error("Found a source, but no line and column");if(3===a.length)throw new Error("Found a source and line, but no column");v[i]=a}r.generatedColumn=p+a[0],p=r.generatedColumn,a.length>1&&(r.source=g+a[1],g+=a[1],r.originalLine=f+a[2],f=r.originalLine,r.originalLine+=1,r.originalColumn=m+a[3],m=r.originalColumn,a.length>4&&(r.name=_+a[4],_+=a[4])),x.push(r),"number"==typeof r.originalLine&&k.push(r)}s(x,n.compareByGeneratedPositionsDeflated),this.__generatedMappings=x,s(k,n.compareByOriginalPositions),this.__originalMappings=k},l.prototype._findMapping=function(e,t,r,n,a,o){if(e[r]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[r]);if(e[n]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[n]);return i.search(e,t,a,o)},l.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var r=this._generatedMappings[e+1];if(t.generatedLine===r.generatedLine){t.lastGeneratedColumn=r.generatedColumn-1;continue}}t.lastGeneratedColumn=1/0}},l.prototype.originalPositionFor=function(e){var t={generatedLine:n.getArg(e,"line"),generatedColumn:n.getArg(e,"column")},r=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",n.compareByGeneratedPositionsDeflated,n.getArg(e,"bias",c.GREATEST_LOWER_BOUND));if(r>=0){var i=this._generatedMappings[r];if(i.generatedLine===t.generatedLine){var a=n.getArg(i,"source",null);null!==a&&(a=this._sources.at(a),a=n.computeSourceURL(this.sourceRoot,a,this._sourceMapURL));var o=n.getArg(i,"name",null);return null!==o&&(o=this._names.at(o)),{source:a,line:n.getArg(i,"originalLine",null),column:n.getArg(i,"originalColumn",null),name:o}}}return{source:null,line:null,column:null,name:null}},l.prototype.hasContentsOfAllSources=function(){return!!this.sourcesContent&&(this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some((function(e){return null==e})))},l.prototype.sourceContentFor=function(e,t){if(!this.sourcesContent)return null;var r=this._findSourceIndex(e);if(r>=0)return this.sourcesContent[r];var i,a=e;if(null!=this.sourceRoot&&(a=n.relative(this.sourceRoot,a)),null!=this.sourceRoot&&(i=n.urlParse(this.sourceRoot))){var o=a.replace(/^file:\/\//,"");if("file"==i.scheme&&this._sources.has(o))return this.sourcesContent[this._sources.indexOf(o)];if((!i.path||"/"==i.path)&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(t)return null;throw new Error('"'+a+'" is not in the SourceMap.')},l.prototype.generatedPositionFor=function(e){var t=n.getArg(e,"source");if((t=this._findSourceIndex(t))<0)return{line:null,column:null,lastColumn:null};var r={source:t,originalLine:n.getArg(e,"line"),originalColumn:n.getArg(e,"column")},i=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",n.compareByOriginalPositions,n.getArg(e,"bias",c.GREATEST_LOWER_BOUND));if(i>=0){var a=this._originalMappings[i];if(a.source===r.source)return{line:n.getArg(a,"generatedLine",null),column:n.getArg(a,"generatedColumn",null),lastColumn:n.getArg(a,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},d.prototype=Object.create(c.prototype),d.prototype.constructor=c,d.prototype._version=3,Object.defineProperty(d.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var r=0;r<this._sections[t].consumer.sources.length;r++)e.push(this._sections[t].consumer.sources[r]);return e}}),d.prototype.originalPositionFor=function(e){var t={generatedLine:n.getArg(e,"line"),generatedColumn:n.getArg(e,"column")},r=i.search(t,this._sections,(function(e,t){var r=e.generatedLine-t.generatedOffset.generatedLine;return r||e.generatedColumn-t.generatedOffset.generatedColumn})),a=this._sections[r];return a?a.consumer.originalPositionFor({line:t.generatedLine-(a.generatedOffset.generatedLine-1),column:t.generatedColumn-(a.generatedOffset.generatedLine===t.generatedLine?a.generatedOffset.generatedColumn-1:0),bias:e.bias}):{source:null,line:null,column:null,name:null}},d.prototype.hasContentsOfAllSources=function(){return this._sections.every((function(e){return e.consumer.hasContentsOfAllSources()}))},d.prototype.sourceContentFor=function(e,t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r].consumer.sourceContentFor(e,!0);if(n)return n}if(t)return null;throw new Error('"'+e+'" is not in the SourceMap.')},d.prototype.generatedPositionFor=function(e){for(var t=0;t<this._sections.length;t++){var r=this._sections[t];if(-1!==r.consumer._findSourceIndex(n.getArg(e,"source"))){var i=r.consumer.generatedPositionFor(e);if(i)return{line:i.line+(r.generatedOffset.generatedLine-1),column:i.column+(r.generatedOffset.generatedLine===i.line?r.generatedOffset.generatedColumn-1:0)}}}return{line:null,column:null}},d.prototype._parseMappings=function(e,t){this.__generatedMappings=[],this.__originalMappings=[];for(var r=0;r<this._sections.length;r++)for(var i=this._sections[r],a=i.consumer._generatedMappings,o=0;o<a.length;o++){var c=a[o],l=i.consumer._sources.at(c.source);l=n.computeSourceURL(i.consumer.sourceRoot,l,this._sourceMapURL),this._sources.add(l),l=this._sources.indexOf(l);var u=null;c.name&&(u=i.consumer._names.at(c.name),this._names.add(u),u=this._names.indexOf(u));var d={source:l,generatedLine:c.generatedLine+(i.generatedOffset.generatedLine-1),generatedColumn:c.generatedColumn+(i.generatedOffset.generatedLine===c.generatedLine?i.generatedOffset.generatedColumn-1:0),originalLine:c.originalLine,originalColumn:c.originalColumn,name:u};this.__generatedMappings.push(d),"number"==typeof d.originalLine&&this.__originalMappings.push(d)}s(this.__generatedMappings,n.compareByGeneratedPositionsDeflated),s(this.__originalMappings,n.compareByOriginalPositions)}},54041:(e,t,r)=>{var n=r(17092),i=r(90251),a=r(80735).C,o=r(43302).P;function s(e){e||(e={}),this._file=i.getArg(e,"file",null),this._sourceRoot=i.getArg(e,"sourceRoot",null),this._skipValidation=i.getArg(e,"skipValidation",!1),this._sources=new a,this._names=new a,this._mappings=new o,this._sourcesContents=null}s.prototype._version=3,s.fromSourceMap=function(e){var t=e.sourceRoot,r=new s({file:e.file,sourceRoot:t});return e.eachMapping((function(e){var n={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(n.source=e.source,null!=t&&(n.source=i.relative(t,n.source)),n.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(n.name=e.name)),r.addMapping(n)})),e.sources.forEach((function(n){var a=n;null!==t&&(a=i.relative(t,n)),r._sources.has(a)||r._sources.add(a);var o=e.sourceContentFor(n);null!=o&&r.setSourceContent(n,o)})),r},s.prototype.addMapping=function(e){var t=i.getArg(e,"generated"),r=i.getArg(e,"original",null),n=i.getArg(e,"source",null),a=i.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,r,n,a),null!=n&&(n=String(n),this._sources.has(n)||this._sources.add(n)),null!=a&&(a=String(a),this._names.has(a)||this._names.add(a)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=r&&r.line,originalColumn:null!=r&&r.column,source:n,name:a})},s.prototype.setSourceContent=function(e,t){var r=e;null!=this._sourceRoot&&(r=i.relative(this._sourceRoot,r)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[i.toSetString(r)]=t):this._sourcesContents&&(delete this._sourcesContents[i.toSetString(r)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},s.prototype.applySourceMap=function(e,t,r){var n=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');n=e.file}var o=this._sourceRoot;null!=o&&(n=i.relative(o,n));var s=new a,c=new a;this._mappings.unsortedForEach((function(t){if(t.source===n&&null!=t.originalLine){var a=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=a.source&&(t.source=a.source,null!=r&&(t.source=i.join(r,t.source)),null!=o&&(t.source=i.relative(o,t.source)),t.originalLine=a.line,t.originalColumn=a.column,null!=a.name&&(t.name=a.name))}var l=t.source;null==l||s.has(l)||s.add(l);var u=t.name;null==u||c.has(u)||c.add(u)}),this),this._sources=s,this._names=c,e.sources.forEach((function(t){var n=e.sourceContentFor(t);null!=n&&(null!=r&&(t=i.join(r,t)),null!=o&&(t=i.relative(o,t)),this.setSourceContent(t,n))}),this)},s.prototype._validateMapping=function(e,t,r,n){if(t&&"number"!=typeof t.line&&"number"!=typeof t.column)throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||r||n)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&r))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:r,original:t,name:n}))},s.prototype._serializeMappings=function(){for(var e,t,r,a,o=0,s=1,c=0,l=0,u=0,d=0,p="",f=this._mappings.toArray(),m=0,g=f.length;m<g;m++){if(e="",(t=f[m]).generatedLine!==s)for(o=0;t.generatedLine!==s;)e+=";",s++;else if(m>0){if(!i.compareByGeneratedPositionsInflated(t,f[m-1]))continue;e+=","}e+=n.encode(t.generatedColumn-o),o=t.generatedColumn,null!=t.source&&(a=this._sources.indexOf(t.source),e+=n.encode(a-d),d=a,e+=n.encode(t.originalLine-1-l),l=t.originalLine-1,e+=n.encode(t.originalColumn-c),c=t.originalColumn,null!=t.name&&(r=this._names.indexOf(t.name),e+=n.encode(r-u),u=r)),p+=e}return p},s.prototype._generateSourcesContent=function(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=i.relative(t,e));var r=i.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null}),this)},s.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},s.prototype.toString=function(){return JSON.stringify(this.toJSON())},t.x=s},1683:(e,t,r)=>{var n=r(54041).x,i=r(90251),a=/(\r?\n)/,o="$$$isSourceNode$$$";function s(e,t,r,n,i){this.children=[],this.sourceContents={},this.line=null==e?null:e,this.column=null==t?null:t,this.source=null==r?null:r,this.name=null==i?null:i,this[o]=!0,null!=n&&this.add(n)}s.fromStringWithSourceMap=function(e,t,r){var n=new s,o=e.split(a),c=0,l=function(){return e()+(e()||"");function e(){return c<o.length?o[c++]:void 0}},u=1,d=0,p=null;return t.eachMapping((function(e){if(null!==p){if(!(u<e.generatedLine)){var t=(r=o[c]||"").substr(0,e.generatedColumn-d);return o[c]=r.substr(e.generatedColumn-d),d=e.generatedColumn,f(p,t),void(p=e)}f(p,l()),u++,d=0}for(;u<e.generatedLine;)n.add(l()),u++;if(d<e.generatedColumn){var r=o[c]||"";n.add(r.substr(0,e.generatedColumn)),o[c]=r.substr(e.generatedColumn),d=e.generatedColumn}p=e}),this),c<o.length&&(p&&f(p,l()),n.add(o.splice(c).join(""))),t.sources.forEach((function(e){var a=t.sourceContentFor(e);null!=a&&(null!=r&&(e=i.join(r,e)),n.setSourceContent(e,a))})),n;function f(e,t){if(null===e||void 0===e.source)n.add(t);else{var a=r?i.join(r,e.source):e.source;n.add(new s(e.originalLine,e.originalColumn,a,t,e.name))}}},s.prototype.add=function(e){if(Array.isArray(e))e.forEach((function(e){this.add(e)}),this);else{if(!e[o]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);e&&this.children.push(e)}return this},s.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[o]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},s.prototype.walk=function(e){for(var t,r=0,n=this.children.length;r<n;r++)(t=this.children[r])[o]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},s.prototype.join=function(e){var t,r,n=this.children.length;if(n>0){for(t=[],r=0;r<n-1;r++)t.push(this.children[r]),t.push(e);t.push(this.children[r]),this.children=t}return this},s.prototype.replaceRight=function(e,t){var r=this.children[this.children.length-1];return r[o]?r.replaceRight(e,t):"string"==typeof r?this.children[this.children.length-1]=r.replace(e,t):this.children.push("".replace(e,t)),this},s.prototype.setSourceContent=function(e,t){this.sourceContents[i.toSetString(e)]=t},s.prototype.walkSourceContents=function(e){for(var t=0,r=this.children.length;t<r;t++)this.children[t][o]&&this.children[t].walkSourceContents(e);var n=Object.keys(this.sourceContents);for(t=0,r=n.length;t<r;t++)e(i.fromSetString(n[t]),this.sourceContents[n[t]])},s.prototype.toString=function(){var e="";return this.walk((function(t){e+=t})),e},s.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},r=new n(e),i=!1,a=null,o=null,s=null,c=null;return this.walk((function(e,n){t.code+=e,null!==n.source&&null!==n.line&&null!==n.column?(a===n.source&&o===n.line&&s===n.column&&c===n.name||r.addMapping({source:n.source,original:{line:n.line,column:n.column},generated:{line:t.line,column:t.column},name:n.name}),a=n.source,o=n.line,s=n.column,c=n.name,i=!0):i&&(r.addMapping({generated:{line:t.line,column:t.column}}),a=null,i=!1);for(var l=0,u=e.length;l<u;l++)10===e.charCodeAt(l)?(t.line++,t.column=0,l+1===u?(a=null,i=!1):i&&r.addMapping({source:n.source,original:{line:n.line,column:n.column},generated:{line:t.line,column:t.column},name:n.name})):t.column++})),this.walkSourceContents((function(e,t){r.setSourceContent(e,t)})),{code:t.code,map:r}}},90251:(e,t)=>{t.getArg=function(e,t,r){if(t in e)return e[t];if(3===arguments.length)return r;throw new Error('"'+t+'" is a required argument.')};var r=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,n=/^data:.+\,.+$/;function i(e){var t=e.match(r);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function a(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}function o(e){var r=e,n=i(e);if(n){if(!n.path)return e;r=n.path}for(var o,s=t.isAbsolute(r),c=r.split(/\/+/),l=0,u=c.length-1;u>=0;u--)"."===(o=c[u])?c.splice(u,1):".."===o?l++:l>0&&(""===o?(c.splice(u+1,l),l=0):(c.splice(u,2),l--));return""===(r=c.join("/"))&&(r=s?"/":"."),n?(n.path=r,a(n)):r}function s(e,t){""===e&&(e="."),""===t&&(t=".");var r=i(t),s=i(e);if(s&&(e=s.path||"/"),r&&!r.scheme)return s&&(r.scheme=s.scheme),a(r);if(r||t.match(n))return t;if(s&&!s.host&&!s.path)return s.host=t,a(s);var c="/"===t.charAt(0)?t:o(e.replace(/\/+$/,"")+"/"+t);return s?(s.path=c,a(s)):c}t.urlParse=i,t.urlGenerate=a,t.normalize=o,t.join=s,t.isAbsolute=function(e){return"/"===e.charAt(0)||r.test(e)},t.relative=function(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var r=0;0!==t.indexOf(e+"/");){var n=e.lastIndexOf("/");if(n<0)return t;if((e=e.slice(0,n)).match(/^([^\/]+:\/)?\/*$/))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)};var c=!("__proto__"in Object.create(null));function l(e){return e}function u(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var r=t-10;r>=0;r--)if(36!==e.charCodeAt(r))return!1;return!0}function d(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}t.toSetString=c?l:function(e){return u(e)?"$"+e:e},t.fromSetString=c?l:function(e){return u(e)?e.slice(1):e},t.compareByOriginalPositions=function(e,t,r){var n=d(e.source,t.source);return 0!==n||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)||r||0!==(n=e.generatedColumn-t.generatedColumn)||0!==(n=e.generatedLine-t.generatedLine)?n:d(e.name,t.name)},t.compareByGeneratedPositionsDeflated=function(e,t,r){var n=e.generatedLine-t.generatedLine;return 0!==n||0!==(n=e.generatedColumn-t.generatedColumn)||r||0!==(n=d(e.source,t.source))||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)?n:d(e.name,t.name)},t.compareByGeneratedPositionsInflated=function(e,t){var r=e.generatedLine-t.generatedLine;return 0!==r||0!==(r=e.generatedColumn-t.generatedColumn)||0!==(r=d(e.source,t.source))||0!==(r=e.originalLine-t.originalLine)||0!==(r=e.originalColumn-t.originalColumn)?r:d(e.name,t.name)},t.parseSourceMapInput=function(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))},t.computeSourceURL=function(e,t,r){if(t=t||"",e&&("/"!==e[e.length-1]&&"/"!==t[0]&&(e+="/"),t=e+t),r){var n=i(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var c=n.path.lastIndexOf("/");c>=0&&(n.path=n.path.substring(0,c+1))}t=s(a(n),t)}return o(t)}},19665:(e,t,r)=>{r(54041).x,t.SourceMapConsumer=r(47446).SourceMapConsumer,r(1683)},83141:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=l,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=u,this.end=d,t=3;break;default:return this.write=p,void(this.end=f)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function u(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function p(e){return e.toString(this.encoding)}function f(e){return e&&e.length?this.write(e):""}t.I=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<e.length?t?t+this.text(e,r):this.text(e,r):t||""},a.prototype.end=function(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"�":t},a.prototype.text=function(e,t){var r=function(e,t,r){var n=t.length-1;if(n<r)return 0;var i=o(t[n]);if(i>=0)return i>0&&(e.lastNeed=i-1),i;if(--n<r||-2===i)return 0;if(i=o(t[n]),i>=0)return i>0&&(e.lastNeed=i-2),i;if(--n<r||-2===i)return 0;if(i=o(t[n]),i>=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},35083:(e,t,r)=>{ -/*! - * Tmp - * - * Copyright (c) 2011-2017 KARASZI Istvan <github@spam.raszi.hu> - * - * MIT Licensed - */ -const n=r(79896),i=r(70857),a=r(16928),o=r(76982),s={fs:n.constants,os:i.constants},c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",l=/XXXXXX/,u=3,d=(s.O_CREAT||s.fs.O_CREAT)|(s.O_EXCL||s.fs.O_EXCL)|(s.O_RDWR||s.fs.O_RDWR),p="win32"===i.platform(),f=s.EBADF||s.os.errno.EBADF,m=s.ENOENT||s.os.errno.ENOENT,g=[],_=n.rmdirSync.bind(n);let h=!1;function y(e,t){return n.rm(e,{recursive:!0},t)}function v(e){return n.rmSync(e,{recursive:!0})}function b(e,t){const r=A(e,t),i=r[0],a=r[1];try{P(i)}catch(e){return a(e)}let o=i.tries;!function e(){try{const t=N(i);n.stat(t,(function(r){if(!r)return o-- >0?e():a(new Error("Could not get a unique tmp filename, max tries reached "+t));a(null,t)}))}catch(e){a(e)}}()}function k(e){const t=A(e)[0];P(t);let r=t.tries;do{const e=N(t);try{n.statSync(e)}catch(t){return e}}while(r-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}function x(e,t){const r=function(e){if(e&&!O(e))return t(e);t()};0<=e[0]?n.close(e[0],(function(){n.unlink(e[1],r)})):n.unlink(e[1],r)}function E(e){let t=null;try{0<=e[0]&&n.closeSync(e[0])}catch(e){if(!(r=e,R(r,-f,"EBADF")||O(e)))throw e}finally{try{n.unlinkSync(e[1])}catch(e){O(e)||(t=e)}}var r;if(null!==t)throw t}function S(e,t,r,n){const i=w(E,[t,e],n),a=w(x,[t,e],n,i);return r.keep||g.unshift(i),n?i:a}function D(e,t,r){const i=t.unsafeCleanup?y:n.rmdir.bind(n),a=w(t.unsafeCleanup?v:_,e,r),o=w(i,e,r,a);return t.keep||g.unshift(a),r?a:o}function w(e,t,r,n){let i=!1;return function a(o){if(!i){const s=n||a,c=g.indexOf(s);return c>=0&&g.splice(c,1),i=!0,r||e===_||e===v?e(t):e(t,o||function(){})}}}function T(e){let t=[],r=null;try{r=o.randomBytes(e)}catch(t){r=o.pseudoRandomBytes(e)}for(var n=0;n<e;n++)t.push(c[r[n]%c.length]);return t.join("")}function C(e){return void 0===e}function A(e,t){if("function"==typeof e)return[{},e];if(C(e))return[{},t];const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=e[t];return[r,t]}function N(e){const t=e.tmpdir;if(!C(e.name))return a.join(t,e.dir,e.name);if(!C(e.template))return a.join(t,e.dir,e.template).replace(l,T(6));const r=[e.prefix?e.prefix:"tmp","-",process.pid,"-",T(12),e.postfix?"-"+e.postfix:""].join("");return a.join(t,e.dir,r)}function P(e){e.tmpdir=M(e);const t=e.tmpdir;if(C(e.name)||F(e.name,"name",t),C(e.dir)||F(e.dir,"dir",t),!C(e.template)&&(F(e.template,"template",t),!e.template.match(l)))throw new Error(`Invalid template, found "${e.template}".`);if(!C(e.tries)&&isNaN(e.tries)||e.tries<0)throw new Error(`Invalid tries, found "${e.tries}".`);var r;e.tries=C(e.name)?e.tries||u:1,e.keep=!!e.keep,e.detachDescriptor=!!e.detachDescriptor,e.discardDescriptor=!!e.discardDescriptor,e.unsafeCleanup=!!e.unsafeCleanup,e.dir=C(e.dir)?"":a.relative(t,I(e.dir,t)),e.template=C(e.template)?void 0:a.relative(t,I(e.template,t)),e.template=null===(r=e.template)||C(r)||!r.trim()?void 0:a.relative(e.dir,e.template),e.name=C(e.name)?void 0:e.name,e.prefix=C(e.prefix)?"":e.prefix,e.postfix=C(e.postfix)?"":e.postfix}function I(e,t){return e.startsWith(t)?a.resolve(e):a.resolve(a.join(t,e))}function F(e,t,r){if("name"===t){if(a.isAbsolute(e))throw new Error(`${t} option must not contain an absolute path, found "${e}".`);let r=a.basename(e);if(".."===r||"."===r||r!==e)throw new Error(`${t} option must not contain a path, found "${e}".`)}else{if(a.isAbsolute(e)&&!e.startsWith(r))throw new Error(`${t} option must be relative to "${r}", found "${e}".`);let n=I(e,r);if(!n.startsWith(r))throw new Error(`${t} option must be relative to "${r}", found "${n}".`)}}function O(e){return R(e,-m,"ENOENT")}function R(e,t,r){return p?e.code===r:e.code===r&&e.errno===t}function M(e){return a.resolve(e&&e.tmpdir||i.tmpdir())}process.addListener("exit",(function(){if(h)for(;g.length;)try{g[0]()}catch(e){}})),Object.defineProperty(e.exports,"tmpdir",{enumerable:!0,configurable:!1,get:function(){return M()}}),e.exports.dir=function(e,t){const r=A(e,t),i=r[0],a=r[1];b(i,(function(e,t){if(e)return a(e);n.mkdir(t,i.mode||448,(function(e){if(e)return a(e);a(null,t,D(t,i,!1))}))}))},e.exports.dirSync=function(e){const t=A(e)[0],r=k(t);return n.mkdirSync(r,t.mode||448),{name:r,removeCallback:D(r,t,!0)}},e.exports.file=function(e,t){const r=A(e,t),i=r[0],a=r[1];b(i,(function(e,t){if(e)return a(e);n.open(t,d,i.mode||384,(function(e,r){if(e)return a(e);if(i.discardDescriptor)return n.close(r,(function(e){return a(e,t,void 0,S(t,-1,i,!1))}));{const e=i.discardDescriptor||i.detachDescriptor;a(null,t,r,S(t,e?-1:r,i,!1))}}))}))},e.exports.fileSync=function(e){const t=A(e)[0],r=t.discardDescriptor||t.detachDescriptor,i=k(t);var a=n.openSync(i,d,t.mode||384);return t.discardDescriptor&&(n.closeSync(a),a=void 0),{name:i,fd:a,removeCallback:S(i,r?-1:a,t,!0)}},e.exports.tmpName=b,e.exports.tmpNameSync=k,e.exports.setGracefulCleanup=function(){h=!0}},36623:e=>{function t(e){if(!(this instanceof t))return new t(e);this.value=e}function r(e,t,r){var i=[],a=[],o=!0;return function e(s){var c=r?n(s):s,l={},u={node:c,node_:s,path:[].concat(i),parent:a.slice(-1)[0],key:i.slice(-1)[0],isRoot:0===i.length,level:i.length,circular:null,update:function(e){u.isRoot||(u.parent.node[u.key]=e),u.node=e},delete:function(){delete u.parent.node[u.key]},remove:function(){Array.isArray(u.parent.node)?u.parent.node.splice(u.key,1):delete u.parent.node[u.key]},before:function(e){l.before=e},after:function(e){l.after=e},pre:function(e){l.pre=e},post:function(e){l.post=e},stop:function(){o=!1}};if(!o)return u;if("object"==typeof c&&null!==c){u.isLeaf=0==Object.keys(c).length;for(var d=0;d<a.length;d++)if(a[d].node_===s){u.circular=a[d];break}}else u.isLeaf=!0;u.notLeaf=!u.isLeaf,u.notRoot=!u.isRoot;var p=t.call(u,u.node);if(void 0!==p&&u.update&&u.update(p),l.before&&l.before.call(u,u.node),"object"==typeof u.node&&null!==u.node&&!u.circular){a.push(u);var f=Object.keys(u.node);f.forEach((function(t,n){i.push(t),l.pre&&l.pre.call(u,u.node[t],t);var a=e(u.node[t]);r&&Object.hasOwnProperty.call(u.node,t)&&(u.node[t]=a.node),a.isLast=n==f.length-1,a.isFirst=0==n,l.post&&l.post.call(u,a),i.pop()})),a.pop()}return l.after&&l.after.call(u,u.node),u}(e).node}function n(e){var t;return"object"==typeof e&&null!==e?(t=Array.isArray(e)?[]:e instanceof Date?new Date(e):e instanceof Boolean?new Boolean(e):e instanceof Number?new Number(e):e instanceof String?new String(e):Object.create(Object.getPrototypeOf(e)),Object.keys(e).forEach((function(r){t[r]=e[r]})),t):e}e.exports=t,t.prototype.get=function(e){for(var t=this.value,r=0;r<e.length;r++){var n=e[r];if(!Object.hasOwnProperty.call(t,n)){t=void 0;break}t=t[n]}return t},t.prototype.set=function(e,t){for(var r=this.value,n=0;n<e.length-1;n++){var i=e[n];Object.hasOwnProperty.call(r,i)||(r[i]={}),r=r[i]}return r[e[n]]=t,t},t.prototype.map=function(e){return r(this.value,e,!0)},t.prototype.forEach=function(e){return this.value=r(this.value,e,!1),this.value},t.prototype.reduce=function(e,t){var r=1===arguments.length,n=r?this.value:t;return this.forEach((function(t){this.isRoot&&r||(n=e.call(this,n,t))})),n},t.prototype.deepEqual=function(e){if(1!==arguments.length)throw new Error("deepEqual requires exactly one object to compare against");var r=!0,n=e;return this.forEach((function(i){var a=function(){r=!1}.bind(this);if(!this.isRoot){if("object"!=typeof n)return a();n=n[this.key]}var o=n;this.post((function(){n=o}));var s=function(e){return Object.prototype.toString.call(e)};if(this.circular)t(e).get(this.circular.path)!==o&&a();else if(typeof o!=typeof i)a();else if(null===o||null===i||void 0===o||void 0===i)o!==i&&a();else if(o.__proto__!==i.__proto__)a();else if(o===i);else if("function"==typeof o)o instanceof RegExp?o.toString()!=i.toString()&&a():o!==i&&a();else if("object"==typeof o)if("[object Arguments]"===s(i)||"[object Arguments]"===s(o))s(o)!==s(i)&&a();else if(o instanceof Date||i instanceof Date)o instanceof Date&&i instanceof Date&&o.getTime()===i.getTime()||a();else{var c=Object.keys(o),l=Object.keys(i);if(c.length!==l.length)return a();for(var u=0;u<c.length;u++){var d=c[u];Object.hasOwnProperty.call(i,d)||a()}}})),r},t.prototype.paths=function(){var e=[];return this.forEach((function(t){e.push(this.path)})),e},t.prototype.nodes=function(){var e=[];return this.forEach((function(t){e.push(this.node)})),e},t.prototype.clone=function(){var e=[],t=[];return function r(i){for(var a=0;a<e.length;a++)if(e[a]===i)return t[a];if("object"==typeof i&&null!==i){var o=n(i);return e.push(i),t.push(o),Object.keys(i).forEach((function(e){o[e]=r(i[e])})),e.pop(),t.pop(),o}return i}(this.value)},Object.keys(t.prototype).forEach((function(e){t[e]=function(r){var n=[].slice.call(arguments,1),i=t(r);return i[e].apply(i,n)}}))},77926:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.toolNameMethod=t.joinNewMessage=t.joinOldMessage=t.Plugin=t.formatSet=t.formatType=t.toolNameSet=t.toolNameType=void 0;const i=n(r(16928)),a=n(r(79896)),o=r(35317),s=r(27944),c=r(40745),l=r(4e3),u=r(30871),d=r(17858),p=r(26499),f=r(40149),m=r(20043),g=r(40744),_=r(8136),h=r(12587),y=r(87191),v=r(22127),b=r(93333),k=r(80879),x=r(44791);var E,S;!function(e){e.COLLECT="collect",e.CHECK="check",e.CHECKONLINE="checkOnline",e.APICHANGECHECK="apiChangeCheck",e.DIFF="diff",e.LABELDETECTION="detection",e.COUNT="count"}(E=t.toolNameType||(t.toolNameType={})),t.toolNameSet=new Set(s.EnumUtils.enum2arr(E)),function(e){e.NULL="",e.JSON="json",e.EXCEL="excel",e.CHANGELOG="changelog"}(S=t.formatType||(t.formatType={})),t.formatSet=new Set(s.EnumUtils.enum2arr(S)),t.Plugin={pluginOptions:{name:"parser",version:"0.1.0",description:"Compare the parser the SDKS",commands:[{isRequiredOption:!0,options:[`-N,--tool-name <${[...t.toolNameSet]}>`,"tool name ","checkOnline"]},{isRequiredOption:!1,options:["-C,--collect-path <string>","collect api path","./api"]},{isRequiredOption:!1,options:["-F,--collect-file <string>","collect api file array",""]},{isRequiredOption:!1,options:["-L,--check-labels <string>","detection check labels",""]},{isRequiredOption:!1,options:["--isOH <string>","detection check labels",""]},{isRequiredOption:!1,options:["--path <string>","check api path, split with comma",""]},{isRequiredOption:!1,options:["--checker <string>","check api rule, split with comma","all"]},{isRequiredOption:!1,options:["--prId <string>","check api prId",""]},{isRequiredOption:!1,options:["--excel <string>","check api excel","false"]},{isRequiredOption:!1,options:["--old <string>","diff old sdk path","./api"]},{isRequiredOption:!1,options:["--new <string>","diff new sdk path","./api"]},{isRequiredOption:!1,options:["--old-version <string>","old sdk version","0"]},{isRequiredOption:!1,options:["--new-version <string>","new sdk version","0"]},{isRequiredOption:!1,options:["--output <string>","output file path","./"]},{isRequiredOption:!1,options:[`--format <${[...t.formatSet]}>`,"output file format","json"]},{isRequiredOption:!1,options:["--changelogUrl <string>","changelog url",""]},{isRequiredOption:!1,options:["--all <boolean>","is all sheet",""]}]},start:async function(e){const r=e.toolName,n=t.toolNameMethod.get(r);if(!n)return void l.LogUtil.i("CommandArgs","tool-name may use error name or don't have function,tool-name can use 'collect' or 'diff'");const i={toolName:r,collectPath:e.collectPath,collectFile:e.collectFile,checkLabels:e.checkLabels,isOH:e.isOH,path:e.path,checker:e.checker,prId:e.prId,old:e.old,new:e.new,oldVersion:e.oldVersion,newVersion:e.newVersion,output:e.output,format:e.format,changelogUrl:e.changelogUrl,excel:e.excel,all:e.all},a=n(i);!function(e,t,r){const n=t.format;let i=`${t.toolName}_${t.oldVersion}_${t.newVersion}.json`;if(!n)return;t.toolName===E.COUNT&&(i="api_kit_js.json");switch(n){case S.JSON:m.WriterHelper.JSONReporter(String(e[0]),t.output,i);break;case S.EXCEL:m.WriterHelper.ExcelReporter(e,t.output,`${t.toolName}.xlsx`,r,t);break;case S.CHANGELOG:m.WriterHelper.JSONReporter(String(e[0]),t.output,`${t.toolName}.json`)}}(a.data,i,a.callback)},stop:function(){l.LogUtil.i("commander","elapsed time: "+(Date.now()-D))}};let D=Date.now();function w(e,t,r,n){const i=t.addWorksheet(),a=new Set,o=k.FunctionUtils.readKitFile();i.name="JsApi",i.views=[{xSplit:1}],i.getRow(1).values=["模块名","类名","方法名","函数","类型","起始版本","废弃版本","syscap","错误码","是否为系统API","模型限制","权限","是否支持跨平台","是否支持卡片应用","是否为高阶API","装饰器","kit","文件路径","子系统","父节点类型","父节点API是否可选"];let s=2;e.forEach((e=>{const t=`${e.getHierarchicalRelations()},${e.getDefinedText()}`;a.has(t)||(i.getRow(s).values=[e.getPackageName(),e.getParentModuleName(),e.getApiName(),e.getDefinedText(),e.getApiType(),"-1"===e.getSince()?"":e.getSince(),"-1"===e.getDeprecatedVersion()?"":e.getDeprecatedVersion(),e.getSyscap(),"-1"===e.getErrorCodes().join()?"":e.getErrorCodes().join(),e.getApiLevel(),e.getModelLimitation(),e.getPermission(),e.getIsCrossPlatForm(),e.getIsForm(),e.getIsAutomicService(),e.getDecorators()?.join(),""===e.getKitInfo()?o.kitNameMap.get(e.getFilePath().replace(/\\/g,"/").replace("api/","")):e.getKitInfo(),e.getFilePath(),o.subsystemMap.get(e.getFilePath().replace(/\\/g,"/").replace("api/","")),e.getParentApiType(),e.getIsOptional()],s++,a.add(t))})),n?.all&&function(e,t){const r=t.addWorksheet(),n=new Set,i=k.FunctionUtils.readKitFile();r.name="JsApi定制版本",r.views=[{xSplit:1}],r.getRow(1).values=["模块名","类名","方法名","函数","类型","起始版本","废弃版本","syscap","错误码","是否为系统API","模型限制","权限","是否支持跨平台","是否支持卡片应用","是否为高阶API","装饰器","kit","文件路径","子系统","接口全路径"];let a=2;e.forEach((e=>{const t=`${e.getHierarchicalRelations()},${e.getDefinedText()}`;n.has(t)||(r.getRow(a).values=[e.getPackageName(),e.getParentModuleName(),e.getApiName(),e.getDefinedText(),e.getApiType(),"-1"===e.getSince()?"":e.getSince(),"-1"===e.getDeprecatedVersion()?"":e.getDeprecatedVersion(),e.getSyscap(),"-1"===e.getErrorCodes().join()?"":e.getErrorCodes().join(),e.getApiLevel(),e.getModelLimitation(),e.getPermission(),e.getIsCrossPlatForm(),e.getIsForm(),e.getIsAutomicService(),e.getDecorators()?.join(),""===e.getKitInfo()?i.kitNameMap.get(e.getFilePath().replace(/\\/g,"/").replace("api/","")):e.getKitInfo(),e.getFilePath(),i.subsystemMap.get(e.getFilePath().replace(/\\/g,"/").replace("api/","")),e.getHierarchicalRelations().replace(/\//g,"#").replace("api\\","")],a++,n.add(t))}))}(e,t)}function T(e,t){const r=t.addWorksheet();r.name="api数量",r.views=[{xSplit:1}],r.getRow(1).values=["子系统","kit","文件","api数量"],e.forEach(((e,t)=>{r.getRow(t+_.NumberConstant.LINE_IN_EXCEL).values=[e.getsubSystem(),e.getKitName(),e.getFilePath(),e.getApiNumber()]}))}function C(e,t,r,n){const i=new Set,a=k.FunctionUtils.readKitFile(),o=t.addWorksheet("api差异");o.views=[{xSplit:2}],o.getRow(1).values=["操作标记","差异项-旧版本","差异项-新版本","d.ts文件","归属子系统","kit","是否为系统API"],e.forEach(((e,t)=>{i.add(I(e));const r=e.getNewDtsName()?e.getNewDtsName():e.getOldDtsName();o.getRow(t+_.NumberConstant.LINE_IN_EXCEL).values=[f.diffTypeMap.get(e.getDiffType()),F(e),O(e),r.replace(/\\/g,"/"),a.subsystemMap.get(r.replace(/\\/g,"/").replace("api/","")),""===y.SyscapProcessorHelper.getSingleKitInfo(e)?a.kitNameMap.get(r.replace(/\\/g,"/").replace("api/","")):y.SyscapProcessorHelper.getSingleKitInfo(e),e.getIsSystemapi()]})),m.WriterHelper.MarkdownReporter.writeInMarkdown(e,r),n?.all&&function(e,t,r,n){const i=t.addWorksheet("api变更数量统计");i.views=[{xSplit:2}],i.getRow(1).values=["api名称","kit名称","归属子系统","是否是api","api类型","操作标记","变更类型","兼容性","变更次数","差异项-旧版本","差异项-新版本","兼容性列表","接口全路径","是否为系统API","是否为同名API"];let a=[];e.forEach((e=>{let t="";const i=new f.DiffNumberInfo;r.forEach((r=>{const a=r.getNewDtsName()?r.getNewDtsName():r.getOldDtsName(),o=""===y.SyscapProcessorHelper.getSingleKitInfo(r)?n.kitNameMap.get(a.replace(/\\/g,"/").replace("api/","")):y.SyscapProcessorHelper.getSingleKitInfo(r);e===I(r)&&(t=P(r),i.setAllDiffType(r.getDiffMessage()).setAllChangeType(f.apiChangeMap.get(r.getDiffType())).setOldDiffMessage(r.getOldDescription()).setNewDiffMessage(r.getNewDescription()).setAllCompatible(r.getIsCompatible()).setIsApi(!f.isNotApiSet.has(r.getApiType())).setKitName(o).setSubsystem(n.subsystemMap.get(a.replace(/\\/g,"/").replace("api/",""))).setApiName(r.getApiType()===x.ApiType.SOURCE_FILE?"SOURCEFILE":P(r)).setApiRelation(I(r).replace(/\,/g,"#").replace("api\\","")).setIsSystemapi(r.getIsSystemapi()).setApiType(r.getApiType()).setIsSameNameFunction(r.getIsSameNameFunction()))})),a.push(i)})),a=function(e,t){return t}(0,a),a.forEach(((e,t)=>{i.getRow(t+_.NumberConstant.LINE_IN_EXCEL).values=[e.getApiName(),e.getKitName(),e.getSubsystem(),e.getIsApi(),e.getApiType(),e.getAllDiffType().join(" #&# "),e.getAllChangeType().join(" #&# "),A(e),N(e),e.getOldDiffMessage().join(" #&# "),e.getNewDiffMessage().join(" #&# "),e.getAllCompatible().join(" #&# "),e.getApiRelation(),e.getIsSystemapi(),e.getIsSameNameFunction()]}))}(i,t,e,a)}function A(e){const t=new Set(e.getAllCompatible());let r=0,n=0;return 2===t.size?(r=1,n=1):t.has(!0)?r=1:t.has(!1)&&(n=1),`{\n "兼容性":${r},\n "非兼容性":${n}\n }`}function N(e){const t=new Set(e.getAllChangeType());let r=0,n=0,i=0,a=0,o=0,s=0;return t.has("API修改(原型修改)")&&s++,t.has("API修改(约束变化)")&&o++,(t.has("API修改(原型修改)")||t.has("API修改(约束变化)"))&&a++,t.has("API废弃")&&i++,t.has("API新增")&&r++,t.has("API删除")&&n++,`{\n "API新增": ${r},\n "API删除": ${n},\n "API废弃": ${i},\n "API修改": ${a},\n "API修改(原型修改)": ${s},\n "API修改(约束变化)": ${o}\n }`}function P(e){return""!==e.getNewApiName()?e.getNewApiName():e.getOldApiName()}function I(e){const t=e.getNewHierarchicalRelations();return t.length>0?t.join():e.getOldHierarchicalRelations().join()}function F(e){if(e.getDiffMessage()===f.diffTypeMap.get(f.ApiDiffType.ADD))return"NA";let t="";const r=e.getOldHierarchicalRelations(),n=e.getParentModuleName(r);return t="-1"!==e.getOldDescription()&&e.getOldDescription()?e.getOldDescription():"NA",e.getDiffType()===f.ApiDiffType.KIT_CHANGE?`${t}`:`类名:${n};\nAPI声明:${e.getOldApiDefinedText()}\n差异内容:${t}`}function O(e){if(e.getDiffMessage()===f.diffTypeMap.get(f.ApiDiffType.REDUCE))return"NA";let t="";const r=e.getNewHierarchicalRelations(),n=e.getParentModuleName(r);return t="-1"!==e.getNewDescription()&&e.getNewDescription()?e.getNewDescription():"NA",e.getDiffType()===f.ApiDiffType.KIT_CHANGE?`${t}`:`类名:${n};\nAPI声明:${e.getNewApiDefinedText()}\n差异内容:${t}`}t.joinOldMessage=F,t.joinNewMessage=O,t.toolNameMethod=new Map([[E.COLLECT,function(e){const t=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectPath);let r,n="";""!==e.collectFile&&(n=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectFile),d.parserParam.setSdkPath(n));try{r=c.FileUtils.isDirectory(t)?u.Parser.parseDir(t,n):u.Parser.parseFile(i.default.resolve(t,".."),t);const a=h.ApiStatisticsHelper.getApiStatisticsInfos(r);let o=[u.Parser.getParseResults(r)];if("excel"===e.format){const t=a.allApiStatisticsInfos;o=a.apiStatisticsInfos,t&&m.WriterHelper.ExcelReporter(t,e.output,`all_${e.toolName}.xlsx`,w)}return{data:o,callback:w}}catch(e){const t=e;return l.LogUtil.e("error collect",t.stack?t.stack:t.message),{data:[],callback:w}}}],[E.CHECK,function(){try{let e=[];const t=i.default.resolve(c.FileUtils.getBaseDirName(),"../mdFiles.txt");return a.default.existsSync(t)&&(e=b.CommonFunctions.getMdFiles(t)),g.LocalEntry.checkEntryLocal(e,["all"],"./result.json","","true"),{data:[]}}catch(e){const t=e;return l.LogUtil.e("error check",t.stack?t.stack:t.message),{data:[]}}}],[E.CHECKONLINE,function(e){e.format=S.NULL;try{return g.LocalEntry.checkEntryLocal(e.path.split(","),e.checker.split(","),e.output,e.prId,e.excel),{data:[]}}catch(e){const t=e;l.LogUtil.e("error check",t.stack?t.stack:t.message)}return{data:[]}}],[E.APICHANGECHECK,function(e){e.format=S.NULL;try{return g.LocalEntry.apiChangeCheckEntryLocal(e.prId,e.checker.split(","),e.output,e.excel),{data:[]}}catch(e){const t=e;l.LogUtil.e("error api change check",t.stack?t.stack:t.message)}return{data:[]}}],[E.DIFF,function(e){const t=i.default.resolve(c.FileUtils.getBaseDirName(),e.old),r=i.default.resolve(c.FileUtils.getBaseDirName(),e.new),n=a.default.statSync(t);let o=[];try{if(n.isDirectory()){const n=u.Parser.parseDir(t),i=u.Parser.parseDir(r);o=p.DiffHelper.diffSDK(n,i,e.all)}else{const n=u.Parser.parseFile(i.default.resolve(t,".."),t);u.Parser.cleanParserParamSDK();const a=u.Parser.parseFile(i.default.resolve(r,".."),r);o=p.DiffHelper.diffSDK(n,a,e.all)}let a=[];return a=e.format===S.JSON?[JSON.stringify(o,null,_.NumberConstant.INDENT_SPACE)]:o,{data:a,callback:C}}catch(e){const t=e;return l.LogUtil.e("error diff",t.stack?t.stack:t.message),{data:[],callback:C}}}],[E.LABELDETECTION,function(e){process.env.NEED_DETECTION="true",process.env.IS_OH=e.isOH,e.format=S.NULL;const t=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectPath);let r,n="";""!==e.collectFile&&(n=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectFile));let a=Buffer.from("");try{r=c.FileUtils.isDirectory(t)?u.Parser.parseDir(t,n):u.Parser.parseFile(i.default.resolve(t,".."),t);const s=u.Parser.getParseResults(r);m.WriterHelper.JSONReporter(s,i.default.dirname(e.output),"detection.json");let l="";l=`${i.default.resolve(c.FileUtils.getBaseDirName(),"./main.exe")} -N detection -L ${e.checkLabels} -P ${i.default.resolve(i.default.dirname(e.output),"detection.json")} -O ${i.default.resolve(e.output)}`,a=o.execSync(l,{timeout:12e4})}catch(e){const t=e;l.LogUtil.e("error collect",t.stack?t.stack:t.message)}finally{l.LogUtil.i("detection run over",a.toString())}return{data:[]}}],[E.COUNT,function(e){const t=i.default.resolve(c.FileUtils.getBaseDirName(),"../../api");let r,n="";""!==e.collectFile&&(n=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectFile));try{r=c.FileUtils.isDirectory(t)?u.Parser.parseDir(t,n):u.Parser.parseFile(i.default.resolve(t,".."),t);const a=h.ApiStatisticsHelper.getApiStatisticsInfos(r).apiStatisticsInfos,o=v.ApiCountHelper.countApi(a);let s=[];return s=e.format===S.JSON?[JSON.stringify(o,null,_.NumberConstant.INDENT_SPACE)]:o,{data:s,callback:T}}catch(e){const t=e;return l.LogUtil.e("error count",t.stack?t.stack:t.message),{data:[],callback:T}}}]])},11162:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getToolConfiguration=void 0;const n=r(77926);t.getToolConfiguration=function(){return{plugins:[n.Plugin]}}},20043:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WriterHelper=void 0;const i=n(r(6752)),a=n(r(16928)),o=n(r(79896)),s=r(4e3),c=r(77926),l=r(40149),u=r(87191);!function(e){e.JSONReporter=function(e,t,r){const n=a.default.resolve(t,r);o.default.writeFileSync(n,e),s.LogUtil.i("JSONReporter",`report is in ${n}`)},e.ExcelReporter=async function(e,t,r,n,c){const l=new i.default.Workbook;"function"==typeof n&&n(e,l,t,c);const u=await l.xlsx.writeBuffer(),d=a.default.resolve(t,r);o.default.writeFileSync(d,u),s.LogUtil.i("ExcelReporter",`report is in ${d}`)};class t{static writeInMarkdown(e,r){t.getAllKitInfo(e).forEach((n=>{let i=[];e.forEach((e=>{u.SyscapProcessorHelper.getSingleKitInfo(e)===n&&i.push(e)})),0!==i.length&&t.sortDiffInfoByFile(i,n,r)}))}static getAllKitInfo(e){const t=new Set;return e.forEach((e=>{t.add(e.getOldKitInfo()),t.add(e.getNewKitInfo())})),t}static getSingleKitInfo(e){return""!==e.getNewKitInfo()?e.getNewKitInfo():e.getOldKitInfo()}static getFileNameInkit(e){const t=new Set;return e.forEach((e=>{""!==e.getNewDtsName()?t.add(e.getNewDtsName()):t.add(e.getOldDtsName())})),t}static getSingleFileName(e){return""!==e.getNewDtsName()?e.getNewDtsName():e.getOldDtsName()}static sortDiffInfoByFile(e,r,n){const i=t.getFileNameInkit(e),a=[];i.forEach((i=>{e.forEach((e=>{t.getSingleFileName(e)===i&&a.push(e)})),t.sortDiffInfoByStatus(a,r,n)}))}static sortDiffInfoByStatus(e,r,n){const i=[];for(const t of l.diffTypeMap.keys())e.forEach((e=>{e.getDiffType()===t&&i.push(e)}));t.exportDiffMd(r,i,n)}static exportDiffMd(e,r,n){let i="| 操作 | 旧版本 | 新版本 | d.ts文件 |\n| ---- | ------ | ------ | -------- |\n";for(let e=0;e<r.length;e++){let n=r[e];const a=n.getNewDtsName()?n.getNewDtsName():n.getOldDtsName();i+=`|${l.diffTypeMap.get(n.getDiffType())}|${t.formatDiffMessage(c.joinOldMessage(n))}|${t.formatDiffMessage(c.joinNewMessage(n))}|${a.replace(/\\/g,"/")}|\n`}const a=`${n}\\diff合集`;o.default.existsSync(a)||o.default.mkdirSync(a),o.default.writeFileSync(`${n}\\diff合集\\js-apidiff-${e}.md`,i)}static formatDiffMessage(e){return e.replace(/\r|\n/g,"<br>").replace(/\|/g,"\\|").replace(/\<(?!br>)/g,"\\<")}}e.MarkdownReporter=t}(t.WriterHelper||(t.WriterHelper={}))},88189:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(16928));t.default={NODE_ENV:"development",EVN_CONFIG:"dev",DIR_NAME:i.default.resolve(__dirname,"../.."),NEED_DETECTION:"",IS_OH:""}},59620:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(88189)),a=n(r(88463)),o="production",s={development:i.default,production:a.default};Object.assign(process.env,s[o]),t.default=s[o]},88463:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(16928));t.default={NODE_ENV:"production",EVN_CONFIG:"prod",DIR_NAME:i.default.resolve(__dirname,".."),NEED_DETECTION:"",IS_OH:""}},40744:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LocalEntry=void 0;const n=r(77002),i=r(13930),a=r(4e3),o=r(93333),s=r(93333),c=r(61574),l=r(26150);class u{static checkEntryLocal(e,t,r,n,c){let l=s.apiCheckResult;try{i.Check.scanEntry(e,n,!1),u.maskAlarm(s.compositiveResult,t)}catch(e){a.LogUtil.e("API_CHECK_ERROR",e)}finally{o.GenerateFile.writeFile(s.apiCheckResult,r,{}),"true"===c&&o.GenerateFile.writeExcelFile(s.apiCheckResult)}return l}static maskAlarm(e,t){const r=1===t.length&&"all"===t[0],i=new Map(Object.entries({...c.DOC,...c.DEFINE,...c.CHANEGE}));let a=new Set;r?a=new Set([...i.values()]):t.forEach((e=>{const t=i.get(e);t&&a.add(t)}));new Set(e);u.filterAllResultInfo(e,i,a).forEach((e=>{const t=new n.ApiBaseInfo;t.setApiName(e.apiName).setApiType(e.apiType).setHierarchicalRelations(e.hierarchicalRelations).setParentModuleName(e.parentModuleName);const r=new n.ApiResultMessage;r.setFilePath(e.filePath).setLocation(e.location).setLevel(e.level).setType(e.type).setMessage(e.message).setMainBuggyCode(e.apiText).setMainBuggyLine(e.location).setExtendInfo(t),s.apiCheckResult.push(r)}))}static filterAllResultInfo(e,t,r){return e.filter((e=>{let n=e.message.replace(/API check error of \[.*\]: /g,"");if(/\d/g.test(n)&&(n=n.replace(/\d+/g,"1")),/Prohibited word in \[.*\]:{option}.The word allowed is \[.*\]\./g.test(n)&&(n=JSON.stringify(t.get("API_DEFINE_NAME_01")).replace(/\"/g,"")),/Prohibited word in \[.*\]:{ability} in the \[.*\] file\./g.test(n)&&(n=JSON.stringify(t.get("API_DEFINE_NAME_02")).replace(/\"/g,"")),/please confirm whether it needs to be corrected to a common word./g.test(n)&&(n=n.replace(/\{.*\}/g,"{XXXX}")),/tag does not exist. Please use a valid JSDoc tag./g.test(n)&&(n=n.replace(/\[.*\]/g,"[XXXX]")),/The event name should be named by small hump./g.test(n)&&(n=n.replace(/\[.*\]/g,"[XXXX]")),/This name \[.*\] should be named by/g.test(n)&&(n=n.replace(/\[.*\]/g,"[XXXX]")),r.has(n)){const r=u.filterApiCheckInfos(t,n);""!==r&&e.setType(r)}return r.has(n)}))}static filterApiCheckInfos(e,t){for(let[r,n]of e.entries())if(n===t)return r;return""}static apiChangeCheckEntryLocal(e,t,r,n){let i=s.apiCheckResult;try{l.ApiChangeCheck.checkApiChange(e),u.maskAlarm(s.compositiveResult,t)}catch(e){a.LogUtil.e("API_CHECK_ERROR",e)}finally{o.GenerateFile.writeFile(s.apiCheckResult,r,{}),"true"===n&&o.GenerateFile.writeExcelFile(s.apiCheckResult)}return i}}t.LocalEntry=u},13930:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Check=t.currentFilePath=void 0;const i=n(r(79896)),a=n(r(16928)),o=r(30871),s=r(44791),c=r(77002),l=r(93333),u=r(95721),d=r(6300),p=r(18e3),f=r(36944),m=r(31575),g=r(28912),_=r(56795),h=r(95769),y=r(23978),v=r(58010),b=r(37798),k=r(26150),x=r(53438),E=r(11449),S=r(9706),D=r(73086);t.currentFilePath="";class w{static scanEntry(e,r,n){l.cleanCompositiveResult(),k.ApiChangeCheck.checkApiChange(r),e.forEach(((e,r)=>{if(t.currentFilePath=e,-1!==e.indexOf("build-tools")&&!n)return;console.log(`scaning file in no ${++r}!`);const i=w.parseAPICodeStyle(e),s=o.Parser.getAllBasicApi(i);w.checkNodeInfos(s);const c=i.get(a.default.basename(e));c&&v.CheckHump.checkAPIFileName(c),v.CheckHump.checkAllAPINameOfHump(s),_.WordsCheck.wordCheckResultsProcessing(s);const l=new b.EventMethodChecker(i),u=l.getAllEventMethod();l.checkEventMethod(u)}))}static getMdFiles(e){return i.default.readFileSync(e,"utf-8").split(/[(\r\n)\r\n]+/)}static parseAPICodeStyle(e){return o.Parser.parseFile(a.default.resolve(e,".."),e)}static checkNodeInfos(e){let r=[];w.getHasJsdocApiInfos(e,r),r.forEach((e=>{const r=e.getLastJsDocInfo(),n=e.getJsDocText().length;if("Method"!==e.getApiType()||"Struct"!==e.getParentApi()?.apiType)if(void 0===r||0===n){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.NO_JSDOC_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.NO_JSDOC).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(c.ErrorMessage.ERROR_NO_JSDOC);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}else{if("NA"===r.getKit()){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(l.CommonFunctions.createErrorInfo(c.ErrorMessage.ERROR_LOST_LABEL,["kit"]));const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(!r.getFileTagContent()){new c.ApiCheckInfo;const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(l.CommonFunctions.createErrorInfo(c.ErrorMessage.ERROR_LOST_LABEL,["file"]));const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}const n=p.LegalityCheck.apiLegalityCheck(e,r),i=u.OrderCheck.orderCheck(e,r),a=y.ApiNamingCheck.namingCheck(e),o=E.ChineseCheck.checkChinese(r),s=D.CheckErrorCode.checkErrorCode(r),_=d.TagNameCheck.tagNameCheck(r),v=x.TagInheritCheck.tagInheritCheck(e),b=g.TagValueCheck.tagValueCheck(e,r),k=f.TagRepeatCheck.tagRepeatCheck(r),w=h.ForbiddenWordsCheck.forbiddenWordsCheck(e),T=S.AnonymousFunctionCheck.checkAnonymousFunction(e);if(!i.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.WRONG_ORDER_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_ORDER).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(i.errorInfo);const a=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(a,l.compositiveResult,l.compositiveLocalResult)}if(!_.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.UNKNOW_DECORATOR_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.UNKNOW_DECORATOR).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(_.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(!w.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.FORBIDDEN_WORDS_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.FORBIDDEN_WORDS).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(w.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(!a.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.NAMING_ERRORS_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.NAMING_ERRORS).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(a.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(!o.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.JSDOC_HAS_CHINESE).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.JSDOC_HAS_CHINESE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(o.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(!s.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.ERROR_ERROR_CODE).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.ERROR_ERROR_CODE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(s.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(v.forEach((n=>{if(!n.state){const i=new c.ErrorBaseInfo;i.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(n.errorInfo);const a=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,i);m.AddErrorLogs.addAPICheckErrorLogs(a,l.compositiveResult,l.compositiveLocalResult)}})),n.forEach((n=>{if(!1===n.state){const i=new c.ErrorBaseInfo;i.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(n.errorInfo);const a=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,i);m.AddErrorLogs.addAPICheckErrorLogs(a,l.compositiveResult,l.compositiveLocalResult)}})),b.forEach((n=>{if(!1===n.state){const i=new c.ErrorBaseInfo;i.setErrorID(c.ErrorID.WRONG_VALUE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_VALUE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(n.errorInfo);const a=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,i);m.AddErrorLogs.addAPICheckErrorLogs(a,l.compositiveResult,l.compositiveLocalResult)}})),k.forEach((n=>{if(!1===n.state){const i=new c.ErrorBaseInfo;i.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(n.errorInfo);const a=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,i);m.AddErrorLogs.addAPICheckErrorLogs(a,l.compositiveResult,l.compositiveLocalResult)}})),!T.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(T.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}}}))}static getHasJsdocApiInfos(e,t){e.forEach((e=>{s.notJsDocApiTypes.has(e.getApiType())||t.push(e)}))}}t.Check=w},9706:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AnonymousFunctionCheck=void 0;const i=n(r(58843)),a=r(77002),o=r(44791),s=r(93333);t.AnonymousFunctionCheck=class{static checkAnonymousFunction(e){const t={state:!0,errorInfo:""},r=e.getJsDocInfos();if(s.CommonFunctions.getSinceVersion(r[0].getSince())!==s.CommonFunctions.getCheckApiVersion())return t;let n=[i.default.SyntaxKind.FunctionType,i.default.SyntaxKind.TypeLiteral],c=!1,l=!1,u=!1;if(e.getApiType()===o.ApiType.METHOD){c=n.includes(e.returnValueType),l=!1;e.getParams().forEach((e=>{l=n.includes(e.getParamType())}))}else e.getApiType()===o.ApiType.PROPERTY&&(u=n.includes(e.typeKind));return(c||l||u)&&(t.state=!1,t.errorInfo=a.ErrorMessage.ERROR_ANONYMOUS_FUNCTION),t}}},26150:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ApiChangeCheck=void 0;const i=n(r(16928)),a=n(r(79896)),o=r(30871),s=r(26499),c=r(40745),l=r(31575),u=r(93333),d=r(77002),p=r(40149);t.ApiChangeCheck=class{static checkApiChange(e){let t="";const r=i.default.resolve(c.FileUtils.getBaseDirName(),`../../../../Archive/patch_info/openharmony_interface_sdk-js_${e}`),n=i.default.resolve(c.FileUtils.getBaseDirName(),e);a.default.existsSync(r)?t=r:a.default.existsSync(n)&&(t=n);const f=i.default.resolve(t,"./old"),m=i.default.resolve(t,"./new");if(!a.default.existsSync(f)||!a.default.existsSync(m))return;let g=[];if(a.default.statSync(f).isDirectory()){const e=o.Parser.parseDir(f),t=o.Parser.parseDir(m);g=s.DiffHelper.diffSDK(e,t,!1,!0)}else{const e=o.Parser.parseFile(i.default.resolve(f,".."),f),t=o.Parser.parseFile(i.default.resolve(m,".."),m);g=s.DiffHelper.diffSDK(e,t,!1,!0)}g.forEach((e=>{if(!1!==e.getIsCompatible())return;const t=d.incompatibleApiDiffTypes.get(e.getDiffType());if(e.getDiffType()===p.ApiDiffType.REDUCE){const r=i.default.basename(e.getOldDtsName());let n=new d.ApiCheckInfo;const a=e.getOldHierarchicalRelations(),o=a[a.length-1];n.setErrorID(d.ErrorID.API_CHANGE_ERRORS_ID).setErrorLevel(d.ErrorLevel.MIDDLE).setFilePath(r).setApiPostion(e.getOldPos()).setErrorType(d.ErrorType.API_CHANGE_ERRORS).setLogType(d.LogType.LOG_JSDOC).setSinceNumber(-1).setApiName(e.getOldApiName()).setApiType(e.getApiType()).setApiText(e.getOldApiDefinedText()).setErrorInfo(t).setHierarchicalRelations(e.getOldHierarchicalRelations().join("|")).setParentModuleName(o),l.AddErrorLogs.addAPICheckErrorLogs(n,u.compositiveResult,u.compositiveLocalResult)}else{const r=i.default.basename(e.getNewDtsName());let n=new d.ApiCheckInfo;const a=e.getNewHierarchicalRelations(),o=a[a.length-1];n.setErrorID(d.ErrorID.API_CHANGE_ERRORS_ID).setErrorLevel(d.ErrorLevel.MIDDLE).setFilePath(r).setApiPostion(e.getOldPos()).setErrorType(d.ErrorType.API_CHANGE_ERRORS).setLogType(d.LogType.LOG_JSDOC).setSinceNumber(-1).setApiName(e.getNewApiName()).setApiType(e.getApiType()).setApiText(e.getNewApiDefinedText()).setErrorInfo(t).setHierarchicalRelations(e.getNewHierarchicalRelations().join("|")).setParentModuleName(o),l.AddErrorLogs.addAPICheckErrorLogs(n,u.compositiveResult,u.compositiveLocalResult)}}))}}},11449:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChineseCheck=void 0;const n=r(77002),i=r(93333);t.ChineseCheck=class{static isChinese(e){return/[\u4e00-\u9fa5]/.test(e)}static checkChinese(e){const t={state:!0,errorInfo:""};this.isChinese(e.description)&&(t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_HAS_CHINESE,[e.description]));const r=e.tags;return void 0===r||r.forEach((e=>{for(let r=0;r<e.tokenSource.length;r++)this.isChinese(e.tokenSource[r].source)&&(t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_HAS_CHINESE,[e.tag]))})),t}}},73086:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CheckErrorCode=void 0;const n=r(77002);class i{static isArrayNotEmpty(e){return Array.isArray(e)&&e.length>0}static hasNumberInArray(e,t){return e.every((e=>t.includes(e)))}static checkErrorCode(e){const t={state:!0,errorInfo:""},r=e.errorCodes.filter((e=>e>=100&&e<1e3));return this.isArrayNotEmpty(r)&&(this.hasNumberInArray(r,this.errorCodeList)||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_ERROR_CODE)),t}}t.CheckErrorCode=i,i.errorCodeList=[201,202,203,301,401,501,502,801,901]},58010:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.CheckHump=void 0;const i=n(r(16928)),a=r(31575),o=r(8136),s=r(77002),c=r(44791),l=r(93333),u=r(93333),d=r(13930);class p{static checkLargeHump(e){return/^([A-Z][a-z0-9]*)*$/g.test(e)}static checkSmallHump(e){return/^[a-z]+[0-9]*([A-Z][a-z0-9]*)*$/g.test(e)}static checkAllUppercaseHump(e){return/^[A-Z]+[0-9]*([\_][A-Z0-9]+)*$/g.test(e)}static getApiInfosInFileMap(e,t){if(t===o.StringConstant.SELF)return[];return e.get(t).get(o.StringConstant.SELF)}static checkAllAPINameOfHump(e){e.forEach((e=>{c.notJsDocApiTypes.has(e.getApiType())||p.checkAPINameOfHump(e)}))}static checkAPINameOfHump(e){const t=e.getLastJsDocInfo(),r=e.getJsDocInfos().length>0?e.getJsDocInfos()[0].getSince():"";if(t){if("-1"!==t.getDeprecatedVersion())return;if(r!==String(l.CommonFunctions.getCheckApiVersion()))return}const n=e.getApiType(),o=e.getFilePath();let f=e.getApiName(),m="";if(e.getIsJoinType()&&(f=f.split("_")[0]),n===c.ApiType.ENUM_VALUE||n===c.ApiType.CONSTANT&&-1===o.indexOf(`component${i.default.sep}ets${i.default.sep}`)?p.checkAllUppercaseHump(f)||(m=l.CommonFunctions.createErrorInfo(s.ErrorMessage.ERROR_UPPERCASE_NAME,[f])):n===c.ApiType.INTERFACE||n===c.ApiType.CLASS||n===c.ApiType.TYPE_ALIAS||n===c.ApiType.ENUM?p.checkLargeHump(f)||(m=l.CommonFunctions.createErrorInfo(s.ErrorMessage.ERROR_LARGE_HUMP_NAME,[f])):n!==c.ApiType.PROPERTY&&n!==c.ApiType.METHOD&&n!==c.ApiType.PARAM&&n!==c.ApiType.NAMESPACE||p.checkSmallHump(f)||(m=l.CommonFunctions.createErrorInfo(s.ErrorMessage.ERROR_SMALL_HUMP_NAME,[f])),""!==m){const t=new s.ErrorBaseInfo;t.setErrorID(s.ErrorID.NAMING_ERRORS_ID).setErrorLevel(s.ErrorLevel.MIDDLE).setErrorType(s.ErrorType.NAMING_ERRORS).setLogType(s.LogType.LOG_JSDOC).setErrorInfo(m);const r=l.CommonFunctions.getErrorInfo(e,void 0,d.currentFilePath,t);a.AddErrorLogs.addAPICheckErrorLogs(r,u.compositiveResult,u.compositiveLocalResult)}}static checkAPIFileName(e){const t=e.get(o.StringConstant.SELF)[0];if(t.getApiType()!==c.ApiType.SOURCE_FILE)return;const r=t.getFilePath();if(-1!==r.indexOf(`component${i.default.sep}ets${i.default.sep}`))return;let n="",f="",m="NA";for(const t of e.keys()){p.getApiInfosInFileMap(e,t).forEach((e=>{if(!c.notJsDocApiTypes.has(e.getApiType())){const t=e.getJsDocInfos();m=t[0]?l.CommonFunctions.getSinceVersion(t[0].getSince()):m}n=e.getApiType()===c.ApiType.NAMESPACE?e.getApiName():n,f=e.getApiType()===c.ApiType.EXPORT_DEFAULT||e.getIsExport()?e.getApiName().replace(o.StringConstant.EXPORT_DEFAULT,""):f}))}const g=i.default.basename(r).replace(new RegExp(o.StringConstant.DTS_EXTENSION,"g"),"").replace(new RegExp(o.StringConstant.DETS_EXTENSION,"g"),"").split("."),_=g.length?g[g.length-1]:"";let h="";if(""===n||f!==n||p.checkSmallHump(_)?""!==n||f===n||p.checkLargeHump(_)||(h=s.ErrorMessage.ERROR_LARGE_HUMP_NAME_FILE):h=s.ErrorMessage.ERROR_SMALL_HUMP_NAME_FILE,""!==h&&m===String(l.CommonFunctions.getCheckApiVersion())){const e=new s.ErrorBaseInfo;e.setErrorID(s.ErrorID.NAMING_ERRORS_ID).setErrorLevel(s.ErrorLevel.MIDDLE).setErrorType(s.ErrorType.NAMING_ERRORS).setLogType(s.LogType.LOG_JSDOC).setErrorInfo(h);const r=l.CommonFunctions.getErrorInfo(t,void 0,d.currentFilePath,e);a.AddErrorLogs.addAPICheckErrorLogs(r,u.compositiveResult,u.compositiveLocalResult)}}}t.CheckHump=p},31575:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AddErrorLogs=void 0;const n=r(77002),i=r(93333);t.AddErrorLogs=class{static addAPICheckErrorLogs(e,t,r){const a=JSON.stringify(e.getApiPostion().line),o=`API check error of [${e.getErrorType()}]: ${e.getErrorInfo()}`,s=new n.ApiResultSimpleInfo;s.setID(e.getErrorID()).setLevel(e.getErrorLevel()).setLocation(a).setFilePath(e.getFilePath()).setMessage(o).setApiText(e.getApiText()).setApiName(e.getApiName()).setApiType(e.getApiType()).setHierarchicalRelations(e.getHierarchicalRelations()).setParentModuleName(e.getParentModuleName());const c=new n.ApiResultInfo;c.setErrorType(e.getErrorType()).setLocation(e.getFilePath().slice(e.getFilePath().indexOf("api"),e.getFilePath().length)+`(line: ${a})`).setApiType(e.getApiType()).setMessage(o).setVersion(e.getSinceNumber()).setLevel(e.getErrorLevel()).setApiName(e.getApiName()).setApiFullText(e.getApiText()).setBaseName(e.getFilePath().slice(e.getFilePath().lastIndexOf("\\")+1,e.getFilePath().length)).setHierarchicalRelations(e.getHierarchicalRelations()).setParentModuleName(e.getParentModuleName()).setDefectType("");let l=e.getErrorInfo()===i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_LOST_LABEL,["kit"]),u=e.getErrorInfo()===i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_LOST_LABEL,["file"]),d=[],p=[];t.forEach((t=>{const r=t.getMessage().replace(/API check error of \[.*\]: /g,""),a=t.getFilePath()+r;a===e.getFilePath()+i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_LOST_LABEL,["kit"])&&d.push(t.getFilePath()+t.getMessage()),a===e.getFilePath()+i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_LOST_LABEL,["file"])&&p.push(t.getFilePath()+t.getMessage())})),l&&0!==d.length||u&&0!==p.length||(t.push(s),r.push(c))}}},37798:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.EventMethodChecker=void 0;const i=n(r(58843)),a=r(8136),o=r(77002),s=r(44791),c=r(93333),l=r(30871),u=r(31575),d=r(93333),p=r(58010),f=r(98768),m=r(13930);t.EventMethodChecker=class{constructor(e){this.apiData=e}getAllEventMethod(){const e=l.Parser.getAllBasicApi(this.apiData);let t=[];m.Check.getHasJsdocApiInfos(e,t);const r=[];t.forEach((e=>{e.apiType===s.ApiType.METHOD&&e.getIsJoinType()&&r.push(e)}));return this.getEventMethodDataMap(r)}checkEventMethod(e){e.forEach((e=>{const t=e.onEvents.length>0?e.onEvents:[],r=t.length>0?t[0].jsDocInfos[0].since:"-1",n=e.offEvents.length>0?e.offEvents:[],a=n.length>0?n[0].jsDocInfos[0].since:"-1",s=0===e.onEvents.length&&0!==e.offEvents.length&&a===JSON.stringify(f.ApiCheckVersion),l=0!==e.onEvents.length&&0===e.offEvents.length&&r===JSON.stringify(f.ApiCheckVersion);if(s||l){const t=e.onEvents.concat(e.offEvents)[0],r=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_ON_AND_OFF_PAIR,[]),n=new o.ErrorBaseInfo;n.setErrorID(o.ErrorID.API_PAIR_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.API_PAIR_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(r);const i=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,n);u.AddErrorLogs.addAPICheckErrorLogs(i,d.compositiveResult,d.compositiveLocalResult)}let g=0,_=0;for(let t=0;t<e.offEvents.length;t++){const r=e.offEvents[t];if(r.getParams().length<2)continue;const n=this.collectEventCallback(r,g,_);g=n.callbackNumber,_=n.requiredCallbackNumber}if(e.offEvents.length>0&&a===JSON.stringify(f.ApiCheckVersion)&&(0!==g&&g===e.offEvents.length&&g===_||0===g&&0!==e.offEvents.length)){const t=e.offEvents[0],r=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_CALLBACK_OPTIONAL,[]),n=new o.ErrorBaseInfo;n.setErrorID(o.ErrorID.PARAMETER_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.PARAMETER_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(r);const i=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,n);u.AddErrorLogs.addAPICheckErrorLogs(i,d.compositiveResult,d.compositiveLocalResult)}const h=e.onEvents.concat(e.offEvents).concat(e.emitEvents).concat(e.onceEvents);for(let e=0;e<h.length;e++){const t=h[e];if(!this.checkVersionNeedCheck(t))continue;const r=t.getParams(),n=t.jsDocInfos[0].since;if(r.length<1&&n===JSON.stringify(f.ApiCheckVersion)){const e=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_WITHOUT_PARAMETER,[]),r=new o.ErrorBaseInfo;r.setErrorID(o.ErrorID.PARAMETER_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.PARAMETER_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(e);const n=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,r);u.AddErrorLogs.addAPICheckErrorLogs(n,d.compositiveResult,d.compositiveLocalResult);continue}const a=r.length?r[0]:void 0;if(void 0!==a&&n===JSON.stringify(f.ApiCheckVersion))if(a.getParamType()===i.default.SyntaxKind.LiteralType){const e=a.getType()[0].replace(/\'/g,"");if(""===e){const e=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_NAME_NULL,[a.getApiName()]),r=new o.ErrorBaseInfo;r.setErrorID(o.ErrorID.PARAMETER_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.PARAMETER_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(e);const n=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,r);u.AddErrorLogs.addAPICheckErrorLogs(n,d.compositiveResult,d.compositiveLocalResult)}else if(!p.CheckHump.checkSmallHump(e)){const r=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_NAME_SMALL_HUMP,[e]),n=new o.ErrorBaseInfo;n.setErrorID(o.ErrorID.PARAMETER_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.PARAMETER_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(r);const i=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,n);u.AddErrorLogs.addAPICheckErrorLogs(i,d.compositiveResult,d.compositiveLocalResult)}}else if(a.getParamType()!==i.default.SyntaxKind.StringKeyword){const e=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_NAME_STRING,[a.getApiName()]),r=new o.ErrorBaseInfo;r.setErrorID(o.ErrorID.PARAMETER_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.PARAMETER_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(e);const n=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,r);u.AddErrorLogs.addAPICheckErrorLogs(n,d.compositiveResult,d.compositiveLocalResult)}}}))}checkVersionNeedCheck(e){const t=c.CommonFunctions.getSinceVersion(e.getCurrentVersion());return parseInt(t)>=a.EventConstant.eventMethodCheckVersion}collectEventCallback(e,t,r){const n=e.getParams().slice(-1)[0];if(n.paramType){new Set([i.default.SyntaxKind.NumberKeyword,i.default.SyntaxKind.StringKeyword,i.default.SyntaxKind.BooleanKeyword,i.default.SyntaxKind.UndefinedKeyword,i.default.SyntaxKind.LiteralType]).has(n.paramType)||(t++,n.getIsRequired()&&r++)}return{callbackNumber:t,requiredCallbackNumber:r}}getEventMethodDataMap(e){let t=new Map;return e.forEach((e=>{const r=[...e.hierarchicalRelations];r.pop();const n=[...r,this.getEventName(e.apiName)].join("/");let i={onEvents:[],offEvents:[],emitEvents:[],onceEvents:[]};t.get(n)&&(i=t.get(n)),t.set(n,this.collectEventMethod(i,e))})),t}collectEventMethod(e,t){switch(this.getEventType(t.apiName)){case"on":e.onEvents.push(t);break;case"off":e.offEvents.push(t);break;case"emit":e.emitEvents.push(t);break;case"once":e.onceEvents.push(t)}return e}getEventName(e){return e.split(/\_/)[1]}getEventType(e){return e.split(/\_/)[0]}}},95769:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ForbiddenWordsCheck=void 0;const n=r(77002),i=r(93333),a=r(93333);t.ForbiddenWordsCheck=class{static forbiddenWordsCheck(e){const t=["this","unknown"],r={state:!0,errorInfo:""},o=e.getDefinedText(),s=e.getJsDocInfos(),c=i.CommonFunctions.getSinceVersion(s[0].getSince()),l=i.CommonFunctions.getCheckApiVersion(),u=/\s{2,}/g;let d=o.replace(/(\/\*|\*\/|\*)|\\n|\\r/g," ");return a.punctuationMarkSet.forEach((e=>{const t=new RegExp(e,"g");t.test(d)&&(d=d.replace(t," ").replace(u," "))})),d.split(/\s/g).forEach((a=>{c===l&&(t.includes(a)||"any"===a&&-1!==e.getFilePath().indexOf(".d.ets"))&&(r.state=!1,r.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ILLEGAL_USE_ANY,[a]))})),r}}},23978:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiNamingCheck=void 0;const n=r(77002),i=r(93333),a=r(56795),o=r(93460),s=r(289);class c{static namingCheck(e){const t={state:!0,errorInfo:""},r=e.getJsDocInfos(),n=i.CommonFunctions.getSinceVersion(r[0].getSince()),o=i.CommonFunctions.getCheckApiVersion(),s=e.getFilePath().toLowerCase(),l=/\s{2,}/g;let u=e.getDefinedText().replace(/(\/\*|\*\/|\*)|\n|\r/g," ");i.punctuationMarkSet.forEach((e=>{const t=new RegExp(e,"g");t.test(u)&&(u=u.replace(t," ").replace(l," "))}));let d=u.split(/\s/g),p=[];return d.forEach((e=>{a.WordsCheck.splitComplexWords(e,p)})),p.forEach((r=>{n===o&&(c.checkApiNamingWords(r,t),c.checkApiNamingScenario(s,t,e))})),t}static checkApiNamingWords(e,t){const r=c.getlowercaseNamingMap();for(const[a,o]of r){const r=e.indexOf(a);if(-1===r)continue;const s=o.ignore.map((e=>e.toLowerCase())),l=e.substring(r,r+a.length);if(0===s.length){t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_NAMING,[e,l,o.suggestion]);break}!1===c.checkIgnoreWord(s,e)&&(t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_NAMING,[e,l,o.suggestion]))}}static checkApiNamingScenario(e,t,r){const a=c.getlowercaseNamingScenarioMap();for(const[o,s]of a){-1===e.indexOf(o)||c.isInAllowedFiles(s.files,r.getFilePath())||(t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_SCENARIO,[e,o,r.getFilePath()]))}}static getlowercaseNamingMap(){const e=new Map;for(const t of o){const r=t.badWord.toLowerCase(),n=t;e.set(r,n)}return e}static checkIgnoreWord(e,t){let r=!1;for(let n=0;n<e.length;n++)if(e[n]&&-1!==t.indexOf(e[n])){r=!0;break}return r}static getlowercaseNamingScenarioMap(){const e=new Map;for(const t of s){const r=t.word.toLowerCase(),n=t;e.set(r,n)}return e}static isInAllowedFiles(e,t){for(const r of e){const e=new RegExp(r);if(e.test(t),e.test(t))return!0}return!1}}t.ApiNamingCheck=c},53438:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagInheritCheck=void 0;const n=r(77002),i=r(93333),a=r(44791);class o{static tagInheritCheck(e){const t=[],r=e.getLastJsDocInfo();if(void 0===r)return t;const n=r.tags,i=[];if(void 0===n)return t;n.forEach((e=>{i.push(e.tag)}));let s=e.getParentApi();return a.containerApiTypes.has(s.getApiType())&&o.checkParentJsdoc(s,i,t),t}static checkParentJsdoc(e,t,r){if(void 0===e||!a.containerApiTypes.has(e.getApiType()))return!0;const s=e,c=s.getLastJsDocInfo()?.tags,l={state:!0,errorInfo:""};if(void 0===c)return!0;let u="";const d=c.some((e=>(u=e.tag,i.inheritTagArr.includes(e.tag)&&!t.includes(e.tag)))),p=d?{state:!1,errorInfo:i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_INHERIT,[u.toLocaleLowerCase()])}:l,f=[];c.forEach((e=>{f.push(e.tag)}));const m=t.some((e=>(u=e,i.followTagArr.includes(e)&&!f.includes(e)))),g=m?{state:!1,errorInfo:i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_FOLLOW,[u])}:l;if(d||m)return r.push(...d?m?[g,p]:[p]:[g]),!1;const _=s.getParentApi();return o.checkParentJsdoc(_,t,r)}}t.TagInheritCheck=o},18e3:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LegalityCheck=void 0;const n=r(44791),i=r(93333),a=r(77002),o=r(93333);class s{static apiLegalityCheck(e,t){const r=[];s.checkSystemapiAtomicservice(t,r);const c=e.getNode(),l=i.apiLegalityCheckTypeMap.get(c.kind),u=new Set(l),d=s.getIllegalTagsArray(l);let p="",f="";if(e.getApiType()!==n.ApiType.CLASS&&e.getApiType()!==n.ApiType.INTERFACE||(p=o.CommonFunctions.getExtendsApiValue(e),f=o.CommonFunctions.getImplementsApiValue(e)),""===p&&(u.delete("extends"),d.push("extends")),""===f&&(u.delete("implements"),d.push("implements")),e.getApiType()===n.ApiType.PROPERTY&&(e.getIsReadOnly()||(u.delete("readonly"),d.push("readonly"))),!Array.isArray(l))return r;const m=t.tags,g=[],_=[];if(void 0===m){const e={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,["since"])+o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,["syscap"])};return r.push(e),r}const h=[];if(m.forEach((e=>{h.push(e.tag)})),h.includes("deprecated"))return r;let y=0,v=e.getApiType()===n.ApiType.METHOD?e.getParams().length:0;return v=e.getApiType()===n.ApiType.TYPE_ALIAS?e.getParamInfos().length:v,m.forEach((i=>{g.push(i.tag),"throws"===i.tag&&_.push(i.name),y="param"===i.tag?y+1:y;const s="useinstead"===i.tag&&"-1"!==t.deprecatedVersion;if(u.delete("param"),u.has(i.tag)&&u.delete(i.tag),e.getApiType()!==n.ApiType.PROPERTY&&e.getApiType()!==n.ApiType.DECLARE_CONST||(u.delete("constant"),d.push("constant")),e.getApiType()!==n.ApiType.INTERFACE||"typedef"!==i.tag&&"interface"!==i.tag||(u.delete("typedef"),u.delete("interface")),e.getApiType()===n.ApiType.TYPE_ALIAS&&e.getIsExport()&&u.delete("typedef"),(e.getApiType()===n.ApiType.METHOD&&0===e.getReturnValue().length||e.getApiType()===n.ApiType.TYPE_ALIAS&&("void"===e.getReturnType()||!e.getTypeIsFunction()))&&(u.delete("returns"),d.push("returns")),d.includes(i.tag)&&("useinstead"!==i.tag||!s)){const e={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_USE,[i.tag])};r.push(e)}})),e.getApiType()===n.ApiType.METHOD&&s.checkThrowsCode(_,g,v,r),s.paramLegalityCheck(y,v,r),u.forEach((e=>{if(!o.conditionalOptionalTags.includes(e)){const t={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,[e])};r.push(t)}})),r}static paramLegalityCheck(e,t,r){if(e>t){const n={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_MORELABEL,[JSON.stringify(e-t),"param"])};r.push(n)}else if(e<t){const e={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,["param"])};r.push(e)}}static checkThrowsCode(e,t,r,n){const i={state:!0,errorInfo:""},s={state:!0,errorInfo:""},c={state:!0,errorInfo:""},l={state:!0,errorInfo:""},u=t.includes(a.ParticularErrorCode.ERROR_PERMISSION),d=t.includes(a.ParticularErrorCode.ERROR_SYSTEMAPI),p=e.includes(a.ParticularErrorCode.ERROR_CODE_201),f=e.includes(a.ParticularErrorCode.ERROR_CODE_202),m=e.includes(a.ParticularErrorCode.ERROR_CODE_401);u!==p&&(i.state=!1,i.errorInfo=o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,[u?"throws 201":a.ParticularErrorCode.ERROR_PERMISSION])),d!==f&&(s.state=!1,s.errorInfo=o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,[d?"throws 202":a.ParticularErrorCode.ERROR_SYSTEMAPI])),m&&0===r&&(c.state=!1,c.errorInfo=o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_USE,["throws 401"]));const g=e.sort();for(let e=0;e<g.length;e++)g[e]===g[e+1]&&(l.state=!1,l.errorInfo=o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_REPEATLABEL,["throws"]));n.push(i,s,c,l)}static getIllegalTagsArray(e){const t=[];return i.tagsArrayOfOrder.forEach((r=>{(i.optionalTags.includes(r)||Array.isArray(e))&&(i.optionalTags.includes(r)||e.includes(r))||t.push(r)})),t}static checkSystemapiAtomicservice(e,t){const r={state:!0,errorInfo:""},n=[];e.tags?.forEach((e=>{n.push(e.tag)}));const i=n.includes("systemapi"),o=n.includes("atomicservice");i&&o&&(r.state=!1,r.errorInfo=a.ErrorMessage.ERROR_ERROR_SYSTEMAPI_ATOMICSERVICE),t.push(r)}}t.LegalityCheck=s},6300:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagNameCheck=void 0;const n=r(93333),i=r(77002);t.TagNameCheck=class{static tagNameCheck(e){const t={state:!0,errorInfo:""},r=n.tagsArrayOfOrder.concat(n.officialTagArr),a=e.tags;return void 0===a||a.forEach((e=>{r.includes(e.tag)||(t.state=!1,t.errorInfo=n.CommonFunctions.createErrorInfo(i.ErrorMessage.ERROR_LABELNAME,[e.tag]))})),t}}},95721:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OrderCheck=void 0;const n=r(77002),i=r(93333);class a{static orderCheck(e,t){const r={state:!0,errorInfo:""},o=t.tags;if(void 0===o)return r;const s=[];if(o.forEach((e=>{s.push(e.tag)})),s.includes("deprecated"))return r;for(let e=0;e<o.length;e++)if(e+1<o.length){const t=i.tagsArrayOfOrder.indexOf(o[e].tag),s=i.tagsArrayOfOrder.indexOf(o[e+1].tag),c=i.CommonFunctions.isOfficialTag(o[e].tag);if("form"!==o[e].tag&&"form"!==o[e+1].tag&&(c&&s>-1||t>s&&s>-1)){r.state=!1,r.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_ORDER,[o[e].tag]);break}"form"===o[e].tag&&(r.state=a.formOrderCheck(o,e,t,s),r.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_ORDER,[o[e].tag]))}return r}static formOrderCheck(e,t,r,n){const a=t-1>-1?i.tagsArrayOfOrder.indexOf(e[t-1].tag):0,o=[a,r],s=[a,i.tagsArrayOfOrder.lastIndexOf(e[t].tag)];return n>-1&&(o.push(n),s.push(n)),!(!i.CommonFunctions.isAscending(o)&&!i.CommonFunctions.isAscending(s))}}t.OrderCheck=a},36944:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagRepeatCheck=void 0;const n=r(77002),i=r(93333);t.TagRepeatCheck=class{static tagRepeatCheck(e){const t=[],r=["throws","param"],a=[];if(e.tags?.forEach((e=>{a.push(e.tag)})),a.includes("deprecated"))return t;const o=a.filter((e=>a.indexOf(e)!==a.lastIndexOf(e)));return new Set(o).forEach((e=>{if(!r.includes(e)){const r={state:!1,errorInfo:i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_REPEATLABEL,[e])};t.push(r)}})),t}}},28912:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagValueCheck=void 0;const n=r(77002),i=r(93333),a=r(44791),o=r(8136),s=r(11663),c=r(85311),l=r(2543),u=r(98768);class d{static tagValueCheck(e,t){const r=[],n=t.tags;let i=0,a=-1;if(void 0===n)return r;const o=[];n.forEach((e=>{o.push(e.tag)}));const s=o.includes("deprecated");return n.forEach((t=>{let o={state:!0,errorInfo:""};switch(t.tag){case"since":o=d.sinceTagValueCheck(e,t);break;case"extends":case"implements":o=s?o:d.extendsTagValueCheck(e,t);break;case"enum":o=s?o:d.enumTagValueCheck(t);break;case"returns":o=s?o:d.returnsTagValueCheck(e,t);break;case"namespace":case"typedef":case"struct":o=s?o:d.outerTagValueCheck(e,t);break;case"type":o=s?o:d.typeTagValueCheck(e,t);break;case"syscap":o=d.syscapTagValueCheck(t);break;case"default":o=s?o:d.defaultTagValueCheck(t);break;case"deprecated":o=d.deprecatedTagValueCheck(t);break;case"permission":o=s?o:d.permissionTagValueCheck(t);break;case"throws":"-1"===e.getLastJsDocInfo()?.deprecatedVersion&&(i+=1,o=s?o:d.throwsTagValueCheck(t,i,n));break;case"param":a+=1,o=s?o:d.paramTagValueCheck(e,t,a);break;case"useinstead":o=d.useinsteadTagValueCheck(t)}o.state||r.push(o)})),r}static sinceTagValueCheck(e,t){const r={state:!0,errorInfo:""},a=i.CommonFunctions.getSinceVersion(t.name),o=/^\d+$/.test(a),s=[];e.getJsDocInfos().forEach((e=>{s.push(e.since)}));const c=Array.from(new Set(s));return o?l.toNumber(a)>l.toNumber(u.ApiMaxVersion)&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_SINCE_NUMBER):(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_SINCE),s.length!==c.length&&(r.state=!1,r.errorInfo=r.errorInfo+n.ErrorMessage.ERROR_INFO_VALUE_SINCE_JSDOC),r}static extendsTagValueCheck(e,t){const r={state:!0,errorInfo:""};let o=t.name+t.description;if(e.getApiType()===a.ApiType.CLASS||e.getApiType()===a.ApiType.INTERFACE){const a=i.CommonFunctions.getExtendsApiValue(e),s=i.CommonFunctions.getImplementsApiValue(e);"extends"===t.tag&&o.replace(/\s/g,"")!==a&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_EXTENDS),"implements"===t.tag&&o!==s&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_IMPLEMENTS)}return r}static enumTagValueCheck(e){const t={state:!0,errorInfo:""};return-1===["string","number"].indexOf(e.type)&&(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_ENUM),t}static returnsTagValueCheck(e,t){const r={state:!0,errorInfo:""},o=t.type.replace(/\s/g,"");let s=[];if(![a.ApiType.METHOD,a.ApiType.TYPE_ALIAS].includes(e.getApiType()))return r;const c=i.CommonFunctions.judgeSpecialCase(e.returnValueType);return e.getApiType()===a.ApiType.TYPE_ALIAS?s.push(e.getReturnType()):s=c.length>0?c:e.getReturnValue(),0===s.length?(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_RETURNS):o!==s.join("|").replace(/\s/g,"")&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_RETURNS),r}static outerTagValueCheck(e,t){const r={state:!0,errorInfo:""};let i=t.name,o=t.type,s=e.getApiName();e.getDefinedText();if("namespace"===t.tag&&i!==s&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_NAMESPACE),"typedef"===t.tag){if(e.getApiType()===a.ApiType.TYPE_ALIAS){const t=e.getType().join("|").replace(/\s/g,""),r=e.getTypeIsFunction(),n=e.getTypeName()===a.TypeAliasType.OBJECT_TYPE;s=r?"function":n?"object":t}else{const t=e.getGenericInfo();if(t.length>0){s=s+"<"+t.map((e=>e.getGenericContent())).join(",")+">"}}"Interface"===e.getApiType()&&i!==s?(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_TYPEDEF):e.getApiType()!==a.ApiType.TYPE_ALIAS||e.getIsExport()||o.replace(/\s/g,"")===s||(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_TYPEDEF)}return"struct"===t.tag&&o!==s&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_STRUCT),r}static typeTagValueCheck(e,t){const r={state:!0,errorInfo:""};if(e.getApiType()!==a.ApiType.PROPERTY)return r;let o=t.type.replace(/\s/g,""),s=[];const c=i.CommonFunctions.judgeSpecialCase(e.typeKind);s=c.length>0?c:e.type;let l=s.join("|").replace(/\s/g,"");const u=!e.getIsRequired();return u&&1===s.length?l="?"+l:u&&s.length>1&&(l="?("+l+")"),o.replace(/\s/g,"")!==l.replace(/\s/g,"")&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_TYPE),r}static syscapTagValueCheck(e){const t={state:!0,errorInfo:""},r=s.SystemCapability,i=e.name;return r.includes(i)||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_SYSCAP),t}static defaultTagValueCheck(e){const t={state:!0,errorInfo:""};return 0===(e.name+e.type).length&&(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_DEFAULT),t}static deprecatedTagValueCheck(e){const t={state:!0,errorInfo:""},r=e.name,a=i.CommonFunctions.getSinceVersion(e.description),o=/^\d+$/.test(a);return"since"===r&&o||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_DEPRECATED),t}static permissionTagValueCheck(e){const t={state:!0,errorInfo:""},r=c.module.definePermissions,i=[];r.forEach((e=>{i.push(e.name)}));return(e.name+e.description).replace(/(\s|\(|\))/g,"").replace(/(or|and)/g,"$").split("$").forEach((e=>{i.includes(e)||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_PERMISSION)})),t}static throwsTagValueCheck(e,t,r){const a={state:!0,errorInfo:""},o=e.type,s=e.name,c=/^\d+$/.test(s);if("BusinessError"!==o&&(a.state=!1,a.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_VALUE1_THROWS,[JSON.stringify(t)])),c){if("401"===s){const t=e.description,r=t.indexOf(i.throwsTagDescriptionArr[0]),o=t.indexOf(i.throwsTagDescriptionArr[1]),s=t.indexOf(i.throwsTagDescriptionArr[2]),c=t.indexOf(i.throwsTagDescriptionArr[3]),l=-1!==o||-1!==s||-1!==c,u=new RegExp(`${i.throwsTagDescriptionArr[0]}|${i.throwsTagDescriptionArr[1]}|${i.throwsTagDescriptionArr[2]}|${i.throwsTagDescriptionArr[3]}|<br>`,"g"),d=/[A-Za-z]+/.test(t.replace(u,""));(-1===r||r>1||!l||d)&&(a.state=!1,a.errorInfo=a.errorInfo+n.ErrorMessage.ERROR_INFO_VALUE3_THROWS)}}else a.state=!1,a.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_VALUE2_THROWS,[JSON.stringify(t)]);const l=[];return r?.forEach((e=>{l.push(e.tag)})),a}static paramTagValueCheck(e,t,r){const o={state:!0,errorInfo:""};if(![a.ApiType.METHOD,a.ApiType.TYPE_ALIAS].includes(e.getApiType()))return o;const s=t.type.replace(/\s/g,""),c=t.name;let l="",u=[];if(e.getApiType()===a.ApiType.TYPE_ALIAS){const t=e.getParamInfos();l=t.length>r?t[r].getApiName():"",u=t.length>r?t[r].getType():[""]}else{const t=e.getParams();l=t[r]?.getApiName();const n=t[r]?i.CommonFunctions.judgeSpecialCase(t[r].paramType):[];u=n.length>0?n:t[r]?.getType()}return c!==l&&(o.state=!1,o.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_VALUE_PARAM,[JSON.stringify(r+1),JSON.stringify(r+1)])),void 0!==u&&s===u.join("|").replace(/\s/g,"")||(o.state=!1,o.errorInfo=o.errorInfo+i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_TYPE_PARAM,[JSON.stringify(r+1),JSON.stringify(r+1)])),o}static checkModule(e){return/^[A-Za-z0-9_]+\b(\.[A-Za-z0-9_]+\b)*$/.test(e)||/^[A-Za-z0-9_]+\b(\.[A-Za-z0-9_]+\b)*\#[A-Za-z0-9_]+\b$/.test(e)||/^[A-Za-z0-9_]+\b(\.[A-Za-z0-9_]+\b)*\#event:[A-Za-z0-9_]+\b$/.test(e)}static splitUseinsteadValue(e,t){e&&""!==e||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_USEINSTEAD);const r=e.split(/\//g);if(1===r.length)t.state=-1===r[0].indexOf(o.PunctuationMark.LEFT_BRACKET)&&-1===r[0].indexOf(o.PunctuationMark.RIGHT_BRACKET)&&d.checkModule(r[0]);else if(2===r.length){const e=r[0].split(".");if(1===e.length)t.state=t.state&&/^[A-Za-z0-9_]+\b$/.test(e[0])&&d.checkModule(r[1]);else{let n=!0;for(let t=0;t<e.length;t++)n=n&&"ohos"===e[0]&&/^[A-Za-z0-9_]+\b$/.test(e[t]);n&&(d.checkModule(r[1])||-1!==r[1].indexOf(o.PunctuationMark.LEFT_BRACKET)||-1!==r[1].indexOf(o.PunctuationMark.RIGHT_BRACKET))||(t.state=!1)}}else t.state=!1;t.state||(t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_USEINSTEAD)}static useinsteadTagValueCheck(e){let t={state:!0,errorInfo:""};const r=e.name;return""===r?(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_USEINSTEAD):d.splitUseinsteadValue(r,t),t}}t.TagValueCheck=d},56795:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WordsCheck=void 0;const n=r(44791),i=r(77002),a=r(93333),o=r(31575),s=r(93333),c=r(54732),l=r(77596),u=new Set([...c.dictionariesArr,...l.dictionariesSupplementaryArr,...a.tagsArrayOfOrder,...a.officialTagArr]);class d{static wordCheckResultsProcessing(e){e.forEach((e=>{if(e.getApiType()===n.ApiType.SOURCE_FILE)return;let t=e.getJsDocText()+e.getDefinedText();if(e.getApiType()===n.ApiType.IMPORT){const r=e.getImportValues(),n=[];r.forEach((e=>{n.push(e.key)})),t=n.join("|")}d.wordsCheck(t,e)}))}static wordsCheck(e,t){const r=/\s{2,}/g;let n=e.replace(/(\/\*|\*\/|\*)|\n|\r/g," ");s.punctuationMarkSet.forEach((e=>{const t=new RegExp(e,"g");t.test(n)&&(n=n.replace(t," ").replace(r," "))}));let c=n.split(/\s/g);const l=[];c.forEach((e=>{const r=[];d.splitComplexWords(e,r),r.forEach((r=>{if(!d.checkBaseWord(r.toLowerCase())){l.push(r);const n={state:!1,errorInfo:a.CommonFunctions.createErrorInfo(i.ErrorMessage.ERROR_WORD,[e,r])},c=new i.ErrorBaseInfo;c.setErrorID(i.ErrorID.MISSPELL_WORDS_ID).setErrorLevel(i.ErrorLevel.MIDDLE).setErrorType(i.ErrorType.MISSPELL_WORDS).setLogType(i.LogType.LOG_JSDOC).setErrorInfo(n.errorInfo);const u=a.CommonFunctions.getErrorInfo(t,void 0,t.getFileAbsolutePath(),c);o.AddErrorLogs.addAPICheckErrorLogs(u,s.compositiveResult,s.compositiveLocalResult)}}))}))}static hasUnderline(e){return/(?<!^)\_/g.test(e)}static splitComplexWords(e,t){let r=[];d.hasUnderline(e)?r=e.split(/(?<!^)\_/g):/(?<!^)(?=[A-Z])/g.test(e)?r=e.split(/(?<!^)(?=[A-Z])/g):r.push(e),r.forEach((e=>{/[0-9]/g.test(e)?t.concat(e.split(/0-9/g)):t.push(e)}))}static checkBaseWord(e){return!/^[a-z][0-9]+$/g.test(e)&&!(/^[A-Za-z]+/g.test(e)&&!u.has(e.toLowerCase()))}}t.WordsCheck=d},22127:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiCountHelper=void 0;const n=r(85057),i=r(80879);t.ApiCountHelper=class{static countApi(e){const t=[],r=i.FunctionUtils.readKitFile(),a=r.filePathSet,o=r.subsystemMap,s=r.kitNameMap;return a.forEach((r=>{let i=0,a="",c=new n.ApiCountInfo;e.forEach((e=>{r===e.getFilePath().replace(/\\/g,"/")&&(i++,a=e.getKitInfo())})),i>0&&(c.setFilePath(`api/${r}`).setApiNumber(i).setKitName(""===a?s.get(r):a).setsubSystem(o.get(r)),t.push(c))})),t}}},12311:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.DiffProcessorHelper=void 0;const i=r(44791),a=r(37583),o=r(40149),s=r(87960),c=r(38572),l=r(93333),u=r(8136),d=n(r(58843));!function(e){e.permissionsCharMap=new Map([["and",{splitchar:"and",transferchar:"&"}],["or",{splitchar:"or",transferchar:"|"}]]),e.typeCharMap=new Map([["and",{splitchar:"&",transferchar:"&"}],["or",{splitchar:"|",transferchar:"|"}]]);class t{static diffJsDocInfo(r,n,a,o,s){if(!(r instanceof i.ApiInfo&&n instanceof i.ApiInfo))return;const c=r.getLastJsDocInfo(),l=n.getLastJsDocInfo();t.diffSinceVersion(r,n,a);const u=t.diffErrorCodes(c,l);u?.forEach((t=>{const i=e.wrapDiffInfo(r,n,t);a.push(i)}));for(let t=0;t<e.jsDocDiffProcessors.length;t++){const i=(0,e.jsDocDiffProcessors[t])(c,l,o,s);if(!i)continue;const u=e.wrapDiffInfo(r,n,i);a.push(u)}}static getFirstSinceVersion(e){let t="";for(let r=0;r<e.length;r++){const n=e[r];if("-1"!==n.getSince())return t=n.getSince(),t}return t}static diffSinceVersion(t,r,n){const i=new o.DiffTypeInfo,a=t.getJsDocInfos()[0],s=r.getJsDocInfos()[0],c=a?a.getSince():"-1",l=s?s.getSince():"-1";if(i.setStatusCode(o.ApiStatusCode.VERSION_CHNAGES).setOldMessage(c).setNewMessage(l),c===l)return;if("-1"===c){i.setDiffType(o.ApiDiffType.SINCE_VERSION_NA_TO_HAVE);const a=e.wrapDiffInfo(t,r,i);return void n.push(a)}if("-1"===l){i.setDiffType(o.ApiDiffType.SINCE_VERSION_HAVE_TO_NA);const a=e.wrapDiffInfo(t,r,i);return void n.push(a)}i.setDiffType(o.ApiDiffType.SINCE_VERSION_A_TO_B);const u=e.wrapDiffInfo(t,r,i);n.push(u)}static diffIsSystemApi(e,t){const r=new o.DiffTypeInfo,n=!!e&&e.getIsSystemApi(),i=!!t&&t.getIsSystemApi();if(r.setStatusCode(o.ApiStatusCode.SYSTEM_API_CHNAGES).setOldMessage(s.StringUtils.transformBooleanToTag(n,a.Comment.JsDocTag.SYSTEM_API)).setNewMessage(s.StringUtils.transformBooleanToTag(i,a.Comment.JsDocTag.SYSTEM_API)),i!==n)return i?r.setDiffType(o.ApiDiffType.PUBLIC_TO_SYSTEM):r.setDiffType(o.ApiDiffType.SYSTEM_TO_PUBLIC)}static diffModelLimitation(e,t){const r=new o.DiffTypeInfo,n=new Map([["_stagemodelonly",o.ApiDiffType.NA_TO_STAGE],["stagemodelonly_",o.ApiDiffType.STAGE_TO_NA],["_famodelonly",o.ApiDiffType.NA_TO_FA],["famodelonly_",o.ApiDiffType.FA_TO_NA],["famodelonly_stagemodelonly",o.ApiDiffType.FA_TO_STAGE],["stagemodelonly_famodelonly",o.ApiDiffType.STAGE_TO_FA]]),i=e?e.getModelLimitation().toLowerCase():"",a=t?t.getModelLimitation().toLowerCase():"";if(a===i)return;const s=`${i.toLowerCase()}_${a.toLowerCase()}`,c=n.get(s);return r.setStatusCode(o.ApiStatusCode.MODEL_CHNAGES).setDiffType(c).setOldMessage(i).setNewMessage(a),r}static diffIsForm(e,t){const r=new o.DiffTypeInfo,n=!!e&&e.getIsForm(),i=!!t&&t.getIsForm();if(r.setStatusCode(o.ApiStatusCode.FORM_CHANGED).setOldMessage(s.StringUtils.transformBooleanToTag(n,a.Comment.JsDocTag.FORM)).setNewMessage(s.StringUtils.transformBooleanToTag(i,a.Comment.JsDocTag.FORM)),i!==n)return i?r.setDiffType(o.ApiDiffType.NA_TO_CARD):r.setDiffType(o.ApiDiffType.CARD_TO_NA)}static diffIsCrossPlatForm(e,t){const r=new o.DiffTypeInfo,n=!!e&&e.getIsCrossPlatForm(),i=!!t&&t.getIsCrossPlatForm();if(r.setStatusCode(o.ApiStatusCode.CROSSPLATFORM_CHANGED).setOldMessage(s.StringUtils.transformBooleanToTag(n,a.Comment.JsDocTag.CROSS_PLAT_FORM)).setNewMessage(s.StringUtils.transformBooleanToTag(i,a.Comment.JsDocTag.CROSS_PLAT_FORM)),i!==n)return i?r.setDiffType(o.ApiDiffType.NA_TO_CROSS_PLATFORM):r.setDiffType(o.ApiDiffType.CROSS_PLATFORM_TO_NA)}static diffAtomicService(e,t){const r=new o.DiffTypeInfo,n=!!e&&e.getIsAtomicService(),i=!!t&&t.getIsAtomicService();if(r.setStatusCode(o.ApiStatusCode.ATOMICSERVICE_CHANGE).setOldMessage(s.StringUtils.transformBooleanToTag(n,a.Comment.JsDocTag.ATOMIC_SERVICE)).setNewMessage(s.StringUtils.transformBooleanToTag(i,a.Comment.JsDocTag.ATOMIC_SERVICE)),n!==i)return i?r.setDiffType(o.ApiDiffType.ATOMIC_SERVICE_NA_TO_HAVE):r.setDiffType(o.ApiDiffType.ATOMIC_SERVICE_HAVE_TO_NA)}static diffPermissions(t,r){const n=new o.DiffTypeInfo,i=t?t.getPermission():"",a=r?r.getPermission():"";if(n.setStatusCode(o.ApiStatusCode.PERMISSION_CHANGES).setOldMessage(i).setNewMessage(a),i===a)return;if(""===i)return n.setStatusCode(o.ApiStatusCode.PERMISSION_NEW).setDiffType(o.ApiDiffType.PERMISSION_NA_TO_HAVE);if(""===a)return n.setStatusCode(o.ApiStatusCode.PERMISSION_DELETE).setDiffType(o.ApiDiffType.PERMISSION_HAVE_TO_NA);const s=new c.PermissionsProcessorHelper(e.permissionsCharMap).comparePermissions(i,a);return s.range===c.RangeChange.DOWN?n.setDiffType(o.ApiDiffType.PERMISSION_RANGE_SMALLER):s.range===c.RangeChange.UP?n.setDiffType(o.ApiDiffType.PERMISSION_RANGE_BIGGER):n.setDiffType(o.ApiDiffType.PERMISSION_RANGE_CHANGE)}static diffErrorCodes(e,t){const r=new o.DiffTypeInfo,n=e?e.getErrorCode().sort():[],i=t?t.getErrorCode().sort():[],a=new Set(n),s=new Set(i),c=new Set(i.concat(n)),l=n.toString(),u=i.toString(),d=[];if(r.setStatusCode(o.ApiStatusCode.ERRORCODE_CHANGES).setOldMessage(l).setNewMessage(u),u===l)return;if(0===n.length&&0!==i.length)return d.push(r.setStatusCode(o.ApiStatusCode.NEW_ERRORCODE).setDiffType(o.ApiDiffType.ERROR_CODE_NA_TO_HAVE)),d;const p=[],f=[];if(c.forEach((e=>{a.has(e)||p.push(e),s.has(e)||f.push(e)})),0!==p.length){const e=new o.DiffTypeInfo;e.setOldMessage("NA").setNewMessage(p.join()).setStatusCode(o.ApiStatusCode.NEW_ERRORCODE).setDiffType(o.ApiDiffType.ERROR_CODE_ADD),d.push(e)}if(0!==f.length){const e=new o.DiffTypeInfo;e.setOldMessage(f.join()).setNewMessage("NA").setStatusCode(o.ApiStatusCode.ERRORCODE_DELETE).setDiffType(o.ApiDiffType.ERROR_CODE_REDUCE),d.push(e)}return d}static diffSyscap(e,t){const r=new o.DiffTypeInfo,n=e?e.getSyscap():"",i=t?t.getSyscap():"";if(r.setStatusCode(o.ApiStatusCode.SYSCAP_CHANGES).setOldMessage(n).setNewMessage(i),i!==n)return""===n?r.setDiffType(o.ApiDiffType.SYSCAP_NA_TO_HAVE):""===i?r.setDiffType(o.ApiDiffType.SYSCAP_HAVE_TO_NA):r.setDiffType(o.ApiDiffType.SYSCAP_A_TO_B)}static diffDeprecated(e,t,r,n){const i=new o.DiffTypeInfo,a=e?e.getDeprecatedVersion():"-1",s=t?t.getDeprecatedVersion():"-1";if(i.setStatusCode(o.ApiStatusCode.DEPRECATED_CHNAGES).setOldMessage(a.toString()).setNewMessage(s.toString()),s!==a){if(n){if("-1"===a&&!r)return i.setDiffType(o.ApiDiffType.DEPRECATED_NOT_All);if("-1"===a&&r)return i.setDiffType(o.ApiDiffType.DEPRECATED_NA_TO_HAVE)}else{if("-1"===a)return i.setDiffType(o.ApiDiffType.DEPRECATED_NA_TO_HAVE);if("-1"===s)return i.setDiffType(o.ApiDiffType.DEPRECATED_HAVE_TO_NA)}return"-1"===s?i.setDiffType(o.ApiDiffType.DEPRECATED_HAVE_TO_NA):i.setDiffType(o.ApiDiffType.DEPRECATED_A_TO_B)}}}e.JsDocDiffHelper=t;class r{static diffDecorator(e,t,n){if(!(e instanceof i.ApiInfo&&t instanceof i.ApiInfo))return;const a=r.setDecoratorsMap(e.getDecorators()),o=r.setDecoratorsMap(t.getDecorators());if(0!==o.size)if(0!==a.size)r.diffDecoratorInfo(a,o,e,t,n);else for(const i of o.keys())r.addNewDecoratorsInfo(i,e,t,n),o.delete(i);else for(const i of a.keys())r.addDeleteDecoratorsInfo(i,e,t,n)}static diffDecoratorInfo(e,t,n,i,a){const o=new Set;for(const s of e.keys()){const c=t.get(s),l=e.get(s);c?l&&c.join()===l.join()&&(t.delete(s),o.add(s)):(r.addDeleteDecoratorsInfo(s,n,i,a),o.add(s))}for(const e of t.keys())r.addNewDecoratorsInfo(e,n,i,a);for(const t of e.keys())o.has(t)||r.addDeleteDecoratorsInfo(t,n,i,a)}static setDecoratorsMap(e){const t=new Map;return e?(e.forEach((e=>{const r=e.getExpressionArguments();t.set(e.getExpression(),void 0===r?[]:r)})),t):t}static addDeleteDecoratorsInfo(t,r,n,i){const a=new o.DiffTypeInfo;a.setStatusCode(o.ApiStatusCode.DELETE_DECORATOR).setDiffType(o.ApiDiffType.DELETE_DECORATOR).setOldMessage(t).setNewMessage("");const s=e.wrapDiffInfo(r,n,a);i.push(s)}static addNewDecoratorsInfo(t,r,n,i){const a=new o.DiffTypeInfo;a.setStatusCode(o.ApiStatusCode.NEW_DECORATOR).setDiffType(o.ApiDiffType.NEW_DECORATOR).setOldMessage("").setNewMessage(t);const s=e.wrapDiffInfo(r,n,a);i.push(s)}}e.ApiDecoratorsDiffHelper=r;class n{static diffHistoricalJsDoc(t,r,n){if(!(t instanceof i.ApiInfo&&r instanceof i.ApiInfo))return;const a=l.CommonFunctions.getCheckApiVersion().toString(),s=t.getJsDocText().split("*/"),c=r.getJsDocText().split("*/"),d=new o.DiffTypeInfo;if(t.getCurrentVersion()===a?s.splice(u.NumberConstant.DELETE_CURRENT_JS_DOC):s.splice(-1),r.getCurrentVersion()===a?c.splice(u.NumberConstant.DELETE_CURRENT_JS_DOC):c.splice(-1),s.length===c.length){for(let i=0;i<s.length;i++)if(s[i].replace(/\r\n|\n|\s+/g,"")!==c[i].replace(/\r\n|\n|\s+/g,"")){d.setDiffType(o.ApiDiffType.HISTORICAL_JSDOC_CHANGE);const i=e.wrapDiffInfo(t,r,d);n.push(i)}}else{d.setDiffType(o.ApiDiffType.HISTORICAL_JSDOC_CHANGE);const i=e.wrapDiffInfo(t,r,d);n.push(i)}}static diffHistoricalAPI(t,r,n){const i=l.CommonFunctions.getCheckApiVersion().toString(),a=t.getDefinedText(),s=r.getDefinedText(),c=new o.DiffTypeInfo;if(a!==s&&r.getCurrentVersion()!==i){c.setDiffType(o.ApiDiffType.HISTORICAL_API_CHANGE);const i=e.wrapDiffInfo(t,r,c);n.push(i)}}}e.ApiCheckHelper=n;class p{static diffNodeInfo(t,r,i,a){a&&(n.diffHistoricalJsDoc(t,r,i),n.diffHistoricalAPI(t,r,i));const o=r.getApiType();if(t.getApiType()!==o)return;const s=e.apiNodeDiffMethod.get(o);s&&s(t,r,i)}static diffBaseType(t,r){const n=new o.DiffTypeInfo;if(t===r)return;if(n.setStatusCode(o.ApiStatusCode.TYPE_CHNAGES).setOldMessage(t).setNewMessage(r),""===t)return n.setDiffType(o.ApiDiffType.TYPE_RANGE_CHANGE);if(""===r)return n.setDiffType(o.ApiDiffType.TYPE_RANGE_CHANGE);const i=new c.PermissionsProcessorHelper(e.typeCharMap).comparePermissions(t,r);return i.range===c.RangeChange.DOWN?n.setDiffType(o.ApiDiffType.TYPE_RANGE_SMALLER):i.range===c.RangeChange.UP?n.setDiffType(o.ApiDiffType.TYPE_RANGE_BIGGER):n.setDiffType(o.ApiDiffType.TYPE_RANGE_CHANGE)}static diffMethod(t,r,n){e.methodDiffProcessors.forEach((i=>{const a=i(t,r);if(a)if(a instanceof Array)a.forEach((i=>{const a=e.wrapDiffInfo(t,r,i.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(a)}));else{const i=e.wrapDiffInfo(t,r,a.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(i)}}))}static diffTypeAliasReturnType(e,t){const r=new o.DiffTypeInfo,n=e.getReturnType().split("|"),i=t.getReturnType().split("|"),a=n.toString().replace(/\r|\n|\s+|'|"/g,""),s=i.toString().replace(/\r|\n|\s+|'|"/g,"");if(a!==s)return r.setOldMessage(a).setNewMessage(s),m(i,n)?r.setDiffType(o.ApiDiffType.TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD):m(n,i)?r.setDiffType(o.ApiDiffType.TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE):r.setDiffType(o.ApiDiffType.TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE)}static diffMethodReturnType(e,t){const r=new o.DiffTypeInfo,n=e.getReturnValue(),i=t.getReturnValue(),a=n.toString().replace(/\r|\n|\s+|'|"|>/g,""),c=i.toString().replace(/\r|\n|\s+|'|"|>/g,"");if(a!==c)return r.setOldMessage(n.toString()).setNewMessage(i.toString()),m(i,n)||s.StringUtils.hasSubstring(c,a)?r.setDiffType(o.ApiDiffType.FUNCTION_RETURN_TYPE_ADD):m(n,i)||s.StringUtils.hasSubstring(a,c)?r.setDiffType(o.ApiDiffType.FUNCTION_RETURN_TYPE_REDUCE):r.setDiffType(o.ApiDiffType.FUNCTION_RETURN_TYPE_CHANGE)}static getDiffMethodTypes(e){return e?{POS_CHANGE:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE,ADD_OPTIONAL_PARAM:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD,ADD_REQUIRED_PARAM:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD,REDUCE_PARAM:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_REDUCE,PARAM_TYPE_CHANGE:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE,PARAM_TYPE_ADD:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD,PARAM_TYPE_REDUCE:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE,PARAM_TO_UNREQUIRED:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED,PARAM_TO_REQUIRED:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED,PARAM_CHANGE:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_CHANGE}:{POS_CHANGE:o.ApiDiffType.FUNCTION_PARAM_POS_CHANGE,ADD_OPTIONAL_PARAM:o.ApiDiffType.FUNCTION_PARAM_UNREQUIRED_ADD,ADD_REQUIRED_PARAM:o.ApiDiffType.FUNCTION_PARAM_REQUIRED_ADD,REDUCE_PARAM:o.ApiDiffType.FUNCTION_PARAM_REDUCE,PARAM_TYPE_CHANGE:o.ApiDiffType.FUNCTION_PARAM_TYPE_CHANGE,PARAM_TYPE_ADD:o.ApiDiffType.FUNCTION_PARAM_TYPE_ADD,PARAM_TYPE_REDUCE:o.ApiDiffType.FUNCTION_PARAM_TYPE_REDUCE,PARAM_TO_UNREQUIRED:o.ApiDiffType.FUNCTION_PARAM_TO_UNREQUIRED,PARAM_TO_REQUIRED:o.ApiDiffType.FUNCTION_PARAM_TO_REQUIRED,PARAM_CHANGE:o.ApiDiffType.FUNCTION_PARAM_CHANGE}}static diffMethodParams(e,t){const r=[],n="TypeAlias"===e.getApiType(),i=n?e.getParamInfos():e.getParams(),a=n?t.getParamInfos():t.getParams(),o=p.getDiffMethodTypes(n);return p.diffParamsPosition(i,a,r,o),p.diffNewOptionalParam(i,a,r,o),p.diffNewRequiredParam(i,a,r,o),p.diffReducedParam(i,a,r,o),p.diffParamTypeChange(i,a,r,o),p.diffParamChange(i,a,r,o),p.diffMethodParamChange(i,a,r,o),r}static diffMethodParamChange(e,t,r,n){const i=e.length,a=t.length;if(!i||!a)return;const s=[],c=[];for(let r=0;r<Math.max(i,a);r++){const n=t[r],i=e[r];n&&c.push(n.getApiName()),i&&s.push(i.getApiName())}const l=i-e.filter((e=>!c.includes(e.getApiName()))).length;if(l===i||l===a)return;let u=e,d=t;r.forEach((e=>{u=u.filter((t=>e.getOldMessage()!==t.getDefinedText())),d=d.filter((t=>e.getNewMessage()!==t.getDefinedText()))}));const p=_(u),f=_(d),m=new o.DiffTypeInfo;m.setDiffType(n.PARAM_CHANGE).setOldMessage(p).setNewMessage(f),r.push(m)}static diffParamsPosition(e,t,r,n){const i=e.length,a=t.length;if(i<=1||i!==a)return;var s;if(s=e,t.every(((e,t)=>{const r=s[t];return e.getApiName()===r.getApiName()})))return;if(!f(e,t))return;const c=_(e),l=_(t),u=new o.DiffTypeInfo;u.setDiffType(n.POS_CHANGE).setOldMessage(c).setNewMessage(l),r.push(u)}static diffNewOptionalParam(e,t,r,n){const i=e.length,a=t.length;if(0===a||i>=a)return;if(!f(t,e))return;const s=e.map((e=>e.getApiName())),c=t.filter((e=>{const t=e.getApiName();return!s.includes(t)&&!e.getIsRequired()}));if(!c.length)return;const l=_(c),u=new o.DiffTypeInfo;u.setOldMessage("").setDiffType(n.ADD_OPTIONAL_PARAM).setNewMessage(l),r.push(u)}static diffNewRequiredParam(e,t,r,n){const i=e.length,a=t.length;if(0===a||i>=a)return;if(!f(t,e))return;const s=e.map((e=>e.getApiName())),c=t.filter((e=>{const t=e.getApiName();return!s.includes(t)&&e.getIsRequired()}));if(!c.length)return;const l=_(c),u=new o.DiffTypeInfo;u.setDiffType(n.ADD_REQUIRED_PARAM).setOldMessage("").setNewMessage(l),r.push(u)}static diffReducedParam(e,t,r,n){const i=e.length,a=t.length;if(0===i||a>=i)return;const s=f(e,t);if(a>0&&!s)return;const c=t.map((e=>e.getApiName())),l=_(e.filter((e=>!c.includes(e.getApiName())))),u=new o.DiffTypeInfo;u.setDiffType(n.REDUCE_PARAM).setOldMessage(l).setNewMessage(""),r.push(u)}static diffParamChange(e,t,r,n){const i=e.length,a=t.length;if(!i||!a)return;const s=e.filter((e=>{const r=e.getApiName();return t.find((e=>e.getApiName()===r))}));s.length&&s.forEach(((e,i)=>{const a=e.getApiName(),s=t.find((e=>e.getApiName()===a));if(s.getIsRequired()!==e.getIsRequired()){const t=e.getDefinedText(),i=s.getDefinedText(),a=e.getIsRequired()?n.PARAM_TO_UNREQUIRED:n.PARAM_TO_REQUIRED,c=new o.DiffTypeInfo;c.setDiffType(a).setOldMessage(t).setNewMessage(i),r.push(c)}}))}static diffParamTypeChange(e,t,r,n){const i=e.length,a=t.length;if(!i||!a)return;const s=t.map((e=>e.getApiName())),c=e.filter((e=>s.includes(e.getApiName())));c.length&&c.forEach(((e,i)=>{const a=e.getType(),s=t.find((t=>t.getApiName()===e.getApiName())),c=s.getType();if(a.toString().replace(/\r|\n|\s+|'|"|,|;/g,"")!==c.toString().replace(/\r|\n|\s+|'|"|,|;/g,"")){const t=g(a,c,n),i=e.getDefinedText(),l=s.getDefinedText(),u=new o.DiffTypeInfo;u.setDiffType(t).setOldMessage(i).setNewMessage(l),r.push(u)}}))}static diffMethodParamName(e,t){if(e.getApiName()!==t.getApiName())return o.ApiDiffType.FUNCTION_PARAM_NAME_CHANGE}static diffMethodParamType(e,t){const r=e.getType(),n=t.getType(),i=r.toString().replace(/\r|\n|\s+|'|"/g,"").replace(/\|/g,"\\|"),a=n.toString().replace(/\r|\n|\s+|'|"/g,"").replace(/\|/g,"\\|");if(i!==a)return s.StringUtils.hasSubstring(a,i)?o.ApiDiffType.FUNCTION_PARAM_TYPE_ADD:s.StringUtils.hasSubstring(i,a)?o.ApiDiffType.FUNCTION_PARAM_TYPE_REDUCE:o.ApiDiffType.FUNCTION_PARAM_TYPE_CHANGE}static diffMethodParamRequired(e,t){const r=e.getIsRequired(),n=t.getIsRequired();if(r!==n)return n?o.ApiDiffType.FUNCTION_PARAM_TO_REQUIRED:o.ApiDiffType.FUNCTION_PARAM_TO_UNREQUIRED}static diffClass(t,r,n){const i=new o.DiffTypeInfo,a=t.getApiName(),s=r.getApiName();if(a===s)return;i.setStatusCode(o.ApiStatusCode.CLASS_CHANGES).setDiffType(o.ApiDiffType.API_NAME_CHANGE).setOldMessage(a).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i);n.push(c)}static diffInterface(t,r,n){const i=new o.DiffTypeInfo,a=t.getApiName(),s=r.getApiName();if(a===s)return;i.setStatusCode(o.ApiStatusCode.CLASS_CHANGES).setDiffType(o.ApiDiffType.API_NAME_CHANGE).setOldMessage(a).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i);n.push(c)}static diffNamespace(t,r,n){const i=new o.DiffTypeInfo,a=t.getApiName(),s=r.getApiName();if(a===s)return;i.setStatusCode(o.ApiStatusCode.CLASS_CHANGES).setDiffType(o.ApiDiffType.API_NAME_CHANGE).setOldMessage(a).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i);n.push(c)}static diffProperty(t,r,n){e.propertyDiffProcessors.forEach((i=>{const a=i(t,r);if(!a)return;const s=e.wrapDiffInfo(t,r,a.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(s)}))}static diffPropertyType(e,t){const r=new o.DiffTypeInfo,n=e.getType(),i=t.getType(),a=e.getIsReadOnly(),c=t.getIsReadOnly(),l=n.toString().replace(/\r|\n|\s+|\>|\}/g,""),u=i.toString().replace(/\r|\n|\s+|\>|\}/g,""),p=t.getTypeKind()===d.default.SyntaxKind.UnionType;if(l!==u)return r.setOldMessage(n.toString()).setNewMessage(i.toString()),l.replace(/\,|\;/g,"")===u.replace(/\,|\;/g,"")?r.setDiffType(o.ApiDiffType.PROPERTY_TYPE_SIGN_CHANGE):p&&m(n,i)?r.setDiffType(a?o.ApiDiffType.PROPERTY_READONLY_REDUCE:o.ApiDiffType.PROPERTY_WRITABLE_REDUCE):p&&m(i,n)||!p&&s.StringUtils.hasSubstring(u,l)?r.setDiffType(c?o.ApiDiffType.PROPERTY_READONLY_ADD:o.ApiDiffType.PROPERTY_WRITABLE_ADD):!p&&s.StringUtils.hasSubstring(l,u)?r.setDiffType(a?o.ApiDiffType.PROPERTY_READONLY_REDUCE:o.ApiDiffType.PROPERTY_WRITABLE_REDUCE):r.setDiffType(o.ApiDiffType.PROPERTY_TYPE_CHANGE)}static diffPropertyRequired(e,t){const r=new o.DiffTypeInfo,n=e.getApiName(),i=t.getApiName(),a=e.getIsReadOnly(),s=new Map([["_true_false_true",o.ApiDiffType.PROPERTY_READONLY_TO_UNREQUIRED],["_false_true_true",o.ApiDiffType.PROPERTY_READONLY_TO_REQUIRED],["_true_false_false",o.ApiDiffType.PROPERTY_WRITABLE_TO_UNREQUIRED],["_false_true_false",o.ApiDiffType.PROPERTY_WRITABLE_TO_REQUIRED]]),c=e.getIsRequired(),l=t.getIsRequired();if(n===i&&c===l)return;r.setOldMessage(e.getDefinedText()).setNewMessage(t.getDefinedText());const u=`_${!!c}_${!!l}_${!!a}`,d=s.get(u);return r.setDiffType(d)}static diffConstant(t,r,n){e.constantDiffProcessors.forEach((i=>{const a=i(t,r);if(!a)return;const s=e.wrapDiffInfo(t,r,a.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(s)}))}static diffConstantValue(e,t){const r=new o.DiffTypeInfo,n=e.getValue(),i=t.getValue();if(n!==i)return r.setOldMessage(n).setNewMessage(i),r.setDiffType(o.ApiDiffType.CONSTANT_VALUE_CHANGE)}static diffTypeAlias(t,r,n){if(e.typeAliasDiffProcessors.forEach((i=>{const a=i(t,r);if(!a)return;const o=e.wrapDiffInfo(t,r,a);n.push(o)})),t.getTypeIsFunction()){const i=p.diffMethodParams(t,r),a=p.diffTypeAliasReturnType(t,r);a&&i.push(a),i.forEach((i=>{const a=e.wrapDiffInfo(t,r,i.setStatusCode(o.ApiStatusCode.TYPE_CHNAGES));n.push(a)}))}}static diffTypeAliasType(e,t){const r=new o.DiffTypeInfo,n=e.getType(),i=t.getType(),a=n.toString(),s=i.toString();if(a.replace(/\r|\n|\s+|'|"/g,"")===s.replace(/\r|\n|\s+|'|"/g,""))return;if(e.getTypeIsFunction())return;const c=g(n,i,{PARAM_TYPE_CHANGE:o.ApiDiffType.TYPE_ALIAS_CHANGE,PARAM_TYPE_ADD:o.ApiDiffType.TYPE_ALIAS_ADD,PARAM_TYPE_REDUCE:o.ApiDiffType.TYPE_ALIAS_REDUCE});return r.setOldMessage(n.join(" | ")).setNewMessage(i.join(" | ")).setStatusCode(o.ApiStatusCode.TYPE_CHNAGES).setDiffType(c),r}static diffEnum(t,r,n){const i=new o.DiffTypeInfo,a=t.getApiName(),s=r.getApiName();if(a===s)return;i.setDiffType(o.ApiDiffType.API_NAME_CHANGE).setOldMessage(a).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(c)}static diffEnumMember(t,r,n){e.enumDiffProcessors.forEach((i=>{const a=i(t,r);if(!a)return;const s=e.wrapDiffInfo(t,r,a.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(s)}))}static diffEnumMemberValue(e,t){const r=new o.DiffTypeInfo,n=e.getValue(),i=t.getValue();if(n!==i)return r.setOldMessage(n).setNewMessage(i),r.setDiffType(o.ApiDiffType.ENUM_MEMBER_VALUE_CHANGE)}static diffApiName(e,t){const r=new o.DiffTypeInfo,n=e.getApiName(),i=t.getApiName();if(n!==i)return r.setOldMessage(n).setNewMessage(i),r.setDiffType(o.ApiDiffType.API_NAME_CHANGE)}static diffSingleParamType(e,t,r){const n=e.toString().replace(/\r|\n|\s+|'|"|>/g,"").replace(/\|/g,"\\|"),i=t.toString().replace(/\r|\n|\s+|'|"|>/g,"").replace(/\|/g,"\\|");return s.StringUtils.hasSubstring(i,n)?r.PARAM_TYPE_ADD:s.StringUtils.hasSubstring(n,i)?r.PARAM_TYPE_REDUCE:r.PARAM_TYPE_CHANGE}static diffExport(t,r,n){const a=new o.DiffTypeInfo(o.ApiStatusCode.DEFAULT,o.ApiDiffType.DEFAULT,t.getDefinedText(),r.getDefinedText());if(t.getApiType()===i.ApiType.EXPORT_DEFAULT&&r.getApiType()===i.ApiType.EXPORT_DEFAULT){if(t.getDefinedText()===r.getDefinedText())return;{a.setStatusCode(o.ApiStatusCode.EXPORT_NAME_CHANGE).setDiffType(o.ApiDiffType.EXPORT_NAME_CHANGE);const i=e.wrapDiffInfo(t,r,a);n.push(i)}}if(!(t instanceof i.ExportDeclareInfo&&r instanceof i.ExportDeclareInfo))return;const s=t.getExportValues(),c=r.getExportValues();if(s.length>c.length){a.setStatusCode(o.ApiStatusCode.EXPORT_NAME_NUMBER_REDUCE).setDiffType(o.ApiDiffType.EXPORT_NAME_NUMBER_REDUCE);const i=e.wrapDiffInfo(t,r,a);n.push(i)}else if(s.length<c.length){let i=[];if(i=s.filter((e=>c.some((({key:t})=>e.key===t)))),i.length===s.length){a.setStatusCode(o.ApiStatusCode.EXPORT_NAME_NUMBER_ADD).setDiffType(o.ApiDiffType.EXPORT_NAME_NUMBER_ADD);const i=e.wrapDiffInfo(t,r,a);n.push(i)}else{a.setStatusCode(o.ApiStatusCode.EXPORT_NAME_CHANGE).setDiffType(o.ApiDiffType.EXPORT_NAME_CHANGE);const i=e.wrapDiffInfo(t,r,a);n.push(i)}}else{let i=[];if(i=s.filter((e=>!c.some((({key:t})=>e.key===t)))),i.length>0){a.setStatusCode(o.ApiStatusCode.EXPORT_NAME_CHANGE).setDiffType(o.ApiDiffType.EXPORT_NAME_CHANGE);const i=e.wrapDiffInfo(t,r,a);n.push(i)}}}}function f(e,t){return t.every((t=>{const r=t.getApiName(),n=e.find((e=>e.getApiName()===r));return n&&n.getApiType()===t.getApiType()}))}function m(e,t){return t.every((t=>e.includes(t)))}function g(t,r,n){const i=t.length,a=r.length;switch(i-a){case 0:return e.ApiNodeDiffHelper.diffSingleParamType(t,r,n);case-a:return n.PARAM_TYPE_ADD;case i:return n.PARAM_TYPE_REDUCE;default:return i>a?r.every((e=>t.includes(e)))?n.PARAM_TYPE_REDUCE:n.PARAM_TYPE_CHANGE:t.every((e=>r.includes(e)))?n.PARAM_TYPE_ADD:n.PARAM_TYPE_CHANGE}}function _(e){return e.length<=1?e[0].getDefinedText():e.reduce(((t,r,n)=>{let i=r.getDefinedText();return n!==e.length-1&&(i+=", "),t+i}),"")}e.ApiNodeDiffHelper=p,e.wrapDiffInfo=function(e=void 0,t=void 0,r,n){const a=t,s=t,c=t&&t.getParentApiType()?t.getParentApiType():"";let l=!0;!n&&o.parentApiTypeSet.has(c)&&r.getDiffType()===o.ApiDiffType.ADD&&(t?.getApiType()===i.ApiType.METHOD&&s.getIsRequired()||t?.getApiType()===i.ApiType.PROPERTY&&a.getIsRequired())&&(l=!1);const u=new o.BasicDiffInfo,d=r.getDiffType(),p=e,f=t,m=p?.getLastJsDocInfo?.()?.getIsSystemApi?.(),g=f?.getLastJsDocInfo?.()?.getIsSystemApi?.();let _=f?.getIsSameNameFunction?.();return t||(_=p?.getIsSameNameFunction()),e&&function(e,t){const r=e,n=r.getLastJsDocInfo?.()?.getKit?.();n&&t.setOldKitInfo(n);t.setOldApiDefinedText(e.getDefinedText()).setApiType(e.getApiType()).setOldApiName(e.getApiName()).setOldDtsName(e.getFilePath()).setOldHierarchicalRelations(e.getHierarchicalRelations()).setOldPos(e.getPos()).setOldSyscapField(e.getSyscap())}(e,u),t&&function(e,t){const r=e,n=r.getLastJsDocInfo?.()?.getKit?.();n&&t.setNewKitInfo(n);t.setNewApiDefinedText(e.getDefinedText()).setApiType(e.getApiType()).setNewApiName(e.getApiName()).setNewDtsName(e.getFilePath()).setNewHierarchicalRelations(e.getHierarchicalRelations()).setNewPos(e.getPos()).setNewSyscapField(e.getSyscap())}(t,u),u.setDiffType(d).setDiffMessage(o.diffMap.get(d)).setStatusCode(r.getStatusCode()).setIsCompatible(!!l&&!o.incompatibleApiDiffTypes.has(d)).setOldDescription(r.getOldMessage()).setNewDescription(r.getNewMessage()).setIsSystemapi(g||m).setIsSameNameFunction(_),u},e.apiNodeDiffMethod=new Map([[i.ApiType.EXPORT,p.diffExport],[i.ApiType.EXPORT_DEFAULT,p.diffExport],[i.ApiType.PROPERTY,p.diffProperty],[i.ApiType.CLASS,p.diffClass],[i.ApiType.INTERFACE,p.diffInterface],[i.ApiType.NAMESPACE,p.diffNamespace],[i.ApiType.METHOD,p.diffMethod],[i.ApiType.CONSTANT,p.diffConstant],[i.ApiType.ENUM,p.diffEnum],[i.ApiType.ENUM_VALUE,p.diffEnumMember],[i.ApiType.TYPE_ALIAS,e.ApiNodeDiffHelper.diffTypeAlias]]),e.jsDocDiffProcessors=[t.diffSyscap,t.diffDeprecated,t.diffPermissions,t.diffIsForm,t.diffIsCrossPlatForm,t.diffModelLimitation,t.diffIsSystemApi,t.diffAtomicService],e.enumDiffProcessors=[p.diffApiName,p.diffEnumMemberValue],e.typeAliasDiffProcessors=[p.diffApiName,p.diffTypeAliasType],e.constantDiffProcessors=[p.diffApiName,p.diffConstantValue],e.propertyDiffProcessors=[p.diffApiName,p.diffPropertyType,p.diffPropertyRequired],e.methodDiffProcessors=[p.diffApiName,p.diffMethodReturnType,p.diffMethodParams]}(t.DiffProcessorHelper||(t.DiffProcessorHelper={}))},38572:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RangeChange=exports.PermissionsProcessorHelper=void 0;const logUtil_1=__webpack_require__(4e3),Constant_1=__webpack_require__(8136),PATT={GET_NOT_TRANSFERCHAR:/(?<!\\)([\*|\.|\?|\+|\^|\$|\||\/|\[|\]|\(|\)|\{|\}])/g,VARIABLE_START:"(?<=\\b|\\s|\\*|\\.|\\?|\\+|\\^|\\$|\\||\\/|\\[|\\]|\\(|\\)|\\{|\\})",VARIABLE_END:"(?=\\b|\\s|\\*|\\.|\\?|\\+|\\^|\\$|\\||\\/|\\[|\\]|\\(|\\)|\\{|\\})",SPILT_CHAR_START:"(\\b|\\s)",SPILT_CHAR_END:"(\\b|\\s)"};class PermissionsProcessorHelper{constructor(e){this.charMap=new Map([["and",{splitchar:"&",transferchar:"&"}],["or",{splitchar:"\\|",transferchar:"|"}],["eq",{splitchar:"=",transferchar:"=="}],["LE",{splitchar:"->",transferchar:"<="}],["RE",{splitchar:"<-",transferchar:">="}],["not",{splitchar:"-",transferchar:"!"}],["lcurve",{splitchar:"\\(",transferchar:"("}],["rcurve",{splitchar:"\\)",transferchar:")"}]]),this.splitchar=["&","\\|","->","-","=","\\(","\\)"],this.transferchar=["&","|","<=","!","==","(",")"],this.variables=[];let t=this.charMap;return e&&(t=new Map([...t,...e]),this.splitchar=[],this.transferchar=[],t.forEach(((e,t)=>{let r=e.splitchar;r instanceof RegExp||(r=r.replace(PATT.GET_NOT_TRANSFERCHAR,"\\$1"),r!==e.splitchar&&logUtil_1.LogUtil.i("PermissionsProcessorHelper",`传入的表达式有问题,已经自行修改! ${t}中的splitchar为${e.splitchar},修改为${r}`)),this.splitchar.push(r),this.transferchar.push(e.transferchar)}))),this}getvariables(){return this.variables}comparePermissions(e,t){const r={range:RangeChange.NO,situationDown:[],situationUp:[],variables:[]},n=this.calculateParadigmDown(e,t),i=this.calculateParadigmUp(e,t);return r.variables=this.variables,n.range!==RangeChange.NO&&(r.situationDown=n.situationDown,r.range=RangeChange.DOWN),i.range!==RangeChange.NO&&(r.situationUp=i.situationUp,r.range=r.range===RangeChange.NO?RangeChange.UP:RangeChange.CHANGE),r}calculateParadigmDown(e,t){const r={range:RangeChange.NO,situationDown:[],situationUp:[],variables:[]},n=this.charMap.get("LE");if(!n)return r;const i=`(${e}) ${n.splitchar} (${t})`,a=this.calculateParadigm(i);return r.variables=this.variables,a.fail.length>0&&(r.range=RangeChange.DOWN,r.situationDown=a.fail.map((e=>Number(e).toString(Constant_1.NumberConstant.BINARY_SYSTEM).padStart(this.variables.length,"0").split("").map((e=>Boolean(Number(e))))))),r}calculateParadigmUp(e,t){const r={range:RangeChange.NO,situationDown:[],situationUp:[],variables:[]},n=this.charMap.get("RE");if(!n)return r;const i=`(${e}) ${n.splitchar} (${t})`,a=this.calculateParadigm(i);return r.variables=this.variables,a.fail.length>0&&(r.range=RangeChange.UP,r.situationUp=a.fail.map((e=>Number(e).toString(Constant_1.NumberConstant.BINARY_SYSTEM).padStart(this.variables.length,"0").split("").map((e=>Boolean(Number(e))))))),r}calculateParadigm(e){const t=this.findVariables(e);this.variables=t,e=this.formatten(e);const r=this.variables.length,n=PermissionsProcessorHelper.getAllState(r),i=this.calculate(e,r,n);return this.processValues(i)}findVariables(e){this.splitchar.forEach((t=>{const r=new RegExp(t,"g");e=e.replace(r," ")}));const t=new Set(e.split(" "));t.delete("");return[...t].sort(((e,t)=>e.length===t.length?e<t?-1:1:e.length<t.length?1:-1))}formatten(e){return this.splitchar.forEach(((t,r)=>{t instanceof RegExp||(t=new RegExp(PATT.SPILT_CHAR_START+t+PATT.SPILT_CHAR_END,"g")),e=e.replace(t,this.transferchar[r])})),e}static getAllState(e){const t=[];for(let r=0;r<Constant_1.NumberConstant.BINARY_SYSTEM**e;r++)t.push(Number(r).toString(Constant_1.NumberConstant.BINARY_SYSTEM).padStart(e,"0").split(""));return t}calculate(str,variablesLen,states){const statesLen=states.length,values=[];let outError=!0;for(let i=0;i<statesLen;i++){const state=states[i];let modifyStr=str;for(let e=0;e<variablesLen;e++){let t=this.variables[e];t=t.replace(PATT.GET_NOT_TRANSFERCHAR,"\\$1");const r=new RegExp(PATT.VARIABLE_START+t+PATT.VARIABLE_END,"g");modifyStr=modifyStr.replace(r,state[e])}try{values.push(eval(modifyStr))}catch(e){outError&&(outError=!outError,logUtil_1.LogUtil.e("PermissionsProcessor.calculate",`error logical expression: ${str}`),values.push(0))}}return values}processValues(e){const t={pass:[],fail:[]};for(let r=0;r<e.length;r++){e[r]?t.pass.push(r):t.fail.push(r)}return t}}var RangeChange;exports.PermissionsProcessorHelper=PermissionsProcessorHelper,PermissionsProcessorHelper.NEED_TRANSFER_CHAR=["*",".","?","+","^","$","|","/","[","]","(",")","{","}"],function(e){e.DOWN="down",e.UP="up",e.NO="no",e.CHANGE="change"}(RangeChange=exports.RangeChange||(exports.RangeChange={}))},26499:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.diffJsdocMethod=t.DiffTagInfoHelper=t.DiffHelper=void 0;const i=n(r(2543)),a=n(r(58843)),o=r(8136),s=r(27944),c=r(44791),l=r(40149),u=r(30871),d=r(16137),p=r(12311),f=r(80879),m=r(37583),g=r(44791),_=r(87960),h=r(56405);class y{static diffSDK(e,t,r,n){const a=i.default.cloneDeep(e),o=i.default.cloneDeep(t),s=[],c=y.getApiLocations(a,n),d=y.getApiLocations(o,n);y.diffKit(a,o,s);const f=new Set(Array.from(a.keys()));for(const e of c.keys()){const t=c.get(e),i=u.Parser.getApiInfo(t,a,r);if(!d.has(e)){i.forEach((e=>{s.push(p.DiffProcessorHelper.wrapDiffInfo(e,void 0,new l.DiffTypeInfo(l.ApiStatusCode.DELETE,l.ApiDiffType.REDUCE,e.getDefinedText())))}));continue}const f=u.Parser.getApiInfo(t,o,r);y.diffApis(i,f,s,r,n),d.delete(e)}for(const e of d.keys()){const t=d.get(e),n=u.Parser.getApiInfo(t,o,r),i=t.slice(0,-1);n.forEach((e=>{let t=!1;f.has(e.getFilePath())&&c.get(i.join())||(t=!0),s.push(p.DiffProcessorHelper.wrapDiffInfo(void 0,e,new l.DiffTypeInfo(l.ApiStatusCode.NEW_API,l.ApiDiffType.ADD,void 0,e.getDefinedText()),t))}))}return s}static diffKit(e,t,r){for(const n of e.keys()){const i=y.getSourceFileInfo(e.get(n));i?.setSyscap(y.getSyscapField(i));const a=i?.getLastJsDocInfo()?.getKit();if(t.get(n)||"NA"===a){if(t.get(n)){const e=y.getSourceFileInfo(t.get(n)),o=e?.getLastJsDocInfo()?.getKit();a!==o&&r.push(p.DiffProcessorHelper.wrapDiffInfo(i,e,new l.DiffTypeInfo(l.ApiStatusCode.KIT_CHANGE,y.getKitDiffType(a,o),a,o)))}}else r.push(p.DiffProcessorHelper.wrapDiffInfo(i,void 0,new l.DiffTypeInfo(l.ApiStatusCode.KIT_CHANGE,l.ApiDiffType.KIT_HAVE_TO_NA,a,"NA")))}for(const n of t.keys()){const i=y.getSourceFileInfo(t.get(n)),a=i?.getLastJsDocInfo()?.getKit();e.get(n)||"NA"===a||r.push(p.DiffProcessorHelper.wrapDiffInfo(void 0,i,new l.DiffTypeInfo(l.ApiStatusCode.KIT_CHANGE,l.ApiDiffType.KIT_NA_TO_HAVE,"NA",a)))}}static getKitDiffType(e,t){return"NA"===e&&""===t?l.ApiDiffType.KIT_NA_TO_HAVE:""===e&&"NA"===t?l.ApiDiffType.KIT_HAVE_TO_NA:"NA"===e||""===e?l.ApiDiffType.KIT_NA_TO_HAVE:"NA"===t||""===t?l.ApiDiffType.KIT_HAVE_TO_NA:l.ApiDiffType.KIT_CHANGE}static getSourceFileInfo(e){if(!e)return;let t=[];for(const r of e.keys())r===o.StringConstant.SELF&&(t=e.get(r));return t[0]}static judgeIsSameNameFunction(e){let t=!1;return e.length>1&&e[0].getApiType()===c.ApiType.METHOD&&(t=!0),t}static diffApis(e,t,r,n,i){const a=y.getDiffSet(e,t),o=a[0],s=a[1];0!==o.size?0!==s.size?y.diffChangeApi(e,t,r,i):o.forEach((e=>{r.push(p.DiffProcessorHelper.wrapDiffInfo(e,void 0,new l.DiffTypeInfo(l.ApiStatusCode.DELETE,l.ApiDiffType.REDUCE,e.getDefinedText(),void 0)))})):s.forEach((e=>{r.push(p.DiffProcessorHelper.wrapDiffInfo(void 0,e,new l.DiffTypeInfo(l.ApiStatusCode.NEW_API,l.ApiDiffType.ADD,void 0,e.getDefinedText())))}))}static diffChangeApi(e,t,r,n){if(1===e.length&&e.length===t.length)p.DiffProcessorHelper.JsDocDiffHelper.diffJsDocInfo(e[0],t[0],r),p.DiffProcessorHelper.ApiDecoratorsDiffHelper.diffDecorator(e[0],t[0],r),p.DiffProcessorHelper.ApiNodeDiffHelper.diffNodeInfo(e[0],t[0],r,n);else{const i=y.setmethodInfoMap(t),a=y.setmethodInfoMap(e);e.forEach((e=>{const t=i.get(e.getDefinedText().replace(/\r|\n|\s+|,|;/g,""));t&&(p.DiffProcessorHelper.ApiNodeDiffHelper.diffNodeInfo(e,t,r,n),p.DiffProcessorHelper.JsDocDiffHelper.diffJsDocInfo(e,t,r),p.DiffProcessorHelper.ApiDecoratorsDiffHelper.diffDecorator(e,t,r),i.delete(e.getDefinedText()),a.delete(e.getDefinedText()))}));for(const e of i.values()){if(!(e instanceof c.ApiInfo))continue;1===e.getJsDocInfos().length&&(r.push(p.DiffProcessorHelper.wrapDiffInfo(void 0,e,new l.DiffTypeInfo(l.ApiStatusCode.NEW_API,l.ApiDiffType.NEW_SAME_NAME_FUNCTION,void 0,e.getDefinedText()))),i.delete(e.getDefinedText().replace(/\r|\n|\s+|,|;/g,"")))}if(1===a.size&&1===i.size){const e=a.entries().next().value[1],t=i.entries().next().value[1];p.DiffProcessorHelper.JsDocDiffHelper.diffJsDocInfo(e,t,r),p.DiffProcessorHelper.ApiDecoratorsDiffHelper.diffDecorator(e,t,r),p.DiffProcessorHelper.ApiNodeDiffHelper.diffNodeInfo(e,t,r,n)}else y.diffSameNameFunction(a,i,r,n)}}static diffSameNameFunction(e,t,r,n){for(const i of t.values()){if(!(i instanceof c.ApiInfo))continue;const a=i.getPenultimateJsDocInfo();for(const o of e.values()){if(!(o instanceof c.ApiInfo))continue;const s=o.getLastJsDocInfo();y.diffJsDoc(a,s)&&(p.DiffProcessorHelper.ApiNodeDiffHelper.diffNodeInfo(o,i,r,n),e.delete(o.getDefinedText().replace(/\r|\n|\s+|,|;/g,"")),t.delete(i.getDefinedText().replace(/\r|\n|\s+|,|;/g,"")))}}for(const e of t.values())r.push(p.DiffProcessorHelper.wrapDiffInfo(void 0,e,new l.DiffTypeInfo(l.ApiStatusCode.NEW_API,l.ApiDiffType.NEW_SAME_NAME_FUNCTION,void 0,e.getDefinedText())));for(const t of e.values())r.push(p.DiffProcessorHelper.wrapDiffInfo(t,void 0,new l.DiffTypeInfo(l.ApiStatusCode.DELETE,l.ApiDiffType.REDUCE_SAME_NAME_FUNCTION,t.getDefinedText(),void 0)))}static diffJsDoc(e,r){const n=new Set,i=v.diffParamTagInfo(r,e)&&v.diffReturnsTagInfo(r,e);return e?.getTags()?.forEach((i=>{const a=t.diffJsdocMethod.get(i.tag);a&&n.add(a(r,e))})),!(1!==n.size||!n.has(!0))||!!(n.size>1&&i)}static judgeIsAllDeprecated(e){let t=!0;return e.forEach((e=>{const r=e.getLastJsDocInfo()?.getDeprecatedVersion();"-1"!==r&&r||(t=!1)})),t}static handleDeprecatedVersion(e){let t=!0;e.forEach((e=>{const r=e.getLastJsDocInfo()?.getDeprecatedVersion();"-1"!==r&&r||(t=!1)})),t||e.forEach((e=>{e.getLastJsDocInfo()?.setDeprecatedVersion("-1")}))}static joinApiText(e){const t=[];for(const r of e.keys())t.push(r);return t.join(" #&# ")}static setmethodInfoMap(e){const t=new Map;return e.forEach((e=>{t.set(e.getDefinedText().replace(/\r|\n|\s+|,|;/g,""),e)})),t}static getDiffSet(e,t){const r=new Map,n=new Map;y.setApiInfoMap(r,e),y.setApiInfoMap(n,t);const i=new Map;r.forEach(((e,t)=>{n.has(t)||i.set(t,e)}));const a=new Map;return n.forEach(((e,t)=>{r.has(t)||a.set(t,e)})),[i,a]}static setApiInfoMap(e,t){t.forEach((t=>{const r=`${t.getDefinedText()}#${t.getJsDocText()}#${JSON.stringify(t.getDecorators())}`;e.set(r,t)}))}static getApiLocations(e,t){const r=new Map;for(const n of e.keys()){const i=0,a=e.get(n);y.processFileApiMap(a,r,i,t)}return r}static processFileApiMap(e,t,r,n){for(const i of e.keys()){if(i===o.StringConstant.SELF)continue;e.get(i).get(o.StringConstant.SELF).forEach((e=>{y.processApiInfo(e,t,r,n),r++}))}}static deleteUselessJsdoc(e){const t=e.getJsDocText().split("*/"),r=t;return r[1]&&_.StringUtils.hasSubstring(r[1],h.CommentHelper.fileTag)&&t.splice(1,1),r[0]&&_.StringUtils.hasSubstring(r[0],h.CommentHelper.fileTag)&&t.splice(0,1),r[0]&&_.StringUtils.hasSubstring(r[0],h.CommentHelper.licenseKeyword)&&t.splice(0,1),t.join("*/")}static processApiInfo(e,t,r,n){const i=e.getNode();if(n){const t=i?.getFullText().replace(i.getText(),"");t&&e.setJsDocText(t)}if(0===r&&e.getParentApiType()===c.ApiType.SOURCE_FILE){const t=y.deleteUselessJsdoc(e);e.setJsDocText(t)}e.setSyscap(y.getSyscapField(e)),e.setParentApi(void 0),e.removeNode();let a=s.EnumUtils.enum2arr([c.ApiType.EXPORT,c.ApiType.EXPORT_DEFAULT]).includes(e.getApiType());if(!d.apiStatisticsType.has(e.getApiType())&&!a)return;if("constructor"===e.getApiName())return;const o=e,l=o.getHierarchicalRelations();if(t.set(l.toString(),l),!c.containerApiTypes.has(o.getApiType()))return;o.getChildApis().forEach((e=>{y.processApiInfo(e,t,1,n)}))}static getSyscapField(e){if(e.getApiType()===c.ApiType.SOURCE_FILE){const t=e.getNode()?.getFullText();let r="";return/\@[S|s][Y|y][S|s][C|c][A|a][P|p]\s*((\w|\.|\/|\{|\@|\}|\s)+)/g.test(t)&&t.replace(/\@[S|s][Y|y][S|s][C|c][A|a][P|p]\s*((\w|\.|\/|\{|\@|\}|\s)+)/g,((e,t)=>(r=e.replace(/\@[S|s][Y|y][S|s][C|c][A|a][P|p]/g,"").trim(),r))),f.FunctionUtils.handleSyscap(r)}if(g.notJsDocApiTypes.has(e.getApiType()))return"";const t=e,r=t.getLastJsDocInfo();if(!r)return y.searchSyscapFieldInParent(t);let n=r?.getSyscap();return n?n?f.FunctionUtils.handleSyscap(n):"":y.searchSyscapFieldInParent(t)}static searchSyscapFieldInParent(e){let t=e,r="";const n=t.getNode();for(;n&&t&&!a.default.isSourceFile(n);){if(r=t.getSyscap(),r)return r;t=t.getParentApi()}return r}}t.DiffHelper=y;class v{static diffSyscapTagInfo(e,t){return e?.getSyscap()===t?.getSyscap()}static diffSinceTagInfo(e,t){return e?.getSince()===t?.getSince()}static diffFormTagInfo(e,t){return e?.getIsForm()===t?.getIsForm()}static diffCrossPlatFromTagInfo(e,t){return e?.getIsCrossPlatForm()===t?.getIsCrossPlatForm()}static diffSystemApiTagInfo(e,t){return e?.getIsSystemApi()===t?.getIsSystemApi()}static diffModelTagInfo(e,t){return e?.getModelLimitation()===t?.getModelLimitation()}static diffDeprecatedTagInfo(e,t){return e?.getDeprecatedVersion()===t?.getDeprecatedVersion()}static diffUseinsteadTagInfo(e,t){return e?.getUseinstead()===t?.getUseinstead()}static diffPermissionTagInfo(e,t){return e?.getPermission()===t?.getPermission()}static diffThrowsTagInfo(e,t){return e?.getErrorCode().sort().join()===t?.getErrorCode().sort().join()}static diffAtomicServiceTagInfo(e,t){return e?.getIsAtomicService()===t?.getIsAtomicService()}static diffParamTagInfo(e,t){const r=[],n=[];return e?.getTags()?.forEach((e=>{e.tag===m.Comment.JsDocTag.PARAM&&r.push(`${e.name}#${e.type}`)})),t?.getTags()?.forEach((e=>{e.tag===m.Comment.JsDocTag.PARAM&&n.push(`${e.name}#${e.type}`)})),r.join()===n.join()}static diffReturnsTagInfo(e,t){let r="";return e?.getTags()?.forEach((e=>{e.tag===m.Comment.JsDocTag.RETURNS&&(r=e.type)})),t?.getTags()?.forEach((e=>{e.tag===m.Comment.JsDocTag.PARAM&&(r=e.type)})),r==r}}t.DiffTagInfoHelper=v,t.diffJsdocMethod=new Map([[m.Comment.JsDocTag.SYSCAP,v.diffSyscapTagInfo],[m.Comment.JsDocTag.SINCE,v.diffSinceTagInfo],[m.Comment.JsDocTag.FORM,v.diffFormTagInfo],[m.Comment.JsDocTag.CROSS_PLAT_FORM,v.diffCrossPlatFromTagInfo],[m.Comment.JsDocTag.SYSTEM_API,v.diffSystemApiTagInfo],[m.Comment.JsDocTag.STAGE_MODEL_ONLY,v.diffModelTagInfo],[m.Comment.JsDocTag.FA_MODEL_ONLY,v.diffModelTagInfo],[m.Comment.JsDocTag.DEPRECATED,v.diffDeprecatedTagInfo],[m.Comment.JsDocTag.USEINSTEAD,v.diffUseinsteadTagInfo],[m.Comment.JsDocTag.PERMISSION,v.diffPermissionTagInfo],[m.Comment.JsDocTag.THROWS,v.diffThrowsTagInfo],[m.Comment.JsDocTag.ATOMIC_SERVICE,v.diffAtomicServiceTagInfo],[m.Comment.JsDocTag.PARAM,v.diffParamTagInfo],[m.Comment.JsDocTag.RETURNS,v.diffReturnsTagInfo]])},87191:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SyscapProcessorHelper=void 0;const n=r(80879);class i{static matchSubsystem(e){const t=n.FunctionUtils.readSubsystemFile().subsystemMap,r=i.getSyscapField(e);return r?t.get(r):"NA"}static getSyscapField(e){const t=e.getNewSyscapField();if(t)return t;const r=e.getOldSyscapField();return r||""}static getSingleKitInfo(e){return""!==e.getNewKitInfo()?e.getNewKitInfo():e.getOldKitInfo()}}t.SyscapProcessorHelper=i},56405:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.JsDocProcessorHelper=t.CommentHelper=void 0;const i=n(r(58843)),a=r(37583),o=r(4e3),s=r(87960),c=r(44791);class l{static getNodeLeadingComments(e,t){try{const r=i.default.getLeadingCommentRanges(t.getFullText(),e.getFullStart());if(r&&r.length){const e=[];return r.forEach((r=>{const n=t.getFullText().slice(r.pos,r.end),i=l.parseComment(n,r.kind,!0);i.pos=r.pos,i.end=r.end,e.push(i)})),e}return[]}catch(t){return o.LogUtil.d("CommentHelper",`node(kind=${e.kind}) is created in memory.`),[]}}static parseComment(e,t,n){const{parse:a}=r(67634),o={text:e,isMultiLine:t===i.default.SyntaxKind.MultiLineCommentTrivia,isLeading:n,description:"",commentTags:[],parsedComment:void 0,pos:-1,end:-1,ignore:!1,isApiComment:!1,isInstruct:!1,isFileJsDoc:!1};let c=e,l=a(c);if(0===l.length){if(s.StringUtils.hasSubstring(c,this.referenceRegexp)||t===i.default.SyntaxKind.SingleLineCommentTrivia){o.isMultiLine=!1;const e=2;o.text=c.substring(e,c.length)}return o}o.parsedComment=l[0],o.description=l[0].description;for(let e=0;e<l[0].tags.length;e++){const t=l[0].tags[e];o.commentTags.push({tag:t.tag,name:t.name,type:t.type,optional:t.optional,description:t.description,source:t.source[0].source,lineNumber:t.source[0].number,tokenSource:t.source,defaultValue:t.default?t.default:void 0})}return s.StringUtils.hasSubstring(c,this.fileTag)&&(o.isFileJsDoc=!0),o.isApiComment=!0,o}}t.CommentHelper=l,l.licenseKeyword="Copyright",l.referenceRegexp=/\/\/\/\s*<reference\s*path/g,l.referenceCommentRegexp=/\/\s*<reference\s*path/g,l.mutiCommentDelimiter="/**",l.fileTag=/\@file|\@kit/g;class u{static setSyscap(e,t){e.setSyscap(t.name)}static setSince(e,t){e.setSince(t.name)}static setIsForm(e){e.setIsForm(!0)}static setIsCrossPlatForm(e){e.setIsCrossPlatForm(!0)}static setIsSystemApi(e){e.setIsSystemApi(!0)}static setIsAtomicService(e){e.setIsAtomicService(!0)}static setDeprecatedVersion(e,t){e.setDeprecatedVersion(t.description)}static setUseinstead(e,t){e.setUseinstead(t.name)}static setPermission(e,t){const r=t.description,n=t.name,i=r?`${n} ${r}`:`${n}`;e.setPermission(i)}static addErrorCode(e,t){t&&!isNaN(Number(t.name))&&e.addErrorCode(Number(t.name))}static setTypeInfo(e,t){e.setTypeInfo(t.type)}static setIsConstant(e){e.setIsConstant(!0)}static setModelLimitation(e,t){e.setModelLimitation(t.tag)}static setKitContent(e,t){e.setKit(t.source.replace(/\* @kit\s+|\r|\n/g,"").trim())}static setIsFile(e,t){e.setFileTagContent(t.source.replace(/\* @file\s+|\r|\n/g,"").trim())}static processJsDoc(e,t,r){const n=new a.Comment.JsDocInfo;n.setDescription(e.description),n.setKit(t),n.setFileTagContent(r);for(let t=0;t<e.commentTags.length;t++){const r=e.commentTags[t];n.addTag(r);const i=d.get(r.tag.toLowerCase());i&&i(n,r)}return n}static processJsDocInfos(e,t,r,n){const i=e.getSourceFile(),o=l.getNodeLeadingComments(e,i).filter((e=>e.isApiComment&&!e.isFileJsDoc&&t!==c.ApiType.SOURCE_FILE||e.isApiComment&&e.isFileJsDoc&&t===c.ApiType.SOURCE_FILE)),s=[];if(0===o.length&&""!==r){const e=new a.Comment.JsDocInfo;e.setKit(r),e.setFileTagContent(n),s.push(e)}for(let e=0;e<o.length;e++){const t=o[e],i=u.processJsDoc(t,r,n);s.push(i)}return s}}t.JsDocProcessorHelper=u;const d=new Map([[a.Comment.JsDocTag.SYSCAP,u.setSyscap],[a.Comment.JsDocTag.SINCE,u.setSince],[a.Comment.JsDocTag.FORM,u.setIsForm],[a.Comment.JsDocTag.CROSS_PLAT_FORM,u.setIsCrossPlatForm],[a.Comment.JsDocTag.SYSTEM_API,u.setIsSystemApi],[a.Comment.JsDocTag.STAGE_MODEL_ONLY,u.setModelLimitation],[a.Comment.JsDocTag.FA_MODEL_ONLY,u.setModelLimitation],[a.Comment.JsDocTag.DEPRECATED,u.setDeprecatedVersion],[a.Comment.JsDocTag.USEINSTEAD,u.setUseinstead],[a.Comment.JsDocTag.TYPE,u.setTypeInfo],[a.Comment.JsDocTag.PERMISSION,u.setPermission],[a.Comment.JsDocTag.THROWS,u.addErrorCode],[a.Comment.JsDocTag.CONSTANT,u.setIsConstant],[a.Comment.JsDocTag.ATOMIC_SERVICE,u.setIsAtomicService],[a.Comment.JsDocTag.KIT,u.setKitContent],[a.Comment.JsDocTag.FILE,u.setIsFile]])},17858:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.typeMap=t.modifierProcessorMap=t.nodeProcessorMap=t.ModifierHelper=t.NodeProcessorHelper=t.parserParam=void 0;const i=n(r(58843)),a=n(r(2543)),o=r(44791),s=r(87960),c=r(8136);t.parserParam=new o.ParserParam;class l{static processReference(e,t,r){const n=[];if(e.referencedFiles.forEach((t=>{const i=new o.ReferenceInfo(o.ApiType.REFERENCE_FILE,e,r);i.setApiName(o.ApiType.REFERENCE_FILE),i.setPathName(t.fileName),n.push(i)})),0===n.length)return;const i=new Map;i.set(c.StringConstant.SELF,n),t.set(c.StringConstant.REFERENCE,i)}static processNode(e,r,n){const i=t.nodeProcessorMap.get(e.kind);if(!i)return;const a=i(e,n),s=l.setApiInfo(a,r,e),c=l.getChildNodes(e);c&&c.forEach((e=>{a.getApiType()===o.ApiType.STRUCT&&""===e.getFullText()||l.processNode(e,s,a)}))}static setApiInfo(e,t,r){if(e.getApiType()!==o.ApiType.METHOD)return l.setSingleApiInfo(e,t);let n=[];n=l.processEventMethod(e,r),l.processAsyncMethod(n);let i=new Map;return n.forEach((e=>{i=l.setSingleApiInfo(e,t)})),i}static setSingleApiInfo(e,t){const r=e.getApiName(),n=e.getParentApi();if(n&&o.containerApiTypes.has(n.apiType)){n.addChildApi(e)}if(t.has(r)){const n=t.get(r);return n.get(c.StringConstant.SELF).push(e),n}const i=[];i.push(e);const a=new Map;return a.set(c.StringConstant.SELF,i),t.set(r,a),a}static processEventMethod(e,t){const r=[],n=l.getOnOrOffMethodFirstParamType(e,t);if(void 0===n)return r.push(e),r;const o=n.literal;if(n.kind===i.default.SyntaxKind.LiteralType&&i.default.isStringLiteral(o)){const t=o.getText();e.setApiName(`${e.getApiName()}_${t.substring(1,t.length-1)}`),e.setIsJoinType(!0)}else if(n.kind===i.default.SyntaxKind.UnionType){n.types.forEach((t=>{if(i.default.isLiteralTypeNode(t)&&i.default.isStringLiteral(t.literal)){const n=t.literal.getText(),i=a.default.cloneDeep(e);i.setParentApi(e.getParentApi()),i.setApiName(`${e.getApiName()}_${n.substring(1,n.length-1)}`),e.setIsJoinType(!0),r.push(i)}}))}else n.kind===i.default.SyntaxKind.StringKeyword?(e.setApiName(`${e.getApiName()}_string`),e.setIsJoinType(!0)):n.kind===i.default.SyntaxKind.BooleanKeyword?(e.setApiName(`${e.getApiName()}_boolean`),e.setIsJoinType(!0)):(e.setApiName(`${e.getApiName()}_${n.getText()}`),e.setIsJoinType(!0));return 0===r.length&&r.push(e),r}static getOnOrOffMethodFirstParamType(e,t){if(!new Set(c.EventConstant.eventNameList).has(e.getApiName()))return;if(e.setIsJoinType(!0),0===t.parameters.length)return;return t.parameters[0].type}static processAsyncMethod(e){e.forEach((e=>{const t=e,r=t.getReturnValue();if(1===r.length&&r[0].startsWith(c.StringConstant.PROMISE_METHOD_KEY))return void t.setSync(c.StringConstant.PROMISE_METHOD_KEY_CHANGE);const n=t.getParams();for(let e=n.length-1;e>=0;e--){const r=n[e].getType();if(1===r.length&&r[0].startsWith(c.StringConstant.ASYNC_CALLBACK_METHOD_KEY))return void t.setSync(c.StringConstant.ASYNC_CALLBACK_METHOD_KEY_CHANGE)}}))}static getChildNodes(e){return i.default.isInterfaceDeclaration(e)||i.default.isClassDeclaration(e)||i.default.isEnumDeclaration(e)?e.members:i.default.isStructDeclaration(e)?i.default.visitNodes(e.members,(e=>{if(!i.default.isConstructorDeclaration(e))return e})):i.default.isModuleDeclaration(e)&&e.body&&i.default.isModuleBlock(e.body)?e.body.statements:void 0}static processExportAssignment(e,t){const r=new o.ExportDefaultInfo(o.ApiType.EXPORT_DEFAULT,e,t),n=e;return r.setApiName(c.StringConstant.EXPORT_DEFAULT),r.setDefinedText(n.getText()),u.processModifiers(n.modifiers,r),r}static processExportDeclaration(e,t){const r=new o.ExportDeclareInfo(o.ApiType.EXPORT,e,t),n=e,a=n.exportClause;if(a){if(i.default.isNamespaceExport(a))r.setApiName(c.StringConstant.EXPORT+a.name.getText());else if(i.default.isNamedExports(a)){const e=[];a.elements.forEach((t=>{const n=t.propertyName?t.propertyName.getText():"",i=t.name.getText();e.push(i),r.addExportValues(i,n)})),r.setApiName(c.StringConstant.EXPORT+e.join("_"))}}else r.setApiName(c.StringConstant.EXPORT+(n.moduleSpecifier?n.moduleSpecifier.getText():""));return r.setApiName(c.StringConstant.EXPORT),r.setDefinedText(n.getText()),u.processModifiers(n.modifiers,r),r}static processImportEqualsDeclaration(e,t){return new o.ImportInfo(o.ApiType.EXPORT,e,t)}static processImportInfo(e,t){const r=new o.ImportInfo(o.ApiType.IMPORT,e,t),n=e;if(r.setApiName(n.moduleSpecifier.getText()),r.setImportPath(n.moduleSpecifier.getText()),r.setDefinedText(n.getText()),u.processModifiers(n.modifiers,r),void 0===n.importClause)return r;const a=n.importClause;if(a.namedBindings&&i.default.isNamedImports(a.namedBindings))a.namedBindings.elements.forEach((e=>{const t=e.propertyName?e.propertyName.getText():"",n=e.name.getText();r.addImportValue(n,t)}));else{const e=a.name?a.name.escapedText.toString():"";r.addImportValue(e,e)}return r}static processInterface(e,t){const r=e,n=new o.InterfaceInfo(o.ApiType.INTERFACE,e,t);return n.setApiName(r.name.getText()),r.typeParameters?.forEach((e=>{n.setGenericInfo(l.processGenericity(e))})),u.processModifiers(r.modifiers,n),void 0===r.heritageClauses||r.heritageClauses.forEach((e=>{e.token===i.default.SyntaxKind.ExtendsKeyword?e.types.forEach((e=>{const t=new o.ParentClass;t.setImplementClass(""),t.setExtendClass(e.getText()),n.setParentClasses(t)})):e.token===i.default.SyntaxKind.ImplementsKeyword&&e.types.forEach((e=>{const t=new o.ParentClass;t.setImplementClass(e.getText()),t.setExtendClass(""),n.setParentClasses(t)}))})),n}static processGenericity(e){const t=new o.GenericInfo;return t.setIsGenericity(!0),t.setGenericContent(e.getText()),t}static processClass(e,t){const r=e,n=new o.ClassInfo(o.ApiType.CLASS,e,t),a=r.name?r.name.getText():"";return n.setApiName(a),r.typeParameters?.forEach((e=>{n.setGenericInfo(l.processGenericity(e))})),u.processModifiers(r.modifiers,n),void 0===r.heritageClauses||r.heritageClauses.forEach((e=>{e.token===i.default.SyntaxKind.ExtendsKeyword?e.types.forEach((e=>{const t=new o.ParentClass;t.setExtendClass(e.getText()),t.setImplementClass(""),n.setParentClasses(t)})):e.token===i.default.SyntaxKind.ImplementsKeyword&&e.types.forEach((e=>{const t=new o.ParentClass;t.setImplementClass(e.getText()),t.setExtendClass(""),n.setParentClasses(t)}))})),n}static processBaseModule(e,t){const r=e;return i.default.isIdentifier(r.name)?l.processNamespace(e,t):l.processModule(e,t)}static processModule(e,t){const r=e,n=new o.ModuleInfo(o.ApiType.MODULE,e,t);return n.setApiName(r.name.getText()),u.processModifiers(r.modifiers,n),n}static processNamespace(e,t){const r=e,n=new o.NamespaceInfo(o.ApiType.NAMESPACE,e,t);return n.setApiName(r.name.getText()),u.processModifiers(r.modifiers,n),n}static processEnum(e,t){const r=e,n=new o.EnumInfo(o.ApiType.ENUM,e,t);return n.setApiName(r.name.getText()),u.processModifiers(r.modifiers,n),n}static processEnumValue(e,t){const r=e,n=new o.EnumValueInfo(o.ApiType.ENUM_VALUE,e,t);n.setApiName(r.name.getText()),n.setDefinedText(r.getText());const i=t;if(n.setValue(l.getCurrentEnumValue(i)),r.initializer){const e=r.initializer.getText().replace(l.regQuotation,"$1");n.setValue(e)}return n}static getCurrentEnumValue(e){const t=e.getChildApis().length;if(0===t)return String(0);const r=e.getChildApis()[t-1].getValue();return isNaN(Number(r))?"":`${Number(r)+1}`}static processPropertySigAndDec(e,t){const r=e,n=new o.PropertyInfo(o.ApiType.PROPERTY,e,t),i=r.type?r.type:r.initializer;return n.setApiName(r.name?.getText()),n.setDefinedText(r.getText()),u.processModifiers(r.modifiers,n),n.setIsRequired(!r.questionToken),n.addType(l.processDataType(i)),l.processFunctionTypeNode(r.type,n,new o.ParamInfo(o.ApiType.PARAM),!1),n.setTypeKind(i?.kind),n}static processStruct(e,t){const r=e,n=new o.StructInfo(o.ApiType.STRUCT,e,t),i=r.name?r.name.getText():"";return n.setApiName(i),n.setDefinedText(n.getApiName()),u.processModifiers(r.modifiers,n),n}static processMethod(e,t){const r=e,n=new o.MethodInfo(o.ApiType.METHOD,e,t);n.setDefinedText(r.getText());let a=r.name?r.name.getText():"";(i.default.isConstructorDeclaration(r)||i.default.isConstructSignatureDeclaration(r)||i.default.isCallSignatureDeclaration(r))&&(a=c.StringConstant.CONSTRUCTOR_API_NAME),n.setApiName(a),n.setIsRequired(!r.questionToken),r.typeParameters?.forEach((e=>{n.setGenericInfo(l.processGenericity(e))}));const s=r.getText().replace(/export\s+|declare\s+|function\s+|\r\n|\;/g,"");if(n.setCallForm(s),r.type&&i.default.SyntaxKind.VoidKeyword!==r.type.kind){const e=l.processDataType(r.type);n.setReturnValue(e),n.setReturnValueType(r.type.kind),l.processFunctionTypeNode(r.type,n,new o.ParamInfo(o.ApiType.PARAM),!1)}for(let e=0;e<r.parameters.length;e++){const t=r.parameters[e],i=l.processParam(t,n);n.addParam(i)}return i.default.isCallSignatureDeclaration(r)||i.default.isConstructSignatureDeclaration(r)||u.processModifiers(r.modifiers,n),n}static processParam(e,r){const n=new o.ParamInfo(o.ApiType.PARAM);if(n.setApiName(e.name.getText()),n.setIsRequired(!e.questionToken),n.setDefinedText(e.getText()),n.setParamType(e.type?.kind),void 0===e.type)return n;let a;if(l.processFunctionTypeNode(e.type,r,n,!0),i.default.isLiteralTypeNode(e.type))a=t.typeMap.get(e.type.literal.kind);else if(i.default.isFunctionTypeNode(e.type)){const t=l.processMethod(e.type,r);n.setMethodApiInfo(t)}return n.setType(l.processDataType(e.type)),n}static getFilePathFromNode(e){return i.default.isSourceFile(e)?e.fileName:l.getFilePathFromNode(e.parent)}static setSymbolOfTypeReferenceMap(e,t,r){l.symbolOfTypeReferenceMap.has(e)||l.symbolOfTypeReferenceMap.set(e,new Map);const n=l.symbolOfTypeReferenceMap.get(e);n&&(n.has(t.getFullText().trim())||n.set(t.getFullText().trim(),r))}static getSymbolOfTypeReferenceMap(e,t){const r=l.symbolOfTypeReferenceMap.get(e);if(!r)return;const n=r.get(t.getFullText().trim());return n||void 0}static processFunctionTypeNode(e,t,r,n=!0){e&&(i.default.isTypeLiteralNode(e)?l.processFunctionTypeObject(e,t,r,n):i.default.isUnionTypeNode(e)?e.types.forEach((e=>{l.processFunctionTypeNode(e,t,r,n)})):i.default.isFunctionTypeNode(e),i.default.isTypeReferenceNode(e)&&l.processFunctionTypeReference(e,t,r,n))}static processFunctionTypeReference(e,r,n,a=!0){const o=e.typeArguments;o?.forEach((e=>{l.processFunctionTypeNode(e,r,n,a)}));try{const o=t.parserParam.getTsProgram(),s=o.getTypeChecker().getSymbolAtLocation(e.typeName);if(!s)return;const c=s.declarations;if(!c)return;const u=c[0];r.getKitInfoFromParent(r);if(!i.default.isTypeAliasDeclaration(u))return;const d=l.processTypeAlias(u,r);a?n.addTypeLocations(d):r.addTypeLocations(d)}catch(e){}}static processFunctionTypeObject(e,t,r,n=!0){t.getKitInfoFromParent(t);e.members.forEach((e=>{const i=l.processPropertySigAndDec(e,t);n?r.addObjLocations(i):t.addObjLocations(i)}))}static processDataType(e){const t=[];return e?i.default.isUnionTypeNode(e)?(e.types.forEach((e=>{t.push(e.getText())})),t):(t.push(e.getText()),t):t}static TypeAliasDeclaration(e,t){const r=e;return r.type.kind===i.default.SyntaxKind.TypeLiteral?l.processTypeInterface(r,t):l.processTypeAlias(r,t)}static processTypeInterface(e,t){const r=new o.InterfaceInfo(o.ApiType.INTERFACE,e,t);return r.setApiName(e.name.getText()),r.setDefinedText(r.getApiName()),u.processModifiers(e.modifiers,r),r}static processTypeAlias(e,t){const r=new Map([[i.default.SyntaxKind.UnionType,o.TypeAliasType.UNION_TYPE],[i.default.SyntaxKind.TypeLiteral,o.TypeAliasType.OBJECT_TYPE],[i.default.SyntaxKind.TupleType,o.TypeAliasType.TUPLE_TYPE],[i.default.SyntaxKind.TypeReference,o.TypeAliasType.REFERENCE_TYPE]]),n=new o.TypeAliasInfo(o.ApiType.TYPE_ALIAS,e,t);n.setApiName(e.name.getText());const a=r.get(e.type.kind);a&&n.setTypeName(a);let s=e.type;if(i.default.isFunctionTypeNode(s)){s.parameters.forEach((r=>{const i=l.processParam(r,new o.MethodInfo(o.ApiType.METHOD,e,t));n.setParamInfos(i)})),n.setReturnType(s.type.getText()),n.setTypeIsFunction(!0)}else i.default.isTypeLiteralNode(s)&&(s.members.forEach((e=>{const t=l.processPropertySigAndDec(e,n);n.setTypeLiteralApiInfos(t)})),n.setTypeIsObject(!0));return n.setDefinedText(e.getText()),u.processModifiers(e.modifiers,n),n.addType(l.processDataType(e.type)),n}static processVariableStat(e,r){const n=e,a=n.getText(),o=n.declarationList.declarations[0];let s="",c="";if(o.type)if(i.default.isLiteralTypeNode(o.type)){const e=t.typeMap.get(o.type.literal.kind);s=e||"",c=o.type.literal.getText().replace(l.regQuotation,"$1")}else s=o.type.getText();if(/declare\s+const/.test(n.getText())&&/[a-zA-Z]+(Attribute|Interface)/.test(s))return l.processDeclareConstant(n,a,s,r);if(o.initializer){const e=o.initializer.getText();return l.processConstant(n,a,e,r)}const u=o.type;if(u&&i.default.isLiteralTypeNode(u)){const e=u.getText();return l.processConstant(n,a,e,r)}return l.processVaribleProperty(n,a,r)}static processConstant(e,t,r,n){const i=e.declarationList.declarations[0],a=new o.ConstantInfo(o.ApiType.CONSTANT,e,n);return a.setDefinedText(t),a.setApiName(i.name.getText()),a.setValue(r),a}static processDeclareConstant(e,t,r,n){const i=e.declarationList.declarations[0],a=new o.ConstantInfo(o.ApiType.DECLARE_CONST,e,n);return a.setDefinedText(t),a.setApiName(i.name.getText()),a.setValue(r),a}static processVaribleProperty(e,t,r){const n=e.declarationList.declarations[0],i=new o.PropertyInfo(o.ApiType.PROPERTY,e,r);return i.setDefinedText(t),i.setApiName(n.name.getText()),i.addType(l.processDataType(n.type)),i.setIsRequired(!0),i.setTypeKind(n?.type?.kind),s.StringUtils.hasSubstring(t,c.StringConstant.CONST_KEY_WORD)&&i.setIsReadOnly(!0),i}}t.NodeProcessorHelper=l,l.regQuotation=/^[\'|\"](.*)[\'|\"]$/,l.symbolOfTypeReferenceMap=new Map;class u{static setIsStatic(e){e.setIsStatic(!0)}static setIsReadonly(e){const t=e;t.setIsReadOnly&&t.setIsReadOnly(!0)}static setIsExport(e){e.setIsExport(!0)}static processModifiers(e,r){let n="";e&&e.forEach((e=>{o.containerApiTypes.has(r.apiType)&&!i.default.isDecorator(e)&&(n+=` ${e.getText()}`);const a=t.modifierProcessorMap.get(e.kind);a&&a(r)})),o.containerApiTypes.has(r.apiType)&&(n+=` ${r.getApiType().toLowerCase()} ${r.getApiName()}`,r.setDefinedText(n.trim()))}}t.ModifierHelper=u,t.nodeProcessorMap=new Map([[i.default.SyntaxKind.ExportAssignment,l.processExportAssignment],[i.default.SyntaxKind.ExportDeclaration,l.processExportDeclaration],[i.default.SyntaxKind.ImportDeclaration,l.processImportInfo],[i.default.SyntaxKind.VariableStatement,l.processVariableStat],[i.default.SyntaxKind.MethodDeclaration,l.processMethod],[i.default.SyntaxKind.MethodSignature,l.processMethod],[i.default.SyntaxKind.FunctionDeclaration,l.processMethod],[i.default.SyntaxKind.Constructor,l.processMethod],[i.default.SyntaxKind.ConstructSignature,l.processMethod],[i.default.SyntaxKind.CallSignature,l.processMethod],[i.default.SyntaxKind.PropertyDeclaration,l.processPropertySigAndDec],[i.default.SyntaxKind.PropertySignature,l.processPropertySigAndDec],[i.default.SyntaxKind.EnumMember,l.processEnumValue],[i.default.SyntaxKind.EnumDeclaration,l.processEnum],[i.default.SyntaxKind.TypeAliasDeclaration,l.processTypeAlias],[i.default.SyntaxKind.ClassDeclaration,l.processClass],[i.default.SyntaxKind.InterfaceDeclaration,l.processInterface],[i.default.SyntaxKind.ModuleDeclaration,l.processBaseModule],[i.default.SyntaxKind.StructDeclaration,l.processStruct]]),t.modifierProcessorMap=new Map([[i.default.SyntaxKind.ConstKeyword,u.setIsReadonly],[i.default.SyntaxKind.ReadonlyKeyword,u.setIsReadonly],[i.default.SyntaxKind.StaticKeyword,u.setIsStatic],[i.default.SyntaxKind.ExportKeyword,u.setIsExport]]),t.typeMap=new Map([[i.default.SyntaxKind.StringLiteral,"string"],[i.default.SyntaxKind.NumericLiteral,"number"]])},3359:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.resultsProcessMethod=t.ResultsProcessHelper=void 0;const s=o(r(58843)),c=r(37583),l=r(8136),u=r(44791),d=a(r(68020));class p{static getApiInfosInFileMap(e,t){if(t===l.StringConstant.SELF)return[];return e.get(t).get(l.StringConstant.SELF)}static processFileApiMap(e){const t=[];for(const r of e.keys()){p.getApiInfosInFileMap(e,r).forEach((e=>{p.processApiInfo(e),t.push(e)}))}return t}static processApiInfo(e){if(p.cleanApiInfo(e),!u.containerApiTypes.has(e.getApiType()))return;e.getChildApis().forEach((e=>{p.processApiInfo(e)}))}static cleanApiInfo(e){e&&(e.setParentApi(void 0),e.removeNode(),(e instanceof u.MethodInfo||e instanceof u.PropertyInfo)&&(p.cleanChildrenApiInfo(e.getObjLocations()),p.cleanChildrenApiInfo(e.getTypeLocations()),e instanceof u.MethodInfo&&e.getParams().forEach((e=>{p.cleanChildrenApiInfo(e.getObjLocations()),p.cleanChildrenApiInfo(e.getTypeLocations()),p.cleanApiInfo(e.getMethodApiInfo())}))),e instanceof u.TypeAliasInfo&&(p.cleanChildrenApiInfo(e.getTypeLiteralApiInfos()),e.getParamInfos().forEach((e=>{p.cleanChildrenApiInfo(e.getObjLocations()),p.cleanChildrenApiInfo(e.getTypeLocations()),p.cleanApiInfo(e.getMethodApiInfo())}))),p.processJsDocInfos(e))}static cleanChildrenApiInfo(e){e&&e.forEach((e=>{p.cleanApiInfo(e)}))}static processJsDocInfos(e){if(!(e instanceof u.ApiInfo))return;e.getJsDocInfos().forEach((e=>{e.removeTags()}))}static processFileApiMapForGetBasicApi(e){let t=[];for(const r of e.keys()){p.getApiInfosInFileMap(e,r).forEach((e=>{t=t.concat(p.processApiInfoForGetBasicApi(e))}))}return t}static processApiInfoForGetBasicApi(e){let t=[];if(t=t.concat(e),!u.containerApiTypes.has(e.getApiType()))return t;return e.getChildApis().forEach((e=>{t=t.concat(p.processApiInfoForGetBasicApi(e))})),t}static processFileApiMapForEachSince(e){const t=[];for(const r of e.keys()){p.getApiInfosInFileMap(e,r).forEach((e=>{const r=p.processApiInfoForEachSince(e);0!==r.length&&t.push(...r)}))}return t}static processApiInfoForEachSince(e){const t=p.getNodeInfo(e);if(!u.containerApiTypes.has(e.getApiType()))return t;return e.getChildApis().forEach((e=>{const r=p.processApiInfoForEachSince(e);p.mergeResultApis(t,r)})),t}static mergeResultApis(e,t){e.forEach((e=>{const r=e,n=p.getResultApisVersion(t,Number(r.getSince()));r.addChildApi(n)}))}static getResultApisVersion(e,t){return e.filter((e=>{const r=Number(e.getSince());return-1===r||r>=t}))}static getNodeInfo(e){let r=e.getApiType();const n=t.resultsProcessMethod.get(r);if(!n)return[];return n(e)}static processProperty(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.PropertyInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setType(r.getType().join(" | ")),n.setName(e.getApiName()),n.setIsRequired(r.getIsRequired()),n.setIsReadOnly(r.getIsReadOnly()),n.setIsStatic(r.getIsStatic()),t.push(n)}return n.forEach((n=>{const i=new d.PropertyInfo(e.getApiType(),n),a=n.getTypeInfo();i.setType(a?a.replace(/^[\?]*[\(](.*)[\)]$/,"$1"):r.getType().join(" | ")),i.setName(e.getApiName()),i.setIsRequired(r.getIsRequired()),i.setIsReadOnly(r.getIsReadOnly()),i.setIsStatic(r.getIsStatic()),t.push(i)})),t}static processClass(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.ClassInterfaceInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setParentClasses(r.getParentClasses()),t.push(n)}return n.forEach((n=>{const i=new d.ClassInterfaceInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setParentClasses(r.getParentClasses()),t.push(i)})),t}static processInterface(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.ClassInterfaceInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setParentClasses(r.getParentClasses()),t.push(n)}return n.forEach((n=>{const i=new d.ClassInterfaceInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setParentClasses(r.getParentClasses()),t.push(i)})),t}static processNamespace(e){const t=[],r=e.getJsDocInfos();if(0===r.length){const r=new d.NamespaceEnumInfo(e.getApiType(),new c.Comment.JsDocInfo);r.setName(e.getApiName()),t.push(r)}return r.forEach((r=>{const n=new d.NamespaceEnumInfo(e.getApiType(),r);n.setName(e.getApiName()),t.push(n)})),t}static processMethod(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.MethodInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setCallForm(r.getCallForm()),n.setReturnValue(r.getReturnValue().join(" | ")),r.getParams().forEach((e=>{const t=new d.ParamInfo(e.getApiType(),new c.Comment.JsDocInfo);t.setName(e.getApiName()),t.setType(e.getType().join(" | ")),t.setIsRequired(e.getIsRequired()),n.addParam(t)})),n.setIsStatic(r.getIsStatic()),t.push(n)}return n.forEach((n=>{const i=new d.MethodInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setCallForm(r.getCallForm()),i.setReturnValue(r.getReturnValue().join(" | ")),r.getParams().forEach((e=>{const t=new d.ParamInfo(e.getApiType(),new c.Comment.JsDocInfo);t.setName(e.getApiName()),t.setType(e.getType().join(" | ")),t.setIsRequired(e.getIsRequired()),i.addParam(t)})),i.setIsStatic(r.getIsStatic()),t.push(i)})),t}static processExportDefault(e){const t=[],r=new d.ExportDefaultInfo(e.getApiType());return r.setName(e.getApiName()),t.push(r),t}static processImportInfo(e){const t=[],r=e,n=new d.ImportInfo(e.getApiType());return r.getImportValues().forEach((e=>{n.addImportValue(e.key,e.value)})),t.push(n),t}static processConstant(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.ConstantInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName());const i=r.getValue();n.setValue(i.replace(p.regQuotation,"$1")),n.setType(isNaN(Number(i))?"string":"number");const a=r.getNode();if(a.initializer){const e=f.get(a.initializer.kind);n.setType(e||"")}t.push(n)}return n.forEach((n=>{const i=new d.ConstantInfo(e.getApiType(),n);i.setName(e.getApiName());const a=r.getValue();i.setValue(a.replace(p.regQuotation,"$1")),i.setType(isNaN(Number(a))?"string":"number");const o=r.getNode();if(o.initializer){const e=f.get(o.initializer.kind);i.setType(e||"")}t.push(i)})),t}static processDeclareConstant(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.DeclareConstInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setType(r.getValue());const i=r.getNode();if(i.initializer){const e=f.get(i.initializer.kind);n.setType(e||"")}t.push(n)}return n.forEach((n=>{const i=new d.DeclareConstInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setType(r.getValue());const a=r.getNode();if(a.initializer){const e=f.get(a.initializer.kind);i.setType(e||"")}t.push(i)})),t}static processEnum(e){const t=[],r=e.getJsDocInfos();if(0===r.length){const r=new d.NamespaceEnumInfo(e.getApiType(),new c.Comment.JsDocInfo);r.setName(e.getApiName()),t.push(r)}return r.forEach((r=>{const n=new d.NamespaceEnumInfo(e.getApiType(),r);n.setName(e.getApiName()),t.push(n)})),t}static processEnumMember(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.EnumValueInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setValue(r.getValue()),t.push(n)}return n.forEach((n=>{const i=new d.EnumValueInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setValue(r.getValue()),t.push(i)})),t}static processTypeAlias(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const e=p.processTypeAliasGetNewInfo(r,new c.Comment.JsDocInfo);t.push(e)}return n.forEach((e=>{const n=p.processTypeAliasGetNewInfo(r,e);t.push(n)})),t}static processTypeAliasGetNewInfo(e,t){if(e.getTypeName()===u.TypeAliasType.UNION_TYPE){const r=new d.UnionTypeInfo(e.getTypeName(),t);return r.setName(e.getApiName()),r.addValueRanges(e.getType().map((e=>e.replace(p.regQuotation,"$1")))),r}const r=new d.TypeAliasInfo(e.getApiType(),t);return r.setName(e.getApiName()),r.setType(e.getType().join(" | ")),r}}t.ResultsProcessHelper=p,p.regQuotation=/^[\'|\"](.*)[\'|\"]$/;const f=new Map([[s.default.SyntaxKind.StringLiteral,"string"],[s.default.SyntaxKind.NumericLiteral,"number"]]);t.resultsProcessMethod=new Map([[u.ApiType.PROPERTY,p.processProperty],[u.ApiType.CLASS,p.processClass],[u.ApiType.INTERFACE,p.processInterface],[u.ApiType.NAMESPACE,p.processNamespace],[u.ApiType.METHOD,p.processMethod],[u.ApiType.EXPORT_DEFAULT,p.processExportDefault],[u.ApiType.IMPORT,p.processImportInfo],[u.ApiType.CONSTANT,p.processConstant],[u.ApiType.DECLARE_CONST,p.processDeclareConstant],[u.ApiType.ENUM,p.processEnum],[u.ApiType.ENUM_VALUE,p.processEnumMember],[u.ApiType.TYPE_ALIAS,p.processTypeAlias]])},30871:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;const i=n(r(79896)),a=n(r(16928)),o=n(r(58843)),s=n(r(2543)),c=r(17858),l=r(3359),u=r(44791),d=r(8136),p=r(40745),f=r(26499);class m{static cleanParserParamSDK(){c.parserParam.setFileDir(""),c.parserParam.setSdkPath("")}static parseDir(e,t=""){m.cleanParserParamSDK();const r=p.FileUtils.readFilesInDir(e,(e=>e.endsWith(d.StringConstant.DTS_EXTENSION)||e.endsWith(d.StringConstant.DETS_EXTENSION))),n=new Map;let i=[];return""===t?(c.parserParam.setSdkPath(e),i=r):p.FileUtils.isDirectory(t)?(m.needLib=!0,c.parserParam.setSdkPath(t),i=p.FileUtils.readFilesInDir(t,(e=>e.endsWith(d.StringConstant.DTS_EXTENSION)||e.endsWith(d.StringConstant.DETS_EXTENSION)))):p.FileUtils.isFile(t)&&(m.needLib=!0,c.parserParam.setSdkPath(a.default.resolve(t,"..")),i=[t]),c.parserParam.setFileDir(e),c.parserParam.setRootNames(i),m.needLib&&c.parserParam.setLibPath(a.default.resolve(p.FileUtils.getBaseDirName(),"./libs")),c.parserParam.setProgram(),i.forEach((t=>{m.parseFile(e,t,n)})),n}static parseFile(e,t,r){if(!i.default.existsSync(t))return new Map;""===c.parserParam.getFileDir()&&(c.parserParam.setSdkPath(e),c.parserParam.setFileDir(a.default.resolve(e,"..")),c.parserParam.setRootNames([t]),m.needLib&&c.parserParam.setLibPath(a.default.resolve(p.FileUtils.getBaseDirName(),"./libs")),c.parserParam.setProgram()),c.parserParam.setFilePath(t);let n="";n=a.default.relative(e,t);const s=c.parserParam.getTsProgram();s.getTypeChecker();const l=c.parserParam.compilerHost.getCanonicalFileName(t.replace(/\\/g,"/")),f=s.getSourceFileByPath(l);if(!f)return new Map;const g=[t];f.statements.forEach((e=>{o.default.isImportDeclaration(e)&&e.moduleSpecifier.getText().startsWith("./",1)&&g.push(a.default.resolve(t,"..",e.moduleSpecifier.getText().replace(/'|"/g,"")))}));const _=new u.ApiInfo(u.ApiType.SOURCE_FILE,f,void 0);_.setFilePath(n),_.setFileAbsolutePath(t),_.setApiName(n),_.setIsStruct(t.endsWith(d.StringConstant.ETS_EXTENSION));const h=new Map;return h.set(d.StringConstant.SELF,[_]),c.NodeProcessorHelper.processReference(f,h,_),f.forEachChild((e=>{c.NodeProcessorHelper.processNode(e,h,_)})),r||(r=new Map),r.set(n,h),r}static getApiInfo(e,t,r){const n=[];if(0===e.length)return n;let i=t;for(let t=0;t<e.length;t++){const r=e[t],a=i.get(r);if(!a)return n;i=a}const a=i.get(d.StringConstant.SELF);if(!a)return n;if(n.push(...a),r){const e=f.DiffHelper.judgeIsSameNameFunction(n);n.forEach((t=>{t.setIsSameNameFunction(e)}))}return n}static getParseResults(e){const t=s.default.cloneDeep(e),r=new Map;for(const n of t.keys()){const t=e.get(n),i=l.ResultsProcessHelper.processFileApiMap(t);r.set(n,i)}return JSON.stringify(Object.fromEntries(r),null,2)}static getParseEachSince(e){const t=s.default.cloneDeep(e),r=new Map;for(const n of t.keys()){const t=e.get(n),i=l.ResultsProcessHelper.processFileApiMapForEachSince(t);return r.set(n,i),JSON.stringify(i,null,2)}return""}static getAllBasicApi(e){let t=[];for(const r of e.keys()){const n=e.get(r),i=l.ResultsProcessHelper.processFileApiMapForGetBasicApi(n);t=t.concat(i)}return t}}t.Parser=m,m.needLib=!1},12587:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ApiStatisticsHelper=void 0;const i=r(44791),a=r(16137),o=r(8136),s=r(4e3),c=n(r(58843));class l{static getApiStatisticsInfos(e){const t=[],r=[];for(const n of e.keys()){const i=e.get(n);i&&l.processFileApiMap(i,t,r)}return{apiStatisticsInfos:t,allApiStatisticsInfos:r}}static processFileApiMap(e,t,r){for(const n of e.keys()){if(n===o.StringConstant.SELF)continue;const i=e.get(n);if(!i||Array.isArray(i))continue;const a=i.get(o.StringConstant.SELF),s=new Map;if(!a||!Array.isArray(a))continue;l.connectDefinedText(a,s);const c=new Set;a.forEach((e=>{l.processApiInfo(e,t,s,r,c)}))}}static connectDefinedText(e,t){e.forEach((e=>{if(e.getApiType()===i.ApiType.METHOD){if(a.notMergeDefinedText.has(e.getApiName()))return;const r=t.get(l.joinRelations(e));if(r){const n=`${r}\n${e.getDefinedText()}`;return void t.set(l.joinRelations(e),n)}t.set(l.joinRelations(e),e.getDefinedText())}if(i.containerApiTypes.has(e.getApiType())){const r=e;l.connectDefinedText(r.getChildApis(),t)}}))}static joinRelations(e){return e.getHierarchicalRelations().join()}static processApiInfo(e,t,r,n,s){const c=e;if(n.push(l.initApiStatisticsInfo(c,r,!0)),!a.apiStatisticsType.has(e.getApiType()))return;if(e.getApiName()===o.StringConstant.CONSTRUCTOR_API_NAME)return;const u=l.initApiStatisticsInfo(c,r);if(a.apiNotStatisticsType.has(u.getApiType())||s.has(l.joinRelations(e))||t.push(u),s.add(l.joinRelations(e)),!i.containerApiTypes.has(c.getApiType()))return;c.getChildApis().forEach((e=>{l.processApiInfo(e,t,r,n,s)}))}static initApiStatisticsInfo(e,t,r){const n=new a.ApiStatisticsInfo,s=e.getHierarchicalRelations();s.length>o.NumberConstant.RELATION_LENGTH&&n.setParentModuleName(s[s.length-o.NumberConstant.RELATION_LENGTH]);const c=l.joinRelations(e),u=t.get(c);r?n.setDefinedText(e.getDefinedText()):n.setDefinedText(u||e.getDefinedText());let d=!1;if(e.getApiType()===i.ApiType.METHOD){d=!e.getIsRequired()}else if(e.getApiType()===i.ApiType.PROPERTY){d=!e.getIsRequired()}if(n.setFilePath(e.getFilePath()).setApiType(e.getApiType()).setApiName(e.getApiName()).setPos(e.getPos()).setHierarchicalRelations(s.join("/")).setDecorators(e.getDecorators()).setParentApiType(e.getParentApiType()).setIsOptional(d),i.notJsDocApiTypes.has(e.getApiType()))return n;const p=e.getJsDocInfos()[0];p&&n.setSince(p.getSince());const f=e.getLastJsDocInfo();return f?n.setSyscap(f.getSyscap()?f.getSyscap():l.extendSyscap(e)).setPermission(f.getPermission()).setIsForm(f.getIsForm()).setIsCrossPlatForm(f.getIsCrossPlatForm()).setDeprecatedVersion(f.getDeprecatedVersion()===o.NumberConstant.DEFAULT_DEPRECATED_VERSION?"":f.getDeprecatedVersion()).setUseInstead(f.getUseinstead()).setApiLevel(f.getIsSystemApi()).setModelLimitation(f.getModelLimitation()).setIsAutomicService(f.getIsAtomicService()).setErrorCodes(f.getErrorCode()).setKitInfo(f.getKit()):n.setSyscap(l.extendSyscap(e)),n}static extendSyscap(e){let t=e,r="";const n=t.getNode();try{for(;n&&t&&!c.default.isSourceFile(n);){const e=t.getLastJsDocInfo();if(e&&(r=e.getSyscap()),r)return r;t=t.getParentApi()}}catch(e){s.LogUtil.e("SYSCAP ERROR",e)}return r}static getApiNumber(e){const t=new Set;return e.forEach((e=>{t.add(e.getHierarchicalRelations())})),t.size}}t.ApiStatisticsHelper=l},32875:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(62116)),a=n(r(59620)),o=r(11162),s=r(77926),c=r(4e3),l=r(40745);class u{constructor(){this.program=new i.default.Command}addPluginCommand(e){const t=e.pluginOptions;if(!t)return;const r=this.program.name(t.name).description(t.description).version(t.version).action((t=>{this.judgeOpts(t),e.start(t),e.stop()}));t.commands.forEach((e=>{e.isRequiredOption?r.requiredOption(...e.options):r.option(...e.options)}))}buildCommands(){this.program.parse()}judgeOpts(e){const t=e.toolName;switch(s.toolNameSet.has(t)||this.stopRun(`error toolName "${t}",toolName not in [${[...s.toolNameSet]}] `),t){case s.toolNameType.COLLECT:const t=e.collectPath;""!==t&&l.FileUtils.isExists(t)||this.stopRun(`error collectPath "${t}",collectPath need a exist file path`);break;case s.toolNameType.LABELDETECTION:const r=e.checkLabels;""===r&&this.stopRun(`error checkLabels "${r}",detection tools need checkLabels`)}}stopRun(e){c.LogUtil.e("commander",e),this.program.help({error:!0})}}class d{constructor(){this.commandBuilder=new u}runPlugins(){o.getToolConfiguration().plugins.forEach((e=>{this.commandBuilder.addPluginCommand(e)})),this.commandBuilder.buildCommands()}}Object.assign(process.env,a.default),(new d).runPlugins()},77002:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ErrorBaseInfo=t.ApiBaseInfo=t.ApiCheckInfo=t.ApiResultMessage=t.ApiResultInfo=t.ApiResultSimpleInfo=t.incompatibleApiDiffTypes=t.ErrorMessage=t.ParticularErrorCode=t.ErrorLevel=t.LogType=t.ErrorID=t.ErrorType=void 0;const n=r(40149);var i;!function(e){e.UNKNOW_DECORATOR="unknow decorator",e.MISSPELL_WORDS="misspell words",e.NAMING_ERRORS="naming errors",e.UNKNOW_PERMISSION="unknow permission",e.UNKNOW_SYSCAP="unknow syscap",e.UNKNOW_DEPRECATED="unknow deprecated",e.WRONG_ORDER="wrong order",e.WRONG_VALUE="wrong value",e.WRONG_SCENE="wrong scene",e.PARAMETER_ERRORS="wrong parameter",e.API_PAIR_ERRORS="limited api pair errors",e.FORBIDDEN_WORDS="forbidden word",e.API_CHANGE_ERRORS="api change errors",e.TS_SYNTAX_ERROR="TS syntax error",e.NO_JSDOC="No jsdoc",e.JSDOC_HAS_CHINESE="JSDOC_HAS_CHINESE",e.ERROR_ERROR_CODE="error_error_code"}(t.ErrorType||(t.ErrorType={})),function(e){e[e.UNKNOW_DECORATOR_ID=0]="UNKNOW_DECORATOR_ID",e[e.MISSPELL_WORDS_ID=1]="MISSPELL_WORDS_ID",e[e.NAMING_ERRORS_ID=2]="NAMING_ERRORS_ID",e[e.UNKNOW_PERMISSION_ID=3]="UNKNOW_PERMISSION_ID",e[e.UNKNOW_SYSCAP_ID=4]="UNKNOW_SYSCAP_ID",e[e.UNKNOW_DEPRECATED_ID=5]="UNKNOW_DEPRECATED_ID",e[e.WRONG_ORDER_ID=6]="WRONG_ORDER_ID",e[e.WRONG_VALUE_ID=7]="WRONG_VALUE_ID",e[e.WRONG_SCENE_ID=8]="WRONG_SCENE_ID",e[e.PARAMETER_ERRORS_ID=9]="PARAMETER_ERRORS_ID",e[e.API_PAIR_ERRORS_ID=10]="API_PAIR_ERRORS_ID",e[e.FORBIDDEN_WORDS_ID=11]="FORBIDDEN_WORDS_ID",e[e.API_CHANGE_ERRORS_ID=12]="API_CHANGE_ERRORS_ID",e[e.TS_SYNTAX_ERROR_ID=13]="TS_SYNTAX_ERROR_ID",e[e.NO_JSDOC_ID=14]="NO_JSDOC_ID",e[e.JSDOC_HAS_CHINESE=15]="JSDOC_HAS_CHINESE",e[e.ERROR_ERROR_CODE=16]="ERROR_ERROR_CODE"}(t.ErrorID||(t.ErrorID={})),function(e){e.LOG_API="Api",e.LOG_JSDOC="JsDoc",e.LOG_FILE="File"}(t.LogType||(t.LogType={})),function(e){e[e.HIGH=3]="HIGH",e[e.MIDDLE=2]="MIDDLE",e[e.LOW=1]="LOW"}(t.ErrorLevel||(t.ErrorLevel={})),function(e){e.ERROR_CODE_201="201",e.ERROR_CODE_202="202",e.ERROR_CODE_401="401",e.ERROR_PERMISSION="permission",e.ERROR_SYSTEMAPI="systemapi"}(t.ParticularErrorCode||(t.ParticularErrorCode={})),function(e){e.ERROR_INFO_VALUE_EXTENDS="The [extends] tag value is incorrect. Please check if the tag value matches the inherited class name.",e.ERROR_INFO_VALUE_IMPLEMENTS="The [implements] tag value is incorrect. Please check if the tag value matches the inherited class name.",e.ERROR_INFO_VALUE_ENUM="The [enum] tag type is incorrect. Please check if the tag type is { string } or { number }.",e.ERROR_INFO_VALUE_SINCE="The [since] tag value is incorrect. Please check if the tag value is a numerical value.",e.ERROR_INFO_VALUE_SINCE_NUMBER="The [since] value is greater than the latest version number.",e.ERROR_INFO_VALUE_SINCE_JSDOC="The [since] value for different jsdoc should not be the same.",e.ERROR_INFO_RETURNS="The [returns] tag was used incorrectly. The returns tag should not be used when the return type is void.",e.ERROR_INFO_VALUE_RETURNS="The [returns] tag type is incorrect. Please check if the tag type is consistent with the return type.",e.ERROR_INFO_VALUE_USEINSTEAD="The [useinstead] tag value is incorrect. Please check the usage method.",e.ERROR_INFO_VALUE_TYPE="The [type] tag type is incorrect. Please check if the type matches the attribute type.",e.ERROR_INFO_VALUE_DEFAULT="The [default] tag value is incorrect. Please supplement the default value.",e.ERROR_INFO_VALUE_PERMISSION="The [permission] tag value is incorrect. Please check if the permission field has been configured or update the configuration file.",e.ERROR_INFO_VALUE_DEPRECATED="The [deprecated] tag value is incorrect. Please check the usage method.",e.ERROR_INFO_VALUE_SYSCAP="The [syscap] tag value is incorrect. Please check if the syscap field is configured.",e.ERROR_INFO_VALUE_NAMESPACE="The [namespace] tag value is incorrect. Please check if it matches the namespace name.",e.ERROR_INFO_VALUE_INTERFACE="The [interface] label value is incorrect. Please check if it matches the interface name.",e.ERROR_INFO_VALUE_TYPEDEF="The [typedef] tag value is incorrect. Please check if it matches the interface name or type content.",e.ERROR_INFO_VALUE_STRUCT="The [struct] tag value is incorrect. Please check if it matches the struct name.",e.ERROR_INFO_TYPE_PARAM="The type of the [$$] [param] tag is incorrect. Please check if it matches the type of the [$$] parameter.",e.ERROR_INFO_VALUE_PARAM="The value of the [$$] [param] tag is incorrect. Please check if it matches the [$$] parameter name.",e.ERROR_INFO_VALUE1_THROWS="The type of the [$$] [throws] tag is incorrect. Please fill in [BusinessError].",e.ERROR_INFO_VALUE2_THROWS="The type of the [$$] [throws] tag is incorrect. Please check if the tag value is a numerical value.",e.ERROR_INFO_VALUE3_THROWS="The description of the [401 throws] is incorrect. please fix it according to the specification.",e.ERROR_INFO_INHERIT="It was detected that there is an inheritable label [$$] in the current file, but there are child nodes without this label.",e.ERROR_INFO_FOLLOW="It was detected that there is a following label [$$] in the current file, but the parent nodes without this label.",e.ERROR_ORDER="JSDoc label order error, please adjust the order of [$$] labels.",e.ERROR_LABELNAME="The [$$] tag does not exist. Please use a valid JSDoc tag.",e.ERROR_LOST_LABEL="JSDoc tag validity verification failed. Please confirm if the [$$] tag is missing.",e.ERROR_USE="JSDoc label validity verification failed. The [$$] label is not allowed. Please check the label usage method.",e.ERROR_MORELABEL="JSDoc tag validity verification failed.There are [$$] redundant [$$]. Please check if the tag should be deleted.",e.ERROR_REPEATLABEL="The validity verification of the JSDoc tag failed. The [$$] tag is not allowed to be reused, please delete the extra tags.",e.ERROR_USE_INTERFACE="The validity verification of the JSDoc tag failed. The [interface] tag and [typedef] tag are not allowed to be used simultaneously. Please confirm the interface class.",e.ERROR_EVENT_NAME_STRING="The event name should be string.",e.ERROR_EVENT_NAME_NULL="The event name cannot be Null value.",e.ERROR_EVENT_NAME_SMALL_HUMP='The event name should be named by small hump. (Received ["$$"]).',e.ERROR_EVENT_CALLBACK_OPTIONAL="The callback parameter of off function should be optional.",e.ERROR_EVENT_CALLBACK_MISSING="The off functions of one single event should have at least one callback parameter, and the callback parameter should be the last parameter.",e.ERROR_EVENT_ON_AND_OFF_PAIR="The on and off event subscription methods do not appear in pair.",e.ERROR_EVENT_WITHOUT_PARAMETER="The event subscription methods should has at least one parameter.",e.ILLEGAL_USE_ANY="Illegal [$$] keyword used in the API.",e.ERROR_CHANGES_VERSION="Please check if the changed API version number is 10.",e.ERROR_WORD="Error words in [$$]: {$$}. please confirm whether it needs to be corrected to a common word.",e.ERROR_NAMING="Prohibited word in [$$]:{$$}.The word allowed is [$$].",e.ERROR_SCENARIO="Prohibited word in [$$]:{$$} in the [$$] file.",e.ERROR_UPPERCASE_NAME="This name [$$] should be named by all uppercase.",e.ERROR_LARGE_HUMP_NAME="This name [$$] should be named by large hump.",e.ERROR_SMALL_HUMP_NAME="This name [$$] should be named by small hump.",e.ERROR_SMALL_HUMP_NAME_FILE="This API file should be named by small hump.",e.ERROR_LARGE_HUMP_NAME_FILE="This API file should be named by large hump.",e.ERROR_ANONYMOUS_FUNCTION="Anonymous functions or anonymous object that are not allowed are used in this api.",e.ERROR_NO_JSDOC="Jsdoc needs to be added to the current API.",e.ERROR_NO_JSDOC_TAG="add tags to the Jsdoc.",e.ERROR_HAS_CHINESE="Jsdoc has chinese.",e.ERROR_ERROR_CODE="The generic error code does not contain the current error code.",e.ERROR_ERROR_SYSTEMAPI_ATOMICSERVICE="The [systemapi] and [atomicservice] cannot exist in the same doc.",e.ERROR_CHANGES_JSDOC_LEVEL="Forbid changes: Cannot change from public API to system API.",e.ERROR_CHANGES_JSDOC_PERMISSION_RANGE="Forbid changes: Cannot reduce or permission or increase and permission.",e.ERROR_CHANGES_JSDOC_PERMISSION_VALUE="Forbid changes: Cannot change permission value,cannot judge the range change.",e.ERROR_CHANGES_JSDOC_ERROR_CODE_ADD="Forbid changes: The number of error codes cannot be increased from 0 to multiple error codes.",e.ERROR_CHANGES_JSDOC_ERROR_CODE_VALUE="Forbid changes: Cannot change the error code value.",e.ERROR_CHANGES_JSDOC_CARD="Forbid changes: The card application cannot be changed from supported to not supported.",e.ERROR_CHANGES_JSDOC_CROSS_PLATFORM="Forbid changes: Crossplatform cannot be changed from supported to not supported.",e.ERROR_CHANGES_JSDOC_API_DELETE="Forbid changes: API cannot be deleted.",e.ERROR_CHANGES_JSDOC_FA_TO_STAGE="Forbid changes: Cannot change from FAModelOnly to StageModelOnly.",e.ERROR_CHANGES_JSDOC_STAGE_TO_FA="Forbid changes: Cannot change from StageModelOnly to FAModelOnly.",e.ERROR_CHANGES_JSDOC_NA_TO_STAGE="Forbid changes: Cannot change from nothing to StageModelOnly.",e.ERROR_CHANGES_JSDOC_NA_TO_FA="Forbid changes: Cannot change from nothing to FAModelOnly.",e.ERROR_CHANGES_JSDOC_ATOMICSERVICE_TO_NA="Forbid changes: Cannot change from atomicservice to NA.",e.ERROR_CHANGES_FUNCTION_RETURN_TYPE_ADD="Forbid changes: The function return value type cannot be extended.",e.ERROR_CHANGES_FUNCTION_RETURN_TYPE_REDUCE="Forbid changes: The function return value type cannot be reduced.",e.ERROR_CHANGES_FUNCTION_RETURN_TYPE_CHANGE="Forbid changes: Cannot change function return value type.",e.ERROR_CHANGES_FUNCTION_PARAM_POS_CHANGE="Forbid changes: Cannot change function param position.",e.ERROR_CHANGES_FUNCTION_PARAM_REQUIRED_ADD="Forbid changes: Cannot add function required param.",e.ERROR_CHANGES_FUNCTION_PARAM_REDUCE="Forbid changes: Cannot delete function param.",e.ERROR_CHANGES_FUNCTION_PARAM_TO_REQUIRED="Forbid changes: Cannot change form unrequired param to required param.",e.ERROR_CHANGES_FUNCTION_PARAM_TYPE="Forbid changes: Cannot change function param type.",e.ERROR_CHANGES_FUNCTION_PARAM_TYPE_REDUCE="Forbid changes: The function param type range is cannot be reduced.",e.ERROR_CHANGES_PROPERTY_READONLY_TO_REQUIRED="Forbid changes: Read-only properties cannot be changed from optional to required.",e.ERROR_CHANGES_PROPERTY_WRITABLE_TO_UNREQUIRED="Forbid changes: Writable properties cannot be changed from required to optional.",e.ERROR_CHANGES_PROPERTY_WRITABLE_TO_REQUIRED="Forbid changes: Writable properties cannot be changed from optional to required.",e.ERROR_CHANGES_PROPERTY_TYPE_CHANGE="Forbid changes: Cannot change property type.",e.ERROR_CHANGES_PROPERTY_READONLY_ADD="Forbid changes: Cannot Expand the range of readonly property types.",e.ERROR_CHANGES_PROPERTY_WRITABLE_ADD="Forbid changes: Cannot Expand the range of writable property types.",e.ERROR_CHANGES_PROPERTY_WRITABLE_REDUCE="Forbid changes: Cannot reduce the range of writable property types.",e.ERROR_CHANGES_DELETE_DECORATOR="Forbid changes: Decorator cannot be deleted.",e.ERROR_CHANGES_CONSTANT_VALUE="Forbid changes: Cannot change constant value.",e.ERROR_CHANGES_TYPE_ALIAS_VALUE="Forbid changes: Cannot change custom type value.",e.ERROR_CHANGES_TYPE_ALIAS_ADD="Forbid changes: Cannot expand the range of custom type.",e.ERROR_CHANGES_TYPE_ALIAS_REDUCE="Forbid changes: Cannot reduce the range of custom type.",e.ERROR_CHANGES_ENUM_MEMBER_VALUE="Forbid changes: Cannot change Enumeration assignment.",e.ERROR_CHANGES_JSDOC_CHANGE="Forbid changes: Historical JSDoc cannot be changed.",e.ERROR_CHANGES_JSDOC_NUMBER="Forbid changes: API changes must add a new section of JSDoc.",e.ERROR_CHANGES_SYSCAP_NA_TO_HAVE="Forbid changes: Cannot change from NA to syscap.",e.ERROR_CHANGES_SYSCAP_HAVE_TO_NA="Forbid changes: Cannot change from syscap to NA.",e.ERROR_CHANGES_SYSCAP_A_TO_B="Forbid changes: Cannot change syscap value.",e.ERROR_CHANGES_ADD_PROPERTY="Forbid changes: Cannot add new property to interface API."}(i=t.ErrorMessage||(t.ErrorMessage={})),t.incompatibleApiDiffTypes=new Map([[n.ApiDiffType.HISTORICAL_JSDOC_CHANGE,i.ERROR_CHANGES_JSDOC_CHANGE],[n.ApiDiffType.HISTORICAL_API_CHANGE,i.ERROR_CHANGES_JSDOC_NUMBER],[n.ApiDiffType.PUBLIC_TO_SYSTEM,i.ERROR_CHANGES_JSDOC_LEVEL],[n.ApiDiffType.PERMISSION_NA_TO_HAVE,i.ERROR_CHANGES_JSDOC_PERMISSION_VALUE],[n.ApiDiffType.PERMISSION_RANGE_SMALLER,i.ERROR_CHANGES_JSDOC_PERMISSION_RANGE],[n.ApiDiffType.PERMISSION_RANGE_CHANGE,i.ERROR_CHANGES_JSDOC_PERMISSION_VALUE],[n.ApiDiffType.ERROR_CODE_NA_TO_HAVE,i.ERROR_CHANGES_JSDOC_ERROR_CODE_ADD],[n.ApiDiffType.ERROR_CODE_CHANGE,i.ERROR_CHANGES_JSDOC_ERROR_CODE_VALUE],[n.ApiDiffType.CARD_TO_NA,i.ERROR_CHANGES_JSDOC_CARD],[n.ApiDiffType.CROSS_PLATFORM_TO_NA,i.ERROR_CHANGES_JSDOC_CROSS_PLATFORM],[n.ApiDiffType.REDUCE,i.ERROR_CHANGES_JSDOC_API_DELETE],[n.ApiDiffType.FA_TO_STAGE,i.ERROR_CHANGES_JSDOC_FA_TO_STAGE],[n.ApiDiffType.STAGE_TO_FA,i.ERROR_CHANGES_JSDOC_STAGE_TO_FA],[n.ApiDiffType.NA_TO_STAGE,i.ERROR_CHANGES_JSDOC_NA_TO_STAGE],[n.ApiDiffType.NA_TO_FA,i.ERROR_CHANGES_JSDOC_NA_TO_FA],[n.ApiDiffType.FUNCTION_RETURN_TYPE_ADD,i.ERROR_CHANGES_FUNCTION_RETURN_TYPE_ADD],[n.ApiDiffType.FUNCTION_RETURN_TYPE_REDUCE,i.ERROR_CHANGES_FUNCTION_RETURN_TYPE_REDUCE],[n.ApiDiffType.FUNCTION_RETURN_TYPE_CHANGE,i.ERROR_CHANGES_FUNCTION_RETURN_TYPE_CHANGE],[n.ApiDiffType.FUNCTION_PARAM_POS_CHANGE,i.ERROR_CHANGES_FUNCTION_PARAM_POS_CHANGE],[n.ApiDiffType.FUNCTION_PARAM_REQUIRED_ADD,i.ERROR_CHANGES_FUNCTION_PARAM_REQUIRED_ADD],[n.ApiDiffType.FUNCTION_PARAM_REDUCE,i.ERROR_CHANGES_FUNCTION_PARAM_REDUCE],[n.ApiDiffType.FUNCTION_PARAM_TO_REQUIRED,i.ERROR_CHANGES_FUNCTION_PARAM_TO_REQUIRED],[n.ApiDiffType.FUNCTION_PARAM_TYPE_CHANGE,i.ERROR_CHANGES_FUNCTION_PARAM_TYPE],[n.ApiDiffType.FUNCTION_PARAM_TYPE_REDUCE,i.ERROR_CHANGES_FUNCTION_PARAM_TYPE_REDUCE],[n.ApiDiffType.PROPERTY_READONLY_TO_REQUIRED,i.ERROR_CHANGES_PROPERTY_READONLY_TO_REQUIRED],[n.ApiDiffType.PROPERTY_WRITABLE_TO_UNREQUIRED,i.ERROR_CHANGES_PROPERTY_WRITABLE_TO_UNREQUIRED],[n.ApiDiffType.PROPERTY_WRITABLE_TO_REQUIRED,i.ERROR_CHANGES_PROPERTY_WRITABLE_TO_REQUIRED],[n.ApiDiffType.PROPERTY_TYPE_CHANGE,i.ERROR_CHANGES_PROPERTY_TYPE_CHANGE],[n.ApiDiffType.PROPERTY_READONLY_ADD,i.ERROR_CHANGES_PROPERTY_READONLY_ADD],[n.ApiDiffType.PROPERTY_WRITABLE_ADD,i.ERROR_CHANGES_PROPERTY_WRITABLE_ADD],[n.ApiDiffType.PROPERTY_WRITABLE_REDUCE,i.ERROR_CHANGES_PROPERTY_WRITABLE_REDUCE],[n.ApiDiffType.DELETE_DECORATOR,i.ERROR_CHANGES_DELETE_DECORATOR],[n.ApiDiffType.CONSTANT_VALUE_CHANGE,i.ERROR_CHANGES_CONSTANT_VALUE],[n.ApiDiffType.TYPE_ALIAS_CHANGE,i.ERROR_CHANGES_TYPE_ALIAS_VALUE],[n.ApiDiffType.TYPE_ALIAS_ADD,i.ERROR_CHANGES_TYPE_ALIAS_ADD],[n.ApiDiffType.TYPE_ALIAS_REDUCE,i.ERROR_CHANGES_TYPE_ALIAS_REDUCE],[n.ApiDiffType.ENUM_MEMBER_VALUE_CHANGE,i.ERROR_CHANGES_ENUM_MEMBER_VALUE],[n.ApiDiffType.ATOMIC_SERVICE_HAVE_TO_NA,i.ERROR_CHANGES_JSDOC_ATOMICSERVICE_TO_NA],[n.ApiDiffType.SYSCAP_NA_TO_HAVE,i.ERROR_CHANGES_SYSCAP_NA_TO_HAVE],[n.ApiDiffType.SYSCAP_HAVE_TO_NA,i.ERROR_CHANGES_SYSCAP_HAVE_TO_NA],[n.ApiDiffType.SYSCAP_A_TO_B,i.ERROR_CHANGES_SYSCAP_A_TO_B],[n.ApiDiffType.ADD,i.ERROR_CHANGES_ADD_PROPERTY]]);t.ApiResultSimpleInfo=class{constructor(){this.id=-1,this.level=-1,this.filePath="",this.location="",this.message="",this.type="",this.apiText="",this.apiName="",this.apiType="",this.hierarchicalRelations="",this.parentModuleName=""}setID(e){return this.id=e,this}getID(){return this.id}setLevel(e){return this.level=e,this}getLevel(){return this.level}setLocation(e){return this.location=e,this}getLocation(){return this.location}setFilePath(e){return this.filePath=e,this}getFilePath(){return this.filePath}setMessage(e){return this.message=e,this}getMessage(){return this.message}setType(e){return this.type=e,this}getType(){return this.type}setApiText(e){return this.apiText=e,this}getApiText(){return this.apiText}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setParentModuleName(e){return this.parentModuleName=e,this}getParentModuleName(){return this.parentModuleName}};t.ApiResultInfo=class{constructor(){this.errorType="",this.location="",this.apiType="",this.message="",this.version=-1,this.level=-1,this.apiName="",this.apiFullText="",this.baseName="",this.hierarchicalRelations="",this.parentModuleName="",this.defectType=""}setErrorType(e){return this.errorType=e,this}getErrorType(){return this.errorType}setLocation(e){return this.location=e,this}getLocation(){return this.location}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setMessage(e){return this.message=e,this}getMessage(){return this.message}setVersion(e){return this.version=e,this}getVersion(){return this.version}setLevel(e){return this.level=e,this}getLevel(){return this.level}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setApiFullText(e){return this.apiFullText=e,this}getApiFullText(){return this.apiFullText}setBaseName(e){return this.baseName=e,this}getBaseName(){return this.baseName}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setParentModuleName(e){return this.parentModuleName=e,this}getParentModuleName(){return this.parentModuleName}setDefectType(e){return this.defectType=e,this}getDefectType(){return this.defectType}};t.ApiResultMessage=class{constructor(){this.analyzerName="apiengine",this.buggyFilePath="",this.codeContextStaerLine="",this.defectLevel=-1,this.defectType="",this.description="",this.language="typescript",this.mainBuggyCode="",this.mainBuggyLine="",this.extendInfo=new a}setLocation(e){return this.codeContextStaerLine=e,this}getLocation(){return this.codeContextStaerLine}setLevel(e){return this.defectLevel=e,this}getLevel(){return this.defectLevel}setType(e){return this.defectType=e,this}getType(){return this.defectType}setFilePath(e){return this.buggyFilePath=e,this}getFilePath(){return this.buggyFilePath}setMessage(e){return this.description=e,this}getMessage(){return this.description}setMainBuggyCode(e){return this.mainBuggyCode=e,this}getMainBuggyCode(){return this.mainBuggyCode}setMainBuggyLine(e){return this.mainBuggyLine=e,this}getMainBuggyLine(){return this.mainBuggyLine}setExtendInfo(e){return this.extendInfo=e,this}getExtendInfo(){return this.extendInfo}};t.ApiCheckInfo=class{constructor(){this.errorID=-1,this.errorLevel=-1,this.filePath="",this.apiPostion={line:-1,character:-1},this.errorType="",this.logType="",this.sinceNumber=-1,this.apiName="",this.apiType="",this.apiText="",this.errorInfo="",this.hierarchicalRelations="",this.parentModuleName=""}setErrorID(e){return this.errorID=e,this}getErrorID(){return this.errorID}setErrorLevel(e){return this.errorLevel=e,this}getErrorLevel(){return this.errorLevel}setFilePath(e){return this.filePath=e,this}getFilePath(){return this.filePath}setApiPostion(e){return this.apiPostion=e,this}getApiPostion(){return this.apiPostion}setErrorType(e){return this.errorType=e,this}getErrorType(){return this.errorType}setLogType(e){return this.logType=e,this}getLogType(){return this.logType}setSinceNumber(e){return this.sinceNumber=e,this}getSinceNumber(){return this.sinceNumber}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setApiText(e){return this.apiText=e,this}getApiText(){return this.apiText}setErrorInfo(e){return this.errorInfo=e,this}getErrorInfo(){return this.errorInfo}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setParentModuleName(e){return this.parentModuleName=e,this}getParentModuleName(){return this.parentModuleName}};class a{constructor(){this.apiName="",this.apiType="",this.hierarchicalRelations="",this.parentModuleName=""}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setParentModuleName(e){return this.parentModuleName=e,this}getParentModuleName(){return this.parentModuleName}}t.ApiBaseInfo=a;t.ErrorBaseInfo=class{constructor(){this.errorID=-1,this.errorLevel=-1,this.errorType="",this.logType="",this.errorInfo=""}setErrorID(e){return this.errorID=e,this}getErrorID(){return this.errorID}setErrorLevel(e){return this.errorLevel=e,this}getErrorLevel(){return this.errorLevel}setErrorType(e){return this.errorType=e,this}getErrorType(){return this.errorType}setLogType(e){return this.logType=e,this}getLogType(){return this.logType}setErrorInfo(e){return this.errorInfo=e,this}getErrorInfo(){return this.errorInfo}}},85057:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiCountInfo=void 0;t.ApiCountInfo=class{constructor(){this.filePath="",this.kitName="",this.subSystem="",this.apiNumber=-1}setFilePath(e){return this.filePath=e,this}getFilePath(){return this.filePath}setKitName(e){return e?(this.kitName=e,this):this}getKitName(){return this.kitName}setsubSystem(e){return e?(this.subSystem=e,this):this}getsubSystem(){return this.subSystem}setApiNumber(e){return this.apiNumber=e,this}getApiNumber(){return this.apiNumber}}},40149:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parentApiTypeSet=t.isNotApiSet=t.incompatibleApiDiffTypes=t.apiChangeMap=t.diffMap=t.diffTypeMap=t.ApiDiffType=t.ApiStatusCode=t.DiffNumberInfo=t.DiffTypeInfo=t.BasicDiffInfo=void 0;const n=r(44791),i=r(8136);class a{constructor(){this.apiType=a.EMPTY,this.statusCode=o.DEFAULT,this.oldApiDefinedText=a.EMPTY,this.newApiDefinedText=a.EMPTY,this.oldApiName=a.EMPTY,this.newApiName=a.EMPTY,this.oldDtsName=a.EMPTY,this.newDtsName=a.EMPTY,this.diffType=s.DEFAULT,this.diffMessage="",this.changeLogUrl="",this.changeLogs=[],this.isCompatible=!0,this.oldHierarchicalRelations=[],this.newHierarchicalRelations=[],this.oldPos={line:-1,character:-1},this.newPos={line:-1,character:-1},this.oldDescription="",this.newDescription="",this.oldSyscapField="",this.newSyscapField="",this.oldKitInfo="",this.newKitInfo="",this.isSystemapi=!1,this.isSameNameFunction=!1}setApiType(e){return this.apiType=e||a.EMPTY,this}getApiType(){return this.apiType}getStatusCode(){return this.statusCode}setStatusCode(e){return this.statusCode=e,this}setOldApiDefinedText(e){return this.oldApiDefinedText=e,this}getOldApiDefinedText(){return this.oldApiDefinedText}setNewApiDefinedText(e){return this.newApiDefinedText=e,this}getNewApiDefinedText(){return this.newApiDefinedText}setOldApiName(e){return this.oldApiName=e,this}getOldApiName(){return this.oldApiName}setNewApiName(e){return this.newApiName=e,this}getNewApiName(){return this.newApiName}setOldDtsName(e){return this.oldDtsName=e,this}getOldDtsName(){return this.oldDtsName}setNewDtsName(e){return this.newDtsName=e,this}getNewDtsName(){return this.newDtsName}setDiffType(e){return this.diffType=e,this}getDiffType(){return this.diffType}setDiffMessage(e){return this.diffMessage=e,this}getDiffMessage(){return this.diffMessage}setChangeLogUrl(e){return this.changeLogUrl=e,this}getChangeLogUrl(){return this.changeLogUrl}addChangeLogs(e){return this.changeLogs.push(e),this}getChangeLogs(){return this.changeLogs}setIsCompatible(e){return this.isCompatible=e,this}getIsCompatible(){return this.isCompatible}setOldHierarchicalRelations(e){return this.oldHierarchicalRelations=e,this}getOldHierarchicalRelations(){return this.oldHierarchicalRelations}setNewHierarchicalRelations(e){return this.newHierarchicalRelations=e,this}getNewHierarchicalRelations(){return this.newHierarchicalRelations}setOldPos(e){return this.oldPos=e,this}getOldPos(){return this.oldPos}setNewPos(e){return this.newPos=e,this}getNewPos(){return this.newPos}getOldDescription(){return this.oldDescription}setOldDescription(e){return this.oldDescription=e,this}getNewDescription(){return this.newDescription}setNewDescription(e){return this.newDescription=e,this}getOldApiInfo(){return""}getParentModuleName(e){let t="global";return e.length>i.NumberConstant.RELATION_LENGTH&&(t=e[e.length-i.NumberConstant.RELATION_LENGTH]),t}setOldSyscapField(e){return this.oldSyscapField=e,this}getOldSyscapField(){return this.oldSyscapField}setNewSyscapField(e){return this.newSyscapField=e,this}getNewSyscapField(){return this.newSyscapField}setOldKitInfo(e){return this.oldKitInfo=e,this}getOldKitInfo(){return this.oldKitInfo}setNewKitInfo(e){return this.newKitInfo=e,this}getNewKitInfo(){return this.newKitInfo}setIsSystemapi(e){return e&&(this.isSystemapi=e),this}getIsSystemapi(){return this.isSystemapi}setIsSameNameFunction(e){return this.isSameNameFunction=e,this}getIsSameNameFunction(){return this.isSameNameFunction}}t.BasicDiffInfo=a,a.EMPTY="";t.DiffTypeInfo=class{constructor(e,t,r,n){this.diffType=s.DEFAULT,this.statusCode=o.DEFAULT,this.oldMessage="",this.newMessage="",void 0!==e&&this.setStatusCode(e),t&&this.setDiffType(t),r&&this.setOldMessage(r),n&&this.setNewMessage(n)}getStatusCode(){return this.statusCode}setStatusCode(e){return this.statusCode=e,this}getDiffType(){return this.diffType}setDiffType(e){return this.diffType=e,this}getOldMessage(){return this.oldMessage}setOldMessage(e){return this.oldMessage=e,this}getNewMessage(){return this.newMessage}setNewMessage(e){return this.newMessage=e,this}};var o,s;t.DiffNumberInfo=class{constructor(){this.apiName="",this.kitName="",this.subsystem="",this.apiType="",this.allDiffType=[],this.allChangeType=[],this.compatibleInfo={},this.oldDiffMessage=[],this.newDiffMessage=[],this.allCompatible=[],this.diffTypeNumber=0,this.isApi=!0,this.apiRelation="",this.isSystemapi=!1,this.isSameNameFunction=!1}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setKitName(e){return e?(this.kitName=e,this):this}getKitName(){return this.kitName}setSubsystem(e){return e?(this.subsystem=e,this):this}getSubsystem(){return this.subsystem}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setAllDiffType(e){return this.allDiffType.push(e),this}getAllDiffType(){return this.allDiffType}setOldDiffMessage(e){return"-1"===e||""===e?(this.oldDiffMessage.push("NA"),this):(this.oldDiffMessage.push(e),this)}getOldDiffMessage(){return this.oldDiffMessage}setNewDiffMessage(e){return"-1"===e||""===e?(this.newDiffMessage.push("NA"),this):(this.newDiffMessage.push(e),this)}getNewDiffMessage(){return this.newDiffMessage}setAllChangeType(e){return e?(this.allChangeType.push(e),this):this}getAllChangeType(){return this.allChangeType}setAllCompatible(e){return this.allCompatible.push(e),this}getAllCompatible(){return this.allCompatible}setDiffTypeNumber(e){return this.diffTypeNumber=e,this}getDiffTypeNumber(){return this.diffTypeNumber}setIsApi(e){return this.isApi=e,this}getIsApi(){return this.isApi}setApiRelation(e){return this.apiRelation=e,this}getApiRelation(){return this.apiRelation}setIsSystemapi(e){return this.isSystemapi=e,this}getIsSystemapi(){return this.isSystemapi}setIsSameNameFunction(e){return this.isSameNameFunction=e,this}getIsSameNameFunction(){return this.isSameNameFunction}},function(e){e[e.DEFAULT=-1]="DEFAULT",e[e.DELETE=0]="DELETE",e[e.DELETE_DTS=1]="DELETE_DTS",e[e.DELETE_CLASS=2]="DELETE_CLASS",e[e.NEW_API=3]="NEW_API",e[e.VERSION_CHNAGES=4]="VERSION_CHNAGES",e[e.DEPRECATED_CHNAGES=5]="DEPRECATED_CHNAGES",e[e.NEW_ERRORCODE=6]="NEW_ERRORCODE",e[e.ERRORCODE_CHANGES=7]="ERRORCODE_CHANGES",e[e.SYSCAP_CHANGES=8]="SYSCAP_CHANGES",e[e.SYSTEM_API_CHNAGES=9]="SYSTEM_API_CHNAGES",e[e.PERMISSION_DELETE=10]="PERMISSION_DELETE",e[e.PERMISSION_NEW=11]="PERMISSION_NEW",e[e.PERMISSION_CHANGES=12]="PERMISSION_CHANGES",e[e.MODEL_CHNAGES=13]="MODEL_CHNAGES",e[e.TYPE_CHNAGES=14]="TYPE_CHNAGES",e[e.CLASS_CHANGES=15]="CLASS_CHANGES",e[e.FUNCTION_CHANGES=16]="FUNCTION_CHANGES",e[e.CHANGELOG=17]="CHANGELOG",e[e.DTS_CHANGED=18]="DTS_CHANGED",e[e.FORM_CHANGED=19]="FORM_CHANGED",e[e.CROSSPLATFORM_CHANGED=20]="CROSSPLATFORM_CHANGED",e[e.NEW_DTS=21]="NEW_DTS",e[e.NEW_CLASS=22]="NEW_CLASS",e[e.NEW_DECORATOR=23]="NEW_DECORATOR",e[e.DELETE_DECORATOR=24]="DELETE_DECORATOR",e[e.KIT_CHANGE=26]="KIT_CHANGE",e[e.ATOMICSERVICE_CHANGE=27]="ATOMICSERVICE_CHANGE",e[e.ERRORCODE_DELETE=28]="ERRORCODE_DELETE",e[e.EXPORT_NAME_CHANGE=29]="EXPORT_NAME_CHANGE",e[e.EXPORT_NAME_NUMBER_ADD=30]="EXPORT_NAME_NUMBER_ADD",e[e.EXPORT_NAME_NUMBER_REDUCE=31]="EXPORT_NAME_NUMBER_REDUCE"}(o=t.ApiStatusCode||(t.ApiStatusCode={})),function(e){e[e.DEFAULT=0]="DEFAULT",e[e.SYSTEM_TO_PUBLIC=1]="SYSTEM_TO_PUBLIC",e[e.PUBLIC_TO_SYSTEM=2]="PUBLIC_TO_SYSTEM",e[e.NA_TO_STAGE=3]="NA_TO_STAGE",e[e.NA_TO_FA=4]="NA_TO_FA",e[e.FA_TO_STAGE=5]="FA_TO_STAGE",e[e.STAGE_TO_FA=6]="STAGE_TO_FA",e[e.STAGE_TO_NA=7]="STAGE_TO_NA",e[e.FA_TO_NA=8]="FA_TO_NA",e[e.NA_TO_CARD=9]="NA_TO_CARD",e[e.CARD_TO_NA=10]="CARD_TO_NA",e[e.NA_TO_CROSS_PLATFORM=11]="NA_TO_CROSS_PLATFORM",e[e.CROSS_PLATFORM_TO_NA=12]="CROSS_PLATFORM_TO_NA",e[e.SYSCAP_NA_TO_HAVE=13]="SYSCAP_NA_TO_HAVE",e[e.SYSCAP_HAVE_TO_NA=14]="SYSCAP_HAVE_TO_NA",e[e.SYSCAP_A_TO_B=15]="SYSCAP_A_TO_B",e[e.DEPRECATED_NA_TO_HAVE=16]="DEPRECATED_NA_TO_HAVE",e[e.DEPRECATED_HAVE_TO_NA=17]="DEPRECATED_HAVE_TO_NA",e[e.DEPRECATED_A_TO_B=18]="DEPRECATED_A_TO_B",e[e.DEPRECATED_NOT_All=19]="DEPRECATED_NOT_All",e[e.ERROR_CODE_NA_TO_HAVE=20]="ERROR_CODE_NA_TO_HAVE",e[e.ERROR_CODE_ADD=21]="ERROR_CODE_ADD",e[e.ERROR_CODE_REDUCE=22]="ERROR_CODE_REDUCE",e[e.ERROR_CODE_CHANGE=23]="ERROR_CODE_CHANGE",e[e.PERMISSION_NA_TO_HAVE=24]="PERMISSION_NA_TO_HAVE",e[e.PERMISSION_HAVE_TO_NA=25]="PERMISSION_HAVE_TO_NA",e[e.PERMISSION_RANGE_BIGGER=26]="PERMISSION_RANGE_BIGGER",e[e.PERMISSION_RANGE_SMALLER=27]="PERMISSION_RANGE_SMALLER",e[e.PERMISSION_RANGE_CHANGE=28]="PERMISSION_RANGE_CHANGE",e[e.TYPE_RANGE_BIGGER=29]="TYPE_RANGE_BIGGER",e[e.TYPE_RANGE_SMALLER=30]="TYPE_RANGE_SMALLER",e[e.TYPE_RANGE_CHANGE=31]="TYPE_RANGE_CHANGE",e[e.API_NAME_CHANGE=32]="API_NAME_CHANGE",e[e.FUNCTION_RETURN_TYPE_ADD=33]="FUNCTION_RETURN_TYPE_ADD",e[e.FUNCTION_RETURN_TYPE_REDUCE=34]="FUNCTION_RETURN_TYPE_REDUCE",e[e.FUNCTION_RETURN_TYPE_CHANGE=35]="FUNCTION_RETURN_TYPE_CHANGE",e[e.FUNCTION_PARAM_POS_CHANGE=36]="FUNCTION_PARAM_POS_CHANGE",e[e.FUNCTION_PARAM_UNREQUIRED_ADD=37]="FUNCTION_PARAM_UNREQUIRED_ADD",e[e.FUNCTION_PARAM_REQUIRED_ADD=38]="FUNCTION_PARAM_REQUIRED_ADD",e[e.FUNCTION_PARAM_REDUCE=39]="FUNCTION_PARAM_REDUCE",e[e.FUNCTION_PARAM_TO_UNREQUIRED=40]="FUNCTION_PARAM_TO_UNREQUIRED",e[e.FUNCTION_PARAM_TO_REQUIRED=41]="FUNCTION_PARAM_TO_REQUIRED",e[e.FUNCTION_PARAM_NAME_CHANGE=42]="FUNCTION_PARAM_NAME_CHANGE",e[e.FUNCTION_PARAM_TYPE_CHANGE=43]="FUNCTION_PARAM_TYPE_CHANGE",e[e.FUNCTION_PARAM_TYPE_ADD=44]="FUNCTION_PARAM_TYPE_ADD",e[e.FUNCTION_PARAM_TYPE_REDUCE=45]="FUNCTION_PARAM_TYPE_REDUCE",e[e.FUNCTION_PARAM_CHANGE=46]="FUNCTION_PARAM_CHANGE",e[e.FUNCTION_CHANGES=47]="FUNCTION_CHANGES",e[e.PROPERTY_READONLY_TO_UNREQUIRED=48]="PROPERTY_READONLY_TO_UNREQUIRED",e[e.PROPERTY_READONLY_TO_REQUIRED=49]="PROPERTY_READONLY_TO_REQUIRED",e[e.PROPERTY_WRITABLE_TO_UNREQUIRED=50]="PROPERTY_WRITABLE_TO_UNREQUIRED",e[e.PROPERTY_WRITABLE_TO_REQUIRED=51]="PROPERTY_WRITABLE_TO_REQUIRED",e[e.PROPERTY_TYPE_CHANGE=52]="PROPERTY_TYPE_CHANGE",e[e.PROPERTY_READONLY_ADD=53]="PROPERTY_READONLY_ADD",e[e.PROPERTY_READONLY_REDUCE=54]="PROPERTY_READONLY_REDUCE",e[e.PROPERTY_WRITABLE_ADD=55]="PROPERTY_WRITABLE_ADD",e[e.PROPERTY_WRITABLE_REDUCE=56]="PROPERTY_WRITABLE_REDUCE",e[e.CONSTANT_VALUE_CHANGE=57]="CONSTANT_VALUE_CHANGE",e[e.TYPE_ALIAS_CHANGE=58]="TYPE_ALIAS_CHANGE",e[e.TYPE_ALIAS_ADD=59]="TYPE_ALIAS_ADD",e[e.TYPE_ALIAS_REDUCE=60]="TYPE_ALIAS_REDUCE",e[e.TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD=61]="TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD",e[e.TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE=62]="TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE",e[e.TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE=63]="TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE",e[e.TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE=64]="TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE",e[e.TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD=65]="TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD",e[e.TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD=66]="TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD",e[e.TYPE_ALIAS_FUNCTION_PARAM_REDUCE=67]="TYPE_ALIAS_FUNCTION_PARAM_REDUCE",e[e.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE=68]="TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE",e[e.TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED=69]="TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED",e[e.TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED=70]="TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED",e[e.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD=71]="TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD",e[e.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE=72]="TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE",e[e.TYPE_ALIAS_FUNCTION_PARAM_CHANGE=73]="TYPE_ALIAS_FUNCTION_PARAM_CHANGE",e[e.ENUM_MEMBER_VALUE_CHANGE=74]="ENUM_MEMBER_VALUE_CHANGE",e[e.ADD=75]="ADD",e[e.REDUCE=76]="REDUCE",e[e.NEW_DECORATOR=77]="NEW_DECORATOR",e[e.DELETE_DECORATOR=78]="DELETE_DECORATOR",e[e.SINCE_VERSION_NA_TO_HAVE=79]="SINCE_VERSION_NA_TO_HAVE",e[e.SINCE_VERSION_HAVE_TO_NA=80]="SINCE_VERSION_HAVE_TO_NA",e[e.SINCE_VERSION_A_TO_B=81]="SINCE_VERSION_A_TO_B",e[e.HISTORICAL_JSDOC_CHANGE=82]="HISTORICAL_JSDOC_CHANGE",e[e.HISTORICAL_API_CHANGE=83]="HISTORICAL_API_CHANGE",e[e.KIT_CHANGE=84]="KIT_CHANGE",e[e.ATOMIC_SERVICE_NA_TO_HAVE=85]="ATOMIC_SERVICE_NA_TO_HAVE",e[e.ATOMIC_SERVICE_HAVE_TO_NA=86]="ATOMIC_SERVICE_HAVE_TO_NA",e[e.PROPERTY_TYPE_SIGN_CHANGE=87]="PROPERTY_TYPE_SIGN_CHANGE",e[e.KIT_HAVE_TO_NA=88]="KIT_HAVE_TO_NA",e[e.KIT_NA_TO_HAVE=89]="KIT_NA_TO_HAVE",e[e.NEW_SAME_NAME_FUNCTION=90]="NEW_SAME_NAME_FUNCTION",e[e.REDUCE_SAME_NAME_FUNCTION=91]="REDUCE_SAME_NAME_FUNCTION",e[e.EXPORT_NAME_CHANGE=92]="EXPORT_NAME_CHANGE",e[e.EXPORT_NAME_NUMBER_REDUCE=93]="EXPORT_NAME_NUMBER_REDUCE",e[e.EXPORT_NAME_NUMBER_ADD=94]="EXPORT_NAME_NUMBER_ADD"}(s=t.ApiDiffType||(t.ApiDiffType={})),t.diffTypeMap=new Map([[s.SYSTEM_TO_PUBLIC,"API访问级别变更"],[s.PUBLIC_TO_SYSTEM,"API访问级别变更"],[s.NA_TO_STAGE,"API模型切换"],[s.NA_TO_FA,"API模型切换"],[s.FA_TO_STAGE,"API模型切换"],[s.STAGE_TO_FA,"API模型切换"],[s.STAGE_TO_NA,"API模型切换"],[s.FA_TO_NA,"API模型切换"],[s.NA_TO_CARD,"API卡片权限变更"],[s.CARD_TO_NA,"API卡片权限变更"],[s.NA_TO_CROSS_PLATFORM,"API跨平台权限变更"],[s.CROSS_PLATFORM_TO_NA,"API跨平台权限变更"],[s.SYSCAP_NA_TO_HAVE,"syscap变更"],[s.SYSCAP_HAVE_TO_NA,"syscap变更"],[s.SYSCAP_A_TO_B,"syscap变更"],[s.DEPRECATED_NA_TO_HAVE,"API废弃版本变更"],[s.DEPRECATED_HAVE_TO_NA,"API废弃版本变更"],[s.DEPRECATED_NOT_All,"API废弃版本变更"],[s.DEPRECATED_A_TO_B,"API废弃版本变更"],[s.ERROR_CODE_NA_TO_HAVE,"错误码变更"],[s.ERROR_CODE_ADD,"错误码变更"],[s.ERROR_CODE_REDUCE,"错误码变更"],[s.ERROR_CODE_CHANGE,"错误码变更"],[s.PERMISSION_NA_TO_HAVE,"权限变更"],[s.PERMISSION_HAVE_TO_NA,"权限变更"],[s.PERMISSION_RANGE_BIGGER,"权限变更"],[s.PERMISSION_RANGE_SMALLER,"权限变更"],[s.PERMISSION_RANGE_CHANGE,"权限变更"],[s.TYPE_RANGE_BIGGER,"自定义类型变更"],[s.TYPE_RANGE_SMALLER,"自定义类型变更"],[s.TYPE_RANGE_CHANGE,"自定义类型变更"],[s.API_NAME_CHANGE,"API名称变更"],[s.FUNCTION_RETURN_TYPE_ADD,"函数变更"],[s.FUNCTION_RETURN_TYPE_REDUCE,"函数变更"],[s.FUNCTION_RETURN_TYPE_CHANGE,"函数变更"],[s.FUNCTION_PARAM_POS_CHANGE,"函数变更"],[s.FUNCTION_PARAM_UNREQUIRED_ADD,"函数变更"],[s.FUNCTION_PARAM_REQUIRED_ADD,"函数变更"],[s.FUNCTION_PARAM_REDUCE,"函数变更"],[s.FUNCTION_PARAM_TO_UNREQUIRED,"函数变更"],[s.FUNCTION_PARAM_TO_REQUIRED,"函数变更"],[s.FUNCTION_PARAM_NAME_CHANGE,"函数变更"],[s.FUNCTION_PARAM_TYPE_CHANGE,"函数变更"],[s.FUNCTION_PARAM_TYPE_ADD,"函数变更"],[s.FUNCTION_PARAM_TYPE_REDUCE,"函数变更"],[s.FUNCTION_PARAM_CHANGE,"函数变更"],[s.FUNCTION_CHANGES,"函数变更"],[s.PROPERTY_READONLY_TO_UNREQUIRED,"属性变更"],[s.PROPERTY_READONLY_TO_REQUIRED,"属性变更"],[s.PROPERTY_WRITABLE_TO_UNREQUIRED,"属性变更"],[s.PROPERTY_WRITABLE_TO_REQUIRED,"属性变更"],[s.PROPERTY_TYPE_CHANGE,"属性变更"],[s.PROPERTY_READONLY_ADD,"属性变更"],[s.PROPERTY_READONLY_REDUCE,"属性变更"],[s.PROPERTY_WRITABLE_ADD,"属性变更"],[s.PROPERTY_WRITABLE_REDUCE,"属性变更"],[s.PROPERTY_TYPE_SIGN_CHANGE,"属性变更"],[s.CONSTANT_VALUE_CHANGE,"常量变更"],[s.TYPE_ALIAS_CHANGE,"自定义类型变更"],[s.TYPE_ALIAS_ADD,"自定义类型变更"],[s.TYPE_ALIAS_REDUCE,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD,"函数变更"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE,"函数变更"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE,"函数变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_REDUCE,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_CHANGE,"自定义类型变更"],[s.ENUM_MEMBER_VALUE_CHANGE,"枚举赋值发生改变"],[s.ADD,"新增API"],[s.REDUCE,"删除API"],[s.DELETE_DECORATOR,"删除装饰器"],[s.NEW_DECORATOR,"新增装饰器"],[s.SINCE_VERSION_A_TO_B,"起始版本有变化"],[s.SINCE_VERSION_HAVE_TO_NA,"起始版本有变化"],[s.SINCE_VERSION_NA_TO_HAVE,"起始版本有变化"],[s.KIT_CHANGE,"kit变更"],[s.KIT_HAVE_TO_NA,"删除kit"],[s.KIT_NA_TO_HAVE,"新增kit"],[s.ATOMIC_SERVICE_HAVE_TO_NA,"API从支持元服务到不支持元服务"],[s.ATOMIC_SERVICE_NA_TO_HAVE,"API从不支持元服务到支持元服务"],[s.NEW_SAME_NAME_FUNCTION,"新增同名函数"],[s.REDUCE_SAME_NAME_FUNCTION,"删除同名函数"],[s.EXPORT_NAME_CHANGE,"export名称变更"],[s.EXPORT_NAME_NUMBER_REDUCE,"删除export名称"],[s.EXPORT_NAME_NUMBER_ADD,"新增export名称"]]),t.diffMap=new Map([[s.SYSTEM_TO_PUBLIC,"从系统API变更为公开API"],[s.PUBLIC_TO_SYSTEM,"从公开API变更为系统API"],[s.NA_TO_STAGE,"从无模型使用限制到仅在Stage模型下使用"],[s.NA_TO_FA,"从无模型使用限制到仅在FA模型下使用"],[s.FA_TO_STAGE,"从仅在FA模型下使用到仅在Stage模型下使用"],[s.STAGE_TO_FA,"从仅在Stage模型下使用到仅在FA模型下使用"],[s.STAGE_TO_NA,"从仅在Stage模型下使用到无模型使用限制"],[s.FA_TO_NA,"从仅在FA模型下使用到无模型使用限制"],[s.NA_TO_CARD,"从不支持卡片到支持卡片"],[s.CARD_TO_NA,"从支持卡片到不支持卡片"],[s.NA_TO_CROSS_PLATFORM,"从不支持跨平台到支持跨平台"],[s.CROSS_PLATFORM_TO_NA,"从支持跨平台到不支持跨平台"],[s.SYSCAP_NA_TO_HAVE,"从没有syscap到有syscap"],[s.SYSCAP_HAVE_TO_NA,"从有syscap到没有syscap"],[s.SYSCAP_A_TO_B,"syscap发生改变"],[s.DEPRECATED_NA_TO_HAVE,"接口变更为废弃"],[s.DEPRECATED_HAVE_TO_NA,"废弃接口变更为不废弃"],[s.DEPRECATED_NOT_All,"接口变更为废弃"],[s.DEPRECATED_A_TO_B,"接口废弃版本发生变化"],[s.ERROR_CODE_NA_TO_HAVE,"错误码从无到有"],[s.ERROR_CODE_ADD,"错误码增加"],[s.ERROR_CODE_REDUCE,"错误码减少"],[s.ERROR_CODE_CHANGE,"错误码的code值发生变化"],[s.PERMISSION_NA_TO_HAVE,"权限从无到有"],[s.PERMISSION_HAVE_TO_NA,"权限从有到无"],[s.PERMISSION_RANGE_BIGGER,"增加or或减少and权限"],[s.PERMISSION_RANGE_SMALLER,"减少or或增加and权限"],[s.PERMISSION_RANGE_CHANGE,"权限发生改变无法判断范围变化"],[s.TYPE_RANGE_BIGGER,"类型范围变大"],[s.TYPE_RANGE_SMALLER,"类型范围变小"],[s.TYPE_RANGE_CHANGE,"类型范围改变"],[s.API_NAME_CHANGE,"API名称变更"],[s.FUNCTION_RETURN_TYPE_ADD,"函数返回值类型扩大"],[s.FUNCTION_RETURN_TYPE_REDUCE,"函数返回值类型缩小"],[s.FUNCTION_RETURN_TYPE_CHANGE,"函数返回值类型改变"],[s.FUNCTION_PARAM_POS_CHANGE,"函数参数位置发生改变"],[s.FUNCTION_PARAM_UNREQUIRED_ADD,"函数新增可选参数"],[s.FUNCTION_PARAM_REQUIRED_ADD,"函数新增必选参数"],[s.FUNCTION_PARAM_REDUCE,"函数删除参数"],[s.FUNCTION_PARAM_TO_UNREQUIRED,"函数中的必选参数变为可选参数"],[s.FUNCTION_PARAM_TO_REQUIRED,"函数中的可选参数变为必选参数"],[s.FUNCTION_PARAM_NAME_CHANGE,"函数中的参数名称发生改变"],[s.FUNCTION_PARAM_TYPE_CHANGE,"函数的参数类型变更"],[s.FUNCTION_PARAM_TYPE_ADD,"函数的参数类型范围扩大"],[s.FUNCTION_PARAM_TYPE_REDUCE,"函数的参数类型范围缩小"],[s.FUNCTION_PARAM_CHANGE,"函数的参数变更"],[s.FUNCTION_CHANGES,"函数有变化"],[s.PROPERTY_READONLY_TO_UNREQUIRED,"只读属性由必选变为可选"],[s.PROPERTY_READONLY_TO_REQUIRED,"只读属性由可选变为必选"],[s.PROPERTY_WRITABLE_TO_UNREQUIRED,"可写属性由必选变为可选"],[s.PROPERTY_WRITABLE_TO_REQUIRED,"可写属性由可选变为必选"],[s.PROPERTY_TYPE_CHANGE,"属性类型发生改变"],[s.PROPERTY_TYPE_SIGN_CHANGE,"属性类型发生改变"],[s.PROPERTY_READONLY_ADD,"只读属性类型范围扩大"],[s.PROPERTY_READONLY_REDUCE,"只读属性类型范围缩小"],[s.PROPERTY_WRITABLE_ADD,"可写属性类型范围扩大"],[s.PROPERTY_WRITABLE_REDUCE,"可写属性类型范围缩小"],[s.CONSTANT_VALUE_CHANGE,"常量值发生改变"],[s.TYPE_ALIAS_CHANGE,"自定义类型值改变"],[s.TYPE_ALIAS_ADD,"自定义类型值范围扩大"],[s.TYPE_ALIAS_REDUCE,"自定义类型值范围缩小"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD,"自定义方法类型返回值类型扩大"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE,"自定义方法类型返回值类型缩小"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE,"自定义方法类型返回值类型改变"],[s.TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE,"自定义方法类型参数位置发生改变"],[s.TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD,"自定义方法类型新增可选参数"],[s.TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD,"自定义方法类型新增必选参数"],[s.TYPE_ALIAS_FUNCTION_PARAM_REDUCE,"自定义方法类型删除参数"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED,"自定义方法类型的必选参数变为可选参数"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED,"自定义方法类型的可选参数变为必选参数"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE,"自定义方法类型的参数类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD,"自定义方法类型的参数类型范围扩大"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE,"自定义方法类型的参数类型范围缩小"],[s.TYPE_ALIAS_FUNCTION_PARAM_CHANGE,"自定义方法类型的参数变更"],[s.ENUM_MEMBER_VALUE_CHANGE,"枚举赋值发生改变"],[s.ADD,"新增API"],[s.REDUCE,"删除API"],[s.DELETE_DECORATOR,"删除装饰器"],[s.NEW_DECORATOR,"新增装饰器"],[s.SINCE_VERSION_A_TO_B,"起始版本号变更"],[s.SINCE_VERSION_HAVE_TO_NA,"起始版本号删除"],[s.SINCE_VERSION_NA_TO_HAVE,"起始版本号新增"],[s.HISTORICAL_JSDOC_CHANGE,"历史版本jsdoc变更"],[s.HISTORICAL_API_CHANGE,"历史版本API变更"],[s.KIT_CHANGE,"kit变更"],[s.KIT_HAVE_TO_NA,"kit信息从有到无"],[s.KIT_NA_TO_HAVE,"kit信息从无到有"],[s.ATOMIC_SERVICE_HAVE_TO_NA,"API从支持元服务到不支持元服务"],[s.ATOMIC_SERVICE_NA_TO_HAVE,"API从不支持元服务到支持元服务"],[s.NEW_SAME_NAME_FUNCTION,"新增同名函数"],[s.REDUCE_SAME_NAME_FUNCTION,"删除同名函数"],[s.EXPORT_NAME_CHANGE,"export名称变更"],[s.EXPORT_NAME_NUMBER_REDUCE,"删除export名称"],[s.EXPORT_NAME_NUMBER_ADD,"新增export名称"]]),t.apiChangeMap=new Map([[s.SYSTEM_TO_PUBLIC,"API修改(约束变化)"],[s.PUBLIC_TO_SYSTEM,"API修改(约束变化)"],[s.NA_TO_STAGE,"API修改(约束变化)"],[s.NA_TO_FA,"API修改(约束变化)"],[s.FA_TO_STAGE,"API修改(约束变化)"],[s.STAGE_TO_FA,"API修改(约束变化)"],[s.STAGE_TO_NA,"API修改(约束变化)"],[s.FA_TO_NA,"API修改(约束变化)"],[s.NA_TO_CARD,"API修改(约束变化)"],[s.CARD_TO_NA,"API修改(约束变化)"],[s.NA_TO_CROSS_PLATFORM,"API修改(约束变化)"],[s.CROSS_PLATFORM_TO_NA,"API修改(约束变化)"],[s.SYSCAP_NA_TO_HAVE,"API修改(约束变化)"],[s.SYSCAP_HAVE_TO_NA,"API修改(约束变化)"],[s.SYSCAP_A_TO_B,"API修改(约束变化)"],[s.DEPRECATED_NA_TO_HAVE,"API废弃"],[s.DEPRECATED_HAVE_TO_NA,"API废弃"],[s.DEPRECATED_NOT_All,"API修改(约束变化)"],[s.DEPRECATED_A_TO_B,"API废弃"],[s.ERROR_CODE_NA_TO_HAVE,"API修改(约束变化)"],[s.ERROR_CODE_ADD,"API修改(原型修改)"],[s.ERROR_CODE_REDUCE,"API修改(原型修改)"],[s.ERROR_CODE_CHANGE,"API修改(原型修改)"],[s.PERMISSION_NA_TO_HAVE,"API修改(约束变化)"],[s.PERMISSION_HAVE_TO_NA,"API修改(约束变化)"],[s.PERMISSION_RANGE_BIGGER,"API修改(约束变化)"],[s.PERMISSION_RANGE_SMALLER,"API修改(约束变化)"],[s.PERMISSION_RANGE_CHANGE,"API修改(约束变化)"],[s.TYPE_RANGE_BIGGER,"API修改(原型修改)"],[s.TYPE_RANGE_SMALLER,"API修改(原型修改)"],[s.TYPE_RANGE_CHANGE,"API修改(原型修改)"],[s.API_NAME_CHANGE,"API修改(原型修改)"],[s.FUNCTION_RETURN_TYPE_ADD,"API修改(原型修改)"],[s.FUNCTION_RETURN_TYPE_REDUCE,"API修改(原型修改)"],[s.FUNCTION_RETURN_TYPE_CHANGE,"API修改(原型修改)"],[s.FUNCTION_PARAM_POS_CHANGE,"API修改(原型修改)"],[s.FUNCTION_PARAM_UNREQUIRED_ADD,"API修改(原型修改)"],[s.FUNCTION_PARAM_REQUIRED_ADD,"API修改(原型修改)"],[s.FUNCTION_PARAM_REDUCE,"API修改(原型修改)"],[s.FUNCTION_PARAM_TO_UNREQUIRED,"API修改(原型修改)"],[s.FUNCTION_PARAM_TO_REQUIRED,"API修改(原型修改)"],[s.FUNCTION_PARAM_NAME_CHANGE,"API修改(原型修改)"],[s.FUNCTION_PARAM_TYPE_CHANGE,"API修改(原型修改)"],[s.FUNCTION_PARAM_TYPE_ADD,"API修改(原型修改)"],[s.FUNCTION_PARAM_TYPE_REDUCE,"API修改(原型修改)"],[s.FUNCTION_CHANGES,"API修改(原型修改)"],[s.FUNCTION_PARAM_CHANGE,"API修改(原型修改)"],[s.PROPERTY_READONLY_TO_UNREQUIRED,"API修改(约束变化)"],[s.PROPERTY_READONLY_TO_REQUIRED,"API修改(约束变化)"],[s.PROPERTY_WRITABLE_TO_UNREQUIRED,"API修改(约束变化)"],[s.PROPERTY_WRITABLE_TO_REQUIRED,"API修改(约束变化)"],[s.PROPERTY_TYPE_CHANGE,"API修改(原型修改)"],[s.PROPERTY_TYPE_SIGN_CHANGE,"API修改(原型修改)"],[s.PROPERTY_READONLY_ADD,"API修改(约束变化)"],[s.PROPERTY_READONLY_REDUCE,"API修改(约束变化)"],[s.PROPERTY_WRITABLE_ADD,"API修改(约束变化)"],[s.PROPERTY_WRITABLE_REDUCE,"API修改(约束变化)"],[s.CONSTANT_VALUE_CHANGE,"API修改(原型修改)"],[s.TYPE_ALIAS_CHANGE,"API修改(原型修改)"],[s.TYPE_ALIAS_ADD,"API修改(原型修改)"],[s.TYPE_ALIAS_REDUCE,"API修改(原型修改)"],[s.ENUM_MEMBER_VALUE_CHANGE,"API修改(原型修改)"],[s.ADD,"API新增"],[s.REDUCE,"API删除"],[s.DELETE_DECORATOR,"API修改(约束变化)"],[s.NEW_DECORATOR,"API修改(约束变化)"],[s.SINCE_VERSION_A_TO_B,"API修改(约束变化)"],[s.SINCE_VERSION_HAVE_TO_NA,"API修改(约束变化)"],[s.SINCE_VERSION_NA_TO_HAVE,"API修改(约束变化)"],[s.KIT_CHANGE,"非API变更"],[s.KIT_HAVE_TO_NA,"非API变更"],[s.KIT_NA_TO_HAVE,"非API变更"],[s.EXPORT_NAME_CHANGE,"非API变更"],[s.EXPORT_NAME_NUMBER_REDUCE,"非API变更"],[s.EXPORT_NAME_NUMBER_ADD,"非API变更"],[s.ATOMIC_SERVICE_HAVE_TO_NA,"API修改(约束变化)"],[s.ATOMIC_SERVICE_NA_TO_HAVE,"API修改(约束变化)"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_REDUCE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_CHANGE,"API修改(原型修改)"],[s.NEW_SAME_NAME_FUNCTION,"API修改(原型修改)"],[s.REDUCE_SAME_NAME_FUNCTION,"API修改(原型修改)"]]),t.incompatibleApiDiffTypes=new Set([s.PUBLIC_TO_SYSTEM,s.NA_TO_STAGE,s.NA_TO_FA,s.FA_TO_STAGE,s.STAGE_TO_FA,s.CARD_TO_NA,s.CROSS_PLATFORM_TO_NA,s.ERROR_CODE_NA_TO_HAVE,s.ERROR_CODE_CHANGE,s.PERMISSION_NA_TO_HAVE,s.PERMISSION_RANGE_SMALLER,s.PERMISSION_RANGE_CHANGE,s.API_NAME_CHANGE,s.FUNCTION_RETURN_TYPE_ADD,s.FUNCTION_RETURN_TYPE_CHANGE,s.FUNCTION_PARAM_POS_CHANGE,s.FUNCTION_PARAM_REQUIRED_ADD,s.FUNCTION_PARAM_REDUCE,s.FUNCTION_PARAM_TO_REQUIRED,s.FUNCTION_PARAM_TYPE_CHANGE,s.FUNCTION_PARAM_TYPE_REDUCE,s.FUNCTION_PARAM_CHANGE,s.FUNCTION_CHANGES,s.PROPERTY_READONLY_TO_REQUIRED,s.PROPERTY_WRITABLE_TO_UNREQUIRED,s.PROPERTY_WRITABLE_TO_REQUIRED,s.PROPERTY_TYPE_CHANGE,s.PROPERTY_READONLY_ADD,s.PROPERTY_WRITABLE_ADD,s.PROPERTY_WRITABLE_REDUCE,s.CONSTANT_VALUE_CHANGE,s.TYPE_ALIAS_CHANGE,s.TYPE_ALIAS_ADD,s.TYPE_ALIAS_REDUCE,s.ENUM_MEMBER_VALUE_CHANGE,s.REDUCE,s.HISTORICAL_JSDOC_CHANGE,s.HISTORICAL_API_CHANGE,s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE,s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE,s.FUNCTION_RETURN_TYPE_REDUCE,s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD,s.TYPE_ALIAS_FUNCTION_PARAM_CHANGE,s.ATOMIC_SERVICE_HAVE_TO_NA,s.DELETE_DECORATOR,s.NEW_DECORATOR,s.SYSCAP_A_TO_B,s.SYSCAP_HAVE_TO_NA,s.SYSCAP_NA_TO_HAVE,s.KIT_CHANGE,s.KIT_HAVE_TO_NA,s.REDUCE_SAME_NAME_FUNCTION,s.EXPORT_NAME_CHANGE,s.EXPORT_NAME_NUMBER_REDUCE]),t.isNotApiSet=new Set([n.ApiType.NAMESPACE,n.ApiType.ENUM,n.ApiType.SOURCE_FILE]),t.parentApiTypeSet=new Set([n.ApiType.INTERFACE,n.ApiType.STRUCT,n.ApiType.CLASS])},44791:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.notJsDocApiTypes=t.containerApiTypes=t.ParserParam=t.ParentClass=t.GenericInfo=t.ParamInfo=t.TypeLocationInfo=t.MethodInfo=t.EnumValueInfo=t.TypeParamInfo=t.TypeAliasInfo=t.ConstantInfo=t.PropertyInfo=t.EnumInfo=t.ModuleInfo=t.StructInfo=t.NamespaceInfo=t.InterfaceInfo=t.ClassInfo=t.ApiInfo=t.ImportInfo=t.ExportDeclareInfo=t.ReferenceInfo=t.ExportDefaultInfo=t.BasicApiInfo=t.TypeAliasType=t.ApiType=void 0;const i=n(r(58843)),a=r(40745),o=r(8136),s=r(37583),c=r(28879),l=r(56405);var u;!function(e){e.SOURCE_FILE="SourceFile",e.REFERENCE_FILE="Reference",e.PROPERTY="Property",e.CLASS="Class",e.INTERFACE="Interface",e.NAMESPACE="Namespace",e.METHOD="Method",e.MODULE="Module",e.EXPORT="Export",e.EXPORT_DEFAULT="ExportDefault",e.CONSTANT="Constant",e.IMPORT="Import",e.DECLARE_CONST="DeclareConst",e.ENUM_VALUE="EnumValue",e.TYPE_ALIAS="TypeAlias",e.PARAM="Param",e.ENUM="Enum",e.STRUCT="Struct"}(u=t.ApiType||(t.ApiType={})),function(e){e.UNION_TYPE="UnionType",e.OBJECT_TYPE="ObjectType",e.TUPLE_TYPE="TupleType",e.REFERENCE_TYPE="ReferenceType"}(t.TypeAliasType||(t.TypeAliasType={}));class d{constructor(e="",t,r){this.node=void 0,this.filePath="",this.apiType="",this.definedText="",this.pos={line:-1,character:-1},this.parentApi=void 0,this.isExport=!1,this.apiName="",this.hierarchicalRelations=[],this.decorators=void 0,this.isStruct=!1,this.syscap="",this.currentVersion="-1",this.jsDocText="",this.isJoinType=!1,this.genericInfo=[],this.parentApiType="",this.fileAbsolutePath="",this.isSameNameFunction=!1,this.node=t,this.setParentApi(r),this.setParentApiType(r?.getApiType()),r&&(this.setFilePath(r.getFilePath()),this.setFileAbsolutePath(r.getFileAbsolutePath()),this.setIsStruct(r.getIsStruct())),this.setApiType(e);const n=t.getSourceFile(),i=t.getStart(),a=n.getLineAndCharacterOfPosition(i);a.character++,a.line++,this.setPos(a),t.decorators&&t.decorators.forEach((e=>{this.addDecorators([new c.DecoratorInfo(e)])}))}getNode(){return this.node}removeNode(){this.node=void 0}setFilePath(e){this.filePath=e}getFilePath(){return this.filePath}setFileAbsolutePath(e){this.fileAbsolutePath=e}getFileAbsolutePath(){return this.fileAbsolutePath}setApiType(e){this.apiType=e}getApiType(){return this.apiType}setDefinedText(e){this.definedText=e}getDefinedText(){return this.definedText}setPos(e){this.pos=e}getPos(){return this.pos}setParentApi(e){this.parentApi=e}getParentApi(){return this.parentApi}setParentApiType(e){e&&(this.parentApiType=e)}getParentApiType(){return this.parentApiType}setIsExport(e){this.isExport=e}getIsExport(){return this.isExport}setApiName(e){this.apiName=e,this.parentApi&&this.setHierarchicalRelations(this.parentApi.getHierarchicalRelations()),this.addHierarchicalRelation([e])}getApiName(){return this.apiName}setHierarchicalRelations(e){this.hierarchicalRelations=[...e]}getHierarchicalRelations(){return this.hierarchicalRelations}addHierarchicalRelation(e){this.hierarchicalRelations.push(...e)}setDecorators(e){this.decorators=e}addDecorators(e){this.decorators||(this.decorators=[]),this.decorators.push(...e)}getDecorators(){return this.decorators}setIsStruct(e){this.isStruct=e}getIsStruct(){return this.isStruct}setSyscap(e){this.syscap=e}getSyscap(){return this.syscap}setCurrentVersion(e){this.currentVersion=e}getCurrentVersion(){return this.currentVersion}setJsDocText(e){this.jsDocText=e}getJsDocText(){return this.jsDocText}setIsJoinType(e){this.isJoinType=e}getIsJoinType(){return this.isJoinType}setGenericInfo(e){this.genericInfo.push(e)}getGenericInfo(){return this.genericInfo}setIsSameNameFunction(e){this.isSameNameFunction=e}getIsSameNameFunction(){return this.isSameNameFunction}}t.BasicApiInfo=d;t.ExportDefaultInfo=class extends d{};t.ReferenceInfo=class extends d{constructor(){super(...arguments),this.pathName=""}setPathName(e){return this.pathName=e,this}getPathName(){return this.pathName}};t.ExportDeclareInfo=class extends d{constructor(){super(...arguments),this.exportValues=[]}addExportValues(e,t){this.exportValues.push({key:e,value:t||e})}getExportValues(){return this.exportValues}};t.ImportInfo=class extends d{constructor(){super(...arguments),this.importValues=[],this.importPath=""}addImportValue(e,t){this.importValues.push({key:e,value:t||e})}getImportValues(){return this.importValues}setImportPath(e){this.importPath=e}getImportPath(){return this.importPath}};class p extends d{constructor(e="",t,r){super(e,t,r),this.jsDocInfos=[];let n="NA",i="NA";r&&(n=this.getKitInfoFromParent(r).kitInfo,i=this.getKitInfoFromParent(r).fileTagContent);const a=l.JsDocProcessorHelper.processJsDocInfos(t,e,n,i),o=t.getFullText().substring(0,t.getFullText().length-t.getText().length).trim();this.setJsDocText(o),this.addJsDocInfos(a)}getKitInfoFromParent(e){const t=e.getJsDocInfos();let r="",n="NA";return t.forEach((e=>{r=e.getKit(),n=e.getFileTagContent()})),{kitInfo:r,fileTagContent:n}}getJsDocInfos(){return this.jsDocInfos}getLastJsDocInfo(){const e=this.jsDocInfos.length;if(0!==e)return this.jsDocInfos[e-1]}getPenultimateJsDocInfo(){const e=this.jsDocInfos.length;if(0!==e)return this.jsDocInfos[e-2]}addJsDocInfos(e){e.length>0&&this.setCurrentVersion(e[e.length-1]?.getSince()),this.jsDocInfos.push(...e)}addJsDocInfo(e){this.setCurrentVersion(e.getSince()),this.jsDocInfos.push(e)}}t.ApiInfo=p;t.ClassInfo=class extends p{constructor(){super(...arguments),this.parentClasses=[],this.childApis=[]}setParentClasses(e){this.parentClasses.push(e)}getParentClasses(){return this.parentClasses}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.InterfaceInfo=class extends p{constructor(){super(...arguments),this.parentClasses=[],this.childApis=[]}setParentClasses(e){this.parentClasses.push(e)}getParentClasses(){return this.parentClasses}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.NamespaceInfo=class extends p{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.StructInfo=class extends p{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.ModuleInfo=class extends p{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.EnumInfo=class extends p{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.PropertyInfo=class extends p{constructor(e="",t,r){super(e,t,r),this.type=[],this.isReadOnly=!1,this.isRequired=!1,this.isStatic=!1,this.typeKind=i.default.SyntaxKind.Unknown,this.typeLocations=[],this.objLocations=[];let n=t;this.setTypeKind(n.type?n.type.kind:i.default.SyntaxKind.Unknown)}addType(e){this.type.push(...e)}getType(){return this.type}setIsReadOnly(e){this.isReadOnly=e}getIsReadOnly(){return this.isReadOnly}setIsRequired(e){this.isRequired=e}getIsRequired(){return this.isRequired}setIsStatic(e){this.isStatic=e}getIsStatic(){return this.isStatic}setTypeKind(e){this.typeKind=e||i.default.SyntaxKind.Unknown}getTypeKind(){return this.typeKind}addTypeLocations(e){this.typeLocations.push(e)}getTypeLocations(){return this.typeLocations}addObjLocations(e){this.objLocations.push(e)}getObjLocations(){return this.objLocations}};t.ConstantInfo=class extends p{constructor(){super(...arguments),this.value=""}setValue(e){this.value=e}getValue(){return this.value}};t.TypeAliasInfo=class extends p{constructor(){super(...arguments),this.type=[],this.typeName="",this.returnType="",this.paramInfos=[],this.typeIsFunction=!1,this.typeLiteralApiInfos=[],this.typeIsObject=!1}addType(e){this.type.push(...e)}getType(){return this.type}setTypeName(e){return this.typeName=e,this}getTypeName(){return this.typeName}setReturnType(e){return this.returnType=e,this}getReturnType(){return this.returnType}setParamInfos(e){return this.paramInfos.push(e),this}getParamInfos(){return this.paramInfos}setTypeIsFunction(e){return this.typeIsFunction=e,this}getTypeIsFunction(){return this.typeIsFunction}setTypeLiteralApiInfos(e){return this.typeLiteralApiInfos.push(e),this}getTypeLiteralApiInfos(){return this.typeLiteralApiInfos}setTypeIsObject(e){return this.typeIsObject=e,this}getTypeIsObject(){return this.typeIsObject}};t.TypeParamInfo=class{constructor(){this.paramName="",this.paramType=""}setParamName(e){return this.paramName=e,this}getParamName(){return this.paramName}setParamType(e){return e?(this.paramType=e,this):this}getParamType(){return this.paramType}};t.EnumValueInfo=class extends p{constructor(){super(...arguments),this.value=""}setValue(e){this.value=e}getValue(){return this.value}};t.MethodInfo=class extends p{constructor(){super(...arguments),this.callForm="",this.params=[],this.returnValue=[],this.isStatic=!1,this.sync="",this.returnValueType=i.default.SyntaxKind.Unknown,this.typeLocations=[],this.objLocations=[],this.isRequired=!1}setCallForm(e){this.callForm=e}getCallForm(){return this.callForm}addParam(e){this.params.push(e)}getParams(){return this.params}setReturnValue(e){this.returnValue.push(...e)}getReturnValue(){return this.returnValue}setReturnValueType(e){this.returnValueType=e}getReturnValueType(){return this.returnValueType}setIsStatic(e){this.isStatic=e}getIsStatic(){return this.isStatic}addTypeLocations(e){this.typeLocations.push(e)}getTypeLocations(){return this.typeLocations}addObjLocations(e){this.objLocations.push(e)}getObjLocations(){return this.objLocations}setSync(e){this.sync=e}getSync(){return this.sync}setIsRequired(e){this.isRequired=e}getIsRequired(){return this.isRequired}};class f extends s.Comment.JsDocInfo{constructor(){super(...arguments),this.typeName=""}getTypeName(){return this.typeName}setTypeName(e){this.typeName=e}}t.TypeLocationInfo=f;t.ParamInfo=class{constructor(e){this.apiType="",this.apiName="",this.paramType=i.default.SyntaxKind.Unknown,this.type=[],this.isRequired=!1,this.definedText="",this.typeLocations=[],this.objLocations=[],this.typeIsObject=!1,this.apiType=e}getApiType(){return this.apiType}setApiName(e){this.apiName=e}getApiName(){return this.apiName}setType(e){this.type.push(...e)}getParamType(){return this.paramType}setParamType(e){this.paramType=e||i.default.SyntaxKind.Unknown}getType(){return this.type}setIsRequired(e){this.isRequired=e}getIsRequired(){return this.isRequired}setDefinedText(e){this.definedText=e}getDefinedText(){return this.definedText}addTypeLocations(e){this.typeLocations.push(e)}getTypeLocations(){return this.typeLocations}addObjLocations(e){this.objLocations.push(e)}getObjLocations(){return this.objLocations}setMethodApiInfo(e){this.methodApiInfo=e}getMethodApiInfo(){return this.methodApiInfo}};t.GenericInfo=class{constructor(){this.isGenericity=!1,this.genericContent=""}setIsGenericity(e){this.isGenericity=e}getIsGenericity(){return this.isGenericity}setGenericContent(e){this.genericContent=e}getGenericContent(){return this.genericContent}};t.ParentClass=class{constructor(){this.extendClass="",this.implementClass=""}setExtendClass(e){this.extendClass=e}getExtendClass(){return this.extendClass}setImplementClass(e){this.implementClass=e}getImplementClass(){return this.implementClass}};t.ParserParam=class{constructor(){this.fileDir="",this.filePath="",this.libPath="",this.sdkPath="",this.rootNames=[],this.tsProgram=i.default.createProgram({rootNames:[],options:{}}),this.compilerHost=i.default.createCompilerHost({})}getFileDir(){return this.fileDir}setFileDir(e){this.fileDir=e}getFilePath(){return this.filePath}setFilePath(e){this.filePath=e}getLibPath(){return this.libPath}setLibPath(e){this.libPath=e}getSdkPath(){return this.sdkPath}setSdkPath(e){this.sdkPath=e}getRootNames(){return this.rootNames}setRootNames(e){this.rootNames=e}getTsProgram(){return this.tsProgram}getETSOptions(e){const t=r(739).compilerOptions.ets;return t.libs=[...e],t}setProgram(){const e=a.FileUtils.readFilesInDir(this.sdkPath,(e=>e.endsWith(o.StringConstant.DTS_EXTENSION)||e.endsWith(o.StringConstant.DETS_EXTENSION))),t=a.FileUtils.readFilesInDir(this.libPath,(e=>e.endsWith(o.StringConstant.DTS_EXTENSION)||e.endsWith(o.StringConstant.DETS_EXTENSION))),r={target:i.default.ScriptTarget.ES2017,ets:this.getETSOptions([]),allowJs:!1,lib:[...e,...t],module:i.default.ModuleKind.CommonJS,baseUrl:"./",paths:{"@/*":["./*"]}};this.compilerHost=i.default.createCompilerHost(r),this.compilerHost.resolveModuleNames=(e,t,r,n,a)=>e.map((e=>{if("true"===process.env.IS_OH)return i.default.resolveModuleName(e,t,a,this.compilerHost).resolvedModule;const r={resolvedFileName:"",isExternalLibraryImport:!1},n={"^(@ohos\\.inner\\.)(.*)$":"../../../base/ets/api/","^(@ohos\\.)(.*)$":"../../../base/ets/api/"};for(const t in n){const r=new RegExp(t);if(r.test(e)){e=e.replace(r,((e,r,i)=>{let a="";switch(r){case"@ohos.":a=n[t]+r+i;break;case"@ohos.inner.":a=n[t]+i.replace(/\./g,"/");break;default:a=""}return a}));break}}const o=i.default.resolveModuleName(e,t,a,this.compilerHost).resolvedModule?.resolvedFileName;return o?(r.resolvedFileName=o,r.isExternalLibraryImport=!0,r):void 0})),this.tsProgram=i.default.createProgram({rootNames:[...this.rootNames],options:r,host:this.compilerHost})}},t.containerApiTypes=new Set([u.NAMESPACE,u.CLASS,u.INTERFACE,u.ENUM,u.MODULE,u.STRUCT]),t.notJsDocApiTypes=new Set([u.SOURCE_FILE,u.IMPORT,u.EXPORT,u.EXPORT_DEFAULT,u.MODULE,u.REFERENCE_FILE])},37583:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Comment=void 0,function(e){let t;!function(e){e.SYSCAP="syscap",e.SINCE="since",e.FORM="form",e.CROSS_PLAT_FORM="crossplatform",e.SYSTEM_API="systemapi",e.STAGE_MODEL_ONLY="stagemodelonly",e.FA_MODEL_ONLY="famodelonly",e.DEPRECATED="deprecated",e.USEINSTEAD="useinstead",e.TYPE="type",e.CONSTANT="constant",e.PERMISSION="permission",e.THROWS="throws",e.ATOMIC_SERVICE="atomicservice",e.KIT="kit",e.FILE="file",e.PARAM="param",e.RETURNS="returns"}(t=e.JsDocTag||(e.JsDocTag={}));e.JsDocInfo=class{constructor(){this.description="",this.syscap="",this.since="-1",this.isForm=!1,this.isCrossPlatForm=!1,this.isSystemApi=!1,this.modelLimitation="",this.deprecatedVersion="-1",this.useinstead="",this.permissions="",this.errorCodes=[],this.typeInfo="",this.isConstant=!1,this.isAtomicService=!1,this.kit="",this.fileTagContent="NA",this.tags=void 0}setDescription(e){return this.description=e,this}getDescription(){return this.description}setSyscap(e){return e&&(this.syscap=e),this}getSyscap(){return this.syscap}setSince(e){return this.since=e,this}getSince(){return this.since}setIsForm(e){return this.isForm=e,this}getIsForm(){return this.isForm}setIsCrossPlatForm(e){return this.isCrossPlatForm=e,this}getIsCrossPlatForm(){return this.isCrossPlatForm}setIsSystemApi(e){return this.isSystemApi=e,this}getIsSystemApi(){return this.isSystemApi}setIsAtomicService(e){return this.isAtomicService=e,this}getIsAtomicService(){return this.isAtomicService}setModelLimitation(e){return this.modelLimitation=e,this}getModelLimitation(){return this.modelLimitation}setDeprecatedVersion(e){return this.deprecatedVersion=e,this}getDeprecatedVersion(){return this.deprecatedVersion}setUseinstead(e){return this.useinstead=e,this}getUseinstead(){return this.useinstead}setPermission(e){return this.permissions=e,this}getPermission(){return this.permissions}addErrorCode(e){return this.errorCodes.push(e),this}getErrorCode(){return this.errorCodes}setTypeInfo(e){return this.typeInfo=e,this}getTypeInfo(){return this.typeInfo}setIsConstant(e){return this.isConstant=e,this}getIsConstant(){return this.isConstant}setKit(e){return this.kit=e,this}getKit(){return this.kit}setFileTagContent(e){return this.fileTagContent=e,this}getFileTagContent(){return this.fileTagContent}setTags(e){return this.tags=e,this}removeTags(){return this.tags=void 0,this}addTag(e){return this.tags||(this.tags=[]),this.tags.push(e),this}getTags(){return this.tags}}}(t.Comment||(t.Comment={}))},28879:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.DecoratorInfo=void 0;const i=n(r(58843));t.DecoratorInfo=class{constructor(e){this.expression="",this.expressionArguments=void 0;const t=e.expression;if(i.default.isCallExpression(t)){this.setExpression(t.expression.getText());t.arguments.forEach((e=>{this.addExpressionArguments([e.getText()])}))}i.default.isIdentifier(t)&&this.setExpression(t.getText())}setExpression(e){return this.expression=e,this}getExpression(){return this.expression}setExpressionArguments(e){return this.expressionArguments=e,this}addExpressionArguments(e){return this.expressionArguments||(this.expressionArguments=[]),this.expressionArguments.push(...e),this}getExpressionArguments(){return this.expressionArguments}}},68020:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ImportInfo=t.ExportDefaultInfo=t.ClassInterfaceInfo=t.NamespaceEnumInfo=t.ParamInfo=t.MethodInfo=t.TypeAliasInfo=t.EnumValueInfo=t.UnionTypeInfo=t.ConstantInfo=t.PropertyInfo=t.DeclareConstInfo=t.ApiInfo=t.BasicApiInfo=void 0;const n=r(8136);class i{constructor(e){this.apiType="",this.apiType=e}}t.BasicApiInfo=i;class a extends i{constructor(e,t){super(e),this.name="",this.syscap="",this.since="-1",this.isForm=!1,this.isCrossPlatForm=!1,this.isSystemApi=!1,this.isStageModelOnly=!1,this.isFaModelOnly=!1,this.deprecatedVersion="-1",this.useinstead="",this.setJsDocInfo(t)}setJsDocInfo(e){return this.syscap=e.getSyscap(),this.since=e.getSince(),this.isForm=e.getIsForm(),this.isCrossPlatForm=e.getIsCrossPlatForm(),this.isSystemApi=e.getIsSystemApi(),this.isStageModelOnly=e.getModelLimitation().toLowerCase()===n.StringConstant.STAGE_MODEL_ONLY,this.isFaModelOnly=e.getModelLimitation().toLowerCase()===n.StringConstant.FA_MODEL_ONLY,this.deprecatedVersion=e.getDeprecatedVersion(),this.useinstead=e.getUseinstead(),this}getSince(){return this.since}setName(e){return e?(this.name=e,this):this}}t.ApiInfo=a;t.DeclareConstInfo=class extends a{constructor(){super(...arguments),this.type=""}setType(e){return this.type=e,this}};t.PropertyInfo=class extends a{constructor(e,t){super(e,t),this.type="",this.isReadOnly=!1,this.isRequired=!1,this.isStatic=!1,this.permission="",this.setPermission(t.getPermission())}setType(e){return this.type=e,this}setIsReadOnly(e){return this.isReadOnly=e,this}setIsRequired(e){return this.isRequired=e,this}setIsStatic(e){return this.isStatic=e,this}setPermission(e){return this.permission=e,this}};t.ConstantInfo=class extends a{constructor(){super(...arguments),this.type="",this.value=""}setType(e){return this.type=e,this}setValue(e){return this.value=e,this}};t.UnionTypeInfo=class extends a{constructor(){super(...arguments),this.valueRange=[]}addValueRange(e){return this.valueRange.push(e),this}addValueRanges(e){return this.valueRange.push(...e),this}};t.EnumValueInfo=class extends a{constructor(){super(...arguments),this.value=""}setValue(e){return this.value=e,this}};t.TypeAliasInfo=class extends a{constructor(){super(...arguments),this.type=""}setType(e){return this.type=e,this}};t.MethodInfo=class extends a{constructor(e,t){super(e,t),this.callForm="",this.params=[],this.returnValue="",this.isStatic=!1,this.permission="",this.errorCodes=[],this.setPermission(t.getPermission()),this.setErrorCodes(t.getErrorCode())}setCallForm(e){return this.callForm=e,this}addParam(e){return this.params.push(e),this}setReturnValue(e){return this.returnValue=e,this}setIsStatic(e){return this.isStatic=e,this}setPermission(e){return this.permission=e,this}setErrorCodes(e){return this.errorCodes.push(...e),this}};t.ParamInfo=class extends a{constructor(){super(...arguments),this.type="",this.isRequired=!1}setType(e){e&&(this.type=e)}setIsRequired(e){this.isRequired=e}};class o extends a{constructor(){super(...arguments),this.childApis=[]}addChildApi(e){return this.childApis.push(...e),this}}t.NamespaceEnumInfo=o;t.ClassInterfaceInfo=class extends o{constructor(){super(...arguments),this.parentClasses=[]}setParentClasses(e){return this.parentClasses.push(...e),this}};class s extends i{constructor(){super(...arguments),this.name=""}createObject(){return new s(this.apiType)}setName(e){return this.name=e,this}}t.ExportDefaultInfo=s;t.ImportInfo=class extends i{constructor(){super(...arguments),this.importValues=[]}addImportValue(e,t){return this.importValues.push({key:e,value:t||e}),this}}},16137:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.mergeDefinedTextType=t.notMergeDefinedText=t.apiNotStatisticsType=t.apiStatisticsType=t.ApiStatisticsInfo=void 0;const i=n(r(58843)),a=r(44791),o=r(80879);t.ApiStatisticsInfo=class{constructor(){this.filePath="",this.packageName="",this.parentModuleName="global",this.syscap="",this.permissions="",this.since="",this.isForm=!1,this.isCrossPlatForm=!1,this.isAutomicService=!1,this.hierarchicalRelations="",this.apiName="",this.deprecatedVersion="",this.useInstead="",this.apiType="",this.definedText="",this.pos={line:-1,character:-1},this.isSystemapi=!1,this.modelLimitation="",this.decorators=[],this.errorCodes=[],this.kitInfo="",this.absolutePath="",this.parentApiType="",this.isOptional=!1}setFilePath(e){return this.filePath=e,this.packageName=o.FunctionUtils.getPackageName(e),this}getPackageName(){return this.packageName}getFilePath(){return this.filePath}setApiType(e){return this.apiType=e===a.ApiType.DECLARE_CONST?a.ApiType.PROPERTY:e,this}getParentModuleName(){return this.parentModuleName}setParentModuleName(e){return this.parentModuleName=e,this}setSyscap(e){return e&&(this.syscap=e),this}getSyscap(){return this.syscap}setPermission(e){return this.permissions=e,this}getPermission(){return this.permissions}setSince(e){return this.since=e,this}getSince(){return this.since}setIsForm(e){return this.isForm=e,this}getIsForm(){return this.isForm}setIsCrossPlatForm(e){return this.isCrossPlatForm=e,this}getIsCrossPlatForm(){return this.isCrossPlatForm}setIsAutomicService(e){return this.isAutomicService=e,this}getIsAutomicService(){return this.isAutomicService}getApiType(){return this.apiType}setDefinedText(e){return this.definedText=e,this}getDefinedText(){return this.definedText}setPos(e){return this.pos=e,this}getPos(){return this.pos}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setDeprecatedVersion(e){return this.deprecatedVersion=e,this}getDeprecatedVersion(){return this.deprecatedVersion}setUseInstead(e){return this.useInstead=e,this}getUseInstead(){return this.useInstead}setApiLevel(e){return this.isSystemapi=e,this}getApiLevel(){return this.isSystemapi}setModelLimitation(e){return this.modelLimitation=e,this}getModelLimitation(){return this.modelLimitation}setDecorators(e){return e?.forEach((e=>{this.decorators?.push(e.expression)})),this}getDecorators(){return this.decorators}setErrorCodes(e){return this.errorCodes=e,this}getErrorCodes(){return this.errorCodes}setKitInfo(e){return this.kitInfo=e,this}getKitInfo(){return this.kitInfo}setAbsolutePath(e){return this.absolutePath=e,this}getAbsolutePath(){return this.absolutePath}setParentApiType(e){return this.parentApiType=e,this}getParentApiType(){return this.parentApiType}setIsOptional(e){return this.isOptional=e,this}getIsOptional(){return this.isOptional}},t.apiStatisticsType=new Set([a.ApiType.PROPERTY,a.ApiType.CLASS,a.ApiType.INTERFACE,a.ApiType.NAMESPACE,a.ApiType.METHOD,a.ApiType.CONSTANT,a.ApiType.ENUM_VALUE,a.ApiType.ENUM,a.ApiType.TYPE_ALIAS,a.ApiType.DECLARE_CONST,a.ApiType.STRUCT]),t.apiNotStatisticsType=new Set([a.ApiType.ENUM,a.ApiType.NAMESPACE]),t.notMergeDefinedText=new Set(["on","off"]),t.mergeDefinedTextType=new Set([i.default.SyntaxKind.MethodDeclaration,i.default.SyntaxKind.MethodSignature,i.default.SyntaxKind.FunctionDeclaration])},8136:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EventConstant=t.PunctuationMark=t.NumberConstant=t.StringConstant=void 0,function(e){e.ASYNC_CALLBACK_METHOD_KEY="AsyncCallback",e.ASYNC_CALLBACK_METHOD_KEY_CHANGE="AsyncCallback",e.CHECK_API_VERSION="11",e.CONST_KEY_WORD="const",e.CONSTRUCTOR_API_NAME="constructor",e.EXPORT_DEFAULT="export_default",e.EXPORT="export",e.DTS_EXTENSION=".d.ts",e.DETS_EXTENSION=".d.ets",e.ETS_EXTENSION=".ets",e.FA_MODEL_ONLY="famodelonly",e.PROMISE_METHOD_KEY="Promise",e.PROMISE_METHOD_KEY_CHANGE="Promise",e.REFERENCE="_reference",e.TS_EXTENSION=".ts",e.SELF="_self",e.STAGE_MODEL_ONLY="stagemodelonly",e.UTF8="utf-8",e.NOT_SCAN_DIR="build-tools"}(t.StringConstant||(t.StringConstant={})),function(e){e[e.INDENT_SPACE=2]="INDENT_SPACE",e[e.RELATION_LENGTH=2]="RELATION_LENGTH",e.DEFAULT_DEPRECATED_VERSION="-1",e[e.IS_FIELD_EXIST=0]="IS_FIELD_EXIST",e[e.BINARY_SYSTEM=2]="BINARY_SYSTEM",e[e.LINE_IN_EXCEL=2]="LINE_IN_EXCEL",e[e.SYSCAP_KEY_FIELD_INDEX=2]="SYSCAP_KEY_FIELD_INDEX",e[e.DELETE_CURRENT_JS_DOC=-2]="DELETE_CURRENT_JS_DOC"}(t.NumberConstant||(t.NumberConstant={})),function(e){e.QUERY="?",e.LEFT_BRACKET="[",e.RIGHT_BRACKET="]",e.LEFT_BRACE="{",e.RIGHT_BRACE="}",e.LEFT_PARENTHESES="(",e.RIGHT_PARENTHESES=")"}(t.PunctuationMark||(t.PunctuationMark={}));class r{}t.EventConstant=r,r.eventNameList=["on","off","emit","once"],r.eventMethodCheckVersion=10,r.eventFirstParamName="type"},27944:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EnumUtils=void 0;t.EnumUtils=class{static enum2arr(e){let t=Array.isArray(e)?e:Object.values(e);return t.some((e=>"number"==typeof e))&&(t=t.filter((e=>"number"==typeof e))),t}}},40745:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FileUtils=void 0;const i=n(r(79896)),a=n(r(16928)),o=n(r(59620)),s=r(4e3),c=r(8136);process.env.DIR_NAME||Object.assign(process.env,o.default);class l{static getBaseDirName(){return this.baseDirName}static readFilesInDir(e,t){const r=[];return i.default.existsSync(e)?(i.default.readdirSync(e,{withFileTypes:!0}).forEach((n=>{if(n.name===c.StringConstant.NOT_SCAN_DIR)return;const i=a.default.join(e,n.name);if(n.isFile())return t?void(t(n.name)&&r.push(i)):void r.push(i);r.push(...l.readFilesInDir(i,t))})),r):r}static writeStringToFile(e,t){const r=a.default.dirname(t);l.isExists(r)||i.default.mkdirSync(r,{recursive:!0}),i.default.writeFileSync(t,e)}static isDirectory(e){return i.default.lstatSync(e).isDirectory()}static isFile(e){return i.default.lstatSync(e).isFile()}static isExists(e){if(!e)return!1;try{return i.default.accessSync(a.default.resolve(this.baseDirName,e),i.default.constants.R_OK),!0}catch(e){const t=e;return s.LogUtil.e("error filePath",t.stack?t.stack:t.message),!1}}}t.FileUtils=l,l.baseDirName=String(process.env.DIR_NAME)},80879:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FunctionUtils=void 0;const i=n(r(16928)),a=r(8136),o=r(63598),s=r(80417);t.FunctionUtils=class{static getPackageName(e){return e.indexOf("component\\ets\\")>=0||e.indexOf("component/ets/")>=0?"ArkUI":i.default.basename(e).replace(/@|.d.ts$/g,"")}static handleSyscap(e){const t=e.split(".");let r="";switch(t[1]){case"MiscServices":r=t[a.NumberConstant.SYSCAP_KEY_FIELD_INDEX];break;case"Communication":if(c.has(t[a.NumberConstant.SYSCAP_KEY_FIELD_INDEX])){r=t[a.NumberConstant.SYSCAP_KEY_FIELD_INDEX];break}r=t[1];break;default:r=t[1]}return r}static readSubsystemFile(){const e=new Map,t=new Map;return s.fileContent.forEach((r=>{e.set(r.syscap,r.subsystem),t.set(r.syscap,r.fileName)})),{subsystemMap:e,fileNameMap:t}}static readKitFile(){const e=new Map,t=new Map,r=new Set;return o.kitData.forEach((n=>{e.set(n.filePath,n.subSystem),t.set(n.filePath,n.kitName),r.add(n.filePath)})),{subsystemMap:e,kitNameMap:t,filePathSet:r}}};const c=new Set(["Bluetooth","NetManager"])},87960:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringUtils=void 0;const n=r(4e3);t.StringUtils=class{static hasSubstring(e,t){let r=!1;try{r=-1!==e.search(t)}catch(e){n.LogUtil.e("StringUtils.hasSubstring",e)}return r}static transformBooleanToTag(e,t){return"true"===e.toString()?t:"NA"}}},93333:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.throwsTagDescriptionArr=t.punctuationMarkSet=t.cleanApiCheckResult=t.apiCheckResult=t.compositiveLocalResult=t.cleanCompositiveResult=t.compositiveResult=t.apiLegalityCheckTypeMap=t.permissionOptionalTags=t.conditionalOptionalTags=t.optionalTags=t.followTagArr=t.inheritTagArr=t.officialTagArr=t.tagsArrayOfOrder=t.CommonFunctions=t.ObtainFullPath=t.GenerateFile=t.CompolerOptions=t.PosOfNode=void 0;const i=n(r(16928)),a=n(r(79896)),o=r(6752),s=n(r(58843)),c=r(77002),l=r(40745),u=r(98768),d=r(8136),p=r(2543);t.PosOfNode=class{static getPosOfNode(e,t){const r=s.default.getLineAndCharacterOfPosition(e.getSourceFile(),t.start);return t.file?.fileName+`(line: ${r.line+1}, col: ${r.character+1})`}};t.CompolerOptions=class{static getCompolerOptions(){const e=s.default.readConfigFile(i.default.resolve(l.FileUtils.getBaseDirName(),"./tsconfig.json"),s.default.sys.readFile).config.compilerOptions;return Object.assign(e,{target:"es2020",jsx:"preserve",incremental:void 0,declaration:void 0,declarationMap:void 0,emitDeclarationOnly:void 0,outFile:void 0,composite:void 0,tsBuildInfoFile:void 0,noEmit:void 0,isolatedModules:!0,paths:void 0,rootDirs:void 0,types:void 0,out:void 0,noLib:void 0,noResolve:!0,noEmitOnError:void 0,declarationDir:void 0,suppressOutputPathCheck:!0,allowNonTsExtensions:!0}),e}};t.GenerateFile=class{static writeFile(e,t,r){a.default.writeFile(i.default.resolve(t),JSON.stringify(e,null,2),r,(e=>{e?console.error(`ERROR FOR CREATE FILE:${e}`):console.log("API CHECK FINISH!")}))}static async writeExcelFile(e){const t=new o.Workbook,r=t.addWorksheet("Js Api",{views:[{xSplit:1}]});r.getRow(1).values=["order","analyzerName","buggyFilePath","codeContextStaerLine","defectLevel","defectType","description","language","mainBuggyCode","apiName","apiType","hierarchicalRelations","parentModuleName"];for(let t=1;t<=e.length;t++){const n=e[t-1];r.getRow(t+1).values=[t,n.analyzerName,n.getFilePath(),n.getLocation(),n.getLevel(),n.getType(),n.getMessage(),n.language,n.getMainBuggyCode(),n.getExtendInfo().getApiName(),n.getExtendInfo().getApiType(),n.getExtendInfo().getHierarchicalRelations(),n.getExtendInfo().getParentModuleName()]}t.xlsx.writeBuffer().then((e=>{a.default.writeFile(i.default.resolve(l.FileUtils.getBaseDirName(),"./Js_Api.xlsx"),e,(function(e){e&&console.error(e)}))}))}};class f{static getFullFiles(e,t){try{a.default.readdirSync(e).forEach((r=>{const n=i.default.join(e,r);a.default.statSync(n).isDirectory()?f.getFullFiles(n,t):(/\.d\.ts/.test(n)||/\.d\.ets/.test(n)||/\.ts/.test(n))&&t.push(n)}))}catch(e){console.error("ETS ERROR: "+e)}}}t.ObtainFullPath=f;class m{static getSinceVersion(e){return-1!==e.indexOf(d.PunctuationMark.LEFT_PARENTHESES)?e.substring(e.indexOf(d.PunctuationMark.LEFT_PARENTHESES)+1,e.indexOf(d.PunctuationMark.RIGHT_PARENTHESES)):e}static isOfficialTag(e){return-1===t.tagsArrayOfOrder.indexOf(e)}static createErrorInfo(e,t){return t.forEach((t=>{e=e.replace("$$",t)})),e}static getCheckApiVersion(){let e="-1";try{e=JSON.stringify(u.ApiCheckVersion)}catch(e){throw`Failed to read package.json or parse JSON content: ${e}`}if(!e)throw"Please configure the correct API version to be verified";return e}static judgeSpecialCase(e){let t=[];return e===s.default.SyntaxKind.TypeLiteral?t=["object"]:e===s.default.SyntaxKind.FunctionType&&(t=["function"]),t}static getExtendsApiValue(e){let t="";const r=[],n=e.getParentClasses();return 0===n.length||(n.forEach((e=>{0!==e.getExtendClass().length&&r.push(e.getExtendClass())})),t=r.join(",")),t}static getImplementsApiValue(e){let t="";const r=e.getParentClasses();return 0===r.length||r.forEach((e=>{0!==e.getImplementClass().length&&(t=e.getImplementClass())})),t}static getErrorInfo(e,t,r,n){let i=new c.ApiCheckInfo;if(void 0===e)return i;const a=void 0===t?-1:p.toNumber(t.since);return i.setErrorID(n.errorID).setErrorLevel(n.errorLevel).setFilePath(r).setApiPostion(e.getPos()).setErrorType(n.errorType).setLogType(n.logType).setSinceNumber(a).setApiName(e.getApiName()).setApiType(e.getApiType()).setApiText(e.getDefinedText()).setErrorInfo(n.errorInfo).setHierarchicalRelations(e.getHierarchicalRelations().join("|")).setParentModuleName(e.getParentApi()?.getApiName()),i}static getMdFiles(e){const t=[];return a.default.readFileSync(e,"utf-8").split(/[(\r\n)\r\n]+/).forEach((e=>{const r=new Set;m.splitPath(e,r),r.has("build-tools")||t.push(e)})),t}static splitPath(e,t){let r=i.default.parse(e);""!==r.base&&(t.add(r.base),m.splitPath(r.dir,t))}static isAscending(e){for(let t=1;t<e.length;t++)if(e[t]<e[t-1])return!1;return!0}}t.CommonFunctions=m,t.tagsArrayOfOrder=["namespace","struct","typedef","interface","extends","implements","permission","enum","constant","type","param","default","returns","readonly","throws","static","fires","syscap","systemapi","famodelonly","FAModelOnly","stagemodelonly","StageModelOnly","crossplatform","form","atomicservice","since","deprecated","useinstead","test","example"],t.officialTagArr=["abstract","access","alias","async","augments","author","borrows","class","classdesc","constructs","copyright","event","exports","external","file","function","generator","global","hideconstructor","ignore","inheritdoc","inner","instance","lends","license","listens","member","memberof","mixes","mixin","modifies","module","package","private","property","protected","public","requires","see","summary","this","todo","tutorial","variation","version","yields","also","description","kind","name","undocumented"],t.inheritTagArr=["test","famodelonly","FAModelOnly","stagemodelonly","StageModelOnly","deprecated","systemapi"],t.followTagArr=["atomicservice","form"],t.optionalTags=["static","fires","systemapi","famodelonly","FAModelOnly","stagemodelonly","StageModelOnly","crossplatform","deprecated","test","form","example","atomicservice"],t.conditionalOptionalTags=["default","permission","throws"],t.permissionOptionalTags=[s.default.SyntaxKind.FunctionDeclaration,s.default.SyntaxKind.MethodSignature,s.default.SyntaxKind.MethodDeclaration,s.default.SyntaxKind.CallSignature,s.default.SyntaxKind.Constructor,s.default.SyntaxKind.PropertyDeclaration,s.default.SyntaxKind.PropertySignature,s.default.SyntaxKind.VariableStatement],t.apiLegalityCheckTypeMap=new Map([[s.default.SyntaxKind.CallSignature,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.ClassDeclaration,["extends","implements","syscap","since"]],[s.default.SyntaxKind.Constructor,["param","syscap","permission","throws","syscap","since"]],[s.default.SyntaxKind.EnumDeclaration,["enum","syscap","since"]],[s.default.SyntaxKind.FunctionDeclaration,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.InterfaceDeclaration,["typedef","extends","syscap","since"]],[s.default.SyntaxKind.MethodDeclaration,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.MethodSignature,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.ModuleDeclaration,["namespace","syscap","since"]],[s.default.SyntaxKind.PropertyDeclaration,["type","default","permission","throws","readonly","syscap","since"]],[s.default.SyntaxKind.PropertySignature,["type","default","permission","throws","readonly","syscap","since"]],[s.default.SyntaxKind.VariableStatement,["constant","default","permission","throws","syscap","since"]],[s.default.SyntaxKind.TypeAliasDeclaration,["syscap","since","typedef","param","returns","throws"]],[s.default.SyntaxKind.EnumMember,["syscap","since"]],[s.default.SyntaxKind.NamespaceExportDeclaration,["syscap","since"]],[s.default.SyntaxKind.TypeLiteral,["syscap","since"]],[s.default.SyntaxKind.LabeledStatement,["syscap","since"]],[s.default.SyntaxKind.StructDeclaration,["struct","syscap","since"]]]),t.compositiveResult=[],t.cleanCompositiveResult=function(){t.compositiveResult=[]},t.compositiveLocalResult=[],t.apiCheckResult=[],t.cleanApiCheckResult=function(){t.apiCheckResult=[]},t.punctuationMarkSet=new Set(["\\{","\\}","\\(","\\)","\\[","\\]","\\@","\\.","\\:","\\,","\\;","\\(","\\)",'\\"',"\\/","\\_","\\-","\\=","\\?","\\<","\\>","\\,","\\!","\\#",":",",","\\:","\\|","\\%","\\&","\\¡","\\¢","\\+","\\`","\\\\","\\'"]),t.throwsTagDescriptionArr=["Parameter error. Possible causes:","Mandatory parameters are left unspecified","Incorrect parameter types","Parameter verification failed"]},4e3:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.LogUtil=t.LogLevelUtil=t.LogLevel=void 0,function(e){e[e.DEBUG=0]="DEBUG",e[e.INFO=1]="INFO",e[e.WARN=2]="WARN",e[e.ERR=3]="ERR"}(r=t.LogLevel||(t.LogLevel={}));t.LogLevelUtil=class{static get(e){for(let t=r.DEBUG;t<=r.ERR;t++)if(e===r[t])return t;return r.ERR}};class n{static e(e,t){n.logLevel<=r.ERR&&console.error(`${e}: ${t}`)}static w(e,t){n.logLevel<=r.WARN&&console.warn(`${e}: ${t}`)}static i(e,t){n.logLevel<=r.INFO&&console.info(`${e}: ${t}`)}static d(e,t){n.logLevel<=r.DEBUG&&console.debug(`${e}: ${t}`)}}t.LogUtil=n,n.logLevel=r.ERR},58843:function(e,t,r){"use strict"; -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. All rights reserved. -Licensed under the Apache License, Version 2.0 (the "License"); you may not use -this file except in compliance with the License. You may obtain a copy of the -License at http://www.apache.org/licenses/LICENSE-2.0 - -THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED -WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, -MERCHANTABLITY OR NON-INFRINGEMENT. - -See the Apache Version 2.0 License for specific language governing permissions -and limitations under the License. -***************************************************************************** */var n,i=this&&this.__spreadArray||function(e,t){for(var r=0,n=t.length,i=e.length;r<n;r++,i++)e[i]=t[r];return e},a=this&&this.__assign||function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},a.apply(this,arguments)},o=this&&this.__makeTemplateObject||function(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e},s=this&&this.__generator||function(e,t){var r,n,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,n=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==a[0]&&2!==a[0])){o=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){o.label=a[1];break}if(6===a[0]&&o.label<i[1]){o.label=i[1],i=a;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(a);break}i[2]&&o.ops.pop(),o.trys.pop();continue}a=t.call(e,o)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,s])}}},c=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r},l=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});!function(e){function t(){var e={};return e.prev=e,{head:e,tail:e,size:0}}function r(e,t){return e===t||e!=e&&t!=t}function n(e){var t=e.prev;if(!t||t===e)throw new Error("Illegal state");return t}function i(e){for(;e;){var t=!e.prev;if(e=e.next,!t)return e}}function a(e,t){for(var i=e.tail;i!==e.head;i=n(i))if(r(i.key,t))return i}function o(e,t,r){var n=a(e,t);if(!n){var i=function(e,t){return{key:e,value:t,next:void 0,prev:void 0}}(t,r);return i.prev=e.tail,e.tail.next=i,e.tail=i,e.size++,i}n.value=r}function s(e,t){for(var i=e.tail;i!==e.head;i=n(i)){if(void 0===i.prev)throw new Error("Illegal state");if(r(i.key,t)){if(i.next)i.next.prev=i.prev;else{if(e.tail!==i)throw new Error("Illegal state");e.tail=i.prev}return i.prev.next=i.next,i.next=i.prev,i.prev=void 0,e.size--,i}}}function c(e){for(var t=e.tail;t!==e.head;){var r=n(t);t.next=e.head,t.prev=void 0,t=r}e.head.next=void 0,e.tail=e.head,e.size=0}function l(e,t){for(var r=e.head;r;)(r=i(r))&&t(r.value,r.key)}function u(e,t){if(e)for(var r=e.next();!r.done;r=e.next())t(r.value)}function d(e,t){return{current:e.head,selector:t}}function p(e){return e.current=i(e.current),e.current?{value:e.selector(e.current.key,e.current.value),done:!1}:{value:void 0,done:!0}}!function(e){e.createMapShim=function(e){var r=function(){function e(e,t){this._data=d(e,t)}return e.prototype.next=function(){return p(this._data)},e}();return function(){function n(r){var n=this;this._mapData=t(),u(e(r),(function(e){var t=e[0],r=e[1];return n.set(t,r)}))}return Object.defineProperty(n.prototype,"size",{get:function(){return this._mapData.size},enumerable:!1,configurable:!0}),n.prototype.get=function(e){var t;return null===(t=a(this._mapData,e))||void 0===t?void 0:t.value},n.prototype.set=function(e,t){return o(this._mapData,e,t),this},n.prototype.has=function(e){return!!a(this._mapData,e)},n.prototype.delete=function(e){return!!s(this._mapData,e)},n.prototype.clear=function(){c(this._mapData)},n.prototype.keys=function(){return new r(this._mapData,(function(e,t){return e}))},n.prototype.values=function(){return new r(this._mapData,(function(e,t){return t}))},n.prototype.entries=function(){return new r(this._mapData,(function(e,t){return[e,t]}))},n.prototype.forEach=function(e){l(this._mapData,e)},n}()},e.createSetShim=function(e){var r=function(){function e(e,t){this._data=d(e,t)}return e.prototype.next=function(){return p(this._data)},e}();return function(){function n(r){var n=this;this._mapData=t(),u(e(r),(function(e){return n.add(e)}))}return Object.defineProperty(n.prototype,"size",{get:function(){return this._mapData.size},enumerable:!1,configurable:!0}),n.prototype.add=function(e){return o(this._mapData,e,e),this},n.prototype.has=function(e){return!!a(this._mapData,e)},n.prototype.delete=function(e){return!!s(this._mapData,e)},n.prototype.clear=function(){c(this._mapData)},n.prototype.keys=function(){return new r(this._mapData,(function(e,t){return e}))},n.prototype.values=function(){return new r(this._mapData,(function(e,t){return t}))},n.prototype.entries=function(){return new r(this._mapData,(function(e,t){return[e,t]}))},n.prototype.forEach=function(e){l(this._mapData,e)},n}()}}(e.ShimCollections||(e.ShimCollections={}))}(d||(d={})),function(e){e.versionMajorMinor="4.2",e.version="4.2.3",function(e){e[e.LessThan=-1]="LessThan",e[e.EqualTo=0]="EqualTo",e[e.GreaterThan=1]="GreaterThan"}(e.Comparison||(e.Comparison={})),function(e){e.tryGetNativeMap=function(){return"undefined"!=typeof Map&&"entries"in Map.prototype&&1===new Map([[0,0]]).size?Map:void 0},e.tryGetNativeSet=function(){return"undefined"!=typeof Set&&"entries"in Set.prototype&&1===new Set([0]).size?Set:void 0}}(e.NativeCollections||(e.NativeCollections={}))}(d||(d={})),function(e){function t(t,n,i){var a,o=null!==(a=e.NativeCollections[n]())&&void 0!==a?a:null===e.ShimCollections||void 0===e.ShimCollections?void 0:e.ShimCollections[i](r);if(o)return o;throw new Error("TypeScript requires an environment that provides a compatible native "+t+" implementation.")}function r(t){if(t){if(C(t))return g(t);if(t instanceof e.Map)return t.entries();if(t instanceof e.Set)return t.values();throw new Error("Iteration not supported.")}}function n(e,t,r){if(void 0===r&&(r=O),e)for(var n=0,i=e;n<i.length;n++){if(r(i[n],t))return!0}return!1}function a(e,t){if(e){if(!t)return e.length>0;for(var r=0,n=e;r<n.length;r++){if(t(n[r]))return!0}}return!1}function o(e,t){return a(t)?a(e)?i(i([],e),t):t:e}function s(e,t){return t}function c(e){return e.map(s)}function l(e,t){return void 0===t?e:void 0===e?[t]:(e.push(t),e)}function u(e,t){return t<0?e.length+t:t}function d(e,t,r,n){if(void 0===t||0===t.length)return e;if(void 0===e)return t.slice(r,n);r=void 0===r?0:u(t,r),n=void 0===n?t.length:u(t,n);for(var i=r;i<n&&i<t.length;i++)void 0!==t[i]&&e.push(t[i]);return e}function p(e,t,r){return!n(e,t,r)&&(e.push(t),!0)}function f(e,t,r){t.sort((function(t,n){return r(e[t],e[n])||M(t,n)}))}function m(e,t){return 0===e.length?e:e.slice().sort(t)}function g(e){var t=0;return{next:function(){return t===e.length?{value:void 0,done:!0}:(t++,{value:e[t-1],done:!1})}}}function _(e,t,r,n,i){return h(e,r(t),r,n,i)}function h(e,t,r,n,i){if(!a(e))return-1;for(var o=i||0,s=e.length-1;o<=s;){var c=o+(s-o>>1);switch(n(r(e[c],c),t)){case-1:o=c+1;break;case 0:return c;case 1:s=c-1}}return~o}function y(e,t,r,n,i){if(e&&e.length>0){var a=e.length;if(a>0){var o=void 0===n||n<0?0:n,s=void 0===i||o+i>a-1?a-1:o+i,c=void 0;for(arguments.length<=2?(c=e[o],o++):c=r;o<=s;)c=t(c,e[o],o),o++;return c}}return r}e.Map=t("Map","tryGetNativeMap","createMapShim"),e.Set=t("Set","tryGetNativeSet","createSetShim"),e.getIterator=r,e.emptyArray=[],e.emptyMap=new e.Map,e.emptySet=new e.Set,e.createMap=function(){return new e.Map},e.createMapFromTemplate=function(t){var r=new e.Map;for(var n in t)v.call(t,n)&&r.set(n,t[n]);return r},e.length=function(e){return e?e.length:0},e.forEach=function(e,t){if(e)for(var r=0;r<e.length;r++){var n=t(e[r],r);if(n)return n}},e.forEachRight=function(e,t){if(e)for(var r=e.length-1;r>=0;r--){var n=t(e[r],r);if(n)return n}},e.firstDefined=function(e,t){if(void 0!==e)for(var r=0;r<e.length;r++){var n=t(e[r],r);if(void 0!==n)return n}},e.firstDefinedIterator=function(e,t){for(;;){var r=e.next();if(r.done)return;var n=t(r.value);if(void 0!==n)return n}},e.reduceLeftIterator=function(e,t,r){var n=r;if(e)for(var i=e.next(),a=0;!i.done;i=e.next(),a++)n=t(n,i.value,a);return n},e.zipWith=function(t,r,n){var i=[];e.Debug.assertEqual(t.length,r.length);for(var a=0;a<t.length;a++)i.push(n(t[a],r[a],a));return i},e.zipToIterator=function(t,r){e.Debug.assertEqual(t.length,r.length);var n=0;return{next:function(){return n===t.length?{value:void 0,done:!0}:(n++,{value:[t[n-1],r[n-1]],done:!1})}}},e.zipToMap=function(t,r){e.Debug.assert(t.length===r.length);for(var n=new e.Map,i=0;i<t.length;++i)n.set(t[i],r[i]);return n},e.intersperse=function(e,t){if(e.length<=1)return e;for(var r=[],n=0,i=e.length;n<i;n++)n&&r.push(t),r.push(e[n]);return r},e.every=function(e,t){if(e)for(var r=0;r<e.length;r++)if(!t(e[r],r))return!1;return!0},e.find=function(e,t){for(var r=0;r<e.length;r++){var n=e[r];if(t(n,r))return n}},e.findLast=function(e,t){for(var r=e.length-1;r>=0;r--){var n=e[r];if(t(n,r))return n}},e.findIndex=function(e,t,r){for(var n=r||0;n<e.length;n++)if(t(e[n],n))return n;return-1},e.findLastIndex=function(e,t,r){for(var n=void 0===r?e.length-1:r;n>=0;n--)if(t(e[n],n))return n;return-1},e.findMap=function(t,r){for(var n=0;n<t.length;n++){var i=r(t[n],n);if(i)return i}return e.Debug.fail()},e.contains=n,e.arraysEqual=function(e,t,r){return void 0===r&&(r=O),e.length===t.length&&e.every((function(e,n){return r(e,t[n])}))},e.indexOfAnyCharCode=function(e,t,r){for(var i=r||0;i<e.length;i++)if(n(t,e.charCodeAt(i)))return i;return-1},e.countWhere=function(e,t){var r=0;if(e)for(var n=0;n<e.length;n++){t(e[n],n)&&r++}return r},e.filter=function(e,t){if(e){for(var r=e.length,n=0;n<r&&t(e[n]);)n++;if(n<r){var i=e.slice(0,n);for(n++;n<r;){var a=e[n];t(a)&&i.push(a),n++}return i}}return e},e.filterMutate=function(e,t){for(var r=0,n=0;n<e.length;n++)t(e[n],n,e)&&(e[r]=e[n],r++);e.length=r},e.clear=function(e){e.length=0},e.map=function(e,t){var r;if(e){r=[];for(var n=0;n<e.length;n++)r.push(t(e[n],n))}return r},e.mapIterator=function(e,t){return{next:function(){var r=e.next();return r.done?r:{value:t(r.value),done:!1}}}},e.sameMap=function(e,t){if(e)for(var r=0;r<e.length;r++){var n=e[r],i=t(n,r);if(n!==i){var a=e.slice(0,r);for(a.push(i),r++;r<e.length;r++)a.push(t(e[r],r));return a}}return e},e.flatten=function(e){for(var t=[],r=0,n=e;r<n.length;r++){var i=n[r];i&&(C(i)?d(t,i):t.push(i))}return t},e.flatMap=function(t,r){var n;if(t)for(var i=0;i<t.length;i++){var a=r(t[i],i);a&&(n=C(a)?d(n,a):l(n,a))}return n||e.emptyArray},e.flatMapToMutable=function(e,t){var r=[];if(e)for(var n=0;n<e.length;n++){var i=t(e[n],n);i&&(C(i)?d(r,i):r.push(i))}return r},e.flatMapIterator=function(t,r){var n=t.next();if(n.done)return e.emptyIterator;var i=a(n.value);return{next:function(){for(;;){var e=i.next();if(!e.done)return e;var r=t.next();if(r.done)return r;i=a(r.value)}}};function a(t){var n=r(t);return void 0===n?e.emptyIterator:C(n)?g(n):n}},e.sameFlatMap=function(e,t){var r;if(e)for(var n=0;n<e.length;n++){var i=e[n],a=t(i,n);(r||i!==a||C(a))&&(r||(r=e.slice(0,n)),C(a)?d(r,a):r.push(a))}return r||e},e.mapAllOrFail=function(e,t){for(var r=[],n=0;n<e.length;n++){var i=t(e[n],n);if(void 0===i)return;r.push(i)}return r},e.mapDefined=function(e,t){var r=[];if(e)for(var n=0;n<e.length;n++){var i=t(e[n],n);void 0!==i&&r.push(i)}return r},e.mapDefinedIterator=function(e,t){return{next:function(){for(;;){var r=e.next();if(r.done)return r;var n=t(r.value);if(void 0!==n)return{value:n,done:!1}}}}},e.mapDefinedEntries=function(t,r){if(t){var n=new e.Map;return t.forEach((function(e,t){var i=r(t,e);if(void 0!==i){var a=i[0],o=i[1];void 0!==a&&void 0!==o&&n.set(a,o)}})),n}},e.mapDefinedValues=function(t,r){if(t){var n=new e.Set;return t.forEach((function(e){var t=r(e);void 0!==t&&n.add(t)})),n}},e.getOrUpdate=function(e,t,r){if(e.has(t))return e.get(t);var n=r();return e.set(t,n),n},e.tryAddToSet=function(e,t){return!e.has(t)&&(e.add(t),!0)},e.emptyIterator={next:function(){return{value:void 0,done:!0}}},e.singleIterator=function(e){var t=!1;return{next:function(){var r=t;return t=!0,r?{value:void 0,done:!0}:{value:e,done:!1}}}},e.spanMap=function(e,t,r){var n;if(e){n=[];for(var i=e.length,a=void 0,o=void 0,s=0,c=0;s<i;){for(;c<i;){if(o=t(e[c],c),0===c)a=o;else if(o!==a)break;c++}if(s<c){var l=r(e.slice(s,c),a,s,c);l&&n.push(l),s=c}a=o,c++}}return n},e.mapEntries=function(t,r){if(t){var n=new e.Map;return t.forEach((function(e,t){var i=r(t,e),a=i[0],o=i[1];n.set(a,o)})),n}},e.some=a,e.getRangesWhere=function(e,t,r){for(var n,i=0;i<e.length;i++)t(e[i])?n=void 0===n?i:n:void 0!==n&&(r(n,i),n=void 0);void 0!==n&&r(n,e.length)},e.concatenate=o,e.indicesOf=c,e.deduplicate=function(e,t,r){return 0===e.length?[]:1===e.length?e.slice():r?function(e,t,r){var n=c(e);f(e,n,r);for(var i=e[n[0]],a=[n[0]],o=1;o<n.length;o++){var s=n[o],l=e[s];t(i,l)||(a.push(s),i=l)}return a.sort(),a.map((function(t){return e[t]}))}(e,t,r):function(e,t){for(var r=[],n=0,i=e;n<i.length;n++)p(r,i[n],t);return r}(e,t)},e.insertSorted=function(e,t,r){if(0!==e.length){var n=_(e,t,N,r);n<0&&e.splice(~n,0,t)}else e.push(t)},e.sortAndDeduplicate=function(t,r,n){return function(t,r){if(0===t.length)return e.emptyArray;for(var n=t[0],i=[n],a=1;a<t.length;a++){var o=t[a];switch(r(o,n)){case!0:case 0:continue;case-1:return e.Debug.fail("Array is unsorted.")}i.push(n=o)}return i}(m(t,r),n||r||j)},e.arrayIsSorted=function(e,t){if(e.length<2)return!0;for(var r=e[0],n=0,i=e.slice(1);n<i.length;n++){var a=i[n];if(1===t(r,a))return!1;r=a}return!0},e.arrayIsEqualTo=function(e,t,r){if(void 0===r&&(r=O),!e||!t)return e===t;if(e.length!==t.length)return!1;for(var n=0;n<e.length;n++)if(!r(e[n],t[n],n))return!1;return!0},e.compact=function(e){var t;if(e)for(var r=0;r<e.length;r++){var n=e[r];!t&&n||(t||(t=e.slice(0,r)),n&&t.push(n))}return t||e},e.relativeComplement=function(t,r,n){if(!r||!t||0===r.length||0===t.length)return r;var i=[];e:for(var a=0,o=0;o<r.length;o++){o>0&&e.Debug.assertGreaterThanOrEqual(n(r[o],r[o-1]),0);t:for(var s=a;a<t.length;a++)switch(a>s&&e.Debug.assertGreaterThanOrEqual(n(t[a],t[a-1]),0),n(r[o],t[a])){case-1:i.push(r[o]);continue e;case 0:continue e;case 1:continue t}}return i},e.sum=function(e,t){for(var r=0,n=0,i=e;n<i.length;n++){r+=i[n][t]}return r},e.append=l,e.combine=function(e,t){return void 0===e?t:void 0===t?e:C(e)?C(t)?o(e,t):l(e,t):C(t)?l(t,e):[e,t]},e.addRange=d,e.pushIfUnique=p,e.appendIfUnique=function(e,t,r){return e?(p(e,t,r),e):[t]},e.sort=m,e.arrayIterator=g,e.arrayReverseIterator=function(e){var t=e.length;return{next:function(){return 0===t?{value:void 0,done:!0}:(t--,{value:e[t],done:!1})}}},e.stableSort=function(e,t){var r=c(e);return f(e,r,t),r.map((function(t){return e[t]}))},e.rangeEquals=function(e,t,r,n){for(;r<n;){if(e[r]!==t[r])return!1;r++}return!0},e.elementAt=function(e,t){if(e&&(t=u(e,t))<e.length)return e[t]},e.firstOrUndefined=function(e){return 0===e.length?void 0:e[0]},e.first=function(t){return e.Debug.assert(0!==t.length),t[0]},e.lastOrUndefined=function(e){return 0===e.length?void 0:e[e.length-1]},e.last=function(t){return e.Debug.assert(0!==t.length),t[t.length-1]},e.singleOrUndefined=function(e){return e&&1===e.length?e[0]:void 0},e.singleOrMany=function(e){return e&&1===e.length?e[0]:e},e.replaceElement=function(e,t,r){var n=e.slice(0);return n[t]=r,n},e.binarySearch=_,e.binarySearchKey=h,e.reduceLeft=y;var v=Object.prototype.hasOwnProperty;function b(e,t){return v.call(e,t)}function k(e){var t=[];for(var r in e)v.call(e,r)&&t.push(r);return t}e.hasProperty=b,e.getProperty=function(e,t){return v.call(e,t)?e[t]:void 0},e.getOwnKeys=k,e.getAllKeys=function(e){var t=[];do{for(var r=0,n=Object.getOwnPropertyNames(e);r<n.length;r++){p(t,n[r])}}while(e=Object.getPrototypeOf(e));return t},e.getOwnValues=function(e){var t=[];for(var r in e)v.call(e,r)&&t.push(e[r]);return t};var x=Object.entries||function(e){for(var t=k(e),r=Array(t.length),n=0;n<t.length;n++)r[n]=[t[n],e[t[n]]];return r};function E(e,t){for(var r=[],n=e.next();!n.done;n=e.next())r.push(t?t(n.value):n.value);return r}function S(e,t,r){void 0===r&&(r=N);for(var n=D(),i=0,a=e;i<a.length;i++){var o=a[i];n.add(t(o),r(o))}return n}function D(){var t=new e.Map;return t.add=w,t.remove=T,t}function w(e,t){var r=this.get(e);return r?r.push(t):this.set(e,r=[t]),r}function T(e,t){var r=this.get(e);r&&(K(r,t),r.length||this.delete(e))}function C(e){return Array.isArray?Array.isArray(e):e instanceof Array}function A(e){}function N(e){return e}function P(e){return e.toLowerCase()}e.getEntries=function(e){return e?x(e):[]},e.arrayOf=function(e,t){for(var r=new Array(e),n=0;n<e;n++)r[n]=t(n);return r},e.arrayFrom=E,e.assign=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];for(var n=0,i=t;n<i.length;n++){var a=i[n];if(void 0!==a)for(var o in a)b(a,o)&&(e[o]=a[o])}return e},e.equalOwnProperties=function(e,t,r){if(void 0===r&&(r=O),e===t)return!0;if(!e||!t)return!1;for(var n in e)if(v.call(e,n)){if(!v.call(t,n))return!1;if(!r(e[n],t[n]))return!1}for(var n in t)if(v.call(t,n)&&!v.call(e,n))return!1;return!0},e.arrayToMap=function(t,r,n){void 0===n&&(n=N);for(var i=new e.Map,a=0,o=t;a<o.length;a++){var s=o[a],c=r(s);void 0!==c&&i.set(c,n(s))}return i},e.arrayToNumericMap=function(e,t,r){void 0===r&&(r=N);for(var n=[],i=0,a=e;i<a.length;i++){var o=a[i];n[t(o)]=r(o)}return n},e.arrayToMultiMap=S,e.group=function(e,t,r){return void 0===r&&(r=N),E(S(e,t).values(),r)},e.clone=function(e){var t={};for(var r in e)v.call(e,r)&&(t[r]=e[r]);return t},e.extend=function(e,t){var r={};for(var n in t)v.call(t,n)&&(r[n]=t[n]);for(var n in e)v.call(e,n)&&(r[n]=e[n]);return r},e.copyProperties=function(e,t){for(var r in t)v.call(t,r)&&(e[r]=t[r])},e.maybeBind=function(e,t){return t?t.bind(e):void 0},e.createMultiMap=D,e.createUnderscoreEscapedMultiMap=function(){return D()},e.isArray=C,e.toArray=function(e){return C(e)?e:[e]},e.isString=function(e){return"string"==typeof e},e.isNumber=function(e){return"number"==typeof e},e.tryCast=function(e,t){return void 0!==e&&t(e)?e:void 0},e.cast=function(t,r){return void 0!==t&&r(t)?t:e.Debug.fail("Invalid cast. The supplied value "+t+" did not pass the test '"+e.Debug.getFunctionName(r)+"'.")},e.noop=A,e.returnFalse=function(){return!1},e.returnTrue=function(){return!0},e.returnUndefined=function(){},e.identity=N,e.toLowerCase=P;var I=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_\. ]+/g;function F(e){return I.test(e)?e.replace(I,P):e}function O(e,t){return e===t}function R(e,t){return e===t?0:void 0===e?-1:void 0===t?1:e<t?-1:1}function M(e,t){return R(e,t)}function L(e,t){return e===t?0:void 0===e?-1:void 0===t?1:(e=e.toUpperCase())<(t=t.toUpperCase())?-1:e>t?1:0}function j(e,t){return R(e,t)}e.toFileNameLowerCase=F,e.notImplemented=function(){throw new Error("Not implemented")},e.memoize=function(e){var t;return function(){return e&&(t=e(),e=void 0),t}},e.memoizeOne=function(t){var r=new e.Map;return function(e){var n=typeof e+":"+e,i=r.get(n);return void 0!==i||r.has(n)||(i=t(e),r.set(n,i)),i}},e.compose=function(e,t,r,n,i){if(i){for(var a=[],o=0;o<arguments.length;o++)a[o]=arguments[o];return function(e){return y(a,(function(e,t){return t(e)}),e)}}return n?function(i){return n(r(t(e(i))))}:r?function(n){return r(t(e(n)))}:t?function(r){return t(e(r))}:e?function(t){return e(t)}:function(e){return e}},function(e){e[e.None=0]="None",e[e.Normal=1]="Normal",e[e.Aggressive=2]="Aggressive",e[e.VeryAggressive=3]="VeryAggressive"}(e.AssertionLevel||(e.AssertionLevel={})),e.equateValues=O,e.equateStringsCaseInsensitive=function(e,t){return e===t||void 0!==e&&void 0!==t&&e.toUpperCase()===t.toUpperCase()},e.equateStringsCaseSensitive=function(e,t){return O(e,t)},e.compareValues=M,e.compareTextSpans=function(e,t){return M(null==e?void 0:e.start,null==t?void 0:t.start)||M(null==e?void 0:e.length,null==t?void 0:t.length)},e.min=function(e,t,r){return-1===r(e,t)?e:t},e.compareStringsCaseInsensitive=L,e.compareStringsCaseSensitive=j,e.getStringComparer=function(e){return e?L:j};var B,z,U=function(){var e,t,r=function(){if("object"==typeof Intl&&"function"==typeof Intl.Collator)return i;if("function"==typeof String.prototype.localeCompare&&"function"==typeof String.prototype.toLocaleUpperCase&&"a".localeCompare("B")<0)return a;return o}();return function(n){return void 0===n?e||(e=r(n)):"en-US"===n?t||(t=r(n)):r(n)};function n(e,t,r){if(e===t)return 0;if(void 0===e)return-1;if(void 0===t)return 1;var n=r(e,t);return n<0?-1:n>0?1:0}function i(e){var t=new Intl.Collator(e,{usage:"sort",sensitivity:"variant"}).compare;return function(e,r){return n(e,r,t)}}function a(e){return void 0!==e?o():function(e,r){return n(e,r,t)};function t(e,t){return e.localeCompare(t)}}function o(){return function(t,r){return n(t,r,e)};function e(e,r){return t(e.toUpperCase(),r.toUpperCase())||t(e,r)}function t(e,t){return e<t?-1:e>t?1:0}}}();function q(e,t,r){for(var n=new Array(t.length+1),i=new Array(t.length+1),a=r+.01,o=0;o<=t.length;o++)n[o]=o;for(o=1;o<=e.length;o++){var s=e.charCodeAt(o-1),c=Math.ceil(o>r?o-r:1),l=Math.floor(t.length>r+o?r+o:t.length);i[0]=o;for(var u=o,d=1;d<c;d++)i[d]=a;for(d=c;d<=l;d++){var p=e[o-1].toLowerCase()===t[d-1].toLowerCase()?n[d-1]+.1:n[d-1]+2,f=s===t.charCodeAt(d-1)?n[d-1]:Math.min(n[d]+1,i[d-1]+1,p);i[d]=f,u=Math.min(u,f)}for(d=l+1;d<=t.length;d++)i[d]=a;if(u>r)return;var m=n;n=i,i=m}var g=n[t.length];return g>r?void 0:g}function J(e,t){var r=e.length-t.length;return r>=0&&e.indexOf(t,r)===r}function V(e,t){for(var r=t;r<e.length-1;r++)e[r]=e[r+1];e.pop()}function H(e,t){e[t]=e[e.length-1],e.pop()}function K(e,t){return function(e,t){for(var r=0;r<e.length;r++)if(t(e[r]))return H(e,r),!0;return!1}(e,(function(e){return e===t}))}function W(e,t){return 0===e.lastIndexOf(t,0)}function G(e,t){var r=e.prefix,n=e.suffix;return t.length>=r.length+n.length&&W(t,r)&&J(t,n)}function $(e,t,r,n){for(var i=0,a=e[n];i<a.length;i++){var o=a[i],s=void 0;r?(s=r.slice()).push(o):s=[o],n===e.length-1?t.push(s):$(e,t,s,n+1)}}e.getUILocale=function(){return z},e.setUILocale=function(e){z!==e&&(z=e,B=void 0)},e.compareStringsCaseSensitiveUI=function(e,t){return(B||(B=U(z)))(e,t)},e.compareProperties=function(e,t,r,n){return e===t?0:void 0===e?-1:void 0===t?1:n(e[r],t[r])},e.compareBooleans=function(e,t){return M(e?1:0,t?1:0)},e.getSpellingSuggestion=function(t,r,n){for(var i,a=Math.min(2,Math.floor(.34*t.length)),o=Math.floor(.4*t.length)+1,s=0,c=r;s<c.length;s++){var l=c[s],u=n(l);if(void 0!==u&&Math.abs(u.length-t.length)<=a){if(u===t)continue;if(u.length<3&&u.toLowerCase()!==t.toLowerCase())continue;var d=q(t,u,o-.1);if(void 0===d)continue;e.Debug.assert(d<o),o=d,i=l}}return i},e.endsWith=J,e.removeSuffix=function(e,t){return J(e,t)?e.slice(0,e.length-t.length):e},e.tryRemoveSuffix=function(e,t){return J(e,t)?e.slice(0,e.length-t.length):void 0},e.stringContains=function(e,t){return-1!==e.indexOf(t)},e.removeMinAndVersionNumbers=function(e){var t=/[.-]((min)|(\d+(\.\d+)*))$/;return e.replace(t,"").replace(t,"")},e.orderedRemoveItem=function(e,t){for(var r=0;r<e.length;r++)if(e[r]===t)return V(e,r),!0;return!1},e.orderedRemoveItemAt=V,e.unorderedRemoveItemAt=H,e.unorderedRemoveItem=K,e.createGetCanonicalFileName=function(e){return e?N:F},e.patternText=function(e){return e.prefix+"*"+e.suffix},e.matchedText=function(t,r){return e.Debug.assert(G(t,r)),r.substring(t.prefix.length,r.length-t.suffix.length)},e.findBestPatternMatch=function(e,t,r){for(var n,i=-1,a=0,o=e;a<o.length;a++){var s=o[a],c=t(s);G(c,r)&&c.prefix.length>i&&(i=c.prefix.length,n=s)}return n},e.startsWith=W,e.removePrefix=function(e,t){return W(e,t)?e.substr(t.length):e},e.tryRemovePrefix=function(e,t,r){return void 0===r&&(r=N),W(r(e),r(t))?e.substring(t.length):void 0},e.and=function(e,t){return function(r){return e(r)&&t(r)}},e.or=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];for(var n=0,i=e;n<i.length;n++){if(i[n].apply(void 0,t))return!0}return!1}},e.not=function(e){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return!e.apply(void 0,t)}},e.assertType=function(e){},e.singleElementArray=function(e){return void 0===e?void 0:[e]},e.enumerateInsertsAndDeletes=function(e,t,r,n,i,a){a=a||A;for(var o=0,s=0,c=e.length,l=t.length,u=!1;o<c&&s<l;){var d=e[o],p=t[s],f=r(d,p);-1===f?(n(d),o++,u=!0):1===f?(i(p),s++,u=!0):(a(p,d),o++,s++)}for(;o<c;)n(e[o++]),u=!0;for(;s<l;)i(t[s++]),u=!0;return u},e.fill=function(e,t){for(var r=Array(e),n=0;n<e;n++)r[n]=t(n);return r},e.cartesianProduct=function(e){var t=[];return $(e,t,void 0,0),t},e.padLeft=function(e,t,r){return void 0===r&&(r=" "),t<=e.length?e:r.repeat(t-e.length)+e},e.padRight=function(e,t,r){return void 0===r&&(r=" "),t<=e.length?e:e+r.repeat(t-e.length)},e.takeWhile=function(e,t){for(var r=e.length,n=0;n<r&&t(e[n]);)n++;return e.slice(0,n)}}(d||(d={})),function(e){var t;!function(e){e[e.Off=0]="Off",e[e.Error=1]="Error",e[e.Warning=2]="Warning",e[e.Info=3]="Info",e[e.Verbose=4]="Verbose"}(t=e.LogLevel||(e.LogLevel={})),function(r){var n,i,a=0;function o(){return null!=n?n:n=new e.Version(e.version)}function s(e){return r.currentLogLevel<=e}function c(e,t){r.loggingHost&&s(e)&&r.loggingHost.log(e,t)}function l(e){c(t.Info,e)}r.currentLogLevel=t.Warning,r.isDebugging=!1,r.getTypeScriptVersion=o,r.shouldLog=s,r.log=l,(i=l=r.log||(r.log={})).error=function(e){c(t.Error,e)},i.warn=function(e){c(t.Warning,e)},i.log=function(e){c(t.Info,e)},i.trace=function(e){c(t.Verbose,e)};var u={};function d(e){return a>=e}function p(t,n){return!!d(t)||(u[n]={level:t,assertion:r[n]},r[n]=e.noop,!1)}function f(e,t){var r=new Error(e?"Debug Failure. "+e:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(r,t||f),r}function m(e,t,r,n){e||(t=t?"False expression: "+t:"False expression.",r&&(t+="\r\nVerbose Debug Information: "+("string"==typeof r?r:r())),f(t,n||m))}function g(e,t,r){null==e&&f(t,r||g)}function _(e,t,r){return g(e,t,r||_),e}function h(e,t,r){for(var n=0,i=e;n<i.length;n++){g(i[n],t,r||h)}}function y(e,t,r){return h(e,t,r||y),e}function v(e){if("function"!=typeof e)return"";if(e.hasOwnProperty("name"))return e.name;var t=Function.prototype.toString.call(e),r=/^function\s+([\w\$]+)\s*\(/.exec(t);return r?r[1]:""}function b(t,r,n){void 0===t&&(t=0);var i=function(t){var r=[];for(var n in t){var i=t[n];"number"==typeof i&&r.push([i,n])}return e.stableSort(r,(function(t,r){return e.compareValues(t[0],r[0])}))}(r);if(0===t)return i.length>0&&0===i[0][0]?i[0][1]:"0";if(n){for(var a="",o=t,s=0,c=i;s<c.length;s++){var l=c[s],u=l[0],d=l[1];if(u>t)break;0!==u&&u&t&&(a=a+(a?"|":"")+d,o&=~u)}if(0===o)return a}else for(var p=0,f=i;p<f.length;p++){var m=f[p];u=m[0],d=m[1];if(u===t)return d}return t.toString()}function k(t){return b(t,e.SyntaxKind,!1)}function x(t){return b(t,e.NodeFlags,!0)}function E(t){return b(t,e.ModifierFlags,!0)}function S(t){return b(t,e.TransformFlags,!0)}function D(t){return b(t,e.EmitFlags,!0)}function w(t){return b(t,e.SymbolFlags,!0)}function T(t){return b(t,e.TypeFlags,!0)}function C(t){return b(t,e.SignatureFlags,!0)}function A(t){return b(t,e.ObjectFlags,!0)}function N(t){return b(t,e.FlowFlags,!0)}r.getAssertionLevel=function(){return a},r.setAssertionLevel=function(t){var n=a;if(a=t,t>n)for(var i=0,o=e.getOwnKeys(u);i<o.length;i++){var s=o[i],c=u[s];void 0!==c&&r[s]!==c.assertion&&t>=c.level&&(r[s]=c,u[s]=void 0)}},r.shouldAssert=d,r.fail=f,r.failBadSyntaxKind=function e(t,r,n){return f((r||"Unexpected node.")+"\r\nNode "+k(t.kind)+" was unexpected.",n||e)},r.assert=m,r.assertEqual=function e(t,r,n,i,a){t!==r&&f("Expected "+t+" === "+r+". "+(n?i?n+" "+i:n:""),a||e)},r.assertLessThan=function e(t,r,n,i){t>=r&&f("Expected "+t+" < "+r+". "+(n||""),i||e)},r.assertLessThanOrEqual=function e(t,r,n){t>r&&f("Expected "+t+" <= "+r,n||e)},r.assertGreaterThanOrEqual=function e(t,r,n){t<r&&f("Expected "+t+" >= "+r,n||e)},r.assertIsDefined=g,r.checkDefined=_,r.assertDefined=_,r.assertEachIsDefined=h,r.checkEachDefined=y,r.assertEachDefined=y,r.assertNever=function t(r,n,i){return void 0===n&&(n="Illegal value:"),f(n+" "+("object"==typeof r&&e.hasProperty(r,"kind")&&e.hasProperty(r,"pos")&&k?"SyntaxKind: "+k(r.kind):JSON.stringify(r)),i||t)},r.assertEachNode=function t(r,n,i,a){p(1,"assertEachNode")&&m(void 0===n||e.every(r,n),i||"Unexpected node.",(function(){return"Node array did not pass test '"+v(n)+"'."}),a||t)},r.assertNode=function e(t,r,n,i){p(1,"assertNode")&&m(void 0!==t&&(void 0===r||r(t)),n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" did not pass test '"+v(r)+"'."}),i||e)},r.assertNotNode=function e(t,r,n,i){p(1,"assertNotNode")&&m(void 0===t||void 0===r||!r(t),n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" should not have passed test '"+v(r)+"'."}),i||e)},r.assertOptionalNode=function e(t,r,n,i){p(1,"assertOptionalNode")&&m(void 0===r||void 0===t||r(t),n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" did not pass test '"+v(r)+"'."}),i||e)},r.assertOptionalToken=function e(t,r,n,i){p(1,"assertOptionalToken")&&m(void 0===r||void 0===t||t.kind===r,n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" was not a '"+k(r)+"' token."}),i||e)},r.assertMissingNode=function e(t,r,n){p(1,"assertMissingNode")&&m(void 0===t,r||"Unexpected node.",(function(){return"Node "+k(t.kind)+" was unexpected'."}),n||e)},r.getFunctionName=v,r.formatSymbol=function(t){return"{ name: "+e.unescapeLeadingUnderscores(t.escapedName)+"; flags: "+w(t.flags)+"; declarations: "+e.map(t.declarations,(function(e){return k(e.kind)}))+" }"},r.formatEnum=b,r.formatSyntaxKind=k,r.formatNodeFlags=x,r.formatModifierFlags=E,r.formatTransformFlags=S,r.formatEmitFlags=D,r.formatSymbolFlags=w,r.formatTypeFlags=T,r.formatSignatureFlags=C,r.formatObjectFlags=A,r.formatFlowFlags=N;var P,I,F,O=!1;function R(e){return function(){if(j(),!P)throw new Error("Debugging helpers could not be loaded.");return P}().formatControlFlowGraph(e)}function M(t){"__debugFlowFlags"in t||Object.defineProperties(t,{__tsDebuggerDisplay:{value:function(){var e=2&this.flags?"FlowStart":4&this.flags?"FlowBranchLabel":8&this.flags?"FlowLoopLabel":16&this.flags?"FlowAssignment":32&this.flags?"FlowTrueCondition":64&this.flags?"FlowFalseCondition":128&this.flags?"FlowSwitchClause":256&this.flags?"FlowArrayMutation":512&this.flags?"FlowCall":1024&this.flags?"FlowReduceLabel":1&this.flags?"FlowUnreachable":"UnknownFlow",t=-2048&this.flags;return e+(t?" ("+N(t)+")":"")}},__debugFlowFlags:{get:function(){return b(this.flags,e.FlowFlags,!0)}},__debugToString:{value:function(){return R(this)}}})}function L(e){"__tsDebuggerDisplay"in e||Object.defineProperties(e,{__tsDebuggerDisplay:{value:function(e){return"NodeArray "+(e=String(e).replace(/(?:,[\s\w\d_]+:[^,]+)+\]$/,"]"))}}})}function j(){if(!O){var t,r;Object.defineProperties(e.objectAllocator.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value:function(){var t=33554432&this.flags?"TransientSymbol":"Symbol",r=-33554433&this.flags;return t+" '"+e.symbolName(this)+"'"+(r?" ("+w(r)+")":"")}},__debugFlags:{get:function(){return w(this.flags)}}}),Object.defineProperties(e.objectAllocator.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value:function(){var t=98304&this.flags?"NullableType":384&this.flags?"LiteralType "+JSON.stringify(this.value):2048&this.flags?"LiteralType "+(this.value.negative?"-":"")+this.value.base10Value+"n":8192&this.flags?"UniqueESSymbolType":32&this.flags?"EnumType":67359327&this.flags?"IntrinsicType "+this.intrinsicName:1048576&this.flags?"UnionType":2097152&this.flags?"IntersectionType":4194304&this.flags?"IndexType":8388608&this.flags?"IndexedAccessType":16777216&this.flags?"ConditionalType":33554432&this.flags?"SubstitutionType":262144&this.flags?"TypeParameter":524288&this.flags?3&this.objectFlags?"InterfaceType":4&this.objectFlags?"TypeReference":8&this.objectFlags?"TupleType":16&this.objectFlags?"AnonymousType":32&this.objectFlags?"MappedType":2048&this.objectFlags?"ReverseMappedType":256&this.objectFlags?"EvolvingArrayType":"ObjectType":"Type",r=524288&this.flags?-2368&this.objectFlags:0;return t+(this.symbol?" '"+e.symbolName(this.symbol)+"'":"")+(r?" ("+A(r)+")":"")}},__debugFlags:{get:function(){return T(this.flags)}},__debugObjectFlags:{get:function(){return 524288&this.flags?A(this.objectFlags):""}},__debugTypeToString:{value:function(){var e=(void 0===t&&"function"==typeof WeakMap&&(t=new WeakMap),t),r=null==e?void 0:e.get(this);return void 0===r&&(r=this.checker.typeToString(this),null==e||e.set(this,r)),r}}}),Object.defineProperties(e.objectAllocator.getSignatureConstructor().prototype,{__debugFlags:{get:function(){return C(this.flags)}},__debugSignatureToString:{value:function(){var e;return null===(e=this.checker)||void 0===e?void 0:e.signatureToString(this)}}});for(var n=0,i=[e.objectAllocator.getNodeConstructor(),e.objectAllocator.getIdentifierConstructor(),e.objectAllocator.getTokenConstructor(),e.objectAllocator.getSourceFileConstructor()];n<i.length;n++){var a=i[n];a.prototype.hasOwnProperty("__debugKind")||Object.defineProperties(a.prototype,{__tsDebuggerDisplay:{value:function(){return(e.isGeneratedIdentifier(this)?"GeneratedIdentifier":e.isIdentifier(this)?"Identifier '"+e.idText(this)+"'":e.isPrivateIdentifier(this)?"PrivateIdentifier '"+e.idText(this)+"'":e.isStringLiteral(this)?"StringLiteral "+JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"..."):e.isNumericLiteral(this)?"NumericLiteral "+this.text:e.isBigIntLiteral(this)?"BigIntLiteral "+this.text+"n":e.isTypeParameterDeclaration(this)?"TypeParameterDeclaration":e.isParameter(this)?"ParameterDeclaration":e.isConstructorDeclaration(this)?"ConstructorDeclaration":e.isGetAccessorDeclaration(this)?"GetAccessorDeclaration":e.isSetAccessorDeclaration(this)?"SetAccessorDeclaration":e.isCallSignatureDeclaration(this)?"CallSignatureDeclaration":e.isConstructSignatureDeclaration(this)?"ConstructSignatureDeclaration":e.isIndexSignatureDeclaration(this)?"IndexSignatureDeclaration":e.isTypePredicateNode(this)?"TypePredicateNode":e.isTypeReferenceNode(this)?"TypeReferenceNode":e.isFunctionTypeNode(this)?"FunctionTypeNode":e.isConstructorTypeNode(this)?"ConstructorTypeNode":e.isTypeQueryNode(this)?"TypeQueryNode":e.isTypeLiteralNode(this)?"TypeLiteralNode":e.isArrayTypeNode(this)?"ArrayTypeNode":e.isTupleTypeNode(this)?"TupleTypeNode":e.isOptionalTypeNode(this)?"OptionalTypeNode":e.isRestTypeNode(this)?"RestTypeNode":e.isUnionTypeNode(this)?"UnionTypeNode":e.isIntersectionTypeNode(this)?"IntersectionTypeNode":e.isConditionalTypeNode(this)?"ConditionalTypeNode":e.isInferTypeNode(this)?"InferTypeNode":e.isParenthesizedTypeNode(this)?"ParenthesizedTypeNode":e.isThisTypeNode(this)?"ThisTypeNode":e.isTypeOperatorNode(this)?"TypeOperatorNode":e.isIndexedAccessTypeNode(this)?"IndexedAccessTypeNode":e.isMappedTypeNode(this)?"MappedTypeNode":e.isLiteralTypeNode(this)?"LiteralTypeNode":e.isNamedTupleMember(this)?"NamedTupleMember":e.isImportTypeNode(this)?"ImportTypeNode":k(this.kind))+(this.flags?" ("+x(this.flags)+")":"")}},__debugKind:{get:function(){return k(this.kind)}},__debugNodeFlags:{get:function(){return x(this.flags)}},__debugModifierFlags:{get:function(){return E(e.getEffectiveModifierFlagsNoCache(this))}},__debugTransformFlags:{get:function(){return S(this.transformFlags)}},__debugIsParseTreeNode:{get:function(){return e.isParseTreeNode(this)}},__debugEmitFlags:{get:function(){return D(e.getEmitFlags(this))}},__debugGetText:{value:function(t){if(e.nodeIsSynthesized(this))return"";var n=(void 0===r&&"function"==typeof WeakMap&&(r=new WeakMap),r),i=null==n?void 0:n.get(this);if(void 0===i){var a=e.getParseTreeNode(this),o=a&&e.getSourceFileOfNode(a);i=o?e.getSourceTextOfNodeFromSourceFile(o,a,t):"",null==n||n.set(this,i)}return i}}})}try{if(e.sys&&e.sys.require){var o=e.getDirectoryPath(e.resolvePath(e.sys.getExecutingFilePath())),s=e.sys.require(o,"./compiler-debug");s.error||(s.module.init(e),P=s.module)}}catch(e){}O=!0}}function B(t,r,n,i,a){var o=r?"DeprecationError: ":"DeprecationWarning: ";return o+="'"+t+"' ",o+=i?"has been deprecated since v"+i:"is deprecated",o+=r?" and can no longer be used.":n?" and will no longer be usable after v"+n+".":".",o+=a?" "+e.formatStringFromArgs(a,[t],0):""}function z(t,r){var n,i;void 0===r&&(r={});var a="string"==typeof r.typeScriptVersion?new e.Version(r.typeScriptVersion):null!==(n=r.typeScriptVersion)&&void 0!==n?n:o(),s="string"==typeof r.errorAfter?new e.Version(r.errorAfter):r.errorAfter,c="string"==typeof r.warnAfter?new e.Version(r.warnAfter):r.warnAfter,u="string"==typeof r.since?new e.Version(r.since):null!==(i=r.since)&&void 0!==i?i:c,d=r.error||s&&a.compareTo(s)<=0,p=!c||a.compareTo(c)>=0;return d?function(e,t,r,n){var i=B(e,!0,t,r,n);return function(){throw new TypeError(i)}}(t,s,u,r.message):p?function(e,t,r,n){var i=!1;return function(){i||(l.warn(B(e,!1,t,r,n)),i=!0)}}(t,s,u,r.message):e.noop}r.printControlFlowGraph=function(e){return console.log(R(e))},r.formatControlFlowGraph=R,r.attachFlowNodeDebugInfo=function(e){O&&("function"==typeof Object.setPrototypeOf?(I||M(I=Object.create(Object.prototype)),Object.setPrototypeOf(e,I)):M(e))},r.attachNodeArrayDebugInfo=function(e){O&&("function"==typeof Object.setPrototypeOf?(F||L(F=Object.create(Array.prototype)),Object.setPrototypeOf(e,F)):L(e))},r.enableDebugInfo=j,r.deprecate=function(e,t){return function(e,t){return function(){return e(),t.apply(this,arguments)}}(z(v(e),t),e)}}(e.Debug||(e.Debug={}))}(d||(d={})),function(e){var t=/^(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,r=/^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)(?:\.(?:0|[1-9]\d*|[a-z-][a-z0-9-]*))*$/i,n=/^[a-z0-9-]+(?:\.[a-z0-9-]+)*$/i,i=/^(0|[1-9]\d*)$/,a=function(){function t(t,i,a,s,c){if(void 0===i&&(i=0),void 0===a&&(a=0),void 0===s&&(s=""),void 0===c&&(c=""),"string"==typeof t){var l=e.Debug.checkDefined(o(t),"Invalid version");t=l.major,i=l.minor,a=l.patch,s=l.prerelease,c=l.build}e.Debug.assert(t>=0,"Invalid argument: major"),e.Debug.assert(i>=0,"Invalid argument: minor"),e.Debug.assert(a>=0,"Invalid argument: patch"),e.Debug.assert(!s||r.test(s),"Invalid argument: prerelease"),e.Debug.assert(!c||n.test(c),"Invalid argument: build"),this.major=t,this.minor=i,this.patch=a,this.prerelease=s?s.split("."):e.emptyArray,this.build=c?c.split("."):e.emptyArray}return t.tryParse=function(e){var r=o(e);if(r)return new t(r.major,r.minor,r.patch,r.prerelease,r.build)},t.prototype.compareTo=function(t){return this===t?0:void 0===t?1:e.compareValues(this.major,t.major)||e.compareValues(this.minor,t.minor)||e.compareValues(this.patch,t.patch)||function(t,r){if(t===r)return 0;if(0===t.length)return 0===r.length?0:1;if(0===r.length)return-1;for(var n=Math.min(t.length,r.length),a=0;a<n;a++){var o=t[a],s=r[a];if(o!==s){var c=i.test(o),l=i.test(s);if(c||l){if(c!==l)return c?-1:1;if(u=e.compareValues(+o,+s))return u}else{var u;if(u=e.compareStringsCaseSensitive(o,s))return u}}}return e.compareValues(t.length,r.length)}(this.prerelease,t.prerelease)},t.prototype.increment=function(r){switch(r){case"major":return new t(this.major+1,0,0);case"minor":return new t(this.major,this.minor+1,0);case"patch":return new t(this.major,this.minor,this.patch+1);default:return e.Debug.assertNever(r)}},t.prototype.toString=function(){var t=this.major+"."+this.minor+"."+this.patch;return e.some(this.prerelease)&&(t+="-"+this.prerelease.join(".")),e.some(this.build)&&(t+="+"+this.build.join(".")),t},t.zero=new t(0,0,0),t}();function o(e){var i=t.exec(e);if(i){var a=i[1],o=i[2],s=void 0===o?"0":o,c=i[3],l=void 0===c?"0":c,u=i[4],d=void 0===u?"":u,p=i[5],f=void 0===p?"":p;if((!d||r.test(d))&&(!f||n.test(f)))return{major:parseInt(a,10),minor:parseInt(s,10),patch:parseInt(l,10),prerelease:d,build:f}}}e.Version=a;var s=function(){function t(t){this._alternatives=t?e.Debug.checkDefined(f(t),"Invalid range spec."):e.emptyArray}return t.tryParse=function(e){var r=f(e);if(r){var n=new t("");return n._alternatives=r,n}},t.prototype.test=function(e){return"string"==typeof e&&(e=new a(e)),function(e,t){if(0===t.length)return!0;for(var r=0,n=t;r<n.length;r++){if(v(e,n[r]))return!0}return!1}(e,this._alternatives)},t.prototype.toString=function(){return t=this._alternatives,e.map(t,k).join(" || ")||"*";var t},t}();e.VersionRange=s;var c=/\s*\|\|\s*/g,l=/\s+/g,u=/^([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,d=/^\s*([a-z0-9-+.*]+)\s+-\s+([a-z0-9-+.*]+)\s*$/i,p=/^\s*(~|\^|<|<=|>|>=|=)?\s*([a-z0-9-+.*]+)$/i;function f(e){for(var t=[],r=0,n=e.trim().split(c);r<n.length;r++){var i=n[r];if(i){var a=[],o=d.exec(i);if(o){if(!g(o[1],o[2],a))return}else for(var s=0,u=i.split(l);s<u.length;s++){var f=u[s],m=p.exec(f);if(!m||!_(m[1],m[2],a))return}t.push(a)}}return t}function m(e){var t=u.exec(e);if(t){var r=t[1],n=t[2],i=void 0===n?"*":n,o=t[3],s=void 0===o?"*":o,c=t[4],l=t[5];return{version:new a(h(r)?0:parseInt(r,10),h(r)||h(i)?0:parseInt(i,10),h(r)||h(i)||h(s)?0:parseInt(s,10),c,l),major:r,minor:i,patch:s}}}function g(e,t,r){var n=m(e);if(!n)return!1;var i=m(t);return!!i&&(h(n.major)||r.push(y(">=",n.version)),h(i.major)||r.push(h(i.minor)?y("<",i.version.increment("major")):h(i.patch)?y("<",i.version.increment("minor")):y("<=",i.version)),!0)}function _(e,t,r){var n=m(t);if(!n)return!1;var i=n.version,o=n.major,s=n.minor,c=n.patch;if(h(o))"<"!==e&&">"!==e||r.push(y("<",a.zero));else switch(e){case"~":r.push(y(">=",i)),r.push(y("<",i.increment(h(s)?"major":"minor")));break;case"^":r.push(y(">=",i)),r.push(y("<",i.increment(i.major>0||h(s)?"major":i.minor>0||h(c)?"minor":"patch")));break;case"<":case">=":r.push(y(e,i));break;case"<=":case">":r.push(h(s)?y("<="===e?"<":">=",i.increment("major")):h(c)?y("<="===e?"<":">=",i.increment("minor")):y(e,i));break;case"=":case void 0:h(s)||h(c)?(r.push(y(">=",i)),r.push(y("<",i.increment(h(s)?"major":"minor")))):r.push(y("=",i));break;default:return!1}return!0}function h(e){return"*"===e||"x"===e||"X"===e}function y(e,t){return{operator:e,operand:t}}function v(e,t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(!b(e,i.operator,i.operand))return!1}return!0}function b(t,r,n){var i=t.compareTo(n);switch(r){case"<":return i<0;case"<=":return i<=0;case">":return i>0;case">=":return i>=0;case"=":return 0===i;default:return e.Debug.assertNever(r)}}function k(t){return e.map(t,x).join(" ")}function x(e){return""+e.operator+e.operand}}(d||(d={})),function(e){function t(e,t){return"object"==typeof e&&"number"==typeof e.timeOrigin&&"function"==typeof e.mark&&"function"==typeof e.measure&&"function"==typeof e.now&&"function"==typeof t}var n=function(){if("object"==typeof performance&&"function"==typeof PerformanceObserver&&t(performance,PerformanceObserver))return{shouldWriteNativeEvents:!0,performance,PerformanceObserver}}()||function(){if("undefined"!=typeof process&&process.nextTick&&!process.browser)try{var n,i=r(82987),a=i.performance,o=i.PerformanceObserver;if(t(a,o)){n=a;var s=new e.Version(process.versions.node);return new e.VersionRange("<12.16.3 || 13 <13.13").test(s)&&(n={get timeOrigin(){return a.timeOrigin},now:function(){return a.now()},mark:function(e){return a.mark(e)},measure:function(e,t,r){void 0===t&&(t="nodeStart"),void 0===r&&(r="__performance.measure-fix__",a.mark(r)),a.measure(e,t,r),"__performance.measure-fix__"===r&&a.clearMarks("__performance.measure-fix__")}}),{shouldWriteNativeEvents:!1,performance:n,PerformanceObserver:o}}}catch(e){}}(),i=null==n?void 0:n.performance;e.tryGetNativePerformanceHooks=function(){return n},e.timestamp=i?function(){return i.now()}:Date.now?Date.now:function(){return+new Date}}(d||(d={})),function(e){!function(t){var r,n;function i(t,r,n){var i=0;return{enter:function(){1==++i&&u(r)},exit:function(){0==--i?(u(n),d(t,r,n)):i<0&&e.Debug.fail("enter/exit count does not match.")}}}t.createTimerIf=function(e,r,n,a){return e?i(r,n,a):t.nullTimer},t.createTimer=i,t.nullTimer={enter:e.noop,exit:e.noop};var a=!1,o=e.timestamp(),s=new e.Map,c=new e.Map,l=new e.Map;function u(t){var r;if(a){var i=null!==(r=c.get(t))&&void 0!==r?r:0;c.set(t,i+1),s.set(t,e.timestamp()),null==n||n.mark(t)}}function d(t,r,i){var c,u;if(a){var d=null!==(c=void 0!==i?s.get(i):void 0)&&void 0!==c?c:e.timestamp(),p=null!==(u=void 0!==r?s.get(r):void 0)&&void 0!==u?u:o,f=l.get(t)||0;l.set(t,f+(d-p)),null==n||n.measure(t,r,i)}}t.mark=u,t.measure=d,t.getCount=function(e){return c.get(e)||0},t.getDuration=function(e){return l.get(e)||0},t.forEachMeasure=function(e){l.forEach((function(t,r){return e(r,t)}))},t.isEnabled=function(){return a},t.enable=function(t){var i;return void 0===t&&(t=e.sys),a||(a=!0,r||(r=e.tryGetNativePerformanceHooks()),r&&(o=r.performance.timeOrigin,(r.shouldWriteNativeEvents||(null===(i=null==t?void 0:t.cpuProfilingEnabled)||void 0===i?void 0:i.call(t))||(null==t?void 0:t.debugMode))&&(n=r.performance))),!0},t.disable=function(){a&&(s.clear(),c.clear(),l.clear(),n=void 0,a=!1)}}(e.performance||(e.performance={}))}(d||(d={})),function(e){var t,n,i={logEvent:e.noop,logErrEvent:e.noop,logPerfEvent:e.noop,logInfoEvent:e.noop,logStartCommand:e.noop,logStopCommand:e.noop,logStartUpdateProgram:e.noop,logStopUpdateProgram:e.noop,logStartUpdateGraph:e.noop,logStopUpdateGraph:e.noop,logStartResolveModule:e.noop,logStopResolveModule:e.noop,logStartParseSourceFile:e.noop,logStopParseSourceFile:e.noop,logStartReadFile:e.noop,logStopReadFile:e.noop,logStartBindFile:e.noop,logStopBindFile:e.noop,logStartScheduledOperation:e.noop,logStopScheduledOperation:e.noop};try{var a=null!==(t=process.env.TS_ETW_MODULE_PATH)&&void 0!==t?t:"./node_modules/@microsoft/typescript-etw";n=r(89387)(a)}catch(e){n=void 0}e.perfLogger=n&&n.logEvent?n:i}(d||(d={})),d||(d={}),function(e){!function(t){var n;!function(e){e[e.Project=0]="Project",e[e.Build=1]="Build",e[e.Server=2]="Server"}(t.Mode||(t.Mode={}));var i,o,s=0,c=0,l=[];t.startTracing=function(u,d,p){if(e.Debug.assert(!e.tracing,"Tracing already started"),void 0===n)try{n=r(79896)}catch(e){throw new Error("tracing requires having fs\n(original error: "+(e.message||e)+")")}i=u,void 0===o&&(o=e.combinePaths(d,"legend.json")),n.existsSync(d)||n.mkdirSync(d,{recursive:!0});var f=1===i?"."+process.pid+"-"+ ++s:2===i?"."+process.pid:"",m=e.combinePaths(d,"trace"+f+".json"),g=e.combinePaths(d,"types"+f+".json");l.push({configFilePath:p,tracePath:m,typesPath:g}),c=n.openSync(m,"w"),e.tracing=t;var _={cat:"__metadata",ph:"M",ts:1e3*e.timestamp(),pid:1,tid:1};n.writeSync(c,"[\n"+[a({name:"process_name",args:{name:"tsc"}},_),a({name:"thread_name",args:{name:"Main"}},_),a(a({name:"TracingStartedInBrowser"},_),{cat:"disabled-by-default-devtools.timeline"})].map((function(e){return JSON.stringify(e)})).join(",\n"))},t.stopTracing=function(t){e.Debug.assert(e.tracing,"Tracing is not in progress"),e.Debug.assert(!!t==(2!==i)),n.writeSync(c,"\n]\n"),n.closeSync(c),e.tracing=void 0,t?function(t){var r,i,o,s,c,u,d,p,f,g,_,h,y,v,b,k;e.performance.mark("beginDumpTypes");var x=l[l.length-1].typesPath,E=n.openSync(x,"w"),S=new e.Map;n.writeSync(E,"[");for(var D=t.length,w=0;w<D;w++){var T=t[w],C=T.objectFlags,A=null!==(r=T.aliasSymbol)&&void 0!==r?r:T.symbol,N=null===(i=null==A?void 0:A.declarations)||void 0===i?void 0:i[0],P=N&&e.getSourceFileOfNode(N),I=void 0;if(16&C|2944&T.flags)try{I=null===(o=T.checker)||void 0===o?void 0:o.typeToString(T)}catch(e){I=void 0}var F={};if(8388608&T.flags){var O=T;F={indexedAccessObjectType:null===(s=O.objectType)||void 0===s?void 0:s.id,indexedAccessIndexType:null===(c=O.indexType)||void 0===c?void 0:c.id}}var R={};if(4&C){var M=T;R={instantiatedType:null===(u=M.target)||void 0===u?void 0:u.id,typeArguments:null===(d=M.resolvedTypeArguments)||void 0===d?void 0:d.map((function(e){return e.id}))}}var L={};if(16777216&T.flags){var j=T;L={conditionalCheckType:null===(p=j.checkType)||void 0===p?void 0:p.id,conditionalExtendsType:null===(f=j.extendsType)||void 0===f?void 0:f.id,conditionalTrueType:null!==(_=null===(g=j.resolvedTrueType)||void 0===g?void 0:g.id)&&void 0!==_?_:-1,conditionalFalseType:null!==(y=null===(h=j.resolvedFalseType)||void 0===h?void 0:h.id)&&void 0!==y?y:-1}}var B=void 0,z=T.checker.getRecursionIdentity(T);z&&((B=S.get(z))||(B=S.size,S.set(z,B)));var U=a(a(a(a({id:T.id,intrinsicName:T.intrinsicName,symbolName:(null==A?void 0:A.escapedName)&&e.unescapeLeadingUnderscores(A.escapedName),recursionId:B,unionTypes:1048576&T.flags?null===(v=T.types)||void 0===v?void 0:v.map((function(e){return e.id})):void 0,intersectionTypes:2097152&T.flags?T.types.map((function(e){return e.id})):void 0,aliasTypeArguments:null===(b=T.aliasTypeArguments)||void 0===b?void 0:b.map((function(e){return e.id})),keyofType:4194304&T.flags?null===(k=T.type)||void 0===k?void 0:k.id:void 0},F),R),L),{firstDeclaration:N&&{path:P.path,start:m(e.getLineAndCharacterOfPosition(P,N.pos)),end:m(e.getLineAndCharacterOfPosition(e.getSourceFileOfNode(N),N.end))},flags:e.Debug.formatTypeFlags(T.flags).split("|"),display:I});n.writeSync(E,JSON.stringify(U)),w<D-1&&n.writeSync(E,",\n")}n.writeSync(E,"]\n"),n.closeSync(E),e.performance.mark("endDumpTypes"),e.performance.measure("Dump types","beginDumpTypes","endDumpTypes")}(t):l[l.length-1].typesPath=void 0},function(e){e.Parse="parse",e.Program="program",e.Bind="bind",e.Check="check",e.CheckTypes="checkTypes",e.Emit="emit",e.Session="session"}(t.Phase||(t.Phase={})),t.instant=function(e,t,r){f("I",e,t,r,'"s":"g"')};var u=[];t.push=function(t,r,n,i){void 0===i&&(i=!1),i&&f("B",t,r,n),u.push({phase:t,name:r,args:n,time:1e3*e.timestamp(),separateBeginAndEnd:i})},t.pop=function(){e.Debug.assert(u.length>0),p(u.length-1,1e3*e.timestamp()),u.length--},t.popAll=function(){for(var t=1e3*e.timestamp(),r=u.length-1;r>=0;r--)p(r,t);u.length=0};var d=1e4;function p(e,t){var r=u[e],n=r.phase,i=r.name,a=r.args,o=r.time;r.separateBeginAndEnd?f("E",n,i,a,void 0,t):d-o%d<=t-o&&f("X",n,i,a,'"dur":'+(t-o),o)}function f(t,r,a,o,s,l){void 0===l&&(l=1e3*e.timestamp()),2===i&&"checkTypes"===r||(e.performance.mark("beginTracing"),n.writeSync(c,',\n{"pid":1,"tid":1,"ph":"'+t+'","cat":"'+r+'","ts":'+l+',"name":"'+a+'"'),s&&n.writeSync(c,","+s),o&&n.writeSync(c,',"args":'+JSON.stringify(o)),n.writeSync(c,"}"),e.performance.mark("endTracing"),e.performance.measure("Tracing","beginTracing","endTracing"))}function m(e){return{line:e.line+1,character:e.character+1}}t.dumpLegend=function(){o&&n.writeFileSync(o,JSON.stringify(l))}}(e.tracingEnabled||(e.tracingEnabled={}))}(d||(d={})),function(e){e.startTracing=e.tracingEnabled.startTracing}(d||(d={})),function(e){!function(e){e[e.Unknown=0]="Unknown",e[e.EndOfFileToken=1]="EndOfFileToken",e[e.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",e[e.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",e[e.NewLineTrivia=4]="NewLineTrivia",e[e.WhitespaceTrivia=5]="WhitespaceTrivia",e[e.ShebangTrivia=6]="ShebangTrivia",e[e.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",e[e.NumericLiteral=8]="NumericLiteral",e[e.BigIntLiteral=9]="BigIntLiteral",e[e.StringLiteral=10]="StringLiteral",e[e.JsxText=11]="JsxText",e[e.JsxTextAllWhiteSpaces=12]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=13]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=14]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=15]="TemplateHead",e[e.TemplateMiddle=16]="TemplateMiddle",e[e.TemplateTail=17]="TemplateTail",e[e.OpenBraceToken=18]="OpenBraceToken",e[e.CloseBraceToken=19]="CloseBraceToken",e[e.OpenParenToken=20]="OpenParenToken",e[e.CloseParenToken=21]="CloseParenToken",e[e.OpenBracketToken=22]="OpenBracketToken",e[e.CloseBracketToken=23]="CloseBracketToken",e[e.DotToken=24]="DotToken",e[e.DotDotDotToken=25]="DotDotDotToken",e[e.SemicolonToken=26]="SemicolonToken",e[e.CommaToken=27]="CommaToken",e[e.QuestionDotToken=28]="QuestionDotToken",e[e.LessThanToken=29]="LessThanToken",e[e.LessThanSlashToken=30]="LessThanSlashToken",e[e.GreaterThanToken=31]="GreaterThanToken",e[e.LessThanEqualsToken=32]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=33]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=34]="EqualsEqualsToken",e[e.ExclamationEqualsToken=35]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=36]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=37]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=38]="EqualsGreaterThanToken",e[e.PlusToken=39]="PlusToken",e[e.MinusToken=40]="MinusToken",e[e.AsteriskToken=41]="AsteriskToken",e[e.AsteriskAsteriskToken=42]="AsteriskAsteriskToken",e[e.SlashToken=43]="SlashToken",e[e.PercentToken=44]="PercentToken",e[e.PlusPlusToken=45]="PlusPlusToken",e[e.MinusMinusToken=46]="MinusMinusToken",e[e.LessThanLessThanToken=47]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=48]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=49]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=50]="AmpersandToken",e[e.BarToken=51]="BarToken",e[e.CaretToken=52]="CaretToken",e[e.ExclamationToken=53]="ExclamationToken",e[e.TildeToken=54]="TildeToken",e[e.AmpersandAmpersandToken=55]="AmpersandAmpersandToken",e[e.BarBarToken=56]="BarBarToken",e[e.QuestionToken=57]="QuestionToken",e[e.ColonToken=58]="ColonToken",e[e.AtToken=59]="AtToken",e[e.QuestionQuestionToken=60]="QuestionQuestionToken",e[e.BacktickToken=61]="BacktickToken",e[e.EqualsToken=62]="EqualsToken",e[e.PlusEqualsToken=63]="PlusEqualsToken",e[e.MinusEqualsToken=64]="MinusEqualsToken",e[e.AsteriskEqualsToken=65]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=66]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=67]="SlashEqualsToken",e[e.PercentEqualsToken=68]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=69]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=70]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=71]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=72]="AmpersandEqualsToken",e[e.BarEqualsToken=73]="BarEqualsToken",e[e.BarBarEqualsToken=74]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=75]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=76]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=77]="CaretEqualsToken",e[e.Identifier=78]="Identifier",e[e.PrivateIdentifier=79]="PrivateIdentifier",e[e.BreakKeyword=80]="BreakKeyword",e[e.CaseKeyword=81]="CaseKeyword",e[e.CatchKeyword=82]="CatchKeyword",e[e.ClassKeyword=83]="ClassKeyword",e[e.StructKeyword=84]="StructKeyword",e[e.ConstKeyword=85]="ConstKeyword",e[e.ContinueKeyword=86]="ContinueKeyword",e[e.DebuggerKeyword=87]="DebuggerKeyword",e[e.DefaultKeyword=88]="DefaultKeyword",e[e.DeleteKeyword=89]="DeleteKeyword",e[e.DoKeyword=90]="DoKeyword",e[e.ElseKeyword=91]="ElseKeyword",e[e.EnumKeyword=92]="EnumKeyword",e[e.ExportKeyword=93]="ExportKeyword",e[e.ExtendsKeyword=94]="ExtendsKeyword",e[e.FalseKeyword=95]="FalseKeyword",e[e.FinallyKeyword=96]="FinallyKeyword",e[e.ForKeyword=97]="ForKeyword",e[e.FunctionKeyword=98]="FunctionKeyword",e[e.IfKeyword=99]="IfKeyword",e[e.ImportKeyword=100]="ImportKeyword",e[e.InKeyword=101]="InKeyword",e[e.InstanceOfKeyword=102]="InstanceOfKeyword",e[e.NewKeyword=103]="NewKeyword",e[e.NullKeyword=104]="NullKeyword",e[e.ReturnKeyword=105]="ReturnKeyword",e[e.SuperKeyword=106]="SuperKeyword",e[e.SwitchKeyword=107]="SwitchKeyword",e[e.ThisKeyword=108]="ThisKeyword",e[e.ThrowKeyword=109]="ThrowKeyword",e[e.TrueKeyword=110]="TrueKeyword",e[e.TryKeyword=111]="TryKeyword",e[e.TypeOfKeyword=112]="TypeOfKeyword",e[e.VarKeyword=113]="VarKeyword",e[e.VoidKeyword=114]="VoidKeyword",e[e.WhileKeyword=115]="WhileKeyword",e[e.WithKeyword=116]="WithKeyword",e[e.ImplementsKeyword=117]="ImplementsKeyword",e[e.InterfaceKeyword=118]="InterfaceKeyword",e[e.LetKeyword=119]="LetKeyword",e[e.PackageKeyword=120]="PackageKeyword",e[e.PrivateKeyword=121]="PrivateKeyword",e[e.ProtectedKeyword=122]="ProtectedKeyword",e[e.PublicKeyword=123]="PublicKeyword",e[e.StaticKeyword=124]="StaticKeyword",e[e.YieldKeyword=125]="YieldKeyword",e[e.AbstractKeyword=126]="AbstractKeyword",e[e.AsKeyword=127]="AsKeyword",e[e.AssertsKeyword=128]="AssertsKeyword",e[e.AnyKeyword=129]="AnyKeyword",e[e.AsyncKeyword=130]="AsyncKeyword",e[e.AwaitKeyword=131]="AwaitKeyword",e[e.BooleanKeyword=132]="BooleanKeyword",e[e.ConstructorKeyword=133]="ConstructorKeyword",e[e.DeclareKeyword=134]="DeclareKeyword",e[e.GetKeyword=135]="GetKeyword",e[e.InferKeyword=136]="InferKeyword",e[e.IntrinsicKeyword=137]="IntrinsicKeyword",e[e.IsKeyword=138]="IsKeyword",e[e.KeyOfKeyword=139]="KeyOfKeyword",e[e.ModuleKeyword=140]="ModuleKeyword",e[e.NamespaceKeyword=141]="NamespaceKeyword",e[e.NeverKeyword=142]="NeverKeyword",e[e.ReadonlyKeyword=143]="ReadonlyKeyword",e[e.RequireKeyword=144]="RequireKeyword",e[e.NumberKeyword=145]="NumberKeyword",e[e.ObjectKeyword=146]="ObjectKeyword",e[e.SetKeyword=147]="SetKeyword",e[e.StringKeyword=148]="StringKeyword",e[e.SymbolKeyword=149]="SymbolKeyword",e[e.TypeKeyword=150]="TypeKeyword",e[e.UndefinedKeyword=151]="UndefinedKeyword",e[e.UniqueKeyword=152]="UniqueKeyword",e[e.UnknownKeyword=153]="UnknownKeyword",e[e.FromKeyword=154]="FromKeyword",e[e.GlobalKeyword=155]="GlobalKeyword",e[e.BigIntKeyword=156]="BigIntKeyword",e[e.OfKeyword=157]="OfKeyword",e[e.QualifiedName=158]="QualifiedName",e[e.ComputedPropertyName=159]="ComputedPropertyName",e[e.TypeParameter=160]="TypeParameter",e[e.Parameter=161]="Parameter",e[e.Decorator=162]="Decorator",e[e.PropertySignature=163]="PropertySignature",e[e.PropertyDeclaration=164]="PropertyDeclaration",e[e.MethodSignature=165]="MethodSignature",e[e.MethodDeclaration=166]="MethodDeclaration",e[e.Constructor=167]="Constructor",e[e.GetAccessor=168]="GetAccessor",e[e.SetAccessor=169]="SetAccessor",e[e.CallSignature=170]="CallSignature",e[e.ConstructSignature=171]="ConstructSignature",e[e.IndexSignature=172]="IndexSignature",e[e.TypePredicate=173]="TypePredicate",e[e.TypeReference=174]="TypeReference",e[e.FunctionType=175]="FunctionType",e[e.ConstructorType=176]="ConstructorType",e[e.TypeQuery=177]="TypeQuery",e[e.TypeLiteral=178]="TypeLiteral",e[e.ArrayType=179]="ArrayType",e[e.TupleType=180]="TupleType",e[e.OptionalType=181]="OptionalType",e[e.RestType=182]="RestType",e[e.UnionType=183]="UnionType",e[e.IntersectionType=184]="IntersectionType",e[e.ConditionalType=185]="ConditionalType",e[e.InferType=186]="InferType",e[e.ParenthesizedType=187]="ParenthesizedType",e[e.ThisType=188]="ThisType",e[e.TypeOperator=189]="TypeOperator",e[e.IndexedAccessType=190]="IndexedAccessType",e[e.MappedType=191]="MappedType",e[e.LiteralType=192]="LiteralType",e[e.NamedTupleMember=193]="NamedTupleMember",e[e.TemplateLiteralType=194]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=195]="TemplateLiteralTypeSpan",e[e.ImportType=196]="ImportType",e[e.ObjectBindingPattern=197]="ObjectBindingPattern",e[e.ArrayBindingPattern=198]="ArrayBindingPattern",e[e.BindingElement=199]="BindingElement",e[e.ArrayLiteralExpression=200]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=201]="ObjectLiteralExpression",e[e.PropertyAccessExpression=202]="PropertyAccessExpression",e[e.ElementAccessExpression=203]="ElementAccessExpression",e[e.CallExpression=204]="CallExpression",e[e.NewExpression=205]="NewExpression",e[e.TaggedTemplateExpression=206]="TaggedTemplateExpression",e[e.TypeAssertionExpression=207]="TypeAssertionExpression",e[e.ParenthesizedExpression=208]="ParenthesizedExpression",e[e.FunctionExpression=209]="FunctionExpression",e[e.ArrowFunction=210]="ArrowFunction",e[e.EtsComponentExpression=211]="EtsComponentExpression",e[e.DeleteExpression=212]="DeleteExpression",e[e.TypeOfExpression=213]="TypeOfExpression",e[e.VoidExpression=214]="VoidExpression",e[e.AwaitExpression=215]="AwaitExpression",e[e.PrefixUnaryExpression=216]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=217]="PostfixUnaryExpression",e[e.BinaryExpression=218]="BinaryExpression",e[e.ConditionalExpression=219]="ConditionalExpression",e[e.TemplateExpression=220]="TemplateExpression",e[e.YieldExpression=221]="YieldExpression",e[e.SpreadElement=222]="SpreadElement",e[e.ClassExpression=223]="ClassExpression",e[e.OmittedExpression=224]="OmittedExpression",e[e.ExpressionWithTypeArguments=225]="ExpressionWithTypeArguments",e[e.AsExpression=226]="AsExpression",e[e.NonNullExpression=227]="NonNullExpression",e[e.MetaProperty=228]="MetaProperty",e[e.SyntheticExpression=229]="SyntheticExpression",e[e.TemplateSpan=230]="TemplateSpan",e[e.SemicolonClassElement=231]="SemicolonClassElement",e[e.Block=232]="Block",e[e.EmptyStatement=233]="EmptyStatement",e[e.VariableStatement=234]="VariableStatement",e[e.ExpressionStatement=235]="ExpressionStatement",e[e.IfStatement=236]="IfStatement",e[e.DoStatement=237]="DoStatement",e[e.WhileStatement=238]="WhileStatement",e[e.ForStatement=239]="ForStatement",e[e.ForInStatement=240]="ForInStatement",e[e.ForOfStatement=241]="ForOfStatement",e[e.ContinueStatement=242]="ContinueStatement",e[e.BreakStatement=243]="BreakStatement",e[e.ReturnStatement=244]="ReturnStatement",e[e.WithStatement=245]="WithStatement",e[e.SwitchStatement=246]="SwitchStatement",e[e.LabeledStatement=247]="LabeledStatement",e[e.ThrowStatement=248]="ThrowStatement",e[e.TryStatement=249]="TryStatement",e[e.DebuggerStatement=250]="DebuggerStatement",e[e.VariableDeclaration=251]="VariableDeclaration",e[e.VariableDeclarationList=252]="VariableDeclarationList",e[e.FunctionDeclaration=253]="FunctionDeclaration",e[e.ClassDeclaration=254]="ClassDeclaration",e[e.StructDeclaration=255]="StructDeclaration",e[e.InterfaceDeclaration=256]="InterfaceDeclaration",e[e.TypeAliasDeclaration=257]="TypeAliasDeclaration",e[e.EnumDeclaration=258]="EnumDeclaration",e[e.ModuleDeclaration=259]="ModuleDeclaration",e[e.ModuleBlock=260]="ModuleBlock",e[e.CaseBlock=261]="CaseBlock",e[e.NamespaceExportDeclaration=262]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=263]="ImportEqualsDeclaration",e[e.ImportDeclaration=264]="ImportDeclaration",e[e.ImportClause=265]="ImportClause",e[e.NamespaceImport=266]="NamespaceImport",e[e.NamedImports=267]="NamedImports",e[e.ImportSpecifier=268]="ImportSpecifier",e[e.ExportAssignment=269]="ExportAssignment",e[e.ExportDeclaration=270]="ExportDeclaration",e[e.NamedExports=271]="NamedExports",e[e.NamespaceExport=272]="NamespaceExport",e[e.ExportSpecifier=273]="ExportSpecifier",e[e.MissingDeclaration=274]="MissingDeclaration",e[e.ExternalModuleReference=275]="ExternalModuleReference",e[e.JsxElement=276]="JsxElement",e[e.JsxSelfClosingElement=277]="JsxSelfClosingElement",e[e.JsxOpeningElement=278]="JsxOpeningElement",e[e.JsxClosingElement=279]="JsxClosingElement",e[e.JsxFragment=280]="JsxFragment",e[e.JsxOpeningFragment=281]="JsxOpeningFragment",e[e.JsxClosingFragment=282]="JsxClosingFragment",e[e.JsxAttribute=283]="JsxAttribute",e[e.JsxAttributes=284]="JsxAttributes",e[e.JsxSpreadAttribute=285]="JsxSpreadAttribute",e[e.JsxExpression=286]="JsxExpression",e[e.CaseClause=287]="CaseClause",e[e.DefaultClause=288]="DefaultClause",e[e.HeritageClause=289]="HeritageClause",e[e.CatchClause=290]="CatchClause",e[e.PropertyAssignment=291]="PropertyAssignment",e[e.ShorthandPropertyAssignment=292]="ShorthandPropertyAssignment",e[e.SpreadAssignment=293]="SpreadAssignment",e[e.EnumMember=294]="EnumMember",e[e.UnparsedPrologue=295]="UnparsedPrologue",e[e.UnparsedPrepend=296]="UnparsedPrepend",e[e.UnparsedText=297]="UnparsedText",e[e.UnparsedInternalText=298]="UnparsedInternalText",e[e.UnparsedSyntheticReference=299]="UnparsedSyntheticReference",e[e.SourceFile=300]="SourceFile",e[e.Bundle=301]="Bundle",e[e.UnparsedSource=302]="UnparsedSource",e[e.InputFiles=303]="InputFiles",e[e.JSDocTypeExpression=304]="JSDocTypeExpression",e[e.JSDocNameReference=305]="JSDocNameReference",e[e.JSDocAllType=306]="JSDocAllType",e[e.JSDocUnknownType=307]="JSDocUnknownType",e[e.JSDocNullableType=308]="JSDocNullableType",e[e.JSDocNonNullableType=309]="JSDocNonNullableType",e[e.JSDocOptionalType=310]="JSDocOptionalType",e[e.JSDocFunctionType=311]="JSDocFunctionType",e[e.JSDocVariadicType=312]="JSDocVariadicType",e[e.JSDocNamepathType=313]="JSDocNamepathType",e[e.JSDocComment=314]="JSDocComment",e[e.JSDocTypeLiteral=315]="JSDocTypeLiteral",e[e.JSDocSignature=316]="JSDocSignature",e[e.JSDocTag=317]="JSDocTag",e[e.JSDocAugmentsTag=318]="JSDocAugmentsTag",e[e.JSDocImplementsTag=319]="JSDocImplementsTag",e[e.JSDocAuthorTag=320]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=321]="JSDocDeprecatedTag",e[e.JSDocClassTag=322]="JSDocClassTag",e[e.JSDocPublicTag=323]="JSDocPublicTag",e[e.JSDocPrivateTag=324]="JSDocPrivateTag",e[e.JSDocProtectedTag=325]="JSDocProtectedTag",e[e.JSDocReadonlyTag=326]="JSDocReadonlyTag",e[e.JSDocCallbackTag=327]="JSDocCallbackTag",e[e.JSDocEnumTag=328]="JSDocEnumTag",e[e.JSDocParameterTag=329]="JSDocParameterTag",e[e.JSDocReturnTag=330]="JSDocReturnTag",e[e.JSDocThisTag=331]="JSDocThisTag",e[e.JSDocTypeTag=332]="JSDocTypeTag",e[e.JSDocTemplateTag=333]="JSDocTemplateTag",e[e.JSDocTypedefTag=334]="JSDocTypedefTag",e[e.JSDocSeeTag=335]="JSDocSeeTag",e[e.JSDocPropertyTag=336]="JSDocPropertyTag",e[e.SyntaxList=337]="SyntaxList",e[e.NotEmittedStatement=338]="NotEmittedStatement",e[e.PartiallyEmittedExpression=339]="PartiallyEmittedExpression",e[e.CommaListExpression=340]="CommaListExpression",e[e.MergeDeclarationMarker=341]="MergeDeclarationMarker",e[e.EndOfDeclarationMarker=342]="EndOfDeclarationMarker",e[e.SyntheticReferenceExpression=343]="SyntheticReferenceExpression",e[e.Count=344]="Count",e[e.FirstAssignment=62]="FirstAssignment",e[e.LastAssignment=77]="LastAssignment",e[e.FirstCompoundAssignment=63]="FirstCompoundAssignment",e[e.LastCompoundAssignment=77]="LastCompoundAssignment",e[e.FirstReservedWord=80]="FirstReservedWord",e[e.LastReservedWord=116]="LastReservedWord",e[e.FirstKeyword=80]="FirstKeyword",e[e.LastKeyword=157]="LastKeyword",e[e.FirstFutureReservedWord=117]="FirstFutureReservedWord",e[e.LastFutureReservedWord=125]="LastFutureReservedWord",e[e.FirstTypeNode=173]="FirstTypeNode",e[e.LastTypeNode=196]="LastTypeNode",e[e.FirstPunctuation=18]="FirstPunctuation",e[e.LastPunctuation=77]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=157]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=8]="FirstLiteralToken",e[e.LastLiteralToken=14]="LastLiteralToken",e[e.FirstTemplateToken=14]="FirstTemplateToken",e[e.LastTemplateToken=17]="LastTemplateToken",e[e.FirstBinaryOperator=29]="FirstBinaryOperator",e[e.LastBinaryOperator=77]="LastBinaryOperator",e[e.FirstStatement=234]="FirstStatement",e[e.LastStatement=250]="LastStatement",e[e.FirstNode=158]="FirstNode",e[e.FirstJSDocNode=304]="FirstJSDocNode",e[e.LastJSDocNode=336]="LastJSDocNode",e[e.FirstJSDocTagNode=317]="FirstJSDocTagNode",e[e.LastJSDocTagNode=336]="LastJSDocTagNode",e[e.FirstContextualKeyword=126]="FirstContextualKeyword",e[e.LastContextualKeyword=157]="LastContextualKeyword"}(e.SyntaxKind||(e.SyntaxKind={})),function(e){e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.NestedNamespace=4]="NestedNamespace",e[e.Synthesized=8]="Synthesized",e[e.Namespace=16]="Namespace",e[e.OptionalChain=32]="OptionalChain",e[e.ExportContext=64]="ExportContext",e[e.ContainsThis=128]="ContainsThis",e[e.HasImplicitReturn=256]="HasImplicitReturn",e[e.HasExplicitReturn=512]="HasExplicitReturn",e[e.GlobalAugmentation=1024]="GlobalAugmentation",e[e.HasAsyncFunctions=2048]="HasAsyncFunctions",e[e.DisallowInContext=4096]="DisallowInContext",e[e.YieldContext=8192]="YieldContext",e[e.DecoratorContext=16384]="DecoratorContext",e[e.AwaitContext=32768]="AwaitContext",e[e.ThisNodeHasError=65536]="ThisNodeHasError",e[e.JavaScriptFile=131072]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=262144]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=524288]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=1048576]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=2097152]="PossiblyContainsImportMeta",e[e.JSDoc=4194304]="JSDoc",e[e.Ambient=8388608]="Ambient",e[e.InWithStatement=16777216]="InWithStatement",e[e.JsonFile=33554432]="JsonFile",e[e.TypeCached=67108864]="TypeCached",e[e.Deprecated=134217728]="Deprecated",e[e.EtsContext=1073741824]="EtsContext",e[e.BlockScoped=3]="BlockScoped",e[e.ReachabilityCheckFlags=768]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=2816]="ReachabilityAndEmitFlags",e[e.ContextFlags=1099100160]="ContextFlags",e[e.TypeExcludesFlags=40960]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=3145728]="PermanentlySetIncrementalFlags"}(e.NodeFlags||(e.NodeFlags={})),function(e){e[e.None=0]="None",e[e.StructContext=2]="StructContext",e[e.EtsExtendComponentsContext=4]="EtsExtendComponentsContext",e[e.EtsStylesComponentsContext=8]="EtsStylesComponentsContext",e[e.EtsBuildContext=16]="EtsBuildContext",e[e.EtsBuilderContext=32]="EtsBuilderContext",e[e.EtsStateStylesContext=64]="EtsStateStylesContext",e[e.EtsComponentsContext=128]="EtsComponentsContext",e[e.EtsNewExpressionContext=256]="EtsNewExpressionContext"}(e.EtsFlags||(e.EtsFlags={})),function(e){e[e.None=0]="None",e[e.Export=1]="Export",e[e.Ambient=2]="Ambient",e[e.Public=4]="Public",e[e.Private=8]="Private",e[e.Protected=16]="Protected",e[e.Static=32]="Static",e[e.Readonly=64]="Readonly",e[e.Abstract=128]="Abstract",e[e.Async=256]="Async",e[e.Default=512]="Default",e[e.Const=2048]="Const",e[e.HasComputedJSDocModifiers=4096]="HasComputedJSDocModifiers",e[e.Deprecated=8192]="Deprecated",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=28]="AccessibilityModifier",e[e.ParameterPropertyModifier=92]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=24]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=2270]="TypeScriptModifier",e[e.ExportDefault=513]="ExportDefault",e[e.All=11263]="All"}(e.ModifierFlags||(e.ModifierFlags={})),function(e){e[e.None=0]="None",e[e.IntrinsicNamedElement=1]="IntrinsicNamedElement",e[e.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",e[e.IntrinsicElement=3]="IntrinsicElement"}(e.JsxFlags||(e.JsxFlags={})),function(e){e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.Reported=4]="Reported",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask"}(e.RelationComparisonResult||(e.RelationComparisonResult={})),function(e){e[e.None=0]="None",e[e.Auto=1]="Auto",e[e.Loop=2]="Loop",e[e.Unique=3]="Unique",e[e.Node=4]="Node",e[e.KindMask=7]="KindMask",e[e.ReservedInNestedScopes=8]="ReservedInNestedScopes",e[e.Optimistic=16]="Optimistic",e[e.FileLevel=32]="FileLevel",e[e.AllowNameSubstitution=64]="AllowNameSubstitution"}(e.GeneratedIdentifierFlags||(e.GeneratedIdentifierFlags={})),function(e){e[e.None=0]="None",e[e.PrecedingLineBreak=1]="PrecedingLineBreak",e[e.PrecedingJSDocComment=2]="PrecedingJSDocComment",e[e.Unterminated=4]="Unterminated",e[e.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",e[e.Scientific=16]="Scientific",e[e.Octal=32]="Octal",e[e.HexSpecifier=64]="HexSpecifier",e[e.BinarySpecifier=128]="BinarySpecifier",e[e.OctalSpecifier=256]="OctalSpecifier",e[e.ContainsSeparator=512]="ContainsSeparator",e[e.UnicodeEscape=1024]="UnicodeEscape",e[e.ContainsInvalidEscape=2048]="ContainsInvalidEscape",e[e.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",e[e.NumericLiteralFlags=1008]="NumericLiteralFlags",e[e.TemplateLiteralLikeFlags=2048]="TemplateLiteralLikeFlags"}(e.TokenFlags||(e.TokenFlags={})),function(e){e[e.Unreachable=1]="Unreachable",e[e.Start=2]="Start",e[e.BranchLabel=4]="BranchLabel",e[e.LoopLabel=8]="LoopLabel",e[e.Assignment=16]="Assignment",e[e.TrueCondition=32]="TrueCondition",e[e.FalseCondition=64]="FalseCondition",e[e.SwitchClause=128]="SwitchClause",e[e.ArrayMutation=256]="ArrayMutation",e[e.Call=512]="Call",e[e.ReduceLabel=1024]="ReduceLabel",e[e.Referenced=2048]="Referenced",e[e.Shared=4096]="Shared",e[e.Label=12]="Label",e[e.Condition=96]="Condition"}(e.FlowFlags||(e.FlowFlags={})),function(e){e[e.ExpectError=0]="ExpectError",e[e.Ignore=1]="Ignore"}(e.CommentDirectiveType||(e.CommentDirectiveType={}));var t,r=function(){};e.OperationCanceledException=r,function(e){e[e.RootFile=0]="RootFile",e[e.SourceFromProjectReference=1]="SourceFromProjectReference",e[e.OutputFromProjectReference=2]="OutputFromProjectReference",e[e.Import=3]="Import",e[e.ReferenceFile=4]="ReferenceFile",e[e.TypeReferenceDirective=5]="TypeReferenceDirective",e[e.LibFile=6]="LibFile",e[e.LibReferenceDirective=7]="LibReferenceDirective",e[e.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile"}(e.FileIncludeKind||(e.FileIncludeKind={})),function(e){e[e.FilePreprocessingReferencedDiagnostic=0]="FilePreprocessingReferencedDiagnostic",e[e.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic"}(e.FilePreprocessingDiagnosticsKind||(e.FilePreprocessingDiagnosticsKind={})),function(e){e[e.Not=0]="Not",e[e.SafeModules=1]="SafeModules",e[e.Completely=2]="Completely"}(e.StructureIsReused||(e.StructureIsReused={})),function(e){e[e.Success=0]="Success",e[e.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",e[e.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",e[e.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",e[e.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",e[e.ProjectReferenceCycle_OutputsSkupped=4]="ProjectReferenceCycle_OutputsSkupped"}(e.ExitStatus||(e.ExitStatus={})),function(e){e[e.None=0]="None",e[e.Literal=1]="Literal",e[e.Subtype=2]="Subtype"}(e.UnionReduction||(e.UnionReduction={})),function(e){e[e.None=0]="None",e[e.Signature=1]="Signature",e[e.NoConstraints=2]="NoConstraints",e[e.Completions=4]="Completions",e[e.SkipBindingPatterns=8]="SkipBindingPatterns"}(e.ContextFlags||(e.ContextFlags={})),function(e){e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.NoUndefinedOptionalParameterType=1073741824]="NoUndefinedOptionalParameterType",e[e.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",e[e.AllowQualifedNameInPlaceOfIdentifier=65536]="AllowQualifedNameInPlaceOfIdentifier",e[e.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",e[e.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",e[e.AllowEmptyTuple=524288]="AllowEmptyTuple",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",e[e.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",e[e.DoNotIncludeSymbolChain=134217728]="DoNotIncludeSymbolChain",e[e.IgnoreErrors=70221824]="IgnoreErrors",e[e.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.InInitialEntityName=16777216]="InInitialEntityName",e[e.InReverseMappedType=33554432]="InReverseMappedType"}(e.NodeBuilderFlags||(e.NodeBuilderFlags={})),function(e){e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AddUndefined=131072]="AddUndefined",e[e.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",e[e.InArrayType=524288]="InArrayType",e[e.InElementType=2097152]="InElementType",e[e.InFirstTypeArgument=4194304]="InFirstTypeArgument",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.WriteOwnNameForAnyLike=0]="WriteOwnNameForAnyLike",e[e.NodeBuilderFlagsMask=814775659]="NodeBuilderFlagsMask"}(e.TypeFormatFlags||(e.TypeFormatFlags={})),function(e){e[e.None=0]="None",e[e.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",e[e.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",e[e.AllowAnyNodeKind=4]="AllowAnyNodeKind",e[e.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",e[e.DoNotIncludeSymbolChain=16]="DoNotIncludeSymbolChain"}(e.SymbolFormatFlags||(e.SymbolFormatFlags={})),function(e){e[e.Accessible=0]="Accessible",e[e.NotAccessible=1]="NotAccessible",e[e.CannotBeNamed=2]="CannotBeNamed"}(e.SymbolAccessibility||(e.SymbolAccessibility={})),function(e){e[e.UnionOrIntersection=0]="UnionOrIntersection",e[e.Spread=1]="Spread"}(e.SyntheticSymbolKind||(e.SyntheticSymbolKind={})),function(e){e[e.This=0]="This",e[e.Identifier=1]="Identifier",e[e.AssertsThis=2]="AssertsThis",e[e.AssertsIdentifier=3]="AssertsIdentifier"}(e.TypePredicateKind||(e.TypePredicateKind={})),function(e){e[e.Unknown=0]="Unknown",e[e.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",e[e.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",e[e.NumberLikeType=3]="NumberLikeType",e[e.BigIntLikeType=4]="BigIntLikeType",e[e.StringLikeType=5]="StringLikeType",e[e.BooleanType=6]="BooleanType",e[e.ArrayLikeType=7]="ArrayLikeType",e[e.ESSymbolType=8]="ESSymbolType",e[e.Promise=9]="Promise",e[e.TypeWithCallSignature=10]="TypeWithCallSignature",e[e.ObjectType=11]="ObjectType"}(e.TypeReferenceSerializationKind||(e.TypeReferenceSerializationKind={})),function(e){e[e.None=0]="None",e[e.FunctionScopedVariable=1]="FunctionScopedVariable",e[e.BlockScopedVariable=2]="BlockScopedVariable",e[e.Property=4]="Property",e[e.EnumMember=8]="EnumMember",e[e.Function=16]="Function",e[e.Class=32]="Class",e[e.Interface=64]="Interface",e[e.ConstEnum=128]="ConstEnum",e[e.RegularEnum=256]="RegularEnum",e[e.ValueModule=512]="ValueModule",e[e.NamespaceModule=1024]="NamespaceModule",e[e.TypeLiteral=2048]="TypeLiteral",e[e.ObjectLiteral=4096]="ObjectLiteral",e[e.Method=8192]="Method",e[e.Constructor=16384]="Constructor",e[e.GetAccessor=32768]="GetAccessor",e[e.SetAccessor=65536]="SetAccessor",e[e.Signature=131072]="Signature",e[e.TypeParameter=262144]="TypeParameter",e[e.TypeAlias=524288]="TypeAlias",e[e.ExportValue=1048576]="ExportValue",e[e.Alias=2097152]="Alias",e[e.Prototype=4194304]="Prototype",e[e.ExportStar=8388608]="ExportStar",e[e.Optional=16777216]="Optional",e[e.Transient=33554432]="Transient",e[e.Assignment=67108864]="Assignment",e[e.ModuleExports=134217728]="ModuleExports",e[e.All=67108863]="All",e[e.Enum=384]="Enum",e[e.Variable=3]="Variable",e[e.Value=111551]="Value",e[e.Type=788968]="Type",e[e.Namespace=1920]="Namespace",e[e.Module=1536]="Module",e[e.Accessor=98304]="Accessor",e[e.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",e[e.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",e[e.ParameterExcludes=111551]="ParameterExcludes",e[e.PropertyExcludes=0]="PropertyExcludes",e[e.EnumMemberExcludes=900095]="EnumMemberExcludes",e[e.FunctionExcludes=110991]="FunctionExcludes",e[e.ClassExcludes=899503]="ClassExcludes",e[e.InterfaceExcludes=788872]="InterfaceExcludes",e[e.RegularEnumExcludes=899327]="RegularEnumExcludes",e[e.ConstEnumExcludes=899967]="ConstEnumExcludes",e[e.ValueModuleExcludes=110735]="ValueModuleExcludes",e[e.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",e[e.MethodExcludes=103359]="MethodExcludes",e[e.GetAccessorExcludes=46015]="GetAccessorExcludes",e[e.SetAccessorExcludes=78783]="SetAccessorExcludes",e[e.TypeParameterExcludes=526824]="TypeParameterExcludes",e[e.TypeAliasExcludes=788968]="TypeAliasExcludes",e[e.AliasExcludes=2097152]="AliasExcludes",e[e.ModuleMember=2623475]="ModuleMember",e[e.ExportHasLocal=944]="ExportHasLocal",e[e.BlockScoped=418]="BlockScoped",e[e.PropertyOrAccessor=98308]="PropertyOrAccessor",e[e.ClassMember=106500]="ClassMember",e[e.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",e[e.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",e[e.Classifiable=2885600]="Classifiable",e[e.LateBindingContainer=6256]="LateBindingContainer"}(e.SymbolFlags||(e.SymbolFlags={})),function(e){e[e.Numeric=0]="Numeric",e[e.Literal=1]="Literal"}(e.EnumKind||(e.EnumKind={})),function(e){e[e.Instantiated=1]="Instantiated",e[e.SyntheticProperty=2]="SyntheticProperty",e[e.SyntheticMethod=4]="SyntheticMethod",e[e.Readonly=8]="Readonly",e[e.ReadPartial=16]="ReadPartial",e[e.WritePartial=32]="WritePartial",e[e.HasNonUniformType=64]="HasNonUniformType",e[e.HasLiteralType=128]="HasLiteralType",e[e.ContainsPublic=256]="ContainsPublic",e[e.ContainsProtected=512]="ContainsProtected",e[e.ContainsPrivate=1024]="ContainsPrivate",e[e.ContainsStatic=2048]="ContainsStatic",e[e.Late=4096]="Late",e[e.ReverseMapped=8192]="ReverseMapped",e[e.OptionalParameter=16384]="OptionalParameter",e[e.RestParameter=32768]="RestParameter",e[e.DeferredType=65536]="DeferredType",e[e.HasNeverType=131072]="HasNeverType",e[e.Mapped=262144]="Mapped",e[e.StripOptional=524288]="StripOptional",e[e.Synthetic=6]="Synthetic",e[e.Discriminant=192]="Discriminant",e[e.Partial=48]="Partial"}(e.CheckFlags||(e.CheckFlags={})),function(e){e.Call="__call",e.Constructor="__constructor",e.New="__new",e.Index="__index",e.ExportStar="__export",e.Global="__global",e.Missing="__missing",e.Type="__type",e.Object="__object",e.JSXAttributes="__jsxAttributes",e.Class="__class",e.Function="__function",e.Computed="__computed",e.Resolving="__resolving__",e.ExportEquals="export=",e.Default="default",e.This="this"}(e.InternalSymbolName||(e.InternalSymbolName={})),function(e){e[e.TypeChecked=1]="TypeChecked",e[e.LexicalThis=2]="LexicalThis",e[e.CaptureThis=4]="CaptureThis",e[e.CaptureNewTarget=8]="CaptureNewTarget",e[e.SuperInstance=256]="SuperInstance",e[e.SuperStatic=512]="SuperStatic",e[e.ContextChecked=1024]="ContextChecked",e[e.AsyncMethodWithSuper=2048]="AsyncMethodWithSuper",e[e.AsyncMethodWithSuperBinding=4096]="AsyncMethodWithSuperBinding",e[e.CaptureArguments=8192]="CaptureArguments",e[e.EnumValuesComputed=16384]="EnumValuesComputed",e[e.LexicalModuleMergesWithClass=32768]="LexicalModuleMergesWithClass",e[e.LoopWithCapturedBlockScopedBinding=65536]="LoopWithCapturedBlockScopedBinding",e[e.ContainsCapturedBlockScopeBinding=131072]="ContainsCapturedBlockScopeBinding",e[e.CapturedBlockScopedBinding=262144]="CapturedBlockScopedBinding",e[e.BlockScopedBindingInLoop=524288]="BlockScopedBindingInLoop",e[e.ClassWithBodyScopedClassBinding=1048576]="ClassWithBodyScopedClassBinding",e[e.BodyScopedClassBinding=2097152]="BodyScopedClassBinding",e[e.NeedsLoopOutParameter=4194304]="NeedsLoopOutParameter",e[e.AssignmentsMarked=8388608]="AssignmentsMarked",e[e.ClassWithConstructorReference=16777216]="ClassWithConstructorReference",e[e.ConstructorReferenceInClass=33554432]="ConstructorReferenceInClass",e[e.ContainsClassWithPrivateIdentifiers=67108864]="ContainsClassWithPrivateIdentifiers"}(e.NodeCheckFlags||(e.NodeCheckFlags={})),function(e){e[e.Any=1]="Any",e[e.Unknown=2]="Unknown",e[e.String=4]="String",e[e.Number=8]="Number",e[e.Boolean=16]="Boolean",e[e.Enum=32]="Enum",e[e.BigInt=64]="BigInt",e[e.StringLiteral=128]="StringLiteral",e[e.NumberLiteral=256]="NumberLiteral",e[e.BooleanLiteral=512]="BooleanLiteral",e[e.EnumLiteral=1024]="EnumLiteral",e[e.BigIntLiteral=2048]="BigIntLiteral",e[e.ESSymbol=4096]="ESSymbol",e[e.UniqueESSymbol=8192]="UniqueESSymbol",e[e.Void=16384]="Void",e[e.Undefined=32768]="Undefined",e[e.Null=65536]="Null",e[e.Never=131072]="Never",e[e.TypeParameter=262144]="TypeParameter",e[e.Object=524288]="Object",e[e.Union=1048576]="Union",e[e.Intersection=2097152]="Intersection",e[e.Index=4194304]="Index",e[e.IndexedAccess=8388608]="IndexedAccess",e[e.Conditional=16777216]="Conditional",e[e.Substitution=33554432]="Substitution",e[e.NonPrimitive=67108864]="NonPrimitive",e[e.TemplateLiteral=134217728]="TemplateLiteral",e[e.StringMapping=268435456]="StringMapping",e[e.AnyOrUnknown=3]="AnyOrUnknown",e[e.Nullable=98304]="Nullable",e[e.Literal=2944]="Literal",e[e.Unit=109440]="Unit",e[e.StringOrNumberLiteral=384]="StringOrNumberLiteral",e[e.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",e[e.DefinitelyFalsy=117632]="DefinitelyFalsy",e[e.PossiblyFalsy=117724]="PossiblyFalsy",e[e.Intrinsic=67359327]="Intrinsic",e[e.Primitive=131068]="Primitive",e[e.StringLike=402653316]="StringLike",e[e.NumberLike=296]="NumberLike",e[e.BigIntLike=2112]="BigIntLike",e[e.BooleanLike=528]="BooleanLike",e[e.EnumLike=1056]="EnumLike",e[e.ESSymbolLike=12288]="ESSymbolLike",e[e.VoidLike=49152]="VoidLike",e[e.DisjointDomains=469892092]="DisjointDomains",e[e.UnionOrIntersection=3145728]="UnionOrIntersection",e[e.StructuredType=3670016]="StructuredType",e[e.TypeVariable=8650752]="TypeVariable",e[e.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",e[e.InstantiablePrimitive=406847488]="InstantiablePrimitive",e[e.Instantiable=465829888]="Instantiable",e[e.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",e[e.ObjectFlagsType=3899393]="ObjectFlagsType",e[e.Simplifiable=25165824]="Simplifiable",e[e.Substructure=469237760]="Substructure",e[e.Narrowable=536624127]="Narrowable",e[e.NotPrimitiveUnion=468598819]="NotPrimitiveUnion",e[e.IncludesMask=205258751]="IncludesMask",e[e.IncludesStructuredOrInstantiable=262144]="IncludesStructuredOrInstantiable",e[e.IncludesNonWideningType=4194304]="IncludesNonWideningType",e[e.IncludesWildcard=8388608]="IncludesWildcard",e[e.IncludesEmptyObject=16777216]="IncludesEmptyObject"}(e.TypeFlags||(e.TypeFlags={})),function(e){e[e.Class=1]="Class",e[e.Interface=2]="Interface",e[e.Reference=4]="Reference",e[e.Tuple=8]="Tuple",e[e.Anonymous=16]="Anonymous",e[e.Mapped=32]="Mapped",e[e.Instantiated=64]="Instantiated",e[e.ObjectLiteral=128]="ObjectLiteral",e[e.EvolvingArray=256]="EvolvingArray",e[e.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",e[e.ContainsSpread=1024]="ContainsSpread",e[e.ReverseMapped=2048]="ReverseMapped",e[e.JsxAttributes=4096]="JsxAttributes",e[e.MarkerType=8192]="MarkerType",e[e.JSLiteral=16384]="JSLiteral",e[e.FreshLiteral=32768]="FreshLiteral",e[e.ArrayLiteral=65536]="ArrayLiteral",e[e.ObjectRestType=131072]="ObjectRestType",e[e.PrimitiveUnion=262144]="PrimitiveUnion",e[e.ContainsWideningType=524288]="ContainsWideningType",e[e.ContainsObjectOrArrayLiteral=1048576]="ContainsObjectOrArrayLiteral",e[e.NonInferrableType=2097152]="NonInferrableType",e[e.IsGenericObjectTypeComputed=4194304]="IsGenericObjectTypeComputed",e[e.IsGenericObjectType=8388608]="IsGenericObjectType",e[e.IsGenericIndexTypeComputed=16777216]="IsGenericIndexTypeComputed",e[e.IsGenericIndexType=33554432]="IsGenericIndexType",e[e.CouldContainTypeVariablesComputed=67108864]="CouldContainTypeVariablesComputed",e[e.CouldContainTypeVariables=134217728]="CouldContainTypeVariables",e[e.ContainsIntersections=268435456]="ContainsIntersections",e[e.IsNeverIntersectionComputed=268435456]="IsNeverIntersectionComputed",e[e.IsNeverIntersection=536870912]="IsNeverIntersection",e[e.IsClassInstanceClone=1073741824]="IsClassInstanceClone",e[e.ClassOrInterface=3]="ClassOrInterface",e[e.RequiresWidening=1572864]="RequiresWidening",e[e.PropagatingFlags=3670016]="PropagatingFlags",e[e.ObjectTypeKindMask=2367]="ObjectTypeKindMask"}(e.ObjectFlags||(e.ObjectFlags={})),function(e){e[e.Invariant=0]="Invariant",e[e.Covariant=1]="Covariant",e[e.Contravariant=2]="Contravariant",e[e.Bivariant=3]="Bivariant",e[e.Independent=4]="Independent",e[e.VarianceMask=7]="VarianceMask",e[e.Unmeasurable=8]="Unmeasurable",e[e.Unreliable=16]="Unreliable",e[e.AllowsStructuralFallback=24]="AllowsStructuralFallback"}(e.VarianceFlags||(e.VarianceFlags={})),function(e){e[e.Required=1]="Required",e[e.Optional=2]="Optional",e[e.Rest=4]="Rest",e[e.Variadic=8]="Variadic",e[e.Fixed=3]="Fixed",e[e.Variable=12]="Variable",e[e.NonRequired=14]="NonRequired",e[e.NonRest=11]="NonRest"}(e.ElementFlags||(e.ElementFlags={})),function(e){e[e.Component=0]="Component",e[e.Function=1]="Function",e[e.Mixed=2]="Mixed"}(e.JsxReferenceKind||(e.JsxReferenceKind={})),function(e){e[e.Call=0]="Call",e[e.Construct=1]="Construct"}(e.SignatureKind||(e.SignatureKind={})),function(e){e[e.None=0]="None",e[e.HasRestParameter=1]="HasRestParameter",e[e.HasLiteralTypes=2]="HasLiteralTypes",e[e.Abstract=4]="Abstract",e[e.IsInnerCallChain=8]="IsInnerCallChain",e[e.IsOuterCallChain=16]="IsOuterCallChain",e[e.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",e[e.PropagatingFlags=39]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags"}(e.SignatureFlags||(e.SignatureFlags={})),function(e){e[e.String=0]="String",e[e.Number=1]="Number"}(e.IndexKind||(e.IndexKind={})),function(e){e[e.Simple=0]="Simple",e[e.Array=1]="Array",e[e.Function=2]="Function",e[e.Composite=3]="Composite",e[e.Merged=4]="Merged"}(e.TypeMapKind||(e.TypeMapKind={})),function(e){e[e.NakedTypeVariable=1]="NakedTypeVariable",e[e.SpeculativeTuple=2]="SpeculativeTuple",e[e.HomomorphicMappedType=4]="HomomorphicMappedType",e[e.PartialHomomorphicMappedType=8]="PartialHomomorphicMappedType",e[e.MappedTypeConstraint=16]="MappedTypeConstraint",e[e.ContravariantConditional=32]="ContravariantConditional",e[e.ReturnType=64]="ReturnType",e[e.LiteralKeyof=128]="LiteralKeyof",e[e.NoConstraints=256]="NoConstraints",e[e.AlwaysStrict=512]="AlwaysStrict",e[e.MaxValue=1024]="MaxValue",e[e.PriorityImpliesCombination=208]="PriorityImpliesCombination",e[e.Circularity=-1]="Circularity"}(e.InferencePriority||(e.InferencePriority={})),function(e){e[e.None=0]="None",e[e.NoDefault=1]="NoDefault",e[e.AnyDefault=2]="AnyDefault",e[e.SkippedGenericFunction=4]="SkippedGenericFunction"}(e.InferenceFlags||(e.InferenceFlags={})),function(e){e[e.False=0]="False",e[e.Unknown=1]="Unknown",e[e.Maybe=3]="Maybe",e[e.True=-1]="True"}(e.Ternary||(e.Ternary={})),function(e){e[e.None=0]="None",e[e.ExportsProperty=1]="ExportsProperty",e[e.ModuleExports=2]="ModuleExports",e[e.PrototypeProperty=3]="PrototypeProperty",e[e.ThisProperty=4]="ThisProperty",e[e.Property=5]="Property",e[e.Prototype=6]="Prototype",e[e.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",e[e.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",e[e.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty"}(e.AssignmentDeclarationKind||(e.AssignmentDeclarationKind={})),function(e){e[e.Warning=0]="Warning",e[e.Error=1]="Error",e[e.Suggestion=2]="Suggestion",e[e.Message=3]="Message"}(t=e.DiagnosticCategory||(e.DiagnosticCategory={})),e.diagnosticCategoryName=function(e,r){void 0===r&&(r=!0);var n=t[e.category];return r?n.toLowerCase():n},function(e){e[e.Classic=1]="Classic",e[e.NodeJs=2]="NodeJs"}(e.ModuleResolutionKind||(e.ModuleResolutionKind={})),function(e){e[e.FixedPollingInterval=0]="FixedPollingInterval",e[e.PriorityPollingInterval=1]="PriorityPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.UseFsEvents=3]="UseFsEvents",e[e.UseFsEventsOnParentDirectory=4]="UseFsEventsOnParentDirectory"}(e.WatchFileKind||(e.WatchFileKind={})),function(e){e[e.UseFsEvents=0]="UseFsEvents",e[e.FixedPollingInterval=1]="FixedPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling"}(e.WatchDirectoryKind||(e.WatchDirectoryKind={})),function(e){e[e.FixedInterval=0]="FixedInterval",e[e.PriorityInterval=1]="PriorityInterval",e[e.DynamicPriority=2]="DynamicPriority"}(e.PollingWatchKind||(e.PollingWatchKind={})),function(e){e[e.None=0]="None",e[e.CommonJS=1]="CommonJS",e[e.AMD=2]="AMD",e[e.UMD=3]="UMD",e[e.System=4]="System",e[e.ES2015=5]="ES2015",e[e.ES2020=6]="ES2020",e[e.ESNext=99]="ESNext"}(e.ModuleKind||(e.ModuleKind={})),function(e){e[e.None=0]="None",e[e.Preserve=1]="Preserve",e[e.React=2]="React",e[e.ReactNative=3]="ReactNative",e[e.ReactJSX=4]="ReactJSX",e[e.ReactJSXDev=5]="ReactJSXDev"}(e.JsxEmit||(e.JsxEmit={})),function(e){e[e.Remove=0]="Remove",e[e.Preserve=1]="Preserve",e[e.Error=2]="Error"}(e.ImportsNotUsedAsValues||(e.ImportsNotUsedAsValues={})),function(e){e[e.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",e[e.LineFeed=1]="LineFeed"}(e.NewLineKind||(e.NewLineKind={})),function(e){e[e.Unknown=0]="Unknown",e[e.JS=1]="JS",e[e.JSX=2]="JSX",e[e.TS=3]="TS",e[e.TSX=4]="TSX",e[e.External=5]="External",e[e.JSON=6]="JSON",e[e.Deferred=7]="Deferred",e[e.ETS=8]="ETS"}(e.ScriptKind||(e.ScriptKind={})),function(e){e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest"}(e.ScriptTarget||(e.ScriptTarget={})),function(e){e[e.Standard=0]="Standard",e[e.JSX=1]="JSX"}(e.LanguageVariant||(e.LanguageVariant={})),function(e){e[e.None=0]="None",e[e.Recursive=1]="Recursive"}(e.WatchDirectoryFlags||(e.WatchDirectoryFlags={})),function(e){e[e.nullCharacter=0]="nullCharacter",e[e.maxAsciiCharacter=127]="maxAsciiCharacter",e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.lineSeparator=8232]="lineSeparator",e[e.paragraphSeparator=8233]="paragraphSeparator",e[e.nextLine=133]="nextLine",e[e.space=32]="space",e[e.nonBreakingSpace=160]="nonBreakingSpace",e[e.enQuad=8192]="enQuad",e[e.emQuad=8193]="emQuad",e[e.enSpace=8194]="enSpace",e[e.emSpace=8195]="emSpace",e[e.threePerEmSpace=8196]="threePerEmSpace",e[e.fourPerEmSpace=8197]="fourPerEmSpace",e[e.sixPerEmSpace=8198]="sixPerEmSpace",e[e.figureSpace=8199]="figureSpace",e[e.punctuationSpace=8200]="punctuationSpace",e[e.thinSpace=8201]="thinSpace",e[e.hairSpace=8202]="hairSpace",e[e.zeroWidthSpace=8203]="zeroWidthSpace",e[e.narrowNoBreakSpace=8239]="narrowNoBreakSpace",e[e.ideographicSpace=12288]="ideographicSpace",e[e.mathematicalSpace=8287]="mathematicalSpace",e[e.ogham=5760]="ogham",e[e._=95]="_",e[e.$=36]="$",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.ampersand=38]="ampersand",e[e.asterisk=42]="asterisk",e[e.at=64]="at",e[e.backslash=92]="backslash",e[e.backtick=96]="backtick",e[e.bar=124]="bar",e[e.caret=94]="caret",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.closeParen=41]="closeParen",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.equals=61]="equals",e[e.exclamation=33]="exclamation",e[e.greaterThan=62]="greaterThan",e[e.hash=35]="hash",e[e.lessThan=60]="lessThan",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.openParen=40]="openParen",e[e.percent=37]="percent",e[e.plus=43]="plus",e[e.question=63]="question",e[e.semicolon=59]="semicolon",e[e.singleQuote=39]="singleQuote",e[e.slash=47]="slash",e[e.tilde=126]="tilde",e[e.backspace=8]="backspace",e[e.formFeed=12]="formFeed",e[e.byteOrderMark=65279]="byteOrderMark",e[e.tab=9]="tab",e[e.verticalTab=11]="verticalTab"}(e.CharacterCodes||(e.CharacterCodes={})),function(e){e.Ts=".ts",e.Tsx=".tsx",e.Dts=".d.ts",e.Js=".js",e.Jsx=".jsx",e.Json=".json",e.TsBuildInfo=".tsbuildinfo",e.Ets=".ets",e.Dets=".d.ets"}(e.Extension||(e.Extension={})),function(e){e[e.None=0]="None",e[e.ContainsTypeScript=1]="ContainsTypeScript",e[e.ContainsJsx=2]="ContainsJsx",e[e.ContainsESNext=4]="ContainsESNext",e[e.ContainsES2020=8]="ContainsES2020",e[e.ContainsES2019=16]="ContainsES2019",e[e.ContainsES2018=32]="ContainsES2018",e[e.ContainsES2017=64]="ContainsES2017",e[e.ContainsES2016=128]="ContainsES2016",e[e.ContainsES2015=256]="ContainsES2015",e[e.ContainsGenerator=512]="ContainsGenerator",e[e.ContainsDestructuringAssignment=1024]="ContainsDestructuringAssignment",e[e.ContainsTypeScriptClassSyntax=2048]="ContainsTypeScriptClassSyntax",e[e.ContainsLexicalThis=4096]="ContainsLexicalThis",e[e.ContainsRestOrSpread=8192]="ContainsRestOrSpread",e[e.ContainsObjectRestOrSpread=16384]="ContainsObjectRestOrSpread",e[e.ContainsComputedPropertyName=32768]="ContainsComputedPropertyName",e[e.ContainsBlockScopedBinding=65536]="ContainsBlockScopedBinding",e[e.ContainsBindingPattern=131072]="ContainsBindingPattern",e[e.ContainsYield=262144]="ContainsYield",e[e.ContainsAwait=524288]="ContainsAwait",e[e.ContainsHoistedDeclarationOrCompletion=1048576]="ContainsHoistedDeclarationOrCompletion",e[e.ContainsDynamicImport=2097152]="ContainsDynamicImport",e[e.ContainsClassFields=4194304]="ContainsClassFields",e[e.ContainsPossibleTopLevelAwait=8388608]="ContainsPossibleTopLevelAwait",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AssertTypeScript=1]="AssertTypeScript",e[e.AssertJsx=2]="AssertJsx",e[e.AssertESNext=4]="AssertESNext",e[e.AssertES2020=8]="AssertES2020",e[e.AssertES2019=16]="AssertES2019",e[e.AssertES2018=32]="AssertES2018",e[e.AssertES2017=64]="AssertES2017",e[e.AssertES2016=128]="AssertES2016",e[e.AssertES2015=256]="AssertES2015",e[e.AssertGenerator=512]="AssertGenerator",e[e.AssertDestructuringAssignment=1024]="AssertDestructuringAssignment",e[e.OuterExpressionExcludes=536870912]="OuterExpressionExcludes",e[e.PropertyAccessExcludes=536870912]="PropertyAccessExcludes",e[e.NodeExcludes=536870912]="NodeExcludes",e[e.ArrowFunctionExcludes=547309568]="ArrowFunctionExcludes",e[e.FunctionExcludes=547313664]="FunctionExcludes",e[e.ConstructorExcludes=547311616]="ConstructorExcludes",e[e.MethodOrAccessorExcludes=538923008]="MethodOrAccessorExcludes",e[e.PropertyExcludes=536875008]="PropertyExcludes",e[e.ClassExcludes=536905728]="ClassExcludes",e[e.ModuleExcludes=546379776]="ModuleExcludes",e[e.TypeExcludes=-2]="TypeExcludes",e[e.ObjectLiteralExcludes=536922112]="ObjectLiteralExcludes",e[e.ArrayLiteralOrCallOrNewExcludes=536879104]="ArrayLiteralOrCallOrNewExcludes",e[e.VariableDeclarationListExcludes=537018368]="VariableDeclarationListExcludes",e[e.ParameterExcludes=536870912]="ParameterExcludes",e[e.CatchClauseExcludes=536887296]="CatchClauseExcludes",e[e.BindingPatternExcludes=536879104]="BindingPatternExcludes",e[e.PropertyNamePropagatingFlags=4096]="PropertyNamePropagatingFlags"}(e.TransformFlags||(e.TransformFlags={})),function(e){e[e.None=0]="None",e[e.SingleLine=1]="SingleLine",e[e.AdviseOnEmitNode=2]="AdviseOnEmitNode",e[e.NoSubstitution=4]="NoSubstitution",e[e.CapturesThis=8]="CapturesThis",e[e.NoLeadingSourceMap=16]="NoLeadingSourceMap",e[e.NoTrailingSourceMap=32]="NoTrailingSourceMap",e[e.NoSourceMap=48]="NoSourceMap",e[e.NoNestedSourceMaps=64]="NoNestedSourceMaps",e[e.NoTokenLeadingSourceMaps=128]="NoTokenLeadingSourceMaps",e[e.NoTokenTrailingSourceMaps=256]="NoTokenTrailingSourceMaps",e[e.NoTokenSourceMaps=384]="NoTokenSourceMaps",e[e.NoLeadingComments=512]="NoLeadingComments",e[e.NoTrailingComments=1024]="NoTrailingComments",e[e.NoComments=1536]="NoComments",e[e.NoNestedComments=2048]="NoNestedComments",e[e.HelperName=4096]="HelperName",e[e.ExportName=8192]="ExportName",e[e.LocalName=16384]="LocalName",e[e.InternalName=32768]="InternalName",e[e.Indented=65536]="Indented",e[e.NoIndentation=131072]="NoIndentation",e[e.AsyncFunctionBody=262144]="AsyncFunctionBody",e[e.ReuseTempVariableScope=524288]="ReuseTempVariableScope",e[e.CustomPrologue=1048576]="CustomPrologue",e[e.NoHoisting=2097152]="NoHoisting",e[e.HasEndOfDeclarationMarker=4194304]="HasEndOfDeclarationMarker",e[e.Iterator=8388608]="Iterator",e[e.NoAsciiEscaping=16777216]="NoAsciiEscaping",e[e.TypeScriptClassWrapper=33554432]="TypeScriptClassWrapper",e[e.NeverApplyImportHelper=67108864]="NeverApplyImportHelper",e[e.IgnoreSourceNewlines=134217728]="IgnoreSourceNewlines"}(e.EmitFlags||(e.EmitFlags={})),function(e){e[e.Extends=1]="Extends",e[e.Assign=2]="Assign",e[e.Rest=4]="Rest",e[e.Decorate=8]="Decorate",e[e.Metadata=16]="Metadata",e[e.Param=32]="Param",e[e.Awaiter=64]="Awaiter",e[e.Generator=128]="Generator",e[e.Values=256]="Values",e[e.Read=512]="Read",e[e.SpreadArray=1024]="SpreadArray",e[e.Await=2048]="Await",e[e.AsyncGenerator=4096]="AsyncGenerator",e[e.AsyncDelegator=8192]="AsyncDelegator",e[e.AsyncValues=16384]="AsyncValues",e[e.ExportStar=32768]="ExportStar",e[e.ImportStar=65536]="ImportStar",e[e.ImportDefault=131072]="ImportDefault",e[e.MakeTemplateObject=262144]="MakeTemplateObject",e[e.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",e[e.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",e[e.CreateBinding=2097152]="CreateBinding",e[e.FirstEmitHelper=1]="FirstEmitHelper",e[e.LastEmitHelper=2097152]="LastEmitHelper",e[e.ForOfIncludes=256]="ForOfIncludes",e[e.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",e[e.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",e[e.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",e[e.SpreadIncludes=1536]="SpreadIncludes"}(e.ExternalEmitHelpers||(e.ExternalEmitHelpers={})),function(e){e[e.SourceFile=0]="SourceFile",e[e.Expression=1]="Expression",e[e.IdentifierName=2]="IdentifierName",e[e.MappedTypeParameter=3]="MappedTypeParameter",e[e.Unspecified=4]="Unspecified",e[e.EmbeddedStatement=5]="EmbeddedStatement",e[e.JsxAttributeValue=6]="JsxAttributeValue"}(e.EmitHint||(e.EmitHint={})),function(e){e[e.Parentheses=1]="Parentheses",e[e.TypeAssertions=2]="TypeAssertions",e[e.NonNullAssertions=4]="NonNullAssertions",e[e.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",e[e.Assertions=6]="Assertions",e[e.All=15]="All"}(e.OuterExpressionKinds||(e.OuterExpressionKinds={})),function(e){e[e.None=0]="None",e[e.InParameters=1]="InParameters",e[e.VariablesHoistedInParameters=2]="VariablesHoistedInParameters"}(e.LexicalEnvironmentFlags||(e.LexicalEnvironmentFlags={})),function(e){e.Prologue="prologue",e.EmitHelpers="emitHelpers",e.NoDefaultLib="no-default-lib",e.Reference="reference",e.Type="type",e.Lib="lib",e.Prepend="prepend",e.Text="text",e.Internal="internal"}(e.BundleFileSectionKind||(e.BundleFileSectionKind={})),function(e){e[e.None=0]="None",e[e.SingleLine=0]="SingleLine",e[e.MultiLine=1]="MultiLine",e[e.PreserveLines=2]="PreserveLines",e[e.LinesMask=3]="LinesMask",e[e.NotDelimited=0]="NotDelimited",e[e.BarDelimited=4]="BarDelimited",e[e.AmpersandDelimited=8]="AmpersandDelimited",e[e.CommaDelimited=16]="CommaDelimited",e[e.AsteriskDelimited=32]="AsteriskDelimited",e[e.DelimitersMask=60]="DelimitersMask",e[e.AllowTrailingComma=64]="AllowTrailingComma",e[e.Indented=128]="Indented",e[e.SpaceBetweenBraces=256]="SpaceBetweenBraces",e[e.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",e[e.Braces=1024]="Braces",e[e.Parenthesis=2048]="Parenthesis",e[e.AngleBrackets=4096]="AngleBrackets",e[e.SquareBrackets=8192]="SquareBrackets",e[e.BracketsMask=15360]="BracketsMask",e[e.OptionalIfUndefined=16384]="OptionalIfUndefined",e[e.OptionalIfEmpty=32768]="OptionalIfEmpty",e[e.Optional=49152]="Optional",e[e.PreferNewLine=65536]="PreferNewLine",e[e.NoTrailingNewLine=131072]="NoTrailingNewLine",e[e.NoInterveningComments=262144]="NoInterveningComments",e[e.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",e[e.SingleElement=1048576]="SingleElement",e[e.SpaceAfterList=2097152]="SpaceAfterList",e[e.Modifiers=262656]="Modifiers",e[e.HeritageClauses=512]="HeritageClauses",e[e.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",e[e.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",e[e.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",e[e.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",e[e.UnionTypeConstituents=516]="UnionTypeConstituents",e[e.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",e[e.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",e[e.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",e[e.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",e[e.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",e[e.CommaListElements=528]="CommaListElements",e[e.CallExpressionArguments=2576]="CallExpressionArguments",e[e.NewExpressionArguments=18960]="NewExpressionArguments",e[e.TemplateExpressionSpans=262144]="TemplateExpressionSpans",e[e.SingleLineBlockStatements=768]="SingleLineBlockStatements",e[e.MultiLineBlockStatements=129]="MultiLineBlockStatements",e[e.VariableDeclarationList=528]="VariableDeclarationList",e[e.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",e[e.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",e[e.ClassHeritageClauses=0]="ClassHeritageClauses",e[e.ClassMembers=129]="ClassMembers",e[e.InterfaceMembers=129]="InterfaceMembers",e[e.EnumMembers=145]="EnumMembers",e[e.CaseBlockClauses=129]="CaseBlockClauses",e[e.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",e[e.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",e[e.JsxElementAttributes=262656]="JsxElementAttributes",e[e.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",e[e.HeritageClauseTypes=528]="HeritageClauseTypes",e[e.SourceFileStatements=131073]="SourceFileStatements",e[e.Decorators=2146305]="Decorators",e[e.TypeArguments=53776]="TypeArguments",e[e.TypeParameters=53776]="TypeParameters",e[e.Parameters=2576]="Parameters",e[e.IndexSignatureParameters=8848]="IndexSignatureParameters",e[e.JSDocComment=33]="JSDocComment"}(e.ListFormat||(e.ListFormat={})),function(e){e[e.None=0]="None",e[e.TripleSlashXML=1]="TripleSlashXML",e[e.SingleLine=2]="SingleLine",e[e.MultiLine=4]="MultiLine",e[e.All=7]="All",e[e.Default=7]="Default"}(e.PragmaKindFlags||(e.PragmaKindFlags={})),e.commentPragmas={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}}}(d||(d={})),function(e){e.directorySeparator="/",e.altDirectorySeparator="\\";var t="://",r=/\\/g;function n(e){return 47===e||92===e}function a(e){return d(e)>0}function o(e){return 0!==d(e)}function s(e){return/^\.\.?($|[\\/])/.test(e)}function c(t,r){return t.length>r.length&&e.endsWith(t,r)}function l(e){return e.length>0&&n(e.charCodeAt(e.length-1))}function u(e){return e>=97&&e<=122||e>=65&&e<=90}function d(r){if(!r)return 0;var n=r.charCodeAt(0);if(47===n||92===n){if(r.charCodeAt(1)!==n)return 1;var i=r.indexOf(47===n?e.directorySeparator:e.altDirectorySeparator,2);return i<0?r.length:i+1}if(u(n)&&58===r.charCodeAt(1)){var a=r.charCodeAt(2);if(47===a||92===a)return 3;if(2===r.length)return 2}var o=r.indexOf(t);if(-1!==o){var s=o+t.length,c=r.indexOf(e.directorySeparator,s);if(-1!==c){var l=r.slice(0,o),d=r.slice(s,c);if("file"===l&&(""===d||"localhost"===d)&&u(r.charCodeAt(c+1))){var p=function(e,t){var r=e.charCodeAt(t);if(58===r)return t+1;if(37===r&&51===e.charCodeAt(t+1)){var n=e.charCodeAt(t+2);if(97===n||65===n)return t+3}return-1}(r,c+2);if(-1!==p){if(47===r.charCodeAt(p))return~(p+1);if(p===r.length)return~p}}return~(c+1)}return~r.length}return 0}function p(e){var t=d(e);return t<0?~t:t}function f(t){var r=p(t=v(t));return r===t.length?t:(t=w(t)).slice(0,Math.max(r,t.lastIndexOf(e.directorySeparator)))}function m(t,r,n){if(p(t=v(t))===t.length)return"";var i=(t=w(t)).slice(Math.max(p(t),t.lastIndexOf(e.directorySeparator)+1)),a=void 0!==r&&void 0!==n?_(i,r,n):void 0;return a?i.slice(0,i.length-a.length):i}function g(t,r,n){if(e.startsWith(r,".")||(r="."+r),t.length>=r.length&&46===t.charCodeAt(t.length-r.length)){var i=t.slice(t.length-r.length);if(n(i,r))return i}}function _(t,r,n){if(r)return function(e,t,r){if("string"==typeof t)return g(e,t,r)||"";for(var n=0,i=t;n<i.length;n++){var a=g(e,i[n],r);if(a)return a}return""}(w(t),r,n?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive);var i=m(t),a=i.lastIndexOf(".");return a>=0?i.substring(a):""}function h(t,r){return void 0===r&&(r=""),function(t,r){var n=t.substring(0,r),a=t.substring(r).split(e.directorySeparator);return a.length&&!e.lastOrUndefined(a)&&a.pop(),i([n],a)}(t=k(r,t),p(t))}function y(t){return 0===t.length?"":(t[0]&&T(t[0]))+t.slice(1).join(e.directorySeparator)}function v(t){return t.replace(r,e.directorySeparator)}function b(t){if(!e.some(t))return[];for(var r=[t[0]],n=1;n<t.length;n++){var i=t[n];if(i&&"."!==i){if(".."===i)if(r.length>1){if(".."!==r[r.length-1]){r.pop();continue}}else if(r[0])continue;r.push(i)}}return r}function k(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];e&&(e=v(e));for(var n=0,i=t;n<i.length;n++){var a=i[n];a&&(a=v(a),e=e&&0===p(a)?T(e)+a:a)}return e}function x(t){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return D(e.some(r)?k.apply(void 0,i([t],r)):v(t))}function E(e,t){return b(h(e,t))}function S(e,t){return y(E(e,t))}function D(e){var t=y(b(h(e=v(e))));return t&&l(e)?T(t):t}function w(e){return l(e)?e.substr(0,e.length-1):e}function T(t){return l(t)?t:t+e.directorySeparator}function C(e){return o(e)||s(e)?e:"./"+e}e.isAnyDirectorySeparator=n,e.isUrl=function(e){return d(e)<0},e.isRootedDiskPath=a,e.isDiskPathRoot=function(e){var t=d(e);return t>0&&t===e.length},e.pathIsAbsolute=o,e.pathIsRelative=s,e.pathIsBareSpecifier=function(e){return!o(e)&&!s(e)},e.hasExtension=function(t){return e.stringContains(m(t),".")},e.fileExtensionIs=c,e.fileExtensionIsOneOf=function(e,t){for(var r=0,n=t;r<n.length;r++){if(c(e,n[r]))return!0}return!1},e.hasTrailingDirectorySeparator=l,e.getRootLength=p,e.getDirectoryPath=f,e.getBaseFileName=m,e.getAnyExtensionFromPath=_,e.getPathComponents=h,e.getPathFromPathComponents=y,e.normalizeSlashes=v,e.reducePathComponents=b,e.combinePaths=k,e.resolvePath=x,e.getNormalizedPathComponents=E,e.getNormalizedAbsolutePath=S,e.normalizePath=D,e.getNormalizedAbsolutePathWithoutRoot=function(t,r){return function(t){return 0===t.length?"":t.slice(1).join(e.directorySeparator)}(E(t,r))},e.toPath=function(e,t,r){return r(a(e)?D(e):S(e,t))},e.normalizePathAndParts=function(t){var r=b(h(t=v(t))),n=r[0],i=r.slice(1);if(i.length){var a=n+i.join(e.directorySeparator);return{path:l(t)?T(a):a,parts:i}}return{path:n,parts:i}},e.removeTrailingDirectorySeparator=w,e.ensureTrailingDirectorySeparator=T,e.ensurePathIsNonModuleName=C,e.changeAnyExtension=function(t,r,n,i){var a=void 0!==n&&void 0!==i?_(t,n,i):_(t);return a?t.slice(0,t.length-a.length)+(e.startsWith(r,".")?r:"."+r):t};var A=/(^|\/)\.{0,2}($|\/)/;function N(t,r,n){if(t===r)return 0;if(void 0===t)return-1;if(void 0===r)return 1;var i=t.substring(0,p(t)),a=r.substring(0,p(r)),o=e.compareStringsCaseInsensitive(i,a);if(0!==o)return o;var s=t.substring(i.length),c=r.substring(a.length);if(!A.test(s)&&!A.test(c))return n(s,c);for(var l=b(h(t)),u=b(h(r)),d=Math.min(l.length,u.length),f=1;f<d;f++){var m=n(l[f],u[f]);if(0!==m)return m}return e.compareValues(l.length,u.length)}function P(t,r,n,a){var o,s=b(h(t)),c=b(h(r));for(o=0;o<s.length&&o<c.length;o++){var l=a(s[o]),u=a(c[o]);if(!(0===o?e.equateStringsCaseInsensitive:n)(l,u))break}if(0===o)return c;for(var d=c.slice(o),p=[];o<s.length;o++)p.push("..");return i(i([""],p),d)}function I(t,r,n){e.Debug.assert(p(t)>0==p(r)>0,"Paths must either both be absolute or both be relative");var i="function"==typeof n?n:e.identity;return y(P(t,r,"boolean"==typeof n&&n?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive,i))}function F(t,r,n,i,o){var s=P(x(n,t),x(n,r),e.equateStringsCaseSensitive,i),c=s[0];if(o&&a(c)){var l=c.charAt(0)===e.directorySeparator?"file://":"file:///";s[0]=l+c}return y(s)}e.comparePathsCaseSensitive=function(t,r){return N(t,r,e.compareStringsCaseSensitive)},e.comparePathsCaseInsensitive=function(t,r){return N(t,r,e.compareStringsCaseInsensitive)},e.comparePaths=function(t,r,n,i){return"string"==typeof n?(t=k(n,t),r=k(n,r)):"boolean"==typeof n&&(i=n),N(t,r,e.getStringComparer(i))},e.containsPath=function(t,r,n,i){if("string"==typeof n?(t=k(n,t),r=k(n,r)):"boolean"==typeof n&&(i=n),void 0===t||void 0===r)return!1;if(t===r)return!0;var a=b(h(t)),o=b(h(r));if(o.length<a.length)return!1;for(var s=i?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive,c=0;c<a.length;c++){if(!(0===c?e.equateStringsCaseInsensitive:s)(a[c],o[c]))return!1}return!0},e.startsWithDirectory=function(t,r,n){var i=n(t),a=n(r);return e.startsWith(i,a+"/")||e.startsWith(i,a+"\\")},e.getPathComponentsRelativeTo=P,e.getRelativePathFromDirectory=I,e.convertToRelativePath=function(e,t,r){return a(e)?F(t,e,t,r,!1):e},e.getRelativePathFromFile=function(e,t,r){return C(I(f(e),t,r))},e.getRelativePathToDirectoryOrUrl=F,e.forEachAncestorDirectory=function(e,t){for(;;){var r=t(e);if(void 0!==r)return r;var n=f(e);if(n===e)return;e=n}},e.isNodeModulesDirectory=function(t){return e.endsWith(t,"/node_modules")},e.isOHModulesDirectory=function(t){return e.endsWith(t,"/oh_modules")}}(d||(d={})),function(e){function t(e){for(var t=5381,r=0;r<e.length;r++)t=(t<<5)+t+e.charCodeAt(r);return t.toString()}var n,i;function o(e){var t;return(t={})[i.Low]=e.Low,t[i.Medium]=e.Medium,t[i.High]=e.High,t}e.generateDjb2Hash=t,e.setStackTraceLimit=function(){Error.stackTraceLimit<100&&(Error.stackTraceLimit=100)},function(e){e[e.Created=0]="Created",e[e.Changed=1]="Changed",e[e.Deleted=2]="Deleted"}(n=e.FileWatcherEventKind||(e.FileWatcherEventKind={})),function(e){e[e.High=2e3]="High",e[e.Medium=500]="Medium",e[e.Low=250]="Low"}(i=e.PollingInterval||(e.PollingInterval={})),e.missingFileModifiedTime=new Date(0);var s,c={Low:32,Medium:64,High:256},l=o(c);function u(t){if(t.getEnvironmentVariable){var r=function(e,t){var r=n(e);if(r)return i("Low"),i("Medium"),i("High"),!0;return!1;function i(e){t[e]=r[e]||t[e]}}("TSC_WATCH_POLLINGINTERVAL",i);l=s("TSC_WATCH_POLLINGCHUNKSIZE",c)||l,e.unchangedPollThresholds=s("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",c)||e.unchangedPollThresholds}function n(e){var r;return n("Low"),n("Medium"),n("High"),r;function n(n){var i=function(e,r){return t.getEnvironmentVariable(e+"_"+r.toUpperCase())}(e,n);i&&((r||(r={}))[n]=Number(i))}}function s(e,t){var i=n(e);return(r||i)&&o(i?a(a({},t),i):t)}}function d(t){var r=[],n=[],a=c(i.Low),o=c(i.Medium),s=c(i.High);return function(t,n,i){var a={fileName:t,callback:n,unchangedPolls:0,mtime:v(t)};return r.push(a),g(a,i),{close:function(){a.isClosed=!0,e.unorderedRemoveItem(r,a)}}};function c(e){var t=[];return t.pollingInterval=e,t.pollIndex=0,t.pollScheduled=!1,t}function u(t){t.pollIndex=p(t,t.pollingInterval,t.pollIndex,l[t.pollingInterval]),t.length?y(t.pollingInterval):(e.Debug.assert(0===t.pollIndex),t.pollScheduled=!1)}function d(e){p(n,i.Low,0,n.length),u(e),!e.pollScheduled&&n.length&&y(i.Low)}function p(t,r,a,o){for(var s=t.length,c=a,l=0;l<o&&s>0;p(),s--){var u=t[a];if(u)if(u.isClosed)t[a]=void 0;else{l++;var d=m(u,v(u.fileName));u.isClosed?t[a]=void 0:d?(u.unchangedPolls=0,t!==n&&(t[a]=void 0,_(u))):u.unchangedPolls!==e.unchangedPollThresholds[r]?u.unchangedPolls++:t===n?(u.unchangedPolls=1,t[a]=void 0,g(u,i.Low)):r!==i.High&&(u.unchangedPolls++,t[a]=void 0,g(u,r===i.Low?i.Medium:i.High)),t[a]&&(c<a&&(t[c]=u,t[a]=void 0),c++)}}return a;function p(){++a===t.length&&(c<a&&(t.length=c),a=0,c=0)}}function f(e){switch(e){case i.Low:return a;case i.Medium:return o;case i.High:return s}}function g(e,t){f(t).push(e),h(t)}function _(e){n.push(e),h(i.Low)}function h(e){f(e).pollScheduled||y(e)}function y(e){f(e).pollScheduled=t.setTimeout(e===i.Low?d:u,e,f(e))}function v(r){return t.getModifiedTime(r)||e.missingFileModifiedTime}}function p(t,r){var a=e.createMultiMap(),o=new e.Map,s=e.createGetCanonicalFileName(r);return function(r,c,l,u){var d=s(r);a.add(d,c);var p=e.getDirectoryPath(d)||".",f=o.get(p)||function(r,c,l){var u=t(r,1,(function(t,i){if(e.isString(i)){var o=e.getNormalizedAbsolutePath(i,r),c=o&&a.get(s(o));if(c)for(var l=0,u=c;l<u.length;l++){(0,u[l])(o,n.Changed)}}}),!1,i.Medium,l);return u.referenceCount=0,o.set(c,u),u}(e.getDirectoryPath(r)||".",p,u);return f.referenceCount++,{close:function(){1===f.referenceCount?(f.close(),o.delete(p)):f.referenceCount--,a.remove(d,c)}}}}function f(t,r){var n=new e.Map,i=e.createMultiMap(),a=e.createGetCanonicalFileName(r);return function(r,o,s,c){var l=a(r),u=n.get(l);return u?u.refCount++:n.set(l,{watcher:t(r,(function(t,r){return e.forEach(i.get(l),(function(e){return e(t,r)}))}),s,c),refCount:1}),i.add(l,o),{close:function(){var t=e.Debug.checkDefined(n.get(l));i.remove(l,o),t.refCount--,t.refCount||(n.delete(l),e.closeFileWatcherOf(t))}}}}function m(e,t){var r=e.mtime.getTime(),n=t.getTime();return r!==n&&(e.mtime=t,e.callback(e.fileName,g(r,n)),!0)}function g(e,t){return 0===e?n.Created:0===t?n.Deleted:n.Changed}function _(t){var r,n=t.watchDirectory,i=t.useCaseSensitiveFileNames,a=t.getCurrentDirectory,o=t.getAccessibleSortedChildDirectories,s=t.directoryExists,c=t.realpath,l=t.setTimeout,u=t.clearTimeout,d=new e.Map,p=e.createMultiMap(),f=new e.Map,m=e.getStringComparer(!i),g=e.createGetCanonicalFileName(i);return function(e,t,r,i){return r?_(e,i,t):n(e,t,r,i)};function _(t,i,a){var o=g(t),c=d.get(o);c?c.refCount++:(c={watcher:n(t,(function(e){x(e,i)||((null==i?void 0:i.synchronousWatchDirectory)?(h(o,e),k(t,o,i)):function(e,t,n,i){var a=d.get(t);if(a&&s(e))return void function(e,t,n,i){var a=f.get(t);a?a.fileNames.push(n):f.set(t,{dirName:e,options:i,fileNames:[n]});r&&(u(r),r=void 0);r=l(v,1e3)}(e,t,n,i);h(t,n),b(a)}(t,o,e,i))}),!1,i),refCount:1,childWatches:e.emptyArray},d.set(o,c),k(t,o,i));var m=a&&{dirName:t,callback:a};return m&&p.add(o,m),{dirName:t,close:function(){var t=e.Debug.checkDefined(d.get(o));m&&p.remove(o,m),t.refCount--,t.refCount||(d.delete(o),e.closeFileWatcherOf(t),t.childWatches.forEach(e.closeFileWatcher))}}}function h(t,r,n){var i,a;e.isString(r)?i=r:a=r,p.forEach((function(r,o){var s;if((!a||!0!==a.get(o))&&(o===t||e.startsWith(t,o)&&t[o.length]===e.directorySeparator))if(a)if(n){var c=a.get(o);c?(s=c).push.apply(s,n):a.set(o,n.slice())}else a.set(o,!0);else r.forEach((function(e){return(0,e.callback)(i)}))}))}function v(){r=void 0,e.sysLog("sysLog:: onTimerToUpdateChildWatches:: "+f.size);for(var t=e.timestamp(),n=new e.Map;!r&&f.size;){var i=f.entries().next();e.Debug.assert(!i.done);var a=i.value,o=a[0],s=a[1],c=s.dirName,l=s.options,u=s.fileNames;f.delete(o);var d=k(c,o,l);h(o,n,d?void 0:u)}e.sysLog("sysLog:: invokingWatchers:: Elapsed:: "+(e.timestamp()-t)+"ms:: "+f.size),p.forEach((function(t,r){var i=n.get(r);i&&t.forEach((function(t){var r=t.callback,n=t.dirName;e.isArray(i)?i.forEach(r):r(n)}))}));var m=e.timestamp()-t;e.sysLog("sysLog:: Elapsed:: "+m+"ms:: onTimerToUpdateChildWatches:: "+f.size+" "+r)}function b(t){if(t){var r=t.childWatches;t.childWatches=e.emptyArray;for(var n=0,i=r;n<i.length;n++){var a=i[n];a.close(),b(d.get(g(a.dirName)))}}}function k(t,r,n){var i,a=d.get(r);if(!a)return!1;var l=e.enumerateInsertsAndDeletes(s(t)?e.mapDefined(o(t),(function(r){var i=e.getNormalizedAbsolutePath(r,t);return x(i,n)||0!==m(i,e.normalizePath(c(i)))?void 0:i})):e.emptyArray,a.childWatches,(function(e,t){return m(e,t.dirName)}),(function(e){u(_(e,n))}),e.closeFileWatcher,u);return a.childWatches=i||e.emptyArray,l;function u(e){(i||(i=[])).push(e)}}function x(t,r){return e.some(e.ignoredPaths,(function(r){return function(t,r){return!!e.stringContains(t,r)||!i&&e.stringContains(g(t),r)}(t,r)}))||y(t,r,i,a)}}function h(e){return function(t,r){return e(r===n.Changed?"change":"rename","")}}function y(t,r,n,i){return((null==r?void 0:r.excludeDirectories)||(null==r?void 0:r.excludeFiles))&&(e.matchesExclude(t,null==r?void 0:r.excludeFiles,n,i())||e.matchesExclude(t,null==r?void 0:r.excludeDirectories,n,i()))}function v(t,r,n,i,a){return function(o,s){if("rename"===o){var c=s?e.normalizePath(e.combinePaths(t,s)):t;s&&y(c,n,i,a)||r(c)}}}function b(t){var r,a,o,s=t.pollingWatchFile,c=t.getModifiedTime,l=t.setTimeout,u=t.clearTimeout,f=t.fsWatch,m=t.fileExists,g=t.useCaseSensitiveFileNames,h=t.getCurrentDirectory,y=t.fsSupportsRecursiveFsWatch,b=t.directoryExists,k=t.getAccessibleSortedChildDirectories,x=t.realpath,E=t.tscWatchFile,S=t.useNonPollingWatchers,D=t.tscWatchDirectory;return{watchFile:function(t,r,o,c){c=function(t,r){if(t&&void 0!==t.watchFile)return t;switch(E){case"PriorityPollingInterval":return{watchFile:e.WatchFileKind.PriorityPollingInterval};case"DynamicPriorityPolling":return{watchFile:e.WatchFileKind.DynamicPriorityPolling};case"UseFsEvents":return T(e.WatchFileKind.UseFsEvents,e.PollingWatchKind.PriorityInterval,t);case"UseFsEventsWithFallbackDynamicPolling":return T(e.WatchFileKind.UseFsEvents,e.PollingWatchKind.DynamicPriority,t);case"UseFsEventsOnParentDirectory":r=!0;default:return r?T(e.WatchFileKind.UseFsEventsOnParentDirectory,e.PollingWatchKind.PriorityInterval,t):{watchFile:e.WatchFileKind.FixedPollingInterval}}}(c,S);var l=e.Debug.checkDefined(c.watchFile);switch(l){case e.WatchFileKind.FixedPollingInterval:return s(t,r,i.Low,void 0);case e.WatchFileKind.PriorityPollingInterval:return s(t,r,o,void 0);case e.WatchFileKind.DynamicPriorityPolling:return w()(t,r,o,void 0);case e.WatchFileKind.UseFsEvents:return f(t,0,function(e,t,r){return function(i){t(e,"rename"===i?r(e)?n.Created:n.Deleted:n.Changed)}}(t,r,m),!1,o,e.getFallbackOptions(c));case e.WatchFileKind.UseFsEventsOnParentDirectory:return a||(a=p(f,g)),a(t,r,o,e.getFallbackOptions(c));default:e.Debug.assertNever(l)}},watchDirectory:function(t,r,n,a){if(y)return f(t,1,v(t,r,a,g,h),n,i.Medium,e.getFallbackOptions(a));o||(o=_({useCaseSensitiveFileNames:g,getCurrentDirectory:h,directoryExists:b,getAccessibleSortedChildDirectories:k,watchDirectory:C,realpath:x,setTimeout:l,clearTimeout:u}));return o(t,r,n,a)}};function w(){return r||(r=d({getModifiedTime:c,setTimeout:l}))}function T(e,t,r){var n=null==r?void 0:r.fallbackPolling;return{watchFile:e,fallbackPolling:void 0===n?t:n}}function C(t,r,n,a){e.Debug.assert(!n);var o=function(t){if(t&&void 0!==t.watchDirectory)return t;switch(D){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:e.WatchDirectoryKind.FixedPollingInterval};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:e.WatchDirectoryKind.DynamicPriorityPolling};default:var r=null==t?void 0:t.fallbackPolling;return{watchDirectory:e.WatchDirectoryKind.UseFsEvents,fallbackPolling:void 0!==r?r:void 0}}}(a),c=e.Debug.checkDefined(o.watchDirectory);switch(c){case e.WatchDirectoryKind.FixedPollingInterval:return s(t,(function(){return r(t)}),i.Medium,void 0);case e.WatchDirectoryKind.DynamicPriorityPolling:return w()(t,(function(){return r(t)}),i.Medium,void 0);case e.WatchDirectoryKind.UseFsEvents:return f(t,1,v(t,r,a,g,h),n,i.Medium,e.getFallbackOptions(o));default:e.Debug.assertNever(c)}}}function k(t){var r=t.writeFile;t.writeFile=function(n,i,a){return e.writeFileEnsuringDirectories(n,i,!!a,(function(e,n,i){return r.call(t,e,n,i)}),(function(e){return t.createDirectory(e)}),(function(e){return t.directoryExists(e)}))}}function x(){if("undefined"!=typeof process){var e=process.version;if(e){var t=e.indexOf(".");if(-1!==t)return parseInt(e.substring(1,t))}}}e.unchangedPollThresholds=o(c),e.setCustomPollingValues=u,e.createDynamicPriorityPollingWatchFile=d,e.createSingleFileWatcherPerName=f,e.onWatchedFileStat=m,e.getFileWatcherEventKind=g,e.ignoredPaths=["/node_modules/.","/.git","/.#"],e.sysLog=e.noop,e.setSysLog=function(t){e.sysLog=t},e.createDirectoryWatcherSupportingRecursive=_,function(e){e[e.File=0]="File",e[e.Directory=1]="Directory"}(e.FileSystemEntryKind||(e.FileSystemEntryKind={})),e.createFileWatcherCallback=h,e.createSystemWatchFunctions=b,e.patchWriteFileEnsuringDirectory=k,e.getNodeMajorVersion=x,e.sys=("undefined"!=typeof process&&process.nextTick&&!process.browser&&(s=function(){var i,a,o,s=/^native |^\([^)]+\)$|^(internal[\\/]|[a-zA-Z0-9_\s]+(\.js)?$)/,c=r(79896),l=r(16928),u=r(70857);try{a=r(76982)}catch(e){a=void 0}var d,p="./profile.cpuprofile",m=null!==(i=c.realpathSync.native)&&void 0!==i?i:c.realpathSync,g=r(20181).Buffer,_=x()>=4,y="linux"===process.platform||"darwin"===process.platform,v=u.platform(),k="win32"!==v&&"win64"!==v&&!O((d=__filename,d.replace(/\w/g,(function(e){var t=e.toUpperCase();return e===t?e.toLowerCase():t})))),E=_&&("win32"===process.platform||"darwin"===process.platform),S=e.memoize((function(){return process.cwd()})),D=b({pollingWatchFile:f((function(e,t,r){var i;return c.watchFile(e,{persistent:!0,interval:r},a),{close:function(){return c.unwatchFile(e,a)}};function a(r,a){var o=0==+a.mtime||i===n.Deleted;if(0==+r.mtime){if(o)return;i=n.Deleted}else if(o)i=n.Created;else{if(+r.mtime==+a.mtime)return;i=n.Changed}t(e,i)}}),k),getModifiedTime:L,setTimeout,clearTimeout,fsWatch:function(t,r,i,a,o,s){var l,u,d;y&&(u=t.substr(t.lastIndexOf(e.directorySeparator)),d=u.slice(e.directorySeparator.length));var p=F(t,r)?m():_();return{close:function(){p.close(),p=void 0}};function f(r){e.sysLog("sysLog:: "+t+":: Changing watcher to "+(r===m?"Present":"Missing")+"FileSystemEntryWatcher"),i("rename",""),p&&(p.close(),p=r())}function m(){void 0===l&&(l=E?{persistent:!0,recursive:!!a}:{persistent:!0});try{var r=c.watch(t,l,y?g:i);return r.on("error",(function(){return f(_)})),r}catch(r){return e.sysLog("sysLog:: "+t+":: Changing to fsWatchFile"),w(t,h(i),o,s)}}function g(e,n){return"rename"!==e||n&&n!==d&&(-1===n.lastIndexOf(u)||n.lastIndexOf(u)!==n.length-u.length)||F(t,r)?i(e,n):f(_)}function _(){return w(t,(function(e,i){i===n.Created&&F(t,r)&&f(m)}),o,s)}},useCaseSensitiveFileNames:k,getCurrentDirectory:S,fileExists:O,fsSupportsRecursiveFsWatch:E,directoryExists:R,getAccessibleSortedChildDirectories:function(e){return I(e).directories},realpath:M,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY}),w=D.watchFile,T=D.watchDirectory,C={args:process.argv.slice(2),newLine:u.EOL,useCaseSensitiveFileNames:k,write:function(e){process.stdout.write(e)},writeOutputIsTTY:function(){return process.stdout.isTTY},readFile:function(t,r){e.perfLogger.logStartReadFile(t);var n=function(e){var t;try{t=c.readFileSync(e)}catch(e){return}var r=t.length;if(r>=2&&254===t[0]&&255===t[1]){r&=-2;for(var n=0;n<r;n+=2){var i=t[n];t[n]=t[n+1],t[n+1]=i}return t.toString("utf16le",2)}return r>=2&&255===t[0]&&254===t[1]?t.toString("utf16le",2):r>=3&&239===t[0]&&187===t[1]&&191===t[2]?t.toString("utf8",3):t.toString("utf8")}(t);return e.perfLogger.logStopReadFile(),n},writeFile:function(t,r,n){var i;e.perfLogger.logEvent("WriteFile: "+t),n&&(r="\ufeff"+r);try{i=c.openSync(t,"w"),c.writeSync(i,r,void 0,"utf8")}finally{void 0!==i&&c.closeSync(i)}},watchFile:w,watchDirectory:T,resolvePath:function(e){return l.resolve(e)},fileExists:O,directoryExists:R,createDirectory:function(e){if(!C.directoryExists(e))try{c.mkdirSync(e)}catch(e){if("EEXIST"!==e.code)throw e}},getExecutingFilePath:function(){return __filename},getCurrentDirectory:S,getDirectories:function(e){return I(e).directories.slice()},getEnvironmentVariable:function(e){return process.env[e]||""},readDirectory:function(t,r,n,i,a){return e.matchFiles(t,r,n,i,k,process.cwd(),a,I,M)},getModifiedTime:L,setModifiedTime:function(e,t){try{c.utimesSync(e,t,t)}catch(e){return}},deleteFile:function(e){try{return c.unlinkSync(e)}catch(e){return}},createHash:a?j:t,createSHA256Hash:a?j:void 0,getMemoryUsage:function(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize:function(e){try{var t=A(e);if(null==t?void 0:t.isFile())return t.size}catch(e){}return 0},exit:function(e){N((function(){return process.exit(e)}))},enableCPUProfiler:function(e,t){if(o)return t(),!1;var n=r(50264);if(!n||!n.Session)return t(),!1;var i=new n.Session;return i.connect(),i.post("Profiler.enable",(function(){i.post("Profiler.start",(function(){o=i,p=e,t()}))})),!0},disableCPUProfiler:N,cpuProfilingEnabled:function(){return!!o||e.contains(process.execArgv,"--cpu-prof")||e.contains(process.execArgv,"--prof")},realpath:M,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||e.some(process.execArgv,(function(e){return/^--(inspect|debug)(-brk)?(=\d+)?$/i.test(e)})),tryEnableSourceMapsForHost:function(){try{r(92345).install()}catch(e){}},setTimeout,clearTimeout,clearScreen:function(){process.stdout.write("c")},setBlocking:function(){process.stdout&&process.stdout._handle&&process.stdout._handle.setBlocking&&process.stdout._handle.setBlocking(!0)},bufferFrom:P,base64decode:function(e){return P(e,"base64").toString("utf8")},base64encode:function(e){return P(e).toString("base64")},require:function(t,n){try{var i=e.resolveJSModule(n,t,C);return{module:r(89387)(i),modulePath:i,error:void 0}}catch(e){return{module:void 0,modulePath:void 0,error:e}}}};return C;function A(e){return c.statSync(e,{throwIfNoEntry:!1})}function N(t){if(o&&"stopping"!==o){var r=o;return o.post("Profiler.stop",(function(n,i){var a,u=i.profile;if(!n){try{(null===(a=A(p))||void 0===a?void 0:a.isDirectory())&&(p=l.join(p,(new Date).toISOString().replace(/:/g,"-")+"+P"+process.pid+".cpuprofile"))}catch(e){}try{c.mkdirSync(l.dirname(p),{recursive:!0})}catch(e){}c.writeFileSync(p,JSON.stringify(function(t){for(var r=0,n=new e.Map,i=e.normalizeSlashes(__dirname),a="file://"+(1===e.getRootLength(i)?"":"/")+i,o=0,c=t.nodes;o<c.length;o++){var l=c[o];if(l.callFrame.url){var u=e.normalizeSlashes(l.callFrame.url);e.containsPath(a,u,k)?l.callFrame.url=e.getRelativePathToDirectoryOrUrl(a,u,a,e.createGetCanonicalFileName(k),!0):s.test(u)||(l.callFrame.url=(n.has(u)?n:n.set(u,"external"+r+".js")).get(u),r++)}}return t}(u)))}o=void 0,r.disconnect(),t()})),o="stopping",!0}return t(),!1}function P(e,t){return g.from&&g.from!==Int8Array.from?g.from(e,t):new g(e,t)}function I(t){e.perfLogger.logEvent("ReadDir: "+(t||"."));try{for(var r=c.readdirSync(t||".",{withFileTypes:!0}),n=[],i=[],a=0,o=r;a<o.length;a++){var s=o[a],l="string"==typeof s?s:s.name;if("."!==l&&".."!==l){var u=void 0;if("string"==typeof s||s.isSymbolicLink()){var d=e.combinePaths(t,l);try{if(!(u=A(d)))continue}catch(e){continue}}else u=s;u.isFile()?n.push(l):u.isDirectory()&&i.push(l)}}return n.sort(),i.sort(),{files:n,directories:i}}catch(t){return e.emptyFileSystemEntries}}function F(e,t){var r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{var n=A(e);if(!n)return!1;switch(t){case 0:return n.isFile();case 1:return n.isDirectory();default:return!1}}catch(e){return!1}finally{Error.stackTraceLimit=r}}function O(e){return F(e,0)}function R(e){return F(e,1)}function M(e){try{return m(e)}catch(t){return e}}function L(e){var t;try{return null===(t=A(e))||void 0===t?void 0:t.mtime}catch(e){return}}function j(e){var t=a.createHash("sha256");return t.update(e),t.digest("hex")}}()),s&&k(s),s),e.sys&&e.sys.getEnvironmentVariable&&(u(e.sys),e.Debug.setAssertionLevel(/^development$/i.test(e.sys.getEnvironmentVariable("NODE_ENV"))?1:0)),e.sys&&e.sys.debugMode&&(e.Debug.isDebugging=!0)}(d||(d={})),function(e){function t(e,t,r,n,i,a,o){return{code:e,category:t,key:r,message:n,reportsUnnecessary:i,elidedInCompatabilityPyramid:a,reportsDeprecated:o}}e.Diagnostics={Unterminated_string_literal:t(1002,e.DiagnosticCategory.Error,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:t(1003,e.DiagnosticCategory.Error,"Identifier_expected_1003","Identifier expected."),_0_expected:t(1005,e.DiagnosticCategory.Error,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:t(1006,e.DiagnosticCategory.Error,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_to_match_the_token_here:t(1007,e.DiagnosticCategory.Error,"The_parser_expected_to_find_a_to_match_the_token_here_1007","The parser expected to find a '}' to match the '{' token here."),Trailing_comma_not_allowed:t(1009,e.DiagnosticCategory.Error,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:t(1010,e.DiagnosticCategory.Error,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:t(1011,e.DiagnosticCategory.Error,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:t(1012,e.DiagnosticCategory.Error,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:t(1013,e.DiagnosticCategory.Error,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:t(1014,e.DiagnosticCategory.Error,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:t(1015,e.DiagnosticCategory.Error,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:t(1016,e.DiagnosticCategory.Error,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:t(1017,e.DiagnosticCategory.Error,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:t(1018,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:t(1019,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:t(1020,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:t(1021,e.DiagnosticCategory.Error,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:t(1022,e.DiagnosticCategory.Error,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),An_index_signature_parameter_type_must_be_either_string_or_number:t(1023,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_must_be_either_string_or_number_1023","An index signature parameter type must be either 'string' or 'number'."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:t(1024,e.DiagnosticCategory.Error,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:t(1025,e.DiagnosticCategory.Error,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:t(1028,e.DiagnosticCategory.Error,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:t(1029,e.DiagnosticCategory.Error,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:t(1030,e.DiagnosticCategory.Error,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:t(1031,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:t(1034,e.DiagnosticCategory.Error,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:t(1035,e.DiagnosticCategory.Error,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:t(1036,e.DiagnosticCategory.Error,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:t(1038,e.DiagnosticCategory.Error,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:t(1039,e.DiagnosticCategory.Error,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:t(1040,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_with_a_class_declaration:t(1041,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_a_class_declaration_1041","'{0}' modifier cannot be used with a class declaration."),_0_modifier_cannot_be_used_here:t(1042,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_data_property:t(1043,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_data_property_1043","'{0}' modifier cannot appear on a data property."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:t(1044,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),A_0_modifier_cannot_be_used_with_an_interface_declaration:t(1045,e.DiagnosticCategory.Error,"A_0_modifier_cannot_be_used_with_an_interface_declaration_1045","A '{0}' modifier cannot be used with an interface declaration."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:t(1046,e.DiagnosticCategory.Error,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:t(1047,e.DiagnosticCategory.Error,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:t(1048,e.DiagnosticCategory.Error,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:t(1049,e.DiagnosticCategory.Error,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:t(1051,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:t(1052,e.DiagnosticCategory.Error,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:t(1053,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:t(1054,e.DiagnosticCategory.Error,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:t(1055,e.DiagnosticCategory.Error,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Prom_1055","Type '{0}' is not a valid async function return type in ES5/ES3 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:t(1056,e.DiagnosticCategory.Error,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),An_async_function_or_method_must_have_a_valid_awaitable_return_type:t(1057,e.DiagnosticCategory.Error,"An_async_function_or_method_must_have_a_valid_awaitable_return_type_1057","An async function or method must have a valid awaitable return type."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1058,e.DiagnosticCategory.Error,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:t(1059,e.DiagnosticCategory.Error,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:t(1060,e.DiagnosticCategory.Error,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:t(1061,e.DiagnosticCategory.Error,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:t(1062,e.DiagnosticCategory.Error,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:t(1063,e.DiagnosticCategory.Error,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:t(1064,e.DiagnosticCategory.Error,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise<T> type. Did you mean to write 'Promise<{0}>'?"),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:t(1066,e.DiagnosticCategory.Error,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:t(1068,e.DiagnosticCategory.Error,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:t(1069,e.DiagnosticCategory.Error,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:t(1070,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:t(1071,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:t(1079,e.DiagnosticCategory.Error,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:t(1084,e.DiagnosticCategory.Error,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:t(1085,e.DiagnosticCategory.Error,"Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0_1085","Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '{0}'."),_0_modifier_cannot_appear_on_a_constructor_declaration:t(1089,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:t(1090,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:t(1091,e.DiagnosticCategory.Error,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:t(1092,e.DiagnosticCategory.Error,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:t(1093,e.DiagnosticCategory.Error,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:t(1094,e.DiagnosticCategory.Error,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:t(1095,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:t(1096,e.DiagnosticCategory.Error,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:t(1097,e.DiagnosticCategory.Error,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:t(1098,e.DiagnosticCategory.Error,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:t(1099,e.DiagnosticCategory.Error,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:t(1100,e.DiagnosticCategory.Error,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:t(1101,e.DiagnosticCategory.Error,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:t(1102,e.DiagnosticCategory.Error,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:t(1103,e.DiagnosticCategory.Error,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:t(1104,e.DiagnosticCategory.Error,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:t(1105,e.DiagnosticCategory.Error,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),Jump_target_cannot_cross_function_boundary:t(1107,e.DiagnosticCategory.Error,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:t(1108,e.DiagnosticCategory.Error,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:t(1109,e.DiagnosticCategory.Error,"Expression_expected_1109","Expression expected."),Type_expected:t(1110,e.DiagnosticCategory.Error,"Type_expected_1110","Type expected."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:t(1113,e.DiagnosticCategory.Error,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:t(1114,e.DiagnosticCategory.Error,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:t(1115,e.DiagnosticCategory.Error,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:t(1116,e.DiagnosticCategory.Error,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode:t(1117,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode_1117","An object literal cannot have multiple properties with the same name in strict mode."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:t(1118,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:t(1119,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:t(1120,e.DiagnosticCategory.Error,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_in_strict_mode:t(1121,e.DiagnosticCategory.Error,"Octal_literals_are_not_allowed_in_strict_mode_1121","Octal literals are not allowed in strict mode."),Variable_declaration_list_cannot_be_empty:t(1123,e.DiagnosticCategory.Error,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:t(1124,e.DiagnosticCategory.Error,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:t(1125,e.DiagnosticCategory.Error,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:t(1126,e.DiagnosticCategory.Error,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:t(1127,e.DiagnosticCategory.Error,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:t(1128,e.DiagnosticCategory.Error,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:t(1129,e.DiagnosticCategory.Error,"Statement_expected_1129","Statement expected."),case_or_default_expected:t(1130,e.DiagnosticCategory.Error,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:t(1131,e.DiagnosticCategory.Error,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:t(1132,e.DiagnosticCategory.Error,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:t(1134,e.DiagnosticCategory.Error,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:t(1135,e.DiagnosticCategory.Error,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:t(1136,e.DiagnosticCategory.Error,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:t(1137,e.DiagnosticCategory.Error,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:t(1138,e.DiagnosticCategory.Error,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:t(1139,e.DiagnosticCategory.Error,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:t(1140,e.DiagnosticCategory.Error,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:t(1141,e.DiagnosticCategory.Error,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:t(1142,e.DiagnosticCategory.Error,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:t(1144,e.DiagnosticCategory.Error,"or_expected_1144","'{' or ';' expected."),Declaration_expected:t(1146,e.DiagnosticCategory.Error,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:t(1147,e.DiagnosticCategory.Error,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:t(1148,e.DiagnosticCategory.Error,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:t(1149,e.DiagnosticCategory.Error,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),const_declarations_must_be_initialized:t(1155,e.DiagnosticCategory.Error,"const_declarations_must_be_initialized_1155","'const' declarations must be initialized."),const_declarations_can_only_be_declared_inside_a_block:t(1156,e.DiagnosticCategory.Error,"const_declarations_can_only_be_declared_inside_a_block_1156","'const' declarations can only be declared inside a block."),let_declarations_can_only_be_declared_inside_a_block:t(1157,e.DiagnosticCategory.Error,"let_declarations_can_only_be_declared_inside_a_block_1157","'let' declarations can only be declared inside a block."),Unterminated_template_literal:t(1160,e.DiagnosticCategory.Error,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:t(1161,e.DiagnosticCategory.Error,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:t(1162,e.DiagnosticCategory.Error,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:t(1163,e.DiagnosticCategory.Error,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:t(1164,e.DiagnosticCategory.Error,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1165,e.DiagnosticCategory.Error,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1166,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_1166","A computed property name in a class property declaration must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1168,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1169,e.DiagnosticCategory.Error,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1170,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:t(1171,e.DiagnosticCategory.Error,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:t(1172,e.DiagnosticCategory.Error,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:t(1173,e.DiagnosticCategory.Error,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:t(1174,e.DiagnosticCategory.Error,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:t(1175,e.DiagnosticCategory.Error,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:t(1176,e.DiagnosticCategory.Error,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:t(1177,e.DiagnosticCategory.Error,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:t(1178,e.DiagnosticCategory.Error,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:t(1179,e.DiagnosticCategory.Error,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:t(1180,e.DiagnosticCategory.Error,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:t(1181,e.DiagnosticCategory.Error,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:t(1182,e.DiagnosticCategory.Error,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:t(1183,e.DiagnosticCategory.Error,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:t(1184,e.DiagnosticCategory.Error,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:t(1185,e.DiagnosticCategory.Error,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:t(1186,e.DiagnosticCategory.Error,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:t(1187,e.DiagnosticCategory.Error,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:t(1188,e.DiagnosticCategory.Error,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:t(1189,e.DiagnosticCategory.Error,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:t(1190,e.DiagnosticCategory.Error,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:t(1191,e.DiagnosticCategory.Error,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:t(1192,e.DiagnosticCategory.Error,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:t(1193,e.DiagnosticCategory.Error,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:t(1194,e.DiagnosticCategory.Error,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:t(1195,e.DiagnosticCategory.Error,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:t(1196,e.DiagnosticCategory.Error,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:t(1197,e.DiagnosticCategory.Error,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:t(1198,e.DiagnosticCategory.Error,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:t(1199,e.DiagnosticCategory.Error,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:t(1200,e.DiagnosticCategory.Error,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:t(1202,e.DiagnosticCategory.Error,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202","Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from \"mod\"', 'import {a} from \"mod\"', 'import d from \"mod\"', or another module format instead."),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:t(1203,e.DiagnosticCategory.Error,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type:t(1205,e.DiagnosticCategory.Error,"Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type_1205","Re-exporting a type when the '--isolatedModules' flag is provided requires using 'export type'."),Decorators_are_not_valid_here:t(1206,e.DiagnosticCategory.Error,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:t(1207,e.DiagnosticCategory.Error,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),_0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_import_export_or_an_empty_export_statement_to_make_it_a_module:t(1208,e.DiagnosticCategory.Error,"_0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_imp_1208","'{0}' cannot be compiled under '--isolatedModules' because it is considered a global script file. Add an import, export, or an empty 'export {}' statement to make it a module."),Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode:t(1210,e.DiagnosticCategory.Error,"Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode_1210","Invalid use of '{0}'. Class definitions are automatically in strict mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:t(1211,e.DiagnosticCategory.Error,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:t(1212,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:t(1213,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:t(1214,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:t(1215,e.DiagnosticCategory.Error,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:t(1216,e.DiagnosticCategory.Error,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:t(1218,e.DiagnosticCategory.Error,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning:t(1219,e.DiagnosticCategory.Error,"Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_t_1219","Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option in your 'tsconfig' or 'jsconfig' to remove this warning."),Generators_are_only_available_when_targeting_ECMAScript_2015_or_higher:t(1220,e.DiagnosticCategory.Error,"Generators_are_only_available_when_targeting_ECMAScript_2015_or_higher_1220","Generators are only available when targeting ECMAScript 2015 or higher."),Generators_are_not_allowed_in_an_ambient_context:t(1221,e.DiagnosticCategory.Error,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:t(1222,e.DiagnosticCategory.Error,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:t(1223,e.DiagnosticCategory.Error,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:t(1224,e.DiagnosticCategory.Error,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:t(1225,e.DiagnosticCategory.Error,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:t(1226,e.DiagnosticCategory.Error,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:t(1227,e.DiagnosticCategory.Error,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:t(1228,e.DiagnosticCategory.Error,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:t(1229,e.DiagnosticCategory.Error,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:t(1230,e.DiagnosticCategory.Error,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_can_only_be_used_in_a_module:t(1231,e.DiagnosticCategory.Error,"An_export_assignment_can_only_be_used_in_a_module_1231","An export assignment can only be used in a module."),An_import_declaration_can_only_be_used_in_a_namespace_or_module:t(1232,e.DiagnosticCategory.Error,"An_import_declaration_can_only_be_used_in_a_namespace_or_module_1232","An import declaration can only be used in a namespace or module."),An_export_declaration_can_only_be_used_in_a_module:t(1233,e.DiagnosticCategory.Error,"An_export_declaration_can_only_be_used_in_a_module_1233","An export declaration can only be used in a module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:t(1234,e.DiagnosticCategory.Error,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_in_a_namespace_or_module:t(1235,e.DiagnosticCategory.Error,"A_namespace_declaration_is_only_allowed_in_a_namespace_or_module_1235","A namespace declaration is only allowed in a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:t(1236,e.DiagnosticCategory.Error,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:t(1237,e.DiagnosticCategory.Error,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:t(1238,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:t(1239,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:t(1240,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:t(1241,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:t(1242,e.DiagnosticCategory.Error,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:t(1243,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:t(1244,e.DiagnosticCategory.Error,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:t(1245,e.DiagnosticCategory.Error,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:t(1246,e.DiagnosticCategory.Error,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:t(1247,e.DiagnosticCategory.Error,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:t(1248,e.DiagnosticCategory.Error,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:t(1249,e.DiagnosticCategory.Error,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5:t(1250,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:t(1251,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_d_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:t(1252,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Modules are automatically in strict mode."),_0_tag_cannot_be_used_independently_as_a_top_level_JSDoc_tag:t(1253,e.DiagnosticCategory.Error,"_0_tag_cannot_be_used_independently_as_a_top_level_JSDoc_tag_1253","'{0}' tag cannot be used independently as a top level JSDoc tag."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:t(1254,e.DiagnosticCategory.Error,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:t(1255,e.DiagnosticCategory.Error,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:t(1257,e.DiagnosticCategory.Error,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),Module_0_can_only_be_default_imported_using_the_1_flag:t(1259,e.DiagnosticCategory.Error,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:t(1260,e.DiagnosticCategory.Error,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:t(1261,e.DiagnosticCategory.Error,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:t(1262,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:t(1263,e.DiagnosticCategory.Error,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:t(1264,e.DiagnosticCategory.Error,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:t(1265,e.DiagnosticCategory.Error,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:t(1266,e.DiagnosticCategory.Error,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),with_statements_are_not_allowed_in_an_async_function_block:t(1300,e.DiagnosticCategory.Error,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:t(1308,e.DiagnosticCategory.Error,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:t(1312,e.DiagnosticCategory.Error,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:t(1313,e.DiagnosticCategory.Error,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:t(1314,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:t(1315,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:t(1316,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:t(1317,e.DiagnosticCategory.Error,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:t(1318,e.DiagnosticCategory.Error,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:t(1319,e.DiagnosticCategory.Error,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1320,e.DiagnosticCategory.Error,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1321,e.DiagnosticCategory.Error,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1322,e.DiagnosticCategory.Error,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_esnext_commonjs_amd_system_or_umd:t(1323,e.DiagnosticCategory.Error,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_esnext_commonjs_amd_system__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'esnext', 'commonjs', 'amd', 'system', or 'umd'."),Dynamic_import_must_have_one_specifier_as_an_argument:t(1324,e.DiagnosticCategory.Error,"Dynamic_import_must_have_one_specifier_as_an_argument_1324","Dynamic import must have one specifier as an argument."),Specifier_of_dynamic_import_cannot_be_spread_element:t(1325,e.DiagnosticCategory.Error,"Specifier_of_dynamic_import_cannot_be_spread_element_1325","Specifier of dynamic import cannot be spread element."),Dynamic_import_cannot_have_type_arguments:t(1326,e.DiagnosticCategory.Error,"Dynamic_import_cannot_have_type_arguments_1326","Dynamic import cannot have type arguments."),String_literal_with_double_quotes_expected:t(1327,e.DiagnosticCategory.Error,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:t(1328,e.DiagnosticCategory.Error,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:t(1329,e.DiagnosticCategory.Error,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:t(1330,e.DiagnosticCategory.Error,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:t(1331,e.DiagnosticCategory.Error,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:t(1332,e.DiagnosticCategory.Error,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:t(1333,e.DiagnosticCategory.Error,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:t(1334,e.DiagnosticCategory.Error,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:t(1335,e.DiagnosticCategory.Error,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead:t(1336,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead_1336","An index signature parameter type cannot be a type alias. Consider writing '[{0}: {1}]: {2}' instead."),An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead:t(1337,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead_1337","An index signature parameter type cannot be a union type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:t(1338,e.DiagnosticCategory.Error,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:t(1339,e.DiagnosticCategory.Error,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:t(1340,e.DiagnosticCategory.Error,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Type_arguments_cannot_be_used_here:t(1342,e.DiagnosticCategory.Error,"Type_arguments_cannot_be_used_here_1342","Type arguments cannot be used here."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_esnext_or_system:t(1343,e.DiagnosticCategory.Error,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_esnext_or_system_1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'esnext', or 'system'."),A_label_is_not_allowed_here:t(1344,e.DiagnosticCategory.Error,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:t(1345,e.DiagnosticCategory.Error,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:t(1346,e.DiagnosticCategory.Error,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:t(1347,e.DiagnosticCategory.Error,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:t(1348,e.DiagnosticCategory.Error,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:t(1349,e.DiagnosticCategory.Error,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:t(1350,e.DiagnosticCategory.Message,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:t(1351,e.DiagnosticCategory.Error,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:t(1352,e.DiagnosticCategory.Error,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:t(1353,e.DiagnosticCategory.Error,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:t(1354,e.DiagnosticCategory.Error,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:t(1355,e.DiagnosticCategory.Error,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:t(1356,e.DiagnosticCategory.Error,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:t(1357,e.DiagnosticCategory.Error,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:t(1358,e.DiagnosticCategory.Error,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:t(1359,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Did_you_mean_to_parenthesize_this_function_type:t(1360,e.DiagnosticCategory.Error,"Did_you_mean_to_parenthesize_this_function_type_1360","Did you mean to parenthesize this function type?"),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:t(1361,e.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:t(1362,e.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:t(1363,e.DiagnosticCategory.Error,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:t(1364,e.DiagnosticCategory.Message,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:t(1365,e.DiagnosticCategory.Message,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:t(1366,e.DiagnosticCategory.Message,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:t(1367,e.DiagnosticCategory.Message,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:t(1368,e.DiagnosticCategory.Message,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_1368","Specify emit/checking behavior for imports that are only used for types"),Did_you_mean_0:t(1369,e.DiagnosticCategory.Message,"Did_you_mean_0_1369","Did you mean '{0}'?"),This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error:t(1371,e.DiagnosticCategory.Error,"This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set__1371","This import is never used as a value and must use 'import type' because 'importsNotUsedAsValues' is set to 'error'."),Convert_to_type_only_import:t(1373,e.DiagnosticCategory.Message,"Convert_to_type_only_import_1373","Convert to type-only import"),Convert_all_imports_not_used_as_a_value_to_type_only_imports:t(1374,e.DiagnosticCategory.Message,"Convert_all_imports_not_used_as_a_value_to_type_only_imports_1374","Convert all imports not used as a value to type-only imports"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:t(1375,e.DiagnosticCategory.Error,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:t(1376,e.DiagnosticCategory.Message,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:t(1377,e.DiagnosticCategory.Message,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher:t(1378,e.DiagnosticCategory.Error,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_t_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'esnext' or 'system', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:t(1379,e.DiagnosticCategory.Error,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:t(1380,e.DiagnosticCategory.Error,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:t(1381,e.DiagnosticCategory.Error,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:t(1382,e.DiagnosticCategory.Error,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Only_named_exports_may_use_export_type:t(1383,e.DiagnosticCategory.Error,"Only_named_exports_may_use_export_type_1383","Only named exports may use 'export type'."),A_new_expression_with_type_arguments_must_always_be_followed_by_a_parenthesized_argument_list:t(1384,e.DiagnosticCategory.Error,"A_new_expression_with_type_arguments_must_always_be_followed_by_a_parenthesized_argument_list_1384","A 'new' expression with type arguments must always be followed by a parenthesized argument list."),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:t(1385,e.DiagnosticCategory.Error,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:t(1386,e.DiagnosticCategory.Error,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:t(1387,e.DiagnosticCategory.Error,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:t(1388,e.DiagnosticCategory.Error,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:t(1389,e.DiagnosticCategory.Error,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),Provides_a_root_package_name_when_using_outFile_with_declarations:t(1390,e.DiagnosticCategory.Message,"Provides_a_root_package_name_when_using_outFile_with_declarations_1390","Provides a root package name when using outFile with declarations."),The_bundledPackageName_option_must_be_provided_when_using_outFile_and_node_module_resolution_with_declaration_emit:t(1391,e.DiagnosticCategory.Error,"The_bundledPackageName_option_must_be_provided_when_using_outFile_and_node_module_resolution_with_de_1391","The `bundledPackageName` option must be provided when using outFile and node module resolution with declaration emit."),An_import_alias_cannot_use_import_type:t(1392,e.DiagnosticCategory.Error,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:t(1393,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:t(1394,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:t(1395,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:t(1396,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:t(1397,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:t(1398,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:t(1399,e.DiagnosticCategory.Message,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:t(1400,e.DiagnosticCategory.Message,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:t(1401,e.DiagnosticCategory.Message,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:t(1402,e.DiagnosticCategory.Message,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:t(1403,e.DiagnosticCategory.Message,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:t(1404,e.DiagnosticCategory.Message,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:t(1405,e.DiagnosticCategory.Message,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:t(1406,e.DiagnosticCategory.Message,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:t(1407,e.DiagnosticCategory.Message,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:t(1408,e.DiagnosticCategory.Message,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:t(1409,e.DiagnosticCategory.Message,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:t(1410,e.DiagnosticCategory.Message,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:t(1411,e.DiagnosticCategory.Message,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:t(1412,e.DiagnosticCategory.Message,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:t(1413,e.DiagnosticCategory.Message,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:t(1414,e.DiagnosticCategory.Message,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:t(1415,e.DiagnosticCategory.Message,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:t(1416,e.DiagnosticCategory.Message,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:t(1417,e.DiagnosticCategory.Message,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:t(1418,e.DiagnosticCategory.Message,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:t(1419,e.DiagnosticCategory.Message,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:t(1420,e.DiagnosticCategory.Message,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:t(1421,e.DiagnosticCategory.Message,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:t(1422,e.DiagnosticCategory.Message,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:t(1423,e.DiagnosticCategory.Message,"File_is_library_specified_here_1423","File is library specified here."),Default_library:t(1424,e.DiagnosticCategory.Message,"Default_library_1424","Default library"),Default_library_for_target_0:t(1425,e.DiagnosticCategory.Message,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:t(1426,e.DiagnosticCategory.Message,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:t(1427,e.DiagnosticCategory.Message,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:t(1428,e.DiagnosticCategory.Message,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:t(1429,e.DiagnosticCategory.Message,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:t(1430,e.DiagnosticCategory.Message,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:t(1431,e.DiagnosticCategory.Error,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher:t(1432,e.DiagnosticCategory.Error,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'esnext' or 'system', and the 'target' option is set to 'es2017' or higher."),The_types_of_0_are_incompatible_between_these_types:t(2200,e.DiagnosticCategory.Error,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:t(2201,e.DiagnosticCategory.Error,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:t(2202,e.DiagnosticCategory.Error,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:t(2203,e.DiagnosticCategory.Error,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:t(2204,e.DiagnosticCategory.Error,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:t(2205,e.DiagnosticCategory.Error,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Duplicate_identifier_0:t(2300,e.DiagnosticCategory.Error,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:t(2301,e.DiagnosticCategory.Error,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:t(2302,e.DiagnosticCategory.Error,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:t(2303,e.DiagnosticCategory.Error,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:t(2304,e.DiagnosticCategory.Error,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:t(2305,e.DiagnosticCategory.Error,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:t(2306,e.DiagnosticCategory.Error,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:t(2307,e.DiagnosticCategory.Error,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:t(2308,e.DiagnosticCategory.Error,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:t(2309,e.DiagnosticCategory.Error,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:t(2310,e.DiagnosticCategory.Error,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),A_class_may_only_extend_another_class:t(2311,e.DiagnosticCategory.Error,"A_class_may_only_extend_another_class_2311","A class may only extend another class."),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:t(2312,e.DiagnosticCategory.Error,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:t(2313,e.DiagnosticCategory.Error,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:t(2314,e.DiagnosticCategory.Error,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:t(2315,e.DiagnosticCategory.Error,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:t(2316,e.DiagnosticCategory.Error,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:t(2317,e.DiagnosticCategory.Error,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:t(2318,e.DiagnosticCategory.Error,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:t(2319,e.DiagnosticCategory.Error,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:t(2320,e.DiagnosticCategory.Error,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:t(2321,e.DiagnosticCategory.Error,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:t(2322,e.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:t(2323,e.DiagnosticCategory.Error,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:t(2324,e.DiagnosticCategory.Error,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:t(2325,e.DiagnosticCategory.Error,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:t(2326,e.DiagnosticCategory.Error,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:t(2327,e.DiagnosticCategory.Error,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:t(2328,e.DiagnosticCategory.Error,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_is_missing_in_type_0:t(2329,e.DiagnosticCategory.Error,"Index_signature_is_missing_in_type_0_2329","Index signature is missing in type '{0}'."),Index_signatures_are_incompatible:t(2330,e.DiagnosticCategory.Error,"Index_signatures_are_incompatible_2330","Index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:t(2331,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:t(2332,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_constructor_arguments:t(2333,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_constructor_arguments_2333","'this' cannot be referenced in constructor arguments."),this_cannot_be_referenced_in_a_static_property_initializer:t(2334,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:t(2335,e.DiagnosticCategory.Error,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:t(2336,e.DiagnosticCategory.Error,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:t(2337,e.DiagnosticCategory.Error,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:t(2338,e.DiagnosticCategory.Error,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:t(2339,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:t(2340,e.DiagnosticCategory.Error,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:t(2341,e.DiagnosticCategory.Error,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),An_index_expression_argument_must_be_of_type_string_number_symbol_or_any:t(2342,e.DiagnosticCategory.Error,"An_index_expression_argument_must_be_of_type_string_number_symbol_or_any_2342","An index expression argument must be of type 'string', 'number', 'symbol', or 'any'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:t(2343,e.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:t(2344,e.DiagnosticCategory.Error,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:t(2345,e.DiagnosticCategory.Error,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Call_target_does_not_contain_any_signatures:t(2346,e.DiagnosticCategory.Error,"Call_target_does_not_contain_any_signatures_2346","Call target does not contain any signatures."),Untyped_function_calls_may_not_accept_type_arguments:t(2347,e.DiagnosticCategory.Error,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:t(2348,e.DiagnosticCategory.Error,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:t(2349,e.DiagnosticCategory.Error,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:t(2350,e.DiagnosticCategory.Error,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:t(2351,e.DiagnosticCategory.Error,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:t(2352,e.DiagnosticCategory.Error,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:t(2353,e.DiagnosticCategory.Error,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:t(2354,e.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value:t(2355,e.DiagnosticCategory.Error,"A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'void' nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:t(2356,e.DiagnosticCategory.Error,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:t(2357,e.DiagnosticCategory.Error,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:t(2358,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type:t(2359,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_F_2359","The right-hand side of an 'instanceof' expression must be of type 'any' or of a type assignable to the 'Function' interface type."),The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol:t(2360,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol_2360","The left-hand side of an 'in' expression must be of type 'any', 'string', 'number', or 'symbol'."),The_right_hand_side_of_an_in_expression_must_not_be_a_primitive:t(2361,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_in_expression_must_not_be_a_primitive_2361","The right-hand side of an 'in' expression must not be a primitive."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:t(2362,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:t(2363,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:t(2364,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:t(2365,e.DiagnosticCategory.Error,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:t(2366,e.DiagnosticCategory.Error,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap:t(2367,e.DiagnosticCategory.Error,"This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap_2367","This condition will always return '{0}' since the types '{1}' and '{2}' have no overlap."),Type_parameter_name_cannot_be_0:t(2368,e.DiagnosticCategory.Error,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:t(2369,e.DiagnosticCategory.Error,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:t(2370,e.DiagnosticCategory.Error,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:t(2371,e.DiagnosticCategory.Error,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:t(2372,e.DiagnosticCategory.Error,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:t(2373,e.DiagnosticCategory.Error,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_string_index_signature:t(2374,e.DiagnosticCategory.Error,"Duplicate_string_index_signature_2374","Duplicate string index signature."),Duplicate_number_index_signature:t(2375,e.DiagnosticCategory.Error,"Duplicate_number_index_signature_2375","Duplicate number index signature."),A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_properties_parameter_properties_or_private_identifiers:t(2376,e.DiagnosticCategory.Error,"A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_proper_2376","A 'super' call must be the first statement in the constructor when a class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:t(2377,e.DiagnosticCategory.Error,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:t(2378,e.DiagnosticCategory.Error,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Getter_and_setter_accessors_do_not_agree_in_visibility:t(2379,e.DiagnosticCategory.Error,"Getter_and_setter_accessors_do_not_agree_in_visibility_2379","Getter and setter accessors do not agree in visibility."),get_and_set_accessor_must_have_the_same_type:t(2380,e.DiagnosticCategory.Error,"get_and_set_accessor_must_have_the_same_type_2380","'get' and 'set' accessor must have the same type."),A_signature_with_an_implementation_cannot_use_a_string_literal_type:t(2381,e.DiagnosticCategory.Error,"A_signature_with_an_implementation_cannot_use_a_string_literal_type_2381","A signature with an implementation cannot use a string literal type."),Specialized_overload_signature_is_not_assignable_to_any_non_specialized_signature:t(2382,e.DiagnosticCategory.Error,"Specialized_overload_signature_is_not_assignable_to_any_non_specialized_signature_2382","Specialized overload signature is not assignable to any non-specialized signature."),Overload_signatures_must_all_be_exported_or_non_exported:t(2383,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:t(2384,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:t(2385,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:t(2386,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:t(2387,e.DiagnosticCategory.Error,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:t(2388,e.DiagnosticCategory.Error,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:t(2389,e.DiagnosticCategory.Error,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:t(2390,e.DiagnosticCategory.Error,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:t(2391,e.DiagnosticCategory.Error,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:t(2392,e.DiagnosticCategory.Error,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:t(2393,e.DiagnosticCategory.Error,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:t(2394,e.DiagnosticCategory.Error,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:t(2395,e.DiagnosticCategory.Error,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:t(2396,e.DiagnosticCategory.Error,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:t(2397,e.DiagnosticCategory.Error,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:t(2398,e.DiagnosticCategory.Error,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:t(2399,e.DiagnosticCategory.Error,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:t(2400,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),Duplicate_identifier_super_Compiler_uses_super_to_capture_base_class_reference:t(2401,e.DiagnosticCategory.Error,"Duplicate_identifier_super_Compiler_uses_super_to_capture_base_class_reference_2401","Duplicate identifier '_super'. Compiler uses '_super' to capture base class reference."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:t(2402,e.DiagnosticCategory.Error,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:t(2403,e.DiagnosticCategory.Error,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:t(2404,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:t(2405,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:t(2406,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:t(2407,e.DiagnosticCategory.Error,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:t(2408,e.DiagnosticCategory.Error,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:t(2409,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:t(2410,e.DiagnosticCategory.Error,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Property_0_of_type_1_is_not_assignable_to_string_index_type_2:t(2411,e.DiagnosticCategory.Error,"Property_0_of_type_1_is_not_assignable_to_string_index_type_2_2411","Property '{0}' of type '{1}' is not assignable to string index type '{2}'."),Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2:t(2412,e.DiagnosticCategory.Error,"Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2_2412","Property '{0}' of type '{1}' is not assignable to numeric index type '{2}'."),Numeric_index_type_0_is_not_assignable_to_string_index_type_1:t(2413,e.DiagnosticCategory.Error,"Numeric_index_type_0_is_not_assignable_to_string_index_type_1_2413","Numeric index type '{0}' is not assignable to string index type '{1}'."),Class_name_cannot_be_0:t(2414,e.DiagnosticCategory.Error,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:t(2415,e.DiagnosticCategory.Error,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:t(2416,e.DiagnosticCategory.Error,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:t(2417,e.DiagnosticCategory.Error,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:t(2418,e.DiagnosticCategory.Error,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:t(2419,e.DiagnosticCategory.Error,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:t(2420,e.DiagnosticCategory.Error,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:t(2422,e.DiagnosticCategory.Error,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:t(2423,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:t(2425,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:t(2426,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:t(2427,e.DiagnosticCategory.Error,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:t(2428,e.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:t(2430,e.DiagnosticCategory.Error,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:t(2431,e.DiagnosticCategory.Error,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:t(2432,e.DiagnosticCategory.Error,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:t(2433,e.DiagnosticCategory.Error,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:t(2434,e.DiagnosticCategory.Error,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:t(2435,e.DiagnosticCategory.Error,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:t(2436,e.DiagnosticCategory.Error,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:t(2437,e.DiagnosticCategory.Error,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:t(2438,e.DiagnosticCategory.Error,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:t(2439,e.DiagnosticCategory.Error,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:t(2440,e.DiagnosticCategory.Error,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:t(2441,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:t(2442,e.DiagnosticCategory.Error,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:t(2443,e.DiagnosticCategory.Error,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:t(2444,e.DiagnosticCategory.Error,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:t(2445,e.DiagnosticCategory.Error,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1:t(2446,e.DiagnosticCategory.Error,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:t(2447,e.DiagnosticCategory.Error,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:t(2448,e.DiagnosticCategory.Error,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:t(2449,e.DiagnosticCategory.Error,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:t(2450,e.DiagnosticCategory.Error,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:t(2451,e.DiagnosticCategory.Error,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:t(2452,e.DiagnosticCategory.Error,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),The_type_argument_for_type_parameter_0_cannot_be_inferred_from_the_usage_Consider_specifying_the_type_arguments_explicitly:t(2453,e.DiagnosticCategory.Error,"The_type_argument_for_type_parameter_0_cannot_be_inferred_from_the_usage_Consider_specifying_the_typ_2453","The type argument for type parameter '{0}' cannot be inferred from the usage. Consider specifying the type arguments explicitly."),Variable_0_is_used_before_being_assigned:t(2454,e.DiagnosticCategory.Error,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_argument_candidate_1_is_not_a_valid_type_argument_because_it_is_not_a_supertype_of_candidate_0:t(2455,e.DiagnosticCategory.Error,"Type_argument_candidate_1_is_not_a_valid_type_argument_because_it_is_not_a_supertype_of_candidate_0_2455","Type argument candidate '{1}' is not a valid type argument because it is not a supertype of candidate '{0}'."),Type_alias_0_circularly_references_itself:t(2456,e.DiagnosticCategory.Error,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:t(2457,e.DiagnosticCategory.Error,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:t(2458,e.DiagnosticCategory.Error,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:t(2459,e.DiagnosticCategory.Error,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:t(2460,e.DiagnosticCategory.Error,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:t(2461,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:t(2462,e.DiagnosticCategory.Error,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:t(2463,e.DiagnosticCategory.Error,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:t(2464,e.DiagnosticCategory.Error,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:t(2465,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:t(2466,e.DiagnosticCategory.Error,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:t(2467,e.DiagnosticCategory.Error,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:t(2468,e.DiagnosticCategory.Error,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:t(2469,e.DiagnosticCategory.Error,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object:t(2470,e.DiagnosticCategory.Error,"Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object_2470","'Symbol' reference does not refer to the global Symbol constructor object."),A_computed_property_name_of_the_form_0_must_be_of_type_symbol:t(2471,e.DiagnosticCategory.Error,"A_computed_property_name_of_the_form_0_must_be_of_type_symbol_2471","A computed property name of the form '{0}' must be of type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:t(2472,e.DiagnosticCategory.Error,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:t(2473,e.DiagnosticCategory.Error,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values:t(2474,e.DiagnosticCategory.Error,"const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values_2474","const enum member initializers can only contain literal values and other computed enum values."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:t(2475,e.DiagnosticCategory.Error,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:t(2476,e.DiagnosticCategory.Error,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:t(2477,e.DiagnosticCategory.Error,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:t(2478,e.DiagnosticCategory.Error,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),Property_0_does_not_exist_on_const_enum_1:t(2479,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_const_enum_1_2479","Property '{0}' does not exist on 'const' enum '{1}'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:t(2480,e.DiagnosticCategory.Error,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:t(2481,e.DiagnosticCategory.Error,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:t(2483,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:t(2484,e.DiagnosticCategory.Error,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:t(2487,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:t(2488,e.DiagnosticCategory.Error,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:t(2489,e.DiagnosticCategory.Error,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:t(2490,e.DiagnosticCategory.Error,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:t(2491,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:t(2492,e.DiagnosticCategory.Error,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:t(2493,e.DiagnosticCategory.Error,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:t(2494,e.DiagnosticCategory.Error,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:t(2495,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression:t(2496,e.DiagnosticCategory.Error,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_stand_2496","The 'arguments' object cannot be referenced in an arrow function in ES3 and ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:t(2497,e.DiagnosticCategory.Error,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:t(2498,e.DiagnosticCategory.Error,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:t(2499,e.DiagnosticCategory.Error,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:t(2500,e.DiagnosticCategory.Error,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:t(2501,e.DiagnosticCategory.Error,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:t(2502,e.DiagnosticCategory.Error,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:t(2503,e.DiagnosticCategory.Error,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:t(2504,e.DiagnosticCategory.Error,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:t(2505,e.DiagnosticCategory.Error,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:t(2506,e.DiagnosticCategory.Error,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:t(2507,e.DiagnosticCategory.Error,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:t(2508,e.DiagnosticCategory.Error,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:t(2509,e.DiagnosticCategory.Error,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:t(2510,e.DiagnosticCategory.Error,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:t(2511,e.DiagnosticCategory.Error,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:t(2512,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:t(2513,e.DiagnosticCategory.Error,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),Classes_containing_abstract_methods_must_be_marked_abstract:t(2514,e.DiagnosticCategory.Error,"Classes_containing_abstract_methods_must_be_marked_abstract_2514","Classes containing abstract methods must be marked abstract."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:t(2515,e.DiagnosticCategory.Error,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member '{1}' from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:t(2516,e.DiagnosticCategory.Error,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:t(2517,e.DiagnosticCategory.Error,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:t(2518,e.DiagnosticCategory.Error,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:t(2519,e.DiagnosticCategory.Error,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:t(2520,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),Expression_resolves_to_variable_declaration_0_that_compiler_uses_to_support_async_functions:t(2521,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_0_that_compiler_uses_to_support_async_functions_2521","Expression resolves to variable declaration '{0}' that compiler uses to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method:t(2522,e.DiagnosticCategory.Error,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_usi_2522","The 'arguments' object cannot be referenced in an async function or method in ES3 and ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:t(2523,e.DiagnosticCategory.Error,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:t(2524,e.DiagnosticCategory.Error,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value:t(2525,e.DiagnosticCategory.Error,"Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value_2525","Initializer provides no value for this binding element and the binding element has no default value."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:t(2526,e.DiagnosticCategory.Error,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:t(2527,e.DiagnosticCategory.Error,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:t(2528,e.DiagnosticCategory.Error,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:t(2529,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:t(2530,e.DiagnosticCategory.Error,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:t(2531,e.DiagnosticCategory.Error,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:t(2532,e.DiagnosticCategory.Error,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:t(2533,e.DiagnosticCategory.Error,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:t(2534,e.DiagnosticCategory.Error,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Enum_type_0_has_members_with_initializers_that_are_not_literals:t(2535,e.DiagnosticCategory.Error,"Enum_type_0_has_members_with_initializers_that_are_not_literals_2535","Enum type '{0}' has members with initializers that are not literals."),Type_0_cannot_be_used_to_index_type_1:t(2536,e.DiagnosticCategory.Error,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:t(2537,e.DiagnosticCategory.Error,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:t(2538,e.DiagnosticCategory.Error,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:t(2539,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:t(2540,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),The_target_of_an_assignment_must_be_a_variable_or_a_property_access:t(2541,e.DiagnosticCategory.Error,"The_target_of_an_assignment_must_be_a_variable_or_a_property_access_2541","The target of an assignment must be a variable or a property access."),Index_signature_in_type_0_only_permits_reading:t(2542,e.DiagnosticCategory.Error,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:t(2543,e.DiagnosticCategory.Error,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:t(2544,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:t(2545,e.DiagnosticCategory.Error,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:t(2547,e.DiagnosticCategory.Error,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:t(2548,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:t(2549,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:t(2550,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the `lib` compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:t(2551,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:t(2552,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:t(2553,e.DiagnosticCategory.Error,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:t(2554,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:t(2555,e.DiagnosticCategory.Error,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),Expected_0_arguments_but_got_1_or_more:t(2556,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_or_more_2556","Expected {0} arguments, but got {1} or more."),Expected_at_least_0_arguments_but_got_1_or_more:t(2557,e.DiagnosticCategory.Error,"Expected_at_least_0_arguments_but_got_1_or_more_2557","Expected at least {0} arguments, but got {1} or more."),Expected_0_type_arguments_but_got_1:t(2558,e.DiagnosticCategory.Error,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:t(2559,e.DiagnosticCategory.Error,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:t(2560,e.DiagnosticCategory.Error,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:t(2561,e.DiagnosticCategory.Error,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:t(2562,e.DiagnosticCategory.Error,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:t(2563,e.DiagnosticCategory.Error,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:t(2564,e.DiagnosticCategory.Error,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:t(2565,e.DiagnosticCategory.Error,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:t(2566,e.DiagnosticCategory.Error,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:t(2567,e.DiagnosticCategory.Error,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators:t(2569,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterati_2569","Type '{0}' is not an array type or a string type. Use compiler option '--downlevelIteration' to allow iterating of iterators."),Object_is_of_type_unknown:t(2571,e.DiagnosticCategory.Error,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),Rest_signatures_are_incompatible:t(2572,e.DiagnosticCategory.Error,"Rest_signatures_are_incompatible_2572","Rest signatures are incompatible."),Property_0_is_incompatible_with_rest_element_type:t(2573,e.DiagnosticCategory.Error,"Property_0_is_incompatible_with_rest_element_type_2573","Property '{0}' is incompatible with rest element type."),A_rest_element_type_must_be_an_array_type:t(2574,e.DiagnosticCategory.Error,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:t(2575,e.DiagnosticCategory.Error,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:t(2576,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:t(2577,e.DiagnosticCategory.Error,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:t(2578,e.DiagnosticCategory.Error,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:t(2580,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:t(2581,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:t(2582,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:t(2583,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the `lib` compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:t(2584,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the `lib` compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:t(2585,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the `lib` compiler option to es2015 or later."),Enum_type_0_circularly_references_itself:t(2586,e.DiagnosticCategory.Error,"Enum_type_0_circularly_references_itself_2586","Enum type '{0}' circularly references itself."),JSDoc_type_0_circularly_references_itself:t(2587,e.DiagnosticCategory.Error,"JSDoc_type_0_circularly_references_itself_2587","JSDoc type '{0}' circularly references itself."),Cannot_assign_to_0_because_it_is_a_constant:t(2588,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:t(2589,e.DiagnosticCategory.Error,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:t(2590,e.DiagnosticCategory.Error,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:t(2591,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add `node` to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:t(2592,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add `jquery` to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:t(2593,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add `jest` or `mocha` to the types field in your tsconfig."),This_module_is_declared_with_using_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:t(2594,e.DiagnosticCategory.Error,"This_module_is_declared_with_using_export_and_can_only_be_used_with_a_default_import_when_using_the__2594","This module is declared with using 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:t(2595,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:t(2596,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:t(2597,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:t(2598,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_attributes_type_0_may_not_be_a_union_type:t(2600,e.DiagnosticCategory.Error,"JSX_element_attributes_type_0_may_not_be_a_union_type_2600","JSX element attributes type '{0}' may not be a union type."),The_return_type_of_a_JSX_element_constructor_must_return_an_object_type:t(2601,e.DiagnosticCategory.Error,"The_return_type_of_a_JSX_element_constructor_must_return_an_object_type_2601","The return type of a JSX element constructor must return an object type."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:t(2602,e.DiagnosticCategory.Error,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:t(2603,e.DiagnosticCategory.Error,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:t(2604,e.DiagnosticCategory.Error,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements:t(2605,e.DiagnosticCategory.Error,"JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements_2605","JSX element type '{0}' is not a constructor function for JSX elements."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:t(2606,e.DiagnosticCategory.Error,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:t(2607,e.DiagnosticCategory.Error,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:t(2608,e.DiagnosticCategory.Error,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:t(2609,e.DiagnosticCategory.Error,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:t(2610,e.DiagnosticCategory.Error,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:t(2611,e.DiagnosticCategory.Error,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:t(2612,e.DiagnosticCategory.Error,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:t(2613,e.DiagnosticCategory.Error,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:t(2614,e.DiagnosticCategory.Error,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:t(2615,e.DiagnosticCategory.Error,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:t(2616,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:t(2617,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:t(2618,e.DiagnosticCategory.Error,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:t(2619,e.DiagnosticCategory.Error,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:t(2620,e.DiagnosticCategory.Error,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:t(2621,e.DiagnosticCategory.Error,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:t(2623,e.DiagnosticCategory.Error,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:t(2624,e.DiagnosticCategory.Error,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:t(2625,e.DiagnosticCategory.Error,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:t(2626,e.DiagnosticCategory.Error,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:t(2627,e.DiagnosticCategory.Error,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:t(2649,e.DiagnosticCategory.Error,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:t(2651,e.DiagnosticCategory.Error,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:t(2652,e.DiagnosticCategory.Error,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:t(2653,e.DiagnosticCategory.Error,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Exported_external_package_typings_file_cannot_contain_tripleslash_references_Please_contact_the_package_author_to_update_the_package_definition:t(2654,e.DiagnosticCategory.Error,"Exported_external_package_typings_file_cannot_contain_tripleslash_references_Please_contact_the_pack_2654","Exported external package typings file cannot contain tripleslash references. Please contact the package author to update the package definition."),Exported_external_package_typings_file_0_is_not_a_module_Please_contact_the_package_author_to_update_the_package_definition:t(2656,e.DiagnosticCategory.Error,"Exported_external_package_typings_file_0_is_not_a_module_Please_contact_the_package_author_to_update_2656","Exported external package typings file '{0}' is not a module. Please contact the package author to update the package definition."),JSX_expressions_must_have_one_parent_element:t(2657,e.DiagnosticCategory.Error,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:t(2658,e.DiagnosticCategory.Error,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:t(2659,e.DiagnosticCategory.Error,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:t(2660,e.DiagnosticCategory.Error,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:t(2661,e.DiagnosticCategory.Error,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:t(2662,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:t(2663,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:t(2664,e.DiagnosticCategory.Error,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:t(2665,e.DiagnosticCategory.Error,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:t(2666,e.DiagnosticCategory.Error,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:t(2667,e.DiagnosticCategory.Error,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:t(2668,e.DiagnosticCategory.Error,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:t(2669,e.DiagnosticCategory.Error,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:t(2670,e.DiagnosticCategory.Error,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:t(2671,e.DiagnosticCategory.Error,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:t(2672,e.DiagnosticCategory.Error,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:t(2673,e.DiagnosticCategory.Error,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:t(2674,e.DiagnosticCategory.Error,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:t(2675,e.DiagnosticCategory.Error,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:t(2676,e.DiagnosticCategory.Error,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:t(2677,e.DiagnosticCategory.Error,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:t(2678,e.DiagnosticCategory.Error,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:t(2679,e.DiagnosticCategory.Error,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:t(2680,e.DiagnosticCategory.Error,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:t(2681,e.DiagnosticCategory.Error,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),get_and_set_accessor_must_have_the_same_this_type:t(2682,e.DiagnosticCategory.Error,"get_and_set_accessor_must_have_the_same_this_type_2682","'get' and 'set' accessor must have the same 'this' type."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:t(2683,e.DiagnosticCategory.Error,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:t(2684,e.DiagnosticCategory.Error,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:t(2685,e.DiagnosticCategory.Error,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:t(2686,e.DiagnosticCategory.Error,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:t(2687,e.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:t(2688,e.DiagnosticCategory.Error,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:t(2689,e.DiagnosticCategory.Error,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:t(2690,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead:t(2691,e.DiagnosticCategory.Error,"An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead_2691","An import path cannot end with a '{0}' extension. Consider importing '{1}' instead."),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:t(2692,e.DiagnosticCategory.Error,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:t(2693,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:t(2694,e.DiagnosticCategory.Error,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:t(2695,e.DiagnosticCategory.Error,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:t(2696,e.DiagnosticCategory.Error,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:t(2697,e.DiagnosticCategory.Error,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your `--lib` option."),Spread_types_may_only_be_created_from_object_types:t(2698,e.DiagnosticCategory.Error,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:t(2699,e.DiagnosticCategory.Error,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:t(2700,e.DiagnosticCategory.Error,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:t(2701,e.DiagnosticCategory.Error,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:t(2702,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:t(2703,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:t(2704,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:t(2705,e.DiagnosticCategory.Error,"An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_de_2705","An async function or method in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your `--lib` option."),Required_type_parameters_may_not_follow_optional_type_parameters:t(2706,e.DiagnosticCategory.Error,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:t(2707,e.DiagnosticCategory.Error,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:t(2708,e.DiagnosticCategory.Error,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:t(2709,e.DiagnosticCategory.Error,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:t(2710,e.DiagnosticCategory.Error,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:t(2711,e.DiagnosticCategory.Error,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your `--lib` option."),A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:t(2712,e.DiagnosticCategory.Error,"A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declarat_2712","A dynamic import call in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your `--lib` option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:t(2713,e.DiagnosticCategory.Error,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713","Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}[\"{1}\"]'?"),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:t(2714,e.DiagnosticCategory.Error,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:t(2715,e.DiagnosticCategory.Error,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:t(2716,e.DiagnosticCategory.Error,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:t(2717,e.DiagnosticCategory.Error,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:t(2718,e.DiagnosticCategory.Error,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:t(2719,e.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:t(2720,e.DiagnosticCategory.Error,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:t(2721,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:t(2722,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:t(2723,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:t(2724,e.DiagnosticCategory.Error,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:t(2725,e.DiagnosticCategory.Error,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:t(2726,e.DiagnosticCategory.Error,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:t(2727,e.DiagnosticCategory.Error,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:t(2728,e.DiagnosticCategory.Message,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:t(2729,e.DiagnosticCategory.Error,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:t(2730,e.DiagnosticCategory.Error,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:t(2731,e.DiagnosticCategory.Error,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:t(2732,e.DiagnosticCategory.Error,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:t(2733,e.DiagnosticCategory.Error,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:t(2734,e.DiagnosticCategory.Error,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:t(2735,e.DiagnosticCategory.Error,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:t(2736,e.DiagnosticCategory.Error,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:t(2737,e.DiagnosticCategory.Error,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:t(2738,e.DiagnosticCategory.Message,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:t(2739,e.DiagnosticCategory.Error,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:t(2740,e.DiagnosticCategory.Error,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:t(2741,e.DiagnosticCategory.Error,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:t(2742,e.DiagnosticCategory.Error,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:t(2743,e.DiagnosticCategory.Error,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:t(2744,e.DiagnosticCategory.Error,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:t(2745,e.DiagnosticCategory.Error,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:t(2746,e.DiagnosticCategory.Error,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:t(2747,e.DiagnosticCategory.Error,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided:t(2748,e.DiagnosticCategory.Error,"Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided_2748","Cannot access ambient const enums when the '--isolatedModules' flag is provided."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:t(2749,e.DiagnosticCategory.Error,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:t(2750,e.DiagnosticCategory.Error,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:t(2751,e.DiagnosticCategory.Error,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:t(2752,e.DiagnosticCategory.Error,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:t(2753,e.DiagnosticCategory.Error,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:t(2754,e.DiagnosticCategory.Error,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:t(2755,e.DiagnosticCategory.Error,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:t(2756,e.DiagnosticCategory.Error,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:t(2757,e.DiagnosticCategory.Error,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:t(2758,e.DiagnosticCategory.Error,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:t(2759,e.DiagnosticCategory.Error,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:t(2760,e.DiagnosticCategory.Error,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:t(2761,e.DiagnosticCategory.Error,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:t(2762,e.DiagnosticCategory.Error,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:t(2763,e.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:t(2764,e.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:t(2765,e.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:t(2766,e.DiagnosticCategory.Error,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:t(2767,e.DiagnosticCategory.Error,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:t(2768,e.DiagnosticCategory.Error,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:t(2769,e.DiagnosticCategory.Error,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:t(2770,e.DiagnosticCategory.Error,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:t(2771,e.DiagnosticCategory.Error,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:t(2772,e.DiagnosticCategory.Error,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:t(2773,e.DiagnosticCategory.Error,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it_instead:t(2774,e.DiagnosticCategory.Error,"This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it__2774","This condition will always return true since the function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:t(2775,e.DiagnosticCategory.Error,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:t(2776,e.DiagnosticCategory.Error,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:t(2777,e.DiagnosticCategory.Error,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:t(2778,e.DiagnosticCategory.Error,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:t(2779,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:t(2780,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:t(2781,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:t(2782,e.DiagnosticCategory.Message,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:t(2783,e.DiagnosticCategory.Error,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:t(2784,e.DiagnosticCategory.Error,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:t(2785,e.DiagnosticCategory.Error,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:t(2786,e.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:t(2787,e.DiagnosticCategory.Error,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:t(2788,e.DiagnosticCategory.Error,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:t(2789,e.DiagnosticCategory.Error,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:t(2790,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:t(2791,e.DiagnosticCategory.Error,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:t(2792,e.DiagnosticCategory.Error,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_th_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:t(2793,e.DiagnosticCategory.Error,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:t(2794,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:t(2795,e.DiagnosticCategory.Error,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:t(2796,e.DiagnosticCategory.Error,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:t(2797,e.DiagnosticCategory.Error,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:t(2798,e.DiagnosticCategory.Error,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:t(2799,e.DiagnosticCategory.Error,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:t(2800,e.DiagnosticCategory.Error,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),Import_declaration_0_is_using_private_name_1:t(4e3,e.DiagnosticCategory.Error,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:t(4002,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:t(4004,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:t(4006,e.DiagnosticCategory.Error,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:t(4008,e.DiagnosticCategory.Error,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:t(4010,e.DiagnosticCategory.Error,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:t(4012,e.DiagnosticCategory.Error,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:t(4014,e.DiagnosticCategory.Error,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:t(4016,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:t(4019,e.DiagnosticCategory.Error,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:t(4020,e.DiagnosticCategory.Error,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:t(4021,e.DiagnosticCategory.Error,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:t(4022,e.DiagnosticCategory.Error,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4023,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:t(4024,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:t(4025,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4026,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4027,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:t(4028,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4029,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4030,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:t(4031,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4032,e.DiagnosticCategory.Error,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:t(4033,e.DiagnosticCategory.Error,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4034,e.DiagnosticCategory.Error,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:t(4035,e.DiagnosticCategory.Error,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4036,e.DiagnosticCategory.Error,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:t(4037,e.DiagnosticCategory.Error,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4038,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4039,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:t(4040,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4041,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4042,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:t(4043,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4044,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:t(4045,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4046,e.DiagnosticCategory.Error,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:t(4047,e.DiagnosticCategory.Error,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4048,e.DiagnosticCategory.Error,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:t(4049,e.DiagnosticCategory.Error,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:t(4050,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:t(4051,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:t(4052,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:t(4053,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:t(4054,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:t(4055,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4056,e.DiagnosticCategory.Error,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:t(4057,e.DiagnosticCategory.Error,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:t(4058,e.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:t(4059,e.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:t(4060,e.DiagnosticCategory.Warning,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4061,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4062,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:t(4063,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4064,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:t(4065,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4066,e.DiagnosticCategory.Error,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:t(4067,e.DiagnosticCategory.Error,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4068,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4069,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:t(4070,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4071,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4072,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:t(4073,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4074,e.DiagnosticCategory.Error,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:t(4075,e.DiagnosticCategory.Error,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4076,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:t(4077,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:t(4078,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:t(4081,e.DiagnosticCategory.Error,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:t(4082,e.DiagnosticCategory.Error,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:t(4083,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:t(4084,e.DiagnosticCategory.Error,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict:t(4090,e.DiagnosticCategory.Error,"Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_librar_4090","Conflicting definitions for '{0}' found at '{1}' and '{2}'. Consider installing a specific version of this library to resolve the conflict."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4091,e.DiagnosticCategory.Error,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:t(4092,e.DiagnosticCategory.Error,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_class_expression_may_not_be_private_or_protected:t(4094,e.DiagnosticCategory.Error,"Property_0_of_exported_class_expression_may_not_be_private_or_protected_4094","Property '{0}' of exported class expression may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4095,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4096,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:t(4097,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4098,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4099,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:t(4100,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4101,e.DiagnosticCategory.Error,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:t(4102,e.DiagnosticCategory.Error,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:t(4103,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:t(4104,e.DiagnosticCategory.Error,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:t(4105,e.DiagnosticCategory.Error,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:t(4106,e.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:t(4107,e.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4108,e.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:t(4109,e.DiagnosticCategory.Error,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:t(4110,e.DiagnosticCategory.Error,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:t(4111,e.DiagnosticCategory.Error,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),The_current_host_does_not_support_the_0_option:t(5001,e.DiagnosticCategory.Error,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:t(5009,e.DiagnosticCategory.Error,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:t(5010,e.DiagnosticCategory.Error,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:t(5012,e.DiagnosticCategory.Error,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:t(5014,e.DiagnosticCategory.Error,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:t(5023,e.DiagnosticCategory.Error,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:t(5024,e.DiagnosticCategory.Error,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:t(5025,e.DiagnosticCategory.Error,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:t(5033,e.DiagnosticCategory.Error,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:t(5042,e.DiagnosticCategory.Error,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:t(5047,e.DiagnosticCategory.Error,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_cannot_be_specified_when_option_target_is_ES3:t(5048,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_when_option_target_is_ES3_5048","Option '{0}' cannot be specified when option 'target' is 'ES3'."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:t(5051,e.DiagnosticCategory.Error,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:t(5052,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:t(5053,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:t(5054,e.DiagnosticCategory.Error,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:t(5055,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:t(5056,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:t(5057,e.DiagnosticCategory.Error,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:t(5058,e.DiagnosticCategory.Error,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:t(5059,e.DiagnosticCategory.Error,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:t(5061,e.DiagnosticCategory.Error,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:t(5062,e.DiagnosticCategory.Error,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:t(5063,e.DiagnosticCategory.Error,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:t(5064,e.DiagnosticCategory.Error,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:t(5065,e.DiagnosticCategory.Error,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:t(5066,e.DiagnosticCategory.Error,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:t(5067,e.DiagnosticCategory.Error,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:t(5068,e.DiagnosticCategory.Error,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:t(5069,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy:t(5070,e.DiagnosticCategory.Error,"Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy_5070","Option '--resolveJsonModule' cannot be specified without 'node' module resolution strategy."),Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext:t(5071,e.DiagnosticCategory.Error,"Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_5071","Option '--resolveJsonModule' can only be specified when module code generation is 'commonjs', 'amd', 'es2015' or 'esNext'."),Unknown_build_option_0:t(5072,e.DiagnosticCategory.Error,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:t(5073,e.DiagnosticCategory.Error,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:t(5074,e.DiagnosticCategory.Error,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option `--tsBuildInfoFile` is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:t(5075,e.DiagnosticCategory.Error,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:t(5076,e.DiagnosticCategory.Error,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:t(5077,e.DiagnosticCategory.Error,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:t(5078,e.DiagnosticCategory.Error,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:t(5079,e.DiagnosticCategory.Error,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:t(5080,e.DiagnosticCategory.Error,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:t(5081,e.DiagnosticCategory.Error,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:t(5082,e.DiagnosticCategory.Error,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:t(5083,e.DiagnosticCategory.Error,"Cannot_read_file_0_5083","Cannot read file '{0}'."),Tuple_members_must_all_have_names_or_all_not_have_names:t(5084,e.DiagnosticCategory.Error,"Tuple_members_must_all_have_names_or_all_not_have_names_5084","Tuple members must all have names or all not have names."),A_tuple_member_cannot_be_both_optional_and_rest:t(5085,e.DiagnosticCategory.Error,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:t(5086,e.DiagnosticCategory.Error,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:t(5087,e.DiagnosticCategory.Error,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a `...` before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:t(5088,e.DiagnosticCategory.Error,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:t(5089,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:t(5090,e.DiagnosticCategory.Error,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled:t(5091,e.DiagnosticCategory.Error,"Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when 'isolatedModules' is enabled."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:t(6e3,e.DiagnosticCategory.Message,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:t(6001,e.DiagnosticCategory.Message,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:t(6002,e.DiagnosticCategory.Message,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:t(6003,e.DiagnosticCategory.Message,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6003","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:t(6004,e.DiagnosticCategory.Message,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:t(6005,e.DiagnosticCategory.Message,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:t(6006,e.DiagnosticCategory.Message,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:t(6007,e.DiagnosticCategory.Message,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:t(6008,e.DiagnosticCategory.Message,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:t(6009,e.DiagnosticCategory.Message,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:t(6010,e.DiagnosticCategory.Message,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:t(6011,e.DiagnosticCategory.Message,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:t(6012,e.DiagnosticCategory.Message,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:t(6013,e.DiagnosticCategory.Message,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:t(6014,e.DiagnosticCategory.Message,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_ES2019_ES2020_or_ESNEXT:t(6015,e.DiagnosticCategory.Message,"Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_ES2019_ES2020_or_6015","Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'."),Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_es2020_or_ESNext:t(6016,e.DiagnosticCategory.Message,"Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_es2020_or_ESNext_6016","Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'."),Print_this_message:t(6017,e.DiagnosticCategory.Message,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:t(6019,e.DiagnosticCategory.Message,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:t(6020,e.DiagnosticCategory.Message,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:t(6023,e.DiagnosticCategory.Message,"Syntax_Colon_0_6023","Syntax: {0}"),options:t(6024,e.DiagnosticCategory.Message,"options_6024","options"),file:t(6025,e.DiagnosticCategory.Message,"file_6025","file"),Examples_Colon_0:t(6026,e.DiagnosticCategory.Message,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:t(6027,e.DiagnosticCategory.Message,"Options_Colon_6027","Options:"),Version_0:t(6029,e.DiagnosticCategory.Message,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:t(6030,e.DiagnosticCategory.Message,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:t(6031,e.DiagnosticCategory.Message,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:t(6032,e.DiagnosticCategory.Message,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:t(6034,e.DiagnosticCategory.Message,"KIND_6034","KIND"),FILE:t(6035,e.DiagnosticCategory.Message,"FILE_6035","FILE"),VERSION:t(6036,e.DiagnosticCategory.Message,"VERSION_6036","VERSION"),LOCATION:t(6037,e.DiagnosticCategory.Message,"LOCATION_6037","LOCATION"),DIRECTORY:t(6038,e.DiagnosticCategory.Message,"DIRECTORY_6038","DIRECTORY"),STRATEGY:t(6039,e.DiagnosticCategory.Message,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:t(6040,e.DiagnosticCategory.Message,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Generates_corresponding_map_file:t(6043,e.DiagnosticCategory.Message,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:t(6044,e.DiagnosticCategory.Error,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:t(6045,e.DiagnosticCategory.Error,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:t(6046,e.DiagnosticCategory.Error,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:t(6048,e.DiagnosticCategory.Error,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form <language> or <language>-<territory>. For example '{0}' or '{1}'."),Unsupported_locale_0:t(6049,e.DiagnosticCategory.Error,"Unsupported_locale_0_6049","Unsupported locale '{0}'."),Unable_to_open_file_0:t(6050,e.DiagnosticCategory.Error,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:t(6051,e.DiagnosticCategory.Error,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:t(6052,e.DiagnosticCategory.Message,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:t(6053,e.DiagnosticCategory.Error,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:t(6054,e.DiagnosticCategory.Error,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:t(6055,e.DiagnosticCategory.Message,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:t(6056,e.DiagnosticCategory.Message,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:t(6058,e.DiagnosticCategory.Message,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:t(6059,e.DiagnosticCategory.Error,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:t(6060,e.DiagnosticCategory.Message,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:t(6061,e.DiagnosticCategory.Message,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:t(6064,e.DiagnosticCategory.Error,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:t(6065,e.DiagnosticCategory.Message,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:t(6066,e.DiagnosticCategory.Message,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Enables_experimental_support_for_ES7_async_functions:t(6068,e.DiagnosticCategory.Message,"Enables_experimental_support_for_ES7_async_functions_6068","Enables experimental support for ES7 async functions."),Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6:t(6069,e.DiagnosticCategory.Message,"Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6_6069","Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6)."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:t(6070,e.DiagnosticCategory.Message,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:t(6071,e.DiagnosticCategory.Message,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:t(6072,e.DiagnosticCategory.Message,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:t(6073,e.DiagnosticCategory.Message,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:t(6074,e.DiagnosticCategory.Message,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:t(6075,e.DiagnosticCategory.Message,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:t(6076,e.DiagnosticCategory.Message,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:t(6077,e.DiagnosticCategory.Message,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:t(6078,e.DiagnosticCategory.Message,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:t(6079,e.DiagnosticCategory.Message,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation_Colon_preserve_react_native_react_react_jsx_or_react_jsxdev:t(6080,e.DiagnosticCategory.Message,"Specify_JSX_code_generation_Colon_preserve_react_native_react_react_jsx_or_react_jsxdev_6080","Specify JSX code generation: 'preserve', 'react-native', 'react', 'react-jsx' or 'react-jsxdev'."),File_0_has_an_unsupported_extension_so_skipping_it:t(6081,e.DiagnosticCategory.Message,"File_0_has_an_unsupported_extension_so_skipping_it_6081","File '{0}' has an unsupported extension, so skipping it."),Only_amd_and_system_modules_are_supported_alongside_0:t(6082,e.DiagnosticCategory.Error,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:t(6083,e.DiagnosticCategory.Message,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:t(6084,e.DiagnosticCategory.Message,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:t(6085,e.DiagnosticCategory.Message,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:t(6086,e.DiagnosticCategory.Message,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:t(6087,e.DiagnosticCategory.Message,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:t(6088,e.DiagnosticCategory.Message,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:t(6089,e.DiagnosticCategory.Message,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:t(6090,e.DiagnosticCategory.Message,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:t(6091,e.DiagnosticCategory.Message,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:t(6092,e.DiagnosticCategory.Message,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:t(6093,e.DiagnosticCategory.Message,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:t(6094,e.DiagnosticCategory.Message,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1:t(6095,e.DiagnosticCategory.Message,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1_6095","Loading module as file / folder, candidate module location '{0}', target file type '{1}'."),File_0_does_not_exist:t(6096,e.DiagnosticCategory.Message,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exist_use_it_as_a_name_resolution_result:t(6097,e.DiagnosticCategory.Message,"File_0_exist_use_it_as_a_name_resolution_result_6097","File '{0}' exist - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_type_1:t(6098,e.DiagnosticCategory.Message,"Loading_module_0_from_node_modules_folder_target_file_type_1_6098","Loading module '{0}' from 'node_modules' folder, target file type '{1}'."),Found_package_json_at_0:t(6099,e.DiagnosticCategory.Message,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:t(6100,e.DiagnosticCategory.Message,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:t(6101,e.DiagnosticCategory.Message,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:t(6102,e.DiagnosticCategory.Message,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Option_0_should_have_array_of_strings_as_a_value:t(6103,e.DiagnosticCategory.Error,"Option_0_should_have_array_of_strings_as_a_value_6103","Option '{0}' should have array of strings as a value."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:t(6104,e.DiagnosticCategory.Message,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:t(6105,e.DiagnosticCategory.Message,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:t(6106,e.DiagnosticCategory.Message,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:t(6107,e.DiagnosticCategory.Message,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:t(6108,e.DiagnosticCategory.Message,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:t(6109,e.DiagnosticCategory.Message,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:t(6110,e.DiagnosticCategory.Message,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:t(6111,e.DiagnosticCategory.Message,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:t(6112,e.DiagnosticCategory.Message,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:t(6113,e.DiagnosticCategory.Message,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:t(6114,e.DiagnosticCategory.Error,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:t(6115,e.DiagnosticCategory.Message,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:t(6116,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Resolving_using_primary_search_paths:t(6117,e.DiagnosticCategory.Message,"Resolving_using_primary_search_paths_6117","Resolving using primary search paths..."),Resolving_from_node_modules_folder:t(6118,e.DiagnosticCategory.Message,"Resolving_from_node_modules_folder_6118","Resolving from node_modules folder..."),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:t(6119,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:t(6120,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:t(6121,e.DiagnosticCategory.Message,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:t(6122,e.DiagnosticCategory.Message,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:t(6123,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:t(6124,e.DiagnosticCategory.Message,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:t(6125,e.DiagnosticCategory.Message,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:t(6126,e.DiagnosticCategory.Message,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:t(6127,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:t(6128,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:t(6130,e.DiagnosticCategory.Message,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:t(6131,e.DiagnosticCategory.Error,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:t(6132,e.DiagnosticCategory.Message,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:t(6133,e.DiagnosticCategory.Error,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:t(6134,e.DiagnosticCategory.Message,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:t(6135,e.DiagnosticCategory.Message,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:t(6136,e.DiagnosticCategory.Message,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:t(6137,e.DiagnosticCategory.Error,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:t(6138,e.DiagnosticCategory.Error,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:t(6139,e.DiagnosticCategory.Message,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:t(6140,e.DiagnosticCategory.Error,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:t(6141,e.DiagnosticCategory.Message,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:t(6142,e.DiagnosticCategory.Error,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:t(6144,e.DiagnosticCategory.Message,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified:t(6145,e.DiagnosticCategory.Message,"Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified_6145","Module '{0}' was resolved as ambient module declared in '{1}' since this file was not modified."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:t(6146,e.DiagnosticCategory.Message,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:t(6147,e.DiagnosticCategory.Message,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:t(6148,e.DiagnosticCategory.Message,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:t(6149,e.DiagnosticCategory.Message,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:t(6150,e.DiagnosticCategory.Message,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:t(6151,e.DiagnosticCategory.Message,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:t(6152,e.DiagnosticCategory.Message,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:t(6153,e.DiagnosticCategory.Message,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:t(6154,e.DiagnosticCategory.Message,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:t(6155,e.DiagnosticCategory.Message,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:t(6156,e.DiagnosticCategory.Message,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:t(6157,e.DiagnosticCategory.Message,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:t(6158,e.DiagnosticCategory.Message,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:t(6159,e.DiagnosticCategory.Message,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:t(6160,e.DiagnosticCategory.Message,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:t(6161,e.DiagnosticCategory.Message,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:t(6162,e.DiagnosticCategory.Message,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:t(6163,e.DiagnosticCategory.Message,"The_character_set_of_the_input_files_6163","The character set of the input files."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:t(6164,e.DiagnosticCategory.Message,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6164","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Do_not_truncate_error_messages:t(6165,e.DiagnosticCategory.Message,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:t(6166,e.DiagnosticCategory.Message,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:t(6167,e.DiagnosticCategory.Message,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:t(6168,e.DiagnosticCategory.Message,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:t(6169,e.DiagnosticCategory.Message,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:t(6170,e.DiagnosticCategory.Message,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:t(6171,e.DiagnosticCategory.Message,"Command_line_Options_6171","Command-line Options"),Basic_Options:t(6172,e.DiagnosticCategory.Message,"Basic_Options_6172","Basic Options"),Strict_Type_Checking_Options:t(6173,e.DiagnosticCategory.Message,"Strict_Type_Checking_Options_6173","Strict Type-Checking Options"),Module_Resolution_Options:t(6174,e.DiagnosticCategory.Message,"Module_Resolution_Options_6174","Module Resolution Options"),Source_Map_Options:t(6175,e.DiagnosticCategory.Message,"Source_Map_Options_6175","Source Map Options"),Additional_Checks:t(6176,e.DiagnosticCategory.Message,"Additional_Checks_6176","Additional Checks"),Experimental_Options:t(6177,e.DiagnosticCategory.Message,"Experimental_Options_6177","Experimental Options"),Advanced_Options:t(6178,e.DiagnosticCategory.Message,"Advanced_Options_6178","Advanced Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3:t(6179,e.DiagnosticCategory.Message,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'."),Enable_all_strict_type_checking_options:t(6180,e.DiagnosticCategory.Message,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),List_of_language_service_plugins:t(6181,e.DiagnosticCategory.Message,"List_of_language_service_plugins_6181","List of language service plugins."),Scoped_package_detected_looking_in_0:t(6182,e.DiagnosticCategory.Message,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_to_file_1_from_old_program:t(6183,e.DiagnosticCategory.Message,"Reusing_resolution_of_module_0_to_file_1_from_old_program_6183","Reusing resolution of module '{0}' to file '{1}' from old program."),Reusing_module_resolutions_originating_in_0_since_resolutions_are_unchanged_from_old_program:t(6184,e.DiagnosticCategory.Message,"Reusing_module_resolutions_originating_in_0_since_resolutions_are_unchanged_from_old_program_6184","Reusing module resolutions originating in '{0}' since resolutions are unchanged from old program."),Disable_strict_checking_of_generic_signatures_in_function_types:t(6185,e.DiagnosticCategory.Message,"Disable_strict_checking_of_generic_signatures_in_function_types_6185","Disable strict checking of generic signatures in function types."),Enable_strict_checking_of_function_types:t(6186,e.DiagnosticCategory.Message,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:t(6187,e.DiagnosticCategory.Message,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:t(6188,e.DiagnosticCategory.Error,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:t(6189,e.DiagnosticCategory.Error,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:t(6191,e.DiagnosticCategory.Message,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:t(6192,e.DiagnosticCategory.Error,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:t(6193,e.DiagnosticCategory.Message,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:t(6194,e.DiagnosticCategory.Message,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:t(6195,e.DiagnosticCategory.Message,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:t(6196,e.DiagnosticCategory.Error,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:t(6197,e.DiagnosticCategory.Message,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:t(6198,e.DiagnosticCategory.Error,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:t(6199,e.DiagnosticCategory.Error,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:t(6200,e.DiagnosticCategory.Error,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:t(6201,e.DiagnosticCategory.Message,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:t(6202,e.DiagnosticCategory.Error,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:t(6203,e.DiagnosticCategory.Message,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:t(6204,e.DiagnosticCategory.Message,"and_here_6204","and here."),All_type_parameters_are_unused:t(6205,e.DiagnosticCategory.Error,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:t(6206,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:t(6207,e.DiagnosticCategory.Message,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:t(6208,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:t(6209,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:t(6210,e.DiagnosticCategory.Message,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:t(6211,e.DiagnosticCategory.Message,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:t(6212,e.DiagnosticCategory.Message,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:t(6213,e.DiagnosticCategory.Message,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:t(6214,e.DiagnosticCategory.Message,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:t(6215,e.DiagnosticCategory.Message,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:t(6216,e.DiagnosticCategory.Message,"Found_1_error_6216","Found 1 error."),Found_0_errors:t(6217,e.DiagnosticCategory.Message,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:t(6218,e.DiagnosticCategory.Message,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:t(6219,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:t(6220,e.DiagnosticCategory.Message,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:t(6221,e.DiagnosticCategory.Message,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:t(6222,e.DiagnosticCategory.Message,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:t(6223,e.DiagnosticCategory.Message,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:t(6224,e.DiagnosticCategory.Message,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_UseFsEvents_UseFsEventsOnParentDirectory:t(6225,e.DiagnosticCategory.Message,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling:t(6226,e.DiagnosticCategory.Message,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority:t(6227,e.DiagnosticCategory.Message,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority'."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:t(6228,e.DiagnosticCategory.Message,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6228","Synchronously call callbacks and update the state of directory watchers on platforms that don't support recursive watching natively."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:t(6229,e.DiagnosticCategory.Error,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:t(6230,e.DiagnosticCategory.Error,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:t(6231,e.DiagnosticCategory.Error,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:t(6232,e.DiagnosticCategory.Error,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:t(6233,e.DiagnosticCategory.Error,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:t(6234,e.DiagnosticCategory.Error,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:t(6235,e.DiagnosticCategory.Message,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:t(6236,e.DiagnosticCategory.Error,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:t(6237,e.DiagnosticCategory.Message,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:t(6238,e.DiagnosticCategory.Error,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the `jsx` and `jsxs` factory functions from. eg, react"),Projects_to_reference:t(6300,e.DiagnosticCategory.Message,"Projects_to_reference_6300","Projects to reference"),Enable_project_compilation:t(6302,e.DiagnosticCategory.Message,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:t(6304,e.DiagnosticCategory.Error,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:t(6305,e.DiagnosticCategory.Error,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:t(6306,e.DiagnosticCategory.Error,"Referenced_project_0_must_have_setting_composite_Colon_true_6306","Referenced project '{0}' must have setting \"composite\": true."),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:t(6307,e.DiagnosticCategory.Error,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Cannot_prepend_project_0_because_it_does_not_have_outFile_set:t(6308,e.DiagnosticCategory.Error,"Cannot_prepend_project_0_because_it_does_not_have_outFile_set_6308","Cannot prepend project '{0}' because it does not have 'outFile' set"),Output_file_0_from_project_1_does_not_exist:t(6309,e.DiagnosticCategory.Error,"Output_file_0_from_project_1_does_not_exist_6309","Output file '{0}' from project '{1}' does not exist"),Referenced_project_0_may_not_disable_emit:t(6310,e.DiagnosticCategory.Error,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2:t(6350,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2_6350","Project '{0}' is out of date because oldest output '{1}' is older than newest input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2:t(6351,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than oldest output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:t(6352,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:t(6353,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:t(6354,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:t(6355,e.DiagnosticCategory.Message,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:t(6356,e.DiagnosticCategory.Message,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:t(6357,e.DiagnosticCategory.Message,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:t(6358,e.DiagnosticCategory.Message,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:t(6359,e.DiagnosticCategory.Message,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),delete_this_Project_0_is_up_to_date_because_it_was_previously_built:t(6360,e.DiagnosticCategory.Message,"delete_this_Project_0_is_up_to_date_because_it_was_previously_built_6360","delete this - Project '{0}' is up to date because it was previously built"),Project_0_is_up_to_date:t(6361,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:t(6362,e.DiagnosticCategory.Message,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:t(6363,e.DiagnosticCategory.Message,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:t(6364,e.DiagnosticCategory.Message,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:t(6365,e.DiagnosticCategory.Message,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects"),Enable_verbose_logging:t(6366,e.DiagnosticCategory.Message,"Enable_verbose_logging_6366","Enable verbose logging"),Show_what_would_be_built_or_deleted_if_specified_with_clean:t(6367,e.DiagnosticCategory.Message,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Build_all_projects_including_those_that_appear_to_be_up_to_date:t(6368,e.DiagnosticCategory.Message,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6368","Build all projects, including those that appear to be up to date"),Option_build_must_be_the_first_command_line_argument:t(6369,e.DiagnosticCategory.Error,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:t(6370,e.DiagnosticCategory.Error,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:t(6371,e.DiagnosticCategory.Message,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed:t(6372,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed_6372","Project '{0}' is out of date because output of its dependency '{1}' has changed"),Updating_output_of_project_0:t(6373,e.DiagnosticCategory.Message,"Updating_output_of_project_0_6373","Updating output of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:t(6374,e.DiagnosticCategory.Message,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),A_non_dry_build_would_update_output_of_project_0:t(6375,e.DiagnosticCategory.Message,"A_non_dry_build_would_update_output_of_project_0_6375","A non-dry build would update output of project '{0}'"),Cannot_update_output_of_project_0_because_there_was_error_reading_file_1:t(6376,e.DiagnosticCategory.Message,"Cannot_update_output_of_project_0_because_there_was_error_reading_file_1_6376","Cannot update output of project '{0}' because there was error reading file '{1}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:t(6377,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Enable_incremental_compilation:t(6378,e.DiagnosticCategory.Message,"Enable_incremental_compilation_6378","Enable incremental compilation"),Composite_projects_may_not_disable_incremental_compilation:t(6379,e.DiagnosticCategory.Error,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:t(6380,e.DiagnosticCategory.Message,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:t(6381,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:t(6382,e.DiagnosticCategory.Message,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:t(6383,e.DiagnosticCategory.Message,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:t(6384,e.DiagnosticCategory.Message,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:t(6385,e.DiagnosticCategory.Suggestion,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:t(6386,e.DiagnosticCategory.Message,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:t(6387,e.DiagnosticCategory.Suggestion,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:t(6500,e.DiagnosticCategory.Message,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:t(6501,e.DiagnosticCategory.Message,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:t(6502,e.DiagnosticCategory.Message,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:t(6503,e.DiagnosticCategory.Message,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:t(6504,e.DiagnosticCategory.Error,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:t(6505,e.DiagnosticCategory.Message,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:t(6803,e.DiagnosticCategory.Error,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6803","Require undeclared properties from index signatures to use element accesses."),Include_undefined_in_index_signature_results:t(6800,e.DiagnosticCategory.Message,"Include_undefined_in_index_signature_results_6800","Include 'undefined' in index signature results"),Variable_0_implicitly_has_an_1_type:t(7005,e.DiagnosticCategory.Error,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:t(7006,e.DiagnosticCategory.Error,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:t(7008,e.DiagnosticCategory.Error,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:t(7009,e.DiagnosticCategory.Error,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:t(7010,e.DiagnosticCategory.Error,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:t(7011,e.DiagnosticCategory.Error,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:t(7013,e.DiagnosticCategory.Error,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:t(7014,e.DiagnosticCategory.Error,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:t(7015,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:t(7016,e.DiagnosticCategory.Error,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:t(7017,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:t(7018,e.DiagnosticCategory.Error,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:t(7019,e.DiagnosticCategory.Error,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:t(7020,e.DiagnosticCategory.Error,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:t(7022,e.DiagnosticCategory.Error,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:t(7023,e.DiagnosticCategory.Error,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:t(7024,e.DiagnosticCategory.Error,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:t(7025,e.DiagnosticCategory.Error,"Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_retu_7025","Generator implicitly has yield type '{0}' because it does not yield any values. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:t(7026,e.DiagnosticCategory.Error,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:t(7027,e.DiagnosticCategory.Error,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:t(7028,e.DiagnosticCategory.Error,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:t(7029,e.DiagnosticCategory.Error,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:t(7030,e.DiagnosticCategory.Error,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:t(7031,e.DiagnosticCategory.Error,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:t(7032,e.DiagnosticCategory.Error,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:t(7033,e.DiagnosticCategory.Error,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:t(7034,e.DiagnosticCategory.Error,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:t(7035,e.DiagnosticCategory.Error,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:t(7036,e.DiagnosticCategory.Error,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:t(7037,e.DiagnosticCategory.Message,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:t(7038,e.DiagnosticCategory.Message,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:t(7039,e.DiagnosticCategory.Error,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:t(7040,e.DiagnosticCategory.Error,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}`"),The_containing_arrow_function_captures_the_global_value_of_this:t(7041,e.DiagnosticCategory.Error,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:t(7042,e.DiagnosticCategory.Error,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:t(7043,e.DiagnosticCategory.Suggestion,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:t(7044,e.DiagnosticCategory.Suggestion,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:t(7045,e.DiagnosticCategory.Suggestion,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:t(7046,e.DiagnosticCategory.Suggestion,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:t(7047,e.DiagnosticCategory.Suggestion,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:t(7048,e.DiagnosticCategory.Suggestion,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:t(7049,e.DiagnosticCategory.Suggestion,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:t(7050,e.DiagnosticCategory.Suggestion,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:t(7051,e.DiagnosticCategory.Error,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:t(7052,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:t(7053,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:t(7054,e.DiagnosticCategory.Error,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:t(7055,e.DiagnosticCategory.Error,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:t(7056,e.DiagnosticCategory.Error,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:t(7057,e.DiagnosticCategory.Error,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),You_cannot_rename_this_element:t(8e3,e.DiagnosticCategory.Error,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:t(8001,e.DiagnosticCategory.Error,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:t(8002,e.DiagnosticCategory.Error,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:t(8003,e.DiagnosticCategory.Error,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:t(8004,e.DiagnosticCategory.Error,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:t(8005,e.DiagnosticCategory.Error,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:t(8006,e.DiagnosticCategory.Error,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:t(8008,e.DiagnosticCategory.Error,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:t(8009,e.DiagnosticCategory.Error,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:t(8010,e.DiagnosticCategory.Error,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:t(8011,e.DiagnosticCategory.Error,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:t(8012,e.DiagnosticCategory.Error,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:t(8013,e.DiagnosticCategory.Error,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:t(8016,e.DiagnosticCategory.Error,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:t(8017,e.DiagnosticCategory.Error,"Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0_8017","Octal literal types must use ES2015 syntax. Use the syntax '{0}'."),Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0:t(8018,e.DiagnosticCategory.Error,"Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0_8018","Octal literals are not allowed in enums members initializer. Use the syntax '{0}'."),Report_errors_in_js_files:t(8019,e.DiagnosticCategory.Message,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:t(8020,e.DiagnosticCategory.Error,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:t(8021,e.DiagnosticCategory.Error,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:t(8022,e.DiagnosticCategory.Error,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:t(8023,e.DiagnosticCategory.Error,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:t(8024,e.DiagnosticCategory.Error,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:t(8025,e.DiagnosticCategory.Error,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one `@augments` or `@extends` tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:t(8026,e.DiagnosticCategory.Error,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:t(8027,e.DiagnosticCategory.Error,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:t(8028,e.DiagnosticCategory.Error,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:t(8029,e.DiagnosticCategory.Error,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:t(8030,e.DiagnosticCategory.Error,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:t(8031,e.DiagnosticCategory.Error,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:t(8032,e.DiagnosticCategory.Error,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:t(8033,e.DiagnosticCategory.Error,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:t(8034,e.DiagnosticCategory.Error,"The_tag_was_first_specified_here_8034","The tag was first specified here."),Only_identifiers_Slashqualified_names_with_optional_type_arguments_are_currently_supported_in_a_class_extends_clause:t(9002,e.DiagnosticCategory.Error,"Only_identifiers_Slashqualified_names_with_optional_type_arguments_are_currently_supported_in_a_clas_9002","Only identifiers/qualified-names with optional type arguments are currently supported in a class 'extends' clause."),class_expressions_are_not_currently_supported:t(9003,e.DiagnosticCategory.Error,"class_expressions_are_not_currently_supported_9003","'class' expressions are not currently supported."),Language_service_is_disabled:t(9004,e.DiagnosticCategory.Error,"Language_service_is_disabled_9004","Language service is disabled."),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:t(9005,e.DiagnosticCategory.Error,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:t(9006,e.DiagnosticCategory.Error,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:t(17e3,e.DiagnosticCategory.Error,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:t(17001,e.DiagnosticCategory.Error,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:t(17002,e.DiagnosticCategory.Error,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),JSX_attribute_expected:t(17003,e.DiagnosticCategory.Error,"JSX_attribute_expected_17003","JSX attribute expected."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:t(17004,e.DiagnosticCategory.Error,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:t(17005,e.DiagnosticCategory.Error,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:t(17006,e.DiagnosticCategory.Error,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:t(17007,e.DiagnosticCategory.Error,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:t(17008,e.DiagnosticCategory.Error,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:t(17009,e.DiagnosticCategory.Error,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:t(17010,e.DiagnosticCategory.Error,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:t(17011,e.DiagnosticCategory.Error,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:t(17012,e.DiagnosticCategory.Error,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:t(17013,e.DiagnosticCategory.Error,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:t(17014,e.DiagnosticCategory.Error,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:t(17015,e.DiagnosticCategory.Error,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:t(17016,e.DiagnosticCategory.Error,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:t(17017,e.DiagnosticCategory.Error,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:t(17018,e.DiagnosticCategory.Error,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),Circularity_detected_while_resolving_configuration_Colon_0:t(18e3,e.DiagnosticCategory.Error,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),A_path_in_an_extends_option_must_be_relative_or_rooted_but_0_is_not:t(18001,e.DiagnosticCategory.Error,"A_path_in_an_extends_option_must_be_relative_or_rooted_but_0_is_not_18001","A path in an 'extends' option must be relative or rooted, but '{0}' is not."),The_files_list_in_config_file_0_is_empty:t(18002,e.DiagnosticCategory.Error,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:t(18003,e.DiagnosticCategory.Error,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module:t(80001,e.DiagnosticCategory.Suggestion,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module_80001","File is a CommonJS module; it may be converted to an ES6 module."),This_constructor_function_may_be_converted_to_a_class_declaration:t(80002,e.DiagnosticCategory.Suggestion,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:t(80003,e.DiagnosticCategory.Suggestion,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:t(80004,e.DiagnosticCategory.Suggestion,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:t(80005,e.DiagnosticCategory.Suggestion,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:t(80006,e.DiagnosticCategory.Suggestion,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:t(80007,e.DiagnosticCategory.Suggestion,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:t(80008,e.DiagnosticCategory.Suggestion,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),Add_missing_super_call:t(90001,e.DiagnosticCategory.Message,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:t(90002,e.DiagnosticCategory.Message,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:t(90003,e.DiagnosticCategory.Message,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:t(90004,e.DiagnosticCategory.Message,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:t(90005,e.DiagnosticCategory.Message,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:t(90006,e.DiagnosticCategory.Message,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:t(90007,e.DiagnosticCategory.Message,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:t(90008,e.DiagnosticCategory.Message,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:t(90010,e.DiagnosticCategory.Message,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:t(90011,e.DiagnosticCategory.Message,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:t(90012,e.DiagnosticCategory.Message,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_module_1:t(90013,e.DiagnosticCategory.Message,"Import_0_from_module_1_90013","Import '{0}' from module \"{1}\""),Change_0_to_1:t(90014,e.DiagnosticCategory.Message,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Add_0_to_existing_import_declaration_from_1:t(90015,e.DiagnosticCategory.Message,"Add_0_to_existing_import_declaration_from_1_90015","Add '{0}' to existing import declaration from \"{1}\""),Declare_property_0:t(90016,e.DiagnosticCategory.Message,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:t(90017,e.DiagnosticCategory.Message,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:t(90018,e.DiagnosticCategory.Message,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:t(90019,e.DiagnosticCategory.Message,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:t(90020,e.DiagnosticCategory.Message,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:t(90021,e.DiagnosticCategory.Message,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:t(90022,e.DiagnosticCategory.Message,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:t(90023,e.DiagnosticCategory.Message,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:t(90024,e.DiagnosticCategory.Message,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:t(90025,e.DiagnosticCategory.Message,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:t(90026,e.DiagnosticCategory.Message,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:t(90027,e.DiagnosticCategory.Message,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:t(90028,e.DiagnosticCategory.Message,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:t(90029,e.DiagnosticCategory.Message,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:t(90030,e.DiagnosticCategory.Message,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:t(90031,e.DiagnosticCategory.Message,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Import_default_0_from_module_1:t(90032,e.DiagnosticCategory.Message,"Import_default_0_from_module_1_90032","Import default '{0}' from module \"{1}\""),Add_default_import_0_to_existing_import_declaration_from_1:t(90033,e.DiagnosticCategory.Message,"Add_default_import_0_to_existing_import_declaration_from_1_90033","Add default import '{0}' to existing import declaration from \"{1}\""),Add_parameter_name:t(90034,e.DiagnosticCategory.Message,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:t(90035,e.DiagnosticCategory.Message,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:t(90036,e.DiagnosticCategory.Message,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:t(90037,e.DiagnosticCategory.Message,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:t(90038,e.DiagnosticCategory.Message,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:t(90039,e.DiagnosticCategory.Message,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:t(90041,e.DiagnosticCategory.Message,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:t(90053,e.DiagnosticCategory.Message,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Convert_function_to_an_ES2015_class:t(95001,e.DiagnosticCategory.Message,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_function_0_to_class:t(95002,e.DiagnosticCategory.Message,"Convert_function_0_to_class_95002","Convert function '{0}' to class"),Convert_0_to_1_in_0:t(95003,e.DiagnosticCategory.Message,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:t(95004,e.DiagnosticCategory.Message,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:t(95005,e.DiagnosticCategory.Message,"Extract_function_95005","Extract function"),Extract_constant:t(95006,e.DiagnosticCategory.Message,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:t(95007,e.DiagnosticCategory.Message,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:t(95008,e.DiagnosticCategory.Message,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:t(95009,e.DiagnosticCategory.Message,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Annotate_with_types_from_JSDoc:t(95010,e.DiagnosticCategory.Message,"Annotate_with_types_from_JSDoc_95010","Annotate with types from JSDoc"),Infer_type_of_0_from_usage:t(95011,e.DiagnosticCategory.Message,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:t(95012,e.DiagnosticCategory.Message,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:t(95013,e.DiagnosticCategory.Message,"Convert_to_default_import_95013","Convert to default import"),Install_0:t(95014,e.DiagnosticCategory.Message,"Install_0_95014","Install '{0}'"),Replace_import_with_0:t(95015,e.DiagnosticCategory.Message,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:t(95016,e.DiagnosticCategory.Message,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES6_module:t(95017,e.DiagnosticCategory.Message,"Convert_to_ES6_module_95017","Convert to ES6 module"),Add_undefined_type_to_property_0:t(95018,e.DiagnosticCategory.Message,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:t(95019,e.DiagnosticCategory.Message,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:t(95020,e.DiagnosticCategory.Message,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:t(95021,e.DiagnosticCategory.Message,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:t(95022,e.DiagnosticCategory.Message,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:t(95023,e.DiagnosticCategory.Message,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:t(95024,e.DiagnosticCategory.Message,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:t(95025,e.DiagnosticCategory.Message,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:t(95026,e.DiagnosticCategory.Message,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:t(95027,e.DiagnosticCategory.Message,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:t(95028,e.DiagnosticCategory.Message,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:t(95029,e.DiagnosticCategory.Message,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:t(95030,e.DiagnosticCategory.Message,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:t(95031,e.DiagnosticCategory.Message,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:t(95032,e.DiagnosticCategory.Message,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:t(95033,e.DiagnosticCategory.Message,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:t(95034,e.DiagnosticCategory.Message,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:t(95035,e.DiagnosticCategory.Message,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:t(95036,e.DiagnosticCategory.Message,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:t(95037,e.DiagnosticCategory.Message,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:t(95038,e.DiagnosticCategory.Message,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:t(95039,e.DiagnosticCategory.Message,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:t(95040,e.DiagnosticCategory.Message,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:t(95041,e.DiagnosticCategory.Message,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:t(95042,e.DiagnosticCategory.Message,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:t(95043,e.DiagnosticCategory.Message,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:t(95044,e.DiagnosticCategory.Message,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:t(95045,e.DiagnosticCategory.Message,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:t(95046,e.DiagnosticCategory.Message,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:t(95047,e.DiagnosticCategory.Message,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:t(95048,e.DiagnosticCategory.Message,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:t(95049,e.DiagnosticCategory.Message,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:t(95050,e.DiagnosticCategory.Message,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:t(95051,e.DiagnosticCategory.Message,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:t(95052,e.DiagnosticCategory.Message,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:t(95053,e.DiagnosticCategory.Message,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:t(95054,e.DiagnosticCategory.Message,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:t(95055,e.DiagnosticCategory.Message,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:t(95056,e.DiagnosticCategory.Message,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:t(95057,e.DiagnosticCategory.Message,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:t(95058,e.DiagnosticCategory.Message,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:t(95059,e.DiagnosticCategory.Message,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:t(95060,e.DiagnosticCategory.Message,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:t(95061,e.DiagnosticCategory.Message,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:t(95062,e.DiagnosticCategory.Message,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:t(95063,e.DiagnosticCategory.Message,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:t(95064,e.DiagnosticCategory.Message,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:t(95065,e.DiagnosticCategory.Message,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:t(95066,e.DiagnosticCategory.Message,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:t(95067,e.DiagnosticCategory.Message,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:t(95068,e.DiagnosticCategory.Message,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:t(95069,e.DiagnosticCategory.Message,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:t(95070,e.DiagnosticCategory.Message,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:t(95071,e.DiagnosticCategory.Message,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:t(95072,e.DiagnosticCategory.Message,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:t(95073,e.DiagnosticCategory.Message,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:t(95074,e.DiagnosticCategory.Message,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:t(95075,e.DiagnosticCategory.Message,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Allow_accessing_UMD_globals_from_modules:t(95076,e.DiagnosticCategory.Message,"Allow_accessing_UMD_globals_from_modules_95076","Allow accessing UMD globals from modules."),Extract_type:t(95077,e.DiagnosticCategory.Message,"Extract_type_95077","Extract type"),Extract_to_type_alias:t(95078,e.DiagnosticCategory.Message,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:t(95079,e.DiagnosticCategory.Message,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:t(95080,e.DiagnosticCategory.Message,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:t(95081,e.DiagnosticCategory.Message,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:t(95082,e.DiagnosticCategory.Message,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:t(95083,e.DiagnosticCategory.Message,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:t(95084,e.DiagnosticCategory.Message,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:t(95085,e.DiagnosticCategory.Message,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:t(95086,e.DiagnosticCategory.Message,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:t(95087,e.DiagnosticCategory.Message,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:t(95088,e.DiagnosticCategory.Message,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:t(95089,e.DiagnosticCategory.Message,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:t(95090,e.DiagnosticCategory.Message,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:t(95091,e.DiagnosticCategory.Message,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:t(95092,e.DiagnosticCategory.Message,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:t(95093,e.DiagnosticCategory.Message,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:t(95094,e.DiagnosticCategory.Message,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:t(95095,e.DiagnosticCategory.Message,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:t(95096,e.DiagnosticCategory.Message,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:t(95097,e.DiagnosticCategory.Message,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:t(95098,e.DiagnosticCategory.Message,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:t(95099,e.DiagnosticCategory.Message,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:t(95100,e.DiagnosticCategory.Message,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:t(95101,e.DiagnosticCategory.Message,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Add_class_tag:t(95102,e.DiagnosticCategory.Message,"Add_class_tag_95102","Add '@class' tag"),Add_this_tag:t(95103,e.DiagnosticCategory.Message,"Add_this_tag_95103","Add '@this' tag"),Add_this_parameter:t(95104,e.DiagnosticCategory.Message,"Add_this_parameter_95104","Add 'this' parameter."),Convert_function_expression_0_to_arrow_function:t(95105,e.DiagnosticCategory.Message,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:t(95106,e.DiagnosticCategory.Message,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:t(95107,e.DiagnosticCategory.Message,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:t(95108,e.DiagnosticCategory.Message,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:t(95109,e.DiagnosticCategory.Message,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_json_to_read_more_about_this_file:t(95110,e.DiagnosticCategory.Message,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_json_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig.json to read more about this file"),Add_a_return_statement:t(95111,e.DiagnosticCategory.Message,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:t(95112,e.DiagnosticCategory.Message,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:t(95113,e.DiagnosticCategory.Message,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:t(95114,e.DiagnosticCategory.Message,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:t(95115,e.DiagnosticCategory.Message,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:t(95116,e.DiagnosticCategory.Message,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:t(95117,e.DiagnosticCategory.Message,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:t(95118,e.DiagnosticCategory.Message,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:t(95119,e.DiagnosticCategory.Message,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:t(95120,e.DiagnosticCategory.Message,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:t(95121,e.DiagnosticCategory.Message,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:t(95122,e.DiagnosticCategory.Message,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:t(95123,e.DiagnosticCategory.Message,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:t(95124,e.DiagnosticCategory.Message,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:t(95125,e.DiagnosticCategory.Message,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:t(95126,e.DiagnosticCategory.Message,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:t(95127,e.DiagnosticCategory.Message,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:t(95128,e.DiagnosticCategory.Message,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:t(95129,e.DiagnosticCategory.Message,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:t(95130,e.DiagnosticCategory.Message,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:t(95131,e.DiagnosticCategory.Message,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:t(95132,e.DiagnosticCategory.Message,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:t(95133,e.DiagnosticCategory.Message,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:t(95134,e.DiagnosticCategory.Message,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:t(95135,e.DiagnosticCategory.Message,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:t(95136,e.DiagnosticCategory.Message,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:t(95137,e.DiagnosticCategory.Message,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:t(95138,e.DiagnosticCategory.Message,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:t(95139,e.DiagnosticCategory.Message,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:t(95140,e.DiagnosticCategory.Message,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:t(95141,e.DiagnosticCategory.Message,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:t(95142,e.DiagnosticCategory.Message,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:t(95143,e.DiagnosticCategory.Message,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:t(95144,e.DiagnosticCategory.Message,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:t(95145,e.DiagnosticCategory.Message,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:t(95146,e.DiagnosticCategory.Message,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:t(95147,e.DiagnosticCategory.Message,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:t(95148,e.DiagnosticCategory.Message,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:t(95149,e.DiagnosticCategory.Message,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:t(95150,e.DiagnosticCategory.Message,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:t(95151,e.DiagnosticCategory.Message,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:t(95152,e.DiagnosticCategory.Message,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:t(95153,e.DiagnosticCategory.Message,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenation:t(95154,e.DiagnosticCategory.Message,"Can_only_convert_string_concatenation_95154","Can only convert string concatenation"),Selection_is_not_a_valid_statement_or_statements:t(95155,e.DiagnosticCategory.Message,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:t(95156,e.DiagnosticCategory.Message,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:t(95157,e.DiagnosticCategory.Message,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:t(95158,e.DiagnosticCategory.Message,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:t(95159,e.DiagnosticCategory.Message,"Function_not_implemented_95159","Function not implemented."),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:t(18004,e.DiagnosticCategory.Error,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:t(18006,e.DiagnosticCategory.Error,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:t(18007,e.DiagnosticCategory.Error,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:t(18009,e.DiagnosticCategory.Error,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:t(18010,e.DiagnosticCategory.Error,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:t(18011,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:t(18012,e.DiagnosticCategory.Error,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:t(18013,e.DiagnosticCategory.Error,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:t(18014,e.DiagnosticCategory.Error,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:t(18015,e.DiagnosticCategory.Error,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:t(18016,e.DiagnosticCategory.Error,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:t(18017,e.DiagnosticCategory.Error,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:t(18018,e.DiagnosticCategory.Error,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:t(18019,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),A_method_cannot_be_named_with_a_private_identifier:t(18022,e.DiagnosticCategory.Error,"A_method_cannot_be_named_with_a_private_identifier_18022","A method cannot be named with a private identifier."),An_accessor_cannot_be_named_with_a_private_identifier:t(18023,e.DiagnosticCategory.Error,"An_accessor_cannot_be_named_with_a_private_identifier_18023","An accessor cannot be named with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:t(18024,e.DiagnosticCategory.Error,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:t(18026,e.DiagnosticCategory.Error,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:t(18027,e.DiagnosticCategory.Error,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:t(18028,e.DiagnosticCategory.Error,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:t(18029,e.DiagnosticCategory.Error,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:t(18030,e.DiagnosticCategory.Error,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:t(18031,e.DiagnosticCategory.Error,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:t(18032,e.DiagnosticCategory.Error,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhaustiveness_checks_consider_using_an_object_literal_instead:t(18033,e.DiagnosticCategory.Error,"Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhau_18033","Only numeric enums can have computed members, but this expression has type '{0}'. If you do not need exhaustiveness checks, consider using an object literal instead."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:t(18034,e.DiagnosticCategory.Message,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:t(18035,e.DiagnosticCategory.Error,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Should_not_add_return_type_to_the_function_that_is_annotated_by_Extend:t(18036,e.DiagnosticCategory.Error,"Should_not_add_return_type_to_the_function_that_is_annotated_by_Extend_18036","Should not add return type to the function that is annotated by Extend."),Decorator_name_must_be_one_of_ETS_Components:t(18037,e.DiagnosticCategory.Error,"Decorator_name_must_be_one_of_ETS_Components_18037","Decorator name must be one of ETS Components"),A_struct_declaration_without_the_default_modifier_must_have_a_name:t(18038,e.DiagnosticCategory.Error,"A_struct_declaration_without_the_default_modifier_must_have_a_name_18038","A struct declaration without the 'default' modifier must have a name."),Should_not_add_return_type_to_the_function_that_is_annotated_by_Styles:t(18039,e.DiagnosticCategory.Error,"Should_not_add_return_type_to_the_function_that_is_annotated_by_Styles_18039","Should not add return type to the function that is annotated by Styles."),Unable_to_resolve_signature_of_function_decorator_when_decorators_are_not_valid:t(18040,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_function_decorator_when_decorators_are_not_valid_18040","Unable to resolve signature of function decorator when decorators are not valid."),The_statement_must_be_written_use_the_function_0_under_the_if_condition:t(28e3,e.DiagnosticCategory.Warning,"The_statement_must_be_written_use_the_function_0_under_the_if_condition_28000","The statement must be written use the function '{0}' under the if condition."),The_struct_name_cannot_contain_reserved_tag_name_Colon_0:t(28001,e.DiagnosticCategory.Error,"The_struct_name_cannot_contain_reserved_tag_name_Colon_0_28001","The struct name cannot contain reserved tag name: '{0}'."),This_API_has_been_Special_Markings_exercise_caution_when_using_this_API:t(28002,e.DiagnosticCategory.Warning,"This_API_has_been_Special_Markings_exercise_caution_when_using_this_API_28002","This API has been Special Markings. exercise caution when using this API."),Looking_up_in_oh_modules_folder_initial_location_0:t(18041,e.DiagnosticCategory.Message,"Looking_up_in_oh_modules_folder_initial_location_0_18041","Looking up in 'oh_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_oh_modules_folder:t(18042,e.DiagnosticCategory.Message,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_oh_modul_18042","Containing file is not specified and root directory cannot be determined, skipping lookup in 'oh_modules' folder."),Loading_module_0_from_oh_modules_folder_target_file_type_1:t(18043,e.DiagnosticCategory.Message,"Loading_module_0_from_oh_modules_folder_target_file_type_1_18043","Loading module '{0}' from 'oh_modules' folder, target file type '{1}'."),Found_oh_package_json5_at_0:t(18044,e.DiagnosticCategory.Message,"Found_oh_package_json5_at_0_18044","Found 'oh-package.json5' at '{0}'."),oh_package_json5_does_not_have_a_0_field:t(18045,e.DiagnosticCategory.Message,"oh_package_json5_does_not_have_a_0_field_18045","'oh-package.json5' does not have a '{0}' field."),oh_package_json5_has_0_field_1_that_references_2:t(18046,e.DiagnosticCategory.Message,"oh_package_json5_has_0_field_1_that_references_2_18046","'oh-package.json5' has '{0}' field '{1}' that references '{2}'."),Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in_later_SDK_version_Please_make_sure_the_corresponding_d_ts_file_is_provided_and_the_napis_are_correctly_declared:t(18047,e.DiagnosticCategory.Warning,"Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in__18047","Currently module for '{0}' is not verified. If you're importing napi, its verification will be enabled in later SDK version. Please make sure the corresponding .d.ts file is provided and the napis are correctly declared."),UI_component_0_cannot_be_used_in_this_place:t(18048,e.DiagnosticCategory.Error,"UI_component_0_cannot_be_used_in_this_place_18048","UI component '{0}' cannot be used in this place."),Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden:t(18049,e.DiagnosticCategory.Warning,"Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden_18049","Importing ArkTS files in JS and TS files is about to be forbidden."),Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden:t(18050,e.DiagnosticCategory.Error,"Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden_18050","Importing ArkTS files in JS and TS files is forbidden.")}}(d||(d={})),function(e){var t;function r(e){return e>=78}e.tokenIsIdentifierOrKeyword=r,e.tokenIsIdentifierOrKeywordOrGreaterThan=function(e){return 31===e||r(e)};var n=((t={abstract:126,any:129,as:127,asserts:128,bigint:156,boolean:132,break:80,case:81,catch:82,class:83,struct:84,continue:86,const:85}).constructor=133,t.debugger=87,t.declare=134,t.default=88,t.delete=89,t.do=90,t.else=91,t.enum=92,t.export=93,t.extends=94,t.false=95,t.finally=96,t.for=97,t.from=154,t.function=98,t.get=135,t.if=99,t.implements=117,t.import=100,t.in=101,t.infer=136,t.instanceof=102,t.interface=118,t.intrinsic=137,t.is=138,t.keyof=139,t.let=119,t.module=140,t.namespace=141,t.never=142,t.new=103,t.null=104,t.number=145,t.object=146,t.package=120,t.private=121,t.protected=122,t.public=123,t.readonly=143,t.require=144,t.global=155,t.return=105,t.set=147,t.static=124,t.string=148,t.super=106,t.switch=107,t.symbol=149,t.this=108,t.throw=109,t.true=110,t.try=111,t.type=150,t.typeof=112,t.undefined=151,t.unique=152,t.unknown=153,t.var=113,t.void=114,t.while=115,t.with=116,t.yield=125,t.async=130,t.await=131,t.of=157,t),i=new e.Map(e.getEntries(n)),o=new e.Map(e.getEntries(a(a({},n),{"{":18,"}":19,"(":20,")":21,"[":22,"]":23,".":24,"...":25,";":26,",":27,"<":29,">":31,"<=":32,">=":33,"==":34,"!=":35,"===":36,"!==":37,"=>":38,"+":39,"-":40,"**":42,"*":41,"/":43,"%":44,"++":45,"--":46,"<<":47,"</":30,">>":48,">>>":49,"&":50,"|":51,"^":52,"!":53,"~":54,"&&":55,"||":56,"?":57,"??":60,"?.":28,":":58,"=":62,"+=":63,"-=":64,"*=":65,"**=":66,"/=":67,"%=":68,"<<=":69,">>=":70,">>>=":71,"&=":72,"|=":73,"^=":77,"||=":74,"&&=":75,"??=":76,"@":59,"`":61}))),s=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1569,1594,1600,1610,1649,1747,1749,1749,1765,1766,1786,1788,1808,1808,1810,1836,1920,1957,2309,2361,2365,2365,2384,2384,2392,2401,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2784,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2877,2877,2908,2909,2911,2913,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3294,3294,3296,3297,3333,3340,3342,3344,3346,3368,3370,3385,3424,3425,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3946,3976,3979,4096,4129,4131,4135,4137,4138,4176,4181,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6067,6176,6263,6272,6312,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8319,8319,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12329,12337,12341,12344,12346,12353,12436,12445,12446,12449,12538,12540,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65138,65140,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],c=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,768,846,864,866,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1155,1158,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1425,1441,1443,1465,1467,1469,1471,1471,1473,1474,1476,1476,1488,1514,1520,1522,1569,1594,1600,1621,1632,1641,1648,1747,1749,1756,1759,1768,1770,1773,1776,1788,1808,1836,1840,1866,1920,1968,2305,2307,2309,2361,2364,2381,2384,2388,2392,2403,2406,2415,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2524,2525,2527,2531,2534,2545,2562,2562,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2649,2652,2654,2654,2662,2676,2689,2691,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2784,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2876,2883,2887,2888,2891,2893,2902,2903,2908,2909,2911,2913,2918,2927,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3006,3010,3014,3016,3018,3021,3031,3031,3047,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3134,3140,3142,3144,3146,3149,3157,3158,3168,3169,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3262,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3297,3302,3311,3330,3331,3333,3340,3342,3344,3346,3368,3370,3385,3390,3395,3398,3400,3402,3405,3415,3415,3424,3425,3430,3439,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3805,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3946,3953,3972,3974,3979,3984,3991,3993,4028,4038,4038,4096,4129,4131,4135,4137,4138,4140,4146,4150,4153,4160,4169,4176,4185,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,4969,4977,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6099,6112,6121,6160,6169,6176,6263,6272,6313,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8319,8319,8400,8412,8417,8417,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12335,12337,12341,12344,12346,12353,12436,12441,12442,12445,12446,12449,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65056,65059,65075,65076,65101,65103,65136,65138,65140,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500],l=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],u=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],d=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2208,2228,2230,2237,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42943,42946,42950,42999,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69376,69404,69415,69415,69424,69445,69600,69622,69635,69687,69763,69807,69840,69864,69891,69926,69956,69956,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70751,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71680,71723,71840,71903,71935,71935,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72384,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,123136,123180,123191,123197,123214,123214,123584,123627,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101],p=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2208,2228,2230,2237,2259,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3162,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3328,3331,3333,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7673,7675,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42943,42946,42950,42999,43047,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69376,69404,69415,69415,69424,69456,69600,69622,69632,69702,69734,69743,69759,69818,69840,69864,69872,69881,69888,69940,69942,69951,69956,69958,69968,70003,70006,70006,70016,70084,70089,70092,70096,70106,70108,70108,70144,70161,70163,70199,70206,70206,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70751,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71680,71738,71840,71913,71935,71935,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72384,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92768,92777,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,123136,123180,123184,123197,123200,123209,123214,123214,123584,123641,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101,917760,917999],f=/^\s*\/\/\/?\s*@(ts-expect-error|ts-ignore)/,m=/^\s*(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/;function g(e,t){if(e<t[0])return!1;for(var r,n=0,i=t.length;n+1<i;){if(r=n+(i-n)/2,t[r-=r%2]<=e&&e<=t[r+1])return!0;e<t[r]?i=r:n=r+2}return!1}function _(e,t){return g(e,t>=2?d:1===t?l:s)}e.isUnicodeIdentifierStart=_;var h,y=(h=[],o.forEach((function(e,t){h[e]=t})),h);function v(e){for(var t=new Array,r=0,n=0;r<e.length;){var i=e.charCodeAt(r);switch(r++,i){case 13:10===e.charCodeAt(r)&&r++;case 10:t.push(n),n=r;break;default:i>127&&w(i)&&(t.push(n),n=r)}}return t.push(n),t}function b(t,r,n,i,a){(r<0||r>=t.length)&&(a?r=r<0?0:r>=t.length?t.length-1:r:e.Debug.fail("Bad line number. Line: "+r+", lineStarts.length: "+t.length+" , line map is correct? "+(void 0!==i?e.arraysEqual(t,v(i)):"unknown")));var o=t[r]+n;return a?o>t[r+1]?t[r+1]:"string"==typeof i&&o>i.length?i.length:o:(r<t.length-1?e.Debug.assert(o<t[r+1]):void 0!==i&&e.Debug.assert(o<=i.length),o)}function k(e){return e.lineMap||(e.lineMap=v(e.text))}function x(e,t){var r=E(e,t);return{line:r,character:t-e[r]}}function E(t,r,n){var i=e.binarySearch(t,r,e.identity,e.compareValues,n);return i<0&&(i=~i-1,e.Debug.assert(-1!==i,"position cannot precede the beginning of the file")),i}function S(e){return D(e)||w(e)}function D(e){return 32===e||9===e||11===e||12===e||160===e||133===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function w(e){return 10===e||13===e||8232===e||8233===e}function T(e){return e>=48&&e<=57}function C(e){return T(e)||e>=65&&e<=70||e>=97&&e<=102}function A(e){return e>=48&&e<=55}e.tokenToString=function(e){return y[e]},e.stringToToken=function(e){return o.get(e)},e.computeLineStarts=v,e.getPositionOfLineAndCharacter=function(e,t,r,n){return e.getPositionOfLineAndCharacter?e.getPositionOfLineAndCharacter(t,r,n):b(k(e),t,r,e.text,n)},e.computePositionOfLineAndCharacter=b,e.getLineStarts=k,e.computeLineAndCharacterOfPosition=x,e.computeLineOfPosition=E,e.getLinesBetweenPositions=function(e,t,r){if(t===r)return 0;var n=k(e),i=Math.min(t,r),a=i===r,o=a?t:r,s=E(n,i),c=E(n,o,s);return a?s-c:c-s},e.getLineAndCharacterOfPosition=function(e,t){return x(k(e),t)},e.isWhiteSpaceLike=S,e.isWhiteSpaceSingleLine=D,e.isLineBreak=w,e.isOctalDigit=A,e.couldStartTrivia=function(e,t){var r=e.charCodeAt(t);switch(r){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return 0===t;default:return r>127}},e.skipTrivia=function(t,r,n,i){if(void 0===i&&(i=!1),e.positionIsSynthesized(r))return r;for(;;){var a=t.charCodeAt(r);switch(a){case 13:10===t.charCodeAt(r+1)&&r++;case 10:if(r++,n)return r;continue;case 9:case 11:case 12:case 32:r++;continue;case 47:if(i)break;if(47===t.charCodeAt(r+1)){for(r+=2;r<t.length&&!w(t.charCodeAt(r));)r++;continue}if(42===t.charCodeAt(r+1)){for(r+=2;r<t.length;){if(42===t.charCodeAt(r)&&47===t.charCodeAt(r+1)){r+=2;break}r++}continue}break;case 60:case 124:case 61:case 62:if(P(t,r)){r=I(t,r);continue}break;case 35:if(0===r&&O(t,r)){r=R(t,r);continue}break;default:if(a>127&&S(a)){r++;continue}}return r}};var N=7;function P(t,r){if(e.Debug.assert(r>=0),0===r||w(t.charCodeAt(r-1))){var n=t.charCodeAt(r);if(r+N<t.length){for(var i=0;i<N;i++)if(t.charCodeAt(r+i)!==n)return!1;return 61===n||32===t.charCodeAt(r+N)}}return!1}function I(t,r,n){n&&n(e.Diagnostics.Merge_conflict_marker_encountered,r,N);var i=t.charCodeAt(r),a=t.length;if(60===i||62===i)for(;r<a&&!w(t.charCodeAt(r));)r++;else for(e.Debug.assert(124===i||61===i);r<a;){var o=t.charCodeAt(r);if((61===o||62===o)&&o!==i&&P(t,r))break;r++}return r}var F=/^#!.*/;function O(t,r){return e.Debug.assert(0===r),F.test(t)}function R(e,t){return t+=F.exec(e)[0].length}function M(e,t,r,n,i,a,o){var s,c,l,u,d=!1,p=n,f=o;if(0===r){p=!0;var m=z(t);m&&(r=m.length)}e:for(;r>=0&&r<t.length;){var g=t.charCodeAt(r);switch(g){case 13:10===t.charCodeAt(r+1)&&r++;case 10:if(r++,n)break e;p=!0,d&&(u=!0);continue;case 9:case 11:case 12:case 32:r++;continue;case 47:var _=t.charCodeAt(r+1),h=!1;if(47===_||42===_){var y=47===_?2:3,v=r;if(r+=2,47===_)for(;r<t.length;){if(w(t.charCodeAt(r))){h=!0;break}r++}else for(;r<t.length;){if(42===t.charCodeAt(r)&&47===t.charCodeAt(r+1)){r+=2;break}r++}if(p){if(d&&(f=i(s,c,l,u,a,f),!e&&f))return f;s=v,c=r,l=y,u=h,d=!0}continue}break e;default:if(g>127&&S(g)){d&&w(g)&&(u=!0),r++;continue}break e}}return d&&(f=i(s,c,l,u,a,f)),f}function L(e,t,r,n,i){return M(!0,e,t,!1,r,n,i)}function j(e,t,r,n,i){return M(!0,e,t,!0,r,n,i)}function B(e,t,r,n,i,a){return a||(a=[]),a.push({kind:r,pos:e,end:t,hasTrailingNewLine:n}),a}function z(e){var t=F.exec(e);if(t)return t[0]}function U(e,t){return e>=65&&e<=90||e>=97&&e<=122||36===e||95===e||e>127&&_(e,t)}function q(e,t,r){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||36===e||95===e||1===r&&(45===e||58===e)||e>127&&function(e,t){return g(e,t>=2?p:1===t?u:c)}(e,t)}e.isShebangTrivia=O,e.scanShebangTrivia=R,e.forEachLeadingCommentRange=function(e,t,r,n){return M(!1,e,t,!1,r,n)},e.forEachTrailingCommentRange=function(e,t,r,n){return M(!1,e,t,!0,r,n)},e.reduceEachLeadingCommentRange=L,e.reduceEachTrailingCommentRange=j,e.getLeadingCommentRanges=function(e,t){return L(e,t,B,void 0,void 0)},e.getTrailingCommentRanges=function(e,t){return j(e,t,B,void 0,void 0)},e.getShebang=z,e.isIdentifierStart=U,e.isIdentifierPart=q,e.isIdentifierText=function(e,t,r){var n=J(e,0);if(!U(n,t))return!1;for(var i=V(n);i<e.length;i+=V(n))if(!q(n=J(e,i),t,r))return!1;return!0},e.createScanner=function(t,n,a,o,s,c,l){void 0===a&&(a=0);var u,d,p,g,_,h,y,v,b=o,k=0,x=!1;ue(b,c,l);var E={getStartPos:function(){return p},getTextPos:function(){return u},getToken:function(){return _},getTokenPos:function(){return g},getTokenText:function(){return b.substring(g,u)},getTokenValue:function(){return h},hasUnicodeEscape:function(){return!!(1024&y)},hasExtendedUnicodeEscape:function(){return!!(8&y)},hasPrecedingLineBreak:function(){return!!(1&y)},hasPrecedingJSDocComment:function(){return!!(2&y)},isIdentifier:function(){return 78===_||_>116},isReservedWord:function(){return _>=80&&_<=116},isUnterminated:function(){return!!(4&y)},getCommentDirectives:function(){return v},getNumericLiteralFlags:function(){return 1008&y},getTokenFlags:function(){return y},reScanGreaterToken:function(){if(31===_){if(62===b.charCodeAt(u))return 62===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=71):(u+=2,_=49):61===b.charCodeAt(u+1)?(u+=2,_=70):(u++,_=48);if(61===b.charCodeAt(u))return u++,_=33}return _},reScanAsteriskEqualsToken:function(){return e.Debug.assert(65===_,"'reScanAsteriskEqualsToken' should only be called on a '*='"),u=g+1,_=62},reScanSlashToken:function(){if(43===_||67===_){for(var r=g+1,n=!1,i=!1;;){if(r>=d){y|=4,N(e.Diagnostics.Unterminated_regular_expression_literal);break}var a=b.charCodeAt(r);if(w(a)){y|=4,N(e.Diagnostics.Unterminated_regular_expression_literal);break}if(n)n=!1;else{if(47===a&&!i){r++;break}91===a?i=!0:92===a?n=!0:93===a&&(i=!1)}r++}for(;r<d&&q(b.charCodeAt(r),t);)r++;u=r,h=b.substring(g,u),_=13}return _},reScanTemplateToken:function(t){return e.Debug.assert(19===_,"'reScanTemplateToken' should only be called on a '}'"),u=g,_=G(t)},reScanTemplateHeadOrNoSubstitutionTemplate:function(){return u=g,_=G(!0)},scanJsxIdentifier:function(){if(r(_)){for(var e=!1;u<d;){var t=b.charCodeAt(u);if(45!==t)if(58!==t||e){var n=u;if(h+=ee(),u===n)break}else h+=":",u++,e=!0;else h+="-",u++}":"===h.slice(-1)&&(h=h.slice(0,-1),u--)}return _},scanJsxAttributeValue:ce,reScanJsxAttributeValue:function(){return u=g=p,ce()},reScanJsxToken:function(){return u=g=p,_=se()},reScanLessThanToken:function(){if(47===_)return u=g+1,_=29;return _},reScanQuestionToken:function(){return e.Debug.assert(60===_,"'reScanQuestionToken' should only be called on a '??'"),u=g+1,_=57},reScanInvalidIdentifier:function(){e.Debug.assert(0===_,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),u=g=p,y=0;var t=J(b,u),r=ae(t,99);if(r)return _=r;return u+=V(t),_},scanJsxToken:se,scanJsDocToken:function(){if(p=g=u,y=0,u>=d)return _=1;var e=J(b,u);switch(u+=V(e),e){case 9:case 11:case 12:case 32:for(;u<d&&D(b.charCodeAt(u));)u++;return _=5;case 64:return _=59;case 13:10===b.charCodeAt(u)&&u++;case 10:return y|=1,_=4;case 42:return _=41;case 123:return _=18;case 125:return _=19;case 91:return _=22;case 93:return _=23;case 60:return _=29;case 62:return _=31;case 61:return _=62;case 44:return _=27;case 46:return _=24;case 96:return _=61;case 92:u--;var r=Z();if(r>=0&&U(r,t))return u+=3,y|=8,h=X()+ee(),_=te();var n=Q();return n>=0&&U(n,t)?(u+=6,y|=1024,h=String.fromCharCode(n)+ee(),_=te()):(u++,_=0)}if(U(e,t)){for(var i=e;u<d&&q(i=J(b,u),t)||45===b.charCodeAt(u);)u+=V(i);return h=b.substring(g,u),92===i&&(h+=ee()),_=te()}return _=0},scan:ie,getText:function(){return b},clearCommentDirectives:function(){v=void 0},setText:ue,setScriptTarget:function(e){t=e},setLanguageVariant:function(e){a=e},setOnError:function(e){s=e},setTextPos:de,setInJSDocType:function(e){k+=e?1:-1},tryScan:function(e){return le(e,!1)},lookAhead:function(e){return le(e,!0)},scanRange:function(e,t,r){var n=d,i=u,a=p,o=g,s=_,c=h,l=y,f=v;ue(b,e,t);var m=r();return d=n,u=i,p=a,g=o,_=s,h=c,y=l,v=f,m},setEtsContext:function(e){x=e}};return e.Debug.isDebugging&&Object.defineProperty(E,"__debugShowCurrentPositionInText",{get:function(){var e=E.getText();return e.slice(0,E.getStartPos())+"║"+e.slice(E.getStartPos())}}),E;function N(e,t,r){if(void 0===t&&(t=u),s){var n=u;u=t,s(e,r||0),u=n}}function F(){for(var t=u,r=!1,n=!1,i="";;){var a=b.charCodeAt(u);if(95!==a){if(!T(a))break;r=!0,n=!1,u++}else y|=512,r?(r=!1,n=!0,i+=b.substring(t,u)):N(n?e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:e.Diagnostics.Numeric_separators_are_not_allowed_here,u,1),t=++u}return 95===b.charCodeAt(u-1)&&N(e.Diagnostics.Numeric_separators_are_not_allowed_here,u-1,1),i+b.substring(t,u)}function M(){var t,r,n=u,i=F();46===b.charCodeAt(u)&&(u++,t=F());var a,o=u;if(69===b.charCodeAt(u)||101===b.charCodeAt(u)){u++,y|=16,43!==b.charCodeAt(u)&&45!==b.charCodeAt(u)||u++;var s=u,c=F();c?(r=b.substring(o,s)+c,o=u):N(e.Diagnostics.Digit_expected)}if(512&y?(a=i,t&&(a+="."+t),r&&(a+=r)):a=b.substring(n,o),void 0!==t||16&y)return L(n,void 0===t&&!!(16&y)),{type:8,value:""+ +a};h=a;var l=ne();return L(n),{type:l,value:h}}function L(r,n){if(U(J(b,u),t)){var i=u,a=ee().length;1===a&&"n"===b[i]?N(n?e.Diagnostics.A_bigint_literal_cannot_use_exponential_notation:e.Diagnostics.A_bigint_literal_must_be_an_integer,r,i-r+1):(N(e.Diagnostics.An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal,i,a),u=i)}}function j(){for(var e=u;A(b.charCodeAt(u));)u++;return+b.substring(e,u)}function B(e,t){var r=H(e,!1,t);return r?parseInt(r,16):-1}function z(e,t){return H(e,!0,t)}function H(t,r,n){for(var i=[],a=!1,o=!1;i.length<t||r;){var s=b.charCodeAt(u);if(n&&95===s)y|=512,a?(a=!1,o=!0):N(o?e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:e.Diagnostics.Numeric_separators_are_not_allowed_here,u,1),u++;else{if(a=n,s>=65&&s<=70)s+=32;else if(!(s>=48&&s<=57||s>=97&&s<=102))break;i.push(s),u++,o=!1}}return i.length<t&&(i=[]),95===b.charCodeAt(u-1)&&N(e.Diagnostics.Numeric_separators_are_not_allowed_here,u-1,1),String.fromCharCode.apply(String,i)}function W(t){void 0===t&&(t=!1);for(var r=b.charCodeAt(u),n="",i=++u;;){if(u>=d){n+=b.substring(i,u),y|=4,N(e.Diagnostics.Unterminated_string_literal);break}var a=b.charCodeAt(u);if(a===r){n+=b.substring(i,u),u++;break}if(92!==a||t){if(w(a)&&!t){n+=b.substring(i,u),y|=4,N(e.Diagnostics.Unterminated_string_literal);break}u++}else n+=b.substring(i,u),n+=$(),i=u}return n}function G(t){for(var r,n=96===b.charCodeAt(u),i=++u,a="";;){if(u>=d){a+=b.substring(i,u),y|=4,N(e.Diagnostics.Unterminated_template_literal),r=n?14:17;break}var o=b.charCodeAt(u);if(96===o){a+=b.substring(i,u),u++,r=n?14:17;break}if(36===o&&u+1<d&&123===b.charCodeAt(u+1)){a+=b.substring(i,u),u+=2,r=n?15:16;break}92!==o?13!==o?u++:(a+=b.substring(i,u),++u<d&&10===b.charCodeAt(u)&&u++,a+="\n",i=u):(a+=b.substring(i,u),a+=$(t),i=u)}return e.Debug.assert(void 0!==r),h=a,r}function $(t){var r=u;if(++u>=d)return N(e.Diagnostics.Unexpected_end_of_text),"";var n=b.charCodeAt(u);switch(u++,n){case 48:return t&&u<d&&T(b.charCodeAt(u))?(u++,y|=2048,b.substring(r,u)):"\0";case 98:return"\b";case 116:return"\t";case 110:return"\n";case 118:return"\v";case 102:return"\f";case 114:return"\r";case 39:return"'";case 34:return'"';case 117:if(t)for(var i=u;i<u+4;i++)if(i<d&&!C(b.charCodeAt(i))&&123!==b.charCodeAt(i))return u=i,y|=2048,b.substring(r,u);if(u<d&&123===b.charCodeAt(u)){if(u++,t&&!C(b.charCodeAt(u)))return y|=2048,b.substring(r,u);if(t){var a=u,o=z(1,!1),s=o?parseInt(o,16):-1;if(!(s<=1114111&&125===b.charCodeAt(u)))return y|=2048,b.substring(r,u);u=a}return y|=8,X()}return y|=1024,Y(4);case 120:if(t){if(!C(b.charCodeAt(u)))return y|=2048,b.substring(r,u);if(!C(b.charCodeAt(u+1)))return u++,y|=2048,b.substring(r,u)}return Y(2);case 13:u<d&&10===b.charCodeAt(u)&&u++;case 10:case 8232:case 8233:return"";default:return String.fromCharCode(n)}}function Y(t){var r=B(t,!1);return r>=0?String.fromCharCode(r):(N(e.Diagnostics.Hexadecimal_digit_expected),"")}function X(){var t=z(1,!1),r=t?parseInt(t,16):-1,n=!1;return r<0?(N(e.Diagnostics.Hexadecimal_digit_expected),n=!0):r>1114111&&(N(e.Diagnostics.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive),n=!0),u>=d?(N(e.Diagnostics.Unexpected_end_of_text),n=!0):125===b.charCodeAt(u)?u++:(N(e.Diagnostics.Unterminated_Unicode_escape_sequence),n=!0),n?"":K(r)}function Q(){if(u+5<d&&117===b.charCodeAt(u+1)){var e=u;u+=2;var t=B(4,!1);return u=e,t}return-1}function Z(){if(t>=2&&117===J(b,u+1)&&123===J(b,u+2)){var e=u;u+=3;var r=z(1,!1),n=r?parseInt(r,16):-1;return u=e,n}return-1}function ee(){for(var e="",r=u;u<d;){var n=J(b,u);if(q(n,t))u+=V(n);else{if(92!==n)break;if((n=Z())>=0&&q(n,t)){u+=3,y|=8,e+=X(),r=u;continue}if(!((n=Q())>=0&&q(n,t)))break;y|=1024,e+=b.substring(r,u),e+=K(n),r=u+=6}}return e+=b.substring(r,u)}function te(){var e=h.length;if(e>=2&&e<=12){var t=h.charCodeAt(0);if(t>=97&&t<=122){var r=i.get(h);if(void 0!==r)return _=r,84!==r||x||(_=78),_}}return _=78}function re(t){for(var r="",n=!1,i=!1;;){var a=b.charCodeAt(u);if(95!==a){if(n=!0,!T(a)||a-48>=t)break;r+=b[u],u++,i=!1}else y|=512,n?(n=!1,i=!0):N(i?e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:e.Diagnostics.Numeric_separators_are_not_allowed_here,u,1),u++}return 95===b.charCodeAt(u-1)&&N(e.Diagnostics.Numeric_separators_are_not_allowed_here,u-1,1),r}function ne(){if(110===b.charCodeAt(u))return h+="n",384&y&&(h=e.parsePseudoBigInt(h)+"n"),u++,9;var t=128&y?parseInt(h.slice(2),2):256&y?parseInt(h.slice(2),8):+h;return h=""+t,8}function ie(){var r;p=u,y=0;for(var i=!1;;){if(g=u,u>=d)return _=1;var o=J(b,u);if(35===o&&0===u&&O(b,u)){if(u=R(b,u),n)continue;return _=6}switch(o){case 10:case 13:if(y|=1,n){u++;continue}return 13===o&&u+1<d&&10===b.charCodeAt(u+1)?u+=2:u++,_=4;case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8203:case 8239:case 8287:case 12288:case 65279:if(n){u++;continue}for(;u<d&&D(b.charCodeAt(u));)u++;return _=5;case 33:return 61===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=37):(u+=2,_=35):(u++,_=53);case 34:case 39:return h=W(),_=10;case 96:return _=G(!1);case 37:return 61===b.charCodeAt(u+1)?(u+=2,_=68):(u++,_=44);case 38:return 38===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=75):(u+=2,_=55):61===b.charCodeAt(u+1)?(u+=2,_=72):(u++,_=50);case 40:return u++,_=20;case 41:return u++,_=21;case 42:if(61===b.charCodeAt(u+1))return u+=2,_=65;if(42===b.charCodeAt(u+1))return 61===b.charCodeAt(u+2)?(u+=3,_=66):(u+=2,_=42);if(u++,k&&!i&&1&y){i=!0;continue}return _=41;case 43:return 43===b.charCodeAt(u+1)?(u+=2,_=45):61===b.charCodeAt(u+1)?(u+=2,_=63):(u++,_=39);case 44:return u++,_=27;case 45:return 45===b.charCodeAt(u+1)?(u+=2,_=46):61===b.charCodeAt(u+1)?(u+=2,_=64):(u++,_=40);case 46:return T(b.charCodeAt(u+1))?(h=M().value,_=8):46===b.charCodeAt(u+1)&&46===b.charCodeAt(u+2)?(u+=3,_=25):(u++,_=24);case 47:if(47===b.charCodeAt(u+1)){for(u+=2;u<d&&!w(b.charCodeAt(u));)u++;if(v=oe(v,b.slice(g,u),f,g),n)continue;return _=2}if(42===b.charCodeAt(u+1)){u+=2,42===b.charCodeAt(u)&&47!==b.charCodeAt(u+1)&&(y|=2);for(var s=!1,c=g;u<d;){var l=b.charCodeAt(u);if(42===l&&47===b.charCodeAt(u+1)){u+=2,s=!0;break}u++,w(l)&&(c=u,y|=1)}if(v=oe(v,b.slice(c,u),m,c),s||N(e.Diagnostics.Asterisk_Slash_expected),n)continue;return s||(y|=4),_=3}return 61===b.charCodeAt(u+1)?(u+=2,_=67):(u++,_=43);case 48:if(u+2<d&&(88===b.charCodeAt(u+1)||120===b.charCodeAt(u+1)))return u+=2,(h=z(1,!0))||(N(e.Diagnostics.Hexadecimal_digit_expected),h="0"),h="0x"+h,y|=64,_=ne();if(u+2<d&&(66===b.charCodeAt(u+1)||98===b.charCodeAt(u+1)))return u+=2,(h=re(2))||(N(e.Diagnostics.Binary_digit_expected),h="0"),h="0b"+h,y|=128,_=ne();if(u+2<d&&(79===b.charCodeAt(u+1)||111===b.charCodeAt(u+1)))return u+=2,(h=re(8))||(N(e.Diagnostics.Octal_digit_expected),h="0"),h="0o"+h,y|=256,_=ne();if(u+1<d&&A(b.charCodeAt(u+1)))return h=""+j(),y|=32,_=8;case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return r=M(),_=r.type,h=r.value,_;case 58:return u++,_=58;case 59:return u++,_=26;case 60:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return 60===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=69):(u+=2,_=47):61===b.charCodeAt(u+1)?(u+=2,_=32):1===a&&47===b.charCodeAt(u+1)&&42!==b.charCodeAt(u+2)?(u+=2,_=30):(u++,_=29);case 61:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return 61===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=36):(u+=2,_=34):62===b.charCodeAt(u+1)?(u+=2,_=38):(u++,_=62);case 62:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return u++,_=31;case 63:return 46!==b.charCodeAt(u+1)||T(b.charCodeAt(u+2))?63===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=76):(u+=2,_=60):(u++,_=57):(u+=2,_=28);case 91:return u++,_=22;case 93:return u++,_=23;case 94:return 61===b.charCodeAt(u+1)?(u+=2,_=77):(u++,_=52);case 123:return u++,_=18;case 124:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return 124===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=74):(u+=2,_=56):61===b.charCodeAt(u+1)?(u+=2,_=73):(u++,_=51);case 125:return u++,_=19;case 126:return u++,_=54;case 64:return u++,_=59;case 92:var x=Z();if(x>=0&&U(x,t))return u+=3,y|=8,h=X()+ee(),_=te();var E=Q();return E>=0&&U(E,t)?(u+=6,y|=1024,h=String.fromCharCode(E)+ee(),_=te()):(N(e.Diagnostics.Invalid_character),u++,_=0);case 35:if(0!==u&&"!"===b[u+1])return N(e.Diagnostics.can_only_be_used_at_the_start_of_a_file),u++,_=0;if(u++,U(o=b.charCodeAt(u),t)){for(u++;u<d&&q(o=b.charCodeAt(u),t);)u++;h=b.substring(g,u),92===o&&(h+=ee())}else h="#",N(e.Diagnostics.Invalid_character);return _=79;default:var S=ae(o,t);if(S)return _=S;if(D(o)){u+=V(o);continue}if(w(o)){y|=1,u+=V(o);continue}return N(e.Diagnostics.Invalid_character),u+=V(o),_=0}}}function ae(e,t){var r=e;if(U(r,t)){for(u+=V(r);u<d&&q(r=J(b,u),t);)u+=V(r);return h=b.substring(g,u),92===r&&(h+=ee()),te()}}function oe(t,r,n,i){var a=function(e,t){var r=t.exec(e);if(!r)return;switch(r[1]){case"ts-expect-error":return 0;case"ts-ignore":return 1}return}(r,n);return void 0===a?t:e.append(t,{range:{pos:i,end:u},type:a})}function se(){if(p=g=u,u>=d)return _=1;var t=b.charCodeAt(u);if(60===t)return 47===b.charCodeAt(u+1)?(u+=2,_=30):(u++,_=29);if(123===t)return u++,_=18;for(var r=0,n=-1;u<d&&(D(t)||(n=u),123!==(t=b.charCodeAt(u)));){if(60===t){if(P(b,u))return u=I(b,u,N),_=7;break}62===t&&N(e.Diagnostics.Unexpected_token_Did_you_mean_or_gt,u,1),125===t&&N(e.Diagnostics.Unexpected_token_Did_you_mean_or_rbrace,u,1),n>0&&n++,w(t)&&0===r?r=-1:S(t)||(r=u),u++}var i=-1===n?u:n;return h=b.substring(p,i),-1===r?12:11}function ce(){switch(p=u,b.charCodeAt(u)){case 34:case 39:return h=W(!0),_=10;default:return ie()}}function le(e,t){var r=u,n=p,i=g,a=_,o=h,s=y,c=e();return c&&!t||(u=r,p=n,g=i,_=a,h=o,y=s),c}function ue(e,t,r){b=e||"",d=void 0===r?b.length:t+r,de(t||0)}function de(t){e.Debug.assert(t>=0),u=t,p=t,g=t,_=0,h=void 0,y=0}};var J=String.prototype.codePointAt?function(e,t){return e.codePointAt(t)}:function(e,t){var r=e.length;if(!(t<0||t>=r)){var n=e.charCodeAt(t);if(n>=55296&&n<=56319&&r>t+1){var i=e.charCodeAt(t+1);if(i>=56320&&i<=57343)return 1024*(n-55296)+i-56320+65536}return n}};function V(e){return e>=65536?2:1}var H=String.fromCodePoint?function(e){return String.fromCodePoint(e)}:function(t){if(e.Debug.assert(0<=t&&t<=1114111),t<=65535)return String.fromCharCode(t);var r=Math.floor((t-65536)/1024)+55296,n=(t-65536)%1024+56320;return String.fromCharCode(r,n)};function K(e){return H(e)}e.utf16EncodeAsString=K}(d||(d={})),function(e){function t(e){return e.start+e.length}function r(e){return 0===e.length}function n(e,t){var r=a(e,t);return r&&0===r.length?void 0:r}function i(e,t,r,n){return r<=e+t&&r+n>=e}function a(e,r){var n=Math.max(e.start,r.start),i=Math.min(t(e),t(r));return n<=i?s(n,i):void 0}function o(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function s(e,t){return o(e,t-e)}function c(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}function l(t){return!!Y(t)&&e.every(t.elements,u)}function u(t){return!!e.isOmittedExpression(t)||l(t.name)}function d(t){for(var r=t.parent;e.isBindingElement(r.parent);)r=r.parent.parent;return r.parent}function p(t,r){e.isBindingElement(t)&&(t=d(t));var n=r(t);return 251===t.kind&&(t=t.parent),t&&252===t.kind&&(n|=r(t),t=t.parent),t&&234===t.kind&&(n|=r(t)),n}function f(e){return!(8&e.flags)}function m(e){var t=e;return t.length>=3&&95===t.charCodeAt(0)&&95===t.charCodeAt(1)&&95===t.charCodeAt(2)?t.substr(1):t}function g(e){return m(e.escapedText)}function _(t){var r=t.parent.parent;if(r){if(ae(r))return h(r);switch(r.kind){case 234:if(r.declarationList&&r.declarationList.declarations[0])return h(r.declarationList.declarations[0]);break;case 235:var n=r.expression;switch(218===n.kind&&62===n.operatorToken.kind&&(n=n.left),n.kind){case 202:return n.name;case 203:var i=n.argumentExpression;if(e.isIdentifier(i))return i}break;case 208:return h(r.expression);case 247:if(ae(r.statement)||te(r.statement))return h(r.statement)}}}function h(t){var r=k(t);return r&&e.isIdentifier(r)?r:void 0}function y(e){return e.name||_(e)}function v(e){return!!e.name}function b(t){switch(t.kind){case 78:return t;case 336:case 329:var r=t.name;if(158===r.kind)return r.right;break;case 204:case 218:var n=t;switch(e.getAssignmentDeclarationKind(n)){case 1:case 4:case 5:case 3:return e.getElementOrPropertyAccessArgumentExpressionOrName(n.left);case 7:case 8:case 9:return n.arguments[1];default:return}case 334:return y(t);case 328:return _(t);case 269:var i=t.expression;return e.isIdentifier(i)?i:void 0;case 203:var a=t;if(e.isBindableStaticElementAccessExpression(a))return a.argumentExpression}return t.name}function k(t){if(void 0!==t)return b(t)||(e.isFunctionExpression(t)||e.isClassExpression(t)?x(t):void 0)}function x(t){if(t.parent){if(e.isPropertyAssignment(t.parent)||e.isBindingElement(t.parent))return t.parent.name;if(e.isBinaryExpression(t.parent)&&t===t.parent.right){if(e.isIdentifier(t.parent.left))return t.parent.left;if(e.isAccessExpression(t.parent.left))return e.getElementOrPropertyAccessArgumentExpressionOrName(t.parent.left)}else if(e.isVariableDeclaration(t.parent)&&e.isIdentifier(t.parent.name))return t.parent.name}}function E(t,r){if(t.name){if(e.isIdentifier(t.name)){var n=t.name.escapedText;return A(t.parent,r).filter((function(t){return e.isJSDocParameterTag(t)&&e.isIdentifier(t.name)&&t.name.escapedText===n}))}var i=t.parent.parameters.indexOf(t);e.Debug.assert(i>-1,"Parameters should always be in their parents' parameter list");var a=A(t.parent,r).filter(e.isJSDocParameterTag);if(i<a.length)return[a[i]]}return e.emptyArray}function S(e){return E(e,!1)}function D(t,r){var n=t.name.escapedText;return A(t.parent,r).filter((function(t){return e.isJSDocTemplateTag(t)&&t.typeParameters.some((function(e){return e.name.escapedText===n}))}))}function w(t){return P(t,e.isJSDocReturnTag)}function T(t){var r=P(t,e.isJSDocTypeTag);if(r&&r.typeExpression&&r.typeExpression.type)return r}function C(t){var r=P(t,e.isJSDocTypeTag);return!r&&e.isParameter(t)&&(r=e.find(S(t),(function(e){return!!e.typeExpression}))),r&&r.typeExpression&&r.typeExpression.type}function A(t,r){var n=t.jsDocCache;if(void 0===n||r){var i=e.getJSDocCommentsAndTags(t,r);e.Debug.assert(i.length<2||i[0]!==i[1]),n=e.flatMap(i,(function(t){return e.isJSDoc(t)?t.tags:t})),r||(t.jsDocCache=n)}return n}function N(e){return A(e,!1)}function P(t,r,n){return e.find(A(t,n),r)}function I(e,t){return N(e).filter(t)}function F(e){var t=e.kind;return!!(32&e.flags)&&(202===t||203===t||204===t||227===t)}function O(t){return F(t)&&!e.isNonNullExpression(t)&&!!t.questionDotToken}function R(t){return e.skipOuterExpressions(t,8)}function M(e){switch(e.kind){case 297:case 298:return!0;default:return!1}}function L(e){return e>=158}function j(e){return 8<=e&&e<=14}function B(e){return 14<=e&&e<=17}function z(t){return e.isPropertyDeclaration(t)&&e.isPrivateIdentifier(t.name)}function U(e){switch(e){case 126:case 130:case 85:case 134:case 88:case 93:case 123:case 121:case 122:case 143:case 124:return!0}return!1}function q(t){return!!(92&e.modifierToFlag(t))}function J(e){return e&&H(e.kind)}function V(e){switch(e){case 253:case 166:case 167:case 168:case 169:case 209:case 210:return!0;default:return!1}}function H(e){switch(e){case 165:case 170:case 316:case 171:case 172:case 175:case 311:case 176:return!0;default:return V(e)}}function K(e){var t=e.kind;return 167===t||164===t||166===t||168===t||169===t||172===t||231===t}function W(e){return e&&(254===e.kind||223===e.kind||255===e.kind)}function G(e){var t=e.kind;return 171===t||170===t||163===t||165===t||172===t}function $(e){var t=e.kind;return 291===t||292===t||293===t||166===t||168===t||169===t}function Y(e){if(e){var t=e.kind;return 198===t||197===t}return!1}function X(e){switch(e.kind){case 197:case 201:return!0}return!1}function Q(e){switch(e.kind){case 198:case 200:return!0}return!1}function Z(e){switch(e){case 202:case 203:case 205:case 204:case 276:case 277:case 280:case 206:case 200:case 208:case 201:case 223:case 209:case 211:case 78:case 13:case 8:case 9:case 10:case 14:case 220:case 95:case 104:case 108:case 110:case 106:case 227:case 228:case 100:return!0;default:return!1}}function ee(e){switch(e){case 216:case 217:case 212:case 213:case 214:case 215:case 207:return!0;default:return Z(e)}}function te(e){return function(e){switch(e){case 219:case 221:case 210:case 218:case 222:case 226:case 224:case 340:case 339:return!0;default:return ee(e)}}(R(e).kind)}function re(t){return e.isExportAssignment(t)||e.isExportDeclaration(t)}function ne(e){return 253===e||274===e||254===e||255===e||256===e||257===e||258===e||259===e||264===e||263===e||270===e||269===e||262===e}function ie(e){return 243===e||242===e||250===e||237===e||235===e||233===e||240===e||241===e||239===e||236===e||247===e||244===e||246===e||248===e||249===e||234===e||238===e||245===e||338===e||342===e||341===e}function ae(t){return 160===t.kind?t.parent&&333!==t.parent.kind||e.isInJSFile(t):210===(r=t.kind)||199===r||254===r||223===r||255===r||167===r||258===r||294===r||273===r||253===r||209===r||168===r||265===r||263===r||268===r||256===r||283===r||166===r||165===r||259===r||262===r||266===r||272===r||161===r||291===r||164===r||163===r||169===r||292===r||257===r||160===r||251===r||334===r||327===r||336===r;var r}function oe(e){return e.kind>=317&&e.kind<=336}e.isExternalModuleNameRelative=function(t){return e.pathIsRelative(t)||e.isRootedDiskPath(t)},e.sortAndDeduplicateDiagnostics=function(t){return e.sortAndDeduplicate(t,e.compareDiagnostics)},e.getDefaultLibFileName=function(e){switch(e.target){case 99:return"lib.esnext.full.d.ts";case 7:return"lib.es2020.full.d.ts";case 6:return"lib.es2019.full.d.ts";case 5:return"lib.es2018.full.d.ts";case 4:return"lib.es2017.full.d.ts";case 3:return"lib.es2016.full.d.ts";case 2:return"lib.es6.d.ts";default:return"lib.d.ts"}},e.textSpanEnd=t,e.textSpanIsEmpty=r,e.textSpanContainsPosition=function(e,r){return r>=e.start&&r<t(e)},e.textRangeContainsPositionInclusive=function(e,t){return t>=e.pos&&t<=e.end},e.textSpanContainsTextSpan=function(e,r){return r.start>=e.start&&t(r)<=t(e)},e.textSpanOverlapsWith=function(e,t){return void 0!==n(e,t)},e.textSpanOverlap=n,e.textSpanIntersectsWithTextSpan=function(e,t){return i(e.start,e.length,t.start,t.length)},e.textSpanIntersectsWith=function(e,t,r){return i(e.start,e.length,t,r)},e.decodedTextSpanIntersectsWith=i,e.textSpanIntersectsWithPosition=function(e,r){return r<=t(e)&&r>=e.start},e.textSpanIntersection=a,e.createTextSpan=o,e.createTextSpanFromBounds=s,e.textChangeRangeNewSpan=function(e){return o(e.span.start,e.newLength)},e.textChangeRangeIsUnchanged=function(e){return r(e.span)&&0===e.newLength},e.createTextChangeRange=c,e.unchangedTextChangeRange=c(o(0,0),0),e.collapseTextChangeRangesAcrossMultipleVersions=function(r){if(0===r.length)return e.unchangedTextChangeRange;if(1===r.length)return r[0];for(var n=r[0],i=n.span.start,a=t(n.span),o=i+n.newLength,l=1;l<r.length;l++){var u=r[l],d=i,p=a,f=o,m=u.span.start,g=t(u.span),_=m+u.newLength;i=Math.min(d,m),a=Math.max(p,p+(g-f)),o=Math.max(_,_+(f-g))}return c(s(i,a),o-i)},e.getTypeParameterOwner=function(e){if(e&&160===e.kind)for(var t=e;t;t=t.parent)if(J(t)||W(t)||256===t.kind)return t},e.isParameterPropertyDeclaration=function(t,r){return e.hasSyntacticModifier(t,92)&&167===r.kind},e.isEmptyBindingPattern=l,e.isEmptyBindingElement=u,e.walkUpBindingElementsAndPatterns=d,e.getCombinedModifierFlags=function(t){return p(t,e.getEffectiveModifierFlags)},e.getCombinedNodeFlagsAlwaysIncludeJSDoc=function(t){return p(t,e.getEffectiveModifierFlagsAlwaysIncludeJSDoc)},e.getCombinedNodeFlags=function(e){return p(e,(function(e){return e.flags}))},e.supportedLocaleDirectories=["cs","de","es","fr","it","ja","ko","pl","pt-br","ru","tr","zh-cn","zh-tw"],e.validateLocaleAndSetLanguage=function(t,r,n){var i=t.toLowerCase(),a=/^([a-z]+)([_\-]([a-z]+))?$/.exec(i);if(a){var o=a[1],s=a[3];e.contains(e.supportedLocaleDirectories,i)&&!c(o,s,n)&&c(o,void 0,n),e.setUILocale(t)}else n&&n.push(e.createCompilerDiagnostic(e.Diagnostics.Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1,"en","ja-jp"));function c(t,n,i){var a=e.normalizePath(r.getExecutingFilePath()),o=e.getDirectoryPath(a),s=e.combinePaths(o,t);if(n&&(s=s+"-"+n),s=r.resolvePath(e.combinePaths(s,"diagnosticMessages.generated.json")),!r.fileExists(s))return!1;var c="";try{c=r.readFile(s)}catch(t){return i&&i.push(e.createCompilerDiagnostic(e.Diagnostics.Unable_to_open_file_0,s)),!1}try{e.setLocalizedDiagnosticMessages(JSON.parse(c))}catch(t){return i&&i.push(e.createCompilerDiagnostic(e.Diagnostics.Corrupted_locale_file_0,s)),!1}return!0}},e.getOriginalNode=function(e,t){if(e)for(;void 0!==e.original;)e=e.original;return!t||t(e)?e:void 0},e.findAncestor=function(e,t){for(;e;){var r=t(e);if("quit"===r)return;if(r)return e;e=e.parent}},e.isParseTreeNode=f,e.getParseTreeNode=function(e,t){if(void 0===e||f(e))return e;for(e=e.original;e;){if(f(e))return!t||t(e)?e:void 0;e=e.original}},e.escapeLeadingUnderscores=function(e){return e.length>=2&&95===e.charCodeAt(0)&&95===e.charCodeAt(1)?"_"+e:e},e.unescapeLeadingUnderscores=m,e.idText=g,e.symbolName=function(e){return e.valueDeclaration&&z(e.valueDeclaration)?g(e.valueDeclaration.name):m(e.escapedName)},e.nodeHasName=function t(r,n){return!(!v(r)||!e.isIdentifier(r.name)||g(r.name)!==g(n))||!(!e.isVariableStatement(r)||!e.some(r.declarationList.declarations,(function(e){return t(e,n)})))},e.getNameOfJSDocTypedef=y,e.isNamedDeclaration=v,e.getNonAssignedNameOfDeclaration=b,e.getNameOfDeclaration=k,e.getAssignedName=x,e.getJSDocParameterTags=S,e.getJSDocParameterTagsNoCache=function(e){return E(e,!0)},e.getJSDocTypeParameterTags=function(e){return D(e,!1)},e.getJSDocTypeParameterTagsNoCache=function(e){return D(e,!0)},e.hasJSDocParameterTags=function(t){return!!P(t,e.isJSDocParameterTag)},e.getJSDocAugmentsTag=function(t){return P(t,e.isJSDocAugmentsTag)},e.getJSDocImplementsTags=function(t){return I(t,e.isJSDocImplementsTag)},e.getJSDocClassTag=function(t){return P(t,e.isJSDocClassTag)},e.getJSDocPublicTag=function(t){return P(t,e.isJSDocPublicTag)},e.getJSDocPublicTagNoCache=function(t){return P(t,e.isJSDocPublicTag,!0)},e.getJSDocPrivateTag=function(t){return P(t,e.isJSDocPrivateTag)},e.getJSDocPrivateTagNoCache=function(t){return P(t,e.isJSDocPrivateTag,!0)},e.getJSDocProtectedTag=function(t){return P(t,e.isJSDocProtectedTag)},e.getJSDocProtectedTagNoCache=function(t){return P(t,e.isJSDocProtectedTag,!0)},e.getJSDocReadonlyTag=function(t){return P(t,e.isJSDocReadonlyTag)},e.getJSDocReadonlyTagNoCache=function(t){return P(t,e.isJSDocReadonlyTag,!0)},e.getJSDocDeprecatedTag=function(t){return P(t,e.isJSDocDeprecatedTag)},e.getJSDocDeprecatedTagNoCache=function(t){return P(t,e.isJSDocDeprecatedTag,!0)},e.getJSDocEnumTag=function(t){return P(t,e.isJSDocEnumTag)},e.getJSDocThisTag=function(t){return P(t,e.isJSDocThisTag)},e.getJSDocReturnTag=w,e.getJSDocTemplateTag=function(t){return P(t,e.isJSDocTemplateTag)},e.getJSDocTypeTag=T,e.getJSDocType=C,e.getJSDocReturnType=function(t){var r=w(t);if(r&&r.typeExpression)return r.typeExpression.type;var n=T(t);if(n&&n.typeExpression){var i=n.typeExpression.type;if(e.isTypeLiteralNode(i)){var a=e.find(i.members,e.isCallSignatureDeclaration);return a&&a.type}if(e.isFunctionTypeNode(i)||e.isJSDocFunctionType(i))return i.type}},e.getJSDocTags=N,e.getJSDocTagsNoCache=function(e){return A(e,!0)},e.getAllJSDocTags=I,e.getAllJSDocTagsOfKind=function(e,t){return N(e).filter((function(e){return e.kind===t}))},e.getEffectiveTypeParameterDeclarations=function(t){if(e.isJSDocSignature(t))return e.emptyArray;if(e.isJSDocTypeAlias(t))return e.Debug.assert(314===t.parent.kind),e.flatMap(t.parent.tags,(function(t){return e.isJSDocTemplateTag(t)?t.typeParameters:void 0}));if(t.typeParameters)return t.typeParameters;if(e.isInJSFile(t)){var r=e.getJSDocTypeParameterDeclarations(t);if(r.length)return r;var n=C(t);if(n&&e.isFunctionTypeNode(n)&&n.typeParameters)return n.typeParameters}return e.emptyArray},e.getEffectiveConstraintOfTypeParameter=function(t){return t.constraint?t.constraint:e.isJSDocTemplateTag(t.parent)&&t===t.parent.typeParameters[0]?t.parent.constraint:void 0},e.isIdentifierOrPrivateIdentifier=function(e){return 78===e.kind||79===e.kind},e.isGetOrSetAccessorDeclaration=function(e){return 169===e.kind||168===e.kind},e.isPropertyAccessChain=function(t){return e.isPropertyAccessExpression(t)&&!!(32&t.flags)},e.isElementAccessChain=function(t){return e.isElementAccessExpression(t)&&!!(32&t.flags)},e.isCallChain=function(t){return e.isCallExpression(t)&&!!(32&t.flags)},e.isOptionalChain=F,e.isOptionalChainRoot=O,e.isExpressionOfOptionalChainRoot=function(e){return O(e.parent)&&e.parent.expression===e},e.isOutermostOptionalChain=function(e){return!F(e.parent)||O(e.parent)||e!==e.parent.expression},e.isNullishCoalesce=function(e){return 218===e.kind&&60===e.operatorToken.kind},e.isConstTypeReference=function(t){return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&"const"===t.typeName.escapedText&&!t.typeArguments},e.skipPartiallyEmittedExpressions=R,e.isNonNullChain=function(t){return e.isNonNullExpression(t)&&!!(32&t.flags)},e.isBreakOrContinueStatement=function(e){return 243===e.kind||242===e.kind},e.isNamedExportBindings=function(e){return 272===e.kind||271===e.kind},e.isUnparsedTextLike=M,e.isUnparsedNode=function(e){return M(e)||295===e.kind||299===e.kind},e.isJSDocPropertyLikeTag=function(e){return 336===e.kind||329===e.kind},e.isNode=function(e){return L(e.kind)},e.isNodeKind=L,e.isToken=function(e){return e.kind>=0&&e.kind<=157},e.isNodeArray=function(e){return e.hasOwnProperty("pos")&&e.hasOwnProperty("end")},e.isLiteralKind=j,e.isLiteralExpression=function(e){return j(e.kind)},e.isTemplateLiteralKind=B,e.isTemplateLiteralToken=function(e){return B(e.kind)},e.isTemplateMiddleOrTemplateTail=function(e){var t=e.kind;return 16===t||17===t},e.isImportOrExportSpecifier=function(t){return e.isImportSpecifier(t)||e.isExportSpecifier(t)},e.isTypeOnlyImportOrExportDeclaration=function(e){switch(e.kind){case 268:case 273:return e.parent.parent.isTypeOnly;case 266:return e.parent.isTypeOnly;case 265:case 263:return e.isTypeOnly;default:return!1}},e.isStringTextContainingNode=function(e){return 10===e.kind||B(e.kind)},e.isGeneratedIdentifier=function(t){return e.isIdentifier(t)&&(7&t.autoGenerateFlags)>0},e.isPrivateIdentifierPropertyDeclaration=z,e.isPrivateIdentifierPropertyAccessExpression=function(t){return e.isPropertyAccessExpression(t)&&e.isPrivateIdentifier(t.name)},e.isModifierKind=U,e.isParameterPropertyModifier=q,e.isClassMemberModifier=function(e){return q(e)||124===e},e.isModifier=function(e){return U(e.kind)},e.isEntityName=function(e){var t=e.kind;return 158===t||78===t},e.isPropertyName=function(e){var t=e.kind;return 78===t||79===t||10===t||8===t||159===t},e.isBindingName=function(e){var t=e.kind;return 78===t||197===t||198===t},e.isFunctionLike=J,e.isFunctionLikeDeclaration=function(e){return e&&V(e.kind)},e.isFunctionLikeKind=H,e.isFunctionOrModuleBlock=function(t){return e.isSourceFile(t)||e.isModuleBlock(t)||e.isBlock(t)&&J(t.parent)},e.isClassElement=K,e.isClassLike=W,e.isStruct=function(e){return e&&255===e.kind},e.isAccessor=function(e){return e&&(168===e.kind||169===e.kind)},e.isMethodOrAccessor=function(e){switch(e.kind){case 166:case 168:case 169:return!0;default:return!1}},e.isTypeElement=G,e.isClassOrTypeElement=function(e){return G(e)||K(e)},e.isObjectLiteralElementLike=$,e.isTypeNode=function(t){return e.isTypeNodeKind(t.kind)},e.isFunctionOrConstructorTypeNode=function(e){switch(e.kind){case 175:case 176:return!0}return!1},e.isBindingPattern=Y,e.isAssignmentPattern=function(e){var t=e.kind;return 200===t||201===t},e.isArrayBindingElement=function(e){var t=e.kind;return 199===t||224===t},e.isDeclarationBindingElement=function(e){switch(e.kind){case 251:case 161:case 199:return!0}return!1},e.isBindingOrAssignmentPattern=function(e){return X(e)||Q(e)},e.isObjectBindingOrAssignmentPattern=X,e.isArrayBindingOrAssignmentPattern=Q,e.isPropertyAccessOrQualifiedNameOrImportTypeNode=function(e){var t=e.kind;return 202===t||158===t||196===t},e.isPropertyAccessOrQualifiedName=function(e){var t=e.kind;return 202===t||158===t},e.isCallLikeExpression=function(e){switch(e.kind){case 278:case 277:case 204:case 205:case 206:case 162:case 211:return!0;default:return!1}},e.isCallOrNewExpression=function(e){return 204===e.kind||205===e.kind},e.isTemplateLiteral=function(e){var t=e.kind;return 220===t||14===t},e.isLeftHandSideExpression=function(e){return Z(R(e).kind)},e.isUnaryExpression=function(e){return ee(R(e).kind)},e.isUnaryExpressionWithWrite=function(e){switch(e.kind){case 217:return!0;case 216:return 45===e.operator||46===e.operator;default:return!1}},e.isExpression=te,e.isAssertionExpression=function(e){var t=e.kind;return 207===t||226===t},e.isNotEmittedOrPartiallyEmittedNode=function(t){return e.isNotEmittedStatement(t)||e.isPartiallyEmittedExpression(t)},e.isIterationStatement=function e(t,r){switch(t.kind){case 239:case 240:case 241:case 237:case 238:return!0;case 247:return r&&e(t.statement,r)}return!1},e.isScopeMarker=re,e.hasScopeMarker=function(t){return e.some(t,re)},e.needsScopeMarker=function(t){return!(e.isAnyImportOrReExport(t)||e.isExportAssignment(t)||e.hasSyntacticModifier(t,1)||e.isAmbientModule(t))},e.isExternalModuleIndicator=function(t){return e.isAnyImportOrReExport(t)||e.isExportAssignment(t)||e.hasSyntacticModifier(t,1)},e.isForInOrOfStatement=function(e){return 240===e.kind||241===e.kind},e.isConciseBody=function(t){return e.isBlock(t)||te(t)},e.isFunctionBody=function(t){return e.isBlock(t)},e.isForInitializer=function(t){return e.isVariableDeclarationList(t)||te(t)},e.isModuleBody=function(e){var t=e.kind;return 260===t||259===t||78===t},e.isNamespaceBody=function(e){var t=e.kind;return 260===t||259===t},e.isJSDocNamespaceBody=function(e){var t=e.kind;return 78===t||259===t},e.isNamedImportBindings=function(e){var t=e.kind;return 267===t||266===t},e.isModuleOrEnumDeclaration=function(e){return 259===e.kind||258===e.kind},e.isDeclaration=ae,e.isDeclarationStatement=function(e){return ne(e.kind)},e.isStatementButNotDeclaration=function(e){return ie(e.kind)},e.isStatement=function(t){var r=t.kind;return ie(r)||ne(r)||function(t){if(232!==t.kind)return!1;if(void 0!==t.parent&&(249===t.parent.kind||290===t.parent.kind))return!1;return!e.isFunctionBlock(t)}(t)},e.isStatementOrBlock=function(e){var t=e.kind;return ie(t)||ne(t)||232===t},e.isModuleReference=function(e){var t=e.kind;return 275===t||158===t||78===t},e.isJsxTagNameExpression=function(e){var t=e.kind;return 108===t||78===t||202===t},e.isJsxChild=function(e){var t=e.kind;return 276===t||286===t||277===t||11===t||280===t},e.isJsxAttributeLike=function(e){var t=e.kind;return 283===t||285===t},e.isStringLiteralOrJsxExpression=function(e){var t=e.kind;return 10===t||286===t},e.isJsxOpeningLikeElement=function(e){var t=e.kind;return 278===t||277===t},e.isCaseOrDefaultClause=function(e){var t=e.kind;return 287===t||288===t},e.isJSDocNode=function(e){return e.kind>=304&&e.kind<=336},e.isJSDocCommentContainingNode=function(t){return 314===t.kind||313===t.kind||oe(t)||e.isJSDocTypeLiteral(t)||e.isJSDocSignature(t)},e.isJSDocTag=oe,e.isSetAccessor=function(e){return 169===e.kind},e.isGetAccessor=function(e){return 168===e.kind},e.hasJSDocNodes=function(e){var t=e.jsDoc;return!!t&&t.length>0},e.hasType=function(e){return!!e.type},e.hasInitializer=function(e){return!!e.initializer},e.hasOnlyExpressionInitializer=function(e){switch(e.kind){case 251:case 161:case 199:case 163:case 164:case 291:case 294:return!0;default:return!1}},e.isObjectLiteralElement=function(e){return 283===e.kind||285===e.kind||$(e)},e.isTypeReferenceType=function(e){return 174===e.kind||225===e.kind};var se=1073741823;e.guessIndentation=function(t){for(var r=se,n=0,i=t;n<i.length;n++){var a=i[n];if(a.length){for(var o=0;o<a.length&&o<r&&e.isWhiteSpaceLike(a.charCodeAt(o));o++);if(o<r&&(r=o),0===r)return 0}}return r===se?void 0:r},e.isStringLiteralLike=function(e){return 10===e.kind||14===e.kind}}(d||(d={})),function(e){e.resolvingEmptyArray=[],e.externalHelpersModuleNameText="tslib",e.defaultMaximumTruncationLength=160,e.noTruncationMaximumTruncationLength=1e6,e.getDeclarationOfKind=function(e,t){var r=e.declarations;if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n];if(a.kind===t)return a}},e.createUnderscoreEscapedMap=function(){return new e.Map},e.hasEntries=function(e){return!!e&&!!e.size},e.createSymbolTable=function(t){var r=new e.Map;if(t)for(var n=0,i=t;n<i.length;n++){var a=i[n];r.set(a.escapedName,a)}return r},e.isTransientSymbol=function(e){return!!(33554432&e.flags)};var t,r,n=(t="",{getText:function(){return t},write:r=function(e){return t+=e},rawWrite:r,writeKeyword:r,writeOperator:r,writePunctuation:r,writeSpace:r,writeStringLiteral:r,writeLiteral:r,writeParameter:r,writeProperty:r,writeSymbol:function(e,t){return r(e)},writeTrailingSemicolon:r,writeComment:r,getTextPos:function(){return t.length},getLine:function(){return 0},getColumn:function(){return 0},getIndent:function(){return 0},isAtStartOfLine:function(){return!1},hasTrailingComment:function(){return!1},hasTrailingWhitespace:function(){return!!t.length&&e.isWhiteSpaceLike(t.charCodeAt(t.length-1))},writeLine:function(){return t+=" "},increaseIndent:e.noop,decreaseIndent:e.noop,clear:function(){return t=""},trackSymbol:e.noop,reportInaccessibleThisError:e.noop,reportInaccessibleUniqueSymbolError:e.noop,reportPrivateInBaseOfClassExpression:e.noop});function o(t,r){return e.moduleResolutionOptionDeclarations.some((function(e){return!fi(Nn(t,e),Nn(r,e))}))}function s(e){return e.end-e.pos}function c(t){return function(t){if(!(524288&t.flags)){(!!(65536&t.flags)||e.forEachChild(t,c))&&(t.flags|=262144),t.flags|=524288}}(t),!!(262144&t.flags)}function l(e){for(;e&&300!==e.kind;)e=e.parent;return e}function u(t){var r=ht(t,201);return void 0!==r&&void 0!==r.parent&&e.isPropertyAssignment(r.parent)}function d(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isCallExpression(o)&&e.isIdentifier(o.expression)&&(null===(a=null===(i=r.ets)||void 0===i?void 0:i.extend.decorator)||void 0===a?void 0:a.includes(o.expression.escapedText.toString()))&&n.push(o.expression.escapedText.toString())})),0!==n.length)}function p(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&o.escapedText.toString()===(null===(a=null===(i=r.ets)||void 0===i?void 0:i.styles)||void 0===a?void 0:a.decorator)&&n.push(o.escapedText.toString())})),0!==n.length)}function f(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&o.escapedText.toString()===(null===(a=null===(i=r.ets)||void 0===i?void 0:i.render)||void 0===a?void 0:a.decorator)&&n.push(o.escapedText.toString())})),0!==n.length)}function m(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&o.escapedText.toString()===(null===(a=null===(i=r.ets)||void 0===i?void 0:i.concurrent)||void 0===a?void 0:a.decorator)&&n.push(o.escapedText.toString())})),0!==n.length)}function g(t,r){e.Debug.assert(t>=0);var n=e.getLineStarts(r),i=t,a=r.text;if(i+1===n.length)return a.length-1;var o=n[i],s=n[i+1]-1;for(e.Debug.assert(e.isLineBreak(a.charCodeAt(s)));o<=s&&e.isLineBreak(a.charCodeAt(s));)s--;return s}function _(e){return void 0===e||!e.virtual&&(e.pos===e.end&&e.pos>=0&&1!==e.kind)}function h(e){return!_(e)}function y(e,t,r){if(void 0===t||0===t.length)return e;for(var n=0;n<e.length&&r(e[n]);++n);return e.splice.apply(e,i([n,0],t)),e}function v(e,t,r){if(void 0===t)return e;for(var n=0;n<e.length&&r(e[n]);++n);return e.splice(n,0,t),e}function b(e){return X(e)||!!(1048576&T(e))}function k(e,t){return 42===e.charCodeAt(t+1)&&33===e.charCodeAt(t+2)}function x(t,r,n){return _(t)?t.pos:e.isJSDocNode(t)||11===t.kind?e.skipTrivia((r||l(t)).text,t.pos,!1,!0):n&&e.hasJSDocNodes(t)?x(t.jsDoc[0],r):337===t.kind&&t._children.length>0?x(t._children[0],r,n):t.virtual?t.pos:e.skipTrivia((r||l(t)).text,t.pos)}function E(e,t,r){return void 0===r&&(r=!1),S(e.text,t,r)}function S(t,r,n){if(void 0===n&&(n=!1),_(r))return"";var i=t.substring(n?r.pos:e.skipTrivia(t,r.pos),r.end);return function(t){return!!e.findAncestor(t,e.isJSDocTypeExpression)}(r)&&(i=i.replace(/(^|\r?\n|\r)\s*\*\s*/g,"$1")),i}function D(e,t){return void 0===t&&(t=!1),E(l(e),e,t)}function w(e){return e.pos}function T(e){var t=e.emitNode;return t&&t.flags||0}function C(e){var t=It(e);return 251===t.kind&&290===t.parent.kind}function A(t){return e.isModuleDeclaration(t)&&(10===t.name.kind||P(t))}function N(t){return e.isModuleDeclaration(t)||e.isIdentifier(t)}function P(e){return!!(1024&e.flags)}function I(e){return A(e)&&F(e)}function F(t){switch(t.parent.kind){case 300:return e.isExternalModule(t.parent);case 260:return A(t.parent.parent)&&e.isSourceFile(t.parent.parent.parent)&&!e.isExternalModule(t.parent.parent.parent)}return!1}function O(t,r){switch(t.kind){case 300:case 261:case 290:case 259:case 239:case 240:case 241:case 167:case 166:case 168:case 169:case 253:case 209:case 210:return!0;case 232:return!e.isFunctionLike(r)}return!1}function R(t){switch(t.kind){case 170:case 171:case 165:case 172:case 175:case 176:case 311:case 254:case 255:case 223:case 256:case 257:case 333:case 253:case 166:case 167:case 168:case 169:case 209:case 210:return!0;default:return e.assertType(t),!1}}function M(e){switch(e.kind){case 264:case 263:return!0;default:return!1}}function L(t){return M(t)||e.isExportDeclaration(t)}function j(e){return e&&e.virtual&&78===e.kind?e.escapedText.toString():e&&0!==s(e)?D(e):"(Missing)"}function B(t){switch(t.kind){case 78:case 79:return t.escapedText;case 10:case 8:case 14:return e.escapeLeadingUnderscores(t.text);case 159:return xt(t.expression)?e.escapeLeadingUnderscores(t.expression.text):e.Debug.fail("Text of property name cannot be read from non-literal-valued ComputedPropertyNames");default:return e.Debug.assertNever(t)}}function z(t){switch(t.kind){case 108:return"this";case 79:case 78:return 0===s(t)?e.idText(t):D(t);case 158:return z(t.left)+"."+z(t.right);case 202:return e.isIdentifier(t.name)||e.isPrivateIdentifier(t.name)?z(t.expression)+"."+z(t.name):e.Debug.assertNever(t.name);default:return e.Debug.assertNever(t)}}function U(e,t,r,n,i,a,o){var s=H(e,t);return vn(e,s.start,s.length,r,n,i,a,o)}function q(t,r,n){e.Debug.assertGreaterThanOrEqual(r,0),e.Debug.assertGreaterThanOrEqual(n,0),t&&(e.Debug.assertLessThanOrEqual(r,t.text.length),e.Debug.assertLessThanOrEqual(r+n,t.text.length))}function J(e,t,r,n,i){return q(e,t,r),{file:e,start:t,length:r,code:n.code,category:n.category,messageText:n.next?n:n.messageText,relatedInformation:i}}function V(t,r){var n=e.createScanner(t.languageVersion,!0,t.languageVariant,t.text,void 0,r);n.scan();var i=n.getTokenPos();return e.createTextSpanFromBounds(i,n.getTextPos())}function H(t,r){var n=r;switch(r.kind){case 300:var i=e.skipTrivia(t.text,0,!1);return i===t.text.length?e.createTextSpan(0,0):V(t,i);case 251:case 199:case 254:case 223:case 255:case 256:case 259:case 258:case 294:case 253:case 209:case 166:case 168:case 169:case 257:case 164:case 163:n=r.name;break;case 210:return function(t,r){var n=e.skipTrivia(t.text,r.pos);if(r.body&&232===r.body.kind){var i=e.getLineAndCharacterOfPosition(t,r.body.pos).line;if(i<e.getLineAndCharacterOfPosition(t,r.body.end).line)return e.createTextSpan(n,g(i,t)-n+1)}return e.createTextSpanFromBounds(n,r.end)}(t,r);case 287:case 288:var a=e.skipTrivia(t.text,r.pos),o=r.statements.length>0?r.statements[0].pos:r.end;return e.createTextSpanFromBounds(a,o)}if(void 0===n)return V(t,r.pos);e.Debug.assert(!e.isJSDoc(n));var s=_(n),c=s||e.isJsxText(r)||r.virtual?n.pos:e.skipTrivia(t.text,n.pos);return s?(e.Debug.assert(c===n.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),e.Debug.assert(c===n.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(e.Debug.assert(c>=n.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),e.Debug.assert(c<=n.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),e.createTextSpanFromBounds(c,n.end)}function K(e){return 6===e.scriptKind}function W(e){return!!e}function G(t){return!!(2&e.getCombinedNodeFlags(t))}function $(e){return 204===e.kind&&100===e.expression.kind}function Y(t){return e.isImportTypeNode(t)&&e.isLiteralTypeNode(t.argument)&&e.isStringLiteral(t.argument.literal)}function X(e){return 235===e.kind&&10===e.expression.kind}function Q(e){return!!(1048576&T(e))}function Z(t){return e.isIdentifier(t.name)&&!t.initializer}e.changesAffectModuleResolution=function(e,t){return e.configFilePath!==t.configFilePath||o(e,t)},e.optionsHaveModuleResolutionChanges=o,e.forEachAncestor=function(t,r){for(;;){var n=r(t);if("quit"===n)return;if(void 0!==n)return n;if(e.isSourceFile(t))return;t=t.parent}},e.forEachEntry=function(e,t){for(var r=e.entries(),n=r.next();!n.done;n=r.next()){var i=n.value,a=i[0],o=t(i[1],a);if(o)return o}},e.forEachKey=function(e,t){for(var r=e.keys(),n=r.next();!n.done;n=r.next()){var i=t(n.value);if(i)return i}},e.copyEntries=function(e,t){e.forEach((function(e,r){t.set(r,e)}))},e.usingSingleLineStringWriter=function(e){var t=n.getText();try{return e(n),n.getText()}finally{n.clear(),n.writeKeyword(t)}},e.getFullWidth=s,e.getResolvedModule=function(e,t){return e&&e.resolvedModules&&e.resolvedModules.get(t)},e.setResolvedModule=function(t,r,n){t.resolvedModules||(t.resolvedModules=new e.Map),t.resolvedModules.set(r,n)},e.setResolvedTypeReferenceDirective=function(t,r,n){t.resolvedTypeReferenceDirectiveNames||(t.resolvedTypeReferenceDirectiveNames=new e.Map),t.resolvedTypeReferenceDirectiveNames.set(r,n)},e.projectReferenceIsEqualTo=function(e,t){return e.path===t.path&&!e.prepend==!t.prepend&&!e.circular==!t.circular},e.moduleResolutionIsEqualTo=function(e,t){return e.isExternalLibraryImport===t.isExternalLibraryImport&&e.extension===t.extension&&e.resolvedFileName===t.resolvedFileName&&e.originalPath===t.originalPath&&(r=e.packageId,n=t.packageId,r===n||!!r&&!!n&&r.name===n.name&&r.subModuleName===n.subModuleName&&r.version===n.version);var r,n},e.packageIdToString=function(e){var t=e.name,r=e.subModuleName;return(r?t+"/"+r:t)+"@"+e.version},e.typeDirectiveIsEqualTo=function(e,t){return e.resolvedFileName===t.resolvedFileName&&e.primary===t.primary},e.hasChangesInResolutions=function(t,r,n,i){e.Debug.assert(t.length===r.length);for(var a=0;a<t.length;a++){var o=r[a],s=n&&n.get(t[a]);if(s?!o||!i(s,o):o)return!0}return!1},e.containsParseError=c,e.getSourceFileOfNode=l,e.isTokenInsideBuilder=function(e,t){var r,n,i,a=null!==(i=null===(n=null===(r=t.ets)||void 0===r?void 0:r.render)||void 0===n?void 0:n.decorator)&&void 0!==i?i:"Builder";if(!e)return!1;for(var o=0,s=e;o<s.length;o++){var c=s[o];if(78===c.expression.kind&&c.expression.escapedText===a)return!0}return!1},e.getEtsComponentExpressionInnerCallExpressionNode=function(e){for(;e&&211!==e.kind;)e=204===e.kind||202===e.kind?e.expression:void 0;return e},e.getRootEtsComponentInnerCallExpressionNode=function(t){if(t&&e.isEtsComponentExpression(t))return t;for(;t;){var r=ht(e.isCallExpression(t)?t.parent:t,204),n=yt(r);if(n&&u(t))return n;t=null!=r?r:t.parent}},e.getEtsExtendDecoratorComponentNames=function(e,t){var r,n,i=[],a=null===(n=null===(r=t.ets)||void 0===r?void 0:r.extend)||void 0===n?void 0:n.decorator;return null==e||e.forEach((function(e){if(204===e.expression.kind){var t=e.expression.expression,r=e.expression.arguments;78===t.kind&&(null==a?void 0:a.includes(t.escapedText.toString()))&&r.length&&78===r[0].kind&&i.push(r[0].escapedText)}})),i},e.getEtsStylesDecoratorComponentNames=function(e,t){var r,n,i,a=[],o=null!==(i=null===(n=null===(r=t.ets)||void 0===r?void 0:r.styles)||void 0===n?void 0:n.decorator)&&void 0!==i?i:"Styles";return null==e||e.forEach((function(e){if(78===e.expression.kind){var t=e.expression;78===t.kind&&t.escapedText===o&&a.push(t.escapedText)}})),a},e.filterEtsExtendDecoratorComponentNamesByOptions=function(t,r){var n;if(!t.length)return[];var i=[];return null===(n=r.ets)||void 0===n||n.extend.components.forEach((function(r){var n=r.name;n===e.last(t)&&i.push(n)})),i},e.hasEtsExtendDecoratorNames=d,e.hasEtsStylesDecoratorNames=p,e.hasEtsBuildDecoratorNames=function(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&-1!==(null===(a=null===(i=r.ets)||void 0===i?void 0:i.render)||void 0===a?void 0:a.method.indexOf(o.escapedText.toString()))&&n.push(o.escapedText.toString())})),0!==n.length)},e.hasEtsBuilderDecoratorNames=f,e.hasEtsConcurrentDecoratorNames=m,e.isStatementWithLocals=function(e){switch(e.kind){case 232:case 261:case 239:case 240:case 241:return!0}return!1},e.getStartPositionOfLine=function(t,r){return e.Debug.assert(t>=0),e.getLineStarts(r)[t]},e.nodePosToString=function(t){var r=l(t),n=e.getLineAndCharacterOfPosition(r,t.pos);return r.fileName+"("+(n.line+1)+","+(n.character+1)+")"},e.getEndLinePosition=g,e.isFileLevelUniqueName=function(e,t,r){return!(r&&r(t)||e.identifiers.has(t))},e.nodeIsMissing=_,e.nodeIsPresent=h,e.insertStatementsAfterStandardPrologue=function(e,t){return y(e,t,X)},e.insertStatementsAfterCustomPrologue=function(e,t){return y(e,t,b)},e.insertStatementAfterStandardPrologue=function(e,t){return v(e,t,X)},e.insertStatementAfterCustomPrologue=function(e,t){return v(e,t,b)},e.getEtsLibs=function(t){var r,n,i=[],a=null!==(n=null===(r=t.getCompilerOptions().ets)||void 0===r?void 0:r.libs)&&void 0!==n?n:[];return a.length&&e.forEach(a,(function(r){i.push(e.sys.resolvePath(r));var n=function(t,r){if(!r)return;for(var n=e.sys.resolvePath(r),i=0,a=t.getSourceFiles();i<a.length;i++){var o=a[i];if(o.fileName)if(e.sys.resolvePath(o.fileName)===n)return o}return}(t,r);e.forEach(null==n?void 0:n.referencedFiles,(function(t){var r=e.sys.resolvePath(e.resolveTripleslashReference(t.fileName,n.fileName));i.push(r)}))})),i},e.isRecognizedTripleSlashComment=function(t,r,n){if(47===t.charCodeAt(r+1)&&r+2<n&&47===t.charCodeAt(r+2)){var i=t.substring(r,n);return!!(i.match(e.fullTripleSlashReferencePathRegEx)||i.match(e.fullTripleSlashAMDReferencePathRegEx)||i.match(ee)||i.match(te))}return!1},e.isPinnedComment=k,e.createCommentDirectivesMap=function(t,r){var n=new e.Map(r.map((function(r){return[""+e.getLineAndCharacterOfPosition(t,r.range.end).line,r]}))),i=new e.Map;return{getUnusedExpectations:function(){return e.arrayFrom(n.entries()).filter((function(e){var t=e[0];return 0===e[1].type&&!i.get(t)})).map((function(e){e[0];return e[1]}))},markUsed:function(e){if(!n.has(""+e))return!1;return i.set(""+e,!0),!0}}},e.getTokenPosOfNode=x,e.getNonDecoratorTokenPosOfNode=function(t,r){return _(t)||!t.decorators?x(t,r):e.skipTrivia((r||l(t)).text,t.decorators.end)},e.getSourceTextOfNodeFromSourceFile=E,e.isExportNamespaceAsDefaultDeclaration=function(t){return!!(e.isExportDeclaration(t)&&t.exportClause&&e.isNamespaceExport(t.exportClause)&&"default"===t.exportClause.name.escapedText)},e.getTextOfNodeFromSourceText=S,e.getTextOfNode=D,e.indexOfNode=function(t,r){return e.binarySearch(t,r,w,e.compareValues)},e.getEmitFlags=T,e.getScriptTargetFeatures=function(){return{es2015:{Array:["find","findIndex","fill","copyWithin","entries","keys","values"],RegExp:["flags","sticky","unicode"],Reflect:["apply","construct","defineProperty","deleteProperty","get"," getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"],ArrayConstructor:["from","of"],ObjectConstructor:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],NumberConstructor:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"],Math:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"],Map:["entries","keys","values"],Set:["entries","keys","values"],Promise:e.emptyArray,PromiseConstructor:["all","race","reject","resolve"],Symbol:["for","keyFor"],WeakMap:["entries","keys","values"],WeakSet:["entries","keys","values"],Iterator:e.emptyArray,AsyncIterator:e.emptyArray,String:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],StringConstructor:["fromCodePoint","raw"]},es2016:{Array:["includes"]},es2017:{Atomics:e.emptyArray,SharedArrayBuffer:e.emptyArray,String:["padStart","padEnd"],ObjectConstructor:["values","entries","getOwnPropertyDescriptors"],DateTimeFormat:["formatToParts"]},es2018:{Promise:["finally"],RegExpMatchArray:["groups"],RegExpExecArray:["groups"],RegExp:["dotAll"],Intl:["PluralRules"],AsyncIterable:e.emptyArray,AsyncIterableIterator:e.emptyArray,AsyncGenerator:e.emptyArray,AsyncGeneratorFunction:e.emptyArray},es2019:{Array:["flat","flatMap"],ObjectConstructor:["fromEntries"],String:["trimStart","trimEnd","trimLeft","trimRight"],Symbol:["description"]},es2020:{BigInt:e.emptyArray,BigInt64Array:e.emptyArray,BigUint64Array:e.emptyArray,PromiseConstructor:["allSettled"],SymbolConstructor:["matchAll"],String:["matchAll"],DataView:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"],RelativeTimeFormat:["format","formatToParts","resolvedOptions"]},esnext:{PromiseConstructor:["any"],String:["replaceAll"],NumberFormat:["formatToParts"]}}},function(e){e[e.None=0]="None",e[e.NeverAsciiEscape=1]="NeverAsciiEscape",e[e.JsxAttributeEscape=2]="JsxAttributeEscape",e[e.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",e[e.AllowNumericSeparator=8]="AllowNumericSeparator"}(e.GetLiteralTextFlags||(e.GetLiteralTextFlags={})),e.getLiteralText=function(t,r,n){if(function(t,r){if(Ft(t)||!t.parent||4&r&&t.isUnterminated)return!1;if(e.isNumericLiteral(t)&&512&t.numericLiteralFlags)return!!(8&r);return!e.isBigIntLiteral(t)}(t,n))return E(r,t);switch(t.kind){case 10:var i=2&n?Qt:1&n||16777216&T(t)?Ht:Wt;return t.singleQuote?"'"+i(t.text,39)+"'":'"'+i(t.text,34)+'"';case 14:case 15:case 16:case 17:i=1&n||16777216&T(t)?Ht:Wt;var a=t.rawText||function(e){return e.replace(jt,"\\${")}(i(t.text,96));switch(t.kind){case 14:return"`"+a+"`";case 15:return"`"+a+"${";case 16:return"}"+a+"${";case 17:return"}"+a+"`"}break;case 8:case 9:return t.text;case 13:return 4&n&&t.isUnterminated?t.text+(92===t.text.charCodeAt(t.text.length-1)?" /":"/"):t.text}return e.Debug.fail("Literal kind '"+t.kind+"' not accounted for.")},e.getTextOfConstantValue=function(t){return e.isString(t)?'"'+Wt(t)+'"':""+t},e.makeIdentifierFromModuleName=function(t){return e.getBaseFileName(t).replace(/^(\d)/,"_$1").replace(/\W/g,"_")},e.isBlockOrCatchScoped=function(t){return!!(3&e.getCombinedNodeFlags(t))||C(t)},e.isCatchClauseVariableDeclarationOrBindingElement=C,e.isAmbientModule=A,e.isModuleWithStringLiteralName=function(t){return e.isModuleDeclaration(t)&&10===t.name.kind},e.isNonGlobalAmbientModule=function(t){return e.isModuleDeclaration(t)&&e.isStringLiteral(t.name)},e.isEffectiveModuleDeclaration=N,e.isShorthandAmbientModuleSymbol=function(e){return(t=e.valueDeclaration)&&259===t.kind&&!t.body;var t},e.isBlockScopedContainerTopLevel=function(t){return 300===t.kind||259===t.kind||e.isFunctionLike(t)},e.isGlobalScopeAugmentation=P,e.isExternalModuleAugmentation=I,e.isModuleAugmentationExternal=F,e.getNonAugmentationDeclaration=function(t){return e.find(t.declarations,(function(t){return!(I(t)||e.isModuleDeclaration(t)&&P(t))}))},e.isEffectiveExternalModule=function(t,r){return e.isExternalModule(t)||r.isolatedModules||wn(r)===e.ModuleKind.CommonJS&&!!t.commonJsModuleIndicator},e.isEffectiveStrictModeSourceFile=function(t,r){switch(t.scriptKind){case 1:case 3:case 2:case 4:case 8:break;default:return!1}return!t.isDeclarationFile&&(!!Cn(r,"alwaysStrict")||(!!e.startsWithUseStrict(t.statements)||!(!e.isExternalModule(t)&&!r.isolatedModules)&&(wn(r)>=e.ModuleKind.ES2015||!r.noImplicitUseStrict)))},e.isBlockScope=O,e.isDeclarationWithTypeParameters=function(t){switch(t.kind){case 327:case 334:case 316:return!0;default:return e.assertType(t),R(t)}},e.isDeclarationWithTypeParameterChildren=R,e.isAnyImportSyntax=M,e.isLateVisibilityPaintedStatement=function(e){switch(e.kind){case 264:case 263:case 234:case 254:case 255:case 253:case 259:case 257:case 256:case 258:return!0;default:return!1}},e.hasPossibleExternalModuleReference=function(t){return L(t)||e.isModuleDeclaration(t)||e.isImportTypeNode(t)||$(t)},e.isAnyImportOrReExport=L,e.getEnclosingBlockScopeContainer=function(t){return e.findAncestor(t.parent,(function(e){return O(e,e.parent)}))},e.declarationNameToString=j,e.getNameFromIndexInfo=function(e){return e.declaration?j(e.declaration.parameters[0].name):void 0},e.isComputedNonLiteralName=function(e){return 159===e.kind&&!xt(e.expression)},e.getTextOfPropertyName=B,e.entityNameToString=z,e.createDiagnosticForNode=function(e,t,r,n,i,a){return U(l(e),e,t,r,n,i,a)},e.createDiagnosticForNodeArray=function(t,r,n,i,a,o,s){var c=e.skipTrivia(t.text,r.pos);return vn(t,c,r.end-c,n,i,a,o,s)},e.createDiagnosticForNodeInSourceFile=U,e.createDiagnosticForNodeFromMessageChain=function(e,t,r){var n=l(e),i=H(n,e);return J(n,i.start,i.length,t,r)},e.createFileDiagnosticFromMessageChain=J,e.createDiagnosticForFileFromMessageChain=function(e,t,r){return{file:e,start:0,length:0,code:t.code,category:t.category,messageText:t.next?t:t.messageText,relatedInformation:r}},e.createDiagnosticForRange=function(e,t,r){return{file:e,start:t.pos,length:t.end-t.pos,code:r.code,category:r.category,messageText:r.message}},e.getSpanOfTokenAtPosition=V,e.getErrorSpanForNode=H,e.isExternalOrCommonJsModule=function(e){return void 0!==(e.externalModuleIndicator||e.commonJsModuleIndicator)},e.isJsonSourceFile=K,e.isEmitNodeModulesFiles=W,e.isEnumConst=function(t){return!!(2048&e.getCombinedModifierFlags(t))},e.isDeclarationReadonly=function(t){return!(!(64&e.getCombinedModifierFlags(t))||e.isParameterPropertyDeclaration(t,t.parent))},e.isVarConst=G,e.isLet=function(t){return!!(1&e.getCombinedNodeFlags(t))},e.isSuperCall=function(e){return 204===e.kind&&106===e.expression.kind},e.isImportCall=$,e.isImportMeta=function(t){return e.isMetaProperty(t)&&100===t.keywordToken&&"meta"===t.name.escapedText},e.isLiteralImportTypeNode=Y,e.isPrologueDirective=X,e.isCustomPrologue=Q,e.isHoistedFunction=function(t){return Q(t)&&e.isFunctionDeclaration(t)},e.isHoistedVariableStatement=function(t){return Q(t)&&e.isVariableStatement(t)&&e.every(t.declarationList.declarations,Z)},e.getJSDocCommentRanges=function(t,r){var n=161===t.kind||160===t.kind||209===t.kind||210===t.kind||208===t.kind?e.concatenate(e.getTrailingCommentRanges(r,t.pos),e.getLeadingCommentRanges(r,t.pos)):e.getLeadingCommentRanges(r,t.pos);return e.filter(n,(function(e){return 42===r.charCodeAt(e.pos+1)&&42===r.charCodeAt(e.pos+2)&&47!==r.charCodeAt(e.pos+3)}))},e.fullTripleSlashReferencePathRegEx=/^(\/\/\/\s*<reference\s+path\s*=\s*)('|")(.+?)\2.*?\/>/;var ee=/^(\/\/\/\s*<reference\s+types\s*=\s*)('|")(.+?)\2.*?\/>/;e.fullTripleSlashAMDReferencePathRegEx=/^(\/\/\/\s*<amd-dependency\s+path\s*=\s*)('|")(.+?)\2.*?\/>/;var te=/^(\/\/\/\s*<reference\s+no-default-lib\s*=\s*)('|")(.+?)\2\s*\/>/;function re(t){if(173<=t.kind&&t.kind<=196)return!0;switch(t.kind){case 129:case 153:case 145:case 156:case 148:case 132:case 149:case 146:case 151:case 142:return!0;case 114:return 214!==t.parent.kind;case 225:return!Ur(t);case 160:return 191===t.parent.kind||186===t.parent.kind;case 78:(158===t.parent.kind&&t.parent.right===t||202===t.parent.kind&&t.parent.name===t)&&(t=t.parent),e.Debug.assert(78===t.kind||158===t.kind||202===t.kind,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 158:case 202:case 108:var r=t.parent;if(177===r.kind)return!1;if(196===r.kind)return!r.isTypeOf;if(173<=r.kind&&r.kind<=196)return!0;switch(r.kind){case 225:return!Ur(r);case 160:case 333:return t===r.constraint;case 164:case 163:case 161:case 251:case 253:case 209:case 210:case 167:case 166:case 165:case 168:case 169:case 170:case 171:case 172:case 207:return t===r.type;case 204:case 205:return e.contains(r.typeArguments,t);case 206:return!1}}return!1}function ne(e){if(e)switch(e.kind){case 199:case 294:case 161:case 291:case 164:case 163:case 292:case 251:return!0}return!1}function ie(e){return 252===e.parent.kind&&234===e.parent.parent.kind}function ae(e,t,r){return e.properties.filter((function(e){if(291===e.kind){var n=B(e.name);return t===n||!!r&&r===n}return!1}))}function oe(t){if(t&&t.statements.length){var r=t.statements[0].expression;return e.tryCast(r,e.isObjectLiteralExpression)}}function se(t,r){var n=oe(t);return n?ae(n,r):e.emptyArray}function ce(t){return e.findAncestor(t.parent,e.isFunctionLikeDeclaration)}function le(t){return e.findAncestor(t.parent,e.isClassLike)}function ue(t,r){for(e.Debug.assert(300!==t.kind);;){if(!(t=t.parent))return e.Debug.fail();switch(t.kind){case 159:if(e.isClassLike(t.parent.parent))return t;t=t.parent;break;case 162:161===t.parent.kind&&e.isClassElement(t.parent.parent)?t=t.parent.parent:e.isClassElement(t.parent)&&(t=t.parent);break;case 210:if(!r)continue;case 253:case 209:case 259:case 164:case 163:case 166:case 165:case 167:case 168:case 169:case 170:case 171:case 172:case 258:case 300:return t}}}function de(e){var t=e.kind;return(202===t||203===t)&&106===e.expression.kind}function pe(e){switch(e.kind){case 206:return e.tag;case 278:case 277:return e.tagName;default:return e.expression}}function fe(t,r,n,i){if(e.isNamedDeclaration(t)&&e.isPrivateIdentifier(t.name))return!1;switch(t.kind){case 254:case 255:return!0;case 164:return 254===r.kind||255===r.kind;case 168:case 169:case 166:return void 0!==t.body&&(254===r.kind||255===r.kind);case 161:return!(void 0===r.body||167!==r.kind&&166!==r.kind&&169!==r.kind||254!==n.kind&&255!==n.kind);case 253:if(i)return d(t.decorators,i)||p(t.decorators,i)||f(t.decorators,i)||m(t.decorators,i)}return!1}function me(e,t,r){return void 0!==e.decorators&&fe(e,t,r)}function ge(e,t,r){return me(e,t,r)||_e(e,t)}function _e(t,r){switch(t.kind){case 254:case 255:return e.some(t.members,(function(e){return ge(e,t,r)}));case 166:case 169:return e.some(t.parameters,(function(e){return me(e,t,r)}));default:return!1}}function he(e){var t=e.parent;return(278===t.kind||277===t.kind||279===t.kind)&&t.tagName===e}function ye(e){switch(e.kind){case 106:case 104:case 110:case 95:case 13:case 200:case 201:case 202:case 211:case 203:case 204:case 205:case 206:case 226:case 207:case 227:case 208:case 209:case 223:case 210:case 214:case 212:case 213:case 216:case 217:case 218:case 219:case 222:case 220:case 224:case 276:case 277:case 280:case 221:case 215:case 228:return!0;case 158:for(;158===e.parent.kind;)e=e.parent;return 177===e.parent.kind||he(e);case 78:if(177===e.parent.kind||he(e))return!0;case 8:case 9:case 10:case 14:case 108:return ve(e);default:return!1}}function ve(e){var t=e.parent;switch(t.kind){case 251:case 161:case 164:case 163:case 294:case 291:case 199:return t.initializer===e;case 235:case 236:case 237:case 238:case 244:case 245:case 246:case 287:case 248:return t.expression===e;case 239:var r=t;return r.initializer===e&&252!==r.initializer.kind||r.condition===e||r.incrementor===e;case 240:case 241:var n=t;return n.initializer===e&&252!==n.initializer.kind||n.expression===e;case 207:case 226:case 230:case 159:return e===t.expression;case 162:case 286:case 285:case 293:return!0;case 225:return t.expression===e&&Ur(t);case 292:return t.objectAssignmentInitializer===e;default:return ye(t)}}function be(e){for(;158===e.kind||78===e.kind;)e=e.parent;return 177===e.kind}function ke(e){return 263===e.kind&&275===e.moduleReference.kind}function xe(e){return Ee(e)}function Ee(e){return!!e&&!!(131072&e.flags)}function Se(t,r){if(204!==t.kind)return!1;var n=t,i=n.expression,a=n.arguments;if(78!==i.kind||"require"!==i.escapedText)return!1;if(1!==a.length)return!1;var o=a[0];return!r||e.isStringLiteralLike(o)}function De(t,r){return 199===t.kind&&(t=t.parent.parent),e.isVariableDeclaration(t)&&!!t.initializer&&Se(sn(t.initializer),r)}function we(t){return e.isBinaryExpression(t)||on(t)||e.isIdentifier(t)||e.isCallExpression(t)}function Te(t){return Ee(t)&&t.initializer&&e.isBinaryExpression(t.initializer)&&(56===t.initializer.operatorToken.kind||60===t.initializer.operatorToken.kind)&&t.name&&qr(t.name)&&Ae(t.name,t.initializer.left)?t.initializer.right:t.initializer}function Ce(t,r){if(e.isCallExpression(t)){var n=ct(t.expression);return 209===n.kind||210===n.kind?t:void 0}return 209===t.kind||223===t.kind||210===t.kind||e.isObjectLiteralExpression(t)&&(0===t.properties.length||r)?t:void 0}function Ae(t,r){if(Ct(t)&&Ct(r))return At(t)===At(r);if(e.isIdentifier(t)&&Me(r)&&(108===r.expression.kind||e.isIdentifier(r.expression)&&("window"===r.expression.escapedText||"self"===r.expression.escapedText||"global"===r.expression.escapedText))){var n=Ue(r);return e.isPrivateIdentifier(n)&&e.Debug.fail("Unexpected PrivateIdentifier in name expression with literal-like access."),Ae(t,n)}return!(!Me(t)||!Me(r))&&(Je(t)===Je(r)&&Ae(t.expression,r.expression))}function Ne(e){for(;zr(e,!0);)e=e.right;return e}function Pe(t){return e.isIdentifier(t)&&"exports"===t.escapedText}function Ie(t){return e.isIdentifier(t)&&"module"===t.escapedText}function Fe(t){return(e.isPropertyAccessExpression(t)||Le(t))&&Ie(t.expression)&&"exports"===Je(t)}function Oe(t){var r=function(t){if(e.isCallExpression(t)){if(!Re(t))return 0;var r=t.arguments[0];return Pe(r)||Fe(r)?8:je(r)&&"prototype"===Je(r)?9:7}if(62!==t.operatorToken.kind||!on(t.left)||(n=Ne(t),e.isVoidExpression(n)&&e.isNumericLiteral(n.expression)&&"0"===n.expression.text))return 0;var n;if(ze(t.left.expression,!0)&&"prototype"===Je(t.left)&&e.isObjectLiteralExpression(He(t)))return 6;return Ve(t.left)}(t);return 5===r||Ee(t)?r:0}function Re(t){return 3===e.length(t.arguments)&&e.isPropertyAccessExpression(t.expression)&&e.isIdentifier(t.expression.expression)&&"Object"===e.idText(t.expression.expression)&&"defineProperty"===e.idText(t.expression.name)&&xt(t.arguments[1])&&ze(t.arguments[0],!0)}function Me(t){return e.isPropertyAccessExpression(t)||Le(t)}function Le(t){return e.isElementAccessExpression(t)&&(xt(t.argumentExpression)||wt(t.argumentExpression))}function je(t,r){return e.isPropertyAccessExpression(t)&&(!r&&108===t.expression.kind||e.isIdentifier(t.name)&&ze(t.expression,!0))||Be(t,r)}function Be(e,t){return Le(e)&&(!t&&108===e.expression.kind||qr(e.expression)||je(e.expression,!0))}function ze(e,t){return qr(e)||je(e,t)}function Ue(t){return e.isPropertyAccessExpression(t)?t.name:t.argumentExpression}function qe(t){if(e.isPropertyAccessExpression(t))return t.name;var r=ct(t.argumentExpression);return e.isNumericLiteral(r)||e.isStringLiteralLike(r)?r:t}function Je(t){var r=qe(t);if(r){if(e.isIdentifier(r))return r.escapedText;if(e.isStringLiteralLike(r)||e.isNumericLiteral(r))return e.escapeLeadingUnderscores(r.text)}if(e.isElementAccessExpression(t)&&wt(t.argumentExpression))return Nt(e.idText(t.argumentExpression.name))}function Ve(t){if(108===t.expression.kind)return 4;if(Fe(t))return 2;if(ze(t.expression,!0)){if(Vr(t.expression))return 3;for(var r=t;!e.isIdentifier(r.expression);)r=r.expression;var n=r.expression;if(("exports"===n.escapedText||"module"===n.escapedText&&"exports"===Je(r))&&je(t))return 1;if(ze(t,!0)||e.isElementAccessExpression(t)&&Dt(t))return 5}return 0}function He(t){for(;e.isBinaryExpression(t.right);)t=t.right;return t.right}function Ke(t){switch(t.parent.kind){case 264:case 270:return t.parent;case 275:return t.parent.parent;case 204:return $(t.parent)||Se(t.parent,!1)?t.parent:void 0;case 192:return e.Debug.assert(e.isStringLiteral(t)),e.tryCast(t.parent.parent,e.isImportTypeNode);default:return}}function We(t){switch(t.kind){case 264:case 270:return t.moduleSpecifier;case 263:return 275===t.moduleReference.kind?t.moduleReference.expression:void 0;case 196:return Y(t)?t.argument.literal:void 0;case 204:return t.arguments[0];case 259:return 10===t.name.kind?t.name:void 0;default:return e.Debug.assertNever(t)}}function Ge(e){return 334===e.kind||327===e.kind||328===e.kind}function $e(t){return e.isExpressionStatement(t)&&e.isBinaryExpression(t.expression)&&0!==Oe(t.expression)&&e.isBinaryExpression(t.expression.right)&&(56===t.expression.right.operatorToken.kind||60===t.expression.right.operatorToken.kind)?t.expression.right.right:void 0}function Ye(e){switch(e.kind){case 234:var t=Xe(e);return t&&t.initializer;case 164:case 291:return e.initializer}}function Xe(t){return e.isVariableStatement(t)?e.firstOrUndefined(t.declarationList.declarations):void 0}function Qe(t){return e.isModuleDeclaration(t)&&t.body&&259===t.body.kind?t.body:void 0}function Ze(t){var r=t.parent;return 291===r.kind||269===r.kind||164===r.kind||235===r.kind&&202===t.kind||Qe(r)||e.isBinaryExpression(t)&&62===t.operatorToken.kind?r:r.parent&&(Xe(r.parent)===t||e.isBinaryExpression(r)&&62===r.operatorToken.kind)?r.parent:r.parent&&r.parent.parent&&(Xe(r.parent.parent)||Ye(r.parent.parent)===t||$e(r.parent.parent))?r.parent.parent:void 0}function et(t){var r=tt(t);return r&&e.isFunctionLike(r)?r:void 0}function tt(t){var r=rt(t);if(r)return $e(r)||function(t){return e.isExpressionStatement(t)&&e.isBinaryExpression(t.expression)&&62===t.expression.operatorToken.kind?Ne(t.expression):void 0}(r)||Ye(r)||Xe(r)||Qe(r)||r}function rt(t){var r=nt(t);if(r){var n=r.parent;return n&&n.jsDoc&&r===e.lastOrUndefined(n.jsDoc)?n:void 0}}function nt(t){return e.findAncestor(t.parent,e.isJSDoc)}function it(t){var r=e.isJSDocParameterTag(t)?t.typeExpression&&t.typeExpression.type:t.type;return void 0!==t.dotDotDotToken||!!r&&312===r.kind}function at(e){for(var t=e.parent;;){switch(t.kind){case 218:var r=t.operatorToken.kind;return Lr(r)&&t.left===e?62===r||Mr(r)?1:2:0;case 216:case 217:var n=t.operator;return 45===n||46===n?2:0;case 240:case 241:return t.initializer===e?1:0;case 208:case 200:case 222:case 227:e=t;break;case 292:if(t.name!==e)return 0;e=t.parent;break;case 291:if(t.name===e)return 0;e=t.parent;break;default:return 0}t=e.parent}}function ot(e,t){for(;e&&e.kind===t;)e=e.parent;return e}function st(e){return ot(e,208)}function ct(t){return e.skipOuterExpressions(t,1)}function lt(t){return qr(t)||e.isClassExpression(t)}function ut(e){return lt(dt(e))}function dt(t){return e.isExportAssignment(t)?t.expression:t.right}function pt(t){var r=ft(t);if(r&&Ee(t)){var n=e.getJSDocAugmentsTag(t);if(n)return n.class}return r}function ft(e){var t=_t(e.heritageClauses,94);return t&&t.types.length>0?t.types[0]:void 0}function mt(t){if(Ee(t))return e.getJSDocImplementsTags(t).map((function(e){return e.class}));var r=_t(t.heritageClauses,117);return null==r?void 0:r.types}function gt(e){var t=_t(e.heritageClauses,94);return t?t.types:void 0}function _t(e,t){if(e)for(var r=0,n=e;r<n.length;r++){var i=n[r];if(i.token===t)return i}}function ht(e,t){for(;e;){if(e.kind===t)return e;e=e.parent}}function yt(t){for(;t;){if(e.isEtsComponentExpression(t))return t;t=t.expression}}function vt(e){return 80<=e&&e<=157}function bt(e){return 126<=e&&e<=157}function kt(e){return vt(e)&&!bt(e)}function xt(t){return e.isStringLiteralLike(t)||e.isNumericLiteral(t)}function Et(t){return e.isPrefixUnaryExpression(t)&&(39===t.operator||40===t.operator)&&e.isNumericLiteral(t.operand)}function St(t){var r=e.getNameOfDeclaration(t);return!!r&&Dt(r)}function Dt(t){if(159!==t.kind&&203!==t.kind)return!1;var r=e.isElementAccessExpression(t)?ct(t.argumentExpression):t.expression;return!xt(r)&&!Et(r)&&!wt(r)}function wt(t){return e.isPropertyAccessExpression(t)&&Pt(t.expression)}function Tt(t){switch(t.kind){case 78:case 79:return t.escapedText;case 10:case 8:return e.escapeLeadingUnderscores(t.text);case 159:var r=t.expression;return wt(r)?Nt(e.idText(r.name)):xt(r)?e.escapeLeadingUnderscores(r.text):Et(r)?40===r.operator?e.tokenToString(r.operator)+r.operand.text:r.operand.text:void 0;default:return e.Debug.assertNever(t)}}function Ct(e){switch(e.kind){case 78:case 10:case 14:case 8:return!0;default:return!1}}function At(t){return e.isIdentifierOrPrivateIdentifier(t)?e.idText(t):t.text}function Nt(e){return"__@"+e}function Pt(e){return 78===e.kind&&"Symbol"===e.escapedText}function It(e){for(;199===e.kind;)e=e.parent.parent;return e}function Ft(e){return ui(e.pos)||ui(e.end)}function Ot(e,t,r){switch(e){case 205:return r?0:1;case 216:case 213:case 214:case 212:case 215:case 219:case 221:return 1;case 218:switch(t){case 42:case 62:case 63:case 64:case 66:case 65:case 67:case 68:case 69:case 70:case 71:case 72:case 77:case 73:case 74:case 75:case 76:return 1}}return 0}function Rt(e){return 218===e.kind?e.operatorToken.kind:216===e.kind||217===e.kind?e.operator:e.kind}function Mt(e,t,r){switch(e){case 340:return 0;case 222:return 1;case 221:return 2;case 219:return 4;case 218:switch(t){case 27:return 0;case 62:case 63:case 64:case 66:case 65:case 67:case 68:case 69:case 70:case 71:case 72:case 77:case 73:case 74:case 75:case 76:return 3;default:return Lt(t)}case 207:case 227:case 216:case 213:case 214:case 212:case 215:return 16;case 217:return 17;case 204:return 18;case 205:return r?19:18;case 206:case 202:case 203:return 19;case 226:return 11;case 108:case 106:case 78:case 104:case 110:case 95:case 8:case 9:case 10:case 200:case 201:case 209:case 210:case 223:case 13:case 14:case 220:case 208:case 224:case 276:case 277:case 280:return 20;default:return-1}}function Lt(e){switch(e){case 60:return 4;case 56:return 5;case 55:return 6;case 51:return 7;case 52:return 8;case 50:return 9;case 34:case 35:case 36:case 37:return 10;case 29:case 31:case 32:case 33:case 102:case 101:case 127:return 11;case 47:case 48:case 49:return 12;case 39:case 40:return 13;case 41:case 43:case 44:return 14;case 42:return 15}return-1}e.isPartOfTypeNode=re,e.isChildOfNodeWithKind=function(e,t){for(;e;){if(e.kind===t)return!0;e=e.parent}return!1},e.forEachReturnStatement=function(t,r){return function t(n){switch(n.kind){case 244:return r(n);case 261:case 232:case 236:case 237:case 238:case 239:case 240:case 241:case 245:case 246:case 287:case 288:case 247:case 249:case 290:return e.forEachChild(n,t)}}(t)},e.forEachYieldExpression=function(t,r){return function t(n){switch(n.kind){case 221:r(n);var i=n.expression;return void(i&&t(i));case 258:case 256:case 259:case 257:return;default:if(e.isFunctionLike(n)){if(n.name&&159===n.name.kind)return void t(n.name.expression)}else re(n)||e.forEachChild(n,t)}}(t)},e.getRestParameterElementType=function(t){return t&&179===t.kind?t.elementType:t&&174===t.kind?e.singleOrUndefined(t.typeArguments):void 0},e.getMembersOfDeclaration=function(e){switch(e.kind){case 256:case 254:case 223:case 255:case 178:return e.members;case 201:return e.properties}},e.isVariableLike=ne,e.isVariableLikeOrAccessor=function(t){return ne(t)||e.isAccessor(t)},e.isVariableDeclarationInVariableStatement=ie,e.isValidESSymbolDeclaration=function(t){return e.isVariableDeclaration(t)?G(t)&&e.isIdentifier(t.name)&&ie(t):e.isPropertyDeclaration(t)?wr(t)&&Dr(t):e.isPropertySignature(t)&&wr(t)},e.introducesArgumentsExoticObject=function(e){switch(e.kind){case 166:case 165:case 167:case 168:case 169:case 253:case 209:return!0}return!1},e.unwrapInnermostStatementOfLabel=function(e,t){for(;;){if(t&&t(e),247!==e.statement.kind)return e.statement;e=e.statement}},e.isFunctionBlock=function(t){return t&&232===t.kind&&e.isFunctionLike(t.parent)},e.isObjectLiteralMethod=function(e){return e&&166===e.kind&&201===e.parent.kind},e.isObjectLiteralOrClassExpressionMethod=function(e){return 166===e.kind&&(201===e.parent.kind||223===e.parent.kind)},e.isIdentifierTypePredicate=function(e){return e&&1===e.kind},e.isThisTypePredicate=function(e){return e&&0===e.kind},e.getPropertyAssignment=ae,e.getPropertyArrayElementValue=function(t,r,n){return e.firstDefined(ae(t,r),(function(t){return e.isArrayLiteralExpression(t.initializer)?e.find(t.initializer.elements,(function(t){return e.isStringLiteral(t)&&t.text===n})):void 0}))},e.getTsConfigObjectLiteralExpression=oe,e.getTsConfigPropArrayElementValue=function(t,r,n){return e.firstDefined(se(t,r),(function(t){return e.isArrayLiteralExpression(t.initializer)?e.find(t.initializer.elements,(function(t){return e.isStringLiteral(t)&&t.text===n})):void 0}))},e.getTsConfigPropArray=se,e.getContainingFunction=function(t){return e.findAncestor(t.parent,e.isFunctionLike)},e.getContainingFunctionDeclaration=ce,e.getContainingClass=le,e.getContainingStruct=function(t){return e.findAncestor(t.parent,e.isStruct)},e.getThisContainer=ue,e.isInTopLevelContext=function(t){e.isIdentifier(t)&&(e.isClassDeclaration(t.parent)||e.isFunctionDeclaration(t.parent))&&t.parent.name===t&&(t=t.parent);var r=ue(t,!0);return e.isSourceFile(r)},e.getNewTargetContainer=function(e){var t=ue(e,!1);if(t)switch(t.kind){case 167:case 253:case 209:return t}},e.getSuperContainer=function(t,r){for(;;){if(!(t=t.parent))return t;switch(t.kind){case 159:t=t.parent;break;case 253:case 209:case 210:if(!r)continue;case 164:case 163:case 166:case 165:case 167:case 168:case 169:return t;case 162:161===t.parent.kind&&e.isClassElement(t.parent.parent)?t=t.parent.parent:e.isClassElement(t.parent)&&(t=t.parent)}}},e.getImmediatelyInvokedFunctionExpression=function(e){if(209===e.kind||210===e.kind){for(var t=e,r=e.parent;208===r.kind;)t=r,r=r.parent;if(204===r.kind&&r.expression===t)return r}},e.isSuperOrSuperProperty=function(e){return 106===e.kind||de(e)},e.isSuperProperty=de,e.isThisProperty=function(e){var t=e.kind;return(202===t||203===t)&&108===e.expression.kind},e.isThisInitializedDeclaration=function(t){var r;return!!t&&e.isVariableDeclaration(t)&&108===(null===(r=t.initializer)||void 0===r?void 0:r.kind)},e.getEntityNameFromTypeNode=function(e){switch(e.kind){case 174:return e.typeName;case 225:return qr(e.expression)?e.expression:void 0;case 78:case 158:return e}},e.getInvokedExpression=pe,e.nodeCanBeDecorated=fe,e.nodeIsDecorated=me,e.nodeOrChildIsDecorated=ge,e.childIsDecorated=_e,e.isJSXTagName=he,e.isExpressionNode=ye,e.isInExpressionContext=ve,e.isPartOfTypeQuery=be,e.isExternalModuleImportEqualsDeclaration=ke,e.getExternalModuleImportEqualsDeclarationExpression=function(t){return e.Debug.assert(ke(t)),t.moduleReference.expression},e.getExternalModuleRequireArgument=function(e){return De(e,!0)&&sn(e.initializer).arguments[0]},e.isInternalModuleImportEqualsDeclaration=function(e){return 263===e.kind&&275!==e.moduleReference.kind},e.isSourceFileJS=xe,e.isSourceFileNotJS=function(e){return!Ee(e)},e.isInJSFile=Ee,e.isInJsonFile=function(e){return!!e&&!!(33554432&e.flags)},e.isSourceFileNotJson=function(e){return!K(e)},e.isInJSDoc=function(e){return!!e&&!!(4194304&e.flags)},e.isJSDocIndexSignature=function(t){return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&"Object"===t.typeName.escapedText&&t.typeArguments&&2===t.typeArguments.length&&(148===t.typeArguments[0].kind||145===t.typeArguments[0].kind)},e.isInETSFile=function(e){return!!e&&8===l(e).scriptKind},e.isInBuildOrPageTransitionContext=function(t,r){var n,i,a,o;if(!t)return!1;var s=null===(i=null===(n=r.ets)||void 0===n?void 0:n.render)||void 0===i?void 0:i.method,c=null===(o=null===(a=r.ets)||void 0===a?void 0:a.render)||void 0===o?void 0:o.decorator;if(!s&&!c)return!1;for(var l=ce(t),u=function(){if(s&&e.isMethodDeclaration(l)&&function(t){var r=le(t);return!!r&&e.isStruct(r)}(l)){var t=B(l.name).toString();if(s.some((function(e){return e===t})))return{value:!0}}if(c&&(e.isMethodDeclaration(l)||e.isFunctionDeclaration(l))&&l.decorators&&l.decorators.some((function(t){return e.isIdentifier(t.expression)&&B(t.expression).toString()===c})))return{value:!0};l=ce(l)};l;){var d=u();if("object"==typeof d)return d.value}return!1},e.isRequireCall=Se,e.isRequireVariableDeclaration=De,e.isRequireVariableStatement=function(t,r){return void 0===r&&(r=!0),e.isVariableStatement(t)&&t.declarationList.declarations.length>0&&e.every(t.declarationList.declarations,(function(e){return De(e,r)}))},e.isSingleOrDoubleQuote=function(e){return 39===e||34===e},e.isStringDoubleQuoted=function(e,t){return 34===E(t,e).charCodeAt(0)},e.isAssignmentDeclaration=we,e.getEffectiveInitializer=Te,e.getDeclaredExpandoInitializer=function(e){var t=Te(e);return t&&Ce(t,Vr(e.name))},e.getAssignedExpandoInitializer=function(t){if(t&&t.parent&&e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind){var r=Vr(t.parent.left);return Ce(t.parent.right,r)||function(t,r,n){var i=e.isBinaryExpression(r)&&(56===r.operatorToken.kind||60===r.operatorToken.kind)&&Ce(r.right,n);if(i&&Ae(t,r.left))return i}(t.parent.left,t.parent.right,r)}if(t&&e.isCallExpression(t)&&Re(t)){var n=function(t,r){return e.forEach(t.properties,(function(t){return e.isPropertyAssignment(t)&&e.isIdentifier(t.name)&&"value"===t.name.escapedText&&t.initializer&&Ce(t.initializer,r)}))}(t.arguments[2],"prototype"===t.arguments[1].text);if(n)return n}},e.getExpandoInitializer=Ce,e.isDefaultedExpandoInitializer=function(t){var r=e.isVariableDeclaration(t.parent)?t.parent.name:e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind?t.parent.left:void 0;return r&&Ce(t.right,Vr(r))&&qr(r)&&Ae(r,t.left)},e.getNameOfExpando=function(t){if(e.isBinaryExpression(t.parent)){var r=56!==t.parent.operatorToken.kind&&60!==t.parent.operatorToken.kind||!e.isBinaryExpression(t.parent.parent)?t.parent:t.parent.parent;if(62===r.operatorToken.kind&&e.isIdentifier(r.left))return r.left}else if(e.isVariableDeclaration(t.parent))return t.parent.name},e.isSameEntityName=Ae,e.getRightMostAssignedExpression=Ne,e.isExportsIdentifier=Pe,e.isModuleIdentifier=Ie,e.isModuleExportsAccessExpression=Fe,e.getAssignmentDeclarationKind=Oe,e.isBindableObjectDefinePropertyCall=Re,e.isLiteralLikeAccess=Me,e.isLiteralLikeElementAccess=Le,e.isBindableStaticAccessExpression=je,e.isBindableStaticElementAccessExpression=Be,e.isBindableStaticNameExpression=ze,e.getNameOrArgument=Ue,e.getElementOrPropertyAccessArgumentExpressionOrName=qe,e.getElementOrPropertyAccessName=Je,e.getAssignmentDeclarationPropertyAccessKind=Ve,e.getInitializerOfBinaryExpression=He,e.isPrototypePropertyAssignment=function(t){return e.isBinaryExpression(t)&&3===Oe(t)},e.isSpecialPropertyDeclaration=function(t){return Ee(t)&&t.parent&&235===t.parent.kind&&(!e.isElementAccessExpression(t)||Le(t))&&!!e.getJSDocTypeTag(t.parent)},e.setValueDeclaration=function(e,t){var r=e.valueDeclaration;(!r||(!(8388608&t.flags)||8388608&r.flags)&&we(r)&&!we(t)||r.kind!==t.kind&&N(r))&&(e.valueDeclaration=t)},e.isFunctionSymbol=function(t){if(!t||!t.valueDeclaration)return!1;var r=t.valueDeclaration;return 253===r.kind||e.isVariableDeclaration(r)&&r.initializer&&e.isFunctionLike(r.initializer)},e.importFromModuleSpecifier=function(t){return Ke(t)||e.Debug.failBadSyntaxKind(t.parent)},e.tryGetImportFromModuleSpecifier=Ke,e.getExternalModuleName=We,e.getNamespaceDeclarationNode=function(t){switch(t.kind){case 264:return t.importClause&&e.tryCast(t.importClause.namedBindings,e.isNamespaceImport);case 263:return t;case 270:return t.exportClause&&e.tryCast(t.exportClause,e.isNamespaceExport);default:return e.Debug.assertNever(t)}},e.isDefaultImport=function(e){return 264===e.kind&&!!e.importClause&&!!e.importClause.name},e.forEachImportClauseDeclaration=function(t,r){var n;if(t.name&&(n=r(t)))return n;if(t.namedBindings&&(n=e.isNamespaceImport(t.namedBindings)?r(t.namedBindings):e.forEach(t.namedBindings.elements,r)))return n},e.hasQuestionToken=function(e){if(e)switch(e.kind){case 161:case 166:case 165:case 292:case 291:case 164:case 163:return void 0!==e.questionToken}return!1},e.isJSDocConstructSignature=function(t){var r=e.isJSDocFunctionType(t)?e.firstOrUndefined(t.parameters):void 0,n=e.tryCast(r&&r.name,e.isIdentifier);return!!n&&"new"===n.escapedText},e.isJSDocTypeAlias=Ge,e.isTypeAlias=function(t){return Ge(t)||e.isTypeAliasDeclaration(t)},e.getSingleInitializerOfVariableStatementOrPropertyDeclaration=Ye,e.getSingleVariableOfVariableStatement=Xe,e.getJSDocCommentsAndTags=function(t,r){var n;ne(t)&&e.hasInitializer(t)&&e.hasJSDocNodes(t.initializer)&&(n=e.append(n,e.last(t.initializer.jsDoc)));for(var i=t;i&&i.parent;){if(e.hasJSDocNodes(i)&&(n=e.append(n,e.last(i.jsDoc))),161===i.kind){n=e.addRange(n,(r?e.getJSDocParameterTagsNoCache:e.getJSDocParameterTags)(i));break}if(160===i.kind){n=e.addRange(n,(r?e.getJSDocTypeParameterTagsNoCache:e.getJSDocTypeParameterTags)(i));break}i=Ze(i)}return n||e.emptyArray},e.getNextJSDocCommentLocation=Ze,e.getParameterSymbolFromJSDoc=function(t){if(t.symbol)return t.symbol;if(e.isIdentifier(t.name)){var r=t.name.escapedText,n=et(t);if(n){var i=e.find(n.parameters,(function(e){return 78===e.name.kind&&e.name.escapedText===r}));return i&&i.symbol}}},e.getHostSignatureFromJSDoc=et,e.getEffectiveJSDocHost=tt,e.getJSDocHost=rt,e.getJSDocRoot=nt,e.getTypeParameterFromJsDoc=function(t){var r=t.name.escapedText,n=t.parent.parent.parent.typeParameters;return n&&e.find(n,(function(e){return e.name.escapedText===r}))},e.hasRestParameter=function(t){var r=e.lastOrUndefined(t.parameters);return!!r&&it(r)},e.isRestParameter=it,e.hasTypeArguments=function(e){return!!e.typeArguments},function(e){e[e.None=0]="None",e[e.Definite=1]="Definite",e[e.Compound=2]="Compound"}(e.AssignmentKind||(e.AssignmentKind={})),e.getAssignmentTargetKind=at,e.isAssignmentTarget=function(e){return 0!==at(e)},e.isNodeWithPossibleHoistedDeclaration=function(e){switch(e.kind){case 232:case 234:case 245:case 236:case 246:case 261:case 287:case 288:case 247:case 239:case 240:case 241:case 237:case 238:case 249:case 290:return!0}return!1},e.isValueSignatureDeclaration=function(t){return e.isFunctionExpression(t)||e.isArrowFunction(t)||e.isMethodOrAccessor(t)||e.isFunctionDeclaration(t)||e.isConstructorDeclaration(t)},e.walkUpParenthesizedTypes=function(e){return ot(e,187)},e.walkUpParenthesizedExpressions=st,e.walkUpParenthesizedTypesAndGetParentAndChild=function(e){for(var t;e&&187===e.kind;)t=e,e=e.parent;return[t,e]},e.skipParentheses=ct,e.isDeleteTarget=function(e){return(202===e.kind||203===e.kind)&&((e=st(e.parent))&&212===e.kind)},e.isNodeDescendantOf=function(e,t){for(;e;){if(e===t)return!0;e=e.parent}return!1},e.isDeclarationName=function(t){return!e.isSourceFile(t)&&!e.isBindingPattern(t)&&e.isDeclaration(t.parent)&&t.parent.name===t},e.getDeclarationFromName=function(t){var r=t.parent;switch(t.kind){case 10:case 14:case 8:if(e.isComputedPropertyName(r))return r.parent;case 78:if(e.isDeclaration(r))return r.name===t?r:void 0;if(e.isQualifiedName(r)){var n=r.parent;return e.isJSDocParameterTag(n)&&n.name===r?n:void 0}var i=r.parent;return e.isBinaryExpression(i)&&0!==Oe(i)&&(i.left.symbol||i.symbol)&&e.getNameOfDeclaration(i)===t?i:void 0;case 79:return e.isDeclaration(r)&&r.name===t?r:void 0;default:return}},e.isLiteralComputedPropertyDeclarationName=function(t){return xt(t)&&159===t.parent.kind&&e.isDeclaration(t.parent.parent)},e.isIdentifierName=function(e){var t=e.parent;switch(t.kind){case 164:case 163:case 166:case 165:case 168:case 169:case 294:case 291:case 202:return t.name===e;case 158:return t.right===e;case 199:case 268:return t.propertyName===e;case 273:case 283:return!0}return!1},e.isAliasSymbolDeclaration=function(t){return 263===t.kind||262===t.kind||265===t.kind&&!!t.name||266===t.kind||272===t.kind||268===t.kind||273===t.kind||269===t.kind&&ut(t)||e.isBinaryExpression(t)&&2===Oe(t)&&ut(t)||e.isPropertyAccessExpression(t)&&e.isBinaryExpression(t.parent)&&t.parent.left===t&&62===t.parent.operatorToken.kind&<(t.parent.right)||292===t.kind||291===t.kind&<(t.initializer)},e.getAliasDeclarationFromName=function e(t){switch(t.parent.kind){case 265:case 268:case 266:case 273:case 269:case 263:return t.parent;case 158:do{t=t.parent}while(158===t.parent.kind);return e(t)}},e.isAliasableExpression=lt,e.exportAssignmentIsAlias=ut,e.getExportAssignmentExpression=dt,e.getPropertyAssignmentAliasLikeExpression=function(e){return 292===e.kind?e.name:291===e.kind?e.initializer:e.parent.right},e.getEffectiveBaseTypeNode=pt,e.getClassExtendsHeritageElement=ft,e.getEffectiveImplementsTypeNodes=mt,e.getAllSuperTypeNodes=function(t){return e.isInterfaceDeclaration(t)?gt(t)||e.emptyArray:e.isClassLike(t)&&e.concatenate(e.singleElementArray(pt(t)),mt(t))||e.emptyArray},e.getInterfaceBaseTypeNodes=gt,e.getHeritageClause=_t,e.getAncestor=ht,e.getRootEtsComponent=yt,e.isKeyword=vt,e.isContextualKeyword=bt,e.isNonContextualKeyword=kt,e.isFutureReservedKeyword=function(e){return 117<=e&&e<=125},e.isStringANonContextualKeyword=function(t){var r=e.stringToToken(t);return void 0!==r&&kt(r)},e.isStringAKeyword=function(t){var r=e.stringToToken(t);return void 0!==r&&vt(r)},e.isIdentifierANonContextualKeyword=function(e){var t=e.originalKeywordKind;return!!t&&!bt(t)},e.isTrivia=function(e){return 2<=e&&e<=7},function(e){e[e.Normal=0]="Normal",e[e.Generator=1]="Generator",e[e.Async=2]="Async",e[e.Invalid=4]="Invalid",e[e.AsyncGenerator=3]="AsyncGenerator"}(e.FunctionFlags||(e.FunctionFlags={})),e.getFunctionFlags=function(e){if(!e)return 4;var t=0;switch(e.kind){case 253:case 209:case 166:e.asteriskToken&&(t|=1);case 210:Sr(e,256)&&(t|=2)}return e.body||(t|=4),t},e.isAsyncFunction=function(e){switch(e.kind){case 253:case 209:case 210:case 166:return void 0!==e.body&&void 0===e.asteriskToken&&Sr(e,256)}return!1},e.isStringOrNumericLiteralLike=xt,e.isSignedNumericLiteral=Et,e.hasDynamicName=St,e.isDynamicName=Dt,e.isWellKnownSymbolSyntactically=wt,e.getPropertyNameForPropertyNameNode=Tt,e.isPropertyNameLiteral=Ct,e.getTextOfIdentifierOrLiteral=At,e.getEscapedTextOfIdentifierOrLiteral=function(t){return e.isIdentifierOrPrivateIdentifier(t)?t.escapedText:e.escapeLeadingUnderscores(t.text)},e.getPropertyNameForUniqueESSymbol=function(t){return"__@"+e.getSymbolId(t)+"@"+t.escapedName},e.getPropertyNameForKnownSymbolName=Nt,e.getSymbolNameForPrivateIdentifier=function(t,r){return"__#"+e.getSymbolId(t)+"@"+r},e.isKnownSymbol=function(t){return e.startsWith(t.escapedName,"__@")},e.isESSymbolIdentifier=Pt,e.isPushOrUnshiftIdentifier=function(e){return"push"===e.escapedText||"unshift"===e.escapedText},e.isParameterDeclaration=function(e){return 161===It(e).kind},e.getRootDeclaration=It,e.nodeStartsNewLexicalEnvironment=function(e){var t=e.kind;return 167===t||209===t||253===t||210===t||166===t||168===t||169===t||259===t||300===t},e.nodeIsSynthesized=Ft,e.getOriginalSourceFile=function(t){return e.getParseTreeNode(t,e.isSourceFile)||t},function(e){e[e.Left=0]="Left",e[e.Right=1]="Right"}(e.Associativity||(e.Associativity={})),e.getExpressionAssociativity=function(e){var t=Rt(e),r=205===e.kind&&void 0!==e.arguments;return Ot(e.kind,t,r)},e.getOperatorAssociativity=Ot,e.getExpressionPrecedence=function(e){var t=Rt(e),r=205===e.kind&&void 0!==e.arguments;return Mt(e.kind,t,r)},e.getOperator=Rt,function(e){e[e.Comma=0]="Comma",e[e.Spread=1]="Spread",e[e.Yield=2]="Yield",e[e.Assignment=3]="Assignment",e[e.Conditional=4]="Conditional",e[e.Coalesce=4]="Coalesce",e[e.LogicalOR=5]="LogicalOR",e[e.LogicalAND=6]="LogicalAND",e[e.BitwiseOR=7]="BitwiseOR",e[e.BitwiseXOR=8]="BitwiseXOR",e[e.BitwiseAND=9]="BitwiseAND",e[e.Equality=10]="Equality",e[e.Relational=11]="Relational",e[e.Shift=12]="Shift",e[e.Additive=13]="Additive",e[e.Multiplicative=14]="Multiplicative",e[e.Exponentiation=15]="Exponentiation",e[e.Unary=16]="Unary",e[e.Update=17]="Update",e[e.LeftHandSide=18]="LeftHandSide",e[e.Member=19]="Member",e[e.Primary=20]="Primary",e[e.Highest=20]="Highest",e[e.Lowest=0]="Lowest",e[e.Invalid=-1]="Invalid"}(e.OperatorPrecedence||(e.OperatorPrecedence={})),e.getOperatorPrecedence=Mt,e.getBinaryOperatorPrecedence=Lt,e.getSemanticJsxChildren=function(t){return e.filter(t,(function(e){switch(e.kind){case 286:return!!e.expression;case 11:return!e.containsOnlyTriviaWhiteSpaces;default:return!0}}))},e.createDiagnosticCollection=function(){var t=[],r=[],n=new e.Map,i=!1;return{add:function(a){var o;a.file?(o=n.get(a.file.fileName))||(o=[],n.set(a.file.fileName,o),e.insertSorted(r,a.file.fileName,e.compareStringsCaseSensitive)):(i&&(i=!1,t=t.slice()),o=t);e.insertSorted(o,a,xn)},lookup:function(r){var i;i=r.file?n.get(r.file.fileName):t;if(!i)return;var a=e.binarySearch(i,r,e.identity,En);if(a>=0)return i[a];return},getGlobalDiagnostics:function(){return i=!0,t},getDiagnostics:function(i){if(i)return n.get(i)||[];var a=e.flatMapToMutable(r,(function(e){return n.get(e)}));if(!t.length)return a;return a.unshift.apply(a,t),a}}};var jt=/\$\{/g;e.hasInvalidEscape=function(t){return t&&!!(e.isNoSubstitutionTemplateLiteral(t)?t.templateFlags:t.head.templateFlags||e.some(t.templateSpans,(function(e){return!!e.literal.templateFlags})))};var Bt=/[\\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,zt=/[\\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,Ut=/[\\`]/g,qt=new e.Map(e.getEntries({"\t":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","…":"\\u0085"}));function Jt(e){return"\\u"+("0000"+e.toString(16).toUpperCase()).slice(-4)}function Vt(e,t,r){if(0===e.charCodeAt(0)){var n=r.charCodeAt(t+e.length);return n>=48&&n<=57?"\\x00":"\\0"}return qt.get(e)||Jt(e.charCodeAt(0))}function Ht(e,t){var r=96===t?Ut:39===t?zt:Bt;return e.replace(r,Vt)}e.escapeString=Ht;var Kt=/[^\u0000-\u007F]/g;function Wt(e,t){return e=Ht(e,t),Kt.test(e)?e.replace(Kt,(function(e){return Jt(e.charCodeAt(0))})):e}e.escapeNonAsciiString=Wt;var Gt=/[\"\u0000-\u001f\u2028\u2029\u0085]/g,$t=/[\'\u0000-\u001f\u2028\u2029\u0085]/g,Yt=new e.Map(e.getEntries({'"':""","'":"'"}));function Xt(e){return 0===e.charCodeAt(0)?"�":Yt.get(e)||"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"}function Qt(e,t){var r=39===t?$t:Gt;return e.replace(r,Xt)}e.escapeJsxAttributeString=Qt,e.stripQuotes=function(e){var t,r=e.length;return r>=2&&e.charCodeAt(0)===e.charCodeAt(r-1)&&(39===(t=e.charCodeAt(0))||34===t||96===t)?e.substring(1,r-1):e},e.isIntrinsicJsxName=function(t){var r=t.charCodeAt(0);return r>=97&&r<=122||e.stringContains(t,"-")||e.stringContains(t,":")};var Zt=[""," "];function er(e){for(var t=Zt[1],r=Zt.length;r<=e;r++)Zt.push(Zt[r-1]+t);return Zt[e]}function tr(){return Zt[1].length}function rr(e){return!!e.useCaseSensitiveFileNames&&e.useCaseSensitiveFileNames()}function nr(e,t,r){return t.moduleName||ar(e,t.fileName,r&&r.fileName)}function ir(t,r){return t.getCanonicalFileName(e.getNormalizedAbsolutePath(r,t.getCurrentDirectory()))}function ar(t,r,n){var i=function(e){return t.getCanonicalFileName(e)},a=e.toPath(n?e.getDirectoryPath(n):t.getCommonSourceDirectory(),t.getCurrentDirectory(),i),o=e.getNormalizedAbsolutePath(r,t.getCurrentDirectory()),s=oi(e.getRelativePathToDirectoryOrUrl(a,o,a,i,!1));return n?e.ensurePathIsNonModuleName(s):s}function or(t,r,n,i,a){var o=r.declarationDir||r.outDir,s=o?ur(t,o,n,i,a):t;return oi(s)+(e.fileExtensionIs(s,".ets")?".d.ets":".d.ts")}function sr(e){return e.outFile||e.out}function cr(e,t,r){return!(t.getCompilerOptions().noEmitForJsFiles&&xe(e))&&!e.isDeclarationFile&&(!t.isSourceFileFromExternalLibrary(e)||W(t.getCompilerOptions().emitNodeModulesFiles))&&!(K(e)&&t.getResolvedProjectReferenceToRedirect(e.fileName))&&(r||!t.isSourceOfProjectReferenceRedirect(e.fileName))}function lr(e,t,r){return ur(e,r,t.getCurrentDirectory(),t.getCommonSourceDirectory(),(function(e){return t.getCanonicalFileName(e)}))}function ur(t,r,n,i,a){var o=e.getNormalizedAbsolutePath(t,n);return o=0===a(o).indexOf(a(i))?o.substring(i.length):o,e.combinePaths(r,o)}function dr(t,r,n){t.length>e.getRootLength(t)&&!n(t)&&(dr(e.getDirectoryPath(t),r,n),r(t))}function pr(t,r){return e.computeLineOfPosition(t,r)}function fr(e){if(e&&e.parameters.length>0){var t=2===e.parameters.length&&mr(e.parameters[0]);return e.parameters[t?1:0]}}function mr(e){return gr(e.name)}function gr(e){return!!e&&78===e.kind&&_r(e)}function _r(e){return 108===e.originalKeywordKind}function hr(t){if(Ee(t)||!e.isFunctionDeclaration(t)){var r=t.type;return r||!Ee(t)?r:e.isJSDocPropertyLikeTag(t)?t.typeExpression&&t.typeExpression.type:e.getJSDocType(t)}}function yr(e,t,r,n){vr(e,t,r.pos,n)}function vr(e,t,r,n){n&&n.length&&r!==n[0].pos&&pr(e,r)!==pr(e,n[0].pos)&&t.writeLine()}function br(e,t,r,n,i,a,o,s){if(n&&n.length>0){i&&r.writeSpace(" ");for(var c=!1,l=0,u=n;l<u.length;l++){var d=u[l];c&&(r.writeSpace(" "),c=!1),s(e,t,r,d.pos,d.end,o),d.hasTrailingNewLine?r.writeLine():c=!0}c&&a&&r.writeSpace(" ")}}function kr(e,t,r,n,i,a){var o=Math.min(t,a-1),s=e.substring(i,o).replace(/^\s+|\s+$/g,"");s?(r.writeComment(s),o!==t&&r.writeLine()):r.rawWrite(n)}function xr(t,r,n){for(var i=0;r<n&&e.isWhiteSpaceSingleLine(t.charCodeAt(r));r++)9===t.charCodeAt(r)?i+=tr()-i%tr():i++;return i}function Er(e,t){return!!Tr(e,t)}function Sr(e,t){return!!Cr(e,t)}function Dr(e){return Sr(e,32)}function wr(e){return Er(e,64)}function Tr(e,t){return Nr(e)&t}function Cr(e,t){return Pr(e)&t}function Ar(e,t,r){return e.kind>=0&&e.kind<=157?0:(536870912&e.modifierFlagsCache||(e.modifierFlagsCache=536870912|Fr(e)),!t||4096&e.modifierFlagsCache||!r&&!Ee(e)||!e.parent||(e.modifierFlagsCache|=4096|Ir(e)),-536875009&e.modifierFlagsCache)}function Nr(e){return Ar(e,!0)}function Pr(e){return Ar(e,!1)}function Ir(t){var r=0;return t.parent&&!e.isParameter(t)&&(Ee(t)&&(e.getJSDocPublicTagNoCache(t)&&(r|=4),e.getJSDocPrivateTagNoCache(t)&&(r|=8),e.getJSDocProtectedTagNoCache(t)&&(r|=16),e.getJSDocReadonlyTagNoCache(t)&&(r|=64)),e.getJSDocDeprecatedTagNoCache(t)&&(r|=8192)),r}function Fr(e){var t=Or(e.modifiers);return(4&e.flags||78===e.kind&&e.isInJSDocNamespace)&&(t|=1),t}function Or(e){var t=0;if(e)for(var r=0,n=e;r<n.length;r++){t|=Rr(n[r].kind)}return t}function Rr(e){switch(e){case 124:return 32;case 123:return 4;case 122:return 16;case 121:return 8;case 126:return 128;case 93:return 1;case 134:return 2;case 85:return 2048;case 88:return 512;case 130:return 256;case 143:return 64}return 0}function Mr(e){return 74===e||75===e||76===e}function Lr(e){return e>=62&&e<=77}function jr(e){var t=Br(e);return t&&!t.isImplements?t.class:void 0}function Br(t){return e.isExpressionWithTypeArguments(t)&&e.isHeritageClause(t.parent)&&e.isClassLike(t.parent.parent)?{class:t.parent.parent,isImplements:117===t.parent.token}:void 0}function zr(t,r){return e.isBinaryExpression(t)&&(r?62===t.operatorToken.kind:Lr(t.operatorToken.kind))&&e.isLeftHandSideExpression(t.left)}function Ur(e){return void 0!==jr(e)}function qr(e){return 78===e.kind||Jr(e)}function Jr(t){return e.isPropertyAccessExpression(t)&&e.isIdentifier(t.name)&&qr(t.expression)}function Vr(e){return je(e)&&"prototype"===Je(e)}e.getIndentString=er,e.getIndentSize=tr,e.getTrailingSemicolonDeferringWriter=function(e){var t=!1;function r(){t&&(e.writeTrailingSemicolon(";"),t=!1)}return a(a({},e),{writeTrailingSemicolon:function(){t=!0},writeLiteral:function(t){r(),e.writeLiteral(t)},writeStringLiteral:function(t){r(),e.writeStringLiteral(t)},writeSymbol:function(t,n){r(),e.writeSymbol(t,n)},writePunctuation:function(t){r(),e.writePunctuation(t)},writeKeyword:function(t){r(),e.writeKeyword(t)},writeOperator:function(t){r(),e.writeOperator(t)},writeParameter:function(t){r(),e.writeParameter(t)},writeSpace:function(t){r(),e.writeSpace(t)},writeProperty:function(t){r(),e.writeProperty(t)},writeComment:function(t){r(),e.writeComment(t)},writeLine:function(){r(),e.writeLine()},increaseIndent:function(){r(),e.increaseIndent()},decreaseIndent:function(){r(),e.decreaseIndent()}})},e.hostUsesCaseSensitiveFileNames=rr,e.hostGetCanonicalFileName=function(t){return e.createGetCanonicalFileName(rr(t))},e.getResolvedExternalModuleName=nr,e.getExternalModuleNameFromDeclaration=function(t,r,n){var i=r.getExternalModuleFileFromDeclaration(n);if(i&&!i.isDeclarationFile){var a=We(n);if(!a||!e.isStringLiteralLike(a)||e.pathIsRelative(a.text)||-1!==ir(t,i.path).indexOf(ir(t,e.ensureTrailingDirectorySeparator(t.getCommonSourceDirectory()))))return nr(t,i)}},e.getExternalModuleNameFromPath=ar,e.getOwnEmitOutputFilePath=function(e,t,r){var n=t.getCompilerOptions();return(n.outDir?oi(lr(e,t,n.outDir)):oi(e))+r},e.getDeclarationEmitOutputFilePath=function(e,t){return or(e,t.getCompilerOptions(),t.getCurrentDirectory(),t.getCommonSourceDirectory(),(function(e){return t.getCanonicalFileName(e)}))},e.getDeclarationEmitOutputFilePathWorker=or,e.outFile=sr,e.getPathsBasePath=function(t,r){var n,i;if(t.paths)return null!==(n=t.baseUrl)&&void 0!==n?n:e.Debug.checkDefined(t.pathsBasePath||(null===(i=r.getCurrentDirectory)||void 0===i?void 0:i.call(r)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")},e.getSourceFilesToEmit=function(t,r,n){var i=t.getCompilerOptions();if(sr(i)){var a=wn(i),o=i.emitDeclarationOnly||a===e.ModuleKind.AMD||a===e.ModuleKind.System;return e.filter(t.getSourceFiles(),(function(r){return(o||!e.isExternalModule(r))&&cr(r,t,n)}))}var s=void 0===r?t.getSourceFiles():[r];return e.filter(s,(function(e){return cr(e,t,n)}))},e.sourceFileMayBeEmitted=cr,e.getSourceFilePathInNewDir=lr,e.getSourceFilePathInNewDirWorker=ur,e.writeFile=function(t,r,n,i,a,o){t.writeFile(n,i,a,(function(t){r.add(bn(e.Diagnostics.Could_not_write_file_0_Colon_1,n,t))}),o)},e.writeFileEnsuringDirectories=function(t,r,n,i,a,o){try{i(t,r,n)}catch(s){dr(e.getDirectoryPath(e.normalizePath(t)),a,o),i(t,r,n)}},e.getLineOfLocalPosition=function(t,r){var n=e.getLineStarts(t);return e.computeLineOfPosition(n,r)},e.getLineOfLocalPositionFromLineMap=pr,e.getFirstConstructorWithBody=function(t){return e.find(t.members,(function(t){return e.isConstructorDeclaration(t)&&h(t.body)}))},e.getSetAccessorValueParameter=fr,e.getSetAccessorTypeAnnotationNode=function(e){var t=fr(e);return t&&t.type},e.getThisParameter=function(t){if(t.parameters.length&&!e.isJSDocSignature(t)){var r=t.parameters[0];if(mr(r))return r}},e.parameterIsThisKeyword=mr,e.isThisIdentifier=gr,e.identifierIsThisKeyword=_r,e.getAllAccessorDeclarations=function(t,r){var n,i,a,o;return St(r)?(n=r,168===r.kind?a=r:169===r.kind?o=r:e.Debug.fail("Accessor has wrong kind")):e.forEach(t,(function(t){e.isAccessor(t)&&Sr(t,32)===Sr(r,32)&&(Tt(t.name)===Tt(r.name)&&(n?i||(i=t):n=t,168!==t.kind||a||(a=t),169!==t.kind||o||(o=t)))})),{firstAccessor:n,secondAccessor:i,getAccessor:a,setAccessor:o}},e.getEffectiveTypeAnnotationNode=hr,e.getTypeAnnotationNode=function(e){return e.type},e.getEffectiveReturnTypeNode=function(t){return e.isJSDocSignature(t)?t.type&&t.type.typeExpression&&t.type.typeExpression.type:t.type||(Ee(t)?e.getJSDocReturnType(t):void 0)},e.getJSDocTypeParameterDeclarations=function(t){return e.flatMap(e.getJSDocTags(t),(function(t){return function(t){return e.isJSDocTemplateTag(t)&&!(314===t.parent.kind&&t.parent.tags.some(Ge))}(t)?t.typeParameters:void 0}))},e.getEffectiveSetAccessorTypeAnnotationNode=function(e){var t=fr(e);return t&&hr(t)},e.emitNewLineBeforeLeadingComments=yr,e.emitNewLineBeforeLeadingCommentsOfPosition=vr,e.emitNewLineBeforeLeadingCommentOfPosition=function(e,t,r,n){r!==n&&pr(e,r)!==pr(e,n)&&t.writeLine()},e.emitComments=br,e.emitDetachedComments=function(t,r,n,i,a,o,s){var c,l;if(s?0===a.pos&&(c=e.filter(e.getLeadingCommentRanges(t,a.pos),(function(e){return k(t,e.pos)}))):c=e.getLeadingCommentRanges(t,a.pos),c){for(var u=[],d=void 0,p=0,f=c;p<f.length;p++){var m=f[p];if(d){var g=pr(r,d.end);if(pr(r,m.pos)>=g+2)break}u.push(m),d=m}if(u.length){g=pr(r,e.last(u).end);pr(r,e.skipTrivia(t,a.pos))>=g+2&&(yr(r,n,a,c),br(t,r,n,u,!1,!0,o,i),l={nodePos:a.pos,detachedCommentEndPos:e.last(u).end})}}return l},e.writeCommentRange=function(t,r,n,i,a,o){if(42===t.charCodeAt(i+1))for(var s=e.computeLineAndCharacterOfPosition(r,i),c=r.length,l=void 0,u=i,d=s.line;u<a;d++){var p=d+1===c?t.length+1:r[d+1];if(u!==i){void 0===l&&(l=xr(t,r[s.line],i));var f=n.getIndent()*tr()-l+xr(t,u,p);if(f>0){var m=f%tr(),g=er((f-m)/tr());for(n.rawWrite(g);m;)n.rawWrite(" "),m--}else n.rawWrite("")}kr(t,a,n,o,u,p),u=p}else n.writeComment(t.substring(i,a))},e.hasEffectiveModifiers=function(e){return 0!==Nr(e)},e.hasSyntacticModifiers=function(e){return 0!==Pr(e)},e.hasEffectiveModifier=Er,e.hasSyntacticModifier=Sr,e.hasStaticModifier=Dr,e.hasEffectiveReadonlyModifier=wr,e.getSelectedEffectiveModifierFlags=Tr,e.getSelectedSyntacticModifierFlags=Cr,e.getEffectiveDecorators=function(t,r){var n,i=null===(n=r.getCompilerOptions().ets)||void 0===n?void 0:n.emitDecorators;if(i){for(var a=[],o=0,s=t;o<s.length;o++){var c=s[o],l=c.expression;if(e.isIdentifier(l))for(var u=0,d=i;u<d.length;u++){if((g=d[u]).name===l.escapedText.toString()){a.push(c);break}}else if(e.isCallExpression(l)){var p=l.expression;if(e.isIdentifier(p))for(var f=0,m=i;f<m.length;f++){var g;if((g=m[f]).name===p.escapedText.toString()){g.emitParameters||(c=e.factory.updateDecorator(c,p)),a.push(c);break}}}}return a}},e.getEffectiveModifierFlags=Nr,e.getEffectiveModifierFlagsAlwaysIncludeJSDoc=function(e){return Ar(e,!0,!0)},e.getSyntacticModifierFlags=Pr,e.getEffectiveModifierFlagsNoCache=function(e){return Fr(e)|Ir(e)},e.getSyntacticModifierFlagsNoCache=Fr,e.modifiersToFlags=Or,e.modifierToFlag=Rr,e.isLogicalOperator=function(e){return 56===e||55===e||53===e},e.isLogicalOrCoalescingAssignmentOperator=Mr,e.isLogicalOrCoalescingAssignmentExpression=function(e){return Mr(e.operatorToken.kind)},e.isAssignmentOperator=Lr,e.tryGetClassExtendingExpressionWithTypeArguments=jr,e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments=Br,e.isAssignmentExpression=zr,e.isDestructuringAssignment=function(e){if(zr(e,!0)){var t=e.left.kind;return 201===t||200===t}return!1},e.isExpressionWithTypeArgumentsInClassExtendsClause=Ur,e.isEntityNameExpression=qr,e.getFirstIdentifier=function(e){switch(e.kind){case 78:return e;case 158:do{e=e.left}while(78!==e.kind);return e;case 202:do{e=e.expression}while(78!==e.kind);return e}},e.isDottedName=function e(t){return 78===t.kind||108===t.kind||106===t.kind||202===t.kind&&e(t.expression)||208===t.kind&&e(t.expression)},e.isPropertyAccessEntityNameExpression=Jr,e.tryGetPropertyAccessOrIdentifierToString=function t(r){if(e.isPropertyAccessExpression(r)){if(void 0!==(n=t(r.expression)))return n+"."+z(r.name)}else if(e.isElementAccessExpression(r)){var n;if(void 0!==(n=t(r.expression))&&e.isPropertyName(r.argumentExpression))return n+"."+Tt(r.argumentExpression)}else if(e.isIdentifier(r))return e.unescapeLeadingUnderscores(r.escapedText)},e.isPrototypeAccess=Vr,e.isRightSideOfQualifiedNameOrPropertyAccess=function(e){return 158===e.parent.kind&&e.parent.right===e||202===e.parent.kind&&e.parent.name===e},e.isEmptyObjectLiteral=function(e){return 201===e.kind&&0===e.properties.length},e.isEmptyArrayLiteral=function(e){return 200===e.kind&&0===e.elements.length},e.getLocalSymbolForExportDefault=function(t){if(function(t){return t&&e.length(t.declarations)>0&&Sr(t.declarations[0],512)}(t))for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];if(i.localSymbol)return i.localSymbol}},e.tryExtractTSExtension=function(t){return e.find(e.supportedTSExtensionsForExtractExtension,(function(r){return e.fileExtensionIs(t,r)}))};var Hr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function Kr(t){for(var r,n,i,a,o="",s=function(t){for(var r=[],n=t.length,i=0;i<n;i++){var a=t.charCodeAt(i);a<128?r.push(a):a<2048?(r.push(a>>6|192),r.push(63&a|128)):a<65536?(r.push(a>>12|224),r.push(a>>6&63|128),r.push(63&a|128)):a<131072?(r.push(a>>18|240),r.push(a>>12&63|128),r.push(a>>6&63|128),r.push(63&a|128)):e.Debug.assert(!1,"Unexpected code point")}return r}(t),c=0,l=s.length;c<l;)r=s[c]>>2,n=(3&s[c])<<4|s[c+1]>>4,i=(15&s[c+1])<<2|s[c+2]>>6,a=63&s[c+2],c+1>=l?i=a=64:c+2>=l&&(a=64),o+=Hr.charAt(r)+Hr.charAt(n)+Hr.charAt(i)+Hr.charAt(a),c+=3;return o}e.convertToBase64=Kr,e.base64encode=function(e,t){return e&&e.base64encode?e.base64encode(t):Kr(t)},e.base64decode=function(e,t){if(e&&e.base64decode)return e.base64decode(t);for(var r=t.length,n=[],i=0;i<r&&t.charCodeAt(i)!==Hr.charCodeAt(64);){var a=Hr.indexOf(t[i]),o=Hr.indexOf(t[i+1]),s=Hr.indexOf(t[i+2]),c=Hr.indexOf(t[i+3]),l=(63&a)<<2|o>>4&3,u=(15&o)<<4|s>>2&15,d=(3&s)<<6|63&c;0===u&&0!==s?n.push(l):0===d&&0!==c?n.push(l,u):n.push(l,u,d),i+=4}return function(e){for(var t="",r=0,n=e.length;r<n;){var i=e[r];if(i<128)t+=String.fromCharCode(i),r++;else if(192&~i)t+=String.fromCharCode(i),r++;else{for(var a=63&i,o=e[++r];128==(192&o);)a=a<<6|63&o,o=e[++r];t+=String.fromCharCode(a)}}return t}(n)},e.readJson=function(t,r){try{var n=r.readFile(t);if(!n)return{};var i=e.parseConfigFileTextToJson(t,n);return i.error?{}:i.config}catch(e){return{}}},e.directoryProbablyExists=function(e,t){return!t.directoryExists||t.directoryExists(e)};var Wr;function Gr(t,r){return void 0===r&&(r=t),e.Debug.assert(r>=t||-1===r),{pos:t,end:r}}function $r(e,t){return Gr(t,e.end)}function Yr(e){return e.decorators&&e.decorators.length>0?$r(e,e.decorators.end):e}function Xr(e,t,r){return Qr(Zr(e,r,!1),t.end,r)}function Qr(t,r,n){return 0===e.getLinesBetweenPositions(n,t,r)}function Zr(t,r,n){return ui(t.pos)?-1:e.skipTrivia(r.text,t.pos,!1,n)}function en(e){return void 0!==e.initializer}function tn(e){return 33554432&e.flags?e.checkFlags:0}function rn(t){var r=t.parent;if(!r)return 0;switch(r.kind){case 208:case 200:return rn(r);case 217:case 216:var n=r.operator;return 45===n||46===n?c():0;case 218:var i=r,a=i.left,o=i.operatorToken;return a===t&&Lr(o.kind)?62===o.kind?1:c():0;case 202:return r.name!==t?0:rn(r);case 291:var s=rn(r.parent);return t===r.name?function(t){switch(t){case 0:return 1;case 1:return 0;case 2:return 2;default:return e.Debug.assertNever(t)}}(s):s;case 292:return t===r.objectAssignmentInitializer?0:rn(r.parent);default:return 0}function c(){return r.parent&&235===function(e){for(;208===e.kind;)e=e.parent;return e}(r.parent).kind?1:2}}function nn(e,t,r){var n=r.onDeleteValue,i=r.onExistingValue;e.forEach((function(r,a){var o=t.get(a);void 0===o?(e.delete(a),n(r,a)):i&&i(r,o,a)}))}function an(t){return e.find(t.declarations,e.isClassLike)}function on(e){return 202===e.kind||203===e.kind}function sn(e){for(;on(e);)e=e.expression;return e}function cn(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=void 0,this.mergeId=void 0,this.parent=void 0}function ln(t,r){this.flags=r,(e.Debug.isDebugging||e.tracing)&&(this.checker=t)}function un(t,r){this.flags=r,e.Debug.isDebugging&&(this.checker=t)}function dn(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0}function pn(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0}function fn(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.flowNode=void 0}function mn(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||function(e){return e}}function gn(t,r,n){return void 0===n&&(n=0),t.replace(/{(\d+)}/g,(function(t,i){return""+e.Debug.checkDefined(r[+i+n])}))}function _n(t){return e.localizedDiagnosticMessages&&e.localizedDiagnosticMessages[t.key]||t.message}function hn(e){return void 0===e.file&&void 0!==e.start&&void 0!==e.length&&"string"==typeof e.fileName}function yn(t,r){var n=r.fileName||"",i=r.text.length;e.Debug.assertEqual(t.fileName,n),e.Debug.assertLessThanOrEqual(t.start,i),e.Debug.assertLessThanOrEqual(t.start+t.length,i);var a={file:r,start:t.start,length:t.length,messageText:t.messageText,category:t.category,code:t.code,reportsUnnecessary:t.reportsUnnecessary};if(t.relatedInformation){a.relatedInformation=[];for(var o=0,s=t.relatedInformation;o<s.length;o++){var c=s[o];hn(c)&&c.fileName===n?(e.Debug.assertLessThanOrEqual(c.start,i),e.Debug.assertLessThanOrEqual(c.start+c.length,i),a.relatedInformation.push(yn(c,r))):a.relatedInformation.push(c)}}return a}function vn(e,t,r,n){q(e,t,r);var i=_n(n);return arguments.length>4&&(i=gn(i,arguments,4)),{file:e,start:t,length:r,messageText:i,category:n.category,code:n.code,reportsUnnecessary:n.reportsUnnecessary,reportsDeprecated:n.reportsDeprecated}}function bn(e){var t=_n(e);return arguments.length>1&&(t=gn(t,arguments,1)),{file:void 0,start:void 0,length:void 0,messageText:t,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated}}function kn(e){return e.file?e.file.path:void 0}function xn(t,r){return En(t,r)||function(t,r){if(!t.relatedInformation&&!r.relatedInformation)return 0;if(t.relatedInformation&&r.relatedInformation)return e.compareValues(t.relatedInformation.length,r.relatedInformation.length)||e.forEach(t.relatedInformation,(function(e,t){return xn(e,r.relatedInformation[t])}))||0;return t.relatedInformation?-1:1}(t,r)||0}function En(t,r){return e.compareStringsCaseSensitive(kn(t),kn(r))||e.compareValues(t.start,r.start)||e.compareValues(t.length,r.length)||e.compareValues(t.code,r.code)||Sn(t.messageText,r.messageText)||0}function Sn(t,r){if("string"==typeof t&&"string"==typeof r)return e.compareStringsCaseSensitive(t,r);if("string"==typeof t)return-1;if("string"==typeof r)return 1;var n=e.compareStringsCaseSensitive(t.messageText,r.messageText);if(n)return n;if(!t.next&&!r.next)return 0;if(!t.next)return-1;if(!r.next)return 1;for(var i=Math.min(t.next.length,r.next.length),a=0;a<i;a++)if(n=Sn(t.next[a],r.next[a]))return n;return t.next.length<r.next.length?-1:t.next.length>r.next.length?1:0}function Dn(e){return e.target||0}function wn(t){return"number"==typeof t.module?t.module:Dn(t)>=2?e.ModuleKind.ES2015:e.ModuleKind.CommonJS}function Tn(e){return!(!e.declaration&&!e.composite)}function Cn(e,t){return void 0===e[t]?!!e.strict:!!e[t]}function An(e){return void 0===e.allowJs?!!e.checkJs:e.allowJs}function Nn(e,t){return t.strictFlag?Cn(e,t.name):e[t.name]}function Pn(e){for(var t=!1,r=0;r<e.length;r++)if(42===e.charCodeAt(r)){if(t)return!1;t=!0}return!0}function In(t,r){var n,i,a;return{getSymlinkedFiles:function(){return a},getSymlinkedDirectories:function(){return n},getSymlinkedDirectoriesByRealpath:function(){return i},setSymlinkedFile:function(t,r){return(a||(a=new e.Map)).set(t,r)},setSymlinkedDirectory:function(a,o){var s=e.toPath(a,t,r);vi(s)||(s=e.ensureTrailingDirectorySeparator(s),!1===o||(null==n?void 0:n.has(s))||(i||(i=e.createMultiMap())).add(e.ensureTrailingDirectorySeparator(o.realPath),a),(n||(n=new e.Map)).set(s,o))}}}function Fn(t,r,n,i,a){for(var o=e.getPathComponents(e.getNormalizedAbsolutePath(t,n)),s=e.getPathComponents(e.getNormalizedAbsolutePath(r,n)),c=!1;!On(o[o.length-2],i,a)&&!On(s[s.length-2],i,a)&&i(o[o.length-1])===i(s[s.length-1]);)o.pop(),s.pop(),c=!0;return c?[e.getPathFromPathComponents(o),e.getPathFromPathComponents(s)]:void 0}function On(t,r,n){return"node_modules"===r(t)||n&&"oh_modules"===r(t)||e.startsWith(t,"@")}e.getNewLineCharacter=function(t,r){switch(t.newLine){case 0:return"\r\n";case 1:return"\n"}return r?r():e.sys?e.sys.newLine:"\r\n"},e.createRange=Gr,e.moveRangeEnd=function(e,t){return Gr(e.pos,t)},e.moveRangePos=$r,e.moveRangePastDecorators=Yr,e.moveRangePastModifiers=function(e){return e.modifiers&&e.modifiers.length>0?$r(e,e.modifiers.end):Yr(e)},e.isCollapsedRange=function(e){return e.pos===e.end},e.createTokenRange=function(t,r){return Gr(t,t+e.tokenToString(r).length)},e.rangeIsOnSingleLine=function(e,t){return Xr(e,e,t)},e.rangeStartPositionsAreOnSameLine=function(e,t,r){return Qr(Zr(e,r,!1),Zr(t,r,!1),r)},e.rangeEndPositionsAreOnSameLine=function(e,t,r){return Qr(e.end,t.end,r)},e.rangeStartIsOnSameLineAsRangeEnd=Xr,e.rangeEndIsOnSameLineAsRangeStart=function(e,t,r){return Qr(e.end,Zr(t,r,!1),r)},e.getLinesBetweenRangeEndAndRangeStart=function(t,r,n,i){var a=Zr(r,n,i);return e.getLinesBetweenPositions(n,t.end,a)},e.getLinesBetweenRangeEndPositions=function(t,r,n){return e.getLinesBetweenPositions(n,t.end,r.end)},e.isNodeArrayMultiLine=function(e,t){return!Qr(e.pos,e.end,t)},e.positionsAreOnSameLine=Qr,e.getStartPositionOfRange=Zr,e.getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter=function(t,r,n,i){var a=e.skipTrivia(n.text,t,!1,i),o=function(t,r,n){void 0===r&&(r=0);for(;t-- >r;)if(!e.isWhiteSpaceLike(n.text.charCodeAt(t)))return t}(a,r,n);return e.getLinesBetweenPositions(n,null!=o?o:r,a)},e.getLinesBetweenPositionAndNextNonWhitespaceCharacter=function(t,r,n,i){var a=e.skipTrivia(n.text,t,!1,i);return e.getLinesBetweenPositions(n,t,Math.min(r,a))},e.isDeclarationNameOfEnumOrNamespace=function(t){var r=e.getParseTreeNode(t);if(r)switch(r.parent.kind){case 258:case 259:return r===r.parent.name}return!1},e.getInitializedVariables=function(t){return e.filter(t.declarations,en)},e.isWatchSet=function(e){return e.watch&&e.hasOwnProperty("watch")},e.closeFileWatcher=function(e){e.close()},e.getCheckFlags=tn,e.getDeclarationModifierFlagsFromSymbol=function(t){if(t.valueDeclaration){var r=e.getCombinedModifierFlags(t.valueDeclaration);return t.parent&&32&t.parent.flags?r:-29&r}if(6&tn(t)){var n=t.checkFlags;return(1024&n?8:256&n?4:16)|(2048&n?32:0)}return 4194304&t.flags?36:0},e.skipAlias=function(e,t){return 2097152&e.flags?t.getAliasedSymbol(e):e},e.getCombinedLocalAndExportSymbolFlags=function(e){return e.exportSymbol?e.exportSymbol.flags|e.flags:e.flags},e.isWriteOnlyAccess=function(e){return 1===rn(e)},e.isWriteAccess=function(e){return 0!==rn(e)},function(e){e[e.Read=0]="Read",e[e.Write=1]="Write",e[e.ReadWrite=2]="ReadWrite"}(Wr||(Wr={})),e.compareDataObjects=function e(t,r){if(!t||!r||Object.keys(t).length!==Object.keys(r).length)return!1;for(var n in t)if("object"==typeof t[n]){if(!e(t[n],r[n]))return!1}else if("function"!=typeof t[n]&&t[n]!==r[n])return!1;return!0},e.clearMap=function(e,t){e.forEach(t),e.clear()},e.mutateMapSkippingNewValues=nn,e.mutateMap=function(e,t,r){nn(e,t,r);var n=r.createNewValue;t.forEach((function(t,r){e.has(r)||e.set(r,n(r,t))}))},e.isAbstractConstructorSymbol=function(e){if(32&e.flags){var t=an(e);return!!t&&Sr(t,128)}return!1},e.getClassLikeDeclarationOfSymbol=an,e.getObjectFlags=function(e){return 3899393&e.flags?e.objectFlags:0},e.typeHasCallOrConstructSignatures=function(e,t){return 0!==t.getSignaturesOfType(e,0).length||0!==t.getSignaturesOfType(e,1).length},e.forSomeAncestorDirectory=function(t,r){return!!e.forEachAncestorDirectory(t,(function(e){return!!r(e)||void 0}))},e.isUMDExportSymbol=function(t){return!!t&&!!t.declarations&&!!t.declarations[0]&&e.isNamespaceExportDeclaration(t.declarations[0])},e.showModuleSpecifier=function(t){var r=t.moduleSpecifier;return e.isStringLiteral(r)?r.text:D(r)},e.getLastChild=function(t){var r;return e.forEachChild(t,(function(e){h(e)&&(r=e)}),(function(e){for(var t=e.length-1;t>=0;t--)if(h(e[t])){r=e[t];break}})),r},e.addToSeen=function(e,t,r){return void 0===r&&(r=!0),t=String(t),!e.has(t)&&(e.set(t,r),!0)},e.isObjectTypeDeclaration=function(t){return e.isClassLike(t)||e.isInterfaceDeclaration(t)||e.isTypeLiteralNode(t)},e.isTypeNodeKind=function(e){return e>=173&&e<=196||129===e||153===e||145===e||156===e||146===e||132===e||148===e||149===e||114===e||151===e||142===e||225===e||306===e||307===e||308===e||309===e||310===e||311===e||312===e},e.isAccessExpression=on,e.getNameOfAccessExpression=function(t){return 202===t.kind?t.name:(e.Debug.assert(203===t.kind),t.argumentExpression)},e.isBundleFileTextLike=function(e){switch(e.kind){case"text":case"internal":return!0;default:return!1}},e.isNamedImportsOrExports=function(e){return 267===e.kind||271===e.kind},e.getLeftmostAccessExpression=sn,e.getLeftmostExpression=function(e,t){for(;;){switch(e.kind){case 217:e=e.operand;continue;case 218:e=e.left;continue;case 219:e=e.condition;continue;case 206:e=e.tag;continue;case 204:if(t)return e;case 226:case 203:case 202:case 227:case 339:e=e.expression;continue}return e}},e.objectAllocator={getNodeConstructor:function(){return dn},getTokenConstructor:function(){return pn},getIdentifierConstructor:function(){return fn},getPrivateIdentifierConstructor:function(){return dn},getSourceFileConstructor:function(){return dn},getSymbolConstructor:function(){return cn},getTypeConstructor:function(){return ln},getSignatureConstructor:function(){return un},getSourceMapSourceConstructor:function(){return mn}},e.setObjectAllocator=function(t){e.objectAllocator=t},e.formatStringFromArgs=gn,e.setLocalizedDiagnosticMessages=function(t){e.localizedDiagnosticMessages=t},e.getLocaleSpecificMessage=_n,e.createDetachedDiagnostic=function(e,t,r,n){q(void 0,t,r);var i=_n(n);return arguments.length>4&&(i=gn(i,arguments,4)),{file:void 0,start:t,length:r,messageText:i,category:n.category,code:n.code,reportsUnnecessary:n.reportsUnnecessary,fileName:e}},e.attachFileToDiagnostics=function(e,t){for(var r=[],n=0,i=e;n<i.length;n++){var a=i[n];r.push(yn(a,t))}return r},e.createFileDiagnostic=vn,e.formatMessage=function(e,t){var r=_n(t);return arguments.length>2&&(r=gn(r,arguments,2)),r},e.createCompilerDiagnostic=bn,e.createCompilerDiagnosticFromMessageChain=function(e,t){return{file:void 0,start:void 0,length:void 0,code:e.code,category:e.category,messageText:e.next?e:e.messageText,relatedInformation:t}},e.chainDiagnosticMessages=function(e,t){var r=_n(t);return arguments.length>2&&(r=gn(r,arguments,2)),{messageText:r,category:t.category,code:t.code,next:void 0===e||Array.isArray(e)?e:[e]}},e.concatenateDiagnosticMessageChains=function(e,t){for(var r=e;r.next;)r=r.next[0];r.next=[t]},e.compareDiagnostics=xn,e.compareDiagnosticsSkipRelatedInformation=En,e.getLanguageVariant=function(e){return 4===e||2===e||1===e||6===e?1:0},e.getEmitScriptTarget=Dn,e.getEmitModuleKind=wn,e.getEmitModuleResolutionKind=function(t){var r=t.moduleResolution;return void 0===r&&(r=wn(t)===e.ModuleKind.CommonJS?e.ModuleResolutionKind.NodeJs:e.ModuleResolutionKind.Classic),r},e.hasJsonModuleEmitEnabled=function(t){switch(wn(t)){case e.ModuleKind.CommonJS:case e.ModuleKind.AMD:case e.ModuleKind.ES2015:case e.ModuleKind.ES2020:case e.ModuleKind.ESNext:return!0;default:return!1}},e.unreachableCodeIsError=function(e){return!1===e.allowUnreachableCode},e.unusedLabelIsError=function(e){return!1===e.allowUnusedLabels},e.getAreDeclarationMapsEnabled=function(e){return!(!Tn(e)||!e.declarationMap)},e.getAllowSyntheticDefaultImports=function(t){var r=wn(t);return void 0!==t.allowSyntheticDefaultImports?t.allowSyntheticDefaultImports:t.esModuleInterop||r===e.ModuleKind.System},e.getEmitDeclarations=Tn,e.shouldPreserveConstEnums=function(e){return!(!e.preserveConstEnums&&!e.isolatedModules)},e.isIncrementalCompilation=function(e){return!(!e.incremental&&!e.composite)},e.getStrictOptionValue=Cn,e.getAllowJSCompilerOption=An,e.compilerOptionsAffectSemanticDiagnostics=function(t,r){return r!==t&&e.semanticDiagnosticsOptionDeclarations.some((function(e){return!fi(Nn(r,e),Nn(t,e))}))},e.compilerOptionsAffectEmit=function(t,r){return r!==t&&e.affectsEmitOptionDeclarations.some((function(e){return!fi(Nn(r,e),Nn(t,e))}))},e.getCompilerOptionValue=Nn,e.getJSXTransformEnabled=function(e){var t=e.jsx;return 2===t||4===t||5===t},e.getJSXImplicitImportBase=function(t,r){var n=null==r?void 0:r.pragmas.get("jsximportsource"),i=e.isArray(n)?n[0]:n;return 4===t.jsx||5===t.jsx||t.jsxImportSource||i?(null==i?void 0:i.arguments.factory)||t.jsxImportSource||"react":void 0},e.getJSXRuntimeImport=function(e,t){return e?e+"/"+(5===t.jsx?"jsx-dev-runtime":"jsx-runtime"):void 0},e.hasZeroOrOneAsteriskCharacter=Pn,e.createSymlinkCache=In,e.discoverProbableSymlinks=function(t,r,n,i){for(var a=In(n,r),o=0,s=e.flatten(e.mapDefined(t,(function(t){return t.resolvedModules&&e.compact(e.arrayFrom(e.mapIterator(t.resolvedModules.values(),(function(e){return e&&e.originalPath&&e.resolvedFileName!==e.originalPath?[e.resolvedFileName,e.originalPath]:void 0}))))})));o<s.length;o++){var c=s[o],l=Fn(c[0],c[1],n,r,i)||e.emptyArray,u=l[0],d=l[1];u&&d&&a.setSymlinkedDirectory(d,{real:u,realPath:e.toPath(u,n,r)})}return a},e.tryRemoveDirectoryPrefix=function(t,r,n){var i,a=e.tryRemovePrefix(t,r,n);return void 0===a?void 0:(i=a,e.isAnyDirectorySeparator(i.charCodeAt(0))?i.slice(1):void 0)};var Rn=/[^\w\s\/]/g;function Mn(e){return"\\"+e}e.regExpEscape=function(e){return e.replace(Rn,Mn)};var Ln=[42,63];e.commonPackageFolders=["node_modules","oh_modules","bower_components","jspm_packages"];var jn="(?!("+e.commonPackageFolders.join("|")+")(/|$))",Bn={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:"(/"+jn+"[^/.][^/]*)*?",replaceWildcardCharacter:function(e){return Wn(e,Bn.singleAsteriskRegexFragment)}},zn={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/"+jn+"[^/.][^/]*)*?",replaceWildcardCharacter:function(e){return Wn(e,zn.singleAsteriskRegexFragment)}},Un={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:function(e){return Wn(e,Un.singleAsteriskRegexFragment)}},qn={files:Bn,directories:zn,exclude:Un};function Jn(e,t,r){var n=Vn(e,t,r);if(n&&n.length)return"^("+n.map((function(e){return"("+e+")"})).join("|")+")"+("exclude"===r?"($|/)":"$")}function Vn(t,r,n){if(void 0!==t&&0!==t.length)return e.flatMap(t,(function(e){return e&&Kn(e,r,n,qn[n])}))}function Hn(e){return!/[.*?]/.test(e)}function Kn(t,r,n,i){var a=i.singleAsteriskRegexFragment,o=i.doubleAsteriskRegexFragment,s=i.replaceWildcardCharacter,c="",l=!1,u=e.getNormalizedPathComponents(t,r),d=e.last(u);if("exclude"===n||"**"!==d){u[0]=e.removeTrailingDirectorySeparator(u[0]),Hn(d)&&u.push("**","*");for(var p=0,f=0,m=u;f<m.length;f++){var g=m[f];if("**"===g)c+=o;else if("directories"===n&&(c+="(",p++),l&&(c+=e.directorySeparator),"exclude"!==n){var _="";42===g.charCodeAt(0)?(_+="([^./]"+a+")?",g=g.substr(1)):63===g.charCodeAt(0)&&(_+="[^./]",g=g.substr(1)),(_+=g.replace(Rn,s))!==g&&(c+=jn),c+=_}else c+=g.replace(Rn,s);l=!0}for(;p>0;)c+=")?",p--;return c}}function Wn(e,t){return"*"===e?t:"?"===e?"[^/]":"\\"+e}function Gn(t,r,n,i,a){t=e.normalizePath(t),a=e.normalizePath(a);var o=e.combinePaths(a,t);return{includeFilePatterns:e.map(Vn(n,o,"files"),(function(e){return"^"+e+"$"})),includeFilePattern:Jn(n,o,"files"),includeDirectoryPattern:Jn(n,o,"directories"),excludePattern:Jn(r,o,"exclude"),basePaths:Yn(t,n,i)}}function $n(e,t){return new RegExp(e,t?"":"i")}function Yn(t,r,n){var i=[t];if(r){for(var a=[],o=0,s=r;o<s.length;o++){var c=s[o],l=e.isRootedDiskPath(c)?c:e.normalizePath(e.combinePaths(t,c));a.push(Xn(l))}a.sort(e.getStringComparer(!n));for(var u=function(r){e.every(i,(function(i){return!e.containsPath(i,r,t,!n)}))&&i.push(r)},d=0,p=a;d<p.length;d++){u(p[d])}}return i}function Xn(t){var r=e.indexOfAnyCharCode(t,Ln);return r<0?e.hasExtension(t)?e.removeTrailingDirectorySeparator(e.getDirectoryPath(t)):t:t.substring(0,t.lastIndexOf(e.directorySeparator,r))}function Qn(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".js":return 1;case".jsx":return 2;case".ts":return 3;case".tsx":return 4;case".json":return 6;case".ets":return 8;default:return 0}}e.getRegularExpressionForWildcard=Jn,e.getRegularExpressionsForWildcards=Vn,e.isImplicitGlob=Hn,e.getPatternFromSpec=function(e,t,r){var n=e&&Kn(e,t,r,qn[r]);return n&&"^("+n+")"+("exclude"===r?"($|/)":"$")},e.getFileMatcherPatterns=Gn,e.getRegexFromPattern=$n,e.matchFiles=function(t,r,n,i,a,o,s,c,l){t=e.normalizePath(t),o=e.normalizePath(o);for(var u=Gn(t,n,i,a,o),d=u.includeFilePatterns&&u.includeFilePatterns.map((function(e){return $n(e,a)})),p=u.includeDirectoryPattern&&$n(u.includeDirectoryPattern,a),f=u.excludePattern&&$n(u.excludePattern,a),m=d?d.map((function(){return[]})):[[]],g=new e.Map,_=e.createGetCanonicalFileName(a),h=0,y=u.basePaths;h<y.length;h++){var v=y[h];b(v,e.combinePaths(o,v),s)}return e.flatten(m);function b(t,n,i){var a=_(l(n));if(!g.has(a)){g.set(a,!0);for(var o=c(t),s=o.files,u=o.directories,h=function(i){var a=e.combinePaths(t,i),o=e.combinePaths(n,i);if(r&&!e.fileExtensionIsOneOf(a,r))return"continue";if(f&&f.test(o))return"continue";if(d){var s=e.findIndex(d,(function(e){return e.test(o)}));-1!==s&&m[s].push(a)}else m[0].push(a)},y=0,v=e.sort(s,e.compareStringsCaseSensitive);y<v.length;y++){h(E=v[y])}if(void 0===i||0!=--i)for(var k=0,x=e.sort(u,e.compareStringsCaseSensitive);k<x.length;k++){var E=x[k],S=e.combinePaths(t,E),D=e.combinePaths(n,E);p&&!p.test(D)||f&&f.test(D)||b(S,D,i)}}}},e.ensureScriptKind=function(e,t){return t||Qn(e)||3},e.getScriptKindFromFileName=Qn,e.supportedTSExtensions=[".ts",".tsx",".d.ts",".ets",".d.ets"],e.supportedTSExtensionsWithJson=[".ts",".tsx",".d.ts",".json",".ets",".d.ets"],e.supportedTSExtensionsForExtractExtension=[".d.ts",".ts",".tsx",".d.ets",".ets"],e.supportedJSExtensions=[".js",".jsx"],e.supportedJSAndJsonExtensions=[".js",".jsx",".json"];var Zn=i(i([],e.supportedTSExtensions),e.supportedJSExtensions),ei=i(i(i([],e.supportedTSExtensions),e.supportedJSExtensions),[".json"]);function ti(t,r){var n=t&&An(t);if(!r||0===r.length)return n?Zn:e.supportedTSExtensions;var a=i(i([],n?Zn:e.supportedTSExtensions),e.mapDefined(r,(function(e){return 7===e.scriptKind||n&&(1===(t=e.scriptKind)||2===t)?e.extension:void 0;var t})));return e.deduplicate(a,e.equateStringsCaseSensitive,e.compareStringsCaseSensitive)}function ri(t,r){return t&&t.resolveJsonModule?r===Zn?ei:r===e.supportedTSExtensions?e.supportedTSExtensionsWithJson:i(i([],r),[".json"]):r}function ni(e){var t=e.match(/\//g);return t?t.length:0}function ii(e,t){return e<2?0:e<t.length?2:t.length}e.getSupportedExtensions=ti,e.getSuppoertedExtensionsWithJsonIfResolveJsonModule=ri,e.hasJSFileExtension=function(t){return e.some(e.supportedJSExtensions,(function(r){return e.fileExtensionIs(t,r)}))},e.hasTSFileExtension=function(t){return e.some(e.supportedTSExtensions,(function(r){return e.fileExtensionIs(t,r)}))},e.isSupportedSourceFileName=function(t,r,n){if(!t)return!1;for(var i=0,a=ri(r,ti(r,n));i<a.length;i++){var o=a[i];if(e.fileExtensionIs(t,o))return!0}return!1},e.compareNumberOfDirectorySeparators=function(t,r){return e.compareValues(ni(t),ni(r))},function(e){e[e.TypeScriptFiles=0]="TypeScriptFiles",e[e.DeclarationAndJavaScriptFiles=2]="DeclarationAndJavaScriptFiles",e[e.Highest=0]="Highest",e[e.Lowest=2]="Lowest"}(e.ExtensionPriority||(e.ExtensionPriority={})),e.getExtensionPriority=function(t,r){for(var n=r.length-1;n>=0;n--)if(e.fileExtensionIs(t,r[n]))return ii(n,r);return 0},e.adjustExtensionPriority=ii,e.getNextLowestExtensionPriority=function(e,t){return e<2?2:t.length};var ai=[".d.ts",".ts",".js",".tsx",".jsx",".json",".d.ets",".ets"];function oi(e){for(var t=0,r=ai;t<r.length;t++){var n=si(e,r[t]);if(void 0!==n)return n}return e}function si(t,r){return e.fileExtensionIs(t,r)?ci(t,r):void 0}function ci(e,t){return e.substring(0,e.length-t.length)}function li(t){e.Debug.assert(Pn(t));var r=t.indexOf("*");return-1===r?void 0:{prefix:t.substr(0,r),suffix:t.substr(r+1)}}function ui(e){return!(e>=0)}function di(e){return".ts"===e||".tsx"===e||".d.ts"===e||".ets"===e||".d.ets"===e}function pi(t){return e.fileExtensionIs(t,".ets")?".ets":e.find(ai,(function(r){return e.fileExtensionIs(t,r)}))}function fi(t,r){return t===r||"object"==typeof t&&null!==t&&"object"==typeof r&&null!==r&&e.equalOwnProperties(t,r,fi)}function mi(e,t){return e.pos=t,e}function gi(e,t){return e.end=t,e}function _i(e,t,r){return gi(mi(e,t),r)}function hi(e,t){return e&&t&&(e.parent=t),e}function yi(t){return!e.isOmittedExpression(t)}function vi(t){return e.some(e.ignoredPaths,(function(r){return e.stringContains(t,r)}))}function bi(e){return"ohpm"===e}e.removeFileExtension=oi,e.tryRemoveExtension=si,e.removeExtension=ci,e.changeExtension=function(t,r){return e.changeAnyExtension(t,r,ai,!1)},e.tryParsePattern=li,e.positionIsSynthesized=ui,e.extensionIsTS=di,e.resolutionExtensionIsTSOrJson=function(e){return di(e)||".json"===e},e.extensionFromPath=function(t){var r=pi(t);return void 0!==r?r:e.Debug.fail("File "+t+" has unknown extension.")},e.isAnySupportedFileExtension=function(e){return void 0!==pi(e)},e.tryGetExtensionFromPath=pi,e.isCheckJsEnabledForFile=function(e,t){return e.checkJsDirective?e.checkJsDirective.enabled:t.checkJs},e.emptyFileSystemEntries={files:e.emptyArray,directories:e.emptyArray},e.matchPatternOrExact=function(t,r){for(var n=[],i=0,a=t;i<a.length;i++){var o=a[i];if(Pn(o)){var s=li(o);if(s)n.push(s);else if(o===r)return o}}return e.findBestPatternMatch(n,(function(e){return e}),r)},e.sliceAfter=function(t,r){var n=t.indexOf(r);return e.Debug.assert(-1!==n),t.slice(n)},e.addRelatedInfo=function(t){for(var r,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];return n.length?(t.relatedInformation||(t.relatedInformation=[]),e.Debug.assert(t.relatedInformation!==e.emptyArray,"Diagnostic had empty array singleton for related info, but is still being constructed!"),(r=t.relatedInformation).push.apply(r,n),t):t},e.minAndMax=function(t,r){e.Debug.assert(0!==t.length);for(var n=r(t[0]),i=n,a=1;a<t.length;a++){var o=r(t[a]);o<n?n=o:o>i&&(i=o)}return{min:n,max:i}},e.rangeOfNode=function(e){return{pos:x(e),end:e.end}},e.rangeOfTypeParameters=function(t,r){return{pos:r.pos-1,end:e.skipTrivia(t.text,r.end)+1}},e.skipTypeChecking=function(e,t,r){return t.skipLibCheck&&e.isDeclarationFile||t.skipDefaultLibCheck&&e.hasNoDefaultLib||r.isSourceOfProjectReferenceRedirect(e.fileName)},e.isJsonEqual=fi,e.parsePseudoBigInt=function(e){var t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:for(var r=e.length-1,n=0;48===e.charCodeAt(n);)n++;return e.slice(n,r)||"0"}for(var i=e.length-1,a=(i-2)*t,o=new Uint16Array((a>>>4)+(15&a?1:0)),s=i-1,c=0;s>=2;s--,c+=t){var l=c>>>4,u=e.charCodeAt(s),d=(u<=57?u-48:10+u-(u<=70?65:97))<<(15&c);o[l]|=d;var p=d>>>16;p&&(o[l+1]|=p)}for(var f="",m=o.length-1,g=!0;g;){var _=0;g=!1;for(l=m;l>=0;l--){var h=_<<16|o[l],y=h/10|0;o[l]=y,_=h-10*y,y&&!g&&(m=l,g=!0)}f=_+f}return f},e.pseudoBigIntToString=function(e){var t=e.negative,r=e.base10Value;return(t&&"0"!==r?"-":"")+r},e.isValidTypeOnlyAliasUseSite=function(t){return!!(8388608&t.flags)||be(t)||function(t){if(78!==t.kind)return!1;var r=e.findAncestor(t.parent,(function(e){switch(e.kind){case 289:return!0;case 202:case 225:return!1;default:return"quit"}}));return 117===(null==r?void 0:r.token)||256===(null==r?void 0:r.parent.kind)}(t)||function(e){for(;78===e.kind||202===e.kind;)e=e.parent;if(159!==e.kind)return!1;if(Sr(e.parent,128))return!0;var t=e.parent.parent.kind;return 256===t||178===t}(t)||!ye(t)},e.typeOnlyDeclarationIsExport=function(e){return 273===e.kind},e.isIdentifierTypeReference=function(t){return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)},e.arrayIsHomogeneous=function(t,r){if(void 0===r&&(r=e.equateValues),t.length<2)return!0;for(var n=t[0],i=1,a=t.length;i<a;i++){if(!r(n,t[i]))return!1}return!0},e.setTextRangePos=mi,e.setTextRangeEnd=gi,e.setTextRangePosEnd=_i,e.setTextRangePosWidth=function(e,t,r){return _i(e,t,t+r)},e.setNodeFlags=function(e,t){return e&&(e.flags=t),e},e.setParent=hi,e.setEachParent=function(e,t){if(e)for(var r=0,n=e;r<n.length;r++){hi(n[r],t)}return e},e.isPackedArrayLiteral=function(t){return e.isArrayLiteralExpression(t)&&e.every(t.elements,yi)},e.expressionResultIsUnused=function(t){for(e.Debug.assertIsDefined(t.parent);;){var r=t.parent;if(e.isParenthesizedExpression(r))t=r;else{if(e.isExpressionStatement(r)||e.isVoidExpression(r)||e.isForStatement(r)&&(r.initializer===t||r.incrementor===t))return!0;if(e.isCommaListExpression(r)){if(t!==e.last(r.elements))return!0;t=r}else{if(!e.isBinaryExpression(r)||27!==r.operatorToken.kind)return!1;if(t===r.left)return!0;t=r}}}},e.containsIgnoredPath=vi,e.isCalledStructDeclaration=function(e){return!!e&&e.some((function(e){return 255===e.kind}))},e.getNameOfDecorator=function(t){var r=t.expression;return e.isIdentifier(r)?r.escapedText.toString():e.isCallExpression(r)&&e.isIdentifier(r.expression)?r.expression.escapedText.toString():void 0},e.isEtsFunctionDecorators=function(e,t){var r,n,i,a,o,s,c,l;return e===(null===(n=null===(r=t.ets)||void 0===r?void 0:r.render)||void 0===n?void 0:n.decorator)||e===(null===(a=null===(i=t.ets)||void 0===i?void 0:i.styles)||void 0===a?void 0:a.decorator)||null!==(l=null===(c=null===(s=null===(o=t.ets)||void 0===o?void 0:o.extend)||void 0===s?void 0:s.decorator)||void 0===c?void 0:c.includes(e))&&void 0!==l&&l},e.isOhpm=bi,e.getModuleByPMType=function(e){return bi(e)?"oh_modules":"node_modules"},e.getPackageJsonByPMType=function(e){return bi(e)?"oh-package.json5":"package.json"},e.tryGetSignatureDeclaration=function(t,r){var n=function(t){var r=e.findAncestor(t,(function(t){return!function(t){var r;return(null===(r=e.tryCast(t.parent,e.isPropertyAccessExpression))||void 0===r?void 0:r.name)===t}(t)})),n=null==r?void 0:r.parent;return n&&e.isCallLikeExpression(n)&&pe(n)===r?n:void 0}(r),i=n&&t.tryGetResolvedSignatureWithoutCheck(n);return e.tryCast(i&&i.declaration,(function(t){return e.isFunctionLike(t)&&!e.isFunctionTypeNode(t)}))},e.getEtsComponentExpressionInnerExpressionStatementNode=function(t){for(;t&&!e.isIdentifier(t);){var r=t,n=t.expression;if(n&&e.isIdentifier(n)){t=r;break}t=n}if(t)return e.isCallExpression(t)||e.isEtsComponentExpression(t)||e.isPropertyAccessExpression(t)?t:void 0},e.getEtsExtendDecoratorsComponentNames=function(e,t){var r,n,i,a=[],o=null!==(i=null===(n=null===(r=t.ets)||void 0===r?void 0:r.extend)||void 0===n?void 0:n.decorator)&&void 0!==i?i:"Extend";return null==e||e.forEach((function(e){if(204===e.expression.kind){var t=e.expression.expression,r=e.expression.arguments;78===t.kind&&t.escapedText===o&&r.length&&78===r[0].kind&&a.push(r[0].escapedText)}})),a}}(d||(d={})),function(e){e.createObfTextSingleLineWriter=function(){var t,r,n;function i(i){var a=e.computeLineStarts(i);a.length>1?(n=t.length-i.length+e.last(a),r=n-t.length==0):r=!1}function a(e){!function(e){e&&e.length&&(r&&(r=!1),t+=e,i(e))}(e)}function o(){t="",r=!0,n=0}return o(),{write:a,rawWrite:function(e){void 0!==e&&(t+=e,i(e))},writeLiteral:function(e){e&&e.length&&a(e)},writeLine:function(e){r&&!e||(n=(t+=" ").length)},increaseIndent:e.noop,decreaseIndent:e.noop,getIndent:function(){return 0},getTextPos:function(){return t.length},getLine:function(){return 0},getColumn:function(){return r?0:t.length-n},getText:function(){return t},isAtStartOfLine:function(){return r},hasTrailingComment:function(){return!1},hasTrailingWhitespace:function(){return!!t.length&&e.isWhiteSpaceLike(t.charCodeAt(t.length-1))},clear:o,reportInaccessibleThisError:e.noop,reportPrivateInBaseOfClassExpression:e.noop,reportInaccessibleUniqueSymbolError:e.noop,trackSymbol:e.noop,writeKeyword:a,writeOperator:a,writeParameter:a,writeProperty:a,writePunctuation:a,writeSpace:a,writeStringLiteral:a,writeSymbol:function(e,t){return a(e)},writeTrailingSemicolon:a,writeComment:e.noop,getTextPosWithWriteLine:function(){return r?t.length:t.length+1}}},e.getLeadingCommentRangesOfNode=function(t,r){return 11!==t.kind?e.getLeadingCommentRanges(r.text,t.pos):void 0},e.createTextWriter=function(t){var r,n,i,a,o,s=!1;function c(t){var n=e.computeLineStarts(t);n.length>1?(a=a+n.length-1,o=r.length-t.length+e.last(n),i=o-r.length==0):i=!1}function l(t){t&&t.length&&(i&&(t=e.getIndentString(n)+t,i=!1),r+=t,c(t))}function u(e){e&&(s=!1),l(e)}function d(){r="",n=0,i=!0,a=0,o=0,s=!1}return d(),{write:u,rawWrite:function(e){void 0!==e&&(r+=e,c(e),s=!1)},writeLiteral:function(e){e&&e.length&&u(e)},writeLine:function(e){i&&!e||(a++,o=(r+=t).length,i=!0,s=!1)},increaseIndent:function(){n++},decreaseIndent:function(){n--},getIndent:function(){return n},getTextPos:function(){return r.length},getLine:function(){return a},getColumn:function(){return i?n*e.getIndentSize():r.length-o},getText:function(){return r},isAtStartOfLine:function(){return i},hasTrailingComment:function(){return s},hasTrailingWhitespace:function(){return!!r.length&&e.isWhiteSpaceLike(r.charCodeAt(r.length-1))},clear:d,reportInaccessibleThisError:e.noop,reportPrivateInBaseOfClassExpression:e.noop,reportInaccessibleUniqueSymbolError:e.noop,trackSymbol:e.noop,writeKeyword:u,writeOperator:u,writeParameter:u,writeProperty:u,writePunctuation:u,writeSpace:u,writeStringLiteral:u,writeSymbol:function(e,t){return u(e)},writeTrailingSemicolon:u,writeComment:function(e){e&&(s=!0),l(e)},getTextPosWithWriteLine:function(){return i?r.length:r.length+t.length}}},e.setParentRecursive=function(t,r){return t?(e.forEachChildRecursively(t,e.isJSDocNode(t)?n:function(t,r){return n(t,r)||function(t){if(e.hasJSDocNodes(t))for(var r=0,i=t.jsDoc;r<i.length;r++){var a=i[r];n(a,t),e.forEachChildRecursively(a,n)}}(t)}),t):t;function n(t,n){if(r&&t.parent===n)return"skip";e.setParent(t,n)}}}(d||(d={})),function(e){e.createBaseNodeFactory=function(){var t,r,n,i,a;return{createBaseSourceFileNode:function(t){return new(a||(a=e.objectAllocator.getSourceFileConstructor()))(t,-1,-1)},createBaseIdentifierNode:function(t){return new(n||(n=e.objectAllocator.getIdentifierConstructor()))(t,-1,-1)},createBasePrivateIdentifierNode:function(t){return new(i||(i=e.objectAllocator.getPrivateIdentifierConstructor()))(t,-1,-1)},createBaseTokenNode:function(t){return new(r||(r=e.objectAllocator.getTokenConstructor()))(t,-1,-1)},createBaseNode:function(r){return new(t||(t=e.objectAllocator.getNodeConstructor()))(r,-1,-1)}}}}(d||(d={})),function(e){e.createParenthesizerRules=function(t){return{parenthesizeLeftSideOfBinary:function(e,t){return n(e,t,!0)},parenthesizeRightSideOfBinary:function(e,t,r){return n(e,r,!1,t)},parenthesizeExpressionOfComputedPropertyName:function(r){return e.isCommaSequence(r)?t.createParenthesizedExpression(r):r},parenthesizeConditionOfConditionalExpression:function(r){var n=e.getOperatorPrecedence(219,57),i=e.skipPartiallyEmittedExpressions(r),a=e.getExpressionPrecedence(i);if(1!==e.compareValues(a,n))return t.createParenthesizedExpression(r);return r},parenthesizeBranchOfConditionalExpression:function(r){var n=e.skipPartiallyEmittedExpressions(r);return e.isCommaSequence(n)?t.createParenthesizedExpression(r):r},parenthesizeExpressionOfExportDefault:function(r){var n=e.skipPartiallyEmittedExpressions(r),i=e.isCommaSequence(n);if(!i)switch(e.getLeftmostExpression(n,!1).kind){case 223:case 209:i=!0}return i?t.createParenthesizedExpression(r):r},parenthesizeExpressionOfNew:function(r){var n=e.getLeftmostExpression(r,!0);switch(n.kind){case 204:return t.createParenthesizedExpression(r);case 205:return n.arguments?r:t.createParenthesizedExpression(r)}return i(r)},parenthesizeLeftSideOfAccess:i,parenthesizeOperandOfPostfixUnary:function(r){return e.isLeftHandSideExpression(r)?r:e.setTextRange(t.createParenthesizedExpression(r),r)},parenthesizeOperandOfPrefixUnary:function(r){return e.isUnaryExpression(r)?r:e.setTextRange(t.createParenthesizedExpression(r),r)},parenthesizeExpressionsOfCommaDelimitedList:function(r){var n=e.sameMap(r,a);return e.setTextRange(t.createNodeArray(n,r.hasTrailingComma),r)},parenthesizeExpressionForDisallowedComma:a,parenthesizeExpressionOfExpressionStatement:function(r){var n=e.skipPartiallyEmittedExpressions(r);if(e.isCallExpression(n)){var i=n.expression,a=e.skipPartiallyEmittedExpressions(i).kind;if(209===a||210===a){var o=t.updateCallExpression(n,e.setTextRange(t.createParenthesizedExpression(i),i),n.typeArguments,n.arguments);return t.restoreOuterExpressions(r,o,8)}}var s=e.getLeftmostExpression(n,!1).kind;if(201===s||209===s)return e.setTextRange(t.createParenthesizedExpression(r),r);return r},parenthesizeConciseBodyOfArrowFunction:function(r){if(!e.isBlock(r)&&(e.isCommaSequence(r)||201===e.getLeftmostExpression(r,!1).kind))return e.setTextRange(t.createParenthesizedExpression(r),r);return r},parenthesizeMemberOfConditionalType:o,parenthesizeMemberOfElementType:s,parenthesizeElementTypeOfArrayType:function(e){switch(e.kind){case 177:case 189:case 186:return t.createParenthesizedType(e)}return s(e)},parenthesizeConstituentTypesOfUnionOrIntersectionType:function(r){return t.createNodeArray(e.sameMap(r,s))},parenthesizeTypeArguments:function(r){if(e.some(r))return t.createNodeArray(e.sameMap(r,c))}};function r(t){if(t=e.skipPartiallyEmittedExpressions(t),e.isLiteralKind(t.kind))return t.kind;if(218===t.kind&&39===t.operatorToken.kind){if(void 0!==t.cachedLiteralKind)return t.cachedLiteralKind;var n=r(t.left),i=e.isLiteralKind(n)&&n===r(t.right)?n:0;return t.cachedLiteralKind=i,i}return 0}function n(n,i,a,o){return 208===e.skipPartiallyEmittedExpressions(i).kind?i:function(t,n,i,a){var o=e.getOperatorPrecedence(218,t),s=e.getOperatorAssociativity(218,t),c=e.skipPartiallyEmittedExpressions(n);if(!i&&210===n.kind&&o>3)return!0;var l=e.getExpressionPrecedence(c);switch(e.compareValues(l,o)){case-1:return!(!i&&1===s&&221===n.kind);case 1:return!1;case 0:if(i)return 1===s;if(e.isBinaryExpression(c)&&c.operatorToken.kind===t){if(function(e){return 41===e||51===e||50===e||52===e}(t))return!1;if(39===t){var u=a?r(a):0;if(e.isLiteralKind(u)&&u===r(c))return!1}}return 0===e.getExpressionAssociativity(c)}}(n,i,a,o)?t.createParenthesizedExpression(i):i}function i(r){var n=e.skipPartiallyEmittedExpressions(r);return e.isLeftHandSideExpression(n)&&(205!==n.kind||n.arguments)?r:e.setTextRange(t.createParenthesizedExpression(r),r)}function a(r){var n=e.skipPartiallyEmittedExpressions(r);return e.getExpressionPrecedence(n)>e.getOperatorPrecedence(218,27)?r:e.setTextRange(t.createParenthesizedExpression(r),r)}function o(e){return 185===e.kind?t.createParenthesizedType(e):e}function s(e){switch(e.kind){case 183:case 184:case 175:case 176:return t.createParenthesizedType(e)}return o(e)}function c(r,n){return 0===n&&e.isFunctionOrConstructorTypeNode(r)&&r.typeParameters?t.createParenthesizedType(r):r}},e.nullParenthesizerRules={parenthesizeLeftSideOfBinary:function(e,t){return t},parenthesizeRightSideOfBinary:function(e,t,r){return r},parenthesizeExpressionOfComputedPropertyName:e.identity,parenthesizeConditionOfConditionalExpression:e.identity,parenthesizeBranchOfConditionalExpression:e.identity,parenthesizeExpressionOfExportDefault:e.identity,parenthesizeExpressionOfNew:function(t){return e.cast(t,e.isLeftHandSideExpression)},parenthesizeLeftSideOfAccess:function(t){return e.cast(t,e.isLeftHandSideExpression)},parenthesizeOperandOfPostfixUnary:function(t){return e.cast(t,e.isLeftHandSideExpression)},parenthesizeOperandOfPrefixUnary:function(t){return e.cast(t,e.isUnaryExpression)},parenthesizeExpressionsOfCommaDelimitedList:function(t){return e.cast(t,e.isNodeArray)},parenthesizeExpressionForDisallowedComma:e.identity,parenthesizeExpressionOfExpressionStatement:e.identity,parenthesizeConciseBodyOfArrowFunction:e.identity,parenthesizeMemberOfConditionalType:e.identity,parenthesizeMemberOfElementType:e.identity,parenthesizeElementTypeOfArrayType:e.identity,parenthesizeConstituentTypesOfUnionOrIntersectionType:function(t){return e.cast(t,e.isNodeArray)},parenthesizeTypeArguments:function(t){return t&&e.cast(t,e.isNodeArray)}}}(d||(d={})),function(e){e.createNodeConverters=function(t){return{convertToFunctionBlock:function(r,n){if(e.isBlock(r))return r;var i=t.createReturnStatement(r);e.setTextRange(i,r);var a=t.createBlock([i],n);return e.setTextRange(a,r),a},convertToFunctionExpression:function(r){if(!r.body)return e.Debug.fail("Cannot convert a FunctionDeclaration without a body");var n=t.createFunctionExpression(r.modifiers,r.asteriskToken,r.name,r.typeParameters,r.parameters,r.type,r.body);e.setOriginalNode(n,r),e.setTextRange(n,r),e.getStartsOnNewLine(r)&&e.setStartsOnNewLine(n,!0);return n},convertToArrayAssignmentElement:r,convertToObjectAssignmentElement:n,convertToAssignmentPattern:i,convertToObjectAssignmentPattern:a,convertToArrayAssignmentPattern:o,convertToAssignmentElementTarget:s};function r(r){if(e.isBindingElement(r)){if(r.dotDotDotToken)return e.Debug.assertNode(r.name,e.isIdentifier),e.setOriginalNode(e.setTextRange(t.createSpreadElement(r.name),r),r);var n=s(r.name);return r.initializer?e.setOriginalNode(e.setTextRange(t.createAssignment(n,r.initializer),r),r):n}return e.cast(r,e.isExpression)}function n(r){if(e.isBindingElement(r)){if(r.dotDotDotToken)return e.Debug.assertNode(r.name,e.isIdentifier),e.setOriginalNode(e.setTextRange(t.createSpreadAssignment(r.name),r),r);if(r.propertyName){var n=s(r.name);return e.setOriginalNode(e.setTextRange(t.createPropertyAssignment(r.propertyName,r.initializer?t.createAssignment(n,r.initializer):n),r),r)}return e.Debug.assertNode(r.name,e.isIdentifier),e.setOriginalNode(e.setTextRange(t.createShorthandPropertyAssignment(r.name,r.initializer),r),r)}return e.cast(r,e.isObjectLiteralElementLike)}function i(e){switch(e.kind){case 198:case 200:return o(e);case 197:case 201:return a(e)}}function a(r){return e.isObjectBindingPattern(r)?e.setOriginalNode(e.setTextRange(t.createObjectLiteralExpression(e.map(r.elements,n)),r),r):e.cast(r,e.isObjectLiteralExpression)}function o(n){return e.isArrayBindingPattern(n)?e.setOriginalNode(e.setTextRange(t.createArrayLiteralExpression(e.map(n.elements,r)),n),n):e.cast(n,e.isArrayLiteralExpression)}function s(t){return e.isBindingPattern(t)?i(t):e.cast(t,e.isExpression)}},e.nullNodeConverters={convertToFunctionBlock:e.notImplemented,convertToFunctionExpression:e.notImplemented,convertToArrayAssignmentElement:e.notImplemented,convertToObjectAssignmentElement:e.notImplemented,convertToAssignmentPattern:e.notImplemented,convertToObjectAssignmentPattern:e.notImplemented,convertToArrayAssignmentPattern:e.notImplemented,convertToAssignmentElementTarget:e.notImplemented}}(d||(d={})),function(e){var t,r=0;function n(n,f){var m=8&n?a:o,g=e.memoize((function(){return 1&n?e.nullParenthesizerRules:e.createParenthesizerRules(C)})),_=e.memoize((function(){return 2&n?e.nullNodeConverters:e.createNodeConverters(C)})),h=e.memoizeOne((function(e){return function(t,r){return Rt(t,e,r)}})),v=e.memoizeOne((function(e){return function(t){return Ft(e,t)}})),b=e.memoizeOne((function(e){return function(t){return Ot(t,e)}})),k=e.memoizeOne((function(e){return function(){return function(e){return N(e)}(e)}})),x=e.memoizeOne((function(e){return function(t){return tn(e,t)}})),E=e.memoizeOne((function(e){return function(t,r){return function(e,t,r){return t.type!==r?m(tn(e,r),t):t}(e,t,r)}})),S=e.memoizeOne((function(e){return function(t,r){return yn(e,t,r)}})),D=e.memoizeOne((function(e){return function(t,r,n){return function(e,t,r,n){void 0===r&&(r=sn(t));return t.tagName!==r||t.comment!==n?m(yn(e,r,n),t):t}(e,t,r,n)}})),w=e.memoizeOne((function(e){return function(t,r,n){return vn(e,t,r,n)}})),T=e.memoizeOne((function(e){return function(t,r,n,i){return function(e,t,r,n,i){void 0===r&&(r=sn(t));return t.tagName!==r||t.typeExpression!==n||t.comment!==i?m(vn(e,r,n,i),t):t}(e,t,r,n,i)}})),C={get parenthesizer(){return g()},get converters(){return _()},createNodeArray:A,createNumericLiteral:J,createBigIntLiteral:V,createStringLiteral:K,createStringLiteralFromNode:function(t){var r=H(e.getTextOfIdentifierOrLiteral(t),void 0);return r.textSourceNode=t,r},createRegularExpressionLiteral:W,createLiteralLikeNode:function(e,t){switch(e){case 8:return J(t,0);case 9:return V(t);case 10:return K(t,void 0);case 11:return Tn(t,!1);case 12:return Tn(t,!0);case 13:return W(t);case 14:return zt(e,t,void 0,0)}},createIdentifier:Y,updateIdentifier:function(t,r){return t.typeArguments!==r?m(Y(e.idText(t),r),t):t},createTempVariable:X,createLoopVariable:function(){return $("",2)},createUniqueName:function(t,r){void 0===r&&(r=0);return e.Debug.assert(!(7&r),"Argument out of range: flags"),e.Debug.assert(32!=(48&r),"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),$(t,3|r)},getGeneratedNameForNode:Q,createPrivateIdentifier:function(t){e.startsWith(t,"#")||e.Debug.fail("First character of private identifier must be #: "+t);var r=f.createBasePrivateIdentifierNode(79);return r.escapedText=e.escapeLeadingUnderscores(t),r.transformFlags|=4194304,r},createToken:ee,createSuper:function(){return ee(106)},createThis:te,createNull:function(){return ee(104)},createTrue:re,createFalse:ne,createModifier:ie,createModifiersFromModifierFlags:ae,createQualifiedName:oe,updateQualifiedName:function(e,t,r){return e.left!==t||e.right!==r?m(oe(t,r),e):e},createComputedPropertyName:se,updateComputedPropertyName:function(e,t){return e.expression!==t?m(se(t),e):e},createTypeParameterDeclaration:ce,updateTypeParameterDeclaration:function(e,t,r,n){return e.name!==t||e.constraint!==r||e.default!==n?m(ce(t,r,n),e):e},createParameterDeclaration:le,updateParameterDeclaration:ue,createDecorator:de,updateDecorator:function(e,t){return e.expression!==t?m(de(t),e):e},createPropertySignature:pe,updatePropertySignature:fe,createPropertyDeclaration:me,updatePropertyDeclaration:ge,createMethodSignature:_e,updateMethodSignature:he,createMethodDeclaration:ye,updateMethodDeclaration:ve,createConstructorDeclaration:be,updateConstructorDeclaration:ke,createGetAccessorDeclaration:xe,updateGetAccessorDeclaration:Ee,createSetAccessorDeclaration:Se,updateSetAccessorDeclaration:De,createCallSignature:we,updateCallSignature:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?R(we(t,r,n),e):e},createConstructSignature:Te,updateConstructSignature:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?R(Te(t,r,n),e):e},createIndexSignature:Ce,updateIndexSignature:Ae,createTemplateLiteralTypeSpan:Ne,updateTemplateLiteralTypeSpan:function(e,t,r){return e.type!==t||e.literal!==r?m(Ne(t,r),e):e},createKeywordTypeNode:function(e){return ee(e)},createTypePredicateNode:Pe,updateTypePredicateNode:function(e,t,r,n){return e.assertsModifier!==t||e.parameterName!==r||e.type!==n?m(Pe(t,r,n),e):e},createTypeReferenceNode:Ie,updateTypeReferenceNode:function(e,t,r){return e.typeName!==t||e.typeArguments!==r?m(Ie(t,r),e):e},createFunctionTypeNode:Fe,updateFunctionTypeNode:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?R(Fe(t,r,n),e):e},createConstructorTypeNode:Oe,updateConstructorTypeNode:function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return 5===t.length?Le.apply(void 0,t):4===t.length?je.apply(void 0,t):e.Debug.fail("Incorrect number of arguments specified.")},createTypeQueryNode:Be,updateTypeQueryNode:function(e,t){return e.exprName!==t?m(Be(t),e):e},createTypeLiteralNode:ze,updateTypeLiteralNode:function(e,t){return e.members!==t?m(ze(t),e):e},createArrayTypeNode:Ue,updateArrayTypeNode:function(e,t){return e.elementType!==t?m(Ue(t),e):e},createTupleTypeNode:qe,updateTupleTypeNode:function(e,t){return e.elements!==t?m(qe(t),e):e},createNamedTupleMember:Je,updateNamedTupleMember:function(e,t,r,n,i){return e.dotDotDotToken!==t||e.name!==r||e.questionToken!==n||e.type!==i?m(Je(t,r,n,i),e):e},createOptionalTypeNode:Ve,updateOptionalTypeNode:function(e,t){return e.type!==t?m(Ve(t),e):e},createRestTypeNode:He,updateRestTypeNode:function(e,t){return e.type!==t?m(He(t),e):e},createUnionTypeNode:function(e){return Ke(183,e)},updateUnionTypeNode:function(e,t){return We(e,t)},createIntersectionTypeNode:function(e){return Ke(184,e)},updateIntersectionTypeNode:function(e,t){return We(e,t)},createConditionalTypeNode:Ge,updateConditionalTypeNode:function(e,t,r,n,i){return e.checkType!==t||e.extendsType!==r||e.trueType!==n||e.falseType!==i?m(Ge(t,r,n,i),e):e},createInferTypeNode:$e,updateInferTypeNode:function(e,t){return e.typeParameter!==t?m($e(t),e):e},createImportTypeNode:Xe,updateImportTypeNode:function(e,t,r,n,i){void 0===i&&(i=e.isTypeOf);return e.argument!==t||e.qualifier!==r||e.typeArguments!==n||e.isTypeOf!==i?m(Xe(t,r,n,i),e):e},createParenthesizedType:Qe,updateParenthesizedType:function(e,t){return e.type!==t?m(Qe(t),e):e},createThisTypeNode:function(){var e=N(188);return e.transformFlags=1,e},createTypeOperatorNode:Ze,updateTypeOperatorNode:function(e,t){return e.type!==t?m(Ze(e.operator,t),e):e},createIndexedAccessTypeNode:et,updateIndexedAccessTypeNode:function(e,t,r){return e.objectType!==t||e.indexType!==r?m(et(t,r),e):e},createMappedTypeNode:tt,updateMappedTypeNode:function(e,t,r,n,i,a){return e.readonlyToken!==t||e.typeParameter!==r||e.nameType!==n||e.questionToken!==i||e.type!==a?m(tt(t,r,n,i,a),e):e},createLiteralTypeNode:rt,updateLiteralTypeNode:function(e,t){return e.literal!==t?m(rt(t),e):e},createTemplateLiteralType:Ye,updateTemplateLiteralType:function(e,t,r){return e.head!==t||e.templateSpans!==r?m(Ye(t,r),e):e},createObjectBindingPattern:nt,updateObjectBindingPattern:function(e,t){return e.elements!==t?m(nt(t),e):e},createArrayBindingPattern:it,updateArrayBindingPattern:function(e,t){return e.elements!==t?m(it(t),e):e},createBindingElement:at,updateBindingElement:function(e,t,r,n,i){return e.propertyName!==r||e.dotDotDotToken!==t||e.name!==n||e.initializer!==i?m(at(t,r,n,i),e):e},createArrayLiteralExpression:st,updateArrayLiteralExpression:function(e,t){return e.elements!==t?m(st(t,e.multiLine),e):e},createObjectLiteralExpression:ct,updateObjectLiteralExpression:function(e,t){return e.properties!==t?m(ct(t,e.multiLine),e):e},createPropertyAccessExpression:4&n?function(t,r){return e.setEmitFlags(lt(t,r),131072)}:lt,updatePropertyAccessExpression:function(t,r,n){if(e.isPropertyAccessChain(t))return dt(t,r,t.questionDotToken,e.cast(n,e.isIdentifier));return t.expression!==r||t.name!==n?m(lt(r,n),t):t},createPropertyAccessChain:4&n?function(t,r,n){return e.setEmitFlags(ut(t,r,n),131072)}:ut,updatePropertyAccessChain:dt,createElementAccessExpression:pt,updateElementAccessExpression:function(t,r,n){if(e.isElementAccessChain(t))return mt(t,r,t.questionDotToken,n);return t.expression!==r||t.argumentExpression!==n?m(pt(r,n),t):t},createElementAccessChain:ft,updateElementAccessChain:mt,createCallExpression:gt,updateCallExpression:function(t,r,n,i){if(e.isCallChain(t))return ht(t,r,t.questionDotToken,n,i);return t.expression!==r||t.typeArguments!==n||t.arguments!==i?m(gt(r,n,i),t):t},createCallChain:_t,updateCallChain:ht,createNewExpression:yt,updateNewExpression:function(e,t,r,n){return e.expression!==t||e.typeArguments!==r||e.arguments!==n?m(yt(t,r,n),e):e},createTaggedTemplateExpression:vt,updateTaggedTemplateExpression:function(e,t,r,n){return e.tag!==t||e.typeArguments!==r||e.template!==n?m(vt(t,r,n),e):e},createTypeAssertion:bt,updateTypeAssertion:kt,createParenthesizedExpression:xt,updateParenthesizedExpression:Et,createFunctionExpression:St,updateFunctionExpression:Dt,createEtsComponentExpression:wt,updateEtsComponentExpression:function(e,t,r,n){return e.expression!==t||e.arguments!==r||e.body!==n?wt(t,r,n):e},createArrowFunction:Tt,updateArrowFunction:Ct,createDeleteExpression:At,updateDeleteExpression:function(e,t){return e.expression!==t?m(At(t),e):e},createTypeOfExpression:Nt,updateTypeOfExpression:function(e,t){return e.expression!==t?m(Nt(t),e):e},createVoidExpression:Pt,updateVoidExpression:function(e,t){return e.expression!==t?m(Pt(t),e):e},createAwaitExpression:It,updateAwaitExpression:function(e,t){return e.expression!==t?m(It(t),e):e},createPrefixUnaryExpression:Ft,updatePrefixUnaryExpression:function(e,t){return e.operand!==t?m(Ft(e.operator,t),e):e},createPostfixUnaryExpression:Ot,updatePostfixUnaryExpression:function(e,t){return e.operand!==t?m(Ot(t,e.operator),e):e},createBinaryExpression:Rt,updateBinaryExpression:function(e,t,r,n){return e.left!==t||e.operatorToken!==r||e.right!==n?m(Rt(t,r,n),e):e},createConditionalExpression:Lt,updateConditionalExpression:function(e,t,r,n,i,a){return e.condition!==t||e.questionToken!==r||e.whenTrue!==n||e.colonToken!==i||e.whenFalse!==a?m(Lt(t,r,n,i,a),e):e},createTemplateExpression:jt,updateTemplateExpression:function(e,t,r){return e.head!==t||e.templateSpans!==r?m(jt(t,r),e):e},createTemplateHead:function(e,t,r){return Bt(15,e,t,r)},createTemplateMiddle:function(e,t,r){return Bt(16,e,t,r)},createTemplateTail:function(e,t,r){return Bt(17,e,t,r)},createNoSubstitutionTemplateLiteral:function(e,t,r){return Bt(14,e,t,r)},createTemplateLiteralLikeNode:zt,createYieldExpression:Ut,updateYieldExpression:function(e,t,r){return e.expression!==r||e.asteriskToken!==t?m(Ut(t,r),e):e},createSpreadElement:qt,updateSpreadElement:function(e,t){return e.expression!==t?m(qt(t),e):e},createClassExpression:Jt,updateClassExpression:Vt,createOmittedExpression:function(){return ot(224)},createExpressionWithTypeArguments:Ht,updateExpressionWithTypeArguments:function(e,t,r){return e.expression!==t||e.typeArguments!==r?m(Ht(t,r),e):e},createAsExpression:Kt,updateAsExpression:Wt,createNonNullExpression:Gt,updateNonNullExpression:$t,createNonNullChain:Yt,updateNonNullChain:Xt,createMetaProperty:Qt,updateMetaProperty:function(e,t){return e.name!==t?m(Qt(e.keywordToken,t),e):e},createTemplateSpan:Zt,updateTemplateSpan:function(e,t,r){return e.expression!==t||e.literal!==r?m(Zt(t,r),e):e},createSemicolonClassElement:function(){var e=N(231);return e.transformFlags|=256,e},createBlock:er,updateBlock:function(e,t){return e.statements!==t?m(er(t,e.multiLine),e):e},createVariableStatement:tr,updateVariableStatement:rr,createEmptyStatement:nr,createExpressionStatement:ir,updateExpressionStatement:function(e,t){return e.expression!==t?m(ir(t),e):e},createIfStatement:ar,updateIfStatement:function(e,t,r,n){return e.expression!==t||e.thenStatement!==r||e.elseStatement!==n?m(ar(t,r,n),e):e},createDoStatement:or,updateDoStatement:function(e,t,r){return e.statement!==t||e.expression!==r?m(or(t,r),e):e},createWhileStatement:sr,updateWhileStatement:function(e,t,r){return e.expression!==t||e.statement!==r?m(sr(t,r),e):e},createForStatement:cr,updateForStatement:function(e,t,r,n,i){return e.initializer!==t||e.condition!==r||e.incrementor!==n||e.statement!==i?m(cr(t,r,n,i),e):e},createForInStatement:lr,updateForInStatement:function(e,t,r,n){return e.initializer!==t||e.expression!==r||e.statement!==n?m(lr(t,r,n),e):e},createForOfStatement:ur,updateForOfStatement:function(e,t,r,n,i){return e.awaitModifier!==t||e.initializer!==r||e.expression!==n||e.statement!==i?m(ur(t,r,n,i),e):e},createContinueStatement:dr,updateContinueStatement:function(e,t){return e.label!==t?m(dr(t),e):e},createBreakStatement:pr,updateBreakStatement:function(e,t){return e.label!==t?m(pr(t),e):e},createReturnStatement:fr,updateReturnStatement:function(e,t){return e.expression!==t?m(fr(t),e):e},createWithStatement:mr,updateWithStatement:function(e,t,r){return e.expression!==t||e.statement!==r?m(mr(t,r),e):e},createSwitchStatement:gr,updateSwitchStatement:function(e,t,r){return e.expression!==t||e.caseBlock!==r?m(gr(t,r),e):e},createLabeledStatement:_r,updateLabeledStatement:hr,createThrowStatement:yr,updateThrowStatement:function(e,t){return e.expression!==t?m(yr(t),e):e},createTryStatement:vr,updateTryStatement:function(e,t,r,n){return e.tryBlock!==t||e.catchClause!==r||e.finallyBlock!==n?m(vr(t,r,n),e):e},createDebuggerStatement:function(){return N(250)},createVariableDeclaration:br,updateVariableDeclaration:function(e,t,r,n,i){return e.name!==t||e.type!==n||e.exclamationToken!==r||e.initializer!==i?m(br(t,r,n,i),e):e},createVariableDeclarationList:kr,updateVariableDeclarationList:function(e,t){return e.declarations!==t?m(kr(t,e.flags),e):e},createFunctionDeclaration:xr,updateFunctionDeclaration:Er,createClassDeclaration:Sr,updateClassDeclaration:Dr,createStructDeclaration:wr,updateStructDeclaration:Tr,createInterfaceDeclaration:Cr,updateInterfaceDeclaration:Ar,createTypeAliasDeclaration:Nr,updateTypeAliasDeclaration:Pr,createEnumDeclaration:Ir,updateEnumDeclaration:Fr,createModuleDeclaration:Or,updateModuleDeclaration:Rr,createModuleBlock:Mr,updateModuleBlock:function(e,t){return e.statements!==t?m(Mr(t),e):e},createCaseBlock:Lr,updateCaseBlock:function(e,t){return e.clauses!==t?m(Lr(t),e):e},createNamespaceExportDeclaration:jr,updateNamespaceExportDeclaration:function(e,t){return e.name!==t?m(jr(t),e):e},createImportEqualsDeclaration:Br,updateImportEqualsDeclaration:zr,createImportDeclaration:Ur,updateImportDeclaration:qr,createImportClause:Jr,updateImportClause:function(e,t,r,n){return e.isTypeOnly!==t||e.name!==r||e.namedBindings!==n?m(Jr(t,r,n),e):e},createNamespaceImport:Vr,updateNamespaceImport:function(e,t){return e.name!==t?m(Vr(t),e):e},createNamespaceExport:Hr,updateNamespaceExport:function(e,t){return e.name!==t?m(Hr(t),e):e},createNamedImports:Kr,updateNamedImports:function(e,t){return e.elements!==t?m(Kr(t),e):e},createImportSpecifier:Wr,updateImportSpecifier:function(e,t,r){return e.propertyName!==t||e.name!==r?m(Wr(t,r),e):e},createExportAssignment:Gr,updateExportAssignment:$r,createExportDeclaration:Yr,updateExportDeclaration:Xr,createNamedExports:Qr,updateNamedExports:function(e,t){return e.elements!==t?m(Qr(t),e):e},createExportSpecifier:Zr,updateExportSpecifier:function(e,t,r){return e.propertyName!==t||e.name!==r?m(Zr(t,r),e):e},createMissingDeclaration:function(){return P(274,void 0,void 0)},createExternalModuleReference:en,updateExternalModuleReference:function(e,t){return e.expression!==t?m(en(t),e):e},get createJSDocAllType(){return k(306)},get createJSDocUnknownType(){return k(307)},get createJSDocNonNullableType(){return x(309)},get updateJSDocNonNullableType(){return E(309)},get createJSDocNullableType(){return x(308)},get updateJSDocNullableType(){return E(308)},get createJSDocOptionalType(){return x(310)},get updateJSDocOptionalType(){return E(310)},get createJSDocVariadicType(){return x(312)},get updateJSDocVariadicType(){return E(312)},get createJSDocNamepathType(){return x(313)},get updateJSDocNamepathType(){return E(313)},createJSDocFunctionType:rn,updateJSDocFunctionType:function(e,t,r){return e.parameters!==t||e.type!==r?m(rn(t,r),e):e},createJSDocTypeLiteral:nn,updateJSDocTypeLiteral:function(e,t,r){return e.jsDocPropertyTags!==t||e.isArrayType!==r?m(nn(t,r),e):e},createJSDocTypeExpression:an,updateJSDocTypeExpression:function(e,t){return e.type!==t?m(an(t),e):e},createJSDocSignature:on,updateJSDocSignature:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?m(on(t,r,n),e):e},createJSDocTemplateTag:ln,updateJSDocTemplateTag:function(e,t,r,n,i){void 0===t&&(t=sn(e));return e.tagName!==t||e.constraint!==r||e.typeParameters!==n||e.comment!==i?m(ln(t,r,n,i),e):e},createJSDocTypedefTag:un,updateJSDocTypedefTag:function(e,t,r,n,i){void 0===t&&(t=sn(e));return e.tagName!==t||e.typeExpression!==r||e.fullName!==n||e.comment!==i?m(un(t,r,n,i),e):e},createJSDocParameterTag:dn,updateJSDocParameterTag:function(e,t,r,n,i,a,o){void 0===t&&(t=sn(e));return e.tagName!==t||e.name!==r||e.isBracketed!==n||e.typeExpression!==i||e.isNameFirst!==a||e.comment!==o?m(dn(t,r,n,i,a,o),e):e},createJSDocPropertyTag:pn,updateJSDocPropertyTag:function(e,t,r,n,i,a,o){void 0===t&&(t=sn(e));return e.tagName!==t||e.name!==r||e.isBracketed!==n||e.typeExpression!==i||e.isNameFirst!==a||e.comment!==o?m(pn(t,r,n,i,a,o),e):e},createJSDocCallbackTag:fn,updateJSDocCallbackTag:function(e,t,r,n,i){void 0===t&&(t=sn(e));return e.tagName!==t||e.typeExpression!==r||e.fullName!==n||e.comment!==i?m(fn(t,r,n,i),e):e},createJSDocAugmentsTag:mn,updateJSDocAugmentsTag:function(e,t,r,n){void 0===t&&(t=sn(e));return e.tagName!==t||e.class!==r||e.comment!==n?m(mn(t,r,n),e):e},createJSDocImplementsTag:gn,updateJSDocImplementsTag:function(e,t,r,n){void 0===t&&(t=sn(e));return e.tagName!==t||e.class!==r||e.comment!==n?m(gn(t,r,n),e):e},createJSDocSeeTag:_n,updateJSDocSeeTag:function(e,t,r,n){return e.tagName!==t||e.name!==r||e.comment!==n?m(_n(t,r,n),e):e},createJSDocNameReference:hn,updateJSDocNameReference:function(e,t){return e.name!==t?m(hn(t),e):e},get createJSDocTypeTag(){return w(332)},get updateJSDocTypeTag(){return T(332)},get createJSDocReturnTag(){return w(330)},get updateJSDocReturnTag(){return T(330)},get createJSDocThisTag(){return w(331)},get updateJSDocThisTag(){return T(331)},get createJSDocEnumTag(){return w(328)},get updateJSDocEnumTag(){return T(328)},get createJSDocAuthorTag(){return S(320)},get updateJSDocAuthorTag(){return D(320)},get createJSDocClassTag(){return S(322)},get updateJSDocClassTag(){return D(322)},get createJSDocPublicTag(){return S(323)},get updateJSDocPublicTag(){return D(323)},get createJSDocPrivateTag(){return S(324)},get updateJSDocPrivateTag(){return D(324)},get createJSDocProtectedTag(){return S(325)},get updateJSDocProtectedTag(){return D(325)},get createJSDocReadonlyTag(){return S(326)},get updateJSDocReadonlyTag(){return D(326)},get createJSDocDeprecatedTag(){return S(321)},get updateJSDocDeprecatedTag(){return D(321)},createJSDocUnknownTag:bn,updateJSDocUnknownTag:function(e,t,r){return e.tagName!==t||e.comment!==r?m(bn(t,r),e):e},createJSDocComment:kn,updateJSDocComment:function(e,t,r){return e.comment!==t||e.tags!==r?m(kn(t,r),e):e},createJsxElement:xn,updateJsxElement:function(e,t,r,n){return e.openingElement!==t||e.children!==r||e.closingElement!==n?m(xn(t,r,n),e):e},createJsxSelfClosingElement:En,updateJsxSelfClosingElement:function(e,t,r,n){return e.tagName!==t||e.typeArguments!==r||e.attributes!==n?m(En(t,r,n),e):e},createJsxOpeningElement:Sn,updateJsxOpeningElement:function(e,t,r,n){return e.tagName!==t||e.typeArguments!==r||e.attributes!==n?m(Sn(t,r,n),e):e},createJsxClosingElement:Dn,updateJsxClosingElement:function(e,t){return e.tagName!==t?m(Dn(t),e):e},createJsxFragment:wn,createJsxText:Tn,updateJsxText:function(e,t,r){return e.text!==t||e.containsOnlyTriviaWhiteSpaces!==r?m(Tn(t,r),e):e},createJsxOpeningFragment:function(){var e=N(281);return e.transformFlags|=2,e},createJsxJsxClosingFragment:function(){var e=N(282);return e.transformFlags|=2,e},updateJsxFragment:function(e,t,r,n){return e.openingFragment!==t||e.children!==r||e.closingFragment!==n?m(wn(t,r,n),e):e},createJsxAttribute:Cn,updateJsxAttribute:function(e,t,r){return e.name!==t||e.initializer!==r?m(Cn(t,r),e):e},createJsxAttributes:An,updateJsxAttributes:function(e,t){return e.properties!==t?m(An(t),e):e},createJsxSpreadAttribute:Nn,updateJsxSpreadAttribute:function(e,t){return e.expression!==t?m(Nn(t),e):e},createJsxExpression:Pn,updateJsxExpression:function(e,t){return e.expression!==t?m(Pn(e.dotDotDotToken,t),e):e},createCaseClause:In,updateCaseClause:function(e,t,r){return e.expression!==t||e.statements!==r?m(In(t,r),e):e},createDefaultClause:Fn,updateDefaultClause:function(e,t){return e.statements!==t?m(Fn(t),e):e},createHeritageClause:On,updateHeritageClause:function(e,t){return e.types!==t?m(On(e.token,t),e):e},createCatchClause:Rn,updateCatchClause:function(e,t,r){return e.variableDeclaration!==t||e.block!==r?m(Rn(t,r),e):e},createPropertyAssignment:Mn,updatePropertyAssignment:function(e,t,r){return e.name!==t||e.initializer!==r?function(e,t){t.decorators&&(e.decorators=t.decorators);t.modifiers&&(e.modifiers=t.modifiers);t.questionToken&&(e.questionToken=t.questionToken);t.exclamationToken&&(e.exclamationToken=t.exclamationToken);return m(e,t)}(Mn(t,r),e):e},createShorthandPropertyAssignment:Ln,updateShorthandPropertyAssignment:function(e,t,r){return e.name!==t||e.objectAssignmentInitializer!==r?function(e,t){t.decorators&&(e.decorators=t.decorators);t.modifiers&&(e.modifiers=t.modifiers);t.equalsToken&&(e.equalsToken=t.equalsToken);t.questionToken&&(e.questionToken=t.questionToken);t.exclamationToken&&(e.exclamationToken=t.exclamationToken);return m(e,t)}(Ln(t,r),e):e},createSpreadAssignment:jn,updateSpreadAssignment:function(e,t){return e.expression!==t?m(jn(t),e):e},createEnumMember:Bn,updateEnumMember:function(e,t,r){return e.name!==t||e.initializer!==r?m(Bn(t,r),e):e},createSourceFile:function(e,t,r){var n=f.createBaseSourceFileNode(300);return n.statements=A(e),n.endOfFileToken=t,n.flags|=r,n.fileName="",n.text="",n.languageVersion=0,n.languageVariant=0,n.scriptKind=0,n.isDeclarationFile=!1,n.hasNoDefaultLib=!1,n.transformFlags|=d(n.statements)|u(n.endOfFileToken),n},updateSourceFile:function(t,r,n,i,a,o,s){void 0===n&&(n=t.isDeclarationFile);void 0===i&&(i=t.referencedFiles);void 0===a&&(a=t.typeReferenceDirectives);void 0===o&&(o=t.hasNoDefaultLib);void 0===s&&(s=t.libReferenceDirectives);return t.statements!==r||t.isDeclarationFile!==n||t.referencedFiles!==i||t.typeReferenceDirectives!==a||t.hasNoDefaultLib!==o||t.libReferenceDirectives!==s?m(function(t,r,n,i,a,o,s){var c=t.redirectInfo?Object.create(t.redirectInfo.redirectTarget):f.createBaseSourceFileNode(300);for(var l in t)"emitNode"!==l&&!e.hasProperty(c,l)&&e.hasProperty(t,l)&&(c[l]=t[l]);return c.flags|=t.flags,c.statements=A(r),c.endOfFileToken=t.endOfFileToken,c.isDeclarationFile=n,c.referencedFiles=i,c.typeReferenceDirectives=a,c.hasNoDefaultLib=o,c.libReferenceDirectives=s,c.transformFlags=d(c.statements)|u(c.endOfFileToken),c}(t,r,n,i,a,o,s),t):t},createBundle:zn,updateBundle:function(t,r,n){void 0===n&&(n=e.emptyArray);return t.sourceFiles!==r||t.prepends!==n?m(zn(r,n),t):t},createUnparsedSource:function(t,r,n){var i=N(302);return i.prologues=t,i.syntheticReferences=r,i.texts=n,i.fileName="",i.text="",i.referencedFiles=e.emptyArray,i.libReferenceDirectives=e.emptyArray,i.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(i,t)},i},createUnparsedPrologue:function(e){return Un(295,e)},createUnparsedPrepend:function(e,t){var r=Un(296,e);return r.texts=t,r},createUnparsedTextLike:function(e,t){return Un(t?298:297,e)},createUnparsedSyntheticReference:function(e){var t=N(299);return t.data=e.data,t.section=e,t},createInputFiles:function(){var e=N(303);return e.javascriptText="",e.declarationText="",e},createSyntheticExpression:function(e,t,r){void 0===t&&(t=!1);var n=N(229);return n.type=e,n.isSpread=t,n.tupleNameSource=r,n},createSyntaxList:function(e){var t=N(337);return t._children=e,t},createNotEmittedStatement:function(t){var r=N(338);return r.original=t,e.setTextRange(r,t),r},createPartiallyEmittedExpression:qn,updatePartiallyEmittedExpression:Jn,createCommaListExpression:Hn,updateCommaListExpression:function(e,t){return e.elements!==t?m(Hn(t),e):e},createEndOfDeclarationMarker:function(e){var t=N(342);return t.emitNode={},t.original=e,t},createMergeDeclarationMarker:function(e){var t=N(341);return t.emitNode={},t.original=e,t},createSyntheticReferenceExpression:Kn,updateSyntheticReferenceExpression:function(e,t,r){return e.expression!==t||e.thisArg!==r?m(Kn(t,r),e):e},cloneNode:Wn,get createComma(){return h(27)},get createAssignment(){return h(62)},get createLogicalOr(){return h(56)},get createLogicalAnd(){return h(55)},get createBitwiseOr(){return h(51)},get createBitwiseXor(){return h(52)},get createBitwiseAnd(){return h(50)},get createStrictEquality(){return h(36)},get createStrictInequality(){return h(37)},get createEquality(){return h(34)},get createInequality(){return h(35)},get createLessThan(){return h(29)},get createLessThanEquals(){return h(32)},get createGreaterThan(){return h(31)},get createGreaterThanEquals(){return h(33)},get createLeftShift(){return h(47)},get createRightShift(){return h(48)},get createUnsignedRightShift(){return h(49)},get createAdd(){return h(39)},get createSubtract(){return h(40)},get createMultiply(){return h(41)},get createDivide(){return h(43)},get createModulo(){return h(44)},get createExponent(){return h(42)},get createPrefixPlus(){return v(39)},get createPrefixMinus(){return v(40)},get createPrefixIncrement(){return v(45)},get createPrefixDecrement(){return v(46)},get createBitwiseNot(){return v(54)},get createLogicalNot(){return v(53)},get createPostfixIncrement(){return b(45)},get createPostfixDecrement(){return b(46)},createImmediatelyInvokedFunctionExpression:function(e,t,r){return gt(St(void 0,void 0,void 0,void 0,t?[t]:[],void 0,er(e,!0)),void 0,r?[r]:[])},createImmediatelyInvokedArrowFunction:function(e,t,r){return gt(Tt(void 0,void 0,t?[t]:[],void 0,void 0,er(e,!0)),void 0,r?[r]:[])},createVoidZero:Gn,createExportDefault:function(e){return Gr(void 0,void 0,!1,e)},createExternalModuleExport:function(e){return Yr(void 0,void 0,!1,Qr([Zr(void 0,e)]))},createTypeCheck:function(e,t){return"undefined"===t?C.createStrictEquality(e,Gn()):C.createStrictEquality(Nt(e),K(t))},createMethodCall:$n,createGlobalMethodCall:Yn,createFunctionBindCall:function(e,t,r){return $n(e,"bind",i([t],r))},createFunctionCallCall:function(e,t,r){return $n(e,"call",i([t],r))},createFunctionApplyCall:function(e,t,r){return $n(e,"apply",[t,r])},createArraySliceCall:function(e,t){return $n(e,"slice",void 0===t?[]:[ci(t)])},createArrayConcatCall:function(e,t){return $n(e,"concat",t)},createObjectDefinePropertyCall:function(e,t,r){return Yn("Object","defineProperty",[e,ci(t),r])},createPropertyDescriptor:function(t,r){var n=[];Xn(n,"enumerable",ci(t.enumerable)),Xn(n,"configurable",ci(t.configurable));var i=Xn(n,"writable",ci(t.writable));i=Xn(n,"value",t.value)||i;var a=Xn(n,"get",t.get);return a=Xn(n,"set",t.set)||a,e.Debug.assert(!(i&&a),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),ct(n,!r)},createCallBinding:function(t,r,n,i){void 0===i&&(i=!1);var a,o,s=e.skipOuterExpressions(t,15);e.isSuperProperty(s)?(a=te(),o=s):e.isSuperKeyword(s)?(a=te(),o=void 0!==n&&n<2?e.setTextRange(Y("_super"),s):s):4096&e.getEmitFlags(s)?(a=Gn(),o=g().parenthesizeLeftSideOfAccess(s)):e.isPropertyAccessExpression(s)?Qn(s.expression,i)?(a=X(r),o=lt(e.setTextRange(C.createAssignment(a,s.expression),s.expression),s.name),e.setTextRange(o,s)):(a=s.expression,o=s):e.isElementAccessExpression(s)?Qn(s.expression,i)?(a=X(r),o=pt(e.setTextRange(C.createAssignment(a,s.expression),s.expression),s.argumentExpression),e.setTextRange(o,s)):(a=s.expression,o=s):(a=Gn(),o=g().parenthesizeLeftSideOfAccess(t));return{target:o,thisArg:a}},inlineExpressions:function(t){return t.length>10?Hn(t):e.reduceLeft(t,C.createComma)},getInternalName:function(e,t,r){return Zn(e,t,r,49152)},getLocalName:function(e,t,r){return Zn(e,t,r,16384)},getExportName:ei,getDeclarationName:function(e,t,r){return Zn(e,t,r)},getNamespaceMemberName:ti,getExternalModuleOrNamespaceExportName:function(t,r,n,i){if(t&&e.hasSyntacticModifier(r,1))return ti(t,Zn(r),n,i);return ei(r,n,i)},restoreOuterExpressions:function t(r,n,i){void 0===i&&(i=15);if(r&&e.isOuterExpression(r,i)&&(a=r,!(e.isParenthesizedExpression(a)&&e.nodeIsSynthesized(a)&&e.nodeIsSynthesized(e.getSourceMapRange(a))&&e.nodeIsSynthesized(e.getCommentRange(a)))||e.some(e.getSyntheticLeadingComments(a))||e.some(e.getSyntheticTrailingComments(a))))return function(e,t){switch(e.kind){case 208:return Et(e,t);case 207:return kt(e,e.type,t);case 226:return Wt(e,t,e.type);case 227:return $t(e,t);case 339:return Jn(e,t)}}(r,t(r.expression,n));var a;return n},restoreEnclosingLabel:function t(r,n,i){if(!n)return r;var a=hr(n,n.label,e.isLabeledStatement(n.statement)?t(r,n.statement):r);i&&i(n);return a},createUseStrictPrologue:ri,copyPrologue:function(e,t,r,n){var i=ni(e,t,r);return ii(e,t,i,n)},copyStandardPrologue:ni,copyCustomPrologue:ii,ensureUseStrict:function(t){if(!e.findUseStrictPrologue(t))return e.setTextRange(A(i([ri()],t)),t);return t},liftToBlock:function(t){return e.Debug.assert(e.every(t,e.isStatementOrBlock),"Cannot lift nodes to a Block."),e.singleOrUndefined(t)||er(t)},mergeLexicalEnvironment:function(t,r){if(!e.some(r))return t;var n=ai(t,e.isPrologueDirective,0),a=ai(t,e.isHoistedFunction,n),o=ai(t,e.isHoistedVariableStatement,a),s=ai(r,e.isPrologueDirective,0),c=ai(r,e.isHoistedFunction,s),l=ai(r,e.isHoistedVariableStatement,c),u=ai(r,e.isCustomPrologue,l);e.Debug.assert(u===r.length,"Expected declarations to be valid standard or custom prologues");var d=e.isNodeArray(t)?t.slice():t;u>l&&d.splice.apply(d,i([o,0],r.slice(l,u)));l>c&&d.splice.apply(d,i([a,0],r.slice(c,l)));c>s&&d.splice.apply(d,i([n,0],r.slice(s,c)));if(s>0)if(0===n)d.splice.apply(d,i([0,0],r.slice(0,s)));else{for(var p=new e.Map,f=0;f<n;f++){var m=t[f];p.set(m.expression.text,!0)}for(f=s-1;f>=0;f--){var g=r[f];p.has(g.expression.text)||d.unshift(g)}}if(e.isNodeArray(t))return e.setTextRange(A(d,t.hasTrailingComma),t);return t},updateModifiers:function(t,r){var n;"number"==typeof r&&(r=ae(r));return e.isParameter(t)?ue(t,t.decorators,r,t.dotDotDotToken,t.name,t.questionToken,t.type,t.initializer):e.isPropertySignature(t)?fe(t,r,t.name,t.questionToken,t.type):e.isPropertyDeclaration(t)?ge(t,t.decorators,r,t.name,null!==(n=t.questionToken)&&void 0!==n?n:t.exclamationToken,t.type,t.initializer):e.isMethodSignature(t)?he(t,r,t.name,t.questionToken,t.typeParameters,t.parameters,t.type):e.isMethodDeclaration(t)?ve(t,t.decorators,r,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,t.body):e.isConstructorDeclaration(t)?ke(t,t.decorators,r,t.parameters,t.body):e.isGetAccessorDeclaration(t)?Ee(t,t.decorators,r,t.name,t.parameters,t.type,t.body):e.isSetAccessorDeclaration(t)?De(t,t.decorators,r,t.name,t.parameters,t.body):e.isIndexSignatureDeclaration(t)?Ae(t,t.decorators,r,t.parameters,t.type):e.isFunctionExpression(t)?Dt(t,r,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body):e.isArrowFunction(t)?Ct(t,r,t.typeParameters,t.parameters,t.type,t.equalsGreaterThanToken,t.body):e.isClassExpression(t)?Vt(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isVariableStatement(t)?rr(t,r,t.declarationList):e.isFunctionDeclaration(t)?Er(t,t.decorators,r,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body):e.isClassDeclaration(t)?Dr(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isStructDeclaration(t)?Tr(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isInterfaceDeclaration(t)?Ar(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isTypeAliasDeclaration(t)?Pr(t,t.decorators,r,t.name,t.typeParameters,t.type):e.isEnumDeclaration(t)?Fr(t,t.decorators,r,t.name,t.members):e.isModuleDeclaration(t)?Rr(t,t.decorators,r,t.name,t.body):e.isImportEqualsDeclaration(t)?zr(t,t.decorators,r,t.isTypeOnly,t.name,t.moduleReference):e.isImportDeclaration(t)?qr(t,t.decorators,r,t.importClause,t.moduleSpecifier):e.isExportAssignment(t)?$r(t,t.decorators,r,t.expression):e.isExportDeclaration(t)?Xr(t,t.decorators,r,t.isTypeOnly,t.exportClause,t.moduleSpecifier):e.Debug.assertNever(t)}};return C;function A(t,r){if(void 0===t||t===e.emptyArray)t=[];else if(e.isNodeArray(t))return void 0===t.transformFlags&&p(t),e.Debug.attachNodeArrayDebugInfo(t),t;var n=t.length,i=n>=1&&n<=4?t.slice():t;return e.setTextRangePosEnd(i,-1,-1),i.hasTrailingComma=!!r,p(i),e.Debug.attachNodeArrayDebugInfo(i),i}function N(e){return f.createBaseNode(e)}function P(e,t,r){var n=N(e);return n.decorators=oi(t),n.modifiers=oi(r),n.transformFlags|=d(n.decorators)|d(n.modifiers),n.symbol=void 0,n.localSymbol=void 0,n.locals=void 0,n.nextContainer=void 0,n}function I(t,r,n,i){var a=P(t,r,n);if(i=si(i),a.name=i,i)switch(a.kind){case 166:case 168:case 169:case 164:case 291:if(e.isIdentifier(i)){a.transformFlags|=l(i);break}default:a.transformFlags|=u(i)}return a}function F(e,t,r,n,i){var a=I(e,t,r,n);return a.typeParameters=oi(i),a.transformFlags|=d(a.typeParameters),i&&(a.transformFlags|=1),a}function O(e,t,r,n,i,a,o){var s=F(e,t,r,n,i);return s.parameters=A(a),s.type=o,s.transformFlags|=d(s.parameters)|u(s.type),o&&(s.transformFlags|=1),s}function R(e,t){return t.typeArguments&&(e.typeArguments=t.typeArguments),m(e,t)}function M(e,t,r,n,i,a,o,s){var c=O(e,t,r,n,i,a,o);return c.body=s,c.transformFlags|=-8388609&u(c.body),s||(c.transformFlags|=1),c}function L(e,t){return t.exclamationToken&&(e.exclamationToken=t.exclamationToken),t.typeArguments&&(e.typeArguments=t.typeArguments),R(e,t)}function j(e,t,r,n,i,a){var o=F(e,t,r,n,i);return o.heritageClauses=oi(a),o.transformFlags|=d(o.heritageClauses),o}function B(e,t,r,n,i,a,o){var s=j(e,t,r,n,i,a);return s.members=A(o),s.transformFlags|=d(s.members),s}function z(e,t,r,n,i){var a=I(e,t,r,n);return a.initializer=i,a.transformFlags|=u(a.initializer),a}function U(e,t,r,n,i,a){var o=z(e,t,r,n,a);return o.type=i,o.transformFlags|=u(i),i&&(o.transformFlags|=1),o}function q(e,t){var r=Z(e);return r.text=t,r}function J(e,t){void 0===t&&(t=0);var r=q(8,"number"==typeof e?e+"":e);return r.numericLiteralFlags=t,384&t&&(r.transformFlags|=256),r}function V(t){var r=q(9,"string"==typeof t?t:e.pseudoBigIntToString(t)+"n");return r.transformFlags|=4,r}function H(e,t){var r=q(10,e);return r.singleQuote=t,r}function K(e,t,r){var n=H(e,t);return n.hasExtendedUnicodeEscape=r,r&&(n.transformFlags|=256),n}function W(e){return q(13,e)}function G(t,r){void 0===r&&t&&(r=e.stringToToken(t)),78===r&&(r=void 0);var n=f.createBaseIdentifierNode(78);return n.originalKeywordKind=r,n.escapedText=e.escapeLeadingUnderscores(t),n}function $(e,t){var n=G(e,void 0);return n.autoGenerateFlags=t,n.autoGenerateId=r,r++,n}function Y(e,t,r){var n=G(e,r);return t&&(n.typeArguments=A(t)),131===n.originalKeywordKind&&(n.transformFlags|=8388608),n}function X(e,t){var r=1;t&&(r|=8);var n=$("",r);return e&&e(n),n}function Q(t,r){void 0===r&&(r=0),e.Debug.assert(!(7&r),"Argument out of range: flags");var n=$(t&&e.isIdentifier(t)?e.idText(t):"",4|r);return n.original=t,n}function Z(e){return f.createBaseTokenNode(e)}function ee(t){e.Debug.assert(t>=0&&t<=157,"Invalid token"),e.Debug.assert(t<=14||t>=17,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),e.Debug.assert(t<=8||t>=14,"Invalid token. Use 'createLiteralLikeNode' to create literals."),e.Debug.assert(78!==t,"Invalid token. Use 'createIdentifier' to create identifiers");var r=Z(t),n=0;switch(t){case 130:n=96;break;case 123:case 121:case 122:case 143:case 126:case 134:case 85:case 129:case 145:case 156:case 142:case 146:case 148:case 132:case 149:case 114:case 153:case 151:n=1;break;case 124:case 106:n=256;break;case 108:n=4096}return n&&(r.transformFlags|=n),r}function te(){return ee(108)}function re(){return ee(110)}function ne(){return ee(95)}function ie(e){return ee(e)}function ae(e){var t=[];return 1&e&&t.push(ie(93)),2&e&&t.push(ie(134)),512&e&&t.push(ie(88)),2048&e&&t.push(ie(85)),4&e&&t.push(ie(123)),8&e&&t.push(ie(121)),16&e&&t.push(ie(122)),128&e&&t.push(ie(126)),32&e&&t.push(ie(124)),64&e&&t.push(ie(143)),256&e&&t.push(ie(130)),t}function oe(e,t){var r=N(158);return r.left=e,r.right=si(t),r.transformFlags|=u(r.left)|l(r.right),r}function se(e){var t=N(159);return t.expression=g().parenthesizeExpressionOfComputedPropertyName(e),t.transformFlags|=33024|u(t.expression),t}function ce(e,t,r){var n=I(160,void 0,void 0,e);return n.constraint=t,n.default=r,n.transformFlags=1,n}function le(t,r,n,i,a,o,s){var c=U(161,t,r,i,o,s&&g().parenthesizeExpressionForDisallowedComma(s));return c.dotDotDotToken=n,c.questionToken=a,e.isThisIdentifier(c.name)?c.transformFlags=1:(c.transformFlags|=u(c.dotDotDotToken)|u(c.questionToken),a&&(c.transformFlags|=1),92&e.modifiersToFlags(c.modifiers)&&(c.transformFlags|=2048),(s||n)&&(c.transformFlags|=256)),c}function ue(e,t,r,n,i,a,o,s){return e.decorators!==t||e.modifiers!==r||e.dotDotDotToken!==n||e.name!==i||e.questionToken!==a||e.type!==o||e.initializer!==s?m(le(t,r,n,i,a,o,s),e):e}function de(e){var t=N(162);return t.expression=g().parenthesizeLeftSideOfAccess(e),t.transformFlags|=2049|u(t.expression),t}function pe(e,t,r,n){var i=I(163,void 0,e,t);return i.type=n,i.questionToken=r,i.transformFlags=1,i}function fe(e,t,r,n,i){return e.modifiers!==t||e.name!==r||e.questionToken!==n||e.type!==i?m(pe(t,r,n,i),e):e}function me(t,r,n,i,a,o){var s=U(164,t,r,n,a,o);return s.questionToken=i&&e.isQuestionToken(i)?i:void 0,s.exclamationToken=i&&e.isExclamationToken(i)?i:void 0,s.transformFlags|=u(s.questionToken)|u(s.exclamationToken)|4194304,(e.isComputedPropertyName(s.name)||e.hasStaticModifier(s)&&s.initializer)&&(s.transformFlags|=2048),(i||2&e.modifiersToFlags(s.modifiers))&&(s.transformFlags|=1),s}function ge(t,r,n,i,a,o,s){return t.decorators!==r||t.modifiers!==n||t.name!==i||t.questionToken!==(void 0!==a&&e.isQuestionToken(a)?a:void 0)||t.exclamationToken!==(void 0!==a&&e.isExclamationToken(a)?a:void 0)||t.type!==o||t.initializer!==s?m(me(r,n,i,a,o,s),t):t}function _e(e,t,r,n,i,a){var o=O(165,void 0,e,t,n,i,a);return o.questionToken=r,o.transformFlags=1,o}function he(e,t,r,n,i,a,o){return e.modifiers!==t||e.name!==r||e.questionToken!==n||e.typeParameters!==i||e.parameters!==a||e.type!==o?R(_e(t,r,n,i,a,o),e):e}function ye(t,r,n,i,a,o,s,c,l){var d=M(166,t,r,i,o,s,c,l);return d.asteriskToken=n,d.questionToken=a,d.transformFlags|=u(d.asteriskToken)|u(d.questionToken)|256,a&&(d.transformFlags|=1),256&e.modifiersToFlags(d.modifiers)?d.transformFlags|=n?32:64:n&&(d.transformFlags|=512),d}function ve(e,t,r,n,i,a,o,s,c,l){return e.decorators!==t||e.modifiers!==r||e.asteriskToken!==n||e.name!==i||e.questionToken!==a||e.typeParameters!==o||e.parameters!==s||e.type!==c||e.body!==l?L(ye(t,r,n,i,a,o,s,c,l),e):e}function be(e,t,r,n){var i=M(167,e,t,void 0,void 0,r,void 0,n);return i.transformFlags|=256,i}function ke(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.parameters!==n||e.body!==i?L(be(t,r,n,i),e):e}function xe(e,t,r,n,i,a){return M(168,e,t,r,void 0,n,i,a)}function Ee(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.parameters!==i||e.type!==a||e.body!==o?L(xe(t,r,n,i,a,o),e):e}function Se(e,t,r,n,i){return M(169,e,t,r,void 0,n,void 0,i)}function De(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.parameters!==i||e.body!==a?L(Se(t,r,n,i,a),e):e}function we(e,t,r){var n=O(170,void 0,void 0,void 0,e,t,r);return n.transformFlags=1,n}function Te(e,t,r){var n=O(171,void 0,void 0,void 0,e,t,r);return n.transformFlags=1,n}function Ce(e,t,r,n){var i=O(172,e,t,void 0,void 0,r,n);return i.transformFlags=1,i}function Ae(e,t,r,n,i){return e.parameters!==n||e.type!==i||e.decorators!==t||e.modifiers!==r?R(Ce(t,r,n,i),e):e}function Ne(e,t){var r=N(195);return r.type=e,r.literal=t,r.transformFlags=1,r}function Pe(e,t,r){var n=N(173);return n.assertsModifier=e,n.parameterName=si(t),n.type=r,n.transformFlags=1,n}function Ie(e,t){var r=N(174);return r.typeName=si(e),r.typeArguments=t&&g().parenthesizeTypeArguments(A(t)),r.transformFlags=1,r}function Fe(e,t,r){var n=O(175,void 0,void 0,void 0,e,t,r);return n.transformFlags=1,n}function Oe(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return 4===t.length?Re.apply(void 0,t):3===t.length?Me.apply(void 0,t):e.Debug.fail("Incorrect number of arguments specified.")}function Re(e,t,r,n){var i=O(176,void 0,e,void 0,t,r,n);return i.transformFlags=1,i}function Me(e,t,r){return Re(void 0,e,t,r)}function Le(e,t,r,n,i){return e.modifiers!==t||e.typeParameters!==r||e.parameters!==n||e.type!==i?R(Oe(t,r,n,i),e):e}function je(e,t,r,n){return Le(e,e.modifiers,t,r,n)}function Be(e){var t=N(177);return t.exprName=e,t.transformFlags=1,t}function ze(e){var t=N(178);return t.members=A(e),t.transformFlags=1,t}function Ue(e){var t=N(179);return t.elementType=g().parenthesizeElementTypeOfArrayType(e),t.transformFlags=1,t}function qe(e){var t=N(180);return t.elements=A(e),t.transformFlags=1,t}function Je(e,t,r,n){var i=N(193);return i.dotDotDotToken=e,i.name=t,i.questionToken=r,i.type=n,i.transformFlags=1,i}function Ve(e){var t=N(181);return t.type=g().parenthesizeElementTypeOfArrayType(e),t.transformFlags=1,t}function He(e){var t=N(182);return t.type=e,t.transformFlags=1,t}function Ke(e,t){var r=N(e);return r.types=g().parenthesizeConstituentTypesOfUnionOrIntersectionType(t),r.transformFlags=1,r}function We(e,t){return e.types!==t?m(Ke(e.kind,t),e):e}function Ge(e,t,r,n){var i=N(185);return i.checkType=g().parenthesizeMemberOfConditionalType(e),i.extendsType=g().parenthesizeMemberOfConditionalType(t),i.trueType=r,i.falseType=n,i.transformFlags=1,i}function $e(e){var t=N(186);return t.typeParameter=e,t.transformFlags=1,t}function Ye(e,t){var r=N(194);return r.head=e,r.templateSpans=A(t),r.transformFlags=1,r}function Xe(e,t,r,n){void 0===n&&(n=!1);var i=N(196);return i.argument=e,i.qualifier=t,i.typeArguments=r&&g().parenthesizeTypeArguments(r),i.isTypeOf=n,i.transformFlags=1,i}function Qe(e){var t=N(187);return t.type=e,t.transformFlags=1,t}function Ze(e,t){var r=N(189);return r.operator=e,r.type=g().parenthesizeMemberOfElementType(t),r.transformFlags=1,r}function et(e,t){var r=N(190);return r.objectType=g().parenthesizeMemberOfElementType(e),r.indexType=t,r.transformFlags=1,r}function tt(e,t,r,n,i){var a=N(191);return a.readonlyToken=e,a.typeParameter=t,a.nameType=r,a.questionToken=n,a.type=i,a.transformFlags=1,a}function rt(e){var t=N(192);return t.literal=e,t.transformFlags=1,t}function nt(e){var t=N(197);return t.elements=A(e),t.transformFlags|=131328|d(t.elements),8192&t.transformFlags&&(t.transformFlags|=16416),t}function it(e){var t=N(198);return t.elements=A(e),t.transformFlags|=131328|d(t.elements),t}function at(t,r,n,i){var a=z(199,void 0,void 0,n,i);return a.propertyName=si(r),a.dotDotDotToken=t,a.transformFlags|=256|u(a.dotDotDotToken),a.propertyName&&(a.transformFlags|=e.isIdentifier(a.propertyName)?l(a.propertyName):u(a.propertyName)),t&&(a.transformFlags|=8192),a}function ot(e){return N(e)}function st(e,t){var r=ot(200);return r.elements=g().parenthesizeExpressionsOfCommaDelimitedList(A(e)),r.multiLine=t,r.transformFlags|=d(r.elements),r}function ct(e,t){var r=ot(201);return r.properties=A(e),r.multiLine=t,r.transformFlags|=d(r.properties),r}function lt(t,r){var n=ot(202);return n.expression=g().parenthesizeLeftSideOfAccess(t),n.name=si(r),n.transformFlags=u(n.expression)|(e.isIdentifier(n.name)?l(n.name):u(n.name)),e.isSuperKeyword(t)&&(n.transformFlags|=96),n}function ut(t,r,n){var i=ot(202);return i.flags|=32,i.expression=g().parenthesizeLeftSideOfAccess(t),i.questionDotToken=r,i.name=si(n),i.transformFlags|=8|u(i.expression)|u(i.questionDotToken)|(e.isIdentifier(i.name)?l(i.name):u(i.name)),i}function dt(t,r,n,i){return e.Debug.assert(!!(32&t.flags),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),t.expression!==r||t.questionDotToken!==n||t.name!==i?m(ut(r,n,i),t):t}function pt(t,r){var n=ot(203);return n.expression=g().parenthesizeLeftSideOfAccess(t),n.argumentExpression=ci(r),n.transformFlags|=u(n.expression)|u(n.argumentExpression),e.isSuperKeyword(t)&&(n.transformFlags|=96),n}function ft(e,t,r){var n=ot(203);return n.flags|=32,n.expression=g().parenthesizeLeftSideOfAccess(e),n.questionDotToken=t,n.argumentExpression=ci(r),n.transformFlags|=u(n.expression)|u(n.questionDotToken)|u(n.argumentExpression)|8,n}function mt(t,r,n,i){return e.Debug.assert(!!(32&t.flags),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),t.expression!==r||t.questionDotToken!==n||t.argumentExpression!==i?m(ft(r,n,i),t):t}function gt(t,r,n){var i=ot(204);return i.expression=g().parenthesizeLeftSideOfAccess(t),i.typeArguments=oi(r),i.arguments=g().parenthesizeExpressionsOfCommaDelimitedList(A(n)),i.transformFlags|=u(i.expression)|d(i.typeArguments)|d(i.arguments),i.typeArguments&&(i.transformFlags|=1),e.isImportKeyword(i.expression)?i.transformFlags|=2097152:e.isSuperProperty(i.expression)&&(i.transformFlags|=4096),i}function _t(t,r,n,i){var a=ot(204);return a.flags|=32,a.expression=g().parenthesizeLeftSideOfAccess(t),a.questionDotToken=r,a.typeArguments=oi(n),a.arguments=g().parenthesizeExpressionsOfCommaDelimitedList(A(i)),a.transformFlags|=u(a.expression)|u(a.questionDotToken)|d(a.typeArguments)|d(a.arguments)|8,a.typeArguments&&(a.transformFlags|=1),e.isSuperProperty(a.expression)&&(a.transformFlags|=4096),a}function ht(t,r,n,i,a){return e.Debug.assert(!!(32&t.flags),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),t.expression!==r||t.questionDotToken!==n||t.typeArguments!==i||t.arguments!==a?m(_t(r,n,i,a),t):t}function yt(e,t,r){var n=ot(205);return n.expression=g().parenthesizeExpressionOfNew(e),n.typeArguments=oi(t),n.arguments=r?g().parenthesizeExpressionsOfCommaDelimitedList(r):void 0,n.transformFlags|=u(n.expression)|d(n.typeArguments)|d(n.arguments)|8,n.typeArguments&&(n.transformFlags|=1),n}function vt(t,r,n){var i=ot(206);return i.tag=g().parenthesizeLeftSideOfAccess(t),i.typeArguments=oi(r),i.template=n,i.transformFlags|=u(i.tag)|d(i.typeArguments)|u(i.template)|256,i.typeArguments&&(i.transformFlags|=1),e.hasInvalidEscape(i.template)&&(i.transformFlags|=32),i}function bt(e,t){var r=ot(207);return r.expression=g().parenthesizeOperandOfPrefixUnary(t),r.type=e,r.transformFlags|=u(r.expression)|u(r.type)|1,r}function kt(e,t,r){return e.type!==t||e.expression!==r?m(bt(t,r),e):e}function xt(e){var t=ot(208);return t.expression=e,t.transformFlags=u(t.expression),t}function Et(e,t){return e.expression!==t?m(xt(t),e):e}function St(t,r,n,i,a,o,s){var c=M(209,void 0,t,n,i,a,o,s);return c.asteriskToken=r,c.transformFlags|=u(c.asteriskToken),c.typeParameters&&(c.transformFlags|=1),256&e.modifiersToFlags(c.modifiers)?c.asteriskToken?c.transformFlags|=32:c.transformFlags|=64:c.asteriskToken&&(c.transformFlags|=512),c}function Dt(e,t,r,n,i,a,o,s){return e.name!==n||e.modifiers!==t||e.asteriskToken!==r||e.typeParameters!==i||e.parameters!==a||e.type!==o||e.body!==s?L(St(t,r,n,i,a,o,s),e):e}function wt(e,t,r){var n=ot(211);return n.expression=g().parenthesizeLeftSideOfAccess(e),n.arguments=g().parenthesizeExpressionsOfCommaDelimitedList(A(t)),n.body=r,n}function Tt(t,r,n,i,a,o){var s=M(210,void 0,t,void 0,r,n,i,g().parenthesizeConciseBodyOfArrowFunction(o));return s.equalsGreaterThanToken=null!=a?a:ee(38),s.transformFlags|=256|u(s.equalsGreaterThanToken),256&e.modifiersToFlags(s.modifiers)&&(s.transformFlags|=64),s}function Ct(e,t,r,n,i,a,o){return e.modifiers!==t||e.typeParameters!==r||e.parameters!==n||e.type!==i||e.equalsGreaterThanToken!==a||e.body!==o?L(Tt(t,r,n,i,a,o),e):e}function At(e){var t=ot(212);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=u(t.expression),t}function Nt(e){var t=ot(213);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=u(t.expression),t}function Pt(e){var t=ot(214);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=u(t.expression),t}function It(e){var t=ot(215);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=524384|u(t.expression),t}function Ft(e,t){var r=ot(216);return r.operator=e,r.operand=g().parenthesizeOperandOfPrefixUnary(t),r.transformFlags|=u(r.operand),r}function Ot(e,t){var r=ot(217);return r.operator=t,r.operand=g().parenthesizeOperandOfPostfixUnary(e),r.transformFlags=u(r.operand),r}function Rt(t,r,n){var i,a=ot(218),o="number"==typeof(i=r)?ee(i):i,s=o.kind;return a.left=g().parenthesizeLeftSideOfBinary(s,t),a.operatorToken=o,a.right=g().parenthesizeRightSideOfBinary(s,a.left,n),a.transformFlags|=u(a.left)|u(a.operatorToken)|u(a.right),60===s?a.transformFlags|=8:62===s?e.isObjectLiteralExpression(a.left)?a.transformFlags|=1312|Mt(a.left):e.isArrayLiteralExpression(a.left)&&(a.transformFlags|=1280|Mt(a.left)):42===s||66===s?a.transformFlags|=128:e.isLogicalOrCoalescingAssignmentOperator(s)&&(a.transformFlags|=4),a}function Mt(t){if(16384&t.transformFlags)return 16384;if(32&t.transformFlags)for(var r=0,n=e.getElementsOfBindingOrAssignmentPattern(t);r<n.length;r++){var i=n[r],a=e.getTargetOfBindingOrAssignmentElement(i);if(a&&e.isAssignmentPattern(a)){if(16384&a.transformFlags)return 16384;if(32&a.transformFlags){var o=Mt(a);if(o)return o}}}return 0}function Lt(e,t,r,n,i){var a=ot(219);return a.condition=g().parenthesizeConditionOfConditionalExpression(e),a.questionToken=null!=t?t:ee(57),a.whenTrue=g().parenthesizeBranchOfConditionalExpression(r),a.colonToken=null!=n?n:ee(58),a.whenFalse=g().parenthesizeBranchOfConditionalExpression(i),a.transformFlags|=u(a.condition)|u(a.questionToken)|u(a.whenTrue)|u(a.colonToken)|u(a.whenFalse),a}function jt(e,t){var r=ot(220);return r.head=e,r.templateSpans=A(t),r.transformFlags|=u(r.head)|d(r.templateSpans)|256,r}function Bt(r,n,i,a){void 0===a&&(a=0),e.Debug.assert(!(-2049&a),"Unsupported template flags.");var o=void 0;if(void 0!==i&&i!==n&&(o=function(r,n){t||(t=e.createScanner(99,!1,0));switch(r){case 14:t.setText("`"+n+"`");break;case 15:t.setText("`"+n+"${");break;case 16:t.setText("}"+n+"${");break;case 17:t.setText("}"+n+"`")}var i,a=t.scan();23===a&&(a=t.reScanTemplateToken(!1));if(t.isUnterminated())return t.setText(void 0),c;switch(a){case 14:case 15:case 16:case 17:i=t.getTokenValue()}if(void 0===i||1!==t.scan())return t.setText(void 0),c;return t.setText(void 0),i}(r,i),"object"==typeof o))return e.Debug.fail("Invalid raw text");if(void 0===n){if(void 0===o)return e.Debug.fail("Arguments 'text' and 'rawText' may not both be undefined.");n=o}else void 0!==o&&e.Debug.assert(n===o,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return zt(r,n,i,a)}function zt(e,t,r,n){var i=Z(e);return i.text=t,i.rawText=r,i.templateFlags=2048&n,i.transformFlags|=256,i.templateFlags&&(i.transformFlags|=32),i}function Ut(t,r){e.Debug.assert(!t||!!r,"A `YieldExpression` with an asteriskToken must have an expression.");var n=ot(221);return n.expression=r&&g().parenthesizeExpressionForDisallowedComma(r),n.asteriskToken=t,n.transformFlags|=262432|(u(n.expression)|u(n.asteriskToken)),n}function qt(e){var t=ot(222);return t.expression=g().parenthesizeExpressionForDisallowedComma(e),t.transformFlags|=8448|u(t.expression),t}function Jt(e,t,r,n,i,a){var o=B(223,e,t,r,n,i,a);return o.transformFlags|=256,o}function Vt(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(Jt(t,r,n,i,a,o),e):e}function Ht(e,t){var r=N(225);return r.expression=g().parenthesizeLeftSideOfAccess(e),r.typeArguments=t&&g().parenthesizeTypeArguments(t),r.transformFlags|=u(r.expression)|d(r.typeArguments)|256,r}function Kt(e,t){var r=ot(226);return r.expression=e,r.type=t,r.transformFlags|=u(r.expression)|u(r.type)|1,r}function Wt(e,t,r){return e.expression!==t||e.type!==r?m(Kt(t,r),e):e}function Gt(e){var t=ot(227);return t.expression=g().parenthesizeLeftSideOfAccess(e),t.transformFlags|=1|u(t.expression),t}function $t(t,r){return e.isNonNullChain(t)?Xt(t,r):t.expression!==r?m(Gt(r),t):t}function Yt(e){var t=ot(227);return t.flags|=32,t.expression=g().parenthesizeLeftSideOfAccess(e),t.transformFlags|=1|u(t.expression),t}function Xt(t,r){return e.Debug.assert(!!(32&t.flags),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),t.expression!==r?m(Yt(r),t):t}function Qt(t,r){var n=ot(228);switch(n.keywordToken=t,n.name=r,n.transformFlags|=u(n.name),t){case 103:n.transformFlags|=256;break;case 100:n.transformFlags|=4;break;default:return e.Debug.assertNever(t)}return n}function Zt(e,t){var r=N(230);return r.expression=e,r.literal=t,r.transformFlags|=u(r.expression)|u(r.literal)|256,r}function er(e,t){var r=N(232);return r.statements=A(e),r.multiLine=t,r.transformFlags|=d(r.statements),r}function tr(t,r){var n=P(234,void 0,t);return n.declarationList=e.isArray(r)?kr(r):r,n.transformFlags|=u(n.declarationList),2&e.modifiersToFlags(n.modifiers)&&(n.transformFlags=1),n}function rr(e,t,r){return e.modifiers!==t||e.declarationList!==r?m(tr(t,r),e):e}function nr(){return N(233)}function ir(e){var t=N(235);return t.expression=g().parenthesizeExpressionOfExpressionStatement(e),t.transformFlags|=u(t.expression),t}function ar(e,t,r){var n=N(236);return n.expression=e,n.thenStatement=li(t),n.elseStatement=li(r),n.transformFlags|=u(n.expression)|u(n.thenStatement)|u(n.elseStatement),n}function or(e,t){var r=N(237);return r.statement=li(e),r.expression=t,r.transformFlags|=u(r.statement)|u(r.expression),r}function sr(e,t){var r=N(238);return r.expression=e,r.statement=li(t),r.transformFlags|=u(r.expression)|u(r.statement),r}function cr(e,t,r,n){var i=N(239);return i.initializer=e,i.condition=t,i.incrementor=r,i.statement=li(n),i.transformFlags|=u(i.initializer)|u(i.condition)|u(i.incrementor)|u(i.statement),i}function lr(e,t,r){var n=N(240);return n.initializer=e,n.expression=t,n.statement=li(r),n.transformFlags|=u(n.initializer)|u(n.expression)|u(n.statement),n}function ur(e,t,r,n){var i=N(241);return i.awaitModifier=e,i.initializer=t,i.expression=g().parenthesizeExpressionForDisallowedComma(r),i.statement=li(n),i.transformFlags|=u(i.awaitModifier)|u(i.initializer)|u(i.expression)|u(i.statement)|256,e&&(i.transformFlags|=32),i}function dr(e){var t=N(242);return t.label=si(e),t.transformFlags|=1048576|u(t.label),t}function pr(e){var t=N(243);return t.label=si(e),t.transformFlags|=1048576|u(t.label),t}function fr(e){var t=N(244);return t.expression=e,t.transformFlags|=1048608|u(t.expression),t}function mr(e,t){var r=N(245);return r.expression=e,r.statement=li(t),r.transformFlags|=u(r.expression)|u(r.statement),r}function gr(e,t){var r=N(246);return r.expression=g().parenthesizeExpressionForDisallowedComma(e),r.caseBlock=t,r.transformFlags|=u(r.expression)|u(r.caseBlock),r}function _r(e,t){var r=N(247);return r.label=si(e),r.statement=li(t),r.transformFlags|=u(r.label)|u(r.statement),r}function hr(e,t,r){return e.label!==t||e.statement!==r?m(_r(t,r),e):e}function yr(e){var t=N(248);return t.expression=e,t.transformFlags|=u(t.expression),t}function vr(e,t,r){var n=N(249);return n.tryBlock=e,n.catchClause=t,n.finallyBlock=r,n.transformFlags|=u(n.tryBlock)|u(n.catchClause)|u(n.finallyBlock),n}function br(e,t,r,n){var i=U(251,void 0,void 0,e,r,n&&g().parenthesizeExpressionForDisallowedComma(n));return i.exclamationToken=t,i.transformFlags|=u(i.exclamationToken),t&&(i.transformFlags|=1),i}function kr(e,t){void 0===t&&(t=0);var r=N(252);return r.flags|=3&t,r.declarations=A(e),r.transformFlags|=1048576|d(r.declarations),3&t&&(r.transformFlags|=65792),r}function xr(t,r,n,i,a,o,s,c){var l=M(253,t,r,i,a,o,s,c);return l.asteriskToken=n,!l.body||2&e.modifiersToFlags(l.modifiers)?l.transformFlags=1:(l.transformFlags|=1048576|u(l.asteriskToken),256&e.modifiersToFlags(l.modifiers)?l.asteriskToken?l.transformFlags|=32:l.transformFlags|=64:l.asteriskToken&&(l.transformFlags|=512)),l}function Er(e,t,r,n,i,a,o,s,c){return e.decorators!==t||e.modifiers!==r||e.asteriskToken!==n||e.name!==i||e.typeParameters!==a||e.parameters!==o||e.type!==s||e.body!==c?L(xr(t,r,n,i,a,o,s,c),e):e}function Sr(t,r,n,i,a,o){var s=B(254,t,r,n,i,a,o);return 2&e.modifiersToFlags(s.modifiers)?s.transformFlags=1:(s.transformFlags|=256,2048&s.transformFlags&&(s.transformFlags|=1)),s}function Dr(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(Sr(t,r,n,i,a,o),e):e}function wr(t,r,n,i,a,o){var s=B(255,t,r,n,i,a,o);return 2&e.modifiersToFlags(s.modifiers)?s.transformFlags=1:(s.transformFlags|=256,2048&s.transformFlags&&(s.transformFlags|=1)),s}function Tr(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(wr(t,r,n,i,a,o),e):e}function Cr(e,t,r,n,i,a){var o=j(256,e,t,r,n,i);return o.members=A(a),o.transformFlags=1,o}function Ar(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(Cr(t,r,n,i,a,o),e):e}function Nr(e,t,r,n,i){var a=F(257,e,t,r,n);return a.type=i,a.transformFlags=1,a}function Pr(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.type!==a?m(Nr(t,r,n,i,a),e):e}function Ir(e,t,r,n){var i=I(258,e,t,r);return i.members=A(n),i.transformFlags|=1|d(i.members),i.transformFlags&=-8388609,i}function Fr(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.members!==i?m(Ir(t,r,n,i),e):e}function Or(t,r,n,i,a){void 0===a&&(a=0);var o=P(259,t,r);return o.flags|=1044&a,o.name=n,o.body=i,2&e.modifiersToFlags(o.modifiers)?o.transformFlags=1:o.transformFlags|=u(o.name)|u(o.body)|1,o.transformFlags&=-8388609,o}function Rr(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.body!==i?m(Or(t,r,n,i,e.flags),e):e}function Mr(e){var t=N(260);return t.statements=A(e),t.transformFlags|=d(t.statements),t}function Lr(e){var t=N(261);return t.clauses=A(e),t.transformFlags|=d(t.clauses),t}function jr(e){var t=I(262,void 0,void 0,e);return t.transformFlags=1,t}function Br(t,r,n,i,a){var o=I(263,t,r,i);return o.isTypeOnly=n,o.moduleReference=a,o.transformFlags|=u(o.moduleReference),e.isExternalModuleReference(o.moduleReference)||(o.transformFlags|=1),o.transformFlags&=-8388609,o}function zr(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.isTypeOnly!==n||e.name!==i||e.moduleReference!==a?m(Br(t,r,n,i,a),e):e}function Ur(e,t,r,n){var i=P(264,e,t);return i.importClause=r,i.moduleSpecifier=n,i.transformFlags|=u(i.importClause)|u(i.moduleSpecifier),i.transformFlags&=-8388609,i}function qr(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.importClause!==n||e.moduleSpecifier!==i?m(Ur(t,r,n,i),e):e}function Jr(e,t,r){var n=N(265);return n.isTypeOnly=e,n.name=t,n.namedBindings=r,n.transformFlags|=u(n.name)|u(n.namedBindings),e&&(n.transformFlags|=1),n.transformFlags&=-8388609,n}function Vr(e){var t=N(266);return t.name=e,t.transformFlags|=u(t.name),t.transformFlags&=-8388609,t}function Hr(e){var t=N(272);return t.name=e,t.transformFlags|=4|u(t.name),t.transformFlags&=-8388609,t}function Kr(e){var t=N(267);return t.elements=A(e),t.transformFlags|=d(t.elements),t.transformFlags&=-8388609,t}function Wr(e,t){var r=N(268);return r.propertyName=e,r.name=t,r.transformFlags|=u(r.propertyName)|u(r.name),r.transformFlags&=-8388609,r}function Gr(e,t,r,n){var i=P(269,e,t);return i.isExportEquals=r,i.expression=r?g().parenthesizeRightSideOfBinary(62,void 0,n):g().parenthesizeExpressionOfExportDefault(n),i.transformFlags|=u(i.expression),i.transformFlags&=-8388609,i}function $r(e,t,r,n){return e.decorators!==t||e.modifiers!==r||e.expression!==n?m(Gr(t,r,e.isExportEquals,n),e):e}function Yr(e,t,r,n,i){var a=P(270,e,t);return a.isTypeOnly=r,a.exportClause=n,a.moduleSpecifier=i,a.transformFlags|=u(a.exportClause)|u(a.moduleSpecifier),a.transformFlags&=-8388609,a}function Xr(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.isTypeOnly!==n||e.exportClause!==i||e.moduleSpecifier!==a?m(Yr(t,r,n,i,a),e):e}function Qr(e){var t=N(271);return t.elements=A(e),t.transformFlags|=d(t.elements),t.transformFlags&=-8388609,t}function Zr(e,t){var r=N(273);return r.propertyName=si(e),r.name=si(t),r.transformFlags|=u(r.propertyName)|u(r.name),r.transformFlags&=-8388609,r}function en(e){var t=N(275);return t.expression=e,t.transformFlags|=u(t.expression),t.transformFlags&=-8388609,t}function tn(e,t){var r=N(e);return r.type=t,r}function rn(e,t){return O(311,void 0,void 0,void 0,void 0,e,t)}function nn(e,t){void 0===t&&(t=!1);var r=N(315);return r.jsDocPropertyTags=oi(e),r.isArrayType=t,r}function an(e){var t=N(304);return t.type=e,t}function on(e,t,r){var n=N(316);return n.typeParameters=oi(e),n.parameters=A(t),n.type=r,n}function sn(t){var r=s(t.kind);return t.tagName.escapedText===e.escapeLeadingUnderscores(r)?t.tagName:Y(r)}function cn(e,t,r){var n=N(e);return n.tagName=t,n.comment=r,n}function ln(e,t,r,n){var i=cn(333,null!=e?e:Y("template"),n);return i.constraint=t,i.typeParameters=A(r),i}function un(t,r,n,i){var a=cn(334,null!=t?t:Y("typedef"),i);return a.typeExpression=r,a.fullName=n,a.name=e.getJSDocTypeAliasName(n),a}function dn(e,t,r,n,i,a){var o=cn(329,null!=e?e:Y("param"),a);return o.typeExpression=n,o.name=t,o.isNameFirst=!!i,o.isBracketed=r,o}function pn(e,t,r,n,i,a){var o=cn(336,null!=e?e:Y("prop"),a);return o.typeExpression=n,o.name=t,o.isNameFirst=!!i,o.isBracketed=r,o}function fn(t,r,n,i){var a=cn(327,null!=t?t:Y("callback"),i);return a.typeExpression=r,a.fullName=n,a.name=e.getJSDocTypeAliasName(n),a}function mn(e,t,r){var n=cn(318,null!=e?e:Y("augments"),r);return n.class=t,n}function gn(e,t,r){var n=cn(319,null!=e?e:Y("implements"),r);return n.class=t,n}function _n(e,t,r){var n=cn(335,null!=e?e:Y("see"),r);return n.name=t,n}function hn(e){var t=N(305);return t.name=e,t}function yn(e,t,r){return cn(e,null!=t?t:Y(s(e)),r)}function vn(e,t,r,n){var i=cn(e,null!=t?t:Y(s(e)),n);return i.typeExpression=r,i}function bn(e,t){return cn(317,e,t)}function kn(e,t){var r=N(314);return r.comment=e,r.tags=oi(t),r}function xn(e,t,r){var n=N(276);return n.openingElement=e,n.children=A(t),n.closingElement=r,n.transformFlags|=u(n.openingElement)|d(n.children)|u(n.closingElement)|2,n}function En(e,t,r){var n=N(277);return n.tagName=e,n.typeArguments=oi(t),n.attributes=r,n.transformFlags|=u(n.tagName)|d(n.typeArguments)|u(n.attributes)|2,n.typeArguments&&(n.transformFlags|=1),n}function Sn(e,t,r){var n=N(278);return n.tagName=e,n.typeArguments=oi(t),n.attributes=r,n.transformFlags|=u(n.tagName)|d(n.typeArguments)|u(n.attributes)|2,t&&(n.transformFlags|=1),n}function Dn(e){var t=N(279);return t.tagName=e,t.transformFlags|=2|u(t.tagName),t}function wn(e,t,r){var n=N(280);return n.openingFragment=e,n.children=A(t),n.closingFragment=r,n.transformFlags|=u(n.openingFragment)|d(n.children)|u(n.closingFragment)|2,n}function Tn(e,t){var r=N(11);return r.text=e,r.containsOnlyTriviaWhiteSpaces=!!t,r.transformFlags|=2,r}function Cn(e,t){var r=N(283);return r.name=e,r.initializer=t,r.transformFlags|=u(r.name)|u(r.initializer)|2,r}function An(e){var t=N(284);return t.properties=A(e),t.transformFlags|=2|d(t.properties),t}function Nn(e){var t=N(285);return t.expression=e,t.transformFlags|=2|u(t.expression),t}function Pn(e,t){var r=N(286);return r.dotDotDotToken=e,r.expression=t,r.transformFlags|=u(r.dotDotDotToken)|u(r.expression)|2,r}function In(e,t){var r=N(287);return r.expression=g().parenthesizeExpressionForDisallowedComma(e),r.statements=A(t),r.transformFlags|=u(r.expression)|d(r.statements),r}function Fn(e){var t=N(288);return t.statements=A(e),t.transformFlags=d(t.statements),t}function On(t,r){var n=N(289);switch(n.token=t,n.types=A(r),n.transformFlags|=d(n.types),t){case 94:n.transformFlags|=256;break;case 117:n.transformFlags|=1;break;default:return e.Debug.assertNever(t)}return n}function Rn(t,r){var n=N(290);return t=e.isString(t)?br(t,void 0,void 0,void 0):t,n.variableDeclaration=t,n.block=r,n.transformFlags|=u(n.variableDeclaration)|u(n.block),t||(n.transformFlags|=16),n}function Mn(e,t){var r=I(291,void 0,void 0,e);return r.initializer=g().parenthesizeExpressionForDisallowedComma(t),r.transformFlags|=u(r.name)|u(r.initializer),r}function Ln(e,t){var r=I(292,void 0,void 0,e);return r.objectAssignmentInitializer=t&&g().parenthesizeExpressionForDisallowedComma(t),r.transformFlags|=256|u(r.objectAssignmentInitializer),r}function jn(e){var t=N(293);return t.expression=g().parenthesizeExpressionForDisallowedComma(e),t.transformFlags|=16416|u(t.expression),t}function Bn(e,t){var r=N(294);return r.name=si(e),r.initializer=t&&g().parenthesizeExpressionForDisallowedComma(t),r.transformFlags|=u(r.name)|u(r.initializer)|1,r}function zn(t,r){void 0===r&&(r=e.emptyArray);var n=N(301);return n.prepends=r,n.sourceFiles=t,n}function Un(e,t){var r=N(e);return r.data=t,r}function qn(t,r){var n=N(339);return n.expression=t,n.original=r,n.transformFlags|=1|u(n.expression),e.setTextRange(n,r),n}function Jn(e,t){return e.expression!==t?m(qn(t,e.original),e):e}function Vn(t){if(e.nodeIsSynthesized(t)&&!e.isParseTreeNode(t)&&!t.original&&!t.emitNode&&!t.id){if(e.isCommaListExpression(t))return t.elements;if(e.isBinaryExpression(t)&&e.isCommaToken(t.operatorToken))return[t.left,t.right]}return t}function Hn(t){var r=N(340);return r.elements=A(e.sameFlatMap(t,Vn)),r.transformFlags|=d(r.elements),r}function Kn(e,t){var r=N(343);return r.expression=e,r.thisArg=t,r.transformFlags|=u(r.expression)|u(r.thisArg),r}function Wn(t){if(void 0===t)return t;var r=e.isSourceFile(t)?f.createBaseSourceFileNode(300):e.isIdentifier(t)?f.createBaseIdentifierNode(78):e.isPrivateIdentifier(t)?f.createBasePrivateIdentifierNode(79):e.isNodeKind(t.kind)?f.createBaseNode(t.kind):f.createBaseTokenNode(t.kind);for(var n in r.flags|=-9&t.flags,r.transformFlags=t.transformFlags,y(r,t),t)!r.hasOwnProperty(n)&&t.hasOwnProperty(n)&&(r[n]=t[n]);return r}function Gn(){return Pt(J("0"))}function $n(e,t,r){return gt(lt(e,t),void 0,r)}function Yn(e,t,r){return $n(Y(e),t,r)}function Xn(e,t,r){return!!r&&(e.push(Mn(t,r)),!0)}function Qn(t,r){var n=e.skipParentheses(t);switch(n.kind){case 78:return r;case 108:case 8:case 9:case 10:return!1;case 200:return 0!==n.elements.length;case 201:return n.properties.length>0;default:return!0}}function Zn(t,r,n,i){void 0===i&&(i=0);var a=e.getNameOfDeclaration(t);if(a&&e.isIdentifier(a)&&!e.isGeneratedIdentifier(a)){var o=e.setParent(e.setTextRange(Wn(a),a),a.parent);return i|=e.getEmitFlags(a),n||(i|=48),r||(i|=1536),i&&e.setEmitFlags(o,i),o}return Q(t)}function ei(e,t,r){return Zn(e,t,r,8192)}function ti(t,r,n,i){var a=lt(t,e.nodeIsSynthesized(r)?r:Wn(r));e.setTextRange(a,r);var o=0;return i||(o|=48),n||(o|=1536),o&&e.setEmitFlags(a,o),a}function ri(){return e.startOnNewLine(ir(K("use strict")))}function ni(t,r,n){e.Debug.assert(0===r.length,"Prologue directives should be at the first statement in the target statements array");for(var i,a=!1,o=0,s=t.length;o<s;){var c=t[o];if(!e.isPrologueDirective(c))break;i=c,e.isStringLiteral(i.expression)&&"use strict"===i.expression.text&&(a=!0),r.push(c),o++}return n&&!a&&r.push(ri()),o}function ii(t,r,n,i,a){void 0===a&&(a=e.returnTrue);for(var o=t.length;void 0!==n&&n<o;){var s=t[n];if(!(1048576&e.getEmitFlags(s)&&a(s)))break;e.append(r,i?e.visitNode(s,i,e.isStatement):s),n++}return n}function ai(e,t,r){for(var n=r;n<e.length&&t(e[n]);)n++;return n}function oi(e){return e?A(e):void 0}function si(e){return"string"==typeof e?Y(e):e}function ci(e){return"string"==typeof e?K(e):"number"==typeof e?J(e):"boolean"==typeof e?e?re():ne():e}function li(t){return t&&e.isNotEmittedStatement(t)?e.setTextRange(y(nr(),t),t):t}}function a(t,r){return t!==r&&e.setTextRange(t,r),t}function o(t,r){return t!==r&&(y(t,r),e.setTextRange(t,r)),t}function s(t){switch(t){case 332:return"type";case 330:return"returns";case 331:return"this";case 328:return"enum";case 320:return"author";case 322:return"class";case 323:return"public";case 324:return"private";case 325:return"protected";case 326:return"readonly";case 333:return"template";case 334:return"typedef";case 329:return"param";case 336:return"prop";case 327:return"callback";case 318:return"augments";case 319:return"implements";default:return e.Debug.fail("Unsupported kind: "+e.Debug.formatSyntaxKind(t))}}!function(e){e[e.None=0]="None",e[e.NoParenthesizerRules=1]="NoParenthesizerRules",e[e.NoNodeConverters=2]="NoNodeConverters",e[e.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",e[e.NoOriginalNode=8]="NoOriginalNode"}(e.NodeFactoryFlags||(e.NodeFactoryFlags={})),e.createNodeFactory=n;var c={};function l(e){return-8388609&u(e)}function u(t){if(!t)return 0;var r,n=t.transformFlags&~f(t.kind);return e.isNamedDeclaration(t)&&e.isPropertyName(t.name)?(r=t.name,n|4096&r.transformFlags):n}function d(e){return e?e.transformFlags:0}function p(e){for(var t=0,r=0,n=e;r<n.length;r++){t|=u(n[r])}e.transformFlags=t}function f(e){if(e>=173&&e<=196)return-2;switch(e){case 204:case 205:case 200:case 197:case 198:return 536879104;case 259:return 546379776;case 161:case 207:case 226:case 339:case 208:case 106:case 202:case 203:default:return 536870912;case 210:return 547309568;case 209:case 253:return 547313664;case 252:return 537018368;case 254:case 223:return 536905728;case 167:return 547311616;case 164:return 536875008;case 166:case 168:case 169:return 538923008;case 129:case 145:case 156:case 142:case 148:case 146:case 132:case 149:case 114:case 160:case 163:case 165:case 170:case 171:case 172:case 256:case 257:return-2;case 201:return 536922112;case 290:return 536887296}}e.getTransformFlagsSubtreeExclusions=f;var m=e.createBaseNodeFactory();function g(e){return e.flags|=8,e}var _,h={createBaseSourceFileNode:function(e){return g(m.createBaseSourceFileNode(e))},createBaseIdentifierNode:function(e){return g(m.createBaseIdentifierNode(e))},createBasePrivateIdentifierNode:function(e){return g(m.createBasePrivateIdentifierNode(e))},createBaseTokenNode:function(e){return g(m.createBaseTokenNode(e))},createBaseNode:function(e){return g(m.createBaseNode(e))}};function y(t,r){if(t.original=r,r){var n=r.emitNode;n&&(t.emitNode=function(t,r){var n=t.flags,i=t.leadingComments,a=t.trailingComments,o=t.commentRange,s=t.sourceMapRange,c=t.tokenSourceMapRanges,l=t.constantValue,u=t.helpers,d=t.startsOnNewLine;r||(r={});i&&(r.leadingComments=e.addRange(i.slice(),r.leadingComments));a&&(r.trailingComments=e.addRange(a.slice(),r.trailingComments));n&&(r.flags=n);o&&(r.commentRange=o);s&&(r.sourceMapRange=s);c&&(r.tokenSourceMapRanges=function(e,t){t||(t=[]);for(var r in e)t[r]=e[r];return t}(c,r.tokenSourceMapRanges));void 0!==l&&(r.constantValue=l);if(u)for(var p=0,f=u;p<f.length;p++){var m=f[p];r.helpers=e.appendIfUnique(r.helpers,m)}void 0!==d&&(r.startsOnNewLine=d);return r}(n,t.emitNode))}return t}e.factory=n(4,h),e.createUnparsedSourceFile=function(t,r,n){var i,a,o,s,c,l,u,d,p,f;e.isString(t)?(o="",s=t,c=t.length,l=r,u=n):(e.Debug.assert("js"===r||"dts"===r),o=("js"===r?t.javascriptPath:t.declarationPath)||"",l="js"===r?t.javascriptMapPath:t.declarationMapPath,d=function(){return"js"===r?t.javascriptText:t.declarationText},p=function(){return"js"===r?t.javascriptMapText:t.declarationMapText},c=function(){return d().length},t.buildInfo&&t.buildInfo.bundle&&(e.Debug.assert(void 0===n||"boolean"==typeof n),i=n,a="js"===r?t.buildInfo.bundle.js:t.buildInfo.bundle.dts,f=t.oldFileOfCurrentEmit));var m=f?function(t){for(var r,n,i=0,a=t.sections;i<a.length;i++){var o=a[i];switch(o.kind){case"internal":case"text":r=e.append(r,e.setTextRange(e.factory.createUnparsedTextLike(o.data,"internal"===o.kind),o));break;case"no-default-lib":case"reference":case"type":case"lib":n=e.append(n,e.setTextRange(e.factory.createUnparsedSyntheticReference(o),o));break;case"prologue":case"emitHelpers":case"prepend":break;default:e.Debug.assertNever(o)}}var s=e.factory.createUnparsedSource(e.emptyArray,n,null!=r?r:e.emptyArray);return e.setEachParent(n,s),e.setEachParent(r,s),s.helpers=e.map(t.sources&&t.sources.helpers,(function(t){return e.getAllUnscopedEmitHelpers().get(t)})),s}(e.Debug.assertDefined(a)):function(t,r,n){for(var i,a,o,s,c,l,u,d,p=0,f=t?t.sections:e.emptyArray;p<f.length;p++){var m=f[p];switch(m.kind){case"prologue":i=e.append(i,e.setTextRange(e.factory.createUnparsedPrologue(m.data),m));break;case"emitHelpers":a=e.append(a,e.getAllUnscopedEmitHelpers().get(m.data));break;case"no-default-lib":d=!0;break;case"reference":o=e.append(o,{pos:-1,end:-1,fileName:m.data});break;case"type":s=e.append(s,m.data);break;case"lib":c=e.append(c,{pos:-1,end:-1,fileName:m.data});break;case"prepend":for(var g=void 0,_=0,h=m.texts;_<h.length;_++){var y=h[_];r&&"internal"===y.kind||(g=e.append(g,e.setTextRange(e.factory.createUnparsedTextLike(y.data,"internal"===y.kind),y)))}l=e.addRange(l,g),u=e.append(u,e.factory.createUnparsedPrepend(m.data,null!=g?g:e.emptyArray));break;case"internal":if(r){u||(u=[]);break}case"text":u=e.append(u,e.setTextRange(e.factory.createUnparsedTextLike(m.data,"internal"===m.kind),m));break;default:e.Debug.assertNever(m)}}if(!u){var v=e.factory.createUnparsedTextLike(void 0,!1);e.setTextRangePosWidth(v,0,"function"==typeof n?n():n),u=[v]}var b=e.parseNodeFactory.createUnparsedSource(null!=i?i:e.emptyArray,void 0,u);return e.setEachParent(i,b),e.setEachParent(u,b),e.setEachParent(l,b),b.hasNoDefaultLib=d,b.helpers=a,b.referencedFiles=o||e.emptyArray,b.typeReferenceDirectives=s,b.libReferenceDirectives=c||e.emptyArray,b}(a,i,c);return m.fileName=o,m.sourceMapPath=l,m.oldFileOfCurrentEmit=f,d&&p?(Object.defineProperty(m,"text",{get:d}),Object.defineProperty(m,"sourceMapText",{get:p})):(e.Debug.assert(!f),m.text=null!=s?s:"",m.sourceMapText=u),m},e.createInputFiles=function(t,r,n,i,a,o,s,c,l,u,d){var p=e.parseNodeFactory.createInputFiles();if(e.isString(t))p.javascriptText=t,p.javascriptMapPath=n,p.javascriptMapText=i,p.declarationText=r,p.declarationMapPath=a,p.declarationMapText=o,p.javascriptPath=s,p.declarationPath=c,p.buildInfoPath=l,p.buildInfo=u,p.oldFileOfCurrentEmit=d;else{var f,m=new e.Map,g=function(e){if(void 0!==e){var r=m.get(e);return void 0===r&&(r=t(e),m.set(e,void 0!==r&&r)),!1!==r?r:void 0}},_=function(e){var t=g(e);return void 0!==t?t:"/* Input file "+e+" was missing */\r\n"};p.javascriptPath=r,p.javascriptMapPath=n,p.declarationPath=e.Debug.assertDefined(i),p.declarationMapPath=a,p.buildInfoPath=o,Object.defineProperties(p,{javascriptText:{get:function(){return _(r)}},javascriptMapText:{get:function(){return g(n)}},declarationText:{get:function(){return _(e.Debug.assertDefined(i))}},declarationMapText:{get:function(){return g(a)}},buildInfo:{get:function(){return function(t){if(void 0===f){var r=t();f=void 0!==r&&e.getBuildInfo(r)}return f||void 0}((function(){return g(o)}))}}})}return p},e.createSourceMapSource=function(t,r,n){return new(_||(_=e.objectAllocator.getSourceMapSourceConstructor()))(t,r,n)},e.setOriginalNode=y}(d||(d={})),function(e){function t(r){var n;if(!r.emitNode){if(e.isParseTreeNode(r)){if(300===r.kind)return r.emitNode={annotatedNodes:[r]};t(null!==(n=e.getSourceFileOfNode(e.getParseTreeNode(e.getSourceFileOfNode(r))))&&void 0!==n?n:e.Debug.fail("Could not determine parsed source file.")).annotatedNodes.push(r)}r.emitNode={}}return r.emitNode}function r(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.leadingComments}function n(e,r){return t(e).leadingComments=r,e}function i(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.trailingComments}function a(e,r){return t(e).trailingComments=r,e}e.getOrCreateEmitNode=t,e.disposeEmitNodes=function(t){var r,n,i=null===(n=null===(r=e.getSourceFileOfNode(e.getParseTreeNode(t)))||void 0===r?void 0:r.emitNode)||void 0===n?void 0:n.annotatedNodes;if(i)for(var a=0,o=i;a<o.length;a++){o[a].emitNode=void 0}},e.removeAllComments=function(e){var r=t(e);return r.flags|=1536,r.leadingComments=void 0,r.trailingComments=void 0,e},e.setEmitFlags=function(e,r){return t(e).flags=r,e},e.addEmitFlags=function(e,r){var n=t(e);return n.flags=n.flags|r,e},e.getSourceMapRange=function(e){var t,r;return null!==(r=null===(t=e.emitNode)||void 0===t?void 0:t.sourceMapRange)&&void 0!==r?r:e},e.setSourceMapRange=function(e,r){return t(e).sourceMapRange=r,e},e.getTokenSourceMapRange=function(e,t){var r,n;return null===(n=null===(r=e.emitNode)||void 0===r?void 0:r.tokenSourceMapRanges)||void 0===n?void 0:n[t]},e.setTokenSourceMapRange=function(e,r,n){var i,a=t(e);return(null!==(i=a.tokenSourceMapRanges)&&void 0!==i?i:a.tokenSourceMapRanges=[])[r]=n,e},e.getStartsOnNewLine=function(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.startsOnNewLine},e.setStartsOnNewLine=function(e,r){return t(e).startsOnNewLine=r,e},e.getCommentRange=function(e){var t,r;return null!==(r=null===(t=e.emitNode)||void 0===t?void 0:t.commentRange)&&void 0!==r?r:e},e.setCommentRange=function(e,r){return t(e).commentRange=r,e},e.getSyntheticLeadingComments=r,e.setSyntheticLeadingComments=n,e.addSyntheticLeadingComment=function(t,i,a,o){return n(t,e.append(r(t),{kind:i,pos:-1,end:-1,hasTrailingNewLine:o,text:a}))},e.getSyntheticTrailingComments=i,e.setSyntheticTrailingComments=a,e.addSyntheticTrailingComment=function(t,r,n,o){return a(t,e.append(i(t),{kind:r,pos:-1,end:-1,hasTrailingNewLine:o,text:n}))},e.moveSyntheticComments=function(e,o){n(e,r(o)),a(e,i(o));var s=t(o);return s.leadingComments=void 0,s.trailingComments=void 0,e},e.getConstantValue=function(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.constantValue},e.setConstantValue=function(e,r){return t(e).constantValue=r,e},e.addEmitHelper=function(r,n){var i=t(r);return i.helpers=e.append(i.helpers,n),r},e.addEmitHelpers=function(r,n){if(e.some(n))for(var i=t(r),a=0,o=n;a<o.length;a++){var s=o[a];i.helpers=e.appendIfUnique(i.helpers,s)}return r},e.removeEmitHelper=function(t,r){var n,i=null===(n=t.emitNode)||void 0===n?void 0:n.helpers;return!!i&&e.orderedRemoveItem(i,r)},e.getEmitHelpers=function(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.helpers},e.moveEmitHelpers=function(r,n,i){var a=r.emitNode,o=a&&a.helpers;if(e.some(o)){for(var s=t(n),c=0,l=0;l<o.length;l++){var u=o[l];i(u)?(c++,s.helpers=e.appendIfUnique(s.helpers,u)):c>0&&(o[l-c]=u)}c>0&&(o.length-=c)}},e.ignoreSourceNewlines=function(e){return t(e).flags|=134217728,e}}(d||(d={})),function(e){function t(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return function(r){for(var n="",i=0;i<t.length;i++)n+=e[i],n+=r(t[i]);return n+=e[e.length-1]}}var r;e.createEmitHelperFactory=function(t){var r=t.factory;return{getUnscopedHelperName:n,createDecorateHelper:function(i,a,o,s){t.requestEmitHelper(e.decorateHelper);var c=[];c.push(r.createArrayLiteralExpression(i,!0)),c.push(a),o&&(c.push(o),s&&c.push(s));return r.createCallExpression(n("__decorate"),void 0,c)},createMetadataHelper:function(i,a){return t.requestEmitHelper(e.metadataHelper),r.createCallExpression(n("__metadata"),void 0,[r.createStringLiteral(i),a])},createParamHelper:function(i,a,o){return t.requestEmitHelper(e.paramHelper),e.setTextRange(r.createCallExpression(n("__param"),void 0,[r.createNumericLiteral(a+""),i]),o)},createAssignHelper:function(i){if(t.getCompilerOptions().target>=2)return r.createCallExpression(r.createPropertyAccessExpression(r.createIdentifier("Object"),"assign"),void 0,i);return t.requestEmitHelper(e.assignHelper),r.createCallExpression(n("__assign"),void 0,i)},createAwaitHelper:function(i){return t.requestEmitHelper(e.awaitHelper),r.createCallExpression(n("__await"),void 0,[i])},createAsyncGeneratorHelper:function(i,a){return t.requestEmitHelper(e.awaitHelper),t.requestEmitHelper(e.asyncGeneratorHelper),(i.emitNode||(i.emitNode={})).flags|=786432,r.createCallExpression(n("__asyncGenerator"),void 0,[a?r.createThis():r.createVoidZero(),r.createIdentifier("arguments"),i])},createAsyncDelegatorHelper:function(i){return t.requestEmitHelper(e.awaitHelper),t.requestEmitHelper(e.asyncDelegator),r.createCallExpression(n("__asyncDelegator"),void 0,[i])},createAsyncValuesHelper:function(i){return t.requestEmitHelper(e.asyncValues),r.createCallExpression(n("__asyncValues"),void 0,[i])},createRestHelper:function(i,a,o,s){t.requestEmitHelper(e.restHelper);for(var c=[],l=0,u=0;u<a.length-1;u++){var d=e.getPropertyNameOfBindingOrAssignmentElement(a[u]);if(d)if(e.isComputedPropertyName(d)){e.Debug.assertIsDefined(o,"Encountered computed property name but 'computedTempVariables' argument was not provided.");var p=o[l];l++,c.push(r.createConditionalExpression(r.createTypeCheck(p,"symbol"),void 0,p,void 0,r.createAdd(p,r.createStringLiteral(""))))}else c.push(r.createStringLiteralFromNode(d))}return r.createCallExpression(n("__rest"),void 0,[i,e.setTextRange(r.createArrayLiteralExpression(c),s)])},createAwaiterHelper:function(i,a,o,s){t.requestEmitHelper(e.awaiterHelper);var c=r.createFunctionExpression(void 0,r.createToken(41),void 0,void 0,[],void 0,s);return(c.emitNode||(c.emitNode={})).flags|=786432,r.createCallExpression(n("__awaiter"),void 0,[i?r.createThis():r.createVoidZero(),a?r.createIdentifier("arguments"):r.createVoidZero(),o?e.createExpressionFromEntityName(r,o):r.createVoidZero(),c])},createExtendsHelper:function(i){return t.requestEmitHelper(e.extendsHelper),r.createCallExpression(n("__extends"),void 0,[i,r.createUniqueName("_super",48)])},createTemplateObjectHelper:function(i,a){return t.requestEmitHelper(e.templateObjectHelper),r.createCallExpression(n("__makeTemplateObject"),void 0,[i,a])},createSpreadArrayHelper:function(i,a){return t.requestEmitHelper(e.spreadArrayHelper),r.createCallExpression(n("__spreadArray"),void 0,[i,a])},createValuesHelper:function(i){return t.requestEmitHelper(e.valuesHelper),r.createCallExpression(n("__values"),void 0,[i])},createReadHelper:function(i,a){return t.requestEmitHelper(e.readHelper),r.createCallExpression(n("__read"),void 0,void 0!==a?[i,r.createNumericLiteral(a+"")]:[i])},createGeneratorHelper:function(i){return t.requestEmitHelper(e.generatorHelper),r.createCallExpression(n("__generator"),void 0,[r.createThis(),i])},createCreateBindingHelper:function(a,o,s){return t.requestEmitHelper(e.createBindingHelper),r.createCallExpression(n("__createBinding"),void 0,i([r.createIdentifier("exports"),a,o],s?[s]:[]))},createImportStarHelper:function(i){return t.requestEmitHelper(e.importStarHelper),r.createCallExpression(n("__importStar"),void 0,[i])},createImportStarCallbackHelper:function(){return t.requestEmitHelper(e.importStarHelper),n("__importStar")},createImportDefaultHelper:function(i){return t.requestEmitHelper(e.importDefaultHelper),r.createCallExpression(n("__importDefault"),void 0,[i])},createExportStarHelper:function(i,a){void 0===a&&(a=r.createIdentifier("exports"));return t.requestEmitHelper(e.exportStarHelper),t.requestEmitHelper(e.createBindingHelper),r.createCallExpression(n("__exportStar"),void 0,[i,a])},createClassPrivateFieldGetHelper:function(i,a){return t.requestEmitHelper(e.classPrivateFieldGetHelper),r.createCallExpression(n("__classPrivateFieldGet"),void 0,[i,a])},createClassPrivateFieldSetHelper:function(i,a,o){return t.requestEmitHelper(e.classPrivateFieldSetHelper),r.createCallExpression(n("__classPrivateFieldSet"),void 0,[i,a,o])}};function n(t){return e.setEmitFlags(r.createIdentifier(t),4098)}},e.compareEmitHelpers=function(t,r){return t===r||t.priority===r.priority?0:void 0===t.priority?1:void 0===r.priority?-1:e.compareValues(t.priority,r.priority)},e.helperString=t,e.decorateHelper={name:"typescript:decorate",importName:"__decorate",scoped:!1,priority:2,text:'\n var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n };'},e.metadataHelper={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:'\n var __metadata = (this && this.__metadata) || function (k, v) {\n if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);\n };'},e.paramHelper={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:"\n var __param = (this && this.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n };"},e.assignHelper={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:"\n var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n };"},e.awaitHelper={name:"typescript:await",importName:"__await",scoped:!1,text:"\n var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }"},e.asyncGeneratorHelper={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[e.awaitHelper],text:'\n var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume("next", value); }\n function reject(value) { resume("throw", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n };'},e.asyncDelegator={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[e.awaitHelper],text:'\n var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {\n var i, p;\n return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }\n };'},e.asyncValues={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:'\n var __asyncValues = (this && this.__asyncValues) || function (o) {\n if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n };'},e.restHelper={name:"typescript:rest",importName:"__rest",scoped:!1,text:'\n var __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === "function")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n };'},e.awaiterHelper={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:'\n var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n };'},e.extendsHelper={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:'\n var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n\n return function (d, b) {\n if (typeof b !== "function" && b !== null)\n throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n })();'},e.templateObjectHelper={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:'\n var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n };'},e.readHelper={name:"typescript:read",importName:"__read",scoped:!1,text:'\n var __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === "function" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i["return"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n };'},e.spreadArrayHelper={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:"\n var __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n };"},e.valuesHelper={name:"typescript:values",importName:"__values",scoped:!1,text:'\n var __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === "number") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");\n };'},e.generatorHelper={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:'\n var __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError("Generator is already executing.");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n };'},e.createBindingHelper={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:"\n var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n }) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n }));"},e.setModuleDefaultHelper={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:'\n var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, "default", { enumerable: true, value: v });\n }) : function(o, v) {\n o["default"] = v;\n });'},e.importStarHelper={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[e.createBindingHelper,e.setModuleDefaultHelper],priority:2,text:'\n var __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n };'},e.importDefaultHelper={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:'\n var __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { "default": mod };\n };'},e.exportStarHelper={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[e.createBindingHelper],priority:2,text:'\n var __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n };'},e.classPrivateFieldGetHelper={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:'\n var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, privateMap) {\n if (!privateMap.has(receiver)) {\n throw new TypeError("attempted to get private field on non-instance");\n }\n return privateMap.get(receiver);\n };'},e.classPrivateFieldSetHelper={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:'\n var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, privateMap, value) {\n if (!privateMap.has(receiver)) {\n throw new TypeError("attempted to set private field on non-instance");\n }\n privateMap.set(receiver, value);\n return value;\n };'},e.getAllUnscopedEmitHelpers=function(){return r||(r=e.arrayToMap([e.decorateHelper,e.metadataHelper,e.paramHelper,e.assignHelper,e.awaitHelper,e.asyncGeneratorHelper,e.asyncDelegator,e.asyncValues,e.restHelper,e.awaiterHelper,e.extendsHelper,e.templateObjectHelper,e.spreadArrayHelper,e.valuesHelper,e.readHelper,e.generatorHelper,e.importStarHelper,e.importDefaultHelper,e.exportStarHelper,e.classPrivateFieldGetHelper,e.classPrivateFieldSetHelper,e.createBindingHelper,e.setModuleDefaultHelper],(function(e){return e.name})))},e.asyncSuperHelper={name:"typescript:async-super",scoped:!0,text:t(o(["\n const "," = name => super[name];"],["\n const "," = name => super[name];"]),"_superIndex")},e.advancedAsyncSuperHelper={name:"typescript:advanced-async-super",scoped:!0,text:t(o(["\n const "," = (function (geti, seti) {\n const cache = Object.create(null);\n return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } });\n })(name => super[name], (name, value) => super[name] = value);"],["\n const "," = (function (geti, seti) {\n const cache = Object.create(null);\n return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } });\n })(name => super[name], (name, value) => super[name] = value);"]),"_superIndex")},e.isCallToHelper=function(t,r){return e.isCallExpression(t)&&e.isIdentifier(t.expression)&&4096&e.getEmitFlags(t.expression)&&t.expression.escapedText===r}}(d||(d={})),function(e){e.isNumericLiteral=function(e){return 8===e.kind},e.isBigIntLiteral=function(e){return 9===e.kind},e.isStringLiteral=function(e){return 10===e.kind},e.isJsxText=function(e){return 11===e.kind},e.isRegularExpressionLiteral=function(e){return 13===e.kind},e.isNoSubstitutionTemplateLiteral=function(e){return 14===e.kind},e.isTemplateHead=function(e){return 15===e.kind},e.isTemplateMiddle=function(e){return 16===e.kind},e.isTemplateTail=function(e){return 17===e.kind},e.isIdentifier=function(e){return 78===e.kind},e.isQualifiedName=function(e){return 158===e.kind},e.isComputedPropertyName=function(e){return 159===e.kind},e.isPrivateIdentifier=function(e){return 79===e.kind},e.isSuperKeyword=function(e){return 106===e.kind},e.isImportKeyword=function(e){return 100===e.kind},e.isCommaToken=function(e){return 27===e.kind},e.isQuestionToken=function(e){return 57===e.kind},e.isExclamationToken=function(e){return 53===e.kind},e.isTypeParameterDeclaration=function(e){return 160===e.kind},e.isParameter=function(e){return 161===e.kind},e.isDecorator=function(e){return 162===e.kind},e.isPropertySignature=function(e){return 163===e.kind},e.isPropertyDeclaration=function(e){return 164===e.kind},e.isMethodSignature=function(e){return 165===e.kind},e.isMethodDeclaration=function(e){return 166===e.kind},e.isConstructorDeclaration=function(e){return 167===e.kind},e.isGetAccessorDeclaration=function(e){return 168===e.kind},e.isSetAccessorDeclaration=function(e){return 169===e.kind},e.isCallSignatureDeclaration=function(e){return 170===e.kind},e.isConstructSignatureDeclaration=function(e){return 171===e.kind},e.isIndexSignatureDeclaration=function(e){return 172===e.kind},e.isTypePredicateNode=function(e){return 173===e.kind},e.isTypeReferenceNode=function(e){return 174===e.kind},e.isFunctionTypeNode=function(e){return 175===e.kind},e.isConstructorTypeNode=function(e){return 176===e.kind},e.isTypeQueryNode=function(e){return 177===e.kind},e.isTypeLiteralNode=function(e){return 178===e.kind},e.isArrayTypeNode=function(e){return 179===e.kind},e.isTupleTypeNode=function(e){return 180===e.kind},e.isNamedTupleMember=function(e){return 193===e.kind},e.isOptionalTypeNode=function(e){return 181===e.kind},e.isRestTypeNode=function(e){return 182===e.kind},e.isUnionTypeNode=function(e){return 183===e.kind},e.isIntersectionTypeNode=function(e){return 184===e.kind},e.isConditionalTypeNode=function(e){return 185===e.kind},e.isInferTypeNode=function(e){return 186===e.kind},e.isParenthesizedTypeNode=function(e){return 187===e.kind},e.isThisTypeNode=function(e){return 188===e.kind},e.isTypeOperatorNode=function(e){return 189===e.kind},e.isIndexedAccessTypeNode=function(e){return 190===e.kind},e.isMappedTypeNode=function(e){return 191===e.kind},e.isLiteralTypeNode=function(e){return 192===e.kind},e.isImportTypeNode=function(e){return 196===e.kind},e.isTemplateLiteralTypeSpan=function(e){return 195===e.kind},e.isTemplateLiteralTypeNode=function(e){return 194===e.kind},e.isObjectBindingPattern=function(e){return 197===e.kind},e.isArrayBindingPattern=function(e){return 198===e.kind},e.isBindingElement=function(e){return 199===e.kind},e.isArrayLiteralExpression=function(e){return 200===e.kind},e.isObjectLiteralExpression=function(e){return 201===e.kind},e.isPropertyAccessExpression=function(e){return 202===e.kind},e.isElementAccessExpression=function(e){return 203===e.kind},e.isCallExpression=function(e){return 204===e.kind},e.isNewExpression=function(e){return 205===e.kind},e.isTaggedTemplateExpression=function(e){return 206===e.kind},e.isTypeAssertionExpression=function(e){return 207===e.kind},e.isParenthesizedExpression=function(e){return 208===e.kind},e.isFunctionExpression=function(e){return 209===e.kind},e.isEtsComponentExpression=function(e){return 211===e.kind},e.isArrowFunction=function(e){return 210===e.kind},e.isDeleteExpression=function(e){return 212===e.kind},e.isTypeOfExpression=function(e){return 213===e.kind},e.isVoidExpression=function(e){return 214===e.kind},e.isAwaitExpression=function(e){return 215===e.kind},e.isPrefixUnaryExpression=function(e){return 216===e.kind},e.isPostfixUnaryExpression=function(e){return 217===e.kind},e.isBinaryExpression=function(e){return 218===e.kind},e.isConditionalExpression=function(e){return 219===e.kind},e.isTemplateExpression=function(e){return 220===e.kind},e.isYieldExpression=function(e){return 221===e.kind},e.isSpreadElement=function(e){return 222===e.kind},e.isClassExpression=function(e){return 223===e.kind},e.isOmittedExpression=function(e){return 224===e.kind},e.isExpressionWithTypeArguments=function(e){return 225===e.kind},e.isAsExpression=function(e){return 226===e.kind},e.isNonNullExpression=function(e){return 227===e.kind},e.isMetaProperty=function(e){return 228===e.kind},e.isSyntheticExpression=function(e){return 229===e.kind},e.isPartiallyEmittedExpression=function(e){return 339===e.kind},e.isCommaListExpression=function(e){return 340===e.kind},e.isTemplateSpan=function(e){return 230===e.kind},e.isSemicolonClassElement=function(e){return 231===e.kind},e.isBlock=function(e){return 232===e.kind},e.isVariableStatement=function(e){return 234===e.kind},e.isEmptyStatement=function(e){return 233===e.kind},e.isExpressionStatement=function(e){return 235===e.kind},e.isIfStatement=function(e){return 236===e.kind},e.isDoStatement=function(e){return 237===e.kind},e.isWhileStatement=function(e){return 238===e.kind},e.isForStatement=function(e){return 239===e.kind},e.isForInStatement=function(e){return 240===e.kind},e.isForOfStatement=function(e){return 241===e.kind},e.isContinueStatement=function(e){return 242===e.kind},e.isBreakStatement=function(e){return 243===e.kind},e.isReturnStatement=function(e){return 244===e.kind},e.isWithStatement=function(e){return 245===e.kind},e.isSwitchStatement=function(e){return 246===e.kind},e.isLabeledStatement=function(e){return 247===e.kind},e.isThrowStatement=function(e){return 248===e.kind},e.isTryStatement=function(e){return 249===e.kind},e.isDebuggerStatement=function(e){return 250===e.kind},e.isVariableDeclaration=function(e){return 251===e.kind},e.isVariableDeclarationList=function(e){return 252===e.kind},e.isFunctionDeclaration=function(e){return 253===e.kind},e.isClassDeclaration=function(e){return 254===e.kind},e.isStructDeclaration=function(e){return 255===e.kind},e.isInterfaceDeclaration=function(e){return 256===e.kind},e.isTypeAliasDeclaration=function(e){return 257===e.kind},e.isEnumDeclaration=function(e){return 258===e.kind},e.isModuleDeclaration=function(e){return 259===e.kind},e.isModuleBlock=function(e){return 260===e.kind},e.isCaseBlock=function(e){return 261===e.kind},e.isNamespaceExportDeclaration=function(e){return 262===e.kind},e.isImportEqualsDeclaration=function(e){return 263===e.kind},e.isImportDeclaration=function(e){return 264===e.kind},e.isImportClause=function(e){return 265===e.kind},e.isNamespaceImport=function(e){return 266===e.kind},e.isNamespaceExport=function(e){return 272===e.kind},e.isNamedImports=function(e){return 267===e.kind},e.isImportSpecifier=function(e){return 268===e.kind},e.isExportAssignment=function(e){return 269===e.kind},e.isExportDeclaration=function(e){return 270===e.kind},e.isNamedExports=function(e){return 271===e.kind},e.isExportSpecifier=function(e){return 273===e.kind},e.isMissingDeclaration=function(e){return 274===e.kind},e.isNotEmittedStatement=function(e){return 338===e.kind},e.isSyntheticReference=function(e){return 343===e.kind},e.isMergeDeclarationMarker=function(e){return 341===e.kind},e.isEndOfDeclarationMarker=function(e){return 342===e.kind},e.isExternalModuleReference=function(e){return 275===e.kind},e.isJsxElement=function(e){return 276===e.kind},e.isJsxSelfClosingElement=function(e){return 277===e.kind},e.isJsxOpeningElement=function(e){return 278===e.kind},e.isJsxClosingElement=function(e){return 279===e.kind},e.isJsxFragment=function(e){return 280===e.kind},e.isJsxOpeningFragment=function(e){return 281===e.kind},e.isJsxClosingFragment=function(e){return 282===e.kind},e.isJsxAttribute=function(e){return 283===e.kind},e.isJsxAttributes=function(e){return 284===e.kind},e.isJsxSpreadAttribute=function(e){return 285===e.kind},e.isJsxExpression=function(e){return 286===e.kind},e.isCaseClause=function(e){return 287===e.kind},e.isDefaultClause=function(e){return 288===e.kind},e.isHeritageClause=function(e){return 289===e.kind},e.isCatchClause=function(e){return 290===e.kind},e.isPropertyAssignment=function(e){return 291===e.kind},e.isShorthandPropertyAssignment=function(e){return 292===e.kind},e.isSpreadAssignment=function(e){return 293===e.kind},e.isEnumMember=function(e){return 294===e.kind},e.isUnparsedPrepend=function(e){return 296===e.kind},e.isSourceFile=function(e){return 300===e.kind},e.isBundle=function(e){return 301===e.kind},e.isUnparsedSource=function(e){return 302===e.kind},e.isJSDocTypeExpression=function(e){return 304===e.kind},e.isJSDocNameReference=function(e){return 305===e.kind},e.isJSDocAllType=function(e){return 306===e.kind},e.isJSDocUnknownType=function(e){return 307===e.kind},e.isJSDocNullableType=function(e){return 308===e.kind},e.isJSDocNonNullableType=function(e){return 309===e.kind},e.isJSDocOptionalType=function(e){return 310===e.kind},e.isJSDocFunctionType=function(e){return 311===e.kind},e.isJSDocVariadicType=function(e){return 312===e.kind},e.isJSDocNamepathType=function(e){return 313===e.kind},e.isJSDoc=function(e){return 314===e.kind},e.isJSDocTypeLiteral=function(e){return 315===e.kind},e.isJSDocSignature=function(e){return 316===e.kind},e.isJSDocAugmentsTag=function(e){return 318===e.kind},e.isJSDocAuthorTag=function(e){return 320===e.kind},e.isJSDocClassTag=function(e){return 322===e.kind},e.isJSDocCallbackTag=function(e){return 327===e.kind},e.isJSDocPublicTag=function(e){return 323===e.kind},e.isJSDocPrivateTag=function(e){return 324===e.kind},e.isJSDocProtectedTag=function(e){return 325===e.kind},e.isJSDocReadonlyTag=function(e){return 326===e.kind},e.isJSDocDeprecatedTag=function(e){return 321===e.kind},e.isJSDocSeeTag=function(e){return 335===e.kind},e.isJSDocEnumTag=function(e){return 328===e.kind},e.isJSDocParameterTag=function(e){return 329===e.kind},e.isJSDocReturnTag=function(e){return 330===e.kind},e.isJSDocThisTag=function(e){return 331===e.kind},e.isJSDocTypeTag=function(e){return 332===e.kind},e.isJSDocTemplateTag=function(e){return 333===e.kind},e.isJSDocTypedefTag=function(e){return 334===e.kind},e.isJSDocUnknownTag=function(e){return 317===e.kind},e.isJSDocPropertyTag=function(e){return 336===e.kind},e.isJSDocImplementsTag=function(e){return 319===e.kind},e.isSyntaxList=function(e){return 337===e.kind}}(d||(d={})),function(e){function t(t,r,n,i){if(e.isComputedPropertyName(n))return e.setTextRange(t.createElementAccessExpression(r,n.expression),i);var a=e.setTextRange(e.isIdentifierOrPrivateIdentifier(n)?t.createPropertyAccessExpression(r,n):t.createElementAccessExpression(r,n),n);return e.getOrCreateEmitNode(a).flags|=64,a}function r(t,r){var n=e.parseNodeFactory.createIdentifier(t||"React");return e.setParent(n,e.getParseTreeNode(r)),n}function n(t,i,a){if(e.isQualifiedName(i)){var o=n(t,i.left,a),s=t.createIdentifier(e.idText(i.right));return s.escapedText=i.right.escapedText,t.createPropertyAccessExpression(o,s)}return r(e.idText(i),a)}function a(e,t,i,a){return t?n(e,t,a):e.createPropertyAccessExpression(r(i,a),"createElement")}function o(t,r){return e.isIdentifier(r)?t.createStringLiteralFromNode(r):e.isComputedPropertyName(r)?e.setParent(e.setTextRange(t.cloneNode(r.expression),r.expression),r.expression.parent):e.setParent(e.setTextRange(t.cloneNode(r),r),r.parent)}function s(t){return e.isStringLiteral(t.expression)&&"use strict"===t.expression.text}function c(e,t){switch(void 0===t&&(t=15),e.kind){case 208:return!!(1&t);case 207:case 226:return!!(2&t);case 227:return!!(4&t);case 339:return!!(8&t)}return!1}function l(e,t){for(void 0===t&&(t=15);c(e,t);)e=e.expression;return e}function u(t){return e.setStartsOnNewLine(t,!0)}function d(t){var r=e.getOriginalNode(t,e.isSourceFile),n=r&&r.emitNode;return n&&n.externalHelpersModuleName}function p(t,r,n,i,a){if(n.importHelpers&&e.isEffectiveExternalModule(r,n)){var o=d(r);if(o)return o;var s=e.getEmitModuleKind(n),c=(i||n.esModuleInterop&&a)&&s!==e.ModuleKind.System&&s<e.ModuleKind.ES2015;if(!c){var l=e.getEmitHelpers(r);if(l)for(var u=0,p=l;u<p.length;u++){if(!p[u].scoped){c=!0;break}}}if(c){var f=e.getOriginalNode(r,e.isSourceFile),m=e.getOrCreateEmitNode(f);return m.externalHelpersModuleName||(m.externalHelpersModuleName=t.createUniqueName(e.externalHelpersModuleNameText))}}}function f(t,r,n,i){if(r)return r.moduleName?t.createStringLiteral(r.moduleName):!r.isDeclarationFile&&e.outFile(i)?t.createStringLiteral(e.getExternalModuleNameFromPath(n,r.fileName)):void 0}function m(t){if(e.isDeclarationBindingElement(t))return t.name;if(!e.isObjectLiteralElementLike(t))return e.isAssignmentExpression(t,!0)?m(t.left):e.isSpreadElement(t)?m(t.expression):t;switch(t.kind){case 291:return m(t.initializer);case 292:return t.name;case 293:return m(t.expression)}}function g(t){switch(t.kind){case 199:if(t.propertyName){var r=t.propertyName;return e.isPrivateIdentifier(r)?e.Debug.failBadSyntaxKind(r):e.isComputedPropertyName(r)&&_(r.expression)?r.expression:r}break;case 291:if(t.name){r=t.name;return e.isPrivateIdentifier(r)?e.Debug.failBadSyntaxKind(r):e.isComputedPropertyName(r)&&_(r.expression)?r.expression:r}break;case 293:return t.name&&e.isPrivateIdentifier(t.name)?e.Debug.failBadSyntaxKind(t.name):t.name}var n=m(t);if(n&&e.isPropertyName(n))return n}function _(e){var t=e.kind;return 10===t||8===t}e.createEmptyExports=function(e){return e.createExportDeclaration(void 0,void 0,!1,e.createNamedExports([]),void 0)},e.createMemberAccessForPropertyName=t,e.createJsxFactoryExpression=a,e.createExpressionForJsxElement=function(t,r,n,i,a,o){var s=[n];if(i&&s.push(i),a&&a.length>0)if(i||s.push(t.createNull()),a.length>1)for(var c=0,l=a;c<l.length;c++){var d=l[c];u(d),s.push(d)}else s.push(a[0]);return e.setTextRange(t.createCallExpression(r,void 0,s),o)},e.createExpressionForJsxFragment=function(t,i,o,s,c,l,d){var p=[function(e,t,i,a){return t?n(e,t,a):e.createPropertyAccessExpression(r(i,a),"Fragment")}(t,o,s,l),t.createNull()];if(c&&c.length>0)if(c.length>1)for(var f=0,m=c;f<m.length;f++){var g=m[f];u(g),p.push(g)}else p.push(c[0]);return e.setTextRange(t.createCallExpression(a(t,i,s,l),void 0,p),d)},e.createForOfBindingStatement=function(t,r,n){if(e.isVariableDeclarationList(r)){var i=e.first(r.declarations),a=t.updateVariableDeclaration(i,i.name,void 0,void 0,n);return e.setTextRange(t.createVariableStatement(void 0,t.updateVariableDeclarationList(r,[a])),r)}var o=e.setTextRange(t.createAssignment(r,n),r);return e.setTextRange(t.createExpressionStatement(o),r)},e.insertLeadingStatement=function(t,r,n){return e.isBlock(r)?t.updateBlock(r,e.setTextRange(t.createNodeArray(i([n],r.statements)),r.statements)):t.createBlock(t.createNodeArray([r,n]),!0)},e.createExpressionFromEntityName=function t(r,n){if(e.isQualifiedName(n)){var i=t(r,n.left),a=e.setParent(e.setTextRange(r.cloneNode(n.right),n.right),n.right.parent);return e.setTextRange(r.createPropertyAccessExpression(i,a),n)}return e.setParent(e.setTextRange(r.cloneNode(n),n),n.parent)},e.createExpressionForPropertyName=o,e.createExpressionForObjectLiteralElementLike=function(r,n,i,a){switch(i.name&&e.isPrivateIdentifier(i.name)&&e.Debug.failBadSyntaxKind(i.name,"Private identifiers are not allowed in object literals."),i.kind){case 168:case 169:return function(t,r,n,i,a){var s=e.getAllAccessorDeclarations(r,n),c=s.firstAccessor,l=s.getAccessor,u=s.setAccessor;if(n===c)return e.setTextRange(t.createObjectDefinePropertyCall(i,o(t,n.name),t.createPropertyDescriptor({enumerable:t.createFalse(),configurable:!0,get:l&&e.setTextRange(e.setOriginalNode(t.createFunctionExpression(l.modifiers,void 0,void 0,void 0,l.parameters,void 0,l.body),l),l),set:u&&e.setTextRange(e.setOriginalNode(t.createFunctionExpression(u.modifiers,void 0,void 0,void 0,u.parameters,void 0,u.body),u),u)},!a)),c)}(r,n.properties,i,a,!!n.multiLine);case 291:return function(r,n,i){return e.setOriginalNode(e.setTextRange(r.createAssignment(t(r,i,n.name,n.name),n.initializer),n),n)}(r,i,a);case 292:return function(r,n,i){return e.setOriginalNode(e.setTextRange(r.createAssignment(t(r,i,n.name,n.name),r.cloneNode(n.name)),n),n)}(r,i,a);case 166:return function(r,n,i){return e.setOriginalNode(e.setTextRange(r.createAssignment(t(r,i,n.name,n.name),e.setOriginalNode(e.setTextRange(r.createFunctionExpression(n.modifiers,n.asteriskToken,void 0,void 0,n.parameters,void 0,n.body),n),n)),n),n)}(r,i,a)}},e.isInternalName=function(t){return!!(32768&e.getEmitFlags(t))},e.isLocalName=function(t){return!!(16384&e.getEmitFlags(t))},e.isExportName=function(t){return!!(8192&e.getEmitFlags(t))},e.findUseStrictPrologue=function(t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(!e.isPrologueDirective(i))break;if(s(i))return i}},e.startsWithUseStrict=function(t){var r=e.firstOrUndefined(t);return void 0!==r&&e.isPrologueDirective(r)&&s(r)},e.isCommaSequence=function(e){return 218===e.kind&&27===e.operatorToken.kind||340===e.kind},e.isOuterExpression=c,e.skipOuterExpressions=l,e.skipAssertions=function(e){return l(e,6)},e.startOnNewLine=u,e.getExternalHelpersModuleName=d,e.hasRecordedExternalHelpers=function(t){var r=e.getOriginalNode(t,e.isSourceFile),n=r&&r.emitNode;return!(!n||!n.externalHelpersModuleName&&!n.externalHelpers)},e.createExternalHelpersImportDeclarationIfNeeded=function(t,r,n,i,a,o,s){if(i.importHelpers&&e.isEffectiveExternalModule(n,i)){var c=void 0,l=e.getEmitModuleKind(i);if(l>=e.ModuleKind.ES2015&&l<=e.ModuleKind.ESNext){var u=e.getEmitHelpers(n);if(u){for(var d=[],f=0,m=u;f<m.length;f++){var g=m[f];if(!g.scoped){var _=g.importName;_&&e.pushIfUnique(d,_)}}if(e.some(d)){d.sort(e.compareStringsCaseSensitive),c=t.createNamedImports(e.map(d,(function(i){return e.isFileLevelUniqueName(n,i)?t.createImportSpecifier(void 0,t.createIdentifier(i)):t.createImportSpecifier(t.createIdentifier(i),r.getUnscopedHelperName(i))})));var h=e.getOriginalNode(n,e.isSourceFile);e.getOrCreateEmitNode(h).externalHelpers=!0}}}else{var y=p(t,n,i,a,o||s);y&&(c=t.createNamespaceImport(y))}if(c){var v=t.createImportDeclaration(void 0,void 0,t.createImportClause(!1,void 0,c),t.createStringLiteral(e.externalHelpersModuleNameText));return e.addEmitFlags(v,67108864),v}}},e.getOrCreateExternalHelpersModuleNameIfNeeded=p,e.getLocalNameForExternalImport=function(t,r,n){var i=e.getNamespaceDeclarationNode(r);if(i&&!e.isDefaultImport(r)&&!e.isExportNamespaceAsDefaultDeclaration(r)){var a=i.name;return e.isGeneratedIdentifier(a)?a:t.createIdentifier(e.getSourceTextOfNodeFromSourceFile(n,a)||e.idText(a))}return 264===r.kind&&r.importClause||270===r.kind&&r.moduleSpecifier?t.getGeneratedNameForNode(r):void 0},e.getExternalModuleNameLiteral=function(t,r,n,i,a,o){var s=e.getExternalModuleName(r);if(s&&e.isStringLiteral(s))return function(e,t,r,n,i){return f(r,n.getExternalModuleFileFromDeclaration(e),t,i)}(r,i,t,a,o)||function(e,t,r){var n=r.renamedDependencies&&r.renamedDependencies.get(t.text);return n?e.createStringLiteral(n):void 0}(t,s,n)||t.cloneNode(s)},e.tryGetModuleNameFromFile=f,e.getInitializerOfBindingOrAssignmentElement=function t(r){if(e.isDeclarationBindingElement(r))return r.initializer;if(e.isPropertyAssignment(r)){var n=r.initializer;return e.isAssignmentExpression(n,!0)?n.right:void 0}return e.isShorthandPropertyAssignment(r)?r.objectAssignmentInitializer:e.isAssignmentExpression(r,!0)?r.right:e.isSpreadElement(r)?t(r.expression):void 0},e.getTargetOfBindingOrAssignmentElement=m,e.getRestIndicatorOfBindingOrAssignmentElement=function(e){switch(e.kind){case 161:case 199:return e.dotDotDotToken;case 222:case 293:return e}},e.getPropertyNameOfBindingOrAssignmentElement=function(t){var r=g(t);return e.Debug.assert(!!r||e.isSpreadAssignment(t),"Invalid property name for binding element."),r},e.tryGetPropertyNameOfBindingOrAssignmentElement=g,e.getElementsOfBindingOrAssignmentPattern=function(e){switch(e.kind){case 197:case 198:case 200:return e.elements;case 201:return e.properties}},e.getJSDocTypeAliasName=function(t){if(t)for(var r=t;;){if(e.isIdentifier(r)||!r.body)return e.isIdentifier(r)?r:r.name;r=r.body}},e.canHaveModifiers=function(e){var t=e.kind;return 161===t||163===t||164===t||165===t||166===t||167===t||168===t||169===t||172===t||209===t||210===t||223===t||234===t||253===t||254===t||255===t||256===t||257===t||258===t||259===t||263===t||264===t||269===t||270===t},e.isExportModifier=function(e){return 93===e.kind},e.isAsyncModifier=function(e){return 130===e.kind},e.isStaticModifier=function(e){return 124===e.kind}}(d||(d={})),function(e){e.setTextRange=function(t,r){return r?e.setTextRangePosEnd(t,r.pos,r.end):t}}(d||(d={})),function(e){var t,r,n,i,a,o,s,c,l,u;function d(e,t){return t&&e(t)}function p(e,t,r){if(r){if(t)return t(r);for(var n=0,i=r;n<i.length;n++){var a=e(i[n]);if(a)return a}}}function f(e,t){return 42===e.charCodeAt(t+1)&&42===e.charCodeAt(t+2)&&47!==e.charCodeAt(t+3)}function m(t,r,n){if(t&&!(t.kind<=157))switch(t.kind){case 158:return d(r,t.left)||d(r,t.right);case 160:return d(r,t.name)||d(r,t.constraint)||d(r,t.default)||d(r,t.expression);case 292:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.exclamationToken)||d(r,t.equalsToken)||d(r,t.objectAssignmentInitializer);case 293:case 208:case 212:case 213:case 214:case 215:case 227:case 222:case 235:case 244:case 248:case 162:case 159:case 275:case 285:case 339:return d(r,t.expression);case 161:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.dotDotDotToken)||d(r,t.name)||d(r,t.questionToken)||d(r,t.type)||d(r,t.initializer);case 164:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.exclamationToken)||d(r,t.type)||d(r,t.initializer);case 163:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.type)||d(r,t.initializer);case 291:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.initializer);case 251:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.exclamationToken)||d(r,t.type)||d(r,t.initializer);case 199:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.dotDotDotToken)||d(r,t.propertyName)||d(r,t.name)||d(r,t.initializer);case 175:case 176:case 170:case 171:case 172:return p(r,n,t.decorators)||p(r,n,t.modifiers)||p(r,n,t.typeParameters)||p(r,n,t.parameters)||d(r,t.type);case 211:return d(r,t.expression)||p(r,n,t.arguments)||d(r,t.body);case 166:case 165:case 167:case 168:case 169:case 209:case 253:case 210:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.asteriskToken)||d(r,t.name)||d(r,t.questionToken)||d(r,t.exclamationToken)||p(r,n,t.typeParameters)||p(r,n,t.parameters)||d(r,t.type)||d(r,t.equalsGreaterThanToken)||d(r,t.body);case 174:return d(r,t.typeName)||p(r,n,t.typeArguments);case 173:return d(r,t.assertsModifier)||d(r,t.parameterName)||d(r,t.type);case 177:return d(r,t.exprName);case 178:return p(r,n,t.members);case 179:return d(r,t.elementType);case 180:case 197:case 198:case 200:case 267:case 271:case 340:return p(r,n,t.elements);case 183:case 184:case 289:return p(r,n,t.types);case 185:return d(r,t.checkType)||d(r,t.extendsType)||d(r,t.trueType)||d(r,t.falseType);case 186:return d(r,t.typeParameter);case 196:return d(r,t.argument)||d(r,t.qualifier)||p(r,n,t.typeArguments);case 187:case 189:case 181:case 182:case 304:case 309:case 308:case 310:case 312:return d(r,t.type);case 190:return d(r,t.objectType)||d(r,t.indexType);case 191:return d(r,t.readonlyToken)||d(r,t.typeParameter)||d(r,t.nameType)||d(r,t.questionToken)||d(r,t.type);case 192:return d(r,t.literal);case 193:return d(r,t.dotDotDotToken)||d(r,t.name)||d(r,t.questionToken)||d(r,t.type);case 201:case 284:return p(r,n,t.properties);case 202:return d(r,t.expression)||d(r,t.questionDotToken)||d(r,t.name);case 203:return d(r,t.expression)||d(r,t.questionDotToken)||d(r,t.argumentExpression);case 204:case 205:return d(r,t.expression)||d(r,t.questionDotToken)||p(r,n,t.typeArguments)||p(r,n,t.arguments);case 206:return d(r,t.tag)||d(r,t.questionDotToken)||p(r,n,t.typeArguments)||d(r,t.template);case 207:return d(r,t.type)||d(r,t.expression);case 216:case 217:return d(r,t.operand);case 221:return d(r,t.asteriskToken)||d(r,t.expression);case 218:return d(r,t.left)||d(r,t.operatorToken)||d(r,t.right);case 226:return d(r,t.expression)||d(r,t.type);case 228:case 262:case 266:case 272:case 305:return d(r,t.name);case 219:return d(r,t.condition)||d(r,t.questionToken)||d(r,t.whenTrue)||d(r,t.colonToken)||d(r,t.whenFalse);case 232:case 260:case 288:return p(r,n,t.statements);case 300:return p(r,n,t.statements)||d(r,t.endOfFileToken);case 234:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.declarationList);case 252:return p(r,n,t.declarations);case 236:return d(r,t.expression)||d(r,t.thenStatement)||d(r,t.elseStatement);case 237:return d(r,t.statement)||d(r,t.expression);case 238:case 245:return d(r,t.expression)||d(r,t.statement);case 239:return d(r,t.initializer)||d(r,t.condition)||d(r,t.incrementor)||d(r,t.statement);case 240:return d(r,t.initializer)||d(r,t.expression)||d(r,t.statement);case 241:return d(r,t.awaitModifier)||d(r,t.initializer)||d(r,t.expression)||d(r,t.statement);case 242:case 243:return d(r,t.label);case 246:return d(r,t.expression)||d(r,t.caseBlock);case 261:return p(r,n,t.clauses);case 287:return d(r,t.expression)||p(r,n,t.statements);case 247:return d(r,t.label)||d(r,t.statement);case 249:return d(r,t.tryBlock)||d(r,t.catchClause)||d(r,t.finallyBlock);case 290:return d(r,t.variableDeclaration)||d(r,t.block);case 255:case 254:case 223:case 256:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||p(r,n,t.typeParameters)||p(r,n,t.heritageClauses)||p(r,n,t.members);case 257:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||p(r,n,t.typeParameters)||d(r,t.type);case 258:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||p(r,n,t.members);case 294:case 283:return d(r,t.name)||d(r,t.initializer);case 259:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.body);case 263:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.moduleReference);case 264:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.importClause)||d(r,t.moduleSpecifier);case 265:return d(r,t.name)||d(r,t.namedBindings);case 270:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.exportClause)||d(r,t.moduleSpecifier);case 268:case 273:return d(r,t.propertyName)||d(r,t.name);case 269:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.expression);case 220:case 194:return d(r,t.head)||p(r,n,t.templateSpans);case 230:return d(r,t.expression)||d(r,t.literal);case 195:return d(r,t.type)||d(r,t.literal);case 225:return d(r,t.expression)||p(r,n,t.typeArguments);case 274:return p(r,n,t.decorators);case 276:return d(r,t.openingElement)||p(r,n,t.children)||d(r,t.closingElement);case 280:return d(r,t.openingFragment)||p(r,n,t.children)||d(r,t.closingFragment);case 277:case 278:return d(r,t.tagName)||p(r,n,t.typeArguments)||d(r,t.attributes);case 286:return d(r,t.dotDotDotToken)||d(r,t.expression);case 279:case 320:case 317:case 322:case 323:case 324:case 325:case 326:return d(r,t.tagName);case 311:return p(r,n,t.parameters)||d(r,t.type);case 314:return p(r,n,t.tags);case 335:return d(r,t.tagName)||d(r,t.name);case 329:case 336:return d(r,t.tagName)||(t.isNameFirst?d(r,t.name)||d(r,t.typeExpression):d(r,t.typeExpression)||d(r,t.name));case 319:case 318:return d(r,t.tagName)||d(r,t.class);case 333:return d(r,t.tagName)||d(r,t.constraint)||p(r,n,t.typeParameters);case 334:return d(r,t.tagName)||(t.typeExpression&&304===t.typeExpression.kind?d(r,t.typeExpression)||d(r,t.fullName):d(r,t.fullName)||d(r,t.typeExpression));case 327:return d(r,t.tagName)||d(r,t.fullName)||d(r,t.typeExpression);case 330:case 332:case 331:case 328:return d(r,t.tagName)||d(r,t.typeExpression);case 316:return e.forEach(t.typeParameters,r)||e.forEach(t.parameters,r)||d(r,t.type);case 315:return e.forEach(t.jsDocPropertyTags,r)}}function g(e){var t=[];return m(e,r,r),t;function r(e){t.unshift(e)}}function _(e){return void 0!==e.externalModuleIndicator}function h(t){return e.fileExtensionIs(t,".d.ts")||e.fileExtensionIs(t,".d.ets")}function y(t,r){for(var n=[],i=0,a=e.getLeadingCommentRanges(r,0)||e.emptyArray;i<a.length;i++){var o=a[i];S(n,o,r.substring(o.pos,o.end))}t.pragmas=new e.Map;for(var s=0,c=n;s<c.length;s++){var l=c[s];if(t.pragmas.has(l.name)){var u=t.pragmas.get(l.name);u instanceof Array?u.push(l.args):t.pragmas.set(l.name,[u,l.args])}else t.pragmas.set(l.name,l.args)}}function v(t,r){t.checkJsDirective=void 0,t.referencedFiles=[],t.typeReferenceDirectives=[],t.libReferenceDirectives=[],t.amdDependencies=[],t.hasNoDefaultLib=!1,t.pragmas.forEach((function(n,i){switch(i){case"reference":var a=t.referencedFiles,o=t.typeReferenceDirectives,s=t.libReferenceDirectives;e.forEach(e.toArray(n),(function(n){var i=n.arguments,c=i.types,l=i.lib,u=i.path;n.arguments["no-default-lib"]?t.hasNoDefaultLib=!0:c?o.push({pos:c.pos,end:c.end,fileName:c.value}):l?s.push({pos:l.pos,end:l.end,fileName:l.value}):u?a.push({pos:u.pos,end:u.end,fileName:u.value}):r(n.range.pos,n.range.end-n.range.pos,e.Diagnostics.Invalid_reference_directive_syntax)}));break;case"amd-dependency":t.amdDependencies=e.map(e.toArray(n),(function(e){return{name:e.arguments.name,path:e.arguments.path}}));break;case"amd-module":if(n instanceof Array)for(var c=0,l=n;c<l.length;c++){var u=l[c];t.moduleName&&r(u.range.pos,u.range.end-u.range.pos,e.Diagnostics.An_AMD_module_cannot_have_multiple_name_assignments),t.moduleName=u.arguments.name}else t.moduleName=n.arguments.name;break;case"ts-nocheck":case"ts-check":e.forEach(e.toArray(n),(function(e){(!t.checkJsDirective||e.range.pos>t.checkJsDirective.pos)&&(t.checkJsDirective={enabled:"ts-check"===i,end:e.range.end,pos:e.range.pos})}));break;case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:e.Debug.fail("Unhandled pragma kind")}}))}!function(e){e[e.None=0]="None",e[e.Yield=1]="Yield",e[e.Await=2]="Await",e[e.Type=4]="Type",e[e.IgnoreMissingOpenBrace=16]="IgnoreMissingOpenBrace",e[e.JSDoc=32]="JSDoc"}(t||(t={})),function(e){e[e.TryParse=0]="TryParse",e[e.Lookahead=1]="Lookahead",e[e.Reparse=2]="Reparse"}(r||(r={})),e.parseBaseNodeFactory={createBaseSourceFileNode:function(t){return new(s||(s=e.objectAllocator.getSourceFileConstructor()))(t,-1,-1)},createBaseIdentifierNode:function(t){return new(a||(a=e.objectAllocator.getIdentifierConstructor()))(t,-1,-1)},createBasePrivateIdentifierNode:function(t){return new(o||(o=e.objectAllocator.getPrivateIdentifierConstructor()))(t,-1,-1)},createBaseTokenNode:function(t){return new(i||(i=e.objectAllocator.getTokenConstructor()))(t,-1,-1)},createBaseNode:function(t){return new(n||(n=e.objectAllocator.getNodeConstructor()))(t,-1,-1)}},e.parseNodeFactory=e.createNodeFactory(1,e.parseBaseNodeFactory),e.isJSDocLikeText=f,e.forEachChild=m,e.forEachChildRecursively=function(t,r,n){for(var i=g(t),a=[];a.length<i.length;)a.push(t);for(;0!==i.length;){var o=i.pop(),s=a.pop();if(e.isArray(o)){if(n)if(l=n(o,s)){if("skip"===l)continue;return l}for(var c=o.length-1;c>=0;--c)i.push(o[c]),a.push(s)}else{var l;if(l=r(o,s)){if("skip"===l)continue;return l}if(o.kind>=158)for(var u=0,d=g(o);u<d.length;u++){var p=d[u];i.push(p),a.push(o)}}}},e.createSourceFile=function(t,r,n,i,a,o){var s;return void 0===i&&(i=!1),null===e.tracing||void 0===e.tracing||e.tracing.push("parse","createSourceFile",{path:t},!0),e.performance.mark("beforeParse"),c=null!=o?o:e.defaultInitCompilerOptions,e.perfLogger.logStartParseSourceFile(t),s=100===n?l.parseSourceFile(t,r,n,void 0,i,6):l.parseSourceFile(t,r,n,void 0,i,a),e.perfLogger.logStopParseSourceFile(),e.performance.mark("afterParse"),e.performance.measure("Parse","beforeParse","afterParse"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),s},e.parseIsolatedEntityName=function(e,t){return l.parseIsolatedEntityName(e,t)},e.parseJsonText=function(e,t){return l.parseJsonText(e,t)},e.isExternalModule=_,e.updateSourceFile=function(t,r,n,i,a){void 0===i&&(i=!1),c=null!=a?a:e.defaultInitCompilerOptions;var o=u.updateSourceFile(t,r,n,i);return o.flags|=3145728&t.flags,o},e.parseIsolatedJSDocComment=function(e,t,r){var n=l.JSDocParser.parseIsolatedJSDocComment(e,t,r);return n&&n.jsDoc&&l.fixupParentReferences(n.jsDoc),n},e.parseJSDocTypeExpressionForTests=function(e,t,r){return l.JSDocParser.parseJSDocTypeExpressionForTests(e,t,r)},function(t){var r,n,i,a,o,s=e.createScanner(99,!0),l=20480;function d(e){return A++,e}var p,g,b,k,x,E,S,D,T,C,A,N,P,I,F,O,R,M,L,j,B,z,U={createBaseSourceFileNode:function(e){return d(new o(e,0,0))},createBaseIdentifierNode:function(e){return d(new i(e,0,0))},createBasePrivateIdentifierNode:function(e){return d(new a(e,0,0))},createBaseTokenNode:function(e){return d(new n(e,0,0))},createBaseNode:function(e){return d(new r(e,0,0))}},q=e.createNodeFactory(11,U),J=!0,V=!1,H=new e.Map,K=new e.Map;function W(t,r,n,i,a){void 0===n&&(n=2),void 0===a&&(a=!1),G(t,r,n,i,6),g=R,We();var o,s,c=qe();if(1===Ve())o=mt([],c,c),s=dt();else{var l=void 0;switch(Ve()){case 22:l=ei();break;case 110:case 95:case 104:l=dt();break;case 40:l=tt((function(){return 8===We()&&58!==We()}))?An():ri();break;case 8:case 10:if(tt((function(){return 58!==We()}))){l=ar();break}default:l=ri()}var u=q.createExpressionStatement(l);gt(u,c),o=mt([u],c),s=ut(1,e.Diagnostics.Unexpected_token)}var d=ie(t,2,6,!1,o,s,g);a&&ne(d),d.nodeCount=A,d.identifierCount=I,d.identifiers=N,d.parseDiagnostics=e.attachFileToDiagnostics(S,d),D&&(d.jsDocDiagnostics=e.attachFileToDiagnostics(D,d));var p=d;return $(),p}function G(t,c,l,u,d){switch(r=e.objectAllocator.getNodeConstructor(),n=e.objectAllocator.getTokenConstructor(),i=e.objectAllocator.getIdentifierConstructor(),a=e.objectAllocator.getPrivateIdentifierConstructor(),o=e.objectAllocator.getSourceFileConstructor(),p=e.normalizePath(t),b=c,k=l,T=u,x=d,E=e.getLanguageVariant(d),S=[],F=0,N=new e.Map,P=new e.Map,I=0,A=0,g=0,J=!0,x){case 1:case 2:R=131072;break;case 6:R=33685504;break;case 8:R=1073741824;break;default:R=0}p.endsWith(".ets")&&(R=1073741824),V=!1,s.setText(b),s.setOnError(Ue),s.setScriptTarget(k),s.setLanguageVariant(E),s.setEtsContext(Ae())}function $(){s.clearCommentDirectives(),s.setText(""),s.setOnError(void 0),s.setEtsContext(!1),b=void 0,k=void 0,T=void 0,x=void 0,E=void 0,g=0,S=void 0,D=void 0,F=0,N=void 0,O=void 0,J=!0,L=void 0,j=void 0,z=void 0,H.clear(),K.clear()}function Y(t,r,n){var i=h(p);i&&(R|=8388608),g=R,We();var a=qt(0,bi);e.Debug.assert(1===Ve());var o=re(dt()),c=ie(p,t,n,i,a,o,g);return y(c,b),v(c,(function(t,r,n){S.push(e.createDetachedDiagnostic(p,t,r,n))})),c.commentDirectives=s.getCommentDirectives(),c.nodeCount=A,c.identifierCount=I,c.identifiers=N,c.parseDiagnostics=e.attachFileToDiagnostics(S,c),D&&(c.jsDocDiagnostics=e.attachFileToDiagnostics(D,c)),r&&ne(c),c}function X(e,t){return t?re(e):e}t.parseSourceFile=function(t,r,n,i,a,o){if(void 0===a&&(a=!1),6===(o=e.ensureScriptKind(t,o))){var s=W(t,r,n,i,a);return e.convertToObjectWorker(s,s.parseDiagnostics,!1,void 0,void 0),s.referencedFiles=e.emptyArray,s.typeReferenceDirectives=e.emptyArray,s.libReferenceDirectives=e.emptyArray,s.amdDependencies=e.emptyArray,s.hasNoDefaultLib=!1,s.pragmas=e.emptyMap,s}G(t,r,n,i,o);var c=Y(n,a,o);return $(),c},t.parseIsolatedEntityName=function(e,t){G("",e,t,void 0,1),We();var r=Xt(!0),n=1===Ve()&&!S.length;return $(),n?r:void 0},t.parseJsonText=W;var Q,Z,ee,te=!1;function re(t){e.Debug.assert(!t.jsDoc);var r=e.mapDefined(e.getJSDocCommentRanges(t,b),(function(e){return ee.parseJSDocComment(t,e.pos,e.end-e.pos)}));return r.length&&(t.jsDoc=r),te&&(te=!1,t.flags|=134217728),t}function ne(t){e.setParentRecursive(t,!0)}function ie(t,r,n,i,a,o,c){var l=q.createSourceFile(a,o,c);return e.setTextRangePosWidth(l,0,b.length),function(t){t.externalModuleIndicator=e.forEach(t.statements,ha)||function(e){return 2097152&e.flags?ya(e):void 0}(t)}(l),!i&&_(l)&&8388608&l.transformFlags&&(l=function(t){var r=T,n=u.createSyntaxCursor(t);T={currentNode:function(e){var t=n.currentNode(e);return J&&t&&f(t)&&(t.intersectsChange=!0),t}};var i=[],a=S;S=[];for(var o=0,c=m(t.statements,0),l=function(){var r=t.statements[o],n=t.statements[c];e.addRange(i,t.statements,o,c),o=g(t.statements,c);var l=e.findIndex(a,(function(e){return e.start>=r.pos})),u=l>=0?e.findIndex(a,(function(e){return e.start>=n.pos}),l):-1;l>=0&&e.addRange(S,a,l,u>=0?u:void 0),et((function(){var e=R;for(R|=32768,s.setTextPos(n.pos),We();1!==Ve();){var r=s.getStartPos(),a=Jt(0,bi);if(i.push(a),r===s.getStartPos()&&We(),o>=0){var c=t.statements[o];if(a.end===c.pos)break;a.end>c.pos&&(o=g(t.statements,o+1))}}R=e}),2),c=o>=0?m(t.statements,o):-1};-1!==c;)l();if(o>=0){var d=t.statements[o];e.addRange(i,t.statements,o);var p=e.findIndex(a,(function(e){return e.start>=d.pos}));p>=0&&e.addRange(S,a,p)}return T=r,q.updateSourceFile(t,e.setTextRange(q.createNodeArray(i),t.statements));function f(e){return!(32768&e.flags||!(8388608&e.transformFlags))}function m(e,t){for(var r=t;r<e.length;r++)if(f(e[r]))return r;return-1}function g(e,t){for(var r=t;r<e.length;r++)if(!f(e[r]))return r;return-1}}(l)),l.text=b,l.bindDiagnostics=[],l.bindSuggestionDiagnostics=void 0,l.languageVersion=r,l.fileName=t,l.languageVariant=e.getLanguageVariant(n),l.isDeclarationFile=i,l.scriptKind=n,l}function ae(e,t){e?R|=t:R&=~t}function oe(e,t){e?M|=t:M&=~t}function se(e){ae(e,4096)}function ce(e){ae(e,8192)}function le(e){ae(e,16384)}function ue(e){ae(e,32768)}function de(e){oe(e,2)}function pe(e){oe(e,128)}function fe(e){oe(e,256)}function me(e){oe(e,4)}function ge(e){oe(e,8)}function _e(e){oe(e,16)}function he(e){oe(e,32)}function ye(e){oe(e,64)}function ve(e,t){var r=e&R;if(r){ae(!1,r);var n=t();return ae(!0,r),n}return t()}function be(e,t){var r=e&~R;if(r){ae(!0,r);var n=t();return ae(!1,r),n}return t()}function ke(e){return ve(4096,e)}function xe(e){return be(32768,e)}function Ee(e){return!!(R&e)}function Se(e){return!!(M&e)}function De(){return Ee(8192)}function we(){return Ee(4096)}function Te(){return Ee(16384)}function Ce(){return Ee(32768)}function Ae(){return Ee(1073741824)}function Ne(){return Ae()&&Se(2)}function Pe(){return Ae()&&Se(128)}function Ie(){return Ae()&&Se(4)}function Fe(){return Ae()&&Se(8)}function Oe(){return Ae()&&Ne()&&Se(16)}function Re(){return Ae()&&Se(32)}function Me(){return Ae()&&Ne()&&Se(64)}function Le(e,t){Be(s.getTokenPos(),s.getTextPos(),e,t)}function je(t,r,n,i){var a=e.lastOrUndefined(S);a&&t===a.start||S.push(e.createDetachedDiagnostic(p,t,r,n,i)),V=!0}function Be(e,t,r,n){je(e,t-e,r,n)}function ze(e,t,r){Be(e.pos,e.end,t,r)}function Ue(e,t){je(s.getTextPos(),t,e)}function qe(){return s.getStartPos()}function Je(){return s.hasPrecedingJSDocComment()}function Ve(){return C}function He(){return C=s.scan()}function Ke(e){return We(),e()}function We(){return e.isKeyword(C)&&(s.hasUnicodeEscape()||s.hasExtendedUnicodeEscape())&&Be(s.getTokenPos(),s.getTextPos(),e.Diagnostics.Keywords_cannot_contain_escape_characters),He()}function Ge(){return C=s.scanJsDocToken()}function $e(){return C=s.reScanGreaterToken()}function Ye(){return C=s.reScanTemplateHeadOrNoSubstitutionTemplate()}function Xe(){return C=s.reScanLessThanToken()}function Qe(){return C=s.scanJsxIdentifier()}function Ze(){return C=s.scanJsxToken()}function et(t,r){var n=C,i=S.length,a=V,o=R,c=0!==r?s.lookAhead(t):s.tryScan(t);return e.Debug.assert(o===R),c&&0===r||(C=n,2!==r&&(S.length=i),V=a),c}function tt(e){return et(e,1)}function rt(e){return et(e,0)}function nt(){return 78===Ve()||Ve()>116}function it(){return 78===Ve()||(125!==Ve()||!De())&&((131!==Ve()||!Ce())&&Ve()>116)}function at(t,r,n){return void 0===n&&(n=!0),Ve()===t?(n&&We(),!0):!(Ve()===t||!z||!Me())||(r?Le(r):Le(e.Diagnostics._0_expected,e.tokenToString(t)),!1)}function ot(t){return Ve()===t?(Ge(),!0):(Le(e.Diagnostics._0_expected,e.tokenToString(t)),!1)}function st(e){return Ve()===e&&(We(),!0)}function ct(e){if(Ve()===e)return dt()}function lt(e){if(Ve()===e)return t=qe(),r=Ve(),Ge(),gt(q.createToken(r),t);var t,r}function ut(t,r,n){return ct(t)||_t(t,!1,r||e.Diagnostics._0_expected,n||e.tokenToString(t))}function dt(){var e=qe(),t=Ve();return We(),gt(q.createToken(t),e)}function pt(){return 26===Ve()||(19===Ve()||1===Ve()||s.hasPrecedingLineBreak())}function ft(){return pt()?(26===Ve()&&We(),!0):at(26)}function mt(t,r,n,i){var a=q.createNodeArray(t,i);return e.setTextRangePosEnd(a,r,null!=n?n:s.getStartPos()),a}function gt(t,r,n,i){return e.setTextRangePosEnd(t,r,null!=n?n:s.getStartPos()),R&&(t.flags|=R),V&&(V=!1,t.flags|=65536),i&&(t.virtual=!0),t}function _t(t,r,n,i){r?je(s.getStartPos(),0,n,i):n&&Le(n,i);var a=qe();return gt(78===t?q.createIdentifier("",void 0,void 0):e.isTemplateLiteralKind(t)?q.createTemplateLiteralLikeNode(t,"","",void 0):8===t?q.createNumericLiteral("",void 0):10===t?q.createStringLiteral("",void 0):274===t?q.createMissingDeclaration():q.createToken(t),a)}function ht(e){var t=N.get(e);return void 0===t&&N.set(e,t=e),t}function yt(t,r,n){if(t){I++;var i=qe(),a=Ve(),o=ht(s.getTokenValue());return He(),gt(q.createIdentifier(o,void 0,a),i)}if(79===Ve())return Le(n||e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),yt(!0);if(0===Ve()&&s.tryScan((function(){return 78===s.reScanInvalidIdentifier()})))return yt(!0);if(z&&Me()&&24===Ve()){I++;i=qe();return aa(q.createIdentifier(z+"Instance",void 0,78),i,i)}I++;var c=1===Ve(),l=s.isReservedWord(),u=s.getTokenText(),d=l?e.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:e.Diagnostics.Identifier_expected;return _t(78,c,r||d,u)}function vt(e){return yt(nt(),void 0,e)}function bt(e,t){return yt(it(),e,t)}function kt(t){return yt(e.tokenIsIdentifierOrKeyword(Ve()),t)}function xt(){return e.tokenIsIdentifierOrKeyword(Ve())||10===Ve()||8===Ve()}function Et(e){if(10===Ve()||8===Ve()){var t=ar();return t.text=ht(t.text),t}return e&&22===Ve()?function(){var e=qe();at(22);var t=ke(_n);return at(23),gt(q.createComputedPropertyName(t),e)}():79===Ve()?Dt():kt()}function St(){return Et(!0)}function Dt(){var e,t,r=qe(),n=q.createPrivateIdentifier((e=s.getTokenText(),void 0===(t=P.get(e))&&P.set(e,t=e),t));return We(),gt(n,r)}function wt(e){return Ve()===e&&rt(Ct)}function Tt(){return We(),!s.hasPrecedingLineBreak()&&Pt()}function Ct(){switch(Ve()){case 85:return 92===We();case 93:return We(),88===Ve()?tt(It):150===Ve()?tt(Nt):At();case 88:return It();case 124:default:return Tt();case 135:case 147:return We(),Pt()}}function At(){return 41!==Ve()&&127!==Ve()&&18!==Ve()&&Pt()}function Nt(){return We(),At()}function Pt(){return 22===Ve()||18===Ve()||41===Ve()||25===Ve()||xt()}function It(){return We(),83===Ve()||Ae()&&84===Ve()||98===Ve()||118===Ve()||126===Ve()&&tt(fi)||130===Ve()&&tt(mi)}function Ft(t,r){if(Vt(t))return!0;switch(t){case 0:case 1:case 3:return!(26===Ve()&&r)&&yi();case 2:return 81===Ve()||88===Ve();case 4:return tt(Pr);case 5:return tt(qi)||26===Ve()&&!r;case 6:return 22===Ve()||xt();case 12:switch(Ve()){case 22:case 41:case 25:case 24:return!0;default:return xt()}case 18:return xt();case 9:return 22===Ve()||25===Ve()||xt();case 7:return 18===Ve()?tt(Ot):r?it()&&!jt():mn()&&!jt();case 8:return Ai();case 10:return 27===Ve()||25===Ve()||Ai();case 19:return it()||Fe()&&void 0!==j;case 15:switch(Ve()){case 27:case 24:return!0}case 11:return 25===Ve()||gn();case 16:return vr(!1);case 17:return vr(!0);case 20:case 21:return 27===Ve()||Yr();case 22:return ia();case 23:return e.tokenIsIdentifierOrKeyword(Ve());case 13:return e.tokenIsIdentifierOrKeyword(Ve())||18===Ve();case 14:return!0}return e.Debug.fail("Non-exhaustive case in 'isListElement'.")}function Ot(){if(e.Debug.assert(18===Ve()),19===We()){var t=We();return 27===t||18===t||94===t||117===t}return!0}function Rt(){return We(),it()}function Mt(){return We(),e.tokenIsIdentifierOrKeyword(Ve())}function Lt(){return We(),e.tokenIsIdentifierOrKeywordOrGreaterThan(Ve())}function jt(){return(117===Ve()||94===Ve())&&tt(Bt)}function Bt(){return We(),gn()}function zt(){return We(),Yr()}function Ut(e){if(1===Ve())return!0;switch(e){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:return 19===Ve();case 3:return 19===Ve()||81===Ve()||88===Ve();case 7:return 18===Ve()||94===Ve()||117===Ve();case 8:return function(){if(pt())return!0;if(wn(Ve()))return!0;if(38===Ve())return!0;return!1}();case 19:return 31===Ve()||20===Ve()||18===Ve()||94===Ve()||117===Ve();case 11:return 21===Ve()||26===Ve();case 15:case 21:case 10:return 23===Ve();case 17:case 16:case 18:return 21===Ve()||23===Ve();case 20:return 27!==Ve();case 22:return 18===Ve()||19===Ve();case 13:return 31===Ve()||43===Ve();case 14:return 29===Ve()&&tt(da);default:return!1}}function qt(e,t){var r=F;F|=1<<e;for(var n=[],i=qe();!Ut(e);)if(Ft(e,!1)){var a=Jt(e,t);n.push(a)}else if(Kt(e))break;return F=r,mt(n,i)}function Jt(e,t){var r=Vt(e);return r?Ht(r):t()}function Vt(t){if(T&&function(e){switch(e){case 5:case 2:case 0:case 1:case 3:case 6:case 4:case 8:case 17:case 16:return!0}return!1}(t)&&!V){var r=T.currentNode(s.getStartPos());if(!(e.nodeIsMissing(r)||r.intersectsChange||e.containsParseError(r)))if((1099100160&r.flags)===R&&function(e,t){switch(t){case 5:return function(e){if(e)switch(e.kind){case 167:case 172:case 168:case 169:case 231:return!0;case 164:return!Ne();case 166:var t=e;return!(78===t.name.kind&&133===t.name.originalKeywordKind)}return!1}(e);case 2:return function(e){if(e)switch(e.kind){case 287:case 288:return!0}return!1}(e);case 0:case 1:case 3:return function(e){if(e)switch(e.kind){case 253:case 234:case 232:case 236:case 235:case 248:case 244:case 246:case 243:case 242:case 240:case 241:case 239:case 238:case 245:case 233:case 249:case 247:case 237:case 250:case 264:case 263:case 270:case 269:case 259:case 254:case 255:case 256:case 258:case 257:return!0}return!1}(e);case 6:return function(e){return 294===e.kind}(e);case 4:return function(e){if(e)switch(e.kind){case 171:case 165:case 172:case 163:case 170:return!0}return!1}(e);case 8:return function(e){if(251!==e.kind)return!1;var t=e;return void 0===t.initializer}(e);case 17:case 16:return function(e){if(161!==e.kind)return!1;var t=e;return void 0===t.initializer}(e)}return!1}(r,t))return r.jsDocCache&&(r.jsDocCache=void 0),r}}function Ht(e){return s.setTextPos(e.end),We(),e}function Kt(t){return function(t){switch(t){case 0:case 1:return Le(e.Diagnostics.Declaration_or_statement_expected);case 2:return Le(e.Diagnostics.case_or_default_expected);case 3:return Le(e.Diagnostics.Statement_expected);case 18:case 4:return Le(e.Diagnostics.Property_or_signature_expected);case 5:return Le(e.Diagnostics.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);case 6:return Le(e.Diagnostics.Enum_member_expected);case 7:return Le(e.Diagnostics.Expression_expected);case 8:return e.isKeyword(Ve())?Le(e.Diagnostics._0_is_not_allowed_as_a_variable_declaration_name,e.tokenToString(Ve())):Le(e.Diagnostics.Variable_declaration_expected);case 9:return Le(e.Diagnostics.Property_destructuring_pattern_expected);case 10:return Le(e.Diagnostics.Array_element_destructuring_pattern_expected);case 11:return Le(e.Diagnostics.Argument_expression_expected);case 12:return Le(e.Diagnostics.Property_assignment_expected);case 15:return Le(e.Diagnostics.Expression_or_comma_expected);case 17:case 16:return Le(e.Diagnostics.Parameter_declaration_expected);case 19:return Le(e.Diagnostics.Type_parameter_declaration_expected);case 20:return Le(e.Diagnostics.Type_argument_expected);case 21:return Le(e.Diagnostics.Type_expected);case 22:return Le(e.Diagnostics.Unexpected_token_expected);case 23:case 13:case 14:return Le(e.Diagnostics.Identifier_expected);default:;}}(t),!!function(){for(var e=0;e<24;e++)if(F&1<<e&&(Ft(e,!0)||Ut(e)))return!0;return!1}()||(We(),!1)}function Wt(e,t,r){var n=F;F|=1<<e;for(var i=[],a=qe(),o=-1;;)if(Ft(e,!1)){var c=s.getStartPos();if(i.push(Jt(e,t)),o=s.getTokenPos(),st(27))continue;if(o=-1,Ut(e))break;at(27,Gt(e)),r&&26===Ve()&&!s.hasPrecedingLineBreak()&&We(),c===s.getStartPos()&&We()}else{if(Ut(e))break;if(Kt(e))break}return F=n,mt(i,a,void 0,o>=0)}function Gt(t){return 6===t?e.Diagnostics.An_enum_member_name_must_be_followed_by_a_or:void 0}function $t(){var e=mt([],qe());return e.isMissingList=!0,e}function Yt(e,t,r,n){if(at(r)){var i=Wt(e,t);return at(n),i}return $t()}function Xt(e,t){for(var r=qe(),n=e?kt(t):bt(t),i=qe();st(24);){if(29===Ve()){n.jsdocDotPos=i;break}i=qe(),n=gt(q.createQualifiedName(n,Zt(e,!1)),r)}return n}function Qt(e,t){return gt(q.createQualifiedName(e,t),e.pos)}function Zt(t,r){if(s.hasPrecedingLineBreak()&&e.tokenIsIdentifierOrKeyword(Ve())&&tt(pi))return _t(78,!0,e.Diagnostics.Identifier_expected);if(79===Ve()){var n=Dt();return r?n:_t(78,!0,e.Diagnostics.Identifier_expected)}return t?kt():bt()}function er(e){var t=qe();return gt(q.createTemplateExpression(or(e),function(e){var t,r=qe(),n=[];do{t=ir(e),n.push(t)}while(16===t.literal.kind);return mt(n,r)}(e)),t)}function tr(){var e=qe();return gt(q.createTemplateLiteralType(or(!1),function(){var e,t=qe(),r=[];do{e=rr(),r.push(e)}while(16===e.literal.kind);return mt(r,t)}()),e)}function rr(){var e=qe();return gt(q.createTemplateLiteralTypeSpan(ln(),nr(!1)),e)}function nr(t){return 19===Ve()?(function(e){C=s.reScanTemplateToken(e)}(t),r=sr(Ve()),e.Debug.assert(16===r.kind||17===r.kind,"Template fragment has wrong token kind"),r):ut(17,e.Diagnostics._0_expected,e.tokenToString(19));var r}function ir(e){var t=qe();return gt(q.createTemplateSpan(ke(_n),nr(e)),t)}function ar(){return sr(Ve())}function or(t){t&&Ye();var r=sr(Ve());return e.Debug.assert(15===r.kind,"Template head has wrong token kind"),r}function sr(t){var r=qe(),n=e.isTemplateLiteralKind(t)?q.createTemplateLiteralLikeNode(t,s.getTokenValue(),function(e){var t=14===e||17===e,r=s.getTokenText();return r.substring(1,r.length-(s.isUnterminated()?0:t?1:2))}(t),2048&s.getTokenFlags()):8===t?q.createNumericLiteral(s.getTokenValue(),s.getNumericLiteralFlags()):10===t?q.createStringLiteral(s.getTokenValue(),void 0,s.hasExtendedUnicodeEscape()):e.isLiteralKind(t)?q.createLiteralLikeNode(t,s.getTokenValue()):e.Debug.fail();return s.hasExtendedUnicodeEscape()&&(n.hasExtendedUnicodeEscape=!0),s.isUnterminated()&&(n.isUnterminated=!0),We(),gt(n,r)}function cr(){return Xt(!0,e.Diagnostics.Type_expected)}function lr(){if(!s.hasPrecedingLineBreak()&&29===Xe())return Yt(20,ln,29,31)}function ur(){var e=qe();return gt(q.createTypeReferenceNode(cr(),lr()),e)}function dr(t){switch(t.kind){case 174:return e.nodeIsMissing(t.typeName);case 175:case 176:var r=t,n=r.parameters,i=r.type;return!!n.isMissingList||dr(i);case 187:return dr(t.type);default:return!1}}function pr(){var e=qe();return We(),gt(q.createThisTypeNode(),e)}function fr(){var e,t=qe();return 108!==Ve()&&103!==Ve()||(e=kt(),at(58)),gt(q.createParameterDeclaration(void 0,void 0,void 0,e,void 0,mr(),void 0),t)}function mr(){s.setInJSDocType(!0);var e=qe();if(st(140)){var t=q.createJSDocNamepathType(void 0);e:for(;;)switch(Ve()){case 19:case 1:case 27:case 5:break e;default:Ge()}return s.setInJSDocType(!1),gt(t,e)}var r=st(25),n=sn();return s.setInJSDocType(!1),r&&(n=gt(q.createJSDocVariadicType(n),e)),62===Ve()?(We(),gt(q.createJSDocOptionalType(n),e)):n}function gr(e){var t,r,n=qe(),i=void 0!==e?function(e){I++;var t=ht(j.type);return aa(q.createIdentifier(t),e,e)}(e):bt();st(94)&&(Yr()||!gn()?t=ln():r=Nn());var a=st(62)?ln():void 0,o=q.createTypeParameterDeclaration(i,t,a);return o.expression=r,void 0!==e?aa(o,e,e):gt(o,n)}function _r(){if(29===Ve())return Yt(19,gr,29,31)}function hr(e){return mt([gr(e)],qe())}function yr(e,t){if(!(131072&R))return mt([un(e,t)],qe())}function vr(t){return 25===Ve()||Ai()||e.isModifierKind(Ve())||59===Ve()||Yr(!t)}function br(){return xr(!0)}function kr(){return xr(!1)}function xr(t){var r=qe(),n=Je();if(108===Ve())return X(gt(q.createParameterDeclaration(void 0,void 0,void 0,yt(!0),void 0,fn(),void 0),r),n);var i=t?xe(Hi):Hi(),a=J;J=!1;var o=Wi(),s=X(gt(q.createParameterDeclaration(i,o,ct(25),function(t){var r=Ni(e.Diagnostics.Private_identifiers_cannot_be_used_as_parameters);return 0===e.getFullWidth(r)&&!e.some(t)&&e.isModifierKind(Ve())&&We(),r}(o),ct(57),fn(),hn()),r),n);return J=a,s}function Er(t,r){if(function(t,r){if(38===t)return at(t),!0;if(st(58))return!0;if(r&&38===Ve())return Le(e.Diagnostics._0_expected,e.tokenToString(58)),We(),!0;return!1}(t,r))return sn()}function Sr(e){var t=De(),r=Ce();ce(!!(1&e)),ue(!!(2&e));var n=32&e?Wt(17,fr):Wt(16,r?br:kr);return ce(t),ue(r),n}function Dr(e){if(!at(20))return $t();var t=Sr(e);return at(21),t}function wr(){st(27)||ft()}function Tr(e){var t=qe(),r=Je();171===e&&at(103);var n=_r(),i=Dr(4),a=Er(58,!0);return wr(),X(gt(170===e?q.createCallSignature(n,i,a):q.createConstructSignature(n,i,a),t),r)}function Cr(){return 22===Ve()&&tt(Ar)}function Ar(){if(We(),25===Ve()||23===Ve())return!0;if(e.isModifierKind(Ve())){if(We(),it())return!0}else{if(!it())return!1;We()}return 58===Ve()||27===Ve()||57===Ve()&&(We(),58===Ve()||27===Ve()||23===Ve())}function Nr(e,t,r,n){var i=Yt(16,kr,22,23),a=fn();return wr(),X(gt(q.createIndexSignature(r,n,i,a),e),t)}function Pr(){if(20===Ve()||29===Ve())return!0;for(var t=!1;e.isModifierKind(Ve());)t=!0,We();return 22===Ve()||(xt()&&(t=!0,We()),!!t&&(20===Ve()||29===Ve()||57===Ve()||58===Ve()||27===Ve()||pt()))}function Ir(){if(20===Ve()||29===Ve())return Tr(170);if(103===Ve()&&tt(Fr))return Tr(171);var e=qe(),t=Je(),r=Wi();return Cr()?Nr(e,t,void 0,r):function(e,t,r){var n,i=St(),a=ct(57);if(20===Ve()||29===Ve()){var o=_r(),s=Dr(4),c=Er(58,!0);n=q.createMethodSignature(r,i,a,o,s,c)}else c=fn(),n=q.createPropertySignature(r,i,a,c),62===Ve()&&(n.initializer=hn());return wr(),X(gt(n,e),t)}(e,t,r)}function Fr(){return We(),20===Ve()||29===Ve()}function Or(){return 24===We()}function Rr(){switch(We()){case 20:case 29:case 24:return!0}return!1}function Mr(){var e;return at(18)?(e=qt(4,Ir),at(19)):e=$t(),e}function Lr(){return We(),39===Ve()||40===Ve()?143===We():(143===Ve()&&We(),22===Ve()&&Rt()&&101===We())}function jr(){var e,t=qe();at(18),143!==Ve()&&39!==Ve()&&40!==Ve()||143!==(e=dt()).kind&&at(143),at(22);var r,n=function(){var e=qe(),t=kt();at(101);var r=ln();return gt(q.createTypeParameterDeclaration(t,r,void 0),e)}(),i=st(127)?ln():void 0;at(23),57!==Ve()&&39!==Ve()&&40!==Ve()||57!==(r=dt()).kind&&at(57);var a=fn();return ft(),at(19),gt(q.createMappedTypeNode(e,n,i,r,a),t)}function Br(){var t=qe();if(st(25))return gt(q.createRestTypeNode(ln()),t);var r=ln();if(e.isJSDocNullableType(r)&&r.pos===r.type.pos){var n=q.createOptionalTypeNode(r.type);return e.setTextRange(n,r),n.flags=r.flags,n}return r}function zr(){return 58===We()||57===Ve()&&58===We()}function Ur(){return 25===Ve()?e.tokenIsIdentifierOrKeyword(We())&&zr():e.tokenIsIdentifierOrKeyword(Ve())&&zr()}function qr(){if(tt(Ur)){var e=qe(),t=Je(),r=ct(25),n=kt(),i=ct(57);at(58);var a=Br();return X(gt(q.createNamedTupleMember(r,n,i,a),e),t)}return Br()}function Jr(){var e=qe(),t=Je(),r=function(){var e;if(126===Ve()){var t=qe();We(),e=mt([gt(q.createToken(126),t)],t)}return e}(),n=st(103),i=_r(),a=Dr(4),o=Er(38,!1),s=n?q.createConstructorTypeNode(r,i,a,o):q.createFunctionTypeNode(i,a,o);return n||(s.modifiers=r),X(gt(s,e),t)}function Vr(){var e=dt();return 24===Ve()?void 0:e}function Hr(e){var t=qe();e&&We();var r=110===Ve()||95===Ve()||104===Ve()?dt():sr(Ve());return e&&(r=gt(q.createPrefixUnaryExpression(40,r),t)),gt(q.createLiteralTypeNode(r),t)}function Kr(){return We(),100===Ve()}function Wr(){g|=1048576;var e=qe(),t=st(112);at(100),at(20);var r=ln();at(21);var n=st(24)?cr():void 0,i=lr();return gt(q.createImportTypeNode(r,n,i,t),e)}function Gr(){return We(),8===Ve()||9===Ve()}function $r(){switch(Ve()){case 129:case 153:case 148:case 145:case 156:case 149:case 132:case 151:case 142:case 146:return rt(Vr)||ur();case 65:s.reScanAsteriskEqualsToken();case 41:return r=qe(),We(),gt(q.createJSDocAllType(),r);case 60:s.reScanQuestionToken();case 57:return function(){var e=qe();return We(),27===Ve()||19===Ve()||21===Ve()||31===Ve()||62===Ve()||51===Ve()?gt(q.createJSDocUnknownType(),e):gt(q.createJSDocNullableType(ln()),e)}();case 98:return function(){var e=qe(),t=Je();if(tt(ua)){We();var r=Dr(36),n=Er(58,!1);return X(gt(q.createJSDocFunctionType(r,n),e),t)}return gt(q.createTypeReferenceNode(kt(),void 0),e)}();case 53:return function(){var e=qe();return We(),gt(q.createJSDocNonNullableType($r()),e)}();case 14:case 10:case 8:case 9:case 110:case 95:case 104:return Hr();case 40:return tt(Gr)?Hr(!0):ur();case 114:return dt();case 108:var e=pr();return 138!==Ve()||s.hasPrecedingLineBreak()?e:(t=e,We(),gt(q.createTypePredicateNode(void 0,t,ln()),t.pos));case 112:return tt(Kr)?Wr():function(){var e=qe();return at(112),gt(q.createTypeQueryNode(Xt(!0)),e)}();case 18:return tt(Lr)?jr():function(){var e=qe();return gt(q.createTypeLiteralNode(Mr()),e)}();case 22:return function(){var e=qe();return gt(q.createTupleTypeNode(Yt(21,qr,22,23)),e)}();case 20:return function(){var e=qe();at(20);var t=ln();return at(21),gt(q.createParenthesizedType(t),e)}();case 100:return Wr();case 128:return tt(pi)?function(){var e=qe(),t=ut(128),r=108===Ve()?pr():bt(),n=st(138)?ln():void 0;return gt(q.createTypePredicateNode(t,r,n),e)}():ur();case 15:return tr();default:return ur()}var t,r}function Yr(e){switch(Ve()){case 129:case 153:case 148:case 145:case 156:case 132:case 143:case 149:case 152:case 114:case 151:case 104:case 108:case 112:case 142:case 18:case 22:case 29:case 51:case 50:case 103:case 10:case 8:case 9:case 110:case 95:case 146:case 41:case 57:case 53:case 25:case 136:case 100:case 128:case 14:case 15:return!0;case 98:return!e;case 40:return!e&&tt(Gr);case 20:return!e&&tt(Xr);default:return it()}}function Xr(){return We(),21===Ve()||vr(!1)||Yr()}function Qr(){var e=qe();return at(136),gt(q.createInferTypeNode(function(){var e=qe();return gt(q.createTypeParameterDeclaration(bt(),void 0,void 0),e)}()),e)}function Zr(){var e=Ve();switch(e){case 139:case 152:case 143:return function(e){var t=qe();return at(e),gt(q.createTypeOperatorNode(e,Zr()),t)}(e);case 136:return Qr()}return function(){for(var e=qe(),t=$r();!s.hasPrecedingLineBreak();)switch(Ve()){case 53:We(),t=gt(q.createJSDocNonNullableType(t),e);break;case 57:if(tt(zt))return t;We(),t=gt(q.createJSDocNullableType(t),e);break;case 22:if(at(22),Yr()){var r=ln();at(23),t=gt(q.createIndexedAccessTypeNode(t,r),e)}else at(23),t=gt(q.createArrayTypeNode(t),e);break;default:return t}return t}()}function en(t){if(an()){var r=Jr();return ze(r,e.isFunctionTypeNode(r)?t?e.Diagnostics.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:e.Diagnostics.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:t?e.Diagnostics.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:e.Diagnostics.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type),r}}function tn(e,t,r){var n=qe(),i=51===e,a=st(e),o=a&&en(i)||t();if(Ve()===e||a){for(var s=[o];st(e);)s.push(en(i)||t());o=gt(r(mt(s,n)),n)}return o}function rn(){return tn(50,Zr,q.createIntersectionTypeNode)}function nn(){return We(),103===Ve()}function an(){return 29===Ve()||(!(20!==Ve()||!tt(on))||(103===Ve()||126===Ve()&&tt(nn)))}function on(){if(We(),21===Ve()||25===Ve())return!0;if(function(){if(e.isModifierKind(Ve())&&Wi(),it()||108===Ve())return We(),!0;if(22===Ve()||18===Ve()){var t=S.length;return Ni(),t===S.length}return!1}()){if(58===Ve()||27===Ve()||57===Ve()||62===Ve())return!0;if(21===Ve()&&(We(),38===Ve()))return!0}return!1}function sn(){var e=qe(),t=it()&&rt(cn),r=ln();return t?gt(q.createTypePredicateNode(void 0,t,r),e):r}function cn(){var e=bt();if(138===Ve()&&!s.hasPrecedingLineBreak())return We(),e}function ln(){return ve(40960,dn)}function un(e,t){var r=40960&R;if(r){ae(!1,r);var n=pn(e,t);return ae(!0,r),n}return pn(e,t)}function dn(e){if(an())return Jr();var t=qe(),r=tn(51,rn,q.createUnionTypeNode);if(!e&&!s.hasPrecedingLineBreak()&&st(94)){var n=dn(!0);at(57);var i=dn();at(58);var a=dn();return gt(q.createConditionalTypeNode(r,n,i,a),t)}return r}function pn(e,t){return aa(q.createTypeReferenceNode(aa(q.createIdentifier(t),e,e)),e,e)}function fn(){return st(58)?ln():void 0}function mn(){switch(Ve()){case 108:case 106:case 104:case 110:case 95:case 8:case 9:case 10:case 14:case 15:case 20:case 22:case 18:case 98:case 83:case 103:case 43:case 67:case 78:return!0;case 84:return Ae();case 100:return tt(Rr);default:return it()}}function gn(){if(mn())return!0;switch(Ve()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 45:case 46:case 29:case 131:case 125:case 79:return!0;case 24:return Ie()&&!!L||Fe()&&!!j;default:return!!function(){if(we()&&101===Ve())return!1;return e.getBinaryOperatorPrecedence(Ve())>0}()||it()}}function _n(){var e=Te();e&&le(!1);for(var t,r=qe(),n=yn();t=ct(27);)n=Cn(n,t,yn(),r);return e&&le(!0),n}function hn(){return st(62)?yn():void 0}function yn(){if(function(){if(125===Ve())return!!De()||tt(gi);return!1}())return function(){var e=qe();return We(),s.hasPrecedingLineBreak()||41!==Ve()&&!gn()?gt(q.createYieldExpression(void 0,void 0),e):gt(q.createYieldExpression(ct(41),yn()),e)}();var t=function(){var e=function(){if(20===Ve()||29===Ve()||130===Ve())return tt(bn);if(38===Ve())return 1;return 0}();if(0===e)return;return 1===e?En(!0):rt(kn)}()||function(){if(130===Ve()&&1===tt(xn)){var e=qe(),t=Gi();return vn(e,Dn(0),t)}return}();if(t)return t;var r=qe(),n=Dn(0);return 78===n.kind&&38===Ve()?vn(r,n,void 0):e.isLeftHandSideExpression(n)&&e.isAssignmentOperator($e())?Cn(n,dt(),yn(),r):Ae()&&e.isCallExpression(n)&&18===Ve()?function(e,t){var r=e.expression,n=oi(0);return gt(q.createEtsComponentExpression(r,e.arguments,n),t)}(n,r):function(t,r){var n,i=ct(57);if(!i)return t;return gt(q.createConditionalExpression(t,i,ve(l,yn),n=ut(58),e.nodeIsPresent(n)?yn():_t(78,!1,e.Diagnostics._0_expected,e.tokenToString(58))),r)}(n,r)}function vn(t,r,n){e.Debug.assert(38===Ve(),"parseSimpleArrowFunctionExpression should only have been called if we had a =>");var i=q.createParameterDeclaration(void 0,void 0,void 0,r,void 0,void 0,void 0);gt(i,r.pos);var a=mt([i],i.pos,i.end),o=ut(38),s=Sn(!!n);return re(gt(q.createArrowFunction(n,void 0,a,void 0,o,s),t))}function bn(){if(130===Ve()){if(We(),s.hasPrecedingLineBreak())return 0;if(20!==Ve()&&29!==Ve())return 0}var t=Ve(),r=We();if(20===t){if(21===r)switch(We()){case 38:case 58:case 18:return 1;default:return 0}if(22===r||18===r)return 2;if(25===r)return 1;if(e.isModifierKind(r)&&130!==r&&tt(Rt))return 1;if(!it()&&108!==r)return 0;switch(We()){case 58:return 1;case 57:return We(),58===Ve()||27===Ve()||62===Ve()||21===Ve()?1:0;case 27:case 62:case 21:return 2}return 0}if(e.Debug.assert(29===t),!it())return 0;if(1===E){var n=tt((function(){var e=We();if(94===e)switch(We()){case 62:case 31:return!1;default:return!0}else if(27===e)return!0;return!1}));return n?1:0}return 2}function kn(){var t=s.getTokenPos();if(!(null==O?void 0:O.has(t))){var r=En(!1);return r||(O||(O=new e.Set)).add(t),r}}function xn(){if(130===Ve()){if(We(),s.hasPrecedingLineBreak()||38===Ve())return 0;var e=Dn(0);if(!s.hasPrecedingLineBreak()&&78===e.kind&&38===Ve())return 1}return 0}function En(t){var r,n=qe(),i=Je(),a=Gi(),o=e.some(a,e.isAsyncModifier)?2:0,s=_r();if(at(20)){if(r=Sr(o),!at(21)&&!t)return}else{if(!t)return;r=$t()}var c=Er(58,!1);if(!c||t||!dr(c)){var l=c&&e.isJSDocFunctionType(c);if(t||38===Ve()||!l&&18===Ve()){var u=Ve(),d=ut(38),p=38===u||18===u?Sn(e.some(a,e.isAsyncModifier)):bt();return X(gt(q.createArrowFunction(a,s,r,c,d,p),n),i)}}}function Sn(e){if(18===Ve())return oi(e?2:0);if(26!==Ve()&&98!==Ve()&&83!==Ve()&&(!Ae()||84!==Ve())&&yi()&&(18===Ve()||98===Ve()||83===Ve()||Ae()&&84===Ve()||59===Ve()||!gn()))return oi(16|(e?2:0));var t=J;J=!1;var r=e?xe(yn):ve(32768,yn);return J=t,r}function Dn(e){var t=qe();return Tn(e,Nn(),t)}function wn(e){return 101===e||157===e}function Tn(t,r,n){for(;;){$e();var i=e.getBinaryOperatorPrecedence(Ve());if(!(42===Ve()?i>=t:i>t))break;if(101===Ve()&&we())break;if(127===Ve()){if(s.hasPrecedingLineBreak())break;We(),a=r,o=ln(),r=gt(q.createAsExpression(a,o),a.pos)}else r=Cn(r,dt(),Dn(i),n)}var a,o;return r}function Cn(e,t,r,n){return gt(q.createBinaryExpression(e,t,r),n)}function An(){var e=qe();return gt(q.createPrefixUnaryExpression(Ve(),Ke(Pn)),e)}function Nn(){if(function(){switch(Ve()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 131:return!1;case 29:if(1!==E)return!1;default:return!0}}()){var t=qe(),r=In();return 42===Ve()?Tn(e.getBinaryOperatorPrecedence(Ve()),r,t):r}var n=Ve(),i=Pn();if(42===Ve()){t=e.skipTrivia(b,i.pos);var a=i.end;207===i.kind?Be(t,a,e.Diagnostics.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):Be(t,a,e.Diagnostics.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,e.tokenToString(n))}return i}function Pn(){switch(Ve()){case 39:case 40:case 54:case 53:return An();case 89:return e=qe(),gt(q.createDeleteExpression(Ke(Pn)),e);case 112:return function(){var e=qe();return gt(q.createTypeOfExpression(Ke(Pn)),e)}();case 114:return function(){var e=qe();return gt(q.createVoidExpression(Ke(Pn)),e)}();case 29:return function(){var e=qe();at(29);var t=ln();at(31);var r=Pn();return gt(q.createTypeAssertion(t,r),e)}();case 131:if(131===Ve()&&(Ce()||tt(gi)))return function(){var e=qe();return gt(q.createAwaitExpression(Ke(Pn)),e)}();default:return In()}var e}function In(){if(45===Ve()||46===Ve()){var t=qe();return gt(q.createPrefixUnaryExpression(Ve(),Ke(Fn)),t)}if(1===E&&29===Ve()&&tt(Lt))return Rn(!0);var r=Fn();if(e.Debug.assert(e.isLeftHandSideExpression(r)),(45===Ve()||46===Ve())&&!s.hasPrecedingLineBreak()){var n=Ve();return We(),gt(q.createPostfixUnaryExpression(r,n),r.pos)}return r}function Fn(){var t,r=qe();return 100===Ve()?tt(Fr)?(g|=1048576,t=dt()):tt(Or)?(We(),We(),t=gt(q.createMetaProperty(100,kt()),r),g|=2097152):t=On():t=106===Ve()?function(){var t=qe(),r=dt();if(29===Ve()){var n=qe();void 0!==rt(Yn)&&Be(n,qe(),e.Diagnostics.super_may_not_use_type_arguments)}if(20===Ve()||24===Ve()||22===Ve())return r;return ut(24,e.Diagnostics.super_must_be_followed_by_an_argument_list_or_member_access),gt(q.createPropertyAccessExpression(r,Zt(!0,!0)),t)}():On(),Gn(r,t)}function On(){var e=qe();return Hn(e,Ie()&&L&&24===Ve()?aa(q.createIdentifier(L.instance,void 0,78),e,e):Fe()&&j&&24===Ve()?aa(q.createIdentifier(j.instance,void 0,78),e,e):Me()&&z&&24===Ve()?aa(q.createIdentifier(z+"Instance",void 0,78),e,e):Xn(),!0)}function Rn(t,r){var n,i=qe(),a=function(e){var t=qe();if(at(29),31===Ve())return Ze(),gt(q.createJsxOpeningFragment(),t);var r,n=jn(),i=131072&R?void 0:na(),a=function(){var e=qe();return gt(q.createJsxAttributes(qt(13,zn)),e)}();31===Ve()?(Ze(),r=q.createJsxOpeningElement(n,i,a)):(at(43),e?at(31):(at(31,void 0,!1),Ze()),r=q.createJsxSelfClosingElement(n,i,a));return gt(r,t)}(t);if(278===a.kind){var o=Ln(a),s=function(e){var t=qe();at(30);var r=jn();e?at(31):(at(31,void 0,!1),Ze());return gt(q.createJsxClosingElement(r),t)}(t);w(a.tagName,s.tagName)||ze(s,e.Diagnostics.Expected_corresponding_JSX_closing_tag_for_0,e.getTextOfNodeFromSourceText(b,a.tagName)),n=gt(q.createJsxElement(a,o,s),i)}else 281===a.kind?n=gt(q.createJsxFragment(a,Ln(a),function(t){var r=qe();at(30),e.tokenIsIdentifierOrKeyword(Ve())&&ze(jn(),e.Diagnostics.Expected_corresponding_closing_tag_for_JSX_fragment);t?at(31):(at(31,void 0,!1),Ze());return gt(q.createJsxJsxClosingFragment(),r)}(t)),i):(e.Debug.assert(277===a.kind),n=a);if(t&&29===Ve()){var c=void 0===r?n.pos:r,l=rt((function(){return Rn(!0,c)}));if(l){var u=_t(27,!1);return e.setTextRangePosWidth(u,l.pos,0),Be(e.skipTrivia(b,c),l.end,e.Diagnostics.JSX_expressions_must_have_one_parent_element),gt(q.createBinaryExpression(n,u,l),i)}}return n}function Mn(t,r){switch(r){case 1:if(e.isJsxOpeningFragment(t))ze(t,e.Diagnostics.JSX_fragment_has_no_corresponding_closing_tag);else{var n=t.tagName;Be(e.skipTrivia(b,n.pos),n.end,e.Diagnostics.JSX_element_0_has_no_corresponding_closing_tag,e.getTextOfNodeFromSourceText(b,t.tagName))}return;case 30:case 7:return;case 11:case 12:return i=qe(),a=q.createJsxText(s.getTokenValue(),12===C),C=s.scanJsxToken(),gt(a,i);case 18:return Bn(!1);case 29:return Rn(!1);default:return e.Debug.assertNever(r)}var i,a}function Ln(e){var t=[],r=qe(),n=F;for(F|=16384;;){var i=Mn(e,C=s.reScanJsxToken());if(!i)break;t.push(i)}return F=n,mt(t,r)}function jn(){var e=qe();Qe();for(var t=108===Ve()?dt():kt();st(24);)t=gt(q.createPropertyAccessExpression(t,Zt(!0,!1)),e);return t}function Bn(e){var t,r,n=qe();if(at(18))return 19!==Ve()&&(t=ct(25),r=_n()),e?at(19):at(19,void 0,!1)&&Ze(),gt(q.createJsxExpression(t,r),n)}function zn(){if(18===Ve())return function(){var e=qe();at(18),at(25);var t=_n();return at(19),gt(q.createJsxSpreadAttribute(t),e)}();Qe();var e=qe();return gt(q.createJsxAttribute(kt(),62!==Ve()?void 0:10===(C=s.scanJsxAttributeValue())?ar():Bn(!0)),e)}function Un(){return We(),e.tokenIsIdentifierOrKeyword(Ve())||22===Ve()||Kn()}function qn(t){if(32&t.flags)return!0;if(e.isNonNullExpression(t)){for(var r=t.expression;e.isNonNullExpression(r)&&!(32&r.flags);)r=r.expression;if(32&r.flags){for(;e.isNonNullExpression(t);)t.flags|=32,t=t.expression;return!0}}return!1}function Jn(t,r,n){var i=Zt(!0,!0),a=n||qn(r),o=a?q.createPropertyAccessChain(r,n,i):q.createPropertyAccessExpression(r,i);return a&&e.isPrivateIdentifier(o.name)&&ze(o.name,e.Diagnostics.An_optional_chain_cannot_contain_private_identifiers),gt(o,t)}function Vn(t,r,n){var i;if(23===Ve())i=_t(78,!0,e.Diagnostics.An_element_access_expression_should_take_an_argument);else{var a=ke(_n);e.isStringOrNumericLiteralLike(a)&&(a.text=ht(a.text)),i=a}return at(23),gt(n||qn(r)?q.createElementAccessChain(r,n,i):q.createElementAccessExpression(r,i),t)}function Hn(t,r,n){for(;;){var i=void 0,a=!1;if(n&&28===Ve()&&tt(Un)?(i=ut(28),a=e.tokenIsIdentifierOrKeyword(Ve())):a=st(24),a)r=Jn(t,r,i);else if(i||53!==Ve()||s.hasPrecedingLineBreak())if(!i&&Te()||!st(22)){if(!Kn())return r;r=Wn(t,r,i,void 0)}else r=Vn(t,r,i);else We(),r=gt(q.createNonNullExpression(r),t)}}function Kn(){return 14===Ve()||15===Ve()}function Wn(e,t,r,n){var i=q.createTaggedTemplateExpression(t,n,14===Ve()?(Ye(),ar()):er(!0));return(r||32&t.flags)&&(i.flags|=32),i.questionDotToken=r,gt(i,e)}function Gn(t,r){for(var n,i,a,o,s;;){r=Hn(t,r,!0);var l=ct(28);if(131072&R||29!==Ve()&&47!==Ve()){if(20===Ve()){var u=void 0;if(((Oe()||Re())&&Ne()||Re())&&e.isPropertyAccessExpression(r)){var d=e.getRootEtsComponent(r);if(d){var p=d.expression.escapedText.toString();(s=e.getTextOfPropertyName(r.name).toString())===(null===(i=null===(n=null==c?void 0:c.ets)||void 0===n?void 0:n.styles)||void 0===i?void 0:i.property)?(ye(!0),z=p):(ye(!1),z=void 0),u=yr(t,p+"Attribute")}else Me()&&z&&(u=yr(t,z+"Attribute"))}f=$n();r=gt(l||qn(r)?q.createCallChain(r,l,u,f):q.createCallExpression(r,u,f),t);continue}}else if(u=rt(Yn)){if(Kn()){r=Wn(t,r,l,u);continue}var f=$n();r=gt(l||qn(r)?q.createCallChain(r,l,u,f):q.createCallExpression(r,u,f),t);continue}if(l){var m=_t(78,!1,e.Diagnostics.Identifier_expected);r=gt(q.createPropertyAccessChain(r,l,m),t)}break}return s===(null===(o=null===(a=null==c?void 0:c.ets)||void 0===a?void 0:a.styles)||void 0===o?void 0:o.property)&&(ye(!1),z=void 0),r}function $n(){at(20);var e=Wt(11,Zn);return at(21),e}function Yn(){if(!(131072&R)&&29===Xe()){We();var e=Wt(20,ln);if(at(31))return e&&function(){switch(Ve()){case 20:case 14:case 15:case 24:case 21:case 23:case 58:case 26:case 57:case 34:case 36:case 35:case 37:case 55:case 56:case 60:case 52:case 50:case 51:case 19:case 1:return!0;default:return!1}}()?e:void 0}}function Xn(){switch(Ve()){case 8:case 9:case 10:case 14:return ar();case 108:case 106:case 104:case 110:case 95:return dt();case 20:return function(){var e=qe(),t=Je();at(20);var r=ke(_n);return at(21),X(gt(q.createParenthesizedExpression(r),e),t)}();case 22:return ei();case 18:return ri();case 130:if(!tt(mi))break;return ni();case 83:return Qi(qe(),Je(),void 0,void 0,223);case 98:return ni();case 103:return function(){fe(Pe());var t=qe();if(at(103),st(24)){var r=kt();return gt(q.createMetaProperty(103,r),t)}var n,i,a=qe(),o=Xn();for(;;){o=Hn(a,o,!1),n=rt(Yn),Kn()&&(e.Debug.assert(!!n,"Expected a type argument list; all plain tagged template starts should be consumed in 'parseMemberExpressionRest'"),o=Wn(a,o,void 0,n),n=void 0);break}20===Ve()?i=$n():n&&Be(t,s.getStartPos(),e.Diagnostics.A_new_expression_with_type_arguments_must_always_be_followed_by_a_parenthesized_argument_list);return fe(!1),gt(q.createNewExpression(o,n,i),t)}();case 43:case 67:if(13===(C=s.reScanSlashToken()))return ar();break;case 15:return er(!1)}return!Pe()||!(null!==(o=null===(a=c.ets)||void 0===a?void 0:a.components)&&void 0!==o?o:[]).includes(s.getTokenText())||Ae()&&Se(256)?bt(e.Diagnostics.Expression_expected):(t=qe(),r=vt(),n=$n(),i=18===Ve()?oi(0):void 0,gt(q.createEtsComponentExpression(r,n,i),t));var t,r,n,i,a,o}function Qn(){return 25===Ve()?function(){var e=qe();at(25);var t=yn();return gt(q.createSpreadElement(t),e)}():27===Ve()?gt(q.createOmittedExpression(),qe()):yn()}function Zn(){return ve(l,Qn)}function ei(){var e=qe();at(22);var t=s.hasPrecedingLineBreak(),r=Wt(15,Qn);return at(23),gt(q.createArrayLiteralExpression(r,t),e)}function ti(){var e=qe(),t=Je();if(ct(25)){var r=yn();return X(gt(q.createSpreadAssignment(r),e),t)}var n=Hi(),i=Wi();if(wt(135))return Ui(e,t,n,i,168);if(wt(147))return Ui(e,t,n,i,169);var a,o=ct(41),s=it(),c=St(),l=ct(57),u=ct(53);if(o||20===Ve()||29===Ve())return ji(e,t,n,i,o,c,l,u);if(s&&58!==Ve()){var d=ct(62),p=d?ke(yn):void 0;(a=q.createShorthandPropertyAssignment(c,p)).equalsToken=d}else{at(58);var f=ke(yn);a=q.createPropertyAssignment(c,f)}return a.decorators=n,a.modifiers=i,a.questionToken=l,a.exclamationToken=u,X(gt(a,e),t)}function ri(){var t=qe(),r=s.getTokenPos();at(18);var n=s.hasPrecedingLineBreak(),i=Wt(12,ti,!0);if(!at(19)){var a=e.lastOrUndefined(S);a&&a.code===e.Diagnostics._0_expected.code&&e.addRelatedInfo(a,e.createDetachedDiagnostic(p,r,1,e.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here))}return gt(q.createObjectLiteralExpression(i,n),t)}function ni(){var t=Te();t&&le(!1);var r=qe(),n=Je(),i=Wi();at(98);var a=ct(41),o=a?1:0,s=e.some(i,e.isAsyncModifier)?2:0,c=o&&s?be(40960,ii):o?function(e){return be(8192,e)}(ii):s?xe(ii):ii(),l=_r(),u=Dr(o|s),d=Er(58,!1),p=oi(o|s);return t&&le(!0),X(gt(q.createFunctionExpression(i,a,c,l,u,d,p),r),n)}function ii(){return nt()?vt():void 0}function ai(t,r){var n=qe(),i=s.getTokenPos();if(at(18,r)||t){var a=s.hasPrecedingLineBreak(),o=qt(1,bi);if(!at(19)){var c=e.lastOrUndefined(S);c&&c.code===e.Diagnostics._0_expected.code&&e.addRelatedInfo(c,e.createDetachedDiagnostic(p,i,1,e.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here))}return gt(q.createBlock(o,a),n)}o=$t();return gt(q.createBlock(o,void 0),n)}function oi(e,t){var r=De();ce(!!(1&e));var n=Ce();ue(!!(2&e));var i=J;J=!1;var a=Te();a&&le(!1);var o=ai(!!(16&e),t);return a&&le(!0),J=i,ce(r),ue(n),o}function si(){var e=qe();at(97);var t,r,n=ct(131);if(at(20),26!==Ve()&&(t=113===Ve()||119===Ve()||85===Ve()?Fi(!0):be(4096,_n)),n?at(157):st(157)){var i=ke(yn);at(21),r=q.createForOfStatement(n,t,i,bi())}else if(st(101)){i=ke(_n);at(21),r=q.createForInStatement(t,i,bi())}else{at(26);var a=26!==Ve()&&21!==Ve()?ke(_n):void 0;at(26);var o=21!==Ve()?ke(_n):void 0;at(21),r=q.createForStatement(t,a,o,bi())}return gt(r,e)}function ci(e){var t=qe();at(243===e?80:86);var r=pt()?void 0:bt();return ft(),gt(243===e?q.createBreakStatement(r):q.createContinueStatement(r),t)}function li(){return 81===Ve()?function(){var e=qe();at(81);var t=ke(_n);at(58);var r=qt(3,bi);return gt(q.createCaseClause(t,r),e)}():function(){var e=qe();at(88),at(58);var t=qt(3,bi);return gt(q.createDefaultClause(t),e)}()}function ui(){var e=qe();at(107),at(20);var t=ke(_n);at(21);var r=function(){var e=qe();at(18);var t=qt(2,li);return at(19),gt(q.createCaseBlock(t),e)}();return gt(q.createSwitchStatement(t,r),e)}function di(){var e=qe();at(111);var t,r=ai(!1),n=82===Ve()?function(){var e,t=qe();at(82),st(20)?(e=Ii(),at(21)):e=void 0;var r=ai(!1);return gt(q.createCatchClause(e,r),t)}():void 0;return n&&96!==Ve()||(at(96),t=ai(!1)),gt(q.createTryStatement(r,n,t),e)}function pi(){return We(),e.tokenIsIdentifierOrKeyword(Ve())&&!s.hasPrecedingLineBreak()}function fi(){return We(),83===Ve()&&!s.hasPrecedingLineBreak()}function mi(){return We(),98===Ve()&&!s.hasPrecedingLineBreak()}function gi(){return We(),(e.tokenIsIdentifierOrKeyword(Ve())||8===Ve()||9===Ve()||10===Ve())&&!s.hasPrecedingLineBreak()}function _i(){for(;;)switch(Ve()){case 113:case 119:case 85:case 98:case 83:case 92:return!0;case 84:return Ae();case 118:case 150:return We(),!s.hasPrecedingLineBreak()&&it();case 140:case 141:return Di();case 126:case 130:case 134:case 121:case 122:case 123:case 143:if(We(),s.hasPrecedingLineBreak())return!1;continue;case 155:return We(),18===Ve()||78===Ve()||93===Ve();case 100:return We(),10===Ve()||41===Ve()||18===Ve()||e.tokenIsIdentifierOrKeyword(Ve());case 93:var t=We();if(150===t&&(t=tt(We)),62===t||41===t||18===t||88===t||127===t)return!0;continue;case 124:We();continue;default:return!1}}function hi(){return tt(_i)}function yi(){switch(Ve()){case 59:case 26:case 18:case 113:case 119:case 98:case 83:case 92:case 99:case 90:case 115:case 97:case 86:case 80:case 105:case 116:case 107:case 109:case 111:case 87:case 82:case 96:case 130:case 134:case 118:case 140:case 141:case 150:case 155:return!0;case 84:return Ae();case 100:return hi()||tt(Rr);case 85:case 93:return hi();case 123:case 121:case 122:case 124:case 143:return hi()||!tt(pi);default:return gn()}}function vi(){return We(),it()||18===Ve()||22===Ve()}function bi(){switch(Ve()){case 26:return t=qe(),at(26),gt(q.createEmptyStatement(),t);case 18:return ai(!1);case 113:return Ri(qe(),Je(),void 0,void 0);case 119:if(tt(vi))return Ri(qe(),Je(),void 0,void 0);break;case 98:return Mi(qe(),Je(),void 0,void 0);case 84:if(Ae())return Xi(qe(),Je(),void 0,void 0);break;case 83:return Yi(qe(),Je(),void 0,void 0);case 99:return function(){var e=qe();at(99),at(20);var t=ke(_n);at(21);var r=bi(),n=st(91)?bi():void 0;return gt(q.createIfStatement(t,r,n),e)}();case 90:return function(){var e=qe();at(90);var t=bi();at(115),at(20);var r=ke(_n);return at(21),st(26),gt(q.createDoStatement(t,r),e)}();case 115:return function(){var e=qe();at(115),at(20);var t=ke(_n);at(21);var r=bi();return gt(q.createWhileStatement(t,r),e)}();case 97:return si();case 86:return ci(242);case 80:return ci(243);case 105:return function(){var e=qe();at(105);var t=pt()?void 0:ke(_n);return ft(),gt(q.createReturnStatement(t),e)}();case 116:return function(){var e=qe();at(116),at(20);var t=ke(_n);at(21);var r=be(16777216,bi);return gt(q.createWithStatement(t,r),e)}();case 107:return ui();case 109:return function(){var e=qe();at(109);var t=s.hasPrecedingLineBreak()?void 0:ke(_n);return void 0===t&&(I++,t=gt(q.createIdentifier(""),qe())),ft(),gt(q.createThrowStatement(t),e)}();case 111:case 82:case 96:return di();case 87:return function(){var e=qe();return at(87),ft(),gt(q.createDebuggerStatement(),e)}();case 59:return xi();case 130:case 118:case 150:case 140:case 141:case 134:case 85:case 92:case 93:case 100:case 121:case 122:case 123:case 126:case 124:case 143:case 155:if(hi())return xi()}var t;return function(){var t,r=qe(),n=Je(),i=20===Ve(),a=ke(_n);return e.isIdentifier(a)&&st(58)?t=q.createLabeledStatement(a,bi()):(ft(),t=q.createExpressionStatement(a),i&&(n=!1)),X(gt(t,r),n)}()}function ki(e){return 134===e.kind}function xi(){var t,r,n=e.some(tt((function(){return Hi(),Wi()})),ki);if(n){var i=be(8388608,(function(){var e=Vt(F);if(e)return Ht(e)}));if(i)return i}var a=qe(),o=Je(),s=Hi();if(98===Ve()||93===Ve())if(e.hasEtsExtendDecoratorNames(s,c)){var l=e.getEtsExtendDecoratorComponentNames(s,c);l.length>0&&(null===(t=c.ets)||void 0===t||t.extend.components.forEach((function(t){var r=t.name,n=t.type,i=t.instance;r===e.last(l)&&(L={name:r,type:n,instance:i})}))),me(!!L)}else if(e.hasEtsStylesDecoratorNames(s,c)){e.getEtsStylesDecoratorComponentNames(s,c).length>0&&(j=null===(r=c.ets)||void 0===r?void 0:r.styles.component),ge(!!j)}else pe(e.isTokenInsideBuilder(s,c));var u=Wi();if(n){for(var d=0,p=u;d<p.length;d++){p[d].flags|=8388608}return be(8388608,(function(){return Ei(a,o,s,u)}))}return Ei(a,o,s,u)}function Ei(e,t,r,n){switch(Ve()){case 113:case 119:case 85:return Ri(e,t,r,n);case 98:return Mi(e,t,r,n);case 83:return Yi(e,t,r,n);case 84:return Ae()?Xi(e,t,r,n):Si(e,r,n);case 118:return function(e,t,r,n){at(118);var i=bt(),a=_r(),o=ea(),s=Mr(),c=q.createInterfaceDeclaration(r,n,i,a,o,s);return X(gt(c,e),t)}(e,t,r,n);case 150:return function(e,t,r,n){at(150);var i=bt(),a=_r();at(62);var o=137===Ve()&&rt(Vr)||ln();ft();var s=q.createTypeAliasDeclaration(r,n,i,a,o);return X(gt(s,e),t)}(e,t,r,n);case 92:return function(e,t,r,n){at(92);var i,a=bt();at(18)?(i=ve(40960,(function(){return Wt(6,oa)})),at(19)):i=$t();var o=q.createEnumDeclaration(r,n,a,i);return X(gt(o,e),t)}(e,t,r,n);case 155:case 140:case 141:return function(e,t,r,n){var i=0;if(155===Ve())return la(e,t,r,n);if(st(141))i|=16;else if(at(140),10===Ve())return la(e,t,r,n);return ca(e,t,r,n,i)}(e,t,r,n);case 100:return function(e,t,r,n){at(100);var i,a=s.getStartPos();it()&&(i=bt());var o,c=!1;154===Ve()||"type"!==(null==i?void 0:i.escapedText)||!it()&&41!==Ve()&&18!==Ve()||(c=!0,i=it()?bt():void 0);if(i&&27!==Ve()&&154!==Ve())return function(e,t,r,n,i,a){at(62);var o=144===Ve()&&tt(ua)?function(){var e=qe();at(144),at(20);var t=pa();return at(21),gt(q.createExternalModuleReference(t),e)}():Xt(!1);ft();var s=q.createImportEqualsDeclaration(r,n,a,i,o),c=X(gt(s,e),t);return c}(e,t,r,n,i,c);(i||41===Ve()||18===Ve())&&(o=function(e,t,r){var n;e&&!st(27)||(n=41===Ve()?function(){var e=qe();at(41),at(127);var t=bt();return gt(q.createNamespaceImport(t),e)}():fa(267));return gt(q.createImportClause(r,e,n),t)}(i,a,c),at(154));var l=pa();ft();var u=q.createImportDeclaration(r,n,o,l);return X(gt(u,e),t)}(e,t,r,n);case 93:switch(We(),Ve()){case 88:case 62:return function(e,t,r,n){var i,a=Ce();ue(!0),st(62)?i=!0:at(88);var o=yn();ft(),ue(a);var s=q.createExportAssignment(r,n,i,o);return X(gt(s,e),t)}(e,t,r,n);case 127:return function(e,t,r,n){at(127),at(141);var i=bt();ft();var a=q.createNamespaceExportDeclaration(i);return a.decorators=r,a.modifiers=n,X(gt(a,e),t)}(e,t,r,n);default:return function(e,t,r,n){var i,a,o=Ce();ue(!0);var c=st(150),l=qe();st(41)?(st(127)&&(i=function(e){return gt(q.createNamespaceExport(kt()),e)}(l)),at(154),a=pa()):(i=fa(271),(154===Ve()||10===Ve()&&!s.hasPrecedingLineBreak())&&(at(154),a=pa()));ft(),ue(o);var u=q.createExportDeclaration(r,n,c,i,a);return X(gt(u,e),t)}(e,t,r,n)}default:return Si(e,r,n)}}function Si(t,r,n){if(r||n){var i=_t(274,!0,e.Diagnostics.Declaration_expected);return e.setTextRangePos(i,t),i.decorators=r,i.modifiers=n,i}}function Di(){return We(),!s.hasPrecedingLineBreak()&&(it()||10===Ve())}function wi(e,t){if(18===Ve()||!pt())return oi(e,t);ft()}function Ti(){var e=qe();if(27===Ve())return gt(q.createOmittedExpression(),e);var t=ct(25),r=Ni(),n=hn();return gt(q.createBindingElement(t,void 0,r,n),e)}function Ci(){var e,t=qe(),r=ct(25),n=nt(),i=St();n&&58!==Ve()?(e=i,i=void 0):(at(58),e=Ni());var a=hn();return gt(q.createBindingElement(r,i,e,a),t)}function Ai(){return 18===Ve()||22===Ve()||79===Ve()||nt()}function Ni(e){return 22===Ve()?function(){var e=qe();at(22);var t=Wt(10,Ti);return at(23),gt(q.createArrayBindingPattern(t),e)}():18===Ve()?function(){var e=qe();at(18);var t=Wt(9,Ci);return at(19),gt(q.createObjectBindingPattern(t),e)}():vt(e)}function Pi(){return Ii(!0)}function Ii(t){var r,n=qe(),i=Ni(e.Diagnostics.Private_identifiers_are_not_allowed_in_variable_declarations);t&&78===i.kind&&53===Ve()&&!s.hasPrecedingLineBreak()&&(r=dt());var a=fn(),o=wn(Ve())?void 0:hn();return gt(q.createVariableDeclaration(i,r,a,o),n)}function Fi(t){var r,n=qe(),i=0;switch(Ve()){case 113:break;case 119:i|=1;break;case 85:i|=2;break;default:e.Debug.fail()}if(We(),157===Ve()&&tt(Oi))r=$t();else{var a=we();se(t),r=Wt(8,t?Ii:Pi),se(a)}return gt(q.createVariableDeclarationList(r,i),n)}function Oi(){return Rt()&&21===We()}function Ri(e,t,r,n){var i=Fi(!1);ft();var a=q.createVariableStatement(n,i);return a.decorators=r,X(gt(a,e),t)}function Mi(t,r,n,i){var a=Ce(),o=e.modifiersToFlags(i);at(98);var l=ct(41),u=512&o?ii():vt();u&&e.hasEtsStylesDecoratorNames(n,c)&&H.set(u.escapedText.toString(),253),he(e.hasEtsBuilderDecoratorNames(n,c));var d=l?1:0,p=256&o?2:0,f=Fe()&&j?hr(s.getStartPos()):_r();1&o&&ue(!0);var m=Dr(d|p),g=s.getStartPos(),_=function(){var e=Er(58,!1);!e&&L&&Ie()&&(e=aa(q.createTypeReferenceNode(aa(q.createIdentifier(L.type),g,g)),g,g));!e&&j&&Fe()&&(e=aa(q.createTypeReferenceNode(aa(q.createIdentifier(j.type),g,g)),g,g));return e}(),h=wi(d|p,e.Diagnostics.or_expected);return he(!1),me(!1),L=void 0,ge(!1),j=void 0,pe(Oe()),ue(a),X(gt(q.createFunctionDeclaration(n,i,l,u,f,m,_,h),t),r)}function Li(t,r,n,i){return rt((function(){if(133===Ve()?at(133):10===Ve()&&20===tt(We)?rt((function(){var e=ar();return"constructor"===e.text?e:void 0})):void 0){var a=_r(),o=Dr(0),s=Er(58,!1),c=wi(0,e.Diagnostics.or_expected),l=q.createConstructorDeclaration(n,i,o,c);return l.typeParameters=a,l.type=s,X(gt(l,t),r)}}))}function ji(t,r,n,i,a,o,l,u,d){var p,f,m,g,_,h=null===(p=e.getPropertyNameForPropertyNameNode(o))||void 0===p?void 0:p.toString();(_e(h===(null===(g=null===(m=null===(f=null==c?void 0:c.ets)||void 0===f?void 0:f.render)||void 0===m?void 0:m.method)||void 0===g?void 0:g.find((function(e){return"build"===e})))),he(e.hasEtsBuilderDecoratorNames(n,c)),Ne()&&e.hasEtsStylesDecoratorNames(n,c))&&(h&&B&&K.set(h,{structName:B,kind:166}),e.getEtsStylesDecoratorComponentNames(n,c).length>0&&(j=null===(_=c.ets)||void 0===_?void 0:_.styles.component),ge(!!j));pe(Ne()&&(function(e){var t,r,n,i,a=null!==(i=null===(n=null===(r=null===(t=c.ets)||void 0===t?void 0:t.render)||void 0===r?void 0:r.method)||void 0===n?void 0:n.find((function(e){return"build"===e})))&&void 0!==i?i:"build";return 78===e.kind&&e.escapedText===a}(o)||function(t){return e.isTokenInsideBuilder(t,c)}(n)||function(e){var t,r,n,i,a=null!==(i=null===(n=null===(r=null===(t=c.ets)||void 0===t?void 0:t.render)||void 0===r?void 0:r.method)||void 0===n?void 0:n.find((function(e){return"pageTransition"===e})))&&void 0!==i?i:"pageTransition";return 78===e.kind&&e.escapedText===a}(o)));var y=a?1:0,v=e.some(i,e.isAsyncModifier)?2:0,b=Fe()&&j?hr(t):_r(),k=Dr(y|v),x=s.getStartPos(),E=function(){var e=Er(58,!1);!e&&j&&Fe()&&(e=aa(q.createTypeReferenceNode(aa(q.createIdentifier(j.type),x,x)),x,x));return e}(),S=wi(y|v,d),D=q.createMethodDeclaration(n,i,a,o,l,b,k,E,S);return D.exclamationToken=u,_e(!1),he(!1),ge(!1),j=void 0,pe(!1),X(gt(D,t),r)}function Bi(e,t,r,n,i,a){var o=a||s.hasPrecedingLineBreak()?void 0:ct(53),c=fn(),l=ve(45056,hn);return ft(),X(gt(q.createPropertyDeclaration(r,n,i,a||o,c,l),e),t)}function zi(t,r,n,i){var a=ct(41),o=St(),s=ct(57);return a||20===Ve()||29===Ve()?ji(t,r,n,i,a,o,s,void 0,e.Diagnostics.or_expected):Bi(t,r,n,i,o,s)}function Ui(e,t,r,n,i){var a=St(),o=_r(),s=Dr(0),c=Er(58,!1),l=wi(0),u=168===i?q.createGetAccessorDeclaration(r,n,a,s,c,l):q.createSetAccessorDeclaration(r,n,a,s,l);return u.typeParameters=o,c&&169===u.kind&&(u.type=c),X(gt(u,e),t)}function qi(){var t;if(59===Ve())return!0;for(;e.isModifierKind(Ve());){if(t=Ve(),e.isClassMemberModifier(t))return!0;We()}if(41===Ve())return!0;if(xt()&&(t=Ve(),We()),22===Ve())return!0;if(void 0!==t){if(!e.isKeyword(t)||147===t||135===t)return!0;switch(Ve()){case 20:case 29:case 53:case 58:case 62:case 57:return!0;default:return pt()}}return!1}function Ji(){if(Ce()&&131===Ve()){var t=qe(),r=bt(e.Diagnostics.Expression_expected);return We(),Gn(t,Hn(t,r,!0))}return Fn()}function Vi(){var e=qe();if(st(59)){var t=function(e){var t,r,n,i,a,o,l=null!==(n=null===(r=null===(t=c.ets)||void 0===t?void 0:t.extend)||void 0===r?void 0:r.decorator)&&void 0!==n?n:"Extend";78===Ve()&&s.getTokenText()===l&&oe(!0,4);var u=null!==(o=null===(a=null===(i=c.ets)||void 0===i?void 0:i.styles)||void 0===a?void 0:a.decorator)&&void 0!==o?o:"Styles";return 78===Ve()&&s.getTokenText()===u&&oe(!0,8),be(16384,e)}(Ji);return gt(q.createDecorator(t),e)}}function Hi(){for(var t,r,n=qe();r=Vi();)t=e.append(t,r);return t&&mt(t,n)}function Ki(t){var r=qe(),n=Ve();if(85===Ve()&&t){if(!rt(Tt))return}else if(!e.isModifierKind(Ve())||!rt(Ct))return;return gt(q.createToken(n),r)}function Wi(t){for(var r,n,i=qe();n=Ki(t);)r=e.append(r,n);return r&&mt(r,i)}function Gi(){var e;if(130===Ve()){var t=qe();We(),e=mt([gt(q.createToken(130),t)],t)}return e}function $i(){var t=qe();if(26===Ve())return We(),gt(q.createSemicolonClassElement(),t);var r=Je(),n=Hi(),i=Wi(!0);if(wt(135))return Ui(t,r,n,i,168);if(wt(147))return Ui(t,r,n,i,169);if(133===Ve()||10===Ve()){var a=Li(t,r,n,i);if(a)return a}if(Cr())return Nr(t,r,n,i);if(e.tokenIsIdentifierOrKeyword(Ve())||10===Ve()||8===Ve()||41===Ve()||22===Ve()){if(e.some(i,ki)){for(var o=0,s=i;o<s.length;o++){s[o].flags|=8388608}return be(8388608,(function(){return zi(t,r,n,i)}))}return zi(t,r,n,i)}if(n||i){var c=_t(78,!0,e.Diagnostics.Declaration_expected);return Bi(t,r,n,i,c,void 0)}return e.Debug.fail("Should not have attempted to parse class member declaration.")}function Yi(e,t,r,n){return Qi(e,t,r,n,254)}function Xi(t,r,n,i){return function(t,r,n,i){var a,o=Ce();at(84),de(!0);var s=Zi();B=null==s?void 0:s.escapedText.toString();var l=_r();e.some(i,e.isExportModifier)&&ue(!0);var u,d=ea(),p=null===(a=c.ets)||void 0===a?void 0:a.customComponent;!d&&p&&(d=function(e){var t=qe(),r=q.createHeritageClause(94,mt([gt(q.createExpressionWithTypeArguments(gt(q.createIdentifier(e),t,void 0,!0),void 0),t)],t,void 0,!1));return mt([gt(r,t,void 0,!0)],t,void 0,!1)}(p));at(18)?(u=function(e){var t=qt(5,$i),r=[],n=[];t.forEach((function(e){if(r.push(e),164===e.kind){var t=e;n.push(aa(q.createPropertySignature(t.modifiers,t.name,q.createToken(57),t.type)))}}));var i=[];if(n.length){var a=aa(q.createTypeLiteralNode(mt(n,0,0)));i.push(aa(q.createParameterDeclaration(void 0,void 0,void 0,aa(q.createIdentifier("value")),q.createToken(57),a)))}var o=aa(q.createBlock(mt([],0,0))),s=q.createConstructorDeclaration(void 0,void 0,mt(i,0,0),o);return r.unshift(aa(s,e,e)),mt(r,t.pos)}(t),at(19)):u=$t();ue(o);var f=q.createStructDeclaration(n,i,s,l,d,u);return B=void 0,K.clear(),de(!1),X(gt(f,t),r)}(t,r,n,i)}function Qi(t,r,n,i,a){var o=Ce();at(83);var s=Zi(),c=_r();e.some(i,e.isExportModifier)&&ue(!0);var l,u=ea();return at(18)?(l=qt(5,$i),at(19)):l=$t(),ue(o),X(gt(254===a?q.createClassDeclaration(n,i,s,c,u,l):q.createClassExpression(n,i,s,c,u,l),t),r)}function Zi(){return!nt()||117===Ve()&&tt(Mt)?void 0:yt(nt())}function ea(){if(ia())return qt(22,ta)}function ta(){var t=qe(),r=Ve();e.Debug.assert(94===r||117===r),We();var n=Wt(7,ra);return gt(q.createHeritageClause(r,n),t)}function ra(){var e=qe(),t=Fn(),r=na();return gt(q.createExpressionWithTypeArguments(t,r),e)}function na(){return 29===Ve()?Yt(20,ln,29,31):void 0}function ia(){return 94===Ve()||117===Ve()}function aa(e,t,r){return void 0===t&&(t=0),void 0===r&&(r=0),gt(e,t,r,!0)}function oa(){var e=qe(),t=Je(),r=St(),n=ke(hn);return X(gt(q.createEnumMember(r,n),e),t)}function sa(){var e,t=qe();return at(18)?(e=qt(1,bi),at(19)):e=$t(),gt(q.createModuleBlock(e),t)}function ca(e,t,r,n,i){var a=16&i,o=bt(),s=st(24)?ca(qe(),!1,void 0,void 0,4|a):sa();return X(gt(q.createModuleDeclaration(r,n,o,s,i),e),t)}function la(e,t,r,n){var i,a,o=0;return 155===Ve()?(i=bt(),o|=1024):(i=ar()).text=ht(i.text),18===Ve()?a=sa():ft(),X(gt(q.createModuleDeclaration(r,n,i,a,o),e),t)}function ua(){return 20===We()}function da(){return 43===We()}function pa(){if(10===Ve()){var e=ar();return e.text=ht(e.text),e}return _n()}function fa(e){var t=qe();return gt(267===e?q.createNamedImports(Yt(23,ga,18,19)):q.createNamedExports(Yt(23,ma,18,19)),t)}function ma(){return _a(273)}function ga(){return _a(268)}function _a(t){var r,n,i=qe(),a=e.isKeyword(Ve())&&!it(),o=s.getTokenPos(),c=s.getTextPos(),l=kt();return 127===Ve()?(r=l,at(127),a=e.isKeyword(Ve())&&!it(),o=s.getTokenPos(),c=s.getTextPos(),n=kt()):n=l,268===t&&a&&Be(o,c,e.Diagnostics.Identifier_expected),gt(268===t?q.createImportSpecifier(r,n):q.createExportSpecifier(r,n),i)}function ha(t){return function(t,r){return e.some(t.modifiers,(function(e){return e.kind===r}))}(t,93)||e.isImportEqualsDeclaration(t)&&e.isExternalModuleReference(t.moduleReference)||e.isImportDeclaration(t)||e.isExportAssignment(t)||e.isExportDeclaration(t)?t:void 0}function ya(t){return function(t){return e.isMetaProperty(t)&&100===t.keywordToken&&"meta"===t.name.escapedText}(t)?t:m(t,ya)}t.fixupParentReferences=ne,function(e){e[e.SourceElements=0]="SourceElements",e[e.BlockStatements=1]="BlockStatements",e[e.SwitchClauses=2]="SwitchClauses",e[e.SwitchClauseStatements=3]="SwitchClauseStatements",e[e.TypeMembers=4]="TypeMembers",e[e.ClassMembers=5]="ClassMembers",e[e.EnumMembers=6]="EnumMembers",e[e.HeritageClauseElement=7]="HeritageClauseElement",e[e.VariableDeclarations=8]="VariableDeclarations",e[e.ObjectBindingElements=9]="ObjectBindingElements",e[e.ArrayBindingElements=10]="ArrayBindingElements",e[e.ArgumentExpressions=11]="ArgumentExpressions",e[e.ObjectLiteralMembers=12]="ObjectLiteralMembers",e[e.JsxAttributes=13]="JsxAttributes",e[e.JsxChildren=14]="JsxChildren",e[e.ArrayLiteralMembers=15]="ArrayLiteralMembers",e[e.Parameters=16]="Parameters",e[e.JSDocParameters=17]="JSDocParameters",e[e.RestProperties=18]="RestProperties",e[e.TypeParameters=19]="TypeParameters",e[e.TypeArguments=20]="TypeArguments",e[e.TupleElementTypes=21]="TupleElementTypes",e[e.HeritageClauses=22]="HeritageClauses",e[e.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",e[e.Count=24]="Count"}(Q||(Q={})),function(e){e[e.False=0]="False",e[e.True=1]="True",e[e.Unknown=2]="Unknown"}(Z||(Z={})),function(t){function r(e){var t=qe(),r=(e?st:at)(18),n=be(4194304,mr);e&&!r||ot(19);var i=q.createJSDocTypeExpression(n);return ne(i),gt(i,t)}function n(){var e=qe(),t=st(18),r=Xt(!1);t&&ot(19);var n=q.createJSDocNameReference(r);return ne(n),gt(n,e)}var i,a;function o(t,i){void 0===t&&(t=0);var a=b,o=void 0===i?a.length:t+i;if(i=o-t,e.Debug.assert(t>=0),e.Debug.assert(t<=o),e.Debug.assert(o<=a.length),f(a,t)){var c,l,u,d=[];return s.scanRange(t+3,i-5,(function(){var e,r,n,i=1,p=t-(a.lastIndexOf("\n",t)+1)+4;function f(t){e||(e=p),d.push(t),p+=t.length}for(Ge();B(5););B(4)&&(i=0,p=0);e:for(;;){switch(Ve()){case 59:0===i||1===i?(g(d),E(v(p)),i=0,e=void 0):f(s.getTokenText());break;case 4:d.push(s.getTokenText()),i=0,p=0;break;case 41:var _=s.getTokenText();1===i||2===i?(i=2,f(_)):(i=1,p+=_.length);break;case 5:var h=s.getTokenText();2===i?d.push(h):void 0!==e&&p+h.length>e&&d.push(h.slice(e-p)),p+=h.length;break;case 1:break e;default:i=2,f(s.getTokenText())}Ge()}return m(d),g(d),r=d.length?d.join(""):void 0,n=c&&mt(c,l,u),gt(q.createJSDocComment(r,n),t,o)}))}function m(e){for(;e.length&&("\n"===e[0]||"\r"===e[0]);)e.shift()}function g(e){for(;e.length&&""===e[e.length-1].trim();)e.pop()}function _(){for(;;){if(Ge(),1===Ve())return!0;if(5!==Ve()&&4!==Ve())return!1}}function h(){if(5!==Ve()&&4!==Ve()||!tt(_))for(;5===Ve()||4===Ve();)Ge()}function y(){if((5===Ve()||4===Ve())&&tt(_))return"";for(var e=s.hasPrecedingLineBreak(),t=!1,r="";e&&41===Ve()||5===Ve()||4===Ve();)r+=s.getTokenText(),4===Ve()?(e=!0,t=!0,r=""):41===Ve()&&(e=!1),Ge();return t?r:""}function v(t){e.Debug.assert(59===Ve());var i=s.getTokenPos();Ge();var a,l=z(void 0),u=y();switch(l.escapedText){case"author":a=function(e,t,r,n){var i=function(){var e=[],t=!1,r=s.getToken();for(;1!==r&&4!==r;){if(29===r)t=!0;else{if(59===r&&!t)break;if(31===r&&t){e.push(s.getTokenText()),s.setTextPos(s.getTokenPos()+1);break}}e.push(s.getTokenText()),r=Ge()}return e.join("")}()+(k(e,o,r,n)||"");return gt(q.createJSDocAuthorTag(t,i||void 0),e)}(i,l,t,u);break;case"implements":a=function(e,t,r,n){var i=N(),a=qe();return gt(q.createJSDocImplementsTag(t,i,k(e,a,r,n)),e,a)}(i,l,t,u);break;case"augments":case"extends":a=function(e,t,r,n){var i=N(),a=qe();return gt(q.createJSDocAugmentsTag(t,i,k(e,a,r,n)),e,a)}(i,l,t,u);break;case"class":case"constructor":a=P(i,q.createJSDocClassTag,l,t,u);break;case"public":a=P(i,q.createJSDocPublicTag,l,t,u);break;case"private":a=P(i,q.createJSDocPrivateTag,l,t,u);break;case"protected":a=P(i,q.createJSDocProtectedTag,l,t,u);break;case"readonly":a=P(i,q.createJSDocReadonlyTag,l,t,u);break;case"deprecated":te=!0,a=P(i,q.createJSDocDeprecatedTag,l,t,u);break;case"this":a=function(e,t,n,i){var a=r(!0);h();var o=qe();return gt(q.createJSDocThisTag(t,a,k(e,o,n,i)),e,o)}(i,l,t,u);break;case"enum":a=function(e,t,n,i){var a=r(!0);h();var o=qe();return gt(q.createJSDocEnumTag(t,a,k(e,o,n,i)),e,o)}(i,l,t,u);break;case"arg":case"argument":case"param":return C(i,l,2,t);case"return":case"returns":a=function(t,r,n,i){e.some(c,e.isJSDocReturnTag)&&Be(r.pos,s.getTokenPos(),e.Diagnostics._0_tag_already_specified,r.escapedText);var a=D(),o=qe();return gt(q.createJSDocReturnTag(r,a,k(t,o,n,i)),t,o)}(i,l,t,u);break;case"template":a=function(e,t,n,i){var a=18===Ve()?r():void 0,o=function(){var e=qe(),t=[];do{h(),t.push(j()),y()}while(B(27));return mt(t,e)}(),s=qe();return gt(q.createJSDocTemplateTag(t,a,o,k(e,s,n,i)),e,s)}(i,l,t,u);break;case"type":a=A(i,l,t,u);break;case"typedef":a=function(t,r,n,i){var a,o=D();y();var s=F();h();var c,l=x(n);if(!o||T(o.type)){for(var u=void 0,d=void 0,f=void 0,m=!1;u=rt((function(){return R(n)}));)if(m=!0,332===u.kind){if(d){Le(e.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);var g=e.lastOrUndefined(S);g&&e.addRelatedInfo(g,e.createDetachedDiagnostic(p,0,0,e.Diagnostics.The_tag_was_first_specified_here));break}d=u}else f=e.append(f,u);if(m){var _=o&&179===o.type.kind,v=q.createJSDocTypeLiteral(f,_);c=(o=d&&d.typeExpression&&!T(d.typeExpression.type)?d.typeExpression:gt(v,t)).end}}c=c||void 0!==l?qe():(null!==(a=null!=s?s:o)&&void 0!==a?a:r).end,l||(l=k(t,c,n,i));var b=q.createJSDocTypedefTag(r,o,s,l);return gt(b,t,c)}(i,l,t,u);break;case"callback":a=function(t,r,n,i){var a=F();h();var o=x(n),s=function(t){var r,n,i=qe();for(;r=rt((function(){return M(4,t)}));)n=e.append(n,r);return mt(n||[],i)}(n),c=rt((function(){if(B(59)){var e=v(n);if(e&&330===e.kind)return e}})),l=gt(q.createJSDocSignature(void 0,s,c),t),u=qe();o||(o=k(t,u,n,i));return gt(q.createJSDocCallbackTag(r,l,a,o),t,u)}(i,l,t,u);break;case"see":a=function(e,t,r,i){var a=n(),o=qe(),s=void 0!==r&&void 0!==i?k(e,o,r,i):void 0;return gt(q.createJSDocSeeTag(t,a,s),e,o)}(i,l,t,u);break;default:a=function(e,t,r,n){var i=qe();return gt(q.createJSDocUnknownTag(t,k(e,i,r,n)),e,i)}(i,l,t,u)}return a}function k(e,t,r,n){return n||(r+=t-e),x(r,n.slice(r))}function x(t,r){var n,i=[],a=0,o=!0;function c(e){n||(n=t),i.push(e),t+=e.length}void 0!==r&&(""!==r&&c(r),a=1);var l=Ve();e:for(;;){switch(l){case 4:a=0,i.push(s.getTokenText()),t=0;break;case 59:if(3===a||!o&&2===a){i.push(s.getTokenText());break}s.setTextPos(s.getTextPos()-1);case 1:break e;case 5:if(2===a||3===a)c(s.getTokenText());else{var u=s.getTokenText();void 0!==n&&t+u.length>n&&i.push(u.slice(n-t)),t+=u.length}break;case 18:a=2,tt((function(){return 59===Ge()&&e.tokenIsIdentifierOrKeyword(Ge())&&"link"===s.getTokenText()}))&&(c(s.getTokenText()),Ge(),c(s.getTokenText()),Ge()),c(s.getTokenText());break;case 61:a=3===a?2:3,c(s.getTokenText());break;case 41:if(0===a){a=1,t+=1;break}default:3!==a&&(a=2),c(s.getTokenText())}o=5===Ve(),l=Ge()}return m(i),g(i),0===i.length?void 0:i.join("")}function E(e){e&&(c?c.push(e):(c=[e],l=e.pos),u=e.end)}function D(){return y(),18===Ve()?r():void 0}function w(){var t=B(22);t&&h();var r,n=B(61),i=function(){var e=z();st(22)&&at(23);for(;st(24);){var t=z();st(22)&&at(23),e=Qt(e,t)}return e}();return n&&(lt(r=61)||_t(r,!1,e.Diagnostics._0_expected,e.tokenToString(r))),t&&(h(),ct(62)&&_n(),at(23)),{name:i,isBracketed:t}}function T(t){switch(t.kind){case 146:return!0;case 179:return T(t.elementType);default:return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&"Object"===t.typeName.escapedText&&!t.typeArguments}}function C(t,r,n,i){var a=D(),o=!a;y();var s=w(),c=s.name,l=s.isBracketed,u=y();o&&(a=D());var d=k(t,qe(),i,u),p=4!==n&&function(t,r,n,i){if(t&&T(t.type)){for(var a=qe(),o=void 0,s=void 0;o=rt((function(){return M(n,i,r)}));)329!==o.kind&&336!==o.kind||(s=e.append(s,o));if(s){var c=gt(q.createJSDocTypeLiteral(s,179===t.type.kind),a);return gt(q.createJSDocTypeExpression(c),a)}}}(a,c,n,i);return p&&(a=p,o=!0),gt(1===n?q.createJSDocPropertyTag(r,c,l,a,o,d):q.createJSDocParameterTag(r,c,l,a,o,d),t)}function A(t,n,i,a){e.some(c,e.isJSDocTypeTag)&&Be(n.pos,s.getTokenPos(),e.Diagnostics._0_tag_already_specified,n.escapedText);var o=r(!0),l=qe(),u=void 0!==i&&void 0!==a?k(t,l,i,a):void 0;return gt(q.createJSDocTypeTag(n,o,u),t,l)}function N(){var e=st(18),t=qe(),r=function(){var e=qe(),t=z();for(;st(24);){var r=z();t=gt(q.createPropertyAccessExpression(t,r),e)}return t}(),n=na(),i=gt(q.createExpressionWithTypeArguments(r,n),t);return e&&at(19),i}function P(e,t,r,n,i){var a=qe();return gt(t(r,k(e,a,n,i)),e,a)}function F(t){var r=s.getTokenPos();if(e.tokenIsIdentifierOrKeyword(Ve())){var n=z();if(st(24)){var i=F(!0);return gt(q.createModuleDeclaration(void 0,void 0,n,i,t?4:void 0),r)}return t&&(n.isInJSDocNamespace=!0),n}}function O(t,r){for(;!e.isIdentifier(t)||!e.isIdentifier(r);){if(e.isIdentifier(t)||e.isIdentifier(r)||t.right.escapedText!==r.right.escapedText)return!1;t=t.left,r=r.left}return t.escapedText===r.escapedText}function R(e){return M(1,e)}function M(t,r,n){for(var i=!0,a=!1;;)switch(Ge()){case 59:if(i){var o=L(t,r);return!(o&&(329===o.kind||336===o.kind)&&4!==t&&n&&(e.isIdentifier(o.name)||!O(n,o.name.left)))&&o}a=!1;break;case 4:i=!0,a=!1;break;case 41:a&&(i=!1),a=!0;break;case 78:i=!1;break;case 1:return!1}}function L(t,r){e.Debug.assert(59===Ve());var n=s.getStartPos();Ge();var i,a=z();switch(h(),a.escapedText){case"type":return 1===t&&A(n,a);case"prop":case"property":i=1;break;case"arg":case"argument":case"param":i=6;break;default:return!1}return!!(t&i)&&C(n,a,t,r)}function j(){var t=qe(),r=z(e.Diagnostics.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces);return gt(q.createTypeParameterDeclaration(r,void 0,void 0),t)}function B(e){return Ve()===e&&(Ge(),!0)}function z(t){if(!e.tokenIsIdentifierOrKeyword(Ve()))return _t(78,!t,t||e.Diagnostics.Identifier_expected);I++;var r=s.getTokenPos(),n=s.getTextPos(),i=Ve(),a=ht(s.getTokenValue()),o=gt(q.createIdentifier(a,void 0,i),r,n);return Ge(),o}}t.parseJSDocTypeExpressionForTests=function(t,n,i){G("file.js",t,99,void 0,1),s.setText(t,n,i),C=s.scan();var a=r(),o=ie("file.js",99,1,!1,[],q.createToken(1),0),c=e.attachFileToDiagnostics(S,o);return D&&(o.jsDocDiagnostics=e.attachFileToDiagnostics(D,o)),$(),a?{jsDocTypeExpression:a,diagnostics:c}:void 0},t.parseJSDocTypeExpression=r,t.parseJSDocNameReference=n,t.parseIsolatedJSDocComment=function(t,r,n){G("",t,99,void 0,1);var i=be(4194304,(function(){return o(r,n)})),a={languageVariant:0,text:t},s=e.attachFileToDiagnostics(S,a);return $(),i?{jsDoc:i,diagnostics:s}:void 0},t.parseJSDocComment=function(t,r,n){var i=C,a=S.length,s=V,c=be(4194304,(function(){return o(r,n)}));return e.setParent(c,t),131072&R&&(D||(D=[]),D.push.apply(D,S)),C=i,S.length=a,V=s,c},function(e){e[e.BeginningOfLine=0]="BeginningOfLine",e[e.SawAsterisk=1]="SawAsterisk",e[e.SavingComments=2]="SavingComments",e[e.SavingBackticks=3]="SavingBackticks"}(i||(i={})),function(e){e[e.Property=1]="Property",e[e.Parameter=2]="Parameter",e[e.CallbackParameter=4]="CallbackParameter"}(a||(a={}))}(ee=t.JSDocParser||(t.JSDocParser={}))}(l||(l={})),function(t){function r(t,r,i,o,s,c){return void(r?u(t):l(t));function l(t){var r="";if(c&&n(t)&&(r=o.substring(t.pos,t.end)),t._children&&(t._children=void 0),e.setTextRangePosEnd(t,t.pos+i,t.end+i),c&&n(t)&&e.Debug.assert(r===s.substring(t.pos,t.end)),m(t,l,u),e.hasJSDocNodes(t))for(var d=0,p=t.jsDoc;d<p.length;d++){l(p[d])}a(t,c)}function u(t){t._children=void 0,e.setTextRangePosEnd(t,t.pos+i,t.end+i);for(var r=0,n=t;r<n.length;r++){l(n[r])}}}function n(e){switch(e.kind){case 10:case 8:case 78:return!0}return!1}function i(t,r,n,i,a){e.Debug.assert(t.end>=r,"Adjusting an element that was entirely before the change range"),e.Debug.assert(t.pos<=n,"Adjusting an element that was entirely after the change range"),e.Debug.assert(t.pos<=t.end);var o=Math.min(t.pos,i),s=t.end>=n?t.end+a:Math.min(t.end,i);e.Debug.assert(o<=s),t.parent&&(e.Debug.assertGreaterThanOrEqual(o,t.parent.pos),e.Debug.assertLessThanOrEqual(s,t.parent.end)),e.setTextRangePosEnd(t,o,s)}function a(t,r){if(r){var n=t.pos,i=function(t){e.Debug.assert(t.pos>=n),n=t.end};if(e.hasJSDocNodes(t))for(var a=0,o=t.jsDoc;a<o.length;a++){i(o[a])}m(t,i),e.Debug.assert(n<=t.end)}}function o(t,r){var n,i=t;if(m(t,(function t(a){if(e.nodeIsMissing(a))return;if(!(a.pos<=r))return e.Debug.assert(a.pos>r),!0;if(a.pos>=i.pos&&(i=a),r<a.end)return m(a,t),!0;e.Debug.assert(a.end<=r),n=a})),n){var a=function(t){for(;;){var r=e.getLastChild(t);if(!r)return t;t=r}}(n);a.pos>i.pos&&(i=a)}return i}function s(t,r,n,i){var a=t.text;if(n&&(e.Debug.assert(a.length-n.span.length+n.newLength===r.length),i||e.Debug.shouldAssert(3))){var o=a.substr(0,n.span.start),s=r.substr(0,n.span.start);e.Debug.assert(o===s);var c=a.substring(e.textSpanEnd(n.span),a.length),l=r.substring(e.textSpanEnd(e.textChangeRangeNewSpan(n)),r.length);e.Debug.assert(c===l)}}function c(t){var r=t.statements,n=0;e.Debug.assert(n<r.length);var i=r[n],a=-1;return{currentNode:function(o){return o!==a&&(i&&i.end===o&&n<r.length-1&&(n++,i=r[n]),i&&i.pos===o||function(e){return r=void 0,n=-1,i=void 0,void m(t,a,o);function a(t){return e>=t.pos&&e<t.end&&(m(t,a,o),!0)}function o(t){if(e>=t.pos&&e<t.end)for(var s=0;s<t.length;s++){var c=t[s];if(c){if(c.pos===e)return r=t,n=s,i=c,!0;if(c.pos<e&&e<c.end)return m(c,a,o),!0}}return!1}}(o)),a=o,e.Debug.assert(!i||i.pos===o),i}}}var u;t.updateSourceFile=function(t,n,u,d){if(s(t,n,u,d=d||e.Debug.shouldAssert(2)),e.textChangeRangeIsUnchanged(u))return t;if(0===t.statements.length)return l.parseSourceFile(t.fileName,n,t.languageVersion,void 0,!0,t.scriptKind);var p=t;e.Debug.assert(!p.hasBeenIncrementallyParsed),p.hasBeenIncrementallyParsed=!0,l.fixupParentReferences(p);var f=t.text,g=c(t),_=function(t,r){for(var n=1,i=r.span.start,a=0;i>0&&a<=n;a++){var s=o(t,i);e.Debug.assert(s.pos<=i);var c=s.pos;i=Math.max(0,c-1)}var l=e.createTextSpanFromBounds(i,e.textSpanEnd(r.span)),u=r.newLength+(r.span.start-i);return e.createTextChangeRange(l,u)}(t,u);s(t,n,_,d),e.Debug.assert(_.span.start<=u.span.start),e.Debug.assert(e.textSpanEnd(_.span)===e.textSpanEnd(u.span)),e.Debug.assert(e.textSpanEnd(e.textChangeRangeNewSpan(_))===e.textSpanEnd(e.textChangeRangeNewSpan(u)));var h=e.textChangeRangeNewSpan(_).length-_.span.length;!function(t,n,o,s,c,l,u,d){return void p(t);function p(t){if(e.Debug.assert(t.pos<=t.end),t.pos>o)r(t,!1,c,l,u,d);else{var g=t.end;if(g>=n){if(t.intersectsChange=!0,t._children=void 0,i(t,n,o,s,c),m(t,p,f),e.hasJSDocNodes(t))for(var _=0,h=t.jsDoc;_<h.length;_++){p(h[_])}a(t,d)}else e.Debug.assert(g<n)}}function f(t){if(e.Debug.assert(t.pos<=t.end),t.pos>o)r(t,!0,c,l,u,d);else{var a=t.end;if(a>=n){t.intersectsChange=!0,t._children=void 0,i(t,n,o,s,c);for(var f=0,m=t;f<m.length;f++){var g=m[f];g.virtual||p(g)}}else e.Debug.assert(a<n)}}}(p,_.span.start,e.textSpanEnd(_.span),e.textSpanEnd(e.textChangeRangeNewSpan(_)),h,f,n,d);var y=l.parseSourceFile(t.fileName,n,t.languageVersion,g,!0,t.scriptKind);return y.commentDirectives=function(t,r,n,i,a,o,s,c){if(!t)return r;for(var l,u=!1,d=0,p=t;d<p.length;d++){var f=p[d],m=f.range,g=f.type;if(m.end<n)l=e.append(l,f);else if(m.pos>i){h();var _={range:{pos:m.pos+a,end:m.end+a},type:g};l=e.append(l,_),c&&e.Debug.assert(o.substring(m.pos,m.end)===s.substring(_.range.pos,_.range.end))}}return h(),l;function h(){u||(u=!0,l?r&&l.push.apply(l,r):l=r)}}(t.commentDirectives,y.commentDirectives,_.span.start,e.textSpanEnd(_.span),h,f,n,d),y},t.createSyntaxCursor=c,function(e){e[e.Value=-1]="Value"}(u||(u={}))}(u||(u={})),e.isDeclarationFileName=h,e.processCommentPragmas=y,e.processPragmasIntoFields=v;var b=new e.Map;function k(e){if(b.has(e))return b.get(e);var t=new RegExp("(\\s"+e+"\\s*=\\s*)('|\")(.+?)\\2","im");return b.set(e,t),t}var x=/^\/\/\/\s*<(\S+)\s.*?\/>/im,E=/^\/\/\/?\s*@(\S+)\s*(.*)\s*$/im;function S(t,r,n){var i=2===r.kind&&x.exec(n);if(i){var a=i[1].toLowerCase(),o=e.commentPragmas[a];if(!(o&&1&o.kind))return;if(o.args){for(var s={},c=0,l=o.args;c<l.length;c++){var u=l[c],d=k(u.name).exec(n);if(!d&&!u.optional)return;if(d)if(u.captureSpan){var p=r.pos+d.index+d[1].length+d[2].length;s[u.name]={value:d[3],pos:p,end:p+d[3].length}}else s[u.name]=d[3]}t.push({name:a,args:{arguments:s,range:r}})}else t.push({name:a,args:{arguments:{},range:r}})}else{var f=2===r.kind&&E.exec(n);if(f)return D(t,r,2,f);if(3===r.kind)for(var m=/\s*@(\S+)\s*(.*)\s*$/gim,g=void 0;g=m.exec(n);)D(t,r,4,g)}}function D(t,r,n,i){if(i){var a=i[1].toLowerCase(),o=e.commentPragmas[a];if(o&&o.kind&n){var s=function(t,r){if(!r)return{};if(!t.args)return{};for(var n=r.split(/\s+/),i={},a=0;a<t.args.length;a++){var o=t.args[a];if(!n[a]&&!o.optional)return"fail";if(o.captureSpan)return e.Debug.fail("Capture spans not yet implemented for non-xml pragmas");i[o.name]=n[a]}return i}(o,i[2]);"fail"!==s&&t.push({name:a,args:{arguments:s,range:r}})}}}function w(e,t){return e.kind===t.kind&&(78===e.kind?e.escapedText===t.escapedText:108===e.kind||e.name.escapedText===t.name.escapedText&&w(e.expression,t.expression))}e.tagNamesAreEquivalent=w}(d||(d={})),function(e){e.compileOnSaveCommandLineOption={name:"compileOnSave",type:"boolean"};var t=new e.Map(e.getEntries({preserve:1,"react-native":3,react:2,"react-jsx":4,"react-jsxdev":5}));e.inverseJsxOptionMap=new e.Map(e.arrayFrom(e.mapIterator(t.entries(),(function(e){var t=e[0];return[""+e[1],t]}))));var r,n,o=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["es2019","lib.es2019.d.ts"],["es2020","lib.es2020.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["webworker.iterable","lib.webworker.iterable.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.asyncgenerator","lib.es2018.asyncgenerator.d.ts"],["es2018.asynciterable","lib.es2018.asynciterable.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["es2019.array","lib.es2019.array.d.ts"],["es2019.object","lib.es2019.object.d.ts"],["es2019.string","lib.es2019.string.d.ts"],["es2019.symbol","lib.es2019.symbol.d.ts"],["es2020.bigint","lib.es2020.bigint.d.ts"],["es2020.promise","lib.es2020.promise.d.ts"],["es2020.sharedmemory","lib.es2020.sharedmemory.d.ts"],["es2020.string","lib.es2020.string.d.ts"],["es2020.symbol.wellknown","lib.es2020.symbol.wellknown.d.ts"],["es2020.intl","lib.es2020.intl.d.ts"],["esnext.array","lib.es2019.array.d.ts"],["esnext.symbol","lib.es2019.symbol.d.ts"],["esnext.asynciterable","lib.es2018.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.bigint","lib.es2020.bigint.d.ts"],["esnext.string","lib.esnext.string.d.ts"],["esnext.promise","lib.esnext.promise.d.ts"],["esnext.weakref","lib.esnext.weakref.d.ts"]];function s(t){var r=new e.Map,n=new e.Map;return e.forEach(t,(function(e){r.set(e.name.toLowerCase(),e),e.shortName&&n.set(e.shortName,e.name)})),{optionsNameMap:r,shortOptionNames:n}}function c(){return r||(r=s(e.optionDeclarations))}function l(e){return e&&void 0!==e.enableAutoDiscovery&&void 0===e.enable?{enable:e.enableAutoDiscovery,include:e.include||[],exclude:e.exclude||[]}:e}function u(t){return d(t,e.createCompilerDiagnostic)}function d(t,r){var n=e.arrayFrom(t.type.keys()).map((function(e){return"'"+e+"'"})).join(", ");return r(e.Diagnostics.Argument_for_0_option_must_be_Colon_1,"--"+t.name,n)}function p(e,t,r){return pe(e,fe(t||""),r)}function f(t,r,n){if(void 0===r&&(r=""),r=fe(r),!e.startsWith(r,"-")){if(""===r)return[];var i=r.split(",");switch(t.element.type){case"number":return e.mapDefined(i,(function(e){return de(t.element,parseInt(e),n)}));case"string":return e.mapDefined(i,(function(e){return de(t.element,e||"",n)}));default:return e.mapDefined(i,(function(e){return p(t.element,e,n)}))}}}function m(e){return e.name}function g(t,r,n,i){var a=e.getSpellingSuggestion(t,r.optionDeclarations,m);return a?n(r.unknownDidYouMeanDiagnostic,i||t,a.name):n(r.unknownOptionDiagnostic,i||t)}function _(t,r,n){var i,a={},o=[],s=[];return c(r),{options:a,watchOptions:i,fileNames:o,errors:s};function c(r){for(var n=0;n<r.length;){var c=r[n];if(n++,64===c.charCodeAt(0))l(c.slice(1));else if(45===c.charCodeAt(0)){var u=c.slice(45===c.charCodeAt(1)?2:1),d=v(t.getOptionsNameMap,u,!0);if(d)n=h(r,n,t,d,a,s);else{var p=v(I.getOptionsNameMap,u,!0);p?n=h(r,n,I,p,i||(i={}),s):s.push(g(u,t,e.createCompilerDiagnostic,c))}}else o.push(c)}}function l(t){var r=E(t,n||function(t){return e.sys.readFile(t)});if(e.isString(r)){for(var i=[],a=0;;){for(;a<r.length&&r.charCodeAt(a)<=32;)a++;if(a>=r.length)break;var o=a;if(34===r.charCodeAt(o)){for(a++;a<r.length&&34!==r.charCodeAt(a);)a++;a<r.length?(i.push(r.substring(o+1,a)),a++):s.push(e.createCompilerDiagnostic(e.Diagnostics.Unterminated_quoted_string_in_response_file_0,t))}else{for(;r.charCodeAt(a)>32;)a++;i.push(r.substring(o,a))}}c(i)}else s.push(r)}}function h(t,r,n,i,a,o){if(i.isTSConfigOnly)"null"===(s=t[r])?(a[i.name]=void 0,r++):"boolean"===i.type?"false"===s?(a[i.name]=de(i,!1,o),r++):("true"===s&&r++,o.push(e.createCompilerDiagnostic(e.Diagnostics.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,i.name))):(o.push(e.createCompilerDiagnostic(e.Diagnostics.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,i.name)),s&&!e.startsWith(s,"-")&&r++);else if(t[r]||"boolean"===i.type||o.push(e.createCompilerDiagnostic(n.optionTypeMismatchDiagnostic,i.name,j(i))),"null"!==t[r])switch(i.type){case"number":a[i.name]=de(i,parseInt(t[r]),o),r++;break;case"boolean":var s=t[r];a[i.name]=de(i,"false"!==s,o),"false"!==s&&"true"!==s||r++;break;case"string":a[i.name]=de(i,t[r]||"",o),r++;break;case"list":var c=f(i,t[r],o);a[i.name]=c||[],c&&r++;break;default:a[i.name]=p(i,t[r],o),r++}else a[i.name]=void 0,r++;return r}function y(e,t){return v(c,e,t)}function v(e,t,r){void 0===r&&(r=!1),t=t.toLowerCase();var n=e(),i=n.optionsNameMap,a=n.shortOptionNames;if(r){var o=a.get(t);void 0!==o&&(t=o)}return i.get(t)}e.libs=o.map((function(e){return e[0]})),e.libMap=new e.Map(o),e.optionsForWatch=[{name:"watchFile",type:new e.Map(e.getEntries({fixedpollinginterval:e.WatchFileKind.FixedPollingInterval,prioritypollinginterval:e.WatchFileKind.PriorityPollingInterval,dynamicprioritypolling:e.WatchFileKind.DynamicPriorityPolling,usefsevents:e.WatchFileKind.UseFsEvents,usefseventsonparentdirectory:e.WatchFileKind.UseFsEventsOnParentDirectory})),category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_UseFsEvents_UseFsEventsOnParentDirectory},{name:"watchDirectory",type:new e.Map(e.getEntries({usefsevents:e.WatchDirectoryKind.UseFsEvents,fixedpollinginterval:e.WatchDirectoryKind.FixedPollingInterval,dynamicprioritypolling:e.WatchDirectoryKind.DynamicPriorityPolling})),category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling},{name:"fallbackPolling",type:new e.Map(e.getEntries({fixedinterval:e.PollingWatchKind.FixedInterval,priorityinterval:e.PollingWatchKind.PriorityInterval,dynamicpriority:e.PollingWatchKind.DynamicPriority})),category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority},{name:"synchronousWatchDirectory",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively},{name:"excludeDirectories",type:"list",element:{name:"excludeDirectory",type:"string",isFilePath:!0,extraValidation:ke},category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:ke},category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively}],e.commonOptionsWithBuild=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Print_this_message},{name:"help",shortName:"?",type:"boolean"},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Watch_input_files},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen},{name:"listFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_files_part_of_the_compilation},{name:"explainFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_files_and_the_reason_they_are_part_of_the_compilation},{name:"listEmittedFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_generated_files_part_of_the_compilation},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Stylize_errors_and_messages_using_color_and_context_experimental},{name:"traceResolution",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Enable_tracing_of_the_name_resolution_process},{name:"diagnostics",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Show_diagnostic_information},{name:"extendedDiagnostics",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Show_verbose_diagnostic_information},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:e.Diagnostics.FILE_OR_DIRECTORY,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Generates_a_CPU_profile},{name:"generateTrace",type:"string",isFilePath:!0,isCommandLineOnly:!0,paramType:e.Diagnostics.DIRECTORY,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Enable_incremental_compilation,transpileOptionValue:void 0},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it},{name:"locale",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_locale_used_when_displaying_messages_to_the_user_e_g_en_us}],e.targetOptionDeclaration={name:"target",shortName:"t",type:new e.Map(e.getEntries({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,es2019:6,es2020:7,esnext:99})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,paramType:e.Diagnostics.VERSION,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_ES2019_ES2020_or_ESNEXT},e.optionDeclarations=i(i([],e.commonOptionsWithBuild),[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Show_all_compiler_options},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Print_the_compiler_s_version},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,paramType:e.Diagnostics.FILE_OR_DIRECTORY,description:e.Diagnostics.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Build_one_or_more_projects_and_their_dependencies_if_out_of_date},{name:"showConfig",type:"boolean",category:e.Diagnostics.Command_line_Options,isCommandLineOnly:!0,description:e.Diagnostics.Print_the_final_configuration_instead_of_building},{name:"listFilesOnly",type:"boolean",category:e.Diagnostics.Command_line_Options,affectsSemanticDiagnostics:!0,affectsEmit:!0,isCommandLineOnly:!0,description:e.Diagnostics.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing},e.targetOptionDeclaration,{name:"module",shortName:"m",type:new e.Map(e.getEntries({none:e.ModuleKind.None,commonjs:e.ModuleKind.CommonJS,amd:e.ModuleKind.AMD,system:e.ModuleKind.System,umd:e.ModuleKind.UMD,es6:e.ModuleKind.ES2015,es2015:e.ModuleKind.ES2015,es2020:e.ModuleKind.ES2020,esnext:e.ModuleKind.ESNext})),affectsModuleResolution:!0,affectsEmit:!0,paramType:e.Diagnostics.KIND,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_es2020_or_ESNext},{name:"lib",type:"list",element:{name:"lib",type:e.libMap},affectsModuleResolution:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_library_files_to_be_included_in_the_compilation,transpileOptionValue:void 0},{name:"allowJs",type:"boolean",affectsModuleResolution:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Allow_javascript_files_to_be_compiled},{name:"checkJs",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Report_errors_in_js_files},{name:"jsx",type:t,affectsSourceFile:!0,affectsEmit:!0,affectsModuleResolution:!0,paramType:e.Diagnostics.KIND,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_JSX_code_generation_Colon_preserve_react_native_react_react_jsx_or_react_jsxdev},{name:"declaration",shortName:"d",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_corresponding_d_ts_file,transpileOptionValue:void 0},{name:"declarationMap",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_a_sourcemap_for_each_corresponding_d_ts_file,transpileOptionValue:void 0},{name:"emitDeclarationOnly",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Only_emit_d_ts_declaration_files,transpileOptionValue:void 0},{name:"sourceMap",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_corresponding_map_file},{name:"outFile",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.FILE,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Concatenate_and_emit_output_to_single_file,transpileOptionValue:void 0},{name:"outDir",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.DIRECTORY,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Redirect_output_structure_to_the_directory},{name:"rootDir",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir},{name:"composite",type:"boolean",affectsEmit:!0,isTSConfigOnly:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Enable_project_compilation,transpileOptionValue:void 0},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.FILE,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_file_to_store_incremental_compilation_information,transpileOptionValue:void 0},{name:"removeComments",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Do_not_emit_comments_to_output},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Do_not_emit_outputs,transpileOptionValue:void 0},{name:"importHelpers",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Import_emit_helpers_from_tslib},{name:"importsNotUsedAsValues",type:new e.Map(e.getEntries({remove:0,preserve:1,error:2})),affectsEmit:!0,affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3},{name:"isolatedModules",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule,transpileOptionValue:!0},{name:"strict",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_all_strict_type_checking_options},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Raise_error_on_expressions_and_declarations_with_an_implied_any_type},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_null_checks},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_checking_of_function_types},{name:"strictBindCallApply",type:"boolean",strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_bind_call_and_apply_methods_on_functions},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_checking_of_property_initialization_in_classes},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Raise_error_on_this_expressions_with_an_implied_any_type},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Parse_in_strict_mode_and_emit_use_strict_for_each_source_file},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_on_unused_locals},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_on_unused_parameters},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_error_when_not_all_code_paths_in_function_return_a_value},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_for_fallthrough_cases_in_switch_statement},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!1,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Include_undefined_in_index_signature_results},{name:"noPropertyAccessFromIndexSignature",type:"boolean",showInSimplifiedHelpView:!1,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Require_undeclared_properties_from_index_signatures_to_use_element_accesses},{name:"moduleResolution",type:new e.Map(e.getEntries({node:e.ModuleResolutionKind.NodeJs,classic:e.ModuleResolutionKind.Classic})),affectsModuleResolution:!0,paramType:e.Diagnostics.STRATEGY,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Base_directory_to_resolve_non_absolute_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,isTSConfigOnly:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl,transpileOptionValue:void 0},{name:"rootDirs",type:"list",isTSConfigOnly:!0,element:{name:"rootDirs",type:"string",isFilePath:!0},affectsModuleResolution:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime,transpileOptionValue:void 0},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.List_of_folders_to_include_type_definitions_from},{name:"types",type:"list",element:{name:"types",type:"string"},affectsModuleResolution:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Type_declaration_files_to_be_included_in_compilation,transpileOptionValue:void 0},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports},{name:"preserveSymlinks",type:"boolean",category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Do_not_resolve_the_real_path_of_symlinks},{name:"allowUmdGlobalAccess",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Allow_accessing_UMD_globals_from_modules},{name:"sourceRoot",type:"string",affectsEmit:!0,paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations},{name:"mapRoot",type:"string",affectsEmit:!0,paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSourceMap",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file},{name:"inlineSources",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set},{name:"experimentalDecorators",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Experimental_Options,description:e.Diagnostics.Enables_experimental_support_for_ES7_decorators},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,category:e.Diagnostics.Experimental_Options,description:e.Diagnostics.Enables_experimental_support_for_emitting_type_metadata_for_decorators},{name:"jsxFactory",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h},{name:"jsxFragmentFactory",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment},{name:"jsxImportSource",type:"string",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react},{name:"ets",type:"object",affectsSourceFile:!0,affectsEmit:!0,affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Unknown_build_option_0},{name:"packageManagerType",type:"string",affectsSourceFile:!0,affectsEmit:!0,affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Unknown_build_option_0},{name:"emitNodeModulesFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Unknown_build_option_0},{name:"resolveJsonModule",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Include_modules_imported_with_json_extension},{name:"out",type:"string",affectsEmit:!0,isFilePath:!1,category:e.Diagnostics.Advanced_Options,paramType:e.Diagnostics.FILE,description:e.Diagnostics.Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file,transpileOptionValue:void 0},{name:"reactNamespace",type:"string",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit},{name:"skipDefaultLibCheck",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files},{name:"charset",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_character_set_of_the_input_files},{name:"emitBOM",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files},{name:"newLine",type:new e.Map(e.getEntries({crlf:0,lf:1})),affectsEmit:!0,paramType:e.Diagnostics.NEWLINE,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_truncate_error_messages},{name:"noLib",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_include_the_default_library_file_lib_d_ts,transpileOptionValue:!0},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files,transpileOptionValue:!0},{name:"stripInternal",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_declarations_for_code_that_has_an_internal_annotation},{name:"disableSizeLimit",type:"boolean",affectsSourceFile:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_size_limitations_on_JavaScript_projects},{name:"disableSourceOfProjectReferenceRedirect",type:"boolean",isTSConfigOnly:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_solution_searching_for_this_project},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_loading_referenced_projects},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_use_strict_directives_in_module_output},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_generate_custom_helper_functions_like_extends_in_compiled_output},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_outputs_if_any_errors_were_reported,transpileOptionValue:void 0},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_erase_const_enum_declarations_in_generated_code},{name:"declarationDir",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.DIRECTORY,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Output_directory_for_generated_declaration_files,transpileOptionValue:void 0},{name:"skipLibCheck",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Skip_type_checking_of_declaration_files},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_report_errors_on_unused_labels},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_report_errors_on_unreachable_code},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Suppress_excess_property_checks_for_object_literals},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disallow_inconsistently_cased_references_to_the_same_file},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_strict_checking_of_generic_signatures_in_function_types},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Emit_class_fields_with_Define_instead_of_Set},{name:"keyofStringsOnly",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols},{name:"plugins",type:"list",isTSConfigOnly:!0,element:{name:"plugin",type:"object"},description:e.Diagnostics.List_of_language_service_plugins}]),e.semanticDiagnosticsOptionDeclarations=e.optionDeclarations.filter((function(e){return!!e.affectsSemanticDiagnostics})),e.affectsEmitOptionDeclarations=e.optionDeclarations.filter((function(e){return!!e.affectsEmit})),e.moduleResolutionOptionDeclarations=e.optionDeclarations.filter((function(e){return!!e.affectsModuleResolution})),e.sourceFileAffectingCompilerOptions=e.optionDeclarations.filter((function(e){return!!e.affectsSourceFile||!!e.affectsModuleResolution||!!e.affectsBindDiagnostics})),e.transpileOptionValueCompilerOptions=e.optionDeclarations.filter((function(t){return e.hasProperty(t,"transpileOptionValue")})),e.buildOpts=i(i([],e.commonOptionsWithBuild),[{name:"verbose",shortName:"v",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Enable_verbose_logging,type:"boolean"},{name:"dry",shortName:"d",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean"},{name:"force",shortName:"f",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean"},{name:"clean",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Delete_the_outputs_of_all_projects,type:"boolean"}]),e.typeAcquisitionDeclarations=[{name:"enableAutoDiscovery",type:"boolean"},{name:"enable",type:"boolean"},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},{name:"disableFilenameBasedTypeAcquisition",type:"boolean"}],e.createOptionNameMap=s,e.getOptionsNameMap=c,e.defaultInitCompilerOptions={module:e.ModuleKind.CommonJS,target:1,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0},e.convertEnableAutoDiscoveryToEnable=l,e.createCompilerDiagnosticForInvalidCustomType=u,e.parseCustomTypeOption=p,e.parseListTypeOption=f,e.parseCommandLineWorker=_,e.compilerOptionsDidYouMeanDiagnostics={getOptionsNameMap:c,optionDeclarations:e.optionDeclarations,unknownOptionDiagnostic:e.Diagnostics.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:e.Diagnostics.Compiler_option_0_expects_an_argument},e.parseCommandLine=function(t,r){return _(e.compilerOptionsDidYouMeanDiagnostics,t,r)},e.getOptionFromName=y;var b={getOptionsNameMap:function(){return n||(n=s(e.buildOpts))},optionDeclarations:e.buildOpts,unknownOptionDiagnostic:e.Diagnostics.Unknown_build_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:e.Diagnostics.Build_option_0_requires_a_value_of_type_1};function k(t,r){var n=e.parseJsonText(t,r);return{config:M(n,n.parseDiagnostics),error:n.parseDiagnostics.length?n.parseDiagnostics[0]:void 0}}function x(t,r){var n=E(t,r);return e.isString(n)?e.parseJsonText(t,n):{fileName:t,parseDiagnostics:[n]}}function E(t,r){var n;try{n=r(t)}catch(r){return e.createCompilerDiagnostic(e.Diagnostics.Cannot_read_file_0_Colon_1,t,r.message)}return void 0===n?e.createCompilerDiagnostic(e.Diagnostics.Cannot_read_file_0,t):n}function S(t){return e.arrayToMap(t,m)}e.parseBuildCommand=function(t){var r=_(b,t),n=r.options,i=r.watchOptions,a=r.fileNames,o=r.errors,s=n;return 0===a.length&&a.push("."),s.clean&&s.force&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","force")),s.clean&&s.verbose&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","verbose")),s.clean&&s.watch&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","watch")),s.watch&&s.dry&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:s,watchOptions:i,projects:a,errors:o}},e.getDiagnosticText=function(t){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return e.createCompilerDiagnostic.apply(void 0,arguments).messageText},e.getParsedCommandLineOfConfigFile=function(t,r,n,i,a,o){var s=E(t,(function(e){return n.readFile(e)}));if(e.isString(s)){var c=e.parseJsonText(t,s),l=n.getCurrentDirectory();return c.path=e.toPath(t,l,e.createGetCanonicalFileName(n.useCaseSensitiveFileNames)),c.resolvedPath=c.path,c.originalFileName=c.fileName,W(c,n,e.getNormalizedAbsolutePath(e.getDirectoryPath(t),l),r,e.getNormalizedAbsolutePath(t,l),void 0,o,i,a)}n.onUnRecoverableConfigFileDiagnostic(s)},e.readConfigFile=function(t,r){var n=E(t,r);return e.isString(n)?k(t,n):{config:{},error:n}},e.parseConfigFileTextToJson=k,e.readJsonConfigFile=x,e.tryReadFile=E;var D,w={optionDeclarations:e.typeAcquisitionDeclarations,unknownOptionDiagnostic:e.Diagnostics.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_type_acquisition_option_0_Did_you_mean_1};function T(){return D||(D=s(e.optionsForWatch))}var C,A,N,P,I={getOptionsNameMap:T,optionDeclarations:e.optionsForWatch,unknownOptionDiagnostic:e.Diagnostics.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:e.Diagnostics.Watch_option_0_requires_a_value_of_type_1};function F(){return C||(C=S(e.optionDeclarations))}function O(){return A||(A=S(e.optionsForWatch))}function R(){return N||(N=S(e.typeAcquisitionDeclarations))}function M(e,t){return L(e,t,!0,void 0,void 0)}function L(t,r,n,a,o){return t.statements.length?l(t.statements[0].expression,a):n?{}:void 0;function s(e){return a&&a.elementOptions===e}function c(i,a,c,d){for(var p=n?{}:void 0,f=function(i){if(291!==i.kind)return r.push(e.createDiagnosticForNodeInSourceFile(t,i,e.Diagnostics.Property_assignment_expected)),"continue";i.questionToken&&r.push(e.createDiagnosticForNodeInSourceFile(t,i.questionToken,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),u(i.name)||r.push(e.createDiagnosticForNodeInSourceFile(t,i.name,e.Diagnostics.String_literal_with_double_quotes_expected));var f=e.isComputedNonLiteralName(i.name)?void 0:e.getTextOfPropertyName(i.name),m=f&&e.unescapeLeadingUnderscores(f),_=m&&a?a.get(m):void 0;m&&c&&!_&&(a?r.push(g(m,c,(function(r,n,a){return e.createDiagnosticForNodeInSourceFile(t,i.name,r,n,a)}))):r.push(e.createDiagnosticForNodeInSourceFile(t,i.name,c.unknownOptionDiagnostic,m)));var h=l(i.initializer,_);if(void 0!==m&&(n&&(p[m]=h),o&&(d||s(a)))){var y=B(_,h);d?y&&o.onSetValidOptionKeyValueInParent(d,_,h):s(a)&&(y?o.onSetValidOptionKeyValueInRoot(m,i.name,h,i.initializer):_||o.onSetUnknownOptionKeyValueInRoot(m,i.name,h,i.initializer))}},m=0,_=i.properties;m<_.length;m++){f(_[m])}return p}function l(a,o){var s;switch(a.kind){case 110:return h(o&&"boolean"!==o.type),_(!0);case 95:return h(o&&"boolean"!==o.type),_(!1);case 104:return h(o&&"extends"===o.name),_(null);case 10:u(a)||r.push(e.createDiagnosticForNodeInSourceFile(t,a,e.Diagnostics.String_literal_with_double_quotes_expected)),h(o&&e.isString(o.type)&&"string"!==o.type);var p=a.text;if(o&&!e.isString(o.type)){var f=o;f.type.has(p.toLowerCase())||(r.push(d(f,(function(r,n,i){return e.createDiagnosticForNodeInSourceFile(t,a,r,n,i)}))),s=!0)}return _(p);case 8:return h(o&&"number"!==o.type),_(Number(a.text));case 216:if(40!==a.operator||8!==a.operand.kind)break;return h(o&&"number"!==o.type),_(-Number(a.operand.text));case 201:h(o&&"object"!==o.type);var m=a;if(o){var g=o;return _(c(m,g.elementOptions,g.extraKeyDiagnostics,g.name))}return _(c(m,void 0,void 0,void 0));case 200:return h(o&&"list"!==o.type),_(function(t,r){if(n)return e.filter(t.map((function(e){return l(e,r)})),(function(e){return void 0!==e}));t.forEach((function(e){return l(e,r)}))}(a.elements,o&&o.element))}return void(o?h(!0):r.push(e.createDiagnosticForNodeInSourceFile(t,a,e.Diagnostics.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal)));function _(n){var c;if(!s){var l=null===(c=null==o?void 0:o.extraValidation)||void 0===c?void 0:c.call(o,n);if(l)return void r.push(e.createDiagnosticForNodeInSourceFile.apply(void 0,i([t,a],l)))}return n}function h(n){n&&(r.push(e.createDiagnosticForNodeInSourceFile(t,a,e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,o.name,j(o))),s=!0)}}function u(r){return e.isStringLiteral(r)&&e.isStringDoubleQuoted(r,t)}}function j(t){return"list"===t.type?"Array":e.isString(t.type)?t.type:"string"}function B(t,r){return!!t&&(!!$(r)||("list"===t.type?e.isArray(r):typeof r===(e.isString(t.type)?t.type:"string")))}function z(t){return a({},e.arrayFrom(t.entries()).reduce((function(e,t){var r;return a(a({},e),((r={})[t[0]]=t[1],r))}),{}))}function U(t){if(e.length(t)){if(1!==e.length(t))return t;if("**/*"!==t[0])return t}}function q(e){return"string"===e.type||"number"===e.type||"boolean"===e.type||"object"===e.type?void 0:"list"===e.type?q(e.element):e.type}function J(t,r){return e.forEachEntry(r,(function(e,r){if(e===t)return r}))}function V(e,t){return H(e,c(),t)}function H(t,r,n){var i=r.optionsNameMap,a=new e.Map,o=n&&e.createGetCanonicalFileName(n.useCaseSensitiveFileNames),s=function(r){if(e.hasProperty(t,r)){if(i.has(r)&&i.get(r).category===e.Diagnostics.Command_line_Options)return"continue";var s=t[r],c=i.get(r.toLowerCase());if(c){var l=q(c);l?"list"===c.type?a.set(r,s.map((function(e){return J(e,l)}))):a.set(r,J(s,l)):n&&c.isFilePath?a.set(r,e.getRelativePathFromFile(n.configFilePath,e.getNormalizedAbsolutePath(s,e.getDirectoryPath(n.configFilePath)),o)):a.set(r,s)}}};for(var c in t)s(c);return a}function K(e,t,r){if(e&&!$(t))if("list"===e.type){var n=t;if(e.element.isFilePath&&n.length)return n.map(r)}else if(e.isFilePath)return r(t);return t}function W(e,t,r,n,i,a,o,s,c){return X(void 0,e,t,r,n,c,i,a,o,s)}function G(e,t){t&&Object.defineProperty(e,"configFile",{enumerable:!1,writable:!1,value:t})}function $(e){return null==e}function Y(t,r){return e.getDirectoryPath(e.getNormalizedAbsolutePath(t,r))}function X(t,r,n,i,a,o,s,c,l,u){void 0===a&&(a={}),void 0===c&&(c=[]),void 0===l&&(l=[]),e.Debug.assert(void 0===t&&void 0!==r||void 0!==t&&void 0===r);var d=[],p=te(t,r,n,i,s,c,d,u),f=p.raw,m=e.extend(a,p.options||{}),g=o&&p.watchOptions?e.extend(o,p.watchOptions):p.watchOptions||o;m.configFilePath=s&&e.normalizeSlashes(s);var _=function(){var t=b("references",(function(e){return"object"==typeof e}),"object"),n=y(v("files"));if(n){var i="no-prop"===t||e.isArray(t)&&0===t.length,a=e.hasProperty(f,"extends");if(0===n.length&&i&&!a)if(r){var o=s||"tsconfig.json",c=e.Diagnostics.The_files_list_in_config_file_0_is_empty,l=e.firstDefined(e.getTsConfigPropArray(r,"files"),(function(e){return e.initializer})),u=l?e.createDiagnosticForNodeInSourceFile(r,l,c,o):e.createCompilerDiagnostic(c,o);d.push(u)}else k(e.Diagnostics.The_files_list_in_config_file_0_is_empty,s||"tsconfig.json")}var p,m,g=y(v("include")),_=v("exclude"),h=y(_);if("no-prop"===_&&f.compilerOptions){var x=f.compilerOptions.outDir,E=f.compilerOptions.declarationDir;(x||E)&&(h=[x,E].filter((function(e){return!!e})))}void 0===n&&void 0===g&&(g=["**/*"]);g&&(p=be(g,d,!0,r,"include"));h&&(m=be(h,d,!1,r,"exclude"));return{filesSpecs:n,includeSpecs:g,excludeSpecs:h,validatedFilesSpec:e.filter(n,e.isString),validatedIncludeSpecs:p,validatedExcludeSpecs:m}}();r&&(r.configFileSpecs=_),G(m,r);var h=e.normalizePath(s?Y(s,i):i);return{options:m,watchOptions:g,fileNames:function(e){var t=ye(_,e,m,n,l);Z(t,ee(f),c)&&d.push(Q(_,s));return t}(h),projectReferences:function(t){var r,n=b("references",(function(e){return"object"==typeof e}),"object");if(e.isArray(n))for(var i=0,a=n;i<a.length;i++){var o=a[i];"string"!=typeof o.path?k(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(r||(r=[])).push({path:e.getNormalizedAbsolutePath(o.path,t),originalPath:o.path,prepend:o.prepend,circular:o.circular})}return r}(h),typeAcquisition:p.typeAcquisition||ae(),raw:f,errors:d,wildcardDirectories:xe(_,h,n.useCaseSensitiveFileNames),compileOnSave:!!f.compileOnSave};function y(t){return e.isArray(t)?t:void 0}function v(t){return b(t,e.isString,"string")}function b(t,n,i){if(e.hasProperty(f,t)&&!$(f[t])){if(e.isArray(f[t])){var a=f[t];return r||e.every(a,n)||d.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,t,i)),a}return k(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,t,"Array"),"not-array"}return"no-prop"}function k(t,n,i){r||d.push(e.createCompilerDiagnostic(t,n,i))}}function Q(t,r){var n=t.includeSpecs,i=t.excludeSpecs;return e.createCompilerDiagnostic(e.Diagnostics.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,r||"tsconfig.json",JSON.stringify(n||[]),JSON.stringify(i||[]))}function Z(e,t,r){return 0===e.length&&t&&(!r||0===r.length)}function ee(t){return!e.hasProperty(t,"files")&&!e.hasProperty(t,"references")}function te(t,r,n,a,o,s,c,l){var u;a=e.normalizeSlashes(a);var d=e.getNormalizedAbsolutePath(o||"",a);if(s.indexOf(d)>=0)return c.push(e.createCompilerDiagnostic(e.Diagnostics.Circularity_detected_while_resolving_configuration_Colon_0,i(i([],s),[d]).join(" -> "))),{raw:t||M(r,c)};var p=t?function(t,r,n,i,a){e.hasProperty(t,"excludes")&&a.push(e.createCompilerDiagnostic(e.Diagnostics.Unknown_option_excludes_Did_you_mean_exclude));var o,s=ie(t.compilerOptions,n,a,i),c=oe(t.typeAcquisition||t.typingOptions,n,a,i),l=function(e,t,r){return se(O(),e,t,void 0,I,r)}(t.watchOptions,n,a);if(t.compileOnSave=function(t,r,n){if(!e.hasProperty(t,e.compileOnSaveCommandLineOption.name))return!1;var i=ce(e.compileOnSaveCommandLineOption,t.compileOnSave,r,n);return"boolean"==typeof i&&i}(t,n,a),t.extends)if(e.isString(t.extends)){var u=i?Y(i,n):n;o=re(t.extends,r,u,a,e.createCompilerDiagnostic)}else a.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"extends","string"));return{raw:t,options:s,watchOptions:l,typeAcquisition:c,extendedConfigPath:o}}(t,n,a,o,c):function(t,r,n,i,a){var o,s,c,l,u=ne(i),d={onSetValidOptionKeyValueInParent:function(t,r,a){var l;switch(t){case"compilerOptions":l=u;break;case"watchOptions":l=c||(c={});break;case"typeAcquisition":l=o||(o=ae(i));break;case"typingOptions":l=s||(s=ae(i));break;default:e.Debug.fail("Unknown option")}l[r.name]=le(r,n,a)},onSetValidOptionKeyValueInRoot:function(o,s,c,u){if("extends"!==o);else{var d=i?Y(i,n):n;l=re(c,r,d,a,(function(r,n){return e.createDiagnosticForNodeInSourceFile(t,u,r,n)}))}},onSetUnknownOptionKeyValueInRoot:function(r,n,i,o){"excludes"===r&&a.push(e.createDiagnosticForNodeInSourceFile(t,n,e.Diagnostics.Unknown_option_excludes_Did_you_mean_exclude))}},p=L(t,a,!0,(void 0===P&&(P={name:void 0,type:"object",elementOptions:S([{name:"compilerOptions",type:"object",elementOptions:F(),extraKeyDiagnostics:e.compilerOptionsDidYouMeanDiagnostics},{name:"watchOptions",type:"object",elementOptions:O(),extraKeyDiagnostics:I},{name:"typingOptions",type:"object",elementOptions:R(),extraKeyDiagnostics:w},{name:"typeAcquisition",type:"object",elementOptions:R(),extraKeyDiagnostics:w},{name:"extends",type:"string"},{name:"references",type:"list",element:{name:"references",type:"object"}},{name:"files",type:"list",element:{name:"files",type:"string"}},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},e.compileOnSaveCommandLineOption])}),P),d);o||(o=s?void 0!==s.enableAutoDiscovery?{enable:s.enableAutoDiscovery,include:s.include,exclude:s.exclude}:s:ae(i));return{raw:p,options:u,watchOptions:c,typeAcquisition:o,extendedConfigPath:l}}(r,n,a,o,c);if((null===(u=p.options)||void 0===u?void 0:u.paths)&&(p.options.pathsBasePath=a),p.extendedConfigPath){s=s.concat([d]);var f=function(t,r,n,i,a,o){var s,c,l,u,d=n.useCaseSensitiveFileNames?r:e.toFileNameLowerCase(r);o&&(c=o.get(d))?(l=c.extendedResult,u=c.extendedConfig):(l=x(r,(function(e){return n.readFile(e)})),l.parseDiagnostics.length||(u=te(void 0,l,n,e.getDirectoryPath(r),e.getBaseFileName(r),i,a,o)),o&&o.set(d,{extendedResult:l,extendedConfig:u}));t&&(t.extendedSourceFiles=[l.fileName],l.extendedSourceFiles&&(s=t.extendedSourceFiles).push.apply(s,l.extendedSourceFiles));if(l.parseDiagnostics.length)return void a.push.apply(a,l.parseDiagnostics);return u}(r,p.extendedConfigPath,n,s,c,l);if(f&&f.options){var m,g=f.raw,_=p.raw,h=function(t){!_[t]&&g[t]&&(_[t]=e.map(g[t],(function(t){return e.isRootedDiskPath(t)?t:e.combinePaths(m||(m=e.convertToRelativePath(e.getDirectoryPath(p.extendedConfigPath),a,e.createGetCanonicalFileName(n.useCaseSensitiveFileNames))),t)})))};h("include"),h("exclude"),h("files"),void 0===_.compileOnSave&&(_.compileOnSave=g.compileOnSave),p.options=e.assign({},f.options,p.options),p.watchOptions=p.watchOptions&&f.watchOptions?e.assign({},f.watchOptions,p.watchOptions):p.watchOptions||f.watchOptions}}return p}function re(t,r,n,i,a){if(t=e.normalizeSlashes(t),e.isRootedDiskPath(t)||e.startsWith(t,"./")||e.startsWith(t,"../")){var o=e.getNormalizedAbsolutePath(t,n);return r.fileExists(o)||e.endsWith(o,".json")||(o+=".json",r.fileExists(o))?o:void i.push(a(e.Diagnostics.File_0_not_found,t))}var s=e.nodeModuleNameResolver(t,e.combinePaths(n,"tsconfig.json"),{moduleResolution:e.ModuleResolutionKind.NodeJs},r,void 0,void 0,!0);if(s.resolvedModule)return s.resolvedModule.resolvedFileName;i.push(a(e.Diagnostics.File_0_not_found,t))}function ne(t){return t&&"jsconfig.json"===e.getBaseFileName(t)?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function ie(t,r,n,i){var a=ne(i);return se(F(),t,r,a,e.compilerOptionsDidYouMeanDiagnostics,n),i&&(a.configFilePath=e.normalizeSlashes(i)),a}function ae(t){return{enable:!!t&&"jsconfig.json"===e.getBaseFileName(t),include:[],exclude:[]}}function oe(e,t,r,n){var i=ae(n),a=l(e);return se(R(),a,t,i,w,r),i}function se(t,r,n,i,a,o){if(r){for(var s in r){var c=t.get(s);c?(i||(i={}))[c.name]=ce(c,r[s],n,o):o.push(g(s,a,e.createCompilerDiagnostic))}return i}}function ce(t,r,n,i){if(B(t,r)){var a=t.type;if("list"===a&&e.isArray(r))return function(t,r,n,i){return e.filter(e.map(r,(function(e){return ce(t.element,e,n,i)})),(function(e){return!!e}))}(t,r,n,i);if(!e.isString(a))return pe(t,r,i);var o=de(t,r,i);return $(o)?o:ue(t,n,o)}i.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,t.name,j(t)))}function le(t,r,n){if(!$(n)){if("list"===t.type){var i=t;return i.element.isFilePath||!e.isString(i.element.type)?e.filter(e.map(n,(function(e){return le(i.element,r,e)})),(function(e){return!!e})):n}return e.isString(t.type)?ue(t,r,n):t.type.get(e.isString(n)?n.toLowerCase():n)}}function ue(t,r,n){return t.isFilePath&&""===(n=e.getNormalizedAbsolutePath(n,r))&&(n="."),n}function de(t,r,n){var i;if(!$(r)){var a=null===(i=t.extraValidation)||void 0===i?void 0:i.call(t,r);if(!a)return r;n.push(e.createCompilerDiagnostic.apply(void 0,a))}}function pe(e,t,r){if(!$(t)){var n=t.toLowerCase(),i=e.type.get(n);if(void 0!==i)return de(e,i,r);r.push(u(e))}}function fe(e){return"function"==typeof e.trim?e.trim():e.replace(/^[\s]+|[\s]+$/g,"")}e.convertToObject=M,e.convertToObjectWorker=L,e.convertToTSConfig=function(t,r,n){var i,o,s,c=e.createGetCanonicalFileName(n.useCaseSensitiveFileNames),l=e.map(e.filter(t.fileNames,(null===(o=null===(i=t.options.configFile)||void 0===i?void 0:i.configFileSpecs)||void 0===o?void 0:o.validatedIncludeSpecs)?function(t,r,n,i){if(!r)return e.returnTrue;var a=e.getFileMatcherPatterns(t,n,r,i.useCaseSensitiveFileNames,i.getCurrentDirectory()),o=a.excludePattern&&e.getRegexFromPattern(a.excludePattern,i.useCaseSensitiveFileNames),s=a.includeFilePattern&&e.getRegexFromPattern(a.includeFilePattern,i.useCaseSensitiveFileNames);if(s)return o?function(e){return!(s.test(e)&&!o.test(e))}:function(e){return!s.test(e)};if(o)return function(e){return o.test(e)};return e.returnTrue}(r,t.options.configFile.configFileSpecs.validatedIncludeSpecs,t.options.configFile.configFileSpecs.validatedExcludeSpecs,n):e.returnTrue),(function(t){return e.getRelativePathFromFile(e.getNormalizedAbsolutePath(r,n.getCurrentDirectory()),e.getNormalizedAbsolutePath(t,n.getCurrentDirectory()),c)})),u=V(t.options,{configFilePath:e.getNormalizedAbsolutePath(r,n.getCurrentDirectory()),useCaseSensitiveFileNames:n.useCaseSensitiveFileNames}),d=t.watchOptions&&H(t.watchOptions,T());return a(a({compilerOptions:a(a({},z(u)),{showConfig:void 0,configFile:void 0,configFilePath:void 0,help:void 0,init:void 0,listFiles:void 0,listEmittedFiles:void 0,project:void 0,build:void 0,version:void 0}),watchOptions:d&&z(d),references:e.map(t.projectReferences,(function(e){return a(a({},e),{path:e.originalPath?e.originalPath:"",originalPath:void 0})})),files:e.length(l)?l:void 0},(null===(s=t.options.configFile)||void 0===s?void 0:s.configFileSpecs)?{include:U(t.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:t.options.configFile.configFileSpecs.validatedExcludeSpecs}:{}),{compileOnSave:!!t.compileOnSave||void 0})},e.generateTSConfig=function(t,r,n){var i=V(e.extend(t,e.defaultInitCompilerOptions));return function(){for(var t=e.createMultiMap(),c=0,l=e.optionDeclarations;c<l.length;c++){var u=l[c],d=u.category;s(u)&&t.add(e.getLocaleSpecificMessage(d),u)}var p=0,f=0,m=[];t.forEach((function(t,r){0!==m.length&&m.push({value:""}),m.push({value:"/* "+r+" */"});for(var n=0,o=t;n<o.length;n++){var s=o[n],c=void 0;c=i.has(s.name)?'"'+s.name+'": '+JSON.stringify(i.get(s.name))+((f+=1)===i.size?"":","):'// "'+s.name+'": '+JSON.stringify(a(s))+",",m.push({value:c,description:"/* "+(s.description&&e.getLocaleSpecificMessage(s.description)||s.name)+" */"}),p=Math.max(c.length,p)}}));var g=o(2),_=[];_.push("{"),_.push(g+'"compilerOptions": {'),_.push(""+g+g+"/* "+e.getLocaleSpecificMessage(e.Diagnostics.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_json_to_read_more_about_this_file)+" */"),_.push("");for(var h=0,y=m;h<y.length;h++){var v=y[h],b=v.value,k=v.description,x=void 0===k?"":k;_.push(b&&""+g+g+b+(x&&o(p-b.length+2)+x))}if(r.length){_.push(g+"},"),_.push(g+'"files": [');for(var E=0;E<r.length;E++)_.push(""+g+g+JSON.stringify(r[E])+(E===r.length-1?"":","));_.push(g+"]")}else _.push(g+"}");return _.push("}"),_.join(n)+n}();function a(t){switch(t.type){case"number":return 1;case"boolean":return!0;case"string":return t.isFilePath?"./":"";case"list":return[];case"object":return{};default:var r=t.type.keys().next();return r.done?e.Debug.fail("Expected 'option.type' to have entries."):r.value}}function o(e){return Array(e+1).join(" ")}function s(t){var r=t.category,n=t.name;return void 0!==r&&r!==e.Diagnostics.Command_line_Options&&(r!==e.Diagnostics.Advanced_Options||i.has(n))}},e.convertToOptionsWithAbsolutePaths=function(t,r){var n={},i=c().optionsNameMap;for(var a in t)e.hasProperty(t,a)&&(n[a]=K(i.get(a.toLowerCase()),t[a],r));return n.configFilePath&&(n.configFilePath=r(n.configFilePath)),n},e.parseJsonConfigFileContent=function(e,t,r,n,i,a,o,s,c){return X(e,void 0,t,r,n,c,i,a,o,s)},e.parseJsonSourceFileConfigFileContent=W,e.setConfigFileInOptions=G,e.canJsonReportNoInputFiles=ee,e.updateErrorForNoInputFiles=function(t,r,n,i,a){var o=i.length;return Z(t,a)?i.push(Q(n,r)):e.filterMutate(i,(function(t){return!function(t){return t.code===e.Diagnostics.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}(t)})),o!==i.length},e.convertCompilerOptionsFromJson=function(e,t,r){var n=[];return{options:ie(e,t,n,r),errors:n}},e.convertTypeAcquisitionFromJson=function(e,t,r){var n=[];return{options:oe(e,t,n,r),errors:n}},e.convertJsonOption=ce;var me=/(^|\/)\*\*\/?$/,ge=/(^|\/)\*\*\/(.*\/)?\.\.($|\/)/,_e=/\/[^/]*?[*?][^/]*\//,he=/^[^*?]*(?=\/[^/]*[*?])/;function ye(t,r,n,i,a){void 0===a&&(a=e.emptyArray),r=e.normalizePath(r);var o,s=e.createGetCanonicalFileName(i.useCaseSensitiveFileNames),c=new e.Map,l=new e.Map,u=new e.Map,d=t.validatedFilesSpec,p=t.validatedIncludeSpecs,f=t.validatedExcludeSpecs,m=e.getSupportedExtensions(n,a),g=e.getSuppoertedExtensionsWithJsonIfResolveJsonModule(n,m);if(d)for(var _=0,h=d;_<h.length;_++){var y=h[_],v=e.getNormalizedAbsolutePath(y,r);c.set(s(v),v)}if(p&&p.length>0)for(var b=function(t){if(e.fileExtensionIs(t,".json")){if(!o){var n=p.filter((function(t){return e.endsWith(t,".json")})),a=e.map(e.getRegularExpressionsForWildcards(n,r,"files"),(function(e){return"^"+e+"$"}));o=a?a.map((function(t){return e.getRegexFromPattern(t,i.useCaseSensitiveFileNames)})):e.emptyArray}if(-1!==e.findIndex(o,(function(e){return e.test(t)}))){var d=s(t);c.has(d)||u.has(d)||u.set(d,t)}return"continue"}if(function(t,r,n,i,a){for(var o=e.getExtensionPriority(t,i),s=e.adjustExtensionPriority(o,i),c=0;c<s;c++){var l=i[c],u=a(e.changeExtension(t,l));if(r.has(u)||n.has(u))return!0}return!1}(t,c,l,m,s))return"continue";!function(t,r,n,i){for(var a=e.getExtensionPriority(t,n),o=e.getNextLowestExtensionPriority(a,n);o<n.length;o++){var s=n[o],c=i(e.changeExtension(t,s));r.delete(c)}}(t,l,m,s);var f=s(t);c.has(f)||l.has(f)||l.set(f,t)},k=0,x=i.readDirectory(r,g,f,p,void 0);k<x.length;k++){b(v=x[k])}var E=e.arrayFrom(c.values()),S=e.arrayFrom(l.values());return E.concat(S,e.arrayFrom(u.values()))}function ve(t,r,n,i,a){var o=e.getRegularExpressionForWildcard(r,e.combinePaths(e.normalizePath(i),a),"exclude"),s=o&&e.getRegexFromPattern(o,n);return!!s&&(!!s.test(t)||!e.hasExtension(t)&&s.test(e.ensureTrailingDirectorySeparator(t)))}function be(t,r,n,i,a){return t.filter((function(t){if(!e.isString(t))return!1;var i=ke(t,n);return void 0!==i&&r.push(o.apply(void 0,i)),void 0===i}));function o(t,r){var n=e.getTsConfigPropArrayElementValue(i,a,r);return n?e.createDiagnosticForNodeInSourceFile(i,n,t,r):e.createCompilerDiagnostic(t,r)}}function ke(t,r){return r&&me.test(t)?[e.Diagnostics.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,t]:ge.test(t)?[e.Diagnostics.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,t]:void 0}function xe(t,r,n){var i=t.validatedIncludeSpecs,a=t.validatedExcludeSpecs,o=e.getRegularExpressionForWildcard(a,r,"exclude"),s=o&&new RegExp(o,n?"":"i"),c={};if(void 0!==i){for(var l=[],u=0,d=i;u<d.length;u++){var p=d[u],f=e.normalizePath(e.combinePaths(r,p));if(!s||!s.test(f)){var m=Ee(f,n);if(m){var g=m.key,_=m.flags,h=c[g];(void 0===h||h<_)&&(c[g]=_,1===_&&l.push(g))}}}for(var g in c)if(e.hasProperty(c,g))for(var y=0,v=l;y<v.length;y++){var b=v[y];g!==b&&e.containsPath(b,g,r,!n)&&delete c[g]}}return c}function Ee(t,r){var n=he.exec(t);return n?{key:r?n[0]:e.toFileNameLowerCase(n[0]),flags:_e.test(t)?1:0}:e.isImplicitGlob(t)?{key:r?t:e.toFileNameLowerCase(t),flags:1}:void 0}function Se(t,r){switch(r.type){case"object":case"string":return"";case"number":return"number"==typeof t?t:"";case"boolean":return"boolean"==typeof t?t:"";case"list":var n=r.element;return e.isArray(t)?t.map((function(e){return Se(e,n)})):"";default:return e.forEachEntry(r.type,(function(e,r){if(e===t)return r}))}}e.getFileNamesFromConfigSpecs=ye,e.isExcludedFile=function(t,r,n,i,a){var o=r.validatedFilesSpec,s=r.validatedIncludeSpecs,c=r.validatedExcludeSpecs;if(!e.length(s)||!e.length(c))return!1;n=e.normalizePath(n);var l=e.createGetCanonicalFileName(i);if(o)for(var u=0,d=o;u<d.length;u++){var p=d[u];if(l(e.getNormalizedAbsolutePath(p,n))===t)return!1}return ve(t,c,i,a,n)},e.matchesExclude=function(t,r,n,i){return ve(t,e.filter(r,(function(e){return!ge.test(e)})),n,i)},e.convertCompilerOptionsForTelemetry=function(e){var t={};for(var r in e)if(e.hasOwnProperty(r)){var n=y(r);void 0!==n&&(t[r]=Se(e[r],n))}return t}}(d||(d={}));var u=r(79429);!function(e){function t(t){t.trace(e.formatMessage.apply(void 0,arguments))}function r(e,t){return!!e.traceResolution&&void 0!==t.trace}function n(t,r){var n;if(r&&t){var i=t.packageJsonContent;"string"==typeof i.name&&"string"==typeof i.version&&(n={name:i.name,subModuleName:r.path.slice(t.packageDirectory.length+e.directorySeparator.length),version:i.version})}return r&&{path:r.path,extension:r.ext,packageId:n}}function o(e){return n(void 0,e)}function s(t){if(t)return e.Debug.assert(void 0===t.packageId),{path:t.path,ext:t.extension}}var c,l;function d(t){if(t)return e.Debug.assert(e.extensionIsTS(t.extension)),{fileName:t.path,packageId:t.packageId}}function p(e,t,r,n){var i;return n?((i=n.failedLookupLocations).push.apply(i,r),n):{resolvedModule:e&&{resolvedFileName:e.path,originalPath:!0===e.originalPath?void 0:e.originalPath,extension:e.extension,isExternalLibraryImport:t,packageId:e.packageId},failedLookupLocations:r}}function f(r,n,i,a){if(e.hasProperty(r,n)){var o=r[n];if(typeof o===i&&null!==o)return o;a.traceEnabled&&t(a.host,e.Diagnostics.Expected_type_of_0_field_in_package_json_to_be_1_got_2,n,i,null===o?"null":typeof o)}else if(a.traceEnabled){var s=e.isOhpm(a.compilerOptions.packageManagerType)?e.Diagnostics.oh_package_json5_does_not_have_a_0_field:e.Diagnostics.package_json_does_not_have_a_0_field;t(a.host,s,n)}}function m(r,n,i,a){var o=f(r,n,"string",a);if(void 0!==o){if(o){var s=e.normalizePath(e.combinePaths(i,o));if(a.traceEnabled){var c=e.isOhpm(a.compilerOptions.packageManagerType)?e.Diagnostics.oh_package_json5_has_0_field_1_that_references_2:e.Diagnostics.package_json_has_0_field_1_that_references_2;t(a.host,c,n,o,s)}return s}a.traceEnabled&&t(a.host,e.Diagnostics.package_json_had_a_falsy_0_field,n)}}function g(e,t,r){return m(e,"typings",t,r)||m(e,"types",t,r)}function _(e,t,r){return m(e,"main",t,r)}function h(r,n){var i=function(r,n){var i=f(r,"typesVersions","object",n);if(void 0!==i)return n.traceEnabled&&t(n.host,e.Diagnostics.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),i}(r,n);if(void 0!==i){if(n.traceEnabled)for(var a in i)e.hasProperty(i,a)&&!e.VersionRange.tryParse(a)&&t(n.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,a);var o=y(i);if(o){var s=o.version,c=o.paths;if("object"==typeof c)return o;n.traceEnabled&&t(n.host,e.Diagnostics.Expected_type_of_0_field_in_package_json_to_be_1_got_2,"typesVersions['"+s+"']","object",typeof c)}else n.traceEnabled&&t(n.host,e.Diagnostics.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,e.versionMajorMinor)}}function y(t){for(var r in l||(l=new e.Version(e.version)),t)if(e.hasProperty(t,r)){var n=e.VersionRange.tryParse(r);if(void 0!==n&&n.test(l))return{version:r,paths:t[r]}}}function v(t,r){return t.typeRoots?t.typeRoots:(t.configFilePath?n=e.getDirectoryPath(t.configFilePath):r.getCurrentDirectory&&(n=r.getCurrentDirectory()),void 0!==n?function(t,r,n){var i,a=e.combinePaths(e.getModuleByPMType(n),"@types");if(!r.directoryExists)return[e.combinePaths(t,a)];return e.forEachAncestorDirectory(e.normalizePath(t),(function(t){var n=e.combinePaths(t,a);r.directoryExists(n)&&(i||(i=[])).push(n)})),i}(n,r,t.packageManagerType):void 0);var n}function b(t){var r=new e.Map,n=new e.Map;return{ownMap:r,redirectsMap:n,getOrCreateMapOfCacheRedirects:function(i){if(!i)return r;var a=i.sourceFile.path,o=n.get(a);o||(o=!t||e.optionsHaveModuleResolutionChanges(t,i.commandLine.options)?new e.Map:r,n.set(a,o));return o},clear:function(){r.clear(),n.clear()},setOwnOptions:function(e){t=e},setOwnMap:function(e){r=e}}}function k(t,r,n,i){return{getOrCreateCacheForDirectory:function(r,o){var s=e.toPath(r,n,i);return a(t,o,s,(function(){return new e.Map}))},getOrCreateCacheForModuleName:function(t,n){return e.Debug.assert(!e.isExternalModuleNameRelative(t)),a(r,n,t,o)},directoryToModuleNameMap:t,moduleNameToDirectoryMap:r};function a(e,t,r,n){var i=e.getOrCreateMapOfCacheRedirects(t),a=i.get(r);return a||(a=n(),i.set(r,a)),a}function o(){var t=new e.Map;return{get:function(r){return t.get(e.toPath(r,n,i))},set:function(r,a){var o=e.toPath(r,n,i);if(t.has(o))return;t.set(o,a);var s=a.resolvedModule&&(a.resolvedModule.originalPath||a.resolvedModule.resolvedFileName),c=s&&function(t,r){var a=e.toPath(e.getDirectoryPath(r),n,i),o=0,s=Math.min(t.length,a.length);for(;o<s&&t.charCodeAt(o)===a.charCodeAt(o);)o++;if(o===t.length&&(a.length===o||a[o]===e.directorySeparator))return t;var c=e.getRootLength(t);if(o<c)return;var l=t.lastIndexOf(e.directorySeparator,o-1);if(-1===l)return;return t.substr(0,Math.max(l,c))}(o,s),l=o;for(;l!==c;){var u=e.getDirectoryPath(l);if(u===l||t.has(u))break;t.set(u,a),l=u}}}}}function x(r,n,i,a,o){var s=function(r,n,i,a){var o=a.compilerOptions,s=o.baseUrl,c=o.paths;if(c&&!e.pathIsRelative(n)){return a.traceEnabled&&(s&&t(a.host,e.Diagnostics.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,s,n),t(a.host,e.Diagnostics.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,n)),W(r,n,e.getPathsBasePath(a.compilerOptions,a.host),c,i,!1,a)}}(r,n,a,o);return s?s.value:e.isExternalModuleNameRelative(n)?function(r,n,i,a,o){if(!o.compilerOptions.rootDirs)return;o.traceEnabled&&t(o.host,e.Diagnostics.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,n);for(var s,c,l=e.normalizePath(e.combinePaths(i,n)),u=0,d=o.compilerOptions.rootDirs;u<d.length;u++){var p=d[u],f=e.normalizePath(p);e.endsWith(f,e.directorySeparator)||(f+=e.directorySeparator);var m=e.startsWith(l,f)&&(void 0===c||c.length<f.length);o.traceEnabled&&t(o.host,e.Diagnostics.Checking_if_0_is_the_longest_matching_prefix_for_1_2,f,l,m),m&&(c=f,s=p)}if(c){o.traceEnabled&&t(o.host,e.Diagnostics.Longest_matching_prefix_for_0_is_1,l,c);var g=l.substr(c.length);o.traceEnabled&&t(o.host,e.Diagnostics.Loading_0_from_the_root_dir_1_candidate_location_2,g,c,l);var _=a(r,l,!e.directoryProbablyExists(i,o.host),o);if(_)return _;o.traceEnabled&&t(o.host,e.Diagnostics.Trying_other_entries_in_rootDirs);for(var h=0,y=o.compilerOptions.rootDirs;h<y.length;h++){if((p=y[h])!==s){var v=e.combinePaths(e.normalizePath(p),g);o.traceEnabled&&t(o.host,e.Diagnostics.Loading_0_from_the_root_dir_1_candidate_location_2,g,p,v);var b=e.getDirectoryPath(v),k=a(r,v,!e.directoryProbablyExists(b,o.host),o);if(k)return k}}o.traceEnabled&&t(o.host,e.Diagnostics.Module_resolution_using_rootDirs_has_failed)}return}(r,n,i,a,o):function(r,n,i,a){var o=a.compilerOptions.baseUrl;if(!o)return;a.traceEnabled&&t(a.host,e.Diagnostics.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,o,n);var s=e.normalizePath(e.combinePaths(o,n));a.traceEnabled&&t(a.host,e.Diagnostics.Resolving_module_name_0_relative_to_base_url_1_2,n,o,s);return i(r,s,!e.directoryProbablyExists(e.getDirectoryPath(s),a.host),a)}(r,n,a,o)}e.trace=t,e.isTraceEnabled=r,function(e){e[e.TypeScript=0]="TypeScript",e[e.JavaScript=1]="JavaScript",e[e.Json=2]="Json",e[e.TSConfig=3]="TSConfig",e[e.DtsOnly=4]="DtsOnly"}(c||(c={})),e.getPackageJsonTypesVersionsPaths=y,e.getEffectiveTypeRoots=v,e.resolveTypeReferenceDirective=function(n,i,a,o,s){var l=r(a,o);s&&(a=s.commandLine.options);var u=[],p={compilerOptions:a,host:o,traceEnabled:l,failedLookupLocations:u},f=v(a,o);l&&(void 0===i?void 0===f?t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,n):t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,n,f):void 0===f?t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,n,i):t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,n,i,f),s&&t(o,e.Diagnostics.Using_compiler_options_of_project_reference_redirect_0,s.sourceFile.fileName));var m,g=function(){if(f&&f.length)return l&&t(o,e.Diagnostics.Resolving_with_primary_search_path_0,f.join(", ")),e.firstDefined(f,(function(r){var i=e.combinePaths(r,n),a=e.getDirectoryPath(i),s=e.directoryProbablyExists(a,o);return!s&&l&&t(o,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,a),d(B(c.DtsOnly,i,!s,p))}));l&&t(o,e.Diagnostics.Root_directory_cannot_be_determined_skipping_primary_search_paths)}(),_=!0;if(g||(g=function(){var r=i&&e.getDirectoryPath(i),s=a.packageManagerType;if(void 0!==r){if(l){var u=e.isOhpm(s)?e.Diagnostics.Looking_up_in_oh_modules_folder_initial_location_0:e.Diagnostics.Looking_up_in_node_modules_folder_initial_location_0;t(o,u,r)}var f=void 0;if(e.isExternalModuleNameRelative(n)){var m=e.normalizePathAndParts(e.combinePaths(r,n)).path;f=P(c.DtsOnly,m,!1,p,!0)}else{var g=J(c.DtsOnly,n,r,p,void 0,void 0);f=g&&g.value}var _=d(f);return!_&&l&&t(o,e.Diagnostics.Type_reference_directive_0_was_not_resolved,n),_}if(l){u=e.isOhpm(s)?e.Diagnostics.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_oh_modules_folder:e.Diagnostics.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder;t(o,u)}}(),_=!1),g){var h=g.fileName,y=g.packageId,b=a.preserveSymlinks?h:N(h,o,l);l&&(y?t(o,e.Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,n,b,e.packageIdToString(y),_):t(o,e.Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,n,b,_)),m={primary:_,resolvedFileName:b,packageId:y,isExternalLibraryImport:e.isOhpm(a.packageManagerType)?F(h):I(h)}}return{resolvedTypeReferenceDirective:m,failedLookupLocations:u}},e.getAutomaticTypeDirectiveNames=function(t,r){if(t.types)return t.types;var n=[];if(r.directoryExists&&r.getDirectories){var i=v(t,r);if(i)for(var a=0,o=i;a<o.length;a++){var s=o[a];if(r.directoryExists(s))for(var c=0,l=r.getDirectories(s);c<l.length;c++){var d=l[c],p=e.normalizePath(d),f=e.combinePaths(s,p,e.getPackageJsonByPMType(t.packageManagerType));if(!(e.isOhpm(t.packageManagerType)?r.fileExists(f)&&null===u.parse(r.readFile(f)).typings:r.fileExists(f)&&null===e.readJson(f,r).typings)){var m=e.getBaseFileName(p);46!==m.charCodeAt(0)&&n.push(m)}}}}return n},e.createModuleResolutionCache=function(e,t,r){return k(b(r),b(r),e,t)},e.createCacheWithRedirects=b,e.createModuleResolutionCacheWithMaps=k,e.resolveModuleNameFromCache=function(t,r,n){var i=e.getDirectoryPath(r),a=n&&n.getOrCreateCacheForDirectory(i);return a&&a.get(t)},e.resolveModuleName=function(n,i,a,o,s,c){var l=r(a,o);c&&(a=c.commandLine.options),l&&(t(o,e.Diagnostics.Resolving_module_0_from_1,n,i),c&&t(o,e.Diagnostics.Using_compiler_options_of_project_reference_redirect_0,c.sourceFile.fileName));var u=e.getDirectoryPath(i),d=s&&s.getOrCreateCacheForDirectory(u,c),p=d&&d.get(n);if(p)l&&t(o,e.Diagnostics.Resolution_for_module_0_was_found_in_cache_from_location_1,n,u);else{var f=a.moduleResolution;switch(void 0===f?(f=e.getEmitModuleKind(a)===e.ModuleKind.CommonJS?e.ModuleResolutionKind.NodeJs:e.ModuleResolutionKind.Classic,l&&t(o,e.Diagnostics.Module_resolution_kind_is_not_specified_using_0,e.ModuleResolutionKind[f])):l&&t(o,e.Diagnostics.Explicitly_specified_module_resolution_kind_Colon_0,e.ModuleResolutionKind[f]),e.perfLogger.logStartResolveModule(n),f){case e.ModuleResolutionKind.NodeJs:p=C(n,i,a,o,s,c);break;case e.ModuleResolutionKind.Classic:p=Q(n,i,a,o,s,c);break;default:return e.Debug.fail("Unexpected moduleResolution: "+f)}p&&p.resolvedModule&&e.perfLogger.logInfoEvent('Module "'+n+'" resolved to "'+p.resolvedModule.resolvedFileName+'"'),e.perfLogger.logStopResolveModule(p&&p.resolvedModule?""+p.resolvedModule.resolvedFileName:"null"),d&&(d.set(n,p),e.isExternalModuleNameRelative(n)||s.getOrCreateCacheForModuleName(n,c).set(u,p))}return l&&(p.resolvedModule?p.resolvedModule.packageId?t(o,e.Diagnostics.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,n,p.resolvedModule.resolvedFileName,e.packageIdToString(p.resolvedModule.packageId)):t(o,e.Diagnostics.Module_name_0_was_successfully_resolved_to_1,n,p.resolvedModule.resolvedFileName):t(o,e.Diagnostics.Module_name_0_was_not_resolved,n)),p},e.resolveJSModule=function(e,t,r){var n=T(e,t,r),i=n.resolvedModule,a=n.failedLookupLocations;if(!i)throw new Error("Could not resolve JS module '"+e+"' starting at '"+t+"'. Looked in: "+a.join(", "));return i.resolvedFileName},e.tryResolveJSModule=function(e,t,r){var n=T(e,t,r).resolvedModule;return n&&n.resolvedFileName};var E=[c.JavaScript],S=[c.TypeScript,c.JavaScript],D=i(i([],S),[c.Json]),w=[c.TSConfig];function T(t,r,n){return A(t,r,{moduleResolution:e.ModuleResolutionKind.NodeJs,allowJs:!0},n,void 0,E,void 0)}function C(t,r,n,i,a,o,s){return A(t,e.getDirectoryPath(r),n,i,a,s?w:n.resolveJsonModule?D:S,o)}function A(n,i,o,s,l,u,d){var f,m,g=r(o,s),_=[],h={compilerOptions:o,host:s,traceEnabled:g,failedLookupLocations:_},y=e.forEach(u,(function(r){return function(r){var u=function(e,t,r,n){return P(e,t,r,n,!0)},p=e.isOhpm(o.packageManagerType),f=x(r,n,i,u,h);if(f)return Z({resolved:f,isExternalLibraryImport:p?F(f.path):I(f.path)});if(e.isExternalModuleNameRelative(n)){var m=e.normalizePathAndParts(e.combinePaths(i,n)),_=m.path,y=m.parts,v=P(r,_,!1,h,!0);return v&&Z({resolved:v,isExternalLibraryImport:e.contains(y,e.getModuleByPMType(o.packageManagerType))})}if(g){var b=p?e.Diagnostics.Loading_module_0_from_oh_modules_folder_target_file_type_1:e.Diagnostics.Loading_module_0_from_node_modules_folder_target_file_type_1;t(s,b,n,c[r])}var k=J(r,n,i,h,l,d);if(!k)return;var E=k.value;if(!o.preserveSymlinks&&E&&!E.originalPath){var S=N(E.path,s,g),D=S===E.path?void 0:E.path;E=a(a({},E),{path:S,originalPath:D})}return{value:E&&{resolved:E,isExternalLibraryImport:!0}}}(r)}));return p(null===(f=null==y?void 0:y.value)||void 0===f?void 0:f.resolved,null===(m=null==y?void 0:y.value)||void 0===m?void 0:m.isExternalLibraryImport,_,h.resultFromCache)}function N(r,n,i){if(!n.realpath)return r;var a=e.normalizePath(n.realpath(r));return i&&t(n,e.Diagnostics.Resolving_real_path_for_0_result_1,r,a),e.Debug.assert(n.fileExists(a),r+" linked to nonexistent file "+a),a}function P(r,i,a,o,s){if(o.traceEnabled&&t(o.host,e.Diagnostics.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1,i,c[r]),!e.hasTrailingDirectorySeparator(i)){if(!a){var l=e.getDirectoryPath(i);e.directoryProbablyExists(l,o.host)||(o.traceEnabled&&t(o.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,l),a=!0)}var u=M(r,i,a,o);if(u){var d=s?function(t,r){var n=e.isOhpm(r)?e.ohModulesPathPart:e.nodeModulesPathPart,i=e.normalizePath(t.path),a=i.lastIndexOf(n);if(-1===a)return;var o=a+n.length,s=O(i,o);64===i.charCodeAt(o)&&(s=O(i,s));return i.slice(0,s)}(u,o.compilerOptions.packageManagerType):void 0;return n(d?z(d,!1,o):void 0,u)}}a||(e.directoryProbablyExists(i,o.host)||(o.traceEnabled&&t(o.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,i),a=!0));return B(r,i,a,o,s)}function I(t){return e.stringContains(t,e.nodeModulesPathPart)}function F(t){return e.stringContains(t,e.ohModulesPathPart)}function O(t,r){var n=t.indexOf(e.directorySeparator,r+1);return-1===n?r:n}function R(e,t,r,n){return o(M(e,t,r,n))}function M(r,n,i,a){if(r===c.Json||r===c.TSConfig){var o=e.tryRemoveExtension(n,".json");return void 0===o&&r===c.Json?void 0:L(o||n,r,i,a)}var s=L(n,r,i,a);if(s)return s;if(e.hasJSFileExtension(n)){var l=e.removeFileExtension(n);if(a.traceEnabled){var u=n.substring(l.length);t(a.host,e.Diagnostics.File_name_0_has_a_1_extension_stripping_it,n,u)}return L(l,r,i,a)}}function L(t,r,n,i){if(!n){var a=e.getDirectoryPath(t);a&&(n=!e.directoryProbablyExists(a,i.host))}switch(r){case c.DtsOnly:return i.compilerOptions.ets&&o(".d.ets")||o(".d.ts");case c.TypeScript:return i.compilerOptions.ets?o(".ets")||o(".ts")||o(".tsx")||o(".d.ets")||o(".d.ts"):o(".ts")||o(".tsx")||o(".d.ts")||o(".ets");case c.JavaScript:return o(".js")||o(".jsx");case c.TSConfig:case c.Json:return o(".json")}function o(e){var r=j(t+e,n,i);return void 0===r?void 0:{path:r,ext:e}}}function j(r,n,i){if(!n){if(i.host.fileExists(r))return i.traceEnabled&&t(i.host,e.Diagnostics.File_0_exist_use_it_as_a_name_resolution_result,r),r;i.traceEnabled&&t(i.host,e.Diagnostics.File_0_does_not_exist,r)}i.failedLookupLocations.push(r)}function B(e,t,r,i,a){void 0===a&&(a=!0);var o=a?z(t,r,i):void 0;return n(o,U(e,t,r,i,o&&o.packageJsonContent,o&&o.versionPaths))}function z(r,n,i){var a=i.host,o=i.traceEnabled,s=!n&&e.directoryProbablyExists(r,a),c=e.combinePaths(r,e.getPackageJsonByPMType(i.compilerOptions.packageManagerType));if(s&&a.fileExists(c)){var l=e.isOhpm(i.compilerOptions.packageManagerType),d=l?u.parse(a.readFile(c)):e.readJson(c,a);if(o)t(a,l?e.Diagnostics.Found_oh_package_json5_at_0:e.Diagnostics.Found_package_json_at_0,c);return{packageDirectory:r,packageJsonContent:d,versionPaths:h(d,i)}}s&&o&&t(a,e.Diagnostics.File_0_does_not_exist,c),i.failedLookupLocations.push(c)}function U(r,n,i,a,l,u){var d;if(l)switch(r){case c.JavaScript:case c.Json:d=_(l,n,a);break;case c.TypeScript:d=g(l,n,a)||_(l,n,a);break;case c.DtsOnly:d=g(l,n,a);break;case c.TSConfig:d=function(e,t,r){return m(e,"tsconfig",t,r)}(l,n,a);break;default:return e.Debug.assertNever(r)}var p=function(r,n,i,a){var s=j(n,i,a);if(s){var l=function(t,r){var n=e.tryGetExtensionFromPath(r);return void 0!==n&&function(e,t){switch(e){case c.JavaScript:return".js"===t||".jsx"===t;case c.TSConfig:case c.Json:return".json"===t;case c.TypeScript:return".ts"===t||".tsx"===t||".d.ts"===t||".ets"===t||".d.ets"===t;case c.DtsOnly:return".d.ts"===t||".d.ets"===t}}(t,n)?{path:r,ext:n}:void 0}(r,s);if(l)return o(l);a.traceEnabled&&t(a.host,e.Diagnostics.File_0_has_an_unsupported_extension_so_skipping_it,s)}return P(r===c.DtsOnly?c.TypeScript:r,n,i,a,!1)},f=d?!e.directoryProbablyExists(e.getDirectoryPath(d),a.host):void 0,h=i||!e.directoryProbablyExists(n,a.host),y=e.combinePaths(n,r===c.TSConfig?"tsconfig":"index");if(u&&(!d||e.containsPath(n,d))){var v=e.getRelativePathFromDirectory(n,d||y,!1);a.traceEnabled&&t(a.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,u.version,e.version,v);var b=W(r,v,n,u.paths,p,f||h,a);if(b)return s(b.value)}var k=d&&s(p(r,d,f,a));return k||M(r,y,h,a)}function q(t){var r=t.indexOf(e.directorySeparator);return"@"===t[0]&&(r=t.indexOf(e.directorySeparator,r+1)),-1===r?{packageName:t,rest:""}:{packageName:t.slice(0,r),rest:t.slice(r+1)}}function J(e,t,r,n,i,a){return V(e,t,r,n,!1,i,a)}function V(t,r,n,i,a,o,s){var c=o&&o.getOrCreateCacheForModuleName(r,s),l=i.compilerOptions.packageManagerType,u=e.getModuleByPMType(l);return e.forEachAncestorDirectory(e.normalizeSlashes(n),(function(n){if(e.getBaseFileName(n)!==u){var o=X(c,r,n,i);return o||Z(H(t,r,n,i,a))}}))}function H(r,n,i,a,o){var s=e.combinePaths(i,e.getModuleByPMType(a.compilerOptions.packageManagerType)),l=e.directoryProbablyExists(s,a.host);!l&&a.traceEnabled&&t(a.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,s);var u=o?void 0:K(r,n,s,l,a);if(u)return u;if(r===c.TypeScript||r===c.DtsOnly){var d=e.combinePaths(s,"@types"),p=l;return l&&!e.directoryProbablyExists(d,a.host)&&(a.traceEnabled&&t(a.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,d),p=!1),K(c.DtsOnly,function(r,n){var i=$(r);n.traceEnabled&&i!==r&&t(n.host,e.Diagnostics.Scoped_package_detected_looking_in_0,i);return i}(n,a),d,p,a)}}function K(r,i,a,s,c){var l=e.normalizePath(e.combinePaths(a,i)),u=z(l,!s,c);if(u){var d=M(r,l,!s,c);if(d)return o(d);var p=U(r,l,!s,c,u.packageJsonContent,u.versionPaths);return n(u,p)}var f=function(e,t,r,i){var a=M(e,t,r,i)||U(e,t,r,i,u&&u.packageJsonContent,u&&u.versionPaths);return n(u,a)},m=q(i),g=m.packageName,_=m.rest;if(""!==_){var h=e.combinePaths(a,g);if((u=z(h,!s,c))&&u.versionPaths){c.traceEnabled&&t(c.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,u.versionPaths.version,e.version,_);var y=s&&e.directoryProbablyExists(h,c.host),v=W(r,_,h,u.versionPaths.paths,f,!y,c);if(v)return v.value}}return f(r,l,!s,c)}function W(r,n,i,a,s,c,l){var u=e.matchPatternOrExact(e.getOwnKeys(a),n);if(u){var d=e.isString(u)?void 0:e.matchedText(u,n),p=e.isString(u)?u:e.patternText(u);return l.traceEnabled&&t(l.host,e.Diagnostics.Module_name_0_matched_pattern_1,n,p),{value:e.forEach(a[p],(function(n){var a=d?n.replace("*",d):n,u=e.normalizePath(e.combinePaths(i,a));l.traceEnabled&&t(l.host,e.Diagnostics.Trying_substitution_0_candidate_module_location_Colon_1,n,a);var p=e.tryGetExtensionFromPath(n);if(void 0!==p){var f=j(u,c,l);if(void 0!==f)return o({path:f,ext:p})}return s(r,u,c||!e.directoryProbablyExists(e.getDirectoryPath(u),l.host),l)}))}}}e.nodeModuleNameResolver=C,e.nodeModulesPathPart="/node_modules/",e.ohModulesPathPart="/oh_modules/",e.pathContainsNodeModules=I,e.pathContainsOHModules=F,e.parsePackageName=q;var G="__";function $(t){if(e.startsWith(t,"@")){var r=t.replace(e.directorySeparator,G);if(r!==t)return r.slice(1)}return t}function Y(t){return e.stringContains(t,G)?"@"+t.replace(G,e.directorySeparator):t}function X(r,n,i,a){var o=r&&r.get(i);if(o)return a.traceEnabled&&t(a.host,e.Diagnostics.Resolution_for_module_0_was_found_in_cache_from_location_1,n,i),a.resultFromCache=o,{value:o.resolvedModule&&{path:o.resolvedModule.resolvedFileName,originalPath:o.resolvedModule.originalPath||!0,extension:o.resolvedModule.extension,packageId:o.resolvedModule.packageId}}}function Q(t,n,i,a,o,s){var l=[],u={compilerOptions:i,host:a,traceEnabled:r(i,a),failedLookupLocations:l},d=e.getDirectoryPath(n),f=m(c.TypeScript)||m(c.JavaScript);return p(f&&f.value,!1,l,u.resultFromCache);function m(r){var n=x(r,t,d,R,u);if(n)return{value:n};if(e.isExternalModuleNameRelative(t)){var i=e.normalizePath(e.combinePaths(d,t));return Z(R(r,i,!1,u))}var a=o&&o.getOrCreateCacheForModuleName(t,s),l=e.forEachAncestorDirectory(d,(function(n){var i=X(a,t,n,u);if(i)return i;var o=e.normalizePath(e.combinePaths(n,t));return Z(R(r,o,!1,u))}));return l||(r===c.TypeScript?function(e,t,r){return V(c.DtsOnly,e,t,r,!0,void 0,void 0)}(t,d,u):void 0)}}function Z(e){return void 0!==e?{value:e}:void 0}e.getTypesPackageName=function(e){return"@types/"+$(e)},e.mangleScopedPackageName=$,e.getPackageNameFromTypesPackageName=function(t){var r=e.removePrefix(t,"@types/");return r!==t?Y(r):t},e.unmangleScopedPackageName=Y,e.classicNameResolver=Q,e.loadModuleFromGlobalCache=function(n,i,a,o,s){var l=r(a,o);l&&t(o,e.Diagnostics.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,i,n,s);var u=[],d={compilerOptions:a,host:o,traceEnabled:l,failedLookupLocations:u};return p(H(c.DtsOnly,n,s,d,!1),!0,u,d.resultFromCache)}}(d||(d={})),function(e){var t;function r(t,r){return t.body&&!t.body.parent&&(e.setParent(t.body,t),e.setParentRecursive(t.body,!1)),t.body?n(t.body,r):1}function n(t,i){void 0===i&&(i=new e.Map);var a=e.getNodeId(t);if(i.has(a))return i.get(a)||0;i.set(a,void 0);var s=function(t,i){switch(t.kind){case 256:case 257:return 0;case 258:if(e.isEnumConst(t))return 2;break;case 264:case 263:if(!e.hasSyntacticModifier(t,1))return 0;break;case 270:var a=t;if(!a.moduleSpecifier&&a.exportClause&&271===a.exportClause.kind){for(var s=0,c=0,l=a.exportClause.elements;c<l.length;c++){var u=o(l[c],i);if(u>s&&(s=u),1===s)return s}return s}break;case 260:var d=0;return e.forEachChild(t,(function(t){var r=n(t,i);switch(r){case 0:return;case 2:return void(d=2);case 1:return d=1,!0;default:e.Debug.assertNever(r)}})),d;case 259:return r(t,i);case 78:if(t.isInJSDocNamespace)return 0}return 1}(t,i);return i.set(a,s),s}function o(t,r){for(var i=t.propertyName||t.name,a=t.parent;a;){if(e.isBlock(a)||e.isModuleBlock(a)||e.isSourceFile(a)){for(var o=void 0,s=0,c=a.statements;s<c.length;s++){var l=c[s];if(e.nodeHasName(l,i)){l.parent||(e.setParent(l,a),e.setParentRecursive(l,!1));var u=n(l,r);if((void 0===o||u>o)&&(o=u),1===o)return o}}if(void 0!==o)return o}a=a.parent}return 1}function s(t){return e.Debug.attachFlowNodeDebugInfo(t),t}!function(e){e[e.NonInstantiated=0]="NonInstantiated",e[e.Instantiated=1]="Instantiated",e[e.ConstEnumOnly=2]="ConstEnumOnly"}(e.ModuleInstanceState||(e.ModuleInstanceState={})),e.getModuleInstanceState=r,function(e){e[e.None=0]="None",e[e.IsContainer=1]="IsContainer",e[e.IsBlockScopedContainer=2]="IsBlockScopedContainer",e[e.IsControlFlowContainer=4]="IsControlFlowContainer",e[e.IsFunctionLike=8]="IsFunctionLike",e[e.IsFunctionExpression=16]="IsFunctionExpression",e[e.HasLocals=32]="HasLocals",e[e.IsInterface=64]="IsInterface",e[e.IsObjectLiteralOrClassExpressionMethod=128]="IsObjectLiteralOrClassExpressionMethod"}(t||(t={}));var c=function(){var t,n,o,c,p,f,m,g,_,h,y,v,b,k,x,E,S,D,w,T,C,A,N,P,I=!1,F=0,O={flags:1},R={flags:1};function M(r,n,i,a,o){return e.createDiagnosticForNodeInSourceFile(e.getSourceFileOfNode(r)||t,r,n,i,a,o)}return function(r,i){t=r,n=i,o=e.getEmitScriptTarget(n),A=function(t,r){return!(!e.getStrictOptionValue(r,"alwaysStrict")||t.isDeclarationFile)||!!t.externalModuleIndicator}(t,i),P=new e.Set,F=0,N=e.objectAllocator.getSymbolConstructor(),e.Debug.attachFlowNodeDebugInfo(O),e.Debug.attachFlowNodeDebugInfo(R),t.locals||(Le(t),t.symbolCount=F,t.classifiableNames=P,function(){if(_){for(var r=p,n=g,i=m,a=c,o=y,l=0,d=_;l<d.length;l++){var f=d[l],h=e.getJSDocHost(f);p=h&&e.findAncestor(h.parent,(function(e){return!!(1&Se(e))}))||t,m=h&&e.getEnclosingBlockScopeContainer(h)||t,y=s({flags:2}),c=f,Le(f.typeExpression);var v=e.getNameOfDeclaration(f);if((e.isJSDocEnumTag(f)||!f.fullName)&&v&&e.isPropertyAccessEntityNameExpression(v.parent)){var b=Qe(v.parent);if(b){Ye(t.symbol,v.parent,b,!!e.findAncestor(v,(function(t){return e.isPropertyAccessExpression(t)&&"prototype"===t.name.escapedText})),!1);var k=p;switch(e.getAssignmentDeclarationPropertyAccessKind(v.parent)){case 1:case 2:p=e.isExternalOrCommonJsModule(t)?t:void 0;break;case 4:p=v.parent.expression;break;case 3:p=v.parent.expression.name;break;case 5:p=u(t,v.parent.expression)?t:e.isPropertyAccessExpression(v.parent.expression)?v.parent.expression.name:v.parent.expression;break;case 0:return e.Debug.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}p&&q(f,524288,788968),p=k}}else e.isJSDocEnumTag(f)||!f.fullName||78===f.fullName.kind?(c=f.parent,Ne(f,524288,788968)):Le(f.fullName)}p=r,g=n,m=i,c=a,y=o}}()),t=void 0,n=void 0,o=void 0,c=void 0,p=void 0,f=void 0,m=void 0,g=void 0,_=void 0,h=!1,y=void 0,v=void 0,b=void 0,k=void 0,x=void 0,E=void 0,S=void 0,w=void 0,T=!1,I=!1,C=0};function L(e,t){return F++,new N(e,t)}function j(t,r,n){t.flags|=n,r.symbol=t,t.declarations=e.appendIfUnique(t.declarations,r),1955&n&&!t.exports&&(t.exports=e.createSymbolTable()),6240&n&&!t.members&&(t.members=e.createSymbolTable()),t.constEnumOnlyModule&&304&t.flags&&(t.constEnumOnlyModule=!1),111551&n&&e.setValueDeclaration(t,r)}function B(t){if(269===t.kind)return t.isExportEquals?"export=":"default";var r=e.getNameOfDeclaration(t);if(r){if(e.isAmbientModule(t)){var n=e.getTextOfIdentifierOrLiteral(r);return e.isGlobalScopeAugmentation(t)?"__global":'"'+n+'"'}if(159===r.kind){var i=r.expression;return e.isStringOrNumericLiteralLike(i)?e.escapeLeadingUnderscores(i.text):e.isSignedNumericLiteral(i)?e.tokenToString(i.operator)+i.operand.text:(e.Debug.assert(e.isWellKnownSymbolSyntactically(i)),e.getPropertyNameForKnownSymbolName(e.idText(i.name)))}if(e.isWellKnownSymbolSyntactically(r))return e.getPropertyNameForKnownSymbolName(e.idText(r.name));if(e.isPrivateIdentifier(r)){var a=e.getContainingClass(t);if(!a)return;var o=a.symbol;return e.getSymbolNameForPrivateIdentifier(o,r.escapedText)}return e.isPropertyNameLiteral(r)?e.getEscapedTextOfIdentifierOrLiteral(r):void 0}switch(t.kind){case 167:return"__constructor";case 175:case 170:case 316:return"__call";case 176:case 171:return"__new";case 172:return"__index";case 270:return"__export";case 300:return"export=";case 218:if(2===e.getAssignmentDeclarationKind(t))return"export=";e.Debug.fail("Unknown binary declaration kind");break;case 311:return e.isJSDocConstructSignature(t)?"__new":"__call";case 161:return e.Debug.assert(311===t.parent.kind,"Impossible parameter parent kind",(function(){return"parent is: "+(e.SyntaxKind?e.SyntaxKind[t.parent.kind]:t.parent.kind)+", expected JSDocFunctionType"})),"arg"+t.parent.parameters.indexOf(t)}}function z(t){return e.isNamedDeclaration(t)?e.declarationNameToString(t.name):e.unescapeLeadingUnderscores(e.Debug.checkDefined(B(t)))}function U(r,n,a,o,s,c){e.Debug.assert(!e.hasDynamicName(a));var l,u=e.hasSyntacticModifier(a,512)||e.isExportSpecifier(a)&&"default"===a.name.escapedText,d=u&&n?"default":B(a);if(void 0===d)l=L(0,"__missing");else if(l=r.get(d),2885600&o&&P.add(d),l){if(c&&!l.isReplaceableByMethod)return l;if(l.flags&s)if(l.isReplaceableByMethod)r.set(d,l=L(0,d));else if(!(3&o&&67108864&l.flags)){e.isNamedDeclaration(a)&&e.setParent(a.name,a);var p=2&l.flags?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0,f=!0;(384&l.flags||384&o)&&(p=e.Diagnostics.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,f=!1);var m=!1;e.length(l.declarations)&&(u||l.declarations&&l.declarations.length&&269===a.kind&&!a.isExportEquals)&&(p=e.Diagnostics.A_module_cannot_have_multiple_default_exports,f=!1,m=!0);var g=[];e.isTypeAliasDeclaration(a)&&e.nodeIsMissing(a.type)&&e.hasSyntacticModifier(a,1)&&2887656&l.flags&&g.push(M(a,e.Diagnostics.Did_you_mean_0,"export type { "+e.unescapeLeadingUnderscores(a.name.escapedText)+" }"));var _=e.getNameOfDeclaration(a)||a;e.forEach(l.declarations,(function(r,n){var i=e.getNameOfDeclaration(r)||r,a=M(i,p,f?z(r):void 0);t.bindDiagnostics.push(m?e.addRelatedInfo(a,M(_,0===n?e.Diagnostics.Another_export_default_is_here:e.Diagnostics.and_here)):a),m&&g.push(M(i,e.Diagnostics.The_first_export_default_is_here))}));var h=M(_,p,f?z(a):void 0);t.bindDiagnostics.push(e.addRelatedInfo.apply(void 0,i([h],g))),l=L(0,d)}}else r.set(d,l=L(0,d)),c&&(l.isReplaceableByMethod=!0);return j(l,a,o),l.parent?e.Debug.assert(l.parent===n,"Existing symbol parent should match new one"):l.parent=n,l}function q(t,r,n){var i=!!(1&e.getCombinedModifierFlags(t))||function(t){t.parent&&e.isModuleDeclaration(t)&&(t=t.parent);if(!e.isJSDocTypeAlias(t))return!1;if(!e.isJSDocEnumTag(t)&&t.fullName)return!0;var r=e.getNameOfDeclaration(t);return!!r&&(!(!e.isPropertyAccessEntityNameExpression(r.parent)||!Qe(r.parent))||!!(e.isDeclaration(r.parent)&&1&e.getCombinedModifierFlags(r.parent)))}(t);if(2097152&r)return 273===t.kind||263===t.kind&&i?U(p.symbol.exports,p.symbol,t,r,n):U(p.locals,void 0,t,r,n);if(e.isJSDocTypeAlias(t)&&e.Debug.assert(e.isInJSFile(t)),!e.isAmbientModule(t)&&(i||64&p.flags)){if(!p.locals||e.hasSyntacticModifier(t,512)&&!B(t))return U(p.symbol.exports,p.symbol,t,r,n);var a=111551&r?1048576:0,o=U(p.locals,void 0,t,a,n);return o.exportSymbol=U(p.symbol.exports,p.symbol,t,r,n),t.localSymbol=o,o}return U(p.locals,void 0,t,r,n)}function J(e){V(e,(function(e){return 253===e.kind?Le(e):void 0})),V(e,(function(e){return 253!==e.kind?Le(e):void 0}))}function V(t,r){void 0===r&&(r=Le),void 0!==t&&e.forEach(t,r)}function H(t){e.forEachChild(t,Le,V)}function K(t){var i=I;if(I=!1,function(t){if(!(1&y.flags))return!1;if(y===O){var i=e.isStatementButNotDeclaration(t)&&233!==t.kind||254===t.kind||259===t.kind&&function(t){var i=r(t);return 1===i||2===i&&e.shouldPreserveConstEnums(n)}(t);if(i&&(y=R,!n.allowUnreachableCode)){var a=e.unreachableCodeIsError(n)&&!(8388608&t.flags)&&(!e.isVariableStatement(t)||!!(3&e.getCombinedNodeFlags(t.declarationList))||t.declarationList.declarations.some((function(e){return!!e.initializer})));!function(t,r){if(e.isStatement(t)&&l(t)&&e.isBlock(t.parent)){var n=t.parent.statements,i=e.sliceAfter(n,t);e.getRangesWhere(i,l,(function(e,t){return r(i[e],i[t-1])}))}else r(t,t)}(t,(function(t,r){return Me(a,t,r,e.Diagnostics.Unreachable_code_detected)}))}}return!0}(t))return H(t),je(t),void(I=i);switch(t.kind>=234&&t.kind<=250&&!n.allowUnreachableCode&&(t.flowNode=y),t.kind){case 238:!function(e){var t=me(e,Z()),r=Q(),n=Q();re(t,y),y=t,pe(e.expression,r,n),y=se(r),fe(e.statement,n,t),re(t,y),y=se(n)}(t);break;case 237:!function(e){var t=Z(),r=me(e,Q()),n=Q();re(t,y),y=t,fe(e.statement,n,r),re(r,y),y=se(r),pe(e.expression,t,n),y=se(n)}(t);break;case 239:!function(e){var t=me(e,Z()),r=Q(),n=Q();Le(e.initializer),re(t,y),y=t,pe(e.condition,r,n),y=se(r),fe(e.statement,n,t),Le(e.incrementor),re(t,y),y=se(n)}(t);break;case 240:case 241:!function(e){var t=me(e,Z()),r=Q();Le(e.expression),re(t,y),y=t,241===e.kind&&Le(e.awaitModifier);re(r,y),Le(e.initializer),252!==e.initializer.kind&&ye(e.initializer);fe(e.statement,r,t),re(t,y),y=se(r)}(t);break;case 236:!function(e){var t=Q(),r=Q(),n=Q();pe(e.expression,t,r),y=se(t),Le(e.thenStatement),re(n,y),y=se(r),Le(e.elseStatement),re(n,y),y=se(n)}(t);break;case 244:case 248:!function(e){Le(e.expression),244===e.kind&&(T=!0,k&&re(k,y));y=O}(t);break;case 243:case 242:!function(e){if(Le(e.label),e.label){var t=function(e){for(var t=w;t;t=t.next)if(t.name===e)return t;return}(e.label.escapedText);t&&(t.referenced=!0,ge(e,t.breakTarget,t.continueTarget))}else ge(e,v,b)}(t);break;case 249:!function(t){var r=k,n=S,i=Q(),a=Q(),o=Q();t.finallyBlock&&(k=a);re(o,y),S=o,Le(t.tryBlock),re(i,y),t.catchClause&&(y=se(o),re(o=Q(),y),S=o,Le(t.catchClause),re(i,y));if(k=r,S=n,t.finallyBlock){var s=Q();s.antecedents=e.concatenate(e.concatenate(i.antecedents,o.antecedents),a.antecedents),y=s,Le(t.finallyBlock),1&y.flags?y=O:(k&&a.antecedents&&re(k,ee(s,a.antecedents,y)),S&&o.antecedents&&re(S,ee(s,o.antecedents,y)),y=i.antecedents?ee(s,i.antecedents,y):O)}else y=se(i)}(t);break;case 246:!function(t){var r=Q();Le(t.expression);var n=v,i=D;v=r,D=y,Le(t.caseBlock),re(r,y);var a=e.forEach(t.caseBlock.clauses,(function(e){return 288===e.kind}));t.possiblyExhaustive=!a&&!r.antecedents,a||re(r,ie(D,t,0,0));v=n,D=i,y=se(r)}(t);break;case 261:!function(e){for(var t=e.clauses,r=W(e.parent.expression),i=O,a=0;a<t.length;a++){for(var o=a;!t[a].statements.length&&a+1<t.length;)Le(t[a]),a++;var s=Q();re(s,r?ie(D,e.parent,o,a+1):D),re(s,i),y=se(s);var c=t[a];Le(c),i=y,1&y.flags||a===t.length-1||!n.noFallthroughCasesInSwitch||(c.fallthroughFlowNode=y)}}(t);break;case 287:!function(e){var t=y;y=D,Le(e.expression),y=t,V(e.statements)}(t);break;case 235:!function(e){Le(e.expression),_e(e.expression)}(t);break;case 247:!function(t){var r=Q();w={next:w,name:t.label.escapedText,breakTarget:r,continueTarget:void 0,referenced:!1},Le(t.label),Le(t.statement),w.referenced||n.allowUnusedLabels||function(e,t,r){Me(e,t,t,r)}(e.unusedLabelIsError(n),t.label,e.Diagnostics.Unused_label);w=w.next,re(r,y),y=se(r)}(t);break;case 216:!function(e){if(53===e.operator){var t=x;x=E,E=t,H(e),E=x,x=t}else H(e),45!==e.operator&&46!==e.operator||ye(e.operand)}(t);break;case 217:!function(e){H(e),(45===e.operator||46===e.operator)&&ye(e.operand)}(t);break;case 218:if(e.isDestructuringAssignment(t))return I=i,void function(e){I?(I=!1,Le(e.operatorToken),Le(e.right),I=!0,Le(e.left)):(I=!0,Le(e.left),I=!1,Le(e.operatorToken),Le(e.right));ye(e.left)}(t);!function(t){var r={expr:[t],state:[1],inStrictMode:[void 0],parent:[void 0]},n=0;for(;n>=0;)switch(t=r.expr[n],r.state[n]){case 0:e.setParent(t,c);var i=A;ze(t);var a=c;c=t,l(1,i,a);break;case 1:if(55===(s=t.operatorToken.kind)||56===s||60===s||e.isLogicalOrCoalescingAssignmentOperator(s)){if(ue(t)){var o=Q();ve(t,o,o),y=se(o)}else ve(t,x,E);u()}else l(2),d(t.left);break;case 2:27===t.operatorToken.kind&&_e(t.left),l(3),d(t.operatorToken);break;case 3:l(4),d(t.right);break;case 4:var s=t.operatorToken.kind;if(e.isAssignmentOperator(s)&&!e.isAssignmentTarget(t))if(ye(t.left),62===s&&203===t.left.kind)X(t.left.expression)&&(y=ae(256,y,t));u();break;default:return e.Debug.fail("Invalid state "+r.state[n]+" for bindBinaryExpressionFlow")}function l(e,t,i){r.state[n]=e,void 0!==t&&(r.inStrictMode[n]=t),void 0!==i&&(r.parent[n]=i)}function u(){void 0!==r.inStrictMode[n]&&(A=r.inStrictMode[n],c=r.parent[n]),n--}function d(t){t&&e.isBinaryExpression(t)&&!e.isDestructuringAssignment(t)?(n++,r.expr[n]=t,r.state[n]=0,r.inStrictMode[n]=void 0,r.parent[n]=void 0):Le(t)}}(t);break;case 212:!function(e){H(e),202===e.expression.kind&&ye(e.expression)}(t);break;case 219:!function(e){var t=Q(),r=Q(),n=Q();pe(e.condition,t,r),y=se(t),Le(e.questionToken),Le(e.whenTrue),re(n,y),y=se(r),Le(e.colonToken),Le(e.whenFalse),re(n,y),y=se(n)}(t);break;case 251:!function(t){H(t),(t.initializer||e.isForInOrOfStatement(t.parent.parent))&&be(t)}(t);break;case 202:case 203:!function(t){e.isOptionalChain(t)?Ee(t):H(t)}(t);break;case 204:!function(t){if(e.isOptionalChain(t))Ee(t);else{var r=e.skipParentheses(t.expression);209===r.kind||210===r.kind?(V(t.typeArguments),V(t.arguments),Le(t.expression)):(H(t),106===t.expression.kind&&(y=oe(y,t)))}if(202===t.expression.kind){var n=t.expression;e.isIdentifier(n.name)&&X(n.expression)&&e.isPushOrUnshiftIdentifier(n.name)&&(y=ae(256,y,t))}}(t);break;case 227:!function(t){e.isOptionalChain(t)?Ee(t):H(t)}(t);break;case 334:case 327:case 328:!function(t){e.setParent(t.tagName,t),328!==t.kind&&t.fullName&&(e.setParent(t.fullName,t),e.setParentRecursive(t.fullName,!1))}(t);break;case 300:J(t.statements),Le(t.endOfFileToken);break;case 232:case 260:J(t.statements);break;case 199:!function(t){e.isBindingPattern(t.name)?(V(t.decorators),V(t.modifiers),Le(t.dotDotDotToken),Le(t.propertyName),Le(t.initializer),Le(t.name)):H(t)}(t);break;case 201:case 200:case 291:case 222:I=i;default:H(t)}je(t),I=i}function W(t){switch(t.kind){case 78:case 79:case 108:case 202:case 203:return $(t);case 204:return function(e){if(e.arguments)for(var t=0,r=e.arguments;t<r.length;t++){if($(r[t]))return!0}if(202===e.expression.kind&&$(e.expression.expression))return!0;return!1}(t);case 208:case 227:case 213:return W(t.expression);case 218:return function(t){switch(t.operatorToken.kind){case 62:case 74:case 75:case 76:return $(t.left);case 34:case 35:case 36:case 37:return X(t.left)||X(t.right)||Y(t.right,t.left)||Y(t.left,t.right);case 102:return X(t.left);case 101:return r=t.left,n=t.right,e.isStringLiteralLike(r)&&W(n);case 27:return W(t.right)}var r,n;return!1}(t);case 216:return 53===t.operator&&W(t.operand)}return!1}function G(t){return 78===t.kind||79===t.kind||108===t.kind||106===t.kind||(e.isPropertyAccessExpression(t)||e.isNonNullExpression(t)||e.isParenthesizedExpression(t))&&G(t.expression)||e.isBinaryExpression(t)&&27===t.operatorToken.kind&&G(t.right)||e.isElementAccessExpression(t)&&e.isStringOrNumericLiteralLike(t.argumentExpression)&&G(t.expression)||e.isAssignmentExpression(t)&&G(t.left)}function $(t){return G(t)||e.isOptionalChain(t)&&$(t.expression)}function Y(t,r){return e.isTypeOfExpression(t)&&X(t.expression)&&e.isStringLiteralLike(r)}function X(e){switch(e.kind){case 208:return X(e.expression);case 218:switch(e.operatorToken.kind){case 62:return X(e.left);case 27:return X(e.right)}}return $(e)}function Q(){return s({flags:4,antecedents:void 0})}function Z(){return s({flags:8,antecedents:void 0})}function ee(e,t,r){return s({flags:1024,target:e,antecedents:t,antecedent:r})}function te(e){e.flags|=2048&e.flags?4096:2048}function re(t,r){1&r.flags||e.contains(t.antecedents,r)||((t.antecedents||(t.antecedents=[])).push(r),te(r))}function ne(t,r,n){return 1&r.flags?r:n?!(110===n.kind&&64&t||95===n.kind&&32&t)||e.isExpressionOfOptionalChainRoot(n)||e.isNullishCoalesce(n.parent)?W(n)?(te(r),s({flags:t,antecedent:r,node:n})):r:O:32&t?r:O}function ie(e,t,r,n){return te(e),s({flags:128,antecedent:e,switchStatement:t,clauseStart:r,clauseEnd:n})}function ae(e,t,r){te(t);var n=s({flags:e,antecedent:t,node:r});return S&&re(S,n),n}function oe(e,t){return te(e),s({flags:512,antecedent:e,node:t})}function se(e){var t=e.antecedents;return t?1===t.length?t[0]:e:O}function ce(e){for(;;)if(208===e.kind)e=e.expression;else{if(216!==e.kind||53!==e.operator)return 218===e.kind&&(55===e.operatorToken.kind||56===e.operatorToken.kind||60===e.operatorToken.kind);e=e.operand}}function le(t){return t=e.skipParentheses(t),e.isBinaryExpression(t)&&e.isLogicalOrCoalescingAssignmentOperator(t.operatorToken.kind)}function ue(t){for(;e.isParenthesizedExpression(t.parent)||e.isPrefixUnaryExpression(t.parent)&&53===t.parent.operator;)t=t.parent;return!(function(e){var t=e.parent;switch(t.kind){case 236:case 238:case 237:return t.expression===e;case 239:case 219:return t.condition===e}return!1}(t)||le(t.parent)||ce(t.parent)||e.isOptionalChain(t.parent)&&t.parent.expression===t)}function de(e,t,r,n){var i=x,a=E;x=r,E=n,e(t),x=i,E=a}function pe(t,r,n){de(Le,t,r,n),t&&(le(t)||ce(t)||e.isOptionalChain(t)&&e.isOutermostOptionalChain(t))||(re(r,ne(32,y,t)),re(n,ne(64,y,t)))}function fe(e,t,r){var n=v,i=b;v=t,b=r,Le(e),v=n,b=i}function me(e,t){for(var r=w;r&&247===e.parent.kind;)r.continueTarget=t,r=r.next,e=e.parent;return t}function ge(e,t,r){var n=243===e.kind?t:r;n&&(re(n,y),y=O)}function _e(t){if(204===t.kind){var r=t;e.isDottedName(r.expression)&&106!==r.expression.kind&&(y=oe(y,r))}}function he(e){218===e.kind&&62===e.operatorToken.kind?ye(e.left):ye(e)}function ye(e){if(G(e))y=ae(16,y,e);else if(200===e.kind)for(var t=0,r=e.elements;t<r.length;t++){var n=r[t];222===n.kind?ye(n.expression):he(n)}else if(201===e.kind)for(var i=0,a=e.properties;i<a.length;i++){var o=a[i];291===o.kind?he(o.initializer):292===o.kind?ye(o.name):293===o.kind&&ye(o.expression)}}function ve(t,r,n){var i=Q();55===t.operatorToken.kind||75===t.operatorToken.kind?pe(t.left,i,n):pe(t.left,r,i),y=se(i),Le(t.operatorToken),e.isLogicalOrCoalescingAssignmentOperator(t.operatorToken.kind)?(de(Le,t.right,r,n),ye(t.left),re(r,ne(32,y,t)),re(n,ne(64,y,t))):pe(t.right,r,n)}function be(t){var r=e.isOmittedExpression(t)?void 0:t.name;if(e.isBindingPattern(r))for(var n=0,i=r.elements;n<i.length;n++){be(i[n])}else y=ae(16,y,t)}function ke(e){switch(e.kind){case 202:Le(e.questionDotToken),Le(e.name);break;case 203:Le(e.questionDotToken),Le(e.argumentExpression);break;case 204:Le(e.questionDotToken),V(e.typeArguments),V(e.arguments)}}function xe(t,r,n){var i=e.isOptionalChainRoot(t)?Q():void 0;!function(t,r,n){de(Le,t,r,n),e.isOptionalChain(t)&&!e.isOutermostOptionalChain(t)||(re(r,ne(32,y,t)),re(n,ne(64,y,t)))}(t.expression,i||r,n),i&&(y=se(i)),de(ke,t,r,n),e.isOutermostOptionalChain(t)&&(re(r,ne(32,y,t)),re(n,ne(64,y,t)))}function Ee(e){if(ue(e)){var t=Q();xe(e,t,t),y=se(t)}else xe(e,x,E)}function Se(t){switch(t.kind){case 223:case 254:case 255:case 258:case 201:case 178:case 315:case 284:return 1;case 256:return 65;case 259:case 257:case 191:return 33;case 300:return 37;case 166:if(e.isObjectLiteralOrClassExpressionMethod(t))return 173;case 167:case 253:case 165:case 168:case 169:case 170:case 316:case 311:case 175:case 171:case 172:case 176:return 45;case 209:case 210:return 61;case 260:return 4;case 164:return t.initializer?4:0;case 290:case 239:case 240:case 241:case 261:return 2;case 232:return e.isFunctionLike(t.parent)?0:2}return 0}function De(e){g&&(g.nextContainer=e),g=e}function we(r,n,i){switch(p.kind){case 259:return q(r,n,i);case 300:return function(r,n,i){return e.isExternalModule(t)?q(r,n,i):U(t.locals,void 0,r,n,i)}(r,n,i);case 223:case 254:case 255:return function(t,r,n){return e.hasSyntacticModifier(t,32)?U(p.symbol.exports,p.symbol,t,r,n):U(p.symbol.members,p.symbol,t,r,n)}(r,n,i);case 258:return U(p.symbol.exports,p.symbol,r,n,i);case 178:case 315:case 201:case 256:case 284:return U(p.symbol.members,p.symbol,r,n,i);case 175:case 176:case 170:case 171:case 316:case 172:case 166:case 165:case 167:case 168:case 169:case 253:case 209:case 210:case 311:case 334:case 327:case 257:case 191:return U(p.locals,void 0,r,n,i)}}function Te(t){8388608&t.flags&&!function(t){var r=e.isSourceFile(t)?t:e.tryCast(t.body,e.isModuleBlock);return!!r&&r.statements.some((function(t){return e.isExportDeclaration(t)||e.isExportAssignment(t)}))}(t)?t.flags|=64:t.flags&=-65}function Ce(e){var t=r(e),n=0!==t;return we(e,n?512:1024,n?110735:0),t}function Ae(e,t,r){var n=L(t,r);return 106508&t&&(n.parent=p.symbol),j(n,e,t),n}function Ne(t,r,n){switch(m.kind){case 259:q(t,r,n);break;case 300:if(e.isExternalOrCommonJsModule(p)){q(t,r,n);break}default:m.locals||(m.locals=e.createSymbolTable(),De(m)),U(m.locals,void 0,t,r,n)}}function Pe(r){t.parseDiagnostics.length||8388608&r.flags||4194304&r.flags||e.isIdentifierName(r)||(A&&r.originalKeywordKind>=117&&r.originalKeywordKind<=125?t.bindDiagnostics.push(M(r,function(r){if(e.getContainingClass(r))return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode;if(t.externalModuleIndicator)return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode;return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode}(r),e.declarationNameToString(r))):131===r.originalKeywordKind?e.isExternalModule(t)&&e.isInTopLevelContext(r)?t.bindDiagnostics.push(M(r,e.Diagnostics.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,e.declarationNameToString(r))):32768&r.flags&&t.bindDiagnostics.push(M(r,e.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,e.declarationNameToString(r))):125===r.originalKeywordKind&&8192&r.flags&&t.bindDiagnostics.push(M(r,e.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,e.declarationNameToString(r))))}function Ie(r,n){if(n&&78===n.kind){var i=n;if(o=i,e.isIdentifier(o)&&("eval"===o.escapedText||"arguments"===o.escapedText)){var a=e.getErrorSpanForNode(t,n);t.bindDiagnostics.push(e.createFileDiagnostic(t,a.start,a.length,function(r){if(e.getContainingClass(r))return e.Diagnostics.Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode;if(t.externalModuleIndicator)return e.Diagnostics.Invalid_use_of_0_Modules_are_automatically_in_strict_mode;return e.Diagnostics.Invalid_use_of_0_in_strict_mode}(r),e.idText(i)))}}var o}function Fe(e){A&&Ie(e,e.name)}function Oe(r){if(o<2&&300!==m.kind&&259!==m.kind&&!e.isFunctionLike(m)){var n=e.getErrorSpanForNode(t,r);t.bindDiagnostics.push(e.createFileDiagnostic(t,n.start,n.length,function(r){return e.getContainingClass(r)?e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:t.externalModuleIndicator?e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5}(r)))}}function Re(r,n,i,a,o){var s=e.getSpanOfTokenAtPosition(t,r.pos);t.bindDiagnostics.push(e.createFileDiagnostic(t,s.start,s.length,n,i,a,o))}function Me(r,n,i,o){!function(r,n,i){var o=e.createFileDiagnostic(t,n.pos,n.end-n.pos,i);r?t.bindDiagnostics.push(o):t.bindSuggestionDiagnostics=e.append(t.bindSuggestionDiagnostics,a(a({},o),{category:e.DiagnosticCategory.Suggestion}))}(r,{pos:e.getTokenPosOfNode(n,t),end:i.end},o)}function Le(t){if(t){e.setParent(t,c);var r=A;if(ze(t),t.kind>157){var n=c;c=t;var i=Se(t);0===i?K(t):function(t,r){var n=p,i=f,a=m;if(1&r?(210!==t.kind&&(f=p),p=m=t,32&r&&(p.locals=e.createSymbolTable()),De(p)):2&r&&((m=t).locals=void 0),4&r){var o=y,c=v,l=b,u=k,d=S,g=w,_=T,x=16&r&&!e.hasSyntacticModifier(t,256)&&!t.asteriskToken&&!!e.getImmediatelyInvokedFunctionExpression(t);x||(y=s({flags:2}),144&r&&(y.node=t)),k=x||167===t.kind||e.isInJSFile(t)&&(253===t.kind||209===t.kind)?Q():void 0,S=void 0,v=void 0,b=void 0,w=void 0,T=!1,K(t),t.flags&=-2817,!(1&y.flags)&&8&r&&e.nodeIsPresent(t.body)&&(t.flags|=256,T&&(t.flags|=512),t.endFlowNode=y),300===t.kind&&(t.flags|=C),k&&(re(k,y),y=se(k),(167===t.kind||e.isInJSFile(t)&&(253===t.kind||209===t.kind))&&(t.returnFlowNode=y)),x||(y=o),v=c,b=l,k=u,S=d,w=g,T=_}else 64&r?(h=!1,K(t),t.flags=h?128|t.flags:-129&t.flags):K(t);p=n,f=i,m=a}(t,i),c=n}else{n=c;1===t.kind&&(c=t),je(t),c=n}A=r}}function je(t){if(e.hasJSDocNodes(t))if(e.isInJSFile(t))for(var r=0,n=t.jsDoc;r<n.length;r++){Le(o=n[r])}else for(var i=0,a=t.jsDoc;i<a.length;i++){var o=a[i];e.setParent(o,t),e.setParentRecursive(o,!1)}}function Be(r){if(!A)for(var n=0,i=r;n<i.length;n++){var a=i[n];if(!e.isPrologueDirective(a))return;if(o=a,s=void 0,'"use strict"'===(s=e.getSourceTextOfNodeFromSourceFile(t,o.expression))||"'use strict'"===s)return void(A=!0)}var o,s}function ze(r){switch(r.kind){case 78:if(r.isInJSDocNamespace){for(var i=r.parent;i&&!e.isJSDocTypeAlias(i);)i=i.parent;Ne(i,524288,788968);break}case 108:return y&&(e.isExpression(r)||292===c.kind)&&(r.flowNode=y),Pe(r);case 158:y&&177===c.kind&&(r.flowNode=y);break;case 106:r.flowNode=y;break;case 79:return function(r){"#constructor"===r.escapedText&&(t.parseDiagnostics.length||t.bindDiagnostics.push(M(r,e.Diagnostics.constructor_is_a_reserved_word,e.declarationNameToString(r))))}(r);case 202:case 203:var a=r;y&&G(a)&&(a.flowNode=y),e.isSpecialPropertyDeclaration(a)&&function(t){108===t.expression.kind?He(t):e.isBindableStaticAccessExpression(t)&&300===t.parent.parent.kind&&(e.isPrototypeAccess(t.expression)?Ge(t,t.parent):$e(t))}(a),e.isInJSFile(a)&&t.commonJsModuleIndicator&&e.isModuleExportsAccessExpression(a)&&!d(m,"module")&&U(t.locals,void 0,a.expression,134217729,111550);break;case 218:switch(e.getAssignmentDeclarationKind(r)){case 1:Je(r);break;case 2:!function(r){if(!qe(r))return;var n=e.getRightMostAssignedExpression(r.right);if(e.isEmptyObjectLiteral(n)||p===t&&u(t,n))return;if(e.isObjectLiteralExpression(n)&&e.every(n.properties,e.isShorthandPropertyAssignment))return void e.forEach(n.properties,Ve);var i=e.exportAssignmentIsAlias(r)?2097152:1049092,a=U(t.symbol.exports,t.symbol,r,67108864|i,0);e.setValueDeclaration(a,r)}(r);break;case 3:Ge(r.left,r);break;case 6:!function(t){e.setParent(t.left,t),e.setParent(t.right,t),Ze(t.left.expression,t.left,!1,!0)}(r);break;case 4:He(r);break;case 5:var o=r.left.expression;if(e.isInJSFile(r)&&e.isIdentifier(o)){var s=d(m,o.escapedText);if(e.isThisInitializedDeclaration(null==s?void 0:s.valueDeclaration)){He(r);break}}!function(r){var n,i=et(r.left.expression,p)||et(r.left.expression,m);if(!e.isInJSFile(r)&&!e.isFunctionSymbol(i))return;var a=e.getLeftmostAccessExpression(r.left);if(e.isIdentifier(a)&&2097152&(null===(n=d(p,a.escapedText))||void 0===n?void 0:n.flags))return;if(e.setParent(r.left,r),e.setParent(r.right,r),e.isIdentifier(r.left.expression)&&p===t&&u(t,r.left.expression))Je(r);else if(e.hasDynamicName(r)){Ae(r,67108868,"__computed"),We(r,Ye(i,r.left.expression,Qe(r.left),!1,!1))}else $e(e.cast(r.left,e.isBindableStaticNameExpression))}(r);break;case 0:break;default:e.Debug.fail("Unknown binary expression special property assignment kind")}return function(t){A&&e.isLeftHandSideExpression(t.left)&&e.isAssignmentOperator(t.operatorToken.kind)&&Ie(t,t.left)}(r);case 290:return function(e){A&&e.variableDeclaration&&Ie(e,e.variableDeclaration.name)}(r);case 212:return function(r){if(A&&78===r.expression.kind){var n=e.getErrorSpanForNode(t,r.expression);t.bindDiagnostics.push(e.createFileDiagnostic(t,n.start,n.length,e.Diagnostics.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}(r);case 8:return function(r){A&&32&r.numericLiteralFlags&&t.bindDiagnostics.push(M(r,e.Diagnostics.Octal_literals_are_not_allowed_in_strict_mode))}(r);case 217:return function(e){A&&Ie(e,e.operand)}(r);case 216:return function(e){A&&(45!==e.operator&&46!==e.operator||Ie(e,e.operand))}(r);case 245:return function(t){A&&Re(t,e.Diagnostics.with_statements_are_not_allowed_in_strict_mode)}(r);case 247:return function(t){A&&n.target>=2&&(e.isDeclarationStatement(t.statement)||e.isVariableStatement(t.statement))&&Re(t.label,e.Diagnostics.A_label_is_not_allowed_here)}(r);case 188:return void(h=!0);case 173:break;case 160:return function(t){if(e.isJSDocTemplateTag(t.parent)){var r=e.find(t.parent.parent.tags,e.isJSDocTypeAlias)||e.getHostSignatureFromJSDoc(t.parent);r?(r.locals||(r.locals=e.createSymbolTable()),U(r.locals,void 0,t,262144,526824)):we(t,262144,526824)}else if(186===t.parent.kind){var n=function(t){var r=e.findAncestor(t,(function(t){return t.parent&&e.isConditionalTypeNode(t.parent)&&t.parent.extendsType===t}));return r&&r.parent}(t.parent);n?(n.locals||(n.locals=e.createSymbolTable()),U(n.locals,void 0,t,262144,526824)):Ae(t,262144,B(t))}else we(t,262144,526824)}(r);case 161:return nt(r);case 251:return rt(r);case 199:return r.flowNode=y,rt(r);case 164:case 163:return function(e){return it(e,4|(e.questionToken?16777216:0),0)}(r);case 291:case 292:return it(r,4,0);case 294:return it(r,8,900095);case 170:case 171:case 172:return we(r,131072,0);case 166:case 165:return it(r,8192|(r.questionToken?16777216:0),e.isObjectLiteralMethod(r)?0:103359);case 253:return function(r){t.isDeclarationFile||8388608&r.flags||e.isAsyncFunction(r)&&(C|=2048);Fe(r),A?(Oe(r),Ne(r,16,110991)):we(r,16,110991)}(r);case 167:return we(r,16384,0);case 168:return it(r,32768,46015);case 169:return it(r,65536,78783);case 175:case 311:case 316:case 176:return function(t){var r=L(131072,B(t));j(r,t,131072);var n=L(2048,"__type");j(n,t,2048),n.members=e.createSymbolTable(),n.members.set(r.escapedName,r)}(r);case 178:case 315:case 191:return function(e){return Ae(e,2048,"__type")}(r);case 322:return function(t){H(t);var r=e.getHostSignatureFromJSDoc(t);r&&166!==r.kind&&j(r.symbol,r,32)}(r);case 201:return function(r){var n;if(function(e){e[e.Property=1]="Property",e[e.Accessor=2]="Accessor"}(n||(n={})),A&&!e.isAssignmentTarget(r))for(var i=new e.Map,a=0,o=r.properties;a<o.length;a++){var s=o[a];if(293!==s.kind&&78===s.name.kind){var c=s.name,l=291===s.kind||292===s.kind||166===s.kind?1:2,u=i.get(c.escapedText);if(u){if(1===l&&1===u){var d=e.getErrorSpanForNode(t,c);t.bindDiagnostics.push(e.createFileDiagnostic(t,d.start,d.length,e.Diagnostics.An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode))}}else i.set(c.escapedText,l)}}return Ae(r,4096,"__object")}(r);case 209:case 210:return function(r){t.isDeclarationFile||8388608&r.flags||e.isAsyncFunction(r)&&(C|=2048);y&&(r.flowNode=y);Fe(r);var n=r.name?r.name.escapedText:"__function";return Ae(r,16,n)}(r);case 204:switch(e.getAssignmentDeclarationKind(r)){case 7:return function(e){var t=et(e.arguments[0]),r=300===e.parent.parent.kind;t=Ye(t,e.arguments[0],r,!1,!1),Xe(e,t,!1)}(r);case 8:return function(e){if(!qe(e))return;var t=tt(e.arguments[0],void 0,(function(e,t){return t&&j(t,e,67110400),t}));if(t){var r=1048580;U(t.exports,t,e,r,0)}}(r);case 9:return function(e){var t=et(e.arguments[0].expression);t&&t.valueDeclaration&&j(t,t.valueDeclaration,32);Xe(e,t,!0)}(r);case 0:break;default:return e.Debug.fail("Unknown call expression assignment declaration kind")}e.isInJSFile(r)&&function(r){!t.commonJsModuleIndicator&&e.isRequireCall(r,!1)&&qe(r)}(r);break;case 223:case 254:case 255:return A=!0,function(r){if(254===r.kind||255===r.kind)Ne(r,32,899503);else{Ae(r,32,r.name?r.name.escapedText:"__class"),r.name&&P.add(r.name.escapedText)}var n=r.symbol,i=L(4194308,"prototype"),a=n.exports.get(i.escapedName);a&&(r.name&&e.setParent(r.name,r),t.bindDiagnostics.push(M(a.declarations[0],e.Diagnostics.Duplicate_identifier_0,e.symbolName(i))));n.exports.set(i.escapedName,i),i.parent=n}(r);case 256:return Ne(r,64,788872);case 257:return Ne(r,524288,788968);case 258:return function(t){return e.isEnumConst(t)?Ne(t,128,899967):Ne(t,256,899327)}(r);case 259:return function(r){if(Te(r),e.isAmbientModule(r))if(e.hasSyntacticModifier(r,1)&&Re(r,e.Diagnostics.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),e.isModuleAugmentationExternal(r))Ce(r);else{var n=void 0;if(10===r.name.kind){var i=r.name.text;e.hasZeroOrOneAsteriskCharacter(i)?n=e.tryParsePattern(i):Re(r.name,e.Diagnostics.Pattern_0_can_have_at_most_one_Asterisk_character,i)}var a=we(r,512,110735);t.patternAmbientModules=e.append(t.patternAmbientModules,n&&{pattern:n,symbol:a})}else{var o=Ce(r);0!==o&&((a=r.symbol).constEnumOnlyModule=!(304&a.flags)&&2===o&&!1!==a.constEnumOnlyModule)}}(r);case 284:return function(e){return Ae(e,4096,"__jsxAttributes")}(r);case 283:return function(e,t,r){return we(e,t,r)}(r,4,0);case 263:case 266:case 268:case 273:return we(r,2097152,2097152);case 262:return function(r){r.modifiers&&r.modifiers.length&&t.bindDiagnostics.push(M(r,e.Diagnostics.Modifiers_cannot_appear_here));var n=e.isSourceFile(r.parent)?e.isExternalModule(r.parent)?r.parent.isDeclarationFile?void 0:e.Diagnostics.Global_module_exports_may_only_appear_in_declaration_files:e.Diagnostics.Global_module_exports_may_only_appear_in_module_files:e.Diagnostics.Global_module_exports_may_only_appear_at_top_level;n?t.bindDiagnostics.push(M(r,n)):(t.symbol.globalExports=t.symbol.globalExports||e.createSymbolTable(),U(t.symbol.globalExports,t.symbol,r,2097152,2097152))}(r);case 265:return function(e){e.name&&we(e,2097152,2097152)}(r);case 270:return function(t){p.symbol&&p.symbol.exports?t.exportClause?e.isNamespaceExport(t.exportClause)&&(e.setParent(t.exportClause,t),U(p.symbol.exports,p.symbol,t.exportClause,2097152,2097152)):U(p.symbol.exports,p.symbol,t,8388608,0):Ae(t,8388608,B(t))}(r);case 269:return function(t){if(p.symbol&&p.symbol.exports){var r=e.exportAssignmentIsAlias(t)?2097152:4,n=U(p.symbol.exports,p.symbol,t,r,67108863);t.isExportEquals&&e.setValueDeclaration(n,t)}else Ae(t,2097152,B(t))}(r);case 300:return Be(r.statements),function(){if(Te(t),e.isExternalModule(t))Ue();else if(e.isJsonSourceFile(t)){Ue();var r=t.symbol;U(t.symbol.exports,t.symbol,t,4,67108863),t.symbol=r}}();case 232:if(!e.isFunctionLike(r.parent))return;case 260:return Be(r.statements);case 329:if(316===r.parent.kind)return nt(r);if(315!==r.parent.kind)break;case 336:var l=r;return we(l,l.isBracketed||l.typeExpression&&310===l.typeExpression.type.kind?16777220:4,0);case 334:case 327:case 328:return(_||(_=[])).push(r)}}function Ue(){Ae(t,512,'"'+e.removeFileExtension(t.fileName)+'"')}function qe(e){return!t.externalModuleIndicator&&(t.commonJsModuleIndicator||(t.commonJsModuleIndicator=e,Ue()),!0)}function Je(t){if(qe(t)){var r=tt(t.left.expression,void 0,(function(e,t){return t&&j(t,e,67110400),t}));if(r){var n=e.isAliasableExpression(t.right)&&(e.isExportsIdentifier(t.left.expression)||e.isModuleExportsAccessExpression(t.left.expression))?2097152:1048580;e.setParent(t.left,t),U(r.exports,r,t.left,n,0)}}}function Ve(e){U(t.symbol.exports,t.symbol,e,69206016,0)}function He(t){if(e.Debug.assert(e.isInJSFile(t)),!(e.isBinaryExpression(t)&&e.isPropertyAccessExpression(t.left)&&e.isPrivateIdentifier(t.left.name)||e.isPropertyAccessExpression(t)&&e.isPrivateIdentifier(t.name))){var r=e.getThisContainer(t,!1);switch(r.kind){case 253:case 209:var n=r.symbol;if(e.isBinaryExpression(r.parent)&&62===r.parent.operatorToken.kind){var i=r.parent.left;e.isBindableStaticAccessExpression(i)&&e.isPrototypeAccess(i.expression)&&(n=et(i.expression.expression,f))}n&&n.valueDeclaration&&(n.members=n.members||e.createSymbolTable(),e.hasDynamicName(t)?Ke(t,n):U(n.members,n,t,67108868,0),j(n,n.valueDeclaration,32));break;case 167:case 164:case 166:case 168:case 169:var a=r.parent,o=e.hasSyntacticModifier(r,32)?a.symbol.exports:a.symbol.members;e.hasDynamicName(t)?Ke(t,a.symbol):U(o,a.symbol,t,67108868,0,!0);break;case 300:if(e.hasDynamicName(t))break;r.commonJsModuleIndicator?U(r.symbol.exports,r.symbol,t,1048580,0):we(t,1,111550);break;default:e.Debug.failBadSyntaxKind(r)}}}function Ke(e,t){Ae(e,4,"__computed"),We(e,t)}function We(t,r){r&&(r.assignmentDeclarationMembers||(r.assignmentDeclarationMembers=new e.Map)).set(e.getNodeId(t),t)}function Ge(t,r){var n=t.expression,i=n.expression;e.setParent(i,n),e.setParent(n,t),e.setParent(t,r),Ze(i,t,!0,!0)}function $e(t){e.Debug.assert(!e.isIdentifier(t)),e.setParent(t.expression,t),Ze(t.expression,t,!1,!1)}function Ye(r,n,i,a,o){if(2097152&(null==r?void 0:r.flags))return r;if(i&&!a){var s=67110400;r=tt(n,r,(function(r,n,i){return n?(j(n,r,s),n):U(i?i.exports:t.jsGlobalAugmentations||(t.jsGlobalAugmentations=e.createSymbolTable()),i,r,s,110735)}))}return o&&r&&r.valueDeclaration&&j(r,r.valueDeclaration,32),r}function Xe(t,r,n){if(r&&function(t){if(1072&t.flags)return!0;var r=t.valueDeclaration;if(r&&e.isCallExpression(r))return!!e.getAssignedExpandoInitializer(r);var n=r?e.isVariableDeclaration(r)?r.initializer:e.isBinaryExpression(r)?r.right:e.isPropertyAccessExpression(r)&&e.isBinaryExpression(r.parent)?r.parent.right:void 0:void 0;if(n=n&&e.getRightMostAssignedExpression(n)){var i=e.isPrototypeAccess(e.isVariableDeclaration(r)?r.name:e.isBinaryExpression(r)?r.left:r);return!!e.getExpandoInitializer(!e.isBinaryExpression(n)||56!==n.operatorToken.kind&&60!==n.operatorToken.kind?n:n.right,i)}return!1}(r)){var i=n?r.members||(r.members=e.createSymbolTable()):r.exports||(r.exports=e.createSymbolTable()),a=0,o=0;e.isFunctionLikeDeclaration(e.getAssignedExpandoInitializer(t))?(a=8192,o=103359):e.isCallExpression(t)&&e.isBindableObjectDefinePropertyCall(t)&&(e.some(t.arguments[2].properties,(function(t){var r=e.getNameOfDeclaration(t);return!!r&&e.isIdentifier(r)&&"set"===e.idText(r)}))&&(a|=65540,o|=78783),e.some(t.arguments[2].properties,(function(t){var r=e.getNameOfDeclaration(t);return!!r&&e.isIdentifier(r)&&"get"===e.idText(r)}))&&(a|=32772,o|=46015)),0===a&&(a=4,o=0),U(i,r,t,67108864|a,-67108865&o)}}function Qe(t){return e.isBinaryExpression(t.parent)?300===function(t){for(;e.isBinaryExpression(t.parent);)t=t.parent;return t.parent}(t.parent).parent.kind:300===t.parent.parent.kind}function Ze(e,t,r,n){var i=et(e,p)||et(e,m),a=Qe(t);Xe(t,i=Ye(i,t.expression,a,r,n),r)}function et(t,r){if(void 0===r&&(r=p),e.isIdentifier(t))return d(r,t.escapedText);var n=et(t.expression);return n&&n.exports&&n.exports.get(e.getElementOrPropertyAccessName(t))}function tt(r,n,i){if(u(t,r))return t.symbol;if(e.isIdentifier(r))return i(r,et(r),n);var a=tt(r.expression,n,i),o=e.getNameOrArgument(r);return e.isPrivateIdentifier(o)&&e.Debug.fail("unexpected PrivateIdentifier"),i(o,a&&a.exports&&a.exports.get(e.getElementOrPropertyAccessName(r)),a)}function rt(t){A&&Ie(t,t.name),e.isBindingPattern(t.name)||(e.isInJSFile(t)&&e.isRequireVariableDeclaration(t,!0)&&!e.getJSDocTypeTag(t)?we(t,2097152,2097152):e.isBlockOrCatchScoped(t)?Ne(t,2,111551):e.isParameterDeclaration(t)?we(t,1,111551):we(t,1,111550))}function nt(t){if((329!==t.kind||316===p.kind)&&(!A||8388608&t.flags||Ie(t,t.name),e.isBindingPattern(t.name)?Ae(t,1,"__"+t.parent.parameters.indexOf(t)):we(t,1,111551),e.isParameterPropertyDeclaration(t,t.parent))){var r=t.parent.parent;U(r.symbol.members,r.symbol,t,4|(t.questionToken?16777216:0),0)}}function it(r,n,i){return t.isDeclarationFile||8388608&r.flags||!e.isAsyncFunction(r)||(C|=2048),y&&e.isObjectLiteralOrClassExpressionMethod(r)&&(r.flowNode=y),e.hasDynamicName(r)?Ae(r,n,"__computed"):we(r,n,i)}}();function l(t){return!(e.isFunctionDeclaration(t)||function(t){switch(t.kind){case 256:case 257:return!0;case 259:return 1!==r(t);case 258:return e.hasSyntacticModifier(t,2048);default:return!1}}(t)||e.isEnumDeclaration(t)||e.isVariableStatement(t)&&!(3&e.getCombinedNodeFlags(t))&&t.declarationList.declarations.some((function(e){return!e.initializer})))}function u(t,r){for(var n=0,i=[r];i.length&&n<100;){if(n++,r=i.shift(),e.isExportsIdentifier(r)||e.isModuleExportsAccessExpression(r))return!0;if(e.isIdentifier(r)){var a=d(t,r.escapedText);if(a&&a.valueDeclaration&&e.isVariableDeclaration(a.valueDeclaration)&&a.valueDeclaration.initializer){var o=a.valueDeclaration.initializer;i.push(o),e.isAssignmentExpression(o,!0)&&(i.push(o.left),i.push(o.right))}}}return!1}function d(t,r){var n=t.locals&&t.locals.get(r);return n?n.exportSymbol||n:e.isSourceFile(t)&&t.jsGlobalAugmentations&&t.jsGlobalAugmentations.has(r)?t.jsGlobalAugmentations.get(r):t.symbol&&t.symbol.exports&&t.symbol.exports.get(r)}e.bindSourceFile=function(t,r){null===e.tracing||void 0===e.tracing||e.tracing.push("bind","bindSourceFile",{path:t.path},!0),e.performance.mark("beforeBind"),e.perfLogger.logStartBindFile(""+t.fileName),c(t,r),e.perfLogger.logStopBindFile(),e.performance.mark("afterBind"),e.performance.measure("Bind","beforeBind","afterBind"),null===e.tracing||void 0===e.tracing||e.tracing.pop()},e.isExportsOrModuleExportsOrAlias=u}(d||(d={})),function(e){e.createGetSymbolWalker=function(t,r,n,i,a,o,s,c,l,u,d){return function(p){void 0===p&&(p=function(){return!0});var f=[],m=[];return{walkType:function(t){try{return g(t),{visitedTypes:e.getOwnValues(f),visitedSymbols:e.getOwnValues(m)}}finally{e.clear(f),e.clear(m)}},walkSymbol:function(t){try{return y(t),{visitedTypes:e.getOwnValues(f),visitedSymbols:e.getOwnValues(m)}}finally{e.clear(f),e.clear(m)}}};function g(t){if(t&&(!f[t.id]&&(f[t.id]=t,!y(t.symbol)))){if(524288&t.flags){var r=t,n=r.objectFlags;4&n&&function(t){g(t.target),e.forEach(d(t),g)}(t),32&n&&function(e){g(e.typeParameter),g(e.constraintType),g(e.templateType),g(e.modifiersType)}(t),3&n&&(h(a=t),e.forEach(a.typeParameters,g),e.forEach(i(a),g),g(a.thisType)),24&n&&h(r)}var a;262144&t.flags&&function(e){g(l(e))}(t),3145728&t.flags&&function(t){e.forEach(t.types,g)}(t),4194304&t.flags&&function(e){g(e.type)}(t),8388608&t.flags&&function(e){g(e.objectType),g(e.indexType),g(e.constraint)}(t)}}function _(i){var a=r(i);a&&g(a.type),e.forEach(i.typeParameters,g);for(var o=0,s=i.parameters;o<s.length;o++){y(s[o])}g(t(i)),g(n(i))}function h(e){g(c(e,0)),g(c(e,1));for(var t=a(e),r=0,n=t.callSignatures;r<n.length;r++){_(n[r])}for(var i=0,o=t.constructSignatures;i<o.length;i++){_(o[i])}for(var s=0,l=t.properties;s<l.length;s++){y(l[s])}}function y(t){if(!t)return!1;var r=e.getSymbolId(t);return!m[r]&&(m[r]=t,!p(t)||(g(o(t)),t.exports&&t.exports.forEach(y),e.forEach(t.declarations,(function(e){if(e.type&&177===e.type.kind){var t=e.type;y(s(u(t.exprName)))}})),!1))}}}}(d||(d={})),function(e){var t,r,n,o,c=/^".+"$/,l="(anonymous)",u=1,d=1,p=1,f=1;!function(e){e[e.AllowsSyncIterablesFlag=1]="AllowsSyncIterablesFlag",e[e.AllowsAsyncIterablesFlag=2]="AllowsAsyncIterablesFlag",e[e.AllowsStringInputFlag=4]="AllowsStringInputFlag",e[e.ForOfFlag=8]="ForOfFlag",e[e.YieldStarFlag=16]="YieldStarFlag",e[e.SpreadFlag=32]="SpreadFlag",e[e.DestructuringFlag=64]="DestructuringFlag",e[e.PossiblyOutOfBounds=128]="PossiblyOutOfBounds",e[e.Element=1]="Element",e[e.Spread=33]="Spread",e[e.Destructuring=65]="Destructuring",e[e.ForOf=13]="ForOf",e[e.ForAwaitOf=15]="ForAwaitOf",e[e.YieldStar=17]="YieldStar",e[e.AsyncYieldStar=19]="AsyncYieldStar",e[e.GeneratorReturnType=1]="GeneratorReturnType",e[e.AsyncGeneratorReturnType=2]="AsyncGeneratorReturnType"}(t||(t={})),function(e){e[e.Yield=0]="Yield",e[e.Return=1]="Return",e[e.Next=2]="Next"}(r||(r={})),function(e){e[e.Normal=0]="Normal",e[e.FunctionReturn=1]="FunctionReturn",e[e.GeneratorNext=2]="GeneratorNext",e[e.GeneratorYield=3]="GeneratorYield"}(n||(n={})),function(e){e[e.None=0]="None",e[e.TypeofEQString=1]="TypeofEQString",e[e.TypeofEQNumber=2]="TypeofEQNumber",e[e.TypeofEQBigInt=4]="TypeofEQBigInt",e[e.TypeofEQBoolean=8]="TypeofEQBoolean",e[e.TypeofEQSymbol=16]="TypeofEQSymbol",e[e.TypeofEQObject=32]="TypeofEQObject",e[e.TypeofEQFunction=64]="TypeofEQFunction",e[e.TypeofEQHostObject=128]="TypeofEQHostObject",e[e.TypeofNEString=256]="TypeofNEString",e[e.TypeofNENumber=512]="TypeofNENumber",e[e.TypeofNEBigInt=1024]="TypeofNEBigInt",e[e.TypeofNEBoolean=2048]="TypeofNEBoolean",e[e.TypeofNESymbol=4096]="TypeofNESymbol",e[e.TypeofNEObject=8192]="TypeofNEObject",e[e.TypeofNEFunction=16384]="TypeofNEFunction",e[e.TypeofNEHostObject=32768]="TypeofNEHostObject",e[e.EQUndefined=65536]="EQUndefined",e[e.EQNull=131072]="EQNull",e[e.EQUndefinedOrNull=262144]="EQUndefinedOrNull",e[e.NEUndefined=524288]="NEUndefined",e[e.NENull=1048576]="NENull",e[e.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",e[e.Truthy=4194304]="Truthy",e[e.Falsy=8388608]="Falsy",e[e.All=16777215]="All",e[e.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",e[e.BaseStringFacts=12582401]="BaseStringFacts",e[e.StringStrictFacts=16317953]="StringStrictFacts",e[e.StringFacts=16776705]="StringFacts",e[e.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",e[e.EmptyStringFacts=12582401]="EmptyStringFacts",e[e.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",e[e.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",e[e.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",e[e.BaseNumberFacts=12582146]="BaseNumberFacts",e[e.NumberStrictFacts=16317698]="NumberStrictFacts",e[e.NumberFacts=16776450]="NumberFacts",e[e.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",e[e.ZeroNumberFacts=12582146]="ZeroNumberFacts",e[e.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",e[e.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",e[e.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",e[e.BaseBigIntFacts=12581636]="BaseBigIntFacts",e[e.BigIntStrictFacts=16317188]="BigIntStrictFacts",e[e.BigIntFacts=16775940]="BigIntFacts",e[e.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",e[e.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",e[e.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",e[e.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",e[e.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",e[e.BaseBooleanFacts=12580616]="BaseBooleanFacts",e[e.BooleanStrictFacts=16316168]="BooleanStrictFacts",e[e.BooleanFacts=16774920]="BooleanFacts",e[e.FalseStrictFacts=12121864]="FalseStrictFacts",e[e.FalseFacts=12580616]="FalseFacts",e[e.TrueStrictFacts=7927560]="TrueStrictFacts",e[e.TrueFacts=16774920]="TrueFacts",e[e.SymbolStrictFacts=7925520]="SymbolStrictFacts",e[e.SymbolFacts=16772880]="SymbolFacts",e[e.ObjectStrictFacts=7888800]="ObjectStrictFacts",e[e.ObjectFacts=16736160]="ObjectFacts",e[e.FunctionStrictFacts=7880640]="FunctionStrictFacts",e[e.FunctionFacts=16728e3]="FunctionFacts",e[e.UndefinedFacts=9830144]="UndefinedFacts",e[e.NullFacts=9363232]="NullFacts",e[e.EmptyObjectStrictFacts=16318463]="EmptyObjectStrictFacts",e[e.AllTypeofNE=556800]="AllTypeofNE",e[e.EmptyObjectFacts=16777215]="EmptyObjectFacts"}(o||(o={}));var m,g,_,h,y,v,b,k,x,E=new e.Map(e.getEntries({string:1,number:2,bigint:4,boolean:8,symbol:16,undefined:65536,object:32,function:64})),S=new e.Map(e.getEntries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384}));!function(e){e[e.Type=0]="Type",e[e.ResolvedBaseConstructorType=1]="ResolvedBaseConstructorType",e[e.DeclaredType=2]="DeclaredType",e[e.ResolvedReturnType=3]="ResolvedReturnType",e[e.ImmediateBaseConstraint=4]="ImmediateBaseConstraint",e[e.EnumTagType=5]="EnumTagType",e[e.ResolvedTypeArguments=6]="ResolvedTypeArguments",e[e.ResolvedBaseTypes=7]="ResolvedBaseTypes"}(m||(m={})),function(e){e[e.Normal=0]="Normal",e[e.Contextual=1]="Contextual",e[e.Inferential=2]="Inferential",e[e.SkipContextSensitive=4]="SkipContextSensitive",e[e.SkipGenericFunctions=8]="SkipGenericFunctions",e[e.IsForSignatureHelp=16]="IsForSignatureHelp",e[e.SkipEtsComponentBody=32]="SkipEtsComponentBody"}(g||(g={})),function(e){e[e.None=0]="None",e[e.NoIndexSignatures=1]="NoIndexSignatures",e[e.Writing=2]="Writing",e[e.CacheSymbol=4]="CacheSymbol",e[e.NoTupleBoundsCheck=8]="NoTupleBoundsCheck",e[e.ExpressionPosition=16]="ExpressionPosition"}(_||(_={})),function(e){e[e.BivariantCallback=1]="BivariantCallback",e[e.StrictCallback=2]="StrictCallback",e[e.IgnoreReturnTypes=4]="IgnoreReturnTypes",e[e.StrictArity=8]="StrictArity",e[e.Callback=3]="Callback"}(h||(h={})),function(e){e[e.None=0]="None",e[e.Source=1]="Source",e[e.Target=2]="Target",e[e.PropertyCheck=4]="PropertyCheck",e[e.UnionIntersectionCheck=8]="UnionIntersectionCheck",e[e.InPropertyCheck=16]="InPropertyCheck"}(y||(y={})),function(e){e[e.IncludeReadonly=1]="IncludeReadonly",e[e.ExcludeReadonly=2]="ExcludeReadonly",e[e.IncludeOptional=4]="IncludeOptional",e[e.ExcludeOptional=8]="ExcludeOptional"}(v||(v={})),function(e){e[e.None=0]="None",e[e.Source=1]="Source",e[e.Target=2]="Target",e[e.Both=3]="Both"}(b||(b={})),function(e){e.resolvedExports="resolvedExports",e.resolvedMembers="resolvedMembers"}(k||(k={})),function(e){e[e.Local=0]="Local",e[e.Parameter=1]="Parameter"}(x||(x={}));var D,w,T,C,A=e.and(L,(function(t){return!e.isAccessor(t)}));!function(e){e[e.GetAccessor=1]="GetAccessor",e[e.SetAccessor=2]="SetAccessor",e[e.PropertyAssignment=4]="PropertyAssignment",e[e.Method=8]="Method",e[e.GetOrSetAccessor=3]="GetOrSetAccessor",e[e.PropertyAssignmentOrMethod=12]="PropertyAssignmentOrMethod"}(D||(D={})),function(e){e[e.None=0]="None",e[e.ExportValue=1]="ExportValue",e[e.ExportType=2]="ExportType",e[e.ExportNamespace=4]="ExportNamespace"}(w||(w={})),function(e){e[e.None=0]="None",e[e.StrongArityForUntypedJS=1]="StrongArityForUntypedJS",e[e.VoidIsNonOptional=2]="VoidIsNonOptional"}(T||(T={})),function(e){e[e.Uppercase=0]="Uppercase",e[e.Lowercase=1]="Lowercase",e[e.Capitalize=2]="Capitalize",e[e.Uncapitalize=3]="Uncapitalize"}(C||(C={}));var N,P=new e.Map(e.getEntries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3}));function I(){}function F(){this.flags=0}function O(e){return e.id||(e.id=d,d++),e.id}function R(e){return e.id||(e.id=u,u++),e.id}function M(t,r){var n=e.getModuleInstanceState(t);return 1===n||r&&2===n}function L(e){return 253!==e.kind&&166!==e.kind||!!e.body}function j(t){switch(t.parent.kind){case 268:case 273:return e.isIdentifier(t);default:return e.isDeclarationName(t)}}function B(e){switch(e.kind){case 265:case 263:case 266:case 268:return!0;case 78:return 268===e.parent.kind;default:return!1}}function z(e){switch(e){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function U(e){return!!(1&e.flags)}function q(e){return!!(2&e.flags)}e.getNodeId=O,e.getSymbolId=R,e.isInstantiatedModule=M,e.createTypeChecker=function(t,r){var n,o,u,d,m=e.memoize((function(){var r=new e.Set;return t.getSourceFiles().forEach((function(t){t.resolvedModules&&e.forEachEntry(t.resolvedModules,(function(e){e&&e.packageId&&r.add(e.packageId.name)}))})),r})),g=e.objectAllocator.getSymbolConstructor(),_=e.objectAllocator.getTypeConstructor(),h=e.objectAllocator.getSignatureConstructor(),y=0,v=0,b=0,k=0,x=0,D=0,w=[],T=e.createSymbolTable(),C=[1],J=t.getCompilerOptions(),V=e.getEmitScriptTarget(J),H=e.getEmitModuleKind(J),K=e.getAllowSyntheticDefaultImports(J),W=e.getStrictOptionValue(J,"strictNullChecks"),G=e.getStrictOptionValue(J,"strictFunctionTypes"),$=e.getStrictOptionValue(J,"strictBindCallApply"),Y=e.getStrictOptionValue(J,"strictPropertyInitialization"),X=e.getStrictOptionValue(J,"noImplicitAny"),Q=e.getStrictOptionValue(J,"noImplicitThis"),Z=!!J.keyofStringsOnly,ee=J.suppressExcessPropertyErrors?0:32768,te=function(){var r,n=t.getResolvedTypeReferenceDirectives();n&&(r=new e.Map,n.forEach((function(e,r){if(e&&e.resolvedFileName){var n=t.getSourceFile(e.resolvedFileName);n&&a(n,r)}})));return{getReferencedExportContainer:oE,getReferencedImportDeclaration:sE,getReferencedDeclarationWithCollidingName:lE,isDeclarationWithCollidingName:uE,isValueAliasDeclaration:function(t){var r=e.getParseTreeNode(t);return!r||dE(r)},hasGlobalName:NE,isReferencedAliasDeclaration:function(t,r){var n=e.getParseTreeNode(t);return!n||gE(n,r)},isReferenced:function(t){var r=e.getParseTreeNode(t);return!!r&&function(e){var t=Ai(e);return!!(null==t?void 0:t.isReferenced)}(r)},getNodeCheckFlags:function(t){var r=e.getParseTreeNode(t);return r?kE(r):0},isTopLevelValueImportEqualsWithEntityName:pE,isDeclarationVisible:Ea,isImplementationOfOverload:_E,isRequiredInitializedParameter:hE,isOptionalUninitializedParameterProperty:yE,isExpandoFunctionDeclaration:vE,getPropertiesOfContainerFunction:bE,createTypeOfDeclaration:TE,createReturnTypeOfSignatureDeclaration:CE,createTypeOfExpression:AE,createLiteralConstValue:OE,isSymbolAccessible:ra,isEntityNameVisible:ca,getConstantValue:function(t){var r=e.getParseTreeNode(t,EE);return r?SE(r):void 0},collectLinkedAliases:Sa,getReferencedValueDeclaration:IE,getTypeReferenceSerializationKind:wE,isOptionalParameter:Tc,moduleExportsSomeValue:aE,isArgumentsLocalBinding:iE,getExternalModuleFileFromDeclaration:function(t){var r=e.getParseTreeNode(t,e.hasPossibleExternalModuleReference);return r&&LE(r)},getTypeReferenceDirectivesForEntityName:function(e){if(!r)return;var t=790504;(78===e.kind&&Nm(e)||202===e.kind&&!function(e){return e.parent&&225===e.parent.kind&&e.parent.parent&&289===e.parent.parent.kind}(e))&&(t=1160127);var n=fi(e,t,!0);return n&&n!==ke?i(n,t):void 0},getTypeReferenceDirectivesForSymbol:i,isLiteralConstDeclaration:FE,isLateBound:function(t){var r=e.getParseTreeNode(t,e.isDeclaration),n=r&&Ai(r);return!!(n&&4096&e.getCheckFlags(n))},getJsxFactoryEntity:RE,getJsxFragmentFactoryEntity:ME,getAllAccessorDeclarations:function(t){var r=169===(t=e.getParseTreeNode(t,e.isGetOrSetAccessorDeclaration)).kind?168:169,n=e.getDeclarationOfKind(Ai(t),r);return{firstAccessor:n&&n.pos<t.pos?n:t,secondAccessor:n&&n.pos<t.pos?t:n,setAccessor:169===t.kind?t:n,getAccessor:168===t.kind?t:n}},getSymbolOfExternalModuleSpecifier:function(e){return _i(e,e,void 0)},isBindingCapturedByNode:function(t,r){var n=e.getParseTreeNode(t),i=e.getParseTreeNode(r);return!!n&&!!i&&(e.isVariableDeclaration(i)||e.isBindingElement(i))&&function(t,r){var n=Cn(t);return!!n&&e.contains(n.capturedBlockScopeBindings,Ai(r))}(n,i)},getDeclarationStatementsForSourceFile:function(t,r,n,i){var a=e.getParseTreeNode(t);e.Debug.assert(a&&300===a.kind,"Non-sourcefile node passed into getDeclarationsForSourceFile");var o=Ai(t);return o?o.exports?re.symbolTableToDeclarationStatements(o.exports,t,r,n,i):[]:t.locals?re.symbolTableToDeclarationStatements(t.locals,t,r,n,i):[]},isImportRequiredByAugmentation:function(t){var r=e.getSourceFileOfNode(t);if(!r.symbol)return!1;var n=LE(t);if(!n)return!1;if(n===r)return!1;for(var i=Di(r.symbol),a=0,o=e.arrayFrom(i.values());a<o.length;a++){var s=o[a];if(s.mergeId)for(var c=0,l=Ci(s).declarations;c<l.length;c++){var u=l[c];if(e.getSourceFileOfNode(u)===n)return!0}}return!1}};function i(t,n){if(r&&function(t){if(!t.declarations)return!1;var n=t;for(;;){var i=Ni(n);if(!i)break;n=i}if(n.valueDeclaration&&300===n.valueDeclaration.kind&&512&n.flags)return!1;for(var a=0,o=t.declarations;a<o.length;a++){var s=o[a],c=e.getSourceFileOfNode(s);if(r.has(c.path))return!0}return!1}(t)){for(var i,a=0,o=t.declarations;a<o.length;a++){var s=o[a];if(s.symbol&&s.symbol.flags&n){var c=e.getSourceFileOfNode(s),l=r.get(c.path);if(!l)return;(i||(i=[])).push(l)}}return i}}function a(n,i){if(!r.has(n.path)){r.set(n.path,i);for(var o=0,s=n.referencedFiles;o<s.length;o++){var c=s[o].fileName,l=e.resolveTripleslashReference(c,n.fileName),u=t.getSourceFile(l);u&&a(u,i)}}}}(),re=function(){return{typeToTypeNode:function(e,t,n,i){return r(t,n,i,(function(t){return s(e,t)}))},indexInfoToIndexSignatureDeclaration:function(e,t,n,i,a){return r(n,i,a,(function(r){return p(e,t,r,void 0)}))},signatureToSignatureDeclaration:function(e,t,n,i,a){return r(n,i,a,(function(r){return f(e,t,r)}))},symbolToEntityName:function(e,t,n,i,a){return r(n,i,a,(function(r){return T(e,r,t,!1)}))},symbolToExpression:function(e,t,n,i,a){return r(n,i,a,(function(r){return C(e,r,t)}))},symbolToTypeParameterDeclarations:function(e,t,n,i){return r(t,n,i,(function(t){return b(e,t)}))},symbolToParameterDeclaration:function(e,t,n,i){return r(t,n,i,(function(t){return _(e,t)}))},typeParameterToDeclaration:function(e,t,n,i){return r(t,n,i,(function(t){return g(e,t)}))},symbolTableToDeclarationStatements:function(t,n,o,c,l){return r(n,o,c,(function(r){return function(t,r,n){var o=se(e.factory.createPropertyDeclaration,166,!0),c=se((function(t,r,n,i,a){return e.factory.createPropertySignature(r,n,i,a)}),165,!1),l=r.enclosingDeclaration,u=[],d=new e.Set,m=[],_=r;r=a(a({},_),{usedSymbolNames:new e.Set(_.usedSymbolNames),remappedSymbolNames:new e.Map,tracker:a(a({},_.tracker),{trackSymbol:function(e,t,n){if(0===ra(e,t,n,!1).accessibility){var i=v(e,r,n);4&e.flags||U(i[0])}else _.tracker&&_.tracker.trackSymbol&&_.tracker.trackSymbol(e,t,n)}})}),e.forEachEntry(t,(function(t,r){_e(t,e.unescapeLeadingUnderscores(r))}));var h=!n,y=t.get("export=");y&&t.size>1&&2097152&y.flags&&(t=e.createSymbolTable()).set("export=",y);return O(t),w(u);function b(e){return!!e&&78===e.kind}function k(t){return e.isVariableStatement(t)?e.filter(e.map(t.declarationList.declarations,e.getNameOfDeclaration),b):e.filter([e.getNameOfDeclaration(t)],b)}function x(t){var r=e.find(t,e.isExportAssignment),n=e.findIndex(t,e.isModuleDeclaration),a=-1!==n?t[n]:void 0;if(a&&r&&r.isExportEquals&&e.isIdentifier(r.expression)&&e.isIdentifier(a.name)&&e.idText(a.name)===e.idText(r.expression)&&a.body&&e.isModuleBlock(a.body)){var o=e.filter(t,(function(t){return!!(1&e.getEffectiveModifierFlags(t))})),s=a.name,c=a.body;if(e.length(o)&&(a=e.factory.updateModuleDeclaration(a,a.decorators,a.modifiers,a.name,c=e.factory.updateModuleBlock(c,e.factory.createNodeArray(i(i([],a.body.statements),[e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.map(e.flatMap(o,(function(e){return k(e)})),(function(t){return e.factory.createExportSpecifier(void 0,t)}))),void 0)])))),t=i(i(i([],t.slice(0,n)),[a]),t.slice(n+1))),!e.find(t,(function(t){return t!==a&&e.nodeHasName(t,s)}))){u=[];var l=!e.some(c.statements,(function(t){return e.hasSyntacticModifier(t,1)||e.isExportAssignment(t)||e.isExportDeclaration(t)}));e.forEach(c.statements,(function(e){H(e,l?1:0)})),t=i(i([],e.filter(t,(function(e){return e!==a&&e!==r}))),u)}}return t}function S(t){var r=e.filter(t,(function(t){return e.isExportDeclaration(t)&&!t.moduleSpecifier&&!!t.exportClause&&e.isNamedExports(t.exportClause)}));if(e.length(r)>1){var n=e.filter(t,(function(t){return!e.isExportDeclaration(t)||!!t.moduleSpecifier||!t.exportClause}));t=i(i([],n),[e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.flatMap(r,(function(t){return e.cast(t.exportClause,e.isNamedExports).elements}))),void 0)])}var a=e.filter(t,(function(t){return e.isExportDeclaration(t)&&!!t.moduleSpecifier&&!!t.exportClause&&e.isNamedExports(t.exportClause)}));if(e.length(a)>1){var o=e.group(a,(function(t){return e.isStringLiteral(t.moduleSpecifier)?">"+t.moduleSpecifier.text:">"}));if(o.length!==a.length)for(var s=function(r){r.length>1&&(t=i(i([],e.filter(t,(function(e){return-1===r.indexOf(e)}))),[e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.flatMap(r,(function(t){return e.cast(t.exportClause,e.isNamedExports).elements}))),r[0].moduleSpecifier)]))},c=0,l=o;c<l.length;c++){s(l[c])}}return t}function D(t){var r=e.findIndex(t,(function(t){return e.isExportDeclaration(t)&&!t.moduleSpecifier&&!!t.exportClause&&e.isNamedExports(t.exportClause)}));if(r>=0){var n=t[r],i=e.mapDefined(n.exportClause.elements,(function(r){if(!r.propertyName){var n=e.indicesOf(t),i=e.filter(n,(function(n){return e.nodeHasName(t[n],r.name)}));if(e.length(i)&&e.every(i,(function(e){return A(t[e])}))){for(var a=0,o=i;a<o.length;a++){var s=o[a];t[s]=N(t[s])}return}}return r}));e.length(i)?t[r]=e.factory.updateExportDeclaration(n,n.decorators,n.modifiers,n.isTypeOnly,e.factory.updateNamedExports(n.exportClause,i),n.moduleSpecifier):e.orderedRemoveItemAt(t,r)}return t}function w(t){return t=D(t=S(t=x(t))),l&&(e.isSourceFile(l)&&e.isExternalOrCommonJsModule(l)||e.isModuleDeclaration(l))&&(!e.some(t,e.isExternalModuleIndicator)||!e.hasScopeMarker(t)&&e.some(t,e.needsScopeMarker))&&t.push(e.createEmptyExports(e.factory)),t}function A(t){return e.isEnumDeclaration(t)||e.isVariableStatement(t)||e.isFunctionDeclaration(t)||e.isClassDeclaration(t)||e.isModuleDeclaration(t)&&!e.isExternalModuleAugmentation(t)&&!e.isGlobalScopeAugmentation(t)||e.isInterfaceDeclaration(t)||Vx(t)}function N(t){var r=-3&e.getEffectiveModifierFlags(t)|1;return e.factory.updateModifiers(t,r)}function I(t){var r=-2&e.getEffectiveModifierFlags(t);return e.factory.updateModifiers(t,r)}function O(t,r,n){r||m.push(new e.Map),t.forEach((function(e){M(e,!1,!!n)})),r||(m[m.length-1].forEach((function(e){M(e,!0,!!n)})),m.pop())}function M(t,n,i){var o=Ci(t);if(!d.has(R(o))&&(d.add(R(o)),!n||e.length(t.declarations)&&e.some(t.declarations,(function(t){return!!e.findAncestor(t,(function(e){return e===l}))})))){var s=r;r=function(t){var r=a({},t);r.typeParameterNames&&(r.typeParameterNames=new e.Map(r.typeParameterNames));r.typeParameterNamesByText&&(r.typeParameterNamesByText=new e.Set(r.typeParameterNamesByText));r.typeParameterSymbolList&&(r.typeParameterSymbolList=new e.Set(r.typeParameterSymbolList));return r}(r);var c=z(t,n,i);return r=s,c}}function z(t,i,a){var o=e.unescapeLeadingUnderscores(t.escapedName),s="default"===t.escapedName;if(!i||131072&r.flags||!e.isStringANonContextualKeyword(o)||s){var c=s&&!!(-113&t.flags||16&t.flags&&e.length(Hs(_o(t))))&&!(2097152&t.flags),u=!c&&!i&&e.isStringANonContextualKeyword(o)&&!s;(c||u)&&(i=!0);var d=(i?0:1)|(s&&!c?512:0),p=1536&t.flags&&7&t.flags&&"export="!==t.escapedName,f=p&&oe(_o(t),t);if((8208&t.flags||f)&&Q(_o(t),t,_e(t,o),d),524288&t.flags&&K(t,o,d),7&t.flags&&"export="!==t.escapedName&&!(4194304&t.flags)&&!(32&t.flags)&&!f)if(a){ae(t)&&(u=!1,c=!1)}else{var m=_o(t),g=_e(t,o);if(16&t.flags||!oe(m,t)){var _=2&t.flags?jg(t)?2:1:void 0,h=!c&&4&t.flags?me(g,t):g,y=t.declarations&&e.find(t.declarations,(function(t){return e.isVariableDeclaration(t)}));y&&e.isVariableDeclarationList(y.parent)&&1===y.parent.declarations.length&&(y=y.parent.parent);var v=e.find(t.declarations,e.isPropertyAccessExpression);if(v&&e.isBinaryExpression(v.parent)&&e.isIdentifier(v.parent.right)&&m.symbol&&e.isSourceFile(m.symbol.valueDeclaration)){var b=g===v.parent.right.escapedText?void 0:v.parent.right;H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(b,g)])),0),r.tracker.trackSymbol(m.symbol,r.enclosingDeclaration,111551)}else{H(e.setTextRange(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(h,void 0,L(r,m,t,l,U,n))],_)),y),h!==g?-2&d:d),h===g||i||(H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(h,g)])),0),u=!1,c=!1)}}else Q(m,t,g,d)}if(384&t.flags&&X(t,o,d),32&t.flags&&(4&t.flags&&e.isBinaryExpression(t.valueDeclaration.parent)&&e.isClassExpression(t.valueDeclaration.parent.right)?ne(t,_e(t,o),d):re(t,_e(t,o),d)),(1536&t.flags&&(!p||$(t))||f)&&Y(t,o,d),64&t.flags&&!(32&t.flags)&&W(t,o,d),2097152&t.flags&&ne(t,_e(t,o),d),4&t.flags&&"export="===t.escapedName&&ae(t),8388608&t.flags)for(var k=0,x=t.declarations;k<x.length;k++){var S=x[k],D=gi(S,S.moduleSpecifier);D&&H(e.factory.createExportDeclaration(void 0,void 0,!1,void 0,e.factory.createStringLiteral(E(D,r))),0)}c?H(e.factory.createExportAssignment(void 0,void 0,!1,e.factory.createIdentifier(_e(t,o))),0):u&&H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(_e(t,o),o)])),0)}else r.encounteredError=!0}function U(t){if(!e.some(t.declarations,e.isParameterDeclaration)){e.Debug.assertIsDefined(m[m.length-1]),me(e.unescapeLeadingUnderscores(t.escapedName),t);var r=!!(2097152&t.flags)&&!e.some(t.declarations,(function(t){return!!e.findAncestor(t,e.isExportDeclaration)||e.isNamespaceExport(t)||e.isImportEqualsDeclaration(t)&&!e.isExternalModuleReference(t.moduleReference)}));m[r?0:m.length-1].set(R(t),t)}}function q(t){return e.isSourceFile(t)&&(e.isExternalOrCommonJsModule(t)||e.isJsonSourceFile(t))||e.isAmbientModule(t)&&!e.isGlobalScopeAugmentation(t)}function H(t,n){if(e.canHaveModifiers(t)){var i=0,a=r.enclosingDeclaration&&(e.isJSDocTypeAlias(r.enclosingDeclaration)?e.getSourceFileOfNode(r.enclosingDeclaration):r.enclosingDeclaration);1&n&&a&&(q(a)||e.isModuleDeclaration(a))&&A(t)&&(i|=1),!h||1&i||a&&8388608&a.flags||!(e.isEnumDeclaration(t)||e.isVariableStatement(t)||e.isFunctionDeclaration(t)||e.isClassDeclaration(t)||e.isModuleDeclaration(t))||(i|=2),512&n&&(e.isClassDeclaration(t)||e.isInterfaceDeclaration(t)||e.isFunctionDeclaration(t))&&(i|=512),i&&(t=e.factory.updateModifiers(t,i|e.getEffectiveModifierFlags(t)))}u.push(t)}function K(t,i,a){var o=Ro(t),c=Tn(t).typeParameters,l=e.map(c,(function(e){return g(e,r)})),u=e.find(t.declarations,e.isJSDocTypeAlias),d=u?u.comment||u.parent.comment:void 0,p=r.flags;r.flags|=8388608;var f=r.enclosingDeclaration;r.enclosingDeclaration=u;var m=u&&u.typeExpression&&e.isJSDocTypeExpression(u.typeExpression)&&B(r,u.typeExpression.type,U,n)||s(o,r);H(e.setSyntheticLeadingComments(e.factory.createTypeAliasDeclaration(void 0,void 0,_e(t,i),l,m),d?[{kind:3,text:"*\n * "+d.replace(/\n/g,"\n * ")+"\n ",pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),a),r.flags=p,r.enclosingDeclaration=f}function W(t,n,a){var o=Oo(t),s=Eo(t),c=e.map(s,(function(e){return g(e,r)})),l=Po(o),u=e.length(l)?fu(l):void 0,d=e.flatMap(Hs(o),(function(e){return ce(e,u)})),p=le(0,o,u,170),f=le(1,o,u,171),m=ue(o,u),_=e.length(l)?[e.factory.createHeritageClause(94,e.mapDefined(l,(function(e){return pe(e,111551)})))]:void 0;H(e.factory.createInterfaceDeclaration(void 0,void 0,_e(t,n),c,_,i(i(i(i([],m),f),p),d)),a)}function G(t){return t.exports?e.filter(e.arrayFrom(t.exports.values()),ee):[]}function $(t){return e.every(G(t),(function(e){return!(111551&ii(e).flags)}))}function Y(t,n,i){var a=G(t),o=e.arrayToMultiMap(a,(function(e){return e.parent&&e.parent===t?"real":"merged"})),s=o.get("real")||e.emptyArray,c=o.get("merged")||e.emptyArray;e.length(s)&&Z(s,u=_e(t,n),i,!!(67108880&t.flags));if(e.length(c)){var l=e.getSourceFileOfNode(r.enclosingDeclaration),u=_e(t,n),d=e.factory.createModuleBlock([e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.mapDefined(e.filter(c,(function(e){return"export="!==e.escapedName})),(function(n){var i,a,o=e.unescapeLeadingUnderscores(n.escapedName),s=_e(n,o),c=n.declarations&&Vn(n);if(!l||(c?l===e.getSourceFileOfNode(c):e.some(n.declarations,(function(t){return e.getSourceFileOfNode(t)===l})))){var u=c&&ri(c,!0);U(u||n);var d=u?_e(u,e.unescapeLeadingUnderscores(u.escapedName)):s;return e.factory.createExportSpecifier(o===d?void 0:d,o)}null===(a=null===(i=r.tracker)||void 0===i?void 0:i.reportNonlocalAugmentation)||void 0===a||a.call(i,l,t,n)}))))]);H(e.factory.createModuleDeclaration(void 0,void 0,e.factory.createIdentifier(u),d,16),0)}}function X(t,r,n){H(e.factory.createEnumDeclaration(void 0,e.factory.createModifiersFromModifierFlags(Bv(t)?2048:0),_e(t,r),e.map(e.filter(Hs(_o(t)),(function(e){return!!(8&e.flags)})),(function(t){var r=t.declarations&&t.declarations[0]&&e.isEnumMember(t.declarations[0])?SE(t.declarations[0]):void 0;return e.factory.createEnumMember(e.unescapeLeadingUnderscores(t.escapedName),void 0===r?void 0:"string"==typeof r?e.factory.createStringLiteral(r):e.factory.createNumericLiteral(r))}))),n)}function Q(t,i,a,o){for(var s=0,c=hc(t,0);s<c.length;s++){var l=c[s],u=f(l,253,r,{name:e.factory.createIdentifier(a),privateSymbolVisitor:U,bundledImports:n});H(e.setTextRange(u,l.declaration&&e.isVariableDeclaration(l.declaration.parent)&&l.declaration.parent.parent||l.declaration),o)}1536&i.flags&&i.exports&&i.exports.size||Z(e.filter(Hs(t),ee),a,o,!0)}function Z(t,n,i,o){if(e.length(t)){var s=e.arrayToMultiMap(t,(function(t){return!e.length(t.declarations)||e.some(t.declarations,(function(t){return e.getSourceFileOfNode(t)===e.getSourceFileOfNode(r.enclosingDeclaration)}))?"local":"remote"})).get("local")||e.emptyArray,c=e.parseNodeFactory.createModuleDeclaration(void 0,void 0,e.factory.createIdentifier(n),e.factory.createModuleBlock([]),16);e.setParent(c,l),c.locals=e.createSymbolTable(t),c.symbol=t[0].parent;var d=u;u=[];var p=h;h=!1;var f=a(a({},r),{enclosingDeclaration:c}),m=r;r=f,O(e.createSymbolTable(s),o,!0),r=m,h=p;var g=u;u=d;var _=e.map(g,(function(t){return e.isExportAssignment(t)&&!t.isExportEquals&&e.isIdentifier(t.expression)?e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(t.expression,e.factory.createIdentifier("default"))])):t})),y=e.every(_,(function(t){return e.hasSyntacticModifier(t,1)}))?e.map(_,I):_;H(c=e.factory.updateModuleDeclaration(c,c.decorators,c.modifiers,c.name,e.factory.createModuleBlock(y)),i)}}function ee(t){return!!(2887656&t.flags)||!(4194304&t.flags||"prototype"===t.escapedName||t.valueDeclaration&&32&e.getEffectiveModifierFlags(t.valueDeclaration)&&e.isClassLike(t.valueDeclaration.parent))}function te(t){var i=e.mapDefined(t,(function(t){var i,a=r.enclosingDeclaration;r.enclosingDeclaration=t;var o=t.expression;if(e.isEntityNameExpression(o)){if(e.isIdentifier(o)&&""===e.idText(o))return l(void 0);var c=void 0;if(c=(i=j(o,r,U)).introducesError,o=i.node,c)return l(void 0)}return l(e.factory.createExpressionWithTypeArguments(o,e.map(t.typeArguments,(function(e){return B(r,e,U,n)||s(xd(e),r)}))));function l(e){return r.enclosingDeclaration=a,e}}));if(i.length===t.length)return i}function re(t,n,a){var s,c=e.find(t.declarations,e.isClassLike),l=r.enclosingDeclaration;r.enclosingDeclaration=c||l;var u=Eo(t),d=e.map(u,(function(e){return g(e,r)})),p=Oo(t),f=Po(p),m=c&&e.getEffectiveImplementsTypeNodes(c),_=m&&te(m)||e.mapDefined(function(t){for(var r=e.emptyArray,n=0,i=t.symbol.declarations;n<i.length;n++){var a=i[n],o=e.getEffectiveImplementsTypeNodes(a);if(o)for(var s=0,c=o;s<c.length;s++){var l=xd(c[s]);l!==we&&(r===e.emptyArray?r=[l]:r.push(l))}}return r}(p),fe),h=_o(t),y=!!(null===(s=h.symbol)||void 0===s?void 0:s.valueDeclaration)&&e.isClassLike(h.symbol.valueDeclaration),v=y?Ao(h):Ee,b=i(i([],e.length(f)?[e.factory.createHeritageClause(94,e.map(f,(function(e){return de(e,v,n)})))]:[]),e.length(_)?[e.factory.createHeritageClause(117,_)]:[]),k=function(t,r,n){if(!e.length(r))return n;var i=new e.Map;e.forEach(n,(function(e){i.set(e.escapedName,e)}));for(var a=0,o=r;a<o.length;a++)for(var s=0,c=Hs(ls(o[a],t.thisType));s<c.length;s++){var l=c[s],u=i.get(l.escapedName);u&&!Qp(u,l)&&i.delete(l.escapedName)}return e.arrayFrom(i.values())}(p,f,Hs(p)),x=e.filter(k,(function(t){var r=t.valueDeclaration;return r&&!(e.isNamedDeclaration(r)&&e.isPrivateIdentifier(r.name))})),E=e.some(k,(function(t){var r=t.valueDeclaration;return r&&e.isNamedDeclaration(r)&&e.isPrivateIdentifier(r.name)}))?[e.factory.createPropertyDeclaration(void 0,void 0,e.factory.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:e.emptyArray,S=e.flatMap(x,(function(e){return o(e,!1,f[0])})),D=e.flatMap(e.filter(Hs(h),(function(e){return!(4194304&e.flags||"prototype"===e.escapedName||ee(e))})),(function(e){return o(e,!0,v)})),w=!y&&!!t.valueDeclaration&&e.isInJSFile(t.valueDeclaration)&&!e.some(hc(h,1))?[e.factory.createConstructorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(8),[],void 0)]:le(1,h,v,167),T=ue(p,f[0]);r.enclosingDeclaration=l,H(e.setTextRange(e.factory.createClassDeclaration(void 0,void 0,n,d,b,i(i(i(i(i([],T),D),w),S),E)),t.declarations&&e.filter(t.declarations,(function(t){return e.isClassDeclaration(t)||e.isClassExpression(t)}))[0]),a)}function ne(t,n,i){var a,o,s,c,l,u=Vn(t);if(!u)return e.Debug.fail();var d=Ci(ri(u,!0));if(d){var p=e.unescapeLeadingUnderscores(d.escapedName);"export="===p&&(J.esModuleInterop||J.allowSyntheticDefaultImports)&&(p="default");var f=_e(d,p);switch(U(d),u.kind){case 199:if(251===(null===(o=null===(a=u.parent)||void 0===a?void 0:a.parent)||void 0===o?void 0:o.kind)){var m=E(d.parent||d,r),g=u.propertyName;H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamedImports([e.factory.createImportSpecifier(g&&e.isIdentifier(g)?e.factory.createIdentifier(e.idText(g)):void 0,e.factory.createIdentifier(n))])),e.factory.createStringLiteral(m)),0);break}e.Debug.failBadSyntaxKind((null===(s=u.parent)||void 0===s?void 0:s.parent)||u,"Unhandled binding element grandparent kind in declaration serialization");break;case 292:218===(null===(l=null===(c=u.parent)||void 0===c?void 0:c.parent)||void 0===l?void 0:l.kind)&&ie(e.unescapeLeadingUnderscores(t.escapedName),f);break;case 251:if(e.isPropertyAccessExpression(u.initializer)){var _=u.initializer,h=e.factory.createUniqueName(n),y=E(d.parent||d,r);H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,h,e.factory.createExternalModuleReference(e.factory.createStringLiteral(y))),0),H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,e.factory.createIdentifier(n),e.factory.createQualifiedName(h,_.name)),i);break}case 263:if("export="===d.escapedName&&e.some(d.declarations,e.isJsonSourceFile)){ae(t);break}var v=!(512&d.flags||e.isVariableDeclaration(u));H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,e.factory.createIdentifier(n),v?T(d,r,67108863,!1):e.factory.createExternalModuleReference(e.factory.createStringLiteral(E(d,r)))),v?i:0);break;case 262:H(e.factory.createNamespaceExportDeclaration(e.idText(u.name)),0);break;case 265:H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,e.factory.createIdentifier(n),void 0),e.factory.createStringLiteral(E(d.parent||d,r))),0);break;case 266:H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamespaceImport(e.factory.createIdentifier(n))),e.factory.createStringLiteral(E(d,r))),0);break;case 272:H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamespaceExport(e.factory.createIdentifier(n)),e.factory.createStringLiteral(E(d,r))),0);break;case 268:H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamedImports([e.factory.createImportSpecifier(n!==p?e.factory.createIdentifier(p):void 0,e.factory.createIdentifier(n))])),e.factory.createStringLiteral(E(d.parent||d,r))),0);break;case 273:var b=u.parent.parent.moduleSpecifier;ie(e.unescapeLeadingUnderscores(t.escapedName),b?p:f,b&&e.isStringLiteralLike(b)?e.factory.createStringLiteral(b.text):void 0);break;case 269:ae(t);break;case 218:case 202:case 203:"default"===t.escapedName||"export="===t.escapedName?ae(t):ie(n,f);break;default:return e.Debug.failBadSyntaxKind(u,"Unhandled alias declaration kind in symbol serializer!")}}}function ie(t,r,n){H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(t!==r?r:void 0,t)]),n),0)}function ae(t){if(4194304&t.flags)return!1;var i=e.unescapeLeadingUnderscores(t.escapedName),a="export="===i,o=a||"default"===i,s=t.declarations&&Vn(t),c=s&&ri(s,!0);if(c&&e.length(c.declarations)&&e.some(c.declarations,(function(t){return e.getSourceFileOfNode(t)===e.getSourceFileOfNode(l)}))){var d=s&&(e.isExportAssignment(s)||e.isBinaryExpression(s)?e.getExportAssignmentExpression(s):e.getPropertyAssignmentAliasLikeExpression(s)),p=d&&e.isEntityNameExpression(d)?function(t){switch(t.kind){case 78:return t;case 158:do{t=t.left}while(78!==t.kind);return t;case 202:do{if(e.isModuleExportsAccessExpression(t.expression)&&!e.isPrivateIdentifier(t.name))return t.name;t=t.expression}while(78!==t.kind);return t}}(d):void 0,f=p&&fi(p,67108863,!0,!0,l);(f||c)&&U(f||c);var m=r.tracker.trackSymbol;if(r.tracker.trackSymbol=e.noop,o)u.push(e.factory.createExportAssignment(void 0,void 0,a,C(c,r,67108863)));else if(p===d&&p)ie(i,e.idText(p));else if(d&&e.isClassExpression(d))ie(i,_e(c,e.symbolName(c)));else{var g=me(i,t);H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,e.factory.createIdentifier(g),T(c,r,67108863,!1)),0),ie(i,g)}return r.tracker.trackSymbol=m,!0}g=me(i,t);var _=Hf(_o(Ci(t)));return oe(_,t)?Q(_,t,g,o?0:1):H(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(g,void 0,L(r,_,t,l,U,n))],2)),c&&4&c.flags&&"export="===c.escapedName?2:i===g?1:0),o?(u.push(e.factory.createExportAssignment(void 0,void 0,a,e.factory.createIdentifier(g))),!0):i!==g&&(ie(i,g),!0)}function oe(t,n){var i=e.getSourceFileOfNode(r.enclosingDeclaration);return 48&e.getObjectFlags(t)&&!bc(t,0)&&!bc(t,1)&&!_a(t)&&!(!e.length(e.filter(Hs(t),ee))&&!e.length(hc(t,0)))&&!e.length(hc(t,1))&&!F(n,l)&&!(t.symbol&&e.some(t.symbol.declarations,(function(t){return e.getSourceFileOfNode(t)!==i})))&&!e.some(Hs(t),(function(e){return ts(e.escapedName)}))&&!e.some(Hs(t),(function(t){return e.some(t.declarations,(function(t){return e.getSourceFileOfNode(t)!==i}))}))&&e.every(Hs(t),(function(t){return e.isIdentifierText(e.symbolName(t),V)}))}function se(t,i,a){return function(o,s,c){var u=e.getDeclarationModifierFlagsFromSymbol(o),d=!!(8&u);if(s&&2887656&o.flags)return[];if(4194304&o.flags||c&&gc(c,o.escapedName)&&Nv(gc(c,o.escapedName))===Nv(o)&&(16777216&o.flags)==(16777216&gc(c,o.escapedName).flags)&&np(_o(o),Na(c,o.escapedName)))return[];var p=-257&u|(s?32:0),m=P(o,r),g=e.find(o.declarations,e.or(e.isPropertyDeclaration,e.isAccessor,e.isVariableDeclaration,e.isPropertySignature,e.isBinaryExpression,e.isPropertyAccessExpression));if(98304&o.flags&&a){var _=[];if(65536&o.flags&&_.push(e.setTextRange(e.factory.createSetAccessorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(p),m,[e.factory.createParameterDeclaration(void 0,void 0,void 0,"arg",void 0,d?void 0:L(r,_o(o),o,l,U,n))],void 0),e.find(o.declarations,e.isSetAccessor)||g)),32768&o.flags){var h=8&u;_.push(e.setTextRange(e.factory.createGetAccessorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(p),m,[],h?void 0:L(r,_o(o),o,l,U,n),void 0),e.find(o.declarations,e.isGetAccessor)||g))}return _}if(98311&o.flags)return e.setTextRange(t(void 0,e.factory.createModifiersFromModifierFlags((Nv(o)?64:0)|p),m,16777216&o.flags?e.factory.createToken(57):void 0,d?void 0:L(r,_o(o),o,l,U,n),void 0),e.find(o.declarations,e.or(e.isPropertyDeclaration,e.isVariableDeclaration))||g);if(8208&o.flags){var y=hc(_o(o),0);if(8&p)return e.setTextRange(t(void 0,e.factory.createModifiersFromModifierFlags((Nv(o)?64:0)|p),m,16777216&o.flags?e.factory.createToken(57):void 0,void 0,void 0),e.find(o.declarations,e.isFunctionLikeDeclaration)||y[0]&&y[0].declaration||o.declarations[0]);for(var v=[],b=0,k=y;b<k.length;b++){var x=k[b],E=f(x,i,r,{name:m,questionToken:16777216&o.flags?e.factory.createToken(57):void 0,modifiers:p?e.factory.createModifiersFromModifierFlags(p):void 0});v.push(e.setTextRange(E,x.declaration))}return v}return e.Debug.fail("Unhandled class member kind! "+(o.__debugFlags||o.flags))}}function ce(e,t){return c(e,!1,t)}function le(t,n,i,a){var o=hc(n,t);if(1===t){if(!i&&e.every(o,(function(t){return 0===e.length(t.parameters)})))return[];if(i){var s=hc(i,1);if(!e.length(s)&&e.every(o,(function(t){return 0===e.length(t.parameters)})))return[];if(s.length===o.length){for(var c=!1,l=0;l<s.length;l++)if(!ef(o[l],s[l],!1,!1,!0,ip)){c=!0;break}if(!c)return[]}}for(var u=0,d=0,p=o;d<p.length;d++){var m=p[d];m.declaration&&(u|=e.getSelectedEffectiveModifierFlags(m.declaration,24))}if(u)return[e.setTextRange(e.factory.createConstructorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(u),[],void 0),o[0].declaration)]}for(var g=[],_=0,h=o;_<h.length;_++){var y=h[_],v=f(y,a,r);g.push(e.setTextRange(v,y.declaration))}return g}function ue(e,t){for(var n=[],i=0,a=[0,1];i<a.length;i++){var o=a[i],s=bc(e,o);if(s){if(t){var c=bc(t,o);if(c&&np(s.type,c.type))continue}n.push(p(s,o,r,void 0))}}return n}function de(t,n,i){var a=pe(t,111551);if(a)return a;var o=me(i+"_base");return H(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(o,void 0,s(n,r))],2)),0),e.factory.createExpressionWithTypeArguments(e.factory.createIdentifier(o),void 0)}function pe(t,n){var i,a;if(t.target&&ea(t.target.symbol,l,n)?(i=e.map(ll(t),(function(e){return s(e,r)})),a=C(t.target.symbol,r,788968)):t.symbol&&ea(t.symbol,l,n)&&(a=C(t.symbol,r,788968)),a)return e.factory.createExpressionWithTypeArguments(a,i)}function fe(t){var n=pe(t,788968);return n||(t.symbol?e.factory.createExpressionWithTypeArguments(C(t.symbol,r,788968),void 0):void 0)}function me(e,t){var n,i,a=t?R(t):void 0;if(a&&r.remappedSymbolNames.has(a))return r.remappedSymbolNames.get(a);t&&(e=ge(t,e));for(var o=0,s=e;null===(n=r.usedSymbolNames)||void 0===n?void 0:n.has(e);)e=s+"_"+ ++o;return null===(i=r.usedSymbolNames)||void 0===i||i.add(e),a&&r.remappedSymbolNames.set(a,e),e}function ge(t,n){if("default"===n||"__class"===n||"__function"===n){var i=r.flags;r.flags|=16777216;var a=xa(t,r);r.flags=i,n=a.length>0&&e.isSingleOrDoubleQuote(a.charCodeAt(0))?e.stripQuotes(a):a}return"default"===n?n="_default":"export="===n&&(n="_exports"),n=e.isIdentifierText(n,V)&&!e.isStringANonContextualKeyword(n)?n:"_"+n.replace(/[^a-zA-Z0-9]/g,"_")}function _e(e,t){var n=R(e);return r.remappedSymbolNames.has(n)?r.remappedSymbolNames.get(n):(t=ge(e,t),r.remappedSymbolNames.set(n,t),t)}}(t,r,l)}))}};function r(r,n,i,a){var o,s;e.Debug.assert(void 0===r||!(8&r.flags));var c={enclosingDeclaration:r,flags:n||0,tracker:i&&i.trackSymbol?i:{trackSymbol:e.noop,moduleResolverHost:134217728&n?{getCommonSourceDirectory:t.getCommonSourceDirectory?function(){return t.getCommonSourceDirectory()}:function(){return""},getSourceFiles:function(){return t.getSourceFiles()},getCurrentDirectory:function(){return t.getCurrentDirectory()},getSymlinkCache:e.maybeBind(t,t.getSymlinkCache),useCaseSensitiveFileNames:e.maybeBind(t,t.useCaseSensitiveFileNames),redirectTargetsMap:t.redirectTargetsMap,getProjectReferenceRedirect:function(e){return t.getProjectReferenceRedirect(e)},isSourceOfProjectReferenceRedirect:function(e){return t.isSourceOfProjectReferenceRedirect(e)},fileExists:function(e){return t.fileExists(e)},getFileIncludeReasons:function(){return t.getFileIncludeReasons()}}:void 0},encounteredError:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0},l=a(c);return c.truncating&&1&c.flags&&(null===(s=null===(o=c.tracker)||void 0===o?void 0:o.reportTruncationError)||void 0===s||s.call(o)),c.encounteredError?void 0:l}function o(t){return t.truncating?t.truncating:t.truncating=t.approximateLength>(1&t.flags?e.noTruncationMaximumTruncationLength:e.defaultMaximumTruncationLength)}function s(t,r){n&&n.throwIfCancellationRequested&&n.throwIfCancellationRequested();var i=8388608&r.flags;if(r.flags&=-8388609,!t)return 262144&r.flags?(r.approximateLength+=3,e.factory.createKeywordTypeNode(129)):void(r.encounteredError=!0);if(536870912&r.flags||(t=uc(t)),1&t.flags)return r.approximateLength+=3,e.factory.createKeywordTypeNode(t===Ce?137:129);if(2&t.flags)return e.factory.createKeywordTypeNode(153);if(4&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(148);if(8&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(145);if(64&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(156);if(16&t.flags)return r.approximateLength+=7,e.factory.createKeywordTypeNode(132);if(1024&t.flags&&!(1048576&t.flags)){var a=Ni(t.symbol),c=S(a,r,788968);if(Jo(a)===t)return c;var g=e.symbolName(t.symbol);return e.isIdentifierText(g,0)?V(c,e.factory.createTypeReferenceNode(g,void 0)):e.isImportTypeNode(c)?(c.isTypeOf=!0,e.factory.createIndexedAccessTypeNode(c,e.factory.createLiteralTypeNode(e.factory.createStringLiteral(g)))):e.isTypeReferenceNode(c)?e.factory.createIndexedAccessTypeNode(e.factory.createTypeQueryNode(c.typeName),e.factory.createLiteralTypeNode(e.factory.createStringLiteral(g))):e.Debug.fail("Unhandled type node kind returned from `symbolToTypeNode`.")}if(1056&t.flags)return S(t.symbol,r,788968);if(128&t.flags)return r.approximateLength+=t.value.length+2,e.factory.createLiteralTypeNode(e.setEmitFlags(e.factory.createStringLiteral(t.value,!!(268435456&r.flags)),16777216));if(256&t.flags){var _=t.value;return r.approximateLength+=(""+_).length,e.factory.createLiteralTypeNode(_<0?e.factory.createPrefixUnaryExpression(40,e.factory.createNumericLiteral(-_)):e.factory.createNumericLiteral(_))}if(2048&t.flags)return r.approximateLength+=e.pseudoBigIntToString(t.value).length+1,e.factory.createLiteralTypeNode(e.factory.createBigIntLiteral(t.value));if(512&t.flags)return r.approximateLength+=t.intrinsicName.length,e.factory.createLiteralTypeNode("true"===t.intrinsicName?e.factory.createTrue():e.factory.createFalse());if(8192&t.flags){if(!(1048576&r.flags)){if(Zi(t.symbol,r.enclosingDeclaration))return r.approximateLength+=6,S(t.symbol,r,111551);r.tracker.reportInaccessibleUniqueSymbolError&&r.tracker.reportInaccessibleUniqueSymbolError()}return r.approximateLength+=13,e.factory.createTypeOperatorNode(152,e.factory.createKeywordTypeNode(149))}if(16384&t.flags)return r.approximateLength+=4,e.factory.createKeywordTypeNode(114);if(32768&t.flags)return r.approximateLength+=9,e.factory.createKeywordTypeNode(151);if(65536&t.flags)return r.approximateLength+=4,e.factory.createLiteralTypeNode(e.factory.createNull());if(131072&t.flags)return r.approximateLength+=5,e.factory.createKeywordTypeNode(142);if(4096&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(149);if(67108864&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(146);if(Lu(t))return 4194304&r.flags&&(r.encounteredError||32768&r.flags||(r.encounteredError=!0),r.tracker.reportInaccessibleThisError&&r.tracker.reportInaccessibleThisError()),r.approximateLength+=4,e.factory.createThisTypeNode();if(!i&&t.aliasSymbol&&(16384&r.flags||Qi(t.aliasSymbol,r.enclosingDeclaration))){var h=d(t.aliasTypeArguments,r);return!Vi(t.aliasSymbol.escapedName)||32&t.aliasSymbol.flags?S(t.aliasSymbol,r,788968,h):e.factory.createTypeReferenceNode(e.factory.createIdentifier(""),h)}var y=e.getObjectFlags(t);if(4&y)return e.Debug.assert(!!(524288&t.flags)),t.node?U(t,J):J(t);if(262144&t.flags||3&y){if(262144&t.flags&&e.contains(r.inferTypeParameters,t))return r.approximateLength+=e.symbolName(t.symbol).length+6,e.factory.createInferTypeNode(m(t,r,void 0));if(4&r.flags&&262144&t.flags&&!Qi(t.symbol,r.enclosingDeclaration)){var v=w(t,r);return r.approximateLength+=e.idText(v).length,e.factory.createTypeReferenceNode(e.factory.createIdentifier(e.idText(v)),void 0)}return t.symbol?S(t.symbol,r,788968):e.factory.createTypeReferenceNode(e.factory.createIdentifier("?"),void 0)}if(1048576&t.flags&&t.origin&&(t=t.origin),3145728&t.flags){var b=1048576&t.flags?function(e){for(var t=[],r=0,n=0;n<e.length;n++){var i=e[n];if(r|=i.flags,!(98304&i.flags)){if(1536&i.flags){var a=512&i.flags?qe:Bo(i);if(1048576&a.flags){var o=a.types.length;if(n+o<=e.length&&gd(e[n+o-1])===gd(a.types[o-1])){t.push(a),n+=o-1;continue}}}t.push(i)}}65536&r&&t.push(Fe);32768&r&&t.push(Ne);return t||e}(t.types):t.types;if(1===e.length(b))return s(b[0],r);var k=d(b,r,!0);return k&&k.length>0?1048576&t.flags?e.factory.createUnionTypeNode(k):e.factory.createIntersectionTypeNode(k):void(r.encounteredError||262144&r.flags||(r.encounteredError=!0))}if(48&y)return e.Debug.assert(!!(524288&t.flags)),z(t);if(4194304&t.flags){var x=t.type;r.approximateLength+=6;var E=s(x,r);return e.factory.createTypeOperatorNode(139,E)}if(134217728&t.flags){var D=t.texts,T=t.types,C=e.factory.createTemplateHead(D[0]),A=e.factory.createNodeArray(e.map(T,(function(t,n){return e.factory.createTemplateLiteralTypeSpan(s(t,r),(n<T.length-1?e.factory.createTemplateMiddle:e.factory.createTemplateTail)(D[n+1]))})));return r.approximateLength+=2,e.factory.createTemplateLiteralType(C,A)}if(268435456&t.flags){var N=s(t.type,r);return S(t.symbol,r,788968,[N])}if(8388608&t.flags){var P=s(t.objectType,r);E=s(t.indexType,r);return r.approximateLength+=2,e.factory.createIndexedAccessTypeNode(P,E)}if(16777216&t.flags){var I=s(t.checkType,r),F=r.inferTypeParameters;r.inferTypeParameters=t.root.inferTypeParameters;var M=s(t.extendsType,r);r.inferTypeParameters=F;var L=B(Xu(t)),j=B(Qu(t));return r.approximateLength+=15,e.factory.createConditionalTypeNode(I,M,L,j)}return 33554432&t.flags?s(t.baseType,r):e.Debug.fail("Should be unreachable.");function B(e){var t,n,i;return 1048576&e.flags?(null===(t=r.visitedTypes)||void 0===t?void 0:t.has(Zl(e)))?(131072&r.flags||(r.encounteredError=!0,null===(i=null===(n=r.tracker)||void 0===n?void 0:n.reportCyclicStructureError)||void 0===i||i.call(n)),l(r)):U(e,(function(e){return s(e,r)})):s(e,r)}function z(t){var n,i=t.id,a=t.symbol;if(a){var o=_a(t)?788968:111551;if(Fy(a.valueDeclaration))return S(a,r,o);if(32&a.flags&&!po(a)&&!(223===a.valueDeclaration.kind&&2048&r.flags)||896&a.flags||function(){var t,n=!!(8192&a.flags)&&e.some(a.declarations,(function(t){return e.hasSyntacticModifier(t,32)})),o=!!(16&a.flags)&&(a.parent||e.forEach(a.declarations,(function(e){return 300===e.parent.kind||260===e.parent.kind})));if(n||o)return(!!(4096&r.flags)||(null===(t=r.visitedTypes)||void 0===t?void 0:t.has(i)))&&(!(8&r.flags)||Zi(a,r.enclosingDeclaration))}())return S(a,r,o);if(null===(n=r.visitedTypes)||void 0===n?void 0:n.has(i)){var s=function(t){if(t.symbol&&2048&t.symbol.flags){var r=e.walkUpParenthesizedTypes(t.symbol.declarations[0].parent);if(257===r.kind)return Ai(r)}return}(t);return s?S(s,r,788968):l(r)}return U(t,q)}return q(t)}function U(t,n){var i,a=t.id,o=16&e.getObjectFlags(t)&&t.symbol&&32&t.symbol.flags,s=4&e.getObjectFlags(t)&&t.node?"N"+O(t.node):t.symbol?(o?"+":"")+R(t.symbol):void 0;if(r.visitedTypes||(r.visitedTypes=new e.Set),s&&!r.symbolDepth&&(r.symbolDepth=new e.Map),s){if((i=r.symbolDepth.get(s)||0)>10)return l(r);r.symbolDepth.set(s,i+1)}r.visitedTypes.add(a);var c=n(t);return r.visitedTypes.delete(a),s&&r.symbolDepth.set(s,i),c}function q(t){if(zs(t)||t.containsError)return function(t){e.Debug.assert(!!(524288&t.flags));var n,i=t.declaration.readonlyToken?e.factory.createToken(t.declaration.readonlyToken.kind):void 0,a=t.declaration.questionToken?e.factory.createToken(t.declaration.questionToken.kind):void 0;n=Rs(t)?e.factory.createTypeOperatorNode(139,s(Ms(t),r)):s(Ps(t),r);var o=m(Ns(t),r,n),c=t.declaration.nameType?s(Is(t),r):void 0,l=s(Fs(t),r),u=e.factory.createMappedTypeNode(i,o,c,a,l);return r.approximateLength+=10,e.setEmitFlags(u,1)}(t);var n=Us(t);if(!n.properties.length&&!n.stringIndexInfo&&!n.numberIndexInfo){if(!n.callSignatures.length&&!n.constructSignatures.length)return r.approximateLength+=2,e.setEmitFlags(e.factory.createTypeLiteralNode(void 0),1);if(1===n.callSignatures.length&&!n.constructSignatures.length)return f(n.callSignatures[0],175,r);if(1===n.constructSignatures.length&&!n.callSignatures.length)return f(n.constructSignatures[0],176,r)}var i=e.filter(n.constructSignatures,(function(e){return!!(4&e.flags)}));if(e.some(i)){var a=e.map(i,$c);return n.callSignatures.length+(n.constructSignatures.length-i.length)+(n.stringIndexInfo?1:0)+(n.numberIndexInfo?1:0)+(2048&r.flags?e.countWhere(n.properties,(function(e){return!(4194304&e.flags)})):e.length(n.properties))&&a.push(function(t){if(0===t.constructSignatures.length)return t;if(t.objectTypeWithoutAbstractConstructSignatures)return t.objectTypeWithoutAbstractConstructSignatures;var r=e.filter(t.constructSignatures,(function(e){return!(4&e.flags)}));if(t.constructSignatures===r)return t;var n=Wi(t.symbol,t.members,t.callSignatures,e.some(r)?r:e.emptyArray,t.stringIndexInfo,t.numberIndexInfo);return t.objectTypeWithoutAbstractConstructSignatures=n,n.objectTypeWithoutAbstractConstructSignatures=n,n}(n)),s(fu(a),r)}var c=r.flags;r.flags|=4194304;var d=function(t){if(o(r))return[e.factory.createPropertySignature(void 0,"...",void 0,void 0)];for(var n=[],i=0,a=t.callSignatures;i<a.length;i++){var s=a[i];n.push(f(s,170,r))}for(var c=0,d=t.constructSignatures;c<d.length;c++){4&(s=d[c]).flags||n.push(f(s,171,r))}if(t.stringIndexInfo){var m=void 0;m=2048&t.objectFlags?p(Qc(Ee,t.stringIndexInfo.isReadonly,t.stringIndexInfo.declaration),0,r,l(r)):p(t.stringIndexInfo,0,r,void 0),n.push(m)}t.numberIndexInfo&&n.push(p(t.numberIndexInfo,1,r,void 0));var g=t.properties;if(!g)return n;for(var _=0,h=0,y=g;h<y.length;h++){var v=y[h];if(_++,2048&r.flags){if(4194304&v.flags)continue;24&e.getDeclarationModifierFlagsFromSymbol(v)&&r.tracker.reportPrivateInBaseOfClassExpression&&r.tracker.reportPrivateInBaseOfClassExpression(e.unescapeLeadingUnderscores(v.escapedName))}if(o(r)&&_+2<g.length-1){n.push(e.factory.createPropertySignature(void 0,"... "+(g.length-_)+" more ...",void 0,void 0)),u(g[g.length-1],r,n);break}u(v,r,n)}return n.length?n:void 0}(n);r.flags=c;var g=e.factory.createTypeLiteralNode(d);return r.approximateLength+=2,e.setEmitFlags(g,1024&r.flags?0:1),g}function J(t){var n=ll(t);if(t.target===xt||t.target===Et){if(2&r.flags){var i=s(n[0],r);return e.factory.createTypeReferenceNode(t.target===xt?"Array":"ReadonlyArray",[i])}var a=s(n[0],r),o=e.factory.createArrayTypeNode(a);return t.target===xt?o:e.factory.createTypeOperatorNode(143,o)}if(!(8&t.target.objectFlags)){if(2048&r.flags&&t.symbol.valueDeclaration&&e.isClassLike(t.symbol.valueDeclaration)&&!Zi(t.symbol,r.enclosingDeclaration))return z(t);var c=t.target.outerTypeParameters,l=(x=0,void 0);if(c)for(var u=c.length;x<u;){var p=x,f=rl(c[x]);do{x++}while(x<u&&rl(c[x])===f);if(!e.rangeEquals(c,n,p,x)){var m=d(n.slice(p,x),r),g=r.flags;r.flags|=16;var _=S(f,r,788968,m);r.flags=g,l=l?V(l,_):_}}var h=void 0;if(n.length>0){var y=(t.target.typeParameters||e.emptyArray).length;h=d(n.slice(x,y),r)}E=r.flags;r.flags|=16;var v=S(t.symbol,r,788968,h);return r.flags=E,l?V(l,v):v}if(n.length>0){var b=ul(t),k=d(n.slice(0,b),r);if(k){if(t.target.labeledElementDeclarations)for(var x=0;x<k.length;x++){var E=t.target.elementFlags[x];k[x]=e.factory.createNamedTupleMember(12&E?e.factory.createToken(25):void 0,e.factory.createIdentifier(e.unescapeLeadingUnderscores(Zy(t.target.labeledElementDeclarations[x]))),2&E?e.factory.createToken(57):void 0,4&E?e.factory.createArrayTypeNode(k[x]):k[x])}else for(var x=0;x<Math.min(b,k.length);x++){var E=t.target.elementFlags[x];k[x]=12&E?e.factory.createRestTypeNode(4&E?e.factory.createArrayTypeNode(k[x]):k[x]):2&E?e.factory.createOptionalTypeNode(k[x]):k[x]}var D=e.setEmitFlags(e.factory.createTupleTypeNode(k),1);return t.target.readonly?e.factory.createTypeOperatorNode(143,D):D}}if(r.encounteredError||524288&r.flags){D=e.setEmitFlags(e.factory.createTupleTypeNode([]),1);return t.target.readonly?e.factory.createTypeOperatorNode(143,D):D}r.encounteredError=!0}function V(t,r){if(e.isImportTypeNode(t)){var n=t.typeArguments,i=t.qualifier;i&&(i=e.isIdentifier(i)?e.factory.updateIdentifier(i,n):e.factory.updateQualifiedName(i,i.left,e.factory.updateIdentifier(i.right,n))),n=r.typeArguments;for(var a=0,o=H(r);a<o.length;a++){var s=o[a];i=i?e.factory.createQualifiedName(i,s):s}return e.factory.updateImportTypeNode(t,t.argument,i,n,t.isTypeOf)}n=t.typeArguments;var c=t.typeName;c=e.isIdentifier(c)?e.factory.updateIdentifier(c,n):e.factory.updateQualifiedName(c,c.left,e.factory.updateIdentifier(c.right,n)),n=r.typeArguments;for(var l=0,u=H(r);l<u.length;l++){s=u[l];c=e.factory.createQualifiedName(c,s)}return e.factory.updateTypeReferenceNode(t,c,n)}function H(t){for(var r=t.typeName,n=[];!e.isIdentifier(r);)n.unshift(r.right),r=r.left;return n.unshift(r),n}}function l(t){return t.approximateLength+=3,1&t.flags?e.factory.createKeywordTypeNode(129):e.factory.createTypeReferenceNode(e.factory.createIdentifier("..."),void 0)}function u(t,r,n){var i=!!(8192&e.getCheckFlags(t)),a=i&&33554432&r.flags?Ee:_o(t),o=r.enclosingDeclaration;if(r.enclosingDeclaration=void 0,r.tracker.trackSymbol&&4096&e.getCheckFlags(t)&&ts(t.escapedName)){var s=e.first(t.declarations);if(rs(s))if(e.isBinaryExpression(s)){var c=e.getNameOfDeclaration(s);c&&e.isElementAccessExpression(c)&&e.isPropertyAccessEntityNameExpression(c.argumentExpression)&&h(c.argumentExpression,o,r)}else h(s.name.expression,o,r)}r.enclosingDeclaration=o;var u=P(t,r);r.approximateLength+=e.symbolName(t).length+1;var d=16777216&t.flags?e.factory.createToken(57):void 0;if(8208&t.flags&&!qs(a).length&&!Nv(t))for(var p=0,m=hc(ug(a,(function(e){return!(32768&e.flags)})),0);p<m.length;p++){var g=f(m[p],165,r,{name:u,questionToken:d});n.push(k(g))}else{var _=r.flags;r.flags|=i?33554432:0;var y=void 0;y=i&&33554432&_?l(r):a?L(r,a,t,o):e.factory.createKeywordTypeNode(129),r.flags=_;var v=Nv(t)?[e.factory.createToken(143)]:void 0;v&&(r.approximateLength+=9);var b=e.factory.createPropertySignature(v,u,d,y);n.push(k(b))}function k(r){if(e.some(t.declarations,(function(e){return 336===e.kind}))){var n=e.find(t.declarations,(function(e){return 336===e.kind})).comment;n&&e.setSyntheticLeadingComments(r,[{kind:3,text:"*\n * "+n.replace(/\n/g,"\n * ")+"\n ",pos:-1,end:-1,hasTrailingNewLine:!0}])}else t.valueDeclaration&&e.setCommentRange(r,t.valueDeclaration);return r}}function d(t,r,n){if(e.some(t)){if(o(r)){if(!n)return[e.factory.createTypeReferenceNode("...",void 0)];if(t.length>2)return[s(t[0],r),e.factory.createTypeReferenceNode("... "+(t.length-2)+" more ...",void 0),s(t[t.length-1],r)]}for(var i=!(64&r.flags)?e.createUnderscoreEscapedMultiMap():void 0,a=[],c=0,l=0,u=t;l<u.length;l++){var d=u[l];if(c++,o(r)&&c+2<t.length-1){a.push(e.factory.createTypeReferenceNode("... "+(t.length-c)+" more ...",void 0));var p=s(t[t.length-1],r);p&&a.push(p);break}r.approximateLength+=2;var f=s(d,r);f&&(a.push(f),i&&e.isIdentifierTypeReference(f)&&i.add(f.typeName.escapedText,[d,a.length-1]))}if(i){var m=r.flags;r.flags|=64,i.forEach((function(t){if(!e.arrayIsHomogeneous(t,(function(e,t){return function(e,t){return e===t||!!e.symbol&&e.symbol===t.symbol||!!e.aliasSymbol&&e.aliasSymbol===t.aliasSymbol}(e[0],t[0])})))for(var n=0,i=t;n<i.length;n++){var o=i[n],c=o[0],l=o[1];a[l]=s(c,r)}})),r.flags=m}return a}}function p(t,r,n,i){var a=e.getNameFromIndexInfo(t)||"x",o=e.factory.createKeywordTypeNode(0===r?148:145),c=e.factory.createParameterDeclaration(void 0,void 0,void 0,a,void 0,o,void 0);return i||(i=s(t.type||Ee,n)),t.type||2097152&n.flags||(n.encounteredError=!0),n.approximateLength+=a.length+4,e.factory.createIndexSignature(void 0,t.isReadonly?[e.factory.createToken(143)]:void 0,[c],i)}function f(t,r,n,i){var a,o,c,l,u,d,p=256&n.flags;p&&(n.flags&=-257),32&n.flags&&t.target&&t.mapper&&t.target.typeParameters?d=t.target.typeParameters.map((function(e){return s(Wd(e,t.mapper),n)})):u=t.typeParameters&&t.typeParameters.map((function(e){return g(e,n)}));var f,m=gs(t,!0)[0],h=(e.some(m,(function(t){return t!==m[m.length-1]&&!!(32768&e.getCheckFlags(t))}))?t.parameters:m).map((function(e){return _(e,n,167===r,null==i?void 0:i.privateSymbolVisitor,null==i?void 0:i.bundledImports)}));if(t.thisParameter){var y=_(t.thisParameter,n);h.unshift(y)}var v=jc(t);if(v){var b=2===v.kind||3===v.kind?e.factory.createToken(128):void 0,k=1===v.kind||3===v.kind?e.setEmitFlags(e.factory.createIdentifier(v.parameterName),16777216):e.factory.createThisTypeNode(),x=v.type&&s(v.type,n);f=e.factory.createTypePredicateNode(b,k,x)}else{var E=Bc(t);!E||p&&Pa(E)?p||(f=e.factory.createKeywordTypeNode(129)):f=function(t,r,n,i,a){if(r!==we&&t.enclosingDeclaration){var o=n.declaration&&e.getEffectiveReturnTypeNode(n.declaration);if(e.findAncestor(o,(function(e){return e===t.enclosingDeclaration}))&&o&&Wd(xd(o),n.mapper)===r&&M(o,r)){var c=B(t,o,i,a);if(c)return c}}return s(r,t)}(n,E,t,null==i?void 0:i.privateSymbolVisitor,null==i?void 0:i.bundledImports)}var S=null==i?void 0:i.modifiers;if(176===r&&4&t.flags){var D=e.modifiersToFlags(S);S=e.factory.createModifiersFromModifierFlags(128|D)}n.approximateLength+=3;var w=170===r?e.factory.createCallSignature(u,h,f):171===r?e.factory.createConstructSignature(u,h,f):165===r?e.factory.createMethodSignature(S,null!==(a=null==i?void 0:i.name)&&void 0!==a?a:e.factory.createIdentifier(""),null==i?void 0:i.questionToken,u,h,f):166===r?e.factory.createMethodDeclaration(void 0,S,void 0,null!==(o=null==i?void 0:i.name)&&void 0!==o?o:e.factory.createIdentifier(""),void 0,u,h,f,void 0):167===r?e.factory.createConstructorDeclaration(void 0,S,h,void 0):168===r?e.factory.createGetAccessorDeclaration(void 0,S,null!==(c=null==i?void 0:i.name)&&void 0!==c?c:e.factory.createIdentifier(""),h,f,void 0):169===r?e.factory.createSetAccessorDeclaration(void 0,S,null!==(l=null==i?void 0:i.name)&&void 0!==l?l:e.factory.createIdentifier(""),h,void 0):172===r?e.factory.createIndexSignature(void 0,S,h,f):311===r?e.factory.createJSDocFunctionType(h,f):175===r?e.factory.createFunctionTypeNode(u,h,null!=f?f:e.factory.createTypeReferenceNode(e.factory.createIdentifier(""))):176===r?e.factory.createConstructorTypeNode(S,u,h,null!=f?f:e.factory.createTypeReferenceNode(e.factory.createIdentifier(""))):253===r?e.factory.createFunctionDeclaration(void 0,S,void 0,(null==i?void 0:i.name)?e.cast(i.name,e.isIdentifier):e.factory.createIdentifier(""),u,h,f,void 0):209===r?e.factory.createFunctionExpression(S,void 0,(null==i?void 0:i.name)?e.cast(i.name,e.isIdentifier):e.factory.createIdentifier(""),u,h,f,e.factory.createBlock([])):210===r?e.factory.createArrowFunction(S,u,h,f,void 0,e.factory.createBlock([])):e.Debug.assertNever(r);return d&&(w.typeArguments=e.factory.createNodeArray(d)),w}function m(t,r,n){var i=r.flags;r.flags&=-513;var a=w(t,r),o=nc(t),c=o&&s(o,r);return r.flags=i,e.factory.createTypeParameterDeclaration(a,n,c)}function g(e,t,r){return void 0===r&&(r=Ws(e)),m(e,t,r&&s(r,t))}function _(t,r,n,i,a){var o=e.getDeclarationOfKind(t,161);o||e.isTransientSymbol(t)||(o=e.getDeclarationOfKind(t,329));var s,c=_o(t);o&&hE(o)&&(c=Nf(c)),1073741824&r.flags&&o&&!e.isJSDocParameterTag(o)&&(s=o,W&&Tc(s)&&!s.initializer)&&(c=Hm(c,524288));var l=L(r,c,t,r.enclosingDeclaration,i,a),u=!(8192&r.flags)&&n&&o&&o.modifiers?o.modifiers.map(e.factory.cloneNode):void 0,d=o&&e.isRestParameter(o)||32768&e.getCheckFlags(t)?e.factory.createToken(25):void 0,p=o&&o.name?78===o.name.kind?e.setEmitFlags(e.factory.cloneNode(o.name),16777216):158===o.name.kind?e.setEmitFlags(e.factory.cloneNode(o.name.right),16777216):function t(n){r.tracker.trackSymbol&&e.isComputedPropertyName(n)&&es(n)&&h(n.expression,r.enclosingDeclaration,r);var i=e.visitEachChild(n,t,e.nullTransformationContext,void 0,t);return e.isBindingElement(i)&&(i=e.factory.updateBindingElement(i,i.dotDotDotToken,i.propertyName,i.name,void 0)),e.nodeIsSynthesized(i)||(i=e.factory.cloneNode(i)),e.setEmitFlags(i,16777217)}(o.name):e.symbolName(t),f=o&&Tc(o)||16384&e.getCheckFlags(t)?e.factory.createToken(57):void 0,m=e.factory.createParameterDeclaration(void 0,u,d,p,f,l,void 0);return r.approximateLength+=e.symbolName(t).length+3,m}function h(t,r,n){if(n.tracker.trackSymbol){var i=e.getFirstIdentifier(t),a=Fn(i,i.escapedText,1160127,void 0,void 0,!0);a&&n.tracker.trackSymbol(a,r,111551)}}function y(e,t,r,n){return t.tracker.trackSymbol(e,t.enclosingDeclaration,r),v(e,t,r,n)}function v(t,r,n,i){var a;return 262144&t.flags||!(r.enclosingDeclaration||64&r.flags)||134217728&r.flags?a=[t]:(a=e.Debug.checkDefined(function t(n,a,o){var s,c=Yi(n,r.enclosingDeclaration,a,!!(128&r.flags));if(!c||Xi(c[0],r.enclosingDeclaration,1===c.length?a:$i(a))){var l=Pi(c?c[0]:n,r.enclosingDeclaration,a);if(e.length(l)){s=l.map((function(t){return e.some(t.declarations,oa)?E(t,r):void 0}));var u=l.map((function(e,t){return t}));u.sort(g);for(var d=0,p=u.map((function(e){return l[e]}));d<p.length;d++){var f=p[d],m=t(f,$i(a),!1);if(m){if(f.exports&&f.exports.get("export=")&&Oi(f.exports.get("export="),n)){c=m;break}c=m.concat(c||[Fi(f,n)||n]);break}}}}if(c)return c;if(o||!(6144&n.flags)){if(!o&&!i&&e.forEach(n.declarations,oa))return;return[n]}function g(t,r){var n=s[t],i=s[r];if(n&&i){var a=e.pathIsRelative(i);return e.pathIsRelative(n)===a?e.moduleSpecifiers.countPathComponents(n)-e.moduleSpecifiers.countPathComponents(i):a?-1:1}return 0}}(t,n,!0)),e.Debug.assert(a&&a.length>0)),a}function b(t,r){var n;return 524384&gx(t).flags&&(n=e.factory.createNodeArray(e.map(Eo(t),(function(e){return g(e,r)})))),n}function k(t,r,n){var i;e.Debug.assert(t&&0<=r&&r<t.length);var a=t[r],o=R(a);if(!(null===(i=n.typeParameterSymbolList)||void 0===i?void 0:i.has(o))){var s;if((n.typeParameterSymbolList||(n.typeParameterSymbolList=new e.Set)).add(o),512&n.flags&&r<t.length-1){var c=a,l=t[r+1];if(1&e.getCheckFlags(l)){var u=function(t){return e.concatenate(xo(t),Eo(t))}(2097152&c.flags?ai(c):c);s=d(e.map(u,(function(e){return Cd(e,l.mapper)})),n)}else s=b(a,n)}return s}}function x(t){return e.isIndexedAccessTypeNode(t.objectType)?x(t.objectType):t}function E(t,r){var n,i=e.getDeclarationOfKind(t,300);if(!i){var o=e.firstDefined(t.declarations,(function(e){return Ii(e,t)}));o&&(i=e.getDeclarationOfKind(o,300))}if(i&&void 0!==i.moduleName)return i.moduleName;if(!i){if(r.tracker.trackReferencedAmbientModule){var s=e.filter(t.declarations,e.isAmbientModule);if(e.length(s))for(var l=0,u=s;l<u.length;l++){var d=u[l];r.tracker.trackReferencedAmbientModule(d,t)}}if(c.test(t.escapedName))return t.escapedName.substring(1,t.escapedName.length-1)}if(!r.enclosingDeclaration||!r.tracker.moduleResolverHost)return c.test(t.escapedName)?t.escapedName.substring(1,t.escapedName.length-1):e.getSourceFileOfNode(e.getNonAugmentationDeclaration(t)).fileName;var p=e.getSourceFileOfNode(e.getOriginalNode(r.enclosingDeclaration)),f=Tn(t),m=f.specifierCache&&f.specifierCache.get(p.path);if(!m){var g=!!e.outFile(J),_=r.tracker.moduleResolverHost,h=g?a(a({},J),{baseUrl:_.getCommonSourceDirectory()}):J;m=e.first(e.moduleSpecifiers.getModuleSpecifiers(t,le,h,p,_,{importModuleSpecifierPreference:g?"non-relative":"relative",importModuleSpecifierEnding:g?"minimal":void 0})),null!==(n=f.specifierCache)&&void 0!==n||(f.specifierCache=new e.Map),f.specifierCache.set(p.path,m)}return m}function S(t,r,n,i){var a=y(t,r,n,!(16384&r.flags)),o=111551===n;if(e.some(a[0].declarations,oa)){var s=a.length>1?_(a,a.length-1,1):void 0,c=i||k(a,0,r),l=E(a[0],r);67108864&r.flags||e.getEmitModuleResolutionKind(J)!==e.ModuleResolutionKind.NodeJs||!(l.indexOf("/node_modules/")>=0||e.isOhpm(J.packageManagerType)&&l.indexOf("/oh_modules/")>=0)||(r.encounteredError=!0,r.tracker.reportLikelyUnsafeImportRequiredError&&r.tracker.reportLikelyUnsafeImportRequiredError(l));var u=e.factory.createLiteralTypeNode(e.factory.createStringLiteral(l));if(r.tracker.trackExternalModuleSymbolOfImportTypeNode&&r.tracker.trackExternalModuleSymbolOfImportTypeNode(a[0]),r.approximateLength+=l.length+10,!s||e.isEntityName(s)){if(s)(m=e.isIdentifier(s)?s:s.right).typeArguments=void 0;return e.factory.createImportTypeNode(u,s,c,o)}var d=x(s),p=d.objectType.typeName;return e.factory.createIndexedAccessTypeNode(e.factory.createImportTypeNode(u,p,c,o),d.indexType)}var f=_(a,a.length-1,0);if(e.isIndexedAccessTypeNode(f))return f;if(o)return e.factory.createTypeQueryNode(f);var m,g=(m=e.isIdentifier(f)?f:f.right).typeArguments;return m.typeArguments=void 0,e.factory.createTypeReferenceNode(f,g);function _(t,n,a){var o,s=n===t.length-1?i:k(t,n,r),c=t[n],l=t[n-1];if(0===n)r.flags|=16777216,o=xa(c,r),r.approximateLength+=(o?o.length:0)+1,r.flags^=16777216;else if(l&&Si(l)){var u=Si(l);e.forEachEntry(u,(function(t,r){if(Oi(t,c)&&!ts(r)&&"export="!==r)return o=e.unescapeLeadingUnderscores(r),!0}))}if(o||(o=xa(c,r)),r.approximateLength+=o.length+1,!(16&r.flags)&&l&&ss(l)&&ss(l).get(c.escapedName)&&Oi(ss(l).get(c.escapedName),c)){var d=_(t,n-1,a);return e.isIndexedAccessTypeNode(d)?e.factory.createIndexedAccessTypeNode(d,e.factory.createLiteralTypeNode(e.factory.createStringLiteral(o))):e.factory.createIndexedAccessTypeNode(e.factory.createTypeReferenceNode(d,s),e.factory.createLiteralTypeNode(e.factory.createStringLiteral(o)))}var p=e.setEmitFlags(e.factory.createIdentifier(o,s),16777216);if(p.symbol=c,n>a){d=_(t,n-1,a);return e.isEntityName(d)?e.factory.createQualifiedName(d,p):e.Debug.fail("Impossible construct - an export of an indexed access cannot be reachable")}return p}}function D(e,t,r){var n=Fn(t.enclosingDeclaration,e,788968,void 0,e,!1);return!!n&&!(262144&n.flags&&n===r.symbol)}function w(t,r){var n;if(4&r.flags&&r.typeParameterNames){var i=r.typeParameterNames.get(Zl(t));if(i)return i}var a=T(t.symbol,r,788968,!0);if(!(78&a.kind))return e.factory.createIdentifier("(Missing type parameter)");if(4&r.flags){for(var o=a.escapedText,s=0,c=o;(null===(n=r.typeParameterNamesByText)||void 0===n?void 0:n.has(c))||D(c,r,t);)c=o+"_"+ ++s;c!==o&&(a=e.factory.createIdentifier(c,a.typeArguments)),(r.typeParameterNames||(r.typeParameterNames=new e.Map)).set(Zl(t),a),(r.typeParameterNamesByText||(r.typeParameterNamesByText=new e.Set)).add(a.escapedText)}return a}function T(t,r,n,i){var a=y(t,r,n);return!i||1===a.length||r.encounteredError||65536&r.flags||(r.encounteredError=!0),function t(n,i){var a=k(n,i,r),o=n[i];0===i&&(r.flags|=16777216);var s=xa(o,r);0===i&&(r.flags^=16777216);var c=e.setEmitFlags(e.factory.createIdentifier(s,a),16777216);return c.symbol=o,i>0?e.factory.createQualifiedName(t(n,i-1),c):c}(a,a.length-1)}function C(t,r,n){var i=y(t,r,n);return function t(n,i){var a=k(n,i,r),o=n[i];0===i&&(r.flags|=16777216);var s=xa(o,r);0===i&&(r.flags^=16777216);var c=s.charCodeAt(0);if(e.isSingleOrDoubleQuote(c)&&e.some(o.declarations,oa))return e.factory.createStringLiteral(E(o,r));var l=35===c?s.length>1&&e.isIdentifierStart(s.charCodeAt(1),V):e.isIdentifierStart(c,V);if(0===i||l){var u=e.setEmitFlags(e.factory.createIdentifier(s,a),16777216);return u.symbol=o,i>0?e.factory.createPropertyAccessExpression(t(n,i-1),u):u}91===c&&(c=(s=s.substring(1,s.length-1)).charCodeAt(0));var d=void 0;return e.isSingleOrDoubleQuote(c)?d=e.factory.createStringLiteral(s.substring(1,s.length-1).replace(/\\./g,(function(e){return e.substring(1)})),39===c):""+ +s===s&&(d=e.factory.createNumericLiteral(+s)),d||((d=e.setEmitFlags(e.factory.createIdentifier(s,a),16777216)).symbol=o),e.factory.createElementAccessExpression(t(n,i-1),d)}(i,i.length-1)}function A(t){var r=e.getNameOfDeclaration(t);return!!r&&e.isStringLiteral(r)}function N(t){var r=e.getNameOfDeclaration(t);return!!(r&&e.isStringLiteral(r)&&(r.singleQuote||!e.nodeIsSynthesized(r)&&e.startsWith(e.getTextOfNode(r,!1),"'")))}function P(t,r){var n=!!e.length(t.declarations)&&e.every(t.declarations,N),i=function(t,r,n){var i=Tn(t).nameType;if(i){if(384&i.flags){var a=""+i.value;return e.isIdentifierText(a,J.target)||R_(a)?R_(a)&&e.startsWith(a,"-")?e.factory.createComputedPropertyName(e.factory.createNumericLiteral(+a)):I(a):e.factory.createStringLiteral(a,!!n)}if(8192&i.flags)return e.factory.createComputedPropertyName(C(i.symbol,r,111551))}}(t,r,n);return i||(e.isKnownSymbol(t)?e.factory.createComputedPropertyName(e.factory.createPropertyAccessExpression(e.factory.createIdentifier("Symbol"),t.escapedName.substr(3))):I(e.unescapeLeadingUnderscores(t.escapedName),!!e.length(t.declarations)&&e.every(t.declarations,A),n))}function I(t,r,n){return e.isIdentifierText(t,J.target)?e.factory.createIdentifier(t):!r&&R_(t)&&+t>=0?e.factory.createNumericLiteral(+t):e.factory.createStringLiteral(t,!!n)}function F(t,r){return t.declarations&&e.find(t.declarations,(function(t){return!(!e.getEffectiveTypeAnnotationNode(t)||r&&!e.findAncestor(t,(function(e){return e===r})))}))}function M(t,r){return!(4&e.getObjectFlags(r))||!e.isTypeReferenceNode(t)||e.length(t.typeArguments)>=Nc(r.target.typeParameters)}function L(t,r,n,i,a,o){if(r!==we&&i){var c=F(n,i);if(c&&!e.isFunctionLikeDeclaration(c)){var l=e.getEffectiveTypeAnnotationNode(c);if(xd(l)===r&&M(l,r)){var u=B(t,l,a,o);if(u)return u}}}var d=t.flags;8192&r.flags&&r.symbol===n&&(!t.enclosingDeclaration||e.some(n.declarations,(function(r){return e.getSourceFileOfNode(r)===e.getSourceFileOfNode(t.enclosingDeclaration)})))&&(t.flags|=1048576);var p=s(r,t);return t.flags=d,p}function j(t,r,n){var i,a,o=!1,s=e.getFirstIdentifier(t);if(e.isInJSFile(t)&&(e.isExportsIdentifier(s)||e.isModuleExportsAccessExpression(s.parent)||e.isQualifiedName(s.parent)&&e.isModuleIdentifier(s.parent.left)&&e.isExportsIdentifier(s.parent.right)))return{introducesError:o=!0,node:t};var c=fi(s,67108863,!0,!0);if(c&&(0!==ra(c,r.enclosingDeclaration,67108863,!1).accessibility?o=!0:(null===(a=null===(i=r.tracker)||void 0===i?void 0:i.trackSymbol)||void 0===a||a.call(i,c,r.enclosingDeclaration,67108863),null==n||n(c)),e.isIdentifier(t))){var l=262144&c.flags?w(Jo(c),r):e.factory.cloneNode(t);return l.symbol=c,{introducesError:o,node:e.setEmitFlags(e.setOriginalNode(l,t),16777216)}}return{introducesError:o,node:t}}function B(r,i,a,o){n&&n.throwIfCancellationRequested&&n.throwIfCancellationRequested();var c=!1,l=e.getSourceFileOfNode(i),u=e.visitNode(i,(function n(i){if(e.isJSDocAllType(i)||313===i.kind)return e.factory.createKeywordTypeNode(129);if(e.isJSDocUnknownType(i))return e.factory.createKeywordTypeNode(153);if(e.isJSDocNullableType(i))return e.factory.createUnionTypeNode([e.visitNode(i.type,n),e.factory.createLiteralTypeNode(e.factory.createNull())]);if(e.isJSDocOptionalType(i))return e.factory.createUnionTypeNode([e.visitNode(i.type,n),e.factory.createKeywordTypeNode(151)]);if(e.isJSDocNonNullableType(i))return e.visitNode(i.type,n);if(e.isJSDocVariadicType(i))return e.factory.createArrayTypeNode(e.visitNode(i.type,n));if(e.isJSDocTypeLiteral(i))return e.factory.createTypeLiteralNode(e.map(i.jsDocPropertyTags,(function(t){var a=e.isIdentifier(t.name)?t.name:t.name.right,o=Na(xd(i),a.escapedText),c=o&&t.typeExpression&&xd(t.typeExpression.type)!==o?s(o,r):void 0;return e.factory.createPropertySignature(void 0,a,t.isBracketed||t.typeExpression&&e.isJSDocOptionalType(t.typeExpression.type)?e.factory.createToken(57):void 0,c||t.typeExpression&&e.visitNode(t.typeExpression.type,n)||e.factory.createKeywordTypeNode(129))})));if(e.isTypeReferenceNode(i)&&e.isIdentifier(i.typeName)&&""===i.typeName.escapedText)return e.setOriginalNode(e.factory.createKeywordTypeNode(129),i);if((e.isExpressionWithTypeArguments(i)||e.isTypeReferenceNode(i))&&e.isJSDocIndexSignature(i))return e.factory.createTypeLiteralNode([e.factory.createIndexSignature(void 0,void 0,[e.factory.createParameterDeclaration(void 0,void 0,void 0,"x",void 0,e.visitNode(i.typeArguments[0],n))],e.visitNode(i.typeArguments[1],n))]);if(e.isJSDocFunctionType(i)){var u;return e.isJSDocConstructSignature(i)?e.factory.createConstructorTypeNode(i.modifiers,e.visitNodes(i.typeParameters,n),e.mapDefined(i.parameters,(function(t,r){return t.name&&e.isIdentifier(t.name)&&"new"===t.name.escapedText?void(u=t.type):e.factory.createParameterDeclaration(void 0,void 0,g(t),_(t,r),t.questionToken,e.visitNode(t.type,n),void 0)})),e.visitNode(u||i.type,n)||e.factory.createKeywordTypeNode(129)):e.factory.createFunctionTypeNode(e.visitNodes(i.typeParameters,n),e.map(i.parameters,(function(t,r){return e.factory.createParameterDeclaration(void 0,void 0,g(t),_(t,r),t.questionToken,e.visitNode(t.type,n),void 0)})),e.visitNode(i.type,n)||e.factory.createKeywordTypeNode(129))}if(e.isTypeReferenceNode(i)&&e.isInJSDoc(i)&&(!M(i,xd(i))||xl(i)||ke===ml(fl(i),788968,!0)))return e.setOriginalNode(s(xd(i),r),i);if(e.isLiteralImportTypeNode(i)){var d=Cn(i).resolvedSymbol;return!e.isInJSDoc(i)||!d||(i.isTypeOf||788968&d.flags)&&e.length(i.typeArguments)>=Nc(Eo(d))?e.factory.updateImportTypeNode(i,e.factory.updateLiteralTypeNode(i.argument,function(n,i){if(o){if(r.tracker&&r.tracker.moduleResolverHost){var a=LE(n);if(a){var s={getCanonicalFileName:e.createGetCanonicalFileName(!!t.useCaseSensitiveFileNames),getCurrentDirectory:function(){return r.tracker.moduleResolverHost.getCurrentDirectory()},getCommonSourceDirectory:function(){return r.tracker.moduleResolverHost.getCommonSourceDirectory()}},c=e.getResolvedExternalModuleName(s,a);return e.factory.createStringLiteral(c)}}}else if(r.tracker&&r.tracker.trackExternalModuleSymbolOfImportTypeNode){var l=_i(i,i,void 0);l&&r.tracker.trackExternalModuleSymbolOfImportTypeNode(l)}return i}(i,i.argument.literal)),i.qualifier,e.visitNodes(i.typeArguments,n,e.isTypeNode),i.isTypeOf):e.setOriginalNode(s(xd(i),r),i)}if(e.isEntityName(i)||e.isEntityNameExpression(i)){var p=j(i,r,a),f=p.introducesError,m=p.node;if(c=c||f,m!==i)return m}l&&e.isTupleTypeNode(i)&&e.getLineAndCharacterOfPosition(l,i.pos).line===e.getLineAndCharacterOfPosition(l,i.end).line&&e.setEmitFlags(i,1);return e.visitEachChild(i,n,e.nullTransformationContext);function g(t){return t.dotDotDotToken||(t.type&&e.isJSDocVariadicType(t.type)?e.factory.createToken(25):void 0)}function _(t,r){return t.name&&e.isIdentifier(t.name)&&"this"===t.name.escapedText?"this":g(t)?"args":"arg"+r}}));if(!c)return u===i?e.setTextRange(e.factory.cloneNode(i),i):u}}(),ne=e.createSymbolTable(),ie=yn(4,"undefined");ie.declarations=[];var ae=yn(1536,"globalThis",8);ae.exports=ne,ae.declarations=[],ne.set(ae.escapedName,ae);var oe,se=yn(4,"arguments"),ce=yn(4,"require"),le={getNodeCount:function(){return e.sum(t.getSourceFiles(),"nodeCount")},getIdentifierCount:function(){return e.sum(t.getSourceFiles(),"identifierCount")},getSymbolCount:function(){return e.sum(t.getSourceFiles(),"symbolCount")+v},getTypeCatalog:function(){return w},getTypeCount:function(){return y},getInstantiationCount:function(){return k},getRelationCacheSizes:function(){return{assignable:an.size,identity:sn.size,subtype:rn.size,strictSubtype:nn.size}},isUndefinedSymbol:function(e){return e===ie},isArgumentsSymbol:function(e){return e===se},isUnknownSymbol:function(e){return e===ke},getMergedSymbol:Ci,getDiagnostics:qx,getGlobalDiagnostics:function(){return Jx(),Qr.getGlobalDiagnostics()},getRecursionIdentity:Xp,getTypeOfSymbolAtLocation:function(t,r){var n=e.getParseTreeNode(r);return n?function(t,r){if(t=t.exportSymbol||t,78===r.kind&&(e.isRightSideOfQualifiedNameOrPropertyAccess(r)&&(r=r.parent),e.isExpressionNode(r)&&!e.isAssignmentTarget(r))){var n=ub(r);if(Ri(Cn(r).resolvedSymbol)===t)return n}return _o(t)}(t,n):we},getSymbolsOfParameterPropertyDeclaration:function(t,r){var n=e.getParseTreeNode(t,e.isParameter);return void 0===n?e.Debug.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):function(t,r){var n=t.parent,i=t.parent.parent,a=Nn(n.locals,r,111551),o=Nn(ss(i.symbol),r,111551);if(a&&o)return[a,o];return e.Debug.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}(n,e.escapeLeadingUnderscores(r))},getDeclaredTypeOfSymbol:Jo,getPropertiesOfType:Hs,getPropertyOfType:function(t,r){return gc(t,e.escapeLeadingUnderscores(r))},getPrivateIdentifierPropertyOfType:function(t,r,n){var i=e.getParseTreeNode(n);if(i){var a=Sh(e.escapeLeadingUnderscores(r),i);return a?Dh(t,a):void 0}},getTypeOfPropertyOfType:function(t,r){return Na(t,e.escapeLeadingUnderscores(r))},getIndexInfoOfType:bc,getSignaturesOfType:hc,getIndexTypeOfType:kc,getBaseTypes:Po,getBaseTypeOfLiteralType:mf,getWidenedType:Hf,getTypeFromTypeNode:function(t){var r=e.getParseTreeNode(t,e.isTypeNode);return r?xd(r):we},getParameterType:nv,getPromisedTypeOfPromise:Bb,getAwaitedType:function(e){return Ub(e)},getReturnTypeOfSignature:Bc,isNullableType:mh,getNullableType:Af,getNonNullableType:Pf,getNonOptionalType:Of,getTypeArguments:ll,typeToTypeNode:re.typeToTypeNode,indexInfoToIndexSignatureDeclaration:re.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:re.signatureToSignatureDeclaration,symbolToEntityName:re.symbolToEntityName,symbolToExpression:re.symbolToExpression,symbolToTypeParameterDeclarations:re.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:re.symbolToParameterDeclaration,typeParameterToDeclaration:re.typeParameterToDeclaration,getSymbolsInScope:function(t,r){var n=e.getParseTreeNode(t);return n?function(t,r){if(16777216&t.flags)return[];var n=e.createSymbolTable(),i=!1;return a(),n.delete("this"),Sc(n);function a(){for(;t;){switch(t.locals&&!An(t)&&s(t.locals,r),t.kind){case 300:if(!e.isExternalOrCommonJsModule(t))break;case 259:s(Ai(t).exports,2623475&r);break;case 258:s(Ai(t).exports,8&r);break;case 223:t.name&&o(t.symbol,r);case 254:case 256:i||s(ss(Ai(t)),788968&r);break;case 209:t.name&&o(t.symbol,r)}e.introducesArgumentsExoticObject(t)&&o(se,r),i=e.hasSyntacticModifier(t,32),t=t.parent}s(ne,r)}function o(t,r){if(e.getCombinedLocalAndExportSymbolFlags(t)&r){var i=t.escapedName;n.has(i)||n.set(i,t)}}function s(e,t){t&&e.forEach((function(e){o(e,t)}))}}(n,r):[]},getSymbolAtLocation:function(t){var r=e.getParseTreeNode(t);return r?Yx(r,!0):void 0},getShorthandAssignmentValueSymbol:function(t){var r=e.getParseTreeNode(t);return r?function(e){if(e&&292===e.kind)return fi(e.name,2208703);return}(r):void 0},getExportSpecifierLocalTargetSymbol:function(t){var r=e.getParseTreeNode(t,e.isExportSpecifier);return r?function(t){return e.isExportSpecifier(t)?t.parent.parent.moduleSpecifier?Qn(t.parent.parent,t):fi(t.propertyName||t.name,2998271):fi(t,2998271)}(r):void 0},getExportSymbolOfSymbol:function(e){return Ci(e.exportSymbol||e)},getTypeAtLocation:function(t){var r=e.getParseTreeNode(t);return r?Xx(r):we},tryGetTypeAtLocationWithoutCheck:function(t){var r=e.getParseTreeNode(t);return r?function(t){if(e.isSourceFile(t)&&!e.isExternalModule(t))return we;if(16777216&t.flags)return we;var r=e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments(t),n=r&&Oo(Ai(r.class));if(e.isPartOfTypeNode(t)){var i=xd(t);return n?ls(i,n.thisType):i}if(e.isExpressionNode(t))return Zx(t,32);return Xx(t)}(r):we},getTypeOfAssignmentPattern:function(t){var r=e.getParseTreeNode(t,e.isAssignmentPattern);return r&&Qx(r)||we},getPropertySymbolOfDestructuringAssignment:function(t){var r=e.getParseTreeNode(t,e.isIdentifier);return r?function(t){var r=Qx(e.cast(t.parent.parent,e.isAssignmentPattern));return r&&gc(r,t.escapedText)}(r):void 0},signatureToString:function(t,r,n,i){return ua(t,e.getParseTreeNode(r),n,i)},typeToString:function(t,r,n){return da(t,e.getParseTreeNode(r),n)},symbolToString:function(t,r,n,i){return la(t,e.getParseTreeNode(r),n,i)},typePredicateToString:function(t,r,n){return ha(t,e.getParseTreeNode(r),n)},writeSignature:function(t,r,n,i,a){return ua(t,e.getParseTreeNode(r),n,i,a)},writeType:function(t,r,n,i){return da(t,e.getParseTreeNode(r),n,i)},writeSymbol:function(t,r,n,i,a){return la(t,e.getParseTreeNode(r),n,i,a)},writeTypePredicate:function(t,r,n,i){return ha(t,e.getParseTreeNode(r),n,i)},getAugmentedPropertiesOfType:rE,getRootSymbols:function t(r){var n=function(t){if(6&e.getCheckFlags(t))return e.mapDefined(Tn(t).containingType.types,(function(e){return gc(e,t.escapedName)}));if(33554432&t.flags){var r=t,n=r.leftSpread,i=r.rightSpread,a=r.syntheticOrigin;return n?[n,i]:a?[a]:e.singleElementArray(function(e){var t,r=e;for(;r=Tn(r).target;)t=r;return t}(t))}return}(r);return n?e.flatMap(n,t):[r]},getSymbolOfExpando:Ry,getContextualType:function(t,r){var n=e.getParseTreeNode(t,e.isExpression);if(n){var i=e.findAncestor(n,e.isCallLikeExpression),a=i&&Cn(i).resolvedSignature;if(4&r&&i){var o=n;do{Cn(o).skipDirectInference=!0,o=o.parent}while(o&&o!==i);Cn(i).resolvedSignature=void 0}var s=x_(n,r);if(4&r&&i){o=n;do{Cn(o).skipDirectInference=void 0,o=o.parent}while(o&&o!==i);Cn(i).resolvedSignature=a}return s}},getContextualTypeForObjectLiteralElement:function(t){var r=e.getParseTreeNode(t,e.isObjectLiteralElementLike);return r?m_(r):void 0},getContextualTypeForArgumentAtIndex:function(t,r){var n=e.getParseTreeNode(t,e.isCallLikeExpression);return n&&c_(n,r)},getContextualTypeForJsxAttribute:function(t){var r=e.getParseTreeNode(t,e.isJsxAttributeLike);return r&&h_(r)},isContextSensitive:Qd,getFullyQualifiedName:pi,tryGetResolvedSignatureWithoutCheck:function(e,t,r){return ue(e,t,r,32)},getResolvedSignature:function(e,t,r){return ue(e,t,r,0)},getResolvedSignatureForSignatureHelp:function(e,t,r){return ue(e,t,r,16)},getExpandedParameters:gs,hasEffectiveRestParameter:cv,getConstantValue:function(t){var r=e.getParseTreeNode(t,EE);return r?SE(r):void 0},isValidPropertyAccess:function(t,r){var n=e.getParseTreeNode(t,e.isPropertyAccessOrQualifiedNameOrImportTypeNode);return!!n&&function(e,t){switch(e.kind){case 202:return jh(e,106===e.expression.kind,t,Hf(fb(e.expression)));case 158:return jh(e,!1,t,Hf(fb(e.left)));case 196:return jh(e,!1,t,xd(e))}}(n,e.escapeLeadingUnderscores(r))},isValidPropertyAccessForCompletions:function(t,r,n){var i=e.getParseTreeNode(t,e.isPropertyAccessExpression);return!!i&&function(e,t,r){return jh(e,202===e.kind&&106===e.expression.kind,r.escapedName,t)}(i,r,n)},getSignatureFromDeclaration:function(t){var r=e.getParseTreeNode(t,e.isFunctionLike);return r?Ic(r):void 0},isImplementationOfOverload:function(t){var r=e.getParseTreeNode(t,e.isFunctionLike);return r?_E(r):void 0},getImmediateAliasedSymbol:j_,getAliasedSymbol:ai,getEmitResolver:function(e,t){return qx(e,t),te},getExportsOfModule:xi,getExportsAndPropertiesOfModule:function(t){var r=xi(t),n=vi(t);n!==t&&e.addRange(r,Hs(_o(n)));return r},getSymbolWalker:e.createGetSymbolWalker((function(e){return qc(e)||Ee}),jc,Bc,Po,Us,_o,Am,vc,Ws,e.getFirstIdentifier,ll),getAmbientModules:function(){gt||(gt=[],ne.forEach((function(e,t){c.test(t)&>.push(e)})));return gt},getJsxIntrinsicTagNamesAt:function(t){var r=W_(N.IntrinsicElements,t);return r?Hs(r):e.emptyArray},isOptionalParameter:function(t){var r=e.getParseTreeNode(t,e.isParameter);return!!r&&Tc(r)},tryGetMemberInModuleExports:function(t,r){return Ei(e.escapeLeadingUnderscores(t),r)},tryGetMemberInModuleExportsAndProperties:function(t,r){return function(t,r){var n=Ei(t,r);if(n)return n;var i=vi(r);if(i===r)return;var a=_o(i);return 131068&a.flags||1&e.getObjectFlags(a)||uf(a)?void 0:gc(a,t)}(e.escapeLeadingUnderscores(t),r)},tryFindAmbientModuleWithoutAugmentations:function(e){return wc(e,!1)},getApparentType:ac,getUnionType:ou,isTypeAssignableTo:cp,createAnonymousType:Wi,createSignature:ds,createSymbol:yn,createIndexInfo:Qc,getAnyType:function(){return Ee},getStringType:function(){return Re},getNumberType:function(){return Me},createPromiseType:_v,createArrayType:jl,getElementTypeOfArrayType:of,getBooleanType:function(){return qe},getFalseType:function(e){return e?je:Be},getTrueType:function(e){return e?ze:Ue},getVoidType:function(){return Ve},getUndefinedType:function(){return Ne},getNullType:function(){return Fe},getESSymbolType:function(){return Je},getNeverType:function(){return He},getOptionalType:function(){return Ie},isSymbolAccessible:ra,isArrayType:rf,isTupleType:vf,isArrayLikeType:sf,isTypeInvalidDueToUnionDiscriminant:function(e,t){return t.properties.some((function(t){var r=t.name&&vu(t.name),n=r&&Zo(r)?is(r):void 0,i=void 0===n?void 0:Na(e,n);return!!i&&ff(i)&&!cp(Xx(t),i)}))},getAllPossiblePropertiesOfTypes:function(t){var r=ou(t);if(!(1048576&r.flags))return rE(r);for(var n=e.createSymbolTable(),i=0,a=t;i<a.length;i++)for(var o=0,s=rE(a[i]);o<s.length;o++){var c=s[o].escapedName;if(!n.has(c)){var l=sc(r,c);l&&n.set(c,l)}}return e.arrayFrom(n.values())},getSuggestedSymbolForNonexistentProperty:Ph,getSuggestionForNonexistentProperty:Fh,getSuggestedSymbolForNonexistentJSXAttribute:Ih,getSuggestedSymbolForNonexistentSymbol:function(t,r,n){return Oh(t,e.escapeLeadingUnderscores(r),n)},getSuggestionForNonexistentSymbol:function(t,r,n){return function(t,r,n){var i=Oh(t,r,n);return i&&e.symbolName(i)}(t,e.escapeLeadingUnderscores(r),n)},getSuggestedSymbolForNonexistentModule:Rh,getSuggestionForNonexistentExport:function(t,r){var n=Rh(t,r);return n&&e.symbolName(n)},getBaseConstraintOfType:Qs,getDefaultFromTypeParameter:function(e){return e&&262144&e.flags?nc(e):void 0},resolveName:function(t,r,n,i){return Fn(r,e.escapeLeadingUnderscores(t),n,void 0,void 0,!1,i)},getJsxNamespace:function(t){return e.unescapeLeadingUnderscores(un(t))},getJsxFragmentFactory:function(t){var r=ME(t);return r&&e.unescapeLeadingUnderscores(e.getFirstIdentifier(r).escapedText)},getAccessibleSymbolChain:Yi,getTypePredicateOfSignature:jc,resolveExternalModuleName:function(t){var r=e.getParseTreeNode(t,e.isExpression);return r&&gi(r,r,!0)},resolveExternalModuleSymbol:vi,tryGetThisTypeAt:function(t,r){var n=e.getParseTreeNode(t);return n&&Yg(n,r)},getTypeArgumentConstraint:function(t){var r=e.getParseTreeNode(t,e.isTypeNode);return r&&function(t){var r=e.tryCast(t.parent,e.isTypeReferenceType);if(!r)return;var n=Nb(r),i=Ws(n[r.typeArguments.indexOf(t)]);return i&&Wd(i,Td(n,Cb(r,n)))}(r)},getSuggestionDiagnostics:function(r,i){var o,s=e.getParseTreeNode(r,e.isSourceFile)||e.Debug.fail("Could not determine parsed source file.");if(e.skipTypeChecking(s,J,t)||s.isDeclarationFile&&J.needDoArkTsLinter)return e.emptyArray;try{return n=i,Bx(s),e.Debug.assert(!!(1&Cn(s).flags)),o=e.addRange(o,Zr.getDiagnostics(s.fileName)),Zb(Ux(s),(function(t,r,n){e.containsParseError(t)||zx(r,!!(8388608&t.flags))||(o||(o=[])).push(a(a({},n),{category:e.DiagnosticCategory.Suggestion}))})),o||e.emptyArray}finally{n=void 0}},runWithCancellationToken:function(e,t){try{return n=e,t(le)}finally{n=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:Eo,isDeclarationVisible:Ea};function ue(t,r,n,i){var a=e.getParseTreeNode(t,e.isCallLikeExpression);oe=n;var o=a?Iy(a,r,i):void 0;return oe=void 0,o}var de=new e.Map,pe=new e.Map,fe=new e.Map,me=new e.Map,ge=new e.Map,_e=new e.Map,he=new e.Map,ye=new e.Map,ve=[],be=new e.Map,ke=yn(4,"unknown"),xe=yn(0,"__resolving__"),Ee=zi(1,"any"),Se=zi(1,"any"),De=zi(1,"any"),we=zi(1,"error"),Te=zi(1,"any",524288),Ce=zi(1,"intrinsic"),Ae=zi(2,"unknown"),Ne=zi(32768,"undefined"),Pe=W?Ne:zi(32768,"undefined",524288),Ie=zi(32768,"undefined"),Fe=zi(65536,"null"),Oe=W?Fe:zi(65536,"null",524288),Re=zi(4,"string"),Me=zi(8,"number"),Le=zi(64,"bigint"),je=zi(512,"false"),Be=zi(512,"false"),ze=zi(512,"true"),Ue=zi(512,"true");ze.regularType=Ue,ze.freshType=ze,Ue.regularType=Ue,Ue.freshType=ze,je.regularType=Be,je.freshType=je,Be.regularType=Be,Be.freshType=je;var qe=Ui([Be,Ue]);Ui([Be,ze]),Ui([je,Ue]),Ui([je,ze]);var Je=zi(4096,"symbol"),Ve=zi(16384,"void"),He=zi(131072,"never"),Ke=zi(131072,"never"),We=zi(131072,"never",2097152),Ge=zi(131072,"never"),$e=zi(131072,"never"),Ye=zi(67108864,"object"),Xe=ou([Re,Me,Je]),Qe=Z?Re:Xe,Ze=ou([Me,Le]),et=ou([Re,Me,qe,Le,Fe,Ne]),tt=Nd((function(e){return 262144&e.flags?(t=e).constraint===Ae?t:t.restrictiveInstantiation||(t.restrictiveInstantiation=Ji(t.symbol),t.restrictiveInstantiation.constraint=Ae,t.restrictiveInstantiation):e;var t})),rt=Nd((function(e){return 262144&e.flags?De:e})),nt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),it=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0);it.objectFlags|=4096;var at=yn(2048,"__type");at.members=e.createSymbolTable();var ot=Wi(at,T,e.emptyArray,e.emptyArray,void 0,void 0),st=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0);st.instantiations=new e.Map;var ct=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0);ct.objectFlags|=2097152;var lt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),ut=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),dt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),pt=Ji(),ft=Ji();ft.constraint=pt;var mt,gt,_t,ht,yt,vt,bt,kt,xt,Et,St,Dt,wt,Tt,Ct,At,Nt,Pt,It,Ft,Ot,Rt,Mt,Lt,jt,Bt,zt,Ut,qt,Jt,Vt,Ht,Kt,Wt,Gt,$t,Yt,Xt,Qt,Zt,er,tr,rr,nr,ir,ar,or,sr=Ji(),cr=Ac(1,"<<unresolved>>",0,Ee),lr=ds(void 0,void 0,void 0,e.emptyArray,Ee,void 0,0,0),ur=ds(void 0,void 0,void 0,e.emptyArray,we,void 0,0,0),dr=ds(void 0,void 0,void 0,e.emptyArray,Ee,void 0,0,0),pr=ds(void 0,void 0,void 0,e.emptyArray,Ke,void 0,0,0),fr=Qc(Re,!0),mr=new e.Map,gr={get yieldType(){return e.Debug.fail("Not supported")},get returnType(){return e.Debug.fail("Not supported")},get nextType(){return e.Debug.fail("Not supported")}},_r=Rk(Ee,Ee,Ee),hr=Rk(Ee,Ee,Ae),yr=Rk(He,Ee,Ne),vr={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:function(e){return Wt||(Wt=Al("AsyncIterator",3,e))||st},getGlobalIterableType:function(e){return Kt||(Kt=Al("AsyncIterable",1,e))||st},getGlobalIterableIteratorType:function(e){return Gt||(Gt=Al("AsyncIterableIterator",1,e))||st},getGlobalGeneratorType:function(e){return $t||($t=Al("AsyncGenerator",3,e))||st},resolveIterationType:Ub,mustHaveANextMethodDiagnostic:e.Diagnostics.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:e.Diagnostics.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:e.Diagnostics.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},br={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:function(e){return Ut||(Ut=Al("Iterator",3,e))||st},getGlobalIterableType:Ol,getGlobalIterableIteratorType:function(e){return qt||(qt=Al("IterableIterator",1,e))||st},getGlobalGeneratorType:function(e){return Jt||(Jt=Al("Generator",3,e))||st},resolveIterationType:function(e,t){return e},mustHaveANextMethodDiagnostic:e.Diagnostics.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:e.Diagnostics.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:e.Diagnostics.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},kr=new e.Map,xr=!1,Er=new e.Map,Sr=0,Dr=0,wr=0,Tr=!1,Cr=0,Ar=hd(""),Nr=hd(0),Pr=hd({negative:!1,base10Value:"0"}),Ir=[],Fr=[],Or=[],Rr=0,Mr=10,Lr=[],jr=[],Br=[],zr=[],Ur=[],qr=[],Jr=[],Vr=[],Hr=[],Kr=[],Wr=[],Gr=[],$r=[],Yr=[],Xr=[],Qr=e.createDiagnosticCollection(),Zr=e.createDiagnosticCollection(),en=new e.Map(e.getEntries({string:Re,number:Me,bigint:Le,boolean:qe,symbol:Je,undefined:Ne})),tn=ou(e.arrayFrom(E.keys(),hd)),rn=new e.Map,nn=new e.Map,an=new e.Map,on=new e.Map,sn=new e.Map,cn=new e.Map,ln=e.createSymbolTable();return ln.set(ie.escapedName,ie),function(){for(var r=0,n=t.getSourceFiles();r<n.length;r++){var i=n[r];e.bindSourceFile(i,J)}var a;mt=new e.Map;for(var o=0,s=t.getSourceFiles();o<s.length;o++){if(!(i=s[o]).redirectInfo){if(!e.isExternalOrCommonJsModule(i)){var c=i.locals.get("globalThis");if(c)for(var l=0,u=c.declarations;l<u.length;l++){var d=u[l];Qr.add(e.createDiagnosticForNode(d,e.Diagnostics.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"))}Dn(ne,i.locals)}if(i.jsGlobalAugmentations&&Dn(ne,i.jsGlobalAugmentations),i.patternAmbientModules&&i.patternAmbientModules.length&&(_t=e.concatenate(_t,i.patternAmbientModules)),i.moduleAugmentations.length&&(a||(a=[])).push(i.moduleAugmentations),i.symbol&&i.symbol.globalExports)i.symbol.globalExports.forEach((function(e,t){ne.has(t)||ne.set(t,e)}))}}if(a)for(var p=0,f=a;p<f.length;p++)for(var m=0,g=f[p];m<g.length;m++){var _=g[m];e.isGlobalScopeAugmentation(_.parent)&&wn(_)}(function(t,r,n){r.forEach((function(r,i){var a=t.get(i);a?e.forEach(a.declarations,function(t,r){return function(n){return Qr.add(e.createDiagnosticForNode(n,r,t))}}(e.unescapeLeadingUnderscores(i),n)):t.set(i,r)}))})(ne,ln,e.Diagnostics.Declaration_name_conflicts_with_built_in_global_identifier_0),Tn(ie).type=Pe,Tn(se).type=Al("IArguments",0,!0),Tn(ke).type=we,Tn(ae).type=qi(16,ae),xt=Al("Array",1,!0),yt=Al("Object",0,!0),vt=Al("Function",0,!0),bt=$&&Al("CallableFunction",0,!0)||vt,kt=$&&Al("NewableFunction",0,!0)||vt,St=Al("String",0,!0),Dt=Al("Number",0,!0),wt=Al("Boolean",0,!0),Tt=Al("RegExp",0,!0),At=jl(Ee),(Nt=jl(Se))===nt&&(Nt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0));if(Et=Rl("ReadonlyArray",1)||xt,Pt=Et?Ml(Et,[Ee]):At,Ct=Rl("ThisType",1),a)for(var h=0,y=a;h<y.length;h++)for(var v=0,b=y[h];v<b.length;v++){_=b[v];e.isGlobalScopeAugmentation(_.parent)||wn(_)}mt.forEach((function(t){var r=t.firstFile,n=t.secondFile,i=t.conflictingSymbols;if(i.size<8)i.forEach((function(t,r){for(var n=t.isBlockScoped,i=t.firstFileLocations,a=t.secondFileLocations,o=n?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0,s=0,c=i;s<c.length;s++){Sn(c[s],o,r,a)}for(var l=0,u=a;l<u.length;l++){Sn(u[l],o,r,i)}}));else{var a=e.arrayFrom(i.keys()).join(", ");Qr.add(e.addRelatedInfo(e.createDiagnosticForNode(r,e.Diagnostics.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,a),e.createDiagnosticForNode(n,e.Diagnostics.Conflicts_are_in_this_file))),Qr.add(e.addRelatedInfo(e.createDiagnosticForNode(n,e.Diagnostics.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,a),e.createDiagnosticForNode(r,e.Diagnostics.Conflicts_are_in_this_file)))}})),mt=void 0}(),le;function un(t){if(t){var r=e.getSourceFileOfNode(t);if(r)if(e.isJsxOpeningFragment(t)){if(r.localJsxFragmentNamespace)return r.localJsxFragmentNamespace;var n=r.pragmas.get("jsxfrag");if(n){var i=e.isArray(n)?n[0]:n;if(r.localJsxFragmentFactory=e.parseIsolatedEntityName(i.arguments.factory,V),e.visitNode(r.localJsxFragmentFactory,s),r.localJsxFragmentFactory)return r.localJsxFragmentNamespace=e.getFirstIdentifier(r.localJsxFragmentFactory).escapedText}var a=ME(t);if(a)return r.localJsxFragmentFactory=a,r.localJsxFragmentNamespace=e.getFirstIdentifier(a).escapedText}else{if(r.localJsxNamespace)return r.localJsxNamespace;var o=r.pragmas.get("jsx");if(o){i=e.isArray(o)?o[0]:o;if(r.localJsxFactory=e.parseIsolatedEntityName(i.arguments.factory,V),e.visitNode(r.localJsxFactory,s),r.localJsxFactory)return r.localJsxNamespace=e.getFirstIdentifier(r.localJsxFactory).escapedText}}}return ir||(ir="React",J.jsxFactory?(ar=e.parseIsolatedEntityName(J.jsxFactory,V),e.visitNode(ar,s),ar&&(ir=e.getFirstIdentifier(ar).escapedText)):J.reactNamespace&&(ir=e.escapeLeadingUnderscores(J.reactNamespace))),ar||(ar=e.factory.createQualifiedName(e.factory.createIdentifier(e.unescapeLeadingUnderscores(ir)),"createElement")),ir;function s(t){return e.setTextRangePosEnd(t,-1,-1),e.visitEachChild(t,s,e.nullTransformationContext)}}function dn(e,t,r,n,i,a,o){var s=pn(t,r,n,i,a,o);return s.skippedOn=e,s}function pn(t,r,n,i,a,o){var s=t?e.createDiagnosticForNode(t,r,n,i,a,o):e.createCompilerDiagnostic(r,n,i,a,o);return Qr.add(s),s}function fn(t,r){t?Qr.add(r):Zr.add(a(a({},r),{category:e.DiagnosticCategory.Suggestion}))}function mn(t,r,n,i,a,o,s){if(r.pos<0||r.end<0){if(!t)return;var c=e.getSourceFileOfNode(r);fn(t,"message"in n?e.createFileDiagnostic(c,0,0,n,i,a,o,s):e.createDiagnosticForFileFromMessageChain(c,n))}else fn(t,"message"in n?e.createDiagnosticForNode(r,n,i,a,o,s):e.createDiagnosticForNodeFromMessageChain(r,n))}function gn(t,r,n,i,a,o,s){var c=pn(t,n,i,a,o,s);if(r){var l=e.createDiagnosticForNode(t,e.Diagnostics.Did_you_forget_to_use_await);e.addRelatedInfo(c,l)}return c}function _n(t,r){var n=Array.isArray(t)?e.forEach(t,e.getJSDocDeprecatedTag):e.getJSDocDeprecatedTag(t);return n&&e.addRelatedInfo(r,e.createDiagnosticForNode(n,e.Diagnostics.The_declaration_was_marked_as_deprecated_here)),Zr.add(r),r}function hn(t,r,n){return _n(r,e.createDiagnosticForNode(t,e.Diagnostics._0_is_deprecated,n))}function yn(e,t,r){v++;var n=new g(33554432|e,t);return n.checkFlags=r||0,n}function vn(e){var t=0;return 2&e&&(t|=111551),1&e&&(t|=111550),4&e&&(t|=0),8&e&&(t|=900095),16&e&&(t|=110991),32&e&&(t|=899503),64&e&&(t|=788872),256&e&&(t|=899327),128&e&&(t|=899967),512&e&&(t|=110735),8192&e&&(t|=103359),32768&e&&(t|=46015),65536&e&&(t|=78783),262144&e&&(t|=526824),524288&e&&(t|=788968),2097152&e&&(t|=2097152),t}function bn(e,t){t.mergeId||(t.mergeId=p,p++),Lr[t.mergeId]=e}function kn(t){var r=yn(t.flags,t.escapedName);return r.declarations=t.declarations?t.declarations.slice():[],r.parent=t.parent,t.valueDeclaration&&(r.valueDeclaration=t.valueDeclaration),t.constEnumOnlyModule&&(r.constEnumOnlyModule=!0),t.members&&(r.members=new e.Map(t.members)),t.exports&&(r.exports=new e.Map(t.exports)),bn(r,t),r}function xn(t,r,n){if(void 0===n&&(n=!1),!(t.flags&vn(r.flags))||67108864&(r.flags|t.flags)){if(r===t)return t;if(!(33554432&t.flags)){var i=ii(t);if(i===ke)return r;t=kn(i)}512&r.flags&&512&t.flags&&t.constEnumOnlyModule&&!r.constEnumOnlyModule&&(t.constEnumOnlyModule=!1),t.flags|=r.flags,r.valueDeclaration&&e.setValueDeclaration(t,r.valueDeclaration),e.addRange(t.declarations,r.declarations),r.members&&(t.members||(t.members=e.createSymbolTable()),Dn(t.members,r.members,n)),r.exports&&(t.exports||(t.exports=e.createSymbolTable()),Dn(t.exports,r.exports,n)),n||bn(t,r)}else if(1024&t.flags)t!==ae&&pn(e.getNameOfDeclaration(r.declarations[0]),e.Diagnostics.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,la(t));else{var a=!!(384&t.flags||384&r.flags),o=!!(2&t.flags||2&r.flags),s=a?e.Diagnostics.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:o?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0,c=r.declarations&&e.getSourceFileOfNode(r.declarations[0]),l=t.declarations&&e.getSourceFileOfNode(t.declarations[0]),u=la(r);if(c&&l&&mt&&!a&&c!==l){var d=-1===e.comparePaths(c.path,l.path)?c:l,p=d===c?l:c,f=e.getOrUpdate(mt,d.path+"|"+p.path,(function(){return{firstFile:d,secondFile:p,conflictingSymbols:new e.Map}})),m=e.getOrUpdate(f.conflictingSymbols,u,(function(){return{isBlockScoped:o,firstFileLocations:[],secondFileLocations:[]}}));g(m.firstFileLocations,r),g(m.secondFileLocations,t)}else En(r,s,u,t),En(t,s,u,r)}return t;function g(t,r){for(var n=0,i=r.declarations;n<i.length;n++){var a=i[n];e.pushIfUnique(t,a)}}}function En(t,r,n,i){e.forEach(t.declarations,(function(e){Sn(e,r,n,i.declarations)}))}function Sn(t,r,n,i){for(var a=(e.getExpandoInitializer(t,!1)?e.getNameOfExpando(t):e.getNameOfDeclaration(t))||t,o=function(t,r,n,i,a,o){var s=t?e.createDiagnosticForNode(t,r,n,i,a,o):e.createCompilerDiagnostic(r,n,i,a,o);return Qr.lookup(s)||(Qr.add(s),s)}(a,r,n),s=function(t){var r=(e.getExpandoInitializer(t,!1)?e.getNameOfExpando(t):e.getNameOfDeclaration(t))||t;if(r===a)return"continue";o.relatedInformation=o.relatedInformation||[];var i=e.createDiagnosticForNode(r,e.Diagnostics._0_was_also_declared_here,n),s=e.createDiagnosticForNode(r,e.Diagnostics.and_here);if(e.length(o.relatedInformation)>=5||e.some(o.relatedInformation,(function(t){return 0===e.compareDiagnostics(t,s)||0===e.compareDiagnostics(t,i)})))return"continue";e.addRelatedInfo(o,e.length(o.relatedInformation)?s:i)},c=0,l=i||e.emptyArray;c<l.length;c++){s(l[c])}}function Dn(e,t,r){void 0===r&&(r=!1),t.forEach((function(t,n){var i=e.get(n);e.set(n,i?xn(i,t,r):t)}))}function wn(t){var r,n,i=t.parent;if(i.symbol.declarations[0]===i)if(e.isGlobalScopeAugmentation(i))Dn(ne,i.symbol.exports);else{var a=_i(t,t,8388608&t.parent.parent.flags?void 0:e.Diagnostics.Invalid_module_name_in_augmentation_module_0_cannot_be_found,!0);if(!a)return;if(1920&(a=vi(a)).flags)if(e.some(_t,(function(e){return a===e.symbol}))){var o=xn(i.symbol,a,!0);ht||(ht=new e.Map),ht.set(t.text,o)}else{if((null===(r=a.exports)||void 0===r?void 0:r.get("__export"))&&(null===(n=i.symbol.exports)||void 0===n?void 0:n.size))for(var s=os(a,"resolvedExports"),c=0,l=e.arrayFrom(i.symbol.exports.entries());c<l.length;c++){var u=l[c],d=u[0],p=u[1];s.has(d)&&!a.exports.has(d)&&xn(s.get(d),p)}xn(a,i.symbol)}else pn(t,e.Diagnostics.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,t.text)}else e.Debug.assert(i.symbol.declarations.length>1)}function Tn(e){if(33554432&e.flags)return e;var t=R(e);return jr[t]||(jr[t]=new I)}function Cn(e){var t=O(e);return Br[t]||(Br[t]=new F)}function An(t){return 300===t.kind&&!e.isExternalOrCommonJsModule(t)}function Nn(r,n,i,a){if(i){var o=Ci(r.get(n));if(o){if(e.Debug.assert(!(1&e.getCheckFlags(o)),"Should never get an instantiated symbol here."),!function(r,n){if(!n||!r.declarations||!r.declarations.length)return!0;var i=e.getEtsLibs(t),a=e.getSourceFileOfNode(n).fileName.trim();if(!a)return!0;var o=null===e.sys||void 0===e.sys?void 0:e.sys.resolvePath(a);return!(!(null==o?void 0:o.endsWith(".ets"))&&!i.includes(o)&&!r.declarations.filter((function(t){if(!e.getSourceFileOfNode(t).fileName)return!0;var r=null===e.sys||void 0===e.sys?void 0:e.sys.resolvePath(e.getSourceFileOfNode(t).fileName);return-1===i.indexOf(r)})).length)}(o,a))return;if(o.flags&i)return o;if(2097152&o.flags){var s=ai(o);if(s===ke||s.flags&i)return o}}}}function Pn(r,n){var i=e.getSourceFileOfNode(r),a=e.getSourceFileOfNode(n),o=e.getEnclosingBlockScopeContainer(r);if(i!==a){if(H&&(i.externalModuleIndicator||a.externalModuleIndicator)||!e.outFile(J)||Nm(n)||8388608&r.flags)return!0;if(l(n,r))return!0;var s=t.getSourceFiles();return s.indexOf(i)<=s.indexOf(a)}if(r.pos<=n.pos&&(!e.isPropertyDeclaration(r)||!e.isThisProperty(n.parent)||r.initializer||r.exclamationToken)){if(199===r.kind){var c=e.getAncestor(n,199);return c?e.findAncestor(c,e.isBindingElement)!==e.findAncestor(r,e.isBindingElement)||r.pos<c.pos:Pn(e.getAncestor(r,251),n)}return 251===r.kind?!function(t,r){switch(t.parent.parent.kind){case 234:case 239:case 241:if(qn(r,t,o))return!0}var n=t.parent.parent;return e.isForInOrOfStatement(n)&&qn(r,n.expression,o)}(r,n):e.isClassDeclaration(r)?!e.findAncestor(n,(function(t){return e.isComputedPropertyName(t)&&t.parent.parent===r})):e.isPropertyDeclaration(r)?!u(r,n,!1):!e.isParameterPropertyDeclaration(r,r.parent)||!(99===J.target&&J.useDefineForClassFields&&e.getContainingClass(r)===e.getContainingClass(n)&&l(n,r))}return!!(273===n.parent.kind||269===n.parent.kind&&n.parent.isExportEquals)||(!(269!==n.kind||!n.isExportEquals)||(!!(4194304&n.flags||Nm(n)||e.findAncestor(n,(function(t){return e.isInterfaceDeclaration(t)||e.isTypeAliasDeclaration(t)})))||!!l(n,r)&&(99!==J.target||!J.useDefineForClassFields||!e.getContainingClass(r)||!e.isPropertyDeclaration(r)&&!e.isParameterPropertyDeclaration(r,r.parent)||!u(r,n,!0))));function l(t,r){return!!e.findAncestor(t,(function(n){if(n===o)return"quit";if(e.isFunctionLike(n))return!0;if(n.parent&&164===n.parent.kind&&n.parent.initializer===n)if(e.hasSyntacticModifier(n.parent,32)){if(166===r.kind)return!0}else if(!(164===r.kind&&!e.hasSyntacticModifier(r,32))||e.getContainingClass(t)!==e.getContainingClass(r))return!0;return!1}))}function u(t,r,n){return!(r.end>t.end)&&void 0===e.findAncestor(r,(function(r){if(r===t)return"quit";switch(r.kind){case 210:return!0;case 164:return!n||!(e.isPropertyDeclaration(t)&&r.parent===t.parent||e.isParameterPropertyDeclaration(t,t.parent)&&r.parent===t.parent.parent)||"quit";case 232:switch(r.parent.kind){case 168:case 166:case 169:return!0;default:return!1}default:return!1}}))}}function In(t,r,n){var i=e.getEmitScriptTarget(J),a=r;if(e.isParameter(n)&&a.body&&t.valueDeclaration.pos>=a.body.pos&&t.valueDeclaration.end<=a.body.end&&i>=2){var o=Cn(a);return void 0===o.declarationRequiresScopeChange&&(o.declarationRequiresScopeChange=e.forEach(a.parameters,(function(e){return s(e.name)||!!e.initializer&&s(e.initializer)}))||!1),!o.declarationRequiresScopeChange}return!1;function s(t){switch(t.kind){case 210:case 209:case 253:case 167:return!1;case 166:case 168:case 169:case 291:return s(t.name);case 164:return e.hasStaticModifier(t)?i<99||!J.useDefineForClassFields:s(t.name);default:return e.isNullishCoalesce(t)||e.isOptionalChain(t)?i<7:e.isBindingElement(t)&&t.dotDotDotToken&&e.isObjectBindingPattern(t.parent)?i<4:!e.isTypeNode(t)&&(e.forEachChild(t,s)||!1)}}}function Fn(e,t,r,n,i,a,o,s){return void 0===o&&(o=!1),On(e,t,r,n,i,a,o,Nn,s)}function On(t,r,n,i,a,o,s,c,l){var u,d,p,f,m,g,_=t,h=!1,y=t,v=!1;e:for(;t;){if(t.locals&&!An(t)&&(u=c(t.locals,r,n))){var b=!0;if(e.isFunctionLike(t)&&d&&d!==t.body?(n&u.flags&788968&&314!==d.kind&&(b=!!(262144&u.flags)&&(d===t.type||161===d.kind||160===d.kind)),n&u.flags&3&&(In(u,t,d)?b=!1:1&u.flags&&(b=161===d.kind||d===t.type&&!!e.findAncestor(u.valueDeclaration,e.isParameter)))):185===t.kind&&(b=d===t.trueType),b)break e;u=void 0}switch(h=h||Rn(t,d),t.kind){case 300:if(!e.isExternalOrCommonJsModule(t))break;v=!0;case 259:var k=Ai(t)&&Ai(t).exports||T;if(300===t.kind||e.isModuleDeclaration(t)&&8388608&t.flags&&!e.isGlobalScopeAugmentation(t)){if(u=k.get("default")){var x=e.getLocalSymbolForExportDefault(u);if(x&&u.flags&n&&x.escapedName===r)break e;u=void 0}var E=k.get(r);if(E&&2097152===E.flags&&(e.getDeclarationOfKind(E,273)||e.getDeclarationOfKind(E,272)))break}if("default"!==r&&(u=c(k,r,2623475&n))){if(!e.isSourceFile(t)||!t.commonJsModuleIndicator||u.declarations.some(e.isJSDocTypeAlias))break e;u=void 0}break;case 258:if(u=c(Ai(t).exports,r,8&n))break e;break;case 164:if(!e.hasSyntacticModifier(t,32)){var S=Li(t.parent);S&&S.locals&&c(S.locals,r,111551&n)&&(f=t)}break;case 254:case 223:case 256:if(u=c(Ai(t).members||T,r,788968&n)){if(!jn(u,t)){u=void 0;break}if(d&&e.hasSyntacticModifier(d,32))return void pn(y,e.Diagnostics.Static_members_cannot_reference_class_type_parameters);break e}if(223===t.kind&&32&n){var D=t.name;if(D&&r===D.escapedText){u=t.symbol;break e}}break;case 225:if(d===t.expression&&94===t.parent.token){var w=t.parent.parent;if(e.isClassLike(w)&&(u=c(Ai(w).members,r,788968&n)))return void(i&&pn(y,e.Diagnostics.Base_class_expressions_cannot_reference_class_type_parameters))}break;case 159:if(g=t.parent.parent,(e.isClassLike(g)||256===g.kind)&&(u=c(Ai(g).members,r,788968&n)))return void pn(y,e.Diagnostics.A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type);break;case 210:if(J.target>=2)break;case 166:case 167:case 168:case 169:case 253:if(3&n&&"arguments"===r){u=se;break e}break;case 209:if(3&n&&"arguments"===r){u=se;break e}if(16&n){var C=t.name;if(C&&r===C.escapedText){u=t.symbol;break e}}break;case 162:t.parent&&161===t.parent.kind&&(t=t.parent),t.parent&&(e.isClassElement(t.parent)||254===t.parent.kind)&&(t=t.parent);break;case 334:case 327:case 328:(O=e.getJSDocRoot(t))&&(t=O.parent);break;case 161:d&&(d===t.initializer||d===t.name&&e.isBindingPattern(d))&&(m||(m=t));break;case 199:d&&(d===t.initializer||d===t.name&&e.isBindingPattern(d))&&e.isParameterDeclaration(t)&&!m&&(m=t);break;case 186:if(262144&n){var A=t.typeParameter.name;if(A&&r===A.escapedText){u=t.typeParameter.symbol;break e}}}Mn(t)&&(p=t),d=t,t=t.parent}if(!o||!u||p&&u===p.symbol||(u.isReferenced|=n),!u){if(d&&(e.Debug.assert(300===d.kind),d.commonJsModuleIndicator&&"exports"===r&&n&d.symbol.flags))return d.symbol;s||(u=c(ne,r,n,_))}if(!u&&_&&e.isInJSFile(_)&&_.parent&&e.isRequireCall(_.parent,!1))return ce;if(u){if(i){if(f&&(99!==J.target||!J.useDefineForClassFields)){var N=f.name;return void pn(y,e.Diagnostics.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,e.declarationNameToString(N),Ln(a))}if(y&&(2&n||(32&n||384&n)&&!(111551&~n))){var P=Ri(u);(2&P.flags||32&P.flags||384&P.flags)&&function(t,r){if(e.Debug.assert(!!(2&t.flags||32&t.flags||384&t.flags)),67108881&t.flags&&32&t.flags)return;var n=e.find(t.declarations,(function(t){return e.isBlockOrCatchScoped(t)||e.isClassLike(t)||258===t.kind}));if(void 0===n)return e.Debug.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(8388608&n.flags||Pn(n,r))){var i=void 0,a=e.declarationNameToString(e.getNameOfDeclaration(n));2&t.flags?i=pn(r,e.Diagnostics.Block_scoped_variable_0_used_before_its_declaration,a):32&t.flags?i=pn(r,e.Diagnostics.Class_0_used_before_its_declaration,a):256&t.flags?i=pn(r,e.Diagnostics.Enum_0_used_before_its_declaration,a):(e.Debug.assert(!!(128&t.flags)),e.shouldPreserveConstEnums(J)&&(i=pn(r,e.Diagnostics.Enum_0_used_before_its_declaration,a))),i&&e.addRelatedInfo(i,e.createDiagnosticForNode(n,e.Diagnostics._0_is_declared_here,a))}}(P,y)}if(u&&v&&!(111551&~n)&&!(4194304&_.flags)){var I=Ci(u);e.length(I.declarations)&&e.every(I.declarations,(function(t){return e.isNamespaceExportDeclaration(t)||e.isSourceFile(t)&&!!t.symbol.globalExports}))&&mn(!J.allowUmdGlobalAccess,y,e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,e.unescapeLeadingUnderscores(r))}if(u&&m&&!h&&!(111551&~n)){var F=Ci(cs(u)),O=e.getRootDeclaration(m);F===Ai(m)?pn(y,e.Diagnostics.Parameter_0_cannot_reference_itself,e.declarationNameToString(m.name)):F.valueDeclaration&&F.valueDeclaration.pos>m.pos&&O.parent.locals&&c(O.parent.locals,F.escapedName,n)===F&&pn(y,e.Diagnostics.Parameter_0_cannot_reference_identifier_1_declared_after_it,e.declarationNameToString(m.name),e.declarationNameToString(y))}u&&y&&111551&n&&2097152&u.flags&&function(t,r,n){if(!e.isValidTypeOnlyAliasUseSite(n)){var i=ci(t);if(i){var a=e.typeOnlyDeclarationIsExport(i),o=a?e.Diagnostics._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:e.Diagnostics._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,s=a?e.Diagnostics._0_was_exported_here:e.Diagnostics._0_was_imported_here,c=e.unescapeLeadingUnderscores(r);e.addRelatedInfo(pn(n,o,c),e.createDiagnosticForNode(i,s,c))}}}(u,r,y)}return u}if(i&&!(y&&(function(t,r,n){if(!e.isIdentifier(t)||t.escapedText!==r||Hx(t)||Nm(t))return!1;var i=e.getThisContainer(t,!1),a=i;for(;a;){if(e.isClassLike(a.parent)){var o=Ai(a.parent);if(!o)break;if(gc(_o(o),r))return pn(t,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,Ln(n),la(o)),!0;if(a===i&&!e.hasSyntacticModifier(a,32))if(gc(Jo(o).thisType,r))return pn(t,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,Ln(n)),!0}a=a.parent}return!1}(y,r,a)||Bn(y)||function(t,r,n){var i=1920|(e.isInJSFile(t)?111551:0);if(n===i){var a=ii(Fn(t,r,788968&~i,void 0,void 0,!1)),o=t.parent;if(a){if(e.isQualifiedName(o)){e.Debug.assert(o.left===t,"Should only be resolving left side of qualified name as a namespace");var s=o.right.escapedText;if(gc(Jo(a),s))return pn(o,e.Diagnostics.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,e.unescapeLeadingUnderscores(r),e.unescapeLeadingUnderscores(s)),!0}return pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,e.unescapeLeadingUnderscores(r)),!0}}return!1}(y,r,n)||function(t,r){if(Un(r)&&273===t.parent.kind)return pn(t,e.Diagnostics.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,r),!0;return!1}(y,r)||function(t,r,n){if(111551&n){if(Un(r))return pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,e.unescapeLeadingUnderscores(r)),!0;var i=ii(Fn(t,r,788544,void 0,void 0,!1));if(i&&!(1024&i.flags)){var a=e.unescapeLeadingUnderscores(r);return!function(e){switch(e){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}(r)?!function(t,r){var n=e.findAncestor(t.parent,(function(t){return!e.isComputedPropertyName(t)&&!e.isPropertySignature(t)&&(e.isTypeLiteralNode(t)||"quit")}));if(n&&1===n.members.length){var i=Jo(r);return!!(1048576&i.flags)&&Lv(i,384,!0)}return!1}(t,i)?pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,a):pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,a,"K"===a?"P":"K"):pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later,a),!0}}return!1}(y,r,n)||function(t,r,n){if(111127&n){if(ii(Fn(t,r,1024,void 0,void 0,!1)))return pn(t,e.Diagnostics.Cannot_use_namespace_0_as_a_value,e.unescapeLeadingUnderscores(r)),!0}else if(788544&n){if(ii(Fn(t,r,1536,void 0,void 0,!1)))return pn(t,e.Diagnostics.Cannot_use_namespace_0_as_a_type,e.unescapeLeadingUnderscores(r)),!0}return!1}(y,r,n)||function(t,r,n){if(788584&n){var i=ii(Fn(t,r,111127,void 0,void 0,!1));if(i&&!(1920&i.flags))return pn(t,e.Diagnostics._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,e.unescapeLeadingUnderscores(r)),!0}return!1}(y,r,n)))){var R=void 0;if(l&&Rr<Mr)if((R=Oh(_,r,n))&&R.valueDeclaration&&e.isAmbientModule(R.valueDeclaration)&&e.isGlobalScopeAugmentation(R.valueDeclaration)&&(R=void 0),R){var M=la(R),L=pn(y,l,Ln(a),M);R.valueDeclaration&&e.addRelatedInfo(L,e.createDiagnosticForNode(R.valueDeclaration,e.Diagnostics._0_is_declared_here,M))}if(!R&&a){var j=function(t){for(var r=Ln(t),n=e.getScriptTargetFeatures(),i=e.getOwnKeys(n),a=0,o=i;a<o.length;a++){var s=o[a],c=e.getOwnKeys(n[s]);if(void 0!==c&&e.contains(c,r))return s}}(a);j?pn(y,i,Ln(a),j):pn(y,i,Ln(a))}Rr++}}function Rn(t,r){return 210!==t.kind&&209!==t.kind?e.isTypeQueryNode(t)||(e.isFunctionLikeDeclaration(t)||164===t.kind&&!e.hasSyntacticModifier(t,32))&&(!r||r!==t.name):(!r||r!==t.name)&&(!(!t.asteriskToken&&!e.hasSyntacticModifier(t,256))||!e.getImmediatelyInvokedFunctionExpression(t))}function Mn(e){switch(e.kind){case 253:case 254:case 256:case 258:case 257:case 259:return!0;default:return!1}}function Ln(t){return e.isString(t)?e.unescapeLeadingUnderscores(t):e.declarationNameToString(t)}function jn(t,r){for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(160===a.kind)if((e.isJSDocTemplateTag(a.parent)?e.getJSDocHost(a.parent):a.parent)===r)return!(e.isJSDocTemplateTag(a.parent)&&e.find(a.parent.parent.tags,e.isJSDocTypeAlias))}return!1}function Bn(t){var r=zn(t);return!(!r||!fi(r,64,!0))&&(pn(t,e.Diagnostics.Cannot_extend_an_interface_0_Did_you_mean_implements,e.getTextOfNode(r)),!0)}function zn(t){switch(t.kind){case 78:case 202:return t.parent?zn(t.parent):void 0;case 225:if(e.isEntityNameExpression(t.expression))return t.expression;default:return}}function Un(e){return"any"===e||"string"===e||"number"===e||"boolean"===e||"never"===e||"unknown"===e}function qn(t,r,n){return!!r&&!!e.findAncestor(t,(function(t){return t===n||e.isFunctionLike(t)?"quit":t===r}))}function Jn(e){switch(e.kind){case 263:return e;case 265:return e.parent;case 266:return e.parent.parent;case 268:return e.parent.parent.parent;default:return}}function Vn(t){return e.find(t.declarations,Hn)}function Hn(t){return 263===t.kind||262===t.kind||265===t.kind&&!!t.name||266===t.kind||272===t.kind||268===t.kind||273===t.kind||269===t.kind&&e.exportAssignmentIsAlias(t)||e.isBinaryExpression(t)&&2===e.getAssignmentDeclarationKind(t)&&e.exportAssignmentIsAlias(t)||e.isAccessExpression(t)&&e.isBinaryExpression(t.parent)&&t.parent.left===t&&62===t.parent.operatorToken.kind&&Kn(t.parent.right)||292===t.kind||291===t.kind&&Kn(t.initializer)||e.isRequireVariableDeclaration(t,!0)}function Kn(t){return e.isAliasableExpression(t)||e.isFunctionExpression(t)&&Fy(t)}function Wn(t,r){var n=Zn(t);if(n){var i=e.getLeftmostAccessExpression(n.expression).arguments[0];return e.isIdentifier(n.name)?ii(gc(Mc(i),n.name.escapedText)):void 0}if(e.isVariableDeclaration(t)||275===t.moduleReference.kind){var a=gi(t,e.getExternalModuleRequireArgument(t)||e.getExternalModuleImportEqualsDeclarationExpression(t)),o=vi(a);return oi(t,a,o,!1),o}var s=di(t.moduleReference,r);return function(t,r){if(oi(t,void 0,r,!1)&&!t.isTypeOnly){var n=ci(Ai(t)),i=e.typeOnlyDeclarationIsExport(n),a=i?e.Diagnostics.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:e.Diagnostics.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,o=i?e.Diagnostics._0_was_exported_here:e.Diagnostics._0_was_imported_here,s=e.unescapeLeadingUnderscores(n.name.escapedText);e.addRelatedInfo(pn(t.moduleReference,a),e.createDiagnosticForNode(n,o,s))}}(t,s),s}function Gn(e,t,r,n){var i=e.exports.get("export="),a=i?gc(_o(i),t):e.exports.get(t),o=ii(a,n);return oi(r,a,o,!1),o}function $n(t){return e.isExportAssignment(t)&&!t.isExportEquals||e.hasSyntacticModifier(t,512)||e.isExportSpecifier(t)}function Yn(t,r,n){if(!K)return!1;if(!t||t.isDeclarationFile){var i=Gn(r,"default",void 0,!0);return(!i||!e.some(i.declarations,$n))&&!Gn(r,e.escapeLeadingUnderscores("__esModule"),void 0,n)}return e.isSourceFileJS(t)?!t.externalModuleIndicator&&!Gn(r,e.escapeLeadingUnderscores("__esModule"),void 0,n):ki(r)}function Xn(t,r){var n=gi(t,t.parent.moduleSpecifier);if(n){var i=void 0;i=e.isShorthandAmbientModuleSymbol(n)?n:Gn(n,"default",t,r);var a=Yn(e.find(n.declarations,e.isSourceFile),n,r);if(i||a){if(a){var o=vi(n,r)||ii(n,r);return oi(t,n,o,!1),o}}else if(ki(n)){var s=H>=e.ModuleKind.ES2015?"allowSyntheticDefaultImports":"esModuleInterop",c=n.exports.get("export=").valueDeclaration,l=pn(t.name,e.Diagnostics.Module_0_can_only_be_default_imported_using_the_1_flag,la(n),s);e.addRelatedInfo(l,e.createDiagnosticForNode(c,e.Diagnostics.This_module_is_declared_with_using_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,s))}else!function(t,r){var n,i;if(null===(n=t.exports)||void 0===n?void 0:n.has(r.symbol.escapedName))pn(r.name,e.Diagnostics.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,la(t),la(r.symbol));else{var a=pn(r.name,e.Diagnostics.Module_0_has_no_default_export,la(t)),o=null===(i=t.exports)||void 0===i?void 0:i.get("__export");if(o){var s=e.find(o.declarations,(function(t){var r,n;return!!(e.isExportDeclaration(t)&&t.moduleSpecifier&&(null===(n=null===(r=gi(t,t.moduleSpecifier))||void 0===r?void 0:r.exports)||void 0===n?void 0:n.has("default")))}));s&&e.addRelatedInfo(a,e.createDiagnosticForNode(s,e.Diagnostics.export_Asterisk_does_not_re_export_a_default))}}}(n,t);return oi(t,i,void 0,!1),i}}function Qn(t,r,n){var a;void 0===n&&(n=!1);var o=e.getExternalModuleRequireArgument(t)||t.moduleSpecifier,s=gi(t,o),c=!e.isPropertyAccessExpression(r)&&r.propertyName||r.name;if(e.isIdentifier(c)){var l=bi(s,o,n,"default"===c.escapedText&&!(!J.allowSyntheticDefaultImports&&!J.esModuleInterop));if(l&&c.escapedText){if(e.isShorthandAmbientModuleSymbol(s))return s;var u=void 0;u=s&&s.exports&&s.exports.get("export=")?gc(_o(l),c.escapedText,!0):function(e,t){if(3&e.flags){var r=e.valueDeclaration.type;if(r)return ii(gc(xd(r),t))}}(l,c.escapedText),u=ii(u,n);var d=function(e,t,r,n){if(1536&e.flags){var i=Si(e).get(t.escapedText),a=ii(i,n);return oi(r,i,a,!1),a}}(l,c,r,n);if(void 0===d&&"default"===c.escapedText)Yn(e.find(s.declarations,e.isSourceFile),s,n)&&(d=vi(s,n)||ii(s,n));var p=d&&u&&d!==u?function(t,r){if(t===ke&&r===ke)return ke;if(790504&t.flags)return t;var n=yn(t.flags|r.flags,t.escapedName);return n.declarations=e.deduplicate(e.concatenate(t.declarations,r.declarations),e.equateValues),n.parent=t.parent||r.parent,t.valueDeclaration&&(n.valueDeclaration=t.valueDeclaration),r.members&&(n.members=new e.Map(r.members)),t.exports&&(n.exports=new e.Map(t.exports)),n}(u,d):d||u;if(!p){var f=pi(s,t),m=e.declarationNameToString(c),g=Rh(c,l);if(void 0!==g){var _=la(g),h=pn(c,e.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2,f,m,_);g.valueDeclaration&&e.addRelatedInfo(h,e.createDiagnosticForNode(g.valueDeclaration,e.Diagnostics._0_is_declared_here,_))}else(null===(a=s.exports)||void 0===a?void 0:a.has("default"))?pn(c,e.Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,f,m):function(t,r,n,a,o){var s,c=null===(s=a.valueDeclaration.locals)||void 0===s?void 0:s.get(r.escapedText),l=a.exports;if(c){var u=null==l?void 0:l.get("export=");if(u)Oi(u,c)?function(t,r,n,i){if(H>=e.ModuleKind.ES2015){pn(r,J.esModuleInterop?e.Diagnostics._0_can_only_be_imported_by_using_a_default_import:e.Diagnostics._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n)}else{if(e.isInJSFile(t))pn(r,J.esModuleInterop?e.Diagnostics._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:e.Diagnostics._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n);else pn(r,J.esModuleInterop?e.Diagnostics._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:e.Diagnostics._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n,n,i)}}(t,r,n,o):pn(r,e.Diagnostics.Module_0_has_no_exported_member_1,o,n);else{var d=l?e.find(Sc(l),(function(e){return!!Oi(e,c)})):void 0,p=d?pn(r,e.Diagnostics.Module_0_declares_1_locally_but_it_is_exported_as_2,o,n,la(d)):pn(r,e.Diagnostics.Module_0_declares_1_locally_but_it_is_not_exported,o,n);e.addRelatedInfo.apply(void 0,i([p],e.map(c.declarations,(function(t,r){return e.createDiagnosticForNode(t,0===r?e.Diagnostics._0_is_declared_here:e.Diagnostics.and_here,n)}))))}}else pn(r,e.Diagnostics.Module_0_has_no_exported_member_1,o,n)}(t,c,m,s,f)}return p}}}function Zn(t){if(e.isVariableDeclaration(t)&&t.initializer&&e.isPropertyAccessExpression(t.initializer))return t.initializer}function ei(e,t,r){var n=e.parent.parent.moduleSpecifier?Qn(e.parent.parent,e,r):fi(e.propertyName||e.name,t,!1,r);return oi(e,void 0,n,!1),n}function ti(t,r){if(e.isClassExpression(t))return $v(t).symbol;if(e.isEntityName(t)||e.isEntityNameExpression(t)){var n=fi(t,901119,!0,r);return n||($v(t),Cn(t).resolvedSymbol)}}function ri(t,r){switch(void 0===r&&(r=!1),t.kind){case 263:case 251:return Wn(t,r);case 265:return Xn(t,r);case 266:return function(e,t){var r=e.parent.parent.moduleSpecifier,n=gi(e,r),i=bi(n,r,t,!1);return oi(e,n,i,!1),i}(t,r);case 272:return function(e,t){var r=e.parent.moduleSpecifier,n=r&&gi(e,r),i=r&&bi(n,r,t,!1);return oi(e,n,i,!1),i}(t,r);case 268:case 199:return function(t,r){var n=e.isBindingElement(t)?e.getRootDeclaration(t):t.parent.parent.parent,i=Zn(n),a=Qn(n,i||t,r),o=t.propertyName||t.name;return i&&a&&e.isIdentifier(o)?ii(gc(_o(a),o.escapedText),r):(oi(t,void 0,a,!1),a)}(t,r);case 273:return ei(t,901119,r);case 269:case 218:return function(t,r){var n=ti(e.isExportAssignment(t)?t.expression:t.right,r);return oi(t,void 0,n,!1),n}(t,r);case 262:return function(e,t){var r=vi(e.parent.symbol,t);return oi(e,void 0,r,!1),r}(t,r);case 292:return fi(t.name,901119,!0,r);case 291:return function(e,t){return ti(e.initializer,t)}(t,r);case 203:case 202:return function(t,r){if(e.isBinaryExpression(t.parent)&&t.parent.left===t&&62===t.parent.operatorToken.kind)return ti(t.parent.right,r)}(t,r);default:return e.Debug.fail()}}function ni(e,t){return void 0===t&&(t=901119),!!e&&(2097152==(e.flags&(2097152|t))||!!(2097152&e.flags&&67108864&e.flags))}function ii(e,t){return!t&&ni(e)?ai(e):e}function ai(t){e.Debug.assert(!!(2097152&t.flags),"Should only get Alias here.");var r=Tn(t);if(r.target)r.target===xe&&(r.target=ke);else{r.target=xe;var n=Vn(t);if(!n)return e.Debug.fail();var i=ri(n);r.target===xe?r.target=i||ke:pn(n,e.Diagnostics.Circular_definition_of_import_alias_0,la(t))}return r.target}function oi(t,r,n,i){if(!t||e.isPropertyAccessExpression(t))return!1;var a=Ai(t);if(e.isTypeOnlyImportOrExportDeclaration(t))return Tn(a).typeOnlyDeclaration=t,!0;var o=Tn(a);return si(o,r,i)||si(o,n,i)}function si(t,r,n){var i,a,o;if(r&&(void 0===t.typeOnlyDeclaration||n&&!1===t.typeOnlyDeclaration)){var s=null!==(a=null===(i=r.exports)||void 0===i?void 0:i.get("export="))&&void 0!==a?a:r,c=s.declarations&&e.find(s.declarations,e.isTypeOnlyImportOrExportDeclaration);t.typeOnlyDeclaration=null!==(o=null!=c?c:Tn(s).typeOnlyDeclaration)&&void 0!==o&&o}return!!t.typeOnlyDeclaration}function ci(e){if(2097152&e.flags)return Tn(e).typeOnlyDeclaration||void 0}function li(e){var t=Ai(e),r=ai(t);r&&((r===ke||111551&r.flags&&!mE(r)&&!ci(t))&&ui(t))}function ui(t){var r=Tn(t);if(!r.referenced){r.referenced=!0;var n=Vn(t);if(!n)return e.Debug.fail();if(e.isInternalModuleImportEqualsDeclaration(n)){var i=ii(t);(i===ke||111551&i.flags)&&$v(n.moduleReference)}}}function di(t,r){return 78===t.kind&&e.isRightSideOfQualifiedNameOrPropertyAccess(t)&&(t=t.parent),78===t.kind||158===t.parent.kind?fi(t,1920,!1,r):(e.Debug.assert(263===t.parent.kind),fi(t,901119,!1,r))}function pi(e,t){return e.parent?pi(e.parent,t)+"."+la(e):la(e,t,void 0,20)}function fi(t,r,n,i,a){if(!e.nodeIsMissing(t)){var o,s=1920|(e.isInJSFile(t)?111551&r:0);if(78===t.kind){var c=r===s||e.nodeIsSynthesized(t)?e.Diagnostics.Cannot_find_namespace_0:Cm(e.getFirstIdentifier(t)),l=e.isInJSFile(t)&&!e.nodeIsSynthesized(t)?function(t,r){if(bl(t.parent)){var n=function(t){if(e.findAncestor(t,(function(t){return e.isJSDocNode(t)||4194304&t.flags?e.isJSDocTypeAlias(t):"quit"})))return;var r=e.getJSDocHost(t);if(r&&e.isExpressionStatement(r)&&e.isBinaryExpression(r.expression)&&3===e.getAssignmentDeclarationKind(r.expression)){if(i=Ai(r.expression.left))return mi(i)}if(r&&(e.isObjectLiteralMethod(r)||e.isPropertyAssignment(r))&&e.isBinaryExpression(r.parent.parent)&&6===e.getAssignmentDeclarationKind(r.parent.parent)){if(i=Ai(r.parent.parent.left))return mi(i)}var n=e.getEffectiveJSDocHost(t);if(n&&e.isFunctionLike(n)){var i;return(i=Ai(n))&&i.valueDeclaration}}(t.parent);if(n)return Fn(n,t.escapedText,r,void 0,t,!0)}}(t,r):void 0;if(!(o=Ci(Fn(a||t,t.escapedText,r,n||l?void 0:c,t,!0))))return Ci(l)}else{if(158!==t.kind&&202!==t.kind)throw e.Debug.assertNever(t,"Unknown entity name kind.");var u=158===t.kind?t.left:t.expression,d=158===t.kind?t.right:t.name,p=fi(u,s,n,!1,a);if(!p||e.nodeIsMissing(d))return;if(p===ke)return p;if(e.isInJSFile(t)&&p.valueDeclaration&&e.isVariableDeclaration(p.valueDeclaration)&&p.valueDeclaration.initializer&&Ky(p.valueDeclaration.initializer)){var f=p.valueDeclaration.initializer.arguments[0],m=gi(f,f);if(m){var g=vi(m);g&&(p=g)}}if(!(o=Ci(Nn(Si(p),d.escapedText,r)))){if(!n){var _=pi(p),h=e.declarationNameToString(d),y=Rh(d,p);y?pn(d,e.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2,_,h,la(y)):pn(d,e.Diagnostics.Namespace_0_has_no_exported_member_1,_,h)}return}}return e.Debug.assert(!(1&e.getCheckFlags(o)),"Should never get an instantiated symbol here."),!e.nodeIsSynthesized(t)&&e.isEntityName(t)&&(2097152&o.flags||269===t.parent.kind)&&oi(e.getAliasDeclarationFromName(t),o,void 0,!0),o.flags&r||i?o:ai(o)}}function mi(t){var r=t.parent.valueDeclaration;if(r)return(e.isAssignmentDeclaration(r)?e.getAssignedExpandoInitializer(r):e.hasOnlyExpressionInitializer(r)?e.getDeclaredExpandoInitializer(r):void 0)||r}function gi(t,r,n){var i=e.getEmitModuleResolutionKind(J)===e.ModuleResolutionKind.Classic?e.Diagnostics.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:e.Diagnostics.Cannot_find_module_0_or_its_corresponding_type_declarations;return _i(t,r,n?void 0:i)}function _i(t,r,n,i){return void 0===i&&(i=!1),e.isStringLiteralLike(r)?hi(t,r.text,n,r,i):void 0}function hi(r,n,i,a,o){(void 0===o&&(o=!1),e.startsWith(n,"@types/"))&&pn(a,h=e.Diagnostics.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,e.removePrefix(n,"@types/"),n);var s=-1!==n.lastIndexOf(".so");if(!s||e.isInETSFile(r)&&J.needDoArkTsLinter&&!J.isCompatibleVersion){var c=wc(n,!0);if(c)return c;var l=e.getSourceFileOfNode(r),u=e.getResolvedModule(l,n);if(J.needDoArkTsLinter&&l&&3===l.scriptKind&&u&&(".ets"===u.extension||".d.ets"===u.extension))pn(a,J.isCompatibleVersion?e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden:e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden,n);var d=u&&e.getResolutionDiagnostic(J,u),p=u&&!d&&t.getSourceFile(u.resolvedFileName);if(p)return p.symbol?(u.isExternalLibraryImport&&!e.resolutionExtensionIsTSOrJson(u.extension)&&yi(!1,a,u,n),Ci(p.symbol)):void(i&&pn(a,e.Diagnostics.File_0_is_not_a_module,p.fileName));if(_t){var f=e.findBestPatternMatch(_t,(function(e){return e.pattern}),n);if(f){var m=ht&&ht.get(n);return Ci(m?m:f.symbol)}}if(u&&!e.resolutionExtensionIsTSOrJson(u.extension)&&void 0===d||d===e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type)o?pn(a,h=e.Diagnostics.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented,n,u.resolvedFileName):yi(X&&!!i,a,u,n);else if(i){if(u){var g=t.getProjectReferenceRedirect(u.resolvedFileName);if(g)return void pn(a,e.Diagnostics.Output_file_0_has_not_been_built_from_source_file_1,g,u.resolvedFileName)}if(d)pn(a,d,n,u.resolvedFileName);else{var _=e.tryExtractTSExtension(n);if(_){var h=e.Diagnostics.An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead,y=e.removeExtension(n,_);e.getEmitModuleKind(J)>=e.ModuleKind.ES2015&&(y+=".js"),pn(a,h,_,y)}else if(!J.resolveJsonModule&&e.fileExtensionIs(n,".json")&&e.getEmitModuleResolutionKind(J)===e.ModuleResolutionKind.NodeJs&&e.hasJsonModuleEmitEnabled(J))pn(a,e.Diagnostics.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,n);else if(s){v=e.createDiagnosticForNode(a,e.Diagnostics.Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in_later_SDK_version_Please_make_sure_the_corresponding_d_ts_file_is_provided_and_the_napis_are_correctly_declared,n);Qr.add(v)}else pn(a,i,n)}}}else{var v=e.createDiagnosticForNode(a,e.Diagnostics.Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in_later_SDK_version_Please_make_sure_the_corresponding_d_ts_file_is_provided_and_the_napis_are_correctly_declared,n);Qr.add(v)}}function yi(t,r,n,i){var a,o=n.packageId,s=n.resolvedFileName,c=!e.isExternalModuleNameRelative(i)&&o?(a=o.name,m().has(e.getTypesPackageName(a))?e.chainDiagnosticMessages(void 0,e.Diagnostics.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,o.name,e.mangleScopedPackageName(o.name)):e.chainDiagnosticMessages(void 0,e.Diagnostics.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,i,e.mangleScopedPackageName(o.name))):void 0;mn(t,r,e.chainDiagnosticMessages(c,e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,i,s))}function vi(t,r){if(null==t?void 0:t.exports){var n=function(t,r){if(!t||t===ke||t===r||1===r.exports.size||2097152&t.flags)return t;var n=Tn(t);if(n.cjsExportMerged)return n.cjsExportMerged;var i=33554432&t.flags?t:kn(t);i.flags=512|i.flags,void 0===i.exports&&(i.exports=e.createSymbolTable());return r.exports.forEach((function(e,t){"export="!==t&&i.exports.set(t,i.exports.has(t)?xn(i.exports.get(t),e):e)})),Tn(i).cjsExportMerged=i,n.cjsExportMerged=i}(Ci(ii(t.exports.get("export="),r)),Ci(t));return Ci(n)||t}}function bi(t,r,n,i){var a=vi(t,n);if(!n&&a){if(!(i||1539&a.flags||e.getDeclarationOfKind(a,300))){var o=H>=e.ModuleKind.ES2015?"allowSyntheticDefaultImports":"esModuleInterop";return pn(r,e.Diagnostics.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,o),a}if(J.esModuleInterop){var s=r.parent;if(e.isImportDeclaration(s)&&e.getNamespaceDeclarationNode(s)||e.isImportCall(s)){var c=_o(a),l=_c(c,0);if(l&&l.length||(l=_c(c,1)),l&&l.length){var u=Hy(c,a,t),d=yn(a.flags,a.escapedName);d.declarations=a.declarations?a.declarations.slice():[],d.parent=a.parent,d.target=a,d.originatingImport=s,a.valueDeclaration&&(d.valueDeclaration=a.valueDeclaration),a.constEnumOnlyModule&&(d.constEnumOnlyModule=!0),a.members&&(d.members=new e.Map(a.members)),a.exports&&(d.exports=new e.Map(a.exports));var p=Us(u);return d.type=Wi(d,p.members,e.emptyArray,e.emptyArray,p.stringIndexInfo,p.numberIndexInfo),d}}}}return a}function ki(e){return void 0!==e.exports.get("export=")}function xi(e){return Sc(Di(e))}function Ei(e,t){var r=Di(t);if(r)return r.get(e)}function Si(e){return 6256&e.flags?os(e,"resolvedExports"):1536&e.flags?Di(e):e.exports||T}function Di(e){var t=Tn(e);return t.resolvedExports||(t.resolvedExports=Ti(e))}function wi(t,r,n,i){r&&r.forEach((function(r,a){if("default"!==a){var o=t.get(a);if(o){if(n&&i&&o&&ii(o)!==ii(r)){var s=n.get(a);s.exportsWithDuplicate?s.exportsWithDuplicate.push(i):s.exportsWithDuplicate=[i]}}else t.set(a,r),n&&i&&n.set(a,{specifierText:e.getTextOfNode(i.moduleSpecifier)})}}))}function Ti(t){var r=[];return function t(n){if(!(n&&n.exports&&e.pushIfUnique(r,n)))return;var i=new e.Map(n.exports),a=n.exports.get("__export");if(a){for(var o=e.createSymbolTable(),s=new e.Map,c=0,l=a.declarations;c<l.length;c++){var u=l[c],d=gi(u,u.moduleSpecifier);wi(o,t(d),s,u)}s.forEach((function(t,r){var n=t.exportsWithDuplicate;if("export="!==r&&n&&n.length&&!i.has(r))for(var a=0,o=n;a<o.length;a++){var c=o[a];Qr.add(e.createDiagnosticForNode(c,e.Diagnostics.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,s.get(r).specifierText,e.unescapeLeadingUnderscores(r)))}})),wi(i,o)}return i}(t=vi(t))||T}function Ci(e){var t;return e&&e.mergeId&&(t=Lr[e.mergeId])?t:e}function Ai(e){return Ci(e.symbol&&cs(e.symbol))}function Ni(e){return Ci(e.parent&&cs(e.parent))}function Pi(r,n,i){var a=Ni(r);if(a&&!(262144&r.flags)){var o=e.mapDefined(a.declarations,(function(e){return a&&Ii(e,a)})),s=n&&function(r,n){var i,a=e.getSourceFileOfNode(n),o=O(a),s=Tn(r);if(s.extendedContainersByFile&&(i=s.extendedContainersByFile.get(o)))return i;if(a&&a.imports){for(var c=0,l=a.imports;c<l.length;c++){var u=l[c];if(!e.nodeIsSynthesized(u)){var d=gi(n,u,!0);d&&Fi(d,r)&&(i=e.append(i,d))}}if(e.length(i))return(s.extendedContainersByFile||(s.extendedContainersByFile=new e.Map)).set(o,i),i}if(s.extendedContainers)return s.extendedContainers;for(var p=0,f=t.getSourceFiles();p<f.length;p++){var m=f[p];if(e.isExternalModule(m)){var g=Ai(m);Fi(g,r)&&(i=e.append(i,g))}}return s.extendedContainers=i||e.emptyArray}(r,n),c=function(t,r){var n=!!e.length(t.declarations)&&e.first(t.declarations);if(111551&r&&n&&n.parent&&e.isVariableDeclaration(n.parent)&&(e.isObjectLiteralExpression(n)&&n===n.parent.initializer||e.isTypeLiteralNode(n)&&n===n.parent.type))return Ai(n.parent)}(a,i);if(n&&Yi(a,n,1920,!1))return e.append(e.concatenate(e.concatenate([a],o),s),c);var l=e.append(e.append(o,a),c);return e.concatenate(l,s)}var u=e.mapDefined(r.declarations,(function(t){return!e.isAmbientModule(t)&&t.parent&&oa(t.parent)?Ai(t.parent):e.isClassExpression(t)&&e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind&&e.isAccessExpression(t.parent.left)&&e.isEntityNameExpression(t.parent.left.expression)?e.isModuleExportsAccessExpression(t.parent.left)||e.isExportsIdentifier(t.parent.left.expression)?Ai(e.getSourceFileOfNode(t)):($v(t.parent.left.expression),Cn(t.parent.left.expression).resolvedSymbol):void 0}));if(e.length(u))return e.mapDefined(u,(function(e){return Fi(e,r)?e:void 0}))}function Ii(e,t){var r=ia(e),n=r&&r.exports&&r.exports.get("export=");return n&&Oi(n,t)?r:void 0}function Fi(t,r){if(t===Ni(r))return r;var n=t.exports&&t.exports.get("export=");if(n&&Oi(n,r))return t;var i=Si(t),a=i.get(r.escapedName);return a&&Oi(a,r)?a:e.forEachEntry(i,(function(e){if(Oi(e,r))return e}))}function Oi(e,t){if(Ci(ii(Ci(e)))===Ci(ii(Ci(t))))return e}function Ri(e){return Ci(e&&1048576&e.flags?e.exportSymbol:e)}function Mi(e){return!!(111551&e.flags||2097152&e.flags&&111551&ai(e).flags&&!ci(e))}function Li(t){for(var r=0,n=t.members;r<n.length;r++){var i=n[r];if(167===i.kind&&e.nodeIsPresent(i.body))return i}}function ji(e){var t=new _(le,e);return y++,t.id=y,w.push(t),t}function Bi(e){return new _(le,e)}function zi(e,t,r){void 0===r&&(r=0);var n=ji(e);return n.intrinsicName=t,n.objectFlags=r,n}function Ui(e){var t=ou(e);return t.flags|=16,t.intrinsicName="boolean",t}function qi(e,t){var r=ji(524288);return r.objectFlags=e,r.symbol=t,r.members=void 0,r.properties=void 0,r.callSignatures=void 0,r.constructSignatures=void 0,r.stringIndexInfo=void 0,r.numberIndexInfo=void 0,r}function Ji(e){var t=ji(262144);return e&&(t.symbol=e),t}function Vi(e){return 95===e.charCodeAt(0)&&95===e.charCodeAt(1)&&95!==e.charCodeAt(2)&&64!==e.charCodeAt(2)&&35!==e.charCodeAt(2)}function Hi(t){var r;return t.forEach((function(e,t){!Vi(t)&&Mi(e)&&(r||(r=[])).push(e)})),r||e.emptyArray}function Ki(t,r,n,i,a,o){var s=t;return s.members=r,s.properties=e.emptyArray,s.callSignatures=n,s.constructSignatures=i,s.stringIndexInfo=a,s.numberIndexInfo=o,r!==T&&(s.properties=Hi(r)),s}function Wi(e,t,r,n,i,a){return Ki(qi(16,e),t,r,n,i,a)}function Gi(t,r){for(var n,i=function(t){if(t.locals&&!An(t)&&(n=r(t.locals)))return{value:n};switch(t.kind){case 300:if(!e.isExternalOrCommonJsModule(t))break;case 259:var i=Ai(t);if(n=r((null==i?void 0:i.exports)||T))return{value:n};break;case 254:case 223:case 256:var a;if((Ai(t).members||T).forEach((function(t,r){788968&t.flags&&(a||(a=e.createSymbolTable())).set(r,t)})),a&&(n=r(a)))return{value:n}}},a=t;a;a=a.parent){var o=i(a);if("object"==typeof o)return o.value}return r(ne)}function $i(e){return 111551===e?111551:1920}function Yi(t,r,n,i,a){if(void 0===a&&(a=new e.Map),t&&!function(e){if(e.declarations&&e.declarations.length){for(var t=0,r=e.declarations;t<r.length;t++){switch(r[t].kind){case 164:case 166:case 168:case 169:continue;default:return!1}}return!0}return!1}(t)){var o=R(t),s=a.get(o);return s||a.set(o,s=[]),Gi(r,c)}function c(n,a){if(e.pushIfUnique(s,n)){var o=function(n,a){if(u(n.get(t.escapedName),void 0,a))return[t];var o=e.forEachEntry(n,(function(n){if(2097152&n.flags&&"export="!==n.escapedName&&"default"!==n.escapedName&&!(e.isUMDExportSymbol(n)&&r&&e.isExternalModule(e.getSourceFileOfNode(r)))&&(!i||e.some(n.declarations,e.isExternalModuleImportEqualsDeclaration))&&(a||!e.getDeclarationOfKind(n,273))){var o=d(n,ai(n),a);if(o)return o}if(n.escapedName===t.escapedName&&n.exportSymbol&&u(Ci(n.exportSymbol),void 0,a))return[t]}));return o||(n===ne?d(ae,ae,a):void 0)}(n,a);return s.pop(),o}}function l(e,t){return!Xi(e,r,t)||!!Yi(e.parent,r,$i(t),i,a)}function u(r,i,a){return(t===(i||r)||Ci(t)===Ci(i||r))&&!e.some(r.declarations,oa)&&(a||l(Ci(r),n))}function d(e,t,r){if(u(e,t,r))return[e];var i=Si(t),a=i&&c(i,!0);return a&&l(e,$i(n))?[e].concat(a):void 0}}function Xi(t,r,n){var i=!1;return Gi(r,(function(r){var a=Ci(r.get(t.escapedName));return!!a&&(a===t||!!((a=2097152&a.flags&&!e.getDeclarationOfKind(a,273)?ai(a):a).flags&n)&&(i=!0,!0))})),i}function Qi(e,t){return 0===na(e,t,788968,!1,!0).accessibility}function Zi(e,t){return 0===na(e,t,111551,!1,!0).accessibility}function ea(e,t,r){return 0===na(e,t,r,!1,!1).accessibility}function ta(t,r,n,i,a,o){if(e.length(t)){for(var s,c=!1,l=0,u=t;l<u.length;l++){var d=u[l],p=Yi(d,r,i,!1);if(p){s=d;var f=sa(p[0],a);if(f)return f}else if(o&&e.some(d.declarations,oa)){if(a){c=!0;continue}return{accessibility:0}}var m=ta(Pi(d,r,i),r,n,n===d?$i(i):i,a,o);if(m)return m}return c?{accessibility:0}:s?{accessibility:1,errorSymbolName:la(n,r,i),errorModuleName:s!==n?la(s,r,1920):void 0}:void 0}}function ra(e,t,r,n){return na(e,t,r,n,!0)}function na(t,r,n,i,a){if(t&&r){var o=ta([t],r,t,n,i,a);if(o)return o;var s=e.forEach(t.declarations,ia);if(s)if(s!==ia(r))return{accessibility:2,errorSymbolName:la(t,r,n),errorModuleName:la(s),errorNode:e.isInJSFile(r)?r:void 0};return{accessibility:1,errorSymbolName:la(t,r,n)}}return{accessibility:0}}function ia(t){var r=e.findAncestor(t,aa);return r&&Ai(r)}function aa(t){return e.isAmbientModule(t)||300===t.kind&&e.isExternalOrCommonJsModule(t)}function oa(t){return e.isModuleWithStringLiteralName(t)||300===t.kind&&e.isExternalOrCommonJsModule(t)}function sa(t,r){var n;if(e.every(e.filter(t.declarations,(function(e){return 78!==e.kind})),(function(r){var n,a;if(!Ea(r)){var o=Jn(r);return o&&!e.hasSyntacticModifier(o,1)&&Ea(o.parent)?i(r,o):e.isVariableDeclaration(r)&&e.isVariableStatement(r.parent.parent)&&!e.hasSyntacticModifier(r.parent.parent,1)&&Ea(r.parent.parent.parent)?i(r,r.parent.parent):e.isLateVisibilityPaintedStatement(r)&&!e.hasSyntacticModifier(r,1)&&Ea(r.parent)?i(r,r):!!(2097152&t.flags&&e.isBindingElement(r)&&e.isInJSFile(r)&&(null===(n=r.parent)||void 0===n?void 0:n.parent)&&e.isVariableDeclaration(r.parent.parent)&&(null===(a=r.parent.parent.parent)||void 0===a?void 0:a.parent)&&e.isVariableStatement(r.parent.parent.parent.parent)&&!e.hasSyntacticModifier(r.parent.parent.parent.parent,1)&&r.parent.parent.parent.parent.parent&&Ea(r.parent.parent.parent.parent.parent))&&i(r,r.parent.parent.parent.parent)}return!0})))return{accessibility:0,aliasesToMakeVisible:n};function i(t,i){return r&&(Cn(t).isVisible=!0,n=e.appendIfUnique(n,i)),!0}}function ca(t,r){var n;n=177===t.parent.kind||e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)||159===t.parent.kind?1160127:158===t.kind||202===t.kind||263===t.parent.kind?1920:788968;var i=e.getFirstIdentifier(t),a=Fn(r,i.escapedText,n,void 0,void 0,!1);return a&&262144&a.flags&&788968&n?{accessibility:0}:a&&sa(a,!0)||{accessibility:1,errorSymbolName:e.getTextOfNode(i),errorNode:i}}function la(t,r,n,i,a){void 0===i&&(i=4);var o=70221824;2&i&&(o|=128),1&i&&(o|=512),8&i&&(o|=16384),16&i&&(o|=134217728);var s=4&i?re.symbolToExpression:re.symbolToEntityName;return a?c(a).getText():e.usingSingleLineStringWriter(c);function c(i){var a=s(t,n,r,o),c=300===(null==r?void 0:r.kind)?e.createPrinter({removeComments:!0,neverAsciiEscape:!0}):e.createPrinter({removeComments:!0}),l=r&&e.getSourceFileOfNode(r);return c.writeNode(4,a,l,i),i}}function ua(t,r,n,i,a){return void 0===n&&(n=0),a?o(a).getText():e.usingSingleLineStringWriter(o);function o(a){var o;o=262144&n?1===i?176:175:1===i?171:170;var s=re.signatureToSignatureDeclaration(t,o,r,70222336|ga(n)),c=e.createPrinter({removeComments:!0,omitTrailingSemicolon:!0}),l=r&&e.getSourceFileOfNode(r);return c.writeNode(4,s,l,e.getTrailingSemicolonDeferringWriter(a)),a}}function da(t,r,n,i){void 0===n&&(n=1064960),void 0===i&&(i=e.createTextWriter(""));var a=J.noErrorTruncation||1&n,o=re.typeToTypeNode(t,r,70221824|ga(n)|(a?1:0),i);if(void 0===o)return e.Debug.fail("should always get typenode");var s=e.createPrinter({removeComments:!0}),c=r&&e.getSourceFileOfNode(r);s.writeNode(4,o,c,i);var l=i.getText(),u=a?2*e.noTruncationMaximumTruncationLength:2*e.defaultMaximumTruncationLength;return u&&l&&l.length>=u?l.substr(0,u-3)+"...":l}function pa(e,t){var r=ma(e.symbol)?da(e,e.symbol.valueDeclaration):da(e),n=ma(t.symbol)?da(t,t.symbol.valueDeclaration):da(t);return r===n&&(r=fa(e),n=fa(t)),[r,n]}function fa(e){return da(e,void 0,64)}function ma(t){return t&&t.valueDeclaration&&e.isExpression(t.valueDeclaration)&&!Qd(t.valueDeclaration)}function ga(e){return void 0===e&&(e=0),814775659&e}function _a(t){return!!(t.symbol&&32&t.symbol.flags&&(t===Oo(t.symbol)||1073741824&e.getObjectFlags(t)))}function ha(t,r,n,i){return void 0===n&&(n=16384),i?a(i).getText():e.usingSingleLineStringWriter(a);function a(i){var a=e.factory.createTypePredicateNode(2===t.kind||3===t.kind?e.factory.createToken(128):void 0,1===t.kind||3===t.kind?e.factory.createIdentifier(t.parameterName):e.factory.createThisTypeNode(),t.type&&re.typeToTypeNode(t.type,r,70222336|ga(n))),o=e.createPrinter({removeComments:!0}),s=r&&e.getSourceFileOfNode(r);return o.writeNode(4,a,s,i),i}}function ya(e){return 8===e?"private":16===e?"protected":"public"}function va(t){return t&&t.parent&&260===t.parent.kind&&e.isExternalModuleAugmentation(t.parent.parent)}function ba(t){return 300===t.kind||e.isAmbientModule(t)}function ka(t,r){var n=Tn(t).nameType;if(n){if(384&n.flags){var i=""+n.value;return e.isIdentifierText(i,J.target)||R_(i)?R_(i)&&e.startsWith(i,"-")?"["+i+"]":i:'"'+e.escapeString(i,34)+'"'}if(8192&n.flags)return"["+xa(n.symbol,r)+"]"}}function xa(t,r){if(r&&"default"===t.escapedName&&!(16384&r.flags)&&(!(16777216&r.flags)||!t.declarations||r.enclosingDeclaration&&e.findAncestor(t.declarations[0],ba)!==e.findAncestor(r.enclosingDeclaration,ba)))return"default";if(t.declarations&&t.declarations.length){var n=e.firstDefined(t.declarations,(function(t){return e.getNameOfDeclaration(t)?t:void 0})),i=n&&e.getNameOfDeclaration(n);if(n&&i){if(e.isCallExpression(n)&&e.isBindableObjectDefinePropertyCall(n))return e.symbolName(t);if(e.isComputedPropertyName(i)&&!(4096&e.getCheckFlags(t))){var a=Tn(t).nameType;if(a&&384&a.flags){var o=ka(t,r);if(void 0!==o)return o}}return e.declarationNameToString(i)}if(n||(n=t.declarations[0]),n.parent&&251===n.parent.kind)return e.declarationNameToString(n.parent.name);switch(n.kind){case 223:case 209:case 210:return!r||r.encounteredError||131072&r.flags||(r.encounteredError=!0),223===n.kind?"(Anonymous class)":"(Anonymous function)"}}var s=ka(t,r);return void 0!==s?s:e.symbolName(t)}function Ea(t){if(t){var r=Cn(t);return void 0===r.isVisible&&(r.isVisible=!!function(){switch(t.kind){case 327:case 334:case 328:return!!(t.parent&&t.parent.parent&&t.parent.parent.parent&&e.isSourceFile(t.parent.parent.parent));case 199:return Ea(t.parent.parent);case 251:if(e.isBindingPattern(t.name)&&!t.name.elements.length)return!1;case 259:case 254:case 255:case 256:case 257:case 253:case 258:case 263:if(e.isExternalModuleAugmentation(t))return!0;var r=Aa(t);return 1&e.getCombinedModifierFlags(t)||263!==t.kind&&300!==r.kind&&8388608&r.flags?Ea(r):An(r);case 164:case 163:case 168:case 169:case 166:case 165:if(e.hasEffectiveModifier(t,24))return!1;case 167:case 171:case 170:case 172:case 161:case 260:case 175:case 176:case 178:case 174:case 179:case 180:case 183:case 184:case 187:case 193:return Ea(t.parent);case 265:case 266:case 268:return!1;case 160:case 300:case 262:return!0;default:return!1}}()),r.isVisible}return!1}function Sa(t,r){var n,i,a;return t.parent&&269===t.parent.kind?n=Fn(t,t.escapedText,2998271,void 0,t,!1):273===t.parent.kind&&(n=ei(t.parent,2998271)),n&&((a=new e.Set).add(R(n)),function t(n){e.forEach(n,(function(n){var o=Jn(n)||n;if(r?Cn(n).isVisible=!0:(i=i||[],e.pushIfUnique(i,o)),e.isInternalModuleImportEqualsDeclaration(n)){var s=n.moduleReference,c=Fn(n,e.getFirstIdentifier(s).escapedText,901119,void 0,void 0,!1);c&&a&&e.tryAddToSet(a,R(c))&&t(c.declarations)}}))}(n.declarations)),i}function Da(e,t){var r=wa(e,t);if(r>=0){for(var n=Ir.length,i=r;i<n;i++)Fr[i]=!1;return!1}return Ir.push(e),Fr.push(!0),Or.push(t),!0}function wa(e,t){for(var r=Ir.length-1;r>=0;r--){if(Ta(Ir[r],Or[r]))return-1;if(Ir[r]===e&&Or[r]===t)return r}return-1}function Ta(t,r){switch(r){case 0:return!!Tn(t).type;case 5:return!!Cn(t).resolvedEnumType;case 2:return!!Tn(t).declaredType;case 1:return!!t.resolvedBaseConstructorType;case 3:return!!t.resolvedReturnType;case 4:return!!t.immediateBaseConstraint;case 6:return!!t.resolvedTypeArguments;case 7:return!!t.baseTypesResolved}return e.Debug.assertNever(r)}function Ca(){return Ir.pop(),Or.pop(),Fr.pop()}function Aa(t){return e.findAncestor(e.getRootDeclaration(t),(function(e){switch(e.kind){case 251:case 252:case 268:case 267:case 266:case 265:return!1;default:return!0}})).parent}function Na(e,t){var r=gc(e,t);return r?_o(r):void 0}function Pa(e){return e&&!!(1&e.flags)}function Ia(e){var t=Ai(e);return t&&Tn(t).type||Ua(e,!1)}function Fa(t,r,n){if(131072&(t=ug(t,(function(e){return!(98304&e.flags)}))).flags)return nt;if(1048576&t.flags)return pg(t,(function(e){return Fa(e,r,n)}));var i=ou(e.map(r,vu));if(Ru(t)||Mu(i)){if(131072&i.flags)return t;var a=Zt||(Zt=Cl("Omit",524288,e.Diagnostics.Cannot_find_global_type_0));return a?pl(a,[t,i]):we}for(var o=e.createSymbolTable(),s=0,c=Hs(t);s<c.length;s++){var l=c[s];cp(bu(l,8576),i)||24&e.getDeclarationModifierFlagsFromSymbol(l)||!ud(l)||o.set(l.escapedName,dd(l,!1))}var u=bc(t,0),d=bc(t,1),p=Wi(n,o,e.emptyArray,e.emptyArray,u,d);return p.objectFlags|=131072,p}function Oa(e,t){var r=Ra(e);return r?Og(r,t):t}function Ra(t){var r=function(e){var t=e.parent.parent;switch(t.kind){case 199:case 291:return Ra(t);case 200:return Ra(e.parent);case 251:return t.initializer;case 218:return t.right}}(t);if(r&&r.flowNode){var n=function(e){var t=e.parent;if(199===e.kind&&197===t.kind)return Ma(e.propertyName||e.name);if(291===e.kind||292===e.kind)return Ma(e.name);return""+t.elements.indexOf(e)}(t);if(n){var i=e.setTextRange(e.parseNodeFactory.createStringLiteral(n),t),a=e.isLeftHandSideExpression(r)?r:e.parseNodeFactory.createParenthesizedExpression(r),o=e.setTextRange(e.parseNodeFactory.createElementAccessExpression(a,i),t);return e.setParent(i,o),e.setParent(o,t),a!==r&&e.setParent(a,o),o.flowNode=r.flowNode,o}}}function Ma(e){var t=vu(e);return 384&t.flags?""+t.value:void 0}function La(t){var r,n=t.parent,i=Ia(n.parent);if(!i||Pa(i))return i;if(W&&8388608&t.flags&&e.isParameterDeclaration(t)?i=Pf(i):!W||!n.parent.initializer||65536&Vm(eg(n.parent.initializer))||(i=Hm(i,524288)),197===n.kind)if(t.dotDotDotToken){if(2&(i=uc(i)).flags||!z_(i))return pn(t,e.Diagnostics.Rest_types_may_only_be_created_from_object_types),we;for(var a=[],o=0,s=n.elements;o<s.length;o++){var c=s[o];c.dotDotDotToken||a.push(c.propertyName||c.name)}r=Fa(i,a,t.symbol)}else{var l=t.propertyName||t.name;r=Oa(t,Ug(qu(i,p=vu(l),void 0,l,void 0,void 0,16),t.name))}else{var u=Ik(65|(t.dotDotDotToken?0:128),i,Ne,n),d=n.elements.indexOf(t);if(t.dotDotDotToken)r=lg(i,vf)?pg(i,(function(e){return $l(e,d)})):jl(u);else if(sf(i)){var p=hd(d),f=N_(t)?8:0;r=Oa(t,Ug(Vu(i,p,void 0,t.name,16|f)||we,t.name))}else r=u}return t.initializer?e.getEffectiveTypeAnnotationNode(e.walkUpBindingElementsAndPatterns(t))?!W||32768&wf(Yv(t))?r:Hm(r,524288):Xv(t,ou([Hm(r,524288),Yv(t)],2)):r}function ja(t){var r=e.getJSDocType(t);if(r)return xd(r)}function Ba(t){var r=e.skipParentheses(t);return 200===r.kind&&0===r.elements.length}function za(e,t){return void 0===t&&(t=!0),W&&t?Nf(e):e}function Ua(t,r){if(e.isVariableDeclaration(t)&&240===t.parent.parent.kind){var n=Eu(gh(fb(t.parent.parent.expression)));return 4456448&n.flags?Su(n):Re}if(e.isVariableDeclaration(t)&&241===t.parent.parent.kind)return Pk(t.parent.parent)||Ee;if(e.isBindingPattern(t.parent))return La(t);var i,a,o=r&&(e.isParameter(t)&&Dc(t)||Cc(t)||!e.isBindingElement(t)&&!e.isVariableDeclaration(t)&&!!t.questionToken),s=io(t);if(s)return za(s,o);if((X||e.isInJSFile(t))&&e.isVariableDeclaration(t)&&!e.isBindingPattern(t.name)&&!(1&e.getCombinedModifierFlags(t))&&!(8388608&t.flags)){if(!(2&e.getCombinedNodeFlags(t)||t.initializer&&(i=t.initializer,a=e.skipParentheses(i),104!==a.kind&&(78!==a.kind||Am(a)!==ie))))return Se;if(t.initializer&&Ba(t.initializer))return Nt}if(e.isParameter(t)){var c=t.parent;if(169===c.kind&&ns(c)){var l=e.getDeclarationOfKind(Ai(t.parent),168);if(l){var u=Ic(l),d=tS(c);return d&&t===d?(e.Debug.assert(!d.type),_o(u.thisParameter)):Bc(u)}}if(e.isInJSFile(t)){var p=e.getJSDocType(c);if(p&&e.isFunctionTypeNode(p)){var f=Ic(p),m=c.parameters.indexOf(t);return t.dotDotDotToken?av(f,m):nv(f,m)}}if(_="this"===t.symbol.escapedName?t_(c):r_(t))return za(_,o)}if(e.hasOnlyExpressionInitializer(t)&&t.initializer){if(e.isInJSFile(t)&&!e.isParameter(t)){var g=Ga(t,Ai(t),e.getDeclaredExpandoInitializer(t));if(g)return g}return za(_=Xv(t,Yv(t)),o)}if(e.isPropertyDeclaration(t)&&!e.hasStaticModifier(t)&&(X||e.isInJSFile(t))){var _,h=Li(t.parent);return(_=h?Ha(t.symbol,h):2&e.getEffectiveModifierFlags(t)?$p(t.symbol):void 0)&&za(_,o)}return e.isJsxAttribute(t)?ze:e.isBindingPattern(t.name)?eo(t.name,!1,!0):void 0}function qa(t){if(t.valueDeclaration&&e.isBinaryExpression(t.valueDeclaration)){var r=Tn(t);return void 0===r.isConstructorDeclaredProperty&&(r.isConstructorDeclaredProperty=!1,r.isConstructorDeclaredProperty=!!Va(t)&&e.every(t.declarations,(function(r){return e.isBinaryExpression(r)&&u_(r)&&(203!==r.left.kind||e.isStringOrNumericLiteralLike(r.left.argumentExpression))&&!$a(void 0,r,t,r)}))),r.isConstructorDeclaredProperty}return!1}function Ja(t){var r=t.valueDeclaration;return r&&e.isPropertyDeclaration(r)&&!e.getEffectiveTypeAnnotationNode(r)&&!r.initializer&&(X||e.isInJSFile(r))}function Va(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r],a=e.getThisContainer(i,!1);if(a&&(167===a.kind||Fy(a)))return a}}function Ha(t,r){var n=e.startsWith(t.escapedName,"__#")?e.factory.createPrivateIdentifier(t.escapedName.split("@")[1]):e.unescapeLeadingUnderscores(t.escapedName),i=e.factory.createPropertyAccessExpression(e.factory.createThis(),n);e.setParent(i.expression,i),e.setParent(i,r),i.flowNode=r.returnFlowNode;var a=Ka(i,t);return!X||a!==Se&&a!==Nt||pn(t.valueDeclaration,e.Diagnostics.Member_0_implicitly_has_an_1_type,la(t),da(a)),lg(a,mh)?void 0:vk(a)}function Ka(t,r){var n=r&&(!Ja(r)||2&e.getEffectiveModifierFlags(r.valueDeclaration))&&$p(r)||Ne;return Og(t,Se,n)}function Wa(t,r){var n,i=e.getAssignedExpandoInitializer(t.valueDeclaration);if(i){var a=e.getJSDocTypeTag(i);return a&&a.typeExpression?xd(a.typeExpression):Ga(t.valueDeclaration,t,i)||gf($v(i))}var o=!1,s=!1;if(qa(t)&&(n=Ha(t,Va(t))),!n){for(var c=void 0,l=void 0,u=0,d=t.declarations;u<d.length;u++){var p=d[u],f=e.isBinaryExpression(p)||e.isCallExpression(p)?p:e.isAccessExpression(p)?e.isBinaryExpression(p.parent)?p.parent:p:void 0;if(f){var m=e.isAccessExpression(f)?e.getAssignmentDeclarationPropertyAccessKind(f):e.getAssignmentDeclarationKind(f);(4===m||e.isBinaryExpression(f)&&u_(f,m))&&(Xa(f)?o=!0:s=!0),e.isCallExpression(f)||(c=$a(c,f,t,p)),c||(l||(l=[])).push(e.isBinaryExpression(f)||e.isCallExpression(f)?Ya(t,r,f,m):He)}}if(!(n=c)){if(!e.length(l))return we;var g=o?function(t,r){return e.Debug.assert(t.length===r.length),t.filter((function(t,n){var i=r[n],a=e.isBinaryExpression(i)?i:e.isBinaryExpression(i.parent)?i.parent:void 0;return a&&Xa(a)}))}(l,t.declarations):void 0;if(s){var _=$p(t);_&&((g||(g=[])).push(_),o=!0)}n=ou(e.some(g,(function(e){return!!(-98305&e.flags)}))?g:l,2)}}var h=Hf(za(n,s&&!o));return ug(h,(function(e){return!!(-98305&e.flags)}))===He?(Gf(t.valueDeclaration,Ee),Ee):h}function Ga(t,r,n){var i,a;if(e.isInJSFile(t)&&n&&e.isObjectLiteralExpression(n)&&!n.properties.length){for(var o=e.createSymbolTable();e.isBinaryExpression(t)||e.isPropertyAccessExpression(t);){var s=Ai(t);(null===(i=null==s?void 0:s.exports)||void 0===i?void 0:i.size)&&Dn(o,s.exports),t=e.isBinaryExpression(t)?t.parent:t.parent.parent}var c=Ai(t);(null===(a=null==c?void 0:c.exports)||void 0===a?void 0:a.size)&&Dn(o,c.exports);var l=Wi(r,o,e.emptyArray,e.emptyArray,void 0,void 0);return l.objectFlags|=16384,l}}function $a(t,r,n,i){var a=e.getEffectiveTypeAnnotationNode(r.parent);if(a){var o=Hf(xd(a));if(!t)return o;t===we||o===we||np(t,o)||kk(void 0,t,i,o)}if(n.parent){var s=e.getEffectiveTypeAnnotationNode(n.parent.valueDeclaration);if(s)return Na(xd(s),n.escapedName)}return t}function Ya(t,r,n,i){if(e.isCallExpression(n)){if(r)return _o(r);var a=$v(n.arguments[2]),o=Na(a,"value");if(o)return o;var s=Na(a,"get");if(s){var c=Qh(s);if(c)return Bc(c)}var l=Na(a,"set");if(l){var u=Qh(l);if(u)return dv(u)}return Ee}if(function(t,r){return e.isPropertyAccessExpression(t)&&108===t.expression.kind&&e.forEachChildRecursively(r,(function(e){return Im(t,e)}))}(n.left,n.right))return Ee;var d=r?_o(r):gf($v(n.right));if(524288&d.flags&&2===i&&"export="===t.escapedName){var p=Us(d),f=e.createSymbolTable();e.copyEntries(p.members,f);var m=f.size;r&&!r.exports&&(r.exports=e.createSymbolTable()),(r||t).exports.forEach((function(t,r){var n,i=f.get(r);if(i&&i!==t)if(111551&t.flags&&111551&i.flags){if(e.getSourceFileOfNode(t.valueDeclaration)!==e.getSourceFileOfNode(i.valueDeclaration)){var a=e.unescapeLeadingUnderscores(t.escapedName),o=(null===(n=e.tryCast(i.valueDeclaration,e.isNamedDeclaration))||void 0===n?void 0:n.name)||i.valueDeclaration;e.addRelatedInfo(pn(t.valueDeclaration,e.Diagnostics.Duplicate_identifier_0,a),e.createDiagnosticForNode(o,e.Diagnostics._0_was_also_declared_here,a)),e.addRelatedInfo(pn(o,e.Diagnostics.Duplicate_identifier_0,a),e.createDiagnosticForNode(t.valueDeclaration,e.Diagnostics._0_was_also_declared_here,a))}var s=yn(t.flags|i.flags,r);s.type=ou([_o(t),_o(i)]),s.valueDeclaration=i.valueDeclaration,s.declarations=e.concatenate(i.declarations,t.declarations),f.set(r,s)}else f.set(r,xn(t,i));else f.set(r,t)}));var g=Wi(m!==f.size?void 0:p.symbol,f,p.callSignatures,p.constructSignatures,p.stringIndexInfo,p.numberIndexInfo);return g.objectFlags|=16384&e.getObjectFlags(d),g.symbol&&32&g.symbol.flags&&d===Oo(g.symbol)&&(g.objectFlags|=1073741824),g}return cf(d)?(Gf(n,At),At):d}function Xa(t){var r=e.getThisContainer(t,!1);return 167===r.kind||253===r.kind||209===r.kind&&!e.isPrototypePropertyAssignment(r.parent)}function Qa(t,r,n){return t.initializer?za(Xv(t,Yv(t,e.isBindingPattern(t.name)?eo(t.name,!0,!1):Ae))):e.isBindingPattern(t.name)?eo(t.name,r,n):(n&&!no(t)&&Gf(t,Ee),r?Te:Ee)}function Za(t,r,n){var i,a=t.elements,o=e.lastOrUndefined(a),s=o&&199===o.kind&&o.dotDotDotToken?o:void 0;if(0===a.length||1===a.length&&s)return V>=2?(i=Ee,Ml(Ol(!0),[i])):At;var c=e.map(a,(function(t){return e.isOmittedExpression(t)?Ee:Qa(t,r,n)})),l=e.findLastIndex(a,(function(t){return!(t===s||e.isOmittedExpression(t)||N_(t))}),a.length-1)+1,u=Hl(c,e.map(a,(function(e,t){return e===s?4:t>=l?2:1})));return r&&((u=sl(u)).pattern=t,u.objectFlags|=1048576),u}function eo(t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),197===t.kind?function(t,r,n){var i,a=e.createSymbolTable(),o=1048704;e.forEach(t.elements,(function(e){var t=e.propertyName||e.name;if(e.dotDotDotToken)i=Qc(Ee,!1);else{var s=vu(t);if(Zo(s)){var c=is(s),l=yn(4|(e.initializer?16777216:0),c);l.type=Qa(e,r,n),l.bindingElement=e,a.set(l.escapedName,l)}else o|=512}}));var s=Wi(void 0,a,e.emptyArray,e.emptyArray,i,void 0);return s.objectFlags|=o,r&&(s.pattern=t,s.objectFlags|=1048576),s}(t,r,n):Za(t,r,n)}function to(e,t){return ro(Ua(e,!0),e,t)}function ro(t,r,n){return t?(n&&$f(r,t),8192&t.flags&&(e.isBindingElement(r)||!r.type)&&t.symbol!==Ai(r)&&(t=Je),Hf(t)):(t=e.isParameter(r)&&r.dotDotDotToken?At:Ee,n&&(no(r)||Gf(r,t)),t)}function no(t){var r=e.getRootDeclaration(t);return Ob(161===r.kind?r.parent:r)}function io(t){var r=e.getEffectiveTypeAnnotationNode(t);if(r)return xd(r)}function ao(t){var r=Tn(t);if(!r.type){var n=function(t){if(4194304&t.flags)return(r=Jo(Ni(t))).typeParameters?ol(r,e.map(r.typeParameters,(function(e){return Ee}))):r;var r;if(t===ce)return Ee;if(134217728&t.flags){var n=Ai(e.getSourceFileOfNode(t.valueDeclaration)),i=yn(n.flags,"exports");i.declarations=n.declarations?n.declarations.slice():[],i.parent=t,i.target=n,n.valueDeclaration&&(i.valueDeclaration=n.valueDeclaration),n.members&&(i.members=new e.Map(n.members)),n.exports&&(i.exports=new e.Map(n.exports));var a=e.createSymbolTable();return a.set("exports",i),Wi(t,a,e.emptyArray,e.emptyArray,void 0,void 0)}var o,s=t.valueDeclaration;if(e.isCatchClauseVariableDeclarationOrBindingElement(s)){var c=s;if(!c.type)return Ee;var l=Xx(c.type);return Pa(l)||l===Ae?l:we}if(e.isSourceFile(s)&&e.isJsonSourceFile(s))return s.statements.length?Hf(gf(fb(s.statements[0].expression))):nt;if(!Da(t,0))return 512&t.flags&&!(67108864&t.flags)?fo(t):go(t);if(269===s.kind)o=ro($v(s.expression),s);else if(e.isBinaryExpression(s)||e.isInJSFile(s)&&(e.isCallExpression(s)||(e.isPropertyAccessExpression(s)||e.isBindableStaticElementAccessExpression(s))&&e.isBinaryExpression(s.parent)))o=Wa(t);else if(e.isPropertyAccessExpression(s)||e.isElementAccessExpression(s)||e.isIdentifier(s)||e.isStringLiteralLike(s)||e.isNumericLiteral(s)||e.isClassDeclaration(s)||e.isFunctionDeclaration(s)||e.isMethodDeclaration(s)&&!e.isObjectLiteralMethod(s)||e.isMethodSignature(s)||e.isSourceFile(s)){if(9136&t.flags)return fo(t);o=e.isBinaryExpression(s.parent)?Wa(t):io(s)||Ee}else if(e.isPropertyAssignment(s))o=io(s)||tb(s);else if(e.isJsxAttribute(s))o=io(s)||J_(s);else if(e.isShorthandPropertyAssignment(s))o=io(s)||eb(s.name,0);else if(e.isObjectLiteralMethod(s))o=io(s)||rb(s,0);else if(e.isParameter(s)||e.isPropertyDeclaration(s)||e.isPropertySignature(s)||e.isVariableDeclaration(s)||e.isBindingElement(s)||e.isJSDocPropertyLikeTag(s))o=to(s,!0);else if(e.isEnumDeclaration(s))o=fo(t);else if(e.isEnumMember(s))o=mo(t);else{if(!e.isAccessor(s))return e.Debug.fail("Unhandled declaration kind! "+e.Debug.formatSyntaxKind(s.kind)+" for "+e.Debug.formatSymbol(t));o=uo(t)}if(!Ca())return 512&t.flags&&!(67108864&t.flags)?fo(t):go(t);return o}(t);r.type||(r.type=n)}return r.type}function oo(t){if(t)return 168===t.kind?e.getEffectiveReturnTypeNode(t):e.getEffectiveSetAccessorTypeAnnotationNode(t)}function so(e){var t=oo(e);return t&&xd(t)}function co(e){return Lc(Ic(e))}function lo(t){var r=Tn(t);return r.type||(r.type=function(t){if(!Da(t,0))return we;var r=uo(t);if(!Ca()){if(r=Ee,X)pn(e.getDeclarationOfKind(t,168),e.Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,la(t))}return r}(t))}function uo(t){var r=e.getDeclarationOfKind(t,168),n=e.getDeclarationOfKind(t,169);if(r&&e.isInJSFile(r)){var i=ja(r);if(i)return i}var a=so(r);if(a)return a;var o=so(n);return o||(r&&r.body?vv(r):(n?Ob(n)||mn(X,n,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,la(t)):(e.Debug.assert(!!r,"there must exist a getter as we are current checking either setter or getter in this function"),Ob(r)||mn(X,r,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,la(t))),Ee))}function po(t){var r=Ao(Oo(t));return 8650752&r.flags?r:2097152&r.flags?e.find(r.types,(function(e){return!!(8650752&e.flags)})):void 0}function fo(t){var r=Tn(t),n=r;if(!r.type){var i=t.valueDeclaration&&Ry(t.valueDeclaration,!1);if(i){var a=Oy(t,i);a&&(t=r=a)}n.type=r.type=function(t){var r=t.valueDeclaration;if(1536&t.flags&&e.isShorthandAmbientModuleSymbol(t))return Ee;if(r&&(218===r.kind||e.isAccessExpression(r)&&218===r.parent.kind))return Wa(t);if(512&t.flags&&r&&e.isSourceFile(r)&&r.commonJsModuleIndicator){var n=vi(t);if(n!==t){if(!Da(t,0))return we;var i=Ci(t.exports.get("export=")),a=Wa(i,i===n?void 0:n);return Ca()?a:go(t)}}var o=qi(16,t);if(32&t.flags){var s=po(t);return s?fu([o,s]):o}return W&&16777216&t.flags?Nf(o):o}(t)}return r.type}function mo(e){var t=Tn(e);return t.type||(t.type=Uo(e))}function go(t){var r=t.valueDeclaration;return e.getEffectiveTypeAnnotationNode(r)?(pn(t.valueDeclaration,e.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,la(t)),we):(X&&(161!==r.kind||r.initializer)&&pn(t.valueDeclaration,e.Diagnostics._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,la(t)),Ee)}function _o(t){var r=e.getCheckFlags(t);return 65536&r?function(t){var r=Tn(t);return r.type||(e.Debug.assertIsDefined(r.deferralParent),e.Debug.assertIsDefined(r.deferralConstituents),r.type=1048576&r.deferralParent.flags?ou(r.deferralConstituents):fu(r.deferralConstituents)),r.type}(t):1&r?function(e){var t=Tn(e);if(!t.type){if(!Da(e,0))return t.type=we;var r=Wd(_o(t.target),t.mapper);Ca()||(r=go(e)),t.type=r}return t.type}(t):262144&r?function(t){if(!t.type){var r=t.mappedType;if(!Da(t,0))return r.containsError=!0,we;var n=Wd(Fs(r.target||r),Md(r.mapper,Ns(r),t.keyType)),i=W&&16777216&t.flags&&!Rv(n,49152)?Nf(n):524288&t.checkFlags?Hm(n,524288):n;Ca()||(pn(d,e.Diagnostics.Type_of_property_0_circularly_references_itself_in_mapped_type_1,la(t),da(r)),i=we),t.type=i}return t.type}(t):8192&r?function(e){return um(e.propertyType,e.mappedType,e.constraintType)}(t):7&t.flags?ao(t):9136&t.flags?fo(t):8&t.flags?mo(t):98304&t.flags?lo(t):2097152&t.flags?function(e){var t=Tn(e);if(!t.type){var r=ai(e);t.type=111551&r.flags?_o(r):we}return t.type}(t):we}function ho(t,r){return void 0!==t&&void 0!==r&&!!(4&e.getObjectFlags(t))&&t.target===r}function yo(t){return 4&e.getObjectFlags(t)?t.target:t}function vo(t,r){return function t(n){if(7&e.getObjectFlags(n)){var i=yo(n);return i===r||e.some(Po(i),t)}if(2097152&n.flags)return e.some(n.types,t);return!1}(t)}function bo(t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];t=e.appendIfUnique(t,qo(Ai(a)))}return t}function ko(t,r){for(;;){if((t=t.parent)&&e.isBinaryExpression(t)){var n=e.getAssignmentDeclarationKind(t);if(6===n||3===n){var i=Ai(t.left);i&&i.parent&&!e.findAncestor(i.parent.valueDeclaration,(function(e){return t===e}))&&(t=i.parent.valueDeclaration)}}if(!t)return;switch(t.kind){case 234:case 254:case 223:case 256:case 170:case 171:case 165:case 175:case 176:case 311:case 253:case 166:case 209:case 210:case 257:case 333:case 334:case 328:case 327:case 191:case 185:var a=ko(t,r);if(191===t.kind)return e.append(a,qo(Ai(t.typeParameter)));if(185===t.kind)return e.concatenate(a,Zu(t));if(234===t.kind&&!e.isInJSFile(t))break;var o=bo(a,e.getEffectiveTypeParameterDeclarations(t)),s=r&&(254===t.kind||223===t.kind||256===t.kind||Fy(t))&&Oo(Ai(t)).thisType;return s?e.append(o,s):o;case 329:var c=e.getParameterSymbolFromJSDoc(t);c&&(t=c.valueDeclaration)}}}function xo(t){var r=32&t.flags?t.valueDeclaration:e.getDeclarationOfKind(t,256);return e.Debug.assert(!!r,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),ko(r)}function Eo(t){for(var r,n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(256===a.kind||254===a.kind||223===a.kind||Fy(a)||e.isTypeAlias(a)){var o=a;r=bo(r,e.getEffectiveTypeParameterDeclarations(o))}}return r}function So(e){var t=hc(e,1);if(1===t.length){var r=t[0];if(!r.typeParameters&&1===r.parameters.length&&U(r)){var n=Qy(r.parameters[0]);return Pa(n)||of(n)===Ee}}return!1}function Do(e){if(hc(e,1).length>0)return!0;if(8650752&e.flags){var t=Qs(e);return!!t&&So(t)}return!1}function wo(t){return e.getEffectiveBaseTypeNode(t.symbol.valueDeclaration)}function To(t,r,n){var i=e.length(r),a=e.isInJSFile(n);return e.filter(hc(t,1),(function(t){return(a||i>=Nc(t.typeParameters))&&i<=e.length(t.typeParameters)}))}function Co(t,r,n){var i=To(t,r,n),a=e.map(r,xd);return e.sameMap(i,(function(t){return e.some(t.typeParameters)?Jc(t,a,e.isInJSFile(n)):t}))}function Ao(t){if(!t.resolvedBaseConstructorType){var r=t.symbol.valueDeclaration,n=e.getEffectiveBaseTypeNode(r),i=wo(t);if(!i)return t.resolvedBaseConstructorType=Ne;if(!Da(t,1))return we;var a=fb(i.expression);if(n&&i!==n&&(e.Debug.assert(!n.typeArguments),fb(n.expression)),2621440&a.flags&&Us(a),!Ca())return pn(t.symbol.valueDeclaration,e.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,la(t.symbol)),t.resolvedBaseConstructorType=we;if(!(1&a.flags||a===Oe||Do(a))){var o=pn(i.expression,e.Diagnostics.Type_0_is_not_a_constructor_function_type,da(a));if(262144&a.flags){var s=tl(a),c=Ae;if(s){var l=hc(s,1);l[0]&&(c=Bc(l[0]))}e.addRelatedInfo(o,e.createDiagnosticForNode(a.symbol.declarations[0],e.Diagnostics.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,la(a.symbol),da(c)))}return t.resolvedBaseConstructorType=we}t.resolvedBaseConstructorType=a}return t.resolvedBaseConstructorType}function No(t,r){pn(t,e.Diagnostics.Type_0_recursively_references_itself_as_a_base_type,da(r,void 0,2))}function Po(t){if(!t.baseTypesResolved){if(Da(t,7)&&(8&t.objectFlags?t.resolvedBaseTypes=[Io(t)]:96&t.symbol.flags?(32&t.symbol.flags&&function(t){t.resolvedBaseTypes=e.resolvingEmptyArray;var r=ac(Ao(t));if(!(2621441&r.flags))return t.resolvedBaseTypes=e.emptyArray;var n,i=wo(t),a=r.symbol?Jo(r.symbol):void 0;if(r.symbol&&32&r.symbol.flags&&function(e){var t=e.outerTypeParameters;if(t){var r=t.length-1,n=ll(e);return t[r].symbol!==n[r].symbol}return!0}(a))n=dl(i,r.symbol);else if(1&r.flags)n=r;else{var o=Co(r,i.typeArguments,i);if(!o.length)return pn(i.expression,e.Diagnostics.No_base_constructor_has_the_specified_number_of_type_arguments),t.resolvedBaseTypes=e.emptyArray;n=Bc(o[0])}if(n===we)return t.resolvedBaseTypes=e.emptyArray;var s=uc(n);if(!Fo(s)){var c=mc(void 0,n),l=e.chainDiagnosticMessages(c,e.Diagnostics.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,da(s));return Qr.add(e.createDiagnosticForNodeFromMessageChain(i.expression,l)),t.resolvedBaseTypes=e.emptyArray}if(t===s||vo(s,t))return pn(t.symbol.valueDeclaration,e.Diagnostics.Type_0_recursively_references_itself_as_a_base_type,da(t,void 0,2)),t.resolvedBaseTypes=e.emptyArray;t.resolvedBaseTypes===e.resolvingEmptyArray&&(t.members=void 0);t.resolvedBaseTypes=[s]}(t),64&t.symbol.flags&&function(t){t.resolvedBaseTypes=t.resolvedBaseTypes||e.emptyArray;for(var r=0,n=t.symbol.declarations;r<n.length;r++){var i=n[r];if(256===i.kind&&e.getInterfaceBaseTypeNodes(i))for(var a=0,o=e.getInterfaceBaseTypeNodes(i);a<o.length;a++){var s=o[a],c=uc(xd(s));c!==we&&(Fo(c)?t===c||vo(c,t)?No(i,t):t.resolvedBaseTypes===e.emptyArray?t.resolvedBaseTypes=[c]:t.resolvedBaseTypes.push(c):pn(s,e.Diagnostics.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}(t)):e.Debug.fail("type must be class or interface"),!Ca()))for(var r=0,n=t.symbol.declarations;r<n.length;r++){var i=n[r];254!==i.kind&&256!==i.kind||No(i,t)}t.baseTypesResolved=!0}return t.resolvedBaseTypes}function Io(t){return jl(ou(e.sameMap(t.typeParameters,(function(e,r){return 8&t.elementFlags[r]?qu(e,Me):e}))||e.emptyArray),t.readonly)}function Fo(t){if(262144&t.flags){var r=Qs(t);if(r)return Fo(r)}return!!(67633153&t.flags&&!zs(t)||2097152&t.flags&&e.every(t.types,Fo))}function Oo(t){var r,n,i,a,o,s=Tn(t),c=s;if(!s.declaredType){var l=32&t.flags?1:2,u=Oy(t,(r=t.valueDeclaration,i=r&&Ry(r,!0),a=null===(n=null==i?void 0:i.exports)||void 0===n?void 0:n.get("prototype"),(o=(null==a?void 0:a.valueDeclaration)&&function(t){if(!t.parent)return!1;for(var r=t.parent;r&&202===r.kind;)r=r.parent;if(r&&e.isBinaryExpression(r)&&e.isPrototypeAccess(r.left)&&62===r.operatorToken.kind){var n=e.getInitializerOfBinaryExpression(r);return e.isObjectLiteralExpression(n)&&n}}(a.valueDeclaration))?Ai(o):void 0));u&&(t=s=u);var d=c.declaredType=s.declaredType=qi(l,t),p=xo(t),f=Eo(t);(p||f||1===l||!function(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];if(256===i.kind){if(128&i.flags)return!1;var a=e.getInterfaceBaseTypeNodes(i);if(a)for(var o=0,s=a;o<s.length;o++){var c=s[o];if(e.isEntityNameExpression(c.expression)){var l=fi(c.expression,788968,!0);if(!l||!(64&l.flags)||Oo(l).thisType)return!1}}}}return!0}(t))&&(d.objectFlags|=4,d.typeParameters=e.concatenate(p,f),d.outerTypeParameters=p,d.localTypeParameters=f,d.instantiations=new e.Map,d.instantiations.set(nl(d.typeParameters),d),d.target=d,d.resolvedTypeArguments=d.typeParameters,d.thisType=Ji(t),d.thisType.isThisType=!0,d.thisType.constraint=d)}return s.declaredType}function Ro(t){var r=Tn(t);if(!r.declaredType){if(!Da(t,2))return we;var n=e.Debug.checkDefined(e.find(t.declarations,e.isTypeAlias),"Type alias symbol with no valid declaration found"),i=e.isJSDocTypeAlias(n)?n.typeExpression:n.type,a=i?xd(i):we;if(Ca()){var o=Eo(t);o&&(r.typeParameters=o,r.instantiations=new e.Map,r.instantiations.set(nl(o),a))}else a=we,pn(e.isNamedDeclaration(n)?n.name:n||n,e.Diagnostics.Type_alias_0_circularly_references_itself,la(t));r.declaredType=a}return r.declaredType}function Mo(t){return!!e.isStringLiteralLike(t)||218===t.kind&&(Mo(t.left)&&Mo(t.right))}function Lo(t){var r=t.initializer;if(!r)return!(8388608&t.flags);switch(r.kind){case 10:case 8:case 14:return!0;case 216:return 40===r.operator&&8===r.operand.kind;case 78:return e.nodeIsMissing(r)||!!Ai(t.parent).exports.get(r.escapedText);case 218:return Mo(r);default:return!1}}function jo(t){var r=Tn(t);if(void 0!==r.enumKind)return r.enumKind;for(var n=!1,i=0,a=t.declarations;i<a.length;i++){var o=a[i];if(258===o.kind)for(var s=0,c=o.members;s<c.length;s++){var l=c[s];if(l.initializer&&e.isStringLiteralLike(l.initializer))return r.enumKind=1;Lo(l)||(n=!0)}}return r.enumKind=n?0:1}function Bo(e){return 1024&e.flags&&!(1048576&e.flags)?Jo(Ni(e.symbol)):e}function zo(e){var t=Tn(e);if(t.declaredType)return t.declaredType;if(1===jo(e)){b++;for(var r=[],n=0,i=e.declarations;n<i.length;n++){var a=i[n];if(258===a.kind)for(var o=0,s=a.members;o<s.length;o++){var c=s[o],l=xE(c),u=md(hd(void 0!==l?l:0,b,Ai(c)));Tn(Ai(c)).declaredType=u,r.push(gd(u))}}if(r.length){var d=ou(r,1,e,void 0);return 1048576&d.flags&&(d.flags|=1024,d.symbol=e),t.declaredType=d}}var p=ji(32);return p.symbol=e,t.declaredType=p}function Uo(e){var t=Tn(e);if(!t.declaredType){var r=zo(Ni(e));t.declaredType||(t.declaredType=r)}return t.declaredType}function qo(e){var t=Tn(e);return t.declaredType||(t.declaredType=Ji(e))}function Jo(e){return Vo(e)||we}function Vo(e){return 96&e.flags?Oo(e):524288&e.flags?Ro(e):262144&e.flags?qo(e):384&e.flags?zo(e):8&e.flags?Uo(e):2097152&e.flags?function(e){var t=Tn(e);return t.declaredType||(t.declaredType=Jo(ai(e)))}(e):void 0}function Ho(e){switch(e.kind){case 129:case 153:case 148:case 145:case 156:case 132:case 149:case 146:case 114:case 151:case 142:case 192:return!0;case 179:return Ho(e.elementType);case 174:return!e.typeArguments||e.typeArguments.every(Ho)}return!1}function Ko(t){var r=e.getEffectiveConstraintOfTypeParameter(t);return!r||Ho(r)}function Wo(t){var r=e.getEffectiveTypeAnnotationNode(t);return r?Ho(r):!e.hasInitializer(t)}function Go(t){if(t.declarations&&1===t.declarations.length){var r=t.declarations[0];if(r)switch(r.kind){case 164:case 163:return Wo(r);case 166:case 165:case 167:case 168:case 169:return n=r,i=e.getEffectiveReturnTypeNode(n),a=e.getEffectiveTypeParameterDeclarations(n),(167===n.kind||!!i&&Ho(i))&&n.parameters.every(Wo)&&a.every(Ko)}}var n,i,a;return!1}function $o(t,r,n){for(var i=e.createSymbolTable(),a=0,o=t;a<o.length;a++){var s=o[a];i.set(s.escapedName,n&&Go(s)?s:Bd(s,r))}return i}function Yo(e,t){for(var r=0,n=t;r<n.length;r++){var i=n[r];e.has(i.escapedName)||Xo(i)||e.set(i.escapedName,i)}}function Xo(t){return!!t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration)&&e.hasSyntacticModifier(t.valueDeclaration,32)}function Qo(t){if(!t.declaredProperties){var r=t.symbol,n=ss(r);t.declaredProperties=Hi(n),t.declaredCallSignatures=e.emptyArray,t.declaredConstructSignatures=e.emptyArray,t.declaredCallSignatures=Rc(n.get("__call")),t.declaredConstructSignatures=Rc(n.get("__new")),t.declaredStringIndexInfo=Zc(r,0),t.declaredNumberIndexInfo=Zc(r,1)}return t}function Zo(e){return!!(8576&e.flags)}function es(t){if(!e.isComputedPropertyName(t)&&!e.isElementAccessExpression(t))return!1;var r=e.isComputedPropertyName(t)?t.expression:t.argumentExpression;return e.isEntityNameExpression(r)&&Zo(e.isComputedPropertyName(t)?M_(t):$v(r))}function ts(e){return 95===e.charCodeAt(0)&&95===e.charCodeAt(1)&&64===e.charCodeAt(2)}function rs(t){var r=e.getNameOfDeclaration(t);return!!r&&es(r)}function ns(t){return!e.hasDynamicName(t)||rs(t)}function is(t){return 8192&t.flags?t.escapedName:384&t.flags?e.escapeLeadingUnderscores(""+t.value):e.Debug.fail()}function as(t,r,n,i){e.Debug.assert(!!i.symbol,"The member is expected to have a symbol.");var a=Cn(i);if(!a.resolvedSymbol){a.resolvedSymbol=i.symbol;var o=e.isBinaryExpression(i)?i.left:i.name,s=e.isElementAccessExpression(o)?$v(o.argumentExpression):M_(o);if(Zo(s)){var c=is(s),l=i.symbol.flags,u=n.get(c);u||n.set(c,u=yn(0,c,4096));var d=r&&r.get(c);if(u.flags&vn(l)||d){var p=d?e.concatenate(d.declarations,u.declarations):u.declarations,f=!(8192&s.flags)&&e.unescapeLeadingUnderscores(c)||e.declarationNameToString(o);e.forEach(p,(function(t){return pn(e.getNameOfDeclaration(t)||t,e.Diagnostics.Property_0_was_also_declared_here,f)})),pn(o||i,e.Diagnostics.Duplicate_property_0,f),u=yn(0,c,4096)}return u.nameType=s,function(t,r,n){e.Debug.assert(!!(4096&e.getCheckFlags(t)),"Expected a late-bound symbol."),t.flags|=n,Tn(r.symbol).lateSymbol=t,t.declarations?t.declarations.push(r):t.declarations=[r],111551&n&&(t.valueDeclaration&&t.valueDeclaration.kind===r.kind||(t.valueDeclaration=r))}(u,i,l),u.parent?e.Debug.assert(u.parent===t,"Existing symbol parent should match new one"):u.parent=t,a.resolvedSymbol=u}}return a.resolvedSymbol}function os(t,r){var n=Tn(t);if(!n[r]){var i="resolvedExports"===r,a=i?1536&t.flags?Ti(t):t.exports:t.members;n[r]=a||T;for(var o=e.createSymbolTable(),s=0,c=t.declarations||e.emptyArray;s<c.length;s++){var l=c[s],u=e.getMembersOfDeclaration(l);if(u)for(var d=0,p=u;d<p.length;d++){var f=p[d];i===e.hasStaticModifier(f)&&rs(f)&&as(t,a,o,f)}}var m=t.assignmentDeclarationMembers;if(m)for(var g=0,_=e.arrayFrom(m.values());g<_.length;g++){f=_[g];var h=e.getAssignmentDeclarationKind(f);i===!(3===h||e.isBinaryExpression(f)&&u_(f,h)||9===h||6===h)&&rs(f)&&as(t,a,o,f)}n[r]=function(t,r){if(!(null==t?void 0:t.size))return r;if(!(null==r?void 0:r.size))return t;var n=e.createSymbolTable();return Dn(n,t),Dn(n,r),n}(a,o)||T}return n[r]}function ss(e){return 6256&e.flags?os(e,"resolvedMembers"):e.members||T}function cs(t){if(106500&t.flags&&"__computed"===t.escapedName){var r=Tn(t);if(!r.lateSymbol&&e.some(t.declarations,rs)){var n=Ci(t.parent);e.some(t.declarations,e.hasStaticModifier)?Si(n):ss(n)}return r.lateSymbol||(r.lateSymbol=t)}return t}function ls(t,r,n){if(4&e.getObjectFlags(t)){var i=t.target,a=ll(t);if(e.length(i.typeParameters)===e.length(a)){var o=ol(i,e.concatenate(a,[r||i.thisType]));return n?ac(o):o}}else if(2097152&t.flags){var s=e.sameMap(t.types,(function(e){return ls(e,r,n)}));return s!==t.types?fu(s):t}return n?ac(t):t}function us(t,r,n,i){var a,o,s,c,l,u;e.rangeEquals(n,i,0,n.length)?(o=r.symbol?ss(r.symbol):e.createSymbolTable(r.declaredProperties),s=r.declaredCallSignatures,c=r.declaredConstructSignatures,l=r.declaredStringIndexInfo,u=r.declaredNumberIndexInfo):(a=Td(n,i),o=$o(r.declaredProperties,a,1===n.length),s=wd(r.declaredCallSignatures,a),c=wd(r.declaredConstructSignatures,a),l=Xd(r.declaredStringIndexInfo,a),u=Xd(r.declaredNumberIndexInfo,a));var d=Po(r);if(d.length){r.symbol&&o===ss(r.symbol)&&(o=e.createSymbolTable(r.declaredProperties)),Ki(t,o,s,c,l,u);for(var p=e.lastOrUndefined(i),f=0,m=d;f<m.length;f++){var g=m[f],_=p?ls(Wd(g,a),p):g;Yo(o,Hs(_)),s=e.concatenate(s,hc(_,0)),c=e.concatenate(c,hc(_,1)),l||(l=_===Ee?Qc(Ee,!1):bc(_,0)),u=u||bc(_,1)}}Ki(t,o,s,c,l,u)}function ds(e,t,r,n,i,a,o,s){var c=new h(le,s);return c.declaration=e,c.typeParameters=t,c.parameters=n,c.thisParameter=r,c.resolvedReturnType=i,c.resolvedTypePredicate=a,c.minArgumentCount=o,c.resolvedMinArgumentCount=void 0,c.target=void 0,c.mapper=void 0,c.unionSignatures=void 0,c}function ps(e){var t=ds(e.declaration,e.typeParameters,e.thisParameter,e.parameters,void 0,void 0,e.minArgumentCount,39&e.flags);return t.target=e.target,t.mapper=e.mapper,t.unionSignatures=e.unionSignatures,t}function fs(e,t){var r=ps(e);return r.unionSignatures=t,r.target=void 0,r.mapper=void 0,r}function ms(t,r){if((24&t.flags)===r)return t;t.optionalCallSignatureCache||(t.optionalCallSignatureCache={});var n=8===r?"inner":"outer";return t.optionalCallSignatureCache[n]||(t.optionalCallSignatureCache[n]=function(t,r){e.Debug.assert(8===r||16===r,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");var n=ps(t);return n.flags|=r,n}(t,r))}function gs(t,r){if(U(t)){var n=t.parameters.length-1,i=_o(t.parameters[n]);if(vf(i))return[a(i,n)];if(!r&&1048576&i.flags&&e.every(i.types,vf))return e.map(i.types,(function(e){return a(e,n)}))}return[t.parameters];function a(r,n){var i=ll(r),a=r.target.labeledElementDeclarations,o=e.map(i,(function(e,i){var o=!!a&&Zy(a[i])||ev(t,n+i,r),s=r.target.elementFlags[i],c=yn(1,o,12&s?32768:2&s?16384:0);return c.type=4&s?jl(e):e,c}));return e.concatenate(t.parameters.slice(0,n),o)}}function _s(e,t,r,n,i){for(var a=0,o=e;a<o.length;a++){var s=o[a];if(ef(s,t,r,n,i,r?op:ip))return s}}function hs(t,r,n){if(r.typeParameters){if(n>0)return;for(var i=1;i<t.length;i++)if(!_s(t[i],r,!1,!1,!1))return;return[r]}var a;for(i=0;i<t.length;i++){var o=i===n?r:_s(t[i],r,!0,!1,!0);if(!o)return;a=e.appendIfUnique(a,o)}return a}function ys(t){for(var r,n,i=0;i<t.length;i++){if(0===t[i].length)return e.emptyArray;t[i].length>1&&(n=void 0===n?i:-1);for(var a=0,o=t[i];a<o.length;a++){var s=o[a];if(!r||!_s(r,s,!1,!1,!0)){var c=hs(t,s,i);if(c){var l=s;if(c.length>1){var u=s.thisParameter,d=e.forEach(c,(function(e){return e.thisParameter}));if(d)u=jf(d,fu(e.mapDefined(c,(function(e){return e.thisParameter&&_o(e.thisParameter)}))));(l=fs(s,c)).thisParameter=u}(r||(r=[])).push(l)}}}}if(!e.length(r)&&-1!==n){for(var p=t[void 0!==n?n:0],f=p.slice(),m=function(t){if(t!==p){var r=t[0];if(e.Debug.assert(!!r,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),f=r.typeParameters&&e.some(f,(function(e){return!!e.typeParameters&&!function(e,t){if(e.length!==t.length)return!1;for(var r=Td(t,e),n=0;n<e.length;n++){var i=e[n],a=t[n];if(i!==a&&!np(tl(i)||Ae,Wd(tl(a)||Ae,r)))return!1}return!0}(r.typeParameters,e.typeParameters)}))?void 0:e.map(f,(function(t){return function(t,r){var n,i=t.typeParameters||r.typeParameters;t.typeParameters&&r.typeParameters&&(n=Td(r.typeParameters,t.typeParameters));var a=t.declaration,o=function(e,t,r){for(var n=ov(e),i=ov(t),a=n>=i?e:t,o=a===e?t:e,s=a===e?n:i,c=cv(e)||cv(t),l=c&&!cv(a),u=new Array(s+(l?1:0)),d=0;d<s;d++){var p=iv(a,d);a===t&&(p=Wd(p,r));var f=iv(o,d)||Ae;o===t&&(f=Wd(f,r));var m=fu([p,f]),g=c&&!l&&d===s-1,_=d>=sv(a)&&d>=sv(o),h=d>=n?void 0:ev(e,d),y=d>=i?void 0:ev(t,d),v=yn(1|(_&&!g?16777216:0),(h===y?h:h?y?void 0:h:y)||"arg"+d);v.type=g?jl(m):m,u[d]=v}if(l){var b=yn(1,"args");b.type=jl(nv(o,s)),o===t&&(b.type=Wd(b.type,r)),u[s]=b}return u}(t,r,n),s=function(e,t,r){if(!e||!t)return e||t;var n=fu([_o(e),Wd(_o(t),r)]);return jf(e,n)}(t.thisParameter,r.thisParameter,n),c=Math.max(t.minArgumentCount,r.minArgumentCount),l=ds(a,i,s,o,void 0,void 0,c,39&(t.flags|r.flags));l.unionSignatures=e.concatenate(t.unionSignatures||[t],[r]),n&&(l.mapper=t.mapper&&t.unionSignatures?Fd(t.mapper,n):n);return l}(t,r)})),!f)return"break"}},g=0,_=t;g<_.length;g++){if("break"===m(_[g]))break}r=f}return r||e.emptyArray}function vs(e,t){for(var r=[],n=!1,i=0,a=e;i<a.length;i++){var o=bc(ac(a[i]),t);if(!o)return;r.push(o.type),n=n||o.isReadonly}return Qc(ou(r,2),n)}function bs(e,t){return e?t?fu([e,t]):e:t}function ks(e,t){return e?t?Qc(fu([e.type,t.type]),e.isReadonly&&t.isReadonly):e:t}function xs(e,t){return e&&t&&Qc(ou([e.type,t.type]),e.isReadonly||t.isReadonly)}function Es(t){var r=e.countWhere(t,(function(e){return hc(e,1).length>0})),n=e.map(t,So);if(r>0&&r===e.countWhere(n,(function(e){return e}))){var i=n.indexOf(!0);n[i]=!1}return n}function Ss(t){for(var r,n,i,a,o=t.types,s=Es(o),c=e.countWhere(s,(function(e){return e})),l=function(l){var u=t.types[l];if(!s[l]){var d=hc(u,1);d.length&&c>0&&(d=e.map(d,(function(e){var t=ps(e);return t.resolvedReturnType=function(e,t,r,n){for(var i=[],a=0;a<t.length;a++)a===n?i.push(e):r[a]&&i.push(Bc(hc(t[a],1)[0]));return fu(i)}(Bc(e),o,s,l),t}))),n=Ds(n,d)}r=Ds(r,hc(u,0)),i=ks(i,bc(u,0)),a=ks(a,bc(u,1))},u=0;u<o.length;u++)l(u);Ki(t,T,r||e.emptyArray,n||e.emptyArray,i,a)}function Ds(t,r){for(var n=function(r){t&&!e.every(t,(function(e){return!ef(e,r,!1,!1,!1,ip)}))||(t=e.append(t,r))},i=0,a=r;i<a.length;i++){n(a[i])}return t}function ws(t){var r=Ci(t.symbol);if(t.target)Ki(t,T,e.emptyArray,e.emptyArray,void 0,void 0),Ki(t,a=$o(qs(t.target),t.mapper,!1),n=wd(hc(t.target,0),t.mapper),i=wd(hc(t.target,1),t.mapper),o=Xd(bc(t.target,0),t.mapper),l=Xd(bc(t.target,1),t.mapper));else if(2048&r.flags){Ki(t,T,e.emptyArray,e.emptyArray,void 0,void 0);var n=Rc((a=ss(r)).get("__call")),i=Rc(a.get("__new"));Ki(t,a,n,i,o=Zc(r,0),l=Zc(r,1))}else{var a=T,o=void 0;if(r.exports&&(a=Si(r),r===ae)){var s=new e.Map;a.forEach((function(e){418&e.flags||s.set(e.escapedName,e)})),a=s}if(Ki(t,a,e.emptyArray,e.emptyArray,void 0,void 0),32&r.flags){var c=Ao(Oo(r));11272192&c.flags?Yo(a=e.createSymbolTable(Hi(a)),Hs(c)):c===Ee&&(o=Qc(Ee,!1))}var l=384&r.flags&&(32&Jo(r).flags||e.some(t.properties,(function(e){return!!(296&_o(e).flags)})))?fr:void 0;if(Ki(t,a,e.emptyArray,e.emptyArray,o,l),8208&r.flags&&(t.callSignatures=Rc(r)),32&r.flags){var u=Oo(r);i=r.members?Rc(r.members.get("__constructor")):e.emptyArray;16&r.flags&&(i=e.addRange(i.slice(),e.mapDefined(t.callSignatures,(function(e){return Fy(e.declaration)?ds(e.declaration,e.typeParameters,e.thisParameter,e.parameters,u,void 0,e.minArgumentCount,39&e.flags):void 0})))),i.length||(i=function(t){var r=hc(Ao(t),1),n=e.getClassLikeDeclarationOfSymbol(t.symbol),i=!!n&&e.hasSyntacticModifier(n,128);if(0===r.length)return[ds(void 0,t.localTypeParameters,void 0,e.emptyArray,t,void 0,0,i?4:0)];for(var a=wo(t),o=e.isInJSFile(a),s=Sl(a),c=e.length(s),l=[],u=0,d=r;u<d.length;u++){var p=d[u],f=Nc(p.typeParameters),m=e.length(p.typeParameters);if(o||c>=f&&c<=m){var g=m?Hc(p,Pc(s,p.typeParameters,f,o)):ps(p);g.typeParameters=t.localTypeParameters,g.resolvedReturnType=t,g.flags=i?4|g.flags:-5&g.flags,l.push(g)}}return l}(u)),t.constructSignatures=i}}}function Ts(t){if(4194304&t.flags){var r=ac(t.type);return bf(r)?Yl(r):Eu(r)}if(16777216&t.flags){if(t.root.isDistributive){var n=t.checkType,i=Ts(n);if(i!==n)return Kd(t,Rd(t.root.checkType,i,t.mapper))}return t}return 1048576&t.flags?pg(t,Ts):2097152&t.flags?fu(e.sameMap(t.types,Ts)):t}function Cs(t){return 4096&e.getCheckFlags(t)}function As(t){var r,n,i=e.createSymbolTable();Ki(t,T,e.emptyArray,e.emptyArray,void 0,void 0);var a=Ns(t),o=Ps(t),s=Is(t.target||t),c=Fs(t.target||t),l=ac(Ms(t)),u=Ls(t),d=Z?128:8576;if(Rs(t)){for(var p=0,f=Hs(l);p<f.length;p++){m(bu(f[p],d))}(1&l.flags||bc(l,0))&&m(Re),!Z&&bc(l,1)&&m(Me)}else cg(Ts(o),m);function m(e){cg(s?Wd(s,Md(t.mapper,a,e)):e,(function(o){return function(e,o){if(Zo(o)){var s=is(o),d=i.get(s);if(d)d.nameType=ou([d.nameType,o]),d.keyType=ou([d.keyType,e]);else{var p=Zo(e)?gc(l,is(e)):void 0,f=!!(4&u||!(8&u)&&p&&16777216&p.flags),m=!!(1&u||!(2&u)&&p&&Nv(p)),g=W&&!f&&p&&16777216&p.flags,_=yn(4|(f?16777216:0),s,262144|(p?Cs(p):0)|(m?8:0)|(g?524288:0));_.mappedType=t,_.nameType=o,_.keyType=e,p&&(_.syntheticOrigin=p,_.declarations=p.declarations),i.set(s,_)}}else if(45&o.flags){var h=Wd(c,Md(t.mapper,a,e));5&o.flags?r=Qc(r?ou([r.type,h]):h,!!(1&u)):n=Qc(n?ou([n.type,h]):h,!!(1&u))}}(e,o)}))}Ki(t,i,e.emptyArray,e.emptyArray,r,n)}function Ns(e){return e.typeParameter||(e.typeParameter=qo(Ai(e.declaration.typeParameter)))}function Ps(e){return e.constraintType||(e.constraintType=Ws(Ns(e))||we)}function Is(e){return e.declaration.nameType?e.nameType||(e.nameType=Wd(xd(e.declaration.nameType),e.mapper)):void 0}function Fs(e){return e.templateType||(e.templateType=e.declaration.type?Wd(za(xd(e.declaration.type),!!(4&Ls(e))),e.mapper):we)}function Os(t){return e.getEffectiveConstraintOfTypeParameter(t.declaration.typeParameter)}function Rs(e){var t=Os(e);return 189===t.kind&&139===t.operator}function Ms(e){if(!e.modifiersType)if(Rs(e))e.modifiersType=Wd(xd(Os(e).type),e.mapper);else{var t=Ps(Ku(e.declaration)),r=t&&262144&t.flags?Ws(t):t;e.modifiersType=r&&4194304&r.flags?Wd(r.type,e.mapper):Ae}return e.modifiersType}function Ls(e){var t=e.declaration;return(t.readonlyToken?40===t.readonlyToken.kind?2:1:0)|(t.questionToken?40===t.questionToken.kind?8:4:0)}function js(e){var t=Ls(e);return 8&t?-1:4&t?1:0}function Bs(e){var t=js(e),r=Ms(e);return t||(zs(r)?js(r):0)}function zs(t){return!!(32&e.getObjectFlags(t))&&Mu(Ps(t))}function Us(t){return t.members||(524288&t.flags?4&t.objectFlags?function(t){var r=Qo(t.target),n=e.concatenate(r.typeParameters,[r.thisType]),i=ll(t);us(t,r,n,i.length===n.length?i:e.concatenate(i,[t]))}(t):3&t.objectFlags?function(t){us(t,Qo(t),e.emptyArray,e.emptyArray)}(t):2048&t.objectFlags?function(t){for(var r=bc(t.source,0),n=Ls(t.mappedType),i=!(1&n),a=4&n?0:16777216,o=r&&Qc(um(r.type,t.mappedType,t.constraintType),i&&r.isReadonly),s=e.createSymbolTable(),c=0,l=Hs(t.source);c<l.length;c++){var u=l[c],d=8192|(i&&Nv(u)?8:0),p=yn(4|u.flags&a,u.escapedName,d);p.declarations=u.declarations,p.nameType=Tn(u).nameType,p.propertyType=_o(u),p.mappedType=t.mappedType,p.constraintType=t.constraintType,s.set(u.escapedName,p)}Ki(t,s,e.emptyArray,e.emptyArray,o,void 0)}(t):16&t.objectFlags?ws(t):32&t.objectFlags&&As(t):1048576&t.flags?function(t){var r=ys(e.map(t.types,(function(e){return e===vt?[ur]:hc(e,0)}))),n=ys(e.map(t.types,(function(e){return hc(e,1)}))),i=vs(t.types,0),a=vs(t.types,1);Ki(t,T,r,n,i,a)}(t):2097152&t.flags&&Ss(t)),t}function qs(t){return 524288&t.flags?Us(t).properties:e.emptyArray}function Js(e,t){if(524288&e.flags){var r=Us(e).members.get(t);if(r&&Mi(r))return r}}function Vs(t){if(!t.resolvedProperties){for(var r=e.createSymbolTable(),n=0,i=t.types;n<i.length;n++){for(var a=i[n],o=0,s=Hs(a);o<s.length;o++){var c=s[o];if(!r.has(c.escapedName)){var l=lc(t,c.escapedName);l&&r.set(c.escapedName,l)}}if(1048576&t.flags&&!bc(a,0)&&!bc(a,1))break}t.resolvedProperties=Hi(r)}return t.resolvedProperties}function Hs(e){return 3145728&(e=oc(e)).flags?Vs(e):qs(e)}function Ks(e){return 262144&e.flags?Ws(e):8388608&e.flags?function(e){return ec(e)?function(e){var t=Gs(e.indexType);if(t&&t!==e.indexType){var r=Vu(e.objectType,t,e.noUncheckedIndexedAccessCandidate);if(r)return r}var n=Gs(e.objectType);if(n&&n!==e.objectType)return Vu(n,e.indexType,e.noUncheckedIndexedAccessCandidate);return}(e):void 0}(e):16777216&e.flags?function(e){return ec(e)?Xs(e):void 0}(e):Qs(e)}function Ws(e){return ec(e)?tl(e):void 0}function Gs(e){var t=ju(e,!1);return t!==e?t:Ks(e)}function $s(e){if(!e.resolvedDefaultConstraint){var t=function(e){return e.resolvedInferredTrueType||(e.resolvedInferredTrueType=e.combinedMapper?Wd(xd(e.root.node.trueType),e.combinedMapper):Xu(e))}(e),r=Qu(e);e.resolvedDefaultConstraint=Pa(t)?r:Pa(r)?t:ou([t,r])}return e.resolvedDefaultConstraint}function Ys(e){if(e.root.isDistributive&&e.restrictiveInstantiation!==e){var t=ju(e.checkType,!1),r=t===e.checkType?Ks(t):t;if(r&&r!==e.checkType){var n=Kd(e,Rd(e.root.checkType,r,e.mapper));if(!(131072&n.flags))return n}}}function Xs(e){return Ys(e)||$s(e)}function Qs(e){if(464781312&e.flags){var t=tc(e);return t!==lt&&t!==ut?t:void 0}return 4194304&e.flags?Qe:void 0}function Zs(e){return Qs(e)||e}function ec(e){return tc(e)!==ut}function tc(t){if(t.resolvedBaseConstraint)return t.resolvedBaseConstraint;var r=[];return t.resolvedBaseConstraint=ls(n(t),t);function n(t){if(!t.immediateBaseConstraint){if(!Da(t,4))return ut;var n=void 0;if((r.length<10||r.length<50&&!Yp(t,r,r.length))&&(r.push(t),n=function(t){if(262144&t.flags){var r=tl(t);return t.isThisType||!r?r:i(r)}if(3145728&t.flags){for(var n=[],a=!1,o=0,s=u=t.types;o<s.length;o++){var c=s[o],l=i(c);l?(l!==c&&(a=!0),n.push(l)):a=!0}return a?1048576&t.flags&&n.length===u.length?ou(n):2097152&t.flags&&n.length?fu(n):void 0:t}if(4194304&t.flags)return Qe;if(134217728&t.flags){var u=t.types,d=e.mapDefined(u,i);return d.length===u.length?Du(t.texts,d):Re}if(268435456&t.flags){return(r=i(t.type))?Tu(t.symbol,r):Re}if(8388608&t.flags){var p=i(t.objectType),f=i(t.indexType),m=p&&f&&Vu(p,f,t.noUncheckedIndexedAccessCandidate);return m&&i(m)}if(16777216&t.flags){return(r=Xs(t))&&i(r)}if(33554432&t.flags)return i(t.substitute);return t}(ju(t,!1)),r.pop()),!Ca()){if(262144&t.flags){var a=el(t);if(a){var o=pn(a,e.Diagnostics.Type_parameter_0_has_a_circular_constraint,da(t));!d||e.isNodeDescendantOf(a,d)||e.isNodeDescendantOf(d,a)||e.addRelatedInfo(o,e.createDiagnosticForNode(d,e.Diagnostics.Circularity_originates_in_type_at_this_location))}}n=ut}t.immediateBaseConstraint=n||lt}return t.immediateBaseConstraint}function i(e){var t=n(e);return t!==lt&&t!==ut?t:void 0}}function rc(t){if(t.default)t.default===dt&&(t.default=ut);else if(t.target){var r=rc(t.target);t.default=r?Wd(r,t.mapper):lt}else{t.default=dt;var n=t.symbol&&e.forEach(t.symbol.declarations,(function(t){return e.isTypeParameterDeclaration(t)&&t.default})),i=n?xd(n):lt;t.default===dt&&(t.default=i)}return t.default}function nc(e){var t=rc(e);return t!==lt&&t!==ut?t:void 0}function ic(e){return e.resolvedApparentType||(e.resolvedApparentType=function(e){var t=Ud(e);if(t&&!e.declaration.nameType){var r=Ws(t);if(r&&(rf(r)||vf(r)))return Wd(e,Rd(t,r,e.mapper))}return e}(e))}function ac(t){var r,n=465829888&t.flags?Qs(t)||Ae:t;return 32&e.getObjectFlags(n)?ic(n):2097152&n.flags?function(e){return e.resolvedApparentType||(e.resolvedApparentType=ls(e,e,!0))}(n):402653316&n.flags?St:296&n.flags?Dt:2112&n.flags?(r=V>=7,er||(er=Al("BigInt",0,r))||nt):528&n.flags?wt:12288&n.flags?Pl(V>=2):67108864&n.flags?nt:4194304&n.flags?Qe:2&n.flags&&!W?nt:n}function oc(e){return uc(ac(uc(e)))}function sc(t,r,n){for(var i,a,o,s=1048576&t.flags,c=s?0:16777216,l=4,u=0,d=0,p=t.types;d<p.length;d++){if(!((D=ac(p[d]))===we||131072&D.flags)){var f=(S=gc(D,r,n))?e.getDeclarationModifierFlagsFromSymbol(S):0;if(S){if(s?c|=16777216&S.flags:c&=S.flags,i){if(S!==i){a||(a=new e.Map).set(R(i),i);var m=R(S);a.has(m)||a.set(m,S)}}else i=S;u|=(Nv(S)?8:0)|(24&f?0:256)|(16&f?512:0)|(8&f?1024:0)|(32&f?2048:0),uh(S)||(l=2)}else if(s){var g=!ts(r)&&(R_(r)&&bc(D,1)||bc(D,0));g?(u|=32|(g.isReadonly?8:0),o=e.append(o,vf(D)?xf(D)||Ne:g.type)):km(D)?(u|=32,o=e.append(o,Ne)):u|=16}}}if(i&&!(s&&(a||48&u)&&1536&u)){if(!(a||16&u||o))return i;for(var _,h,y,v,b=[],k=!1,x=0,E=a?e.arrayFrom(a.values()):[i];x<E.length;x++){var S=E[x];v?S.valueDeclaration&&S.valueDeclaration!==v&&(k=!0):v=S.valueDeclaration,_=e.addRange(_,S.declarations);var D=_o(S);h?D!==h&&(u|=64):(h=D,y=Tn(S).nameType),ff(D)&&(u|=128),131072&D.flags&&(u|=131072),b.push(D)}e.addRange(b,o);var w=yn(4|c,r,l|u);return w.containingType=t,!k&&v&&(w.valueDeclaration=v,v.symbol.parent&&(w.parent=v.symbol.parent)),w.declarations=_,w.nameType=y,b.length>2?(w.checkFlags|=65536,w.deferralParent=t,w.deferralConstituents=b):w.type=s?ou(b):fu(b),w}}function cc(t,r,n){var i,a,o=(null===(i=t.propertyCacheWithoutObjectFunctionPropertyAugment)||void 0===i?void 0:i.get(r))||!n?null===(a=t.propertyCache)||void 0===a?void 0:a.get(r):void 0;o||(o=sc(t,r,n))&&(n?t.propertyCacheWithoutObjectFunctionPropertyAugment||(t.propertyCacheWithoutObjectFunctionPropertyAugment=e.createSymbolTable()):t.propertyCache||(t.propertyCache=e.createSymbolTable())).set(r,o);return o}function lc(t,r,n){var i=cc(t,r,n);return!i||16&e.getCheckFlags(i)?void 0:i}function uc(t){return 1048576&t.flags&&268435456&t.objectFlags?t.resolvedReducedType||(t.resolvedReducedType=function(t){var r=e.sameMap(t.types,uc);if(r===t.types)return t;var n=ou(r);1048576&n.flags&&(n.resolvedReducedType=n);return n}(t)):2097152&t.flags?(268435456&t.objectFlags||(t.objectFlags|=268435456|(e.some(Vs(t),dc)?536870912:0)),536870912&t.objectFlags?He:t):t}function dc(e){return pc(e)||fc(e)}function pc(t){return!(16777216&t.flags||192!=(131264&e.getCheckFlags(t))||!(131072&_o(t).flags))}function fc(t){return!t.valueDeclaration&&!!(1024&e.getCheckFlags(t))}function mc(t,r){if(536870912&e.getObjectFlags(r)){var n=e.find(Vs(r),pc);if(n)return e.chainDiagnosticMessages(t,e.Diagnostics.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,da(r,void 0,536870912),la(n));var i=e.find(Vs(r),fc);if(i)return e.chainDiagnosticMessages(t,e.Diagnostics.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,da(r,void 0,536870912),la(i))}return t}function gc(e,t,r){if(524288&(e=oc(e)).flags){var n=Us(e),i=n.members.get(t);if(i&&Mi(i))return i;if(r)return;var a=n===ct?vt:n.callSignatures.length?bt:n.constructSignatures.length?kt:void 0;if(a){var o=Js(a,t);if(o)return o}return Js(yt,t)}if(3145728&e.flags)return lc(e,t,r)}function _c(t,r){if(3670016&t.flags){var n=Us(t);return 0===r?n.callSignatures:n.constructSignatures}return e.emptyArray}function hc(e,t){return _c(oc(e),t)}function yc(e,t){if(3670016&e.flags){var r=Us(e);return 0===t?r.stringIndexInfo:r.numberIndexInfo}}function vc(e,t){var r=yc(e,t);return r&&r.type}function bc(e,t){return yc(oc(e),t)}function kc(e,t){return vc(oc(e),t)}function xc(t,r){if(Lf(t)){for(var n=[],i=0,a=Hs(t);i<a.length;i++){var o=a[i];(0===r||R_(o.escapedName))&&n.push(_o(o))}if(0===r&&e.append(n,kc(t,1)),n.length)return ou(n)}}function Ec(t){for(var r,n=0,i=e.getEffectiveTypeParameterDeclarations(t);n<i.length;n++){var a=i[n];r=e.appendIfUnique(r,qo(a.symbol))}return r}function Sc(e){var t=[];return e.forEach((function(e,r){Vi(r)||t.push(e)})),t}function Dc(t){return e.isInJSFile(t)&&(t.type&&310===t.type.kind||e.getJSDocParameterTags(t).some((function(e){var t=e.isBracketed,r=e.typeExpression;return t||!!r&&310===r.type.kind})))}function wc(t,r){if(!e.isExternalModuleNameRelative(t)){var n=Nn(ne,'"'+t+'"',512);return n&&r?Ci(n):n}}function Tc(t){if(e.hasQuestionToken(t)||Cc(t)||Dc(t))return!0;if(t.initializer){var r=Ic(t.parent),n=t.parent.parameters.indexOf(t);return e.Debug.assert(n>=0),n>=sv(r,3)}var i=e.getImmediatelyInvokedFunctionExpression(t.parent);return!!i&&(!t.type&&!t.dotDotDotToken&&t.parent.parameters.indexOf(t)>=i.arguments.length)}function Cc(t){if(!e.isJSDocPropertyLikeTag(t))return!1;var r=t.isBracketed,n=t.typeExpression;return r||!!n&&310===n.type.kind}function Ac(e,t,r,n){return{kind:e,parameterName:t,parameterIndex:r,type:n}}function Nc(t){var r,n=0;if(t)for(var i=0;i<t.length;i++)(r=t[i]).symbol&&e.forEach(r.symbol.declarations,(function(t){return e.isTypeParameterDeclaration(t)&&t.default}))||(n=i+1);return n}function Pc(t,r,n,i){var a=e.length(r);if(!a)return[];var o=e.length(t);if(i||o>=n&&o<=a){for(var s=t?t.slice():[],c=o;c<a;c++)s[c]=we;var l=wm(i);for(c=o;c<a;c++){var u=nc(r[c]);i&&u&&(np(u,Ae)||np(u,nt))&&(u=Ee),s[c]=u?Wd(u,Td(r,s)):l}return s.length=r.length,s}return t&&t.slice()}function Ic(t){var r,n=Cn(t);if(!n.resolvedSignature){var i=[],a=0,o=0,s=void 0,c=!1,l=e.getImmediatelyInvokedFunctionExpression(t),u=e.isJSDocConstructSignature(t);!l&&e.isInJSFile(t)&&e.isValueSignatureDeclaration(t)&&!e.hasJSDocParameterTags(t)&&!e.getJSDocType(t)&&(a|=32);for(var d=u?1:0;d<t.parameters.length;d++){var p=t.parameters[d],f=p.symbol,m=e.isJSDocParameterTag(p)?p.typeExpression&&p.typeExpression.type:p.type;if(f&&4&f.flags&&!e.isBindingPattern(p.name))f=Fn(p,f.escapedName,111551,void 0,void 0,!1);0===d&&f&&"this"===f.escapedName?(c=!0,s=p.symbol):i.push(f),m&&192===m.kind&&(a|=2),Cc(p)||p.initializer||p.questionToken||p.dotDotDotToken||l&&i.length>l.arguments.length&&!m||Dc(p)||(o=i.length)}if((168===t.kind||169===t.kind)&&ns(t)&&(!c||!s)){var g=168===t.kind?169:168,_=e.getDeclarationOfKind(Ai(t),g);_&&(s=(r=tS(_))&&r.symbol)}var h=167===t.kind?Oo(Ci(t.parent.symbol)):void 0,y=h?h.localTypeParameters:Ec(t);(e.hasRestParameter(t)||e.isInJSFile(t)&&function(t,r){if(e.isJSDocSignature(t)||!Oc(t))return!1;var n=e.lastOrUndefined(t.parameters),i=n?e.getJSDocParameterTags(n):e.getJSDocTags(t).filter(e.isJSDocParameterTag),a=e.firstDefined(i,(function(t){return t.typeExpression&&e.isJSDocVariadicType(t.typeExpression.type)?t.typeExpression.type:void 0})),o=yn(3,"args",32768);o.type=a?jl(xd(a.type)):At,a&&r.pop();return r.push(o),!0}(t,i))&&(a|=1),(e.isConstructorTypeNode(t)&&e.hasSyntacticModifier(t,128)||e.isConstructorDeclaration(t)&&e.hasSyntacticModifier(t.parent,128))&&(a|=4),n.resolvedSignature=ds(t,y,s,i,void 0,void 0,o,a)}return n.resolvedSignature}function Fc(t){if(e.isInJSFile(t)&&e.isFunctionLikeDeclaration(t)){var r=e.getJSDocTypeTag(t),n=r&&r.typeExpression&&Qh(xd(r.typeExpression));return n&&Kc(n)}}function Oc(t){var r=Cn(t);return void 0===r.containsArgumentsReference&&(8192&r.flags?r.containsArgumentsReference=!0:r.containsArgumentsReference=function t(r){if(!r)return!1;switch(r.kind){case 78:return r.escapedText===se.escapedName&&Am(r)===se;case 164:case 166:case 168:case 169:return 159===r.name.kind&&t(r.name);case 202:case 203:return t(r.expression);default:return!e.nodeStartsNewLexicalEnvironment(r)&&!e.isPartOfTypeNode(r)&&!!e.forEachChild(r,t)}}(t.body)),r.containsArgumentsReference}function Rc(t){if(!t)return e.emptyArray;for(var r=[],n=0;n<t.declarations.length;n++){var i=t.declarations[n];if(e.isFunctionLike(i)){if(n>0&&i.body){var a=t.declarations[n-1];if(i.parent===a.parent&&i.kind===a.kind&&i.pos===a.end)continue}r.push(Ic(i))}}return r}function Mc(e){var t=gi(e,e);if(t){var r=vi(t);if(r)return _o(r)}return Ee}function Lc(e){if(e.thisParameter)return _o(e.thisParameter)}function jc(t){if(!t.resolvedTypePredicate){if(t.target){var r=jc(t.target);t.resolvedTypePredicate=r?(o=r,s=t.mapper,Ac(o.kind,o.parameterName,o.parameterIndex,Wd(o.type,s))):cr}else if(t.unionSignatures)t.resolvedTypePredicate=function(e){for(var t,r=[],n=0,i=e;n<i.length;n++){var a=jc(i[n]);if(a&&2!==a.kind&&3!==a.kind){if(t){if(!su(t,a))return}else t=a;r.push(a.type)}}if(!t)return;var o=ou(r);return Ac(t.kind,t.parameterName,t.parameterIndex,o)}(t.unionSignatures)||cr;else{var n=t.declaration&&e.getEffectiveReturnTypeNode(t.declaration),i=void 0;if(!n&&e.isInJSFile(t.declaration)){var a=Fc(t.declaration);a&&t!==a&&(i=jc(a))}t.resolvedTypePredicate=n&&e.isTypePredicateNode(n)?function(t,r){var n=t.parameterName,i=t.type&&xd(t.type);return 188===n.kind?Ac(t.assertsModifier?2:0,void 0,void 0,i):Ac(t.assertsModifier?3:1,n.escapedText,e.findIndex(r.parameters,(function(e){return e.escapedName===n.escapedText})),i)}(n,t):i||cr}e.Debug.assert(!!t.resolvedTypePredicate)}var o,s;return t.resolvedTypePredicate===cr?void 0:t.resolvedTypePredicate}function Bc(t){if(!t.resolvedReturnType){if(!Da(t,3))return we;var r=t.target?Wd(Bc(t.target),t.mapper):t.unionSignatures?Wd(ou(e.map(t.unionSignatures,Bc),2),t.mapper):zc(t.declaration)||(e.nodeIsMissing(t.declaration.body)?Ee:vv(t.declaration));if(8&t.flags?r=If(r):16&t.flags&&(r=Nf(r)),!Ca()){if(t.declaration){var n=e.getEffectiveReturnTypeNode(t.declaration);if(n)pn(n,e.Diagnostics.Return_type_annotation_circularly_references_itself);else if(X){var i=t.declaration,a=e.getNameOfDeclaration(i);a?pn(a,e.Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,e.declarationNameToString(a)):pn(i,e.Diagnostics.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}r=Ee}t.resolvedReturnType=r}return t.resolvedReturnType}function zc(t){if(167===t.kind)return Oo(Ci(t.parent.symbol));if(e.isJSDocConstructSignature(t))return xd(t.parameters[0].type);var r,n=e.getEffectiveReturnTypeNode(t);if(n)return xd(n);if(168===t.kind&&ns(t)){var i=e.isInJSFile(t)&&ja(t);if(i)return i;var a=so(e.getDeclarationOfKind(Ai(t),169));if(a)return a}return(r=Fc(t))&&Bc(r)}function Uc(e){return!e.resolvedReturnType&&wa(e,3)>=0}function qc(e){if(U(e)){var t=_o(e.parameters[e.parameters.length-1]),r=vf(t)?xf(t):t;return r&&kc(r,1)}}function Jc(e,t,r,n){var i=Vc(e,Pc(t,e.typeParameters,Nc(e.typeParameters),r));if(n){var a=Zh(Bc(i));if(a){var o=ps(a);o.typeParameters=n;var s=ps(i);return s.resolvedReturnType=$c(o),s}}return i}function Vc(t,r){var n=t.instantiations||(t.instantiations=new e.Map),i=nl(r),a=n.get(i);return a||n.set(i,a=Hc(t,r)),a}function Hc(e,t){return jd(e,function(e,t){return Td(e.typeParameters,t)}(e,t),!0)}function Kc(e){return e.typeParameters?e.erasedSignatureCache||(e.erasedSignatureCache=function(e){return jd(e,Id(e.typeParameters),!0)}(e)):e}function Wc(t){return t.typeParameters?t.canonicalSignatureCache||(t.canonicalSignatureCache=function(t){return Jc(t,e.map(t.typeParameters,(function(e){return e.target&&!Ws(e.target)?e.target:e})),e.isInJSFile(t.declaration))}(t)):t}function Gc(t){var r=t.typeParameters;if(r){var n=Id(r);return jd(t,Td(r,e.map(r,(function(e){return Wd(Qs(e),n)||Ae}))),!0)}return t}function $c(t){if(!t.isolatedSignatureType){var r=t.declaration?t.declaration.kind:0,n=167===r||171===r||176===r,i=qi(16);i.members=T,i.properties=e.emptyArray,i.callSignatures=n?e.emptyArray:[t],i.constructSignatures=n?[t]:e.emptyArray,t.isolatedSignatureType=i}return t.isolatedSignatureType}function Yc(e){return e.members.get("__index")}function Xc(t,r){var n=1===r?145:148,i=Yc(t);if(i)for(var a=0,o=i.declarations;a<o.length;a++){var s=o[a],c=e.cast(s,e.isIndexSignatureDeclaration);if(1===c.parameters.length){var l=c.parameters[0];if(l.type&&l.type.kind===n)return c}}}function Qc(e,t,r){return{type:e,isReadonly:t,declaration:r}}function Zc(t,r){var n=Xc(t,r);if(n)return Qc(n.type?xd(n.type):Ee,e.hasEffectiveModifier(n,64),n)}function el(t){return e.mapDefined(e.filter(t.symbol&&t.symbol.declarations,e.isTypeParameterDeclaration),e.getEffectiveConstraintOfTypeParameter)[0]}function tl(t){if(!t.constraint)if(t.target){var r=Ws(t.target);t.constraint=r?Wd(r,t.mapper):lt}else{var n=el(t);if(n){var i=xd(n);1&i.flags&&i!==we&&(i=191===n.parent.parent.kind?Qe:Ae),t.constraint=i}else t.constraint=function(t){var r;if(t.symbol)for(var n=0,i=t.symbol.declarations;n<i.length;n++){var a=i[n];if(186===a.parent.kind){var o=e.walkUpParenthesizedTypesAndGetParentAndChild(a.parent.parent),s=o[0],c=void 0===s?a.parent:s,l=o[1];if(174===l.kind){var u=l,d=Nb(u);if(d){var p=u.typeArguments.indexOf(c);if(p<d.length){var f=Ws(d[p]);if(f){var m=Wd(f,Td(d,Cb(u,d)));m!==t&&(r=e.append(r,m))}}}}else 161===l.kind&&l.dotDotDotToken||182===l.kind||193===l.kind&&l.dotDotDotToken?r=e.append(r,jl(Ae)):195===l.kind?r=e.append(r,Re):160===l.kind&&191===l.parent.kind&&(r=e.append(r,Qe))}}return r&&fu(r)}(t)||lt}return t.constraint===lt?void 0:t.constraint}function rl(t){var r=e.getDeclarationOfKind(t.symbol,160),n=e.isJSDocTemplateTag(r.parent)?e.getHostSignatureFromJSDoc(r.parent):r.parent;return n&&Ai(n)}function nl(e){var t="";if(e)for(var r=e.length,n=0;n<r;){for(var i=e[n].id,a=1;n+a<r&&e[n+a].id===i+a;)a++;t.length&&(t+=","),t+=i,a>1&&(t+=":"+a),n+=a}return t}function il(e,t){return e?"@"+R(e)+(t?":"+nl(t):""):""}function al(t,r){for(var n=0,i=0,a=t;i<a.length;i++){var o=a[i];o.flags&r||(n|=e.getObjectFlags(o))}return 3670016&n}function ol(e,t){var r=nl(t),n=e.instantiations.get(r);return n||(n=qi(4,e.symbol),e.instantiations.set(r,n),n.objectFlags|=t?al(t,0):0,n.target=e,n.resolvedTypeArguments=t),n}function sl(e){var t=ji(e.flags);return t.symbol=e.symbol,t.objectFlags=e.objectFlags,t.target=e.target,t.resolvedTypeArguments=e.resolvedTypeArguments,t}function cl(e,t,r,n,i){if(!n){var a=ad(n=id(t));i=r?Dd(a,r):a}var o=qi(4,e.symbol);return o.target=e,o.node=t,o.mapper=r,o.aliasSymbol=n,o.aliasTypeArguments=i,o}function ll(t){var r,n;if(!t.resolvedTypeArguments){if(!Da(t,6))return(null===(r=t.target.localTypeParameters)||void 0===r?void 0:r.map((function(){return we})))||e.emptyArray;var i=t.node,a=i?174===i.kind?e.concatenate(t.target.outerTypeParameters,Cb(i,t.target.localTypeParameters)):179===i.kind?[xd(i.elementType)]:e.map(i.elements,xd):e.emptyArray;Ca()?t.resolvedTypeArguments=t.mapper?Dd(a,t.mapper):a:(t.resolvedTypeArguments=(null===(n=t.target.localTypeParameters)||void 0===n?void 0:n.map((function(){return we})))||e.emptyArray,pn(t.node||d,t.target.symbol?e.Diagnostics.Type_arguments_for_0_circularly_reference_themselves:e.Diagnostics.Tuple_type_arguments_circularly_reference_themselves,t.target.symbol&&la(t.target.symbol)))}return t.resolvedTypeArguments}function ul(t){return e.length(t.target.typeParameters)}function dl(t,r){var n=Jo(Ci(r)),i=n.localTypeParameters;if(i){var a=e.length(t.typeArguments),o=Nc(i),s=e.isInJSFile(t);if(!(!X&&s)&&(a<o||a>i.length)){var c=s&&e.isExpressionWithTypeArguments(t)&&!e.isJSDocAugmentsTag(t.parent);if(pn(t,o===i.length?c?e.Diagnostics.Expected_0_type_arguments_provide_these_with_an_extends_tag:e.Diagnostics.Generic_type_0_requires_1_type_argument_s:c?e.Diagnostics.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:e.Diagnostics.Generic_type_0_requires_between_1_and_2_type_arguments,da(n,void 0,2),o,i.length),!s)return we}return 174===t.kind&&ql(t,e.length(t.typeArguments)!==i.length)?cl(n,t,void 0):ol(n,e.concatenate(n.outerTypeParameters,Pc(Sl(t),i,o,s)))}return kl(t,r)?n:we}function pl(t,r,n,i){var a=Jo(t);if(a===Ce&&P.has(t.escapedName)&&r&&1===r.length)return Tu(t,r[0]);var o=Tn(t),s=o.typeParameters,c=nl(r)+il(n,i),l=o.instantiations.get(c);return l||o.instantiations.set(c,l=Gd(a,Td(s,Pc(r,s,Nc(s),e.isInJSFile(t.valueDeclaration))),n,i)),l}function fl(t){switch(t.kind){case 174:return t.typeName;case 225:var r=t.expression;if(e.isEntityNameExpression(r))return r}}function ml(e,t,r){return e&&fi(e,t,r)||ke}function gl(t,r){if(r===ke)return we;if(96&(r=function(t){var r=t.valueDeclaration;if(r&&e.isInJSFile(r)&&!(524288&t.flags)&&!e.getExpandoInitializer(r,!1)){var n=e.isVariableDeclaration(r)?e.getDeclaredExpandoInitializer(r):e.getAssignedExpandoInitializer(r);if(n){var i=Ai(n);if(i)return Oy(i,t)}}}(r)||r).flags)return dl(t,r);if(524288&r.flags)return function(t,r){var n=Jo(r),i=Tn(r).typeParameters;if(i){var a=e.length(t.typeArguments),o=Nc(i);if(a<o||a>i.length)return pn(t,o===i.length?e.Diagnostics.Generic_type_0_requires_1_type_argument_s:e.Diagnostics.Generic_type_0_requires_between_1_and_2_type_arguments,la(r),o,i.length),we;var s=id(t);return pl(r,Sl(t),s,ad(s))}return kl(t,r)?n:we}(t,r);var n=Vo(r);if(n)return kl(t,r)?gd(n):we;if(111551&r.flags&&bl(t)){var i=function(e,t){var r=Cn(e);if(!r.resolvedJSDocType){var n=_o(t),i=n;if(t.valueDeclaration){var a=196===e.kind&&e.qualifier;n.symbol&&n.symbol!==t&&a&&(i=gl(e,n.symbol))}r.resolvedJSDocType=i}return r.resolvedJSDocType}(t,r);return i||(ml(fl(t),788968),_o(r))}return we}function _l(e,t){if(3&t.flags||t===e)return e;var r=Zl(e)+">"+Zl(t),n=ye.get(r);if(n)return n;var i=ji(33554432);return i.baseType=e,i.substitute=t,ye.set(r,i),i}function hl(e){return 180===e.kind&&1===e.elements.length}function yl(e,t,r){return hl(t)&&hl(r)?yl(e,t.elements[0],r.elements[0]):Wu(xd(t))===e?xd(r):void 0}function vl(t,r){for(var n;r&&!e.isStatement(r)&&314!==r.kind;){var i=r.parent;if(185===i.kind&&r===i.trueType){var a=yl(t,i.checkType,i.extendsType);a&&(n=e.append(n,a))}r=i}return n?_l(t,fu(e.append(n,t))):t}function bl(e){return!!(4194304&e.flags)&&(174===e.kind||196===e.kind)}function kl(t,r){return!t.typeArguments||(pn(t,e.Diagnostics.Type_0_is_not_generic,r?la(r):t.typeName?e.declarationNameToString(t.typeName):l),!1)}function xl(t){if(e.isIdentifier(t.typeName)){var r=t.typeArguments;switch(t.typeName.escapedText){case"String":return kl(t),Re;case"Number":return kl(t),Me;case"Boolean":return kl(t),qe;case"Void":return kl(t),Ve;case"Undefined":return kl(t),Ne;case"Null":return kl(t),Fe;case"Function":case"function":return kl(t),vt;case"array":return r&&r.length||X?void 0:At;case"promise":return r&&r.length||X?void 0:_v(Ee);case"Object":if(r&&2===r.length){if(e.isJSDocIndexSignature(t)){var n=xd(r[0]),i=Qc(xd(r[1]),!1);return Wi(void 0,T,e.emptyArray,e.emptyArray,n===Re?i:void 0,n===Me?i:void 0)}return Ee}return kl(t),X?void 0:Ee}}}function El(t){var r=Cn(t);if(!r.resolvedType){if(e.isConstTypeReference(t)&&e.isAssertionExpression(t.parent))return r.resolvedSymbol=ke,r.resolvedType=$v(t.parent.expression);var n=void 0,i=void 0,a=788968;bl(t)&&((i=xl(t))||((n=ml(fl(t),a,!0))===ke?n=ml(fl(t),900095):ml(fl(t),a),i=gl(t,n))),i||(i=gl(t,n=ml(fl(t),a))),r.resolvedSymbol=n,r.resolvedType=i}return r.resolvedType}function Sl(t){return e.map(t.typeArguments,xd)}function Dl(e){var t=Cn(e);return t.resolvedType||(t.resolvedType=gd(Hf(fb(e.exprName)))),t.resolvedType}function wl(t,r){function n(e){for(var t=0,r=e.declarations;t<r.length;t++){var n=r[t];switch(n.kind){case 254:case 256:case 258:return n}}}if(!t)return r?st:nt;var i=Jo(t);return 524288&i.flags?e.length(i.typeParameters)!==r?(pn(n(t),e.Diagnostics.Global_type_0_must_have_1_type_parameter_s,e.symbolName(t),r),r?st:nt):i:(pn(n(t),e.Diagnostics.Global_type_0_must_be_a_class_or_interface_type,e.symbolName(t)),r?st:nt)}function Tl(t,r){return Cl(t,111551,r?e.Diagnostics.Cannot_find_global_value_0:void 0)}function Cl(e,t,r){return Fn(void 0,e,t,r,e,!1)}function Al(t,r,n){var i=function(t,r){return Cl(t,788968,r?e.Diagnostics.Cannot_find_global_type_0:void 0)}(t,n);return i||n?wl(i,r):void 0}function Nl(e){return Ft||(Ft=Tl("Symbol",e))}function Pl(e){return Ot||(Ot=Al("Symbol",0,e))||nt}function Il(e){return Mt||(Mt=Al("Promise",1,e))||st}function Fl(e){return jt||(jt=Tl("Promise",e))}function Ol(e){return zt||(zt=Al("Iterable",1,e))||st}function Rl(e,t){void 0===t&&(t=0);var r=Cl(e,788968,void 0);return r&&wl(r,t)}function Ml(e,t){return e!==st?ol(e,t):nt}function Ll(e){return Ml(Rt||(Rt=Al("TypedPropertyDescriptor",1,!0))||st,[e])}function jl(e,t){return Ml(t?Et:xt,[e])}function Bl(e){switch(e.kind){case 181:return 2;case 182:return zl(e);case 193:return e.questionToken?2:e.dotDotDotToken?zl(e):1;default:return 1}}function zl(e){return kd(e.type)?4:8}function Ul(t){var r=function(t){return e.isTypeOperatorNode(t)&&143===t.operator}(t.parent);return kd(t)?r?Et:xt:Kl(e.map(t.elements,Bl),r,e.some(t.elements,(function(e){return 193!==e.kind}))?void 0:t.elements)}function ql(t,r){return!!id(t)||Jl(t)&&(179===t.kind?Vl(t.elementType):180===t.kind?e.some(t.elements,Vl):r||e.some(t.typeArguments,Vl))}function Jl(e){var t=e.parent;switch(t.kind){case 187:case 193:case 174:case 183:case 184:case 190:case 185:case 189:case 179:case 180:return Jl(t);case 257:return!0}return!1}function Vl(t){switch(t.kind){case 174:return bl(t)||!!(524288&ml(t.typeName,788968).flags);case 177:return!0;case 189:return 152!==t.operator&&Vl(t.type);case 187:case 181:case 193:case 310:case 308:case 309:case 304:return Vl(t.type);case 182:return 179!==t.type.kind||Vl(t.type.elementType);case 183:case 184:return e.some(t.types,Vl);case 190:return Vl(t.objectType)||Vl(t.indexType);case 185:return Vl(t.checkType)||Vl(t.extendsType)||Vl(t.trueType)||Vl(t.falseType)}return!1}function Hl(t,r,n,i){void 0===n&&(n=!1);var a=Kl(r||e.map(t,(function(e){return 1})),n,i);return a===st?nt:t.length?Wl(a,t):a}function Kl(t,r,n){if(1===t.length&&4&t[0])return r?Et:xt;var i=e.map(t,(function(e){return 1&e?"#":2&e?"?":4&e?".":"*"})).join()+(r?"R":"")+(n&&n.length?","+e.map(n,O).join(","):""),a=de.get(i);return a||de.set(i,a=function(t,r,n){var i,a=t.length,o=e.countWhere(t,(function(e){return!!(9&e)})),s=[],c=0;if(a){i=new Array(a);for(var l=0;l<a;l++){var u=i[l]=Ji(),d=t[l];if(!(12&(c|=d))){var p=yn(4|(2&d?16777216:0),""+l,r?8:0);p.tupleLabelDeclaration=null==n?void 0:n[l],p.type=u,s.push(p)}}}var f=s.length,m=yn(4,"length");if(12&c)m.type=Me;else{var g=[];for(l=o;l<=a;l++)g.push(hd(l));m.type=ou(g)}s.push(m);var _=qi(12);return _.typeParameters=i,_.outerTypeParameters=void 0,_.localTypeParameters=i,_.instantiations=new e.Map,_.instantiations.set(nl(_.typeParameters),_),_.target=_,_.resolvedTypeArguments=_.typeParameters,_.thisType=Ji(),_.thisType.isThisType=!0,_.thisType.constraint=_,_.declaredProperties=s,_.declaredCallSignatures=e.emptyArray,_.declaredConstructSignatures=e.emptyArray,_.declaredStringIndexInfo=void 0,_.declaredNumberIndexInfo=void 0,_.elementFlags=t,_.minLength=o,_.fixedLength=f,_.hasRestElement=!!(12&c),_.combinedFlags=c,_.readonly=r,_.labeledElementDeclarations=n,_}(t,r,n)),a}function Wl(e,t){return 8&e.objectFlags?Gl(e,t):ol(e,t)}function Gl(t,r){var n,i,a;if(!(14&t.combinedFlags))return ol(t,r);if(8&t.combinedFlags){var o=e.findIndex(r,(function(e,r){return!!(8&t.elementFlags[r]&&1179648&e.flags)}));if(o>=0)return gu(e.map(r,(function(e,r){return 8&t.elementFlags[r]?e:Ae})))?pg(r[o],(function(n){return Gl(t,e.replaceElement(r,o,n))})):we}for(var s=[],c=[],l=[],u=-1,p=-1,f=-1,m=function(o){var c=r[o],l=t.elementFlags[o];if(8&l)if(58982400&c.flags||zs(c))y(c,8,null===(n=t.labeledElementDeclarations)||void 0===n?void 0:n[o]);else if(vf(c)){var u=ll(c);if(u.length+s.length>=1e4)return pn(d,e.isPartOfTypeNode(d)?e.Diagnostics.Type_produces_a_tuple_type_that_is_too_large_to_represent:e.Diagnostics.Expression_produces_a_tuple_type_that_is_too_large_to_represent),{value:we};e.forEach(u,(function(e,t){var r;return y(e,c.target.elementFlags[t],null===(r=c.target.labeledElementDeclarations)||void 0===r?void 0:r[t])}))}else y(sf(c)&&kc(c,1)||we,4,null===(i=t.labeledElementDeclarations)||void 0===i?void 0:i[o]);else y(c,l,null===(a=t.labeledElementDeclarations)||void 0===a?void 0:a[o])},g=0;g<r.length;g++){var _=m(g);if("object"==typeof _)return _.value}for(g=0;g<u;g++)2&c[g]&&(c[g]=1);p>=0&&p<f&&(s[p]=ou(e.sameMap(s.slice(p,f+1),(function(e,t){return 8&c[p+t]?qu(e,Me):e}))),s.splice(p+1,f-p),c.splice(p+1,f-p),null==l||l.splice(p+1,f-p));var h=Kl(c,t.readonly,l);return h===st?nt:c.length?ol(h,s):h;function y(e,t,r){1&t&&(u=c.length),4&t&&p<0&&(p=c.length),6&t&&(f=c.length),s.push(e),c.push(t),l&&r?l.push(r):l=void 0}}function $l(t,r,n){void 0===n&&(n=0);var i=t.target,a=ul(t)-n;return r>i.fixedLength?function(e){var t=xf(e);return t&&jl(t)}(t)||Hl(e.emptyArray):Hl(ll(t).slice(r,a),i.elementFlags.slice(r,a),!1,i.labeledElementDeclarations&&i.labeledElementDeclarations.slice(r,a))}function Yl(t){return ou(e.append(e.arrayOf(t.target.fixedLength,(function(e){return hd(""+e)})),Eu(t.target.readonly?Et:xt)))}function Xl(t,r){var n=e.findIndex(t.elementFlags,(function(e){return!(e&r)}));return n>=0?n:t.elementFlags.length}function Ql(t,r){return t.elementFlags.length-e.findLastIndex(t.elementFlags,(function(e){return!(e&r)}))-1}function Zl(e){return e.id}function eu(t,r){return e.binarySearch(t,r,Zl,e.compareValues)>=0}function tu(t,r){var n=e.binarySearch(t,r,Zl,e.compareValues);return n<0&&(t.splice(~n,0,r),!0)}function ru(t,r,n){var i=n.flags;if(1048576&i)return nu(t,r|(function(e){return!!(1048576&e.flags&&(e.aliasSymbol||e.origin))}(n)?1048576:0),n.types);if(!(131072&i))if(r|=205258751&i,469499904&i&&(r|=262144),n===De&&(r|=8388608),!W&&98304&i)524288&e.getObjectFlags(n)||(r|=4194304);else{var a=t.length,o=a&&n.id>t[a-1].id?~a:e.binarySearch(t,n,Zl,e.compareValues);o<0&&t.splice(~o,0,n)}return r}function nu(e,t,r){for(var n=0,i=r;n<i.length;n++){t=ru(e,t,i[n])}return t}function iu(t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];if(1048576&a.flags){var o=a.origin;a.aliasSymbol||o&&!(1048576&o.flags)?e.pushIfUnique(t,a):o&&1048576&o.flags&&iu(t,o.types)}}}function au(e,t){var r=Bi(e);return r.types=t,r}function ou(t,r,n,i,a){if(void 0===r&&(r=1),0===t.length)return He;if(1===t.length)return t[0];var o=[],s=nu(o,0,t);if(0!==r){if(3&s)return 1&s?8388608&s?De:Ee:Ae;if(3&r&&((11136&s||16384&s&&32768&s)&&function(t,r,n){for(var i=t.length;i>0;){var a=t[--i],o=a.flags;(128&o&&4&r||256&o&&8&r||2048&o&&64&r||8192&o&&4096&r||n&&32768&o&&16384&r||_d(a)&&eu(t,a.regularType))&&e.orderedRemoveItemAt(t,i)}}(o,s,!!(2&r)),128&s&&134217728&s&&function(t){var r=e.filter(t,Ou);if(r.length)for(var n=t.length,i=function(){n--;var i=t[n];128&i.flags&&e.some(r,(function(e){return sp(i,e)}))&&e.orderedRemoveItemAt(t,n)};n>0;)i()}(o)),2&r&&!function(t,r){for(var n=r&&e.some(t,(function(e){return!!(524288&e.flags)&&!zs(e)&&Dp(Us(e))})),i=t.length,a=i,o=0;a>0;){var s=t[--a];if(n||469499904&s.flags)for(var c=0,l=t;c<l.length;c++){var u=l[c];if(s!==u){if(1e5===o&&o/(i-a)*i>1e6)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","removeSubtypes_DepthLimit",{typeIds:t.map((function(e){return e.id}))}),pn(d,e.Diagnostics.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1;if(o++,Pp(s,u,nn)&&(!(1&e.getObjectFlags(yo(s)))||!(1&e.getObjectFlags(yo(u)))||lp(s,u))){e.orderedRemoveItemAt(t,a);break}}}}return!0}(o,!!(524288&s)))return we;if(0===o.length)return 65536&s?4194304&s?Fe:Oe:32768&s?4194304&s?Ne:Pe:He}if(!a&&1048576&s){var c=[];iu(c,t);for(var l=[],u=function(t){e.some(c,(function(e){return eu(e.types,t)}))||l.push(t)},p=0,f=o;p<f.length;p++){u(f[p])}if(!n&&1===c.length&&0===l.length)return c[0];if(e.reduceLeft(c,(function(e,t){return e+t.types.length}),0)+l.length===o.length){for(var m=0,g=c;m<g.length;m++){tu(l,g[m])}a=au(1048576,l)}}return cu(o,(468598819&s?0:262144)|(2097152&s?268435456:0),n,i,a)}function su(e,t){return e.kind===t.kind&&e.parameterIndex===t.parameterIndex}function cu(e,t,r,n,i){if(0===e.length)return He;if(1===e.length)return e[0];var a=(i?1048576&i.flags?"|"+nl(i.types):2097152&i.flags?"&"+nl(i.types):"#"+i.type.id:nl(e))+il(r,n),o=pe.get(a);return o||(o=function(e,t,r,n){var i=ji(1048576);return i.objectFlags=al(e,98304),i.types=e,i.origin=n,i.aliasSymbol=t,i.aliasTypeArguments=r,i}(e,r,n,i),o.objectFlags|=t,pe.set(a,o)),o}function lu(e,t,r){var n=r.flags;return 2097152&n?uu(e,t,r.types):(Tp(r)?16777216&t||(t|=16777216,e.set(r.id.toString(),r)):(3&n?r===De&&(t|=8388608):!W&&98304&n||e.has(r.id.toString())||(109440&r.flags&&109440&t&&(t|=67108864),e.set(r.id.toString(),r)),t|=205258751&n),t)}function uu(e,t,r){for(var n=0,i=r;n<i.length;n++){t=lu(e,t,gd(i[n]))}return t}function du(e,t){for(var r=0,n=e;r<n.length;r++){var i=n[r];if(!eu(i.types,t)){var a=128&t.flags?Re:256&t.flags?Me:2048&t.flags?Le:8192&t.flags?Je:void 0;if(!a||!eu(i.types,a))return!1}}return!0}function pu(t,r){if(e.every(t,(function(t){return!!(1048576&t.flags)&&e.some(t.types,(function(e){return!!(e.flags&r)}))}))){for(var n=0;n<t.length;n++)t[n]=ug(t[n],(function(e){return!(e.flags&r)}));return!0}return!1}function fu(t,r,n){var i=new e.Map,a=uu(i,0,t),o=e.arrayFrom(i.values());if(131072&a||W&&98304&a&&84410368&a||67108864&a&&402783228&a||402653316&a&&67238776&a||296&a&&469891796&a||2112&a&&469889980&a||12288&a&&469879804&a||49152&a&&469842940&a)return He;if(134217728&a&&128&a&&function(t){for(var r=t.length,n=e.filter(t,(function(e){return!!(128&e.flags)}));r>0;){var i=t[--r];if(134217728&i.flags)for(var a=0,o=n;a<o.length;a++){if(sp(o[a],i)){e.orderedRemoveItemAt(t,r);break}if(Ou(i))return!0}}return!1}(o))return He;if(1&a)return 8388608&a?De:Ee;if(!W&&98304&a)return 32768&a?Ne:Fe;if((4&a&&128&a||8&a&&256&a||64&a&&2048&a||4096&a&&8192&a)&&function(t,r){for(var n=t.length;n>0;){var i=t[--n];(4&i.flags&&128&r||8&i.flags&&256&r||64&i.flags&&2048&r||4096&i.flags&&8192&r)&&e.orderedRemoveItemAt(t,n)}}(o,a),16777216&a&&524288&a&&e.orderedRemoveItemAt(o,e.findIndex(o,Tp)),0===o.length)return Ae;if(1===o.length)return o[0];var s=nl(o)+il(r,n),c=fe.get(s);if(!c){if(1048576&a)if(function(t){var r,n=e.findIndex(t,(function(t){return!!(262144&e.getObjectFlags(t))}));if(n<0)return!1;for(var i=n+1;i<t.length;){var a=t[i];262144&e.getObjectFlags(a)?((r||(r=[t[n]])).push(a),e.orderedRemoveItemAt(t,i)):i++}if(!r)return!1;for(var o=[],s=[],c=0,l=r;c<l.length;c++)for(var u=0,d=l[c].types;u<d.length;u++)tu(o,a=d[u])&&du(r,a)&&tu(s,a);return t[n]=cu(s,262144),!0}(o))c=fu(o,r,n);else if(pu(o,32768))c=ou([fu(o),Ne],1,r,n);else if(pu(o,65536))c=ou([fu(o),Fe],1,r,n);else{if(!gu(o))return we;var l=function(e){for(var t=mu(e),r=[],n=0;n<t;n++){for(var i=e.slice(),a=n,o=e.length-1;o>=0;o--)if(1048576&e[o].flags){var s=e[o].types,c=s.length;i[o]=s[a%c],a=Math.floor(a/c)}var l=fu(i);131072&l.flags||r.push(l)}return r}(o);c=ou(l,1,r,n,e.some(l,(function(e){return!!(2097152&e.flags)}))?au(2097152,o):void 0)}else c=function(e,t,r){var n=ji(2097152);return n.objectFlags=al(e,98304),n.types=e,n.aliasSymbol=t,n.aliasTypeArguments=r,n}(o,r,n);fe.set(s,c)}return c}function mu(t){return e.reduceLeft(t,(function(e,t){return 1048576&t.flags?e*t.types.length:131072&t.flags?0:e}),1)}function gu(t){var r=mu(t);return!(r>=1e5)||(null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","checkCrossProductUnion_DepthLimit",{typeIds:t.map((function(e){return e.id})),size:r}),pn(d,e.Diagnostics.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1)}function _u(e,t){var r=ji(4194304);return r.type=e,r.stringsOnly=t,r}function hu(e,t,r){return Wd(e,Md(t.mapper,Ns(t),r))}function yu(t){return!(!t||!(16777216&t.flags&&(!t.root.isDistributive||yu(t.checkType))||137363456&t.flags&&e.some(t.types,yu)||272629760&t.flags&&yu(t.type)||8388608&t.flags&&yu(t.indexType)||33554432&t.flags&&yu(t.substitute)))}function vu(t){return e.isPrivateIdentifier(t)?He:e.isIdentifier(t)?hd(e.unescapeLeadingUnderscores(t.escapedText)):gd(e.isComputedPropertyName(t)?M_(t):fb(t))}function bu(t,r){if(!(24&e.getDeclarationModifierFlagsFromSymbol(t))){var n=Tn(cs(t)).nameType;if(!n&&!e.isKnownSymbol(t))if("default"===t.escapedName)n=hd("default");else{var i=t.valueDeclaration&&e.getNameOfDeclaration(t.valueDeclaration);n=i&&vu(i)||hd(e.symbolName(t))}if(n&&n.flags&r)return n}return He}function ku(t,r,n){var i=n&&(7&e.getObjectFlags(t)||t.aliasSymbol)?function(e){var t=Bi(4194304);return t.type=e,t}(t):void 0;return ou(e.map(Hs(t),(function(e){return bu(e,r)})),1,void 0,void 0,i)}function xu(e){var t=bc(e,1);return t!==fr?t:void 0}function Eu(t,r,n){void 0===r&&(r=Z);var i=r===Z&&!n;return 1048576&(t=uc(t)).flags?fu(e.map(t.types,(function(e){return Eu(e,r,n)}))):2097152&t.flags?ou(e.map(t.types,(function(e){return Eu(e,r,n)}))):58982400&t.flags||bf(t)||zs(t)&&yu(Is(t))?function(e,t){return t?e.resolvedStringIndexType||(e.resolvedStringIndexType=_u(e,!0)):e.resolvedIndexType||(e.resolvedIndexType=_u(e,!1))}(t,r):32&e.getObjectFlags(t)?function(t,r){var n=ug(Ps(t),(function(e){return!(r&&5&e.flags)})),i=t.declaration.nameType&&xd(t.declaration.nameType),a=i&&lg(n,(function(e){return!!(131084&e.flags)}))&&Hs(ac(Ms(t)));return i?ou([pg(n,(function(e){return hu(i,t,e)})),pg(ou(e.map(a||e.emptyArray,(function(e){return bu(e,8576)}))),(function(e){return hu(i,t,e)}))]):n}(t,n):t===De?De:2&t.flags?He:131073&t.flags?Qe:r?!n&&bc(t,0)?Re:ku(t,128,i):!n&&bc(t,0)?ou([Re,Me,ku(t,8192,i)]):xu(t)?ou([Me,ku(t,8320,i)]):ku(t,8576,i)}function Su(t){if(Z)return t;var r=Qt||(Qt=Cl("Extract",524288,e.Diagnostics.Cannot_find_global_type_0));return r?pl(r,[t,Re]):Re}function Du(t,r){var n=e.findIndex(r,(function(e){return!!(1179648&e.flags)}));if(n>=0)return gu(r)?pg(r[n],(function(i){return Du(t,e.replaceElement(r,n,i))})):we;if(e.contains(r,De))return De;var i=[],a=[],o=t[0];if(!function e(t,r){for(var n=0;n<r.length;n++){var s=r[n];if(101248&s.flags)o+=wu(s)||"",o+=t[n+1];else if(134217728&s.flags){if(o+=s.texts[0],!e(s.texts,s.types))return!1;o+=t[n+1]}else{if(!Mu(s)&&!Fu(s))return!1;i.push(s),a.push(o),o=t[n+1]}}return!0}(t,r))return Re;if(0===i.length)return hd(o);if(a.push(o),e.every(a,(function(e){return""===e}))&&e.every(i,(function(e){return!!(4&e.flags)})))return Re;var s=nl(i)+"|"+e.map(a,(function(e){return e.length})).join(",")+"|"+a.join(""),c=_e.get(s);return c||_e.set(s,c=function(e,t){var r=ji(134217728);return r.texts=e,r.types=t,r}(a,i)),c}function wu(t){return 128&t.flags?t.value:256&t.flags?""+t.value:2048&t.flags?e.pseudoBigIntToString(t.value):512&t.flags?t.intrinsicName:65536&t.flags?"null":32768&t.flags?"undefined":void 0}function Tu(e,t){return 1179648&t.flags?pg(t,(function(t){return Tu(e,t)})):Mu(t)?function(e,t){var r=R(e)+","+Zl(t),n=he.get(r);n||he.set(r,n=function(e,t){var r=ji(268435456);return r.symbol=e,r.type=t,r}(e,t));return n}(e,t):128&t.flags?hd(function(e,t){switch(P.get(e.escapedName)){case 0:return t.toUpperCase();case 1:return t.toLowerCase();case 2:return t.charAt(0).toUpperCase()+t.slice(1);case 3:return t.charAt(0).toLowerCase()+t.slice(1)}return t}(e,t.value)):t}function Cu(t){if(X)return!1;if(16384&e.getObjectFlags(t))return!0;if(1048576&t.flags)return e.every(t.types,Cu);if(2097152&t.flags)return e.some(t.types,Cu);if(465829888&t.flags){var r=tc(t);return r!==t&&Cu(r)}return!1}function Au(t,r){var n=r&&203===r.kind?r:void 0;return Zo(t)?is(t):n&&qh(n.argumentExpression,t,!1)?e.getPropertyNameForKnownSymbolName(e.idText(n.argumentExpression.name)):r&&e.isPropertyName(r)?e.getPropertyNameForPropertyNameNode(r):void 0}function Nu(t,r){if(8208&r.flags){var n=e.findAncestor(t.parent,(function(t){return!e.isAccessExpression(t)}))||t.parent;return e.isCallLikeExpression(n)?e.isCallOrNewExpression(n)&&e.isIdentifier(t)&&zm(n,t):e.every(r.declarations,(function(t){return!e.isFunctionLike(t)||!!(134217728&e.getCombinedNodeFlags(t))}))}return!0}function Pu(t,r,n,i,a,o,s,c,l){var u,d=o&&203===o.kind?o:void 0,p=o&&e.isPrivateIdentifier(o)?void 0:Au(n,o);if(void 0!==p){var f=gc(r,p);if(f){if(l&&o&&134217728&lh(f)&&Nu(o,f))hn(null!==(u=null==d?void 0:d.argumentExpression)&&void 0!==u?u:e.isIndexedAccessTypeNode(o)?o.indexType:o,f.declarations,p);if(d){if(Lh(f,d,108===d.expression.kind),Pv(d,f,e.getAssignmentTargetKind(d)))return void pn(d.argumentExpression,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,la(f));if(4&s&&(Cn(o).resolvedSymbol=f),wh(d,f))return Se}var m=_o(f);return d&&1!==e.getAssignmentTargetKind(d)?Og(d,m):m}if(lg(r,vf)&&R_(p)&&+p>=0){if(o&&lg(r,(function(e){return!e.target.hasRestElement}))&&!(8&s)){var g=Iu(o);vf(r)?pn(g,e.Diagnostics.Tuple_type_0_of_length_1_has_no_element_at_index_2,da(r),ul(r),e.unescapeLeadingUnderscores(p)):pn(g,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.unescapeLeadingUnderscores(p),da(r))}return S(bc(r,1)),pg(r,(function(e){var t=xf(e)||Ne;return c?ou([t,Ne]):t}))}}if(!(98304&n.flags)&&Mv(n,402665900)){if(131073&r.flags)return r;var _=bc(r,0),h=Mv(n,296)&&bc(r,1)||_;if(h)return 1&s&&h===_?void(d&&pn(d,e.Diagnostics.Type_0_cannot_be_used_to_index_type_1,da(n),da(t))):o&&!Mv(n,12)?(pn(g=Iu(o),e.Diagnostics.Type_0_cannot_be_used_as_an_index_type,da(n)),c?ou([h.type,Ne]):h.type):(S(h),c?ou([h.type,Ne]):h.type);if(131072&n.flags)return He;if(Cu(r))return Ee;if(d&&!jv(r)){if(km(r)){if(X&&384&n.flags)return Qr.add(e.createDiagnosticForNode(d,e.Diagnostics.Property_0_does_not_exist_on_type_1,n.value,da(r))),Ne;if(12&n.flags){var y=e.map(r.properties,(function(e){return _o(e)}));return ou(e.append(y,Ne))}}if(r.symbol===ae&&void 0!==p&&ae.exports.has(p)&&418&ae.exports.get(p).flags)pn(d,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.unescapeLeadingUnderscores(p),da(r));else if(X&&!J.suppressImplicitAnyIndexErrors&&!a)if(void 0!==p&&Nh(p,r)){var v=da(r);pn(d,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,p,v,v+"["+e.getTextOfNode(d.argumentExpression)+"]")}else if(kc(r,1))pn(d.argumentExpression,e.Diagnostics.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{var b=void 0;if(void 0!==p&&(b=Fh(p,r)))void 0!==b&&pn(d.argumentExpression,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,p,da(r),b);else{var k=function(t,r,n){function i(e){var r=Js(t,e);if(r){var i=Qh(_o(r));return!!i&&sv(i)>=1&&cp(n,nv(i,0))}return!1}var a=e.isAssignmentTarget(r)?"set":"get";if(!i(a))return;var o=e.tryGetPropertyAccessOrIdentifierToString(r.expression);void 0===o?o=a:o+="."+a;return o}(r,d,n);if(void 0!==k)pn(d,e.Diagnostics.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,da(r),k);else{var x=void 0;if(1024&n.flags)x=e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_does_not_exist_on_type_1,"["+da(n)+"]",da(r));else if(8192&n.flags){var E=pi(n.symbol,d);x=e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_does_not_exist_on_type_1,"["+E+"]",da(r))}else 128&n.flags||256&n.flags?x=e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_does_not_exist_on_type_1,n.value,da(r)):12&n.flags&&(x=e.chainDiagnosticMessages(void 0,e.Diagnostics.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,da(n),da(r)));x=e.chainDiagnosticMessages(x,e.Diagnostics.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,da(i),da(r)),Qr.add(e.createDiagnosticForNodeFromMessageChain(d,x))}}}return}}if(Cu(r))return Ee;if(o){g=Iu(o);384&n.flags?pn(g,e.Diagnostics.Property_0_does_not_exist_on_type_1,""+n.value,da(r)):12&n.flags?pn(g,e.Diagnostics.Type_0_has_no_matching_index_signature_for_type_1,da(r),da(n)):pn(g,e.Diagnostics.Type_0_cannot_be_used_as_an_index_type,da(n))}return Pa(n)?n:void 0;function S(t){t&&t.isReadonly&&d&&(e.isAssignmentTarget(d)||e.isDeleteTarget(d))&&pn(d,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,da(r))}}function Iu(e){return 203===e.kind?e.argumentExpression:190===e.kind?e.indexType:159===e.kind?e.expression:e}function Fu(e){return-1!==et.types.indexOf(e)||!!(1&e.flags)}function Ou(t){return!!(134217728&t.flags)&&e.every(t.types,Fu)}function Ru(t){return 3145728&t.flags?(4194304&t.objectFlags||(t.objectFlags|=4194304|(e.some(t.types,Ru)?8388608:0)),!!(8388608&t.objectFlags)):!!(58982400&t.flags)||zs(t)||bf(t)}function Mu(t){return 3145728&t.flags?(16777216&t.objectFlags||(t.objectFlags|=16777216|(e.some(t.types,Mu)?33554432:0)),!!(33554432&t.objectFlags)):!!(465829888&t.flags)&&!Ou(t)}function Lu(e){return!!(262144&e.flags&&e.isThisType)}function ju(t,r){return 8388608&t.flags?function(t,r){var n=r?"simplifiedForWriting":"simplifiedForReading";if(t[n])return t[n]===ut?t:t[n];t[n]=ut;var i=ju(t.objectType,r),a=ju(t.indexType,r),o=function(t,r,n){if(1048576&r.flags){var i=e.map(r.types,(function(e){return ju(qu(t,e),n)}));return n?fu(i):ou(i)}}(i,a,r);if(o)return t[n]=o;if(!(465829888&a.flags)){var s=Bu(i,a,r);if(s)return t[n]=s}if(bf(i)&&296&a.flags){var c=Ef(i,8&a.flags?0:i.target.fixedLength,0,r);if(c)return t[n]=c}if(zs(i))return t[n]=pg(Uu(i,t.indexType),(function(e){return ju(e,r)}));return t[n]=t}(t,r):16777216&t.flags?function(e,t){var r=e.checkType,n=e.extendsType,i=Xu(e),a=Qu(e);if(131072&a.flags&&Wu(i)===Wu(r)){if(1&r.flags||cp(Yd(r),Yd(n)))return ju(i,t);if(zu(r,n))return He}else if(131072&i.flags&&Wu(a)===Wu(r)){if(!(1&r.flags)&&cp(Yd(r),Yd(n)))return He;if(1&r.flags||zu(r,n))return ju(a,t)}return e}(t,r):t}function Bu(t,r,n){if(3145728&t.flags){var i=e.map(t.types,(function(e){return ju(qu(e,r),n)}));return 2097152&t.flags||n?fu(i):ou(i)}}function zu(e,t){return!!(131072&ou([bs(e,t),He]).flags)}function Uu(e,t){var r=Td([Ns(e)],[t]),n=Fd(e.mapper,r);return Wd(Fs(e),n)}function qu(e,t,r,n,i,a,o){return void 0===o&&(o=0),Vu(e,t,r,n,o,i,a)||(n?we:Ae)}function Ju(e,t){return lg(e,(function(e){if(384&e.flags){var r=is(e);if(R_(r)){var n=+r;return n>=0&&n<t}}return!1}))}function Vu(e,t,r,n,i,a,o){if(void 0===i&&(i=0),e===De||t===De)return De;var s=r||!!J.noUncheckedIndexedAccess&&16==(18&i);if(!Cp(e)||98304&t.flags||!Mv(t,12)||(t=Re),Mu(t)||(n&&190!==n.kind?bf(e)&&!Ju(t,e.target.fixedLength):Ru(e)&&(!vf(e)||!Ju(t,e.target.fixedLength)))){if(3&e.flags)return e;var c=e.id+","+t.id+(s?"?":"")+il(a,o),l=ge.get(c);return l||ge.set(c,l=function(e,t,r,n,i){var a=ji(8388608);return a.objectType=e,a.indexType=t,a.aliasSymbol=r,a.aliasTypeArguments=n,a.noUncheckedIndexedAccessCandidate=i,a}(e,t,a,o,s)),l}var u=oc(e);if(1048576&t.flags&&!(16&t.flags)){for(var d=[],p=!1,f=0,m=t.types;f<m.length;f++){var g=Pu(e,u,m[f],t,p,n,i,s);if(g)d.push(g);else{if(!n)return;p=!0}}if(p)return;return 2&i?fu(d,a,o):ou(d,1,a,o)}return Pu(e,u,t,t,!1,n,4|i,s,!0)}function Hu(e){var t=Cn(e);if(!t.resolvedType){var r=xd(e.objectType),n=xd(e.indexType),i=id(e),a=qu(r,n,void 0,e,i,ad(i));t.resolvedType=8388608&a.flags&&a.objectType===r&&a.indexType===n?vl(a,e):a}return t.resolvedType}function Ku(e){var t=Cn(e);if(!t.resolvedType){var r=qi(32,e.symbol);r.declaration=e,r.aliasSymbol=id(e),r.aliasTypeArguments=ad(r.aliasSymbol),t.resolvedType=r,Ps(r)}return t.resolvedType}function Wu(e){return 33554432&e.flags?e.baseType:8388608&e.flags&&(33554432&e.objectType.flags||33554432&e.indexType.flags)?qu(Wu(e.objectType),Wu(e.indexType)):e}function Gu(t){return!t.isDistributive&&180===t.node.checkType.kind&&1===e.length(t.node.checkType.elements)&&180===t.node.extendsType.kind&&1===e.length(t.node.extendsType.elements)}function $u(e,t){return Gu(e)&&vf(t)?ll(t)[0]:t}function Yu(t,r,n,i){for(var a,o;;){var s=Gu(t),c=Wd($u(t,t.checkType),r),l=Ru(c)||Mu(c),u=Wd($u(t,t.extendsType),r);if(c===De||u===De)return De;var d=void 0;if(t.inferTypeParameters){var p=Qf(t.inferTypeParameters,void 0,0);l||ym(p.inferences,c,u,768),d=Od(r,p.mapper)}var f=d?Wd($u(t,t.extendsType),d):u;if(!l&&!Ru(f)&&!Mu(f)){if(!(3&f.flags)&&(1&c.flags&&!s||!cp($d(c),$d(f)))){1&c.flags&&!s&&(o||(o=[])).push(Wd(xd(t.node.trueType),d||r));var m=xd(t.node.falseType);if(16777216&m.flags){var g=m.root;if(g.node.parent===t.node&&(!g.isDistributive||g.checkType===t.checkType)){t=g;continue}}a=Wd(m,r);break}if(3&f.flags||cp(Yd(c),Yd(f))){a=Wd(xd(t.node.trueType),d||r);break}}(a=ji(16777216)).root=t,a.checkType=Wd(t.checkType,r),a.extendsType=Wd(t.extendsType,r),a.mapper=r,a.combinedMapper=d,a.aliasSymbol=n||t.aliasSymbol,a.aliasTypeArguments=n?i:Dd(t.aliasTypeArguments,r);break}return o?ou(e.append(o,a)):a}function Xu(e){return e.resolvedTrueType||(e.resolvedTrueType=Wd(xd(e.root.node.trueType),e.mapper))}function Qu(e){return e.resolvedFalseType||(e.resolvedFalseType=Wd(xd(e.root.node.falseType),e.mapper))}function Zu(t){var r;return t.locals&&t.locals.forEach((function(t){262144&t.flags&&(r=e.append(r,Jo(t)))})),r}function ed(t){return e.isIdentifier(t)?[t]:e.append(ed(t.left),t.right)}function td(t){var r=Cn(t);if(!r.resolvedType){if(t.isTypeOf&&t.typeArguments)return pn(t,e.Diagnostics.Type_arguments_cannot_be_used_here),r.resolvedSymbol=ke,r.resolvedType=we;if(!e.isLiteralImportTypeNode(t))return pn(t.argument,e.Diagnostics.String_literal_expected),r.resolvedSymbol=ke,r.resolvedType=we;var n=t.isTypeOf?111551:4194304&t.flags?900095:788968,i=gi(t,t.argument.literal);if(!i)return r.resolvedSymbol=ke,r.resolvedType=we;var a=vi(i,!1);if(e.nodeIsMissing(t.qualifier)){if(a.flags&n)r.resolvedType=rd(t,r,a,n);else pn(t,111551===n?e.Diagnostics.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:e.Diagnostics.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0,t.argument.literal.text),r.resolvedSymbol=ke,r.resolvedType=we}else{for(var o=ed(t.qualifier),s=a,c=void 0;c=o.shift();){var l=o.length?1920:n,u=Ci(ii(s)),d=t.isTypeOf?gc(_o(u),c.escapedText):Nn(Si(u),c.escapedText,l);if(!d)return pn(c,e.Diagnostics.Namespace_0_has_no_exported_member_1,pi(s),e.declarationNameToString(c)),r.resolvedType=we;Cn(c).resolvedSymbol=d,Cn(c.parent).resolvedSymbol=d,s=d}r.resolvedType=rd(t,r,s,n)}}return r.resolvedType}function rd(e,t,r,n){var i=ii(r);return t.resolvedSymbol=i,111551===n?_o(r):gl(e,i)}function nd(t){var r=Cn(t);if(!r.resolvedType){var n=id(t);if(0!==ss(t.symbol).size||n){var i=qi(16,t.symbol);i.aliasSymbol=n,i.aliasTypeArguments=ad(n),e.isJSDocTypeLiteral(t)&&t.isArrayType&&(i=jl(i)),r.resolvedType=i}else r.resolvedType=ot}return r.resolvedType}function id(t){for(var r=t.parent;e.isParenthesizedTypeNode(r)||e.isJSDocTypeExpression(r)||e.isTypeOperatorNode(r)&&143===r.operator;)r=r.parent;return e.isTypeAlias(r)?Ai(r):void 0}function ad(e){return e?Eo(e):void 0}function od(e){return!!(524288&e.flags)&&!zs(e)}function sd(e){return wp(e)||!!(474058748&e.flags)}function cd(t,r){if(e.every(t.types,sd))return e.find(t.types,wp)||nt;var n=e.find(t.types,(function(e){return!sd(e)}));if(n&&!(n&&e.find(t.types,(function(e){return e!==n&&!sd(e)}))))return function(t){for(var n=e.createSymbolTable(),i=0,a=Hs(t);i<a.length;i++){var o=a[i];if(24&e.getDeclarationModifierFlagsFromSymbol(o));else if(ud(o)){var s=65536&o.flags&&!(32768&o.flags),c=yn(16777220,o.escapedName,Cs(o)|(r?8:0));c.type=s?Ne:ou([_o(o),Ne]),c.declarations=o.declarations,c.nameType=Tn(o).nameType,c.syntheticOrigin=o,n.set(o.escapedName,c)}}var l=Wi(t.symbol,n,e.emptyArray,e.emptyArray,bc(t,0),bc(t,1));return l.objectFlags|=1048704,l}(n)}function ld(t,r,n,i,a){if(1&t.flags||1&r.flags)return Ee;if(2&t.flags||2&r.flags)return Ae;if(131072&t.flags)return r;if(131072&r.flags)return t;var o;if(1048576&t.flags)return(o=cd(t,a))?ld(o,r,n,i,a):gu([t,r])?pg(t,(function(e){return ld(e,r,n,i,a)})):we;if(1048576&r.flags)return(o=cd(r,a))?ld(t,o,n,i,a):gu([t,r])?pg(r,(function(e){return ld(t,e,n,i,a)})):we;if(473960444&r.flags)return t;if(Ru(t)||Ru(r)){if(wp(t))return r;if(2097152&t.flags){var s=t.types,c=s[s.length-1];if(od(c)&&od(r))return fu(e.concatenate(s.slice(0,s.length-1),[ld(c,r,n,i,a)]))}return fu([t,r])}var l,u,d=e.createSymbolTable(),p=new e.Set;t===nt?(l=bc(r,0),u=bc(r,1)):(l=xs(bc(t,0),bc(r,0)),u=xs(bc(t,1),bc(r,1)));for(var f=0,m=Hs(r);f<m.length;f++){var g=m[f];24&e.getDeclarationModifierFlagsFromSymbol(g)?p.add(g.escapedName):ud(g)&&d.set(g.escapedName,dd(g,a))}for(var _=0,h=Hs(t);_<h.length;_++){var y=h[_];if(!p.has(y.escapedName)&&ud(y))if(d.has(y.escapedName)){var v=_o(g=d.get(y.escapedName));if(16777216&g.flags){var b=e.concatenate(y.declarations,g.declarations),k=yn(4|16777216&y.flags,y.escapedName);k.type=ou([_o(y),Hm(v,524288)]),k.leftSpread=y,k.rightSpread=g,k.declarations=b,k.nameType=Tn(y).nameType,d.set(y.escapedName,k)}}else d.set(y.escapedName,dd(y,a))}var x=Wi(n,d,e.emptyArray,e.emptyArray,pd(l,a),pd(u,a));return x.objectFlags|=1049728|i,x}function ud(t){return!(e.some(t.declarations,e.isPrivateIdentifierPropertyDeclaration)||106496&t.flags&&t.declarations.some((function(t){return e.isClassLike(t.parent)})))}function dd(e,t){var r=65536&e.flags&&!(32768&e.flags);if(!r&&t===Nv(e))return e;var n=yn(4|16777216&e.flags,e.escapedName,Cs(e)|(t?8:0));return n.type=r?Ne:_o(e),n.declarations=e.declarations,n.nameType=Tn(e).nameType,n.syntheticOrigin=e,n}function pd(e,t){return e&&e.isReadonly!==t?Qc(e.type,t,e.declaration):e}function fd(e,t,r){var n=ji(e);return n.symbol=r,n.value=t,n}function md(e){if(2944&e.flags){if(!e.freshType){var t=fd(e.flags,e.value,e.symbol);t.regularType=e,t.freshType=t,e.freshType=t}return e.freshType}return e}function gd(e){return 2944&e.flags?e.regularType:1048576&e.flags?e.regularType||(e.regularType=pg(e,gd)):e}function _d(e){return!!(2944&e.flags)&&e.freshType===e}function hd(t,r,n){var i=(r||"")+("number"==typeof t?"#":"string"==typeof t?"@":"n")+("object"==typeof t?e.pseudoBigIntToString(t):t),a=me.get(i);if(!a){var o=("number"==typeof t?256:"string"==typeof t?128:2048)|(r?1024:0);me.set(i,a=fd(o,t,n)),a.regularType=a}return a}function yd(t){if(e.isValidESSymbolDeclaration(t)){var r=Ai(t),n=Tn(r);return n.uniqueESSymbolType||(n.uniqueESSymbolType=function(e){var t=ji(8192);return t.symbol=e,t.escapedName="__@"+t.symbol.escapedName+"@"+R(t.symbol),t}(r))}return Je}function vd(t){var r=Cn(t);return r.resolvedType||(r.resolvedType=function(t){var r=e.getThisContainer(t,!1),n=r&&r.parent;if(n&&(e.isClassLike(n)||256===n.kind)&&!e.hasSyntacticModifier(r,32)&&(!e.isConstructorDeclaration(r)||e.isNodeDescendantOf(t,r.body)))return Oo(Ai(n)).thisType;if(n&&e.isObjectLiteralExpression(n)&&e.isBinaryExpression(n.parent)&&6===e.getAssignmentDeclarationKind(n.parent))return Oo(Ai(n.parent.left).parent).thisType;var i=4194304&t.flags?e.getHostSignatureFromJSDoc(t):void 0;return i&&e.isFunctionExpression(i)&&e.isBinaryExpression(i.parent)&&3===e.getAssignmentDeclarationKind(i.parent)?Oo(Ai(i.parent.left).parent).thisType:Fy(r)&&e.isNodeDescendantOf(t,r.body)?Oo(Ai(r)).thisType:(pn(t,e.Diagnostics.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),we)}(t)),r.resolvedType}function bd(e){return xd(kd(e.type)||e.type)}function kd(e){switch(e.kind){case 187:return kd(e.type);case 180:if(1===e.elements.length&&(182===(e=e.elements[0]).kind||193===e.kind&&e.dotDotDotToken))return kd(e.type);break;case 179:return e.elementType}}function xd(e){return vl(Ed(e),e)}function Ed(t){switch(t.kind){case 129:case 306:case 307:return Ee;case 153:return Ae;case 148:return Re;case 145:return Me;case 156:return Le;case 132:return qe;case 149:return Je;case 114:return Ve;case 151:return Ne;case 104:return Fe;case 142:return He;case 146:return 131072&t.flags&&!X?Ee:Ye;case 137:return Ce;case 188:case 108:return vd(t);case 192:return function(e){if(104===e.literal.kind)return Fe;var t=Cn(e);return t.resolvedType||(t.resolvedType=gd(fb(e.literal))),t.resolvedType}(t);case 174:case 225:return El(t);case 173:return t.assertsModifier?Ve:qe;case 177:return Dl(t);case 179:case 180:return function(t){var r=Cn(t);if(!r.resolvedType){var n=Ul(t);if(n===st)r.resolvedType=nt;else if(180===t.kind&&e.some(t.elements,(function(e){return!!(8&Bl(e))}))||!ql(t)){var i=179===t.kind?[xd(t.elementType)]:e.map(t.elements,xd);r.resolvedType=Wl(n,i)}else r.resolvedType=180===t.kind&&0===t.elements.length?n:cl(n,t,void 0)}return r.resolvedType}(t);case 181:return function(e){var t=xd(e.type);return W?Nf(t):t}(t);case 183:return function(t){var r=Cn(t);if(!r.resolvedType){var n=id(t);r.resolvedType=ou(e.map(t.types,xd),1,n,ad(n))}return r.resolvedType}(t);case 184:return function(t){var r=Cn(t);if(!r.resolvedType){var n=id(t);r.resolvedType=fu(e.map(t.types,xd),n,ad(n))}return r.resolvedType}(t);case 308:return function(e){var t=xd(e.type);return W?Af(t,65536):t}(t);case 310:return za(xd(t.type));case 193:return function(e){var t=Cn(e);return t.resolvedType||(t.resolvedType=e.dotDotDotToken?bd(e):e.questionToken&&W?Nf(xd(e.type)):xd(e.type))}(t);case 187:case 309:case 304:return xd(t.type);case 182:return bd(t);case 312:return function(t){var r=xd(t.type),n=t.parent,i=t.parent.parent;if(e.isJSDocTypeExpression(t.parent)&&e.isJSDocParameterTag(i)){var a=e.getHostSignatureFromJSDoc(i);if(a){var o=e.lastOrUndefined(a.parameters),s=e.getParameterSymbolFromJSDoc(i);if(!o||s&&o.symbol===s&&e.isRestParameter(o))return jl(r)}}if(e.isParameter(n)&&e.isJSDocFunctionType(n.parent))return jl(r);return za(r)}(t);case 175:case 176:case 178:case 315:case 311:case 316:return nd(t);case 189:return function(t){var r=Cn(t);if(!r.resolvedType)switch(t.operator){case 139:r.resolvedType=Eu(xd(t.type));break;case 152:r.resolvedType=149===t.type.kind?yd(e.walkUpParenthesizedTypes(t.parent)):we;break;case 143:r.resolvedType=xd(t.type);break;default:throw e.Debug.assertNever(t.operator)}return r.resolvedType}(t);case 190:return Hu(t);case 191:return Ku(t);case 185:return function(t){var r=Cn(t);if(!r.resolvedType){var n=xd(t.checkType),i=id(t),a=ad(i),o=ko(t,!0),s=a?o:e.filter(o,(function(e){return zd(e,t)})),c={node:t,checkType:n,extendsType:xd(t.extendsType),isDistributive:!!(262144&n.flags),inferTypeParameters:Zu(t),outerTypeParameters:s,instantiations:void 0,aliasSymbol:i,aliasTypeArguments:a};r.resolvedType=Yu(c,void 0),s&&(c.instantiations=new e.Map,c.instantiations.set(nl(s),r.resolvedType))}return r.resolvedType}(t);case 186:return function(e){var t=Cn(e);return t.resolvedType||(t.resolvedType=qo(Ai(e.typeParameter))),t.resolvedType}(t);case 194:return function(t){var r=Cn(t);return r.resolvedType||(r.resolvedType=Du(i([t.head.text],e.map(t.templateSpans,(function(e){return e.literal.text}))),e.map(t.templateSpans,(function(e){return xd(e.type)})))),r.resolvedType}(t);case 196:return td(t);case 78:case 158:case 202:var r=Yx(t);return r?Jo(r):we;default:return we}}function Sd(e,t,r){if(e&&e.length)for(var n=0;n<e.length;n++){var i=e[n],a=r(i,t);if(i!==a){var o=0===n?[]:e.slice(0,n);for(o.push(a),n++;n<e.length;n++)o.push(r(e[n],t));return o}}return e}function Dd(e,t){return Sd(e,t,Wd)}function wd(e,t){return Sd(e,t,jd)}function Td(e,t){return 1===e.length?Ad(e[0],t?t[0]:Ee):function(e,t){return{kind:1,sources:e,targets:t}}(e,t)}function Cd(e,t){switch(t.kind){case 0:return e===t.source?t.target:e;case 1:for(var r=t.sources,n=t.targets,i=0;i<r.length;i++)if(e===r[i])return n?n[i]:Ee;return e;case 2:return t.func(e);case 3:case 4:var a=Cd(e,t.mapper1);return a!==e&&3===t.kind?Wd(a,t.mapper2):Cd(a,t.mapper2)}}function Ad(e,t){return{kind:0,source:e,target:t}}function Nd(e){return{kind:2,func:e}}function Pd(e,t,r){return{kind:e,mapper1:t,mapper2:r}}function Id(e){return Td(e,void 0)}function Fd(e,t){return e?Pd(3,e,t):t}function Od(e,t){return e?Pd(4,e,t):t}function Rd(e,t,r){return r?Pd(4,Ad(e,t),r):Ad(e,t)}function Md(e,t,r){return e?Pd(4,e,Ad(t,r)):Ad(t,r)}function Ld(e){var t=Ji(e.symbol);return t.target=e,t}function jd(t,r,n){var i;if(t.typeParameters&&!n){i=e.map(t.typeParameters,Ld),r=Fd(Td(t.typeParameters,i),r);for(var a=0,o=i;a<o.length;a++){o[a].mapper=r}}var s=ds(t.declaration,i,t.thisParameter&&Bd(t.thisParameter,r),Sd(t.parameters,r,Bd),void 0,void 0,t.minArgumentCount,39&t.flags);return s.target=t,s.mapper=r,s}function Bd(t,r){var n=Tn(t);if(n.type&&!am(n.type))return t;1&e.getCheckFlags(t)&&(t=n.target,r=Fd(n.mapper,r));var i=yn(t.flags,t.escapedName,1|53256&e.getCheckFlags(t));return i.declarations=t.declarations,i.parent=t.parent,i.target=t,i.mapper=r,t.valueDeclaration&&(i.valueDeclaration=t.valueDeclaration),n.nameType&&(i.nameType=n.nameType),i}function zd(t,r){if(t.symbol&&t.symbol.declarations&&1===t.symbol.declarations.length){for(var n=t.symbol.declarations[0].parent,i=r;i!==n;i=i.parent)if(!i||232===i.kind||185===i.kind&&e.forEachChild(i.extendsType,a))return!0;return!!e.forEachChild(r,a)}return!0;function a(r){switch(r.kind){case 188:return!!t.isThisType;case 78:return!t.isThisType&&e.isPartOfTypeNode(r)&&function(e){return!(158===e.kind||174===e.parent.kind&&e.parent.typeArguments&&e===e.parent.typeName||196===e.parent.kind&&e.parent.typeArguments&&e===e.parent.qualifier)}(r)&&Ed(r)===t;case 177:return!0}return!!e.forEachChild(r,a)}}function Ud(e){var t=Ps(e);if(4194304&t.flags){var r=Wu(t.type);if(262144&r.flags)return r}}function qd(t,r,n,i){var a=Ud(t);if(a){var o=Wd(a,r);if(a!==o)return fg(uc(o),(function(n){if(61603843&n.flags&&n!==De&&n!==we){if(!t.declaration.nameType){if(rf(n))return function(e,t,r){var n=Vd(t,Me,!0,r);return n===we?we:jl(n,Jd(nf(e),Ls(t)))}(n,t,Rd(a,n,r));if(bf(n))return function(t,r,n,i){var a=t.target.elementFlags,o=e.map(ll(t),(function(e,t){var o=8&a[t]?e:4&a[t]?jl(e):Hl([e],[a[t]]);return qd(r,Rd(n,o,i))})),s=Jd(t.target.readonly,Ls(r));return Hl(o,e.map(o,(function(e){return 8})),s)}(n,t,a,r);if(vf(n))return function(t,r,n){var i=t.target.elementFlags,a=e.map(ll(t),(function(e,t){return Vd(r,hd(""+t),!!(2&i[t]),n)})),o=Ls(r),s=4&o?e.map(i,(function(e){return 1&e?2:e})):8&o?e.map(i,(function(e){return 2&e?1:e})):i,c=Jd(t.target.readonly,o);return e.contains(a,we)?we:Hl(a,s,c,t.target.labeledElementDeclarations)}(n,t,Rd(a,n,r))}return Hd(t,Rd(a,n,r))}return n}),n,i)}return Wd(Ps(t),r)===De?De:Hd(t,r,n,i)}function Jd(e,t){return!!(1&t)||!(2&t)&&e}function Vd(e,t,r,n){var i=Md(n,Ns(e),t),a=Wd(Fs(e.target||e),i),o=Ls(e);return W&&4&o&&!Rv(a,49152)?Nf(a):W&&8&o&&r?Hm(a,524288):a}function Hd(e,t,r,n){var i=qi(64|e.objectFlags,e.symbol);if(32&e.objectFlags){i.declaration=e.declaration;var a=Ns(e),o=Ld(a);i.typeParameter=o,t=Fd(Ad(a,o),t),o.mapper=t}return i.target=e,i.mapper=t,i.aliasSymbol=r||e.aliasSymbol,i.aliasTypeArguments=r?n:Dd(e.aliasTypeArguments,t),i}function Kd(t,r,n,i){var a=t.root;if(a.outerTypeParameters){var o=e.map(a.outerTypeParameters,(function(e){return Cd(e,r)})),s=nl(o)+il(n,i),c=a.instantiations.get(s);if(!c)c=function(e,t,r,n){if(e.isDistributive){var i=e.checkType,a=Cd(i,t);if(i!==a&&1179648&a.flags)return fg(a,(function(r){return Yu(e,Rd(i,r,t))}),r,n)}return Yu(e,t,r,n)}(a,Td(a.outerTypeParameters,o),n,i),a.instantiations.set(s,c);return c}return t}function Wd(e,t){return e&&t?Gd(e,t,void 0,void 0):e}function Gd(t,r,n,i){if(!am(t))return t;if(50===D||x>=5e6)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","instantiateType_DepthLimit",{typeId:t.id,instantiationDepth:D,instantiationCount:x}),pn(d,e.Diagnostics.Type_instantiation_is_excessively_deep_and_possibly_infinite),we;k++,x++,D++;var a=function(t,r,n,i){var a=t.flags;if(262144&a)return Cd(t,r);if(524288&a){var o=t.objectFlags;if(52&o){if(4&o&&!t.node){var s=t.resolvedTypeArguments,c=Dd(s,r);return c!==s?Wl(t.target,c):t}return function(t,r,n,i){var a=4&t.objectFlags?t.node:t.symbol.declarations[0],o=Cn(a),s=4&t.objectFlags?o.resolvedType:64&t.objectFlags?t.target:t,c=o.outerTypeParameters;if(!c){var l=ko(a,!0);if(Fy(a)){var u=Ec(a);l=e.addRange(l,u)}c=l||e.emptyArray,c=(4&s.objectFlags||2048&s.symbol.flags)&&!s.aliasTypeArguments?e.filter(c,(function(e){return zd(e,a)})):c,o.outerTypeParameters=c}if(c.length){var d=Fd(t.mapper,r),p=e.map(c,(function(e){return Cd(e,d)})),f=n||t.aliasSymbol,m=n?i:Dd(t.aliasTypeArguments,r),g=nl(p)+il(f,m);s.instantiations||(s.instantiations=new e.Map,s.instantiations.set(nl(c)+il(s.aliasSymbol,s.aliasTypeArguments),s));var _=s.instantiations.get(g);if(!_){var h=Td(c,p);_=4&s.objectFlags?cl(t.target,t.node,h,f,m):32&s.objectFlags?qd(s,h,f,m):Hd(s,h,f,m),s.instantiations.set(g,_)}return _}return t}(t,r,n,i)}return t}if(3145728&a){var l=1048576&t.flags?t.origin:void 0,u=l&&3145728&l.flags?l.types:t.types,d=Dd(u,r);if(d===u&&n===t.aliasSymbol)return t;var p=n||t.aliasSymbol,f=n?i:Dd(t.aliasTypeArguments,r);return 2097152&a||l&&2097152&l.flags?fu(d,p,f):ou(d,1,p,f)}if(4194304&a)return Eu(Wd(t.type,r));if(134217728&a)return Du(t.texts,Dd(t.types,r));if(268435456&a)return Tu(t.symbol,Wd(t.type,r));if(8388608&a){p=n||t.aliasSymbol,f=n?i:Dd(t.aliasTypeArguments,r);return qu(Wd(t.objectType,r),Wd(t.indexType,r),t.noUncheckedIndexedAccessCandidate,void 0,p,f)}if(16777216&a)return Kd(t,Fd(t.mapper,r),n,i);if(33554432&a){var m=Wd(t.baseType,r);if(8650752&m.flags)return _l(m,Wd(t.substitute,r));var g=Wd(t.substitute,r);return 3&g.flags||cp(Yd(m),Yd(g))?m:g}return t}(t,r,n,i);return D--,a}function $d(e){return 262143&e.flags?e:e.permissiveInstantiation||(e.permissiveInstantiation=Wd(e,rt))}function Yd(e){return 262143&e.flags?e:(e.restrictiveInstantiation||(e.restrictiveInstantiation=Wd(e,tt),e.restrictiveInstantiation.restrictiveInstantiation=e.restrictiveInstantiation),e.restrictiveInstantiation)}function Xd(e,t){return e&&Qc(Wd(e.type,t),e.isReadonly,e.declaration)}function Qd(t){switch(e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t)),t.kind){case 209:case 210:case 166:case 253:return Zd(t);case 201:return e.some(t.properties,Qd);case 200:return e.some(t.elements,Qd);case 219:return Qd(t.whenTrue)||Qd(t.whenFalse);case 218:return(56===t.operatorToken.kind||60===t.operatorToken.kind)&&(Qd(t.left)||Qd(t.right));case 291:return Qd(t.initializer);case 208:return Qd(t.expression);case 284:return e.some(t.properties,Qd)||e.isJsxOpeningElement(t.parent)&&e.some(t.parent.parent.children,Qd);case 283:var r=t.initializer;return!!r&&Qd(r);case 286:var n=t.expression;return!!n&&Qd(n)}return!1}function Zd(t){return(!e.isFunctionDeclaration(t)||e.isInJSFile(t)&&!!ja(t))&&(ep(t)||function(t){return!t.typeParameters&&!e.getEffectiveReturnTypeNode(t)&&!!t.body&&232!==t.body.kind&&Qd(t.body)}(t))}function ep(t){if(!t.typeParameters){if(e.some(t.parameters,(function(t){return!e.getEffectiveTypeAnnotationNode(t)})))return!0;if(210!==t.kind){var r=e.firstOrUndefined(t.parameters);if(!r||!e.parameterIsThisKeyword(r))return!0}}return!1}function tp(t){return(e.isInJSFile(t)&&e.isFunctionDeclaration(t)||T_(t)||e.isObjectLiteralMethod(t))&&Zd(t)}function rp(t){if(524288&t.flags){var r=Us(t);if(r.constructSignatures.length||r.callSignatures.length){var n=qi(16,t.symbol);return n.members=r.members,n.properties=r.properties,n.callSignatures=e.emptyArray,n.constructSignatures=e.emptyArray,n}}else if(2097152&t.flags)return fu(e.map(t.types,rp));return t}function np(e,t){return Pp(e,t,sn)}function ip(e,t){return Pp(e,t,sn)?-1:0}function ap(e,t){return Pp(e,t,an)?-1:0}function op(e,t){return Pp(e,t,rn)?-1:0}function sp(e,t){return Pp(e,t,rn)}function cp(e,t){return Pp(e,t,an)}function lp(t,r){return 1048576&t.flags?e.every(t.types,(function(e){return lp(e,r)})):1048576&r.flags?e.some(r.types,(function(e){return lp(t,e)})):58982400&t.flags?lp(Qs(t)||Ae,r):r===yt?!!(67633152&t.flags):r===vt?!!(524288&t.flags)&&Jm(t):vo(t,yo(r))||rf(r)&&!nf(r)&&lp(t,Et)}function up(e,t){return Pp(e,t,on)}function dp(e,t){return up(e,t)||up(t,e)}function pp(e,t,r,n,i,a){return Op(e,t,an,r,n,i,a)}function fp(e,t,r,n,i,a){return mp(e,t,an,r,n,i,a,void 0)}function mp(e,t,r,n,i,a,o,s){return!!Pp(e,t,r)||(!n||!_p(i,e,t,r,a,o,s))&&Op(e,t,r,n,a,o,s)}function gp(t){return!!(16777216&t.flags||2097152&t.flags&&e.some(t.types,gp))}function _p(t,r,n,i,o,c,l){if(!t||gp(n))return!1;if(!Op(r,n,i,void 0)&&function(t,r,n,i,a,o,s){for(var c=hc(r,0),l=hc(r,1),u=0,d=[l,c];u<d.length;u++){var p=d[u];if(e.some(p,(function(e){var t=Bc(e);return!(131073&t.flags)&&Op(t,n,i,void 0)}))){var f=s||{};pp(r,n,t,a,o,f);var m=f.errors[f.errors.length-1];return e.addRelatedInfo(m,e.createDiagnosticForNode(t,p===l?e.Diagnostics.Did_you_mean_to_use_new_with_this_expression:e.Diagnostics.Did_you_mean_to_call_this_expression)),!0}}return!1}(t,r,n,i,o,c,l))return!0;switch(t.kind){case 286:case 208:return _p(t.expression,r,n,i,o,c,l);case 218:switch(t.operatorToken.kind){case 62:case 27:return _p(t.right,r,n,i,o,c,l)}break;case 201:return function(t,r,n,i,a,o){return!(131068&n.flags)&&vp(function(t){var r,n,i,a;return s(this,(function(o){switch(o.label){case 0:if(!e.length(t.properties))return[2];r=0,n=t.properties,o.label=1;case 1:if(!(r<n.length))return[3,8];if(i=n[r],e.isSpreadAssignment(i))return[3,7];if(!(a=bu(Ai(i),8576))||131072&a.flags)return[3,7];switch(i.kind){case 169:case 168:case 166:case 292:return[3,2];case 291:return[3,4]}return[3,6];case 2:return[4,{errorNode:i.name,innerExpression:void 0,nameType:a}];case 3:return o.sent(),[3,7];case 4:return[4,{errorNode:i.name,innerExpression:i.initializer,nameType:a,errorMessage:e.isComputedNonLiteralName(i.name)?e.Diagnostics.Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:void 0}];case 5:return o.sent(),[3,7];case 6:e.Debug.assertNever(i),o.label=7;case 7:return r++,[3,1];case 8:return[2]}}))}(t),r,n,i,a,o)}(t,r,n,i,c,l);case 200:return function(e,t,r,n,i,a){if(131068&r.flags)return!1;if(lf(t))return vp(kp(e,r),t,r,n,i,a);var o=e.contextualType;e.contextualType=r;try{var s=P_(e,1,!0);return e.contextualType=o,!!lf(s)&&vp(kp(e,r),s,r,n,i,a)}finally{e.contextualType=o}}(t,r,n,i,c,l);case 284:return function(t,r,n,i,o,c){var l,u=vp(function(t){var r,n,i;return s(this,(function(a){switch(a.label){case 0:if(!e.length(t.properties))return[2];r=0,n=t.properties,a.label=1;case 1:return r<n.length?(i=n[r],e.isJsxSpreadAttribute(i)?[3,3]:[4,{errorNode:i.name,innerExpression:i.initializer,nameType:hd(e.idText(i.name))}]):[3,4];case 2:a.sent(),a.label=3;case 3:return r++,[3,1];case 4:return[2]}}))}(t),r,n,i,o,c);if(e.isJsxOpeningElement(t.parent)&&e.isJsxElement(t.parent.parent)){var d=t.parent.parent,p=Q_(Y_(t)),f=void 0===p?"children":e.unescapeLeadingUnderscores(p),m=hd(f),g=qu(n,m),_=e.getSemanticJsxChildren(d.children);if(!e.length(_))return u;var h=e.length(_)>1,y=ug(g,uf),v=ug(g,(function(e){return!uf(e)}));if(h){if(y!==He){var b=Hl(V_(d,0)),k=function(t,r){var n,i,a,o,c;return s(this,(function(s){switch(s.label){case 0:if(!e.length(t.children))return[2];n=0,i=0,s.label=1;case 1:return i<t.children.length?(a=t.children[i],o=hd(i-n),(c=bp(a,o,r))?[4,c]:[3,3]):[3,5];case 2:return s.sent(),[3,4];case 3:n++,s.label=4;case 4:return i++,[3,1];case 5:return[2]}}))}(d,S);u=vp(k,b,y,i,o,c)||u}else if(!Pp(qu(r,m),g,i)){u=!0;var x=pn(d.openingElement.tagName,e.Diagnostics.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,f,da(g));c&&c.skipLogging&&(c.errors||(c.errors=[])).push(x)}}else if(v!==He){var E=bp(_[0],m,S);E&&(u=vp(function(){return s(this,(function(e){switch(e.label){case 0:return[4,E];case 1:return e.sent(),[2]}}))}(),r,n,i,o,c)||u)}else if(!Pp(qu(r,m),g,i)){u=!0;x=pn(d.openingElement.tagName,e.Diagnostics.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,f,da(g));c&&c.skipLogging&&(c.errors||(c.errors=[])).push(x)}}return u;function S(){if(!l){var r=e.getTextOfNode(t.parent.tagName),i=Q_(Y_(t)),o=void 0===i?"children":e.unescapeLeadingUnderscores(i),s=qu(n,hd(o)),c=e.Diagnostics._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;l=a(a({},c),{key:"!!ALREADY FORMATTED!!",message:e.formatMessage(void 0,c,r,o,da(s))})}return l}}(t,r,n,i,c,l);case 210:return function(t,r,n,i,a,o){if(e.isBlock(t.body))return!1;if(e.some(t.parameters,e.hasType))return!1;var s=Qh(r);if(!s)return!1;var c=hc(n,0);if(!e.length(c))return!1;var l=t.body,u=Bc(s),d=ou(e.map(c,Bc));if(!Op(u,d,i,void 0)){var p=l&&_p(l,u,d,i,void 0,a,o);if(p)return p;var f=o||{};if(Op(u,d,i,l,void 0,a,f),f.errors)return n.symbol&&e.length(n.symbol.declarations)&&e.addRelatedInfo(f.errors[f.errors.length-1],e.createDiagnosticForNode(n.symbol.declarations[0],e.Diagnostics.The_expected_type_comes_from_the_return_type_of_this_signature)),2&e.getFunctionFlags(t)||Na(u,"then")||!Op(_v(u),d,i,void 0)||e.addRelatedInfo(f.errors[f.errors.length-1],e.createDiagnosticForNode(t,e.Diagnostics.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}(t,r,n,i,c,l)}return!1}function hp(e,t,r){var n=Vu(t,r);if(n)return n;if(1048576&t.flags){var i=Mp(e,t);if(i)return Vu(i,r)}}function yp(e,t){e.contextualType=t;try{return eb(e,1,t)}finally{e.contextualType=void 0}}function vp(t,r,n,i,a,o){for(var s=!1,c=t.next();!c.done;c=t.next()){var l=c.value,u=l.errorNode,d=l.innerExpression,p=l.nameType,f=l.errorMessage,m=hp(r,n,p);if(m&&!(8388608&m.flags)){var g=Vu(r,p);if(g&&!Op(g,m,i,void 0))if(d&&_p(d,g,m,i,void 0,a,o))s=!0;else{var _=o||{},h=d?yp(d,g):g;if(Op(h,m,i,u,f,a,_)&&h!==g&&Op(g,m,i,u,f,a,_),_.errors){var y=_.errors[_.errors.length-1],v=Zo(p)?is(p):void 0,b=void 0!==v?gc(n,v):void 0,k=!1;if(!b){var x=Mv(p,296)&&bc(n,1)||bc(n,0)||void 0;x&&x.declaration&&!e.getSourceFileOfNode(x.declaration).hasNoDefaultLib&&(k=!0,e.addRelatedInfo(y,e.createDiagnosticForNode(x.declaration,e.Diagnostics.The_expected_type_comes_from_this_index_signature)))}if(!k&&(b&&e.length(b.declarations)||n.symbol&&e.length(n.symbol.declarations))){var E=b&&e.length(b.declarations)?b.declarations[0]:n.symbol.declarations[0];e.getSourceFileOfNode(E).hasNoDefaultLib||e.addRelatedInfo(y,e.createDiagnosticForNode(E,e.Diagnostics.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,!v||8192&p.flags?da(p):e.unescapeLeadingUnderscores(v),da(n)))}}s=!0}}}return s}function bp(t,r,n){switch(t.kind){case 286:return{errorNode:t,innerExpression:t.expression,nameType:r};case 11:if(t.containsOnlyTriviaWhiteSpaces)break;return{errorNode:t,innerExpression:void 0,nameType:r,errorMessage:n()};case 276:case 277:case 280:return{errorNode:t,innerExpression:t,nameType:r};default:return e.Debug.assertNever(t,"Found invalid jsx child")}}function kp(t,r){var n,i,a,o;return s(this,(function(s){switch(s.label){case 0:if(!(n=e.length(t.elements)))return[2];i=0,s.label=1;case 1:return i<n?lf(r)&&!gc(r,""+i)?[3,3]:(a=t.elements[i],e.isOmittedExpression(a)?[3,3]:(o=hd(i),[4,{errorNode:a,innerExpression:a,nameType:o}])):[3,4];case 2:s.sent(),s.label=3;case 3:return i++,[3,1];case 4:return[2]}}))}function xp(e,t,r,n,i){return Op(e,t,on,r,n,i)}function Ep(t,r,n,i,a,o,s,c){if(t===r)return-1;if(!(l=r).typeParameters&&(!l.thisParameter||Pa(Qy(l.thisParameter)))&&1===l.parameters.length&&U(l)&&(Qy(l.parameters[0])===At||Pa(Qy(l.parameters[0])))&&Pa(Bc(l)))return-1;var l,u=ov(r);if(!cv(r)&&(8&n?cv(t)||ov(t)>u:sv(t)>u))return 0;t.typeParameters&&t.typeParameters!==r.typeParameters&&(t=ty(t,r=Wc(r),void 0,s));var d=ov(t),p=uv(t),f=uv(r);if((p||f)&&Wd(p||f,c),p&&f&&d!==u)return 0;var m=r.declaration?r.declaration.kind:0,g=!(3&n)&&G&&166!==m&&165!==m&&167!==m,_=-1,h=Lc(t);if(h&&h!==Ve){var y=Lc(r);if(y){if(!(S=!g&&s(h,y,!1)||s(y,h,i)))return i&&a(e.Diagnostics.The_this_types_of_each_signature_are_incompatible),0;_&=S}}for(var v=p||f?Math.min(d,u):Math.max(d,u),b=p||f?v-1:-1,k=0;k<v;k++){var x=k===b?av(t,k):iv(t,k),E=k===b?av(r,k):iv(r,k);if(x&&E){var S,D=3&n?void 0:Qh(Pf(x)),w=3&n?void 0:Qh(Pf(E));if((S=D&&w&&!jc(D)&&!jc(w)&&(98304&wf(x))==(98304&wf(E))?Ep(w,D,8&n|(g?2:1),i,a,o,s,c):!(3&n)&&!g&&s(x,E,!1)||s(E,x,i))&&8&n&&k>=sv(t)&&k<sv(r)&&s(x,E,!1)&&(S=0),!S)return i&&a(e.Diagnostics.Types_of_parameters_0_and_1_are_incompatible,e.unescapeLeadingUnderscores(ev(t,k)),e.unescapeLeadingUnderscores(ev(r,k))),0;_&=S}}if(!(4&n)){var T=Uc(r)?Ee:r.declaration&&Fy(r.declaration)?Oo(Ci(r.declaration.symbol)):Bc(r);if(T===Ve)return _;var C=Uc(t)?Ee:t.declaration&&Fy(t.declaration)?Oo(Ci(t.declaration.symbol)):Bc(t),A=jc(r);if(A){var N=jc(t);if(N)_&=function(t,r,n,i,a){if(t.kind!==r.kind)return n&&(i(e.Diagnostics.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard),i(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,ha(t),ha(r))),0;if((1===t.kind||3===t.kind)&&t.parameterIndex!==r.parameterIndex)return n&&(i(e.Diagnostics.Parameter_0_is_not_in_the_same_position_as_parameter_1,t.parameterName,r.parameterName),i(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,ha(t),ha(r))),0;var o=t.type===r.type?-1:t.type&&r.type?a(t.type,r.type,n):0;0===o&&n&&i(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,ha(t),ha(r));return o}(N,A,i,a,s);else if(e.isIdentifierTypePredicate(A))return i&&a(e.Diagnostics.Signature_0_must_be_a_type_predicate,ua(t)),0}else!(_&=1&n&&s(T,C,!1)||s(C,T,i))&&i&&o&&o(C,T)}return _}function Sp(e,t){var r=Kc(e),n=Kc(t),i=Bc(r),a=Bc(n);return!(a!==Ve&&!Pp(a,i,an)&&!Pp(i,a,an))&&0!==Ep(r,n,!0?4:0,!1,void 0,void 0,ap,void 0)}function Dp(e){return e!==ct&&0===e.properties.length&&0===e.callSignatures.length&&0===e.constructSignatures.length&&!e.stringIndexInfo&&!e.numberIndexInfo}function wp(t){return 524288&t.flags?!zs(t)&&Dp(Us(t)):!!(67108864&t.flags)||(1048576&t.flags?e.some(t.types,wp):!!(2097152&t.flags)&&e.every(t.types,wp))}function Tp(t){return!!(16&e.getObjectFlags(t)&&(t.members&&Dp(t)||t.symbol&&2048&t.symbol.flags&&0===ss(t.symbol).size))}function Cp(t){return 524288&t.flags&&!zs(t)&&0===Hs(t).length&&bc(t,0)&&!bc(t,1)||3145728&t.flags&&e.every(t.types,Cp)||!1}function Ap(t,r,n){if(t===r)return!0;var i=R(t)+","+R(r),a=cn.get(i);if(void 0!==a&&(4&a||!(2&a)||!n))return!!(1&a);if(!(t.escapedName===r.escapedName&&256&t.flags&&256&r.flags))return cn.set(i,6),!1;for(var o=_o(r),s=0,c=Hs(_o(t));s<c.length;s++){var l=c[s];if(8&l.flags){var u=gc(o,l.escapedName);if(!(u&&8&u.flags))return n?(n(e.Diagnostics.Property_0_is_missing_in_type_1,e.symbolName(l),da(Jo(r),void 0,64)),cn.set(i,6)):cn.set(i,2),!1}}return cn.set(i,1),!0}function Np(e,t,r,n){var i=e.flags,a=t.flags;if(3&a||131072&i||e===De)return!0;if(131072&a)return!1;if(402653316&i&&4&a)return!0;if(128&i&&1024&i&&128&a&&!(1024&a)&&e.value===t.value)return!0;if(296&i&&8&a)return!0;if(256&i&&1024&i&&256&a&&!(1024&a)&&e.value===t.value)return!0;if(2112&i&&64&a)return!0;if(528&i&&16&a)return!0;if(12288&i&&4096&a)return!0;if(32&i&&32&a&&Ap(e.symbol,t.symbol,n))return!0;if(1024&i&&1024&a){if(1048576&i&&1048576&a&&Ap(e.symbol,t.symbol,n))return!0;if(2944&i&&2944&a&&e.value===t.value&&Ap(Ni(e.symbol),Ni(t.symbol),n))return!0}if(32768&i&&(!W||49152&a))return!0;if(65536&i&&(!W||65536&a))return!0;if(524288&i&&67108864&a)return!0;if(r===an||r===on){if(1&i)return!0;if(264&i&&!(1024&i)&&(32&a||256&a&&1024&a))return!0}return!1}function Pp(e,t,r){if(_d(e)&&(e=e.regularType),_d(t)&&(t=t.regularType),e===t)return!0;if(r!==sn){if(r===on&&!(131072&t.flags)&&Np(t,e,r)||Np(e,t,r))return!0}else if(!(3145728&e.flags||3145728&t.flags||e.flags===t.flags||469237760&e.flags))return!1;if(524288&e.flags&&524288&t.flags){var n=r.get(Kp(e,t,0,r));if(void 0!==n)return!!(1&n)}return!!(469499904&e.flags||469499904&t.flags)&&Op(e,t,r,void 0)}function Ip(t,r){return 4096&e.getObjectFlags(t)&&!U_(r.escapedName)}function Fp(t,r){for(;;){var n=_d(t)?t.regularType:4&e.getObjectFlags(t)&&t.node?ol(t.target,ll(t)):3145728&t.flags?uc(t):33554432&t.flags?r?t.baseType:t.substitute:25165824&t.flags?ju(t,r):t;if(n===t)break;t=n}return t}function Op(t,r,n,a,o,s,c){var u,p,f,m,g,_,h=0,y=0,v=0,b=!1,k=0,x=[],E=!1;e.Debug.assert(n!==sn||!a,"no error reporting in identity checking");var S=j(t,r,!!a,o);if(x.length&&O(),b){null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","checkTypeRelatedTo_DepthLimit",{sourceId:t.id,targetId:r.id,depth:y});var D=pn(a||d,e.Diagnostics.Excessive_stack_depth_comparing_types_0_and_1,da(t),da(r));c&&(c.errors||(c.errors=[])).push(D)}else if(u){if(s){var w=s();w&&(e.concatenateDiagnosticMessageChains(w,u),u=w)}var T=void 0;if(o&&a&&!S&&t.symbol){var C=Tn(t.symbol);if(C.originatingImport&&!e.isImportCall(C.originatingImport))if(Op(_o(C.target),r,n,void 0)){var A=e.createDiagnosticForNode(C.originatingImport,e.Diagnostics.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead);T=e.append(T,A)}}D=e.createDiagnosticForNodeFromMessageChain(a,u,T);p&&e.addRelatedInfo.apply(void 0,i([D],p)),c&&(c.errors||(c.errors=[])).push(D),c&&c.skipLogging||Qr.add(D)}return a&&c&&c.skipLogging&&0===S&&e.Debug.assert(!!c.errors,"missed opportunity to interact with error."),0!==S;function P(e){u=e.errorInfo,_=e.lastSkippedInfo,x=e.incompatibleStack,k=e.overrideNextErrorInfo,p=e.relatedInfo}function I(){return{errorInfo:u,lastSkippedInfo:_,incompatibleStack:x.slice(),overrideNextErrorInfo:k,relatedInfo:p?p.slice():void 0}}function F(e,t,r,n,i){k++,_=void 0,x.push([e,t,r,n,i])}function O(){var t=x;x=[];var r=_;if(_=void 0,1===t.length)return R.apply(void 0,t[0]),void(r&&M.apply(void 0,i([void 0],r)));for(var n="",a=[];t.length;){var o=t.pop(),s=o[0],c=o.slice(1);switch(s.code){case e.Diagnostics.Types_of_property_0_are_incompatible.code:0===n.indexOf("new ")&&(n="("+n+")");var l=""+c[0];n=0===n.length?""+l:e.isIdentifierText(l,J.target)?n+"."+l:"["===l[0]&&"]"===l[l.length-1]?""+n+l:n+"["+l+"]";break;case e.Diagnostics.Call_signature_return_types_0_and_1_are_incompatible.code:case e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible.code:case e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:if(0===n.length){var u=s;s.code===e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?u=e.Diagnostics.Call_signature_return_types_0_and_1_are_incompatible:s.code===e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(u=e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible),a.unshift([u,c[0],c[1]])}else{n=""+(s.code===e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible.code||s.code===e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"")+n+"("+(s.code===e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||s.code===e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...")+")"}break;default:return e.Debug.fail("Unhandled Diagnostic: "+s.code)}}n?R(")"===n[n.length-1]?e.Diagnostics.The_types_returned_by_0_are_incompatible_between_these_types:e.Diagnostics.The_types_of_0_are_incompatible_between_these_types,n):a.shift();for(var d=0,p=a;d<p.length;d++){var f=p[d],m=(s=f[0],c=f.slice(1),s.elidedInCompatabilityPyramid);s.elidedInCompatabilityPyramid=!1,R.apply(void 0,i([s],c)),s.elidedInCompatabilityPyramid=m}r&&M.apply(void 0,i([void 0],r))}function R(t,r,n,i,o){e.Debug.assert(!!a),x.length&&O(),t.elidedInCompatabilityPyramid||(u=e.chainDiagnosticMessages(u,t,r,n,i,o))}function M(t,r,i){x.length&&O();var a=pa(r,i),o=a[0],s=a[1],c=r,l=o;if(ff(r)&&!Rp(i)&&(c=mf(r),e.Debug.assert(!cp(c,i),"generalized source shouldn't be assignable"),l=fa(c)),262144&i.flags){var u=Qs(i),d=void 0;u&&(cp(c,u)||(d=cp(r,u)))?R(e.Diagnostics._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,d?o:l,s,da(u)):R(e.Diagnostics._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,s,l)}t||(t=n===on?e.Diagnostics.Type_0_is_not_comparable_to_type_1:o===s?e.Diagnostics.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:e.Diagnostics.Type_0_is_not_assignable_to_type_1),R(t,l,s)}function L(t,r,n){return vf(t)?t.target.readonly&&af(r)?(n&&R(e.Diagnostics.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,da(t),da(r)),!1):vf(r)||rf(r):nf(t)&&af(r)?(n&&R(e.Diagnostics.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,da(t),da(r)),!1):!vf(r)||rf(t)}function j(t,r,i,o,s){if(void 0===i&&(i=!1),void 0===s&&(s=0),524288&t.flags&&131068&r.flags)return Np(t,r,n,i?R:void 0)?-1:(D(t,r,0,!!(4096&e.getObjectFlags(t))),0);var c=Fp(t,!1),l=Fp(r,!0);if(c===l)return-1;if(n===sn)return function(e,t){var r=e.flags&t.flags;if(!(469237760&r))return 0;if(B(e,t),3145728&r){var n=z(e,t);return n&&(n&=z(t,e)),n}return H(e,t,!1,0)}(c,l);if(262144&c.flags&&Ks(c)===l)return-1;if(1048576&l.flags&&524288&c.flags&&l.types.length<=3&&Rv(l,98304)){var d=gg(l,-98305);if(!(1179648&d.flags)){if(c===d)return-1;l=d}}if(n===on&&!(131072&l.flags)&&Np(l,c,n)||Np(c,l,n,i?R:void 0))return-1;var p=!!(4096&e.getObjectFlags(c)),f=!(2&s)&&km(c)&&32768&e.getObjectFlags(c);if(f&&function(t,r,i){if(!sh(r)||!X&&16384&e.getObjectFlags(r))return!1;var o=!!(4096&e.getObjectFlags(t));if((n===an||n===on)&&(sg(yt,r)||!o&&wp(r)))return!1;var s,c=r;1048576&r.flags&&(c=hS(t,r,j)||function(e){if(Rv(e,67108864)){var t=ug(e,(function(e){return!(131068&e.flags)}));if(!(131072&t.flags))return t}return e}(r),s=1048576&c.flags?c.types:[c]);for(var l=function(r){if(function(e,t){return e.valueDeclaration&&t.valueDeclaration&&e.valueDeclaration.parent===t.valueDeclaration}(r,t.symbol)&&!Ip(t,r)){if(!oh(c,r.escapedName,o)){if(i){var n=ug(c,sh);if(!a)return{value:e.Debug.fail()};if(e.isJsxAttributes(a)||e.isJsxOpeningLikeElement(a)||e.isJsxOpeningLikeElement(a.parent)){r.valueDeclaration&&e.isJsxAttribute(r.valueDeclaration)&&e.getSourceFileOfNode(a)===e.getSourceFileOfNode(r.valueDeclaration.name)&&(a=r.valueDeclaration.name);var l=la(r),u=Ih(l,n);(p=u?la(u):void 0)?R(e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,l,da(n),p):R(e.Diagnostics.Property_0_does_not_exist_on_type_1,l,da(n))}else{var d=t.symbol&&e.firstOrUndefined(t.symbol.declarations),p=void 0;if(r.valueDeclaration&&e.findAncestor(r.valueDeclaration,(function(e){return e===d}))&&e.getSourceFileOfNode(d)===e.getSourceFileOfNode(a)){var f=r.valueDeclaration;e.Debug.assertNode(f,e.isObjectLiteralElementLike),a=f;var m=f.name;e.isIdentifier(m)&&(p=Fh(m,n))}void 0!==p?R(e.Diagnostics.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,la(r),da(n),p):R(e.Diagnostics.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,la(r),da(n))}}return{value:!0}}if(s&&!j(_o(r),function(t,r){var n=function(t,n){var i=3145728&(n=ac(n)).flags?lc(n,r):Js(n,r),a=i&&_o(i)||R_(r)&&kc(n,1)||kc(n,0)||Ne;return e.append(t,a)};return ou(e.reduceLeft(t,n,void 0)||e.emptyArray)}(s,r.escapedName),i))return i&&F(e.Diagnostics.Types_of_property_0_are_incompatible,la(r)),{value:!0}}},u=0,d=Hs(t);u<d.length;u++){var p=l(d[u]);if("object"==typeof p)return p.value}return!1}(c,l,i))return i&&M(o,c,r.aliasSymbol?r:l),0;var m=n!==on&&!(2&s)&&2752508&c.flags&&c!==yt&&2621440&l.flags&&jp(l)&&(Hs(c).length>0||nE(c));if(m&&!function(e,t,r){for(var n=0,i=Hs(e);n<i.length;n++){if(oh(t,i[n].escapedName,r))return!0}return!1}(c,l,p)){if(i){var g=da(t.aliasSymbol?t:c),h=da(r.aliasSymbol?r:l),y=hc(c,0),v=hc(c,1);y.length>0&&j(Bc(y[0]),l,!1)||v.length>0&&j(Bc(v[0]),l,!1)?R(e.Diagnostics.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,g,h):R(e.Diagnostics.Type_0_has_no_properties_in_common_with_type_1,g,h)}return 0}B(c,l);var b=0,x=I();if((3145728&c.flags||3145728&l.flags)&&(b=mg(c)*mg(l)>=4?H(c,l,i,8|s):K(c,l,i,8|s)),b||1048576&c.flags||!(469499904&c.flags||469499904&l.flags)||(b=H(c,l,i,s))&&P(x),!b&&2359296&c.flags){var S=function(t,r){for(var n,i=!1,a=0,o=t;a<o.length;a++)if(465829888&(u=o[a]).flags){for(var s=Ks(u);s&&21233664&s.flags;)s=Ks(s);s&&(n=e.append(n,s),r&&(n=e.append(n,u)))}else 469892092&u.flags&&(i=!0);if(n&&(r||i)){if(i)for(var c=0,l=t;c<l.length;c++){var u;469892092&(u=l[c]).flags&&(n=e.append(n,u))}return fu(n)}}(2097152&c.flags?c.types:[c],!!(1048576&l.flags));S&&(2097152&c.flags||1048576&l.flags)&&lg(S,(function(e){return e!==c}))&&(b=j(S,l,!1,void 0,s))&&P(x)}return b&&!E&&(2097152&l.flags&&(f||m)||od(l)&&!rf(l)&&!vf(l)&&2097152&c.flags&&3670016&ac(c).flags&&!e.some(c.types,(function(t){return!!(2097152&e.getObjectFlags(t))})))&&(E=!0,b&=H(c,l,i,4),E=!1),D(c,l,b,p),b;function D(n,s,c,l){if(!c&&i){n=t.aliasSymbol?t:n,s=r.aliasSymbol?r:s;var d=k>0;if(d&&k--,524288&n.flags&&524288&s.flags){var p=u;L(n,s,i),u!==p&&(d=!!u)}if(524288&n.flags&&131068&s.flags)!function(t,r){var n=ma(t.symbol)?da(t,t.symbol.valueDeclaration):da(t),i=ma(r.symbol)?da(r,r.symbol.valueDeclaration):da(r);(St===t&&Re===r||Dt===t&&Me===r||wt===t&&qe===r||Pl(!1)===t&&Je===r)&&R(e.Diagnostics._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,i,n)}(n,s);else if(n.symbol&&524288&n.flags&&yt===n)R(e.Diagnostics.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(l&&2097152&s.flags){var f=s.types,m=W_(N.IntrinsicAttributes,a),g=W_(N.IntrinsicClassAttributes,a);if(m!==we&&g!==we&&(e.contains(f,m)||e.contains(f,g)))return c}else u=mc(u,r);if(!o&&d)return _=[n,s],c;M(o,n,s)}}}function B(t,r){if(e.tracing&&3145728&t.flags&&3145728&r.flags){var n=t,i=r;if(n.objectFlags&i.objectFlags&262144)return;var o=n.types.length,s=i.types.length;o*s>1e6&&e.tracing.instant("checkTypes","traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:t.id,sourceSize:o,targetId:r.id,targetSize:s,pos:null==a?void 0:a.pos,end:null==a?void 0:a.end})}}function z(e,t){for(var r=-1,n=0,i=e.types;n<i.length;n++){var a=U(i[n],t,!1);if(!a)return 0;r&=a}return r}function U(e,t,r){var n=t.types;if(1048576&t.flags&&eu(n,e))return-1;for(var i=0,a=n;i<a.length;i++){var o=j(e,a[i],!1);if(o)return o}r&&j(e,Mp(e,t,j)||n[n.length-1],!0);return 0}function q(e,t,r,n){var i=e.types;if(1048576&e.flags&&eu(i,t))return-1;for(var a=i.length,o=0;o<a;o++){var s=j(i[o],t,r&&o===a-1,void 0,n);if(s)return s}return 0}function V(e,t,r,n){for(var i=-1,a=e.types,o=function(e,t){return 1048576&e.flags&&1048576&t.flags&&!(32768&e.types[0].flags)&&32768&t.types[0].flags?gg(t,-32769):t}(e,t),s=0;s<a.length;s++){var c=a[s];if(1048576&o.flags&&a.length>=o.types.length&&a.length%o.types.length==0){var l=j(c,o.types[s%o.types.length],!1,void 0,n);if(l){i&=l;continue}}var u=j(c,t,r,void 0,n);if(!u)return 0;i&=u}return i}function H(t,r,i,a){if(b)return 0;var o=Kp(t,r,a|(E?16:0),n),s=n.get(o);if(void 0!==s&&(!(i&&2&s)||4&s)){if(or){var c=24&s;8&c&&Wd(t,Nd(G)),16&c&&Wd(t,Nd($))}return 1&s?-1:0}if(f){for(var l=0;l<h;l++)if(o===f[l])return 3;if(100===y)return b=!0,0}else f=[],m=[],g=[];var u=h;f[h]=o,h++,m[y]=t,g[y]=r,y++;var d,p=v;1&v||!Yp(t,m,y)||(v|=1),2&v||!Yp(r,g,y)||(v|=2);var _=0;or&&(d=or,or=function(e){return _|=e?16:8,d(e)}),3===v&&(null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","recursiveTypeRelatedTo_DepthLimit",{sourceId:t.id,sourceIdStack:m.map((function(e){return e.id})),targetId:r.id,targetIdStack:g.map((function(e){return e.id})),depth:y}));var k=3!==v?K(t,r,i,a):3;if(or&&(or=d),v=p,y--,k){if(-1===k||0===y){if(-1===k||3===k)for(l=u;l<h;l++)n.set(f[l],1|_);h=u}}else n.set(o,2|(i?4:0)|_),h=u;return k}function K(t,r,i,a){null===e.tracing||void 0===e.tracing||e.tracing.push("checkTypes","structuredTypeRelatedTo",{sourceId:t.id,targetId:r.id});var o=function(t,r,i,a){if(4&a)return ee(t,r,i,void 0,0);if(8&a)return 1048576&t.flags?n===on?q(t,r,i&&!(131068&t.flags),-9&a):V(t,r,i&&!(131068&t.flags),-9&a):1048576&r.flags?U(Bf(t),r,i&&!(131068&t.flags)&&!(131068&r.flags)):2097152&r.flags?function(e,t,r,n){for(var i=-1,a=0,o=t.types;a<o.length;a++){var s=j(e,o[a],r,void 0,n);if(!s)return 0;i&=s}return i}(Bf(t),r,i,2):q(t,r,!1,1);var o,s,c=t.flags&r.flags;if(n===sn&&!(524288&c)){if(4194304&c)return j(t.type,r.type,!1);var l=0;return 8388608&c&&(l=j(t.objectType,r.objectType,!1))&&(l&=j(t.indexType,r.indexType,!1))||16777216&c&&t.root.isDistributive===r.root.isDistributive&&(l=j(t.checkType,r.checkType,!1))&&(l&=j(t.extendsType,r.extendsType,!1))&&(l&=j(Xu(t),Xu(r),!1))&&(l&=j(Qu(t),Qu(r),!1))?l:33554432&c?j(t.substitute,r.substitute,!1):0}var d=!1,p=I();if(17301504&t.flags&&t.aliasSymbol&&t.aliasTypeArguments&&t.aliasSymbol===r.aliasSymbol&&!t.aliasTypeArgumentsContainsMarker&&!r.aliasTypeArgumentsContainsMarker){if((J=zp(t.aliasSymbol))===e.emptyArray)return 1;if(void 0!==(H=re(t.aliasTypeArguments,r.aliasTypeArguments,J,a)))return H}if(kf(t)&&!t.target.readonly&&(o=j(ll(t)[0],r))||kf(r)&&(r.target.readonly||af(Qs(t)||t))&&(o=j(t,ll(r)[0])))return o;if(262144&r.flags){if(32&e.getObjectFlags(t)&&!t.declaration.nameType&&j(Eu(r),Ps(t))&&!(4&Ls(t))){var f=Fs(t),m=qu(r,Ns(t));if(o=j(f,m,i))return o}}else if(4194304&r.flags){var g=r.type;if(4194304&t.flags&&(o=j(g,t.type,!1)))return o;if(vf(g)){if(o=j(t,Yl(g),i))return o}else if((N=Gs(g))&&-1===j(t,Eu(N,r.stringsOnly),i))return-1}else if(8388608&r.flags){if(n===an||n===on){var _=r.objectType,h=r.indexType,y=Qs(_)||_,v=Qs(h)||h;if(!Ru(y)&&!Mu(v)){var b=2|(y!==_?1:0);if((N=Vu(y,v,r.noUncheckedIndexedAccessCandidate,void 0,b))&&(o=j(t,N,i)))return o}}}else if(zs(r)&&!r.declaration.nameType){var k=Fs(r),x=Ls(r);if(!(8&x)){if(8388608&k.flags&&k.objectType===t&&k.indexType===Ns(r))return-1;if(!zs(t)){var E=Ps(r),S=Eu(t,void 0,!0),D=4&x,w=D?bs(E,S):void 0;if(D?!(131072&w.flags):j(E,S)){f=Fs(r);var T=Ns(r),C=gg(f,-98305);if(8388608&C.flags&&C.indexType===T){if(o=j(t,C.objectType,i))return o}else{m=qu(t,w?fu([w,T]):T);if(o=j(m,f,i))return o}}s=u,P(p)}}}else if(134217728&r.flags&&128&t.flags&&Ou(r)){var A=hm(t,r);if(A&&e.every(A,(function(e,t){return _m(e,r.types[t])})))return-1}if(8650752&t.flags){if(8388608&t.flags&&8388608&r.flags){if((o=j(t.objectType,r.objectType,i))&&(o&=j(t.indexType,r.indexType,i)),o)return P(p),o}else if(!(N=Ks(t))||262144&t.flags&&1&N.flags){if(o=j(nt,gg(r,-67108865)))return P(p),o}else{if(o=j(N,r,!1,void 0,a))return P(p),o;if(o=j(ls(N,t),r,i,void 0,a))return P(p),o}}else if(4194304&t.flags){if(o=j(Qe,r,i))return P(p),o}else if(134217728&t.flags){if(134217728&r.flags&&t.texts.length===r.texts.length&&t.types.length===r.types.length&&e.every(t.texts,(function(e,t){return e===r.texts[t]}))&&e.every(Wd(t,Nd($)).types,(function(e,t){return!!(5&r.types[t].flags)||!!j(e,r.types[t],!1)})))return-1;if((N=Qs(t))&&N!==t&&(o=j(N,r,i)))return P(p),o}else if(268435456&t.flags){var N;if(268435456&r.flags&&t.symbol===r.symbol){if(o=j(t.type,r.type,i))return P(p),o}else if((N=Qs(t))&&(o=j(N,r,i)))return P(p),o}else if(16777216&t.flags){if(16777216&r.flags){var F=t.root.inferTypeParameters,O=t.extendsType,R=void 0;if(F){var M=Qf(F,void 0,0,j);ym(M.inferences,r.extendsType,O,768),O=Wd(O,M.mapper),R=M.mapper}if(np(O,r.extendsType)&&(j(t.checkType,r.checkType)||j(r.checkType,t.checkType))&&((o=j(Wd(Xu(t),R),Xu(r),i))&&(o&=j(Qu(t),Qu(r),i)),o))return P(p),o}else{var L=Ys(t);if(L&&(o=j(L,r,i)))return P(p),o}var B=$s(t);if(B&&(o=j(B,r,i)))return P(p),o}else{if(n!==rn&&n!==nn&&(Z=r,32&e.getObjectFlags(Z)&&4&Ls(Z))&&wp(t))return-1;if(zs(r))return zs(t)&&(o=function(e,t,r){var i=n===on||(n===sn?Ls(e)===Ls(t):Bs(e)<=Bs(t));if(i){var a;if(a=j(Ps(t),Wd(Ps(e),Nd(Bs(e)<0?G:$)),r)){var o=Td([Ns(e)],[Ns(t)]);if(Wd(Is(e),o)===Wd(Is(t),o))return a&j(Wd(Fs(e),o),Fs(t),r)}}return 0}(t,r,i))?(P(p),o):0;var z=!!(131068&t.flags);if(n!==sn)t=ac(t);else if(zs(t))return 0;if(4&e.getObjectFlags(t)&&4&e.getObjectFlags(r)&&t.target===r.target&&!(8192&e.getObjectFlags(t)||8192&e.getObjectFlags(r))){var J,H;if((J=qp(t.target))===e.emptyArray)return 1;if(void 0!==(H=re(ll(t),ll(r),J,a)))return H}else{if(nf(r)?rf(t)||vf(t):rf(r)&&vf(t)&&!t.target.readonly)return n!==sn?j(kc(t,1)||Ee,kc(r,1)||Ee,i):0;if((n===rn||n===nn)&&wp(r)&&32768&e.getObjectFlags(r)&&!wp(t))return 0}if(2621440&t.flags&&524288&r.flags){var K=i&&u===p.errorInfo&&!z;if((o=ee(t,r,K,void 0,a))&&(o&=te(t,r,0,K))&&(o&=te(t,r,1,K))&&(o&=oe(t,r,0,z,K,a))&&(o&=oe(t,r,1,z,K,a)),d&&o)u=s||u||p.errorInfo;else if(o)return o}if(2621440&t.flags&&1048576&r.flags){var Y=gg(r,36175872);if(1048576&Y.flags){var X=function(t,r){var i=Hs(t),a=jm(i,r);if(!a)return 0;for(var o=1,s=0,c=a;s<c.length;s++){if((o*=dg(_o(p=c[s])))>25)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","typeRelatedToDiscriminatedType_DepthLimit",{sourceId:t.id,targetId:r.id,numCombinations:o}),0}for(var l=new Array(a.length),u=new e.Set,d=0;d<a.length;d++){var p,f=_o(p=a[d]);l[d]=1048576&f.flags?f.types:[f],u.add(p.escapedName)}for(var m=e.cartesianProduct(l),g=[],_=function(i){var o=!1;e:for(var s=0,c=r.types;s<c.length;s++){for(var l=c[s],u=function(e){var o=a[e],s=gc(l,o.escapedName);return s?o===s?"continue":Q(t,r,o,s,(function(t){return i[e]}),!1,0,W||n===on)?void 0:"continue-outer":"continue-outer"},d=0;d<a.length;d++){if("continue-outer"===u(d))continue e}e.pushIfUnique(g,l,e.equateValues),o=!0}if(!o)return{value:0}},h=0,y=m;h<y.length;h++){var v=_(y[h]);if("object"==typeof v)return v.value}for(var b=-1,k=0,x=g;k<x.length;k++){var E=x[k];if((b&=ee(t,E,!1,u,0))&&(b&=te(t,E,0,!1))&&(b&=te(t,E,1,!1))&&(!(b&=oe(t,E,0,!1,!1,0))||vf(t)&&vf(E)||(b&=oe(t,E,1,!1,!1,0))),!b)return b}return b}(t,Y);if(X)return X}}}var Z;return 0;function re(t,r,a,c){if(o=function(t,r,i,a,o){if(void 0===t&&(t=e.emptyArray),void 0===r&&(r=e.emptyArray),void 0===i&&(i=e.emptyArray),t.length!==r.length&&n===sn)return 0;for(var s=t.length<=r.length?t.length:r.length,c=-1,l=0;l<s;l++){var u=l<i.length?i[l]:1,d=7&u;if(4!==d){var p=t[l],f=r[l],m=-1;if(8&u?m=n===sn?j(p,f,!1):ip(p,f):1===d?m=j(p,f,a,void 0,o):2===d?m=j(f,p,a,void 0,o):3===d?(m=j(f,p,!1))||(m=j(p,f,a,void 0,o)):(m=j(p,f,a,void 0,o))&&(m&=j(f,p,a,void 0,o)),!m)return 0;c&=m}}return c}(t,r,a,i,c))return o;if(e.some(a,(function(e){return!!(24&e)})))return s=void 0,void P(p);var l=r&&function(e,t){for(var r=0;r<t.length;r++)if(1==(7&t[r])&&16384&e[r].flags)return!0;return!1}(r,a);if(d=!l,a!==e.emptyArray&&!l){if(d&&(!i||!e.some(a,(function(e){return!(7&e)}))))return 0;s=u,P(p)}}}(t,r,i,a);return null===e.tracing||void 0===e.tracing||e.tracing.pop(),o}function G(e){return!or||e!==pt&&e!==ft&&e!==sr||or(!1),e}function $(e){return!or||e!==pt&&e!==ft&&e!==sr||or(!0),e}function Y(e,t){if(!t||0===e.length)return e;for(var r,n=0;n<e.length;n++)t.has(e[n].escapedName)?r||(r=e.slice(0,n)):r&&r.push(e[n]);return r||e}function Q(t,r,n,i,a,o,s,c){var l=e.getDeclarationModifierFlagsFromSymbol(n),u=e.getDeclarationModifierFlagsFromSymbol(i);if(8&l||8&u){if(n.valueDeclaration!==i.valueDeclaration)return o&&(8&l&&8&u?R(e.Diagnostics.Types_have_separate_declarations_of_a_private_property_0,la(i)):R(e.Diagnostics.Property_0_is_private_in_type_1_but_not_in_type_2,la(i),da(8&l?t:r),da(8&l?r:t))),0}else if(16&u){if(!function(t,r){return!Wp(r,(function(r){return!!(16&e.getDeclarationModifierFlagsFromSymbol(r))&&(n=t,i=Gp(r),!Wp(n,(function(e){var t=Gp(e);return!!t&&vo(t,i)})));var n,i}))}(n,i))return o&&R(e.Diagnostics.Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2,la(i),da(Gp(n)||t),da(Gp(i)||r)),0}else if(16&l)return o&&R(e.Diagnostics.Property_0_is_protected_in_type_1_but_public_in_type_2,la(i),da(t),da(r)),0;var d=function(t,r,n,i,a){var o=W&&!!(48&e.getCheckFlags(r)),s=n(t);if(65536&e.getCheckFlags(r)&&!Tn(r).type){var c=Tn(r);e.Debug.assertIsDefined(c.deferralParent),e.Debug.assertIsDefined(c.deferralConstituents);for(var l=!!(1048576&c.deferralParent.flags),u=l?0:-1,d=0,p=c.deferralConstituents;d<p.length;d++){var f=j(s,p[d],!1,void 0,l?0:2);if(l){if(f)return f}else{if(!f)return j(s,za(_o(r),o),i);u&=f}}return l&&!u&&o&&(u=j(s,Ne)),l&&!u&&i?j(s,za(_o(r),o),i):u}return j(s,za(_o(r),o),i,void 0,a)}(n,i,a,o,s);return d?c||!(16777216&n.flags)||16777216&i.flags?d:(o&&R(e.Diagnostics.Property_0_is_optional_in_type_1_but_required_in_type_2,la(i),da(t),da(r)),0):(o&&F(e.Diagnostics.Types_of_property_0_are_incompatible,la(i)),0)}function Z(t,r,n,a){var s=!1;if(n.valueDeclaration&&e.isNamedDeclaration(n.valueDeclaration)&&e.isPrivateIdentifier(n.valueDeclaration.name)&&t.symbol&&32&t.symbol.flags){var c=n.valueDeclaration.name.escapedText,d=e.getSymbolNameForPrivateIdentifier(t.symbol,c);if(d&&gc(t,d)){var f=e.factory.getDeclarationName(t.symbol.valueDeclaration),m=e.factory.getDeclarationName(r.symbol.valueDeclaration);return void R(e.Diagnostics.Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2,Ln(c),Ln(""===f.escapedText?l:f),Ln(""===m.escapedText?l:m))}}var g,_=e.arrayFrom(dm(t,r,a,!1));if((!o||o.code!==e.Diagnostics.Class_0_incorrectly_implements_interface_1.code&&o.code!==e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code)&&(s=!0),1===_.length){var h=la(n);R.apply(void 0,i([e.Diagnostics.Property_0_is_missing_in_type_1_but_required_in_type_2,h],pa(t,r))),e.length(n.declarations)&&(g=e.createDiagnosticForNode(n.declarations[0],e.Diagnostics._0_is_declared_here,h),e.Debug.assert(!!u),p?p.push(g):p=[g]),s&&u&&k++}else L(t,r,!1)&&(_.length>5?R(e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,da(t),da(r),e.map(_.slice(0,4),(function(e){return la(e)})).join(", "),_.length-4):R(e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,da(t),da(r),e.map(_,(function(e){return la(e)})).join(", ")),s&&u&&k++)}function ee(t,r,i,a,o){if(n===sn)return function(e,t,r){if(!(524288&e.flags&&524288&t.flags))return 0;var n=Y(qs(e),r),i=Y(qs(t),r);if(n.length!==i.length)return 0;for(var a=-1,o=0,s=n;o<s.length;o++){var c=s[o],l=Js(t,c.escapedName);if(!l)return 0;var u=Zp(c,l,j);if(!u)return 0;a&=u}return a}(t,r,a);var s=-1;if(vf(r)){if(rf(t)||vf(t)){if(!r.target.readonly&&(nf(t)||vf(t)&&t.target.readonly))return 0;var c=ul(t),l=ul(r),u=vf(t)?4&t.target.combinedFlags:4,d=4&r.target.combinedFlags,p=vf(t)?t.target.minLength:0,f=r.target.minLength;if(!u&&c<f)return i&&R(e.Diagnostics.Source_has_0_element_s_but_target_requires_1,c,f),0;if(!d&&l<p)return i&&R(e.Diagnostics.Source_has_0_element_s_but_target_allows_only_1,p,l),0;if(!d&&u)return i&&(p<f?R(e.Diagnostics.Target_requires_0_element_s_but_source_may_have_fewer,f):R(e.Diagnostics.Target_allows_only_0_element_s_but_source_may_have_more,l)),0;for(var m=ll(t),g=ll(r),_=Math.min(vf(t)?Xl(t.target,11):0,Xl(r.target,11)),h=Math.min(vf(t)?Ql(t.target,11):0,d?Ql(r.target,11):0),y=!!a,v=0;v<l;v++){var b=v<l-h?v:v+c-l,k=vf(t)&&(v<_||v>=l-h)?t.target.elementFlags[b]:4,x=r.target.elementFlags[v];if(8&x&&!(8&k))return i&&R(e.Diagnostics.Source_provides_no_match_for_variadic_element_at_position_0_in_target,v),0;if(8&k&&!(12&x))return i&&R(e.Diagnostics.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,b,v),0;if(1&x&&!(1&k))return i&&R(e.Diagnostics.Source_provides_no_match_for_required_element_at_position_0_in_target,v),0;if(!(y&&((12&k||12&x)&&(y=!1),y&&(null==a?void 0:a.has(""+v))))){var E=vf(t)?v<_||v>=l-h?m[b]:Ef(t,_,h)||He:m[0],S=g[v];if(!(B=j(E,8&k&&4&x?jl(S):S,i,void 0,o)))return i&&(v<_||v>=l-h||c-_-h==1?F(e.Diagnostics.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,b,v):F(e.Diagnostics.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,_,c-h-1,v)),0;s&=B}}return s}if(12&r.target.combinedFlags)return 0}var D=!(n!==rn&&n!==nn||km(t)||cf(t)||vf(t)),w=pm(t,r,D,!1);if(w)return i&&Z(t,r,w,D),0;if(km(r))for(var T=0,C=Y(Hs(t),a);T<C.length;T++){if(!Js(r,(O=C[T]).escapedName))if((E=_o(O))!==Ne&&E!==Pe&&E!==Ie)return i&&R(e.Diagnostics.Property_0_does_not_exist_on_type_1,la(O),da(r)),0}for(var A=Hs(r),N=vf(t)&&vf(r),P=0,I=Y(A,a);P<I.length;P++){var O,M=I[P],L=M.escapedName;if(!(4194304&M.flags)&&(!N||R_(L)||"length"===L))if((O=gc(t,L))&&O!==M){var B;if(!(B=Q(t,r,O,M,_o,i,o,n===on)))return 0;s&=B}}return s}function te(t,r,i,a){var o,s;if(n===sn)return function(e,t,r){var n=hc(e,r),i=hc(t,r);if(n.length!==i.length)return 0;for(var a=-1,o=0;o<n.length;o++){var s=ef(n[o],i[o],!1,!1,!1,j);if(!s)return 0;a&=s}return a}(t,r,i);if(r===ct||t===ct)return-1;var c=t.symbol&&Fy(t.symbol.valueDeclaration),l=r.symbol&&Fy(r.symbol.valueDeclaration),u=hc(t,c&&1===i?0:i),d=hc(r,l&&1===i?0:i);if(1===i&&u.length&&d.length){var p=!!(4&u[0].flags),f=!!(4&d[0].flags);if(p&&!f)return a&&R(e.Diagnostics.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!function(t,r,n){if(!t.declaration||!r.declaration)return!0;var i=e.getSelectedEffectiveModifierFlags(t.declaration,24),a=e.getSelectedEffectiveModifierFlags(r.declaration,24);if(8===a)return!0;if(16===a&&8!==i)return!0;if(16!==a&&!i)return!0;n&&R(e.Diagnostics.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,ya(i),ya(a));return!1}(u[0],d[0],a))return 0}var m=-1,g=I(),_=1===i?ne:re,h=e.getObjectFlags(t),y=e.getObjectFlags(r);if(64&h&&64&y&&t.symbol===r.symbol)for(var v=0;v<d.length;v++){if(!(N=ie(u[v],d[v],!0,a,_(u[v],d[v]))))return 0;m&=N}else if(1===u.length&&1===d.length){var b=n===on||!!J.noStrictGenericChecks,k=e.first(u),x=e.first(d);if(!(m=ie(k,x,b,a,_(k,x)))&&a&&1===i&&h&y&&(167===(null===(o=x.declaration)||void 0===o?void 0:o.kind)||167===(null===(s=k.declaration)||void 0===s?void 0:s.kind))){var E=function(e){return ua(e,void 0,262144,i)};return R(e.Diagnostics.Type_0_is_not_assignable_to_type_1,E(k),E(x)),R(e.Diagnostics.Types_of_construct_signatures_are_incompatible),m}}else e:for(var S=0,D=d;S<D.length;S++){for(var w=D[S],T=a,C=0,A=u;C<A.length;C++){var N,F=A[C];if(N=ie(F,w,!0,T,_(F,w))){m&=N,P(g);continue e}T=!1}return T&&R(e.Diagnostics.Type_0_provides_no_match_for_the_signature_1,da(t),ua(w,void 0,void 0,i)),0}return m}function re(t,r){return 0===t.parameters.length&&0===r.parameters.length?function(t,r){return F(e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,da(t),da(r))}:function(t,r){return F(e.Diagnostics.Call_signature_return_types_0_and_1_are_incompatible,da(t),da(r))}}function ne(t,r){return 0===t.parameters.length&&0===r.parameters.length?function(t,r){return F(e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,da(t),da(r))}:function(t,r){return F(e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible,da(t),da(r))}}function ie(e,t,r,i,a){return Ep(r?Kc(e):e,r?Kc(t):t,n===nn?8:0,i,R,a,j,Nd($))}function ae(t,r,n){var i=j(t,r,n);return!i&&n&&R(e.Diagnostics.Index_signatures_are_incompatible),i}function oe(t,r,i,a,o,s){if(n===sn)return function(e,t,r){var n=bc(t,r),i=bc(e,r);if(!i&&!n)return-1;if(i&&n&&i.isReadonly===n.isReadonly)return j(i.type,n.type);return 0}(t,r,i);var c=kc(r,i);if(!c||1&c.flags&&!a)return-1;if(zs(t))return kc(r,0)?j(Fs(t),c,o):0;var l=kc(t,i)||1===i&&kc(t,0);if(l)return ae(l,c,o);if(!(1&s)&&Lf(t)){var u=function(t,r,n,i){for(var a=-1,o=0,s=2097152&t.flags?Vs(t):qs(t);o<s.length;o++){var c=s[o];if(!Ip(t,c)){var l=Tn(c).nameType;if(!(l&&8192&l.flags)&&(0===n||R_(c.escapedName))){var u=_o(c),d=j(32768&u.flags||!(0===n&&16777216&c.flags)?u:Hm(u,524288),r,i);if(!d)return i&&R(e.Diagnostics.Property_0_is_incompatible_with_index_signature,la(c)),0;a&=d}}}return a}(t,c,i,o);if(u&&0===i){var d=kc(t,1);d&&(u&=ae(d,c,o))}return u}return o&&R(e.Diagnostics.Index_signature_is_missing_in_type_0,da(t)),0}}function Rp(t){if(16&t.flags)return!1;if(3145728&t.flags)return!!e.forEach(t.types,Rp);if(465829888&t.flags){var r=Ks(t);if(r&&r!==t)return Rp(r)}return pf(t)||!!(134217728&t.flags)}function Mp(t,r,n){return void 0===n&&(n=ap),hS(t,r,n,!0)||function(t,r){var n=e.getObjectFlags(t);if(20&n&&1048576&r.flags)return e.find(r.types,(function(r){if(524288&r.flags){var i=n&e.getObjectFlags(r);if(4&i)return t.target===r.target;if(16&i)return!!t.aliasSymbol&&t.aliasSymbol===r.aliasSymbol}return!1}))}(t,r)||function(t,r){if(128&e.getObjectFlags(t)&&cg(r,sf))return e.find(r.types,(function(e){return!sf(e)}))}(t,r)||function(t,r){var n=0,i=hc(t,n).length>0||hc(t,n=1).length>0;if(i)return e.find(r.types,(function(e){return hc(e,n).length>0}))}(t,r)||function(t,r){for(var n,i=0,a=0,o=r.types;a<o.length;a++){var s=o[a],c=fu([Eu(t),Eu(s)]);if(4194304&c.flags)n=s,i=1/0;else if(1048576&c.flags){var l=e.length(e.filter(c.types,pf));l>=i&&(n=s,i=l)}else pf(c)&&1>=i&&(n=s,i=1)}return n}(t,r)}function Lp(t,r,n,i,a){for(var o=t.types.map((function(e){})),s=0,c=r;s<c.length;s++){var l=c[s],u=l[0],d=l[1],p=cc(t,d);if(!(a&&p&&16&e.getCheckFlags(p)))for(var f=0,m=0,g=t.types;m<g.length;m++){var _=Na(g[m],d);_&&n(u(),_)?o[f]=void 0===o[f]||o[f]:o[f]=!1,f++}}var h=o.indexOf(!0);if(-1===h)return i;for(var y=o.indexOf(!0,h+1);-1!==y;){if(!np(t.types[h],t.types[y]))return i;y=o.indexOf(!0,y+1)}return t.types[h]}function jp(t){if(524288&t.flags){var r=Us(t);return 0===r.callSignatures.length&&0===r.constructSignatures.length&&!r.stringIndexInfo&&!r.numberIndexInfo&&r.properties.length>0&&e.every(r.properties,(function(e){return!!(16777216&e.flags)}))}return!!(2097152&t.flags)&&e.every(t.types,jp)}function Bp(t,r,n){var i=ol(t,e.map(t.typeParameters,(function(e){return e===r?n:e})));return i.objectFlags|=8192,i}function zp(e){var t=Tn(e);return Up(t.typeParameters,t,(function(r,n,i){var a=pl(e,Dd(t.typeParameters,Ad(n,i)));return a.aliasTypeArgumentsContainsMarker=!0,a}))}function Up(t,r,n){var i,a,o;void 0===t&&(t=e.emptyArray);var s=r.variances;if(!s){null===e.tracing||void 0===e.tracing||e.tracing.push("checkTypes","getVariancesWorker",{arity:t.length,id:null!==(o=null!==(i=r.id)&&void 0!==i?i:null===(a=r.declaredType)||void 0===a?void 0:a.id)&&void 0!==o?o:-1}),r.variances=e.emptyArray,s=[];for(var c=function(e){var t=!1,i=!1,a=or;or=function(e){return e?i=!0:t=!0};var o=n(r,e,pt),c=n(r,e,ft),l=(cp(c,o)?1:0)|(cp(o,c)?2:0);3===l&&cp(n(r,e,sr),o)&&(l=4),or=a,(t||i)&&(t&&(l|=8),i&&(l|=16)),s.push(l)},l=0,u=t;l<u.length;l++){c(u[l])}r.variances=s,null===e.tracing||void 0===e.tracing||e.tracing.pop()}return s}function qp(e){return e===xt||e===Et||8&e.objectFlags?C:Up(e.typeParameters,e,Bp)}function Jp(e){return 262144&e.flags&&!Ws(e)}function Vp(t){return function(t){return!!(4&e.getObjectFlags(t))&&!t.node}(t)&&e.some(ll(t),(function(e){return Jp(e)||Vp(e)}))}function Hp(e,t,r){void 0===r&&(r=0);for(var n=""+e.target.id,i=0,a=ll(e);i<a.length;i++){var o=a[i];if(Jp(o)){var s=t.indexOf(o);s<0&&(s=t.length,t.push(o)),n+="="+s}else r<4&&Vp(o)?n+="<"+Hp(o,t,r+1)+">":n+="-"+o.id}return n}function Kp(e,t,r,n){if(n===sn&&e.id>t.id){var i=e;e=t,t=i}var a=r?":"+r:"";if(Vp(e)&&Vp(t)){var o=[];return Hp(e,o)+","+Hp(t,o)+a}return e.id+","+t.id+a}function Wp(t,r){if(!(6&e.getCheckFlags(t)))return r(t);for(var n=0,i=t.containingType.types;n<i.length;n++){var a=gc(i[n],t.escapedName),o=a&&Wp(a,r);if(o)return o}}function Gp(e){return e.parent&&32&e.parent.flags?Jo(Ni(e)):void 0}function $p(e){var t=Gp(e),r=t&&Po(t)[0];return r&&Na(r,e.escapedName)}function Yp(e,t,r){if(r>=5){var n=Xp(e);if(n)for(var i=0,a=0;a<r;a++)if(Xp(t[a])===n&&++i>=5)return!0}return!1}function Xp(t){if(524288&t.flags&&!xm(t)){if(e.getObjectFlags(t)&&t.node)return t.node;if(t.symbol&&!(16&e.getObjectFlags(t)&&32&t.symbol.flags))return t.symbol;if(vf(t))return t.target}if(8388608&t.flags){do{t=t.objectType}while(8388608&t.flags);return t}if(16777216&t.flags)return t.root}function Qp(e,t){return 0!==Zp(e,t,ip)}function Zp(t,r,n){if(t===r)return-1;var i=24&e.getDeclarationModifierFlagsFromSymbol(t);if(i!==(24&e.getDeclarationModifierFlagsFromSymbol(r)))return 0;if(i){if(gx(t)!==gx(r))return 0}else if((16777216&t.flags)!=(16777216&r.flags))return 0;return Nv(t)!==Nv(r)?0:n(_o(t),_o(r))}function ef(t,r,n,i,a,o){if(t===r)return-1;if(!function(e,t,r){var n=ov(e),i=ov(t),a=sv(e),o=sv(t),s=cv(e),c=cv(t);return n===i&&a===o&&s===c||!!(r&&a<=o)}(t,r,n))return 0;if(e.length(t.typeParameters)!==e.length(r.typeParameters))return 0;if(r.typeParameters){for(var s=Td(t.typeParameters,r.typeParameters),c=0;c<r.typeParameters.length;c++){if(!((g=t.typeParameters[c])===(f=r.typeParameters[c])||o(Wd(tl(g),s)||Ae,tl(f)||Ae)&&o(Wd(nc(g),s)||Ae,nc(f)||Ae)))return 0}t=jd(t,s,!0)}var l=-1;if(!i){var u=Lc(t);if(u){var d=Lc(r);if(d){if(!(m=o(u,d)))return 0;l&=m}}}var p=ov(r);for(c=0;c<p;c++){var f,m,g=nv(t,c);if(!(m=o(f=nv(r,c),g)))return 0;l&=m}if(!a){var _=jc(t),h=jc(r);l&=_||h?function(e,t,r){return e&&t&&su(e,t)?e.type===t.type?-1:e.type&&t.type?r(e.type,t.type):0:0}(_,h,o):o(Bc(t),Bc(r))}return l}function tf(t){return function(e){for(var t,r=0,n=e;r<n.length;r++){var i=n[r],a=mf(i);if(t||(t=a),a===i||a!==t)return!1}return!0}(t)?ou(t):e.reduceLeft(t,(function(e,t){return sp(e,t)?t:e}))}function rf(t){return!!(4&e.getObjectFlags(t))&&(t.target===xt||t.target===Et)}function nf(t){return!!(4&e.getObjectFlags(t))&&t.target===Et}function af(e){return rf(e)&&!nf(e)||vf(e)&&!e.target.readonly}function of(e){return rf(e)?ll(e)[0]:void 0}function sf(e){return rf(e)||!(98304&e.flags)&&cp(e,Pt)}function cf(e){var t=rf(e)?ll(e)[0]:void 0;return t===Pe||t===Ge}function lf(e){return vf(e)||!!gc(e,"0")}function uf(e){return sf(e)||lf(e)}function df(e){return!(240512&e.flags)}function pf(e){return!!(109440&e.flags)}function ff(t){return!!(16&t.flags)||(1048576&t.flags?!!(1024&t.flags)||e.every(t.types,pf):pf(t))}function mf(e){return 1024&e.flags?Bo(e):128&e.flags?Re:256&e.flags?Me:2048&e.flags?Le:512&e.flags?qe:1048576&e.flags?pg(e,mf):e}function gf(e){return 1024&e.flags&&_d(e)?Bo(e):128&e.flags&&_d(e)?Re:256&e.flags&&_d(e)?Me:2048&e.flags&&_d(e)?Le:512&e.flags&&_d(e)?qe:1048576&e.flags?pg(e,gf):e}function _f(e){return 8192&e.flags?Je:1048576&e.flags?pg(e,_f):e}function hf(e,t){return Qv(e,t)||(e=_f(gf(e))),e}function yf(e,t,r,n){e&&pf(e)&&(e=hf(e,t?tx(r,t,n):void 0));return e}function vf(t){return!!(4&e.getObjectFlags(t)&&8&t.target.objectFlags)}function bf(e){return vf(e)&&!!(8&e.target.combinedFlags)}function kf(e){return bf(e)&&1===e.target.elementFlags.length}function xf(e){return Ef(e,e.target.fixedLength)}function Ef(e,t,r,n){void 0===r&&(r=0),void 0===n&&(n=!1);var i=ul(e)-r;if(t<i){for(var a=ll(e),o=[],s=t;s<i;s++){var c=a[s];o.push(8&e.target.elementFlags[s]?qu(c,Me):c)}return n?fu(o):ou(o)}}function Sf(e){return"0"===e.value.base10Value}function Df(e){for(var t=0,r=0,n=e;r<n.length;r++){t|=wf(n[r])}return t}function wf(e){return 1048576&e.flags?Df(e.types):128&e.flags?""===e.value?128:0:256&e.flags?0===e.value?256:0:2048&e.flags?Sf(e)?2048:0:512&e.flags?e===je||e===Be?512:0:117724&e.flags}function Tf(e){return 117632&wf(e)?ug(e,(function(e){return!(117632&wf(e))})):e}function Cf(e){return 4&e.flags?Ar:8&e.flags?Nr:64&e.flags?Pr:e===Be||e===je||114691&e.flags||128&e.flags&&""===e.value||256&e.flags&&0===e.value||2048&e.flags&&Sf(e)?e:He}function Af(e,t){var r=t&~e.flags&98304;return 0===r?e:ou(32768===r?[e,Ne]:65536===r?[e,Fe]:[e,Ne,Fe])}function Nf(t){return e.Debug.assert(W),32768&t.flags?t:ou([t,Ne])}function Pf(e){return W?function(e){return It||(It=Cl("NonNullable",524288,void 0)||ke),It!==ke?pl(It,[e]):Hm(e,2097152)}(e):e}function If(e){return W?ou([e,Ie]):e}function Ff(e){return e!==Ie}function Of(e){return W?ug(e,Ff):e}function Rf(t,r,n){return n?e.isOutermostOptionalChain(r)?Nf(t):If(t):t}function Mf(t,r){return e.isExpressionOfOptionalChainRoot(r)?Pf(t):e.isOptionalChain(r)?Of(t):t}function Lf(t){return 2097152&t.flags?e.every(t.types,Lf):!(!(t.symbol&&7040&t.symbol.flags)||nE(t))||!!(2048&e.getObjectFlags(t)&&Lf(t.source))}function jf(t,r){var n=yn(t.flags,t.escapedName,8&e.getCheckFlags(t));n.declarations=t.declarations,n.parent=t.parent,n.type=r,n.target=t,t.valueDeclaration&&(n.valueDeclaration=t.valueDeclaration);var i=Tn(t).nameType;return i&&(n.nameType=i),n}function Bf(t){if(!(km(t)&&32768&e.getObjectFlags(t)))return t;var r=t.regularType;if(r)return r;var n=t,i=function(t,r){for(var n=e.createSymbolTable(),i=0,a=qs(t);i<a.length;i++){var o=a[i],s=_o(o),c=r(s);n.set(o.escapedName,c===s?o:jf(o,c))}return n}(t,Bf),a=Wi(n.symbol,i,n.callSignatures,n.constructSignatures,n.stringIndexInfo,n.numberIndexInfo);return a.flags=n.flags,a.objectFlags|=-32769&n.objectFlags,t.regularType=a,a}function zf(e,t,r){return{parent:e,propertyName:t,siblings:r,resolvedProperties:void 0}}function Uf(e){if(!e.siblings){for(var t=[],r=0,n=Uf(e.parent);r<n.length;r++){var i=n[r];if(km(i)){var a=Js(i,e.propertyName);a&&cg(_o(a),(function(e){t.push(e)}))}}e.siblings=t}return e.siblings}function qf(t){if(!t.resolvedProperties){for(var r=new e.Map,n=0,i=Uf(t);n<i.length;n++){var a=i[n];if(km(a)&&!(1024&e.getObjectFlags(a)))for(var o=0,s=Hs(a);o<s.length;o++){var c=s[o];r.set(c.escapedName,c)}}t.resolvedProperties=e.arrayFrom(r.values())}return t.resolvedProperties}function Jf(e,t){if(!(4&e.flags))return e;var r=_o(e),n=Kf(r,t&&zf(t,e.escapedName,void 0));return n===r?e:jf(e,n)}function Vf(e){var t=be.get(e.escapedName);if(t)return t;var r=jf(e,Ne);return r.flags|=16777216,be.set(e.escapedName,r),r}function Hf(e){return Kf(e,void 0)}function Kf(t,r){if(1572864&e.getObjectFlags(t)){if(void 0===r&&t.widened)return t.widened;var n=void 0;if(98305&t.flags)n=Ee;else if(km(t))n=function(t,r){for(var n=e.createSymbolTable(),i=0,a=qs(t);i<a.length;i++){var o=a[i];n.set(o.escapedName,Jf(o,r))}if(r)for(var s=0,c=qf(r);s<c.length;s++)o=c[s],n.has(o.escapedName)||n.set(o.escapedName,Vf(o));var l=bc(t,0),u=bc(t,1),d=Wi(t.symbol,n,e.emptyArray,e.emptyArray,l&&Qc(Hf(l.type),l.isReadonly),u&&Qc(Hf(u.type),u.isReadonly));return d.objectFlags|=2113536&e.getObjectFlags(t),d}(t,r);else if(1048576&t.flags){var i=r||zf(void 0,void 0,t.types),a=e.sameMap(t.types,(function(e){return 98304&e.flags?e:Kf(e,i)}));n=ou(a,e.some(a,wp)?2:1)}else 2097152&t.flags?n=fu(e.sameMap(t.types,Hf)):(rf(t)||vf(t))&&(n=ol(t.target,e.sameMap(ll(t),Hf)));return n&&void 0===r&&(t.widened=n),n||t}return t}function Wf(t){var r=!1;if(524288&e.getObjectFlags(t)){if(1048576&t.flags)if(e.some(t.types,wp))r=!0;else for(var n=0,i=t.types;n<i.length;n++){Wf(u=i[n])&&(r=!0)}if(rf(t)||vf(t))for(var a=0,o=ll(t);a<o.length;a++){Wf(u=o[a])&&(r=!0)}if(km(t))for(var s=0,c=qs(t);s<c.length;s++){var l=c[s],u=_o(l);524288&e.getObjectFlags(u)&&(Wf(u)||pn(l.valueDeclaration,e.Diagnostics.Object_literal_s_property_0_implicitly_has_an_1_type,la(l),da(Hf(u))),r=!0)}}return r}function Gf(t,r,n){var i=da(Hf(r));if(!e.isInJSFile(t)||e.isCheckJsEnabledForFile(e.getSourceFileOfNode(t),J)){var a;switch(t.kind){case 218:case 164:case 163:a=X?e.Diagnostics.Member_0_implicitly_has_an_1_type:e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 161:var o=t;if(e.isIdentifier(o.name)&&(e.isCallSignatureDeclaration(o.parent)||e.isMethodSignature(o.parent)||e.isFunctionTypeNode(o.parent))&&o.parent.parameters.indexOf(o)>-1&&(Fn(o,o.name.escapedText,788968,void 0,o.name.escapedText,!0)||o.name.originalKeywordKind&&e.isTypeNodeKind(o.name.originalKeywordKind))){var s="arg"+o.parent.parameters.indexOf(o);return void mn(X,t,e.Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,s,e.declarationNameToString(o.name))}a=t.dotDotDotToken?X?e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type:e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:X?e.Diagnostics.Parameter_0_implicitly_has_an_1_type:e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 199:if(a=e.Diagnostics.Binding_element_0_implicitly_has_an_1_type,!X)return;break;case 311:return void pn(t,e.Diagnostics.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,i);case 253:case 166:case 165:case 168:case 169:case 209:case 210:if(X&&!t.name)return void pn(t,3===n?e.Diagnostics.Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:e.Diagnostics.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,i);a=X?3===n?e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 191:return void(X&&pn(t,e.Diagnostics.Mapped_object_type_implicitly_has_an_any_template_type));default:a=X?e.Diagnostics.Variable_0_implicitly_has_an_1_type:e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}mn(X,t,a,e.declarationNameToString(e.getNameOfDeclaration(t)),i)}}function $f(t,n,i){!(r&&X&&524288&e.getObjectFlags(n))||i&&C_(t)||Wf(n)||Gf(t,n,i)}function Yf(e,t,r){var n=ov(e),i=ov(t),a=lv(e),o=lv(t),s=o?i-1:i,c=a?s:Math.min(n,s),l=Lc(e);if(l){var u=Lc(t);u&&r(l,u)}for(var d=0;d<c;d++)r(nv(e,d),nv(t,d));o&&r(av(e,c),o)}function Xf(e,t,r){var n=jc(e),i=jc(t);n&&i&&su(n,i)&&n.type&&i.type?r(n.type,i.type):r(Bc(e),Bc(t))}function Qf(e,t,r,n){return Zf(e.map(rm),t,r,n||ap)}function Zf(e,t,r,n){var i={inferences:e,signature:t,flags:r,compareTypes:n,mapper:Nd((function(e){return em(i,e,!0)})),nonFixingMapper:Nd((function(e){return em(i,e,!1)}))};return i}function em(e,t,r){for(var n=e.inferences,i=0;i<n.length;i++){var a=n[i];if(t===a.typeParameter)return r&&!a.isFixed&&(tm(n),a.isFixed=!0),Dm(e,i)}return t}function tm(e){for(var t=0,r=e;t<r.length;t++){var n=r[t];n.isFixed||(n.inferredType=void 0)}}function rm(e){return{typeParameter:e,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function nm(e){return{typeParameter:e.typeParameter,candidates:e.candidates&&e.candidates.slice(),contraCandidates:e.contraCandidates&&e.contraCandidates.slice(),inferredType:e.inferredType,priority:e.priority,topLevel:e.topLevel,isFixed:e.isFixed,impliedArity:e.impliedArity}}function im(e){return e&&e.mapper}function am(t){var r=e.getObjectFlags(t);if(67108864&r)return!!(134217728&r);var n=!!(465829888&t.flags||524288&t.flags&&!om(t)&&(4&r&&(t.node||e.forEach(ll(t),am))||16&r&&t.symbol&&14384&t.symbol.flags&&t.symbol.declarations||131104&r)||3145728&t.flags&&!(1024&t.flags)&&!om(t)&&e.some(t.types,am));return 3899393&t.flags&&(t.objectFlags|=67108864|(n?134217728:0)),n}function om(t){if(t.aliasSymbol&&!t.aliasTypeArguments){var r=e.getDeclarationOfKind(t.aliasSymbol,257);return!(!r||!e.findAncestor(r.parent,(function(e){return 300===e.kind||259!==e.kind&&"quit"})))}return!1}function sm(t,r){return!!(t===r||3145728&t.flags&&e.some(t.types,(function(e){return sm(e,r)}))||16777216&t.flags&&(Xu(t)===r||Qu(t)===r))}function cm(t,r,n){if(!xr){var i=t.id+","+r.id+","+n.id;if(kr.has(i))return kr.get(i);xr=!0;var a=function(t,r,n){if(!(bc(t,0)||0!==Hs(t).length&&lm(t)))return;if(rf(t))return jl(um(ll(t)[0],r,n),nf(t));if(vf(t)){return Hl(e.map(ll(t),(function(e){return um(e,r,n)})),4&Ls(r)?e.sameMap(t.target.elementFlags,(function(e){return 2&e?1:e})):t.target.elementFlags,t.target.readonly,t.target.labeledElementDeclarations)}var i=qi(2064,void 0);return i.source=t,i.mappedType=r,i.constraintType=n,i}(t,r,n);return xr=!1,kr.set(i,a),a}}function lm(t){return!(2097152&e.getObjectFlags(t))||km(t)&&e.some(Hs(t),(function(e){return lm(_o(e))}))||vf(t)&&e.some(ll(t),lm)}function um(e,t,r){var n=qu(r.type,Ns(t)),i=Fs(t),a=rm(n);return ym([a],e,i),fm(a)||Ae}function dm(t,r,n,i){var a,o,c,l,u,d,p;return s(this,(function(s){switch(s.label){case 0:a=Hs(r),o=0,c=a,s.label=1;case 1:return o<c.length?Xo(l=c[o])||!n&&(16777216&l.flags||48&e.getCheckFlags(l))?[3,5]:(u=gc(t,l.escapedName))?[3,3]:[4,l]:[3,6];case 2:return s.sent(),[3,5];case 3:return i&&109440&(d=_o(l)).flags?1&(p=_o(u)).flags||gd(p)===gd(d)?[3,5]:[4,l]:[3,5];case 4:s.sent(),s.label=5;case 5:return o++,[3,1];case 6:return[2]}}))}function pm(e,t,r,n){var i=dm(e,t,r,n).next();if(!i.done)return i.value}function fm(e){return e.candidates?ou(e.candidates,2):e.contraCandidates?fu(e.contraCandidates):void 0}function mm(e){return!!Cn(e).skipDirectInference}function gm(t){return!(!t.symbol||!e.some(t.symbol.declarations,mm))}function _m(t,r){if(1048576&r.flags)return!!cg(r,(function(e){return _m(t,e)}));switch(r){case Re:return!0;case Me:return""!==t.value&&isFinite(+t.value);case Le:return""!==t.value&&function(t){var r=e.createScanner(99,!1),n=!0;r.setOnError((function(){return n=!1})),r.setText(t+"n");var i=r.scan();40===i&&(i=r.scan());var a=r.getTokenFlags();return n&&9===i&&r.getTextPos()===t.length+1&&!(512&a)}(t.value);case ze:return"true"===t.value;case je:return"false"===t.value;case Ne:return"undefined"===t.value;case Fe:return"null"===t.value;default:return!!(1&r.flags)}}function hm(e,t){var r=e.value,n=t.texts,i=n.length-1,a=n[0],o=n[i];if(r.startsWith(a)&&r.slice(a.length).endsWith(o)){for(var s=[],c=r.slice(a.length,r.length-o.length),l=0,u=1;u<i;u++){var d=n[u],p=d.length>0?c.indexOf(d,l):l<c.length?l+1:-1;if(p<0)return;s.push(hd(c.slice(l,p))),l=p+d.length}return s.push(hd(c.slice(l))),s}}function ym(t,r,n,i,a){void 0===i&&(i=0),void 0===a&&(a=!1);var o,s,c,l,u=!1,d=1024,p=!0,f=0;function m(r,s){if(am(s)){if(r===De){var c=o;return o=r,m(s,s),void(o=c)}if(r.aliasSymbol&&r.aliasTypeArguments&&r.aliasSymbol===s.aliasSymbol)y(r.aliasTypeArguments,s.aliasTypeArguments,zp(r.aliasSymbol));else if(r===s&&3145728&r.flags)for(var l=0,f=r.types;l<f.length;l++){var v=f[l];m(v,v)}else{if(1048576&s.flags){var x=h(1048576&r.flags?r.types:[r],s.types,vm),D=h(x[0],x[1],bm),w=D[0];if(0===(C=D[1]).length)return;if(s=ou(C),0===w.length)return void g(r,s,1);r=ou(w)}else if(2097152&s.flags&&e.some(s.types,(function(e){return!!b(e)||zs(e)&&!!b(Ud(e)||He)}))){if(!(1048576&r.flags)){var T=h(2097152&r.flags?r.types:[r],s.types,np),C=(w=T[0],T[1]);if(0===w.length||0===C.length)return;r=fu(w),s=fu(C)}}else 41943040&s.flags&&(s=Wu(s));if(8650752&s.flags){if(2097152&e.getObjectFlags(r)||r===Te||r===Ke||64&i&&(r===Se||r===Nt)||gm(r))return;var A=b(s);if(A){if(!A.isFixed){if((void 0===A.priority||i<A.priority)&&(A.candidates=void 0,A.contraCandidates=void 0,A.topLevel=!0,A.priority=i),i===A.priority){var N=o||r;a&&!u?e.contains(A.contraCandidates,N)||(A.contraCandidates=e.append(A.contraCandidates,N),tm(t)):e.contains(A.candidates,N)||(A.candidates=e.append(A.candidates,N),tm(t))}!(64&i)&&262144&s.flags&&A.topLevel&&!sm(n,s)&&(A.topLevel=!1,tm(t))}return void(d=Math.min(d,i))}var P=ju(s,!1);if(P!==s)_(r,P,m);else if(8388608&s.flags){var I=ju(s.indexType,!1);if(465829888&I.flags){var F=Bu(ju(s.objectType,!1),I,!1);F&&F!==s&&_(r,F,m)}}}if(!(4&e.getObjectFlags(r)&&4&e.getObjectFlags(s)&&(r.target===s.target||rf(r)&&rf(s)))||r.node&&s.node)if(4194304&r.flags&&4194304&s.flags)a=!a,m(r.type,s.type),a=!a;else if((ff(r)||4&r.flags)&&4194304&s.flags){var O=function(t){var r=e.createSymbolTable();cg(t,(function(t){if(128&t.flags){var n=e.escapeLeadingUnderscores(t.value),i=yn(4,n);i.type=Ee,t.symbol&&(i.declarations=t.symbol.declarations,i.valueDeclaration=t.symbol.valueDeclaration),r.set(n,i)}}));var n=4&t.flags?Qc(nt,!1):void 0;return Wi(void 0,r,e.emptyArray,e.emptyArray,n,void 0)}(r);a=!a,g(O,s.type,128),a=!a}else if(8388608&r.flags&&8388608&s.flags)m(r.objectType,s.objectType),m(r.indexType,s.indexType);else if(268435456&r.flags&&268435456&s.flags)r.symbol===s.symbol&&m(r.type,s.type);else if(16777216&s.flags)_(r,s,E);else if(3145728&s.flags)k(r,s.types,s.flags);else if(1048576&r.flags)for(var R=0,M=r.types;R<M.length;R++){m(M[R],s)}else if(134217728&s.flags)!function(t,r){for(var n=128&t.flags?hm(t,r):134217728&t.flags&&e.arraysEqual(t.texts,r.texts)?t.types:void 0,i=r.types,a=0;a<i.length;a++)m(n?n[a]:He,i[a])}(r,s);else{if(r=uc(r),!(256&i&&467927040&r.flags)){var L=ac(r);if(L!==r&&p&&!(2621440&L.flags))return p=!1,m(L,s);r=L}2621440&r.flags&&_(r,s,S)}else y(ll(r),ll(s),qp(r.target))}}}function g(e,t,r){var n=i;i|=r,m(e,t),i=n}function _(t,r,n){var i=t.id+","+r.id,a=s&&s.get(i);if(void 0===a){(s||(s=new e.Map)).set(i,-1);var o=d;d=1024;var u=f,p=Xp(t)||t,m=Xp(r)||r;p&&e.contains(c,p)&&(f|=1),m&&e.contains(l,m)&&(f|=2),3!==f?(p&&(c||(c=[])).push(p),m&&(l||(l=[])).push(m),n(t,r),m&&l.pop(),p&&c.pop()):d=-1,f=u,s.set(i,d),d=Math.min(d,o)}else d=Math.min(d,a)}function h(t,r,n){for(var i,a,o=0,s=r;o<s.length;o++)for(var c=s[o],l=0,u=t;l<u.length;l++){var d=u[l];n(d,c)&&(m(d,c),i=e.appendIfUnique(i,d),a=e.appendIfUnique(a,c))}return[i?e.filter(t,(function(t){return!e.contains(i,t)})):t,a?e.filter(r,(function(t){return!e.contains(a,t)})):r]}function y(e,t,r){for(var n=e.length<t.length?e.length:t.length,i=0;i<n;i++)i<r.length&&2==(7&r[i])?v(e[i],t[i]):m(e[i],t[i])}function v(e,t){G||512&i?(a=!a,m(e,t),a=!a):m(e,t)}function b(e){if(8650752&e.flags)for(var r=0,n=t;r<n.length;r++){var i=n[r];if(e===i.typeParameter)return i}}function k(t,r,n){var a=0;if(1048576&n){for(var o=void 0,s=1048576&t.flags?t.types:[t],c=new Array(s.length),l=!1,u=0,p=r;u<p.length;u++){if(b(S=p[u]))o=S,a++;else for(var f=0;f<s.length;f++){var _=d;d=1024,m(s[f],S),d===i&&(c[f]=!0),l=l||-1===d,d=Math.min(d,_)}}if(0===a){var h=function(t){for(var r,n=0,i=t;n<i.length;n++){var a=i[n],o=2097152&a.flags&&e.find(a.types,(function(e){return!!b(e)}));if(!o||r&&o!==r)return;r=o}return r}(r);return void(h&&g(t,h,1))}if(1===a&&!l){var y=e.flatMap(s,(function(e,t){return c[t]?void 0:e}));if(y.length)return void m(ou(y),o)}}else for(var v=0,k=r;v<k.length;v++){b(S=k[v])?a++:m(t,S)}if(2097152&n?1===a:a>0)for(var x=0,E=r;x<E.length;x++){var S;b(S=E[x])&&g(t,S,1)}}function x(t,r,n){if(1048576&n.flags){for(var i=!1,a=0,o=n.types;a<o.length;a++){i=x(t,r,o[a])||i}return i}if(4194304&n.flags){var s=b(n.type);if(s&&!s.isFixed&&!gm(t)){var c=cm(t,r,n);c&&g(c,s.typeParameter,2097152&e.getObjectFlags(t)?8:4)}return!0}if(262144&n.flags){g(Eu(t),n,16);var l=Ks(n);if(l&&x(t,r,l))return!0;var u=e.map(Hs(t),_o),d=kc(t,0),p=xu(t),f=p&&p.type;return m(ou(e.append(e.append(u,d),f)),Fs(r)),!0}return!1}function E(e,t){if(16777216&e.flags)m(e.checkType,t.checkType),m(e.extendsType,t.extendsType),m(Xu(e),Xu(t)),m(Qu(e),Qu(t));else{var r=i;i|=a?32:0,k(e,[Xu(t),Qu(t)],t.flags),i=r}}function S(t,r){if(4&e.getObjectFlags(t)&&4&e.getObjectFlags(r)&&(t.target===r.target||rf(t)&&rf(r)))y(ll(t),ll(r),qp(t.target));else{if(zs(t)&&zs(r)){m(Ps(t),Ps(r)),m(Fs(t),Fs(r));var n=Is(t),i=Is(r);n&&i&&m(n,i)}var a,o;if(32&e.getObjectFlags(r)&&!r.declaration.nameType)if(x(t,r,Ps(r)))return;if(!function(e,t){return vf(e)&&vf(t)?function(e,t){return!(8&t.target.combinedFlags)&&t.target.minLength>e.target.minLength||!t.target.hasRestElement&&(e.target.hasRestElement||t.target.fixedLength<e.target.fixedLength)}(e,t):!!pm(e,t,!1,!0)&&!!pm(t,e,!1,!1)}(t,r)){if(rf(t)||vf(t)){if(vf(r)){var s=ul(t),c=ul(r),l=ll(r),u=r.target.elementFlags;if(vf(t)&&(o=r,ul(a=t)===ul(o)&&e.every(a.target.elementFlags,(function(e,t){return(12&e)==(12&o.target.elementFlags[t])})))){for(var d=0;d<c;d++)m(ll(t)[d],l[d]);return}var p=vf(t)?Math.min(t.target.fixedLength,r.target.fixedLength):0,f=Math.min(vf(t)?Ql(t.target,3):0,r.target.hasRestElement?Ql(r.target,3):0);for(d=0;d<p;d++)m(ll(t)[d],l[d]);if(!vf(t)||s-p-f==1&&4&t.target.elementFlags[p]){var _=ll(t)[p];for(d=p;d<c-f;d++)m(8&u[d]?jl(_):_,l[d])}else{var h=c-p-f;if(2===h&&u[p]&u[p+1]&8&&vf(t)){var v=b(l[p]);v&&void 0!==v.impliedArity&&(m($l(t,p,f+s-v.impliedArity),l[p]),m($l(t,p+v.impliedArity,f),l[p+1]))}else if(1===h&&8&u[p]){var k=2&r.target.elementFlags[c-1];g(vf(t)?$l(t,p,f):jl(ll(t)[0]),l[p],k?2:0)}else if(1===h&&4&u[p]){(_=vf(t)?Ef(t,p,f):ll(t)[0])&&m(_,l[p])}}for(d=0;d<f;d++)m(ll(t)[s-d-1],l[c-d-1]);return}if(rf(r))return void T(t,r)}!function(e,t){for(var r=qs(t),n=0,i=r;n<i.length;n++){var a=i[n],o=gc(e,a.escapedName);o&&m(_o(o),_o(a))}}(t,r),D(t,r,0),D(t,r,1),T(t,r)}}}function D(t,r,n){for(var i=hc(t,n),a=hc(r,n),o=i.length,s=a.length,c=o<s?o:s,l=!!(2097152&e.getObjectFlags(t)),u=0;u<c;u++)w(Gc(i[o-c+u]),Kc(a[s-c+u]),l)}function w(e,t,r){if(!r){var n=u,i=t.declaration?t.declaration.kind:0;u=u||166===i||165===i||167===i,Yf(e,t,v),u=n}Xf(e,t,m)}function T(e,t){var r=kc(t,0);r&&((n=kc(e,0)||xc(e,0))&&m(n,r));var n,i=kc(t,1);i&&((n=kc(e,1)||kc(e,0)||xc(e,1))&&m(n,i))}m(r,n)}function vm(e,t){return np(e,t)||!!(4&t.flags&&128&e.flags||8&t.flags&&256&e.flags)}function bm(e,t){return!!(524288&e.flags&&524288&t.flags&&e.symbol&&e.symbol===t.symbol||e.aliasSymbol&&e.aliasTypeArguments&&e.aliasSymbol===t.aliasSymbol)}function km(t){return!!(128&e.getObjectFlags(t))}function xm(t){return!!(65664&e.getObjectFlags(t))}function Em(t){return 208&t.priority?fu(t.contraCandidates):(r=t.contraCandidates,e.reduceLeft(r,(function(e,t){return sp(t,e)?t:e})));var r}function Sm(t,r){var n,i,a=function(t){if(t.length>1){var r=e.filter(t,xm);if(r.length){var n=ou(r,2);return e.concatenate(e.filter(t,(function(e){return!xm(e)})),[n])}}return t}(t.candidates),o=(n=t.typeParameter,!!(i=Ws(n))&&Rv(16777216&i.flags?$s(i):i,406978556)),s=!o&&t.topLevel&&(t.isFixed||!sm(Bc(r),t.typeParameter)),c=o?e.sameMap(a,gd):s?e.sameMap(a,gf):a;return Hf(208&t.priority?ou(c,2):function(t){if(!W)return tf(t);var r=e.filter(t,(function(e){return!(98304&e.flags)}));return r.length?Af(tf(r),98304&Df(t)):ou(t,2)}(c))}function Dm(t,r){var n=t.inferences[r];if(!n.inferredType){var i=void 0,a=t.signature;if(a){var o=n.candidates?Sm(n,a):void 0;if(n.contraCandidates){var s=Em(n);i=!o||131072&o.flags||!sp(o,s)?s:o}else if(o)i=o;else if(1&t.flags)i=Ke;else{var c=nc(n.typeParameter);c&&(i=Wd(c,Od(function(t,r){return Nd((function(n){return e.findIndex(t.inferences,(function(e){return e.typeParameter===n}))>=r?Ae:n}))}(t,r),t.nonFixingMapper)))}}else i=fm(n);n.inferredType=i||wm(!!(2&t.flags));var l=Ws(n.typeParameter);if(l){var u=Wd(l,t.nonFixingMapper);i&&t.compareTypes(i,ls(u,i))||(n.inferredType=i=u)}}return n.inferredType}function wm(e){return e?Ee:Ae}function Tm(e){for(var t=[],r=0;r<e.inferences.length;r++)t.push(Dm(e,r));return t}function Cm(t){switch(t.escapedText){case"document":case"console":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom;case"$":return J.types?e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery;case"describe":case"suite":case"it":case"test":return J.types?e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha;case"process":case"require":case"Buffer":case"module":return J.types?e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode;case"Map":case"Set":case"Promise":case"Symbol":case"WeakMap":case"WeakSet":case"Iterator":case"AsyncIterator":case"SharedArrayBuffer":case"Atomics":case"AsyncIterable":case"AsyncIterableIterator":case"AsyncGenerator":case"AsyncGeneratorFunction":case"BigInt":case"Reflect":case"BigInt64Array":case"BigUint64Array":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later;default:return 292===t.parent.kind?e.Diagnostics.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:e.Diagnostics.Cannot_find_name_0}}function Am(t){var r=Cn(t);return r.resolvedSymbol||(r.resolvedSymbol=!e.nodeIsMissing(t)&&Fn(t,t.escapedText,1160127,Cm(t),t,!e.isWriteOnlyAccess(t),!1,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1)||ke),r.resolvedSymbol}function Nm(t){return!!e.findAncestor(t,(function(e){return 177===e.kind||78!==e.kind&&158!==e.kind&&"quit"}))}function Pm(e,t,r,n){switch(e.kind){case 78:var i=Am(e);return i!==ke?(n?O(n):"-1")+"|"+Zl(t)+"|"+Zl(r)+"|"+(Bg(e)?"@":"")+R(i):void 0;case 108:return"0|"+(n?O(n):"-1")+"|"+Zl(t)+"|"+Zl(r);case 227:case 208:return Pm(e.expression,t,r,n);case 202:case 203:var a=Om(e);if(void 0!==a){var o=Pm(e.expression,t,r,n);return o&&o+"."+a}}}function Im(t,r){switch(r.kind){case 208:case 227:return Im(t,r.expression);case 218:return e.isAssignmentExpression(r)&&Im(t,r.left)||e.isBinaryExpression(r)&&27===r.operatorToken.kind&&Im(t,r.right)}switch(t.kind){case 78:case 79:return 78===r.kind&&Am(t)===Am(r)||(251===r.kind||199===r.kind)&&Ri(Am(t))===Ai(r);case 108:return 108===r.kind;case 106:return 106===r.kind;case 227:case 208:return Im(t.expression,r);case 202:case 203:return e.isAccessExpression(r)&&Om(t)===Om(r)&&Im(t.expression,r.expression);case 158:return e.isAccessExpression(r)&&t.right.escapedText===Om(r)&&Im(t.left,r.expression);case 218:return e.isBinaryExpression(t)&&27===t.operatorToken.kind&&Im(t.right,r)}return!1}function Fm(e,t){return Im(e,t)||218===t.kind&&55===t.operatorToken.kind&&(Fm(e,t.left)||Fm(e,t.right))}function Om(t){return 202===t.kind?t.name.escapedText:e.isStringOrNumericLiteralLike(t.argumentExpression)?e.escapeLeadingUnderscores(t.argumentExpression.text):void 0}function Rm(t,r){for(;e.isAccessExpression(t);)if(Im(t=t.expression,r))return!0;return!1}function Mm(t,r){for(;e.isOptionalChain(t);)if(Im(t=t.expression,r))return!0;return!1}function Lm(t,r){if(t&&1048576&t.flags){var n=cc(t,r);if(n&&2&e.getCheckFlags(n))return void 0===n.isDiscriminantProperty&&(n.isDiscriminantProperty=!(192&~n.checkFlags||Rv(_o(n),465829888))),!!n.isDiscriminantProperty}return!1}function jm(e,t){for(var r,n=0,i=e;n<i.length;n++){var a=i[n];if(Lm(t,a.escapedName)){if(r){r.push(a);continue}r=[a]}}return r}function Bm(e,t){return Im(e,t)||Rm(e,t)}function zm(e,t){if(e.arguments)for(var r=0,n=e.arguments;r<n.length;r++){if(Bm(t,n[r]))return!0}return!(202!==e.expression.kind||!Bm(t,e.expression.expression))}function Um(e){return(!e.id||e.id<0)&&(e.id=f,f++),e.id}function qm(e,t){if(e!==t){if(131072&t.flags)return t;var r=ug(e,(function(e){return function(e,t){if(!(1048576&e.flags))return cp(e,t);for(var r=0,n=e.types;r<n.length;r++)if(cp(n[r],t))return!0;return!1}(t,e)}));if(512&t.flags&&_d(t)&&(r=pg(r,md)),cp(t,r))return r}return e}function Jm(e){var t=Us(e);return!!(t.callSignatures.length||t.constructSignatures.length||t.members.get("bind")&&sp(e,vt))}function Vm(t){var r=t.flags;if(4&r)return W?16317953:16776705;if(128&r){var n=""===t.value;return W?n?12123649:7929345:n?12582401:16776705}if(40&r)return W?16317698:16776450;if(256&r){var i=0===t.value;return W?i?12123394:7929090:i?12582146:16776450}if(64&r)return W?16317188:16775940;if(2048&r){i=Sf(t);return W?i?12122884:7928580:i?12581636:16775940}return 16&r?W?16316168:16774920:528&r?W?t===je||t===Be?12121864:7927560:t===je||t===Be?12580616:16774920:524288&r?16&e.getObjectFlags(t)&&wp(t)?W?16318463:16777215:Jm(t)?W?7880640:16728e3:W?7888800:16736160:49152&r?9830144:65536&r?9363232:12288&r?W?7925520:16772880:67108864&r?W?7888800:16736160:131072&r?0:465829888&r?Ou(t)?W?7929345:16776705:Vm(Qs(t)||Ae):3145728&r?function(e){for(var t=0,r=0,n=e;r<n.length;r++)t|=Vm(n[r]);return t}(t.types):16777215}function Hm(e,t){return ug(e,(function(e){return!!(Vm(e)&t)}))}function Km(e,t){if(t){var r=ub(t);return ou([Hm(e,524288),r])}return e}function Wm(e,t){var r=vu(t);if(!Zo(r))return we;var n=is(r);return Ug(Na(e,n),t)||R_(n)&&$m(kc(e,1))||$m(kc(e,0))||we}function Gm(e,t){return lg(e,lf)&&function(e,t){var r=Na(e,""+t);return r||(lg(e,vf)?pg(e,(function(e){return xf(e)||Ne})):void 0)}(e,t)||$m(Ik(65,e,Ne,void 0))||we}function $m(e){return e&&J.noUncheckedIndexedAccess?ou([e,Ne]):e}function Ym(e){return jl(Ik(65,e,Ne,void 0)||we)}function Xm(e){return 218===e.parent.kind&&e.parent.left===e||241===e.parent.kind&&e.parent.initializer===e}function Qm(e){return Wm(Zm(e.parent),e.name)}function Zm(e){var t=e.parent;switch(t.kind){case 240:return Re;case 241:return Pk(t)||we;case 218:return function(e){return 200===e.parent.kind&&Xm(e.parent)||291===e.parent.kind&&Xm(e.parent.parent)?Km(Zm(e),e.right):ub(e.right)}(t);case 212:return Ne;case 200:return function(e,t){return Gm(Zm(e),e.elements.indexOf(t))}(t,e);case 222:return function(e){return Ym(Zm(e.parent))}(t);case 291:return Qm(t);case 292:return function(e){return Km(Qm(e),e.objectAssignmentInitializer)}(t)}return we}function eg(e){return Cn(e).resolvedType||ub(e)}function tg(e){return 251===e.kind?function(e){return e.initializer?eg(e.initializer):240===e.parent.parent.kind?Re:241===e.parent.parent.kind&&Pk(e.parent.parent)||we}(e):function(e){var t=e.parent,r=tg(t.parent);return Km(197===t.kind?Wm(r,e.propertyName||e.name):e.dotDotDotToken?Ym(r):Gm(r,t.elements.indexOf(e)),e.initializer)}(e)}function rg(e){switch(e.kind){case 208:return rg(e.expression);case 218:switch(e.operatorToken.kind){case 62:case 74:case 75:case 76:return rg(e.left);case 27:return rg(e.right)}}return e}function ng(e){var t=e.parent;return 208===t.kind||218===t.kind&&62===t.operatorToken.kind&&t.left===e||218===t.kind&&27===t.operatorToken.kind&&t.right===e?ng(t):e}function ig(e){return 287===e.kind?gd(ub(e.expression)):He}function ag(e){var t=Cn(e);if(!t.switchTypes){t.switchTypes=[];for(var r=0,n=e.caseBlock.clauses;r<n.length;r++){var i=n[r];t.switchTypes.push(ig(i))}}return t.switchTypes}function og(t,r){for(var n=[],i=0,a=t.caseBlock.clauses;i<a.length;i++){var o=a[i];if(287===o.kind){if(e.isStringLiteralLike(o.expression)){n.push(o.expression.text);continue}return e.emptyArray}r&&n.push(void 0)}return n}function sg(e,t){return e===t||1048576&t.flags&&function(e,t){if(1048576&e.flags){for(var r=0,n=e.types;r<n.length;r++){var i=n[r];if(!eu(t.types,i))return!1}return!0}if(1024&e.flags&&Bo(e)===t)return!0;return eu(t.types,e)}(e,t)}function cg(t,r){return 1048576&t.flags?e.forEach(t.types,r):r(t)}function lg(t,r){return 1048576&t.flags?e.every(t.types,r):r(t)}function ug(t,r){if(1048576&t.flags){var n=t.types,i=e.filter(n,r);if(i===n)return t;var a=t.origin,o=void 0;if(a&&1048576&a.flags){var s=a.types,c=e.filter(s,(function(e){return!!(1048576&e.flags)||r(e)}));if(s.length-c.length==n.length-i.length){if(1===c.length)return c[0];o=au(1048576,c)}}return cu(i,t.objectFlags,void 0,void 0,o)}return 131072&t.flags||r(t)?t:He}function dg(e){return 1048576&e.flags?e.types.length:1}function pg(e,t,r){if(131072&e.flags)return e;if(!(1048576&e.flags))return t(e);for(var n,i=e.origin,a=!1,o=0,s=i&&1048576&i.flags?i.types:e.types;o<s.length;o++){var c=s[o],l=1048576&c.flags?pg(c,t,r):t(c);a||(a=c!==l),l&&(n?n.push(l):n=[l])}return a?n&&ou(n,r?0:1):e}function fg(t,r,n,i){return 1048576&t.flags&&n?ou(e.map(t.types,r),1,n,i):pg(t,r)}function mg(e){return 3145728&e.flags?e.types.length:1}function gg(e,t){return ug(e,(function(e){return!!(e.flags&t)}))}function _g(e,t){return sg(Re,e)&&Rv(t,128)||sg(Me,e)&&Rv(t,256)||sg(Le,e)&&Rv(t,2048)?pg(e,(function(e){return 4&e.flags?gg(t,132):8&e.flags?gg(t,264):64&e.flags?gg(t,2112):e})):e}function hg(e){return 0===e.flags}function yg(e){return 0===e.flags?e.type:e}function vg(e,t){return t?{flags:0,type:131072&e.flags?Ke:e}:e}function bg(e){return ve[e.id]||(ve[e.id]=function(e){var t=qi(256);return t.elementType=e,t}(e))}function kg(e,t){var r=Bf(mf(pb(t)));return sg(r,e.elementType)?e:bg(ou([e.elementType,r]))}function xg(e){return e.finalArrayType||(e.finalArrayType=131072&(t=e.elementType).flags?Nt:jl(1048576&t.flags?ou(t.types,2):t));var t}function Eg(t){return 256&e.getObjectFlags(t)?xg(t):t}function Sg(t){return 256&e.getObjectFlags(t)?t.elementType:He}function Dg(t){var r=ng(t),n=r.parent,i=e.isPropertyAccessExpression(n)&&("length"===n.name.escapedText||204===n.parent.kind&&e.isIdentifier(n.name)&&e.isPushOrUnshiftIdentifier(n.name)),a=203===n.kind&&n.expression===r&&218===n.parent.kind&&62===n.parent.operatorToken.kind&&n.parent.left===n&&!e.isAssignmentTarget(n.parent)&&Mv(ub(n.argumentExpression),296);return i||a}function wg(t,r){if(8752&t.flags)return _o(t);if(7&t.flags){if(262144&e.getCheckFlags(t)){var n=t.syntheticOrigin;if(n&&wg(n))return _o(t)}var i=t.valueDeclaration;if(i){if(function(t){return(251===t.kind||161===t.kind||164===t.kind||163===t.kind)&&!!e.getEffectiveTypeAnnotationNode(t)}(i))return _o(t);if(e.isVariableDeclaration(i)&&241===i.parent.parent.kind){var a=i.parent.parent,o=Tg(a.expression,void 0);if(o)return Ik(a.awaitModifier?15:13,o,Ne,void 0)}r&&e.addRelatedInfo(r,e.createDiagnosticForNode(i,e.Diagnostics._0_needs_an_explicit_type_annotation,la(t)))}}}function Tg(t,r){if(!(16777216&t.flags))switch(t.kind){case 78:var n=Ri(Am(t));return wg(2097152&n.flags?ai(n):n,r);case 108:return function(t){var r=e.getThisContainer(t,!1);if(e.isFunctionLike(r)){var n=Ic(r);if(n.thisParameter)return wg(n.thisParameter)}if(e.isClassLike(r.parent)){var i=Ai(r.parent);return e.hasSyntacticModifier(r,32)?_o(i):Jo(i).thisType}}(t);case 106:return Qg(t);case 202:var i=Tg(t.expression,r);if(i){var a=t.name,o=void 0;if(e.isPrivateIdentifier(a)){if(!i.symbol)return;o=gc(i,e.getSymbolNameForPrivateIdentifier(i.symbol,a.escapedText))}else o=gc(i,a.escapedText);return o&&wg(o,r)}return;case 208:return Tg(t.expression,r)}}function Cg(t){var r=Cn(t),n=r.effectsSignature;if(void 0===n){var i=void 0;235===t.parent.kind?i=Tg(t.expression,void 0):106!==t.expression.kind&&(i=e.isOptionalChain(t)?vh(Mf(fb(t.expression),t.expression),t.expression):fh(t.expression));var a=hc(i&&ac(i)||Ae,0),o=1!==a.length||a[0].typeParameters?e.some(a,Ag)?Iy(t):void 0:a[0];n=r.effectsSignature=o&&Ag(o)?o:ur}return n===ur?void 0:n}function Ag(e){return!!(jc(e)||e.declaration&&131072&(zc(e.declaration)||Ae).flags)}function Ng(e){var t=Ig(e,!1);return tr=e,rr=t,t}function Pg(t){var r=e.skipParentheses(t);return 95===r.kind||218===r.kind&&(55===r.operatorToken.kind&&(Pg(r.left)||Pg(r.right))||56===r.operatorToken.kind&&Pg(r.left)&&Pg(r.right))}function Ig(t,r){for(;;){if(t===tr)return rr;var n=t.flags;if(4096&n){if(!r){var i=Um(t),a=Kr[i];return void 0!==a?a:Kr[i]=Ig(t,!0)}r=!1}if(368&n)t=t.antecedent;else if(512&n){var o=Cg(t.node);if(o){var s=jc(o);if(s&&3===s.kind&&!s.type){var c=t.node.arguments[s.parameterIndex];if(c&&Pg(c))return!1}if(131072&Bc(o).flags)return!1}t=t.antecedent}else{if(4&n)return e.some(t.antecedents,(function(e){return Ig(e,!1)}));if(8&n){var l=t.antecedents;if(void 0===l||0===l.length)return!1;t=l[0]}else{if(!(128&n)){if(1024&n){tr=void 0;var u=t.target,d=u.antecedents;u.antecedents=t.antecedents;var p=Ig(t.antecedent,!1);return u.antecedents=d,p}return!(1&n)}if(t.clauseStart===t.clauseEnd&&Ev(t.switchStatement))return!1;t=t.antecedent}}}}function Fg(t,r){for(;;){var n=t.flags;if(4096&n){if(!r){var i=Um(t),a=Wr[i];return void 0!==a?a:Wr[i]=Fg(t,!0)}r=!1}if(496&n)t=t.antecedent;else if(512&n){if(106===t.node.expression.kind)return!0;t=t.antecedent}else{if(4&n)return e.every(t.antecedents,(function(e){return Fg(e,!1)}));if(!(8&n)){if(1024&n){var o=t.target,s=o.antecedents;o.antecedents=t.antecedents;var c=Fg(t.antecedent,!1);return o.antecedents=s,c}return!!(1&n)}t=t.antecedents[0]}}}function Og(t,r,n,i,a){var o;void 0===n&&(n=r);var s=!1,c=0;if(Tr)return we;if(!t.flowNode||!a&&!(536624127&r.flags))return r;Cr++;var l=wr,u=yg(f(t.flowNode));wr=l;var d=256&e.getObjectFlags(u)&&Dg(t)?Nt:Eg(u);return d===$e||t.parent&&227===t.parent.kind&&131072&Hm(d,2097152).flags?r:d;function p(){return s?o:(s=!0,o=Pm(t,r,n,i))}function f(a){if(2e3===c)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","getTypeAtFlowNode_DepthLimit",{flowId:a.id}),Tr=!0,o=t,s=e.findAncestor(o,e.isFunctionOrModuleBlock),u=e.getSourceFileOfNode(o),d=e.getSpanOfTokenAtPosition(u,s.statements.pos),Qr.add(e.createFileDiagnostic(u,d.start,d.length,e.Diagnostics.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis)),we;var o,s,u,d,p;for(c++;;){var m=a.flags;if(4096&m){for(var _=l;_<wr;_++)if(Vr[_]===a)return c--,Hr[_];p=a}var E=void 0;if(16&m){if(!(E=g(a))){a=a.antecedent;continue}}else if(512&m){if(!(E=h(a))){a=a.antecedent;continue}}else if(96&m)E=v(a);else if(128&m)E=b(a);else if(12&m){if(1===a.antecedents.length){a=a.antecedents[0];continue}E=4&m?k(a):x(a)}else if(256&m){if(!(E=y(a))){a=a.antecedent;continue}}else if(1024&m){var S=a.target,D=S.antecedents;S.antecedents=a.antecedents,E=f(a.antecedent),S.antecedents=D}else if(2&m){var w=a.node;if(w&&w!==i&&202!==t.kind&&203!==t.kind&&108!==t.kind){a=w.flowNode;continue}E=n}else E=vk(r);return p&&(Vr[wr]=p,Hr[wr]=E,wr++),c--,E}}function m(e){var r=e.node;return Ug(251===r.kind||199===r.kind?tg(r):Zm(r),t)}function g(n){var i=n.node;if(Im(t,i)){if(!Ng(n))return $e;if(2===e.getAssignmentTargetKind(i)){var a=f(n.antecedent);return vg(mf(yg(a)),hg(a))}if(r===Se||r===Nt){if(function(e){return 251===e.kind&&e.initializer&&Ba(e.initializer)||199!==e.kind&&218===e.parent.kind&&Ba(e.parent.right)}(i))return bg(He);var o=gf(m(n));return cp(o,r)?o:At}return 1048576&r.flags?qm(r,m(n)):r}if(Rm(t,i)){if(!Ng(n))return $e;if(e.isVariableDeclaration(i)&&(e.isInJSFile(i)||e.isVarConst(i))){var s=e.getDeclaredExpandoInitializer(i);if(s&&(209===s.kind||210===s.kind))return f(n.antecedent)}return r}if(e.isVariableDeclaration(i)&&240===i.parent.parent.kind&&Im(t,i.parent.parent.expression))return gh(yg(f(n.antecedent)))}function _(t,r){var n=e.skipParentheses(r);if(95===n.kind)return $e;if(218===n.kind){if(55===n.operatorToken.kind)return _(_(t,n.left),n.right);if(56===n.operatorToken.kind)return ou([_(t,n.left),_(t,n.right)])}return q(t,n,!0)}function h(e){var t=Cg(e.node);if(t){var r=jc(t);if(r&&(2===r.kind||3===r.kind)){var n=f(e.antecedent),i=Eg(yg(n)),a=r.type?U(i,r,e.node,!0):3===r.kind&&r.parameterIndex>=0&&r.parameterIndex<e.node.arguments.length?_(i,e.node.arguments[r.parameterIndex]):i;return a===i?n:vg(a,hg(n))}if(131072&Bc(t).flags)return $e}}function y(n){if(r===Se||r===Nt){var i=n.node,a=204===i.kind?i.expression.expression:i.left.expression;if(Im(t,rg(a))){var o=f(n.antecedent),s=yg(o);if(256&e.getObjectFlags(s)){var c=s;if(204===i.kind)for(var l=0,u=i.arguments;l<u.length;l++){c=kg(c,u[l])}else Mv(pb(i.left.argumentExpression),296)&&(c=kg(c,i.right));return c===s?o:vg(c,hg(o))}return o}}}function v(e){var t=f(e.antecedent),r=yg(t);if(131072&r.flags)return t;var n=!!(32&e.flags),i=Eg(r),a=q(i,e.node,n);return a===i?t:vg(a,hg(t))}function b(r){var n=r.switchStatement.expression,i=f(r.antecedent),a=yg(i);return Im(t,n)?a=R(a,r.switchStatement,r.clauseStart,r.clauseEnd):213===n.kind&&Im(t,n.expression)?a=function(t,r,n,i){var a=og(r,!0);if(!a.length)return t;var o,s,c=e.findIndex(a,(function(e){return void 0===e})),l=n===i||c>=n&&c<i;if(c>-1){var u=a.filter((function(e){return void 0!==e})),d=c<n?n-1:n,p=c<i?i-1:i;o=u.slice(d,p),s=xv(d,p,u,l)}else o=a.slice(n,i),s=xv(n,i,a,l);if(l)return ug(t,(function(e){return(Vm(e)&s)===s}));var f=Hm(ou(o.map((function(e){return M(t,e)||t}))),s);return Hm(pg(t,L(f)),s)}(a,r.switchStatement,r.clauseStart,r.clauseEnd):(W&&(Mm(n,t)?a=O(a,r.switchStatement,r.clauseStart,r.clauseEnd,(function(e){return!(163840&e.flags)})):213===n.kind&&Mm(n.expression,t)&&(a=O(a,r.switchStatement,r.clauseStart,r.clauseEnd,(function(e){return!(131072&e.flags||128&e.flags&&"undefined"===e.value)})))),w(n,a)&&(a=T(a,n,(function(e){return R(e,r.switchStatement,r.clauseStart,r.clauseEnd)})))),vg(a,hg(i))}function k(t){for(var i,a=[],o=!1,s=!1,c=0,l=t.antecedents;c<l.length;c++){var u=l[c];if(!i&&128&u.flags&&u.clauseStart===u.clauseEnd)i=u;else{if((p=yg(d=f(u)))===r&&r===n)return p;e.pushIfUnique(a,p),sg(p,r)||(o=!0),hg(d)&&(s=!0)}}if(i){var d,p=yg(d=f(i));if(!e.contains(a,p)&&!Ev(i.switchStatement)){if(p===r&&r===n)return p;a.push(p),sg(p,r)||(o=!0),hg(d)&&(s=!0)}}return vg(D(a,o?2:1),s)}function x(t){var n=Um(t),i=zr[n]||(zr[n]=new e.Map),a=p();if(!a)return r;var o=i.get(a);if(o)return o;for(var s=Sr;s<Dr;s++)if(Ur[s]===t&&qr[s]===a&&Jr[s].length)return vg(D(Jr[s],1),!0);for(var c,l=[],u=!1,d=0,m=t.antecedents;d<m.length;d++){var g=m[d],_=void 0;if(c){Ur[Dr]=t,qr[Dr]=a,Jr[Dr]=l,Dr++;var h=nr;nr=void 0,_=f(g),nr=h,Dr--;var y=i.get(a);if(y)return y}else _=c=f(g);var v=yg(_);if(e.pushIfUnique(l,v),sg(v,r)||(u=!0),v===r)break}var b=D(l,u?2:1);return hg(c)?vg(b,!0):(i.set(a,b),b)}function D(t,n){if(function(t){for(var r=!1,n=0,i=t;n<i.length;n++){var a=i[n];if(!(131072&a.flags)){if(!(256&e.getObjectFlags(a)))return!1;r=!0}}return r}(t))return bg(ou(e.map(t,Sg)));var i=ou(e.sameMap(t,Eg),n);return i!==r&&i.flags&r.flags&1048576&&e.arraysEqual(i.types,r.types)?r:i}function w(n,i){var a=1048576&r.flags?r:i;if(!(1048576&a.flags&&e.isAccessExpression(n)))return!1;var o=Om(n);return void 0!==o&&(Im(t,n.expression)&&Lm(a,o))}function T(t,r,n){var i=Om(r);if(void 0===i)return t;var a=W&&Rv(t,98304)&&e.isOptionalChain(r),o=Na(a?Hm(t,2097152):t,i);if(!o)return t;var s=n(o=a?Nf(o):o);return ug(t,(function(e){var t=function(e,t){return Na(e,t)||R_(t)&&kc(e,1)||kc(e,0)||Ae}(e,i);return!(131072&t.flags)&&up(t,s)}))}function C(e,r,n){return Im(t,r)?Hm(e,n?4194304:8388608):(W&&n&&Mm(r,t)&&(e=Hm(e,2097152)),w(r,e)?T(e,r,(function(e){return Hm(e,n?4194304:8388608)})):e)}function A(t,r,n){if(1572864&t.flags||Lu(t)||2097152&t.flags&&e.every(t.types,(function(e){return e.symbol!==ae}))){var i=e.escapeLeadingUnderscores(r.text);return ug(t,(function(e){return function(e,t,r){if(bc(e,0))return!0;var n=gc(e,t);return n?!!(16777216&n.flags)||r:!r}(e,i,n)}))}return t}function N(r,n,i){switch(n.operatorToken.kind){case 62:case 74:case 75:case 76:return C(q(r,n.right,i),n.left,i);case 34:case 35:case 36:case 37:var a=n.operatorToken.kind,o=rg(n.left),s=rg(n.right);if(213===o.kind&&e.isStringLiteralLike(s))return F(r,o,a,s,i);if(213===s.kind&&e.isStringLiteralLike(o))return F(r,s,a,o,i);if(Im(t,o))return I(r,a,s,i);if(Im(t,s))return I(r,a,o,i);if(W&&(Mm(o,t)?r=P(r,a,s,i):Mm(s,t)&&(r=P(r,a,o,i))),w(o,r))return T(r,o,(function(e){return I(e,a,s,i)}));if(w(s,r))return T(r,s,(function(e){return I(e,a,o,i)}));if(j(o))return B(r,a,s,i);if(j(s))return B(r,a,o,i);break;case 102:return function(r,n,i){var a=rg(n.left);if(!Im(t,a))return i&&W&&Mm(a,t)?Hm(r,2097152):r;var o,s=ub(n.right);if(!lp(s,vt))return r;var c=gc(s,"prototype");if(c){var l=_o(c);Pa(l)||(o=l)}if(Pa(r)&&(o===yt||o===vt))return r;if(!o){var u=hc(s,1);o=u.length?ou(e.map(u,(function(e){return Bc(Kc(e))}))):nt}if(!i&&1048576&s.flags){if(!e.find(s.types,(function(e){return!Do(e)})))return r}return z(r,o,i,lp)}(r,n,i);case 101:var c=rg(n.right);if(e.isStringLiteralLike(n.left)&&Im(t,c))return A(r,n.left,i);break;case 27:return q(r,n.right,i)}return r}function P(e,t,r,n){var i=34===t||36===t,a=34===t||35===t?98304:32768,o=ub(r);return i!==n&&lg(o,(function(e){return!!(e.flags&a)}))||i===n&&lg(o,(function(e){return!(e.flags&(3|a))}))?Hm(e,2097152):e}function I(e,t,r,n){if(1&e.flags)return e;35!==t&&37!==t||(n=!n);var i=ub(r);if(2&e.flags&&n&&(36===t||37===t))return 67239932&i.flags?i:524288&i.flags?Ye:e;if(98304&i.flags)return W?Hm(e,34===t||35===t?n?262144:2097152:65536&i.flags?n?131072:1048576:n?65536:524288):e;if(n)return _g(ug(e,34===t?function(e){return dp(e,i)||(t=i,!!(524&e.flags)&&!!(28&t.flags));var t}:function(e){return dp(e,i)}),i);if(pf(i)){var a=gd(i);return ug(e,(function(e){return pf(e)?!dp(e,i):gd(e)!==a}))}return e}function F(e,r,n,i,a){35!==n&&37!==n||(a=!a);var o=rg(r.expression);if(!Im(t,o))return W&&Mm(o,t)&&a===("undefined"!==i.text)?Hm(e,2097152):e;if(1&e.flags&&"function"===i.text)return e;if(a&&2&e.flags&&"object"===i.text){if(218===r.parent.parent.kind){var s=r.parent.parent;if(55===s.operatorToken.kind&&s.right===r.parent&&Fm(t,s.left))return Ye}return ou([Ye,Fe])}var c=a?E.get(i.text)||128:S.get(i.text)||32768,l=M(e,i.text);return Hm(a&&l?pg(e,L(l)):e,c)}function O(t,r,n,i,a){return n!==i&&e.every(ag(r).slice(n,i),a)?Hm(t,2097152):t}function R(t,r,n,i){var a=ag(r);if(!a.length)return t;var o=a.slice(n,i),s=n===i||e.contains(o,He);if(2&t.flags&&!s){for(var c=void 0,l=0;l<o.length;l+=1){var u=o[l];if(67239932&u.flags)void 0!==c&&c.push(u);else{if(!(524288&u.flags))return t;void 0===c&&(c=o.slice(0,l)),c.push(Ye)}}return ou(void 0===c?o:c)}var d=ou(o),p=131072&d.flags?He:_g(ug(t,(function(e){return dp(d,e)})),d);if(!s)return p;var f=ug(t,(function(t){return!(pf(t)&&e.contains(a,gd(t)))}));return 131072&p.flags?f:ou([p,f])}function M(e,t){switch(t){case"function":return 1&e.flags?e:vt;case"object":return 2&e.flags?ou([Ye,Fe]):e;default:return en.get(t)}}function L(e){return function(t){if(sp(t,e))return t;if(sp(e,t))return e;if(465829888&t.flags){var r=Qs(t)||Ee;if(sp(e,r))return fu([t,e])}return t}}function j(r){return(e.isPropertyAccessExpression(r)&&"constructor"===e.idText(r.name)||e.isElementAccessExpression(r)&&e.isStringLiteralLike(r.argumentExpression)&&"constructor"===r.argumentExpression.text)&&Im(t,r.expression)}function B(t,r,n,i){if(i?34!==r&&36!==r:35!==r&&37!==r)return t;var a=ub(n);if(!DE(a)&&!Do(a))return t;var o=gc(a,"prototype");if(!o)return t;var s=_o(o),c=Pa(s)?void 0:s;return c&&c!==yt&&c!==vt?Pa(t)?c:ug(t,(function(t){return function(t,r){if(524288&t.flags&&1&e.getObjectFlags(t)||524288&r.flags&&1&e.getObjectFlags(r))return t.symbol===r.symbol;return sp(t,r)}(t,c)})):t}function z(e,t,r,n){if(!r)return ug(e,(function(e){return!n(e,t)}));if(1048576&e.flags){var i=ug(e,(function(e){return n(e,t)}));if(!(131072&i.flags))return i}return sp(t,e)?t:cp(e,t)?e:cp(t,e)?t:fu([e,t])}function U(r,n,i,a){if(n.type&&(!Pa(r)||n.type!==yt&&n.type!==vt)){var o=function(t,r){if(1===t.kind||3===t.kind)return r.arguments[t.parameterIndex];var n=e.skipParentheses(r.expression);return e.isAccessExpression(n)?e.skipParentheses(n.expression):void 0}(n,i);if(o){if(Im(t,o))return z(r,n.type,a,sp);if(W&&a&&Mm(o,t)&&!(65536&Vm(n.type))&&(r=Hm(r,2097152)),w(o,r))return T(r,o,(function(e){return z(e,n.type,a,sp)}))}}return r}function q(r,n,i){if(e.isExpressionOfOptionalChainRoot(n)||e.isBinaryExpression(n.parent)&&60===n.parent.operatorToken.kind&&n.parent.left===n)return function(e,r,n){if(Im(t,r))return Hm(e,n?2097152:262144);if(w(r,e))return T(e,r,(function(e){return Hm(e,n?2097152:262144)}));return e}(r,n,i);switch(n.kind){case 78:case 108:case 106:case 202:case 203:return C(r,n,i);case 204:return function(r,n,i){if(zm(n,t)){var a=i||!e.isCallChain(n)?Cg(n):void 0,o=a&&jc(a);if(o&&(0===o.kind||1===o.kind))return U(r,o,n,i)}return r}(r,n,i);case 208:case 227:return q(r,n.expression,i);case 218:return N(r,n,i);case 216:if(53===n.operator)return q(r,n.operand,!i)}return r}}function Rg(t){return e.findAncestor(t.parent,(function(t){return e.isFunctionLike(t)&&!e.getImmediatelyInvokedFunctionExpression(t)||260===t.kind||300===t.kind||164===t.kind}))}function Mg(t){var r,n=e.getRootDeclaration(t.valueDeclaration).parent,i=Cn(n);return 8388608&i.flags||(i.flags|=8388608,r=n,e.findAncestor(r.parent,(function(t){return e.isFunctionLike(t)&&!!(8388608&Cn(t).flags)}))||Lg(n)),t.isAssigned||!1}function Lg(t){if(78===t.kind){if(e.isAssignmentTarget(t)){var r=Am(t);r.valueDeclaration&&161===e.getRootDeclaration(r.valueDeclaration).kind&&(r.isAssigned=!0)}}else e.forEachChild(t,Lg)}function jg(e){return 3&e.flags&&!!(2&lh(e))&&_o(e)!==Nt}function Bg(e){var t=e.parent;return 202===t.kind||204===t.kind&&t.expression===e||203===t.kind&&t.expression===e||199===t.kind&&t.name===e&&!!t.initializer}function zg(e){return 58982400&e.flags&&Rv(Qs(e)||Ae,98304)}function Ug(e,t){return e&&Bg(t)&&cg(e,zg)?pg(Hf(e),Zs):e}function qg(t){return!!e.findAncestor(t,(function(t){return t.parent&&e.isExportAssignment(t.parent)&&t.parent.expression===t&&e.isEntityNameExpression(t)}))}function Jg(t,r){if(ni(t,111551)&&!Nm(r)&&!ci(t)){var n=ai(t);111551&n.flags&&(J.isolatedModules||e.shouldPreserveConstEnums(J)&&qg(r)||!mE(n)?ui(t):function(e){var t=Tn(e);t.constEnumReferenced||(t.constEnumReferenced=!0)}(t))}}function Vg(r){var n=Am(r);if(n===ke)return we;if(function(r,n){if(r.virtual||!t.getTagNameNeededCheckByFile)return;var i=e.getSourceFileOfNode(r);if(!n||!n.valueDeclaration)return;var a=e.getSourceFileOfNode(n.valueDeclaration);if(!a)return;var o=t.getTagNameNeededCheckByFile(i.fileName,a.fileName);if(!o.needCheck)return;jy(n.getJsDocTags(),r,i,o.checkConfig)}(r,n),n===se){var i=e.getContainingFunction(r);return V<2&&(210===i.kind?pn(r,e.Diagnostics.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression):e.hasSyntacticModifier(i,256)&&pn(r,e.Diagnostics.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method)),Cn(i).flags|=8192,_o(n)}r.parent&&e.isPropertyAccessExpression(r.parent)&&r.parent.expression===r||Jg(n,r);var a=Ri(n),o=2097152&a.flags?ai(a):a;134217728&lh(o)&&Nu(r,o)&&hn(r,o.declarations,r.escapedText);var s=a.valueDeclaration;if(32&a.flags)if(254===s.kind&&e.nodeIsDecorated(s))for(i=e.getContainingClass(r);void 0!==i;){if(i===s&&i.name!==r){Cn(s).flags|=16777216,Cn(r).flags|=33554432;break}i=e.getContainingClass(i)}else if(223===s.kind)for(i=e.getThisContainer(r,!1);300!==i.kind;){if(i.parent===s){164===i.kind&&e.hasSyntacticModifier(i,32)&&(Cn(s).flags|=16777216,Cn(r).flags|=33554432);break}i=e.getThisContainer(i,!1)}!function(t,r){if(V>=2||!(34&r.flags)||e.isSourceFile(r.valueDeclaration)||290===r.valueDeclaration.parent.kind)return;var n=e.getEnclosingBlockScopeContainer(r.valueDeclaration),i=function(t,r){return!!e.findAncestor(t,(function(t){return t===r?"quit":e.isFunctionLike(t)}))}(t.parent,n),a=n,o=!1;for(;a&&!e.nodeStartsNewLexicalEnvironment(a);){if(e.isIterationStatement(a,!1)){o=!0;break}a=a.parent}if(o){if(i){var s=!0;if(e.isForStatement(n))if((d=e.getAncestor(r.valueDeclaration,252))&&d.parent===n){var c=function(t,r){return e.findAncestor(t,(function(e){return e===r?"quit":e===r.initializer||e===r.condition||e===r.incrementor||e===r.statement}))}(t.parent,n);if(c){var l=Cn(c);l.flags|=131072;var u=l.capturedBlockScopeBindings||(l.capturedBlockScopeBindings=[]);e.pushIfUnique(u,r),c===n.initializer&&(s=!1)}}s&&(Cn(a).flags|=65536)}var d;if(e.isForStatement(n))(d=e.getAncestor(r.valueDeclaration,252))&&d.parent===n&&function(t,r){var n=t;for(;208===n.parent.kind;)n=n.parent;var i=!1;if(e.isAssignmentTarget(n))i=!0;else if(216===n.parent.kind||217===n.parent.kind){var a=n.parent;i=45===a.operator||46===a.operator}if(!i)return!1;return!!e.findAncestor(n,(function(e){return e===r?"quit":e===r.statement}))}(t,n)&&(Cn(r.valueDeclaration).flags|=4194304);Cn(r.valueDeclaration).flags|=524288}i&&(Cn(r.valueDeclaration).flags|=262144)}(r,n);var c=Ug(_o(a),r),l=e.getAssignmentTargetKind(r);if(l){if(!(3&a.flags||e.isInJSFile(r)&&512&a.flags))return pn(r,e.Diagnostics.Cannot_assign_to_0_because_it_is_not_a_variable,la(n)),we;if(Nv(a))return 3&a.flags?pn(r,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_constant,la(n)):pn(r,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,la(n)),we}var u=2097152&a.flags;if(3&a.flags){if(1===l)return c}else{if(!u)return c;s=e.find(n.declarations,B)}if(!s)return c;for(var d=161===e.getRootDeclaration(s).kind,p=Rg(s),f=Rg(r),m=f!==p,g=r.parent&&r.parent.parent&&e.isSpreadAssignment(r.parent)&&Xm(r.parent.parent),_=134217728&n.flags;f!==p&&(209===f.kind||210===f.kind||e.isObjectLiteralOrClassExpressionMethod(f))&&(jg(a)||d&&!Mg(a));)f=Rg(f);var h=d||u||m||g||_||e.isBindingElement(s)||c!==Se&&c!==Nt&&(!W||!!(16387&c.flags)||Nm(r)||273===r.parent.kind)||227===r.parent.kind||251===s.kind&&s.exclamationToken||8388608&s.flags,y=h?d?function(e,t){if(Da(t.symbol,2)){var r=W&&161===t.kind&&t.initializer&&32768&wf(e)&&!(32768&wf(fb(t.initializer)));return Ca(),r?Hm(e,524288):e}return go(t.symbol),e}(c,s):c:c===Se||c===Nt?Ne:Nf(c),v=Og(r,c,y,f,!h);if(Dg(r)||c!==Se&&c!==Nt){if(!h&&!(32768&wf(c))&&32768&wf(v))return pn(r,e.Diagnostics.Variable_0_is_used_before_being_assigned,la(n)),c}else if(v===Se||v===Nt)return X&&(pn(e.getNameOfDeclaration(s),e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,la(n),da(v)),pn(r,e.Diagnostics.Variable_0_implicitly_has_an_1_type,la(n),da(v))),vk(v);return l?mf(v):v}function Hg(e,t){(Cn(e).flags|=2,164===t.kind||167===t.kind)?Cn(t.parent).flags|=4:Cn(t).flags|=4}function Kg(t){return e.isSuperCall(t)?t:e.isFunctionLike(t)?void 0:e.forEachChild(t,Kg)}function Wg(e){return Ao(Jo(Ai(e)))===Oe}function Gg(t,r,n){var i=r.parent;e.getClassExtendsHeritageElement(i)&&!Wg(i)&&t.flowNode&&!Fg(t.flowNode,!1)&&pn(t,n)}function $g(t){var r=e.getThisContainer(t,!0),n=!1;switch(167===r.kind&&Gg(t,r,e.Diagnostics.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class),210===r.kind&&(r=e.getThisContainer(r,!1),n=!0),r.kind){case 259:pn(t,e.Diagnostics.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 258:pn(t,e.Diagnostics.this_cannot_be_referenced_in_current_location);break;case 167:Xg(t,r)&&pn(t,e.Diagnostics.this_cannot_be_referenced_in_constructor_arguments);break;case 164:case 163:!e.hasSyntacticModifier(r,32)||99===J.target&&J.useDefineForClassFields||pn(t,e.Diagnostics.this_cannot_be_referenced_in_a_static_property_initializer);break;case 159:pn(t,e.Diagnostics.this_cannot_be_referenced_in_a_computed_property_name)}n&&V<2&&Hg(t,r);var i=Yg(t,!0,r);if(Q){var a=_o(ae);if(i===a&&n)pn(t,e.Diagnostics.The_containing_arrow_function_captures_the_global_value_of_this);else if(!i){var o=pn(t,e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!e.isSourceFile(r)){var s=Yg(r);s&&s!==a&&e.addRelatedInfo(o,e.createDiagnosticForNode(r,e.Diagnostics.An_outer_value_of_this_is_shadowed_by_this_container))}}}return i||Ee}function Yg(t,r,n){void 0===r&&(r=!0),void 0===n&&(n=e.getThisContainer(t,!1));var i=e.isInJSFile(t);if(e.isFunctionLike(n)&&(!i_(t)||e.getThisParameter(n))){var a=co(n)||i&&function(t){var r=e.getJSDocType(t);if(r&&311===r.kind){var n=r;if(n.parameters.length>0&&n.parameters[0].name&&"this"===n.parameters[0].name.escapedText)return xd(n.parameters[0].type)}var i=e.getJSDocThisTag(t);if(i&&i.typeExpression)return xd(i.typeExpression)}(n);if(!a){var o=function(t){if(209===t.kind&&e.isBinaryExpression(t.parent)&&3===e.getAssignmentDeclarationKind(t.parent))return t.parent.left.expression.expression;if(166===t.kind&&201===t.parent.kind&&e.isBinaryExpression(t.parent.parent)&&6===e.getAssignmentDeclarationKind(t.parent.parent))return t.parent.parent.left.expression;if(209===t.kind&&291===t.parent.kind&&201===t.parent.parent.kind&&e.isBinaryExpression(t.parent.parent.parent)&&6===e.getAssignmentDeclarationKind(t.parent.parent.parent))return t.parent.parent.parent.left.expression;if(209===t.kind&&e.isPropertyAssignment(t.parent)&&e.isIdentifier(t.parent.name)&&("value"===t.parent.name.escapedText||"get"===t.parent.name.escapedText||"set"===t.parent.name.escapedText)&&e.isObjectLiteralExpression(t.parent.parent)&&e.isCallExpression(t.parent.parent.parent)&&t.parent.parent.parent.arguments[2]===t.parent.parent&&9===e.getAssignmentDeclarationKind(t.parent.parent.parent))return t.parent.parent.parent.arguments[0].expression;if(e.isMethodDeclaration(t)&&e.isIdentifier(t.name)&&("value"===t.name.escapedText||"get"===t.name.escapedText||"set"===t.name.escapedText)&&e.isObjectLiteralExpression(t.parent)&&e.isCallExpression(t.parent.parent)&&t.parent.parent.arguments[2]===t.parent&&9===e.getAssignmentDeclarationKind(t.parent.parent))return t.parent.parent.arguments[0].expression}(n);if(i&&o){var s=fb(o).symbol;s&&s.members&&16&s.flags&&(a=Jo(s).thisType)}else Fy(n)&&(a=Jo(Ci(n.symbol)).thisType);a||(a=t_(n))}if(a)return Og(t,a)}if(e.isClassLike(n.parent)){var c=Ai(n.parent);return Og(t,e.hasSyntacticModifier(n,32)?_o(c):Jo(c).thisType)}if(e.isSourceFile(n)){if(n.commonJsModuleIndicator){var l=Ai(n);return l&&_o(l)}if(n.externalModuleIndicator)return Ne;if(r)return _o(ae)}}function Xg(t,r){return!!e.findAncestor(t,(function(t){return e.isFunctionLikeDeclaration(t)?"quit":161===t.kind&&t.parent===r}))}function Qg(t){var r=204===t.parent.kind&&t.parent.expression===t,n=e.getSuperContainer(t,!0),i=n,a=!1;if(!r)for(;i&&210===i.kind;)i=e.getSuperContainer(i,!0),a=V<2;var o=function(t){if(!t)return!1;if(r)return 167===t.kind;if(e.isClassLike(t.parent)||201===t.parent.kind)return e.hasSyntacticModifier(t,32)?166===t.kind||165===t.kind||168===t.kind||169===t.kind:166===t.kind||165===t.kind||168===t.kind||169===t.kind||164===t.kind||163===t.kind||167===t.kind;return!1}(i),s=0;if(!o){var c=e.findAncestor(t,(function(e){return e===i?"quit":159===e.kind}));return c&&159===c.kind?pn(t,e.Diagnostics.super_cannot_be_referenced_in_a_computed_property_name):r?pn(t,e.Diagnostics.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):i&&i.parent&&(e.isClassLike(i.parent)||201===i.parent.kind)?pn(t,e.Diagnostics.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class):pn(t,e.Diagnostics.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions),we}if(r||167!==n.kind||Gg(t,i,e.Diagnostics.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),s=e.hasSyntacticModifier(i,32)||r?512:256,Cn(t).flags|=s,166===i.kind&&e.hasSyntacticModifier(i,256)&&(e.isSuperProperty(t.parent)&&e.isAssignmentTarget(t.parent)?Cn(i).flags|=4096:Cn(i).flags|=2048),a&&Hg(t.parent,i),201===i.parent.kind)return V<2?(pn(t,e.Diagnostics.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),we):Ee;var l=i.parent;if(!e.getClassExtendsHeritageElement(l))return pn(t,e.Diagnostics.super_can_only_be_referenced_in_a_derived_class),we;var u=Jo(Ai(l)),d=u&&Po(u)[0];return d?167===i.kind&&Xg(t,i)?(pn(t,e.Diagnostics.super_cannot_be_referenced_in_constructor_arguments),we):512===s?Ao(u):ls(d,u.thisType):we}function Zg(t){return 4&e.getObjectFlags(t)&&t.target===Ct?ll(t)[0]:void 0}function e_(t){return pg(t,(function(t){return 2097152&t.flags?e.forEach(t.types,Zg):Zg(t)}))}function t_(t){if(210!==t.kind){if(tp(t)){var r=A_(t);if(r){var n=r.thisParameter;if(n)return _o(n)}}var i=e.isInJSFile(t);if(Q||i){var a=function(e){return 166!==e.kind&&168!==e.kind&&169!==e.kind||201!==e.parent.kind?209===e.kind&&291===e.parent.kind?e.parent.parent:void 0:e.parent}(t);if(a){for(var o=v_(a),s=a,c=o;c;){var l=e_(c);if(l)return Wd(l,im(E_(a)));if(291!==s.parent.kind)break;c=v_(s=s.parent.parent)}return Hf(o?Pf(o):$v(a))}var u=e.walkUpParenthesizedExpressions(t.parent);if(218===u.kind&&62===u.operatorToken.kind){var d=u.left;if(e.isAccessExpression(d)){var p=d.expression;if(i&&e.isIdentifier(p)){var f=e.getSourceFileOfNode(u);if(f.commonJsModuleIndicator&&Am(p)===f.symbol)return}return Hf($v(p))}}}}}function r_(t){var r=t.parent;if(tp(r)){var n=e.getImmediatelyInvokedFunctionExpression(r);if(n&&n.arguments){var i=dy(n),a=r.parameters.indexOf(t);if(t.dotDotDotToken)return ay(i,a,i.length,Ee,void 0,0);var o=Cn(n),s=o.resolvedSignature;o.resolvedSignature=lr;var c=a<i.length?gf(fb(i[a])):t.initializer?void 0:Pe;return o.resolvedSignature=s,c}var l=A_(r);if(l){var u=r.parameters.indexOf(t)-(e.getThisParameter(r)?1:0);return t.dotDotDotToken&&e.lastOrUndefined(r.parameters)===t?av(l,u):iv(l,u)}}}function n_(t){var r=e.getEffectiveTypeAnnotationNode(t);if(r)return xd(r);switch(t.kind){case 161:return r_(t);case 199:return function(t){var r=t.parent.parent,n=t.propertyName||t.name,i=n_(r)||199!==r.kind&&r.initializer&&Yv(r);if(!i||e.isBindingPattern(n)||e.isComputedNonLiteralName(n))return;if(198===r.name.kind){var a=e.indexOfNode(t.parent.elements,t);if(a<0)return;return g_(i,a)}var o=vu(n);if(Zo(o)){return Na(i,is(o))}}(t);case 164:if(e.hasSyntacticModifier(t,32))return function(t){var r=e.isExpression(t.parent)&&x_(t.parent);return r?p_(r,Ai(t).escapedName):void 0}(t)}}function i_(t){for(var r=!1;t.parent&&!e.isFunctionLike(t.parent);){if(e.isParameter(t.parent)&&(r||t.parent.initializer===t))return!0;e.isBindingElement(t.parent)&&t.parent.initializer===t&&(r=!0),t=t.parent}return!1}function a_(t,r){var n=!!(2&e.getFunctionFlags(r)),i=o_(r);if(i)return tx(t,i,n)||void 0}function o_(e){var t=zc(e);if(t)return t;var r=C_(e);return r&&!Uc(r)?Bc(r):void 0}function s_(e,t){var r=dy(e).indexOf(t);return-1===r?void 0:c_(e,r)}function c_(t,r){var n=Cn(t).resolvedSignature===dr?dr:Iy(t);return e.isJsxOpeningLikeElement(t)&&0===r?S_(n,t):nv(n,r)}function l_(t,r){var n=t.parent,i=n.left,a=n.operatorToken,o=n.right;switch(a.kind){case 62:case 75:case 74:case 76:return t===o?function(t){var r=e.getAssignmentDeclarationKind(t);switch(r){case 0:return ub(t.left);case 5:case 1:case 6:case 3:if(u_(t,r))return d_(t,r);if(t.left.symbol){var n=t.left.symbol.valueDeclaration;if(!n)return;var i=e.cast(t.left,e.isAccessExpression),a=e.getEffectiveTypeAnnotationNode(n);if(a)return xd(a);if(e.isIdentifier(i.expression)){var o=i.expression,s=Fn(o,o.escapedText,111551,void 0,o.escapedText,!0);if(s){var c=s.valueDeclaration&&e.getEffectiveTypeAnnotationNode(s.valueDeclaration);if(c){var l=e.getElementOrPropertyAccessName(i);if(void 0!==l)return p_(xd(c),l)}return}}return e.isInJSFile(n)?void 0:ub(t.left)}return ub(t.left);case 2:case 4:return d_(t,r);case 7:case 8:case 9:return e.Debug.fail("Does not apply");default:return e.Debug.assertNever(r)}}(n):void 0;case 56:case 60:var s=x_(n,r);return t===o&&(s&&s.pattern||!s&&!e.isDefaultedExpandoInitializer(n))?ub(i):s;case 55:case 27:return t===o?x_(n,r):void 0;default:return}}function u_(t,r){if(void 0===r&&(r=e.getAssignmentDeclarationKind(t)),4===r)return!0;if(!e.isInJSFile(t)||5!==r||!e.isIdentifier(t.left.expression))return!1;var n=t.left.expression.escapedText,i=Fn(t.left,n,111551,void 0,void 0,!0,!0);return e.isThisInitializedDeclaration(null==i?void 0:i.valueDeclaration)}function d_(t,r){if(!t.symbol)return ub(t.left);if(t.symbol.valueDeclaration){var n=e.getEffectiveTypeAnnotationNode(t.symbol.valueDeclaration);if(n){var i=xd(n);if(i)return i}}if(2!==r){var a=e.cast(t.left,e.isAccessExpression);if(e.isObjectLiteralMethod(e.getThisContainer(a.expression,!1))){var o=$g(a.expression),s=e.getElementOrPropertyAccessName(a);return void 0!==s&&p_(o,s)||void 0}}}function p_(t,r){return pg(t,(function(t){if(zs(t)){var n=Ps(t),i=Qs(n)||n,a=hd(e.unescapeLeadingUnderscores(r));if(cp(a,i))return Uu(t,a)}else if(3670016&t.flags){var o=gc(t,r);if(o)return c=o,262144&e.getCheckFlags(c)&&!c.type&&wa(c,0)>=0?void 0:_o(o);if(vf(t)){var s=xf(t);if(s&&R_(r)&&+r>=0)return s}return R_(r)&&f_(t,1)||f_(t,0)}var c}),!0)}function f_(e,t){return pg(e,(function(e){return vc(e,t)}),!0)}function m_(e,t){var r=v_(e.parent,t);if(r){if(ns(e)){var n=p_(r,Ai(e).escapedName);if(n)return n}return F_(e.name)&&f_(r,1)||f_(r,0)}}function g_(e,t){return e&&(p_(e,""+t)||pg(e,(function(e){return Fk(1,e,Ne,void 0,!1)}),!0))}function __(t){var r=t.parent;return e.isJsxAttributeLike(r)?x_(t):e.isJsxElement(r)?function(t,r){var n=v_(t.openingElement.tagName),i=Q_(Y_(t));if(n&&!Pa(n)&&i&&""!==i){var a=e.getSemanticJsxChildren(t.children),o=a.indexOf(r),s=p_(n,i);return s&&(1===a.length?s:pg(s,(function(e){return sf(e)?qu(e,hd(o)):e}),!0))}}(r,t):void 0}function h_(t){if(e.isJsxAttribute(t)){var r=v_(t.parent);if(!r||Pa(r))return;return p_(r,t.name.escapedText)}return x_(t.parent)}function y_(e){switch(e.kind){case 10:case 8:case 9:case 14:case 110:case 95:case 104:case 78:case 151:return!0;case 202:case 208:return y_(e.expression);case 286:return!e.expression||y_(e.expression)}return!1}function v_(t,r){var n=b_(e.isObjectLiteralMethod(t)?function(t,r){if(e.Debug.assert(e.isObjectLiteralMethod(t)),!(16777216&t.flags))return m_(t,r)}(t,r):x_(t,r),t,r);if(n&&!(r&&2&r&&8650752&n.flags)){var i=pg(n,ac,!0);if(1048576&i.flags){if(e.isObjectLiteralExpression(t))return function(t,r){return Lp(r,e.map(e.filter(t.properties,(function(e){return!!e.symbol&&291===e.kind&&y_(e.initializer)&&Lm(r,e.symbol.escapedName)})),(function(e){return[function(){return fb(e.initializer)},e.symbol.escapedName]})),cp,r)}(t,i);if(e.isJsxAttributes(t))return function(t,r){return Lp(r,e.map(e.filter(t.properties,(function(e){return!!e.symbol&&283===e.kind&&Lm(r,e.symbol.escapedName)&&(!e.initializer||y_(e.initializer))})),(function(e){return[e.initializer?function(){return fb(e.initializer)}:function(){return ze},e.symbol.escapedName]})),cp,r)}(t,i)}return i}}function b_(t,r,n){if(t&&Rv(t,465829888)){var i=E_(r);if(i&&e.some(i.inferences,ab)){if(n&&1&n)return k_(t,i.nonFixingMapper);if(i.returnMapper)return k_(t,i.returnMapper)}}return t}function k_(t,r){return 465829888&t.flags?Wd(t,r):1048576&t.flags?ou(e.map(t.types,(function(e){return k_(e,r)})),0):2097152&t.flags?fu(e.map(t.types,(function(e){return k_(e,r)}))):t}function x_(t,r){if(16777216&t.flags);else{if(t.contextualType)return t.contextualType;var n=t.parent;switch(n.kind){case 251:case 161:case 164:case 163:case 199:return function(t,r){var n=t.parent;if(e.hasInitializer(n)&&t===n.initializer){var i=n_(n);if(i)return i;if(!(8&r)&&e.isBindingPattern(n.name))return eo(n.name,!0,!1)}}(t,r);case 210:case 244:return function(t){var r=e.getContainingFunction(t);if(r){var n=o_(r);if(n){var i=e.getFunctionFlags(r);if(1&i){var a=Bk(n,2&i?2:1,void 0);if(!a)return;n=a.returnType}if(2&i){var o=pg(n,Ub);return o&&ou([o,hv(o)])}return n}}}(t);case 221:return function(t){var r=e.getContainingFunction(t);if(r){var n=e.getFunctionFlags(r),i=o_(r);if(i)return t.asteriskToken?i:tx(0,i,!!(2&n))}}(n);case 215:return function(e,t){var r=x_(e,t);if(r){var n=Ub(r);return n&&ou([n,hv(n)])}}(n,r);case 204:case 211:if(100===n.expression.kind)return Re;case 205:return s_(n,t);case 207:case 226:return e.isConstTypeReference(n.type)?function(e){return x_(e)}(n):xd(n.type);case 218:return l_(t,r);case 291:case 292:return m_(n,r);case 293:return v_(n.parent,r);case 200:var i=n;return g_(v_(i,r),e.indexOfNode(i.elements,t));case 219:return function(e,t){var r=e.parent;return e===r.whenTrue||e===r.whenFalse?x_(r,t):void 0}(t,r);case 230:return e.Debug.assert(220===n.parent.kind),function(e,t){if(206===e.parent.kind)return s_(e.parent,t)}(n.parent,t);case 208:var a=e.isInJSFile(n)?e.getJSDocTypeTag(n):void 0;return a?xd(a.typeExpression.type):x_(n,r);case 227:return x_(n,r);case 286:return __(n);case 283:case 285:return h_(n);case 278:case 277:return function(t,r){if(e.isJsxOpeningElement(t)&&t.parent.contextualType&&4!==r)return t.parent.contextualType;return c_(t,0)}(n,r)}}}function E_(t){var r=e.findAncestor(t,(function(e){return!!e.inferenceContext}));return r&&r.inferenceContext}function S_(t,r){return 0!==sy(r)?function(e,t){var r=pv(e,Ae);r=D_(t,Y_(t),r);var n=W_(N.IntrinsicAttributes,t);n!==we&&(r=bs(n,r));return r}(t,r):function(t,r){var n=Y_(r),i=(o=n,X_(N.ElementAttributesPropertyNameContainer,o)),a=void 0===i?pv(t,Ae):""===i?Bc(t):function(e,t){if(e.unionSignatures){for(var r=[],n=0,i=e.unionSignatures;n<i.length;n++){var a=Bc(i[n]);if(Pa(a))return a;var o=Na(a,t);if(!o)return;r.push(o)}return fu(r)}var s=Bc(e);return Pa(s)?s:Na(s,t)}(t,i);var o;if(!a)return i&&e.length(r.attributes.properties)&&pn(r,e.Diagnostics.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,e.unescapeLeadingUnderscores(i)),Ae;if(Pa(a=D_(r,n,a)))return a;var s=a,c=W_(N.IntrinsicClassAttributes,r);if(c!==we){var l=Eo(c.symbol),u=Bc(t);s=bs(l?ol(c,Pc([u],l,Nc(l),e.isInJSFile(r))):c,s)}var d=W_(N.IntrinsicAttributes,r);return d!==we&&(s=bs(d,s)),s}(t,r)}function D_(t,r,n){var i,a=(i=r)&&Nn(i.exports,N.LibraryManagedAttributes,788968);if(a){var o=Jo(a),s=function(e){if(q_(e.tagName))return $c(Ay(e,t=th(e)));var t,r=$v(e.tagName);return 128&r.flags?(t=eh(r,e))?$c(Ay(e,t)):we:r}(t);if(524288&a.flags){var c=Tn(a).typeParameters;if(e.length(c)>=2)return pl(a,Pc([s,n],c,2,e.isInJSFile(t)))}if(e.length(o.typeParameters)>=2)return ol(o,Pc([s,n],o.typeParameters,2,e.isInJSFile(t)))}return n}function w_(t,r){var n=hc(t,0);if(1===n.length){var i=n[0];if(!function(t,r){for(var n=0;n<r.parameters.length;n++){var i=r.parameters[n];if(i.initializer||i.questionToken||i.dotDotDotToken||Dc(i))break}r.parameters.length&&e.parameterIsThisKeyword(r.parameters[0])&&n--;return!cv(t)&&ov(t)<n}(i,r))return i}}function T_(e){return 209===e.kind||210===e.kind}function C_(t){return T_(t)||e.isObjectLiteralMethod(t)?A_(t):void 0}function A_(t){e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t));var r=Fc(t);if(r)return r;var n=v_(t,1);if(n){if(!(1048576&n.flags))return w_(n,t);for(var i,a=0,o=n.types;a<o.length;a++){var s=w_(o[a],t);if(s)if(i){if(!ef(i[0],s,!1,!0,!0,ip))return;i.push(s)}else i=[s]}return i?1===i.length?i[0]:fs(i[0],i):void 0}}function N_(e){return 199===e.kind&&!!e.initializer||218===e.kind&&62===e.operatorToken.kind}function P_(t,r,n){for(var i=t.elements,a=i.length,o=[],s=[],c=v_(t),l=e.isAssignmentTarget(t),u=Zv(t),d=0;d<a;d++){var p=i[d];if(222===p.kind){V<2&&jE(p,J.downlevelIteration?1536:1024);var f=fb(p.expression,r,n);if(sf(f))o.push(f),s.push(8);else if(l){var m=kc(f,1)||Fk(65,f,Ne,void 0,!1)||Ae;o.push(m),s.push(4)}else o.push(Ik(33,f,Ne,p.expression)),s.push(4)}else{var g=eb(p,r,g_(c,o.length),n);o.push(g),s.push(1)}}return l?Hl(o,s):n||u||c&&cg(c,lf)?I_(Hl(o,s,u)):I_(jl(o.length?ou(e.sameMap(o,(function(e,t){return 8&s[t]?Vu(e,Me)||Ee:e})),2):W?Ge:Pe,u))}function I_(t){if(!(4&e.getObjectFlags(t)))return t;var r=t.literalType;return r||((r=t.literalType=sl(t)).objectFlags|=1114112),r}function F_(e){switch(e.kind){case 159:return function(e){return Mv(M_(e),296)}(e);case 78:return R_(e.escapedText);case 8:case 10:return R_(e.text);default:return!1}}function O_(e){return"Infinity"===e||"-Infinity"===e||"NaN"===e}function R_(e){return(+e).toString()===e}function M_(t){var r=Cn(t.expression);return r.resolvedType||(r.resolvedType=fb(t.expression),98304&r.resolvedType.flags||!Mv(r.resolvedType,402665900)&&!cp(r.resolvedType,Xe)?pn(t,e.Diagnostics.A_computed_property_name_must_be_of_type_string_number_symbol_or_any):qh(t.expression,r.resolvedType,!0)),r.resolvedType}function L_(t,r,n,i){for(var a,o,s,c=[],l=r;l<n.length;l++)(0===i||(a=n[l],o=void 0,s=void 0,s=null===(o=a.declarations)||void 0===o?void 0:o[0],R_(a.escapedName)||s&&e.isNamedDeclaration(s)&&F_(s.name)))&&c.push(_o(n[l]));return Qc(c.length?ou(c,2):Ne,Zv(t))}function j_(t){e.Debug.assert(!!(2097152&t.flags),"Should only get Alias here.");var r=Tn(t);if(!r.immediateTarget){var n=Vn(t);if(!n)return e.Debug.fail();r.immediateTarget=ri(n,!0)}return r.immediateTarget}function B_(t,r){var n=e.isAssignmentTarget(t);!function(t,r){for(var n=new e.Map,i=0,a=t.properties;i<a.length;i++){var o=a[i];if(293!==o.kind){var s=o.name;if(159===s.kind&&YE(s),292===o.kind&&!r&&o.objectAssignmentInitializer)return fS(o.equalsToken,e.Diagnostics.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern);if(79===s.kind)return fS(s,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies);if(o.modifiers)for(var c=0,l=o.modifiers;c<l.length;c++){var u=l[c];130===u.kind&&166===o.kind||fS(u,e.Diagnostics._0_modifier_cannot_be_used_here,e.getTextOfNode(u))}var d=void 0;switch(o.kind){case 292:ZE(o.exclamationToken,e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context);case 291:QE(o.questionToken,e.Diagnostics.An_object_member_cannot_be_declared_optional),8===s.kind&&_S(s),d=4;break;case 166:d=8;break;case 168:d=1;break;case 169:d=2;break;default:throw e.Debug.assertNever(o,"Unexpected syntax kind:"+o.kind)}if(!r){var p=e.getPropertyNameForPropertyNameNode(s);if(void 0===p)continue;var f=n.get(p);if(f)if(12&d&&12&f)fS(s,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(s));else{if(!(3&d&&3&f))return fS(s,e.Diagnostics.An_object_literal_cannot_have_property_and_accessor_with_the_same_name);if(3===f||d===f)return fS(s,e.Diagnostics.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);n.set(p,d|f)}else n.set(p,d)}}else if(r){var m=e.skipParentheses(o.expression);if(e.isArrayLiteralExpression(m)||e.isObjectLiteralExpression(m))return fS(o.expression,e.Diagnostics.A_rest_element_cannot_contain_a_binding_pattern)}}}(t,n);for(var i=W?e.createSymbolTable():void 0,a=e.createSymbolTable(),o=[],s=nt,c=v_(t),l=c&&c.pattern&&(197===c.pattern.kind||201===c.pattern.kind),u=Zv(t),d=u?8:0,p=e.isInJSFile(t)&&!e.isInJsonFile(t),f=e.getJSDocEnumTag(t),m=!c&&p&&!f,g=ee,_=!1,h=!1,y=!1,v=0,b=t.properties;v<b.length;v++){var k=b[v];k.name&&e.isComputedPropertyName(k.name)&&!e.isWellKnownSymbolSyntactically(k.name)&&M_(k.name)}for(var x=0,E=0,S=t.properties;E<S.length;E++){var D=S[E],w=Ai(D),T=D.name&&159===D.name.kind&&!e.isWellKnownSymbolSyntactically(D.name.expression)?M_(D.name):void 0;if(291===D.kind||292===D.kind||e.isObjectLiteralMethod(D)){var C=291===D.kind?tb(D,r):292===D.kind?eb(!n&&D.objectAssignmentInitializer?D.objectAssignmentInitializer:D.name,r):rb(D,r);if(p){var A=ja(D);A?(pp(C,A,D),C=A):f&&f.typeExpression&&pp(C,xd(f.typeExpression),D)}g|=3670016&e.getObjectFlags(C);var N=T&&Zo(T)?T:void 0,P=N?yn(4|w.flags,is(N),4096|d):yn(4|w.flags,w.escapedName,d);if(N&&(P.nameType=N),n)(291===D.kind&&N_(D.initializer)||292===D.kind&&D.objectAssignmentInitializer)&&(P.flags|=16777216);else if(l&&!(512&e.getObjectFlags(c))){var I=gc(c,w.escapedName);I?P.flags|=16777216&I.flags:J.suppressExcessPropertyErrors||bc(c,0)||pn(D.name,e.Diagnostics.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,la(w),da(c))}P.declarations=w.declarations,P.parent=w.parent,w.valueDeclaration&&(P.valueDeclaration=w.valueDeclaration),P.type=C,P.target=w,w=P,null==i||i.set(P.escapedName,P)}else{if(293===D.kind){if(V<2&&jE(D,2),o.length>0&&(s=ld(s,R(),t.symbol,g,u),o=[],a=e.createSymbolTable(),h=!1,y=!1),!z_(C=uc(fb(D.expression))))return pn(D,e.Diagnostics.Spread_types_may_only_be_created_from_object_types),we;i&&H_(C,i,D),s=ld(s,C,t.symbol,g,u),x=o.length;continue}e.Debug.assert(168===D.kind||169===D.kind),Lx(D)}!T||8576&T.flags?a.set(w.escapedName,w):cp(T,Xe)&&(cp(T,Me)?y=!0:h=!0,n&&(_=!0)),o.push(w)}if(l&&293!==t.parent.kind)for(var F=0,O=Hs(c);F<O.length;F++){P=O[F];a.get(P.escapedName)||gc(s,P.escapedName)||(16777216&P.flags||pn(P.valueDeclaration||P.bindingElement,e.Diagnostics.Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value),a.set(P.escapedName,P),o.push(P))}return s!==nt?(o.length>0&&(s=ld(s,R(),t.symbol,g,u),o=[],a=e.createSymbolTable(),h=!1,y=!1),pg(s,(function(e){return e===nt?R():e}))):R();function R(){var r=h?L_(t,x,o,0):void 0,i=y?L_(t,x,o,1):void 0,s=Wi(t.symbol,a,e.emptyArray,e.emptyArray,r,i);return s.objectFlags|=1048704|g,m&&(s.objectFlags|=16384),_&&(s.objectFlags|=512),n&&(s.pattern=t),s}}function z_(t){if(465829888&t.flags){var r=Qs(t);if(void 0!==r)return z_(r)}return!!(126615553&t.flags||117632&wf(t)&&z_(Tf(t))||3145728&t.flags&&e.every(t.types,z_))}function U_(t){return!e.stringContains(t,"-")}function q_(t){return 78===t.kind&&e.isIntrinsicJsxName(t.escapedText)}function J_(e,t){return e.initializer?eb(e.initializer,t):ze}function V_(e,t){for(var r=[],n=0,i=e.children;n<i.length;n++){var a=i[n];if(11===a.kind)a.containsOnlyTriviaWhiteSpaces||r.push(Re);else{if(286===a.kind&&!a.expression)continue;r.push(eb(a,t))}}return r}function H_(t,r,n){for(var i=0,a=Hs(t);i<a.length;i++){var o=a[i],s=r.get(o.escapedName),c=_o(o);if(s&&!Rv(c,98304)&&!(Rv(c,3)&&16777216&o.flags)){var l=pn(s.valueDeclaration,e.Diagnostics._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,e.unescapeLeadingUnderscores(s.escapedName));e.addRelatedInfo(l,e.createDiagnosticForNode(n,e.Diagnostics.This_spread_always_overwrites_this_property))}}}function K_(t,r){return function(t,r){for(var n,i=t.attributes,a=W?e.createSymbolTable():void 0,o=e.createSymbolTable(),s=it,c=!1,l=!1,u=4096,d=Q_(Y_(t)),p=0,f=i.properties;p<f.length;p++){var m=f[p],g=m.symbol;if(e.isJsxAttribute(m)){var _=J_(m,r);u|=3670016&e.getObjectFlags(_);var h=yn(4|g.flags,g.escapedName);h.declarations=g.declarations,h.parent=g.parent,g.valueDeclaration&&(h.valueDeclaration=g.valueDeclaration),h.type=_,h.target=g,o.set(h.escapedName,h),null==a||a.set(h.escapedName,h),m.name.escapedText===d&&(l=!0)}else e.Debug.assert(285===m.kind),o.size>0&&(s=ld(s,S(),i.symbol,u,!1),o=e.createSymbolTable()),Pa(_=uc($v(m.expression,r)))&&(c=!0),z_(_)?(s=ld(s,_,i.symbol,u,!1),a&&H_(_,a,m)):n=n?fu([n,_]):_}c||o.size>0&&(s=ld(s,S(),i.symbol,u,!1));var y=276===t.parent.kind?t.parent:void 0;if(y&&y.openingElement===t&&y.children.length>0){var v=V_(y,r);if(!c&&d&&""!==d){l&&pn(i,e.Diagnostics._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,e.unescapeLeadingUnderscores(d));var b=v_(t.attributes),k=b&&p_(b,d),x=yn(4,d);x.type=1===v.length?v[0]:k&&cg(k,lf)?Hl(v):jl(ou(v)),x.valueDeclaration=e.factory.createPropertySignature(void 0,e.unescapeLeadingUnderscores(d),void 0,void 0),e.setParent(x.valueDeclaration,i),x.valueDeclaration.symbol=x;var E=e.createSymbolTable();E.set(d,x),s=ld(s,Wi(i.symbol,E,e.emptyArray,e.emptyArray,void 0,void 0),i.symbol,u,!1)}}return c?Ee:n&&s!==it?fu([n,s]):n||(s===it?S():s);function S(){u|=ee;var t=Wi(i.symbol,o,e.emptyArray,e.emptyArray,void 0,void 0);return t.objectFlags|=1048704|u,t}}(t.parent,r)}function W_(e,t){var r=Y_(t),n=r&&Si(r),i=n&&Nn(n,e,788968);return i?Jo(i):we}function G_(t){var r=Cn(t);if(!r.resolvedSymbol){var n=W_(N.IntrinsicElements,t);if(n!==we){if(!e.isIdentifier(t.tagName))return e.Debug.fail();var i=gc(n,t.tagName.escapedText);return i?(r.jsxFlags|=1,r.resolvedSymbol=i):kc(n,0)?(r.jsxFlags|=2,r.resolvedSymbol=n.symbol):(pn(t,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.idText(t.tagName),"JSX."+N.IntrinsicElements),r.resolvedSymbol=ke)}return X&&pn(t,e.Diagnostics.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,e.unescapeLeadingUnderscores(N.IntrinsicElements)),r.resolvedSymbol=ke}return r.resolvedSymbol}function $_(t){var r=t&&e.getSourceFileOfNode(t),n=r&&Cn(r);if(!n||!1!==n.jsxImplicitImportContainer){if(n&&n.jsxImplicitImportContainer)return n.jsxImplicitImportContainer;var i=e.getJSXRuntimeImport(e.getJSXImplicitImportBase(J,r),J);if(i){var a=hi(t,i,e.getEmitModuleResolutionKind(J)===e.ModuleResolutionKind.Classic?e.Diagnostics.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:e.Diagnostics.Cannot_find_module_0_or_its_corresponding_type_declarations,t),o=a&&a!==ke?Ci(ii(a)):void 0;return n&&(n.jsxImplicitImportContainer=o||!1),o}}}function Y_(e){var t=e&&Cn(e);if(t&&t.jsxNamespace)return t.jsxNamespace;if(!t||!1!==t.jsxNamespace){var r=$_(e);if(!r||r===ke){var n=un(e);r=Fn(e,n,1920,void 0,n,!1)}if(r){var i=ii(Nn(Si(ii(r)),N.JSX,1920));if(i&&i!==ke)return t&&(t.jsxNamespace=i),i}t&&(t.jsxNamespace=!1)}var a=ii(Cl(N.JSX,1920,void 0));return a!==ke?a:void 0}function X_(t,r){var n=r&&Nn(r.exports,t,788968),i=n&&Jo(n),a=i&&Hs(i);if(a){if(0===a.length)return"";if(1===a.length)return a[0].escapedName;a.length>1&&pn(n.declarations[0],e.Diagnostics.The_global_type_JSX_0_may_not_have_more_than_one_property,e.unescapeLeadingUnderscores(t))}}function Q_(e){return X_(N.ElementChildrenAttributeNameContainer,e)}function Z_(t,r){if(4&t.flags)return[lr];if(128&t.flags){var n=eh(t,r);return n?[Ay(r,n)]:(pn(r,e.Diagnostics.Property_0_does_not_exist_on_type_1,t.value,"JSX."+N.IntrinsicElements),e.emptyArray)}var i=ac(t),a=hc(i,1);return 0===a.length&&(a=hc(i,0)),0===a.length&&1048576&i.flags&&(a=ys(e.map(i.types,(function(e){return Z_(e,r)})))),a}function eh(t,r){var n=W_(N.IntrinsicElements,r);if(n!==we){var i=t.value,a=gc(n,e.escapeLeadingUnderscores(i));if(a)return _o(a);var o=kc(n,0);return o||void 0}return Ee}function th(t){e.Debug.assert(q_(t.tagName));var r=Cn(t);if(!r.resolvedJsxElementAttributesType){var n=G_(t);return 1&r.jsxFlags?r.resolvedJsxElementAttributesType=_o(n):2&r.jsxFlags?r.resolvedJsxElementAttributesType=kc(Jo(n),0):r.resolvedJsxElementAttributesType=we}return r.resolvedJsxElementAttributesType}function rh(e){var t=W_(N.ElementClass,e);if(t!==we)return t}function nh(e){return W_(N.Element,e)}function ih(e){var t=nh(e);if(t)return ou([t,Fe])}function ah(t){var r,n=e.isJsxOpeningLikeElement(t);if(n&&function(t){KE(t,t.typeArguments);for(var r=new e.Map,n=0,i=t.attributes.properties;n<i.length;n++){var a=i[n];if(285!==a.kind){var o=a.name,s=a.initializer;if(r.get(o.escapedText))return fS(o,e.Diagnostics.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(r.set(o.escapedText,!0),s&&286===s.kind&&!s.expression)return fS(s,e.Diagnostics.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}}(t),r=t,0===(J.jsx||0)&&pn(r,e.Diagnostics.Cannot_use_JSX_unless_the_jsx_flag_is_provided),void 0===nh(r)&&X&&pn(r,e.Diagnostics.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist),!$_(t)){var i=Qr&&2===J.jsx?e.Diagnostics.Cannot_find_name_0:void 0,a=un(t),o=n?t.tagName:t,s=void 0;e.isJsxOpeningFragment(t)&&"null"===a||(s=Fn(o,a,111551,i,a,!0)),s&&(s.isReferenced=67108863,2097152&s.flags&&!ci(s)&&ui(s))}if(n){var c=t,l=Iy(c);Uy(l,t),function(t,r,n){if(1===t)(i=ih(n))&&Op(r,i,an,n.tagName,e.Diagnostics.Its_return_type_0_is_not_a_valid_JSX_element,o);else if(0===t)(a=rh(n))&&Op(r,a,an,n.tagName,e.Diagnostics.Its_instance_type_0_is_not_a_valid_JSX_element,o);else{var i=ih(n),a=rh(n);if(!i||!a)return;Op(r,ou([i,a]),an,n.tagName,e.Diagnostics.Its_element_type_0_is_not_a_valid_JSX_element,o)}function o(){var t=e.getTextOfNode(n.tagName);return e.chainDiagnosticMessages(void 0,e.Diagnostics._0_cannot_be_used_as_a_JSX_component,t)}}(sy(c),Bc(l),c)}}function oh(e,t,r){if(524288&e.flags){var n=Us(e);if(n.stringIndexInfo||n.numberIndexInfo&&R_(t)||Js(e,t)||r&&!U_(t))return!0}else if(3145728&e.flags&&sh(e))for(var i=0,a=e.types;i<a.length;i++){if(oh(a[i],t,r))return!0}return!1}function sh(t){return!!(524288&t.flags&&!(512&e.getObjectFlags(t))||67108864&t.flags||1048576&t.flags&&e.some(t.types,sh)||2097152&t.flags&&e.every(t.types,sh))}function ch(t,r){if(function(t){if(t.expression&&e.isCommaSequence(t.expression))fS(t.expression,e.Diagnostics.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}(t),t.expression){var n=fb(t.expression,r);return t.dotDotDotToken&&n!==Ee&&!rf(n)&&pn(t,e.Diagnostics.JSX_spread_child_must_be_an_array_type),n}return we}function lh(t){return t.valueDeclaration?e.getCombinedNodeFlags(t.valueDeclaration):0}function uh(t){if(8192&t.flags||4&e.getCheckFlags(t))return!0;if(e.isInJSFile(t.valueDeclaration)){var r=t.valueDeclaration.parent;return r&&e.isBinaryExpression(r)&&3===e.getAssignmentDeclarationKind(r)}}function dh(t,r,n,i){var a,o=e.getDeclarationModifierFlagsFromSymbol(i),s=158===t.kind?t.right:196===t.kind?t:t.name;if(r){if(V<2&&ph(i))return pn(s,e.Diagnostics.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(128&o)return pn(s,e.Diagnostics.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,la(i),da(Gp(i))),!1}if(128&o&&e.isThisProperty(t)&&ph(i)&&((a=e.getClassLikeDeclarationOfSymbol(Ni(i)))&&function(t){return!!e.findAncestor(t,(function(t){return!!(e.isConstructorDeclaration(t)&&e.nodeIsPresent(t.body)||e.isPropertyDeclaration(t))||!(!e.isClassLike(t)&&!e.isFunctionLikeDeclaration(t))&&"quit"}))}(t)))return pn(s,e.Diagnostics.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,la(i),e.getTextOfIdentifierOrLiteral(a.name)),!1;if(e.isPropertyAccessExpression(t)&&e.isPrivateIdentifier(t.name))return!!e.getContainingClass(t)||(pn(s,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),!1);if(!(24&o))return!0;if(8&o)return!!Wx(t,a=e.getClassLikeDeclarationOfSymbol(Ni(i)))||(pn(s,e.Diagnostics.Property_0_is_private_and_only_accessible_within_class_1,la(i),da(Gp(i))),!1);if(r)return!0;var c=Kx(t,(function(t){var r=Jo(Ai(t));return function(t,r){return Wp(r,(function(r){return!!(16&e.getDeclarationModifierFlagsFromSymbol(r))&&!vo(t,Gp(r))}))?void 0:t}(r,i)?r:void 0}));if(!c){var l=void 0;if(32&o||!(l=function(t){var r=e.getThisContainer(t,!1);return r&&e.isFunctionLike(r)?e.getThisParameter(r):void 0}(t))||!l.type)return pn(s,e.Diagnostics.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,la(i),da(Gp(i)||n)),!1;var u=xd(l.type);c=(262144&u.flags?Ws(u):u).target}return!!(32&o)||(262144&n.flags&&(n=n.isThisType?Ws(n):Qs(n)),!(!n||!vo(n,c))||(pn(s,e.Diagnostics.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1,la(i),da(c)),!1))}function ph(e){return!!Wp(e,(function(e){return!(8192&e.flags)}))}function fh(e,t){return vh(fb(e,t),e)}function mh(e){return!!(98304&(W?wf(e):e.flags))}function gh(e){return mh(e)?Pf(e):e}function _h(t,r){pn(t,32768&r?65536&r?e.Diagnostics.Object_is_possibly_null_or_undefined:e.Diagnostics.Object_is_possibly_undefined:e.Diagnostics.Object_is_possibly_null)}function hh(t,r){pn(t,32768&r?65536&r?e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_undefined:e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_null)}function yh(t,r,n){if(W&&2&t.flags)return pn(r,e.Diagnostics.Object_is_of_type_unknown),we;var i=98304&(W?wf(t):t.flags);if(i){n(r,i);var a=Pf(t);return 229376&a.flags?we:a}return t}function vh(e,t){return yh(e,t,_h)}function bh(t,r){var n=vh(t,r);return n!==we&&16384&n.flags&&pn(r,e.Diagnostics.Object_is_possibly_undefined),n}function kh(r,n){return 32!==n&&function(r){if(!t.getTagNameNeededCheckByFile)return;var n=e.getSourceFileOfNode(r),i=function(t){var r,n=t.name,i=fh(t.expression),a=e.getAssignmentTargetKind(t),o=ac(0!==a||Eh(t)?Hf(i):i);if(e.isPrivateIdentifier(n)){var s=Sh(n.escapedText,n);r=s?Dh(i,s):void 0}else if(!(r=gc(o,n.escapedText))){var c=e.getEtsComponentExpressionInnerExpressionStatementNode(t)||e.getRootEtsComponentInnerCallExpressionNode(t);c&&(r=function(t,r,n){var i,a,o,s,c,l=e.getSourceFileOfNode(t).locals;if(null==l?void 0:l.has(n.escapedText)){var u=null==l?void 0:l.get(n.escapedText),d=e.isIdentifier(r)?r.escapedText:e.isIdentifier(t.expression)?t.expression.escapedText:void 0;e.getEtsExtendDecoratorsComponentNames(null===(i=null==u?void 0:u.valueDeclaration)||void 0===i?void 0:i.decorators,J).find((function(e){return e===d}))&&(c=u),e.hasEtsStylesDecoratorNames(null===(a=null==u?void 0:u.valueDeclaration)||void 0===a?void 0:a.decorators,J)&&(c=u)}var p=null===(o=e.getContainingStruct(t))||void 0===o?void 0:o.symbol.members;if(null==p?void 0:p.has(n.escapedText)){var f=null==p?void 0:p.get(n.escapedText);e.hasEtsStylesDecoratorNames(null===(s=null==f?void 0:f.valueDeclaration)||void 0===s?void 0:s.decorators,J)&&(c=f)}return c}(t,c,n))}return r}(r);if(!i||!i.valueDeclaration)return;var a=e.getSourceFileOfNode(i.valueDeclaration);if(!a)return;var o=t.getTagNameNeededCheckByFile(n.fileName,a.fileName);if(!o.needCheck)return;e.isIdentifier(r.name)&&jy(i.getJsDocTags(),r.name,n,o.checkConfig)}(r),32&r.flags?function(e,t){var r=fb(e.expression,t),n=Mf(r,e.expression);return Rf(Th(e,e.expression,vh(n,e.expression),e.name),e,n!==r)}(r,n):Th(r,r.expression,fh(r.expression,n),r.name)}function xh(e){return Th(e,e.left,fh(e.left),e.right)}function Eh(t){for(;208===t.parent.kind;)t=t.parent;return e.isCallOrNewExpression(t.parent)&&t.parent.expression===t}function Sh(t,r){for(var n=e.getContainingClass(r);n;n=e.getContainingClass(n)){var i=n.symbol,a=e.getSymbolNameForPrivateIdentifier(i,t),o=i.members&&i.members.get(a)||i.exports&&i.exports.get(a);if(o)return o}}function Dh(e,t){return gc(e,t.escapedName)}function wh(t,r){return(qa(r)||e.isThisProperty(t)&&Ja(r))&&e.getThisContainer(t,!0)===Va(r)}function Th(r,n,i,a){var o,s,c,u,d=Cn(n).resolvedSymbol,p=e.getAssignmentTargetKind(r),f=ac(0!==p||Eh(r)?Hf(i):i);e.isPrivateIdentifier(a)&&jE(r,524288);var m,g,_=Pa(f)||f===Ke;if(e.isPrivateIdentifier(a)){var h=Sh(a.escapedText,a);if(_){if(h)return f;if(!e.getContainingClass(a))return fS(a,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),Ee}if(!(m=h?Dh(i,h):void 0)&&function(t,r,n){var i,a=Hs(t);a&&e.forEach(a,(function(t){var n=t.valueDeclaration;if(n&&e.isNamedDeclaration(n)&&e.isPrivateIdentifier(n.name)&&n.name.escapedText===r.escapedText)return i=t,!0}));var o=Ln(r);if(i){var s=i.valueDeclaration,c=e.getContainingClass(s);if(e.Debug.assert(!!c),n){var u=n.valueDeclaration,d=e.getContainingClass(u);if(e.Debug.assert(!!d),e.findAncestor(d,(function(e){return c===e}))){var p=pn(r,e.Diagnostics.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,o,da(t));return e.addRelatedInfo(p,e.createDiagnosticForNode(u,e.Diagnostics.The_shadowing_declaration_of_0_is_defined_here,o),e.createDiagnosticForNode(s,e.Diagnostics.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,o)),!0}}return pn(r,e.Diagnostics.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,o,Ln(c.name||l)),!0}return!1}(i,a,h))return we}else{if(_)return e.isIdentifier(n)&&d&&Jg(d,r),f;if(!(m=gc(f,a.escapedText))){var y=e.getEtsComponentExpressionInnerCallExpressionNode(r)||e.getRootEtsComponentInnerCallExpressionNode(r),v=e.getSourceFileOfNode(r).locals;if(y&&(null==v?void 0:v.has(a.escapedText))){var b=null==v?void 0:v.get(a.escapedText),k=78===y.expression.kind?y.expression.escapedText:void 0;e.getEtsExtendDecoratorComponentNames(null===(o=null==b?void 0:b.valueDeclaration)||void 0===o?void 0:o.decorators,J).find((function(e){return e===k}))&&(m=b),e.hasEtsStylesDecoratorNames(null===(s=null==b?void 0:b.valueDeclaration)||void 0===s?void 0:s.decorators,J)&&(m=b)}var x=null===(c=e.getContainingStruct(r))||void 0===c?void 0:c.symbol.members;if(y&&(null==x?void 0:x.has(a.escapedText))){var E=null==x?void 0:x.get(a.escapedText);e.hasEtsStylesDecoratorNames(null===(u=null==E?void 0:E.valueDeclaration)||void 0===u?void 0:u.decorators,J)&&(m=E)}}}if(e.isIdentifier(n)&&d&&(J.isolatedModules||!m||!mE(m)||e.shouldPreserveConstEnums(J)&&qg(r))&&Jg(d,r),m){if(134217728&lh(m)&&Nu(r,m)&&hn(a,m.declarations,a.escapedText),function(r,n,i){var a,o,s=r.valueDeclaration;if(!s||e.getSourceFileOfNode(n).isDeclarationFile)return;var c=e.idText(i);if(!function(t){return!!e.findAncestor(t,(function(t){switch(t.kind){case 164:return!0;case 291:case 166:case 168:case 169:case 293:case 159:case 230:case 286:case 283:case 284:case 285:case 278:case 225:case 289:return!1;default:return!e.isExpressionNode(t)&&"quit"}}))}(n)||e.isAccessExpression(n)&&e.isAccessExpression(n.expression)||Pn(s,i)||function(e){if(!(32&e.parent.flags))return!1;var t=_o(e.parent);for(;;){if(!(t=t.symbol&&Ah(t)))return!1;var r=gc(t,e.escapedName);if(r&&r.valueDeclaration)return!0}}(r))254!==s.kind||174===n.parent.kind||8388608&s.flags||Pn(s,i)||(o=pn(i,e.Diagnostics.Class_0_used_before_its_declaration,c));else{var l=!1;(null==r?void 0:r.valueDeclaration.decorators)&&(l=null===(a=t.getCompilerOptions().ets)||void 0===a?void 0:a.propertyDecorators.some((function(t){var n;return null===(n=null==r?void 0:r.valueDeclaration.decorators)||void 0===n?void 0:n.some((function(r){return!(!e.isIdentifier(r.expression)||t.name!==r.expression.escapedText.toString()||t.needInitialization)}))}))),l||(o=pn(i,e.Diagnostics.Property_0_is_used_before_its_initialization,c))}o&&e.addRelatedInfo(o,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_here,c))}(m,r,a),Lh(m,r,108===n.kind),Cn(r).resolvedSymbol=m,dh(r,106===n.kind,f,m),Pv(r,m,p))return pn(a,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,e.idText(a)),we;g=wh(r,m)?Se:Ug(_o(m),r)}else{var S=e.isPrivateIdentifier(a)||0!==p&&Ru(i)&&!Lu(i)?void 0:bc(f,0);if(!S||!S.type)return Cu(i)?Ee:i.symbol===ae?(ae.exports.has(a.escapedText)&&418&ae.exports.get(a.escapedText).flags?pn(a,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.unescapeLeadingUnderscores(a.escapedText),da(i)):X&&pn(a,e.Diagnostics.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature,da(i)),Ee):(a.escapedText&&!Bn(r)&&function(t,r){var n,i;if(!e.isPrivateIdentifier(t)&&1048576&r.flags&&!(131068&r.flags))for(var a=0,o=r.types;a<o.length;a++){var s=o[a];if(!gc(s,t.escapedText)&&!bc(s,0)){n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.declarationNameToString(t),da(s));break}}if(Nh(t.escapedText,r)){var c=e.declarationNameToString(t),l=da(r);n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,c,l,l+"."+c)}else{var u=Bb(r);if(u&&gc(u,t.escapedText))n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.declarationNameToString(t),da(r)),i=e.createDiagnosticForNode(t,e.Diagnostics.Did_you_forget_to_use_await);else{var d=e.declarationNameToString(t),p=da(r),f=function(t,r){var n=ac(r).symbol;if(!n)return;for(var i=e.getScriptTargetFeatures(),a=e.getOwnKeys(i),o=0,s=a;o<s.length;o++){var c=s[o],l=i[c][e.symbolName(n)];if(void 0!==l&&e.contains(l,t))return c}}(d,r);if(void 0!==f)n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later,d,p,f);else{var m=Ph(t,r);if(void 0!==m){var g=e.symbolName(m);n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,d,p,g),i=m.valueDeclaration&&e.createDiagnosticForNode(m.valueDeclaration,e.Diagnostics._0_is_declared_here,g)}else n=e.chainDiagnosticMessages(mc(n,r),e.Diagnostics.Property_0_does_not_exist_on_type_1,d,p)}}}var _=e.createDiagnosticForNodeFromMessageChain(t,n);i&&e.addRelatedInfo(_,i);Qr.add(_)}(a,Lu(i)?f:i),we);S.isReadonly&&(e.isAssignmentTarget(r)||e.isDeleteTarget(r))&&pn(r,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,da(f)),g=J.noUncheckedIndexedAccess&&!e.isAssignmentTarget(r)?ou([S.type,Ne]):S.type,J.noPropertyAccessFromIndexSignature&&e.isPropertyAccessExpression(r)&&pn(a,e.Diagnostics.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0,e.unescapeLeadingUnderscores(a.escapedText))}return Ch(r,m,g,a)}function Ch(t,r,n,i){var a=e.getAssignmentTargetKind(t);if(1===a||r&&!(98311&r.flags)&&!(8192&r.flags&&1048576&n.flags))return n;if(n===Se)return Ka(t,r);var o=!1;if(W&&Y&&e.isAccessExpression(t)&&108===t.expression.kind){var s=r&&r.valueDeclaration;if(s&&_x(s)){var c=Rg(t);167!==c.kind||c.parent!==s.parent||8388608&s.flags||(o=!0)}}else W&&r&&r.valueDeclaration&&e.isPropertyAccessExpression(r.valueDeclaration)&&e.getAssignmentDeclarationPropertyAccessKind(r.valueDeclaration)&&Rg(t)===Rg(r.valueDeclaration)&&(o=!0);var l=Og(t,n,o?Nf(n):n);return o&&!(32768&wf(n))&&32768&wf(l)?(pn(i,e.Diagnostics.Property_0_is_used_before_being_assigned,la(r)),n):a?mf(l):l}function Ah(e){var t=Po(e);if(0!==t.length)return fu(t)}function Nh(t,r){var n=r.symbol&&gc(_o(r.symbol),t);return void 0!==n&&n.valueDeclaration&&e.hasSyntacticModifier(n.valueDeclaration,32)}function Ph(t,r){return Mh(e.isString(t)?t:e.idText(t),Hs(r),111551)}function Ih(t,r){var n=e.isString(t)?t:e.idText(t),i=Hs(r),a="for"===n?e.find(i,(function(t){return"htmlFor"===e.symbolName(t)})):"class"===n?e.find(i,(function(t){return"className"===e.symbolName(t)})):void 0;return null!=a?a:Mh(n,i,111551)}function Fh(t,r){var n=Ph(t,r);return n&&e.symbolName(n)}function Oh(t,r,n){e.Debug.assert(void 0!==r,"outername should always be defined");var i=On(t,r,n,void 0,r,!1,!1,(function(t,n,i,a){return e.Debug.assertEqual(r,n,"name should equal outerName"),Nn(t,n,i,a)||Mh(e.unescapeLeadingUnderscores(n),e.arrayFrom(t.values()),i)}));return i}function Rh(t,r){return r.exports&&Mh(e.idText(t),xi(r),2623475)}function Mh(t,r,n){return e.getSpellingSuggestion(t,r,(function(t){var r=e.symbolName(t);if(e.startsWith(r,'"'))return;if(t.flags&n)return r;if(2097152&t.flags){var i=function(e){if(Tn(e).target!==xe)return ai(e)}(t);if(i&&i.flags&n)return r}return}))}function Lh(t,r,n){var i=t&&106500&t.flags&&t.valueDeclaration;if(i){var a=e.hasEffectiveModifier(i,8),o=e.isNamedDeclaration(t.valueDeclaration)&&e.isPrivateIdentifier(t.valueDeclaration.name);if((a||o)&&(!r||!e.isWriteOnlyAccess(r)||65536&t.flags)){if(n){var s=e.findAncestor(r,e.isFunctionLikeDeclaration);if(s&&s.symbol===t)return}(1&e.getCheckFlags(t)?Tn(t).target:t).isReferenced=67108863}}}function jh(t,r,n,i){if(i===we||Pa(i))return!0;var a=gc(i,n);if(a){if(e.isPropertyAccessExpression(t)&&a.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(a.valueDeclaration)){var o=e.getContainingClass(a.valueDeclaration);return!e.isOptionalChain(t)&&!!e.findAncestor(t,(function(e){return e===o}))}return dh(t,r,i,a)}return e.isInJSFile(t)&&!!(1048576&i.flags)&&i.types.some((function(e){return jh(t,r,n,e)}))}function Bh(t){var r=t.initializer;if(252===r.kind){var n=r.declarations[0];if(n&&!e.isBindingPattern(n.name))return Ai(n)}else if(78===r.kind)return Am(r)}function zh(e){return 32&e.flags?function(e){var t=fb(e.expression),r=Mf(t,e.expression);return Rf(Uh(e,vh(r,e.expression)),e,r!==t)}(e):Uh(e,fh(e.expression))}function Uh(t,r){var n=0!==e.getAssignmentTargetKind(t)||Eh(t)?Hf(r):r,i=t.argumentExpression,a=fb(i);if(n===we||n===Ke)return n;if(jv(n)&&!e.isStringLiteralLike(i))return pn(i,e.Diagnostics.A_const_enum_member_can_only_be_accessed_using_a_string_literal),we;var o=function(t){var r,n=e.skipParentheses(t);if(78===n.kind){var i=Am(n);if(3&i.flags)for(var a=t,o=t.parent;o;){if(240===o.kind&&a===o.statement&&Bh(o)===i&&kc(r=ub(o.expression),1)&&!kc(r,0))return!0;a=o,o=o.parent}}return!1}(i)?Me:a,s=Vu(n,o,void 0,t,16|(e.isAssignmentTarget(t)?2|(Ru(n)&&!Lu(n)?1:0):0))||we;return Ib(Ch(t,s.symbol,s,i),t)}function qh(t,r,n){if(r===we)return!1;if(!e.isWellKnownSymbolSyntactically(t))return!1;if(!(12288&r.flags))return n&&pn(t,e.Diagnostics.A_computed_property_name_of_the_form_0_must_be_of_type_symbol,e.getTextOfNode(t)),!1;var i=t.expression,a=Am(i);if(!a)return!1;var o=Nl(!0);return!!o&&(a===o||(n&&pn(i,e.Diagnostics.Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object),!1))}function Jh(t){return e.isCallOrNewExpression(t)||e.isTaggedTemplateExpression(t)||e.isJsxOpeningLikeElement(t)}function Vh(t){return Jh(t)&&e.forEach(t.typeArguments,Rx),206===t.kind?fb(t.template):e.isJsxOpeningLikeElement(t)?fb(t.attributes):162!==t.kind&&e.forEach(t.arguments,(function(e){fb(e)})),lr}function Hh(e){return Vh(e),ur}function Kh(e){return!!e&&(222===e.kind||229===e.kind&&e.isSpread)}function Wh(t){return e.findIndex(t,Kh)}function Gh(e){return!!(16384&e.flags)}function $h(e){return!!(49155&e.flags)}function Yh(t,r,n,i){var a;void 0===i&&(i=!1);var o=!1,s=ov(n),c=sv(n);if(206===t.kind)if(a=r.length,220===t.template.kind){var l=e.last(t.template.templateSpans);o=e.nodeIsMissing(l.literal)||!!l.literal.isUnterminated}else{var u=t.template;e.Debug.assert(14===u.kind),o=!!u.isUnterminated}else if(162===t.kind)a=py(t,n);else if(e.isJsxOpeningLikeElement(t)){if(o=t.attributes.end===t.end)return!0;a=0===c?r.length:1,s=0===r.length?s:1,c=Math.min(c,1)}else{if(!t.arguments)return e.Debug.assert(205===t.kind),0===sv(n);a=i?r.length+1:r.length,o=t.arguments.end===t.end;var d=Wh(r);if(d>=0)return d>=sv(n)&&(cv(n)||d<ov(n))}if(!cv(n)&&a>s)return!1;if(o||a>=c)return!0;for(var p=a;p<c;p++){if(131072&ug(nv(n,p),e.isInJSFile(t)&&!W?$h:Gh).flags)return!1}return!0}function Xh(t,r,n){var i=n?1:e.length(t.typeParameters),a=n?1:Nc(t.typeParameters);return!e.some(r)||r.length>=a&&r.length<=i}function Qh(e){return ey(e,0,!1)}function Zh(e){return ey(e,0,!1)||ey(e,1,!1)}function ey(e,t,r){if(524288&e.flags){var n=Us(e);if(r||0===n.properties.length&&!n.stringIndexInfo&&!n.numberIndexInfo){if(0===t&&1===n.callSignatures.length&&0===n.constructSignatures.length)return n.callSignatures[0];if(1===t&&1===n.constructSignatures.length&&0===n.callSignatures.length)return n.constructSignatures[0]}}}function ty(t,r,n,i){var a=Qf(t.typeParameters,t,0,i),o=lv(r),s=n&&(o&&262144&o.flags?n.nonFixingMapper:n.mapper);return Yf(s?jd(r,s):r,t,(function(e,t){ym(a.inferences,e,t)})),n||Xf(r,t,(function(e,t){ym(a.inferences,e,t,64)})),Jc(t,Tm(a),e.isInJSFile(r.declaration))}function ry(t){if(!t)return Ve;var r=fb(t);return e.isOptionalChainRoot(t.parent)?Pf(r):e.isOptionalChain(t.parent)?Of(r):r}function ny(t,r,n,i,a){if(e.isJsxOpeningLikeElement(t))return function(e,t,r,n){var i=S_(t,e),a=Gv(e.attributes,i,n,r);return ym(n.inferences,a,i),Tm(n)}(t,r,i,a);if(162!==t.kind){var o=x_(t,e.every(r.typeParameters,(function(e){return!!nc(e)}))?8:0);if(o){var s=E_(t),c=im(function(t,r){return void 0===r&&(r=0),t&&Zf(e.map(t.inferences,nm),t.signature,t.flags|r,t.compareTypes)}(s,1)),l=Wd(o,c),u=Qh(l),d=u&&u.typeParameters?$c(Vc(u,u.typeParameters)):l,p=Bc(r);ym(a.inferences,d,p,64);var f=Qf(r.typeParameters,r,a.flags),m=Wd(o,s&&s.returnMapper);ym(f.inferences,m,p),a.returnMapper=e.some(f.inferences,ab)?im(function(t){var r=e.filter(t.inferences,ab);return r.length?Zf(e.map(r,nm),t.signature,t.flags,t.compareTypes):void 0}(f)):void 0}}var g=uv(r),_=g?Math.min(ov(r)-1,n.length):n.length;if(g&&262144&g.flags){var h=e.find(a.inferences,(function(e){return e.typeParameter===g}));h&&(h.impliedArity=e.findIndex(n,Kh,_)<0?n.length-_:void 0)}var y=Lc(r);if(y){var v=ly(t);ym(a.inferences,ry(v),y)}for(var b=0;b<_;b++){var k=n[b];if(224!==k.kind){var x=nv(r,b),E=Gv(k,x,a,i);ym(a.inferences,E,x)}}if(g){var S=ay(n,_,n.length,g,a,i);ym(a.inferences,S,g)}return Tm(a)}function iy(e){return 1048576&e.flags?pg(e,iy):1&e.flags||af(Qs(e)||e)?e:vf(e)?Hl(ll(e),e.target.elementFlags,!1,e.target.labeledElementDeclarations):Hl([e],[8])}function ay(t,r,n,i,a,o){if(r>=n-1&&Kh(d=t[n-1]))return iy(229===d.kind?d.type:Gv(d.expression,i,a,o));for(var s=[],c=[],l=[],u=r;u<n;u++){var d;if(Kh(d=t[u])){var p=229===d.kind?d.type:fb(d.expression);sf(p)?(s.push(p),c.push(8)):(s.push(Ik(33,p,Ne,222===d.kind?d.expression:d)),c.push(4))}else{var f=qu(i,hd(u-r)),m=Gv(d,f,a,o),g=Rv(f,406978556);s.push(g?gd(m):gf(m)),c.push(1)}229===d.kind&&d.tupleNameSource&&l.push(d.tupleNameSource)}return Hl(s,c,!1,e.length(l)===e.length(s)?l:void 0)}function oy(t,r,n,i){for(var a,o=e.isInJSFile(t.declaration),s=t.typeParameters,c=Pc(e.map(r,xd),s,Nc(s),o),l=0;l<r.length;l++){e.Debug.assert(void 0!==s[l],"Should not call checkTypeArguments with too many type arguments");var u=Ws(s[l]);if(u){var d=n&&i?function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1)}:void 0,p=i||e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1;a||(a=Td(s,c));var f=c[l];if(!pp(f,ls(Wd(u,a),f),n?r[l]:void 0,p,d))return}}return c}function sy(t){if(q_(t.tagName))return 2;var r=ac(fb(t.tagName));return e.length(hc(r,1))?0:e.length(hc(r,0))?1:2}function cy(t,r,n,i,a,o,s){var c={errors:void 0,skipLogging:!0};if(e.isJsxOpeningLikeElement(t))return function(t,r,n,i,a,o,s){var c=S_(r,t),l=Gv(t.attributes,c,void 0,i);return function(){var r;if($_(t))return!0;var n=e.isJsxOpeningElement(t)||e.isJsxSelfClosingElement(t)&&!q_(t.tagName)?fb(t.tagName):void 0;if(!n)return!0;var i=hc(n,0);if(!e.length(i))return!0;var o=RE(t);if(!o)return!0;var c=fi(o,111551,!0,!1,t);if(!c)return!0;var l=hc(_o(c),0);if(!e.length(l))return!0;for(var u=!1,d=0,p=0,f=l;p<f.length;p++){var m=hc(nv(f[p],0),0);if(e.length(m))for(var g=0,_=m;g<_.length;g++){var h=_[g];if(u=!0,cv(h))return!0;var y=ov(h);y>d&&(d=y)}}if(!u)return!0;for(var v=1/0,b=0,k=i;b<k.length;b++){var x=sv(k[b]);x<v&&(v=x)}if(v<=d)return!0;if(a){var E=e.createDiagnosticForNode(t.tagName,e.Diagnostics.Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3,e.entityNameToString(t.tagName),v,e.entityNameToString(o),d),S=null===(r=Yx(t.tagName))||void 0===r?void 0:r.valueDeclaration;S&&e.addRelatedInfo(E,e.createDiagnosticForNode(S,e.Diagnostics._0_is_declared_here,e.entityNameToString(t.tagName))),s&&s.skipLogging&&(s.errors||(s.errors=[])).push(E),s.skipLogging||Qr.add(E)}return!1}()&&mp(l,c,n,a?t.tagName:void 0,t.attributes,void 0,o,s)}(t,n,i,a,o,s,c)?void 0:(e.Debug.assert(!o||!!c.errors,"jsx should have errors when reporting errors"),c.errors||e.emptyArray);var l=Lc(n);if(l&&l!==Ve&&205!==t.kind){var u=ly(t),d=ry(u),p=o?u||t:void 0,f=e.Diagnostics.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1;if(!Op(d,l,i,p,f,s,c))return e.Debug.assert(!o||!!c.errors,"this parameter should have errors when reporting errors"),c.errors||e.emptyArray}for(var m=e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1,g=uv(n),_=g?Math.min(ov(n)-1,r.length):r.length,h=0;h<_;h++){var y=r[h];if(224!==y.kind){var v=nv(n,h),b=Gv(y,v,void 0,a),k=4&a?Bf(b):b;if(!mp(k,v,i,o?y:void 0,y,m,s,c))return e.Debug.assert(!o||!!c.errors,"parameter should have errors when reporting errors"),S(y,k,v),c.errors||e.emptyArray}}if(g){var x=ay(r,_,r.length,g,void 0,a),E=r.length-_;p=o?0===E?t:1===E?r[_]:e.setTextRangePosEnd(uy(t,x),r[_].pos,r[r.length-1].end):void 0;if(!Op(x,g,i,p,m,void 0,c))return e.Debug.assert(!o||!!c.errors,"rest parameter should have errors when reporting errors"),S(p,x,g),c.errors||e.emptyArray}return;function S(t,r,n){if(t&&o&&c.errors&&c.errors.length){if(jb(n))return;var a=jb(r);a&&Pp(a,n,i)&&e.addRelatedInfo(c.errors[0],e.createDiagnosticForNode(t,e.Diagnostics.Did_you_forget_to_use_await))}}}function ly(t){if(204===t.kind){var r=e.skipOuterExpressions(t.expression);if(e.isAccessExpression(r))return r.expression}}function uy(t,r,n,i){var a=e.parseNodeFactory.createSyntheticExpression(r,n,i);return e.setTextRange(a,t),e.setParent(a,t),a}function dy(t){if(206===t.kind){var r=t.template,n=[uy(r,Yt||(Yt=Al("TemplateStringsArray",0,!0))||nt)];return 220===r.kind&&e.forEach(r.templateSpans,(function(e){n.push(e.expression)})),n}if(162===t.kind)return function(t){var r=t.parent,n=t.expression;switch(r.kind){case 254:case 223:case 255:return[uy(n,_o(Ai(r)))];case 161:var i=r.parent;return[uy(n,167===r.parent.kind?_o(Ai(i)):we),uy(n,Ee),uy(n,Me)];case 164:case 166:case 168:case 169:var a=164!==r.kind&&0!==V;return[uy(n,eE(r)),uy(n,tE(r)),uy(n,a?Ll(Xx(r)):Ee)];case 253:if(e.isEtsFunctionDecorators(e.getNameOfDecorator(t),J)){var o=Ai(n);return o?[uy(n,_o(o))]:[]}return e.Debug.fail()}return e.Debug.fail()}(t);if(e.isJsxOpeningLikeElement(t))return t.attributes.properties.length>0||e.isJsxOpeningElement(t)&&t.parent.children.length>0?[t.attributes]:e.emptyArray;var i=t.arguments||e.emptyArray,a=Wh(i);if(a>=0){for(var o=i.slice(0,a),s=function(t){var r=i[t],n=222===r.kind&&(Dr?fb(r.expression):$v(r.expression));n&&vf(n)?e.forEach(ll(n),(function(e,t){var i,a=n.target.elementFlags[t],s=uy(r,4&a?jl(e):e,!!(12&a),null===(i=n.target.labeledElementDeclarations)||void 0===i?void 0:i[t]);o.push(s)})):o.push(r)},c=a;c<i.length;c++)s(c);return o}return i}function py(t,r){switch(t.parent.kind){case 254:case 223:case 255:return 1;case 164:return 2;case 166:case 168:case 169:return 0===V||r.parameters.length<=2?2:3;case 161:return 3;case 253:return e.isEtsFunctionDecorators(e.getNameOfDecorator(t),J)?e.isCallExpression(t.expression)?1:0:e.Debug.fail();default:return e.Debug.fail()}}function fy(t,r){var n,i,a=e.getSourceFileOfNode(t);if(e.isPropertyAccessExpression(t.expression)){var o=e.getErrorSpanForNode(a,t.expression.name);n=o.start,i=r?o.length:t.end-n}else{var s=e.getErrorSpanForNode(a,t.expression);n=s.start,i=r?s.length:t.end-n}return{start:n,length:i,sourceFile:a}}function my(t,r,n,i,a,o){if(e.isCallExpression(t)){var s=fy(t),c=s.sourceFile,l=s.start,u=s.length;return e.createFileDiagnostic(c,l,u,r,n,i,a,o)}return e.createDiagnosticForNode(t,r,n,i,a,o)}function gy(t,r,n){for(var i,a=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,s=Number.NEGATIVE_INFINITY,c=Number.POSITIVE_INFINITY,l=n.length,u=0,d=r;u<d.length;u++){var p=d[u],f=sv(p),m=ov(p);f<l&&f>s&&(s=f),l<m&&m<c&&(c=m),f<a&&(a=f,i=p),o=Math.max(o,m)}var g,_,h=e.some(r,cv),y=h?a:a<o?a+"-"+o:a,v=Wh(n)>-1;l<=o&&v&&l--;var b=h||v?h&&v?e.Diagnostics.Expected_at_least_0_arguments_but_got_1_or_more:h?e.Diagnostics.Expected_at_least_0_arguments_but_got_1:e.Diagnostics.Expected_0_arguments_but_got_1_or_more:1===y&&0===l&&function(t){if(!e.isCallExpression(t)||!e.isIdentifier(t.expression))return!1;var r=Fn(t.expression,t.expression.escapedText,111551,void 0,void 0,!1),n=null==r?void 0:r.valueDeclaration;if(!(n&&e.isParameter(n)&&T_(n.parent)&&e.isNewExpression(n.parent.parent)&&e.isIdentifier(n.parent.parent.expression)))return!1;var i=Fl(!1);return!!i&&Yx(n.parent.parent.expression,!0)===i}(t)?e.Diagnostics.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:e.Diagnostics.Expected_0_arguments_but_got_1;if(i&&sv(i)>l&&i.declaration){var k=i.declaration.parameters[i.thisParameter?l+1:l];k&&(_=e.createDiagnosticForNode(k,e.isBindingPattern(k.name)?e.Diagnostics.An_argument_matching_this_binding_pattern_was_not_provided:e.isRestParameter(k)?e.Diagnostics.Arguments_for_the_rest_parameter_0_were_not_provided:e.Diagnostics.An_argument_for_0_was_not_provided,k.name?e.isBindingPattern(k.name)?void 0:e.idText(e.getFirstIdentifier(k.name)):l))}if(a<l&&l<o)return my(t,e.Diagnostics.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments,l,s,c);if(!v&&l<a){var x=my(t,b,y,l);return _?e.addRelatedInfo(x,_):x}if(h||v){if(g=e.factory.createNodeArray(n),v&&l){var E=e.elementAt(n,Wh(n)+1)||void 0;g=e.factory.createNodeArray(n.slice(o>l&&E?n.indexOf(E):Math.min(o,n.length-1)))}}else g=e.factory.createNodeArray(n.slice(o));var S=e.first(g).pos,D=e.last(g).end;D===S&&D++,e.setTextRangePosEnd(g,S,D);var w=e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),g,b,y,l);return _?e.addRelatedInfo(w,_):w}function _y(t,n,a,o,s,c){var l,u,d=206===t.kind,p=162===t.kind,f=e.isJsxOpeningLikeElement(t),m=211===t.kind,g=!a&&r;p||(l=t.typeArguments,u=null==l?void 0:l.some((function(e){return e.virtual})),(d||f||106!==t.expression.kind)&&e.forEach(l,Rx),m&&32!==o&&Rx(t.body));var _=a||[];if(function(t,r,n){var i,a,o,s,c=0,l=-1;e.Debug.assert(!r.length);for(var u=0,d=t;u<d.length;u++){var p=d[u],f=p.declaration&&Ai(p.declaration),m=p.declaration&&p.declaration.parent;a&&f!==a?(o=c=r.length,i=m):i&&m===i?o+=1:(i=m,o=c),a=f,q(p)?(s=++l,c++):s=o,r.splice(s,0,n?ms(p,n):p)}}(n,_,s),!_.length)return g&&Qr.add(my(t,e.Diagnostics.Call_target_does_not_contain_any_signatures)),Hh(t);var h,y,v,b,k=dy(t),x=1===_.length&&!_[0].typeParameters,E=p||x||!e.some(k,Qd)?0:4,S=!!(16&o)&&204===t.kind&&t.arguments.hasTrailingComma;if(_.length>1&&(b=G(_,rn,x,S)),b||(b=G(_,an,x,S)),b)return b;if(g)if(h)if(1===h.length||h.length>3){var D,w=h[h.length-1];h.length>3&&(D=e.chainDiagnosticMessages(D,e.Diagnostics.The_last_overload_gave_the_following_error),D=e.chainDiagnosticMessages(D,e.Diagnostics.No_overload_matches_this_call));var T=cy(t,k,w,an,0,!0,(function(){return D}));if(T)for(var C=0,A=T;C<A.length;C++){var N=A[C];w.declaration&&h.length>3&&e.addRelatedInfo(N,e.createDiagnosticForNode(w.declaration,e.Diagnostics.The_last_overload_is_declared_here)),W(w,N),Qr.add(N)}else e.Debug.fail("No error for last overload signature")}else{for(var P=[],I=0,F=Number.MAX_VALUE,O=0,R=0,M=function(r){var n=cy(t,k,r,an,0,!0,(function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.Overload_0_of_1_2_gave_the_following_error,R+1,_.length,ua(r))}));n?(n.length<=F&&(F=n.length,O=R),I=Math.max(I,n.length),P.push(n)):e.Debug.fail("No error for 3 or fewer overload signatures"),R++},L=0,j=h;L<j.length;L++){M(j[L])}var B=I>1?P[O]:e.flatten(P);e.Debug.assert(B.length>0,"No errors reported for 3 or fewer overload signatures");var z=e.chainDiagnosticMessages(e.map(B,(function(e){return"string"==typeof e.messageText?e:e.messageText})),e.Diagnostics.No_overload_matches_this_call),J=i([],e.flatMap(B,(function(e){return e.relatedInformation}))),V=void 0;if(e.every(B,(function(e){return e.start===B[0].start&&e.length===B[0].length&&e.file===B[0].file}))){var H=B[0];V={file:H.file,start:H.start,length:H.length,code:z.code,category:z.category,messageText:z,relatedInformation:J}}else V=e.createDiagnosticForNodeFromMessageChain(t,z,J);W(h[0],V),Qr.add(V)}else if(y)Qr.add(gy(t,[y],k));else if(v)oy(v,t.typeArguments,!0,c);else{var K=e.filter(n,(function(e){return Xh(e,l,u)}));0===K.length?Qr.add(function(t,r,n){var i=n.length;if(1===r.length){var a=Nc((d=r[0]).typeParameters),o=e.length(d.typeParameters);return e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),n,e.Diagnostics.Expected_0_type_arguments_but_got_1,a<o?a+"-"+o:a,i)}for(var s=-1/0,c=1/0,l=0,u=r;l<u.length;l++){var d,p=Nc((d=u[l]).typeParameters);o=e.length(d.typeParameters),p>i?c=Math.min(c,p):o<i&&(s=Math.max(s,o))}return s!==-1/0&&c!==1/0?e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),n,e.Diagnostics.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments,i,s,c):e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),n,e.Diagnostics.Expected_0_type_arguments_but_got_1,s===-1/0?c:s,i)}(t,n,l)):p?c&&Qr.add(my(t,c)):Qr.add(gy(t,K,k))}return function(t,r,n,i){return e.Debug.assert(r.length>0),Lx(t),i||1===r.length||r.some((function(e){return!!e.typeParameters}))?function(t,r,n){var i=function(e,t){for(var r=-1,n=-1,i=0;i<e.length;i++){var a=e[i],o=ov(a);if(cv(a)||o>=t)return i;o>n&&(n=o,r=i)}return r}(r,void 0===oe?n.length:oe),a=r[i],o=a.typeParameters;if(!o)return a;var s=Jh(t)?t.typeArguments:void 0,c=s?Hc(a,function(e,t,r){var n=e.map(Xx);for(;n.length>t.length;)n.pop();for(;n.length<t.length;)n.push(Ws(t[n.length])||wm(r));return n}(s,o,e.isInJSFile(t))):function(t,r,n,i){var a=Qf(r,n,e.isInJSFile(t)?2:0),o=ny(t,n,i,12,a);return Hc(n,o)}(t,o,a,n);return r[i]=c,c}(t,r,n):function(t){var r,n=e.mapDefined(t,(function(e){return e.thisParameter}));n.length&&(r=yy(n,n.map(Qy)));for(var i=e.minAndMax(t,hy),a=i.min,o=i.max,s=[],c=function(r){var n=e.mapDefined(t,(function(t){return U(t)?r<t.parameters.length-1?t.parameters[r]:e.last(t.parameters):r<t.parameters.length?t.parameters[r]:void 0}));e.Debug.assert(0!==n.length),s.push(yy(n,e.mapDefined(t,(function(e){return iv(e,r)}))))},l=0;l<o;l++)c(l);var u=e.mapDefined(t,(function(t){return U(t)?e.last(t.parameters):void 0})),d=0;if(0!==u.length){var p=jl(ou(e.mapDefined(t,qc),2));s.push(vy(u,p)),d|=1}t.some(q)&&(d|=2);return ds(t[0].declaration,void 0,r,s,fu(t.map(Bc)),void 0,a,d)}(r)}(t,_,k,!!a);function W(t,r){var n,i,a=h,o=y,s=v,c=(null===(i=null===(n=t.declaration)||void 0===n?void 0:n.symbol)||void 0===i?void 0:i.declarations)||e.emptyArray,l=c.length>1?e.find(c,(function(t){return e.isFunctionLikeDeclaration(t)&&e.nodeIsPresent(t.body)})):void 0;if(l){var u=Ic(l),d=!u.typeParameters;G([u],an,d)&&e.addRelatedInfo(r,e.createDiagnosticForNode(l,e.Diagnostics.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}h=a,y=o,v=s}function G(r,n,i,a){if(void 0===a&&(a=!1),h=void 0,y=void 0,v=void 0,i){var o=r[0];if(e.some(l)&&!u||!Yh(t,k,o,a))return;return cy(t,k,o,n,0,!1,void 0)?void(h=[o]):o}for(var s=0;s<r.length;s++){if(Xh(o=r[s],l,u)&&Yh(t,k,o,a)){var c=void 0,d=void 0;if(o.typeParameters){var p=void 0;if(e.some(l)){if(!(p=oy(o,l,!1))){v=o;continue}}else d=Qf(o.typeParameters,o,e.isInJSFile(t)?2:0),p=ny(t,o,k,8|E,d),E|=4&d.flags?8:0;if(c=Jc(o,p,e.isInJSFile(o.declaration),d&&d.inferredTypeParameters),uv(o)&&!Yh(t,k,c,a)){y=c;continue}}else c=o;if(!cy(t,k,c,n,E,!1,void 0)){if(E){if(E=0,d)if(c=Jc(o,p=ny(t,o,k,E,d),e.isInJSFile(o.declaration),d&&d.inferredTypeParameters),uv(o)&&!Yh(t,k,c,a)){y=c;continue}if(cy(t,k,c,n,E,!1,void 0)){(h||(h=[])).push(c);continue}}return r[s]=c,c}(h||(h=[])).push(c)}}}}function hy(e){var t=e.parameters.length;return U(e)?t-1:t}function yy(e,t){return vy(e,ou(t,2))}function vy(t,r){return jf(e.first(t),r)}function by(e){return!(!e.typeParameters||!DE(Bc(e)))}function ky(e,t,r,n){return Pa(e)||Pa(t)&&!!(262144&e.flags)||!r&&!n&&!(1179648&t.flags)&&cp(e,vt)}function xy(t,r,n){if(t.arguments&&V<1){var i=Wh(t.arguments);i>=0&&pn(t.arguments[i],e.Diagnostics.Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher)}var a=fh(t.expression);if(a===Ke)return pr;if((a=ac(a))===we)return Hh(t);if(Pa(a))return t.typeArguments&&pn(t,e.Diagnostics.Untyped_function_calls_may_not_accept_type_arguments),Vh(t);var o=hc(a,1);if(o.length){if(!function(t,r){if(!r||!r.declaration)return!0;var n=r.declaration,i=e.getSelectedEffectiveModifierFlags(n,24);if(!i||167!==n.kind)return!0;var a=e.getClassLikeDeclarationOfSymbol(n.parent.symbol),o=Jo(n.parent.symbol);if(!Wx(t,a)){var s=e.getContainingClass(t);if(s&&16&i){var c=Xx(s);if(Ey(n.parent.symbol,c))return!0}return 8&i&&pn(t,e.Diagnostics.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,da(o)),16&i&&pn(t,e.Diagnostics.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,da(o)),!1}return!0}(t,o[0]))return Hh(t);if(o.some((function(e){return 4&e.flags})))return pn(t,e.Diagnostics.Cannot_create_an_instance_of_an_abstract_class),Hh(t);var s=a.symbol&&e.getClassLikeDeclarationOfSymbol(a.symbol);return s&&e.hasSyntacticModifier(s,128)?(pn(t,e.Diagnostics.Cannot_create_an_instance_of_an_abstract_class),Hh(t)):_y(t,o,r,n,0)}var c=hc(a,0);if(c.length){var l=_y(t,c,r,n,0);return X||(l.declaration&&!Fy(l.declaration)&&Bc(l)!==Ve&&pn(t,e.Diagnostics.Only_a_void_function_can_be_called_with_the_new_keyword),Lc(l)===Ve&&pn(t,e.Diagnostics.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),l}return Dy(t.expression,a,1),Hh(t)}function Ey(t,r){var n=Po(r);if(!e.length(n))return!1;var i=n[0];if(2097152&i.flags){for(var a=Es(i.types),o=0,s=0,c=i.types;s<c.length;s++){var l=c[s];if(!a[o]&&3&e.getObjectFlags(l)){if(l.symbol===t)return!0;if(Ey(t,l))return!0}o++}return!1}return i.symbol===t||Ey(t,i)}function Sy(t,r,n){var i,a=0===n,o=Ub(r),s=o&&hc(o,n).length>0;if(1048576&r.flags){for(var c=!1,l=0,u=r.types;l<u.length;l++){var d=u[l];if(0!==hc(d,n).length){if(c=!0,i)break}else if(i||(i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Type_0_has_no_call_signatures:e.Diagnostics.Type_0_has_no_construct_signatures,da(d)),i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Not_all_constituents_of_type_0_are_callable:e.Diagnostics.Not_all_constituents_of_type_0_are_constructable,da(r))),c)break}c||(i=e.chainDiagnosticMessages(void 0,a?e.Diagnostics.No_constituent_of_type_0_is_callable:e.Diagnostics.No_constituent_of_type_0_is_constructable,da(r))),i||(i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:e.Diagnostics.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,da(r)))}else i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Type_0_has_no_call_signatures:e.Diagnostics.Type_0_has_no_construct_signatures,da(r));var p=a?e.Diagnostics.This_expression_is_not_callable:e.Diagnostics.This_expression_is_not_constructable;if(e.isCallExpression(t.parent)&&0===t.parent.arguments.length){var f=Cn(t).resolvedSymbol;f&&32768&f.flags&&(p=e.Diagnostics.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:e.chainDiagnosticMessages(i,p),relatedMessage:s?e.Diagnostics.Did_you_forget_to_use_await:void 0}}function Dy(t,r,n,i){var a=Sy(t,r,n),o=a.messageChain,s=a.relatedMessage,c=e.createDiagnosticForNodeFromMessageChain(t,o);if(s&&e.addRelatedInfo(c,e.createDiagnosticForNode(t,s)),e.isCallExpression(t.parent)){var l=fy(t.parent,!0),u=l.start,d=l.length;c.start=u,c.length=d}Qr.add(c),wy(r,n,i?e.addRelatedInfo(c,i):c)}function wy(t,r,n){if(t.symbol){var i=Tn(t.symbol).originatingImport;if(i&&!e.isImportCall(i)){var a=hc(_o(Tn(t.symbol).target),r);if(!a||!a.length)return;e.addRelatedInfo(n,e.createDiagnosticForNode(i,e.Diagnostics.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead))}}}function Ty(t){switch(t.parent.kind){case 254:case 223:case 255:return e.Diagnostics.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 161:return e.Diagnostics.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 164:return e.Diagnostics.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 166:case 168:case 169:return e.Diagnostics.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;case 253:var r=e.getNameOfDecorator(t);return e.isEtsFunctionDecorators(r,J)?e.Diagnostics.Unable_to_resolve_signature_of_function_decorator_when_decorators_are_not_valid:e.Debug.fail();default:return e.Debug.fail()}}function Cy(t,r,n){var i=fb(t.expression),a=ac(i);if(a===we)return Hh(t);var o,s,c=hc(a,0),l=hc(a,1).length;if(ky(i,a,c.length,l))return Vh(t);if(o=t,(s=c).length&&e.every(s,(function(e){return 0===e.minArgumentCount&&!U(e)&&e.parameters.length<py(o,e)}))){var u=e.getTextOfNode(t.expression,!1);return pn(t,e.Diagnostics._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,u),Hh(t)}var d=Ty(t);if(!c.length){var p=Sy(t.expression,a,0),f=e.chainDiagnosticMessages(p.messageChain,d),m=e.createDiagnosticForNodeFromMessageChain(t.expression,f);return p.relatedMessage&&e.addRelatedInfo(m,e.createDiagnosticForNode(t.expression,p.relatedMessage)),Qr.add(m),wy(a,0,m),Hh(t)}return _y(t,c,r,n,0,d)}function Ay(t,r){var n=Y_(t),i=n&&Si(n),a=i&&Nn(i,N.Element,788968),o=a&&re.symbolToEntityName(a,788968,t),s=e.factory.createFunctionTypeNode(void 0,[e.factory.createParameterDeclaration(void 0,void 0,void 0,"props",void 0,re.typeToTypeNode(r,t))],o?e.factory.createTypeReferenceNode(o,void 0):e.factory.createKeywordTypeNode(129)),c=yn(1,"props");return c.type=r,ds(s,void 0,void 0,[c],a?Jo(a):we,void 0,1,0)}function Ny(t,r,n){if(q_(t.tagName)){var i=th(t),a=Ay(t,i);return fp(Gv(t.attributes,S_(a,t),void 0,0),i,t.tagName,t.attributes),e.length(t.typeArguments)&&(e.forEach(t.typeArguments,Rx),Qr.add(e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),t.typeArguments,e.Diagnostics.Expected_0_type_arguments_but_got_1,0,e.length(t.typeArguments)))),a}var o=fb(t.tagName),s=ac(o);if(s===we)return Hh(t);var c=Z_(o,t);return ky(o,s,c.length,0)?Vh(t):0===c.length?(pn(t.tagName,e.Diagnostics.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,e.getTextOfNode(t.tagName)),Hh(t)):_y(t,c,r,n,0)}function Py(t,r,n){switch(t.kind){case 204:case 211:return function(t,r,n){var i,a;if(106===t.expression.kind){var o=Qg(t.expression);if(Pa(o)){for(var s=0,c=t.arguments;s<c.length;s++)fb(c[s]);return lr}if(o!==we){var l=e.getEffectiveBaseTypeNode(e.getContainingClass(t));if(l)return _y(t,Co(o,l.typeArguments,l),r,n,0)}return Vh(t)}var u=n;32!==n&&(u=void 0);var d=fb(t.expression,u);if(e.isCallChain(t)){var p=Mf(d,t.expression);a=p===d?0:e.isOutermostOptionalChain(t)?16:8,d=p}else a=0;if((d=yh(d,t.expression,hh))===Ke)return pr;var f=ac(d);if(f===we)return Hh(t);var m=hc(f,0),g=hc(f,1),_=g.length;if(ky(d,f,m.length,_))return d!==we&&t.typeArguments&&pn(t,e.Diagnostics.Untyped_function_calls_may_not_accept_type_arguments),Vh(t);var h=e.isCalledStructDeclaration(null===(i=f.symbol)||void 0===i?void 0:i.declarations);if(!m.length){if(_){if(h)return _y(t,g,r,n,0);pn(t,e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,da(d))}else{var y=void 0;if(1===t.arguments.length){var v=e.getSourceFileOfNode(t).text;e.isLineBreak(v.charCodeAt(e.skipTrivia(v,t.expression.end,!0)-1))&&(y=e.createDiagnosticForNode(t.expression,e.Diagnostics.Are_you_missing_a_semicolon))}Dy(t.expression,f,0,y)}return Hh(t)}return 8&n&&!t.typeArguments&&m.some(by)?(ib(t,n),dr):m.some((function(t){return e.isInJSFile(t.declaration)&&!!e.getJSDocClassTag(t.declaration)}))?(pn(t,e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,da(d)),Hh(t)):_y(t,m,r,n,a)}(t,r,n);case 205:return xy(t,r,n);case 206:return function(t,r,n){var i=fb(t.tag),a=ac(i);if(a===we)return Hh(t);var o=hc(a,0),s=hc(a,1).length;if(ky(i,a,o.length,s))return Vh(t);if(!o.length){if(e.isArrayLiteralExpression(t.parent)){var c=e.createDiagnosticForNode(t.tag,e.Diagnostics.It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked);return Qr.add(c),Hh(t)}return Dy(t.tag,a,0),Hh(t)}return _y(t,o,r,n,0)}(t,r,n);case 162:return Cy(t,r,n);case 278:case 277:return Ny(t,r,n)}throw e.Debug.assertNever(t,"Branch in 'resolveSignature' should be unreachable.")}function Iy(e,t,r){var n=Cn(e),i=n.resolvedSignature;if(i&&i!==dr&&!t)return i;n.resolvedSignature=dr;var a=Py(e,t,r||0);return a!==dr&&(n.resolvedSignature=Sr===Dr?a:i),a}function Fy(t){var r;if(!t||!e.isInJSFile(t))return!1;var n=e.isFunctionDeclaration(t)||e.isFunctionExpression(t)?t:e.isVariableDeclaration(t)&&t.initializer&&e.isFunctionExpression(t.initializer)?t.initializer:void 0;if(n){if(e.getJSDocClassTag(t))return!0;var i=Ai(n);return!!(null===(r=null==i?void 0:i.members)||void 0===r?void 0:r.size)}return!1}function Oy(t,r){var n,i;if(r){var a=Tn(r);if(!a.inferredClassSymbol||!a.inferredClassSymbol.has(R(t))){var o=e.isTransientSymbol(t)?t:kn(t);return o.exports=o.exports||e.createSymbolTable(),o.members=o.members||e.createSymbolTable(),o.flags|=32&r.flags,(null===(n=r.exports)||void 0===n?void 0:n.size)&&Dn(o.exports,r.exports),(null===(i=r.members)||void 0===i?void 0:i.size)&&Dn(o.members,r.members),(a.inferredClassSymbol||(a.inferredClassSymbol=new e.Map)).set(R(o),o),o}return a.inferredClassSymbol.get(R(t))}}function Ry(t,r){if(t.parent){var n,i;if(e.isVariableDeclaration(t.parent)&&t.parent.initializer===t){if(!(e.isInJSFile(t)||e.isVarConst(t.parent)&&e.isFunctionLikeDeclaration(t)))return;n=t.parent.name,i=t.parent}else if(e.isBinaryExpression(t.parent)){var a=t.parent,o=t.parent.operatorToken.kind;if(62!==o||!r&&a.right!==t){if(!(56!==o&&60!==o||(e.isVariableDeclaration(a.parent)&&a.parent.initializer===a?(n=a.parent.name,i=a.parent):e.isBinaryExpression(a.parent)&&62===a.parent.operatorToken.kind&&(r||a.parent.right===a)&&(i=n=a.parent.left),n&&e.isBindableStaticNameExpression(n)&&e.isSameEntityName(n,a.left))))return}else i=n=a.left}else r&&e.isFunctionDeclaration(t)&&(n=t.name,i=t);if(i&&n&&(r||e.getExpandoInitializer(t,e.isPrototypeAccess(n))))return Ai(i)}}function My(t,r){var n;KE(t,t.typeArguments)||WE(t.arguments);var i=Iy(t,void 0,r);if(i===dr)return We;if(Uy(i,t),106===t.expression.kind)return Ve;if(205===t.kind){var a=i.declaration;if(a&&167!==a.kind&&171!==a.kind&&176!==a.kind&&!e.isJSDocConstructSignature(a)&&!Fy(a))return X&&pn(t,e.Diagnostics.new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type),Ee}if(e.isInJSFile(t)&&Ky(t))return Mc(t.arguments[0]);var o=Bc(i);if(12288&o.flags&&Jy(t))return yd(e.walkUpParenthesizedExpressions(t.parent));if(204===t.kind&&!t.questionDotToken&&235===t.parent.kind&&16384&o.flags&&jc(i))if(e.isDottedName(t.expression)){if(!Cg(t)){var s=pn(t.expression,e.Diagnostics.Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation);Tg(t.expression,s)}}else pn(t.expression,e.Diagnostics.Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name);if(e.isInJSFile(t)){var c=Ry(t,!1);if(null===(n=null==c?void 0:c.exports)||void 0===n?void 0:n.size){var l=Wi(c,c.exports,e.emptyArray,e.emptyArray,void 0,void 0);return l.objectFlags|=16384,fu([o,l])}}return e.isInETSFile(t)&&e.isIdentifier(t.expression)&&!e.isNewExpression(t)&&function(t,r){var n,i=e.getTextOfPropertyName(t).toString();if(!(null===(n=r.ets)||void 0===n?void 0:n.components.some((function(e){return e===i}))))return!1;if(!r.etsLoaderPath)return!1;var a=e.resolvePath(r.etsLoaderPath,"declarations"),o=ii(Yx(t)),s=null==o?void 0:o.declarations;if(!s||1!==s.length)return!1;var c=e.getSourceFileOfNode(s[0]),l=null==c?void 0:c.fileName;return!!(null==l?void 0:l.startsWith(a))}(t.expression,J)&&!e.isInBuildOrPageTransitionContext(t,J)&&pn(t.expression,e.Diagnostics.UI_component_0_cannot_be_used_in_this_place,Ln(t.expression)),o}function Ly(r,n,i,a){var o,s,c,l,u,d=function(e,t){var r="";return e.forEach((function(e){e.name===t&&(r=e.text?e.text:"")})),r}(n,a.tagName);if(!(o=r,s=d,c=a.specifyCheckConditionFuncName,l=Rg(o),zy(o,s,l,u={hasIfChecked:!1},c),u.hasIfChecked)&&t.getExpressionCheckedResultsByFile){if(t.getExpressionCheckedResultsByFile(i.fileName,n).valid)return;var p=e.createDiagnosticForNodeInSourceFile(i,r,e.Diagnostics.The_statement_must_be_written_use_the_function_0_under_the_if_condition,a.specifyCheckConditionFuncName);p.messageText=a.message,Zr.add(p)}}function jy(e,t,r,n){n.forEach((function(n){var i=!1;e.forEach((function(a){a.name===n.tagName&&(i=!0,!n.tagNameShouldExisted&&n.needConditionCheck?Ly(t,e,r,n):n.tagNameShouldExisted||By(r,t,n))})),n.tagNameShouldExisted&&!i&&By(r,t,n)}))}function By(t,r,n){var i=e.createDiagnosticForNodeInSourceFile(t,r,e.Diagnostics.This_API_has_been_Special_Markings_exercise_caution_when_using_this_API);i.messageText=n.message.replace("{0}",""===r.getText()?r.text:r.getText()),i.category=n.type,Qr.add(i),Zr.add(i)}function zy(t,r,n,i,a){if(!i.hasIfChecked&&t.parent!==n){if(e.isIfStatement(t.parent)){if(e.isCallExpression(t.parent.expression)&&function(t,r,n){if(e.isIdentifier(t.expression)&&1===t.arguments.length&&t.expression.escapedText.toString()===r){var i=t.arguments[0];if(e.isStringLiteral(i)&&i.text.toString()===n)return!0}return!1}(t.parent.expression,a,r))return void(i.hasIfChecked=!0);zy(t.parent,r,n,i,a)}zy(t.parent,r,n,i,a)}}function Uy(t,r){if(t.declaration&&134217728&t.declaration.flags){var n=qy(r),i=e.tryGetPropertyAccessOrIdentifierToString(e.getInvokedExpression(r));a=n,o=t.declaration,s=i,c=ua(t),_n(o,s?e.createDiagnosticForNode(a,e.Diagnostics.The_signature_0_of_1_is_deprecated,c,s):e.createDiagnosticForNode(a,e.Diagnostics._0_is_deprecated,c))}var a,o,s,c}function qy(t){switch((t=e.skipParentheses(t)).kind){case 204:case 162:case 205:return qy(t.expression);case 206:return qy(t.tag);case 278:case 277:return qy(t.tagName);case 203:return t.argumentExpression;case 202:return t.name;case 174:var r=t;return e.isQualifiedName(r.typeName)?r.typeName.right:r;default:return t}}function Jy(t){if(!e.isCallExpression(t))return!1;var r=t.expression;if(e.isPropertyAccessExpression(r)&&"for"===r.name.escapedText&&(r=r.expression),!e.isIdentifier(r)||"Symbol"!==r.escapedText)return!1;var n=Nl(!1);return!!n&&n===Fn(r,"Symbol",111551,void 0,void 0,!1)}function Vy(t){if(WE(t.arguments)||function(t){if(H===e.ModuleKind.ES2015)return fS(t,e.Diagnostics.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_esnext_commonjs_amd_system_or_umd);if(t.typeArguments)return fS(t,e.Diagnostics.Dynamic_import_cannot_have_type_arguments);var r=t.arguments;if(1!==r.length)return fS(t,e.Diagnostics.Dynamic_import_must_have_one_specifier_as_an_argument);if(qE(r),e.isSpreadElement(r[0]))return fS(r[0],e.Diagnostics.Specifier_of_dynamic_import_cannot_be_spread_element)}(t),0===t.arguments.length)return yv(t,Ee);for(var r=t.arguments[0],n=$v(r),i=1;i<t.arguments.length;++i)$v(t.arguments[i]);(32768&n.flags||65536&n.flags||!cp(n,Re))&&pn(r,e.Diagnostics.Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0,da(n));var a=gi(t,r);if(a){var o=bi(a,r,!0,!1);if(o)return yv(t,Hy(_o(o),o,a))}return yv(t,Ee)}function Hy(t,r,n){if(K&&t&&t!==we){var i=t;if(!i.syntheticType)if(Yn(e.find(n.declarations,e.isSourceFile),n,!1)){var a=e.createSymbolTable(),o=yn(2097152,"default");o.parent=n,o.nameType=hd("default"),o.target=ii(r),a.set("default",o);var s=yn(2048,"__type"),c=Wi(s,a,e.emptyArray,e.emptyArray,void 0,void 0);s.type=c,i.syntheticType=z_(t)?ld(t,c,s,0,!1):c}else i.syntheticType=t;return i.syntheticType}return t}function Ky(t){if(!e.isRequireCall(t,!0))return!1;if(!e.isIdentifier(t.expression))return e.Debug.fail();var r=Fn(t.expression,t.expression.escapedText,111551,void 0,void 0,!0);if(r===ce)return!0;if(2097152&r.flags)return!1;var n=16&r.flags?253:3&r.flags?251:0;if(0!==n){var i=e.getDeclarationOfKind(r,n);return!!i&&!!(8388608&i.flags)}return!1}function Wy(t){(function(t){if(t.questionDotToken||32&t.flags)return fS(t.template,e.Diagnostics.Tagged_template_expressions_are_not_permitted_in_an_optional_chain);return!1})(t)||KE(t,t.typeArguments),V<2&&jE(t,262144);var r=Iy(t);return Uy(r,t),Bc(r)}function Gy(t){switch(t.kind){case 10:case 14:case 8:case 9:case 110:case 95:case 200:case 201:case 220:return!0;case 208:return Gy(t.expression);case 216:var r=t.operator,n=t.operand;return 40===r&&(8===n.kind||9===n.kind)||39===r&&8===n.kind;case 202:case 203:var i=t.expression;if(e.isIdentifier(i)){var a=Yx(i);return a&&2097152&a.flags&&(a=ai(a)),!!(a&&384&a.flags&&1===jo(a))}}return!1}function $y(t,n,i,a){var o=fb(i,a);if(e.isConstTypeReference(n))return Gy(i)||pn(i,e.Diagnostics.A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals),gd(o);Rx(n),o=Bf(mf(o));var s=xd(n);r&&s!==we&&(up(s,Hf(o))||xp(o,s,t,e.Diagnostics.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first));return s}function Yy(e){return 32&e.flags?function(e){var t=fb(e.expression),r=Mf(t,e.expression);return Rf(Pf(r),e,r!==t)}(e):Pf(fb(e.expression))}function Xy(t){return function(t){var r=t.name.escapedText;switch(t.keywordToken){case 103:if("target"!==r)return fS(t.name,e.Diagnostics._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,t.name.escapedText,e.tokenToString(t.keywordToken),"target");break;case 100:if("meta"!==r)fS(t.name,e.Diagnostics._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,t.name.escapedText,e.tokenToString(t.keywordToken),"meta")}}(t),103===t.keywordToken?function(t){var r=e.getNewTargetContainer(t);return r?167===r.kind?_o(Ai(r.parent)):_o(Ai(r)):(pn(t,e.Diagnostics.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),we)}(t):100===t.keywordToken?function(t){H!==e.ModuleKind.ES2020&&H!==e.ModuleKind.ESNext&&H!==e.ModuleKind.System&&pn(t,e.Diagnostics.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_esnext_or_system);var r=e.getSourceFileOfNode(t);return e.Debug.assert(!!(2097152&r.flags),"Containing file is missing import meta node flag."),e.Debug.assert(!!r.externalModuleIndicator,"Containing file should be a module."),"meta"===t.name.escapedText?function(){return Xt||(Xt=Al("ImportMeta",0,!0))||nt}():we}(t):e.Debug.assertNever(t.keywordToken)}function Qy(t){var r=_o(t);if(W){var n=t.valueDeclaration;if(n&&e.hasInitializer(n))return Nf(r)}return r}function Zy(t){return e.Debug.assert(e.isIdentifier(t.name)),t.name.escapedText}function ev(e,t,r){var n=e.parameters.length-(U(e)?1:0);if(t<n)return e.parameters[t].escapedName;var i=e.parameters[n]||ke,a=r||_o(i);if(vf(a)){var o=a.target.labeledElementDeclarations,s=t-n;return o&&Zy(o[s])||i.escapedName+"_"+s}return i.escapedName}function tv(t){return 193===t.kind||e.isParameter(t)&&t.name&&e.isIdentifier(t.name)}function rv(e,t){var r=e.parameters.length-(U(e)?1:0);if(t<r){var n=e.parameters[t].valueDeclaration;return n&&tv(n)?n:void 0}var i=e.parameters[r]||ke,a=_o(i);if(vf(a)){var o=a.target.labeledElementDeclarations;return o&&o[t-r]}return i.valueDeclaration&&tv(i.valueDeclaration)?i.valueDeclaration:void 0}function nv(e,t){return iv(e,t)||Ee}function iv(e,t){var r=e.parameters.length-(U(e)?1:0);if(t<r)return Qy(e.parameters[t]);if(U(e)){var n=_o(e.parameters[r]),i=t-r;if(!vf(n)||n.target.hasRestElement||i<n.target.fixedLength)return qu(n,hd(i))}}function av(t,r){var n=ov(t),i=sv(t),a=lv(t);if(a&&r>=n-1)return r===n-1?a:jl(qu(a,Me));for(var o=[],s=[],c=[],l=r;l<n;l++){!a||l<n-1?(o.push(nv(t,l)),s.push(l<i?1:2)):(o.push(a),s.push(8));var u=rv(t,l);u&&c.push(u)}return Hl(o,s,!1,e.length(c)===e.length(o)?c:void 0)}function ov(e){var t=e.parameters.length;if(U(e)){var r=_o(e.parameters[t-1]);if(vf(r))return t+r.target.fixedLength-(r.target.hasRestElement?0:1)}return t}function sv(t,r){var n=1&r,i=2&r;if(i||void 0===t.resolvedMinArgumentCount){var a=void 0;if(U(t)){var o=_o(t.parameters[t.parameters.length-1]);if(vf(o)){var s=e.findIndex(o.target.elementFlags,(function(e){return!(1&e)})),c=s<0?o.target.fixedLength:s;c>0&&(a=t.parameters.length-1+c)}}if(void 0===a){if(!n&&32&t.flags)return 0;a=t.minArgumentCount}if(i)return a;for(var l=a-1;l>=0;l--){if(131072&ug(nv(t,l),Gh).flags)break;a=l}t.resolvedMinArgumentCount=a}return t.resolvedMinArgumentCount}function cv(e){if(U(e)){var t=_o(e.parameters[e.parameters.length-1]);return!vf(t)||t.target.hasRestElement}return!1}function lv(e){if(U(e)){var t=_o(e.parameters[e.parameters.length-1]);if(!vf(t))return t;if(t.target.hasRestElement)return $l(t,t.target.fixedLength)}}function uv(e){var t=lv(e);return!t||rf(t)||Pa(t)||131072&uc(t).flags?void 0:t}function dv(e){return pv(e,He)}function pv(e,t){return e.parameters.length>0?nv(e,0):t}function fv(t,r){(t.typeParameters=r.typeParameters,r.thisParameter)&&((!(a=t.thisParameter)||a.valueDeclaration&&!a.valueDeclaration.type)&&(a||(t.thisParameter=jf(r.thisParameter,void 0)),mv(t.thisParameter,_o(r.thisParameter))));for(var n=t.parameters.length-(U(t)?1:0),i=0;i<n;i++){var a=t.parameters[i];if(!e.getEffectiveTypeAnnotationNode(a.valueDeclaration))mv(a,iv(r,i))}if(U(t)){a=e.last(t.parameters);if(e.isTransientSymbol(a)||!e.getEffectiveTypeAnnotationNode(a.valueDeclaration))mv(a,av(r,n))}}function mv(e,t){var r=Tn(e);if(!r.type){var n=e.valueDeclaration;r.type=t||to(n,!0),78!==n.name.kind&&(r.type===Ae&&(r.type=eo(n.name)),gv(n.name))}}function gv(t){for(var r=0,n=t.elements;r<n.length;r++){var i=n[r];e.isOmittedExpression(i)||(78===i.name.kind?Tn(Ai(i)).type=La(i):gv(i.name))}}function _v(e){var t=Il(!0);return t!==st?ol(t,[e=Ub(e)||Ae]):Ae}function hv(e){var t,r=(t=!0,Lt||(Lt=Al("PromiseLike",1,t))||st);return r!==st?ol(r,[e=Ub(e)||Ae]):Ae}function yv(t,r){var n=_v(r);return n===Ae?(pn(t,e.isImportCall(t)?e.Diagnostics.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:e.Diagnostics.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),we):(Fl(!0)||pn(t,e.isImportCall(t)?e.Diagnostics.A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:e.Diagnostics.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option),n)}function vv(t,r){if(!t.body)return we;var n,i,a,o=e.getFunctionFlags(t),s=!!(2&o),c=!!(1&o),l=Ve;if(232!==t.body.kind)n=$v(t.body,r&&-9&r),s&&(n=zb(n,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member));else if(c){var u=Dv(t,r);u?u.length>0&&(n=ou(u,2)):l=He;var d=function(t,r){var n=[],i=[],a=!!(2&e.getFunctionFlags(t));return e.forEachYieldExpression(t.body,(function(t){var o,s=t.expression?fb(t.expression,r):Pe;if(e.pushIfUnique(n,kv(t,s,Ee,a)),t.asteriskToken){var c=Bk(s,a?19:17,t.expression);o=c&&c.nextType}else o=x_(t);o&&e.pushIfUnique(i,o)})),{yieldTypes:n,nextTypes:i}}(t,r),p=d.yieldTypes,f=d.nextTypes;i=e.some(p)?ou(p,2):void 0,a=e.some(f)?fu(f):void 0}else{var m=Dv(t,r);if(!m)return 2&o?yv(t,He):He;if(0===m.length)return 2&o?yv(t,Ve):Ve;n=ou(m,2)}if(n||i||a){if(i&&$f(t,i,3),n&&$f(t,n,1),a&&$f(t,a,2),n&&pf(n)||i&&pf(i)||a&&pf(a)){var g=C_(t),_=g?g===Ic(t)?c?void 0:n:b_(Bc(g),t):void 0;c?(i=yf(i,_,0,s),n=yf(n,_,1,s),a=yf(a,_,2,s)):n=function(e,t,r){return e&&pf(e)&&(e=hf(e,t?r?Bb(t):t:void 0)),e}(n,_,s)}i&&(i=Hf(i)),n&&(n=Hf(n)),a&&(a=Hf(a))}return c?bv(i||He,n||l,a||a_(2,t)||Ae,s):s?_v(n||l):n||l}function bv(e,t,r,n){var i=n?vr:br,a=i.getGlobalGeneratorType(!1);if(e=i.resolveIterationType(e,void 0)||Ae,t=i.resolveIterationType(t,void 0)||Ae,r=i.resolveIterationType(r,void 0)||Ae,a===st){var o=i.getGlobalIterableIteratorType(!1),s=o!==st?Jk(o,i):void 0,c=s?s.returnType:Ee,l=s?s.nextType:Ne;return cp(t,c)&&cp(l,r)?o!==st?Ml(o,[e]):(i.getGlobalIterableIteratorType(!0),nt):(i.getGlobalGeneratorType(!0),nt)}return Ml(a,[e,t,r])}function kv(t,r,n,i){var a=t.expression||t,o=t.asteriskToken?Ik(i?19:17,r,n,a):r;return i?Ub(o,a,t.asteriskToken?e.Diagnostics.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:e.Diagnostics.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):o}function xv(e,t,r,n){var i=0;if(n){for(var a=t;a<r.length;a++)i|=S.get(r[a])||32768;for(a=e;a<t;a++)i&=~(S.get(r[a])||0);for(a=0;a<e;a++)i|=S.get(r[a])||32768}else{for(a=e;a<t;a++)i|=E.get(r[a])||128;for(a=0;a<e;a++)i&=~(E.get(r[a])||0)}return i}function Ev(t){var r=Cn(t);return void 0!==r.isExhaustive?r.isExhaustive:r.isExhaustive=function(t){if(213===t.expression.kind){var r=ub(t.expression.expression),n=xv(0,0,og(t,!1),!0),i=Qs(r)||r;return 3&i.flags?!(556800&~n):!!(131072&ug(i,(function(e){return(Vm(e)&n)===n})).flags)}var a=ub(t.expression);if(!ff(a))return!1;var o=ag(t);if(!o.length||e.some(o,df))return!1;return s=pg(a,gd),c=o,1048576&s.flags?!e.forEach(s.types,(function(t){return!e.contains(c,t)})):e.contains(c,s);var s,c}(t)}function Sv(e){return e.endFlowNode&&Ng(e.endFlowNode)}function Dv(t,r){var n=e.getFunctionFlags(t),i=[],a=Sv(t),o=!1;if(e.forEachReturnStatement(t.body,(function(s){var c=s.expression;if(c){var l=$v(c,r&&-9&r);2&n&&(l=zb(l,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)),131072&l.flags&&(o=!0),e.pushIfUnique(i,l)}else a=!0})),0!==i.length||a||!o&&!function(e){switch(e.kind){case 209:case 210:return!0;case 166:return 201===e.parent.kind;default:return!1}}(t))return!(W&&i.length&&a)||Fy(t)&&i.some((function(e){return e.symbol===t.symbol}))||e.pushIfUnique(i,Ne),i}function wv(t,n){var i,a,o,s;if(r){var c=e.getFunctionFlags(t),l=n&&ix(n,c);if(!l||!Rv(l,16385)){if(253===t.kind&&t.decorators&&void 0!==n){var u,d=e.getEtsExtendDecoratorComponentNames(t.decorators,J);if(0!==d.length)return null===(i=J.ets)||void 0===i||i.extend.components.forEach((function(t){var r=t.name,n=t.type;r===e.last(d)&&(u=n)})),(null===(a=null==n?void 0:n.symbol)||void 0===a?void 0:a.escapedName)===u?void 0:void pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.Should_not_add_return_type_to_the_function_that_is_annotated_by_Extend);if(e.getEtsStylesDecoratorComponentNames(t.decorators,J).length>0){var p=null===(o=J.ets)||void 0===o?void 0:o.styles.component.type;return(null===(s=null==n?void 0:n.symbol)||void 0===s?void 0:s.escapedName)===p?void 0:void pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.Should_not_add_return_type_to_the_function_that_is_annotated_by_Styles)}}if(165!==t.kind&&!e.nodeIsMissing(t.body)&&232===t.body.kind&&Sv(t)){var f=512&t.flags;if(l&&131072&l.flags)pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.A_function_returning_never_cannot_have_a_reachable_end_point);else if(!l||f||e.hasEtsStylesDecoratorNames(t.decorators,J)){if(l&&W&&!cp(Ne,l))pn(e.getEffectiveReturnTypeNode(t)||t,e.Diagnostics.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(J.noImplicitReturns){if(!l){if(!f)return;if(ax(t,Bc(Ic(t))))return}pn(e.getEffectiveReturnTypeNode(t)||t,e.Diagnostics.Not_all_code_paths_return_a_value)}}else pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value)}}}}function Tv(t,r){if(e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t)),Lx(t),r&&4&r&&Qd(t)){if(!e.getEffectiveReturnTypeNode(t)&&!ep(t)){var n=A_(t);if(n&&am(Bc(n))){var i=Cn(t);if(i.contextFreeType)return i.contextFreeType;var a=vv(t,r),o=ds(void 0,void 0,void 0,e.emptyArray,a,void 0,0,0),s=Wi(t.symbol,T,[o],e.emptyArray,void 0,void 0);return s.objectFlags|=2097152,i.contextFreeType=s}}return ct}return HE(t)||209!==t.kind||XE(t),function(t,r){var n=Cn(t);if(!(1024&n.flags)){var i=A_(t);if(!(1024&n.flags)){n.flags|=1024;var a=e.firstOrUndefined(hc(_o(Ai(t)),0));if(!a)return;if(Qd(t))if(i){var o=E_(t);r&&2&r&&function(t,r,n){for(var i=t.parameters.length-(U(t)?1:0),a=0;a<i;a++){var o=t.parameters[a].valueDeclaration;if(o.type){var s=e.getEffectiveTypeAnnotationNode(o);s&&ym(n.inferences,xd(s),nv(r,a))}}var c=lv(r);if(c&&262144&c.flags){fv(t,jd(r,n.nonFixingMapper));var l=ov(r)-1;ym(n.inferences,av(t,l),c)}}(a,i,o),fv(a,o?jd(i,o.mapper):i)}else!function(e){e.thisParameter&&mv(e.thisParameter);for(var t=0,r=e.parameters;t<r.length;t++)mv(r[t])}(a);if(i&&!zc(t)&&!a.resolvedReturnType){var s=vv(t,r);a.resolvedReturnType||(a.resolvedReturnType=s)}kb(t)}}}(t,r),_o(Ai(t))}function Cv(e,t,r,n){if(void 0===n&&(n=!1),!cp(t,Ze)){var i=n&&jb(t);return gn(e,!!i&&cp(i,Ze),r),!1}return!0}function Av(t){if(!e.isCallExpression(t))return!1;if(!e.isBindableObjectDefinePropertyCall(t))return!1;var r=$v(t.arguments[2]);if(Na(r,"value")){var n=gc(r,"writable"),i=n&&_o(n);if(!i||i===je||i===Be)return!0;if(n&&n.valueDeclaration&&e.isPropertyAssignment(n.valueDeclaration)){var a=fb(n.valueDeclaration.initializer);if(a===je||a===Be)return!0}return!1}return!gc(r,"set")}function Nv(t){return!!(8&e.getCheckFlags(t)||4&t.flags&&64&e.getDeclarationModifierFlagsFromSymbol(t)||3&t.flags&&2&lh(t)||98304&t.flags&&!(65536&t.flags)||8&t.flags||e.some(t.declarations,Av))}function Pv(t,r,n){var i,a;if(0===n)return!1;if(Nv(r)){if(4&r.flags&&e.isAccessExpression(t)&&108===t.expression.kind){var o=e.getContainingFunction(t);if(!o||167!==o.kind&&!Fy(o))return!0;if(r.valueDeclaration){var s=e.isBinaryExpression(r.valueDeclaration),c=o.parent===r.valueDeclaration.parent,l=o===r.valueDeclaration.parent,u=s&&(null===(i=r.parent)||void 0===i?void 0:i.valueDeclaration)===o.parent,d=s&&(null===(a=r.parent)||void 0===a?void 0:a.valueDeclaration)===o;return!(c||l||u||d)}}return!0}if(e.isAccessExpression(t)){var p=e.skipParentheses(t.expression);if(78===p.kind){var f=Cn(p).resolvedSymbol;if(2097152&f.flags){var m=Vn(f);return!!m&&266===m.kind}}}return!1}function Iv(t,r,n){var i=e.skipOuterExpressions(t,7);return 78===i.kind||e.isAccessExpression(i)?!(32&i.flags)||(pn(t,n),!1):(pn(t,r),!1)}function Fv(t){fb(t.expression);var r=e.skipParentheses(t.expression);if(!e.isAccessExpression(r))return pn(r,e.Diagnostics.The_operand_of_a_delete_operator_must_be_a_property_reference),qe;e.isPropertyAccessExpression(r)&&e.isPrivateIdentifier(r.name)&&pn(r,e.Diagnostics.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);var n=Ri(Cn(r).resolvedSymbol);return n&&(Nv(n)&&pn(r,e.Diagnostics.The_operand_of_a_delete_operator_cannot_be_a_read_only_property),function(t,r){var n=131075;!W||r.flags&n||32768&wf(r)||pn(t,e.Diagnostics.The_operand_of_a_delete_operator_must_be_optional)}(r,_o(n))),qe}function Ov(e){return Rv(e,2112)?Mv(e,3)||Rv(e,296)?Ze:Le:Me}function Rv(e,t){if(e.flags&t)return!0;if(3145728&e.flags)for(var r=0,n=e.types;r<n.length;r++){if(Rv(n[r],t))return!0}return!1}function Mv(e,t,r){return!!(e.flags&t)||!(r&&114691&e.flags)&&(!!(296&t)&&cp(e,Me)||!!(2112&t)&&cp(e,Le)||!!(402653316&t)&&cp(e,Re)||!!(528&t)&&cp(e,qe)||!!(16384&t)&&cp(e,Ve)||!!(131072&t)&&cp(e,He)||!!(65536&t)&&cp(e,Fe)||!!(32768&t)&&cp(e,Ne)||!!(4096&t)&&cp(e,Je)||!!(67108864&t)&&cp(e,Ye))}function Lv(t,r,n){return 1048576&t.flags?e.every(t.types,(function(e){return Lv(e,r,n)})):Mv(t,r,n)}function jv(t){return!!(16&e.getObjectFlags(t))&&!!t.symbol&&Bv(t.symbol)}function Bv(e){return!!(128&e.flags)}function zv(t,r,n,i,a){void 0===a&&(a=!1);var o=t.properties,s=o[n];if(291===s.kind||292===s.kind){var c=s.name,l=vu(c);if(Zo(l)){var u=gc(r,is(l));u&&(Lh(u,s,a),dh(s,!1,r,u))}var d=Oa(s,qu(r,l,void 0,c,void 0,void 0,16));return qv(292===s.kind?s:s.initializer,d)}if(293===s.kind){if(!(n<o.length-1)){V<99&&jE(s,4);var p=[];if(i)for(var f=0,m=i;f<m.length;f++){var g=m[f];e.isSpreadAssignment(g)||p.push(g.name)}d=Fa(r,p,r.symbol);return qE(i,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),qv(s.expression,d)}pn(s,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern)}else pn(s,e.Diagnostics.Property_assignment_expected)}function Uv(t,r,n,i,a){var o=t.elements,s=o[n];if(224!==s.kind){if(222!==s.kind){var c=hd(n);if(sf(r)){var l=16|(N_(s)?8:0),u=Vu(r,c,void 0,uy(s,c),l)||we;return qv(s,Oa(s,N_(s)?Hm(u,524288):u),a)}return qv(s,i,a)}if(n<o.length-1)pn(s,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern);else{var d=s.expression;if(218!==d.kind||62!==d.operatorToken.kind)return qE(t.elements,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),qv(d,lg(r,vf)?pg(r,(function(e){return $l(e,n)})):jl(i),a);pn(d.operatorToken,e.Diagnostics.A_rest_element_cannot_have_an_initializer)}}}function qv(t,r,n,i){var a;if(292===t.kind){var o=t;o.objectAssignmentInitializer&&(!W||32768&wf(fb(o.objectAssignmentInitializer))||(r=Hm(r,524288)),function(e,t,r,n,i){var a,o=t.kind;if(62===o&&(201===e.kind||200===e.kind))return qv(e,fb(r,n),n,108===r.kind);a=55===o||56===o||60===o?Ck(e,n):fb(e,n);var s=fb(r,n);Wv(e,t,r,a,s,i)}(o.name,o.equalsToken,o.objectAssignmentInitializer,n)),a=t.name}else a=t;return 218===a.kind&&62===a.operatorToken.kind&&(Hv(a,n),a=a.left),201===a.kind?function(e,t,r){var n=e.properties;if(W&&0===n.length)return vh(t,e);for(var i=0;i<n.length;i++)zv(e,t,i,n,r);return t}(a,r,i):200===a.kind?function(e,t,r){var n=e.elements;V<2&&J.downlevelIteration&&jE(e,512);for(var i=Ik(193,t,Ne,e)||we,a=J.noUncheckedIndexedAccess?void 0:i,o=0;o<n.length;o++){var s=i;222===e.elements[o].kind&&(s=a=null!=a?a:Ik(65,t,Ne,e)||we),Uv(e,t,o,s,r)}return t}(a,r,n):function(t,r,n){var i=fb(t,n),a=293===t.parent.kind?e.Diagnostics.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:e.Diagnostics.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,o=293===t.parent.kind?e.Diagnostics.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:e.Diagnostics.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;Iv(t,a,o)&&fp(r,i,t,t);e.isPrivateIdentifierPropertyAccessExpression(t)&&jE(t.parent,1048576);return r}(a,r,n)}function Jv(t){switch((t=e.skipParentheses(t)).kind){case 78:case 10:case 13:case 206:case 220:case 14:case 8:case 9:case 110:case 95:case 104:case 151:case 209:case 223:case 210:case 200:case 201:case 213:case 227:case 277:case 276:return!0;case 219:return Jv(t.whenTrue)&&Jv(t.whenFalse);case 218:return!e.isAssignmentOperator(t.operatorToken.kind)&&(Jv(t.left)&&Jv(t.right));case 216:case 217:switch(t.operator){case 53:case 39:case 40:case 54:return!0}return!1;default:return!1}}function Vv(e,t){return!!(98304&t.flags)||up(e,t)}function Hv(t,r){for(var n,i={expr:[t],state:[0],leftType:[void 0]},a=0;a>=0;)switch(t=i.expr[a],i.state[a]){case 0:if(e.isInJSFile(t)&&e.getAssignedExpandoInitializer(t)){u(fb(t.right,r));break}if(Kv(t),62===(o=t.operatorToken.kind)&&(201===t.left.kind||200===t.left.kind)){u(qv(t.left,fb(t.right,r),r,108===t.right.kind));break}d(1),p(t.left);break;case 1:var o,s=n;if(i.leftType[a]=s,55===(o=t.operatorToken.kind)||56===o||60===o){if(55===o){var c=e.walkUpParenthesizedExpressions(t.parent);wk(t.left,s,e.isIfStatement(c)?c.thenStatement:void 0)}Tk(s,t.left)}d(2),p(t.right);break;case 2:s=i.leftType[a];var l=n;u(Wv(t.left,t.operatorToken,t.right,s,l,t));break;default:return e.Debug.fail("Invalid state "+i.state[a]+" for checkBinaryExpression")}return n;function u(e){n=e,a--}function d(e){i.state[a]=e}function p(t){e.isBinaryExpression(t)?(a++,i.expr[a]=t,i.state[a]=0,i.leftType[a]=void 0):n=fb(t,r)}}function Kv(t){var r=t.left,n=t.operatorToken,i=t.right;60===n.kind&&(!e.isBinaryExpression(r)||56!==r.operatorToken.kind&&55!==r.operatorToken.kind||fS(r,e.Diagnostics._0_and_1_operations_cannot_be_mixed_without_parentheses,e.tokenToString(r.operatorToken.kind),e.tokenToString(n.kind)),!e.isBinaryExpression(i)||56!==i.operatorToken.kind&&55!==i.operatorToken.kind||fS(i,e.Diagnostics._0_and_1_operations_cannot_be_mixed_without_parentheses,e.tokenToString(i.operatorToken.kind),e.tokenToString(n.kind)))}function Wv(t,n,i,a,o,s){var c,l,u=n.kind;switch(u){case 41:case 42:case 65:case 66:case 43:case 67:case 44:case 68:case 40:case 64:case 47:case 69:case 48:case 70:case 49:case 71:case 51:case 73:case 52:case 77:case 50:case 72:if(a===Ke||o===Ke)return Ke;a=vh(a,t),o=vh(o,i);var d=void 0;if(528&a.flags&&528&o.flags&&void 0!==(d=function(e){switch(e){case 51:case 73:return 56;case 52:case 77:return 37;case 50:case 72:return 55;default:return}}(n.kind)))return pn(s||n,e.Diagnostics.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,e.tokenToString(n.kind),e.tokenToString(d)),Me;var p,f=Cv(t,a,e.Diagnostics.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),m=Cv(i,o,e.Diagnostics.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0);if(Mv(a,3)&&Mv(o,3)||!Rv(a,2112)&&!Rv(o,2112))p=Me;else if(S(a,o)){switch(u){case 49:case 71:C();break;case 42:case 66:V<3&&pn(s,e.Diagnostics.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}p=Le}else C(S),p=we;return f&&m&&w(p),p;case 39:case 63:if(a===Ke||o===Ke)return Ke;Mv(a,402653316)||Mv(o,402653316)||(a=vh(a,t),o=vh(o,i));var g=void 0;if(Mv(a,296,!0)&&Mv(o,296,!0)?g=Me:Mv(a,2112,!0)&&Mv(o,2112,!0)?g=Le:Mv(a,402653316,!0)||Mv(o,402653316,!0)?g=Re:(Pa(a)||Pa(o))&&(g=a===we||o===we?we:Ee),g&&!D(u))return g;if(!g){var _=402655727;return C((function(e,t){return Mv(e,_)&&Mv(t,_)})),Ee}return 63===u&&w(g),g;case 29:case 31:case 32:case 33:return D(u)&&(a=mf(vh(a,t)),o=mf(vh(o,i)),T((function(e,t){return up(e,t)||up(t,e)||cp(e,Ze)&&cp(t,Ze)}))),qe;case 34:case 35:case 36:case 37:return T((function(e,t){return Vv(e,t)||Vv(t,e)})),qe;case 102:return function(t,r,n,i){return n===Ke||i===Ke?Ke:(!Pa(n)&&Lv(n,131068)&&pn(t,e.Diagnostics.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),Pa(i)||nE(i)||sp(i,vt)||pn(r,e.Diagnostics.The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type),qe)}(t,i,a,o);case 101:return function(t,r,n,i){if(n===Ke||i===Ke)return Ke;n=vh(n,t),i=vh(i,r),Lv(n,402665900)||Mv(n,407109632)||pn(t,e.Diagnostics.The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol);var a=Ks(i);return(!Lv(i,126091264)||a&&(Mv(i,3145728)&&!Lv(a,126091264)||!Rv(a,126615552)))&&pn(r,e.Diagnostics.The_right_hand_side_of_an_in_expression_must_not_be_a_primitive),qe}(t,i,a,o);case 55:case 75:var h=4194304&Vm(a)?ou([(l=W?a:mf(o),pg(l,Cf)),o]):a;return 75===u&&w(o),h;case 56:case 74:var y=8388608&Vm(a)?ou([Tf(a),o],2):a;return 74===u&&w(o),y;case 60:case 76:var v=262144&Vm(a)?ou([Pf(a),o],2):a;return 76===u&&w(o),v;case 62:var b=e.isBinaryExpression(t.parent)?e.getAssignmentDeclarationKind(t.parent):0;return function(t,r){if(2===t)for(var n=0,i=qs(r);n<i.length;n++){var a=i[n],o=_o(a);if(o.symbol&&32&o.symbol.flags){var s=a.escapedName,c=Fn(a.valueDeclaration,s,788968,void 0,s,!1);c&&c.declarations.some(e.isJSDocTypedefTag)&&(En(c,e.Diagnostics.Duplicate_identifier_0,e.unescapeLeadingUnderscores(s),a),En(a,e.Diagnostics.Duplicate_identifier_0,e.unescapeLeadingUnderscores(s),c))}}}(b,o),function(r){var n;switch(r){case 2:return!0;case 1:case 5:case 6:case 3:case 4:var a=Ai(t),o=e.getAssignedExpandoInitializer(i);return!!o&&e.isObjectLiteralExpression(o)&&!!(null===(n=null==a?void 0:a.exports)||void 0===n?void 0:n.size);default:return!1}}(b)?(524288&o.flags&&(2===b||6===b||wp(o)||Jm(o)||1&e.getObjectFlags(o))||w(o),a):(w(o),Bf(o));case 27:if(!J.allowUnreachableCode&&Jv(t)&&(78!==(c=i).kind||"eval"!==c.escapedText)){var k=e.getSourceFileOfNode(t),x=k.text,E=e.skipTrivia(x,t.pos);k.parseDiagnostics.some((function(t){return t.code===e.Diagnostics.JSX_expressions_must_have_one_parent_element.code&&e.textSpanContainsPosition(t,E)}))||pn(t,e.Diagnostics.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return o;default:return e.Debug.fail()}function S(e,t){return Mv(e,2112)&&Mv(t,2112)}function D(r){var n=Rv(a,12288)?t:Rv(o,12288)?i:void 0;return!n||(pn(n,e.Diagnostics.The_0_operator_cannot_be_applied_to_type_symbol,e.tokenToString(r)),!1)}function w(n){r&&e.isAssignmentOperator(u)&&(!Iv(t,e.Diagnostics.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,e.Diagnostics.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)||e.isIdentifier(t)&&"exports"===e.unescapeLeadingUnderscores(t.escapedText)||fp(n,a,t,i))}function T(e){return!e(a,o)&&(C(e),!0)}function C(t){var r,i=!1,c=s||n;if(t){var l=Ub(a),u=Ub(o);i=!(l===a&&u===o)&&!(!l||!u)&&t(l,u)}var d=a,p=o;!i&&t&&(r=function(e,t,r){var n=e,i=t,a=mf(e),o=mf(t);r(a,o)||(n=a,i=o);return[n,i]}(a,o,t),d=r[0],p=r[1]);var f=pa(d,p),m=f[0],g=f[1];(function(t,r,i,a){var o;switch(n.kind){case 36:case 34:o="false";break;case 37:case 35:o="true"}if(o)return gn(t,r,e.Diagnostics.This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap,o,i,a);return})(c,i,m,g)||gn(c,i,e.Diagnostics.Operator_0_cannot_be_applied_to_types_1_and_2,e.tokenToString(n.kind),m,g)}}function Gv(t,r,n,i){var a=function(t){return 284!==t.kind||e.isJsxSelfClosingElement(t.parent)?t:t.parent.parent}(t),o=a.contextualType,s=a.inferenceContext;try{a.contextualType=r,a.inferenceContext=n;var c=fb(t,1|i|(n?2:0));return Rv(c,2944)&&Qv(c,b_(r,t))?gd(c):c}finally{a.contextualType=o,a.inferenceContext=s}}function $v(e,t){var r=Cn(e);if(!r.resolvedType){if(t&&0!==t)return fb(e,t);var n=Sr,i=nr;Sr=Dr,nr=void 0,r.resolvedType=fb(e,t),nr=i,Sr=n}return r.resolvedType}function Yv(t,r){var n=e.getEffectiveInitializer(t),i=db(n)||(r?Gv(n,r,void 0,0):$v(n));return e.isParameter(t)&&198===t.name.kind&&vf(i)&&!i.target.hasRestElement&&ul(i)<t.name.elements.length?function(t,r){for(var n=r.elements,i=ll(t).slice(),a=t.target.elementFlags.slice(),o=ul(t);o<n.length;o++){var s=n[o];(o<n.length-1||199!==s.kind||!s.dotDotDotToken)&&(i.push(!e.isOmittedExpression(s)&&N_(s)?Qa(s,!1,!1):Ee),a.push(2),e.isOmittedExpression(s)||N_(s)||Gf(s,Ee))}return Hl(i,a,t.target.readonly)}(i,t.name):i}function Xv(t,r){var n=2&e.getCombinedNodeFlags(t)||e.isDeclarationReadonly(t)?r:gf(r);if(e.isInJSFile(t)){if(98304&n.flags)return Gf(t,Ee),Ee;if(cf(n))return Gf(t,At),At}return n}function Qv(t,r){if(r){if(3145728&r.flags){var n=r.types;return e.some(n,(function(e){return Qv(t,e)}))}if(58982400&r.flags){var i=Qs(r)||Ae;return Rv(i,4)&&Rv(t,128)||Rv(i,8)&&Rv(t,256)||Rv(i,64)&&Rv(t,2048)||Rv(i,4096)&&Rv(t,8192)||Qv(t,i)}return!!(406847616&r.flags&&Rv(t,128)||256&r.flags&&Rv(t,256)||2048&r.flags&&Rv(t,2048)||512&r.flags&&Rv(t,512)||8192&r.flags&&Rv(t,8192))}return!1}function Zv(t){var r=t.parent;return e.isAssertionExpression(r)&&e.isConstTypeReference(r.type)||(e.isParenthesizedExpression(r)||e.isArrayLiteralExpression(r)||e.isSpreadElement(r))&&Zv(r)||(e.isPropertyAssignment(r)||e.isShorthandPropertyAssignment(r)||e.isTemplateSpan(r))&&Zv(r.parent)}function eb(t,r,n,i){var a=fb(t,r,i);return Zv(t)?gd(a):function(t){return 207===(t=e.skipParentheses(t)).kind||226===t.kind}(t)?a:hf(a,b_(2===arguments.length?x_(t):n,t))}function tb(e,t){return 159===e.name.kind&&M_(e.name),eb(e.initializer,t)}function rb(e,t){return nS(e),159===e.name.kind&&M_(e.name),nb(e,Tv(e,t),t)}function nb(t,r,n){if(n&&10&n){var i=ey(r,0,!0),a=ey(r,1,!0),o=i||a;if(o&&o.typeParameters){var s=v_(t,2);if(s){var c=ey(Pf(s),i?0:1,!1);if(c&&!c.typeParameters){if(8&n)return ib(t,n),ct;var l=E_(t),u=l.signature&&Bc(l.signature),d=u&&Zh(u);if(d&&!d.typeParameters&&!e.every(l.inferences,ab)){var p=function(t,r){for(var n,i,a=[],o=0,s=r;o<s.length;o++){var c=(f=s[o]).symbol.escapedName;if(ob(t.inferredTypeParameters,c)||ob(a,c)){var l=Ji(yn(262144,sb(e.concatenate(t.inferredTypeParameters,a),c)));l.target=f,n=e.append(n,f),i=e.append(i,l),a.push(l)}else a.push(f)}if(i)for(var u=Td(n,i),d=0,p=i;d<p.length;d++){var f;(f=p[d]).mapper=u}return a}(l,o.typeParameters),f=Vc(o,p),m=e.map(l.inferences,(function(e){return rm(e.typeParameter)}));if(Yf(f,c,(function(e,t){ym(m,e,t,0,!0)})),e.some(m,ab)&&(Xf(f,c,(function(e,t){ym(m,e,t)})),!function(e,t){for(var r=0;r<e.length;r++)if(ab(e[r])&&ab(t[r]))return!0;return!1}(l.inferences,m)))return function(e,t){for(var r=0;r<e.length;r++)!ab(e[r])&&ab(t[r])&&(e[r]=t[r])}(l.inferences,m),l.inferredTypeParameters=e.concatenate(l.inferredTypeParameters,p),$c(f)}return $c(ty(o,c,l))}}}}return r}function ib(e,t){2&t&&(E_(e).flags|=4)}function ab(e){return!(!e.candidates&&!e.contraCandidates)}function ob(t,r){return e.some(t,(function(e){return e.symbol.escapedName===r}))}function sb(e,t){for(var r=t.length;r>1&&t.charCodeAt(r-1)>=48&&t.charCodeAt(r-1)<=57;)r--;for(var n=t.slice(0,r),i=1;;i++){var a=n+i;if(!ob(e,a))return a}}function cb(e){var t=Qh(e);if(t&&!t.typeParameters)return Bc(t)}function lb(e){var t=fb(e.expression),r=Mf(t,e.expression),n=cb(t);return n&&Rf(n,e,r!==t)}function ub(t,r){var n=db(t);if(n)return n;if(67108864&t.flags&&nr){var i=nr[O(t)];if(i)return i}var a=Cr,o=fb(t,r);Cr!==a&&((nr||(nr=[]))[O(t)]=o,e.setNodeFlags(t,67108864|t.flags));return o}function db(t){var r=e.skipParentheses(t);if(!e.isCallExpression(r)||106===r.expression.kind||e.isRequireCall(r,!0)||Jy(r))if(!e.isEtsComponentExpression(r)||106===r.expression.kind||e.isRequireCall(r,!0)||Jy(r)){if(e.isAssertionExpression(r)&&!e.isConstTypeReference(r.type))return xd(r.type);if(8===t.kind||10===t.kind||110===t.kind||95===t.kind)return fb(t)}else{var n;if(n=e.isCallChain(r)?lb(r):cb(fh(r.expression,32)))return n}else if(n=e.isCallChain(r)?lb(r):cb(fh(r.expression,32)))return n}function pb(e){var t=Cn(e);if(t.contextFreeType)return t.contextFreeType;var r=e.contextualType;e.contextualType=Ee;try{return t.contextFreeType=fb(e,4)}finally{e.contextualType=r}}function fb(t,r,n){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkExpression",{kind:t.kind,pos:t.pos,end:t.end});var i=d;d=t,x=0;var a=nb(t,mb(t,r,n),r);return jv(a)&&function(t,r){var n=202===t.parent.kind&&t.parent.expression===t||203===t.parent.kind&&t.parent.expression===t||(78===t.kind||158===t.kind)&&Gx(t)||177===t.parent.kind&&t.parent.exprName===t||273===t.parent.kind;n||pn(t,e.Diagnostics.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query);if(J.isolatedModules){e.Debug.assert(!!(128&r.symbol.flags)),8388608&r.symbol.valueDeclaration.flags&&pn(t,e.Diagnostics.Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided)}}(t,a),d=i,null===e.tracing||void 0===e.tracing||e.tracing.pop(),a}function mb(t,i,a){var o=t.kind;if(n)switch(o){case 223:case 209:case 210:n.throwIfCancellationRequested()}switch(o){case 78:return Vg(t);case 108:return $g(t);case 106:return Qg(t);case 104:return Oe;case 14:case 10:return md(hd(t.text));case 8:return _S(t),md(hd(+t.text));case 9:return function(t){var r=e.isLiteralTypeNode(t.parent)||e.isPrefixUnaryExpression(t.parent)&&e.isLiteralTypeNode(t.parent.parent);if(!r&&V<7&&fS(t,e.Diagnostics.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))return!0}(t),md(function(t){return hd({negative:!1,base10Value:e.parsePseudoBigInt(t.text)})}(t));case 110:return ze;case 95:return je;case 220:return function(t){for(var r=[t.head.text],n=[],i=0,a=t.templateSpans;i<a.length;i++){var o=a[i],s=fb(o.expression);Rv(s,12288)&&pn(o.expression,e.Diagnostics.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),r.push(o.literal.text),n.push(cp(s,et)?s:Re)}return Zv(t)?Du(r,n):Re}(t);case 13:return Tt;case 200:return P_(t,i,a);case 201:return B_(t,i);case 202:return kh(t,i);case 158:return xh(t);case 203:return zh(t);case 204:if(100===t.expression.kind)return Vy(t);case 205:return My(t,i);case 211:var s=t;return s.body&&s.body.statements.length&&hb(s.body.statements,i),My(t,i);case 206:return Wy(t);case 208:return function(t,r){var n=e.isInJSFile(t)?e.getJSDocTypeTag(t):void 0;return n?$y(n,n.typeExpression.type,t.expression,r):fb(t.expression,r)}(t,i);case 223:return function(e){return fx(e),Lx(e),_o(Ai(e))}(t);case 209:case 210:return Tv(t,i);case 213:return function(e){return fb(e.expression),tn}(t);case 207:case 226:return function(e){return $y(e,e.type,e.expression)}(t);case 227:return Yy(t);case 228:return Xy(t);case 212:return Fv(t);case 214:return function(e){return fb(e.expression),Pe}(t);case 215:return function(t){if(r){var n;if(!(32768&t.flags))if(e.isInTopLevelContext(t)){if(!uS(n=e.getSourceFileOfNode(t))){var i=void 0;if(!e.isEffectiveExternalModule(n,J)){i||(i=e.getSpanOfTokenAtPosition(n,t.pos));var a=e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module);Qr.add(a)}(H!==e.ModuleKind.ESNext&&H!==e.ModuleKind.System||V<4)&&(i=e.getSpanOfTokenAtPosition(n,t.pos),a=e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher),Qr.add(a))}}else if(!uS(n=e.getSourceFileOfNode(t))){i=e.getSpanOfTokenAtPosition(n,t.pos),a=e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules);var o=e.getContainingFunction(t);if(o&&167!==o.kind&&!(2&e.getFunctionFlags(o))){var s=e.createDiagnosticForNode(o,e.Diagnostics.Did_you_mean_to_mark_this_function_as_async);e.addRelatedInfo(a,s)}Qr.add(a)}i_(t)&&pn(t,e.Diagnostics.await_expressions_cannot_be_used_in_a_parameter_initializer)}var c=fb(t.expression),l=zb(c,t,e.Diagnostics.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return l!==c||l===we||3&c.flags||fn(!1,e.createDiagnosticForNode(t,e.Diagnostics.await_has_no_effect_on_the_type_of_this_expression)),l}(t);case 216:return function(t){var r=fb(t.operand);if(r===Ke)return Ke;switch(t.operand.kind){case 8:switch(t.operator){case 40:return md(hd(-t.operand.text));case 39:return md(hd(+t.operand.text))}break;case 9:if(40===t.operator)return md(hd({negative:!0,base10Value:e.parsePseudoBigInt(t.operand.text)}))}switch(t.operator){case 39:case 40:case 54:return vh(r,t.operand),Rv(r,12288)&&pn(t.operand,e.Diagnostics.The_0_operator_cannot_be_applied_to_type_symbol,e.tokenToString(t.operator)),39===t.operator?(Rv(r,2112)&&pn(t.operand,e.Diagnostics.Operator_0_cannot_be_applied_to_type_1,e.tokenToString(t.operator),da(mf(r))),Me):Ov(r);case 53:Ck(t.operand);var n=12582912&Vm(r);return 4194304===n?je:8388608===n?ze:qe;case 45:case 46:return Cv(t.operand,vh(r,t.operand),e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&Iv(t.operand,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),Ov(r)}return we}(t);case 217:return function(t){var r=fb(t.operand);return r===Ke?Ke:(Cv(t.operand,vh(r,t.operand),e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&Iv(t.operand,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),Ov(r))}(t);case 218:return Hv(t,i);case 219:return function(e,t){var r=Ck(e.condition);return wk(e.condition,r,e.whenTrue),ou([fb(e.whenTrue,t),fb(e.whenFalse,t)],2)}(t,i);case 222:return function(e,t){return V<2&&jE(e,J.downlevelIteration?1536:1024),Ik(33,fb(e.expression,t),Ne,e.expression)}(t,i);case 224:return Pe;case 221:return function(t){r&&(8192&t.flags||dS(t,e.Diagnostics.A_yield_expression_is_only_allowed_in_a_generator_body),i_(t)&&pn(t,e.Diagnostics.yield_expressions_cannot_be_used_in_a_parameter_initializer));var n=e.getContainingFunction(t);if(!n)return Ee;var i=e.getFunctionFlags(n);if(!(1&i))return Ee;var a=!!(2&i);t.asteriskToken&&(a&&V<99&&jE(t,26624),!a&&V<2&&J.downlevelIteration&&jE(t,256));var o=zc(n),s=o&&rx(o,a),c=s&&s.yieldType||Ee,l=s&&s.nextType||Ee,u=a?Ub(l)||Ee:l,d=t.expression?fb(t.expression):Pe,p=kv(t,d,u,a);if(o&&p&&fp(p,c,t.expression||t,t.expression),t.asteriskToken)return Ok(a?19:17,1,d,t.expression)||Ee;if(o)return tx(2,o,a)||Ee;var f=a_(2,n);if(!f&&(f=Ee,r&&X&&!e.expressionResultIsUnused(t))){var m=x_(t);m&&!Pa(m)||pn(t,e.Diagnostics.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}return f}(t);case 229:return function(e){return e.isSpread?qu(e.type,Me):e.type}(t);case 286:return ch(t,i);case 276:case 277:return function(e){return Lx(e),nh(e)||Ee}(t);case 280:return function(t){ah(t.openingFragment);var r=e.getSourceFileOfNode(t);return!e.getJSXTransformEnabled(J)||!J.jsxFactory&&!r.pragmas.has("jsx")||J.jsxFragmentFactory||r.pragmas.has("jsxfrag")||pn(t,J.jsxFactory?e.Diagnostics.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:e.Diagnostics.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),V_(t),nh(t)||Ee}(t);case 284:return K_(t,i);case 278:e.Debug.fail("Shouldn't ever directly check a JsxOpeningElement")}return we}function gb(t,r){_b(t,r),t.thenStatement&&e.isBlock(t.thenStatement)&&t.thenStatement.statements&&hb(t.thenStatement.statements,r),t.elseStatement&&(e.isIfStatement(t.elseStatement)&&gb(t.elseStatement,r),e.isBlock(t.elseStatement)&&t.elseStatement.statements&&hb(t.elseStatement.statements,r))}function _b(e,t){e.expression&&mb(e.expression,t),e.getChildren().forEach((function(e){return _b(e,t)}))}function hb(t,r){t.length&&t.forEach((function(t){e.isIfStatement(t)?gb(t,r):t.expression&&mb(t.expression,r)}))}function yb(t){t.expression&&dS(t.expression,e.Diagnostics.Type_expected),Rx(t.constraint),Rx(t.default);var n=qo(Ai(t));Qs(n),function(e){return rc(e)!==ut}(n)||pn(t.default,e.Diagnostics.Type_parameter_0_has_a_circular_default,da(n));var i=Ws(n),a=nc(n);i&&a&&pp(a,ls(Wd(i,Ad(n,a)),a),t.default,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1),r&&cx(t.name,e.Diagnostics.Type_parameter_name_cannot_be_0)}function vb(t){zE(t),bk(t);var r=e.getContainingFunction(t);e.hasSyntacticModifier(t,92)&&(167===r.kind&&e.nodeIsPresent(r.body)||pn(t,e.Diagnostics.A_parameter_property_is_only_allowed_in_a_constructor_implementation),167===r.kind&&e.isIdentifier(t.name)&&"constructor"===t.name.escapedText&&pn(t.name,e.Diagnostics.constructor_cannot_be_used_as_a_parameter_property_name)),t.questionToken&&e.isBindingPattern(t.name)&&r.body&&pn(t,e.Diagnostics.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),t.name&&e.isIdentifier(t.name)&&("this"===t.name.escapedText||"new"===t.name.escapedText)&&(0!==r.parameters.indexOf(t)&&pn(t,e.Diagnostics.A_0_parameter_must_be_the_first_parameter,t.name.escapedText),167!==r.kind&&171!==r.kind&&176!==r.kind||pn(t,e.Diagnostics.A_constructor_cannot_have_a_this_parameter),210===r.kind&&pn(t,e.Diagnostics.An_arrow_function_cannot_have_a_this_parameter),168!==r.kind&&169!==r.kind||pn(t,e.Diagnostics.get_and_set_accessors_cannot_declare_this_parameters)),!t.dotDotDotToken||e.isBindingPattern(t.name)||cp(uc(_o(t.symbol)),Pt)||pn(t,e.Diagnostics.A_rest_parameter_must_be_of_an_array_type)}function bb(t,r,n){for(var i=0,a=t.elements;i<a.length;i++){var o=a[i];if(!e.isOmittedExpression(o)){var s=o.name;if(78===s.kind&&s.escapedText===n)return pn(r,e.Diagnostics.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,n),!0;if((198===s.kind||197===s.kind)&&bb(s,r,n))return!0}}}function kb(t){172===t.kind?function(t){zE(t)||function(t){var r=t.parameters[0];if(1!==t.parameters.length)return fS(r?r.name:t,e.Diagnostics.An_index_signature_must_have_exactly_one_parameter);if(qE(t.parameters,e.Diagnostics.An_index_signature_cannot_have_a_trailing_comma),r.dotDotDotToken)return fS(r.dotDotDotToken,e.Diagnostics.An_index_signature_cannot_have_a_rest_parameter);if(e.hasEffectiveModifiers(r))return fS(r.name,e.Diagnostics.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(r.questionToken)return fS(r.questionToken,e.Diagnostics.An_index_signature_parameter_cannot_have_a_question_mark);if(r.initializer)return fS(r.name,e.Diagnostics.An_index_signature_parameter_cannot_have_an_initializer);if(!r.type)return fS(r.name,e.Diagnostics.An_index_signature_parameter_must_have_a_type_annotation);if(148!==r.type.kind&&145!==r.type.kind){var n=xd(r.type);return 4&n.flags||8&n.flags?fS(r.name,e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead,e.getTextOfNode(r.name),da(n),da(t.type?xd(t.type):Ee)):1048576&n.flags&&Lv(n,384,!0)?fS(r.name,e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead):fS(r.name,e.Diagnostics.An_index_signature_parameter_type_must_be_either_string_or_number)}if(!t.type)return fS(t,e.Diagnostics.An_index_signature_must_have_a_type_annotation)}(t)}(t):175!==t.kind&&253!==t.kind&&176!==t.kind&&170!==t.kind&&167!==t.kind&&171!==t.kind||HE(t);var n=e.getFunctionFlags(t);if(4&n||(!(3&~n)&&V<99&&jE(t,6144),2==(3&n)&&V<4&&jE(t,64),3&n&&V<2&&jE(t,128)),lx(t.typeParameters),e.forEach(t.parameters,vb),t.type&&Rx(t.type),r){!function(t){if(V>=2||!e.hasRestParameter(t)||8388608&t.flags||e.nodeIsMissing(t.body))return;e.forEach(t.parameters,(function(t){t.name&&!e.isBindingPattern(t.name)&&t.name.escapedText===se.escapedName&&dn("noEmit",t,e.Diagnostics.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)}))}(t);var i=e.getEffectiveReturnTypeNode(t);if(X&&!i)switch(t.kind){case 171:pn(t,e.Diagnostics.Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break;case 170:pn(t,e.Diagnostics.Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type)}if(i){var a=e.getFunctionFlags(t);if(1==(5&a)){var o=xd(i);if(o===Ve)pn(i,e.Diagnostics.A_generator_cannot_have_a_void_type_annotation);else{var s=tx(0,o,!!(2&a))||Ee;pp(bv(s,tx(1,o,!!(2&a))||s,tx(2,o,!!(2&a))||Ae,!!(2&a)),o,i)}}else 2==(3&a)&&function(t,r){var n=xd(r);if(V>=2){if(n===we)return;var i=Il(!0);if(i!==st&&!ho(n,i))return void pn(r,e.Diagnostics.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,da(Ub(n)||Ve))}else{if(function(t){Vb(t&&e.getEntityNameFromTypeNode(t))}(r),n===we)return;var a=e.getEntityNameFromTypeNode(r);if(void 0===a)return void pn(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,da(n));var o=fi(a,111551,!0),s=o?_o(o):we;if(s===we)return void(78===a.kind&&"Promise"===a.escapedText&&yo(n)===Il(!1)?pn(r,e.Diagnostics.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):pn(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,e.entityNameToString(a)));var c=(d=!0,Bt||(Bt=Al("PromiseConstructorLike",0,d))||nt);if(c===nt)return void pn(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,e.entityNameToString(a));if(!pp(s,c,r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value))return;var l=a&&e.getFirstIdentifier(a),u=Nn(t.locals,l.escapedText,111551);if(u)return void pn(u.valueDeclaration,e.Diagnostics.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,e.idText(l),e.entityNameToString(a))}var d;zb(n,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)}(t,i)}172!==t.kind&&311!==t.kind&&Qb(t)}}function xb(t){for(var r=new e.Map,n=0,i=t.members;n<i.length;n++){var a=i[n];if(163===a.kind){var o=void 0,s=a.name;switch(s.kind){case 10:case 8:o=s.text;break;case 78:o=e.idText(s);break;default:continue}r.get(o)?(pn(e.getNameOfDeclaration(a.symbol.valueDeclaration),e.Diagnostics.Duplicate_identifier_0,o),pn(a.name,e.Diagnostics.Duplicate_identifier_0,o)):r.set(o,!0)}}}function Eb(t){if(256===t.kind){var r=Ai(t);if(r.declarations.length>0&&r.declarations[0]!==t)return}var n=Yc(Ai(t));if(n)for(var i=!1,a=!1,o=0,s=n.declarations;o<s.length;o++){var c=s[o];if(1===c.parameters.length&&c.parameters[0].type)switch(c.parameters[0].type.kind){case 148:a?pn(c,e.Diagnostics.Duplicate_string_index_signature):a=!0;break;case 145:i?pn(c,e.Diagnostics.Duplicate_number_index_signature):i=!0}}}function Sb(t){if(zE(t)||function(t){if(e.isClassLike(t.parent)){if(e.isStringLiteral(t.name)&&"constructor"===t.name.text)return fS(t.name,e.Diagnostics.Classes_may_not_have_a_field_named_constructor);if(rS(t.name,e.Diagnostics.A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(V<2&&e.isPrivateIdentifier(t.name))return fS(t.name,e.Diagnostics.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher)}else if(256===t.parent.kind){if(rS(t.name,e.Diagnostics.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(t.initializer)return fS(t.initializer,e.Diagnostics.An_interface_property_cannot_have_an_initializer)}else if(178===t.parent.kind){if(rS(t.name,e.Diagnostics.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(t.initializer)return fS(t.initializer,e.Diagnostics.A_type_literal_property_cannot_have_an_initializer)}8388608&t.flags&&aS(t);if(e.isPropertyDeclaration(t)&&t.exclamationToken&&(!e.isClassLike(t.parent)||!t.type||t.initializer||8388608&t.flags||e.hasSyntacticModifier(t,160))){var r=t.initializer?e.Diagnostics.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:t.type?e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context:e.Diagnostics.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return fS(t.exclamationToken,r)}}(t)||YE(t.name),bk(t),e.isPrivateIdentifier(t.name)&&V<99)for(var r=e.getEnclosingBlockScopeContainer(t);r;r=e.getEnclosingBlockScopeContainer(r))Cn(r).flags|=67108864}function Db(t){if(!t.virtual){kb(t),function(t){var r=e.isInJSFile(t)?e.getJSDocTypeParameterDeclarations(t):void 0,n=t.typeParameters||r&&e.firstOrUndefined(r);if(n){var i=n.pos===n.end?n.pos:e.skipTrivia(e.getSourceFileOfNode(t).text,n.pos);return pS(t,i,n.end-i,e.Diagnostics.Type_parameters_cannot_appear_on_a_constructor_declaration)}}(t)||function(t){var r=e.getEffectiveReturnTypeNode(t);if(r)fS(r,e.Diagnostics.Type_annotation_cannot_appear_on_a_constructor_declaration)}(t),Rx(t.body);var n=Ai(t);if(t===e.getDeclarationOfKind(n,t.kind)&&Mb(n),!e.nodeIsMissing(t.body)&&r){var i=t.parent;if(e.getClassExtendsHeritageElement(i)){Hg(t.parent,i);var a=Wg(i),o=Kg(t.body);if(o){if(a&&pn(o,e.Diagnostics.A_constructor_cannot_contain_a_super_call_when_its_class_extends_null),(99!==J.target||!J.useDefineForClassFields)&&(e.some(t.parent.members,(function(t){return!!e.isPrivateIdentifierPropertyDeclaration(t)||164===t.kind&&!e.hasSyntacticModifier(t,32)&&!!t.initializer}))||e.some(t.parameters,(function(t){return e.hasSyntacticModifier(t,92)})))){for(var s=void 0,c=0,l=t.body.statements;c<l.length;c++){var u=l[c];if(235===u.kind&&e.isSuperCall(u.expression)){s=u;break}if(!e.isPrologueDirective(u))break}s||pn(t,e.Diagnostics.A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_properties_parameter_properties_or_private_identifiers)}}else a||pn(t,e.Diagnostics.Constructors_for_derived_classes_must_contain_a_super_call)}}}}function wb(t){if(r){if(HE(t)||function(t){if(!(8388608&t.flags)){if(V<1)return fS(t.name,e.Diagnostics.Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher);if(void 0===t.body&&!e.hasSyntacticModifier(t,128))return pS(t,t.end-1,1,e.Diagnostics._0_expected,"{")}if(t.body&&e.hasSyntacticModifier(t,128))return fS(t,e.Diagnostics.An_abstract_accessor_cannot_have_an_implementation);if(t.typeParameters)return fS(t.name,e.Diagnostics.An_accessor_cannot_have_type_parameters);if(!function(e){return tS(e)||e.parameters.length===(168===e.kind?0:1)}(t))return fS(t.name,168===t.kind?e.Diagnostics.A_get_accessor_cannot_have_parameters:e.Diagnostics.A_set_accessor_must_have_exactly_one_parameter);if(169===t.kind){if(t.type)return fS(t.name,e.Diagnostics.A_set_accessor_cannot_have_a_return_type_annotation);var r=e.Debug.checkDefined(e.getSetAccessorValueParameter(t),"Return value does not match parameter count assertion.");if(r.dotDotDotToken)return fS(r.dotDotDotToken,e.Diagnostics.A_set_accessor_cannot_have_rest_parameter);if(r.questionToken)return fS(r.questionToken,e.Diagnostics.A_set_accessor_cannot_have_an_optional_parameter);if(r.initializer)return fS(t.name,e.Diagnostics.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}(t)||YE(t.name),$b(t),kb(t),168===t.kind&&!(8388608&t.flags)&&e.nodeIsPresent(t.body)&&256&t.flags&&(512&t.flags||pn(t.name,e.Diagnostics.A_get_accessor_must_return_a_value)),159===t.name.kind&&M_(t.name),e.isPrivateIdentifier(t.name)&&pn(t.name,e.Diagnostics.An_accessor_cannot_be_named_with_a_private_identifier),ns(t)){var n=168===t.kind?169:168,i=e.getDeclarationOfKind(Ai(t),n);if(i){var a=e.getEffectiveModifierFlags(t),o=e.getEffectiveModifierFlags(i);(28&a)!=(28&o)&&pn(t.name,e.Diagnostics.Getter_and_setter_accessors_do_not_agree_in_visibility),(128&a)!=(128&o)&&pn(t.name,e.Diagnostics.Accessors_must_both_be_abstract_or_non_abstract),Tb(t,i,so,e.Diagnostics.get_and_set_accessor_must_have_the_same_type),Tb(t,i,co,e.Diagnostics.get_and_set_accessor_must_have_the_same_this_type)}}var s=lo(Ai(t));168===t.kind&&wv(t,s)}Rx(t.body)}function Tb(e,t,r,n){var i=r(e),a=r(t);i&&a&&!np(i,a)&&pn(e,n)}function Cb(t,r){return Pc(e.map(t.typeArguments,xd),r,Nc(r),e.isInJSFile(t))}function Ab(t,r){for(var n,i,a=!0,o=0;o<r.length;o++){var s=Ws(r[o]);s&&(n||(i=Td(r,n=Cb(t,r))),a=a&&pp(n[o],Wd(s,i),t.typeArguments[o],e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1))}return a}function Nb(t){var r=El(t);if(r!==we){var n=Cn(t).resolvedSymbol;if(n)return 524288&n.flags&&Tn(n).typeParameters||(4&e.getObjectFlags(r)?r.target.localTypeParameters:void 0)}}function Pb(t){KE(t,t.typeArguments),174!==t.kind||void 0===t.typeName.jsdocDotPos||e.isInJSFile(t)||e.isInJSDoc(t)||pS(t,t.typeName.jsdocDotPos,1,e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments),e.forEach(t.typeArguments,Rx);var n=El(t);if(n!==we){if(t.typeArguments&&r){var i=Nb(t);i&&Ab(t,i)}var a=Cn(t).resolvedSymbol;a&&(e.some(a.declarations,(function(e){return Vx(e)&&!!(134217728&e.flags)}))&&hn(qy(t),a.declarations,a.escapedName),32&n.flags&&8&a.flags&&pn(t,e.Diagnostics.Enum_type_0_has_members_with_initializers_that_are_not_literals,da(n)))}}function Ib(t,r){if(!(8388608&t.flags))return t;var n=t.objectType,i=t.indexType;if(cp(i,Eu(n,!1)))return 203===r.kind&&e.isAssignmentTarget(r)&&32&e.getObjectFlags(n)&&1&Ls(n)&&pn(r,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,da(n)),t;var a=ac(n);if(bc(a,1)&&Mv(i,296))return t;if(Ru(n)){var o=Au(i,r);if(o){var s=cg(a,(function(e){return gc(e,o)}));if(s&&24&e.getDeclarationModifierFlagsFromSymbol(s))return pn(r,e.Diagnostics.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,e.unescapeLeadingUnderscores(o)),we}}return pn(r,e.Diagnostics.Type_0_cannot_be_used_to_index_type_1,da(i),da(n)),we}function Fb(t){!function(t){if(152===t.operator){if(149!==t.type.kind)return fS(t.type,e.Diagnostics._0_expected,e.tokenToString(149));var r=e.walkUpParenthesizedTypes(t.parent);switch(e.isInJSFile(r)&&e.isJSDocTypeExpression(r)&&(r=r.parent,e.isJSDocTypeTag(r)&&(r=r.parent.parent)),r.kind){case 251:var n=r;if(78!==n.name.kind)return fS(t,e.Diagnostics.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!e.isVariableDeclarationInVariableStatement(n))return fS(t,e.Diagnostics.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(2&n.parent.flags))return fS(r.name,e.Diagnostics.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 164:if(!e.hasSyntacticModifier(r,32)||!e.hasEffectiveModifier(r,64))return fS(r.name,e.Diagnostics.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 163:if(!e.hasSyntacticModifier(r,64))return fS(r.name,e.Diagnostics.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:fS(t,e.Diagnostics.unique_symbol_types_are_not_allowed_here)}}else if(143===t.operator&&179!==t.type.kind&&180!==t.type.kind)dS(t,e.Diagnostics.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,e.tokenToString(149))}(t),Rx(t.type)}function Ob(t){return(e.hasEffectiveModifier(t,8)||e.isPrivateIdentifierPropertyDeclaration(t))&&!!(8388608&t.flags)}function Rb(t,r){var n=e.getCombinedModifierFlags(t);return 256!==t.parent.kind&&254!==t.parent.kind&&223!==t.parent.kind&&8388608&t.flags&&(2&n||e.isModuleBlock(t.parent)&&e.isModuleDeclaration(t.parent.parent)&&e.isGlobalScopeAugmentation(t.parent.parent)||(n|=1),n|=2),n&r}function Mb(t){if(r){for(var n,i,a,o=0,s=155,c=!1,l=!0,u=!1,d=t.declarations,p=!!(16384&t.flags),f=!1,m=!1,g=!1,_=[],h=0,y=d;h<y.length;h++){var v=y[h],b=8388608&v.flags,k=v.parent&&(256===v.parent.kind||178===v.parent.kind)||b;if(k&&(a=void 0),254!==v.kind&&223!==v.kind||b||(g=!0),253===v.kind||166===v.kind||165===v.kind||167===v.kind){_.push(v);var x=Rb(v,155);o|=x,s&=x,c=c||e.hasQuestionToken(v),l=l&&e.hasQuestionToken(v);var E=e.nodeIsPresent(v.body);E&&n?p?m=!0:f=!0:(null==a?void 0:a.parent)===v.parent&&a.end!==v.pos&&N(a),E?n||(n=v):u=!0,a=v,k||(i=v)}}if(m&&e.forEach(_,(function(t){pn(t,e.Diagnostics.Multiple_constructor_implementations_are_not_allowed)})),f&&e.forEach(_,(function(t){pn(e.getNameOfDeclaration(t)||t,e.Diagnostics.Duplicate_function_implementation)})),g&&!p&&16&t.flags&&e.forEach(d,(function(r){Sn(r,e.Diagnostics.Duplicate_identifier_0,e.symbolName(t),d)})),!i||i.body||e.hasSyntacticModifier(i,128)||i.questionToken||N(i),u&&(function(t,r,n,i,a){if(i^a){var o=Rb(A(t,r),n);e.forEach(t,(function(t){var r=Rb(t,n)^o;1&r?pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_exported_or_non_exported):2&r?pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_ambient_or_non_ambient):24&r?pn(e.getNameOfDeclaration(t)||t,e.Diagnostics.Overload_signatures_must_all_be_public_private_or_protected):128&r&&pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_abstract_or_non_abstract)}))}}(d,n,155,o,s),function(t,r,n,i){if(n!==i){var a=e.hasQuestionToken(A(t,r));e.forEach(t,(function(t){e.hasQuestionToken(t)!==a&&pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_optional_or_required)}))}}(d,n,c,l),n))for(var S=Rc(t),D=Ic(n),w=0,T=S;w<T.length;w++){var C=T[w];if(!Sp(D,C)){e.addRelatedInfo(pn(C.declaration,e.Diagnostics.This_overload_signature_is_not_compatible_with_its_implementation_signature),e.createDiagnosticForNode(n,e.Diagnostics.The_implementation_signature_is_declared_here));break}}}function A(e,t){return void 0!==t&&t.parent===e[0].parent?t:e[0]}function N(t){if(!t.name||!e.nodeIsMissing(t.name)){var r=!1,n=e.forEachChild(t.parent,(function(e){if(r)return e;r=e===t}));if(n&&n.pos===t.end&&n.kind===t.kind){var i=n.name||n,a=n.name;if(t.name&&a&&(e.isPrivateIdentifier(t.name)&&e.isPrivateIdentifier(a)&&t.name.escapedText===a.escapedText||e.isComputedPropertyName(t.name)&&e.isComputedPropertyName(a)||e.isPropertyNameLiteral(t.name)&&e.isPropertyNameLiteral(a)&&e.getEscapedTextOfIdentifierOrLiteral(t.name)===e.getEscapedTextOfIdentifierOrLiteral(a))){if((166===t.kind||165===t.kind)&&e.hasSyntacticModifier(t,32)!==e.hasSyntacticModifier(n,32))pn(i,e.hasSyntacticModifier(t,32)?e.Diagnostics.Function_overload_must_be_static:e.Diagnostics.Function_overload_must_not_be_static);return}if(e.nodeIsPresent(n.body))return void pn(i,e.Diagnostics.Function_implementation_name_must_be_0,e.declarationNameToString(t.name))}var o=t.name||t;p?pn(o,e.Diagnostics.Constructor_implementation_is_missing):e.hasSyntacticModifier(t,128)?pn(o,e.Diagnostics.All_declarations_of_an_abstract_method_must_be_consecutive):pn(o,e.Diagnostics.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}}}function Lb(t){if(r){var n=t.localSymbol;if((n||(n=Ai(t)).exportSymbol)&&e.getDeclarationOfKind(n,t.kind)===t){for(var i=0,a=0,o=0,s=0,c=n.declarations;s<c.length;s++){var l=h(g=c[s]),u=Rb(g,513);1&u?512&u?o|=l:i|=l:a|=l}var d=i&a,p=o&(i|a);if(d||p)for(var f=0,m=n.declarations;f<m.length;f++){l=h(g=m[f]);var g,_=e.getNameOfDeclaration(g);l&p?pn(_,e.Diagnostics.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,e.declarationNameToString(_)):l&d&&pn(_,e.Diagnostics.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,e.declarationNameToString(_))}}}function h(t){var r=t;switch(r.kind){case 256:case 257:case 334:case 327:case 328:return 2;case 259:return e.isAmbientModule(r)||0!==e.getModuleInstanceState(r)?5:4;case 254:case 255:case 258:case 294:return 3;case 300:return 7;case 269:if(!e.isEntityNameExpression(r.expression))return 1;r=r.expression;case 263:case 266:case 265:var n=0,i=ai(Ai(r));return e.forEach(i.declarations,(function(e){n|=h(e)})),n;case 251:case 199:case 253:case 268:case 78:return 1;default:return e.Debug.failBadSyntaxKind(r)}}}function jb(e,t,r,n){var i=Bb(e,t);return i&&Ub(i,t,r,n)}function Bb(t,r){if(!Pa(t)){var n=t;if(n.promisedTypeOfPromise)return n.promisedTypeOfPromise;if(ho(t,Il(!1)))return n.promisedTypeOfPromise=ll(t)[0];var i=Na(t,"then");if(!Pa(i)){var a=i?hc(i,0):e.emptyArray;if(0!==a.length){var o=Hm(ou(e.map(a,dv)),2097152);if(!Pa(o)){var s=hc(o,0);if(0!==s.length)return n.promisedTypeOfPromise=ou(e.map(s,dv),2);r&&pn(r,e.Diagnostics.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback)}}else r&&pn(r,e.Diagnostics.A_promise_must_have_a_then_method)}}}function zb(e,t,r,n){return Ub(e,t,r,n)||we}function Ub(e,t,r,n){if(Pa(e))return e;var i=e;return i.awaitedTypeOfType?i.awaitedTypeOfType:i.awaitedTypeOfType=pg(e,t?function(e){return qb(e,t,r,n)}:qb)}function qb(t,r,n,i){var a=t;if(a.awaitedTypeOfType)return a.awaitedTypeOfType;var o=Bb(t);if(o){if(t.id===o.id||Xr.lastIndexOf(o.id)>=0)return void(r&&pn(r,e.Diagnostics.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method));Xr.push(t.id);var s=Ub(o,r,n,i);if(Xr.pop(),!s)return;return a.awaitedTypeOfType=s}if(!function(e){var t=Na(e,"then");return!!t&&hc(Hm(t,2097152),0).length>0}(t))return a.awaitedTypeOfType=t;if(r){if(!n)return e.Debug.fail();pn(r,n,i)}}function Jb(t){var r=Iy(t);Uy(r,t);var n=Bc(r);if(!(1&n.flags)){var i,a,o=Ty(t);switch(t.parent.kind){case 254:case 255:i=ou([_o(Ai(t.parent)),Ve]);break;case 161:i=Ve,a=e.chainDiagnosticMessages(void 0,e.Diagnostics.The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any);break;case 164:i=Ve,a=e.chainDiagnosticMessages(void 0,e.Diagnostics.The_return_type_of_a_property_decorator_function_must_be_either_void_or_any);break;case 166:case 168:case 169:i=ou([Ll(Xx(t.parent)),Ve]);break;default:return e.Debug.fail()}pp(n,i,t,o,(function(){return a}))}}function Vb(t){if(t){var r=e.getFirstIdentifier(t),n=2097152|(78===t.kind?788968:1920),i=Fn(r,r.escapedText,n,void 0,void 0,!0);i&&2097152&i.flags&&Mi(i)&&!mE(ai(i))&&!ci(i)&&ui(i)}}function Hb(t){var r=Kb(t);r&&e.isEntityName(r)&&Vb(r)}function Kb(e){if(e)switch(e.kind){case 184:case 183:return Wb(e.types);case 185:return Wb([e.trueType,e.falseType]);case 187:case 193:return Kb(e.type);case 174:return e.typeName}}function Wb(t){for(var r,n=0,i=t;n<i.length;n++){for(var a=i[n];187===a.kind||193===a.kind;)a=a.type;if(142!==a.kind&&(W||(192!==a.kind||104!==a.literal.kind)&&151!==a.kind)){var o=Kb(a);if(!o)return;if(r){if(!e.isIdentifier(r)||!e.isIdentifier(o)||r.escapedText!==o.escapedText)return}else r=o}}return r}function Gb(t){var r=e.getEffectiveTypeAnnotationNode(t);return e.isRestParameter(t)?e.getRestParameterElementType(r):r}function $b(t){if(t.decorators&&(t.decorators.forEach((function(t){t.expression&&e.isIdentifier(t.expression)&&Vg(t.expression)})),e.nodeCanBeDecorated(t,t.parent,t.parent.parent))){J.experimentalDecorators||pn(t,e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning);var r=t.decorators[0];if(jE(r,8),161===t.kind&&jE(r,32),J.emitDecoratorMetadata)switch(jE(r,16),t.kind){case 254:var n=e.getFirstConstructorWithBody(t);if(n)for(var i=0,a=n.parameters;i<a.length;i++){Hb(Gb(a[i]))}break;case 168:case 169:var o=168===t.kind?169:168,s=e.getDeclarationOfKind(Ai(t),o);Hb(oo(t)||s&&oo(s));break;case 166:for(var c=0,l=t.parameters;c<l.length;c++){Hb(Gb(l[c]))}Hb(e.getEffectiveReturnTypeNode(t));break;case 164:Hb(e.getEffectiveTypeAnnotationNode(t));break;case 161:Hb(Gb(t));for(var u=0,d=t.parent.parameters;u<d.length;u++){Hb(Gb(d[u]))}}e.forEach(t.decorators,Jb)}}function Yb(e){switch(e.kind){case 78:return e;case 202:return e.name;default:return}}function Xb(t){$b(t),kb(t);var n=e.getFunctionFlags(t);if(t.name&&159===t.name.kind&&M_(t.name),ns(t)){var i=Ai(t),a=t.localSymbol||i,o=e.find(a.declarations,(function(e){return e.kind===t.kind&&!(131072&e.flags)}));t===o&&Mb(a),i.parent&&Mb(i)}var s=165===t.kind?void 0:t.body;if(Rx(s),wv(t,zc(t)),r&&!e.getEffectiveReturnTypeNode(t)&&(e.nodeIsMissing(s)&&!Ob(t)&&Gf(t,Ee),1&n&&e.nodeIsPresent(s)&&Bc(Ic(t))),e.isInJSFile(t)){var c=e.getJSDocTypeTag(t);c&&c.typeExpression&&!w_(xd(c.typeExpression),t)&&pn(c.typeExpression.type,e.Diagnostics.The_type_of_a_function_declaration_must_match_the_function_s_signature)}}function Qb(t){if(r){var n=e.getSourceFileOfNode(t),i=Er.get(n.path);i||(i=[],Er.set(n.path,i)),i.push(t)}}function Zb(t,r){for(var n=0,i=t;n<i.length;n++){var a=i[n];switch(a.kind){case 254:case 223:case 255:rk(a,r),ik(a,r);break;case 300:case 259:case 232:case 261:case 239:case 240:case 241:lk(a,r);break;case 167:case 209:case 253:case 210:case 166:case 168:case 169:a.body&&lk(a,r),ik(a,r);break;case 165:case 170:case 171:case 175:case 176:case 257:case 256:ik(a,r);break;case 186:nk(a,r);break;default:e.Debug.assertNever(a,"Node should not have been registered for unused identifiers check")}}}function ek(t,r,n){var i=e.getNameOfDeclaration(t)||t,a=Vx(t)?e.Diagnostics._0_is_declared_but_never_used:e.Diagnostics._0_is_declared_but_its_value_is_never_read;n(t,0,e.createDiagnosticForNode(i,a,r))}function tk(t){return e.isIdentifier(t)&&95===e.idText(t).charCodeAt(0)}function rk(t,r){for(var n=0,i=t.members;n<i.length;n++){var a=i[n];switch(a.kind){case 166:case 164:case 168:case 169:if(169===a.kind&&32768&a.symbol.flags)break;var o=Ai(a);o.isReferenced||!(e.hasEffectiveModifier(a,8)||e.isNamedDeclaration(a)&&e.isPrivateIdentifier(a.name))||8388608&a.flags||r(a,0,e.createDiagnosticForNode(a.name,e.Diagnostics._0_is_declared_but_its_value_is_never_read,la(o)));break;case 167:for(var s=0,c=a.parameters;s<c.length;s++){var l=c[s];!l.symbol.isReferenced&&e.hasSyntacticModifier(l,8)&&r(l,0,e.createDiagnosticForNode(l.name,e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read,e.symbolName(l.symbol)))}break;case 172:case 231:break;default:e.Debug.fail()}}}function nk(t,r){var n=t.typeParameter;ak(n)&&r(t,1,e.createDiagnosticForNode(t,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.idText(n.name)))}function ik(t,r){if(e.last(Ai(t).declarations)===t)for(var n=e.getEffectiveTypeParameterDeclarations(t),i=new e.Set,a=0,o=n;a<o.length;a++){var s=o[a];if(ak(s)){var c=e.idText(s.name),l=s.parent;if(186!==l.kind&&l.typeParameters.every(ak)){if(e.tryAddToSet(i,l)){var u=e.getSourceFileOfNode(l),d=e.isJSDocTemplateTag(l)?e.rangeOfNode(l):e.rangeOfTypeParameters(u,l.typeParameters),p=1===l.typeParameters.length,f=p?e.Diagnostics._0_is_declared_but_its_value_is_never_read:e.Diagnostics.All_type_parameters_are_unused,m=p?c:void 0;r(s,1,e.createFileDiagnostic(u,d.pos,d.end-d.pos,f,m))}}else r(s,1,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_but_its_value_is_never_read,c))}}}function ak(e){return!(262144&Ci(e.symbol).isReferenced||tk(e.name))}function ok(e,t,r,n){var i=String(n(t)),a=e.get(i);a?a[1].push(r):e.set(i,[t,[r]])}function sk(t){return e.tryCast(e.getRootDeclaration(t),e.isParameter)}function ck(t){return e.isBindingElement(t)?e.isObjectBindingPattern(t.parent)?!(!t.propertyName||!tk(t.name)):tk(t.name):e.isAmbientModule(t)||(e.isVariableDeclaration(t)&&e.isForInOrOfStatement(t.parent.parent)||dk(t))&&tk(t.name)}function lk(t,r){var n=new e.Map,i=new e.Map,a=new e.Map;t.locals.forEach((function(t){var o;if(!(262144&t.flags?!(3&t.flags)||3&t.isReferenced:t.isReferenced||t.exportSymbol))for(var s=0,c=t.declarations;s<c.length;s++){var l=c[s];if(!ck(l))if(dk(l))ok(n,265===(o=l).kind?o:266===o.kind?o.parent:o.parent.parent,l,O);else if(e.isBindingElement(l)&&e.isObjectBindingPattern(l.parent)){l!==e.last(l.parent.elements)&&e.last(l.parent.elements).dotDotDotToken||ok(i,l.parent,l,O)}else if(e.isVariableDeclaration(l))ok(a,l.parent,l,O);else{var u=t.valueDeclaration&&sk(t.valueDeclaration),d=t.valueDeclaration&&e.getNameOfDeclaration(t.valueDeclaration);u&&d?e.isParameterPropertyDeclaration(u,u.parent)||e.parameterIsThisKeyword(u)||tk(d)||(e.isBindingElement(l)&&e.isArrayBindingPattern(l.parent)?ok(i,l.parent,l,O):r(u,1,e.createDiagnosticForNode(d,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.symbolName(t)))):ek(l,e.symbolName(t),r)}}})),n.forEach((function(t){var n=t[0],i=t[1],a=n.parent;if((n.name?1:0)+(n.namedBindings?266===n.namedBindings.kind?1:n.namedBindings.elements.length:0)===i.length)r(a,0,1===i.length?e.createDiagnosticForNode(a,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.idText(e.first(i).name)):e.createDiagnosticForNode(a,e.Diagnostics.All_imports_in_import_declaration_are_unused));else for(var o=0,s=i;o<s.length;o++){var c=s[o];ek(c,e.idText(c.name),r)}})),i.forEach((function(t){var n=t[0],i=t[1],o=sk(n.parent)?1:0;if(n.elements.length===i.length)1===i.length&&251===n.parent.kind&&252===n.parent.parent.kind?ok(a,n.parent.parent,n.parent,O):r(n,o,1===i.length?e.createDiagnosticForNode(n,e.Diagnostics._0_is_declared_but_its_value_is_never_read,uk(e.first(i).name)):e.createDiagnosticForNode(n,e.Diagnostics.All_destructured_elements_are_unused));else for(var s=0,c=i;s<c.length;s++){var l=c[s];r(l,o,e.createDiagnosticForNode(l,e.Diagnostics._0_is_declared_but_its_value_is_never_read,uk(l.name)))}})),a.forEach((function(t){var n=t[0],i=t[1];if(n.declarations.length===i.length)r(n,0,1===i.length?e.createDiagnosticForNode(e.first(i).name,e.Diagnostics._0_is_declared_but_its_value_is_never_read,uk(e.first(i).name)):e.createDiagnosticForNode(234===n.parent.kind?n.parent:n,e.Diagnostics.All_variables_are_unused));else for(var a=0,o=i;a<o.length;a++){var s=o[a];r(s,0,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_but_its_value_is_never_read,uk(s.name)))}}))}function uk(t){switch(t.kind){case 78:return e.idText(t);case 198:case 197:return uk(e.cast(e.first(t.elements),e.isBindingElement).name);default:return e.Debug.assertNever(t)}}function dk(e){return 265===e.kind||268===e.kind||266===e.kind}function pk(t){if(232===t.kind&&gS(t),e.isFunctionOrModuleBlock(t)){var r=Tr;e.forEach(t.statements,Rx),Tr=r}else e.forEach(t.statements,Rx);t.locals&&Qb(t)}function fk(t,r,n){if(!r||r.escapedText!==n)return!1;if(164===t.kind||163===t.kind||166===t.kind||165===t.kind||168===t.kind||169===t.kind)return!1;if(8388608&t.flags)return!1;var i=e.getRootDeclaration(t);return 161!==i.kind||!e.nodeIsMissing(i.parent.body)}function mk(t){e.findAncestor(t,(function(r){return!!(4&kE(r))&&(78!==t.kind?pn(e.getNameOfDeclaration(t),e.Diagnostics.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):pn(t,e.Diagnostics.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0)}))}function gk(t){e.findAncestor(t,(function(r){return!!(8&kE(r))&&(78!==t.kind?pn(e.getNameOfDeclaration(t),e.Diagnostics.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):pn(t,e.Diagnostics.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0)}))}function _k(t){67108864&kE(e.getEnclosingBlockScopeContainer(t))&&dn("noEmit",t,e.Diagnostics.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,"WeakMap")}function hk(t,r){if(!(H>=e.ModuleKind.ES2015)&&(fk(t,r,"require")||fk(t,r,"exports"))&&(!e.isModuleDeclaration(t)||1===e.getModuleInstanceState(t))){var n=Aa(t);300===n.kind&&e.isExternalOrCommonJsModule(n)&&dn("noEmit",r,e.Diagnostics.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,e.declarationNameToString(r),e.declarationNameToString(r))}}function yk(t,r){if(!(V>=4)&&fk(t,r,"Promise")&&(!e.isModuleDeclaration(t)||1===e.getModuleInstanceState(t))){var n=Aa(t);300===n.kind&&e.isExternalOrCommonJsModule(n)&&2048&n.flags&&dn("noEmit",r,e.Diagnostics.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,e.declarationNameToString(r),e.declarationNameToString(r))}}function vk(e){return e===Se?Ee:e===Nt?At:e}function bk(t){var r;if($b(t),e.isBindingElement(t)||Rx(t.type),t.name){if(159===t.name.kind&&(M_(t.name),t.initializer&&$v(t.initializer)),199===t.kind){197===t.parent.kind&&V<99&&jE(t,4),t.propertyName&&159===t.propertyName.kind&&M_(t.propertyName);var n=t.parent.parent,i=Ia(n),a=t.propertyName||t.name;if(i&&!e.isBindingPattern(a)){var o=vu(a);if(Zo(o)){var s=gc(i,is(o));s&&(Lh(s,void 0,!1),dh(n,!!n.initializer&&106===n.initializer.kind,i,s))}}}if(e.isBindingPattern(t.name)&&(198===t.name.kind&&V<2&&J.downlevelIteration&&jE(t,512),e.forEach(t.name.elements,Rx)),t.initializer&&e.isParameterDeclaration(t)&&e.nodeIsMissing(e.getContainingFunction(t).body))pn(t,e.Diagnostics.A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation);else if(e.isBindingPattern(t.name)){var c=t.initializer&&240!==t.parent.parent.kind,l=0===t.name.elements.length;if(c||l){var u=to(t);if(c){var d=$v(t.initializer);W&&l?bh(d,t):fp(d,to(t),t,t.initializer)}l&&(e.isArrayBindingPattern(t.name)?Ik(65,u,Ne,t):W&&bh(u,t))}}else{var p=Ai(t);if(2097152&p.flags&&e.isRequireVariableDeclaration(t,!0))wx(t);else{var f=vk(_o(p));if(t===p.valueDeclaration){var m=e.getEffectiveInitializer(t);if(m)e.isInJSFile(t)&&e.isObjectLiteralExpression(m)&&(0===m.properties.length||e.isPrototypeAccess(t.name))&&!!(null===(r=p.exports)||void 0===r?void 0:r.size)||240===t.parent.parent.kind||fp($v(m),f,t,m,void 0);p.declarations.length>1&&e.some(p.declarations,(function(r){return r!==t&&e.isVariableLike(r)&&!xk(r,t)}))&&pn(t.name,e.Diagnostics.All_declarations_of_0_must_have_identical_modifiers,e.declarationNameToString(t.name))}else{var g=vk(to(t));f===we||g===we||np(f,g)||67108864&p.flags||kk(p.valueDeclaration,f,t,g),t.initializer&&fp($v(t.initializer),g,t,t.initializer,void 0),xk(t,p.valueDeclaration)||pn(t.name,e.Diagnostics.All_declarations_of_0_must_have_identical_modifiers,e.declarationNameToString(t.name))}164!==t.kind&&163!==t.kind&&(Lb(t),251!==t.kind&&199!==t.kind||function(t){if(!(3&e.getCombinedNodeFlags(t)||e.isParameterDeclaration(t))&&(251!==t.kind||t.initializer)){var r=Ai(t);if(1&r.flags){if(!e.isIdentifier(t.name))return e.Debug.fail();var n=Fn(t,t.name.escapedText,3,void 0,void 0,!1);if(n&&n!==r&&2&n.flags&&3&lh(n)){var i=e.getAncestor(n.valueDeclaration,252),a=234===i.parent.kind&&i.parent.parent?i.parent.parent:void 0;if(!a||!(232===a.kind&&e.isFunctionLike(a.parent)||260===a.kind||259===a.kind||300===a.kind)){var o=la(n);pn(t,e.Diagnostics.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,o,o)}}}}}(t),hk(t,t.name),yk(t,t.name),V<99&&fk(t,t.name,"WeakMap")&&Yr.push(t))}}}}function kk(t,r,n,i){var a=e.getNameOfDeclaration(n),o=164===n.kind||163===n.kind?e.Diagnostics.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:e.Diagnostics.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,s=e.declarationNameToString(a),c=pn(a,o,s,da(r),da(i));t&&e.addRelatedInfo(c,e.createDiagnosticForNode(t,e.Diagnostics._0_was_also_declared_here,s))}function xk(t,r){if(161===t.kind&&251===r.kind||251===t.kind&&161===r.kind)return!0;if(e.hasQuestionToken(t)!==e.hasQuestionToken(r))return!1;return e.getSelectedEffectiveModifierFlags(t,504)===e.getSelectedEffectiveModifierFlags(r,504)}function Ek(t){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkVariableDeclaration",{kind:t.kind,pos:t.pos,end:t.end}),function(t){if(240!==t.parent.parent.kind&&241!==t.parent.parent.kind)if(8388608&t.flags)aS(t);else if(!t.initializer){if(e.isBindingPattern(t.name)&&!e.isBindingPattern(t.parent))return fS(t,e.Diagnostics.A_destructuring_declaration_must_have_an_initializer);if(e.isVarConst(t))return fS(t,e.Diagnostics.const_declarations_must_be_initialized)}if(t.exclamationToken&&(234!==t.parent.parent.kind||!t.type||t.initializer||8388608&t.flags)){var r=t.initializer?e.Diagnostics.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:t.type?e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context:e.Diagnostics.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return fS(t.exclamationToken,r)}var n=e.getEmitModuleKind(J);n<e.ModuleKind.ES2015&&n!==e.ModuleKind.System&&!(8388608&t.parent.parent.flags)&&e.hasSyntacticModifier(t.parent.parent,1)&&oS(t.name);var i=e.isLet(t)||e.isVarConst(t);i&&sS(t.name)}(t),bk(t),null===e.tracing||void 0===e.tracing||e.tracing.pop()}function Sk(t){return function(t){if(t.dotDotDotToken){var r=t.parent.elements;if(t!==e.last(r))return fS(t,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern);if(qE(r,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),t.propertyName)return fS(t.name,e.Diagnostics.A_rest_element_cannot_have_a_property_name)}if(t.dotDotDotToken&&t.initializer)pS(t,t.initializer.pos-1,1,e.Diagnostics.A_rest_element_cannot_have_an_initializer)}(t),bk(t)}function Dk(t){zE(t)||cS(t.declarationList)||function(t){if(!lS(t.parent)){if(e.isLet(t.declarationList))return fS(t,e.Diagnostics.let_declarations_can_only_be_declared_inside_a_block);if(e.isVarConst(t.declarationList))fS(t,e.Diagnostics.const_declarations_can_only_be_declared_inside_a_block)}}(t),e.forEach(t.declarationList.declarations,Rx)}function wk(t,r,n){if(W){var i=e.isBinaryExpression(t)?t.right:t,a=e.isIdentifier(i)?i:e.isPropertyAccessExpression(i)?i.name:e.isBinaryExpression(i)&&e.isIdentifier(i.right)?i.right:void 0,o=e.isPropertyAccessExpression(i)&&e.isAssertionExpression(e.skipParentheses(i.expression));if(a&&!o)if(!wf(r))if(0!==hc(r,0).length){var s=Yx(a);if(s){var c=e.isBinaryExpression(t.parent)&&function(t,r){for(;e.isBinaryExpression(t)&&55===t.operatorToken.kind;){if(e.forEachChild(t.right,(function t(n){if(e.isIdentifier(n)){var i=Yx(n);if(i&&i===r)return!0}return e.forEachChild(n,t)})))return!0;t=t.parent}return!1}(t.parent,s)||n&&function(t,r,n,i){return!!e.forEachChild(r,(function r(a){if(e.isIdentifier(a)){var o=Yx(a);if(o&&o===i){if(e.isIdentifier(t))return!0;for(var s=n.parent,c=a.parent;s&&c;){if(e.isIdentifier(s)&&e.isIdentifier(c)||108===s.kind&&108===c.kind)return Yx(s)===Yx(c);if(e.isPropertyAccessExpression(s)&&e.isPropertyAccessExpression(c)){if(Yx(s.name)!==Yx(c.name))return!1;c=c.expression,s=s.expression}else{if(!e.isCallExpression(s)||!e.isCallExpression(c))return!1;c=c.expression,s=s.expression}}}}return e.forEachChild(a,r)}))}(t,n,a,s);c||pn(i,e.Diagnostics.This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it_instead)}}}}function Tk(t,r){return 16384&t.flags&&pn(r,e.Diagnostics.An_expression_of_type_void_cannot_be_tested_for_truthiness),t}function Ck(e,t){return Tk(fb(e,t),e)}function Ak(t){eS(t);var r,n=gh(fb(t.expression));if(252===t.initializer.kind){var i=t.initializer.declarations[0];i&&e.isBindingPattern(i.name)&&pn(i.name,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern),Nk(t)}else{var a=t.initializer,o=fb(a);200===a.kind||201===a.kind?pn(a,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern):cp(131072&(r=Su(Eu(n))).flags?Re:r,o)?Iv(a,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access):pn(a,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any)}n!==He&&Mv(n,126091264)||pn(t.expression,e.Diagnostics.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0,da(n)),Rx(t.statement),t.locals&&Qb(t)}function Nk(e){var t=e.initializer;t.declarations.length>=1&&Ek(t.declarations[0])}function Pk(e){return Ik(e.awaitModifier?15:13,fh(e.expression),Ne,e.expression)}function Ik(e,t,r,n){return Pa(t)?t:Fk(e,t,r,n,!0)||Ee}function Fk(t,r,n,i,a){var o=!!(2&t);if(r!==He){var s=V>=2,c=!s&&J.downlevelIteration,l=J.noUncheckedIndexedAccess&&!!(128&t);if(s||c||o){var u=Bk(r,t,s?i:void 0);if(a&&u){var d=8&t?e.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:32&t?e.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:64&t?e.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:16&t?e.Diagnostics.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;d&&pp(n,u.nextType,i,d)}if(u||s)return l?$m(u&&u.yieldType):u&&u.yieldType}var p=r,f=!1,m=!1;if(4&t){if(1048576&p.flags){var g=r.types,_=e.filter(g,(function(e){return!(402653316&e.flags)}));_!==g&&(p=ou(_,2))}else 402653316&p.flags&&(p=He);if((m=p!==r)&&(V<1&&i&&(pn(i,e.Diagnostics.Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher),f=!0),131072&p.flags))return l?$m(Re):Re}if(!sf(p)){if(i&&!f){var h=Ok(t,0,r,void 0),y=4&t&&!m?c?[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:h?[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators,!1]:[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type,!0]:c?[e.Diagnostics.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:h?[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators,!1]:[e.Diagnostics.Type_0_is_not_an_array_type,!0],v=y[0];gn(i,y[1]&&!!jb(p),v,da(p))}return m?l?$m(Re):Re:void 0}var b=kc(p,1);return m&&b?402653316&b.flags&&!J.noUncheckedIndexedAccess?Re:ou(l?[b,Re,Ne]:[b,Re],2):128&t?$m(b):b}Kk(i,r,o)}function Ok(e,t,r,n){if(!Pa(r)){var i=Bk(r,e,n);return i&&i[z(t)]}}function Rk(e,t,r){if(void 0===e&&(e=He),void 0===t&&(t=He),void 0===r&&(r=Ae),67359327&e.flags&&180227&t.flags&&180227&r.flags){var n=nl([e,t,r]),i=mr.get(n);return i||(i={yieldType:e,returnType:t,nextType:r},mr.set(n,i)),i}return{yieldType:e,returnType:t,nextType:r}}function Mk(t){for(var r,n,i,a=0,o=t;a<o.length;a++){var s=o[a];if(void 0!==s&&s!==gr){if(s===_r)return _r;r=e.append(r,s.yieldType),n=e.append(n,s.returnType),i=e.append(i,s.nextType)}}return r||n||i?Rk(r&&ou(r),n&&ou(n),i&&fu(i)):gr}function Lk(e,t){return e[t]}function jk(e,t,r){return e[t]=r}function Bk(t,r,n){if(Pa(t))return _r;if(!(1048576&t.flags)){var i=Uk(t,r,n);return i===gr?void(n&&Kk(n,t,!!(2&r))):i}var a,o=2&r?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",s=Lk(t,o);if(s)return s===gr?void 0:s;for(var c=0,l=t.types;c<l.length;c++){var u=Uk(l[c],r,n);if(u===gr)return n&&Kk(n,t,!!(2&r)),void jk(t,o,gr);a=e.append(a,u)}var d=a?Mk(a):gr;return jk(t,o,d),d===gr?void 0:d}function zk(e,t){if(e===gr)return gr;if(e===_r)return _r;var r=e.yieldType,n=e.returnType,i=e.nextType;return Rk(Ub(r,t)||Ee,Ub(n,t)||Ee,i)}function Uk(e,t,r){if(Pa(e))return _r;var n;if(2&t&&(n=qk(e,vr)||Vk(e,vr)))return n;if(1&t&&(n=qk(e,br)||Vk(e,br))){if(!(2&t))return n;if(n!==gr)return jk(e,"iterationTypesOfAsyncIterable",zk(n,r))}if(2&t&&(n=Hk(e,vr,r))!==gr)return n;if(1&t&&(n=Hk(e,br,r))!==gr)return 2&t?jk(e,"iterationTypesOfAsyncIterable",n?zk(n,r):gr):n;return gr}function qk(e,t){return Lk(e,t.iterableCacheKey)}function Jk(e,t){var r=qk(e,t)||Hk(e,t,void 0);return r===gr?yr:r}function Vk(e,t){var r;if(ho(e,r=t.getGlobalIterableType(!1))||ho(e,r=t.getGlobalIterableIteratorType(!1))){var n=ll(e)[0],i=Jk(r,t),a=i.returnType,o=i.nextType;return jk(e,t.iterableCacheKey,Rk(n,a,o))}if(ho(e,t.getGlobalGeneratorType(!1))){var s=ll(e);n=s[0],a=s[1],o=s[2];return jk(e,t.iterableCacheKey,Rk(n,a,o))}}function Hk(t,r,n){var i,a=gc(t,e.getPropertyNameForKnownSymbolName(r.iteratorSymbolName)),o=!a||16777216&a.flags?void 0:_o(a);if(Pa(o))return jk(t,r.iterableCacheKey,_r);var s=o?hc(o,0):void 0;if(!e.some(s))return jk(t,r.iterableCacheKey,gr);var c=null!==(i=Wk(fu(e.map(s,Bc)),r,n))&&void 0!==i?i:gr;return jk(t,r.iterableCacheKey,c)}function Kk(t,r,n){var i=n?e.Diagnostics.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:e.Diagnostics.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator;gn(t,!!jb(r),i,da(r))}function Wk(e,t,r){if(Pa(e))return _r;var n=Gk(e,t)||function(e,t){var r=t.getGlobalIterableIteratorType(!1);if(ho(e,r)){var n=ll(e)[0],i=Gk(r,t)||ex(r,t,void 0),a=i===gr?yr:i,o=a.returnType,s=a.nextType;return jk(e,t.iteratorCacheKey,Rk(n,o,s))}if(ho(e,t.getGlobalIteratorType(!1))||ho(e,t.getGlobalGeneratorType(!1))){var c=ll(e);n=c[0],o=c[1],s=c[2];return jk(e,t.iteratorCacheKey,Rk(n,o,s))}}(e,t)||ex(e,t,r);return n===gr?void 0:n}function Gk(e,t){return Lk(e,t.iteratorCacheKey)}function $k(e,t){var r=Na(e,"done")||je;return cp(0===t?je:ze,r)}function Yk(e){return $k(e,0)}function Xk(e){return $k(e,1)}function Qk(e){if(Pa(e))return _r;var t,r=Lk(e,"iterationTypesOfIteratorResult");if(r)return r;if(ho(e,(t=!1,Vt||(Vt=Al("IteratorYieldResult",1,t))||st)))return jk(e,"iterationTypesOfIteratorResult",Rk(ll(e)[0],void 0,void 0));if(ho(e,function(e){return Ht||(Ht=Al("IteratorReturnResult",1,e))||st}(!1)))return jk(e,"iterationTypesOfIteratorResult",Rk(void 0,ll(e)[0],void 0));var n=ug(e,Yk),i=n!==He?Na(n,"value"):void 0,a=ug(e,Xk),o=a!==He?Na(a,"value"):void 0;return jk(e,"iterationTypesOfIteratorResult",i||o?Rk(i,o||Ve,void 0):gr)}function Zk(t,r,n,i){var a,o,s,c,l=gc(t,n);if(l||"next"===n){var u=!l||"next"===n&&16777216&l.flags?void 0:"next"===n?_o(l):Hm(_o(l),2097152);if(Pa(u))return"next"===n?_r:hr;var d,p,f,m,g,_=u?hc(u,0):e.emptyArray;if(0===_.length){if(i)pn(i,"next"===n?r.mustHaveANextMethodDiagnostic:r.mustBeAMethodDiagnostic,n);return"next"===n?_r:void 0}if((null==u?void 0:u.symbol)&&1===_.length){var h=r.getGlobalGeneratorType(!1),y=r.getGlobalIteratorType(!1),v=(null===(o=null===(a=h.symbol)||void 0===a?void 0:a.members)||void 0===o?void 0:o.get(n))===u.symbol,b=!v&&(null===(c=null===(s=y.symbol)||void 0===s?void 0:s.members)||void 0===c?void 0:c.get(n))===u.symbol;if(v||b){var k=v?h:y,x=u.mapper;return Rk(Cd(k.typeParameters[0],x),Cd(k.typeParameters[1],x),"next"===n?Cd(k.typeParameters[2],x):void 0)}}for(var E=0,S=_;E<S.length;E++){var D=S[E];"throw"!==n&&e.some(D.parameters)&&(d=e.append(d,nv(D,0))),p=e.append(p,Bc(D))}if("throw"!==n){var w=d?ou(d):Ae;if("next"===n)m=w;else if("return"===n){var T=r.resolveIterationType(w,i)||Ee;f=e.append(f,T)}}var C=p?fu(p):He,A=Qk(r.resolveIterationType(C,i)||Ee);return A===gr?(i&&pn(i,r.mustHaveAValueDiagnostic,n),g=Ee,f=e.append(f,Ee)):(g=A.yieldType,f=e.append(f,A.returnType)),Rk(g,ou(f),m)}}function ex(e,t,r){var n=Mk([Zk(e,t,"next",r),Zk(e,t,"return",r),Zk(e,t,"throw",r)]);return jk(e,t.iteratorCacheKey,n)}function tx(e,t,r){if(!Pa(t)){var n=rx(t,r);return n&&n[z(e)]}}function rx(e,t){if(Pa(e))return _r;var r=t?vr:br;return Bk(e,t?2:1,void 0)||Wk(e,r,void 0)}function nx(t){gS(t)||function(t){var r=t;for(;r;){if(e.isFunctionLike(r))return fS(t,e.Diagnostics.Jump_target_cannot_cross_function_boundary);switch(r.kind){case 247:if(t.label&&r.label.escapedText===t.label.escapedText)return!!(242===t.kind&&!e.isIterationStatement(r.statement,!0))&&fS(t,e.Diagnostics.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement);break;case 246:if(243===t.kind&&!t.label)return!1;break;default:if(e.isIterationStatement(r,!1)&&!t.label)return!1}r=r.parent}t.label?fS(t,243===t.kind?e.Diagnostics.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:e.Diagnostics.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):fS(t,243===t.kind?e.Diagnostics.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:e.Diagnostics.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement)}(t)}function ix(e,t){var r,n,i=!!(2&t);return!!(1&t)?null!==(r=tx(1,e,i))&&void 0!==r?r:we:i?null!==(n=Ub(e))&&void 0!==n?n:we:e}function ax(t,r){var n=ix(r,e.getFunctionFlags(t));return!!n&&Rv(n,16387)}function ox(t){gS(t)||e.isIdentifier(t.expression)&&!t.expression.escapedText&&function(t,r,n,i,a){var o=e.getSourceFileOfNode(t);if(!uS(o)){var s=e.getSpanOfTokenAtPosition(o,t.pos);return Qr.add(e.createFileDiagnostic(o,e.textSpanEnd(s),0,r,n,i,a)),!0}}(t,e.Diagnostics.Line_break_not_permitted_here),t.expression&&fb(t.expression)}function sx(t){var r,n=Xc(t.symbol,1),i=Xc(t.symbol,0),a=kc(t,0),o=kc(t,1);if(a||o){e.forEach(qs(t),(function(e){var r=_o(e);f(e,r,t,i,a,0),f(e,r,t,n,o,1)}));var s=t.symbol.valueDeclaration;if(1&e.getObjectFlags(t)&&e.isClassLike(s))for(var c=0,l=s.members;c<l.length;c++){var u=l[c];if(!e.hasSyntacticModifier(u,32)&&!ns(u)){var d=Ai(u),p=_o(d);f(d,p,t,i,a,0),f(d,p,t,n,o,1)}}}a&&o&&(!(r=n||i)&&2&e.getObjectFlags(t)&&(r=e.forEach(Po(t),(function(e){return kc(e,0)&&kc(e,1)}))?void 0:t.symbol.declarations[0]));function f(t,r,n,i,a,o){if(a&&!e.isKnownSymbol(t)){var s=t.valueDeclaration,c=s&&e.getNameOfDeclaration(s);if((!c||!e.isPrivateIdentifier(c))&&(1!==o||(c?F_(c):R_(t.escapedName)))){var l;if(s&&c&&(218===s.kind||159===c.kind||t.parent===n.symbol))l=s;else if(i)l=i;else if(2&e.getObjectFlags(n)){l=e.forEach(Po(n),(function(e){return Js(e,t.escapedName)&&kc(e,o)}))?void 0:n.symbol.declarations[0]}if(l&&!cp(r,a))pn(l,0===o?e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_string_index_type_2:e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2,la(t),da(r),da(a))}}}r&&!cp(o,a)&&pn(r,e.Diagnostics.Numeric_index_type_0_is_not_assignable_to_string_index_type_1,da(o),da(a))}function cx(e,t){switch(e.escapedText){case"any":case"unknown":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":pn(e,t,e.escapedText)}}function lx(t){if(t)for(var n=!1,i=0;i<t.length;i++){var a=t[i];if(yb(a),r){a.default?(n=!0,ux(a.default,t,i)):n&&pn(a,e.Diagnostics.Required_type_parameters_may_not_follow_optional_type_parameters);for(var o=0;o<i;o++)t[o].symbol===a.symbol&&pn(a.name,e.Diagnostics.Duplicate_identifier_0,e.declarationNameToString(a.name))}}}function ux(t,r,n){!function t(i){if(174===i.kind){var a=El(i);if(262144&a.flags)for(var o=n;o<r.length;o++)a.symbol===Ai(r[o])&&pn(i,e.Diagnostics.Type_parameter_defaults_can_only_reference_previously_declared_type_parameters)}e.forEachChild(i,t)}(t)}function dx(t){if(1!==t.declarations.length){var r=Tn(t);if(!r.typeParametersChecked){r.typeParametersChecked=!0;var n=function(t){return e.filter(t.declarations,(function(e){return 254===e.kind||256===e.kind}))}(t);if(n.length<=1)return;if(!function(t,r){for(var n=e.length(r),i=Nc(r),a=0,o=t;a<o.length;a++){var s=o[a],c=e.getEffectiveTypeParameterDeclarations(s),l=c.length;if(l<i||l>n)return!1;for(var u=0;u<l;u++){var d=c[u],p=r[u];if(d.name.escapedText!==p.symbol.escapedName)return!1;var f=e.getEffectiveConstraintOfTypeParameter(d),m=f&&xd(f),g=Ws(p);if(m&&g&&!np(m,g))return!1;var _=d.default&&xd(d.default),h=nc(p);if(_&&h&&!np(_,h))return!1}}return!0}(n,Jo(t).localTypeParameters))for(var i=la(t),a=0,o=n;a<o.length;a++){pn(o[a].name,e.Diagnostics.All_declarations_of_0_must_have_identical_type_parameters,i)}}}}function px(r){r.name||e.hasSyntacticModifier(r,512)||dS(r,e.Diagnostics.A_struct_declaration_without_the_default_modifier_must_have_a_name),fx(r),function(r){var n;if(t.getCompilerOptions().ets&&r.name&&e.isIdentifier(r.name)){(null===(n=t.getCompilerOptions().ets)||void 0===n?void 0:n.components).includes(r.name.escapedText.toString())&&pn(r.name,e.Diagnostics.The_struct_name_cannot_contain_reserved_tag_name_Colon_0,r.name.escapedText.toString())}}(r),e.forEach(r.members,Rx),Qb(r)}function fx(t){var n;!function(t){var r=e.getSourceFileOfNode(t);(function(t){var r=!1,n=!1;if(!zE(t)&&t.heritageClauses)for(var i=0,a=t.heritageClauses;i<a.length;i++){var o=a[i];if(94===o.token){if(r)return dS(o,e.Diagnostics.extends_clause_already_seen);if(n)return dS(o,e.Diagnostics.extends_clause_must_precede_implements_clause);if(o.types.length>1)return dS(o.types[1],e.Diagnostics.Classes_can_only_extend_a_single_class);r=!0}else{if(e.Debug.assert(117===o.token),n)return dS(o,e.Diagnostics.implements_clause_already_seen);n=!0}GE(o)}})(t)||JE(t.typeParameters,r)}(t),$b(t),t.name&&(cx(t.name,e.Diagnostics.Class_name_cannot_be_0),hk(t,t.name),yk(t,t.name),8388608&t.flags||(n=t.name,1===V&&"Object"===n.escapedText&&H<e.ModuleKind.ES2015&&pn(n,e.Diagnostics.Class_name_cannot_be_Object_when_targeting_ES5_with_module_0,e.ModuleKind[H]))),lx(e.getEffectiveTypeParameterDeclarations(t)),Lb(t);var i=Ai(t),a=Jo(i),o=ls(a),s=_o(i);dx(i),Mb(i),function(t){for(var r=new e.Map,n=new e.Map,i=new e.Map,a=0,o=t.members;a<o.length;a++){var s=o[a];if(167===s.kind)for(var c=0,l=s.parameters;c<l.length;c++){var u=l[c];e.isParameterPropertyDeclaration(u,s)&&!e.isBindingPattern(u.name)&&g(r,u.name,u.name.escapedText,3)}else{var d=e.hasSyntacticModifier(s,32),p=s.name;if(!p)return;var f=e.isPrivateIdentifier(p)?i:d?n:r,m=p&&e.getPropertyNameForPropertyNameNode(p);if(m)switch(s.kind){case 168:g(f,p,m,1);break;case 169:g(f,p,m,2);break;case 164:g(f,p,m,3);break;case 166:g(f,p,m,8)}}}function g(t,r,n,i){var a=t.get(n);a?8&a?8!==i&&pn(r,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(r)):a&i?pn(r,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(r)):t.set(n,a|i):t.set(n,i)}}(t),8388608&t.flags||function(t){for(var r=0,n=t.members;r<n.length;r++){var i=n[r],a=i.name;if(e.hasSyntacticModifier(i,32)&&a){var o=e.getPropertyNameForPropertyNameNode(a);switch(o){case"name":case"length":case"caller":case"arguments":case"prototype":pn(a,e.Diagnostics.Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1,o,xa(Ai(t)))}}}}(t);var c=e.getEffectiveBaseTypeNode(t);if(c){e.forEach(c.typeArguments,Rx),V<2&&jE(c.parent,1);var l=e.getClassExtendsHeritageElement(t);l&&l!==c&&fb(l.expression);var u=Po(a);if(u.length&&r){var d=u[0],p=Ao(a),f=ac(p);if(function(t,r){var n=hc(t,1);if(n.length){var i=n[0].declaration;if(i&&e.hasEffectiveModifier(i,8))Wx(r,e.getClassLikeDeclarationOfSymbol(t.symbol))||pn(r,e.Diagnostics.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,pi(t.symbol))}}(f,c),Rx(c.expression),e.some(c.typeArguments)){e.forEach(c.typeArguments,Rx);for(var m=0,g=To(f,c.typeArguments,c);m<g.length;m++){if(!Ab(c,g[m].typeParameters))break}}if(pp(o,x=ls(d,a.thisType),void 0)?pp(s,rp(f),t.name||t,e.Diagnostics.Class_static_side_0_incorrectly_extends_base_class_static_side_1):mx(t,o,x,e.Diagnostics.Class_0_incorrectly_extends_base_class_1),8650752&p.flags)if(So(s))hc(p,1).some((function(e){return 4&e.flags}))&&!e.hasSyntacticModifier(t,128)&&pn(t.name||t,e.Diagnostics.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract);else pn(t.name||t,e.Diagnostics.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any);if(!(f.symbol&&32&f.symbol.flags||8650752&p.flags)){var _=Co(f,c.typeArguments,c);e.forEach(_,(function(e){return!Fy(e.declaration)&&!np(Bc(e),d)}))&&pn(c.expression,e.Diagnostics.Base_constructors_must_all_have_the_same_return_type)}!function(t,r){var n=Hs(r);e:for(var i=0,a=n;i<a.length;i++){var o=a[i],s=gx(o);if(!(4194304&s.flags)){var c=Js(t,s.escapedName);if(c){var l=gx(c),u=e.getDeclarationModifierFlagsFromSymbol(s);if(e.Debug.assert(!!l,"derived should point to something, even if it is the base class' declaration."),l===s){var d=e.getClassLikeDeclarationOfSymbol(t.symbol);if(128&u&&(!d||!e.hasSyntacticModifier(d,128))){for(var p=0,f=Po(t);p<f.length;p++){var m=f[p];if(m!==r){var g=Js(m,s.escapedName),_=g&&gx(g);if(_&&_!==s)continue e}}223===d.kind?pn(d,e.Diagnostics.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,la(o),da(r)):pn(d,e.Diagnostics.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,da(t),la(o),da(r))}}else{var h=e.getDeclarationModifierFlagsFromSymbol(l);if(8&u||8&h)continue;var y=void 0,v=98308&s.flags,b=98308&l.flags;if(v&&b){if(128&u&&!(s.valueDeclaration&&e.isPropertyDeclaration(s.valueDeclaration)&&s.valueDeclaration.initializer)||s.valueDeclaration&&256===s.valueDeclaration.parent.kind||l.valueDeclaration&&e.isBinaryExpression(l.valueDeclaration))continue;var k=4!==v&&4===b;if(k||4===v&&4!==b){var x=k?e.Diagnostics._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:e.Diagnostics._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;pn(e.getNameOfDeclaration(l.valueDeclaration)||l.valueDeclaration,x,la(s),da(r),da(t))}else if(J.useDefineForClassFields){var E=e.find(l.declarations,(function(e){return 164===e.kind&&!e.initializer}));if(E&&!(33554432&l.flags)&&!(128&u)&&!(128&h)&&!l.declarations.some((function(e){return!!(8388608&e.flags)}))){var S=Li(e.getClassLikeDeclarationOfSymbol(t.symbol)),D=E.name;if(E.exclamationToken||!S||!e.isIdentifier(D)||!W||!hx(D,t,S)){var w=e.Diagnostics.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration;pn(e.getNameOfDeclaration(l.valueDeclaration)||l.valueDeclaration,w,la(s),da(r))}}}continue}if(uh(s)){if(uh(l)||4&l.flags)continue;e.Debug.assert(!!(98304&l.flags)),y=e.Diagnostics.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else y=98304&s.flags?e.Diagnostics.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:e.Diagnostics.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;pn(e.getNameOfDeclaration(l.valueDeclaration)||l.valueDeclaration,y,da(r),la(s),da(t))}}}}}(a,d)}}var h=e.getEffectiveImplementsTypeNodes(t);if(h)for(var y=0,v=h;y<v.length;y++){var b=v[y];if(e.isEntityNameExpression(b.expression)&&!e.isOptionalChain(b.expression)||pn(b.expression,e.Diagnostics.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),Pb(b),r){var k=uc(xd(b));if(k!==we)if(Fo(k)){var x,E=k.symbol&&32&k.symbol.flags?e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:e.Diagnostics.Class_0_incorrectly_implements_interface_1;pp(o,x=ls(k,a.thisType),void 0)||mx(t,o,x,E)}else pn(b,e.Diagnostics.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}r&&(sx(a),Eb(t),function(t){if(!W||!Y||8388608&t.flags)return;for(var r=Li(t),n=0,i=t.members;n<i.length;n++){var a=i[n];if(!(2&e.getEffectiveModifierFlags(a))&&_x(a)){var o=a.name;if(e.isIdentifier(o)||e.isPrivateIdentifier(o)){var s=_o(Ai(a));3&s.flags||32768&wf(s)||r&&hx(o,s,r)||pn(a.name,e.Diagnostics.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,e.declarationNameToString(o))}}}}(t))}function mx(t,r,n,i){for(var a=!1,o=function(t){if(e.hasStaticModifier(t))return"continue";var i=t.name&&Yx(t.name)||Yx(t);if(i){var o=gc(r,i.escapedName),s=gc(n,i.escapedName);if(o&&s){pp(_o(o),_o(s),t.name||t,void 0,(function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,la(i),da(r),da(n))}))||(a=!0)}}},s=0,c=t.members;s<c.length;s++){o(c[s])}a||pp(r,n,t.name||t,i)}function gx(t){return 1&e.getCheckFlags(t)?t.target:t}function _x(t){return 164===t.kind&&!e.hasSyntacticModifier(t,160)&&!t.exclamationToken&&!t.initializer}function hx(t,r,n){var i=e.factory.createPropertyAccessExpression(e.factory.createThis(),t);return e.setParent(i.expression,i),e.setParent(i,n),i.flowNode=n.returnFlowNode,!(32768&wf(Og(i,r,Nf(r))))}function yx(t){if(zE(t)||function(t){var r=!1;if(t.heritageClauses)for(var n=0,i=t.heritageClauses;n<i.length;n++){var a=i[n];if(94!==a.token)return e.Debug.assert(117===a.token),dS(a,e.Diagnostics.Interface_declaration_cannot_have_implements_clause);if(r)return dS(a,e.Diagnostics.extends_clause_already_seen);r=!0,GE(a)}}(t),lx(t.typeParameters),r){cx(t.name,e.Diagnostics.Interface_name_cannot_be_0),Lb(t);var n=Ai(t);if(dx(n),t===e.getDeclarationOfKind(n,256)){var i=Jo(n),a=ls(i);if(function(t,r){var n=Po(t);if(n.length<2)return!0;var i=new e.Map;e.forEach(Qo(t).declaredProperties,(function(e){i.set(e.escapedName,{prop:e,containingType:t})}));for(var a=!0,o=0,s=n;o<s.length;o++)for(var c=s[o],l=0,u=Hs(ls(c,t.thisType));l<u.length;l++){var d=u[l],p=i.get(d.escapedName);if(p){if(p.containingType!==t&&!Qp(p.prop,d)){a=!1;var f=da(p.containingType),m=da(c),g=e.chainDiagnosticMessages(void 0,e.Diagnostics.Named_property_0_of_types_1_and_2_are_not_identical,la(d),f,m);g=e.chainDiagnosticMessages(g,e.Diagnostics.Interface_0_cannot_simultaneously_extend_types_1_and_2,da(t),f,m),Qr.add(e.createDiagnosticForNodeFromMessageChain(r,g))}}else i.set(d.escapedName,{prop:d,containingType:c})}return a}(i,t.name)){for(var o=0,s=Po(i);o<s.length;o++){pp(a,ls(s[o],i.thisType),t.name,e.Diagnostics.Interface_0_incorrectly_extends_interface_1)}sx(i)}}xb(t)}e.forEach(e.getInterfaceBaseTypeNodes(t),(function(t){e.isEntityNameExpression(t.expression)&&!e.isOptionalChain(t.expression)||pn(t.expression,e.Diagnostics.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),Pb(t)})),e.forEach(t.members,Rx),r&&(Eb(t),Qb(t))}function vx(e){var t=Cn(e);if(!(16384&t.flags)){t.flags|=16384;for(var r=0,n=0,i=e.members;n<i.length;n++){var a=i[n],o=bx(a,r);Cn(a).enumMemberValue=o,r="number"==typeof o?o+1:void 0}}}function bx(t,r){if(e.isComputedNonLiteralName(t.name))pn(t.name,e.Diagnostics.Computed_property_names_are_not_allowed_in_enums);else{var n=e.getTextOfPropertyName(t.name);R_(n)&&!O_(n)&&pn(t.name,e.Diagnostics.An_enum_member_cannot_have_a_numeric_name)}return t.initializer?function(t){var r=jo(Ai(t.parent)),n=e.isEnumConst(t.parent),i=t.initializer,a=1!==r||Lo(t)?s(i):void 0;if(void 0!==a)n&&"number"==typeof a&&!isFinite(a)&&pn(i,isNaN(a)?e.Diagnostics.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:e.Diagnostics.const_enum_member_initializer_was_evaluated_to_a_non_finite_value);else{if(1===r)return pn(i,e.Diagnostics.Computed_values_are_not_permitted_in_an_enum_with_string_valued_members),0;if(n)pn(i,e.Diagnostics.const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values);else if(8388608&t.parent.flags)pn(i,e.Diagnostics.In_ambient_enum_declarations_member_initializer_must_be_constant_expression);else{var o=fb(i);Mv(o,296)?pp(o,Jo(Ai(t.parent)),i,void 0):pn(i,e.Diagnostics.Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhaustiveness_checks_consider_using_an_object_literal_instead,da(o))}}return a;function s(r){switch(r.kind){case 216:var n=s(r.operand);if("number"==typeof n)switch(r.operator){case 39:return n;case 40:return-n;case 54:return~n}break;case 218:var i=s(r.left),a=s(r.right);if("number"==typeof i&&"number"==typeof a)switch(r.operatorToken.kind){case 51:return i|a;case 50:return i&a;case 48:return i>>a;case 49:return i>>>a;case 47:return i<<a;case 52:return i^a;case 41:return i*a;case 43:return i/a;case 39:return i+a;case 40:return i-a;case 44:return i%a;case 42:return Math.pow(i,a)}else if("string"==typeof i&&"string"==typeof a&&39===r.operatorToken.kind)return i+a;break;case 10:case 14:return r.text;case 8:return _S(r),+r.text;case 208:return s(r.expression);case 78:var o=r;return O_(o.escapedText)?+o.escapedText:e.nodeIsMissing(r)?0:c(r,Ai(t.parent),o.escapedText);case 203:case 202:var l=r;if(kx(l)){var u=ub(l.expression);if(u.symbol&&384&u.symbol.flags){var d=void 0;return d=202===l.kind?l.name.escapedText:e.escapeLeadingUnderscores(e.cast(l.argumentExpression,e.isLiteralExpression).text),c(r,u.symbol,d)}}}}function c(r,n,i){var a=n.exports.get(i);if(a){var o=a.valueDeclaration;if(o!==t)return Pn(o,t)?xE(o):(pn(r,e.Diagnostics.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),0);pn(r,e.Diagnostics.Property_0_is_used_before_being_assigned,la(a))}}}(t):8388608&t.parent.flags&&!e.isEnumConst(t.parent)&&0===jo(Ai(t.parent))?void 0:void 0!==r?r:void pn(t.name,e.Diagnostics.Enum_member_must_have_initializer)}function kx(t){return 78===t.kind||202===t.kind&&kx(t.expression)||203===t.kind&&kx(t.expression)&&e.isStringLiteralLike(t.argumentExpression)}function xx(t){e.isPrivateIdentifier(t.name)&&pn(t,e.Diagnostics.An_enum_member_cannot_be_named_with_a_private_identifier)}function Ex(t){if(r){var n=e.isGlobalScopeAugmentation(t),i=8388608&t.flags;n&&!i&&pn(t.name,e.Diagnostics.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);var a=e.isAmbientModule(t);if(Nx(t,a?e.Diagnostics.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:e.Diagnostics.A_namespace_declaration_is_only_allowed_in_a_namespace_or_module))return;zE(t)||i||10!==t.name.kind||fS(t.name,e.Diagnostics.Only_ambient_modules_can_use_quoted_names),e.isIdentifier(t.name)&&(hk(t,t.name),yk(t,t.name)),Lb(t);var o=Ai(t);if(512&o.flags&&!i&&o.declarations.length>1&&M(t,e.shouldPreserveConstEnums(J))){var s=function(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];if((254===i.kind||253===i.kind&&e.nodeIsPresent(i.body))&&!(8388608&i.flags))return i}}(o);s&&(e.getSourceFileOfNode(t)!==e.getSourceFileOfNode(s)?pn(t.name,e.Diagnostics.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):t.pos<s.pos&&pn(t.name,e.Diagnostics.A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged));var c=e.getDeclarationOfKind(o,254);c&&(d=t,p=c,f=e.getEnclosingBlockScopeContainer(d),m=e.getEnclosingBlockScopeContainer(p),An(f)?An(m):!An(m)&&f===m)&&(Cn(t).flags|=32768)}if(a)if(e.isExternalModuleAugmentation(t)){if((n||33554432&Ai(t).flags)&&t.body)for(var l=0,u=t.body.statements;l<u.length;l++){Sx(u[l],n)}}else An(t.parent)?n?pn(t.name,e.Diagnostics.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):e.isExternalModuleNameRelative(e.getTextOfIdentifierOrLiteral(t.name))&&pn(t.name,e.Diagnostics.Ambient_module_declaration_cannot_specify_relative_module_name):pn(t.name,n?e.Diagnostics.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:e.Diagnostics.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}var d,p,f,m;t.body&&(Rx(t.body),e.isGlobalScopeAugmentation(t)||Qb(t))}function Sx(t,r){switch(t.kind){case 234:for(var n=0,i=t.declarationList.declarations;n<i.length;n++){Sx(i[n],r)}break;case 269:case 270:dS(t,e.Diagnostics.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 263:case 264:dS(t,e.Diagnostics.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 199:case 251:var a=t.name;if(e.isBindingPattern(a)){for(var o=0,s=a.elements;o<s.length;o++){Sx(s[o],r)}break}case 254:case 258:case 253:case 256:case 259:case 257:if(r)return;var c=Ai(t);if(c){var l=!(33554432&c.flags);l||(l=!!c.parent&&e.isExternalModuleAugmentation(c.parent.declarations[0]))}}}function Dx(t){var r=e.getExternalModuleName(t);if(!r||e.nodeIsMissing(r))return!1;if(!e.isStringLiteral(r))return pn(r,e.Diagnostics.String_literal_expected),!1;var n=260===t.parent.kind&&e.isAmbientModule(t.parent.parent);return 300===t.parent.kind||n?!(n&&e.isExternalModuleNameRelative(r.text)&&!va(t))||(pn(t,e.Diagnostics.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1):(pn(r,270===t.kind?e.Diagnostics.Export_declarations_are_not_permitted_in_a_namespace:e.Diagnostics.Import_declarations_in_a_namespace_cannot_reference_a_module),!1)}function wx(t){var r,n=Ai(t),i=ai(n);if(i!==ke){var a=(1160127&(n=Ci(n.exportSymbol||n)).flags?111551:0)|(788968&n.flags?788968:0)|(1920&n.flags?1920:0);if(i.flags&a)pn(t,273===t.kind?e.Diagnostics.Export_declaration_conflicts_with_exported_declaration_of_0:e.Diagnostics.Import_declaration_conflicts_with_local_declaration_of_0,la(n));!J.isolatedModules||273!==t.kind||t.parent.parent.isTypeOnly||111551&i.flags||8388608&t.flags||pn(t,e.Diagnostics.Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type),e.isImportSpecifier(t)&&(null===(r=i.declarations)||void 0===r?void 0:r.every((function(t){return!!(134217728&e.getCombinedNodeFlags(t))})))&&hn(t.name,i.declarations,n.escapedName)}}function Tx(t){hk(t,t.name),yk(t,t.name),wx(t),268===t.kind&&"default"===e.idText(t.propertyName||t.name)&&J.esModuleInterop&&H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&jE(t,131072)}function Cx(t){if(!Nx(t,e.Diagnostics.An_import_declaration_can_only_be_used_in_a_namespace_or_module)&&(!zE(t)&&e.hasEffectiveModifiers(t)&&dS(t,e.Diagnostics.An_import_declaration_cannot_have_modifiers),Dx(t))){var r=t.importClause;if(r&&!function(t){if(t.isTypeOnly&&t.name&&t.namedBindings)return fS(t,e.Diagnostics.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both);return!1}(r))if(r.name&&Tx(r),r.namedBindings)if(266===r.namedBindings.kind)Tx(r.namedBindings),H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&J.esModuleInterop&&jE(t,65536);else gi(t,t.moduleSpecifier)&&e.forEach(r.namedBindings.elements,Tx)}}function Ax(t){if(!Nx(t,e.Diagnostics.An_export_declaration_can_only_be_used_in_a_module)&&(!zE(t)&&e.hasEffectiveModifiers(t)&&dS(t,e.Diagnostics.An_export_declaration_cannot_have_modifiers),t.moduleSpecifier&&t.exportClause&&e.isNamedExports(t.exportClause)&&e.length(t.exportClause.elements)&&0===V&&jE(t,2097152),function(t){var r,n=t.isTypeOnly&&271!==(null===(r=t.exportClause)||void 0===r?void 0:r.kind);n&&fS(t,e.Diagnostics.Only_named_exports_may_use_export_type)}(t),!t.moduleSpecifier||Dx(t)))if(t.exportClause&&!e.isNamespaceExport(t.exportClause)){e.forEach(t.exportClause.elements,Fx);var r=260===t.parent.kind&&e.isAmbientModule(t.parent.parent),n=!r&&260===t.parent.kind&&!t.moduleSpecifier&&8388608&t.flags;300===t.parent.kind||r||n||pn(t,e.Diagnostics.Export_declarations_are_not_permitted_in_a_namespace)}else{var i=gi(t,t.moduleSpecifier);i&&ki(i)?pn(t.moduleSpecifier,e.Diagnostics.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,la(i)):t.exportClause&&wx(t.exportClause),H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&(t.exportClause?J.esModuleInterop&&jE(t,65536):jE(t,32768))}}function Nx(e,t){var r=300===e.parent.kind||260===e.parent.kind||259===e.parent.kind;return r||dS(e,t),!r}function Px(t){return e.isImportDeclaration(t)&&t.importClause&&!t.importClause.isTypeOnly&&(r=t.importClause,e.forEachImportClauseDeclaration(r,(function(e){return!!Ai(e).isReferenced})))&&!gE(t.importClause,!0)&&!function(t){return e.forEachImportClauseDeclaration(t,(function(e){return!!Tn(Ai(e)).constEnumReferenced}))}(t.importClause);var r}function Ix(t){return e.isImportEqualsDeclaration(t)&&e.isExternalModuleReference(t.moduleReference)&&!t.isTypeOnly&&Ai(t).isReferenced&&!gE(t,!1)&&!Tn(Ai(t)).constEnumReferenced}function Fx(t){if(wx(t),e.getEmitDeclarations(J)&&Sa(t.propertyName||t.name,!0),t.parent.parent.moduleSpecifier)J.esModuleInterop&&H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&"default"===e.idText(t.propertyName||t.name)&&jE(t,131072);else{var r=t.propertyName||t.name,n=Fn(r,r.escapedText,2998271,void 0,void 0,!0);if(n&&(n===ie||n===ae||An(Aa(n.declarations[0]))))pn(r,e.Diagnostics.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,e.idText(r));else{li(t);var i=n&&(2097152&n.flags?ai(n):n);(!i||i===ke||111551&i.flags)&&$v(t.propertyName||t.name)}}}function Ox(t){var r=Ai(t),n=Tn(r);if(!n.exportsChecked){var i=r.exports.get("export=");if(i&&function(t){return e.forEachEntry(t.exports,(function(e,t){return"export="!==t}))}(r)){var a=Vn(i)||i.valueDeclaration;va(a)||e.isInJSFile(a)||pn(a,e.Diagnostics.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}var o=Di(r);o&&o.forEach((function(t,r){var n=t.declarations,i=t.flags;if("__export"!==r&&!(1984&i)){var a=e.countWhere(n,A);if(!(524288&i&&a<=2)&&a>1)for(var o=0,s=n;o<s.length;o++){var c=s[o];L(c)&&Qr.add(e.createDiagnosticForNode(c,e.Diagnostics.Cannot_redeclare_exported_variable_0,e.unescapeLeadingUnderscores(r)))}}})),n.exportsChecked=!0}}function Rx(t){if(t){var i=d;d=t,x=0,function(t){e.isInJSFile(t)&&e.forEach(t.jsDoc,(function(t){var r=t.tags;return e.forEach(r,Rx)}));var i=t.kind;if(n)switch(i){case 259:case 254:case 256:case 253:n.throwIfCancellationRequested()}i>=234&&i<=250&&t.flowNode&&!Ng(t.flowNode)&&mn(!1===J.allowUnreachableCode,t,e.Diagnostics.Unreachable_code_detected);switch(i){case 160:return yb(t);case 161:return vb(t);case 164:return Sb(t);case 163:return function(t){return e.isPrivateIdentifier(t.name)&&pn(t,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),Sb(t)}(t);case 176:case 175:case 170:case 171:case 172:return kb(t);case 166:case 165:return function(t){nS(t)||YE(t.name),e.isPrivateIdentifier(t.name)&&pn(t,e.Diagnostics.A_method_cannot_be_named_with_a_private_identifier),Xb(t),e.hasSyntacticModifier(t,128)&&166===t.kind&&t.body&&pn(t,e.Diagnostics.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,e.declarationNameToString(t.name))}(t);case 167:return Db(t);case 168:case 169:return wb(t);case 174:return Pb(t);case 173:return function(t){var r=function(e){switch(e.parent.kind){case 210:case 170:case 253:case 209:case 175:case 166:case 165:var t=e.parent;if(e===t.type)return t}}(t);if(r){var n=Ic(r),i=jc(n);if(i){Rx(t.type);var a=t.parameterName;if(0===i.kind||2===i.kind)vd(a);else if(i.parameterIndex>=0)U(n)&&i.parameterIndex===n.parameters.length-1?pn(a,e.Diagnostics.A_type_predicate_cannot_reference_a_rest_parameter):i.type&&pp(i.type,_o(n.parameters[i.parameterIndex]),t.type,void 0,(function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type)}));else if(a){for(var o=!1,s=0,c=r.parameters;s<c.length;s++){var l=c[s].name;if(e.isBindingPattern(l)&&bb(l,a,i.parameterName)){o=!0;break}}o||pn(t.parameterName,e.Diagnostics.Cannot_find_parameter_0,i.parameterName)}}}else pn(t,e.Diagnostics.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods)}(t);case 177:return function(e){Dl(e)}(t);case 178:return function(t){e.forEach(t.members,Rx),r&&(sx(nd(t)),Eb(t),xb(t))}(t);case 179:return function(e){Rx(e.elementType)}(t);case 180:return function(t){for(var r=t.elements,n=!1,i=!1,a=e.some(r,e.isNamedTupleMember),o=0,s=r;o<s.length;o++){var c=s[o];if(193!==c.kind&&a){fS(c,e.Diagnostics.Tuple_members_must_all_have_names_or_all_not_have_names);break}var l=Bl(c);if(8&l){var u=xd(c.type);if(!sf(u)){pn(c,e.Diagnostics.A_rest_element_type_must_be_an_array_type);break}(rf(u)||vf(u)&&4&u.target.combinedFlags)&&(i=!0)}else if(4&l){if(i){fS(c,e.Diagnostics.A_rest_element_cannot_follow_another_rest_element);break}i=!0}else if(2&l){if(i){fS(c,e.Diagnostics.An_optional_element_cannot_follow_a_rest_element);break}n=!0}else if(n){fS(c,e.Diagnostics.A_required_element_cannot_follow_an_optional_element);break}}e.forEach(t.elements,Rx),xd(t)}(t);case 183:case 184:return function(t){e.forEach(t.types,Rx),xd(t)}(t);case 187:case 181:case 182:return Rx(t.type);case 188:return function(e){vd(e)}(t);case 189:return Fb(t);case 185:return function(t){e.forEachChild(t,Rx)}(t);case 186:return function(t){e.findAncestor(t,(function(e){return e.parent&&185===e.parent.kind&&e.parent.extendsType===e}))||fS(t,e.Diagnostics.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),Rx(t.typeParameter),Qb(t)}(t);case 194:return function(e){for(var t=0,r=e.templateSpans;t<r.length;t++){var n=r[t];Rx(n.type),pp(xd(n.type),et,n.type)}xd(e)}(t);case 196:return function(e){Rx(e.argument),xd(e)}(t);case 193:return function(t){t.dotDotDotToken&&t.questionToken&&fS(t,e.Diagnostics.A_tuple_member_cannot_be_both_optional_and_rest),181===t.type.kind&&fS(t.type,e.Diagnostics.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),182===t.type.kind&&fS(t.type,e.Diagnostics.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),Rx(t.type),xd(t)}(t);case 318:return function(t){var r=e.getEffectiveJSDocHost(t);if(r&&(e.isClassDeclaration(r)||e.isClassExpression(r))){var n=e.getJSDocTags(r).filter(e.isJSDocAugmentsTag);e.Debug.assert(n.length>0),n.length>1&&pn(n[1],e.Diagnostics.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);var i=Yb(t.class.expression),a=e.getClassExtendsHeritageElement(r);if(a){var o=Yb(a.expression);o&&i.escapedText!==o.escapedText&&pn(i,e.Diagnostics.JSDoc_0_1_does_not_match_the_extends_2_clause,e.idText(t.tagName),e.idText(i),e.idText(o))}}else pn(r,e.Diagnostics.JSDoc_0_is_not_attached_to_a_class,e.idText(t.tagName))}(t);case 319:return function(t){var r=e.getEffectiveJSDocHost(t);r&&(e.isClassDeclaration(r)||e.isClassExpression(r))||pn(r,e.Diagnostics.JSDoc_0_is_not_attached_to_a_class,e.idText(t.tagName))}(t);case 334:case 327:case 328:return function(t){t.typeExpression||pn(t.name,e.Diagnostics.JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags),t.name&&cx(t.name,e.Diagnostics.Type_alias_name_cannot_be_0),Rx(t.typeExpression)}(t);case 333:return function(e){Rx(e.constraint);for(var t=0,r=e.typeParameters;t<r.length;t++)Rx(r[t])}(t);case 332:return function(e){Rx(e.typeExpression)}(t);case 329:return function(t){if(Rx(t.typeExpression),!e.getParameterSymbolFromJSDoc(t)){var r=e.getHostSignatureFromJSDoc(t);if(r){var n=e.getJSDocTags(r).filter(e.isJSDocParameterTag).indexOf(t);if(n>-1&&n<r.parameters.length&&e.isBindingPattern(r.parameters[n].name))return;Oc(r)?e.findLast(e.getJSDocTags(r),e.isJSDocParameterTag)===t&&t.typeExpression&&t.typeExpression.type&&!rf(xd(t.typeExpression.type))&&pn(t.name,e.Diagnostics.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,e.idText(158===t.name.kind?t.name.right:t.name)):e.isQualifiedName(t.name)?pn(t.name,e.Diagnostics.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,e.entityNameToString(t.name),e.entityNameToString(t.name.left)):pn(t.name,e.Diagnostics.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,e.idText(t.name))}}}(t);case 336:return function(e){Rx(e.typeExpression)}(t);case 311:!function(t){!r||t.type||e.isJSDocConstructSignature(t)||Gf(t,Ee),kb(t)}(t);case 309:case 308:case 306:case 307:case 315:return Mx(t),void e.forEachChild(t,Rx);case 312:return void function(t){Mx(t),Rx(t.type);var r=t.parent;if(e.isParameter(r)&&e.isJSDocFunctionType(r.parent))return void(e.last(r.parent.parameters)!==r&&pn(t,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list));e.isJSDocTypeExpression(r)||pn(t,e.Diagnostics.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);var n=t.parent.parent;if(!e.isJSDocParameterTag(n))return void pn(t,e.Diagnostics.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);var i=e.getParameterSymbolFromJSDoc(n);if(!i)return;var a=e.getHostSignatureFromJSDoc(n);a&&e.last(a.parameters).symbol===i||pn(t,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list)}(t);case 304:return Rx(t.type);case 190:return function(e){Rx(e.objectType),Rx(e.indexType),Ib(Hu(e),e)}(t);case 191:return function(t){Rx(t.typeParameter),Rx(t.nameType),Rx(t.type),t.type||Gf(t,Ee);var r=Ku(t),n=Is(r);n?pp(n,Qe,t.nameType):pp(Ps(r),Qe,e.getEffectiveConstraintOfTypeParameter(t.typeParameter))}(t);case 253:return function(e){r&&(Xb(e),XE(e),hk(e,e.name),yk(e,e.name))}(t);case 232:case 260:return pk(t);case 234:return Dk(t);case 235:return function(e){gS(e),fb(e.expression)}(t);case 236:return function(t){gS(t);var r=Ck(t.expression);wk(t.expression,r,t.thenStatement),Rx(t.thenStatement),233===t.thenStatement.kind&&pn(t.thenStatement,e.Diagnostics.The_body_of_an_if_statement_cannot_be_the_empty_statement),Rx(t.elseStatement)}(t);case 237:return function(e){gS(e),Rx(e.statement),Ck(e.expression)}(t);case 238:return function(e){gS(e),Ck(e.expression),Rx(e.statement)}(t);case 239:return function(t){gS(t)||t.initializer&&252===t.initializer.kind&&cS(t.initializer),t.initializer&&(252===t.initializer.kind?e.forEach(t.initializer.declarations,Ek):fb(t.initializer)),t.condition&&Ck(t.condition),t.incrementor&&fb(t.incrementor),Rx(t.statement),t.locals&&Qb(t)}(t);case 240:return Ak(t);case 241:return function(t){if(eS(t),t.awaitModifier?2==(6&e.getFunctionFlags(e.getContainingFunction(t)))&&V<99&&jE(t,16384):J.downlevelIteration&&V<2&&jE(t,256),252===t.initializer.kind)Nk(t);else{var r=t.initializer,n=Pk(t);if(200===r.kind||201===r.kind)qv(r,n||we);else{var i=fb(r);Iv(r,e.Diagnostics.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access,e.Diagnostics.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access),n&&fp(n,i,r,t.expression)}}Rx(t.statement),t.locals&&Qb(t)}(t);case 242:case 243:return nx(t);case 244:return function(t){var r;if(!gS(t)){var n=e.getContainingFunction(t);if(n){var i=Bc(Ic(n)),a=e.getFunctionFlags(n);if(W||t.expression||131072&i.flags){var o=t.expression?$v(t.expression):Ne;if(169===n.kind)t.expression&&pn(t,e.Diagnostics.Setters_cannot_return_a_value);else if(167===n.kind)t.expression&&!fp(o,i,t,t.expression)&&pn(t,e.Diagnostics.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class);else if(zc(n)){var s=null!==(r=ix(i,a))&&void 0!==r?r:i,c=2&a?zb(o,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):o;s&&fp(c,s,t,t.expression)}}else 167!==n.kind&&J.noImplicitReturns&&!ax(n,i)&&pn(t,e.Diagnostics.Not_all_code_paths_return_a_value)}else dS(t,e.Diagnostics.A_return_statement_can_only_be_used_within_a_function_body)}}(t);case 245:return function(t){gS(t)||32768&t.flags&&dS(t,e.Diagnostics.with_statements_are_not_allowed_in_an_async_function_block),fb(t.expression);var r=e.getSourceFileOfNode(t);if(!uS(r)){var n=e.getSpanOfTokenAtPosition(r,t.pos).start;pS(r,n,t.statement.pos-n,e.Diagnostics.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}(t);case 246:return function(t){var n;gS(t);var i=!1,a=fb(t.expression),o=ff(a);e.forEach(t.caseBlock.clauses,(function(t){if(288!==t.kind||i||(void 0===n?n=t:(fS(t,e.Diagnostics.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),i=!0)),r&&287===t.kind){var s=fb(t.expression),c=ff(s),l=a;c&&o||(s=c?mf(s):s,l=mf(a)),Vv(l,s)||xp(s,l,t.expression,void 0)}e.forEach(t.statements,Rx),J.noFallthroughCasesInSwitch&&t.fallthroughFlowNode&&Ng(t.fallthroughFlowNode)&&pn(t,e.Diagnostics.Fallthrough_case_in_switch)})),t.caseBlock.locals&&Qb(t.caseBlock)}(t);case 247:return function(t){gS(t)||e.findAncestor(t.parent,(function(r){return e.isFunctionLike(r)?"quit":247===r.kind&&r.label.escapedText===t.label.escapedText&&(fS(t.label,e.Diagnostics.Duplicate_label_0,e.getTextOfNode(t.label)),!0)})),Rx(t.statement)}(t);case 248:return ox(t);case 249:return function(t){gS(t),pk(t.tryBlock);var r=t.catchClause;if(r){if(r.variableDeclaration){var n=r.variableDeclaration;if(n.type){var i=Ua(n,!1);!i||3&i.flags||dS(n.type,e.Diagnostics.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(n.initializer)dS(n.initializer,e.Diagnostics.Catch_clause_variable_cannot_have_an_initializer);else{var a=r.block.locals;a&&e.forEachKey(r.locals,(function(t){var r=a.get(t);r&&2&r.flags&&fS(r.valueDeclaration,e.Diagnostics.Cannot_redeclare_identifier_0_in_catch_clause,t)}))}}pk(r.block)}t.finallyBlock&&pk(t.finallyBlock)}(t);case 251:return Ek(t);case 199:return Sk(t);case 254:return function(t){t.name||e.hasSyntacticModifier(t,512)||dS(t,e.Diagnostics.A_class_declaration_without_the_default_modifier_must_have_a_name),fx(t),e.forEach(t.members,Rx),Qb(t)}(t);case 255:return px(t);case 256:return yx(t);case 257:return function(t){zE(t),cx(t.name,e.Diagnostics.Type_alias_name_cannot_be_0),Lb(t),lx(t.typeParameters),137===t.type.kind?P.has(t.name.escapedText)&&1===e.length(t.typeParameters)||pn(t.type,e.Diagnostics.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types):(Rx(t.type),Qb(t))}(t);case 258:return function(t){if(r){zE(t),cx(t.name,e.Diagnostics.Enum_name_cannot_be_0),hk(t,t.name),yk(t,t.name),Lb(t),t.members.forEach(xx),vx(t);var n=Ai(t);if(t===e.getDeclarationOfKind(n,t.kind)){if(n.declarations.length>1){var i=e.isEnumConst(t);e.forEach(n.declarations,(function(t){e.isEnumDeclaration(t)&&e.isEnumConst(t)!==i&&pn(e.getNameOfDeclaration(t),e.Diagnostics.Enum_declarations_must_all_be_const_or_non_const)}))}var a=!1;e.forEach(n.declarations,(function(t){if(258!==t.kind)return!1;var r=t;if(!r.members.length)return!1;var n=r.members[0];n.initializer||(a?pn(n.name,e.Diagnostics.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):a=!0)}))}}}(t);case 259:return Ex(t);case 264:return Cx(t);case 263:return function(t){if(!Nx(t,e.Diagnostics.An_import_declaration_can_only_be_used_in_a_namespace_or_module)&&(zE(t),e.isInternalModuleImportEqualsDeclaration(t)||Dx(t)))if(Tx(t),e.hasSyntacticModifier(t,1)&&li(t),275!==t.moduleReference.kind){var r=ai(Ai(t));if(r!==ke){if(111551&r.flags){var n=e.getFirstIdentifier(t.moduleReference);1920&fi(n,112575).flags||pn(n,e.Diagnostics.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,e.declarationNameToString(n))}788968&r.flags&&cx(t.name,e.Diagnostics.Import_name_cannot_be_0)}t.isTypeOnly&&fS(t,e.Diagnostics.An_import_alias_cannot_use_import_type)}else!(H>=e.ModuleKind.ES2015)||t.isTypeOnly||8388608&t.flags||fS(t,e.Diagnostics.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead)}(t);case 270:return Ax(t);case 269:return function(t){if(!Nx(t,e.Diagnostics.An_export_assignment_can_only_be_used_in_a_module)){var r=300===t.parent.kind?t.parent:t.parent.parent;if(259!==r.kind||e.isAmbientModule(r)){if(!zE(t)&&e.hasEffectiveModifiers(t)&&dS(t,e.Diagnostics.An_export_assignment_cannot_have_modifiers),78===t.expression.kind){var n=t.expression,i=fi(n,67108863,!0,!0,t);if(i){Jg(i,n);var a=2097152&i.flags?ai(i):i;(a===ke||111551&a.flags)&&$v(t.expression)}else $v(t.expression);e.getEmitDeclarations(J)&&Sa(t.expression,!0)}else $v(t.expression);Ox(r),8388608&t.flags&&!e.isEntityNameExpression(t.expression)&&fS(t.expression,e.Diagnostics.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),!t.isExportEquals||8388608&t.flags||(H>=e.ModuleKind.ES2015?fS(t,e.Diagnostics.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):H===e.ModuleKind.System&&fS(t,e.Diagnostics.Export_assignment_is_not_supported_when_module_flag_is_system))}else t.isExportEquals?pn(t,e.Diagnostics.An_export_assignment_cannot_be_used_in_a_namespace):pn(t,e.Diagnostics.A_default_export_can_only_be_used_in_an_ECMAScript_style_module)}}(t);case 233:case 250:return void gS(t);case 274:(function(e){$b(e)})(t)}}(t),d=i}}function Mx(t){e.isInJSFile(t)||fS(t,e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments)}function Lx(t){var r=Cn(e.getSourceFileOfNode(t));if(!(1&r.flags)){r.deferredNodes=r.deferredNodes||new e.Map;var n=O(t);r.deferredNodes.set(n,t)}}function jx(t){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkDeferredNode",{kind:t.kind,pos:t.pos,end:t.end});var r=d;switch(d=t,x=0,t.kind){case 204:case 205:case 206:case 162:case 278:Vh(t);break;case 209:case 210:case 166:case 165:!function(t){e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t));var r=e.getFunctionFlags(t),n=zc(t);if(wv(t,n),t.body)if(e.getEffectiveReturnTypeNode(t)||Bc(Ic(t)),232===t.body.kind)Rx(t.body);else{var i=fb(t.body),a=n&&ix(n,r);a&&fp(2==(3&r)?zb(i,t.body,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):i,a,t.body,t.body)}}(t);break;case 168:case 169:wb(t);break;case 223:!function(t){e.forEach(t.members,Rx),Qb(t)}(t);break;case 277:!function(e){ah(e)}(t);break;case 276:!function(e){ah(e.openingElement),q_(e.closingElement.tagName)?G_(e.closingElement):fb(e.closingElement.tagName),V_(e)}(t)}d=r,null===e.tracing||void 0===e.tracing||e.tracing.pop()}function Bx(r){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkSourceFile",{path:r.path},!0),e.performance.mark("beforeCheck"),function(r){var n=Cn(r);if(!(1&n.flags)){if(e.skipTypeChecking(r,J,t))return;!function(t){!!(8388608&t.flags)&&function(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];if((e.isDeclaration(i)||234===i.kind)&&mS(i))return!0}}(t)}(r),e.clear(Gr),e.clear($r),e.clear(Yr),e.forEach(r.statements,Rx),Rx(r.endOfFileToken),function(e){var t=Cn(e);t.deferredNodes&&t.deferredNodes.forEach(jx)}(r),e.isExternalOrCommonJsModule(r)&&Qb(r),r.isDeclarationFile||!J.noUnusedLocals&&!J.noUnusedParameters||Zb(Ux(r),(function(t,r,n){!e.containsParseError(t)&&zx(r,!!(8388608&t.flags))&&Qr.add(n)})),2===J.importsNotUsedAsValues&&!r.isDeclarationFile&&e.isExternalModule(r)&&function(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];(Px(i)||Ix(i))&&pn(i,e.Diagnostics.This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error)}}(r),e.isExternalOrCommonJsModule(r)&&Ox(r),Gr.length&&(e.forEach(Gr,mk),e.clear(Gr)),$r.length&&(e.forEach($r,gk),e.clear($r)),Yr.length&&(e.forEach(Yr,_k),e.clear(Yr)),n.flags|=1}}(r),e.performance.mark("afterCheck"),e.performance.measure("Check","beforeCheck","afterCheck"),null===e.tracing||void 0===e.tracing||e.tracing.pop()}function zx(t,r){if(r)return!1;switch(t){case 0:return!!J.noUnusedLocals;case 1:return!!J.noUnusedParameters;default:return e.Debug.assertNever(t)}}function Ux(t){return Er.get(t.path)||e.emptyArray}function qx(r,i){try{return n=i,function(r){if(Jx(),r){var n=Qr.getGlobalDiagnostics(),i=n.length;Bx(r);var a=Qr.getDiagnostics(r.fileName),o=Qr.getGlobalDiagnostics();if(o!==n){var s=e.relativeComplement(n,o,e.compareDiagnostics);return e.concatenate(s,a)}return 0===i&&o.length>0?e.concatenate(o,a):a}return e.forEach(t.getSourceFiles(),Bx),Qr.getDiagnostics()}(r)}finally{n=void 0}}function Jx(){if(!r)throw new Error("Trying to get diagnostics from a type checker that does not produce them.")}function Vx(e){switch(e.kind){case 160:case 254:case 256:case 257:case 258:case 334:case 327:case 328:return!0;case 265:return e.isTypeOnly;case 268:case 273:return e.parent.parent.isTypeOnly;default:return!1}}function Hx(e){for(;158===e.parent.kind;)e=e.parent;return 174===e.parent.kind}function Kx(t,r){for(var n;(t=e.getContainingClass(t))&&!(n=r(t)););return n}function Wx(e,t){return!!Kx(e,(function(e){return e===t}))}function Gx(e){return void 0!==function(e){for(;158===e.parent.kind;)e=e.parent;return 263===e.parent.kind?e.parent.moduleReference===e?e.parent:void 0:269===e.parent.kind&&e.parent.expression===e?e.parent:void 0}(e)}function $x(t){if(e.isDeclarationName(t))return Ai(t.parent);if(e.isInJSFile(t)&&202===t.parent.kind&&t.parent===t.parent.parent.left&&!e.isPrivateIdentifier(t)){var r=function(t){switch(e.getAssignmentDeclarationKind(t.parent.parent)){case 1:case 3:return Ai(t.parent);case 4:case 2:case 5:return Ai(t.parent.parent)}}(t);if(r)return r}if(269===t.parent.kind&&e.isEntityNameExpression(t)){var n=fi(t,2998271,!0);if(n&&n!==ke)return n}else if(!e.isPropertyAccessExpression(t)&&!e.isPrivateIdentifier(t)&&Gx(t)){var i=e.getAncestor(t,263);return e.Debug.assert(void 0!==i),di(t,!0)}if(!e.isPropertyAccessExpression(t)&&!e.isPrivateIdentifier(t)){var a=function(t){for(var r=t.parent;e.isQualifiedName(r);)t=r,r=r.parent;if(r&&196===r.kind&&r.qualifier===t)return r}(t);if(a){xd(a);var o=Cn(t).resolvedSymbol;return o===ke?void 0:o}}for(;e.isRightSideOfQualifiedNameOrPropertyAccess(t);)t=t.parent;if(function(e){for(;202===e.parent.kind;)e=e.parent;return 225===e.parent.kind}(t)){var s=0;225===t.parent.kind?(s=788968,e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)&&(s|=111551)):s=1920,s|=2097152;var c=e.isEntityNameExpression(t)?fi(t,s):void 0;if(c)return c}if(329===t.parent.kind)return e.getParameterSymbolFromJSDoc(t.parent);if(160===t.parent.kind&&333===t.parent.parent.kind){e.Debug.assert(!e.isInJSFile(t));var l=e.getTypeParameterFromJsDoc(t.parent);return l&&l.symbol}if(e.isExpressionNode(t)){if(e.nodeIsMissing(t))return;if(78===t.kind){if(e.isJSXTagName(t)&&q_(t)){var u=G_(t.parent);return u===ke?void 0:u}return fi(t,111551,!1,!0)}if(202===t.kind||158===t.kind){var d=Cn(t);return d.resolvedSymbol||(202===t.kind?kh(t):xh(t)),d.resolvedSymbol}}else{if(Hx(t))return fi(t,s=174===t.parent.kind?788968:1920,!1,!0);if(function(e){for(;158===e.parent.kind;)e=e.parent;for(;202===e.parent.kind;)e=e.parent;return 305===e.parent.kind}(t))return fi(t,s=901119,!1,!0,e.getHostSignatureFromJSDoc(t))}return 173===t.parent.kind?fi(t,1):void 0}function Yx(t,r){if(300===t.kind)return e.isExternalModule(t)?Ci(t.symbol):void 0;var n=t.parent,i=n.parent;if(!(16777216&t.flags)){if(j(t)){var a=Ai(n);return e.isImportOrExportSpecifier(t.parent)&&t.parent.propertyName===t?j_(a):a}if(e.isLiteralComputedPropertyDeclarationName(t))return Ai(n.parent);if(78===t.kind){if(Gx(t))return $x(t);if(199===n.kind&&197===i.kind&&t===n.propertyName){var o=gc(Xx(i),t.escapedText);if(o)return o}}switch(t.kind){case 78:case 79:case 202:case 158:return $x(t);case 108:var s=e.getThisContainer(t,!1);if(e.isFunctionLike(s)){var c=Ic(s);if(c.thisParameter)return c.thisParameter}if(e.isInExpressionContext(t))return fb(t).symbol;case 188:return vd(t).symbol;case 106:return fb(t).symbol;case 133:var l=t.parent;return l&&167===l.kind?l.parent.symbol:void 0;case 10:case 14:if(e.isExternalModuleImportEqualsDeclaration(t.parent.parent)&&e.getExternalModuleImportEqualsDeclarationExpression(t.parent.parent)===t||(264===t.parent.kind||270===t.parent.kind)&&t.parent.moduleSpecifier===t||e.isInJSFile(t)&&e.isRequireCall(t.parent,!1)||e.isImportCall(t.parent)||e.isLiteralTypeNode(t.parent)&&e.isLiteralImportTypeNode(t.parent.parent)&&t.parent.parent.argument===t.parent)return gi(t,t,r);if(e.isCallExpression(n)&&e.isBindableObjectDefinePropertyCall(n)&&n.arguments[1]===t)return Ai(n);case 8:var u=e.isElementAccessExpression(n)?n.argumentExpression===t?ub(n.expression):void 0:e.isLiteralTypeNode(n)&&e.isIndexedAccessTypeNode(i)?xd(i.objectType):void 0;return u&&gc(u,e.escapeLeadingUnderscores(t.text));case 88:case 98:case 38:case 83:return Ai(t.parent);case 196:return e.isLiteralImportTypeNode(t)?Yx(t.argument.literal,r):void 0;case 93:return e.isExportAssignment(t.parent)?e.Debug.checkDefined(t.parent.symbol):void 0;default:return}}}function Xx(t){if(e.isSourceFile(t)&&!e.isExternalModule(t))return we;if(16777216&t.flags)return we;var r,n,i=e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments(t),a=i&&Oo(Ai(i.class));if(e.isPartOfTypeNode(t)){var o=xd(t);return a?ls(o,a.thisType):o}if(e.isExpressionNode(t))return Zx(t);if(a&&!i.isImplements){var s=e.firstOrUndefined(Po(a));return s?ls(s,a.thisType):we}if(Vx(t))return Jo(n=Ai(t));if(78===(r=t).kind&&Vx(r.parent)&&e.getNameOfDeclaration(r.parent)===r)return(n=Yx(t))?Jo(n):we;if(e.isDeclaration(t))return _o(n=Ai(t));if(j(t))return(n=Yx(t))?_o(n):we;if(e.isBindingPattern(t))return Ua(t.parent,!0)||we;if(Gx(t)&&(n=Yx(t))){var c=Jo(n);return c!==we?c:_o(n)}return we}function Qx(t){if(e.Debug.assert(201===t.kind||200===t.kind),241===t.parent.kind)return qv(t,Pk(t.parent)||we);if(218===t.parent.kind)return qv(t,ub(t.parent.right)||we);if(291===t.parent.kind){var r=e.cast(t.parent.parent,e.isObjectLiteralExpression);return zv(r,Qx(r)||we,e.indexOfNode(r.properties,t.parent))}var n=e.cast(t.parent,e.isArrayLiteralExpression),i=Qx(n)||we,a=Ik(65,i,Ne,t.parent)||we;return Uv(n,i,n.elements.indexOf(t),a)}function Zx(t,r){return e.isRightSideOfQualifiedNameOrPropertyAccess(t)&&(t=t.parent),gd(ub(t,r))}function eE(t){var r=Ai(t.parent);return e.hasSyntacticModifier(t,32)?_o(r):Jo(r)}function tE(t){var r=t.name;switch(r.kind){case 78:return hd(e.idText(r));case 8:case 10:return hd(r.text);case 159:var n=M_(r);return Mv(n,12288)?n:Re;default:return e.Debug.fail("Unsupported property name.")}}function rE(t){t=ac(t);var r=e.createSymbolTable(Hs(t)),n=hc(t,0).length?bt:hc(t,1).length?kt:void 0;return n&&e.forEach(Hs(n),(function(e){r.has(e.escapedName)||r.set(e.escapedName,e)})),Hi(r)}function nE(t){return e.typeHasCallOrConstructSignatures(t,le)}function iE(t){if(e.isGeneratedIdentifier(t))return!1;var r=e.getParseTreeNode(t,e.isIdentifier);if(!r)return!1;var n=r.parent;return!!n&&(!((e.isPropertyAccessExpression(n)||e.isPropertyAssignment(n))&&n.name===r)&&PE(r)===se)}function aE(t){var r=gi(t.parent,t);if(!r||e.isShorthandAmbientModuleSymbol(r))return!0;var n=ki(r),i=Tn(r=vi(r));return void 0===i.exportsSomeValue&&(i.exportsSomeValue=n?!!(111551&r.flags):e.forEachEntry(Di(r),(function(e){return(e=ii(e))&&!!(111551&e.flags)}))),i.exportsSomeValue}function oE(t,r){var n=e.getParseTreeNode(t,e.isIdentifier);if(n){var i=PE(n,function(t){return e.isModuleOrEnumDeclaration(t.parent)&&t===t.parent.name}(n));if(i){if(1048576&i.flags){var a=Ci(i.exportSymbol);if(!r&&944&a.flags&&!(3&a.flags))return;i=a}var o=Ni(i);if(o){if(512&o.flags&&300===o.valueDeclaration.kind){var s=o.valueDeclaration;return s!==e.getSourceFileOfNode(n)?void 0:s}return e.findAncestor(n.parent,(function(t){return e.isModuleOrEnumDeclaration(t)&&Ai(t)===o}))}}}}function sE(t){if(t.generatedImportReference)return t.generatedImportReference;var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=PE(r);if(ni(n,111551)&&!ci(n))return Vn(n)}}function cE(t){if(418&t.flags&&!e.isSourceFile(t.valueDeclaration)){var r=Tn(t);if(void 0===r.isDeclarationWithCollidingName){var n=e.getEnclosingBlockScopeContainer(t.valueDeclaration);if(e.isStatementWithLocals(n)||function(t){return e.isBindingElement(t.valueDeclaration)&&290===e.walkUpBindingElementsAndPatterns(t.valueDeclaration).parent.kind}(t)){var i=Cn(t.valueDeclaration);if(Fn(n.parent,t.escapedName,111551,void 0,void 0,!1))r.isDeclarationWithCollidingName=!0;else if(262144&i.flags){var a=524288&i.flags,o=e.isIterationStatement(n,!1),s=232===n.kind&&e.isIterationStatement(n.parent,!1);r.isDeclarationWithCollidingName=!(e.isBlockScopedContainerTopLevel(n)||a&&(o||s))}else r.isDeclarationWithCollidingName=!1}}return r.isDeclarationWithCollidingName}return!1}function lE(t){if(!e.isGeneratedIdentifier(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=PE(r);if(n&&cE(n))return n.valueDeclaration}}}function uE(t){var r=e.getParseTreeNode(t,e.isDeclaration);if(r){var n=Ai(r);if(n)return cE(n)}return!1}function dE(t){switch(t.kind){case 263:return fE(Ai(t)||ke);case 265:case 266:case 268:case 273:var r=Ai(t)||ke;return fE(r)&&!ci(r);case 270:var n=t.exportClause;return!!n&&(e.isNamespaceExport(n)||e.some(n.elements,dE));case 269:return!t.expression||78!==t.expression.kind||fE(Ai(t)||ke)}return!1}function pE(t){var r=e.getParseTreeNode(t,e.isImportEqualsDeclaration);return!(void 0===r||300!==r.parent.kind||!e.isInternalModuleImportEqualsDeclaration(r))&&(fE(Ai(r))&&r.moduleReference&&!e.nodeIsMissing(r.moduleReference))}function fE(t){var r=ai(t);return r===ke||!!(111551&r.flags)&&(e.shouldPreserveConstEnums(J)||!mE(r))}function mE(e){return Bv(e)||!!e.constEnumOnlyModule}function gE(t,r){if(Hn(t)){var n=Ai(t),i=n&&Tn(n);if(null==i?void 0:i.referenced)return!0;var a=Tn(n).target;if(a&&1&e.getEffectiveModifierFlags(t)&&111551&a.flags&&(e.shouldPreserveConstEnums(J)||!mE(a)))return!0}return!!r&&!!e.forEachChild(t,(function(e){return gE(e,r)}))}function _E(t){if(e.nodeIsPresent(t.body)){if(e.isGetAccessor(t)||e.isSetAccessor(t))return!1;var r=Rc(Ai(t));return r.length>1||1===r.length&&r[0].declaration!==t}return!1}function hE(t){return!(!W||Tc(t)||e.isJSDocParameterTag(t)||!t.initializer||e.hasSyntacticModifier(t,92))}function yE(t){return W&&Tc(t)&&!t.initializer&&e.hasSyntacticModifier(t,92)}function vE(t){var r=e.getParseTreeNode(t,e.isFunctionDeclaration);if(!r)return!1;var n=Ai(r);return!!(n&&16&n.flags)&&!!e.forEachEntry(Si(n),(function(t){return 111551&t.flags&&t.valueDeclaration&&e.isPropertyAccessExpression(t.valueDeclaration)}))}function bE(t){var r=e.getParseTreeNode(t,e.isFunctionDeclaration);if(!r)return e.emptyArray;var n=Ai(r);return n&&Hs(_o(n))||e.emptyArray}function kE(e){return Cn(e).flags||0}function xE(e){return vx(e.parent),Cn(e).enumMemberValue}function EE(e){switch(e.kind){case 294:case 202:case 203:return!0}return!1}function SE(t){if(294===t.kind)return xE(t);var r=Cn(t).resolvedSymbol;if(r&&8&r.flags){var n=r.valueDeclaration;if(e.isEnumConst(n.parent))return xE(n)}}function DE(e){return!!(524288&e.flags)&&hc(e,0).length>0}function wE(t,r){var n,i=e.getParseTreeNode(t,e.isEntityName);if(!i)return e.TypeReferenceSerializationKind.Unknown;if(r&&!(r=e.getParseTreeNode(r)))return e.TypeReferenceSerializationKind.Unknown;var a=fi(i,111551,!0,!0,r),o=(null===(n=null==a?void 0:a.declarations)||void 0===n?void 0:n.every(e.isTypeOnlyImportOrExportDeclaration))||!1,s=a&&2097152&a.flags?ai(a):a,c=fi(i,788968,!0,!1,r);if(s&&s===c){var l=Fl(!1);if(l&&s===l)return e.TypeReferenceSerializationKind.Promise;var u=_o(s);if(u&&Do(u))return o?e.TypeReferenceSerializationKind.TypeWithCallSignature:e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue}if(!c)return o?e.TypeReferenceSerializationKind.ObjectType:e.TypeReferenceSerializationKind.Unknown;var d=Jo(c);return d===we?o?e.TypeReferenceSerializationKind.ObjectType:e.TypeReferenceSerializationKind.Unknown:3&d.flags?e.TypeReferenceSerializationKind.ObjectType:Mv(d,245760)?e.TypeReferenceSerializationKind.VoidNullableOrNeverType:Mv(d,528)?e.TypeReferenceSerializationKind.BooleanType:Mv(d,296)?e.TypeReferenceSerializationKind.NumberLikeType:Mv(d,2112)?e.TypeReferenceSerializationKind.BigIntLikeType:Mv(d,402653316)?e.TypeReferenceSerializationKind.StringLikeType:vf(d)?e.TypeReferenceSerializationKind.ArrayLikeType:Mv(d,12288)?e.TypeReferenceSerializationKind.ESSymbolType:DE(d)?e.TypeReferenceSerializationKind.TypeWithCallSignature:rf(d)?e.TypeReferenceSerializationKind.ArrayLikeType:e.TypeReferenceSerializationKind.ObjectType}function TE(t,r,n,i,a){var o=e.getParseTreeNode(t,e.isVariableLikeOrAccessor);if(!o)return e.factory.createToken(129);var s=Ai(o),c=!s||133120&s.flags?we:gf(_o(s));return 8192&c.flags&&c.symbol===s&&(n|=1048576),a&&(c=Nf(c)),re.typeToTypeNode(c,r,1024|n,i)}function CE(t,r,n,i){var a=e.getParseTreeNode(t,e.isFunctionLike);if(!a)return e.factory.createToken(129);var o=Ic(a);return re.typeToTypeNode(Bc(o),r,1024|n,i)}function AE(t,r,n,i){var a=e.getParseTreeNode(t,e.isExpression);if(!a)return e.factory.createToken(129);var o=Hf(Zx(a));return re.typeToTypeNode(o,r,1024|n,i)}function NE(t){return ne.has(e.escapeLeadingUnderscores(t))}function PE(t,r){var n=Cn(t).resolvedSymbol;if(n)return n;var i=t;if(r){var a=t.parent;e.isDeclaration(a)&&t===a.name&&(i=Aa(a))}return Fn(i,t.escapedText,3257279,void 0,void 0,!0)}function IE(t){if(!e.isGeneratedIdentifier(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=PE(r);if(n)return Ri(n).valueDeclaration}}}function FE(t){return!!(e.isDeclarationReadonly(t)||e.isVariableDeclaration(t)&&e.isVarConst(t))&&_d(_o(Ai(t)))}function OE(t,r){return function(t,r,n){var i=1024&t.flags?re.symbolToExpression(t.symbol,111551,r,void 0,n):t===ze?e.factory.createTrue():t===je&&e.factory.createFalse();if(i)return i;var a=t.value;return"object"==typeof a?e.factory.createBigIntLiteral(a):"number"==typeof a?e.factory.createNumericLiteral(a):e.factory.createStringLiteral(a)}(_o(Ai(t)),t,r)}function RE(t){return t?(un(t),e.getSourceFileOfNode(t).localJsxFactory||ar):ar}function ME(t){if(t){var r=e.getSourceFileOfNode(t);if(r){if(r.localJsxFragmentFactory)return r.localJsxFragmentFactory;var n=r.pragmas.get("jsxfrag"),i=e.isArray(n)?n[0]:n;if(i)return r.localJsxFragmentFactory=e.parseIsolatedEntityName(i.arguments.factory,V),r.localJsxFragmentFactory}}if(J.jsxFragmentFactory)return e.parseIsolatedEntityName(J.jsxFragmentFactory,V)}function LE(t){var r=259===t.kind?e.tryCast(t.name,e.isStringLiteral):e.getExternalModuleName(t),n=_i(r,r,void 0);if(n)return e.getDeclarationOfKind(n,300)}function jE(t,r){if((o&r)!==r&&J.importHelpers){var n=e.getSourceFileOfNode(t);if(e.isEffectiveExternalModule(n,J)&&!(8388608&t.flags)){var i=function(t,r){u||(u=hi(t,e.externalHelpersModuleNameText,e.Diagnostics.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,r)||ke);return u}(n,t);if(i!==ke)for(var a=r&~o,s=1;s<=2097152;s<<=1)if(a&s){var c=BE(s);Nn(i.exports,e.escapeLeadingUnderscores(c),111551)||pn(t,e.Diagnostics.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,e.externalHelpersModuleNameText,c)}o|=r}}}function BE(t){switch(t){case 1:return"__extends";case 2:return"__assign";case 4:return"__rest";case 8:return"__decorate";case 16:return"__metadata";case 32:return"__param";case 64:return"__awaiter";case 128:return"__generator";case 256:return"__values";case 512:return"__read";case 1024:return"__spreadArray";case 2048:return"__await";case 4096:return"__asyncGenerator";case 8192:return"__asyncDelegator";case 16384:return"__asyncValues";case 32768:return"__exportStar";case 65536:return"__importStar";case 131072:return"__importDefault";case 262144:return"__makeTemplateObject";case 524288:return"__classPrivateFieldGet";case 1048576:return"__classPrivateFieldSet";case 2097152:return"__createBinding";default:return e.Debug.fail("Unrecognized helper")}}function zE(t){return function(t){if(!t.decorators)return!1;if(8===e.getSourceFileOfNode(t).scriptKind){if(e.isTokenInsideBuilder(t.decorators,J))return!1;var r=e.getEtsExtendDecoratorComponentNames(t.decorators,J);if(r.length){if(e.filterEtsExtendDecoratorComponentNamesByOptions(r,J).length)return!1;var n=e.getSourceFileOfNode(t),i=e.getSpanOfTokenAtPosition(n,t.pos);return Qr.add(e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.Decorator_name_must_be_one_of_ETS_Components)),!0}if(e.hasEtsStylesDecoratorNames(t.decorators,J))return!0}if(!e.nodeCanBeDecorated(t,t.parent,t.parent.parent,J))return 166!==t.kind||e.nodeIsPresent(t.body)?dS(t,e.Diagnostics.Decorators_are_not_valid_here):dS(t,e.Diagnostics.A_decorator_can_only_decorate_a_method_implementation_not_an_overload);if(168===t.kind||169===t.kind){var a=e.getAllAccessorDeclarations(t.parent.members,t);if(a.firstAccessor.decorators&&t===a.secondAccessor)return dS(t,e.Diagnostics.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}return!1}(t)||function(t){var r,n,i,a,o=function(t){return!!t.modifiers&&(function(t){switch(t.kind){case 168:case 169:case 167:case 164:case 163:case 166:case 165:case 172:case 259:case 264:case 263:case 270:case 269:case 209:case 210:case 161:return!1;default:if(260===t.parent.kind||300===t.parent.kind)return!1;switch(t.kind){case 253:return UE(t,130);case 254:case 176:return UE(t,126);case 256:case 234:case 257:return!0;case 258:return UE(t,85);default:e.Debug.fail()}}}(t)?dS(t,e.Diagnostics.Modifiers_cannot_appear_here):void 0)}(t);if(void 0!==o)return o;for(var s=0,c=0,l=t.modifiers;c<l.length;c++){var u=l[c];if(143!==u.kind){if(163===t.kind||165===t.kind)return fS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_type_member,e.tokenToString(u.kind));if(172===t.kind)return fS(u,e.Diagnostics._0_modifier_cannot_appear_on_an_index_signature,e.tokenToString(u.kind))}switch(u.kind){case 85:if(258!==t.kind)return fS(t,e.Diagnostics.A_class_member_cannot_have_the_0_keyword,e.tokenToString(85));break;case 123:case 122:case 121:var d=ya(e.modifierToFlag(u.kind));if(28&s)return fS(u,e.Diagnostics.Accessibility_modifier_already_seen);if(32&s)return fS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"static");if(64&s)return fS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"readonly");if(256&s)return fS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"async");if(260===t.parent.kind||300===t.parent.kind)return fS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_module_or_namespace_element,d);if(128&s)return 121===u.kind?fS(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,d,"abstract"):fS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"abstract");if(e.isPrivateIdentifierPropertyDeclaration(t))return fS(u,e.Diagnostics.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);s|=e.modifierToFlag(u.kind);break;case 124:if(32&s)return fS(u,e.Diagnostics._0_modifier_already_seen,"static");if(64&s)return fS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"static","readonly");if(256&s)return fS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"static","async");if(260===t.parent.kind||300===t.parent.kind)return fS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(161===t.kind)return fS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"static");if(128&s)return fS(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(e.isPrivateIdentifierPropertyDeclaration(t))return fS(u,e.Diagnostics._0_modifier_cannot_be_used_with_a_private_identifier,"static");s|=32,r=u;break;case 143:if(64&s)return fS(u,e.Diagnostics._0_modifier_already_seen,"readonly");if(164!==t.kind&&163!==t.kind&&172!==t.kind&&161!==t.kind)return fS(u,e.Diagnostics.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);s|=64,a=u;break;case 93:if(1&s)return fS(u,e.Diagnostics._0_modifier_already_seen,"export");if(2&s)return fS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","declare");if(128&s)return fS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","abstract");if(256&s)return fS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","async");if(e.isClassLike(t.parent))return fS(u,e.Diagnostics._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(161===t.kind)return fS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"export");s|=1;break;case 88:var p=300===t.parent.kind?t.parent:t.parent.parent;if(259===p.kind&&!e.isAmbientModule(p))return fS(u,e.Diagnostics.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);s|=512;break;case 134:if(2&s)return fS(u,e.Diagnostics._0_modifier_already_seen,"declare");if(256&s)return fS(u,e.Diagnostics._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(e.isClassLike(t.parent)&&!e.isPropertyDeclaration(t))return fS(u,e.Diagnostics._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(161===t.kind)return fS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"declare");if(8388608&t.parent.flags&&260===t.parent.kind)return fS(u,e.Diagnostics.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(e.isPrivateIdentifierPropertyDeclaration(t))return fS(u,e.Diagnostics._0_modifier_cannot_be_used_with_a_private_identifier,"declare");s|=2,n=u;break;case 126:if(128&s)return fS(u,e.Diagnostics._0_modifier_already_seen,"abstract");if(254!==t.kind&&176!==t.kind){if(166!==t.kind&&164!==t.kind&&168!==t.kind&&169!==t.kind)return fS(u,e.Diagnostics.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(254!==t.parent.kind||!e.hasSyntacticModifier(t.parent,128))return fS(u,e.Diagnostics.Abstract_methods_can_only_appear_within_an_abstract_class);if(32&s)return fS(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(8&s)return fS(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(256&s&&i)return fS(i,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"async","abstract")}if(e.isNamedDeclaration(t)&&79===t.name.kind)return fS(u,e.Diagnostics._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");s|=128;break;case 130:if(256&s)return fS(u,e.Diagnostics._0_modifier_already_seen,"async");if(2&s||8388608&t.parent.flags)return fS(u,e.Diagnostics._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(161===t.kind)return fS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"async");if(128&s)return fS(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");s|=256,i=u}}if(167===t.kind)return 32&s?fS(r,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):128&s?fS(r,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"abstract"):256&s?fS(i,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!!(64&s)&&fS(a,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"readonly");if((264===t.kind||263===t.kind)&&2&s)return fS(n,e.Diagnostics.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare");if(161===t.kind&&92&s&&e.isBindingPattern(t.name))return fS(t,e.Diagnostics.A_parameter_property_may_not_be_declared_using_a_binding_pattern);if(161===t.kind&&92&s&&t.dotDotDotToken)return fS(t,e.Diagnostics.A_parameter_property_cannot_be_declared_using_a_rest_parameter);if(256&s)return function(t,r){switch(t.kind){case 166:case 253:case 209:case 210:return!1}return fS(r,e.Diagnostics._0_modifier_cannot_be_used_here,"async")}(t,i);return!1}(t)}function UE(e,t){return e.modifiers.length>1||e.modifiers[0].kind!==t}function qE(t,r){return void 0===r&&(r=e.Diagnostics.Trailing_comma_not_allowed),!(!t||!t.hasTrailingComma)&&pS(t[0],t.end-1,1,r)}function JE(t,r){if(t&&0===t.length){var n=t.pos-1;return pS(r,n,e.skipTrivia(r.text,t.end)+1-n,e.Diagnostics.Type_parameter_list_cannot_be_empty)}return!1}function VE(t){if(V>=3){var r=t.body&&e.isBlock(t.body)&&e.findUseStrictPrologue(t.body.statements);if(r){var n=(o=t.parameters,e.filter(o,(function(t){return!!t.initializer||e.isBindingPattern(t.name)||e.isRestParameter(t)})));if(e.length(n)){e.forEach(n,(function(t){e.addRelatedInfo(pn(t,e.Diagnostics.This_parameter_is_not_allowed_with_use_strict_directive),e.createDiagnosticForNode(r,e.Diagnostics.use_strict_directive_used_here))}));var a=n.map((function(t,r){return 0===r?e.createDiagnosticForNode(t,e.Diagnostics.Non_simple_parameter_declared_here):e.createDiagnosticForNode(t,e.Diagnostics.and_here)}));return e.addRelatedInfo.apply(void 0,i([pn(r,e.Diagnostics.use_strict_directive_cannot_be_used_with_non_simple_parameter_list)],a)),!0}}}var o;return!1}function HE(t){var r=e.getSourceFileOfNode(t);return zE(t)||JE(t.typeParameters,r)||function(t){for(var r=!1,n=t.length,i=0;i<n;i++){var a=t[i];if(a.dotDotDotToken){if(i!==n-1)return fS(a.dotDotDotToken,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list);if(8388608&a.flags||qE(t,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),a.questionToken)return fS(a.questionToken,e.Diagnostics.A_rest_parameter_cannot_be_optional);if(a.initializer)return fS(a.name,e.Diagnostics.A_rest_parameter_cannot_have_an_initializer)}else if(Tc(a)){if(r=!0,a.questionToken&&a.initializer)return fS(a.name,e.Diagnostics.Parameter_cannot_have_question_mark_and_initializer)}else if(r&&!a.initializer)return fS(a.name,e.Diagnostics.A_required_parameter_cannot_follow_an_optional_parameter)}}(t.parameters)||function(t,r){if(!e.isArrowFunction(t))return!1;var n=t.equalsGreaterThanToken,i=e.getLineAndCharacterOfPosition(r,n.pos).line,a=e.getLineAndCharacterOfPosition(r,n.end).line;return i!==a&&fS(n,e.Diagnostics.Line_terminator_not_permitted_before_arrow)}(t,r)||e.isFunctionLikeDeclaration(t)&&VE(t)}function KE(t,r){return qE(r)||function(t,r){if(r&&0===r.length){var n=e.getSourceFileOfNode(t),i=r.pos-1;return pS(n,i,e.skipTrivia(n.text,r.end)+1-i,e.Diagnostics.Type_argument_list_cannot_be_empty)}return!1}(t,r)}function WE(t){return function(t){if(t)for(var r=0,n=t;r<n.length;r++){var i=n[r];if(224===i.kind)return pS(i,i.pos,0,e.Diagnostics.Argument_expression_expected)}return!1}(t)}function GE(t){var r=t.types;if(qE(r))return!0;if(r&&0===r.length){var n=e.tokenToString(t.token);return pS(t,r.pos,0,e.Diagnostics._0_list_cannot_be_empty,n)}return e.some(r,$E)}function $E(e){return KE(e,e.typeArguments)}function YE(t){if(159!==t.kind)return!1;var r=t;return 218===r.expression.kind&&27===r.expression.operatorToken.kind&&fS(r.expression,e.Diagnostics.A_comma_expression_is_not_allowed_in_a_computed_property_name)}function XE(t){if(t.asteriskToken){if(e.Debug.assert(253===t.kind||209===t.kind||166===t.kind),8388608&t.flags)return fS(t.asteriskToken,e.Diagnostics.Generators_are_not_allowed_in_an_ambient_context);if(!t.body)return fS(t.asteriskToken,e.Diagnostics.An_overload_signature_cannot_be_declared_as_a_generator)}}function QE(e,t){return!!e&&fS(e,t)}function ZE(e,t){return!!e&&fS(e,t)}function eS(t){if(gS(t))return!0;if(241===t.kind&&t.awaitModifier&&!(32768&t.flags)){var r=e.getSourceFileOfNode(t);if(e.isInTopLevelContext(t))uS(r)||(e.isEffectiveExternalModule(r,J)||Qr.add(e.createDiagnosticForNode(t.awaitModifier,e.Diagnostics.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module)),(H!==e.ModuleKind.ESNext&&H!==e.ModuleKind.System||V<4)&&Qr.add(e.createDiagnosticForNode(t.awaitModifier,e.Diagnostics.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher)));else if(!uS(r)){var n=e.createDiagnosticForNode(t.awaitModifier,e.Diagnostics.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),i=e.getContainingFunction(t);if(i&&167!==i.kind){e.Debug.assert(!(2&e.getFunctionFlags(i)),"Enclosing function should never be an async function.");var a=e.createDiagnosticForNode(i,e.Diagnostics.Did_you_mean_to_mark_this_function_as_async);e.addRelatedInfo(n,a)}return Qr.add(n),!0}return!1}if(252===t.initializer.kind){var o=t.initializer;if(!cS(o)){var s=o.declarations;if(!s.length)return!1;if(s.length>1){n=240===t.kind?e.Diagnostics.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:e.Diagnostics.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return dS(o.declarations[1],n)}var c=s[0];if(c.initializer){var n=240===t.kind?e.Diagnostics.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:e.Diagnostics.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return fS(c.name,n)}if(c.type)return fS(c,n=240===t.kind?e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:e.Diagnostics.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation)}}return!1}function tS(t){if(t.parameters.length===(168===t.kind?1:2))return e.getThisParameter(t)}function rS(t,r){if(function(t){return e.isDynamicName(t)&&!es(t)}(t))return fS(t,r)}function nS(t){if(HE(t))return!0;if(166===t.kind){if(201===t.parent.kind){if(t.modifiers&&(1!==t.modifiers.length||130!==e.first(t.modifiers).kind))return dS(t,e.Diagnostics.Modifiers_cannot_appear_here);if(QE(t.questionToken,e.Diagnostics.An_object_member_cannot_be_declared_optional))return!0;if(ZE(t.exclamationToken,e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(void 0===t.body)return pS(t,t.end-1,1,e.Diagnostics._0_expected,"{")}if(XE(t))return!0}if(e.isClassLike(t.parent)){if(8388608&t.flags)return rS(t.name,e.Diagnostics.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(166===t.kind&&!t.body)return rS(t.name,e.Diagnostics.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(256===t.parent.kind)return rS(t.name,e.Diagnostics.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(178===t.parent.kind)return rS(t.name,e.Diagnostics.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function iS(t){return e.isStringOrNumericLiteralLike(t)||216===t.kind&&40===t.operator&&8===t.operand.kind}function aS(t){var r,n=t.initializer;if(n){var i=!(iS(n)||function(t){if((e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)&&iS(t.argumentExpression))&&e.isEntityNameExpression(t.expression))return!!(1024&$v(t).flags)}(n)||110===n.kind||95===n.kind||(r=n,9===r.kind||216===r.kind&&40===r.operator&&9===r.operand.kind)),a=e.isDeclarationReadonly(t)||e.isVariableDeclaration(t)&&e.isVarConst(t);if(!a||t.type)return fS(n,e.Diagnostics.Initializers_are_not_allowed_in_ambient_contexts);if(i)return fS(n,e.Diagnostics.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference);if(!a||i)return fS(n,e.Diagnostics.Initializers_are_not_allowed_in_ambient_contexts)}}function oS(t){if(78===t.kind){if("__esModule"===e.idText(t))return function(t,r,n,i,a,o){if(!uS(e.getSourceFileOfNode(r)))return dn(t,r,n,i,a,o),!0;return!1}("noEmit",t,e.Diagnostics.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else for(var r=0,n=t.elements;r<n.length;r++){var i=n[r];if(!e.isOmittedExpression(i))return oS(i.name)}return!1}function sS(t){if(78===t.kind){if(119===t.originalKeywordKind)return fS(t,e.Diagnostics.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else for(var r=0,n=t.elements;r<n.length;r++){var i=n[r];e.isOmittedExpression(i)||sS(i.name)}return!1}function cS(t){var r=t.declarations;return!!qE(t.declarations)||!t.declarations.length&&pS(t,r.pos,r.end-r.pos,e.Diagnostics.Variable_declaration_list_cannot_be_empty)}function lS(e){switch(e.kind){case 236:case 237:case 238:case 245:case 239:case 240:case 241:return!1;case 247:return lS(e.parent)}return!0}function uS(e){return e.parseDiagnostics.length>0}function dS(t,r,n,i,a){var o=e.getSourceFileOfNode(t);if(!uS(o)){var s=e.getSpanOfTokenAtPosition(o,t.pos);return Qr.add(e.createFileDiagnostic(o,s.start,s.length,r,n,i,a)),!0}return!1}function pS(t,r,n,i,a,o,s){var c=e.getSourceFileOfNode(t);return!uS(c)&&(Qr.add(e.createFileDiagnostic(c,r,n,i,a,o,s)),!0)}function fS(t,r,n,i,a){return!uS(e.getSourceFileOfNode(t))&&(Qr.add(e.createDiagnosticForNode(t,r,n,i,a)),!0)}function mS(t){return 256!==t.kind&&257!==t.kind&&264!==t.kind&&263!==t.kind&&270!==t.kind&&269!==t.kind&&262!==t.kind&&!e.hasSyntacticModifier(t,515)&&dS(t,e.Diagnostics.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function gS(t){if(8388608&t.flags){if(!Cn(t).hasReportedStatementInAmbientContext&&(e.isFunctionLike(t.parent)||e.isAccessor(t.parent)))return Cn(t).hasReportedStatementInAmbientContext=dS(t,e.Diagnostics.An_implementation_cannot_be_declared_in_ambient_contexts);if(232===t.parent.kind||260===t.parent.kind||300===t.parent.kind){var r=Cn(t.parent);if(!r.hasReportedStatementInAmbientContext)return r.hasReportedStatementInAmbientContext=dS(t,e.Diagnostics.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function _S(t){if(32&t.numericLiteralFlags){var r=void 0;if(V>=1?r=e.Diagnostics.Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:e.isChildOfNodeWithKind(t,192)?r=e.Diagnostics.Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:e.isChildOfNodeWithKind(t,294)&&(r=e.Diagnostics.Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0),r){var n=e.isPrefixUnaryExpression(t.parent)&&40===t.parent.operator,i=(n?"-":"")+"0o"+t.text;return fS(n?t.parent:t,r,i)}}return function(t){if(16&t.numericLiteralFlags||t.text.length<=15||-1!==t.text.indexOf("."))return;var r=+e.getTextOfNode(t);if(r<=Math.pow(2,53)-1&&r+1>r)return;fn(!1,e.createDiagnosticForNode(t,e.Diagnostics.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}(t),!1}function hS(t,r,n,i){if(1048576&r.flags&&2621440&t.flags){var a=Hs(t);if(a){var o=jm(a,r);if(o)return Lp(r,e.map(o,(function(e){return[function(){return _o(e)},e.escapedName]})),n,void 0,i)}}}},function(e){e.JSX="JSX",e.IntrinsicElements="IntrinsicElements",e.ElementClass="ElementClass",e.ElementAttributesPropertyNameContainer="ElementAttributesProperty",e.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",e.Element="Element",e.IntrinsicAttributes="IntrinsicAttributes",e.IntrinsicClassAttributes="IntrinsicClassAttributes",e.LibraryManagedAttributes="LibraryManagedAttributes"}(N||(N={})),e.signatureHasRestParameter=U,e.signatureHasLiteralTypes=q}(d||(d={})),function(e){var t=e.or(e.isTypeNode,e.isTypeParameterDeclaration);function r(t,r,n,i){if(void 0===t||void 0===r)return t;var a,o=r(t);return o===t?t:void 0!==o?(a=e.isArray(o)?(i||c)(o):o,e.Debug.assertNode(a,n),a):void 0}function n(t,r,n,i,a){if(void 0===t||void 0===r)return t;var o,s,c=t.length;(void 0===i||i<0)&&(i=0),(void 0===a||a>c-i)&&(a=c-i);var l=-1,u=-1;(i>0||a<c)&&(o=[],s=t.hasTrailingComma&&i+a===c);for(var d=0;d<a;d++){var p=t[d+i],f=void 0!==p?r(p):void 0;if((void 0!==o||void 0===f||f!==p)&&(void 0===o&&(o=t.slice(0,d),s=t.hasTrailingComma,l=t.pos,u=t.end),f))if(e.isArray(f))for(var m=0,g=f;m<g.length;m++){var _=g[m];e.Debug.assertNode(_,n),o.push(_)}else e.Debug.assertNode(f,n),o.push(f)}if(o){var h=e.factory.createNodeArray(o,s);return e.setTextRangePosEnd(h,l,u),h}return t}function i(t,r,i,a,o,s){return void 0===s&&(s=n),i.startLexicalEnvironment(),t=s(t,r,e.isStatement,a),o&&(t=i.factory.ensureUseStrict(t)),e.factory.mergeLexicalEnvironment(t,i.endLexicalEnvironment())}function a(t,r,i,a){var s;return void 0===a&&(a=n),i.startLexicalEnvironment(),t&&(i.setLexicalEnvironmentFlags(1,!0),s=a(t,r,e.isParameterDeclaration),2&i.getLexicalEnvironmentFlags()&&e.getEmitScriptTarget(i.getCompilerOptions())>=2&&(s=function(t,r){for(var n,i=0;i<t.length;i++){var a=t[i],s=o(a,r);(n||s!==a)&&(n||(n=t.slice(0,i)),n[i]=s)}if(n)return e.setTextRange(r.factory.createNodeArray(n,t.hasTrailingComma),t);return t}(s,i)),i.setLexicalEnvironmentFlags(1,!1)),i.suspendLexicalEnvironment(),s}function o(t,r){return t.dotDotDotToken?t:e.isBindingPattern(t.name)?function(e,t){var r=t.factory;return t.addInitializationStatement(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(e.name,void 0,e.type,e.initializer?r.createConditionalExpression(r.createStrictEquality(r.getGeneratedNameForNode(e),r.createVoidZero()),void 0,e.initializer,void 0,r.getGeneratedNameForNode(e)):r.getGeneratedNameForNode(e))]))),r.updateParameterDeclaration(e,e.decorators,e.modifiers,e.dotDotDotToken,r.getGeneratedNameForNode(e),e.questionToken,e.type,void 0)}(t,r):t.initializer?function(t,r,n,i){var a=i.factory;return i.addInitializationStatement(a.createIfStatement(a.createTypeCheck(a.cloneNode(r),"undefined"),e.setEmitFlags(e.setTextRange(a.createBlock([a.createExpressionStatement(e.setEmitFlags(e.setTextRange(a.createAssignment(e.setEmitFlags(a.cloneNode(r),48),e.setEmitFlags(n,1584|e.getEmitFlags(n))),t),1536))]),t),1953))),a.updateParameterDeclaration(t,t.decorators,t.modifiers,t.dotDotDotToken,t.name,t.questionToken,t.type,void 0)}(t,t.name,t.initializer,r):t}function s(t,n,i,a){void 0===a&&(a=r),i.resumeLexicalEnvironment();var o=a(t,n,e.isConciseBody),s=i.endLexicalEnvironment();if(e.some(s)){if(!o)return i.factory.createBlock(s);var c=i.factory.converters.convertToFunctionBlock(o),l=e.factory.mergeLexicalEnvironment(c.statements,s);return i.factory.updateBlock(c,l)}return o}function c(t){return e.Debug.assert(t.length<=1,"Too many nodes written to output."),e.singleOrUndefined(t)}e.visitNode=r,e.visitNodes=n,e.visitLexicalEnvironment=i,e.visitParameterList=a,e.visitFunctionBody=s,e.visitEachChild=function(o,c,l,u,d,p){if(void 0===u&&(u=n),void 0===p&&(p=r),void 0!==o){var f=o.kind;if(f>0&&f<=157||188===f)return o;var m=l.factory;switch(f){case 78:return m.updateIdentifier(o,u(o.typeArguments,c,t));case 158:return m.updateQualifiedName(o,p(o.left,c,e.isEntityName),p(o.right,c,e.isIdentifier));case 159:return m.updateComputedPropertyName(o,p(o.expression,c,e.isExpression));case 160:return m.updateTypeParameterDeclaration(o,p(o.name,c,e.isIdentifier),p(o.constraint,c,e.isTypeNode),p(o.default,c,e.isTypeNode));case 161:return m.updateParameterDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.dotDotDotToken,d,e.isToken),p(o.name,c,e.isBindingName),p(o.questionToken,d,e.isToken),p(o.type,c,e.isTypeNode),p(o.initializer,c,e.isExpression));case 162:return m.updateDecorator(o,p(o.expression,c,e.isExpression));case 163:return m.updatePropertySignature(o,u(o.modifiers,c,e.isToken),p(o.name,c,e.isPropertyName),p(o.questionToken,d,e.isToken),p(o.type,c,e.isTypeNode));case 164:return m.updatePropertyDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),p(o.questionToken||o.exclamationToken,d,e.isToken),p(o.type,c,e.isTypeNode),p(o.initializer,c,e.isExpression));case 165:return m.updateMethodSignature(o,u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),p(o.questionToken,d,e.isToken),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 166:return m.updateMethodDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.asteriskToken,d,e.isToken),p(o.name,c,e.isPropertyName),p(o.questionToken,d,e.isToken),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 167:return m.updateConstructorDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),a(o.parameters,c,l,u),s(o.body,c,l,p));case 168:return m.updateGetAccessorDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 169:return m.updateSetAccessorDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),a(o.parameters,c,l,u),s(o.body,c,l,p));case 170:return m.updateCallSignature(o,u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 171:return m.updateConstructSignature(o,u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 172:return m.updateIndexSignature(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 173:return m.updateTypePredicateNode(o,p(o.assertsModifier,c),p(o.parameterName,c),p(o.type,c,e.isTypeNode));case 174:return m.updateTypeReferenceNode(o,p(o.typeName,c,e.isEntityName),u(o.typeArguments,c,e.isTypeNode));case 175:return m.updateFunctionTypeNode(o,u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 176:return m.updateConstructorTypeNode(o,u(o.modifiers,c,e.isModifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 177:return m.updateTypeQueryNode(o,p(o.exprName,c,e.isEntityName));case 178:return m.updateTypeLiteralNode(o,u(o.members,c,e.isTypeElement));case 179:return m.updateArrayTypeNode(o,p(o.elementType,c,e.isTypeNode));case 180:return m.updateTupleTypeNode(o,u(o.elements,c,e.isTypeNode));case 181:return m.updateOptionalTypeNode(o,p(o.type,c,e.isTypeNode));case 182:return m.updateRestTypeNode(o,p(o.type,c,e.isTypeNode));case 183:return m.updateUnionTypeNode(o,u(o.types,c,e.isTypeNode));case 184:return m.updateIntersectionTypeNode(o,u(o.types,c,e.isTypeNode));case 185:return m.updateConditionalTypeNode(o,p(o.checkType,c,e.isTypeNode),p(o.extendsType,c,e.isTypeNode),p(o.trueType,c,e.isTypeNode),p(o.falseType,c,e.isTypeNode));case 186:return m.updateInferTypeNode(o,p(o.typeParameter,c,e.isTypeParameterDeclaration));case 196:return m.updateImportTypeNode(o,p(o.argument,c,e.isTypeNode),p(o.qualifier,c,e.isEntityName),n(o.typeArguments,c,e.isTypeNode),o.isTypeOf);case 193:return m.updateNamedTupleMember(o,r(o.dotDotDotToken,c,e.isToken),r(o.name,c,e.isIdentifier),r(o.questionToken,c,e.isToken),r(o.type,c,e.isTypeNode));case 187:return m.updateParenthesizedType(o,p(o.type,c,e.isTypeNode));case 189:return m.updateTypeOperatorNode(o,p(o.type,c,e.isTypeNode));case 190:return m.updateIndexedAccessTypeNode(o,p(o.objectType,c,e.isTypeNode),p(o.indexType,c,e.isTypeNode));case 191:return m.updateMappedTypeNode(o,p(o.readonlyToken,d,e.isToken),p(o.typeParameter,c,e.isTypeParameterDeclaration),p(o.nameType,c,e.isTypeNode),p(o.questionToken,d,e.isToken),p(o.type,c,e.isTypeNode));case 192:return m.updateLiteralTypeNode(o,p(o.literal,c,e.isExpression));case 194:return m.updateTemplateLiteralType(o,p(o.head,c,e.isTemplateHead),u(o.templateSpans,c,e.isTemplateLiteralTypeSpan));case 195:return m.updateTemplateLiteralTypeSpan(o,p(o.type,c,e.isTypeNode),p(o.literal,c,e.isTemplateMiddleOrTemplateTail));case 197:return m.updateObjectBindingPattern(o,u(o.elements,c,e.isBindingElement));case 198:return m.updateArrayBindingPattern(o,u(o.elements,c,e.isArrayBindingElement));case 199:return m.updateBindingElement(o,p(o.dotDotDotToken,d,e.isToken),p(o.propertyName,c,e.isPropertyName),p(o.name,c,e.isBindingName),p(o.initializer,c,e.isExpression));case 200:return m.updateArrayLiteralExpression(o,u(o.elements,c,e.isExpression));case 201:return m.updateObjectLiteralExpression(o,u(o.properties,c,e.isObjectLiteralElementLike));case 202:return 32&o.flags?m.updatePropertyAccessChain(o,p(o.expression,c,e.isExpression),p(o.questionDotToken,d,e.isToken),p(o.name,c,e.isIdentifier)):m.updatePropertyAccessExpression(o,p(o.expression,c,e.isExpression),p(o.name,c,e.isIdentifierOrPrivateIdentifier));case 203:return 32&o.flags?m.updateElementAccessChain(o,p(o.expression,c,e.isExpression),p(o.questionDotToken,d,e.isToken),p(o.argumentExpression,c,e.isExpression)):m.updateElementAccessExpression(o,p(o.expression,c,e.isExpression),p(o.argumentExpression,c,e.isExpression));case 204:return 32&o.flags?m.updateCallChain(o,p(o.expression,c,e.isExpression),p(o.questionDotToken,d,e.isToken),u(o.typeArguments,c,e.isTypeNode),u(o.arguments,c,e.isExpression)):m.updateCallExpression(o,p(o.expression,c,e.isExpression),u(o.typeArguments,c,e.isTypeNode),u(o.arguments,c,e.isExpression));case 205:return m.updateNewExpression(o,p(o.expression,c,e.isExpression),u(o.typeArguments,c,e.isTypeNode),u(o.arguments,c,e.isExpression));case 206:return m.updateTaggedTemplateExpression(o,p(o.tag,c,e.isExpression),n(o.typeArguments,c,e.isExpression),p(o.template,c,e.isTemplateLiteral));case 207:return m.updateTypeAssertion(o,p(o.type,c,e.isTypeNode),p(o.expression,c,e.isExpression));case 208:return m.updateParenthesizedExpression(o,p(o.expression,c,e.isExpression));case 209:return m.updateFunctionExpression(o,u(o.modifiers,c,e.isModifier),p(o.asteriskToken,d,e.isToken),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 210:return m.updateArrowFunction(o,u(o.modifiers,c,e.isModifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),p(o.equalsGreaterThanToken,d,e.isToken),s(o.body,c,l,p));case 212:return m.updateDeleteExpression(o,p(o.expression,c,e.isExpression));case 213:return m.updateTypeOfExpression(o,p(o.expression,c,e.isExpression));case 214:return m.updateVoidExpression(o,p(o.expression,c,e.isExpression));case 215:return m.updateAwaitExpression(o,p(o.expression,c,e.isExpression));case 216:return m.updatePrefixUnaryExpression(o,p(o.operand,c,e.isExpression));case 217:return m.updatePostfixUnaryExpression(o,p(o.operand,c,e.isExpression));case 218:return m.updateBinaryExpression(o,p(o.left,c,e.isExpression),p(o.operatorToken,d,e.isToken),p(o.right,c,e.isExpression));case 219:return m.updateConditionalExpression(o,p(o.condition,c,e.isExpression),p(o.questionToken,d,e.isToken),p(o.whenTrue,c,e.isExpression),p(o.colonToken,d,e.isToken),p(o.whenFalse,c,e.isExpression));case 220:return m.updateTemplateExpression(o,p(o.head,c,e.isTemplateHead),u(o.templateSpans,c,e.isTemplateSpan));case 221:return m.updateYieldExpression(o,p(o.asteriskToken,d,e.isToken),p(o.expression,c,e.isExpression));case 222:return m.updateSpreadElement(o,p(o.expression,c,e.isExpression));case 223:return m.updateClassExpression(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isClassElement));case 225:return m.updateExpressionWithTypeArguments(o,p(o.expression,c,e.isExpression),u(o.typeArguments,c,e.isTypeNode));case 226:return m.updateAsExpression(o,p(o.expression,c,e.isExpression),p(o.type,c,e.isTypeNode));case 227:return 32&o.flags?m.updateNonNullChain(o,p(o.expression,c,e.isExpression)):m.updateNonNullExpression(o,p(o.expression,c,e.isExpression));case 228:return m.updateMetaProperty(o,p(o.name,c,e.isIdentifier));case 230:return m.updateTemplateSpan(o,p(o.expression,c,e.isExpression),p(o.literal,c,e.isTemplateMiddleOrTemplateTail));case 232:return m.updateBlock(o,u(o.statements,c,e.isStatement));case 234:return m.updateVariableStatement(o,u(o.modifiers,c,e.isModifier),p(o.declarationList,c,e.isVariableDeclarationList));case 235:return m.updateExpressionStatement(o,p(o.expression,c,e.isExpression));case 236:return m.updateIfStatement(o,p(o.expression,c,e.isExpression),p(o.thenStatement,c,e.isStatement,m.liftToBlock),p(o.elseStatement,c,e.isStatement,m.liftToBlock));case 237:return m.updateDoStatement(o,p(o.statement,c,e.isStatement,m.liftToBlock),p(o.expression,c,e.isExpression));case 238:return m.updateWhileStatement(o,p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 239:return m.updateForStatement(o,p(o.initializer,c,e.isForInitializer),p(o.condition,c,e.isExpression),p(o.incrementor,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 240:return m.updateForInStatement(o,p(o.initializer,c,e.isForInitializer),p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 241:return m.updateForOfStatement(o,p(o.awaitModifier,d,e.isToken),p(o.initializer,c,e.isForInitializer),p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 242:return m.updateContinueStatement(o,p(o.label,c,e.isIdentifier));case 243:return m.updateBreakStatement(o,p(o.label,c,e.isIdentifier));case 244:return m.updateReturnStatement(o,p(o.expression,c,e.isExpression));case 245:return m.updateWithStatement(o,p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 246:return m.updateSwitchStatement(o,p(o.expression,c,e.isExpression),p(o.caseBlock,c,e.isCaseBlock));case 247:return m.updateLabeledStatement(o,p(o.label,c,e.isIdentifier),p(o.statement,c,e.isStatement,m.liftToBlock));case 248:return m.updateThrowStatement(o,p(o.expression,c,e.isExpression));case 249:return m.updateTryStatement(o,p(o.tryBlock,c,e.isBlock),p(o.catchClause,c,e.isCatchClause),p(o.finallyBlock,c,e.isBlock));case 251:return m.updateVariableDeclaration(o,p(o.name,c,e.isBindingName),p(o.exclamationToken,d,e.isToken),p(o.type,c,e.isTypeNode),p(o.initializer,c,e.isExpression));case 252:return m.updateVariableDeclarationList(o,u(o.declarations,c,e.isVariableDeclaration));case 253:return m.updateFunctionDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.asteriskToken,d,e.isToken),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 254:return m.updateClassDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isClassElement));case 255:return m.updateStructDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isClassElement));case 256:return m.updateInterfaceDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isTypeElement));case 257:return m.updateTypeAliasDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),p(o.type,c,e.isTypeNode));case 258:return m.updateEnumDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.members,c,e.isEnumMember));case 259:return m.updateModuleDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),p(o.body,c,e.isModuleBody));case 260:return m.updateModuleBlock(o,u(o.statements,c,e.isStatement));case 261:return m.updateCaseBlock(o,u(o.clauses,c,e.isCaseOrDefaultClause));case 262:return m.updateNamespaceExportDeclaration(o,p(o.name,c,e.isIdentifier));case 263:return m.updateImportEqualsDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),o.isTypeOnly,p(o.name,c,e.isIdentifier),p(o.moduleReference,c,e.isModuleReference));case 264:return m.updateImportDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.importClause,c,e.isImportClause),p(o.moduleSpecifier,c,e.isExpression));case 265:return m.updateImportClause(o,o.isTypeOnly,p(o.name,c,e.isIdentifier),p(o.namedBindings,c,e.isNamedImportBindings));case 266:return m.updateNamespaceImport(o,p(o.name,c,e.isIdentifier));case 272:return m.updateNamespaceExport(o,p(o.name,c,e.isIdentifier));case 267:return m.updateNamedImports(o,u(o.elements,c,e.isImportSpecifier));case 268:return m.updateImportSpecifier(o,p(o.propertyName,c,e.isIdentifier),p(o.name,c,e.isIdentifier));case 269:return m.updateExportAssignment(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.expression,c,e.isExpression));case 270:return m.updateExportDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),o.isTypeOnly,p(o.exportClause,c,e.isNamedExportBindings),p(o.moduleSpecifier,c,e.isExpression));case 271:return m.updateNamedExports(o,u(o.elements,c,e.isExportSpecifier));case 273:return m.updateExportSpecifier(o,p(o.propertyName,c,e.isIdentifier),p(o.name,c,e.isIdentifier));case 275:return m.updateExternalModuleReference(o,p(o.expression,c,e.isExpression));case 276:return m.updateJsxElement(o,p(o.openingElement,c,e.isJsxOpeningElement),u(o.children,c,e.isJsxChild),p(o.closingElement,c,e.isJsxClosingElement));case 277:return m.updateJsxSelfClosingElement(o,p(o.tagName,c,e.isJsxTagNameExpression),u(o.typeArguments,c,e.isTypeNode),p(o.attributes,c,e.isJsxAttributes));case 278:return m.updateJsxOpeningElement(o,p(o.tagName,c,e.isJsxTagNameExpression),u(o.typeArguments,c,e.isTypeNode),p(o.attributes,c,e.isJsxAttributes));case 279:return m.updateJsxClosingElement(o,p(o.tagName,c,e.isJsxTagNameExpression));case 280:return m.updateJsxFragment(o,p(o.openingFragment,c,e.isJsxOpeningFragment),u(o.children,c,e.isJsxChild),p(o.closingFragment,c,e.isJsxClosingFragment));case 283:return m.updateJsxAttribute(o,p(o.name,c,e.isIdentifier),p(o.initializer,c,e.isStringLiteralOrJsxExpression));case 284:return m.updateJsxAttributes(o,u(o.properties,c,e.isJsxAttributeLike));case 285:return m.updateJsxSpreadAttribute(o,p(o.expression,c,e.isExpression));case 286:return m.updateJsxExpression(o,p(o.expression,c,e.isExpression));case 287:return m.updateCaseClause(o,p(o.expression,c,e.isExpression),u(o.statements,c,e.isStatement));case 288:return m.updateDefaultClause(o,u(o.statements,c,e.isStatement));case 289:return m.updateHeritageClause(o,u(o.types,c,e.isExpressionWithTypeArguments));case 290:return m.updateCatchClause(o,p(o.variableDeclaration,c,e.isVariableDeclaration),p(o.block,c,e.isBlock));case 291:return m.updatePropertyAssignment(o,p(o.name,c,e.isPropertyName),p(o.initializer,c,e.isExpression));case 292:return m.updateShorthandPropertyAssignment(o,p(o.name,c,e.isIdentifier),p(o.objectAssignmentInitializer,c,e.isExpression));case 293:return m.updateSpreadAssignment(o,p(o.expression,c,e.isExpression));case 294:return m.updateEnumMember(o,p(o.name,c,e.isPropertyName),p(o.initializer,c,e.isExpression));case 300:return m.updateSourceFile(o,i(o.statements,c,l));case 339:return m.updatePartiallyEmittedExpression(o,p(o.expression,c,e.isExpression));case 340:return m.updateCommaListExpression(o,u(o.elements,c,e.isExpression));default:return o}}}}(d||(d={})),function(e){e.createSourceMapGenerator=function(t,r,n,i,o){var c,l,u=o.extendedDiagnostics?e.performance.createTimer("Source Map","beforeSourcemap","afterSourcemap"):e.performance.nullTimer,d=u.enter,p=u.exit,f=[],m=[],g=new e.Map,_=[],h="",y=0,v=0,b=0,k=0,x=0,E=0,S=!1,D=0,w=0,T=0,C=0,A=0,N=0,P=!1,I=!1,F=!1;return{getSources:function(){return f},addSource:O,setSourceContent:R,addName:M,addMapping:L,appendSourceMap:function(t,r,n,i,o,s){e.Debug.assert(t>=D,"generatedLine cannot backtrack"),e.Debug.assert(r>=0,"generatedCharacter cannot be negative"),d();for(var c,l=[],u=a(n.mappings),f=u.next();!f.done;f=u.next()){var m=f.value;if(s&&(m.generatedLine>s.line||m.generatedLine===s.line&&m.generatedCharacter>s.character))break;if(!o||!(m.generatedLine<o.line||o.line===m.generatedLine&&m.generatedCharacter<o.character)){var g=void 0,_=void 0,h=void 0,y=void 0;if(void 0!==m.sourceIndex){if(void 0===(g=l[m.sourceIndex])){var v=n.sources[m.sourceIndex],b=n.sourceRoot?e.combinePaths(n.sourceRoot,v):v,k=e.combinePaths(e.getDirectoryPath(i),b);l[m.sourceIndex]=g=O(k),n.sourcesContent&&"string"==typeof n.sourcesContent[m.sourceIndex]&&R(g,n.sourcesContent[m.sourceIndex])}_=m.sourceLine,h=m.sourceCharacter,n.names&&void 0!==m.nameIndex&&(c||(c=[]),void 0===(y=c[m.nameIndex])&&(c[m.nameIndex]=y=M(n.names[m.nameIndex])))}var x=m.generatedLine-(o?o.line:0),E=x+t,S=o&&o.line===m.generatedLine?m.generatedCharacter-o.character:m.generatedCharacter;L(E,0===x?S+r:S,g,_,h,y)}}p()},toJSON:B,toString:function(){return JSON.stringify(B())}};function O(r){d();var n=e.getRelativePathToDirectoryOrUrl(i,r,t.getCurrentDirectory(),t.getCanonicalFileName,!0),a=g.get(n);return void 0===a&&(a=m.length,m.push(n),f.push(r),g.set(n,a)),p(),a}function R(e,t){if(d(),null!==t){for(c||(c=[]);c.length<e;)c.push(null);c[e]=t}p()}function M(t){d(),l||(l=new e.Map);var r=l.get(t);return void 0===r&&(r=_.length,_.push(t),l.set(t,r)),p(),r}function L(t,r,n,i,a,o){e.Debug.assert(t>=D,"generatedLine cannot backtrack"),e.Debug.assert(r>=0,"generatedCharacter cannot be negative"),e.Debug.assert(void 0===n||n>=0,"sourceIndex cannot be negative"),e.Debug.assert(void 0===i||i>=0,"sourceLine cannot be negative"),e.Debug.assert(void 0===a||a>=0,"sourceCharacter cannot be negative"),d(),(function(e,t){return!P||D!==e||w!==t}(t,r)||function(e,t,r){return void 0!==e&&void 0!==t&&void 0!==r&&T===e&&(C>t||C===t&&A>r)}(n,i,a))&&(j(),D=t,w=r,I=!1,F=!1,P=!0),void 0!==n&&void 0!==i&&void 0!==a&&(T=n,C=i,A=a,I=!0,void 0!==o&&(N=o,F=!0)),p()}function j(){if(P&&(!S||y!==D||v!==w||b!==T||k!==C||x!==A||E!==N)){if(d(),y<D)do{h+=";",y++,v=0}while(y<D);else e.Debug.assertEqual(y,D,"generatedLine cannot backtrack"),S&&(h+=",");h+=s(w-v),v=w,I&&(h+=s(T-b),b=T,h+=s(C-k),k=C,h+=s(A-x),x=A,F&&(h+=s(N-E),E=N)),S=!0,p()}}function B(){return j(),{version:3,file:r,sourceRoot:n,sources:m,names:_,mappings:h,sourcesContent:c}}};var t=/^\/\/[@#] source[M]appingURL=(.+)\s*$/,r=/^\s*(\/\/[@#] .*)?$/;function n(e){return"string"==typeof e||null===e}function i(t){return null!==t&&"object"==typeof t&&3===t.version&&"string"==typeof t.file&&"string"==typeof t.mappings&&e.isArray(t.sources)&&e.every(t.sources,e.isString)&&(void 0===t.sourceRoot||null===t.sourceRoot||"string"==typeof t.sourceRoot)&&(void 0===t.sourcesContent||null===t.sourcesContent||e.isArray(t.sourcesContent)&&e.every(t.sourcesContent,n))&&(void 0===t.names||null===t.names||e.isArray(t.names)&&e.every(t.names,e.isString))}function a(e){var t,r=!1,n=0,i=0,a=0,o=0,s=0,c=0,l=0;return{get pos(){return n},get error(){return t},get state(){return u(!0,!0)},next:function(){for(;!r&&n<e.length;){var t=e.charCodeAt(n);if(59!==t){if(44!==t){var p=!1,h=!1;if(a+=_(),m())return d();if(a<0)return f("Invalid generatedCharacter found");if(!g()){if(p=!0,o+=_(),m())return d();if(o<0)return f("Invalid sourceIndex found");if(g())return f("Unsupported Format: No entries after sourceIndex");if(s+=_(),m())return d();if(s<0)return f("Invalid sourceLine found");if(g())return f("Unsupported Format: No entries after sourceLine");if(c+=_(),m())return d();if(c<0)return f("Invalid sourceCharacter found");if(!g()){if(h=!0,l+=_(),m())return d();if(l<0)return f("Invalid nameIndex found");if(!g())return f("Unsupported Error Format: Entries after nameIndex")}}return{value:u(p,h),done:r}}n++}else i++,a=0,n++}return d()}};function u(e,t){return{generatedLine:i,generatedCharacter:a,sourceIndex:e?o:void 0,sourceLine:e?s:void 0,sourceCharacter:e?c:void 0,nameIndex:t?l:void 0}}function d(){return r=!0,{value:void 0,done:!0}}function p(e){void 0===t&&(t=e)}function f(e){return p(e),d()}function m(){return void 0!==t}function g(){return n===e.length||44===e.charCodeAt(n)||59===e.charCodeAt(n)}function _(){for(var t,r=!0,i=0,a=0;r;n++){if(n>=e.length)return p("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;var o=(t=e.charCodeAt(n))>=65&&t<=90?t-65:t>=97&&t<=122?t-97+26:t>=48&&t<=57?t-48+52:43===t?62:47===t?63:-1;if(-1===o)return p("Invalid character in VLQ"),-1;r=!!(32&o),a|=(31&o)<<i,i+=5}return 1&a?a=-(a>>=1):a>>=1,a}}function o(e){return void 0!==e.sourceIndex&&void 0!==e.sourceLine&&void 0!==e.sourceCharacter}function s(t){t<0?t=1+(-t<<1):t<<=1;var r,n="";do{var i=31&t;(t>>=5)>0&&(i|=32),n+=String.fromCharCode((r=i)>=0&&r<26?65+r:r>=26&&r<52?97+r-26:r>=52&&r<62?48+r-52:62===r?43:63===r?47:e.Debug.fail(r+": not a base64 value"))}while(t>0);return n}function c(e){return void 0!==e.sourceIndex&&void 0!==e.sourcePosition}function l(e,t){return e.generatedPosition===t.generatedPosition&&e.sourceIndex===t.sourceIndex&&e.sourcePosition===t.sourcePosition}function u(t,r){return e.Debug.assert(t.sourceIndex===r.sourceIndex),e.compareValues(t.sourcePosition,r.sourcePosition)}function d(t,r){return e.compareValues(t.generatedPosition,r.generatedPosition)}function p(e){return e.sourcePosition}function f(e){return e.generatedPosition}e.getLineInfo=function(e,t){return{getLineCount:function(){return t.length},getLineText:function(r){return e.substring(t[r],t[r+1])}}},e.tryGetSourceMappingURL=function(e){for(var n=e.getLineCount()-1;n>=0;n--){var i=e.getLineText(n),a=t.exec(i);if(a)return a[1];if(!i.match(r))break}},e.isRawSourceMap=i,e.tryParseRawSourceMap=function(e){try{var t=JSON.parse(e);if(i(t))return t}catch(e){}},e.decodeMappings=a,e.sameMapping=function(e,t){return e===t||e.generatedLine===t.generatedLine&&e.generatedCharacter===t.generatedCharacter&&e.sourceIndex===t.sourceIndex&&e.sourceLine===t.sourceLine&&e.sourceCharacter===t.sourceCharacter&&e.nameIndex===t.nameIndex},e.isSourceMapping=o,e.createDocumentPositionMapper=function(t,r,n){var i,s,m,g=e.getDirectoryPath(n),_=r.sourceRoot?e.getNormalizedAbsolutePath(r.sourceRoot,g):g,h=e.getNormalizedAbsolutePath(r.file,g),y=t.getSourceFileLike(h),v=r.sources.map((function(t){return e.getNormalizedAbsolutePath(t,_)})),b=new e.Map(v.map((function(e,r){return[t.getCanonicalFileName(e),r]})));return{getSourcePosition:function(t){var r=S();if(!e.some(r))return t;var n=e.binarySearchKey(r,t.pos,f,e.compareValues);n<0&&(n=~n);var i=r[n];if(void 0===i||!c(i))return t;return{fileName:v[i.sourceIndex],pos:i.sourcePosition}},getGeneratedPosition:function(r){var n=b.get(t.getCanonicalFileName(r.fileName));if(void 0===n)return r;var i=E(n);if(!e.some(i))return r;var a=e.binarySearchKey(i,r.pos,p,e.compareValues);a<0&&(a=~a);var o=i[a];if(void 0===o||o.sourceIndex!==n)return r;return{fileName:h,pos:o.generatedPosition}}};function k(n){var i,a,s=void 0!==y?e.getPositionOfLineAndCharacter(y,n.generatedLine,n.generatedCharacter,!0):-1;if(o(n)){var c=t.getSourceFileLike(v[n.sourceIndex]);i=r.sources[n.sourceIndex],a=void 0!==c?e.getPositionOfLineAndCharacter(c,n.sourceLine,n.sourceCharacter,!0):-1}return{generatedPosition:s,source:i,sourceIndex:n.sourceIndex,sourcePosition:a,nameIndex:n.nameIndex}}function x(){if(void 0===i){var n=a(r.mappings),o=e.arrayFrom(n,k);void 0!==n.error?(t.log&&t.log("Encountered error while decoding sourcemap: "+n.error),i=e.emptyArray):i=o}return i}function E(t){if(void 0===m){for(var r=[],n=0,i=x();n<i.length;n++){var a=i[n];if(c(a)){var o=r[a.sourceIndex];o||(r[a.sourceIndex]=o=[]),o.push(a)}}m=r.map((function(t){return e.sortAndDeduplicate(t,u,l)}))}return m[t]}function S(){if(void 0===s){for(var t=[],r=0,n=x();r<n.length;r++){var i=n[r];t.push(i)}s=e.sortAndDeduplicate(t,d,l)}return s}},e.identitySourceMapConsumer={getSourcePosition:e.identity,getGeneratedPosition:e.identity}}(d||(d={})),function(e){function t(t){return(t=e.getOriginalNode(t))?e.getNodeId(t):0}function r(e){return void 0!==e.propertyName&&"default"===e.propertyName.escapedText}function n(t){if(e.getNamespaceDeclarationNode(t))return!0;var n=t.importClause&&t.importClause.namedBindings;if(!n)return!1;if(!e.isNamedImports(n))return!1;for(var i=0,a=0,o=n.elements;a<o.length;a++){r(o[a])&&i++}return i>0&&i!==n.elements.length||!!(n.elements.length-i)&&e.isDefaultImport(t)}function i(t){return!n(t)&&(e.isDefaultImport(t)||!!t.importClause&&e.isNamedImports(t.importClause.namedBindings)&&function(t){return!!t&&!!e.isNamedImports(t)&&e.some(t.elements,r)}(t.importClause.namedBindings))}function a(t,r,n){if(e.isBindingPattern(t.name))for(var i=0,o=t.name.elements;i<o.length;i++){var s=o[i];e.isOmittedExpression(s)||(n=a(s,r,n))}else if(!e.isGeneratedIdentifier(t.name)){var c=e.idText(t.name);r.get(c)||(r.set(c,!0),n=e.append(n,t.name))}return n}function o(e,t,r){var n=e[t];return n?n.push(r):e[t]=n=[r],n}function s(t){return e.isStringLiteralLike(t)||8===t.kind||e.isKeyword(t.kind)||e.isIdentifier(t)}e.getOriginalNodeId=t,e.chainBundle=function(t,r){return function(n){return 300===n.kind?r(n):function(n){return t.factory.createBundle(e.map(n.sourceFiles,r),n.prepends)}(n)}},e.getExportNeedsImportStarHelper=function(t){return!!e.getNamespaceDeclarationNode(t)},e.getImportNeedsImportStarHelper=n,e.getImportNeedsImportDefaultHelper=i,e.collectExternalModuleInfo=function(r,s,c,l){for(var u,d,p=[],f=e.createMultiMap(),m=[],g=new e.Map,_=!1,h=!1,y=!1,v=!1,b=0,k=s.statements;b<k.length;b++){var x=k[b];switch(x.kind){case 264:p.push(x),!y&&n(x)&&(y=!0),!v&&i(x)&&(v=!0);break;case 263:275===x.moduleReference.kind&&p.push(x);break;case 270:if(x.moduleSpecifier)if(x.exportClause)if(p.push(x),e.isNamedExports(x.exportClause))C(x);else{var E=x.exportClause.name;g.get(e.idText(E))||(o(m,t(x),E),g.set(e.idText(E),!0),u=e.append(u,E)),y=!0}else p.push(x),h=!0;else C(x);break;case 269:x.isExportEquals&&!d&&(d=x);break;case 234:if(e.hasSyntacticModifier(x,1))for(var S=0,D=x.declarationList.declarations;S<D.length;S++){var w=D[S];u=a(w,g,u)}break;case 253:if(e.hasSyntacticModifier(x,1))if(e.hasSyntacticModifier(x,512))_||(o(m,t(x),r.factory.getDeclarationName(x)),_=!0);else{E=x.name;g.get(e.idText(E))||(o(m,t(x),E),g.set(e.idText(E),!0),u=e.append(u,E))}break;case 254:if(e.hasSyntacticModifier(x,1))if(e.hasSyntacticModifier(x,512))_||(o(m,t(x),r.factory.getDeclarationName(x)),_=!0);else(E=x.name)&&!g.get(e.idText(E))&&(o(m,t(x),E),g.set(e.idText(E),!0),u=e.append(u,E))}}var T=e.createExternalHelpersImportDeclarationIfNeeded(r.factory,r.getEmitHelperFactory(),s,l,h,y,v);return T&&p.unshift(T),{externalImports:p,exportSpecifiers:f,exportEquals:d,hasExportStarsToExportValues:h,exportedBindings:m,exportedNames:u,externalHelpersImportDeclaration:T};function C(r){for(var n=0,i=e.cast(r.exportClause,e.isNamedExports).elements;n<i.length;n++){var a=i[n];if(!g.get(e.idText(a.name))){var s=a.propertyName||a.name;r.moduleSpecifier||f.add(e.idText(s),a);var l=c.getReferencedImportDeclaration(s)||c.getReferencedValueDeclaration(s);l&&o(m,t(l),a.name),g.set(e.idText(a.name),!0),u=e.append(u,a.name)}}}},e.isSimpleCopiableExpression=s,e.isSimpleInlineableExpression=function(t){return!e.isIdentifier(t)&&s(t)||e.isWellKnownSymbolSyntactically(t)},e.isCompoundAssignment=function(e){return e>=63&&e<=77},e.getNonAssignmentOperatorForCompoundAssignment=function(e){switch(e){case 63:return 39;case 64:return 40;case 65:return 41;case 66:return 42;case 67:return 43;case 68:return 44;case 69:return 47;case 70:return 48;case 71:return 49;case 72:return 50;case 73:return 51;case 77:return 52;case 74:return 56;case 75:return 55;case 76:return 60}},e.addPrologueDirectivesAndInitialSuperCall=function(t,r,n,i){if(r.body){var a=r.body.statements,o=t.copyPrologue(a,n,!1,i);if(o===a.length)return o;var s=e.findIndex(a,(function(t){return e.isExpressionStatement(t)&&e.isSuperCall(t.expression)}),o);if(s>-1){for(var c=o;c<=s;c++)n.push(e.visitNode(a[c],i,e.isStatement));return s+1}return o}return 0},e.getProperties=function(t,r,n){return e.filter(t.members,(function(t){return function(t,r,n){return e.isPropertyDeclaration(t)&&(!!t.initializer||!r)&&e.hasStaticModifier(t)===n}(t,r,n)}))},e.isInitializedProperty=function(e){return 164===e.kind&&void 0!==e.initializer}}(d||(d={})),function(e){function t(r,n){var i=e.getTargetOfBindingOrAssignmentElement(r);return e.isBindingOrAssignmentPattern(i)?function(r,n){for(var i=e.getElementsOfBindingOrAssignmentPattern(r),a=0,o=i;a<o.length;a++){if(t(o[a],n))return!0}return!1}(i,n):!!e.isIdentifier(i)&&i.escapedText===n}function r(t){var n=e.tryGetPropertyNameOfBindingOrAssignmentElement(t);if(n&&e.isComputedPropertyName(n)&&!e.isLiteralExpression(n.expression))return!0;var i,a=e.getTargetOfBindingOrAssignmentElement(t);return!!a&&e.isBindingOrAssignmentPattern(a)&&(i=a,!!e.forEach(e.getElementsOfBindingOrAssignmentPattern(i),r))}function n(t,r,s,c,l){var u=e.getTargetOfBindingOrAssignmentElement(r);if(!l){var d=e.visitNode(e.getInitializerOfBindingOrAssignmentElement(r),t.visitor,e.isExpression);d?s?(s=function(e,t,r,n){return t=o(e,t,!0,n),e.context.factory.createConditionalExpression(e.context.factory.createTypeCheck(t,"undefined"),void 0,r,void 0,t)}(t,s,d,c),!e.isSimpleInlineableExpression(d)&&e.isBindingOrAssignmentPattern(u)&&(s=o(t,s,!0,c))):s=d:s||(s=t.context.factory.createVoidZero())}e.isObjectBindingOrAssignmentPattern(u)?function(t,r,i,s,c){var l,u,d=e.getElementsOfBindingOrAssignmentPattern(i),p=d.length;if(1!==p){s=o(t,s,!e.isDeclarationBindingElement(r)||0!==p,c)}for(var f=0;f<p;f++){var m=d[f];if(e.getRestIndicatorOfBindingOrAssignmentElement(m)){if(f===p-1){l&&(t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(l),s,c,i),l=void 0);_=t.context.getEmitHelperFactory().createRestHelper(s,d,u,i);n(t,m,_,m)}}else{var g=e.getPropertyNameOfBindingOrAssignmentElement(m);if(!(t.level>=1)||24576&m.transformFlags||24576&e.getTargetOfBindingOrAssignmentElement(m).transformFlags||e.isComputedPropertyName(g)){l&&(t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(l),s,c,i),l=void 0);var _=a(t,s,g);e.isComputedPropertyName(g)&&(u=e.append(u,_.argumentExpression)),n(t,m,_,m)}else l=e.append(l,e.visitNode(m,t.visitor))}}l&&t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(l),s,c,i)}(t,r,u,s,c):e.isArrayBindingOrAssignmentPattern(u)?function(t,r,a,s,c){var l,u,d=e.getElementsOfBindingOrAssignmentPattern(a),p=d.length;if(t.level<1&&t.downlevelIteration)s=o(t,e.setTextRange(t.context.getEmitHelperFactory().createReadHelper(s,p>0&&e.getRestIndicatorOfBindingOrAssignmentElement(d[p-1])?void 0:p),c),!1,c);else if(1!==p&&(t.level<1||0===p)||e.every(d,e.isOmittedExpression)){s=o(t,s,!e.isDeclarationBindingElement(r)||0!==p,c)}for(var f=0;f<p;f++){var m=d[f];if(t.level>=1)if(16384&m.transformFlags||t.hasTransformedPriorElement&&!i(m)){t.hasTransformedPriorElement=!0;var g=t.context.factory.createTempVariable(void 0);t.hoistTempVariables&&t.context.hoistVariableDeclaration(g),u=e.append(u,[g,m]),l=e.append(l,t.createArrayBindingOrAssignmentElement(g))}else l=e.append(l,m);else{if(e.isOmittedExpression(m))continue;if(e.getRestIndicatorOfBindingOrAssignmentElement(m)){if(f===p-1){_=t.context.factory.createArraySliceCall(s,f);n(t,m,_,m)}}else{var _=t.context.factory.createElementAccessExpression(s,f);n(t,m,_,m)}}}l&&t.emitBindingOrAssignment(t.createArrayBindingOrAssignmentPattern(l),s,c,a);if(u)for(var h=0,y=u;h<y.length;h++){var v=y[h],b=v[0];n(t,m=v[1],b,m)}}(t,r,u,s,c):t.emitBindingOrAssignment(u,s,c,r)}function i(t){var r=e.getTargetOfBindingOrAssignmentElement(t);if(!r||e.isOmittedExpression(r))return!0;var n=e.tryGetPropertyNameOfBindingOrAssignmentElement(t);if(n&&!e.isPropertyNameLiteral(n))return!1;var a=e.getInitializerOfBindingOrAssignmentElement(t);return!(a&&!e.isSimpleInlineableExpression(a))&&(e.isBindingOrAssignmentPattern(r)?e.every(e.getElementsOfBindingOrAssignmentPattern(r),i):e.isIdentifier(r))}function a(t,r,n){if(e.isComputedPropertyName(n)){var i=o(t,e.visitNode(n.expression,t.visitor),!1,n);return t.context.factory.createElementAccessExpression(r,i)}if(e.isStringOrNumericLiteralLike(n)){i=e.factory.cloneNode(n);return t.context.factory.createElementAccessExpression(r,i)}var a=t.context.factory.createIdentifier(e.idText(n));return t.context.factory.createPropertyAccessExpression(r,a)}function o(t,r,n,i){if(e.isIdentifier(r)&&n)return r;var a=t.context.factory.createTempVariable(void 0);return t.hoistTempVariables?(t.context.hoistVariableDeclaration(a),t.emitExpression(e.setTextRange(t.context.factory.createAssignment(a,r),i))):t.emitBindingOrAssignment(a,r,i,void 0),a}function s(e){return e}!function(e){e[e.All=0]="All",e[e.ObjectRest=1]="ObjectRest"}(e.FlattenLevel||(e.FlattenLevel={})),e.flattenDestructuringAssignment=function(i,a,c,l,u,d){var p,f,m=i;if(e.isDestructuringAssignment(i))for(p=i.right;e.isEmptyArrayLiteral(i.left)||e.isEmptyObjectLiteral(i.left);){if(!e.isDestructuringAssignment(p))return e.visitNode(p,a,e.isExpression);m=i=p,p=i.right}var g={context:c,level:l,downlevelIteration:!!c.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:_,emitBindingOrAssignment:function(t,r,n,i){e.Debug.assertNode(t,d?e.isIdentifier:e.isExpression);var o=d?d(t,r,n):e.setTextRange(c.factory.createAssignment(e.visitNode(t,a,e.isExpression),r),n);o.original=i,_(o)},createArrayBindingOrAssignmentPattern:function(t){return function(t,r){return t.createArrayLiteralExpression(e.map(r,t.converters.convertToArrayAssignmentElement))}(c.factory,t)},createObjectBindingOrAssignmentPattern:function(t){return function(t,r){return t.createObjectLiteralExpression(e.map(r,t.converters.convertToObjectAssignmentElement))}(c.factory,t)},createArrayBindingOrAssignmentElement:s,visitor:a};if(p&&(p=e.visitNode(p,a,e.isExpression),e.isIdentifier(p)&&t(i,p.escapedText)||r(i)?p=o(g,p,!1,m):u?p=o(g,p,!0,m):e.nodeIsSynthesized(i)&&(m=p)),n(g,i,p,m,e.isDestructuringAssignment(i)),p&&u){if(!e.some(f))return p;f.push(p)}return c.factory.inlineExpressions(f)||c.factory.createOmittedExpression();function _(t){f=e.append(f,t)}},e.flattenDestructuringBinding=function(i,a,s,c,l,u,d){var p;void 0===u&&(u=!1);var f=[],m=[],g={context:s,level:c,downlevelIteration:!!s.getCompilerOptions().downlevelIteration,hoistTempVariables:u,emitExpression:function(t){p=e.append(p,t)},emitBindingOrAssignment:C,createArrayBindingOrAssignmentPattern:function(t){return function(t,r){return e.Debug.assertEachNode(r,e.isArrayBindingElement),t.createArrayBindingPattern(r)}(s.factory,t)},createObjectBindingOrAssignmentPattern:function(t){return function(t,r){return e.Debug.assertEachNode(r,e.isBindingElement),t.createObjectBindingPattern(r)}(s.factory,t)},createArrayBindingOrAssignmentElement:function(e){return function(e,t){return e.createBindingElement(void 0,void 0,t)}(s.factory,e)},visitor:a};if(e.isVariableDeclaration(i)){var _=e.getInitializerOfBindingOrAssignmentElement(i);_&&(e.isIdentifier(_)&&t(i,_.escapedText)||r(i))&&(_=o(g,e.visitNode(_,g.visitor),!1,_),i=s.factory.updateVariableDeclaration(i,i.name,void 0,void 0,_))}if(n(g,i,l,i,d),p){var h=s.factory.createTempVariable(void 0);if(u){var y=s.factory.inlineExpressions(p);p=void 0,C(h,y,void 0,void 0)}else{s.hoistVariableDeclaration(h);var v=e.last(f);v.pendingExpressions=e.append(v.pendingExpressions,s.factory.createAssignment(h,v.value)),e.addRange(v.pendingExpressions,p),v.value=h}}for(var b=0,k=f;b<k.length;b++){var x=k[b],E=x.pendingExpressions,S=x.name,D=(y=x.value,x.location),w=x.original,T=s.factory.createVariableDeclaration(S,void 0,void 0,E?s.factory.inlineExpressions(e.append(E,y)):y);T.original=w,e.setTextRange(T,D),m.push(T)}return m;function C(t,r,n,i){e.Debug.assertNode(t,e.isBindingName),p&&(r=s.factory.inlineExpressions(e.append(p,r)),p=void 0),f.push({pendingExpressions:p,name:t,value:r,location:n,original:i})}}}(d||(d={})),function(e){var t;function r(t){return t.templateFlags?e.factory.createVoidZero():e.factory.createStringLiteral(t.text)}function n(t,r){var n=t.rawText;if(void 0===n){n=e.getSourceTextOfNodeFromSourceFile(r,t);var i=14===t.kind||17===t.kind;n=n.substring(1,n.length-(i?1:2))}return n=n.replace(/\r\n?/g,"\n"),e.setTextRange(e.factory.createStringLiteral(n),t)}!function(e){e[e.LiftRestriction=0]="LiftRestriction",e[e.All=1]="All"}(t=e.ProcessLevel||(e.ProcessLevel={})),e.processTaggedTemplateExpression=function(i,a,o,s,c,l){var u=e.visitNode(a.tag,o,e.isExpression),d=[void 0],p=[],f=[],m=a.template;if(l===t.LiftRestriction&&!e.hasInvalidEscape(m))return e.visitEachChild(a,o,i);if(e.isNoSubstitutionTemplateLiteral(m))p.push(r(m)),f.push(n(m,s));else{p.push(r(m.head)),f.push(n(m.head,s));for(var g=0,_=m.templateSpans;g<_.length;g++){var h=_[g];p.push(r(h.literal)),f.push(n(h.literal,s)),d.push(e.visitNode(h.expression,o,e.isExpression))}}var y=i.getEmitHelperFactory().createTemplateObjectHelper(e.factory.createArrayLiteralExpression(p),e.factory.createArrayLiteralExpression(f));if(e.isExternalModule(s)){var v=e.factory.createUniqueName("templateObject");c(v),d[0]=e.factory.createLogicalOr(v,e.factory.createAssignment(v,y))}else d[0]=y;return e.factory.createCallExpression(u,void 0,d)}}(d||(d={})),function(e){var t,r;!function(e){e[e.ClassAliases=1]="ClassAliases",e[e.NamespaceExports=2]="NamespaceExports",e[e.NonQualifiedEnumMembers=8]="NonQualifiedEnumMembers"}(t||(t={})),function(e){e[e.None=0]="None",e[e.HasStaticInitializedProperties=1]="HasStaticInitializedProperties",e[e.HasConstructorDecorators=2]="HasConstructorDecorators",e[e.HasMemberDecorators=4]="HasMemberDecorators",e[e.IsExportOfNamespace=8]="IsExportOfNamespace",e[e.IsNamedExternalExport=16]="IsNamedExternalExport",e[e.IsDefaultExternalExport=32]="IsDefaultExternalExport",e[e.IsDerivedClass=64]="IsDerivedClass",e[e.UseImmediatelyInvokedFunctionExpression=128]="UseImmediatelyInvokedFunctionExpression",e[e.HasAnyDecorators=6]="HasAnyDecorators",e[e.NeedsName=5]="NeedsName",e[e.MayNeedImmediatelyInvokedFunctionExpression=7]="MayNeedImmediatelyInvokedFunctionExpression",e[e.IsExported=56]="IsExported"}(r||(r={})),e.transformTypeScript=function(t){var r,n,i,a,o,s,c,l,u,d,p=t.factory,f=t.getEmitHelperFactory,m=t.startLexicalEnvironment,g=t.resumeLexicalEnvironment,_=t.endLexicalEnvironment,h=t.hoistVariableDeclaration,y=t.getEmitResolver(),v=t.getCompilerOptions(),b=e.getStrictOptionValue(v,"strictNullChecks"),k=e.getEmitScriptTarget(v),x=e.getEmitModuleKind(v),E=t.onEmitNode,S=t.onSubstituteNode;return t.onEmitNode=function(t,n,i){var a=d,o=r;e.isSourceFile(n)&&(r=n);2&l&&function(t){return 259===e.getOriginalNode(t).kind}(n)&&(d|=2);8&l&&function(t){return 258===e.getOriginalNode(t).kind}(n)&&(d|=8);E(t,n,i),d=a,r=o},t.onSubstituteNode=function(t,r){if(r=S(t,r),1===t)return function(t){switch(t.kind){case 78:return function(t){return function(t){if(1&l&&33554432&y.getNodeCheckFlags(t)){var r=y.getReferencedValueDeclaration(t);if(r){var n=u[r.id];if(n){var i=p.cloneNode(n);return e.setSourceMapRange(i,t),e.setCommentRange(i,t),i}}}return}(t)||ze(t)||t}(t);case 202:case 203:return function(e){return Ue(e)}(t)}return t}(r);if(e.isShorthandPropertyAssignment(r))return function(t){if(2&l){var r=t.name,n=ze(r);if(n){if(t.objectAssignmentInitializer){var i=p.createAssignment(n,t.objectAssignmentInitializer);return e.setTextRange(p.createPropertyAssignment(r,i),t)}return e.setTextRange(p.createPropertyAssignment(r,n),t)}}return t}(r);return r},t.enableSubstitution(202),t.enableSubstitution(203),function(t){if(301===t.kind)return function(t){return p.createBundle(t.sourceFiles.map(D),e.mapDefined(t.prepends,(function(t){return 303===t.kind?e.createUnparsedSourceFile(t,"js"):t})))}(t);return D(t)};function D(n){if(n.isDeclarationFile)return n;r=n;var i=w(n,L);return e.addEmitHelpers(i,t.readEmitHelpers()),r=void 0,i}function w(t,r){var n=a,i=o,l=s,u=c;!function(t){switch(t.kind){case 300:case 261:case 260:case 232:a=t,o=void 0,s=void 0;break;case 254:case 253:if(e.hasSyntacticModifier(t,2))break;t.name?be(t):e.Debug.assert(254===t.kind||e.hasSyntacticModifier(t,512)),e.isClassDeclaration(t)&&(o=t)}}(t);var d=r(t);return a!==n&&(s=l),a=n,o=i,c=u,d}function T(e){return w(e,C)}function C(e){return 1&e.transformFlags?M(e):e}function A(e){return w(e,N)}function N(r){switch(r.kind){case 264:case 263:case 269:case 270:return function(r){var n=e.getParseTreeNode(r);if(n!==r)return 1&r.transformFlags?e.visitEachChild(r,T,t):r;switch(r.kind){case 264:return function(t){if(!t.importClause)return t;if(t.importClause.isTypeOnly)return;var r=e.visitNode(t.importClause,De,e.isImportClause);return r||1===v.importsNotUsedAsValues||2===v.importsNotUsedAsValues?p.updateImportDeclaration(t,void 0,void 0,r,t.moduleSpecifier):void 0}(r);case 263:return Ne(r);case 269:return function(r){return y.isValueAliasDeclaration(r)?e.visitEachChild(r,T,t):void 0}(r);case 270:return function(t){if(t.isTypeOnly)return;if(!t.exportClause||e.isNamespaceExport(t.exportClause))return t;if(!y.isValueAliasDeclaration(t))return;var r=e.visitNode(t.exportClause,Ce,e.isNamedExportBindings);return r?p.updateExportDeclaration(t,void 0,void 0,t.isTypeOnly,r,t.moduleSpecifier):void 0}(r);default:e.Debug.fail("Unhandled ellided statement")}}(r);default:return C(r)}}function P(e){return w(e,I)}function I(t){if(270!==t.kind&&264!==t.kind&&265!==t.kind&&(263!==t.kind||275!==t.moduleReference.kind))return 1&t.transformFlags||e.hasSyntacticModifier(t,1)?M(t):t}function F(e){return w(e,O)}function O(t){switch(t.kind){case 167:return me(t);case 164:return fe(t);case 172:case 168:case 169:case 166:return C(t);case 231:return t;default:return e.Debug.failBadSyntaxKind(t)}}function R(t){if(!(2270&e.modifierToFlag(t.kind)||n&&93===t.kind))return t}function M(o){if(e.isStatement(o)&&e.hasSyntacticModifier(o,2))return p.createNotEmittedStatement(o);switch(o.kind){case 93:case 88:return n?void 0:o;case 123:case 121:case 122:case 126:case 85:case 134:case 143:case 179:case 180:case 181:case 182:case 178:case 173:case 160:case 129:case 153:case 132:case 148:case 145:case 142:case 114:case 149:case 176:case 175:case 177:case 174:case 183:case 184:case 185:case 187:case 188:case 189:case 190:case 191:case 192:case 172:case 162:case 257:case 262:return;case 164:return fe(o);case 167:return me(o);case 256:return p.createNotEmittedStatement(o);case 254:return function(i){if(!(z(i)||n&&e.hasSyntacticModifier(i,1)))return e.visitEachChild(i,T,t);var a=e.getProperties(i,!0,!0),o=function(t,r){var n=0;e.some(r)&&(n|=1);var i=e.getEffectiveBaseTypeNode(t);i&&104!==e.skipOuterExpressions(i.expression).kind&&(n|=64);(function(t){if(t.decorators&&t.decorators.length>0)return!0;var r=e.getFirstConstructorWithBody(t);if(r)return e.forEach(r.parameters,j);return!1})(t)&&(n|=2);e.childIsDecorated(t)&&(n|=4);Pe(t)?n|=8:!function(t){return Ie(t)&&e.hasSyntacticModifier(t,512)}(t)?Fe(t)&&(n|=16):n|=32;k<=1&&7&n&&(n|=128);return n}(i,a);128&o&&t.startLexicalEnvironment();var s=i.name||(5&o?p.getGeneratedNameForNode(i):void 0),c=2&o?function(r,n){var i=e.moveRangePastDecorators(r),a=function(r){if(16777216&y.getNodeCheckFlags(r)){1&l||(l|=1,t.enableSubstitution(78),u=[]);var n=p.createUniqueName(r.name&&!e.isGeneratedIdentifier(r.name)?e.idText(r.name):"default");return u[e.getOriginalNodeId(r)]=n,h(n),n}}(r),o=p.getLocalName(r,!1,!0),s=e.visitNodes(r.heritageClauses,T,e.isHeritageClause),c=U(r),d=p.createClassExpression(void 0,void 0,n,void 0,s,c);e.setOriginalNode(d,r),e.setTextRange(d,i);var f=p.createVariableStatement(void 0,p.createVariableDeclarationList([p.createVariableDeclaration(o,void 0,void 0,a?p.createAssignment(a,d):d)],1));return e.setOriginalNode(f,r),e.setTextRange(f,i),e.setCommentRange(f,r),f}(i,s):function(t,r,n){var i=128&n?void 0:e.visitNodes(t.modifiers,R,e.isModifier),a=p.createClassDeclaration(void 0,i,r,void 0,e.visitNodes(t.heritageClauses,T,e.isHeritageClause),U(t)),o=e.getEmitFlags(t);1&n&&(o|=32);return e.setTextRange(a,t),e.setOriginalNode(a,t),e.setEmitFlags(a,o),a}(i,s,o),d=[c];if(W(d,i,!1),W(d,i,!0),function(t,r){var n=function(t){var r=function(t){var r=t.decorators,n=V(e.getFirstConstructorWithBody(t));if(!r&&!n)return;return{decorators:r,parameters:n}}(t),n=K(t,t,r);if(!n)return;var i=u&&u[e.getOriginalNodeId(t)],a=p.getLocalName(t,!1,!0),o=f().createDecorateHelper(n,a),s=p.createAssignment(a,i?p.createAssignment(i,o):o);return e.setEmitFlags(s,1536),e.setSourceMapRange(s,e.moveRangePastDecorators(t)),s}(r);n&&t.push(e.setOriginalNode(p.createExpressionStatement(n),r))}(d,i),128&o){var m=e.createTokenRange(e.skipTrivia(r.text,i.members.end),19),g=p.getInternalName(i),_=p.createPartiallyEmittedExpression(g);e.setTextRangeEnd(_,m.end),e.setEmitFlags(_,1536);var v=p.createReturnStatement(_);e.setTextRangePos(v,m.pos),e.setEmitFlags(v,1920),d.push(v),e.insertStatementsAfterStandardPrologue(d,t.endLexicalEnvironment());var b=p.createImmediatelyInvokedArrowFunction(d);e.setEmitFlags(b,33554432);var x=p.createVariableStatement(void 0,p.createVariableDeclarationList([p.createVariableDeclaration(p.getLocalName(i,!1,!1),void 0,void 0,b)]));e.setOriginalNode(x,i),e.setCommentRange(x,i),e.setSourceMapRange(x,e.moveRangePastDecorators(i)),e.startOnNewLine(x),d=[x]}8&o?Re(d,i):(128&o||2&o)&&(32&o?d.push(p.createExportDefault(p.getLocalName(i,!1,!0))):16&o&&d.push(p.createExternalModuleExport(p.getLocalName(i,!1,!0))));d.length>1&&(d.push(p.createEndOfDeclarationMarker(i)),e.setEmitFlags(c,4194304|e.getEmitFlags(c)));return e.singleOrMany(d)}(o);case 223:return function(r){if(!z(r))return e.visitEachChild(r,T,t);var n=p.createClassExpression(void 0,void 0,r.name,void 0,e.visitNodes(r.heritageClauses,T,e.isHeritageClause),U(r));return e.setOriginalNode(n,r),e.setTextRange(n,r),n}(o);case 289:return function(r){if(117===r.token)return;return e.visitEachChild(r,T,t)}(o);case 225:return function(t){return p.updateExpressionWithTypeArguments(t,e.visitNode(t.expression,T,e.isLeftHandSideExpression),void 0)}(o);case 166:return function(r){if(!pe(r))return;var n=p.updateMethodDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),r.asteriskToken,de(r),void 0,void 0,e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t));n!==r&&(e.setCommentRange(n,r),e.setSourceMapRange(n,e.moveRangePastDecorators(r)));return n}(o);case 168:return function(r){if(!_e(r))return;var n=p.updateGetAccessorDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),de(r),e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t)||p.createBlock([]));n!==r&&(e.setCommentRange(n,r),e.setSourceMapRange(n,e.moveRangePastDecorators(r)));return n}(o);case 169:return function(r){if(!_e(r))return;var n=p.updateSetAccessorDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),de(r),e.visitParameterList(r.parameters,T,t),e.visitFunctionBody(r.body,T,t)||p.createBlock([]));n!==r&&(e.setCommentRange(n,r),e.setSourceMapRange(n,e.moveRangePastDecorators(r)));return n}(o);case 253:return function(r){if(!pe(r))return p.createNotEmittedStatement(r);var n=p.updateFunctionDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t)||p.createBlock([]));if(Pe(r)){var i=[n];return Re(i,r),i}return n}(o);case 209:return function(r){if(!pe(r))return p.createOmittedExpression();var n=p.updateFunctionExpression(r,e.visitNodes(r.modifiers,R,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t)||p.createBlock([]));return n}(o);case 210:return function(r){var n=p.updateArrowFunction(r,e.visitNodes(r.modifiers,R,e.isModifier),void 0,e.visitParameterList(r.parameters,T,t),void 0,r.equalsGreaterThanToken,e.visitFunctionBody(r.body,T,t));return n}(o);case 161:return function(t){if(e.parameterIsThisKeyword(t))return;var r=p.updateParameterDeclaration(t,void 0,void 0,t.dotDotDotToken,e.visitNode(t.name,T,e.isBindingName),void 0,void 0,e.visitNode(t.initializer,T,e.isExpression));r!==t&&(e.setCommentRange(r,t),e.setTextRange(r,e.moveRangePastModifiers(t)),e.setSourceMapRange(r,e.moveRangePastModifiers(t)),e.setEmitFlags(r.name,32));return r}(o);case 208:return function(n){var i=e.skipOuterExpressions(n.expression,-7);if(e.isAssertionExpression(i)){var a=e.visitNode(n.expression,T,e.isExpression);return e.length(e.getLeadingCommentRangesOfNode(a,r))?p.updateParenthesizedExpression(n,a):p.createPartiallyEmittedExpression(a,n)}return e.visitEachChild(n,T,t)}(o);case 207:case 226:return function(t){var r=e.visitNode(t.expression,T,e.isExpression);return p.createPartiallyEmittedExpression(r,t)}(o);case 204:return function(t){return p.updateCallExpression(t,e.visitNode(t.expression,T,e.isExpression),void 0,e.visitNodes(t.arguments,T,e.isExpression))}(o);case 205:return function(t){return p.updateNewExpression(t,e.visitNode(t.expression,T,e.isExpression),void 0,e.visitNodes(t.arguments,T,e.isExpression))}(o);case 206:return function(t){return p.updateTaggedTemplateExpression(t,e.visitNode(t.tag,T,e.isExpression),void 0,e.visitNode(t.template,T,e.isExpression))}(o);case 227:return function(t){var r=e.visitNode(t.expression,T,e.isLeftHandSideExpression);return p.createPartiallyEmittedExpression(r,t)}(o);case 258:return function(t){if(!function(t){return!e.isEnumConst(t)||e.shouldPreserveConstEnums(v)}(t))return p.createNotEmittedStatement(t);var n=[],o=2,s=xe(n,t);s&&(x===e.ModuleKind.System&&a===r||(o|=512));var c=je(t),l=Be(t),u=e.hasSyntacticModifier(t,1)?p.getExternalModuleOrNamespaceExportName(i,t,!1,!0):p.getLocalName(t,!1,!0),d=p.createLogicalOr(u,p.createAssignment(u,p.createObjectLiteralExpression()));if(ve(t)){var f=p.getLocalName(t,!1,!0);d=p.createAssignment(f,d)}var g=p.createExpressionStatement(p.createCallExpression(p.createFunctionExpression(void 0,void 0,void 0,void 0,[p.createParameterDeclaration(void 0,void 0,void 0,c)],void 0,function(t,r){var n=i;i=r;var a=[];m();var o=e.map(t.members,ye);return e.insertStatementsAfterStandardPrologue(a,_()),e.addRange(a,o),i=n,p.createBlock(e.setTextRange(p.createNodeArray(a),t.members),!0)}(t,l)),void 0,[d]));e.setOriginalNode(g,t),s&&(e.setSyntheticLeadingComments(g,void 0),e.setSyntheticTrailingComments(g,void 0));return e.setTextRange(g,t),e.addEmitFlags(g,o),n.push(g),n.push(p.createEndOfDeclarationMarker(t)),n}(o);case 234:return function(r){if(Pe(r)){var n=e.getInitializedVariables(r.declarationList);if(0===n.length)return;return e.setTextRange(p.createExpressionStatement(p.inlineExpressions(e.map(n,he))),r)}return e.visitEachChild(r,T,t)}(o);case 251:return function(t){return p.updateVariableDeclaration(t,e.visitNode(t.name,T,e.isBindingName),void 0,void 0,e.visitNode(t.initializer,T,e.isExpression))}(o);case 259:return Ee(o);case 263:return Ne(o);case 277:return function(t){return p.updateJsxSelfClosingElement(t,e.visitNode(t.tagName,T,e.isJsxTagNameExpression),void 0,e.visitNode(t.attributes,T,e.isJsxAttributes))}(o);case 278:return function(t){return p.updateJsxOpeningElement(t,e.visitNode(t.tagName,T,e.isJsxTagNameExpression),void 0,e.visitNode(t.attributes,T,e.isJsxAttributes))}(o);default:return e.visitEachChild(o,T,t)}}function L(r){var n=e.getStrictOptionValue(v,"alwaysStrict")&&!(e.isExternalModule(r)&&x>=e.ModuleKind.ES2015)&&!e.isJsonSourceFile(r);return p.updateSourceFile(r,e.visitLexicalEnvironment(r.statements,A,t,0,n))}function j(e){return void 0!==e.decorators&&e.decorators.length>0}function B(e){return!!(2048&e.transformFlags)}function z(t){return e.some(t.decorators)||e.some(t.typeParameters)||e.some(t.heritageClauses,B)||e.some(t.members,B)}function U(t){var r=[],n=e.getFirstConstructorWithBody(t),i=n&&e.filter(n.parameters,(function(t){return e.isParameterPropertyDeclaration(t,n)}));if(i)for(var a=0,o=i;a<o.length;a++){var s=o[a];e.isIdentifier(s.name)&&r.push(e.setOriginalNode(p.createPropertyDeclaration(void 0,void 0,s.name,void 0,void 0,void 0),s))}return e.addRange(r,e.visitNodes(t.members,F,e.isClassElement)),e.setTextRange(p.createNodeArray(r),t.members)}function q(t,r){return e.filter(t.members,r?function(e){return J(e,!0,t)}:function(e){return J(e,!1,t)})}function J(t,r,n){return e.nodeOrChildIsDecorated(t,n)&&r===e.hasSyntacticModifier(t,32)}function V(t){var r;if(t)for(var n=t.parameters,i=n.length>0&&e.parameterIsThisKeyword(n[0]),a=i?1:0,o=i?n.length-1:n.length,s=0;s<o;s++){var c=n[s+a];(r||c.decorators)&&(r||(r=new Array(o)),r[s]=c.decorators)}return r}function H(t,r){switch(r.kind){case 168:case 169:return function(t,r){if(!r.body)return;var n=e.getAllAccessorDeclarations(t.members,r),i=n.firstAccessor,a=n.secondAccessor,o=n.setAccessor,s=i.decorators?i:a&&a.decorators?a:void 0;if(!s||r!==s)return;var c=s.decorators,l=V(o);if(!c&&!l)return;return{decorators:c,parameters:l}}(t,r);case 166:return function(e){if(!e.body)return;var t=e.decorators,r=V(e);if(!t&&!r)return;return{decorators:t,parameters:r}}(r);case 164:return function(e){var t=e.decorators;if(!t)return;return{decorators:t}}(r);default:return}}function K(t,r,n){if(n){var i=[];return e.addRange(i,e.map(n.decorators,$)),e.addRange(i,e.flatMap(n.parameters,Y)),function(e,t,r){(function(e,t,r){v.emitDecoratorMetadata&&(X(e)&&r.push(f().createMetadataHelper("design:type",ee(e))),Z(e)&&r.push(f().createMetadataHelper("design:paramtypes",te(e,t))),Q(e)&&r.push(f().createMetadataHelper("design:returntype",re(e))))})(e,t,r)}(t,r,i),i}}function W(t,r,n){e.addRange(t,e.map(function(e,t){for(var r,n=q(e,t),i=0,a=n;i<a.length;i++){var o=G(e,a[i]);o&&(r?r.push(o):r=[o])}return r}(r,n),Oe))}function G(t,r){var n=K(r,t,H(t,r));if(n){var i=function(t,r){return e.hasSyntacticModifier(r,32)?p.getDeclarationName(t):function(e){return p.createPropertyAccessExpression(p.getDeclarationName(e),"prototype")}(t)}(t,r),a=ue(r,!0),o=k>0?164===r.kind?p.createVoidZero():p.createNull():void 0,s=f().createDecorateHelper(n,i,a,o);return e.setTextRange(s,e.moveRangePastDecorators(r)),e.setEmitFlags(s,1536),s}}function $(t){return e.visitNode(t.expression,T,e.isExpression)}function Y(t,r){var n;if(t){n=[];for(var i=0,a=t;i<a.length;i++){var o=a[i],s=f().createParamHelper($(o),r);e.setTextRange(s,o.expression),e.setEmitFlags(s,1536),n.push(s)}}return n}function X(e){var t=e.kind;return 166===t||168===t||169===t||164===t}function Q(e){return 166===e.kind}function Z(t){switch(t.kind){case 254:case 223:return void 0!==e.getFirstConstructorWithBody(t);case 166:case 168:case 169:return!0}return!1}function ee(t){switch(t.kind){case 164:case 161:return ne(t.type);case 169:case 168:return ne(function(t){var r=y.getAllAccessorDeclarations(t);return r.setAccessor&&e.getSetAccessorTypeAnnotationNode(r.setAccessor)||r.getAccessor&&e.getEffectiveReturnTypeNode(r.getAccessor)}(t));case 254:case 223:case 166:return p.createIdentifier("Function");default:return p.createVoidZero()}}function te(t,r){var n=e.isClassLike(t)?e.getFirstConstructorWithBody(t):e.isFunctionLike(t)&&e.nodeIsPresent(t.body)?t:void 0,i=[];if(n)for(var a=function(t,r){if(r&&168===t.kind){var n=e.getAllAccessorDeclarations(r.members,t).setAccessor;if(n)return n.parameters}return t.parameters}(n,r),o=a.length,s=0;s<o;s++){var c=a[s];0===s&&e.isIdentifier(c.name)&&"this"===c.name.escapedText||(c.dotDotDotToken?i.push(ne(e.getRestParameterElementType(c.type))):i.push(ee(c)))}return p.createArrayLiteralExpression(i)}function re(t){return e.isFunctionLike(t)&&t.type?ne(t.type):e.isAsyncFunction(t)?p.createIdentifier("Promise"):p.createVoidZero()}function ne(t){if(void 0===t)return p.createIdentifier("Object");switch(t.kind){case 114:case 151:case 142:return p.createVoidZero();case 187:return ne(t.type);case 175:case 176:return p.createIdentifier("Function");case 179:case 180:return p.createIdentifier("Array");case 173:case 132:return p.createIdentifier("Boolean");case 148:return p.createIdentifier("String");case 146:return p.createIdentifier("Object");case 192:switch(t.literal.kind){case 10:case 14:return p.createIdentifier("String");case 216:case 8:return p.createIdentifier("Number");case 9:return le();case 110:case 95:return p.createIdentifier("Boolean");case 104:return p.createVoidZero();default:return e.Debug.failBadSyntaxKind(t.literal)}case 145:return p.createIdentifier("Number");case 156:return le();case 149:return k<2?ce():p.createIdentifier("Symbol");case 174:return function(t){var r=y.getTypeReferenceSerializationKind(t.typeName,o||a);switch(r){case e.TypeReferenceSerializationKind.Unknown:if(e.findAncestor(t,(function(t){return t.parent&&e.isConditionalTypeNode(t.parent)&&(t.parent.trueType===t||t.parent.falseType===t)})))return p.createIdentifier("Object");var n=oe(t.typeName),i=p.createTempVariable(h);return p.createConditionalExpression(p.createTypeCheck(p.createAssignment(i,n),"function"),void 0,i,void 0,p.createIdentifier("Object"));case e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue:return se(t.typeName);case e.TypeReferenceSerializationKind.VoidNullableOrNeverType:return p.createVoidZero();case e.TypeReferenceSerializationKind.BigIntLikeType:return le();case e.TypeReferenceSerializationKind.BooleanType:return p.createIdentifier("Boolean");case e.TypeReferenceSerializationKind.NumberLikeType:return p.createIdentifier("Number");case e.TypeReferenceSerializationKind.StringLikeType:return p.createIdentifier("String");case e.TypeReferenceSerializationKind.ArrayLikeType:return p.createIdentifier("Array");case e.TypeReferenceSerializationKind.ESSymbolType:return k<2?ce():p.createIdentifier("Symbol");case e.TypeReferenceSerializationKind.TypeWithCallSignature:return p.createIdentifier("Function");case e.TypeReferenceSerializationKind.Promise:return p.createIdentifier("Promise");case e.TypeReferenceSerializationKind.ObjectType:return p.createIdentifier("Object");default:return e.Debug.assertNever(r)}}(t);case 184:case 183:return ie(t.types);case 185:return ie([t.trueType,t.falseType]);case 189:if(143===t.operator)return ne(t.type);break;case 177:case 190:case 191:case 178:case 129:case 153:case 188:case 196:case 306:case 307:case 311:case 312:case 313:break;case 308:case 309:case 310:return ne(t.type);default:return e.Debug.failBadSyntaxKind(t)}return p.createIdentifier("Object")}function ie(t){for(var r,n=0,i=t;n<i.length;n++){for(var a=i[n];187===a.kind;)a=a.type;if(142!==a.kind&&(b||(192!==a.kind||104!==a.literal.kind)&&151!==a.kind)){var o=ne(a);if(e.isIdentifier(o)&&"Object"===o.escapedText)return o;if(r){if(!e.isIdentifier(r)||!e.isIdentifier(o)||r.escapedText!==o.escapedText)return p.createIdentifier("Object")}else r=o}}return r||p.createVoidZero()}function ae(e,t){return p.createLogicalAnd(p.createStrictInequality(p.createTypeOfExpression(e),p.createStringLiteral("undefined")),t)}function oe(e){if(78===e.kind){var t=se(e);return ae(t,t)}if(78===e.left.kind)return ae(se(e.left),se(e));var r=oe(e.left),n=p.createTempVariable(h);return p.createLogicalAnd(p.createLogicalAnd(r.left,p.createStrictInequality(p.createAssignment(n,r.right),p.createVoidZero())),p.createPropertyAccessExpression(n,e.right))}function se(t){switch(t.kind){case 78:var r=e.setParent(e.setTextRange(e.parseNodeFactory.cloneNode(t),t),t.parent);return r.original=void 0,e.setParent(r,e.getParseTreeNode(a)),r;case 158:return function(e){return p.createPropertyAccessExpression(se(e.left),e.right)}(t)}}function ce(){return p.createConditionalExpression(p.createTypeCheck(p.createIdentifier("Symbol"),"function"),void 0,p.createIdentifier("Symbol"),void 0,p.createIdentifier("Object"))}function le(){return k<99?p.createConditionalExpression(p.createTypeCheck(p.createIdentifier("BigInt"),"function"),void 0,p.createIdentifier("BigInt"),void 0,p.createIdentifier("Object")):p.createIdentifier("BigInt")}function ue(t,r){var n=t.name;return e.isPrivateIdentifier(n)?p.createIdentifier(""):e.isComputedPropertyName(n)?r&&!e.isSimpleInlineableExpression(n.expression)?p.getGeneratedNameForNode(n):n.expression:e.isIdentifier(n)?p.createStringLiteral(e.idText(n)):p.cloneNode(n)}function de(t){var r=t.name;if(e.isComputedPropertyName(r)&&(!e.hasStaticModifier(t)&&c||e.some(t.decorators))){var n=e.visitNode(r.expression,T,e.isExpression),i=e.skipPartiallyEmittedExpressions(n);if(!e.isSimpleInlineableExpression(i)){var a=p.getGeneratedNameForNode(r);return h(a),p.updateComputedPropertyName(r,p.createAssignment(a,n))}}return e.visitNode(r,T,e.isPropertyName)}function pe(t){return!e.nodeIsMissing(t.body)}function fe(t){if(!(8388608&t.flags||e.hasSyntacticModifier(t,128))){var r=p.updatePropertyDeclaration(t,void 0,e.visitNodes(t.modifiers,T,e.isModifier),de(t),void 0,void 0,e.visitNode(t.initializer,T));return r!==t&&(e.setCommentRange(r,t),e.setSourceMapRange(r,e.moveRangePastDecorators(t))),r}}function me(r){if(pe(r))return p.updateConstructorDeclaration(r,void 0,void 0,e.visitParameterList(r.parameters,T,t),function(r,n){var i=n&&e.filter(n.parameters,(function(t){return e.isParameterPropertyDeclaration(t,n)}));if(!e.some(i))return e.visitFunctionBody(r,T,t);var a=[],o=0;g(),o=e.addPrologueDirectivesAndInitialSuperCall(p,n,a,T),e.addRange(a,e.map(i,ge)),e.addRange(a,e.visitNodes(r.statements,T,e.isStatement,o)),a=p.mergeLexicalEnvironment(a,_());var s=p.createBlock(e.setTextRange(p.createNodeArray(a),r.statements),!0);return e.setTextRange(s,r),e.setOriginalNode(s,r),s}(r.body,r))}function ge(t){var r=t.name;if(e.isIdentifier(r)){var n=e.setParent(e.setTextRange(p.cloneNode(r),r),r.parent);e.setEmitFlags(n,1584);var i=e.setParent(e.setTextRange(p.cloneNode(r),r),r.parent);return e.setEmitFlags(i,1536),e.startOnNewLine(e.removeAllComments(e.setTextRange(e.setOriginalNode(p.createExpressionStatement(p.createAssignment(e.setTextRange(p.createPropertyAccessExpression(p.createThis(),n),t.name),i)),t),e.moveRangePos(t,-1))))}}function _e(t){return!(e.nodeIsMissing(t.body)&&e.hasSyntacticModifier(t,128))}function he(r){var n=r.name;return e.isBindingPattern(n)?e.flattenDestructuringAssignment(r,T,t,0,!1,Me):e.setTextRange(p.createAssignment(Le(n),e.visitNode(r.initializer,T,e.isExpression)),r)}function ye(r){var n=ue(r,!1),a=function(r){var n=y.getConstantValue(r);return void 0!==n?"string"==typeof n?p.createStringLiteral(n):p.createNumericLiteral(n):(8&l||(l|=8,t.enableSubstitution(78)),r.initializer?e.visitNode(r.initializer,T,e.isExpression):p.createVoidZero())}(r),o=p.createAssignment(p.createElementAccessExpression(i,n),a),s=10===a.kind?o:p.createAssignment(p.createElementAccessExpression(i,o),n);return e.setTextRange(p.createExpressionStatement(e.setTextRange(s,r)),r)}function ve(t){return Pe(t)||Ie(t)&&x!==e.ModuleKind.ES2015&&x!==e.ModuleKind.ES2020&&x!==e.ModuleKind.ESNext&&x!==e.ModuleKind.System}function be(t){s||(s=new e.Map);var r=ke(t);s.has(r)||s.set(r,t)}function ke(t){return e.Debug.assertNode(t.name,e.isIdentifier),t.name.escapedText}function xe(t,r){var n=p.createVariableStatement(e.visitNodes(r.modifiers,R,e.isModifier),p.createVariableDeclarationList([p.createVariableDeclaration(p.getLocalName(r,!1,!0))],300===a.kind?0:1));if(e.setOriginalNode(n,r),be(r),function(e){if(s){var t=ke(e);return s.get(t)===e}return!0}(r))return 258===r.kind?e.setSourceMapRange(n.declarationList,r):e.setSourceMapRange(n,r),e.setCommentRange(n,r),e.addEmitFlags(n,4195328),t.push(n),!0;var i=p.createMergeDeclarationMarker(n);return e.setEmitFlags(i,4195840),t.push(i),!1}function Ee(o){if(!function(t){var r=e.getParseTreeNode(t,e.isModuleDeclaration);return!r||e.isInstantiatedModule(r,e.shouldPreserveConstEnums(v))}(o))return p.createNotEmittedStatement(o);e.Debug.assertNode(o.name,e.isIdentifier,"A TypeScript namespace should have an Identifier name."),2&l||(l|=2,t.enableSubstitution(78),t.enableSubstitution(292),t.enableEmitNotification(259));var c=[],u=2,d=xe(c,o);d&&(x===e.ModuleKind.System&&a===r||(u|=512));var f=je(o),g=Be(o),h=e.hasSyntacticModifier(o,1)?p.getExternalModuleOrNamespaceExportName(i,o,!1,!0):p.getLocalName(o,!1,!0),y=p.createLogicalOr(h,p.createAssignment(h,p.createObjectLiteralExpression()));if(ve(o)){var b=p.getLocalName(o,!1,!0);y=p.createAssignment(b,y)}var k=p.createExpressionStatement(p.createCallExpression(p.createFunctionExpression(void 0,void 0,void 0,void 0,[p.createParameterDeclaration(void 0,void 0,void 0,f)],void 0,function(t,r){var a=i,o=n,c=s;i=r,n=t,s=void 0;var l,u,d=[];if(m(),t.body)if(260===t.body.kind)w(t.body,(function(t){return e.addRange(d,e.visitNodes(t.statements,P,e.isStatement))})),l=t.body.statements,u=t.body;else{var f=Ee(t.body);f&&(e.isArray(f)?e.addRange(d,f):d.push(f));var g=Se(t).body;l=e.moveRangePos(g.statements,-1)}e.insertStatementsAfterStandardPrologue(d,_()),i=a,n=o,s=c;var h=p.createBlock(e.setTextRange(p.createNodeArray(d),l),!0);e.setTextRange(h,u),t.body&&260===t.body.kind||e.setEmitFlags(h,1536|e.getEmitFlags(h));return h}(o,g)),void 0,[y]));return e.setOriginalNode(k,o),d&&(e.setSyntheticLeadingComments(k,void 0),e.setSyntheticTrailingComments(k,void 0)),e.setTextRange(k,o),e.addEmitFlags(k,u),c.push(k),c.push(p.createEndOfDeclarationMarker(o)),c}function Se(e){if(259===e.body.kind)return Se(e.body)||e.body}function De(t){if(!t.isTypeOnly){var r=y.isReferencedAliasDeclaration(t)?t.name:void 0,n=e.visitNode(t.namedBindings,we,e.isNamedImportBindings);return r||n?p.updateImportClause(t,!1,r,n):void 0}}function we(t){if(266===t.kind)return y.isReferencedAliasDeclaration(t)?t:void 0;var r=e.visitNodes(t.elements,Te,e.isImportSpecifier);return e.some(r)?p.updateNamedImports(t,r):void 0}function Te(e){return y.isReferencedAliasDeclaration(e)?e:void 0}function Ce(t){return e.isNamespaceExport(t)?function(t){return p.updateNamespaceExport(t,e.visitNode(t.name,T,e.isIdentifier))}(t):function(t){var r=e.visitNodes(t.elements,Ae,e.isExportSpecifier);return e.some(r)?p.updateNamedExports(t,r):void 0}(t)}function Ae(e){return y.isValueAliasDeclaration(e)?e:void 0}function Ne(n){if(!n.isTypeOnly){if(e.isExternalModuleImportEqualsDeclaration(n)){var a=y.isReferencedAliasDeclaration(n);return a||1!==v.importsNotUsedAsValues?a?e.visitEachChild(n,T,t):void 0:e.setOriginalNode(e.setTextRange(p.createImportDeclaration(void 0,void 0,void 0,n.moduleReference.expression),n),n)}if(function(t){return y.isReferencedAliasDeclaration(t)||!e.isExternalModule(r)&&y.isTopLevelValueImportEqualsWithEntityName(t)}(n)){var o,s,c,l=e.createExpressionFromEntityName(p,n.moduleReference);return e.setEmitFlags(l,3584),Fe(n)||!Pe(n)?e.setOriginalNode(e.setTextRange(p.createVariableStatement(e.visitNodes(n.modifiers,R,e.isModifier),p.createVariableDeclarationList([e.setOriginalNode(p.createVariableDeclaration(n.name,void 0,void 0,l),n)])),n),n):e.setOriginalNode((o=n.name,s=l,c=n,e.setTextRange(p.createExpressionStatement(p.createAssignment(p.getNamespaceMemberName(i,o,!1,!0),s)),c)),n)}}}function Pe(t){return void 0!==n&&e.hasSyntacticModifier(t,1)}function Ie(t){return void 0===n&&e.hasSyntacticModifier(t,1)}function Fe(t){return Ie(t)&&!e.hasSyntacticModifier(t,512)}function Oe(e){return p.createExpressionStatement(e)}function Re(t,r){var n=p.createAssignment(p.getExternalModuleOrNamespaceExportName(i,r,!1,!0),p.getLocalName(r));e.setSourceMapRange(n,e.createRange(r.name?r.name.pos:r.pos,r.end));var a=p.createExpressionStatement(n);e.setSourceMapRange(a,e.createRange(-1,r.end)),t.push(a)}function Me(t,r,n){return e.setTextRange(p.createAssignment(Le(t),r),n)}function Le(e){return p.getNamespaceMemberName(i,e,!1,!0)}function je(t){var r=p.getGeneratedNameForNode(t);return e.setSourceMapRange(r,t.name),r}function Be(e){return p.getGeneratedNameForNode(e)}function ze(t){if(l&d&&!e.isGeneratedIdentifier(t)&&!e.isLocalName(t)){var r=y.getReferencedExportContainer(t,!1);if(r&&300!==r.kind)if(2&d&&259===r.kind||8&d&&258===r.kind)return e.setTextRange(p.createPropertyAccessExpression(p.getGeneratedNameForNode(r),t),t)}}function Ue(t){var r=function(t){if(v.isolatedModules)return;return e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)?y.getConstantValue(t):void 0}(t);if(void 0!==r){e.setConstantValue(t,r);var n="string"==typeof r?p.createStringLiteral(r):p.createNumericLiteral(r);if(!v.removeComments){var i=e.getOriginalNode(t,e.isAccessExpression),a=e.isPropertyAccessExpression(i)?e.declarationNameToString(i.name):e.getTextOfNode(i.argumentExpression);e.addSyntheticTrailingComment(n,3," "+a+" ")}return n}return t}},e.transformTypeExportImportAndConstEnumInTypeScript=function(t){var r,n,i=t.getEmitResolver();return function(r){if(r.isDeclarationFile)return r;return e.factory.updateSourceFile(r,e.visitLexicalEnvironment(r.statements,a,t))};function a(s){switch(s.kind){case 264:return function(t){if(!t.importClause||t.importClause.isTypeOnly)return t;d();var n=[],i=e.visitNode(t.importClause,o,e.isImportClause);i&&n.push(e.factory.updateImportDeclaration(t,void 0,void 0,i,t.moduleSpecifier));for(var a=function(){var t,n=r.name;r.namespaceImport?t=r.namespaceImport:r.namedImports.length>0&&(t=e.factory.createNamedImports(r.namedImports));var i=[];void 0!==n&&i.push(e.factory.createImportClause(!0,n,void 0));void 0!==t&&i.push(e.factory.createImportClause(!0,void 0,t));return d(),i}(),s=0,c=a;s<c.length;s++){var l=c[s];n.push(e.factory.createImportDeclaration(void 0,void 0,l,t.moduleSpecifier))}return n.length>0?n:void 0}(s);case 263:return function(t){if(t.isTypeOnly)return t;if(e.isExternalModuleImportEqualsDeclaration(t)){return i.isReferencedAliasDeclaration(t)?t:i.isReferenced(t)?e.factory.updateImportEqualsDeclaration(t,t.decorators,t.modifiers,!0,t.name,t.moduleReference):void 0}return t}(s);case 270:return function(t){if(t.isTypeOnly||!t.exportClause||e.isNamespaceExport(t.exportClause))return t;p();var r=[],i=e.visitNode(t.exportClause,l,e.isNamedExportBindings);i&&r.push(e.factory.updateExportDeclaration(t,void 0,void 0,t.isTypeOnly,i,t.moduleSpecifier));var a=function(){var t;n.namedExports.length>0&&(t=e.factory.createNamedExports(n.namedExports));return p(),t}();a&&r.push(e.factory.createExportDeclaration(void 0,void 0,!0,a,t.moduleSpecifier));return r.length>0?r:void 0}(s);case 202:case 203:return function(r){var n=i.getConstantValue(r);if(void 0!==n){return"string"==typeof n?e.factory.createStringLiteral(n):e.factory.createNumericLiteral(n)}return e.visitEachChild(r,a,t)}(s);case 294:return function(r){var n=i.getConstantValue(r);if(void 0!==n){var o="string"==typeof n?e.factory.createStringLiteral(n):e.factory.createNumericLiteral(n);return e.factory.updateEnumMember(r,r.name,o)}return e.visitEachChild(r,a,t)}(s);default:return e.visitEachChild(s,a,t)}}function o(t){if(t.isTypeOnly)return t;var n;i.isReferencedAliasDeclaration(t)?n=t.name:i.isReferenced(t)&&function(e){r.name=e.name}(t);var a=e.visitNode(t.namedBindings,s,e.isNamedImportBindings);return n||a?e.factory.updateImportClause(t,!1,n,a):void 0}function s(t){if(266===t.kind)return i.isReferencedAliasDeclaration(t)?t:void(i.isReferenced(t)&&function(e){r.namespaceImport=e}(t));var n=e.visitNodes(t.elements,c,e.isImportSpecifier);return e.some(n)?e.factory.updateNamedImports(t,n):void 0}function c(e){if(i.isReferencedAliasDeclaration(e))return e;i.isReferenced(e)&&function(e){r.namedImports.push(e)}(e)}function l(t){var r=e.visitNodes(t.elements,u,e.isExportSpecifier);return e.some(r)?e.factory.updateNamedExports(t,r):void 0}function u(e){if(i.isValueAliasDeclaration(e))return e;!function(e){n.namedExports.push(e)}(e)}function d(){r={name:void 0,namespaceImport:void 0,namedImports:[]}}function p(){n={namedExports:[]}}}}(d||(d={})),function(e){var t,r;!function(e){e[e.ClassAliases=1]="ClassAliases"}(t||(t={})),function(e){e[e.InstanceField=0]="InstanceField"}(r||(r={})),e.transformClassFields=function(t){var r,n,a,o,s=t.factory,c=t.hoistVariableDeclaration,l=t.endLexicalEnvironment,u=t.resumeLexicalEnvironment,d=t.getEmitResolver(),p=t.getCompilerOptions(),f=e.getEmitScriptTarget(p),m=f<99,g=t.onSubstituteNode;t.onSubstituteNode=function(t,i){if(i=g(t,i),1===t)return function(t){if(78===t.kind)return function(t){return function(t){if(1&r&&33554432&d.getNodeCheckFlags(t)){var i=d.getReferencedValueDeclaration(t);if(i){var a=n[i.id];if(a){var o=s.cloneNode(a);return e.setSourceMapRange(o,t),e.setCommentRange(o,t),o}}}return}(t)||t}(t);return t}(i);return i};var _,h=[];return e.chainBundle(t,(function(r){var n=t.getCompilerOptions();if(r.isDeclarationFile||n.useDefineForClassFields&&99===n.target)return r;var i=e.visitEachChild(r,y,t);return e.addEmitHelpers(i,t.readEmitHelpers()),i}));function y(l){if(!(4194304&l.transformFlags))return l;switch(l.kind){case 223:case 254:return function(i){var l=a;a=void 0,m&&(h.push(_),_=void 0);var u=e.isClassDeclaration(i)?function(r){if(!e.forEach(r.members,w))return e.visitEachChild(r,y,t);var n=e.getEffectiveBaseTypeNode(r),i=!(!n||104===e.skipOuterExpressions(n.expression).kind),o=[s.updateClassDeclaration(r,void 0,r.modifiers,r.name,void 0,e.visitNodes(r.heritageClauses,y,e.isHeritageClause),T(r,i))];e.some(a)&&o.push(s.createExpressionStatement(s.inlineExpressions(a)));var c=e.getProperties(r,!0,!0);e.some(c)&&A(o,c,s.getInternalName(r));return o}(i):e.isClassExpression(i)?function(i){if(!e.forEach(i.members,w))return e.visitEachChild(i,y,t);var l=e.isClassDeclaration(e.getOriginalNode(i)),u=e.getProperties(i,!0,!0),p=e.getEffectiveBaseTypeNode(i),f=!(!p||104===e.skipOuterExpressions(p.expression).kind),m=s.updateClassExpression(i,e.visitNodes(i.decorators,y,e.isDecorator),i.modifiers,i.name,void 0,e.visitNodes(i.heritageClauses,y,e.isHeritageClause),T(i,f));if(e.some(u)||e.some(a)){if(l)return e.Debug.assertIsDefined(o,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),o&&a&&e.some(a)&&o.push(s.createExpressionStatement(s.inlineExpressions(a))),o&&e.some(u)&&A(o,u,s.getInternalName(i)),m;var g=[],_=16777216&d.getNodeCheckFlags(i),h=s.createTempVariable(c,!!_);if(_){1&r||(r|=1,t.enableSubstitution(78),n=[]);var v=s.cloneNode(h);v.autoGenerateFlags&=-9,n[e.getOriginalNodeId(i)]=v}return e.setEmitFlags(m,65536|e.getEmitFlags(m)),g.push(e.startOnNewLine(s.createAssignment(h,m))),e.addRange(g,e.map(a,e.startOnNewLine)),e.addRange(g,function(t,r){for(var n=[],i=0,a=t;i<a.length;i++){var o=a[i],s=N(o,r);s&&(e.startOnNewLine(s),e.setSourceMapRange(s,e.moveRangePastModifiers(o)),e.setCommentRange(s,o),e.setOriginalNode(s,o),n.push(s))}return n}(u,h)),g.push(e.startOnNewLine(h)),s.inlineExpressions(g)}return m}(i):[];m&&(_=h.pop());return a=l,u}(l);case 164:return k(l);case 234:return function(r){var n=o;o=[];var a=e.visitEachChild(r,y,t),s=e.some(o)?i([a],o):a;return o=n,s}(l);case 202:return function(r){if(m&&e.isPrivateIdentifier(r.name)){var n=F(r.name);if(n)return e.setOriginalNode(x(n,r.expression),r)}return e.visitEachChild(r,y,t)}(l);case 216:return function(r){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.operand)){var n=45===r.operator?39:46===r.operator?40:void 0,i=void 0;if(n&&(i=F(r.operand.name))){var a=S(e.visitNode(r.operand.expression,y,e.isExpression)),o=a.readExpression,c=a.initializeExpression,l=s.createPrefixUnaryExpression(39,x(i,o));return e.setOriginalNode(D(i,c||o,s.createBinaryExpression(l,n,s.createNumericLiteral(1)),62),r)}}return e.visitEachChild(r,y,t)}(l);case 217:return E(l,!1);case 204:return function(r){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.expression)){var n=s.createCallBinding(r.expression,c,f),a=n.thisArg,o=n.target;return e.isCallChain(r)?s.updateCallChain(r,s.createPropertyAccessChain(e.visitNode(o,y),r.questionDotToken,"call"),void 0,void 0,i([e.visitNode(a,y,e.isExpression)],e.visitNodes(r.arguments,y,e.isExpression))):s.updateCallExpression(r,s.createPropertyAccessExpression(e.visitNode(o,y),"call"),void 0,i([e.visitNode(a,y,e.isExpression)],e.visitNodes(r.arguments,y,e.isExpression)))}return e.visitEachChild(r,y,t)}(l);case 218:return function(r){if(m){if(e.isDestructuringAssignment(r)){var n=a;a=void 0,r=s.updateBinaryExpression(r,e.visitNode(r.left,v),r.operatorToken,e.visitNode(r.right,y));var o=e.some(a)?s.inlineExpressions(e.compact(i(i([],a),[r]))):r;return a=n,o}if(e.isAssignmentExpression(r)&&e.isPrivateIdentifierPropertyAccessExpression(r.left)){var c=F(r.left.name);if(c)return e.setOriginalNode(D(c,r.left.expression,r.right,r.operatorToken.kind),r)}}return e.visitEachChild(r,y,t)}(l);case 79:return function(t){if(!m)return t;return e.setOriginalNode(s.createIdentifier(""),t)}(l);case 235:return function(r){if(e.isPostfixUnaryExpression(r.expression))return s.updateExpressionStatement(r,E(r.expression,!0));return e.visitEachChild(r,y,t)}(l);case 239:return function(r){if(r.incrementor&&e.isPostfixUnaryExpression(r.incrementor))return s.updateForStatement(r,e.visitNode(r.initializer,y,e.isForInitializer),e.visitNode(r.condition,y,e.isExpression),E(r.incrementor,!0),e.visitNode(r.statement,y,e.isStatement));return e.visitEachChild(r,y,t)}(l);case 206:return function(r){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.tag)){var n=s.createCallBinding(r.tag,c,f),i=n.thisArg,a=n.target;return s.updateTaggedTemplateExpression(r,s.createCallExpression(s.createPropertyAccessExpression(e.visitNode(a,y),"bind"),void 0,[e.visitNode(i,y,e.isExpression)]),void 0,e.visitNode(r.template,y,e.isTemplateLiteral))}return e.visitEachChild(r,y,t)}(l)}return e.visitEachChild(l,y,t)}function v(t){switch(t.kind){case 201:case 200:return function(t){return e.isArrayLiteralExpression(t)?s.updateArrayLiteralExpression(t,e.visitNodes(t.elements,R,e.isExpression)):s.updateObjectLiteralExpression(t,e.visitNodes(t.properties,M,e.isObjectLiteralElementLike))}(t);default:return y(t)}}function b(r){switch(r.kind){case 167:return;case 168:case 169:case 166:return e.visitEachChild(r,b,t);case 164:return k(r);case 159:return function(r){var n=e.visitEachChild(r,y,t);if(e.some(a)){var i=a;i.push(n.expression),a=[],n=s.updateComputedPropertyName(n,s.inlineExpressions(i))}return n}(r);case 231:return r;default:return y(r)}}function k(r){if(e.Debug.assert(!e.some(r.decorators)),!m&&e.isPrivateIdentifier(r.name))return s.updatePropertyDeclaration(r,void 0,e.visitNodes(r.modifiers,y,e.isModifier),r.name,void 0,void 0,void 0);var n=function(t,r){if(e.isComputedPropertyName(t)){var n=e.visitNode(t.expression,y,e.isExpression),i=e.skipPartiallyEmittedExpressions(n),a=e.isSimpleInlineableExpression(i);if(!(e.isAssignmentExpression(i)&&e.isGeneratedIdentifier(i.left))&&!a&&r){var o=s.getGeneratedNameForNode(t);return c(o),s.createAssignment(o,n)}return a||e.isIdentifier(i)?void 0:n}}(r.name,!!r.initializer||!!t.getCompilerOptions().useDefineForClassFields);n&&!e.isSimpleInlineableExpression(n)&&P().push(n)}function x(r,n){return n=e.visitNode(n,y,e.isExpression),0===r.placement?t.getEmitHelperFactory().createClassPrivateFieldGetHelper(e.nodeIsSynthesized(n)?n:s.cloneNode(n),r.weakMapName):e.Debug.fail("Unexpected private identifier placement")}function E(r,n){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.operand)){var i=45===r.operator?39:46===r.operator?40:void 0,a=void 0;if(i&&(a=F(r.operand.name))){var o=S(e.visitNode(r.operand.expression,y,e.isExpression)),l=o.readExpression,u=o.initializeExpression,d=s.createPrefixUnaryExpression(39,x(a,l)),p=n?void 0:s.createTempVariable(c);return e.setOriginalNode(s.inlineExpressions(e.compact([D(a,u||l,s.createBinaryExpression(p?s.createAssignment(p,d):d,i,s.createNumericLiteral(1)),62),p])),r)}}return e.visitEachChild(r,y,t)}function S(t){var r=e.nodeIsSynthesized(t)?t:s.cloneNode(t);if(e.isSimpleInlineableExpression(t))return{readExpression:r,initializeExpression:void 0};var n=s.createTempVariable(c);return{readExpression:n,initializeExpression:s.createAssignment(n,r)}}function D(r,n,i,a){return 0===r.placement?function(r,n,i,a){if(n=e.visitNode(n,y,e.isExpression),i=e.visitNode(i,y,e.isExpression),e.isCompoundAssignment(a)){var o=S(n),c=o.readExpression,l=o.initializeExpression;return t.getEmitHelperFactory().createClassPrivateFieldSetHelper(l||c,r.weakMapName,s.createBinaryExpression(t.getEmitHelperFactory().createClassPrivateFieldGetHelper(c,r.weakMapName),e.getNonAssignmentOperatorForCompoundAssignment(a),i))}return t.getEmitHelperFactory().createClassPrivateFieldSetHelper(n,r.weakMapName,i)}(r,n,i,a):e.Debug.fail("Unexpected private identifier placement")}function w(t){return e.isPropertyDeclaration(t)||m&&t.name&&e.isPrivateIdentifier(t.name)}function T(r,n){if(m)for(var i=0,a=r.members;i<a.length;i++){var o=a[i];e.isPrivateIdentifierPropertyDeclaration(o)&&I(o.name)}var c=[],d=function(r,n){var i=e.visitNode(e.getFirstConstructorWithBody(r),y,e.isConstructorDeclaration),a=r.members.filter(C);if(!e.some(a))return i;var o=e.visitParameterList(i?i.parameters:void 0,y,t),c=function(r,n,i){var a=t.getCompilerOptions().useDefineForClassFields,o=e.getProperties(r,!1,!1);a||(o=e.filter(o,(function(t){return!!t.initializer||e.isPrivateIdentifier(t.name)})));if(!n&&!e.some(o))return e.visitFunctionBody(void 0,y,t);u();var c=0,d=[];!n&&i&&d.push(s.createExpressionStatement(s.createCallExpression(s.createSuper(),void 0,[s.createSpreadElement(s.createIdentifier("arguments"))])));n&&(c=e.addPrologueDirectivesAndInitialSuperCall(s,n,d,y));if(null==n?void 0:n.body){var p=e.findIndex(n.body.statements,(function(t){return!e.isParameterPropertyDeclaration(e.getOriginalNode(t),n)}),c);-1===p&&(p=n.body.statements.length),p>c&&(a||e.addRange(d,e.visitNodes(n.body.statements,y,e.isStatement,c,p-c)),c=p)}A(d,o,s.createThis()),n&&e.addRange(d,e.visitNodes(n.body.statements,y,e.isStatement,c));return d=s.mergeLexicalEnvironment(d,l()),e.setTextRange(s.createBlock(e.setTextRange(s.createNodeArray(d),n?n.body.statements:r.members),!0),n?n.body:void 0)}(r,i,n);if(!c)return;return e.startOnNewLine(e.setOriginalNode(e.setTextRange(s.createConstructorDeclaration(void 0,void 0,null!=o?o:[],c),i||r),i))}(r,n);return d&&c.push(d),e.addRange(c,e.visitNodes(r.members,b,e.isClassElement)),e.setTextRange(s.createNodeArray(c),r.members)}function C(r){return!(!e.isPropertyDeclaration(r)||e.hasStaticModifier(r)||e.hasSyntacticModifier(e.getOriginalNode(r),128))&&(t.getCompilerOptions().useDefineForClassFields?f<99:e.isInitializedProperty(r)||m&&e.isPrivateIdentifierPropertyDeclaration(r))}function A(t,r,n){for(var i=0,a=r;i<a.length;i++){var o=a[i],c=N(o,n);if(c){var l=s.createExpressionStatement(c);e.setSourceMapRange(l,e.moveRangePastModifiers(o)),e.setCommentRange(l,o),e.setOriginalNode(l,o),t.push(l)}}}function N(r,n){var i,a=!t.getCompilerOptions().useDefineForClassFields,o=e.isComputedPropertyName(r.name)&&!e.isSimpleInlineableExpression(r.name.expression)?s.updateComputedPropertyName(r.name,s.getGeneratedNameForNode(r.name)):r.name;if(m&&e.isPrivateIdentifier(o)){var c=F(o);if(c){if(0===c.placement)return function(t,r,n){return e.factory.createCallExpression(e.factory.createPropertyAccessExpression(n,"set"),void 0,[t,r||e.factory.createVoidZero()])}(n,e.visitNode(r.initializer,y,e.isExpression),c.weakMapName)}else e.Debug.fail("Undeclared private name for property declaration.")}if((!e.isPrivateIdentifier(o)||r.initializer)&&(!e.isPrivateIdentifier(o)||r.initializer)){var l=e.getOriginalNode(r);if(!e.hasSyntacticModifier(l,128)){var u=r.initializer||a?null!==(i=e.visitNode(r.initializer,y,e.isExpression))&&void 0!==i?i:s.createVoidZero():e.isParameterPropertyDeclaration(l,l.parent)&&e.isIdentifier(o)?o:s.createVoidZero();if(a||e.isPrivateIdentifier(o)){var d=e.createMemberAccessForPropertyName(s,n,o,o);return s.createAssignment(d,u)}var p=e.isComputedPropertyName(o)?o.expression:e.isIdentifier(o)?s.createStringLiteral(e.unescapeLeadingUnderscores(o.escapedText)):o,f=s.createPropertyDescriptor({value:u,configurable:!0,writable:!0,enumerable:!0});return s.createObjectDefinePropertyCall(n,p,f)}}}function P(){return a||(a=[])}function I(t){var r=e.getTextOfPropertyName(t),n=s.createUniqueName("_"+r.substring(1),24);c(n),(_||(_=new e.Map)).set(t.escapedText,{placement:0,weakMapName:n}),P().push(s.createAssignment(n,s.createNewExpression(s.createIdentifier("WeakMap"),void 0,[])))}function F(e){if(_&&(r=_.get(e.escapedText)))return r;for(var t=h.length-1;t>=0;--t){var r,n=h[t];if(n)if(r=n.get(e.escapedText))return r}}function O(r){var n=s.getGeneratedNameForNode(r),i=F(r.name);if(!i)return e.visitEachChild(r,y,t);var a=r.expression;return(e.isThisProperty(r)||e.isSuperProperty(r)||!e.isSimpleCopiableExpression(r.expression))&&(a=s.createTempVariable(c,!0),P().push(s.createBinaryExpression(a,62,r.expression))),s.createPropertyAccessExpression(s.createParenthesizedExpression(s.createObjectLiteralExpression([s.createSetAccessorDeclaration(void 0,void 0,"value",[s.createParameterDeclaration(void 0,void 0,void 0,n,void 0,void 0,void 0)],s.createBlock([s.createExpressionStatement(D(i,a,n,62))]))])),"value")}function R(t){var r=e.getTargetOfBindingOrAssignmentElement(t);if(r&&e.isPrivateIdentifierPropertyAccessExpression(r)){var n=O(r);return e.isAssignmentExpression(t)?s.updateBinaryExpression(t,n,t.operatorToken,e.visitNode(t.right,y,e.isExpression)):e.isSpreadElement(t)?s.updateSpreadElement(t,n):n}return e.visitNode(t,v)}function M(t){if(e.isPropertyAssignment(t)){var r=e.getTargetOfBindingOrAssignmentElement(t);if(r&&e.isPrivateIdentifierPropertyAccessExpression(r)){var n=e.getInitializerOfBindingOrAssignmentElement(t),i=O(r);return s.updatePropertyAssignment(t,e.visitNode(t.name,y),n?s.createAssignment(i,e.visitNode(n,y)):i)}return s.updatePropertyAssignment(t,e.visitNode(t.name,y),e.visitNode(t.initializer,v))}return e.visitNode(t,y)}}}(d||(d={})),function(e){var t,r;function n(t,r,n,i){var a=!!(4096&r.getNodeCheckFlags(n)),o=[];return i.forEach((function(r,n){var i=e.unescapeLeadingUnderscores(n),s=[];s.push(t.createPropertyAssignment("get",t.createArrowFunction(void 0,void 0,[],void 0,void 0,e.setEmitFlags(t.createPropertyAccessExpression(e.setEmitFlags(t.createSuper(),4),i),4)))),a&&s.push(t.createPropertyAssignment("set",t.createArrowFunction(void 0,void 0,[t.createParameterDeclaration(void 0,void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,t.createAssignment(e.setEmitFlags(t.createPropertyAccessExpression(e.setEmitFlags(t.createSuper(),4),i),4),t.createIdentifier("v"))))),o.push(t.createPropertyAssignment(i,t.createObjectLiteralExpression(s)))})),t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(t.createUniqueName("_super",48),void 0,void 0,t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"create"),void 0,[t.createNull(),t.createObjectLiteralExpression(o,!0)]))],2))}!function(e){e[e.AsyncMethodsWithSuper=1]="AsyncMethodsWithSuper"}(t||(t={})),function(e){e[e.NonTopLevel=1]="NonTopLevel",e[e.HasLexicalThis=2]="HasLexicalThis"}(r||(r={})),e.transformES2017=function(t){var r,a,o,s,c=t.factory,l=t.getEmitHelperFactory,u=t.resumeLexicalEnvironment,d=t.endLexicalEnvironment,p=t.hoistVariableDeclaration,f=t.getEmitResolver(),m=t.getCompilerOptions(),g=e.getEmitScriptTarget(m),_=0,h=[],y=0,v=t.onEmitNode,b=t.onSubstituteNode;return t.onEmitNode=function(t,n,i){if(1&r&&function(e){var t=e.kind;return 254===t||167===t||166===t||168===t||169===t}(n)){var a=6144&f.getNodeCheckFlags(n);if(a!==_){var o=_;return _=a,v(t,n,i),void(_=o)}}else if(r&&h[e.getNodeId(n)]){o=_;return _=0,v(t,n,i),void(_=o)}v(t,n,i)},t.onSubstituteNode=function(t,r){if(r=b(t,r),1===t&&_)return function(t){switch(t.kind){case 202:return z(t);case 203:return U(t);case 204:return function(t){var r=t.expression;if(e.isSuperProperty(r)){var n=e.isPropertyAccessExpression(r)?z(r):U(r);return c.createCallExpression(c.createPropertyAccessExpression(n,"call"),void 0,i([c.createThis()],t.arguments))}return t}(t)}return t}(r);return r},e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;k(1,!1),k(2,!e.isEffectiveStrictModeSourceFile(r,m));var n=e.visitEachChild(r,w,t);return e.addEmitHelpers(n,t.readEmitHelpers()),n}));function k(e,t){y=t?y|e:y&~e}function x(e){return!!(y&e)}function E(){return x(2)}function S(e,t,r){var n=e&~y;if(n){k(n,!0);var i=t(r);return k(n,!1),i}return t(r)}function D(r){return e.visitEachChild(r,w,t)}function w(r){if(!(64&r.transformFlags))return r;switch(r.kind){case 130:return;case 215:return function(r){if(!x(1))return e.visitEachChild(r,w,t);return e.setOriginalNode(e.setTextRange(c.createYieldExpression(void 0,e.visitNode(r.expression,w,e.isExpression)),r),r)}(r);case 166:return S(3,C,r);case 253:return S(3,A,r);case 209:return S(3,N,r);case 210:return S(1,P,r);case 202:return o&&e.isPropertyAccessExpression(r)&&106===r.expression.kind&&o.add(r.name.escapedText),e.visitEachChild(r,w,t);case 203:return o&&106===r.expression.kind&&(s=!0),e.visitEachChild(r,w,t);case 168:case 169:case 167:case 254:case 223:return S(3,D,r);default:return e.visitEachChild(r,w,t)}}function T(r){if(e.isNodeWithPossibleHoistedDeclaration(r))switch(r.kind){case 234:return function(r){if(F(r.declarationList)){var n=O(r.declarationList,!1);return n?c.createExpressionStatement(n):void 0}return e.visitEachChild(r,w,t)}(r);case 239:return function(t){var r=t.initializer;return c.updateForStatement(t,F(r)?O(r,!1):e.visitNode(t.initializer,w,e.isForInitializer),e.visitNode(t.condition,w,e.isExpression),e.visitNode(t.incrementor,w,e.isExpression),e.visitNode(t.statement,T,e.isStatement,c.liftToBlock))}(r);case 240:return function(t){return c.updateForInStatement(t,F(t.initializer)?O(t.initializer,!0):e.visitNode(t.initializer,w,e.isForInitializer),e.visitNode(t.expression,w,e.isExpression),e.visitNode(t.statement,T,e.isStatement,c.liftToBlock))}(r);case 241:return function(t){return c.updateForOfStatement(t,e.visitNode(t.awaitModifier,w,e.isToken),F(t.initializer)?O(t.initializer,!0):e.visitNode(t.initializer,w,e.isForInitializer),e.visitNode(t.expression,w,e.isExpression),e.visitNode(t.statement,T,e.isStatement,c.liftToBlock))}(r);case 290:return function(r){var n,i=new e.Set;if(I(r.variableDeclaration,i),i.forEach((function(t,r){a.has(r)&&(n||(n=new e.Set(a)),n.delete(r))})),n){var o=a;a=n;var s=e.visitEachChild(r,T,t);return a=o,s}return e.visitEachChild(r,T,t)}(r);case 232:case 246:case 261:case 287:case 288:case 249:case 237:case 238:case 236:case 245:case 247:return e.visitEachChild(r,T,t);default:return e.Debug.assertNever(r,"Unhandled node.")}return w(r)}function C(r){return c.updateMethodDeclaration(r,void 0,e.visitNodes(r.modifiers,w,e.isModifier),r.asteriskToken,r.name,void 0,void 0,e.visitParameterList(r.parameters,w,t),void 0,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,w,t))}function A(r){return c.updateFunctionDeclaration(r,void 0,e.visitNodes(r.modifiers,w,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,w,t),void 0,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,w,t))}function N(r){return c.updateFunctionExpression(r,e.visitNodes(r.modifiers,w,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,w,t),void 0,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,w,t))}function P(r){return c.updateArrowFunction(r,e.visitNodes(r.modifiers,w,e.isModifier),void 0,e.visitParameterList(r.parameters,w,t),void 0,r.equalsGreaterThanToken,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,w,t))}function I(t,r){var n=t.name;if(e.isIdentifier(n))r.add(n.escapedText);else for(var i=0,a=n.elements;i<a.length;i++){var o=a[i];e.isOmittedExpression(o)||I(o,r)}}function F(t){return!!t&&e.isVariableDeclarationList(t)&&!(3&t.flags)&&t.declarations.some(L)}function O(t,r){!function(t){e.forEach(t.declarations,R)}(t);var n=e.getInitializedVariables(t);return 0===n.length?r?e.visitNode(c.converters.convertToAssignmentElementTarget(t.declarations[0].name),w,e.isExpression):void 0:c.inlineExpressions(e.map(n,M))}function R(t){var r=t.name;if(e.isIdentifier(r))p(r);else for(var n=0,i=r.elements;n<i.length;n++){var a=i[n];e.isOmittedExpression(a)||R(a)}}function M(t){var r=e.setSourceMapRange(c.createAssignment(c.converters.convertToAssignmentElementTarget(t.name),t.initializer),t);return e.visitNode(r,w,e.isExpression)}function L(t){var r=t.name;if(e.isIdentifier(r))return a.has(r.escapedText);for(var n=0,i=r.elements;n<i.length;n++){var o=i[n];if(!e.isOmittedExpression(o)&&L(o))return!0}return!1}function j(i){u();var p=e.getOriginalNode(i,e.isFunctionLike).type,m=g<2?function(t){var r=t&&e.getEntityNameFromTypeNode(t);if(r&&e.isEntityName(r)){var n=f.getTypeReferenceSerializationKind(r);if(n===e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue||n===e.TypeReferenceSerializationKind.Unknown)return r}return}(p):void 0,_=210===i.kind,y=!!(8192&f.getNodeCheckFlags(i)),v=a;a=new e.Set;for(var b=0,k=i.parameters;b<k.length;b++){I(k[b],a)}var x,S=o,D=s;if(_||(o=new e.Set,s=!1),_){var T=l().createAwaiterHelper(E(),y,m,B(i.body)),C=d();if(e.some(C)){O=c.converters.convertToFunctionBlock(T);x=c.updateBlock(O,e.setTextRange(c.createNodeArray(e.concatenate(C,O.statements)),O.statements))}else x=T}else{var A=[],N=c.copyPrologue(i.body.statements,A,!1,w);A.push(c.createReturnStatement(l().createAwaiterHelper(E(),y,m,B(i.body,N)))),e.insertStatementsAfterStandardPrologue(A,d());var P=g>=2&&6144&f.getNodeCheckFlags(i);if(P&&(1&r||(r|=1,t.enableSubstitution(204),t.enableSubstitution(202),t.enableSubstitution(203),t.enableEmitNotification(254),t.enableEmitNotification(166),t.enableEmitNotification(168),t.enableEmitNotification(169),t.enableEmitNotification(167),t.enableEmitNotification(234)),o.size)){var F=n(c,f,i,o);h[e.getNodeId(F)]=!0,e.insertStatementsAfterStandardPrologue(A,[F])}var O=c.createBlock(A,!0);e.setTextRange(O,i.body),P&&s&&(4096&f.getNodeCheckFlags(i)?e.addEmitHelper(O,e.advancedAsyncSuperHelper):2048&f.getNodeCheckFlags(i)&&e.addEmitHelper(O,e.asyncSuperHelper)),x=O}return a=v,_||(o=S,s=D),x}function B(t,r){return e.isBlock(t)?c.updateBlock(t,e.visitNodes(t.statements,T,e.isStatement,r)):c.converters.convertToFunctionBlock(e.visitNode(t,T,e.isConciseBody))}function z(t){return 106===t.expression.kind?e.setTextRange(c.createPropertyAccessExpression(c.createUniqueName("_super",48),t.name),t):t}function U(t){return 106===t.expression.kind?(r=t.argumentExpression,n=t,4096&_?e.setTextRange(c.createPropertyAccessExpression(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[r]),"value"),n):e.setTextRange(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[r]),n)):t;var r,n}},e.createSuperAccessVariableStatement=n}(d||(d={})),function(e){var t,r;!function(e){e[e.AsyncMethodsWithSuper=1]="AsyncMethodsWithSuper"}(t||(t={})),function(e){e[e.None=0]="None",e[e.HasLexicalThis=1]="HasLexicalThis",e[e.IterationContainer=2]="IterationContainer",e[e.AncestorFactsMask=3]="AncestorFactsMask",e[e.SourceFileIncludes=1]="SourceFileIncludes",e[e.SourceFileExcludes=2]="SourceFileExcludes",e[e.StrictModeSourceFileIncludes=0]="StrictModeSourceFileIncludes",e[e.ClassOrFunctionIncludes=1]="ClassOrFunctionIncludes",e[e.ClassOrFunctionExcludes=2]="ClassOrFunctionExcludes",e[e.ArrowFunctionIncludes=0]="ArrowFunctionIncludes",e[e.ArrowFunctionExcludes=2]="ArrowFunctionExcludes",e[e.IterationStatementIncludes=2]="IterationStatementIncludes",e[e.IterationStatementExcludes=0]="IterationStatementExcludes"}(r||(r={})),e.transformES2018=function(t){var r=t.factory,n=t.getEmitHelperFactory,a=t.resumeLexicalEnvironment,o=t.endLexicalEnvironment,s=t.hoistVariableDeclaration,c=t.getEmitResolver(),l=t.getCompilerOptions(),u=e.getEmitScriptTarget(l),d=t.onEmitNode;t.onEmitNode=function(t,r,n){if(1&f&&function(e){var t=e.kind;return 254===t||167===t||166===t||168===t||169===t}(r)){var i=6144&c.getNodeCheckFlags(r);if(i!==b){var a=b;return b=i,d(t,r,n),void(b=a)}}else if(f&&x[e.getNodeId(r)]){a=b;return b=0,d(t,r,n),void(b=a)}d(t,r,n)};var p=t.onSubstituteNode;t.onSubstituteNode=function(t,n){if(n=p(t,n),1===t&&b)return function(t){switch(t.kind){case 202:return K(t);case 203:return W(t);case 204:return function(t){var n=t.expression;if(e.isSuperProperty(n)){var a=e.isPropertyAccessExpression(n)?K(n):W(n);return r.createCallExpression(r.createPropertyAccessExpression(a,"call"),void 0,i([r.createThis()],t.arguments))}return t}(t)}return t}(n);return n};var f,m,g,_,h,y,v=!1,b=0,k=0,x=[];return e.chainBundle(t,(function(n){if(n.isDeclarationFile)return n;g=n;var i=function(n){var i=E(2,e.isEffectiveStrictModeSourceFile(n,l)?0:1);v=!1;var a=e.visitEachChild(n,w,t),o=e.concatenate(a.statements,_&&[r.createVariableStatement(void 0,r.createVariableDeclarationList(_))]),s=r.updateSourceFile(a,e.setTextRange(r.createNodeArray(o),n.statements));return S(i),s}(n);return e.addEmitHelpers(i,t.readEmitHelpers()),g=void 0,_=void 0,i}));function E(e,t){var r=k;return k=3&(k&~e|t),r}function S(e){k=e}function D(t){_=e.append(_,r.createVariableDeclaration(t))}function w(e){return P(e,!1)}function T(e){return P(e,!0)}function C(e){if(130!==e.kind)return e}function A(e,t,r,n){if(function(e,t){return k!==(k&~e|t)}(r,n)){var i=E(r,n),a=e(t);return S(i),a}return e(t)}function N(r){return e.visitEachChild(r,w,t)}function P(a,o){if(!(32&a.transformFlags))return a;switch(a.kind){case 215:return function(i){if(2&m&&1&m)return e.setOriginalNode(e.setTextRange(r.createYieldExpression(void 0,n().createAwaitHelper(e.visitNode(i.expression,w,e.isExpression))),i),i);return e.visitEachChild(i,w,t)}(a);case 221:return function(i){if(2&m&&1&m){if(i.asteriskToken){var a=e.visitNode(e.Debug.assertDefined(i.expression),w,e.isExpression);return e.setOriginalNode(e.setTextRange(r.createYieldExpression(void 0,n().createAwaitHelper(r.updateYieldExpression(i,i.asteriskToken,e.setTextRange(n().createAsyncDelegatorHelper(e.setTextRange(n().createAsyncValuesHelper(a),a)),a)))),i),i)}return e.setOriginalNode(e.setTextRange(r.createYieldExpression(void 0,R(i.expression?e.visitNode(i.expression,w,e.isExpression):r.createVoidZero())),i),i)}return e.visitEachChild(i,w,t)}(a);case 244:return function(n){if(2&m&&1&m)return r.updateReturnStatement(n,R(n.expression?e.visitNode(n.expression,w,e.isExpression):r.createVoidZero()));return e.visitEachChild(n,w,t)}(a);case 247:return function(n){if(2&m){var i=e.unwrapInnermostStatementOfLabel(n);return 241===i.kind&&i.awaitModifier?O(i,n):r.restoreEnclosingLabel(e.visitNode(i,w,e.isStatement,r.liftToBlock),n)}return e.visitEachChild(n,w,t)}(a);case 201:return function(i){if(16384&i.transformFlags){var a=function(t){for(var n,i=[],a=0,o=t;a<o.length;a++){var s=o[a];if(293===s.kind){n&&(i.push(r.createObjectLiteralExpression(n)),n=void 0);var c=s.expression;i.push(e.visitNode(c,w,e.isExpression))}else n=e.append(n,291===s.kind?r.createPropertyAssignment(s.name,e.visitNode(s.initializer,w,e.isExpression)):e.visitNode(s,w,e.isObjectLiteralElementLike))}n&&i.push(r.createObjectLiteralExpression(n));return i}(i.properties);a.length&&201!==a[0].kind&&a.unshift(r.createObjectLiteralExpression());var o=a[0];if(a.length>1){for(var s=1;s<a.length;s++)o=n().createAssignHelper([o,a[s]]);return o}return n().createAssignHelper(a)}return e.visitEachChild(i,w,t)}(a);case 218:return function(n,i){if(e.isDestructuringAssignment(n)&&16384&n.left.transformFlags)return e.flattenDestructuringAssignment(n,w,t,1,!i);if(27===n.operatorToken.kind)return r.updateBinaryExpression(n,e.visitNode(n.left,T,e.isExpression),n.operatorToken,e.visitNode(n.right,i?T:w,e.isExpression));return e.visitEachChild(n,w,t)}(a,o);case 340:return function(n,i){if(i)return e.visitEachChild(n,T,t);for(var a,o=0;o<n.elements.length;o++){var s=n.elements[o],c=e.visitNode(s,o<n.elements.length-1?T:w,e.isExpression);(a||c!==s)&&(a||(a=n.elements.slice(0,o)),a.push(c))}var l=a?e.setTextRange(r.createNodeArray(a),n.elements):n.elements;return r.updateCommaListExpression(n,l)}(a,o);case 290:return function(n){if(n.variableDeclaration&&e.isBindingPattern(n.variableDeclaration.name)&&16384&n.variableDeclaration.name.transformFlags){var a=r.getGeneratedNameForNode(n.variableDeclaration.name),o=r.updateVariableDeclaration(n.variableDeclaration,n.variableDeclaration.name,void 0,void 0,a),s=e.flattenDestructuringBinding(o,w,t,1),c=e.visitNode(n.block,w,e.isBlock);return e.some(s)&&(c=r.updateBlock(c,i([r.createVariableStatement(void 0,s)],c.statements))),r.updateCatchClause(n,r.updateVariableDeclaration(n.variableDeclaration,a,void 0,void 0,void 0),c)}return e.visitEachChild(n,w,t)}(a);case 234:return function(r){if(e.hasSyntacticModifier(r,1)){var n=v;v=!0;var i=e.visitEachChild(r,w,t);return v=n,i}return e.visitEachChild(r,w,t)}(a);case 251:return function(e){if(v){var t=v;v=!1;var r=I(e,!0);return v=t,r}return I(e,!1)}(a);case 237:case 238:case 240:return A(N,a,0,2);case 241:return O(a,void 0);case 239:return A(F,a,0,2);case 214:case 235:return function(r){return e.visitEachChild(r,T,t)}(a);case 167:return A(M,a,2,1);case 166:return A(B,a,2,1);case 168:return A(L,a,2,1);case 169:return A(j,a,2,1);case 253:return A(z,a,2,1);case 209:return A(q,a,2,1);case 210:return A(U,a,2,0);case 161:return function(n){if(16384&n.transformFlags)return r.updateParameterDeclaration(n,void 0,void 0,n.dotDotDotToken,r.getGeneratedNameForNode(n),void 0,void 0,e.visitNode(n.initializer,w,e.isExpression));return e.visitEachChild(n,w,t)}(a);case 208:return function(r,n){return e.visitEachChild(r,n?T:w,t)}(a,o);case 206:return function(r){return e.processTaggedTemplateExpression(t,r,w,g,D,e.ProcessLevel.LiftRestriction)}(a);case 202:return h&&e.isPropertyAccessExpression(a)&&106===a.expression.kind&&h.add(a.name.escapedText),e.visitEachChild(a,w,t);case 203:return h&&106===a.expression.kind&&(y=!0),e.visitEachChild(a,w,t);case 254:case 223:return A(N,a,2,1);default:return e.visitEachChild(a,w,t)}}function I(r,n){return e.isBindingPattern(r.name)&&16384&r.name.transformFlags?e.flattenDestructuringBinding(r,w,t,1,void 0,n):e.visitEachChild(r,w,t)}function F(t){return r.updateForStatement(t,e.visitNode(t.initializer,T,e.isForInitializer),e.visitNode(t.condition,w,e.isExpression),e.visitNode(t.incrementor,T,e.isExpression),e.visitNode(t.statement,w,e.isStatement))}function O(i,a){var o=E(0,2);16384&i.initializer.transformFlags&&(i=function(t){var n=e.skipParentheses(t.initializer);if(e.isVariableDeclarationList(n)||e.isAssignmentPattern(n)){var i=void 0,a=void 0,o=r.createTempVariable(void 0),s=[e.createForOfBindingStatement(r,n,o)];return e.isBlock(t.statement)?(e.addRange(s,t.statement.statements),i=t.statement,a=t.statement.statements):t.statement&&(e.append(s,t.statement),i=t.statement,a=t.statement),r.updateForOfStatement(t,t.awaitModifier,e.setTextRange(r.createVariableDeclarationList([e.setTextRange(r.createVariableDeclaration(o),t.initializer)],1),t.initializer),t.expression,e.setTextRange(r.createBlock(e.setTextRange(r.createNodeArray(s),a),!0),i))}return t}(i));var c=i.awaitModifier?function(t,i,a){var o=e.visitNode(t.expression,w,e.isExpression),c=e.isIdentifier(o)?r.getGeneratedNameForNode(o):r.createTempVariable(void 0),l=e.isIdentifier(o)?r.getGeneratedNameForNode(c):r.createTempVariable(void 0),u=r.createUniqueName("e"),d=r.getGeneratedNameForNode(u),p=r.createTempVariable(void 0),f=e.setTextRange(n().createAsyncValuesHelper(o),t.expression),m=r.createCallExpression(r.createPropertyAccessExpression(c,"next"),void 0,[]),g=r.createPropertyAccessExpression(l,"done"),_=r.createPropertyAccessExpression(l,"value"),h=r.createFunctionCallCall(p,c,[]);s(u),s(p);var y=2&a?r.inlineExpressions([r.createAssignment(u,r.createVoidZero()),f]):f,v=e.setEmitFlags(e.setTextRange(r.createForStatement(e.setEmitFlags(e.setTextRange(r.createVariableDeclarationList([e.setTextRange(r.createVariableDeclaration(c,void 0,void 0,y),t.expression),r.createVariableDeclaration(l)]),t.expression),2097152),r.createComma(r.createAssignment(l,R(m)),r.createLogicalNot(g)),void 0,function(t,n){var i,a,o=e.createForOfBindingStatement(r,t.initializer,n),s=[e.visitNode(o,w,e.isStatement)],c=e.visitNode(t.statement,w,e.isStatement);e.isBlock(c)?(e.addRange(s,c.statements),i=c,a=c.statements):s.push(c);return e.setEmitFlags(e.setTextRange(r.createBlock(e.setTextRange(r.createNodeArray(s),a),!0),i),432)}(t,_)),t),256);return r.createTryStatement(r.createBlock([r.restoreEnclosingLabel(v,i)]),r.createCatchClause(r.createVariableDeclaration(d),e.setEmitFlags(r.createBlock([r.createExpressionStatement(r.createAssignment(u,r.createObjectLiteralExpression([r.createPropertyAssignment("error",d)])))]),1)),r.createBlock([r.createTryStatement(r.createBlock([e.setEmitFlags(r.createIfStatement(r.createLogicalAnd(r.createLogicalAnd(l,r.createLogicalNot(g)),r.createAssignment(p,r.createPropertyAccessExpression(c,"return"))),r.createExpressionStatement(R(h))),1)]),void 0,e.setEmitFlags(r.createBlock([e.setEmitFlags(r.createIfStatement(u,r.createThrowStatement(r.createPropertyAccessExpression(u,"error"))),1)]),1))]))}(i,a,o):r.restoreEnclosingLabel(e.visitEachChild(i,w,t),a);return S(o),c}function R(e){return 1&m?r.createYieldExpression(void 0,n().createAwaitHelper(e)):r.createAwaitExpression(e)}function M(n){var i=m;m=0;var a=r.updateConstructorDeclaration(n,void 0,n.modifiers,e.visitParameterList(n.parameters,w,t),V(n));return m=i,a}function L(n){var i=m;m=0;var a=r.updateGetAccessorDeclaration(n,void 0,n.modifiers,e.visitNode(n.name,w,e.isPropertyName),e.visitParameterList(n.parameters,w,t),void 0,V(n));return m=i,a}function j(n){var i=m;m=0;var a=r.updateSetAccessorDeclaration(n,void 0,n.modifiers,e.visitNode(n.name,w,e.isPropertyName),e.visitParameterList(n.parameters,w,t),V(n));return m=i,a}function B(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateMethodDeclaration(n,void 0,1&m?e.visitNodes(n.modifiers,C,e.isModifier):n.modifiers,2&m?void 0:n.asteriskToken,e.visitNode(n.name,w,e.isPropertyName),e.visitNode(void 0,w,e.isToken),void 0,e.visitParameterList(n.parameters,w,t),void 0,2&m&&1&m?J(n):V(n));return m=i,a}function z(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateFunctionDeclaration(n,void 0,1&m?e.visitNodes(n.modifiers,C,e.isModifier):n.modifiers,2&m?void 0:n.asteriskToken,n.name,void 0,e.visitParameterList(n.parameters,w,t),void 0,2&m&&1&m?J(n):V(n));return m=i,a}function U(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateArrowFunction(n,n.modifiers,void 0,e.visitParameterList(n.parameters,w,t),void 0,n.equalsGreaterThanToken,V(n));return m=i,a}function q(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateFunctionExpression(n,1&m?e.visitNodes(n.modifiers,C,e.isModifier):n.modifiers,2&m?void 0:n.asteriskToken,n.name,void 0,e.visitParameterList(n.parameters,w,t),void 0,2&m&&1&m?J(n):V(n));return m=i,a}function J(i){a();var s=[],l=r.copyPrologue(i.body.statements,s,!1,w);H(s,i);var d=h,p=y;h=new e.Set,y=!1;var m=r.createReturnStatement(n().createAsyncGeneratorHelper(r.createFunctionExpression(void 0,r.createToken(41),i.name&&r.getGeneratedNameForNode(i.name),void 0,[],void 0,r.updateBlock(i.body,e.visitLexicalEnvironment(i.body.statements,w,t,l))),!!(1&k))),g=u>=2&&6144&c.getNodeCheckFlags(i);if(g){1&f||(f|=1,t.enableSubstitution(204),t.enableSubstitution(202),t.enableSubstitution(203),t.enableEmitNotification(254),t.enableEmitNotification(166),t.enableEmitNotification(168),t.enableEmitNotification(169),t.enableEmitNotification(167),t.enableEmitNotification(234));var _=e.createSuperAccessVariableStatement(r,c,i,h);x[e.getNodeId(_)]=!0,e.insertStatementsAfterStandardPrologue(s,[_])}s.push(m),e.insertStatementsAfterStandardPrologue(s,o());var v=r.updateBlock(i.body,s);return g&&y&&(4096&c.getNodeCheckFlags(i)?e.addEmitHelper(v,e.advancedAsyncSuperHelper):2048&c.getNodeCheckFlags(i)&&e.addEmitHelper(v,e.asyncSuperHelper)),h=d,y=p,v}function V(t){var n;a();var i=0,s=[],c=null!==(n=e.visitNode(t.body,w,e.isConciseBody))&&void 0!==n?n:r.createBlock([]);e.isBlock(c)&&(i=r.copyPrologue(c.statements,s,!1,w)),e.addRange(s,H(void 0,t));var l=o();if(i>0||e.some(s)||e.some(l)){var u=r.converters.convertToFunctionBlock(c,!0);return e.insertStatementsAfterStandardPrologue(s,l),e.addRange(s,u.statements.slice(i)),r.updateBlock(u,e.setTextRange(r.createNodeArray(s),u.statements))}return c}function H(n,i){for(var a=0,o=i.parameters;a<o.length;a++){var s=o[a];if(16384&s.transformFlags){var c=r.getGeneratedNameForNode(s),l=e.flattenDestructuringBinding(s,w,t,1,c,!1,!0);if(e.some(l)){var u=r.createVariableStatement(void 0,r.createVariableDeclarationList(l));e.setEmitFlags(u,1048576),n=e.append(n,u)}}}return n}function K(t){return 106===t.expression.kind?e.setTextRange(r.createPropertyAccessExpression(r.createUniqueName("_super",48),t.name),t):t}function W(t){return 106===t.expression.kind?(n=t.argumentExpression,i=t,4096&b?e.setTextRange(r.createPropertyAccessExpression(r.createCallExpression(r.createIdentifier("_superIndex"),void 0,[n]),"value"),i):e.setTextRange(r.createCallExpression(r.createIdentifier("_superIndex"),void 0,[n]),i)):t;var n,i}}}(d||(d={})),function(e){e.transformES2019=function(t){var r=t.factory;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,n,t)}));function n(i){return 16&i.transformFlags?290===i.kind?function(i){if(!i.variableDeclaration)return r.updateCatchClause(i,r.createVariableDeclaration(r.createTempVariable(void 0)),e.visitNode(i.block,n,e.isBlock));return e.visitEachChild(i,n,t)}(i):e.visitEachChild(i,n,t):i}}}(d||(d={})),function(e){e.transformES2020=function(t){var r=t.factory,n=t.hoistVariableDeclaration;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,i,t)}));function i(c){if(!(8&c.transformFlags))return c;switch(c.kind){case 202:case 203:case 204:if(32&c.flags){var l=o(c,!1,!1);return e.Debug.assertNotNode(l,e.isSyntheticReference),l}return e.visitEachChild(c,i,t);case 218:return 60===c.operatorToken.kind?function(t){var a=e.visitNode(t.left,i,e.isExpression),o=a;e.isSimpleCopiableExpression(a)||(o=r.createTempVariable(n),a=r.createAssignment(o,a));return e.setTextRange(r.createConditionalExpression(s(a,o),void 0,o,void 0,e.visitNode(t.right,i,e.isExpression)),t)}(c):e.visitEachChild(c,i,t);case 212:return function(t){return e.isOptionalChain(e.skipParentheses(t.expression))?e.setOriginalNode(a(t.expression,!1,!0),t):r.updateDeleteExpression(t,e.visitNode(t.expression,i,e.isExpression))}(c);default:return e.visitEachChild(c,i,t)}}function a(s,c,l){switch(s.kind){case 208:return function(t,n,i){var o=a(t.expression,n,i);return e.isSyntheticReference(o)?r.createSyntheticReferenceExpression(r.updateParenthesizedExpression(t,o.expression),o.thisArg):r.updateParenthesizedExpression(t,o)}(s,c,l);case 202:case 203:return function(t,a,s){if(e.isOptionalChain(t))return o(t,a,s);var c,l=e.visitNode(t.expression,i,e.isExpression);return e.Debug.assertNotNode(l,e.isSyntheticReference),a&&(e.isSimpleCopiableExpression(l)?c=l:(c=r.createTempVariable(n),l=r.createAssignment(c,l))),l=202===t.kind?r.updatePropertyAccessExpression(t,l,e.visitNode(t.name,i,e.isIdentifier)):r.updateElementAccessExpression(t,l,e.visitNode(t.argumentExpression,i,e.isExpression)),c?r.createSyntheticReferenceExpression(l,c):l}(s,c,l);case 204:return function(r,n){return e.isOptionalChain(r)?o(r,n,!1):e.visitEachChild(r,i,t)}(s,c);default:return e.visitNode(s,i,e.isExpression)}}function o(t,o,c){var l=function(t){e.Debug.assertNotNode(t,e.isNonNullChain);for(var r=[t];!t.questionDotToken&&!e.isTaggedTemplateExpression(t);)t=e.cast(e.skipPartiallyEmittedExpressions(t.expression),e.isOptionalChain),e.Debug.assertNotNode(t,e.isNonNullChain),r.unshift(t);return{expression:t.expression,chain:r}}(t),u=l.expression,d=l.chain,p=a(u,e.isCallChain(d[0]),!1),f=e.isSyntheticReference(p)?p.thisArg:void 0,m=e.isSyntheticReference(p)?p.expression:p,g=m;e.isSimpleCopiableExpression(m)||(g=r.createTempVariable(n),m=r.createAssignment(g,m));for(var _,h=g,y=0;y<d.length;y++){var v=d[y];switch(v.kind){case 202:case 203:y===d.length-1&&o&&(e.isSimpleCopiableExpression(h)?_=h:(_=r.createTempVariable(n),h=r.createAssignment(_,h))),h=202===v.kind?r.createPropertyAccessExpression(h,e.visitNode(v.name,i,e.isIdentifier)):r.createElementAccessExpression(h,e.visitNode(v.argumentExpression,i,e.isExpression));break;case 204:h=0===y&&f?r.createFunctionCallCall(h,106===f.kind?r.createThis():f,e.visitNodes(v.arguments,i,e.isExpression)):r.createCallExpression(h,void 0,e.visitNodes(v.arguments,i,e.isExpression))}e.setOriginalNode(h,v)}var b=c?r.createConditionalExpression(s(m,g,!0),void 0,r.createTrue(),void 0,r.createDeleteExpression(h)):r.createConditionalExpression(s(m,g,!0),void 0,r.createVoidZero(),void 0,h);return e.setTextRange(b,t),_?r.createSyntheticReferenceExpression(b,_):b}function s(e,t,n){return r.createBinaryExpression(r.createBinaryExpression(e,r.createToken(n?36:37),r.createNull()),r.createToken(n?56:55),r.createBinaryExpression(t,r.createToken(n?36:37),r.createVoidZero()))}}}(d||(d={})),function(e){e.transformESNext=function(t){var r=t.hoistVariableDeclaration,n=t.factory;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,i,t)}));function i(a){if(!(4&a.transformFlags))return a;if(218===a.kind){var o=a;if(e.isLogicalOrCoalescingAssignmentExpression(o))return function(t){var a=t.operatorToken,o=e.getNonAssignmentOperatorForCompoundAssignment(a.kind),s=e.skipParentheses(e.visitNode(t.left,i,e.isLeftHandSideExpression)),c=s,l=e.skipParentheses(e.visitNode(t.right,i,e.isExpression));if(e.isAccessExpression(s)){var u=e.isSimpleCopiableExpression(s.expression),d=u?s.expression:n.createTempVariable(r),p=u?s.expression:n.createAssignment(d,s.expression);if(e.isPropertyAccessExpression(s))c=n.createPropertyAccessExpression(d,s.name),s=n.createPropertyAccessExpression(p,s.name);else{var f=e.isSimpleCopiableExpression(s.argumentExpression),m=f?s.argumentExpression:n.createTempVariable(r);c=n.createElementAccessExpression(d,m),s=n.createElementAccessExpression(p,f?s.argumentExpression:n.createAssignment(m,s.argumentExpression))}}return n.createBinaryExpression(s,o,n.createParenthesizedExpression(n.createAssignment(c,l)))}(o)}return e.visitEachChild(a,i,t)}}}(d||(d={})),function(e){e.transformJsx=function(r){var n,i,a=r.factory,o=r.getEmitHelperFactory,s=r.getCompilerOptions();return e.chainBundle(r,(function(t){if(t.isDeclarationFile)return t;n=t,(i={}).importSpecifier=e.getJSXImplicitImportBase(s,t);var o=e.visitEachChild(t,d,r);e.addEmitHelpers(o,r.readEmitHelpers());var c=o.statements;i.filenameDeclaration&&(c=e.insertStatementAfterCustomPrologue(c.slice(),a.createVariableStatement(void 0,a.createVariableDeclarationList([i.filenameDeclaration],2))));if(i.utilizedImplicitRuntimeImports)for(var l=0,u=e.arrayFrom(i.utilizedImplicitRuntimeImports.entries());l<u.length;l++){var p=u[l],f=p[0],m=p[1];if(e.isExternalModule(t)){var g=a.createImportDeclaration(void 0,void 0,a.createImportClause(!1,void 0,a.createNamedImports(e.arrayFrom(m.values()))),a.createStringLiteral(f));e.setParentRecursive(g,!1),c=e.insertStatementAfterCustomPrologue(c.slice(),g)}else if(e.isExternalOrCommonJsModule(t)){var _=a.createVariableStatement(void 0,a.createVariableDeclarationList([a.createVariableDeclaration(a.createObjectBindingPattern(e.map(e.arrayFrom(m.values()),(function(e){return a.createBindingElement(void 0,e.propertyName,e.name)}))),void 0,void 0,a.createCallExpression(a.createIdentifier("require"),void 0,[a.createStringLiteral(f)]))],2));e.setParentRecursive(_,!1),c=e.insertStatementAfterCustomPrologue(c.slice(),_)}}c!==o.statements&&(o=a.updateSourceFile(o,c));return i=void 0,o}));function c(){if(i.filenameDeclaration)return i.filenameDeclaration.name;var e=a.createVariableDeclaration(a.createUniqueName("_jsxFileName",48),void 0,void 0,a.createStringLiteral(n.fileName));return i.filenameDeclaration=e,i.filenameDeclaration.name}function l(e){var t=function(e){return 5===s.jsx?"jsxDEV":e>1?"jsxs":"jsx"}(e);return u(t)}function u(t){var r,n,o="createElement"===t?i.importSpecifier:e.getJSXRuntimeImport(i.importSpecifier,s),c=null===(n=null===(r=i.utilizedImplicitRuntimeImports)||void 0===r?void 0:r.get(o))||void 0===n?void 0:n.get(t);if(c)return c.name;i.utilizedImplicitRuntimeImports||(i.utilizedImplicitRuntimeImports=e.createMap());var l=i.utilizedImplicitRuntimeImports.get(o);l||(l=e.createMap(),i.utilizedImplicitRuntimeImports.set(o,l));var u=a.createUniqueName("_"+t,112),d=a.createImportSpecifier(a.createIdentifier(t),u);return u.generatedImportReference=d,l.set(t,d),u}function d(t){return 2&t.transformFlags?function(t){switch(t.kind){case 276:return m(t,!1);case 277:return g(t,!1);case 280:return _(t,!1);case 286:return A(t);default:return e.visitEachChild(t,d,r)}}(t):t}function p(t){switch(t.kind){case 11:return function(t){var r=function(t){for(var r,n=0,i=-1,a=0;a<t.length;a++){var o=t.charCodeAt(a);e.isLineBreak(o)?(-1!==n&&-1!==i&&(r=w(r,t.substr(n,i-n+1))),n=-1):e.isWhiteSpaceSingleLine(o)||(i=a,-1===n&&(n=a))}return-1!==n?w(r,t.substr(n)):r}(t.text);return void 0===r?void 0:a.createStringLiteral(r)}(t);case 286:return A(t);case 276:return m(t,!0);case 277:return g(t,!0);case 280:return _(t,!0);default:return e.Debug.failBadSyntaxKind(t)}}function f(t){return void 0===i.importSpecifier||function(t){for(var r=!1,n=0,i=t.attributes.properties;n<i.length;n++){var a=i[n];if(e.isJsxSpreadAttribute(a))r=!0;else if(r&&e.isJsxAttribute(a)&&"key"===a.name.escapedText)return!0}return!1}(t)}function m(e,t){return(f(e.openingElement)?b:y)(e.openingElement,e.children,t,e)}function g(e,t){return(f(e)?b:y)(e,void 0,t,e)}function _(e,t){return(void 0===i.importSpecifier?x:k)(e.openingFragment,e.children,t,e)}function h(t){var r=e.getSemanticJsxChildren(t);if(1===e.length(r)){var n=p(r[0]);return n&&a.createObjectLiteralExpression([a.createPropertyAssignment("children",n)])}var i=e.mapDefined(t,p);return i.length?a.createObjectLiteralExpression([a.createPropertyAssignment("children",a.createArrayLiteralExpression(i))]):void 0}function y(t,r,n,i){var s=C(t),c=e.find(t.attributes.properties,(function(t){return!!t.name&&e.isIdentifier(t.name)&&"key"===t.name.escapedText})),l=c?e.filter(t.attributes.properties,(function(e){return e!==c})):t.attributes.properties,u=[];if(l.length&&(u=e.flatten(e.spanMap(l,e.isJsxSpreadAttribute,(function(t,r){return r?e.map(t,E):a.createObjectLiteralExpression(e.map(t,S))}))),e.isJsxSpreadAttribute(l[0])&&u.unshift(a.createObjectLiteralExpression())),r&&r.length){var d=h(r);d&&u.push(d)}return v(s,0===u.length?a.createObjectLiteralExpression([]):e.singleOrUndefined(u)||o().createAssignHelper(u),c,e.length(e.getSemanticJsxChildren(r||e.emptyArray)),n,i)}function v(t,r,i,o,u,d){var p=[t,r,i?D(i.initializer):a.createVoidZero()];if(5===s.jsx){var f=e.getOriginalNode(n);if(f&&e.isSourceFile(f)){p.push(o>1?a.createTrue():a.createFalse());var m=e.getLineAndCharacterOfPosition(f,d.pos);p.push(a.createObjectLiteralExpression([a.createPropertyAssignment("fileName",c()),a.createPropertyAssignment("lineNumber",a.createNumericLiteral(m.line+1)),a.createPropertyAssignment("columnNumber",a.createNumericLiteral(m.character+1))])),p.push(a.createThis())}}var g=e.setTextRange(a.createCallExpression(l(o),void 0,p),d);return u&&e.startOnNewLine(g),g}function b(t,c,l,d){var f,m=C(t),g=t.attributes.properties;if(0===g.length)f=a.createNull();else{var _=e.flatten(e.spanMap(g,e.isJsxSpreadAttribute,(function(t,r){return r?e.map(t,E):a.createObjectLiteralExpression(e.map(t,S))})));e.isJsxSpreadAttribute(g[0])&&_.unshift(a.createObjectLiteralExpression()),(f=e.singleOrUndefined(_))||(f=o().createAssignHelper(_))}var h=void 0===i.importSpecifier?e.createJsxFactoryExpression(a,r.getEmitResolver().getJsxFactoryEntity(n),s.reactNamespace,t):u("createElement"),y=e.createExpressionForJsxElement(a,h,m,f,e.mapDefined(c,p),d);return l&&e.startOnNewLine(y),y}function k(t,r,n,i){var o;if(r&&r.length){var s=h(r);s&&(o=s)}return v(u("Fragment"),o||a.createObjectLiteralExpression([]),void 0,e.length(e.getSemanticJsxChildren(r)),n,i)}function x(t,i,o,c){var l=e.createExpressionForJsxFragment(a,r.getEmitResolver().getJsxFactoryEntity(n),r.getEmitResolver().getJsxFragmentFactoryEntity(n),s.reactNamespace,e.mapDefined(i,p),t,c);return o&&e.startOnNewLine(l),l}function E(t){return e.visitNode(t.expression,d,e.isExpression)}function S(t){var r=function(t){var r=t.name,n=e.idText(r);return/^[A-Za-z_]\w*$/.test(n)?r:a.createStringLiteral(n)}(t),n=D(t.initializer);return a.createPropertyAssignment(r,n)}function D(t){if(void 0===t)return a.createTrue();if(10===t.kind){var r=void 0!==t.singleQuote?t.singleQuote:!e.isStringDoubleQuoted(t,n),i=a.createStringLiteral((o=t.text,((s=T(o))===o?void 0:s)||t.text),r);return e.setTextRange(i,t)}return 286===t.kind?void 0===t.expression?a.createTrue():e.visitNode(t.expression,d,e.isExpression):e.Debug.failBadSyntaxKind(t);var o,s}function w(e,t){var r=T(t);return void 0===e?r:e+" "+r}function T(r){return r.replace(/&((#((\d+)|x([\da-fA-F]+)))|(\w+));/g,(function(r,n,i,a,o,s,c){if(o)return e.utf16EncodeAsString(parseInt(o,10));if(s)return e.utf16EncodeAsString(parseInt(s,16));var l=t.get(c);return l?e.utf16EncodeAsString(l):r}))}function C(t){if(276===t.kind)return C(t.openingElement);var r=t.tagName;return e.isIdentifier(r)&&e.isIntrinsicJsxName(r.escapedText)?a.createStringLiteral(e.idText(r)):e.createExpressionFromEntityName(a,r)}function A(t){return e.visitNode(t.expression,d,e.isExpression)}};var t=new e.Map(e.getEntries({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830}))}(d||(d={})),function(e){e.transformES2016=function(t){var r=t.factory,n=t.hoistVariableDeclaration;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,i,t)}));function i(a){return 128&a.transformFlags?218===a.kind?function(a){switch(a.operatorToken.kind){case 66:return function(t){var a,o,s=e.visitNode(t.left,i,e.isExpression),c=e.visitNode(t.right,i,e.isExpression);if(e.isElementAccessExpression(s)){var l=r.createTempVariable(n),u=r.createTempVariable(n);a=e.setTextRange(r.createElementAccessExpression(e.setTextRange(r.createAssignment(l,s.expression),s.expression),e.setTextRange(r.createAssignment(u,s.argumentExpression),s.argumentExpression)),s),o=e.setTextRange(r.createElementAccessExpression(l,u),s)}else if(e.isPropertyAccessExpression(s)){l=r.createTempVariable(n);a=e.setTextRange(r.createPropertyAccessExpression(e.setTextRange(r.createAssignment(l,s.expression),s.expression),s.name),s),o=e.setTextRange(r.createPropertyAccessExpression(l,s.name),s)}else a=s,o=s;return e.setTextRange(r.createAssignment(a,e.setTextRange(r.createGlobalMethodCall("Math","pow",[o,c]),t)),t)}(a);case 42:return function(t){var n=e.visitNode(t.left,i,e.isExpression),a=e.visitNode(t.right,i,e.isExpression);return e.setTextRange(r.createGlobalMethodCall("Math","pow",[n,a]),t)}(a);default:return e.visitEachChild(a,i,t)}}(a):e.visitEachChild(a,i,t):a}}}(d||(d={})),function(e){var t,r,n,a,o;!function(e){e[e.CapturedThis=1]="CapturedThis",e[e.BlockScopedBindings=2]="BlockScopedBindings"}(t||(t={})),function(e){e[e.Body=1]="Body",e[e.Initializer=2]="Initializer"}(r||(r={})),function(e){e[e.ToOriginal=0]="ToOriginal",e[e.ToOutParameter=1]="ToOutParameter"}(n||(n={})),function(e){e[e.Break=2]="Break",e[e.Continue=4]="Continue",e[e.Return=8]="Return"}(a||(a={})),function(e){e[e.None=0]="None",e[e.Function=1]="Function",e[e.ArrowFunction=2]="ArrowFunction",e[e.AsyncFunctionBody=4]="AsyncFunctionBody",e[e.NonStaticClassElement=8]="NonStaticClassElement",e[e.CapturesThis=16]="CapturesThis",e[e.ExportedVariableStatement=32]="ExportedVariableStatement",e[e.TopLevel=64]="TopLevel",e[e.Block=128]="Block",e[e.IterationStatement=256]="IterationStatement",e[e.IterationStatementBlock=512]="IterationStatementBlock",e[e.IterationContainer=1024]="IterationContainer",e[e.ForStatement=2048]="ForStatement",e[e.ForInOrForOfStatement=4096]="ForInOrForOfStatement",e[e.ConstructorWithCapturedSuper=8192]="ConstructorWithCapturedSuper",e[e.AncestorFactsMask=16383]="AncestorFactsMask",e[e.BlockScopeIncludes=0]="BlockScopeIncludes",e[e.BlockScopeExcludes=7104]="BlockScopeExcludes",e[e.SourceFileIncludes=64]="SourceFileIncludes",e[e.SourceFileExcludes=8064]="SourceFileExcludes",e[e.FunctionIncludes=65]="FunctionIncludes",e[e.FunctionExcludes=16286]="FunctionExcludes",e[e.AsyncFunctionBodyIncludes=69]="AsyncFunctionBodyIncludes",e[e.AsyncFunctionBodyExcludes=16278]="AsyncFunctionBodyExcludes",e[e.ArrowFunctionIncludes=66]="ArrowFunctionIncludes",e[e.ArrowFunctionExcludes=15232]="ArrowFunctionExcludes",e[e.ConstructorIncludes=73]="ConstructorIncludes",e[e.ConstructorExcludes=16278]="ConstructorExcludes",e[e.DoOrWhileStatementIncludes=1280]="DoOrWhileStatementIncludes",e[e.DoOrWhileStatementExcludes=0]="DoOrWhileStatementExcludes",e[e.ForStatementIncludes=3328]="ForStatementIncludes",e[e.ForStatementExcludes=5056]="ForStatementExcludes",e[e.ForInOrForOfStatementIncludes=5376]="ForInOrForOfStatementIncludes",e[e.ForInOrForOfStatementExcludes=3008]="ForInOrForOfStatementExcludes",e[e.BlockIncludes=128]="BlockIncludes",e[e.BlockExcludes=6976]="BlockExcludes",e[e.IterationStatementBlockIncludes=512]="IterationStatementBlockIncludes",e[e.IterationStatementBlockExcludes=7104]="IterationStatementBlockExcludes",e[e.NewTarget=16384]="NewTarget",e[e.CapturedLexicalThis=32768]="CapturedLexicalThis",e[e.SubtreeFactsMask=-16384]="SubtreeFactsMask",e[e.ArrowFunctionSubtreeExcludes=0]="ArrowFunctionSubtreeExcludes",e[e.FunctionSubtreeExcludes=49152]="FunctionSubtreeExcludes"}(o||(o={})),e.transformES2015=function(t){var r,n,a,o,s,c,l=t.factory,u=t.getEmitHelperFactory,d=t.startLexicalEnvironment,p=t.resumeLexicalEnvironment,f=t.endLexicalEnvironment,m=t.hoistVariableDeclaration,g=t.getCompilerOptions(),_=t.getEmitResolver(),h=t.onSubstituteNode,y=t.onEmitNode;function v(t){o=e.append(o,l.createVariableDeclaration(t))}return t.onEmitNode=function(t,r,n){if(1&c&&e.isFunctionLike(r)){var i=b(16286,8&e.getEmitFlags(r)?81:65);return y(t,r,n),void k(i,0,0)}y(t,r,n)},t.onSubstituteNode=function(t,r){if(r=h(t,r),1===t)return function(t){switch(t.kind){case 78:return function(t){if(2&c&&!e.isInternalName(t)){var r=_.getReferencedDeclarationWithCollidingName(t);if(r&&(!e.isClassLike(r)||!function(t,r){var n=e.getParseTreeNode(r);if(!n||n===t||n.end<=t.pos||n.pos>=t.end)return!1;var i=e.getEnclosingBlockScopeContainer(t);for(;n;){if(n===i||n===t)return!1;if(e.isClassElement(n)&&n.parent===t)return!0;n=n.parent}return!1}(r,t)))return e.setTextRange(l.getGeneratedNameForNode(e.getNameOfDeclaration(r)),t)}return t}(t);case 108:return function(t){if(1&c&&16&a)return e.setTextRange(l.createUniqueName("_this",48),t);return t}(t)}return t}(r);if(e.isIdentifier(r))return function(t){if(2&c&&!e.isInternalName(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r&&function(e){switch(e.parent.kind){case 199:case 254:case 258:case 251:return e.parent.name===e&&_.isDeclarationWithCollidingName(e.parent)}return!1}(r))return e.setTextRange(l.getGeneratedNameForNode(r),t)}return t}(r);return r},e.chainBundle(t,(function(i){if(i.isDeclarationFile)return i;r=i,n=i.text;var s=function(t){var r=b(8064,64),n=[],i=[];d();var a=l.copyPrologue(t.statements,n,!1,S);e.addRange(i,e.visitNodes(t.statements,S,e.isStatement,a)),o&&i.push(l.createVariableStatement(void 0,l.createVariableDeclarationList(o)));return l.mergeLexicalEnvironment(n,f()),B(n,t),k(r,0,0),l.updateSourceFile(t,e.setTextRange(l.createNodeArray(e.concatenate(n,i)),t.statements))}(i);return e.addEmitHelpers(s,t.readEmitHelpers()),r=void 0,n=void 0,o=void 0,a=0,s}));function b(e,t){var r=a;return a=16383&(a&~e|t),r}function k(e,t,r){a=-16384&(a&~t|r)|e}function x(e){return!!(8192&a)&&244===e.kind&&!e.expression}function E(t){return!!(256&t.transformFlags)||void 0!==s||8192&a&&function(t){return 1048576&t.transformFlags&&(e.isReturnStatement(t)||e.isIfStatement(t)||e.isWithStatement(t)||e.isSwitchStatement(t)||e.isCaseBlock(t)||e.isCaseClause(t)||e.isDefaultClause(t)||e.isTryStatement(t)||e.isCatchClause(t)||e.isLabeledStatement(t)||e.isIterationStatement(t,!1)||e.isBlock(t))}(t)||e.isIterationStatement(t,!1)&&de(t)||!!(33554432&e.getEmitFlags(t))}function S(e){return E(e)?T(e,!1):e}function D(e){return E(e)?T(e,!0):e}function w(e){return 106===e.kind?Ne(!0):S(e)}function T(n,o){switch(n.kind){case 124:return;case 254:return function(t){var r=l.createVariableDeclaration(l.getLocalName(t,!0),void 0,void 0,N(t));e.setOriginalNode(r,t);var n=[],i=l.createVariableStatement(void 0,l.createVariableDeclarationList([r]));if(e.setOriginalNode(i,t),e.setTextRange(i,t),e.startOnNewLine(i),n.push(i),e.hasSyntacticModifier(t,1)){var a=e.hasSyntacticModifier(t,512)?l.createExportDefault(l.getLocalName(t)):l.createExternalModuleExport(l.getLocalName(t));e.setOriginalNode(a,i),n.push(a)}var o=e.getEmitFlags(t);4194304&o||(n.push(l.createEndOfDeclarationMarker(t)),e.setEmitFlags(i,4194304|o));return e.singleOrMany(n)}(n);case 223:return function(e){return N(e)}(n);case 161:return function(t){return t.dotDotDotToken?void 0:e.isBindingPattern(t.name)?e.setOriginalNode(e.setTextRange(l.createParameterDeclaration(void 0,void 0,void 0,l.getGeneratedNameForNode(t),void 0,void 0,void 0),t),t):t.initializer?e.setOriginalNode(e.setTextRange(l.createParameterDeclaration(void 0,void 0,void 0,t.name,void 0,void 0,void 0),t),t):t}(n);case 253:return function(r){var n=s;s=void 0;var i=b(16286,65),o=e.visitParameterList(r.parameters,S,t),c=W(r),u=16384&a?l.getLocalName(r):r.name;return k(i,49152,0),s=n,l.updateFunctionDeclaration(r,void 0,e.visitNodes(r.modifiers,S,e.isModifier),r.asteriskToken,u,void 0,o,void 0,c)}(n);case 210:return function(r){4096&r.transformFlags&&(a|=32768);var n=s;s=void 0;var i=b(15232,66),o=l.createFunctionExpression(void 0,void 0,void 0,void 0,e.visitParameterList(r.parameters,S,t),void 0,W(r));e.setTextRange(o,r),e.setOriginalNode(o,r),e.setEmitFlags(o,8),32768&a&&Ie();return k(i,0,0),s=n,o}(n);case 209:return function(r){var n=262144&e.getEmitFlags(r)?b(16278,69):b(16286,65),i=s;s=void 0;var o=e.visitParameterList(r.parameters,S,t),c=W(r),u=16384&a?l.getLocalName(r):r.name;return k(n,49152,0),s=i,l.updateFunctionExpression(r,void 0,r.asteriskToken,u,void 0,o,void 0,c)}(n);case 251:return Y(n);case 78:return A(n);case 252:return function(r){if(3&r.flags||131072&r.transformFlags){3&r.flags&&Pe();var n=e.flatMap(r.declarations,1&r.flags?$:Y),i=l.createVariableDeclarationList(n);return e.setOriginalNode(i,r),e.setTextRange(i,r),e.setCommentRange(i,r),131072&r.transformFlags&&(e.isBindingPattern(r.declarations[0].name)||e.isBindingPattern(e.last(r.declarations).name))&&e.setSourceMapRange(i,function(t){for(var r=-1,n=-1,i=0,a=t;i<a.length;i++){var o=a[i];r=-1===r?o.pos:-1===o.pos?r:Math.min(r,o.pos),n=Math.max(n,o.end)}return e.createRange(r,n)}(n)),i}return e.visitEachChild(r,S,t)}(n);case 246:return function(r){if(void 0!==s){var n=s.allowedNonLabeledJumps;s.allowedNonLabeledJumps|=2;var i=e.visitEachChild(r,S,t);return s.allowedNonLabeledJumps=n,i}return e.visitEachChild(r,S,t)}(n);case 261:return function(r){var n=b(7104,0),i=e.visitEachChild(r,S,t);return k(n,0,0),i}(n);case 232:return function(r,n){if(n)return e.visitEachChild(r,S,t);var i=256&a?b(7104,512):b(6976,128),o=e.visitEachChild(r,S,t);return k(i,0,0),o}(n,!1);case 243:case 242:return function(r){if(s){var n=243===r.kind?2:4;if(!(r.label&&s.labels&&s.labels.get(e.idText(r.label))||!r.label&&s.allowedNonLabeledJumps&n)){var i=void 0,a=r.label;a?243===r.kind?(i="break-"+a.escapedText,ye(s,!0,e.idText(a),i)):(i="continue-"+a.escapedText,ye(s,!1,e.idText(a),i)):243===r.kind?(s.nonLocalJumps|=2,i="break"):(s.nonLocalJumps|=4,i="continue");var o=l.createStringLiteral(i);if(s.loopOutParameters.length){for(var c=s.loopOutParameters,u=void 0,d=0;d<c.length;d++){var p=_e(c[d],1);u=0===d?p:l.createBinaryExpression(u,27,p)}o=l.createBinaryExpression(u,27,o)}return l.createReturnStatement(o)}}return e.visitEachChild(r,S,t)}(n);case 247:return function(t){s&&!s.labels&&(s.labels=new e.Map);var r=e.unwrapInnermostStatementOfLabel(t,s&&X);return e.isIterationStatement(r,!1)?function(e,t){switch(e.kind){case 237:case 238:return ee(e,t);case 239:return te(e,t);case 240:return re(e,t);case 241:return ne(e,t)}}(r,t):l.restoreEnclosingLabel(e.visitNode(r,S,e.isStatement,l.liftToBlock),t,s&&Q)}(n);case 237:case 238:return ee(n,void 0);case 239:return te(n,void 0);case 240:return re(n,void 0);case 241:return ne(n,void 0);case 235:case 214:return function(r){return e.visitEachChild(r,D,t)}(n);case 201:return function(r){for(var n=r.properties,i=-1,o=!1,s=0;s<n.length;s++){var c=n[s];if(262144&c.transformFlags&&4&a||(o=159===e.Debug.checkDefined(c.name).kind)){i=s;break}}if(i<0)return e.visitEachChild(r,S,t);var u=l.createTempVariable(m),d=[],p=l.createAssignment(u,e.setEmitFlags(l.createObjectLiteralExpression(e.visitNodes(n,S,e.isObjectLiteralElementLike,0,i),r.multiLine),o?65536:0));r.multiLine&&e.startOnNewLine(p);return d.push(p),function(t,r,n,i){for(var a=r.properties,o=a.length,s=i;s<o;s++){var c=a[s];switch(c.kind){case 168:case 169:var l=e.getAllAccessorDeclarations(r.properties,c);c===l.firstAccessor&&t.push(H(n,l,r,!!r.multiLine));break;case 166:t.push(Ee(c,n,r,r.multiLine));break;case 291:t.push(ke(c,n,r.multiLine));break;case 292:t.push(xe(c,n,r.multiLine));break;default:e.Debug.failBadSyntaxKind(r)}}}(d,r,u,i),d.push(r.multiLine?e.startOnNewLine(e.setParent(e.setTextRange(l.cloneNode(u),u),u.parent)):u),l.inlineExpressions(d)}(n);case 290:return function(r){var n,a=b(7104,0);if(e.Debug.assert(!!r.variableDeclaration,"Catch clause variable should always be present when downleveling ES2015."),e.isBindingPattern(r.variableDeclaration.name)){var o=l.createTempVariable(void 0),s=l.createVariableDeclaration(o);e.setTextRange(s,r.variableDeclaration);var c=e.flattenDestructuringBinding(r.variableDeclaration,S,t,0,o),u=l.createVariableDeclarationList(c);e.setTextRange(u,r.variableDeclaration);var d=l.createVariableStatement(void 0,u);n=l.updateCatchClause(r,s,(p=r.block,f=d,m=e.visitNodes(p.statements,S,e.isStatement),l.updateBlock(p,i([f],m))))}else n=e.visitEachChild(r,S,t);var p,f,m;return k(a,0,0),n}(n);case 292:return function(t){return e.setTextRange(l.createPropertyAssignment(t.name,A(l.cloneNode(t.name))),t)}(n);case 159:case 221:return function(r){return e.visitEachChild(r,S,t)}(n);case 200:return function(r){if(e.some(r.elements,e.isSpreadElement))return De(r.elements,!0,!!r.multiLine,!!r.elements.hasTrailingComma);return e.visitEachChild(r,S,t)}(n);case 204:return function(t){if(33554432&e.getEmitFlags(t))return function(t){var r=e.cast(e.cast(e.skipOuterExpressions(t.expression),e.isArrowFunction).body,e.isBlock),n=function(t){return e.isVariableStatement(t)&&!!e.first(t.declarationList.declarations).initializer},i=s;s=void 0;var a=e.visitNodes(r.statements,S,e.isStatement);s=i;var o=e.filter(a,n),c=e.filter(a,(function(e){return!n(e)})),u=e.cast(e.first(o),e.isVariableStatement).declarationList.declarations[0],d=e.skipOuterExpressions(u.initializer),p=e.tryCast(d,e.isAssignmentExpression),f=e.cast(p?e.skipOuterExpressions(p.right):d,e.isCallExpression),m=e.cast(e.skipOuterExpressions(f.expression),e.isFunctionExpression),g=m.body.statements,_=0,h=-1,y=[];if(p){var v=e.tryCast(g[_],e.isExpressionStatement);v&&(y.push(v),_++),y.push(g[_]),_++,y.push(l.createExpressionStatement(l.createAssignment(p.left,e.cast(u.name,e.isIdentifier))))}for(;!e.isReturnStatement(e.elementAt(g,h));)h--;e.addRange(y,g,_,h),h<-1&&e.addRange(y,g,h+1);return e.addRange(y,c),e.addRange(y,o,1),l.restoreOuterExpressions(t.expression,l.restoreOuterExpressions(u.initializer,l.restoreOuterExpressions(p&&p.right,l.updateCallExpression(f,l.restoreOuterExpressions(f.expression,l.updateFunctionExpression(m,void 0,void 0,void 0,void 0,m.parameters,void 0,l.updateBlock(m.body,y))),void 0,f.arguments))))}(t);var r=e.skipOuterExpressions(t.expression);if(106===r.kind||e.isSuperProperty(r)||e.some(t.arguments,e.isSpreadElement))return Se(t,!0);return l.updateCallExpression(t,e.visitNode(t.expression,w,e.isExpression),void 0,e.visitNodes(t.arguments,S,e.isExpression))}(n);case 205:return function(r){if(e.some(r.arguments,e.isSpreadElement)){var n=l.createCallBinding(l.createPropertyAccessExpression(r.expression,"bind"),m),a=n.target,o=n.thisArg;return l.createNewExpression(l.createFunctionApplyCall(e.visitNode(a,S,e.isExpression),o,De(l.createNodeArray(i([l.createVoidZero()],r.arguments)),!1,!1,!1)),void 0,[])}return e.visitEachChild(r,S,t)}(n);case 208:return function(r,n){return e.visitEachChild(r,n?D:S,t)}(n,o);case 218:return G(n,o);case 340:return function(r,n){if(n)return e.visitEachChild(r,D,t);for(var i,a=0;a<r.elements.length;a++){var o=r.elements[a],s=e.visitNode(o,a<r.elements.length-1?D:S,e.isExpression);(i||s!==o)&&(i||(i=r.elements.slice(0,a)),i.push(s))}var c=i?e.setTextRange(l.createNodeArray(i),r.elements):r.elements;return l.updateCommaListExpression(r,c)}(n,o);case 14:case 15:case 16:case 17:return function(t){return e.setTextRange(l.createStringLiteral(t.text),t)}(n);case 10:return function(t){if(t.hasExtendedUnicodeEscape)return e.setTextRange(l.createStringLiteral(t.text),t);return t}(n);case 8:return function(t){if(384&t.numericLiteralFlags)return e.setTextRange(l.createNumericLiteral(t.text),t);return t}(n);case 206:return function(n){return e.processTaggedTemplateExpression(t,n,S,r,v,e.ProcessLevel.All)}(n);case 220:return function(t){var r=[];(function(t,r){if(!function(t){return e.Debug.assert(0!==t.templateSpans.length),0!==t.head.text.length||0===t.templateSpans[0].literal.text.length}(r))return;t.push(l.createStringLiteral(r.head.text))})(r,t),function(t,r){for(var n=0,i=r.templateSpans;n<i.length;n++){var a=i[n];t.push(e.visitNode(a.expression,S,e.isExpression)),0!==a.literal.text.length&&t.push(l.createStringLiteral(a.literal.text))}}(r,t);var n=e.reduceLeft(r,l.createAdd);e.nodeIsSynthesized(n)&&e.setTextRange(n,t);return n}(n);case 222:return function(t){return e.visitNode(t.expression,S,e.isExpression)}(n);case 106:return Ne(!1);case 108:return function(e){2&a&&(a|=32768);if(s)return 2&a?(s.containsLexicalThis=!0,e):s.thisName||(s.thisName=l.createUniqueName("this"));return e}(n);case 228:return function(e){if(103===e.keywordToken&&"target"===e.name.escapedText)return a|=16384,l.createUniqueName("_newTarget",48);return e}(n);case 166:return function(t){e.Debug.assert(!e.isComputedPropertyName(t.name));var r=K(t,e.moveRangePos(t,-1),void 0,void 0);return e.setEmitFlags(r,512|e.getEmitFlags(r)),e.setTextRange(l.createPropertyAssignment(t.name,r),t)}(n);case 168:case 169:return function(r){e.Debug.assert(!e.isComputedPropertyName(r.name));var n=s;s=void 0;var i,a=b(16286,65),o=e.visitParameterList(r.parameters,S,t),c=W(r);i=168===r.kind?l.updateGetAccessorDeclaration(r,r.decorators,r.modifiers,r.name,o,r.type,c):l.updateSetAccessorDeclaration(r,r.decorators,r.modifiers,r.name,o,c);return k(a,49152,0),s=n,i}(n);case 234:return function(r){var n,i=b(0,e.hasSyntacticModifier(r,1)?32:0);if(!s||3&r.declarationList.flags||function(t){return 1===t.declarationList.declarations.length&&!!t.declarationList.declarations[0].initializer&&!!(33554432&e.getEmitFlags(t.declarationList.declarations[0].initializer))}(r))n=e.visitEachChild(r,S,t);else{for(var a=void 0,o=0,c=r.declarationList.declarations;o<c.length;o++){var u=c[o];if(fe(s,u),u.initializer){var d=void 0;e.isBindingPattern(u.name)?d=e.flattenDestructuringAssignment(u,S,t,0):(d=l.createBinaryExpression(u.name,62,e.visitNode(u.initializer,S,e.isExpression)),e.setTextRange(d,u)),a=e.append(a,d)}}n=a?e.setTextRange(l.createExpressionStatement(l.inlineExpressions(a)),r):void 0}return k(i,0,0),n}(n);case 244:return function(r){if(s)return s.nonLocalJumps|=8,x(r)&&(r=C(r)),l.createReturnStatement(l.createObjectLiteralExpression([l.createPropertyAssignment(l.createIdentifier("value"),r.expression?e.visitNode(r.expression,S,e.isExpression):l.createVoidZero())]));if(x(r))return C(r);return e.visitEachChild(r,S,t)}(n);default:return e.visitEachChild(n,S,t)}}function C(t){return e.setOriginalNode(l.createReturnStatement(l.createUniqueName("_this",48)),t)}function A(e){return s&&_.isArgumentsLocalBinding(e)?s.argumentsName||(s.argumentsName=l.createUniqueName("arguments")):e}function N(i){i.name&&Pe();var o=e.getClassExtendsHeritageElement(i),c=l.createFunctionExpression(void 0,void 0,void 0,void 0,o?[l.createParameterDeclaration(void 0,void 0,void 0,l.createUniqueName("_super",48))]:[],void 0,function(i,o){var c=[],m=l.getInternalName(i),g=e.isIdentifierANonContextualKeyword(m)?l.getGeneratedNameForNode(m):m;d(),function(t,r,n){n&&t.push(e.setTextRange(l.createExpressionStatement(u().createExtendsHelper(l.getInternalName(r))),n))}(c,i,o),function(r,n,i,o){var c=s;s=void 0;var u=b(16278,73),d=e.getFirstConstructorWithBody(n),m=function(t,r){if(!t||!r)return!1;if(e.some(t.parameters))return!1;var n=e.firstOrUndefined(t.body.statements);if(!n||!e.nodeIsSynthesized(n)||235!==n.kind)return!1;var i=n.expression;if(!e.nodeIsSynthesized(i)||204!==i.kind)return!1;var a=i.expression;if(!e.nodeIsSynthesized(a)||106!==a.kind)return!1;var o=e.singleOrUndefined(i.arguments);if(!o||!e.nodeIsSynthesized(o)||222!==o.kind)return!1;var s=o.expression;return e.isIdentifier(s)&&"arguments"===s.escapedText}(d,void 0!==o),g=l.createFunctionDeclaration(void 0,void 0,void 0,i,void 0,function(r,n){return e.visitParameterList(r&&!n?r.parameters:void 0,S,t)||[]}(d,m),void 0,function(t,r,n,i){var o=!!n&&104!==e.skipOuterExpressions(n.expression).kind;if(!t)return function(t,r){var n=[];p(),l.mergeLexicalEnvironment(n,f()),r&&n.push(l.createReturnStatement(F()));var i=l.createNodeArray(n);e.setTextRange(i,t.members);var a=l.createBlock(i,!0);return e.setTextRange(a,t),e.setEmitFlags(a,1536),a}(r,o);var s=[],c=[];p();var u,d=0;i||(d=l.copyStandardPrologue(t.body.statements,s,!1));R(c,t),j(c,t,i),i||(d=l.copyCustomPrologue(t.body.statements,c,d,S));if(i)u=F();else if(o&&d<t.body.statements.length){var m=t.body.statements[d];e.isExpressionStatement(m)&&e.isSuperCall(m.expression)&&(u=function(e){return Se(e,!1)}(m.expression))}u&&(a|=8192,d++);if(e.addRange(c,e.visitNodes(t.body.statements,S,e.isStatement,d)),l.mergeLexicalEnvironment(s,f()),U(s,t,!1),o)if(!u||d!==t.body.statements.length||4096&t.body.transformFlags)z(c,t,u||I()),P(t.body)||c.push(l.createReturnStatement(l.createUniqueName("_this",48)));else{var g=e.cast(e.cast(u,e.isBinaryExpression).left,e.isCallExpression),_=l.createReturnStatement(u);e.setCommentRange(_,e.getCommentRange(g)),e.setEmitFlags(g,1536),c.push(_)}else B(s,t);var h=l.createBlock(e.setTextRange(l.createNodeArray(e.concatenate(s,c)),t.body.statements),!0);return e.setTextRange(h,t.body),h}(d,n,o,m));e.setTextRange(g,d||n),o&&e.setEmitFlags(g,8);r.push(g),k(u,49152,0),s=c}(c,i,g,o),function(t,n){for(var i=0,a=n.members;i<a.length;i++){var o=a[i];switch(o.kind){case 231:t.push(q(o));break;case 166:t.push(J(Fe(n,o),o,n));break;case 168:case 169:var s=e.getAllAccessorDeclarations(n.members,o);o===s.firstAccessor&&t.push(V(Fe(n,o),s,n));break;case 167:break;default:e.Debug.failBadSyntaxKind(o,r&&r.fileName)}}}(c,i);var _=e.createTokenRange(e.skipTrivia(n,i.members.end),19),h=l.createPartiallyEmittedExpression(g);e.setTextRangeEnd(h,_.end),e.setEmitFlags(h,1536);var y=l.createReturnStatement(h);e.setTextRangePos(y,_.pos),e.setEmitFlags(y,1920),c.push(y),e.insertStatementsAfterStandardPrologue(c,f());var v=l.createBlock(e.setTextRange(l.createNodeArray(c),i.members),!0);return e.setEmitFlags(v,1536),v}(i,o));e.setEmitFlags(c,65536&e.getEmitFlags(i)|524288);var m=l.createPartiallyEmittedExpression(c);e.setTextRangeEnd(m,i.end),e.setEmitFlags(m,1536);var g=l.createPartiallyEmittedExpression(m);e.setTextRangeEnd(g,e.skipTrivia(n,i.pos)),e.setEmitFlags(g,1536);var _=l.createParenthesizedExpression(l.createCallExpression(g,void 0,o?[e.visitNode(o.expression,S,e.isExpression)]:[]));return e.addSyntheticLeadingComment(_,3,"* @class "),_}function P(t){if(244===t.kind)return!0;if(236===t.kind){var r=t;if(r.elseStatement)return P(r.thenStatement)&&P(r.elseStatement)}else if(232===t.kind){var n=e.lastOrUndefined(t.statements);if(n&&P(n))return!0}return!1}function I(){return e.setEmitFlags(l.createThis(),4)}function F(){return l.createLogicalOr(l.createLogicalAnd(l.createStrictInequality(l.createUniqueName("_super",48),l.createNull()),l.createFunctionApplyCall(l.createUniqueName("_super",48),I(),l.createIdentifier("arguments"))),I())}function O(t){return void 0!==t.initializer||e.isBindingPattern(t.name)}function R(t,r){if(!e.some(r.parameters,O))return!1;for(var n=!1,i=0,a=r.parameters;i<a.length;i++){var o=a[i],s=o.name,c=o.initializer;o.dotDotDotToken||(e.isBindingPattern(s)?n=M(t,o,s,c)||n:c&&(L(t,o,s,c),n=!0))}return n}function M(r,n,i,a){return i.elements.length>0?(e.insertStatementAfterCustomPrologue(r,e.setEmitFlags(l.createVariableStatement(void 0,l.createVariableDeclarationList(e.flattenDestructuringBinding(n,S,t,0,l.getGeneratedNameForNode(n)))),1048576)),!0):!!a&&(e.insertStatementAfterCustomPrologue(r,e.setEmitFlags(l.createExpressionStatement(l.createAssignment(l.getGeneratedNameForNode(n),e.visitNode(a,S,e.isExpression))),1048576)),!0)}function L(t,r,n,i){i=e.visitNode(i,S,e.isExpression);var a=l.createIfStatement(l.createTypeCheck(l.cloneNode(n),"undefined"),e.setEmitFlags(e.setTextRange(l.createBlock([l.createExpressionStatement(e.setEmitFlags(e.setTextRange(l.createAssignment(e.setEmitFlags(e.setParent(e.setTextRange(l.cloneNode(n),n),n.parent),48),e.setEmitFlags(i,1584|e.getEmitFlags(i))),r),1536))]),r),1953));e.startOnNewLine(a),e.setTextRange(a,r),e.setEmitFlags(a,1050528),e.insertStatementAfterCustomPrologue(t,a)}function j(r,n,i){var a=[],o=e.lastOrUndefined(n.parameters);if(!function(e,t){return!(!e||!e.dotDotDotToken||t)}(o,i))return!1;var s=78===o.name.kind?e.setParent(e.setTextRange(l.cloneNode(o.name),o.name),o.name.parent):l.createTempVariable(void 0);e.setEmitFlags(s,48);var c=78===o.name.kind?l.cloneNode(o.name):s,u=n.parameters.length-1,d=l.createLoopVariable();a.push(e.setEmitFlags(e.setTextRange(l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(s,void 0,void 0,l.createArrayLiteralExpression([]))])),o),1048576));var p=l.createForStatement(e.setTextRange(l.createVariableDeclarationList([l.createVariableDeclaration(d,void 0,void 0,l.createNumericLiteral(u))]),o),e.setTextRange(l.createLessThan(d,l.createPropertyAccessExpression(l.createIdentifier("arguments"),"length")),o),e.setTextRange(l.createPostfixIncrement(d),o),l.createBlock([e.startOnNewLine(e.setTextRange(l.createExpressionStatement(l.createAssignment(l.createElementAccessExpression(c,0===u?d:l.createSubtract(d,l.createNumericLiteral(u))),l.createElementAccessExpression(l.createIdentifier("arguments"),d))),o))]));return e.setEmitFlags(p,1048576),e.startOnNewLine(p),a.push(p),78!==o.name.kind&&a.push(e.setEmitFlags(e.setTextRange(l.createVariableStatement(void 0,l.createVariableDeclarationList(e.flattenDestructuringBinding(o,S,t,0,c))),o),1048576)),e.insertStatementsAfterCustomPrologue(r,a),!0}function B(e,t){return!!(32768&a&&210!==t.kind)&&(z(e,t,l.createThis()),!0)}function z(t,r,n){Ie();var i=l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(l.createUniqueName("_this",48),void 0,void 0,n)]));e.setEmitFlags(i,1050112),e.setSourceMapRange(i,r),e.insertStatementAfterCustomPrologue(t,i)}function U(t,r,n){if(16384&a){var i=void 0;switch(r.kind){case 210:return t;case 166:case 168:case 169:i=l.createVoidZero();break;case 167:i=l.createPropertyAccessExpression(e.setEmitFlags(l.createThis(),4),"constructor");break;case 253:case 209:i=l.createConditionalExpression(l.createLogicalAnd(e.setEmitFlags(l.createThis(),4),l.createBinaryExpression(e.setEmitFlags(l.createThis(),4),102,l.getLocalName(r))),void 0,l.createPropertyAccessExpression(e.setEmitFlags(l.createThis(),4),"constructor"),void 0,l.createVoidZero());break;default:return e.Debug.failBadSyntaxKind(r)}var o=l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(l.createUniqueName("_newTarget",48),void 0,void 0,i)]));e.setEmitFlags(o,1050112),n&&(t=t.slice()),e.insertStatementAfterCustomPrologue(t,o)}return t}function q(t){return e.setTextRange(l.createEmptyStatement(),t)}function J(r,n,i){var a,o=e.getCommentRange(n),s=e.getSourceMapRange(n),c=K(n,n,void 0,i),u=e.visitNode(n.name,S,e.isPropertyName);if(!e.isPrivateIdentifier(u)&&t.getCompilerOptions().useDefineForClassFields){var d=e.isComputedPropertyName(u)?u.expression:e.isIdentifier(u)?l.createStringLiteral(e.unescapeLeadingUnderscores(u.escapedText)):u;a=l.createObjectDefinePropertyCall(r,d,l.createPropertyDescriptor({value:c,enumerable:!1,writable:!0,configurable:!0}))}else{var p=e.createMemberAccessForPropertyName(l,r,u,n.name);a=l.createAssignment(p,c)}e.setEmitFlags(c,1536),e.setSourceMapRange(c,s);var f=e.setTextRange(l.createExpressionStatement(a),n);return e.setOriginalNode(f,n),e.setCommentRange(f,o),e.setEmitFlags(f,48),f}function V(t,r,n){var i=l.createExpressionStatement(H(t,r,n,!1));return e.setEmitFlags(i,1536),e.setSourceMapRange(i,e.getSourceMapRange(r.firstAccessor)),i}function H(t,r,n,i){var a=r.firstAccessor,o=r.getAccessor,s=r.setAccessor,c=e.setParent(e.setTextRange(l.cloneNode(t),t),t.parent);e.setEmitFlags(c,1568),e.setSourceMapRange(c,a.name);var u=e.visitNode(a.name,S,e.isPropertyName);if(e.isPrivateIdentifier(u))return e.Debug.failBadSyntaxKind(u,"Encountered unhandled private identifier while transforming ES2015.");var d=e.createExpressionForPropertyName(l,u);e.setEmitFlags(d,1552),e.setSourceMapRange(d,a.name);var p=[];if(o){var f=K(o,void 0,void 0,n);e.setSourceMapRange(f,e.getSourceMapRange(o)),e.setEmitFlags(f,512);var m=l.createPropertyAssignment("get",f);e.setCommentRange(m,e.getCommentRange(o)),p.push(m)}if(s){var g=K(s,void 0,void 0,n);e.setSourceMapRange(g,e.getSourceMapRange(s)),e.setEmitFlags(g,512);var _=l.createPropertyAssignment("set",g);e.setCommentRange(_,e.getCommentRange(s)),p.push(_)}p.push(l.createPropertyAssignment("enumerable",o||s?l.createFalse():l.createTrue()),l.createPropertyAssignment("configurable",l.createTrue()));var h=l.createCallExpression(l.createPropertyAccessExpression(l.createIdentifier("Object"),"defineProperty"),void 0,[c,d,l.createObjectLiteralExpression(p,!0)]);return i&&e.startOnNewLine(h),h}function K(r,n,i,o){var c=s;s=void 0;var u=o&&e.isClassLike(o)&&!e.hasSyntacticModifier(r,32)?b(16286,73):b(16286,65),d=e.visitParameterList(r.parameters,S,t),p=W(r);return 16384&a&&!i&&(253===r.kind||209===r.kind)&&(i=l.getGeneratedNameForNode(r)),k(u,49152,0),s=c,e.setOriginalNode(e.setTextRange(l.createFunctionExpression(void 0,r.asteriskToken,i,void 0,d,void 0,p),n),r)}function W(t){var n,i,a,o=!1,s=!1,c=[],u=[],d=t.body;if(p(),e.isBlock(d)&&(a=l.copyStandardPrologue(d.statements,c,!1),a=l.copyCustomPrologue(d.statements,u,a,S,e.isHoistedFunction),a=l.copyCustomPrologue(d.statements,u,a,S,e.isHoistedVariableStatement)),o=R(u,t)||o,o=j(u,t,!1)||o,e.isBlock(d))a=l.copyCustomPrologue(d.statements,u,a,S),n=d.statements,e.addRange(u,e.visitNodes(d.statements,S,e.isStatement,a)),!o&&d.multiLine&&(o=!0);else{e.Debug.assert(210===t.kind),n=e.moveRangeEnd(d,-1);var m=t.equalsGreaterThanToken;e.nodeIsSynthesized(m)||e.nodeIsSynthesized(d)||(e.rangeEndIsOnSameLineAsRangeStart(m,d,r)?s=!0:o=!0);var g=e.visitNode(d,S,e.isExpression),_=l.createReturnStatement(g);e.setTextRange(_,d),e.moveSyntheticComments(_,d),e.setEmitFlags(_,1440),u.push(_),i=d}if(l.mergeLexicalEnvironment(c,f()),U(c,t,!1),B(c,t),e.some(c)&&(o=!0),u.unshift.apply(u,c),e.isBlock(d)&&e.arrayIsEqualTo(u,d.statements))return d;var h=l.createBlock(e.setTextRange(l.createNodeArray(u),n),o);return e.setTextRange(h,t.body),!o&&s&&e.setEmitFlags(h,1),i&&e.setTokenSourceMapRange(h,19,i),e.setOriginalNode(h,t.body),h}function G(r,n){return e.isDestructuringAssignment(r)?e.flattenDestructuringAssignment(r,S,t,0,!n):27===r.operatorToken.kind?l.updateBinaryExpression(r,e.visitNode(r.left,D,e.isExpression),r.operatorToken,e.visitNode(r.right,n?D:S,e.isExpression)):e.visitEachChild(r,S,t)}function $(r){var n=r.name;return e.isBindingPattern(n)?Y(r):!r.initializer&&function(e){var t=_.getNodeCheckFlags(e),r=262144&t,n=524288&t;return!(64&a||r&&n&&512&a)&&!(4096&a)&&(!_.isDeclarationWithCollidingName(e)||n&&!r&&!(6144&a))}(r)?l.updateVariableDeclaration(r,r.name,void 0,void 0,l.createVoidZero()):e.visitEachChild(r,S,t)}function Y(r){var n,i=b(32,0);return n=e.isBindingPattern(r.name)?e.flattenDestructuringBinding(r,S,t,0,void 0,!!(32&i)):e.visitEachChild(r,S,t),k(i,0,0),n}function X(t){s.labels.set(e.idText(t.label),!0)}function Q(t){s.labels.set(e.idText(t.label),!1)}function Z(r,n,i,o,c){var u=b(r,n),p=function(r,n,i,o){if(!de(r)){var c=void 0;s&&(c=s.allowedNonLabeledJumps,s.allowedNonLabeledJumps=6);var u=o?o(r,n,void 0,i):l.restoreEnclosingLabel(e.isForStatement(r)?function(t){return l.updateForStatement(t,e.visitNode(t.initializer,D,e.isForInitializer),e.visitNode(t.condition,S,e.isExpression),e.visitNode(t.incrementor,D,e.isExpression),e.visitNode(t.statement,S,e.isStatement,l.liftToBlock))}(r):e.visitEachChild(r,S,t),n,s&&Q);return s&&(s.allowedNonLabeledJumps=c),u}var p=function(t){var r;switch(t.kind){case 239:case 240:case 241:var n=t.initializer;n&&252===n.kind&&(r=n)}var i=[],a=[];if(r&&3&e.getCombinedNodeFlags(r))for(var o=le(t),c=0,l=r.declarations;c<l.length;c++){be(t,l[c],i,a,o)}var u={loopParameters:i,loopOutParameters:a};s&&(s.argumentsName&&(u.argumentsName=s.argumentsName),s.thisName&&(u.thisName=s.thisName),s.hoistedLocalVariables&&(u.hoistedLocalVariables=s.hoistedLocalVariables));return u}(r),m=[],g=s;s=p;var _,h=le(r)?function(t,r){var n=l.createUniqueName("_loop_init"),i=!!(262144&t.initializer.transformFlags),o=0;r.containsLexicalThis&&(o|=8);i&&4&a&&(o|=262144);var s=[];s.push(l.createVariableStatement(void 0,t.initializer)),he(r.loopOutParameters,2,1,s);var c=l.createVariableStatement(void 0,e.setEmitFlags(l.createVariableDeclarationList([l.createVariableDeclaration(n,void 0,void 0,e.setEmitFlags(l.createFunctionExpression(void 0,i?l.createToken(41):void 0,void 0,void 0,void 0,void 0,e.visitNode(l.createBlock(s,!0),S,e.isBlock)),o))]),2097152)),u=l.createVariableDeclarationList(e.map(r.loopOutParameters,ge));return{functionName:n,containsYield:i,functionDeclaration:c,part:u}}(r,p):void 0,y=pe(r)?function(t,r,n){var i=l.createUniqueName("_loop");d();var o=e.visitNode(t.statement,S,e.isStatement,l.liftToBlock),s=f(),c=[];(ue(t)||function(t){return e.isForStatement(t)&&!!t.incrementor&&ce(t.incrementor)}(t))&&(r.conditionVariable=l.createUniqueName("inc"),t.incrementor?c.push(l.createIfStatement(r.conditionVariable,l.createExpressionStatement(e.visitNode(t.incrementor,S,e.isExpression)),l.createExpressionStatement(l.createAssignment(r.conditionVariable,l.createTrue())))):c.push(l.createIfStatement(l.createLogicalNot(r.conditionVariable),l.createExpressionStatement(l.createAssignment(r.conditionVariable,l.createTrue())))),ue(t)&&c.push(l.createIfStatement(l.createPrefixUnaryExpression(53,e.visitNode(t.condition,S,e.isExpression)),e.visitNode(l.createBreakStatement(),S,e.isStatement))));e.isBlock(o)?e.addRange(c,o.statements):c.push(o);he(r.loopOutParameters,1,1,c),e.insertStatementsAfterStandardPrologue(c,s);var u=l.createBlock(c,!0);e.isBlock(o)&&e.setOriginalNode(u,o);var p=!!(262144&t.statement.transformFlags),m=524288;r.containsLexicalThis&&(m|=8);p&&4&a&&(m|=262144);var g=l.createVariableStatement(void 0,e.setEmitFlags(l.createVariableDeclarationList([l.createVariableDeclaration(i,void 0,void 0,e.setEmitFlags(l.createFunctionExpression(void 0,p?l.createToken(41):void 0,void 0,void 0,r.loopParameters,void 0,u),m))]),2097152)),_=function(t,r,n,i){var a=[],o=!(-5&r.nonLocalJumps||r.labeledNonLocalBreaks||r.labeledNonLocalContinues),s=l.createCallExpression(t,void 0,e.map(r.loopParameters,(function(e){return e.name}))),c=i?l.createYieldExpression(l.createToken(41),e.setEmitFlags(s,8388608)):s;if(o)a.push(l.createExpressionStatement(c)),he(r.loopOutParameters,1,0,a);else{var u=l.createUniqueName("state"),d=l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(u,void 0,void 0,c)]));if(a.push(d),he(r.loopOutParameters,1,0,a),8&r.nonLocalJumps){var p=void 0;n?(n.nonLocalJumps|=8,p=l.createReturnStatement(u)):p=l.createReturnStatement(l.createPropertyAccessExpression(u,"value")),a.push(l.createIfStatement(l.createTypeCheck(u,"object"),p))}if(2&r.nonLocalJumps&&a.push(l.createIfStatement(l.createStrictEquality(u,l.createStringLiteral("break")),l.createBreakStatement())),r.labeledNonLocalBreaks||r.labeledNonLocalContinues){var f=[];ve(r.labeledNonLocalBreaks,!0,u,n,f),ve(r.labeledNonLocalContinues,!1,u,n,f),a.push(l.createSwitchStatement(u,l.createCaseBlock(f)))}}return a}(i,r,n,p);return{functionName:i,containsYield:p,functionDeclaration:g,part:_}}(r,p,g):void 0;s=g,h&&m.push(h.functionDeclaration);y&&m.push(y.functionDeclaration);(function(e,t,r){var n;t.argumentsName&&(r?r.argumentsName=t.argumentsName:(n||(n=[])).push(l.createVariableDeclaration(t.argumentsName,void 0,void 0,l.createIdentifier("arguments"))));t.thisName&&(r?r.thisName=t.thisName:(n||(n=[])).push(l.createVariableDeclaration(t.thisName,void 0,void 0,l.createIdentifier("this"))));if(t.hoistedLocalVariables)if(r)r.hoistedLocalVariables=t.hoistedLocalVariables;else{n||(n=[]);for(var i=0,a=t.hoistedLocalVariables;i<a.length;i++){var o=a[i];n.push(l.createVariableDeclaration(o))}}if(t.loopOutParameters.length){n||(n=[]);for(var s=0,c=t.loopOutParameters;s<c.length;s++){var u=c[s];n.push(l.createVariableDeclaration(u.outParamName))}}t.conditionVariable&&(n||(n=[]),n.push(l.createVariableDeclaration(t.conditionVariable,void 0,void 0,l.createFalse())));n&&e.push(l.createVariableStatement(void 0,l.createVariableDeclarationList(n)))})(m,p,g),h&&m.push((v=h.functionName,b=h.containsYield,k=l.createCallExpression(v,void 0,[]),x=b?l.createYieldExpression(l.createToken(41),e.setEmitFlags(k,8388608)):k,l.createExpressionStatement(x)));var v,b,k,x;if(y)if(o)_=o(r,n,y.part,i);else{var E=me(r,h,l.createBlock(y.part,!0));_=l.restoreEnclosingLabel(E,n,s&&Q)}else{var w=me(r,h,e.visitNode(r.statement,S,e.isStatement,l.liftToBlock));_=l.restoreEnclosingLabel(w,n,s&&Q)}return m.push(_),m}(i,o,u,c);return k(u,0,0),p}function ee(e,t){return Z(0,1280,e,t)}function te(e,t){return Z(5056,3328,e,t)}function re(e,t){return Z(3008,5376,e,t)}function ne(e,t){return Z(3008,5376,e,t,g.downlevelIteration?se:oe)}function ie(r,n,i){var a=[],o=r.initializer;if(e.isVariableDeclarationList(o)){3&r.initializer.flags&&Pe();var s=e.firstOrUndefined(o.declarations);if(s&&e.isBindingPattern(s.name)){var c=e.flattenDestructuringBinding(s,S,t,0,n),u=e.setTextRange(l.createVariableDeclarationList(c),r.initializer);e.setOriginalNode(u,r.initializer),e.setSourceMapRange(u,e.createRange(c[0].pos,e.last(c).end)),a.push(l.createVariableStatement(void 0,u))}else a.push(e.setTextRange(l.createVariableStatement(void 0,e.setOriginalNode(e.setTextRange(l.createVariableDeclarationList([l.createVariableDeclaration(s?s.name:l.createTempVariable(void 0),void 0,void 0,n)]),e.moveRangePos(o,-1)),o)),e.moveRangeEnd(o,-1)))}else{var d=l.createAssignment(o,n);e.isDestructuringAssignment(d)?a.push(l.createExpressionStatement(G(d,!0))):(e.setTextRangeEnd(d,o.end),a.push(e.setTextRange(l.createExpressionStatement(e.visitNode(d,S,e.isExpression)),e.moveRangeEnd(o,-1))))}if(i)return ae(e.addRange(a,i));var p=e.visitNode(r.statement,S,e.isStatement,l.liftToBlock);return e.isBlock(p)?l.updateBlock(p,e.setTextRange(l.createNodeArray(e.concatenate(a,p.statements)),p.statements)):(a.push(p),ae(a))}function ae(t){return e.setEmitFlags(l.createBlock(l.createNodeArray(t),!0),432)}function oe(t,r,n){var i=e.visitNode(t.expression,S,e.isExpression),a=l.createLoopVariable(),o=e.isIdentifier(i)?l.getGeneratedNameForNode(i):l.createTempVariable(void 0);e.setEmitFlags(i,48|e.getEmitFlags(i));var c=e.setTextRange(l.createForStatement(e.setEmitFlags(e.setTextRange(l.createVariableDeclarationList([e.setTextRange(l.createVariableDeclaration(a,void 0,void 0,l.createNumericLiteral(0)),e.moveRangePos(t.expression,-1)),e.setTextRange(l.createVariableDeclaration(o,void 0,void 0,i),t.expression)]),t.expression),2097152),e.setTextRange(l.createLessThan(a,l.createPropertyAccessExpression(o,"length")),t.expression),e.setTextRange(l.createPostfixIncrement(a),t.expression),ie(t,l.createElementAccessExpression(o,a),n)),t);return e.setEmitFlags(c,256),e.setTextRange(c,t),l.restoreEnclosingLabel(c,r,s&&Q)}function se(t,r,n,i){var a=e.visitNode(t.expression,S,e.isExpression),o=e.isIdentifier(a)?l.getGeneratedNameForNode(a):l.createTempVariable(void 0),c=e.isIdentifier(a)?l.getGeneratedNameForNode(o):l.createTempVariable(void 0),d=l.createUniqueName("e"),p=l.getGeneratedNameForNode(d),f=l.createTempVariable(void 0),g=e.setTextRange(u().createValuesHelper(a),t.expression),_=l.createCallExpression(l.createPropertyAccessExpression(o,"next"),void 0,[]);m(d),m(f);var h=1024&i?l.inlineExpressions([l.createAssignment(d,l.createVoidZero()),g]):g,y=e.setEmitFlags(e.setTextRange(l.createForStatement(e.setEmitFlags(e.setTextRange(l.createVariableDeclarationList([e.setTextRange(l.createVariableDeclaration(o,void 0,void 0,h),t.expression),l.createVariableDeclaration(c,void 0,void 0,_)]),t.expression),2097152),l.createLogicalNot(l.createPropertyAccessExpression(c,"done")),l.createAssignment(c,_),ie(t,l.createPropertyAccessExpression(c,"value"),n)),t),256);return l.createTryStatement(l.createBlock([l.restoreEnclosingLabel(y,r,s&&Q)]),l.createCatchClause(l.createVariableDeclaration(p),e.setEmitFlags(l.createBlock([l.createExpressionStatement(l.createAssignment(d,l.createObjectLiteralExpression([l.createPropertyAssignment("error",p)])))]),1)),l.createBlock([l.createTryStatement(l.createBlock([e.setEmitFlags(l.createIfStatement(l.createLogicalAnd(l.createLogicalAnd(c,l.createLogicalNot(l.createPropertyAccessExpression(c,"done"))),l.createAssignment(f,l.createPropertyAccessExpression(o,"return"))),l.createExpressionStatement(l.createFunctionCallCall(f,o,[]))),1)]),void 0,e.setEmitFlags(l.createBlock([e.setEmitFlags(l.createIfStatement(d,l.createThrowStatement(l.createPropertyAccessExpression(d,"error"))),1)]),1))]))}function ce(e){return!!(131072&_.getNodeCheckFlags(e))}function le(t){return e.isForStatement(t)&&!!t.initializer&&ce(t.initializer)}function ue(t){return e.isForStatement(t)&&!!t.condition&&ce(t.condition)}function de(e){return pe(e)||le(e)}function pe(e){return!!(65536&_.getNodeCheckFlags(e))}function fe(t,r){t.hoistedLocalVariables||(t.hoistedLocalVariables=[]),function r(n){if(78===n.kind)t.hoistedLocalVariables.push(n);else for(var i=0,a=n.elements;i<a.length;i++){var o=a[i];e.isOmittedExpression(o)||r(o.name)}}(r.name)}function me(t,r,n){switch(t.kind){case 239:return function(t,r,n){var i=t.condition&&ce(t.condition),a=i||t.incrementor&&ce(t.incrementor);return l.updateForStatement(t,e.visitNode(r?r.part:t.initializer,D,e.isForInitializer),e.visitNode(i?void 0:t.condition,S,e.isExpression),e.visitNode(a?void 0:t.incrementor,D,e.isExpression),n)}(t,r,n);case 240:return function(t,r){return l.updateForInStatement(t,e.visitNode(t.initializer,S,e.isForInitializer),e.visitNode(t.expression,S,e.isExpression),r)}(t,n);case 241:return function(t,r){return l.updateForOfStatement(t,void 0,e.visitNode(t.initializer,S,e.isForInitializer),e.visitNode(t.expression,S,e.isExpression),r)}(t,n);case 237:return function(t,r){return l.updateDoStatement(t,r,e.visitNode(t.expression,S,e.isExpression))}(t,n);case 238:return function(t,r){return l.updateWhileStatement(t,e.visitNode(t.expression,S,e.isExpression),r)}(t,n);default:return e.Debug.failBadSyntaxKind(t,"IterationStatement expected")}}function ge(e){return l.createVariableDeclaration(e.originalName,void 0,void 0,e.outParamName)}function _e(e,t){var r=0===t?e.outParamName:e.originalName,n=0===t?e.originalName:e.outParamName;return l.createBinaryExpression(n,62,r)}function he(e,t,r,n){for(var i=0,a=e;i<a.length;i++){var o=a[i];o.flags&t&&n.push(l.createExpressionStatement(_e(o,r)))}}function ye(t,r,n,i){r?(t.labeledNonLocalBreaks||(t.labeledNonLocalBreaks=new e.Map),t.labeledNonLocalBreaks.set(n,i)):(t.labeledNonLocalContinues||(t.labeledNonLocalContinues=new e.Map),t.labeledNonLocalContinues.set(n,i))}function ve(e,t,r,n,i){e&&e.forEach((function(e,a){var o=[];if(!n||n.labels&&n.labels.get(a)){var s=l.createIdentifier(a);o.push(t?l.createBreakStatement(s):l.createContinueStatement(s))}else ye(n,t,a,e),o.push(l.createReturnStatement(r));i.push(l.createCaseClause(l.createStringLiteral(e),o))}))}function be(t,r,n,i,a){var o=r.name;if(e.isBindingPattern(o))for(var s=0,c=o.elements;s<c.length;s++){var u=c[s];e.isOmittedExpression(u)||be(t,u,n,i,a)}else{n.push(l.createParameterDeclaration(void 0,void 0,void 0,o));var d=_.getNodeCheckFlags(r);if(4194304&d||a){var p=l.createUniqueName("out_"+e.idText(o)),f=0;4194304&d&&(f|=1),e.isForStatement(t)&&t.initializer&&_.isBindingCapturedByNode(t.initializer,r)&&(f|=2),i.push({flags:f,originalName:o,outParamName:p})}}}function ke(t,r,n){var i=l.createAssignment(e.createMemberAccessForPropertyName(l,r,e.visitNode(t.name,S,e.isPropertyName)),e.visitNode(t.initializer,S,e.isExpression));return e.setTextRange(i,t),n&&e.startOnNewLine(i),i}function xe(t,r,n){var i=l.createAssignment(e.createMemberAccessForPropertyName(l,r,e.visitNode(t.name,S,e.isPropertyName)),l.cloneNode(t.name));return e.setTextRange(i,t),n&&e.startOnNewLine(i),i}function Ee(t,r,n,i){var a=l.createAssignment(e.createMemberAccessForPropertyName(l,r,e.visitNode(t.name,S,e.isPropertyName)),K(t,t,void 0,n));return e.setTextRange(a,t),i&&e.startOnNewLine(a),a}function Se(r,n){if(8192&r.transformFlags||106===r.expression.kind||e.isSuperProperty(e.skipOuterExpressions(r.expression))){var i=l.createCallBinding(r.expression,m),a=i.target,o=i.thisArg;106===r.expression.kind&&e.setEmitFlags(o,4);var s=void 0;if(s=8192&r.transformFlags?l.createFunctionApplyCall(e.visitNode(a,w,e.isExpression),106===r.expression.kind?o:e.visitNode(o,S,e.isExpression),De(r.arguments,!1,!1,!1)):e.setTextRange(l.createFunctionCallCall(e.visitNode(a,w,e.isExpression),106===r.expression.kind?o:e.visitNode(o,S,e.isExpression),e.visitNodes(r.arguments,S,e.isExpression)),r),106===r.expression.kind){var c=l.createLogicalOr(s,I());s=n?l.createAssignment(l.createUniqueName("_this",48),c):c}return e.setOriginalNode(s,r)}return e.visitEachChild(r,S,t)}function De(t,r,n,i){var a=t.length,o=e.flatten(e.spanMap(t,we,(function(e,t,r,o){return t(e,n,i&&o===a)})));if(1===o.length){var s=o[0];if(!r&&!g.downlevelIteration||e.isPackedArrayLiteral(s)||e.isCallToHelper(s,"___spreadArray"))return o[0]}for(var c=u(),d=e.isSpreadElement(t[0]),p=d?l.createArrayLiteralExpression():o[0],f=d?0:1;f<o.length;f++)p=c.createSpreadArrayHelper(p,g.downlevelIteration&&!e.isPackedArrayLiteral(o[f])?c.createReadHelper(o[f],void 0):o[f]);return p}function we(t){return e.isSpreadElement(t)?Te:Ce}function Te(t){return e.map(t,Ae)}function Ce(t,r,n){return l.createArrayLiteralExpression(e.visitNodes(l.createNodeArray(t,n),S,e.isExpression),r)}function Ae(t){return e.visitNode(t.expression,S,e.isExpression)}function Ne(e){return 8&a&&!e?l.createPropertyAccessExpression(l.createUniqueName("_super",48),"prototype"):l.createUniqueName("_super",48)}function Pe(){2&c||(c|=2,t.enableSubstitution(78))}function Ie(){1&c||(c|=1,t.enableSubstitution(108),t.enableEmitNotification(167),t.enableEmitNotification(166),t.enableEmitNotification(168),t.enableEmitNotification(169),t.enableEmitNotification(210),t.enableEmitNotification(209),t.enableEmitNotification(253))}function Fe(t,r){return e.hasSyntacticModifier(r,32)?l.getInternalName(t):l.createPropertyAccessExpression(l.getInternalName(t),"prototype")}}}(d||(d={})),function(e){e.transformES5=function(t){var r,n,i=t.factory,a=t.getCompilerOptions();1!==a.jsx&&3!==a.jsx||(r=t.onEmitNode,t.onEmitNode=function(t,i,a){switch(i.kind){case 278:case 279:case 277:var o=i.tagName;n[e.getOriginalNodeId(o)]=!0}r(t,i,a)},t.enableEmitNotification(278),t.enableEmitNotification(279),t.enableEmitNotification(277),n=[]);var o=t.onSubstituteNode;return t.onSubstituteNode=function(t,r){if(r.id&&n&&n[r.id])return o(t,r);if(r=o(t,r),e.isPropertyAccessExpression(r))return function(t){if(e.isPrivateIdentifier(t.name))return t;var r=s(t.name);if(r)return e.setTextRange(i.createElementAccessExpression(t.expression,r),t);return t}(r);if(e.isPropertyAssignment(r))return function(t){var r=e.isIdentifier(t.name)&&s(t.name);if(r)return i.updatePropertyAssignment(t,r,t.initializer);return t}(r);return r},t.enableSubstitution(202),t.enableSubstitution(291),e.chainBundle(t,(function(e){return e}));function s(t){var r=t.originalKeywordKind||(e.nodeIsSynthesized(t)?e.stringToToken(e.idText(t)):void 0);if(void 0!==r&&r>=80&&r<=116)return e.setTextRange(i.createStringLiteralFromNode(t),t)}}}(d||(d={})),function(e){var t,r,n,a,o;!function(e){e[e.Nop=0]="Nop",e[e.Statement=1]="Statement",e[e.Assign=2]="Assign",e[e.Break=3]="Break",e[e.BreakWhenTrue=4]="BreakWhenTrue",e[e.BreakWhenFalse=5]="BreakWhenFalse",e[e.Yield=6]="Yield",e[e.YieldStar=7]="YieldStar",e[e.Return=8]="Return",e[e.Throw=9]="Throw",e[e.Endfinally=10]="Endfinally"}(t||(t={})),function(e){e[e.Open=0]="Open",e[e.Close=1]="Close"}(r||(r={})),function(e){e[e.Exception=0]="Exception",e[e.With=1]="With",e[e.Switch=2]="Switch",e[e.Loop=3]="Loop",e[e.Labeled=4]="Labeled"}(n||(n={})),function(e){e[e.Try=0]="Try",e[e.Catch=1]="Catch",e[e.Finally=2]="Finally",e[e.Done=3]="Done"}(a||(a={})),function(e){e[e.Next=0]="Next",e[e.Throw=1]="Throw",e[e.Return=2]="Return",e[e.Break=3]="Break",e[e.Yield=4]="Yield",e[e.YieldStar=5]="YieldStar",e[e.Catch=6]="Catch",e[e.Endfinally=7]="Endfinally"}(o||(o={})),e.transformGenerators=function(t){var r,n,a,o,s,c,l,u,d,p,f=t.factory,m=t.getEmitHelperFactory,g=t.resumeLexicalEnvironment,_=t.endLexicalEnvironment,h=t.hoistFunctionDeclaration,y=t.hoistVariableDeclaration,v=t.getCompilerOptions(),b=e.getEmitScriptTarget(v),k=t.getEmitResolver(),x=t.onSubstituteNode;t.onSubstituteNode=function(t,i){if(i=x(t,i),1===t)return function(t){if(e.isIdentifier(t))return function(t){if(!e.isGeneratedIdentifier(t)&&r&&r.has(e.idText(t))){var i=e.getOriginalNode(t);if(e.isIdentifier(i)&&i.parent){var a=k.getReferencedValueDeclaration(i);if(a){var o=n[e.getOriginalNodeId(a)];if(o){var s=e.setParent(e.setTextRange(f.cloneNode(o),o),o.parent);return e.setSourceMapRange(s,t),e.setCommentRange(s,t),s}}}}return t}(t);return t}(i);return i};var E,S,D,w,T,C,A,N,P,I,F,O,R=1,M=0,L=0;return e.chainBundle(t,(function(r){if(r.isDeclarationFile||!(512&r.transformFlags))return r;var n=e.visitEachChild(r,j,t);return e.addEmitHelpers(n,t.readEmitHelpers()),n}));function j(r){var n=r.transformFlags;return o?function(r){switch(r.kind){case 237:case 238:return function(r){return o?(oe(),r=e.visitEachChild(r,j,t),ce(),r):e.visitEachChild(r,j,t)}(r);case 246:return function(r){o&&re({kind:2,isScript:!0,breakLabel:-1});r=e.visitEachChild(r,j,t),o&&le();return r}(r);case 247:return function(r){o&&re({kind:4,isScript:!0,labelText:e.idText(r.label),breakLabel:-1});r=e.visitEachChild(r,j,t),o&&ue();return r}(r);default:return B(r)}}(r):a?B(r):e.isFunctionLikeDeclaration(r)&&r.asteriskToken?function(t){switch(t.kind){case 253:return z(t);case 209:return U(t);default:return e.Debug.failBadSyntaxKind(t)}}(r):512&n?e.visitEachChild(r,j,t):r}function B(r){switch(r.kind){case 253:return z(r);case 209:return U(r);case 168:case 169:return function(r){var n=a,i=o;return a=!1,o=!1,r=e.visitEachChild(r,j,t),a=n,o=i,r}(r);case 234:return function(t){if(262144&t.transformFlags)return void G(t.declarationList);if(1048576&e.getEmitFlags(t))return t;for(var r=0,n=t.declarationList.declarations;r<n.length;r++){var i=n[r];y(i.name)}var a=e.getInitializedVariables(t.declarationList);if(0===a.length)return;return e.setSourceMapRange(f.createExpressionStatement(f.inlineExpressions(e.map(a,$))),t)}(r);case 239:return function(r){o&&oe();var n=r.initializer;if(n&&e.isVariableDeclarationList(n)){for(var i=0,a=n.declarations;i<a.length;i++){var s=a[i];y(s.name)}var c=e.getInitializedVariables(n);r=f.updateForStatement(r,c.length>0?f.inlineExpressions(e.map(c,$)):void 0,e.visitNode(r.condition,j,e.isExpression),e.visitNode(r.incrementor,j,e.isExpression),e.visitNode(r.statement,j,e.isStatement,f.liftToBlock))}else r=e.visitEachChild(r,j,t);o&&ce();return r}(r);case 240:return function(r){o&&oe();var n=r.initializer;if(e.isVariableDeclarationList(n)){for(var i=0,a=n.declarations;i<a.length;i++){var s=a[i];y(s.name)}r=f.updateForInStatement(r,n.declarations[0].name,e.visitNode(r.expression,j,e.isExpression),e.visitNode(r.statement,j,e.isStatement,f.liftToBlock))}else r=e.visitEachChild(r,j,t);o&&ce();return r}(r);case 243:return function(r){if(o){var n=ge(r.label&&e.idText(r.label));if(n>0)return ve(n,r)}return e.visitEachChild(r,j,t)}(r);case 242:return function(r){if(o){var n=_e(r.label&&e.idText(r.label));if(n>0)return ve(n,r)}return e.visitEachChild(r,j,t)}(r);case 244:return function(t){return r=e.visitNode(t.expression,j,e.isExpression),n=t,e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression(r?[ye(2),r]:[ye(2)])),n);var r,n}(r);default:return 262144&r.transformFlags?function(r){switch(r.kind){case 218:return function(r){var n=e.getExpressionAssociativity(r);switch(n){case 0:return function(r){if(Y(r.right))return e.isLogicalOperator(r.operatorToken.kind)?function(t){var r=ee(),n=Z();xe(n,e.visitNode(t.left,j,e.isExpression),t.left),55===t.operatorToken.kind?De(r,n,t.left):Se(r,n,t.left);return xe(n,e.visitNode(t.right,j,e.isExpression),t.right),te(r),n}(r):27===r.operatorToken.kind?J(r):f.updateBinaryExpression(r,Q(e.visitNode(r.left,j,e.isExpression)),r.operatorToken,e.visitNode(r.right,j,e.isExpression));return e.visitEachChild(r,j,t)}(r);case 1:return function(r){var n=r.left,i=r.right;if(Y(i)){var a=void 0;switch(n.kind){case 202:a=f.updatePropertyAccessExpression(n,Q(e.visitNode(n.expression,j,e.isLeftHandSideExpression)),n.name);break;case 203:a=f.updateElementAccessExpression(n,Q(e.visitNode(n.expression,j,e.isLeftHandSideExpression)),Q(e.visitNode(n.argumentExpression,j,e.isExpression)));break;default:a=e.visitNode(n,j,e.isExpression)}var o=r.operatorToken.kind;return e.isCompoundAssignment(o)?e.setTextRange(f.createAssignment(a,e.setTextRange(f.createBinaryExpression(Q(a),e.getNonAssignmentOperatorForCompoundAssignment(o),e.visitNode(i,j,e.isExpression)),r)),r):f.updateBinaryExpression(r,a,r.operatorToken,e.visitNode(i,j,e.isExpression))}return e.visitEachChild(r,j,t)}(r);default:return e.Debug.assertNever(n)}}(r);case 340:return function(t){for(var r=[],n=0,i=t.elements;n<i.length;n++){var a=i[n];e.isBinaryExpression(a)&&27===a.operatorToken.kind?r.push(J(a)):(Y(a)&&r.length>0&&(we(1,[f.createExpressionStatement(f.inlineExpressions(r))]),r=[]),r.push(e.visitNode(a,j,e.isExpression)))}return f.inlineExpressions(r)}(r);case 219:return function(r){if(Y(r.whenTrue)||Y(r.whenFalse)){var n=ee(),i=ee(),a=Z();return De(n,e.visitNode(r.condition,j,e.isExpression),r.condition),xe(a,e.visitNode(r.whenTrue,j,e.isExpression),r.whenTrue),Ee(i),te(n),xe(a,e.visitNode(r.whenFalse,j,e.isExpression),r.whenFalse),te(i),a}return e.visitEachChild(r,j,t)}(r);case 221:return function(t){var r=ee(),n=e.visitNode(t.expression,j,e.isExpression);if(t.asteriskToken){!function(e,t){we(7,[e],t)}(8388608&e.getEmitFlags(t.expression)?n:e.setTextRange(m().createValuesHelper(n),t),t)}else!function(e,t){we(6,[e],t)}(n,t);return te(r),function(t){return e.setTextRange(f.createCallExpression(f.createPropertyAccessExpression(w,"sent"),void 0,[]),t)}(t)}(r);case 200:return function(e){return V(e.elements,void 0,void 0,e.multiLine)}(r);case 201:return function(t){var r=t.properties,n=t.multiLine,i=X(r),a=Z();xe(a,f.createObjectLiteralExpression(e.visitNodes(r,j,e.isObjectLiteralElementLike,0,i),n));var o=e.reduceLeft(r,s,[],i);return o.push(n?e.startOnNewLine(e.setParent(e.setTextRange(f.cloneNode(a),a),a.parent)):a),f.inlineExpressions(o);function s(r,i){Y(i)&&r.length>0&&(ke(f.createExpressionStatement(f.inlineExpressions(r))),r=[]);var o=e.createExpressionForObjectLiteralElementLike(f,t,i,a),s=e.visitNode(o,j,e.isExpression);return s&&(n&&e.startOnNewLine(s),r.push(s)),r}}(r);case 203:return function(r){if(Y(r.argumentExpression))return f.updateElementAccessExpression(r,Q(e.visitNode(r.expression,j,e.isLeftHandSideExpression)),e.visitNode(r.argumentExpression,j,e.isExpression));return e.visitEachChild(r,j,t)}(r);case 204:return function(r){if(!e.isImportCall(r)&&e.forEach(r.arguments,Y)){var n=f.createCallBinding(r.expression,y,b,!0),i=n.target,a=n.thisArg;return e.setOriginalNode(e.setTextRange(f.createFunctionApplyCall(Q(e.visitNode(i,j,e.isLeftHandSideExpression)),a,V(r.arguments)),r),r)}return e.visitEachChild(r,j,t)}(r);case 205:return function(r){if(e.forEach(r.arguments,Y)){var n=f.createCallBinding(f.createPropertyAccessExpression(r.expression,"bind"),y),i=n.target,a=n.thisArg;return e.setOriginalNode(e.setTextRange(f.createNewExpression(f.createFunctionApplyCall(Q(e.visitNode(i,j,e.isExpression)),a,V(r.arguments,f.createVoidZero())),void 0,[]),r),r)}return e.visitEachChild(r,j,t)}(r);default:return e.visitEachChild(r,j,t)}}(r):1049088&r.transformFlags?e.visitEachChild(r,j,t):r}}function z(r){if(r.asteriskToken)r=e.setOriginalNode(e.setTextRange(f.createFunctionDeclaration(void 0,r.modifiers,void 0,r.name,void 0,e.visitParameterList(r.parameters,j,t),void 0,q(r.body)),r),r);else{var n=a,i=o;a=!1,o=!1,r=e.visitEachChild(r,j,t),a=n,o=i}return a?void h(r):r}function U(r){if(r.asteriskToken)r=e.setOriginalNode(e.setTextRange(f.createFunctionExpression(void 0,void 0,r.name,void 0,e.visitParameterList(r.parameters,j,t),void 0,q(r.body)),r),r);else{var n=a,i=o;a=!1,o=!1,r=e.visitEachChild(r,j,t),a=n,o=i}return r}function q(t){var r=[],n=a,i=o,m=s,h=c,y=l,v=u,b=d,k=p,x=R,T=E,C=S,A=D,N=w;a=!0,o=!1,s=void 0,c=void 0,l=void 0,u=void 0,d=void 0,p=void 0,R=1,E=void 0,S=void 0,D=void 0,w=f.createTempVariable(void 0),g();var P=f.copyPrologue(t.statements,r,!1,j);H(t.statements,P);var I=Te();return e.insertStatementsAfterStandardPrologue(r,_()),r.push(f.createReturnStatement(I)),a=n,o=i,s=m,c=h,l=y,u=v,d=b,p=k,R=x,E=T,S=C,D=A,w=N,e.setTextRange(f.createBlock(r,t.multiLine),t)}function J(t){var r=[];return n(t.left),n(t.right),f.inlineExpressions(r);function n(t){e.isBinaryExpression(t)&&27===t.operatorToken.kind?(n(t.left),n(t.right)):(Y(t)&&r.length>0&&(we(1,[f.createExpressionStatement(f.inlineExpressions(r))]),r=[]),r.push(e.visitNode(t,j,e.isExpression)))}}function V(t,r,n,a){var o,s=X(t);if(s>0){o=Z();var c=e.visitNodes(t,j,e.isExpression,0,s);xe(o,f.createArrayLiteralExpression(r?i([r],c):c)),r=void 0}var l=e.reduceLeft(t,(function(t,n){if(Y(n)&&t.length>0){var s=void 0!==o;o||(o=Z()),xe(o,s?f.createArrayConcatCall(o,[f.createArrayLiteralExpression(t,a)]):f.createArrayLiteralExpression(r?i([r],t):t,a)),r=void 0,t=[]}return t.push(e.visitNode(n,j,e.isExpression)),t}),[],s);return o?f.createArrayConcatCall(o,[f.createArrayLiteralExpression(l,a)]):e.setTextRange(f.createArrayLiteralExpression(r?i([r],l):l,a),n)}function H(e,t){void 0===t&&(t=0);for(var r=e.length,n=t;n<r;n++)W(e[n])}function K(t){e.isBlock(t)?H(t.statements):W(t)}function W(i){var a=o;o||(o=Y(i)),function(i){switch(i.kind){case 232:return function(t){Y(t)?H(t.statements):ke(e.visitNode(t,j,e.isStatement))}(i);case 235:return function(t){ke(e.visitNode(t,j,e.isStatement))}(i);case 236:return function(t){if(Y(t))if(Y(t.thenStatement)||Y(t.elseStatement)){var r=ee(),n=t.elseStatement?ee():void 0;De(t.elseStatement?n:r,e.visitNode(t.expression,j,e.isExpression),t.expression),K(t.thenStatement),t.elseStatement&&(Ee(r),te(n),K(t.elseStatement)),te(r)}else ke(e.visitNode(t,j,e.isStatement));else ke(e.visitNode(t,j,e.isStatement))}(i);case 237:return function(t){if(Y(t)){var r=ee(),n=ee();se(r),te(n),K(t.statement),te(r),Se(n,e.visitNode(t.expression,j,e.isExpression)),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 238:return function(t){if(Y(t)){var r=ee(),n=se(r);te(r),De(n,e.visitNode(t.expression,j,e.isExpression)),K(t.statement),Ee(r),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 239:return function(t){if(Y(t)){var r=ee(),n=ee(),i=se(n);if(t.initializer){var a=t.initializer;e.isVariableDeclarationList(a)?G(a):ke(e.setTextRange(f.createExpressionStatement(e.visitNode(a,j,e.isExpression)),a))}te(r),t.condition&&De(i,e.visitNode(t.condition,j,e.isExpression)),K(t.statement),te(n),t.incrementor&&ke(e.setTextRange(f.createExpressionStatement(e.visitNode(t.incrementor,j,e.isExpression)),t.incrementor)),Ee(r),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 240:return function(t){if(Y(t)){var r=Z(),n=Z(),i=f.createLoopVariable(),a=t.initializer;y(i),xe(r,f.createArrayLiteralExpression()),ke(f.createForInStatement(n,e.visitNode(t.expression,j,e.isExpression),f.createExpressionStatement(f.createCallExpression(f.createPropertyAccessExpression(r,"push"),void 0,[n])))),xe(i,f.createNumericLiteral(0));var o=ee(),s=ee(),c=se(s);te(o),De(c,f.createLessThan(i,f.createPropertyAccessExpression(r,"length")));var l=void 0;if(e.isVariableDeclarationList(a)){for(var u=0,d=a.declarations;u<d.length;u++){var p=d[u];y(p.name)}l=f.cloneNode(a.declarations[0].name)}else l=e.visitNode(a,j,e.isExpression),e.Debug.assert(e.isLeftHandSideExpression(l));xe(l,f.createElementAccessExpression(r,i)),K(t.statement),te(s),ke(f.createExpressionStatement(f.createPostfixIncrement(i))),Ee(o),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 242:return function(t){var r=_e(t.label?e.idText(t.label):void 0);r>0?Ee(r,t):ke(t)}(i);case 243:return function(t){var r=ge(t.label?e.idText(t.label):void 0);r>0?Ee(r,t):ke(t)}(i);case 244:return function(t){r=e.visitNode(t.expression,j,e.isExpression),n=t,we(8,[r],n);var r,n}(i);case 245:return function(t){Y(t)?(r=Q(e.visitNode(t.expression,j,e.isExpression)),n=ee(),i=ee(),te(n),re({kind:1,expression:r,startLabel:n,endLabel:i}),K(t.statement),e.Debug.assert(1===ae()),te(ne().endLabel)):ke(e.visitNode(t,j,e.isStatement));var r,n,i}(i);case 246:return function(t){if(Y(t.caseBlock)){for(var r=t.caseBlock,n=r.clauses.length,i=(re({kind:2,isScript:!1,breakLabel:m=ee()}),m),a=Q(e.visitNode(t.expression,j,e.isExpression)),o=[],s=-1,c=0;c<n;c++){var l=r.clauses[c];o.push(ee()),288===l.kind&&-1===s&&(s=c)}for(var u=0,d=[];u<n;){var p=0;for(c=u;c<n;c++){if(287===(l=r.clauses[c]).kind){if(Y(l.expression)&&d.length>0)break;d.push(f.createCaseClause(e.visitNode(l.expression,j,e.isExpression),[ve(o[c],l.expression)]))}else p++}d.length&&(ke(f.createSwitchStatement(a,f.createCaseBlock(d))),u+=d.length,d=[]),p>0&&(u+=p,p=0)}Ee(s>=0?o[s]:i);for(c=0;c<n;c++)te(o[c]),H(r.clauses[c].statements);le()}else ke(e.visitNode(t,j,e.isStatement));var m}(i);case 247:return function(t){Y(t)?(r=e.idText(t.label),n=ee(),re({kind:4,isScript:!1,labelText:r,breakLabel:n}),K(t.statement),ue()):ke(e.visitNode(t,j,e.isStatement));var r,n}(i);case 248:return function(t){var r;n=e.visitNode(null!==(r=t.expression)&&void 0!==r?r:f.createVoidZero(),j,e.isExpression),i=t,we(9,[n],i);var n,i}(i);case 249:return function(i){Y(i)?(a=ee(),o=ee(),te(a),re({kind:0,state:0,startLabel:a,endLabel:o}),be(),K(i.tryBlock),i.catchClause&&(!function(i){var a;if(e.Debug.assert(0===ae()),e.isGeneratedIdentifier(i.name))a=i.name,y(i.name);else{var o=e.idText(i.name);a=Z(o),r||(r=new e.Map,n=[],t.enableSubstitution(78)),r.set(o,!0),n[e.getOriginalNodeId(i)]=a}var s=ie();e.Debug.assert(s.state<1);var c=s.endLabel;Ee(c);var l=ee();te(l),s.state=1,s.catchVariable=a,s.catchLabel=l,xe(a,f.createCallExpression(f.createPropertyAccessExpression(w,"sent"),void 0,[])),be()}(i.catchClause.variableDeclaration),K(i.catchClause.block)),i.finallyBlock&&(!function(){e.Debug.assert(0===ae());var t=ie();e.Debug.assert(t.state<2);var r=t.endLabel;Ee(r);var n=ee();te(n),t.state=2,t.finallyLabel=n}(),K(i.finallyBlock)),function(){e.Debug.assert(0===ae());var t=ne(),r=t.state;r<2?Ee(t.endLabel):we(10);te(t.endLabel),be(),t.state=3}()):ke(e.visitEachChild(i,j,t));var a,o}(i);default:ke(e.visitNode(i,j,e.isStatement))}}(i),o=a}function G(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r],a=f.cloneNode(i.name);e.setCommentRange(a,i.name),y(a)}for(var o=e.getInitializedVariables(t),s=o.length,c=0,l=[];c<s;){for(var u=c;u<s;u++){if(Y((i=o[u]).initializer)&&l.length>0)break;l.push($(i))}l.length&&(ke(f.createExpressionStatement(f.inlineExpressions(l))),c+=l.length,l=[])}}function $(t){return e.setSourceMapRange(f.createAssignment(e.setSourceMapRange(f.cloneNode(t.name),t.name),e.visitNode(t.initializer,j,e.isExpression)),t)}function Y(e){return!!e&&!!(262144&e.transformFlags)}function X(e){for(var t=e.length,r=0;r<t;r++)if(Y(e[r]))return r;return-1}function Q(t){if(e.isGeneratedIdentifier(t)||4096&e.getEmitFlags(t))return t;var r=f.createTempVariable(y);return xe(r,t,t),r}function Z(e){var t=e?f.createUniqueName(e):f.createTempVariable(void 0);return y(t),t}function ee(){d||(d=[]);var e=R;return R++,d[e]=-1,e}function te(t){e.Debug.assert(void 0!==d,"No labels were defined."),d[t]=E?E.length:0}function re(e){s||(s=[],l=[],c=[],u=[]);var t=l.length;return l[t]=0,c[t]=E?E.length:0,s[t]=e,u.push(e),t}function ne(){var t=ie();if(void 0===t)return e.Debug.fail("beginBlock was never called.");var r=l.length;return l[r]=1,c[r]=E?E.length:0,s[r]=t,u.pop(),t}function ie(){return e.lastOrUndefined(u)}function ae(){var e=ie();return e&&e.kind}function oe(){re({kind:3,isScript:!0,breakLabel:-1,continueLabel:-1})}function se(e){var t=ee();return re({kind:3,isScript:!1,breakLabel:t,continueLabel:e}),t}function ce(){e.Debug.assert(3===ae());var t=ne(),r=t.breakLabel;t.isScript||te(r)}function le(){e.Debug.assert(2===ae());var t=ne(),r=t.breakLabel;t.isScript||te(r)}function ue(){e.Debug.assert(4===ae());var t=ne();t.isScript||te(t.breakLabel)}function de(e){return 2===e.kind||3===e.kind}function pe(e){return 4===e.kind}function fe(e){return 3===e.kind}function me(e,t){for(var r=t;r>=0;r--){var n=u[r];if(!pe(n))break;if(n.labelText===e)return!0}return!1}function ge(e){if(u)if(e)for(var t=u.length-1;t>=0;t--){if(pe(r=u[t])&&r.labelText===e)return r.breakLabel;if(de(r)&&me(e,t-1))return r.breakLabel}else for(t=u.length-1;t>=0;t--){var r;if(de(r=u[t]))return r.breakLabel}return 0}function _e(e){if(u)if(e)for(var t=u.length-1;t>=0;t--){if(fe(r=u[t])&&me(e,t-1))return r.continueLabel}else for(t=u.length-1;t>=0;t--){var r;if(fe(r=u[t]))return r.continueLabel}return 0}function he(e){if(void 0!==e&&e>0){void 0===p&&(p=[]);var t=f.createNumericLiteral(-1);return void 0===p[e]?p[e]=[t]:p[e].push(t),t}return f.createOmittedExpression()}function ye(t){var r=f.createNumericLiteral(t);return e.addSyntheticTrailingComment(r,3,function(e){switch(e){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}(t)),r}function ve(t,r){return e.Debug.assertLessThan(0,t,"Invalid label"),e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),r)}function be(){we(0)}function ke(e){e?we(1,[e]):be()}function xe(e,t,r){we(2,[e,t],r)}function Ee(e,t){we(3,[e],t)}function Se(e,t,r){we(4,[e,t],r)}function De(e,t,r){we(5,[e,t],r)}function we(e,t,r){void 0===E&&(E=[],S=[],D=[]),void 0===d&&te(ee());var n=E.length;E[n]=e,S[n]=t,D[n]=r}function Te(){M=0,L=0,T=void 0,C=!1,A=!1,N=void 0,P=void 0,I=void 0,F=void 0,O=void 0;var t=function(){if(E){for(var t=0;t<E.length;t++)Pe(t);Ce(E.length)}else Ce(0);if(N){var r=f.createPropertyAccessExpression(w,"label"),n=f.createSwitchStatement(r,f.createCaseBlock(N));return[e.startOnNewLine(n)]}if(P)return P;return[]}();return m().createGeneratorHelper(e.setEmitFlags(f.createFunctionExpression(void 0,void 0,void 0,void 0,[f.createParameterDeclaration(void 0,void 0,void 0,w)],void 0,f.createBlock(t,t.length>0)),524288))}function Ce(e){(function(e){if(!A)return!0;if(!d||!p)return!1;for(var t=0;t<d.length;t++)if(d[t]===e&&p[t])return!0;return!1})(e)&&(Ne(e),O=void 0,Fe(void 0,void 0)),P&&N&&Ae(!1),function(){if(void 0!==p&&void 0!==T)for(var e=0;e<T.length;e++){var t=T[e];if(void 0!==t)for(var r=0,n=t;r<n.length;r++){var i=n[r],a=p[i];if(void 0!==a)for(var o=0,s=a;o<s.length;o++){s[o].text=String(e)}}}}()}function Ae(e){if(N||(N=[]),P){if(O)for(var t=O.length-1;t>=0;t--){var r=O[t];P=[f.createWithStatement(r.expression,f.createBlock(P))]}if(F){var n=F.startLabel,i=F.catchLabel,a=F.finallyLabel,o=F.endLabel;P.unshift(f.createExpressionStatement(f.createCallExpression(f.createPropertyAccessExpression(f.createPropertyAccessExpression(w,"trys"),"push"),void 0,[f.createArrayLiteralExpression([he(n),he(i),he(a),he(o)])]))),F=void 0}e&&P.push(f.createExpressionStatement(f.createAssignment(f.createPropertyAccessExpression(w,"label"),f.createNumericLiteral(L+1))))}N.push(f.createCaseClause(f.createNumericLiteral(L),P||[])),P=void 0}function Ne(e){if(d)for(var t=0;t<d.length;t++)d[t]===e&&(P&&(Ae(!C),C=!1,A=!1,L++),void 0===T&&(T=[]),void 0===T[L]?T[L]=[t]:T[L].push(t))}function Pe(t){if(Ne(t),function(e){if(s)for(;M<l.length&&c[M]<=e;M++){var t=s[M],r=l[M];switch(t.kind){case 0:0===r?(I||(I=[]),P||(P=[]),I.push(F),F=t):1===r&&(F=I.pop());break;case 1:0===r?(O||(O=[]),O.push(t)):1===r&&O.pop()}}}(t),!C){C=!1,A=!1;var r=E[t];if(0!==r){if(10===r)return C=!0,void Ie(f.createReturnStatement(f.createArrayLiteralExpression([ye(7)])));var n=S[t];if(1===r)return Ie(n[0]);var i,a,o,u=D[t];switch(r){case 2:return i=n[0],a=n[1],o=u,void Ie(e.setTextRange(f.createExpressionStatement(f.createAssignment(i,a)),o));case 3:return function(t,r){C=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),r),384))}(n[0],u);case 4:return function(t,r,n){Ie(e.setEmitFlags(f.createIfStatement(r,e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),n),384)),1))}(n[0],n[1],u);case 5:return function(t,r,n){Ie(e.setEmitFlags(f.createIfStatement(f.createLogicalNot(r),e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),n),384)),1))}(n[0],n[1],u);case 6:return function(t,r){C=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression(t?[ye(4),t]:[ye(4)])),r),384))}(n[0],u);case 7:return function(t,r){C=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(5),t])),r),384))}(n[0],u);case 8:return Fe(n[0],u);case 9:return function(t,r){C=!0,A=!0,Ie(e.setTextRange(f.createThrowStatement(t),r))}(n[0],u)}}}}function Ie(e){e&&(P?P.push(e):P=[e])}function Fe(t,r){C=!0,A=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression(t?[ye(2),t]:[ye(2)])),r),384))}}}(d||(d={})),function(e){e.transformModule=function(r){var n=r.factory,a=r.getEmitHelperFactory,o=r.startLexicalEnvironment,s=r.endLexicalEnvironment,c=r.hoistVariableDeclaration,l=r.getCompilerOptions(),u=r.getEmitResolver(),d=r.getEmitHost(),p=e.getEmitScriptTarget(l),f=e.getEmitModuleKind(l),m=r.onSubstituteNode,g=r.onEmitNode;r.onSubstituteNode=function(t,r){if((r=m(t,r)).id&&y[r.id])return r;if(1===t)return function(t){switch(t.kind){case 78:return Y(t);case 218:return function(t){if(e.isAssignmentOperator(t.operatorToken.kind)&&e.isIdentifier(t.left)&&!e.isGeneratedIdentifier(t.left)&&!e.isLocalName(t.left)&&!e.isDeclarationNameOfEnumOrNamespace(t.left)){var r=X(t.left);if(r){for(var n=t,i=0,a=r;i<a.length;i++){var o=a[i];y[e.getNodeId(n)]=!0,n=G(o,n,t)}return n}}return t}(t);case 217:case 216:return function(t){if((45===t.operator||46===t.operator)&&e.isIdentifier(t.operand)&&!e.isGeneratedIdentifier(t.operand)&&!e.isLocalName(t.operand)&&!e.isDeclarationNameOfEnumOrNamespace(t.operand)){var r=X(t.operand);if(r){for(var i=217===t.kind?e.setTextRange(n.createBinaryExpression(t.operand,n.createToken(45===t.operator?63:64),n.createNumericLiteral(1)),t):t,a=0,o=r;a<o.length;a++){var s=o[a];y[e.getNodeId(i)]=!0,i=n.createParenthesizedExpression(G(s,i))}return i}}return t}(t)}return t}(r);if(e.isShorthandPropertyAssignment(r))return function(t){var r=t.name,i=Y(r);if(i!==r){if(t.objectAssignmentInitializer){var a=n.createAssignment(i,t.objectAssignmentInitializer);return e.setTextRange(n.createPropertyAssignment(r,a),t)}return e.setTextRange(n.createPropertyAssignment(r,i),t)}return t}(r);return r},r.onEmitNode=function(t,r,n){300===r.kind?(_=r,h=b[e.getOriginalNodeId(_)],y=[],g(t,r,n),_=void 0,h=void 0,y=void 0):g(t,r,n)},r.enableSubstitution(78),r.enableSubstitution(218),r.enableSubstitution(216),r.enableSubstitution(217),r.enableSubstitution(292),r.enableEmitNotification(300);var _,h,y,v,b=[],k=[];return e.chainBundle(r,(function(t){if(t.isDeclarationFile||!(e.isEffectiveExternalModule(t,l)||2097152&t.transformFlags||e.isJsonSourceFile(t)&&e.hasJsonModuleEmitEnabled(l)&&e.outFile(l)))return t;_=t,h=e.collectExternalModuleInfo(r,t,u,l),b[e.getOriginalNodeId(t)]=h;var n=function(t){switch(t){case e.ModuleKind.AMD:return S;case e.ModuleKind.UMD:return D;default:return E}}(f),i=n(t);return _=void 0,h=void 0,v=!1,i}));function x(){return!(h.exportEquals||!e.isExternalModule(_))}function E(t){o();var i=[],a=e.getStrictOptionValue(l,"alwaysStrict")||!l.noImplicitUseStrict&&e.isExternalModule(_),c=n.copyPrologue(t.statements,i,a&&!e.isJsonSourceFile(t),N);if(x()&&e.append(i,W()),e.length(h.exportedNames))for(var u=0;u<h.exportedNames.length;u+=50)e.append(i,n.createExpressionStatement(e.reduceLeft(h.exportedNames.slice(u,u+50),(function(t,r){return n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.createIdentifier(e.idText(r))),t)}),n.createVoidZero())));e.append(i,e.visitNode(h.externalHelpersImportDeclaration,N,e.isStatement)),e.addRange(i,e.visitNodes(t.statements,N,e.isStatement,c)),A(i,!1),e.insertStatementsAfterStandardPrologue(i,s());var d=n.updateSourceFile(t,e.setTextRange(n.createNodeArray(i),t.statements));return e.addEmitHelpers(d,r.readEmitHelpers()),d}function S(t){var a=n.createIdentifier("define"),o=e.tryGetModuleNameFromFile(n,t,d,l),s=e.isJsonSourceFile(t)&&t,c=w(t,!0),u=c.aliasedModuleNames,p=c.unaliasedModuleNames,f=c.importAliasNames,m=n.updateSourceFile(t,e.setTextRange(n.createNodeArray([n.createExpressionStatement(n.createCallExpression(a,void 0,i(i([],o?[o]:[]),[n.createArrayLiteralExpression(s?e.emptyArray:i(i([n.createStringLiteral("require"),n.createStringLiteral("exports")],u),p)),s?s.statements.length?s.statements[0].expression:n.createObjectLiteralExpression():n.createFunctionExpression(void 0,void 0,void 0,void 0,i([n.createParameterDeclaration(void 0,void 0,void 0,"require"),n.createParameterDeclaration(void 0,void 0,void 0,"exports")],f),void 0,C(t))])))]),t.statements));return e.addEmitHelpers(m,r.readEmitHelpers()),m}function D(t){var a=w(t,!1),o=a.aliasedModuleNames,s=a.unaliasedModuleNames,c=a.importAliasNames,u=e.tryGetModuleNameFromFile(n,t,d,l),p=n.createFunctionExpression(void 0,void 0,void 0,void 0,[n.createParameterDeclaration(void 0,void 0,void 0,"factory")],void 0,e.setTextRange(n.createBlock([n.createIfStatement(n.createLogicalAnd(n.createTypeCheck(n.createIdentifier("module"),"object"),n.createTypeCheck(n.createPropertyAccessExpression(n.createIdentifier("module"),"exports"),"object")),n.createBlock([n.createVariableStatement(void 0,[n.createVariableDeclaration("v",void 0,void 0,n.createCallExpression(n.createIdentifier("factory"),void 0,[n.createIdentifier("require"),n.createIdentifier("exports")]))]),e.setEmitFlags(n.createIfStatement(n.createStrictInequality(n.createIdentifier("v"),n.createIdentifier("undefined")),n.createExpressionStatement(n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("module"),"exports"),n.createIdentifier("v")))),1)]),n.createIfStatement(n.createLogicalAnd(n.createTypeCheck(n.createIdentifier("define"),"function"),n.createPropertyAccessExpression(n.createIdentifier("define"),"amd")),n.createBlock([n.createExpressionStatement(n.createCallExpression(n.createIdentifier("define"),void 0,i(i([],u?[u]:[]),[n.createArrayLiteralExpression(i(i([n.createStringLiteral("require"),n.createStringLiteral("exports")],o),s)),n.createIdentifier("factory")])))])))],!0),void 0)),f=n.updateSourceFile(t,e.setTextRange(n.createNodeArray([n.createExpressionStatement(n.createCallExpression(p,void 0,[n.createFunctionExpression(void 0,void 0,void 0,void 0,i([n.createParameterDeclaration(void 0,void 0,void 0,"require"),n.createParameterDeclaration(void 0,void 0,void 0,"exports")],c),void 0,C(t))]))]),t.statements));return e.addEmitHelpers(f,r.readEmitHelpers()),f}function w(t,r){for(var i=[],a=[],o=[],s=0,c=t.amdDependencies;s<c.length;s++){var p=c[s];p.name?(i.push(n.createStringLiteral(p.path)),o.push(n.createParameterDeclaration(void 0,void 0,void 0,p.name))):a.push(n.createStringLiteral(p.path))}for(var f=0,m=h.externalImports;f<m.length;f++){var g=m[f],y=e.getExternalModuleNameLiteral(n,g,_,d,u,l),v=e.getLocalNameForExternalImport(n,g,_);y&&(r&&v?(e.setEmitFlags(v,4),i.push(y),o.push(n.createParameterDeclaration(void 0,void 0,void 0,v))):a.push(y))}return{aliasedModuleNames:i,unaliasedModuleNames:a,importAliasNames:o}}function T(t){if(!e.isImportEqualsDeclaration(t)&&!e.isExportDeclaration(t)&&e.getExternalModuleNameLiteral(n,t,_,d,u,l)){var r=e.getLocalNameForExternalImport(n,t,_),i=R(t,r);if(i!==r)return n.createExpressionStatement(n.createAssignment(r,i))}}function C(r){o();var i=[],a=n.copyPrologue(r.statements,i,!l.noImplicitUseStrict,N);x()&&e.append(i,W()),e.length(h.exportedNames)&&e.append(i,n.createExpressionStatement(e.reduceLeft(h.exportedNames,(function(t,r){return n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.createIdentifier(e.idText(r))),t)}),n.createVoidZero()))),e.append(i,e.visitNode(h.externalHelpersImportDeclaration,N,e.isStatement)),f===e.ModuleKind.AMD&&e.addRange(i,e.mapDefined(h.externalImports,T)),e.addRange(i,e.visitNodes(r.statements,N,e.isStatement,a)),A(i,!0),e.insertStatementsAfterStandardPrologue(i,s());var c=n.createBlock(i,!0);return v&&e.addEmitHelper(c,t),c}function A(t,r){if(h.exportEquals){var i=e.visitNode(h.exportEquals.expression,P);if(i)if(r){var a=n.createReturnStatement(i);e.setTextRange(a,h.exportEquals),e.setEmitFlags(a,1920),t.push(a)}else{a=n.createExpressionStatement(n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("module"),"exports"),i));e.setTextRange(a,h.exportEquals),e.setEmitFlags(a,1536),t.push(a)}}}function N(t){switch(t.kind){case 264:return function(t){var r,i=e.getNamespaceDeclarationNode(t);if(f!==e.ModuleKind.AMD){if(!t.importClause)return e.setOriginalNode(e.setTextRange(n.createExpressionStatement(M(t)),t),t);var a=[];i&&!e.isDefaultImport(t)?a.push(n.createVariableDeclaration(n.cloneNode(i.name),void 0,void 0,R(t,M(t)))):(a.push(n.createVariableDeclaration(n.getGeneratedNameForNode(t),void 0,void 0,R(t,M(t)))),i&&e.isDefaultImport(t)&&a.push(n.createVariableDeclaration(n.cloneNode(i.name),void 0,void 0,n.getGeneratedNameForNode(t)))),r=e.append(r,e.setOriginalNode(e.setTextRange(n.createVariableStatement(void 0,n.createVariableDeclarationList(a,p>=2?2:0)),t),t))}else i&&e.isDefaultImport(t)&&(r=e.append(r,n.createVariableStatement(void 0,n.createVariableDeclarationList([e.setOriginalNode(e.setTextRange(n.createVariableDeclaration(n.cloneNode(i.name),void 0,void 0,n.getGeneratedNameForNode(t)),t),t)],p>=2?2:0))));if(B(t)){var o=e.getOriginalNodeId(t);k[o]=z(k[o],t)}else r=z(r,t);return e.singleOrMany(r)}(t);case 263:return function(t){var r;e.Debug.assert(e.isExternalModuleImportEqualsDeclaration(t),"import= for internal module references should be handled in an earlier transformer."),f!==e.ModuleKind.AMD?r=e.hasSyntacticModifier(t,1)?e.append(r,e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(t.name,M(t))),t),t)):e.append(r,e.setOriginalNode(e.setTextRange(n.createVariableStatement(void 0,n.createVariableDeclarationList([n.createVariableDeclaration(n.cloneNode(t.name),void 0,void 0,M(t))],p>=2?2:0)),t),t)):e.hasSyntacticModifier(t,1)&&(r=e.append(r,e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(n.getExportName(t),n.getLocalName(t))),t),t)));if(B(t)){var i=e.getOriginalNodeId(t);k[i]=U(k[i],t)}else r=U(r,t);return e.singleOrMany(r)}(t);case 270:return function(t){if(!t.moduleSpecifier)return;var r=n.getGeneratedNameForNode(t);if(t.exportClause&&e.isNamedExports(t.exportClause)){var i=[];f!==e.ModuleKind.AMD&&i.push(e.setOriginalNode(e.setTextRange(n.createVariableStatement(void 0,n.createVariableDeclarationList([n.createVariableDeclaration(r,void 0,void 0,M(t))])),t),t));for(var o=0,s=t.exportClause.elements;o<s.length;o++){var c=s[o];if(0===p)i.push(e.setOriginalNode(e.setTextRange(n.createExpressionStatement(a().createCreateBindingHelper(r,n.createStringLiteralFromNode(c.propertyName||c.name),c.propertyName?n.createStringLiteralFromNode(c.name):void 0)),c),c));else{var u=!(!l.esModuleInterop||67108864&e.getEmitFlags(t)||"default"!==e.idText(c.propertyName||c.name)),d=n.createPropertyAccessExpression(u?a().createImportDefaultHelper(r):r,c.propertyName||c.name);i.push(e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(n.getExportName(c),d,void 0,!0)),c),c))}}return e.singleOrMany(i)}return t.exportClause?((i=[]).push(e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(n.cloneNode(t.exportClause.name),function(t,r){if(!l.esModuleInterop||67108864&e.getEmitFlags(t))return r;if(e.getExportNeedsImportStarHelper(t))return a().createImportStarHelper(r);return r}(t,f!==e.ModuleKind.AMD?M(t):e.isExportNamespaceAsDefaultDeclaration(t)?r:n.createIdentifier(e.idText(t.exportClause.name))))),t),t)),e.singleOrMany(i)):e.setOriginalNode(e.setTextRange(n.createExpressionStatement(a().createExportStarHelper(f!==e.ModuleKind.AMD?M(t):r)),t),t)}(t);case 269:return function(t){if(t.isExportEquals)return;var r,i=t.original;if(i&&B(i)){var a=e.getOriginalNodeId(t);k[a]=K(k[a],n.createIdentifier("default"),e.visitNode(t.expression,P),t,!0)}else r=K(r,n.createIdentifier("default"),e.visitNode(t.expression,P),t,!0);return e.singleOrMany(r)}(t);case 234:return function(t){var i,a,o;if(e.hasSyntacticModifier(t,1)){for(var s=void 0,c=!1,l=0,u=t.declarationList.declarations;l<u.length;l++){var d=u[l];if(e.isIdentifier(d.name)&&e.isLocalName(d.name))s||(s=e.visitNodes(t.modifiers,$,e.isModifier)),a=e.append(a,d);else if(d.initializer)if(!e.isBindingPattern(d.name)&&(e.isArrowFunction(d.initializer)||e.isFunctionExpression(d.initializer)||e.isClassExpression(d.initializer))){var p=n.createAssignment(e.setTextRange(n.createPropertyAccessExpression(n.createIdentifier("exports"),d.name),d.name),n.createIdentifier(e.getTextOfIdentifierOrLiteral(d.name))),f=n.createVariableDeclaration(d.name,d.exclamationToken,d.type,e.visitNode(d.initializer,P));a=e.append(a,f),o=e.append(o,p),c=!0}else o=e.append(o,j(d))}if(a&&(i=e.append(i,n.updateVariableStatement(t,s,n.updateVariableDeclarationList(t.declarationList,a)))),o){var m=e.setOriginalNode(e.setTextRange(n.createExpressionStatement(n.inlineExpressions(o)),t),t);c&&e.removeAllComments(m),i=e.append(i,m)}}else i=e.append(i,e.visitEachChild(t,P,r));if(B(t)){var g=e.getOriginalNodeId(t);k[g]=q(k[g],t)}else i=q(i,t);return e.singleOrMany(i)}(t);case 253:return function(t){var i;i=e.hasSyntacticModifier(t,1)?e.append(i,e.setOriginalNode(e.setTextRange(n.createFunctionDeclaration(void 0,e.visitNodes(t.modifiers,$,e.isModifier),t.asteriskToken,n.getDeclarationName(t,!0,!0),void 0,e.visitNodes(t.parameters,P),void 0,e.visitEachChild(t.body,P,r)),t),t)):e.append(i,e.visitEachChild(t,P,r));if(B(t)){var a=e.getOriginalNodeId(t);k[a]=V(k[a],t)}else i=V(i,t);return e.singleOrMany(i)}(t);case 254:return function(t){var i;i=e.hasSyntacticModifier(t,1)?e.append(i,e.setOriginalNode(e.setTextRange(n.createClassDeclaration(void 0,e.visitNodes(t.modifiers,$,e.isModifier),n.getDeclarationName(t,!0,!0),void 0,e.visitNodes(t.heritageClauses,P),e.visitNodes(t.members,P)),t),t)):e.append(i,e.visitEachChild(t,P,r));if(B(t)){var a=e.getOriginalNodeId(t);k[a]=V(k[a],t)}else i=V(i,t);return e.singleOrMany(i)}(t);case 341:return function(t){if(B(t)&&234===t.original.kind){var r=e.getOriginalNodeId(t);k[r]=q(k[r],t.original)}return t}(t);case 342:return function(t){var r=e.getOriginalNodeId(t),n=k[r];if(n)return delete k[r],e.append(n,t);return t}(t);default:return e.visitEachChild(t,P,r)}}function P(t){return 2097152&t.transformFlags||1024&t.transformFlags?e.isImportCall(t)?function(t){var r=e.getExternalModuleNameLiteral(n,t,_,d,u,l),i=e.visitNode(e.firstOrUndefined(t.arguments),P),a=!r||i&&e.isStringLiteral(i)&&i.text===r.text?i:r,o=!!(4096&t.transformFlags);switch(l.module){case e.ModuleKind.AMD:return F(a,o);case e.ModuleKind.UMD:return function(t,r){if(v=!0,e.isSimpleCopiableExpression(t)){var i=e.isGeneratedIdentifier(t)?t:e.isStringLiteral(t)?n.createStringLiteralFromNode(t):e.setEmitFlags(e.setTextRange(n.cloneNode(t),t),1536);return n.createConditionalExpression(n.createIdentifier("__syncRequire"),void 0,O(t,r),void 0,F(i,r))}var a=n.createTempVariable(c);return n.createComma(n.createAssignment(a,t),n.createConditionalExpression(n.createIdentifier("__syncRequire"),void 0,O(a,r),void 0,F(a,r)))}(null!=a?a:n.createVoidZero(),o);case e.ModuleKind.CommonJS:default:return O(a,o)}}(t):e.isDestructuringAssignment(t)?function(t){if(I(t.left))return e.flattenDestructuringAssignment(t,P,r,0,!1,L);return e.visitEachChild(t,P,r)}(t):e.visitEachChild(t,P,r):t}function I(t){if(e.isObjectLiteralExpression(t))for(var r=0,n=t.properties;r<n.length;r++){switch((o=n[r]).kind){case 291:if(I(o.initializer))return!0;break;case 292:if(I(o.name))return!0;break;case 293:if(I(o.expression))return!0;break;case 166:case 168:case 169:return!1;default:e.Debug.assertNever(o,"Unhandled object member kind")}}else if(e.isArrayLiteralExpression(t))for(var i=0,a=t.elements;i<a.length;i++){var o=a[i];if(e.isSpreadElement(o)){if(I(o.expression))return!0}else if(I(o))return!0}else if(e.isIdentifier(t))return e.length(X(t))>(e.isExportName(t)?1:0);return!1}function F(t,r){var i,o=n.createUniqueName("resolve"),s=n.createUniqueName("reject"),c=[n.createParameterDeclaration(void 0,void 0,void 0,o),n.createParameterDeclaration(void 0,void 0,void 0,s)],u=n.createBlock([n.createExpressionStatement(n.createCallExpression(n.createIdentifier("require"),void 0,[n.createArrayLiteralExpression([t||n.createOmittedExpression()]),o,s]))]);p>=2?i=n.createArrowFunction(void 0,void 0,c,void 0,void 0,u):(i=n.createFunctionExpression(void 0,void 0,void 0,void 0,c,void 0,u),r&&e.setEmitFlags(i,8));var d=n.createNewExpression(n.createIdentifier("Promise"),void 0,[i]);return l.esModuleInterop?n.createCallExpression(n.createPropertyAccessExpression(d,n.createIdentifier("then")),void 0,[a().createImportStarCallbackHelper()]):d}function O(t,r){var i,o=n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Promise"),"resolve"),void 0,[]),s=n.createCallExpression(n.createIdentifier("require"),void 0,t?[t]:[]);return l.esModuleInterop&&(s=a().createImportStarHelper(s)),p>=2?i=n.createArrowFunction(void 0,void 0,[],void 0,void 0,s):(i=n.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,n.createBlock([n.createReturnStatement(s)])),r&&e.setEmitFlags(i,8)),n.createCallExpression(n.createPropertyAccessExpression(o,"then"),void 0,[i])}function R(t,r){return!l.esModuleInterop||67108864&e.getEmitFlags(t)?r:e.getImportNeedsImportStarHelper(t)?a().createImportStarHelper(r):e.getImportNeedsImportDefaultHelper(t)?a().createImportDefaultHelper(r):r}function M(t){var r=e.getExternalModuleNameLiteral(n,t,_,d,u,l),i=[];return r&&i.push(r),n.createCallExpression(n.createIdentifier("require"),void 0,i)}function L(t,r,i){var a=X(t);if(a){for(var o=e.isExportName(t)?r:n.createAssignment(t,r),s=0,c=a;s<c.length;s++){var l=c[s];e.setEmitFlags(o,4),o=G(l,o,i)}return o}return n.createAssignment(t,r)}function j(t){return e.isBindingPattern(t.name)?e.flattenDestructuringAssignment(e.visitNode(t,P),void 0,r,0,!1,L):n.createAssignment(e.setTextRange(n.createPropertyAccessExpression(n.createIdentifier("exports"),t.name),t.name),t.initializer?e.visitNode(t.initializer,P):n.createVoidZero())}function B(t){return!!(4194304&e.getEmitFlags(t))}function z(e,t){if(h.exportEquals)return e;var r=t.importClause;if(!r)return e;r.name&&(e=H(e,r));var n=r.namedBindings;if(n)switch(n.kind){case 266:e=H(e,n);break;case 267:for(var i=0,a=n.elements;i<a.length;i++){e=H(e,a[i],!0)}}return e}function U(e,t){return h.exportEquals?e:H(e,t)}function q(e,t){if(h.exportEquals)return e;for(var r=0,n=t.declarationList.declarations;r<n.length;r++){e=J(e,n[r])}return e}function J(t,r){if(h.exportEquals)return t;if(e.isBindingPattern(r.name))for(var n=0,i=r.name.elements;n<i.length;n++){var a=i[n];e.isOmittedExpression(a)||(t=J(t,a))}else e.isGeneratedIdentifier(r.name)||(t=H(t,r));return t}function V(t,r){if(h.exportEquals)return t;e.hasSyntacticModifier(r,1)&&(t=K(t,e.hasSyntacticModifier(r,512)?n.createIdentifier("default"):n.getDeclarationName(r),n.getLocalName(r),r));return r.name&&(t=H(t,r)),t}function H(t,r,i){var a=n.getDeclarationName(r),o=h.exportSpecifiers.get(e.idText(a));if(o)for(var s=0,c=o;s<c.length;s++){var l=c[s];t=K(t,l.name,a,l.name,void 0,i)}return t}function K(t,r,i,a,o,s){return t=e.append(t,function(t,r,i,a,o){var s=e.setTextRange(n.createExpressionStatement(G(t,r,void 0,o)),i);e.startOnNewLine(s),a||e.setEmitFlags(s,1536);return s}(r,i,a,o,s)),t}function W(){var t;return t=0===p?n.createExpressionStatement(G(n.createIdentifier("__esModule"),n.createTrue())):n.createExpressionStatement(n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Object"),"defineProperty"),void 0,[n.createIdentifier("exports"),n.createStringLiteral("__esModule"),n.createObjectLiteralExpression([n.createPropertyAssignment("value",n.createTrue())])])),e.setEmitFlags(t,1048576),t}function G(t,r,i,a){return e.setTextRange(a&&0!==p?n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Object"),"defineProperty"),void 0,[n.createIdentifier("exports"),n.createStringLiteralFromNode(t),n.createObjectLiteralExpression([n.createPropertyAssignment("enumerable",n.createTrue()),n.createPropertyAssignment("get",n.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,n.createBlock([n.createReturnStatement(r)])))])]):n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.cloneNode(t)),r),i)}function $(e){switch(e.kind){case 93:case 88:return}return e}function Y(t){var r,i;if(4096&e.getEmitFlags(t)){var a=e.getExternalHelpersModuleName(_);return a?n.createPropertyAccessExpression(a,t):t}if((!e.isGeneratedIdentifier(t)||64&t.autoGenerateFlags)&&!e.isLocalName(t)){var o=u.getReferencedExportContainer(t,e.isExportName(t));if(o&&300===o.kind)return e.setTextRange(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.cloneNode(t)),t);var s=u.getReferencedImportDeclaration(t);if(s){if(e.isImportClause(s))return e.setTextRange(n.createPropertyAccessExpression(n.getGeneratedNameForNode(s.parent),n.createIdentifier("default")),t);if(e.isImportSpecifier(s)){var c=s.propertyName||s.name;return e.setTextRange(n.createPropertyAccessExpression(n.getGeneratedNameForNode((null===(i=null===(r=s.parent)||void 0===r?void 0:r.parent)||void 0===i?void 0:i.parent)||s),n.cloneNode(c)),t)}}}return t}function X(t){if(!e.isGeneratedIdentifier(t)){var r=u.getReferencedImportDeclaration(t)||u.getReferencedValueDeclaration(t);if(r)return h&&h.exportedBindings[e.getOriginalNodeId(r)]}}};var t={name:"typescript:dynamicimport-sync-require",scoped:!0,text:'\n var __syncRequire = typeof module === "object" && typeof module.exports === "object";'}}(d||(d={})),function(e){e.transformSystemModule=function(t){var r=t.factory,n=t.startLexicalEnvironment,i=t.endLexicalEnvironment,a=t.hoistVariableDeclaration,o=t.getCompilerOptions(),s=t.getEmitResolver(),c=t.getEmitHost(),l=t.onSubstituteNode,u=t.onEmitNode;t.onSubstituteNode=function(t,n){if(function(e){return h&&e.id&&h[e.id]}(n=l(t,n)))return n;if(1===t)return function(t){switch(t.kind){case 78:return function(t){var n,i;if(4096&e.getEmitFlags(t)){var a=e.getExternalHelpersModuleName(d);return a?r.createPropertyAccessExpression(a,t):t}if(!e.isGeneratedIdentifier(t)&&!e.isLocalName(t)){var o=s.getReferencedImportDeclaration(t);if(o){if(e.isImportClause(o))return e.setTextRange(r.createPropertyAccessExpression(r.getGeneratedNameForNode(o.parent),r.createIdentifier("default")),t);if(e.isImportSpecifier(o))return e.setTextRange(r.createPropertyAccessExpression(r.getGeneratedNameForNode((null===(i=null===(n=o.parent)||void 0===n?void 0:n.parent)||void 0===i?void 0:i.parent)||o),r.cloneNode(o.propertyName||o.name)),t)}}return t}(t);case 218:return function(t){if(e.isAssignmentOperator(t.operatorToken.kind)&&e.isIdentifier(t.left)&&!e.isGeneratedIdentifier(t.left)&&!e.isLocalName(t.left)&&!e.isDeclarationNameOfEnumOrNamespace(t.left)){var r=W(t.left);if(r){for(var n=t,i=0,a=r;i<a.length;i++){n=U(a[i],G(n))}return n}}return t}(t);case 216:case 217:return function(t){if((45===t.operator||46===t.operator)&&e.isIdentifier(t.operand)&&!e.isGeneratedIdentifier(t.operand)&&!e.isLocalName(t.operand)&&!e.isDeclarationNameOfEnumOrNamespace(t.operand)){var n=W(t.operand);if(n){for(var i=217===t.kind?e.setTextRange(r.createPrefixUnaryExpression(t.operator,t.operand),t):t,a=0,o=n;a<o.length;a++){i=U(o[a],G(i))}return 217===t.kind&&(i=45===t.operator?r.createSubtract(G(i),r.createNumericLiteral(1)):r.createAdd(G(i),r.createNumericLiteral(1))),i}}return t}(t);case 228:return function(t){if(e.isImportMeta(t))return r.createPropertyAccessExpression(m,r.createIdentifier("meta"));return t}(t)}return t}(n);if(4===t)return function(t){if(292===t.kind)return function(t){var n,i,a=t.name;if(!e.isGeneratedIdentifier(a)&&!e.isLocalName(a)){var o=s.getReferencedImportDeclaration(a);if(o){if(e.isImportClause(o))return e.setTextRange(r.createPropertyAssignment(r.cloneNode(a),r.createPropertyAccessExpression(r.getGeneratedNameForNode(o.parent),r.createIdentifier("default"))),t);if(e.isImportSpecifier(o))return e.setTextRange(r.createPropertyAssignment(r.cloneNode(a),r.createPropertyAccessExpression(r.getGeneratedNameForNode((null===(i=null===(n=o.parent)||void 0===n?void 0:n.parent)||void 0===i?void 0:i.parent)||o),r.cloneNode(o.propertyName||o.name))),t)}}return t}(t);return t}(n);return n},t.onEmitNode=function(t,r,n){if(300===r.kind){var i=e.getOriginalNodeId(r);d=r,p=y[i],f=b[i],h=k[i],m=x[i],h&&delete k[i],u(t,r,n),d=void 0,p=void 0,f=void 0,m=void 0,h=void 0}else u(t,r,n)},t.enableSubstitution(78),t.enableSubstitution(292),t.enableSubstitution(218),t.enableSubstitution(216),t.enableSubstitution(217),t.enableSubstitution(228),t.enableEmitNotification(300);var d,p,f,m,g,_,h,y=[],v=[],b=[],k=[],x=[];return e.chainBundle(t,(function(a){if(a.isDeclarationFile||!(e.isEffectiveExternalModule(a,o)||2097152&a.transformFlags))return a;var l=e.getOriginalNodeId(a);d=a,_=a,p=y[l]=e.collectExternalModuleInfo(t,a,s,o),f=r.createUniqueName("exports"),b[l]=f,m=x[l]=r.createUniqueName("context");var u=function(t){for(var n=new e.Map,i=[],a=0,l=t;a<l.length;a++){var u=l[a],p=e.getExternalModuleNameLiteral(r,u,d,c,s,o);if(p){var f=p.text,m=n.get(f);void 0!==m?i[m].externalImports.push(u):(n.set(f,i.length),i.push({name:p,externalImports:[u]}))}}return i}(p.externalImports),v=function(t,a){var s=[];n();var c=e.getStrictOptionValue(o,"alwaysStrict")||!o.noImplicitUseStrict&&e.isExternalModule(d),l=r.copyPrologue(t.statements,s,c,D);s.push(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration("__moduleName",void 0,void 0,r.createLogicalAnd(m,r.createPropertyAccessExpression(m,"id")))]))),e.visitNode(p.externalHelpersImportDeclaration,D,e.isStatement);var u=e.visitNodes(t.statements,D,e.isStatement,l);e.addRange(s,g),e.insertStatementsAfterStandardPrologue(s,i());var f=function(e){if(!p.hasExportStarsToExportValues)return;if(!p.exportedNames&&0===p.exportSpecifiers.size){for(var t=!1,n=0,i=p.externalImports;n<i.length;n++){var a=i[n];if(270===a.kind&&a.exportClause){t=!0;break}}if(!t){var o=E(void 0);return e.push(o),o.name}}var s=[];if(p.exportedNames)for(var c=0,l=p.exportedNames;c<l.length;c++){var u=l[c];"default"!==u.escapedText&&s.push(r.createPropertyAssignment(r.createStringLiteralFromNode(u),r.createTrue()))}var d=r.createUniqueName("exportedNames");e.push(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(d,void 0,void 0,r.createObjectLiteralExpression(s,!0))])));var f=E(d);return e.push(f),f.name}(s),_=524288&t.transformFlags?r.createModifiersFromModifierFlags(256):void 0,h=r.createObjectLiteralExpression([r.createPropertyAssignment("setters",S(f,a)),r.createPropertyAssignment("execute",r.createFunctionExpression(_,void 0,void 0,void 0,[],void 0,r.createBlock(u,!0)))],!0);return s.push(r.createReturnStatement(h)),r.createBlock(s,!0)}(a,u),w=r.createFunctionExpression(void 0,void 0,void 0,void 0,[r.createParameterDeclaration(void 0,void 0,void 0,f),r.createParameterDeclaration(void 0,void 0,void 0,m)],void 0,v),T=e.tryGetModuleNameFromFile(r,a,c,o),C=r.createArrayLiteralExpression(e.map(u,(function(e){return e.name}))),A=e.setEmitFlags(r.updateSourceFile(a,e.setTextRange(r.createNodeArray([r.createExpressionStatement(r.createCallExpression(r.createPropertyAccessExpression(r.createIdentifier("System"),"register"),void 0,T?[T,C,w]:[C,w]))]),a.statements)),1024);e.outFile(o)||e.moveEmitHelpers(A,v,(function(e){return!e.scoped}));h&&(k[l]=h,h=void 0);return d=void 0,p=void 0,f=void 0,m=void 0,g=void 0,_=void 0,A}));function E(t){var n=r.createUniqueName("exportStar"),i=r.createIdentifier("m"),a=r.createIdentifier("n"),o=r.createIdentifier("exports"),s=r.createStrictInequality(a,r.createStringLiteral("default"));return t&&(s=r.createLogicalAnd(s,r.createLogicalNot(r.createCallExpression(r.createPropertyAccessExpression(t,"hasOwnProperty"),void 0,[a])))),r.createFunctionDeclaration(void 0,void 0,void 0,n,void 0,[r.createParameterDeclaration(void 0,void 0,void 0,i)],void 0,r.createBlock([r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(o,void 0,void 0,r.createObjectLiteralExpression([]))])),r.createForInStatement(r.createVariableDeclarationList([r.createVariableDeclaration(a)]),i,r.createBlock([e.setEmitFlags(r.createIfStatement(s,r.createExpressionStatement(r.createAssignment(r.createElementAccessExpression(o,a),r.createElementAccessExpression(i,a)))),1)])),r.createExpressionStatement(r.createCallExpression(f,void 0,[o]))],!0))}function S(t,n){for(var i=[],a=0,o=n;a<o.length;a++){for(var s=o[a],c=e.forEach(s.externalImports,(function(t){return e.getLocalNameForExternalImport(r,t,d)})),l=c?r.getGeneratedNameForNode(c):r.createUniqueName(""),u=[],p=0,m=s.externalImports;p<m.length;p++){var g=m[p],_=e.getLocalNameForExternalImport(r,g,d);switch(g.kind){case 264:if(!g.importClause)break;case 263:e.Debug.assert(void 0!==_),u.push(r.createExpressionStatement(r.createAssignment(_,l)));break;case 270:if(e.Debug.assert(void 0!==_),g.exportClause)if(e.isNamedExports(g.exportClause)){for(var h=[],y=0,v=g.exportClause.elements;y<v.length;y++){var b=v[y];h.push(r.createPropertyAssignment(r.createStringLiteral(e.idText(b.name)),r.createElementAccessExpression(l,r.createStringLiteral(e.idText(b.propertyName||b.name)))))}u.push(r.createExpressionStatement(r.createCallExpression(f,void 0,[r.createObjectLiteralExpression(h,!0)])))}else u.push(r.createExpressionStatement(r.createCallExpression(f,void 0,[r.createStringLiteral(e.idText(g.exportClause.name)),l])));else u.push(r.createExpressionStatement(r.createCallExpression(t,void 0,[l])))}}i.push(r.createFunctionExpression(void 0,void 0,void 0,void 0,[r.createParameterDeclaration(void 0,void 0,void 0,l)],void 0,r.createBlock(u,!0)))}return r.createArrayLiteralExpression(i,!0)}function D(t){switch(t.kind){case 264:return function(t){var n;t.importClause&&a(e.getLocalNameForExternalImport(r,t,d));if(I(t)){var i=e.getOriginalNodeId(t);v[i]=F(v[i],t)}else n=F(n,t);return e.singleOrMany(n)}(t);case 263:return function(t){var n;if(e.Debug.assert(e.isExternalModuleImportEqualsDeclaration(t),"import= for internal module references should be handled in an earlier transformer."),a(e.getLocalNameForExternalImport(r,t,d)),I(t)){var i=e.getOriginalNodeId(t);v[i]=O(v[i],t)}else n=O(n,t);return e.singleOrMany(n)}(t);case 270:return function(t){return void e.Debug.assertIsDefined(t)}(t);case 269:return function(t){if(t.isExportEquals)return;var n=e.visitNode(t.expression,V,e.isExpression),i=t.original;if(!i||!I(i))return z(r.createIdentifier("default"),n,!0);var a=e.getOriginalNodeId(t);v[a]=B(v[a],r.createIdentifier("default"),n,!0)}(t);default:return q(t)}}function w(t){if(e.isBindingPattern(t.name))for(var n=0,i=t.name.elements;n<i.length;n++){var o=i[n];e.isOmittedExpression(o)||w(o)}else a(r.cloneNode(t.name))}function T(t){return!(2097152&e.getEmitFlags(t)||300!==_.kind&&3&e.getOriginalNode(t).flags)}function C(r,n){var i=n?A:N;return e.isBindingPattern(r.name)?e.flattenDestructuringAssignment(r,V,t,0,!1,i):r.initializer?i(r.name,e.visitNode(r.initializer,V,e.isExpression)):r.name}function A(e,t,r){return P(e,t,r,!0)}function N(e,t,r){return P(e,t,r,!1)}function P(t,n,i,o){return a(r.cloneNode(t)),o?U(t,G(e.setTextRange(r.createAssignment(t,n),i))):G(e.setTextRange(r.createAssignment(t,n),i))}function I(t){return!!(4194304&e.getEmitFlags(t))}function F(e,t){if(p.exportEquals)return e;var r=t.importClause;if(!r)return e;r.name&&(e=j(e,r));var n=r.namedBindings;if(n)switch(n.kind){case 266:e=j(e,n);break;case 267:for(var i=0,a=n.elements;i<a.length;i++){e=j(e,a[i])}}return e}function O(e,t){return p.exportEquals?e:j(e,t)}function R(e,t,r){if(p.exportEquals)return e;for(var n=0,i=t.declarationList.declarations;n<i.length;n++){var a=i[n];(a.initializer||r)&&(e=M(e,a,r))}return e}function M(t,n,i){if(p.exportEquals)return t;if(e.isBindingPattern(n.name))for(var a=0,o=n.name.elements;a<o.length;a++){var s=o[a];e.isOmittedExpression(s)||(t=M(t,s,i))}else if(!e.isGeneratedIdentifier(n.name)){var c=void 0;i&&(t=B(t,n.name,r.getLocalName(n)),c=e.idText(n.name)),t=j(t,n,c)}return t}function L(t,n){if(p.exportEquals)return t;var i;if(e.hasSyntacticModifier(n,1)){var a=e.hasSyntacticModifier(n,512)?r.createStringLiteral("default"):n.name;t=B(t,a,r.getLocalName(n)),i=e.getTextOfIdentifierOrLiteral(a)}return n.name&&(t=j(t,n,i)),t}function j(t,n,i){if(p.exportEquals)return t;var a=r.getDeclarationName(n),o=p.exportSpecifiers.get(e.idText(a));if(o)for(var s=0,c=o;s<c.length;s++){var l=c[s];l.name.escapedText!==i&&(t=B(t,l.name,a))}return t}function B(t,r,n,i){return t=e.append(t,z(r,n,i))}function z(t,n,i){var a=r.createExpressionStatement(U(t,n));return e.startOnNewLine(a),i||e.setEmitFlags(a,1536),a}function U(t,n){var i=e.isIdentifier(t)?r.createStringLiteralFromNode(t):t;return e.setEmitFlags(n,1536|e.getEmitFlags(n)),e.setCommentRange(r.createCallExpression(f,void 0,[i,n]),n)}function q(n){switch(n.kind){case 234:return function(t){if(!T(t.declarationList))return e.visitNode(t,V,e.isStatement);for(var n,i,a=e.hasSyntacticModifier(t,1),o=I(t),s=0,c=t.declarationList.declarations;s<c.length;s++){var l=c[s];l.initializer?n=e.append(n,C(l,a&&!o)):w(l)}if(n&&(i=e.append(i,e.setTextRange(r.createExpressionStatement(r.inlineExpressions(n)),t))),o){var u=e.getOriginalNodeId(t);v[u]=R(v[u],t,a)}else i=R(i,t,!1);return e.singleOrMany(i)}(n);case 253:return function(n){if(g=e.hasSyntacticModifier(n,1)?e.append(g,r.updateFunctionDeclaration(n,n.decorators,e.visitNodes(n.modifiers,K,e.isModifier),n.asteriskToken,r.getDeclarationName(n,!0,!0),void 0,e.visitNodes(n.parameters,V,e.isParameterDeclaration),void 0,e.visitNode(n.body,V,e.isBlock))):e.append(g,e.visitEachChild(n,V,t)),I(n)){var i=e.getOriginalNodeId(n);v[i]=L(v[i],n)}else g=L(g,n)}(n);case 254:return function(t){var n,i=r.getLocalName(t);if(a(i),n=e.append(n,e.setTextRange(r.createExpressionStatement(r.createAssignment(i,e.setTextRange(r.createClassExpression(e.visitNodes(t.decorators,V,e.isDecorator),void 0,t.name,void 0,e.visitNodes(t.heritageClauses,V,e.isHeritageClause),e.visitNodes(t.members,V,e.isClassElement)),t))),t)),I(t)){var o=e.getOriginalNodeId(t);v[o]=L(v[o],t)}else n=L(n,t);return e.singleOrMany(n)}(n);case 239:return function(t){var n=_;return _=t,t=r.updateForStatement(t,t.initializer&&J(t.initializer),e.visitNode(t.condition,V,e.isExpression),e.visitNode(t.incrementor,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement)),_=n,t}(n);case 240:return function(t){var n=_;return _=t,t=r.updateForInStatement(t,J(t.initializer),e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock)),_=n,t}(n);case 241:return function(t){var n=_;return _=t,t=r.updateForOfStatement(t,t.awaitModifier,J(t.initializer),e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock)),_=n,t}(n);case 237:return function(t){return r.updateDoStatement(t,e.visitNode(t.statement,q,e.isStatement,r.liftToBlock),e.visitNode(t.expression,V,e.isExpression))}(n);case 238:return function(t){return r.updateWhileStatement(t,e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock))}(n);case 247:return function(t){return r.updateLabeledStatement(t,t.label,e.visitNode(t.statement,q,e.isStatement,r.liftToBlock))}(n);case 245:return function(t){return r.updateWithStatement(t,e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock))}(n);case 246:return function(t){return r.updateSwitchStatement(t,e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.caseBlock,q,e.isCaseBlock))}(n);case 261:return function(t){var n=_;return _=t,t=r.updateCaseBlock(t,e.visitNodes(t.clauses,q,e.isCaseOrDefaultClause)),_=n,t}(n);case 287:return function(t){return r.updateCaseClause(t,e.visitNode(t.expression,V,e.isExpression),e.visitNodes(t.statements,q,e.isStatement))}(n);case 288:case 249:return function(r){return e.visitEachChild(r,q,t)}(n);case 290:return function(t){var n=_;return _=t,t=r.updateCatchClause(t,t.variableDeclaration,e.visitNode(t.block,q,e.isBlock)),_=n,t}(n);case 232:return function(r){var n=_;return _=r,r=e.visitEachChild(r,q,t),_=n,r}(n);case 341:return function(t){if(I(t)&&234===t.original.kind){var r=e.getOriginalNodeId(t),n=e.hasSyntacticModifier(t.original,1);v[r]=R(v[r],t.original,n)}return t}(n);case 342:return function(t){var r=e.getOriginalNodeId(t),n=v[r];if(n)return delete v[r],e.append(n,t);var i=e.getOriginalNode(t);return e.isModuleOrEnumDeclaration(i)?e.append(j(n,i),t):t}(n);default:return V(n)}}function J(n){if(function(t){return e.isVariableDeclarationList(t)&&T(t)}(n)){for(var i=void 0,a=0,o=n.declarations;a<o.length;a++){var s=o[a];i=e.append(i,C(s,!1)),s.initializer||w(s)}return i?r.inlineExpressions(i):r.createOmittedExpression()}return e.visitEachChild(n,q,t)}function V(n){return e.isDestructuringAssignment(n)?function(r){if(H(r.left))return e.flattenDestructuringAssignment(r,V,t,0,!0);return e.visitEachChild(r,V,t)}(n):e.isImportCall(n)?function(t){var n=e.getExternalModuleNameLiteral(r,t,d,c,s,o),i=e.visitNode(e.firstOrUndefined(t.arguments),V),a=!n||i&&e.isStringLiteral(i)&&i.text===n.text?i:n;return r.createCallExpression(r.createPropertyAccessExpression(m,r.createIdentifier("import")),void 0,a?[a]:[])}(n):1024&n.transformFlags||2097152&n.transformFlags?e.visitEachChild(n,V,t):n}function H(t){if(e.isAssignmentExpression(t,!0))return H(t.left);if(e.isSpreadElement(t))return H(t.expression);if(e.isObjectLiteralExpression(t))return e.some(t.properties,H);if(e.isArrayLiteralExpression(t))return e.some(t.elements,H);if(e.isShorthandPropertyAssignment(t))return H(t.name);if(e.isPropertyAssignment(t))return H(t.initializer);if(e.isIdentifier(t)){var r=s.getReferencedExportContainer(t);return void 0!==r&&300===r.kind}return!1}function K(e){switch(e.kind){case 93:case 88:return}return e}function W(t){var n;if(!e.isGeneratedIdentifier(t)){var i=s.getReferencedImportDeclaration(t)||s.getReferencedValueDeclaration(t);if(i){var a=s.getReferencedExportContainer(t,!1);a&&300===a.kind&&(n=e.append(n,r.getDeclarationName(i))),n=e.addRange(n,p&&p.exportedBindings[e.getOriginalNodeId(i)])}}return n}function G(t){return void 0===h&&(h=[]),h[e.getNodeId(t)]=!0,t}}}(d||(d={})),function(e){e.transformECMAScriptModule=function(t){var r,n=t.factory,a=t.getEmitHelperFactory,o=t.getCompilerOptions(),s=t.onEmitNode,c=t.onSubstituteNode;return t.onEmitNode=function(t,n,i){e.isSourceFile(n)?((e.isExternalModule(n)||o.isolatedModules)&&o.importHelpers&&(r=new e.Map),s(t,n,i),r=void 0):s(t,n,i)},t.onSubstituteNode=function(t,i){if(i=c(t,i),r&&e.isIdentifier(i)&&4096&e.getEmitFlags(i))return function(t){var i=e.idText(t),a=r.get(i);a||r.set(i,a=n.createUniqueName(i,48));return a}(i);return i},t.enableEmitNotification(300),t.enableSubstitution(78),e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;if(e.isExternalModule(r)||o.isolatedModules){var s=function(r){var i=e.createExternalHelpersImportDeclarationIfNeeded(n,a(),r,o);if(i){var s=[],c=n.copyPrologue(r.statements,s);return e.append(s,i),e.addRange(s,e.visitNodes(r.statements,l,e.isStatement,c)),n.updateSourceFile(r,e.setTextRange(n.createNodeArray(s),r.statements))}return e.visitEachChild(r,l,t)}(r);return!e.isExternalModule(r)||e.some(s.statements,e.isExternalModuleIndicator)?s:n.updateSourceFile(s,e.setTextRange(n.createNodeArray(i(i([],s.statements),[e.createEmptyExports(n)])),s.statements))}return r}));function l(t){switch(t.kind){case 263:return;case 269:return function(e){return e.isExportEquals?void 0:e}(t);case 270:return function(t){if(void 0!==o.module&&o.module>e.ModuleKind.ES2015)return t;if(!t.exportClause||!e.isNamespaceExport(t.exportClause)||!t.moduleSpecifier)return t;var r=t.exportClause.name,i=n.getGeneratedNameForNode(r),a=n.createImportDeclaration(void 0,void 0,n.createImportClause(!1,void 0,n.createNamespaceImport(i)),t.moduleSpecifier);e.setOriginalNode(a,t.exportClause);var s=e.isExportNamespaceAsDefaultDeclaration(t)?n.createExportDefault(i):n.createExportDeclaration(void 0,void 0,!1,n.createNamedExports([n.createExportSpecifier(i,r)]));return e.setOriginalNode(s,t),[a,s]}(t)}return t}}}(d||(d={})),function(e){function t(t){return e.isVariableDeclaration(t)||e.isPropertyDeclaration(t)||e.isPropertySignature(t)||e.isPropertyAccessExpression(t)||e.isBindingElement(t)||e.isConstructorDeclaration(t)?r:e.isSetAccessor(t)||e.isGetAccessor(t)?function(r){var n;n=169===t.kind?e.hasSyntacticModifier(t,32)?r.errorModuleName?e.Diagnostics.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:r.errorModuleName?e.Diagnostics.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:e.hasSyntacticModifier(t,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1;return{diagnosticMessage:n,errorNode:t.name,typeName:t.name}}:e.isConstructSignatureDeclaration(t)||e.isCallSignatureDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isFunctionDeclaration(t)||e.isIndexSignatureDeclaration(t)?function(r){var n;switch(t.kind){case 171:n=r.errorModuleName?e.Diagnostics.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 170:n=r.errorModuleName?e.Diagnostics.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 172:n=r.errorModuleName?e.Diagnostics.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 166:case 165:n=e.hasSyntacticModifier(t,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:254===t.parent.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:r.errorModuleName?e.Diagnostics.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 253:n=r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return e.Debug.fail("This is unknown kind for signature: "+t.kind)}return{diagnosticMessage:n,errorNode:t.name||t}}:e.isParameter(t)?e.isParameterPropertyDeclaration(t,t.parent)&&e.hasSyntacticModifier(t.parent,8)?r:function(r){var n=function(r){switch(t.parent.kind){case 167:return r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 171:case 176:return r.errorModuleName?e.Diagnostics.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 170:return r.errorModuleName?e.Diagnostics.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 172:return r.errorModuleName?e.Diagnostics.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 166:case 165:return e.hasSyntacticModifier(t.parent,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:254===t.parent.parent.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:r.errorModuleName?e.Diagnostics.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 253:case 175:return r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 169:case 168:return r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return e.Debug.fail("Unknown parent for parameter: "+e.SyntaxKind[t.parent.kind])}}(r);return void 0!==n?{diagnosticMessage:n,errorNode:t,typeName:t.name}:void 0}:e.isTypeParameterDeclaration(t)?function(){var r;switch(t.parent.kind){case 254:r=e.Diagnostics.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 256:r=e.Diagnostics.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 191:r=e.Diagnostics.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 176:case 171:r=e.Diagnostics.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 170:r=e.Diagnostics.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 166:case 165:r=e.hasSyntacticModifier(t.parent,32)?e.Diagnostics.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:254===t.parent.parent.kind?e.Diagnostics.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:e.Diagnostics.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 175:case 253:r=e.Diagnostics.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 257:r=e.Diagnostics.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return e.Debug.fail("This is unknown parent for type parameter: "+t.parent.kind)}return{diagnosticMessage:r,errorNode:t,typeName:t.name}}:e.isExpressionWithTypeArguments(t)?function(){var r;r=e.isClassDeclaration(t.parent.parent)?e.isHeritageClause(t.parent)&&117===t.parent.token?e.Diagnostics.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:t.parent.parent.name?e.Diagnostics.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:e.Diagnostics.extends_clause_of_exported_class_has_or_is_using_private_name_0:e.Diagnostics.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1;return{diagnosticMessage:r,errorNode:t,typeName:e.getNameOfDeclaration(t.parent.parent)}}:e.isImportEqualsDeclaration(t)?function(){return{diagnosticMessage:e.Diagnostics.Import_declaration_0_is_using_private_name_1,errorNode:t,typeName:t.name}}:e.isTypeAliasDeclaration(t)||e.isJSDocTypeAlias(t)?function(r){return{diagnosticMessage:r.errorModuleName?e.Diagnostics.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:e.Diagnostics.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:e.isJSDocTypeAlias(t)?e.Debug.checkDefined(t.typeExpression):t.type,typeName:e.isJSDocTypeAlias(t)?e.getNameOfDeclaration(t):t.name}}:e.Debug.assertNever(t,"Attempted to set a declaration diagnostic context for unhandled node kind: "+e.SyntaxKind[t.kind]);function r(r){var n=function(r){return 251===t.kind||199===t.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Exported_variable_0_has_or_is_using_private_name_1:164===t.kind||202===t.kind||163===t.kind||161===t.kind&&e.hasSyntacticModifier(t.parent,8)?e.hasSyntacticModifier(t,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:254===t.parent.kind||161===t.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_private_name_1:r.errorModuleName?e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_private_name_1:void 0}(r);return void 0!==n?{diagnosticMessage:n,errorNode:t,typeName:t.name}:void 0}}e.canProduceDiagnostics=function(t){return e.isVariableDeclaration(t)||e.isPropertyDeclaration(t)||e.isPropertySignature(t)||e.isBindingElement(t)||e.isSetAccessor(t)||e.isGetAccessor(t)||e.isConstructSignatureDeclaration(t)||e.isCallSignatureDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isFunctionDeclaration(t)||e.isParameter(t)||e.isTypeParameterDeclaration(t)||e.isExpressionWithTypeArguments(t)||e.isImportEqualsDeclaration(t)||e.isTypeAliasDeclaration(t)||e.isConstructorDeclaration(t)||e.isIndexSignatureDeclaration(t)||e.isPropertyAccessExpression(t)||e.isJSDocTypeAlias(t)},e.createGetSymbolAccessibilityDiagnosticForNodeName=function(r){return e.isSetAccessor(r)||e.isGetAccessor(r)?function(t){var n=function(t){return e.hasSyntacticModifier(r,32)?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:254===r.parent.kind?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_private_name_1:t.errorModuleName?e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_private_name_1}(t);return void 0!==n?{diagnosticMessage:n,errorNode:r,typeName:r.name}:void 0}:e.isMethodSignature(r)||e.isMethodDeclaration(r)?function(t){var n=function(t){return e.hasSyntacticModifier(r,32)?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:254===r.parent.kind?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_private_name_1:t.errorModuleName?e.Diagnostics.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Method_0_of_exported_interface_has_or_is_using_private_name_1}(t);return void 0!==n?{diagnosticMessage:n,errorNode:r,typeName:r.name}:void 0}:t(r)},e.createGetSymbolAccessibilityDiagnosticForNode=t}(d||(d={})),function(e){function t(t,r){var n=r.text.substring(t.pos,t.end);return e.stringContains(n,"@internal")}function r(r,n){var i=e.getParseTreeNode(r);if(i&&161===i.kind){var a=i.parent.parameters.indexOf(i),o=a>0?i.parent.parameters[a-1]:void 0,s=n.text,c=o?e.concatenate(e.getTrailingCommentRanges(s,e.skipTrivia(s,o.end+1,!1,!0)),e.getLeadingCommentRanges(s,r.pos)):e.getTrailingCommentRanges(s,e.skipTrivia(s,r.pos,!1,!0));return c&&c.length&&t(e.last(c),n)}var l=i&&e.getLeadingCommentRangesOfNode(i,n);return!!e.forEach(l,(function(e){return t(e,n)}))}e.getDeclarationDiagnostics=function(t,r,n){var i=t.getCompilerOptions();return e.transformNodes(r,t,e.factory,i,n?[n]:e.filter(t.getSourceFiles(),e.isSourceFileNotJson),[o],!1).diagnostics},e.isInternalDeclaration=r;var n=531469;function o(t){var o,l,u,d,p,f,m,g,_,h,y,v,b=function(){return e.Debug.fail("Diagnostic emitted without context")},k=b,x=!0,E=!1,S=!1,D=!1,w=!1,T=t.factory,C=t.getEmitHost(),A={trackSymbol:function(e,t,r){if(262144&e.flags)return;R(N.isSymbolAccessible(e,t,r,!0)),O(N.getTypeReferenceDirectivesForSymbol(e,r))},reportInaccessibleThisError:function(){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,e.declarationNameToString(m),"this"))},reportInaccessibleUniqueSymbolError:function(){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,e.declarationNameToString(m),"unique symbol"))},reportCyclicStructureError:function(){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,e.declarationNameToString(m)))},reportPrivateInBaseOfClassExpression:function(r){(m||g)&&t.addDiagnostic(e.createDiagnosticForNode(m||g,e.Diagnostics.Property_0_of_exported_class_expression_may_not_be_private_or_protected,r))},reportLikelyUnsafeImportRequiredError:function(r){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,e.declarationNameToString(m),r))},reportTruncationError:function(){(m||g)&&t.addDiagnostic(e.createDiagnosticForNode(m||g,e.Diagnostics.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))},moduleResolverHost:C,trackReferencedAmbientModule:function(t,r){var n=N.getTypeReferenceDirectivesForSymbol(r,67108863);if(e.length(n))return O(n);var i=e.getSourceFileOfNode(t);h.set(e.getOriginalNodeId(i),i)},trackExternalModuleSymbolOfImportTypeNode:function(e){E||(f||(f=[])).push(e)},reportNonlocalAugmentation:function(r,n,i){for(var a=e.find(n.declarations,(function(t){return e.getSourceFileOfNode(t)===r})),o=e.filter(i.declarations,(function(t){return e.getSourceFileOfNode(t)!==r})),s=0,c=o;s<c.length;s++){var l=c[s];t.addDiagnostic(e.addRelatedInfo(e.createDiagnosticForNode(l,e.Diagnostics.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),e.createDiagnosticForNode(a,e.Diagnostics.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}}},N=t.getEmitResolver(),P=t.getCompilerOptions(),I=P.noResolve,F=P.stripInternal;return function(r){if(300===r.kind&&r.isDeclarationFile)return r;if(301===r.kind){E=!0,h=new e.Map,y=new e.Map;var n=!1,s=T.createBundle(e.map(r.sourceFiles,(function(r){if(!r.isDeclarationFile){if(n=n||r.hasNoDefaultLib,_=r,o=r,u=void 0,p=!1,d=new e.Map,k=b,D=!1,w=!1,L(r,h),j(r,y),e.isExternalOrCommonJsModule(r)||e.isJsonSourceFile(r)){S=!1,x=!1;var i=e.isSourceFileJS(r)?T.createNodeArray(M(r,!0)):e.visitNodes(r.statements,re);return T.updateSourceFile(r,[T.createModuleDeclaration([],[T.createModifier(134)],T.createStringLiteral(e.getResolvedExternalModuleName(t.getEmitHost(),r)),T.createModuleBlock(e.setTextRange(T.createNodeArray(Z(i)),r.statements)))],!0,[],[],!1,[])}x=!0;var a=e.isSourceFileJS(r)?T.createNodeArray(M(r)):e.visitNodes(r.statements,re);return T.updateSourceFile(r,Z(a),!0,[],[],!1,[])}})),e.mapDefined(r.prepends,(function(t){if(303===t.kind){var r=e.createUnparsedSourceFile(t,"dts",F);return n=n||!!r.hasNoDefaultLib,L(r,h),O(r.typeReferenceDirectives),j(r,y),r}return t})));s.syntheticFileReferences=[],s.syntheticTypeReferences=U(),s.syntheticLibReferences=z(),s.hasNoDefaultLib=n;var c=e.getDirectoryPath(e.normalizeSlashes(e.getOutputPathsFor(r,C,!0).declarationFilePath)),m=J(s.syntheticFileReferences,c);return h.forEach(m),s}x=!0,D=!1,w=!1,o=r,_=r,k=b,E=!1,S=!1,p=!1,u=void 0,d=new e.Map,l=void 0,h=L(_,new e.Map),y=j(_,new e.Map);var g,A=[],N=e.getDirectoryPath(e.normalizeSlashes(e.getOutputPathsFor(r,C,!0).declarationFilePath)),I=J(A,N);if(e.isSourceFileJS(_))g=T.createNodeArray(M(r)),h.forEach(I),v=e.filter(g,e.isAnyImportSyntax);else{var R=e.visitNodes(r.statements,re);g=e.setTextRange(T.createNodeArray(Z(R)),r.statements),h.forEach(I),v=e.filter(g,e.isAnyImportSyntax),e.isExternalModule(r)&&(!S||D&&!w)&&(g=e.setTextRange(T.createNodeArray(i(i([],g),[e.createEmptyExports(T)])),g))}var B=T.updateSourceFile(r,g,!0,A,U(),r.hasNoDefaultLib,z());return B.exportedModulesFromDeclarationEmit=f,B;function z(){return e.map(e.arrayFrom(y.keys()),(function(e){return{fileName:e,pos:-1,end:-1}}))}function U(){return l?e.mapDefined(e.arrayFrom(l.keys()),q):[]}function q(t){if(v)for(var r=0,n=v;r<n.length;r++){var i=n[r];if(e.isImportEqualsDeclaration(i)&&e.isExternalModuleReference(i.moduleReference)){var a=i.moduleReference.expression;if(e.isStringLiteralLike(a)&&a.text===t)return}else if(e.isImportDeclaration(i)&&e.isStringLiteral(i.moduleSpecifier)&&i.moduleSpecifier.text===t)return}return{fileName:t,pos:-1,end:-1}}function J(t,n){return function(i){var o;if(i.isDeclarationFile)o=i.fileName;else{if(E&&e.contains(r.sourceFiles,i))return;var s=e.getOutputPathsFor(i,C,!0);o=s.declarationFilePath||s.jsFilePath||i.fileName}if(o){var c=e.moduleSpecifiers.getModuleSpecifier(a(a({},P),{baseUrl:P.baseUrl&&e.toPath(P.baseUrl,C.getCurrentDirectory(),C.getCanonicalFileName)}),_,e.toPath(n,C.getCurrentDirectory(),C.getCanonicalFileName),e.toPath(o,C.getCurrentDirectory(),C.getCanonicalFileName),C,void 0);if(!e.pathIsRelative(c))return void O([c]);var l=e.getRelativePathToDirectoryOrUrl(n,o,C.getCurrentDirectory(),C.getCanonicalFileName,!1);if(e.startsWith(l,"./")&&e.hasExtension(l)&&(l=l.substring(2)),function(t){return e.startsWith(t,"node_modules/")||e.pathContainsNodeModules(t)}(l)||e.isOhpm(P.packageManagerType)&&function(t){return e.startsWith(t,"oh_modules/")||e.pathContainsOHModules(t)}(l))return;t.push({pos:-1,end:-1,fileName:l})}}}};function O(t){if(t){l=l||new e.Set;for(var r=0,n=t;r<n.length;r++){var i=n[r];l.add(i)}}}function R(r){if(0===r.accessibility){if(r&&r.aliasesToMakeVisible)if(u)for(var n=0,i=r.aliasesToMakeVisible;n<i.length;n++){var a=i[n];e.pushIfUnique(u,a)}else u=r.aliasesToMakeVisible}else{var o=k(r);o&&(o.typeName?t.addDiagnostic(e.createDiagnosticForNode(r.errorNode||o.errorNode,o.diagnosticMessage,e.getTextOfNode(o.typeName),r.errorSymbolName,r.errorModuleName)):t.addDiagnostic(e.createDiagnosticForNode(r.errorNode||o.errorNode,o.diagnosticMessage,r.errorSymbolName,r.errorModuleName)))}}function M(t,r){var i=k;k=function(r){return r.errorNode&&e.canProduceDiagnostics(r.errorNode)?e.createGetSymbolAccessibilityDiagnosticForNode(r.errorNode)(r):{diagnosticMessage:r.errorModuleName?e.Diagnostics.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:e.Diagnostics.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:r.errorNode||t}};var a=N.getDeclarationStatementsForSourceFile(t,n,A,r);return k=i,a}function L(t,r){return I||!e.isUnparsedSource(t)&&e.isSourceFileJS(t)||e.forEach(t.referencedFiles,(function(n){var i=C.getSourceFileFromReference(t,n);i&&r.set(e.getOriginalNodeId(i),i)})),r}function j(t,r){return e.forEach(t.libReferenceDirectives,(function(t){C.getLibFileFromReference(t)&&r.set(e.toFileNameLowerCase(t.fileName),!0)})),r}function B(t){return 78===t.kind?t:198===t.kind?T.updateArrayBindingPattern(t,e.visitNodes(t.elements,r)):T.updateObjectBindingPattern(t,e.visitNodes(t.elements,r));function r(e){return 224===e.kind?e:T.updateBindingElement(e,e.dotDotDotToken,e.propertyName,B(e.name),U(e)?e.initializer:void 0)}}function z(t,r,n){var i;p||(i=k,k=e.createGetSymbolAccessibilityDiagnosticForNode(t));var a=T.updateParameterDeclaration(t,void 0,function(t,r,n){return e.factory.createModifiersFromModifierFlags(s(t,r,n))}(t,r),t.dotDotDotToken,B(t.name),N.isOptionalParameter(t)?t.questionToken||T.createToken(57):void 0,J(t,n||t.type,!0),q(t));return p||(k=i),a}function U(t){return function(t){switch(t.kind){case 164:case 163:return!e.hasEffectiveModifier(t,8);case 161:case 251:return!0}return!1}(t)&&N.isLiteralConstDeclaration(e.getParseTreeNode(t))}function q(t){if(U(t))return N.createLiteralConstValue(e.getParseTreeNode(t),A)}function J(t,r,i){if((i||!e.hasEffectiveModifier(t,8))&&!(U(t)||void 0!==r&&e.isTypeReferenceNode(r)&&r.typeName.virtual)){var a,s=161===t.kind&&(N.isRequiredInitializedParameter(t)||N.isOptionalUninitializedParameterProperty(t));return r&&!s?e.visitNode(r,ee):e.getParseTreeNode(t)?169===t.kind?T.createKeywordTypeNode(129):(m=t.name,p||(a=k,k=e.createGetSymbolAccessibilityDiagnosticForNode(t)),251===t.kind||199===t.kind?c(N.createTypeOfDeclaration(t,o,n,A)):161===t.kind||164===t.kind||163===t.kind?t.initializer?c(N.createTypeOfDeclaration(t,o,n,A,s)||N.createTypeOfExpression(t.initializer,o,n,A)):c(N.createTypeOfDeclaration(t,o,n,A,s)):c(N.createReturnTypeOfSignatureDeclaration(t,o,n,A))):r?e.visitNode(r,ee):T.createKeywordTypeNode(129)}function c(e){return m=void 0,p||(k=a),e||T.createKeywordTypeNode(129)}}function V(t){switch((t=e.getParseTreeNode(t)).kind){case 253:case 259:case 256:case 254:case 255:case 257:case 258:return!N.isDeclarationVisible(t);case 251:return!H(t);case 263:case 264:case 270:case 269:return!1}return!1}function H(t){return!e.isOmittedExpression(t)&&(e.isBindingPattern(t.name)?e.some(t.name.elements,H):N.isDeclarationVisible(t))}function K(t,r,n){if(!e.hasEffectiveModifier(t,8)){var i=e.map(r,(function(e){return z(e,n)}));if(i)return T.createNodeArray(i,r.hasTrailingComma)}}function W(t,r){var n;if(!r){var i=e.getThisParameter(t);i&&(n=[z(i)])}if(e.isSetAccessorDeclaration(t)){var a=void 0;if(!r){var o=e.getSetAccessorValueParameter(t);if(o)a=z(o,void 0,ue(t,N.getAllAccessorDeclarations(t)))}a||(a=T.createParameterDeclaration(void 0,void 0,void 0,"value")),n=e.append(n,a)}return T.createNodeArray(n||e.emptyArray)}function G(t,r){return e.hasEffectiveModifier(t,8)?void 0:e.visitNodes(r,ee)}function $(t){return e.isSourceFile(t)||e.isTypeAliasDeclaration(t)||e.isModuleDeclaration(t)||e.isClassDeclaration(t)||e.isStructDeclaration(t)||e.isInterfaceDeclaration(t)||e.isFunctionLike(t)||e.isIndexSignatureDeclaration(t)||e.isMappedTypeNode(t)}function Y(e,t){R(N.isEntityNameVisible(e,t)),O(N.getTypeReferenceDirectivesForEntityName(e))}function X(t,r){return e.hasJSDocNodes(t)&&e.hasJSDocNodes(r)&&(t.jsDoc=r.jsDoc),e.setCommentRange(t,e.getCommentRange(r))}function Q(r,n){if(n){if(S=S||259!==r.kind&&196!==r.kind,e.isStringLiteralLike(n))if(E){var i=e.getExternalModuleNameFromDeclaration(t.getEmitHost(),N,r);if(i)return T.createStringLiteral(i)}else{var a=N.getSymbolOfExternalModuleSpecifier(n);a&&(f||(f=[])).push(a)}return n}}function Z(t){for(;e.length(u);){var r=u.shift();if(!e.isLateVisibilityPaintedStatement(r))return e.Debug.fail("Late replaced statement was found which is not handled by the declaration transformer!: "+(e.SyntaxKind?e.SyntaxKind[r.kind]:r.kind));var n=x;x=r.parent&&e.isSourceFile(r.parent)&&!(e.isExternalModule(r.parent)&&E);var i=ie(r);x=n,d.set(e.getOriginalNodeId(r),i)}return e.visitNodes(t,(function(t){if(e.isLateVisibilityPaintedStatement(t)){var r=e.getOriginalNodeId(t);if(d.has(r)){var n=d.get(r);return d.delete(r),n&&((e.isArray(n)?e.some(n,e.needsScopeMarker):e.needsScopeMarker(n))&&(D=!0),e.isSourceFile(t.parent)&&(e.isArray(n)?e.some(n,e.isExternalModuleIndicator):e.isExternalModuleIndicator(n))&&(S=!0)),n}}return t}))}function ee(r){if(!oe(r)){if(e.isDeclaration(r)){if(V(r))return;if(e.hasDynamicName(r)&&!N.isLateBound(e.getParseTreeNode(r)))return}if(!(e.isFunctionLike(r)&&N.isImplementationOfOverload(r)||e.isSemicolonClassElement(r))){var n;$(r)&&(n=o,o=r);var i=k,a=e.canProduceDiagnostics(r),s=p,c=(178===r.kind||191===r.kind)&&257!==r.parent.kind;if((e.isMethodDeclaration(r)||e.isMethodSignature(r))&&e.hasEffectiveModifier(r,8)){if(r.symbol&&r.symbol.declarations&&r.symbol.declarations[0]!==r)return;return b(T.createPropertyDeclaration(void 0,ce(r),r.name,void 0,void 0,void 0))}if(a&&!p&&(k=e.createGetSymbolAccessibilityDiagnosticForNode(r)),e.isTypeQueryNode(r)&&Y(r.exprName,o),c&&(p=!0),function(e){switch(e.kind){case 171:case 167:case 166:case 168:case 169:case 164:case 163:case 165:case 170:case 172:case 251:case 160:case 225:case 174:case 185:case 175:case 176:case 196:return!0}return!1}(r))switch(r.kind){case 225:(e.isEntityName(r.expression)||e.isEntityNameExpression(r.expression))&&Y(r.expression,o);var l=e.visitEachChild(r,ee,t);return b(T.updateExpressionWithTypeArguments(l,l.expression,l.typeArguments));case 174:Y(r.typeName,o);l=e.visitEachChild(r,ee,t);return b(T.updateTypeReferenceNode(l,l.typeName,l.typeArguments));case 171:return b(T.updateConstructSignature(r,G(r,r.typeParameters),K(r,r.parameters),J(r,r.type)));case 167:return b(T.createConstructorDeclaration(void 0,ce(r),K(r,r.parameters,0),void 0));case 166:if(e.isPrivateIdentifier(r.name))return b(void 0);var u=void 0;return 255===r.parent.kind&&(u=le(r)),b(T.createMethodDeclaration(u,ce(r),void 0,r.name,r.questionToken,te(r)?void 0:G(r,r.typeParameters),K(r,r.parameters),J(r,r.type),void 0));case 168:if(e.isPrivateIdentifier(r.name))return b(void 0);var d=ue(r,N.getAllAccessorDeclarations(r));return b(T.updateGetAccessorDeclaration(r,void 0,ce(r),r.name,W(r,e.hasEffectiveModifier(r,8)),J(r,d),void 0));case 169:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updateSetAccessorDeclaration(r,void 0,ce(r),r.name,W(r,e.hasEffectiveModifier(r,8)),void 0));case 164:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updatePropertyDeclaration(r,255===r.parent.kind?le(r):void 0,ce(r),r.name,r.questionToken,J(r,r.type),q(r)));case 163:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updatePropertySignature(r,ce(r),r.name,r.questionToken,J(r,r.type)));case 165:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updateMethodSignature(r,ce(r),r.name,r.questionToken,G(r,r.typeParameters),K(r,r.parameters),J(r,r.type)));case 170:return b(T.updateCallSignature(r,G(r,r.typeParameters),K(r,r.parameters),J(r,r.type)));case 172:return b(T.updateIndexSignature(r,void 0,ce(r),K(r,r.parameters),e.visitNode(r.type,ee)||T.createKeywordTypeNode(129)));case 251:return e.isBindingPattern(r.name)?ae(r.name):(c=!0,p=!0,b(T.updateVariableDeclaration(r,r.name,void 0,J(r,r.type),q(r))));case 160:return function(t){return 166===t.parent.kind&&e.hasEffectiveModifier(t.parent,8)}(r)&&(r.default||r.constraint)?b(T.updateTypeParameterDeclaration(r,r.name,void 0,void 0)):b(e.visitEachChild(r,ee,t));case 185:var f=e.visitNode(r.checkType,ee),g=e.visitNode(r.extendsType,ee),h=o;o=r.trueType;var y=e.visitNode(r.trueType,ee);o=h;var v=e.visitNode(r.falseType,ee);return b(T.updateConditionalTypeNode(r,f,g,y,v));case 175:return b(T.updateFunctionTypeNode(r,e.visitNodes(r.typeParameters,ee),K(r,r.parameters),e.visitNode(r.type,ee)));case 176:return b(T.updateConstructorTypeNode(r,ce(r),e.visitNodes(r.typeParameters,ee),K(r,r.parameters),e.visitNode(r.type,ee)));case 196:return e.isLiteralImportTypeNode(r)?b(T.updateImportTypeNode(r,T.updateLiteralTypeNode(r.argument,Q(r,r.argument.literal)),r.qualifier,e.visitNodes(r.typeArguments,ee,e.isTypeNode),r.isTypeOf)):b(r);default:e.Debug.assertNever(r,"Attempted to process unhandled node kind: "+e.SyntaxKind[r.kind])}return e.isTupleTypeNode(r)&&e.getLineAndCharacterOfPosition(_,r.pos).line===e.getLineAndCharacterOfPosition(_,r.end).line&&e.setEmitFlags(r,1),b(e.visitEachChild(r,ee,t))}}function b(t){return t&&a&&e.hasDynamicName(r)&&function(t){var r;p||(r=k,k=e.createGetSymbolAccessibilityDiagnosticForNodeName(t));m=t.name,e.Debug.assert(N.isLateBound(e.getParseTreeNode(t)));var n=t;Y(n.name.expression,o),p||(k=r);m=void 0}(r),$(r)&&(o=n),a&&!p&&(k=i),c&&(p=s),t===r?t:t&&e.setOriginalNode(X(t,r),r)}}function te(t){var r;if(!(null===(r=C.getCompilerOptions().ets)||void 0===r?void 0:r.styles.component)||8!==e.getSourceFileOfNode(t).scriptKind)return!1;var n=t.decorators;if(void 0===n)return!1;for(var i=0,a=n;i<a.length;i++){var o=a[i];if(e.isIdentifier(o.expression)&&"Styles"===o.expression.escapedText.toString())return!0}return!1}function re(t){if(function(e){switch(e.kind){case 253:case 259:case 263:case 256:case 254:case 255:case 257:case 258:case 234:case 264:case 270:case 269:return!0}return!1}(t)&&!oe(t)){switch(t.kind){case 270:return e.isSourceFile(t.parent)&&(S=!0),w=!0,T.updateExportDeclaration(t,void 0,t.modifiers,t.isTypeOnly,t.exportClause,Q(t,t.moduleSpecifier));case 269:if(e.isSourceFile(t.parent)&&(S=!0),w=!0,78===t.expression.kind)return t;var r=T.createUniqueName("_default",16);k=function(){return{diagnosticMessage:e.Diagnostics.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:t}},g=t;var i=T.createVariableDeclaration(r,void 0,N.createTypeOfExpression(t.expression,t,n,A),void 0);return g=void 0,[T.createVariableStatement(x?[T.createModifier(134)]:[],T.createVariableDeclarationList([i],2)),T.updateExportAssignment(t,t.decorators,t.modifiers,r)]}var a=ie(t);return d.set(e.getOriginalNodeId(t),a),t}}function ne(t){if(e.isImportEqualsDeclaration(t)||e.hasEffectiveModifier(t,512)||!e.canHaveModifiers(t))return t;var r=T.createModifiersFromModifierFlags(11262&e.getEffectiveModifierFlags(t));return T.updateModifiers(t,r)}function ie(t){if(!oe(t)){switch(t.kind){case 263:return function(t){if(N.isDeclarationVisible(t)){if(275===t.moduleReference.kind){var r=e.getExternalModuleImportEqualsDeclarationExpression(t);return T.updateImportEqualsDeclaration(t,void 0,t.modifiers,t.isTypeOnly,t.name,T.updateExternalModuleReference(t.moduleReference,Q(t,r)))}var n=k;return k=e.createGetSymbolAccessibilityDiagnosticForNode(t),Y(t.moduleReference,o),k=n,t}}(t);case 264:return function(t){if(!t.importClause)return T.updateImportDeclaration(t,void 0,t.modifiers,t.importClause,Q(t,t.moduleSpecifier));var r=t.importClause&&t.importClause.name&&N.isDeclarationVisible(t.importClause)?t.importClause.name:void 0;if(!t.importClause.namedBindings)return r&&T.updateImportDeclaration(t,void 0,t.modifiers,T.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,void 0),Q(t,t.moduleSpecifier));if(266===t.importClause.namedBindings.kind){var n=N.isDeclarationVisible(t.importClause.namedBindings)?t.importClause.namedBindings:void 0;return r||n?T.updateImportDeclaration(t,void 0,t.modifiers,T.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,n),Q(t,t.moduleSpecifier)):void 0}var i=e.mapDefined(t.importClause.namedBindings.elements,(function(e){return N.isDeclarationVisible(e)?e:void 0}));return i&&i.length||r?T.updateImportDeclaration(t,void 0,t.modifiers,T.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,i&&i.length?T.updateNamedImports(t.importClause.namedBindings,i):void 0),Q(t,t.moduleSpecifier)):N.isImportRequiredByAugmentation(t)?T.updateImportDeclaration(t,void 0,t.modifiers,void 0,Q(t,t.moduleSpecifier)):void 0}(t)}if(!(e.isDeclaration(t)&&V(t)||e.isFunctionLike(t)&&N.isImplementationOfOverload(t))){var r;$(t)&&(r=o,o=t);var a=e.canProduceDiagnostics(t),s=k;a&&(k=e.createGetSymbolAccessibilityDiagnosticForNode(t));var c=x;switch(t.kind){case 257:return he(T.updateTypeAliasDeclaration(t,void 0,ce(t),t.name,e.visitNodes(t.typeParameters,ee,e.isTypeParameterDeclaration),e.visitNode(t.type,ee,e.isTypeNode)));case 256:return he(T.updateInterfaceDeclaration(t,void 0,ce(t),t.name,G(t,t.typeParameters),de(t.heritageClauses),e.visitNodes(t.members,ee)));case 253:var l=he(T.updateFunctionDeclaration(t,8===e.getSourceFileOfNode(t).scriptKind?le(t):void 0,ce(t),void 0,t.name,te(t)?void 0:G(t,t.typeParameters),K(t,t.parameters),J(t,t.type),void 0));if(l&&N.isExpandoFunctionDeclaration(t)){var u=N.getPropertiesOfContainerFunction(t),p=e.parseNodeFactory.createModuleDeclaration(void 0,void 0,l.name||T.createIdentifier("_default"),T.createModuleBlock([]),16);e.setParent(p,o),p.locals=e.createSymbolTable(u),p.symbol=u[0].parent;var f=[],_=e.mapDefined(u,(function(t){if(e.isPropertyAccessExpression(t.valueDeclaration)){k=e.createGetSymbolAccessibilityDiagnosticForNode(t.valueDeclaration);var r=N.createTypeOfDeclaration(t.valueDeclaration,p,n,A);k=s;var i=e.unescapeLeadingUnderscores(t.escapedName),a=e.isStringANonContextualKeyword(i),o=a?T.getGeneratedNameForNode(t.valueDeclaration):T.createIdentifier(i);a&&f.push([o,i]);var c=T.createVariableDeclaration(o,void 0,r,void 0);return T.createVariableStatement(a?void 0:[T.createToken(93)],T.createVariableDeclarationList([c]))}}));f.length?_.push(T.createExportDeclaration(void 0,void 0,!1,T.createNamedExports(e.map(f,(function(e){var t=e[0],r=e[1];return T.createExportSpecifier(t,r)}))))):_=e.mapDefined(_,(function(e){return T.updateModifiers(e,0)}));var h=T.createModuleDeclaration(void 0,ce(t),t.name,T.createModuleBlock(_),16);if(!e.hasEffectiveModifier(l,512))return[l,h];var y=T.createModifiersFromModifierFlags(-514&e.getEffectiveModifierFlags(l)|2),v=T.updateFunctionDeclaration(l,l.decorators,y,void 0,l.name,l.typeParameters,l.parameters,l.type,void 0),b=T.updateModuleDeclaration(h,void 0,y,h.name,h.body),E=T.createExportAssignment(void 0,void 0,!1,h.name);return e.isSourceFile(t.parent)&&(S=!0),w=!0,[v,b,E]}return l;case 259:x=!1;var C=t.body;if(C&&260===C.kind){var P=D,I=w;w=!1,D=!1;var F=Z(e.visitNodes(C.statements,re));8388608&t.flags&&(D=!1),e.isGlobalScopeAugmentation(t)||function(t){return e.some(t,se)}(F)||w||(F=D?T.createNodeArray(i(i([],F),[e.createEmptyExports(T)])):e.visitNodes(F,ne));var O=T.updateModuleBlock(C,F);x=c,D=P,w=I;var R=ce(t);return he(T.updateModuleDeclaration(t,void 0,R,e.isExternalModuleAugmentation(t)?Q(t,t.name):t.name,O))}x=c;R=ce(t);x=!1,e.visitNode(C,re);var M=e.getOriginalNodeId(C);O=d.get(M);return d.delete(M),he(T.updateModuleDeclaration(t,void 0,R,t.name,O));case 255:m=t.name,g=t;var L=le(t),j=(y=T.createNodeArray(ce(t)),G(t,t.typeParameters)),B=e.visitNodes(t.members,ee,void 0,1),z=T.createNodeArray(B);return he(T.updateStructDeclaration(t,L,y,t.name,j,void 0,z));case 254:m=t.name,g=t;y=T.createNodeArray(ce(t)),j=G(t,t.typeParameters);var U=e.getFirstConstructorWithBody(t),W=void 0;if(U){var ie=k;W=e.compact(e.flatMap(U.parameters,(function(t){if(e.hasSyntacticModifier(t,92)&&!oe(t))return k=e.createGetSymbolAccessibilityDiagnosticForNode(t),78===t.name.kind?X(T.createPropertyDeclaration(void 0,ce(t),t.name,t.questionToken,J(t,t.type),q(t)),t):function r(n){for(var i,a=0,o=n.elements;a<o.length;a++){var s=o[a];e.isOmittedExpression(s)||(e.isBindingPattern(s.name)&&(i=e.concatenate(i,r(s.name))),(i=i||[]).push(T.createPropertyDeclaration(void 0,ce(t),s.name,void 0,J(s,void 0),void 0)))}return i}(t.name)}))),k=ie}var ae=e.some(t.members,(function(t){return!!t.name&&e.isPrivateIdentifier(t.name)}))?[T.createPropertyDeclaration(void 0,void 0,T.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,ue=(B=e.concatenate(e.concatenate(ae,W),e.visitNodes(t.members,ee)),z=T.createNodeArray(B),e.getEffectiveBaseTypeNode(t));if(ue&&!e.isEntityNameExpression(ue.expression)&&104!==ue.expression.kind){var pe=t.name?e.unescapeLeadingUnderscores(t.name.escapedText):"default",fe=T.createUniqueName(pe+"_base",16);k=function(){return{diagnosticMessage:e.Diagnostics.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:ue,typeName:t.name}};var me=T.createVariableDeclaration(fe,void 0,N.createTypeOfExpression(ue.expression,t,n,A),void 0),ge=T.createVariableStatement(x?[T.createModifier(134)]:[],T.createVariableDeclarationList([me],2)),_e=T.createNodeArray(e.map(t.heritageClauses,(function(t){if(94===t.token){var r=k;k=e.createGetSymbolAccessibilityDiagnosticForNode(t.types[0]);var n=T.updateHeritageClause(t,e.map(t.types,(function(t){return T.updateExpressionWithTypeArguments(t,fe,e.visitNodes(t.typeArguments,ee))})));return k=r,n}return T.updateHeritageClause(t,e.visitNodes(T.createNodeArray(e.filter(t.types,(function(t){return e.isEntityNameExpression(t.expression)||104===t.expression.kind}))),ee))})));return[ge,he(T.updateClassDeclaration(t,8===e.getSourceFileOfNode(t).scriptKind?le(t):void 0,y,t.name,j,_e,z))]}_e=de(t.heritageClauses);return he(T.updateClassDeclaration(t,8===e.getSourceFileOfNode(t).scriptKind?le(t):void 0,y,t.name,j,_e,z));case 234:return he(function(t){if(!e.forEach(t.declarationList.declarations,H))return;var r=e.visitNodes(t.declarationList.declarations,ee);if(!e.length(r))return;return T.updateVariableStatement(t,T.createNodeArray(ce(t)),T.updateVariableDeclarationList(t.declarationList,r))}(t));case 258:return he(T.updateEnumDeclaration(t,void 0,T.createNodeArray(ce(t)),t.name,T.createNodeArray(e.mapDefined(t.members,(function(e){if(!oe(e)){var t=N.getConstantValue(e);return X(T.updateEnumMember(e,e.name,void 0!==t?"string"==typeof t?T.createStringLiteral(t):T.createNumericLiteral(t):void 0),e)}})))))}return e.Debug.assertNever(t,"Unhandled top-level node in declaration emit: "+e.SyntaxKind[t.kind])}}function he(n){return $(t)&&(o=r),a&&(k=s),259===t.kind&&(x=c),n===t?n:(g=void 0,m=void 0,n&&e.setOriginalNode(X(n,t),t))}}function ae(t){return e.flatten(e.mapDefined(t.elements,(function(t){return function(t){if(224===t.kind)return;if(t.name){if(!H(t))return;return e.isBindingPattern(t.name)?ae(t.name):T.createVariableDeclaration(t.name,void 0,J(t,void 0),void 0)}}(t)})))}function oe(e){return!!F&&!!e&&r(e,_)}function se(t){return e.isExportAssignment(t)||e.isExportDeclaration(t)}function ce(t){var r=e.getEffectiveModifierFlags(t),n=function(t){var r=11003,n=x&&!function(e){if(256===e.kind)return!0;return!1}(t)?2:0,i=300===t.parent.kind;(!i||E&&i&&e.isExternalModule(t.parent))&&(r^=2,n=0);return s(t,r,n)}(t);return r===n?t.modifiers:T.createModifiersFromModifierFlags(n)}function le(t){if(t.decorators)return T.createNodeArray(e.getEffectiveDecorators(t.decorators,C))}function ue(t,r){var n=c(t);return n||t===r.firstAccessor||(n=c(r.firstAccessor),k=e.createGetSymbolAccessibilityDiagnosticForNode(r.firstAccessor)),!n&&r.secondAccessor&&t!==r.secondAccessor&&(n=c(r.secondAccessor),k=e.createGetSymbolAccessibilityDiagnosticForNode(r.secondAccessor)),n}function de(t){return T.createNodeArray(e.filter(e.map(t,(function(t){return T.updateHeritageClause(t,e.visitNodes(T.createNodeArray(e.filter(t.types,(function(r){return e.isEntityNameExpression(r.expression)||94===t.token&&104===r.expression.kind}))),ee))})),(function(e){return e.types&&!!e.types.length})))}}function s(t,r,n){void 0===r&&(r=11259),void 0===n&&(n=0);var i=e.getEffectiveModifierFlags(t)&r|n;return 512&i&&!(1&i)&&(i^=1),512&i&&2&i&&(i^=2),i}function c(e){if(e)return 168===e.kind?e.type:e.parameters.length>0?e.parameters[0].type:void 0}e.transformDeclarations=o}(d||(d={})),function(e){var t,r;function n(t,r,n){if(n)return e.emptyArray;var i=e.getEmitScriptTarget(t),a=e.getEmitModuleKind(t),o=[];return e.addRange(o,r&&e.map(r.before,s)),o.push(e.transformTypeScript),o.push(e.transformClassFields),e.getJSXTransformEnabled(t)&&o.push(e.transformJsx),i<99&&o.push(e.transformESNext),i<7&&o.push(e.transformES2020),i<6&&o.push(e.transformES2019),i<5&&o.push(e.transformES2018),i<4&&o.push(e.transformES2017),i<3&&o.push(e.transformES2016),i<2&&(o.push(e.transformES2015),o.push(e.transformGenerators)),o.push(function(t){switch(t){case e.ModuleKind.ESNext:case e.ModuleKind.ES2020:case e.ModuleKind.ES2015:return e.transformECMAScriptModule;case e.ModuleKind.System:return e.transformSystemModule;default:return e.transformModule}}(a)),i<1&&o.push(e.transformES5),e.addRange(o,r&&e.map(r.after,s)),o}function a(t){var r=[];return r.push(e.transformDeclarations),e.addRange(r,t&&e.map(t.afterDeclarations,c)),r}function o(t,r){return function(n){var i=t(n);return"function"==typeof i?r(n,i):function(t){return function(r){return e.isBundle(r)?t.transformBundle(r):t.transformSourceFile(r)}}(i)}}function s(t){return o(t,e.chainBundle)}function c(e){return o(e,(function(e,t){return t}))}function l(e,t){return t}function u(e,t,r){r(e,t)}!function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Initialized=1]="Initialized",e[e.Completed=2]="Completed",e[e.Disposed=3]="Disposed"}(t||(t={})),function(e){e[e.Substitution=1]="Substitution",e[e.EmitNotifications=2]="EmitNotifications"}(r||(r={})),e.noTransformers={scriptTransformers:e.emptyArray,declarationTransformers:e.emptyArray},e.getTransformers=function(e,t,r){return{scriptTransformers:n(e,t,r),declarationTransformers:a(t)}},e.noEmitSubstitution=l,e.noEmitNotification=u,e.transformNodes=function(t,r,n,a,o,s,c){for(var d,p,f,m,g=new Array(344),_=0,h=[],y=[],v=[],b=[],k=0,x=!1,E=l,S=u,D=0,w=[],T={factory:n,getCompilerOptions:function(){return a},getEmitResolver:function(){return t},getEmitHost:function(){return r},getEmitHelperFactory:e.memoize((function(){return e.createEmitHelperFactory(T)})),startLexicalEnvironment:function(){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(!x,"Lexical environment is suspended."),h[k]=d,y[k]=p,v[k]=f,b[k]=_,k++,d=void 0,p=void 0,f=void 0,_=0},suspendLexicalEnvironment:function(){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(!x,"Lexical environment is already suspended."),x=!0},resumeLexicalEnvironment:function(){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(x,"Lexical environment is not suspended."),x=!1},endLexicalEnvironment:function(){var t;if(e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(!x,"Lexical environment is suspended."),d||p||f){if(p&&(t=i([],p)),d){var r=n.createVariableStatement(void 0,n.createVariableDeclarationList(d));e.setEmitFlags(r,1048576),t?t.push(r):t=[r]}f&&(t=i(t?i([],t):[],f))}k--,d=h[k],p=y[k],f=v[k],_=b[k],0===k&&(h=[],y=[],v=[],b=[]);return t},setLexicalEnvironmentFlags:function(e,t){_=t?_|e:_&~e},getLexicalEnvironmentFlags:function(){return _},hoistVariableDeclaration:function(t){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed.");var r=e.setEmitFlags(n.createVariableDeclaration(t),64);d?d.push(r):d=[r];1&_&&(_|=2)},hoistFunctionDeclaration:function(t){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.setEmitFlags(t,1048576),p?p.push(t):p=[t]},addInitializationStatement:function(t){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.setEmitFlags(t,1048576),f?f.push(t):f=[t]},requestEmitHelper:function t(r){if(e.Debug.assert(D>0,"Cannot modify the transformation context during initialization."),e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed."),e.Debug.assert(!r.scoped,"Cannot request a scoped emit helper."),r.dependencies)for(var n=0,i=r.dependencies;n<i.length;n++){var a=i[n];t(a)}m=e.append(m,r)},readEmitHelpers:function(){e.Debug.assert(D>0,"Cannot modify the transformation context during initialization."),e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed.");var t=m;return m=void 0,t},enableSubstitution:function(t){e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed."),g[t]|=1},enableEmitNotification:function(t){e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed."),g[t]|=2},isSubstitutionEnabled:L,isEmitNotificationEnabled:j,get onSubstituteNode(){return E},set onSubstituteNode(t){e.Debug.assert(D<1,"Cannot modify transformation hooks after initialization has completed."),e.Debug.assert(void 0!==t,"Value must not be 'undefined'"),E=t},get onEmitNode(){return S},set onEmitNode(t){e.Debug.assert(D<1,"Cannot modify transformation hooks after initialization has completed."),e.Debug.assert(void 0!==t,"Value must not be 'undefined'"),S=t},addDiagnostic:function(e){w.push(e)}},C=0,A=o;C<A.length;C++){var N=A[C];e.disposeEmitNodes(e.getSourceFileOfNode(e.getParseTreeNode(N)))}e.performance.mark("beforeTransform");var P=s.map((function(e){return e(T)})),I=function(e){for(var t=0,r=P;t<r.length;t++){e=(0,r[t])(e)}return e};D=1;for(var F=[],O=0,R=o;O<R.length;O++){N=R[O];null===e.tracing||void 0===e.tracing||e.tracing.push("emit","transformNodes",300===N.kind?{path:N.path}:{kind:N.kind,pos:N.pos,end:N.end}),F.push((c?I:M)(N)),null===e.tracing||void 0===e.tracing||e.tracing.pop()}return D=2,e.performance.mark("afterTransform"),e.performance.measure("transformTime","beforeTransform","afterTransform"),{transformed:F,substituteNode:function(t,r){return e.Debug.assert(D<3,"Cannot substitute a node after the result is disposed."),r&&L(r)&&E(t,r)||r},emitNodeWithNotification:function(t,r,n){e.Debug.assert(D<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),r&&(j(r)?S(t,r,n):n(t,r))},isEmitNotificationEnabled:j,dispose:function(){if(D<3){for(var t=0,r=o;t<r.length;t++){var n=r[t];e.disposeEmitNodes(e.getSourceFileOfNode(e.getParseTreeNode(n)))}d=void 0,h=void 0,p=void 0,y=void 0,E=void 0,S=void 0,m=void 0,D=3}},diagnostics:w};function M(t){return!t||e.isSourceFile(t)&&t.isDeclarationFile?t:I(t)}function L(t){return!(!(1&g[t.kind])||4&e.getEmitFlags(t))}function j(t){return!!(2&g[t.kind])||!!(2&e.getEmitFlags(t))}},e.nullTransformationContext={get factory(){return e.factory},enableEmitNotification:e.noop,enableSubstitution:e.noop,endLexicalEnvironment:e.returnUndefined,getCompilerOptions:function(){return{}},getEmitHost:e.notImplemented,getEmitResolver:e.notImplemented,getEmitHelperFactory:e.notImplemented,setLexicalEnvironmentFlags:e.noop,getLexicalEnvironmentFlags:function(){return 0},hoistFunctionDeclaration:e.noop,hoistVariableDeclaration:e.noop,addInitializationStatement:e.noop,isEmitNotificationEnabled:e.notImplemented,isSubstitutionEnabled:e.notImplemented,onEmitNode:e.noop,onSubstituteNode:e.notImplemented,readEmitHelpers:e.notImplemented,requestEmitHelper:e.noop,resumeLexicalEnvironment:e.noop,startLexicalEnvironment:e.noop,suspendLexicalEnvironment:e.noop,addDiagnostic:e.noop}}(d||(d={})),function(e){var t,r,n=function(){var e=[];return e[1024]=["{","}"],e[2048]=["(",")"],e[4096]=["<",">"],e[8192]=["[","]"],e}(),a={pos:-1,end:-1};function o(t,r,n,i,a,o){void 0===i&&(i=!1);var c=e.isArray(n)?n:e.getSourceFilesToEmit(t,n,i),u=t.getCompilerOptions();if(e.outFile(u)){var d=t.getPrependNodes();if(c.length||d.length){var p=e.factory.createBundle(c,d);if(g=r(l(p,t,i),p))return g}}else{if(!a)for(var f=0,m=c;f<m.length;f++){var g,_=m[f];if(g=r(l(_,t,i),_))return g}if(o){var h=s(u);if(h)return r({buildInfoPath:h},void 0)}}}function s(t){var r=t.configFilePath;if(e.isIncrementalCompilation(t)){if(t.tsBuildInfoFile)return t.tsBuildInfoFile;var n,i=e.outFile(t);if(i)n=e.removeFileExtension(i);else{if(!r)return;var a=e.removeFileExtension(r);n=t.outDir?t.rootDir?e.resolvePath(t.outDir,e.getRelativePathFromDirectory(t.rootDir,a,!0)):e.combinePaths(t.outDir,e.getBaseFileName(a)):a}return n+".tsbuildinfo"}}function c(t,r){var n=e.outFile(t),i=t.emitDeclarationOnly?void 0:n,a=i&&u(i,t),o=r||e.getEmitDeclarations(t)?e.removeFileExtension(n)+".d.ts":void 0;return{jsFilePath:i,sourceMapFilePath:a,declarationFilePath:o,declarationMapPath:o&&e.getAreDeclarationMapsEnabled(t)?o+".map":void 0,buildInfoPath:s(t)}}function l(t,r,n){var i=r.getCompilerOptions();if(301===t.kind)return c(i,n);var a=e.getOwnEmitOutputFilePath(t.fileName,r,d(t,i)),o=e.isJsonSourceFile(t),s=o&&0===e.comparePaths(t.fileName,a,r.getCurrentDirectory(),!r.useCaseSensitiveFileNames()),l=i.emitDeclarationOnly||s?void 0:a,p=!l||e.isJsonSourceFile(t)?void 0:u(l,i),f=n||e.getEmitDeclarations(i)&&!o?e.getDeclarationEmitOutputFilePath(t.fileName,r):void 0;return{jsFilePath:l,sourceMapFilePath:p,declarationFilePath:f,declarationMapPath:f&&e.getAreDeclarationMapsEnabled(i)?f+".map":void 0,buildInfoPath:void 0}}function u(e,t){return t.sourceMap&&!t.inlineSourceMap?e+".map":void 0}function d(t,r){if(e.isJsonSourceFile(t))return".json";if(1===r.jsx)if(e.isSourceFileJS(t)){if(e.fileExtensionIs(t.fileName,".jsx"))return".jsx"}else if(1===t.languageVariant)return".jsx";return".js"}function p(t,r,n,i,a){return i?e.resolvePath(i,e.getRelativePathFromDirectory(a?a():v(r,n),t,n)):t}function f(t,r,n,i){return e.Debug.assert(!e.isDeclarationFileName(t)&&!e.fileExtensionIs(t,".json")),e.changeExtension(p(t,r,n,r.options.declarationDir||r.options.outDir,i),e.fileExtensionIs(t,".ets")?".d.ets":".d.ts")}function m(t,r,n,i){if(!r.options.emitDeclarationOnly){var a=e.fileExtensionIs(t,".json"),o=e.changeExtension(p(t,r,n,r.options.outDir,i),a?".json":1===r.options.jsx&&(e.fileExtensionIs(t,".tsx")||e.fileExtensionIs(t,".jsx"))?".jsx":".js");return a&&0===e.comparePaths(t,o,e.Debug.checkDefined(r.options.configFilePath),n)?void 0:o}}function g(){var t;return{addOutput:function(e){e&&(t||(t=[])).push(e)},getOutputs:function(){return t||e.emptyArray}}}function _(e,t){var r=c(e.options,!1),n=r.jsFilePath,i=r.sourceMapFilePath,a=r.declarationFilePath,o=r.declarationMapPath,s=r.buildInfoPath;t(n),t(i),t(a),t(o),t(s)}function h(t,r,n,i,a){if(!e.isDeclarationFileName(r)){var o=m(r,t,n,a);if(i(o),!e.fileExtensionIs(r,".json")&&(o&&t.options.sourceMap&&i(o+".map"),e.getEmitDeclarations(t.options))){var s=f(r,t,n,a);i(s),t.options.declarationMap&&i(s+".map")}}}function y(t,r,n,i,a){var o;return t.rootDir?(o=e.getNormalizedAbsolutePath(t.rootDir,n),null==a||a(t.rootDir)):t.composite&&t.configFilePath?(o=e.getDirectoryPath(e.normalizeSlashes(t.configFilePath)),null==a||a(o)):o=e.computeCommonSourceDirectoryOfFilenames(r(),n,i),o&&o[o.length-1]!==e.directorySeparator&&(o+=e.directorySeparator),o}function v(t,r){var n=t.options,i=t.fileNames;return y(n,(function(){return e.filter(i,(function(t){return!(n.noEmitForJsFiles&&e.fileExtensionIsOneOf(t,e.supportedJSExtensions)||e.isDeclarationFileName(t))}))}),e.getDirectoryPath(e.normalizeSlashes(e.Debug.checkDefined(n.configFilePath))),e.createGetCanonicalFileName(!r))}function b(t,r,n,i,a,s,c){var l,u,d=i.scriptTransformers,p=i.declarationTransformers,f=r.getCompilerOptions(),m=f.sourceMap||f.inlineSourceMap||e.getAreDeclarationMapsEnabled(f)?[]:void 0,g=f.listEmittedFiles?[]:void 0,_=e.createDiagnosticCollection(),h=e.getNewLineCharacter(f,(function(){return r.getNewLine()})),y=e.createTextWriter(h),v=e.performance.createTimer("printTime","beforePrint","afterPrint"),b=v.enter,x=v.exit,S=!1;return b(),o(r,(function(i,o){var s,m=i.jsFilePath,h=i.sourceMapFilePath,y=i.declarationFilePath,v=i.declarationMapPath,b=i.buildInfoPath;b&&o&&e.isBundle(o)&&(s=e.getDirectoryPath(e.getNormalizedAbsolutePath(b,r.getCurrentDirectory())),l={commonSourceDirectory:x(r.getCommonSourceDirectory()),sourceFiles:o.sourceFiles.map((function(t){return x(e.getNormalizedAbsolutePath(t.fileName,r.getCurrentDirectory()))}))});null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitJsFileOrBundle",{jsFilePath:m}),function(n,i,o,s){if(!n||a||!i)return;if(i&&r.isEmitBlocked(i)||f.noEmit)return void(S=!0);var c=e.transformNodes(t,r,e.factory,f,[n],d,!1),u=E({removeComments:f.removeComments,newLine:f.newLine,noEmitHelpers:f.noEmitHelpers,module:f.module,target:f.target,sourceMap:f.sourceMap,inlineSourceMap:f.inlineSourceMap,inlineSources:f.inlineSources,extendedDiagnostics:f.extendedDiagnostics,writeBundleFileInfo:!!l,relativeToBuildInfo:s},{hasGlobalName:t.hasGlobalName,onEmitNode:c.emitNodeWithNotification,isEmitNotificationEnabled:c.isEmitNotificationEnabled,substituteNode:c.substituteNode});e.Debug.assert(1===c.transformed.length,"Should only see one output from the transform"),w(i,o,c.transformed[0],u,f),c.dispose(),l&&(l.js=u.bundleFileInfo)}(o,m,h,x),null===e.tracing||void 0===e.tracing||e.tracing.pop(),null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitDeclarationFileOrBundle",{declarationFilePath:y}),function(n,i,o,s){if(!n)return;if(!i)return void((a||f.emitDeclarationOnly)&&(S=!0));var d=e.isSourceFile(n)?[n]:n.sourceFiles,m=c?d:e.filter(d,e.isSourceFileNotJson),g=e.outFile(f)?[e.factory.createBundle(m,e.isSourceFile(n)?void 0:n.prepends)]:m;a&&!e.getEmitDeclarations(f)&&m.forEach(D);var h=e.transformNodes(t,r,e.factory,f,g,p,!1);if(e.length(h.diagnostics))for(var y=0,v=h.diagnostics;y<v.length;y++){var b=v[y];_.add(b)}var k=E({removeComments:f.removeComments,newLine:f.newLine,noEmitHelpers:!0,module:f.module,target:f.target,sourceMap:f.sourceMap,inlineSourceMap:f.inlineSourceMap,extendedDiagnostics:f.extendedDiagnostics,onlyPrintJsDocStyle:!0,writeBundleFileInfo:!!l,recordInternalSection:!!l,relativeToBuildInfo:s},{hasGlobalName:t.hasGlobalName,onEmitNode:h.emitNodeWithNotification,isEmitNotificationEnabled:h.isEmitNotificationEnabled,substituteNode:h.substituteNode}),x=!!h.diagnostics&&!!h.diagnostics.length||!!r.isEmitBlocked(i)||!!f.noEmit;if(S=S||x,(!x||c)&&(e.Debug.assert(1===h.transformed.length,"Should only see one output from the decl transform"),w(i,o,h.transformed[0],k,{sourceMap:f.declarationMap,sourceRoot:f.sourceRoot,mapRoot:f.mapRoot,extendedDiagnostics:f.extendedDiagnostics}),c&&300===h.transformed[0].kind)){var T=h.transformed[0];u=T.exportedModulesFromDeclarationEmit}h.dispose(),l&&(l.dts=k.bundleFileInfo)}(o,y,v,x),null===e.tracing||void 0===e.tracing||e.tracing.pop(),null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitBuildInfo",{buildInfoPath:b}),function(t,i){if(!i||n||S)return;var a=r.getProgramBuildInfo();if(r.isEmitBlocked(i))return void(S=!0);var o=e.version;e.writeFile(r,_,i,k({bundle:t,program:a,version:o}),!1)}(l,b),null===e.tracing||void 0===e.tracing||e.tracing.pop(),!S&&g&&(a||(m&&g.push(m),h&&g.push(h),b&&g.push(b)),y&&g.push(y),v&&g.push(v));function x(t){return e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(s,t,r.getCanonicalFileName))}}),e.getSourceFilesToEmit(r,n,c),c,s,!n),x(),{emitSkipped:S,diagnostics:_.getDiagnostics(),emittedFiles:g,sourceMaps:m,exportedModulesFromDeclarationEmit:u};function D(r){e.isExportAssignment(r)?78===r.expression.kind&&t.collectLinkedAliases(r.expression,!0):e.isExportSpecifier(r)?t.collectLinkedAliases(r.propertyName||r.name,!0):e.forEachChild(r,D)}function w(t,n,i,a,o){var s,c=301===i.kind?i:void 0,l=300===i.kind?i:void 0,u=c?c.sourceFiles:[l];if(function(t,r){return(t.sourceMap||t.inlineSourceMap)&&(300!==r.kind||!e.fileExtensionIs(r.fileName,".json"))}(o,i)&&(s=e.createSourceMapGenerator(r,e.getBaseFileName(e.normalizeSlashes(t)),function(t){var r=e.normalizeSlashes(t.sourceRoot||"");return r?e.ensureTrailingDirectorySeparator(r):r}(o),function(t,n,i){if(t.sourceRoot)return r.getCommonSourceDirectory();if(t.mapRoot){var a=e.normalizeSlashes(t.mapRoot);return i&&(a=e.getDirectoryPath(e.getSourceFilePathInNewDir(i.fileName,r,a))),0===e.getRootLength(a)&&(a=e.combinePaths(r.getCommonSourceDirectory(),a)),a}return e.getDirectoryPath(e.normalizePath(n))}(o,t,l),o)),c?a.writeBundle(c,y,s):a.writeFile(l,y,s),s){m&&m.push({inputSourceFileNames:s.getSources(),sourceMap:s.toJSON()});var d=function(t,n,i,a,o){if(t.inlineSourceMap){var s=n.toString();return"data:application/json;base64,"+e.base64encode(e.sys,s)}var c=e.getBaseFileName(e.normalizeSlashes(e.Debug.checkDefined(a)));if(t.mapRoot){var l=e.normalizeSlashes(t.mapRoot);return o&&(l=e.getDirectoryPath(e.getSourceFilePathInNewDir(o.fileName,r,l))),0===e.getRootLength(l)?(l=e.combinePaths(r.getCommonSourceDirectory(),l),encodeURI(e.getRelativePathToDirectoryOrUrl(e.getDirectoryPath(e.normalizePath(i)),e.combinePaths(l,c),r.getCurrentDirectory(),r.getCanonicalFileName,!0))):encodeURI(e.combinePaths(l,c))}return encodeURI(c)}(o,s,t,n,l);if(d&&(y.isAtStartOfLine()||y.rawWrite(h),y.writeComment("//# sourceMappingURL="+d)),n){var p=s.toString();e.writeFile(r,_,n,p,!1,u)}}else y.writeLine();e.writeFile(r,_,t,y.getText(),!!f.emitBOM,u),y.clear()}}function k(e){return JSON.stringify(e,void 0,2)}function x(e){return JSON.parse(e)}function E(t,r){void 0===t&&(t={}),void 0===r&&(r={});var i,o,s,c,l,u,d,p,f,m,g,_,h,y,v,b,k,x,E,S=r.hasGlobalName,D=r.onEmitNode,w=void 0===D?e.noEmitNotification:D,T=r.isEmitNotificationEnabled,C=r.substituteNode,A=void 0===C?e.noEmitSubstitution:C,N=r.onBeforeEmitNodeArray,P=r.onAfterEmitNodeArray,I=r.onBeforeEmitToken,F=r.onAfterEmitToken,O=!!t.extendedDiagnostics,R=e.getNewLineCharacter(t),M=e.getEmitModuleKind(t),L=new e.Map,j=t.preserveSourceNewlines,B=function(e){m.write(e)},z=t.writeBundleFileInfo?{sections:[]}:void 0,U=z?e.Debug.checkDefined(t.relativeToBuildInfo):void 0,q=t.recordInternalSection,J=0,V="text",H=!0,K=-1,W=-1,G=-1,$=-1,Y=-1,X=!1,Q=!!t.removeComments,Z=e.performance.createTimerIf(O,"commentTime","beforeComment","afterComment"),ee=Z.enter,te=Z.exit;return ye(),{printNode:function(t,r,n){switch(t){case 0:e.Debug.assert(e.isSourceFile(r),"Expected a SourceFile node.");break;case 2:e.Debug.assert(e.isIdentifier(r),"Expected an Identifier node.");break;case 1:e.Debug.assert(e.isExpression(r),"Expected an Expression node.")}switch(r.kind){case 300:return ne(r);case 301:return re(r);case 302:return function(e,t){var r=m;he(t,void 0),ge(4,e,void 0),ye(),m=r}(r,fe()),me()}return ie(t,r,n,fe()),me()},printList:function(e,t,r){return ae(e,t,r,fe()),me()},printFile:ne,printBundle:re,writeNode:ie,writeList:ae,writeFile:pe,writeBundle:de,bundleFileInfo:z};function re(e){return de(e,fe(),void 0),me()}function ne(e){return pe(e,fe(),void 0),me()}function ie(e,t,r,n){var i=m;he(n,void 0),ge(e,t,r),ye(),m=i}function ae(e,t,r,n){var i=m;he(n,void 0),r&&_e(r),Et(a,t,e),ye(),m=i}function oe(){return m.getTextPosWithWriteLine?m.getTextPosWithWriteLine():m.getTextPos()}function se(t,r,n){var i=e.lastOrUndefined(z.sections);i&&i.kind===n?i.end=r:z.sections.push({pos:t,end:r,kind:n})}function ce(t){if(q&&z&&i&&(e.isDeclaration(t)||e.isVariableStatement(t))&&e.isInternalDeclaration(t,i)&&"internal"!==V){var r=V;return ue(m.getTextPos()),J=oe(),V="internal",r}}function le(e){e&&(ue(m.getTextPos()),J=oe(),V=e)}function ue(e){return J<e&&(se(J,e,V),!0)}function de(r,n,i){var a;_=!1;var o=m;he(n,i),ut(r),lt(r),Ne(r),function(t){at(!!t.hasNoDefaultLib,t.syntheticFileReferences||[],t.syntheticTypeReferences||[],t.syntheticLibReferences||[]);for(var r=0,n=t.prepends;r<n.length;r++){var i=n[r];if(e.isUnparsedSource(i)&&i.syntheticReferences)for(var a=0,o=i.syntheticReferences;a<o.length;a++){be(o[a]),Mt()}}}(r);for(var s=0,c=r.prepends;s<c.length;s++){var l=c[s];Mt();var u=m.getTextPos(),d=z&&z.sections;if(d&&(z.sections=[]),ge(4,l,void 0),z){var p=z.sections;z.sections=d,l.oldFileOfCurrentEmit?(a=z.sections).push.apply(a,p):(p.forEach((function(t){return e.Debug.assert(e.isBundleFileTextLike(t))})),z.sections.push({pos:u,end:m.getTextPos(),kind:"prepend",data:U(l.fileName),texts:p}))}}J=oe();for(var f=0,g=r.sourceFiles;f<g.length;f++){var h=g[f];ge(0,h,h)}if(z&&r.sourceFiles.length&&ue(m.getTextPos())){var y=function(t){for(var r,n=new e.Set,i=0;i<t.sourceFiles.length;i++){for(var a=t.sourceFiles[i],o=void 0,s=0,c=0,l=a.statements;c<l.length;c++){var u=l[c];if(!e.isPrologueDirective(u))break;n.has(u.expression.text)||(n.add(u.expression.text),(o||(o=[])).push({pos:u.pos,end:u.end,expression:{pos:u.expression.pos,end:u.expression.end,text:u.expression.text}}),s=s<u.end?u.end:s)}o&&(r||(r=[])).push({file:i,text:a.text.substring(0,s),directives:o})}return r}(r);y&&(z.sources||(z.sources={}),z.sources.prologues=y);var v=function(r){var n;if(M===e.ModuleKind.None||t.noEmitHelpers)return;for(var i=new e.Map,a=0,o=r.sourceFiles;a<o.length;a++){var s=o[a],c=void 0!==e.getExternalHelpersModuleName(s),l=Pe(s);if(l)for(var u=0,d=l;u<d.length;u++){var p=d[u];p.scoped||c||i.get(p.name)||(i.set(p.name,!0),(n||(n=[])).push(p.name))}}return n}(r);v&&(z.sources||(z.sources={}),z.sources.helpers=v)}ye(),m=o}function pe(e,t,r){_=!0;var n=m;he(t,r),ut(e),lt(e),ge(0,e,e),ye(),m=n}function fe(){return g||(g=e.createTextWriter(R))}function me(){var e=g.getText();return g.clear(),e}function ge(e,t,r){r&&_e(r),Se(e,t)}function _e(e){i=e,b=void 0,k=void 0,e&&zr(e)}function he(r,n){r&&t.omitTrailingSemicolon&&(r=e.getTrailingSemicolonDeferringWriter(r)),h=n,H=!(m=r)||!h}function ye(){o=[],s=[],c=new e.Set,l=[],u=0,d=[],i=void 0,b=void 0,k=void 0,x=void 0,E=void 0,he(void 0,void 0)}function ve(){return b||(b=e.getLineStarts(i))}function be(e){if(void 0!==e){var t=ce(e),r=Se(4,e);return le(t),r}}function ke(e){if(void 0!==e)return Se(2,e)}function xe(e){if(void 0!==e)return Se(1,e)}function Ee(t){return Se(e.isStringLiteral(t)?6:4,t)}function Se(t,r){var n=x,i=E,a=j;x=r,E=void 0,j&&134217728&e.getEmitFlags(r)&&(j=!1),De(0,t,r)(t,r),e.Debug.assert(x===r);var o=E;return x=n,E=i,j=a,o||r}function De(t,r,n){switch(t){case 0:if(w!==e.noEmitNotification&&(!T||T(n)))return Te;case 1:if(A!==e.noEmitSubstitution&&(E=A(r,n))!==n)return Ae;case 2:if(!Q&&300!==n.kind)return hr;case 3:if(!H&&300!==n.kind&&!e.isInJsonFile(n))return Mr;case 4:return Ce;default:return e.Debug.assertNever(t)}}function we(e,t,r){return De(e+1,t,r)}function Te(t,r){e.Debug.assert(x===r);var n=we(0,t,r);w(t,r,n),e.Debug.assert(x===r)}function Ce(t,r){if(e.Debug.assert(x===r||E===r),0===t)return function(t){Mt();var r=t.statements;if(kr){if(0===r.length||!e.isPrologueDirective(r[0])||e.nodeIsSynthesized(r[0]))return void kr(t,r,ot)}ot(t)}(e.cast(r,e.isSourceFile));if(2===t)return Oe(e.cast(r,e.isIdentifier));if(6===t)return Ie(e.cast(r,e.isStringLiteral),!0);if(3===t)return function(e){be(e.name),Ot(),Nt("in"),Ot(),be(e.constraint)}(e.cast(r,e.isTypeParameterDeclaration));if(5===t)return e.Debug.assertNode(r,e.isEmptyStatement),Le(!0);if(4===t){if(e.isKeyword(r.kind))return zt(r,Nt);switch(r.kind){case 15:case 16:case 17:return Ie(r,!1);case 302:case 296:return function(e){for(var t=0,r=e.texts;t<r.length;t++){var n=r[t];Mt(),be(n)}}(r);case 295:return Fe(r);case 297:case 298:return o=r,s=oe(),Fe(o),void(z&&se(s,m.getTextPos(),297===o.kind?"text":"internal"));case 299:return function(t){var r=oe();if(Fe(t),z){var n=e.clone(t.section);n.pos=r,n.end=m.getTextPos(),z.sections.push(n)}}(r);case 78:return Oe(r);case 79:return function(e){var t=e.symbol?Tt:B;t(rr(e,!1),e.symbol)}(r);case 158:return function(e){(function(e){78===e.kind?xe(e):be(e)})(e.left),Ct("."),be(e.right)}(r);case 159:return function(e){Ct("["),xe(e.expression),Ct("]")}(r);case 160:return function(e){be(e.name),e.constraint&&(Ot(),Nt("extends"),Ot(),be(e.constraint));e.default&&(Ot(),Pt("="),Ot(),be(e.default))}(r);case 161:return function(e){yt(e,e.decorators),pt(e,e.modifiers),be(e.dotDotDotToken),dt(e.name,It),be(e.questionToken),e.parent&&311===e.parent.kind&&!e.name?be(e.type):ft(e.type);mt(e.initializer,e.type?e.type.end:e.questionToken?e.questionToken.end:e.name?e.name.end:e.modifiers?e.modifiers.end:e.decorators?e.decorators.end:e.pos,e)}(r);case 162:return a=r,Ct("@"),void xe(a.expression);case 163:return function(e){yt(e,e.decorators),pt(e,e.modifiers),dt(e.name,Rt),be(e.questionToken),ft(e.type),At()}(r);case 164:return function(e){yt(e,e.decorators),pt(e,e.modifiers),be(e.name),be(e.questionToken),be(e.exclamationToken),ft(e.type),mt(e.initializer,e.type?e.type.end:e.questionToken?e.questionToken.end:e.name.end,e),At()}(r);case 165:return function(e){ir(e),yt(e,e.decorators),pt(e,e.modifiers),be(e.name),be(e.questionToken),bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type),At(),ar(e)}(r);case 166:return function(e){yt(e,e.decorators),pt(e,e.modifiers),be(e.asteriskToken),be(e.name),be(e.questionToken),Je(e,Ve)}(r);case 167:return function(e){pt(e,e.modifiers),Nt("constructor"),Je(e,Ve)}(r);case 168:case 169:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Nt(168===e.kind?"get":"set"),Ot(),be(e.name),Je(e,Ve)}(r);case 170:return function(e){ir(e),yt(e,e.decorators),pt(e,e.modifiers),bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type),At(),ar(e)}(r);case 171:return function(e){ir(e),yt(e,e.decorators),pt(e,e.modifiers),Nt("new"),Ot(),bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type),At(),ar(e)}(r);case 172:return function(e){yt(e,e.decorators),pt(e,e.modifiers),t=e,r=e.parameters,Et(t,r,8848),ft(e.type),At();var t,r}(r);case 195:return function(e){be(e.type),be(e.literal)}(r);case 173:return function(e){e.assertsModifier&&(be(e.assertsModifier),Ot());be(e.parameterName),e.type&&(Ot(),Nt("is"),Ot(),be(e.type))}(r);case 174:return function(e){be(e.typeName),vt(e,e.typeArguments)}(r);case 175:return function(e){ir(e),bt(e,e.typeParameters),xt(e,e.parameters),Ot(),Ct("=>"),Ot(),be(e.type),ar(e)}(r);case 311:return function(e){Nt("function"),kt(e,e.parameters),Ct(":"),be(e.type)}(r);case 176:return function(e){ir(e),pt(e,e.modifiers),Nt("new"),Ot(),bt(e,e.typeParameters),kt(e,e.parameters),Ot(),Ct("=>"),Ot(),be(e.type),ar(e)}(r);case 177:return function(e){Nt("typeof"),Ot(),be(e.exprName)}(r);case 178:return function(t){Ct("{");var r=1&e.getEmitFlags(t)?768:32897;Et(t,t.members,524288|r),Ct("}")}(r);case 179:return function(e){be(e.elementType),Ct("["),Ct("]")}(r);case 180:return function(t){ze(22,t.pos,Ct,t);var r=1&e.getEmitFlags(t)?528:657;Et(t,t.elements,524288|r),ze(23,t.elements.end,Ct,t)}(r);case 181:return function(e){be(e.type),Ct("?")}(r);case 183:return function(e){Et(e,e.types,516)}(r);case 184:return function(e){Et(e,e.types,520)}(r);case 185:return function(e){be(e.checkType),Ot(),Nt("extends"),Ot(),be(e.extendsType),Ot(),Ct("?"),Ot(),be(e.trueType),Ot(),Ct(":"),Ot(),be(e.falseType)}(r);case 186:return function(e){Nt("infer"),Ot(),be(e.typeParameter)}(r);case 187:return function(e){Ct("("),be(e.type),Ct(")")}(r);case 225:return function(e){xe(e.expression),vt(e,e.typeArguments)}(r);case 188:return void Nt("this");case 189:return function(e){Ut(e.operator,Nt),Ot(),be(e.type)}(r);case 190:return function(e){be(e.objectType),Ct("["),be(e.indexType),Ct("]")}(r);case 191:return function(t){var r=e.getEmitFlags(t);Ct("{"),1&r?Ot():(Mt(),Lt());t.readonlyToken&&(be(t.readonlyToken),143!==t.readonlyToken.kind&&Nt("readonly"),Ot());Ct("["),Se(3,t.typeParameter),t.nameType&&(Ot(),Nt("as"),Ot(),be(t.nameType));Ct("]"),t.questionToken&&(be(t.questionToken),57!==t.questionToken.kind&&Ct("?"));Ct(":"),Ot(),be(t.type),At(),1&r?Ot():(Mt(),jt());Ct("}")}(r);case 192:return function(e){xe(e.literal)}(r);case 194:return function(e){be(e.head),Et(e,e.templateSpans,262144)}(r);case 196:return function(e){e.isTypeOf&&(Nt("typeof"),Ot());Nt("import"),Ct("("),be(e.argument),Ct(")"),e.qualifier&&(Ct("."),be(e.qualifier));vt(e,e.typeArguments)}(r);case 306:return void Ct("*");case 307:return void Ct("?");case 308:return function(e){Ct("?"),be(e.type)}(r);case 309:return function(e){Ct("!"),be(e.type)}(r);case 310:return function(e){be(e.type),Ct("=")}(r);case 182:case 312:return function(e){Ct("..."),be(e.type)}(r);case 193:return function(e){be(e.dotDotDotToken),be(e.name),be(e.questionToken),ze(58,e.name.end,Ct,e),Ot(),be(e.type)}(r);case 197:return function(e){Ct("{"),Et(e,e.elements,525136),Ct("}")}(r);case 198:return function(e){Ct("["),Et(e,e.elements,524880),Ct("]")}(r);case 199:return function(e){be(e.dotDotDotToken),e.propertyName&&(be(e.propertyName),Ct(":"),Ot());be(e.name),mt(e.initializer,e.name.end,e)}(r);case 230:return function(e){xe(e.expression),be(e.literal)}(r);case 231:return void At();case 232:return function(e){Me(e,!e.multiLine&&er(e))}(r);case 234:return function(e){pt(e,e.modifiers),be(e.declarationList),At()}(r);case 233:return Le(!1);case 235:return function(t){xe(t.expression),(!e.isJsonSourceFile(i)||e.nodeIsSynthesized(t.expression))&&At()}(r);case 236:return function(e){var t=ze(99,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.thenStatement),e.elseStatement&&(qt(e,e.thenStatement,e.elseStatement),ze(91,e.thenStatement.end,Nt,e),236===e.elseStatement.kind?(Ot(),be(e.elseStatement)):ht(e,e.elseStatement))}(r);case 237:return function(t){ze(90,t.pos,Nt,t),ht(t,t.statement),e.isBlock(t.statement)&&!j?Ot():qt(t,t.statement,t.expression);je(t,t.statement.end),At()}(r);case 238:return function(e){je(e,e.pos),ht(e,e.statement)}(r);case 239:return function(e){var t=ze(97,e.pos,Nt,e);Ot();var r=ze(20,t,Ct,e);Be(e.initializer),r=ze(26,e.initializer?e.initializer.end:r,Ct,e),_t(e.condition),r=ze(26,e.condition?e.condition.end:r,Ct,e),_t(e.incrementor),ze(21,e.incrementor?e.incrementor.end:r,Ct,e),ht(e,e.statement)}(r);case 240:return function(e){var t=ze(97,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),Be(e.initializer),Ot(),ze(101,e.initializer.end,Nt,e),Ot(),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.statement)}(r);case 241:return function(e){var t=ze(97,e.pos,Nt,e);Ot(),function(e){e&&(be(e),Ot())}(e.awaitModifier),ze(20,t,Ct,e),Be(e.initializer),Ot(),ze(157,e.initializer.end,Nt,e),Ot(),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.statement)}(r);case 242:return function(e){ze(86,e.pos,Nt,e),gt(e.label),At()}(r);case 243:return function(e){ze(80,e.pos,Nt,e),gt(e.label),At()}(r);case 244:return function(e){ze(105,e.pos,Nt,e),_t(e.expression),At()}(r);case 245:return function(e){var t=ze(116,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.statement)}(r);case 246:return function(e){var t=ze(107,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e),Ot(),be(e.caseBlock)}(r);case 247:return function(e){be(e.label),ze(58,e.label.end,Ct,e),Ot(),be(e.statement)}(r);case 248:return function(e){ze(109,e.pos,Nt,e),_t(e.expression),At()}(r);case 249:return function(e){ze(111,e.pos,Nt,e),Ot(),be(e.tryBlock),e.catchClause&&(qt(e,e.tryBlock,e.catchClause),be(e.catchClause));e.finallyBlock&&(qt(e,e.catchClause||e.tryBlock,e.finallyBlock),ze(96,(e.catchClause||e.tryBlock).end,Nt,e),Ot(),be(e.finallyBlock))}(r);case 250:return function(e){Bt(87,e.pos,Nt),At()}(r);case 251:return function(e){be(e.name),be(e.exclamationToken),ft(e.type),mt(e.initializer,e.type?e.type.end:e.name.end,e)}(r);case 252:return function(t){Nt(e.isLet(t)?"let":e.isVarConst(t)?"const":"var"),Ot(),Et(t,t.declarations,528)}(r);case 253:return function(e){Ue(e)}(r);case 254:case 255:return Ge(r);case 256:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Nt("interface"),Ot(),be(e.name),bt(e,e.typeParameters),Et(e,e.heritageClauses,512),Ot(),Ct("{"),Et(e,e.members,129),Ct("}")}(r);case 257:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Nt("type"),Ot(),be(e.name),bt(e,e.typeParameters),Ot(),Ct("="),Ot(),be(e.type),At()}(r);case 258:return function(e){pt(e,e.modifiers),Nt("enum"),Ot(),be(e.name),Ot(),Ct("{"),Et(e,e.members,145),Ct("}")}(r);case 259:return function(e){pt(e,e.modifiers),1024&~e.flags&&(Nt(16&e.flags?"namespace":"module"),Ot());be(e.name);var t=e.body;if(!t)return At();for(;259===t.kind;)Ct("."),be(t.name),t=t.body;Ot(),be(t)}(r);case 260:return function(t){ir(t),e.forEach(t.statements,sr),Me(t,er(t)),ar(t)}(r);case 261:return function(e){ze(18,e.pos,Ct,e),Et(e,e.clauses,129),ze(19,e.clauses.end,Ct,e,!0)}(r);case 262:return function(e){var t=ze(93,e.pos,Nt,e);Ot(),t=ze(127,t,Nt,e),Ot(),t=ze(141,t,Nt,e),Ot(),be(e.name),At()}(r);case 263:return function(e){pt(e,e.modifiers),ze(100,e.modifiers?e.modifiers.end:e.pos,Nt,e),Ot(),e.isTypeOnly&&(ze(150,e.pos,Nt,e),Ot());be(e.name),Ot(),ze(62,e.name.end,Ct,e),Ot(),function(e){78===e.kind?xe(e):be(e)}(e.moduleReference),At()}(r);case 264:return function(e){pt(e,e.modifiers),ze(100,e.modifiers?e.modifiers.end:e.pos,Nt,e),Ot(),e.importClause&&(be(e.importClause),Ot(),ze(154,e.importClause.end,Nt,e),Ot());xe(e.moduleSpecifier),At()}(r);case 265:return function(e){e.isTypeOnly&&(ze(150,e.pos,Nt,e),Ot());be(e.name),e.name&&e.namedBindings&&(ze(27,e.name.end,Ct,e),Ot());be(e.namedBindings)}(r);case 266:return function(e){var t=ze(41,e.pos,Ct,e);Ot(),ze(127,t,Nt,e),Ot(),be(e.name)}(r);case 272:return function(e){var t=ze(41,e.pos,Ct,e);Ot(),ze(127,t,Nt,e),Ot(),be(e.name)}(r);case 267:case 271:return function(e){Ye(e)}(r);case 268:case 273:return function(e){Xe(e)}(r);case 269:return function(e){var t=ze(93,e.pos,Nt,e);Ot(),e.isExportEquals?ze(62,t,Pt,e):ze(88,t,Nt,e);Ot(),xe(e.expression),At()}(r);case 270:return function(e){var t=ze(93,e.pos,Nt,e);Ot(),e.isTypeOnly&&(t=ze(150,t,Nt,e),Ot());e.exportClause?be(e.exportClause):t=ze(41,t,Ct,e);if(e.moduleSpecifier){Ot(),ze(154,e.exportClause?e.exportClause.end:t,Nt,e),Ot(),xe(e.moduleSpecifier)}At()}(r);case 274:return;case 275:return function(e){Nt("require"),Ct("("),xe(e.expression),Ct(")")}(r);case 11:return function(e){m.writeLiteral(e.text)}(r);case 278:case 281:return function(t){if(Ct("<"),e.isJsxOpeningElement(t)){var r=Yt(t.tagName,t);Qe(t.tagName),vt(t,t.typeArguments),t.attributes.properties&&t.attributes.properties.length>0&&Ot(),be(t.attributes),Xt(t.attributes,t),Ht(r)}Ct(">")}(r);case 279:case 282:return function(t){Ct("</"),e.isJsxClosingElement(t)&&Qe(t.tagName);Ct(">")}(r);case 283:return function(e){be(e.name),function(e,t,r,n){r&&(t(e),n(r))}("=",Ct,e.initializer,Ee)}(r);case 284:return function(e){Et(e,e.properties,262656)}(r);case 285:return function(e){Ct("{..."),xe(e.expression),Ct("}")}(r);case 286:return function(t){var r;if(t.expression||!Q&&!e.nodeIsSynthesized(t)&&function(t){return function(t){var r=!1;return e.forEachTrailingCommentRange((null==i?void 0:i.text)||"",t+1,(function(){return r=!0})),r}(t)||function(t){var r=!1;return e.forEachLeadingCommentRange((null==i?void 0:i.text)||"",t+1,(function(){return r=!0})),r}(t)}(t.pos)){var n=i&&!e.nodeIsSynthesized(t)&&e.getLineAndCharacterOfPosition(i,t.pos).line!==e.getLineAndCharacterOfPosition(i,t.end).line;n&&m.increaseIndent();var a=ze(18,t.pos,Ct,t);be(t.dotDotDotToken),xe(t.expression),ze(19,(null===(r=t.expression)||void 0===r?void 0:r.end)||a,Ct,t),n&&m.decreaseIndent()}}(r);case 287:return function(e){ze(81,e.pos,Nt,e),Ot(),xe(e.expression),Ze(e,e.statements,e.expression.end)}(r);case 288:return function(e){var t=ze(88,e.pos,Nt,e);Ze(e,e.statements,t)}(r);case 289:return function(e){Ot(),Ut(e.token,Nt),Ot(),Et(e,e.types,528)}(r);case 290:return function(e){var t=ze(82,e.pos,Nt,e);Ot(),e.variableDeclaration&&(ze(20,t,Ct,e),be(e.variableDeclaration),ze(21,e.variableDeclaration.end,Ct,e),Ot());be(e.block)}(r);case 291:return function(t){be(t.name),Ct(":"),Ot();var r=t.initializer;if(!(512&e.getEmitFlags(r))){Ar(e.getCommentRange(r).pos)}xe(r)}(r);case 292:return function(e){be(e.name),e.objectAssignmentInitializer&&(Ot(),Ct("="),Ot(),xe(e.objectAssignmentInitializer))}(r);case 293:return function(e){e.expression&&(ze(25,e.pos,Ct,e),xe(e.expression))}(r);case 294:return function(e){be(e.name),mt(e.initializer,e.name.end,e)}(r);case 329:case 336:return function(e){rt(e.tagName),it(e.typeExpression),Ot(),e.isBracketed&&Ct("[");be(e.name),e.isBracketed&&Ct("]");nt(e.comment)}(r);case 330:case 332:case 331:case 328:return rt((n=r).tagName),it(n.typeExpression),void nt(n.comment);case 319:case 318:return function(e){rt(e.tagName),Ot(),Ct("{"),be(e.class),Ct("}"),nt(e.comment)}(r);case 333:return function(e){rt(e.tagName),it(e.constraint),Ot(),Et(e,e.typeParameters,528),nt(e.comment)}(r);case 334:return function(e){rt(e.tagName),e.typeExpression&&(304===e.typeExpression.kind?it(e.typeExpression):(Ot(),Ct("{"),B("Object"),e.typeExpression.isArrayType&&(Ct("["),Ct("]")),Ct("}")));e.fullName&&(Ot(),be(e.fullName));nt(e.comment),e.typeExpression&&315===e.typeExpression.kind&&et(e.typeExpression)}(r);case 327:return function(e){rt(e.tagName),e.name&&(Ot(),be(e.name));nt(e.comment),tt(e.typeExpression)}(r);case 316:return tt(r);case 315:return et(r);case 322:case 317:return function(e){rt(e.tagName),nt(e.comment)}(r);case 335:return function(e){rt(e.tagName),be(e.name),nt(e.comment)}(r);case 305:return function(e){Ot(),Ct("{"),be(e.name),Ct("}")}(r);case 314:return function(e){if(B("/**"),e.comment)for(var t=0,r=e.comment.split(/\r\n?|\n/g);t<r.length;t++){var n=r[t];Mt(),Ot(),Ct("*"),Ot(),B(n)}e.tags&&(1!==e.tags.length||332!==e.tags[0].kind||e.comment?Et(e,e.tags,33):(Ot(),be(e.tags[0])));Ot(),B("*/")}(r)}if(e.isExpression(r))t=1,A!==e.noEmitSubstitution&&(E=r=A(t,r));else if(e.isToken(r))return zt(r,Ct)}var n,a,o,s;if(1===t)switch(r.kind){case 8:case 9:return function(e){Ie(e,!1)}(r);case 10:case 13:case 14:return Ie(r,!1);case 78:return Oe(r);case 95:case 104:case 106:case 110:case 108:case 100:return void zt(r,Nt);case 200:return function(e){var t=e.elements,r=e.multiLine?65536:0;St(e,t,8914|r)}(r);case 201:return function(t){e.forEach(t.properties,cr);var r=65536&e.getEmitFlags(t);r&&Lt();var n=t.multiLine?65536:0,a=i.languageVersion>=1&&!e.isJsonSourceFile(i)?64:0;Et(t,t.properties,526226|a|n),r&&jt()}(r);case 202:return function(t){var r=e.cast(xe(t.expression),e.isExpression),n=t.questionDotToken||e.setTextRangePosEnd(e.factory.createToken(24),t.expression.end,t.name.pos),i=Zt(t,t.expression,n),a=Zt(t,n,t.name);Vt(i,!1),28===n.kind||!function(t){if(t=e.skipPartiallyEmittedExpressions(t),e.isNumericLiteral(t)){var r=nr(t,!0,!1);return!t.numericLiteralFlags&&!e.stringContains(r,e.tokenToString(24))}if(e.isAccessExpression(t)){var n=e.getConstantValue(t);return"number"==typeof n&&isFinite(n)&&Math.floor(n)===n}}(r)||m.hasTrailingComment()||m.hasTrailingWhitespace()||Ct(".");t.questionDotToken?be(n):ze(n.kind,t.expression.end,Ct,t);Vt(a,!1),be(t.name),Ht(i,a)}(r);case 203:return function(e){xe(e.expression),be(e.questionDotToken),ze(22,e.expression.end,Ct,e),xe(e.argumentExpression),ze(23,e.argumentExpression.end,Ct,e)}(r);case 204:return function(e){xe(e.expression),be(e.questionDotToken),vt(e,e.typeArguments),St(e,e.arguments,2576)}(r);case 205:return function(e){ze(103,e.pos,Nt,e),Ot(),xe(e.expression),vt(e,e.typeArguments),St(e,e.arguments,18960)}(r);case 206:return function(e){xe(e.tag),vt(e,e.typeArguments),Ot(),xe(e.template)}(r);case 207:return function(e){Ct("<"),be(e.type),Ct(">"),xe(e.expression)}(r);case 208:return function(e){var t=ze(20,e.pos,Ct,e),r=Yt(e.expression,e);xe(e.expression),Xt(e.expression,e),Ht(r),ze(21,e.expression?e.expression.end:t,Ct,e)}(r);case 209:return function(e){lr(e.name),Ue(e)}(r);case 210:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Je(e,Re)}(r);case 212:return function(e){ze(89,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 213:return function(e){ze(112,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 214:return function(e){ze(114,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 215:return function(e){ze(131,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 216:return function(e){Ut(e.operator,Pt),function(e){var t=e.operand;return 216===t.kind&&(39===e.operator&&(39===t.operator||45===t.operator)||40===e.operator&&(40===t.operator||46===t.operator))}(e)&&Ot();xe(e.operand)}(r);case 217:return function(e){xe(e.operand),Ut(e.operator,Pt)}(r);case 218:return function(t){var r=[t],n=[0],i=0;for(;i>=0;)switch(t=r[i],n[i]){case 0:c(t.left);break;case 1:var a=27!==t.operatorToken.kind,o=Zt(t,t.left,t.operatorToken),s=Zt(t,t.operatorToken,t.right);Vt(o,a),Tr(t.operatorToken.pos),zt(t.operatorToken,101===t.operatorToken.kind?Nt:Pt),Ar(t.operatorToken.end,!0),Vt(s,!0),c(t.right);break;case 2:Ht(o=Zt(t,t.left,t.operatorToken),s=Zt(t,t.operatorToken,t.right)),i--;break;default:return e.Debug.fail("Invalid state "+n[i]+" for emitBinaryExpressionWorker")}function c(t){n[i]++;var a=x,o=E;x=t,E=void 0;var s=De(0,1,t);s===Ce&&e.isBinaryExpression(t)?(i++,n[i]=0,r[i]=t):s(1,t),e.Debug.assert(x===t),x=a,E=o}}(r);case 219:return function(e){var t=Zt(e,e.condition,e.questionToken),r=Zt(e,e.questionToken,e.whenTrue),n=Zt(e,e.whenTrue,e.colonToken),i=Zt(e,e.colonToken,e.whenFalse);xe(e.condition),Vt(t,!0),be(e.questionToken),Vt(r,!0),xe(e.whenTrue),Ht(t,r),Vt(n,!0),be(e.colonToken),Vt(i,!0),xe(e.whenFalse),Ht(n,i)}(r);case 220:return function(e){be(e.head),Et(e,e.templateSpans,262144)}(r);case 221:return function(e){ze(125,e.pos,Nt,e),be(e.asteriskToken),_t(e.expression)}(r);case 222:return function(e){ze(25,e.pos,Ct,e),xe(e.expression)}(r);case 223:return function(e){lr(e.name),$e(e)}(r);case 224:return;case 226:return function(e){xe(e.expression),e.type&&(Ot(),Nt("as"),Ot(),be(e.type))}(r);case 227:return function(e){xe(e.expression),Pt("!")}(r);case 228:return function(e){Bt(e.keywordToken,e.pos,Ct),Ct("."),be(e.name)}(r);case 276:return function(e){be(e.openingElement),Et(e,e.children,262144),be(e.closingElement)}(r);case 277:return function(e){Ct("<"),Qe(e.tagName),vt(e,e.typeArguments),Ot(),be(e.attributes),Ct("/>")}(r);case 280:return function(e){be(e.openingFragment),Et(e,e.children,262144),be(e.closingFragment)}(r);case 339:return function(e){xe(e.expression)}(r);case 340:return function(e){St(e,e.elements,528)}(r)}}function Ae(t,r){e.Debug.assert(x===r||E===r),we(1,t,r)(t,E),e.Debug.assert(x===r||E===r)}function Ne(r){var n=!1,a=301===r.kind?r:void 0;if(!a||M!==e.ModuleKind.None){for(var o=a?a.prepends.length:0,s=a?a.sourceFiles.length+o:1,c=0;c<s;c++){var l=a?c<o?a.prepends[c]:a.sourceFiles[c-o]:r,u=e.isSourceFile(l)?l:e.isUnparsedSource(l)?void 0:i,d=t.noEmitHelpers||!!u&&e.hasRecordedExternalHelpers(u),p=(e.isSourceFile(l)||e.isUnparsedSource(l))&&!_,f=e.isUnparsedSource(l)?l.helpers:Pe(l);if(f)for(var g=0,h=f;g<h.length;g++){var y=h[g];if(y.scoped){if(a)continue}else{if(d)continue;if(p){if(L.get(y.name))continue;L.set(y.name,!0)}}var v=oe();"string"==typeof y.text?Jt(y.text):Jt(y.text(_r)),z&&z.sections.push({pos:v,end:m.getTextPos(),kind:"emitHelpers",data:y.name}),n=!0}}return n}}function Pe(t){var r=e.getEmitHelpers(t);return r&&e.stableSort(r,e.compareEmitHelpers)}function Ie(r,n){var i,a=nr(r,t.neverAsciiEscape,n);!t.sourceMap&&!t.inlineSourceMap||10!==r.kind&&!e.isTemplateLiteralKind(r.kind)?function(e){m.writeStringLiteral(e)}(a):(i=a,m.writeLiteral(i))}function Fe(e){m.rawWrite(e.parent.text.substring(e.pos,e.end))}function Oe(e){(e.symbol?Tt:B)(rr(e,!1),e.symbol),Et(e,e.typeArguments,53776)}function Re(e){bt(e,e.typeParameters),xt(e,e.parameters),ft(e.type),Ot(),be(e.equalsGreaterThanToken)}function Me(t,r){ze(18,t.pos,Ct,t);var n=r||1&e.getEmitFlags(t)?768:129;Et(t,t.statements,n),ze(19,t.statements.end,Ct,t,!!(1&n))}function Le(e){e?Ct(";"):At()}function je(e,t){var r=ze(115,t,Nt,e);Ot(),ze(20,r,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e)}function Be(e){void 0!==e&&(252===e.kind?be(e):xe(e))}function ze(t,r,n,a,o){var s=e.getParseTreeNode(a),c=s&&s.kind===a.kind,l=r;if(c&&i&&(r=e.skipTrivia(i.text,r)),c&&a.pos!==l){var u=o&&i&&!e.positionsAreOnSameLine(l,r,i);u&&Lt(),Tr(l),u&&jt()}if(r=Ut(t,n,r),c&&a.end!==r){var d=286===a.kind;Ar(r,!d,d)}return r}function Ue(e){yt(e,e.decorators),pt(e,e.modifiers),Nt("function"),be(e.asteriskToken),Ot(),ke(e.name),Je(e,Ve)}function qe(e,t){He(t)}function Je(t,r){var n=t.body;if(n)if(e.isBlock(n)){var i=65536&e.getEmitFlags(t);i&&Lt(),ir(t),e.forEach(t.parameters,sr),sr(t.body),r(t),w?w(4,n,qe):He(n),ar(t),i&&jt()}else r(t),Ot(),xe(n);else r(t),At()}function Ve(e){bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type)}function He(t){Ot(),Ct("{"),Lt();var r=function(t){if(1&e.getEmitFlags(t))return!0;if(t.multiLine)return!1;if(!e.nodeIsSynthesized(t)&&!e.rangeIsOnSingleLine(t,i))return!1;if(Kt(t,t.statements,2)||Gt(t,t.statements,2))return!1;for(var r,n=0,a=t.statements;n<a.length;n++){var o=a[n];if(Wt(r,o,2)>0)return!1;r=o}return!0}(t)?Ke:We;kr?kr(t,t.statements,r):r(t),jt(),Bt(19,t.statements.end,Ct,t)}function Ke(e){We(e,!0)}function We(e,t){var r=st(e.statements),n=m.getTextPos();Ne(e),0===r&&n===m.getTextPos()&&t?(jt(),Et(e,e.statements,768),Lt()):Et(e,e.statements,1,r)}function Ge(e){$e(e)}function $e(t){e.forEach(t.members,cr),yt(t,t.decorators),pt(t,t.modifiers),e.isStructDeclaration(t)?Nt("struct"):Nt("class"),t.name&&(Ot(),ke(t.name));var r=65536&e.getEmitFlags(t);r&&Lt(),bt(t,t.typeParameters),Et(t,t.heritageClauses,0),Ot(),Ct("{"),Et(t,t.members,129),Ct("}"),r&&jt()}function Ye(e){Ct("{"),Et(e,e.elements,525136),Ct("}")}function Xe(e){e.propertyName&&(be(e.propertyName),Ot(),ze(127,e.propertyName.end,Nt,e),Ot()),be(e.name)}function Qe(e){78===e.kind?xe(e):be(e)}function Ze(t,r,n){var a=163969;1===r.length&&(e.nodeIsSynthesized(t)||e.nodeIsSynthesized(r[0])||e.rangeStartPositionsAreOnSameLine(t,r[0],i))?(Bt(58,n,Ct,t),Ot(),a&=-130):ze(58,n,Ct,t),Et(t,r,a)}function et(t){Et(t,e.factory.createNodeArray(t.jsDocPropertyTags),33)}function tt(t){t.typeParameters&&Et(t,e.factory.createNodeArray(t.typeParameters),33),t.parameters&&Et(t,e.factory.createNodeArray(t.parameters),33),t.type&&(Mt(),Ot(),Ct("*"),Ot(),be(t.type))}function rt(e){Ct("@"),be(e)}function nt(e){e&&(Ot(),B(e))}function it(e){e&&(Ot(),Ct("{"),be(e.type),Ct("}"))}function at(e,t,r,n){if(e){var a=m.getTextPos();Ft('/// <reference no-default-lib="true"/>'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"no-default-lib"}),Mt()}if(i&&i.moduleName&&(Ft('/// <amd-module name="'+i.moduleName+'" />'),Mt()),i&&i.amdDependencies)for(var o=0,s=i.amdDependencies;o<s.length;o++){var c=s[o];c.name?Ft('/// <amd-dependency name="'+c.name+'" path="'+c.path+'" />'):Ft('/// <amd-dependency path="'+c.path+'" />'),Mt()}for(var l=0,u=t;l<u.length;l++){var d=u[l];a=m.getTextPos();Ft('/// <reference path="'+d.fileName+'" />'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"reference",data:d.fileName}),Mt()}for(var p=0,f=r;p<f.length;p++){d=f[p],a=m.getTextPos();Ft('/// <reference types="'+d.fileName+'" />'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"type",data:d.fileName}),Mt()}for(var g=0,_=n;g<_.length;g++){d=_[g],a=m.getTextPos();Ft('/// <reference lib="'+d.fileName+'" />'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"lib",data:d.fileName}),Mt()}}function ot(t){var r=t.statements;ir(t),e.forEach(t.statements,sr),Ne(t);var n=e.findIndex(r,(function(t){return!e.isPrologueDirective(t)}));!function(e){e.isDeclarationFile&&at(e.hasNoDefaultLib,e.referencedFiles,e.typeReferenceDirectives,e.libReferenceDirectives)}(t),Et(t,r,1,-1===n?r.length:n),ar(t)}function st(t,r,n,i){for(var a=!!r,o=0;o<t.length;o++){var s=t[o];if(!e.isPrologueDirective(s))return o;if(!n||!n.has(s.expression.text)){a&&(a=!1,_e(r)),Mt();var c=m.getTextPos();be(s),i&&z&&z.sections.push({pos:c,end:m.getTextPos(),kind:"prologue",data:s.expression.text}),n&&n.add(s.expression.text)}}return t.length}function ct(e,t){for(var r=0,n=e;r<n.length;r++){var i=n[r];if(!t.has(i.data)){Mt();var a=m.getTextPos();be(i),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"prologue",data:i.data}),t&&t.add(i.data)}}}function lt(t){if(e.isSourceFile(t))st(t.statements,t);else{for(var r=new e.Set,n=0,i=t.prepends;n<i.length;n++){ct(i[n].prologues,r)}for(var a=0,o=t.sourceFiles;a<o.length;a++){var s=o[a];st(s.statements,s,r,!0)}_e(void 0)}}function ut(t){if(e.isSourceFile(t)||e.isUnparsedSource(t)){var r=e.getShebang(t.text);if(r)return Ft(r),Mt(),!0}else{for(var n=0,i=t.prepends;n<i.length;n++){var a=i[n];if(e.Debug.assertNode(a,e.isUnparsedSource),ut(a))return!0}for(var o=0,s=t.sourceFiles;o<s.length;o++){if(ut(s[o]))return!0}}}function dt(e,t){if(e){var r=B;B=t,be(e),B=r}}function pt(e,t){t&&t.length&&(Et(e,t,262656),Ot())}function ft(e){e&&(Ct(":"),Ot(),be(e))}function mt(e,t,r){e&&(Ot(),ze(62,t,Pt,r),Ot(),xe(e))}function gt(e){e&&(Ot(),be(e))}function _t(e){e&&(Ot(),xe(e))}function ht(t,r){e.isBlock(r)||1&e.getEmitFlags(t)?(Ot(),be(r)):(Mt(),Lt(),e.isEmptyStatement(r)?Se(5,r):be(r),jt())}function yt(e,t){Et(e,t,2146305)}function vt(e,t){Et(e,t,53776)}function bt(t,r){if(e.isFunctionLike(t)&&t.typeArguments)return vt(t,t.typeArguments);Et(t,r,53776)}function kt(e,t){Et(e,t,2576)}function xt(t,r){!function(t,r){var n=e.singleOrUndefined(r);return n&&n.pos===t.pos&&e.isArrowFunction(t)&&!t.type&&!e.some(t.decorators)&&!e.some(t.modifiers)&&!e.some(t.typeParameters)&&!e.some(n.decorators)&&!e.some(n.modifiers)&&!n.dotDotDotToken&&!n.questionToken&&!n.type&&!n.initializer&&e.isIdentifier(n.name)}(t,r)?kt(t,r):Et(t,r,528)}function Et(e,t,r,n,i){wt(be,e,t,r,n,i)}function St(e,t,r,n,i){wt(xe,e,t,r,n,i)}function Dt(e){switch(60&e){case 0:break;case 16:Ct(",");break;case 4:Ot(),Ct("|");break;case 32:Ot(),Ct("*"),Ot();break;case 8:Ot(),Ct("&")}}function wt(t,r,a,o,s,c){void 0===s&&(s=0),void 0===c&&(c=a?a.length-s:0);var l=void 0===a;if(!(l&&16384&o)){var u=void 0===a||s>=a.length||0===c;if(u&&32768&o)return N&&N(a),void(P&&P(a));if(15360&o&&(Ct(function(e){return n[15360&e][0]}(o)),u&&!l&&Ar(a.pos,!0)),N&&N(a),u)!(1&o)||j&&e.rangeIsOnSingleLine(r,i)?256&o&&!(524288&o)&&Ot():Mt();else{var d=!(262144&o),p=d,m=Kt(r,a,o);m?(Mt(m),p=!1):256&o&&Ot(),128&o&&Lt();for(var g=void 0,_=void 0,h=!1,y=0;y<c;y++){var v=a[s+y];if(32&o)Mt(),Dt(o);else if(g){60&o&&g.end!==r.end&&Tr(g.end),Dt(o),le(_);var b=Wt(g,v,o);b>0?(131&o||(Lt(),h=!0),Mt(b),p=!1):g&&512&o&&Ot()}if(_=ce(v),p){if(Ar)Ar(e.getCommentRange(v).pos)}else p=d;f=v.pos,t(v),h&&(jt(),h=!1),g=v}var k=g?e.getEmitFlags(g):0,x=Q||!!(1024&k),E=(null==a?void 0:a.hasTrailingComma)&&64&o&&16&o;E&&(g&&!x?ze(27,g.end,Ct,g):Ct(",")),g&&r.end!==g.end&&60&o&&!x&&Tr(E&&(null==a?void 0:a.end)?a.end:g.end),128&o&&jt(),le(_);var S=Gt(r,a,o);S?Mt(S):2097408&o&&Ot()}P&&P(a),15360&o&&(u&&!l&&Tr(a.end),Ct(function(e){return n[15360&e][1]}(o)))}}function Tt(e,t){m.writeSymbol(e,t)}function Ct(e){m.writePunctuation(e)}function At(){m.writeTrailingSemicolon(";")}function Nt(e){m.writeKeyword(e)}function Pt(e){m.writeOperator(e)}function It(e){m.writeParameter(e)}function Ft(e){m.writeComment(e)}function Ot(){m.writeSpace(" ")}function Rt(e){m.writeProperty(e)}function Mt(e){void 0===e&&(e=1);for(var t=0;t<e;t++)m.writeLine(t>0)}function Lt(){m.increaseIndent()}function jt(){m.decreaseIndent()}function Bt(t,r,n,i){return H?Ut(t,n,r):function(t,r,n,i,a){if(H||t&&e.isInJsonFile(t))return a(r,n,i);var o=t&&t.emitNode,s=o&&o.flags||0,c=o&&o.tokenSourceMapRanges&&o.tokenSourceMapRanges[r],l=c&&c.source||y;i=Lr(l,c?c.pos:i),!(128&s)&&i>=0&&Br(l,i);i=a(r,n,i),c&&(i=c.end);!(256&s)&&i>=0&&Br(l,i);return i}(i,t,n,r,Ut)}function zt(t,r){I&&I(t),r(e.tokenToString(t.kind)),F&&F(t)}function Ut(t,r,n){var i=e.tokenToString(t);return r(i),n<0?n:n+i.length}function qt(t,r,n){if(1&e.getEmitFlags(t))Ot();else if(j){var i=Zt(t,r,n);i?Mt(i):Ot()}else Mt()}function Jt(t){for(var r=t.split(/\r\n?|\n/g),n=e.guessIndentation(r),i=0,a=r;i<a.length;i++){var o=a[i],s=n?o.slice(n):o;s.length&&(Mt(),B(s))}}function Vt(e,t){e?(Lt(),Mt(e)):t&&Ot()}function Ht(e,t){e&&jt(),t&&jt()}function Kt(t,r,n){if(2&n||j){if(65536&n)return 1;var a=r[0];if(void 0===a)return e.rangeIsOnSingleLine(t,i)?0:1;if(a.pos===f)return 0;if(11===a.kind)return 0;if(!(e.positionIsSynthesized(t.pos)||e.nodeIsSynthesized(a)||a.parent&&e.getOriginalNode(a.parent)!==e.getOriginalNode(t)))return j?$t((function(r){return e.getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter(a.pos,t.pos,i,r)})):e.rangeStartPositionsAreOnSameLine(t,a,i)?0:1;if(Qt(a,n))return 1}return 1&n?1:0}function Wt(t,r,n){if(2&n||j){if(void 0===t||void 0===r)return 0;if(11===r.kind)return 0;if(!e.nodeIsSynthesized(t)&&!e.nodeIsSynthesized(r)&&t.parent===r.parent)return j?$t((function(n){return e.getLinesBetweenRangeEndAndRangeStart(t,r,i,n)})):e.rangeEndIsOnSameLineAsRangeStart(t,r,i)?0:1;if(Qt(t,n)||Qt(r,n))return 1}else if(e.getStartsOnNewLine(r))return 1;return 1&n?1:0}function Gt(t,r,n){if(2&n||j){if(65536&n)return 1;var a=e.lastOrUndefined(r);if(void 0===a)return e.rangeIsOnSingleLine(t,i)?0:1;if(!(e.positionIsSynthesized(t.pos)||e.nodeIsSynthesized(a)||a.parent&&a.parent!==t)){if(j){var o=e.isNodeArray(r)&&!e.positionIsSynthesized(r.end)?r.end:a.end;return $t((function(r){return e.getLinesBetweenPositionAndNextNonWhitespaceCharacter(o,t.end,i,r)}))}return e.rangeEndPositionsAreOnSameLine(t,a,i)?0:1}if(Qt(a,n))return 1}return 1&n&&!(131072&n)?1:0}function $t(t){e.Debug.assert(!!j);var r=t(!0);return 0===r?t(!1):r}function Yt(e,t){var r=j&&Kt(t,[e],0);return r&&Vt(r,!1),!!r}function Xt(e,t){var r=j&&Gt(t,[e],0);r&&Mt(r)}function Qt(t,r){if(e.nodeIsSynthesized(t)){var n=e.getStartsOnNewLine(t);return void 0===n?!!(65536&r):n}return!!(65536&r)}function Zt(t,r,n){return 131072&e.getEmitFlags(t)?0:(t=tr(t),r=tr(r),n=tr(n),e.getStartsOnNewLine(n)?1:e.nodeIsSynthesized(t)||e.nodeIsSynthesized(r)||e.nodeIsSynthesized(n)?0:j?$t((function(t){return e.getLinesBetweenRangeEndAndRangeStart(r,n,i,t)})):e.rangeEndIsOnSameLineAsRangeStart(r,n,i)?0:1)}function er(t){return 0===t.statements.length&&e.rangeEndIsOnSameLineAsRangeStart(t,t,i)}function tr(t){for(;208===t.kind&&e.nodeIsSynthesized(t);)t=t.expression;return t}function rr(t,r){return e.isGeneratedIdentifier(t)?ur(t):(e.isIdentifier(t)||e.isPrivateIdentifier(t))&&(e.nodeIsSynthesized(t)||!t.parent||!i||t.parent&&i&&e.getSourceFileOfNode(t)!==e.getOriginalNode(i))?e.idText(t):10===t.kind&&t.textSourceNode?rr(t.textSourceNode,r):!e.isLiteralExpression(t)||!e.nodeIsSynthesized(t)&&t.parent?e.getSourceTextOfNodeFromSourceFile(i,t,r):t.text}function nr(r,n,a){if(10===r.kind&&r.textSourceNode){var o=r.textSourceNode;if(e.isIdentifier(o)||e.isNumericLiteral(o)){var s=e.isNumericLiteral(o)?o.text:rr(o);return a?'"'+e.escapeJsxAttributeString(s)+'"':n||16777216&e.getEmitFlags(r)?'"'+e.escapeString(s)+'"':'"'+e.escapeNonAsciiString(s)+'"'}return nr(o,n,a)}var c=(n?1:0)|(a?2:0)|(t.terminateUnterminatedLiterals?4:0)|(t.target&&99===t.target?8:0);return e.getLiteralText(r,i,c)}function ir(t){t&&524288&e.getEmitFlags(t)||(l.push(u),u=0,d.push(p))}function ar(t){t&&524288&e.getEmitFlags(t)||(u=l.pop(),p=d.pop())}function or(t){p&&p!==e.lastOrUndefined(d)||(p=new e.Set),p.add(t)}function sr(t){if(t)switch(t.kind){case 232:case 287:case 288:e.forEach(t.statements,sr);break;case 247:case 245:case 237:case 238:sr(t.statement);break;case 236:sr(t.thenStatement),sr(t.elseStatement);break;case 239:case 241:case 240:sr(t.initializer),sr(t.statement);break;case 246:sr(t.caseBlock);break;case 261:e.forEach(t.clauses,sr);break;case 249:sr(t.tryBlock),sr(t.catchClause),sr(t.finallyBlock);break;case 290:sr(t.variableDeclaration),sr(t.block);break;case 234:sr(t.declarationList);break;case 252:e.forEach(t.declarations,sr);break;case 251:case 161:case 199:case 254:case 266:case 272:lr(t.name);break;case 253:lr(t.name),524288&e.getEmitFlags(t)&&(e.forEach(t.parameters,sr),sr(t.body));break;case 197:case 198:case 267:e.forEach(t.elements,sr);break;case 264:sr(t.importClause);break;case 265:lr(t.name),sr(t.namedBindings);break;case 268:lr(t.propertyName||t.name)}}function cr(e){if(e)switch(e.kind){case 291:case 292:case 164:case 166:case 168:case 169:lr(e.name)}}function lr(t){t&&(e.isGeneratedIdentifier(t)?ur(t):e.isBindingPattern(t)&&sr(t))}function ur(t){if(4==(7&t.autoGenerateFlags))return dr(function(t){var r=t.autoGenerateId,n=t,i=n.original;for(;i&&(n=i,!(e.isIdentifier(n)&&4&n.autoGenerateFlags&&n.autoGenerateId!==r));)i=n.original;return n}(t),t.autoGenerateFlags);var r=t.autoGenerateId;return s[r]||(s[r]=function(t){switch(7&t.autoGenerateFlags){case 1:return mr(0,!!(8&t.autoGenerateFlags));case 2:return mr(268435456,!!(8&t.autoGenerateFlags));case 3:return gr(e.idText(t),32&t.autoGenerateFlags?fr:pr,!!(16&t.autoGenerateFlags),!!(8&t.autoGenerateFlags))}return e.Debug.fail("Unsupported GeneratedIdentifierKind.")}(t))}function dr(t,r){var n=e.getNodeId(t);return o[n]||(o[n]=function(t,r){switch(t.kind){case 78:return gr(rr(t),pr,!!(16&r),!!(8&r));case 259:case 258:return function(t){var r=rr(t.name);return function(t,r){for(var n=r;e.isNodeDescendantOf(n,r);n=n.nextContainer)if(n.locals){var i=n.locals.get(e.escapeLeadingUnderscores(t));if(i&&3257279&i.flags)return!1}return!0}(r,t)?r:gr(r)}(t);case 264:case 270:return function(t){var r=e.getExternalModuleName(t);return gr(e.isStringLiteral(r)?e.makeIdentifierFromModuleName(r.text):"module")}(t);case 253:case 254:case 269:return gr("default");case 223:return gr("class");case 166:case 168:case 169:return function(t){if(e.isIdentifier(t.name))return dr(t.name);return mr(0)}(t);case 159:return mr(0,!0);default:return mr(0)}}(t,r))}function pr(e){return fr(e)&&!c.has(e)&&!(p&&p.has(e))}function fr(t){return!i||e.isFileLevelUniqueName(i,t,S)}function mr(e,t){if(e&&!(u&e)&&pr(r=268435456===e?"_i":"_n"))return u|=e,t&&or(r),r;for(;;){var r,n=268435455&u;if(u++,8!==n&&13!==n)if(pr(r=n<26?"_"+String.fromCharCode(97+n):"_"+(n-26)))return t&&or(r),r}}function gr(e,t,r,n){if(void 0===t&&(t=pr),r&&t(e))return n?or(e):c.add(e),e;95!==e.charCodeAt(e.length-1)&&(e+="_");for(var i=1;;){var a=e+i;if(t(a))return n?or(a):c.add(a),a;i++}}function _r(e){return gr(e,fr,!0)}function hr(t,r){e.Debug.assert(x===r||E===r),ee(),X=!1;var n=e.getEmitFlags(r),i=e.getCommentRange(r),a=i.pos,o=i.end,s=338!==r.kind,c=a<0||!!(512&n)||11===r.kind,l=o<0||!!(1024&n)||11===r.kind,u=G,d=$,p=Y;(a>0||o>0)&&a!==o&&(c||xr(a,s),(!c||a>=0&&512&n)&&(G=a),(!l||o>=0&&1024&n)&&($=o,252===r.kind&&(Y=o))),e.forEach(e.getSyntheticLeadingComments(r),yr),te();var f=we(2,t,r);2048&n?(Q=!0,f(t,r),Q=!1):f(t,r),ee(),e.forEach(e.getSyntheticTrailingComments(r),vr),(a>0||o>0)&&a!==o&&(G=u,$=d,Y=p,!l&&s&&function(e){Fr(e,Cr)}(o)),te(),e.Debug.assert(x===r||E===r)}function yr(e){(e.hasLeadingNewline||2===e.kind)&&m.writeLine(),br(e),e.hasTrailingNewLine||2===e.kind?m.writeLine():m.writeSpace(" ")}function vr(e){m.isAtStartOfLine()||m.writeSpace(" "),br(e),e.hasTrailingNewLine&&m.writeLine()}function br(t){var r=function(e){return 3===e.kind?"/*"+e.text+"*/":"//"+e.text}(t),n=3===t.kind?e.computeLineStarts(r):void 0;e.writeCommentRange(r,n,m,0,r.length,R)}function kr(t,r,n){ee();var a,o,s=r.pos,c=r.end,l=e.getEmitFlags(t),u=Q||c<0||!!(1024&l);s<0||!!(512&l)||(a=r,(o=e.emitDetachedComments(i.text,ve(),m,Or,a,R,Q))&&(k?k.push(o):k=[o])),te(),2048&l&&!Q?(Q=!0,n(t),Q=!1):n(t),ee(),u||(xr(r.end,!0),X&&!m.isAtStartOfLine()&&m.writeLine()),te()}function xr(e,t){X=!1,t?0===e&&(null==i?void 0:i.isDeclarationFile)?Ir(e,Sr):Ir(e,wr):0===e&&Ir(e,Er)}function Er(e,t,r,n,i){Rr(e,t)&&wr(e,t,r,n,i)}function Sr(e,t,r,n,i){Rr(e,t)||wr(e,t,r,n,i)}function Dr(r,n){return!t.onlyPrintJsDocStyle||(e.isJSDocLikeText(r,n)||e.isPinnedComment(r,n))}function wr(t,r,n,a,o){Dr(i.text,t)&&(X||(e.emitNewLineBeforeLeadingCommentOfPosition(ve(),m,o,t),X=!0),jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),a?m.writeLine():3===n&&m.writeSpace(" "))}function Tr(e){Q||-1===e||xr(e,!0)}function Cr(t,r,n,a){Dr(i.text,t)&&(m.isAtStartOfLine()||m.writeSpace(" "),jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),a&&m.writeLine())}function Ar(e,t,r){Q||(ee(),Fr(e,t?Cr:r?Nr:Pr),te())}function Nr(t,r,n){jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),2===n&&m.writeLine()}function Pr(t,r,n,a){jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),a?m.writeLine():m.writeSpace(" ")}function Ir(t,r){!i||-1!==G&&t===G||(function(t){return void 0!==k&&e.last(k).nodePos===t}(t)?function(t){var r=e.last(k).detachedCommentEndPos;k.length-1?k.pop():k=void 0;e.forEachLeadingCommentRange(i.text,r,t,r)}(r):e.forEachLeadingCommentRange(i.text,t,r,t))}function Fr(t,r){i&&(-1===$||t!==$&&t!==Y)&&e.forEachTrailingCommentRange(i.text,t,r)}function Or(t,r,n,a,o,s){Dr(i.text,a)&&(jr(a),e.writeCommentRange(t,r,n,a,o,s),jr(o))}function Rr(t,r){return e.isRecognizedTripleSlashComment(i.text,t,r)}function Mr(t,r){e.Debug.assert(x===r||E===r);var n=we(3,t,r);if(e.isUnparsedSource(r)||e.isUnparsedPrepend(r))n(t,r);else if(e.isUnparsedNode(r)){var i=function(t){return void 0===t.parsedSourceMap&&void 0!==t.sourceMapText&&(t.parsedSourceMap=e.tryParseRawSourceMap(t.sourceMapText)||!1),t.parsedSourceMap||void 0}(r.parent);i&&h&&h.appendSourceMap(m.getLine(),m.getColumn(),i,r.parent.sourceMapPath,r.parent.getLineAndCharacterOfPosition(r.pos),r.parent.getLineAndCharacterOfPosition(r.end)),n(t,r)}else{var a=e.getSourceMapRange(r),o=a.pos,s=a.end,c=a.source,l=void 0===c?y:c,u=e.getEmitFlags(r);338!==r.kind&&!(16&u)&&o>=0&&Br(l,Lr(l,o)),64&u?(H=!0,n(t,r),H=!1):n(t,r),338!==r.kind&&!(32&u)&&s>=0&&Br(l,s)}e.Debug.assert(x===r||E===r)}function Lr(t,r){return t.skipTrivia?t.skipTrivia(r):e.skipTrivia(t.text,r)}function jr(t){if(!(H||e.positionIsSynthesized(t)||Ur(y))){var r=e.getLineAndCharacterOfPosition(y,t),n=r.line,i=r.character;h.addMapping(m.getLine(),m.getColumn(),K,n,i,void 0)}}function Br(e,t){if(e!==y){var r=y,n=K;zr(e),jr(t),function(e,t){y=e,K=t}(r,n)}else jr(t)}function zr(e){H||(y=e,e!==v?Ur(e)||(K=h.addSource(e.fileName),t.inlineSources&&h.setSourceContent(K,e.text),v=e,W=K):K=W)}function Ur(t){return e.fileExtensionIs(t.fileName,".json")}}e.isBuildInfoFile=function(t){return e.fileExtensionIs(t,".tsbuildinfo")},e.forEachEmittedFile=o,e.getTsBuildInfoEmitOutputFilePath=s,e.getOutputPathsForBundle=c,e.getOutputPathsFor=l,e.getOutputExtension=d,e.getOutputDeclarationFileName=f,e.getCommonSourceDirectory=y,e.getCommonSourceDirectoryOfConfig=v,e.getAllProjectOutputs=function(t,r){var n=g(),i=n.addOutput,a=n.getOutputs;if(e.outFile(t.options))_(t,i);else{for(var o=e.memoize((function(){return v(t,r)})),c=0,l=t.fileNames;c<l.length;c++){var u=l[c];h(t,u,r,i,o)}i(s(t.options))}return a()},e.getOutputFileNames=function(t,r,n){r=e.normalizePath(r),e.Debug.assert(e.contains(t.fileNames,r),"Expected fileName to be present in command line");var i=g(),a=i.addOutput,o=i.getOutputs;return e.outFile(t.options)?_(t,a):h(t,r,n,a),o()},e.getFirstProjectOutput=function(t,r){if(e.outFile(t.options)){var n=c(t.options,!1).jsFilePath;return e.Debug.checkDefined(n,"project "+t.options.configFilePath+" expected to have at least one output")}for(var i=e.memoize((function(){return v(t,r)})),a=0,o=t.fileNames;a<o.length;a++){var l=o[a];if(!e.isDeclarationFileName(l)){if(n=m(l,t,r,i))return n;if(!e.fileExtensionIs(l,".json")&&e.getEmitDeclarations(t.options))return f(l,t,r,i)}}var u=s(t.options);return u||e.Debug.fail("project "+t.options.configFilePath+" expected to have at least one output")},e.emitFiles=b,e.getBuildInfoText=k,e.getBuildInfo=x,e.notImplementedResolver={hasGlobalName:e.notImplemented,getReferencedExportContainer:e.notImplemented,getReferencedImportDeclaration:e.notImplemented,getReferencedDeclarationWithCollidingName:e.notImplemented,isDeclarationWithCollidingName:e.notImplemented,isValueAliasDeclaration:e.notImplemented,isReferencedAliasDeclaration:e.notImplemented,isReferenced:e.notImplemented,isTopLevelValueImportEqualsWithEntityName:e.notImplemented,getNodeCheckFlags:e.notImplemented,isDeclarationVisible:e.notImplemented,isLateBound:function(e){return!1},collectLinkedAliases:e.notImplemented,isImplementationOfOverload:e.notImplemented,isRequiredInitializedParameter:e.notImplemented,isOptionalUninitializedParameterProperty:e.notImplemented,isExpandoFunctionDeclaration:e.notImplemented,getPropertiesOfContainerFunction:e.notImplemented,createTypeOfDeclaration:e.notImplemented,createReturnTypeOfSignatureDeclaration:e.notImplemented,createTypeOfExpression:e.notImplemented,createLiteralConstValue:e.notImplemented,isSymbolAccessible:e.notImplemented,isEntityNameVisible:e.notImplemented,getConstantValue:e.notImplemented,getReferencedValueDeclaration:e.notImplemented,getTypeReferenceSerializationKind:e.notImplemented,isOptionalParameter:e.notImplemented,moduleExportsSomeValue:e.notImplemented,isArgumentsLocalBinding:e.notImplemented,getExternalModuleFileFromDeclaration:e.notImplemented,getTypeReferenceDirectivesForEntityName:e.notImplemented,getTypeReferenceDirectivesForSymbol:e.notImplemented,isLiteralConstDeclaration:e.notImplemented,getJsxFactoryEntity:e.notImplemented,getJsxFragmentFactoryEntity:e.notImplemented,getAllAccessorDeclarations:e.notImplemented,getSymbolOfExternalModuleSpecifier:e.notImplemented,isBindingCapturedByNode:e.notImplemented,getDeclarationStatementsForSourceFile:e.notImplemented,isImportRequiredByAugmentation:e.notImplemented},e.emitUsingBuildInfo=function(t,r,n,a){var o=c(t.options,!1),s=o.buildInfoPath,l=o.jsFilePath,u=o.sourceMapFilePath,d=o.declarationFilePath,p=o.declarationMapPath,f=r.readFile(e.Debug.checkDefined(s));if(!f)return s;var m=r.readFile(e.Debug.checkDefined(l));if(!m)return l;var g=u&&r.readFile(u);if(u&&!g||t.options.inlineSourceMap)return u||"inline sourcemap decoding";var _=d&&r.readFile(d);if(d&&!_)return d;var h=p&&r.readFile(p);if(p&&!h||t.options.inlineSourceMap)return p||"inline sourcemap decoding";var y=x(f);if(!y.bundle||!y.bundle.js||_&&!y.bundle.dts)return s;var v=e.getDirectoryPath(e.getNormalizedAbsolutePath(s,r.getCurrentDirectory())),E=e.createInputFiles(m,_,u,g,p,h,l,d,s,y,!0),S=[],D=e.createPrependNodes(t.projectReferences,n,(function(e){return r.readFile(e)})),w=function(t,r,n){var i,a=e.Debug.checkDefined(t.js),o=(null===(i=a.sources)||void 0===i?void 0:i.prologues)&&e.arrayToMap(a.sources.prologues,(function(e){return e.file}));return t.sourceFiles.map((function(t,i){var a,s,c=null==o?void 0:o.get(i),l=null==c?void 0:c.directives.map((function(t){var r=e.setTextRange(e.factory.createStringLiteral(t.expression.text),t.expression),n=e.setTextRange(e.factory.createExpressionStatement(r),t);return e.setParent(r,n),n})),u=e.factory.createToken(1),d=e.factory.createSourceFile(null!=l?l:[],u,0);return d.fileName=e.getRelativePathFromDirectory(n.getCurrentDirectory(),e.getNormalizedAbsolutePath(t,r),!n.useCaseSensitiveFileNames()),d.text=null!==(a=null==c?void 0:c.text)&&void 0!==a?a:"",e.setTextRangePosWidth(d,0,null!==(s=null==c?void 0:c.text.length)&&void 0!==s?s:0),e.setEachParent(d.statements,d),e.setTextRangePosWidth(u,d.end,0),e.setParent(u,d),d}))}(y.bundle,v,r),T={getPrependNodes:e.memoize((function(){return i(i([],D),[E])})),getCanonicalFileName:r.getCanonicalFileName,getCommonSourceDirectory:function(){return e.getNormalizedAbsolutePath(y.bundle.commonSourceDirectory,v)},getCompilerOptions:function(){return t.options},getCurrentDirectory:function(){return r.getCurrentDirectory()},getNewLine:function(){return r.getNewLine()},getSourceFile:e.returnUndefined,getSourceFileByPath:e.returnUndefined,getSourceFiles:function(){return w},getLibFileFromReference:e.notImplemented,isSourceFileFromExternalLibrary:e.returnFalse,getResolvedProjectReferenceToRedirect:e.returnUndefined,getProjectReferenceRedirect:e.returnUndefined,isSourceOfProjectReferenceRedirect:e.returnFalse,writeFile:function(t,r,n){switch(t){case l:if(m===r)return;break;case u:if(g===r)return;break;case s:var i=x(r);i.program=y.program;var a=y.bundle,o=a.js,c=a.dts,f=a.sourceFiles;return i.bundle.js.sources=o.sources,c&&(i.bundle.dts.sources=c.sources),i.bundle.sourceFiles=f,void S.push({name:t,text:k(i),writeByteOrderMark:n});case d:if(_===r)return;break;case p:if(h===r)return;break;default:e.Debug.fail("Unexpected path: "+t)}S.push({name:t,text:r,writeByteOrderMark:n})},isEmitBlocked:e.returnFalse,readFile:function(e){return r.readFile(e)},fileExists:function(e){return r.fileExists(e)},useCaseSensitiveFileNames:function(){return r.useCaseSensitiveFileNames()},getProgramBuildInfo:e.returnUndefined,getSourceFileFromReference:e.returnUndefined,redirectTargetsMap:e.createMultiMap(),getFileIncludeReasons:e.notImplemented};return b(e.notImplementedResolver,T,void 0,e.getTransformers(t.options,a)),S},function(e){e[e.Notification=0]="Notification",e[e.Substitution=1]="Substitution",e[e.Comments=2]="Comments",e[e.SourceMaps=3]="SourceMaps",e[e.Emit=4]="Emit"}(t||(t={})),e.createPrinter=E,function(e){e[e.Auto=0]="Auto",e[e.CountMask=268435455]="CountMask",e[e._i=268435456]="_i"}(r||(r={}))}(d||(d={})),function(e){var t;function r(e){e.watcher.close()}e.createCachedDirectoryStructureHost=function(t,r,n){if(t.getDirectories&&t.readDirectory){var i=new e.Map,a=e.createGetCanonicalFileName(n);return{useCaseSensitiveFileNames:n,fileExists:function(e){var r=c(o(e));return r&&p(r.files,l(e))||t.fileExists(e)},readFile:function(e,r){return t.readFile(e,r)},directoryExists:t.directoryExists&&function(r){var n=o(r);return i.has(e.ensureTrailingDirectorySeparator(n))||t.directoryExists(r)},getDirectories:function(e){var r=o(e),n=u(e,r);if(n)return n.directories.slice();return t.getDirectories(e)},readDirectory:function(i,a,s,c,l){var d=o(i),p=u(i,d);if(p)return e.matchFiles(i,a,s,c,n,r,l,(function(t){var r=o(t);if(r===d)return p;return u(t,r)||e.emptyFileSystemEntries}),m);return t.readDirectory(i,a,s,c,l)},createDirectory:t.createDirectory&&function(e){var r=c(o(e)),n=l(e);r&&f(r.directories,n,!0);t.createDirectory(e)},writeFile:t.writeFile&&function(e,r,n){var i=c(o(e));i&&g(i,l(e),!0);return t.writeFile(e,r,n)},addOrDeleteFileOrDirectory:function(e,r){if(s(r))return void _();var n=c(r);if(!n)return;if(!t.directoryExists)return void _();var i=l(e),a={fileExists:t.fileExists(r),directoryExists:t.directoryExists(r)};a.directoryExists||p(n.directories,i)?_():g(n,i,a.fileExists);return a},addOrDeleteFile:function(t,r,n){if(n===e.FileWatcherEventKind.Changed)return;var i=c(r);i&&g(i,l(t),n===e.FileWatcherEventKind.Created)},clearCache:_,realpath:t.realpath&&m}}function o(t){return e.toPath(t,r,a)}function s(t){return i.get(e.ensureTrailingDirectorySeparator(t))}function c(t){return s(e.getDirectoryPath(t))}function l(t){return e.getBaseFileName(e.normalizePath(t))}function u(r,n){var a=s(n=e.ensureTrailingDirectorySeparator(n));if(a)return a;try{return function(r,n){var a={files:e.map(t.readDirectory(r,void 0,void 0,["*.*"]),l)||[],directories:t.getDirectories(r)||[]};return i.set(e.ensureTrailingDirectorySeparator(n),a),a}(r,n)}catch(t){return void e.Debug.assert(!i.has(e.ensureTrailingDirectorySeparator(n)))}}function d(e,t){return a(e)===a(t)}function p(t,r){return e.some(t,(function(e){return d(e,r)}))}function f(t,r,n){if(p(t,r)){if(!n)return e.filterMutate(t,(function(e){return!d(e,r)}))}else if(n)return t.push(r)}function m(e){return t.realpath?t.realpath(e):e}function g(e,t,r){f(e.files,t,r)}function _(){i.clear()}},function(e){e[e.None=0]="None",e[e.Partial=1]="Partial",e[e.Full=2]="Full"}(e.ConfigFileProgramReloadLevel||(e.ConfigFileProgramReloadLevel={})),e.updateSharedExtendedConfigFileWatcher=function(t,r,n,i,a){var o,s=e.arrayToMap((null===(o=null==r?void 0:r.options.configFile)||void 0===o?void 0:o.extendedSourceFiles)||e.emptyArray,a);n.forEach((function(e,r){s.has(r)||(e.projects.delete(t),e.close())})),s.forEach((function(r,a){var o=n.get(a);o?o.projects.add(t):n.set(a,{projects:new e.Set([t]),fileWatcher:i(r,a),close:function(){var e=n.get(a);e&&0===e.projects.size&&(e.fileWatcher.close(),n.delete(a))}})}))},e.updateMissingFilePathsWatch=function(t,r,n){var i=t.getMissingFilePaths(),a=e.arrayToMap(i,e.identity,e.returnTrue);e.mutateMap(r,a,{createNewValue:n,onDeleteValue:e.closeFileWatcher})},e.updateWatchingWildcardDirectories=function(t,n,i){function a(e,t){return{watcher:i(e,t),flags:t}}e.mutateMap(t,n,{createNewValue:a,onDeleteValue:r,onExistingValue:function(e,r,n){if(e.flags===r)return;e.watcher.close(),t.set(n,a(n,r))}})},e.isIgnoredFileFromWildCardWatching=function(t){var r=t.watchedDirPath,n=t.fileOrDirectory,i=t.fileOrDirectoryPath,a=t.configFileName,o=t.options,s=t.program,c=t.extraFileExtensions,l=t.currentDirectory,u=t.useCaseSensitiveFileNames,d=t.writeLog,p=e.removeIgnoredPath(i);if(!p)return d("Project: "+a+" Detected ignored path: "+n),!0;if((i=p)===r)return!1;if(e.hasExtension(i)&&!e.isSupportedSourceFileName(n,o,c))return d("Project: "+a+" Detected file add/remove of non supported extension: "+n),!0;if(e.isExcludedFile(n,o.configFile.configFileSpecs,e.getNormalizedAbsolutePath(e.getDirectoryPath(a),l),u,l))return d("Project: "+a+" Detected excluded file: "+n),!0;if(!s)return!1;if(o.outFile||o.outDir)return!1;if(e.isDeclarationFileName(i)){if(o.declarationDir)return!1}else if(!e.fileExtensionIsOneOf(i,e.supportedJSExtensions))return!1;var f=e.removeFileExtension(i),m=function(e){return!!e.getState}(s)?s.getProgramOrUndefined():s;return!!(g(f+".ts")||g(f+".tsx")||g(f+".ets"))&&(d("Project: "+a+" Detected output file: "+n),!0);function g(e){return m?!!m.getSourceFileByPath(e):s.getState().fileInfos.has(e)}},e.isEmittedFileOfProgram=function(e,t){return!!e&&e.isEmittedFile(t)},function(e){e[e.None=0]="None",e[e.TriggerOnly=1]="TriggerOnly",e[e.Verbose=2]="Verbose"}(t=e.WatchLogLevel||(e.WatchLogLevel={})),e.getWatchFactory=function(r,n,a,o){e.setSysLog(n===t.Verbose?a:e.noop);var s={watchFile:function(e,t,n,i){return r.watchFile(e,t,n,i)},watchDirectory:function(e,t,n,i){return r.watchDirectory(e,t,!!(1&n),i)}},c=n!==t.None?{watchFile:p("watchFile"),watchDirectory:p("watchDirectory")}:void 0,l=n===t.Verbose?{watchFile:function(e,t,r,n,i,s){a("FileWatcher:: Added:: "+f(e,r,n,i,s,o));var l=c.watchFile(e,t,r,n,i,s);return{close:function(){a("FileWatcher:: Close:: "+f(e,r,n,i,s,o)),l.close()}}},watchDirectory:function(t,r,n,i,s,l){var u="DirectoryWatcher:: Added:: "+f(t,n,i,s,l,o);a(u);var d=e.timestamp(),p=c.watchDirectory(t,r,n,i,s,l),m=e.timestamp()-d;return a("Elapsed:: "+m+"ms "+u),{close:function(){var r="DirectoryWatcher:: Close:: "+f(t,n,i,s,l,o);a(r);var c=e.timestamp();p.close();var u=e.timestamp()-c;a("Elapsed:: "+u+"ms "+r)}}}}:c||s,u=n===t.Verbose?function(e,t,r,n,i){return a("ExcludeWatcher:: Added:: "+f(e,t,r,n,i,o)),{close:function(){return a("ExcludeWatcher:: Close:: "+f(e,t,r,n,i,o))}}}:e.returnNoopFileWatcher;return{watchFile:d("watchFile"),watchDirectory:d("watchDirectory")};function d(t){return function(n,i,a,o,s,c){var d;return e.matchesExclude(n,"watchFile"===t?null==o?void 0:o.excludeFiles:null==o?void 0:o.excludeDirectories,"boolean"==typeof r.useCaseSensitiveFileNames?r.useCaseSensitiveFileNames:r.useCaseSensitiveFileNames(),(null===(d=r.getCurrentDirectory)||void 0===d?void 0:d.call(r))||"")?u(n,a,o,s,c):l[t].call(void 0,n,i,a,o,s,c)}}function p(t){return function(r,n,c,l,u,d){return s[t].call(void 0,r,(function(){for(var s=[],p=0;p<arguments.length;p++)s[p]=arguments[p];var m=("watchFile"===t?"FileWatcher":"DirectoryWatcher")+":: Triggered with "+s[0]+" "+(void 0!==s[1]?s[1]:"")+":: "+f(r,c,l,u,d,o);a(m);var g=e.timestamp();n.call.apply(n,i([void 0],s));var _=e.timestamp()-g;a("Elapsed:: "+_+"ms "+m)}),c,l,u,d)}}function f(e,t,r,n,i,a){return"WatchInfo: "+e+" "+t+" "+JSON.stringify(r)+" "+(a?a(n,i):void 0===i?n:n+" "+i)}},e.getFallbackOptions=function(t){var r=null==t?void 0:t.fallbackPolling;return{watchFile:void 0!==r?r:e.WatchFileKind.PriorityPollingInterval}},e.closeFileWatcherOf=r}(d||(d={})),function(e){function t(t,r){var n=e.getDirectoryPath(r),i=e.isRootedDiskPath(t)?t:e.combinePaths(n,t);return e.normalizePath(i)}function r(e,t){return n(e,t)}function n(t,r,n){void 0===n&&(n=e.sys);var i,a=new e.Map,o=e.createGetCanonicalFileName(n.useCaseSensitiveFileNames),s=e.maybeBind(n,n.createHash)||e.generateDjb2Hash;function c(){return e.getDirectoryPath(e.normalizePath(n.getExecutingFilePath()))}var l=e.getNewLineCharacter(t,(function(){return n.newLine})),u=n.realpath&&function(e){return n.realpath(e)},d={getSourceFile:function(n,i,a){var o;try{e.performance.mark("beforeIORead"),o=d.readFile(n),e.performance.mark("afterIORead"),e.performance.measure("I/O Read","beforeIORead","afterIORead")}catch(e){a&&a(e.message),o=""}return void 0!==o?e.createSourceFile(n,o,i,r,void 0,t):void 0},getDefaultLibLocation:c,getDefaultLibFileName:function(t){return e.combinePaths(c(),e.getDefaultLibFileName(t))},writeFile:function(r,o,c,l){try{e.performance.mark("beforeIOWrite"),e.writeFileEnsuringDirectories(r,o,c,(function(r,a,o){return function(r,a,o){if(!e.isWatchSet(t)||!n.getModifiedTime)return void n.writeFile(r,a,o);i||(i=new e.Map);var c=s(a),l=n.getModifiedTime(r);if(l){var u=i.get(r);if(u&&u.byteOrderMark===o&&u.hash===c&&u.mtime.getTime()===l.getTime())return}n.writeFile(r,a,o);var d=n.getModifiedTime(r)||e.missingFileModifiedTime;i.set(r,{hash:c,byteOrderMark:o,mtime:d})}(r,a,o)}),(function(e){return(d.createDirectory||n.createDirectory)(e)}),(function(e){return t=e,!!a.has(t)||!!(d.directoryExists||n.directoryExists)(t)&&(a.set(t,!0),!0);var t})),e.performance.mark("afterIOWrite"),e.performance.measure("I/O Write","beforeIOWrite","afterIOWrite")}catch(e){l&&l(e.message)}},getCurrentDirectory:e.memoize((function(){return n.getCurrentDirectory()})),useCaseSensitiveFileNames:function(){return n.useCaseSensitiveFileNames},getCanonicalFileName:o,getNewLine:function(){return l},fileExists:function(e){return n.fileExists(e)},readFile:function(e){return n.readFile(e)},trace:function(e){return n.write(e+l)},directoryExists:function(e){return n.directoryExists(e)},getEnvironmentVariable:function(e){return n.getEnvironmentVariable?n.getEnvironmentVariable(e):""},getDirectories:function(e){return n.getDirectories(e)},realpath:u,readDirectory:function(e,t,r,i,a){return n.readDirectory(e,t,r,i,a)},createDirectory:function(e){return n.createDirectory(e)},createHash:e.maybeBind(n,n.createHash)};return d}function a(t,r){var n=e.diagnosticCategoryName(t)+" TS"+t.code+": "+_(t.messageText,r.getNewLine())+r.getNewLine();if(t.file){var i=e.getLineAndCharacterOfPosition(t.file,t.start),a=i.line,o=i.character,s=t.file.fileName,c=e.convertToRelativePath(s,r.getCurrentDirectory(),(function(e){return r.getCanonicalFileName(e)}));return c+"("+(a+1)+","+(o+1)+"): "+n}return n}var o;e.findConfigFile=function(t,r,n){return void 0===n&&(n="tsconfig.json"),e.forEachAncestorDirectory(t,(function(t){var i=e.combinePaths(t,n);return r(i)?i:void 0}))},e.resolveTripleslashReference=t,e.computeCommonSourceDirectoryOfFilenames=function(t,r,n){var i;return e.forEach(t,(function(t){var a=e.getNormalizedPathComponents(t,r);if(a.pop(),i){for(var o=Math.min(i.length,a.length),s=0;s<o;s++)if(n(i[s])!==n(a[s])){if(0===s)return!0;i.length=s;break}a.length<i.length&&(i.length=a.length)}else i=a}))?"":i?e.getPathFromPathComponents(i):r},e.createCompilerHost=r,e.createCompilerHostWorker=n,e.changeCompilerHostLikeToUseCache=function(t,r,n){var i=t.readFile,a=t.fileExists,o=t.directoryExists,s=t.createDirectory,c=t.writeFile,l=new e.Map,u=new e.Map,d=new e.Map,p=new e.Map,f=function(e,r){var n=i.call(t,r);return l.set(e,void 0!==n&&n),n};t.readFile=function(n){var a=r(n),o=l.get(a);return void 0!==o?!1!==o?o:void 0:e.fileExtensionIs(n,".json")||e.isBuildInfoFile(n)?f(a,n):i.call(t,n)};var m=n?function(t,i,a,o){var s=r(t),c=p.get(s);if(c)return c;var l=n(t,i,a,o);return l&&(e.isDeclarationFileName(t)||e.fileExtensionIs(t,".json"))&&p.set(s,l),l}:void 0;return t.fileExists=function(e){var n=r(e),i=u.get(n);if(void 0!==i)return i;var o=a.call(t,e);return u.set(n,!!o),o},c&&(t.writeFile=function(e,n,i,a,o){var s=r(e);u.delete(s);var d=l.get(s);if(void 0!==d&&d!==n)l.delete(s),p.delete(s);else if(m){var f=p.get(s);f&&f.text!==n&&p.delete(s)}c.call(t,e,n,i,a,o)}),o&&s&&(t.directoryExists=function(e){var n=r(e),i=d.get(n);if(void 0!==i)return i;var a=o.call(t,e);return d.set(n,!!a),a},t.createDirectory=function(e){var n=r(e);d.delete(n),s.call(t,e)}),{originalReadFile:i,originalFileExists:a,originalDirectoryExists:o,originalCreateDirectory:s,originalWriteFile:c,getSourceFileWithCache:m,readFileWithCache:function(e){var t=r(e),n=l.get(t);return void 0!==n?!1!==n?n:void 0:f(t,e)}}},e.getPreEmitDiagnostics=function(t,r,n){var i;return i=e.addRange(i,t.getConfigFileParsingDiagnostics()),i=e.addRange(i,t.getOptionsDiagnostics(n)),i=e.addRange(i,t.getSyntacticDiagnostics(r,n)),i=e.addRange(i,t.getGlobalDiagnostics(n)),i=e.addRange(i,t.getSemanticDiagnostics(r,n)),e.getEmitDeclarations(t.getCompilerOptions())&&(i=e.addRange(i,t.getDeclarationDiagnostics(r,n))),e.sortAndDeduplicateDiagnostics(i||e.emptyArray)},e.formatDiagnostics=function(e,t){for(var r="",n=0,i=e;n<i.length;n++){r+=a(i[n],t)}return r},e.formatDiagnostic=a,function(e){e.Grey="",e.Red="",e.Yellow="",e.Blue="",e.Cyan=""}(o=e.ForegroundColorEscapeSequences||(e.ForegroundColorEscapeSequences={}));var s="",c=" ",l="",u="...",d=" ";function p(t){switch(t){case e.DiagnosticCategory.Error:return o.Red;case e.DiagnosticCategory.Warning:return o.Yellow;case e.DiagnosticCategory.Suggestion:return e.Debug.fail("Should never get an Info diagnostic on the command line.");case e.DiagnosticCategory.Message:return o.Blue}}function f(e,t){return t+e+l}function m(t,r,n,i,a,o){var d=e.getLineAndCharacterOfPosition(t,r),p=d.line,m=d.character,g=e.getLineAndCharacterOfPosition(t,r+n),_=g.line,h=g.character,y=e.getLineAndCharacterOfPosition(t,t.text.length).line,v=_-p>=4,b=(_+1+"").length;v&&(b=Math.max(u.length,b));for(var k="",x=p;x<=_;x++){k+=o.getNewLine(),v&&p+1<x&&x<_-1&&(k+=i+f(e.padLeft(u,b),s)+c+o.getNewLine(),x=_-1);var E=e.getPositionOfLineAndCharacter(t,x,0),S=x<y?e.getPositionOfLineAndCharacter(t,x+1,0):t.text.length,D=t.text.slice(E,S);if(D=(D=D.replace(/\s+$/g,"")).replace(/\t/g," "),k+=i+f(e.padLeft(x+1+"",b),s)+c,k+=D+o.getNewLine(),k+=i+f(e.padLeft("",b),s)+c,k+=a,x===p){var w=x===_?h:void 0;k+=D.slice(0,m).replace(/\S/g," "),k+=D.slice(m,w).replace(/./g,"~")}else k+=x===_?D.slice(0,h).replace(/./g,"~"):D.replace(/./g,"~");k+=l}return k}function g(t,r,n,i){void 0===i&&(i=f);var a=e.getLineAndCharacterOfPosition(t,r),s=a.line,c=a.character,l="";return l+=i(n?e.convertToRelativePath(t.fileName,n.getCurrentDirectory(),(function(e){return n.getCanonicalFileName(e)})):t.fileName,o.Cyan),l+=":",l+=i(""+(s+1),o.Yellow),l+=":",l+=i(""+(c+1),o.Yellow)}function _(t,r,n){if(void 0===n&&(n=0),e.isString(t))return t;if(void 0===t)return"";var i="";if(n){i+=r;for(var a=0;a<n;a++)i+=" "}if(i+=t.messageText,n++,t.next)for(var o=0,s=t.next;o<s.length;o++){i+=_(s[o],r,n)}return i}function h(t,r,n,i){if(0===t.length)return[];for(var a=[],o=new e.Map,s=0,c=t;s<c.length;s++){var l=c[s],u=void 0;o.has(l)?u=o.get(l):o.set(l,u=i(l,r,n)),a.push(u)}return a}function y(t,r,n,i){var a;return function t(r,o,s){if(i){var c=i(r,s);if(c)return c}return e.forEach(o,(function(r,i){if(!r||!(null==a?void 0:a.has(r.sourceFile.path))){var o=n(r,s,i);return o||!r?o:((a||(a=new e.Set)).add(r.sourceFile.path),t(r.commandLine.projectReferences,r.references,r))}}))}(t,r,void 0)}function v(t){switch(null==t?void 0:t.kind){case e.FileIncludeKind.Import:case e.FileIncludeKind.ReferenceFile:case e.FileIncludeKind.TypeReferenceDirective:case e.FileIncludeKind.LibReferenceDirective:return!0;default:return!1}}function b(e){return void 0!==e.pos}function k(t,r){var n,i,a,o,s,c,l,u,d,p,f=e.Debug.checkDefined(t(r.file)),m=r.kind,g=r.index;switch(m){case e.FileIncludeKind.Import:var _=A(f,g);if(p=null===(s=null===(o=f.resolvedModules)||void 0===o?void 0:o.get(_.text))||void 0===s?void 0:s.packageId,-1===_.pos)return{file:f,packageId:p,text:_.text};u=e.skipTrivia(f.text,_.pos),d=_.end;break;case e.FileIncludeKind.ReferenceFile:u=(n=f.referencedFiles[g]).pos,d=n.end;break;case e.FileIncludeKind.TypeReferenceDirective:u=(i=f.typeReferenceDirectives[g]).pos,d=i.end,p=null===(l=null===(c=f.resolvedTypeReferenceDirectiveNames)||void 0===c?void 0:c.get(e.toFileNameLowerCase(f.typeReferenceDirectives[g].fileName)))||void 0===l?void 0:l.packageId;break;case e.FileIncludeKind.LibReferenceDirective:u=(a=f.libReferenceDirectives[g]).pos,d=a.end;break;default:return e.Debug.assertNever(m)}return{file:f,pos:u,end:d,packageId:p}}function x(t,r,n,a){var o=t.getCompilerOptions();if(o.noEmit)return t.getSemanticDiagnostics(r,a),r||e.outFile(o)?e.emitSkippedWithNoDiagnostics:t.emitBuildInfo(n,a);if(o.noEmitOnError){var s=i(i(i(i([],t.getOptionsDiagnostics(a)),t.getSyntacticDiagnostics(r,a)),t.getGlobalDiagnostics(a)),t.getSemanticDiagnostics(r,a));if(0===s.length&&e.getEmitDeclarations(t.getCompilerOptions())&&(s=t.getDeclarationDiagnostics(void 0,a)),s.length){var c;if(!r&&!e.outFile(o)){var l=t.emitBuildInfo(n,a);l.diagnostics&&(s=i(i([],s),l.diagnostics)),c=l.emittedFiles}return{diagnostics:s,sourceMaps:void 0,emittedFiles:c,emitSkipped:!0}}}}function E(t,r){return e.filter(t,(function(e){return!e.skippedOn||!r[e.skippedOn]}))}function S(t,r){return void 0===r&&(r=t),{fileExists:function(e){return r.fileExists(e)},readDirectory:function(t,n,i,a,o){return e.Debug.assertIsDefined(r.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),r.readDirectory(t,n,i,a,o)},readFile:function(e){return r.readFile(e)},useCaseSensitiveFileNames:t.useCaseSensitiveFileNames(),getCurrentDirectory:function(){return t.getCurrentDirectory()},onUnRecoverableConfigFileDiagnostic:t.onUnRecoverableConfigFileDiagnostic||e.returnUndefined,trace:t.trace?function(e){return t.trace(e)}:void 0}}function D(t,r,n){if(!t)return e.emptyArray;for(var i,a=0;a<t.length;a++){var o=t[a],s=r(o,a);if(o.prepend&&s&&s.options){if(!e.outFile(s.options))continue;var c=e.getOutputPathsForBundle(s.options,!0),l=c.jsFilePath,u=c.sourceMapFilePath,d=c.declarationFilePath,p=c.declarationMapPath,f=c.buildInfoPath,m=e.createInputFiles(n,l,u,d,p,f);(i||(i=[])).push(m)}}return i||e.emptyArray}function w(t,r){var n=r||t;return e.resolveConfigFileProjectName(n.path)}function T(t,r){switch(r.extension){case".ts":case".d.ts":case".ets":case".d.ets":return;case".tsx":return n();case".jsx":return n()||i();case".js":return i();case".json":return t.resolveJsonModule?void 0:e.Diagnostics.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function n(){return t.jsx?void 0:e.Diagnostics.Module_0_was_resolved_to_1_but_jsx_is_not_set}function i(){return e.getAllowJSCompilerOption(t)||!e.getStrictOptionValue(t,"noImplicitAny")?void 0:e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}}function C(e){for(var t=e.imports,r=e.moduleAugmentations,n=t.map((function(e){return e.text})),i=0,a=r;i<a.length;i++){var o=a[i];10===o.kind&&n.push(o.text)}return n}function A(t,r){var n=t.imports,i=t.moduleAugmentations;if(r<n.length)return n[r];for(var a=n.length,o=0,s=i;o<s.length;o++){var c=s[o];if(10===c.kind){if(r===a)return c;a++}}e.Debug.fail("should never ask for module name at index higher than possible module name")}e.formatColorAndReset=f,e.formatLocation=g,e.formatDiagnosticsWithColorAndContext=function(t,r){for(var n="",i=0,a=t;i<a.length;i++){var s=a[i];if(s.file)n+=g(h=s.file,y=s.start,r),n+=" - ";if(n+=f(e.diagnosticCategoryName(s),p(s.category)),n+=f(" TS"+s.code+": ",o.Grey),n+=_(s.messageText,r.getNewLine()),s.file&&(n+=r.getNewLine(),n+=m(s.file,s.start,s.length,"",p(s.category),r)),s.relatedInformation){n+=r.getNewLine();for(var c=0,l=s.relatedInformation;c<l.length;c++){var u=l[c],h=u.file,y=u.start,v=u.length,b=u.messageText;h&&(n+=r.getNewLine(),n+=" "+g(h,y,r),n+=m(h,y,v,d,o.Cyan,r)),n+=r.getNewLine(),n+=d+_(b,r.getNewLine())}}n+=r.getNewLine()}return n},e.flattenDiagnosticMessageText=_,e.loadWithLocalCache=h,e.forEachResolvedProjectReference=function(e,t){return y(void 0,e,(function(e,r){return e&&t(e,r)}))},e.inferredTypesContainingFile="__inferred type names__.ts",e.isReferencedFile=v,e.isReferenceFileLocation=b,e.getReferencedFileLocation=k,e.isProgramUptoDate=function(t,r,n,i,a,o,s,c){if(!t||(null==s?void 0:s()))return!1;if(!e.arrayIsEqualTo(t.getRootFileNames(),r))return!1;var l;if(!e.arrayIsEqualTo(t.getProjectReferences(),c,(function(r,n,i){if(!e.projectReferenceIsEqualTo(r,n))return!1;return p(t.getResolvedProjectReferences()[i],r)})))return!1;if(t.getSourceFiles().some((function(e){return!d(e)||o(e.path)})))return!1;if(t.getMissingFilePaths().some(a))return!1;var u=t.getCompilerOptions();return!!e.compareDataObjects(u,n)&&(!u.configFile||!n.configFile||u.configFile.text===n.configFile.text);function d(e){return e.version===i(e.resolvedPath,e.fileName)}function p(t,r){return t?!!e.contains(l,t)||!!d(t.sourceFile)&&((l||(l=[])).push(t),!e.forEach(t.references,(function(e,r){return!p(e,t.commandLine.projectReferences[r])}))):!a(w(r))}},e.getConfigFileParsingDiagnostics=function(e){return e.options.configFile?i(i([],e.options.configFile.parseDiagnostics),e.errors):e.errors},e.createProgram=function(n,a,o,s,c){var l,u,d,p,f,m,g,_,A,N,P,I,F,O,R=e.isArray(n)?function(e,t,r,n,i){return{rootNames:e,options:t,host:r,oldProgram:n,configFileParsingDiagnostics:i}}(n,a,o,s,c):n,M=R.rootNames,L=R.options,j=R.configFileParsingDiagnostics,B=R.projectReferences,z=R.oldProgram,U=new e.Map,q=e.createMultiMap(),J={},V={},H=new e.Map,K="number"==typeof L.maxNodeModuleJsDepth?L.maxNodeModuleJsDepth:0,W=0,G=new e.Map,$=new e.Map;null===e.tracing||void 0===e.tracing||e.tracing.push("program","createProgram",{configFilePath:L.configFilePath,rootDir:L.rootDir},!0),e.performance.mark("beforeProgram");var Y,X,Q,Z,ee=R.host||r(L),te=S(ee),re=L.noLib,ne=e.memoize((function(){return ee.getDefaultLibFileName(L)})),ie=ee.getDefaultLibLocation?ee.getDefaultLibLocation():e.getDirectoryPath(ne()),ae=e.createDiagnosticCollection(),oe=ee.getCurrentDirectory(),se=e.getSupportedExtensions(L),ce=e.getSuppoertedExtensionsWithJsonIfResolveJsonModule(L,se),le=new e.Map,ue=ee.hasInvalidatedResolution||e.returnFalse;if(ee.resolveModuleNames)Q=function(t,r,n,i){return ee.resolveModuleNames(e.Debug.checkEachDefined(t),r,n,i,L).map((function(t){if(!t||void 0!==t.extension)return t;var r=e.clone(t);return r.extension=e.extensionFromPath(t.resolvedFileName),r}))};else{X=e.createModuleResolutionCache(oe,(function(e){return ee.getCanonicalFileName(e)}),L);var de=function(t,r,n){return e.resolveModuleName(t,r,L,ee,X,n).resolvedModule};Q=function(t,r,n,i){return h(e.Debug.checkEachDefined(t),r,i,de)}}if(ee.resolveTypeReferenceDirectives)Z=function(t,r,n){return ee.resolveTypeReferenceDirectives(e.Debug.checkEachDefined(t),r,n,L)};else{var pe=function(t,r,n){return e.resolveTypeReferenceDirective(t,r,L,ee,n).resolvedTypeReferenceDirective};Z=function(t,r,n){return h(e.Debug.checkEachDefined(t),r,n,pe)}}var fe,me,ge,_e,he,ye=new e.Map,ve=new e.Map,be=e.createMultiMap(),ke=new e.Map,xe=ee.useCaseSensitiveFileNames()?new e.Map:void 0,Ee=!!(null===(l=ee.useSourceOfProjectReferenceRedirect)||void 0===l?void 0:l.call(ee))&&!L.disableSourceOfProjectReferenceRedirect,Se=function(t){var r,n,i=t.compilerHost.fileExists,a=t.compilerHost.directoryExists,o=t.compilerHost.getDirectories,s=t.compilerHost.realpath;if(!t.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:e.noop,fileExists:l};t.compilerHost.fileExists=l,a&&(n=t.compilerHost.directoryExists=function(n){return a.call(t.compilerHost,n)?(p(n),!0):!!t.getResolvedProjectReferences()&&(r||(r=new e.Set,t.forEachResolvedProjectReference((function(n){var i=e.outFile(n.commandLine.options);if(i)r.add(e.getDirectoryPath(t.toPath(i)));else{var a=n.commandLine.options.declarationDir||n.commandLine.options.outDir;a&&r.add(t.toPath(a))}}))),f(n,!1))});o&&(t.compilerHost.getDirectories=function(e){return!t.getResolvedProjectReferences()||a&&a.call(t.compilerHost,e)?o.call(t.compilerHost,e):[]});s&&(t.compilerHost.realpath=function(e){var r;return(null===(r=t.getSymlinkCache().getSymlinkedFiles())||void 0===r?void 0:r.get(t.toPath(e)))||s.call(t.compilerHost,e)});return{onProgramCreateComplete:c,fileExists:l,directoryExists:n};function c(){t.compilerHost.fileExists=i,t.compilerHost.directoryExists=a,t.compilerHost.getDirectories=o}function l(r){return!!i.call(t.compilerHost,r)||!!t.getResolvedProjectReferences()&&(!!e.isDeclarationFileName(r)&&f(r,!0))}function u(r){var n=t.getSourceOfProjectReferenceRedirect(r);return void 0!==n?!e.isString(n)||i.call(t.compilerHost,n):void 0}function d(n){var i=t.toPath(n),a=""+i+e.directorySeparator;return e.forEachKey(r,(function(t){return i===t||e.startsWith(t,a)||e.startsWith(i,t+"/")}))}function p(r){var n,i;if(t.getResolvedProjectReferences()&&!e.containsIgnoredPath(r)){var a=e.isOhpm(null===(n=t.options)||void 0===n?void 0:n.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart;if(s&&e.stringContains(r,a)){var o=t.getSymlinkCache(),c=e.ensureTrailingDirectorySeparator(t.toPath(r));if(!(null===(i=o.getSymlinkedDirectories())||void 0===i?void 0:i.has(c))){var l,u=e.normalizePath(s.call(t.compilerHost,r));u!==r&&(l=e.ensureTrailingDirectorySeparator(t.toPath(u)))!==c?o.setSymlinkedDirectory(r,{real:e.ensureTrailingDirectorySeparator(u),realPath:l}):o.setSymlinkedDirectory(c,!1)}}}}function f(r,n){var i,a,o=n?function(e){return u(e)}:function(e){return d(e)},s=o(r);if(void 0!==s)return s;var c=t.getSymlinkCache(),l=c.getSymlinkedDirectories();if(!l)return!1;var p=t.toPath(r),f=e.isOhpm(null===(i=t.options)||void 0===i?void 0:i.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart;return!!e.stringContains(p,f)&&(!(!n||!(null===(a=c.getSymlinkedFiles())||void 0===a?void 0:a.has(p)))||(e.firstDefinedIterator(l.entries(),(function(i){var a=i[0],s=i[1];if(s&&e.startsWith(p,a)){var l=o(p.replace(a,s.realPath));if(n&&l){var u=e.getNormalizedAbsolutePath(r,t.compilerHost.getCurrentDirectory());c.setSymlinkedFile(p,""+s.real+u.replace(new RegExp(a,"i"),""))}return l}}))||!1))}}({compilerHost:ee,getSymlinkCache:ar,useSourceOfProjectReferenceRedirect:Ee,toPath:Ke,getResolvedProjectReferences:Ye,getSourceOfProjectReferenceRedirect:Ft,forEachResolvedProjectReference:It,options:a}),De=Se.onProgramCreateComplete,we=Se.fileExists,Te=Se.directoryExists;null===e.tracing||void 0===e.tracing||e.tracing.push("program","shouldProgramCreateNewSourceFiles",{hasOldProgram:!!z});var Ce,Ae=function(t,r){if(!t)return!1;var n=t.getCompilerOptions();return!!e.sourceFileAffectingCompilerOptions.some((function(t){return!e.isJsonEqual(e.getCompilerOptionValue(n,t),e.getCompilerOptionValue(r,t))}))}(z,L);if(null===e.tracing||void 0===e.tracing||e.tracing.pop(),null===e.tracing||void 0===e.tracing||e.tracing.push("program","tryReuseStructureFromOldProgram",{}),Ce=function(){var t;if(!z)return 0;var r=z.getCompilerOptions();if(e.changesAffectModuleResolution(r,L))return 0;var n=z.getRootFileNames();if(!e.arrayIsEqualTo(n,M))return 0;if(!e.arrayIsEqualTo(L.types,r.types))return 0;if(y(z.getProjectReferences(),z.getResolvedProjectReferences(),(function(e,t,r){var n=qt((t?t.commandLine.projectReferences:B)[r]);return e?!n||n.sourceFile!==e.sourceFile:void 0!==n}),(function(t,r){var n=r?Rt(r.sourceFile.path).commandLine.projectReferences:B;return!e.arrayIsEqualTo(t,n,e.projectReferenceIsEqualTo)})))return 0;B&&(me=B.map(qt));var i=[],a=[];if(Ce=2,z.getMissingFilePaths().some((function(e){return ee.fileExists(e)})))return 0;var o,s=z.getSourceFiles();!function(e){e[e.Exists=0]="Exists",e[e.Modified=1]="Modified"}(o||(o={}));for(var c=new e.Map,l=0,u=s;l<u.length;l++){var d=u[l];if(!(j=ee.getSourceFileByPath?ee.getSourceFileByPath(d.fileName,d.resolvedPath,L.target,void 0,Ae):ee.getSourceFile(d.fileName,L.target,void 0,Ae)))return 0;e.Debug.assert(!j.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");var p=void 0;if(d.redirectInfo){if(j!==d.redirectInfo.unredirected)return 0;p=!1,j=d}else if(z.redirectTargetsMap.has(d.path)){if(j!==d)return 0;p=!1}else p=j!==d;j.path=d.path,j.originalFileName=d.originalFileName,j.resolvedPath=d.resolvedPath,j.fileName=d.fileName;var f=z.sourceFileToPackageName.get(d.path);if(void 0!==f){var m=c.get(f),g=p?1:0;if(void 0!==m&&1===g||1===m)return 0;c.set(f,g)}if(p){if(!e.arrayIsEqualTo(d.libReferenceDirectives,j.libReferenceDirectives,ht))return 0;d.hasNoDefaultLib!==j.hasNoDefaultLib&&(Ce=1),e.arrayIsEqualTo(d.referencedFiles,j.referencedFiles,ht)||(Ce=1),bt(j),e.arrayIsEqualTo(d.imports,j.imports,yt)||(Ce=1),e.arrayIsEqualTo(d.moduleAugmentations,j.moduleAugmentations,yt)||(Ce=1),(3145728&d.flags)!=(3145728&j.flags)&&(Ce=1),e.arrayIsEqualTo(d.typeReferenceDirectives,j.typeReferenceDirectives,ht)||(Ce=1),a.push({oldFile:d,newFile:j})}else ue(d.path)&&(Ce=1,a.push({oldFile:d,newFile:j}));i.push(j)}if(2!==Ce)return Ce;for(var h=a.map((function(e){return e.oldFile})),v=0,b=s;v<b.length;v++){var k=b[v];if(!e.contains(h,k))for(var x=0,E=k.ambientModuleNames;x<E.length;x++){var S=E[x];U.set(S,k.fileName)}}for(var D=0,w=a;D<w.length;D++){var T=w[D],A=(d=T.oldFile,C(j=T.newFile)),N=Ge(A,j);e.hasChangesInResolutions(A,N,d.resolvedModules,e.moduleResolutionIsEqualTo)?(Ce=1,j.resolvedModules=e.zipToMap(A,N)):j.resolvedModules=d.resolvedModules;var P=e.map(j.typeReferenceDirectives,(function(t){return e.toFileNameLowerCase(t.fileName)})),I=qe(P,j);e.hasChangesInResolutions(P,I,d.resolvedTypeReferenceDirectiveNames,e.typeDirectiveIsEqualTo)?(Ce=1,j.resolvedTypeReferenceDirectiveNames=e.zipToMap(P,I)):j.resolvedTypeReferenceDirectiveNames=d.resolvedTypeReferenceDirectiveNames}if(2!==Ce)return Ce;if(null===(t=ee.hasChangedAutomaticTypeDirectiveNames)||void 0===t?void 0:t.call(ee))return 1;fe=z.getMissingFilePaths(),e.Debug.assert(i.length===z.getSourceFiles().length);for(var F=0,R=i;F<R.length;F++){var j=R[F];ke.set(j.path,j)}return z.getFilesByNameMap().forEach((function(e,t){e?e.path!==t?ke.set(t,ke.get(e.path)):z.isSourceFileFromExternalLibrary(e)&&$.set(e.path,!0):ke.set(t,e)})),_=i,q=z.getFileIncludeReasons(),O=z.getFileProcessingDiagnostics(),H=z.getResolvedTypeReferenceDirectives(),ve=z.sourceFileToPackageName,be=z.redirectTargetsMap,2}(),null===e.tracing||void 0===e.tracing||e.tracing.pop(),2!==Ce){m=[],g=[],B&&(me||(me=B.map(qt)),M.length&&(null==me||me.forEach((function(t,r){if(t){var n=e.outFile(t.commandLine.options);if(Ee){if(n||e.getEmitModuleKind(t.commandLine.options)===e.ModuleKind.None)for(var i=0,a=t.commandLine.fileNames;i<a.length;i++){Et(l=a[i],{kind:e.FileIncludeKind.SourceFromProjectReference,index:r})}}else if(n)Et(e.changeExtension(n,".d.ts"),{kind:e.FileIncludeKind.OutputFromProjectReference,index:r});else if(e.getEmitModuleKind(t.commandLine.options)===e.ModuleKind.None)for(var o=e.memoize((function(){return e.getCommonSourceDirectoryOfConfig(t.commandLine,!ee.useCaseSensitiveFileNames())})),s=0,c=t.commandLine.fileNames;s<c.length;s++){var l=c[s];e.isDeclarationFileName(l)||e.fileExtensionIs(l,".json")||Et(e.getOutputDeclarationFileName(l,t.commandLine,!ee.useCaseSensitiveFileNames(),o),{kind:e.FileIncludeKind.OutputFromProjectReference,index:r})}}})))),null===e.tracing||void 0===e.tracing||e.tracing.push("program","processRootFiles",{count:M.length}),e.forEach(M,(function(t,r){return _t(t,!1,!1,{kind:e.FileIncludeKind.RootFile,index:r})})),null===e.tracing||void 0===e.tracing||e.tracing.pop();var Ne=M.length?e.getAutomaticTypeDirectiveNames(L,ee):e.emptyArray;if(Ne.length){null===e.tracing||void 0===e.tracing||e.tracing.push("program","processTypeReferences",{count:Ne.length});for(var Pe=L.configFilePath?e.getDirectoryPath(L.configFilePath):ee.getCurrentDirectory(),Ie=qe(Ne,e.combinePaths(Pe,e.inferredTypesContainingFile)),Fe=0;Fe<Ne.length;Fe++)jt(Ne[Fe],Ie[Fe],{kind:e.FileIncludeKind.AutomaticTypeDirectiveFile,typeReference:Ne[Fe],packageId:null===(u=Ie[Fe])||void 0===u?void 0:u.packageId});null===e.tracing||void 0===e.tracing||e.tracing.pop()}if(M.length&&!re){var Oe=ne();if(!L.lib&&Oe)_t(Oe,!0,!1,{kind:e.FileIncludeKind.LibFile});else{e.forEach(L.lib,(function(t,r){_t(e.combinePaths(ie,t),!0,!1,{kind:e.FileIncludeKind.LibFile,index:r})}));var Re=null!==(p=null===(d=L.ets)||void 0===d?void 0:d.libs)&&void 0!==p?p:[];Re.length&&e.forEach(Re,(function(t){_t(e.combinePaths(t),!0,!1,{kind:e.FileIncludeKind.LibFile})}))}}fe=e.arrayFrom(e.mapDefinedIterator(ke.entries(),(function(e){var t=e[0];return void 0===e[1]?t:void 0}))),_=e.stableSort(m,(function(t,r){return e.compareValues(He(t),He(r))})).concat(g),m=void 0,g=void 0}if(e.Debug.assert(!!fe),z&&ee.onReleaseOldSourceFile){for(var Me=0,Le=z.getSourceFiles();Me<Le.length;Me++){var je=Le[Me],Be=nt(je.resolvedPath);(Ae||!Be||je.resolvedPath===je.path&&Be.resolvedPath!==je.path)&&ee.onReleaseOldSourceFile(je,z.getCompilerOptions(),!!nt(je.path))}z.forEachResolvedProjectReference((function(e){Rt(e.sourceFile.path)||ee.onReleaseOldSourceFile(e.sourceFile,z.getCompilerOptions(),!1)}))}z=void 0;var ze={getRootFileNames:function(){return M},getSourceFile:rt,getSourceFileByPath:nt,getSourceFiles:function(){return _},getMissingFilePaths:function(){return fe},getFilesByNameMap:function(){return ke},getCompilerOptions:function(){return L},getSyntacticDiagnostics:function(e,t){return it(e,ot,t)},getOptionsDiagnostics:function(){return e.sortAndDeduplicateDiagnostics(e.concatenate(ae.getGlobalDiagnostics(),function(){if(!L.configFile)return e.emptyArray;var t=ae.getDiagnostics(L.configFile.fileName);return It((function(r){t=e.concatenate(t,ae.getDiagnostics(r.sourceFile.fileName))})),t}()))},getGlobalDiagnostics:function(){return M.length?e.sortAndDeduplicateDiagnostics(Ze().getGlobalDiagnostics().slice()):e.emptyArray},getSemanticDiagnostics:function(e,t){return it(e,ct,t)},getCachedSemanticDiagnostics:function(e){var t;return e?null===(t=J.perFile)||void 0===t?void 0:t.get(e.path):J.allDiagnostics},getSuggestionDiagnostics:function(e,t){return st((function(){return Ze().getSuggestionDiagnostics(e,t)}))},getDeclarationDiagnostics:function(t,r){var n=ze.getCompilerOptions();return!t||e.outFile(n)?pt(t,r):it(t,gt,r)},getBindAndCheckDiagnostics:function(e,t){return lt(e,t)},getProgramDiagnostics:at,getTypeChecker:et,getEtsLibSFromProgram:function(){return e.getEtsLibs(ze)},getClassifiableNames:function(){var t;if(!F){et(),F=new e.Set;for(var r=0,n=_;r<n.length;r++){null===(t=n[r].classifiableNames)||void 0===t||t.forEach((function(e){return F.add(e)}))}}return F},getDiagnosticsProducingTypeChecker:Ze,getCommonSourceDirectory:We,emit:function(t,r,n,i,a,o){null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emit",{path:null==t?void 0:t.path},!0);var s=st((function(){return function(t,r,n,i,a,o,s){if(!s){var c=x(t,r,n,i);if(c)return c}var l=Ze().getEmitResolver(e.outFile(L)?void 0:r,i);e.performance.mark("beforeEmit");var u=e.emitFiles(l,$e(n),r,e.getTransformers(L,o,a),a,!1,s);return e.performance.mark("afterEmit"),e.performance.measure("Emit","beforeEmit","afterEmit"),u}(ze,t,r,n,i,a,o)}));return null===e.tracing||void 0===e.tracing||e.tracing.pop(),s},getCurrentDirectory:function(){return oe},getNodeCount:function(){return Ze().getNodeCount()},getIdentifierCount:function(){return Ze().getIdentifierCount()},getSymbolCount:function(){return Ze().getSymbolCount()},getTypeCatalog:function(){return Ze().getTypeCatalog()},getTypeCount:function(){return Ze().getTypeCount()},getInstantiationCount:function(){return Ze().getInstantiationCount()},getRelationCacheSizes:function(){return Ze().getRelationCacheSizes()},getFileProcessingDiagnostics:function(){return O},getResolvedTypeReferenceDirectives:function(){return H},isSourceFileFromExternalLibrary:Qe,isSourceFileDefaultLibrary:function(t){if(t.hasNoDefaultLib)return!0;if(!L.noLib)return!1;var r=ee.useCaseSensitiveFileNames()?e.equateStringsCaseSensitive:e.equateStringsCaseInsensitive;return L.lib?e.some(L.lib,(function(n){return r(t.fileName,e.combinePaths(ie,n))})):r(t.fileName,ne())},dropDiagnosticsProducingTypeChecker:function(){P=void 0},getSourceFileFromReference:function(e,r){return kt(t(r.fileName,e.fileName),rt)},getLibFileFromReference:function(t){var r=e.toFileNameLowerCase(t.fileName),n=e.libMap.get(r);if(n)return rt(e.combinePaths(ie,n))},sourceFileToPackageName:ve,redirectTargetsMap:be,isEmittedFile:function(t){if(L.noEmit)return!1;var r=Ke(t);if(nt(r))return!1;var n=e.outFile(L);if(n)return ir(r,n)||ir(r,e.removeFileExtension(n)+".d.ts");if(L.declarationDir&&e.containsPath(L.declarationDir,r,oe,!ee.useCaseSensitiveFileNames()))return!0;if(L.outDir)return e.containsPath(L.outDir,r,oe,!ee.useCaseSensitiveFileNames());if(e.fileExtensionIsOneOf(r,e.supportedJSExtensions)||e.isDeclarationFileName(r)){var i=e.removeFileExtension(r);return!!nt(i+".ts")||!!nt(i+".tsx")}return!1},getConfigFileParsingDiagnostics:function(){return j||e.emptyArray},getResolvedModuleWithFailedLookupLocationsFromCache:function(t,r){return X&&e.resolveModuleNameFromCache(t,r,X)},getProjectReferences:function(){return B},getResolvedProjectReferences:Ye,getProjectReferenceRedirect:Ct,getResolvedProjectReferenceToRedirect:Pt,getResolvedProjectReferenceByPath:Rt,forEachResolvedProjectReference:It,isSourceOfProjectReferenceRedirect:Ot,emitBuildInfo:function(t){e.Debug.assert(!e.outFile(L)),null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitBuildInfo",{},!0),e.performance.mark("beforeEmit");var r=e.emitFiles(e.notImplementedResolver,$e(t),void 0,e.noTransformers,!1,!0);return e.performance.mark("afterEmit"),e.performance.measure("Emit","beforeEmit","afterEmit"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),r},fileExists:we,directoryExists:Te,getSymlinkCache:ar,realpath:null===(f=ee.realpath)||void 0===f?void 0:f.bind(ee),useCaseSensitiveFileNames:function(){return ee.useCaseSensitiveFileNames()},getFileIncludeReasons:function(){return q},structureIsReused:Ce,getTagNameNeededCheckByFile:ee.getTagNameNeededCheckByFile,getExpressionCheckedResultsByFile:ee.getExpressionCheckedResultsByFile};return De(),null==O||O.forEach((function(t){switch(t.kind){case 1:return ae.add(Jt(t.file&&nt(t.file),t.fileProcessingReason,t.diagnostic,t.args||e.emptyArray));case 0:var r=k(nt,t.reason),n=r.file,a=r.pos,o=r.end;return ae.add(e.createFileDiagnostic.apply(void 0,i([n,e.Debug.checkDefined(a),e.Debug.checkDefined(o)-a,t.diagnostic],t.args||e.emptyArray)));default:e.Debug.assertNever(t)}})),function(){L.strictPropertyInitialization&&!e.getStrictOptionValue(L,"strictNullChecks")&&Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks");L.isolatedModules&&(L.out&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"out","isolatedModules"),L.outFile&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"outFile","isolatedModules"));L.inlineSourceMap&&(L.sourceMap&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap"),L.mapRoot&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap"));L.composite&&(!1===L.declaration&&Xt(e.Diagnostics.Composite_projects_may_not_disable_declaration_emit,"declaration"),!1===L.incremental&&Xt(e.Diagnostics.Composite_projects_may_not_disable_incremental_compilation,"declaration"));var t=e.outFile(L);L.tsBuildInfoFile?e.isIncrementalCompilation(L)||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"tsBuildInfoFile","incremental","composite"):!L.incremental||t||L.configFilePath||ae.add(e.createCompilerDiagnostic(e.Diagnostics.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified));if(function(){var t=L.suppressOutputPathCheck?void 0:e.getTsBuildInfoEmitOutputFilePath(L);y(B,me,(function(r,n,i){var a=(n?n.commandLine.projectReferences:B)[i],o=n&&n.sourceFile;if(r){var s=r.commandLine.options;if(!s.composite||s.noEmit)(n?n.commandLine.fileNames:M).length&&(s.composite||Zt(o,i,e.Diagnostics.Referenced_project_0_must_have_setting_composite_Colon_true,a.path),s.noEmit&&Zt(o,i,e.Diagnostics.Referenced_project_0_may_not_disable_emit,a.path));if(a.prepend){var c=e.outFile(s);c?ee.fileExists(c)||Zt(o,i,e.Diagnostics.Output_file_0_from_project_1_does_not_exist,c,a.path):Zt(o,i,e.Diagnostics.Cannot_prepend_project_0_because_it_does_not_have_outFile_set,a.path)}!n&&t&&t===e.getTsBuildInfoEmitOutputFilePath(s)&&(Zt(o,i,e.Diagnostics.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,t,a.path),le.set(Ke(t),!0))}else Zt(o,i,e.Diagnostics.File_0_not_found,a.path)}))}(),L.composite)for(var r=new e.Set(M.map(Ke)),n=0,i=_;n<i.length;n++){var a=i[n];e.sourceFileMayBeEmitted(a,ze)&&!r.has(a.path)&&Ht(a,e.Diagnostics.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,[a.fileName,L.configFilePath||""])}if(L.paths)for(var o in L.paths)if(e.hasProperty(L.paths,o))if(e.hasZeroOrOneAsteriskCharacter(o)||Wt(!0,o,e.Diagnostics.Pattern_0_can_have_at_most_one_Asterisk_character,o),e.isArray(L.paths[o])){var s=L.paths[o].length;0===s&&Wt(!1,o,e.Diagnostics.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,o);for(var c=0;c<s;c++){var l=L.paths[o][c],u=typeof l;"string"===u?(e.hasZeroOrOneAsteriskCharacter(l)||Kt(o,c,e.Diagnostics.Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character,l,o),L.baseUrl||e.pathIsRelative(l)||e.pathIsAbsolute(l)||Kt(o,c,e.Diagnostics.Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash)):Kt(o,c,e.Diagnostics.Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2,l,o,u)}}else Wt(!1,o,e.Diagnostics.Substitutions_for_pattern_0_should_be_an_array,o);L.sourceMap||L.inlineSourceMap||(L.inlineSources&&Xt(e.Diagnostics.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"inlineSources"),L.sourceRoot&&Xt(e.Diagnostics.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"sourceRoot"));L.out&&L.outFile&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"out","outFile");!L.mapRoot||L.sourceMap||L.declarationMap||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"mapRoot","sourceMap","declarationMap");L.declarationDir&&(e.getEmitDeclarations(L)||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationDir","declaration","composite"),t&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"declarationDir",L.out?"out":"outFile"));L.declarationMap&&!e.getEmitDeclarations(L)&&Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationMap","declaration","composite");L.lib&&L.noLib&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"lib","noLib");L.noImplicitUseStrict&&e.getStrictOptionValue(L,"alwaysStrict")&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"noImplicitUseStrict","alwaysStrict");var d=L.target||0,p=e.find(_,(function(t){return e.isExternalModule(t)&&!t.isDeclarationFile}));if(L.isolatedModules){L.module===e.ModuleKind.None&&d<2&&Xt(e.Diagnostics.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),!1===L.preserveConstEnums&&Xt(e.Diagnostics.Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled,"preserveConstEnums","isolatedModules");var f=e.find(_,(function(t){return!e.isExternalModule(t)&&!e.isSourceFileJS(t)&&!t.isDeclarationFile&&6!==t.scriptKind}));if(f){var m=e.getErrorSpanForNode(f,f);ae.add(e.createFileDiagnostic(f,m.start,m.length,e.Diagnostics._0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_import_export_or_an_empty_export_statement_to_make_it_a_module,e.getBaseFileName(f.fileName)))}}else if(p&&d<2&&L.module===e.ModuleKind.None){m=e.getErrorSpanForNode(p,p.externalModuleIndicator);ae.add(e.createFileDiagnostic(p,m.start,m.length,e.Diagnostics.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(t&&!L.emitDeclarationOnly)if(L.module&&L.module!==e.ModuleKind.AMD&&L.module!==e.ModuleKind.System)Xt(e.Diagnostics.Only_amd_and_system_modules_are_supported_alongside_0,L.out?"out":"outFile","module");else if(void 0===L.module&&p){m=e.getErrorSpanForNode(p,p.externalModuleIndicator);ae.add(e.createFileDiagnostic(p,m.start,m.length,e.Diagnostics.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,L.out?"out":"outFile"))}L.resolveJsonModule&&(e.getEmitModuleResolutionKind(L)!==e.ModuleResolutionKind.NodeJs?Xt(e.Diagnostics.Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy,"resolveJsonModule"):e.hasJsonModuleEmitEnabled(L)||Xt(e.Diagnostics.Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext,"resolveJsonModule","module"));if(L.outDir||L.sourceRoot||L.mapRoot){var g=We();L.outDir&&""===g&&_.some((function(t){return e.getRootLength(t.fileName)>1}))&&Xt(e.Diagnostics.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}L.useDefineForClassFields&&0===d&&Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_target_is_ES3,"useDefineForClassFields");L.checkJs&&!e.getAllowJSCompilerOption(L)&&ae.add(e.createCompilerDiagnostic(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"));L.emitDeclarationOnly&&(e.getEmitDeclarations(L)||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite"),L.noEmit&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"emitDeclarationOnly","noEmit"));L.emitDecoratorMetadata&&!L.experimentalDecorators&&Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators");L.jsxFactory?(L.reactNamespace&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),4!==L.jsx&&5!==L.jsx||Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",e.inverseJsxOptionMap.get(""+L.jsx)),e.parseIsolatedEntityName(L.jsxFactory,d)||Qt("jsxFactory",e.Diagnostics.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,L.jsxFactory)):L.reactNamespace&&!e.isIdentifierText(L.reactNamespace,d)&&Qt("reactNamespace",e.Diagnostics.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,L.reactNamespace);L.jsxFragmentFactory&&(L.jsxFactory||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),4!==L.jsx&&5!==L.jsx||Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",e.inverseJsxOptionMap.get(""+L.jsx)),e.parseIsolatedEntityName(L.jsxFragmentFactory,d)||Qt("jsxFragmentFactory",e.Diagnostics.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,L.jsxFragmentFactory));L.reactNamespace&&(4!==L.jsx&&5!==L.jsx||Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",e.inverseJsxOptionMap.get(""+L.jsx)));L.jsxImportSource&&2===L.jsx&&Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",e.inverseJsxOptionMap.get(""+L.jsx));if(!L.noEmit&&!L.suppressOutputPathCheck){var h=$e(),v=new e.Set;e.forEachEmittedFile(h,(function(e){L.emitDeclarationOnly||b(e.jsFilePath,v),b(e.declarationFilePath,v)}))}function b(t,r){if(t){var n=Ke(t);if(ke.has(n)){var i=void 0;L.configFilePath||(i=e.chainDiagnosticMessages(void 0,e.Diagnostics.Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig)),i=e.chainDiagnosticMessages(i,e.Diagnostics.Cannot_write_file_0_because_it_would_overwrite_input_file,t),nr(t,e.createCompilerDiagnosticFromMessageChain(i))}var a=ee.useCaseSensitiveFileNames()?n:e.toFileNameLowerCase(n);r.has(a)?nr(t,e.createCompilerDiagnostic(e.Diagnostics.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,t)):r.add(a)}}}(),e.performance.mark("afterProgram"),e.performance.measure("Program","beforeProgram","afterProgram"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),ze;function Ue(t,r,n){if(!t.length)return e.emptyArray;var i=e.getNormalizedAbsolutePath(r.originalFileName,oe),a=Je(r);null===e.tracing||void 0===e.tracing||e.tracing.push("program","resolveModuleNamesWorker",{containingFileName:i}),e.performance.mark("beforeResolveModule");var o=Q(t,i,n,a);return e.performance.mark("afterResolveModule"),e.performance.measure("ResolveModule","beforeResolveModule","afterResolveModule"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),o}function qe(t,r){if(!t.length)return[];var n=e.isString(r)?r:e.getNormalizedAbsolutePath(r.originalFileName,oe),i=e.isString(r)?void 0:Je(r);null===e.tracing||void 0===e.tracing||e.tracing.push("program","resolveTypeReferenceDirectiveNamesWorker",{containingFileName:n}),e.performance.mark("beforeResolveTypeReference");var a=Z(t,n,i);return e.performance.mark("afterResolveTypeReference"),e.performance.measure("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),a}function Je(t){var r=Pt(t.originalFileName);if(r||!e.isDeclarationFileName(t.originalFileName))return r;var n=Ve(t.originalFileName,t.path);if(n)return n;if(ee.realpath&&L.preserveSymlinks&&(e.stringContains(t.originalFileName,e.nodeModulesPathPart)||e.stringContains(t.originalFileName,e.ohModulesPathPart))){var i=ee.realpath(t.originalFileName),a=Ke(i);return a===t.path?void 0:Ve(i,a)}}function Ve(t,r){var n=Ft(t);return e.isString(n)?Pt(n):n?It((function(t){var n=e.outFile(t.commandLine.options);if(n)return Ke(n)===r?t:void 0})):void 0}function He(t){if(e.containsPath(ie,t.fileName,!1)){var r=e.getBaseFileName(t.fileName);if("lib.d.ts"===r||"lib.es6.d.ts"===r)return 0;var n=e.removeSuffix(e.removePrefix(r,"lib."),".d.ts"),i=e.libs.indexOf(n);if(-1!==i)return i+1}return e.libs.length+2}function Ke(t){return e.toPath(t,oe,zt)}function We(){if(void 0===N){var t=e.filter(_,(function(t){return e.sourceFileMayBeEmitted(t,ze)}));N=e.getCommonSourceDirectory(L,(function(){return e.mapDefined(t,(function(e){return e.isDeclarationFile?void 0:e.fileName}))}),oe,zt,(function(r){return function(t,r){for(var n=!0,i=ee.getCanonicalFileName(e.getNormalizedAbsolutePath(r,oe)),a=0,o=t;a<o.length;a++){var s=o[a];if(!s.isDeclarationFile)0!==ee.getCanonicalFileName(e.getNormalizedAbsolutePath(s.fileName,oe)).indexOf(i)&&(Ht(s,e.Diagnostics.File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files,[s.fileName,r]),n=!1)}return n}(t,r)}))}return N}function Ge(t,r){if(0===Ce&&!r.ambientModuleNames.length)return Ue(t,r,void 0);var n,i,a,o=z&&z.getSourceFile(r.fileName);if(o!==r&&r.resolvedModules){for(var s=[],c=0,l=t;c<l.length;c++){var u=l[c],d=r.resolvedModules.get(u);s.push(d)}return s}for(var p={},f=0;f<t.length;f++){u=t[f];if(r===o&&!ue(o.path)){var m=e.getResolvedModule(o,u);if(m){e.isTraceEnabled(L,ee)&&e.trace(ee,e.Diagnostics.Reusing_resolution_of_module_0_to_file_1_from_old_program,u,e.getNormalizedAbsolutePath(r.originalFileName,oe)),(i||(i=new Array(t.length)))[f]=m,(a||(a=[])).push(u);continue}}var g=!1;e.contains(r.ambientModuleNames,u)?(g=!0,e.isTraceEnabled(L,ee)&&e.trace(ee,e.Diagnostics.Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1,u,e.getNormalizedAbsolutePath(r.originalFileName,oe))):g=y(u),g?(i||(i=new Array(t.length)))[f]=p:(n||(n=[])).push(u)}var _=n&&n.length?Ue(n,r,a):e.emptyArray;if(!i)return e.Debug.assert(_.length===t.length),_;var h=0;for(f=0;f<i.length;f++)i[f]?i[f]===p&&(i[f]=void 0):(i[f]=_[h],h++);return e.Debug.assert(h===_.length),i;function y(t){var r=e.getResolvedModule(o,t),n=r&&z.getSourceFile(r.resolvedFileName);if(r&&n)return!1;var i=U.get(t);return!!i&&(e.isTraceEnabled(L,ee)&&e.trace(ee,e.Diagnostics.Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified,t,i),!0)}}function $e(t){return{getPrependNodes:Xe,getCanonicalFileName:zt,getCommonSourceDirectory:ze.getCommonSourceDirectory,getCompilerOptions:ze.getCompilerOptions,getCurrentDirectory:function(){return oe},getNewLine:function(){return ee.getNewLine()},getSourceFile:ze.getSourceFile,getSourceFileByPath:ze.getSourceFileByPath,getSourceFiles:ze.getSourceFiles,getLibFileFromReference:ze.getLibFileFromReference,isSourceFileFromExternalLibrary:Qe,getResolvedProjectReferenceToRedirect:Pt,getProjectReferenceRedirect:Ct,isSourceOfProjectReferenceRedirect:Ot,getSymlinkCache:ar,writeFile:t||function(e,t,r,n,i){return ee.writeFile(e,t,r,n,i)},isEmitBlocked:tt,readFile:function(e){return ee.readFile(e)},fileExists:function(t){var r=Ke(t);return!!nt(r)||!e.contains(fe,r)&&ee.fileExists(t)},useCaseSensitiveFileNames:function(){return ee.useCaseSensitiveFileNames()},getProgramBuildInfo:function(){return ze.getProgramBuildInfo&&ze.getProgramBuildInfo()},getSourceFileFromReference:function(e,t){return ze.getSourceFileFromReference(e,t)},redirectTargetsMap:be,getFileIncludeReasons:ze.getFileIncludeReasons}}function Ye(){return me}function Xe(){return D(B,(function(e,t){var r;return null===(r=me[t])||void 0===r?void 0:r.commandLine}),(function(e){var t=Ke(e),r=nt(t);return r?r.text:ke.has(t)?void 0:ee.readFile(t)}))}function Qe(e){return!!$.get(e.path)}function Ze(){return P||(P=e.createTypeChecker(ze,!0))}function et(){return I||(I=e.createTypeChecker(ze,!1))}function tt(e){return le.has(Ke(e))}function rt(e){return nt(Ke(e))}function nt(e){return ke.get(e)||void 0}function it(t,r,n){return t?r(t,n):e.sortAndDeduplicateDiagnostics(e.flatMap(ze.getSourceFiles(),(function(e){return n&&n.throwIfCancellationRequested(),r(e,n)})))}function at(t){var r;if(e.skipTypeChecking(t,L,ze)||t.isDeclarationFile&&L.needDoArkTsLinter)return e.emptyArray;var n=ae.getDiagnostics(t.fileName);return(null===(r=t.commentDirectives)||void 0===r?void 0:r.length)?dt(t,t.commentDirectives,n).diagnostics:n}function ot(t){return e.isSourceFileJS(t)?(t.additionalSyntacticDiagnostics||(t.additionalSyntacticDiagnostics=function(t){return st((function(){var r=[];return n(t,t),e.forEachChildRecursively(t,n,i),r;function n(t,n){switch(n.kind){case 161:case 164:case 166:if(n.questionToken===t)return r.push(s(t,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 165:case 167:case 168:case 169:case 209:case 253:case 210:case 251:if(n.type===t)return r.push(s(t,e.Diagnostics.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(t.kind){case 265:if(t.isTypeOnly)return r.push(s(n,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 270:if(t.isTypeOnly)return r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 263:return r.push(s(t,e.Diagnostics.import_can_only_be_used_in_TypeScript_files)),"skip";case 269:if(t.isExportEquals)return r.push(s(t,e.Diagnostics.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 289:if(117===t.token)return r.push(s(t,e.Diagnostics.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 256:var i=e.tokenToString(118);return e.Debug.assertIsDefined(i),r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,i)),"skip";case 259:var a=16&t.flags?e.tokenToString(141):e.tokenToString(140);return e.Debug.assertIsDefined(a),r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,a)),"skip";case 257:return r.push(s(t,e.Diagnostics.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 258:var o=e.Debug.checkDefined(e.tokenToString(92));return r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,o)),"skip";case 227:return r.push(s(t,e.Diagnostics.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 226:return r.push(s(t.type,e.Diagnostics.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 207:e.Debug.fail()}}function i(t,n){switch(n.decorators!==t||L.experimentalDecorators||r.push(s(n,e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning)),n.kind){case 254:case 223:case 255:case 166:case 167:case 168:case 169:case 209:case 253:case 210:if(t===n.typeParameters)return r.push(o(t,e.Diagnostics.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 234:if(t===n.modifiers)return a(n.modifiers,234===n.kind),"skip";break;case 164:if(t===n.modifiers){for(var i=0,c=t;i<c.length;i++){var l=c[i];124!==l.kind&&r.push(s(l,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,e.tokenToString(l.kind)))}return"skip"}break;case 161:if(t===n.modifiers)return r.push(o(t,e.Diagnostics.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 204:case 205:case 225:case 277:case 278:case 206:if(t===n.typeArguments)return r.push(o(t,e.Diagnostics.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip"}}function a(t,n){for(var i=0,a=t;i<a.length;i++){var o=a[i];switch(o.kind){case 85:if(n)continue;case 123:case 121:case 122:case 143:case 134:case 126:r.push(s(o,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,e.tokenToString(o.kind)))}}}function o(r,n,i,a,o){var s=r.pos;return e.createFileDiagnostic(t,s,r.end-s,n,i,a,o)}function s(r,n,i,a,o){return e.createDiagnosticForNodeInSourceFile(t,r,n,i,a,o)}}))}(t)),e.concatenate(t.additionalSyntacticDiagnostics,t.parseDiagnostics)):t.parseDiagnostics}function st(t){try{return t()}catch(t){throw t instanceof e.OperationCanceledException&&(I=void 0,P=void 0),t}}function ct(t,r){return e.concatenate(E(lt(t,r),L),at(t))}function lt(e,t){return mt(e,t,J,ut)}function ut(t,r){return st((function(){var n=!!L.needDoArkTsLinter;if(n&&(L.skipLibCheck=!1),e.skipTypeChecking(t,L,ze))return e.emptyArray;var i=Ze();e.Debug.assert(!!t.bindDiagnostics);var a=e.isCheckJsEnabledForFile(t,L),o=!(!!t.checkJsDirective&&!1===t.checkJsDirective.enabled)&&(3===t.scriptKind||4===t.scriptKind||5===t.scriptKind||a||7===t.scriptKind||8===t.scriptKind),s=o?t.bindDiagnostics:e.emptyArray,c=o?i.getDiagnostics(t,r):e.emptyArray;return function(t,r){for(var n,i=[],a=2;a<arguments.length;a++)i[a-2]=arguments[a];var o=e.flatten(i);if(!r||!(null===(n=t.commentDirectives)||void 0===n?void 0:n.length))return o;for(var s=dt(t,t.commentDirectives,o),c=s.diagnostics,l=s.directives,u=0,d=l.getUnusedExpectations();u<d.length;u++){var p=d[u];c.push(e.createDiagnosticForRange(t,p.range,e.Diagnostics.Unused_ts_expect_error_directive))}return c}(t,o,s,n?function(t){if(t){var r=t.filter((function(t){var r,n,i=t.messageText!==(L.isCompatibleVersion?e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden.message:e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden.message),a=void 0!==t.file&&-1!==e.normalizePath(t.file.fileName).indexOf("/oh_modules/");return!(3===(null===(r=t.file)||void 0===r?void 0:r.scriptKind)&&(null===(n=t.file)||void 0===n?void 0:n.isDeclarationFile)&&i||a)}));return r}return e.emptyArray}(c):c,a?t.jsDocDiagnostics:void 0)}))}function dt(t,r,n){var i=e.createCommentDirectivesMap(t,r),a=n.filter((function(t){return-1===function(t,r){var n=t.file,i=t.start;if(!n)return-1;var a=e.getLineStarts(n),o=e.computeLineAndCharacterOfPosition(a,i).line-1;for(;o>=0;){if(r.markUsed(o))return o;var s=n.text.slice(a[o],a[o+1]).trim();if(""!==s&&!/^(\s*)\/\/(.*)$/.test(s))return-1;o--}return-1}(t,i)}));return{diagnostics:a,directives:i}}function pt(e,t){return mt(e,t,V,ft)}function ft(t,r){return st((function(){var n=Ze().getEmitResolver(t,r);return e.getDeclarationDiagnostics($e(e.noop),n,t)||e.emptyArray}))}function mt(t,r,n,i){var a,o=t?null===(a=n.perFile)||void 0===a?void 0:a.get(t.path):n.allDiagnostics;if(o)return o;var s=i(t,r);return t?(n.perFile||(n.perFile=new e.Map)).set(t.path,s):n.allDiagnostics=s,s}function gt(e,t){return e.isDeclarationFile?[]:pt(e,t)}function _t(t,r,n,i){xt(e.normalizePath(t),r,n,void 0,i)}function ht(e,t){return e.fileName===t.fileName}function yt(e,t){return 78===e.kind?78===t.kind&&e.escapedText===t.escapedText:10===t.kind&&e.text===t.text}function vt(t,r){var n=e.factory.createStringLiteral(t),i=e.factory.createImportDeclaration(void 0,void 0,void 0,n);return e.addEmitFlags(i,67108864),e.setParent(n,i),e.setParent(i,r),n.flags&=-9,i.flags&=-9,n}function bt(t){if(!t.imports){var r,n,i,a=e.isSourceFileJS(t),o=e.isExternalModule(t);if((L.isolatedModules||o)&&!t.isDeclarationFile){L.importHelpers&&(r=[vt(e.externalHelpersModuleNameText,t)]);var s=e.getJSXRuntimeImport(e.getJSXImplicitImportBase(L,t),L);s&&(r||(r=[])).push(vt(s,t))}for(var c=0,l=t.statements;c<l.length;c++){u(l[c],!1)}return(1048576&t.flags||a)&&function(t){var n=/import|require/g;for(;null!==n.exec(t.text);){var i=d(t,n.lastIndex);a&&e.isRequireCall(i,!0)||e.isImportCall(i)&&1===i.arguments.length&&e.isStringLiteralLike(i.arguments[0])?r=e.append(r,i.arguments[0]):e.isLiteralImportTypeNode(i)&&(r=e.append(r,i.argument.literal))}}(t),t.imports=r||e.emptyArray,t.moduleAugmentations=n||e.emptyArray,void(t.ambientModuleNames=i||e.emptyArray)}function u(a,s){if(e.isAnyImportOrReExport(a)){var c=e.getExternalModuleName(a);!(c&&e.isStringLiteral(c)&&c.text)||s&&e.isExternalModuleNameRelative(c.text)||(r=e.append(r,c))}else if(e.isModuleDeclaration(a)&&e.isAmbientModule(a)&&(s||e.hasSyntacticModifier(a,2)||t.isDeclarationFile)){var l=e.getTextOfIdentifierOrLiteral(a.name);if(o||s&&!e.isExternalModuleNameRelative(l))(n||(n=[])).push(a.name);else if(!s){t.isDeclarationFile&&(i||(i=[])).push(l);var d=a.body;if(d)for(var p=0,f=d.statements;p<f.length;p++){u(f[p],!0)}}}}function d(t,r){for(var n=t,i=function(e){if(e.pos<=r&&(r<e.end||r===e.end&&1===e.kind))return e};;){var o=a&&e.hasJSDocNodes(n)&&e.forEach(n.jsDoc,i)||e.forEachChild(n,i);if(!o)return n;n=o}}}function kt(t,r,n,i){if(e.hasExtension(t)){var a=ee.getCanonicalFileName(t);if(!L.allowNonTsExtensions&&!e.forEach(ce,(function(t){return e.fileExtensionIs(a,t)}))&&!e.fileExtensionIs(a,".ets"))return void(n&&(e.hasJSFileExtension(a)?n(e.Diagnostics.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,t):n(e.Diagnostics.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,t,"'"+se.join("', '")+"'")));var o=r(t);if(n)if(o)v(i)&&a===ee.getCanonicalFileName(nt(i.file).fileName)&&n(e.Diagnostics.A_file_cannot_have_a_reference_to_itself);else{var s=Ct(t);s?n(e.Diagnostics.Output_file_0_has_not_been_built_from_source_file_1,s,t):n(e.Diagnostics.File_0_not_found,t)}return o}var c=L.allowNonTsExtensions&&r(t);if(c)return c;if(!n||!L.allowNonTsExtensions){var l=e.forEach(se,(function(e){return r(t+e)}));return n&&!l&&n(e.Diagnostics.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,t,"'"+se.join("', '")+"'"),l}n(e.Diagnostics.File_0_not_found,t)}function xt(e,t,r,n,i){kt(e,(function(e){return Dt(e,Ke(e),t,r,i,n)}),(function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return Vt(void 0,i,e,t)}),i)}function Et(e,t){return xt(e,!1,!1,void 0,t)}function St(t,r,n){!v(n)&&e.some(q.get(r.path),v)?Vt(r,n,e.Diagnostics.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[r.fileName,t]):Vt(r,n,e.Diagnostics.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[t,r.fileName])}function Dt(t,r,n,i,a,o){null===e.tracing||void 0===e.tracing||e.tracing.push("program","findSourceFile",{fileName:t,isDefaultLib:n||void 0,fileIncludeKind:e.FileIncludeKind[a.kind]});var s=function(t,r,n,i,a,o){if(Ee){var s=Ft(t),c=e.isOhpm(L.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart;if(!s&&ee.realpath&&L.preserveSymlinks&&e.isDeclarationFileName(t)&&e.stringContains(t,c)){var l=ee.realpath(t);l!==t&&(s=Ft(l))}if(s){var u=e.isString(s)?Dt(s,Ke(s),n,i,a,o):void 0;return u&&Tt(u,r,void 0),u}}var d,p=t;if(ke.has(r)){var f=ke.get(r);if(wt(f||void 0,a),f&&L.forceConsistentCasingInFileNames){var _=f.fileName;Ke(_)!==Ke(t)&&(t=Ct(t)||t),e.getNormalizedAbsolutePathWithoutRoot(_,oe)!==e.getNormalizedAbsolutePathWithoutRoot(t,oe)&&St(t,f,a)}return f&&$.get(f.path)&&0===W?($.set(f.path,!1),L.noResolve||(Mt(f,n),Lt(f)),L.noLib||Bt(f),G.set(f.path,!1),Ut(f)):f&&G.get(f.path)&&W<K&&(G.set(f.path,!1),Ut(f)),f||void 0}if(v(a)&&!Ee){var h=At(t);if(h){if(e.outFile(h.commandLine.options))return;var y=Nt(h,t);t=y,d=Ke(y)}}var b=ee.getSourceFile(t,L.target,(function(r){return Vt(void 0,a,e.Diagnostics.Cannot_read_file_0_Colon_1,[t,r])}),Ae);if(o){var k=e.packageIdToString(o),x=ye.get(k);if(x){var E=function(e,t,r,n,i,a){var o=Object.create(e);return o.fileName=r,o.path=n,o.resolvedPath=i,o.originalFileName=a,o.redirectInfo={redirectTarget:e,unredirected:t},$.set(n,W>0),Object.defineProperties(o,{id:{get:function(){return this.redirectInfo.redirectTarget.id},set:function(e){this.redirectInfo.redirectTarget.id=e}},symbol:{get:function(){return this.redirectInfo.redirectTarget.symbol},set:function(e){this.redirectInfo.redirectTarget.symbol=e}}}),o}(x,b,t,r,Ke(t),p);return be.add(x.path,t),Tt(E,r,d),wt(E,a),ve.set(r,o.name),g.push(E),E}b&&(ye.set(k,b),ve.set(r,o.name))}if(Tt(b,r,d),b){if($.set(r,W>0),b.fileName=t,b.path=r,b.resolvedPath=Ke(t),b.originalFileName=p,wt(b,a),ee.useCaseSensitiveFileNames()){var S=e.toFileNameLowerCase(r),D=xe.get(S);D?St(t,D,a):xe.set(S,b)}re=re||b.hasNoDefaultLib&&!i,L.noResolve||(Mt(b,n),Lt(b)),L.noLib||Bt(b),Ut(b),n?m.push(b):g.push(b)}return b}(t,r,n,i,a,o);return null===e.tracing||void 0===e.tracing||e.tracing.pop(),s}function wt(e,t){e&&q.add(e.path,t)}function Tt(e,t,r){r?(ke.set(r,e),ke.set(t,e||!1)):ke.set(t,e)}function Ct(e){var t=At(e);return t&&Nt(t,e)}function At(t){if(me&&me.length&&!e.isDeclarationFileName(t)&&!e.fileExtensionIs(t,".json"))return Pt(t)}function Nt(t,r){var n=e.outFile(t.commandLine.options);return n?e.changeExtension(n,".d.ts"):e.getOutputDeclarationFileName(r,t.commandLine,!ee.useCaseSensitiveFileNames())}function Pt(t){void 0===_e&&(_e=new e.Map,It((function(e){Ke(L.configFilePath)!==e.sourceFile.path&&e.commandLine.fileNames.forEach((function(t){return _e.set(Ke(t),e.sourceFile.path)}))})));var r=_e.get(Ke(t));return r&&Rt(r)}function It(t){return e.forEachResolvedProjectReference(me,t)}function Ft(t){if(e.isDeclarationFileName(t))return void 0===he&&(he=new e.Map,It((function(t){var r=e.outFile(t.commandLine.options);if(r){var n=e.changeExtension(r,".d.ts");he.set(Ke(n),!0)}else{var i=e.memoize((function(){return e.getCommonSourceDirectoryOfConfig(t.commandLine,!ee.useCaseSensitiveFileNames())}));e.forEach(t.commandLine.fileNames,(function(r){if(!e.isDeclarationFileName(r)&&!e.fileExtensionIs(r,".json")){var n=e.getOutputDeclarationFileName(r,t.commandLine,!ee.useCaseSensitiveFileNames(),i);he.set(Ke(n),r)}}))}}))),he.get(Ke(t))}function Ot(e){return Ee&&!!Pt(e)}function Rt(e){if(ge)return ge.get(e)||void 0}function Mt(r,n){e.forEach(r.referencedFiles,(function(i,a){xt(t(i.fileName,r.fileName),n,!1,void 0,{kind:e.FileIncludeKind.ReferenceFile,file:r.path,index:a})}))}function Lt(t){var r=e.map(t.typeReferenceDirectives,(function(t){return e.toFileNameLowerCase(t.fileName)}));if(r)for(var n=qe(r,t),i=0;i<r.length;i++){var a=t.typeReferenceDirectives[i],o=n[i],s=e.toFileNameLowerCase(a.fileName);e.setResolvedTypeReferenceDirective(t,s,o),jt(s,o,{kind:e.FileIncludeKind.TypeReferenceDirective,file:t.path,index:i})}}function jt(t,r,n){null===e.tracing||void 0===e.tracing||e.tracing.push("program","processTypeReferenceDirective",{directive:t,hasResolved:!!Ge,refKind:n.kind,refPath:v(n)?n.file:void 0}),function(t,r,n){var i=H.get(t);if(i&&i.primary)return;var a=!0;if(r){if(r.isExternalLibraryImport&&W++,r.primary)xt(r.resolvedFileName,!1,!1,r.packageId,n);else if(i){if(r.resolvedFileName!==i.resolvedFileName){var o=ee.readFile(r.resolvedFileName),s=rt(i.resolvedFileName);o!==s.text&&Vt(s,n,e.Diagnostics.Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict,[t,r.resolvedFileName,i.resolvedFileName])}a=!1}else xt(r.resolvedFileName,!1,!1,r.packageId,n);r.isExternalLibraryImport&&W--}else Vt(void 0,n,e.Diagnostics.Cannot_find_type_definition_file_for_0,[t]);a&&H.set(t,r)}(t,r,n),null===e.tracing||void 0===e.tracing||e.tracing.pop()}function Bt(t){e.forEach(t.libReferenceDirectives,(function(r,n){var i=e.toFileNameLowerCase(r.fileName),a=e.libMap.get(i);if(a)_t(e.combinePaths(ie,a),!0,!0,{kind:e.FileIncludeKind.LibReferenceDirective,file:t.path,index:n});else{var o=e.removeSuffix(e.removePrefix(i,"lib."),".d.ts"),s=e.getSpellingSuggestion(o,e.libs,e.identity),c=s?e.Diagnostics.Cannot_find_lib_definition_for_0_Did_you_mean_1:e.Diagnostics.Cannot_find_lib_definition_for_0;(O||(O=[])).push({kind:0,reason:{kind:e.FileIncludeKind.LibReferenceDirective,file:t.path,index:n},diagnostic:c,args:[i,s]})}}))}function zt(e){return ee.getCanonicalFileName(e)}function Ut(t){if(bt(t),t.imports.length||t.moduleAugmentations.length){var r=C(t),n=Ge(r,t);e.Debug.assert(n.length===r.length);for(var i=0;i<r.length;i++){var a=n[i];if(e.setResolvedModule(t,r[i],a),a){var o=a.isExternalLibraryImport,s=!e.resolutionExtensionIsTSOrJson(a.extension),c=o&&s,l=a.resolvedFileName;o&&W++;var u=c&&W>K,d=l&&!T(L,a)&&!L.noResolve&&i<t.imports.length&&!u&&!(s&&!e.getAllowJSCompilerOption(L))&&(e.isInJSFile(t.imports[i])||!(4194304&t.imports[i].flags));if(u)G.set(t.path,!0);else if(d){Dt(l,Ke(l),!1,!1,{kind:e.FileIncludeKind.Import,file:t.path,index:i},a.packageId)}o&&W--}}}else t.resolvedModules=void 0}function qt(t){ge||(ge=new e.Map);var r,n,i=w(t),a=Ke(i),o=ge.get(a);if(void 0!==o)return o||void 0;if(ee.getParsedCommandLine){if(!(r=ee.getParsedCommandLine(i)))return Tt(void 0,a,void 0),void ge.set(a,!1);n=e.Debug.checkDefined(r.options.configFile),e.Debug.assert(!n.path||n.path===a),Tt(n,a,void 0)}else{var s=e.getNormalizedAbsolutePath(e.getDirectoryPath(i),ee.getCurrentDirectory());if(Tt(n=ee.getSourceFile(i,100),a,void 0),void 0===n)return void ge.set(a,!1);r=e.parseJsonSourceFileConfigFileContent(n,te,s,void 0,i)}n.fileName=i,n.path=a,n.resolvedPath=a,n.originalFileName=i;var c={commandLine:r,sourceFile:n};return ge.set(a,c),r.projectReferences&&(c.references=r.projectReferences.map(qt)),c}function Jt(t,r,n,a){var o,s,c,l=v(r)?r:void 0;t&&(null===(o=q.get(t.path))||void 0===o||o.forEach(m)),r&&m(r),l&&1===(null==s?void 0:s.length)&&(s=void 0);var u=l&&k(nt,l),d=s&&e.chainDiagnosticMessages(s,e.Diagnostics.The_file_is_in_the_program_because_Colon),p=t&&e.explainIfFileIsRedirect(t),f=e.chainDiagnosticMessages.apply(void 0,i([p?d?i([d],p):p:d,n],a||e.emptyArray));return u&&b(u)?e.createFileDiagnosticFromMessageChain(u.file,u.pos,u.end-u.pos,f,c):e.createCompilerDiagnosticFromMessageChain(f,c);function m(t){(s||(s=[])).push(e.fileIncludeReasonToDiagnostics(ze,t)),!l&&v(t)?l=t:l!==t&&(c=e.append(c,function(t){if(v(t)){var r,n=k(nt,t);switch(t.kind){case e.FileIncludeKind.Import:r=e.Diagnostics.File_is_included_via_import_here;break;case e.FileIncludeKind.ReferenceFile:r=e.Diagnostics.File_is_included_via_reference_here;break;case e.FileIncludeKind.TypeReferenceDirective:r=e.Diagnostics.File_is_included_via_type_library_reference_here;break;case e.FileIncludeKind.LibReferenceDirective:r=e.Diagnostics.File_is_included_via_library_reference_here;break;default:e.Debug.assertNever(t)}return b(n)?e.createFileDiagnostic(n.file,n.pos,n.end-n.pos,r):void 0}if(!L.configFile)return;var i,a;switch(t.kind){case e.FileIncludeKind.RootFile:if(!L.configFile.configFileSpecs)return;var o=e.getNormalizedAbsolutePath(M[t.index],oe),s=e.getMatchedFileSpec(ze,o);if(s){i=e.getTsConfigPropArrayElementValue(L.configFile,"files",s),a=e.Diagnostics.File_is_matched_by_files_list_specified_here;break}var c=e.getMatchedIncludeSpec(ze,o);if(!c)return;i=e.getTsConfigPropArrayElementValue(L.configFile,"include",c),a=e.Diagnostics.File_is_matched_by_include_pattern_specified_here;break;case e.FileIncludeKind.SourceFromProjectReference:case e.FileIncludeKind.OutputFromProjectReference:var l=e.Debug.checkDefined(null==me?void 0:me[t.index]),u=y(B,me,(function(e,t,r){return e===l?{sourceFile:(null==t?void 0:t.sourceFile)||L.configFile,index:r}:void 0}));if(!u)return;var d=u.sourceFile,p=u.index,f=e.firstDefined(e.getTsConfigPropArray(d,"references"),(function(t){return e.isArrayLiteralExpression(t.initializer)?t.initializer:void 0}));return f&&f.elements.length>p?e.createDiagnosticForNodeInSourceFile(d,f.elements[p],t.kind===e.FileIncludeKind.OutputFromProjectReference?e.Diagnostics.File_is_output_from_referenced_project_specified_here:e.Diagnostics.File_is_source_from_referenced_project_specified_here):void 0;case e.FileIncludeKind.AutomaticTypeDirectiveFile:if(!L.types)return;i=Yt("types",t.typeReference),a=e.Diagnostics.File_is_entry_point_of_type_library_specified_here;break;case e.FileIncludeKind.LibFile:if(void 0!==t.index){i=Yt("lib",L.lib[t.index]),a=e.Diagnostics.File_is_library_specified_here;break}var m=e.forEachEntry(e.targetOptionDeclaration.type,(function(e,t){return e===L.target?t:void 0}));i=m?(g=m,(_=Gt("target"))&&e.firstDefined(_,(function(t){return e.isStringLiteral(t.initializer)&&t.initializer.text===g?t.initializer:void 0}))):void 0,a=e.Diagnostics.File_is_default_library_for_target_specified_here;break;default:e.Debug.assertNever(t)}var g,_;return i&&e.createDiagnosticForNodeInSourceFile(L.configFile,i,a)}(t))),t===r&&(r=void 0)}}function Vt(e,t,r,n){(O||(O=[])).push({kind:1,file:e&&e.path,fileProcessingReason:t,diagnostic:r,args:n})}function Ht(e,t,r){ae.add(Jt(e,void 0,t,r))}function Kt(t,r,n,i,a,o){for(var s=!0,c=0,l=$t();c<l.length;c++){var u=l[c];if(e.isObjectLiteralExpression(u.initializer))for(var d=0,p=e.getPropertyAssignment(u.initializer,t);d<p.length;d++){var f=p[d].initializer;e.isArrayLiteralExpression(f)&&f.elements.length>r&&(ae.add(e.createDiagnosticForNodeInSourceFile(L.configFile,f.elements[r],n,i,a,o)),s=!1)}}s&&ae.add(e.createCompilerDiagnostic(n,i,a,o))}function Wt(t,r,n,i){for(var a=!0,o=0,s=$t();o<s.length;o++){var c=s[o];e.isObjectLiteralExpression(c.initializer)&&rr(c.initializer,t,r,void 0,n,i)&&(a=!1)}a&&ae.add(e.createCompilerDiagnostic(n,i))}function Gt(t){var r=tr();return r&&e.getPropertyAssignment(r,t)}function $t(){return Gt("paths")||e.emptyArray}function Yt(t,r){var n=tr();return n&&e.getPropertyArrayElementValue(n,t,r)}function Xt(e,t,r,n){er(!0,t,r,e,t,r,n)}function Qt(e,t,r){er(!1,e,void 0,t,r)}function Zt(t,r,n,i,a){var o=e.firstDefined(e.getTsConfigPropArray(t||L.configFile,"references"),(function(t){return e.isArrayLiteralExpression(t.initializer)?t.initializer:void 0}));o&&o.elements.length>r?ae.add(e.createDiagnosticForNodeInSourceFile(t||L.configFile,o.elements[r],n,i,a)):ae.add(e.createCompilerDiagnostic(n,i,a))}function er(t,r,n,i,a,o,s){var c=tr();(!c||!rr(c,t,r,n,i,a,o,s))&&ae.add(e.createCompilerDiagnostic(i,a,o,s))}function tr(){if(void 0===Y){Y=!1;var t=e.getTsConfigObjectLiteralExpression(L.configFile);if(t)for(var r=0,n=e.getPropertyAssignment(t,"compilerOptions");r<n.length;r++){var i=n[r];if(e.isObjectLiteralExpression(i.initializer)){Y=i.initializer;break}}}return Y||void 0}function rr(t,r,n,i,a,o,s,c){for(var l=e.getPropertyAssignment(t,n,i),u=0,d=l;u<d.length;u++){var p=d[u];ae.add(e.createDiagnosticForNodeInSourceFile(L.configFile,r?p.name:p.initializer,a,o,s,c))}return!!l.length}function nr(e,t){le.set(Ke(e),!0),ae.add(t)}function ir(t,r){return 0===e.comparePaths(t,r,oe,!ee.useCaseSensitiveFileNames())}function ar(){return ee.getSymlinkCache?ee.getSymlinkCache():A||(A=e.discoverProbableSymlinks(_,zt,ee.getCurrentDirectory(),e.isOhpm(L.packageManagerType)))}},e.emitSkippedWithNoDiagnostics={diagnostics:e.emptyArray,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0},e.handleNoEmitOptions=x,e.filterSemanticDiagnotics=E,e.parseConfigHostFromCompilerHostLike=S,e.createPrependNodes=D,e.resolveProjectReferencePath=w,e.getResolutionDiagnostic=T,e.getModuleNameStringLiteralAt=A,e.getTypeExportImportAndConstEnumTransformer=function(t){return e.transformTypeExportImportAndConstEnumInTypeScript(t)},e.hasTsNoCheckOrTsIgnoreFlag=function(e){if(e.checkJsDirective&&!1===e.checkJsDirective.enabled)return!0;if(void 0!==e.commentDirectives)for(var t=0,r=e.commentDirectives;t<r.length;t++){if(1===r[t].type)return!0}return!1}}(d||(d={})),function(e){function t(e,t,r,n,i,a){var o=[],s=e.emit(t,(function(e,t,r){o.push({name:e,writeByteOrderMark:r,text:t})}),n,r,i,a),c=s.emitSkipped,l=s.diagnostics,u=s.exportedModulesFromDeclarationEmit;return{outputFiles:o,emitSkipped:c,diagnostics:l,exportedModulesFromDeclarationEmit:u}}e.getFileEmitOutput=t,function(r){function n(t){if(t.declarations&&t.declarations[0]){var r=e.getSourceFileOfNode(t.declarations[0]);return r&&r.resolvedPath}}function i(e,t){var r=e.getSymbolAtLocation(t);return r&&n(r)}function a(t,r,n,i){return e.toPath(t.getProjectReferenceRedirect(r)||r,n,i)}function o(t,r,n){var o;if(r.imports&&r.imports.length>0)for(var s=t.getTypeChecker(),c=0,l=r.imports;c<l.length;c++){var u=i(s,l[c]);u&&E(u)}var d=e.getDirectoryPath(r.resolvedPath);if(r.referencedFiles&&r.referencedFiles.length>0)for(var p=0,f=r.referencedFiles;p<f.length;p++){var m=f[p];E(a(t,m.fileName,d,n))}if(r.resolvedTypeReferenceDirectiveNames&&r.resolvedTypeReferenceDirectiveNames.forEach((function(e){if(e){var r=e.resolvedFileName;E(a(t,r,d,n))}})),r.moduleAugmentations.length){s=t.getTypeChecker();for(var g=0,_=r.moduleAugmentations;g<_.length;g++){var h=_[g];if(e.isStringLiteral(h)){var y=s.getSymbolAtLocation(h);y&&x(y)}}}for(var v=0,b=t.getTypeChecker().getAmbientModules();v<b.length;v++){var k=b[v];k.declarations.length>1&&x(k)}return o;function x(t){for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n],o=e.getSourceFileOfNode(a);o&&o!==r&&E(o.resolvedPath)}}function E(t){(o||(o=new e.Set)).add(t)}}function s(e,t){return t&&!t.referencedMap==!e}function c(e,t){t.forEach((function(t,r){return l(e,t,r)}))}function l(e,t,r){e.fileInfos.get(r).signature=t,e.hasCalledUpdateShapeSignature.add(r)}function u(r,i,a,o,s,c,l){if(e.Debug.assert(!!a),e.Debug.assert(!l||!!r.exportedModulesMap,"Compute visible to outside map only if visibleToOutsideReferencedMap present in the state"),r.hasCalledUpdateShapeSignature.has(a.resolvedPath)||o.has(a.resolvedPath))return!1;var u=r.fileInfos.get(a.resolvedPath);if(!u)return e.Debug.fail();var d,p=u.signature;if(a.isDeclarationFile){if(d=a.version,l&&d!==p){var f=r.referencedMap?r.referencedMap.get(a.resolvedPath):void 0;l.set(a.resolvedPath,f||!1)}}else{var m=t(i,a,!0,s,void 0,!0),g=m.outputFiles&&i.getCompilerOptions().declarationMap?m.outputFiles.length>1?m.outputFiles[1]:void 0:m.outputFiles.length>0?m.outputFiles[0]:void 0;g?(e.Debug.assert(e.isDeclarationFileName(g.name),"File extension for signature expected to be dts or dets",(function(){return"Found: "+e.getAnyExtensionFromPath(g.name)+" for "+g.name+":: All output files: "+JSON.stringify(m.outputFiles.map((function(e){return e.name})))})),d=(c||e.generateDjb2Hash)(g.text),l&&d!==p&&function(t,r,i){if(!r)return void i.set(t.resolvedPath,!1);var a;function o(t){t&&(a||(a=new e.Set),a.add(t))}r.forEach((function(e){return o(n(e))})),i.set(t.resolvedPath,a||!1)}(a,m.exportedModulesFromDeclarationEmit,l)):d=p}return o.set(a.resolvedPath,d),!p||d!==p}function d(t,r){if(!t.allFileNames){var n=r.getSourceFiles();t.allFileNames=n===e.emptyArray?e.emptyArray:n.map((function(e){return e.fileName}))}return t.allFileNames}function p(t,r){return e.arrayFrom(e.mapDefinedIterator(t.referencedMap.entries(),(function(e){var t=e[0];return e[1].has(r)?t:void 0})))}function f(t){return function(t){return e.some(t.moduleAugmentations,(function(t){return e.isGlobalScopeAugmentation(t.parent)}))}(t)||!e.isExternalModule(t)&&!function(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];if(!e.isModuleWithStringLiteralName(i))return!1}return!0}(t)}function m(t,r,n){if(t.allFilesExcludingDefaultLibraryFile)return t.allFilesExcludingDefaultLibraryFile;var i;n&&c(n);for(var a=0,o=r.getSourceFiles();a<o.length;a++){var s=o[a];s!==n&&c(s)}return t.allFilesExcludingDefaultLibraryFile=i||e.emptyArray,t.allFilesExcludingDefaultLibraryFile;function c(e){r.isSourceFileDefaultLibrary(e)||(i||(i=[])).push(e)}}function g(t,r,n){var i=r.getCompilerOptions();return i&&e.outFile(i)?[n]:m(t,r,n)}function _(t,r,n,i,a,o,s){if(f(n))return m(t,r,n);var c=r.getCompilerOptions();if(c&&(c.isolatedModules||e.outFile(c)))return[n];var l=new e.Map;l.set(n.resolvedPath,n);for(var d=p(t,n.resolvedPath);d.length>0;){var g=d.pop();if(!l.has(g)){var _=r.getSourceFileByPath(g);l.set(g,_),_&&u(t,r,_,i,a,o,s)&&d.push.apply(d,p(t,_.resolvedPath))}}return e.arrayFrom(e.mapDefinedIterator(l.values(),(function(e){return e})))}r.canReuseOldState=s,r.create=function(t,r,n){var i=new e.Map,a=t.getCompilerOptions().module!==e.ModuleKind.None?new e.Map:void 0,c=a?new e.Map:void 0,l=new e.Set,u=s(a,n);t.getTypeChecker();for(var d=0,p=t.getSourceFiles();d<p.length;d++){var m=p[d],g=e.Debug.checkDefined(m.version,"Program intended to be used with Builder should have source files with versions set"),_=u?n.fileInfos.get(m.resolvedPath):void 0;if(a){var h=o(t,m,r);if(h&&a.set(m.resolvedPath,h),u){var y=n.exportedModulesMap.get(m.resolvedPath);y&&c.set(m.resolvedPath,y)}}i.set(m.resolvedPath,{version:g,signature:_&&_.signature,affectsGlobalScope:f(m)})}return{fileInfos:i,referencedMap:a,exportedModulesMap:c,hasCalledUpdateShapeSignature:l}},r.releaseCache=function(e){e.allFilesExcludingDefaultLibraryFile=void 0,e.allFileNames=void 0},r.clone=function(t){return{fileInfos:new e.Map(t.fileInfos),referencedMap:t.referencedMap&&new e.Map(t.referencedMap),exportedModulesMap:t.exportedModulesMap&&new e.Map(t.exportedModulesMap),hasCalledUpdateShapeSignature:new e.Set(t.hasCalledUpdateShapeSignature)}},r.getFilesAffectedBy=function(t,r,n,i,a,o,s){var l=o||new e.Map,d=r.getSourceFileByPath(n);if(!d)return e.emptyArray;if(!u(t,r,d,l,i,a,s))return[d];var p=(t.referencedMap?_:g)(t,r,d,l,i,a,s);return o||c(t,l),p},r.updateSignaturesFromCache=c,r.updateSignatureOfFile=l,r.updateShapeSignature=u,r.updateExportedFilesMapFromCache=function(t,r){r&&(e.Debug.assert(!!t.exportedModulesMap),r.forEach((function(e,r){e?t.exportedModulesMap.set(r,e):t.exportedModulesMap.delete(r)})))},r.getAllDependencies=function(t,r,n){var i=r.getCompilerOptions();if(e.outFile(i))return d(t,r);if(!t.referencedMap||f(n))return d(t,r);for(var a=new e.Set,o=[n.resolvedPath];o.length;){var s=o.pop();if(!a.has(s)){a.add(s);var c=t.referencedMap.get(s);if(c)for(var l=c.keys(),u=l.next();!u.done;u=l.next())o.push(u.value)}}return e.arrayFrom(e.mapDefinedIterator(a.keys(),(function(e){var t,n;return null!==(n=null===(t=r.getSourceFileByPath(e))||void 0===t?void 0:t.fileName)&&void 0!==n?n:e})))},r.getReferencedByPaths=p,r.getAllFilesExcludingDefaultLibraryFile=m}(e.BuilderState||(e.BuilderState={}))}(d||(d={})),function(e){var t;function r(t,r,i){var a=e.BuilderState.create(t,r,i);a.program=t;var o=t.getCompilerOptions();a.compilerOptions=o,e.outFile(o)||(a.semanticDiagnosticsPerFile=new e.Map),a.changedFilesSet=new e.Set;var s=e.BuilderState.canReuseOldState(a.referencedMap,i),c=s?i.compilerOptions:void 0,l=s&&i.semanticDiagnosticsPerFile&&!!a.semanticDiagnosticsPerFile&&!e.compilerOptionsAffectSemanticDiagnostics(o,c);if(s){if(!i.currentChangedFilePath){var u=i.currentAffectedFilesSignatures;e.Debug.assert(!(i.affectedFiles||u&&u.size),"Cannot reuse if only few affected files of currentChangedFile were iterated")}var d=i.changedFilesSet;l&&e.Debug.assert(!d||!e.forEachKey(d,(function(e){return i.semanticDiagnosticsPerFile.has(e)})),"Semantic diagnostics shouldnt be available for changed files"),null==d||d.forEach((function(e){return a.changedFilesSet.add(e)})),!e.outFile(o)&&i.affectedFilesPendingEmit&&(a.affectedFilesPendingEmit=i.affectedFilesPendingEmit.slice(),a.affectedFilesPendingEmitKind=i.affectedFilesPendingEmitKind&&new e.Map(i.affectedFilesPendingEmitKind),a.affectedFilesPendingEmitIndex=i.affectedFilesPendingEmitIndex,a.seenAffectedFiles=new e.Set)}var p=a.referencedMap,f=s?i.referencedMap:void 0,m=l&&!o.skipLibCheck==!c.skipLibCheck,g=m&&!o.skipDefaultLibCheck==!c.skipDefaultLibCheck;return a.fileInfos.forEach((function(o,c){var u,d,_,h;if(!s||!(u=i.fileInfos.get(c))||u.version!==o.version||(_=d=p&&p.get(c),h=f&&f.get(c),_!==h&&(void 0===_||void 0===h||_.size!==h.size||e.forEachKey(_,(function(e){return!h.has(e)}))))||d&&e.forEachKey(d,(function(e){return!a.fileInfos.has(e)&&i.fileInfos.has(e)})))a.changedFilesSet.add(c);else if(l){var y=t.getSourceFileByPath(c);if(y.isDeclarationFile&&!m)return;if(y.hasNoDefaultLib&&!g)return;var v=i.semanticDiagnosticsPerFile.get(c);v&&(a.semanticDiagnosticsPerFile.set(c,i.hasReusableDiagnostic?function(t,r,i){if(!t.length)return e.emptyArray;var a=e.getDirectoryPath(e.getNormalizedAbsolutePath(e.getTsBuildInfoEmitOutputFilePath(r.getCompilerOptions()),r.getCurrentDirectory()));return t.map((function(e){var t=n(e,r,o);t.reportsUnnecessary=e.reportsUnnecessary,t.reportsDeprecated=e.reportDeprecated,t.source=e.source,t.skippedOn=e.skippedOn;var i=e.relatedInformation;return t.relatedInformation=i?i.length?i.map((function(e){return n(e,r,o)})):[]:void 0,t}));function o(t){return e.toPath(t,a,i)}}(v,t,r):v),a.semanticDiagnosticsFromOldState||(a.semanticDiagnosticsFromOldState=new e.Set),a.semanticDiagnosticsFromOldState.add(c))}})),s&&e.forEachEntry(i.fileInfos,(function(e,t){return e.affectsGlobalScope&&!a.fileInfos.has(t)}))?e.BuilderState.getAllFilesExcludingDefaultLibraryFile(a,t,void 0).forEach((function(e){return a.changedFilesSet.add(e.resolvedPath)})):c&&!e.outFile(o)&&e.compilerOptionsAffectEmit(o,c)&&(t.getSourceFiles().forEach((function(e){return b(a,e.resolvedPath,1)})),e.Debug.assert(!a.seenAffectedFiles||!a.seenAffectedFiles.size),a.seenAffectedFiles=a.seenAffectedFiles||new e.Set),a.buildInfoEmitPending=!!a.changedFilesSet.size,a}function n(e,t,r){var n=e.file;return a(a({},e),{file:n?t.getSourceFileByPath(r(n)):void 0})}function i(t,r){e.Debug.assert(!r||!t.affectedFiles||t.affectedFiles[t.affectedFilesIndex-1]!==r||!t.semanticDiagnosticsPerFile.has(r.resolvedPath))}function o(t,r,n){for(;;){var i=t.affectedFiles;if(i){for(var a=t.seenAffectedFiles,o=t.affectedFilesIndex;o<i.length;){var c=i[o];if(!a.has(c.resolvedPath))return t.affectedFilesIndex=o,s(t,c,r,n),c;o++}t.changedFilesSet.delete(t.currentChangedFilePath),t.currentChangedFilePath=void 0,e.BuilderState.updateSignaturesFromCache(t,t.currentAffectedFilesSignatures),t.currentAffectedFilesSignatures.clear(),e.BuilderState.updateExportedFilesMapFromCache(t,t.currentAffectedFilesExportedModulesMap),t.affectedFiles=void 0}var l=t.changedFilesSet.keys().next();if(l.done)return;var u=e.Debug.checkDefined(t.program),d=u.getCompilerOptions();if(e.outFile(d))return e.Debug.assert(!t.semanticDiagnosticsPerFile),u;t.currentAffectedFilesSignatures||(t.currentAffectedFilesSignatures=new e.Map),t.exportedModulesMap&&(t.currentAffectedFilesExportedModulesMap||(t.currentAffectedFilesExportedModulesMap=new e.Map)),t.affectedFiles=e.BuilderState.getFilesAffectedBy(t,u,l.value,r,n,t.currentAffectedFilesSignatures,t.currentAffectedFilesExportedModulesMap),t.currentChangedFilePath=l.value,t.affectedFilesIndex=0,t.seenAffectedFiles||(t.seenAffectedFiles=new e.Set)}}function s(t,r,n,i){if(c(t,r.resolvedPath),t.allFilesExcludingDefaultLibraryFile!==t.affectedFiles)t.compilerOptions.assumeChangesOnlyAffectDirectDependencies||function(t,r,n){if(!t.exportedModulesMap||!t.changedFilesSet.has(r.resolvedPath))return;if(!l(t,r.resolvedPath))return;if(t.compilerOptions.isolatedModules){var i=new e.Map;i.set(r.resolvedPath,!0);for(var a=e.BuilderState.getReferencedByPaths(t,r.resolvedPath);a.length>0;){var o=a.pop();if(!i.has(o))if(i.set(o,!0),n(t,o)&&l(t,o)){var s=e.Debug.checkDefined(t.program).getSourceFileByPath(o);a.push.apply(a,e.BuilderState.getReferencedByPaths(t,s.resolvedPath))}}}e.Debug.assert(!!t.currentAffectedFilesExportedModulesMap);var c=new e.Set;if(e.forEachEntry(t.currentAffectedFilesExportedModulesMap,(function(e,i){return e&&e.has(r.resolvedPath)&&u(t,i,c,n)})))return;e.forEachEntry(t.exportedModulesMap,(function(e,i){return!t.currentAffectedFilesExportedModulesMap.has(i)&&e.has(r.resolvedPath)&&u(t,i,c,n)}))}(t,r,(function(t,r){return function(t,r,n,i){if(c(t,r),!t.changedFilesSet.has(r)){var a=e.Debug.checkDefined(t.program),o=a.getSourceFileByPath(r);o&&(e.BuilderState.updateShapeSignature(t,a,o,e.Debug.checkDefined(t.currentAffectedFilesSignatures),n,i,t.currentAffectedFilesExportedModulesMap),e.getEmitDeclarations(t.compilerOptions)&&b(t,r,0))}return!1}(t,r,n,i)}));else if(!t.cleanedDiagnosticsOfLibFiles){t.cleanedDiagnosticsOfLibFiles=!0;var a=e.Debug.checkDefined(t.program),o=a.getCompilerOptions();e.forEach(a.getSourceFiles(),(function(r){return a.isSourceFileDefaultLibrary(r)&&!(e.skipTypeChecking(r,o,a)||r.isDeclarationFile&&o.needDoArkTsLinter)&&c(t,r.resolvedPath)}))}}function c(e,t){return!e.semanticDiagnosticsFromOldState||(e.semanticDiagnosticsFromOldState.delete(t),e.semanticDiagnosticsPerFile.delete(t),!e.semanticDiagnosticsFromOldState.size)}function l(t,r){return e.Debug.checkDefined(t.currentAffectedFilesSignatures).get(r)!==e.Debug.checkDefined(t.fileInfos.get(r)).signature}function u(t,r,n,i){return e.forEachEntry(t.referencedMap,(function(e,a){return e.has(r)&&d(t,a,n,i)}))}function d(t,r,n,i){return!!e.tryAddToSet(n,r)&&(!!i(t,r)||(e.Debug.assert(!!t.currentAffectedFilesExportedModulesMap),!!e.forEachEntry(t.currentAffectedFilesExportedModulesMap,(function(e,a){return e&&e.has(r)&&d(t,a,n,i)}))||(!!e.forEachEntry(t.exportedModulesMap,(function(e,a){return!t.currentAffectedFilesExportedModulesMap.has(a)&&e.has(r)&&d(t,a,n,i)}))||!!e.forEachEntry(t.referencedMap,(function(e,a){return e.has(r)&&!n.has(a)&&i(t,a)})))))}function p(t,r,n,i,a){a?t.buildInfoEmitPending=!1:r===t.program?(t.changedFilesSet.clear(),t.programEmitComplete=!0):(t.seenAffectedFiles.add(r.resolvedPath),void 0!==n&&(t.seenEmittedFiles||(t.seenEmittedFiles=new e.Map)).set(r.resolvedPath,n),i?(t.affectedFilesPendingEmitIndex++,t.buildInfoEmitPending=!0):t.affectedFilesIndex++)}function f(e,t,r){return p(e,r),{result:t,affected:r}}function m(e,t,r,n,i,a){return p(e,r,n,i,a),{result:t,affected:r}}function g(t,r,n){return e.concatenate(function(t,r,n){var i=r.resolvedPath;if(t.semanticDiagnosticsPerFile){var a=t.semanticDiagnosticsPerFile.get(i);if(a)return e.filterSemanticDiagnotics(a,t.compilerOptions)}var o=e.Debug.checkDefined(t.program).getBindAndCheckDiagnostics(r,n);t.semanticDiagnosticsPerFile&&t.semanticDiagnosticsPerFile.set(i,o);return e.filterSemanticDiagnotics(o,t.compilerOptions)}(t,r,n),e.Debug.checkDefined(t.program).getProgramDiagnostics(r))}function _(t,r){var n={},i=e.getOptionsNameMap().optionsNameMap;for(var a in t)e.hasProperty(t,a)&&(n[a]=h(i.get(a.toLowerCase()),t[a],r));return n.configFilePath&&(n.configFilePath=r(n.configFilePath)),n}function h(e,t,r){if(e)if("list"===e.type){var n=t;if(e.element.isFilePath&&n.length)return n.map(r)}else if(e.isFilePath)return r(t);return t}function y(t,r){return e.Debug.assert(!!t.length),t.map((function(e){var t=v(e,r);t.reportsUnnecessary=e.reportsUnnecessary,t.reportDeprecated=e.reportsDeprecated,t.source=e.source,t.skippedOn=e.skippedOn;var n=e.relatedInformation;return t.relatedInformation=n?n.length?n.map((function(e){return v(e,r)})):[]:void 0,t}))}function v(e,t){var r=e.file;return a(a({},e),{file:r?t(r.resolvedPath):void 0})}function b(t,r,n){t.affectedFilesPendingEmit||(t.affectedFilesPendingEmit=[]),t.affectedFilesPendingEmitKind||(t.affectedFilesPendingEmitKind=new e.Map);var i=t.affectedFilesPendingEmitKind.get(r);t.affectedFilesPendingEmit.push(r),t.affectedFilesPendingEmitKind.set(r,i||n),void 0===t.affectedFilesPendingEmitIndex&&(t.affectedFilesPendingEmitIndex=0)}function k(t,r){if(t){var n=new e.Map;for(var i in t)e.hasProperty(t,i)&&n.set(r(i),new e.Set(t[i].map(r)));return n}}function x(t,r){return{getState:e.notImplemented,backupState:e.noop,restoreState:e.noop,getProgram:n,getProgramOrUndefined:function(){return t.program},releaseProgram:function(){return t.program=void 0},getCompilerOptions:function(){return t.compilerOptions},getSourceFile:function(e){return n().getSourceFile(e)},getSourceFiles:function(){return n().getSourceFiles()},getOptionsDiagnostics:function(e){return n().getOptionsDiagnostics(e)},getGlobalDiagnostics:function(e){return n().getGlobalDiagnostics(e)},getConfigFileParsingDiagnostics:function(){return r},getSyntacticDiagnostics:function(e,t){return n().getSyntacticDiagnostics(e,t)},getDeclarationDiagnostics:function(e,t){return n().getDeclarationDiagnostics(e,t)},getSemanticDiagnostics:function(e,t){return n().getSemanticDiagnostics(e,t)},emit:function(e,t,r,i,a){return n().emit(e,t,r,i,a)},emitBuildInfo:function(e,t){return n().emitBuildInfo(e,t)},getAllDependencies:e.notImplemented,getCurrentDirectory:function(){return n().getCurrentDirectory()},close:e.noop};function n(){return e.Debug.checkDefined(t.program)}}!function(e){e[e.DtsOnly=0]="DtsOnly",e[e.Full=1]="Full"}(e.BuilderFileEmit||(e.BuilderFileEmit={})),function(e){e[e.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",e[e.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram"}(t=e.BuilderProgramKind||(e.BuilderProgramKind={})),e.getBuilderCreationParameters=function(t,r,n,i,a,o){var s,c,l;return void 0===t?(e.Debug.assert(void 0===r),s=n,l=i,e.Debug.assert(!!l),c=l.getProgram()):e.isArray(t)?(l=i,c=e.createProgram({rootNames:t,options:r,host:n,oldProgram:l&&l.getProgramOrUndefined(),configFileParsingDiagnostics:a,projectReferences:o}),s=n):(c=t,s=r,l=n,a=i),{host:s,newProgram:c,oldProgram:l,configFileParsingDiagnostics:a||e.emptyArray}},e.createBuilderProgram=function(n,a){var s=a.newProgram,c=a.host,l=a.oldProgram,u=a.configFileParsingDiagnostics,d=l&&l.getState();if(d&&s===d.program&&u===s.getConfigFileParsingDiagnostics())return s=void 0,d=void 0,l;var h,v=e.createGetCanonicalFileName(c.useCaseSensitiveFileNames()),k=e.maybeBind(c,c.createHash),E=r(s,v,d);s.getProgramBuildInfo=function(){return function(t,r){if(!e.outFile(t.compilerOptions)){var n=e.Debug.checkDefined(t.program).getCurrentDirectory(),i=e.getDirectoryPath(e.getNormalizedAbsolutePath(e.getTsBuildInfoEmitOutputFilePath(t.compilerOptions),n)),a={};t.fileInfos.forEach((function(e,r){var n=t.currentAffectedFilesSignatures&&t.currentAffectedFilesSignatures.get(r);a[w(r)]=void 0===n?e:{version:e.version,signature:n,affectsGlobalScope:e.affectsGlobalScope}}));var o={fileInfos:a,options:_(t.compilerOptions,(function(t){return w(e.getNormalizedAbsolutePath(t,n))}))};if(t.referencedMap){for(var s={},c=0,l=e.arrayFrom(t.referencedMap.keys()).sort(e.compareStringsCaseSensitive);c<l.length;c++)s[w(f=l[c])]=e.arrayFrom(t.referencedMap.get(f).keys(),w).sort(e.compareStringsCaseSensitive);o.referencedMap=s}if(t.exportedModulesMap){for(var u={},d=0,p=e.arrayFrom(t.exportedModulesMap.keys()).sort(e.compareStringsCaseSensitive);d<p.length;d++){var f=p[d],m=t.currentAffectedFilesExportedModulesMap&&t.currentAffectedFilesExportedModulesMap.get(f);void 0===m?u[w(f)]=e.arrayFrom(t.exportedModulesMap.get(f).keys(),w).sort(e.compareStringsCaseSensitive):m&&(u[w(f)]=e.arrayFrom(m.keys(),w).sort(e.compareStringsCaseSensitive))}o.exportedModulesMap=u}if(t.semanticDiagnosticsPerFile){for(var g=[],h=0,v=e.arrayFrom(t.semanticDiagnosticsPerFile.keys()).sort(e.compareStringsCaseSensitive);h<v.length;h++){f=v[h];var b=t.semanticDiagnosticsPerFile.get(f);g.push(b.length?[w(f),t.hasReusableDiagnostic?b:y(b,w)]:w(f))}o.semanticDiagnosticsPerFile=g}if(t.affectedFilesPendingEmit){for(var k=[],x=new e.Set,E=0,S=t.affectedFilesPendingEmit.slice(t.affectedFilesPendingEmitIndex).sort(e.compareStringsCaseSensitive);E<S.length;E++){var D=S[E];e.tryAddToSet(x,D)&&k.push([w(D),t.affectedFilesPendingEmitKind.get(D)])}o.affectedFilesPendingEmit=k}return o}function w(t){return e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(i,t,r))}}(E,v)},s=void 0,l=void 0,d=void 0;var S=x(E,u);return S.getState=function(){return E},S.backupState=function(){e.Debug.assert(void 0===h),h=function(t){var r=e.BuilderState.clone(t);return r.semanticDiagnosticsPerFile=t.semanticDiagnosticsPerFile&&new e.Map(t.semanticDiagnosticsPerFile),r.changedFilesSet=new e.Set(t.changedFilesSet),r.affectedFiles=t.affectedFiles,r.affectedFilesIndex=t.affectedFilesIndex,r.currentChangedFilePath=t.currentChangedFilePath,r.currentAffectedFilesSignatures=t.currentAffectedFilesSignatures&&new e.Map(t.currentAffectedFilesSignatures),r.currentAffectedFilesExportedModulesMap=t.currentAffectedFilesExportedModulesMap&&new e.Map(t.currentAffectedFilesExportedModulesMap),r.seenAffectedFiles=t.seenAffectedFiles&&new e.Set(t.seenAffectedFiles),r.cleanedDiagnosticsOfLibFiles=t.cleanedDiagnosticsOfLibFiles,r.semanticDiagnosticsFromOldState=t.semanticDiagnosticsFromOldState&&new e.Set(t.semanticDiagnosticsFromOldState),r.program=t.program,r.compilerOptions=t.compilerOptions,r.affectedFilesPendingEmit=t.affectedFilesPendingEmit&&t.affectedFilesPendingEmit.slice(),r.affectedFilesPendingEmitKind=t.affectedFilesPendingEmitKind&&new e.Map(t.affectedFilesPendingEmitKind),r.affectedFilesPendingEmitIndex=t.affectedFilesPendingEmitIndex,r.seenEmittedFiles=t.seenEmittedFiles&&new e.Map(t.seenEmittedFiles),r.programEmitComplete=t.programEmitComplete,r}(E)},S.restoreState=function(){E=e.Debug.checkDefined(h),h=void 0},S.getAllDependencies=function(t){return e.BuilderState.getAllDependencies(E,e.Debug.checkDefined(E.program),t)},S.getSemanticDiagnostics=function(t,r){i(E,t);var n,a=e.Debug.checkDefined(E.program).getCompilerOptions();if(e.outFile(a))return e.Debug.assert(!E.semanticDiagnosticsPerFile),e.Debug.checkDefined(E.program).getSemanticDiagnostics(t,r);if(t)return g(E,t,r);for(;w(r););for(var o=0,s=e.Debug.checkDefined(E.program).getSourceFiles();o<s.length;o++){var c=s[o];n=e.addRange(n,g(E,c,r))}return n||e.emptyArray},S.emit=function(r,a,o,s,l){var u,d,p,f=!1;n===t.EmitAndSemanticDiagnosticsBuilderProgram||r||e.outFile(E.compilerOptions)||E.compilerOptions.noEmit||!E.compilerOptions.noEmitOnError||(f=!0,u=E.affectedFilesPendingEmit&&E.affectedFilesPendingEmit.slice(),d=E.affectedFilesPendingEmitKind&&new e.Map(E.affectedFilesPendingEmitKind),p=E.affectedFilesPendingEmitIndex);n===t.EmitAndSemanticDiagnosticsBuilderProgram&&i(E,r);var m=e.handleNoEmitOptions(S,r,a,o);if(m)return m;f&&(E.affectedFilesPendingEmit=u,E.affectedFilesPendingEmitKind=d,E.affectedFilesPendingEmitIndex=p);if(!r&&n===t.EmitAndSemanticDiagnosticsBuilderProgram){for(var g=[],_=!1,h=void 0,y=[],v=void 0;v=D(a,o,s,l);)_=_||v.result.emitSkipped,h=e.addRange(h,v.result.diagnostics),y=e.addRange(y,v.result.emittedFiles),g=e.addRange(g,v.result.sourceMaps);return{emitSkipped:_,diagnostics:h||e.emptyArray,emittedFiles:y,sourceMaps:g}}return e.Debug.checkDefined(E.program).emit(r,a||e.maybeBind(c,c.writeFile),o,s,l)},S.releaseProgram=function(){!function(t){e.BuilderState.releaseCache(t),t.program=void 0}(E),h=void 0},n===t.SemanticDiagnosticsBuilderProgram?S.getSemanticDiagnosticsOfNextAffectedFile=w:n===t.EmitAndSemanticDiagnosticsBuilderProgram?(S.getSemanticDiagnosticsOfNextAffectedFile=w,S.emitNextAffectedFile=D,S.emitBuildInfo=function(t,r){if(E.buildInfoEmitPending){var n=e.Debug.checkDefined(E.program).emitBuildInfo(t||e.maybeBind(c,c.writeFile),r);return E.buildInfoEmitPending=!1,n}return e.emitSkippedWithNoDiagnostics}):e.notImplemented(),S;function D(t,r,n,i){var a=o(E,r,k),s=1,l=!1;if(!a)if(e.outFile(E.compilerOptions)){var u=e.Debug.checkDefined(E.program);if(E.programEmitComplete)return;a=u}else{var d=function(t){var r=t.affectedFilesPendingEmit;if(r){for(var n=t.seenEmittedFiles||(t.seenEmittedFiles=new e.Map),i=t.affectedFilesPendingEmitIndex;i<r.length;i++){var a=e.Debug.checkDefined(t.program).getSourceFileByPath(r[i]);if(a){var o=n.get(a.resolvedPath),s=e.Debug.checkDefined(e.Debug.checkDefined(t.affectedFilesPendingEmitKind).get(a.resolvedPath));if(void 0===o||o<s)return t.affectedFilesPendingEmitIndex=i,{affectedFile:a,emitKind:s}}}t.affectedFilesPendingEmit=void 0,t.affectedFilesPendingEmitKind=void 0,t.affectedFilesPendingEmitIndex=void 0}}(E);if(!d){if(!E.buildInfoEmitPending)return;var p=e.Debug.checkDefined(E.program);return m(E,p.emitBuildInfo(t||e.maybeBind(c,c.writeFile),r),p,1,!1,!0)}a=d.affectedFile,s=d.emitKind,l=!0}return m(E,e.Debug.checkDefined(E.program).emit(a===E.program?void 0:a,t||e.maybeBind(c,c.writeFile),r,n||0===s,i),a,s,l)}function w(e,r){for(;;){var i=o(E,e,k);if(!i)return;if(i===E.program)return f(E,E.program.getSemanticDiagnostics(void 0,e),i);if((n===t.EmitAndSemanticDiagnosticsBuilderProgram||E.compilerOptions.noEmit||E.compilerOptions.noEmitOnError)&&b(E,i.resolvedPath,1),!r||!r(i))return f(E,g(E,i,e),i);p(E,i)}}},e.createBuildProgramUsingProgramBuildInfo=function(t,r,n){var i=e.getDirectoryPath(e.getNormalizedAbsolutePath(r,n.getCurrentDirectory())),a=e.createGetCanonicalFileName(n.useCaseSensitiveFileNames()),o=new e.Map;for(var s in t.fileInfos)e.hasProperty(t.fileInfos,s)&&o.set(l(s),t.fileInfos[s]);var c={fileInfos:o,compilerOptions:e.convertToOptionsWithAbsolutePaths(t.options,(function(t){return e.getNormalizedAbsolutePath(t,i)})),referencedMap:k(t.referencedMap,l),exportedModulesMap:k(t.exportedModulesMap,l),semanticDiagnosticsPerFile:t.semanticDiagnosticsPerFile&&e.arrayToMap(t.semanticDiagnosticsPerFile,(function(t){return l(e.isString(t)?t:t[0])}),(function(t){return e.isString(t)?e.emptyArray:t[1]})),hasReusableDiagnostic:!0,affectedFilesPendingEmit:e.map(t.affectedFilesPendingEmit,(function(e){return l(e[0])})),affectedFilesPendingEmitKind:t.affectedFilesPendingEmit&&e.arrayToMap(t.affectedFilesPendingEmit,(function(e){return l(e[0])}),(function(e){return e[1]})),affectedFilesPendingEmitIndex:t.affectedFilesPendingEmit&&0};return{getState:function(){return c},backupState:e.noop,restoreState:e.noop,getProgram:e.notImplemented,getProgramOrUndefined:e.returnUndefined,releaseProgram:e.noop,getCompilerOptions:function(){return c.compilerOptions},getSourceFile:e.notImplemented,getSourceFiles:e.notImplemented,getOptionsDiagnostics:e.notImplemented,getGlobalDiagnostics:e.notImplemented,getConfigFileParsingDiagnostics:e.notImplemented,getSyntacticDiagnostics:e.notImplemented,getDeclarationDiagnostics:e.notImplemented,getSemanticDiagnostics:e.notImplemented,emit:e.notImplemented,getAllDependencies:e.notImplemented,getCurrentDirectory:e.notImplemented,emitNextAffectedFile:e.notImplemented,getSemanticDiagnosticsOfNextAffectedFile:e.notImplemented,emitBuildInfo:e.notImplemented,close:e.noop};function l(t){return e.toPath(t,i,a)}},e.createRedirectedBuilderProgram=x}(d||(d={})),function(e){e.createSemanticDiagnosticsBuilderProgram=function(t,r,n,i,a,o){return e.createBuilderProgram(e.BuilderProgramKind.SemanticDiagnosticsBuilderProgram,e.getBuilderCreationParameters(t,r,n,i,a,o))},e.createEmitAndSemanticDiagnosticsBuilderProgram=function(t,r,n,i,a,o){return e.createBuilderProgram(e.BuilderProgramKind.EmitAndSemanticDiagnosticsBuilderProgram,e.getBuilderCreationParameters(t,r,n,i,a,o))},e.createAbstractBuilder=function(t,r,n,i,a,o){var s=e.getBuilderCreationParameters(t,r,n,i,a,o),c=s.newProgram,l=s.configFileParsingDiagnostics;return e.createRedirectedBuilderProgram({program:c,compilerOptions:c.getCompilerOptions()},l)}}(d||(d={})),function(e){function t(t){return e.endsWith(t,"/node_modules/.staging")||e.endsWith(t,"/oh_modules/.staging")?e.removeSuffix(t,"/.staging"):e.some(e.ignoredPaths,(function(r){return e.stringContains(t,r)}))?void 0:t}function r(t){var r=e.getRootLength(t);if(t.length===r)return!1;var n=t.indexOf(e.directorySeparator,r);if(-1===n)return!1;var i=t.substring(r,n+1),a=r>1||47!==t.charCodeAt(0);if(a&&0!==t.search(/[a-zA-Z]:/)&&0===i.search(/[a-zA-z]\$\//)){if(-1===(n=t.indexOf(e.directorySeparator,n+1)))return!1;i=t.substring(r+i.length,n+1)}if(a&&0!==i.search(/users\//i))return!0;for(var o=n+1,s=2;s>0;s--)if(0===(o=t.indexOf(e.directorySeparator,o)+1))return!1;return!0}e.removeIgnoredPath=t,e.canWatchDirectory=r,e.createResolutionCache=function(n,i,a){var o,s,c,l=e.createMultiMap(),u=[],d=e.createMultiMap(),p=!1,f=[],m=[],g=[],_=e.memoize((function(){return n.getCurrentDirectory()})),h=n.getCachedDirectoryStructureHost(),y=new e.Map,v=e.createCacheWithRedirects(),b=e.createCacheWithRedirects(),k=e.createModuleResolutionCacheWithMaps(v,b,_(),n.getCanonicalFileName),x=new e.Map,E=e.createCacheWithRedirects(),S=n.getCompilationSettings().ets?[".ets",".ts",".tsx",".js",".jsx",".json"]:[".ts",".tsx",".js",".jsx",".json",".ets"],D=new e.Map,w=new e.Map,T=i&&e.removeTrailingDirectorySeparator(e.getNormalizedAbsolutePath(i,_())),C=T&&n.toPath(T),A=void 0!==C?C.split(e.directorySeparator).length:0,N=new e.Map;return{startRecordingFilesWithChangedResolutions:function(){o=[]},finishRecordingFilesWithChangedResolutions:function(){var e=o;return o=void 0,e},startCachingPerDirectoryResolution:R,finishCachingPerDirectoryResolution:function(){c=void 0,R(),w.forEach((function(e,t){0===e.refCount&&(w.delete(t),e.watcher.close())})),p=!1},resolveModuleNames:function(t,r,n,i){return L({names:t,containingFile:r,redirectedReference:i,cache:y,perDirectoryCacheWithRedirects:v,loader:M,getResolutionWithResolvedFileName:P,shouldRetryResolution:function(t){return!t.resolvedModule||!e.resolutionExtensionIsTSOrJson(t.resolvedModule.extension)},reusedNames:n,logChanges:a})},getResolvedModuleWithFailedLookupLocationsFromCache:function(e,t){var r=y.get(n.toPath(t));return r&&r.get(e)},resolveTypeReferenceDirectives:function(t,r,n){return L({names:t,containingFile:r,redirectedReference:n,cache:x,perDirectoryCacheWithRedirects:E,loader:e.resolveTypeReferenceDirective,getResolutionWithResolvedFileName:I,shouldRetryResolution:function(e){return void 0===e.resolvedTypeReferenceDirective}})},removeResolutionsFromProjectReferenceRedirects:function(t){if(!e.fileExtensionIs(t,".json"))return;var r=n.getCurrentProgram();if(!r)return;var i=r.getResolvedProjectReferenceByPath(t);if(!i)return;i.commandLine.fileNames.forEach((function(e){return X(n.toPath(e))}))},removeResolutionsOfFile:X,hasChangedAutomaticTypeDirectiveNames:function(){return p},invalidateResolutionOfFile:function(t){X(t);var r=p;Q(d.get(t),e.returnTrue)&&p&&!r&&n.onChangedAutomaticTypeDirectiveNames()},invalidateResolutionsOfFailedLookupLocations:ee,setFilesWithInvalidatedNonRelativeUnresolvedImports:function(t){e.Debug.assert(c===t||void 0===c),c=t},createHasInvalidatedResolution:function(t){if(ee(),t)return s=void 0,e.returnTrue;var r=s;return s=void 0,function(e){return!!r&&r.has(e)||O(e)}},isFileWithInvalidatedNonRelativeUnresolvedImports:O,updateTypeRootsWatch:function(){var t=n.getCompilationSettings();if(t.types)return void re();var r=e.getEffectiveTypeRoots(t,{directoryExists:ie,getCurrentDirectory:_});r?e.mutateMap(N,e.arrayToMap(r,(function(e){return n.toPath(e)})),{createNewValue:ne,onDeleteValue:e.closeFileWatcher}):re()},closeTypeRootsWatch:re,clear:function(){e.clearMap(w,e.closeFileWatcherOf),D.clear(),l.clear(),re(),y.clear(),x.clear(),d.clear(),u.length=0,f.length=0,m.length=0,g.length=0,R(),p=!1}};function P(e){return e.resolvedModule}function I(e){return e.resolvedTypeReferenceDirective}function F(t,r){return!(void 0===t||r.length<=t.length)&&(e.startsWith(r,t)&&r[t.length]===e.directorySeparator)}function O(e){if(!c)return!1;var t=c.get(e);return!!t&&!!t.length}function R(){v.clear(),b.clear(),E.clear(),l.forEach(H),l.clear()}function M(t,r,i,a,o){var s,c=e.resolveModuleName(t,r,i,a,k,o);if(!n.getGlobalCache)return c;var l=n.getGlobalCache();if(!(void 0===l||e.isExternalModuleNameRelative(t)||c.resolvedModule&&e.extensionIsTS(c.resolvedModule.extension))){var u=e.loadModuleFromGlobalCache(e.Debug.checkDefined(n.globalCacheResolutionModuleName)(t),n.projectName,i,a,l),d=u.resolvedModule,p=u.failedLookupLocations;if(d)return c.resolvedModule=d,(s=c.failedLookupLocations).push.apply(s,p),c}return c}function L(t){var r,i=t.names,a=t.containingFile,s=t.redirectedReference,c=t.cache,l=t.perDirectoryCacheWithRedirects,u=t.loader,d=t.getResolutionWithResolvedFileName,p=t.shouldRetryResolution,f=t.reusedNames,m=t.logChanges,g=n.toPath(a),_=c.get(g)||c.set(g,new e.Map).get(g),h=e.getDirectoryPath(g),y=l.getOrCreateMapOfCacheRedirects(s),v=y.get(h);v||(v=new e.Map,y.set(h,v));for(var b=[],k=n.getCompilationSettings(),x=m&&O(g),E=n.getCurrentProgram(),S=E&&E.getResolvedProjectReferenceToRedirect(a),D=S?!s||s.sourceFile.path!==S.sourceFile.path:!!s,w=new e.Map,T=0,C=i;T<C.length;T++){var A=C[T],N=_.get(A);if(!w.has(A)&&D||!N||N.isInvalidated||x&&!e.isExternalModuleNameRelative(A)&&p(N)){var P=N,I=v.get(A);I?N=I:(N=u(A,a,k,(null===(r=n.getCompilerHost)||void 0===r?void 0:r.call(n))||n,s),v.set(A,N)),_.set(A,N),J(A,N,g,d),P&&W(P,g,d),m&&o&&!F(P,N)&&(o.push(g),m=!1)}e.Debug.assert(void 0!==N&&!N.isInvalidated),w.set(A,!0),b.push(d(N))}return _.forEach((function(t,r){w.has(r)||e.contains(f,r)||(W(t,g,d),_.delete(r))})),b;function F(e,t){if(e===t)return!0;if(!e||!t)return!1;var r=d(e),n=d(t);return r===n||!(!r||!n)&&r.resolvedFileName===n.resolvedFileName}}function j(t){return e.endsWith(t,"/node_modules/@types")}function B(t){return e.endsWith(t,"/oh_modules/@types")}function z(t,r){if(F(C,r)){t=e.isRootedDiskPath(t)?e.normalizePath(t):e.getNormalizedAbsolutePath(t,_());var n=r.split(e.directorySeparator),i=t.split(e.directorySeparator);return e.Debug.assert(i.length===n.length,"FailedLookup: "+t+" failedLookupLocationPath: "+r),n.length>A+1?{dir:i.slice(0,A+1).join(e.directorySeparator),dirPath:n.slice(0,A+1).join(e.directorySeparator)}:{dir:T,dirPath:C,nonRecursive:!1}}return U(e.getDirectoryPath(e.getNormalizedAbsolutePath(t,_())),e.getDirectoryPath(r))}function U(t,i){for(var a=e.isOhpm(n.getCompilationSettings().packageManagerType);a?e.pathContainsOHModules(i):e.pathContainsNodeModules(i);)t=e.getDirectoryPath(t),i=e.getDirectoryPath(i);if(a?e.isOHModulesDirectory(i):e.isNodeModulesDirectory(i))return r(e.getDirectoryPath(i))?{dir:t,dirPath:i}:void 0;var o,s,c=!0;if(void 0!==C)for(;!F(i,C);){var l=e.getDirectoryPath(i);if(l===i)break;c=!1,o=i,s=t,i=l,t=e.getDirectoryPath(t)}return r(i)?{dir:s||t,dirPath:o||i,nonRecursive:c}:void 0}function q(t){return e.fileExtensionIsOneOf(t,S)}function J(t,r,i,a){if(r.refCount)r.refCount++,e.Debug.assertDefined(r.files);else{r.refCount=1,e.Debug.assert(0===e.length(r.files)),e.isExternalModuleNameRelative(t)?V(r):l.add(t,r);var o=a(r);o&&o.resolvedFileName&&d.add(n.toPath(o.resolvedFileName),r)}(r.files||(r.files=[])).push(i)}function V(t){e.Debug.assert(!!t.refCount);var r=t.failedLookupLocations;if(r.length){u.push(t);for(var i=!1,a=0,o=r;a<o.length;a++){var s=o[a],c=n.toPath(s),l=z(s,c);if(l){var d=l.dir,p=l.dirPath,f=l.nonRecursive;if(!q(c)){var m=D.get(c)||0;D.set(c,m+1)}p===C?(e.Debug.assert(!f),i=!0):K(d,p,f)}}i&&K(T,C,!0)}}function H(e,t){var r=n.getCurrentProgram();r&&r.getTypeChecker().tryFindAmbientModuleWithoutAugmentations(t)||e.forEach(V)}function K(t,r,n){var i=w.get(r);i?(e.Debug.assert(!!n==!!i.nonRecursive),i.refCount++):w.set(r,{watcher:$(t,r,n),refCount:1,nonRecursive:n})}function W(t,r,i){if(e.unorderedRemoveItem(e.Debug.assertDefined(t.files),r),t.refCount--,!t.refCount){var a=i(t);if(a&&a.resolvedFileName&&d.remove(n.toPath(a.resolvedFileName),t),e.unorderedRemoveItem(u,t)){for(var o=!1,s=0,c=t.failedLookupLocations;s<c.length;s++){var l=c[s],p=n.toPath(l),f=z(l,p);if(f){var m=f.dirPath,g=D.get(p);g&&(1===g?D.delete(p):(e.Debug.assert(g>1),D.set(p,g-1))),m===C?o=!0:G(m)}}o&&G(C)}}}function G(e){w.get(e).refCount--}function $(e,t,r){return n.watchDirectoryOfFailedLookupLocation(e,(function(e){var r=n.toPath(e);h&&h.addOrDeleteFileOrDirectory(e,r),Z(r,t===r)}),r?0:1)}function Y(e,t,r){var n=e.get(t);n&&(n.forEach((function(e){return W(e,t,r)})),e.delete(t))}function X(e){Y(y,e,P),Y(x,e,I)}function Q(t,r){if(!t)return!1;for(var n=!1,i=0,a=t;i<a.length;i++){var o=a[i];if(!o.isInvalidated&&r(o)){o.isInvalidated=n=!0;for(var c=0,l=e.Debug.assertDefined(o.files);c<l.length;c++){var u=l[c];(s||(s=new e.Set)).add(u),p=p||e.endsWith(u,e.inferredTypesContainingFile)}}}return n}function Z(r,i){if(i)g.push(r);else{var a=t(r);if(!a)return!1;if(r=a,n.fileIsOpen(r))return!1;var o=e.getDirectoryPath(r),s=e.isOhpm(n.getCompilationSettings().packageManagerType);if(j(r)||s&&B(r)||e.isNodeModulesDirectory(r)||j(o)||s&&B(o)||e.isNodeModulesDirectory(o))f.push(r),m.push(r);else{if(!q(r)&&!D.has(r))return!1;if(e.isEmittedFileOfProgram(n.getCurrentProgram(),r))return!1;f.push(r)}}n.scheduleInvalidateResolutionsOfFailedLookupLocations()}function ee(){if(!f.length&&!m.length&&!g.length)return!1;var e=Q(u,te);return f.length=0,m.length=0,g.length=0,e}function te(t){return t.failedLookupLocations.some((function(t){var r=n.toPath(t);return e.contains(f,r)||m.some((function(t){return e.startsWith(r,t)}))||g.some((function(e){return F(e,r)}))}))}function re(){e.clearMap(N,e.closeFileWatcher)}function ne(e,t){return n.watchTypeRootsDirectory(t,(function(r){var i=n.toPath(r);h&&h.addOrDeleteFileOrDirectory(r,i),p=!0,n.onChangedAutomaticTypeDirectiveNames();var a=function(e,t){if(F(C,t))return C;var r=U(e,t);return r&&w.has(r.dirPath)?r.dirPath:void 0}(t,e);a&&Z(i,a===i)}),1)}function ie(t){var i=e.getDirectoryPath(e.getDirectoryPath(t)),a=n.toPath(i);return a===C||r(a)}}}(d||(d={})),function(e){!function(t){var r,n;function a(t,r,n){var i=t.importModuleSpecifierPreference,a=t.importModuleSpecifierEnding;return{relativePreference:"relative"===i?0:"non-relative"===i?1:"project-relative"===i?3:2,ending:function(){switch(a){case"minimal":return 0;case"index":return 1;case"js":return 2;default:return function(t){var r=t.imports;return e.firstDefined(r,(function(t){var r=t.text;return e.pathIsRelative(r)?e.hasJSFileExtension(r):void 0}))||!1}(n)?2:e.getEmitModuleResolutionKind(r)!==e.ModuleResolutionKind.NodeJs?1:0}}()}}function o(t,r,n,i,a){var o=s(r,i),l=m(r,n,i,t.packageManagerType);return e.firstDefined(l,(function(e){return _(e,o,i,t)}))||c(n,o,t,i,a)}function s(t,r){return{getCanonicalFileName:e.createGetCanonicalFileName(!r.useCaseSensitiveFileNames||r.useCaseSensitiveFileNames()),importingSourceFileName:t,sourceDirectory:e.getDirectoryPath(t)}}function c(t,r,n,i,a){var o=a.ending,s=a.relativePreference,c=n.baseUrl,u=n.paths,d=n.rootDirs,f=r.sourceDirectory,m=r.getCanonicalFileName,_=d&&function(t,r,n,i,a,o){var s=h(r,t,i);if(void 0===s)return;var c=h(n,t,i),l=void 0!==c?e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(c,s,i)):s;return e.getEmitModuleResolutionKind(o)===e.ModuleResolutionKind.NodeJs?y(l,a,o):e.removeFileExtension(l)}(d,t,f,m,o,n)||y(e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(f,t,m)),o,n);if(!c&&!u||0===s)return _;var k=v(t,e.getPathsBasePath(n,i)||c,m);if(!k)return _;var x=y(k,o,n),E=u&&g(e.removeFileExtension(k),x,u),S=void 0===E&&void 0!==c?x:E;if(!S)return _;if(1===s)return S;if(3===s){var D=i.getCurrentDirectory(),w=e.toPath(t,D,m),T=e.startsWith(f,D),C=e.startsWith(w,D);if(T&&!C||!T&&C)return S;var A=n.packageManagerType,N=p(i,e.getDirectoryPath(w),A);return p(i,f,A)!==N?S:_}return 2!==s&&e.Debug.assertNever(s),b(S)||l(_)<l(S)?_:S}function l(t){for(var r=0,n=e.startsWith(t,"./")?2:0;n<t.length;n++)47===t.charCodeAt(n)&&r++;return r}function d(t,r){return e.compareBooleans(r.isRedirect,t.isRedirect)||e.compareNumberOfDirectorySeparators(t.path,r.path)}function p(t,r,n){return t.getNearestAncestorDirectoryWithPackageJson?t.getNearestAncestorDirectoryWithPackageJson(r):!!e.forEachAncestorDirectory(r,(function(r){return!!t.fileExists(e.combinePaths(r,e.getPackageJsonByPMType(n)))||void 0}))}function f(t,r,n,a,o,s){var c=e.hostGetCanonicalFileName(n),l=n.getCurrentDirectory(),u=n.isSourceOfProjectReferenceRedirect(r)?n.getProjectReferenceRedirect(r):void 0,d=e.toPath(r,l,c),p=n.redirectTargetsMap.get(d)||e.emptyArray,f=i(i(i([],u?[u]:e.emptyArray),[r]),p).map((function(t){return e.getNormalizedAbsolutePath(t,l)})),m=!e.every(f,e.containsIgnoredPath);if(!a){var g=e.forEach(f,(function(t){return!(m&&e.containsIgnoredPath(t))&&o(t,u===t)}));if(g)return g}var _=(n.getSymlinkCache?n.getSymlinkCache():e.discoverProbableSymlinks(n.getSourceFiles(),c,l,s)).getSymlinkedDirectoriesByRealpath(),h=e.getNormalizedAbsolutePath(r,l);return _&&e.forEachAncestorDirectory(e.getDirectoryPath(h),(function(r){var n=_.get(e.ensureTrailingDirectorySeparator(e.toPath(r,l,c)));if(n)return!e.startsWithDirectory(t,r,c)&&e.forEach(f,(function(t){if(e.startsWithDirectory(t,r,c))for(var i=e.getRelativePathFromDirectory(r,t,c),a=0,s=n;a<s.length;a++){var l=s[a],d=e.resolvePath(l,i),p=o(d,t===u);if(m=!0,p)return p}}))}))||(a?e.forEach(f,(function(t){return m&&e.containsIgnoredPath(t)?void 0:o(t,t===u)})):void 0)}function m(t,r,n,i){var a=n.getCurrentDirectory(),o=e.hostGetCanonicalFileName(n),s=new e.Map,c=!1;f(t,r,n,!0,(function(t,r){var n=e.isOhpm(i)?e.pathContainsOHModules(t):e.pathContainsNodeModules(t);s.set(t,{path:o(t),isRedirect:r,isInNodeModules:n}),c=c||n}),e.isOhpm(i));for(var l,u=[],p=function(t){var r,n=e.ensureTrailingDirectorySeparator(t);s.forEach((function(t,i){var a=t.path,o=t.isRedirect,c=t.isInNodeModules;e.startsWith(a,n)&&((r||(r=[])).push({path:i,isRedirect:o,isInNodeModules:c}),s.delete(i))})),r&&(r.length>1&&r.sort(d),u.push.apply(u,r));var i=e.getDirectoryPath(t);if(i===t)return l=t,"break";l=t=i},m=e.getDirectoryPath(e.toPath(t,a,o));0!==s.size;){var g=p(m);if(m=l,"break"===g)break}if(s.size){var _=e.arrayFrom(s.values());_.length>1&&_.sort(d),u.push.apply(u,_)}return u}function g(t,r,n){for(var i in n)for(var a=0,o=n[i];a<o.length;a++){var s=o[a],c=e.removeFileExtension(e.normalizePath(s)),l=c.indexOf("*");if(-1!==l){var u=c.substr(0,l),d=c.substr(l+1);if(r.length>=u.length+d.length&&e.startsWith(r,u)&&e.endsWith(r,d)||!d&&r===e.removeTrailingDirectorySeparator(u)){var p=r.substr(u.length,r.length-d.length);return i.replace("*",p)}}else if(c===r||c===t)return i}}function _(t,r,n,i,a){var o=t.path,s=t.isRedirect,c=r.getCanonicalFileName,l=r.sourceDirectory;if(n.fileExists&&n.readFile){var d=function(e,t){var r,n=0,i=0,a=0,o=0;!function(e){e[e.BeforeNodeModules=0]="BeforeNodeModules",e[e.NodeModules=1]="NodeModules",e[e.Scope=2]="Scope",e[e.PackageContent=3]="PackageContent"}(r||(r={}));var s=0,c=0,l=0;for(;c>=0;)switch(s=c,c=e.indexOf("/",s+1),l){case 0:e.indexOf(t,s)===s&&(n=s,i=c,l=1);break;case 1:case 2:1===l&&"@"===e.charAt(s+1)?l=2:(a=c,l=3);break;case 3:l=e.indexOf(t,s)===s?1:3}return o=s,l>1?{topLevelNodeModulesIndex:n,topLevelPackageNameIndex:i,packageRootIndex:a,fileNameIndex:o}:void 0}(o,e.isOhpm(i.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart);if(d){var p=o,f=!1;if(!a)for(var m=d.packageRootIndex,_=void 0;;){var h=D(m),v=h.moduleFileToTry,b=h.packageRootPath;if(b){p=b,f=!0;break}if(_||(_=v),-1===(m=o.indexOf(e.directorySeparator,m+1))){p=w(_);break}}if(!s||f){var k=n.getGlobalTypingsCacheLocation&&n.getGlobalTypingsCacheLocation(),x=c(p.substring(0,d.topLevelNodeModulesIndex));if(e.startsWith(l,x)||k&&e.startsWith(c(k),x)){var E=p.substring(d.topLevelPackageNameIndex+1),S=e.getPackageNameFromTypesPackageName(E);return e.getEmitModuleResolutionKind(i)!==e.ModuleResolutionKind.NodeJs&&S===E?void 0:S}}}}function D(t){var r=o.substring(0,t),a=e.combinePaths(r,e.getPackageJsonByPMType(i.packageManagerType)),s=o;if(n.fileExists(a)){var l=e.isOhpm(i.packageManagerType)?u.parse(n.readFile(a)):JSON.parse(n.readFile(a)),d=l.typesVersions?e.getPackageJsonTypesVersionsPaths(l.typesVersions):void 0;if(d){var p=o.slice(r.length+1),f=g(e.removeFileExtension(p),y(p,0,i),d.paths);void 0!==f&&(s=e.combinePaths(r,f))}var m=l.typings||l.types||l.main;if(e.isString(m)){var _=e.toPath(m,r,c);if(e.removeFileExtension(_)===e.removeFileExtension(c(s)))return{packageRootPath:r,moduleFileToTry:s}}}return{moduleFileToTry:s}}function w(t){var r=e.removeFileExtension(t);return"/index"!==c(r.substring(d.fileNameIndex))||function(t,r){if(!t.fileExists)return;for(var n=e.getSupportedExtensions({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]),i=0,a=n;i<a.length;i++){var o=r+a[i];if(t.fileExists(o))return o}}(n,r.substring(0,d.fileNameIndex))?r:r.substring(0,d.fileNameIndex)}}function h(t,r,n){return e.firstDefined(r,(function(e){var r=v(t,e,n);return b(r)?void 0:r}))}function y(t,r,n){if(e.fileExtensionIs(t,".json"))return t;var i=e.removeFileExtension(t);switch(r){case 0:return e.removeSuffix(i,"/index");case 1:return i;case 2:return i+function(t,r){var n=e.extensionFromPath(t);switch(n){case".ts":case".d.ts":case".ets":case".d.ets":return".js";case".tsx":return 1===r.jsx?".jsx":".js";case".js":case".jsx":case".json":return n;case".tsbuildinfo":return e.Debug.fail("Extension .tsbuildinfo is unsupported:: FileName:: "+t);default:return e.Debug.assertNever(n)}}(t,n);default:return e.Debug.assertNever(r)}}function v(t,r,n){var i=e.getRelativePathToDirectoryOrUrl(r,t,r,n,!1);return e.isRootedDiskPath(i)?void 0:i}function b(t){return e.startsWith(t,"..")}!function(e){e[e.Relative=0]="Relative",e[e.NonRelative=1]="NonRelative",e[e.Shortest=2]="Shortest",e[e.ExternalNonRelative=3]="ExternalNonRelative"}(r||(r={})),function(e){e[e.Minimal=0]="Minimal",e[e.Index=1]="Index",e[e.JsExtension=2]="JsExtension"}(n||(n={})),t.updateModuleSpecifier=function(t,r,n,i,a){var s=o(t,r,n,i,function(t,r){return{relativePreference:e.isExternalModuleNameRelative(r)?0:1,ending:e.hasJSFileExtension(r)?2:e.getEmitModuleResolutionKind(t)!==e.ModuleResolutionKind.NodeJs||e.endsWith(r,"index")?1:0}}(t,a));if(s!==a)return s},t.getModuleSpecifier=function(e,t,r,n,i,s){return void 0===s&&(s={}),o(e,r,n,i,a(s,e,t))},t.getModulesPackageName=function(t,r,n,i){var a=s(r,i),o=m(r,n,i,t.packageManagerType);return e.firstDefined(o,(function(e){return _(e,a,i,t,!0)}))},t.getModuleSpecifiers=function(t,r,n,i,o,l){var u=function(t,r){var n=e.find(t.declarations,(function(t){return e.isNonGlobalAmbientModule(t)&&(!e.isExternalModuleAugmentation(t)||!e.isExternalModuleNameRelative(e.getTextOfIdentifierOrLiteral(t.name)))}));if(n)return n.name.text;var i=e.mapDefined(t.declarations,(function(t){var n,i,a,o;if(e.isModuleDeclaration(t)){var s=u(t);if((null===(n=null==s?void 0:s.parent)||void 0===n?void 0:n.parent)&&e.isModuleBlock(s.parent)&&e.isAmbientModule(s.parent.parent)&&e.isSourceFile(s.parent.parent.parent)){var c=null===(o=null===(a=null===(i=s.parent.parent.symbol.exports)||void 0===i?void 0:i.get("export="))||void 0===a?void 0:a.valueDeclaration)||void 0===o?void 0:o.expression;if(c){var l=r.getSymbolAtLocation(c);if(l)if((2097152&(null==l?void 0:l.flags)?r.getAliasedSymbol(l):l)===t.symbol)return s.parent.parent}}}function u(e){for(;4&e.flags;)e=e.parent;return e}})),a=i[0];if(a)return a.name.text}(t,r);if(u)return[u];var d=s(i.path,o),p=e.getSourceFileOfNode(t.valueDeclaration||e.getNonAugmentationDeclaration(t)),f=m(i.path,p.originalFileName,o,n.packageManagerType),g=a(l,n,i),h=e.forEach(f,(function(t){return e.forEach(o.getFileIncludeReasons().get(e.toPath(t.path,o.getCurrentDirectory(),d.getCanonicalFileName)),(function(t){if(t.kind===e.FileIncludeKind.Import&&t.file===i.path){var r=e.getModuleNameStringLiteralAt(i,t.index).text;return 1===g.relativePreference&&e.pathIsRelative(r)?void 0:r}}))}));if(h)return[h];for(var y,v,b,k=e.some(f,(function(e){return e.isInNodeModules})),x=0,E=f;x<E.length;x++){var S=E[x],D=_(S,d,o,n);if(y=e.append(y,D),D&&S.isRedirect)return y;if(!D&&!S.isRedirect){var w=c(S.path,d,n,o,g);e.pathIsBareSpecifier(w)?v=e.append(v,w):k&&!S.isInNodeModules||(b=e.append(b,w))}}return(null==v?void 0:v.length)?v:(null==y?void 0:y.length)?y:e.Debug.checkDefined(b)},t.countPathComponents=l,t.forEachFileNameOfModule=f}(e.moduleSpecifiers||(e.moduleSpecifiers={}))}(d||(d={})),function(e){var t=e.sys?{getCurrentDirectory:function(){return e.sys.getCurrentDirectory()},getNewLine:function(){return e.sys.newLine},getCanonicalFileName:e.createGetCanonicalFileName(e.sys.useCaseSensitiveFileNames)}:void 0;function r(r,n){var i=r===e.sys?t:{getCurrentDirectory:function(){return r.getCurrentDirectory()},getNewLine:function(){return r.newLine},getCanonicalFileName:e.createGetCanonicalFileName(r.useCaseSensitiveFileNames)};if(!n)return function(t){return r.write(e.formatDiagnostic(t,i))};var a=new Array(1);return function(t){a[0]=t,r.write(e.formatDiagnosticsWithColorAndContext(a,i)+i.getNewLine()),a[0]=void 0}}function n(t,r,n){return!(!t.clearScreen||n.preserveWatchOutput||n.extendedDiagnostics||n.diagnostics||!e.contains(e.screenStartingMessageCodes,r.code))&&(t.clearScreen(),!0)}function a(e){return e.now?e.now().toLocaleTimeString("en-US",{timeZone:"UTC"}):(new Date).toLocaleTimeString()}function o(t,r){return r?function(r,i,o){n(t,r,o);var s="["+e.formatColorAndReset(a(t),e.ForegroundColorEscapeSequences.Grey)+"] ";s+=""+e.flattenDiagnosticMessageText(r.messageText,t.newLine)+(i+i),t.write(s)}:function(r,i,o){var s="";n(t,r,o)||(s+=i),s+=a(t)+" - ",s+=""+e.flattenDiagnosticMessageText(r.messageText,t.newLine)+function(t,r){return e.contains(e.screenStartingMessageCodes,t.code)?r+r:r}(r,i),t.write(s)}}function s(t){return e.countWhere(t,(function(t){return t.category===e.DiagnosticCategory.Error}))}function c(t){return 1===t?e.Diagnostics.Found_1_error_Watching_for_file_changes:e.Diagnostics.Found_0_errors_Watching_for_file_changes}function l(t,r){if(0===t)return"";var n=e.createCompilerDiagnostic(1===t?e.Diagnostics.Found_1_error:e.Diagnostics.Found_0_errors,t);return""+r+e.flattenDiagnosticMessageText(n.messageText,r)+r+r}function u(e){return!!e.getState}function d(t,r){var n=t.getCompilerOptions();n.explainFiles?p(u(t)?t.getProgram():t,r):(n.listFiles||n.listFilesOnly)&&e.forEach(t.getSourceFiles(),(function(e){r(e.fileName)}))}function p(t,r){for(var n,i,a=t.getFileIncludeReasons(),o=e.createGetCanonicalFileName(t.useCaseSensitiveFileNames()),s=function(r){return e.convertToRelativePath(r,t.getCurrentDirectory(),o)},c=0,l=t.getSourceFiles();c<l.length;c++){var u=l[c];r(""+h(u,s)),null===(n=a.get(u.path))||void 0===n||n.forEach((function(e){return r(" "+_(t,e,s).messageText)})),null===(i=f(u,s))||void 0===i||i.forEach((function(e){return r(" "+e.messageText)}))}}function f(t,r){var n;return t.path!==t.resolvedPath&&(n||(n=[])).push(e.chainDiagnosticMessages(void 0,e.Diagnostics.File_is_output_of_project_reference_source_0,h(t.originalFileName,r))),t.redirectInfo&&(n||(n=[])).push(e.chainDiagnosticMessages(void 0,e.Diagnostics.File_redirects_to_file_0,h(t.redirectInfo.redirectTarget,r))),n}function m(t,r){var n,i=t.getCompilerOptions().configFile;if(null===(n=null==i?void 0:i.configFileSpecs)||void 0===n?void 0:n.validatedFilesSpec){var a=e.createGetCanonicalFileName(t.useCaseSensitiveFileNames()),o=a(r),s=e.getDirectoryPath(e.getNormalizedAbsolutePath(i.fileName,t.getCurrentDirectory()));return e.find(i.configFileSpecs.validatedFilesSpec,(function(t){return a(e.getNormalizedAbsolutePath(t,s))===o}))}}function g(t,r){var n,i,a=t.getCompilerOptions().configFile;if(null===(n=null==a?void 0:a.configFileSpecs)||void 0===n?void 0:n.validatedIncludeSpecs){var o=e.fileExtensionIs(r,".json"),s=e.getDirectoryPath(e.getNormalizedAbsolutePath(a.fileName,t.getCurrentDirectory())),c=t.useCaseSensitiveFileNames();return e.find(null===(i=null==a?void 0:a.configFileSpecs)||void 0===i?void 0:i.validatedIncludeSpecs,(function(t){if(o&&!e.endsWith(t,".json"))return!1;var n=e.getPatternFromSpec(t,s,"files");return!!n&&e.getRegexFromPattern("("+n+")$",c).test(r)}))}}function _(t,r,n){var i,a,o=t.getCompilerOptions();if(e.isReferencedFile(r)){var s=e.getReferencedFileLocation((function(e){return t.getSourceFileByPath(e)}),r),c=e.isReferenceFileLocation(s)?s.file.text.substring(s.pos,s.end):'"'+s.text+'"',l=void 0;switch(e.Debug.assert(e.isReferenceFileLocation(s)||r.kind===e.FileIncludeKind.Import,"Only synthetic references are imports"),r.kind){case e.FileIncludeKind.Import:l=e.isReferenceFileLocation(s)?s.packageId?e.Diagnostics.Imported_via_0_from_file_1_with_packageId_2:e.Diagnostics.Imported_via_0_from_file_1:s.text===e.externalHelpersModuleNameText?s.packageId?e.Diagnostics.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:e.Diagnostics.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:s.packageId?e.Diagnostics.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:e.Diagnostics.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case e.FileIncludeKind.ReferenceFile:e.Debug.assert(!s.packageId),l=e.Diagnostics.Referenced_via_0_from_file_1;break;case e.FileIncludeKind.TypeReferenceDirective:l=s.packageId?e.Diagnostics.Type_library_referenced_via_0_from_file_1_with_packageId_2:e.Diagnostics.Type_library_referenced_via_0_from_file_1;break;case e.FileIncludeKind.LibReferenceDirective:e.Debug.assert(!s.packageId),l=e.Diagnostics.Library_referenced_via_0_from_file_1;break;default:e.Debug.assertNever(r)}return e.chainDiagnosticMessages(void 0,l,c,h(s.file,n),s.packageId&&e.packageIdToString(s.packageId))}switch(r.kind){case e.FileIncludeKind.RootFile:if(!(null===(i=o.configFile)||void 0===i?void 0:i.configFileSpecs))return e.chainDiagnosticMessages(void 0,e.Diagnostics.Root_file_specified_for_compilation);var u=e.getNormalizedAbsolutePath(t.getRootFileNames()[r.index],t.getCurrentDirectory());if(m(t,u))return e.chainDiagnosticMessages(void 0,e.Diagnostics.Part_of_files_list_in_tsconfig_json);var d=g(t,u);return d?e.chainDiagnosticMessages(void 0,e.Diagnostics.Matched_by_include_pattern_0_in_1,d,h(o.configFile,n)):e.chainDiagnosticMessages(void 0,e.Diagnostics.Root_file_specified_for_compilation);case e.FileIncludeKind.SourceFromProjectReference:case e.FileIncludeKind.OutputFromProjectReference:var p=r.kind===e.FileIncludeKind.OutputFromProjectReference,f=e.Debug.checkDefined(null===(a=t.getResolvedProjectReferences())||void 0===a?void 0:a[r.index]);return e.chainDiagnosticMessages(void 0,e.outFile(o)?p?e.Diagnostics.Output_from_referenced_project_0_included_because_1_specified:e.Diagnostics.Source_from_referenced_project_0_included_because_1_specified:p?e.Diagnostics.Output_from_referenced_project_0_included_because_module_is_specified_as_none:e.Diagnostics.Source_from_referenced_project_0_included_because_module_is_specified_as_none,h(f.sourceFile.fileName,n),o.outFile?"--outFile":"--out");case e.FileIncludeKind.AutomaticTypeDirectiveFile:return e.chainDiagnosticMessages(void 0,o.types?r.packageId?e.Diagnostics.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:e.Diagnostics.Entry_point_of_type_library_0_specified_in_compilerOptions:r.packageId?e.Diagnostics.Entry_point_for_implicit_type_library_0_with_packageId_1:e.Diagnostics.Entry_point_for_implicit_type_library_0,r.typeReference,r.packageId&&e.packageIdToString(r.packageId));case e.FileIncludeKind.LibFile:if(void 0!==r.index)return e.chainDiagnosticMessages(void 0,e.Diagnostics.Library_0_specified_in_compilerOptions,o.lib[r.index]);var _=e.forEachEntry(e.targetOptionDeclaration.type,(function(e,t){return e===o.target?t:void 0}));return e.chainDiagnosticMessages(void 0,_?e.Diagnostics.Default_library_for_target_0:e.Diagnostics.Default_library,_);default:e.Debug.assertNever(r)}}function h(t,r){var n=e.isString(t)?t:t.fileName;return r?r(n):n}function y(t,r,n,i,a,o,c,l){var u=!!t.getCompilerOptions().listFilesOnly,p=t.getConfigFileParsingDiagnostics().slice(),f=p.length;e.addRange(p,t.getSyntacticDiagnostics(void 0,o)),p.length===f&&(e.addRange(p,t.getOptionsDiagnostics(o)),u||(e.addRange(p,t.getGlobalDiagnostics(o)),p.length===f&&e.addRange(p,t.getSemanticDiagnostics(void 0,o))));var m=u?{emitSkipped:!0,diagnostics:e.emptyArray}:t.emit(void 0,a,o,c,l),g=m.emittedFiles,_=m.diagnostics;e.addRange(p,_);var h=e.sortAndDeduplicateDiagnostics(p);if(h.forEach(r),n){var y=t.getCurrentDirectory();e.forEach(g,(function(t){var r=e.getNormalizedAbsolutePath(t,y);n("TSFILE: "+r)})),d(t,n)}return i&&i(s(h)),{emitResult:m,diagnostics:h}}function v(t,r,n,i,a,o,s,c){var l=y(t,r,n,i,a,o,s,c),u=l.emitResult,d=l.diagnostics;return u.emitSkipped&&d.length>0?e.ExitStatus.DiagnosticsPresent_OutputsSkipped:d.length>0?e.ExitStatus.DiagnosticsPresent_OutputsGenerated:e.ExitStatus.Success}function b(t,r){return void 0===t&&(t=e.sys),{onWatchStatusChange:r||o(t),watchFile:e.maybeBind(t,t.watchFile)||e.returnNoopFileWatcher,watchDirectory:e.maybeBind(t,t.watchDirectory)||e.returnNoopFileWatcher,setTimeout:e.maybeBind(t,t.setTimeout)||e.noop,clearTimeout:e.maybeBind(t,t.clearTimeout)||e.noop}}function k(t,r){var n=e.memoize((function(){return e.getDirectoryPath(e.normalizePath(t.getExecutingFilePath()))}));return{useCaseSensitiveFileNames:function(){return t.useCaseSensitiveFileNames},getNewLine:function(){return t.newLine},getCurrentDirectory:e.memoize((function(){return t.getCurrentDirectory()})),getDefaultLibLocation:n,getDefaultLibFileName:function(t){return e.combinePaths(n(),e.getDefaultLibFileName(t))},fileExists:function(e){return t.fileExists(e)},readFile:function(e,r){return t.readFile(e,r)},directoryExists:function(e){return t.directoryExists(e)},getDirectories:function(e){return t.getDirectories(e)},readDirectory:function(e,r,n,i,a){return t.readDirectory(e,r,n,i,a)},realpath:e.maybeBind(t,t.realpath),getEnvironmentVariable:e.maybeBind(t,t.getEnvironmentVariable),trace:function(e){return t.write(e+t.newLine)},createDirectory:function(e){return t.createDirectory(e)},writeFile:function(e,r,n){return t.writeFile(e,r,n)},createHash:e.maybeBind(t,t.createHash),createProgram:r||e.createEmitAndSemanticDiagnosticsBuilderProgram}}function x(t,r,n,i){void 0===t&&(t=e.sys);var a=function(e){return t.write(e+t.newLine)},o=k(t,r);return e.copyProperties(o,b(t,i)),o.afterProgramCreate=function(r){var i=r.getCompilerOptions(),s=e.getNewLineCharacter(i,(function(){return t.newLine}));y(r,n,a,(function(t){return o.onWatchStatusChange(e.createCompilerDiagnostic(c(t),t),s,i,t)}))},o}function E(t,r,n){r(n),t.exit(e.ExitStatus.DiagnosticsPresent_OutputsSkipped)}e.createDiagnosticReporter=r,e.screenStartingMessageCodes=[e.Diagnostics.Starting_compilation_in_watch_mode.code,e.Diagnostics.File_change_detected_Starting_incremental_compilation.code],e.getLocaleTimeString=a,e.createWatchStatusReporter=o,e.parseConfigFileWithSystem=function(t,r,n,i,a){var o=i;o.onUnRecoverableConfigFileDiagnostic=function(e){return E(i,a,e)};var s=e.getParsedCommandLineOfConfigFile(t,r,o,void 0,n);return o.onUnRecoverableConfigFileDiagnostic=void 0,s},e.getErrorCountForSummary=s,e.getWatchErrorSummaryDiagnosticMessage=c,e.getErrorSummaryText=l,e.isBuilderProgram=u,e.listFiles=d,e.explainFiles=p,e.explainIfFileIsRedirect=f,e.getMatchedFileSpec=m,e.getMatchedIncludeSpec=g,e.fileIncludeReasonToDiagnostics=_,e.emitFilesAndReportErrors=y,e.emitFilesAndReportErrorsAndGetExitStatus=v,e.noopFileWatcher={close:e.noop},e.returnNoopFileWatcher=function(){return e.noopFileWatcher},e.createWatchHost=b,e.WatchType={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",TypeRoots:"Type roots"},e.createWatchFactory=function(t,r){var n=t.trace?r.extendedDiagnostics?e.WatchLogLevel.Verbose:r.diagnostics?e.WatchLogLevel.TriggerOnly:e.WatchLogLevel.None:e.WatchLogLevel.None,i=n!==e.WatchLogLevel.None?function(e){return t.trace(e)}:e.noop,a=e.getWatchFactory(t,n,i);return a.writeLog=i,a},e.createCompilerHostFromProgramHost=function(t,r,n){void 0===n&&(n=t);var i=t.useCaseSensitiveFileNames(),a=e.memoize((function(){return t.getNewLine()}));return{getSourceFile:function(n,i,a){var o,s=r();try{e.performance.mark("beforeIORead"),o=t.readFile(n,s.charset),e.performance.mark("afterIORead"),e.performance.measure("I/O Read","beforeIORead","afterIORead")}catch(e){a&&a(e.message),o=""}return void 0!==o?e.createSourceFile(n,o,i,void 0,void 0,s):void 0},getDefaultLibLocation:e.maybeBind(t,t.getDefaultLibLocation),getDefaultLibFileName:function(e){return t.getDefaultLibFileName(e)},writeFile:function(r,n,i,a){try{e.performance.mark("beforeIOWrite"),e.writeFileEnsuringDirectories(r,n,i,(function(e,r,n){return t.writeFile(e,r,n)}),(function(e){return t.createDirectory(e)}),(function(e){return t.directoryExists(e)})),e.performance.mark("afterIOWrite"),e.performance.measure("I/O Write","beforeIOWrite","afterIOWrite")}catch(e){a&&a(e.message)}},getCurrentDirectory:e.memoize((function(){return t.getCurrentDirectory()})),useCaseSensitiveFileNames:function(){return i},getCanonicalFileName:e.createGetCanonicalFileName(i),getNewLine:function(){return e.getNewLineCharacter(r(),a)},fileExists:function(e){return t.fileExists(e)},readFile:function(e){return t.readFile(e)},trace:e.maybeBind(t,t.trace),directoryExists:e.maybeBind(n,n.directoryExists),getDirectories:e.maybeBind(n,n.getDirectories),realpath:e.maybeBind(t,t.realpath),getEnvironmentVariable:e.maybeBind(t,t.getEnvironmentVariable)||function(){return""},createHash:e.maybeBind(t,t.createHash),readDirectory:e.maybeBind(t,t.readDirectory)}},e.setGetSourceFileAsHashVersioned=function(t,r){var n=t.getSourceFile,a=e.maybeBind(r,r.createHash)||e.generateDjb2Hash;t.getSourceFile=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];var o=n.call.apply(n,i([t],e));return o&&(o.version=a(o.text)),o}},e.createProgramHost=k,e.createWatchCompilerHostOfConfigFile=function(e){var t=e.configFileName,n=e.optionsToExtend,i=e.watchOptionsToExtend,a=e.extraFileExtensions,o=e.system,s=e.createProgram,c=e.reportDiagnostic,l=e.reportWatchStatus,u=c||r(o),d=x(o,s,u,l);return d.onUnRecoverableConfigFileDiagnostic=function(e){return E(o,u,e)},d.configFileName=t,d.optionsToExtend=n,d.watchOptionsToExtend=i,d.extraFileExtensions=a,d},e.createWatchCompilerHostOfFilesAndCompilerOptions=function(e){var t=e.rootFiles,n=e.options,i=e.watchOptions,a=e.projectReferences,o=e.system,s=e.createProgram,c=e.reportDiagnostic,l=e.reportWatchStatus,u=x(o,s,c||r(o),l);return u.rootFiles=t,u.options=n,u.watchOptions=i,u.projectReferences=a,u},e.performIncrementalCompilation=function(t){var n=t.system||e.sys,i=t.host||(t.host=e.createIncrementalCompilerHost(t.options,n)),a=e.createIncrementalProgram(t),o=v(a,t.reportDiagnostic||r(n),(function(e){return i.trace&&i.trace(e)}),t.reportErrorSummary||t.options.pretty?function(e){return n.write(l(e,n.newLine))}:void 0);return t.afterProgramEmitAndDiagnostics&&t.afterProgramEmitAndDiagnostics(a),o}}(d||(d={})),function(e){function t(t,r){if(!e.outFile(t)){var n=e.getTsBuildInfoEmitOutputFilePath(t);if(n){var i=r.readFile(n);if(i){var a=e.getBuildInfo(i);if(a.version===e.version&&a.program)return e.createBuildProgramUsingProgramBuildInfo(a.program,n,r)}}}}function r(t,r){void 0===r&&(r=e.sys);var n=e.createCompilerHostWorker(t,void 0,r);return n.createHash=e.maybeBind(r,r.createHash),e.setGetSourceFileAsHashVersioned(n,r),e.changeCompilerHostLikeToUseCache(n,(function(t){return e.toPath(t,n.getCurrentDirectory(),n.getCanonicalFileName)})),n}e.readBuilderProgram=t,e.createIncrementalCompilerHost=r,e.createIncrementalProgram=function(n){var i=n.rootNames,a=n.options,o=n.configFileParsingDiagnostics,s=n.projectReferences,c=n.host,l=n.createProgram;return c=c||r(a),(l=l||e.createEmitAndSemanticDiagnosticsBuilderProgram)(i,a,c,t(a,c),o,s)},e.createWatchCompilerHost=function(t,r,n,i,a,o,s,c){return e.isArray(t)?e.createWatchCompilerHostOfFilesAndCompilerOptions({rootFiles:t,options:r,watchOptions:c,projectReferences:s,system:n,createProgram:i,reportDiagnostic:a,reportWatchStatus:o}):e.createWatchCompilerHostOfConfigFile({configFileName:t,optionsToExtend:r,watchOptionsToExtend:s,extraFileExtensions:c,system:n,createProgram:i,reportDiagnostic:a,reportWatchStatus:o})},e.createWatchProgram=function(r){var n,a,o,s,c,l,u,d,p,f,m=new e.Map,g=!1,_=r.useCaseSensitiveFileNames(),h=r.getCurrentDirectory(),y=r.configFileName,v=r.optionsToExtend,b=void 0===v?{}:v,k=r.watchOptionsToExtend,x=r.extraFileExtensions,E=r.createProgram,S=r.rootFiles,D=r.options,w=r.watchOptions,T=r.projectReferences,C=!1,A=!1,N=void 0===y?void 0:e.createCachedDirectoryStructureHost(r,h,_),P=N||r,I=e.parseConfigHostFromCompilerHostLike(r,P),F=G();y&&r.configFileParsingResult&&(ue(r.configFileParsingResult),F=G()),te(e.Diagnostics.Starting_compilation_in_watch_mode),y&&!r.configFileParsingResult&&(F=e.getNewLineCharacter(b,(function(){return r.getNewLine()})),e.Debug.assert(!S),le(),F=G());var O,R=e.createWatchFactory(r,D),M=R.watchFile,L=R.watchDirectory,j=R.writeLog,B=e.createGetCanonicalFileName(_);j("Current directory: "+h+" CaseSensitiveFileNames: "+_),y&&(O=M(y,oe,e.PollingInterval.High,w,e.WatchType.ConfigFile));var z=e.createCompilerHostFromProgramHost(r,(function(){return D}),P);e.setGetSourceFileAsHashVersioned(z,r);var U=z.getSourceFile;z.getSourceFile=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return Q.apply(void 0,i([e,$(e)],t))},z.getSourceFileByPath=Q,z.getNewLine=function(){return F},z.fileExists=X,z.onReleaseOldSourceFile=function(e,t,r){var n=m.get(e.resolvedPath);void 0!==n&&(Y(n)?(d||(d=[])).push(e.path):n.sourceFile===e&&(n.fileWatcher&&n.fileWatcher.close(),m.delete(e.resolvedPath),r||q.removeResolutionsOfFile(e.path)))},z.toPath=$,z.getCompilationSettings=function(){return D},z.useSourceOfProjectReferenceRedirect=e.maybeBind(r,r.useSourceOfProjectReferenceRedirect),z.watchDirectoryOfFailedLookupLocation=function(t,r,n){return L(t,r,n,w,e.WatchType.FailedLookupLocations)},z.watchTypeRootsDirectory=function(t,r,n){return L(t,r,n,w,e.WatchType.TypeRoots)},z.getCachedDirectoryStructureHost=function(){return N},z.scheduleInvalidateResolutionsOfFailedLookupLocations=function(){if(!r.setTimeout||!r.clearTimeout)return q.invalidateResolutionsOfFailedLookupLocations();var e=ne();j("Scheduling invalidateFailedLookup"+(e?", Cancelled earlier one":"")),u=r.setTimeout(ie,250)},z.onInvalidatedResolution=ae,z.onChangedAutomaticTypeDirectiveNames=ae,z.fileIsOpen=e.returnFalse,z.getCurrentProgram=K,z.writeLog=j;var q=e.createResolutionCache(z,y?e.getDirectoryPath(e.getNormalizedAbsolutePath(y,h)):h,!1);z.resolveModuleNames=r.resolveModuleNames?function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.resolveModuleNames.apply(r,e)}:function(e,t,r,n){return q.resolveModuleNames(e,t,r,n)},z.resolveTypeReferenceDirectives=r.resolveTypeReferenceDirectives?function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.resolveTypeReferenceDirectives.apply(r,e)}:function(e,t,r){return q.resolveTypeReferenceDirectives(e,t,r)};var J=!!r.resolveModuleNames||!!r.resolveTypeReferenceDirectives;return n=t(D,z),W(),_e(),ye(),y?{getCurrentProgram:H,getProgram:ce,close:V}:{getCurrentProgram:H,getProgram:ce,updateRootFileNames:function(t){e.Debug.assert(!y,"Cannot update root file names with config file watch mode"),S=t,ae()},close:V};function V(){ne(),q.clear(),e.clearMap(m,(function(e){e&&e.fileWatcher&&(e.fileWatcher.close(),e.fileWatcher=void 0)})),O&&(O.close(),O=void 0),o&&(e.clearMap(o,e.closeFileWatcher),o=void 0),c&&(e.clearMap(c,e.closeFileWatcherOf),c=void 0),s&&(e.clearMap(s,e.closeFileWatcher),s=void 0)}function H(){return n}function K(){return n&&n.getProgramOrUndefined()}function W(){j("Synchronizing program"),ne();var t=H();g&&(F=G(),t&&e.changesAffectModuleResolution(t.getCompilerOptions(),D)&&q.clear());var i=q.createHasInvalidatedResolution(J);return e.isProgramUptoDate(K(),S,D,ee,X,i,re,T)?A&&(n=E(void 0,void 0,z,n,f,T),A=!1):function(t){j("CreatingProgramWith::"),j(" roots: "+JSON.stringify(S)),j(" options: "+JSON.stringify(D));var r=g||!K();g=!1,A=!1,q.startCachingPerDirectoryResolution(),z.hasInvalidatedResolution=t,z.hasChangedAutomaticTypeDirectiveNames=re,n=E(S,D,z,n,f,T),q.finishCachingPerDirectoryResolution(),e.updateMissingFilePathsWatch(n.getProgram(),s||(s=new e.Map),me),r&&q.updateTypeRootsWatch();if(d){for(var i=0,a=d;i<a.length;i++){var o=a[i];s.has(o)||m.delete(o)}d=void 0}}(i),r.afterProgramCreate&&t!==n&&r.afterProgramCreate(n),n}function G(){return e.getNewLineCharacter(D||b,(function(){return r.getNewLine()}))}function $(t){return e.toPath(t,h,B)}function Y(e){return"boolean"==typeof e}function X(e){var t=$(e);return!Y(m.get(t))&&P.fileExists(e)}function Q(t,r,n,i,a){var o=m.get(r);if(!Y(o)){if(void 0===o||a||function(e){return"boolean"==typeof e.version}(o)){var s=U(t,n,i);if(o)s?(o.sourceFile=s,o.version=s.version,o.fileWatcher||(o.fileWatcher=de(r,t,pe,e.PollingInterval.Low,w,e.WatchType.SourceFile))):(o.fileWatcher&&o.fileWatcher.close(),m.set(r,!1));else if(s){var c=de(r,t,pe,e.PollingInterval.Low,w,e.WatchType.SourceFile);m.set(r,{sourceFile:s,version:s.version,fileWatcher:c})}else m.set(r,!1);return s}return o.sourceFile}}function Z(e){var t=m.get(e);void 0!==t&&(Y(t)?m.set(e,{version:!1}):t.version=!1)}function ee(e){var t=m.get(e);return t&&t.version?t.version:void 0}function te(t){r.onWatchStatusChange&&r.onWatchStatusChange(e.createCompilerDiagnostic(t),F,D||b)}function re(){return q.hasChangedAutomaticTypeDirectiveNames()}function ne(){return!!u&&(r.clearTimeout(u),u=void 0,!0)}function ie(){u=void 0,q.invalidateResolutionsOfFailedLookupLocations()&&ae()}function ae(){r.setTimeout&&r.clearTimeout&&(l&&r.clearTimeout(l),j("Scheduling update"),l=r.setTimeout(se,250))}function oe(){e.Debug.assert(!!y),a=e.ConfigFileProgramReloadLevel.Full,ae()}function se(){l=void 0,te(e.Diagnostics.File_change_detected_Starting_incremental_compilation),ce()}function ce(){switch(a){case e.ConfigFileProgramReloadLevel.Partial:e.perfLogger.logStartUpdateProgram("PartialConfigReload"),function(){j("Reloading new file names and options"),S=e.getFileNamesFromConfigSpecs(D.configFile.configFileSpecs,e.getNormalizedAbsolutePath(e.getDirectoryPath(y),h),D,I,x),e.updateErrorForNoInputFiles(S,e.getNormalizedAbsolutePath(y,h),D.configFile.configFileSpecs,f,C)&&(A=!0);W()}();break;case e.ConfigFileProgramReloadLevel.Full:e.perfLogger.logStartUpdateProgram("FullConfigReload"),function(){j("Reloading config file: "+y),a=e.ConfigFileProgramReloadLevel.None,N&&N.clearCache();le(),g=!0,W(),_e(),ye()}();break;default:e.perfLogger.logStartUpdateProgram("SynchronizeProgram"),W()}return e.perfLogger.logStopUpdateProgram("Done"),H()}function le(){ue(e.getParsedCommandLineOfConfigFile(y,b,I,void 0,k,x))}function ue(t){S=t.fileNames,D=t.options,w=t.watchOptions,T=t.projectReferences,p=t.wildcardDirectories,f=e.getConfigFileParsingDiagnostics(t).slice(),C=e.canJsonReportNoInputFiles(t.raw),A=!0}function de(e,t,r,n,i,a){return M(t,(function(t,n){return r(t,n,e)}),n,i,a)}function pe(t,r,n){fe(t,n,r),r===e.FileWatcherEventKind.Deleted&&m.has(n)&&q.invalidateResolutionOfFile(n),q.removeResolutionsFromProjectReferenceRedirects(n),Z(n),ae()}function fe(e,t,r){N&&N.addOrDeleteFile(e,t,r)}function me(t){return de(t,t,ge,e.PollingInterval.Medium,w,e.WatchType.MissingFile)}function ge(t,r,n){fe(t,n,r),r===e.FileWatcherEventKind.Created&&s.has(n)&&(s.get(n).close(),s.delete(n),Z(n),ae())}function _e(){p?e.updateWatchingWildcardDirectories(c||(c=new e.Map),new e.Map(e.getEntries(p)),he):c&&e.clearMap(c,e.closeFileWatcherOf)}function he(t,r){return L(t,(function(r){e.Debug.assert(!!y);var n=$(r);N&&N.addOrDeleteFileOrDirectory(r,n),Z(n),e.isIgnoredFileFromWildCardWatching({watchedDirPath:$(t),fileOrDirectory:r,fileOrDirectoryPath:n,configFileName:y,extraFileExtensions:x,options:D,program:H(),currentDirectory:h,useCaseSensitiveFileNames:_,writeLog:j})||a!==e.ConfigFileProgramReloadLevel.Full&&(a=e.ConfigFileProgramReloadLevel.Partial,ae())}),r,w,e.WatchType.WildcardDirectory)}function ye(){var t;e.mutateMap(o||(o=new e.Map),e.arrayToMap((null===(t=D.configFile)||void 0===t?void 0:t.extendedSourceFiles)||e.emptyArray,$),{createNewValue:ve,onDeleteValue:e.closeFileWatcher})}function ve(t){return M(t,oe,e.PollingInterval.High,w,e.WatchType.ExtendedConfigFile)}}}(d||(d={})),function(e){!function(e){e[e.Unbuildable=0]="Unbuildable",e[e.UpToDate=1]="UpToDate",e[e.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",e[e.OutOfDateWithPrepend=3]="OutOfDateWithPrepend",e[e.OutputMissing=4]="OutputMissing",e[e.OutOfDateWithSelf=5]="OutOfDateWithSelf",e[e.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",e[e.UpstreamOutOfDate=7]="UpstreamOutOfDate",e[e.UpstreamBlocked=8]="UpstreamBlocked",e[e.ComputingUpstream=9]="ComputingUpstream",e[e.TsVersionOutputOfDate=10]="TsVersionOutputOfDate",e[e.ContainerOnly=11]="ContainerOnly"}(e.UpToDateStatusType||(e.UpToDateStatusType={})),e.resolveConfigFileProjectName=function(t){return e.fileExtensionIs(t,".json")?t:e.combinePaths(t,"tsconfig.json")}}(d||(d={})),function(e){var t,r,n,a=new Date(-864e13),o=new Date(864e13);function s(t,r){return function(e,t,r){var n,i=e.get(t);return i||(n=r(),e.set(t,n)),i||n}(t,r,(function(){return new e.Map}))}function c(e,t){return t>e?t:e}function l(t){return e.fileExtensionIs(t,".d.ts")||e.fileExtensionIs(t,".d.ets")}function u(e){return!!e&&!!e.buildOrder}function d(e){return u(e)?e.buildOrder:e}function p(t,r){return function(n){var i=r?"["+e.formatColorAndReset(e.getLocaleTimeString(t),e.ForegroundColorEscapeSequences.Grey)+"] ":e.getLocaleTimeString(t)+" - ";i+=""+e.flattenDiagnosticMessageText(n.messageText,t.newLine)+(t.newLine+t.newLine),t.write(i)}}function f(t,r,n,i){var a=e.createProgramHost(t,r);return a.getModifiedTime=t.getModifiedTime?function(e){return t.getModifiedTime(e)}:e.returnUndefined,a.setModifiedTime=t.setModifiedTime?function(e,r){return t.setModifiedTime(e,r)}:e.noop,a.deleteFile=t.deleteFile?function(e){return t.deleteFile(e)}:e.noop,a.reportDiagnostic=n||e.createDiagnosticReporter(t),a.reportSolutionBuilderStatus=i||p(t),a.now=e.maybeBind(t,t.now),a}function m(t,r,n,i,a){var o,s,c=r,l=r,u=c.getCurrentDirectory(),d=e.createGetCanonicalFileName(c.useCaseSensitiveFileNames()),p=(o=i,s={},e.commonOptionsWithBuild.forEach((function(t){e.hasProperty(o,t.name)&&(s[t.name]=o[t.name])})),s),f=e.createCompilerHostFromProgramHost(c,(function(){return x.projectCompilerOptions}));e.setGetSourceFileAsHashVersioned(f,c),f.getParsedCommandLine=function(e){return y(x,e,_(x,e))},f.resolveModuleNames=e.maybeBind(c,c.resolveModuleNames),f.resolveTypeReferenceDirectives=e.maybeBind(c,c.resolveTypeReferenceDirectives);var m=f.resolveModuleNames?void 0:e.createModuleResolutionCache(u,d);if(!f.resolveModuleNames){var g=function(t,r,n){return e.resolveModuleName(t,r,x.projectCompilerOptions,f,m,n).resolvedModule};f.resolveModuleNames=function(t,r,n,i){return e.loadWithLocalCache(e.Debug.checkEachDefined(t),r,i,g)}}var h=e.createWatchFactory(l,i),v=h.watchFile,b=h.watchDirectory,k=h.writeLog,x={host:c,hostWithWatch:l,currentDirectory:u,getCanonicalFileName:d,parseConfigFileHost:e.parseConfigHostFromCompilerHostLike(c),write:e.maybeBind(c,c.trace),options:i,baseCompilerOptions:p,rootNames:n,baseWatchOptions:a,resolvedConfigFilePaths:new e.Map,configFileCache:new e.Map,projectStatus:new e.Map,buildInfoChecked:new e.Map,extendedConfigCache:new e.Map,builderPrograms:new e.Map,diagnostics:new e.Map,projectPendingBuild:new e.Map,projectErrorsReported:new e.Map,compilerHost:f,moduleResolutionCache:m,buildOrder:void 0,readFileWithCache:function(e){return c.readFile(e)},projectCompilerOptions:p,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:t,currentInvalidatedProject:void 0,watch:t,allWatchedWildcardDirectories:new e.Map,allWatchedInputFiles:new e.Map,allWatchedConfigFiles:new e.Map,allWatchedExtendedConfigFiles:new e.Map,timerToBuildInvalidatedProject:void 0,reportFileChangeDetected:!1,watchFile:v,watchDirectory:b,writeLog:k};return x}function g(t,r){return e.toPath(r,t.currentDirectory,t.getCanonicalFileName)}function _(e,t){var r=e.resolvedConfigFilePaths,n=r.get(t);if(void 0!==n)return n;var i=g(e,t);return r.set(t,i),i}function h(e){return!!e.options}function y(t,r,n){var i,a=t.configFileCache,o=a.get(n);if(o)return h(o)?o:void 0;var s,c=t.parseConfigFileHost,l=t.baseCompilerOptions,u=t.baseWatchOptions,d=t.extendedConfigCache,p=t.host;return p.getParsedCommandLine?(s=p.getParsedCommandLine(r))||(i=e.createCompilerDiagnostic(e.Diagnostics.File_0_not_found,r)):(c.onUnRecoverableConfigFileDiagnostic=function(e){return i=e},s=e.getParsedCommandLineOfConfigFile(r,l,c,d,u),c.onUnRecoverableConfigFileDiagnostic=e.noop),a.set(n,s||i),s}function v(t,r){return e.resolveConfigFileProjectName(e.resolvePath(t.currentDirectory,r))}function b(t,r){for(var n,i,a=new e.Map,o=new e.Map,s=[],c=0,l=r;c<l.length;c++){u(l[c])}return i?{buildOrder:n||e.emptyArray,circularDiagnostics:i}:n||e.emptyArray;function u(r,c){var l=_(t,r);if(!o.has(l))if(a.has(l))c||(i||(i=[])).push(e.createCompilerDiagnostic(e.Diagnostics.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,s.join("\r\n")));else{a.set(l,!0),s.push(r);var d=y(t,r,l);if(d&&d.projectReferences)for(var p=0,f=d.projectReferences;p<f.length;p++){var m=f[p];u(v(t,m.path),c||m.circular)}s.pop(),o.set(l,!0),(n||(n=[])).push(r)}}}function k(t){return t.buildOrder||function(t){var r=b(t,t.rootNames.map((function(e){return v(t,e)})));t.resolvedConfigFilePaths.clear();var n=new e.Map(d(r).map((function(e){return[_(t,e),!0]}))),i={onDeleteValue:e.noop};e.mutateMapSkippingNewValues(t.configFileCache,n,i),e.mutateMapSkippingNewValues(t.projectStatus,n,i),e.mutateMapSkippingNewValues(t.buildInfoChecked,n,i),e.mutateMapSkippingNewValues(t.builderPrograms,n,i),e.mutateMapSkippingNewValues(t.diagnostics,n,i),e.mutateMapSkippingNewValues(t.projectPendingBuild,n,i),e.mutateMapSkippingNewValues(t.projectErrorsReported,n,i),t.watch&&(e.mutateMapSkippingNewValues(t.allWatchedConfigFiles,n,{onDeleteValue:e.closeFileWatcher}),t.allWatchedExtendedConfigFiles.forEach((function(e){e.projects.forEach((function(t){n.has(t)||e.projects.delete(t)})),e.close()})),e.mutateMapSkippingNewValues(t.allWatchedWildcardDirectories,n,{onDeleteValue:function(t){return t.forEach(e.closeFileWatcherOf)}}),e.mutateMapSkippingNewValues(t.allWatchedInputFiles,n,{onDeleteValue:function(t){return t.forEach(e.closeFileWatcher)}}));return t.buildOrder=r}(t)}function x(t,r,n){var i=r&&v(t,r),a=k(t);if(u(a))return a;if(i){var o=_(t,i);if(-1===e.findIndex(a,(function(e){return _(t,e)===o})))return}var s=i?b(t,[i]):a;return e.Debug.assert(!u(s)),e.Debug.assert(!n||void 0!==i),e.Debug.assert(!n||s[s.length-1]===i),n?s.slice(0,s.length-1):s}function E(t){t.cache&&S(t);var r=t.compilerHost,n=t.host,a=t.readFileWithCache,o=r.getSourceFile,s=e.changeCompilerHostLikeToUseCache(n,(function(e){return g(t,e)}),(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return o.call.apply(o,i([r],e))})),c=s.originalReadFile,l=s.originalFileExists,u=s.originalDirectoryExists,d=s.originalCreateDirectory,p=s.originalWriteFile,f=s.getSourceFileWithCache,m=s.readFileWithCache;t.readFileWithCache=m,r.getSourceFile=f,t.cache={originalReadFile:c,originalFileExists:l,originalDirectoryExists:u,originalCreateDirectory:d,originalWriteFile:p,originalReadFileWithCache:a,originalGetSourceFile:o}}function S(e){if(e.cache){var t=e.cache,r=e.host,n=e.compilerHost,i=e.extendedConfigCache,a=e.moduleResolutionCache;r.readFile=t.originalReadFile,r.fileExists=t.originalFileExists,r.directoryExists=t.originalDirectoryExists,r.createDirectory=t.originalCreateDirectory,r.writeFile=t.originalWriteFile,n.getSourceFile=t.originalGetSourceFile,e.readFileWithCache=t.originalReadFileWithCache,i.clear(),a&&(a.directoryToModuleNameMap.clear(),a.moduleNameToDirectoryMap.clear()),e.cache=void 0}}function D(e,t){e.projectStatus.delete(t),e.diagnostics.delete(t)}function w(e,t,r){var n=e.projectPendingBuild,i=n.get(t);(void 0===i||i<r)&&n.set(t,r)}function T(t,r){t.allProjectBuildPending&&(t.allProjectBuildPending=!1,t.options.watch&&ee(t,e.Diagnostics.Starting_compilation_in_watch_mode),E(t),d(k(t)).forEach((function(r){return t.projectPendingBuild.set(_(t,r),e.ConfigFileProgramReloadLevel.None)})),r&&r.throwIfCancellationRequested())}function C(t,r){return t.projectPendingBuild.delete(r),t.currentInvalidatedProject=void 0,t.diagnostics.has(r)?e.ExitStatus.DiagnosticsPresent_OutputsSkipped:e.ExitStatus.Success}function A(e,t,n,i,a){var o=!0;return{kind:r.UpdateOutputFileStamps,project:t,projectPath:n,buildOrder:a,getCompilerOptions:function(){return i.options},getCurrentDirectory:function(){return e.currentDirectory},updateOutputFileStatmps:function(){B(e,i,n),o=!1},done:function(){return o&&B(e,i,n),C(e,n)}}}function N(s,u,d,p,f,m,h){var b,k,x,E=s===r.Build?n.CreateProgram:n.EmitBundle;return s===r.Build?{kind:s,project:d,projectPath:p,buildOrder:h,getCompilerOptions:function(){return m.options},getCurrentDirectory:function(){return u.currentDirectory},getBuilderProgram:function(){return D(e.identity)},getProgram:function(){return D((function(e){return e.getProgramOrUndefined()}))},getSourceFile:function(e){return D((function(t){return t.getSourceFile(e)}))},getSourceFiles:function(){return w((function(e){return e.getSourceFiles()}))},getOptionsDiagnostics:function(e){return w((function(t){return t.getOptionsDiagnostics(e)}))},getGlobalDiagnostics:function(e){return w((function(t){return t.getGlobalDiagnostics(e)}))},getConfigFileParsingDiagnostics:function(){return w((function(e){return e.getConfigFileParsingDiagnostics()}))},getSyntacticDiagnostics:function(e,t){return w((function(r){return r.getSyntacticDiagnostics(e,t)}))},getAllDependencies:function(e){return w((function(t){return t.getAllDependencies(e)}))},getSemanticDiagnostics:function(e,t){return w((function(r){return r.getSemanticDiagnostics(e,t)}))},getSemanticDiagnosticsOfNextAffectedFile:function(e,t){return D((function(r){return r.getSemanticDiagnosticsOfNextAffectedFile&&r.getSemanticDiagnosticsOfNextAffectedFile(e,t)}))},emit:function(e,t,r,i,a){return e||i?D((function(n){return n.emit(e,t,r,i,a)})):(q(n.SemanticDiagnostics,r),E===n.EmitBuildInfo?L(t,r):E===n.Emit?M(t,r,a):void 0)},done:S}:{kind:s,project:d,projectPath:p,buildOrder:h,getCompilerOptions:function(){return m.options},getCurrentDirectory:function(){return u.currentDirectory},emit:function(e,t){return E!==n.EmitBundle?x:U(e,t)},done:S};function S(e,t,r){return q(n.Done,e,t,r),C(u,p)}function D(e){return q(n.CreateProgram),b&&e(b)}function w(t){return D(t)||e.emptyArray}function T(){if(e.Debug.assert(void 0===b),u.options.dry)return Z(u,e.Diagnostics.A_non_dry_build_would_build_project_0,d),k=t.Success,void(E=n.QueueReferencingProjects);if(u.options.verbose&&Z(u,e.Diagnostics.Building_project_0,d),0===m.fileNames.length)return re(u,p,e.getConfigFileParsingDiagnostics(m)),k=t.None,void(E=n.QueueReferencingProjects);var r=u.host,i=u.compilerHost;u.projectCompilerOptions=m.options,function(t,r,n){if(!t.moduleResolutionCache)return;var i=t.moduleResolutionCache,a=g(t,r);if(0===i.directoryToModuleNameMap.redirectsMap.size)e.Debug.assert(0===i.moduleNameToDirectoryMap.redirectsMap.size),i.directoryToModuleNameMap.redirectsMap.set(a,i.directoryToModuleNameMap.ownMap),i.moduleNameToDirectoryMap.redirectsMap.set(a,i.moduleNameToDirectoryMap.ownMap);else{e.Debug.assert(i.moduleNameToDirectoryMap.redirectsMap.size>0);var o={sourceFile:n.options.configFile,commandLine:n};i.directoryToModuleNameMap.setOwnMap(i.directoryToModuleNameMap.getOrCreateMapOfCacheRedirects(o)),i.moduleNameToDirectoryMap.setOwnMap(i.moduleNameToDirectoryMap.getOrCreateMapOfCacheRedirects(o))}i.directoryToModuleNameMap.setOwnOptions(n.options),i.moduleNameToDirectoryMap.setOwnOptions(n.options)}(u,d,m),b=r.createProgram(m.fileNames,m.options,i,function(t,r,n){var i=t.options,a=t.builderPrograms,o=t.compilerHost;if(i.force)return;var s=a.get(r);return s||e.readBuilderProgram(n.options,o)}(u,p,m),e.getConfigFileParsingDiagnostics(m),m.projectReferences),u.watch&&u.builderPrograms.set(p,b),E++}function A(e,t,r){var n;e.length?(n=R(u,p,b,m,e,t,r),k=n.buildResult,E=n.step):E++}function P(r){e.Debug.assertIsDefined(b),A(i(i(i(i([],b.getConfigFileParsingDiagnostics()),b.getOptionsDiagnostics(r)),b.getGlobalDiagnostics(r)),b.getSyntacticDiagnostics(void 0,r)),t.SyntaxErrors,"Syntactic")}function I(r){A(e.Debug.checkDefined(b).getSemanticDiagnostics(void 0,r),t.TypeErrors,"Semantic")}function M(r,i,o){var s,d;e.Debug.assertIsDefined(b),e.Debug.assert(E===n.Emit),b.backupState();var f=[],_=e.emitFilesAndReportErrors(b,(function(e){return(d||(d=[])).push(e)}),void 0,void 0,(function(e,t,r){return f.push({name:e,text:t,writeByteOrderMark:r})}),i,!1,o).emitResult;if(d)return b.restoreState(),s=R(u,p,b,m,d,t.DeclarationEmitErrors,"Declaration file"),k=s.buildResult,E=s.step,{emitSkipped:!0,diagnostics:_.diagnostics};var h=u.host,y=u.compilerHost,v=t.DeclarationOutputUnchanged,x=a,S=!1,D=e.createDiagnosticCollection(),w=new e.Map;return f.forEach((function(n){var i,a=n.name,o=n.text,s=n.writeByteOrderMark;!S&&l(a)&&(h.fileExists(a)&&u.readFileWithCache(a)===o?i=h.getModifiedTime(a):(v&=~t.DeclarationOutputUnchanged,S=!0)),w.set(g(u,a),a),e.writeFile(r?{writeFile:r}:y,D,a,o,s),void 0!==i&&(x=c(i,x))})),B(D,w,x,S,f.length?f[0].name:e.getFirstProjectOutput(m,!h.useCaseSensitiveFileNames()),v),_}function L(r,a){e.Debug.assertIsDefined(b),e.Debug.assert(E===n.EmitBuildInfo);var o=b.emitBuildInfo(r,a);return o.diagnostics.length&&(te(u,o.diagnostics),u.diagnostics.set(p,i(i([],u.diagnostics.get(p)),o.diagnostics)),k=t.EmitErrors&k),o.emittedFiles&&u.write&&o.emittedFiles.forEach((function(e){return F(u,m,e)})),O(u,b,m),E=n.QueueReferencingProjects,o}function B(r,i,a,s,c,l){var d,f=r.getDiagnostics();if(f.length)return d=R(u,p,b,m,f,t.EmitErrors,"Emit"),k=d.buildResult,E=d.step,f;u.write&&i.forEach((function(e){return F(u,m,e)}));var g=j(u,m,a,e.Diagnostics.Updating_unchanged_output_timestamps_of_project_0,i);return u.diagnostics.delete(p),u.projectStatus.set(p,{type:e.UpToDateStatusType.UpToDate,newestDeclarationFileContentChangedTime:s?o:g,oldestOutputFileName:c}),O(u,b,m),E=n.QueueReferencingProjects,k=l,f}function U(i,o){if(e.Debug.assert(s===r.UpdateBundle),u.options.dry)return Z(u,e.Diagnostics.A_non_dry_build_would_update_output_of_project_0,d),k=t.Success,void(E=n.QueueReferencingProjects);u.options.verbose&&Z(u,e.Diagnostics.Updating_output_of_project_0,d);var c=u.compilerHost;u.projectCompilerOptions=m.options;var l=e.emitUsingBuildInfo(m,c,(function(e){var t=v(u,e.path);return y(u,t,_(u,t))}),o);if(e.isString(l))return Z(u,e.Diagnostics.Cannot_update_output_of_project_0_because_there_was_error_reading_file_1,d,Q(u,l)),E=n.BuildInvalidatedProjectOfBundle,x=N(r.Build,u,d,p,f,m,h);e.Debug.assert(!!l.length);var b=e.createDiagnosticCollection(),S=new e.Map;return l.forEach((function(t){var r=t.name,n=t.text,a=t.writeByteOrderMark;S.set(g(u,r),r),e.writeFile(i?{writeFile:i}:c,b,r,n,a)})),{emitSkipped:!1,diagnostics:B(b,S,a,!1,l[0].name,t.DeclarationOutputUnchanged)}}function q(t,r,i,a){for(;E<=t&&E<n.Done;){var o=E;switch(E){case n.CreateProgram:T();break;case n.SyntaxDiagnostics:P(r);break;case n.SemanticDiagnostics:I(r);break;case n.Emit:M(i,r,a);break;case n.EmitBuildInfo:L(i,r);break;case n.EmitBundle:U(i,a);break;case n.BuildInvalidatedProjectOfBundle:e.Debug.checkDefined(x).done(r),E=n.Done;break;case n.QueueReferencingProjects:z(u,d,p,f,m,h,e.Debug.checkDefined(k)),E++;break;case n.Done:default:e.assertType(E)}e.Debug.assert(E>o)}}}function P(t,r,n){var i=t.options;return!(r.type===e.UpToDateStatusType.OutOfDateWithPrepend&&!i.force)||(0===n.fileNames.length||!!e.getConfigFileParsingDiagnostics(n).length||!e.isIncrementalCompilation(n.options))}function I(t,n,i){if(t.projectPendingBuild.size&&!u(n)){if(t.currentInvalidatedProject)return e.arrayIsEqualTo(t.currentInvalidatedProject.buildOrder,n)?t.currentInvalidatedProject:void 0;for(var a=t.options,o=t.projectPendingBuild,s=0;s<n.length;s++){var c=n[s],l=_(t,c),d=t.projectPendingBuild.get(l);if(void 0!==d){i&&(i=!1,ae(t,n));var p=y(t,c,l);if(p){d===e.ConfigFileProgramReloadLevel.Full?(W(t,c,l,p),G(t,l,p),$(t,c,l,p),Y(t,c,l,p)):d===e.ConfigFileProgramReloadLevel.Partial&&(p.fileNames=e.getFileNamesFromConfigSpecs(p.options.configFile.configFileSpecs,e.getDirectoryPath(c),p.options,t.parseConfigFileHost),e.updateErrorForNoInputFiles(p.fileNames,c,p.options.configFile.configFileSpecs,p.errors,e.canJsonReportNoInputFiles(p.raw)),Y(t,c,l,p));var f=L(t,p,l);if(oe(t,c,f),!a.force){if(f.type===e.UpToDateStatusType.UpToDate){re(t,l,e.getConfigFileParsingDiagnostics(p)),o.delete(l),a.dry&&Z(t,e.Diagnostics.Project_0_is_up_to_date,c);continue}if(f.type===e.UpToDateStatusType.UpToDateWithUpstreamTypes)return re(t,l,e.getConfigFileParsingDiagnostics(p)),A(t,c,l,p,n)}if(f.type!==e.UpToDateStatusType.UpstreamBlocked){if(f.type!==e.UpToDateStatusType.ContainerOnly)return N(P(t,f,p)?r.Build:r.UpdateBundle,t,c,l,s,p,n);re(t,l,e.getConfigFileParsingDiagnostics(p)),o.delete(l)}else re(t,l,e.getConfigFileParsingDiagnostics(p)),o.delete(l),a.verbose&&Z(t,f.upstreamProjectBlocked?e.Diagnostics.Skipping_build_of_project_0_because_its_dependency_1_was_not_built:e.Diagnostics.Skipping_build_of_project_0_because_its_dependency_1_has_errors,c,f.upstreamProjectName)}else ne(t,l),o.delete(l)}}}}function F(e,t,r){var n=e.write;n&&t.options.listEmittedFiles&&n("TSFILE: "+r)}function O(t,r,n){r?(r&&t.write&&e.listFiles(r,t.write),t.host.afterProgramEmitAndDiagnostics&&t.host.afterProgramEmitAndDiagnostics(r),r.releaseProgram()):t.host.afterEmitBundle&&t.host.afterEmitBundle(n),t.projectCompilerOptions=t.baseCompilerOptions}function R(r,i,a,o,s,c,l){var u=!(c&t.SyntaxErrors)&&a&&!e.outFile(a.getCompilerOptions());return re(r,i,s),r.projectStatus.set(i,{type:e.UpToDateStatusType.Unbuildable,reason:l+" errors"}),u?{buildResult:c,step:n.EmitBuildInfo}:(O(r,a,o),{buildResult:c,step:n.QueueReferencingProjects})}function M(t,r,n,i){if(n<(t.host.getModifiedTime(r)||e.missingFileModifiedTime))return{type:e.UpToDateStatusType.OutOfDateWithSelf,outOfDateOutputFileName:i,newerInputFileName:r}}function L(t,r,n){if(void 0===r)return{type:e.UpToDateStatusType.Unbuildable,reason:"File deleted mid-build"};var i=t.projectStatus.get(n);if(void 0!==i)return i;var s=function(t,r,n){for(var i=void 0,s=a,u=t.host,d=0,p=r.fileNames;d<p.length;d++){var f=p[d];if(!u.fileExists(f))return{type:e.UpToDateStatusType.Unbuildable,reason:f+" does not exist"};var m=u.getModifiedTime(f)||e.missingFileModifiedTime;m>s&&(i=f,s=m)}if(!r.fileNames.length&&!e.canJsonReportNoInputFiles(r.raw))return{type:e.UpToDateStatusType.ContainerOnly};for(var g,h=e.getAllProjectOutputs(r,!u.useCaseSensitiveFileNames()),v="(none)",b=o,k="(none)",x=a,E=a,S=!1,D=0,w=h;D<w.length;D++){var T=w[D];if(!u.fileExists(T)){g=T;break}var C=u.getModifiedTime(T)||e.missingFileModifiedTime;if(C<b&&(b=C,v=T),C<s){S=!0;break}C>x&&(x=C,k=T),l(T)&&(E=c(E,u.getModifiedTime(T)||e.missingFileModifiedTime))}var A,N=!1,P=!1;if(r.projectReferences){t.projectStatus.set(n,{type:e.UpToDateStatusType.ComputingUpstream});for(var I=0,F=r.projectReferences;I<F.length;I++){var O=F[I];P=P||!!O.prepend;var R=e.resolveProjectReferencePath(O),j=_(t,R),B=L(t,y(t,R,j),j);if(B.type!==e.UpToDateStatusType.ComputingUpstream&&B.type!==e.UpToDateStatusType.ContainerOnly){if(B.type===e.UpToDateStatusType.Unbuildable||B.type===e.UpToDateStatusType.UpstreamBlocked)return{type:e.UpToDateStatusType.UpstreamBlocked,upstreamProjectName:O.path,upstreamProjectBlocked:B.type===e.UpToDateStatusType.UpstreamBlocked};if(B.type!==e.UpToDateStatusType.UpToDate)return{type:e.UpToDateStatusType.UpstreamOutOfDate,upstreamProjectName:O.path};if(!g){if(B.newestInputFileTime&&B.newestInputFileTime<=b)continue;if(B.newestDeclarationFileContentChangedTime&&B.newestDeclarationFileContentChangedTime<=b){N=!0,A=O.path;continue}return e.Debug.assert(void 0!==v,"Should have an oldest output filename here"),{type:e.UpToDateStatusType.OutOfDateWithUpstream,outOfDateOutputFileName:v,newerProjectName:O.path}}}}}if(void 0!==g)return{type:e.UpToDateStatusType.OutputMissing,missingOutputFileName:g};if(S)return{type:e.UpToDateStatusType.OutOfDateWithSelf,outOfDateOutputFileName:v,newerInputFileName:i};var z=M(t,r.options.configFilePath,b,v);if(z)return z;var U=e.forEach(r.options.configFile.extendedSourceFiles||e.emptyArray,(function(e){return M(t,e,b,v)}));if(U)return U;if(!t.buildInfoChecked.has(n)){t.buildInfoChecked.set(n,!0);var q=e.getTsBuildInfoEmitOutputFilePath(r.options);if(q){var J=t.readFileWithCache(q),V=J&&e.getBuildInfo(J);if(V&&(V.bundle||V.program)&&V.version!==e.version)return{type:e.UpToDateStatusType.TsVersionOutputOfDate,version:V.version}}}return P&&N?{type:e.UpToDateStatusType.OutOfDateWithPrepend,outOfDateOutputFileName:v,newerProjectName:A}:{type:N?e.UpToDateStatusType.UpToDateWithUpstreamTypes:e.UpToDateStatusType.UpToDate,newestDeclarationFileContentChangedTime:E,newestInputFileTime:s,newestOutputFileTime:x,newestInputFileName:i,newestOutputFileName:k,oldestOutputFileName:v}}(t,r,n);return t.projectStatus.set(n,s),s}function j(t,r,n,i,a){var o=t.host,s=e.getAllProjectOutputs(r,!o.useCaseSensitiveFileNames());if(!a||s.length!==a.size)for(var u=!!t.options.verbose,d=o.now?o.now():new Date,p=0,f=s;p<f.length;p++){var m=f[p];a&&a.has(g(t,m))||(u&&(u=!1,Z(t,i,r.options.configFilePath)),l(m)&&(n=c(n,o.getModifiedTime(m)||e.missingFileModifiedTime)),o.setModifiedTime(m,d))}return n}function B(t,r,n){if(t.options.dry)return Z(t,e.Diagnostics.A_non_dry_build_would_update_timestamps_for_output_of_project_0,r.options.configFilePath);var i=j(t,r,a,e.Diagnostics.Updating_output_timestamps_of_project_0);t.projectStatus.set(n,{type:e.UpToDateStatusType.UpToDate,newestDeclarationFileContentChangedTime:i,oldestOutputFileName:e.getFirstProjectOutput(r,!t.host.useCaseSensitiveFileNames())})}function z(r,n,i,a,o,s,c){if(!(c&t.AnyErrors)&&o.options.composite)for(var l=a+1;l<s.length;l++){var u=s[l],d=_(r,u);if(!r.projectPendingBuild.has(d)){var p=y(r,u,d);if(p&&p.projectReferences)for(var f=0,m=p.projectReferences;f<m.length;f++){var g=m[f];if(_(r,v(r,g.path))===i){var h=r.projectStatus.get(d);if(h)switch(h.type){case e.UpToDateStatusType.UpToDate:if(c&t.DeclarationOutputUnchanged){g.prepend?r.projectStatus.set(d,{type:e.UpToDateStatusType.OutOfDateWithPrepend,outOfDateOutputFileName:h.oldestOutputFileName,newerProjectName:n}):h.type=e.UpToDateStatusType.UpToDateWithUpstreamTypes;break}case e.UpToDateStatusType.UpToDateWithUpstreamTypes:case e.UpToDateStatusType.OutOfDateWithPrepend:c&t.DeclarationOutputUnchanged||r.projectStatus.set(d,{type:e.UpToDateStatusType.OutOfDateWithUpstream,outOfDateOutputFileName:h.type===e.UpToDateStatusType.OutOfDateWithPrepend?h.outOfDateOutputFileName:h.oldestOutputFileName,newerProjectName:n});break;case e.UpToDateStatusType.UpstreamBlocked:_(r,v(r,h.upstreamProjectName))===i&&D(r,d)}w(r,d,e.ConfigFileProgramReloadLevel.None);break}}}}}function U(t,r,n,i){var a=x(t,r,i);if(!a)return e.ExitStatus.InvalidProject_OutputsSkipped;T(t,n);for(var o=!0,s=0;;){var c=I(t,a,o);if(!c)break;o=!1,c.done(n),t.diagnostics.has(c.projectPath)||s++}return S(t),ie(t,a),function(e,t){if(!e.watchAllProjectsPending)return;e.watchAllProjectsPending=!1;for(var r=0,n=d(t);r<n.length;r++){var i=n[r],a=_(e,i),o=y(e,i,a);W(e,i,a,o),G(e,a,o),o&&($(e,i,a,o),Y(e,i,a,o))}}(t,a),u(a)?e.ExitStatus.ProjectReferenceCycle_OutputsSkipped:a.some((function(e){return t.diagnostics.has(_(t,e))}))?s?e.ExitStatus.DiagnosticsPresent_OutputsGenerated:e.ExitStatus.DiagnosticsPresent_OutputsSkipped:e.ExitStatus.Success}function q(t,r,n){var i=x(t,r,n);if(!i)return e.ExitStatus.InvalidProject_OutputsSkipped;if(u(i))return te(t,i.circularDiagnostics),e.ExitStatus.ProjectReferenceCycle_OutputsSkipped;for(var a=t.options,o=t.host,s=a.dry?[]:void 0,c=0,l=i;c<l.length;c++){var d=l[c],p=_(t,d),f=y(t,d,p);if(void 0!==f)for(var m=0,g=e.getAllProjectOutputs(f,!o.useCaseSensitiveFileNames());m<g.length;m++){var h=g[m];o.fileExists(h)&&(s?s.push(h):(o.deleteFile(h),J(t,p,e.ConfigFileProgramReloadLevel.None)))}else ne(t,p)}return s&&Z(t,e.Diagnostics.A_non_dry_build_would_delete_the_following_files_Colon_0,s.map((function(e){return"\r\n * "+e})).join("")),e.ExitStatus.Success}function J(t,r,n){t.host.getParsedCommandLine&&n===e.ConfigFileProgramReloadLevel.Partial&&(n=e.ConfigFileProgramReloadLevel.Full),n===e.ConfigFileProgramReloadLevel.Full&&(t.configFileCache.delete(r),t.buildOrder=void 0),t.needsSummary=!0,D(t,r),w(t,r,n),E(t)}function V(e,t,r){e.reportFileChangeDetected=!0,J(e,t,r),H(e)}function H(e){var t=e.hostWithWatch;t.setTimeout&&t.clearTimeout&&(e.timerToBuildInvalidatedProject&&t.clearTimeout(e.timerToBuildInvalidatedProject),e.timerToBuildInvalidatedProject=t.setTimeout(K,250,e))}function K(t){t.timerToBuildInvalidatedProject=void 0,t.reportFileChangeDetected&&(t.reportFileChangeDetected=!1,t.projectErrorsReported.clear(),ee(t,e.Diagnostics.File_change_detected_Starting_incremental_compilation));var r=k(t),n=I(t,r,!1);n&&(n.done(),t.projectPendingBuild.size)?t.watch&&!t.timerToBuildInvalidatedProject&&H(t):(S(t),ie(t,r))}function W(t,r,n,i){t.watch&&!t.allWatchedConfigFiles.has(n)&&t.allWatchedConfigFiles.set(n,t.watchFile(r,(function(){V(t,n,e.ConfigFileProgramReloadLevel.Full)}),e.PollingInterval.High,null==i?void 0:i.watchOptions,e.WatchType.ConfigFile,r))}function G(t,r,n){e.updateSharedExtendedConfigFileWatcher(r,n,t.allWatchedExtendedConfigFiles,(function(r,i){return t.watchFile(r,(function(){var r;return null===(r=t.allWatchedExtendedConfigFiles.get(i))||void 0===r?void 0:r.projects.forEach((function(r){return V(t,r,e.ConfigFileProgramReloadLevel.Full)}))}),e.PollingInterval.High,null==n?void 0:n.watchOptions,e.WatchType.ExtendedConfigFile)}),(function(e){return g(t,e)}))}function $(t,r,n,i){t.watch&&e.updateWatchingWildcardDirectories(s(t.allWatchedWildcardDirectories,n),new e.Map(e.getEntries(i.wildcardDirectories)),(function(a,o){return t.watchDirectory(a,(function(o){e.isIgnoredFileFromWildCardWatching({watchedDirPath:g(t,a),fileOrDirectory:o,fileOrDirectoryPath:g(t,o),configFileName:r,currentDirectory:t.currentDirectory,options:i.options,program:t.builderPrograms.get(n),useCaseSensitiveFileNames:t.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:function(e){return t.writeLog(e)}})||V(t,n,e.ConfigFileProgramReloadLevel.Partial)}),o,null==i?void 0:i.watchOptions,e.WatchType.WildcardDirectory,r)}))}function Y(t,r,n,i){t.watch&&e.mutateMap(s(t.allWatchedInputFiles,n),e.arrayToMap(i.fileNames,(function(e){return g(t,e)})),{createNewValue:function(a,o){return t.watchFile(o,(function(){return V(t,n,e.ConfigFileProgramReloadLevel.None)}),e.PollingInterval.Low,null==i?void 0:i.watchOptions,e.WatchType.SourceFile,r)},onDeleteValue:e.closeFileWatcher})}function X(t,r,n,i,a){var o=m(t,r,n,i,a);return{build:function(e,t){return U(o,e,t)},clean:function(e){return q(o,e)},buildReferences:function(e,t){return U(o,e,t,!0)},cleanReferences:function(e){return q(o,e,!0)},getNextInvalidatedProject:function(e){return T(o,e),I(o,k(o),!1)},getBuildOrder:function(){return k(o)},getUpToDateStatusOfProject:function(e){var t=v(o,e),r=_(o,t);return L(o,y(o,t,r),r)},invalidateProject:function(t,r){return J(o,t,r||e.ConfigFileProgramReloadLevel.None)},buildNextInvalidatedProject:function(){return K(o)},getAllParsedConfigs:function(){return e.arrayFrom(e.mapDefinedIterator(o.configFileCache.values(),(function(e){return h(e)?e:void 0})))},close:function(){return function(t){e.clearMap(t.allWatchedConfigFiles,e.closeFileWatcher),e.clearMap(t.allWatchedExtendedConfigFiles,(function(e){e.projects.clear(),e.close()})),e.clearMap(t.allWatchedWildcardDirectories,(function(t){return e.clearMap(t,e.closeFileWatcherOf)})),e.clearMap(t.allWatchedInputFiles,(function(t){return e.clearMap(t,e.closeFileWatcher)}))}(o)}}}function Q(t,r){return e.convertToRelativePath(r,t.currentDirectory,(function(e){return t.getCanonicalFileName(e)}))}function Z(t,r){for(var n=[],a=2;a<arguments.length;a++)n[a-2]=arguments[a];t.host.reportSolutionBuilderStatus(e.createCompilerDiagnostic.apply(void 0,i([r],n)))}function ee(t,r){for(var n,a,o=[],s=2;s<arguments.length;s++)o[s-2]=arguments[s];null===(a=(n=t.hostWithWatch).onWatchStatusChange)||void 0===a||a.call(n,e.createCompilerDiagnostic.apply(void 0,i([r],o)),t.host.getNewLine(),t.baseCompilerOptions)}function te(e,t){var r=e.host;t.forEach((function(e){return r.reportDiagnostic(e)}))}function re(e,t,r){te(e,r),e.projectErrorsReported.set(t,!0),r.length&&e.diagnostics.set(t,r)}function ne(e,t){re(e,t,[e.configFileCache.get(t)])}function ie(t,r){if(t.needsSummary){t.needsSummary=!1;var n=t.watch||!!t.host.reportErrorSummary,i=t.diagnostics,a=0;u(r)?(ae(t,r.buildOrder),te(t,r.circularDiagnostics),n&&(a+=e.getErrorCountForSummary(r.circularDiagnostics))):(r.forEach((function(r){var n=_(t,r);t.projectErrorsReported.has(n)||te(t,i.get(n)||e.emptyArray)})),n&&i.forEach((function(t){return a+=e.getErrorCountForSummary(t)}))),t.watch?ee(t,e.getWatchErrorSummaryDiagnosticMessage(a),a):t.host.reportErrorSummary&&t.host.reportErrorSummary(a)}}function ae(t,r){t.options.verbose&&Z(t,e.Diagnostics.Projects_in_this_build_Colon_0,r.map((function(e){return"\r\n * "+Q(t,e)})).join(""))}function oe(t,r,n){t.options.verbose&&function(t,r,n){switch(n.type){case e.UpToDateStatusType.OutOfDateWithSelf:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2,Q(t,r),Q(t,n.outOfDateOutputFileName),Q(t,n.newerInputFileName));case e.UpToDateStatusType.OutOfDateWithUpstream:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2,Q(t,r),Q(t,n.outOfDateOutputFileName),Q(t,n.newerProjectName));case e.UpToDateStatusType.OutputMissing:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_output_file_1_does_not_exist,Q(t,r),Q(t,n.missingOutputFileName));case e.UpToDateStatusType.UpToDate:if(void 0!==n.newestInputFileTime)return Z(t,e.Diagnostics.Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2,Q(t,r),Q(t,n.newestInputFileName||""),Q(t,n.oldestOutputFileName||""));break;case e.UpToDateStatusType.OutOfDateWithPrepend:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed,Q(t,r),Q(t,n.newerProjectName));case e.UpToDateStatusType.UpToDateWithUpstreamTypes:return Z(t,e.Diagnostics.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,Q(t,r));case e.UpToDateStatusType.UpstreamOutOfDate:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,Q(t,r),Q(t,n.upstreamProjectName));case e.UpToDateStatusType.UpstreamBlocked:return Z(t,n.upstreamProjectBlocked?e.Diagnostics.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:e.Diagnostics.Project_0_can_t_be_built_because_its_dependency_1_has_errors,Q(t,r),Q(t,n.upstreamProjectName));case e.UpToDateStatusType.Unbuildable:return Z(t,e.Diagnostics.Failed_to_parse_file_0_Colon_1,Q(t,r),n.reason);case e.UpToDateStatusType.TsVersionOutputOfDate:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,Q(t,r),n.version,e.version);case e.UpToDateStatusType.ContainerOnly:case e.UpToDateStatusType.ComputingUpstream:break;default:e.assertType(n)}}(t,r,n)}!function(e){e[e.None=0]="None",e[e.Success=1]="Success",e[e.DeclarationOutputUnchanged=2]="DeclarationOutputUnchanged",e[e.ConfigFileErrors=4]="ConfigFileErrors",e[e.SyntaxErrors=8]="SyntaxErrors",e[e.TypeErrors=16]="TypeErrors",e[e.DeclarationEmitErrors=32]="DeclarationEmitErrors",e[e.EmitErrors=64]="EmitErrors",e[e.AnyErrors=124]="AnyErrors"}(t||(t={})),e.isCircularBuildOrder=u,e.getBuildOrderFromAnyBuildOrder=d,e.createBuilderStatusReporter=p,e.createSolutionBuilderHost=function(t,r,n,i,a){void 0===t&&(t=e.sys);var o=f(t,r,n,i);return o.reportErrorSummary=a,o},e.createSolutionBuilderWithWatchHost=function(t,r,n,i,a){void 0===t&&(t=e.sys);var o=f(t,r,n,i),s=e.createWatchHost(t,a);return e.copyProperties(o,s),o},e.createSolutionBuilder=function(e,t,r){return X(!1,e,t,r)},e.createSolutionBuilderWithWatch=function(e,t,r,n){return X(!0,e,t,r,n)},function(e){e[e.Build=0]="Build",e[e.UpdateBundle=1]="UpdateBundle",e[e.UpdateOutputFileStamps=2]="UpdateOutputFileStamps"}(r=e.InvalidatedProjectKind||(e.InvalidatedProjectKind={})),function(e){e[e.CreateProgram=0]="CreateProgram",e[e.SyntaxDiagnostics=1]="SyntaxDiagnostics",e[e.SemanticDiagnostics=2]="SemanticDiagnostics",e[e.Emit=3]="Emit",e[e.EmitBundle=4]="EmitBundle",e[e.EmitBuildInfo=5]="EmitBuildInfo",e[e.BuildInvalidatedProjectOfBundle=6]="BuildInvalidatedProjectOfBundle",e[e.QueueReferencingProjects=7]="QueueReferencingProjects",e[e.Done=8]="Done"}(n||(n={}))}(d||(d={})),function(e){!function(t){t.ActionSet="action::set",t.ActionInvalidate="action::invalidate",t.ActionPackageInstalled="action::packageInstalled",t.EventTypesRegistry="event::typesRegistry",t.EventBeginInstallTypes="event::beginInstallTypes",t.EventEndInstallTypes="event::endInstallTypes",t.EventInitializationFailed="event::initializationFailed",function(e){e.GlobalCacheLocation="--globalTypingsCacheLocation",e.LogFile="--logFile",e.EnableTelemetry="--enableTelemetry",e.TypingSafeListLocation="--typingSafeListLocation",e.TypesMapLocation="--typesMapLocation",e.NpmLocation="--npmLocation",e.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"}(t.Arguments||(t.Arguments={})),t.hasArgument=function(t){return e.sys.args.indexOf(t)>=0},t.findArgument=function(t){var r=e.sys.args.indexOf(t);return r>=0&&r<e.sys.args.length-1?e.sys.args[r+1]:void 0},t.nowString=function(){var t=new Date;return e.padLeft(t.getHours().toString(),2,"0")+":"+e.padLeft(t.getMinutes().toString(),2,"0")+":"+e.padLeft(t.getSeconds().toString(),2,"0")+"."+e.padLeft(t.getMilliseconds().toString(),3,"0")}}(e.server||(e.server={}))}(d||(d={})),function(e){!function(t){function r(t,r){return new e.Version(e.getProperty(r,"ts"+e.versionMajorMinor)||e.getProperty(r,"latest")).compareTo(t.version)<=0}function n(e){return t.nodeCoreModules.has(e)?"node":e}t.isTypingUpToDate=r,t.nodeCoreModuleList=["assert","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","dns","domain","events","fs","http","https","http2","inspector","net","os","path","perf_hooks","process","punycode","querystring","readline","repl","stream","string_decoder","timers","tls","tty","url","util","v8","vm","zlib"],t.nodeCoreModules=new e.Set(t.nodeCoreModuleList),t.nonRelativeModuleNameForTypingCache=n,t.loadSafeList=function(t,r){var n=e.readConfigFile(r,(function(e){return t.readFile(e)}));return new e.Map(e.getEntries(n.config))},t.loadTypesMap=function(t,r){var n=e.readConfigFile(r,(function(e){return t.readFile(e)}));if(n.config)return new e.Map(e.getEntries(n.config.simpleMap))},t.discoverTypings=function(t,i,a,o,s,c,l,u,d){if(!l||!l.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};var p=new e.Map;a=e.mapDefined(a,(function(t){var r=e.normalizePath(t);if(e.hasJSFileExtension(r))return r}));var f=[];l.include&&E(l.include,"Explicitly included types");var m=l.exclude||[],g=new e.Set(a.map(e.getDirectoryPath));g.add(o),g.forEach((function(t){S(e.combinePaths(t,"package.json"),f),S(e.combinePaths(t,"bower.json"),f),D(e.combinePaths(t,"bower_components"),f),D(e.combinePaths(t,"node_modules"),f)})),l.disableFilenameBasedTypeAcquisition||function(t){var r=e.mapDefined(t,(function(t){if(e.hasJSFileExtension(t)){var r=e.removeFileExtension(e.getBaseFileName(t.toLowerCase())),n=e.removeMinAndVersionNumbers(r);return s.get(n)}}));r.length&&E(r,"Inferred typings from file names");var n=e.some(t,(function(t){return e.fileExtensionIs(t,".jsx")}));n&&(i&&i("Inferred 'react' typings due to presence of '.jsx' extension"),x("react"))}(a),u&&E(e.deduplicate(u.map(n),e.equateStringsCaseSensitive,e.compareStringsCaseSensitive),"Inferred typings from unresolved imports"),c.forEach((function(e,t){var n=d.get(t);p.has(t)&&void 0===p.get(t)&&void 0!==n&&r(e,n)&&p.set(t,e.typingLocation)}));for(var _=0,h=m;_<h.length;_++){var y=h[_];p.delete(y)&&i&&i("Typing for "+y+" is in exclude list, will be ignored.")}var v=[],b=[];p.forEach((function(e,t){void 0!==e?b.push(e):v.push(t)}));var k={cachedTypingPaths:b,newTypingNames:v,filesToWatch:f};return i&&i("Result: "+JSON.stringify(k)),k;function x(e){p.has(e)||p.set(e,void 0)}function E(t,r){i&&i(r+": "+JSON.stringify(t)),e.forEach(t,x)}function S(r,n){if(t.fileExists(r)){n.push(r);var i=e.readConfigFile(r,(function(e){return t.readFile(e)})).config;E(e.flatMap([i.dependencies,i.devDependencies,i.optionalDependencies,i.peerDependencies],e.getOwnKeys),"Typing names in '"+r+"' dependencies")}}function D(r,n){if(n.push(r),t.directoryExists(r)){var a=t.readDirectory(r,[".json"],void 0,void 0,2);i&&i("Searching for typing names in "+r+"; all files: "+JSON.stringify(a));for(var o=[],s=0,c=a;s<c.length;s++){var l=c[s],u=e.normalizePath(l),d=e.getBaseFileName(u);if("package.json"===d||"bower.json"===d){var f=e.readConfigFile(u,(function(e){return t.readFile(e)})).config;if(("package.json"!==d||!f._requiredBy||0!==e.filter(f._requiredBy,(function(e){return"#"===e[0]||"/"===e})).length)&&f.name){var m=f.types||f.typings;if(m){var g=e.getNormalizedAbsolutePath(m,e.getDirectoryPath(u));i&&i(" Package '"+f.name+"' provides its own types."),p.set(f.name,g)}else o.push(f.name)}}}E(o," Found package names")}}},function(e){e[e.Ok=0]="Ok",e[e.EmptyName=1]="EmptyName",e[e.NameTooLong=2]="NameTooLong",e[e.NameStartsWithDot=3]="NameStartsWithDot",e[e.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",e[e.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters"}(t.NameValidationResult||(t.NameValidationResult={}));var i=214;function a(e,t){if(!e)return 1;if(e.length>i)return 2;if(46===e.charCodeAt(0))return 3;if(95===e.charCodeAt(0))return 4;if(t){var r=/^@([^/]+)\/([^/]+)$/.exec(e);if(r){var n=a(r[1],!1);if(0!==n)return{name:r[1],isScopeName:!0,result:n};var o=a(r[2],!1);return 0!==o?{name:r[2],isScopeName:!1,result:o}:0}}return encodeURIComponent(e)!==e?5:0}function o(t,r,n,a){var o=a?"Scope":"Package";switch(r){case 1:return"'"+t+"':: "+o+" name '"+n+"' cannot be empty";case 2:return"'"+t+"':: "+o+" name '"+n+"' should be less than "+i+" characters";case 3:return"'"+t+"':: "+o+" name '"+n+"' cannot start with '.'";case 4:return"'"+t+"':: "+o+" name '"+n+"' cannot start with '_'";case 5:return"'"+t+"':: "+o+" name '"+n+"' contains non URI safe characters";case 0:return e.Debug.fail();default:throw e.Debug.assertNever(r)}}t.validatePackageName=function(e){return a(e,!0)},t.renderPackageNameValidationFailure=function(e,t){return"object"==typeof e?o(t,e.result,e.name,e.isScopeName):o(t,e,t,!1)}}(e.JsTyping||(e.JsTyping={}))}(d||(d={})),function(e){var t,r;function n(e){return{indentSize:4,tabSize:4,newLineCharacter:e||"\n",convertTabsToSpaces:!0,indentStyle:t.Smart,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:r.Ignore,trimTrailingWhitespace:!0}}!function(e){var t=function(){function e(e){this.text=e}return e.prototype.getText=function(e,t){return 0===e&&t===this.text.length?this.text:this.text.substring(e,t)},e.prototype.getLength=function(){return this.text.length},e.prototype.getChangeRange=function(){},e}();e.fromString=function(e){return new t(e)}}(e.ScriptSnapshot||(e.ScriptSnapshot={})),function(e){e[e.Dependencies=1]="Dependencies",e[e.DevDependencies=2]="DevDependencies",e[e.PeerDependencies=4]="PeerDependencies",e[e.OptionalDependencies=8]="OptionalDependencies",e[e.All=15]="All"}(e.PackageJsonDependencyGroup||(e.PackageJsonDependencyGroup={})),function(e){e[e.Off=0]="Off",e[e.On=1]="On",e[e.Auto=2]="Auto"}(e.PackageJsonAutoImportPreference||(e.PackageJsonAutoImportPreference={})),function(e){e[e.Semantic=0]="Semantic",e[e.PartialSemantic=1]="PartialSemantic",e[e.Syntactic=2]="Syntactic"}(e.LanguageServiceMode||(e.LanguageServiceMode={})),e.emptyOptions={},function(e){e.Original="original",e.TwentyTwenty="2020"}(e.SemanticClassificationFormat||(e.SemanticClassificationFormat={})),function(e){e.none="none",e.definition="definition",e.reference="reference",e.writtenReference="writtenReference"}(e.HighlightSpanKind||(e.HighlightSpanKind={})),function(e){e[e.None=0]="None",e[e.Block=1]="Block",e[e.Smart=2]="Smart"}(t=e.IndentStyle||(e.IndentStyle={})),function(e){e.Ignore="ignore",e.Insert="insert",e.Remove="remove"}(r=e.SemicolonPreference||(e.SemicolonPreference={})),e.getDefaultFormatCodeSettings=n,e.testFormatSettings=n("\n"),function(e){e[e.aliasName=0]="aliasName",e[e.className=1]="className",e[e.enumName=2]="enumName",e[e.fieldName=3]="fieldName",e[e.interfaceName=4]="interfaceName",e[e.keyword=5]="keyword",e[e.lineBreak=6]="lineBreak",e[e.numericLiteral=7]="numericLiteral",e[e.stringLiteral=8]="stringLiteral",e[e.localName=9]="localName",e[e.methodName=10]="methodName",e[e.moduleName=11]="moduleName",e[e.operator=12]="operator",e[e.parameterName=13]="parameterName",e[e.propertyName=14]="propertyName",e[e.punctuation=15]="punctuation",e[e.space=16]="space",e[e.text=17]="text",e[e.typeParameterName=18]="typeParameterName",e[e.enumMemberName=19]="enumMemberName",e[e.functionName=20]="functionName",e[e.regularExpressionLiteral=21]="regularExpressionLiteral"}(e.SymbolDisplayPartKind||(e.SymbolDisplayPartKind={})),function(e){e.Comment="comment",e.Region="region",e.Code="code",e.Imports="imports"}(e.OutliningSpanKind||(e.OutliningSpanKind={})),function(e){e[e.JavaScript=0]="JavaScript",e[e.SourceMap=1]="SourceMap",e[e.Declaration=2]="Declaration"}(e.OutputFileType||(e.OutputFileType={})),function(e){e[e.None=0]="None",e[e.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",e[e.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",e[e.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",e[e.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",e[e.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",e[e.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition"}(e.EndOfLineState||(e.EndOfLineState={})),function(e){e[e.Punctuation=0]="Punctuation",e[e.Keyword=1]="Keyword",e[e.Operator=2]="Operator",e[e.Comment=3]="Comment",e[e.Whitespace=4]="Whitespace",e[e.Identifier=5]="Identifier",e[e.NumberLiteral=6]="NumberLiteral",e[e.BigIntLiteral=7]="BigIntLiteral",e[e.StringLiteral=8]="StringLiteral",e[e.RegExpLiteral=9]="RegExpLiteral"}(e.TokenClass||(e.TokenClass={})),function(e){e.unknown="",e.warning="warning",e.keyword="keyword",e.scriptElement="script",e.moduleElement="module",e.classElement="class",e.localClassElement="local class",e.structElement="struct",e.interfaceElement="interface",e.typeElement="type",e.enumElement="enum",e.enumMemberElement="enum member",e.variableElement="var",e.localVariableElement="local var",e.functionElement="function",e.localFunctionElement="local function",e.memberFunctionElement="method",e.memberGetAccessorElement="getter",e.memberSetAccessorElement="setter",e.memberVariableElement="property",e.constructorImplementationElement="constructor",e.callSignatureElement="call",e.indexSignatureElement="index",e.constructSignatureElement="construct",e.parameterElement="parameter",e.typeParameterElement="type parameter",e.primitiveType="primitive type",e.label="label",e.alias="alias",e.constElement="const",e.letElement="let",e.directory="directory",e.externalModuleName="external module name",e.jsxAttribute="JSX attribute",e.string="string"}(e.ScriptElementKind||(e.ScriptElementKind={})),function(e){e.none="",e.publicMemberModifier="public",e.privateMemberModifier="private",e.protectedMemberModifier="protected",e.exportedModifier="export",e.ambientModifier="declare",e.staticModifier="static",e.abstractModifier="abstract",e.optionalModifier="optional",e.deprecatedModifier="deprecated",e.dtsModifier=".d.ts",e.tsModifier=".ts",e.tsxModifier=".tsx",e.jsModifier=".js",e.jsxModifier=".jsx",e.jsonModifier=".json",e.etsModifier=".ets",e.detsModifier=".d.ets"}(e.ScriptElementKindModifier||(e.ScriptElementKindModifier={})),function(e){e.comment="comment",e.identifier="identifier",e.keyword="keyword",e.numericLiteral="number",e.bigintLiteral="bigint",e.operator="operator",e.stringLiteral="string",e.whiteSpace="whitespace",e.text="text",e.punctuation="punctuation",e.className="class name",e.enumName="enum name",e.interfaceName="interface name",e.moduleName="module name",e.typeParameterName="type parameter name",e.typeAliasName="type alias name",e.parameterName="parameter name",e.docCommentTagName="doc comment tag name",e.jsxOpenTagName="jsx open tag name",e.jsxCloseTagName="jsx close tag name",e.jsxSelfClosingTagName="jsx self closing tag name",e.jsxAttribute="jsx attribute",e.jsxText="jsx text",e.jsxAttributeStringLiteralValue="jsx attribute string literal value"}(e.ClassificationTypeNames||(e.ClassificationTypeNames={})),function(e){e[e.comment=1]="comment",e[e.identifier=2]="identifier",e[e.keyword=3]="keyword",e[e.numericLiteral=4]="numericLiteral",e[e.operator=5]="operator",e[e.stringLiteral=6]="stringLiteral",e[e.regularExpressionLiteral=7]="regularExpressionLiteral",e[e.whiteSpace=8]="whiteSpace",e[e.text=9]="text",e[e.punctuation=10]="punctuation",e[e.className=11]="className",e[e.enumName=12]="enumName",e[e.interfaceName=13]="interfaceName",e[e.moduleName=14]="moduleName",e[e.typeParameterName=15]="typeParameterName",e[e.typeAliasName=16]="typeAliasName",e[e.parameterName=17]="parameterName",e[e.docCommentTagName=18]="docCommentTagName",e[e.jsxOpenTagName=19]="jsxOpenTagName",e[e.jsxCloseTagName=20]="jsxCloseTagName",e[e.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",e[e.jsxAttribute=22]="jsxAttribute",e[e.jsxText=23]="jsxText",e[e.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",e[e.bigintLiteral=25]="bigintLiteral"}(e.ClassificationType||(e.ClassificationType={}))}(d||(d={})),function(e){function t(t){switch(t.kind){case 251:return e.isInJSFile(t)&&e.getJSDocEnumTag(t)?7:1;case 161:case 199:case 164:case 163:case 291:case 292:case 166:case 165:case 167:case 168:case 169:case 253:case 209:case 210:case 290:case 283:return 1;case 160:case 256:case 257:case 178:return 2;case 334:return void 0===t.name?3:2;case 294:case 254:case 255:return 3;case 259:return e.isAmbientModule(t)||1===e.getModuleInstanceState(t)?5:4;case 258:case 267:case 268:case 263:case 264:case 269:case 270:return 7;case 300:return 5}return 7}function r(t){for(;158===t.parent.kind;)t=t.parent;return e.isInternalModuleImportEqualsDeclaration(t.parent)&&t.parent.moduleReference===t}function n(e){return e.expression}function i(e){return e.tag}function o(e){return e.tagName}function s(t,r,n,i,a){var o=i?l(t):c(t);return a&&(o=e.skipOuterExpressions(o)),!!o&&!!o.parent&&r(o.parent)&&n(o.parent)===o}function c(e){return p(e)?e.parent:e}function l(e){return p(e)||f(e)?e.parent:e}function u(t){var r;return e.isIdentifier(t)&&(null===(r=e.tryCast(t.parent,e.isBreakOrContinueStatement))||void 0===r?void 0:r.label)===t}function d(t){var r;return e.isIdentifier(t)&&(null===(r=e.tryCast(t.parent,e.isLabeledStatement))||void 0===r?void 0:r.label)===t}function p(t){var r;return(null===(r=e.tryCast(t.parent,e.isPropertyAccessExpression))||void 0===r?void 0:r.name)===t}function f(t){var r;return(null===(r=e.tryCast(t.parent,e.isElementAccessExpression))||void 0===r?void 0:r.argumentExpression)===t}e.scanner=e.createScanner(99,!0),function(e){e[e.None=0]="None",e[e.Value=1]="Value",e[e.Type=2]="Type",e[e.Namespace=4]="Namespace",e[e.All=7]="All"}(e.SemanticMeaning||(e.SemanticMeaning={})),e.getMeaningFromDeclaration=t,e.getMeaningFromLocation=function(n){return 300===(n=P(n)).kind?1:269===n.parent.kind||275===n.parent.kind||268===n.parent.kind||265===n.parent.kind||e.isImportEqualsDeclaration(n.parent)&&n===n.parent.name?7:r(n)?function(t){var r=158===t.kind?t:e.isQualifiedName(t.parent)&&t.parent.right===t?t.parent:void 0;return r&&263===r.parent.kind?7:4}(n):e.isDeclarationName(n)?t(n.parent):e.isEntityName(n)&&e.isJSDocNameReference(n.parent)?7:function(t){e.isRightSideOfQualifiedNameOrPropertyAccess(t)&&(t=t.parent);switch(t.kind){case 108:return!e.isExpressionNode(t);case 188:return!0}switch(t.parent.kind){case 174:return!0;case 196:return!t.parent.isTypeOf;case 225:return!e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)}return!1}(n)?2:function(e){return function(e){var t=e,r=!0;if(158===t.parent.kind){for(;t.parent&&158===t.parent.kind;)t=t.parent;r=t.right===e}return 174===t.parent.kind&&!r}(e)||function(e){var t=e,r=!0;if(202===t.parent.kind){for(;t.parent&&202===t.parent.kind;)t=t.parent;r=t.name===e}if(!r&&225===t.parent.kind&&289===t.parent.parent.kind){var n=t.parent.parent.parent;return(254===n.kind||255===n.kind)&&117===t.parent.parent.token||256===n.kind&&94===t.parent.parent.token}return!1}(e)}(n)?4:e.isTypeParameterDeclaration(n.parent)?(e.Debug.assert(e.isJSDocTemplateTag(n.parent.parent)),2):e.isLiteralTypeNode(n.parent)?3:1},e.isInRightSideOfInternalImportEqualsDeclaration=r,e.isCallExpressionTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isCallExpression,n,r,i)},e.isNewExpressionTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isNewExpression,n,r,i)},e.isCallOrNewExpressionTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isCallOrNewExpression,n,r,i)},e.isTaggedTemplateTag=function(t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),s(t,e.isTaggedTemplateExpression,i,r,n)},e.isDecoratorTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isDecorator,n,r,i)},e.isJsxOpeningLikeElementTagName=function(t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),s(t,e.isJsxOpeningLikeElement,o,r,n)},e.climbPastPropertyAccess=c,e.climbPastPropertyOrElementAccess=l,e.getTargetLabel=function(e,t){for(;e;){if(247===e.kind&&e.label.escapedText===t)return e.label;e=e.parent}},e.hasPropertyAccessExpressionWithName=function(t,r){return!!e.isPropertyAccessExpression(t.expression)&&t.expression.name.text===r},e.isJumpStatementTarget=u,e.isLabelOfLabeledStatement=d,e.isLabelName=function(e){return d(e)||u(e)},e.isTagName=function(t){var r;return(null===(r=e.tryCast(t.parent,e.isJSDocTag))||void 0===r?void 0:r.tagName)===t},e.isRightSideOfQualifiedName=function(t){var r;return(null===(r=e.tryCast(t.parent,e.isQualifiedName))||void 0===r?void 0:r.right)===t},e.isRightSideOfPropertyAccess=p,e.isArgumentExpressionOfElementAccess=f,e.isNameOfModuleDeclaration=function(t){var r;return(null===(r=e.tryCast(t.parent,e.isModuleDeclaration))||void 0===r?void 0:r.name)===t},e.isNameOfFunctionDeclaration=function(t){var r;return e.isIdentifier(t)&&(null===(r=e.tryCast(t.parent,e.isFunctionLike))||void 0===r?void 0:r.name)===t},e.isLiteralNameOfPropertyDeclarationOrIndexAccess=function(t){switch(t.parent.kind){case 164:case 163:case 291:case 294:case 166:case 165:case 168:case 169:case 259:return e.getNameOfDeclaration(t.parent)===t;case 203:return t.parent.argumentExpression===t;case 159:return!0;case 192:return 190===t.parent.parent.kind;default:return!1}},e.isExpressionOfExternalModuleImportEqualsDeclaration=function(t){return e.isExternalModuleImportEqualsDeclaration(t.parent.parent)&&e.getExternalModuleImportEqualsDeclarationExpression(t.parent.parent)===t},e.getContainerNode=function(t){for(e.isJSDocTypeAlias(t)&&(t=t.parent.parent);;){if(!(t=t.parent))return;switch(t.kind){case 300:case 166:case 165:case 253:case 209:case 168:case 169:case 254:case 255:case 256:case 258:case 259:return t}}},e.getNodeKind=function t(r){switch(r.kind){case 300:return e.isExternalModule(r)?"module":"script";case 259:return"module";case 254:case 223:return"class";case 255:return"struct";case 256:return"interface";case 257:case 327:case 334:return"type";case 258:return"enum";case 251:return c(r);case 199:return c(e.getRootDeclaration(r));case 210:case 253:case 209:return"function";case 168:return"getter";case 169:return"setter";case 166:case 165:return"method";case 291:var n=r.initializer;return e.isFunctionLike(n)?"method":"property";case 164:case 163:case 292:case 293:return"property";case 172:return"index";case 171:return"construct";case 170:return"call";case 167:return"constructor";case 160:return"type parameter";case 294:return"enum member";case 161:return e.hasSyntacticModifier(r,92)?"property":"parameter";case 263:case 268:case 273:case 266:case 272:return"alias";case 218:var i=e.getAssignmentDeclarationKind(r),a=r.right;switch(i){case 7:case 8:case 9:case 0:return"";case 1:case 2:var o=t(a);return""===o?"const":o;case 3:case 5:return e.isFunctionExpression(a)?"method":"property";case 4:return"property";case 6:return"local class";default:return e.assertType(i),""}case 78:return e.isImportClause(r.parent)?"alias":"";case 269:var s=t(r.expression);return""===s?"const":s;default:return""}function c(t){return e.isVarConst(t)?"const":e.isLet(t)?"let":"var"}},e.isThis=function(t){switch(t.kind){case 108:return!0;case 78:return e.identifierIsThisKeyword(t)&&161===t.parent.kind;default:return!1}};var m=/^\/\/\/\s*</;function g(e,t){return h(e.pos,e.end,t)}function _(e,t){return e.pos<t&&t<e.end}function h(e,t,r){return e<=r.pos&&t>=r.end}function y(e,t,r,n){return Math.max(e,r)<Math.min(t,n)}function v(t,r){if(void 0===t||e.nodeIsMissing(t))return!1;switch(t.kind){case 254:case 255:case 256:case 258:case 201:case 197:case 178:case 232:case 260:case 261:case 267:case 271:return b(t,19,r);case 290:return v(t.block,r);case 205:if(!t.arguments)return!0;case 204:case 208:case 187:return b(t,21,r);case 175:case 176:return v(t.type,r);case 167:case 168:case 169:case 253:case 209:case 166:case 165:case 171:case 170:case 210:return t.body?v(t.body,r):t.type?v(t.type,r):k(t,21,r);case 259:return!!t.body&&v(t.body,r);case 236:return t.elseStatement?v(t.elseStatement,r):v(t.thenStatement,r);case 235:return v(t.expression,r)||k(t,26,r);case 200:case 198:case 203:case 159:case 180:return b(t,23,r);case 172:return t.type?v(t.type,r):k(t,23,r);case 287:case 288:return!1;case 239:case 240:case 241:case 238:return v(t.statement,r);case 237:return k(t,115,r)?b(t,21,r):v(t.statement,r);case 177:return v(t.exprName,r);case 213:case 212:case 214:case 221:case 222:return v(t.expression,r);case 206:return v(t.template,r);case 220:return v(e.lastOrUndefined(t.templateSpans),r);case 230:return e.nodeIsPresent(t.literal);case 270:case 264:return e.nodeIsPresent(t.moduleSpecifier);case 216:return v(t.operand,r);case 218:return v(t.right,r);case 219:return v(t.whenFalse,r);default:return!0}}function b(t,r,n){var i=t.getChildren(n);if(i.length){var a=e.last(i);if(a.kind===r)return!0;if(26===a.kind&&1!==i.length)return i[i.length-2].kind===r}return!1}function k(e,t,r){return!!x(e,t,r)}function x(t,r,n){return e.find(t.getChildren(n),(function(e){return e.kind===r}))}function E(t){var r=e.find(t.parent.getChildren(),(function(r){return e.isSyntaxList(r)&&g(r,t)}));return e.Debug.assert(!r||e.contains(r.getChildren(),t)),r}function S(e){return 88===e.kind}function D(e){return 83===e.kind}function w(e){return 98===e.kind}function T(t,r){if(!r)switch(t.kind){case 254:case 223:case 255:return function(t){if(e.isNamedDeclaration(t))return t.name;if(e.isClassDeclaration(t)||e.isStructDeclaration(t)){var r=e.find(t.modifiers,S);if(r)return r}if(e.isClassExpression(t)){var n=e.find(t.getChildren(),D);if(n)return n}}(t);case 253:case 209:return function(t){if(e.isNamedDeclaration(t))return t.name;if(e.isFunctionDeclaration(t)){var r=e.find(t.modifiers,S);if(r)return r}if(e.isFunctionExpression(t)){var n=e.find(t.getChildren(),w);if(n)return n}}(t)}if(e.isNamedDeclaration(t))return t.name}function C(t,r){if(t.importClause){if(t.importClause.name&&t.importClause.namedBindings)return;if(t.importClause.name)return t.importClause.name;if(t.importClause.namedBindings){if(e.isNamedImports(t.importClause.namedBindings)){var n=e.singleOrUndefined(t.importClause.namedBindings.elements);if(!n)return;return n.name}if(e.isNamespaceImport(t.importClause.namedBindings))return t.importClause.namedBindings.name}}if(!r)return t.moduleSpecifier}function A(t,r){if(t.exportClause){if(e.isNamedExports(t.exportClause)){if(!e.singleOrUndefined(t.exportClause.elements))return;return t.exportClause.elements[0].name}if(e.isNamespaceExport(t.exportClause))return t.exportClause.name}if(!r)return t.moduleSpecifier}function N(t,r){var n=t.parent;if((e.isModifier(t)&&(r||88!==t.kind)?e.contains(n.modifiers,t):83===t.kind?e.isClassDeclaration(n)||e.isClassExpression(t):98===t.kind?e.isFunctionDeclaration(n)||e.isFunctionExpression(t):118===t.kind?e.isInterfaceDeclaration(n):92===t.kind?e.isEnumDeclaration(n):150===t.kind?e.isTypeAliasDeclaration(n):141===t.kind||140===t.kind?e.isModuleDeclaration(n):100===t.kind?e.isImportEqualsDeclaration(n):135===t.kind?e.isGetAccessorDeclaration(n):147===t.kind&&e.isSetAccessorDeclaration(n))&&(a=T(n,r)))return a;if((113===t.kind||85===t.kind||119===t.kind)&&e.isVariableDeclarationList(n)&&1===n.declarations.length){var i=n.declarations[0];if(e.isIdentifier(i.name))return i.name}if(150===t.kind){if(e.isImportClause(n)&&n.isTypeOnly)if(a=C(n.parent,r))return a;if(e.isExportDeclaration(n)&&n.isTypeOnly)if(a=A(n,r))return a}if(127===t.kind){if(e.isImportSpecifier(n)&&n.propertyName||e.isExportSpecifier(n)&&n.propertyName||e.isNamespaceImport(n)||e.isNamespaceExport(n))return n.name;if(e.isExportDeclaration(n)&&n.exportClause&&e.isNamespaceExport(n.exportClause))return n.exportClause.name}if(100===t.kind&&e.isImportDeclaration(n)&&(a=C(n,r)))return a;if(93===t.kind){if(e.isExportDeclaration(n))if(a=A(n,r))return a;if(e.isExportAssignment(n))return e.skipOuterExpressions(n.expression)}if(144===t.kind&&e.isExternalModuleReference(n))return n.expression;if(154===t.kind&&(e.isImportDeclaration(n)||e.isExportDeclaration(n))&&n.moduleSpecifier)return n.moduleSpecifier;if((94===t.kind||117===t.kind)&&e.isHeritageClause(n)&&n.token===t.kind){var a=function(e){if(1===e.types.length)return e.types[0].expression}(n);if(a)return a}if(94===t.kind){if(e.isTypeParameterDeclaration(n)&&n.constraint&&e.isTypeReferenceNode(n.constraint))return n.constraint.typeName;if(e.isConditionalTypeNode(n)&&e.isTypeReferenceNode(n.extendsType))return n.extendsType.typeName}if(136===t.kind&&e.isInferTypeNode(n))return n.typeParameter.name;if(101===t.kind&&e.isTypeParameterDeclaration(n)&&e.isMappedTypeNode(n.parent))return n.name;if(139===t.kind&&e.isTypeOperatorNode(n)&&139===n.operator&&e.isTypeReferenceNode(n.type))return n.type.typeName;if(143===t.kind&&e.isTypeOperatorNode(n)&&143===n.operator&&e.isArrayTypeNode(n.type)&&e.isTypeReferenceNode(n.type.elementType))return n.type.elementType.typeName;if(!r){if((103===t.kind&&e.isNewExpression(n)||114===t.kind&&e.isVoidExpression(n)||112===t.kind&&e.isTypeOfExpression(n)||131===t.kind&&e.isAwaitExpression(n)||125===t.kind&&e.isYieldExpression(n)||89===t.kind&&e.isDeleteExpression(n))&&n.expression)return e.skipOuterExpressions(n.expression);if((101===t.kind||102===t.kind)&&e.isBinaryExpression(n)&&n.operatorToken===t)return e.skipOuterExpressions(n.right);if(127===t.kind&&e.isAsExpression(n)&&e.isTypeReferenceNode(n.type))return n.type.typeName;if(101===t.kind&&e.isForInStatement(n)||157===t.kind&&e.isForOfStatement(n))return e.skipOuterExpressions(n.expression)}return t}function P(e){return N(e,!1)}function I(e,t,r){return O(e,t,!1,r,!1)}function F(e,t){return O(e,t,!0,void 0,!1)}function O(e,t,r,n,i){var a=e;e:for(;;){for(var o=0,s=a.getChildren(e);o<s.length;o++){var c=s[o];if((r?c.getFullStart():c.getStart(e,!0))>t)break;var l=c.getEnd();if(t<l||t===l&&(1===c.kind||i)){a=c;continue e}if(n&&l===t){var u=M(t,e,c);if(u&&n(u))return u}}return a}}function R(t,r,n){return function r(i){if(e.isToken(i)&&i.pos===t.end)return i;return e.firstDefined(i.getChildren(n),(function(e){return(e.pos<=t.pos&&e.end>t.end||e.pos===t.end)&&K(e,n)?r(e):void 0}))}(r)}function M(t,r,n,i){var a=function a(o){if(L(o)&&1!==o.kind)return o;var s=o.getChildren(r),c=e.binarySearchKey(s,t,(function(e,t){return t}),(function(e,r){return t<s[e].end?!s[e-1]||t>=s[e-1].end?0:1:-1}));if(c>=0&&s[c]){var l=s[c];if(t<l.end){if(l.getStart(r,!i)>=t||!K(l,r)||z(l)){var u=B(s,c,r);return u&&j(u,r)}return a(l)}}e.Debug.assert(void 0!==n||300===o.kind||1===o.kind||e.isJSDocCommentContainingNode(o));var d=B(s,s.length,r);return d&&j(d,r)}(n||r);return e.Debug.assert(!(a&&z(a))),a}function L(t){return e.isToken(t)&&!z(t)}function j(e,t){if(L(e))return e;var r=e.getChildren(t);if(0===r.length)return e;var n=B(r,r.length,t);return n&&j(n,t)}function B(t,r,n){for(var i=r-1;i>=0;i--){if(z(t[i]))e.Debug.assert(i>0,"`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(K(t[i],n))return t[i]}}function z(t){return e.isJsxText(t)&&t.containsOnlyTriviaWhiteSpaces}function U(t,r,n){var i=e.tokenToString(t.kind),a=e.tokenToString(r),o=t.getFullStart(),s=n.text.lastIndexOf(a,o);if(-1!==s){if(n.text.lastIndexOf(i,o-1)<s){var c=M(s+1,n);if(c&&c.kind===r)return c}for(var l=t.kind,u=0;;){var d=M(t.getFullStart(),n);if(!d)return;if((t=d).kind===r){if(0===u)return t;u--}else t.kind===l&&u++}}}function q(e,t,r){return t?e.getNonNullableType():r?e.getNonOptionalType():e}function J(t,r,n){var i=n.getTypeAtLocation(t);return e.isOptionalChain(t.parent)&&(i=q(i,e.isOptionalChainRoot(t.parent),!0)),(e.isNewExpression(t.parent)?i.getConstructSignatures():i.getCallSignatures()).filter((function(e){return!!e.typeParameters&&e.typeParameters.length>=r}))}function V(t,r){if(-1!==r.text.lastIndexOf("<",t?t.pos:r.text.length))for(var n=t,i=0,a=0;n;){switch(n.kind){case 29:if((n=M(n.getFullStart(),r))&&28===n.kind&&(n=M(n.getFullStart(),r)),!n||!e.isIdentifier(n))return;if(!i)return e.isDeclarationName(n)?void 0:{called:n,nTypeArguments:a};i--;break;case 49:i=3;break;case 48:i=2;break;case 31:i++;break;case 19:if(!(n=U(n,18,r)))return;break;case 21:if(!(n=U(n,20,r)))return;break;case 23:if(!(n=U(n,22,r)))return;break;case 27:a++;break;case 38:case 78:case 10:case 8:case 9:case 110:case 95:case 112:case 94:case 139:case 24:case 51:case 57:case 58:break;default:if(e.isTypeNode(n))break;return}n=M(n.getFullStart(),r)}}function H(t,r,n){return e.formatting.getRangeOfEnclosingComment(t,r,void 0,n)}function K(e,t){return 1===e.kind?!!e.jsDoc:0!==e.getWidth(t)}function W(e,t,r){var n=H(e,t,void 0);return!!n&&r===m.test(e.text.substring(n.pos,n.end))}function G(t,r,n){return e.createTextSpanFromBounds(t.getStart(r),(n||t).getEnd())}function $(t){if(!t.isUnterminated)return e.createTextSpanFromBounds(t.getStart()+1,t.getEnd()-1)}function Y(e,t){return{span:e,newText:t}}function X(e){return 150===e.kind}function Q(t,r){return{fileExists:function(e){return t.fileExists(e)},getCurrentDirectory:function(){return r.getCurrentDirectory()},readFile:e.maybeBind(r,r.readFile),useCaseSensitiveFileNames:e.maybeBind(r,r.useCaseSensitiveFileNames),getSymlinkCache:e.maybeBind(r,r.getSymlinkCache)||t.getSymlinkCache,getGlobalTypingsCacheLocation:e.maybeBind(r,r.getGlobalTypingsCacheLocation),getSourceFiles:function(){return t.getSourceFiles()},redirectTargetsMap:t.redirectTargetsMap,getProjectReferenceRedirect:function(e){return t.getProjectReferenceRedirect(e)},isSourceOfProjectReferenceRedirect:function(e){return t.isSourceOfProjectReferenceRedirect(e)},getNearestAncestorDirectoryWithPackageJson:e.maybeBind(r,r.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:function(){return t.getFileIncludeReasons()}}}function Z(e,t){return a(a({},Q(e,t)),{getCommonSourceDirectory:function(){return e.getCommonSourceDirectory()}})}function ee(t,r,n,i,a){return e.factory.createImportDeclaration(void 0,void 0,t||r?e.factory.createImportClause(!!a,t,r&&r.length?e.factory.createNamedImports(r):void 0):void 0,"string"==typeof n?te(n,i):n)}function te(t,r){return e.factory.createStringLiteral(t,0===r)}function re(t,r){return e.isStringDoubleQuoted(t,r)?1:0}function ne(t,r){if(r.quotePreference&&"auto"!==r.quotePreference)return"single"===r.quotePreference?0:1;var n=t.imports&&e.find(t.imports,(function(t){return e.isStringLiteral(t)&&!e.nodeIsSynthesized(t.parent)}));return n?re(n,t):1}function ie(t){return"default"!==t.escapedName?t.escapedName:e.firstDefined(t.declarations,(function(t){var r=e.getNameOfDeclaration(t);return r&&78===r.kind?r.escapedText:void 0}))}function ae(t,r,n){return e.textSpanContainsPosition(t,r.getStart(n))&&r.getEnd()<=e.textSpanEnd(t)}function oe(e,t){return!!e&&!!t&&e.start===t.start&&e.length===t.length}function se(e){return e.declarations&&e.declarations.length>0&&161===e.declarations[0].kind}e.getLineStartPositionForPosition=function(t,r){return e.getLineStarts(r)[r.getLineAndCharacterOfPosition(t).line]},e.rangeContainsRange=g,e.rangeContainsRangeExclusive=function(e,t){return _(e,t.pos)&&_(e,t.end)},e.rangeContainsPosition=function(e,t){return e.pos<=t&&t<=e.end},e.rangeContainsPositionExclusive=_,e.startEndContainsRange=h,e.rangeContainsStartEnd=function(e,t,r){return e.pos<=t&&e.end>=r},e.rangeOverlapsWithStartEnd=function(e,t,r){return y(e.pos,e.end,t,r)},e.nodeOverlapsWithStartEnd=function(e,t,r,n){return y(e.getStart(t),e.end,r,n)},e.startEndOverlapsWithStartEnd=y,e.positionBelongsToNode=function(t,r,n){return e.Debug.assert(t.pos<=r),r<t.end||!v(t,n)},e.findListItemInfo=function(t){var r=E(t);if(r){var n=r.getChildren();return{listItemIndex:e.indexOfNode(n,t),list:r}}},e.hasChildOfKind=k,e.findChildOfKind=x,e.findContainingList=E,e.getContextualTypeOrAncestorTypeNodeType=function(t,r){var n=r.getContextualType(t);if(n)return n;var i=function(t){var r;return e.findAncestor(t,(function(t){return e.isTypeNode(t)&&(r=t),!e.isQualifiedName(t.parent)&&!e.isTypeNode(t.parent)&&!e.isTypeElement(t.parent)})),r}(t);return i&&r.getTypeAtLocation(i)},e.getAdjustedReferenceLocation=P,e.getAdjustedRenameLocation=function(e){return N(e,!0)},e.getTouchingPropertyName=function(t,r){return I(t,r,(function(t){return e.isPropertyNameLiteral(t)||e.isKeyword(t.kind)||e.isPrivateIdentifier(t)}))},e.getTouchingToken=I,e.getTokenAtPosition=F,e.findTokenOnLeftOfPosition=function(t,r){var n=F(t,r);return e.isToken(n)&&r>n.getStart(t)&&r<n.getEnd()?n:M(r,t)},e.findNextToken=R,e.findPrecedingToken=M,e.isInString=function(t,r,n){if(void 0===n&&(n=M(r,t)),n&&e.isStringTextContainingNode(n)){var i=n.getStart(t),a=n.getEnd();if(i<r&&r<a)return!0;if(r===a)return!!n.isUnterminated}return!1},e.isInsideJsxElementOrAttribute=function(e,t){var r=F(e,t);return!!r&&(11===r.kind||(29===r.kind&&11===r.parent.kind||(29===r.kind&&286===r.parent.kind||(!(!r||19!==r.kind||286!==r.parent.kind)||29===r.kind&&279===r.parent.kind))))},e.isInTemplateString=function(t,r){var n=F(t,r);return e.isTemplateLiteralKind(n.kind)&&r>n.getStart(t)},e.isInJSXText=function(t,r){var n=F(t,r);return!!e.isJsxText(n)||(!(18!==n.kind||!e.isJsxExpression(n.parent)||!e.isJsxElement(n.parent.parent))||!(29!==n.kind||!e.isJsxOpeningLikeElement(n.parent)||!e.isJsxElement(n.parent.parent)))},e.isInsideJsxElement=function(e,t){return function(r){for(;r;)if(r.kind>=277&&r.kind<=286||11===r.kind||29===r.kind||31===r.kind||78===r.kind||19===r.kind||18===r.kind||43===r.kind)r=r.parent;else{if(276!==r.kind)return!1;if(t>r.getStart(e))return!0;r=r.parent}return!1}(F(e,t))},e.findPrecedingMatchingToken=U,e.removeOptionality=q,e.isPossiblyTypeArgumentPosition=function t(r,n,i){var a=V(r,n);return void 0!==a&&(e.isPartOfTypeNode(a.called)||0!==J(a.called,a.nTypeArguments,i).length||t(a.called,n,i))},e.getPossibleGenericSignatures=J,e.getPossibleTypeArgumentsInfo=V,e.isInComment=H,e.hasDocComment=function(t,r){var n=F(t,r);return!!e.findAncestor(n,e.isJSDoc)},e.getNodeModifiers=function(t,r){void 0===r&&(r=0);var n=[],i=e.isDeclaration(t)?e.getCombinedNodeFlagsAlwaysIncludeJSDoc(t)&~r:0;return 8&i&&n.push("private"),16&i&&n.push("protected"),4&i&&n.push("public"),32&i&&n.push("static"),128&i&&n.push("abstract"),1&i&&n.push("export"),8192&i&&n.push("deprecated"),8388608&t.flags&&n.push("declare"),269===t.kind&&n.push("export"),n.length>0?n.join(","):""},e.getTypeArgumentOrTypeParameterList=function(t){return 174===t.kind||204===t.kind?t.typeArguments:e.isFunctionLike(t)||254===t.kind||256===t.kind?t.typeParameters:void 0},e.isComment=function(e){return 2===e||3===e},e.isStringOrRegularExpressionOrTemplateLiteral=function(t){return!(10!==t&&13!==t&&!e.isTemplateLiteralKind(t))},e.isPunctuation=function(e){return 18<=e&&e<=77},e.isInsideTemplateLiteral=function(t,r,n){return e.isTemplateLiteralKind(t.kind)&&t.getStart(n)<r&&r<t.end||!!t.isUnterminated&&r===t.end},e.isAccessibilityModifier=function(e){switch(e){case 123:case 121:case 122:return!0}return!1},e.cloneCompilerOptions=function(t){var r=e.clone(t);return e.setConfigFileInOptions(r,t&&t.configFile),r},e.isArrayLiteralOrObjectLiteralDestructuringPattern=function e(t){if(200===t.kind||201===t.kind){if(218===t.parent.kind&&t.parent.left===t&&62===t.parent.operatorToken.kind)return!0;if(241===t.parent.kind&&t.parent.initializer===t)return!0;if(e(291===t.parent.kind?t.parent.parent:t.parent))return!0}return!1},e.isInReferenceComment=function(e,t){return W(e,t,!0)},e.isInNonReferenceComment=function(e,t){return W(e,t,!1)},e.getReplacementSpanForContextToken=function(e){if(e)switch(e.kind){case 10:case 14:return $(e);default:return G(e)}},e.createTextSpanFromNode=G,e.createTextSpanFromStringLiteralLikeContent=$,e.createTextRangeFromNode=function(t,r){return e.createRange(t.getStart(r),t.end)},e.createTextSpanFromRange=function(t){return e.createTextSpanFromBounds(t.pos,t.end)},e.createTextRangeFromSpan=function(t){return e.createRange(t.start,t.start+t.length)},e.createTextChangeFromStartLength=function(t,r,n){return Y(e.createTextSpan(t,r),n)},e.createTextChange=Y,e.typeKeywords=[129,128,156,132,95,136,139,142,104,145,146,143,148,149,110,114,151,152,153],e.isTypeKeyword=function(t){return e.contains(e.typeKeywords,t)},e.isTypeKeywordToken=X,e.isExternalModuleSymbol=function(e){return!!(1536&e.flags)&&34===e.name.charCodeAt(0)},e.nodeSeenTracker=function(){var t=[];return function(r){var n=e.getNodeId(r);return!t[n]&&(t[n]=!0)}},e.getSnapshotText=function(e){return e.getText(0,e.getLength())},e.repeatString=function(e,t){for(var r="",n=0;n<t;n++)r+=e;return r},e.skipConstraint=function(e){return e.isTypeParameter()&&e.getConstraint()||e},e.getNameFromPropertyName=function(t){return 159===t.kind?e.isStringOrNumericLiteralLike(t.expression)?t.expression.text:void 0:e.isPrivateIdentifier(t)?e.idText(t):e.getTextOfIdentifierOrLiteral(t)},e.programContainsModules=function(e){return e.getSourceFiles().some((function(t){return!(t.isDeclarationFile||e.isSourceFileFromExternalLibrary(t)||!t.externalModuleIndicator&&!t.commonJsModuleIndicator)}))},e.programContainsEs6Modules=function(e){return e.getSourceFiles().some((function(t){return!t.isDeclarationFile&&!e.isSourceFileFromExternalLibrary(t)&&!!t.externalModuleIndicator}))},e.compilerOptionsIndicateEs6Modules=function(e){return!!e.module||e.target>=2||!!e.noEmit},e.createModuleSpecifierResolutionHost=Q,e.getModuleSpecifierResolverHost=Z,e.makeImportIfNecessary=function(e,t,r,n){return e||t&&t.length?ee(e,t,r,n):void 0},e.makeImport=ee,e.makeStringLiteral=te,function(e){e[e.Single=0]="Single",e[e.Double=1]="Double"}(e.QuotePreference||(e.QuotePreference={})),e.quotePreferenceFromString=re,e.getQuotePreference=ne,e.getQuoteFromPreference=function(t){switch(t){case 0:return"'";case 1:return'"';default:return e.Debug.assertNever(t)}},e.symbolNameNoDefault=function(t){var r=ie(t);return void 0===r?void 0:e.unescapeLeadingUnderscores(r)},e.symbolEscapedNameNoDefault=ie,e.isObjectBindingElementWithoutPropertyName=function(t){return e.isBindingElement(t)&&e.isObjectBindingPattern(t.parent)&&e.isIdentifier(t.name)&&!t.propertyName},e.getPropertySymbolFromBindingElement=function(e,t){var r=e.getTypeAtLocation(t.parent);return r&&e.getPropertyOfType(r,t.name.text)},e.getParentNodeInSpan=function(t,r,n){if(t)for(;t.parent;){if(e.isSourceFile(t.parent)||!ae(n,t.parent,r))return t;t=t.parent}},e.findModifier=function(t,r){return t.modifiers&&e.find(t.modifiers,(function(e){return e.kind===r}))},e.insertImports=function(t,r,n,i){var a=234===(e.isArray(n)?n[0]:n).kind?e.isRequireVariableStatement:e.isAnyImportSyntax,o=e.filter(r.statements,a),s=e.isArray(n)?e.stableSort(n,e.OrganizeImports.compareImportsOrRequireStatements):[n];if(o.length)if(o&&e.OrganizeImports.importsAreSorted(o))for(var c=0,l=s;c<l.length;c++){var u=l[c],d=e.OrganizeImports.getImportDeclarationInsertionIndex(o,u);if(0===d){var p=o[0]===r.statements[0]?{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude}:{};t.insertNodeBefore(r,o[0],u,!1,p)}else{var f=o[d-1];t.insertNodeAfter(r,f,u)}}else{var m=e.lastOrUndefined(o);m?t.insertNodesAfter(r,m,s):t.insertNodesAtTopOfFile(r,s,i)}else t.insertNodesAtTopOfFile(r,s,i)},e.getTypeKeywordOfTypeOnlyImport=function(t,r){return e.Debug.assert(t.isTypeOnly),e.cast(t.getChildAt(0,r),X)},e.textSpansEqual=oe,e.documentSpansEqual=function(e,t){return e.fileName===t.fileName&&oe(e.textSpan,t.textSpan)},e.forEachUnique=function(e,t){if(e)for(var r=0;r<e.length;r++)if(e.indexOf(e[r])===r){var n=t(e[r],r);if(n)return n}},e.isTextWhiteSpaceLike=function(t,r,n){for(var i=r;i<n;i++)if(!e.isWhiteSpaceLike(t.charCodeAt(i)))return!1;return!0},e.isFirstDeclarationOfSymbolParameter=se;var ce=function(){var t,r,n,i,a=10*e.defaultMaximumTruncationLength;l();var o=function(t){return c(t,e.SymbolDisplayPartKind.text)};return{displayParts:function(){var r=t.length&&t[t.length-1].text;return i>a&&r&&"..."!==r&&(e.isWhiteSpaceLike(r.charCodeAt(r.length-1))||t.push(ue(" ",e.SymbolDisplayPartKind.space)),t.push(ue("...",e.SymbolDisplayPartKind.punctuation))),t},writeKeyword:function(t){return c(t,e.SymbolDisplayPartKind.keyword)},writeOperator:function(t){return c(t,e.SymbolDisplayPartKind.operator)},writePunctuation:function(t){return c(t,e.SymbolDisplayPartKind.punctuation)},writeTrailingSemicolon:function(t){return c(t,e.SymbolDisplayPartKind.punctuation)},writeSpace:function(t){return c(t,e.SymbolDisplayPartKind.space)},writeStringLiteral:function(t){return c(t,e.SymbolDisplayPartKind.stringLiteral)},writeParameter:function(t){return c(t,e.SymbolDisplayPartKind.parameterName)},writeProperty:function(t){return c(t,e.SymbolDisplayPartKind.propertyName)},writeLiteral:function(t){return c(t,e.SymbolDisplayPartKind.stringLiteral)},writeSymbol:function(e,r){if(i>a)return;s(),i+=e.length,t.push(le(e,r))},writeLine:function(){if(i>a)return;i+=1,t.push(fe()),r=!0},write:o,writeComment:o,getText:function(){return""},getTextPos:function(){return 0},getColumn:function(){return 0},getLine:function(){return 0},isAtStartOfLine:function(){return!1},hasTrailingWhitespace:function(){return!1},hasTrailingComment:function(){return!1},rawWrite:e.notImplemented,getIndent:function(){return n},increaseIndent:function(){n++},decreaseIndent:function(){n--},clear:l,trackSymbol:e.noop,reportInaccessibleThisError:e.noop,reportInaccessibleUniqueSymbolError:e.noop,reportPrivateInBaseOfClassExpression:e.noop};function s(){if(!(i>a)&&r){var o=e.getIndentString(n);o&&(i+=o.length,t.push(ue(o,e.SymbolDisplayPartKind.space))),r=!1}}function c(e,r){i>a||(s(),i+=e.length,t.push(ue(e,r)))}function l(){t=[],r=!0,n=0,i=0}}();function le(t,r){return ue(t,function(t){var r=t.flags;if(3&r)return se(t)?e.SymbolDisplayPartKind.parameterName:e.SymbolDisplayPartKind.localName;if(4&r)return e.SymbolDisplayPartKind.propertyName;if(32768&r)return e.SymbolDisplayPartKind.propertyName;if(65536&r)return e.SymbolDisplayPartKind.propertyName;if(8&r)return e.SymbolDisplayPartKind.enumMemberName;if(16&r)return e.SymbolDisplayPartKind.functionName;if(32&r)return e.SymbolDisplayPartKind.className;if(64&r)return e.SymbolDisplayPartKind.interfaceName;if(384&r)return e.SymbolDisplayPartKind.enumName;if(1536&r)return e.SymbolDisplayPartKind.moduleName;if(8192&r)return e.SymbolDisplayPartKind.methodName;if(262144&r)return e.SymbolDisplayPartKind.typeParameterName;if(524288&r)return e.SymbolDisplayPartKind.aliasName;if(2097152&r)return e.SymbolDisplayPartKind.aliasName;return e.SymbolDisplayPartKind.text}(r))}function ue(t,r){return{text:t,kind:e.SymbolDisplayPartKind[r]}}function de(t){return ue(e.tokenToString(t),e.SymbolDisplayPartKind.keyword)}function pe(t){return ue(t,e.SymbolDisplayPartKind.text)}e.symbolPart=le,e.displayPart=ue,e.spacePart=function(){return ue(" ",e.SymbolDisplayPartKind.space)},e.keywordPart=de,e.punctuationPart=function(t){return ue(e.tokenToString(t),e.SymbolDisplayPartKind.punctuation)},e.operatorPart=function(t){return ue(e.tokenToString(t),e.SymbolDisplayPartKind.operator)},e.textOrKeywordPart=function(t){var r=e.stringToToken(t);return void 0===r?pe(t):de(r)},e.textPart=pe;function fe(){return ue("\n",e.SymbolDisplayPartKind.lineBreak)}function me(e){try{return e(ce),ce.displayParts()}finally{ce.clear()}}function ge(e){return!!(33554432&e.flags)}function _e(e){return!!(2097152&e.flags)}function he(e,t){void 0===t&&(t=!0);var r=e&&ve(e);return r&&!t&&be(r),r}function ye(t,r,n){var i=n(t);return i?e.setOriginalNode(i,t):i=ve(t,n),i&&!r&&be(i),i}function ve(t,r){var n=r?e.visitEachChild(t,(function(e){return ye(e,!0,r)}),e.nullTransformationContext):e.visitEachChild(t,he,e.nullTransformationContext);if(n===t){var i=e.isStringLiteral(t)?e.setOriginalNode(e.factory.createStringLiteralFromNode(t),t):e.isNumericLiteral(t)?e.setOriginalNode(e.factory.createNumericLiteral(t.text,t.numericLiteralFlags),t):e.factory.cloneNode(t);return e.setTextRange(i,t)}return n.parent=void 0,n}function be(e){ke(e),xe(e)}function ke(e){Ee(e,512,Se)}function xe(t){Ee(t,1024,e.getLastChild)}function Ee(t,r,n){e.addEmitFlags(t,r);var i=n(t);i&&Ee(i,r,n)}function Se(e){return e.forEachChild((function(e){return e}))}function De(t,r,n,i,a){e.forEachLeadingCommentRange(n.text,t.pos,Ce(r,n,i,a,e.addSyntheticLeadingComment))}function we(t,r,n,i,a){e.forEachTrailingCommentRange(n.text,t.end,Ce(r,n,i,a,e.addSyntheticTrailingComment))}function Te(t,r,n,i,a){e.forEachTrailingCommentRange(n.text,t.pos,Ce(r,n,i,a,e.addSyntheticLeadingComment))}function Ce(e,t,r,n,i){return function(a,o,s,c){3===s?(a+=2,o-=2):a+=2,i(e,r||s,t.text.slice(a,o),void 0!==n?n:c)}}function Ae(t,r){if(e.startsWith(t,r))return 0;var n=t.indexOf(" "+r);return-1===n&&(n=t.indexOf("."+r)),-1===n&&(n=t.indexOf('"'+r)),-1===n?-1:n+1}function Ne(e){switch(e){case 36:case 34:case 37:case 35:return!0;default:return!1}}function Pe(e,t){return t.getTypeAtLocation(e.parent.parent.expression)}function Ie(e){return 170===e||171===e||172===e||163===e||165===e}function Fe(e){return 253===e||167===e||166===e||168===e||169===e}function Oe(e){return 259===e}function Re(e){return 234===e||235===e||237===e||242===e||243===e||244===e||248===e||250===e||164===e||257===e||264===e||263===e||270===e||262===e||269===e}function Me(e,t){return je(e,e.fileExists,t)}function Le(e){try{return e()}catch(e){return}}function je(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return Le((function(){return t&&t.apply(e,r)}))}function Be(t,r){if(r.readFile){var n=function(e){try{return JSON.parse(e)}catch(e){return}}(r.readFile(t)||""),i={};if(n)for(var o=0,s=["dependencies","devDependencies","optionalDependencies","peerDependencies"];o<s.length;o++){var c=s[o],l=n[c];if(l){var u=new e.Map;for(var d in l)u.set(d,l[d]);i[c]=u}}var p=[[1,i.dependencies],[2,i.devDependencies],[8,i.optionalDependencies],[4,i.peerDependencies]];return a(a({},i),{parseable:!!n,fileName:t,get:f,has:function(e,t){return!!f(e,t)}})}function f(e,t){void 0===t&&(t=15);for(var r=0,n=p;r<n.length;r++){var i=n[r],a=i[0],o=i[1];if(o&&t&a){var s=o.get(e);if(void 0!==s)return s}}}}function ze(e){return void 0!==e.file&&void 0!==e.start&&void 0!==e.length}function Ue(t){var r=t.getSourceFile();return!(!r.externalModuleIndicator&&!r.commonJsModuleIndicator)&&(e.isInJSFile(t)||!e.findAncestor(t,e.isGlobalScopeAugmentation))}e.getNewLineOrDefaultFromHost=function(e,t){var r;return(null==t?void 0:t.newLineCharacter)||(null===(r=e.getNewLine)||void 0===r?void 0:r.call(e))||"\r\n"},e.lineBreakPart=fe,e.mapToDisplayParts=me,e.typeToDisplayParts=function(e,t,r,n){return void 0===n&&(n=0),me((function(i){e.writeType(t,r,17408|n,i)}))},e.symbolToDisplayParts=function(e,t,r,n,i){return void 0===i&&(i=0),me((function(a){e.writeSymbol(t,r,n,8|i,a)}))},e.signatureToDisplayParts=function(e,t,r,n){return void 0===n&&(n=0),n|=25632,me((function(i){e.writeSignature(t,r,n,void 0,i)}))},e.isImportOrExportSpecifierName=function(t){return!!t.parent&&e.isImportOrExportSpecifier(t.parent)&&t.parent.propertyName===t},e.getScriptKind=function(t,r){return e.ensureScriptKind(t,r.getScriptKind&&r.getScriptKind(t))},e.getSymbolTarget=function(t,r){for(var n=t;_e(n)||ge(n)&&n.target;)n=ge(n)&&n.target?n.target:e.skipAlias(n,r);return n},e.getUniqueSymbolId=function(t,r){return e.getSymbolId(e.skipAlias(t,r))},e.getFirstNonSpaceCharacterPosition=function(t,r){for(;e.isWhiteSpaceLike(t.charCodeAt(r));)r+=1;return r},e.getPrecedingNonSpaceCharacterPosition=function(t,r){for(;r>-1&&e.isWhiteSpaceSingleLine(t.charCodeAt(r));)r-=1;return r+1},e.getSynthesizedDeepClone=he,e.getSynthesizedDeepCloneWithReplacements=ye,e.getSynthesizedDeepClones=function(t,r){return void 0===r&&(r=!0),t&&e.factory.createNodeArray(t.map((function(e){return he(e,r)})),t.hasTrailingComma)},e.getSynthesizedDeepClonesWithReplacements=function(t,r,n){return e.factory.createNodeArray(t.map((function(e){return ye(e,r,n)})),t.hasTrailingComma)},e.suppressLeadingAndTrailingTrivia=be,e.suppressLeadingTrivia=ke,e.suppressTrailingTrivia=xe,e.copyComments=function(e,t){var r=e.getSourceFile();!function(e,t){for(var r=e.getFullStart(),n=e.getStart(),i=r;i<n;i++)if(10===t.charCodeAt(i))return!0;return!1}(e,r.text)?Te(e,t,r):De(e,t,r),we(e,t,r)},e.getUniqueName=function(t,r){for(var n=t,i=1;!e.isFileLevelUniqueName(r,n);i++)n=t+"_"+i;return n},e.getRenameLocation=function(t,r,n,i){for(var a=0,o=-1,s=0,c=t;s<c.length;s++){var l=c[s],u=l.fileName,d=l.textChanges;e.Debug.assert(u===r);for(var p=0,f=d;p<f.length;p++){var m=f[p],g=m.span,_=m.newText,h=Ae(_,n);if(-1!==h&&(o=g.start+a+h,!i))return o;a+=_.length-g.length}}return e.Debug.assert(i),e.Debug.assert(o>=0),o},e.copyLeadingComments=De,e.copyTrailingComments=we,e.copyTrailingAsLeadingComments=Te,e.needsParentheses=function(t){return e.isBinaryExpression(t)&&27===t.operatorToken.kind||e.isObjectLiteralExpression(t)},e.getContextualTypeFromParent=function(e,t){var r=e.parent;switch(r.kind){case 205:return t.getContextualType(r);case 218:var n=r,i=n.left,a=n.operatorToken,o=n.right;return Ne(a.kind)?t.getTypeAtLocation(e===o?i:o):t.getContextualType(e);case 287:return r.expression===e?Pe(r,t):void 0;default:return t.getContextualType(e)}},e.quote=function(t,r,n){var i=ne(t,r),a=JSON.stringify(n);return 0===i?"'"+e.stripQuotes(a).replace(/'/g,"\\'").replace(/\\"/g,'"')+"'":a},e.isEqualityOperatorKind=Ne,e.isStringLiteralOrTemplate=function(e){switch(e.kind){case 10:case 14:case 220:case 206:return!0;default:return!1}},e.hasIndexSignature=function(e){return!!e.getStringIndexType()||!!e.getNumberIndexType()},e.getSwitchedType=Pe,e.ANONYMOUS="anonymous function",e.getTypeNodeIfAccessible=function(e,t,r,n){var i=r.getTypeChecker(),a=!0,o=function(){a=!1},s=i.typeToTypeNode(e,t,1,{trackSymbol:function(e,t,r){a=a&&0===i.isSymbolAccessible(e,t,r,!1).accessibility},reportInaccessibleThisError:o,reportPrivateInBaseOfClassExpression:o,reportInaccessibleUniqueSymbolError:o,moduleResolverHost:Z(r,n)});return a?s:void 0},e.syntaxRequiresTrailingCommaOrSemicolonOrASI=Ie,e.syntaxRequiresTrailingFunctionBlockOrSemicolonOrASI=Fe,e.syntaxRequiresTrailingModuleBlockOrSemicolonOrASI=Oe,e.syntaxRequiresTrailingSemicolonOrASI=Re,e.syntaxMayBeASICandidate=e.or(Ie,Fe,Oe,Re),e.positionIsASICandidate=function(t,r,n){var i=e.findAncestor(r,(function(r){return r.end!==t?"quit":e.syntaxMayBeASICandidate(r.kind)}));return!!i&&function(t,r){var n=t.getLastToken(r);if(n&&26===n.kind)return!1;if(Ie(t.kind)){if(n&&27===n.kind)return!1}else if(Oe(t.kind)){if((i=e.last(t.getChildren(r)))&&e.isModuleBlock(i))return!1}else if(Fe(t.kind)){var i;if((i=e.last(t.getChildren(r)))&&e.isFunctionBlock(i))return!1}else if(!Re(t.kind))return!1;if(237===t.kind)return!0;var a=R(t,e.findAncestor(t,(function(e){return!e.parent})),r);return!a||19===a.kind||r.getLineAndCharacterOfPosition(t.getEnd()).line!==r.getLineAndCharacterOfPosition(a.getStart(r)).line}(i,n)},e.probablyUsesSemicolons=function(t){var r=0,n=0;return e.forEachChild(t,(function i(a){if(Re(a.kind)){var o=a.getLastToken(t);o&&26===o.kind?r++:n++}return r+n>=5||e.forEachChild(a,i)})),0===r&&n<=1||r/n>.2},e.tryGetDirectories=function(e,t){return je(e,e.getDirectories,t)||[]},e.tryReadDirectory=function(t,r,n,i,a){return je(t,t.readDirectory,r,n,i,a)||e.emptyArray},e.tryFileExists=Me,e.tryDirectoryExists=function(t,r){return Le((function(){return e.directoryProbablyExists(r,t)}))||!1},e.tryAndIgnoreErrors=Le,e.tryIOAndConsumeErrors=je,e.findPackageJsons=function(t,r,n){var i=[];return e.forEachAncestorDirectory(t,(function(t){if(t===n)return!0;var a=e.combinePaths(t,e.getPackageJsonByPMType(r.getCompilationSettings().packageManagerType));Me(r,a)&&i.push(a)})),i},e.findPackageJson=function(t,r){var n;return e.forEachAncestorDirectory(t,(function(t){var i=e.getModuleByPMType(r.getCompilationSettings().packageManagerType),a=e.getPackageJsonByPMType(r.getCompilationSettings().packageManagerType);return t===i||(!!(n=e.findConfigFile(t,(function(e){return Me(r,e)}),a))||void 0)})),n},e.getPackageJsonsVisibleToFile=function(t,r){if(!r.fileExists)return[];var n=[];return e.forEachAncestorDirectory(e.getDirectoryPath(t),(function(t){var i=e.combinePaths(t,e.getPackageJsonByPMType(r.getCompilationSettings().packageManagerType));if(r.fileExists(i)){var a=Be(i,r);a&&n.push(a)}})),n},e.createPackageJsonInfo=Be,e.consumesNodeCoreModules=function(t){return e.some(t.imports,(function(t){var r=t.text;return e.JsTyping.nodeCoreModules.has(r)}))},e.isInsideNodeModules=function(t){return e.contains(e.getPathComponents(t),"node_modules")},e.isDiagnosticWithLocation=ze,e.findDiagnosticForNode=function(t,r){var n=G(t),i=e.binarySearchKey(r,n,e.identity,e.compareTextSpans);if(i>=0){var a=r[i];return e.Debug.assertEqual(a.file,t.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),e.cast(a,ze)}},e.getDiagnosticsWithinSpan=function(t,r){var n,i=e.binarySearchKey(r,t.start,(function(e){return e.start}),e.compareValues);for(i<0&&(i=~i);(null===(n=r[i-1])||void 0===n?void 0:n.start)===t.start;)i--;for(var a=[],o=e.textSpanEnd(t);;){var s=e.tryCast(r[i],ze);if(!s||s.start>o)break;e.textSpanContainsTextSpan(t,s)&&a.push(s),i++}return a},e.getRefactorContextSpan=function(t){var r=t.startPosition,n=t.endPosition;return e.createTextSpanFromBounds(r,void 0===n?r:n)},e.mapOneOrMany=function(t,r,n){return void 0===n&&(n=e.identity),t?e.isArray(t)?n(e.map(t,r)):r(t,0):void 0},e.firstOrOnly=function(t){return e.isArray(t)?e.first(t):t},e.getNameForExportedSymbol=function(t,r){return 33554432&t.flags||"export="!==t.escapedName&&"default"!==t.escapedName?t.name:e.firstDefined(t.declarations,(function(t){var r;return e.isExportAssignment(t)?null===(r=e.tryCast(e.skipOuterExpressions(t.expression),e.isIdentifier))||void 0===r?void 0:r.text:void 0}))||e.codefix.moduleSymbolToValidIdentifier(function(t){var r;return e.Debug.checkDefined(t.parent,"Symbol parent was undefined. Flags: "+e.Debug.formatSymbolFlags(t.flags)+". Declarations: "+(null===(r=t.declarations)||void 0===r?void 0:r.map((function(t){var r=e.Debug.formatSyntaxKind(t.kind),n=e.isInJSFile(t),i=t.expression;return(n?"[JS]":"")+r+(i?" (expression: "+e.Debug.formatSyntaxKind(i.kind)+")":"")})).join(", "))+".")}(t),r)},e.stringContainsAt=function(e,t,r){var n=t.length;if(n+r>e.length)return!1;for(var i=0;i<n;i++)if(t.charCodeAt(i)!==e.charCodeAt(i+r))return!1;return!0},e.startsWithUnderscore=function(e){return 95===e.charCodeAt(0)},e.isGlobalDeclaration=function(e){return!Ue(e)},e.isNonGlobalDeclaration=Ue,e.isVirtualConstructor=function(t,r,n){var i=t.symbolToString(r),a=e.SymbolDisplay.getSymbolKind(t,r,n);return!(!n.virtual||"__constructor"!==i||"constructor"!==a)}}(d||(d={})),function(e){e.createClassifier=function(){var o=e.createScanner(99,!1);function s(i,s,c){var l=0,u=0,d=[],p=function(t){switch(t){case 3:return{prefix:'"\\\n'};case 2:return{prefix:"'\\\n"};case 1:return{prefix:"/*\n"};case 4:return{prefix:"`\n"};case 5:return{prefix:"}\n",pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return e.Debug.assertNever(t)}}(s),f=p.prefix,m=p.pushTemplate;i=f+i;var g=f.length;m&&d.push(15),o.setText(i);var _=0,h=[],y=0;do{l=o.scan(),e.isTrivia(l)||(k(),u=l);var v=o.getTextPos();if(n(o.getTokenPos(),v,g,a(l),h),v>=i.length){var b=r(o,l,e.lastOrUndefined(d));void 0!==b&&(_=b)}}while(1!==l);function k(){switch(l){case 43:case 67:t[u]||13!==o.reScanSlashToken()||(l=13);break;case 29:78===u&&y++;break;case 31:y>0&&y--;break;case 129:case 148:case 145:case 132:case 149:y>0&&!c&&(l=78);break;case 15:d.push(l);break;case 18:d.length>0&&d.push(l);break;case 19:if(d.length>0){var r=e.lastOrUndefined(d);15===r?17===(l=o.reScanTemplateToken(!1))?d.pop():e.Debug.assertEqual(l,16,"Should have been a template middle."):(e.Debug.assertEqual(r,18,"Should have been an open brace"),d.pop())}break;default:if(!e.isKeyword(l))break;(24===u||e.isKeyword(u)&&e.isKeyword(l)&&!function(t,r){if(!e.isAccessibilityModifier(t))return!0;switch(r){case 135:case 147:case 133:case 124:return!0;default:return!1}}(u,l))&&(l=78)}}return{endOfLineState:_,spans:h}}return{getClassificationsForLine:function(t,r,n){return function(t,r){for(var n=[],a=t.spans,o=0,s=0;s<a.length;s+=3){var c=a[s],l=a[s+1],u=a[s+2];if(o>=0){var d=c-o;d>0&&n.push({length:d,classification:e.TokenClass.Whitespace})}n.push({length:l,classification:i(u)}),o=c+l}var p=r.length-o;p>0&&n.push({length:p,classification:e.TokenClass.Whitespace});return{entries:n,finalLexState:t.endOfLineState}}(s(t,r,n),t)},getEncodedLexicalClassifications:s}};var t=e.arrayToNumericMap([78,10,8,9,13,108,45,46,21,23,19,110,95],(function(e){return e}),(function(){return!0}));function r(t,r,n){switch(r){case 10:if(!t.isUnterminated())return;for(var i=t.getTokenText(),a=i.length-1,o=0;92===i.charCodeAt(a-o);)o++;if(!(1&o))return;return 34===i.charCodeAt(0)?3:2;case 3:return t.isUnterminated()?1:void 0;default:if(e.isTemplateLiteralKind(r)){if(!t.isUnterminated())return;switch(r){case 17:return 5;case 14:return 4;default:return e.Debug.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+r)}}return 15===n?6:void 0}}function n(e,t,r,n,i){if(8!==n){0===e&&r>0&&(e+=r);var a=t-e;a>0&&i.push(e-r,a,n)}}function i(t){switch(t){case 1:return e.TokenClass.Comment;case 3:return e.TokenClass.Keyword;case 4:return e.TokenClass.NumberLiteral;case 25:return e.TokenClass.BigIntLiteral;case 5:return e.TokenClass.Operator;case 6:return e.TokenClass.StringLiteral;case 8:return e.TokenClass.Whitespace;case 10:return e.TokenClass.Punctuation;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return e.TokenClass.Identifier;default:return}}function a(t){if(e.isKeyword(t))return 3;if(function(e){switch(e){case 41:case 43:case 44:case 39:case 40:case 47:case 48:case 49:case 29:case 31:case 32:case 33:case 102:case 101:case 127:case 34:case 35:case 36:case 37:case 50:case 52:case 51:case 55:case 56:case 73:case 72:case 77:case 69:case 70:case 71:case 63:case 64:case 65:case 67:case 68:case 62:case 27:case 60:case 74:case 75:case 76:return!0;default:return!1}}(t)||function(e){switch(e){case 39:case 40:case 54:case 53:case 45:case 46:return!0;default:return!1}}(t))return 5;if(t>=18&&t<=77)return 10;switch(t){case 8:return 4;case 9:return 25;case 10:return 6;case 13:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;default:return e.isTemplateLiteralKind(t)?6:2}}function o(e,t){switch(t){case 259:case 254:case 256:case 253:case 223:case 209:case 210:e.throwIfCancellationRequested()}}function s(t,r,n,i,a){var s=[];return n.forEachChild((function l(u){if(u&&e.textSpanIntersectsWith(a,u.pos,u.getFullWidth())){if(o(r,u.kind),e.isIdentifier(u)&&!e.nodeIsMissing(u)&&i.has(u.escapedText)){var d=t.getSymbolAtLocation(u),p=d&&c(d,e.getMeaningFromLocation(u),t);p&&function(t,r,n){var i=r-t;e.Debug.assert(i>0,"Classification had non-positive length of "+i),s.push(t),s.push(i),s.push(n)}(u.getStart(n),u.getEnd(),p)}u.forEachChild(l)}})),{spans:s,endOfLineState:0}}function c(t,r,n){var i=t.getFlags();return 2885600&i?32&i?11:384&i?12:524288&i?16:1536&i?4&r||1&r&&function(t){return e.some(t.declarations,(function(t){return e.isModuleDeclaration(t)&&1===e.getModuleInstanceState(t)}))}(t)?14:void 0:2097152&i?c(n.getAliasedSymbol(t),r,n):2&r?64&i?13:262144&i?15:void 0:void 0:void 0}function l(e){switch(e){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function u(t){e.Debug.assert(t.spans.length%3==0);for(var r=t.spans,n=[],i=0;i<r.length;i+=3)n.push({textSpan:e.createTextSpan(r[i],r[i+1]),classificationType:l(r[i+2])});return n}function d(t,r,n){var i=n.start,a=n.length,s=e.createScanner(99,!1,r.languageVariant,r.text),c=e.createScanner(99,!1,r.languageVariant,r.text),l=[];return y(r),{spans:l,endOfLineState:0};function u(e,t,r){l.push(e),l.push(t),l.push(r)}function d(t,n,i,a){if(3===n){var o=e.parseIsolatedJSDocComment(r.text,i,a);if(o&&o.jsDoc)return e.setParent(o.jsDoc,t),void function(e){var t=e.pos;if(e.tags)for(var r=0,n=e.tags;r<n.length;r++){var i=n[r];switch(i.pos!==t&&p(t,i.pos-t),u(i.pos,1,10),u(i.tagName.pos,i.tagName.end-i.tagName.pos,18),t=i.tagName.end,i.kind){case 329:a(i);break;case 333:f(i),t=i.end;break;case 332:case 330:y(i.typeExpression),t=i.end}}t!==e.end&&p(t,e.end-t);return;function a(e){e.isNameFirst&&(p(t,e.name.pos-t),u(e.name.pos,e.name.end-e.name.pos,17),t=e.name.end),e.typeExpression&&(p(t,e.typeExpression.pos-t),y(e.typeExpression),t=e.typeExpression.end),e.isNameFirst||(p(t,e.name.pos-t),u(e.name.pos,e.name.end-e.name.pos,17),t=e.name.end)}}(o.jsDoc)}else if(2===n&&function(t,n){var i=/^(\/\/\/\s*)(<)(?:(\S+)((?:[^/]|\/[^>])*)(\/>)?)?/im,a=/(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/gim,o=r.text.substr(t,n),s=i.exec(o);if(!s)return!1;if(!s[3]||!(s[3]in e.commentPragmas))return!1;var c=t;p(c,s[1].length),u(c+=s[1].length,s[2].length,10),u(c+=s[2].length,s[3].length,21),c+=s[3].length;var l=s[4],d=c;for(;;){var f=a.exec(l);if(!f)break;var m=c+f.index;m>d&&(p(d,m-d),d=m),u(d,f[1].length,22),d+=f[1].length,f[2].length&&(p(d,f[2].length),d+=f[2].length),u(d,f[3].length,5),d+=f[3].length,f[4].length&&(p(d,f[4].length),d+=f[4].length),u(d,f[5].length,24),d+=f[5].length}(c+=s[4].length)>d&&p(d,c-d);s[5]&&(u(c,s[5].length,10),c+=s[5].length);var g=t+n;c<g&&p(c,g-c);return!0}(i,a))return;p(i,a)}function p(e,t){u(e,t,1)}function f(e){for(var t=0,r=e.getChildren();t<r.length;t++){y(r[t])}}function m(t,r,n){var i;for(i=r;i<n&&!e.isLineBreak(t.charCodeAt(i));i++);for(u(r,i-r,1),c.setTextPos(i);c.getTextPos()<n;)g()}function g(){var e=c.getTextPos(),t=c.scan(),r=c.getTextPos(),n=h(t);n&&u(e,r-e,n)}function _(t){if(e.isJSDoc(t))return!0;if(e.nodeIsMissing(t))return!0;var n=function(e){switch(e.parent&&e.parent.kind){case 278:if(e.parent.tagName===e)return 19;break;case 279:if(e.parent.tagName===e)return 20;break;case 277:if(e.parent.tagName===e)return 21;break;case 283:if(e.parent.name===e)return 22}return}(t);if(!e.isToken(t)&&11!==t.kind&&void 0===n)return!1;var i=11===t.kind?t.pos:function(t){for(s.setTextPos(t.pos);;){var n=s.getTextPos();if(!e.couldStartTrivia(r.text,n))return n;var i=s.scan(),a=s.getTextPos(),o=a-n;if(!e.isTrivia(i))return n;switch(i){case 4:case 5:continue;case 2:case 3:d(t,i,n,o),s.setTextPos(a);continue;case 7:var c=r.text,l=c.charCodeAt(n);if(60===l||62===l){u(n,o,1);continue}e.Debug.assert(124===l||61===l),m(c,n,a);break;case 6:break;default:e.Debug.assertNever(i)}}}(t),a=t.end-i;if(e.Debug.assert(a>=0),a>0){var o=n||h(t.kind,t);o&&u(i,a,o)}return!0}function h(t,r){if(e.isKeyword(t))return 3;if((29===t||31===t)&&r&&e.getTypeArgumentOrTypeParameterList(r.parent))return 10;if(e.isPunctuation(t)){if(r){var n=r.parent;if(62===t&&(251===n.kind||164===n.kind||161===n.kind||283===n.kind))return 5;if(218===n.kind||216===n.kind||217===n.kind||219===n.kind)return 5}return 10}if(8===t)return 4;if(9===t)return 25;if(10===t)return r&&283===r.parent.kind?24:6;if(13===t)return 6;if(e.isTemplateLiteralKind(t))return 6;if(11===t)return 23;if(78===t){if(r)switch(r.parent.kind){case 254:return r.parent.name===r?11:void 0;case 160:return r.parent.name===r?15:void 0;case 256:return r.parent.name===r?13:void 0;case 258:return r.parent.name===r?12:void 0;case 259:return r.parent.name===r?14:void 0;case 161:return r.parent.name===r?e.isThisIdentifier(r)?3:17:void 0}return 2}}function y(n){if(n&&e.decodedTextSpanIntersectsWith(i,a,n.pos,n.getFullWidth())){o(t,n.kind);for(var s=0,c=n.getChildren(r);s<c.length;s++){var l=c[s];_(l)||y(l)}}}}e.getSemanticClassifications=function(e,t,r,n,i){return u(s(e,t,r,n,i))},e.getEncodedSemanticClassifications=s,e.getSyntacticClassifications=function(e,t,r){return u(d(e,t,r))},e.getEncodedSyntacticClassifications=d}(d||(d={})),function(e){!function(t){!function(t){function r(e,t,r,i){return{spans:n(e,r,i,t),endOfLineState:0}}function n(t,r,n,s){var c=[];return t&&r&&function(t,r,n,s,c){var l=t.getTypeChecker(),u=!1;function d(p){switch(p.kind){case 259:case 254:case 256:case 253:case 223:case 209:case 210:c.throwIfCancellationRequested()}if(p&&e.textSpanIntersectsWith(n,p.pos,p.getFullWidth())&&0!==p.getFullWidth()){var f=u;if((e.isJsxElement(p)||e.isJsxSelfClosingElement(p))&&(u=!0),e.isJsxExpression(p)&&(u=!1),e.isIdentifier(p)&&!u&&!function(t){var r=t.parent;return r&&(e.isImportClause(r)||e.isImportSpecifier(r)||e.isNamespaceImport(r))}(p)){var m=l.getSymbolAtLocation(p);if(m){2097152&m.flags&&(m=l.getAliasedSymbol(m));var g=function(t,r){var n=t.getFlags();if(32&n)return 0;if(384&n)return 1;if(524288&n)return 5;if(64&n){if(2&r)return 2}else if(262144&n)return 4;var a=t.valueDeclaration||t.declarations&&t.declarations[0];a&&e.isBindingElement(a)&&(a=i(a));return a&&o.get(a.kind)}(m,e.getMeaningFromLocation(p));if(void 0!==g){var _=0;if(p.parent)(e.isBindingElement(p.parent)||o.get(p.parent.kind)===g)&&p.parent.name===p&&(_=1);6===g&&a(p)&&(g=9),g=function(t,r,n){if(7===n||9===n||6===n){var i=t.getTypeAtLocation(r);if(i){var o=function(e){return e(i)||i.isUnion()&&i.types.some(e)};if(6!==n&&o((function(e){return e.getConstructSignatures().length>0})))return 0;if(o((function(e){return e.getCallSignatures().length>0}))&&!o((function(e){return e.getProperties().length>0}))||function(t){for(;a(t);)t=t.parent;return e.isCallExpression(t.parent)&&t.parent.expression===t}(r))return 9===n?11:10}}return n}(l,p,g);var h=m.valueDeclaration;if(h){var y=e.getCombinedModifierFlags(h),v=e.getCombinedNodeFlags(h);32&y&&(_|=2),256&y&&(_|=4),0!==g&&2!==g&&(64&y||2&v||8&m.getFlags())&&(_|=8),7!==g&&10!==g||!function(t,r){e.isBindingElement(t)&&(t=i(t));if(e.isVariableDeclaration(t))return(!e.isSourceFile(t.parent.parent.parent)||e.isCatchClause(t.parent))&&t.getSourceFile()===r;if(e.isFunctionDeclaration(t))return!e.isSourceFile(t.parent)&&t.getSourceFile()===r;return!1}(h,r)||(_|=32),t.isSourceFileDefaultLibrary(h.getSourceFile())&&(_|=16)}else m.declarations&&m.declarations.some((function(e){return t.isSourceFileDefaultLibrary(e.getSourceFile())}))&&(_|=16);s(p,g,_)}}}p.virtual||(e.forEachChild(p,d),u=f)}}d(r)}(t,r,n,(function(e,t,n){c.push(e.getStart(r),e.getWidth(r),(t+1<<8)+n)}),s),c}function i(t){for(;;){if(!e.isBindingElement(t.parent.parent))return t.parent.parent;t=t.parent.parent}}function a(t){return e.isQualifiedName(t.parent)&&t.parent.right===t||e.isPropertyAccessExpression(t.parent)&&t.parent.name===t}!function(e){e[e.typeOffset=8]="typeOffset",e[e.modifierMask=255]="modifierMask"}(t.TokenEncodingConsts||(t.TokenEncodingConsts={})),function(e){e[e.class=0]="class",e[e.enum=1]="enum",e[e.interface=2]="interface",e[e.namespace=3]="namespace",e[e.typeParameter=4]="typeParameter",e[e.type=5]="type",e[e.parameter=6]="parameter",e[e.variable=7]="variable",e[e.enumMember=8]="enumMember",e[e.property=9]="property",e[e.function=10]="function",e[e.member=11]="member"}(t.TokenType||(t.TokenType={})),function(e){e[e.declaration=0]="declaration",e[e.static=1]="static",e[e.async=2]="async",e[e.readonly=3]="readonly",e[e.defaultLibrary=4]="defaultLibrary",e[e.local=5]="local"}(t.TokenModifier||(t.TokenModifier={})),t.getSemanticClassifications=function(t,n,i,a){var o=r(t,n,i,a);e.Debug.assert(o.spans.length%3==0);for(var s=o.spans,c=[],l=0;l<s.length;l+=3)c.push({textSpan:e.createTextSpan(s[l],s[l+1]),classificationType:s[l+2]});return c},t.getEncodedSemanticClassifications=r;var o=new e.Map([[251,7],[161,6],[164,9],[259,3],[258,1],[294,8],[254,0],[166,11],[253,10],[209,10],[165,11],[168,9],[169,9],[163,9],[256,2],[257,5],[160,4],[291,9],[292,9]])}(t.v2020||(t.v2020={}))}(e.classifier||(e.classifier={}))}(d||(d={})),function(e){!function(t){!function(r){function n(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:e.map((function(e){var r=e.name,n=e.kind,i=e.span;return{name:r,kind:n,kindModifiers:a(e.extension),sortText:t.SortText.LocationPriority,replacementSpan:i}}))}}function a(t){switch(t){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case".tsbuildinfo":return e.Debug.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";case".d.ets":return".d.ets";case".ets":return".ets";default:return e.Debug.assertNever(t)}}var o;function s(r,n,i,a,o,s){var d,p,f=c(n.parent);switch(f.kind){case 192:var g=c(f.parent);switch(g.kind){case 174:var _=g,h=e.findAncestor(f,(function(e){return e.parent===_}));return h?{kind:2,types:u(a.getTypeArgumentConstraint(h)),isNewIdentifier:!1}:void 0;case 190:var y=g,v=y.indexType,b=y.objectType;if(!e.rangeContainsPosition(v,i))return;return l(a.getTypeFromTypeNode(b));case 196:return{kind:0,paths:m(r,n,o,s,a)};case 183:if(!e.isTypeReferenceNode(g.parent))return;var k=(d=g,p=f,e.mapDefined(d.types,(function(t){return t!==p&&e.isLiteralTypeNode(t)&&e.isStringLiteral(t.literal)?t.literal.text:void 0})));return{kind:2,types:u(a.getTypeArgumentConstraint(g)).filter((function(t){return!e.contains(k,t.value)})),isNewIdentifier:!1};default:return}case 291:return e.isObjectLiteralExpression(f.parent)&&f.name===n?function(r,n){var i=r.getContextualType(n);if(!i)return;var a=r.getContextualType(n,4);return{kind:1,symbols:t.getPropertiesForObjectExpression(i,a,n,r),hasIndexSignature:e.hasIndexSignature(i)}}(a,f.parent):w();case 203:var x=f,E=x.expression,S=x.argumentExpression;return n===e.skipParentheses(S)?l(a.getTypeAtLocation(E)):void 0;case 204:case 205:if(!e.isRequireCall(f,!1)&&!e.isImportCall(f)){var D=e.SignatureHelp.getArgumentInfoForCompletions(n,i,r);return D?function(t,r){var n=!1,i=new e.Map,a=[];r.getResolvedSignature(t.invocation,a,t.argumentCount);var o=e.flatMap(a,(function(a){if(e.signatureHasRestParameter(a)||!(t.argumentCount>a.parameters.length)){var o=r.getParameterType(a,t.argumentIndex);return n=n||!!(4&o.flags),u(o,i)}}));return{kind:2,types:o,isNewIdentifier:n}}(D,a):w()}case 264:case 270:case 275:return{kind:0,paths:m(r,n,o,s,a)};default:return w()}function w(){return{kind:2,types:u(e.getContextualTypeFromParent(n,a)),isNewIdentifier:!1}}}function c(t){switch(t.kind){case 187:return e.walkUpParenthesizedTypes(t);case 208:return e.walkUpParenthesizedExpressions(t);default:return t}}function l(t){return t&&{kind:1,symbols:e.filter(t.getApparentProperties(),(function(t){return!(t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration))})),hasIndexSignature:e.hasIndexSignature(t)}}function u(t,r){return void 0===r&&(r=new e.Map),t?(t=e.skipConstraint(t)).isUnion()?e.flatMap(t.types,(function(e){return u(e,r)})):!t.isStringLiteral()||1024&t.flags||!e.addToSeen(r,t.value)?e.emptyArray:[t]:e.emptyArray}function d(e,t,r){return{name:e,kind:t,extension:r}}function p(e){return d(e,"directory",void 0)}function f(t,r,n){var i=function(t,r){var n=Math.max(t.lastIndexOf(e.directorySeparator),t.lastIndexOf(e.altDirectorySeparator)),i=-1!==n?n+1:0,a=t.length-i;return 0===a||e.isIdentifierText(t.substr(i,a),99)?void 0:e.createTextSpan(r+i,a)}(t,r),a=0===t.length?void 0:e.createTextSpan(r,t.length);return n.map((function(t){var r=t.name,n=t.kind,o=t.extension;return-1!==Math.max(r.indexOf(e.directorySeparator),r.indexOf(e.altDirectorySeparator))?{name:r,kind:n,extension:o,span:a}:{name:r,kind:n,extension:o,span:i}}))}function m(t,r,n,a,o){return f(r.text,r.getStart(t)+1,function(t,r,n,a,o){var s=e.normalizeSlashes(r.text),c=t.path,l=e.getDirectoryPath(c);return function(e){if(e&&e.length>=2&&46===e.charCodeAt(0)){var t=e.length>=3&&46===e.charCodeAt(1)?2:1,r=e.charCodeAt(t);return 47===r||92===r}return!1}(s)||!n.baseUrl&&(e.isRootedDiskPath(s)||e.isUrl(s))?function(t,r,n,a,o){var s=g(n);return n.rootDirs?function(t,r,n,a,o,s,c){var l=o.project||s.getCurrentDirectory(),u=!(s.useCaseSensitiveFileNames&&s.useCaseSensitiveFileNames()),d=function(t,r,n,a){t=t.map((function(t){return e.normalizePath(e.isRootedDiskPath(t)?t:e.combinePaths(r,t))}));var o=e.firstDefined(t,(function(t){return e.containsPath(t,n,r,a)?n.substr(t.length):void 0}));return e.deduplicate(i(i([],t.map((function(t){return e.combinePaths(t,o)}))),[n]),e.equateStringsCaseSensitive,e.compareStringsCaseSensitive)}(t,l,n,u);return e.flatMap(d,(function(e){return h(r,e,a,s,c)}))}(n.rootDirs,t,r,s,n,a,o):h(t,r,s,a,o)}(s,l,n,a,c):function(t,r,n,i,a){var o=n.baseUrl,s=n.paths,c=[],l=g(n);if(o){var u=n.project||i.getCurrentDirectory(),p=e.normalizePath(e.combinePaths(u,o));h(t,p,l,i,void 0,c),s&&y(c,t,p,l.extensions,s,i)}for(var f=v(t),m=0,_=function(t,r,n){var i=n.getAmbientModules().map((function(t){return e.stripQuotes(t.name)})).filter((function(r){return e.startsWith(r,t)}));if(void 0!==r){var a=e.ensureTrailingDirectorySeparator(r);return i.map((function(t){return e.removePrefix(t,a)}))}return i}(t,f,a);m<_.length;m++){var b=_[m];c.push(d(b,"external module name",void 0))}if(k(i,n,r,f,l,c),e.getEmitModuleResolutionKind(n)===e.ModuleResolutionKind.NodeJs){var x=!1;if(void 0===f)for(var S=function(e){c.some((function(t){return t.name===e}))||(x=!0,c.push(d(e,"external module name",void 0)))},D=0,w=function(t,r){if(!t.readFile||!t.fileExists)return e.emptyArray;for(var n=[],i=0,a=e.findPackageJsons(r,t);i<a.length;i++)for(var o=a[i],s=e.readJson(o,t),c=0,l=E;c<l.length;c++){var u=s[l[c]];if(u)for(var d in u)u.hasOwnProperty(d)&&!e.startsWith(d,"@types/")&&n.push(d)}return n}(i,r);D<w.length;D++){S(w[D])}x||e.forEachAncestorDirectory(r,(function(r){var n=e.combinePaths(r,e.getModuleByPMType(i.getCompilationSettings().packageManagerType));e.tryDirectoryExists(i,n)&&h(t,n,l,i,void 0,c)}))}return c}(s,l,n,a,o)}(t,r,n,a,o))}function g(e,t){return void 0===t&&(t=!1),{extensions:_(e),includeExtensions:t}}function _(t){var r=e.getSupportedExtensions(t);return t.resolveJsonModule&&e.getEmitModuleResolutionKind(t)===e.ModuleResolutionKind.NodeJs?r.concat(".json"):r}function h(t,r,n,i,a,o){var s=n.extensions,c=n.includeExtensions;void 0===o&&(o=[]),void 0===t&&(t=""),t=e.normalizeSlashes(t),e.hasTrailingDirectorySeparator(t)||(t=e.getDirectoryPath(t)),""===t&&(t="."+e.directorySeparator),t=e.ensureTrailingDirectorySeparator(t);var l=e.resolvePath(r,t),u=e.hasTrailingDirectorySeparator(l)?l:e.getDirectoryPath(l),f=!(i.useCaseSensitiveFileNames&&i.useCaseSensitiveFileNames());if(!e.tryDirectoryExists(i,u))return o;var m=e.tryReadDirectory(i,u,s,void 0,["./*"]);if(m){for(var g=new e.Map,_=0,h=m;_<h.length;_++){var v=h[_];if(v=e.normalizePath(v),!a||0!==e.comparePaths(v,a,r,f)){var b=c||e.fileExtensionIs(v,".json")?e.getBaseFileName(v):e.removeFileExtension(e.getBaseFileName(v));g.set(b,e.tryGetExtensionFromPath(v))}}g.forEach((function(e,t){o.push(d(t,"script",e))}))}var k=e.tryGetDirectories(i,u);if(k)for(var x=0,E=k;x<E.length;x++){var S=E[x],D=e.getBaseFileName(e.normalizePath(S));"@types"!==D&&o.push(p(D))}var w=e.findPackageJson(u,i);if(w){var T=e.readJson(w,i).typesVersions;if("object"==typeof T){var C=e.getPackageJsonTypesVersionsPaths(T),A=C&&C.paths,N=l.slice(e.ensureTrailingDirectorySeparator(u).length);A&&y(o,N,u,s,A,i)}}return o}function y(t,r,n,i,a,o){for(var s in a)if(e.hasProperty(a,s)){var c=a[s];if(c)for(var l=function(e,r,n){t.some((function(t){return t.name===e}))||t.push(d(e,r,n))},u=0,p=b(s,c,r,n,i,o);u<p.length;u++){var f=p[u];l(f.name,f.kind,f.extension)}}}function v(t){return S(t)?e.hasTrailingDirectorySeparator(t)?t:e.getDirectoryPath(t):void 0}function b(t,r,n,a,o,s){if(!e.endsWith(t,"*"))return e.stringContains(t,"*")?e.emptyArray:u(t);var c=t.slice(0,t.length-1),l=e.tryRemovePrefix(n,c);return void 0===l?u(c):e.flatMap(r,(function(t){return function(t,r,n,a,o){if(!o.readDirectory)return;var s=e.hasZeroOrOneAsteriskCharacter(n)?e.tryParsePattern(n):void 0;if(!s)return;var c=e.resolvePath(s.prefix),l=e.hasTrailingDirectorySeparator(s.prefix)?c:e.getDirectoryPath(c),u=e.hasTrailingDirectorySeparator(s.prefix)?"":e.getBaseFileName(c),f=S(t),m=f?e.hasTrailingDirectorySeparator(t)?t:e.getDirectoryPath(t):void 0,g=f?e.combinePaths(l,u+m):l,_=e.normalizePath(s.suffix),h=e.normalizePath(e.combinePaths(r,g)),y=f?h:e.ensureTrailingDirectorySeparator(h)+u,v=_?"**/*":"./*",b=e.mapDefined(e.tryReadDirectory(o,h,a,void 0,[v]),(function(t){var r=e.tryGetExtensionFromPath(t),n=x(t);return void 0===n?void 0:d(e.removeFileExtension(n),"script",r)})),k=e.mapDefined(e.tryGetDirectories(o,h).map((function(t){return e.combinePaths(h,t)})),(function(e){var t=x(e);return void 0===t?void 0:p(t)}));return i(i([],b),k);function x(t){var r,n,i,a=(r=e.normalizePath(t),n=y,i=_,e.startsWith(r,n)&&e.endsWith(r,i)?r.slice(n.length,r.length-i.length):void 0);return void 0===a?void 0:function(t){return t[0]===e.directorySeparator?t.slice(1):t}(a)}}(l,a,t,o,s)}));function u(t){return e.startsWith(t,n)?[p(t)]:e.emptyArray}}function k(t,r,n,i,a,o){void 0===o&&(o=[]);for(var s=new e.Map,c=0,l=e.tryAndIgnoreErrors((function(){return e.getEffectiveTypeRoots(r,t)}))||e.emptyArray;c<l.length;c++){m(l[c])}for(var u=0,p=e.findPackageJsons(n,t);u<p.length;u++){var f=p[u];m(e.combinePaths(e.getDirectoryPath(f),e.isOhpm(r.packageManagerType)?"oh_modules/@types":"node_modules/@types"))}return o;function m(n){if(e.tryDirectoryExists(t,n))for(var c=0,l=e.tryGetDirectories(t,n);c<l.length;c++){var u=l[c],p=e.unmangleScopedPackageName(u);if(!r.types||e.contains(r.types,p))if(void 0===i)s.has(p)||(o.push(d(p,"external module name",void 0)),s.set(p,!0));else{var f=e.combinePaths(n,u),m=e.tryRemoveDirectoryPrefix(i,p,e.hostGetCanonicalFileName(t));void 0!==m&&h(m,f,a,t,void 0,o)}}}}r.getStringLiteralCompletions=function(r,i,a,o,c,l,u,d){if(e.isInReferenceComment(r,i)){var p=function(t,r,n,i){var a=e.getTokenAtPosition(t,r),o=e.getLeadingCommentRanges(t.text,a.pos),s=o&&e.find(o,(function(e){return r>=e.pos&&r<=e.end}));if(!s)return;var c=t.text.slice(s.pos,r),l=x.exec(c);if(!l)return;var u=l[1],d=l[2],p=l[3],m=e.getDirectoryPath(t.path),_="path"===d?h(p,m,g(n,!0),i,t.path):"types"===d?k(i,n,m,v(p),g(n)):e.Debug.fail();return f(p,s.pos+u.length,_)}(r,i,c,l);return p&&n(p)}if(e.isInString(r,i,a)){if(!a||!e.isStringLiteralLike(a))return;return function(r,i,a,o,s,c){if(void 0===r)return;var l=e.createTextSpanFromStringLiteralLikeContent(i);switch(r.kind){case 0:return n(r.paths);case 1:var u=[];return t.getCompletionEntriesFromSymbols(r.symbols,u,i,a,a,o,99,s,4,c),{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:r.hasIndexSignature,optionalReplacementSpan:l,entries:u};case 2:u=r.types.map((function(r){return{name:r.value,kindModifiers:"",kind:"string",sortText:t.SortText.LocationPriority,replacementSpan:e.getReplacementSpanForContextToken(i)}}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:r.isNewIdentifier,optionalReplacementSpan:l,entries:u};default:return e.Debug.assertNever(r)}}(p=s(r,a,i,o,c,l),a,r,o,u,d)}},r.getStringLiteralCompletionDetails=function(r,n,i,o,c,l,u,d){if(o&&e.isStringLiteralLike(o)){var p=s(n,o,i,c,l,u);return p&&function(r,n,i,o,s,c){switch(i.kind){case 0:return(l=e.find(i.paths,(function(e){return e.name===r})))&&t.createCompletionDetails(r,a(l.extension),l.kind,[e.textPart(r)]);case 1:var l;return(l=e.find(i.symbols,(function(e){return e.name===r})))&&t.createCompletionDetailsForSymbol(l,s,o,n,c);case 2:return e.find(i.types,(function(e){return e.value===r}))?t.createCompletionDetails(r,"","type",[e.textPart(r)]):void 0;default:return e.Debug.assertNever(i)}}(r,o,p,n,c,d)}},function(e){e[e.Paths=0]="Paths",e[e.Properties=1]="Properties",e[e.Types=2]="Types"}(o||(o={}));var x=/^(\/\/\/\s*<reference\s+(path|types)\s*=\s*(?:'|"))([^\3"]*)$/,E=["dependencies","devDependencies","peerDependencies","optionalDependencies"];function S(t){return e.stringContains(t,e.directorySeparator)}}(t.StringCompletions||(t.StringCompletions={}))}(e.Completions||(e.Completions={}))}(d||(d={})),function(e){!function(t){var r,n,i,a,o,s;function c(e){return!!(e&&4&e.kind)}function l(e){return c(e)&&!!e.isFromPackageJson}function u(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:e}}function d(t){return 78===(null==t?void 0:t.kind)?e.createTextSpanFromNode(t):void 0}function p(t,r){return e.isSourceFileJS(t)&&!e.isCheckJsEnabledForFile(t,r)}function f(e){switch(e){case 0:case 3:case 2:return!0;default:return!1}}function m(t,r,n){return"object"==typeof n?e.pseudoBigIntToString(n)+"n":e.isString(n)?e.quote(t,r,n):JSON.stringify(n)}function g(e,t,n){return{name:m(e,t,n),kind:"string",kindModifiers:"",sortText:r.LocationPriority}}function _(t,r,n,i,a,o,s,u,d,p,f,m,g){var _,b=e.getReplacementSpanForContextToken(n),k=d&&function(e){return!!(16&e.kind)}(d),x=d&&function(e){return!!(2&e.kind)}(d)||u;if(d&&function(e){return!!(1&e.kind)}(d))_=u?"this"+(k?"?.":"")+"["+h(a,g,s)+"]":"this"+(k?"?.":".")+s;else if((x||k)&&f){_=x?u?"["+h(a,g,s)+"]":"["+s+"]":s,(k||f.questionDotToken)&&(_="?."+_);var E=e.findChildOfKind(f,24,a)||e.findChildOfKind(f,28,a);if(!E)return;var S=e.startsWith(s,f.name.text)?f.name.end:E.end;b=e.createTextSpanFromBounds(E.getStart(a),S)}if(m&&(void 0===_&&(_=s),_="{"+_+"}","boolean"!=typeof m&&(b=e.createTextSpanFromNode(m,a))),d&&function(e){return!!(8&e.kind)}(d)&&f){void 0===_&&(_=s);var D=e.findPrecedingToken(f.pos,a),w="";D&&e.positionIsASICandidate(D.end,D.parent,a)&&(w=";"),w+="(await "+f.expression.getText()+")",_=u?""+w+_:w+(k?"?.":".")+_,b=e.createTextSpanFromBounds(f.getStart(a),f.end)}if(void 0===_||g.includeCompletionsWithInsertText)return{name:s,kind:e.SymbolDisplay.getSymbolKind(o,t,i),kindModifiers:e.SymbolDisplay.getSymbolModifiers(o,t),sortText:r,source:v(d),hasAction:d&&c(d)||void 0,isRecommended:y(t,p,o)||void 0,insertText:_,replacementSpan:b,isPackageJsonImport:l(d)||void 0}}function h(t,r,n){return/^\d+$/.test(n)?n:e.quote(t,r,n)}function y(e,t,r){return e===t||!!(1048576&e.flags)&&r.getExportSymbolOfSymbol(e)===t}function v(t){return c(t)?e.stripQuotes(t.moduleSymbol.name):1===(null==t?void 0:t.kind)?n.ThisProperty:void 0}function b(t,n,i,a,o,s,c,l,u,d,p,f,m,g,h,y){for(var v=e.timestamp(),b=new e.Map,k=0,x=t;k<x.length;k++){var E=x[k],S=h?h[e.getSymbolId(E)]:void 0,D=T(E,c,S,u,!!f);if(D){var w=D.name,C=D.needsConvertPropertyAccess;if(!b.get(w)){var A=_(E,y&&y[e.getSymbolId(E)]||r.LocationPriority,i,a,o,s,w,C,S,g,p,m,d);if(A){var N=!(S||void 0===E.parent&&!e.some(E.declarations,(function(e){return e.getSourceFile()===a.getSourceFile()})));if(b.set(w,N),E.getJsDocTags().length>0&&(A.jsDoc=E.getJsDocTags()),E.declarations){var P=e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(s,E,o,a,a,7);A.displayParts=P.displayParts}n.push(A)}}}}return l("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(e.timestamp()-v)),{has:function(e){return b.has(e)},add:function(e){return b.set(e,!0)}}}function k(t,r,n,i,a,o,s){var c=t.getCompilerOptions(),l=w(t,r,n,p(n,c),i,{includeCompletionsForModuleExports:!0,includeCompletionsWithInsertText:!0},a,o);if(!l)return{type:"none"};if(0!==l.kind)return{type:"request",request:l};var u=l.symbols,d=l.literals,f=l.location,g=l.completionKind,_=l.symbolToOriginInfoMap,h=l.previousToken,y=l.isJsxInitializer,b=l.isTypeOnlyLocation,k=e.find(d,(function(e){return m(n,s,e)===a.name}));return void 0!==k?{type:"literal",literal:k}:e.firstDefined(u,(function(t){var r=_[e.getSymbolId(t)],n=T(t,c.target,r,g,l.isJsxIdentifierExpected);return n&&n.name===a.name&&v(r)===a.source?{type:"symbol",symbol:t,location:f,symbolToOriginInfoMap:_,previousToken:h,isJsxInitializer:y,isTypeOnlyLocation:b}:void 0}))||{type:"none"}}function x(t,r,n){return S(t,"",r,[e.displayPart(t,n)])}function E(t,r,n,i,a,o,s){var c=r.runWithCancellationToken(a,(function(r){return e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(r,t,n,i,i,7)})),l=c.displayParts,u=c.documentation,d=c.symbolKind,p=c.tags;return S(t.name,e.SymbolDisplay.getSymbolModifiers(r,t),d,l,u,p,o,s)}function S(e,t,r,n,i,a,o,s){return{name:e,kindModifiers:t,kind:r,displayParts:n,documentation:i,tags:a,codeActions:o,source:s}}function D(t,r,n){var i=n.getAccessibleSymbolChain(t,r,67108863,!1);return i?e.first(i):t.parent&&(function(e){return e.declarations.some((function(e){return 300===e.kind}))}(t.parent)?t:D(t.parent,r,n))}function w(t,n,i,a,o,s,c,l){var u,d=8===i.scriptKind,p=t.getTypeChecker(),f=t.getCompilerOptions(),m=e.timestamp(),g=e.getTokenAtPosition(i,o);n("getCompletionData: Get current token: "+(e.timestamp()-m)),m=e.timestamp();var _=e.isInComment(i,o,g);n("getCompletionData: Is inside comment: "+(e.timestamp()-m));var h=!1,y=!1;if(_){if(e.hasDocComment(i,o)){if(64===i.text.charCodeAt(o-1))return{kind:1};var v=e.getLineStartPositionForPosition(o,i);if(!/[^\*|\s(/)]/.test(i.text.substring(v,o)))return{kind:2}}var b=function(t,r){var n=e.findAncestor(t,e.isJSDoc);return n&&n.tags&&(e.rangeContainsPosition(n,r)?e.findLast(n.tags,(function(e){return e.pos<r})):void 0)}(g,o);if(b){if(b.tagName.pos<=o&&o<=b.tagName.end)return{kind:1};if(function(e){switch(e.kind){case 329:case 336:case 330:case 332:case 334:return!0;default:return!1}}(b)&&b.typeExpression&&304===b.typeExpression.kind&&((g=e.getTokenAtPosition(i,o))&&(e.isDeclarationName(g)||336===g.parent.kind&&g.parent.name===g)||(h=he(b.typeExpression))),!h&&e.isJSDocParameterTag(b)&&(e.nodeIsMissing(b.name)||b.name.pos<=o&&o<=b.name.end))return{kind:3,tag:b}}if(!h)return void n("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.")}m=e.timestamp();var k=e.findPrecedingToken(o,i,void 0);n("getCompletionData: Get previous token 1: "+(e.timestamp()-m));var x=k;if(x&&o<=x.end&&(e.isIdentifierOrPrivateIdentifier(x)||e.isKeyword(x.kind))){var E=e.timestamp();x=e.findPrecedingToken(x.getFullStart(),i,void 0),n("getCompletionData: Get previous token 2: "+(e.timestamp()-E))}var S,w=g,T=!1,C=!1,A=!1,N=!1,F=!1,B=!1,z=e.getTouchingPropertyName(i,o);if(x){if(function(t){var r=e.timestamp(),a=function(t){return(e.isRegularExpressionLiteral(t)||e.isStringTextContainingNode(t))&&(e.rangeContainsPositionExclusive(e.createTextRangeFromSpan(e.createTextSpanFromNode(t)),o)||o===t.end&&(!!t.isUnterminated||e.isRegularExpressionLiteral(t)))}(t)||function(t){var r=t.parent,n=r.kind;switch(t.kind){case 27:return 251===n||function(t){return 252===t.parent.kind&&!e.isPossiblyTypeArgumentPosition(t,i,p)}(t)||234===n||258===n||fe(n)||256===n||198===n||257===n||e.isClassLike(r)&&!!r.typeParameters&&r.typeParameters.end>=t.pos;case 24:case 22:return 198===n;case 58:return 199===n;case 20:return 290===n||fe(n);case 18:return 258===n;case 29:return 254===n||223===n||256===n||257===n||e.isFunctionLikeKind(n);case 124:return 164===n&&!e.isClassLike(r.parent);case 25:return 161===n||!!r.parent&&198===r.parent.kind;case 123:case 121:case 122:return 161===n&&!e.isConstructorDeclaration(r.parent);case 127:return 268===n||273===n||266===n;case 135:case 147:return!L(t);case 83:case 84:case 92:case 118:case 98:case 113:case 100:case 119:case 85:case 136:case 150:return!0;case 41:return e.isFunctionLike(t.parent)&&!e.isMethodDeclaration(t.parent)}if(I(O(t))&&L(t))return!1;if(pe(t)&&(!e.isIdentifier(t)||e.isParameterPropertyModifier(O(t))||he(t)))return!1;switch(O(t)){case 126:case 83:case 84:case 85:case 134:case 92:case 98:case 118:case 119:case 121:case 122:case 123:case 124:case 113:return!0;case 130:return e.isPropertyDeclaration(t.parent)}return e.isDeclarationName(t)&&!e.isShorthandPropertyAssignment(t.parent)&&!e.isJsxAttribute(t.parent)&&!(e.isClassLike(t.parent)&&(t!==k||o>k.end))}(t)||function(e){if(8===e.kind){var t=e.getFullText();return"."===t.charAt(t.length-1)}return!1}(t)||function(e){if(11===e.kind)return!0;if(31===e.kind&&e.parent){if(278===e.parent.kind)return 278!==z.parent.kind;if(279===e.parent.kind||277===e.parent.kind)return!!e.parent.parent&&276===e.parent.parent.kind}return!1}(t);return n("getCompletionsAtPosition: isCompletionListBlocker: "+(e.timestamp()-r)),a}(x))return void n("Returning an empty list because completion was requested in an invalid position.");var U=x.parent;if(24===x.kind||28===x.kind)switch(T=24===x.kind,C=28===x.kind,U.kind){case 202:if(w=(S=U).expression,(e.isCallExpression(w)||e.isFunctionLike(w)||e.isEtsComponentExpression(w))&&w.end===x.pos&&w.getChildCount(i)&&21!==e.last(w.getChildren(i)).kind&&!w.getLastToken(i))return;if(w.virtual&&20===(null===(u=e.findPrecedingToken(w.pos,i))||void 0===u?void 0:u.kind))return;break;case 158:w=U.left;break;case 259:w=U.name;break;case 196:case 228:w=U;break;default:return}else if(1===i.languageVariant){if(U&&202===U.kind&&(x=U,U=U.parent),g.parent===z)switch(g.kind){case 31:276!==g.parent.kind&&278!==g.parent.kind||(z=g);break;case 43:277===g.parent.kind&&(z=g)}switch(U.kind){case 279:43===x.kind&&(N=!0,z=x);break;case 218:if(!j(U))break;case 277:case 276:case 278:B=!0,29===x.kind&&(A=!0,z=x);break;case 286:19===k.kind&&31===g.kind&&(B=!0);break;case 283:if(U.initializer===k&&k.end<o){B=!0;break}switch(k.kind){case 62:F=!0;break;case 78:B=!0,U!==k.parent&&!U.initializer&&e.findChildOfKind(U,62,i)&&(F=k)}}}}var q=e.timestamp(),J=5,V=!1,H=!1,K=0,W=[],G=[],$=[],Y=l.getImportSuggestionsCache&&l.getImportSuggestionsCache(),X=le();if(T||C)!function(){J=2;var t=e.isLiteralImportTypeNode(w),r=h||t&&!w.isTypeOf||e.isPartOfTypeNode(w.parent)||e.isPossiblyTypeArgumentPosition(x,i,p),n=e.isInRightSideOfInternalImportEqualsDeclaration(w);if(e.isEntityName(w)||t||e.isPropertyAccessExpression(w)){var a=e.isModuleDeclaration(w.parent);a&&(V=!0);var o=p.getSymbolAtLocation(w);if(o&&1920&(o=e.skipAlias(o,p)).flags){var c=p.getExportsOfModule(o);e.Debug.assertEachIsDefined(c,"getExportsOfModule() should all be defined");for(var l=function(e){return p.isValidPropertyAccess(t?w:w.parent,e.name)},u=function(e){return ue(e)},d=a?function(e){return!!(1920&e.flags)&&!e.declarations.every((function(e){return e.parent===w.parent}))}:n?function(e){return u(e)||l(e)}:r?u:l,f=0,m=c;f<m.length;f++){var g=m[f];d(g)&&W.push(g)}if(!r&&o.declarations&&o.declarations.some((function(e){return 300!==e.kind&&259!==e.kind&&258!==e.kind}))){var _=!1;if((v=p.getTypeOfSymbolAtLocation(o,w).getNonOptionalType()).isNullableType())((b=T&&!C&&!1!==s.includeAutomaticOptionalChainCompletions)||C)&&(v=v.getNonNullableType(),b&&(_=!0));ae(v,!!(32768&w.flags),_)}return}}if(e.isMetaProperty(w)&&(103===w.keywordToken||100===w.keywordToken)&&x===w.getChildAt(1)){var y=103===w.keywordToken?"target":"meta";return void W.push(p.createSymbol(4,e.escapeLeadingUnderscores(y)))}if(!r){var v,b;_=!1;if((v=p.tryGetTypeAtLocationWithoutCheck(w).getNonOptionalType()).isNullableType())((b=T&&!C&&!1!==s.includeAutomaticOptionalChainCompletions)||C)&&(v=v.getNonNullableType(),b&&(_=!0));ae(v,!!(32768&w.flags),_)}}();else if(A){var Q=p.getJsxIntrinsicTagNamesAt(z);e.Debug.assertEachIsDefined(Q,"getJsxIntrinsicTagNames() should all be defined"),ce(),W=Q.concat(W),J=3,K=0}else if(N){var Z=x.parent.parent.openingElement.tagName,ee=p.getSymbolAtLocation(Z);ee&&(W=[ee]),J=3,K=0}else if(!ce())return;var te=t.getEtsLibSFromProgram();W=W.filter((function(t){var r;return!t.declarations||!t.declarations.length||(null!==(r=t.declarations)&&void 0!==r?r:[]).filter((function(t){if(!t.getSourceFile().fileName)return!0;var r=e.sys.resolvePath(t.getSourceFile().fileName);return!(!d&&-1!==te.indexOf(r))})).length})),n("getCompletionData: Semantic work: "+(e.timestamp()-q));var re=k&&function(t,r,n,i){var a=t.parent;switch(t.kind){case 78:return e.getContextualTypeFromParent(t,i);case 62:switch(a.kind){case 251:return i.getContextualType(a.initializer);case 218:return i.getTypeAtLocation(a.left);case 283:return i.getContextualTypeForJsxAttribute(a);default:return}case 103:return i.getContextualType(a);case 81:return e.getSwitchedType(e.cast(a,e.isCaseClause),i);case 18:return e.isJsxExpression(a)&&276!==a.parent.kind?i.getContextualTypeForJsxAttribute(a.parent):void 0;default:var o=e.SignatureHelp.getArgumentInfoForCompletions(t,r,n);return o?i.getContextualTypeForArgumentAtIndex(o.invocation,o.argumentIndex+(27===t.kind?1:0)):e.isEqualityOperatorKind(t.kind)&&e.isBinaryExpression(a)&&e.isEqualityOperatorKind(a.operatorToken.kind)?i.getTypeAtLocation(a.left):i.getContextualType(t)}}(k,o,i,p),ne=e.mapDefined(re&&(re.isUnion()?re.types:[re]),(function(e){return e.isLiteral()?e.value:void 0})),ie=k&&re&&function(t,r,n){return e.firstDefined(r&&(r.isUnion()?r.types:[r]),(function(r){var i=r&&r.symbol;return i&&424&i.flags&&!e.isAbstractConstructorSymbol(i)?D(i,t,n):void 0}))}(k,re,p);return{kind:0,symbols:W,completionKind:J,isInSnippetScope:y,propertyAccessToConvert:S,isNewIdentifierLocation:V,location:z,keywordFilters:K,literals:ne,symbolToOriginInfoMap:G,recommendedCompletion:ie,previousToken:k,isJsxInitializer:F,insideJsDocTagTypeExpression:h,symbolToSortTextMap:$,isTypeOnlyLocation:X,isJsxIdentifierExpected:B};function ae(t,r,n){V=!!t.getStringIndexType(),C&&e.some(t.getCallSignatures())&&(V=!0);var i=196===w.kind?w:w.parent;if(a)W.push.apply(W,e.filter(M(t,p),(function(e){return p.isValidPropertyAccessForCompletions(i,t,e)})));else{for(var o=t.getApparentProperties(),c=0,l=o;c<l.length;c++){var u=l[c];p.isValidPropertyAccessForCompletions(i,t,u)&&oe(u,!1,n)}if(o.length){var d=e.getEtsComponentExpressionInnerCallExpressionNode(w)||e.getRootEtsComponentInnerCallExpressionNode(w);d&&(function(t,r){var n=e.getSourceFileOfNode(t).locals;if(!n)return;var i=78===t.expression.kind?t.expression.escapedText:void 0,a=new e.Map;n.forEach((function(t){var r;e.getEtsExtendDecoratorComponentNames(null===(r=t.valueDeclaration)||void 0===r?void 0:r.decorators,f).forEach((function(e){a.has(e)?a.get(e).push(t):a.set(e,[t])}))})),i&&a.has(i)&&a.get(i).forEach((function(e){oe(e,!1,r)}))}(d,n),function(t,r){var n,i,a=e.getSourceFileOfNode(t).locals;if(!a)return;var o=e.isIdentifier(t.expression)?t.expression.escapedText:void 0,s=new e.Map;a.forEach((function(t){var r;e.hasEtsStylesDecoratorNames(null===(r=t.valueDeclaration)||void 0===r?void 0:r.decorators,f)&&(s.has(t.escapedName)?s.get(t.escapedName).push(t):s.set(t.escapedName,[t]))})),null===(i=null===(n=e.getContainingStruct(t))||void 0===n?void 0:n.symbol.members)||void 0===i||i.forEach((function(t){var r;e.hasEtsStylesDecoratorNames(null===(r=t.valueDeclaration)||void 0===r?void 0:r.decorators,f)&&(s.has(t.escapedName)?s.get(t.escapedName).push(t):s.set(t.escapedName,[t]))})),o&&s.size>0&&s.forEach((function(e){e.forEach((function(e){oe(e,!1,r)}))}))}(d,n))}}if(r&&s.includeCompletionsWithInsertText){var m=p.getPromisedTypeOfPromise(t);if(m)for(var g=0,_=m.getApparentProperties();g<_.length;g++){u=_[g];p.isValidPropertyAccessForCompletions(i,m,u)&&oe(u,!0,n)}}}function oe(t,n,i){var a=e.firstDefined(t.declarations,(function(t){return e.tryCast(e.getNameOfDeclaration(t),e.isComputedPropertyName)}));if(a){var o=se(a.expression),c=o&&p.getSymbolAtLocation(o),l=c&&D(c,x,p);if(l&&!G[e.getSymbolId(l)]){W.push(l);var u=l.parent;G[e.getSymbolId(l)]=u&&e.isExternalModuleSymbol(u)?{kind:m(6),moduleSymbol:u,isDefaultExport:!1}:{kind:m(2)}}else s.includeCompletionsWithInsertText&&(f(t),d(t),W.push(t))}else f(t),d(t),W.push(t);function d(t){(function(t){return!!(t.valueDeclaration&&32&e.getEffectiveModifierFlags(t.valueDeclaration)&&e.isClassLike(t.valueDeclaration.parent))})(t)&&($[e.getSymbolId(t)]=r.LocalDeclarationPriority)}function f(t){s.includeCompletionsWithInsertText&&(n&&!G[e.getSymbolId(t)]?G[e.getSymbolId(t)]={kind:m(8)}:i&&(G[e.getSymbolId(t)]={kind:16}))}function m(e){return i?16|e:e}}function se(t){return e.isIdentifier(t)?t:e.isPropertyAccessExpression(t)?se(t.expression):void 0}function ce(){var a=function(){var t,r,n=function(t){if(t){var r=t.parent;switch(t.kind){case 18:case 27:if(e.isObjectLiteralExpression(r)||e.isObjectBindingPattern(r))return r;break;case 41:return e.isMethodDeclaration(r)?e.tryCast(r.parent,e.isObjectLiteralExpression):void 0;case 78:return"async"===t.text&&e.isShorthandPropertyAssignment(t.parent)?t.parent.parent:void 0}}return}(x);if(!n)return 0;if(J=0,201===n.kind){var i=function(t,r){var n=r.getContextualType(t);if(n)return n;if(e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind)return r.getTypeAtLocation(t.parent);return}(n,p);if(void 0===i)return 16777216&n.flags?2:(H=!0,0);var a=p.getContextualType(n,4),o=(a||i).getStringIndexType(),s=(a||i).getNumberIndexType();if(V=!!o||!!s,t=R(i,a,n,p),r=n.properties,0===t.length&&!s)return H=!0,0}else{e.Debug.assert(197===n.kind),V=!1;var c=e.getRootDeclaration(n.parent);if(!e.isVariableLike(c))return e.Debug.fail("Root declaration is not variable-like.");var l=e.hasInitializer(c)||e.hasType(c)||241===c.parent.parent.kind;if(l||161!==c.kind||(e.isExpression(c.parent)?l=!!p.getContextualType(c.parent):166!==c.parent.kind&&169!==c.parent.kind||(l=e.isExpression(c.parent.parent)&&!!p.getContextualType(c.parent.parent))),l){var u=p.getTypeAtLocation(n);if(!u)return 2;var d=e.getContainingClass(n);t=p.getPropertiesOfType(u).filter((function(t){return!(24&e.getDeclarationModifierFlagsFromSymbol(t))||d&&e.contains(u.symbol.declarations,d)})),r=n.elements}}t&&t.length>0&&(W=function(t,r){if(0===r.length)return t;for(var n=new e.Set,i=new e.Set,a=0,o=r;a<o.length;a++){var s=o[a];if((291===s.kind||292===s.kind||199===s.kind||166===s.kind||168===s.kind||169===s.kind||293===s.kind)&&!he(s)){var c=void 0;if(e.isSpreadAssignment(s))me(s,n);else if(e.isBindingElement(s)&&s.propertyName)78===s.propertyName.kind&&(c=s.propertyName.escapedText);else{var l=e.getNameOfDeclaration(s);c=l&&e.isPropertyNameLiteral(l)?e.getEscapedTextOfIdentifierOrLiteral(l):void 0}void 0!==c&&i.add(c)}}var u=t.filter((function(e){return!i.has(e.escapedName)}));return _e(n,u),u}(t,e.Debug.checkDefined(r)));return ge(),1}()||function(){var t=!x||18!==x.kind&&27!==x.kind?void 0:e.tryCast(x.parent,e.isNamedImportsOrExports);if(!t)return 0;var r=(267===t.kind?t.parent.parent:t.parent).moduleSpecifier;if(!r)return 267===t.kind?2:0;var n=p.getSymbolAtLocation(r);if(!n)return 2;J=3,V=!1;var i=p.getExportsAndPropertiesOfModule(n),a=new e.Set(t.elements.filter((function(e){return!he(e)})).map((function(e){return(e.propertyName||e.name).escapedText})));return W=i.filter((function(e){return"default"!==e.escapedName&&!a.has(e.escapedName)})),1}()||function(){var t,n=!x||18!==x.kind&&27!==x.kind?void 0:e.tryCast(x.parent,e.isNamedExports);if(!n)return 0;var i=e.findAncestor(n,e.or(e.isSourceFile,e.isModuleDeclaration));return J=5,V=!1,null===(t=i.locals)||void 0===t||t.forEach((function(t,n){var a,o;W.push(t),(null===(o=null===(a=i.symbol)||void 0===a?void 0:a.exports)||void 0===o?void 0:o.has(n))&&($[e.getSymbolId(t)]=r.OptionalMember)})),1}()||(function(t){if(t){var r=t.parent;switch(t.kind){case 20:case 27:return e.isConstructorDeclaration(t.parent)?t.parent:void 0;default:if(pe(t))return r.parent}}}(x)?(J=5,V=!0,K=4,1):0)||function(){var t=function(t,r,n,i){switch(n.kind){case 337:return e.tryCast(n.parent,e.isObjectTypeDeclaration);case 1:var a=e.tryCast(e.lastOrUndefined(e.cast(n.parent,e.isSourceFile).statements),e.isObjectTypeDeclaration);if(a&&!e.findChildOfKind(a,19,t))return a;break;case 78:if(e.isPropertyDeclaration(n.parent)&&n.parent.initializer===n)return;if(L(n))return e.findAncestor(n,e.isObjectTypeDeclaration)}if(!r)return;switch(r.kind){case 62:return;case 26:case 19:return L(n)&&n.parent.name===n?n.parent.parent:e.tryCast(n,e.isObjectTypeDeclaration);case 18:case 27:return e.tryCast(r.parent,e.isObjectTypeDeclaration);default:if(!L(r))return e.getLineAndCharacterOfPosition(t,r.getEnd()).line!==e.getLineAndCharacterOfPosition(t,i).line&&e.isObjectTypeDeclaration(n)?n:void 0;var o=e.isClassLike(r.parent.parent)?I:P;return o(r.kind)||41===r.kind||e.isIdentifier(r)&&o(e.stringToToken(r.text))?r.parent.parent:void 0}}(i,x,z,o);if(!t)return 0;if(J=3,V=!0,K=41===x.kind?0:e.isClassLike(t)?2:3,!e.isClassLike(t))return 1;var r=26===x.kind?x.parent.parent:x.parent,n=e.isClassElement(r)?e.getEffectiveModifierFlags(r):0;if(78===x.kind&&!he(x))switch(x.getText()){case"private":n|=8;break;case"static":n|=32}if(!(8&n)){var a=e.flatMap(e.getAllSuperTypeNodes(t),(function(e){var r=p.getTypeAtLocation(e);return 32&n?(null==r?void 0:r.symbol)&&p.getPropertiesOfType(p.getTypeOfSymbolAtLocation(r.symbol,t)):r&&p.getPropertiesOfType(r)}));W=function(t,r,n){for(var i=new e.Set,a=0,o=r;a<o.length;a++){var s=o[a];if((164===s.kind||166===s.kind||168===s.kind||169===s.kind)&&(!he(s)&&!e.hasEffectiveModifier(s,8)&&e.hasEffectiveModifier(s,32)===!!(32&n))){var c=e.getPropertyNameForPropertyNameNode(s.name);c&&i.add(c)}}return t.filter((function(t){return!(i.has(t.escapedName)||!t.declarations||8&e.getDeclarationModifierFlagsFromSymbol(t)||t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration))}))}(a,t.members,n)}return 1}()||function(){var t=function(t){if(t){var r=t.parent;switch(t.kind){case 31:case 30:case 43:case 78:case 202:case 284:case 283:case 285:if(r&&(277===r.kind||278===r.kind)){if(31===t.kind){var n=e.findPrecedingToken(t.pos,i,void 0);if(!r.typeArguments||n&&43===n.kind)break}return r}if(283===r.kind)return r.parent.parent;break;case 10:if(r&&(283===r.kind||285===r.kind))return r.parent.parent;break;case 19:if(r&&286===r.kind&&r.parent&&283===r.parent.kind)return r.parent.parent.parent;if(r&&285===r.kind)return r.parent.parent}}return}(x),r=t&&p.getContextualType(t.attributes);if(!r)return 0;var n=t&&p.getContextualType(t.attributes,4);return W=function(t,r){for(var n=new e.Set,i=new e.Set,a=0,o=r;a<o.length;a++){var s=o[a];he(s)||(283===s.kind?n.add(s.name.escapedText):e.isJsxSpreadAttribute(s)&&me(s,i))}var c=t.filter((function(e){return!n.has(e.escapedName)}));return _e(i,c),c}(R(r,n,t.attributes,p),t.attributes.properties),ge(),J=3,V=!1,1}()||(function(){K=function(t){if(t){var r,n=e.findAncestor(t.parent,(function(t){return e.isClassLike(t)?"quit":!(!e.isFunctionLikeDeclaration(t)||r!==t.body)||(r=t,!1)}));return n&&n}}(x)?5:1,J=1,V=function(){if(x){var e=x.parent.kind;switch(O(x)){case 27:return 204===e||167===e||205===e||200===e||218===e||175===e||201===e;case 20:return 204===e||167===e||205===e||208===e||187===e;case 22:return 200===e||172===e||159===e;case 140:case 141:return!0;case 24:return 259===e;case 18:return 254===e||255===e||201===e;case 62:return 251===e||218===e;case 15:return 220===e;case 16:return 230===e;case 123:case 121:case 122:return 164===e}}return!1}(),k!==x&&e.Debug.assert(!!k,"Expected 'contextToken' to be defined when different from 'previousToken'.");var a=k!==x?k.getStart():o,u=function(t,r,n){var i=t;for(;i&&!e.positionBelongsToNode(i,r,n);)i=i.parent;return i}(x,a,i)||i;y=function(t){switch(t.kind){case 300:case 220:case 286:case 232:return!0;default:return e.isStatement(t)}}(u);var d=2887656|(X?0:111551);W=p.getSymbolsInScope(u,d),e.Debug.assertEachIsDefined(W,"getSymbolsInScope() should all be defined");for(var m=0,g=W;m<g.length;m++){var _=g[m];p.isArgumentsSymbol(_)||e.some(_.declarations,(function(e){return e.getSourceFile()===i}))||($[e.getSymbolId(_)]=r.GlobalsOrKeywords)}if(s.includeCompletionsWithInsertText&&300!==u.kind){var h=p.tryGetThisTypeAt(u,!1);if(h&&!function(e,t,r){var n=r.resolveName("self",void 0,111551,!1);if(n&&r.getTypeOfSymbolAtLocation(n,t)===e)return!0;var i=r.resolveName("global",void 0,111551,!1);if(i&&r.getTypeOfSymbolAtLocation(i,t)===e)return!0;var a=r.resolveName("globalThis",void 0,111551,!1);if(a&&r.getTypeOfSymbolAtLocation(a,t)===e)return!0;return!1}(h,i,p))for(var v=0,b=M(h,p);v<b.length;v++){_=b[v];G[e.getSymbolId(_)]={kind:1},W.push(_),$[e.getSymbolId(_)]=r.SuggestedClassMembers}}if(!H&&!!s.includeCompletionsForModuleExports&&(!(!i.externalModuleIndicator&&!i.commonJsModuleIndicator)||!!e.compilerOptionsIndicateEs6Modules(t.getCompilerOptions())||e.programContainsModules(t))){var E=k&&e.isIdentifier(k)?k.text.toLowerCase():"",S=function(r,a){var o=Y&&Y.get(i.fileName,p,c&&a.getProjectVersion?a.getProjectVersion():void 0);if(o)return n("getSymbolsFromOtherSourceFileExports: Using cached list"),o;var s=e.timestamp();n("getSymbolsFromOtherSourceFileExports: Recomputing list"+(c?" for details entry":""));var l=new e.Map,u=new e.Map,d=new e.Map,f=new e.Map,m=[],g=new e.Map;return e.codefix.forEachExternalModuleToImportFrom(t,a,i,!c,!0,(function(t,r,n,i){if(!c||!c.source||e.stripQuotes(t.name)===c.source){var a=n.getTypeChecker(),o=a.resolveExternalModuleSymbol(t);if(e.addToSeen(l,e.getSymbolId(o))){o!==t&&e.every(o.declarations,e.isNonGlobalDeclaration)&&_(o,t,i,!0);for(var s=0,p=a.getExportsAndPropertiesOfModule(t);s<p.length;s++){var m=p[s],h=e.getSymbolId(m).toString();if(e.addToSeen(u,h)&&!e.some(m.declarations,(function(t){return e.isExportSpecifier(t)&&!!t.propertyName&&e.isIdentifierANonContextualKeyword(t.name)}))){var y=a.getMergedSymbol(m.parent)!==o;if(y||e.some(m.declarations,(function(t){return e.isExportSpecifier(t)&&!t.propertyName&&!!t.parent.parent.moduleSpecifier}))){var v=y?m:de(m);if(!v)continue;var b=e.getSymbolId(v).toString();g.has(b)||d.has(b)?e.addToSeen(d,h):(f.set(b,{alias:m,moduleSymbol:t,isFromPackageJson:i}),d.set(h,!0))}else f.delete(h),_(m,t,i,!1)}}}}})),f.forEach((function(e){return _(e.alias,e.moduleSymbol,e.isFromPackageJson,!1)})),n("getSymbolsFromOtherSourceFileExports: "+(e.timestamp()-s)),m;function _(t,n,i,a){var o="default"===t.escapedName;if(o&&(t=e.getLocalSymbolForExportDefault(t)||t),!p.isUndefinedSymbol(t)){e.addToSeen(g,e.getSymbolId(t));var s={kind:4,moduleSymbol:n,isDefaultExport:o,isFromPackageJson:i};m.push({symbol:t,symbolName:e.getNameForExportedSymbol(t,r),origin:s,skipFilter:a})}}}(t.getCompilerOptions().target,l);!c&&Y&&Y.set(i.fileName,S,l.getProjectVersion&&l.getProjectVersion()),S.forEach((function(t){var n=t.symbol,i=t.symbolName,a=t.skipFilter,o=t.origin;if(c){if(c.source&&e.stripQuotes(o.moduleSymbol.name)!==c.source)return}else if(!a&&!function(e,t){if(0===t.length)return!0;for(var r=0,n=0;n<e.length;n++)if(e.charCodeAt(n)===t.charCodeAt(r)&&++r===t.length)return!0;return!1}(i.toLowerCase(),E))return;var s=e.getSymbolId(n);W.push(n),G[s]=o,$[s]=r.AutoImportSuggestions}))}!function(t){var n=le();n&&(K=x&&e.isAssertionExpression(x.parent)?6:7);var a=function(t){var r=e.findAncestor(t,(function(t){return e.isFunctionBlock(t)||function(t){return t.parent&&e.isArrowFunction(t.parent)&&t.parent.body===t}(t)||e.isBindingPattern(t)?"quit":e.isVariableDeclaration(t)}));return r}(z);e.filterMutate(t,(function(t){if(!e.isSourceFile(z)){if(e.isExportAssignment(z.parent))return!0;if(a&&t.valueDeclaration===a)return!1;var o=e.skipAlias(t,p);if(i.externalModuleIndicator&&!f.allowUmdGlobalAccess&&$[e.getSymbolId(t)]===r.GlobalsOrKeywords&&$[e.getSymbolId(o)]===r.AutoImportSuggestions)return!1;if(t=o,e.isInRightSideOfInternalImportEqualsDeclaration(z))return!!(1920&t.flags);if(n)return ue(t)}return!!(111551&e.getCombinedLocalAndExportSymbolFlags(t))}))}(W)}(),1);return 1===a}function le(){return h||!function(t){return t&&112===t.kind&&(177===t.parent.kind||e.isTypeOfExpression(t.parent))}(x)&&(e.isPossiblyTypeArgumentPosition(x,i,p)||e.isPartOfTypeNode(z)||function(t){if(t){var r=t.parent.kind;switch(t.kind){case 58:return 164===r||163===r||161===r||251===r||e.isFunctionLikeKind(r);case 62:return 257===r;case 127:return 226===r;case 29:return 174===r||207===r;case 94:return 160===r}}return!1}(x))}function ue(t,r){void 0===r&&(r=new e.Map);var n=e.skipAlias(t.exportSymbol||t,p);return!!(788968&n.flags)||!!(1536&n.flags)&&e.addToSeen(r,e.getSymbolId(n))&&p.getExportsOfModule(n).some((function(e){return ue(e,r)}))}function de(t){return function(e,t,r){var n=t;for(;2097152&n.flags&&(n=e.getImmediateAliasedSymbol(n));)if(r(n))return n}(p,t,(function(t){return e.some(t.declarations,(function(t){return e.isExportSpecifier(t)||!!t.localSymbol}))}))}function pe(t){return!!t.parent&&e.isParameter(t.parent)&&e.isConstructorDeclaration(t.parent.parent)&&(e.isParameterPropertyModifier(t.kind)||e.isDeclarationName(t))}function fe(t){return e.isFunctionLikeKind(t)&&167!==t}function me(e,t){var r=e.expression,n=p.getSymbolAtLocation(r),i=n&&p.getTypeOfSymbolAtLocation(n,r),a=i&&i.properties;a&&a.forEach((function(e){t.add(e.name)}))}function ge(){W.forEach((function(t){16777216&t.flags&&($[e.getSymbolId(t)]=$[e.getSymbolId(t)]||r.OptionalMember)}))}function _e(t,n){if(0!==t.size)for(var i=0,a=n;i<a.length;i++){var o=a[i];t.has(o.name)&&($[e.getSymbolId(o)]=r.MemberDeclaredBySpreadAssignment)}}function he(e){return e.getStart(i)<=o&&o<=e.getEnd()}}function T(t,r,n,i,a){var o=c(n)?e.getNameForExportedSymbol(t,r):t.name;if(!(void 0===o||1536&t.flags&&e.isSingleOrDoubleQuote(o.charCodeAt(0))||e.isKnownSymbol(t))){var s={name:o,needsConvertPropertyAccess:!1};if(e.isIdentifierText(o,r,a?1:0)||t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration))return s;switch(i){case 3:return;case 0:return{name:JSON.stringify(o),needsConvertPropertyAccess:!1};case 2:case 1:return 32===o.charCodeAt(0)?void 0:{name:o,needsConvertPropertyAccess:!0};case 5:case 4:return s;default:e.Debug.assertNever(i)}}}!function(e){e.LocalDeclarationPriority="0",e.LocationPriority="1",e.OptionalMember="2",e.MemberDeclaredBySpreadAssignment="3",e.SuggestedClassMembers="4",e.GlobalsOrKeywords="5",e.AutoImportSuggestions="6",e.JavascriptIdentifiers="7"}(r=t.SortText||(t.SortText={})),function(e){e.ThisProperty="ThisProperty/"}(n=t.CompletionSource||(t.CompletionSource={})),function(e){e[e.ThisType=1]="ThisType",e[e.SymbolMember=2]="SymbolMember",e[e.Export=4]="Export",e[e.Promise=8]="Promise",e[e.Nullable=16]="Nullable",e[e.SymbolMemberNoExport=2]="SymbolMemberNoExport",e[e.SymbolMemberExport=6]="SymbolMemberExport"}(i||(i={})),function(e){e[e.None=0]="None",e[e.All=1]="All",e[e.ClassElementKeywords=2]="ClassElementKeywords",e[e.InterfaceElementKeywords=3]="InterfaceElementKeywords",e[e.ConstructorParameterKeywords=4]="ConstructorParameterKeywords",e[e.FunctionLikeBodyKeywords=5]="FunctionLikeBodyKeywords",e[e.TypeAssertionKeywords=6]="TypeAssertionKeywords",e[e.TypeKeywords=7]="TypeKeywords",e[e.Last=7]="Last"}(a||(a={})),function(e){e[e.Continue=0]="Continue",e[e.Success=1]="Success",e[e.Fail=2]="Fail"}(o||(o={})),t.createImportSuggestionsForFileCache=function(){var t,r,n;return{isEmpty:function(){return!t},clear:function(){t=void 0,n=void 0,r=void 0},set:function(e,i,a){t=i,n=e,a&&(r=a)},get:function(i,a,o){if(i===n)return o?r===o?t:void 0:(e.forEach(t,(function(e){var t,r,n;(null===(t=e.symbol.declarations)||void 0===t?void 0:t.length)&&(e.symbol=a.getMergedSymbol(e.origin.isDefaultExport&&null!==(r=e.symbol.declarations[0].localSymbol)&&void 0!==r?r:e.symbol.declarations[0].symbol)),(null===(n=e.origin.moduleSymbol.declarations)||void 0===n?void 0:n.length)&&(e.origin.moduleSymbol=a.getMergedSymbol(e.origin.moduleSymbol.declarations[0].symbol))})),t)}}},t.getCompletionsAtPosition=function(n,i,a,o,s,c,l){var m=i.getTypeChecker(),_=i.getCompilerOptions(),h=e.findPrecedingToken(s,o);if(!l||e.isInString(o,s,h)||function(t,r,n,i){switch(r){case".":case"@":return!0;case'"':case"'":case"`":return!!n&&e.isStringLiteralOrTemplate(n)&&i===n.getStart(t)+1;case"#":return!!n&&e.isPrivateIdentifier(n)&&!!e.getContainingClass(n);case"<":return!!n&&29===n.kind&&(!e.isBinaryExpression(n.parent)||j(n.parent));case"/":return!!n&&(e.isStringLiteralLike(n)?!!e.tryGetImportFromModuleSpecifier(n):43===n.kind&&e.isJsxClosingElement(n.parent));default:return e.Debug.assertNever(r)}}(o,l,h,s)){var y=t.StringCompletions.getStringLiteralCompletions(o,s,h,m,_,n,a,c);if(y)return y;if(h&&e.isBreakOrContinueStatement(h.parent)&&(80===h.kind||86===h.kind||78===h.kind))return function(t){var n=function(t){var n=[],i=new e.Map,a=t;for(;a&&!e.isFunctionLike(a);){if(e.isLabeledStatement(a)){var o=a.label.text;i.has(o)||(i.set(o,!0),n.push({name:o,kindModifiers:"",kind:"label",sortText:r.LocationPriority}))}a=a.parent}return n}(t);if(n.length)return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:n}}(h.parent);var v=w(i,a,o,p(o,_),s,c,void 0,n);if(v)switch(v.kind){case 0:return function(t,n,i,a,o,s){var c=o.symbols,l=o.completionKind,u=o.isInSnippetScope,m=o.isNewIdentifierLocation,_=o.location,h=o.propertyAccessToConvert,y=o.keywordFilters,v=o.literals,k=o.symbolToOriginInfoMap,x=o.recommendedCompletion,E=o.isJsxInitializer,S=o.insideJsDocTagTypeExpression,D=o.symbolToSortTextMap;if(_&&_.parent&&e.isJsxClosingElement(_.parent)){var w=_.parent.parent.openingElement.tagName,T=!!e.findChildOfKind(_.parent,31,t),A={name:w.getFullText(t)+(T?"":">"),kind:"class",kindModifiers:void 0,sortText:r.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:d(_),entries:[A]}}var P=[];if(p(t,i)){var I=b(c,P,void 0,_,t,n,i.target,a,l,s,h,o.isJsxIdentifierExpected,E,x,k,D);!function(t,n,i,a,o){e.getNameTable(t).forEach((function(t,s){if(t!==n){var c=e.unescapeLeadingUnderscores(s);!i.has(c)&&e.isIdentifierText(c,a)&&(i.add(c),o.push({name:c,kind:"warning",kindModifiers:"",sortText:r.JavascriptIdentifiers,isFromUncheckedFile:!0}))}}))}(t,_.pos,I,i.target,P)}else{if(!(m||c&&0!==c.length||0!==y))return;b(c,P,void 0,_,t,n,i.target,a,l,s,h,o.isJsxIdentifierExpected,E,x,k,D)}if(0!==y)for(var F=new e.Set(P.map((function(e){return e.name}))),O=0,R=function(t,r){if(!r)return N(t);var n=t+7+1;return C[n]||(C[n]=N(t).filter((function(t){return!function(e){switch(e){case 126:case 129:case 156:case 132:case 134:case 92:case 155:case 117:case 136:case 118:case 138:case 139:case 140:case 141:case 142:case 145:case 146:case 121:case 122:case 123:case 143:case 148:case 149:case 150:case 152:case 153:return!0;default:return!1}}(e.stringToToken(t.name))})))}(y,!S&&e.isSourceFileJS(t));O<R.length;O++){var M=R[O];F.has(M.name)||P.push(M)}for(var L=0,j=v;L<j.length;L++){var B=j[L];P.push(g(t,s,B))}return{isGlobalCompletion:u,isMemberCompletion:f(l),isNewIdentifierLocation:m,optionalReplacementSpan:d(_),entries:P}}(o,m,_,a,v,c);case 1:return u(e.JsDoc.getJSDocTagNameCompletions());case 2:return u(e.JsDoc.getJSDocTagCompletions());case 3:return u(e.JsDoc.getJSDocParameterNameCompletions(v.tag));default:return e.Debug.assertNever(v)}}},t.getCompletionEntriesFromSymbols=b,t.getCompletionEntryDetails=function(r,n,i,a,o,s,l,u,d){var p=r.getTypeChecker(),f=r.getCompilerOptions(),g=o.name,_=e.findPrecedingToken(a,i);if(e.isInString(i,a,_))return t.StringCompletions.getStringLiteralCompletionDetails(g,i,a,_,p,f,s,d);var h=k(r,n,i,a,o,s,u);switch(h.type){case"request":var y=h.request;switch(y.kind){case 1:return e.JsDoc.getJSDocTagNameCompletionDetails(g);case 2:return e.JsDoc.getJSDocTagCompletionDetails(g);case 3:return e.JsDoc.getJSDocParameterNameCompletionDetails(g);default:return e.Debug.assertNever(y)}case"symbol":var v=h.symbol,b=h.location,S=function(t,r,n,i,a,o,s,l,u,d,p){var f=t[e.getSymbolId(r)];if(!f||!c(f))return{codeActions:void 0,sourceDisplay:void 0};var m=f.moduleSymbol,g=i.getMergedSymbol(e.skipAlias(r.exportSymbol||r,i)),_=e.codefix.getImportCompletionAction(g,m,s,e.getNameForExportedSymbol(r,o.target),a,n,d,u&&e.isIdentifier(u)?u.getStart(s):l,p),h=_.moduleSpecifier,y=_.codeAction;return{sourceDisplay:[e.textPart(h)],codeActions:[y]}}(h.symbolToOriginInfoMap,v,r,p,s,f,i,a,h.previousToken,l,u);return E(v,p,i,b,d,S.codeActions,S.sourceDisplay);case"literal":var D=h.literal;return x(m(i,u,D),"string","string"==typeof D?e.SymbolDisplayPartKind.stringLiteral:e.SymbolDisplayPartKind.numericLiteral);case"none":return A().some((function(e){return e.name===g}))?x(g,"keyword",e.SymbolDisplayPartKind.keyword):void 0;default:e.Debug.assertNever(h)}},t.createCompletionDetailsForSymbol=E,t.createCompletionDetails=S,t.getCompletionEntrySymbol=function(e,t,r,n,i,a,o){var s=k(e,t,r,n,i,a,o);return"symbol"===s.type?s.symbol:void 0},function(e){e[e.Data=0]="Data",e[e.JsDocTagName=1]="JsDocTagName",e[e.JsDocTag=2]="JsDocTag",e[e.JsDocParameterName=3]="JsDocParameterName"}(s||(s={})),function(e){e[e.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",e[e.Global=1]="Global",e[e.PropertyAccess=2]="PropertyAccess",e[e.MemberLike=3]="MemberLike",e[e.String=4]="String",e[e.None=5]="None"}(t.CompletionKind||(t.CompletionKind={}));var C=[],A=e.memoize((function(){for(var t=[],n=80;n<=157;n++)t.push({name:e.tokenToString(n),kind:"keyword",kindModifiers:"",sortText:r.GlobalsOrKeywords});return t}));function N(t){return C[t]||(C[t]=A().filter((function(r){var n=e.stringToToken(r.name);switch(t){case 0:return!1;case 1:return F(n)||134===n||140===n||150===n||141===n||e.isTypeKeyword(n)&&151!==n;case 5:return F(n);case 2:return I(n);case 3:return P(n);case 4:return e.isParameterPropertyModifier(n);case 6:return e.isTypeKeyword(n)||85===n;case 7:return e.isTypeKeyword(n);default:return e.Debug.assertNever(t)}})))}function P(e){return 143===e}function I(t){switch(t){case 126:case 133:case 135:case 147:case 130:case 134:return!0;default:return e.isClassMemberModifier(t)}}function F(t){return 130===t||131===t||127===t||!e.isContextualKeyword(t)&&!I(t)}function O(t){return e.isIdentifier(t)?t.originalKeywordKind||0:t.kind}function R(t,r,n,i){var a=r&&r!==t,o=!a||3&r.flags?t:i.getUnionType([t,r]),s=o.isUnion()?i.getAllPossiblePropertiesOfTypes(o.types.filter((function(t){return!(131068&t.flags||i.isArrayLikeType(t)||e.typeHasCallOrConstructSignatures(t,i)||i.isTypeInvalidDueToUnionDiscriminant(t,n))}))):o.getApparentProperties();return a?s.filter((function(t){return e.some(t.declarations,(function(e){return e.parent!==n}))})):s}function M(t,r){return t.isUnion()?e.Debug.checkEachDefined(r.getAllPossiblePropertiesOfTypes(t.types),"getAllPossiblePropertiesOfTypes() should all be defined"):e.Debug.checkEachDefined(t.getApparentProperties(),"getApparentProperties() should all be defined")}function L(t){return t.parent&&e.isClassOrTypeElement(t.parent)&&e.isObjectTypeDeclaration(t.parent.parent)}function j(t){var r=t.left;return e.nodeIsMissing(r)}t.getPropertiesForObjectExpression=R}(e.Completions||(e.Completions={}))}(d||(d={})),function(e){!function(t){function r(t,r){return{fileName:r.fileName,textSpan:e.createTextSpanFromNode(t,r),kind:"none"}}function n(t){return e.isThrowStatement(t)?[t]:e.isTryStatement(t)?e.concatenate(t.catchClause?n(t.catchClause):t.tryBlock&&n(t.tryBlock),t.finallyBlock&&n(t.finallyBlock)):e.isFunctionLike(t)?void 0:o(t,n)}function a(t){return e.isBreakOrContinueStatement(t)?[t]:e.isFunctionLike(t)?void 0:o(t,a)}function o(t,r){var n=[];return t.forEachChild((function(t){var i=r(t);void 0!==i&&n.push.apply(n,e.toArray(i))})),n}function s(e,t){var r=c(t);return!!r&&r===e}function c(t){return e.findAncestor(t,(function(r){switch(r.kind){case 246:if(242===t.kind)return!1;case 239:case 240:case 241:case 238:case 237:return!t.label||function(t,r){return!!e.findAncestor(t.parent,(function(t){return e.isLabeledStatement(t)?t.label.escapedText===r:"quit"}))}(r,t.label.escapedText);default:return e.isFunctionLike(r)&&"quit"}}))}function l(t,r){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return!(!r||!e.contains(n,r.kind))&&(t.push(r),!0)}function u(t){var r=[];if(l(r,t.getFirstToken(),97,115,90)&&237===t.kind)for(var n=t.getChildren(),i=n.length-1;i>=0&&!l(r,n[i],115);i--);return e.forEach(a(t.statement),(function(e){s(t,e)&&l(r,e.getFirstToken(),80,86)})),r}function d(e){var t=c(e);if(t)switch(t.kind){case 239:case 240:case 241:case 237:case 238:return u(t);case 246:return p(t)}}function p(t){var r=[];return l(r,t.getFirstToken(),107),e.forEach(t.caseBlock.clauses,(function(n){l(r,n.getFirstToken(),81,88),e.forEach(a(n),(function(e){s(t,e)&&l(r,e.getFirstToken(),80)}))})),r}function f(t,r){var n=[];(l(n,t.getFirstToken(),111),t.catchClause&&l(n,t.catchClause.getFirstToken(),82),t.finallyBlock)&&l(n,e.findChildOfKind(t,96,r),96);return n}function m(t,r){var i=function(t){for(var r=t;r.parent;){var n=r.parent;if(e.isFunctionBlock(n)||300===n.kind)return n;if(e.isTryStatement(n)&&n.tryBlock===r&&n.catchClause)return r;r=n}}(t);if(i){var a=[];return e.forEach(n(i),(function(t){a.push(e.findChildOfKind(t,109,r))})),e.isFunctionBlock(i)&&e.forEachReturnStatement(i,(function(t){a.push(e.findChildOfKind(t,105,r))})),a}}function g(t,r){var i=e.getContainingFunction(t);if(i){var a=[];return e.forEachReturnStatement(e.cast(i.body,e.isBlock),(function(t){a.push(e.findChildOfKind(t,105,r))})),e.forEach(n(i.body),(function(t){a.push(e.findChildOfKind(t,109,r))})),a}}function _(t){var r=e.getContainingFunction(t);if(r){var n=[];return r.modifiers&&r.modifiers.forEach((function(e){l(n,e,130)})),e.forEachChild(r,(function(t){h(t,(function(t){e.isAwaitExpression(t)&&l(n,t.getFirstToken(),131)}))})),n}}function h(t,r){r(t),e.isFunctionLike(t)||e.isClassLike(t)||e.isInterfaceDeclaration(t)||e.isModuleDeclaration(t)||e.isTypeAliasDeclaration(t)||e.isTypeNode(t)||e.forEachChild(t,(function(e){return h(e,r)}))}t.getDocumentHighlights=function(t,n,a,o,s){var c=e.getTouchingPropertyName(a,o);if(c.parent&&(e.isJsxOpeningElement(c.parent)&&c.parent.tagName===c||e.isJsxClosingElement(c.parent))){var y=c.parent.parent,v=[y.openingElement,y.closingElement].map((function(e){return r(e.tagName,a)}));return[{fileName:a.fileName,highlightSpans:v}]}return function(t,r,n,i,a){var o=new e.Set(a.map((function(e){return e.fileName}))),s=e.FindAllReferences.getReferenceEntriesForNode(t,r,n,a,i,void 0,o);if(!s)return;var c=e.arrayToMultiMap(s.map(e.FindAllReferences.toHighlightSpan),(function(e){return e.fileName}),(function(e){return e.span}));return e.arrayFrom(c.entries(),(function(t){var r=t[0],i=t[1];if(!o.has(r)){e.Debug.assert(n.redirectTargetsMap.has(r));var s=n.getSourceFile(r);r=e.find(a,(function(e){return!!e.redirectInfo&&e.redirectInfo.redirectTarget===s})).fileName,e.Debug.assert(o.has(r))}return{fileName:r,highlightSpans:i}}))}(o,c,t,n,s)||function(t,n){var a=function(t,n){switch(t.kind){case 99:case 91:return e.isIfStatement(t.parent)?function(t,n){for(var i=function(t,r){var n=[];for(;e.isIfStatement(t.parent)&&t.parent.elseStatement===t;)t=t.parent;for(;;){var i=t.getChildren(r);l(n,i[0],99);for(var a=i.length-1;a>=0&&!l(n,i[a],91);a--);if(!t.elseStatement||!e.isIfStatement(t.elseStatement))break;t=t.elseStatement}return n}(t,n),a=[],o=0;o<i.length;o++){if(91===i[o].kind&&o<i.length-1){for(var s=i[o],c=i[o+1],u=!0,d=c.getStart(n)-1;d>=s.end;d--)if(!e.isWhiteSpaceSingleLine(n.text.charCodeAt(d))){u=!1;break}if(u){a.push({fileName:n.fileName,textSpan:e.createTextSpanFromBounds(s.getStart(),c.end),kind:"reference"}),o++;continue}}a.push(r(i[o],n))}return a}(t.parent,n):void 0;case 105:return c(t.parent,e.isReturnStatement,g);case 109:return c(t.parent,e.isThrowStatement,m);case 111:case 82:case 96:return c(82===t.kind?t.parent.parent:t.parent,e.isTryStatement,f);case 107:return c(t.parent,e.isSwitchStatement,p);case 81:case 88:return e.isDefaultClause(t.parent)||e.isCaseClause(t.parent)?c(t.parent.parent.parent,e.isSwitchStatement,p):void 0;case 80:case 86:return c(t.parent,e.isBreakOrContinueStatement,d);case 97:case 115:case 90:return c(t.parent,(function(t){return e.isIterationStatement(t,!0)}),u);case 133:return s(e.isConstructorDeclaration,[133]);case 135:case 147:return s(e.isAccessor,[135,147]);case 131:return c(t.parent,e.isAwaitExpression,_);case 130:return y(_(t));case 125:return y(function(t){var r=e.getContainingFunction(t);if(!r)return;var n=[];return e.forEachChild(r,(function(t){h(t,(function(t){e.isYieldExpression(t)&&l(n,t.getFirstToken(),125)}))})),n}(t));default:return e.isModifierKind(t.kind)&&(e.isDeclaration(t.parent)||e.isVariableStatement(t.parent))?y((a=t.kind,o=t.parent,e.mapDefined(function(t,r){var n=t.parent;switch(n.kind){case 260:case 300:case 232:case 287:case 288:return 128&r&&e.isClassDeclaration(t)?i(i([],t.members),[t]):n.statements;case 167:case 166:case 253:return i(i([],n.parameters),e.isClassLike(n.parent)?n.parent.members:[]);case 254:case 223:case 255:case 256:case 178:var a=n.members;if(92&r){var o=e.find(n.members,e.isConstructorDeclaration);if(o)return i(i([],a),o.parameters)}else if(128&r)return i(i([],a),[n]);return a;case 201:return;default:e.Debug.assertNever(n,"Invalid container kind.")}}(o,e.modifierToFlag(a)),(function(t){return e.findModifier(t,a)})))):void 0}var a,o;function s(r,i){return c(t.parent,r,(function(t){return e.mapDefined(t.symbol.declarations,(function(t){return r(t)?e.find(t.getChildren(n),(function(t){return e.contains(i,t.kind)})):void 0}))}))}function c(e,t,r){return t(e)?y(r(e,n)):void 0}function y(e){return e&&e.map((function(e){return r(e,n)}))}}(t,n);return a&&[{fileName:n.fileName,highlightSpans:a}]}(c,a)}}(e.DocumentHighlights||(e.DocumentHighlights={}))}(d||(d={})),function(e){function t(t,n,i){void 0===n&&(n="");var a=new e.Map,o=e.createGetCanonicalFileName(!!t);function s(e,t,r,n,i,a,o){return l(e,t,r,n,i,a,!0,o)}function c(e,t,r,n,i,a,o){return l(e,t,r,n,i,a,!1,o)}function l(t,r,n,o,s,c,l,u){var d=e.getOrUpdate(a,o,(function(){return new e.Map})),p=d.get(r),f=6===u?100:n.target||1;!p&&i&&((m=i.getDocument(o,r))&&(e.Debug.assert(l),p={sourceFile:m,languageServiceRefCount:0},d.set(r,p)));if(p)p.sourceFile.version!==c&&(p.sourceFile=e.updateLanguageServiceSourceFile(p.sourceFile,s,c,s.getChangeRange(p.sourceFile.scriptSnapshot),void 0,n),i&&i.setDocument(o,r,p.sourceFile)),l&&p.languageServiceRefCount++;else{var m=e.createLanguageServiceSourceFile(t,s,f,c,!1,u,n);i&&i.setDocument(o,r,m),p={sourceFile:m,languageServiceRefCount:1},d.set(r,p)}return e.Debug.assert(0!==p.languageServiceRefCount),p.sourceFile}function u(t,r){var n=e.Debug.checkDefined(a.get(r)),i=n.get(t);i.languageServiceRefCount--,e.Debug.assert(i.languageServiceRefCount>=0),0===i.languageServiceRefCount&&n.delete(t)}return{acquireDocument:function(t,i,a,c,l){return s(t,e.toPath(t,n,o),i,r(i),a,c,l)},acquireDocumentWithKey:s,updateDocument:function(t,i,a,s,l){return c(t,e.toPath(t,n,o),i,r(i),a,s,l)},updateDocumentWithKey:c,releaseDocument:function(t,i){return u(e.toPath(t,n,o),r(i))},releaseDocumentWithKey:u,getLanguageServiceRefCounts:function(t){return e.arrayFrom(a.entries(),(function(e){var r=e[0],n=e[1].get(t);return[r,n&&n.languageServiceRefCount]}))},reportStats:function(){var t=e.arrayFrom(a.keys()).filter((function(e){return e&&"_"===e.charAt(0)})).map((function(e){var t=a.get(e),r=[];return t.forEach((function(e,t){r.push({name:t,refCount:e.languageServiceRefCount})})),r.sort((function(e,t){return t.refCount-e.refCount})),{bucket:e,sourceFiles:r}}));return JSON.stringify(t,void 0,2)},getKeyForCompilationSettings:r}}function r(t){return e.sourceFileAffectingCompilerOptions.map((function(r){return e.getCompilerOptionValue(t,r)})).join("|")}e.createDocumentRegistry=function(e,r){return t(e,r)},e.createDocumentRegistryInternal=t}(d||(d={})),function(e){!function(t){function r(t,r){return e.forEach(300===t.kind?t.statements:t.body.statements,(function(t){return r(t)||c(t)&&e.forEach(t.body&&t.body.statements,r)}))}function n(t,n){if(t.externalModuleIndicator||void 0!==t.imports)for(var i=0,a=t.imports;i<a.length;i++){var o=a[i];n(e.importFromModuleSpecifier(o),o)}else r(t,(function(t){switch(t.kind){case 270:case 264:(r=t).moduleSpecifier&&e.isStringLiteral(r.moduleSpecifier)&&n(r,r.moduleSpecifier);break;case 263:var r;l(r=t)&&n(r,r.moduleReference.expression)}}))}function i(t,r,n){var i=t.parent;if(i){var a=n.getMergedSymbol(i);return e.isExternalModuleSymbol(a)?{exportingModuleSymbol:a,exportKind:r}:void 0}}function o(e,t){return t.getMergedSymbol(s(e).symbol)}function s(t){if(204===t.kind)return t.getSourceFile();var r=t.parent;return 300===r.kind?r:(e.Debug.assert(260===r.kind),e.cast(r.parent,c))}function c(e){return 259===e.kind&&10===e.name.kind}function l(e){return 275===e.moduleReference.kind&&10===e.moduleReference.expression.kind}t.createImportTracker=function(t,i,u,d){var p=function(t,r,i){for(var a=new e.Map,o=0,s=t;o<s.length;o++){var c=s[o];i&&i.throwIfCancellationRequested(),n(c,(function(t,n){var i=r.getSymbolAtLocation(n);if(i){var o=e.getSymbolId(i).toString(),s=a.get(o);s||a.set(o,s=[]),s.push(t)}}))}return a}(t,u,d);return function(n,f,m){var g=function(t,n,i,a,l,u){var d=a.exportingModuleSymbol,p=a.exportKind,f=e.nodeSeenTracker(),m=e.nodeSeenTracker(),g=[],_=!!d.globalExports,h=_?void 0:[];return v(d),{directImports:g,indirectUsers:y()};function y(){if(_)return t;for(var r=0,i=d.declarations;r<i.length;r++){var a=i[r];e.isExternalModuleAugmentation(a)&&n.has(a.getSourceFile().fileName)&&E(a)}return h.map(e.getSourceFileOfNode)}function v(t){var r=S(t);if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n];if(f(a))switch(u&&u.throwIfCancellationRequested(),a.kind){case 204:if(e.isImportCall(a)){b(a);break}if(!_){var c=a.parent;if(2===p&&251===c.kind){var d=c.name;if(78===d.kind){g.push(d);break}}}break;case 78:break;case 263:x(a,a.name,e.hasSyntacticModifier(a,1),!1);break;case 264:g.push(a);var m=a.importClause&&a.importClause.namedBindings;m&&266===m.kind?x(a,m.name,!1,!0):!_&&e.isDefaultImport(a)&&E(s(a));break;case 270:a.exportClause?272===a.exportClause.kind?E(s(a),!0):g.push(a):v(o(a,l));break;case 196:a.isTypeOf&&!a.qualifier&&k(a)&&E(a.getSourceFile(),!0),g.push(a);break;default:e.Debug.failBadSyntaxKind(a,"Unexpected import kind.")}}}function b(t){E(e.findAncestor(t,c)||t.getSourceFile(),!!k(t,!0))}function k(t,r){return void 0===r&&(r=!1),e.findAncestor(t,(function(t){return r&&c(t)?"quit":e.some(t.modifiers,(function(e){return 93===e.kind}))}))}function x(t,n,i,a){if(2===p)a||g.push(t);else if(!_){var o=s(t);e.Debug.assert(300===o.kind||259===o.kind),i||function(t,n,i){var a=i.getSymbolAtLocation(n);return!!r(t,(function(t){if(e.isExportDeclaration(t)){var r=t.exportClause;return!t.moduleSpecifier&&r&&e.isNamedExports(r)&&r.elements.some((function(e){return i.getExportSpecifierLocalTargetSymbol(e)===a}))}}))}(o,n,l)?E(o,!0):E(o)}}function E(t,r){if(void 0===r&&(r=!1),e.Debug.assert(!_),m(t)&&(h.push(t),r)){var n=l.getMergedSymbol(t.symbol);if(n){e.Debug.assert(!!(1536&n.flags));var i=S(n);if(i)for(var a=0,o=i;a<o.length;a++){var c=o[a];e.isImportTypeNode(c)||E(s(c),!0)}}}}function S(t){return i.get(e.getSymbolId(t).toString())}}(t,i,p,f,u,d),_=g.directImports,h=g.indirectUsers;return a({indirectUsers:h},function(t,r,n,i,a){var o=[],s=[];function c(e,t){o.push([e,t])}if(t)for(var u=0,d=t;u<d.length;u++){p(d[u])}return{importSearches:o,singleReferences:s};function p(t){if(263!==t.kind)if(78!==t.kind)if(196!==t.kind){if(10===t.moduleSpecifier.kind)if(270!==t.kind){var o=t.importClause||{name:void 0,namedBindings:void 0},u=o.name,d=o.namedBindings;if(d)switch(d.kind){case 266:f(d.name);break;case 267:0!==n&&1!==n||m(d);break;default:e.Debug.assertNever(d)}if(u&&(1===n||2===n)&&(!a||u.escapedText===e.symbolEscapedNameNoDefault(r)))c(u,i.getSymbolAtLocation(u))}else t.exportClause&&e.isNamedExports(t.exportClause)&&m(t.exportClause)}else if(t.qualifier){var p=e.getFirstIdentifier(t.qualifier);p.escapedText===e.symbolName(r)&&s.push(p)}else 2===n&&s.push(t.argument.literal);else f(t);else l(t)&&f(t.name)}function f(e){2!==n||a&&!g(e.escapedText)||c(e,i.getSymbolAtLocation(e))}function m(e){if(e)for(var t=0,n=e.elements;t<n.length;t++){var o=n[t],l=o.name,u=o.propertyName;if(g((u||l).escapedText))if(u)s.push(u),a&&l.escapedText!==r.escapedName||c(l,i.getSymbolAtLocation(l));else c(l,273===o.kind&&o.propertyName?i.getExportSpecifierLocalTargetSymbol(o):i.getSymbolAtLocation(l))}}function g(e){return e===r.escapedName||0!==n&&"default"===e}}(_,n,f.exportKind,u,m))}},function(e){e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.ExportEquals=2]="ExportEquals"}(t.ExportKind||(t.ExportKind={})),function(e){e[e.Import=0]="Import",e[e.Export=1]="Export"}(t.ImportExport||(t.ImportExport={})),t.findModuleReferences=function(e,t,r){for(var i=[],a=e.getTypeChecker(),o=0,s=t;o<s.length;o++){var c=s[o],l=r.valueDeclaration;if(300===l.kind){for(var u=0,d=c.referencedFiles;u<d.length;u++){var p=d[u];e.getSourceFileFromReference(c,p)===l&&i.push({kind:"reference",referencingFile:c,ref:p})}for(var f=0,m=c.typeReferenceDirectives;f<m.length;f++){p=m[f];var g=e.getResolvedTypeReferenceDirectives().get(p.fileName);void 0!==g&&g.resolvedFileName===l.fileName&&i.push({kind:"reference",referencingFile:c,ref:p})}}n(c,(function(e,t){a.getSymbolAtLocation(t)===r&&i.push({kind:"import",literal:t})}))}return i},t.getImportOrExportSymbol=function(t,r,n,a){return a?o():o()||function(){if(!function(t){var r=t.parent;switch(r.kind){case 263:return r.name===t&&l(r);case 268:return!r.propertyName;case 265:case 266:return e.Debug.assert(r.name===t),!0;case 199:return e.isInJSFile(t)&&e.isRequireVariableDeclaration(r,!0);default:return!1}}(t))return;var i=n.getImmediateAliasedSymbol(r);if(!i)return;i=function(t,r){if(t.declarations)for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(e.isExportSpecifier(a)&&!a.propertyName&&!a.parent.parent.moduleSpecifier)return r.getExportSpecifierLocalTargetSymbol(a);if(e.isPropertyAccessExpression(a)&&e.isModuleExportsAccessExpression(a.expression)&&!e.isPrivateIdentifier(a.name))return r.getExportSpecifierLocalTargetSymbol(a.name);if(e.isShorthandPropertyAssignment(a)&&e.isBinaryExpression(a.parent.parent)&&2===e.getAssignmentDeclarationKind(a.parent.parent))return r.getExportSpecifierLocalTargetSymbol(a.name)}return t}(i,n),"export="===i.escapedName&&(i=function(t,r){if(2097152&t.flags)return e.Debug.checkDefined(r.getImmediateAliasedSymbol(t));var n=t.valueDeclaration;if(e.isExportAssignment(n))return e.Debug.checkDefined(n.expression.symbol);if(e.isBinaryExpression(n))return e.Debug.checkDefined(n.right.symbol);if(e.isSourceFile(n))return e.Debug.checkDefined(n.symbol);return e.Debug.fail()}(i,n));var a=e.symbolEscapedNameNoDefault(i);if(void 0===a||"default"===a||a===r.escapedName)return{kind:0,symbol:i}}();function o(){var i=t.parent,o=i.parent;if(r.exportSymbol)return 202===i.kind?r.declarations.some((function(e){return e===i}))&&e.isBinaryExpression(o)?d(o,!1):void 0:s(r.exportSymbol,c(i));var l=function(t,r){var n=e.isVariableDeclaration(t)?t:e.isBindingElement(t)?e.walkUpBindingElementsAndPatterns(t):void 0;return n?t.name!==r||e.isCatchClause(n.parent)?void 0:e.isVariableStatement(n.parent.parent)?n.parent.parent:void 0:t}(i,t);if(l&&e.hasSyntacticModifier(l,1)){if(e.isImportEqualsDeclaration(l)&&l.moduleReference===t){if(a)return;return{kind:0,symbol:n.getSymbolAtLocation(l.name)}}return s(r,c(l))}if(e.isNamespaceExport(i))return s(r,0);if(e.isExportAssignment(i))return u(i);if(e.isExportAssignment(o))return u(o);if(e.isBinaryExpression(i))return d(i,!0);if(e.isBinaryExpression(o))return d(o,!0);if(e.isJSDocTypedefTag(i))return s(r,0);function u(t){var n=e.Debug.checkDefined(t.symbol.parent,"Expected export symbol to have a parent"),i=t.isExportEquals?2:1;return{kind:1,symbol:r,exportInfo:{exportingModuleSymbol:n,exportKind:i}}}function d(t,i){var a;switch(e.getAssignmentDeclarationKind(t)){case 1:a=0;break;case 2:a=2;break;default:return}var o=i?n.getSymbolAtLocation(e.getNameOfAccessExpression(e.cast(t.left,e.isAccessExpression))):r;return o&&s(o,a)}}function s(e,t){var r=i(e,t,n);return r&&{kind:1,symbol:e,exportInfo:r}}function c(t){return e.hasSyntacticModifier(t,512)?1:0}},t.getExportInfo=i}(e.FindAllReferences||(e.FindAllReferences={}))}(d||(d={})),function(e){!function(t){var r;function n(e,t){return void 0===t&&(t=1),{kind:t,node:e.name||e,context:s(e)}}function o(e){return e&&void 0===e.kind}function s(t){if(e.isDeclaration(t))return c(t);if(t.parent){if(!e.isDeclaration(t.parent)&&!e.isExportAssignment(t.parent)){if(e.isInJSFile(t)){var r=e.isBinaryExpression(t.parent)?t.parent:e.isAccessExpression(t.parent)&&e.isBinaryExpression(t.parent.parent)&&t.parent.parent.left===t.parent?t.parent.parent:void 0;if(r&&0!==e.getAssignmentDeclarationKind(r))return c(r)}if(e.isJsxOpeningElement(t.parent)||e.isJsxClosingElement(t.parent))return t.parent.parent;if(e.isJsxSelfClosingElement(t.parent)||e.isLabeledStatement(t.parent)||e.isBreakOrContinueStatement(t.parent))return t.parent;if(e.isStringLiteralLike(t)){var n=e.tryGetImportFromModuleSpecifier(t);if(n){var i=e.findAncestor(n,(function(t){return e.isDeclaration(t)||e.isStatement(t)||e.isJSDocTag(t)}));return e.isDeclaration(i)?c(i):i}}var a=e.findAncestor(t,e.isComputedPropertyName);return a?c(a.parent):void 0}return t.parent.name===t||e.isConstructorDeclaration(t.parent)||e.isExportAssignment(t.parent)||(e.isImportOrExportSpecifier(t.parent)||e.isBindingElement(t.parent))&&t.parent.propertyName===t||88===t.kind&&e.hasSyntacticModifier(t.parent,513)?c(t.parent):void 0}}function c(t){if(t)switch(t.kind){case 251:return e.isVariableDeclarationList(t.parent)&&1===t.parent.declarations.length?e.isVariableStatement(t.parent.parent)?t.parent.parent:e.isForInOrOfStatement(t.parent.parent)?c(t.parent.parent):t.parent:t;case 199:return c(t.parent.parent);case 268:return t.parent.parent.parent;case 273:case 266:return t.parent.parent;case 265:case 272:return t.parent;case 218:return e.isExpressionStatement(t.parent)?t.parent:t;case 241:case 240:return{start:t.initializer,end:t.expression};case 291:case 292:return e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)?c(e.findAncestor(t.parent,(function(t){return e.isBinaryExpression(t)||e.isForInOrOfStatement(t)}))):t;default:return t}}function l(e,t,r){if(r){var n=o(r)?h(r.start,t,r.end):h(r,t);return n.start!==e.start||n.length!==e.length?{contextSpan:n}:void 0}}function u(t,i,a,o,s){if(300!==o.kind){var c=t.getTypeChecker();if(292===o.parent.kind){var l=[];return r.getReferenceEntriesForShorthandPropertyAssignment(o,c,(function(e){return l.push(n(e))})),l}if(106===o.kind||e.isSuperProperty(o.parent)){var u=c.getSymbolAtLocation(o);return u.valueDeclaration&&[n(u.valueDeclaration)]}return d(s,o,t,a,i,{implementations:!0,use:1})}}function d(t,n,i,a,o,s,c){return void 0===s&&(s={}),void 0===c&&(c=new e.Set(a.map((function(e){return e.fileName})))),p(r.getReferencedSymbolsForNode(t,n,i,a,o,s,c))}function p(t){return t&&e.flatMap(t,(function(e){return e.references}))}function f(t){var r=t.getSourceFile();return{sourceFile:r,textSpan:h(e.isComputedPropertyName(t)?t.expression:t,r)}}function m(t,n,i){var a=r.getIntersectingMeaningFromDeclarations(i,t),o=t.declarations&&e.firstOrUndefined(t.declarations)||i,s=e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(n,t,o.getSourceFile(),o,o,a);return{displayParts:s.displayParts,kind:s.symbolKind}}function g(e){var t=_(e);if(0===e.kind)return a(a({},t),{isWriteAccess:!1,isDefinition:!1});var r=e.kind,n=e.node;return a(a({},t),{isWriteAccess:v(n),isDefinition:b(n),isInString:2===r||void 0})}function _(e){if(0===e.kind)return{textSpan:e.textSpan,fileName:e.fileName};var t=e.node.getSourceFile(),r=h(e.node,t);return a({textSpan:r,fileName:t.fileName},l(r,t,e.context))}function h(t,r,n){var i=t.getStart(r),a=(n||t).getEnd();return e.isStringLiteralLike(t)&&(e.Debug.assert(void 0===n),i+=1,a-=1),e.createTextSpanFromBounds(i,a)}function y(e){return 0===e.kind?e.textSpan:h(e.node,e.node.getSourceFile())}function v(t){var r=e.getDeclarationFromName(t);return!!r&&function(t){if(8388608&t.flags)return!0;switch(t.kind){case 218:case 199:case 254:case 223:case 255:case 88:case 258:case 294:case 273:case 265:case 263:case 268:case 256:case 327:case 334:case 283:case 259:case 262:case 266:case 272:case 161:case 292:case 257:case 160:return!0;case 291:return!e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent);case 253:case 209:case 167:case 166:case 168:case 169:return!!t.body;case 251:case 164:return!!t.initializer||e.isCatchClause(t.parent);case 165:case 163:case 336:case 329:return!1;default:return e.Debug.failBadSyntaxKind(t)}}(r)||88===t.kind||e.isWriteAccess(t)}function b(t){return 88===t.kind||!!e.getDeclarationFromName(t)||e.isLiteralComputedPropertyDeclarationName(t)||133===t.kind&&e.isConstructorDeclaration(t.parent)}!function(e){e[e.Symbol=0]="Symbol",e[e.Label=1]="Label",e[e.Keyword=2]="Keyword",e[e.This=3]="This",e[e.String=4]="String",e[e.TripleSlashReference=5]="TripleSlashReference"}(t.DefinitionKind||(t.DefinitionKind={})),function(e){e[e.Span=0]="Span",e[e.Node=1]="Node",e[e.StringLiteral=2]="StringLiteral",e[e.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",e[e.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal"}(t.EntryKind||(t.EntryKind={})),t.nodeEntry=n,t.isContextWithStartAndEndNode=o,t.getContextNode=c,t.toContextSpan=l,function(e){e[e.Other=0]="Other",e[e.References=1]="References",e[e.Rename=2]="Rename"}(t.FindReferencesUse||(t.FindReferencesUse={})),t.findReferencedSymbols=function(t,n,i,o,s){var u=e.getTouchingPropertyName(o,s),d=r.getReferencedSymbolsForNode(s,u,t,i,n,{use:1}),p=t.getTypeChecker();return d&&d.length?e.mapDefined(d,(function(t){var r=t.definition,i=t.references;return r&&{definition:p.runWithCancellationToken(n,(function(t){return function(t,r,n){var i=function(){switch(t.type){case 0:var i=m(g=t.symbol,r,n),o=i.displayParts,s=i.kind,l=o.map((function(e){return e.text})).join(""),u=g.declarations&&e.firstOrUndefined(g.declarations),d=u?e.getNameOfDeclaration(u)||u:n;return a(a({},f(d)),{name:l,kind:s,displayParts:o,context:c(u)});case 1:d=t.node;return a(a({},f(d)),{name:d.text,kind:"label",displayParts:[e.displayPart(d.text,e.SymbolDisplayPartKind.text)]});case 2:d=t.node;var p=e.tokenToString(d.kind);return a(a({},f(d)),{name:p,kind:"keyword",displayParts:[{text:p,kind:"keyword"}]});case 3:d=t.node;var g,_=(g=r.getSymbolAtLocation(d))&&e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(r,g,d.getSourceFile(),e.getContainerNode(d),d).displayParts||[e.textPart("this")];return a(a({},f(d)),{name:"this",kind:"var",displayParts:_});case 4:d=t.node;return a(a({},f(d)),{name:d.text,kind:"var",displayParts:[e.displayPart(e.getTextOfNode(d),e.SymbolDisplayPartKind.stringLiteral)]});case 5:return{textSpan:e.createTextSpanFromRange(t.reference),sourceFile:t.file,name:t.reference.fileName,kind:"string",displayParts:[e.displayPart('"'+t.reference.fileName+'"',e.SymbolDisplayPartKind.stringLiteral)]};default:return e.Debug.assertNever(t)}}(),o=i.sourceFile,s=i.textSpan,u=i.name,d=i.kind,p=i.displayParts,g=i.context;return a({containerKind:"",containerName:"",fileName:o.fileName,kind:d,name:u,textSpan:s,displayParts:p},l(s,o,g))}(r,t,u)})),references:i.map(g)}})):void 0},t.getImplementationsAtPosition=function(t,r,n,o,s){var c,l=e.getTouchingPropertyName(o,s),d=u(t,r,n,l,s);if(202===l.parent.kind||199===l.parent.kind||203===l.parent.kind||106===l.kind)c=d&&i([],d);else for(var p=d&&i([],d),f=new e.Map;p&&p.length;){var g=p.shift();if(e.addToSeen(f,e.getNodeId(g.node))){c=e.append(c,g);var h=u(t,r,n,g.node,g.node.pos);h&&p.push.apply(p,h)}}var y=t.getTypeChecker();return e.map(c,(function(t){return function(t,r){var n=_(t);if(0!==t.kind){var i=t.node;return a(a({},n),function(t,r){var n=r.getSymbolAtLocation(e.isDeclaration(t)&&t.name?t.name:t);return n?m(n,r,t):201===t.kind?{kind:"interface",displayParts:[e.punctuationPart(20),e.textPart("object literal"),e.punctuationPart(21)]}:223===t.kind?{kind:"local class",displayParts:[e.punctuationPart(20),e.textPart("anonymous local class"),e.punctuationPart(21)]}:{kind:e.getNodeKind(t),displayParts:[]}}(i,r))}return a(a({},n),{kind:"",displayParts:[]})}(t,y)}))},t.findReferenceOrRenameEntries=function(t,n,i,a,o,s,c){return e.map(p(r.getReferencedSymbolsForNode(o,a,t,i,n,s)),(function(e){return c(e,a,t.getTypeChecker())}))},t.getReferenceEntriesForNode=d,t.toRenameLocation=function(t,r,n,i){return a(a({},_(t)),i&&function(t,r,n){if(0!==t.kind&&e.isIdentifier(r)){var i=t.node,a=t.kind,o=i.parent,s=r.text,c=e.isShorthandPropertyAssignment(o);if(c||e.isObjectBindingElementWithoutPropertyName(o)&&o.name===i&&void 0===o.dotDotDotToken){var l={prefixText:s+": "},u={suffixText:": "+s};if(3===a)return l;if(4===a)return u;if(c){var d=o.parent;return e.isObjectLiteralExpression(d)&&e.isBinaryExpression(d.parent)&&e.isModuleExportsAccessExpression(d.parent.left)?l:u}return l}if(e.isImportSpecifier(o)&&!o.propertyName){var p=e.isExportSpecifier(r.parent)?n.getExportSpecifierLocalTargetSymbol(r.parent):n.getSymbolAtLocation(r);return e.contains(p.declarations,o)?{prefixText:s+" as "}:e.emptyOptions}if(e.isExportSpecifier(o)&&!o.propertyName)return r===t.node||n.getSymbolAtLocation(r)===n.getSymbolAtLocation(t.node)?{prefixText:s+" as "}:{suffixText:" as "+s}}return e.emptyOptions}(t,r,n))},t.toReferenceEntry=g,t.toHighlightSpan=function(e){var t=_(e);if(0===e.kind)return{fileName:t.fileName,span:{textSpan:t.textSpan,kind:"reference"}};var r=v(e.node),n=a({textSpan:t.textSpan,kind:r?"writtenReference":"reference",isInString:2===e.kind||void 0},t.contextSpan&&{contextSpan:t.contextSpan});return{fileName:t.fileName,span:n}},t.getTextSpanOfEntry=y,function(r){function i(t,r,n){for(var i,a=0,o=r.get(t.path)||e.emptyArray;a<o.length;a++){var s=o[a];if(e.isReferencedFile(s)){var c=n.getSourceFileByPath(s.file),l=e.getReferencedFileLocation(n.getSourceFileByPath,s);e.isReferenceFileLocation(l)&&(i=e.append(i,{kind:0,fileName:c.fileName,textSpan:e.createTextSpanFromRange(l)}))}}return i}function a(t,r,n){if(t.parent&&e.isNamespaceExportDeclaration(t.parent)){var i=n.getAliasedSymbol(r),a=n.getMergedSymbol(i);if(i!==a)return a}}function o(t,r,n,i,a,o){var c=1536&t.flags&&t.declarations&&e.find(t.declarations,e.isSourceFile);if(c){var u=t.exports.get("export="),p=l(r,t,!!u,n,o);if(!u||!o.has(c.fileName))return p;var f=r.getTypeChecker();return s(r,p,d(t=e.skipAlias(u,f),void 0,n,o,f,i,a))}}function s(t){for(var r,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];for(var a=0,o=n;a<o.length;a++){var s=o[a];if(s&&s.length)if(r)for(var l=function(n){if(!n.definition||0!==n.definition.type)return r.push(n),"continue";var i=n.definition.symbol,a=e.findIndex(r,(function(e){return!!e.definition&&0===e.definition.type&&e.definition.symbol===i}));if(-1===a)return r.push(n),"continue";var o=r[a];r[a]={definition:o.definition,references:o.references.concat(n.references).sort((function(r,n){var i=c(t,r),a=c(t,n);if(i!==a)return e.compareValues(i,a);var o=y(r),s=y(n);return o.start!==s.start?e.compareValues(o.start,s.start):e.compareValues(o.length,s.length)}))}},u=0,d=s;u<d.length;u++){l(d[u])}else r=s}return r}function c(e,t){var r=0===t.kind?e.getSourceFile(t.fileName):t.node.getSourceFile();return e.getSourceFiles().indexOf(r)}function l(r,i,a,o,s){e.Debug.assert(!!i.valueDeclaration);var c=e.mapDefined(t.findModuleReferences(r,o,i),(function(t){if("import"===t.kind){var r=t.literal.parent;if(e.isLiteralTypeNode(r)){var i=e.cast(r.parent,e.isImportTypeNode);if(a&&!i.qualifier)return}return n(t.literal)}return{kind:0,fileName:t.referencingFile.fileName,textSpan:e.createTextSpanFromRange(t.ref)}}));if(i.declarations)for(var l=0,u=i.declarations;l<u.length;l++){switch((m=u[l]).kind){case 300:break;case 259:s.has(m.getSourceFile().fileName)&&c.push(n(m.name));break;default:e.Debug.assert(!!(33554432&i.flags),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}}var d=i.exports.get("export=");if(d)for(var p=0,f=d.declarations;p<f.length;p++){var m,g=(m=f[p]).getSourceFile();if(s.has(g.fileName)){var _=e.isBinaryExpression(m)&&e.isPropertyAccessExpression(m.left)?m.left.expression:e.isExportAssignment(m)?e.Debug.checkDefined(e.findChildOfKind(m,93,g)):e.getNameOfDeclaration(m)||m;c.push(n(_))}}return c.length?[{definition:{type:0,symbol:i},references:c}]:e.emptyArray}function u(t){return 143===t.kind&&e.isTypeOperatorNode(t.parent)&&143===t.parent.operator}function d(t,r,n,i,a,o,s){var c=r&&function(t,r,n,i){var a=r.parent;if(e.isExportSpecifier(a)&&i)return A(r,t,a,n);return e.firstDefined(t.declarations,(function(i){if(!i.parent){if(33554432&t.flags)return;e.Debug.fail("Unexpected symbol at "+e.Debug.formatSyntaxKind(r.kind)+": "+e.Debug.formatSymbol(t))}return e.isTypeLiteralNode(i.parent)&&e.isUnionTypeNode(i.parent.parent)?n.getPropertyOfType(n.getTypeFromTypeNode(i.parent.parent),t.name):void 0}))}(t,r,a,!q(s))||t,l=r?B(r,c):7,u=[],d=new m(n,i,r?function(t){switch(t.kind){case 167:case 133:return 1;case 78:if(e.isClassLike(t.parent))return e.Debug.assert(t.parent.name===t),2;default:return 0}}(r):0,a,o,l,s,u),f=q(s)?e.find(c.declarations,e.isExportSpecifier):void 0;if(f)C(f.name,c,f,d.createSearch(r,t,void 0),d,!0,!0);else if(r&&88===r.kind)N(r,c,d),g(r,c,{exportingModuleSymbol:e.Debug.checkDefined(c.parent,"Expected export symbol to have a parent"),exportKind:1},d);else{var _=d.createSearch(r,c,void 0,{allSearchSymbols:r?M(c,r,a,2===s.use,!!s.providePrefixAndSuffixTextForRename,!!s.implementations):[c]});p(c,d,_)}return u}function p(t,r,n){var i=function(t){var r=t.declarations,n=t.flags,i=t.parent,a=t.valueDeclaration;if(a&&(209===a.kind||223===a.kind))return a;if(!r)return;if(8196&n){var o=e.find(r,(function(t){return e.hasEffectiveModifier(t,8)||e.isPrivateIdentifierPropertyDeclaration(t)}));return o?e.getAncestor(o,254):void 0}if(r.some(e.isObjectBindingElementWithoutPropertyName))return;var s,c=i&&!(262144&t.flags);if(c&&(!e.isExternalModuleSymbol(i)||i.globalExports))return;for(var l=0,u=r;l<u.length;l++){var d=u[l],p=e.getContainerNode(d);if(s&&s!==p)return;if(!p||300===p.kind&&!e.isExternalOrCommonJsModule(p))return;if(s=p,e.isFunctionExpression(s))for(var f=void 0;f=e.getNextJSDocCommentLocation(s);)s=f}return c?s.getSourceFile():s}(t);if(i)D(i,i.getSourceFile(),n,r,!(e.isSourceFile(i)&&!e.contains(r.sourceFiles,i)));else for(var a=0,o=r.sourceFiles;a<o.length;a++){var s=o[a];r.cancellationToken.throwIfCancellationRequested(),v(s,n,r)}}var f;r.getReferencedSymbolsForNode=function(t,r,c,p,f,m,g){var _,h;if(void 0===m&&(m={}),void 0===g&&(g=new e.Set(p.map((function(e){return e.fileName})))),1===m.use?r=e.getAdjustedReferenceLocation(r):2===m.use&&(r=e.getAdjustedRenameLocation(r)),e.isSourceFile(r)){var y=e.GoToDefinition.getReferenceAtPosition(r,t,c);if(!y)return;var v=c.getTypeChecker().getMergedSymbol(y.file.symbol);if(v)return l(c,v,!1,p,g);if(!(C=c.getFileIncludeReasons()))return;return[{definition:{type:5,reference:y.reference,file:r},references:i(y.file,C,c)||e.emptyArray}]}if(!m.implementations){var b=function(t,r,i){if(e.isTypeKeyword(t.kind)){if(114===t.kind&&e.isVoidExpression(t.parent))return;if(143===t.kind&&!u(t))return;return function(t,r,i,a){var o=e.flatMap(t,(function(t){return i.throwIfCancellationRequested(),e.mapDefined(k(t,e.tokenToString(r),t),(function(e){if(e.kind===r&&(!a||a(e)))return n(e)}))}));return o.length?[{definition:{type:2,node:o[0].node},references:o}]:void 0}(r,t.kind,i,143===t.kind?u:void 0)}if(e.isJumpStatementTarget(t)){var a=e.getTargetLabel(t.parent,t.text);return a&&E(a.parent,a)}if(e.isLabelOfLabeledStatement(t))return E(t.parent,t);if(e.isThis(t))return function(t,r,i){var a=e.getThisContainer(t,!1),o=32;switch(a.kind){case 166:case 165:if(e.isObjectLiteralMethod(a))break;case 164:case 163:case 167:case 168:case 169:o&=e.getSyntacticModifierFlags(a),a=a.parent;break;case 300:if(e.isExternalModule(a)||R(t))return;case 253:case 209:break;default:return}var s=e.flatMap(300===a.kind?r:[a.getSourceFile()],(function(t){return i.throwIfCancellationRequested(),k(t,"this",e.isSourceFile(a)?t:a).filter((function(t){if(!e.isThis(t))return!1;var r=e.getThisContainer(t,!1);switch(a.kind){case 209:case 253:return a.symbol===r.symbol;case 166:case 165:return e.isObjectLiteralMethod(a)&&a.symbol===r.symbol;case 223:case 254:case 255:return r.parent&&a.symbol===r.parent.symbol&&(32&e.getSyntacticModifierFlags(r))===o;case 300:return 300===r.kind&&!e.isExternalModule(r)&&!R(t)}}))})).map((function(e){return n(e)})),c=e.firstDefined(s,(function(t){return e.isParameter(t.node.parent)?t.node:void 0}));return[{definition:{type:3,node:c||t},references:s}]}(t,r,i);if(106===t.kind)return function(t){var r=e.getSuperContainer(t,!1);if(!r)return;var i=32;switch(r.kind){case 164:case 163:case 166:case 165:case 167:case 168:case 169:i&=e.getSyntacticModifierFlags(r),r=r.parent;break;default:return}var a=r.getSourceFile(),o=e.mapDefined(k(a,"super",r),(function(t){if(106===t.kind){var a=e.getSuperContainer(t,!1);return a&&(32&e.getSyntacticModifierFlags(a))===i&&a.parent.symbol===r.symbol?n(t):void 0}}));return[{definition:{type:0,symbol:r.symbol},references:o}]}(t);return}(r,p,f);if(b)return b}var x=c.getTypeChecker(),S=x.getSymbolAtLocation(e.isConstructorDeclaration(r)&&r.parent.name||r);if(S){if("export="===S.escapedName)return l(c,S.parent,!1,p,g);var D=o(S,c,p,f,m,g);if(D&&!(33554432&S.flags))return D;var w=a(r,S,x),T=w&&o(w,c,p,f,m,g);return s(c,D,d(S,r,p,g,x,f,m),T)}if(!m.implementations&&e.isStringLiteralLike(r)){if(e.isRequireCall(r.parent,!0)||e.isExternalModuleReference(r.parent)||e.isImportDeclaration(r.parent)||e.isImportCall(r.parent)){var C=c.getFileIncludeReasons(),A=null===(h=null===(_=r.getSourceFile().resolvedModules)||void 0===_?void 0:_.get(r.text))||void 0===h?void 0:h.resolvedFileName,N=A?c.getSourceFile(A):void 0;if(N)return[{definition:{type:4,node:r},references:i(N,C,c)||e.emptyArray}]}return function(t,r,i,a){var o=e.getContextualTypeOrAncestorTypeNodeType(t,i),s=e.flatMap(r,(function(r){return a.throwIfCancellationRequested(),e.mapDefined(k(r,t.text),(function(r){if(e.isStringLiteralLike(r)&&r.text===t.text){if(!o)return n(r,2);var a=e.getContextualTypeOrAncestorTypeNodeType(r,i);if(o!==i.getStringType()&&o===a)return n(r,2)}}))}));return[{definition:{type:4,node:t},references:s}]}(r,p,x,f)}},r.getReferencesForFileName=function(t,r,n,a){var o,s;void 0===a&&(a=new e.Set(n.map((function(e){return e.fileName}))));var c=null===(o=r.getSourceFile(t))||void 0===o?void 0:o.symbol;if(c)return(null===(s=l(r,c,!1,n,a)[0])||void 0===s?void 0:s.references)||e.emptyArray;var u=r.getFileIncludeReasons(),d=r.getSourceFile(t);return d&&u&&i(d,u,r)||e.emptyArray},function(e){e[e.None=0]="None",e[e.Constructor=1]="Constructor",e[e.Class=2]="Class"}(f||(f={}));var m=function(){function r(t,r,n,i,a,o,s,c){this.sourceFiles=t,this.sourceFilesSet=r,this.specialSearchKind=n,this.checker=i,this.cancellationToken=a,this.searchMeaning=o,this.options=s,this.result=c,this.inheritsFromCache=new e.Map,this.markSeenContainingTypeReference=e.nodeSeenTracker(),this.markSeenReExportRHS=e.nodeSeenTracker(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}return r.prototype.includesSourceFile=function(e){return this.sourceFilesSet.has(e.fileName)},r.prototype.getImportSearches=function(e,r){return this.importTracker||(this.importTracker=t.createImportTracker(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(e,r,2===this.options.use)},r.prototype.createSearch=function(t,r,n,i){void 0===i&&(i={});var a=i.text,o=void 0===a?e.stripQuotes(e.symbolName(e.getLocalSymbolForExportDefault(r)||function(t){if(33555968&t.flags){var r=t.declarations&&e.find(t.declarations,(function(t){return!e.isSourceFile(t)&&!e.isModuleDeclaration(t)}));return r&&r.symbol}}(r)||r)):a,s=i.allSearchSymbols,c=void 0===s?[r]:s,l=e.escapeLeadingUnderscores(o),u=this.options.implementations&&t?function(t,r,n){var i=e.isRightSideOfPropertyAccess(t)?t.parent:void 0,a=i&&n.getTypeAtLocation(i.expression),o=e.mapDefined(a&&(a.isUnionOrIntersection()?a.types:a.symbol===r.parent?void 0:[a]),(function(e){return e.symbol&&96&e.symbol.flags?e.symbol:void 0}));return 0===o.length?void 0:o}(t,r,this.checker):void 0;return{symbol:r,comingFrom:n,text:o,escapedText:l,parents:u,allSearchSymbols:c,includes:function(t){return e.contains(c,t)}}},r.prototype.referenceAdder=function(t){var r=e.getSymbolId(t),i=this.symbolIdToReferences[r];return i||(i=this.symbolIdToReferences[r]=[],this.result.push({definition:{type:0,symbol:t},references:i})),function(e,t){return i.push(n(e,t))}},r.prototype.addStringOrCommentReference=function(e,t){this.result.push({definition:void 0,references:[{kind:0,fileName:e,textSpan:t}]})},r.prototype.markSearchedSymbols=function(t,r){for(var n=e.getNodeId(t),i=this.sourceFileToSeenSymbols[n]||(this.sourceFileToSeenSymbols[n]=new e.Set),a=!1,o=0,s=r;o<s.length;o++){var c=s[o];a=e.tryAddToSet(i,e.getSymbolId(c))||a}return a},r}();function g(e,t,r,n){var i=n.getImportSearches(t,r),a=i.importSearches,o=i.singleReferences,s=i.indirectUsers;if(o.length)for(var c=n.referenceAdder(t),l=0,u=o;l<u.length;l++){var d=u[l];_(d,n)&&c(d)}for(var p=0,f=a;p<f.length;p++){var m=f[p],g=m[0],h=m[1];S(g.getSourceFile(),n.createSearch(g,h,1),n)}if(s.length){var y=void 0;switch(r.exportKind){case 0:y=n.createSearch(e,t,1);break;case 1:y=2===n.options.use?void 0:n.createSearch(e,t,1,{text:"default"})}if(y)for(var b=0,k=s;b<k.length;b++){v(k[b],y,n)}}}function _(t,r){return!!w(t,r)&&(2!==r.options.use||!!e.isIdentifier(t)&&!(e.isImportOrExportSpecifier(t.parent)&&"default"===t.escapedText))}function h(e,t){if(e.declarations)for(var r=0,n=e.declarations;r<n.length;r++){var i=n[r],a=i.getSourceFile();S(a,t.createSearch(i,e,0),t,t.includesSourceFile(a))}}function v(t,r,n){void 0!==e.getNameTable(t).get(r.escapedText)&&S(t,r,n)}function b(t,r,n,i,a){void 0===a&&(a=n);var o=e.isParameterPropertyDeclaration(t.parent,t.parent.parent)?e.first(r.getSymbolsOfParameterPropertyDeclaration(t.parent,t.text)):r.getSymbolAtLocation(t);if(o)for(var s=0,c=k(n,o.name,a);s<c.length;s++){var l=c[s];if(e.isIdentifier(l)&&l!==t&&l.escapedText===t.escapedText){var u=r.getSymbolAtLocation(l);if(u===o||r.getShorthandAssignmentValueSymbol(l.parent)===o||e.isExportSpecifier(l.parent)&&A(l,u,l.parent,r)===o){var d=i(l);if(d)return d}}}}function k(t,r,n){return void 0===n&&(n=t),x(t,r,n).map((function(r){return e.getTouchingPropertyName(t,r)}))}function x(t,r,n){void 0===n&&(n=t);var i=[];if(!r||!r.length)return i;for(var a=t.text,o=a.length,s=r.length,c=a.indexOf(r,n.pos);c>=0&&!(c>n.end);){var l=c+s;0!==c&&e.isIdentifierPart(a.charCodeAt(c-1),99)||l!==o&&e.isIdentifierPart(a.charCodeAt(l),99)||i.push(c),c=a.indexOf(r,c+s+1)}return i}function E(t,r){var i=t.getSourceFile(),a=r.text,o=e.mapDefined(k(i,a,t),(function(t){return t===r||e.isJumpStatementTarget(t)&&e.getTargetLabel(t,a)===r?n(t):void 0}));return[{definition:{type:1,node:r},references:o}]}function S(e,t,r,n){return void 0===n&&(n=!0),r.cancellationToken.throwIfCancellationRequested(),D(e,e,t,r,n)}function D(e,t,r,n,i){if(n.markSearchedSymbols(t,r.allSearchSymbols))for(var a=0,o=x(t,r.text,e);a<o.length;a++){T(t,o[a],r,n,i)}}function w(t,r){return!!(e.getMeaningFromLocation(t)&r.searchMeaning)}function T(r,n,i,a,o){var s=e.getTouchingPropertyName(r,n);if(function(t,r){switch(t.kind){case 79:case 78:return t.text.length===r.length;case 14:case 10:var n=t;return(e.isLiteralNameOfPropertyDeclarationOrIndexAccess(n)||e.isNameOfModuleDeclaration(t)||e.isExpressionOfExternalModuleImportEqualsDeclaration(t)||e.isCallExpression(t.parent)&&e.isBindableObjectDefinePropertyCall(t.parent)&&t.parent.arguments[1]===t)&&n.text.length===r.length;case 8:return e.isLiteralNameOfPropertyDeclarationOrIndexAccess(t)&&t.text.length===r.length;case 88:return 7===r.length;default:return!1}}(s,i.text)){if(w(s,a)){var c=a.checker.getSymbolAtLocation(s);if(c){var l=s.parent;if(!e.isImportSpecifier(l)||l.propertyName!==s){if(e.isExportSpecifier(l))return e.Debug.assert(78===s.kind),void C(s,c,l,i,a,o);var u=function(t,r,n,i){var a=i.checker;return L(r,n,a,!1,2!==i.options.use||!!i.options.providePrefixAndSuffixTextForRename,(function(n,i,a,o){return a&&j(r)!==j(a)&&(a=void 0),t.includes(a||i||n)?{symbol:!i||6&e.getCheckFlags(n)?n:i,kind:o}:void 0}),(function(e){return!(t.parents&&!t.parents.some((function(t){return O(e.parent,t,i.inheritsFromCache,a)})))}))}(i,c,s,a);if(u){switch(a.specialSearchKind){case 0:o&&N(s,u,a);break;case 1:!function(t,r,n,i){e.isNewExpressionTarget(t)&&N(t,n.symbol,i);var a=function(){return i.referenceAdder(n.symbol)};if(e.isClassLike(t.parent))e.Debug.assert(88===t.kind||t.parent.name===t),function(t,r,n){var i=P(t);if(i&&i.declarations)for(var a=0,o=i.declarations;a<o.length;a++){var s=o[a],c=e.findChildOfKind(s,133,r);e.Debug.assert(167===s.kind&&!!c),n(c)}t.exports&&t.exports.forEach((function(t){var r=t.valueDeclaration;if(r&&166===r.kind){var i=r.body;i&&U(i,108,(function(t){e.isNewExpressionTarget(t)&&n(t)}))}}))}(n.symbol,r,a());else{var o=(s=t,e.tryGetClassExtendingExpressionWithTypeArguments(e.climbPastPropertyAccess(s).parent));o&&(function(t,r){var n=P(t.symbol);if(!n||!n.declarations)return;for(var i=0,a=n.declarations;i<a.length;i++){var o=a[i];e.Debug.assert(167===o.kind);var s=o.body;s&&U(s,106,(function(t){e.isCallExpressionTarget(t)&&r(t)}))}}(o,a()),function(e,t){if(function(e){return!!P(e.symbol)}(e))return;var r=e.symbol,n=t.createSearch(void 0,r,void 0);p(r,t,n)}(o,i))}var s}(s,r,i,a);break;case 2:!function(t,r,n){N(t,r.symbol,n);var i=t.parent;if(2===n.options.use||!e.isClassLike(i))return;e.Debug.assert(i.name===t);for(var a=n.referenceAdder(r.symbol),o=0,s=i.members;o<s.length;o++){var c=s[o];e.isMethodOrAccessor(c)&&e.hasSyntacticModifier(c,32)&&(c.body&&c.body.forEachChild((function t(r){108===r.kind?a(r):e.isFunctionLike(r)||e.isClassLike(r)||r.forEachChild(t)})))}}(s,i,a);break;default:e.Debug.assertNever(a.specialSearchKind)}!function(e,r,n,i){var a=t.getImportOrExportSymbol(e,r,i.checker,1===n.comingFrom);if(!a)return;var o=a.symbol;0===a.kind?q(i.options)||h(o,i):g(e,o,a.exportInfo,i)}(s,c,i,a)}else!function(t,r,n){var i=t.flags,a=t.valueDeclaration,o=n.checker.getShorthandAssignmentValueSymbol(a),s=a&&e.getNameOfDeclaration(a);33554432&i||!s||!r.includes(o)||N(s,o,n)}(c,i,a)}}}}else!a.options.implementations&&(a.options.findInStrings&&e.isInString(r,n)||a.options.findInComments&&e.isInNonReferenceComment(r,n))&&a.addStringOrCommentReference(r.fileName,e.createTextSpan(n,i.text.length))}function C(r,n,i,a,o,s,c){e.Debug.assert(!c||!!o.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");var l=i.parent,u=i.propertyName,d=i.name,p=l.parent,f=A(r,n,i,o.checker);if(c||a.includes(f)){if(u?r===u?(p.moduleSpecifier||b(),s&&2!==o.options.use&&o.markSeenReExportRHS(d)&&N(d,e.Debug.checkDefined(i.symbol),o)):o.markSeenReExportRHS(r)&&b():2===o.options.use&&"default"===d.escapedText||b(),!q(o.options)||c){var m=88===r.originalKeywordKind||88===i.name.originalKeywordKind?1:0,_=e.Debug.checkDefined(i.symbol),y=t.getExportInfo(_,m,o.checker);y&&g(r,_,y,o)}if(1!==a.comingFrom&&p.moduleSpecifier&&!u&&!q(o.options)){var v=o.checker.getExportSpecifierLocalTargetSymbol(i);v&&h(v,o)}}function b(){s&&N(r,f,o)}}function A(t,r,n,i){return function(t,r){var n=r.parent,i=r.propertyName,a=r.name;return e.Debug.assert(i===t||a===t),i?i===t:!n.parent.moduleSpecifier}(t,n)&&i.getExportSpecifierLocalTargetSymbol(n)||r}function N(t,r,n){var i="kind"in r?r:{kind:void 0,symbol:r},a=i.kind,o=i.symbol,s=n.referenceAdder(o);n.options.implementations?function(t,r,n){if(e.isDeclarationName(t)&&(i=t.parent,8388608&i.flags?!e.isInterfaceDeclaration(i)&&!e.isTypeAliasDeclaration(i):e.isVariableLike(i)?e.hasInitializer(i):e.isFunctionLikeDeclaration(i)?i.body:e.isClassLike(i)||e.isModuleOrEnumDeclaration(i)))return void r(t);var i;if(78!==t.kind)return;292===t.parent.kind&&z(t,n.checker,r);var a=I(t);if(a)return void r(a);var o=e.findAncestor(t,(function(t){return!e.isQualifiedName(t.parent)&&!e.isTypeNode(t.parent)&&!e.isTypeElement(t.parent)})),s=o.parent;if(e.hasType(s)&&s.type===o&&n.markSeenContainingTypeReference(s))if(e.hasInitializer(s))l(s.initializer);else if(e.isFunctionLike(s)&&s.body){var c=s.body;232===c.kind?e.forEachReturnStatement(c,(function(e){e.expression&&l(e.expression)})):l(c)}else e.isAssertionExpression(s)&&l(s.expression);function l(e){F(e)&&r(e)}}(t,s,n):s(t,a)}function P(e){return e.members&&e.members.get("__constructor")}function I(t){return e.isIdentifier(t)||e.isPropertyAccessExpression(t)?I(t.parent):e.isExpressionWithTypeArguments(t)?e.tryCast(t.parent.parent,e.isClassLike):void 0}function F(e){switch(e.kind){case 208:return F(e.expression);case 210:case 209:case 201:case 223:case 200:return!0;default:return!1}}function O(t,r,n,i){if(t===r)return!0;var a=e.getSymbolId(t)+","+e.getSymbolId(r),o=n.get(a);if(void 0!==o)return o;n.set(a,!1);var s=!!t.declarations&&t.declarations.some((function(t){return e.getAllSuperTypeNodes(t).some((function(e){var t=i.getTypeAtLocation(e);return!!t&&!!t.symbol&&O(t.symbol,r,n,i)}))}));return n.set(a,s),s}function R(e){return 78===e.kind&&161===e.parent.kind&&e.parent.name===e}function M(e,t,r,n,i,a){var o=[];return L(e,t,r,n,!(n&&i),(function(t,r,n){n&&j(e)!==j(n)&&(n=void 0),o.push(n||r||t)}),(function(){return!a})),o}function L(t,r,n,i,o,s,c){var l=e.getContainingObjectLiteralElement(r);if(l){var u=n.getShorthandAssignmentValueSymbol(r.parent);if(u&&i)return s(u,void 0,void 0,3);var d=n.getContextualType(l.parent),p=d&&e.firstDefined(e.getPropertySymbolsFromContextualType(l,n,d,!0),(function(e){return S(e,4)}));if(p)return p;var f=function(t,r){return e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent.parent)?r.getPropertySymbolOfDestructuringAssignment(t):void 0}(r,n),m=f&&s(f,void 0,void 0,4);if(m)return m;var g=u&&s(u,void 0,void 0,3);if(g)return g}var _=a(r,t,n);if(_){var h=s(_,void 0,void 0,1);if(h)return h}var y=S(t);if(y)return y;if(t.valueDeclaration&&e.isParameterPropertyDeclaration(t.valueDeclaration,t.valueDeclaration.parent)){var v=n.getSymbolsOfParameterPropertyDeclaration(e.cast(t.valueDeclaration,e.isParameter),t.name);return e.Debug.assert(2===v.length&&!!(1&v[0].flags)&&!!(4&v[1].flags)),S(1&t.flags?v[1]:v[0])}var b=e.getDeclarationOfKind(t,273);if(!i||b&&!b.propertyName){var k=b&&n.getExportSpecifierLocalTargetSymbol(b);if(k){var x=s(k,void 0,void 0,1);if(x)return x}}if(!i){var E=void 0;return(E=o?e.isObjectBindingElementWithoutPropertyName(r.parent)?e.getPropertySymbolFromBindingElement(n,r.parent):void 0:D(t,n))&&S(E,4)}if(e.Debug.assert(i),o)return(E=D(t,n))&&S(E,4);function S(t,r){return e.firstDefined(n.getRootSymbols(t),(function(i){return s(t,i,void 0,r)||(i.parent&&96&i.parent.flags&&c(i)?function(t,r,n,i){var a=new e.Map;return o(t);function o(t){if(96&t.flags&&e.addToSeen(a,e.getSymbolId(t)))return e.firstDefined(t.declarations,(function(t){return e.firstDefined(e.getAllSuperTypeNodes(t),(function(t){var a=n.getTypeAtLocation(t),s=a&&a.symbol&&n.getPropertyOfType(a,r);return a&&s&&(e.firstDefined(n.getRootSymbols(s),i)||o(a.symbol))}))}))}}(i.parent,i.name,n,(function(e){return s(t,i,e,r)})):void 0)}))}function D(t,r){var n=e.getDeclarationOfKind(t,199);if(n&&e.isObjectBindingElementWithoutPropertyName(n))return e.getPropertySymbolFromBindingElement(r,n)}}function j(t){return!!t.valueDeclaration&&!!(32&e.getEffectiveModifierFlags(t.valueDeclaration))}function B(t,r){var n=e.getMeaningFromLocation(t),i=r.declarations;if(i){var a=void 0;do{a=n;for(var o=0,s=i;o<s.length;o++){var c=s[o],l=e.getMeaningFromDeclaration(c);l&n&&(n|=l)}}while(n!==a)}return n}function z(t,r,n){var i=r.getSymbolAtLocation(t),a=r.getShorthandAssignmentValueSymbol(i.valueDeclaration);if(a)for(var o=0,s=a.getDeclarations();o<s.length;o++){var c=s[o];1&e.getMeaningFromDeclaration(c)&&n(c)}}function U(t,r,n){e.forEachChild(t,(function(e){e.kind===r&&n(e),U(e,r,n)}))}function q(e){return 2===e.use&&e.providePrefixAndSuffixTextForRename}r.eachExportReference=function(r,n,i,a,o,s,c,l){for(var u=t.createImportTracker(r,new e.Set(r.map((function(e){return e.fileName}))),n,i)(a,{exportKind:c?1:0,exportingModuleSymbol:o},!1),d=u.importSearches,p=u.indirectUsers,f=0,m=d;f<m.length;f++){l(m[f][0])}for(var g=0,_=p;g<_.length;g++)for(var h=0,y=k(_[g],c?"default":s);h<y.length;h++){var v=y[h];e.isIdentifier(v)&&!e.isImportOrExportSpecifier(v.parent)&&n.getSymbolAtLocation(v)===a&&l(v)}},r.isSymbolReferencedInFile=function(e,t,r,n){return void 0===n&&(n=r),b(e,t,r,(function(){return!0}),n)||!1},r.eachSymbolReferenceInFile=b,r.someSignatureUsage=function(t,r,n,i){if(!t.name||!e.isIdentifier(t.name))return!1;for(var a=e.Debug.checkDefined(n.getSymbolAtLocation(t.name)),o=0,s=r;o<s.length;o++)for(var c=0,l=k(s[o],a.name);c<l.length;c++){var u=l[c];if(e.isIdentifier(u)&&u!==t.name&&u.escapedText===t.name.escapedText){var d=e.climbPastPropertyAccess(u),p=e.isCallExpression(d.parent)&&d.parent.expression===d?d.parent:void 0,f=n.getSymbolAtLocation(u);if(f&&n.getRootSymbols(f).some((function(e){return e===a}))&&i(u,p))return!0}}return!1},r.getIntersectingMeaningFromDeclarations=B,r.getReferenceEntriesForShorthandPropertyAssignment=z}(r=t.Core||(t.Core={}))}(e.FindAllReferences||(e.FindAllReferences={}))}(d||(d={})),function(e){!function(t){function r(t){return(e.isFunctionExpression(t)||e.isArrowFunction(t)||e.isClassExpression(t))&&e.isVariableDeclaration(t.parent)&&t===t.parent.initializer&&e.isIdentifier(t.parent.name)&&!!(2&e.getCombinedNodeFlags(t.parent))}function n(t){return e.isSourceFile(t)||e.isModuleDeclaration(t)||e.isFunctionDeclaration(t)||e.isFunctionExpression(t)||e.isClassDeclaration(t)||e.isClassExpression(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isGetAccessorDeclaration(t)||e.isSetAccessorDeclaration(t)}function i(t){return e.isSourceFile(t)||e.isModuleDeclaration(t)&&e.isIdentifier(t.name)||e.isFunctionDeclaration(t)||e.isClassDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isGetAccessorDeclaration(t)||e.isSetAccessorDeclaration(t)||function(t){return(e.isFunctionExpression(t)||e.isClassExpression(t))&&e.isNamedDeclaration(t)}(t)||r(t)}function a(t){return e.isSourceFile(t)?t:e.isNamedDeclaration(t)?t.name:r(t)?t.parent.name:e.Debug.checkDefined(t.modifiers&&e.find(t.modifiers,o))}function o(e){return 88===e.kind}function s(e,t){var r=a(t);return r&&e.getSymbolAtLocation(r)}function c(t,r){if(r.body)return r;if(e.isConstructorDeclaration(r))return e.getFirstConstructorWithBody(r.parent);if(e.isFunctionDeclaration(r)||e.isMethodDeclaration(r)){var n=s(t,r);return n&&n.valueDeclaration&&e.isFunctionLikeDeclaration(n.valueDeclaration)&&n.valueDeclaration.body?n.valueDeclaration:void 0}return r}function l(t,r){var n,a=s(t,r);if(a&&a.declarations){var o=e.indicesOf(a.declarations),c=e.map(a.declarations,(function(e){return{file:e.getSourceFile().fileName,pos:e.pos}}));o.sort((function(t,r){return e.compareStringsCaseSensitive(c[t].file,c[r].file)||c[t].pos-c[r].pos}));for(var l=void 0,u=0,d=e.map(o,(function(e){return a.declarations[e]}));u<d.length;u++){var p=d[u];i(p)&&(l&&l.parent===p.parent&&l.end===p.pos||(n=e.append(n,p)),l=p)}}return n}function u(t,r){var n,i,a;return e.isFunctionLikeDeclaration(r)?null!==(i=null!==(n=c(t,r))&&void 0!==n?n:l(t,r))&&void 0!==i?i:r:null!==(a=l(t,r))&&void 0!==a?a:r}function d(t,a){for(var o=t.getTypeChecker(),s=!1;;){if(i(a))return u(o,a);var c;if(n(a))return(c=e.findAncestor(a,i))&&u(o,c);if(e.isDeclarationName(a))return i(a.parent)?u(o,a.parent):n(a.parent)?(c=e.findAncestor(a.parent,i))&&u(o,c):e.isVariableDeclaration(a.parent)&&a.parent.initializer&&r(a.parent.initializer)?a.parent.initializer:void 0;if(e.isConstructorDeclaration(a))return i(a.parent)?a.parent:void 0;if(e.isVariableDeclaration(a)&&a.initializer&&r(a.initializer))return a.initializer;if(!s){var l=o.getSymbolAtLocation(a);if(l&&(2097152&l.flags&&(l=o.getAliasedSymbol(l)),l.valueDeclaration)){s=!0,a=l.valueDeclaration;continue}}return}}function p(t,n){var i=n.getSourceFile(),a=function(t,n){if(e.isSourceFile(n))return{text:n.fileName,pos:0,end:0};if((e.isFunctionDeclaration(n)||e.isClassDeclaration(n))&&!e.isNamedDeclaration(n)){var i=n.modifiers&&e.find(n.modifiers,o);if(i)return{text:"default",pos:i.getStart(),end:i.getEnd()}}var a=r(n)?n.parent.name:e.Debug.checkDefined(e.getNameOfDeclaration(n),"Expected call hierarchy item to have a name"),s=e.isIdentifier(a)?e.idText(a):e.isStringOrNumericLiteralLike(a)?a.text:e.isComputedPropertyName(a)&&e.isStringOrNumericLiteralLike(a.expression)?a.expression.text:void 0;if(void 0===s){var c=t.getTypeChecker(),l=c.getSymbolAtLocation(a);l&&(s=c.symbolToString(l,n))}if(void 0===s){var u=e.createPrinter({removeComments:!0,omitTrailingSemicolon:!0});s=e.usingSingleLineStringWriter((function(e){return u.writeNode(4,n,n.getSourceFile(),e)}))}return{text:s,pos:a.getStart(),end:a.getEnd()}}(t,n),s=function(t){var n,i;if(r(t))return e.isModuleBlock(t.parent.parent.parent.parent)&&e.isIdentifier(t.parent.parent.parent.parent.parent.name)?t.parent.parent.parent.parent.parent.name.getText():void 0;switch(t.kind){case 168:case 169:case 166:return 201===t.parent.kind?null===(n=e.getAssignedName(t.parent))||void 0===n?void 0:n.getText():null===(i=e.getNameOfDeclaration(t.parent))||void 0===i?void 0:i.getText();case 253:case 254:case 255:case 259:if(e.isModuleBlock(t.parent)&&e.isIdentifier(t.parent.parent.name))return t.parent.parent.name.getText()}}(n),c=e.getNodeKind(n),l=e.getNodeModifiers(n),u=e.createTextSpanFromBounds(e.skipTrivia(i.text,n.getFullStart(),!1,!0),n.getEnd()),d=e.createTextSpanFromBounds(a.pos,a.end);return{file:i.fileName,kind:c,kindModifiers:l,name:a.text,containerName:s,span:u,selectionSpan:d}}function f(e){return void 0!==e}function m(t){if(1===t.kind){var r=t.node;if(e.isCallOrNewExpressionTarget(r,!0,!0)||e.isTaggedTemplateTag(r,!0,!0)||e.isDecoratorTarget(r,!0,!0)||e.isJsxOpeningLikeElementTagName(r,!0,!0)||e.isRightSideOfPropertyAccess(r)||e.isArgumentExpressionOfElementAccess(r)){var n=r.getSourceFile();return{declaration:e.findAncestor(r,i)||n,range:e.createTextRangeFromNode(r,n)}}}}function g(t){return e.getNodeId(t.declaration)}function _(t,r){var n=[],a=function(t,r){function n(n){var i=e.isTaggedTemplateExpression(n)?n.tag:e.isJsxOpeningLikeElement(n)?n.tagName:e.isAccessExpression(n)?n:n.expression,a=d(t,i);if(a){var o=e.createTextRangeFromNode(i,n.getSourceFile());if(e.isArray(a))for(var s=0,c=a;s<c.length;s++){var l=c[s];r.push({declaration:l,range:o})}else r.push({declaration:a,range:o})}}return function t(r){if(r&&!(8388608&r.flags))if(i(r)){if(e.isClassLike(r))for(var a=0,o=r.members;a<o.length;a++){var s=o[a];s.name&&e.isComputedPropertyName(s.name)&&t(s.name.expression)}}else{switch(r.kind){case 78:case 263:case 264:case 270:case 256:case 257:return;case 207:case 226:return void t(r.expression);case 251:case 161:return t(r.name),void t(r.initializer);case 204:case 205:return n(r),t(r.expression),void e.forEach(r.arguments,t);case 206:return n(r),t(r.tag),void t(r.template);case 278:case 277:return n(r),t(r.tagName),void t(r.attributes);case 162:return n(r),void t(r.expression);case 202:case 203:n(r),e.forEachChild(r,t)}e.isPartOfTypeNode(r)||e.forEachChild(r,t)}}}(t,n);switch(r.kind){case 300:!function(t,r){e.forEach(t.statements,r)}(r,a);break;case 259:!function(t,r){!e.hasSyntacticModifier(t,2)&&t.body&&e.isModuleBlock(t.body)&&e.forEach(t.body.statements,r)}(r,a);break;case 253:case 209:case 210:case 166:case 168:case 169:!function(t,r,n){var i=c(t,r);i&&(e.forEach(i.parameters,n),n(i.body))}(t.getTypeChecker(),r,a);break;case 254:case 223:case 255:!function(t,r){e.forEach(t.decorators,r);var n=e.getClassExtendsHeritageElement(t);n&&r(n.expression);for(var i=0,a=t.members;i<a.length;i++){var o=a[i];e.forEach(o.decorators,r),e.isPropertyDeclaration(o)?r(o.initializer):e.isConstructorDeclaration(o)&&o.body&&(e.forEach(o.parameters,r),r(o.body))}}(r,a);break;default:e.Debug.assertNever(r)}return n}t.resolveCallHierarchyDeclaration=d,t.createCallHierarchyItem=p,t.getIncomingCalls=function(t,r,n){if(e.isSourceFile(r)||e.isModuleDeclaration(r))return[];var i=a(r),o=e.filter(e.FindAllReferences.findReferenceOrRenameEntries(t,n,t.getSourceFiles(),i,0,{use:1},m),f);return o?e.group(o,g,(function(r){return function(t,r){return n=p(t,r[0].declaration),i=e.map(r,(function(t){return e.createTextSpanFromRange(t.range)})),{from:n,fromSpans:i};var n,i}(t,r)})):[]},t.getOutgoingCalls=function(t,r){return 8388608&r.flags||e.isMethodSignature(r)?[]:e.group(_(t,r),g,(function(r){return function(t,r){return n=p(t,r[0].declaration),i=e.map(r,(function(t){return e.createTextSpanFromRange(t.range)})),{to:n,fromSpans:i};var n,i}(t,r)}))}}(e.CallHierarchy||(e.CallHierarchy={}))}(d||(d={})),function(e){function t(t,n,i,a){var o=i(t);return function(t){var s=a&&a.tryGetSourcePosition({fileName:t,pos:0}),c=function(t){if(i(t)===o)return n;var r=e.tryRemoveDirectoryPrefix(t,o,i);return void 0===r?void 0:n+"/"+r}(s?s.fileName:t);return s?void 0===c?void 0:function(t,n,i,a){var o=e.getRelativePathFromFile(t,n,a);return r(e.getDirectoryPath(i),o)}(s.fileName,c,t,i):c}}function r(t,r){return e.ensurePathIsNonModuleName(function(t,r){return e.normalizePath(e.combinePaths(t,r))}(t,r))}function n(t,r,n,i,a){if(r){if(r.resolvedModule){var o=l(r.resolvedModule.resolvedFileName);if(o)return o}var s=e.forEach(r.failedLookupLocations,(function(t){var r=n(t);return r&&e.find(i,(function(e){return e.fileName===r}))?c(t):void 0}))||e.pathIsRelative(t.text)&&e.forEach(r.failedLookupLocations,c);return s||r.resolvedModule&&{newFileName:r.resolvedModule.resolvedFileName,updated:!1}}function c(t){return e.endsWith(t,e.isOhpm(a)?"/oh-package.json5":"/package.json")?void 0:l(t)}function l(e){var t=n(e);return t&&{newFileName:t,updated:!0}}}function i(t,r){return e.createRange(t.getStart(r)+1,t.end-1)}function a(t,r){if(e.isObjectLiteralExpression(t))for(var n=0,i=t.properties;n<i.length;n++){var a=i[n];e.isPropertyAssignment(a)&&e.isStringLiteral(a.name)&&r(a,a.name.text)}}e.getEditsForFileRename=function(o,s,c,l,u,d,p){var f=e.hostUsesCaseSensitiveFileNames(l),m=e.createGetCanonicalFileName(f),g=t(s,c,m,p),_=t(c,s,m,p);return e.textChanges.ChangeTracker.with({host:l,formatContext:u,preferences:d},(function(t){!function(t,n,o,s,c,l,u){var d=t.getCompilerOptions().configFile;if(!d)return;var p=e.getDirectoryPath(d.fileName),f=e.getTsConfigObjectLiteralExpression(d);if(!f)return;function m(t){for(var r=!1,n=0,i=e.isArrayLiteralExpression(t.initializer)?t.initializer.elements:[t.initializer];n<i.length;n++){r=g(i[n])||r}return r}function g(t){if(!e.isStringLiteral(t))return!1;var a=r(p,t.text),s=o(a);return void 0!==s&&(n.replaceRangeWithText(d,i(t,d),_(s)),!0)}function _(t){return e.getRelativePathFromDirectory(p,t,!u)}a(f,(function(t,r){switch(r){case"files":case"include":case"exclude":if(!m(t)&&"include"===r&&e.isArrayLiteralExpression(t.initializer)){var i=e.mapDefined(t.initializer.elements,(function(t){return e.isStringLiteral(t)?t.text:void 0})),o=e.getFileMatcherPatterns(p,[],i,u,l);e.getRegexFromPattern(e.Debug.checkDefined(o.includeFilePattern),u).test(s)&&!e.getRegexFromPattern(e.Debug.checkDefined(o.includeFilePattern),u).test(c)&&n.insertNodeAfter(d,e.last(t.initializer.elements),e.factory.createStringLiteral(_(c)))}break;case"compilerOptions":a(t.initializer,(function(t,r){var n=e.getOptionFromName(r);n&&(n.isFilePath||"list"===n.type&&n.element.isFilePath)?m(t):"paths"===r&&a(t.initializer,(function(t){if(e.isArrayLiteralExpression(t.initializer))for(var r=0,n=t.initializer.elements;r<n.length;r++){g(n[r])}}))}))}}))}(o,t,g,s,c,l.getCurrentDirectory(),f),function(t,a,o,s,c,l){for(var u=t.getSourceFiles(),d=function(d){var p=o(d.fileName),f=null!=p?p:d.fileName,m=e.getDirectoryPath(f),g=s(d.fileName),_=g||d.fileName,h=e.getDirectoryPath(_),y=void 0!==p||void 0!==g;!function(t,r,n,a){for(var o=0,s=t.referencedFiles||e.emptyArray;o<s.length;o++){var c=s[o];void 0!==(d=n(c.fileName))&&d!==t.text.slice(c.pos,c.end)&&r.replaceRangeWithText(t,c,d)}for(var l=0,u=t.imports;l<u.length;l++){var d,p=u[l];void 0!==(d=a(p))&&d!==p.text&&r.replaceRangeWithText(t,i(p,t),d)}}(d,a,(function(t){if(e.pathIsRelative(t)){var n=r(h,t),i=o(n);return void 0===i?void 0:e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(m,i,l))}}),(function(r){var i=t.getTypeChecker().getSymbolAtLocation(r);if(!i||!i.declarations.some((function(t){return e.isAmbientModule(t)}))){var a=void 0!==g?n(r,e.resolveModuleName(r.text,_,t.getCompilerOptions(),c),o,u,t.getCompilerOptions().packageManagerType):function(t,r,i,a,o,s){if(t){var c=e.find(t.declarations,e.isSourceFile).fileName,l=s(c);return void 0===l?{newFileName:c,updated:!1}:{newFileName:l,updated:!0}}return n(r,o.resolveModuleNames?o.getResolvedModuleWithFailedLookupLocationsFromCache&&o.getResolvedModuleWithFailedLookupLocationsFromCache(r.text,i.fileName):a.getResolvedModuleWithFailedLookupLocationsFromCache(r.text,i.fileName),s,a.getSourceFiles(),a.getCompilerOptions().packageManagerType)}(i,r,d,t,c,o);return void 0!==a&&(a.updated||y&&e.pathIsRelative(r.text))?e.moduleSpecifiers.updateModuleSpecifier(t.getCompilerOptions(),l(f),a.newFileName,e.createModuleSpecifierResolutionHost(t,c),r.text):void 0}}))},p=0,f=u;p<f.length;p++){d(f[p])}}(o,t,g,_,l,m)}))},e.getPathUpdater=t}(d||(d={})),function(e){!function(t){function r(t,r,a){var o,d,p,f=n(r,a,t);if(f)return[(d=f.reference.fileName,p=f.file.fileName,{fileName:p,textSpan:e.createTextSpanFromBounds(0,0),kind:"script",name:d,containerName:void 0,containerKind:void 0})];var m=e.getTouchingPropertyName(r,a);if(m!==r){var g=m.parent,_=t.getTypeChecker();if(e.isJumpStatementTarget(m)){var h=e.getTargetLabel(m.parent,m.text);return h?[l(_,h,"label",m.text,void 0)]:void 0}var y=function(t,r){var n=r.getSymbolAtLocation(t);if(n&&2097152&n.flags&&function(t,r){if(78!==t.kind)return!1;if(t.parent===r)return!0;switch(r.kind){case 265:case 263:return!0;case 268:return 267===r.parent.kind;case 199:case 251:return e.isInJSFile(r)&&e.isRequireVariableDeclaration(r,!0);default:return!1}}(t,n.declarations[0])){var i=r.getAliasedSymbol(n);if(i.declarations)return i}return n}(m,_);if(!y)return function(t,r){if(!e.isPropertyAccessExpression(t.parent)||t.parent.name!==t)return;var n=r.getTypeAtLocation(t.parent.expression);return e.mapDefined(n.isUnionOrIntersection()?n.types:[n],(function(e){var t=r.getIndexInfoOfType(e,0);return t&&t.declaration&&u(r,t.declaration)}))}(m,_);if(204===g.kind||211===g.kind&&e.isCalledStructDeclaration(y.getDeclarations())){var v=y.getDeclarations();if((null==v?void 0:v.length)&&255===v[0].kind)return s(_,y,m)}var b=function(t,r){var n=function(t){var r=e.findAncestor(t,(function(t){return!e.isRightSideOfPropertyAccess(t)})),n=null==r?void 0:r.parent;return n&&e.isCallLikeExpression(n)&&e.getInvokedExpression(n)===r?n:void 0}(r),i=n&&t.getResolvedSignature(n);return e.tryCast(i&&i.declaration,(function(t){return e.isFunctionLike(t)&&!e.isFunctionTypeNode(t)}))}(_,m),k=t.getCompilerOptions();if(b&&(!e.isJsxOpeningLikeElement(m.parent)||!function(e){switch(e.kind){case 167:case 176:case 171:return!0;default:return!1}}(b))&&!e.isVirtualConstructor(_,b.symbol,b)){var x=u(_,b);if(_.getRootSymbols(y).some((function(t){return function(t,r){return t===r.symbol||t===r.symbol.parent||e.isAssignmentExpression(r.parent)||!e.isCallLikeExpression(r.parent)&&t===r.parent.symbol}(t,b)})))return[x];if(e.isIdentifier(m)&&e.isNewExpression(g)&&(null===(o=k.ets)||void 0===o?void 0:o.components.some((function(e){return e===m.escapedText.toString()}))))return[x];var E=s(_,y,m,b)||e.emptyArray;return e.isIdentifier(m)&&e.isEtsComponentExpression(g)?i([],E):106===m.kind?i([x],E):i(i([],E),[x])}if(292===m.parent.kind){var S=_.getShorthandAssignmentValueSymbol(y.valueDeclaration);return S?S.declarations.map((function(e){return c(e,_,S,m)})):[]}if(e.isPropertyName(m)&&e.isBindingElement(g)&&e.isObjectBindingPattern(g.parent)&&m===(g.propertyName||g.name)){var D=e.getNameFromPropertyName(m),w=_.getTypeAtLocation(g.parent);return void 0===D?e.emptyArray:e.flatMap(w.isUnion()?w.types:[w],(function(e){var t=e.getProperty(D);return t&&s(_,t,m)}))}var T=e.getContainingObjectLiteralElement(m);if(T){var C=T&&_.getContextualType(T.parent);if(C)return e.flatMap(e.getPropertySymbolsFromContextualType(T,_,C,!1),(function(e){return s(_,e,m)}))}return s(_,y,m)}}function n(e,t,r){var n=d(e.referencedFiles,t);if(n)return(o=r.getSourceFileFromReference(e,n))&&{reference:n,file:o};var i=d(e.typeReferenceDirectives,t);if(i){var a=r.getResolvedTypeReferenceDirectives().get(i.fileName);return(o=a&&r.getSourceFile(a.resolvedFileName))&&{reference:i,file:o}}var o,s=d(e.libReferenceDirectives,t);return s?(o=r.getLibFileFromReference(s))&&{reference:s,file:o}:void 0}function o(t,r,n){return e.flatMap(!t.isUnion()||32&t.flags?[t]:t.types,(function(e){return e.symbol&&s(r,e.symbol,n)}))}function s(t,r,n,i){var a=e.filter(r.declarations,(function(t){return t!==i&&(!e.isAssignmentDeclaration(t)||t===r.valueDeclaration)}))||void 0;return function(){if(32&r.flags&&!(19&r.flags)&&(e.isNewExpressionTarget(n)||133===n.kind)){return o((e.find(a,e.isClassLike)||e.Debug.fail("Expected declaration to have at least one class-like declaration")).members,!0)}}()||(e.isCallOrNewExpressionTarget(n)||e.isNameOfFunctionDeclaration(n)?o(a,!1):void 0)||e.map(a,(function(e){return c(e,t,r,n)}));function o(i,a){if(i){var o=i.filter(a?e.isConstructorDeclaration:e.isFunctionLike),s=o.filter((function(e){return!!e.body}));return o.length?0!==s.length?s.map((function(e){return c(e,t,r,n)})):[c(e.last(o),t,r,n)]:void 0}}}function c(t,r,n,i){var a=r.symbolToString(n),o=e.SymbolDisplay.getSymbolKind(r,n,i),s=n.parent?r.symbolToString(n.parent,i):"";return l(r,t,o,a,s)}function l(t,r,n,i,o){var s=e.getNameOfDeclaration(r)||r,c=s.getSourceFile(),l=e.createTextSpanFromNode(s,c);return a(a({fileName:c.fileName,textSpan:l,kind:n,name:i,containerKind:void 0,containerName:o},e.FindAllReferences.toContextSpan(l,c,e.FindAllReferences.getContextNode(r))),{isLocal:!t.isDeclarationVisible(r)})}function u(e,t){return c(t,e,t.symbol,t)}function d(t,r){return e.find(t,(function(t){return e.textRangeContainsPositionInclusive(t,r)}))}t.getDefinitionAtPosition=r,t.getReferenceAtPosition=n,t.getTypeDefinitionAtPosition=function(t,r,n){var i=e.getTouchingPropertyName(r,n);if(i!==r){var a=t.getSymbolAtLocation(i);if(a){var s=t.getTypeOfSymbolAtLocation(a,i),c=function(t,r,n){if(r.symbol===t||t.valueDeclaration&&r.symbol&&e.isVariableDeclaration(t.valueDeclaration)&&t.valueDeclaration.initializer===r.symbol.valueDeclaration){var i=r.getCallSignatures();if(1===i.length)return n.getReturnTypeOfSignature(e.first(i))}return}(a,s,t),l=c&&o(c,t,i);return l&&0!==l.length?l:o(s,t,i)}}},t.getDefinitionAndBoundSpan=function(t,n,i){var a=r(t,n,i);if(a&&0!==a.length){var o=d(n.referencedFiles,i)||d(n.typeReferenceDirectives,i)||d(n.libReferenceDirectives,i);if(o)return{definitions:a,textSpan:e.createTextSpanFromRange(o)};var s=e.getTouchingPropertyName(n,i);return{definitions:a,textSpan:e.createTextSpan(s.getStart(),s.getWidth())}}},t.findReferenceInPosition=d}(e.GoToDefinition||(e.GoToDefinition={}))}(d||(d={})),function(e){!function(t){var r,n,i=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","inheritdoc","inner","instance","interface","kind","lends","license","listens","member","memberof","method","mixes","module","name","namespace","override","package","param","private","property","protected","public","readonly","requires","returns","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"];function a(e){var t=e.comment;switch(e.kind){case 319:case 318:return n(e.class);case 333:return i(e.typeParameters.map((function(e){return e.getText()})).join(", "));case 332:return n(e.typeExpression);case 334:case 327:case 336:case 329:case 335:var r=e.name;return r?n(r):t;default:return t}function n(e){return i(e.getText())}function i(e){return void 0===t?e:e+" "+t}}function o(t){return{name:t,kind:"",kindModifiers:"",displayParts:[e.textPart(t)],documentation:e.emptyArray,tags:void 0,codeActions:void 0}}function s(t,r){switch(t.kind){case 253:case 209:case 166:case 167:case 165:case 210:var n=t;return{commentOwner:t,parameters:n.parameters,hasReturn:c(n,r)};case 291:return s(t.initializer,r);case 254:case 255:case 256:case 163:case 258:case 294:case 257:return{commentOwner:t};case 234:var i=t.declarationList.declarations,a=1===i.length&&i[0].initializer?function(t){for(;208===t.kind;)t=t.expression;switch(t.kind){case 209:case 210:return t;case 223:return e.find(t.members,e.isConstructorDeclaration)}}(i[0].initializer):void 0;return a?{commentOwner:t,parameters:a.parameters,hasReturn:c(a,r)}:{commentOwner:t};case 300:return"quit";case 259:return 259===t.parent.kind?void 0:{commentOwner:t};case 235:return s(t.expression,r);case 218:var o=t;return 0===e.getAssignmentDeclarationKind(o)?"quit":e.isFunctionLike(o.right)?{commentOwner:t,parameters:o.right.parameters,hasReturn:c(o.right,r)}:{commentOwner:t};case 164:var l=t.initializer;if(l&&(e.isFunctionExpression(l)||e.isArrowFunction(l)))return{commentOwner:t,parameters:l.parameters,hasReturn:c(l,r)}}}function c(t,r){return!!(null==r?void 0:r.generateReturnInDocTemplate)&&(e.isArrowFunction(t)&&e.isExpression(t.body)||e.isFunctionLikeDeclaration(t)&&t.body&&e.isBlock(t.body)&&!!e.forEachReturnStatement(t.body,(function(e){return e})))}t.getJsDocCommentsFromDeclarations=function(t){var r=[];return e.forEachUnique(t,(function(t){for(var n=0,i=function(t){switch(t.kind){case 329:case 336:return[t];case 327:case 334:return[t,t.parent];default:return e.getJSDocCommentsAndTags(t)}}(t);n<i.length;n++){var a=i[n].comment;void 0!==a&&e.pushIfUnique(r,a)}})),e.intersperse(e.map(r,e.textPart),e.lineBreakPart())},t.getJsDocTagsFromDeclarations=function(t){var r=[];return e.forEachUnique(t,(function(t){for(var n=0,i=e.getJSDocTags(t);n<i.length;n++){var o=i[n];r.push({name:o.tagName.text,text:a(o)})}})),r},t.getJSDocTagNameCompletions=function(){return r||(r=e.map(i,(function(t){return{name:t,kind:"keyword",kindModifiers:"",sortText:e.Completions.SortText.LocationPriority}})))},t.getJSDocTagNameCompletionDetails=o,t.getJSDocTagCompletions=function(){return n||(n=e.map(i,(function(t){return{name:"@"+t,kind:"keyword",kindModifiers:"",sortText:e.Completions.SortText.LocationPriority}})))},t.getJSDocTagCompletionDetails=o,t.getJSDocParameterNameCompletions=function(t){if(!e.isIdentifier(t.name))return e.emptyArray;var r=t.name.text,n=t.parent,i=n.parent;return e.isFunctionLike(i)?e.mapDefined(i.parameters,(function(i){if(e.isIdentifier(i.name)){var a=i.name.text;if(!n.tags.some((function(r){return r!==t&&e.isJSDocParameterTag(r)&&e.isIdentifier(r.name)&&r.name.escapedText===a}))&&(void 0===r||e.startsWith(a,r)))return{name:a,kind:"parameter",kindModifiers:"",sortText:e.Completions.SortText.LocationPriority}}})):[]},t.getJSDocParameterNameCompletionDetails=function(t){return{name:t,kind:"parameter",kindModifiers:"",displayParts:[e.textPart(t)],documentation:e.emptyArray,tags:void 0,codeActions:void 0}},t.getDocCommentTemplateAtPosition=function(t,r,n,i){var a=e.getTokenAtPosition(r,n),o=e.findAncestor(a,e.isJSDoc);if(!o||void 0===o.comment&&!e.length(o.tags)){var c=a.getStart(r);if(o||!(c<n)){var l=function(t,r){return e.forEachAncestor(t,(function(e){return s(e,r)}))}(a,i);if(l){var u=l.commentOwner,d=l.parameters,p=l.hasReturn;if(!(u.getStart(r)<n)){var f=function(t,r){for(var n=t.text,i=e.getLineStartPositionForPosition(r,t),a=i;a<=r&&e.isWhiteSpaceSingleLine(n.charCodeAt(a));a++);return n.slice(i,a)}(r,n),m=e.hasJSFileExtension(r.fileName),g=(d?function(e,t,r,n){return e.map((function(e,i){var a=e.name,o=e.dotDotDotToken,s=78===a.kind?a.text:"param"+i;return r+" * @param "+(t?o?"{...any} ":"{any} ":"")+s+n})).join("")}(d||[],m,f,t):"")+(p?function(e,t){return e+" * @returns"+t}(f,t):"");if(g){var _="/**"+t+f+" * ";return{newText:_+t+g+f+" */"+(c===n?t+f:""),caretOffset:_.length}}return{newText:"/** */",caretOffset:3}}}}}}}(e.JsDoc||(e.JsDoc={}))}(d||(d={})),function(e){!function(t){function r(e,t){switch(e.kind){case 265:case 268:case 263:var r=t.getSymbolAtLocation(e.name),n=t.getAliasedSymbol(r);return r.escapedName!==n.escapedName;default:return!0}}function n(t,r){var n=e.getNameOfDeclaration(t);return!!n&&(a(n,r)||159===n.kind&&i(n.expression,r))}function i(t,r){return a(t,r)||e.isPropertyAccessExpression(t)&&(r.push(t.name.text),!0)&&i(t.expression,r)}function a(t,r){return e.isPropertyNameLiteral(t)&&(r.push(e.getTextOfIdentifierOrLiteral(t)),!0)}function o(t){var r=[],a=e.getNameOfDeclaration(t);if(a&&159===a.kind&&!i(a.expression,r))return e.emptyArray;r.shift();for(var o=e.getContainerNode(t);o;){if(!n(o,r))return e.emptyArray;o=e.getContainerNode(o)}return r.reverse()}function s(t,r){return e.compareValues(t.matchKind,r.matchKind)||e.compareStringsCaseSensitiveUI(t.name,r.name)}function c(t){var r=t.declaration,n=e.getContainerNode(r),i=n&&e.getNameOfDeclaration(n);return{name:t.name,kind:e.getNodeKind(r),kindModifiers:e.getNodeModifiers(r),matchKind:e.PatternMatchKind[t.matchKind],isCaseSensitive:t.isCaseSensitive,fileName:t.fileName,textSpan:e.createTextSpanFromNode(r),containerName:i?i.text:"",containerKind:i?e.getNodeKind(n):""}}t.getNavigateToItems=function(t,n,i,a,l,u){var d=e.createPatternMatcher(a);if(!d)return e.emptyArray;for(var p=[],f=function(e){if(i.throwIfCancellationRequested(),u&&e.isDeclarationFile)return"continue";e.getNamedDeclarations().forEach((function(t,i){!function(e,t,n,i,a,s){var c=e.getMatchForLastSegmentOfPattern(t);if(!c)return;for(var l=0,u=n;l<u.length;l++){var d=u[l];if(r(d,i))if(e.patternContainsDots){var p=e.getFullMatch(o(d),t);p&&s.push({name:t,fileName:a,matchKind:p.kind,isCaseSensitive:p.isCaseSensitive,declaration:d})}else s.push({name:t,fileName:a,matchKind:c.kind,isCaseSensitive:c.isCaseSensitive,declaration:d})}}(d,i,t,n,e.fileName,p)}))},m=0,g=t;m<g.length;m++){f(g[m])}return p.sort(s),(void 0===l?p:p.slice(0,l)).map(c)}}(e.NavigateTo||(e.NavigateTo={}))}(d||(d={})),function(e){!function(t){var r,n,i,o,s,c=/\s+/g,l=150,u=[],d=[],p=[];function f(){i=void 0,n=void 0,u=[],o=void 0,p=[]}function m(e){return G(e.getText(i))}function g(e){return e.node.kind}function _(e,t){e.children?e.children.push(t):e.children=[t]}function h(t){e.Debug.assert(!u.length);var r={node:t,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};o=r;for(var n=0,i=t.statements;n<i.length;n++){T(i[n])}return S(),e.Debug.assert(!o&&!u.length),r}function y(e,t){_(o,v(e,t))}function v(t,r){return{node:t,name:r||(e.isDeclaration(t)||e.isExpression(t)?e.getNameOfDeclaration(t):void 0),additionalNodes:void 0,parent:o,children:void 0,indent:o.indent+1}}function b(t){s||(s=new e.Map),s.set(t,!0)}function k(e){for(var t=0;t<e;t++)S()}function x(t,r){for(var n=[];!e.isPropertyNameLiteral(r);){var i=e.getNameOrArgument(r),a=e.getElementOrPropertyAccessName(r);r=r.expression,"prototype"===a||e.isPrivateIdentifier(i)||n.push(i)}n.push(r);for(var o=n.length-1;o>0;o--){E(t,i=n[o])}return[n.length-1,n[0]]}function E(e,t){var r=v(e,t);_(o,r),u.push(o),d.push(s),s=void 0,o=r}function S(){o.children&&(C(o.children,o),O(o.children)),o=u.pop(),s=d.pop()}function D(e,t,r){E(e,r),T(t),S()}function w(t){t.initializer&&function(e){switch(e.kind){case 210:case 209:case 223:return!0;default:return!1}}(t.initializer)?(E(t),e.forEachChild(t.initializer,T),S()):D(t,t.initializer)}function T(t){var r;if(n.throwIfCancellationRequested(),t&&!e.isToken(t))switch(t.kind){case 167:var i=t;D(i,i.body);for(var a=0,o=i.parameters;a<o.length;a++){var c=o[a];e.isParameterPropertyDeclaration(c,i)&&y(c)}break;case 166:case 168:case 169:case 165:e.hasDynamicName(t)||D(t,t.body);break;case 164:e.hasDynamicName(t)||w(t);break;case 163:e.hasDynamicName(t)||y(t);break;case 265:var l=t;l.name&&y(l.name);var u=l.namedBindings;if(u)if(266===u.kind)y(u);else for(var d=0,p=u.elements;d<p.length;d++){y(p[d])}break;case 292:D(t,t.name);break;case 293:var f=t.expression;e.isIdentifier(f)?y(t,f):y(t);break;case 199:case 291:case 251:var m=t;e.isBindingPattern(m.name)?T(m.name):w(m);break;case 253:var g=t.name;g&&e.isIdentifier(g)&&b(g.text),D(t,t.body);break;case 210:case 209:D(t,t.body);break;case 258:E(t);for(var _=0,h=t.members;_<h.length;_++){J(A=h[_])||y(A)}S();break;case 254:case 223:case 255:case 256:E(t);for(var v=0,C=t.members;v<C.length;v++){var A;T(A=C[v])}S();break;case 259:D(t,q(t).body);break;case 269:var N=t.expression;(m=e.isObjectLiteralExpression(N)||e.isCallExpression(N)?N:e.isArrowFunction(N)||e.isFunctionExpression(N)?N.body:void 0)?(E(t),T(m),S()):y(t);break;case 273:case 263:case 172:case 170:case 171:case 257:y(t);break;case 204:case 218:var P=e.getAssignmentDeclarationKind(t);switch(P){case 1:case 2:return void D(t,t.right);case 6:case 3:var I=(B=t).left,F=3===P?I.expression:I,O=0,R=void 0;return e.isIdentifier(F.expression)?(b(F.expression.text),R=F.expression):(O=(r=x(B,F.expression))[0],R=r[1]),6===P?e.isObjectLiteralExpression(B.right)&&B.right.properties.length>0&&(E(B,R),e.forEachChild(B.right,T),S()):e.isFunctionExpression(B.right)||e.isArrowFunction(B.right)?D(t,B.right,R):(E(B,R),D(t,B.right,I.name),S()),void k(O);case 7:case 9:var M=t,L=(R=7===P?M.arguments[0]:M.arguments[0].expression,M.arguments[1]),j=x(t,R);O=j[0];return E(t,j[1]),E(t,e.setTextRange(e.factory.createIdentifier(L.text),L)),T(t.arguments[2]),S(),S(),void k(O);case 5:var B,z=(I=(B=t).left).expression;if(e.isIdentifier(z)&&"prototype"!==e.getElementOrPropertyAccessName(I)&&s&&s.has(z.text))return void(e.isFunctionExpression(B.right)||e.isArrowFunction(B.right)?D(t,B.right,z):e.isBindableStaticAccessExpression(I)&&(E(B,z),D(B.left,B.right,e.getNameOrArgument(I)),S()));break;case 4:case 0:case 8:break;default:e.Debug.assertNever(P)}default:e.hasJSDocNodes(t)&&e.forEach(t.jsDoc,(function(t){e.forEach(t.tags,(function(t){e.isJSDocTypeAlias(t)&&y(t)}))})),e.forEachChild(t,T)}}function C(t,r){var n=new e.Map;e.filterMutate(t,(function(t,i){var a=t.name||e.getNameOfDeclaration(t.node),o=a&&m(a);if(!o)return!0;var s=n.get(o);if(!s)return n.set(o,t),!0;if(s instanceof Array){for(var c=0,l=s;c<l.length;c++){var u;if(N(u=l[c],t,i,r))return!1}return s.push(t),!0}return!N(u=s,t,i,r)&&(n.set(o,[u,t]),!0)}))}t.getNavigationBarItems=function(t,r){n=r,i=t;try{return e.map(function(e){var t=[];function r(e){if(n(e)&&(t.push(e),e.children))for(var i=0,a=e.children;i<a.length;i++){r(a[i])}}return r(e),t;function n(e){if(e.children)return!0;switch(g(e)){case 254:case 223:case 255:case 258:case 256:case 259:case 300:case 257:case 334:case 327:return!0;case 210:case 253:case 209:return t(e);default:return!1}function t(e){if(!e.node.body)return!1;switch(g(e.parent)){case 260:case 300:case 166:case 167:return!0;default:return!1}}}}(h(t)),B)}finally{f()}},t.getNavigationTree=function(e,t){n=t,i=e;try{return j(h(e))}finally{f()}};var A=((r={})[5]=!0,r[3]=!0,r[7]=!0,r[9]=!0,r[0]=!1,r[1]=!1,r[2]=!1,r[8]=!1,r[6]=!0,r[4]=!1,r);function N(t,r,n,i){return!!function(t,r,n,i){function o(t){return e.isFunctionExpression(t)||e.isFunctionDeclaration(t)||e.isVariableDeclaration(t)}var s=e.isBinaryExpression(r.node)||e.isCallExpression(r.node)?e.getAssignmentDeclarationKind(r.node):0,c=e.isBinaryExpression(t.node)||e.isCallExpression(t.node)?e.getAssignmentDeclarationKind(t.node):0;if(A[s]&&A[c]||o(t.node)&&A[s]||o(r.node)&&A[c]||e.isClassDeclaration(t.node)&&P(t.node)&&A[s]||e.isClassDeclaration(r.node)&&A[c]||e.isClassDeclaration(t.node)&&P(t.node)&&o(r.node)||e.isClassDeclaration(r.node)&&o(t.node)&&P(t.node)){var l=t.additionalNodes&&e.lastOrUndefined(t.additionalNodes)||t.node;if(!e.isClassDeclaration(t.node)&&!e.isClassDeclaration(r.node)||o(t.node)||o(r.node)){var u=o(t.node)?t.node:o(r.node)?r.node:void 0;if(void 0!==u){var d=v(e.setTextRange(e.factory.createConstructorDeclaration(void 0,void 0,[],void 0),u));d.indent=t.indent+1,d.children=t.node===u?t.children:r.children,t.children=t.node===u?e.concatenate([d],r.children||[r]):e.concatenate(t.children||[a({},t)],[d])}else(t.children||r.children)&&(t.children=e.concatenate(t.children||[a({},t)],r.children||[r]),t.children&&(C(t.children,t),O(t.children)));l=t.node=e.setTextRange(e.factory.createClassDeclaration(void 0,void 0,t.name||e.factory.createIdentifier("__class__"),void 0,void 0,[]),t.node)}else t.children=e.concatenate(t.children,r.children),t.children&&C(t.children,t);var p=r.node;return i.children[n-1].node.end===l.end?e.setTextRange(l,{pos:l.pos,end:p.end}):(t.additionalNodes||(t.additionalNodes=[]),t.additionalNodes.push(e.setTextRange(e.factory.createClassDeclaration(void 0,void 0,t.name||e.factory.createIdentifier("__class__"),void 0,void 0,[]),r.node))),!0}return 0!==s}(t,r,n,i)||!!function(t,r,n){if(t.kind!==r.kind||t.parent!==r.parent&&(!I(t,n)||!I(r,n)))return!1;switch(t.kind){case 164:case 166:case 168:case 169:return e.hasSyntacticModifier(t,32)===e.hasSyntacticModifier(r,32);case 259:return F(t,r);default:return!0}}(t.node,r.node,i)&&(function(t,r){var n;t.additionalNodes=t.additionalNodes||[],t.additionalNodes.push(r.node),r.additionalNodes&&(n=t.additionalNodes).push.apply(n,r.additionalNodes);t.children=e.concatenate(t.children,r.children),t.children&&(C(t.children,t),O(t.children))}(t,r),!0)}function P(e){return!!(8&e.flags)}function I(t,r){var n=e.isModuleBlock(t.parent)?t.parent.parent:t.parent;return n===r.node||e.contains(r.additionalNodes,n)}function F(e,t){return e.body.kind===t.body.kind&&(259!==e.body.kind||F(e.body,t.body))}function O(e){e.sort(R)}function R(t,r){return e.compareStringsCaseSensitiveUI(M(t.node),M(r.node))||e.compareValues(g(t),g(r))}function M(t){if(259===t.kind)return U(t);var r=e.getNameOfDeclaration(t);if(r&&e.isPropertyName(r)){var n=e.getPropertyNameForPropertyNameNode(r);return n&&e.unescapeLeadingUnderscores(n)}switch(t.kind){case 209:case 210:case 223:return K(t);default:return}}function L(t,r){if(259===t.kind)return G(U(t));if(r){var n=e.isIdentifier(r)?r.text:e.isElementAccessExpression(r)?"["+m(r.argumentExpression)+"]":m(r);if(n.length>0)return G(n)}switch(t.kind){case 300:var i=t;return e.isExternalModule(i)?'"'+e.escapeString(e.getBaseFileName(e.removeFileExtension(e.normalizePath(i.fileName))))+'"':"<global>";case 269:return e.isExportAssignment(t)&&t.isExportEquals?"export=":"default";case 210:case 253:case 209:case 254:case 223:case 255:return 512&e.getSyntacticModifierFlags(t)?"default":K(t);case 167:return"constructor";case 171:return"new()";case 170:return"()";case 172:return"[]";default:return"<unknown>"}}function j(t){return{text:L(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:H(t.node),spans:z(t),nameSpan:t.name&&V(t.name),childItems:e.map(t.children,j)}}function B(t){return{text:L(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:H(t.node),spans:z(t),childItems:e.map(t.children,(function(t){return{text:L(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:e.getNodeModifiers(t.node),spans:z(t),childItems:p,indent:0,bolded:!1,grayed:!1}}))||p,indent:t.indent,bolded:!1,grayed:!1}}function z(e){var t=[V(e.node)];if(e.additionalNodes)for(var r=0,n=e.additionalNodes;r<n.length;r++){var i=n[r];t.push(V(i))}return t}function U(t){if(e.isAmbientModule(t))return e.getTextOfNode(t.name);for(var r=[e.getTextOfIdentifierOrLiteral(t.name)];t.body&&259===t.body.kind;)t=t.body,r.push(e.getTextOfIdentifierOrLiteral(t.name));return r.join(".")}function q(t){return t.body&&e.isModuleDeclaration(t.body)?q(t.body):t}function J(e){return!e.name||159===e.name.kind}function V(t){return 300===t.kind?e.createTextSpanFromRange(t):e.createTextSpanFromNode(t,i)}function H(t){return t.parent&&251===t.parent.kind&&(t=t.parent),e.getNodeModifiers(t)}function K(t){var r=t.parent;if(t.name&&e.getFullWidth(t.name)>0)return G(e.declarationNameToString(t.name));if(e.isVariableDeclaration(r))return G(e.declarationNameToString(r.name));if(e.isBinaryExpression(r)&&62===r.operatorToken.kind)return m(r.left).replace(c,"");if(e.isPropertyAssignment(r))return m(r.name);if(512&e.getSyntacticModifierFlags(t))return"default";if(e.isClassLike(t))return"<class>";if(e.isCallExpression(r)){var n=W(r.expression);if(void 0!==n)return(n=G(n)).length>l?n+" callback":n+"("+G(e.mapDefined(r.arguments,(function(t){return e.isStringLiteralLike(t)?t.getText(i):void 0})).join(", "))+") callback"}return"<function>"}function W(t){if(e.isIdentifier(t))return t.text;if(e.isPropertyAccessExpression(t)){var r=W(t.expression),n=t.name.text;return void 0===r?n:r+"."+n}}function G(e){return(e=e.length>l?e.substring(0,l)+"...":e).replace(/\\?(\r?\n|\r|\u2028|\u2029)/g,"")}}(e.NavigationBar||(e.NavigationBar={}))}(d||(d={})),function(e){!function(t){function r(t,r){var n=e.isStringLiteral(r)&&r.text;return e.isString(n)&&e.some(t.moduleAugmentations,(function(t){return e.isStringLiteral(t)&&t.text===n}))}function n(t){return void 0!==t&&e.isStringLiteralLike(t)?t.text:void 0}function i(t){var r;if(0===t.length)return t;var n=function(t){for(var r,n={defaultImports:[],namespaceImports:[],namedImports:[]},i={defaultImports:[],namespaceImports:[],namedImports:[]},a=0,o=t;a<o.length;a++){var s=o[a];if(void 0!==s.importClause){var c=s.importClause.isTypeOnly?n:i,l=s.importClause,u=l.name,d=l.namedBindings;u&&c.defaultImports.push(s),d&&(e.isNamespaceImport(d)?c.namespaceImports.push(s):c.namedImports.push(s))}else r=r||s}return{importWithoutClause:r,typeOnlyImports:n,regularImports:i}}(t),i=n.importWithoutClause,a=n.typeOnlyImports,c=n.regularImports,l=[];i&&l.push(i);for(var d=0,p=[c,a];d<p.length;d++){var f=p[d],m=f===a,g=f.defaultImports,_=f.namespaceImports,h=f.namedImports;if(m||1!==g.length||1!==_.length||0!==h.length){for(var y=0,v=e.stableSort(_,(function(e,t){return u(e.importClause.namedBindings.name,t.importClause.namedBindings.name)}));y<v.length;y++){var b=v[y];l.push(o(b,void 0,b.importClause.namedBindings))}if(0!==g.length||0!==h.length){var k=void 0,x=[];if(1===g.length)k=g[0].importClause.name;else for(var E=0,S=g;E<S.length;E++){C=S[E];x.push(e.factory.createImportSpecifier(e.factory.createIdentifier("default"),C.importClause.name))}x.push.apply(x,e.flatMap(h,(function(e){return e.importClause.namedBindings.elements})));var D=s(x),w=g.length>0?g[0]:h[0],T=0===D.length?k?void 0:e.factory.createNamedImports(e.emptyArray):0===h.length?e.factory.createNamedImports(D):e.factory.updateNamedImports(h[0].importClause.namedBindings,D);m&&k&&T?(l.push(o(w,k,void 0)),l.push(o(null!==(r=h[0])&&void 0!==r?r:w,void 0,T))):l.push(o(w,k,T))}}else{var C=g[0];l.push(o(C,C.importClause.name,_[0].importClause.namedBindings))}}return l}function a(t){if(0===t.length)return t;var r=function(e){for(var t,r=[],n=[],i=0,a=e;i<a.length;i++){var o=a[i];void 0===o.exportClause?t=t||o:o.isTypeOnly?n.push(o):r.push(o)}return{exportWithoutClause:t,namedExports:r,typeOnlyExports:n}}(t),n=r.exportWithoutClause,i=r.namedExports,a=r.typeOnlyExports,o=[];n&&o.push(n);for(var c=0,l=[i,a];c<l.length;c++){var u=l[c];if(0!==u.length){var d=[];d.push.apply(d,e.flatMap(u,(function(t){return t.exportClause&&e.isNamedExports(t.exportClause)?t.exportClause.elements:e.emptyArray})));var p=s(d),f=u[0];o.push(e.factory.updateExportDeclaration(f,f.decorators,f.modifiers,f.isTypeOnly,f.exportClause&&(e.isNamedExports(f.exportClause)?e.factory.updateNamedExports(f.exportClause,p):e.factory.updateNamespaceExport(f.exportClause,f.exportClause.name)),f.moduleSpecifier))}}return o}function o(t,r,n){return e.factory.updateImportDeclaration(t,t.decorators,t.modifiers,e.factory.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,n),t.moduleSpecifier)}function s(t){return e.stableSort(t,c)}function c(e,t){return u(e.propertyName||e.name,t.propertyName||t.name)||u(e.name,t.name)}function l(t,r){var i=void 0===t?void 0:n(t),a=void 0===r?void 0:n(r);return e.compareBooleans(void 0===i,void 0===a)||e.compareBooleans(e.isExternalModuleNameRelative(i),e.isExternalModuleNameRelative(a))||e.compareStringsCaseInsensitive(i,a)}function u(t,r){return e.compareStringsCaseInsensitive(t.text,r.text)}function d(t){var r;switch(t.kind){case 263:return null===(r=e.tryCast(t.moduleReference,e.isExternalModuleReference))||void 0===r?void 0:r.expression;case 264:return t.moduleSpecifier;case 234:return t.declarationList.declarations[0].initializer.arguments[0]}}function p(t,r){return l(d(t),d(r))||function(t,r){return e.compareValues(f(t),f(r))}(t,r)}function f(e){var t;switch(e.kind){case 264:return e.importClause?e.importClause.isTypeOnly?1:266===(null===(t=e.importClause.namedBindings)||void 0===t?void 0:t.kind)?2:e.importClause.name?3:4:0;case 263:return 5;case 234:return 6}}t.organizeImports=function(t,s,c,u,d){var f=e.textChanges.ChangeTracker.fromContext({host:c,formatContext:s,preferences:d}),m=function(n){return e.stableSort(i(function(t,n,i){for(var a=i.getTypeChecker(),s=a.getJsxNamespace(n),c=a.getJsxFragmentFactory(n),l=!!(2&n.transformFlags),u=[],d=0,p=t;d<p.length;d++){var f=p[d],m=f.importClause,g=f.moduleSpecifier;if(m){var _=m.name,h=m.namedBindings;if(_&&!v(_)&&(_=void 0),h)if(e.isNamespaceImport(h))v(h.name)||(h=void 0);else{var y=h.elements.filter((function(e){return v(e.name)}));y.length<h.elements.length&&(h=y.length?e.factory.updateNamedImports(h,y):void 0)}_||h?u.push(o(f,_,h)):r(n,g)&&(n.isDeclarationFile?u.push(e.factory.createImportDeclaration(f.decorators,f.modifiers,void 0,g)):u.push(f))}else u.push(f)}return u;function v(t){return l&&(t.text===s||c&&t.text===c)||e.FindAllReferences.Core.isSymbolReferencedInFile(t,a,n)}}(n,t,u)),(function(e,t){return p(e,t)}))};y(t.statements.filter(e.isImportDeclaration),m),y(t.statements.filter(e.isExportDeclaration),a);for(var g=0,_=t.statements.filter(e.isAmbientModule);g<_.length;g++){var h=_[g];if(h.body)y(h.body.statements.filter(e.isImportDeclaration),m),y(h.body.statements.filter(e.isExportDeclaration),a)}return f.getChanges();function y(r,i){if(0!==e.length(r)){e.suppressLeadingTrivia(r[0]);var a=e.group(r,(function(e){return n(e.moduleSpecifier)})),o=e.stableSort(a,(function(e,t){return l(e[0].moduleSpecifier,t[0].moduleSpecifier)})),u=e.flatMap(o,(function(e){return n(e[0].moduleSpecifier)?i(e):e}));0===u.length?f.delete(t,r[0]):f.replaceNodeWithNodes(t,r[0],u,{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Include,suffix:e.getNewLineOrDefaultFromHost(c,s.options)});for(var d=1;d<r.length;d++)f.deleteNode(t,r[d])}}},t.coalesceImports=i,t.coalesceExports=a,t.compareImportOrExportSpecifiers=c,t.compareModuleSpecifiers=l,t.importsAreSorted=function(t){return e.arrayIsSorted(t,p)},t.importSpecifiersAreSorted=function(t){return e.arrayIsSorted(t,c)},t.getImportDeclarationInsertionIndex=function(t,r){var n=e.binarySearch(t,r,e.identity,p);return n<0?~n:n},t.getImportSpecifierInsertionIndex=function(t,r){var n=e.binarySearch(t,r,e.identity,c);return n<0?~n:n},t.compareImportsOrRequireStatements=p}(e.OrganizeImports||(e.OrganizeImports={}))}(d||(d={})),function(e){!function(t){t.collectElements=function(t,r){var l=[];return function(t,r,n){var l=40,u=0,d=i(i([],t.statements),[t.endOfFileToken]),p=d.length;for(;u<p;){for(;u<p&&!e.isAnyImportSyntax(d[u]);)g(d[u]),u++;if(u===p)break;for(var f=u;u<p&&e.isAnyImportSyntax(d[u]);)a(d[u],t,r,n),u++;var m=u-1;m!==f&&n.push(o(e.findChildOfKind(d[f],100,t).getStart(t),d[m].getEnd(),"imports"))}function g(i){var u;if(0!==l){r.throwIfCancellationRequested(),(e.isDeclaration(i)||e.isVariableStatement(i)||1===i.kind)&&a(i,t,r,n),e.isFunctionLike(i)&&e.isBinaryExpression(i.parent)&&e.isPropertyAccessExpression(i.parent.left)&&a(i.parent.left,t,r,n);var d=function(t,r){switch(t.kind){case 232:if(e.isFunctionLike(t.parent))return function(t,r,n){var i=function(t,r,n){if(e.isNodeArrayMultiLine(t.parameters,n)){var i=e.findChildOfKind(t,20,n);if(i)return i}return e.findChildOfKind(r,18,n)}(t,r,n),a=e.findChildOfKind(r,19,n);return i&&a&&s(i,a,t,n,210!==t.kind)}(t.parent,t,r);switch(t.parent.kind){case 237:case 240:case 241:case 239:case 236:case 238:case 245:case 290:return g(t.parent);case 249:var n=t.parent;if(n.tryBlock===t)return g(t.parent);if(n.finallyBlock===t){var i=e.findChildOfKind(n,96,r);if(i)return g(i)}default:return c(e.createTextSpanFromNode(t,r),"code")}case 260:return g(t.parent);case 254:case 223:case 255:case 256:case 258:case 261:case 178:case 197:return g(t);case 180:return g(t,!1,!e.isTupleTypeNode(t.parent),22);case 287:case 288:return _(t.statements);case 201:return m(t);case 200:return m(t,22);case 276:return u(t);case 280:return d(t);case 277:case 278:return p(t.attributes);case 220:case 14:return f(t);case 198:return g(t,!1,!e.isBindingElement(t.parent),22);case 210:return l(t);case 204:return a(t)}function a(t){if(t.arguments.length){var n=e.findChildOfKind(t,20,r),i=e.findChildOfKind(t,21,r);if(n&&i&&!e.positionsAreOnSameLine(n.pos,i.pos,r))return s(n,i,t,r,!1,!0)}}function l(t){if(!e.isBlock(t.body)&&!e.positionsAreOnSameLine(t.body.getFullStart(),t.body.getEnd(),r))return c(e.createTextSpanFromBounds(t.body.getFullStart(),t.body.getEnd()),"code",e.createTextSpanFromNode(t))}function u(t){var n=e.createTextSpanFromBounds(t.openingElement.getStart(r),t.closingElement.getEnd()),i=t.openingElement.tagName.getText(r);return c(n,"code",n,!1,"<"+i+">...</"+i+">")}function d(t){var n=e.createTextSpanFromBounds(t.openingFragment.getStart(r),t.closingFragment.getEnd());return c(n,"code",n,!1,"<>...</>")}function p(e){if(0!==e.properties.length)return o(e.getStart(r),e.getEnd(),"code")}function f(e){if(14!==e.kind||0!==e.text.length)return o(e.getStart(r),e.getEnd(),"code")}function m(t,r){return void 0===r&&(r=18),g(t,!1,!e.isArrayLiteralExpression(t.parent)&&!e.isCallExpression(t.parent),r)}function g(n,i,a,o,c){void 0===i&&(i=!1),void 0===a&&(a=!0),void 0===o&&(o=18),void 0===c&&(c=18===o?19:23);var l=e.findChildOfKind(t,o,r),u=e.findChildOfKind(t,c,r);return l&&u&&s(l,u,n,r,i,a)}function _(t){return t.length?c(e.createTextSpanFromRange(t),"code"):void 0}}(i,t);d&&n.push(d),l--,e.isCallExpression(i)?(l++,g(i.expression),l--,i.arguments.forEach(g),null===(u=i.typeArguments)||void 0===u||u.forEach(g)):e.isIfStatement(i)&&i.elseStatement&&e.isIfStatement(i.elseStatement)?(g(i.expression),g(i.thenStatement),l++,g(i.elseStatement),l--):i.forEachChild(g),l++}}}(t,r,l),function(t,r){for(var i=[],a=t.getLineStarts(),o=0,s=a;o<s.length;o++){var l=s[o],u=t.getLineEndOfPosition(l),d=n(t.text.substring(l,u));if(d&&!e.isInComment(t,l))if(d[1]){var p=i.pop();p&&(p.textSpan.length=u-p.textSpan.start,p.hintSpan.length=u-p.textSpan.start,r.push(p))}else{var f=e.createTextSpanFromBounds(t.text.indexOf("//",l),u);i.push(c(f,"region",f,!1,d[2]||"#region"))}}}(t,l),l.sort((function(e,t){return e.textSpan.start-t.textSpan.start}))};var r=/^\s*\/\/\s*#(end)?region(?:\s+(.*))?(?:\r)?$/;function n(e){return r.exec(e)}function a(t,r,i,a){var s=e.getLeadingCommentRangesOfNode(t,r);if(s){for(var c=-1,l=-1,u=0,d=r.getFullText(),p=0,f=s;p<f.length;p++){var m=f[p],g=m.kind,_=m.pos,h=m.end;switch(i.throwIfCancellationRequested(),g){case 2:if(n(d.slice(_,h))){y(),u=0;break}0===u&&(c=_),l=h,u++;break;case 3:y(),a.push(o(_,h,"comment")),u=0;break;default:e.Debug.assertNever(g)}}y()}function y(){u>1&&a.push(o(c,l,"comment"))}}function o(t,r,n){return c(e.createTextSpanFromBounds(t,r),n)}function s(t,r,n,i,a,o){return void 0===a&&(a=!1),void 0===o&&(o=!0),c(e.createTextSpanFromBounds(o?t.getFullStart():t.getStart(i),r.getEnd()),"code",e.createTextSpanFromNode(n,i),a)}function c(e,t,r,n,i){return void 0===r&&(r=e),void 0===n&&(n=!1),void 0===i&&(i="..."),{textSpan:e,kind:t,hintSpan:r,bannerText:i,autoCollapse:n}}}(e.OutliningElementsCollector||(e.OutliningElementsCollector={}))}(d||(d={})),function(e){var t;function r(e,t){return{kind:e,isCaseSensitive:t}}function n(e,t){var r=t.get(e);return r||t.set(e,r=y(e)),r}function i(i,a,o){var s=function(e,t){for(var r=e.length-t.length,n=function(r){if(D(t,(function(t,n){return p(e.charCodeAt(n+r))===t})))return{value:r}},i=0;i<=r;i++){var a=n(i);if("object"==typeof a)return a.value}return-1}(i,a.textLowerCase);if(0===s)return r(a.text.length===i.length?t.exact:t.prefix,e.startsWith(i,a.text));if(a.isLowerCase){if(-1===s)return;for(var d=0,f=n(i,o);d<f.length;d++){var m=f[d];if(c(i,m,a.text,!0))return r(t.substring,c(i,m,a.text,!1))}if(a.text.length<i.length&&u(i.charCodeAt(s)))return r(t.substring,!1)}else{if(i.indexOf(a.text)>0)return r(t.substring,!0);if(a.characterSpans.length>0){var g=n(i,o),_=!!l(i,g,a,!1)||!l(i,g,a,!0)&&void 0;if(void 0!==_)return r(t.camelCase,_)}}}function a(e,t,r){if(D(t.totalTextChunk.text,(function(e){return 32!==e&&42!==e}))){var n=i(e,t.totalTextChunk,r);if(n)return n}for(var a,s=0,c=t.subWordTextChunks;s<c.length;s++){a=o(a,i(e,c[s],r))}return a}function o(t,r){return e.min(t,r,s)}function s(t,r){return void 0===t?1:void 0===r?-1:e.compareValues(t.kind,r.kind)||e.compareBooleans(!t.isCaseSensitive,!r.isCaseSensitive)}function c(e,t,r,n,i){return void 0===i&&(i={start:0,length:r.length}),i.length<=t.length&&S(0,i.length,(function(a){return function(e,t,r){return r?p(e)===p(t):e===t}(r.charCodeAt(i.start+a),e.charCodeAt(t.start+a),n)}))}function l(t,r,n,i){for(var a,o,s=n.characterSpans,l=0,d=0;;){if(d===s.length)return!0;if(l===r.length)return!1;for(var p=r[l],f=!1;d<s.length;d++){var m=s[d];if(f&&(!u(n.text.charCodeAt(s[d-1].start))||!u(n.text.charCodeAt(s[d].start))))break;if(!c(t,p,n.text,i,m))break;f=!0,a=void 0===a?l:a,o=void 0===o||o,p=e.createTextSpan(p.start+m.length,p.length-m.length)}f||void 0===o||(o=!1),l++}}function u(t){if(t>=65&&t<=90)return!0;if(t<127||!e.isUnicodeIdentifierStart(t,99))return!1;var r=String.fromCharCode(t);return r===r.toUpperCase()}function d(t){if(t>=97&&t<=122)return!0;if(t<127||!e.isUnicodeIdentifierStart(t,99))return!1;var r=String.fromCharCode(t);return r===r.toLowerCase()}function p(e){return e>=65&&e<=90?e-65+97:e<127?e:String.fromCharCode(e).toLowerCase().charCodeAt(0)}function f(e){return e>=48&&e<=57}function m(e){return u(e)||d(e)||f(e)||95===e||36===e}function g(e){for(var t=[],r=0,n=0,i=0;i<e.length;i++){m(e.charCodeAt(i))?(0===n&&(r=i),n++):n>0&&(t.push(_(e.substr(r,n))),n=0)}return n>0&&t.push(_(e.substr(r,n))),t}function _(e){var t=e.toLowerCase();return{text:e,textLowerCase:t,isLowerCase:e===t,characterSpans:h(e)}}function h(e){return v(e,!1)}function y(e){return v(e,!0)}function v(t,r){for(var n=[],i=0,a=1;a<t.length;a++){var o=f(t.charCodeAt(a-1)),s=f(t.charCodeAt(a)),c=E(t,r,a),l=r&&x(t,a,i);(b(t.charCodeAt(a-1))||b(t.charCodeAt(a))||o!==s||c||l)&&(k(t,i,a)||n.push(e.createTextSpan(i,a-i)),i=a)}return k(t,i,t.length)||n.push(e.createTextSpan(i,t.length-i)),n}function b(e){switch(e){case 33:case 34:case 35:case 37:case 38:case 39:case 40:case 41:case 42:case 44:case 45:case 46:case 47:case 58:case 59:case 63:case 64:case 91:case 92:case 93:case 95:case 123:case 125:return!0}return!1}function k(e,t,r){return D(e,(function(e){return b(e)&&95!==e}),t,r)}function x(e,t,r){return t!==r&&t+1<e.length&&u(e.charCodeAt(t))&&d(e.charCodeAt(t+1))&&D(e,u,r,t)}function E(e,t,r){var n=u(e.charCodeAt(r-1));return u(e.charCodeAt(r))&&(!t||!n)}function S(e,t,r){for(var n=e;n<t;n++)if(!r(n))return!1;return!0}function D(e,t,r,n){return void 0===r&&(r=0),void 0===n&&(n=e.length),S(r,n,(function(r){return t(e.charCodeAt(r),r)}))}!function(e){e[e.exact=0]="exact",e[e.prefix=1]="prefix",e[e.substring=2]="substring",e[e.camelCase=3]="camelCase"}(t=e.PatternMatchKind||(e.PatternMatchKind={})),e.createPatternMatcher=function(t){var r=new e.Map,n=t.trim().split(".").map((function(e){return{totalTextChunk:_(t=e.trim()),subWordTextChunks:g(t)};var t}));if(!n.some((function(e){return!e.subWordTextChunks.length})))return{getFullMatch:function(t,i){return function(t,r,n,i){var s,c=a(r,e.last(n),i);if(!c)return;if(n.length-1>t.length)return;for(var l=n.length-2,u=t.length-1;l>=0;l-=1,u-=1)s=o(s,a(t[u],n[l],i));return s}(t,i,n,r)},getMatchForLastSegmentOfPattern:function(t){return a(t,e.last(n),r)},patternContainsDots:n.length>1}},e.breakIntoCharacterSpans=h,e.breakIntoWordSpans=y}(d||(d={})),function(e){e.preProcessFile=function(t,r,n){void 0===r&&(r=!0),void 0===n&&(n=!1);var i,a,o,s={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},c=[],l=0,u=!1;function d(){return a=o,18===(o=e.scanner.scan())?l++:19===o&&l--,o}function p(){var t=e.scanner.getTokenValue(),r=e.scanner.getTokenPos();return{fileName:t,pos:r,end:r+t.length}}function f(){c.push(p()),m()}function m(){0===l&&(u=!0)}function g(){var t=e.scanner.getToken();return 134===t&&(140===(t=d())&&10===(t=d())&&(i||(i=[]),i.push({ref:p(),depth:l})),!0)}function _(){if(24===a)return!1;var t=e.scanner.getToken();if(100===t){if(20===(t=d())){if(10===(t=d())||14===t)return f(),!0}else{if(10===t)return f(),!0;if(150===t){var r=e.scanner.lookAhead((function(){var t=e.scanner.scan();return 154!==t&&(41===t||18===t||78===t||e.isKeyword(t))}));r&&(t=d())}if(78===t||e.isKeyword(t))if(154===(t=d())){if(10===(t=d()))return f(),!0}else if(62===t){if(y(!0))return!0}else{if(27!==t)return!0;t=d()}if(18===t){for(t=d();19!==t&&1!==t;)t=d();19===t&&154===(t=d())&&10===(t=d())&&f()}else 41===t&&127===(t=d())&&(78===(t=d())||e.isKeyword(t))&&154===(t=d())&&10===(t=d())&&f()}return!0}return!1}function h(){var t=e.scanner.getToken();if(93===t){if(m(),150===(t=d())){var r=e.scanner.lookAhead((function(){var t=e.scanner.scan();return 41===t||18===t}));r&&(t=d())}if(18===t){for(t=d();19!==t&&1!==t;)t=d();19===t&&154===(t=d())&&10===(t=d())&&f()}else if(41===t)154===(t=d())&&10===(t=d())&&f();else if(100===t){if(150===(t=d())){r=e.scanner.lookAhead((function(){var t=e.scanner.scan();return 78===t||e.isKeyword(t)}));r&&(t=d())}if((78===t||e.isKeyword(t))&&62===(t=d())&&y(!0))return!0}return!0}return!1}function y(t,r){void 0===r&&(r=!1);var n=t?d():e.scanner.getToken();return 144===n&&(20===(n=d())&&(10===(n=d())||r&&14===n)&&f(),!0)}function v(){var t=e.scanner.getToken();if(78===t&&"define"===e.scanner.getTokenValue()){if(20!==(t=d()))return!0;if(10===(t=d())||14===t){if(27!==(t=d()))return!0;t=d()}if(22!==t)return!0;for(t=d();23!==t&&1!==t;)10!==t&&14!==t||f(),t=d();return!0}return!1}if(r&&function(){for(e.scanner.setText(t),d();1!==e.scanner.getToken();)g()||_()||h()||n&&(y(!1,!0)||v())||d();e.scanner.setText(void 0)}(),e.processCommentPragmas(s,t),e.processPragmasIntoFields(s,e.noop),u){if(i)for(var b=0,k=i;b<k.length;b++){var x=k[b];c.push(x.ref)}return{referencedFiles:s.referencedFiles,typeReferenceDirectives:s.typeReferenceDirectives,libReferenceDirectives:s.libReferenceDirectives,importedFiles:c,isLibFile:!!s.hasNoDefaultLib,ambientExternalModules:void 0}}var E=void 0;if(i)for(var S=0,D=i;S<D.length;S++){0===(x=D[S]).depth?(E||(E=[]),E.push(x.ref.fileName)):c.push(x.ref)}return{referencedFiles:s.referencedFiles,typeReferenceDirectives:s.typeReferenceDirectives,libReferenceDirectives:s.libReferenceDirectives,importedFiles:c,isLibFile:!!s.hasNoDefaultLib,ambientExternalModules:E}}}(d||(d={})),function(e){!function(t){function r(e,t,r,n,a,o){return{canRename:!0,fileToRename:void 0,kind:r,displayName:e,fullDisplayName:t,kindModifiers:n,triggerSpan:i(a,o)}}function n(t){return{canRename:!1,localizedErrorMessage:e.getLocaleSpecificMessage(t)}}function i(t,r){var n=t.getStart(r),i=t.getWidth(r);return e.isStringLiteralLike(t)&&(n+=1,i-=2),e.createTextSpan(n,i)}t.getRenameInfo=function(t,i,a,o){var s=e.getAdjustedRenameLocation(e.getTouchingPropertyName(i,a));if(function(t){switch(t.kind){case 78:case 79:case 10:case 14:case 108:return!0;case 8:return e.isLiteralNameOfPropertyDeclarationOrIndexAccess(t);default:return!1}}(s)){var c=function(t,i,a,o,s){var c=i.getSymbolAtLocation(t);if(!c){if(e.isStringLiteralLike(t)){var l=e.getContextualTypeOrAncestorTypeNodeType(t,i);if(l&&(128&l.flags||1048576&l.flags&&e.every(l.types,(function(e){return!!(128&e.flags)}))))return r(t.text,t.text,"string","",t,a)}else if(e.isLabelName(t)){var u=e.getTextOfNode(t);return r(u,u,"label","",t,a)}return}var d=c.declarations;if(!d||0===d.length)return;if(d.some(o))return n(e.Diagnostics.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(e.isIdentifier(t)&&88===t.originalKeywordKind&&c.parent&&1536&c.parent.flags)return;if(e.isStringLiteralLike(t)&&e.tryGetImportFromModuleSpecifier(t))return s&&s.allowRenameOfImportPath?function(t,r,i){if(!e.isExternalModuleNameRelative(t.text))return n(e.Diagnostics.You_cannot_rename_a_module_via_a_global_import);var a=e.find(i.declarations,e.isSourceFile);if(!a)return;var o=e.endsWith(t.text,"/index")||e.endsWith(t.text,"/index.js")?void 0:e.tryRemoveSuffix(e.removeFileExtension(a.fileName),"/index"),s=void 0===o?a.fileName:o,c=void 0===o?"module":"directory",l=t.text.lastIndexOf("/")+1,u=e.createTextSpan(t.getStart(r)+1+l,t.text.length-l);return{canRename:!0,fileToRename:s,kind:c,displayName:s,fullDisplayName:s,kindModifiers:"",triggerSpan:u}}(t,a,c):void 0;var p=e.SymbolDisplay.getSymbolKind(i,c,t),f=e.isImportOrExportSpecifierName(t)||e.isStringOrNumericLiteralLike(t)&&159===t.parent.kind?e.stripQuotes(e.getTextOfIdentifierOrLiteral(t)):void 0,m=f||i.symbolToString(c),g=f||i.getFullyQualifiedName(c);return r(m,g,p,e.SymbolDisplay.getSymbolModifiers(i,c),t,a)}(s,t.getTypeChecker(),i,(function(e){return t.isSourceFileDefaultLibrary(e.getSourceFile())}),o);if(c)return c}return n(e.Diagnostics.You_cannot_rename_this_element)}}(e.Rename||(e.Rename={}))}(d||(d={})),function(e){!function(t){function r(t,r,n){return e.Debug.assert(n.pos<=r),r<n.end||n.getEnd()===r&&e.getTouchingPropertyName(t,r).pos<n.end}t.getSmartSelectionRange=function(t,n){var o,s,c,d={textSpan:e.createTextSpanFromBounds(n.getFullStart(),n.getEnd())},p=n;e:for(;;){var f=i(p);if(!f.length)break;for(var m=0;m<f.length;m++){var g=f[m-1],_=f[m],h=f[m+1];if(e.getTokenPosOfNode(_,n,!0)>t)break e;if(r(n,t,_)){if(e.isBlock(_)||e.isTemplateSpan(_)||e.isTemplateHead(_)||e.isTemplateTail(_)||g&&e.isTemplateHead(g)||e.isVariableDeclarationList(_)&&e.isVariableStatement(p)||e.isSyntaxList(_)&&e.isVariableDeclarationList(p)||e.isVariableDeclaration(_)&&e.isSyntaxList(p)&&1===f.length||e.isJSDocTypeExpression(_)||e.isJSDocSignature(_)||e.isJSDocTypeLiteral(_)){p=_;break}if(e.isTemplateSpan(p)&&h&&e.isTemplateMiddleOrTemplateTail(h))k(_.getFullStart()-2,h.getStart()+1);var y=e.isSyntaxList(_)&&(c=void 0,18===(c=(s=g)&&s.kind)||22===c||20===c||278===c)&&l(h)&&!e.positionsAreOnSameLine(g.getStart(),h.getStart(),n),v=y?g.getEnd():_.getStart(),b=y?h.getStart():u(n,_);e.hasJSDocNodes(_)&&(null===(o=_.jsDoc)||void 0===o?void 0:o.length)&&k(e.first(_.jsDoc).getStart(),b),k(v,b),(e.isStringLiteral(_)||e.isTemplateLiteral(_))&&k(v+1,b-1),p=_;break}if(m===f.length-1)break e}}return d;function k(r,n){if(r!==n){var i=e.createTextSpanFromBounds(r,n);(!d||!e.textSpansEqual(i,d.textSpan)&&e.textSpanIntersectsWithPosition(i,t))&&(d=a({textSpan:i},d&&{parent:d}))}}};var n=e.or(e.isImportDeclaration,e.isImportEqualsDeclaration);function i(t){if(e.isSourceFile(t))return o(t.getChildAt(0).getChildren(),n);if(e.isMappedTypeNode(t)){var r=t.getChildren(),i=r[0],a=r.slice(1),l=e.Debug.checkDefined(a.pop());e.Debug.assertEqual(i.kind,18),e.Debug.assertEqual(l.kind,19);var u=o(a,(function(e){return e===t.readonlyToken||143===e.kind||e===t.questionToken||57===e.kind})),d=o(u,(function(e){var t=e.kind;return 22===t||160===t||23===t}));return[i,c(s(d,(function(e){return 58===e.kind}))),l]}if(e.isPropertySignature(t))return s(a=o(t.getChildren(),(function(r){return r===t.name||e.contains(t.modifiers,r)})),(function(e){return 58===e.kind}));if(e.isParameter(t)){var p=o(t.getChildren(),(function(e){return e===t.dotDotDotToken||e===t.name}));return s(o(p,(function(e){return e===p[0]||e===t.questionToken})),(function(e){return 62===e.kind}))}return e.isBindingElement(t)?s(t.getChildren(),(function(e){return 62===e.kind})):t.getChildren()}function o(e,t){for(var r,n=[],i=0,a=e;i<a.length;i++){var o=a[i];t(o)?(r=r||[]).push(o):(r&&(n.push(c(r)),r=void 0),n.push(o))}return r&&n.push(c(r)),n}function s(t,r,n){if(void 0===n&&(n=!0),t.length<2)return t;var i=e.findIndex(t,r);if(-1===i)return t;var a=t.slice(0,i),o=t[i],s=e.last(t),l=n&&26===s.kind,u=t.slice(i+1,l?t.length-1:void 0),d=e.compact([a.length?c(a):void 0,o,u.length?c(u):void 0]);return l?d.concat(s):d}function c(t){return e.Debug.assertGreaterThanOrEqual(t.length,1),e.setTextRangePosEnd(e.parseNodeFactory.createSyntaxList(t),t[0].pos,e.last(t).end)}function l(e){var t=e&&e.kind;return 19===t||23===t||21===t||279===t}function u(e,t){switch(t.kind){case 329:case 327:case 336:case 334:case 331:return e.getLineEndOfPosition(t.getStart());default:return t.getEnd()}}}(e.SmartSelectionRange||(e.SmartSelectionRange={}))}(d||(d={})),function(e){!function(t){var r,n;function a(t,r,n){for(var i=t.getFullStart(),a=t.parent;a;){var o=e.findPrecedingToken(i,r,a,!0);if(o)return e.rangeContainsRange(n,o);a=a.parent}return e.Debug.fail("Could not find preceding token")}function o(t,r){var n=function(t,r){if(29===t.kind||20===t.kind)return{list:m(t.parent,t,r),argumentIndex:0};var n=e.findContainingList(t);return n&&{list:n,argumentIndex:d(n,t)}}(t,r);if(n){var i=n.list,a=n.argumentIndex,o=function(t){var r=t.getChildren(),n=e.countWhere(r,(function(e){return 27!==e.kind}));r.length>0&&27===e.last(r).kind&&n++;return n}(i);0!==a&&e.Debug.assertLessThan(a,o);var s=function(t,r){var n=t.getFullStart(),i=e.skipTrivia(r.text,t.getEnd(),!1);return e.createTextSpan(n,i-n)}(i,r);return{list:i,argumentIndex:a,argumentCount:o,argumentsSpan:s}}}function s(t,r,n){var i=t.parent;if(e.isCallOrNewExpression(i)){var a=i,s=o(t,n);if(!s)return;var c=s.list,l=s.argumentIndex,u=s.argumentCount,d=s.argumentsSpan;return{isTypeParameterList:!!i.typeArguments&&i.typeArguments.pos===c.pos,invocation:{kind:0,node:a},argumentsSpan:d,argumentIndex:l,argumentCount:u}}if(e.isNoSubstitutionTemplateLiteral(t)&&e.isTaggedTemplateExpression(i))return e.isInsideTemplateLiteral(t,r,n)?p(i,0,n):void 0;if(e.isTemplateHead(t)&&206===i.parent.kind){var f=i,m=f.parent;return e.Debug.assert(220===f.kind),p(m,l=e.isInsideTemplateLiteral(t,r,n)?0:1,n)}if(e.isTemplateSpan(i)&&e.isTaggedTemplateExpression(i.parent.parent)){var g=i;m=i.parent.parent;if(e.isTemplateTail(t)&&!e.isInsideTemplateLiteral(t,r,n))return;l=function(t,r,n,i){if(e.Debug.assert(n>=r.getStart(),"Assumed 'position' could not occur before node."),e.isTemplateLiteralToken(r))return e.isInsideTemplateLiteral(r,n,i)?0:t+2;return t+1}(g.parent.templateSpans.indexOf(g),t,r,n);return p(m,l,n)}if(e.isJsxOpeningLikeElement(i)){var _=i.attributes.pos,h=e.skipTrivia(n.text,i.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:i},argumentsSpan:e.createTextSpan(_,h-_),argumentIndex:0,argumentCount:1}}var y=e.getPossibleTypeArgumentsInfo(t,n);if(y){var v=y.called,b=y.nTypeArguments;return{isTypeParameterList:!0,invocation:a={kind:1,called:v},argumentsSpan:d=e.createTextSpanFromBounds(v.getStart(n),t.end),argumentIndex:b,argumentCount:b+1}}}function c(t){return e.isBinaryExpression(t.parent)?c(t.parent):t}function l(t){return e.isBinaryExpression(t.left)?l(t.left)+1:2}function u(t){return"__type"===t.name&&e.firstDefined(t.declarations,(function(t){return e.isFunctionTypeNode(t)?t.parent.symbol:void 0}))||t}function d(e,t){for(var r=0,n=0,i=e.getChildren();n<i.length;n++){var a=i[n];if(a===t)break;27!==a.kind&&r++}return r}function p(t,r,n){var i=e.isNoSubstitutionTemplateLiteral(t.template)?1:t.template.templateSpans.length+1;return 0!==r&&e.Debug.assertLessThan(r,i),{isTypeParameterList:!1,invocation:{kind:0,node:t},argumentsSpan:f(t,n),argumentIndex:r,argumentCount:i}}function f(t,r){var n=t.template,i=n.getStart(),a=n.getEnd();220===n.kind&&(0===e.last(n.templateSpans).literal.getFullWidth()&&(a=e.skipTrivia(r.text,a,!1)));return e.createTextSpan(i,a-i)}function m(t,r,n){var i=t.getChildren(n),a=i.indexOf(r);return e.Debug.assert(a>=0&&i.length>a+1),i[a+1]}function g(t){return 0===t.kind?e.getInvokedExpression(t.node):t.called}function _(e){return 0===e.kind?e.node:1===e.kind?e.called:e.node}!function(e){e[e.Call=0]="Call",e[e.TypeArgs=1]="TypeArgs",e[e.Contextual=2]="Contextual"}(r||(r={})),t.getSignatureHelpItems=function(t,r,n,i,d){var p=t.getTypeChecker(),f=e.findTokenOnLeftOfPosition(r,n);if(f){var m=!!i&&"characterTyped"===i.kind;if(!m||!e.isInString(r,n,f)&&!e.isInComment(r,n)){var h=!!i&&"invoked"===i.kind,b=function(t,r,n,i,a){for(var d=function(t){e.Debug.assert(e.rangeContainsRange(t.parent,t),"Not a subspan",(function(){return"Child: "+e.Debug.formatSyntaxKind(t.kind)+", parent: "+e.Debug.formatSyntaxKind(t.parent.kind)}));var a=function(t,r,n,i){return function(t,r,n,i){var a=function(t,r,n){if(20!==t.kind&&27!==t.kind)return;var i=t.parent;switch(i.kind){case 208:case 166:case 209:case 210:var a=o(t,r);if(!a)return;var s=a.argumentIndex,u=a.argumentCount,d=a.argumentsSpan,p=e.isMethodDeclaration(i)?n.getContextualTypeForObjectLiteralElement(i):n.getContextualType(i);return p&&{contextualType:p,argumentIndex:s,argumentCount:u,argumentsSpan:d};case 218:var f=c(i),m=n.getContextualType(f),g=20===t.kind?0:l(i)-1,_=l(f);return m&&{contextualType:m,argumentIndex:g,argumentCount:_,argumentsSpan:e.createTextSpanFromNode(i)};default:return}}(t,n,i);if(!a)return;var s=a.contextualType,d=a.argumentIndex,p=a.argumentCount,f=a.argumentsSpan,m=s.getNonNullableType(),g=m.getCallSignatures();if(1!==g.length)return;var _={kind:2,signature:e.first(g),node:t,symbol:u(m.symbol)};return{isTypeParameterList:!1,invocation:_,argumentsSpan:f,argumentIndex:d,argumentCount:p}}(t,0,n,i)||s(t,r,n)}(t,r,n,i);if(a)return{value:a}},p=t;!e.isSourceFile(p)&&(a||!e.isBlock(p));p=p.parent){var f=d(p);if("object"==typeof f)return f.value}return}(f,n,r,p,h);if(b){d.throwIfCancellationRequested();var k=function(t,r,n,i,o){var s=t.invocation,c=t.argumentCount;switch(s.kind){case 0:if(o&&!function(t,r,n){if(!e.isCallOrNewExpression(r))return!1;var i=r.getChildren(n);switch(t.kind){case 20:return e.contains(i,t);case 27:var o=e.findContainingList(t);return!!o&&e.contains(i,o);case 29:return a(t,n,r.expression);default:return!1}}(i,s.node,n))return;var l=[],u=r.getResolvedSignatureForSignatureHelp(s.node,l,c);return 0===l.length?void 0:{kind:0,candidates:l,resolvedSignature:u};case 1:var d=s.called;if(o&&!a(i,n,e.isIdentifier(d)?d.parent:d))return;if(0!==(l=e.getPossibleGenericSignatures(d,c,r)).length)return{kind:0,candidates:l,resolvedSignature:e.first(l)};var p=r.getSymbolAtLocation(d);return p&&{kind:1,symbol:p};case 2:return{kind:0,candidates:[s.signature],resolvedSignature:s.signature};default:return e.Debug.assertNever(s)}}(b,p,r,f,m);return d.throwIfCancellationRequested(),k?p.runWithCancellationToken(d,(function(e){return 0===k.kind?y(k.candidates,k.resolvedSignature,b,r,e):function(e,t,r,n){var i=t.argumentCount,a=t.argumentsSpan,o=t.invocation,s=t.argumentIndex,c=n.getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(e);if(!c)return;var l=[v(e,c,n,_(o),r)];return{items:l,applicableSpan:a,selectedItemIndex:0,argumentIndex:s,argumentCount:i}}(k.symbol,b,r,e)})):e.isSourceFileJS(r)?function(t,r,n){if(2===t.invocation.kind)return;var i=g(t.invocation),a=e.isPropertyAccessExpression(i)?i.name.text:void 0,o=r.getTypeChecker();return void 0===a?void 0:e.firstDefined(r.getSourceFiles(),(function(r){return e.firstDefined(r.getNamedDeclarations().get(a),(function(e){var i=e.symbol&&o.getTypeOfSymbolAtLocation(e.symbol,e),a=i&&i.getCallSignatures();if(a&&a.length)return o.runWithCancellationToken(n,(function(e){return y(a,a[0],t,r,e,!0)}))}))}))}(b,t,d):void 0}}}},function(e){e[e.Candidate=0]="Candidate",e[e.Type=1]="Type"}(n||(n={})),t.getArgumentInfoForCompletions=function(e,t,r){var n=s(e,t,r);return!n||n.isTypeParameterList||0!==n.invocation.kind?void 0:{invocation:n.invocation.node,argumentCount:n.argumentCount,argumentIndex:n.argumentIndex}};var h=70246400;function y(t,r,n,a,o,s){var c,l=n.isTypeParameterList,u=n.argumentCount,d=n.argumentsSpan,p=n.invocation,f=n.argumentIndex,m=_(p),h=2===p.kind?p.symbol:o.getSymbolAtLocation(g(p))||s&&(null===(c=r.declaration)||void 0===c?void 0:c.symbol),y=h?e.symbolToDisplayParts(o,h,s?a:void 0,void 0):e.emptyArray,v=e.map(t,(function(t){return function(t,r,n,a,o,s){var c=(n?k:x)(t,a,o,s);return e.map(c,(function(n){var s=n.isVariadic,c=n.parameters,l=n.prefix,u=n.suffix,d=i(i([],r),l),p=i(i([],u),function(t,r,n){return e.mapToDisplayParts((function(e){e.writePunctuation(":"),e.writeSpace(" ");var i=n.getTypePredicateOfSignature(t);i?n.writeTypePredicate(i,r,void 0,e):n.writeType(n.getReturnTypeOfSignature(t),r,void 0,e)}))}(t,o,a)),f=t.getDocumentationComment(a),m=t.getJsDocTags();return{isVariadic:s,prefixDisplayParts:d,suffixDisplayParts:p,separatorDisplayParts:b,parameters:c,documentation:f,tags:m}}))}(t,y,l,o,m,a)}));0!==f&&e.Debug.assertLessThan(f,u);for(var E=0,S=0,D=0;D<v.length;D++){var w=v[D];if(t[D]===r&&(E=S,w.length>1))for(var T=0,C=0,A=w;C<A.length;C++){var N=A[C];if(N.isVariadic||N.parameters.length>=u){E=S+T;break}T++}S+=w.length}e.Debug.assert(-1!==E);var P={items:e.flatMapToMutable(v,e.identity),applicableSpan:d,selectedItemIndex:E,argumentIndex:f,argumentCount:u},I=P.items[E];if(I.isVariadic){var F=e.findIndex(I.parameters,(function(e){return!!e.isRest}));-1<F&&F<I.parameters.length-1?P.argumentIndex=I.parameters.length:P.argumentIndex=Math.min(P.argumentIndex,I.parameters.length-1)}return P}function v(t,r,n,a,o){var s=e.symbolToDisplayParts(n,t),c=e.createPrinter({removeComments:!0}),l=r.map((function(e){return E(e,n,a,o,c)})),u=t.getDocumentationComment(n),d=t.getJsDocTags();return{isVariadic:!1,prefixDisplayParts:i(i([],s),[e.punctuationPart(29)]),suffixDisplayParts:[e.punctuationPart(31)],separatorDisplayParts:b,parameters:l,documentation:u,tags:d}}var b=[e.punctuationPart(27),e.spacePart()];function k(t,r,n,a){var o=(t.target||t).typeParameters,s=e.createPrinter({removeComments:!0}),c=(o||e.emptyArray).map((function(e){return E(e,r,n,a,s)})),l=t.thisParameter?[r.symbolToParameterDeclaration(t.thisParameter,n,h)]:[];return r.getExpandedParameters(t).map((function(t){var o=e.factory.createNodeArray(i(i([],l),e.map(t,(function(e){return r.symbolToParameterDeclaration(e,n,h)})))),u=e.mapToDisplayParts((function(e){s.writeList(2576,o,a,e)}));return{isVariadic:!1,parameters:c,prefix:[e.punctuationPart(29)],suffix:i([e.punctuationPart(31)],u)}}))}function x(t,r,n,a){var o=r.hasEffectiveRestParameter(t),s=e.createPrinter({removeComments:!0}),c=e.mapToDisplayParts((function(i){if(t.typeParameters&&t.typeParameters.length){var o=e.factory.createNodeArray(t.typeParameters.map((function(e){return r.typeParameterToDeclaration(e,n,h)})));s.writeList(53776,o,a,i)}})),l=r.getExpandedParameters(t);return l.map((function(t){return{isVariadic:o&&(1===l.length||!!(32768&t[t.length-1].checkFlags)),parameters:t.map((function(t){return function(t,r,n,i,a){var o=e.mapToDisplayParts((function(e){var o=r.symbolToParameterDeclaration(t,n,h);a.writeNode(4,o,i,e)})),s=r.isOptionalParameter(t.valueDeclaration),c=!!(32768&t.checkFlags);return{name:t.name,documentation:t.getDocumentationComment(r),displayParts:o,isOptional:s,isRest:c}}(t,r,n,a,s)})),prefix:i(i([],c),[e.punctuationPart(20)]),suffix:[e.punctuationPart(21)]}}))}function E(t,r,n,i,a){var o=e.mapToDisplayParts((function(e){var o=r.typeParameterToDeclaration(t,n,h);a.writeNode(4,o,i,e)}));return{name:t.symbol.name,documentation:t.symbol.getDocumentationComment(r),displayParts:o,isOptional:!1,isRest:!1}}}(e.SignatureHelp||(e.SignatureHelp={}))}(d||(d={})),function(e){var t=/^data:(?:application\/json(?:;charset=[uU][tT][fF]-8);base64,([A-Za-z0-9+\/=]+)$)?/;function r(t,r,n){var i=e.tryParseRawSourceMap(r);if(i&&i.sources&&i.file&&i.mappings&&(!i.sourcesContent||!i.sourcesContent.some(e.isString)))return e.createDocumentPositionMapper(t,i,n)}e.getSourceMapper=function(t){var r=e.createGetCanonicalFileName(t.useCaseSensitiveFileNames()),n=t.getCurrentDirectory(),i=new e.Map,a=new e.Map;return{tryGetSourcePosition:function t(r){if(!e.isDeclarationFileName(r.fileName))return;if(!c(r.fileName))return;var n=s(r.fileName).getSourcePosition(r);return n&&n!==r?t(n)||n:void 0},tryGetGeneratedPosition:function(i){if(e.isDeclarationFileName(i.fileName))return;var a=c(i.fileName);if(!a)return;var o=t.getProgram();if(o.isSourceOfProjectReferenceRedirect(a.fileName))return;var l=o.getCompilerOptions(),u=e.outFile(l),d=u?e.removeFileExtension(u)+".d.ts":e.getDeclarationEmitOutputFilePathWorker(i.fileName,o.getCompilerOptions(),n,o.getCommonSourceDirectory(),r);if(void 0===d)return;var p=s(d,i.fileName).getGeneratedPosition(i);return p===i?void 0:p},toLineColumnOffset:function(e,t){return u(e).getLineAndCharacterOfPosition(t)},clearCache:function(){i.clear(),a.clear()}};function o(t){return e.toPath(t,n,r)}function s(n,i){var s,c=o(n),l=a.get(c);if(l)return l;if(t.getDocumentPositionMapper)s=t.getDocumentPositionMapper(n,i);else if(t.readFile){var d=u(n);s=d&&e.getDocumentPositionMapper({getSourceFileLike:u,getCanonicalFileName:r,log:function(e){return t.log(e)}},n,e.getLineInfo(d.text,e.getLineStarts(d)),(function(e){return!t.fileExists||t.fileExists(e)?t.readFile(e):void 0}))}return a.set(c,s||e.identitySourceMapConsumer),s||e.identitySourceMapConsumer}function c(e){var r=t.getProgram();if(r){var n=o(e),i=r.getSourceFileByPath(n);return i&&i.resolvedPath===n?i:void 0}}function l(r){var n=o(r),a=i.get(n);if(void 0!==a)return a||void 0;if(t.readFile&&(!t.fileExists||t.fileExists(n))){var s=t.readFile(n),c=!!s&&function(t,r){return{text:t,lineMap:r,getLineAndCharacterOfPosition:function(t){return e.computeLineAndCharacterOfPosition(e.getLineStarts(this),t)}}}(s);return i.set(n,c),c||void 0}i.set(n,!1)}function u(e){return t.getSourceFileLike?t.getSourceFileLike(e):c(e)||l(e)}},e.getDocumentPositionMapper=function(n,i,a,o){var s=e.tryGetSourceMappingURL(a);if(s){var c=t.exec(s);if(c){if(c[1]){var l=c[1];return r(n,e.base64decode(e.sys,l),i)}s=void 0}}var u=[];s&&u.push(s),u.push(i+".map");for(var d=s&&e.getNormalizedAbsolutePath(s,e.getDirectoryPath(i)),p=0,f=u;p<f.length;p++){var m=f[p],g=e.getNormalizedAbsolutePath(m,e.getDirectoryPath(i)),_=o(g,d);if(e.isString(_))return r(n,_,g);if(void 0!==_)return _||void 0}}}(d||(d={})),function(e){var t=new e.Map;function r(t){return e.isPropertyAccessExpression(t)?r(t.expression):t}function n(t){switch(t.kind){case 264:var r=t.importClause,n=t.moduleSpecifier;return r&&!r.name&&r.namedBindings&&266===r.namedBindings.kind&&e.isStringLiteral(n)?r.namedBindings.name:void 0;case 263:return t.name;default:return}}function i(t,r){return e.isReturnStatement(t)&&!!t.expression&&a(t.expression,r)}function a(t,r){if(!o(t)||!t.arguments.every((function(e){return s(e,r)})))return!1;for(var n=t.expression;o(n)||e.isPropertyAccessExpression(n);){if(e.isCallExpression(n)&&!n.arguments.every((function(e){return s(e,r)})))return!1;n=n.expression}return!0}function o(t){return e.isCallExpression(t)&&(e.hasPropertyAccessExpressionWithName(t,"then")&&function(t){return!(t.arguments.length>2)&&(t.arguments.length<2||e.some(t.arguments,(function(t){return 104===t.kind||e.isIdentifier(t)&&"undefined"===t.text})))}(t)||e.hasPropertyAccessExpressionWithName(t,"catch"))}function s(r,n){switch(r.kind){case 253:case 209:case 210:t.set(c(r),!0);case 104:return!0;case 78:case 202:var i=n.getSymbolAtLocation(r);return!!i&&(n.isUndefinedSymbol(i)||e.some(e.skipAlias(i,n).declarations,(function(t){return e.isFunctionLike(t)||e.hasInitializer(t)&&!!t.initializer&&e.isFunctionLike(t.initializer)})));default:return!1}}function c(e){return e.pos.toString()+":"+e.end.toString()}e.computeSuggestionDiagnostics=function(a,o,s){o.getSemanticDiagnostics(a,s);var l,u=[],d=o.getTypeChecker();a.commonJsModuleIndicator&&(e.programContainsEs6Modules(o)||e.compilerOptionsIndicateEs6Modules(o.getCompilerOptions()))&&function(t){return t.statements.some((function(t){switch(t.kind){case 234:return t.declarationList.declarations.some((function(t){return!!t.initializer&&e.isRequireCall(r(t.initializer),!0)}));case 235:var n=t.expression;if(!e.isBinaryExpression(n))return e.isRequireCall(n,!0);var i=e.getAssignmentDeclarationKind(n);return 1===i||2===i;default:return!1}}))}(a)&&u.push(e.createDiagnosticForNode((l=a.commonJsModuleIndicator,e.isBinaryExpression(l)?l.left:l),e.Diagnostics.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module));var p=e.isSourceFileJS(a);if(t.clear(),function r(n){if(p)(function(t,r){var n,i,a,o;if(209===t.kind){if(e.isVariableDeclaration(t.parent)&&(null===(n=t.symbol.members)||void 0===n?void 0:n.size))return!0;var s=r.getSymbolOfExpando(t,!1);return!(!s||!(null===(i=s.exports)||void 0===i?void 0:i.size)&&!(null===(a=s.members)||void 0===a?void 0:a.size))}if(253===t.kind)return!!(null===(o=t.symbol.members)||void 0===o?void 0:o.size);return!1})(n,d)&&u.push(e.createDiagnosticForNode(e.isVariableDeclaration(n.parent)?n.parent.name:n,e.Diagnostics.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(e.isVariableStatement(n)&&n.parent===a&&2&n.declarationList.flags&&1===n.declarationList.declarations.length){var o=n.declarationList.declarations[0].initializer;o&&e.isRequireCall(o,!0)&&u.push(e.createDiagnosticForNode(o,e.Diagnostics.require_call_may_be_converted_to_an_import))}e.codefix.parameterShouldGetTypeFromJSDoc(n)&&u.push(e.createDiagnosticForNode(n.name||n,e.Diagnostics.JSDoc_types_may_be_moved_to_TypeScript_types))}e.isFunctionLikeDeclaration(n)&&function(r,n,a){(function(t,r){return!e.isAsyncFunction(t)&&t.body&&e.isBlock(t.body)&&function(t,r){return!!e.forEachReturnStatement(t,(function(e){return i(e,r)}))}(t.body,r)&&function(e,t){var r=t.getTypeAtLocation(e),n=t.getSignaturesOfType(r,0),i=n.length?t.getReturnTypeOfSignature(n[0]):void 0;return!!i&&!!t.getPromisedTypeOfPromise(i)}(t,r)})(r,n)&&!t.has(c(r))&&a.push(e.createDiagnosticForNode(!r.name&&e.isVariableDeclaration(r.parent)&&e.isIdentifier(r.parent.name)?r.parent.name:r,e.Diagnostics.This_may_be_converted_to_an_async_function))}(n,d,u);n.forEachChild(r)}(a),e.getAllowSyntheticDefaultImports(o.getCompilerOptions()))for(var f=0,m=a.imports;f<m.length;f++){var g=m[f],_=n(e.importFromModuleSpecifier(g));if(_){var h=e.getResolvedModule(a,g.text),y=h&&o.getSourceFile(h.resolvedFileName);y&&y.externalModuleIndicator&&e.isExportAssignment(y.externalModuleIndicator)&&y.externalModuleIndicator.isExportEquals&&u.push(e.createDiagnosticForNode(_,e.Diagnostics.Import_may_be_converted_to_a_default_import))}}return e.addRange(u,a.bindSuggestionDiagnostics),e.addRange(u,o.getSuggestionDiagnostics(a,s)),u.sort((function(e,t){return e.start-t.start}))},e.isReturnStatementWithFixablePromiseHandler=i,e.isFixablePromiseHandler=a}(d||(d={})),function(e){!function(t){var r=70246400;function n(t,r,n){var a=i(t,r,n);if(""!==a)return a;var o=e.getCombinedLocalAndExportSymbolFlags(r);return 32&o?e.getDeclarationOfKind(r,223)?"local class":"class":384&o?"enum":524288&o?"type":64&o?"interface":262144&o?"type parameter":8&o?"enum member":2097152&o?"alias":1536&o?"module":a}function i(t,r,n){var i=t.getRootSymbols(r);if(1===i.length&&8192&e.first(i).flags&&0!==t.getTypeOfSymbolAtLocation(r,n).getNonNullableType().getCallSignatures().length)return"method";if(t.isUndefinedSymbol(r))return"var";if(t.isArgumentsSymbol(r))return"local var";if(108===n.kind&&e.isExpression(n))return"parameter";var a=e.getCombinedLocalAndExportSymbolFlags(r);if(3&a)return e.isFirstDeclarationOfSymbolParameter(r)?"parameter":r.valueDeclaration&&e.isVarConst(r.valueDeclaration)?"const":e.forEach(r.declarations,e.isLet)?"let":s(r)?"local var":"var";if(16&a)return s(r)?"local function":"function";if(32768&a)return"getter";if(65536&a)return"setter";if(8192&a)return"method";if(16384&a)return"constructor";if(4&a){if(33554432&a&&6&r.checkFlags){var o=e.forEach(t.getRootSymbols(r),(function(e){if(98311&e.getFlags())return"property"}));return o||(t.getTypeOfSymbolAtLocation(r,n).getCallSignatures().length?"method":"property")}switch(n.parent&&n.parent.kind){case 278:case 276:case 277:return 78===n.kind?"property":"JSX attribute";case 283:return"JSX attribute";default:return"property"}}return""}function a(t){return!!(8192&e.getCombinedNodeFlagsAlwaysIncludeJSDoc(t))}function o(t){if(t.declarations&&t.declarations.length){var r=t.declarations,n=r[0],i=r.slice(1),o=e.length(i)&&a(n)&&e.some(i,(function(e){return!a(e)}))?8192:0,s=e.getNodeModifiers(n,o);if(s)return s.split(",")}return[]}function s(t){return!t.parent&&e.forEach(t.declarations,(function(t){if(209===t.kind)return!0;if(251!==t.kind&&253!==t.kind)return!1;for(var r=t.parent;!e.isFunctionBlock(r);r=r.parent)if(300===r.kind||260===r.kind)return!1;return!0}))}t.getSymbolKind=n,t.getSymbolModifiers=function(t,r){if(!r)return"";var n=new e.Set(o(r));if(2097152&r.flags){var i=t.getAliasedSymbol(r);i!==r&&e.forEach(o(i),(function(e){n.add(e)}))}return 16777216&r.flags&&n.add("optional"),n.size>0?e.arrayFrom(n.values()).join(","):""},t.getSymbolDisplayPartsDocumentationAndSymbolKind=function t(a,o,s,c,l,u,d){void 0===u&&(u=e.getMeaningFromLocation(l));var p,f,m,g,_=[],h=[],y=[],v=e.getCombinedLocalAndExportSymbolFlags(o),b=1&u?i(a,o,l):"",k=!1,x=108===l.kind&&e.isInExpressionContext(l),E=!1;if(108===l.kind&&!x)return{displayParts:[e.keywordPart(108)],documentation:[],symbolKind:"primitive type",tags:void 0};if(""!==b||32&v||2097152&v){"getter"!==b&&"setter"!==b||(b="property");var S=void 0;if(p=x?a.getTypeAtLocation(l):a.getTypeOfSymbolAtLocation(o.exportSymbol||o,l),l.parent&&202===l.parent.kind){var D=l.parent.name;(D===l||D&&0===D.getFullWidth())&&(l=l.parent)}var w=void 0;if(e.isCallOrNewExpression(l)?w=l:(e.isCallExpressionTarget(l)||e.isNewExpressionTarget(l)||l.parent&&(e.isJsxOpeningLikeElement(l.parent)||e.isTaggedTemplateExpression(l.parent))&&e.isFunctionLike(o.valueDeclaration))&&(w=l.parent),w){S=a.tryGetResolvedSignatureWithoutCheck(w);var T=205===w.kind||e.isCallExpression(w)&&106===w.expression.kind,C=T?p.getConstructSignatures():p.getCallSignatures();if(e.contains(C,S.target)||e.contains(C,S)||(S=C.length?C[0]:void 0),S){switch(T&&32&v?(b="constructor",X(p.symbol,b)):2097152&v?(Q(b="alias"),_.push(e.spacePart()),T&&(4&S.flags&&(_.push(e.keywordPart(126)),_.push(e.spacePart())),_.push(e.keywordPart(103)),_.push(e.spacePart())),Y(o)):X(o,b),b){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":_.push(e.punctuationPart(58)),_.push(e.spacePart()),16&e.getObjectFlags(p)||!p.symbol||(e.addRange(_,e.symbolToDisplayParts(a,p.symbol,c,void 0,5)),_.push(e.lineBreakPart())),T&&(4&S.flags&&(_.push(e.keywordPart(126)),_.push(e.spacePart())),_.push(e.keywordPart(103)),_.push(e.spacePart())),Z(S,C,262144);break;default:Z(S,C)}k=!0,E=C.length>1}}else if(e.isNameOfFunctionDeclaration(l)&&!(98304&v)||133===l.kind&&167===l.parent.kind){var A=l.parent,N=o.declarations&&e.find(o.declarations,(function(e){return e===(133===l.kind?A.parent:A)}));if(N){C=167===A.kind?p.getNonNullableType().getConstructSignatures():p.getNonNullableType().getCallSignatures();S=a.isImplementationOfOverload(A)?C[0]:a.getSignatureFromDeclaration(A),167===A.kind?(b="constructor",X(p.symbol,b)):X(170!==A.kind||2048&p.symbol.flags||4096&p.symbol.flags?o:p.symbol,b),Z(S,C),k=!0,E=C.length>1}}}if(32&v&&!k&&!x&&(G(),e.getDeclarationOfKind(o,223)?Q("local class"):e.getDeclarationOfKind(o,255)?_.push(e.keywordPart(84)):_.push(e.keywordPart(83)),_.push(e.spacePart()),Y(o),ee(o,s)),64&v&&2&u&&(W(),_.push(e.keywordPart(118)),_.push(e.spacePart()),Y(o),ee(o,s)),524288&v&&2&u&&(W(),_.push(e.keywordPart(150)),_.push(e.spacePart()),Y(o),ee(o,s),_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),e.addRange(_,e.typeToDisplayParts(a,a.getDeclaredTypeOfSymbol(o),c,8388608))),384&v&&(W(),e.some(o.declarations,(function(t){return e.isEnumDeclaration(t)&&e.isEnumConst(t)}))&&(_.push(e.keywordPart(85)),_.push(e.spacePart())),_.push(e.keywordPart(92)),_.push(e.spacePart()),Y(o)),1536&v&&!x){W();var P=(V=e.getDeclarationOfKind(o,259))&&V.name&&78===V.name.kind;_.push(e.keywordPart(P?141:140)),_.push(e.spacePart()),Y(o)}if(262144&v&&2&u)if(W(),_.push(e.punctuationPart(20)),_.push(e.textPart("type parameter")),_.push(e.punctuationPart(21)),_.push(e.spacePart()),Y(o),o.parent)$(),Y(o.parent,c),ee(o.parent,c);else{var I=e.getDeclarationOfKind(o,160);if(void 0===I)return e.Debug.fail();if(V=I.parent)if(e.isFunctionLikeKind(V.kind)){$();S=a.getSignatureFromDeclaration(V);171===V.kind?(_.push(e.keywordPart(103)),_.push(e.spacePart())):170!==V.kind&&V.name&&Y(V.symbol),e.addRange(_,e.signatureToDisplayParts(a,S,s,32))}else 257===V.kind&&($(),_.push(e.keywordPart(150)),_.push(e.spacePart()),Y(V.symbol),ee(V.symbol,s))}if(8&v&&(b="enum member",X(o,"enum member"),294===(V=o.declarations[0]).kind)){var F=a.getConstantValue(V);void 0!==F&&(_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),_.push(e.displayPart(e.getTextOfConstantValue(F),"number"==typeof F?e.SymbolDisplayPartKind.numericLiteral:e.SymbolDisplayPartKind.stringLiteral)))}if(2097152&o.flags){if(W(),!k){var O=a.getAliasedSymbol(o);if(O!==o&&O.declarations&&O.declarations.length>0){var R=O.declarations[0],M=e.getNameOfDeclaration(R);if(M){var L=e.isModuleWithStringLiteralName(R)&&e.hasSyntacticModifier(R,2),j="default"!==o.name&&!L,B=t(a,O,e.getSourceFileOfNode(R),R,M,u,j?o:O);_.push.apply(_,B.displayParts),_.push(e.lineBreakPart()),m=B.documentation,g=B.tags}else m=O.getContextualDocumentationComment(R,a),g=O.getJsDocTags()}}switch(o.declarations[0].kind){case 262:_.push(e.keywordPart(93)),_.push(e.spacePart()),_.push(e.keywordPart(141));break;case 269:_.push(e.keywordPart(93)),_.push(e.spacePart()),_.push(e.keywordPart(o.declarations[0].isExportEquals?62:88));break;case 273:_.push(e.keywordPart(93));break;default:_.push(e.keywordPart(100))}_.push(e.spacePart()),Y(o),e.forEach(o.declarations,(function(t){if(263===t.kind){var r=t;if(e.isExternalModuleImportEqualsDeclaration(r))_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),_.push(e.keywordPart(144)),_.push(e.punctuationPart(20)),_.push(e.displayPart(e.getTextOfNode(e.getExternalModuleImportEqualsDeclarationExpression(r)),e.SymbolDisplayPartKind.stringLiteral)),_.push(e.punctuationPart(21));else{var n=a.getSymbolAtLocation(r.moduleReference);n&&(_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),Y(n,c))}return!0}}))}if(!k)if(""!==b){if(p)if(x?(W(),_.push(e.keywordPart(108))):X(o,b),"property"===b||"JSX attribute"===b||3&v||"local var"===b||x){if(_.push(e.punctuationPart(58)),_.push(e.spacePart()),p.symbol&&262144&p.symbol.flags){var z=e.mapToDisplayParts((function(t){var n=a.typeParameterToDeclaration(p,c,r);K().writeNode(4,n,e.getSourceFileOfNode(e.getParseTreeNode(c)),t)}));e.addRange(_,z)}else e.addRange(_,e.typeToDisplayParts(a,p,c));if(o.target&&o.target.tupleLabelDeclaration){var U=o.target.tupleLabelDeclaration;e.Debug.assertNode(U.name,e.isIdentifier),_.push(e.spacePart()),_.push(e.punctuationPart(20)),_.push(e.textPart(e.idText(U.name))),_.push(e.punctuationPart(21))}}else if(16&v||8192&v||16384&v||131072&v||98304&v||"method"===b){(C=p.getNonNullableType().getCallSignatures()).length&&(Z(C[0],C),E=C.length>1)}}else b=n(a,o,l);if(0!==h.length||E||(h=o.getContextualDocumentationComment(c,a)),0===h.length&&4&v&&o.parent&&e.forEach(o.parent.declarations,(function(e){return 300===e.kind})))for(var q=0,J=o.declarations;q<J.length;q++){var V;if((V=J[q]).parent&&218===V.parent.kind){var H=a.getSymbolAtLocation(V.parent.right);if(H&&(h=H.getDocumentationComment(a),y=H.getJsDocTags(),h.length>0))break}}return 0!==y.length||E||(y=o.getJsDocTags()),0===h.length&&m&&(h=m),0===y.length&&g&&(y=g),{displayParts:_,documentation:h,symbolKind:b,tags:0===y.length?void 0:y};function K(){return f||(f=e.createPrinter({removeComments:!0})),f}function W(){_.length&&_.push(e.lineBreakPart()),G()}function G(){d&&(Q("alias"),_.push(e.spacePart()))}function $(){_.push(e.spacePart()),_.push(e.keywordPart(101)),_.push(e.spacePart())}function Y(t,r){d&&t===o&&(t=d);var n=e.symbolToDisplayParts(a,t,r||s,void 0,7);e.addRange(_,n),16777216&o.flags&&_.push(e.punctuationPart(57))}function X(t,r){W(),r&&(Q(r),t&&!e.some(t.declarations,(function(t){return e.isArrowFunction(t)||(e.isFunctionExpression(t)||e.isClassExpression(t))&&!t.name}))&&(_.push(e.spacePart()),Y(t)))}function Q(t){switch(t){case"var":case"function":case"let":case"const":case"constructor":return void _.push(e.textOrKeywordPart(t));default:return _.push(e.punctuationPart(20)),_.push(e.textOrKeywordPart(t)),void _.push(e.punctuationPart(21))}}function Z(t,r,n){void 0===n&&(n=0),e.addRange(_,e.signatureToDisplayParts(a,t,c,32|n)),r.length>1&&(_.push(e.spacePart()),_.push(e.punctuationPart(20)),_.push(e.operatorPart(39)),_.push(e.displayPart((r.length-1).toString(),e.SymbolDisplayPartKind.numericLiteral)),_.push(e.spacePart()),_.push(e.textPart(2===r.length?"overload":"overloads")),_.push(e.punctuationPart(21))),h=t.getDocumentationComment(a),y=t.getJsDocTags(),r.length>1&&0===h.length&&0===y.length&&(h=r[0].getDocumentationComment(a),y=r[0].getJsDocTags())}function ee(t,n){var i=e.mapToDisplayParts((function(i){var o=a.symbolToTypeParameterDeclarations(t,n,r);K().writeList(53776,o,e.getSourceFileOfNode(e.getParseTreeNode(n)),i)}));e.addRange(_,i)}}}(e.SymbolDisplay||(e.SymbolDisplay={}))}(d||(d={})),function(e){function t(t,r){var i=[],a=r.compilerOptions?n(r.compilerOptions,i):{},o=e.getDefaultCompilerOptions();for(var s in o)e.hasProperty(o,s)&&void 0===a[s]&&(a[s]=o[s]);for(var c=0,l=e.transpileOptionValueCompilerOptions;c<l.length;c++){var u=l[c];a[u.name]=u.transpileOptionValue}a.suppressOutputPathCheck=!0,a.allowNonTsExtensions=!0;var d=r.fileName||(r.compilerOptions&&r.compilerOptions.jsx?"module.tsx":"module.ts"),p=e.ensureScriptKind(d,void 0),f=e.createSourceFile(d,t,a.target,void 0,p,a);r.moduleName&&(f.moduleName=r.moduleName),r.renamedDependencies&&(f.renamedDependencies=new e.Map(e.getEntries(r.renamedDependencies)));var m,g,_=e.getNewLineCharacter(a),h={getSourceFile:function(t){return t===e.normalizePath(d)?f:void 0},writeFile:function(t,r){e.fileExtensionIs(t,".map")?(e.Debug.assertEqual(g,void 0,"Unexpected multiple source map outputs, file:",t),g=r):(e.Debug.assertEqual(m,void 0,"Unexpected multiple outputs, file:",t),m=r)},getDefaultLibFileName:function(){return"lib.d.ts"},useCaseSensitiveFileNames:function(){return!1},getCanonicalFileName:function(e){return e},getCurrentDirectory:function(){return""},getNewLine:function(){return _},fileExists:function(e){return e===d},readFile:function(){return""},directoryExists:function(){return!0},getDirectories:function(){return[]}},y=e.createProgram([d],a,h);return r.reportDiagnostics&&(e.addRange(i,y.getSyntacticDiagnostics(f)),e.addRange(i,y.getOptionsDiagnostics())),y.emit(void 0,void 0,void 0,void 0,r.transformers),void 0===m?e.Debug.fail("Output generation failed"):{outputText:m,diagnostics:i,sourceMapText:g}}var r;function n(t,n){r=r||e.filter(e.optionDeclarations,(function(t){return"object"==typeof t.type&&!e.forEachEntry(t.type,(function(e){return"number"!=typeof e}))})),t=e.cloneCompilerOptions(t);for(var i=function(r){if(!e.hasProperty(t,r.name))return"continue";var i=t[r.name];e.isString(i)?t[r.name]=e.parseCustomTypeOption(r,i,n):e.forEachEntry(r.type,(function(e){return e===i}))||n.push(e.createCompilerDiagnosticForInvalidCustomType(r))},a=0,o=r;a<o.length;a++){i(o[a])}return t}e.transpileModule=t,e.transpile=function(r,n,i,a,o){var s=t(r,{compilerOptions:n,fileName:i,reportDiagnostics:!!a,moduleName:o});return e.addRange(a,s.diagnostics),s.outputText},e.fixupCompilerOptions=n}(d||(d={})),function(e){!function(t){!function(e){e[e.FormatDocument=0]="FormatDocument",e[e.FormatSelection=1]="FormatSelection",e[e.FormatOnEnter=2]="FormatOnEnter",e[e.FormatOnSemicolon=3]="FormatOnSemicolon",e[e.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",e[e.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace"}(t.FormattingRequestKind||(t.FormattingRequestKind={}));var r=function(){function t(e,t,r){this.sourceFile=e,this.formattingRequestKind=t,this.options=r}return t.prototype.updateContext=function(t,r,n,i,a){this.currentTokenSpan=e.Debug.checkDefined(t),this.currentTokenParent=e.Debug.checkDefined(r),this.nextTokenSpan=e.Debug.checkDefined(n),this.nextTokenParent=e.Debug.checkDefined(i),this.contextNode=e.Debug.checkDefined(a),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0},t.prototype.ContextNodeAllOnSameLine=function(){return void 0===this.contextNodeAllOnSameLine&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine},t.prototype.NextNodeAllOnSameLine=function(){return void 0===this.nextNodeAllOnSameLine&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine},t.prototype.TokensAreOnSameLine=function(){if(void 0===this.tokensAreOnSameLine){var e=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,t=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=e===t}return this.tokensAreOnSameLine},t.prototype.ContextNodeBlockIsOnOneLine=function(){return void 0===this.contextNodeBlockIsOnOneLine&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine},t.prototype.NextNodeBlockIsOnOneLine=function(){return void 0===this.nextNodeBlockIsOnOneLine&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine},t.prototype.NodeIsOnOneLine=function(e){return this.sourceFile.getLineAndCharacterOfPosition(e.getStart(this.sourceFile)).line===this.sourceFile.getLineAndCharacterOfPosition(e.getEnd()).line},t.prototype.BlockIsOnOneLine=function(t){var r=e.findChildOfKind(t,18,this.sourceFile),n=e.findChildOfKind(t,19,this.sourceFile);return!(!r||!n)&&this.sourceFile.getLineAndCharacterOfPosition(r.getEnd()).line===this.sourceFile.getLineAndCharacterOfPosition(n.getStart(this.sourceFile)).line},t}();t.FormattingContext=r}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){var r,n=e.createScanner(99,!1,0),i=e.createScanner(99,!1,1);!function(e){e[e.Scan=0]="Scan",e[e.RescanGreaterThanToken=1]="RescanGreaterThanToken",e[e.RescanSlashToken=2]="RescanSlashToken",e[e.RescanTemplateToken=3]="RescanTemplateToken",e[e.RescanJsxIdentifier=4]="RescanJsxIdentifier",e[e.RescanJsxText=5]="RescanJsxText",e[e.RescanJsxAttributeValue=6]="RescanJsxAttributeValue"}(r||(r={})),t.getFormattingScanner=function(r,a,o,s,c){var l=1===a?i:n;l.setText(r),l.setTextPos(o);var u,d,p,f,m,g=!0,_=c({advance:function(){m=void 0,l.getStartPos()!==o?g=!!d&&4===e.last(d).kind:l.scan();u=void 0,d=void 0;var t=l.getStartPos();for(;t<s;){var r=l.getToken();if(!e.isTrivia(r))break;l.scan();var n={pos:t,end:l.getStartPos(),kind:r};t=l.getStartPos(),u=e.append(u,n)}p=l.getStartPos()},readTokenInfo:function(r){e.Debug.assert(h());var n=function(e){switch(e.kind){case 33:case 70:case 71:case 49:case 48:return!0}return!1}(r)?1:(a=r,13===a.kind?2:function(e){return 16===e.kind||17===e.kind}(r)?3:function(t){if(t.parent)switch(t.parent.kind){case 283:case 278:case 279:case 277:return e.isKeyword(t.kind)||78===t.kind}return!1}(r)?4:function(t){if(e.isJsxText(t)){var r=e.findAncestor(t.parent,(function(t){return e.isJsxElement(t)}));return!!r&&!e.isParenthesizedExpression(r.parent)}return!1}(r)?5:(i=r,i.parent&&e.isJsxAttribute(i.parent)&&i.parent.initializer===i?6:0));var i;var a;if(m&&n===f)return v(m,r);l.getStartPos()!==p&&(e.Debug.assert(void 0!==m),l.setTextPos(p),l.scan());var o=function(t,r){var n=l.getToken();switch(f=0,r){case 1:if(31===n){f=1;var i=l.reScanGreaterToken();return e.Debug.assert(t.kind===i),i}break;case 2:if(43===(a=n)||67===a){f=2;i=l.reScanSlashToken();return e.Debug.assert(t.kind===i),i}break;case 3:if(19===n)return f=3,l.reScanTemplateToken(!1);break;case 4:return f=4,l.scanJsxIdentifier();case 5:return f=5,l.reScanJsxToken();case 6:return f=6,l.reScanJsxAttributeValue();case 0:break;default:e.Debug.assertNever(r)}var a;return n}(r,n),c=t.createTextRangeWithKind(l.getStartPos(),l.getTextPos(),o);d&&(d=void 0);for(;l.getStartPos()<s&&(o=l.scan(),e.isTrivia(o));){var g=t.createTextRangeWithKind(l.getStartPos(),l.getTextPos(),o);if(d||(d=[]),d.push(g),4===o){l.scan();break}}return v(m={leadingTrivia:u,trailingTrivia:d,token:c},r)},readEOFTokenRange:function(){return e.Debug.assert(y()),t.createTextRangeWithKind(l.getStartPos(),l.getTextPos(),1)},isOnToken:h,isOnEOF:y,getCurrentLeadingTrivia:function(){return u},lastTrailingTriviaWasNewLine:function(){return g},skipToEndOf:function(e){l.setTextPos(e.end),p=l.getStartPos(),f=void 0,m=void 0,g=!1,u=void 0,d=void 0},skipToStartOf:function(e){l.setTextPos(e.pos),p=l.getStartPos(),f=void 0,m=void 0,g=!1,u=void 0,d=void 0}});return m=void 0,l.setText(void 0),_;function h(){var t=m?m.token.kind:l.getToken();return(m?m.token.pos:l.getStartPos())<s&&1!==t&&!e.isTrivia(t)}function y(){return 1===(m?m.token.kind:l.getToken())}function v(t,r){return e.isToken(r)&&t.token.kind!==r.kind&&(t.token.kind=r.kind),t}}}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){t.anyContext=e.emptyArray,function(e){e[e.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",e[e.StopProcessingTokenActions=2]="StopProcessingTokenActions",e[e.InsertSpace=4]="InsertSpace",e[e.InsertNewLine=8]="InsertNewLine",e[e.DeleteSpace=16]="DeleteSpace",e[e.DeleteToken=32]="DeleteToken",e[e.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",e[e.StopAction=3]="StopAction",e[e.ModifySpaceAction=28]="ModifySpaceAction",e[e.ModifyTokenAction=96]="ModifyTokenAction"}(t.RuleAction||(t.RuleAction={})),function(e){e[e.None=0]="None",e[e.CanDeleteNewLines=1]="CanDeleteNewLines"}(t.RuleFlags||(t.RuleFlags={}))}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){function r(e,t,r,n,i,o){return void 0===o&&(o=0),{leftTokenRange:a(t),rightTokenRange:a(r),rule:{debugName:e,context:n,action:i,flags:o}}}function n(e){return{tokens:e,isSpecific:!0}}function a(t){return"number"==typeof t?n([t]):e.isArray(t)?n(t):t}function o(t,r,i){void 0===i&&(i=[]);for(var a=[],o=t;o<=r;o++)e.contains(i,o)||a.push(o);return n(a)}function s(e,t){return function(r){return r.options&&r.options[e]===t}}function c(e){return function(t){return t.options&&t.options.hasOwnProperty(e)&&!!t.options[e]}}function l(e){return function(t){return t.options&&t.options.hasOwnProperty(e)&&!t.options[e]}}function u(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!t.options[e]}}function d(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!t.options[e]||t.TokensAreOnSameLine()}}function p(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!!t.options[e]}}function f(e){return 239===e.contextNode.kind}function m(e){return!f(e)}function g(e){switch(e.contextNode.kind){case 218:return 27!==e.contextNode.operatorToken.kind;case 219:case 185:case 226:case 273:case 268:case 173:case 183:case 184:return!0;case 199:case 257:case 263:case 251:case 161:case 294:case 164:case 163:return 62===e.currentTokenSpan.kind||62===e.nextTokenSpan.kind;case 240:case 160:return 101===e.currentTokenSpan.kind||101===e.nextTokenSpan.kind||62===e.currentTokenSpan.kind||62===e.nextTokenSpan.kind;case 241:return 157===e.currentTokenSpan.kind||157===e.nextTokenSpan.kind}return!1}function _(e){return!g(e)}function h(e){return!y(e)}function y(t){var r=t.contextNode.kind;return 164===r||163===r||161===r||251===r||e.isFunctionLikeKind(r)}function v(e){return 219===e.contextNode.kind||185===e.contextNode.kind}function b(e){return e.TokensAreOnSameLine()||D(e)}function k(e){return 197===e.contextNode.kind||191===e.contextNode.kind||function(e){return S(e)&&(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}(e)}function x(e){return D(e)&&!(e.NextNodeAllOnSameLine()||e.NextNodeBlockIsOnOneLine())}function E(e){return S(e)&&!(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}function S(e){return w(e.contextNode)}function D(e){return w(e.nextTokenParent)}function w(e){if(P(e))return!0;switch(e.kind){case 232:case 261:case 201:case 260:return!0}return!1}function T(e){switch(e.contextNode.kind){case 253:case 166:case 165:case 168:case 169:case 170:case 209:case 167:case 210:case 256:return!0}return!1}function C(e){return!T(e)}function A(e){return 253===e.contextNode.kind||209===e.contextNode.kind}function N(e){return P(e.contextNode)}function P(e){switch(e.kind){case 254:case 255:case 223:case 256:case 258:case 178:case 259:case 270:case 271:case 264:case 267:return!0}return!1}function I(e){switch(e.currentTokenParent.kind){case 254:case 255:case 259:case 258:case 290:case 260:case 246:return!0;case 232:var t=e.currentTokenParent.parent;if(!t||210!==t.kind&&209!==t.kind)return!0}return!1}function F(e){switch(e.contextNode.kind){case 236:case 246:case 239:case 240:case 241:case 238:case 249:case 237:case 245:case 290:return!0;default:return!1}}function O(e){return 201===e.contextNode.kind}function R(e){return function(e){return 204===e.contextNode.kind}(e)||function(e){return 205===e.contextNode.kind}(e)}function M(e){return 27!==e.currentTokenSpan.kind}function L(e){return 23!==e.nextTokenSpan.kind}function j(e){return 21!==e.nextTokenSpan.kind}function B(e){return 210===e.contextNode.kind}function z(e){return 196===e.contextNode.kind}function U(e){return e.TokensAreOnSameLine()&&11!==e.contextNode.kind}function q(e){return 11!==e.contextNode.kind}function J(e){return 276!==e.contextNode.kind&&280!==e.contextNode.kind}function V(e){return 286===e.contextNode.kind||285===e.contextNode.kind}function H(e){return 283===e.nextTokenParent.kind}function K(e){return 283===e.contextNode.kind}function W(e){return 277===e.contextNode.kind}function G(e){return!T(e)&&!D(e)}function $(e){return e.TokensAreOnSameLine()&&!!e.contextNode.decorators&&Y(e.currentTokenParent)&&!Y(e.nextTokenParent)}function Y(t){for(;e.isExpressionNode(t);)t=t.parent;return 162===t.kind}function X(e){return 252===e.currentTokenParent.kind&&e.currentTokenParent.getStart(e.sourceFile)===e.currentTokenSpan.pos}function Q(e){return 2!==e.formattingRequestKind}function Z(e){return 259===e.contextNode.kind}function ee(e){return 178===e.contextNode.kind}function te(e){return 171===e.contextNode.kind}function re(e,t){if(29!==e.kind&&31!==e.kind)return!1;switch(t.kind){case 174:case 207:case 257:case 254:case 223:case 255:case 256:case 253:case 209:case 210:case 166:case 165:case 170:case 171:case 204:case 205:case 225:return!0;default:return!1}}function ne(e){return re(e.currentTokenSpan,e.currentTokenParent)||re(e.nextTokenSpan,e.nextTokenParent)}function ie(e){return 207===e.contextNode.kind}function ae(e){return 114===e.currentTokenSpan.kind&&214===e.currentTokenParent.kind}function oe(e){return 221===e.contextNode.kind&&void 0!==e.contextNode.expression}function se(e){return 227===e.contextNode.kind}function ce(e){return!function(e){switch(e.contextNode.kind){case 236:case 239:case 240:case 241:case 237:case 238:return!0;default:return!1}}(e)}function le(t){var r=t.nextTokenSpan.kind,n=t.nextTokenSpan.pos;if(e.isTrivia(r)){var i=t.nextTokenParent===t.currentTokenParent?e.findNextToken(t.currentTokenParent,e.findAncestor(t.currentTokenParent,(function(e){return!e.parent})),t.sourceFile):t.nextTokenParent.getFirstToken(t.sourceFile);if(!i)return!0;r=i.kind,n=i.getStart(t.sourceFile)}return t.sourceFile.getLineAndCharacterOfPosition(t.currentTokenSpan.pos).line===t.sourceFile.getLineAndCharacterOfPosition(n).line?19===r||1===r:231!==r&&26!==r&&(256===t.contextNode.kind||257===t.contextNode.kind?!e.isPropertySignature(t.currentTokenParent)||!!t.currentTokenParent.type||20!==r:e.isPropertyDeclaration(t.currentTokenParent)?!t.currentTokenParent.initializer:239!==t.currentTokenParent.kind&&233!==t.currentTokenParent.kind&&231!==t.currentTokenParent.kind&&22!==r&&20!==r&&39!==r&&40!==r&&43!==r&&13!==r&&27!==r&&220!==r&&15!==r&&14!==r&&24!==r)}function ue(t){return e.positionIsASICandidate(t.currentTokenSpan.end,t.currentTokenParent,t.sourceFile)}t.getAllRules=function(){for(var a=[],S=0;S<=157;S++)1!==S&&a.push(S);function w(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return{tokens:a.filter((function(t){return!e.some((function(e){return e===t}))})),isSpecific:!1}}var P={tokens:a,isSpecific:!1},Y=n(i(i([],a),[3])),re=n(i(i([],a),[1])),de=o(80,157),pe=o(29,77),fe=[101,102,157,127,138],me=i([78],e.typeKeywords),ge=Y,_e=n([78,3,83,84,93,100]),he=n([21,3,90,111,96,91]),ye=[r("IgnoreBeforeComment",P,[2,3],t.anyContext,1),r("IgnoreAfterLineComment",2,P,t.anyContext,1),r("NotSpaceBeforeColon",P,58,[U,_,h],16),r("SpaceAfterColon",58,P,[U,_],4),r("NoSpaceBeforeQuestionMark",P,57,[U,_,h],16),r("SpaceAfterQuestionMarkInConditionalOperator",57,P,[U,v],4),r("NoSpaceAfterQuestionMark",57,P,[U],16),r("NoSpaceBeforeDot",P,[24,28],[U],16),r("NoSpaceAfterDot",[24,28],P,[U],16),r("NoSpaceBetweenImportParenInImportType",100,20,[U,z],16),r("NoSpaceAfterUnaryPrefixOperator",[45,46,54,53],[8,9,78,20,22,18,108,103],[U,_],16),r("NoSpaceAfterUnaryPreincrementOperator",45,[78,20,108,103],[U],16),r("NoSpaceAfterUnaryPredecrementOperator",46,[78,20,108,103],[U],16),r("NoSpaceBeforeUnaryPostincrementOperator",[78,21,23,103],45,[U,ce],16),r("NoSpaceBeforeUnaryPostdecrementOperator",[78,21,23,103],46,[U,ce],16),r("SpaceAfterPostincrementWhenFollowedByAdd",45,39,[U,g],4),r("SpaceAfterAddWhenFollowedByUnaryPlus",39,39,[U,g],4),r("SpaceAfterAddWhenFollowedByPreincrement",39,45,[U,g],4),r("SpaceAfterPostdecrementWhenFollowedBySubtract",46,40,[U,g],4),r("SpaceAfterSubtractWhenFollowedByUnaryMinus",40,40,[U,g],4),r("SpaceAfterSubtractWhenFollowedByPredecrement",40,46,[U,g],4),r("NoSpaceAfterCloseBrace",19,[27,26],[U],16),r("NewLineBeforeCloseBraceInBlockContext",Y,19,[E],8),r("SpaceAfterCloseBrace",19,w(21),[U,I],4),r("SpaceBetweenCloseBraceAndElse",19,91,[U],4),r("SpaceBetweenCloseBraceAndWhile",19,115,[U],4),r("NoSpaceBetweenEmptyBraceBrackets",18,19,[U,O],16),r("SpaceAfterConditionalClosingParen",21,22,[F],4),r("NoSpaceBetweenFunctionKeywordAndStar",98,41,[A],16),r("SpaceAfterStarInGeneratorDeclaration",41,78,[A],4),r("SpaceAfterFunctionInFuncDecl",98,P,[T],4),r("NewLineAfterOpenBraceInBlockContext",18,P,[E],8),r("SpaceAfterGetSetInMember",[135,147],78,[T],4),r("NoSpaceBetweenYieldKeywordAndStar",125,41,[U,oe],16),r("SpaceBetweenYieldOrYieldStarAndOperand",[125,41],P,[U,oe],4),r("NoSpaceBetweenReturnAndSemicolon",105,26,[U],16),r("SpaceAfterCertainKeywords",[113,109,103,89,105,112,131],P,[U],4),r("SpaceAfterLetConstInVariableDeclaration",[119,85],P,[U,X],4),r("NoSpaceBeforeOpenParenInFuncCall",P,20,[U,R,M],16),r("SpaceBeforeBinaryKeywordOperator",P,fe,[U,g],4),r("SpaceAfterBinaryKeywordOperator",fe,P,[U,g],4),r("SpaceAfterVoidOperator",114,P,[U,ae],4),r("SpaceBetweenAsyncAndOpenParen",130,20,[B,U],4),r("SpaceBetweenAsyncAndFunctionKeyword",130,[98,78],[U],4),r("NoSpaceBetweenTagAndTemplateString",[78,21],[14,15],[U],16),r("SpaceBeforeJsxAttribute",P,78,[H,U],4),r("SpaceBeforeSlashInJsxOpeningElement",P,43,[W,U],4),r("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",43,31,[W,U],16),r("NoSpaceBeforeEqualInJsxAttribute",P,62,[K,U],16),r("NoSpaceAfterEqualInJsxAttribute",62,P,[K,U],16),r("NoSpaceAfterModuleImport",[140,144],20,[U],16),r("SpaceAfterCertainTypeScriptKeywords",[126,83,84,134,88,92,93,94,135,117,100,118,140,141,121,123,122,143,147,124,150,154,139,136],P,[U],4),r("SpaceBeforeCertainTypeScriptKeywords",P,[94,117,154],[U],4),r("SpaceAfterModuleName",10,18,[Z],4),r("SpaceBeforeArrow",P,38,[U],4),r("SpaceAfterArrow",38,P,[U],4),r("NoSpaceAfterEllipsis",25,78,[U],16),r("NoSpaceAfterOptionalParameters",57,[21,27],[U,_],16),r("NoSpaceBetweenEmptyInterfaceBraceBrackets",18,19,[U,ee],16),r("NoSpaceBeforeOpenAngularBracket",me,29,[U,ne],16),r("NoSpaceBetweenCloseParenAndAngularBracket",21,29,[U,ne],16),r("NoSpaceAfterOpenAngularBracket",29,P,[U,ne],16),r("NoSpaceBeforeCloseAngularBracket",P,31,[U,ne],16),r("NoSpaceAfterCloseAngularBracket",31,[20,22,31,27],[U,ne,C],16),r("SpaceBeforeAt",[21,78],59,[U],4),r("NoSpaceAfterAt",59,P,[U],16),r("SpaceAfterDecorator",P,[126,78,93,88,83,84,124,123,121,122,135,147,22,41],[$],4),r("NoSpaceBeforeNonNullAssertionOperator",P,53,[U,se],16),r("NoSpaceAfterNewKeywordOnConstructorSignature",103,20,[U,te],16),r("SpaceLessThanAndNonJSXTypeAnnotation",29,29,[U],4)],ve=[r("SpaceAfterConstructor",133,20,[c("insertSpaceAfterConstructor"),U],4),r("NoSpaceAfterConstructor",133,20,[u("insertSpaceAfterConstructor"),U],16),r("SpaceAfterComma",27,P,[c("insertSpaceAfterCommaDelimiter"),U,J,L,j],4),r("NoSpaceAfterComma",27,P,[u("insertSpaceAfterCommaDelimiter"),U,J],16),r("SpaceAfterAnonymousFunctionKeyword",[98,41],20,[c("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),T],4),r("NoSpaceAfterAnonymousFunctionKeyword",[98,41],20,[u("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),T],16),r("SpaceAfterKeywordInControl",de,20,[c("insertSpaceAfterKeywordsInControlFlowStatements"),F],4),r("NoSpaceAfterKeywordInControl",de,20,[u("insertSpaceAfterKeywordsInControlFlowStatements"),F],16),r("SpaceAfterOpenParen",20,P,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],4),r("SpaceBeforeCloseParen",P,21,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],4),r("SpaceBetweenOpenParens",20,20,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],4),r("NoSpaceBetweenParens",20,21,[U],16),r("NoSpaceAfterOpenParen",20,P,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],16),r("NoSpaceBeforeCloseParen",P,21,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],16),r("SpaceAfterOpenBracket",22,P,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],4),r("SpaceBeforeCloseBracket",P,23,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],4),r("NoSpaceBetweenBrackets",22,23,[U],16),r("NoSpaceAfterOpenBracket",22,P,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],16),r("NoSpaceBeforeCloseBracket",P,23,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],16),r("SpaceAfterOpenBrace",18,P,[p("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),k],4),r("SpaceBeforeCloseBrace",P,19,[p("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),k],4),r("NoSpaceBetweenEmptyBraceBrackets",18,19,[U,O],16),r("NoSpaceAfterOpenBrace",18,P,[l("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),U],16),r("NoSpaceBeforeCloseBrace",P,19,[l("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),U],16),r("SpaceBetweenEmptyBraceBrackets",18,19,[c("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),r("NoSpaceBetweenEmptyBraceBrackets",18,19,[l("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),U],16),r("SpaceAfterTemplateHeadAndMiddle",[15,16],P,[c("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),q],4,1),r("SpaceBeforeTemplateMiddleAndTail",P,[16,17],[c("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),U],4),r("NoSpaceAfterTemplateHeadAndMiddle",[15,16],P,[u("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),q],16,1),r("NoSpaceBeforeTemplateMiddleAndTail",P,[16,17],[u("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),U],16),r("SpaceAfterOpenBraceInJsxExpression",18,P,[c("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],4),r("SpaceBeforeCloseBraceInJsxExpression",P,19,[c("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],4),r("NoSpaceAfterOpenBraceInJsxExpression",18,P,[u("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],16),r("NoSpaceBeforeCloseBraceInJsxExpression",P,19,[u("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],16),r("SpaceAfterSemicolonInFor",26,P,[c("insertSpaceAfterSemicolonInForStatements"),U,f],4),r("NoSpaceAfterSemicolonInFor",26,P,[u("insertSpaceAfterSemicolonInForStatements"),U,f],16),r("SpaceBeforeBinaryOperator",P,pe,[c("insertSpaceBeforeAndAfterBinaryOperators"),U,g],4),r("SpaceAfterBinaryOperator",pe,P,[c("insertSpaceBeforeAndAfterBinaryOperators"),U,g],4),r("NoSpaceBeforeBinaryOperator",P,pe,[u("insertSpaceBeforeAndAfterBinaryOperators"),U,g],16),r("NoSpaceAfterBinaryOperator",pe,P,[u("insertSpaceBeforeAndAfterBinaryOperators"),U,g],16),r("SpaceBeforeOpenParenInFuncDecl",P,20,[c("insertSpaceBeforeFunctionParenthesis"),U,T],4),r("NoSpaceBeforeOpenParenInFuncDecl",P,20,[u("insertSpaceBeforeFunctionParenthesis"),U,T],16),r("NewLineBeforeOpenBraceInControl",he,18,[c("placeOpenBraceOnNewLineForControlBlocks"),F,x],8,1),r("NewLineBeforeOpenBraceInFunction",ge,18,[c("placeOpenBraceOnNewLineForFunctions"),T,x],8,1),r("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",_e,18,[c("placeOpenBraceOnNewLineForFunctions"),N,x],8,1),r("SpaceAfterTypeAssertion",31,P,[c("insertSpaceAfterTypeAssertion"),U,ie],4),r("NoSpaceAfterTypeAssertion",31,P,[u("insertSpaceAfterTypeAssertion"),U,ie],16),r("SpaceBeforeTypeAnnotation",P,[57,58],[c("insertSpaceBeforeTypeAnnotation"),U,y],4),r("NoSpaceBeforeTypeAnnotation",P,[57,58],[u("insertSpaceBeforeTypeAnnotation"),U,y],16),r("NoOptionalSemicolon",26,re,[s("semicolons",e.SemicolonPreference.Remove),le],32),r("OptionalSemicolon",P,re,[s("semicolons",e.SemicolonPreference.Insert),ue],64)],be=[r("NoSpaceBeforeSemicolon",P,26,[U],16),r("SpaceBeforeOpenBraceInControl",he,18,[d("placeOpenBraceOnNewLineForControlBlocks"),F,Q,b],4,1),r("SpaceBeforeOpenBraceInFunction",ge,18,[d("placeOpenBraceOnNewLineForFunctions"),T,D,Q,b],4,1),r("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",_e,18,[d("placeOpenBraceOnNewLineForFunctions"),N,Q,b],4,1),r("NoSpaceBeforeComma",P,27,[U],16),r("NoSpaceBeforeOpenBracket",w(130,81),22,[U],16),r("NoSpaceAfterCloseBracket",23,P,[U,G],16),r("SpaceAfterSemicolon",26,P,[U],4),r("SpaceBetweenForAndAwaitKeyword",97,131,[U],4),r("SpaceBetweenStatements",[21,90,91,81],P,[U,J,m],4),r("SpaceAfterTryCatchFinally",[111,82,96],18,[U],4)];return i(i(i([],ye),ve),be)}}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){var r;function n(){var n,o;return void 0===r&&(n=t.getAllRules(),o=function(e){for(var t=new Array(l*l),r=new Array(t.length),n=0,i=e;n<i.length;n++)for(var o=i[n],s=o.leftTokenRange.isSpecific&&o.rightTokenRange.isSpecific,c=0,d=o.leftTokenRange.tokens;c<d.length;c++)for(var p=d[c],f=0,m=o.rightTokenRange.tokens;f<m.length;f++){var g=a(p,m[f]),_=t[g];void 0===_&&(_=t[g]=[]),u(_,o.rule,s,r,g)}return t}(n),r=function(t){var r=o[a(t.currentTokenSpan.kind,t.nextTokenSpan.kind)];if(r){for(var n=[],s=0,c=0,l=r;c<l.length;c++){var u=l[c],d=~i(s);u.action&d&&e.every(u.context,(function(e){return e(t)}))&&(n.push(u),s|=u.action)}if(n.length)return n}}),r}function i(e){var t=0;return 1&e&&(t|=28),2&e&&(t|=96),28&e&&(t|=28),96&e&&(t|=96),t}function a(t,r){return e.Debug.assert(t<=157&&r<=157,"Must compute formatting context from tokens"),t*l+r}t.getFormatContext=function(e,t){return{options:e,getRules:n(),host:t}};var o,s=5,c=31,l=158;function u(r,n,i,a,l){var u,d,p,f=3&n.action?i?o.StopRulesSpecific:o.StopRulesAny:n.context!==t.anyContext?i?o.ContextRulesSpecific:o.ContextRulesAny:i?o.NoContextRulesSpecific:o.NoContextRulesAny,m=a[l]||0;r.splice(function(e,t){for(var r=0,n=0;n<=t;n+=s)r+=e&c,e>>=s;return r}(m,f),0,n),a[l]=(p=1+((u=m)>>(d=f)&c),e.Debug.assert((p&c)===p,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),u&~(c<<d)|p<<d)}!function(e){e[e.StopRulesSpecific=0]="StopRulesSpecific",e[e.StopRulesAny=1*s]="StopRulesAny",e[e.ContextRulesSpecific=2*s]="ContextRulesSpecific",e[e.ContextRulesAny=3*s]="ContextRulesAny",e[e.NoContextRulesSpecific=4*s]="NoContextRulesSpecific",e[e.NoContextRulesAny=5*s]="NoContextRulesAny"}(o||(o={}))}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){var r,n,i,a,o;function s(t,r,n){var i=e.findPrecedingToken(t,n);return i&&i.kind===r&&t===i.getEnd()?i:void 0}function c(e){for(var t=e;t&&t.parent&&t.parent.end===e.end&&!l(t.parent,t);)t=t.parent;return t}function l(t,r){switch(t.kind){case 254:case 255:case 256:return e.rangeContainsRange(t.members,r);case 259:var n=t.body;return!!n&&260===n.kind&&e.rangeContainsRange(n.statements,r);case 300:case 232:case 260:return e.rangeContainsRange(t.statements,r);case 290:return e.rangeContainsRange(t.block.statements,r)}return!1}function u(t,r,n,i){return t?d({pos:e.getLineStartPositionForPosition(t.getStart(r),r),end:t.end},r,n,i):[]}function d(r,n,i,a){var o=function(t,r){return function n(i){var a=e.forEachChild(i,(function(n){return e.startEndContainsRange(n.getStart(r),n.end,t)&&n}));if(a){var o=n(a);if(o)return o}return i}(r)}(r,n);return t.getFormattingScanner(n.text,n.languageVariant,function(t,r,n){var i=t.getStart(n);if(i===r.pos&&t.end===r.end)return i;var a=e.findPrecedingToken(r.pos,n);return a?a.end>=r.pos?t.pos:a.end:t.pos}(o,r,n),r.end,(function(s){return p(r,o,t.SmartIndenter.getIndentationForNode(o,r,n,i.options),function(e,r,n){for(var i,a=-1;e;){var o=n.getLineAndCharacterOfPosition(e.getStart(n)).line;if(-1!==a&&o!==a)break;if(t.SmartIndenter.shouldIndentChildNode(r,e,i,n))return r.indentSize;a=o,i=e,e=e.parent}return 0}(o,i.options,n),s,i,a,function(t,r){if(!t.length)return a;var n=t.filter((function(t){return e.rangeOverlapsWithStartEnd(r,t.start,t.start+t.length)})).sort((function(e,t){return e.start-t.start}));if(!n.length)return a;var i=0;return function(t){for(;;){if(i>=n.length)return!1;var r=n[i];if(t.end<=r.start)return!1;if(e.startEndOverlapsWithStartEnd(t.pos,t.end,r.start,r.start+r.length))return!0;i++}};function a(){return!1}}(n.parseDiagnostics,r),n)}))}function p(r,n,i,a,o,s,c,l,u){var d,p,m,g,_=s.options,h=s.getRules,y=s.host,v=new t.FormattingContext(u,c,_),b=-1,k=[];if(o.advance(),o.isOnToken()){var x=u.getLineAndCharacterOfPosition(n.getStart(u)).line,E=x;n.decorators&&(E=u.getLineAndCharacterOfPosition(e.getNonDecoratorTokenPosOfNode(n,u)).line),function n(i,a,s,c,f,h){if(!e.rangeOverlapsWithStartEnd(r,i.getStart(u),i.getEnd()))return;var y=w(i,s,f,h),v=a;e.forEachChild(i,(function(e){E(e,-1,i,y,s,c,!1)}),(function(e){S(e,i,s,y)}));for(;o.isOnToken();){var k=o.readTokenInfo(i);if(k.token.end>i.end)break;11!==i.kind?D(k,i,y,i):o.advance()}if(!i.parent&&o.isOnEOF()){var x=o.readEOFTokenRange();x.end<=i.end&&d&&N(x,u.getLineAndCharacterOfPosition(x.pos).line,i,d,m,p,a,y)}function E(a,s,c,l,d,p,f,m){var h=a.getStart(u),y=u.getLineAndCharacterOfPosition(h).line,k=y;a.decorators&&(k=u.getLineAndCharacterOfPosition(e.getNonDecoratorTokenPosOfNode(a,u)).line);var x=-1;if(f&&e.rangeContainsRange(r,c)&&(x=function(r,n,i,a,o){if(e.rangeOverlapsWithStartEnd(a,r,n)||e.rangeContainsStartEnd(a,r,n)){if(-1!==o)return o}else{var s=u.getLineAndCharacterOfPosition(r).line,c=e.getLineStartPositionForPosition(r,u),l=t.SmartIndenter.findFirstNonWhitespaceColumn(c,r,u,_);if(s!==i||r===l){var d=t.SmartIndenter.getBaseIndentation(_);return d>l?d:l}}return-1}(h,a.end,d,r,s),-1!==x&&(s=x)),!e.rangeOverlapsWithStartEnd(r,a.pos,a.end))return a.end<r.pos&&o.skipToEndOf(a),s;if(0===a.getFullWidth())return s;for(;o.isOnToken();){if((E=o.readTokenInfo(i)).token.end>h){E.token.pos>h&&o.skipToStartOf(a);break}D(E,i,l,i)}if(!o.isOnToken())return s;if(e.isToken(a)){var E=o.readTokenInfo(a);if(11!==a.kind)return e.Debug.assert(E.token.end===a.end,"Token end is child end"),D(E,i,l,a),s}var S=162===a.kind?y:p,w=function(e,r,n,i,a,o){var s=t.SmartIndenter.shouldIndentChildNode(_,e)?_.indentSize:0;return o===r?{indentation:r===g?b:a.getIndentation(),delta:Math.min(_.indentSize,a.getDelta(e)+s)}:-1===n?20===e.kind&&r===g?{indentation:b,delta:a.getDelta(e)}:t.SmartIndenter.childStartsOnTheSameLineWithElseInIfStatement(i,e,r,u)||t.SmartIndenter.childIsUnindentedBranchOfConditionalExpression(i,e,r,u)||t.SmartIndenter.argumentStartsOnSameLineAsPreviousArgument(i,e,r,u)?{indentation:a.getIndentation(),delta:s}:{indentation:a.getIndentation()+a.getDelta(e),delta:s}:{indentation:n,delta:s}}(a,y,x,i,l,S);if(n(a,v,y,k,w.indentation,w.delta),11===a.kind){var T={pos:a.getStart(),end:a.getEnd()};if(T.pos!==T.end){var C=c.getChildren(u),A=C[e.findIndex(C,(function(e){return e.pos===a.pos}))-1];if(A&&u.getLineAndCharacterOfPosition(T.end).line!==u.getLineAndCharacterOfPosition(A.end).line){var N=u.getLineAndCharacterOfPosition(T.pos).line===u.getLineAndCharacterOfPosition(A.end).line;I(T,w.indentation,N,!1,!0)}}}return v=i,m&&200===c.kind&&-1===s&&(s=w.indentation),s}function S(r,n,a,s){e.Debug.assert(e.isNodeArray(r));var c=function(e,t){switch(e.kind){case 167:case 253:case 209:case 166:case 165:case 210:if(e.typeParameters===t)return 29;if(e.parameters===t)return 20;break;case 204:case 205:if(e.typeArguments===t)return 29;if(e.arguments===t)return 20;break;case 174:if(e.typeArguments===t)return 29;break;case 178:return 18}return 0}(n,r),l=s,d=a;if(0!==c)for(;o.isOnToken();){if((y=o.readTokenInfo(n)).token.end>r.pos)break;if(y.token.kind===c){d=u.getLineAndCharacterOfPosition(y.token.pos).line,D(y,n,s,n);var p=void 0;if(-1!==b)p=b;else{var f=e.getLineStartPositionForPosition(y.token.pos,u);p=t.SmartIndenter.findFirstNonWhitespaceColumn(f,y.token.pos,u,_)}l=w(n,a,p,_.indentSize)}else D(y,n,s,n)}for(var m=-1,g=0;g<r.length;g++){m=E(r[g],m,i,l,d,d,!0,0===g)}var h=function(e){switch(e){case 20:return 21;case 29:return 31;case 18:return 19}return 0}(c);if(0!==h&&o.isOnToken()){var y;if(27===(y=o.readTokenInfo(n)).token.kind&&e.isCallLikeExpression(n))d!==u.getLineAndCharacterOfPosition(y.token.pos).line&&(o.advance(),y=o.isOnToken()?o.readTokenInfo(n):void 0);y&&y.token.kind===h&&e.rangeContainsRange(n,y.token)&&D(y,n,l,n,!0)}}function D(t,n,i,a,s){e.Debug.assert(e.rangeContainsRange(n,t.token));var c=o.lastTrailingTriviaWasNewLine(),p=!1;t.leadingTrivia&&C(t.leadingTrivia,n,v,i);var f=0,m=e.rangeContainsRange(r,t.token),_=u.getLineAndCharacterOfPosition(t.token.pos);if(m){var h=l(t.token),y=d;if(f=A(t.token,_,n,v,i),!h)if(0===f){var k=y&&u.getLineAndCharacterOfPosition(y.end).line;p=c&&_.line!==k}else p=1===f}if(t.trailingTrivia&&C(t.trailingTrivia,n,v,i),p){var x=m&&!l(t.token)?i.getIndentationForToken(_.line,t.token.kind,a,!!s):-1,E=!0;if(t.leadingTrivia){var S=i.getIndentationForComment(t.token.kind,x,a);E=T(t.leadingTrivia,S,E,(function(e){return P(e.pos,S,!1)}))}-1!==x&&E&&(P(t.token.pos,x,1===f),g=_.line,b=x)}o.advance(),v=n}}(n,n,x,E,i,a)}if(!o.isOnToken()){var S=t.SmartIndenter.nodeWillIndentChild(_,n,void 0,u,!1)?i+_.indentSize:i,D=o.getCurrentLeadingTrivia();D&&T(D,S,!1,(function(e){return A(e,u.getLineAndCharacterOfPosition(e.pos),n,n,void 0)}))}return!1!==_.trimTrailingWhitespace&&function(){var e=d?d.end:r.pos,t=u.getLineAndCharacterOfPosition(e).line,n=u.getLineAndCharacterOfPosition(r.end).line;F(t,n+1,d)}(),k;function w(r,n,i,a){return{getIndentationForComment:function(e,t,r){switch(e){case 19:case 23:case 21:return i+o(r)}return-1!==t?t:i},getIndentationForToken:function(t,a,s,c){return!c&&function(t,i,a){switch(i){case 18:case 19:case 21:case 91:case 115:case 59:return!1;case 43:case 31:switch(a.kind){case 278:case 279:case 277:case 225:return!1}break;case 22:case 23:if(191!==a.kind)return!1}return n!==t&&!(r.decorators&&i===function(t){if(t.modifiers&&t.modifiers.length)return t.modifiers[0].kind;switch(t.kind){case 254:return 83;case 255:return 84;case 256:return 118;case 253:return 98;case 258:return 258;case 168:return 135;case 169:return 147;case 166:if(t.asteriskToken)return 41;case 164:case 161:var r=e.getNameOfDeclaration(t);if(r)return r.kind}}(r))}(t,a,s)?i+o(s):i},getIndentation:function(){return i},getDelta:o,recomputeIndentation:function(e,n){t.SmartIndenter.shouldIndentChildNode(_,n,r,u)&&(i+=e?_.indentSize:-_.indentSize,a=t.SmartIndenter.shouldIndentChildNode(_,r)?_.indentSize:0)}};function o(e){return t.SmartIndenter.nodeWillIndentChild(_,r,e,u,!0)?a:0}}function T(t,n,i,a){for(var o=0,s=t;o<s.length;o++){var c=s[o],l=e.rangeContainsRange(r,c);switch(c.kind){case 3:l&&I(c,n,!i),i=!1;break;case 2:i&&l&&a(c),i=!1;break;case 4:i=!0}}return i}function C(t,n,i,a){for(var o=0,s=t;o<s.length;o++){var c=s[o];if(e.isComment(c.kind)&&e.rangeContainsRange(r,c))A(c,u.getLineAndCharacterOfPosition(c.pos),n,i,a)}}function A(e,t,n,i,a){var o=0;l(e)||(d?o=N(e,t.line,n,d,m,p,i,a):F(u.getLineAndCharacterOfPosition(r.pos).line,t.line));return d=e,p=n,m=t.line,o}function N(t,r,n,i,a,o,s,c){v.updateContext(i,o,t,n,s);var l=h(v),d=!1!==v.options.trimTrailingWhitespace,p=0;return l?e.forEachRight(l,(function(o){switch(p=function(t,r,n,i,a){var o=a!==n;switch(t.action){case 1:return 0;case 16:if(r.end!==i.pos)return R(r.end,i.pos-r.end),o?2:0;break;case 32:R(r.pos,r.end-r.pos);break;case 8:if(1!==t.flags&&n!==a)return 0;if(1!==a-n)return M(r.end,i.pos-r.end,e.getNewLineOrDefaultFromHost(y,_)),o?0:1;break;case 4:if(1!==t.flags&&n!==a)return 0;if(1!==i.pos-r.end||32!==u.text.charCodeAt(r.end))return M(r.end,i.pos-r.end," "),o?2:0;break;case 64:s=r.end,(c=";")&&k.push(e.createTextChangeFromStartLength(s,0,c))}var s,c;return 0}(o,i,a,t,r),p){case 2:n.getStart(u)===t.pos&&c.recomputeIndentation(!1,s);break;case 1:n.getStart(u)===t.pos&&c.recomputeIndentation(!0,s);break;default:e.Debug.assert(0===p)}d=d&&!(16&o.action)&&1!==o.flags})):d=d&&1!==t.kind,r!==a&&d&&F(a,r,i),p}function P(t,r,n){var i=f(r,_);if(n)M(t,0,i);else{var a=u.getLineAndCharacterOfPosition(t),o=e.getStartPositionOfLine(a.line,u);(r!==function(e,t){for(var r=0,n=0;n<t;n++)9===u.text.charCodeAt(e+n)?r+=_.tabSize-r%_.tabSize:r++;return r}(o,a.character)||function(e,t){return e!==u.text.substr(t,e.length)}(i,o))&&M(o,a.character,i)}}function I(r,n,i,a,o){void 0===a&&(a=!0);var s=u.getLineAndCharacterOfPosition(r.pos).line,c=u.getLineAndCharacterOfPosition(r.end).line;if(s!==c){for(var l=[],d=r.pos,p=s;p<c;p++){var m=e.getEndLinePosition(p,u);l.push({pos:d,end:m}),d=e.getStartPositionOfLine(p+1,u)}if(a&&l.push({pos:d,end:r.end}),0!==l.length){var g=e.getStartPositionOfLine(s,u),h=t.SmartIndenter.findFirstNonWhitespaceCharacterAndColumn(g,l[0].pos,u,_),y=0;i&&(y=1,s++);for(var v=n-h.column,b=y;b<l.length;b++,s++){var k=e.getStartPositionOfLine(s,u),x=0===b?h:t.SmartIndenter.findFirstNonWhitespaceCharacterAndColumn(l[b].pos,l[b].end,u,_);if(o){if(e.isLineBreak(u.text.charCodeAt(e.getStartPositionOfLine(s,u))))continue;v=n-x.column}var E=x.column+v;if(E>0){var S=f(E,_);M(k,x.character,S)}else R(k,x.character)}}}else i||P(r.pos,n,!1)}function F(t,r,n){for(var i=t;i<r;i++){var a=e.getStartPositionOfLine(i,u),o=e.getEndLinePosition(i,u);if(!(n&&(e.isComment(n.kind)||e.isStringOrRegularExpressionOrTemplateLiteral(n.kind))&&n.pos<=o&&n.end>o)){var s=O(a,o);-1!==s&&(e.Debug.assert(s===a||!e.isWhiteSpaceSingleLine(u.text.charCodeAt(s-1))),R(s,o+1-s))}}}function O(t,r){for(var n=r;n>=t&&e.isWhiteSpaceSingleLine(u.text.charCodeAt(n));)n--;return n!==r?n+1:-1}function R(t,r){r&&k.push(e.createTextChangeFromStartLength(t,r,""))}function M(t,r,n){(r||n)&&k.push(e.createTextChangeFromStartLength(t,r,n))}}function f(t,r){if((!i||i.tabSize!==r.tabSize||i.indentSize!==r.indentSize)&&(i={tabSize:r.tabSize,indentSize:r.indentSize},a=o=void 0),r.convertTabsToSpaces){var n=void 0,s=Math.floor(t/r.indentSize),c=t%r.indentSize;return o||(o=[]),void 0===o[s]?(n=e.repeatString(" ",r.indentSize*s),o[s]=n):n=o[s],c?n+e.repeatString(" ",c):n}var l=Math.floor(t/r.tabSize),u=t-l*r.tabSize,d=void 0;return a||(a=[]),void 0===a[l]?a[l]=d=e.repeatString("\t",l):d=a[l],u?d+e.repeatString(" ",u):d}t.createTextRangeWithKind=function(t,r,n){var i={pos:t,end:r,kind:n};return e.Debug.isDebugging&&Object.defineProperty(i,"__debugKind",{get:function(){return e.Debug.formatSyntaxKind(n)}}),i},function(e){e[e.Unknown=-1]="Unknown"}(r||(r={})),t.formatOnEnter=function(t,r,n){var i=r.getLineAndCharacterOfPosition(t).line;if(0===i)return[];for(var a=e.getEndLinePosition(i,r);e.isWhiteSpaceSingleLine(r.text.charCodeAt(a));)a--;return e.isLineBreak(r.text.charCodeAt(a))&&a--,d({pos:e.getStartPositionOfLine(i-1,r),end:a+1},r,n,2)},t.formatOnSemicolon=function(e,t,r){return u(c(s(e,26,t)),t,r,3)},t.formatOnOpeningCurly=function(t,r,n){var i=s(t,18,r);if(!i)return[];var a=c(i.parent);return d({pos:e.getLineStartPositionForPosition(a.getStart(r),r),end:t},r,n,4)},t.formatOnClosingCurly=function(e,t,r){return u(c(s(e,19,t)),t,r,5)},t.formatDocument=function(e,t){return d({pos:0,end:e.text.length},e,t,0)},t.formatSelection=function(t,r,n,i){return d({pos:e.getLineStartPositionForPosition(t,n),end:r},n,i,1)},t.formatNodeGivenIndentation=function(e,r,n,i,a,o){var s={pos:0,end:r.text.length};return t.getFormattingScanner(r.text,n,s.pos,s.end,(function(t){return p(s,e,i,a,t,o,1,(function(e){return!1}),r)}))},function(e){e[e.None=0]="None",e[e.LineAdded=1]="LineAdded",e[e.LineRemoved=2]="LineRemoved"}(n||(n={})),t.getRangeOfEnclosingComment=function(t,r,n,i){void 0===i&&(i=e.getTokenAtPosition(t,r));var a=e.findAncestor(i,e.isJSDoc);if(a&&(i=a.parent),!(i.getStart(t)<=r&&r<i.getEnd())){var o=(n=null===n?void 0:void 0===n?e.findPrecedingToken(r,t):n)&&e.getTrailingCommentRanges(t.text,n.end),s=e.getLeadingCommentRangesOfNode(i,t),c=e.concatenate(o,s);return c&&e.find(c,(function(n){return e.rangeContainsPositionExclusive(n,r)||r===n.end&&(2===n.kind||r===t.getFullWidth())}))}},t.getIndentationString=f}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){!function(r){var n,i;function a(e){return e.baseIndentSize||0}function o(e,t,r,n,i,o,l){for(var m,g=e.parent;g;){var h=!0;if(r){var y=e.getStart(i);h=y<r.pos||y>r.end}var v=s(g,e,i),b=v.line===t.line||p(g,e,t.line,i);if(h){var k=null===(m=f(e,i))||void 0===m?void 0:m[0],E=_(e,i,l,!!k&&u(k,i).line>v.line);if(-1!==E)return E+n;if(-1!==(E=c(e,g,t,b,i,l)))return E+n}x(l,g,e,i,o)&&!b&&(n+=l.indentSize);var S=d(g,e,t.line,i);g=(e=g).parent,t=S?i.getLineAndCharacterOfPosition(e.getStart(i)):v}return n+a(l)}function s(e,t,r){var n=f(t,r),i=n?n.pos:e.getStart(r);return r.getLineAndCharacterOfPosition(i)}function c(t,r,n,i,a,o){return(e.isDeclaration(t)||e.isStatementButNotDeclaration(t))&&(300===r.kind||!i)?y(n,a,o):-1}function l(t,r,n,i){var a=e.findNextToken(t,r,i);return a?18===a.kind?1:19===a.kind&&n===u(a,i).line?2:0:0}function u(e,t){return t.getLineAndCharacterOfPosition(e.getStart(t))}function d(t,r,n,i){if(!e.isCallExpression(t)||!e.contains(t.arguments,r))return!1;var a=t.expression.getEnd();return e.getLineAndCharacterOfPosition(i,a).line===n}function p(t,r,n,i){if(236===t.kind&&t.elseStatement===r){var a=e.findChildOfKind(t,91,i);return e.Debug.assert(void 0!==a),u(a,i).line===n}return!1}function f(e,t){return e.parent&&m(e.getStart(t),e.getEnd(),e.parent,t)}function m(t,r,n,i){switch(n.kind){case 174:return a(n.typeArguments);case 201:return a(n.properties);case 200:case 267:case 271:case 197:case 198:return a(n.elements);case 178:return a(n.members);case 253:case 209:case 210:case 166:case 165:case 170:case 167:case 176:case 171:return a(n.typeParameters)||a(n.parameters);case 254:case 223:case 255:case 256:case 257:case 333:return a(n.typeParameters);case 205:case 204:return a(n.typeArguments)||a(n.arguments);case 252:return a(n.declarations)}function a(a){return a&&e.rangeContainsStartEnd(function(e,t,r){for(var n=e.getChildren(r),i=1;i<n.length-1;i++)if(n[i].pos===t.pos&&n[i].end===t.end)return{pos:n[i-1].end,end:n[i+1].getStart(r)};return t}(n,a,i),t,r)?a:void 0}}function g(e,t,r){return e?y(t.getLineAndCharacterOfPosition(e.pos),t,r):-1}function _(e,t,r,n){if(e.parent&&252===e.parent.kind)return-1;var i=f(e,t);if(i){var a=i.indexOf(e);if(-1!==a){var o=h(i,a,t,r);if(-1!==o)return o}return g(i,t,r)+(n?r.indentSize:0)}return-1}function h(t,r,n,i){e.Debug.assert(r>=0&&r<t.length);for(var a=u(t[r],n),o=r-1;o>=0;o--)if(27!==t[o].kind){if(n.getLineAndCharacterOfPosition(t[o].end).line!==a.line)return y(a,n,i);a=u(t[o],n)}return-1}function y(e,t,r){var n=t.getPositionOfLineAndCharacter(e.line,0);return b(n,n+e.character,t,r)}function v(t,r,n,i){for(var a=0,o=0,s=t;s<r;s++){var c=n.text.charCodeAt(s);if(!e.isWhiteSpaceSingleLine(c))break;9===c?o+=i.tabSize+o%i.tabSize:o++,a++}return{column:o,character:a}}function b(e,t,r,n){return v(e,t,r,n).column}function k(e,t,r,n,i){var a=r?r.kind:0;switch(t.kind){case 235:case 254:case 223:case 255:case 256:case 258:case 257:case 200:case 232:case 260:case 201:case 178:case 191:case 180:case 261:case 288:case 287:case 208:case 202:case 204:case 205:case 234:case 269:case 244:case 219:case 198:case 197:case 278:case 281:case 277:case 286:case 165:case 170:case 171:case 161:case 175:case 176:case 187:case 206:case 215:case 271:case 267:case 273:case 268:case 164:return!0;case 251:case 291:case 218:if(!e.indentMultiLineObjectLiteralBeginningOnBlankLine&&n&&201===a)return E(n,r);if(218!==t.kind)return!0;break;case 237:case 238:case 240:case 241:case 239:case 236:case 253:case 209:case 166:case 167:case 168:case 169:return 232!==a;case 210:return n&&208===a?E(n,r):232!==a;case 270:return 271!==a;case 264:return 265!==a||!!r.namedBindings&&267!==r.namedBindings.kind;case 276:return 279!==a;case 280:return 282!==a;case 184:case 183:if(178===a||180===a)return!1}return i}function x(e,t,r,n,i){return void 0===i&&(i=!1),k(e,t,r,n,!1)&&!(i&&r&&function(e,t){switch(e){case 244:case 248:case 242:case 243:return 232!==t.kind;default:return!1}}(r.kind,t))}function E(t,r){var n=e.skipTrivia(t.text,r.pos);return t.getLineAndCharacterOfPosition(n).line===t.getLineAndCharacterOfPosition(r.end).line}!function(e){e[e.Unknown=-1]="Unknown"}(n||(n={})),r.getIndentation=function(r,n,i,s){if(void 0===s&&(s=!1),r>n.text.length)return a(i);if(i.indentStyle===e.IndentStyle.None)return 0;var c=e.findPrecedingToken(r,n,void 0,!0),d=t.getRangeOfEnclosingComment(n,r,c||null);if(d&&3===d.kind)return function(t,r,n,i){var a=e.getLineAndCharacterOfPosition(t,r).line-1,o=e.getLineAndCharacterOfPosition(t,i.pos).line;if(e.Debug.assert(o>=0),a<=o)return b(e.getStartPositionOfLine(o,t),r,t,n);var s=e.getStartPositionOfLine(a,t),c=v(s,r,t,n),l=c.column,u=c.character;if(0===l)return l;var d=t.text.charCodeAt(s+u);return 42===d?l-1:l}(n,r,i,d);if(!c)return a(i);if(e.isStringOrRegularExpressionOrTemplateLiteral(c.kind)&&c.getStart(n)<=r&&r<c.end)return 0;var p=n.getLineAndCharacterOfPosition(r).line;if(i.indentStyle===e.IndentStyle.Block)return function(t,r,n){var i=r;for(;i>0;){var a=t.text.charCodeAt(i);if(!e.isWhiteSpaceLike(a))break;i--}var o=e.getLineStartPositionForPosition(i,t);return b(o,i,t,n)}(n,r,i);if(27===c.kind&&218!==c.parent.kind){var f=function(t,r,n){var i=e.findListItemInfo(t);return i&&i.listItemIndex>0?h(i.list.getChildren(),i.listItemIndex-1,r,n):-1}(c,n,i);if(-1!==f)return f}var y=function(e,t,r){return t&&m(e,e,t,r)}(r,c.parent,n);return y&&!e.rangeContainsRange(y,c)?g(y,n,i)+i.indentSize:function(t,r,n,i,s,c){var d,p=n;for(;p;){if(e.positionBelongsToNode(p,r,t)&&x(c,p,d,t,!0)){var f=u(p,t),m=l(n,p,i,t);return o(p,f,void 0,0!==m?s&&2===m?c.indentSize:0:i!==f.line?c.indentSize:0,t,!0,c)}var g=_(p,t,c,!0);if(-1!==g)return g;d=p,p=p.parent}return a(c)}(n,r,c,p,s,i)},r.getIndentationForNode=function(e,t,r,n){var i=r.getLineAndCharacterOfPosition(e.getStart(r));return o(e,i,t,0,r,!1,n)},r.getBaseIndentation=a,function(e){e[e.Unknown=0]="Unknown",e[e.OpenBrace=1]="OpenBrace",e[e.CloseBrace=2]="CloseBrace"}(i||(i={})),r.isArgumentAndStartLineOverlapsExpressionBeingCalled=d,r.childStartsOnTheSameLineWithElseInIfStatement=p,r.childIsUnindentedBranchOfConditionalExpression=function(t,r,n,i){if(e.isConditionalExpression(t)&&(r===t.whenTrue||r===t.whenFalse)){var a=e.getLineAndCharacterOfPosition(i,t.condition.end).line;if(r===t.whenTrue)return n===a;var o=u(t.whenTrue,i).line,s=e.getLineAndCharacterOfPosition(i,t.whenTrue.end).line;return a===o&&s===n}return!1},r.argumentStartsOnSameLineAsPreviousArgument=function(t,r,n,i){if(e.isCallOrNewExpression(t)){if(!t.arguments)return!1;var a=e.find(t.arguments,(function(e){return e.pos===r.pos}));if(!a)return!1;var o=t.arguments.indexOf(a);if(0===o)return!1;var s=t.arguments[o-1];if(n===e.getLineAndCharacterOfPosition(i,s.getEnd()).line)return!0}return!1},r.getContainingList=f,r.findFirstNonWhitespaceCharacterAndColumn=v,r.findFirstNonWhitespaceColumn=b,r.nodeWillIndentChild=k,r.shouldIndentChildNode=x}(t.SmartIndenter||(t.SmartIndenter={}))}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){function r(t){var r=t.__pos;return e.Debug.assert("number"==typeof r),r}function n(t,r){e.Debug.assert("number"==typeof r),t.__pos=r}function o(t){var r=t.__end;return e.Debug.assert("number"==typeof r),r}function s(t,r){e.Debug.assert("number"==typeof r),t.__end=r}var c,l;function u(t,r){return e.skipTrivia(t,r,!1,!0)}!function(e){e[e.Exclude=0]="Exclude",e[e.IncludeAll=1]="IncludeAll",e[e.JSDoc=2]="JSDoc",e[e.StartLine=3]="StartLine"}(c=t.LeadingTriviaOption||(t.LeadingTriviaOption={})),function(e){e[e.Exclude=0]="Exclude",e[e.ExcludeWhitespace=1]="ExcludeWhitespace",e[e.Include=2]="Include"}(l=t.TrailingTriviaOption||(t.TrailingTriviaOption={}));var d,p={leadingTriviaOption:c.Exclude,trailingTriviaOption:l.Exclude};function f(e,t,r,n){return{pos:m(e,t,n),end:g(e,r,n)}}function m(t,r,n){var i=n.leadingTriviaOption;if(i===c.Exclude)return r.getStart(t);if(i===c.StartLine)return e.getLineStartPositionForPosition(r.getStart(t),t);if(i===c.JSDoc){var a=e.getJSDocCommentRanges(r,t.text);if(null==a?void 0:a.length)return e.getLineStartPositionForPosition(a[0].pos,t)}var o=r.getFullStart(),s=r.getStart(t);if(o===s)return s;var l=e.getLineStartPositionForPosition(o,t);if(e.getLineStartPositionForPosition(s,t)===l)return i===c.IncludeAll?o:s;var d=o>0?1:0,p=e.getStartPositionOfLine(e.getLineOfLocalPosition(t,l)+d,t);return p=u(t.text,p),e.getStartPositionOfLine(e.getLineOfLocalPosition(t,p),t)}function g(t,r,n){var i,a=r.end,o=n.trailingTriviaOption;if(o===l.Exclude)return a;if(o===l.ExcludeWhitespace){var s=e.concatenate(e.getTrailingCommentRanges(t.text,a),e.getLeadingCommentRanges(t.text,a)),c=null===(i=null==s?void 0:s[s.length-1])||void 0===i?void 0:i.end;return c||a}var u=e.skipTrivia(t.text,a,!0);return u===a||o!==l.Include&&!e.isLineBreak(t.text.charCodeAt(u-1))?a:u}function _(e,t){return!!t&&!!e.parent&&(27===t.kind||26===t.kind&&201===e.parent.kind)}!function(e){e[e.Remove=0]="Remove",e[e.ReplaceWithSingleNode=1]="ReplaceWithSingleNode",e[e.ReplaceWithMultipleNodes=2]="ReplaceWithMultipleNodes",e[e.Text=3]="Text"}(d||(d={})),t.isThisTypeAnnotatable=function(t){return e.isFunctionExpression(t)||e.isFunctionDeclaration(t)};var h,y,v=function(){function t(t,r){this.newLineCharacter=t,this.formatContext=r,this.changes=[],this.newFiles=[],this.classesWithNodesInsertedAtStart=new e.Map,this.deletedNodes=[]}return t.fromContext=function(r){return new t(e.getNewLineOrDefaultFromHost(r.host,r.formatContext.options),r.formatContext)},t.with=function(e,r){var n=t.fromContext(e);return r(n),n.getChanges()},t.prototype.pushRaw=function(t,r){e.Debug.assertEqual(t.fileName,r.fileName);for(var n=0,i=r.textChanges;n<i.length;n++){var a=i[n];this.changes.push({kind:d.Text,sourceFile:t,text:a.newText,range:e.createTextRangeFromSpan(a.span)})}},t.prototype.deleteRange=function(e,t){this.changes.push({kind:d.Remove,sourceFile:e,range:t})},t.prototype.delete=function(e,t){this.deletedNodes.push({sourceFile:e,node:t})},t.prototype.deleteNode=function(e,t,r){void 0===r&&(r={leadingTriviaOption:c.IncludeAll}),this.deleteRange(e,f(e,t,t,r))},t.prototype.deleteModifier=function(t,r){this.deleteRange(t,{pos:r.getStart(t),end:e.skipTrivia(t.text,r.end,!0)})},t.prototype.deleteNodeRange=function(e,t,r,n){void 0===n&&(n={leadingTriviaOption:c.IncludeAll});var i=m(e,t,n),a=g(e,r,n);this.deleteRange(e,{pos:i,end:a})},t.prototype.deleteNodeRangeExcludingEnd=function(e,t,r,n){void 0===n&&(n={leadingTriviaOption:c.IncludeAll});var i=m(e,t,n),a=void 0===r?e.text.length:m(e,r,n);this.deleteRange(e,{pos:i,end:a})},t.prototype.replaceRange=function(e,t,r,n){void 0===n&&(n={}),this.changes.push({kind:d.ReplaceWithSingleNode,sourceFile:e,range:t,options:n,node:r})},t.prototype.replaceNode=function(e,t,r,n){void 0===n&&(n=p),this.replaceRange(e,f(e,t,t,n),r,n)},t.prototype.replaceNodeRange=function(e,t,r,n,i){void 0===i&&(i=p),this.replaceRange(e,f(e,t,r,i),n,i)},t.prototype.replaceRangeWithNodes=function(e,t,r,n){void 0===n&&(n={}),this.changes.push({kind:d.ReplaceWithMultipleNodes,sourceFile:e,range:t,options:n,nodes:r})},t.prototype.replaceNodeWithNodes=function(e,t,r,n){void 0===n&&(n=p),this.replaceRangeWithNodes(e,f(e,t,t,n),r,n)},t.prototype.replaceNodeWithText=function(e,t,r){this.replaceRangeWithText(e,f(e,t,t,p),r)},t.prototype.replaceNodeRangeWithNodes=function(e,t,r,n,i){void 0===i&&(i=p),this.replaceRangeWithNodes(e,f(e,t,r,i),n,i)},t.prototype.nextCommaToken=function(t,r){var n=e.findNextToken(r,r.parent,t);return n&&27===n.kind?n:void 0},t.prototype.replacePropertyAssignment=function(e,t,r){var n=this.nextCommaToken(e,t)?"":","+this.newLineCharacter;this.replaceNode(e,t,r,{suffix:n})},t.prototype.insertNodeAt=function(t,r,n,i){void 0===i&&(i={}),this.replaceRange(t,e.createRange(r),n,i)},t.prototype.insertNodesAt=function(t,r,n,i){void 0===i&&(i={}),this.replaceRangeWithNodes(t,e.createRange(r),n,i)},t.prototype.insertNodeAtTopOfFile=function(e,t,r){this.insertAtTopOfFile(e,t,r)},t.prototype.insertNodesAtTopOfFile=function(e,t,r){this.insertAtTopOfFile(e,t,r)},t.prototype.insertAtTopOfFile=function(t,r,n){var i=function(t){for(var r,n=0,i=t.statements;n<i.length;n++){var a=i[n];if(!e.isPrologueDirective(a))break;r=a}var o=0,s=t.text;if(r)return o=r.end,g(),o;var c=e.getShebang(s);void 0!==c&&(o=c.length,g());var l,u,d=e.getLeadingCommentRanges(s,o);if(!d)return o;for(var p=0,f=d;p<f.length;p++){var m=f[p];if(3===m.kind){if(e.isPinnedComment(s,m.pos)){l={range:m,pinnedOrTripleSlash:!0};continue}}else if(e.isRecognizedTripleSlashComment(s,m.pos,m.end)){l={range:m,pinnedOrTripleSlash:!0};continue}if(l){if(l.pinnedOrTripleSlash)break;if(t.getLineAndCharacterOfPosition(m.pos).line>=t.getLineAndCharacterOfPosition(l.range.end).line+2)break}if(t.statements.length)if(void 0===u&&(u=t.getLineAndCharacterOfPosition(t.statements[0].getStart()).line),u<t.getLineAndCharacterOfPosition(m.end).line+2)break;l={range:m,pinnedOrTripleSlash:!1}}l&&(o=l.range.end,g());return o;function g(){if(o<s.length){var t=s.charCodeAt(o);e.isLineBreak(t)&&++o<s.length&&13===t&&10===s.charCodeAt(o)&&o++}}}(t),a={prefix:0===i?void 0:this.newLineCharacter,suffix:(e.isLineBreak(t.text.charCodeAt(i))?"":this.newLineCharacter)+(n?this.newLineCharacter:"")};e.isArray(r)?this.insertNodesAt(t,i,r,a):this.insertNodeAt(t,i,r,a)},t.prototype.insertFirstParameter=function(t,r,n){var i=e.firstOrUndefined(r);i?this.insertNodeBefore(t,i,n):this.insertNodeAt(t,r.pos,n)},t.prototype.insertNodeBefore=function(e,t,r,n,i){void 0===n&&(n=!1),void 0===i&&(i={}),this.insertNodeAt(e,m(e,t,i),r,this.getOptionsForInsertNodeBefore(t,r,n))},t.prototype.insertModifierAt=function(t,r,n,i){void 0===i&&(i={}),this.insertNodeAt(t,r,e.factory.createToken(n),i)},t.prototype.insertModifierBefore=function(e,t,r){return this.insertModifierAt(e,r.getStart(e),t,{suffix:" "})},t.prototype.insertCommentBeforeLine=function(t,r,n,i){var a=e.getStartPositionOfLine(r,t),o=e.getFirstNonSpaceCharacterPosition(t.text,a),s=D(t,o),c=e.getTouchingToken(t,s?o:n),l=t.text.slice(a,o),u=(s?"":this.newLineCharacter)+"//"+i+this.newLineCharacter+l;this.insertText(t,c.getStart(t),u)},t.prototype.insertJsdocCommentBefore=function(t,r,n){var i=r.getStart(t);if(r.jsDoc)for(var a=0,o=r.jsDoc;a<o.length;a++){var s=o[a];this.deleteRange(t,{pos:e.getLineStartPositionForPosition(s.getStart(t),t),end:g(t,s,{})})}var c=e.getPrecedingNonSpaceCharacterPosition(t.text,i-1),l=t.text.slice(c,i);this.insertNodeAt(t,i,n,{preserveLeadingWhitespace:!1,suffix:this.newLineCharacter+l})},t.prototype.replaceRangeWithText=function(e,t,r){this.changes.push({kind:d.Text,sourceFile:e,range:t,text:r})},t.prototype.insertText=function(t,r,n){this.replaceRangeWithText(t,e.createRange(r),n)},t.prototype.tryInsertTypeAnnotation=function(t,r,n){var i,a;if(e.isFunctionLike(r)){if(!(a=e.findChildOfKind(r,21,t))){if(!e.isArrowFunction(r))return!1;a=e.first(r.parameters)}}else a=null!==(i=251===r.kind?r.exclamationToken:r.questionToken)&&void 0!==i?i:r.name;return this.insertNodeAt(t,a.end,n,{prefix:": "}),!0},t.prototype.tryInsertThisTypeAnnotation=function(t,r,n){var i=e.findChildOfKind(r,20,t).getStart(t)+1,a=r.parameters.length?", ":"";this.insertNodeAt(t,i,n,{prefix:"this: ",suffix:a})},t.prototype.insertTypeParameters=function(t,r,n){var i=(e.findChildOfKind(r,20,t)||e.first(r.parameters)).getStart(t);this.insertNodesAt(t,i,n,{prefix:"<",suffix:">",joiner:", "})},t.prototype.getOptionsForInsertNodeBefore=function(t,r,n){return e.isStatement(t)||e.isClassElement(t)?{suffix:n?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:e.isVariableDeclaration(t)?{suffix:", "}:e.isParameter(t)?e.isParameter(r)?{suffix:", "}:{}:e.isStringLiteral(t)&&e.isImportDeclaration(t.parent)||e.isNamedImports(t)?{suffix:", "}:e.isImportSpecifier(t)?{suffix:","+(n?this.newLineCharacter:" ")}:e.Debug.failBadSyntaxKind(t)},t.prototype.insertNodeAtConstructorStart=function(t,r,n){var a=e.firstOrUndefined(r.body.statements);a&&r.body.multiLine?this.insertNodeBefore(t,a,n):this.replaceConstructorBody(t,r,i([n],r.body.statements))},t.prototype.insertNodeAtConstructorEnd=function(t,r,n){var a=e.lastOrUndefined(r.body.statements);a&&r.body.multiLine?this.insertNodeAfter(t,a,n):this.replaceConstructorBody(t,r,i(i([],r.body.statements),[n]))},t.prototype.replaceConstructorBody=function(t,r,n){this.replaceNode(t,r.body,e.factory.createBlock(n,!0))},t.prototype.insertNodeAtEndOfScope=function(t,r,n){var i=m(t,r.getLastToken(),{});this.insertNodeAt(t,i,n,{prefix:e.isLineBreak(t.text.charCodeAt(r.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})},t.prototype.insertNodeAtClassStart=function(e,t,r){this.insertNodeAtStartWorker(e,t,r)},t.prototype.insertNodeAtObjectStart=function(e,t,r){this.insertNodeAtStartWorker(e,t,r)},t.prototype.insertNodeAtStartWorker=function(e,t,r){var n,i=null!==(n=this.guessIndentationFromExistingMembers(e,t))&&void 0!==n?n:this.computeIndentationForNewMember(e,t);this.insertNodeAt(e,k(t).pos,r,this.getInsertNodeAtStartInsertOptions(e,t,i))},t.prototype.guessIndentationFromExistingMembers=function(t,r){for(var n,i=r,a=0,o=k(r);a<o.length;a++){var s=o[a];if(e.rangeStartPositionsAreOnSameLine(i,s,t))return;var c=s.getStart(t),l=e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(e.getLineStartPositionForPosition(c,t),c,t,this.formatContext.options);if(void 0===n)n=l;else if(l!==n)return;i=s}return n},t.prototype.computeIndentationForNewMember=function(t,r){var n,i=r.getStart(t);return e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(e.getLineStartPositionForPosition(i,t),i,t,this.formatContext.options)+(null!==(n=this.formatContext.options.indentSize)&&void 0!==n?n:4)},t.prototype.getInsertNodeAtStartInsertOptions=function(t,r,n){var i=0===k(r).length,a=e.addToSeen(this.classesWithNodesInsertedAtStart,e.getNodeId(r),{node:r,sourceFile:t}),o=e.isObjectLiteralExpression(r)&&(!e.isJsonSourceFile(t)||!i);return{indentation:n,prefix:(e.isObjectLiteralExpression(r)&&e.isJsonSourceFile(t)&&i&&!a?",":"")+this.newLineCharacter,suffix:o?",":""}},t.prototype.insertNodeAfterComma=function(e,t,r){var n=this.insertNodeAfterWorker(e,this.nextCommaToken(e,t)||t,r);this.insertNodeAt(e,n,r,this.getInsertNodeAfterOptions(e,t))},t.prototype.insertNodeAfter=function(e,t,r){var n=this.insertNodeAfterWorker(e,t,r);this.insertNodeAt(e,n,r,this.getInsertNodeAfterOptions(e,t))},t.prototype.insertNodeAtEndOfList=function(e,t,r){this.insertNodeAt(e,t.end,r,{prefix:", "})},t.prototype.insertNodesAfter=function(t,r,n){var i=this.insertNodeAfterWorker(t,r,e.first(n));this.insertNodesAt(t,i,n,this.getInsertNodeAfterOptions(t,r))},t.prototype.insertNodeAfterWorker=function(t,r,n){var i,a;return i=r,a=n,((e.isPropertySignature(i)||e.isPropertyDeclaration(i))&&e.isClassOrTypeElement(a)&&159===a.name.kind||e.isStatementButNotDeclaration(i)&&e.isStatementButNotDeclaration(a))&&59!==t.text.charCodeAt(r.end-1)&&this.replaceRange(t,e.createRange(r.end),e.factory.createToken(26)),g(t,r,{})},t.prototype.getInsertNodeAfterOptions=function(t,r){var n=this.getInsertNodeAfterOptionsWorker(r);return a(a({},n),{prefix:r.end===t.end&&e.isStatement(r)?n.prefix?"\n"+n.prefix:"\n":n.prefix})},t.prototype.getInsertNodeAfterOptionsWorker=function(t){switch(t.kind){case 254:case 255:case 259:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 251:case 10:case 78:return{prefix:", "};case 291:return{suffix:","+this.newLineCharacter};case 93:return{prefix:" "};case 161:return{};default:return e.Debug.assert(e.isStatement(t)||e.isClassOrTypeElement(t)),{suffix:this.newLineCharacter}}},t.prototype.insertName=function(t,r,n){if(e.Debug.assert(!r.name),210===r.kind){var i=e.findChildOfKind(r,38,t),a=e.findChildOfKind(r,20,t);a?(this.insertNodesAt(t,a.getStart(t),[e.factory.createToken(98),e.factory.createIdentifier(n)],{joiner:" "}),w(this,t,i)):(this.insertText(t,e.first(r.parameters).getStart(t),"function "+n+"("),this.replaceRange(t,i,e.factory.createToken(21))),232!==r.body.kind&&(this.insertNodesAt(t,r.body.getStart(t),[e.factory.createToken(18),e.factory.createToken(105)],{joiner:" ",suffix:" "}),this.insertNodesAt(t,r.body.end,[e.factory.createToken(26),e.factory.createToken(19)],{joiner:" "}))}else{var o=e.findChildOfKind(r,209===r.kind?98:83,t).end;this.insertNodeAt(t,o,e.factory.createIdentifier(n),{prefix:" "})}},t.prototype.insertExportModifier=function(e,t){this.insertText(e,t.getStart(e),"export ")},t.prototype.insertNodeInListAfter=function(t,r,n,i){if(void 0===i&&(i=e.formatting.SmartIndenter.getContainingList(r,t)),i){var a=e.indexOfNode(i,r);if(!(a<0)){var o=r.getEnd();if(a!==i.length-1){var s=e.getTokenAtPosition(t,r.end);if(s&&_(r,s)){var c=e.getLineAndCharacterOfPosition(t,u(t.text,i[a+1].getFullStart())),l=e.getLineAndCharacterOfPosition(t,s.end),d=void 0,p=void 0;l.line===c.line?(p=s.end,d=function(e){for(var t="",r=0;r<e;r++)t+=" ";return t}(c.character-l.character)):p=e.getStartPositionOfLine(c.line,t);var f=""+e.tokenToString(s.kind)+t.text.substring(s.end,i[a+1].getStart(t));this.replaceRange(t,e.createRange(p,i[a+1].getStart(t)),n,{prefix:d,suffix:f})}}else{var m=r.getStart(t),g=e.getLineStartPositionForPosition(m,t),h=void 0,y=!1;if(1===i.length)h=27;else{var v=e.findPrecedingToken(r.pos,t);h=_(r,v)?v.kind:27,y=e.getLineStartPositionForPosition(i[a-1].getStart(t),t)!==g}if(function(t,r){for(var n=r;n<t.length;){var i=t.charCodeAt(n);if(!e.isWhiteSpaceSingleLine(i))return 47===i;n++}return!1}(t.text,r.end)&&(y=!0),y){this.replaceRange(t,e.createRange(o),e.factory.createToken(h));for(var b=e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(g,m,t,this.formatContext.options),k=e.skipTrivia(t.text,o,!0,!1);k!==o&&e.isLineBreak(t.text.charCodeAt(k-1));)k--;this.replaceRange(t,e.createRange(k),n,{indentation:b,prefix:this.newLineCharacter})}else this.replaceRange(t,e.createRange(o),n,{prefix:e.tokenToString(h)+" "})}}}else e.Debug.fail("node is not a list element")},t.prototype.parenthesizeExpression=function(t,r){this.replaceRange(t,e.rangeOfNode(r),e.factory.createParenthesizedExpression(r))},t.prototype.finishClassesWithNodesInsertedAtStart=function(){var t=this;this.classesWithNodesInsertedAtStart.forEach((function(r){var n=r.node,i=r.sourceFile,a=function(t,r){var n=e.findChildOfKind(t,18,r),i=e.findChildOfKind(t,19,r);return[null==n?void 0:n.end,null==i?void 0:i.end]}(n,i),o=a[0],s=a[1];if(void 0!==o&&void 0!==s){var c=0===k(n).length,l=e.positionsAreOnSameLine(o,s,i);c&&l&&o!==s-1&&t.deleteRange(i,e.createRange(o,s-1)),l&&t.insertText(i,s-1,t.newLineCharacter)}}))},t.prototype.finishDeleteDeclarations=function(){for(var t=this,r=new e.Set,n=function(t,n){i.deletedNodes.some((function(r){return r.sourceFile===t&&e.rangeContainsRangeExclusive(r.node,n)}))||(e.isArray(n)?i.deleteRange(t,e.rangeOfTypeParameters(t,n)):y.deleteDeclaration(i,r,t,n))},i=this,a=0,o=this.deletedNodes;a<o.length;a++){var s=o[a];n(s.sourceFile,s.node)}r.forEach((function(n){var i=n.getSourceFile(),a=e.formatting.SmartIndenter.getContainingList(n,i);if(n===e.last(a)){var o=e.findLastIndex(a,(function(e){return!r.has(e)}),a.length-2);-1!==o&&t.deleteRange(i,{pos:a[o].end,end:b(i,a[o+1])})}}))},t.prototype.getChanges=function(e){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();for(var t=h.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,e),r=0,n=this.newFiles;r<n.length;r++){var i=n[r],a=i.oldFile,o=i.fileName,s=i.statements;t.push(h.newFileChanges(a,o,s,this.newLineCharacter,this.formatContext))}return t},t.prototype.createNewFile=function(e,t,r){this.newFiles.push({oldFile:e,fileName:t,statements:r})},t}();function b(t,r){return e.skipTrivia(t.text,m(t,r,{leadingTriviaOption:c.IncludeAll}),!1,!0)}function k(t){return e.isObjectLiteralExpression(t)?t.properties:t.members}function x(t,r){for(var n=r.length-1;n>=0;n--){var i=r[n],a=i.span,o=i.newText;t=""+t.substring(0,a.start)+o+t.substring(e.textSpanEnd(a))}return t}function E(t){var n=e.visitEachChild(t,E,e.nullTransformationContext,S,E),i=e.nodeIsSynthesized(n)?n:Object.create(n);return e.setTextRangePosEnd(i,r(t),o(t)),i}function S(t,n,i,a,s){var c=e.visitNodes(t,n,i,a,s);if(!c)return c;var l=c===t?e.factory.createNodeArray(c.slice(0)):c;return e.setTextRangePosEnd(l,r(t),o(t)),l}function D(t,r){return!(e.isInComment(t,r)||e.isInString(t,r)||e.isInTemplateString(t,r)||e.isInJSXText(t,r))}function w(e,t,r,n){void 0===n&&(n={leadingTriviaOption:c.IncludeAll});var i=m(t,r,n),a=g(t,r,n);e.deleteRange(t,{pos:i,end:a})}function T(t,r,n,i){var a=e.Debug.checkDefined(e.formatting.SmartIndenter.getContainingList(i,n)),o=e.indexOfNode(a,i);e.Debug.assert(-1!==o),1!==a.length?(e.Debug.assert(!r.has(i),"Deleting a node twice"),r.add(i),t.deleteRange(n,{pos:b(n,i),end:o===a.length-1?g(n,i,{}):b(n,a[o+1])})):w(t,n,i)}t.ChangeTracker=v,t.getNewFileText=function(e,t,r,n){return h.newFileChangesWorker(void 0,t,e,r,n)},function(t){function r(t,r,n,a,o){var s=n.map((function(e){return 4===e?"":i(e,t,a).text})).join(a),c=e.createSourceFile("any file name",s,99,!0,r);return x(s,e.formatting.formatDocument(c,o))+a}function i(t,r,i){var a=function(t){var r=0,i=e.createTextWriter(t),a=function(e,t,i){t&&n(t,r),i(e,t),t&&s(t,r)},o=function(e){e&&n(e,r)},c=function(e){e&&s(e,r)};function l(t,n){if(n||!function(t){return e.skipTrivia(t,0)===t.length}(t)){r=i.getTextPos();for(var a=0;e.isWhiteSpaceLike(t.charCodeAt(t.length-a-1));)a++;r-=a}}function u(e){i.write(e),l(e,!1)}function d(e){i.writeComment(e)}function p(e){i.writeKeyword(e),l(e,!1)}function f(e){i.writeOperator(e),l(e,!1)}function m(e){i.writePunctuation(e),l(e,!1)}function g(e){i.writeTrailingSemicolon(e),l(e,!1)}function _(e){i.writeParameter(e),l(e,!1)}function h(e){i.writeProperty(e),l(e,!1)}function y(e){i.writeSpace(e),l(e,!1)}function v(e){i.writeStringLiteral(e),l(e,!1)}function b(e,t){i.writeSymbol(e,t),l(e,!1)}function k(e){i.writeLine(e)}function x(){i.increaseIndent()}function E(){i.decreaseIndent()}function S(){return i.getText()}function D(e){i.rawWrite(e),l(e,!1)}function w(e){i.writeLiteral(e),l(e,!0)}function T(){return i.getTextPos()}function C(){return i.getLine()}function A(){return i.getColumn()}function N(){return i.getIndent()}function P(){return i.isAtStartOfLine()}function I(){i.clear(),r=0}return{onEmitNode:a,onBeforeEmitNodeArray:function(e){e&&n(e,r)},onAfterEmitNodeArray:function(e){e&&s(e,r)},onBeforeEmitToken:o,onAfterEmitToken:c,write:u,writeComment:d,writeKeyword:p,writeOperator:f,writePunctuation:m,writeTrailingSemicolon:g,writeParameter:_,writeProperty:h,writeSpace:y,writeStringLiteral:v,writeSymbol:b,writeLine:k,increaseIndent:x,decreaseIndent:E,getText:S,rawWrite:D,writeLiteral:w,getTextPos:T,getLine:C,getColumn:A,getIndent:N,isAtStartOfLine:P,hasTrailingComment:function(){return i.hasTrailingComment()},hasTrailingWhitespace:function(){return i.hasTrailingWhitespace()},clear:I}}(i),o="\n"===i?1:0;return e.createPrinter({newLine:o,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},a).writeNode(4,t,r,a),{text:a.getText(),node:E(t)}}t.getTextChangesFromChanges=function(t,r,n,o){return e.mapDefined(e.group(t,(function(e){return e.sourceFile.path})),(function(t){for(var s=t[0].sourceFile,c=e.stableSort(t,(function(e,t){return e.range.pos-t.range.pos||e.range.end-t.range.end})),l=function(t){e.Debug.assert(c[t].range.end<=c[t+1].range.pos,"Changes overlap",(function(){return JSON.stringify(c[t].range)+" and "+JSON.stringify(c[t+1].range)}))},u=0;u<c.length-1;u++)l(u);var p=e.mapDefined(c,(function(t){var c=e.createTextSpanFromRange(t.range),l=function(t,r,n,o,s){if(t.kind===d.Remove)return"";if(t.kind===d.Text)return t.text;var c=t.options,l=void 0===c?{}:c,u=t.range.pos,p=function(t){return function(t,r,n,o,s,c,l){var u=o.indentation,d=o.prefix,p=o.delta,f=i(t,r,s),m=f.node,g=f.text;l&&l(m,g);var _=function(t,r){var n=t.options,i=!n.semicolons||n.semicolons===e.SemicolonPreference.Ignore,o=n.semicolons===e.SemicolonPreference.Remove||i&&!e.probablyUsesSemicolons(r);return a(a({},n),{semicolons:o?e.SemicolonPreference.Remove:e.SemicolonPreference.Ignore})}(c,r),h=void 0!==u?u:e.formatting.SmartIndenter.getIndentation(n,r,_,d===s||e.getLineStartPositionForPosition(n,r)===n);void 0===p&&(p=e.formatting.SmartIndenter.shouldIndentChildNode(_,t)&&_.indentSize||0);var y={text:g,getLineAndCharacterOfPosition:function(t){return e.getLineAndCharacterOfPosition(this,t)}},v=e.formatting.formatNodeGivenIndentation(m,y,r.languageVariant,h,p,a(a({},c),{options:_}));return x(g,v)}(t,r,u,l,n,o,s)},f=t.kind===d.ReplaceWithMultipleNodes?t.nodes.map((function(t){return e.removeSuffix(p(t),n)})).join(t.options.joiner||n):p(t.node),m=l.preserveLeadingWhitespace||void 0!==l.indentation||e.getLineStartPositionForPosition(u,r)===u?f:f.replace(/^\s+/,"");return(l.prefix||"")+m+(!l.suffix||e.endsWith(m,l.suffix)?"":l.suffix)}(t,s,r,n,o);if(c.length!==l.length||!e.stringContainsAt(s.text,l,c.start))return e.createTextChange(c,l)}));return p.length>0?{fileName:s.fileName,textChanges:p}:void 0}))},t.newFileChanges=function(t,n,i,a,o){var s=r(t,e.getScriptKindFromFileName(n),i,a,o);return{fileName:n,textChanges:[e.createTextChange(e.createTextSpan(0,0),s)],isNewFile:!0}},t.newFileChangesWorker=r,t.getNonformattedText=i}(h||(h={})),t.applyChanges=x,t.isValidLocationToAddComment=D,function(t){function r(t,r,n){if(n.parent.name){var i=e.Debug.checkDefined(e.getTokenAtPosition(r,n.pos-1));t.deleteRange(r,{pos:i.getStart(r),end:n.end})}else{w(t,r,e.getAncestor(n,264))}}t.deleteDeclaration=function(t,n,i,a){switch(a.kind){case 161:var o=a.parent;e.isArrowFunction(o)&&1===o.parameters.length&&!e.findChildOfKind(o,20,i)?t.replaceNodeWithText(i,a,"()"):T(t,n,i,a);break;case 264:case 263:w(t,i,a,{leadingTriviaOption:i.imports.length&&a===e.first(i.imports).parent||a===e.find(i.statements,e.isAnyImportSyntax)?c.Exclude:e.hasJSDocNodes(a)?c.JSDoc:c.StartLine});break;case 199:var s=a.parent;198===s.kind&&a!==e.last(s.elements)?w(t,i,a):T(t,n,i,a);break;case 251:!function(t,r,n,i){var a=i.parent;if(290===a.kind)return void t.deleteNodeRange(n,e.findChildOfKind(a,20,n),e.findChildOfKind(a,21,n));if(1!==a.declarations.length)return void T(t,r,n,i);var o=a.parent;switch(o.kind){case 241:case 240:t.replaceNode(n,i,e.factory.createObjectLiteralExpression());break;case 239:w(t,n,a);break;case 234:w(t,n,o,{leadingTriviaOption:e.hasJSDocNodes(o)?c.JSDoc:c.StartLine});break;default:e.Debug.assertNever(o)}}(t,n,i,a);break;case 160:T(t,n,i,a);break;case 268:var u=a.parent;1===u.elements.length?r(t,i,u):T(t,n,i,a);break;case 266:r(t,i,a);break;case 26:w(t,i,a,{trailingTriviaOption:l.Exclude});break;case 98:w(t,i,a,{leadingTriviaOption:c.Exclude});break;case 254:case 255:case 253:w(t,i,a,{leadingTriviaOption:e.hasJSDocNodes(a)?c.JSDoc:c.StartLine});break;default:e.isImportClause(a.parent)&&a.parent.name===a?function(t,r,n){if(n.namedBindings){var i=n.name.getStart(r),a=e.getTokenAtPosition(r,n.name.end);if(a&&27===a.kind){var o=e.skipTrivia(r.text,a.end,!1,!0);t.deleteRange(r,{pos:i,end:o})}else w(t,r,n.name)}else w(t,r,n.parent)}(t,i,a.parent):e.isCallExpression(a.parent)&&e.contains(a.parent.arguments,a)?T(t,n,i,a):w(t,i,a)}}}(y||(y={})),t.deleteNode=w}(e.textChanges||(e.textChanges={}))}(d||(d={})),function(e){!function(t){var r=e.createMultiMap(),n=new e.Map;function o(t){return e.isArray(t)?e.formatStringFromArgs(e.getLocaleSpecificMessage(t[0]),t.slice(1)):e.getLocaleSpecificMessage(t)}function s(e,t,r,n,i,a){return{fixName:e,description:t,changes:r,fixId:n,fixAllDescription:i,commands:a?[a]:void 0}}function l(e,t){return{changes:e,commands:t}}function u(t,r,n){for(var i=0,a=d(t);i<a.length;i++){var o=a[i];e.contains(r,o.code)&&n(o)}}function d(t){var r=t.program,n=t.sourceFile,a=t.cancellationToken;return i(i(i([],r.getSemanticDiagnostics(n,a)),r.getSyntacticDiagnostics(n,a)),e.computeSuggestionDiagnostics(n,r,a))}t.createCodeFixActionWithoutFixAll=function(e,t,r){return s(e,o(r),t,void 0,void 0)},t.createCodeFixAction=function(e,t,r,n,i,a){return s(e,o(r),t,n,o(i),a)},t.registerCodeFix=function(t){for(var i=0,a=t.errorCodes;i<a.length;i++){var o=a[i];r.add(String(o),t)}if(t.fixIds)for(var s=0,c=t.fixIds;s<c.length;s++){var l=c[s];e.Debug.assert(!n.has(l)),n.set(l,t)}},t.getSupportedErrorCodes=function(){return e.arrayFrom(r.keys())},t.getFixes=function(t){var n=d(t),i=r.get(String(t.errorCode));return e.flatMap(i,(function(r){return e.map(r.getCodeActions(t),function(t,r){for(var n=t.errorCodes,i=0,o=0,s=r;o<s.length;o++){var l=s[o];if(e.contains(n,l.code)&&i++,i>1)break}var u=i<2;return function(e){var t=e.fixId,r=e.fixAllDescription,n=c(e,["fixId","fixAllDescription"]);return u?n:a(a({},n),{fixId:t,fixAllDescription:r})}}(r,n))}))},t.getAllFixes=function(t){return n.get(e.cast(t.fixId,e.isString)).getAllCodeActions(t)},t.createCombinedCodeActions=l,t.createFileTextChanges=function(e,t){return{fileName:e,textChanges:t}},t.codeFixAll=function(t,r,n){var i=[];return l(e.textChanges.ChangeTracker.with(t,(function(e){return u(t,r,(function(t){return n(e,t,i)}))})),0===i.length?void 0:i)},t.eachDiagnostic=u}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){var t,r;t=e.refactor||(e.refactor={}),r=new e.Map,t.registerRefactor=function(e,t){r.set(e,t)},t.getApplicableRefactors=function(n){return e.arrayFrom(e.flatMapIterator(r.values(),(function(e){var r;return n.cancellationToken&&n.cancellationToken.isCancellationRequested()||!(null===(r=e.kinds)||void 0===r?void 0:r.some((function(e){return t.refactorKindBeginsWith(e,n.kind)})))?void 0:e.getAvailableActions(n)})))},t.getEditsForRefactor=function(e,t,n){var i=r.get(t);return i&&i.getEditsForAction(e,n)}}(d||(d={})),function(e){!function(t){var r="addConvertToUnknownForNonOverlappingTypes",n=[e.Diagnostics.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n),a=e.Debug.checkDefined(e.findAncestor(i,(function(t){return e.isAsExpression(t)||e.isTypeAssertionExpression(t)})),"Expected to find an assertion expression"),o=e.isAsExpression(a)?e.factory.createAsExpression(a.expression,e.factory.createKeywordTypeNode(153)):e.factory.createTypeAssertion(e.factory.createKeywordTypeNode(153),a.expression);t.replaceNode(r,a.expression,o)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Add_unknown_conversion_for_non_overlapping_types,r,e.Diagnostics.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){t.registerCodeFix({errorCodes:[e.Diagnostics.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,e.Diagnostics.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code],getCodeActions:function(r){var n=r.sourceFile,i=e.textChanges.ChangeTracker.with(r,(function(t){var r=e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([]),void 0);t.insertNodeAtEndOfScope(n,n,r)}));return[t.createCodeFixActionWithoutFixAll("addEmptyExportDeclaration",i,e.Diagnostics.Add_export_to_make_this_file_into_a_module)]}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingAsync",n=[e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code,e.Diagnostics.Type_0_is_not_comparable_to_type_1.code];function i(n,i,a,o){var s=a((function(t){return function(t,r,n,i){if(i&&i.has(e.getNodeId(n)))return;null==i||i.add(e.getNodeId(n));var a=e.factory.updateModifiers(e.getSynthesizedDeepClone(n,!0),e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(256|e.getSyntacticModifierFlags(n))));t.replaceNode(r,n,a)}(t,n.sourceFile,i,o)}));return t.createCodeFixAction(r,s,e.Diagnostics.Add_async_modifier_to_containing_function,r,e.Diagnostics.Add_all_missing_async_modifiers)}function a(t,r){if(r){var n=e.getTokenAtPosition(t,r.start);return e.findAncestor(n,(function(n){return n.getStart(t)<r.start||n.getEnd()>e.textSpanEnd(r)?"quit":(e.isArrowFunction(n)||e.isMethodDeclaration(n)||e.isFunctionExpression(n)||e.isFunctionDeclaration(n))&&e.textSpansEqual(r,e.createTextSpanFromNode(n,t))}))}}t.registerCodeFix({fixIds:[r],errorCodes:n,getCodeActions:function(t){var r=t.sourceFile,n=t.errorCode,o=t.cancellationToken,s=t.program,c=t.span,l=e.find(s.getDiagnosticsProducingTypeChecker().getDiagnostics(r,o),function(t,r){return function(n){var i=n.start,a=n.length,o=n.relatedInformation,s=n.code;return e.isNumber(i)&&e.isNumber(a)&&e.textSpansEqual({start:i,length:a},t)&&s===r&&!!o&&e.some(o,(function(t){return t.code===e.Diagnostics.Did_you_mean_to_mark_this_function_as_async.code}))}}(c,n)),u=a(r,l&&l.relatedInformation&&e.find(l.relatedInformation,(function(t){return t.code===e.Diagnostics.Did_you_mean_to_mark_this_function_as_async.code})));if(u){return[i(t,u,(function(r){return e.textChanges.ChangeTracker.with(t,r)}))]}},getAllCodeActions:function(r){var o=r.sourceFile,s=new e.Set;return t.codeFixAll(r,n,(function(t,n){var c=n.relatedInformation&&e.find(n.relatedInformation,(function(t){return t.code===e.Diagnostics.Did_you_mean_to_mark_this_function_as_async.code})),l=a(o,c);if(l){return i(r,l,(function(e){return e(t),[]}),s)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingAwait",n=e.Diagnostics.Property_0_does_not_exist_on_type_1.code,a=[e.Diagnostics.This_expression_is_not_callable.code,e.Diagnostics.This_expression_is_not_constructable.code],o=i([e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,e.Diagnostics.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,e.Diagnostics.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,e.Diagnostics.Operator_0_cannot_be_applied_to_type_1.code,e.Diagnostics.Operator_0_cannot_be_applied_to_types_1_and_2.code,e.Diagnostics.This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap.code,e.Diagnostics.Type_0_is_not_an_array_type.code,e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type.code,e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators.code,e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,e.Diagnostics.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,e.Diagnostics.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,e.Diagnostics.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,n],a);function s(r,n,i,a,s,c){var l=r.sourceFile,p=r.program,f=r.cancellationToken,m=function(t,r,n,i,a){var s=function(t,r){if(e.isPropertyAccessExpression(t.parent)&&e.isIdentifier(t.parent.expression))return{identifiers:[t.parent.expression],isCompleteFix:!0};if(e.isIdentifier(t))return{identifiers:[t],isCompleteFix:!0};if(e.isBinaryExpression(t)){for(var n=void 0,i=!0,a=0,o=[t.left,t.right];a<o.length;a++){var s=o[a],c=r.getTypeAtLocation(s);if(r.getPromisedTypeOfPromise(c)){if(!e.isIdentifier(s)){i=!1;continue}(n||(n=[])).push(s)}}return n&&{identifiers:n,isCompleteFix:i}}}(t,a);if(!s)return;for(var c,l=s.isCompleteFix,d=function(t){var s=a.getSymbolAtLocation(t);if(!s)return"continue";var d=e.tryCast(s.valueDeclaration,e.isVariableDeclaration),p=d&&e.tryCast(d.name,e.isIdentifier),f=e.getAncestor(d,234);if(!d||!f||d.type||!d.initializer||f.getSourceFile()!==r||e.hasSyntacticModifier(f,1)||!p||!u(d.initializer))return l=!1,"continue";var m=i.getSemanticDiagnostics(r,n),g=e.FindAllReferences.Core.eachSymbolReferenceInFile(p,a,r,(function(n){return t!==n&&!function(t,r,n,i){var a=e.isPropertyAccessExpression(t.parent)?t.parent.name:e.isBinaryExpression(t.parent)?t.parent:t,s=e.find(r,(function(e){return e.start===a.getStart(n)&&e.start+e.length===a.getEnd()}));return s&&e.contains(o,s.code)||1&i.getTypeAtLocation(a).flags}(n,m,r,a)}));if(g)return l=!1,"continue";(c||(c=[])).push({expression:d.initializer,declarationSymbol:s})},p=0,f=s.identifiers;p<f.length;p++){d(f[p])}return c&&{initializers:c,needsSecondPassForFixAll:!l}}(n,l,f,p,a);if(m){var g=s((function(t){e.forEach(m.initializers,(function(e){var r=e.expression;return d(t,i,l,a,r,c)})),c&&m.needsSecondPassForFixAll&&d(t,i,l,a,n,c)}));return t.createCodeFixActionWithoutFixAll("addMissingAwaitToInitializer",g,1===m.initializers.length?[e.Diagnostics.Add_await_to_initializer_for_0,m.initializers[0].declarationSymbol.name]:e.Diagnostics.Add_await_to_initializers)}}function c(n,i,a,o,s,c){var l=s((function(e){return d(e,a,n.sourceFile,o,i,c)}));return t.createCodeFixAction(r,l,e.Diagnostics.Add_await,r,e.Diagnostics.Fix_all_expressions_possibly_missing_await)}function l(t,r,n,i,a){var o=e.getTokenAtPosition(t,n.start),s=e.findAncestor(o,(function(r){return r.getStart(t)<n.start||r.getEnd()>e.textSpanEnd(n)?"quit":e.isExpression(r)&&e.textSpansEqual(n,e.createTextSpanFromNode(r,t))}));return s&&function(t,r,n,i,a){var o=a.getDiagnosticsProducingTypeChecker().getDiagnostics(t,i);return e.some(o,(function(t){var i=t.start,a=t.length,o=t.relatedInformation,s=t.code;return e.isNumber(i)&&e.isNumber(a)&&e.textSpansEqual({start:i,length:a},n)&&s===r&&!!o&&e.some(o,(function(t){return t.code===e.Diagnostics.Did_you_forget_to_use_await.code}))}))}(t,r,n,i,a)&&u(s)?s:void 0}function u(t){return 32768&t.kind||!!e.findAncestor(t,(function(t){return t.parent&&e.isArrowFunction(t.parent)&&t.parent.body===t||e.isBlock(t)&&(253===t.parent.kind||209===t.parent.kind||210===t.parent.kind||166===t.parent.kind)}))}function d(t,r,i,o,s,c){if(e.isBinaryExpression(s))for(var l=0,u=[s.left,s.right];l<u.length;l++){var d=u[l];if(c&&e.isIdentifier(d))if((g=o.getSymbolAtLocation(d))&&c.has(e.getSymbolId(g)))continue;var f=o.getTypeAtLocation(d),m=o.getPromisedTypeOfPromise(f)?e.factory.createAwaitExpression(d):d;t.replaceNode(i,d,m)}else if(r===n&&e.isPropertyAccessExpression(s.parent)){if(c&&e.isIdentifier(s.parent.expression))if((g=o.getSymbolAtLocation(s.parent.expression))&&c.has(e.getSymbolId(g)))return;t.replaceNode(i,s.parent.expression,e.factory.createParenthesizedExpression(e.factory.createAwaitExpression(s.parent.expression))),p(t,s.parent.expression,i)}else if(e.contains(a,r)&&e.isCallOrNewExpression(s.parent)){if(c&&e.isIdentifier(s))if((g=o.getSymbolAtLocation(s))&&c.has(e.getSymbolId(g)))return;t.replaceNode(i,s,e.factory.createParenthesizedExpression(e.factory.createAwaitExpression(s))),p(t,s,i)}else{var g;if(c&&e.isVariableDeclaration(s.parent)&&e.isIdentifier(s.parent.name))if((g=o.getSymbolAtLocation(s.parent.name))&&!e.tryAddToSet(c,e.getSymbolId(g)))return;t.replaceNode(i,s,e.factory.createAwaitExpression(s))}}function p(t,r,n){var i=e.findPrecedingToken(r.pos,n);i&&e.positionIsASICandidate(i.end,i.parent,n)&&t.insertText(n,r.getStart(n),";")}t.registerCodeFix({fixIds:[r],errorCodes:o,getCodeActions:function(t){var r=t.sourceFile,n=t.errorCode,i=l(r,n,t.span,t.cancellationToken,t.program);if(i){var a=t.program.getTypeChecker(),o=function(r){return e.textChanges.ChangeTracker.with(t,r)};return e.compact([s(t,i,n,a,o),c(t,i,n,a,o)])}},getAllCodeActions:function(r){var n=r.sourceFile,i=r.program,a=r.cancellationToken,u=r.program.getTypeChecker(),d=new e.Set;return t.codeFixAll(r,o,(function(e,t){var o=l(n,t.code,t,a,i);if(o){var p=function(t){return t(e),[]};return s(r,o,t.code,u,p,d)||c(r,o,t.code,u,p,d)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingConst",n=[e.Diagnostics.Cannot_find_name_0.code,e.Diagnostics.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];function i(t,r,n,i,s){var c=e.getTokenAtPosition(r,n),l=e.findAncestor(c,(function(t){return e.isForInOrOfStatement(t.parent)?t.parent.initializer===t:!function(e){switch(e.kind){case 78:case 200:case 201:case 291:case 292:return!0;default:return!1}}(t)&&"quit"}));if(l)return a(t,l,r,s);var u=c.parent;if(e.isBinaryExpression(u)&&62===u.operatorToken.kind&&e.isExpressionStatement(u.parent))return a(t,c,r,s);if(e.isArrayLiteralExpression(u)){var d=i.getTypeChecker();if(!e.every(u.elements,(function(t){return function(t,r){var n=e.isIdentifier(t)?t:e.isAssignmentExpression(t,!0)&&e.isIdentifier(t.left)?t.left:void 0;return!!n&&!r.getSymbolAtLocation(n)}(t,d)})))return;return a(t,u,r,s)}var p=e.findAncestor(c,(function(t){return!!e.isExpressionStatement(t.parent)||!function(e){switch(e.kind){case 78:case 218:case 27:return!0;default:return!1}}(t)&&"quit"}));if(p){if(!o(p,i.getTypeChecker()))return;return a(t,p,r,s)}}function a(t,r,n,i){i&&!e.tryAddToSet(i,r)||t.insertModifierBefore(n,85,r)}function o(t,r){return!!e.isBinaryExpression(t)&&(27===t.operatorToken.kind?e.every([t.left,t.right],(function(e){return o(e,r)})):62===t.operatorToken.kind&&e.isIdentifier(t.left)&&!r.getSymbolAtLocation(t.left))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start,n.program)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Add_const_to_unresolved_variable,r,e.Diagnostics.Add_const_to_all_unresolved_variables)]},fixIds:[r],getAllCodeActions:function(r){var a=new e.Set;return t.codeFixAll(r,n,(function(e,t){return i(e,t.file,t.start,r.program,a)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingDeclareProperty",n=[e.Diagnostics.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration.code];function i(t,r,n,i){var a=e.getTokenAtPosition(r,n);if(e.isIdentifier(a)){var o=a.parent;164!==o.kind||i&&!e.tryAddToSet(i,o)||t.insertModifierBefore(r,134,o)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Prefix_with_declare,r,e.Diagnostics.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[r],getAllCodeActions:function(r){var a=new e.Set;return t.codeFixAll(r,n,(function(e,t){return i(e,t.file,t.start,a)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingInvocationForDecorator",n=[e.Diagnostics._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n),a=e.findAncestor(i,e.isDecorator);e.Debug.assert(!!a,"Expected position to be owned by a decorator.");var o=e.factory.createCallExpression(a.expression,void 0,void 0);t.replaceNode(r,a.expression,o)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Call_decorator_expression,r,e.Diagnostics.Add_to_all_uncalled_decorators)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addNameToNamelessParameter",n=[e.Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n);if(!e.isIdentifier(i))return e.Debug.fail("add-name-to-nameless-parameter operates on identifiers, but got a "+e.Debug.formatSyntaxKind(i.kind));var a=i.parent;if(!e.isParameter(a))return e.Debug.fail("Tried to add a parameter name to a non-parameter: "+e.Debug.formatSyntaxKind(i.kind));var o=a.parent.parameters.indexOf(a);e.Debug.assert(!a.type,"Tried to add a parameter name to a parameter that already had one."),e.Debug.assert(o>-1,"Parameter not found in parent parameter list.");var s=e.factory.createParameterDeclaration(void 0,a.modifiers,a.dotDotDotToken,"arg"+o,a.questionToken,e.factory.createTypeReferenceNode(i,void 0),a.initializer);t.replaceNode(r,i,s)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Add_parameter_name,r,e.Diagnostics.Add_names_to_all_parameters_without_names)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="annotateWithTypeFromJSDoc",n=[e.Diagnostics.JSDoc_types_may_be_moved_to_TypeScript_types.code];function i(t,r){var n=e.getTokenAtPosition(t,r);return e.tryCast(e.isParameter(n.parent)?n.parent.parent:n.parent,a)}function a(t){return function(t){return e.isFunctionLikeDeclaration(t)||251===t.kind||163===t.kind||164===t.kind}(t)&&o(t)}function o(t){return e.isFunctionLikeDeclaration(t)?t.parameters.some(o)||!t.type&&!!e.getJSDocReturnType(t):!t.type&&!!e.getJSDocType(t)}function s(t,r,n){if(e.isFunctionLikeDeclaration(n)&&(e.getJSDocReturnType(n)||n.parameters.some((function(t){return!!e.getJSDocType(t)})))){if(!n.typeParameters){var i=e.getJSDocTypeParameterDeclarations(n);i.length&&t.insertTypeParameters(r,n,i)}var a=e.isArrowFunction(n)&&!e.findChildOfKind(n,20,r);a&&t.insertNodeBefore(r,e.first(n.parameters),e.factory.createToken(20));for(var o=0,s=n.parameters;o<s.length;o++){var l=s[o];if(!l.type){var u=e.getJSDocType(l);u&&t.tryInsertTypeAnnotation(r,l,c(u))}}if(a&&t.insertNodeAfter(r,e.last(n.parameters),e.factory.createToken(21)),!n.type){var d=e.getJSDocReturnType(n);d&&t.tryInsertTypeAnnotation(r,n,c(d))}}else{var p=e.Debug.checkDefined(e.getJSDocType(n),"A JSDocType for this declaration should exist");e.Debug.assert(!n.type,"The JSDocType decl should have a type"),t.tryInsertTypeAnnotation(r,n,c(p))}}function c(t){switch(t.kind){case 306:case 307:return e.factory.createTypeReferenceNode("any",e.emptyArray);case 310:return function(t){return e.factory.createUnionTypeNode([e.visitNode(t.type,c),e.factory.createTypeReferenceNode("undefined",e.emptyArray)])}(t);case 309:return c(t.type);case 308:return function(t){return e.factory.createUnionTypeNode([e.visitNode(t.type,c),e.factory.createTypeReferenceNode("null",e.emptyArray)])}(t);case 312:return function(t){return e.factory.createArrayTypeNode(e.visitNode(t.type,c))}(t);case 311:return function(t){var r;return e.factory.createFunctionTypeNode(e.emptyArray,t.parameters.map(l),null!==(r=t.type)&&void 0!==r?r:e.factory.createKeywordTypeNode(129))}(t);case 174:return function(t){var r=t.typeName,n=t.typeArguments;if(e.isIdentifier(t.typeName)){if(e.isJSDocIndexSignature(t))return function(t){var r=e.factory.createParameterDeclaration(void 0,void 0,void 0,145===t.typeArguments[0].kind?"n":"s",void 0,e.factory.createTypeReferenceNode(145===t.typeArguments[0].kind?"number":"string",[]),void 0),n=e.factory.createTypeLiteralNode([e.factory.createIndexSignature(void 0,void 0,[r],t.typeArguments[1])]);return e.setEmitFlags(n,1),n}(t);var i=t.typeName.text;switch(t.typeName.text){case"String":case"Boolean":case"Object":case"Number":i=i.toLowerCase();break;case"array":case"date":case"promise":i=i[0].toUpperCase()+i.slice(1)}r=e.factory.createIdentifier(i),n="Array"!==i&&"Promise"!==i||t.typeArguments?e.visitNodes(t.typeArguments,c):e.factory.createNodeArray([e.factory.createTypeReferenceNode("any",e.emptyArray)])}return e.factory.createTypeReferenceNode(r,n)}(t);default:var r=e.visitEachChild(t,c,e.nullTransformationContext);return e.setEmitFlags(r,1),r}}function l(t){var r=t.parent.parameters.indexOf(t),n=312===t.type.kind&&r===t.parent.parameters.length-1,i=t.name||(n?"rest":"arg"+r),a=n?e.factory.createToken(25):t.dotDotDotToken;return e.factory.createParameterDeclaration(t.decorators,t.modifiers,a,i,t.questionToken,e.visitNode(t.type,c),t.initializer)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=i(n.sourceFile,n.span.start);if(a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return s(e,n.sourceFile,a)}));return[t.createCodeFixAction(r,o,e.Diagnostics.Annotate_with_type_from_JSDoc,r,e.Diagnostics.Annotate_everything_with_types_from_JSDoc)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&s(e,t.file,r)}))}}),t.parameterShouldGetTypeFromJSDoc=a}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="convertFunctionToEs6Class",n=[e.Diagnostics.This_constructor_function_may_be_converted_to_a_class_declaration.code];function i(t,r,n,i,s,c){var l=i.getSymbolAtLocation(e.getTokenAtPosition(r,n));if(l&&19&l.flags){var u=l.valueDeclaration;if(e.isFunctionDeclaration(u))t.replaceNode(r,u,function(t){var r=f(l);t.body&&r.unshift(e.factory.createConstructorDeclaration(void 0,void 0,t.parameters,t.body));var n=a(t,93);return e.factory.createClassDeclaration(void 0,n,t.name,void 0,void 0,r)}(u));else if(e.isVariableDeclaration(u)){var d=function(t){var r=t.initializer;if(!r||!e.isFunctionExpression(r)||!e.isIdentifier(t.name))return;var n=f(t.symbol);r.body&&n.unshift(e.factory.createConstructorDeclaration(void 0,void 0,r.parameters,r.body));var i=a(t.parent.parent,93);return e.factory.createClassDeclaration(void 0,i,t.name,void 0,void 0,n)}(u);if(!d)return;var p=u.parent.parent;e.isVariableDeclarationList(u.parent)&&u.parent.declarations.length>1?(t.delete(r,u),t.insertNodeAfter(r,p,d)):t.replaceNode(r,p,d)}}function f(n){var i=[];return n.members&&n.members.forEach((function(e,n){if("constructor"!==n){var a=l(e,void 0);a&&i.push.apply(i,a)}else t.delete(r,e.valueDeclaration.parent)})),n.exports&&n.exports.forEach((function(t){if("prototype"===t.name){var r=t.declarations[0];if(1===t.declarations.length&&e.isPropertyAccessExpression(r)&&e.isBinaryExpression(r.parent)&&62===r.parent.operatorToken.kind&&e.isObjectLiteralExpression(r.parent.right))(n=l(r.parent.right.symbol,void 0))&&i.push.apply(i,n)}else{var n;(n=l(t,[e.factory.createToken(124)]))&&i.push.apply(i,n)}})),i;function l(n,i){var l=[];if(!(8192&n.flags||4096&n.flags))return l;var u,d,p=n.valueDeclaration,f=p.parent,m=f.right;if(u=p,d=m,!(e.isAccessExpression(u)?e.isPropertyAccessExpression(u)&&o(u)||e.isFunctionLike(d):e.every(u.properties,(function(t){return!!(e.isMethodDeclaration(t)||e.isGetOrSetAccessorDeclaration(t)||e.isPropertyAssignment(t)&&e.isFunctionExpression(t.initializer)&&t.name||o(t))}))))return l;var g=f.parent&&235===f.parent.kind?f.parent:f;if(t.delete(r,g),!m)return l.push(e.factory.createPropertyDeclaration([],i,n.name,void 0,void 0,void 0)),l;if(e.isAccessExpression(p)&&(e.isFunctionExpression(m)||e.isArrowFunction(m))){var _=e.getQuotePreference(r,s),h=function(t,r,n){if(e.isPropertyAccessExpression(t))return t.name;var i=t.argumentExpression;if(e.isNumericLiteral(i))return i;if(e.isStringLiteralLike(i))return e.isIdentifierText(i.text,r.target)?e.factory.createIdentifier(i.text):e.isNoSubstitutionTemplateLiteral(i)?e.factory.createStringLiteral(i.text,0===n):i;return}(p,c,_);return h?v(l,m,h):l}if(e.isObjectLiteralExpression(m))return e.flatMap(m.properties,(function(t){return e.isMethodDeclaration(t)||e.isGetOrSetAccessorDeclaration(t)?l.concat(t):e.isPropertyAssignment(t)&&e.isFunctionExpression(t.initializer)?v(l,t.initializer,t.name):o(t)?l:[]}));if(e.isSourceFileJS(r))return l;if(!e.isPropertyAccessExpression(p))return l;var y=e.factory.createPropertyDeclaration(void 0,i,p.name,void 0,void 0,m);return e.copyLeadingComments(f.parent,y,r),l.push(y),l;function v(t,n,o){return e.isFunctionExpression(n)?function(t,n,o){var s=e.concatenate(i,a(n,130)),c=e.factory.createMethodDeclaration(void 0,s,void 0,o,void 0,void 0,n.parameters,void 0,n.body);return e.copyLeadingComments(f,c,r),t.concat(c)}(t,n,o):function(t,n,o){var s,c=n.body;s=232===c.kind?c:e.factory.createBlock([e.factory.createReturnStatement(c)]);var l=e.concatenate(i,a(n,130)),u=e.factory.createMethodDeclaration(void 0,l,void 0,o,void 0,void 0,n.parameters,void 0,s);return e.copyLeadingComments(f,u,r),t.concat(u)}(t,n,o)}}}}function a(t,r){return e.filter(t.modifiers,(function(e){return e.kind===r}))}function o(t){return!!t.name&&!(!e.isIdentifier(t.name)||"constructor"!==t.name.text)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start,n.program.getTypeChecker(),n.preferences,n.program.getCompilerOptions())}));return[t.createCodeFixAction(r,a,e.Diagnostics.Convert_function_to_an_ES2015_class,r,e.Diagnostics.Convert_all_constructor_functions_to_classes)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return i(t,r.file,r.start,e.program.getTypeChecker(),e.preferences,e.program.getCompilerOptions())}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r,n="convertToAsyncFunction",a=[e.Diagnostics.This_may_be_converted_to_an_async_function.code],o=!0;function s(t,r,n,i){var a,o=e.getTokenAtPosition(r,n);if(a=e.isIdentifier(o)&&e.isVariableDeclaration(o.parent)&&o.parent.initializer&&e.isFunctionLikeDeclaration(o.parent.initializer)?o.parent.initializer:e.tryCast(e.getContainingFunction(e.getTokenAtPosition(r,n)),e.isFunctionLikeDeclaration)){var s=new e.Map,d=e.isInJSFile(a),f=function(t,r){if(!t.body)return new e.Set;var n=new e.Set;return e.forEachChild(t.body,(function t(i){c(i,r,"then")?(n.add(e.getNodeId(i)),e.forEach(i.arguments,t)):c(i,r,"catch")?(n.add(e.getNodeId(i)),e.forEachChild(i,t)):l(i,r)?n.add(e.getNodeId(i)):e.forEachChild(i,t)})),n}(a,i),m=function(t,r,n){var i=new e.Map,a=e.createMultiMap();return e.forEachChild(t,(function t(o){if(e.isIdentifier(o)){var s=r.getSymbolAtLocation(o);if(s){var c=h(r.getTypeAtLocation(o),r),l=e.getSymbolId(s).toString();if(!c||e.isParameter(o.parent)||e.isFunctionLikeDeclaration(o.parent)||n.has(l)){if(o.parent&&(e.isParameter(o.parent)||e.isVariableDeclaration(o.parent)||e.isBindingElement(o.parent))){var d=o.text,p=a.get(d);if(p&&p.some((function(e){return e!==s}))){var f=u(o,a);i.set(l,f.identifier),n.set(l,f),a.add(d,s)}else{var m=e.getSynthesizedDeepClone(o);n.set(l,x(m)),a.add(d,s)}}}else{var g=e.firstOrUndefined(c.parameters),_=g&&e.isParameter(g.valueDeclaration)&&e.tryCast(g.valueDeclaration.name,e.isIdentifier)||e.factory.createUniqueName("result",16),y=u(_,a);n.set(l,y),a.add(_.text,s)}}}else e.forEachChild(o,t)})),e.getSynthesizedDeepCloneWithReplacements(t,!0,(function(t){if(e.isBindingElement(t)&&e.isIdentifier(t.name)&&e.isObjectBindingPattern(t.parent)){if((a=(n=r.getSymbolAtLocation(t.name))&&i.get(String(e.getSymbolId(n))))&&a.text!==(t.name||t.propertyName).getText())return e.factory.createBindingElement(t.dotDotDotToken,t.propertyName||t.name,a,t.initializer)}else if(e.isIdentifier(t)){var n,a;if(a=(n=r.getSymbolAtLocation(t))&&i.get(String(e.getSymbolId(n))))return e.factory.createIdentifier(a.text)}}))}(a,i,s),g=m.body&&e.isBlock(m.body)?function(t,r){var n=[];return e.forEachReturnStatement(t,(function(t){e.isReturnStatementWithFixablePromiseHandler(t,r)&&n.push(t)})),n}(m.body,i):e.emptyArray,_={checker:i,synthNamesMap:s,setOfExpressionsToReturn:f,isInJSFile:d};if(g.length){var y=a.modifiers?a.modifiers.end:a.decorators?e.skipTrivia(r.text,a.decorators.end):a.getStart(r),v=a.modifiers?{prefix:" "}:{suffix:" "};t.insertModifierAt(r,y,130,v);for(var b=function(n){e.forEachChild(n,(function i(a){if(e.isCallExpression(a)){var o=p(a,_);t.replaceNodeWithNodes(r,n,o)}else e.isFunctionLike(a)||e.forEachChild(a,i)}))},k=0,E=g;k<E.length;k++){b(E[k])}}}}function c(t,r,n){if(!e.isCallExpression(t))return!1;var i=e.hasPropertyAccessExpressionWithName(t,n)&&r.getTypeAtLocation(t);return!(!i||!r.getPromisedTypeOfPromise(i))}function l(t,r){return!!e.isExpression(t)&&!!r.getPromisedTypeOfPromise(r.getTypeAtLocation(t))}function u(t,r){var n=(r.get(t.text)||e.emptyArray).length;return x(0===n?t:e.factory.createIdentifier(t.text+"_"+n))}function d(){return o=!1,e.emptyArray}function p(t,r,n){if(c(t,r.checker,"then"))return 0===t.arguments.length?d():function(t,r,n){var i=t.arguments,a=i[0],o=i[1],s=v(a,r),c=g(a,n,s,t,r);if(o){var l=v(o,r),u=e.factory.createBlock(p(t.expression,r,s).concat(c)),d=g(o,n,l,t,r),f=l?E(l)?l.identifier.text:l.bindingPattern:"e",m=e.factory.createVariableDeclaration(f),_=e.factory.createCatchClause(m,e.factory.createBlock(d));return[e.factory.createTryStatement(u,_,void 0)]}return p(t.expression,r,s).concat(c)}(t,r,n);if(c(t,r.checker,"catch"))return function(t,r,n){var i,a=e.singleOrUndefined(t.arguments),o=a?v(a,r):void 0;n&&!S(t,r)&&(E(n)?(i=n,r.synthNamesMap.forEach((function(t,i){if(t.identifier.text===n.identifier.text){var a=function(t){var r=e.factory.createUniqueName(t.identifier.text,16);return x(r)}(n);r.synthNamesMap.set(i,a)}}))):i=x(e.factory.createUniqueName("result",16),n.types),i.hasBeenDeclared=!0);var s,c,l=e.factory.createBlock(p(t.expression,r,i)),u=a?g(a,i,o,t,r):e.emptyArray,d=o?E(o)?o.identifier.text:o.bindingPattern:"e",f=e.factory.createVariableDeclaration(d),m=e.factory.createCatchClause(f,e.factory.createBlock(u));if(i&&!S(t,r)){c=e.getSynthesizedDeepClone(i.identifier);var _=i.types,h=r.checker.getUnionType(_,2),y=r.isInJSFile?void 0:r.checker.typeToTypeNode(h,void 0,void 0),b=[e.factory.createVariableDeclaration(c,void 0,y)];s=e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList(b,1))}var k=e.factory.createTryStatement(l,m,void 0),D=n&&c&&(w=n,1===w.kind)&&e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.getSynthesizedDeepClone(n.bindingPattern),void 0,void 0,c)],2));var w;return e.compact([s,k,D])}(t,r,n);if(e.isPropertyAccessExpression(t))return p(t.expression,r,n);var i=r.checker.getTypeAtLocation(t);return i&&r.checker.getPromisedTypeOfPromise(i)?(e.Debug.assertNode(t.original.parent,e.isPropertyAccessExpression),function(t,r,n){if(S(t,r))return[e.factory.createReturnStatement(e.getSynthesizedDeepClone(t))];return f(n,e.factory.createAwaitExpression(t),void 0)}(t,r,n)):d()}function f(t,r,n){return!t||b(t)?[e.factory.createExpressionStatement(r)]:E(t)&&t.hasBeenDeclared?[e.factory.createExpressionStatement(e.factory.createAssignment(e.getSynthesizedDeepClone(t.identifier),r))]:[e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.getSynthesizedDeepClone(k(t)),void 0,n,r)],2))]}function m(t,r){if(r&&t){var n=e.factory.createUniqueName("result",16);return i(i([],f(x(n),t,r)),[e.factory.createReturnStatement(n)])}return[e.factory.createReturnStatement(t)]}function g(t,r,n,i,a){var o,s,c,u,p;switch(t.kind){case 104:break;case 202:case 78:if(!n)break;var g=e.factory.createCallExpression(e.getSynthesizedDeepClone(t),void 0,E(n)?[n.identifier]:[]);if(S(i,a))return m(g,null===(o=i.typeArguments)||void 0===o?void 0:o[0]);var v=a.checker.getTypeAtLocation(t),b=a.checker.getSignaturesOfType(v,0);if(!b.length)return d();var x=b[0].getReturnType(),D=f(r,e.factory.createAwaitExpression(g),null===(s=i.typeArguments)||void 0===s?void 0:s[0]);return r&&r.types.push(x),D;case 209:case 210:var w=t.body,T=null===(c=h(a.checker.getTypeAtLocation(t),a.checker))||void 0===c?void 0:c.getReturnType();if(e.isBlock(w)){for(var C=[],A=!1,N=0,P=w.statements;N<P.length;N++){var I=P[N];if(e.isReturnStatement(I))if(A=!0,e.isReturnStatementWithFixablePromiseHandler(I,a.checker))C=C.concat(y(a,[I],r));else{var F=T&&I.expression?_(a.checker,T,I.expression):I.expression;C.push.apply(C,m(F,null===(u=i.typeArguments)||void 0===u?void 0:u[0]))}else C.push(I)}return S(i,a)?C.map((function(t){return e.getSynthesizedDeepClone(t)})):function(t,r,n,i){for(var a=[],o=0,s=t;o<s.length;o++){var c=s[o];if(e.isReturnStatement(c)){if(c.expression){var u=l(c.expression,n.checker)?e.factory.createAwaitExpression(c.expression):c.expression;void 0===r?a.push(e.factory.createExpressionStatement(u)):a.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(k(r),void 0,void 0,u)],2)))}}else a.push(e.getSynthesizedDeepClone(c))}i||void 0===r||a.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(k(r),void 0,void 0,e.factory.createIdentifier("undefined"))],2)));return a}(C,r,a,A)}var O=y(a,e.isFixablePromiseHandler(w,a.checker)?[e.factory.createReturnStatement(w)]:e.emptyArray,r);if(O.length>0)return O;if(T){F=_(a.checker,T,w);if(S(i,a))return m(F,null===(p=i.typeArguments)||void 0===p?void 0:p[0]);var R=f(r,F,void 0);return r&&r.types.push(T),R}return d();default:return d()}return e.emptyArray}function _(t,r,n){var i=e.getSynthesizedDeepClone(n);return t.getPromisedTypeOfPromise(r)?e.factory.createAwaitExpression(i):i}function h(t,r){var n=r.getSignaturesOfType(t,0);return e.lastOrUndefined(n)}function y(t,r,n){for(var i=[],a=0,o=r;a<o.length;a++){var s=o[a];e.forEachChild(s,(function r(a){if(e.isCallExpression(a)){var o=p(a,t,n);if((i=i.concat(o)).length>0)return}else e.isFunctionLike(a)||e.forEachChild(a,r)}))}return i}function v(t,r){var n,i=[];e.isFunctionLikeDeclaration(t)?t.parameters.length>0&&(n=function t(r){if(e.isIdentifier(r))return a(r);var n=e.flatMap(r.elements,(function(r){return e.isOmittedExpression(r)?[]:[t(r.name)]}));return function(t,r,n){void 0===r&&(r=e.emptyArray);void 0===n&&(n=[]);return{kind:1,bindingPattern:t,elements:r,types:n}}(r,n)}(t.parameters[0].name)):e.isIdentifier(t)?n=a(t):e.isPropertyAccessExpression(t)&&e.isIdentifier(t.name)&&(n=a(t.name));if(n&&(!("identifier"in n)||"undefined"!==n.identifier.text))return n;function a(t){var n,a=function(e){return e.symbol?e.symbol:r.checker.getSymbolAtLocation(e)}((n=t).original?n.original:n);return a&&r.synthNamesMap.get(e.getSymbolId(a).toString())||x(t,i)}}function b(t){return!t||(E(t)?!t.identifier.text:e.every(t.elements,b))}function k(e){return E(e)?e.identifier:e.bindingPattern}function x(e,t){return void 0===t&&(t=[]),{kind:0,identifier:e,types:t,hasBeenDeclared:!1}}function E(e){return 0===e.kind}function S(t,r){return!!t.original&&r.setOfExpressionsToReturn.has(e.getNodeId(t.original))}t.registerCodeFix({errorCodes:a,getCodeActions:function(r){o=!0;var i=e.textChanges.ChangeTracker.with(r,(function(e){return s(e,r.sourceFile,r.span.start,r.program.getTypeChecker())}));return o?[t.createCodeFixAction(n,i,e.Diagnostics.Convert_to_async_function,n,e.Diagnostics.Convert_all_to_async_functions)]:[]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,a,(function(t,r){return s(t,r.file,r.start,e.program.getTypeChecker())}))}}),function(e){e[e.Identifier=0]="Identifier",e[e.BindingPattern=1]="BindingPattern"}(r||(r={}))}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){function r(t,r,n,i){for(var a=0,o=t.imports;a<o.length;a++){var s=o[a],c=e.getResolvedModule(t,s.text);if(c&&c.resolvedFileName===r.fileName){var l=e.importFromModuleSpecifier(s);switch(l.kind){case 263:n.replaceNode(t,l,e.makeImport(l.name,void 0,s,i));break;case 204:e.isRequireCall(l,!1)&&n.replaceNode(t,l,e.factory.createPropertyAccessExpression(e.getSynthesizedDeepClone(l),"default"))}}}}function n(t,r){t.forEachChild((function n(i){if(e.isPropertyAccessExpression(i)&&e.isExportsOrModuleExportsOrAlias(t,i.expression)&&e.isIdentifier(i.name)){var a=i.parent;r(i,e.isBinaryExpression(a)&&a.left===i&&62===a.operatorToken.kind)}i.forEachChild(n)}))}function i(t,r,n,i,l,u,d,f,m){switch(r.kind){case 234:return a(t,r,i,n,l,u,m),!1;case 235:var h=r.expression;switch(h.kind){case 204:return e.isRequireCall(h,!0)&&i.replaceNode(t,r,e.makeImport(void 0,void 0,h.arguments[0],m)),!1;case 218:return 62===h.operatorToken.kind&&function(t,r,n,i,a,l){var u=n.left,d=n.right;if(!e.isPropertyAccessExpression(u))return!1;if(e.isExportsOrModuleExportsOrAlias(t,u)){if(!e.isExportsOrModuleExportsOrAlias(t,d)){var f=e.isObjectLiteralExpression(d)?function(t,r){var n=e.mapAllOrFail(t.properties,(function(t){switch(t.kind){case 168:case 169:case 292:case 293:return;case 291:return e.isIdentifier(t.name)?function(t,r,n){var i=[e.factory.createToken(93)];switch(r.kind){case 209:var a=r.name;if(a&&a.text!==t)return o();case 210:return p(t,i,r,n);case 223:return function(t,r,n,i){return e.factory.createClassDeclaration(e.getSynthesizedDeepClones(n.decorators),e.concatenate(r,e.getSynthesizedDeepClones(n.modifiers)),t,e.getSynthesizedDeepClones(n.typeParameters),e.getSynthesizedDeepClones(n.heritageClauses),c(n.members,i))}(t,i,r,n);default:return o()}function o(){return g(i,e.factory.createIdentifier(t),c(r,n))}}(t.name.text,t.initializer,r):void 0;case 166:return e.isIdentifier(t.name)?p(t.name.text,[e.factory.createToken(93)],t,r):void 0;default:e.Debug.assertNever(t,"Convert to ES6 got invalid prop kind "+t.kind)}}));return n&&[n,!1]}(d,l):e.isRequireCall(d,!0)?function(t,r){var n=t.text,i=r.getSymbolAtLocation(t),a=i?i.exports:e.emptyMap;return a.has("export=")?[[s(n)],!0]:a.has("default")?a.size>1?[[o(n),s(n)],!0]:[[s(n)],!0]:[[o(n)],!1]}(d.arguments[0],r):void 0;return f?(i.replaceNodeWithNodes(t,n.parent,f[0]),f[1]):(i.replaceRangeWithText(t,e.createRange(u.getStart(t),d.pos),"export default"),!0)}i.delete(t,n.parent)}else e.isExportsOrModuleExportsOrAlias(t,u.expression)&&function(t,r,n,i){var a=r.left.name.text,o=i.get(a);if(void 0!==o){var s=[g(void 0,o,r.right),_([e.factory.createExportSpecifier(o,a)])];n.replaceNodeWithNodes(t,r.parent,s)}else!function(t,r,n){var i=t.left,a=t.right,o=t.parent,s=i.name.text;if(!(e.isFunctionExpression(a)||e.isArrowFunction(a)||e.isClassExpression(a))||a.name&&a.name.text!==s)n.replaceNodeRangeWithNodes(r,i.expression,e.findChildOfKind(i,24,r),[e.factory.createToken(93),e.factory.createToken(85)],{joiner:" ",suffix:" "});else{n.replaceRange(r,{pos:i.getStart(r),end:a.getStart(r)},e.factory.createToken(93),{suffix:" "}),a.name||n.insertName(r,a,s);var c=e.findChildOfKind(o,26,r);c&&n.delete(r,c)}}(r,t,n)}(t,n,i,a);return!1}(t,n,h,i,d,f)}default:return!1}}function a(r,n,i,a,o,s,c){var u,d=n.declarationList,p=!1,_=e.map(d.declarations,(function(n){var i=n.name,u=n.initializer;if(u){if(e.isExportsOrModuleExportsOrAlias(r,u))return p=!0,h([]);if(e.isRequireCall(u,!0))return p=!0,function(r,n,i,a,o,s){switch(r.kind){case 197:var c=e.mapAllOrFail(r.elements,(function(t){return t.dotDotDotToken||t.initializer||t.propertyName&&!e.isIdentifier(t.propertyName)||!e.isIdentifier(t.name)?void 0:m(t.propertyName&&t.propertyName.text,t.name.text)}));if(c)return h([e.makeImport(void 0,c,n,s)]);case 198:var u=l(t.moduleSpecifierToValidIdentifier(n.text,o),a);return h([e.makeImport(e.factory.createIdentifier(u),void 0,n,s),g(void 0,e.getSynthesizedDeepClone(r),e.factory.createIdentifier(u))]);case 78:return function(t,r,n,i,a){for(var o,s=n.getSymbolAtLocation(t),c=new e.Map,u=!1,d=0,p=i.original.get(t.text);d<p.length;d++){var f=p[d];if(n.getSymbolAtLocation(f)===s&&f!==t){var m=f.parent;if(e.isPropertyAccessExpression(m)){var g=m.expression,_=m.name.text;e.Debug.assert(g===f,"Didn't expect expression === use");var y=c.get(_);void 0===y&&(y=l(_,i),c.set(_,y)),(null!=o?o:o=new e.Map).set(m,e.factory.createIdentifier(y))}else u=!0}}var v=0===c.size?void 0:e.arrayFrom(e.mapIterator(c.entries(),(function(t){var r=t[0],n=t[1];return e.factory.createImportSpecifier(r===n?void 0:e.factory.createIdentifier(r),e.factory.createIdentifier(n))})));v||(u=!0);return h([e.makeImport(u?e.getSynthesizedDeepClone(t):void 0,v,r,a)],o)}(r,n,i,a,s);default:return e.Debug.assertNever(r,"Convert to ES6 module got invalid name kind "+r.kind)}}(i,u.arguments[0],a,o,s,c);if(e.isPropertyAccessExpression(u)&&e.isRequireCall(u.expression,!0))return p=!0,function(t,r,n,i,a){switch(t.kind){case 197:case 198:var o=l(r,i);return h([f(o,r,n,a),g(void 0,t,e.factory.createIdentifier(o))]);case 78:return h([f(t.text,r,n,a)]);default:return e.Debug.assertNever(t,"Convert to ES6 module got invalid syntax form "+t.kind)}}(i,u.name.text,u.expression.arguments[0],o,c)}return h([e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([n],d.flags))])}));if(p)return i.replaceNodeWithNodes(r,n,e.flatMap(_,(function(e){return e.newImports}))),e.forEach(_,(function(t){t.useSitesToUnqualify&&e.copyEntries(t.useSitesToUnqualify,null!=u?u:u=new e.Map)})),u}function o(e){return _(void 0,e)}function s(t){return _([e.factory.createExportSpecifier(void 0,"default")],t)}function c(t,r){return r&&e.some(e.arrayFrom(r.keys()),(function(r){return e.rangeContainsRange(t,r)}))?e.isArray(t)?e.getSynthesizedDeepClonesWithReplacements(t,!0,n):e.getSynthesizedDeepCloneWithReplacements(t,!0,n):t;function n(e){if(202===e.kind){var t=r.get(e);return r.delete(e),t}}}function l(e,t){for(;t.original.has(e)||t.additional.has(e);)e="_"+e;return t.additional.add(e),e}function u(t){var r=e.createMultiMap();return d(t,(function(e){return r.add(e.text,e)})),r}function d(t,r){e.isIdentifier(t)&&function(e){var t=e.parent;switch(t.kind){case 202:return t.name!==e;case 199:case 268:return t.propertyName!==e;default:return!0}}(t)&&r(t),t.forEachChild((function(e){return d(e,r)}))}function p(t,r,n,i){return e.factory.createFunctionDeclaration(e.getSynthesizedDeepClones(n.decorators),e.concatenate(r,e.getSynthesizedDeepClones(n.modifiers)),e.getSynthesizedDeepClone(n.asteriskToken),t,e.getSynthesizedDeepClones(n.typeParameters),e.getSynthesizedDeepClones(n.parameters),e.getSynthesizedDeepClone(n.type),e.factory.converters.convertToFunctionBlock(c(n.body,i)))}function f(t,r,n,i){return"default"===r?e.makeImport(e.factory.createIdentifier(t),void 0,n,i):e.makeImport(void 0,[m(r,t)],n,i)}function m(t,r){return e.factory.createImportSpecifier(void 0!==t&&t!==r?e.factory.createIdentifier(t):void 0,e.factory.createIdentifier(r))}function g(t,r,n){return e.factory.createVariableStatement(t,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(r,void 0,void 0,n)],2))}function _(t,r){return e.factory.createExportDeclaration(void 0,void 0,!1,t&&e.factory.createNamedExports(t),void 0===r?void 0:e.factory.createStringLiteral(r))}function h(e,t){return{newImports:e,useSitesToUnqualify:t}}t.registerCodeFix({errorCodes:[e.Diagnostics.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module.code],getCodeActions:function(o){var s=o.sourceFile,c=o.program,d=o.preferences,p=e.textChanges.ChangeTracker.with(o,(function(t){var o=function(t,r,o,s,c){var d={original:u(t),additional:new e.Set},p=function(t,r,i){var a=new e.Map;return n(t,(function(t){var n=t.name,o=n.text,s=n.originalKeywordKind;!a.has(o)&&(void 0!==s&&e.isNonContextualKeyword(s)||r.resolveName(o,t,111551,!0))&&a.set(o,l("_"+o,i))})),a}(t,r,d);!function(t,r,i){n(t,(function(n,a){if(!a){var o=n.name.text;i.replaceNode(t,n,e.factory.createIdentifier(r.get(o)||o))}}))}(t,p,o);for(var f,m=!1,g=0,_=e.filter(t.statements,e.isVariableStatement);g<_.length;g++){var h=_[g],y=a(t,h,o,r,d,s,c);y&&e.copyEntries(y,null!=f?f:f=new e.Map)}for(var v=0,b=e.filter(t.statements,(function(t){return!e.isVariableStatement(t)}));v<b.length;v++){h=b[v];var k=i(t,h,r,o,d,s,p,f,c);m=m||k}return null==f||f.forEach((function(e,r){o.replaceNode(t,r,e)})),m}(s,c.getTypeChecker(),t,c.getCompilerOptions().target,e.getQuotePreference(s,d));if(o)for(var p=0,f=c.getSourceFiles();p<f.length;p++){var m=f[p];r(m,s,t,e.getQuotePreference(m,d))}}));return[t.createCodeFixActionWithoutFixAll("convertToEs6Module",p,e.Diagnostics.Convert_to_ES6_module)]}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="correctQualifiedNameToIndexedAccessType",n=[e.Diagnostics.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code];function i(t,r){var n=e.findAncestor(e.getTokenAtPosition(t,r),e.isQualifiedName);return e.Debug.assert(!!n,"Expected position to be owned by a qualified name."),e.isIdentifier(n.left)?n:void 0}function a(t,r,n){var i=n.right.text,a=e.factory.createIndexedAccessTypeNode(e.factory.createTypeReferenceNode(n.left,void 0),e.factory.createLiteralTypeNode(e.factory.createStringLiteral(i)));t.replaceNode(r,n,a)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=i(n.sourceFile,n.span.start);if(o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,n.sourceFile,o)})),c=o.left.text+'["'+o.right.text+'"]';return[t.createCodeFixAction(r,s,[e.Diagnostics.Rewrite_as_the_indexed_access_type_0,c],r,e.Diagnostics.Rewrite_all_as_indexed_access_types)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&a(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type.code],n="convertToTypeOnlyExport";function i(t,r){return e.tryCast(e.getTokenAtPosition(r,t.start).parent,e.isExportSpecifier)}function a(t,n,i){if(n){var a=n.parent,o=a.parent,s=function(t,n){var i=t.parent;if(1===i.elements.length)return i.elements;var a=e.getDiagnosticsWithinSpan(e.createTextSpanFromNode(i),n.program.getSemanticDiagnostics(n.sourceFile,n.cancellationToken));return e.filter(i.elements,(function(n){var i;return n===t||(null===(i=e.findDiagnosticForNode(n,a))||void 0===i?void 0:i.code)===r[0]}))}(n,i);if(s.length===a.elements.length)t.insertModifierBefore(i.sourceFile,150,a);else{var c=e.factory.updateExportDeclaration(o,o.decorators,o.modifiers,!1,e.factory.updateNamedExports(a,e.filter(a.elements,(function(t){return!e.contains(s,t)}))),o.moduleSpecifier),l=e.factory.createExportDeclaration(void 0,void 0,!0,e.factory.createNamedExports(s),o.moduleSpecifier);t.replaceNode(i.sourceFile,o,c,{leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Exclude}),t.insertNodeAfter(i.sourceFile,o,l)}}}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var o=e.textChanges.ChangeTracker.with(r,(function(e){return a(e,i(r.span,r.sourceFile),r)}));if(o.length)return[t.createCodeFixAction(n,o,e.Diagnostics.Convert_to_type_only_export,n,e.Diagnostics.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[n],getAllCodeActions:function(n){var o=new e.Map;return t.codeFixAll(n,r,(function(t,r){var s=i(r,n.sourceFile);s&&e.addToSeen(o,e.getNodeId(s.parent.parent))&&a(t,s,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error.code],n="convertToTypeOnlyImport";function i(t,r){return e.tryCast(e.getTokenAtPosition(r,t.start).parent,e.isImportDeclaration)}function a(t,r,n){if(null==r?void 0:r.importClause){var i=r.importClause;t.insertText(n.sourceFile,r.getStart()+6," type"),i.name&&i.namedBindings&&(t.deleteNodeRangeExcludingEnd(n.sourceFile,i.name,r.importClause.namedBindings),t.insertNodeBefore(n.sourceFile,r,e.factory.updateImportDeclaration(r,void 0,void 0,e.factory.createImportClause(!0,i.name,void 0),r.moduleSpecifier)))}}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var o=e.textChanges.ChangeTracker.with(r,(function(e){a(e,i(r.span,r.sourceFile),r)}));if(o.length)return[t.createCodeFixAction(n,o,e.Diagnostics.Convert_to_type_only_import,n,e.Diagnostics.Convert_all_imports_not_used_as_a_value_to_type_only_imports)]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,r,(function(t,r){a(t,i(r,e.sourceFile),e)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="convertLiteralTypeToMappedType",n=[e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];function i(t,r){var n=e.getTokenAtPosition(t,r);if(e.isIdentifier(n)){var i=e.cast(n.parent.parent,e.isPropertySignature),a=n.getText(t);return{container:e.cast(i.parent,e.isTypeLiteralNode),typeNode:i.type,constraint:a,name:"K"===a?"P":"K"}}}function a(t,r,n){var i=n.container,a=n.typeNode,o=n.constraint,s=n.name;t.replaceNode(r,i,e.factory.createMappedTypeNode(void 0,e.factory.createTypeParameterDeclaration(s,e.factory.createTypeReferenceNode(o)),void 0,void 0,a))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start);if(c){var l=c.name,u=c.constraint,d=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,d,[e.Diagnostics.Convert_0_to_1_in_0,u,l],r,e.Diagnostics.Convert_all_type_literals_to_mapped_type)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&a(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.Class_0_incorrectly_implements_interface_1.code,e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],n="fixClassIncorrectlyImplementsInterface";function i(t,r){return e.Debug.checkDefined(e.getContainingClass(e.getTokenAtPosition(t,r)),"There should be a containing class")}function a(t){return!(t.valueDeclaration&&8&e.getEffectiveModifierFlags(t.valueDeclaration))}function o(r,n,i,o,s,c){var l=r.program.getTypeChecker(),u=function(t,r){var n=e.getEffectiveBaseTypeNode(t);if(!n)return e.createSymbolTable();var i=r.getTypeAtLocation(n),o=r.getPropertiesOfType(i);return e.createSymbolTable(o.filter(a))}(o,l),d=l.getTypeAtLocation(n),p=l.getPropertiesOfType(d).filter(e.and(a,(function(e){return!u.has(e.escapedName)}))),f=l.getTypeAtLocation(o),m=e.find(o.members,(function(t){return e.isConstructorDeclaration(t)}));f.getNumberIndexType()||_(d,1),f.getStringIndexType()||_(d,0);var g=t.createImportAdder(i,r.program,c,r.host);function _(e,n){var a=l.getIndexInfoOfType(e,n);a&&h(i,o,l.indexInfoToIndexSignatureDeclaration(a,n,o,void 0,t.getNoopSymbolTrackerWithResolver(r)))}function h(e,t,r){m?s.insertNodeAfter(e,m,r):s.insertNodeAtClassStart(e,t,r)}t.createMissingMemberNodes(o,p,i,r,c,g,(function(e){return h(i,o,e)})),g.writeFixes(s)}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var a=r.sourceFile,s=r.span,c=i(a,s.start);return e.mapDefined(e.getEffectiveImplementsTypeNodes(c),(function(i){var s=e.textChanges.ChangeTracker.with(r,(function(e){return o(r,i,a,c,e,r.preferences)}));return 0===s.length?void 0:t.createCodeFixAction(n,s,[e.Diagnostics.Implement_interface_0,i.getText(a)],n,e.Diagnostics.Implement_all_unimplemented_interfaces)}))},fixIds:[n],getAllCodeActions:function(n){var a=new e.Map;return t.codeFixAll(n,r,(function(t,r){var s=i(r.file,r.start);if(e.addToSeen(a,e.getNodeId(s)))for(var c=0,l=e.getEffectiveImplementsTypeNodes(s);c<l.length;c++){var u=l[c];o(n,u,r.file,s,t,n.preferences)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){t.importFixName="import";var r,n,o="fixMissingImport",s=[e.Diagnostics.Cannot_find_name_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,e.Diagnostics.Cannot_find_namespace_0.code,e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code];function l(t,r,n,i,a){var o=r.getCompilerOptions(),s=[],l=[],d=new e.Map,f=new e.Map;return{addImportFromDiagnostic:function(e,t){var r=h(t,e.code,e.start,n);if(!r||!r.fixes.length)return;m(r)},addImportFromExportedSymbol:function(s,c){var l=e.Debug.checkDefined(s.parent),d=e.getNameForExportedSymbol(s,e.getEmitScriptTarget(o)),f=r.getTypeChecker(),_=f.getMergedSymbol(e.skipAlias(s,f)),h=p(t,_,l,d,a,r,n),y=!!c&&2===o.importsNotUsedAsValues,v=g(t,r);m({fixes:[u(t,h,l,d,r,void 0,y,v,a,i)],symbolName:d})},writeFixes:function(r){for(var n,a=e.getQuotePreference(t,i),o=0,u=s;o<u.length;o++){var p=u[o];w(r,t,p)}for(var m=0,g=l;m<g.length;m++){p=g[m];T(r,t,p,a)}d.forEach((function(e){var n=e.importClauseOrBindingPattern,i=e.defaultImport,a=e.namedImports,o=e.canUseTypeOnlyImport;D(r,t,n,i,a,o)})),f.forEach((function(t,r){var i=t.useRequire,o=c(t,["useRequire"]),s=i?N:A;n=e.combine(n,s(r,a,o))})),n&&e.insertImports(r,t,n,!0)}};function m(t){var r=t.fixes,n=t.symbolName,i=e.first(r);switch(i.kind){case 0:s.push(i);break;case 1:l.push(i);break;case 2:var a=i.importClauseOrBindingPattern,o=i.importKind,c=i.canUseTypeOnlyImport,u=String(e.getNodeId(a));(p=d.get(u))||d.set(u,p={importClauseOrBindingPattern:a,defaultImport:void 0,namedImports:[],canUseTypeOnlyImport:c}),0===o?e.pushIfUnique(p.namedImports,n):(e.Debug.assert(void 0===p.defaultImport||p.defaultImport===n,"(Add to Existing) Default import should be missing or match symbolName"),p.defaultImport=n);break;case 3:var p,m=i.moduleSpecifier,g=(o=i.importKind,i.useRequire),_=i.typeOnly;switch((p=f.get(m))?p.typeOnly=p.typeOnly&&_:f.set(m,p={namedImports:[],namespaceLikeImport:void 0,typeOnly:_,useRequire:g}),o){case 1:e.Debug.assert(void 0===p.defaultImport||p.defaultImport===n,"(Add new) Default import should be missing or match symbolName"),p.defaultImport=n;break;case 0:e.pushIfUnique(p.namedImports||(p.namedImports=[]),n);break;case 3:case 2:e.Debug.assert(void 0===p.namespaceLikeImport||p.namespaceLikeImport.name===n,"Namespacelike import shoudl be missing or match symbolName"),p.namespaceLikeImport={importKind:o,name:n}}break;default:e.Debug.assertNever(i,"fix wasn't never - got kind "+i.kind)}}}function u(t,r,n,i,a,o,s,c,l,u){return e.Debug.assert(r.some((function(e){return e.moduleSymbol===n})),"Some exportInfo should match the specified moduleSymbol"),y(m(r,i,o,s,c,a,t,l,u),t,a,l)}function d(t,r,n,i,a){var o,s,c=i.getCompilerOptions(),l=d(i.getTypeChecker());if(l)return l;var u=null===(s=null===(o=a.getPackageJsonAutoImportProvider)||void 0===o?void 0:o.call(a))||void 0===s?void 0:s.getTypeChecker();return e.Debug.checkDefined(u&&d(u),"Could not find symbol in specified module for code actions");function d(i){var a=k(n,r,i,c);if(a&&e.skipAlias(a.symbol,i)===t)return{moduleSymbol:r,importKind:a.kind,exportedSymbolIsTypeOnly:f(t,i)};var o=i.tryGetMemberInModuleExportsAndProperties(t.name,r);return o&&e.skipAlias(o,i)===t?{moduleSymbol:r,importKind:0,exportedSymbolIsTypeOnly:f(t,i)}:void 0}}function p(t,r,n,i,a,o,s){var c=[],l=o.getCompilerOptions();return F(o,a,t,!1,s,(function(a,o,s){var u=s.getTypeChecker();if(!o||a===n||!e.startsWith(t.fileName,e.getDirectoryPath(o.fileName))){var d=k(t,a,u,l);!d||d.name!==i&&R(a,l.target)!==i||e.skipAlias(d.symbol,u)!==r||c.push({moduleSymbol:a,importKind:d.kind,exportedSymbolIsTypeOnly:f(d.symbol,u)});for(var p=0,m=u.getExportsAndPropertiesOfModule(a);p<m.length;p++){var g=m[p];g.name===i&&e.skipAlias(g,u)===r&&c.push({moduleSymbol:a,importKind:0,exportedSymbolIsTypeOnly:f(g,u)})}}})),c}function f(t,r){return!(111551&e.skipAlias(t,r).flags)}function m(t,r,n,a,o,s,c,l,u){var d=s.getTypeChecker(),p=e.flatMap(t,(function(t){return function(t,r,n){var i=t.moduleSymbol,a=t.importKind;return t.exportedSymbolIsTypeOnly&&e.isSourceFileJS(n)?e.emptyArray:e.mapDefined(n.imports,(function(t){var n=e.importFromModuleSpecifier(t);return e.isRequireVariableDeclaration(n.parent,!0)?r.resolveExternalModuleName(t)===i?{declaration:n.parent,importKind:a}:void 0:(264===n.kind||263===n.kind)&&r.getSymbolAtLocation(t)===i?{declaration:n,importKind:a}:void 0}))}(t,d,c)})),f=void 0===n?void 0:function(t,r,n,i){return e.firstDefined(t,(function(t){var a=t.declaration,o=function(t){var r,n,i;switch(t.kind){case 251:return null===(r=e.tryCast(t.name,e.isIdentifier))||void 0===r?void 0:r.text;case 263:return t.name.text;case 264:return null===(i=e.tryCast(null===(n=t.importClause)||void 0===n?void 0:n.namedBindings,e.isNamespaceImport))||void 0===i?void 0:i.name.text;default:return e.Debug.assertNever(t)}}(a);if(o){var s=function(t,r){var n;switch(t.kind){case 251:return r.resolveExternalModuleName(t.initializer.arguments[0]);case 263:return r.getAliasedSymbol(t.symbol);case 264:var i=e.tryCast(null===(n=t.importClause)||void 0===n?void 0:n.namedBindings,e.isNamespaceImport);return i&&r.getAliasedSymbol(i.symbol);default:return e.Debug.assertNever(t)}}(a,i);if(s&&s.exports.has(e.escapeLeadingUnderscores(r)))return{kind:0,namespacePrefix:o,position:n}}}))}(p,r,n,d),m=function(t,r){return e.firstDefined(t,(function(e){var t=e.declaration,n=e.importKind;if(263!==t.kind){if(251===t.kind)return 0!==n&&1!==n||197!==t.name.kind?void 0:{kind:2,importClauseOrBindingPattern:t.name,importKind:n,moduleSpecifier:t.initializer.arguments[0].text,canUseTypeOnlyImport:!1};var i=t.importClause;if(i){var a=i.name,o=i.namedBindings;return 1===n&&!a||0===n&&(!o||267===o.kind)?{kind:2,importClauseOrBindingPattern:i,importKind:n,moduleSpecifier:t.moduleSpecifier.getText(),canUseTypeOnlyImport:r}:void 0}}}))}(p,void 0!==n&&function(t,r){return e.isValidTypeOnlyAliasUseSite(e.getTokenAtPosition(t,r))}(c,n)),g=m?[m]:function(t,r,n,i,a,o,s,c,l){var u=e.firstDefined(r,(function(t){return function(t,r,n){var i=t.declaration,a=t.importKind,o=264===i.kind?i.moduleSpecifier:251===i.kind?i.initializer.arguments[0]:275===i.moduleReference.kind?i.moduleReference.expression:void 0;return o&&e.isStringLiteral(o)?{kind:3,moduleSpecifier:o.text,importKind:a,typeOnly:r,useRequire:n}:void 0}(t,o,s)}));return u?[u]:_(n,i,a,o,s,t,c,l)}(t,p,s,c,n,a,o,l,u);return i(i([],f?[f]:e.emptyArray),g)}function g(t,r){if(!e.isSourceFileJS(t))return!1;if(t.commonJsModuleIndicator&&!t.externalModuleIndicator)return!0;if(t.externalModuleIndicator&&!t.commonJsModuleIndicator)return!1;var n=r.getCompilerOptions();if(n.configFile)return e.getEmitModuleKind(n)<e.ModuleKind.ES2015;for(var i=0,a=r.getSourceFiles();i<a.length;i++){var o=a[i];if(o!==t&&e.isSourceFileJS(o)&&!r.isSourceFileFromExternalLibrary(o)){if(o.commonJsModuleIndicator&&!o.externalModuleIndicator)return!0;if(o.externalModuleIndicator&&!o.commonJsModuleIndicator)return!1}}return!0}function _(t,r,n,i,a,o,s,c){var l=e.isSourceFileJS(r),u=t.getCompilerOptions();return e.flatMap(o,(function(o){var d=o.moduleSymbol,p=o.importKind,f=o.exportedSymbolIsTypeOnly;return e.moduleSpecifiers.getModuleSpecifiers(d,t.getTypeChecker(),u,r,e.createModuleSpecifierResolutionHost(t,s),c).map((function(t){return f&&l?{kind:1,moduleSpecifier:t,position:e.Debug.checkDefined(n,"position should be defined")}:{kind:3,moduleSpecifier:t,importKind:p,useRequire:a,typeOnly:i}}))}))}function h(t,r,n,i){var o,s,c,l,u,d=e.getTokenAtPosition(t.sourceFile,n),p=r===e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code?function(t,r){var n=t.sourceFile,i=t.program,a=t.host,o=t.preferences,s=i.getTypeChecker(),c=function(t,r){var n=e.isIdentifier(t)?r.getSymbolAtLocation(t):void 0;if(e.isUMDExportSymbol(n))return n;var i=t.parent;return e.isJsxOpeningLikeElement(i)&&i.tagName===t||e.isJsxOpeningFragment(i)?e.tryCast(r.resolveName(r.getJsxNamespace(i),e.isJsxOpeningLikeElement(i)?t:i,111551,!1),e.isUMDExportSymbol):void 0}(r,s);if(!c)return;var l=s.getAliasedSymbol(c),u=c.name,d=[{moduleSymbol:l,importKind:b(n,i.getCompilerOptions()),exportedSymbolIsTypeOnly:!1}],p=g(n,i);return{fixes:m(d,u,e.isIdentifier(r)?r.getStart(n):void 0,!1,p,i,n,a,o),symbolName:u}}(t,d):e.isIdentifier(d)?function(t,r,n){var i=t.sourceFile,a=t.program,o=t.cancellationToken,s=t.host,c=t.preferences,l=a.getTypeChecker(),u=function(t,r,n){var i=n.parent;if((e.isJsxOpeningLikeElement(i)||e.isJsxClosingElement(i))&&i.tagName===n){var a=r.getJsxNamespace(t);if(e.isIntrinsicJsxName(n.text)||!r.resolveName(a,i,111551,!0))return a}return n.text}(i,l,r);e.Debug.assert("default"!==u,"'default' isn't a legal identifier and couldn't occur here");var d=2===a.getCompilerOptions().importsNotUsedAsValues&&e.isValidTypeOnlyAliasUseSite(r),p=g(i,a),_=function(t,r,n,i,a,o,s){var c=e.createMultiMap();function l(t,r,n,i){c.add(e.getUniqueSymbolId(r,i).toString(),{moduleSymbol:t,importKind:n,exportedSymbolIsTypeOnly:f(r,i)})}return F(a,s,i,!0,o,(function(e,a,o){var s=o.getTypeChecker();n.throwIfCancellationRequested();var c=o.getCompilerOptions(),u=k(i,e,s,c);u&&(u.name===t||R(e,c.target)===t)&&I(u.symbolForMeaning,r)&&l(e,u.symbol,u.kind,s);var d=s.tryGetMemberInModuleExportsAndProperties(t,e);d&&I(d,r)&&l(e,d,0,s)})),c}(u,e.getMeaningFromLocation(r),o,i,a,n,s),h=e.arrayFrom(e.flatMapIterator(_.entries(),(function(e){e[0];return m(e[1],u,r.getStart(i),d,p,a,i,s,c)})));return{fixes:h,symbolName:u}}(t,d,i):void 0;return p&&a(a({},p),{fixes:(o=p.fixes,s=t.sourceFile,c=t.program,l=t.host,u=L(s,c,l).allowsImportingSpecifier,e.sort(o,(function(t,r){return e.compareValues(t.kind,r.kind)||v(t,r,u)})))})}function y(e,t,r,n){if(0===e[0].kind||2===e[0].kind)return e[0];var i=L(t,r,n).allowsImportingSpecifier;return e.reduce((function(e,t){return-1===v(t,e,i)?t:e}))}function v(t,r,n){return 0!==t.kind&&0!==r.kind?e.compareBooleans(n(t.moduleSpecifier),n(r.moduleSpecifier))||e.compareNumberOfDirectorySeparators(t.moduleSpecifier,r.moduleSpecifier):0}function b(t,r){if(e.getAllowSyntheticDefaultImports(r))return 1;var n=e.getEmitModuleKind(r);switch(n){case e.ModuleKind.AMD:case e.ModuleKind.CommonJS:case e.ModuleKind.UMD:return e.isInJSFile(t)&&e.isExternalModule(t)?2:3;case e.ModuleKind.System:case e.ModuleKind.ES2015:case e.ModuleKind.ES2020:case e.ModuleKind.ESNext:case e.ModuleKind.None:return 2;default:return e.Debug.assertNever(n,"Unexpected moduleKind "+n)}}function k(e,t,r,n){var i=function(e,t,r,n){var i=r.tryGetMemberInModuleExports("default",t);if(i)return{symbol:i,kind:1};var a=r.resolveExternalModuleSymbol(t);return a===t?void 0:{symbol:a,kind:x(e,n)}}(e,t,r,n);if(i){var o=i.symbol,s=i.kind,c=E(o,r,n);return c&&a({symbol:o,kind:s},c)}}function x(t,r){var n=e.getAllowSyntheticDefaultImports(r);if(e.getEmitModuleKind(r)>=e.ModuleKind.ES2015)return n?1:2;if(e.isInJSFile(t))return e.isExternalModule(t)?1:3;for(var i=0,a=t.statements;i<a.length;i++){var o=a[i];if(e.isImportEqualsDeclaration(o))return 3}return n?1:3}function E(t,r,n){var i=e.getLocalSymbolForExportDefault(t);if(i)return{symbolForMeaning:i,name:i.name};var a,o=(a=t).declarations&&e.firstDefined(a.declarations,(function(t){var r;return e.isExportAssignment(t)?null===(r=e.tryCast(e.skipOuterExpressions(t.expression),e.isIdentifier))||void 0===r?void 0:r.text:e.isExportSpecifier(t)?(e.Debug.assert("default"===t.name.text,"Expected the specifier to be a default export"),t.propertyName&&t.propertyName.text):void 0}));if(void 0!==o)return{symbolForMeaning:t,name:o};if(2097152&t.flags){var s=r.getImmediateAliasedSymbol(t);if(s&&s.parent)return E(s,r,n)}return"default"!==t.escapedName&&"export="!==t.escapedName?{symbolForMeaning:t,name:t.getName()}:{symbolForMeaning:t,name:e.getNameForExportedSymbol(t,n.target)}}function S(r,n,i,a,s){var c,l=e.textChanges.ChangeTracker.with(r,(function(t){c=function(t,r,n,i,a){switch(i.kind){case 0:return w(t,r,i),[e.Diagnostics.Change_0_to_1,n,i.namespacePrefix+"."+n];case 1:return T(t,r,i,a),[e.Diagnostics.Change_0_to_1,n,C(i.moduleSpecifier,a)+n];case 2:var o=i.importClauseOrBindingPattern,s=i.importKind,c=i.canUseTypeOnlyImport,l=i.moduleSpecifier;D(t,r,o,1===s?n:void 0,0===s?[n]:e.emptyArray,c);var u=e.stripQuotes(l);return[1===s?e.Diagnostics.Add_default_import_0_to_existing_import_declaration_from_1:e.Diagnostics.Add_0_to_existing_import_declaration_from_1,n,u];case 3:s=i.importKind,l=i.moduleSpecifier;var d=i.typeOnly,p=i.useRequire?N:A,f=1===s?{defaultImport:n,typeOnly:d}:0===s?{namedImports:[n],typeOnly:d}:{namespaceLikeImport:{importKind:s,name:n},typeOnly:d};return e.insertImports(t,r,p(l,a,f),!0),[1===s?e.Diagnostics.Import_default_0_from_module_1:e.Diagnostics.Import_0_from_module_1,n,l];default:return e.Debug.assertNever(i,"Unexpected fix kind "+i.kind)}}(t,n,i,a,s)}));return t.createCodeFixAction(t.importFixName,l,c,o,e.Diagnostics.Add_all_missing_imports)}function D(t,r,n,i,a,o){if(197!==n.kind){var s=!o&&n.isTypeOnly;if(i&&(e.Debug.assert(!n.name,"Cannot add a default import to an import clause that already has one"),t.insertNodeAt(r,n.getStart(r),e.factory.createIdentifier(i),{suffix:", "})),a.length){var c=n.namedBindings&&e.cast(n.namedBindings,e.isNamedImports).elements,l=e.stableSort(a.map((function(t){return e.factory.createImportSpecifier(void 0,e.factory.createIdentifier(t))})),e.OrganizeImports.compareImportOrExportSpecifiers);if((null==c?void 0:c.length)&&e.OrganizeImports.importSpecifiersAreSorted(c))for(var u=0,d=l;u<d.length;u++){var p=d[u],f=e.OrganizeImports.getImportSpecifierInsertionIndex(c,p),m=n.namedBindings.elements[f-1];m?t.insertNodeInListAfter(r,m,p):t.insertNodeBefore(r,c[0],p,!e.positionsAreOnSameLine(c[0].getStart(),n.parent.getStart(),r))}else if(null==c?void 0:c.length)for(var g=0,_=l;g<_.length;g++){p=_[g];t.insertNodeInListAfter(r,e.last(c),p,c)}else if(l.length){var h=e.factory.createNamedImports(l);n.namedBindings?t.replaceNode(r,n.namedBindings,h):t.insertNodeAfter(r,e.Debug.checkDefined(n.name,"Import clause must have either named imports or a default import"),h)}}s&&t.delete(r,e.getTypeKeywordOfTypeOnlyImport(n,r))}else{i&&b(n,i,"default");for(var y=0,v=a;y<v.length;y++){b(n,v[y],void 0)}}function b(n,i,a){var o=e.factory.createBindingElement(void 0,a,i);n.elements.length?t.insertNodeInListAfter(r,e.last(n.elements),o):t.replaceNode(r,n,e.factory.createObjectBindingPattern([o]))}}function w(e,t,r){var n=r.namespacePrefix,i=r.position;e.insertText(t,i,n+".")}function T(e,t,r,n){var i=r.moduleSpecifier,a=r.position;e.insertText(t,a,C(i,n))}function C(t,r){var n=e.getQuoteFromPreference(r);return"import("+n+t+n+")."}function A(t,r,n){var i,a,o,s=e.makeStringLiteral(t,r);(void 0!==n.defaultImport||(null===(i=n.namedImports)||void 0===i?void 0:i.length))&&(o=e.combine(o,e.makeImport(void 0===n.defaultImport?void 0:e.factory.createIdentifier(n.defaultImport),null===(a=n.namedImports)||void 0===a?void 0:a.map((function(t){return e.factory.createImportSpecifier(void 0,e.factory.createIdentifier(t))})),t,r,n.typeOnly)));var c=n.namespaceLikeImport,l=n.typeOnly;if(c){var u=3===c.importKind?e.factory.createImportEqualsDeclaration(void 0,void 0,l,e.factory.createIdentifier(c.name),e.factory.createExternalModuleReference(s)):e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(l,void 0,e.factory.createNamespaceImport(e.factory.createIdentifier(c.name))),s);o=e.combine(o,u)}return e.Debug.checkDefined(o)}function N(t,r,n){var i,a,o,s=e.makeStringLiteral(t,r);if(n.defaultImport||(null===(i=n.namedImports)||void 0===i?void 0:i.length)){var c=(null===(a=n.namedImports)||void 0===a?void 0:a.map((function(t){return e.factory.createBindingElement(void 0,void 0,t)})))||[];n.defaultImport&&c.unshift(e.factory.createBindingElement(void 0,"default",n.defaultImport));var l=P(e.factory.createObjectBindingPattern(c),s);o=e.combine(o,l)}if(n.namespaceLikeImport){l=P(n.namespaceLikeImport.name,s);o=e.combine(o,l)}return e.Debug.checkDefined(o)}function P(t,r){return e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration("string"==typeof t?e.factory.createIdentifier(t):t,void 0,void 0,e.factory.createCallExpression(e.factory.createIdentifier("require"),void 0,[r]))],2))}function I(t,r){var n=t.declarations;return e.some(n,(function(t){return!!(e.getMeaningFromDeclaration(t)&r)}))}function F(t,r,n,i,a,o){var s,c;O(t,r,n,i,(function(e,r){return o(e,r,t,!1)}));var l=a&&(null===(s=r.getPackageJsonAutoImportProvider)||void 0===s?void 0:s.call(r));if(l){var u=e.timestamp();O(l,r,n,i,(function(e,t){return o(e,t,l,!0)})),null===(c=r.log)||void 0===c||c.call(r,"forEachExternalModuleToImportFrom autoImportProvider: "+(e.timestamp()-u))}}function O(t,r,n,i,a){var o,s=0,c=e.createModuleSpecifierResolutionHost(t,r),l=i&&L(n,t,r,c);!function(t,r,n){for(var i=0,a=t.getAmbientModules();i<a.length;i++){n(a[i],void 0)}for(var o=0,s=r;o<s.length;o++){var c=s[o];e.isExternalOrCommonJsModule(c)&&n(t.getMergedSymbol(c.symbol),c)}}(t.getTypeChecker(),t.getSourceFiles(),(function(r,i){void 0===i?!l||l.allowsImportingAmbientModule(r)?a(r,i):l&&s++:i&&i!==n&&function(t,r,n,i){var a,o=e.isOhpm(t.getCompilerOptions().packageManagerType),s=e.hostGetCanonicalFileName(i),c=null===(a=i.getGlobalTypingsCacheLocation)||void 0===a?void 0:a.call(i);return!!e.moduleSpecifiers.forEachFileNameOfModule(r.fileName,n.fileName,i,!1,(function(i){var a=t.getSourceFile(i);return(a===n||!a)&&function(t,r,n,i,a){var o=e.forEachAncestorDirectory(r,(function(t){return"node_modules"===e.getBaseFileName(t)||a&&"oh_modules"===e.getBaseFileName(t)?t:void 0})),s=o&&e.getDirectoryPath(n(o));return void 0===s||e.startsWith(n(t),s)||!!i&&e.startsWith(n(i),s)}(r.fileName,i,s,c,o)}),o)}(t,n,i,c)&&(!l||l.allowsImportingSourceFile(i)?a(r,i):l&&s++)})),null===(o=r.log)||void 0===o||o.call(r,"forEachExternalModuleToImportFrom: filtered out "+s+" modules by package.json or oh-package.json5 contents")}function R(t,r){return M(e.removeFileExtension(e.stripQuotes(t.name)),r)}function M(t,r){var n=e.getBaseFileName(e.removeSuffix(t,"/index")),i="",a=!0,o=n.charCodeAt(0);e.isIdentifierStart(o,r)?i+=String.fromCharCode(o):a=!1;for(var s=1;s<n.length;s++){var c=n.charCodeAt(s),l=e.isIdentifierPart(c,r);if(l){var u=String.fromCharCode(c);a||(u=u.toUpperCase()),i+=u}a=l}return e.isStringANonContextualKeyword(i)?"_"+i:i||"_"}function L(t,r,n,i){void 0===i&&(i=e.createModuleSpecifierResolutionHost(r,n));var a,o=(n.getPackageJsonsVisibleToFile&&n.getPackageJsonsVisibleToFile(t.fileName)||e.getPackageJsonsVisibleToFile(t.fileName,n)).filter((function(e){return e.parseable}));return{allowsImportingAmbientModule:function(t){if(!o.length)return!0;var r=l(t.valueDeclaration.getSourceFile().fileName);if(void 0===r)return!0;var n=e.stripQuotes(t.getName());if(c(n))return!0;return s(r)||s(n)},allowsImportingSourceFile:function(e){if(!o.length)return!0;var t=l(e.fileName);if(!t)return!0;return s(t)},allowsImportingSpecifier:function(t){if(!o.length||c(t))return!0;if(e.pathIsRelative(t)||e.isRootedDiskPath(t))return!0;return s(t)},moduleSpecifierResolutionHost:i};function s(t){for(var r=u(t),n=0,i=o;n<i.length;n++){var a=i[n];if(a.has(r)||a.has(e.getTypesPackageName(r)))return!0}return!1}function c(r){return!!(e.isSourceFileJS(t)&&e.JsTyping.nodeCoreModules.has(r)&&(void 0===a&&(a=e.consumesNodeCoreModules(t)),a))}function l(r){if(e.stringContains(r,"node_modules")||e.stringContains(r,"oh_modules")){var a=e.moduleSpecifiers.getModulesPackageName(n.getCompilationSettings(),t.path,r,i);if(a)return e.pathIsRelative(a)||e.isRootedDiskPath(a)?void 0:u(a)}}function u(t){var r=e.getPathComponents(e.getPackageNameFromTypesPackageName(t)).slice(1);return e.startsWith(r[0],"@")?r[0]+"/"+r[1]:r[0]}}t.registerCodeFix({errorCodes:s,getCodeActions:function(t){var r=t.errorCode,n=t.preferences,i=t.sourceFile,a=t.span,o=h(t,r,a.start,!0);if(o){var s=o.fixes,c=o.symbolName,l=e.getQuotePreference(i,n);return s.map((function(e){return S(t,i,c,e,l)}))}},fixIds:[o],getAllCodeActions:function(r){var n=l(r.sourceFile,r.program,!0,r.preferences,r.host);return t.eachDiagnostic(r,s,(function(e){return n.addImportFromDiagnostic(e,r)})),t.createCombinedCodeActions(e.textChanges.ChangeTracker.with(r,n.writeFixes))}}),t.createImportAdder=function(e,t,r,n){return l(e,t,!1,r,n)},function(e){e[e.UseNamespace=0]="UseNamespace",e[e.ImportType=1]="ImportType",e[e.AddToExisting=2]="AddToExisting",e[e.AddNew=3]="AddNew"}(r||(r={})),function(e){e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.Namespace=2]="Namespace",e[e.CommonJS=3]="CommonJS"}(n||(n={})),t.getImportCompletionAction=function(t,r,n,i,a,o,s,c,l){var f,m,h,v,b=o.getCompilerOptions(),k=e.pathIsBareSpecifier(e.stripQuotes(r.name))?[d(t,r,n,o,a)]:p(n,t,r,i,a,o,!0),x=g(n,o),E=2===b.importsNotUsedAsValues&&!e.isSourceFileJS(n)&&e.isValidTypeOnlyAliasUseSite(e.getTokenAtPosition(n,c)),D=y(_(o,n,c,E,x,k,a,l),n,o,a).moduleSpecifier,w=u(n,k,r,i,o,c,E,x,a,l);return{moduleSpecifier:D,codeAction:(f=S({host:a,formatContext:s,preferences:l},n,i,w,e.getQuotePreference(n,l)),m=f.description,h=f.changes,v=f.commands,{description:m,changes:h,commands:v})}},t.forEachExternalModuleToImportFrom=F,t.moduleSymbolToValidIdentifier=R,t.moduleSpecifierToValidIdentifier=M}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixNoPropertyAccessFromIndexSignature",n=[e.Diagnostics.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];function i(t,r,n,i){var a=e.getQuotePreference(r,i),o=e.factory.createStringLiteral(n.name.text,0===a);t.replaceNode(r,n,e.isPropertyAccessChain(n)?e.factory.createElementAccessChain(n.expression,n.questionDotToken,o):e.factory.createElementAccessExpression(n.expression,o))}function a(t,r){return e.cast(e.getTokenAtPosition(t,r).parent,e.isPropertyAccessExpression)}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=n.preferences,l=a(o,s.start),u=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,l,c)}));return[t.createCodeFixAction(r,u,[e.Diagnostics.Use_element_access_for_0,l.name.text],r,e.Diagnostics.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return i(t,r.file,a(r.file,r.start),e.preferences)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixImplicitThis",n=[e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];function i(t,r,n,i){var a=e.getTokenAtPosition(r,n);e.Debug.assert(108===a.kind);var o=e.getThisContainer(a,!1);if((e.isFunctionDeclaration(o)||e.isFunctionExpression(o))&&!e.isSourceFile(e.getThisContainer(o,!1))){var s=e.Debug.assertDefined(e.findChildOfKind(o,98,r)),c=o.name,l=e.Debug.assertDefined(o.body);if(e.isFunctionExpression(o)){if(c&&e.FindAllReferences.Core.isSymbolReferencedInFile(c,i,r,l))return;return t.delete(r,s),c&&t.delete(r,c),t.insertText(r,l.pos," =>"),[e.Diagnostics.Convert_function_expression_0_to_arrow_function,c?c.text:e.ANONYMOUS]}return t.replaceNode(r,s,e.factory.createToken(85)),t.insertText(r,c.end," = "),t.insertText(r,l.pos," =>"),[e.Diagnostics.Convert_function_declaration_0_to_arrow_function,c.text]}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a,o=n.sourceFile,s=n.program,c=n.span,l=e.textChanges.ChangeTracker.with(n,(function(e){a=i(e,o,c.start,s.getTypeChecker())}));return a?[t.createCodeFixAction(r,l,a,r,e.Diagnostics.Fix_all_implicit_this_errors)]:e.emptyArray},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){i(t,r.file,r.start,e.program.getTypeChecker())}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixIncorrectNamedTupleSyntax",n=[e.Diagnostics.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,e.Diagnostics.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.span,o=function(t,r){var n=e.getTokenAtPosition(t,r);return e.findAncestor(n,(function(e){return 193===e.kind}))}(i,a.start),s=e.textChanges.ChangeTracker.with(n,(function(t){return function(t,r,n){if(!n)return;var i=n.type,a=!1,o=!1;for(;181===i.kind||182===i.kind||187===i.kind;)181===i.kind?a=!0:182===i.kind&&(o=!0),i=i.type;var s=e.factory.updateNamedTupleMember(n,n.dotDotDotToken||(o?e.factory.createToken(25):void 0),n.name,n.questionToken||(a?e.factory.createToken(57):void 0),i);if(s===n)return;t.replaceNode(r,n,s)}(t,i,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Move_labeled_tuple_element_modifiers_to_labels,r,e.Diagnostics.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[r]})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixSpelling",n=[e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,e.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2.code,e.Diagnostics.No_overload_matches_this_call.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code];function i(t,r,n,i){var a=e.getTokenAtPosition(t,r),o=a.parent;if(i!==e.Diagnostics.No_overload_matches_this_call.code&&i!==e.Diagnostics.Type_0_is_not_assignable_to_type_1.code||e.isJsxAttribute(o)){var s,c=n.program.getTypeChecker();if(e.isPropertyAccessExpression(o)&&o.name===a){e.Debug.assert(e.isIdentifierOrPrivateIdentifier(a),"Expected an identifier for spelling (property access)");var l=c.getTypeAtLocation(o.expression);32&o.flags&&(l=c.getNonNullableType(l)),s=c.getSuggestedSymbolForNonexistentProperty(a,l)}else if(e.isQualifiedName(o)&&o.right===a){var u=c.getSymbolAtLocation(o.left);u&&1536&u.flags&&(s=c.getSuggestedSymbolForNonexistentModule(o.right,u))}else if(e.isImportSpecifier(o)&&o.name===a){e.Debug.assertNode(a,e.isIdentifier,"Expected an identifier for spelling (import)");var d=function(t,r,n){if(!n||!e.isStringLiteralLike(n.moduleSpecifier))return;var i=e.getResolvedModule(t,n.moduleSpecifier.text);return i?r.program.getSourceFile(i.resolvedFileName):void 0}(t,n,e.findAncestor(a,e.isImportDeclaration));d&&d.symbol&&(s=c.getSuggestedSymbolForNonexistentModule(a,d.symbol))}else if(e.isJsxAttribute(o)&&o.name===a){e.Debug.assertNode(a,e.isIdentifier,"Expected an identifier for JSX attribute");var p=e.findAncestor(a,e.isJsxOpeningLikeElement),f=c.getContextualTypeForArgumentAtIndex(p,0);s=c.getSuggestedSymbolForNonexistentJSXAttribute(a,f)}else{var m=e.getMeaningFromLocation(a),g=e.getTextOfNode(a);e.Debug.assert(void 0!==g,"name should be defined"),s=c.getSuggestedSymbolForNonexistentSymbol(a,g,function(e){var t=0;4&e&&(t|=1920);2&e&&(t|=788968);1&e&&(t|=111551);return t}(m))}return void 0===s?void 0:{node:a,suggestedSymbol:s}}}function a(t,r,n,i,a){var o=e.symbolName(i);if(!e.isIdentifierText(o,a)&&e.isPropertyAccessExpression(n.parent)){var s=i.valueDeclaration;e.isNamedDeclaration(s)&&e.isPrivateIdentifier(s.name)?t.replaceNode(r,n,e.factory.createIdentifier(o)):t.replaceNode(r,n.parent,e.factory.createElementAccessExpression(n.parent.expression,e.factory.createStringLiteral(o)))}else t.replaceNode(r,n,e.factory.createIdentifier(o))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.errorCode,c=i(o,n.span.start,n,s);if(c){var l=c.node,u=c.suggestedSymbol,d=n.host.getCompilationSettings().target,p=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,l,u,d)}));return[t.createCodeFixAction("spelling",p,[e.Diagnostics.Change_spelling_to_0,e.symbolName(u)],r,e.Diagnostics.Fix_all_detected_spelling_errors)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,r.start,e,r.code),o=e.host.getCompilationSettings().target;n&&a(t,e.sourceFile,n.node,n.suggestedSymbol,o)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r,n="returnValueCorrect",i="fixAddReturnStatement",a="fixRemoveBracesFromArrowFunctionBody",o="fixWrapTheBlockWithParen",s=[e.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code,e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];function c(t,r,n){var i=t.createSymbol(4,r.escapedText);i.type=t.getTypeAtLocation(n);var a=e.createSymbolTable([i]);return t.createAnonymousType(void 0,a,[],[],void 0,void 0)}function l(t,n,i,a){if(n.body&&e.isBlock(n.body)&&1===e.length(n.body.statements)){var o=e.first(n.body.statements);if(e.isExpressionStatement(o)&&u(t,n,t.getTypeAtLocation(o.expression),i,a))return{declaration:n,kind:r.MissingReturnStatement,expression:o.expression,statement:o,commentSource:o.expression};if(e.isLabeledStatement(o)&&e.isExpressionStatement(o.statement)){var s=e.factory.createObjectLiteralExpression([e.factory.createPropertyAssignment(o.label,o.statement.expression)]);if(u(t,n,c(t,o.label,o.statement.expression),i,a))return e.isArrowFunction(n)?{declaration:n,kind:r.MissingParentheses,expression:s,statement:o,commentSource:o.statement.expression}:{declaration:n,kind:r.MissingReturnStatement,expression:s,statement:o,commentSource:o.statement.expression}}else if(e.isBlock(o)&&1===e.length(o.statements)){var l=e.first(o.statements);if(e.isLabeledStatement(l)&&e.isExpressionStatement(l.statement)){s=e.factory.createObjectLiteralExpression([e.factory.createPropertyAssignment(l.label,l.statement.expression)]);if(u(t,n,c(t,l.label,l.statement.expression),i,a))return{declaration:n,kind:r.MissingReturnStatement,expression:s,statement:o,commentSource:l}}}}}function u(t,r,n,i,a){if(a){var o=t.getSignatureFromDeclaration(r);if(o){e.hasSyntacticModifier(r,256)&&(n=t.createPromiseType(n));var s=t.createSignature(r,o.typeParameters,o.thisParameter,o.parameters,n,void 0,o.minArgumentCount,o.flags);n=t.createAnonymousType(void 0,e.createSymbolTable(),[s],[],void 0,void 0)}else n=t.getAnyType()}return t.isTypeAssignableTo(n,i)}function d(t,r,n,i){var a=e.getTokenAtPosition(r,n);if(a.parent){var o=e.findAncestor(a.parent,e.isFunctionLikeDeclaration);switch(i){case e.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value.code:if(!(o&&o.body&&o.type&&e.rangeContainsRange(o.type,a)))return;return l(t,o,t.getTypeFromTypeNode(o.type),!1);case e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!o||!e.isCallExpression(o.parent)||!o.body)return;var s=o.parent.arguments.indexOf(o),c=t.getContextualTypeForArgumentAtIndex(o.parent,s);if(!c)return;return l(t,o,c,!0);case e.Diagnostics.Type_0_is_not_assignable_to_type_1.code:if(!e.isDeclarationName(a)||!e.isVariableLike(a.parent)&&!e.isJsxAttribute(a.parent))return;var u=function(t){switch(t.kind){case 251:case 161:case 199:case 164:case 291:return t.initializer;case 283:return t.initializer&&(e.isJsxExpression(t.initializer)?t.initializer.expression:void 0);case 292:case 163:case 294:case 336:case 329:return}}(a.parent);if(!u||!e.isFunctionLikeDeclaration(u)||!u.body)return;return l(t,u,t.getTypeAtLocation(a.parent),!0)}}}function p(t,r,n,i){e.suppressLeadingAndTrailingTrivia(n);var a=e.probablyUsesSemicolons(r);t.replaceNode(r,i,e.factory.createReturnStatement(n),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Exclude,suffix:a?";":void 0})}function f(t,r,n,i,a,o){var s=o||e.needsParentheses(i)?e.factory.createParenthesizedExpression(i):i;e.suppressLeadingAndTrailingTrivia(a),e.copyComments(a,s),t.replaceNode(r,n.body,s)}function m(t,r,n,i){t.replaceNode(r,n.body,e.factory.createParenthesizedExpression(i))}function g(r,a,o){var s=e.textChanges.ChangeTracker.with(r,(function(e){return p(e,r.sourceFile,a,o)}));return t.createCodeFixAction(n,s,e.Diagnostics.Add_a_return_statement,i,e.Diagnostics.Add_all_missing_return_statement)}function _(r,i,a){var s=e.textChanges.ChangeTracker.with(r,(function(e){return m(e,r.sourceFile,i,a)}));return t.createCodeFixAction(n,s,e.Diagnostics.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,o,e.Diagnostics.Wrap_all_object_literal_with_parentheses)}!function(e){e[e.MissingReturnStatement=0]="MissingReturnStatement",e[e.MissingParentheses=1]="MissingParentheses"}(r||(r={})),t.registerCodeFix({errorCodes:s,fixIds:[i,a,o],getCodeActions:function(i){var o=i.program,s=i.sourceFile,c=i.span.start,l=i.errorCode,u=d(o.getTypeChecker(),s,c,l);if(u)return u.kind===r.MissingReturnStatement?e.append([g(i,u.expression,u.statement)],e.isArrowFunction(u.declaration)?function(r,i,o,s){var c=e.textChanges.ChangeTracker.with(r,(function(e){return f(e,r.sourceFile,i,o,s,!1)}));return t.createCodeFixAction(n,c,e.Diagnostics.Remove_braces_from_arrow_function_body,a,e.Diagnostics.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}(i,u.declaration,u.expression,u.commentSource):void 0):[_(i,u.declaration,u.expression)]},getAllCodeActions:function(r){return t.codeFixAll(r,s,(function(t,n){var s=d(r.program.getTypeChecker(),n.file,n.start,n.code);if(s)switch(r.fixId){case i:p(t,n.file,s.expression,s.statement);break;case a:if(!e.isArrowFunction(s.declaration))return;f(t,n.file,s.declaration,s.expression,s.commentSource,!1);break;case o:if(!e.isArrowFunction(s.declaration))return;m(t,n.file,s.declaration,s.expression);break;default:e.Debug.fail(JSON.stringify(r.fixId))}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r,n="fixMissingMember",i="fixMissingFunctionDeclaration",a=[e.Diagnostics.Property_0_does_not_exist_on_type_1.code,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,e.Diagnostics.Property_0_is_missing_in_type_1_but_required_in_type_2.code,e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,e.Diagnostics.Cannot_find_name_0.code];function o(t,r,n,i){var a=e.getTokenAtPosition(t,r);if(e.isIdentifier(a)||e.isPrivateIdentifier(a)){var o=a.parent;if(e.isIdentifier(a)&&e.isCallExpression(o))return{kind:2,token:a,call:o,sourceFile:t,modifierFlags:0,parentDeclaration:t};if(e.isPropertyAccessExpression(o)){var s=e.skipConstraint(n.getTypeAtLocation(o.expression)),c=s.symbol;if(c&&c.declarations){if(e.isIdentifier(a)&&e.isCallExpression(o.parent)){var l=e.find(c.declarations,e.isModuleDeclaration),u=null==l?void 0:l.getSourceFile();if(l&&u&&!i.isSourceFileFromExternalLibrary(u))return{kind:2,token:a,call:o.parent,sourceFile:t,modifierFlags:1,parentDeclaration:l};var d=e.find(c.declarations,e.isSourceFile);if(t.commonJsModuleIndicator)return;if(d&&!i.isSourceFileFromExternalLibrary(d))return{kind:2,token:a,call:o.parent,sourceFile:d,modifierFlags:1,parentDeclaration:d}}var p=e.find(c.declarations,e.isClassLike);if(p||!e.isPrivateIdentifier(a)){var f=p||e.find(c.declarations,e.isInterfaceDeclaration);if(f&&!i.isSourceFileFromExternalLibrary(f.getSourceFile())){var m=(s.target||s)!==n.getDeclaredTypeOfSymbol(c);if(m&&(e.isPrivateIdentifier(a)||e.isInterfaceDeclaration(f)))return;var g=f.getSourceFile(),_=(m?32:0)|(e.startsWithUnderscore(a.text)?8:0),h=e.isSourceFileJS(g);return{kind:1,token:a,call:e.tryCast(o.parent,e.isCallExpression),modifierFlags:_,parentDeclaration:f,declSourceFile:g,isJSFile:h}}var y=e.find(c.declarations,e.isEnumDeclaration);return!y||e.isPrivateIdentifier(a)||i.isSourceFileFromExternalLibrary(y.getSourceFile())?void 0:{kind:0,token:a,parentDeclaration:y}}}}}}function s(t,r,n,i,a){var o=i.text;if(a){if(223===n.kind)return;var s=n.name.getText(),l=c(e.factory.createIdentifier(s),o);t.insertNodeAfter(r,n,l)}else if(e.isPrivateIdentifier(i)){var u=e.factory.createPropertyDeclaration(void 0,void 0,o,void 0,void 0,void 0),p=d(n);p?t.insertNodeAfter(r,p,u):t.insertNodeAtClassStart(r,n,u)}else{var f=e.getFirstConstructorWithBody(n);if(!f)return;var m=c(e.factory.createThis(),o);t.insertNodeAtConstructorEnd(r,f,m)}}function c(t,r){return e.factory.createExpressionStatement(e.factory.createAssignment(e.factory.createPropertyAccessExpression(t,r),e.factory.createIdentifier("undefined")))}function l(t,r,n){var i;if(218===n.parent.parent.kind){var a=n.parent.parent,o=n.parent===a.left?a.right:a.left,s=t.getWidenedType(t.getBaseTypeOfLiteralType(t.getTypeAtLocation(o)));i=t.typeToTypeNode(s,r,void 0)}else{var c=t.getContextualType(n.parent);i=c?t.typeToTypeNode(c,void 0,void 0):void 0}return i||e.factory.createKeywordTypeNode(129)}function u(t,r,n,i,a,o){var s=e.factory.createPropertyDeclaration(void 0,o?e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(o)):void 0,i,void 0,a,void 0),c=d(n);c?t.insertNodeAfter(r,c,s):t.insertNodeAtClassStart(r,n,s)}function d(t){for(var r,n=0,i=t.members;n<i.length;n++){var a=i[n];if(!e.isPropertyDeclaration(a))break;r=a}return r}function p(r,n,i,a,o,s,c){var l=t.createImportAdder(c,r.program,r.preferences,r.host),u=t.createSignatureDeclarationFromCallExpression(166,r,l,i,a,o,s),d=e.findAncestor(i,(function(t){return e.isMethodDeclaration(t)||e.isConstructorDeclaration(t)}));d&&d.parent===s?n.insertNodeAfter(c,d,u):n.insertNodeAtClassStart(c,s,u),l.writeFixes(n)}function f(t,r,n){var i=n.token,a=n.parentDeclaration,o=e.some(a.members,(function(e){var t=r.getTypeAtLocation(e);return!!(t&&402653316&t.flags)})),s=e.factory.createEnumMember(i,o?e.factory.createStringLiteral(i.text):void 0);t.replaceNode(a.getSourceFile(),a,e.factory.updateEnumDeclaration(a,a.decorators,a.modifiers,a.name,e.concatenate(a.members,e.singleElementArray(s))),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Exclude})}function m(r,n,i){var a=t.createImportAdder(n.sourceFile,n.program,n.preferences,n.host),o=t.createSignatureDeclarationFromCallExpression(253,n,a,i.call,e.idText(i.token),i.modifierFlags,i.parentDeclaration);r.insertNodeAtEndOfScope(i.sourceFile,i.parentDeclaration,o)}t.registerCodeFix({errorCodes:a,getCodeActions:function(r){var a=r.program.getTypeChecker(),c=o(r.sourceFile,r.span.start,a,r.program);if(c){if(2===c.kind){var d=e.textChanges.ChangeTracker.with(r,(function(e){return m(e,r,c)}));return[t.createCodeFixAction(i,d,[e.Diagnostics.Add_missing_function_declaration_0,c.token.text],i,e.Diagnostics.Add_all_missing_function_declarations)]}if(0===c.kind){d=e.textChanges.ChangeTracker.with(r,(function(e){return f(e,r.program.getTypeChecker(),c)}));return[t.createCodeFixAction(n,d,[e.Diagnostics.Add_missing_enum_member_0,c.token.text],n,e.Diagnostics.Add_all_missing_members)]}return e.concatenate(function(r,i){var a=i.parentDeclaration,o=i.declSourceFile,s=i.modifierFlags,c=i.token,l=i.call;if(void 0===l)return;if(e.isPrivateIdentifier(c))return;var u=c.text,d=function(t){return e.textChanges.ChangeTracker.with(r,(function(e){return p(r,e,l,c,t,a,o)}))},f=[t.createCodeFixAction(n,d(32&s),[32&s?e.Diagnostics.Declare_static_method_0:e.Diagnostics.Declare_method_0,u],n,e.Diagnostics.Add_all_missing_members)];8&s&&f.unshift(t.createCodeFixActionWithoutFixAll(n,d(8),[e.Diagnostics.Declare_private_method_0,u]));return f}(r,c),function(r,i){return i.isJSFile?e.singleElementArray(function(r,i){var a=i.parentDeclaration,o=i.declSourceFile,c=i.modifierFlags,l=i.token;if(e.isInterfaceDeclaration(a))return;var u=e.textChanges.ChangeTracker.with(r,(function(e){return s(e,o,a,l,!!(32&c))}));if(0===u.length)return;var d=32&c?e.Diagnostics.Initialize_static_property_0:e.isPrivateIdentifier(l)?e.Diagnostics.Declare_a_private_field_named_0:e.Diagnostics.Initialize_property_0_in_the_constructor;return t.createCodeFixAction(n,u,[d,l.text],n,e.Diagnostics.Add_all_missing_members)}(r,i)):function(r,i){var a=i.parentDeclaration,o=i.declSourceFile,s=i.modifierFlags,c=i.token,d=c.text,p=32&s,f=l(r.program.getTypeChecker(),a,c),m=function(t){return e.textChanges.ChangeTracker.with(r,(function(e){return u(e,o,a,d,f,t)}))},g=[t.createCodeFixAction(n,m(32&s),[p?e.Diagnostics.Declare_static_property_0:e.Diagnostics.Declare_property_0,d],n,e.Diagnostics.Add_all_missing_members)];if(p||e.isPrivateIdentifier(c))return g;8&s&&g.unshift(t.createCodeFixActionWithoutFixAll(n,m(8),[e.Diagnostics.Declare_private_property_0,d]));return g.push(function(r,i,a,o,s){var c=e.factory.createKeywordTypeNode(148),l=e.factory.createParameterDeclaration(void 0,void 0,void 0,"x",void 0,c,void 0),u=e.factory.createIndexSignature(void 0,void 0,[l],s),d=e.textChanges.ChangeTracker.with(r,(function(e){return e.insertNodeAtClassStart(i,a,u)}));return t.createCodeFixActionWithoutFixAll(n,d,[e.Diagnostics.Add_index_signature_for_property_0,o])}(r,o,a,c.text,f)),g}(r,i)}(r,c))}},fixIds:[n,i],getAllCodeActions:function(r){var n=r.program,c=r.fixId,d=n.getTypeChecker(),g=new e.Map,_=new e.Map;return t.createCombinedCodeActions(e.textChanges.ChangeTracker.with(r,(function(h){t.eachDiagnostic(r,a,(function(t){var n=o(t.file,t.start,d,r.program);if(n&&e.addToSeen(g,e.getNodeId(n.parentDeclaration)+"#"+n.token.text))if(c===i)2===n.kind&&m(h,r,n);else if(0===n.kind&&f(h,d,n),1===n.kind){var a=n.parentDeclaration,s=n.token,l=e.getOrUpdate(_,a,(function(){return[]}));l.some((function(e){return e.token.text===s.text}))||l.push(n)}})),_.forEach((function(i,a){for(var o=t.getAllSupers(a,d),c=function(t){if(o.some((function(e){var r=_.get(e);return!!r&&r.some((function(e){return e.token.text===t.token.text}))})))return"continue";var i=t.parentDeclaration,a=t.declSourceFile,c=t.modifierFlags,d=t.token,f=t.call,m=t.isJSFile;if(f&&!e.isPrivateIdentifier(d))p(r,h,f,d,32&c,i,a);else if(m&&!e.isInterfaceDeclaration(i))s(h,a,i,d,!!(32&c));else{var g=l(n.getTypeChecker(),i,d);u(h,a,i,d.text,g,32&c)}},f=0,m=i;f<m.length;f++){c(m[f])}}))})))}}),function(e){e[e.Enum=0]="Enum",e[e.ClassOrInterface=1]="ClassOrInterface",e[e.Function=2]="Function"}(r||(r={}))}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingNewOperator",n=[e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];function i(t,r,n){var i=e.cast(function(t,r){var n=e.getTokenAtPosition(t,r.start),i=e.textSpanEnd(r);for(;n.end<i;)n=n.parent;return n}(r,n),e.isCallExpression),a=e.factory.createNewExpression(i.expression,i.typeArguments,i.arguments);t.replaceNode(r,i,a)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=n.sourceFile,o=n.span,s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,a,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Add_missing_new_operator_to_call,r,e.Diagnostics.Add_missing_new_operator_to_all_calls)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return i(t,e.sourceFile,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="installTypesPackage",n=e.Diagnostics.Cannot_find_module_0_or_its_corresponding_type_declarations.code,i=[n,e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type.code];function a(e,t){return{type:"install package",file:e,packageName:t}}function o(t,r){var n=e.cast(e.getTokenAtPosition(t,r),e.isStringLiteral).text,i=e.parsePackageName(n).packageName;return e.isExternalModuleNameRelative(i)?void 0:i}function s(t,r,i){var a;return i===n?e.JsTyping.nodeCoreModules.has(t)?"@types/node":void 0:(null===(a=r.isKnownTypesPackageName)||void 0===a?void 0:a.call(r,t))?e.getTypesPackageName(t):void 0}t.registerCodeFix({errorCodes:i,getCodeActions:function(n){var i=n.host,c=n.sourceFile,l=o(c,n.span.start);if(void 0!==l){var u=s(l,i,n.errorCode);return void 0===u?[]:[t.createCodeFixAction("fixCannotFindModule",[],[e.Diagnostics.Install_0,u],r,e.Diagnostics.Install_all_missing_types_packages,a(c.fileName,u))]}},fixIds:[r],getAllCodeActions:function(n){return t.codeFixAll(n,i,(function(t,i,c){var l=o(i.file,i.start);if(void 0!==l)if(n.fixId===r){var u=s(l,n.host,i.code);u&&c.push(a(i.file.fileName,u))}else e.Debug.fail("Bad fixId: "+n.fixId)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,e.Diagnostics.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code],n="fixClassDoesntImplementInheritedAbstractMember";function i(t,r){var n=e.getTokenAtPosition(t,r);return e.cast(n.parent,e.isClassLike)}function a(r,n,i,a,s){var c=e.getEffectiveBaseTypeNode(r),l=i.program.getTypeChecker(),u=l.getTypeAtLocation(c),d=l.getPropertiesOfType(u).filter(o),p=t.createImportAdder(n,i.program,s,i.host);t.createMissingMemberNodes(r,d,n,i,s,p,(function(e){return a.insertNodeAtClassStart(n,r,e)})),p.writeFixes(a)}function o(t){var r=e.getSyntacticModifierFlags(e.first(t.getDeclarations()));return!(8&r||!(128&r))}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var o=r.sourceFile,s=r.span,c=e.textChanges.ChangeTracker.with(r,(function(e){return a(i(o,s.start),o,r,e,r.preferences)}));return 0===c.length?void 0:[t.createCodeFixAction(n,c,e.Diagnostics.Implement_inherited_abstract_class,n,e.Diagnostics.Implement_all_inherited_abstract_classes)]},fixIds:[n],getAllCodeActions:function(n){var o=new e.Map;return t.codeFixAll(n,r,(function(t,r){var s=i(r.file,r.start);e.addToSeen(o,e.getNodeId(s))&&a(s,n.sourceFile,n,t,n.preferences)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="classSuperMustPrecedeThisAccess",n=[e.Diagnostics.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];function i(e,t,r,n){e.insertNodeAtConstructorStart(t,r,n),e.delete(t,n)}function a(t,r){var n=e.getTokenAtPosition(t,r);if(108===n.kind){var i=e.getContainingFunction(n),a=o(i.body);return a&&!a.expression.arguments.some((function(t){return e.isPropertyAccessExpression(t)&&t.expression===n}))?{constructor:i,superCall:a}:void 0}}function o(t){return e.isExpressionStatement(t)&&e.isSuperCall(t.expression)?t:e.isFunctionLike(t)?void 0:e.forEachChild(t,o)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=a(o,s.start);if(c){var l=c.constructor,u=c.superCall,d=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,o,l,u)}));return[t.createCodeFixAction(r,d,e.Diagnostics.Make_super_call_the_first_statement_in_the_constructor,r,e.Diagnostics.Make_all_super_calls_the_first_statement_in_their_constructor)]}},fixIds:[r],getAllCodeActions:function(r){var o=r.sourceFile,s=new e.Map;return t.codeFixAll(r,n,(function(t,r){var n=a(r.file,r.start);if(n){var c=n.constructor,l=n.superCall;e.addToSeen(s,e.getNodeId(c.parent))&&i(t,o,c,l)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="constructorForDerivedNeedSuperCall",n=[e.Diagnostics.Constructors_for_derived_classes_must_contain_a_super_call.code];function i(t,r){var n=e.getTokenAtPosition(t,r);return e.Debug.assert(e.isConstructorDeclaration(n.parent),"token should be at the constructor declaration"),n.parent}function a(t,r,n){var i=e.factory.createExpressionStatement(e.factory.createCallExpression(e.factory.createSuper(),void 0,e.emptyArray));t.insertNodeAtConstructorStart(r,n,i)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start),l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Add_missing_super_call,r,e.Diagnostics.Add_all_missing_super_calls)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return a(t,e.sourceFile,i(r.file,r.start))}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="enableExperimentalDecorators",n=[e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning.code];function i(r,n){t.setJsonCompilerOptionValue(r,n,"experimentalDecorators",e.factory.createTrue())}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=n.program.getCompilerOptions().configFile;if(void 0!==a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,a)}));return[t.createCodeFixActionWithoutFixAll(r,o,e.Diagnostics.Enable_the_experimentalDecorators_option_in_your_configuration_file)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t){var r=e.program.getCompilerOptions().configFile;void 0!==r&&i(t,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixEnableJsxFlag",n=[e.Diagnostics.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];function i(r,n){t.setJsonCompilerOptionValue(r,n,"jsx",e.factory.createStringLiteral("react"))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=n.program.getCompilerOptions().configFile;if(void 0!==a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,a)}));return[t.createCodeFixActionWithoutFixAll(r,o,e.Diagnostics.Enable_the_jsx_flag_in_your_configuration_file)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t){var r=e.program.getCompilerOptions().configFile;void 0!==r&&i(t,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){t.registerCodeFix({errorCodes:[e.Diagnostics.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher.code,e.Diagnostics.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher.code],getCodeActions:function(r){var n=r.program.getCompilerOptions(),i=n.configFile;if(void 0!==i){var a=[],o=e.getEmitModuleKind(n);if(o>=e.ModuleKind.ES2015&&o<e.ModuleKind.ESNext){var s=e.textChanges.ChangeTracker.with(r,(function(r){t.setJsonCompilerOptionValue(r,i,"module",e.factory.createStringLiteral("esnext"))}));a.push(t.createCodeFixActionWithoutFixAll("fixModuleOption",s,[e.Diagnostics.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}var c=e.getEmitScriptTarget(n);if(c<4||c>99){s=e.textChanges.ChangeTracker.with(r,(function(r){if(e.getTsConfigObjectLiteralExpression(i)){var n=[["target",e.factory.createStringLiteral("es2017")]];o===e.ModuleKind.CommonJS&&n.push(["module",e.factory.createStringLiteral("commonjs")]),t.setJsonCompilerOptionValues(r,i,n)}}));a.push(t.createCodeFixActionWithoutFixAll("fixTargetOption",s,[e.Diagnostics.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return a.length?a:void 0}}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixPropertyAssignment",n=[e.Diagnostics.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code];function i(t,r,n){t.replaceNode(r,n,e.factory.createPropertyAssignment(n.name,n.objectAssignmentInitializer))}function a(t,r){return e.cast(e.getTokenAtPosition(t,r).parent,e.isShorthandPropertyAssignment)}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=a(n.sourceFile,n.span.start),s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,o)}));return[t.createCodeFixAction(r,s,[e.Diagnostics.Change_0_to_1,"=",":"],r,[e.Diagnostics.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,a(t.file,t.start))}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="extendsInterfaceBecomesImplements",n=[e.Diagnostics.Cannot_extend_an_interface_0_Did_you_mean_implements.code];function i(t,r){var n=e.getTokenAtPosition(t,r),i=e.getContainingClass(n).heritageClauses,a=i[0].getFirstToken();return 94===a.kind?{extendsToken:a,heritageClauses:i}:void 0}function a(t,r,n,i){if(t.replaceNode(r,n,e.factory.createToken(117)),2===i.length&&94===i[0].token&&117===i[1].token){var a=i[1].getFirstToken(),o=a.getFullStart();t.replaceRange(r,{pos:o,end:o},e.factory.createToken(27));for(var s=r.text,c=a.end;c<s.length&&e.isWhiteSpaceSingleLine(s.charCodeAt(c));)c++;t.deleteRange(r,{pos:a.getStart(),end:c})}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=i(o,n.span.start);if(s){var c=s.extendsToken,l=s.heritageClauses,u=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c,l)}));return[t.createCodeFixAction(r,u,e.Diagnostics.Change_extends_to_implements,r,e.Diagnostics.Change_all_extended_interfaces_to_implements)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&a(e,t.file,r.extendsToken,r.heritageClauses)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="forgottenThisPropertyAccess",n=e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,i=[e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies.code,n];function a(t,r,i){var a=e.getTokenAtPosition(t,r);if(e.isIdentifier(a))return{node:a,className:i===n?e.getContainingClass(a).name.text:void 0}}function o(t,r,n){var i=n.node,a=n.className;e.suppressLeadingAndTrailingTrivia(i),t.replaceNode(r,i,e.factory.createPropertyAccessExpression(a?e.factory.createIdentifier(a):e.factory.createThis(),i))}t.registerCodeFix({errorCodes:i,getCodeActions:function(n){var i=n.sourceFile,s=a(i,n.span.start,n.errorCode);if(s){var c=e.textChanges.ChangeTracker.with(n,(function(e){return o(e,i,s)}));return[t.createCodeFixAction(r,c,[e.Diagnostics.Add_0_to_unresolved_variable,s.className||"this"],r,e.Diagnostics.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,i,(function(t,r){var n=a(r.file,r.start,r.code);n&&o(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixInvalidJsxCharacters_expression",n="fixInvalidJsxCharacters_htmlEntity",i=[e.Diagnostics.Unexpected_token_Did_you_mean_or_gt.code,e.Diagnostics.Unexpected_token_Did_you_mean_or_rbrace.code];t.registerCodeFix({errorCodes:i,fixIds:[r,n],getCodeActions:function(i){var a=i.sourceFile,s=i.preferences,c=i.span,l=e.textChanges.ChangeTracker.with(i,(function(e){return o(e,s,a,c.start,!1)})),u=e.textChanges.ChangeTracker.with(i,(function(e){return o(e,s,a,c.start,!0)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Wrap_invalid_character_in_an_expression_container,r,e.Diagnostics.Wrap_all_invalid_characters_in_an_expression_container),t.createCodeFixAction(n,u,e.Diagnostics.Convert_invalid_character_to_its_html_entity_code,n,e.Diagnostics.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions:function(e){return t.codeFixAll(e,i,(function(t,r){return o(t,e.preferences,r.file,r.start,e.fixId===n)}))}});var a={">":">","}":"}"};function o(t,r,n,i,o){var s=n.getText()[i];if(function(t){return e.hasProperty(a,t)}(s)){var c=o?a[s]:"{"+e.quote(n,r,s)+"}";t.replaceRangeWithText(n,{pos:i,end:i+1},c)}}}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="unusedIdentifier",n="unusedIdentifier_prefix",i="unusedIdentifier_delete",a="unusedIdentifier_deleteImports",o="unusedIdentifier_infer",s=[e.Diagnostics._0_is_declared_but_its_value_is_never_read.code,e.Diagnostics._0_is_declared_but_never_used.code,e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read.code,e.Diagnostics.All_imports_in_import_declaration_are_unused.code,e.Diagnostics.All_destructured_elements_are_unused.code,e.Diagnostics.All_variables_are_unused.code,e.Diagnostics.All_type_parameters_are_unused.code];function c(t,r,n){t.replaceNode(r,n.parent,e.factory.createKeywordTypeNode(153))}function l(n,a){return t.createCodeFixAction(r,n,a,i,e.Diagnostics.Delete_all_unused_declarations)}function u(t,r,n){t.delete(r,e.Debug.checkDefined(e.cast(n.parent,e.isDeclarationWithTypeParameterChildren).typeParameters,"The type parameter to delete should exist"))}function d(e){return 100===e.kind||78===e.kind&&(268===e.parent.kind||265===e.parent.kind)}function p(t){return 100===t.kind?e.tryCast(t.parent,e.isImportDeclaration):void 0}function f(t,r){return e.isVariableDeclarationList(r.parent)&&e.first(r.parent.getChildren(t))===r}function m(e,t,r){e.delete(t,234===r.parent.kind?r.parent:r)}function g(t,r,n,i){r!==e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read.code&&(136===i.kind&&(i=e.cast(i.parent,e.isInferTypeNode).typeParameter.name),e.isIdentifier(i)&&function(e){switch(e.parent.kind){case 161:case 160:return!0;case 251:switch(e.parent.parent.parent.kind){case 241:case 240:return!0}}return!1}(i)&&(t.replaceNode(n,i,e.factory.createIdentifier("_"+i.text)),e.isParameter(i.parent)&&e.getJSDocParameterTags(i.parent).forEach((function(r){e.isIdentifier(r.name)&&t.replaceNode(n,r.name,e.factory.createIdentifier("_"+r.name.text))}))))}function _(t,r,n,i,a,o,s,c){!function(t,r,n,i,a,o,s,c){var l=t.parent;e.isParameter(l)?function(t,r,n,i,a,o,s,c){void 0===c&&(c=!1);(function(t,r,n,i,a,o,s){var c=n.parent;switch(c.kind){case 166:case 167:var l=c.parameters.indexOf(n),u=e.isMethodDeclaration(c)?c.name:c,d=e.FindAllReferences.Core.getReferencedSymbolsForNode(c.pos,u,a,i,o);if(d)for(var p=0,f=d;p<f.length;p++)for(var m=0,g=f[p].references;m<g.length;m++){var _=g[m];if(1===_.kind){var h=e.isSuperKeyword(_.node)&&e.isCallExpression(_.node.parent)&&_.node.parent.arguments.length>l,v=e.isPropertyAccessExpression(_.node.parent)&&e.isSuperKeyword(_.node.parent.expression)&&e.isCallExpression(_.node.parent.parent)&&_.node.parent.parent.arguments.length>l,b=(e.isMethodDeclaration(_.node.parent)||e.isMethodSignature(_.node.parent))&&_.node.parent!==n.parent&&_.node.parent.parameters.length>l;if(h||v||b)return!1}}return!0;case 253:return!c.name||!function(t,r,n){return!!e.FindAllReferences.Core.eachSymbolReferenceInFile(n,t,r,(function(t){return e.isIdentifier(t)&&e.isCallExpression(t.parent)&&t.parent.arguments.indexOf(t)>=0}))}(t,r,c.name)||y(c,n,s);case 209:case 210:return y(c,n,s);case 169:return!1;default:return e.Debug.failBadSyntaxKind(c)}})(i,r,n,a,o,s,c)&&(n.modifiers&&n.modifiers.length>0&&(!e.isIdentifier(n.name)||e.FindAllReferences.Core.isSymbolReferencedInFile(n.name,i,r))?n.modifiers.forEach((function(e){return t.deleteModifier(r,e)})):!n.initializer&&h(n,i,a)&&t.delete(r,n))}(r,n,l,i,a,o,s,c):c&&e.isIdentifier(t)&&e.FindAllReferences.Core.isSymbolReferencedInFile(t,i,n)||r.delete(n,e.isImportClause(l)?t:e.isComputedPropertyName(l)?l.parent:l)}(r,n,t,i,a,o,s,c),e.isIdentifier(r)&&e.FindAllReferences.Core.eachSymbolReferenceInFile(r,i,t,(function(r){var i;e.isPropertyAccessExpression(r.parent)&&r.parent.name===r&&(r=r.parent),!c&&(i=r,(e.isBinaryExpression(i.parent)&&i.parent.left===i||(e.isPostfixUnaryExpression(i.parent)||e.isPrefixUnaryExpression(i.parent))&&i.parent.operand===i)&&e.isExpressionStatement(i.parent.parent))&&n.delete(t,r.parent.parent)}))}function h(t,r,n){var i=t.parent.parameters.indexOf(t);return!e.FindAllReferences.Core.someSignatureUsage(t.parent,n,r,(function(e,t){return!t||t.arguments.length>i}))}function y(t,r,n){var i=t.parameters,a=i.indexOf(r);return e.Debug.assert(-1!==a,"The parameter should already be in the list"),n?i.slice(a+1).every((function(t){return e.isIdentifier(t.name)&&!t.symbol.isReferenced})):a===i.length-1}t.registerCodeFix({errorCodes:s,getCodeActions:function(i){var s=i.errorCode,h=i.sourceFile,y=i.program,v=i.cancellationToken,b=y.getTypeChecker(),k=y.getSourceFiles(),x=e.getTokenAtPosition(h,i.span.start);if(e.isJSDocTemplateTag(x))return[l(e.textChanges.ChangeTracker.with(i,(function(e){return e.delete(h,x)})),e.Diagnostics.Remove_template_tag)];if(29===x.kind)return[l(S=e.textChanges.ChangeTracker.with(i,(function(e){return u(e,h,x)})),e.Diagnostics.Remove_type_parameters)];var E=p(x);if(E){var S=e.textChanges.ChangeTracker.with(i,(function(e){return e.delete(h,E)}));return[t.createCodeFixAction(r,S,[e.Diagnostics.Remove_import_from_0,e.showModuleSpecifier(E)],a,e.Diagnostics.Delete_all_unused_imports)]}if(d(x)&&(A=e.textChanges.ChangeTracker.with(i,(function(e){return _(h,x,e,b,k,y,v,!1)}))).length)return[t.createCodeFixAction(r,A,[e.Diagnostics.Remove_unused_declaration_for_Colon_0,x.getText(h)],a,e.Diagnostics.Delete_all_unused_imports)];if(e.isObjectBindingPattern(x.parent)||e.isArrayBindingPattern(x.parent)){if(e.isParameter(x.parent.parent)){var D=x.parent.elements,w=[D.length>1?e.Diagnostics.Remove_unused_declarations_for_Colon_0:e.Diagnostics.Remove_unused_declaration_for_Colon_0,e.map(D,(function(e){return e.getText(h)})).join(", ")];return[l(e.textChanges.ChangeTracker.with(i,(function(t){return function(t,r,n){e.forEach(n.elements,(function(e){return t.delete(r,e)}))}(t,h,x.parent)})),w)]}return[l(e.textChanges.ChangeTracker.with(i,(function(e){return e.delete(h,x.parent.parent)})),e.Diagnostics.Remove_unused_destructuring_declaration)]}if(f(h,x))return[l(e.textChanges.ChangeTracker.with(i,(function(e){return m(e,h,x.parent)})),e.Diagnostics.Remove_variable_statement)];var T=[];if(136===x.kind){S=e.textChanges.ChangeTracker.with(i,(function(e){return c(e,h,x)}));var C=e.cast(x.parent,e.isInferTypeNode).typeParameter.name.text;T.push(t.createCodeFixAction(r,S,[e.Diagnostics.Replace_infer_0_with_unknown,C],o,e.Diagnostics.Replace_all_unused_infer_with_unknown))}else{var A;if((A=e.textChanges.ChangeTracker.with(i,(function(e){return _(h,x,e,b,k,y,v,!1)}))).length){C=e.isComputedPropertyName(x.parent)?x.parent:x;T.push(l(A,[e.Diagnostics.Remove_unused_declaration_for_Colon_0,C.getText(h)]))}}var N=e.textChanges.ChangeTracker.with(i,(function(e){return g(e,s,h,x)}));return N.length&&T.push(t.createCodeFixAction(r,N,[e.Diagnostics.Prefix_0_with_an_underscore,x.getText(h)],n,e.Diagnostics.Prefix_all_unused_declarations_with_where_possible)),T},fixIds:[n,i,a,o],getAllCodeActions:function(r){var l=r.sourceFile,y=r.program,v=r.cancellationToken,b=y.getTypeChecker(),k=y.getSourceFiles();return t.codeFixAll(r,s,(function(t,s){var x=e.getTokenAtPosition(l,s.start);switch(r.fixId){case n:g(t,s.code,l,x);break;case a:var E=p(x);E?t.delete(l,E):d(x)&&_(l,x,t,b,k,y,v,!0);break;case i:if(136===x.kind||d(x))break;if(e.isJSDocTemplateTag(x))t.delete(l,x);else if(29===x.kind)u(t,l,x);else if(e.isObjectBindingPattern(x.parent)){if(x.parent.parent.initializer)break;e.isParameter(x.parent.parent)&&!h(x.parent.parent,b,k)||t.delete(l,x.parent.parent)}else{if(e.isArrayBindingPattern(x.parent.parent)&&x.parent.parent.parent.initializer)break;f(l,x)?m(t,l,x.parent):_(l,x,t,b,k,y,v,!0)}break;case o:136===x.kind&&c(t,l,x);break;default:e.Debug.fail(JSON.stringify(r.fixId))}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixUnreachableCode",n=[e.Diagnostics.Unreachable_code_detected.code];function i(t,r,n,i,a){var o=e.getTokenAtPosition(r,n),s=e.findAncestor(o,e.isStatement);if(s.getStart(r)!==o.getStart(r)){var c=JSON.stringify({statementKind:e.Debug.formatSyntaxKind(s.kind),tokenKind:e.Debug.formatSyntaxKind(o.kind),errorCode:a,start:n,length:i});e.Debug.fail("Token and statement should start at the same point. "+c)}var l=(e.isBlock(s.parent)?s.parent:s).parent;if(!e.isBlock(s.parent)||s===e.first(s.parent.statements))switch(l.kind){case 236:if(l.elseStatement){if(e.isBlock(s.parent))break;return void t.replaceNode(r,s,e.factory.createBlock(e.emptyArray))}case 238:case 239:return void t.delete(r,l)}if(e.isBlock(s.parent)){var u=n+i,d=e.Debug.checkDefined(function(e,t){for(var r,n=0,i=e;n<i.length;n++){var a=i[n];if(!t(a))break;r=a}return r}(e.sliceAfter(s.parent.statements,s),(function(e){return e.pos<u})),"Some statement should be last");t.deleteNodeRange(r,s,d)}else t.delete(r,s)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start,n.span.length,n.errorCode)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Remove_unreachable_code,r,e.Diagnostics.Remove_all_unreachable_code)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start,t.length,t.code)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixUnusedLabel",n=[e.Diagnostics.Unused_label.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n),a=e.cast(i.parent,e.isLabeledStatement),o=i.getStart(r),s=a.statement.getStart(r),c=e.positionsAreOnSameLine(o,s,r)?s:e.skipTrivia(r.text,e.findChildOfKind(a,58,r).end,!0);t.deleteRange(r,{pos:o,end:c})}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Remove_unused_label,r,e.Diagnostics.Remove_all_unused_labels)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixJSDocTypes_plain",n="fixJSDocTypes_nullable",i=[e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments.code];function a(e,t,r,n,i){e.replaceNode(t,r,i.typeToTypeNode(n,r,void 0))}function o(t,r,n){var i=e.findAncestor(e.getTokenAtPosition(t,r),s),a=i&&i.type;return a&&{typeNode:a,type:n.getTypeFromTypeNode(a)}}function s(e){switch(e.kind){case 226:case 170:case 171:case 253:case 168:case 172:case 191:case 166:case 165:case 161:case 164:case 163:case 169:case 257:case 207:case 251:return!0;default:return!1}}t.registerCodeFix({errorCodes:i,getCodeActions:function(i){var s=i.sourceFile,c=i.program.getTypeChecker(),l=o(s,i.span.start,c);if(l){var u=l.typeNode,d=l.type,p=u.getText(s),f=[m(d,r,e.Diagnostics.Change_all_jsdoc_style_types_to_TypeScript)];return 308===u.kind&&f.push(m(c.getNullableType(d,32768),n,e.Diagnostics.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),f}function m(r,n,o){var l=e.textChanges.ChangeTracker.with(i,(function(e){return a(e,s,u,r,c)}));return t.createCodeFixAction("jdocTypes",l,[e.Diagnostics.Change_0_to_1,p,c.typeToString(r)],n,o)}},fixIds:[r,n],getAllCodeActions:function(e){var r=e.fixId,s=e.program,c=e.sourceFile,l=s.getTypeChecker();return t.codeFixAll(e,i,(function(e,t){var i=o(t.file,t.start,l);if(i){var s=i.typeNode,u=i.type,d=308===s.kind&&r===n?l.getNullableType(u,32768):u;a(e,c,s,d,l)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixMissingCallParentheses",n=[e.Diagnostics.This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it_instead.code];function i(e,t,r){e.replaceNodeWithText(t,r,r.text+"()")}function a(t,r){var n=e.getTokenAtPosition(t,r);if(e.isPropertyAccessExpression(n.parent)){for(var i=n.parent;e.isPropertyAccessExpression(i.parent);)i=i.parent;return i.name}if(e.isIdentifier(n))return n}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=a(n.sourceFile,n.span.start);if(o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Add_missing_call_parentheses,r,e.Diagnostics.Add_all_missing_call_parentheses)]}},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=a(t.file,t.start);r&&i(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixAwaitInSyncFunction",n=[e.Diagnostics.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,e.Diagnostics.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code];function i(t,r){var n=e.getTokenAtPosition(t,r),i=e.getContainingFunction(n);if(i){var a,o;switch(i.kind){case 166:a=i.name;break;case 253:case 209:a=e.findChildOfKind(i,98,t);break;case 210:a=e.findChildOfKind(i,20,t)||e.first(i.parameters);break;default:return}return a&&{insertBefore:a,returnType:(o=i,o.type?o.type:e.isVariableDeclaration(o.parent)&&o.parent.type&&e.isFunctionTypeNode(o.parent.type)?o.parent.type.type:void 0)}}}function a(t,r,n){var i=n.insertBefore,a=n.returnType;if(a){var o=e.getEntityNameFromTypeNode(a);o&&78===o.kind&&"Promise"===o.text||t.replaceNode(r,a,e.factory.createTypeReferenceNode("Promise",e.factory.createNodeArray([a])))}t.insertModifierBefore(r,130,i)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start);if(c){var l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Add_async_modifier_to_containing_function,r,e.Diagnostics.Add_all_missing_async_modifiers)]}},fixIds:[r],getAllCodeActions:function(r){var o=new e.Map;return t.codeFixAll(r,n,(function(t,n){var s=i(n.file,n.start);s&&e.addToSeen(o,e.getNodeId(s.insertBefore))&&a(t,r.sourceFile,s)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,e.Diagnostics._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],n="fixPropertyOverrideAccessor";function i(r,n,i,a,o){var s,c;if(a===e.Diagnostics._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)s=n,c=n+i;else if(a===e.Diagnostics._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){var l=o.program.getTypeChecker(),u=e.getTokenAtPosition(r,n).parent;e.Debug.assert(e.isAccessor(u),"error span of fixPropertyOverrideAccessor should only be on an accessor");var d=u.parent;e.Debug.assert(e.isClassLike(d),"erroneous accessors should only be inside classes");var p=e.singleOrUndefined(t.getAllSupers(d,l));if(!p)return[];var f=e.unescapeLeadingUnderscores(e.getTextOfPropertyName(u.name)),m=l.getPropertyOfType(l.getTypeAtLocation(p),f);if(!m||!m.valueDeclaration)return[];s=m.valueDeclaration.pos,c=m.valueDeclaration.end,r=e.getSourceFileOfNode(m.valueDeclaration)}else e.Debug.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+a);return t.generateAccessorFromProperty(r,o.program,s,c,o,e.Diagnostics.Generate_get_and_set_accessors.message)}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var a=i(r.sourceFile,r.span.start,r.span.length,r.errorCode,r);if(a)return[t.createCodeFixAction(n,a,e.Diagnostics.Generate_get_and_set_accessors,n,e.Diagnostics.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,r,(function(t,r){var n=i(r.file,r.start,r.length,r.code,e);if(n)for(var a=0,o=n;a<o.length;a++){var s=o[a];t.pushRaw(e.sourceFile,s)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="inferFromUsage",n=[e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,e.Diagnostics.Variable_0_implicitly_has_an_1_type.code,e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code,e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,e.Diagnostics.Member_0_implicitly_has_an_1_type.code,e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];function a(t,r){switch(t){case e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code:case e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.isSetAccessorDeclaration(e.getContainingFunction(r))?e.Diagnostics.Infer_type_of_0_from_usage:e.Diagnostics.Infer_parameter_types_from_usage;case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code:case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Infer_parameter_types_from_usage;case e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return e.Diagnostics.Infer_this_type_of_0_from_usage;default:return e.Diagnostics.Infer_type_of_0_from_usage}}function o(r,n,i,a,o,p,_,h,y){if(e.isParameterPropertyModifier(i.kind)||78===i.kind||25===i.kind||108===i.kind){var v=i.parent,b=t.createImportAdder(n,o,y,h);switch(a=function(t){switch(t){case e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Variable_0_implicitly_has_an_1_type.code;case e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code;case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code;case e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Member_0_implicitly_has_an_1_type.code}return t}(a)){case e.Diagnostics.Member_0_implicitly_has_an_1_type.code:case e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(e.isVariableDeclaration(v)&&_(v)||e.isPropertyDeclaration(v)||e.isPropertySignature(v))return s(r,b,n,v,o,h,p),b.writeFixes(r),v;if(e.isPropertyAccessExpression(v)){var k=f(v.name,o,p),x=e.getTypeNodeIfAccessible(k,v,o,h);if(x){var E=e.factory.createJSDocTypeTag(void 0,e.factory.createJSDocTypeExpression(x),"");d(r,n,e.cast(v.parent.parent,e.isExpressionStatement),[E])}return b.writeFixes(r),v}return;case e.Diagnostics.Variable_0_implicitly_has_an_1_type.code:var S=o.getTypeChecker().getSymbolAtLocation(i);return S&&S.valueDeclaration&&e.isVariableDeclaration(S.valueDeclaration)&&_(S.valueDeclaration)?(s(r,b,n,S.valueDeclaration,o,h,p),b.writeFixes(r),S.valueDeclaration):void 0}var D=e.getContainingFunction(i);if(void 0!==D){var w;switch(a){case e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code:if(e.isSetAccessorDeclaration(D)){c(r,b,n,D,o,h,p),w=D;break}case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code:if(_(D)){var T=e.cast(v,e.isParameter);!function(t,r,n,i,a,o,s,c){if(!e.isIdentifier(i.name))return;var d=function(t,r,n,i){var a=m(t,r,n,i);return a&&g(n,a,i).parameters(t)||t.parameters.map((function(t){return{declaration:t,type:e.isIdentifier(t.name)?f(t.name,n,i):n.getTypeChecker().getAnyType()}}))}(a,n,o,c);if(e.Debug.assert(a.parameters.length===d.length,"Parameter count and inference count should match"),e.isInJSFile(a))u(t,n,d,o,s);else{var p=e.isArrowFunction(a)&&!e.findChildOfKind(a,20,n);p&&t.insertNodeBefore(n,e.first(a.parameters),e.factory.createToken(20));for(var _=0,h=d;_<h.length;_++){var y=h[_],v=y.declaration,b=y.type;!v||v.type||v.initializer||l(t,r,n,v,b,o,s)}p&&t.insertNodeAfter(n,e.last(a.parameters),e.factory.createToken(21))}}(r,b,n,T,D,o,h,p),w=T}break;case e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:e.isGetAccessorDeclaration(D)&&e.isIdentifier(D.name)&&(l(r,b,n,D,f(D.name,o,p),o,h),w=D);break;case e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:e.isSetAccessorDeclaration(D)&&(c(r,b,n,D,o,h,p),w=D);break;case e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:e.textChanges.isThisTypeAnnotatable(D)&&_(D)&&(!function(t,r,n,i,a,o){var s=m(n,r,i,o);if(!s||!s.length)return;var c=g(i,s,o).thisParameter(),l=e.getTypeNodeIfAccessible(c,n,i,a);if(!l)return;e.isInJSFile(n)?function(t,r,n,i){d(t,r,n,[e.factory.createJSDocThisTag(void 0,e.factory.createJSDocTypeExpression(i))])}(t,r,n,l):t.tryInsertThisTypeAnnotation(r,n,l)}(r,n,D,o,h,p),w=D);break;default:return e.Debug.fail(String(a))}return b.writeFixes(r),w}}}function s(t,r,n,i,a,o,s){e.isIdentifier(i.name)&&l(t,r,n,i,f(i.name,a,s),a,o)}function c(t,r,n,i,a,o,s){var c=e.firstOrUndefined(i.parameters);if(c&&e.isIdentifier(i.name)&&e.isIdentifier(c.name)){var d=f(i.name,a,s);d===a.getTypeChecker().getAnyType()&&(d=f(c.name,a,s)),e.isInJSFile(i)?u(t,n,[{declaration:c,type:d}],a,o):l(t,r,n,c,d,a,o)}}function l(r,n,i,a,o,s,c){var l=e.getTypeNodeIfAccessible(o,a,s,c);if(l)if(e.isInJSFile(i)&&163!==a.kind){var u=e.isVariableDeclaration(a)?e.tryCast(a.parent.parent,e.isVariableStatement):a;if(!u)return;var p=e.factory.createJSDocTypeExpression(l);d(r,i,u,[e.isGetAccessorDeclaration(a)?e.factory.createJSDocReturnTag(void 0,p,""):e.factory.createJSDocTypeTag(void 0,p,"")])}else(function(r,n,i,a,o,s){var c=t.tryGetAutoImportableReferenceFromTypeNode(r,s);if(c&&a.tryInsertTypeAnnotation(i,n,c.typeNode))return e.forEach(c.symbols,(function(e){return o.addImportFromExportedSymbol(e,!0)})),!0;return!1})(l,a,i,r,n,e.getEmitScriptTarget(s.getCompilerOptions()))||r.tryInsertTypeAnnotation(i,a,l)}function u(t,r,n,i,a){var o=n.length&&n[0].declaration.parent;if(o){var s=e.mapDefined(n,(function(t){var r=t.declaration;if(!r.initializer&&!e.getJSDocType(r)&&e.isIdentifier(r.name)){var n=t.type&&e.getTypeNodeIfAccessible(t.type,r,i,a);if(n){var o=e.factory.cloneNode(r.name);return e.setEmitFlags(o,3584),{name:e.factory.cloneNode(r.name),param:r,isOptional:!!t.isOptional,typeNode:n}}}}));if(s.length)if(e.isArrowFunction(o)||e.isFunctionExpression(o)){var c=e.isArrowFunction(o)&&!e.findChildOfKind(o,20,r);c&&t.insertNodeBefore(r,e.first(o.parameters),e.factory.createToken(20)),e.forEach(s,(function(n){var i=n.typeNode,a=n.param,o=e.factory.createJSDocTypeTag(void 0,e.factory.createJSDocTypeExpression(i)),s=e.factory.createJSDocComment(void 0,[o]);t.insertNodeAt(r,a.getStart(r),s,{suffix:" "})})),c&&t.insertNodeAfter(r,e.last(o.parameters),e.factory.createToken(21))}else{var l=e.map(s,(function(t){var r=t.name,n=t.typeNode,i=t.isOptional;return e.factory.createJSDocParameterTag(void 0,r,!!i,e.factory.createJSDocTypeExpression(n),!1,"")}));d(t,r,o,l)}}}function d(t,r,n,a){var o=e.mapDefined(n.jsDoc,(function(e){return e.comment})),s=e.flatMapToMutable(n.jsDoc,(function(e){return e.tags})),c=a.filter((function(t){return!s||!s.some((function(r,n){var i=function(t,r){if(t.kind!==r.kind)return;switch(t.kind){case 329:var n=t,i=r;return e.isIdentifier(n.name)&&e.isIdentifier(i.name)&&n.name.escapedText===i.name.escapedText?e.factory.createJSDocParameterTag(void 0,i.name,!1,i.typeExpression,i.isNameFirst,n.comment):void 0;case 330:return e.factory.createJSDocReturnTag(void 0,r.typeExpression,t.comment)}}(r,t);return i&&(s[n]=i),!!i}))})),l=e.factory.createJSDocComment(o.join("\n"),e.factory.createNodeArray(i(i([],s||e.emptyArray),c))),u=210===n.kind?function(e){if(164===e.parent.kind)return e.parent;return e.parent.parent}(n):n;u.jsDoc=n.jsDoc,u.jsDocCache=n.jsDocCache,t.insertJsdocCommentBefore(r,u,l)}function p(t,r,n){return e.mapDefined(e.FindAllReferences.getReferenceEntriesForNode(-1,t,r,r.getSourceFiles(),n),(function(t){return 0!==t.kind?e.tryCast(t.node,e.isIdentifier):void 0}))}function f(e,t,r){return g(t,p(e,t,r),r).single()}function m(t,r,n,i){var a;switch(t.kind){case 167:a=e.findChildOfKind(t,133,r);break;case 210:case 209:var o=t.parent;a=(e.isVariableDeclaration(o)||e.isPropertyDeclaration(o))&&e.isIdentifier(o.name)?o.name:t.name;break;case 253:case 166:case 165:a=t.name}if(a)return p(a,n,i)}function g(t,r,n){var a=t.getTypeChecker(),o={string:function(){return a.getStringType()},number:function(){return a.getNumberType()},Array:function(e){return a.createArrayType(e)},Promise:function(e){return a.createPromiseType(e)}},s=[a.getStringType(),a.getNumberType(),a.createArrayType(a.getAnyType()),a.createPromiseType(a.getAnyType())];return{single:function(){return g(u(r))},parameters:function(o){if(0===r.length||!o.parameters)return;for(var s=c(),l=0,f=r;l<f.length;l++){var m=f[l];n.throwIfCancellationRequested(),d(m,s)}var _=i(i([],s.constructs||[]),s.calls||[]);return o.parameters.map((function(r,i){for(var s=[],c=e.isRestParameter(r),l=!1,d=0,f=_;d<f.length;d++){var m=f[d];if(m.argumentTypes.length<=i)l=e.isInJSFile(o),s.push(a.getUndefinedType());else if(c)for(var h=i;h<m.argumentTypes.length;h++)s.push(a.getBaseTypeOfLiteralType(m.argumentTypes[h]));else s.push(a.getBaseTypeOfLiteralType(m.argumentTypes[i]))}if(e.isIdentifier(r.name)){var y=u(p(r.name,t,n));s.push.apply(s,c?e.mapDefined(y,a.getElementTypeOfArrayType):y)}var v=g(s);return{type:c?a.createArrayType(v):v,isOptional:l&&!c,declaration:r}}))},thisParameter:function(){for(var t=c(),i=0,a=r;i<a.length;i++){var o=a[i];n.throwIfCancellationRequested(),d(o,t)}return g(t.candidateThisTypes||e.emptyArray)}};function c(){return{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}}function l(t){for(var r=new e.Map,n=0,i=t;n<i.length;n++){var a=i[n];a.properties&&a.properties.forEach((function(e,t){r.has(t)||r.set(t,[]),r.get(t).push(e)}))}var o=new e.Map;return r.forEach((function(e,t){o.set(t,l(e))})),{isNumber:t.some((function(e){return e.isNumber})),isString:t.some((function(e){return e.isString})),isNumberOrString:t.some((function(e){return e.isNumberOrString})),candidateTypes:e.flatMap(t,(function(e){return e.candidateTypes})),properties:o,calls:e.flatMap(t,(function(e){return e.calls})),constructs:e.flatMap(t,(function(e){return e.constructs})),numberIndex:e.forEach(t,(function(e){return e.numberIndex})),stringIndex:e.forEach(t,(function(e){return e.stringIndex})),candidateThisTypes:e.flatMap(t,(function(e){return e.candidateThisTypes})),inferredTypes:void 0}}function u(e){for(var t={isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0},r=0,i=e;r<i.length;r++){var a=i[r];n.throwIfCancellationRequested(),d(a,t)}return _(t)}function d(t,r){for(;e.isRightSideOfQualifiedNameOrPropertyAccess(t);)t=t.parent;switch(t.parent.kind){case 235:!function(t,r){v(r,e.isCallExpression(t)?a.getVoidType():a.getAnyType())}(t,r);break;case 217:r.isNumber=!0;break;case 216:!function(e,t){switch(e.operator){case 45:case 46:case 40:case 54:t.isNumber=!0;break;case 39:t.isNumberOrString=!0}}(t.parent,r);break;case 218:!function(t,r,n){switch(r.operatorToken.kind){case 42:case 41:case 43:case 44:case 47:case 48:case 49:case 50:case 51:case 52:case 64:case 66:case 65:case 67:case 68:case 72:case 73:case 77:case 69:case 71:case 70:case 40:case 29:case 32:case 31:case 33:var i=a.getTypeAtLocation(r.left===t?r.right:r.left);1056&i.flags?v(n,i):n.isNumber=!0;break;case 63:case 39:var o=a.getTypeAtLocation(r.left===t?r.right:r.left);1056&o.flags?v(n,o):296&o.flags?n.isNumber=!0:402653316&o.flags?n.isString=!0:1&o.flags||(n.isNumberOrString=!0);break;case 62:case 34:case 36:case 37:case 35:v(n,a.getTypeAtLocation(r.left===t?r.right:r.left));break;case 101:t===r.left&&(n.isString=!0);break;case 56:case 60:t!==r.left||251!==t.parent.parent.kind&&!e.isAssignmentExpression(t.parent.parent,!0)||v(n,a.getTypeAtLocation(r.right))}}(t,t.parent,r);break;case 287:case 288:!function(e,t){v(t,a.getTypeAtLocation(e.parent.parent.expression))}(t.parent,r);break;case 204:case 205:t.parent.expression===t?function(e,t){var r={argumentTypes:[],return_:{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}};if(e.arguments)for(var n=0,i=e.arguments;n<i.length;n++){var o=i[n];r.argumentTypes.push(a.getTypeAtLocation(o))}d(e,r.return_),204===e.kind?(t.calls||(t.calls=[])).push(r):(t.constructs||(t.constructs=[])).push(r)}(t.parent,r):f(t,r);break;case 202:!function(t,r){var n=e.escapeLeadingUnderscores(t.name.text);r.properties||(r.properties=new e.Map);var i=r.properties.get(n)||{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};d(t,i),r.properties.set(n,i)}(t.parent,r);break;case 203:!function(e,t,r){if(t===e.argumentExpression)return void(r.isNumberOrString=!0);var n=a.getTypeAtLocation(e.argumentExpression),i={isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};d(e,i),296&n.flags?r.numberIndex=i:r.stringIndex=i}(t.parent,t,r);break;case 291:case 292:!function(t,r){var n=e.isVariableDeclaration(t.parent.parent)?t.parent.parent:t.parent;b(r,a.getTypeAtLocation(n))}(t.parent,r);break;case 164:!function(e,t){b(t,a.getTypeAtLocation(e.parent))}(t.parent,r);break;case 251:var n=t.parent,i=n.name,o=n.initializer;if(t===i){o&&v(r,a.getTypeAtLocation(o));break}default:return f(t,r)}}function f(t,r){e.isExpressionNode(t)&&v(r,a.getContextualType(t))}function m(e){return g(_(e))}function g(t){if(!t.length)return a.getAnyType();var r=a.getUnionType([a.getStringType(),a.getNumberType()]),n=function(t,r){for(var n=[],i=0,a=t;i<a.length;i++)for(var o=a[i],s=0,c=r;s<c.length;s++){var l=c[s],u=l.high,d=l.low;u(o)&&(e.Debug.assert(!d(o),"Priority can't have both low and high"),n.push(d))}return t.filter((function(e){return n.every((function(t){return!t(e)}))}))}(t,[{high:function(e){return e===a.getStringType()||e===a.getNumberType()},low:function(e){return e===r}},{high:function(e){return!(16385&e.flags)},low:function(e){return!!(16385&e.flags)}},{high:function(t){return!(114689&t.flags||16&e.getObjectFlags(t))},low:function(t){return!!(16&e.getObjectFlags(t))}}]),i=n.filter((function(t){return 16&e.getObjectFlags(t)}));return i.length&&(n=n.filter((function(t){return!(16&e.getObjectFlags(t))}))).push(function(t){if(1===t.length)return t[0];for(var r=[],n=[],i=[],o=[],s=!1,c=!1,l=e.createMultiMap(),u=0,d=t;u<d.length;u++){for(var p=d[u],f=0,m=a.getPropertiesOfType(p);f<m.length;f++){var g=m[f];l.add(g.name,a.getTypeOfSymbolAtLocation(g,g.valueDeclaration))}r.push.apply(r,a.getSignaturesOfType(p,0)),n.push.apply(n,a.getSignaturesOfType(p,1)),p.stringIndexInfo&&(i.push(p.stringIndexInfo.type),s=s||p.stringIndexInfo.isReadonly),p.numberIndexInfo&&(o.push(p.numberIndexInfo.type),c=c||p.numberIndexInfo.isReadonly)}var _=e.mapEntries(l,(function(e,r){var n=r.length<t.length?16777216:0,i=a.createSymbol(4|n,e);return i.type=a.getUnionType(r),[e,i]}));return a.createAnonymousType(t[0].symbol,_,r,n,i.length?a.createIndexInfo(a.getUnionType(i),s):void 0,o.length?a.createIndexInfo(a.getUnionType(o),c):void 0)}(i)),a.getWidenedType(a.getUnionType(n.map(a.getBaseTypeOfLiteralType),2))}function _(t){var r,n,i,c=[];return t.isNumber&&c.push(a.getNumberType()),t.isString&&c.push(a.getStringType()),t.isNumberOrString&&c.push(a.getUnionType([a.getStringType(),a.getNumberType()])),t.numberIndex&&c.push(a.createArrayType(m(t.numberIndex))),((null===(r=t.properties)||void 0===r?void 0:r.size)||(null===(n=t.calls)||void 0===n?void 0:n.length)||(null===(i=t.constructs)||void 0===i?void 0:i.length)||t.stringIndex)&&c.push(function(t){var r=new e.Map;t.properties&&t.properties.forEach((function(e,t){var n=a.createSymbol(4,t);n.type=m(e),r.set(t,n)}));var n=t.calls?[y(t.calls)]:[],i=t.constructs?[y(t.constructs)]:[],o=t.stringIndex&&a.createIndexInfo(m(t.stringIndex),!1);return a.createAnonymousType(void 0,r,n,i,o,void 0)}(t)),c.push.apply(c,(t.candidateTypes||[]).map((function(e){return a.getBaseTypeOfLiteralType(e)}))),c.push.apply(c,function(t){if(!t.properties||!t.properties.size)return[];var r=s.filter((function(r){return function(t,r){return!!r.properties&&!e.forEachEntry(r.properties,(function(r,n){var i,o=a.getTypeOfPropertyOfType(t,n);return!o||(r.calls?!a.getSignaturesOfType(o,0).length||!a.isTypeAssignableTo(o,(i=r.calls,a.createAnonymousType(void 0,e.createSymbolTable(),[y(i)],e.emptyArray,void 0,void 0))):!a.isTypeAssignableTo(o,m(r)))}))}(r,t)}));if(0<r.length&&r.length<3)return r.map((function(r){return function(t,r){if(!(4&e.getObjectFlags(t)&&r.properties))return t;var n=t.target,i=e.singleOrUndefined(n.typeParameters);if(!i)return t;var s=[];return r.properties.forEach((function(t,r){var o=a.getTypeOfPropertyOfType(n,r);e.Debug.assert(!!o,"generic should have all the properties of its reference."),s.push.apply(s,h(o,m(t),i))})),o[t.symbol.escapedName](g(s))}(r,t)}));return[]}(t)),c}function h(t,r,n){if(t===n)return[r];if(3145728&t.flags)return e.flatMap(t.types,(function(e){return h(e,r,n)}));if(4&e.getObjectFlags(t)&&4&e.getObjectFlags(r)){var i=a.getTypeArguments(t),o=a.getTypeArguments(r),s=[];if(i&&o)for(var c=0;c<i.length;c++)o[c]&&s.push.apply(s,h(i[c],o[c],n));return s}var l=a.getSignaturesOfType(t,0),u=a.getSignaturesOfType(r,0);return 1===l.length&&1===u.length?function(t,r,n){for(var i=[],o=0;o<t.parameters.length;o++){var s=t.parameters[o],c=r.parameters[o],l=t.declaration&&e.isRestParameter(t.declaration.parameters[o]);if(!c)break;var u=a.getTypeOfSymbolAtLocation(s,s.valueDeclaration),d=l&&a.getElementTypeOfArrayType(u);d&&(u=d);var p=c.type||a.getTypeOfSymbolAtLocation(c,c.valueDeclaration);i.push.apply(i,h(u,p,n))}var f=a.getReturnTypeOfSignature(t),m=a.getReturnTypeOfSignature(r);return i.push.apply(i,h(f,m,n)),i}(l[0],u[0],n):[]}function y(t){for(var r=[],n=Math.max.apply(Math,t.map((function(e){return e.argumentTypes.length}))),i=function(n){var i=a.createSymbol(1,e.escapeLeadingUnderscores("arg"+n));i.type=g(t.map((function(e){return e.argumentTypes[n]||a.getUndefinedType()}))),t.some((function(e){return void 0===e.argumentTypes[n]}))&&(i.flags|=16777216),r.push(i)},o=0;o<n;o++)i(o);var s=m(l(t.map((function(e){return e.return_}))));return a.createSignature(void 0,void 0,void 0,r,s,void 0,n,0)}function v(e,t){!t||1&t.flags||131072&t.flags||(e.candidateTypes||(e.candidateTypes=[])).push(t)}function b(e,t){!t||1&t.flags||131072&t.flags||(e.candidateThisTypes||(e.candidateThisTypes=[])).push(t)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i,s=n.sourceFile,c=n.program,l=n.span.start,u=n.errorCode,d=n.cancellationToken,p=n.host,f=n.preferences,m=e.getTokenAtPosition(s,l),g=e.textChanges.ChangeTracker.with(n,(function(t){i=o(t,s,m,u,c,d,e.returnTrue,p,f)})),_=i&&e.getNameOfDeclaration(i);return _&&0!==g.length?[t.createCodeFixAction(r,g,[a(u,m),_.getText(s)],r,e.Diagnostics.Infer_all_types_from_usage)]:void 0},fixIds:[r],getAllCodeActions:function(r){var i=r.sourceFile,a=r.program,s=r.cancellationToken,c=r.host,l=r.preferences,u=e.nodeSeenTracker();return t.codeFixAll(r,n,(function(t,r){o(t,i,e.getTokenAtPosition(r.file,r.start),r.code,a,s,u,c,l)}))}}),t.addJSDocTags=d}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixReturnTypeInAsyncFunction",n=[e.Diagnostics.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];function i(t,r,n){if(!e.isInJSFile(t)){var i=e.getTokenAtPosition(t,n),a=e.findAncestor(i,e.isFunctionLikeDeclaration),o=null==a?void 0:a.type;if(o){var s=r.getTypeFromTypeNode(o),c=r.getAwaitedType(s)||r.getVoidType(),l=r.typeToTypeNode(c,o,void 0);return l?{returnTypeNode:o,returnType:s,promisedTypeNode:l,promisedType:c}:void 0}}}function a(t,r,n,i){t.replaceNode(r,n,e.factory.createTypeReferenceNode("Promise",[i]))}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=n.sourceFile,s=n.program,c=n.span,l=s.getTypeChecker(),u=i(o,s.getTypeChecker(),c.start);if(u){var d=u.returnTypeNode,p=u.returnType,f=u.promisedTypeNode,m=u.promisedType,g=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,d,f)}));return[t.createCodeFixAction(r,g,[e.Diagnostics.Replace_0_with_Promise_1,l.typeToString(p),l.typeToString(m)],r,e.Diagnostics.Fix_all_incorrect_return_type_of_an_async_functions)]}},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,e.program.getTypeChecker(),r.start);n&&a(t,r.file,n.returnTypeNode,n.promisedTypeNode)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="disableJsDiagnostics",n="disableJsDiagnostics",i=e.mapDefined(Object.keys(e.Diagnostics),(function(t){var r=e.Diagnostics[t];return r.category===e.DiagnosticCategory.Error?r.code:void 0}));function a(t,r,n,i){var a=e.getLineAndCharacterOfPosition(r,n).line;i&&!e.tryAddToSet(i,a)||t.insertCommentBeforeLine(r,a,n," @ts-ignore")}t.registerCodeFix({errorCodes:i,getCodeActions:function(i){var o=i.sourceFile,s=i.program,c=i.span,l=i.host,u=i.formatContext;if(e.isInJSFile(o)&&e.isCheckJsEnabledForFile(o,s.getCompilerOptions())){var d=o.checkJsDirective?"":e.getNewLineOrDefaultFromHost(l,u.options),p=[t.createCodeFixActionWithoutFixAll(r,[t.createFileTextChanges(o.fileName,[e.createTextChange(o.checkJsDirective?e.createTextSpanFromBounds(o.checkJsDirective.pos,o.checkJsDirective.end):e.createTextSpan(0,0),"// @ts-nocheck"+d)])],e.Diagnostics.Disable_checking_for_this_file)];return e.textChanges.isValidLocationToAddComment(o,c.start)&&p.unshift(t.createCodeFixAction(r,e.textChanges.ChangeTracker.with(i,(function(e){return a(e,o,c.start)})),e.Diagnostics.Ignore_this_error_message,n,e.Diagnostics.Add_ts_ignore_to_all_error_messages)),p}},fixIds:[n],getAllCodeActions:function(r){var n=new e.Set;return t.codeFixAll(r,i,(function(t,r){e.textChanges.isValidLocationToAddComment(r.file,r.start)&&a(t,r.file,r.start,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){function r(t){return{trackSymbol:e.noop,moduleResolverHost:e.getModuleSpecifierResolverHost(t.program,t.host)}}function n(t,n,i,s,c,l,u){var p=t.getDeclarations();if(p&&p.length){var m=s.program.getTypeChecker(),g=e.getEmitScriptTarget(s.program.getCompilerOptions()),_=p[0],h=e.getSynthesizedDeepClone(e.getNameOfDeclaration(_),!1),y=function(t){if(4&t)return e.factory.createToken(123);if(16&t)return e.factory.createToken(122);return}(e.getEffectiveModifierFlags(_)),v=y?e.factory.createNodeArray([y]):void 0,b=m.getWidenedType(m.getTypeOfSymbolAtLocation(t,n)),k=!!(16777216&t.flags),x=!!(8388608&n.flags),E=e.getQuotePreference(i,c);switch(_.kind){case 163:case 164:var S=0===E?268435456:void 0,D=m.typeToTypeNode(b,n,S,r(s));if(l)(w=d(D,g))&&(D=w.typeNode,f(l,w.symbols));u(e.factory.createPropertyDeclaration(void 0,v,h,k?e.factory.createToken(57):void 0,D,void 0));break;case 168:case 169:var w,T=m.typeToTypeNode(b,n,void 0,r(s)),C=e.getAllAccessorDeclarations(p,_),A=C.secondAccessor?[C.firstAccessor,C.secondAccessor]:[C.firstAccessor];if(l)(w=d(T,g))&&(T=w.typeNode,f(l,w.symbols));for(var N=0,P=A;N<P.length;N++){var I=P[N];if(e.isGetAccessorDeclaration(I))u(e.factory.createGetAccessorDeclaration(void 0,v,h,e.emptyArray,T,x?void 0:o(E)));else{e.Debug.assertNode(I,e.isSetAccessorDeclaration,"The counterpart to a getter should be a setter");var F=e.getSetAccessorValueParameter(I),O=F&&e.isIdentifier(F.name)?e.idText(F.name):void 0;u(e.factory.createSetAccessorDeclaration(void 0,v,h,a(1,[O],[T],1,!1),x?void 0:o(E)))}}break;case 165:case 166:var R=m.getSignaturesOfType(b,0);if(!e.some(R))break;if(1===p.length){e.Debug.assert(1===R.length,"One declaration implies one signature"),j(E,R[0],v,h,x?void 0:o(E));break}for(var M=0,L=R;M<L.length;M++){j(E,L[M],e.getSynthesizedDeepClones(v,!1),e.getSynthesizedDeepClone(h,!1))}if(!x)if(p.length>R.length)j(E,m.getSignatureFromDeclaration(p[p.length-1]),v,h,o(E));else e.Debug.assert(p.length===R.length,"Declarations and signatures should match count"),u(function(t,r,n,i,s){for(var c=t[0],l=t[0].minArgumentCount,u=!1,d=0,p=t;d<p.length;d++){var f=p[d];l=Math.min(f.minArgumentCount,l),e.signatureHasRestParameter(f)&&(u=!0),f.parameters.length>=c.parameters.length&&(!e.signatureHasRestParameter(f)||e.signatureHasRestParameter(c))&&(c=f)}var m=c.parameters.length-(e.signatureHasRestParameter(c)?1:0),g=c.parameters.map((function(e){return e.name})),_=a(m,g,void 0,l,!1);if(u){var h=e.factory.createArrayTypeNode(e.factory.createKeywordTypeNode(129)),y=e.factory.createParameterDeclaration(void 0,void 0,e.factory.createToken(25),g[m]||"rest",m>=l?e.factory.createToken(57):void 0,h,void 0);_.push(y)}return function(t,r,n,i,a,s,c){return e.factory.createMethodDeclaration(void 0,t,void 0,r,n?e.factory.createToken(57):void 0,i,a,s,o(c))}(i,r,n,void 0,_,void 0,s)}(R,h,k,v,E))}}function j(t,i,a,o,c){var p=function(t,n,i,a,o,s,c,l,u){var p=t.program,m=p.getTypeChecker(),g=e.getEmitScriptTarget(p.getCompilerOptions()),_=1073742081|(0===n?268435456:0),h=m.signatureToSignatureDeclaration(i,166,a,_,r(t));if(!h)return;var y=h.typeParameters,v=h.parameters,b=h.type;if(u){if(y){var k=e.sameMap(y,(function(t){var r,n=t.constraint,i=t.default;n&&((r=d(n,g))&&(n=r.typeNode,f(u,r.symbols)));i&&((r=d(i,g))&&(i=r.typeNode,f(u,r.symbols)));return e.factory.updateTypeParameterDeclaration(t,t.name,n,i)}));y!==k&&(y=e.setTextRange(e.factory.createNodeArray(k,y.hasTrailingComma),y))}var x=e.sameMap(v,(function(t){var r=d(t.type,g),n=t.type;return r&&(n=r.typeNode,f(u,r.symbols)),e.factory.updateParameterDeclaration(t,t.decorators,t.modifiers,t.dotDotDotToken,t.name,t.questionToken,n,t.initializer)}));if(v!==x&&(v=e.setTextRange(e.factory.createNodeArray(x,v.hasTrailingComma),v)),b){var E=d(b,g);E&&(b=E.typeNode,f(u,E.symbols))}}return e.factory.updateMethodDeclaration(h,void 0,o,h.asteriskToken,s,c?e.factory.createToken(57):void 0,y,v,b,l)}(s,t,i,n,a,o,k,c,l);p&&u(p)}}function i(t,r,n,i,a,o,s){var c=t.typeToTypeNode(n,i,o,s);if(c&&e.isImportTypeNode(c)){var l=d(c,a);if(l)return f(r,l.symbols),l.typeNode}return c}function a(t,r,n,i,a){for(var o=[],s=0;s<t;s++){var c=e.factory.createParameterDeclaration(void 0,void 0,void 0,r&&r[s]||"arg"+s,void 0!==i&&s>=i?e.factory.createToken(57):void 0,a?void 0:n&&n[s]||e.factory.createKeywordTypeNode(129),void 0);o.push(c)}return o}function o(t){return s(e.Diagnostics.Method_not_implemented.message,t)}function s(t,r){return e.factory.createBlock([e.factory.createThrowStatement(e.factory.createNewExpression(e.factory.createIdentifier("Error"),void 0,[e.factory.createStringLiteral(t,0===r)]))],!0)}function c(t,r,n){var i=e.getTsConfigObjectLiteralExpression(r);if(i){var a=u(i,"compilerOptions");if(void 0!==a){var o=a.initializer;if(e.isObjectLiteralExpression(o))for(var s=0,c=n;s<c.length;s++){var d=c[s],p=d[0],f=d[1],m=u(o,p);void 0===m?t.insertNodeAtObjectStart(r,o,l(p,f)):t.replaceNode(r,m.initializer,f)}}else t.insertNodeAtObjectStart(r,i,l("compilerOptions",e.factory.createObjectLiteralExpression(n.map((function(e){return l(e[0],e[1])})),!0)))}}function l(t,r){return e.factory.createPropertyAssignment(e.factory.createStringLiteral(t),r)}function u(t,r){return e.find(t.properties,(function(t){return e.isPropertyAssignment(t)&&!!t.name&&e.isStringLiteral(t.name)&&t.name.text===r}))}function d(t,r){var n,i=e.visitNode(t,(function t(i){var a;if(e.isLiteralImportTypeNode(i)&&i.qualifier){var o=e.getFirstIdentifier(i.qualifier),s=e.getNameForExportedSymbol(o.symbol,r),c=s!==o.text?p(i.qualifier,e.factory.createIdentifier(s)):i.qualifier;n=e.append(n,o.symbol);var l=null===(a=i.typeArguments)||void 0===a?void 0:a.map(t);return e.factory.createTypeReferenceNode(c,l)}return e.visitEachChild(i,t,e.nullTransformationContext)}));if(n&&i)return{typeNode:i,symbols:n}}function p(t,r){return 78===t.kind?r:e.factory.createQualifiedName(p(t.left,r),t.right)}function f(e,t){t.forEach((function(t){return e.addImportFromExportedSymbol(t,!0)}))}t.createMissingMemberNodes=function(e,t,r,i,a,o,s){for(var c=e.symbol.members,l=0,u=t;l<u.length;l++){var d=u[l];c.has(d.escapedName)||n(d,e,r,i,a,o,s)}},t.getNoopSymbolTrackerWithResolver=r,t.createSignatureDeclarationFromCallExpression=function(t,n,c,l,u,d,p){var f=e.getQuotePreference(n.sourceFile,n.preferences),m=e.getEmitScriptTarget(n.program.getCompilerOptions()),g=r(n),_=n.program.getTypeChecker(),h=e.isInJSFile(p),y=l.typeArguments,v=l.arguments,b=l.parent,k=h?void 0:_.getContextualType(l),x=e.map(v,(function(t){return e.isIdentifier(t)?t.text:e.isPropertyAccessExpression(t)&&e.isIdentifier(t.name)?t.name.text:void 0})),E=h?[]:e.map(v,(function(e){return i(_,c,_.getBaseTypeOfLiteralType(_.getTypeAtLocation(e)),p,m,void 0,g)})),S=d?e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(d)):void 0,D=e.isYieldExpression(b)?e.factory.createToken(41):void 0,w=h||void 0===y?void 0:e.map(y,(function(t,r){return e.factory.createTypeParameterDeclaration(84+y.length-1<=90?String.fromCharCode(84+r):"T"+r)})),T=a(v.length,x,E,void 0,h),C=h||void 0===k?void 0:_.typeToTypeNode(k,p,void 0,g);return 166===t?e.factory.createMethodDeclaration(void 0,S,D,u,void 0,w,T,C,e.isInterfaceDeclaration(p)?void 0:o(f)):e.factory.createFunctionDeclaration(void 0,S,D,u,w,T,C,s(e.Diagnostics.Function_not_implemented.message,f))},t.typeToAutoImportableTypeNode=i,t.createStubbedBody=s,t.setJsonCompilerOptionValues=c,t.setJsonCompilerOptionValue=function(e,t,r,n){c(e,t,[[r,n]])},t.createJsonPropertyAssignment=l,t.findJsonProperty=u,t.tryGetAutoImportableReferenceFromTypeNode=d,t.importSymbols=f}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){function r(t){return e.isParameterPropertyDeclaration(t,t.parent)||e.isPropertyDeclaration(t)||e.isPropertyAssignment(t)}function n(t,r){return e.isIdentifier(r)?e.factory.createIdentifier(t):e.factory.createStringLiteral(t)}function a(t,r,n){var i=r?n.name:e.factory.createThis();return e.isIdentifier(t)?e.factory.createPropertyAccessExpression(i,t):e.factory.createElementAccessExpression(i,e.factory.createStringLiteralFromNode(t))}function o(t){return t?e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(t)):void 0}function s(t,i,a,o,s){void 0===s&&(s=!0);var c=e.getTokenAtPosition(t,a),u=a===o&&s,d=e.findAncestor(c.parent,r);if(!d||!e.nodeOverlapsWithStartEnd(d.name,t,a,o)&&!u)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_property_for_which_to_generate_accessor)};if(!function(t){return e.isIdentifier(t)||e.isStringLiteral(t)}(d.name))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Name_is_not_valid)};if(124!=(124|e.getEffectiveModifierFlags(d)))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Can_only_convert_property_with_modifier)};var p=d.name.text,f=e.startsWithUnderscore(p),m=n(f?p:e.getUniqueName("_"+p,t),d.name),g=n(f?e.getUniqueName(p.substring(1),t):p,d.name);return{isStatic:e.hasStaticModifier(d),isReadonly:e.hasEffectiveReadonlyModifier(d),type:l(d,i),container:161===d.kind?d.parent.parent:d.parent,originalName:d.name.text,declaration:d,fieldName:m,accessorName:g,renameAccessor:f}}function c(t,r,n,i,a){e.isParameterPropertyDeclaration(i,i.parent)?t.insertNodeAtClassStart(r,a,n):e.isPropertyAssignment(i)?t.insertNodeAfterComma(r,i,n):t.insertNodeAfter(r,i,n)}function l(t,r){var n=e.getTypeAnnotationNode(t);if(e.isPropertyDeclaration(t)&&n&&t.questionToken){var a=r.getTypeChecker(),o=a.getTypeFromTypeNode(n);if(!a.isTypeAssignableTo(a.getUndefinedType(),o)){var s=e.isUnionTypeNode(n)?n.types:[n];return e.factory.createUnionTypeNode(i(i([],s),[e.factory.createKeywordTypeNode(151)]))}}return n}t.generateAccessorFromProperty=function(t,r,n,i,l,u){var d=s(t,r,n,i);if(d&&!e.refactor.isRefactorErrorInfo(d)){var p,f,m=e.textChanges.ChangeTracker.fromContext(l),g=d.isStatic,_=d.isReadonly,h=d.fieldName,y=d.accessorName,v=d.originalName,b=d.type,k=d.container,x=d.declaration;if(e.suppressLeadingAndTrailingTrivia(h),e.suppressLeadingAndTrailingTrivia(y),e.suppressLeadingAndTrailingTrivia(x),e.suppressLeadingAndTrailingTrivia(k),e.isClassLike(k)){var E=e.getEffectiveModifierFlags(x);if(e.isSourceFileJS(t)){var S=o(E);p=S,f=S}else p=o(function(e){e&=-65,e&=-9,16&e||(e|=4);return e}(E)),f=o(function(e){return e&=-5,e&=-17,e|=8,e}(E))}!function(t,r,n,i,a,o){e.isPropertyDeclaration(n)?function(t,r,n,i,a,o){var s=e.factory.updatePropertyDeclaration(n,n.decorators,o,a,n.questionToken||n.exclamationToken,i,n.initializer);t.replaceNode(r,n,s)}(t,r,n,i,a,o):e.isPropertyAssignment(n)?function(t,r,n,i){var a=e.factory.updatePropertyAssignment(n,i,n.initializer);t.replacePropertyAssignment(r,n,a)}(t,r,n,a):t.replaceNode(r,n,e.factory.updateParameterDeclaration(n,n.decorators,o,n.dotDotDotToken,e.cast(a,e.isIdentifier),n.questionToken,n.type,n.initializer))}(m,t,x,b,h,f);var D=function(t,r,n,i,o,s){return e.factory.createGetAccessorDeclaration(void 0,i,r,void 0,n,e.factory.createBlock([e.factory.createReturnStatement(a(t,o,s))],!0))}(h,y,b,p,g,k);if(e.suppressLeadingAndTrailingTrivia(D),c(m,t,D,x,k),_){var w=e.getFirstConstructorWithBody(k);w&&function(t,r,n,i,a){if(!n.body)return;n.body.forEachChild((function n(o){e.isElementAccessExpression(o)&&108===o.expression.kind&&e.isStringLiteral(o.argumentExpression)&&o.argumentExpression.text===a&&e.isWriteAccess(o)&&t.replaceNode(r,o.argumentExpression,e.factory.createStringLiteral(i)),e.isPropertyAccessExpression(o)&&108===o.expression.kind&&o.name.text===a&&e.isWriteAccess(o)&&t.replaceNode(r,o.name,e.factory.createIdentifier(i)),e.isFunctionLike(o)||e.isClassLike(o)||o.forEachChild(n)}))}(m,t,w,h.text,v)}else{var T=function(t,r,n,i,o,s){return e.factory.createSetAccessorDeclaration(void 0,i,r,[e.factory.createParameterDeclaration(void 0,void 0,void 0,e.factory.createIdentifier("value"),void 0,n)],e.factory.createBlock([e.factory.createExpressionStatement(e.factory.createAssignment(a(t,o,s),e.factory.createIdentifier("value")))],!0))}(h,y,b,p,g,k);e.suppressLeadingAndTrailingTrivia(T),c(m,t,T,x,k)}return m.getChanges()}},t.getAccessorConvertiblePropertyAtPosition=s,t.getAllSupers=function(t,r){for(var n=[];t;){var i=e.getClassExtendsHeritageElement(t),a=i&&r.getSymbolAtLocation(i.expression);if(!a)break;var o=2097152&a.flags?r.getAliasedSymbol(a):a,s=e.find(o.declarations,e.isClassLike);if(!s)break;n.push(s),t=s}return n}}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="invalidImportSyntax";function n(n,i,a,o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return e.replaceNode(i,a,o)}));return t.createCodeFixActionWithoutFixAll(r,s,[e.Diagnostics.Replace_import_with_0,s[0].textChanges[0].newText])}function i(i,a){var o=i.program.getTypeChecker().getTypeAtLocation(a);if(!o.symbol||!o.symbol.originatingImport)return[];var s=[],c=o.symbol.originatingImport;if(e.isImportCall(c)||e.addRange(s,function(t,r){var i=e.getSourceFileOfNode(r),a=e.getNamespaceDeclarationNode(r),o=t.program.getCompilerOptions(),s=[];return s.push(n(t,i,r,e.makeImport(a.name,void 0,r.moduleSpecifier,e.getQuotePreference(i,t.preferences)))),e.getEmitModuleKind(o)===e.ModuleKind.CommonJS&&s.push(n(t,i,r,e.factory.createImportEqualsDeclaration(void 0,void 0,!1,a.name,e.factory.createExternalModuleReference(r.moduleSpecifier)))),s}(i,c)),e.isExpression(a)&&(!e.isNamedDeclaration(a.parent)||a.parent.name!==a)){var l=i.sourceFile,u=e.textChanges.ChangeTracker.with(i,(function(t){return t.replaceNode(l,a,e.factory.createPropertyAccessExpression(a,"default"),{})}));s.push(t.createCodeFixActionWithoutFixAll(r,u,e.Diagnostics.Use_synthetic_default_member))}return s}t.registerCodeFix({errorCodes:[e.Diagnostics.This_expression_is_not_callable.code,e.Diagnostics.This_expression_is_not_constructable.code],getCodeActions:function(t){var r=t.sourceFile,n=e.Diagnostics.This_expression_is_not_callable.code===t.errorCode?204:205,a=e.findAncestor(e.getTokenAtPosition(r,t.span.start),(function(e){return e.kind===n}));if(!a)return[];var o=a.expression;return i(t,o)}}),t.registerCodeFix({errorCodes:[e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,e.Diagnostics.Type_predicate_0_is_not_assignable_to_1.code,e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_string_index_type_2.code,e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2.code,e.Diagnostics.Numeric_index_type_0_is_not_assignable_to_string_index_type_1.code,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_type_2.code,e.Diagnostics.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,e.Diagnostics.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:function(t){var r=t.sourceFile,n=e.findAncestor(e.getTokenAtPosition(r,t.span.start),(function(e){return e.getStart()===t.span.start&&e.getEnd()===t.span.start+t.span.length}));if(!n)return[];return i(t,n)}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="strictClassInitialization",n="addMissingPropertyDefiniteAssignmentAssertions",i="addMissingPropertyUndefinedType",a="addMissingPropertyInitializer",o=[e.Diagnostics.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];function s(t,r){var n=e.getTokenAtPosition(t,r);return e.isIdentifier(n)?e.cast(n.parent,e.isPropertyDeclaration):void 0}function c(i,a){var o=e.textChanges.ChangeTracker.with(i,(function(e){return l(e,i.sourceFile,a)}));return t.createCodeFixAction(r,o,[e.Diagnostics.Add_definite_assignment_assertion_to_property_0,a.getText()],n,e.Diagnostics.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function l(t,r,n){var i=e.factory.updatePropertyDeclaration(n,n.decorators,n.modifiers,n.name,e.factory.createToken(53),n.type,n.initializer);t.replaceNode(r,n,i)}function u(n,a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return d(e,n.sourceFile,a)}));return t.createCodeFixAction(r,o,[e.Diagnostics.Add_undefined_type_to_property_0,a.name.getText()],i,e.Diagnostics.Add_undefined_type_to_all_uninitialized_properties)}function d(t,r,n){var i=e.factory.createKeywordTypeNode(151),a=n.type,o=e.isUnionTypeNode(a)?a.types.concat(i):[a,i];t.replaceNode(r,a,e.factory.createUnionTypeNode(o))}function p(t,r,n,i){var a=e.factory.updatePropertyDeclaration(n,n.decorators,n.modifiers,n.name,n.questionToken,n.type,i);t.replaceNode(r,n,a)}function f(e,t){return m(e,e.getTypeFromTypeNode(t.type))}function m(t,r){if(512&r.flags)return r===t.getFalseType()||r===t.getFalseType(!0)?e.factory.createFalse():e.factory.createTrue();if(r.isStringLiteral())return e.factory.createStringLiteral(r.value);if(r.isNumberLiteral())return e.factory.createNumericLiteral(r.value);if(2048&r.flags)return e.factory.createBigIntLiteral(r.value);if(r.isUnion())return e.firstDefined(r.types,(function(e){return m(t,e)}));if(r.isClass()){var n=e.getClassLikeDeclarationOfSymbol(r.symbol);if(!n||e.hasSyntacticModifier(n,128))return;var i=e.getFirstConstructorWithBody(n);if(i&&i.parameters.length)return;return e.factory.createNewExpression(e.factory.createIdentifier(r.symbol.name),void 0,void 0)}return t.isArrayLikeType(r)?e.factory.createArrayLiteralExpression():void 0}t.registerCodeFix({errorCodes:o,getCodeActions:function(n){var i=s(n.sourceFile,n.span.start);if(i){var o=[u(n,i),c(n,i)];return e.append(o,function(n,i){var o=n.program.getTypeChecker(),s=f(o,i);if(!s)return;var c=e.textChanges.ChangeTracker.with(n,(function(e){return p(e,n.sourceFile,i,s)}));return t.createCodeFixAction(r,c,[e.Diagnostics.Add_initializer_to_property_0,i.name.getText()],a,e.Diagnostics.Add_initializers_to_all_uninitialized_properties)}(n,i)),o}},fixIds:[n,i,a],getAllCodeActions:function(r){return t.codeFixAll(r,o,(function(t,o){var c=s(o.file,o.start);if(c)switch(r.fixId){case n:l(t,o.file,c);break;case i:d(t,o.file,c);break;case a:var u=f(r.program.getTypeChecker(),c);if(!u)return;p(t,o.file,c,u);break;default:e.Debug.fail(JSON.stringify(r.fixId))}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="requireInTs",n=[e.Diagnostics.require_call_may_be_converted_to_an_import.code];function i(t,r,n){var i=n.allowSyntheticDefaults,a=n.defaultImportName,o=n.namedImports,s=n.statement,c=n.required;t.replaceNode(r,s,a&&!i?e.factory.createImportEqualsDeclaration(void 0,void 0,!1,a,e.factory.createExternalModuleReference(c)):e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,a,o),c))}function a(t,r,n){var i=e.getTokenAtPosition(t,n).parent;if(!e.isRequireCall(i,!0))throw e.Debug.failBadSyntaxKind(i);var a=e.cast(i.parent,e.isVariableDeclaration),o=e.tryCast(a.name,e.isIdentifier),s=e.isObjectBindingPattern(a.name)?function(t){for(var r=[],n=0,i=t.elements;n<i.length;n++){var a=i[n];if(!e.isIdentifier(a.name)||a.initializer)return;r.push(e.factory.createImportSpecifier(e.tryCast(a.propertyName,e.isIdentifier),a.name))}if(r.length)return e.factory.createNamedImports(r)}(a.name):void 0;if(o||s)return{allowSyntheticDefaults:e.getAllowSyntheticDefaultImports(r.getCompilerOptions()),defaultImportName:o,namedImports:s,statement:e.cast(a.parent.parent,e.isVariableStatement),required:e.first(i.arguments)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=a(n.sourceFile,n.program,n.span.start);if(o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Convert_require_to_import,r,e.Diagnostics.Convert_all_require_to_import)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=a(r.file,e.program,r.start);n&&i(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="useDefaultImport",n=[e.Diagnostics.Import_may_be_converted_to_a_default_import.code];function i(t,r){var n=e.getTokenAtPosition(t,r);if(e.isIdentifier(n)){var i=n.parent;if(e.isImportEqualsDeclaration(i)&&e.isExternalModuleReference(i.moduleReference))return{importNode:i,name:n,moduleSpecifier:i.moduleReference.expression};if(e.isNamespaceImport(i)){var a=i.parent.parent;return{importNode:a,name:n,moduleSpecifier:a.moduleSpecifier}}}}function a(t,r,n,i){t.replaceNode(r,n.importNode,e.makeImport(n.name,void 0,n.moduleSpecifier,e.getQuotePreference(r,i)))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span.start,c=i(o,s);if(c){var l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c,n.preferences)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Convert_to_default_import,r,e.Diagnostics.Convert_all_to_default_imports)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,r.start);n&&a(t,r.file,n,e.preferences)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="useBigintLiteral",n=[e.Diagnostics.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];function i(t,r,n){var i=e.tryCast(e.getTokenAtPosition(r,n.start),e.isNumericLiteral);if(i){var a=i.getText(r)+"n";t.replaceNode(r,i,e.factory.createBigIntLiteral(a))}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Convert_to_a_bigint_numeric_literal,r,e.Diagnostics.Convert_all_to_bigint_numeric_literals)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixAddModuleReferTypeMissingTypeof",n=[e.Diagnostics.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];function i(t,r){var n=e.getTokenAtPosition(t,r);return e.Debug.assert(100===n.kind,"This token should be an ImportKeyword"),e.Debug.assert(196===n.parent.kind,"Token parent should be an ImportType"),n.parent}function a(t,r,n){var i=e.factory.updateImportTypeNode(n,n.argument,n.qualifier,n.typeArguments,!0);t.replaceNode(r,n,i)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start),l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Add_missing_typeof,r,e.Diagnostics.Add_missing_typeof)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return a(t,e.sourceFile,i(r.file,r.start))}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="wrapJsxInFragment",n=[e.Diagnostics.JSX_expressions_must_have_one_parent_element.code];function i(t,r){var n=e.getTokenAtPosition(t,r).parent.parent;if((e.isBinaryExpression(n)||(n=n.parent,e.isBinaryExpression(n)))&&e.nodeIsMissing(n.operatorToken))return n}function a(t,r,n){var i=function(t){var r=[],n=t;for(;;){if(e.isBinaryExpression(n)&&e.nodeIsMissing(n.operatorToken)&&27===n.operatorToken.kind){if(r.push(n.left),e.isJsxChild(n.right))return r.push(n.right),r;if(e.isBinaryExpression(n.right)){n=n.right;continue}return}return}}(n);i&&t.replaceNode(r,n,e.factory.createJsxFragment(e.factory.createJsxOpeningFragment(),i,e.factory.createJsxJsxClosingFragment()))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.program.getCompilerOptions().jsx;if(2===o||3===o){var s=n.sourceFile,c=n.span,l=i(s,c.start);if(l){var u=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,s,l)}));return[t.createCodeFixAction(r,u,e.Diagnostics.Wrap_in_JSX_fragment,r,e.Diagnostics.Wrap_all_unparented_JSX_in_JSX_fragment)]}}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(e.sourceFile,r.start);n&&a(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixConvertToMappedObjectType",n=[e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead.code];function a(t,r){var n=e.getTokenAtPosition(t,r),i=e.cast(n.parent.parent,e.isIndexSignatureDeclaration);if(!e.isClassDeclaration(i.parent))return{indexSignature:i,container:e.isInterfaceDeclaration(i.parent)?i.parent:e.cast(i.parent.parent,e.isTypeAliasDeclaration)}}function o(t,r,n){var a,o,s=n.indexSignature,c=n.container,l=(e.isInterfaceDeclaration(c)?c.members:c.type.members).filter((function(t){return!e.isIndexSignatureDeclaration(t)})),u=e.first(s.parameters),d=e.factory.createTypeParameterDeclaration(e.cast(u.name,e.isIdentifier),u.type),p=e.factory.createMappedTypeNode(e.hasEffectiveReadonlyModifier(s)?e.factory.createModifier(143):void 0,d,void 0,s.questionToken,s.type),f=e.factory.createIntersectionTypeNode(i(i(i([],e.getAllSuperTypeNodes(c)),[p]),l.length?[e.factory.createTypeLiteralNode(l)]:e.emptyArray));t.replaceNode(r,c,(a=c,o=f,e.factory.createTypeAliasDeclaration(a.decorators,a.modifiers,a.name,a.typeParameters,o)))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,s=n.span,c=a(i,s.start);if(c){var l=e.textChanges.ChangeTracker.with(n,(function(e){return o(e,i,c)})),u=e.idText(c.container.name);return[t.createCodeFixAction(r,l,[e.Diagnostics.Convert_0_to_mapped_object_type,u],r,[e.Diagnostics.Convert_0_to_mapped_object_type,u])]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=a(t.file,t.start);r&&o(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="removeAccidentalCallParentheses",n=[e.Diagnostics.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=e.findAncestor(e.getTokenAtPosition(n.sourceFile,n.span.start),e.isCallExpression);if(i){var a=e.textChanges.ChangeTracker.with(n,(function(e){e.deleteRange(n.sourceFile,{pos:i.expression.end,end:i.end})}));return[t.createCodeFixActionWithoutFixAll(r,a,e.Diagnostics.Remove_parentheses)]}},fixIds:[r]})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="removeUnnecessaryAwait",n=[e.Diagnostics.await_has_no_effect_on_the_type_of_this_expression.code];function i(t,r,n){var i=e.tryCast(e.getTokenAtPosition(r,n.start),(function(e){return 131===e.kind})),a=i&&e.tryCast(i.parent,e.isAwaitExpression);if(a){var o=a;if(e.isParenthesizedExpression(a.parent)){var s=e.getLeftmostExpression(a.expression,!1);if(e.isIdentifier(s)){var c=e.findPrecedingToken(a.parent.pos,r);c&&103!==c.kind&&(o=a.parent)}}t.replaceNode(r,o,a.expression)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Remove_unnecessary_await,r,e.Diagnostics.Remove_all_unnecessary_uses_of_await)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],n="splitTypeOnlyImport";function i(t,r){return e.findAncestor(e.getTokenAtPosition(t,r.start),e.isImportDeclaration)}function a(t,r,n){if(r){var i=e.Debug.checkDefined(r.importClause);t.replaceNode(n.sourceFile,r,e.factory.updateImportDeclaration(r,r.decorators,r.modifiers,e.factory.updateImportClause(i,i.isTypeOnly,i.name,void 0),r.moduleSpecifier)),t.insertNodeAfter(n.sourceFile,r,e.factory.createImportDeclaration(void 0,void 0,e.factory.updateImportClause(i,i.isTypeOnly,void 0,i.namedBindings),r.moduleSpecifier))}}t.registerCodeFix({errorCodes:r,fixIds:[n],getCodeActions:function(r){var o=e.textChanges.ChangeTracker.with(r,(function(e){return a(e,i(r.sourceFile,r.span),r)}));if(o.length)return[t.createCodeFixAction(n,o,e.Diagnostics.Split_into_two_separate_import_declarations,n,e.Diagnostics.Split_all_invalid_type_only_imports)]},getAllCodeActions:function(e){return t.codeFixAll(e,r,(function(t,r){a(t,i(e.sourceFile,r),e)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixConvertConstToLet",n=[e.Diagnostics.Cannot_assign_to_0_because_it_is_a_constant.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.span,o=n.program,s=function(t,r,n){var i=e.getTokenAtPosition(t,r),a=n.getTypeChecker(),o=a.getSymbolAtLocation(i);if(o)return o.valueDeclaration.parent.parent}(i,a.start,o),c=e.textChanges.ChangeTracker.with(n,(function(e){return function(e,t,r){if(!r)return;var n=r.getStart();e.replaceRangeWithText(t,{pos:n,end:n+5},"let")}(e,i,s)}));return[t.createCodeFixAction(r,c,e.Diagnostics.Convert_const_to_let,r,e.Diagnostics.Convert_const_to_let)]},fixIds:[r]})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixExpectedComma",n=[e.Diagnostics._0_expected.code];function i(t,r,n){var i=e.getTokenAtPosition(t,r);return 26===i.kind&&i.parent&&(e.isObjectLiteralExpression(i.parent)||e.isArrayLiteralExpression(i.parent))?{node:i}:void 0}function a(t,r,n){var i=n.node,a=e.factory.createToken(27);t.replaceNode(r,i,a)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=i(o,n.span.start,n.errorCode);if(s){var c=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,s)}));return[t.createCodeFixAction(r,c,[e.Diagnostics.Change_0_to_1,";",","],r,[e.Diagnostics.Change_0_to_1,";",","])]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,r.start,r.code);n&&a(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addVoidToPromise",n=[e.Diagnostics.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];function i(t,r,n,i,a){var o=e.getTokenAtPosition(r,n.start);if(e.isIdentifier(o)&&e.isCallExpression(o.parent)&&o.parent.expression===o&&0===o.parent.arguments.length){var s=i.getTypeChecker(),c=s.getSymbolAtLocation(o),l=null==c?void 0:c.valueDeclaration;if(l&&e.isParameter(l)&&e.isNewExpression(l.parent.parent)&&!(null==a?void 0:a.has(l))){null==a||a.add(l);var u=function(t){var r;if(!e.isInJSFile(t))return t.typeArguments;if(e.isParenthesizedExpression(t.parent)){var n=null===(r=e.getJSDocTypeTag(t.parent))||void 0===r?void 0:r.typeExpression.type;if(n&&e.isTypeReferenceNode(n)&&e.isIdentifier(n.typeName)&&"Promise"===e.idText(n.typeName))return n.typeArguments}}(l.parent.parent);if(e.some(u)){var d=u[0],p=!e.isUnionTypeNode(d)&&!e.isParenthesizedTypeNode(d)&&e.isParenthesizedTypeNode(e.factory.createUnionTypeNode([d,e.factory.createKeywordTypeNode(114)]).types[0]);p&&t.insertText(r,d.pos,"("),t.insertText(r,d.end,p?") | void":" | void")}else{var f=s.getResolvedSignature(o.parent),m=null==f?void 0:f.parameters[0],g=m&&s.getTypeOfSymbolAtLocation(m,l.parent.parent);e.isInJSFile(l)?(!g||3&g.flags)&&(t.insertText(r,l.parent.parent.end,")"),t.insertText(r,e.skipTrivia(r.text,l.parent.parent.pos),"/** @type {Promise<void>} */(")):(!g||2&g.flags)&&t.insertText(r,l.parent.parent.expression.end,"<void>")}}}}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span,n.program)}));if(a.length>0)return[t.createCodeFixAction("addVoidToPromise",a,e.Diagnostics.Add_void_to_Promise_resolved_without_a_value,r,e.Diagnostics.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions:function(r){return t.codeFixAll(r,n,(function(t,n){return i(t,n.file,n,r.program,new e.Set)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="Convert export",n={name:"Convert default export to named export",description:e.Diagnostics.Convert_default_export_to_named_export.message,kind:"refactor.rewrite.export.named"},i={name:"Convert named export to default export",description:e.Diagnostics.Convert_named_export_to_default_export.message,kind:"refactor.rewrite.export.default"};function o(t,r){void 0===r&&(r=!0);var n=t.file,i=e.getRefactorContextSpan(t),a=e.getTokenAtPosition(n,i.start),o=a.parent&&1&e.getSyntacticModifierFlags(a.parent)&&r?a.parent:e.getParentNodeInSpan(a,n,i);if(!(o&&(e.isSourceFile(o.parent)||e.isModuleBlock(o.parent)&&e.isAmbientModule(o.parent.parent))))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_export_statement)};var s=e.isSourceFile(o.parent)?o.parent.symbol:o.parent.parent.symbol,c=e.getSyntacticModifierFlags(o),l=!!(512&c);if(!(1&c)||!l&&s.exports.has("default"))return{error:e.getLocaleSpecificMessage(e.Diagnostics.This_file_already_has_a_default_export)};switch(o.kind){case 253:case 254:case 256:case 258:case 257:case 259:var u=o;return u.name&&e.isIdentifier(u.name)?{exportNode:u,exportName:u.name,wasDefault:l,exportingModuleSymbol:s}:void 0;case 234:var d=o;if(!(2&d.declarationList.flags)||1!==d.declarationList.declarations.length)return;var p=e.first(d.declarationList.declarations);if(!p.initializer)return;return e.Debug.assert(!l,"Can't have a default flag here"),e.isIdentifier(p.name)?{exportNode:d,exportName:p.name,wasDefault:l,exportingModuleSymbol:s}:void 0;default:return}}function s(t,r){return e.factory.createImportSpecifier(t===r?void 0:e.factory.createIdentifier(t),e.factory.createIdentifier(r))}t.registerRefactor(r,{kinds:[n.kind,i.kind],getAvailableActions:function(s){var c=o(s,"invoked"===s.triggerReason);if(!c)return e.emptyArray;if(!t.isRefactorErrorInfo(c)){var l=c.wasDefault?n:i;return[{name:r,description:l.description,actions:[l]}]}return s.preferences.provideRefactorNotApplicableReason?[{name:r,description:e.Diagnostics.Convert_default_export_to_named_export.message,actions:[a(a({},n),{notApplicableReason:c.error}),a(a({},i),{notApplicableReason:c.error})]}]:e.emptyArray},getEditsForAction:function(r,a){e.Debug.assert(a===n.name||a===i.name,"Unexpected action name");var c=o(r);e.Debug.assert(c&&!t.isRefactorErrorInfo(c),"Expected applicable refactor info");var l=e.textChanges.ChangeTracker.with(r,(function(t){return function(t,r,n,i,a){(function(t,r,n,i){var a=r.wasDefault,o=r.exportNode,s=r.exportName;if(a)n.delete(t,e.Debug.checkDefined(e.findModifier(o,88),"Should find a default keyword in modifier list"));else{var c=e.Debug.checkDefined(e.findModifier(o,93),"Should find an export keyword in modifier list");switch(o.kind){case 253:case 254:case 256:n.insertNodeAfter(t,c,e.factory.createToken(88));break;case 234:var l=e.first(o.declarationList.declarations);if(!e.FindAllReferences.Core.isSymbolReferencedInFile(s,i,t)&&!l.type){n.replaceNode(t,o,e.factory.createExportDefault(e.Debug.checkDefined(l.initializer,"Initializer was previously known to be present")));break}case 258:case 257:case 259:n.deleteModifier(t,c),n.insertNodeAfter(t,o,e.factory.createExportDefault(e.factory.createIdentifier(s.text)));break;default:e.Debug.assertNever(o,"Unexpected exportNode kind "+o.kind)}}})(t,n,i,r.getTypeChecker()),function(t,r,n,i){var a=r.wasDefault,o=r.exportName,c=r.exportingModuleSymbol,l=t.getTypeChecker(),u=e.Debug.checkDefined(l.getSymbolAtLocation(o),"Export name should resolve to a symbol");e.FindAllReferences.Core.eachExportReference(t.getSourceFiles(),l,i,u,c,o.text,a,(function(t){var r=t.getSourceFile();a?function(t,r,n,i){var a=r.parent;switch(a.kind){case 202:n.replaceNode(t,r,e.factory.createIdentifier(i));break;case 268:case 273:var o=a;n.replaceNode(t,o,s(i,o.name.text));break;case 265:var c=a;e.Debug.assert(c.name===r,"Import clause name should match provided ref");o=s(i,r.text);var l=c.namedBindings;if(l)if(266===l.kind){n.deleteRange(t,{pos:r.getStart(t),end:l.getStart(t)});var u=e.isStringLiteral(c.parent.moduleSpecifier)?e.quotePreferenceFromString(c.parent.moduleSpecifier,t):1,d=e.makeImport(void 0,[s(i,r.text)],c.parent.moduleSpecifier,u);n.insertNodeAfter(t,c.parent,d)}else n.delete(t,r),n.insertNodeAtEndOfList(t,l.elements,o);else n.replaceNode(t,r,e.factory.createNamedImports([o]));break;default:e.Debug.failBadSyntaxKind(a)}}(r,t,n,o.text):function(t,r,n){var i=r.parent;switch(i.kind){case 202:n.replaceNode(t,r,e.factory.createIdentifier("default"));break;case 268:var a=e.factory.createIdentifier(i.name.text);1===i.parent.elements.length?n.replaceNode(t,i.parent,a):(n.delete(t,i),n.insertNodeBefore(t,i.parent,a));break;case 273:n.replaceNode(t,i,(o="default",s=i.name.text,e.factory.createExportSpecifier(o===s?void 0:e.factory.createIdentifier(o),e.factory.createIdentifier(s))));break;default:e.Debug.assertNever(i,"Unexpected parent kind "+i.kind)}var o,s}(r,t,n)}))}(r,n,i,a)}(r.file,r.program,c,t,r.cancellationToken)}));return{edits:l,renameFilename:void 0,renameLocation:void 0}}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r="Convert import",n={name:"Convert namespace import to named imports",description:e.Diagnostics.Convert_namespace_import_to_named_imports.message,kind:"refactor.rewrite.import.named"},i={name:"Convert named imports to namespace import",description:e.Diagnostics.Convert_named_imports_to_namespace_import.message,kind:"refactor.rewrite.import.namespace"};function o(t,r){void 0===r&&(r=!0);var n=t.file,i=e.getRefactorContextSpan(t),a=e.getTokenAtPosition(n,i.start),o=r?e.findAncestor(a,e.isImportDeclaration):e.getParentNodeInSpan(a,n,i);if(!o||!e.isImportDeclaration(o))return{error:"Selection is not an import declaration."};if(!(o.getEnd()<i.start+i.length)){var s=o.importClause;return s?s.namedBindings?s.namedBindings:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_namespace_import_or_named_imports)}:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_import_clause)}}}function s(t){return e.isPropertyAccessExpression(t)?t.name:t.right}function c(t,r,n){return e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,r,n&&n.length?e.factory.createNamedImports(n):void 0),t.moduleSpecifier)}t.registerRefactor(r,{kinds:[n.kind,i.kind],getAvailableActions:function(s){var c=o(s,"invoked"===s.triggerReason);if(!c)return e.emptyArray;if(!t.isRefactorErrorInfo(c)){var l=266===c.kind?n:i;return[{name:r,description:l.description,actions:[l]}]}return s.preferences.provideRefactorNotApplicableReason?[{name:r,description:n.description,actions:[a(a({},n),{notApplicableReason:c.error})]},{name:r,description:i.description,actions:[a(a({},i),{notApplicableReason:c.error})]}]:e.emptyArray},getEditsForAction:function(r,a){e.Debug.assert(a===n.name||a===i.name,"Unexpected action name");var l=o(r);return e.Debug.assert(l&&!t.isRefactorErrorInfo(l),"Expected applicable refactor info"),{edits:e.textChanges.ChangeTracker.with(r,(function(t){return n=r.file,i=r.program,a=t,o=l,u=i.getTypeChecker(),void(266===o.kind?function(t,r,n,i,a){var o=!1,l=[],u=new e.Map;e.FindAllReferences.Core.eachSymbolReferenceInFile(i.name,r,t,(function(t){if(e.isPropertyAccessOrQualifiedName(t.parent)){var n=s(t.parent).text;r.resolveName(n,t,67108863,!0)&&u.set(n,!0),e.Debug.assert(function(t){return e.isPropertyAccessExpression(t)?t.expression:t.left}(t.parent)===t,"Parent expression should match id"),l.push(t.parent)}else o=!0}));for(var d=new e.Map,p=0,f=l;p<f.length;p++){var m=f[p],g=s(m).text,_=d.get(g);void 0===_&&d.set(g,_=u.has(g)?e.getUniqueName(g,t):g),n.replaceNode(t,m,e.factory.createIdentifier(_))}var h=[];d.forEach((function(t,r){h.push(e.factory.createImportSpecifier(t===r?void 0:e.factory.createIdentifier(r),e.factory.createIdentifier(t)))}));var y=i.parent.parent;o&&!a?n.insertNodeAfter(t,y,c(y,void 0,h)):n.replaceNode(t,y,c(y,o?e.factory.createIdentifier(i.name.text):void 0,h))}(n,u,a,o,e.getAllowSyntheticDefaultImports(i.getCompilerOptions())):function(t,r,n,i){for(var a=i.parent.parent,o=a.moduleSpecifier,s=o&&e.isStringLiteral(o)?e.codefix.moduleSpecifierToValidIdentifier(o.text,99):"module",l=i.elements.some((function(n){return e.FindAllReferences.Core.eachSymbolReferenceInFile(n.name,r,t,(function(e){return!!r.resolveName(s,e,67108863,!0)}))||!1})),u=l?e.getUniqueName(s,t):s,d=[],p=function(i){var a=(i.propertyName||i.name).text;e.FindAllReferences.Core.eachSymbolReferenceInFile(i.name,r,t,(function(r){var o=e.factory.createPropertyAccessExpression(e.factory.createIdentifier(u),a);e.isShorthandPropertyAssignment(r.parent)?n.replaceNode(t,r.parent,e.factory.createPropertyAssignment(r.text,o)):e.isExportSpecifier(r.parent)&&!r.parent.propertyName?d.some((function(e){return e.name===i.name}))||d.push(e.factory.createImportSpecifier(i.propertyName&&e.factory.createIdentifier(i.propertyName.text),e.factory.createIdentifier(i.name.text))):n.replaceNode(t,r,o)}))},f=0,m=i.elements;f<m.length;f++)p(m[f]);n.replaceNode(t,i,e.factory.createNamespaceImport(e.factory.createIdentifier(u))),d.length&&n.insertNodeAfter(t,i.parent.parent,c(a,void 0,d))}(n,u,a,o));var n,i,a,o,u})),renameFilename:void 0,renameLocation:void 0}}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(){var r="Convert to optional chain expression",n=e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_optional_chain_expression),i={name:r,description:n,kind:"refactor.rewrite.expression.optionalChain"};function o(t){return e.isBinaryExpression(t)||e.isConditionalExpression(t)}function s(t){return o(t)||function(t){return e.isExpressionStatement(t)||e.isReturnStatement(t)||e.isVariableStatement(t)}(t)}function c(t,r){void 0===r&&(r=!0);var n=t.file,i=t.program,a=e.getRefactorContextSpan(t),c=0===a.length;if(!c||r){var d=e.getTokenAtPosition(n,a.start),f=e.findTokenOnLeftOfPosition(n,a.start+a.length),m=e.createTextSpanFromBounds(d.pos,f&&f.end>=d.pos?f.getEnd():d.getEnd()),g=c?function(e){for(;e.parent;){if(s(e)&&!s(e.parent))return e;e=e.parent}return}(d):function(e,t){for(;e.parent;){if(s(e)&&0!==t.length&&e.end>=t.start+t.length)return e;e=e.parent}return}(d,m),_=g&&s(g)?function(t){if(o(t))return t;if(e.isVariableStatement(t)){var r=e.getSingleVariableOfVariableStatement(t),n=null==r?void 0:r.initializer;return n&&o(n)?n:void 0}return t.expression&&o(t.expression)?t.expression:void 0}(g):void 0;if(!_)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_convertible_access_expression)};var h=i.getTypeChecker();return e.isConditionalExpression(_)?function(t,r){var n=t.condition,i=p(t.whenTrue);if(!i||r.isNullableType(r.getTypeAtLocation(i)))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_convertible_access_expression)};if((e.isPropertyAccessExpression(n)||e.isIdentifier(n))&&u(n,i.expression))return{finalExpression:i,occurrences:[n],expression:t};if(e.isBinaryExpression(n)){var a=l(i.expression,n);return a?{finalExpression:i,occurrences:a,expression:t}:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_matching_access_expressions)}}}(_,h):function(t){if(55!==t.operatorToken.kind)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Can_only_convert_logical_AND_access_chains)};var r=p(t.right);if(!r)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_convertible_access_expression)};var n=l(r.expression,t.left);return n?{finalExpression:r,occurrences:n,expression:t}:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_matching_access_expressions)}}(_)}}function l(t,r){for(var n=[];e.isBinaryExpression(r)&&55===r.operatorToken.kind;){var i=u(e.skipParentheses(t),e.skipParentheses(r.right));if(!i)break;n.push(i),t=i,r=r.left}var a=u(t,r);return a&&n.push(a),n.length>0?n:void 0}function u(t,r){if(e.isIdentifier(r)||e.isPropertyAccessExpression(r)||e.isElementAccessExpression(r))return function(t,r){for(;(e.isCallExpression(t)||e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t))&&d(t)!==d(r);)t=t.expression;for(;e.isPropertyAccessExpression(t)&&e.isPropertyAccessExpression(r)||e.isElementAccessExpression(t)&&e.isElementAccessExpression(r);){if(d(t)!==d(r))return!1;t=t.expression,r=r.expression}return e.isIdentifier(t)&&e.isIdentifier(r)&&t.getText()===r.getText()}(t,r)?r:void 0}function d(t){return e.isIdentifier(t)||e.isStringOrNumericLiteralLike(t)?t.getText():e.isPropertyAccessExpression(t)?d(t.name):e.isElementAccessExpression(t)?d(t.argumentExpression):void 0}function p(t){return t=e.skipParentheses(t),e.isBinaryExpression(t)?p(t.left):(e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)||e.isCallExpression(t))&&!e.isOptionalChain(t)?t:void 0}function f(t,r,n){if(e.isPropertyAccessExpression(r)||e.isElementAccessExpression(r)||e.isCallExpression(r)){var i=f(t,r.expression,n),a=n.length>0?n[n.length-1]:void 0,o=(null==a?void 0:a.getText())===r.expression.getText();if(o&&n.pop(),e.isCallExpression(r))return o?e.factory.createCallChain(i,e.factory.createToken(28),r.typeArguments,r.arguments):e.factory.createCallChain(i,r.questionDotToken,r.typeArguments,r.arguments);if(e.isPropertyAccessExpression(r))return o?e.factory.createPropertyAccessChain(i,e.factory.createToken(28),r.name):e.factory.createPropertyAccessChain(i,r.questionDotToken,r.name);if(e.isElementAccessExpression(r))return o?e.factory.createElementAccessChain(i,e.factory.createToken(28),r.argumentExpression):e.factory.createElementAccessChain(i,r.questionDotToken,r.argumentExpression)}return r}t.registerRefactor(r,{kinds:[i.kind],getAvailableActions:function(o){var s=c(o,"invoked"===o.triggerReason);if(!s)return e.emptyArray;if(!t.isRefactorErrorInfo(s))return[{name:r,description:n,actions:[i]}];if(o.preferences.provideRefactorNotApplicableReason)return[{name:r,description:n,actions:[a(a({},i),{notApplicableReason:s.error})]}];return e.emptyArray},getEditsForAction:function(r,n){var i=c(r);return e.Debug.assert(i&&!t.isRefactorErrorInfo(i),"Expected applicable refactor info"),{edits:e.textChanges.ChangeTracker.with(r,(function(t){return function(t,r,n,i){var a=i.finalExpression,o=i.occurrences,s=i.expression,c=o[o.length-1],l=f(r,a,o);l&&(e.isPropertyAccessExpression(l)||e.isElementAccessExpression(l)||e.isCallExpression(l))&&(e.isBinaryExpression(s)?n.replaceNodeRange(t,c,a,l):e.isConditionalExpression(s)&&n.replaceNode(t,s,e.factory.createBinaryExpression(l,e.factory.createToken(60),s.whenFalse)))}(r.file,r.program.getTypeChecker(),t,i)})),renameFilename:void 0,renameLocation:void 0}}})}(t.convertToOptionalChainExpression||(t.convertToOptionalChainExpression={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(){var r="Convert overload list to single signature",n=e.Diagnostics.Convert_overload_list_to_single_signature.message,i={name:r,description:n,kind:"refactor.rewrite.function.overloadList"};function a(e){switch(e.kind){case 165:case 166:case 170:case 167:case 171:case 253:return!0}return!1}function o(t,r,n){var i=e.getTokenAtPosition(t,r),o=e.findAncestor(i,a);if(o){var s=n.getTypeChecker(),c=o.symbol;if(c){var l=c.declarations;if(!(e.length(l)<=1)&&e.every(l,(function(r){return e.getSourceFileOfNode(r)===t}))&&a(l[0])){var u=l[0].kind;if(e.every(l,(function(e){return e.kind===u}))){var d=l;if(!e.some(d,(function(t){return!!t.typeParameters||e.some(t.parameters,(function(t){return!!t.decorators||!!t.modifiers||!e.isIdentifier(t.name)}))}))){var p=e.mapDefined(d,(function(e){return s.getSignatureFromDeclaration(e)}));if(e.length(p)===e.length(l)){var f=s.getReturnTypeOfSignature(p[0]);if(e.every(p,(function(e){return s.getReturnTypeOfSignature(e)===f})))return d}}}}}}}t.registerRefactor(r,{kinds:[i.kind],getEditsForAction:function(t){var r=t.file,n=t.startPosition,i=t.program,a=o(r,n,i);if(!a)return;var s=i.getTypeChecker(),c=a[a.length-1],l=c;switch(c.kind){case 165:l=e.factory.updateMethodSignature(c,c.modifiers,c.name,c.questionToken,c.typeParameters,d(a),c.type);break;case 166:l=e.factory.updateMethodDeclaration(c,c.decorators,c.modifiers,c.asteriskToken,c.name,c.questionToken,c.typeParameters,d(a),c.type,c.body);break;case 170:l=e.factory.updateCallSignature(c,c.typeParameters,d(a),c.type);break;case 167:l=e.factory.updateConstructorDeclaration(c,c.decorators,c.modifiers,d(a),c.body);break;case 171:l=e.factory.updateConstructSignature(c,c.typeParameters,d(a),c.type);break;case 253:l=e.factory.updateFunctionDeclaration(c,c.decorators,c.modifiers,c.asteriskToken,c.name,c.typeParameters,d(a),c.type,c.body);break;default:return e.Debug.failBadSyntaxKind(c,"Unhandled signature kind in overload list conversion refactoring")}if(l===c)return;var u=e.textChanges.ChangeTracker.with(t,(function(e){e.replaceNodeRange(r,a[0],a[a.length-1],l)}));return{renameFilename:void 0,renameLocation:void 0,edits:u};function d(t){var r=t[t.length-1];return e.isFunctionLikeDeclaration(r)&&r.body&&(t=t.slice(0,t.length-1)),e.factory.createNodeArray([e.factory.createParameterDeclaration(void 0,void 0,e.factory.createToken(25),"args",void 0,e.factory.createUnionTypeNode(e.map(t,p)))])}function p(t){var r=e.map(t.parameters,f);return e.setEmitFlags(e.factory.createTupleTypeNode(r),e.some(r,(function(t){return!!e.length(e.getSyntheticLeadingComments(t))}))?0:1)}function f(t){e.Debug.assert(e.isIdentifier(t.name));var r=e.setTextRange(e.factory.createNamedTupleMember(t.dotDotDotToken,t.name,t.questionToken,t.type||e.factory.createKeywordTypeNode(129)),t),n=t.symbol&&t.symbol.getDocumentationComment(s);if(n){var i=e.displayPartsToString(n);i.length&&e.setSyntheticLeadingComments(r,[{text:"*\n"+i.split("\n").map((function(e){return" * "+e})).join("\n")+"\n ",kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return r}},getAvailableActions:function(t){var a=t.file,s=t.startPosition,c=t.program;return o(a,s,c)?[{name:r,description:n,actions:[i]}]:e.emptyArray}})}(t.addOrRemoveBracesToArrowFunction||(t.addOrRemoveBracesToArrowFunction={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n,i,o,s,c="Extract Symbol",l={name:"Extract Constant",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_constant),kind:"refactor.extract.constant"},u={name:"Extract Function",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_function),kind:"refactor.extract.function"};function d(r){var n=r.kind,i=f(r.file,e.getRefactorContextSpan(r),"invoked"===r.triggerReason),o=i.targetRange;if(void 0===o){if(!i.errors||0===i.errors.length||!r.preferences.provideRefactorNotApplicableReason)return e.emptyArray;var s=[];return t.refactorKindBeginsWith(u.kind,n)&&s.push({name:c,description:u.description,actions:[a(a({},u),{notApplicableReason:A(i.errors)})]}),t.refactorKindBeginsWith(l.kind,n)&&s.push({name:c,description:l.description,actions:[a(a({},l),{notApplicableReason:A(i.errors)})]}),s}var d=function(t,r){var n=_(t,r),i=n.scopes,a=n.readsAndWrites,o=a.functionErrorsPerScope,s=a.constantErrorsPerScope,c=i.map((function(t,r){var n,i,a=function(t){return e.isFunctionLikeDeclaration(t)?"inner function":e.isClassLike(t)?"method":"function"}(t),c=function(t){return e.isClassLike(t)?"readonly field":"constant"}(t),l=e.isFunctionLikeDeclaration(t)?function(t){switch(t.kind){case 167:return"constructor";case 209:case 253:return t.name?"function '"+t.name.text+"'":e.ANONYMOUS;case 210:return"arrow function";case 166:return"method '"+t.name.getText()+"'";case 168:return"'get "+t.name.getText()+"'";case 169:return"'set "+t.name.getText()+"'";default:throw e.Debug.assertNever(t,"Unexpected scope kind "+t.kind)}}(t):e.isClassLike(t)?function(e){return 254===e.kind?e.name?"class '"+e.name.text+"'":"anonymous class declaration":e.name?"class expression '"+e.name.text+"'":"anonymous class expression"}(t):function(e){return 260===e.kind?"namespace '"+e.parent.name.getText()+"'":e.externalModuleIndicator?0:1}(t);return 1===l?(n=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[a,"global"]),i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[c,"global"])):0===l?(n=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[a,"module"]),i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[c,"module"])):(n=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1),[a,l]),i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1),[c,l])),0!==r||e.isClassLike(t)||(i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_enclosing_scope),[c])),{functionExtraction:{description:n,errors:o[r]},constantExtraction:{description:i,errors:s[r]}}}));return c}(o,r);if(void 0===d)return e.emptyArray;for(var p,m,g=[],h=new e.Map,y=[],v=new e.Map,b=0,k=0,x=d;k<x.length;k++){var E=x[k],S=E.functionExtraction,D=E.constantExtraction,w=S.description;if(t.refactorKindBeginsWith(u.kind,n)&&(0===S.errors.length?h.has(w)||(h.set(w,!0),g.push({description:w,name:"function_scope_"+b,kind:u.kind})):p||(p={description:w,name:"function_scope_"+b,notApplicableReason:A(S.errors),kind:u.kind})),t.refactorKindBeginsWith(l.kind,n))if(0===D.errors.length){var T=D.description;v.has(T)||(v.set(T,!0),y.push({description:T,name:"constant_scope_"+b,kind:l.kind}))}else m||(m={description:w,name:"constant_scope_"+b,notApplicableReason:A(D.errors),kind:l.kind});b++}var C=[];return g.length?C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_function),actions:g}):r.preferences.provideRefactorNotApplicableReason&&p&&C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_function),actions:[p]}),y.length?C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_constant),actions:y}):r.preferences.provideRefactorNotApplicableReason&&m&&C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_constant),actions:[m]}),C.length?C:e.emptyArray;function A(e){var t=e[0].messageText;return"string"!=typeof t&&(t=t.messageText),t}}function p(t,r){var n=f(t.file,e.getRefactorContextSpan(t)).targetRange,a=/^function_scope_(\d+)$/.exec(r);if(a){var o=+a[1];return e.Debug.assert(isFinite(o),"Expected to parse a finite number from the function scope index"),function(t,r,n){var a=_(t,r),o=a.scopes,s=a.readsAndWrites,c=s.target,l=s.usagesPerScope,u=s.functionErrorsPerScope,d=s.exposedVariableDeclarations;return e.Debug.assert(!u[n].length,"The extraction went missing? How?"),r.cancellationToken.throwIfCancellationRequested(),function(t,r,n,a,o,s){var c,l,u=n.usages,d=n.typeParameterUsages,p=n.substitutions,f=s.program.getTypeChecker(),m=e.getEmitScriptTarget(s.program.getCompilerOptions()),g=e.codefix.createImportAdder(s.file,s.program,s.preferences,s.host),_=r.getSourceFile(),k=e.getUniqueName(e.isClassLike(r)?"newMethod":"newFunction",_),x=e.isInJSFile(r),S=e.factory.createIdentifier(k),D=[],w=[];u.forEach((function(t,n){var i;if(!x){var a=f.getTypeOfSymbolAtLocation(t.symbol,t.node);a=f.getBaseTypeOfLiteralType(a),i=e.codefix.typeToAutoImportableTypeNode(f,g,a,r,m,1)}var o=e.factory.createParameterDeclaration(void 0,void 0,void 0,n,void 0,i);D.push(o),2===t.usage&&(l||(l=[])).push(t),w.push(e.factory.createIdentifier(n))}));var T=e.arrayFrom(d.values()).map((function(e){return{type:e,declaration:h(e)}})).sort(y),C=0===T.length?void 0:T.map((function(e){return e.declaration})),A=void 0!==C?C.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)})):void 0;if(e.isExpression(t)&&!x){var N=f.getContextualType(t);c=f.typeToTypeNode(N,r,1)}var P,I=function(t,r,n,i,a){var o,s=void 0!==n||r.length>0;if(e.isBlock(t)&&!s&&0===i.size)return{body:e.factory.createBlock(t.statements,!0),returnValueProperty:void 0};var c=!1,l=e.factory.createNodeArray(e.isBlock(t)?t.statements.slice(0):[e.isStatement(t)?t:e.factory.createReturnStatement(t)]);if(s||i.size){var u=e.visitNodes(l,p).slice();if(s&&!a&&e.isStatement(t)){var d=v(r,n);1===d.length?u.push(e.factory.createReturnStatement(d[0].name)):u.push(e.factory.createReturnStatement(e.factory.createObjectLiteralExpression(d)))}return{body:e.factory.createBlock(u,!0),returnValueProperty:o}}return{body:e.factory.createBlock(l,!0),returnValueProperty:void 0};function p(t){if(!c&&e.isReturnStatement(t)&&s){var a=v(r,n);return t.expression&&(o||(o="__return"),a.unshift(e.factory.createPropertyAssignment(o,e.visitNode(t.expression,p)))),1===a.length?e.factory.createReturnStatement(a[0].name):e.factory.createReturnStatement(e.factory.createObjectLiteralExpression(a))}var l=c;c=c||e.isFunctionLikeDeclaration(t)||e.isClassLike(t);var u=i.get(e.getNodeId(t).toString()),d=u?e.getSynthesizedDeepClone(u):e.visitEachChild(t,p,e.nullTransformationContext);return c=l,d}}(t,a,l,p,!!(o.facts&i.HasReturn)),F=I.body,O=I.returnValueProperty;if(e.suppressLeadingAndTrailingTrivia(F),e.isClassLike(r)){var R=x?[]:[e.factory.createModifier(121)];o.facts&i.InStaticRegion&&R.push(e.factory.createModifier(124)),o.facts&i.IsAsyncFunction&&R.push(e.factory.createModifier(130)),P=e.factory.createMethodDeclaration(void 0,R.length?R:void 0,o.facts&i.IsGenerator?e.factory.createToken(41):void 0,S,void 0,C,D,c,F)}else P=e.factory.createFunctionDeclaration(void 0,o.facts&i.IsAsyncFunction?[e.factory.createToken(130)]:void 0,o.facts&i.IsGenerator?e.factory.createToken(41):void 0,S,C,D,c,F);var M=e.textChanges.ChangeTracker.fromContext(s),L=function(t,r){return e.find(function(t){if(e.isFunctionLikeDeclaration(t)){var r=t.body;if(e.isBlock(r))return r.statements}else{if(e.isModuleBlock(t)||e.isSourceFile(t))return t.statements;if(e.isClassLike(t))return t.members;e.assertType(t)}return e.emptyArray}(r),(function(r){return r.pos>=t&&e.isFunctionLikeDeclaration(r)&&!e.isConstructorDeclaration(r)}))}((b(o.range)?e.last(o.range):o.range).end,r);L?M.insertNodeBefore(s.file,L,P,!0):M.insertNodeAtEndOfScope(s.file,r,P);g.writeFixes(M);var j=[],B=function(t,r,n){var a=e.factory.createIdentifier(n);if(e.isClassLike(t)){var o=r.facts&i.InStaticRegion?e.factory.createIdentifier(t.name.text):e.factory.createThis();return e.factory.createPropertyAccessExpression(o,a)}return a}(r,o,k),z=e.factory.createCallExpression(B,A,w);o.facts&i.IsGenerator&&(z=e.factory.createYieldExpression(e.factory.createToken(41),z));o.facts&i.IsAsyncFunction&&(z=e.factory.createAwaitExpression(z));E(t)&&(z=e.factory.createJsxExpression(void 0,z));if(a.length&&!l)if(e.Debug.assert(!O,"Expected no returnValueProperty"),e.Debug.assert(!(o.facts&i.HasReturn),"Expected RangeFacts.HasReturn flag to be unset"),1===a.length){var U=a[0];j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.getSynthesizedDeepClone(U.name),void 0,e.getSynthesizedDeepClone(U.type),z)],U.parent.flags)))}else{for(var q=[],J=[],V=a[0].parent.flags,H=!1,K=0,W=a;K<W.length;K++){U=W[K];q.push(e.factory.createBindingElement(void 0,void 0,e.getSynthesizedDeepClone(U.name)));var G=f.typeToTypeNode(f.getBaseTypeOfLiteralType(f.getTypeAtLocation(U)),r,1);J.push(e.factory.createPropertySignature(void 0,U.symbol.name,void 0,G)),H=H||void 0!==U.type,V&=U.parent.flags}var $=H?e.factory.createTypeLiteralNode(J):void 0;$&&e.setEmitFlags($,1),j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.factory.createObjectBindingPattern(q),void 0,$,z)],V)))}else if(a.length||l){if(a.length)for(var Y=0,X=a;Y<X.length;Y++){var Q=(U=X[Y]).parent.flags;2&Q&&(Q=-3&Q|1),j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(U.symbol.name,void 0,ne(U.type))],Q)))}O&&j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(O,void 0,ne(c))],1)));var Z=v(a,l);O&&Z.unshift(e.factory.createShorthandPropertyAssignment(O)),1===Z.length?(e.Debug.assert(!O,"Shouldn't have returnValueProperty here"),j.push(e.factory.createExpressionStatement(e.factory.createAssignment(Z[0].name,z))),o.facts&i.HasReturn&&j.push(e.factory.createReturnStatement())):(j.push(e.factory.createExpressionStatement(e.factory.createAssignment(e.factory.createObjectLiteralExpression(Z),z))),O&&j.push(e.factory.createReturnStatement(e.factory.createIdentifier(O))))}else o.facts&i.HasReturn?j.push(e.factory.createReturnStatement(z)):b(o.range)?j.push(e.factory.createExpressionStatement(z)):j.push(z);b(o.range)?M.replaceNodeRangeWithNodes(s.file,e.first(o.range),e.last(o.range),j):M.replaceNodeWithNodes(s.file,o.range,j);var ee=M.getChanges(),te=(b(o.range)?e.first(o.range):o.range).getSourceFile().fileName,re=e.getRenameLocation(ee,te,k,!1);return{renameFilename:te,renameLocation:re,edits:ee};function ne(t){if(void 0!==t){for(var r=e.getSynthesizedDeepClone(t),n=r;e.isParenthesizedTypeNode(n);)n=n.type;return e.isUnionTypeNode(n)&&e.find(n.types,(function(e){return 151===e.kind}))?r:e.factory.createUnionTypeNode([r,e.factory.createKeywordTypeNode(151)])}}}(c,o[n],l[n],d,t,r)}(n,t,o)}var s=/^constant_scope_(\d+)$/.exec(r);if(s){o=+s[1];return e.Debug.assert(isFinite(o),"Expected to parse a finite number from the constant scope index"),function(t,r,n){var a=_(t,r),o=a.scopes,s=a.readsAndWrites,c=s.target,l=s.usagesPerScope,u=s.constantErrorsPerScope,d=s.exposedVariableDeclarations;return e.Debug.assert(!u[n].length,"The extraction went missing? How?"),e.Debug.assert(0===d.length,"Extract constant accepted a range containing a variable declaration?"),r.cancellationToken.throwIfCancellationRequested(),function(t,r,n,a,o){var s,c=n.substitutions,l=o.program.getTypeChecker(),u=r.getSourceFile(),d=e.getUniqueName(e.isClassLike(r)?"newProperty":"newLocal",u),p=e.isInJSFile(r),f=p||!l.isContextSensitive(t)?void 0:l.typeToTypeNode(l.getContextualType(t),r,1),m=function(t,r){return r.size?n(t):t;function n(t){var i=r.get(e.getNodeId(t).toString());return i?e.getSynthesizedDeepClone(i):e.visitEachChild(t,n,e.nullTransformationContext)}}(t,c);s=A(f,m),f=s.variableType,m=s.initializer,e.suppressLeadingAndTrailingTrivia(m);var _=e.textChanges.ChangeTracker.fromContext(o);if(e.isClassLike(r)){e.Debug.assert(!p,"Cannot extract to a JS class");var h=[];h.push(e.factory.createModifier(121)),a&i.InStaticRegion&&h.push(e.factory.createModifier(124)),h.push(e.factory.createModifier(143));var y=e.factory.createPropertyDeclaration(void 0,h,d,void 0,f,m),v=e.factory.createPropertyAccessExpression(a&i.InStaticRegion?e.factory.createIdentifier(r.name.getText()):e.factory.createThis(),e.factory.createIdentifier(d));E(t)&&(v=e.factory.createJsxExpression(void 0,v));var b=function(t,r){var n,i=r.members;e.Debug.assert(i.length>0,"Found no members");for(var a=!0,o=0,s=i;o<s.length;o++){var c=s[o];if(c.pos>t)return n||i[0];if(a&&!e.isPropertyDeclaration(c)){if(void 0!==n)return c;a=!1}n=c}return void 0===n?e.Debug.fail():n}(t.pos,r);_.insertNodeBefore(o.file,b,y,!0),_.replaceNode(o.file,t,v)}else{var k=e.factory.createVariableDeclaration(d,void 0,f,m),S=function(t,r){var n;for(;void 0!==t&&t!==r;){if(e.isVariableDeclaration(t)&&t.initializer===n&&e.isVariableDeclarationList(t.parent)&&t.parent.declarations.length>1)return t;n=t,t=t.parent}}(t,r);if(S){_.insertNodeBefore(o.file,S,k);v=e.factory.createIdentifier(d);_.replaceNode(o.file,t,v)}else if(235===t.parent.kind&&r===e.findAncestor(t,g)){var D=e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([k],2));_.replaceNode(o.file,t.parent,D)}else{D=e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([k],2)),b=function(t,r){var n;e.Debug.assert(!e.isClassLike(r));for(var i=t;i!==r;i=i.parent)g(i)&&(n=i);for(i=(n||t).parent;;i=i.parent){if(x(i)){for(var a=void 0,o=0,s=i.statements;o<s.length;o++){var c=s[o];if(c.pos>t.pos)break;a=c}return!a&&e.isCaseClause(i)?(e.Debug.assert(e.isSwitchStatement(i.parent.parent),"Grandparent isn't a switch statement"),i.parent.parent):e.Debug.checkDefined(a,"prevStatement failed to get set")}e.Debug.assert(i!==r,"Didn't encounter a block-like before encountering scope")}}(t,r);if(0===b.pos?_.insertNodeAtTopOfFile(o.file,D,!1):_.insertNodeBefore(o.file,b,D,!1),235===t.parent.kind)_.delete(o.file,t.parent);else{v=e.factory.createIdentifier(d);E(t)&&(v=e.factory.createJsxExpression(void 0,v)),_.replaceNode(o.file,t,v)}}}var w=_.getChanges(),T=t.getSourceFile().fileName,C=e.getRenameLocation(w,T,d,!0);return{renameFilename:T,renameLocation:C,edits:w};function A(n,i){if(void 0===n)return{variableType:n,initializer:i};if(!e.isFunctionExpression(i)&&!e.isArrowFunction(i)||i.typeParameters)return{variableType:n,initializer:i};var a=l.getTypeAtLocation(t),o=e.singleOrUndefined(l.getSignaturesOfType(a,0));if(!o)return{variableType:n,initializer:i};if(o.getTypeParameters())return{variableType:n,initializer:i};for(var s=[],c=!1,u=0,d=i.parameters;u<d.length;u++){var p=d[u];if(p.type)s.push(p);else{var f=l.getTypeAtLocation(p);f===l.getAnyType()&&(c=!0),s.push(e.factory.updateParameterDeclaration(p,p.decorators,p.modifiers,p.dotDotDotToken,p.name,p.questionToken,p.type||l.typeToTypeNode(f,r,1),p.initializer))}}if(c)return{variableType:n,initializer:i};if(n=void 0,e.isArrowFunction(i))i=e.factory.updateArrowFunction(i,t.modifiers,i.typeParameters,s,i.type||l.typeToTypeNode(o.getReturnType(),r,1),i.equalsGreaterThanToken,i.body);else{if(o&&o.thisParameter){var m=e.firstOrUndefined(s);if(!m||e.isIdentifier(m.name)&&"this"!==m.name.escapedText){var g=l.getTypeOfSymbolAtLocation(o.thisParameter,t);s.splice(0,0,e.factory.createParameterDeclaration(void 0,void 0,void 0,"this",void 0,l.typeToTypeNode(g,r,1)))}}i=e.factory.updateFunctionExpression(i,t.modifiers,i.asteriskToken,i.name,i.typeParameters,s,i.type||l.typeToTypeNode(o.getReturnType(),r,1),i.body)}return{variableType:n,initializer:i}}}(e.isExpression(c)?c:c.statements[0].expression,o[n],l[n],t.facts,r)}(n,t,o)}e.Debug.fail("Unrecognized action name")}function f(t,r,a){void 0===a&&(a=!0);var o=r.length;if(0===o&&!a)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractEmpty)]};var s=0===o&&a,c=e.getTokenAtPosition(t,r.start),l=s?function(t){return e.findAncestor(t,(function(t){return t.parent&&k(t)&&!e.isBinaryExpression(t.parent)}))}(c):e.getParentNodeInSpan(c,t,r),u=e.findTokenOnLeftOfPosition(t,e.textSpanEnd(r)),d=s?l:e.getParentNodeInSpan(u,t,r),p=[],f=i.None;if(!l||!d)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};if(l.parent!==d.parent)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};if(l!==d){if(!x(l.parent))return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};for(var g=[],_=0,h=l.parent.statements;_<h.length;_++){var y=h[_];if(y===l||g.length){var v=S(y);if(v)return{errors:v};g.push(y)}if(y===d)break}return g.length?{targetRange:{range:g,facts:f,declarations:p}}:{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]}}if(e.isJSDoc(l))return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractJSDoc)]};if(e.isReturnStatement(l)&&!l.expression)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};var b=function(t){if(e.isReturnStatement(t)){if(t.expression)return t.expression}else if(e.isVariableStatement(t)){for(var r=0,n=void 0,i=0,a=t.declarationList.declarations;i<a.length;i++){var o=a[i];o.initializer&&(r++,n=o.initializer)}if(1===r)return n}else if(e.isVariableDeclaration(t)&&t.initializer)return t.initializer;return t}(l),E=function(t){if(e.isIdentifier(e.isExpressionStatement(t)?t.expression:t))return[e.createDiagnosticForNode(t,n.cannotExtractIdentifier)];return}(b)||S(b);return E?{errors:E}:{targetRange:{range:m(b),facts:f,declarations:p}};function S(t){var a;if(function(e){e[e.None=0]="None",e[e.Break=1]="Break",e[e.Continue=2]="Continue",e[e.Return=4]="Return"}(a||(a={})),e.Debug.assert(t.pos<=t.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),e.Debug.assert(!e.positionIsSynthesized(t.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!(e.isStatement(t)||e.isExpressionNode(t)&&k(t)))return[e.createDiagnosticForNode(t,n.statementOrExpressionExpected)];if(8388608&t.flags)return[e.createDiagnosticForNode(t,n.cannotExtractAmbientBlock)];var o,s=e.getContainingClass(t);s&&function(t,r){for(var n=t;n!==r;){if(164===n.kind){e.hasSyntacticModifier(n,32)&&(f|=i.InStaticRegion);break}if(161===n.kind){167===e.getContainingFunction(n).kind&&(f|=i.InStaticRegion);break}166===n.kind&&e.hasSyntacticModifier(n,32)&&(f|=i.InStaticRegion),n=n.parent}}(t,s);var c,l=4;return function t(a){if(o)return!0;if(e.isDeclaration(a)){var s=251===a.kind?a.parent.parent:a;if(e.hasSyntacticModifier(s,1))return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractExportedEntity)),!0;p.push(a.symbol)}switch(a.kind){case 264:return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractImport)),!0;case 269:return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractExportedEntity)),!0;case 106:if(204===a.parent.kind){var u=e.getContainingClass(a);if(u.pos<r.start||u.end>=r.start+r.length)return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractSuper)),!0}else f|=i.UsesThis;break;case 210:e.forEachChild(a,(function t(r){if(e.isThis(r))f|=i.UsesThis;else{if(e.isClassLike(r)||e.isFunctionLike(r)&&!e.isArrowFunction(r))return!1;e.forEachChild(r,t)}}));case 254:case 253:e.isSourceFile(a.parent)&&void 0===a.parent.externalModuleIndicator&&(o||(o=[])).push(e.createDiagnosticForNode(a,n.functionWillNotBeVisibleInTheNewScope));case 223:case 209:case 166:case 167:case 168:case 169:return!1}var d=l;switch(a.kind){case 236:case 249:l=0;break;case 232:a.parent&&249===a.parent.kind&&a.parent.finallyBlock===a&&(l=4);break;case 288:case 287:l|=1;break;default:e.isIterationStatement(a,!1)&&(l|=3)}switch(a.kind){case 188:case 108:f|=i.UsesThis;break;case 247:var m=a.label;(c||(c=[])).push(m.escapedText),e.forEachChild(a,t),c.pop();break;case 243:case 242:(m=a.label)?e.contains(c,m.escapedText)||(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):l&(243===a.kind?1:2)||(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break;case 215:f|=i.IsAsyncFunction;break;case 221:f|=i.IsGenerator;break;case 244:4&l?f|=i.HasReturn:(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractRangeContainingConditionalReturnStatement));break;default:e.forEachChild(a,t)}l=d}(t),o}}function m(t){return e.isStatement(t)?[t]:e.isExpressionNode(t)?e.isExpressionStatement(t.parent)?[t.parent]:t:void 0}function g(t){return e.isFunctionLikeDeclaration(t)||e.isSourceFile(t)||e.isModuleBlock(t)||e.isClassLike(t)}function _(t,r){var a=r.file,o=function(t){var r=b(t.range)?e.first(t.range):t.range;if(t.facts&i.UsesThis){var n=e.getContainingClass(r);if(n){var a=e.findAncestor(r,e.isFunctionLikeDeclaration);return a?[a,n]:[n]}}for(var o=[];;)if(161===(r=r.parent).kind&&(r=e.findAncestor(r,(function(t){return e.isFunctionLikeDeclaration(t)})).parent),g(r)&&(o.push(r),300===r.kind))return o}(t),s=function(t,r){return b(t.range)?{pos:e.first(t.range).getStart(r),end:e.last(t.range).getEnd()}:t.range}(t,a),c=function(t,r,a,o,s,c){var l,u,d=new e.Map,p=[],f=[],m=[],g=[],_=[],h=new e.Map,y=[],v=b(t.range)?1===t.range.length&&e.isExpressionStatement(t.range[0])?t.range[0].expression:void 0:t.range;if(void 0===v){var k=t.range,x=e.first(k).getStart(),E=e.last(k).end;u=e.createFileDiagnostic(o,x,E-x,n.expressionExpected)}else 147456&s.getTypeAtLocation(v).flags&&(u=e.createDiagnosticForNode(v,n.uselessConstantType));for(var S=0,D=r;S<D.length;S++){var w=D[S];p.push({usages:new e.Map,typeParameterUsages:new e.Map,substitutions:new e.Map}),f.push(new e.Map),m.push(e.isFunctionLikeDeclaration(w)&&253!==w.kind?[e.createDiagnosticForNode(w,n.cannotExtractToOtherFunctionLike)]:[]);var T=[];u&&T.push(u),e.isClassLike(w)&&e.isInJSFile(w)&&T.push(e.createDiagnosticForNode(w,n.cannotExtractToJSClass)),e.isArrowFunction(w)&&!e.isBlock(w.body)&&T.push(e.createDiagnosticForNode(w,n.cannotExtractToExpressionArrowFunction)),g.push(T)}var C=new e.Map,A=b(t.range)?e.factory.createBlock(t.range):t.range,N=b(t.range)?e.first(t.range):t.range,P=q(N);if(V(A),P&&!b(t.range)){J(s.getContextualType(t.range))}if(d.size>0){for(var I=new e.Map,F=0,O=N;void 0!==O&&F<r.length;O=O.parent)if(O===r[F]&&(I.forEach((function(e,t){p[F].typeParameterUsages.set(t,e)})),F++),e.isDeclarationWithTypeParameters(O))for(var R=0,M=e.getEffectiveTypeParameterDeclarations(O);R<M.length;R++){var L=M[R],j=s.getTypeAtLocation(L);d.has(j.id.toString())&&I.set(j.id.toString(),j)}e.Debug.assert(F===r.length,"Should have iterated all scopes")}if(_.length){var B=e.isBlockScope(r[0],r[0].parent)?r[0]:e.getEnclosingBlockScopeContainer(r[0]);e.forEachChild(B,W)}for(var z=function(r){var i=p[r];if(r>0&&(i.usages.size>0||i.typeParameterUsages.size>0)){var a=b(t.range)?t.range[0]:t.range;g[r].push(e.createDiagnosticForNode(a,n.cannotAccessVariablesFromNestedScopes))}var o,s=!1;if(p[r].usages.forEach((function(t){2===t.usage&&(s=!0,106500&t.symbol.flags&&t.symbol.valueDeclaration&&e.hasEffectiveModifier(t.symbol.valueDeclaration,64)&&(o=t.symbol.valueDeclaration))})),e.Debug.assert(b(t.range)||0===y.length,"No variable declarations expected if something was extracted"),s&&!b(t.range)){var c=e.createDiagnosticForNode(t.range,n.cannotWriteInExpression);m[r].push(c),g[r].push(c)}else if(o&&r>0){c=e.createDiagnosticForNode(o,n.cannotExtractReadonlyPropertyInitializerOutsideConstructor);m[r].push(c),g[r].push(c)}else if(l){c=e.createDiagnosticForNode(l,n.cannotExtractExportedEntity);m[r].push(c),g[r].push(c)}},U=0;U<r.length;U++)z(U);return{target:A,usagesPerScope:p,functionErrorsPerScope:m,constantErrorsPerScope:g,exposedVariableDeclarations:y};function q(t){return!!e.findAncestor(t,(function(t){return e.isDeclarationWithTypeParameters(t)&&0!==e.getEffectiveTypeParameterDeclarations(t).length}))}function J(e){for(var t=0,r=s.getSymbolWalker((function(){return c.throwIfCancellationRequested(),!0})).walkType(e).visitedTypes;t<r.length;t++){var n=r[t];n.isTypeParameter()&&d.set(n.id.toString(),n)}}function V(t,r){(void 0===r&&(r=1),P)&&J(s.getTypeAtLocation(t));if(e.isDeclaration(t)&&t.symbol&&_.push(t),e.isAssignmentExpression(t))V(t.left,2),V(t.right);else if(e.isUnaryExpressionWithWrite(t))V(t.operand,2);else if(e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t))e.forEachChild(t,V);else if(e.isIdentifier(t)){if(!t.parent)return;if(e.isQualifiedName(t.parent)&&t!==t.parent.left)return;if(e.isPropertyAccessExpression(t.parent)&&t!==t.parent.expression)return;H(t,r,e.isPartOfTypeNode(t))}else e.forEachChild(t,V)}function H(t,n,i){var a=K(t,n,i);if(a)for(var o=0;o<r.length;o++){var s=f[o].get(a);s&&p[o].substitutions.set(e.getNodeId(t).toString(),s)}}function K(c,l,u){var d=G(c);if(d){var _=e.getSymbolId(d).toString(),h=C.get(_);if(h&&h>=l)return _;if(C.set(_,l),h){for(var y=0,v=p;y<v.length;y++){var b=v[y];b.usages.get(c.text)&&b.usages.set(c.text,{usage:l,symbol:d,node:c})}return _}var k=d.getDeclarations(),x=k&&e.find(k,(function(e){return e.getSourceFile()===o}));if(x&&!e.rangeContainsStartEnd(a,x.getStart(),x.end)){if(t.facts&i.IsGenerator&&2===l){for(var E=e.createDiagnosticForNode(c,n.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators),S=0,D=m;S<D.length;S++){D[S].push(E)}for(var w=0,T=g;w<T.length;w++){T[w].push(E)}}for(var A=0;A<r.length;A++){var N=r[A];if(s.resolveName(d.name,N,d.flags,!1)!==d&&!f[A].has(_)){var P=$(d.exportSymbol||d,N,u);if(P)f[A].set(_,P);else if(u){if(!(262144&d.flags)){E=e.createDiagnosticForNode(c,n.typeWillNotBeVisibleInTheNewScope);m[A].push(E),g[A].push(E)}}else p[A].usages.set(c.text,{usage:l,symbol:d,node:c})}}return _}}}function W(r){if(!(r===t.range||b(t.range)&&t.range.indexOf(r)>=0)){var n=e.isIdentifier(r)?G(r):s.getSymbolAtLocation(r);if(n){var i=e.find(_,(function(e){return e.symbol===n}));if(i)if(e.isVariableDeclaration(i)){var a=i.symbol.id.toString();h.has(a)||(y.push(i),h.set(a,!0))}else l=l||i}e.forEachChild(r,W)}}function G(t){return t.parent&&e.isShorthandPropertyAssignment(t.parent)&&t.parent.name===t?s.getShorthandAssignmentValueSymbol(t.parent):s.getSymbolAtLocation(t)}function $(t,r,n){if(t){var i=t.getDeclarations();if(i&&i.some((function(e){return e.parent===r})))return e.factory.createIdentifier(t.name);var a=$(t.parent,r,n);if(void 0!==a)return n?e.factory.createQualifiedName(a,e.factory.createIdentifier(t.name)):e.factory.createPropertyAccessExpression(a,t.name)}}}(t,o,s,a,r.program.getTypeChecker(),r.cancellationToken);return{scopes:o,readsAndWrites:c}}function h(e){var t,r=e.symbol;if(r&&r.declarations)for(var n=0,i=r.declarations;n<i.length;n++){var a=i[n];(void 0===t||a.pos<t.pos)&&(t=a)}return t}function y(t,r){var n=t.type,i=t.declaration,a=r.type,o=r.declaration;return e.compareProperties(i,o,"pos",e.compareValues)||e.compareStringsCaseSensitive(n.symbol?n.symbol.getName():"",a.symbol?a.symbol.getName():"")||e.compareValues(n.id,a.id)}function v(t,r){var n=e.map(t,(function(t){return e.factory.createShorthandPropertyAssignment(t.symbol.name)})),i=e.map(r,(function(t){return e.factory.createShorthandPropertyAssignment(t.symbol.name)}));return void 0===n?i:void 0===i?n:n.concat(i)}function b(t){return e.isArray(t)}function k(e){var t=e.parent;if(294===t.kind)return!1;switch(e.kind){case 10:return 264!==t.kind&&268!==t.kind;case 222:case 197:case 199:return!1;case 78:return 199!==t.kind&&268!==t.kind&&273!==t.kind}return!0}function x(e){switch(e.kind){case 232:case 300:case 260:case 287:return!0;default:return!1}}function E(t){return(e.isJsxElement(t)||e.isJsxSelfClosingElement(t)||e.isJsxFragment(t))&&e.isJsxElement(t.parent)}t.registerRefactor(c,{kinds:[l.kind,u.kind],getAvailableActions:d,getEditsForAction:p}),r.getAvailableActions=d,r.getEditsForAction=p,function(t){function r(t){return{message:t,code:0,category:e.DiagnosticCategory.Message,key:t}}t.cannotExtractRange=r("Cannot extract range."),t.cannotExtractImport=r("Cannot extract import statement."),t.cannotExtractSuper=r("Cannot extract super call."),t.cannotExtractJSDoc=r("Cannot extract JSDoc."),t.cannotExtractEmpty=r("Cannot extract empty range."),t.expressionExpected=r("expression expected."),t.uselessConstantType=r("No reason to extract constant of type."),t.statementOrExpressionExpected=r("Statement or expression expected."),t.cannotExtractRangeContainingConditionalBreakOrContinueStatements=r("Cannot extract range containing conditional break or continue statements."),t.cannotExtractRangeContainingConditionalReturnStatement=r("Cannot extract range containing conditional return statement."),t.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=r("Cannot extract range containing labeled break or continue with target outside of the range."),t.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=r("Cannot extract range containing writes to references located outside of the target range in generators."),t.typeWillNotBeVisibleInTheNewScope=r("Type will not visible in the new scope."),t.functionWillNotBeVisibleInTheNewScope=r("Function will not visible in the new scope."),t.cannotExtractIdentifier=r("Select more than a single identifier."),t.cannotExtractExportedEntity=r("Cannot extract exported declaration"),t.cannotWriteInExpression=r("Cannot write back side-effects when extracting an expression"),t.cannotExtractReadonlyPropertyInitializerOutsideConstructor=r("Cannot move initialization of read-only class property outside of the constructor"),t.cannotExtractAmbientBlock=r("Cannot extract code from ambient contexts"),t.cannotAccessVariablesFromNestedScopes=r("Cannot access variables from nested scopes"),t.cannotExtractToOtherFunctionLike=r("Cannot extract method to a function-like scope that is not a function"),t.cannotExtractToJSClass=r("Cannot extract constant to a class scope in JS"),t.cannotExtractToExpressionArrowFunction=r("Cannot extract constant to an arrow function without a block")}(n=r.Messages||(r.Messages={})),function(e){e[e.None=0]="None",e[e.HasReturn=1]="HasReturn",e[e.IsGenerator=2]="IsGenerator",e[e.IsAsyncFunction=4]="IsAsyncFunction",e[e.UsesThis=8]="UsesThis",e[e.InStaticRegion=16]="InStaticRegion"}(i||(i={})),r.getRangeToExtract=f,function(e){e[e.Module=0]="Module",e[e.Global=1]="Global"}(o||(o={})),function(e){e[e.Read=1]="Read",e[e.Write=2]="Write"}(s||(s={}))}(t.extractSymbol||(t.extractSymbol={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r="Extract type",n={name:"Extract to type alias",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_type_alias),kind:"refactor.extract.type"},i={name:"Extract to interface",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_interface),kind:"refactor.extract.interface"},o={name:"Extract to typedef",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_typedef),kind:"refactor.extract.typedef"};function s(t,r){void 0===r&&(r=!0);var n=t.file,i=t.startPosition,a=e.isSourceFileJS(n),o=e.getTokenAtPosition(n,i),s=e.createTextRangeFromSpan(e.getRefactorContextSpan(t)),u=s.pos===s.end&&r,d=e.findAncestor(o,(function(t){return t.parent&&e.isTypeNode(t)&&!l(s,t.parent,n)&&(u||e.nodeOverlapsWithStartEnd(o,n,s.pos,s.end))}));if(!d||!e.isTypeNode(d))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Selection_is_not_a_valid_type_node)};var p=t.program.getTypeChecker(),f=e.Debug.checkDefined(e.findAncestor(d,e.isStatement),"Should find a statement"),m=function(t,r,n,i){var a=[];return o(r)?void 0:a;function o(s){if(e.isTypeReferenceNode(s)){if(e.isIdentifier(s.typeName)&&(p=t.resolveName(s.typeName.text,s.typeName,262144,!0))){var c=e.cast(e.first(p.declarations),e.isTypeParameterDeclaration);l(n,c,i)&&!l(r,c,i)&&e.pushIfUnique(a,c)}}else if(e.isInferTypeNode(s)){var u=e.findAncestor(s,(function(t){return e.isConditionalTypeNode(t)&&l(t.extendsType,s,i)}));if(!u||!l(r,u,i))return!0}else if(e.isTypePredicateNode(s)||e.isThisTypeNode(s)){var d=e.findAncestor(s.parent,e.isFunctionLike);if(d&&d.type&&l(d.type,s,i)&&!l(r,d,i))return!0}else if(e.isTypeQueryNode(s)){var p;if(e.isIdentifier(s.exprName)){if((p=t.resolveName(s.exprName.text,s.exprName,111551,!1))&&l(n,p.valueDeclaration,i)&&!l(r,p.valueDeclaration,i))return!0}else if(e.isThisIdentifier(s.exprName.left)&&!l(r,s.parent,i))return!0}return i&&e.isTupleTypeNode(s)&&e.getLineAndCharacterOfPosition(i,s.pos).line===e.getLineAndCharacterOfPosition(i,s.end).line&&e.setEmitFlags(s,1),e.forEachChild(s,o)}}(p,d,f,n);return m?{isJS:a,selection:d,firstStatement:f,typeParameters:m,typeElements:c(p,d)}:{error:e.getLocaleSpecificMessage(e.Diagnostics.No_type_could_be_extracted_from_this_type_node)}}function c(t,r){if(r){if(e.isIntersectionTypeNode(r)){for(var n=[],i=new e.Map,a=0,o=r.types;a<o.length;a++){var s=c(t,o[a]);if(!s||!s.every((function(t){return t.name&&e.addToSeen(i,e.getNameFromPropertyName(t.name))})))return;e.addRange(n,s)}return n}return e.isParenthesizedTypeNode(r)?c(t,r.type):e.isTypeLiteralNode(r)?r.members:void 0}}function l(t,r,n){return e.rangeContainsStartEnd(t,e.skipTrivia(n.text,r.pos),r.end)}t.registerRefactor(r,{kinds:[n.kind,i.kind,o.kind],getAvailableActions:function(c){var l=s(c,"invoked"===c.triggerReason);return l?t.isRefactorErrorInfo(l)?c.preferences.provideRefactorNotApplicableReason?[{name:r,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_type),actions:[a(a({},o),{notApplicableReason:l.error}),a(a({},n),{notApplicableReason:l.error}),a(a({},i),{notApplicableReason:l.error})]}]:e.emptyArray:[{name:r,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_type),actions:l.isJS?[o]:e.append([n],l.typeElements&&i)}]:e.emptyArray},getEditsForAction:function(r,a){var c=r.file,l=s(r);e.Debug.assert(l&&!t.isRefactorErrorInfo(l),"Expected to find a range to extract");var u=e.getUniqueName("NewType",c),d=e.textChanges.ChangeTracker.with(r,(function(t){switch(a){case n.name:return e.Debug.assert(!l.isJS,"Invalid actionName/JS combo"),function(t,r,n,i){var a=i.firstStatement,o=i.selection,s=i.typeParameters,c=e.factory.createTypeAliasDeclaration(void 0,void 0,n,s.map((function(t){return e.factory.updateTypeParameterDeclaration(t,t.name,t.constraint,void 0)})),o);t.insertNodeBefore(r,a,e.ignoreSourceNewlines(c),!0),t.replaceNode(r,o,e.factory.createTypeReferenceNode(n,s.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)}))),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.ExcludeWhitespace})}(t,c,u,l);case o.name:return e.Debug.assert(l.isJS,"Invalid actionName/JS combo"),function(t,r,n,i){var a=i.firstStatement,o=i.selection,s=i.typeParameters,c=e.factory.createJSDocTypedefTag(e.factory.createIdentifier("typedef"),e.factory.createJSDocTypeExpression(o),e.factory.createIdentifier(n)),l=[];e.forEach(s,(function(t){var r=e.getEffectiveConstraintOfTypeParameter(t),n=e.factory.createTypeParameterDeclaration(t.name),i=e.factory.createJSDocTemplateTag(e.factory.createIdentifier("template"),r&&e.cast(r,e.isJSDocTypeExpression),[n]);l.push(i)})),t.insertNodeBefore(r,a,e.factory.createJSDocComment(void 0,e.factory.createNodeArray(e.concatenate(l,[c]))),!0),t.replaceNode(r,o,e.factory.createTypeReferenceNode(n,s.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)}))))}(t,c,u,l);case i.name:return e.Debug.assert(!l.isJS&&!!l.typeElements,"Invalid actionName/JS combo"),function(t,r,n,i){var a,o=i.firstStatement,s=i.selection,c=i.typeParameters,l=i.typeElements,u=e.factory.createInterfaceDeclaration(void 0,void 0,n,c,void 0,l);e.setTextRange(u,null===(a=l[0])||void 0===a?void 0:a.parent),t.insertNodeBefore(r,o,e.ignoreSourceNewlines(u),!0),t.replaceNode(r,s,e.factory.createTypeReferenceNode(n,c.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)}))),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.ExcludeWhitespace})}(t,c,u,l);default:e.Debug.fail("Unexpected action name")}})),p=c.fileName;return{edits:d,renameFilename:p,renameLocation:e.getRenameLocation(d,p,u,!1)}}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r,n,i;t.generateGetAccessorAndSetAccessor||(t.generateGetAccessorAndSetAccessor={}),r="Generate 'get' and 'set' accessors",n=e.Diagnostics.Generate_get_and_set_accessors.message,i={name:r,description:n,kind:"refactor.rewrite.property.generateAccessors"},t.registerRefactor(r,{kinds:[i.kind],getEditsForAction:function(r,n){if(r.endPosition){var i=e.codefix.getAccessorConvertiblePropertyAtPosition(r.file,r.program,r.startPosition,r.endPosition);e.Debug.assert(i&&!t.isRefactorErrorInfo(i),"Expected applicable refactor info");var a=e.codefix.generateAccessorFromProperty(r.file,r.program,r.startPosition,r.endPosition,r,n);if(a){var o=r.file.fileName,s=i.renameAccessor?i.accessorName:i.fieldName;return{renameFilename:o,renameLocation:(e.isIdentifier(s)?0:-1)+e.getRenameLocation(a,o,s.text,e.isParameter(i.declaration)),edits:a}}}},getAvailableActions:function(o){if(!o.endPosition)return e.emptyArray;var s=e.codefix.getAccessorConvertiblePropertyAtPosition(o.file,o.program,o.startPosition,o.endPosition,"invoked"===o.triggerReason);return s?t.isRefactorErrorInfo(s)?o.preferences.provideRefactorNotApplicableReason?[{name:r,description:n,actions:[a(a({},i),{notApplicableReason:s.error})]}]:e.emptyArray:[{name:r,description:n,actions:[i]}]:e.emptyArray}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(e){e.isRefactorErrorInfo=function(e){return void 0!==e.error},e.refactorKindBeginsWith=function(e,t){return!t||e.substr(0,t.length)===t}}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r="Move to a new file",n=e.getLocaleSpecificMessage(e.Diagnostics.Move_to_a_new_file),o={name:r,description:n,kind:"refactor.move.newFile"};function s(t){var r=function(t){var r=t.file,n=e.createTextRangeFromSpan(e.getRefactorContextSpan(t)),i=r.statements,a=e.findIndex(i,(function(e){return e.end>n.pos}));if(-1!==a){var o=i[a];if(e.isNamedDeclaration(o)&&o.name&&e.rangeContainsRange(o.name,n))return{toMove:[i[a]],afterLast:i[a+1]};if(!(n.pos>o.getStart(r))){var s=e.findIndex(i,(function(e){return e.end>n.end}),a);if(-1===s||!(0===s||i[s].getStart(r)<n.end))return{toMove:i.slice(a,-1===s?i.length:s),afterLast:-1===s?void 0:i[s]}}}}(t);if(void 0!==r){var n=[],i=[],a=r.toMove,o=r.afterLast;return e.getRangesWhere(a,c,(function(e,t){for(var r=e;r<t;r++)n.push(a[r]);i.push({first:a[e],afterLast:o})})),0===n.length?void 0:{all:n,ranges:i}}}function c(t){return!function(t){switch(t.kind){case 264:return!0;case 263:return!e.hasSyntacticModifier(t,1);case 234:return t.declarationList.declarations.every((function(t){return!!t.initializer&&e.isRequireCall(t.initializer,!0)}));default:return!1}}(t)&&!e.isPrologueDirective(t)}function l(e,t,r){for(var n=0,i=t;n<i.length;n++){var a=i[n],o=a.first,s=a.afterLast;r.deleteNodeRangeExcludingEnd(e,o,s)}}function u(e){return 264===e.kind?e.moduleSpecifier:263===e.kind?e.moduleReference.expression:e.initializer.arguments[0]}function d(t,r){if(e.isImportDeclaration(t))e.isStringLiteral(t.moduleSpecifier)&&r(t);else if(e.isImportEqualsDeclaration(t))e.isExternalModuleReference(t.moduleReference)&&e.isStringLiteralLike(t.moduleReference.expression)&&r(t);else if(e.isVariableStatement(t))for(var n=0,i=t.declarationList.declarations;n<i.length;n++){var a=i[n];a.initializer&&e.isRequireCall(a.initializer,!0)&&r(a)}}function p(t,r,n,i,a){if(n=e.ensurePathIsNonModuleName(n),i){var o=r.map((function(t){return e.factory.createImportSpecifier(void 0,e.factory.createIdentifier(t))}));return e.makeImportIfNecessary(t,o,n,a)}e.Debug.assert(!t,"No default import should exist");var s=r.map((function(t){return e.factory.createBindingElement(void 0,void 0,t)}));return s.length?f(e.factory.createObjectBindingPattern(s),void 0,m(e.factory.createStringLiteral(n))):void 0}function f(t,r,n,i){return void 0===i&&(i=2),e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(t,void 0,r,n)],i))}function m(t){return e.factory.createCallExpression(e.factory.createIdentifier("require"),void 0,[t])}function g(t,r,n,i){switch(r.kind){case 264:!function(t,r,n,i){if(!r.importClause)return;var a=r.importClause,o=a.name,s=a.namedBindings,c=!o||i(o),l=!s||(266===s.kind?i(s.name):0!==s.elements.length&&s.elements.every((function(e){return i(e.name)})));if(c&&l)n.delete(t,r);else if(o&&c&&n.delete(t,o),s)if(l)n.replaceNode(t,r.importClause,e.factory.updateImportClause(r.importClause,r.importClause.isTypeOnly,o,void 0));else if(267===s.kind)for(var u=0,d=s.elements;u<d.length;u++){var p=d[u];i(p.name)&&n.delete(t,p)}}(t,r,n,i);break;case 263:i(r.name)&&n.delete(t,r);break;case 251:!function(t,r,n,i){var a=r.name;switch(a.kind){case 78:i(a)&&n.delete(t,a);break;case 198:break;case 197:if(a.elements.every((function(t){return e.isIdentifier(t.name)&&i(t.name)})))n.delete(t,e.isVariableDeclarationList(r.parent)&&1===r.parent.declarations.length?r.parent.parent:r);else for(var o=0,s=a.elements;o<s.length;o++){var c=s[o];e.isIdentifier(c.name)&&i(c.name)&&n.delete(t,c.name)}}}(t,r,n,i);break;default:e.Debug.assertNever(r,"Unexpected import decl kind "+r.kind)}}function _(t){switch(t.kind){case 263:case 268:case 265:case 266:return!0;case 251:return h(t);case 199:return e.isVariableDeclaration(t.parent.parent)&&h(t.parent.parent);default:return!1}}function h(t){return e.isSourceFile(t.parent.parent.parent)&&!!t.initializer&&e.isRequireCall(t.initializer,!0)}function y(t,r,n){switch(t.kind){case 264:var i=t.importClause;if(!i)return;var a=i.name&&n(i.name)?i.name:void 0,o=i.namedBindings&&function(t,r){if(266===t.kind)return r(t.name)?t:void 0;var n=t.elements.filter((function(e){return r(e.name)}));return n.length?e.factory.createNamedImports(n):void 0}(i.namedBindings,n);return a||o?e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,a,o),r):void 0;case 263:return n(t.name)?t:void 0;case 251:var s=function(t,r){switch(t.kind){case 78:return r(t)?t:void 0;case 198:return t;case 197:var n=t.elements.filter((function(t){return t.propertyName||!e.isIdentifier(t.name)||r(t.name)}));return n.length?e.factory.createObjectBindingPattern(n):void 0}}(t.name,n);return s?f(s,t.type,m(r),t.parent.flags):void 0;default:return e.Debug.assertNever(t,"Unexpected import kind "+t.kind)}}function v(t,r,n){t.forEachChild((function t(i){if(e.isIdentifier(i)&&!e.isDeclarationName(i)){var a=r.getSymbolAtLocation(i);a&&n(a)}else i.forEachChild(t)}))}t.registerRefactor(r,{kinds:[o.kind],getAvailableActions:function(t){var i=s(t);return t.preferences.allowTextChangesInNewFiles&&i?[{name:r,description:n,actions:[o]}]:t.preferences.provideRefactorNotApplicableReason?[{name:r,description:n,actions:[a(a({},o),{notApplicableReason:e.getLocaleSpecificMessage(e.Diagnostics.Selection_is_not_a_valid_statement_or_statements)})]}]:e.emptyArray},getEditsForAction:function(t,n){e.Debug.assert(n===r,"Wrong refactor invoked");var a=e.Debug.checkDefined(s(t));return{edits:e.textChanges.ChangeTracker.with(t,(function(r){return n=t.file,o=t.program,s=a,c=r,f=t.host,h=t.preferences,D=o.getTypeChecker(),F=function(t,r,n){var i=new b,a=new b,o=new b,s=e.find(r,(function(e){return!!(2&e.transformFlags)})),c=E(s);c&&a.add(c);for(var l=0,u=r;l<u.length;l++)S(y=u[l],(function(t){i.add(e.Debug.checkDefined(e.isExpressionStatement(t)?n.getSymbolAtLocation(t.expression.left):t.symbol,"Need a symbol here"))}));for(var d=0,p=r;d<p.length;d++)v(y=p[d],n,(function(e){if(e.declarations)for(var r=0,n=e.declarations;r<n.length;r++){var s=n[r];_(s)?a.add(e):k(s)&&x(s)===t&&!i.has(e)&&o.add(e)}}));for(var f=a.clone(),m=new b,g=0,h=t.statements;g<h.length;g++){var y=h[g];e.contains(r,y)||(c&&2&y.transformFlags&&f.delete(c),v(y,n,(function(e){i.has(e)&&m.add(e),f.delete(e)})))}return{movedSymbols:i,newFileImportsFromOldFile:o,oldFileImportsFromNewFile:m,oldImportsNeededByNewFile:a,unusedImportsFromOldFile:f};function E(t){if(void 0!==t){var r=n.getJsxNamespace(t),i=n.resolveName(r,t,1920,!0);return i&&e.some(i.declarations,_)?i:void 0}}}(n,s.all,D),O=e.getDirectoryPath(n.fileName),R=e.extensionFromPath(n.fileName),M=function(t,r,n,i){for(var a=t,o=1;;o++){var s=e.combinePaths(n,a+r);if(!i.fileExists(s))return a;a=t+"."+o}}(F.movedSymbols.forEachEntry(e.symbolNameNoDefault)||"newFile",R,O,f),L=M+R,c.createNewFile(n,e.combinePaths(O,L),function(t,r,n,a,o,s,c){var f=o.getTypeChecker(),_=e.takeWhile(t.statements,e.isPrologueDirective);if(!t.externalModuleIndicator&&!t.commonJsModuleIndicator)return l(t,a.ranges,n),i(i([],_),a.all);var h=!!t.externalModuleIndicator,v=e.getQuotePreference(t,c),b=function(t,r,n,i){var a,o=[];return t.forEach((function(t){"default"===t.escapedName?a=e.factory.createIdentifier(e.symbolNameNoDefault(t)):o.push(t.name)})),p(a,o,r,n,i)}(r.oldFileImportsFromNewFile,s,h,v);b&&e.insertImports(n,t,b,!0),function(t,r,n,i,a){for(var o=0,s=t.statements;o<s.length;o++){var c=s[o];e.contains(r,c)||d(c,(function(e){return g(t,e,n,(function(e){return i.has(a.getSymbolAtLocation(e))}))}))}}(t,a.all,n,r.unusedImportsFromOldFile,f),l(t,a.ranges,n),function(t,r,n,i,a){for(var o=r.getTypeChecker(),s=function(r){if(r===n)return"continue";for(var s=function(s){d(s,(function(c){if(o.getSymbolAtLocation(u(c))===n.symbol){var l=function(t){var r=e.isBindingElement(t.parent)?e.getPropertySymbolFromBindingElement(o,t.parent):e.skipAlias(o.getSymbolAtLocation(t),o);return!!r&&i.has(r)};g(r,c,t,l);var d=e.combinePaths(e.getDirectoryPath(u(c).text),a),p=y(c,e.factory.createStringLiteral(d),l);p&&t.insertNodeAfter(r,s,p);var f=function(t){switch(t.kind){case 264:return t.importClause&&t.importClause.namedBindings&&266===t.importClause.namedBindings.kind?t.importClause.namedBindings.name:void 0;case 263:return t.name;case 251:return e.tryCast(t.name,e.isIdentifier);default:return e.Debug.assertNever(t,"Unexpected node kind "+t.kind)}}(c);f&&function(t,r,n,i,a,o,s,c){var l=e.codefix.moduleSpecifierToValidIdentifier(a,99),u=!1,d=[];if(e.FindAllReferences.Core.eachSymbolReferenceInFile(s,n,r,(function(t){e.isPropertyAccessExpression(t.parent)&&(u=u||!!n.resolveName(l,t,67108863,!0),i.has(n.getSymbolAtLocation(t.parent.name))&&d.push(t))})),d.length){for(var p=u?e.getUniqueName(l,r):l,f=0,g=d;f<g.length;f++){var _=g[f];t.replaceNode(r,_,e.factory.createIdentifier(p))}t.insertNodeAfter(r,c,function(t,r,n){var i=e.factory.createIdentifier(r),a=e.factory.createStringLiteral(n);switch(t.kind){case 264:return e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamespaceImport(i)),a);case 263:return e.factory.createImportEqualsDeclaration(void 0,void 0,!1,i,e.factory.createExternalModuleReference(a));case 251:return e.factory.createVariableDeclaration(i,void 0,void 0,m(a));default:return e.Debug.assertNever(t,"Unexpected node kind "+t.kind)}}(c,a,o))}}(t,r,o,i,a,d,f,c)}}))},c=0,l=r.statements;c<l.length;c++)s(l[c])},c=0,l=r.getSourceFiles();c<l.length;c++)s(l[c])}(n,o,t,r.movedSymbols,s);var x=function(t,r,n,i,a,o,s){for(var c,l=[],f=0,m=t.statements;f<m.length;f++)d(m[f],(function(t){e.append(l,y(t,u(t),(function(e){return r.has(a.getSymbolAtLocation(e))})))}));var g=[],_=e.nodeSeenTracker();return n.forEach((function(r){for(var n=0,a=r.declarations;n<a.length;n++){var s=a[n];if(k(s)){var l=w(s);if(l){var u=T(s);_(u)&&C(t,u,i,o),e.hasSyntacticModifier(s,512)?c=l:g.push(l.text)}}}})),e.append(l,p(c,g,e.removeFileExtension(e.getBaseFileName(t.fileName)),o,s)),l}(t,r.oldImportsNeededByNewFile,r.newFileImportsFromOldFile,n,f,h,v),D=function(t,r,n,a){return e.flatMap(r,(function(r){if(s=r,e.Debug.assert(e.isSourceFile(s.parent),"Node parent should be a SourceFile"),(E(s)||e.isVariableStatement(s))&&!A(t,r,a)&&S(r,(function(t){return n.has(e.Debug.checkDefined(t.symbol))}))){var o=function(e,t){return t?[N(e)]:function(e){return i([e],P(e).map(I))}(e)}(r,a);if(o)return o}var s;return r}))}(t,a.all,r.oldFileImportsFromNewFile,h);return x.length&&D.length?i(i(i(i([],_),x),[4]),D):i(i(i([],_),x),D)}(n,F,c,s,o,M,h)),void function(t,r,n,i,a){var o=t.getCompilerOptions().configFile;if(o){var s=e.normalizePath(e.combinePaths(n,"..",i)),c=e.getRelativePathFromFile(o.fileName,s,a),l=o.statements[0]&&e.tryCast(o.statements[0].expression,e.isObjectLiteralExpression),u=l&&e.find(l.properties,(function(t){return e.isPropertyAssignment(t)&&e.isStringLiteral(t.name)&&"files"===t.name.text}));u&&e.isArrayLiteralExpression(u.initializer)&&r.insertNodeInListAfter(o,e.last(u.initializer.elements),e.factory.createStringLiteral(c),u.initializer.elements)}}(o,c,n.fileName,L,e.hostGetCanonicalFileName(f));var n,o,s,c,f,h,D,F,O,R,M,L})),renameFilename:void 0,renameLocation:void 0}}});var b=function(){function t(){this.map=new e.Map}return t.prototype.add=function(t){this.map.set(String(e.getSymbolId(t)),t)},t.prototype.has=function(t){return this.map.has(String(e.getSymbolId(t)))},t.prototype.delete=function(t){this.map.delete(String(e.getSymbolId(t)))},t.prototype.forEach=function(e){this.map.forEach(e)},t.prototype.forEachEntry=function(t){return e.forEachEntry(this.map,t)},t.prototype.clone=function(){var r=new t;return e.copyEntries(this.map,r.map),r},t}();function k(t){return E(t)&&e.isSourceFile(t.parent)||e.isVariableDeclaration(t)&&e.isSourceFile(t.parent.parent.parent)}function x(t){return e.isVariableDeclaration(t)?t.parent.parent.parent:t.parent}function E(e){switch(e.kind){case 253:case 254:case 259:case 258:case 257:case 256:case 263:return!0;default:return!1}}function S(t,r){switch(t.kind){case 253:case 254:case 259:case 258:case 257:case 256:case 263:return r(t);case 234:return e.firstDefined(t.declarationList.declarations,(function(e){return D(e.name,r)}));case 235:var n=t.expression;return e.isBinaryExpression(n)&&1===e.getAssignmentDeclarationKind(n)?r(t):void 0}}function D(t,r){switch(t.kind){case 78:return r(e.cast(t.parent,(function(t){return e.isVariableDeclaration(t)||e.isBindingElement(t)})));case 198:case 197:return e.firstDefined(t.elements,(function(t){return e.isOmittedExpression(t)?void 0:D(t.name,r)}));default:return e.Debug.assertNever(t,"Unexpected name kind "+t.kind)}}function w(t){return e.isExpressionStatement(t)?e.tryCast(t.expression.left.name,e.isIdentifier):e.tryCast(t.name,e.isIdentifier)}function T(t){switch(t.kind){case 251:return t.parent.parent;case 199:return T(e.cast(t.parent.parent,(function(t){return e.isVariableDeclaration(t)||e.isBindingElement(t)})));default:return t}}function C(t,r,n,i){if(!A(t,r,i))if(i)e.isExpressionStatement(r)||n.insertExportModifier(t,r);else{var a=P(r);0!==a.length&&n.insertNodesAfter(t,r,a.map(I))}}function A(t,r,n){return n?!e.isExpressionStatement(r)&&e.hasSyntacticModifier(r,1):P(r).some((function(r){return t.symbol.exports.has(e.escapeLeadingUnderscores(r))}))}function N(t){var r=e.concatenate([e.factory.createModifier(93)],t.modifiers);switch(t.kind){case 253:return e.factory.updateFunctionDeclaration(t,t.decorators,r,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body);case 254:return e.factory.updateClassDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members);case 234:return e.factory.updateVariableStatement(t,r,t.declarationList);case 259:return e.factory.updateModuleDeclaration(t,t.decorators,r,t.name,t.body);case 258:return e.factory.updateEnumDeclaration(t,t.decorators,r,t.name,t.members);case 257:return e.factory.updateTypeAliasDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.type);case 256:return e.factory.updateInterfaceDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members);case 263:return e.factory.updateImportEqualsDeclaration(t,t.decorators,r,t.isTypeOnly,t.name,t.moduleReference);case 235:return e.Debug.fail();default:return e.Debug.assertNever(t,"Unexpected declaration kind "+t.kind)}}function P(t){switch(t.kind){case 253:case 254:return[t.name.text];case 234:return e.mapDefined(t.declarationList.declarations,(function(t){return e.isIdentifier(t.name)?t.name.text:void 0}));case 259:case 258:case 257:case 256:case 263:return e.emptyArray;case 235:return e.Debug.fail("Can't export an ExpressionStatement");default:return e.Debug.assertNever(t,"Unexpected decl kind "+t.kind)}}function I(t){return e.factory.createExpressionStatement(e.factory.createBinaryExpression(e.factory.createPropertyAccessExpression(e.factory.createIdentifier("exports"),e.factory.createIdentifier(t)),62,e.factory.createIdentifier(t)))}}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(){var r="Add or remove braces in an arrow function",n=e.Diagnostics.Add_or_remove_braces_in_an_arrow_function.message,i={name:"Add braces to arrow function",description:e.Diagnostics.Add_braces_to_arrow_function.message,kind:"refactor.rewrite.arrow.braces.add"},o={name:"Remove braces from arrow function",description:e.Diagnostics.Remove_braces_from_arrow_function.message,kind:"refactor.rewrite.arrow.braces.remove"};function s(r,n,a,s){void 0===a&&(a=!0);var c=e.getTokenAtPosition(r,n),l=e.getContainingFunction(c);if(!l)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_a_containing_arrow_function)};if(!e.isArrowFunction(l))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Containing_function_is_not_an_arrow_function)};if(e.rangeContainsRange(l,c)&&(!e.rangeContainsRange(l.body,c)||a)){if(t.refactorKindBeginsWith(i.kind,s)&&e.isExpression(l.body))return{func:l,addBraces:!0,expression:l.body};if(t.refactorKindBeginsWith(o.kind,s)&&e.isBlock(l.body)&&1===l.body.statements.length){var u=e.first(l.body.statements);if(e.isReturnStatement(u))return{func:l,addBraces:!1,expression:u.expression,returnStatement:u}}}}t.registerRefactor(r,{kinds:[o.kind],getEditsForAction:function(r,n){var a=r.file,c=r.startPosition,l=s(a,c);e.Debug.assert(l&&!t.isRefactorErrorInfo(l),"Expected applicable refactor info");var u,d=l.expression,p=l.returnStatement,f=l.func;if(n===i.name){var m=e.factory.createReturnStatement(d);u=e.factory.createBlock([m],!0),e.suppressLeadingAndTrailingTrivia(u),e.copyLeadingComments(d,m,a,3,!0)}else if(n===o.name&&p){var g=d||e.factory.createVoidZero();u=e.needsParentheses(g)?e.factory.createParenthesizedExpression(g):g,e.suppressLeadingAndTrailingTrivia(u),e.copyTrailingAsLeadingComments(p,u,a,3,!1),e.copyLeadingComments(p,u,a,3,!1),e.copyTrailingComments(p,u,a,3,!1)}else e.Debug.fail("invalid action");var _=e.textChanges.ChangeTracker.with(r,(function(e){e.replaceNode(a,f.body,u)}));return{renameFilename:void 0,renameLocation:void 0,edits:_}},getAvailableActions:function(c){var l=c.file,u=c.startPosition,d=c.triggerReason,p=s(l,u,"invoked"===d);if(!p)return e.emptyArray;if(!t.isRefactorErrorInfo(p))return[{name:r,description:n,actions:[p.addBraces?i:o]}];if(c.preferences.provideRefactorNotApplicableReason)return[{name:r,description:n,actions:[a(a({},i),{notApplicableReason:p.error}),a(a({},o),{notApplicableReason:p.error})]}];return e.emptyArray}})}(t.addOrRemoveBracesToArrowFunction||(t.addOrRemoveBracesToArrowFunction={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(){var r="Convert parameters to destructured object",n=2,a=e.getLocaleSpecificMessage(e.Diagnostics.Convert_parameters_to_destructured_object),o={name:r,description:a,kind:"refactor.rewrite.parameters.toDestructured"};function s(t,r){var n=e.getContainingObjectLiteralElement(t);if(n){var i=r.getContextualTypeForObjectLiteralElement(n),a=null==i?void 0:i.getSymbol();if(a&&!(6&e.getCheckFlags(a)))return a}}function c(t){var r=t.node;return e.isImportSpecifier(r.parent)||e.isImportClause(r.parent)||e.isImportEqualsDeclaration(r.parent)||e.isNamespaceImport(r.parent)||e.isExportSpecifier(r.parent)||e.isExportAssignment(r.parent)?r:void 0}function l(t){if(e.isDeclaration(t.node.parent))return t.node}function u(t){if(t.node.parent){var r=t.node,n=r.parent;switch(n.kind){case 204:case 205:var i=e.tryCast(n,e.isCallOrNewExpression);if(i&&i.expression===r)return i;break;case 202:var a=e.tryCast(n,e.isPropertyAccessExpression);if(a&&a.parent&&a.name===r){var o=e.tryCast(a.parent,e.isCallOrNewExpression);if(o&&o.expression===a)return o}break;case 203:var s=e.tryCast(n,e.isElementAccessExpression);if(s&&s.parent&&s.argumentExpression===r){var c=e.tryCast(s.parent,e.isCallOrNewExpression);if(c&&c.expression===s)return c}}}}function d(t){if(t.node.parent){var r=t.node,n=r.parent;switch(n.kind){case 202:var i=e.tryCast(n,e.isPropertyAccessExpression);if(i&&i.expression===r)return i;break;case 203:var a=e.tryCast(n,e.isElementAccessExpression);if(a&&a.expression===r)return a}}}function p(t){var r=t.node;if(2===e.getMeaningFromLocation(r)||e.isExpressionWithTypeArgumentsInClassExtendsClause(r.parent))return r}function f(t,r,i){var a=e.getTouchingToken(t,r),o=e.getContainingFunctionDeclaration(a);if(!function(t){var r=e.findAncestor(t,e.isJSDocNode);if(r){var n=e.findAncestor(r,(function(t){return!e.isJSDocNode(t)}));return!!n&&e.isFunctionLikeDeclaration(n)}return!1}(a))return!(o&&function(t,r){if(!function(t,r){return function(e){if(y(e))return e.length-1;return e.length}(t)>=n&&e.every(t,(function(t){return function(t,r){if(e.isRestParameter(t)){var n=r.getTypeAtLocation(t);if(!r.isArrayType(n)&&!r.isTupleType(n))return!1}return!t.modifiers&&!t.decorators&&e.isIdentifier(t.name)}(t,r)}))}(t.parameters,r))return!1;switch(t.kind){case 253:return _(t)&&g(t,r);case 166:if(e.isObjectLiteralExpression(t.parent)){var i=s(t.name,r);return 1===(null==i?void 0:i.declarations.length)&&g(t,r)}return g(t,r);case 167:return e.isClassDeclaration(t.parent)?_(t.parent)&&g(t,r):h(t.parent.parent)&&g(t,r);case 209:case 210:return h(t.parent)}return!1}(o,i)&&e.rangeContainsRange(o,a))||o.body&&e.rangeContainsRange(o.body,a)?void 0:o}function m(t){return e.isMethodSignature(t)&&(e.isInterfaceDeclaration(t.parent)||e.isTypeLiteralNode(t.parent))}function g(e,t){return!!e.body&&!t.isImplementationOfOverload(e)}function _(t){return!!t.name||!!e.findModifier(t,88)}function h(t){return e.isVariableDeclaration(t)&&e.isVarConst(t)&&e.isIdentifier(t.name)&&!t.type}function y(t){return t.length>0&&e.isThis(t[0].name)}function v(t){return y(t)&&(t=e.factory.createNodeArray(t.slice(1),t.hasTrailingComma)),t}function b(t,r){var n=v(t.parameters),i=e.isRestParameter(e.last(n)),a=i?r.slice(0,n.length-1):r,o=e.map(a,(function(t,r){var i,a,o=x(n[r]),s=(i=o,a=t,e.isIdentifier(a)&&e.getTextOfIdentifierOrLiteral(a)===i?e.factory.createShorthandPropertyAssignment(i):e.factory.createPropertyAssignment(i,a));return e.suppressLeadingAndTrailingTrivia(s.name),e.isPropertyAssignment(s)&&e.suppressLeadingAndTrailingTrivia(s.initializer),e.copyComments(t,s),s}));if(i&&r.length>=n.length){var s=r.slice(n.length-1),c=e.factory.createPropertyAssignment(x(e.last(n)),e.factory.createArrayLiteralExpression(s));o.push(c)}return e.factory.createObjectLiteralExpression(o,!1)}function k(t,r,n){var i,a,o,s=r.getTypeChecker(),c=v(t.parameters),l=e.map(c,(function(t){var r=e.factory.createBindingElement(void 0,void 0,x(t),e.isRestParameter(t)&&_(t)?e.factory.createArrayLiteralExpression():t.initializer);e.suppressLeadingAndTrailingTrivia(r),t.initializer&&r.initializer&&e.copyComments(t.initializer,r.initializer);return r})),u=e.factory.createObjectBindingPattern(l),d=(i=c,a=e.map(i,g),e.addEmitFlags(e.factory.createTypeLiteralNode(a),1));e.every(c,_)&&(o=e.factory.createObjectLiteralExpression());var p=e.factory.createParameterDeclaration(void 0,void 0,void 0,u,void 0,d,o);if(y(t.parameters)){var f=t.parameters[0],m=e.factory.createParameterDeclaration(void 0,void 0,void 0,f.name,void 0,f.type);return e.suppressLeadingAndTrailingTrivia(m.name),e.copyComments(f.name,m.name),f.type&&(e.suppressLeadingAndTrailingTrivia(m.type),e.copyComments(f.type,m.type)),e.factory.createNodeArray([m,p])}return e.factory.createNodeArray([p]);function g(t){var i,a,o=t.type;o||!t.initializer&&!e.isRestParameter(t)||(i=t,a=s.getTypeAtLocation(i),o=e.getTypeNodeIfAccessible(a,i,r,n));var c=e.factory.createPropertySignature(void 0,x(t),_(t)?e.factory.createToken(57):t.questionToken,o);return e.suppressLeadingAndTrailingTrivia(c),e.copyComments(t.name,c.name),t.type&&c.type&&e.copyComments(t.type,c.type),c}function _(t){if(e.isRestParameter(t)){var r=s.getTypeAtLocation(t);return!s.isTupleType(r)}return s.isOptionalParameter(t)}}function x(t){return e.getTextOfIdentifierOrLiteral(t.name)}t.registerRefactor(r,{kinds:[o.kind],getEditsForAction:function(t,n){e.Debug.assert(n===r,"Unexpected action name");var a=t.file,o=t.startPosition,g=t.program,_=t.cancellationToken,h=t.host,y=f(a,o,g.getTypeChecker());if(!y||!_)return;var v=function(t,r,n){var a=function(t){switch(t.kind){case 253:return t.name?[t.name]:[e.Debug.checkDefined(e.findModifier(t,88),"Nameless function declaration should be a default export")];case 166:return[t.name];case 167:var r=e.Debug.checkDefined(e.findChildOfKind(t,133,t.getSourceFile()),"Constructor declaration should have constructor keyword");return 223===t.parent.kind?[t.parent.parent.name,r]:[r];case 210:return[t.parent.name];case 209:return t.name?[t.name,t.parent.name]:[t.parent.name];default:return e.Debug.assertNever(t,"Unexpected function declaration kind "+t.kind)}}(t),o=e.isConstructorDeclaration(t)?function(t){switch(t.parent.kind){case 254:var r=t.parent;return r.name?[r.name]:[e.Debug.checkDefined(e.findModifier(r,88),"Nameless class declaration should be a default export")];case 223:var n=t.parent,i=t.parent.parent,a=n.name;return a?[a,i.name]:[i.name]}}(t):[],f=e.deduplicate(i(i([],a),o),e.equateValues),g=r.getTypeChecker(),_=e.flatMap(f,(function(t){return e.FindAllReferences.getReferenceEntriesForNode(-1,t,r,r.getSourceFiles(),n)})),h=y(_);e.every(h.declarations,(function(t){return e.contains(f,t)}))||(h.valid=!1);return h;function y(r){for(var n={accessExpressions:[],typeUsages:[]},i={functionCalls:[],declarations:[],classReferences:n,valid:!0},f=e.map(a,v),_=e.map(o,v),h=e.isConstructorDeclaration(t),y=e.map(a,(function(e){return s(e,g)})),b=0,k=r;b<k.length;b++){var x=k[b];if(0!==x.kind){if(e.contains(y,v(x.node))){if(m(x.node.parent)){i.signature=x.node.parent;continue}if(S=u(x)){i.functionCalls.push(S);continue}}var E=s(x.node,g);if(E&&e.contains(y,E))if(D=l(x)){i.declarations.push(D);continue}if(e.contains(f,v(x.node))||e.isNewExpressionTarget(x.node)){var S;if(c(x))continue;if(D=l(x)){i.declarations.push(D);continue}if(S=u(x)){i.functionCalls.push(S);continue}}if(h&&e.contains(_,v(x.node))){var D;if(c(x))continue;if(D=l(x)){i.declarations.push(D);continue}var w=d(x);if(w){n.accessExpressions.push(w);continue}if(e.isClassDeclaration(t.parent)){var T=p(x);if(T){n.typeUsages.push(T);continue}}}i.valid=!1}else i.valid=!1}return i}function v(t){var r=g.getSymbolAtLocation(t);return r&&e.getSymbolTarget(r,g)}}(y,g,_);if(v.valid){var x=e.textChanges.ChangeTracker.with(t,(function(t){return function(t,r,n,i,a,o){var s=o.signature,c=e.map(k(a,r,n),(function(t){return e.getSynthesizedDeepClone(t)}));if(s){m(s,e.map(k(s,r,n),(function(t){return e.getSynthesizedDeepClone(t)})))}m(a,c);for(var l=e.sortAndDeduplicate(o.functionCalls,(function(t,r){return e.compareValues(t.pos,r.pos)})),u=0,d=l;u<d.length;u++){var p=d[u];if(p.arguments&&p.arguments.length){var f=e.getSynthesizedDeepClone(b(a,p.arguments),!0);i.replaceNodeRange(e.getSourceFileOfNode(p),e.first(p.arguments),e.last(p.arguments),f,{leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Include})}}function m(r,n){i.replaceNodeRangeWithNodes(t,e.first(r.parameters),e.last(r.parameters),n,{joiner:", ",indentation:0,leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Include})}}(a,g,h,t,y,v)}));return{renameFilename:void 0,renameLocation:void 0,edits:x}}return{edits:[]}},getAvailableActions:function(t){var n=t.file,i=t.startPosition;return e.isSourceFileJS(n)?e.emptyArray:f(n,i,t.program.getTypeChecker())?[{name:r,description:a,actions:[o]}]:e.emptyArray}})}(t.convertParamsToDestructuredObject||(t.convertParamsToDestructuredObject={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(){var r="Convert to template string",n=e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_template_string),i={name:r,description:n,kind:"refactor.rewrite.string"};function o(t,r){var n=e.getTokenAtPosition(t,r),i=c(n);return!l(i)&&e.isParenthesizedExpression(i.parent)&&e.isBinaryExpression(i.parent.parent)?i.parent.parent:n}function s(t,r){var n=c(r),i=t.file,a=function(t,r){var n=t.nodes,i=t.operators,a=d(i,r),o=p(n,r,a),s=f(0,n),c=s[0],l=s[1],u=s[2];if(c===n.length){var g=e.factory.createNoSubstitutionTemplateLiteral(l);return o(u,g),g}var _=[],h=e.factory.createTemplateHead(l);o(u,h);for(var y,v=function(t){var r=function(t){e.isParenthesizedExpression(t)&&(m(t),t=t.expression);return t}(n[t]);a(t,r);var i=f(t+1,n),s=i[0],c=i[1],l=i[2],u=(t=s-1)===n.length-1;if(e.isTemplateExpression(r)){var d=e.map(r.templateSpans,(function(t,n){m(t);var i=r.templateSpans[n+1],a=t.literal.text+(i?"":c);return e.factory.createTemplateSpan(t.expression,u?e.factory.createTemplateTail(a):e.factory.createTemplateMiddle(a))}));_.push.apply(_,d)}else{var p=u?e.factory.createTemplateTail(c):e.factory.createTemplateMiddle(c);o(l,p),_.push(e.factory.createTemplateSpan(r,p))}y=t},b=c;b<n.length;b++)v(b),b=y;return e.factory.createTemplateExpression(h,_)}(u(n),i),o=e.getTrailingCommentRanges(i.text,n.end);if(o){var s=o[o.length-1],l={pos:o[0].pos,end:s.end};return e.textChanges.ChangeTracker.with(t,(function(e){e.deleteRange(i,l),e.replaceNode(i,n,a)}))}return e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(i,n,a)}))}function c(t){return e.findAncestor(t.parent,(function(t){switch(t.kind){case 202:case 203:return!1;case 220:case 218:return!(e.isBinaryExpression(t.parent)&&(r=t.parent,62!==r.operatorToken.kind));default:return"quit"}var r}))||t}function l(e){var t=u(e),r=t.containsString,n=t.areOperatorsValid;return r&&n}function u(t){if(e.isBinaryExpression(t)){var r=u(t.left),n=r.nodes,i=r.operators,a=r.containsString,o=r.areOperatorsValid;if(!a&&!e.isStringLiteral(t.right)&&!e.isTemplateExpression(t.right))return{nodes:[t],operators:[],containsString:!1,areOperatorsValid:!0};var s=39===t.operatorToken.kind,c=o&&s;return n.push(t.right),i.push(t.operatorToken),{nodes:n,operators:i,containsString:!0,areOperatorsValid:c}}return{nodes:[t],operators:[],containsString:e.isStringLiteral(t),areOperatorsValid:!0}}t.registerRefactor(r,{kinds:[i.kind],getEditsForAction:function(t,r){var i=t.file,a=t.startPosition,c=o(i,a);if(r===n)return{edits:s(t,c)};return e.Debug.fail("invalid action")},getAvailableActions:function(t){var s=t.file,u=t.startPosition,d=c(o(s,u)),p={name:r,description:n,actions:[]};if(e.isBinaryExpression(d)&&l(d))return p.actions.push(i),[p];if(t.preferences.provideRefactorNotApplicableReason)return p.actions.push(a(a({},i),{notApplicableReason:e.getLocaleSpecificMessage(e.Diagnostics.Can_only_convert_string_concatenation)})),[p];return e.emptyArray}});var d=function(t,r){return function(n,i){n<t.length&&e.copyTrailingComments(t[n],i,r,3,!1)}},p=function(t,r,n){return function(i,a){for(;i.length>0;){var o=i.shift();e.copyTrailingComments(t[o],a,r,3,!1),n(o,a)}}};function f(t,r){for(var n=[],i="";t<r.length;){var a=r[t];if(!e.isStringLiteralLike(a)){if(e.isTemplateExpression(a)){i+=a.head.text;break}break}i+=a.text,n.push(t),t++}return[t,i,n]}function m(t){var r=t.getSourceFile();e.copyTrailingComments(t,t.expression,r,3,!1),e.copyTrailingAsLeadingComments(t.expression,t.expression,r,3,!1)}}(t.convertStringOrTemplateLiteral||(t.convertStringOrTemplateLiteral={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(){var r="Convert arrow function or function expression",n=e.getLocaleSpecificMessage(e.Diagnostics.Convert_arrow_function_or_function_expression),i={name:"Convert to anonymous function",description:e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},o={name:"Convert to named function",description:e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_named_function),kind:"refactor.rewrite.function.named"},s={name:"Convert to arrow function",description:e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};function c(t){var r=!1;return t.forEachChild((function t(n){e.isThis(n)?r=!0:e.isClassLike(n)||e.isFunctionDeclaration(n)||e.isFunctionExpression(n)||e.forEachChild(n,t)})),r}function l(t,r,n){var i=e.getTokenAtPosition(t,r),a=n.getTypeChecker(),o=function(t,r,n){if(!function(t){return e.isVariableDeclaration(t)||e.isVariableDeclarationList(t)&&1===t.declarations.length}(n))return;var i=(e.isVariableDeclaration(n)?n:e.first(n.declarations)).initializer;if(i&&(e.isArrowFunction(i)||e.isFunctionExpression(i)&&!d(t,r,i)))return i;return}(t,a,i.parent);if(o&&!c(o.body))return{selectedVariableDeclaration:!0,func:o};var s=e.getContainingFunction(i);if(s&&(e.isFunctionExpression(s)||e.isArrowFunction(s))&&!e.rangeContainsRange(s.body,i)&&!c(s.body)){if(e.isFunctionExpression(s)&&d(t,a,s))return;return{selectedVariableDeclaration:!1,func:s}}}function u(t){return e.isExpression(t)?e.factory.createBlock([e.factory.createReturnStatement(t)],!0):t}function d(t,r,n){return!!n.name&&e.FindAllReferences.Core.isSymbolReferencedInFile(n.name,r,t)}t.registerRefactor(r,{kinds:[i.kind,o.kind,s.kind],getEditsForAction:function(t,r){var n=t.file,a=t.startPosition,c=t.program,d=l(n,a,c);if(!d)return;var p=d.func,f=[];switch(r){case i.name:f.push.apply(f,function(t,r){var n=t.file,i=u(r.body),a=e.factory.createFunctionExpression(r.modifiers,r.asteriskToken,void 0,r.typeParameters,r.parameters,r.type,i);return e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(n,r,a)}))}(t,p));break;case o.name:var m=function(t){var r=t.parent;if(!e.isVariableDeclaration(r)||!e.isVariableDeclarationInVariableStatement(r))return;var n=r.parent,i=n.parent;return e.isVariableDeclarationList(n)&&e.isVariableStatement(i)&&e.isIdentifier(r.name)?{variableDeclaration:r,variableDeclarationList:n,statement:i,name:r.name}:void 0}(p);if(!m)return;f.push.apply(f,function(t,r,n){var i=t.file,a=u(r.body),o=n.variableDeclaration,s=n.variableDeclarationList,c=n.statement,l=n.name;e.suppressLeadingTrivia(c);var d=e.factory.createFunctionDeclaration(r.decorators,c.modifiers,r.asteriskToken,l,r.typeParameters,r.parameters,r.type,a);return 1===s.declarations.length?e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(i,c,d)})):e.textChanges.ChangeTracker.with(t,(function(e){e.delete(i,o),e.insertNodeAfter(i,c,d)}))}(t,p,m));break;case s.name:if(!e.isFunctionExpression(p))return;f.push.apply(f,function(t,r){var n,i=t.file,a=r.body.statements,o=a[0];!function(t,r){return 1===t.statements.length&&e.isReturnStatement(r)&&!!r.expression}(r.body,o)?n=r.body:(n=o.expression,e.suppressLeadingAndTrailingTrivia(n),e.copyComments(o,n));var s=e.factory.createArrowFunction(r.modifiers,r.typeParameters,r.parameters,r.type,e.factory.createToken(38),n);return e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(i,r,s)}))}(t,p));break;default:return e.Debug.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:f}},getAvailableActions:function(c){var u=c.file,d=c.startPosition,p=c.program,f=c.kind,m=l(u,d,p);if(!m)return e.emptyArray;var g=m.selectedVariableDeclaration,_=m.func,h=[],y=[];if(t.refactorKindBeginsWith(o.kind,f)){(v=g||e.isArrowFunction(_)&&e.isVariableDeclaration(_.parent)?void 0:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_convert_to_named_function))?y.push(a(a({},o),{notApplicableReason:v})):h.push(o)}if(t.refactorKindBeginsWith(i.kind,f)){(v=!g&&e.isArrowFunction(_)?void 0:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_convert_to_anonymous_function))?y.push(a(a({},i),{notApplicableReason:v})):h.push(i)}if(t.refactorKindBeginsWith(s.kind,f)){var v;(v=e.isFunctionExpression(_)?void 0:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_convert_to_arrow_function))?y.push(a(a({},s),{notApplicableReason:v})):h.push(s)}return[{name:r,description:n,actions:0===h.length&&c.preferences.provideRefactorNotApplicableReason?y:h}]}})}(t.convertArrowFunctionOrFunctionExpression||(t.convertArrowFunctionOrFunctionExpression={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(){var r="Infer function return type",n=e.Diagnostics.Infer_function_return_type.message,i={name:r,description:n,kind:"refactor.rewrite.function.returnType"};function o(r){if(!e.isInJSFile(r.file)&&t.refactorKindBeginsWith(i.kind,r.kind)){var n=e.getTokenAtPosition(r.file,r.startPosition),a=e.findAncestor(n,s);if(!a||!a.body||a.type)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Return_type_must_be_inferred_from_a_function)};var o=r.program.getTypeChecker(),c=function(t,r){if(t.isImplementationOfOverload(r)){var n=t.getTypeAtLocation(r).getCallSignatures();if(n.length>1)return t.getUnionType(e.mapDefined(n,(function(e){return e.getReturnType()})))}var i=t.getSignatureFromDeclaration(r);if(i)return t.getReturnTypeOfSignature(i)}(o,a);if(!c)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_determine_function_return_type)};var l=o.typeToTypeNode(c,a,1);return l?{declaration:a,returnTypeNode:l}:void 0}}function s(e){switch(e.kind){case 253:case 209:case 210:case 166:return!0;default:return!1}}t.registerRefactor(r,{kinds:[i.kind],getEditsForAction:function(r){var n=o(r);if(n&&!t.isRefactorErrorInfo(n)){return{renameFilename:void 0,renameLocation:void 0,edits:e.textChanges.ChangeTracker.with(r,(function(e){return e.tryInsertTypeAnnotation(r.file,n.declaration,n.returnTypeNode)}))}}return},getAvailableActions:function(s){var c=o(s);if(!c)return e.emptyArray;if(!t.isRefactorErrorInfo(c))return[{name:r,description:n,actions:[i]}];if(s.preferences.provideRefactorNotApplicableReason)return[{name:r,description:n,actions:[a(a({},i),{notApplicableReason:c.error})]}];return e.emptyArray}})}(t.inferFunctionReturnType||(t.inferFunctionReturnType={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){function t(t,n,i,a){var o=e.isNodeKind(t)?new r(t,n,i):78===t?new u(78,n,i):79===t?new d(79,n,i):new c(t,n,i);return o.parent=a,o.flags=1099100160&a.flags,o}e.servicesVersion="0.8";var r=function(){function r(e,t,r){this.pos=t,this.end=r,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.kind=e}return r.prototype.assertHasRealPosition=function(t){e.Debug.assert(!e.positionIsSynthesized(this.pos)&&!e.positionIsSynthesized(this.end),t||"Node must have a real position for this operation")},r.prototype.getSourceFile=function(){return e.getSourceFileOfNode(this)},r.prototype.getStart=function(t,r){return this.assertHasRealPosition(),e.getTokenPosOfNode(this,t,r)},r.prototype.getFullStart=function(){return this.assertHasRealPosition(),this.pos},r.prototype.getEnd=function(){return this.assertHasRealPosition(),this.end},r.prototype.getWidth=function(e){return this.assertHasRealPosition(),this.getEnd()-this.getStart(e)},r.prototype.getFullWidth=function(){return this.assertHasRealPosition(),this.end-this.pos},r.prototype.getLeadingTriviaWidth=function(e){return this.assertHasRealPosition(),this.getStart(e)-this.pos},r.prototype.getFullText=function(e){return this.assertHasRealPosition(),(e||this.getSourceFile()).text.substring(this.pos,this.end)},r.prototype.getText=function(e){return this.assertHasRealPosition(),e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())},r.prototype.getChildCount=function(e){return this.getChildren(e).length},r.prototype.getChildAt=function(e,t){return this.getChildren(t)[e]},r.prototype.getChildren=function(r){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),this._children||(this._children=function(r,i){if(!e.isNodeKind(r.kind))return e.emptyArray;var a=[];if(e.isJSDocCommentContainingNode(r))return r.forEachChild((function(e){a.push(e)})),a;var o=i?i.fileName:r.getSourceFile().fileName;o&&8===e.getScriptKindFromFileName(o)&&e.scanner.setEtsContext(!0);e.scanner.setText((i||r.getSourceFile()).text);var s=r.pos,c=function(e){n(a,s,e.pos,r),a.push(e),s=e.end},l=function(e){n(a,s,e.pos,r),a.push(function(e,r){var i=t(337,e.pos,e.end,r);i._children=[];for(var a=e.pos,o=0,s=e;o<s.length;o++){var c=s[o];c.virtual||(n(i._children,a,c.pos,r),i._children.push(c),a=c.end)}return n(i._children,a,e.end,r),i}(e,r)),s=e.end};return e.forEach(r.jsDoc,c),s=r.pos,r.forEachChild(c,l),n(a,s,r.end,r),e.scanner.setText(void 0),e.scanner.setEtsContext(!1),a}(this,r))},r.prototype.getFirstToken=function(t){this.assertHasRealPosition();var r=this.getChildren(t);if(r.length){var n=e.find(r,(function(e){return e.kind<304||e.kind>336}));return n.kind<158?n:n.getFirstToken(t)}},r.prototype.getLastToken=function(t){this.assertHasRealPosition();var r=this.getChildren(t),n=e.lastOrUndefined(r);if(n)return n.kind<158?n:n.getLastToken(t)},r.prototype.forEachChild=function(t,r){return e.forEachChild(this,t,r)},r}();function n(r,n,i,a){if(!a.virtual)for(e.scanner.setTextPos(n);n<i;){var o=e.scanner.scan(),s=e.scanner.getTextPos();if(s<=i&&(78===o&&e.Debug.fail("Did not expect "+e.Debug.formatSyntaxKind(a.kind)+" to have an Identifier in its trivia"),r.push(t(o,n,s,a))),n=s,1===o)break}}var o=function(){function t(e,t){this.pos=e,this.end=t,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0}return t.prototype.getSourceFile=function(){return e.getSourceFileOfNode(this)},t.prototype.getStart=function(t,r){return e.getTokenPosOfNode(this,t,r)},t.prototype.getFullStart=function(){return this.pos},t.prototype.getEnd=function(){return this.end},t.prototype.getWidth=function(e){return this.getEnd()-this.getStart(e)},t.prototype.getFullWidth=function(){return this.end-this.pos},t.prototype.getLeadingTriviaWidth=function(e){return this.getStart(e)-this.pos},t.prototype.getFullText=function(e){return(e||this.getSourceFile()).text.substring(this.pos,this.end)},t.prototype.getText=function(e){return e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())},t.prototype.getChildCount=function(){return 0},t.prototype.getChildAt=function(){},t.prototype.getChildren=function(){return 1===this.kind&&this.jsDoc||e.emptyArray},t.prototype.getFirstToken=function(){},t.prototype.getLastToken=function(){},t.prototype.forEachChild=function(){},t}(),s=function(){function t(e,t){this.flags=e,this.escapedName=t}return t.prototype.getFlags=function(){return this.flags},Object.defineProperty(t.prototype,"name",{get:function(){return e.symbolName(this)},enumerable:!1,configurable:!0}),t.prototype.getEscapedName=function(){return this.escapedName},t.prototype.getName=function(){return this.name},t.prototype.getDeclarations=function(){return this.declarations},t.prototype.getDocumentationComment=function(t){if(!this.documentationComment)if(this.documentationComment=e.emptyArray,!this.declarations&&this.target&&this.target.tupleLabelDeclaration){var r=this.target.tupleLabelDeclaration;this.documentationComment=g([r],t)}else this.documentationComment=g(this.declarations,t);return this.documentationComment},t.prototype.getContextualDocumentationComment=function(t,r){switch(null==t?void 0:t.kind){case 168:return this.contextualGetAccessorDocumentationComment||(this.contextualGetAccessorDocumentationComment=e.emptyArray,this.contextualGetAccessorDocumentationComment=g(e.filter(this.declarations,e.isGetAccessor),r)),this.contextualGetAccessorDocumentationComment;case 169:return this.contextualSetAccessorDocumentationComment||(this.contextualSetAccessorDocumentationComment=e.emptyArray,this.contextualSetAccessorDocumentationComment=g(e.filter(this.declarations,e.isSetAccessor),r)),this.contextualSetAccessorDocumentationComment;default:return this.getDocumentationComment(r)}},t.prototype.getJsDocTags=function(){return void 0===this.tags&&(this.tags=e.JsDoc.getJsDocTagsFromDeclarations(this.declarations)),this.tags},t}(),c=function(e){function t(t,r,n){var i=e.call(this,r,n)||this;return i.kind=t,i}return l(t,e),t}(o),u=function(t){function r(e,r,n){var i=t.call(this,r,n)||this;return i.kind=78,i}return l(r,t),Object.defineProperty(r.prototype,"text",{get:function(){return e.idText(this)},enumerable:!1,configurable:!0}),r}(o);u.prototype.kind=78;var d=function(t){function r(e,r,n){return t.call(this,r,n)||this}return l(r,t),Object.defineProperty(r.prototype,"text",{get:function(){return e.idText(this)},enumerable:!1,configurable:!0}),r}(o);d.prototype.kind=79;var p=function(){function t(e,t){this.checker=e,this.flags=t}return t.prototype.getFlags=function(){return this.flags},t.prototype.getSymbol=function(){return this.symbol},t.prototype.getProperties=function(){return this.checker.getPropertiesOfType(this)},t.prototype.getProperty=function(e){return this.checker.getPropertyOfType(this,e)},t.prototype.getApparentProperties=function(){return this.checker.getAugmentedPropertiesOfType(this)},t.prototype.getCallSignatures=function(){return this.checker.getSignaturesOfType(this,0)},t.prototype.getConstructSignatures=function(){return this.checker.getSignaturesOfType(this,1)},t.prototype.getStringIndexType=function(){return this.checker.getIndexTypeOfType(this,0)},t.prototype.getNumberIndexType=function(){return this.checker.getIndexTypeOfType(this,1)},t.prototype.getBaseTypes=function(){return this.isClassOrInterface()?this.checker.getBaseTypes(this):void 0},t.prototype.isNullableType=function(){return this.checker.isNullableType(this)},t.prototype.getNonNullableType=function(){return this.checker.getNonNullableType(this)},t.prototype.getNonOptionalType=function(){return this.checker.getNonOptionalType(this)},t.prototype.getConstraint=function(){return this.checker.getBaseConstraintOfType(this)},t.prototype.getDefault=function(){return this.checker.getDefaultFromTypeParameter(this)},t.prototype.isUnion=function(){return!!(1048576&this.flags)},t.prototype.isIntersection=function(){return!!(2097152&this.flags)},t.prototype.isUnionOrIntersection=function(){return!!(3145728&this.flags)},t.prototype.isLiteral=function(){return!!(384&this.flags)},t.prototype.isStringLiteral=function(){return!!(128&this.flags)},t.prototype.isNumberLiteral=function(){return!!(256&this.flags)},t.prototype.isTypeParameter=function(){return!!(262144&this.flags)},t.prototype.isClassOrInterface=function(){return!!(3&e.getObjectFlags(this))},t.prototype.isClass=function(){return!!(1&e.getObjectFlags(this))},Object.defineProperty(t.prototype,"typeArguments",{get:function(){if(4&e.getObjectFlags(this))return this.checker.getTypeArguments(this)},enumerable:!1,configurable:!0}),t}(),f=function(){function t(e,t){this.checker=e,this.flags=t}return t.prototype.getDeclaration=function(){return this.declaration},t.prototype.getTypeParameters=function(){return this.typeParameters},t.prototype.getParameters=function(){return this.parameters},t.prototype.getReturnType=function(){return this.checker.getReturnTypeOfSignature(this)},t.prototype.getDocumentationComment=function(){return this.documentationComment||(this.documentationComment=g(e.singleElementArray(this.declaration),this.checker))},t.prototype.getJsDocTags=function(){return void 0===this.jsDocTags&&(this.jsDocTags=this.declaration?function(t,r){var n=e.JsDoc.getJsDocTagsFromDeclarations(t);(0===n.length||t.some(m))&&e.forEachUnique(t,(function(e){var t=_(r,e,(function(e){return e.getJsDocTags()}));t&&(n=i(i([],t),n))}));return n}([this.declaration],this.checker):[]),this.jsDocTags},t}();function m(t){return e.getJSDocTags(t).some((function(e){return"inheritDoc"===e.tagName.text}))}function g(t,r){if(!t)return e.emptyArray;var n=e.JsDoc.getJsDocCommentsFromDeclarations(t);return r&&(0===n.length||t.some(m))&&e.forEachUnique(t,(function(t){var i=_(r,t,(function(e){return e.getDocumentationComment(r)}));i&&(n=0===n.length?i.slice():i.concat(e.lineBreakPart(),n))})),n}function _(t,r,n){return e.firstDefined(r.parent?e.getAllSuperTypeNodes(r.parent):e.emptyArray,(function(e){var i=t.getPropertyOfType(t.getTypeAtLocation(e),r.symbol.name);return i?n(i):void 0}))}var h=function(t){function r(e,r,n){var i=t.call(this,e,r,n)||this;return i.kind=300,i}return l(r,t),r.prototype.update=function(t,r){return e.updateSourceFile(this,t,r)},r.prototype.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(this,t)},r.prototype.getLineStarts=function(){return e.getLineStarts(this)},r.prototype.getPositionOfLineAndCharacter=function(t,r,n){return e.computePositionOfLineAndCharacter(e.getLineStarts(this),t,r,this.text,n)},r.prototype.getLineEndOfPosition=function(e){var t,r=this.getLineAndCharacterOfPosition(e).line,n=this.getLineStarts();r+1>=n.length&&(t=this.getEnd()),t||(t=n[r+1]-1);var i=this.getFullText();return"\n"===i[t]&&"\r"===i[t-1]?t-1:t},r.prototype.getNamedDeclarations=function(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations},r.prototype.computeNamedDeclarations=function(){var t=e.createMultiMap();return this.forEachChild((function i(a){switch(a.kind){case 253:case 209:case 166:case 165:var o=a,s=n(o);if(s){var c=function(e){var r=t.get(e);r||t.set(e,r=[]);return r}(s),l=e.lastOrUndefined(c);l&&o.parent===l.parent&&o.symbol===l.symbol?o.body&&!l.body&&(c[c.length-1]=o):c.push(o)}e.forEachChild(a,i);break;case 254:case 223:case 255:case 256:case 257:case 258:case 259:case 263:case 273:case 268:case 265:case 266:case 168:case 169:case 178:r(a),e.forEachChild(a,i);break;case 161:if(!e.hasSyntacticModifier(a,92))break;case 251:case 199:var u=a;if(e.isBindingPattern(u.name)){e.forEachChild(u.name,i);break}u.initializer&&i(u.initializer);case 294:case 164:case 163:r(a);break;case 270:var d=a;d.exportClause&&(e.isNamedExports(d.exportClause)?e.forEach(d.exportClause.elements,i):i(d.exportClause.name));break;case 264:var p=a.importClause;p&&(p.name&&r(p.name),p.namedBindings&&(266===p.namedBindings.kind?r(p.namedBindings):e.forEach(p.namedBindings.elements,i)));break;case 218:0!==e.getAssignmentDeclarationKind(a)&&r(a);default:e.forEachChild(a,i)}})),t;function r(e){var r=n(e);r&&t.add(r,e)}function n(t){var r=e.getNonAssignedNameOfDeclaration(t);return r&&(e.isComputedPropertyName(r)&&e.isPropertyAccessExpression(r.expression)?r.expression.name.text:e.isPropertyName(r)?e.getNameFromPropertyName(r):void 0)}},r}(r),y=function(){function t(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r}return t.prototype.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(this,t)},t}();function v(t){var r=!0;for(var n in t)if(e.hasProperty(t,n)&&!b(n)){r=!1;break}if(r)return t;var i={};for(var n in t){if(e.hasProperty(t,n))i[b(n)?n:n.charAt(0).toLowerCase()+n.substr(1)]=t[n]}return i}function b(e){return!e.length||e.charAt(0)===e.charAt(0).toLowerCase()}function k(){return{target:1,jsx:1}}e.toEditorSettings=v,e.displayPartsToString=function(t){return t?e.map(t,(function(e){return e.text})).join(""):""},e.getDefaultCompilerOptions=k,e.getSupportedCodeFixes=function(){return e.codefix.getSupportedErrorCodes()};var x=function(){function t(t,r){this.host=t,this.currentDirectory=t.getCurrentDirectory(),this.fileNameToEntry=new e.Map;for(var n=0,i=t.getScriptFileNames();n<i.length;n++){var a=i[n];this.createEntry(a,e.toPath(a,this.currentDirectory,r))}this._compilationSettings=t.getCompilationSettings()||{target:1,jsx:1}}return t.prototype.compilationSettings=function(){return this._compilationSettings},t.prototype.getProjectReferences=function(){return this.host.getProjectReferences&&this.host.getProjectReferences()},t.prototype.createEntry=function(t,r){var n,i=this.host.getScriptSnapshot(t);return n=i?{hostFileName:t,version:this.host.getScriptVersion(t),scriptSnapshot:i,scriptKind:e.getScriptKind(t,this.host)}:t,this.fileNameToEntry.set(r,n),n},t.prototype.getEntryByPath=function(e){return this.fileNameToEntry.get(e)},t.prototype.getHostFileInformation=function(t){var r=this.fileNameToEntry.get(t);return e.isString(r)?void 0:r},t.prototype.getOrCreateEntryByPath=function(t,r){var n=this.getEntryByPath(r)||this.createEntry(t,r);return e.isString(n)?void 0:n},t.prototype.getRootFileNames=function(){var t=[];return this.fileNameToEntry.forEach((function(r){e.isString(r)?t.push(r):t.push(r.hostFileName)})),t},t.prototype.getScriptSnapshot=function(e){var t=this.getHostFileInformation(e);return t&&t.scriptSnapshot},t}(),E=function(){function t(e){this.host=e}return t.prototype.getCurrentSourceFile=function(t){var r=this.host.getScriptSnapshot(t);if(!r)throw new Error("Could not find file: '"+t+"'.");var n,i=e.getScriptKind(t,this.host),a=this.host.getScriptVersion(t);if(this.currentFileName!==t)n=D(t,r,99,a,!0,i,this.host.getCompilationSettings());else if(this.currentFileVersion!==a){var o=r.getChangeRange(this.currentFileScriptSnapshot);n=w(this.currentSourceFile,r,a,o,void 0,this.host.getCompilationSettings())}return n&&(this.currentFileVersion=a,this.currentFileName=t,this.currentFileScriptSnapshot=r,this.currentSourceFile=n),this.currentSourceFile},t}();function S(e,t,r){e.version=r,e.scriptSnapshot=t}function D(t,r,n,i,a,o,s){var c=e.createSourceFile(t,e.getSnapshotText(r),n,a,o,s);return S(c,r,i),c}function w(t,r,n,i,a,o){if(i&&n!==t.version){var s=void 0,c=0!==i.span.start?t.text.substr(0,i.span.start):"",l=e.textSpanEnd(i.span)!==t.text.length?t.text.substr(e.textSpanEnd(i.span)):"";if(0===i.newLength)s=c&&l?c+l:c||l;else{var u=r.getText(i.span.start,i.span.start+i.newLength);s=c&&l?c+u+l:c?c+u:u+l}var d=e.updateSourceFile(t,s,i,a,o);return S(d,r,n),d.nameTable=void 0,t!==d&&t.scriptSnapshot&&(t.scriptSnapshot.dispose&&t.scriptSnapshot.dispose(),t.scriptSnapshot=void 0),d}return D(t.fileName,r,t.languageVersion,n,!0,t.scriptKind,o)}e.createLanguageServiceSourceFile=D,e.updateLanguageServiceSourceFile=w;var T={isCancellationRequested:e.returnFalse,throwIfCancellationRequested:e.noop},C=function(){function t(e){this.cancellationToken=e}return t.prototype.isCancellationRequested=function(){return this.cancellationToken.isCancellationRequested()},t.prototype.throwIfCancellationRequested=function(){if(this.isCancellationRequested())throw null===e.tracing||void 0===e.tracing||e.tracing.instant("session","cancellationThrown",{kind:"CancellationTokenObject"}),new e.OperationCanceledException},t}(),A=function(){function t(e,t){void 0===t&&(t=20),this.hostCancellationToken=e,this.throttleWaitMilliseconds=t,this.lastCancellationCheckTime=0}return t.prototype.isCancellationRequested=function(){var t=e.timestamp();return Math.abs(t-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds&&(this.lastCancellationCheckTime=t,this.hostCancellationToken.isCancellationRequested())},t.prototype.throwIfCancellationRequested=function(){if(this.isCancellationRequested())throw null===e.tracing||void 0===e.tracing||e.tracing.instant("session","cancellationThrown",{kind:"ThrottledCancellationToken"}),new e.OperationCanceledException},t}();e.ThrottledCancellationToken=A;var N=["getSyntacticDiagnostics","getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls"],P=i(i([],N),["getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getOccurrencesAtPosition","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors"]);function I(t){var r=function(t){switch(t.kind){case 10:case 14:case 8:if(159===t.parent.kind)return e.isObjectLiteralElement(t.parent.parent)?t.parent.parent:void 0;case 78:return!e.isObjectLiteralElement(t.parent)||201!==t.parent.parent.kind&&284!==t.parent.parent.kind||t.parent.name!==t?void 0:t.parent}return}(t);return r&&(e.isObjectLiteralExpression(r.parent)||e.isJsxAttributes(r.parent))?r:void 0}function F(t,r,n,i){var a=e.getNameFromPropertyName(t.name);if(!a)return e.emptyArray;if(!n.isUnion())return(o=n.getProperty(a))?[o]:e.emptyArray;var o,s=e.mapDefined(n.types,(function(n){return(e.isObjectLiteralExpression(t.parent)||e.isJsxAttributes(t.parent))&&r.isTypeInvalidDueToUnionDiscriminant(n,t.parent)?void 0:n.getProperty(a)}));if(i&&(0===s.length||s.length===n.types.length)&&(o=n.getProperty(a)))return[o];return 0===s.length?e.mapDefined(n.types,(function(e){return e.getProperty(a)})):s}e.createLanguageService=function(t,r,n){var o,s;void 0===r&&(r=e.createDocumentRegistry(t.useCaseSensitiveFileNames&&t.useCaseSensitiveFileNames(),t.getCurrentDirectory())),s=void 0===n?e.LanguageServiceMode.Semantic:"boolean"==typeof n?n?e.LanguageServiceMode.Syntactic:e.LanguageServiceMode.Semantic:n;var c,l,u=new E(t),d=0,p=t.getCancellationToken?new C(t.getCancellationToken()):T,f=t.getCurrentDirectory();function m(e){t.log&&t.log(e)}!e.localizedDiagnosticMessages&&t.getLocalizedDiagnosticMessages&&e.setLocalizedDiagnosticMessages(t.getLocalizedDiagnosticMessages());var g=e.hostUsesCaseSensitiveFileNames(t),_=e.createGetCanonicalFileName(g),h=e.getSourceMapper({useCaseSensitiveFileNames:function(){return g},getCurrentDirectory:function(){return f},getProgram:k,fileExists:e.maybeBind(t,t.fileExists),readFile:e.maybeBind(t,t.readFile),getDocumentPositionMapper:e.maybeBind(t,t.getDocumentPositionMapper),getSourceFileLike:e.maybeBind(t,t.getSourceFileLike),log:m});function y(e){var t=c.getSourceFile(e);if(!t){var r=new Error("Could not find source file: '"+e+"'.");throw r.ProgramFiles=c.getSourceFiles().map((function(e){return e.fileName})),r}return t}function b(){var n,i;if(e.Debug.assert(s!==e.LanguageServiceMode.Syntactic),t.getProjectVersion){var a=t.getProjectVersion();if(a){if(l===a&&!(null===(n=t.hasChangedAutomaticTypeDirectiveNames)||void 0===n?void 0:n.call(t)))return;l=a}}var o=t.getTypeRootsVersion?t.getTypeRootsVersion():0;d!==o&&(m("TypeRoots version has changed; provide new program"),c=void 0,d=o);var u=new x(t,_),y=u.getRootFileNames(),v=t.hasInvalidatedResolution||e.returnFalse,b=e.maybeBind(t,t.hasChangedAutomaticTypeDirectiveNames),k=u.getProjectReferences();if(!e.isProgramUptoDate(c,y,u.compilationSettings(),(function(e,r){return t.getScriptVersion(r)}),T,v,b,k)){var E=u.compilationSettings(),S={getSourceFile:function(t,r,n,i){return C(t,e.toPath(t,f,_),r,n,i)},getSourceFileByPath:C,getCancellationToken:function(){return p},getCanonicalFileName:_,useCaseSensitiveFileNames:function(){return g},getNewLine:function(){return e.getNewLineCharacter(E,(function(){return e.getNewLineOrDefaultFromHost(t)}))},getDefaultLibFileName:function(e){return t.getDefaultLibFileName(e)},writeFile:e.noop,getCurrentDirectory:function(){return f},fileExists:T,readFile:function(r){var n=e.toPath(r,f,_),i=u&&u.getEntryByPath(n);if(i)return e.isString(i)?void 0:e.getSnapshotText(i.scriptSnapshot);return t.readFile&&t.readFile(r)},getSymlinkCache:e.maybeBind(t,t.getSymlinkCache),realpath:e.maybeBind(t,t.realpath),directoryExists:function(r){return e.directoryProbablyExists(r,t)},getDirectories:function(e){return t.getDirectories?t.getDirectories(e):[]},readDirectory:function(r,n,i,a,o){return e.Debug.checkDefined(t.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),t.readDirectory(r,n,i,a,o)},onReleaseOldSourceFile:function(e,t){var n=r.getKeyForCompilationSettings(t);r.releaseDocumentWithKey(e.resolvedPath,n)},hasInvalidatedResolution:v,hasChangedAutomaticTypeDirectiveNames:b,trace:e.maybeBind(t,t.trace),resolveModuleNames:e.maybeBind(t,t.resolveModuleNames),resolveTypeReferenceDirectives:e.maybeBind(t,t.resolveTypeReferenceDirectives),useSourceOfProjectReferenceRedirect:e.maybeBind(t,t.useSourceOfProjectReferenceRedirect),getTagNameNeededCheckByFile:e.maybeBind(t,t.getTagNameNeededCheckByFile),getExpressionCheckedResultsByFile:e.maybeBind(t,t.getExpressionCheckedResultsByFile)};null===(i=t.setCompilerHost)||void 0===i||i.call(t,S);var D=r.getKeyForCompilationSettings(E),w={rootNames:y,options:E,host:S,oldProgram:c,projectReferences:k};return c=e.createProgram(w),u=void 0,h.clearCache(),void c.getTypeChecker()}function T(r){var n=e.toPath(r,f,_),i=u&&u.getEntryByPath(n);return i?!e.isString(i):!!t.fileExists&&t.fileExists(r)}function C(t,n,i,a,o){e.Debug.assert(void 0!==u,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");var s=u&&u.getOrCreateEntryByPath(t,n);if(s){if(!o){var l=c&&c.getSourceFileByPath(n);if(l)return e.Debug.assertEqual(s.scriptKind,l.scriptKind,"Registered script kind should match new script kind."),r.updateDocumentWithKey(t,n,E,D,s.scriptSnapshot,s.version,s.scriptKind)}return r.acquireDocumentWithKey(t,n,E,D,s.scriptSnapshot,s.version,s.scriptKind)}}}function k(){if(s!==e.LanguageServiceMode.Syntactic)return b(),c;e.Debug.assert(void 0===c)}function S(t,r,n){var i=e.normalizePath(t);e.Debug.assert(n.some((function(t){return e.normalizePath(t)===i}))),b();var a=e.mapDefined(n,(function(e){return c.getSourceFile(e)})),o=y(t);return e.DocumentHighlights.getDocumentHighlights(c,p,o,r,a)}function D(t,r,n,i){b();var a=n&&2===n.use?c.getSourceFiles().filter((function(e){return!c.isSourceFileDefaultLibrary(e)})):c.getSourceFiles();return e.FindAllReferences.findReferenceOrRenameEntries(c,p,a,t,r,n,i)}function w(r){var n=e.getScriptKind(r,t);return 3===n||4===n}var A=new e.Map(e.getEntries(((o={})[18]=19,o[20]=21,o[22]=23,o[31]=29,o)));function O(r){var n;return e.Debug.assertEqual(r.type,"install package"),t.installPackage?t.installPackage({fileName:(n=r.file,e.toPath(n,f,_)),packageName:r.packageName}):Promise.reject("Host does not implement `installPackage`")}function R(e,t){return{lineStarts:e.getLineStarts(),firstLine:e.getLineAndCharacterOfPosition(t.pos).line,lastLine:e.getLineAndCharacterOfPosition(t.end).line}}function M(t,r,n){for(var i=u.getCurrentSourceFile(t),a=[],o=R(i,r),s=o.lineStarts,c=o.firstLine,l=o.lastLine,d=n||!1,p=Number.MAX_VALUE,f=new e.Map,m=new RegExp(/\S/),g=e.isInsideJsxElement(i,s[c]),_=g?"{/*":"//",h=c;h<=l;h++){var y=i.text.substring(s[h],i.getLineEndOfPosition(s[h])),v=m.exec(y);v&&(p=Math.min(p,v.index),f.set(h.toString(),v.index),y.substr(v.index,_.length)!==_&&(d=void 0===n||n))}for(h=c;h<=l;h++)if(c===l||s[h]!==r.end){var b=f.get(h.toString());void 0!==b&&(g?a.push.apply(a,L(t,{pos:s[h]+p,end:i.getLineEndOfPosition(s[h])},d,g)):d?a.push({newText:_,span:{length:0,start:s[h]+p}}):i.text.substr(s[h]+b,_.length)===_&&a.push({newText:"",span:{length:_.length,start:s[h]+b}}))}return a}function L(t,r,n,i){for(var a,o=u.getCurrentSourceFile(t),s=[],c=o.text,l=!1,d=n||!1,p=[],f=r.pos,m=void 0!==i?i:e.isInsideJsxElement(o,f),g=m?"{/*":"/*",_=m?"*/}":"*/",h=m?"\\{\\/\\*":"\\/\\*",y=m?"\\*\\/\\}":"\\*\\/";f<=r.end;){var v=c.substr(f,g.length)===g?g.length:0,b=e.isInComment(o,f+v);if(b)m&&(b.pos--,b.end++),p.push(b.pos),3===b.kind&&p.push(b.end),l=!0,f=b.end+1;else{var k=c.substring(f,r.end).search("("+h+")|("+y+")");d=void 0!==n?n:d||!e.isTextWhiteSpaceLike(c,f,-1===k?r.end:f+k),f=-1===k?r.end+1:f+k+_.length}}if(d||!l){2!==(null===(a=e.isInComment(o,r.pos))||void 0===a?void 0:a.kind)&&e.insertSorted(p,r.pos,e.compareValues),e.insertSorted(p,r.end,e.compareValues);var x=p[0];c.substr(x,g.length)!==g&&s.push({newText:g,span:{length:0,start:x}});for(var E=1;E<p.length-1;E++)c.substr(p[E]-_.length,_.length)!==_&&s.push({newText:_,span:{length:0,start:p[E]}}),c.substr(p[E],g.length)!==g&&s.push({newText:g,span:{length:0,start:p[E]}});s.length%2!=0&&s.push({newText:_,span:{length:0,start:p[p.length-1]}})}else for(var S=0,D=p;S<D.length;S++){var w=D[S],T=w-_.length>0?w-_.length:0;v=c.substr(T,_.length)===_?_.length:0;s.push({newText:"",span:{length:g.length,start:w-v}})}return s}function j(t){var r=t.openingElement,n=t.closingElement,i=t.parent;return!e.tagNamesAreEquivalent(r.tagName,n.tagName)||e.isJsxElement(i)&&e.tagNamesAreEquivalent(r.tagName,i.openingElement.tagName)&&j(i)}function B(r,n,i,a,o,s){var c="number"==typeof n?[n,void 0]:[n.pos,n.end];return{file:r,startPosition:c[0],endPosition:c[1],program:k(),host:t,formatContext:e.formatting.getFormatContext(a,t),cancellationToken:p,preferences:i,triggerReason:o,kind:s}}A.forEach((function(e,t){return A.set(e.toString(),Number(t))}));var z={dispose:function(){if(c){var n=r.getKeyForCompilationSettings(c.getCompilerOptions());e.forEach(c.getSourceFiles(),(function(e){return r.releaseDocumentWithKey(e.resolvedPath,n)})),c=void 0}t=void 0},cleanupSemanticCache:function(){c=void 0},getSyntacticDiagnostics:function(e){return b(),c.getSyntacticDiagnostics(y(e),p).slice()},getSemanticDiagnostics:function(t){b();var r=y(t),n=c.getSemanticDiagnostics(r,p);if(!e.getEmitDeclarations(c.getCompilerOptions()))return n.slice();var a=c.getDeclarationDiagnostics(r,p);return i(i([],n),a)},getSuggestionDiagnostics:function(t){return b(),e.computeSuggestionDiagnostics(y(t),c,p)},getCompilerOptionsDiagnostics:function(){return b(),i(i([],c.getOptionsDiagnostics(p)),c.getGlobalDiagnostics(p))},getSyntacticClassifications:function(t,r){return e.getSyntacticClassifications(p,u.getCurrentSourceFile(t),r)},getSemanticClassifications:function(t,r,n){return w(t)?(b(),"2020"===(n||"original")?e.classifier.v2020.getSemanticClassifications(c,p,y(t),r):e.getSemanticClassifications(c.getTypeChecker(),p,y(t),c.getClassifiableNames(),r)):[]},getEncodedSyntacticClassifications:function(t,r){return e.getEncodedSyntacticClassifications(p,u.getCurrentSourceFile(t),r)},getEncodedSemanticClassifications:function(t,r,n){return w(t)?(b(),"original"===(n||"original")?e.getEncodedSemanticClassifications(c.getTypeChecker(),p,y(t),c.getClassifiableNames(),r):e.classifier.v2020.getEncodedSemanticClassifications(c,p,y(t),r)):{spans:[],endOfLineState:0}},getCompletionsAtPosition:function(r,n,i){void 0===i&&(i=e.emptyOptions);var o=a(a({},e.identity(i)),{includeCompletionsForModuleExports:i.includeCompletionsForModuleExports||i.includeExternalModuleExports,includeCompletionsWithInsertText:i.includeCompletionsWithInsertText||i.includeInsertTextCompletions});return b(),e.Completions.getCompletionsAtPosition(t,c,m,y(r),n,o,i.triggerCharacter)},getCompletionEntryDetails:function(r,n,i,a,o,s){return void 0===s&&(s=e.emptyOptions),b(),e.Completions.getCompletionEntryDetails(c,m,y(r),n,{name:i,source:o},t,a&&e.formatting.getFormatContext(a,t),s,p)},getCompletionEntrySymbol:function(r,n,i,a,o){return void 0===o&&(o=e.emptyOptions),b(),e.Completions.getCompletionEntrySymbol(c,m,y(r),n,{name:i,source:a},t,o)},getSignatureHelpItems:function(t,r,n){var i=(void 0===n?e.emptyOptions:n).triggerReason;b();var a=y(t);return e.SignatureHelp.getSignatureHelpItems(c,a,r,i,p)},getQuickInfoAtPosition:function(t,r){b();var n=y(t),i=e.getTouchingPropertyName(n,r);if(i!==n){var a=c.getTypeChecker(),o=function(t){if(e.isNewExpression(t.parent)&&t.pos===t.parent.pos)return t.parent.expression;return t}(i),s=function(t,r){var n=I(t);if(n){var i=r.getContextualType(n.parent),a=i&&F(n,r,i,!1);if(a&&1===a.length)return e.first(a)}return r.getSymbolAtLocation(t)}(o,a);if(!s||a.isUnknownSymbol(s)){var l=function(t,r,n){switch(r.kind){case 78:return!e.isLabelName(r)&&!e.isTagName(r);case 202:case 158:return!e.isInComment(t,n);case 108:case 188:case 106:return!0;default:return!1}}(n,o,r)?a.getTypeAtLocation(o):void 0;return l&&{kind:"",kindModifiers:"",textSpan:e.createTextSpanFromNode(o,n),displayParts:a.runWithCancellationToken(p,(function(t){return e.typeToDisplayParts(t,l,e.getContainerNode(o))})),documentation:l.symbol?l.symbol.getDocumentationComment(a):void 0,tags:l.symbol?l.symbol.getJsDocTags():void 0}}var u=a.runWithCancellationToken(p,(function(t){return e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(t,s,n,e.getContainerNode(o),o)})),d=u.symbolKind,f=u.displayParts,m=u.documentation,g=u.tags;return{kind:d,kindModifiers:e.SymbolDisplay.getSymbolModifiers(a,s),textSpan:e.createTextSpanFromNode(o,n),displayParts:f,documentation:m,tags:g}}},getDefinitionAtPosition:function(t,r){return b(),e.GoToDefinition.getDefinitionAtPosition(c,y(t),r)},getDefinitionAndBoundSpan:function(t,r){return b(),e.GoToDefinition.getDefinitionAndBoundSpan(c,y(t),r)},getImplementationAtPosition:function(t,r){return b(),e.FindAllReferences.getImplementationsAtPosition(c,p,c.getSourceFiles(),y(t),r)},getTypeDefinitionAtPosition:function(t,r){return b(),e.GoToDefinition.getTypeDefinitionAtPosition(c.getTypeChecker(),y(t),r)},getReferencesAtPosition:function(t,r){return b(),D(e.getTouchingPropertyName(y(t),r),r,{use:1},e.FindAllReferences.toReferenceEntry)},findReferences:function(t,r){return b(),e.FindAllReferences.findReferencedSymbols(c,p,c.getSourceFiles(),y(t),r)},getFileReferences:function(t){return b(),e.FindAllReferences.Core.getReferencesForFileName(t,c,c.getSourceFiles()).map(e.FindAllReferences.toReferenceEntry)},getOccurrencesAtPosition:function(t,r){return e.flatMap(S(t,r,[t]),(function(e){return e.highlightSpans.map((function(t){return a(a({fileName:e.fileName,textSpan:t.textSpan,isWriteAccess:"writtenReference"===t.kind,isDefinition:!1},t.isInString&&{isInString:!0}),t.contextSpan&&{contextSpan:t.contextSpan})}))}))},getDocumentHighlights:S,getNameOrDottedNameSpan:function(t,r,n){var i=u.getCurrentSourceFile(t),a=e.getTouchingPropertyName(i,r);if(a!==i){switch(a.kind){case 202:case 158:case 10:case 95:case 110:case 104:case 106:case 108:case 188:case 78:break;default:return}for(var o=a;;)if(e.isRightSideOfPropertyAccess(o)||e.isRightSideOfQualifiedName(o))o=o.parent;else{if(!e.isNameOfModuleDeclaration(o))break;if(259!==o.parent.parent.kind||o.parent.parent.body!==o.parent)break;o=o.parent.parent.name}return e.createTextSpanFromBounds(o.getStart(),a.getEnd())}},getBreakpointStatementAtPosition:function(t,r){var n=u.getCurrentSourceFile(t);return e.BreakpointResolver.spanInSourceFileAtLocation(n,r)},getNavigateToItems:function(t,r,n,i){void 0===i&&(i=!1),b();var a=n?[y(n)]:c.getSourceFiles();return e.NavigateTo.getNavigateToItems(a,c.getTypeChecker(),p,t,r,i)},getRenameInfo:function(t,r,n){return b(),e.Rename.getRenameInfo(c,y(t),r,n)},getSmartSelectionRange:function(t,r){return e.SmartSelectionRange.getSmartSelectionRange(r,u.getCurrentSourceFile(t))},findRenameLocations:function(t,r,n,i,o){b();var s=y(t),c=e.getAdjustedRenameLocation(e.getTouchingPropertyName(s,r));if(e.isIdentifier(c)&&(e.isJsxOpeningElement(c.parent)||e.isJsxClosingElement(c.parent))&&e.isIntrinsicJsxName(c.escapedText)){var l=c.parent.parent;return[l.openingElement,l.closingElement].map((function(t){var r=e.createTextSpanFromNode(t.tagName,s);return a({fileName:s.fileName,textSpan:r},e.FindAllReferences.toContextSpan(r,s,t.parent))}))}return D(c,r,{findInStrings:n,findInComments:i,providePrefixAndSuffixTextForRename:o,use:2},(function(t,r,n){return e.FindAllReferences.toRenameLocation(t,r,n,o||!1)}))},getNavigationBarItems:function(t){return e.NavigationBar.getNavigationBarItems(u.getCurrentSourceFile(t),p)},getNavigationTree:function(t){return e.NavigationBar.getNavigationTree(u.getCurrentSourceFile(t),p)},getOutliningSpans:function(t){var r=u.getCurrentSourceFile(t);return e.OutliningElementsCollector.collectElements(r,p)},getTodoComments:function(t,r){b();var n=y(t);p.throwIfCancellationRequested();var i,a,o=n.text,s=[];if(r.length>0&&(a=n.fileName,!e.stringContains(a,"/node_modules/"))&&!function(t){return e.stringContains(t,"/oh_modules/")}(n.fileName))for(var c=function(){var t="("+/(?:^(?:\s|\*)*)/.source+"|"+/(?:\/\/+\s*)/.source+"|"+/(?:\/\*+\s*)/.source+")",n="(?:"+e.map(r,(function(e){return"("+(e.text.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")+")")})).join("|")+")",i=t+"("+n+/(?:.*?)/.source+")"+/(?:$|\*\/)/.source;return new RegExp(i,"gim")}(),l=void 0;l=c.exec(o);){p.throwIfCancellationRequested();e.Debug.assert(l.length===r.length+3);var u=l[1],d=l.index+u.length;if(e.isInComment(n,d)){for(var f=void 0,m=0;m<r.length;m++)l[m+3]&&(f=r[m]);if(void 0===f)return e.Debug.fail();if(!((i=o.charCodeAt(d+f.text.length))>=97&&i<=122||i>=65&&i<=90||i>=48&&i<=57)){var g=l[2];s.push({descriptor:f,message:g,position:d})}}}return s},getBraceMatchingAtPosition:function(t,r){var n=u.getCurrentSourceFile(t),i=e.getTouchingToken(n,r),a=i.getStart(n)===r?A.get(i.kind.toString()):void 0,o=a&&e.findChildOfKind(i.parent,a,n);return o?[e.createTextSpanFromNode(i,n),e.createTextSpanFromNode(o,n)].sort((function(e,t){return e.start-t.start})):e.emptyArray},getIndentationAtPosition:function(t,r,n){var i=e.timestamp(),a=v(n),o=u.getCurrentSourceFile(t);m("getIndentationAtPosition: getCurrentSourceFile: "+(e.timestamp()-i)),i=e.timestamp();var s=e.formatting.SmartIndenter.getIndentation(r,o,a);return m("getIndentationAtPosition: computeIndentation : "+(e.timestamp()-i)),s},getFormattingEditsForRange:function(r,n,i,a){var o=u.getCurrentSourceFile(r);return e.formatting.formatSelection(n,i,o,e.formatting.getFormatContext(v(a),t))},getFormattingEditsForDocument:function(r,n){return e.formatting.formatDocument(u.getCurrentSourceFile(r),e.formatting.getFormatContext(v(n),t))},getFormattingEditsAfterKeystroke:function(r,n,i,a){var o=u.getCurrentSourceFile(r),s=e.formatting.getFormatContext(v(a),t);if(!e.isInComment(o,n))switch(i){case"{":return e.formatting.formatOnOpeningCurly(n,o,s);case"}":return e.formatting.formatOnClosingCurly(n,o,s);case";":return e.formatting.formatOnSemicolon(n,o,s);case"\n":return e.formatting.formatOnEnter(n,o,s)}return[]},getDocCommentTemplateAtPosition:function(r,n,i){return e.JsDoc.getDocCommentTemplateAtPosition(e.getNewLineOrDefaultFromHost(t),u.getCurrentSourceFile(r),n,i)},isValidBraceCompletionAtPosition:function(t,r,n){if(60===n)return!1;var i=u.getCurrentSourceFile(t);if(e.isInString(i,r))return!1;if(e.isInsideJsxElementOrAttribute(i,r))return 123===n;if(e.isInTemplateString(i,r))return!1;switch(n){case 39:case 34:case 96:return!e.isInComment(i,r)}return!0},getJsxClosingTagAtPosition:function(t,r){var n=u.getCurrentSourceFile(t),i=e.findPrecedingToken(r,n);if(i){var a=31===i.kind&&e.isJsxOpeningElement(i.parent)?i.parent.parent:e.isJsxText(i)?i.parent:void 0;return a&&j(a)?{newText:"</"+a.openingElement.tagName.getText(n)+">"}:void 0}},getSpanOfEnclosingComment:function(t,r,n){var i=u.getCurrentSourceFile(t),a=e.formatting.getRangeOfEnclosingComment(i,r);return!a||n&&3!==a.kind?void 0:e.createTextSpanFromRange(a)},getCodeFixesAtPosition:function(r,n,i,a,o,s){void 0===s&&(s=e.emptyOptions),b();var l=y(r),u=e.createTextSpanFromBounds(n,i),d=e.formatting.getFormatContext(o,t);return e.flatMap(e.deduplicate(a,e.equateValues,e.compareValues),(function(r){return p.throwIfCancellationRequested(),e.codefix.getFixes({errorCode:r,sourceFile:l,span:u,program:c,host:t,cancellationToken:p,formatContext:d,preferences:s})}))},getCombinedCodeFix:function(r,n,i,a){void 0===a&&(a=e.emptyOptions),b(),e.Debug.assert("file"===r.type);var o=y(r.fileName),s=e.formatting.getFormatContext(i,t);return e.codefix.getAllFixes({fixId:n,sourceFile:o,program:c,host:t,cancellationToken:p,formatContext:s,preferences:a})},applyCodeActionCommand:function(t,r){var n="string"==typeof t?r:t;return e.isArray(n)?Promise.all(n.map((function(e){return O(e)}))):O(n)},organizeImports:function(r,n,i){void 0===i&&(i=e.emptyOptions),b(),e.Debug.assert("file"===r.type);var a=y(r.fileName),o=e.formatting.getFormatContext(n,t);return e.OrganizeImports.organizeImports(a,o,t,c,i)},getEditsForFileRename:function(r,n,i,a){return void 0===a&&(a=e.emptyOptions),e.getEditsForFileRename(k(),r,n,t,e.formatting.getFormatContext(i,t),a,h)},getEmitOutput:function(r,n,i){b();var a=y(r),o=t.getCustomTransformers&&t.getCustomTransformers();return e.getFileEmitOutput(c,a,!!n,p,o,i)},getNonBoundSourceFile:function(e){return u.getCurrentSourceFile(e)},getProgram:k,getAutoImportProvider:function(){var e;return null===(e=t.getPackageJsonAutoImportProvider)||void 0===e?void 0:e.call(t)},getApplicableRefactors:function(t,r,n,i,a){void 0===n&&(n=e.emptyOptions),b();var o=y(t);return e.refactor.getApplicableRefactors(B(o,r,n,e.emptyOptions,i,a))},getEditsForRefactor:function(t,r,n,i,a,o){void 0===o&&(o=e.emptyOptions),b();var s=y(t);return e.refactor.getEditsForRefactor(B(s,n,o,r),i,a)},toLineColumnOffset:h.toLineColumnOffset,getSourceMapper:function(){return h},clearSourceMapperCache:function(){return h.clearCache()},prepareCallHierarchy:function(t,r){b();var n=e.CallHierarchy.resolveCallHierarchyDeclaration(c,e.getTouchingPropertyName(y(t),r));return n&&e.mapOneOrMany(n,(function(t){return e.CallHierarchy.createCallHierarchyItem(c,t)}))},provideCallHierarchyIncomingCalls:function(t,r){b();var n=y(t),i=e.firstOrOnly(e.CallHierarchy.resolveCallHierarchyDeclaration(c,0===r?n:e.getTouchingPropertyName(n,r)));return i?e.CallHierarchy.getIncomingCalls(c,i,p):[]},provideCallHierarchyOutgoingCalls:function(t,r){b();var n=y(t),i=e.firstOrOnly(e.CallHierarchy.resolveCallHierarchyDeclaration(c,0===r?n:e.getTouchingPropertyName(n,r)));return i?e.CallHierarchy.getOutgoingCalls(c,i):[]},toggleLineComment:M,toggleMultilineComment:L,commentSelection:function(e,t){var r=R(u.getCurrentSourceFile(e),t);return r.firstLine===r.lastLine&&t.pos!==t.end?L(e,t,!0):M(e,t,!0)},uncommentSelection:function(t,r){var n=u.getCurrentSourceFile(t),i=[],a=r.pos,o=r.end;a===o&&(o+=e.isInsideJsxElement(n,a)?2:1);for(var s=a;s<=o;s++){var c=e.isInComment(n,s);if(c){switch(c.kind){case 2:i.push.apply(i,M(t,{end:c.end,pos:c.pos+1},!1));break;case 3:i.push.apply(i,L(t,{end:c.end,pos:c.pos+1},!1))}s=c.end+1}}return i}};switch(s){case e.LanguageServiceMode.Semantic:break;case e.LanguageServiceMode.PartialSemantic:N.forEach((function(e){return z[e]=function(){throw new Error("LanguageService Operation: "+e+" not allowed in LanguageServiceMode.PartialSemantic")}}));break;case e.LanguageServiceMode.Syntactic:P.forEach((function(e){return z[e]=function(){throw new Error("LanguageService Operation: "+e+" not allowed in LanguageServiceMode.Syntactic")}}));break;default:e.Debug.assertNever(s)}return z},e.getNameTable=function(t){return t.nameTable||function(t){var r=t.nameTable=new e.Map;t.forEachChild((function t(n){if(e.isIdentifier(n)&&!e.isTagName(n)&&n.escapedText||e.isStringOrNumericLiteralLike(n)&&function(t){return e.isDeclarationName(t)||275===t.parent.kind||function(e){return e&&e.parent&&203===e.parent.kind&&e.parent.argumentExpression===e}(t)||e.isLiteralComputedPropertyDeclarationName(t)}(n)){var i=e.getEscapedTextOfIdentifierOrLiteral(n);r.set(i,void 0===r.get(i)?n.pos:-1)}else if(e.isPrivateIdentifier(n)){i=n.escapedText;r.set(i,void 0===r.get(i)?n.pos:-1)}if(e.forEachChild(n,t),e.hasJSDocNodes(n))for(var a=0,o=n.jsDoc;a<o.length;a++){var s=o[a];e.forEachChild(s,t)}}))}(t),t.nameTable},e.getContainingObjectLiteralElement=I,e.getPropertySymbolsFromContextualType=F,e.getDefaultLibFilePath=function(t){return __dirname+e.directorySeparator+e.getDefaultLibFileName(t)},e.setObjectAllocator({getNodeConstructor:function(){return r},getTokenConstructor:function(){return c},getIdentifierConstructor:function(){return u},getPrivateIdentifierConstructor:function(){return d},getSourceFileConstructor:function(){return h},getSymbolConstructor:function(){return s},getTypeConstructor:function(){return p},getSignatureConstructor:function(){return f},getSourceMapSourceConstructor:function(){return y}})}(d||(d={})),function(e){!function(t){t.spanInSourceFileAtLocation=function(t,r){if(!t.isDeclarationFile){var n=e.getTokenAtPosition(t,r),i=t.getLineAndCharacterOfPosition(r).line;if(t.getLineAndCharacterOfPosition(n.getStart(t)).line>i){var a=e.findPrecedingToken(n.pos,t);if(!a||t.getLineAndCharacterOfPosition(a.getEnd()).line!==i)return;n=a}if(!(8388608&n.flags))return d(n)}function o(r,n){var i=r.decorators?e.skipTrivia(t.text,r.decorators.end):r.getStart(t);return e.createTextSpanFromBounds(i,(n||r).getEnd())}function s(r,n){return o(r,e.findNextToken(n,n.parent,t))}function c(e,r){return e&&i===t.getLineAndCharacterOfPosition(e.getStart(t)).line?d(e):d(r)}function l(r){return d(e.findPrecedingToken(r.pos,t))}function u(r){return d(e.findNextToken(r,r.parent,t))}function d(r){if(r){var n=r.parent;switch(r.kind){case 234:return y(r.declarationList.declarations[0]);case 251:case 164:case 163:return y(r);case 161:return function t(r){if(e.isBindingPattern(r.name))return x(r.name);if(function(t){return!!t.initializer||void 0!==t.dotDotDotToken||e.hasSyntacticModifier(t,12)}(r))return o(r);var n=r.parent,i=n.parameters.indexOf(r);return e.Debug.assert(-1!==i),0!==i?t(n.parameters[i-1]):d(n.body)}(r);case 253:case 166:case 165:case 168:case 169:case 167:case 209:case 210:return function(e){if(!e.body)return;if(v(e))return o(e);return d(e.body)}(r);case 232:if(e.isFunctionBlock(r))return function(e){var t=e.statements.length?e.statements[0]:e.getLastToken();if(v(e.parent))return c(e.parent,t);return d(t)}(r);case 260:return b(r);case 290:return b(r.block);case 235:return o(r.expression);case 244:return o(r.getChildAt(0),r.expression);case 238:return s(r,r.expression);case 237:return d(r.statement);case 250:return o(r.getChildAt(0));case 236:return s(r,r.expression);case 247:return d(r.statement);case 243:case 242:return o(r.getChildAt(0),r.label);case 239:return function(e){if(e.initializer)return k(e);if(e.condition)return o(e.condition);if(e.incrementor)return o(e.incrementor)}(r);case 240:return s(r,r.expression);case 241:return k(r);case 246:return s(r,r.expression);case 287:case 288:return d(r.statements[0]);case 249:return b(r.tryBlock);case 248:case 269:return o(r,r.expression);case 263:return o(r,r.moduleReference);case 264:case 270:return o(r,r.moduleSpecifier);case 259:if(1!==e.getModuleInstanceState(r))return;case 254:case 258:case 294:case 199:return o(r);case 245:return d(r.statement);case 162:return _=n.decorators,e.createTextSpanFromBounds(e.skipTrivia(t.text,_.pos),_.end);case 197:case 198:return x(r);case 256:case 257:return;case 26:case 1:return c(e.findPrecedingToken(r.pos,t));case 27:return l(r);case 18:return function(r){switch(r.parent.kind){case 258:var n=r.parent;return c(e.findPrecedingToken(r.pos,t,r.parent),n.members.length?n.members[0]:n.getLastToken(t));case 254:var i=r.parent;return c(e.findPrecedingToken(r.pos,t,r.parent),i.members.length?i.members[0]:i.getLastToken(t));case 261:return c(r.parent.parent,r.parent.clauses[0])}return d(r.parent)}(r);case 19:return function(t){switch(t.parent.kind){case 260:if(1!==e.getModuleInstanceState(t.parent.parent))return;case 258:case 254:return o(t);case 232:if(e.isFunctionBlock(t.parent))return o(t);case 290:return d(e.lastOrUndefined(t.parent.statements));case 261:var r=t.parent,n=e.lastOrUndefined(r.clauses);return n?d(e.lastOrUndefined(n.statements)):void 0;case 197:var i=t.parent;return d(e.lastOrUndefined(i.elements)||i);default:if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)){var a=t.parent;return o(e.lastOrUndefined(a.properties)||a)}return d(t.parent)}}(r);case 23:return function(t){if(198===t.parent.kind){var r=t.parent;return o(e.lastOrUndefined(r.elements)||r)}if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)){var n=t.parent;return o(e.lastOrUndefined(n.elements)||n)}return d(t.parent)}(r);case 20:return function(e){if(237===e.parent.kind||204===e.parent.kind||205===e.parent.kind)return l(e);if(208===e.parent.kind)return u(e);return d(e.parent)}(r);case 21:return function(e){switch(e.parent.kind){case 209:case 253:case 210:case 166:case 165:case 168:case 169:case 167:case 238:case 237:case 239:case 241:case 204:case 205:case 208:return l(e);default:return d(e.parent)}}(r);case 58:return function(t){if(e.isFunctionLike(t.parent)||291===t.parent.kind||161===t.parent.kind)return l(t);return d(t.parent)}(r);case 31:case 29:return function(e){if(207===e.parent.kind)return u(e);return d(e.parent)}(r);case 115:return function(e){if(237===e.parent.kind)return s(e,e.parent.expression);return d(e.parent)}(r);case 91:case 82:case 96:return u(r);case 157:return function(e){if(241===e.parent.kind)return u(e);return d(e.parent)}(r);default:if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(r))return E(r);if((78===r.kind||222===r.kind||291===r.kind||292===r.kind)&&e.isArrayLiteralOrObjectLiteralDestructuringPattern(n))return o(r);if(218===r.kind){var i=r,a=i.left,p=i.operatorToken;if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(a))return E(a);if(62===p.kind&&e.isArrayLiteralOrObjectLiteralDestructuringPattern(r.parent))return o(r);if(27===p.kind)return d(a)}if(e.isExpressionNode(r))switch(n.kind){case 237:return l(r);case 162:return d(r.parent);case 239:case 241:return o(r);case 218:if(27===r.parent.operatorToken.kind)return o(r);break;case 210:if(r.parent.body===r)return o(r)}switch(r.parent.kind){case 291:if(r.parent.name===r&&!e.isArrayLiteralOrObjectLiteralDestructuringPattern(r.parent.parent))return d(r.parent.initializer);break;case 207:if(r.parent.type===r)return u(r.parent.type);break;case 251:case 161:var f=r.parent,m=f.initializer,g=f.type;if(m===r||g===r||e.isAssignmentOperator(r.kind))return l(r);break;case 218:a=r.parent.left;if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(a)&&r!==a)return l(r);break;default:if(e.isFunctionLike(r.parent)&&r.parent.type===r)return l(r)}return d(r.parent)}}var _;function h(r){return e.isVariableDeclarationList(r.parent)&&r.parent.declarations[0]===r?o(e.findPrecedingToken(r.pos,t,r.parent),r):o(r)}function y(r){if(240===r.parent.parent.kind)return d(r.parent.parent);var n=r.parent;return e.isBindingPattern(r.name)?x(r.name):r.initializer||e.hasSyntacticModifier(r,1)||241===n.parent.kind?h(r):e.isVariableDeclarationList(r.parent)&&r.parent.declarations[0]!==r?d(e.findPrecedingToken(r.pos,t,r.parent)):void 0}function v(t){return e.hasSyntacticModifier(t,1)||254===t.parent.kind&&167!==t.kind}function b(r){switch(r.parent.kind){case 259:if(1!==e.getModuleInstanceState(r.parent))return;case 238:case 236:case 240:return c(r.parent,r.statements[0]);case 239:case 241:return c(e.findPrecedingToken(r.pos,t,r.parent),r.statements[0])}return d(r.statements[0])}function k(e){if(252!==e.initializer.kind)return d(e.initializer);var t=e.initializer;return t.declarations.length>0?d(t.declarations[0]):void 0}function x(t){var r=e.forEach(t.elements,(function(e){return 224!==e.kind?e:void 0}));return r?d(r):199===t.parent.kind?o(t.parent):h(t.parent)}function E(t){e.Debug.assert(198!==t.kind&&197!==t.kind);var r=200===t.kind?t.elements:t.properties,n=e.forEach(r,(function(e){return 224!==e.kind?e:void 0}));return n?d(n):o(218===t.parent.kind?t.parent:t)}}}}(e.BreakpointResolver||(e.BreakpointResolver={}))}(d||(d={})),function(e){e.transform=function(t,r,n){var i=[];n=e.fixupCompilerOptions(n,i);var a=e.isArray(t)?t:[t],o=e.transformNodes(void 0,void 0,e.factory,n,a,r,!0);return o.diagnostics=e.concatenate(o.diagnostics,i),o}}(d||(d={}));var d,p=function(){return this}();!function(e){function t(e,t){e&&e.log("*INTERNAL ERROR* - Exception in typescript services: "+t.message)}var r=function(){function t(e){this.scriptSnapshotShim=e}return t.prototype.getText=function(e,t){return this.scriptSnapshotShim.getText(e,t)},t.prototype.getLength=function(){return this.scriptSnapshotShim.getLength()},t.prototype.getChangeRange=function(t){var r=t,n=this.scriptSnapshotShim.getChangeRange(r.scriptSnapshotShim);if(null===n)return null;var i=JSON.parse(n);return e.createTextChangeRange(e.createTextSpan(i.span.start,i.span.length),i.newLength)},t.prototype.dispose=function(){"dispose"in this.scriptSnapshotShim&&this.scriptSnapshotShim.dispose()},t}(),n=function(){function t(t){var r=this;this.shimHost=t,this.loggingEnabled=!1,this.tracingEnabled=!1,"getModuleResolutionsForFile"in this.shimHost&&(this.resolveModuleNames=function(t,n){var i=JSON.parse(r.shimHost.getModuleResolutionsForFile(n));return e.map(t,(function(t){var r=e.getProperty(i,t);return r?{resolvedFileName:r,extension:e.extensionFromPath(r),isExternalLibraryImport:!1}:void 0}))}),"directoryExists"in this.shimHost&&(this.directoryExists=function(e){return r.shimHost.directoryExists(e)}),"getTypeReferenceDirectiveResolutionsForFile"in this.shimHost&&(this.resolveTypeReferenceDirectives=function(t,n){var i=JSON.parse(r.shimHost.getTypeReferenceDirectiveResolutionsForFile(n));return e.map(t,(function(t){return e.getProperty(i,t)}))})}return t.prototype.log=function(e){this.loggingEnabled&&this.shimHost.log(e)},t.prototype.trace=function(e){this.tracingEnabled&&this.shimHost.trace(e)},t.prototype.error=function(e){this.shimHost.error(e)},t.prototype.getProjectVersion=function(){if(this.shimHost.getProjectVersion)return this.shimHost.getProjectVersion()},t.prototype.getTypeRootsVersion=function(){return this.shimHost.getTypeRootsVersion?this.shimHost.getTypeRootsVersion():0},t.prototype.useCaseSensitiveFileNames=function(){return!!this.shimHost.useCaseSensitiveFileNames&&this.shimHost.useCaseSensitiveFileNames()},t.prototype.getCompilationSettings=function(){var e=this.shimHost.getCompilationSettings();if(null===e||""===e)throw Error("LanguageServiceShimHostAdapter.getCompilationSettings: empty compilationSettings");var t=JSON.parse(e);return t.allowNonTsExtensions=!0,t},t.prototype.getScriptFileNames=function(){var e=this.shimHost.getScriptFileNames();return JSON.parse(e)},t.prototype.getScriptSnapshot=function(e){var t=this.shimHost.getScriptSnapshot(e);return t&&new r(t)},t.prototype.getScriptKind=function(e){return"getScriptKind"in this.shimHost?this.shimHost.getScriptKind(e):0},t.prototype.getScriptVersion=function(e){return this.shimHost.getScriptVersion(e)},t.prototype.getLocalizedDiagnosticMessages=function(){var e=this.shimHost.getLocalizedDiagnosticMessages();if(null===e||""===e)return null;try{return JSON.parse(e)}catch(e){return this.log(e.description||"diagnosticMessages.generated.json has invalid JSON format"),null}},t.prototype.getCancellationToken=function(){var t=this.shimHost.getCancellationToken();return new e.ThrottledCancellationToken(t)},t.prototype.getCurrentDirectory=function(){return this.shimHost.getCurrentDirectory()},t.prototype.getDirectories=function(e){return JSON.parse(this.shimHost.getDirectories(e))},t.prototype.getDefaultLibFileName=function(e){return this.shimHost.getDefaultLibFileName(JSON.stringify(e))},t.prototype.readDirectory=function(t,r,n,i,a){var o=e.getFileMatcherPatterns(t,n,i,this.shimHost.useCaseSensitiveFileNames(),this.shimHost.getCurrentDirectory());return JSON.parse(this.shimHost.readDirectory(t,JSON.stringify(r),JSON.stringify(o.basePaths),o.excludePattern,o.includeFilePattern,o.includeDirectoryPattern,a))},t.prototype.readFile=function(e,t){return this.shimHost.readFile(e,t)},t.prototype.fileExists=function(e){return this.shimHost.fileExists(e)},t}();e.LanguageServiceShimHostAdapter=n;var o=function(){function t(e){var t=this;this.shimHost=e,this.useCaseSensitiveFileNames=!!this.shimHost.useCaseSensitiveFileNames&&this.shimHost.useCaseSensitiveFileNames(),"directoryExists"in this.shimHost?this.directoryExists=function(e){return t.shimHost.directoryExists(e)}:this.directoryExists=void 0,"realpath"in this.shimHost?this.realpath=function(e){return t.shimHost.realpath(e)}:this.realpath=void 0}return t.prototype.readDirectory=function(t,r,n,i,a){var o=e.getFileMatcherPatterns(t,n,i,this.shimHost.useCaseSensitiveFileNames(),this.shimHost.getCurrentDirectory());return JSON.parse(this.shimHost.readDirectory(t,JSON.stringify(r),JSON.stringify(o.basePaths),o.excludePattern,o.includeFilePattern,o.includeDirectoryPattern,a))},t.prototype.fileExists=function(e){return this.shimHost.fileExists(e)},t.prototype.readFile=function(e){return this.shimHost.readFile(e)},t.prototype.getDirectories=function(e){return JSON.parse(this.shimHost.getDirectories(e))},t}();function s(e,t,r,n){return u(e,t,!0,r,n)}function u(r,n,i,a,o){try{var s=function(t,r,n,i){var a;i&&(t.log(r),a=e.timestamp());var o=n();if(i){var s=e.timestamp();if(t.log(r+" completed in "+(s-a)+" msec"),e.isString(o)){var c=o;c.length>128&&(c=c.substring(0,128)+"..."),t.log(" result.length="+c.length+", result='"+JSON.stringify(c)+"'")}}return o}(r,n,a,o);return i?JSON.stringify({result:s}):s}catch(i){return i instanceof e.OperationCanceledException?JSON.stringify({canceled:!0}):(t(r,i),i.description=n,JSON.stringify({error:i}))}}e.CoreServicesShimHostAdapter=o;var d=function(){function e(e){this.factory=e,e.registerShim(this)}return e.prototype.dispose=function(e){this.factory.unregisterShim(this)},e}();function f(t,r){return t.map((function(t){return function(t,r){return{message:e.flattenDiagnosticMessageText(t.messageText,r),start:t.start,length:t.length,category:e.diagnosticCategoryName(t),code:t.code,reportsUnnecessary:t.reportsUnnecessary,reportsDeprecated:t.reportsDeprecated}}(t,r)}))}e.realizeDiagnostics=f;var m=function(t){function r(e,r,n){var i=t.call(this,e)||this;return i.host=r,i.languageService=n,i.logPerformance=!1,i.logger=i.host,i}return l(r,t),r.prototype.forwardJSONCall=function(e,t){return s(this.logger,e,t,this.logPerformance)},r.prototype.dispose=function(e){this.logger.log("dispose()"),this.languageService.dispose(),this.languageService=null,p&&p.CollectGarbage&&(p.CollectGarbage(),this.logger.log("CollectGarbage()")),this.logger=null,t.prototype.dispose.call(this,e)},r.prototype.refresh=function(e){this.forwardJSONCall("refresh("+e+")",(function(){return null}))},r.prototype.cleanupSemanticCache=function(){var e=this;this.forwardJSONCall("cleanupSemanticCache()",(function(){return e.languageService.cleanupSemanticCache(),null}))},r.prototype.realizeDiagnostics=function(t){return f(t,e.getNewLineOrDefaultFromHost(this.host))},r.prototype.getSyntacticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getSyntacticClassifications('"+t+"', "+r+", "+n+")",(function(){return i.languageService.getSyntacticClassifications(t,e.createTextSpan(r,n))}))},r.prototype.getSemanticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getSemanticClassifications('"+t+"', "+r+", "+n+")",(function(){return i.languageService.getSemanticClassifications(t,e.createTextSpan(r,n))}))},r.prototype.getEncodedSyntacticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getEncodedSyntacticClassifications('"+t+"', "+r+", "+n+")",(function(){return g(i.languageService.getEncodedSyntacticClassifications(t,e.createTextSpan(r,n)))}))},r.prototype.getEncodedSemanticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getEncodedSemanticClassifications('"+t+"', "+r+", "+n+")",(function(){return g(i.languageService.getEncodedSemanticClassifications(t,e.createTextSpan(r,n)))}))},r.prototype.getSyntacticDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSyntacticDiagnostics('"+e+"')",(function(){var r=t.languageService.getSyntacticDiagnostics(e);return t.realizeDiagnostics(r)}))},r.prototype.getSemanticDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSemanticDiagnostics('"+e+"')",(function(){var r=t.languageService.getSemanticDiagnostics(e);return t.realizeDiagnostics(r)}))},r.prototype.getSuggestionDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSuggestionDiagnostics('"+e+"')",(function(){return t.realizeDiagnostics(t.languageService.getSuggestionDiagnostics(e))}))},r.prototype.getCompilerOptionsDiagnostics=function(){var e=this;return this.forwardJSONCall("getCompilerOptionsDiagnostics()",(function(){var t=e.languageService.getCompilerOptionsDiagnostics();return e.realizeDiagnostics(t)}))},r.prototype.getQuickInfoAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getQuickInfoAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getQuickInfoAtPosition(e,t)}))},r.prototype.getNameOrDottedNameSpan=function(e,t,r){var n=this;return this.forwardJSONCall("getNameOrDottedNameSpan('"+e+"', "+t+", "+r+")",(function(){return n.languageService.getNameOrDottedNameSpan(e,t,r)}))},r.prototype.getBreakpointStatementAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getBreakpointStatementAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getBreakpointStatementAtPosition(e,t)}))},r.prototype.getSignatureHelpItems=function(e,t,r){var n=this;return this.forwardJSONCall("getSignatureHelpItems('"+e+"', "+t+")",(function(){return n.languageService.getSignatureHelpItems(e,t,r)}))},r.prototype.getDefinitionAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getDefinitionAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getDefinitionAtPosition(e,t)}))},r.prototype.getDefinitionAndBoundSpan=function(e,t){var r=this;return this.forwardJSONCall("getDefinitionAndBoundSpan('"+e+"', "+t+")",(function(){return r.languageService.getDefinitionAndBoundSpan(e,t)}))},r.prototype.getTypeDefinitionAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getTypeDefinitionAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getTypeDefinitionAtPosition(e,t)}))},r.prototype.getImplementationAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getImplementationAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getImplementationAtPosition(e,t)}))},r.prototype.getRenameInfo=function(e,t,r){var n=this;return this.forwardJSONCall("getRenameInfo('"+e+"', "+t+")",(function(){return n.languageService.getRenameInfo(e,t,r)}))},r.prototype.getSmartSelectionRange=function(e,t){var r=this;return this.forwardJSONCall("getSmartSelectionRange('"+e+"', "+t+")",(function(){return r.languageService.getSmartSelectionRange(e,t)}))},r.prototype.findRenameLocations=function(e,t,r,n,i){var a=this;return this.forwardJSONCall("findRenameLocations('"+e+"', "+t+", "+r+", "+n+", "+i+")",(function(){return a.languageService.findRenameLocations(e,t,r,n,i)}))},r.prototype.getBraceMatchingAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getBraceMatchingAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getBraceMatchingAtPosition(e,t)}))},r.prototype.isValidBraceCompletionAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("isValidBraceCompletionAtPosition('"+e+"', "+t+", "+r+")",(function(){return n.languageService.isValidBraceCompletionAtPosition(e,t,r)}))},r.prototype.getSpanOfEnclosingComment=function(e,t,r){var n=this;return this.forwardJSONCall("getSpanOfEnclosingComment('"+e+"', "+t+")",(function(){return n.languageService.getSpanOfEnclosingComment(e,t,r)}))},r.prototype.getIndentationAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getIndentationAtPosition('"+e+"', "+t+")",(function(){var i=JSON.parse(r);return n.languageService.getIndentationAtPosition(e,t,i)}))},r.prototype.getReferencesAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getReferencesAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getReferencesAtPosition(e,t)}))},r.prototype.findReferences=function(e,t){var r=this;return this.forwardJSONCall("findReferences('"+e+"', "+t+")",(function(){return r.languageService.findReferences(e,t)}))},r.prototype.getFileReferences=function(e){var t=this;return this.forwardJSONCall("getFileReferences('"+e+")",(function(){return t.languageService.getFileReferences(e)}))},r.prototype.getOccurrencesAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getOccurrencesAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getOccurrencesAtPosition(e,t)}))},r.prototype.getDocumentHighlights=function(t,r,n){var i=this;return this.forwardJSONCall("getDocumentHighlights('"+t+"', "+r+")",(function(){var a=i.languageService.getDocumentHighlights(t,r,JSON.parse(n)),o=e.toFileNameLowerCase(e.normalizeSlashes(t));return e.filter(a,(function(t){return e.toFileNameLowerCase(e.normalizeSlashes(t.fileName))===o}))}))},r.prototype.getCompletionsAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getCompletionsAtPosition('"+e+"', "+t+", "+r+")",(function(){return n.languageService.getCompletionsAtPosition(e,t,r)}))},r.prototype.getCompletionEntryDetails=function(e,t,r,n,i,a){var o=this;return this.forwardJSONCall("getCompletionEntryDetails('"+e+"', "+t+", '"+r+"')",(function(){var s=void 0===n?void 0:JSON.parse(n);return o.languageService.getCompletionEntryDetails(e,t,r,s,i,a)}))},r.prototype.getFormattingEditsForRange=function(e,t,r,n){var i=this;return this.forwardJSONCall("getFormattingEditsForRange('"+e+"', "+t+", "+r+")",(function(){var a=JSON.parse(n);return i.languageService.getFormattingEditsForRange(e,t,r,a)}))},r.prototype.getFormattingEditsForDocument=function(e,t){var r=this;return this.forwardJSONCall("getFormattingEditsForDocument('"+e+"')",(function(){var n=JSON.parse(t);return r.languageService.getFormattingEditsForDocument(e,n)}))},r.prototype.getFormattingEditsAfterKeystroke=function(e,t,r,n){var i=this;return this.forwardJSONCall("getFormattingEditsAfterKeystroke('"+e+"', "+t+", '"+r+"')",(function(){var a=JSON.parse(n);return i.languageService.getFormattingEditsAfterKeystroke(e,t,r,a)}))},r.prototype.getDocCommentTemplateAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getDocCommentTemplateAtPosition('"+e+"', "+t+")",(function(){return n.languageService.getDocCommentTemplateAtPosition(e,t,r)}))},r.prototype.getNavigateToItems=function(e,t,r){var n=this;return this.forwardJSONCall("getNavigateToItems('"+e+"', "+t+", "+r+")",(function(){return n.languageService.getNavigateToItems(e,t,r)}))},r.prototype.getNavigationBarItems=function(e){var t=this;return this.forwardJSONCall("getNavigationBarItems('"+e+"')",(function(){return t.languageService.getNavigationBarItems(e)}))},r.prototype.getNavigationTree=function(e){var t=this;return this.forwardJSONCall("getNavigationTree('"+e+"')",(function(){return t.languageService.getNavigationTree(e)}))},r.prototype.getOutliningSpans=function(e){var t=this;return this.forwardJSONCall("getOutliningSpans('"+e+"')",(function(){return t.languageService.getOutliningSpans(e)}))},r.prototype.getTodoComments=function(e,t){var r=this;return this.forwardJSONCall("getTodoComments('"+e+"')",(function(){return r.languageService.getTodoComments(e,JSON.parse(t))}))},r.prototype.prepareCallHierarchy=function(e,t){var r=this;return this.forwardJSONCall("prepareCallHierarchy('"+e+"', "+t+")",(function(){return r.languageService.prepareCallHierarchy(e,t)}))},r.prototype.provideCallHierarchyIncomingCalls=function(e,t){var r=this;return this.forwardJSONCall("provideCallHierarchyIncomingCalls('"+e+"', "+t+")",(function(){return r.languageService.provideCallHierarchyIncomingCalls(e,t)}))},r.prototype.provideCallHierarchyOutgoingCalls=function(e,t){var r=this;return this.forwardJSONCall("provideCallHierarchyOutgoingCalls('"+e+"', "+t+")",(function(){return r.languageService.provideCallHierarchyOutgoingCalls(e,t)}))},r.prototype.getEmitOutput=function(e){var t=this;return this.forwardJSONCall("getEmitOutput('"+e+"')",(function(){var r=t.languageService.getEmitOutput(e),n=r.diagnostics,i=c(r,["diagnostics"]);return a(a({},i),{diagnostics:t.realizeDiagnostics(n)})}))},r.prototype.getEmitOutputObject=function(e){var t=this;return u(this.logger,"getEmitOutput('"+e+"')",!1,(function(){return t.languageService.getEmitOutput(e)}),this.logPerformance)},r.prototype.toggleLineComment=function(e,t){var r=this;return this.forwardJSONCall("toggleLineComment('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.toggleLineComment(e,t)}))},r.prototype.toggleMultilineComment=function(e,t){var r=this;return this.forwardJSONCall("toggleMultilineComment('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.toggleMultilineComment(e,t)}))},r.prototype.commentSelection=function(e,t){var r=this;return this.forwardJSONCall("commentSelection('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.commentSelection(e,t)}))},r.prototype.uncommentSelection=function(e,t){var r=this;return this.forwardJSONCall("uncommentSelection('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.uncommentSelection(e,t)}))},r}(d);function g(e){return{spans:e.spans.join(","),endOfLineState:e.endOfLineState}}var _=function(t){function r(r,n){var i=t.call(this,r)||this;return i.logger=n,i.logPerformance=!1,i.classifier=e.createClassifier(),i}return l(r,t),r.prototype.getEncodedLexicalClassifications=function(e,t,r){var n=this;return void 0===r&&(r=!1),s(this.logger,"getEncodedLexicalClassifications",(function(){return g(n.classifier.getEncodedLexicalClassifications(e,t,r))}),this.logPerformance)},r.prototype.getClassificationsForLine=function(e,t,r){void 0===r&&(r=!1);for(var n=this.classifier.getClassificationsForLine(e,t,r),i="",a=0,o=n.entries;a<o.length;a++){var s=o[a];i+=s.length+"\n",i+=s.classification+"\n"}return i+=n.finalLexState},r}(d),h=function(t){function r(e,r,n){var i=t.call(this,e)||this;return i.logger=r,i.host=n,i.logPerformance=!1,i}return l(r,t),r.prototype.forwardJSONCall=function(e,t){return s(this.logger,e,t,this.logPerformance)},r.prototype.resolveModuleName=function(t,r,n){var i=this;return this.forwardJSONCall("resolveModuleName('"+t+"')",(function(){var a=JSON.parse(n),o=e.resolveModuleName(r,e.normalizeSlashes(t),a,i.host),s=o.resolvedModule?o.resolvedModule.resolvedFileName:void 0;return o.resolvedModule&&".ts"!==o.resolvedModule.extension&&".tsx"!==o.resolvedModule.extension&&".d.ts"!==o.resolvedModule.extension&&".ets"!==o.resolvedModule.extension&&".d.ets"!==o.resolvedModule.extension&&(s=void 0),{resolvedFileName:s,failedLookupLocations:o.failedLookupLocations}}))},r.prototype.resolveTypeReferenceDirective=function(t,r,n){var i=this;return this.forwardJSONCall("resolveTypeReferenceDirective("+t+")",(function(){var a=JSON.parse(n),o=e.resolveTypeReferenceDirective(r,e.normalizeSlashes(t),a,i.host);return{resolvedFileName:o.resolvedTypeReferenceDirective?o.resolvedTypeReferenceDirective.resolvedFileName:void 0,primary:!o.resolvedTypeReferenceDirective||o.resolvedTypeReferenceDirective.primary,failedLookupLocations:o.failedLookupLocations}}))},r.prototype.getPreProcessedFileInfo=function(t,r){var n=this;return this.forwardJSONCall("getPreProcessedFileInfo('"+t+"')",(function(){var t=e.preProcessFile(e.getSnapshotText(r),!0,!0);return{referencedFiles:n.convertFileReferences(t.referencedFiles),importedFiles:n.convertFileReferences(t.importedFiles),ambientExternalModules:t.ambientExternalModules,isLibFile:t.isLibFile,typeReferenceDirectives:n.convertFileReferences(t.typeReferenceDirectives),libReferenceDirectives:n.convertFileReferences(t.libReferenceDirectives)}}))},r.prototype.getAutomaticTypeDirectiveNames=function(t){var r=this;return this.forwardJSONCall("getAutomaticTypeDirectiveNames('"+t+"')",(function(){var n=JSON.parse(t);return e.getAutomaticTypeDirectiveNames(n,r.host)}))},r.prototype.convertFileReferences=function(t){if(t){for(var r=[],n=0,i=t;n<i.length;n++){var a=i[n];r.push({path:e.normalizeSlashes(a.fileName),position:a.pos,length:a.end-a.pos})}return r}},r.prototype.getTSConfigFileInfo=function(t,r){var n=this;return this.forwardJSONCall("getTSConfigFileInfo('"+t+"')",(function(){var a=e.parseJsonText(t,e.getSnapshotText(r)),o=e.normalizeSlashes(t),s=e.parseJsonSourceFileConfigFileContent(a,n.host,e.getDirectoryPath(o),{},o);return{options:s.options,typeAcquisition:s.typeAcquisition,files:s.fileNames,raw:s.raw,errors:f(i(i([],a.parseDiagnostics),s.errors),"\r\n")}}))},r.prototype.getDefaultCompilationSettings=function(){return this.forwardJSONCall("getDefaultCompilationSettings()",(function(){return e.getDefaultCompilerOptions()}))},r.prototype.discoverTypings=function(t){var r=this,n=e.createGetCanonicalFileName(!1);return this.forwardJSONCall("discoverTypings()",(function(){var i=JSON.parse(t);return void 0===r.safeList&&(r.safeList=e.JsTyping.loadSafeList(r.host,e.toPath(i.safeListPath,i.safeListPath,n))),e.JsTyping.discoverTypings(r.host,(function(e){return r.logger.log(e)}),i.fileNames,e.toPath(i.projectRootPath,i.projectRootPath,n),r.safeList,i.packageNameToTypingLocation,i.typeAcquisition,i.unresolvedImports,i.typesRegistry)}))},r}(d),y=function(){function r(){this._shims=[]}return r.prototype.getServicesVersion=function(){return e.servicesVersion},r.prototype.createLanguageServiceShim=function(r){try{void 0===this.documentRegistry&&(this.documentRegistry=e.createDocumentRegistry(r.useCaseSensitiveFileNames&&r.useCaseSensitiveFileNames(),r.getCurrentDirectory()));var i=new n(r),a=e.createLanguageService(i,this.documentRegistry,!1);return new m(this,r,a)}catch(e){throw t(r,e),e}},r.prototype.createClassifierShim=function(e){try{return new _(this,e)}catch(r){throw t(e,r),r}},r.prototype.createCoreServicesShim=function(e){try{var r=new o(e);return new h(this,e,r)}catch(r){throw t(e,r),r}},r.prototype.close=function(){e.clear(this._shims),this.documentRegistry=void 0},r.prototype.registerShim=function(e){this._shims.push(e)},r.prototype.unregisterShim=function(e){for(var t=0;t<this._shims.length;t++)if(this._shims[t]===e)return void delete this._shims[t];throw new Error("Invalid operation")},r}();e.TypeScriptServicesFactory=y}(d||(d={})),function(){if("object"!=typeof globalThis)try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:!0}),__magic__.globalThis=__magic__,"undefined"==typeof globalThis&&(window.globalThis=window),delete Object.prototype.__magic__}catch(e){window.globalThis=window}}(),("undefined"==typeof process||process.browser)&&(globalThis.TypeScript=globalThis.TypeScript||{},globalThis.TypeScript.Services=globalThis.TypeScript.Services||{},globalThis.TypeScript.Services.TypeScriptServicesFactory=d.TypeScriptServicesFactory,globalThis.toolsVersion=d.versionMajorMinor),e.exports&&(e.exports=d),function(e){var t={since:"4.0",warnAfter:"4.1",message:"Use the appropriate method on 'ts.factory' or the 'factory' supplied by your transformation context instead."};e.createNodeArray=e.Debug.deprecate(e.factory.createNodeArray,t),e.createNumericLiteral=e.Debug.deprecate(e.factory.createNumericLiteral,t),e.createBigIntLiteral=e.Debug.deprecate(e.factory.createBigIntLiteral,t),e.createStringLiteral=e.Debug.deprecate(e.factory.createStringLiteral,t),e.createStringLiteralFromNode=e.Debug.deprecate(e.factory.createStringLiteralFromNode,t),e.createRegularExpressionLiteral=e.Debug.deprecate(e.factory.createRegularExpressionLiteral,t),e.createLoopVariable=e.Debug.deprecate(e.factory.createLoopVariable,t),e.createUniqueName=e.Debug.deprecate(e.factory.createUniqueName,t),e.createPrivateIdentifier=e.Debug.deprecate(e.factory.createPrivateIdentifier,t),e.createSuper=e.Debug.deprecate(e.factory.createSuper,t),e.createThis=e.Debug.deprecate(e.factory.createThis,t),e.createNull=e.Debug.deprecate(e.factory.createNull,t),e.createTrue=e.Debug.deprecate(e.factory.createTrue,t),e.createFalse=e.Debug.deprecate(e.factory.createFalse,t),e.createModifier=e.Debug.deprecate(e.factory.createModifier,t),e.createModifiersFromModifierFlags=e.Debug.deprecate(e.factory.createModifiersFromModifierFlags,t),e.createQualifiedName=e.Debug.deprecate(e.factory.createQualifiedName,t),e.updateQualifiedName=e.Debug.deprecate(e.factory.updateQualifiedName,t),e.createComputedPropertyName=e.Debug.deprecate(e.factory.createComputedPropertyName,t),e.updateComputedPropertyName=e.Debug.deprecate(e.factory.updateComputedPropertyName,t),e.createTypeParameterDeclaration=e.Debug.deprecate(e.factory.createTypeParameterDeclaration,t),e.updateTypeParameterDeclaration=e.Debug.deprecate(e.factory.updateTypeParameterDeclaration,t),e.createParameter=e.Debug.deprecate(e.factory.createParameterDeclaration,t),e.updateParameter=e.Debug.deprecate(e.factory.updateParameterDeclaration,t),e.createDecorator=e.Debug.deprecate(e.factory.createDecorator,t),e.updateDecorator=e.Debug.deprecate(e.factory.updateDecorator,t),e.createProperty=e.Debug.deprecate(e.factory.createPropertyDeclaration,t),e.updateProperty=e.Debug.deprecate(e.factory.updatePropertyDeclaration,t),e.createMethod=e.Debug.deprecate(e.factory.createMethodDeclaration,t),e.updateMethod=e.Debug.deprecate(e.factory.updateMethodDeclaration,t),e.createConstructor=e.Debug.deprecate(e.factory.createConstructorDeclaration,t),e.updateConstructor=e.Debug.deprecate(e.factory.updateConstructorDeclaration,t),e.createGetAccessor=e.Debug.deprecate(e.factory.createGetAccessorDeclaration,t),e.updateGetAccessor=e.Debug.deprecate(e.factory.updateGetAccessorDeclaration,t),e.createSetAccessor=e.Debug.deprecate(e.factory.createSetAccessorDeclaration,t),e.updateSetAccessor=e.Debug.deprecate(e.factory.updateSetAccessorDeclaration,t),e.createCallSignature=e.Debug.deprecate(e.factory.createCallSignature,t),e.updateCallSignature=e.Debug.deprecate(e.factory.updateCallSignature,t),e.createConstructSignature=e.Debug.deprecate(e.factory.createConstructSignature,t),e.updateConstructSignature=e.Debug.deprecate(e.factory.updateConstructSignature,t),e.updateIndexSignature=e.Debug.deprecate(e.factory.updateIndexSignature,t),e.createKeywordTypeNode=e.Debug.deprecate(e.factory.createKeywordTypeNode,t),e.createTypePredicateNodeWithModifier=e.Debug.deprecate(e.factory.createTypePredicateNode,t),e.updateTypePredicateNodeWithModifier=e.Debug.deprecate(e.factory.updateTypePredicateNode,t),e.createTypeReferenceNode=e.Debug.deprecate(e.factory.createTypeReferenceNode,t),e.updateTypeReferenceNode=e.Debug.deprecate(e.factory.updateTypeReferenceNode,t),e.createFunctionTypeNode=e.Debug.deprecate(e.factory.createFunctionTypeNode,t),e.updateFunctionTypeNode=e.Debug.deprecate(e.factory.updateFunctionTypeNode,t),e.createConstructorTypeNode=e.Debug.deprecate((function(t,r,n){return e.factory.createConstructorTypeNode(void 0,t,r,n)}),t),e.updateConstructorTypeNode=e.Debug.deprecate((function(t,r,n,i){return e.factory.updateConstructorTypeNode(t,t.modifiers,r,n,i)}),t),e.createTypeQueryNode=e.Debug.deprecate(e.factory.createTypeQueryNode,t),e.updateTypeQueryNode=e.Debug.deprecate(e.factory.updateTypeQueryNode,t),e.createTypeLiteralNode=e.Debug.deprecate(e.factory.createTypeLiteralNode,t),e.updateTypeLiteralNode=e.Debug.deprecate(e.factory.updateTypeLiteralNode,t),e.createArrayTypeNode=e.Debug.deprecate(e.factory.createArrayTypeNode,t),e.updateArrayTypeNode=e.Debug.deprecate(e.factory.updateArrayTypeNode,t),e.createTupleTypeNode=e.Debug.deprecate(e.factory.createTupleTypeNode,t),e.updateTupleTypeNode=e.Debug.deprecate(e.factory.updateTupleTypeNode,t),e.createOptionalTypeNode=e.Debug.deprecate(e.factory.createOptionalTypeNode,t),e.updateOptionalTypeNode=e.Debug.deprecate(e.factory.updateOptionalTypeNode,t),e.createRestTypeNode=e.Debug.deprecate(e.factory.createRestTypeNode,t),e.updateRestTypeNode=e.Debug.deprecate(e.factory.updateRestTypeNode,t),e.createUnionTypeNode=e.Debug.deprecate(e.factory.createUnionTypeNode,t),e.updateUnionTypeNode=e.Debug.deprecate(e.factory.updateUnionTypeNode,t),e.createIntersectionTypeNode=e.Debug.deprecate(e.factory.createIntersectionTypeNode,t),e.updateIntersectionTypeNode=e.Debug.deprecate(e.factory.updateIntersectionTypeNode,t),e.createConditionalTypeNode=e.Debug.deprecate(e.factory.createConditionalTypeNode,t),e.updateConditionalTypeNode=e.Debug.deprecate(e.factory.updateConditionalTypeNode,t),e.createInferTypeNode=e.Debug.deprecate(e.factory.createInferTypeNode,t),e.updateInferTypeNode=e.Debug.deprecate(e.factory.updateInferTypeNode,t),e.createImportTypeNode=e.Debug.deprecate(e.factory.createImportTypeNode,t),e.updateImportTypeNode=e.Debug.deprecate(e.factory.updateImportTypeNode,t),e.createParenthesizedType=e.Debug.deprecate(e.factory.createParenthesizedType,t),e.updateParenthesizedType=e.Debug.deprecate(e.factory.updateParenthesizedType,t),e.createThisTypeNode=e.Debug.deprecate(e.factory.createThisTypeNode,t),e.updateTypeOperatorNode=e.Debug.deprecate(e.factory.updateTypeOperatorNode,t),e.createIndexedAccessTypeNode=e.Debug.deprecate(e.factory.createIndexedAccessTypeNode,t),e.updateIndexedAccessTypeNode=e.Debug.deprecate(e.factory.updateIndexedAccessTypeNode,t),e.createMappedTypeNode=e.Debug.deprecate(e.factory.createMappedTypeNode,t),e.updateMappedTypeNode=e.Debug.deprecate(e.factory.updateMappedTypeNode,t),e.createLiteralTypeNode=e.Debug.deprecate(e.factory.createLiteralTypeNode,t),e.updateLiteralTypeNode=e.Debug.deprecate(e.factory.updateLiteralTypeNode,t),e.createObjectBindingPattern=e.Debug.deprecate(e.factory.createObjectBindingPattern,t),e.updateObjectBindingPattern=e.Debug.deprecate(e.factory.updateObjectBindingPattern,t),e.createArrayBindingPattern=e.Debug.deprecate(e.factory.createArrayBindingPattern,t),e.updateArrayBindingPattern=e.Debug.deprecate(e.factory.updateArrayBindingPattern,t),e.createBindingElement=e.Debug.deprecate(e.factory.createBindingElement,t),e.updateBindingElement=e.Debug.deprecate(e.factory.updateBindingElement,t),e.createArrayLiteral=e.Debug.deprecate(e.factory.createArrayLiteralExpression,t),e.updateArrayLiteral=e.Debug.deprecate(e.factory.updateArrayLiteralExpression,t),e.createObjectLiteral=e.Debug.deprecate(e.factory.createObjectLiteralExpression,t),e.updateObjectLiteral=e.Debug.deprecate(e.factory.updateObjectLiteralExpression,t),e.createPropertyAccess=e.Debug.deprecate(e.factory.createPropertyAccessExpression,t),e.updatePropertyAccess=e.Debug.deprecate(e.factory.updatePropertyAccessExpression,t),e.createPropertyAccessChain=e.Debug.deprecate(e.factory.createPropertyAccessChain,t),e.updatePropertyAccessChain=e.Debug.deprecate(e.factory.updatePropertyAccessChain,t),e.createElementAccess=e.Debug.deprecate(e.factory.createElementAccessExpression,t),e.updateElementAccess=e.Debug.deprecate(e.factory.updateElementAccessExpression,t),e.createElementAccessChain=e.Debug.deprecate(e.factory.createElementAccessChain,t),e.updateElementAccessChain=e.Debug.deprecate(e.factory.updateElementAccessChain,t),e.createCall=e.Debug.deprecate(e.factory.createCallExpression,t),e.updateCall=e.Debug.deprecate(e.factory.updateCallExpression,t),e.createCallChain=e.Debug.deprecate(e.factory.createCallChain,t),e.updateCallChain=e.Debug.deprecate(e.factory.updateCallChain,t),e.createNew=e.Debug.deprecate(e.factory.createNewExpression,t),e.updateNew=e.Debug.deprecate(e.factory.updateNewExpression,t),e.createTypeAssertion=e.Debug.deprecate(e.factory.createTypeAssertion,t),e.updateTypeAssertion=e.Debug.deprecate(e.factory.updateTypeAssertion,t),e.createParen=e.Debug.deprecate(e.factory.createParenthesizedExpression,t),e.updateParen=e.Debug.deprecate(e.factory.updateParenthesizedExpression,t),e.createFunctionExpression=e.Debug.deprecate(e.factory.createFunctionExpression,t),e.updateFunctionExpression=e.Debug.deprecate(e.factory.updateFunctionExpression,t),e.createDelete=e.Debug.deprecate(e.factory.createDeleteExpression,t),e.updateDelete=e.Debug.deprecate(e.factory.updateDeleteExpression,t),e.createTypeOf=e.Debug.deprecate(e.factory.createTypeOfExpression,t),e.updateTypeOf=e.Debug.deprecate(e.factory.updateTypeOfExpression,t),e.createVoid=e.Debug.deprecate(e.factory.createVoidExpression,t),e.updateVoid=e.Debug.deprecate(e.factory.updateVoidExpression,t),e.createAwait=e.Debug.deprecate(e.factory.createAwaitExpression,t),e.updateAwait=e.Debug.deprecate(e.factory.updateAwaitExpression,t),e.createPrefix=e.Debug.deprecate(e.factory.createPrefixUnaryExpression,t),e.updatePrefix=e.Debug.deprecate(e.factory.updatePrefixUnaryExpression,t),e.createPostfix=e.Debug.deprecate(e.factory.createPostfixUnaryExpression,t),e.updatePostfix=e.Debug.deprecate(e.factory.updatePostfixUnaryExpression,t),e.createBinary=e.Debug.deprecate(e.factory.createBinaryExpression,t),e.updateConditional=e.Debug.deprecate(e.factory.updateConditionalExpression,t),e.createTemplateExpression=e.Debug.deprecate(e.factory.createTemplateExpression,t),e.updateTemplateExpression=e.Debug.deprecate(e.factory.updateTemplateExpression,t),e.createTemplateHead=e.Debug.deprecate(e.factory.createTemplateHead,t),e.createTemplateMiddle=e.Debug.deprecate(e.factory.createTemplateMiddle,t),e.createTemplateTail=e.Debug.deprecate(e.factory.createTemplateTail,t),e.createNoSubstitutionTemplateLiteral=e.Debug.deprecate(e.factory.createNoSubstitutionTemplateLiteral,t),e.updateYield=e.Debug.deprecate(e.factory.updateYieldExpression,t),e.createSpread=e.Debug.deprecate(e.factory.createSpreadElement,t),e.updateSpread=e.Debug.deprecate(e.factory.updateSpreadElement,t),e.createOmittedExpression=e.Debug.deprecate(e.factory.createOmittedExpression,t),e.createAsExpression=e.Debug.deprecate(e.factory.createAsExpression,t),e.updateAsExpression=e.Debug.deprecate(e.factory.updateAsExpression,t),e.createNonNullExpression=e.Debug.deprecate(e.factory.createNonNullExpression,t),e.updateNonNullExpression=e.Debug.deprecate(e.factory.updateNonNullExpression,t),e.createNonNullChain=e.Debug.deprecate(e.factory.createNonNullChain,t),e.updateNonNullChain=e.Debug.deprecate(e.factory.updateNonNullChain,t),e.createMetaProperty=e.Debug.deprecate(e.factory.createMetaProperty,t),e.updateMetaProperty=e.Debug.deprecate(e.factory.updateMetaProperty,t),e.createTemplateSpan=e.Debug.deprecate(e.factory.createTemplateSpan,t),e.updateTemplateSpan=e.Debug.deprecate(e.factory.updateTemplateSpan,t),e.createSemicolonClassElement=e.Debug.deprecate(e.factory.createSemicolonClassElement,t),e.createBlock=e.Debug.deprecate(e.factory.createBlock,t),e.updateBlock=e.Debug.deprecate(e.factory.updateBlock,t),e.createVariableStatement=e.Debug.deprecate(e.factory.createVariableStatement,t),e.updateVariableStatement=e.Debug.deprecate(e.factory.updateVariableStatement,t),e.createEmptyStatement=e.Debug.deprecate(e.factory.createEmptyStatement,t),e.createExpressionStatement=e.Debug.deprecate(e.factory.createExpressionStatement,t),e.updateExpressionStatement=e.Debug.deprecate(e.factory.updateExpressionStatement,t),e.createStatement=e.Debug.deprecate(e.factory.createExpressionStatement,t),e.updateStatement=e.Debug.deprecate(e.factory.updateExpressionStatement,t),e.createIf=e.Debug.deprecate(e.factory.createIfStatement,t),e.updateIf=e.Debug.deprecate(e.factory.updateIfStatement,t),e.createDo=e.Debug.deprecate(e.factory.createDoStatement,t),e.updateDo=e.Debug.deprecate(e.factory.updateDoStatement,t),e.createWhile=e.Debug.deprecate(e.factory.createWhileStatement,t),e.updateWhile=e.Debug.deprecate(e.factory.updateWhileStatement,t),e.createFor=e.Debug.deprecate(e.factory.createForStatement,t),e.updateFor=e.Debug.deprecate(e.factory.updateForStatement,t),e.createForIn=e.Debug.deprecate(e.factory.createForInStatement,t),e.updateForIn=e.Debug.deprecate(e.factory.updateForInStatement,t),e.createForOf=e.Debug.deprecate(e.factory.createForOfStatement,t),e.updateForOf=e.Debug.deprecate(e.factory.updateForOfStatement,t),e.createContinue=e.Debug.deprecate(e.factory.createContinueStatement,t),e.updateContinue=e.Debug.deprecate(e.factory.updateContinueStatement,t),e.createBreak=e.Debug.deprecate(e.factory.createBreakStatement,t),e.updateBreak=e.Debug.deprecate(e.factory.updateBreakStatement,t),e.createReturn=e.Debug.deprecate(e.factory.createReturnStatement,t),e.updateReturn=e.Debug.deprecate(e.factory.updateReturnStatement,t),e.createWith=e.Debug.deprecate(e.factory.createWithStatement,t),e.updateWith=e.Debug.deprecate(e.factory.updateWithStatement,t),e.createSwitch=e.Debug.deprecate(e.factory.createSwitchStatement,t),e.updateSwitch=e.Debug.deprecate(e.factory.updateSwitchStatement,t),e.createLabel=e.Debug.deprecate(e.factory.createLabeledStatement,t),e.updateLabel=e.Debug.deprecate(e.factory.updateLabeledStatement,t),e.createThrow=e.Debug.deprecate(e.factory.createThrowStatement,t),e.updateThrow=e.Debug.deprecate(e.factory.updateThrowStatement,t),e.createTry=e.Debug.deprecate(e.factory.createTryStatement,t),e.updateTry=e.Debug.deprecate(e.factory.updateTryStatement,t),e.createDebuggerStatement=e.Debug.deprecate(e.factory.createDebuggerStatement,t),e.createVariableDeclarationList=e.Debug.deprecate(e.factory.createVariableDeclarationList,t),e.updateVariableDeclarationList=e.Debug.deprecate(e.factory.updateVariableDeclarationList,t),e.createFunctionDeclaration=e.Debug.deprecate(e.factory.createFunctionDeclaration,t),e.updateFunctionDeclaration=e.Debug.deprecate(e.factory.updateFunctionDeclaration,t),e.createClassDeclaration=e.Debug.deprecate(e.factory.createClassDeclaration,t),e.updateClassDeclaration=e.Debug.deprecate(e.factory.updateClassDeclaration,t),e.createInterfaceDeclaration=e.Debug.deprecate(e.factory.createInterfaceDeclaration,t),e.updateInterfaceDeclaration=e.Debug.deprecate(e.factory.updateInterfaceDeclaration,t),e.createTypeAliasDeclaration=e.Debug.deprecate(e.factory.createTypeAliasDeclaration,t),e.updateTypeAliasDeclaration=e.Debug.deprecate(e.factory.updateTypeAliasDeclaration,t),e.createEnumDeclaration=e.Debug.deprecate(e.factory.createEnumDeclaration,t),e.updateEnumDeclaration=e.Debug.deprecate(e.factory.updateEnumDeclaration,t),e.createModuleDeclaration=e.Debug.deprecate(e.factory.createModuleDeclaration,t),e.updateModuleDeclaration=e.Debug.deprecate(e.factory.updateModuleDeclaration,t),e.createModuleBlock=e.Debug.deprecate(e.factory.createModuleBlock,t),e.updateModuleBlock=e.Debug.deprecate(e.factory.updateModuleBlock,t),e.createCaseBlock=e.Debug.deprecate(e.factory.createCaseBlock,t),e.updateCaseBlock=e.Debug.deprecate(e.factory.updateCaseBlock,t),e.createNamespaceExportDeclaration=e.Debug.deprecate(e.factory.createNamespaceExportDeclaration,t),e.updateNamespaceExportDeclaration=e.Debug.deprecate(e.factory.updateNamespaceExportDeclaration,t),e.createImportEqualsDeclaration=e.Debug.deprecate(e.factory.createImportEqualsDeclaration,t),e.updateImportEqualsDeclaration=e.Debug.deprecate(e.factory.updateImportEqualsDeclaration,t),e.createImportDeclaration=e.Debug.deprecate(e.factory.createImportDeclaration,t),e.updateImportDeclaration=e.Debug.deprecate(e.factory.updateImportDeclaration,t),e.createNamespaceImport=e.Debug.deprecate(e.factory.createNamespaceImport,t),e.updateNamespaceImport=e.Debug.deprecate(e.factory.updateNamespaceImport,t),e.createNamedImports=e.Debug.deprecate(e.factory.createNamedImports,t),e.updateNamedImports=e.Debug.deprecate(e.factory.updateNamedImports,t),e.createImportSpecifier=e.Debug.deprecate(e.factory.createImportSpecifier,t),e.updateImportSpecifier=e.Debug.deprecate(e.factory.updateImportSpecifier,t),e.createExportAssignment=e.Debug.deprecate(e.factory.createExportAssignment,t),e.updateExportAssignment=e.Debug.deprecate(e.factory.updateExportAssignment,t),e.createNamedExports=e.Debug.deprecate(e.factory.createNamedExports,t),e.updateNamedExports=e.Debug.deprecate(e.factory.updateNamedExports,t),e.createExportSpecifier=e.Debug.deprecate(e.factory.createExportSpecifier,t),e.updateExportSpecifier=e.Debug.deprecate(e.factory.updateExportSpecifier,t),e.createExternalModuleReference=e.Debug.deprecate(e.factory.createExternalModuleReference,t),e.updateExternalModuleReference=e.Debug.deprecate(e.factory.updateExternalModuleReference,t),e.createJSDocTypeExpression=e.Debug.deprecate(e.factory.createJSDocTypeExpression,t),e.createJSDocTypeTag=e.Debug.deprecate(e.factory.createJSDocTypeTag,t),e.createJSDocReturnTag=e.Debug.deprecate(e.factory.createJSDocReturnTag,t),e.createJSDocThisTag=e.Debug.deprecate(e.factory.createJSDocThisTag,t),e.createJSDocComment=e.Debug.deprecate(e.factory.createJSDocComment,t),e.createJSDocParameterTag=e.Debug.deprecate(e.factory.createJSDocParameterTag,t),e.createJSDocClassTag=e.Debug.deprecate(e.factory.createJSDocClassTag,t),e.createJSDocAugmentsTag=e.Debug.deprecate(e.factory.createJSDocAugmentsTag,t),e.createJSDocEnumTag=e.Debug.deprecate(e.factory.createJSDocEnumTag,t),e.createJSDocTemplateTag=e.Debug.deprecate(e.factory.createJSDocTemplateTag,t),e.createJSDocTypedefTag=e.Debug.deprecate(e.factory.createJSDocTypedefTag,t),e.createJSDocCallbackTag=e.Debug.deprecate(e.factory.createJSDocCallbackTag,t),e.createJSDocSignature=e.Debug.deprecate(e.factory.createJSDocSignature,t),e.createJSDocPropertyTag=e.Debug.deprecate(e.factory.createJSDocPropertyTag,t),e.createJSDocTypeLiteral=e.Debug.deprecate(e.factory.createJSDocTypeLiteral,t),e.createJSDocImplementsTag=e.Debug.deprecate(e.factory.createJSDocImplementsTag,t),e.createJSDocAuthorTag=e.Debug.deprecate(e.factory.createJSDocAuthorTag,t),e.createJSDocPublicTag=e.Debug.deprecate(e.factory.createJSDocPublicTag,t),e.createJSDocPrivateTag=e.Debug.deprecate(e.factory.createJSDocPrivateTag,t),e.createJSDocProtectedTag=e.Debug.deprecate(e.factory.createJSDocProtectedTag,t),e.createJSDocReadonlyTag=e.Debug.deprecate(e.factory.createJSDocReadonlyTag,t),e.createJSDocTag=e.Debug.deprecate(e.factory.createJSDocUnknownTag,t),e.createJsxElement=e.Debug.deprecate(e.factory.createJsxElement,t),e.updateJsxElement=e.Debug.deprecate(e.factory.updateJsxElement,t),e.createJsxSelfClosingElement=e.Debug.deprecate(e.factory.createJsxSelfClosingElement,t),e.updateJsxSelfClosingElement=e.Debug.deprecate(e.factory.updateJsxSelfClosingElement,t),e.createJsxOpeningElement=e.Debug.deprecate(e.factory.createJsxOpeningElement,t),e.updateJsxOpeningElement=e.Debug.deprecate(e.factory.updateJsxOpeningElement,t),e.createJsxClosingElement=e.Debug.deprecate(e.factory.createJsxClosingElement,t),e.updateJsxClosingElement=e.Debug.deprecate(e.factory.updateJsxClosingElement,t),e.createJsxFragment=e.Debug.deprecate(e.factory.createJsxFragment,t),e.createJsxText=e.Debug.deprecate(e.factory.createJsxText,t),e.updateJsxText=e.Debug.deprecate(e.factory.updateJsxText,t),e.createJsxOpeningFragment=e.Debug.deprecate(e.factory.createJsxOpeningFragment,t),e.createJsxJsxClosingFragment=e.Debug.deprecate(e.factory.createJsxJsxClosingFragment,t),e.updateJsxFragment=e.Debug.deprecate(e.factory.updateJsxFragment,t),e.createJsxAttribute=e.Debug.deprecate(e.factory.createJsxAttribute,t),e.updateJsxAttribute=e.Debug.deprecate(e.factory.updateJsxAttribute,t),e.createJsxAttributes=e.Debug.deprecate(e.factory.createJsxAttributes,t),e.updateJsxAttributes=e.Debug.deprecate(e.factory.updateJsxAttributes,t),e.createJsxSpreadAttribute=e.Debug.deprecate(e.factory.createJsxSpreadAttribute,t),e.updateJsxSpreadAttribute=e.Debug.deprecate(e.factory.updateJsxSpreadAttribute,t),e.createJsxExpression=e.Debug.deprecate(e.factory.createJsxExpression,t),e.updateJsxExpression=e.Debug.deprecate(e.factory.updateJsxExpression,t),e.createCaseClause=e.Debug.deprecate(e.factory.createCaseClause,t),e.updateCaseClause=e.Debug.deprecate(e.factory.updateCaseClause,t),e.createDefaultClause=e.Debug.deprecate(e.factory.createDefaultClause,t),e.updateDefaultClause=e.Debug.deprecate(e.factory.updateDefaultClause,t),e.createHeritageClause=e.Debug.deprecate(e.factory.createHeritageClause,t),e.updateHeritageClause=e.Debug.deprecate(e.factory.updateHeritageClause,t),e.createCatchClause=e.Debug.deprecate(e.factory.createCatchClause,t),e.updateCatchClause=e.Debug.deprecate(e.factory.updateCatchClause,t),e.createPropertyAssignment=e.Debug.deprecate(e.factory.createPropertyAssignment,t),e.updatePropertyAssignment=e.Debug.deprecate(e.factory.updatePropertyAssignment,t),e.createShorthandPropertyAssignment=e.Debug.deprecate(e.factory.createShorthandPropertyAssignment,t),e.updateShorthandPropertyAssignment=e.Debug.deprecate(e.factory.updateShorthandPropertyAssignment,t),e.createSpreadAssignment=e.Debug.deprecate(e.factory.createSpreadAssignment,t),e.updateSpreadAssignment=e.Debug.deprecate(e.factory.updateSpreadAssignment,t),e.createEnumMember=e.Debug.deprecate(e.factory.createEnumMember,t),e.updateEnumMember=e.Debug.deprecate(e.factory.updateEnumMember,t),e.updateSourceFileNode=e.Debug.deprecate(e.factory.updateSourceFile,t),e.createNotEmittedStatement=e.Debug.deprecate(e.factory.createNotEmittedStatement,t),e.createPartiallyEmittedExpression=e.Debug.deprecate(e.factory.createPartiallyEmittedExpression,t),e.updatePartiallyEmittedExpression=e.Debug.deprecate(e.factory.updatePartiallyEmittedExpression,t),e.createCommaList=e.Debug.deprecate(e.factory.createCommaListExpression,t),e.updateCommaList=e.Debug.deprecate(e.factory.updateCommaListExpression,t),e.createBundle=e.Debug.deprecate(e.factory.createBundle,t),e.updateBundle=e.Debug.deprecate(e.factory.updateBundle,t),e.createImmediatelyInvokedFunctionExpression=e.Debug.deprecate(e.factory.createImmediatelyInvokedFunctionExpression,t),e.createImmediatelyInvokedArrowFunction=e.Debug.deprecate(e.factory.createImmediatelyInvokedArrowFunction,t),e.createVoidZero=e.Debug.deprecate(e.factory.createVoidZero,t),e.createExportDefault=e.Debug.deprecate(e.factory.createExportDefault,t),e.createExternalModuleExport=e.Debug.deprecate(e.factory.createExternalModuleExport,t),e.createNamespaceExport=e.Debug.deprecate(e.factory.createNamespaceExport,t),e.updateNamespaceExport=e.Debug.deprecate(e.factory.updateNamespaceExport,t),e.createToken=e.Debug.deprecate((function(t){return e.factory.createToken(t)}),t),e.createIdentifier=e.Debug.deprecate((function(t){return e.factory.createIdentifier(t,void 0,void 0)}),t),e.createTempVariable=e.Debug.deprecate((function(t){return e.factory.createTempVariable(t,void 0)}),t),e.getGeneratedNameForNode=e.Debug.deprecate((function(t){return e.factory.getGeneratedNameForNode(t,void 0)}),t),e.createOptimisticUniqueName=e.Debug.deprecate((function(t){return e.factory.createUniqueName(t,16)}),t),e.createFileLevelUniqueName=e.Debug.deprecate((function(t){return e.factory.createUniqueName(t,48)}),t),e.createIndexSignature=e.Debug.deprecate((function(t,r,n,i){return e.factory.createIndexSignature(t,r,n,i)}),t),e.createTypePredicateNode=e.Debug.deprecate((function(t,r){return e.factory.createTypePredicateNode(void 0,t,r)}),t),e.updateTypePredicateNode=e.Debug.deprecate((function(t,r,n){return e.factory.updateTypePredicateNode(t,void 0,r,n)}),t),e.createLiteral=e.Debug.deprecate((function(t){return"number"==typeof t?e.factory.createNumericLiteral(t):"object"==typeof t&&"base10Value"in t?e.factory.createBigIntLiteral(t):"boolean"==typeof t?t?e.factory.createTrue():e.factory.createFalse():"string"==typeof t?e.factory.createStringLiteral(t,void 0):e.factory.createStringLiteralFromNode(t)}),{since:"4.0",warnAfter:"4.1",message:"Use `factory.createStringLiteral`, `factory.createStringLiteralFromNode`, `factory.createNumericLiteral`, `factory.createBigIntLiteral`, `factory.createTrue`, `factory.createFalse`, or the factory supplied by your transformation context instead."}),e.createMethodSignature=e.Debug.deprecate((function(t,r,n,i,a){return e.factory.createMethodSignature(void 0,i,a,t,r,n)}),t),e.updateMethodSignature=e.Debug.deprecate((function(t,r,n,i,a,o){return e.factory.updateMethodSignature(t,t.modifiers,a,o,r,n,i)}),t),e.createTypeOperatorNode=e.Debug.deprecate((function(t,r){var n;return r?n=t:(r=t,n=139),e.factory.createTypeOperatorNode(n,r)}),t),e.createTaggedTemplate=e.Debug.deprecate((function(t,r,n){var i;return n?i=r:n=r,e.factory.createTaggedTemplateExpression(t,i,n)}),t),e.updateTaggedTemplate=e.Debug.deprecate((function(t,r,n,i){var a;return i?a=n:i=n,e.factory.updateTaggedTemplateExpression(t,r,a,i)}),t),e.updateBinary=e.Debug.deprecate((function(t,r,n,i){return void 0===i&&(i=t.operatorToken),"number"==typeof i&&(i=i===t.operatorToken.kind?t.operatorToken:e.factory.createToken(i)),e.factory.updateBinaryExpression(t,r,i,n)}),t),e.createConditional=e.Debug.deprecate((function(t,r,n,i,a){return 5===arguments.length?e.factory.createConditionalExpression(t,r,n,i,a):3===arguments.length?e.factory.createConditionalExpression(t,e.factory.createToken(57),r,e.factory.createToken(58),n):e.Debug.fail("Argument count mismatch")}),t),e.createYield=e.Debug.deprecate((function(t,r){var n;return r?n=t:r=t,e.factory.createYieldExpression(n,r)}),t),e.createClassExpression=e.Debug.deprecate((function(t,r,n,i,a){return e.factory.createClassExpression(void 0,t,r,n,i,a)}),t),e.updateClassExpression=e.Debug.deprecate((function(t,r,n,i,a,o){return e.factory.updateClassExpression(t,void 0,r,n,i,a,o)}),t),e.createPropertySignature=e.Debug.deprecate((function(t,r,n,i,a){var o=e.factory.createPropertySignature(t,r,n,i);return o.initializer=a,o}),t),e.updatePropertySignature=e.Debug.deprecate((function(t,r,n,i,a,o){var s=e.factory.updatePropertySignature(t,r,n,i,a);return t.initializer!==o&&(s===t&&(s=e.factory.cloneNode(t)),s.initializer=o),s}),t),e.createExpressionWithTypeArguments=e.Debug.deprecate((function(t,r){return e.factory.createExpressionWithTypeArguments(r,t)}),t),e.updateExpressionWithTypeArguments=e.Debug.deprecate((function(t,r,n){return e.factory.updateExpressionWithTypeArguments(t,n,r)}),t),e.createArrowFunction=e.Debug.deprecate((function(t,r,n,i,a,o){return 6===arguments.length?e.factory.createArrowFunction(t,r,n,i,a,o):5===arguments.length?e.factory.createArrowFunction(t,r,n,i,void 0,a):e.Debug.fail("Argument count mismatch")}),t),e.updateArrowFunction=e.Debug.deprecate((function(t,r,n,i,a,o,s){return 7===arguments.length?e.factory.updateArrowFunction(t,r,n,i,a,o,s):6===arguments.length?e.factory.updateArrowFunction(t,r,n,i,a,t.equalsGreaterThanToken,o):e.Debug.fail("Argument count mismatch")}),t),e.createVariableDeclaration=e.Debug.deprecate((function(t,r,n,i){return 4===arguments.length?e.factory.createVariableDeclaration(t,r,n,i):arguments.length>=1&&arguments.length<=3?e.factory.createVariableDeclaration(t,void 0,r,n):e.Debug.fail("Argument count mismatch")}),t),e.updateVariableDeclaration=e.Debug.deprecate((function(t,r,n,i,a){return 5===arguments.length?e.factory.updateVariableDeclaration(t,r,n,i,a):4===arguments.length?e.factory.updateVariableDeclaration(t,r,t.exclamationToken,n,i):e.Debug.fail("Argument count mismatch")}),t),e.createImportClause=e.Debug.deprecate((function(t,r,n){return void 0===n&&(n=!1),e.factory.createImportClause(n,t,r)}),t),e.updateImportClause=e.Debug.deprecate((function(t,r,n,i){return e.factory.updateImportClause(t,i,r,n)}),t),e.createExportDeclaration=e.Debug.deprecate((function(t,r,n,i,a){return void 0===a&&(a=!1),e.factory.createExportDeclaration(t,r,a,n,i)}),t),e.updateExportDeclaration=e.Debug.deprecate((function(t,r,n,i,a,o){return e.factory.updateExportDeclaration(t,r,n,o,i,a)}),t),e.createJSDocParamTag=e.Debug.deprecate((function(t,r,n,i){return e.factory.createJSDocParameterTag(void 0,t,r,n,!1,i)}),t),e.createComma=e.Debug.deprecate((function(t,r){return e.factory.createComma(t,r)}),t),e.createLessThan=e.Debug.deprecate((function(t,r){return e.factory.createLessThan(t,r)}),t),e.createAssignment=e.Debug.deprecate((function(t,r){return e.factory.createAssignment(t,r)}),t),e.createStrictEquality=e.Debug.deprecate((function(t,r){return e.factory.createStrictEquality(t,r)}),t),e.createStrictInequality=e.Debug.deprecate((function(t,r){return e.factory.createStrictInequality(t,r)}),t),e.createAdd=e.Debug.deprecate((function(t,r){return e.factory.createAdd(t,r)}),t),e.createSubtract=e.Debug.deprecate((function(t,r){return e.factory.createSubtract(t,r)}),t),e.createLogicalAnd=e.Debug.deprecate((function(t,r){return e.factory.createLogicalAnd(t,r)}),t),e.createLogicalOr=e.Debug.deprecate((function(t,r){return e.factory.createLogicalOr(t,r)}),t),e.createPostfixIncrement=e.Debug.deprecate((function(t){return e.factory.createPostfixIncrement(t)}),t),e.createLogicalNot=e.Debug.deprecate((function(t){return e.factory.createLogicalNot(t)}),t),e.createNode=e.Debug.deprecate((function(t,r,n){return void 0===r&&(r=0),void 0===n&&(n=0),e.setTextRangePosEnd(300===t?e.parseBaseNodeFactory.createBaseSourceFileNode(t):78===t?e.parseBaseNodeFactory.createBaseIdentifierNode(t):79===t?e.parseBaseNodeFactory.createBasePrivateIdentifierNode(t):e.isNodeKind(t)?e.parseBaseNodeFactory.createBaseNode(t):e.parseBaseNodeFactory.createBaseTokenNode(t),r,n)}),{since:"4.0",warnAfter:"4.1",message:"Use an appropriate `factory` method instead."}),e.getMutableClone=e.Debug.deprecate((function(t){var r=e.factory.cloneNode(t);return e.setTextRange(r,t),e.setParent(r,t.parent),r}),{since:"4.0",warnAfter:"4.1",message:"Use an appropriate `factory.update...` method instead, use `setCommentRange` or `setSourceMapRange`, and avoid setting `parent`."}),e.isTypeAssertion=e.Debug.deprecate((function(e){return 207===e.kind}),{since:"4.0",warnAfter:"4.1",message:"Use `isTypeAssertionExpression` instead."})}(d||(d={})),function(e){e.cookBookMsg=[],e.cookBookTag=[];for(var t=0;t<=151;t++)e.cookBookMsg[t]="";e.cookBookTag[1]="Objects with property names that are not identifiers are not supported (arkts-identifiers-as-prop-names)",e.cookBookTag[2]='"Symbol()" API is not supported (arkts-no-symbol)',e.cookBookTag[3]='Private "#" identifiers are not supported (arkts-no-private-identifiers)',e.cookBookTag[4]="Use unique names for types and namespaces. (arkts-unique-names)",e.cookBookTag[5]='Use "let" instead of "var" (arkts-no-var)',e.cookBookTag[6]="",e.cookBookTag[7]="",e.cookBookTag[8]='Use explicit types instead of "any", "unknown" (arkts-no-any-unknown)',e.cookBookTag[9]="",e.cookBookTag[10]="",e.cookBookTag[11]="",e.cookBookTag[12]="",e.cookBookTag[13]="",e.cookBookTag[14]='Use "class" instead of a type with call signature (arkts-no-call-signatures)',e.cookBookTag[15]='Use "class" instead of a type with constructor signature (arkts-no-ctor-signatures-type)',e.cookBookTag[16]="Only one static block is supported (arkts-no-multiple-static-blocks)",e.cookBookTag[17]="Indexed signatures are not supported (arkts-no-indexed-signatures)",e.cookBookTag[18]="",e.cookBookTag[19]="Use inheritance instead of intersection types (arkts-no-intersection-types)",e.cookBookTag[20]="",e.cookBookTag[21]='Type notation using "this" is not supported (arkts-no-typing-with-this)',e.cookBookTag[22]="Conditional types are not supported (arkts-no-conditional-types)",e.cookBookTag[23]="",e.cookBookTag[24]="",e.cookBookTag[25]='Declaring fields in "constructor" is not supported (arkts-no-ctor-prop-decls)',e.cookBookTag[26]="",e.cookBookTag[27]="Construct signatures are not supported in interfaces (arkts-no-ctor-signatures-iface)",e.cookBookTag[28]="Indexed access types are not supported (arkts-no-aliases-by-index)",e.cookBookTag[29]="Indexed access is not supported for fields (arkts-no-props-by-index)",e.cookBookTag[30]="Structural typing is not supported (arkts-no-structural-typing)",e.cookBookTag[31]="",e.cookBookTag[32]="",e.cookBookTag[33]="",e.cookBookTag[34]="Type inference in case of generic function calls is limited (arkts-no-inferred-generic-params)",e.cookBookTag[35]="",e.cookBookTag[36]="",e.cookBookTag[37]="RegExp literals are not supported (arkts-no-regexp-literals)",e.cookBookTag[38]="Object literal must correspond to some explicitly declared class or interface (arkts-no-untyped-obj-literals)",e.cookBookTag[39]="",e.cookBookTag[40]="Object literals cannot be used as type declarations (arkts-no-obj-literals-as-types)",e.cookBookTag[41]="",e.cookBookTag[42]="",e.cookBookTag[43]="Array literals must contain elements of only inferrable types (arkts-no-noninferrable-arr-literals)",e.cookBookTag[44]="",e.cookBookTag[45]="",e.cookBookTag[46]="Use arrow functions instead of function expressions (arkts-no-func-expressions)",e.cookBookTag[47]="",e.cookBookTag[48]="",e.cookBookTag[49]="Use generic functions instead of generic arrow functions (arkts-no-generic-lambdas)",e.cookBookTag[50]="Class literals are not supported (arkts-no-class-literals)",e.cookBookTag[51]='Classes cannot be specified in "implements" clause (arkts-implements-only-iface)',e.cookBookTag[52]="Reassigning object methods is not supported (arkts-no-method-reassignment)",e.cookBookTag[53]='Only "as T" syntax is supported for type casts (arkts-as-casts)',e.cookBookTag[54]="JSX expressions are not supported (arkts-no-jsx)",e.cookBookTag[55]='Unary operators "+", "-" and "~" work only on numbers (arkts-no-polymorphic-unops)',e.cookBookTag[56]="",e.cookBookTag[57]="",e.cookBookTag[58]="",e.cookBookTag[59]='"delete" operator is not supported (arkts-no-delete)',e.cookBookTag[60]='"typeof" operator is allowed only in expression contexts (arkts-no-type-query)',e.cookBookTag[61]="",e.cookBookTag[62]="",e.cookBookTag[63]="",e.cookBookTag[64]="",e.cookBookTag[65]='"instanceof" operator is partially supported (arkts-instanceof-ref-types)',e.cookBookTag[66]='"in" operator is not supported (arkts-no-in)',e.cookBookTag[67]="",e.cookBookTag[68]="",e.cookBookTag[69]="Destructuring assignment is not supported (arkts-no-destruct-assignment)",e.cookBookTag[70]="",e.cookBookTag[71]='The comma operator "," is supported only in "for" loops (arkts-no-comma-outside-loops)',e.cookBookTag[72]="",e.cookBookTag[73]="",e.cookBookTag[74]="Destructuring variable declarations are not supported (arkts-no-destruct-decls)",e.cookBookTag[75]="",e.cookBookTag[76]="",e.cookBookTag[77]="",e.cookBookTag[78]="",e.cookBookTag[79]="Type annotation in catch clause is not supported (arkts-no-types-in-catch)",e.cookBookTag[80]='"for .. in" is not supported (arkts-no-for-in)',e.cookBookTag[81]="",e.cookBookTag[82]="",e.cookBookTag[83]="Mapped type expression is not supported (arkts-no-mapped-types)",e.cookBookTag[84]='"with" statement is not supported (arkts-no-with)',e.cookBookTag[85]="",e.cookBookTag[86]="",e.cookBookTag[87]='"throw" statements cannot accept values of arbitrary types (arkts-limited-throw)',e.cookBookTag[88]="",e.cookBookTag[89]="",e.cookBookTag[90]="Function return type inference is limited (arkts-no-implicit-return-types)",e.cookBookTag[91]="Destructuring parameter declarations are not supported (arkts-no-destruct-params)",e.cookBookTag[92]="Nested functions are not supported (arkts-no-nested-funcs)",e.cookBookTag[93]='Using "this" inside stand-alone functions is not supported (arkts-no-standalone-this)',e.cookBookTag[94]="Generator functions are not supported (arkts-no-generators)",e.cookBookTag[95]="",e.cookBookTag[96]='Type guarding is supported with "instanceof" and "as" (arkts-no-is)',e.cookBookTag[97]="",e.cookBookTag[98]="",e.cookBookTag[99]="It is possible to spread only arrays or classes derived from arrays into the rest parameter or array literals (arkts-no-spread)",e.cookBookTag[100]="",e.cookBookTag[101]="",e.cookBookTag[102]="Interface can not extend interfaces with the same method (arkts-no-extend-same-prop)",e.cookBookTag[103]="Declaration merging is not supported (arkts-no-decl-merging)",e.cookBookTag[104]="Interfaces cannot extend classes (arkts-extends-only-class)",e.cookBookTag[105]="",e.cookBookTag[106]="Constructor function type is not supported (arkts-no-ctor-signatures-funcs)",e.cookBookTag[107]="",e.cookBookTag[108]="",e.cookBookTag[109]="",e.cookBookTag[110]="",e.cookBookTag[111]="Enumeration members can be initialized only with compile time expressions of the same type (arkts-no-enum-mixed-types)",e.cookBookTag[112]="",e.cookBookTag[113]='"enum" declaration merging is not supported (arkts-no-enum-merging)',e.cookBookTag[114]="Namespaces cannot be used as objects (arkts-no-ns-as-obj)",e.cookBookTag[115]="",e.cookBookTag[116]="Non-declaration statements in namespaces are not supported (single semicolons are considered as empty non-delcaration statements) (arkts-no-ns-statements)",e.cookBookTag[117]="",e.cookBookTag[118]="Special import type declarations are not supported (arkts-no-special-imports)",e.cookBookTag[119]="Importing a module for side-effects only is not supported (arkts-no-side-effects-imports)",e.cookBookTag[120]='"import default as ..." is not supported (arkts-no-import-default-as)',e.cookBookTag[121]='"require" and "import" assignment are not supported (arkts-no-require)',e.cookBookTag[122]="",e.cookBookTag[123]="",e.cookBookTag[124]="",e.cookBookTag[125]="",e.cookBookTag[126]='"export = ..." assignment is not supported (arkts-no-export-assignment)',e.cookBookTag[127]='Special "export type" declarations are not supported (arkts-no-special-exports)',e.cookBookTag[128]="Ambient module declaration is not supported (arkts-no-ambient-decls)",e.cookBookTag[129]="Wildcards in module names are not supported (arkts-no-module-wildcards)",e.cookBookTag[130]="Universal module definitions (UMD) are not supported (arkts-no-umd)",e.cookBookTag[131]="",e.cookBookTag[132]='"new.target" is not supported (arkts-no-new-target)',e.cookBookTag[133]="",e.cookBookTag[134]="Definite assignment assertions are not supported (arkts-no-definite-assignment)",e.cookBookTag[135]="",e.cookBookTag[136]="Prototype assignment is not supported (arkts-no-prototype-assignment)",e.cookBookTag[137]='"globalThis" is not supported (arkts-no-globalthis)',e.cookBookTag[138]="Some of utility types are not supported (arkts-no-utility-types)",e.cookBookTag[139]="Declaring properties on functions is not supported (arkts-no-func-props)",e.cookBookTag[140]='"Function.apply", "Function.bind", "Function.call" are not supported (arkts-no-func-apply-bind-call)',e.cookBookTag[141]="",e.cookBookTag[142]='"as const" assertions are not supported (arkts-no-as-const)',e.cookBookTag[143]="Import assertions are not supported (arkts-no-import-assertions)",e.cookBookTag[144]="Usage of standard library is restricted (arkts-limited-stdlib)",e.cookBookTag[145]="Strict type checking is enforced (arkts-strict-typing)",e.cookBookTag[146]="Switching off type checks with in-place comments is not allowed (arkts-strict-typing-required)",e.cookBookTag[147]="No dependencies on TypeScript code are currently allowed (arkts-no-ts-deps)",e.cookBookTag[148]="No decorators except ArkUI decorators are currently allowed (arkts-no-decorators-except-arkui)",e.cookBookTag[149]="Classes cannot be used as objects (arkts-no-classes-as-obj)",e.cookBookTag[150]='"import" statements after other statements are not allowed (arkts-no-misplaced-imports)',e.cookBookTag[151]='Usage of "ESObject" type is restricted (arkts-limited-esobj)'}(d||(d={})),function(e){!function(e){e.TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE=2322,e.TYPE_UNKNOWN_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE=/^Type '(.*)\bunknown\b(.*)' is not assignable to type '.*'\.$/,e.TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE=/^Type 'null' is not assignable to type '.*'\.$/,e.TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE=/^Type 'undefined' is not assignable to type '.*'\.$/,e.ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE=2345,e.ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE=/^Argument of type 'null' is not assignable to parameter of type '.*'\.$/,e.ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE=/^Argument of type 'undefined' is not assignable to parameter of type '.*'\.$/,e.NO_OVERLOAD_MATCHES_THIS_CALL_ERROR_CODE=2769;var t=function(){function t(e){this.inLibCall=!1,this.filteredDiagnosticMessages=[],this.filteredDiagnosticMessages=e}return t.prototype.configure=function(e,t){this.inLibCall=e,this.diagnosticMessages=t},t.prototype.checkMessageText=function(t){return!this.inLibCall||!(t.match(e.ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE)||t.match(e.ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE)||t.match(e.TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE)||t.match(e.TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))},t.prototype.checkMessageChain=function(t){if(t.code==e.TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE){if(t.messageText.match(e.TYPE_UNKNOWN_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))return!1;if(this.inLibCall&&t.messageText.match(e.TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))return!1;if(this.inLibCall&&t.messageText.match(e.TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))return!1}if(t.code==e.ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE){if(this.inLibCall&&t.messageText.match(e.ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE))return!1;if(this.inLibCall&&t.messageText.match(e.ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE))return!1}return null==t.next||this.checkMessageChain(t.next[0])},t.prototype.checkFilteredDiagnosticMessages=function(e){if(0==this.filteredDiagnosticMessages.length)return!0;if("string"!=typeof e&&this.filteredDiagnosticMessages.includes(e))return!1;for(var t=0,r=this.filteredDiagnosticMessages;t<r.length;t++){var n=r[t];if("string"!=typeof e){for(var i=e,a=n;i;){if(!a)return!0;if(i.code!=a.code)return!0;if(i.messageText!=a.messageText)return!0;i=i.next?i.next[0]:void 0,a=a.next?a.next[0]:void 0}return!1}if(e==n.messageText)return!1}return!0},t.prototype.checkDiagnosticMessage=function(e){return!!this.diagnosticMessages&&(!(this.inLibCall&&!this.checkFilteredDiagnosticMessages(e))&&("string"==typeof e?this.checkMessageText(e):!!this.checkMessageChain(e)||(this.diagnosticMessages.push(e),!1)))},t}();e.LibraryTypeCallDiagnosticChecker=t}(e.LibraryTypeCallDiagnosticCheckerNamespace||(e.LibraryTypeCallDiagnosticCheckerNamespace={}))}(d||(d={})),function(e){!function(e){var t;!function(e){e[e.AnyType=0]="AnyType",e[e.SymbolType=1]="SymbolType",e[e.ObjectLiteralNoContextType=2]="ObjectLiteralNoContextType",e[e.ArrayLiteralNoContextType=3]="ArrayLiteralNoContextType",e[e.ComputedPropertyName=4]="ComputedPropertyName",e[e.LiteralAsPropertyName=5]="LiteralAsPropertyName",e[e.TypeQuery=6]="TypeQuery",e[e.RegexLiteral=7]="RegexLiteral",e[e.IsOperator=8]="IsOperator",e[e.DestructuringParameter=9]="DestructuringParameter",e[e.YieldExpression=10]="YieldExpression",e[e.InterfaceMerging=11]="InterfaceMerging",e[e.EnumMerging=12]="EnumMerging",e[e.InterfaceExtendsClass=13]="InterfaceExtendsClass",e[e.IndexMember=14]="IndexMember",e[e.WithStatement=15]="WithStatement",e[e.ThrowStatement=16]="ThrowStatement",e[e.IndexedAccessType=17]="IndexedAccessType",e[e.UnknownType=18]="UnknownType",e[e.ForInStatement=19]="ForInStatement",e[e.InOperator=20]="InOperator",e[e.ImportFromPath=21]="ImportFromPath",e[e.FunctionExpression=22]="FunctionExpression",e[e.IntersectionType=23]="IntersectionType",e[e.ObjectTypeLiteral=24]="ObjectTypeLiteral",e[e.CommaOperator=25]="CommaOperator",e[e.LimitedReturnTypeInference=26]="LimitedReturnTypeInference",e[e.LambdaWithTypeParameters=27]="LambdaWithTypeParameters",e[e.ClassExpression=28]="ClassExpression",e[e.DestructuringAssignment=29]="DestructuringAssignment",e[e.DestructuringDeclaration=30]="DestructuringDeclaration",e[e.VarDeclaration=31]="VarDeclaration",e[e.CatchWithUnsupportedType=32]="CatchWithUnsupportedType",e[e.DeleteOperator=33]="DeleteOperator",e[e.DeclWithDuplicateName=34]="DeclWithDuplicateName",e[e.UnaryArithmNotNumber=35]="UnaryArithmNotNumber",e[e.ConstructorType=36]="ConstructorType",e[e.ConstructorIface=37]="ConstructorIface",e[e.ConstructorFuncs=38]="ConstructorFuncs",e[e.CallSignature=39]="CallSignature",e[e.TypeAssertion=40]="TypeAssertion",e[e.PrivateIdentifier=41]="PrivateIdentifier",e[e.LocalFunction=42]="LocalFunction",e[e.ConditionalType=43]="ConditionalType",e[e.MappedType=44]="MappedType",e[e.NamespaceAsObject=45]="NamespaceAsObject",e[e.ClassAsObject=46]="ClassAsObject",e[e.NonDeclarationInNamespace=47]="NonDeclarationInNamespace",e[e.GeneratorFunction=48]="GeneratorFunction",e[e.FunctionContainsThis=49]="FunctionContainsThis",e[e.PropertyAccessByIndex=50]="PropertyAccessByIndex",e[e.JsxElement=51]="JsxElement",e[e.EnumMemberNonConstInit=52]="EnumMemberNonConstInit",e[e.ImplementsClass=53]="ImplementsClass",e[e.NoUndefinedPropAccess=54]="NoUndefinedPropAccess",e[e.MultipleStaticBlocks=55]="MultipleStaticBlocks",e[e.ThisType=56]="ThisType",e[e.IntefaceExtendDifProps=57]="IntefaceExtendDifProps",e[e.StructuralIdentity=58]="StructuralIdentity",e[e.DefaultImport=59]="DefaultImport",e[e.ExportAssignment=60]="ExportAssignment",e[e.ImportAssignment=61]="ImportAssignment",e[e.GenericCallNoTypeArgs=62]="GenericCallNoTypeArgs",e[e.ParameterProperties=63]="ParameterProperties",e[e.InstanceofUnsupported=64]="InstanceofUnsupported",e[e.ShorthandAmbientModuleDecl=65]="ShorthandAmbientModuleDecl",e[e.WildcardsInModuleName=66]="WildcardsInModuleName",e[e.UMDModuleDefinition=67]="UMDModuleDefinition",e[e.NewTarget=68]="NewTarget",e[e.DefiniteAssignment=69]="DefiniteAssignment",e[e.Prototype=70]="Prototype",e[e.GlobalThis=71]="GlobalThis",e[e.UtilityType=72]="UtilityType",e[e.PropertyDeclOnFunction=73]="PropertyDeclOnFunction",e[e.FunctionApplyBindCall=74]="FunctionApplyBindCall",e[e.ConstAssertion=75]="ConstAssertion",e[e.ImportAssertion=76]="ImportAssertion",e[e.SpreadOperator=77]="SpreadOperator",e[e.LimitedStdLibApi=78]="LimitedStdLibApi",e[e.ErrorSuppression=79]="ErrorSuppression",e[e.StrictDiagnostic=80]="StrictDiagnostic",e[e.UnsupportedDecorators=81]="UnsupportedDecorators",e[e.ImportAfterStatement=82]="ImportAfterStatement",e[e.EsObjectType=83]="EsObjectType",e[e.LAST_ID=84]="LAST_ID"}(t=e.FaultID||(e.FaultID={}));var r=function(){this.cookBookRef="-1"};e.FaultAttributs=r,e.faultsAttrs=[],e.faultsAttrs[t.LiteralAsPropertyName]={migratable:!0,cookBookRef:"1"},e.faultsAttrs[t.ComputedPropertyName]={cookBookRef:"1"},e.faultsAttrs[t.SymbolType]={cookBookRef:"2"},e.faultsAttrs[t.PrivateIdentifier]={migratable:!0,cookBookRef:"3"},e.faultsAttrs[t.DeclWithDuplicateName]={migratable:!0,cookBookRef:"4"},e.faultsAttrs[t.VarDeclaration]={migratable:!0,cookBookRef:"5"},e.faultsAttrs[t.AnyType]={cookBookRef:"8"},e.faultsAttrs[t.UnknownType]={cookBookRef:"8"},e.faultsAttrs[t.CallSignature]={cookBookRef:"14"},e.faultsAttrs[t.ConstructorType]={cookBookRef:"15"},e.faultsAttrs[t.MultipleStaticBlocks]={cookBookRef:"16"},e.faultsAttrs[t.IndexMember]={cookBookRef:"17"},e.faultsAttrs[t.IntersectionType]={cookBookRef:"19"},e.faultsAttrs[t.ThisType]={cookBookRef:"21"},e.faultsAttrs[t.ConditionalType]={cookBookRef:"22"},e.faultsAttrs[t.ParameterProperties]={migratable:!0,cookBookRef:"25"},e.faultsAttrs[t.ConstructorIface]={cookBookRef:"27"},e.faultsAttrs[t.IndexedAccessType]={cookBookRef:"28"},e.faultsAttrs[t.PropertyAccessByIndex]={migratable:!0,cookBookRef:"29"},e.faultsAttrs[t.StructuralIdentity]={cookBookRef:"30"},e.faultsAttrs[t.GenericCallNoTypeArgs]={cookBookRef:"34"},e.faultsAttrs[t.RegexLiteral]={cookBookRef:"37"},e.faultsAttrs[t.ObjectLiteralNoContextType]={cookBookRef:"38"},e.faultsAttrs[t.ObjectTypeLiteral]={cookBookRef:"40"},e.faultsAttrs[t.ArrayLiteralNoContextType]={cookBookRef:"43"},e.faultsAttrs[t.FunctionExpression]={migratable:!0,cookBookRef:"46"},e.faultsAttrs[t.LambdaWithTypeParameters]={migratable:!0,cookBookRef:"49"},e.faultsAttrs[t.ClassExpression]={migratable:!0,cookBookRef:"50"},e.faultsAttrs[t.ImplementsClass]={cookBookRef:"51"},e.faultsAttrs[t.NoUndefinedPropAccess]={cookBookRef:"52"},e.faultsAttrs[t.TypeAssertion]={migratable:!0,cookBookRef:"53"},e.faultsAttrs[t.JsxElement]={cookBookRef:"54"},e.faultsAttrs[t.UnaryArithmNotNumber]={cookBookRef:"55"},e.faultsAttrs[t.DeleteOperator]={cookBookRef:"59"},e.faultsAttrs[t.TypeQuery]={cookBookRef:"60"},e.faultsAttrs[t.InstanceofUnsupported]={cookBookRef:"65"},e.faultsAttrs[t.InOperator]={cookBookRef:"66"},e.faultsAttrs[t.DestructuringAssignment]={migratable:!0,cookBookRef:"69"},e.faultsAttrs[t.CommaOperator]={cookBookRef:"71"},e.faultsAttrs[t.DestructuringDeclaration]={migratable:!0,cookBookRef:"74"},e.faultsAttrs[t.CatchWithUnsupportedType]={migratable:!0,cookBookRef:"79"},e.faultsAttrs[t.ForInStatement]={cookBookRef:"80"},e.faultsAttrs[t.MappedType]={cookBookRef:"83"},e.faultsAttrs[t.WithStatement]={cookBookRef:"84"},e.faultsAttrs[t.ThrowStatement]={migratable:!0,cookBookRef:"87"},e.faultsAttrs[t.LimitedReturnTypeInference]={migratable:!0,cookBookRef:"90"},e.faultsAttrs[t.DestructuringParameter]={cookBookRef:"91"},e.faultsAttrs[t.LocalFunction]={migratable:!0,cookBookRef:"92"},e.faultsAttrs[t.FunctionContainsThis]={cookBookRef:"93"},e.faultsAttrs[t.GeneratorFunction]={cookBookRef:"94"},e.faultsAttrs[t.YieldExpression]={cookBookRef:"94"},e.faultsAttrs[t.IsOperator]={cookBookRef:"96"},e.faultsAttrs[t.SpreadOperator]={cookBookRef:"99"},e.faultsAttrs[t.IntefaceExtendDifProps]={cookBookRef:"102"},e.faultsAttrs[t.InterfaceMerging]={cookBookRef:"103"},e.faultsAttrs[t.InterfaceExtendsClass]={cookBookRef:"104"},e.faultsAttrs[t.ConstructorFuncs]={cookBookRef:"106"},e.faultsAttrs[t.EnumMemberNonConstInit]={cookBookRef:"111"},e.faultsAttrs[t.EnumMerging]={cookBookRef:"113"},e.faultsAttrs[t.NamespaceAsObject]={cookBookRef:"114"},e.faultsAttrs[t.NonDeclarationInNamespace]={cookBookRef:"116"},e.faultsAttrs[t.ImportFromPath]={cookBookRef:"119"},e.faultsAttrs[t.DefaultImport]={migratable:!0,cookBookRef:"120"},e.faultsAttrs[t.ImportAssignment]={cookBookRef:"121"},e.faultsAttrs[t.ExportAssignment]={cookBookRef:"126"},e.faultsAttrs[t.ShorthandAmbientModuleDecl]={cookBookRef:"128"},e.faultsAttrs[t.WildcardsInModuleName]={cookBookRef:"129"},e.faultsAttrs[t.UMDModuleDefinition]={cookBookRef:"130"},e.faultsAttrs[t.NewTarget]={cookBookRef:"132"},e.faultsAttrs[t.DefiniteAssignment]={warning:!0,cookBookRef:"134"},e.faultsAttrs[t.Prototype]={cookBookRef:"136"},e.faultsAttrs[t.GlobalThis]={cookBookRef:"137"},e.faultsAttrs[t.UtilityType]={cookBookRef:"138"},e.faultsAttrs[t.PropertyDeclOnFunction]={cookBookRef:"139"},e.faultsAttrs[t.FunctionApplyBindCall]={cookBookRef:"140"},e.faultsAttrs[t.ConstAssertion]={cookBookRef:"142"},e.faultsAttrs[t.ImportAssertion]={cookBookRef:"143"},e.faultsAttrs[t.LimitedStdLibApi]={cookBookRef:"144"},e.faultsAttrs[t.StrictDiagnostic]={cookBookRef:"145"},e.faultsAttrs[t.ErrorSuppression]={cookBookRef:"146"},e.faultsAttrs[t.UnsupportedDecorators]={warning:!0,cookBookRef:"148"},e.faultsAttrs[t.ClassAsObject]={cookBookRef:"149"},e.faultsAttrs[t.ImportAfterStatement]={cookBookRef:"150"},e.faultsAttrs[t.EsObjectType]={warning:!0,cookBookRef:"151"}}(e.Problems||(e.Problems={}))}(d||(d={})),function(e){!function(t){var r;t.PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE=2564,t.NON_INITIALIZABLE_PROPERTY_DECORATORS=["Link","Consume","ObjectLink","Prop","BuilderParam"],t.NON_INITIALIZABLE_PROPERTY_ClASS_DECORATORS=["CustomDialog"],t.LIMITED_STANDARD_UTILITY_TYPES=["Awaited","Pick","Omit","Exclude","Extract","NonNullable","Parameters","ConstructorParameters","ReturnType","InstanceType","ThisParameterType","OmitThisParameter","ThisType","Uppercase","Lowercase","Capitalize","Uncapitalize"],t.ALLOWED_STD_SYMBOL_API=["iterator"],function(e){e[e.WARNING=1]="WARNING",e[e.ERROR=2]="ERROR"}(t.ProblemSeverity||(t.ProblemSeverity={})),t.ARKTS_IGNORE_DIRS=["node_modules","oh_modules","build",".preview"],t.ARKTS_IGNORE_FILES=["hvigorfile.ts"],t.setTypeChecker=function(e){r=e};var n=!1;function i(e){return e.kind>=62&&e.kind<=77}function a(r){return!(void 0===r||!e.isTypeReferenceNode(r))&&t.TYPED_ARRAYS.includes(s(r.typeName))}function o(t,r){return!(void 0===t||!e.isTypeReferenceNode(t))&&s(t.typeName)===r}function s(t){return e.isIdentifier(t)?t.escapedText.toString():s(t.left)+s(t.right)}function c(e){if(e.isUnion()){for(var t=0,r=e.types;t<r.length;t++){if(!(296&r[t].flags))return!1}return!0}return!!(296&e.getFlags())}function l(e){return!!(4&e.getFlags())}function u(e,t){var r=!!(67108864&e.flags);if(!p(e)||!e.isUnion()||r)return!1;for(var n=0,i=e.types;n<i.length;n++){if(!(i[n].flags&t))return!1}return!0}function d(e,t){var r=!!(67108864&e.flags);return!(!f(e)||r)&&!!(e.flags&t)}function p(e){return e.symbol&&!!(384&e.symbol.flags)}function f(e){return e.symbol&&!!(8&e.symbol.flags)}function m(e,t){if(!e)return!1;for(var r=0,n=e;r<n.length;r++){if(n[r].kind===t)return!0}return!1}function g(e){return 2097152&e.getFlags()?r.getAliasedSymbol(e):e}t.setTestMode=function(e){n=e},t.getStartPos=function(e){return 2===e.kind||3===e.kind?e.pos:e.getStart()},t.getEndPos=function(e){return 2===e.kind||3===e.kind?e.end:e.getEnd()},t.isAssignmentOperator=i,t.isTypedArray=a,t.isType=o,t.entityNameToString=s,t.isNumberType=c,t.isBooleanType=function(e){return!!(528&e.getFlags())},t.isStringLikeType=function(e){if(e.isUnion()){for(var t=0,r=e.types;t<r.length;t++){if(!(402653316&r[t].flags))return!1}return!0}return!!(402653316&e.getFlags())},t.isStringType=l,t.isPrimitiveEnumType=u,t.isPrimitiveEnumMemberType=d,t.unwrapParenthesizedType=function(t){for(;e.isParenthesizedTypeNode(t);)t=t.type;return t},t.findParentIf=function(e){for(var t=e.parent;t;){if(236===t.kind)return t;t=t.parent}return null},t.isDestructuringAssignmentLHS=function(t){for(var r=t.parent,n=t;r;){if(e.isBinaryExpression(r)&&i(r.operatorToken)&&r.left===n)return!0;if((e.isForStatement(r)||e.isForInStatement(r)||e.isForOfStatement(r))&&r.initializer&&r.initializer===n)return!0;n=r,r=r.parent}return!1},t.isEnumType=p,t.isEnumMemberType=f,t.isObjectLiteralType=function(e){return e.symbol&&!!(4096&e.symbol.flags)},t.isNumberLikeType=function(e){return!!(296&e.getFlags())},t.hasModifier=m,t.unwrapParenthesized=function(t){for(var r=t;e.isParenthesizedExpression(r);)r=r.expression;return r},t.followIfAliased=g;var _,h=new e.Map;function y(e){var t=h,n=t.get(e);if(void 0!==n)return null!==n?n:void 0;var i=r.getSymbolAtLocation(e);if(void 0!==i)return i=g(i),t.set(e,i),i;t.set(e,null)}function v(e){return M(e)||258===e||254===e||256===e||257===e}function b(e){var t=e.getFlags();return!!(16&t||512&t||8&t||256&t)}function k(e){var t,r,n;return E(e)&&1===(null===(t=e.typeArguments)||void 0===t?void 0:t.length)&&1===(null===(r=e.target.typeParameters)||void 0===r?void 0:r.length)&&"Array"===(null===(n=e.getSymbol())||void 0===n?void 0:n.getName())}function x(t,n){E(t)&&t.target!==t&&(t=t.target);var i=r.typeToTypeNode(t,void 0,0);if(n===_.Array&&(k(t)||a(i)))return!0;if(n!==_.Array&&o(i,n.toString()))return!0;if(!t.symbol||!t.symbol.declarations)return!1;for(var s=0,c=t.symbol.declarations;s<c.length;s++){var l=c[s];if((e.isClassDeclaration(l)||e.isInterfaceDeclaration(l))&&l.heritageClauses)for(var u=0,d=l.heritageClauses;u<d.length;u++){if(F(d[u].types,n))return!0}}return!1}function E(e){return!!(524288&e.getFlags())&&!!(4&e.objectFlags)}function S(e){return!!(1&e.getFlags())}function D(e){return!!(e.flags&&(1&e.flags||2&e.flags||2097152&e.flags))}function w(e){if(e&&e.declarations&&e.declarations.length>0)return e.declarations[0]}function T(t){if(e.isParenthesizedExpression(t)||e.isAsExpression(t)&&145===t.type.kind)return T(t.expression);switch(t.kind){case 216:return function(e){return t=e.operator,(39===t||40===t||54===t)&&T(e.operand);var t}(t);case 208:case 218:return function(e){return t=e.operatorToken,(41===t.kind||43===t.kind||44===t.kind||40===t.kind||39===t.kind||47===t.kind||48===t.kind||56===t.kind||49===t.kind||50===t.kind||52===t.kind||51===t.kind||55===t.kind)&&T(e.left)&&T(e.right);var t}(t);case 219:return function(e){return T(e.whenTrue)&&T(e.whenFalse)}(t);case 78:return function(t){var n=r.getSymbolAtLocation(t),i=w(n);return!!i&&(function(t){return e.isVariableDeclaration(t)&&e.isVariableDeclarationList(t.parent)}(i)&&C(i.parent)||294===i.kind)}(t);case 8:case 10:return!0;case 202:var n=t;if(A(n))return!0;var i=r.getSymbolAtLocation(n.expression);if(!i)return!1;var a=i.getDeclarations();return!(!a||1!==a.length)&&e.isEnumDeclaration(a[0]);default:return!1}}function C(t){return!!(2&e.getCombinedNodeFlags(t))}function A(e){var t=8===e.kind?Number(e.getText()):r.getConstantValue(e);return void 0!==t&&"number"==typeof t}function N(e){var t=r.getConstantValue(e);return void 0!==t&&"string"==typeof t}function P(t,r){if(E(t)&&t.target!==t&&(t=t.target),E(r)&&r.target!==r&&(r=r.target),t===r||O(r))return!0;if(!t.symbol||!t.symbol.declarations)return!1;for(var n=0,i=t.symbol.declarations;n<i.length;n++){var a=i[n];if((e.isClassDeclaration(a)||e.isInterfaceDeclaration(a))&&a.heritageClauses)for(var o=0,s=a.heritageClauses;o<s.length;o++){var c=s[o],l=!t.isClass()||94!==c.token;if(I(c.types,r,l))return!0}}return!1}function I(e,t,n){for(var i=0,a=e;i<a.length;i++){var o=a[i],s=r.getTypeAtLocation(o);if(E(s)&&s.target!==s&&(s=s.target),s&&s.isClass()!==n&&P(s,t))return!0}return!1}function F(e,t){for(var n=0,i=e;n<i.length;n++){var a=i[n],o=r.getTypeAtLocation(a);if(E(o)&&o.target!==o&&(o=o.target),o&&x(o,t))return!0}return!1}function O(e){if(!e)return!1;if(e.symbol&&e.isClassOrInterface()&&"Object"===e.symbol.name)return!0;var t=r.typeToTypeNode(e,void 0,void 0);return void 0!==t&&146===t.kind}function R(t){return!!t&&(void 0!==(t=H(t))&&t.isClassOrInterface()&&function(e){if(void 0===e.symbol.members)return!0;var t=!1,r=!1;return e.symbol.members.forEach((function(e){16384&e.flags&&(t=!0,void 0!==e.declarations&&e.declarations.length>0&&0===e.declarations[0].parameters.length)&&(r=!0)})),!t||r}(t)&&!function(t){if(void 0===t.symbol.members)return!1;var r=!1;return t.symbol.members.forEach((function(t){void 0!==t.declarations&&t.declarations.length>0&&e.isPropertyDeclaration(t.declarations[0])&&m(t.declarations[0].modifiers,143)&&(r=!0)})),r}(t)&&!function(e){return!!(e.isClass()&&e.symbol.declarations&&e.symbol.declarations.length>0&&m(e.symbol.declarations[0].modifiers,126))}(t))}function M(e){return 255===e}function L(e){return M(e.kind)}function j(e){var t=r.getPropertiesOfType(e);if(null==t?void 0:t.length)for(var n=0,i=t;n<i.length;n++){if(8192&i[n].getFlags())return!0}return!1}function B(e,t){var n=r.getPropertiesOfType(e);if(n.length)for(var i=0,a=n;i<a.length;i++){var o=a[i];if(o.name===t)return o}}function z(e){return e.isUnion()?e.getNonNullableType():e}function U(t,n){if(void 0===t)return!1;var i=z(t);if(S(i)||ee(i))return!0;if(function(t,n){if(ne(t)||b(t)){var i=e.isCallExpression(n)?de(n):r.getSymbolAtLocation(n);if(i&&te(i))return!0}return!1}(i,n))return!0;if(Y(i)&&e.isObjectLiteralExpression(n))return function(t){for(var r=0,n=t.properties;r<n.length;r++){var i=n[r];if(!i.name||!e.isStringLiteral(i.name)&&!e.isNumericLiteral(i.name))return!1}return!0}(n);if(X(i)||Q(i)||Z(i)){if(!i.aliasTypeArguments||1!==i.aliasTypeArguments.length)return!1;i=i.aliasTypeArguments[0]}var a=z(r.getTypeAtLocation(n));if(a.isUnion()){for(var o=!0,s=0,c=a.types;s<c.length;s++){var l=c[s];o&&(o=q(t,l))}return o}if(t.isUnion())for(var u=0,d=t.types;u<d.length;u++){if(U(l=d[u],n))return!0}return e.isObjectLiteralExpression(n)?function(t,r){if(e.isObjectLiteralExpression(r))return R(t)&&!j(t)&&K(t,r);return!1}(i,n):q(t,a)}function q(e,t){if(t.isUnion()){for(var n=!0,i=0,a=t.types;i<a.length;i++){var o=a[i];n&&(n=q(e,o))}return n}if(e.isUnion())for(var s=0,p=e.types;s<p.length;s++){if(q(o=p[s],t))return!0}var f=!!(32768&t.flags),m=!!(65536&t.flags);return!(!f&&!m)||(!(!S(e)&&!ee(e))||(!!function(e,t){var r=u(t,256)||d(t,256),n=u(t,128)||d(t,128);return c(e)&&r||l(e)&&n}(e=r.getBaseTypeOfLiteralType(e),t=r.getBaseTypeOfLiteralType(t))||(!!function(e,t){return(V(e)||J(e))&&(V(t)||J(t))}(e,t)||(e===t||P(t,H(e))))))}function J(e){var t=e.getCallSignatures();return t&&t.length>0}function V(e){var t=e.getSymbol();return t&&"Function"===t.getName()&&G(t)}function H(e){return 524288&e.getFlags()&&4&e.objectFlags?e.target:e}function K(t,n){for(var i,a=0,o=n.properties;a<o.length;a++){var s=o[a];if(e.isPropertyAssignment(s)){var c=s,l=B(t,c.name.getText());if(!l||!(null===(i=l.declarations)||void 0===i?void 0:i.length))return!1;if(!U(r.getTypeOfSymbolAtLocation(l,l.declarations[0]),c.initializer))return!1}}return!0}function W(e){var t=r.getFullyQualifiedName(e),n=t.lastIndexOf(".");return-1===n?void 0:t.substring(0,n)}function G(e){var t=W(e);return!t||"global"===t}function $(e,t){if(e)return e.find((function(e){return e.kind===t}))}function Y(e){if(e.aliasSymbol){var t=e.target;if(t){var r=t.aliasSymbol;return!!r&&"Record"===r.getName()&&G(r)}}return!1}function X(e){var t=e.aliasSymbol;return!!t&&"Partial"===t.getName()&&G(t)}function Q(e){var t=e.aliasSymbol;return!!t&&"Required"===t.getName()&&G(t)}function Z(e){var t=e.aliasSymbol;return!!t&&"Readonly"===t.getName()&&G(t)}function ee(e){var t,r=e.getNonNullableType();if(r.isUnion()){for(var n=0,i=r.types;n<i.length;n++){if(!ee(i[n]))return!1}return!0}return te(null!==(t=r.aliasSymbol)&&void 0!==t?t:r.getSymbol())}function te(r){if(r&&r.declarations&&r.declarations.length>0){var i=r.declarations[0].getSourceFile();if(!i)return!1;var a=i.fileName,o=e.getAnyExtensionFromPath(a),s=t.ARKTS_IGNORE_DIRS.some((function(t){return re(e.normalizePath(a),t)}))||t.ARKTS_IGNORE_FILES.some((function(t){return e.getBaseFileName(a)===t})),c=".ets"===o,l=".ts"===o&&!i.isDeclarationFile;return!((c||l&&n)&&!s)&&!t.STANDARD_LIBRARIES.includes(e.getBaseFileName(i.fileName).toLowerCase())}return!1}function re(t,r){for(var n=0,i=e.getPathComponents(t);n<i.length;n++){if(i[n]===r)return!0}return!1}function ne(e){var t;return ie(null!==(t=e.aliasSymbol)&&void 0!==t?t:e.getSymbol())}function ie(r){if(r&&r.declarations&&r.declarations.length>0){var n=r.declarations[0].getSourceFile();return n&&t.STANDARD_LIBRARIES.includes(e.getBaseFileName(n.fileName).toLowerCase())}return!1}function ae(e){return!!(67108864&e.flags)}function oe(e){if(void 0===e)return!1;if((e=e.getNonNullableType()).isUnion()){for(var t=0,r=e.types;t<r.length;t++){var n=oe(r[t]);if(n||void 0===n)return n}return!1}return!!ee(e)||!!(ne(e)||ae(e)||S(e))&&void 0}function se(r){return e.isTypeReferenceNode(r)&&e.isIdentifier(r.typeName)&&r.typeName.text===t.ES_OBJECT}function ce(e){var t=y(e);if(void 0!==t)return le(t)}function le(t){var r=w(t);if(r&&e.isVariableDeclaration(r))return r.type}function ue(e){if(e.isUnionOrIntersection()){for(var t=0,r=e.types;t<r.length;t++){if(ue(r[t]))return!0}return!1}return!!(524288&e.flags)&&!!(16&e.objectFlags)}function de(e){var t=r.getResolvedSignature(e),n=null==t?void 0:t.getDeclaration();if(n&&n.name)return r.getSymbolAtLocation(n.name)}t.trueSymbolAtLocation=y,t.isTypeDeclSyntaxKind=v,t.symbolHasDuplicateName=function(e,t){var r=null==e?void 0:e.getDeclarations();if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n].kind,o=v(a)&&259===t||v(t)&&259===a;if(78!==a&&a!==t&&!o)return!0}return!1},t.isReferenceType=function(e){var t=e.getFlags();return!!(58982400&t||524288&t||16&t||32&t||67108864&t||8&t||4&t)},t.isPrimitiveType=b,t.isTypeSymbol=function(e){return!!(e&&e.flags&&(32&e.flags||64&e.flags))},t.isGenericArrayType=k,t.isDerivedFrom=x,t.isTypeReference=E,t.isNullType=function(t){return e.isLiteralTypeNode(t)&&104===t.literal.kind},t.isThisOrSuperExpr=function(e){return 108===e.kind||106===e.kind},t.isPrototypeSymbol=function(e){return!!e&&!!e.flags&&!!(4194304&e.flags)},t.isFunctionSymbol=function(e){return!!e&&!!e.flags&&!!(16&e.flags)},t.isInterfaceType=function(e){return!!(e&&e.symbol&&e.symbol.flags&&64&e.symbol.flags)},t.isAnyType=S,t.isUnknownType=function(e){return!!(2&e.getFlags())},t.isUnsupportedType=D,t.isUnsupportedUnionType=function(e){return!!e.isUnion()&&!(t=e,r=t.types,2===r.length&&(65536&r[0].flags||65536&r[1].flags)||function(e){var t=e.types;return 1048592===e.flags&&2===t.length&&512===t[0].flags&&512===t[1].flags}(e));var t,r},t.isFunctionOrMethod=function(e){return!!(e&&(16&e.flags||8192&e.flags))},t.isMethodAssignment=function(e){return!!e&&!!(8192&e.flags)&&!!(67108864&e.flags)},t.getDeclaration=w,t.isValidEnumMemberInit=function(e){return!!A(e.parent)||(!!N(e.parent)||T(e))},t.isCompileTimeExpression=T,t.isConst=C,t.isNumberConstantValue=A,t.isIntegerConstantValue=function(e){var t=8===e.kind?Number(e.getText()):r.getConstantValue(e);return void 0!==t&&"number"==typeof t&&t.toFixed(0)===t.toString()},t.isStringConstantValue=N,t.relatedByInheritanceOrIdentical=P,t.needToDeduceStructuralIdentity=function(e,t,r){if(void 0===r&&(r=!1),ee(t))return!1;var n=t.isClassOrInterface()&&e.isClassOrInterface()&&!P(e,t);return r&&n&&(n=!P(t,e)),n},t.hasPredecessor=function(e,t){for(var r=e.parent;void 0!==r;){if(t(r))return!0;r=r.parent}return!1},t.processParentTypes=I,t.processParentTypesCheck=F,t.isObjectType=O,t.logTscDiagnostic=function(t,r){t.forEach((function(t){var n=e.flattenDiagnosticMessageText(t.messageText,"\n");if(t.file&&t.start){var i=e.getLineAndCharacterOfPosition(t.file,t.start),a=i.line,o=i.character;n=t.file.fileName+" ("+(a+1)+", "+(o+1)+"): "+n}r(n)}))},t.encodeProblemInfo=function(e){return e.problem+"%"+e.start+"%"+e.end},t.decodeAutofixInfo=function(e){var t=e.split("%");return{problemID:t[0],start:Number.parseInt(t[1]),end:Number.parseInt(t[2])}},t.isCallToFunctionWithOmittedReturnType=function(t){if(e.isCallExpression(t)){var n=r.getResolvedSignature(t);if(n){var i=n.getDeclaration();if(!i||!i.type)return!0}}return!1},t.validateObjectLiteralType=R,t.isStructDeclarationKind=M,t.isStructDeclaration=L,t.isStructObjectInitializer=function(t){if(e.isCallLikeExpression(t.parent)){var n=r.getResolvedSignature(t.parent),i=null==n?void 0:n.declaration;return!!i&&e.isConstructorDeclaration(i)&&L(i.parent)}return!1},t.hasMethods=j,t.isExpressionAssignableToType=U,t.isLiteralType=function(e){return e.isLiteral()||!!(512&e.flags)},t.validateFields=K,t.isSupportedType=function t(r){if(e.isParenthesizedTypeNode(r))return t(r.type);if(e.isArrayTypeNode(r))return t(r.elementType);if(e.isTypeReferenceNode(r)&&r.typeArguments){for(var n=0,i=r.typeArguments;n<i.length;n++){if(!t(i[n]))return!1}return!0}if(e.isUnionTypeNode(r)){for(var a=0,o=r.types;a<o.length;a++){if(!t(o[a]))return!1}return!0}if(e.isTupleTypeNode(r)){for(var s=0,c=r.elements;s<c.length;s++){var l=c[s];if(e.isTypeNode(l)&&!t(l))return!1;if(e.isNamedTupleMember(l)&&!t(l.type))return!1}return!0}return!e.isTypeLiteralNode(r)&&!e.isTypeQueryNode(r)&&!e.isIntersectionTypeNode(r)&&(129!==(u=r.kind)&&153!==u&&149!==u&&190!==u&&185!==u&&191!==u&&186!==u);var u},t.isStruct=function(e){if(!e.declarations)return!1;for(var t=0,r=e.declarations;t<r.length;t++){if(L(r[t]))return!0}return!1},t.getDecorators=function(t){if(t.decorators)return e.filter(t.decorators,e.isDecorator)},function(e){e[e.Array=0]="Array",e.String="String",e.Set="Set",e.Map="Map",e.Error="Error"}(_=t.CheckType||(t.CheckType={})),t.ES_OBJECT="ESObject",t.LIMITED_STD_GLOBAL_FUNC=["eval"],t.LIMITED_STD_OBJECT_API=["__proto__","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__","assign","create","defineProperties","defineProperty","freeze","fromEntries","getOwnPropertyDescriptor","getOwnPropertyDescriptors","getOwnPropertySymbols","getPrototypeOf","hasOwnProperty","is","isExtensible","isFrozen","isPrototypeOf","isSealed","preventExtensions","propertyIsEnumerable","seal","setPrototypeOf"],t.LIMITED_STD_REFLECT_API=["apply","construct","defineProperty","deleteProperty","getOwnPropertyDescriptor","getPrototypeOf","isExtensible","preventExtensions","setPrototypeOf"],t.LIMITED_STD_PROXYHANDLER_API=["apply","construct","defineProperty","deleteProperty","get","getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"],t.ARKUI_DECORATORS=["AnimatableExtend","Builder","BuilderParam","Component","Concurrent","Consume","CustomDialog","Entry","Extend","Link","LocalStorageLink","LocalStorageProp","ObjectLink","Observed","Preview","Prop","Provide","Reusable","State","StorageLink","StorageProp","Styles","Watch"],t.FUNCTION_HAS_NO_RETURN_ERROR_CODE=2366,t.NON_RETURN_FUNCTION_DECORATORS=["AnimatableExtend","Builder","Extend","Styles"],t.STANDARD_LIBRARIES=["lib.dom.d.ts","lib.dom.iterable.d.ts","lib.webworker.d.ts","lib.webworker.importscripd.ts","lib.webworker.iterable.d.ts","lib.scripthost.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","lib.es5.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.sharedmemory.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.es2023.array.d.ts"],t.TYPED_ARRAYS=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],t.getParentSymbolName=W,t.isGlobalSymbol=G,t.isSymbolAPI=function(e){var t=W(e),r=t||e.escapedName;return"Symbol"===r||"SymbolConstructor"===r},t.isStdSymbol=function(t){return"Symbol"===e.TypeScriptLinter.tsTypeChecker.getFullyQualifiedName(t)&&G(t)},t.isSymbolIterator=function(e){var t=e.name,r=W(e);return("Symbol"===r||"SymbolConstructor"===r)&&"iterator"===t},t.isDefaultImport=function(e){var t;return"default"===(null===(t=null==e?void 0:e.propertyName)||void 0===t?void 0:t.text)},t.hasAccessModifier=function(e){var t=e.modifiers;return!!t&&(m(t,123)||m(t,122)||m(t,121))},t.getModifier=$,t.getAccessModifier=function(e){var t,r;return null!==(r=null!==(t=$(e,123))&&void 0!==t?t:$(e,122))&&void 0!==r?r:$(e,121)},t.isStdRecordType=Y,t.isStdPartialType=X,t.isStdRequiredType=Q,t.isStdReadonlyType=Z,t.isLibraryType=ee,t.hasLibraryType=function(e){return ee(r.getTypeAtLocation(e))},t.isLibrarySymbol=te,t.pathContainsDirectory=re,t.getScriptKind=function(t){var r=t.fileName;switch(e.getAnyExtensionFromPath(r).toLowerCase()){case".js":return 1;case".jsx":return 2;case".ts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}},t.isStdLibraryType=ne,t.isStdLibrarySymbol=ie,t.isIntrinsicObjectType=ae,t.isDynamicType=oe,t.isDynamicLiteralInitializer=function(t){if(!e.isObjectLiteralExpression(t)&&!e.isArrayLiteralExpression(t))return!1;for(var n=t;e.isObjectLiteralExpression(n)||e.isArrayLiteralExpression(n);){var i=r.getContextualType(n);if(void 0!==i){var a=oe(i);if(void 0!==a)return a}n=n.parent,e.isPropertyAssignment(n)&&(n=n.parent)}if(e.isCallExpression(n)){var o=n;if(S(l=r.getTypeAtLocation(o.expression)))return!0;var s=l.symbol;if(te(s))return!0;if(e.isPropertyAccessExpression(o.expression)&&(s=r.getSymbolAtLocation(o.expression.expression))&&2097152&s.getFlags()&&te(s=r.getAliasedSymbol(s)))return!0}if(e.isBinaryExpression(n)){var c=n;if(e.isPropertyAccessExpression(c.left)){var l,u=c.left;return te((l=r.getTypeAtLocation(u.expression)).symbol)}}return!1},t.isEsObjectType=se,t.isInsideBlock=function(t){for(var r=t.parent;r;){if(e.isBlock(r))return!0;r=r.parent}return!1},t.isEsObjectPossiblyAllowed=function(t){return e.isVariableDeclaration(t.parent)},t.isValueAssignableToESObject=function(t){if(e.isArrayLiteralExpression(t)||e.isObjectLiteralExpression(t))return!1;var r=e.TypeScriptLinter.tsTypeChecker.getTypeAtLocation(t);return D(r)||ue(r)},t.getVariableDeclarationTypeNode=ce,t.getSymbolDeclarationTypeNode=le,t.hasEsObjectType=function(e){var t=ce(e);return void 0!==t&&se(t)},t.symbolHasEsObjectType=function(e){var t=le(e);return void 0!==t&&se(t)},t.isEsObjectSymbol=function(r){var n=w(r);return!!n&&e.isTypeAliasDeclaration(n)&&n.name.escapedText===t.ES_OBJECT&&129===n.type.kind},t.isAnonymousType=ue,t.getSymbolOfCallExpression=de,t.typeIsRecursive=function e(t,n){if(void 0===n&&(n=void 0),void 0===n)n=t;else{if(n===t)return!0;if(n.aliasSymbol)return!1}if(n.isUnion())for(var i=0,a=n.types;i<a.length;i++){if(e(t,a[i]))return!0}if(524288&n.flags&&4&n.objectFlags){var o=r.getTypeArguments(n);if(o)for(var s=0,c=o;s<c.length;s++){if(e(t,c[s]))return!0}}return!1}}(e.Utils||(e.Utils={}))}(d||(d={})),function(e){!function(t){var r=e.Problems.FaultID;t.AUTOFIX_ALL={problemID:"",start:-1,end:-1};var n=[r.LiteralAsPropertyName,r.PropertyAccessByIndex];t.autofixInfo=[],t.shouldAutofix=function(e,i){return!n.includes(i)&&(0!==t.autofixInfo.length&&(1===t.autofixInfo.length&&t.autofixInfo[0]===t.AUTOFIX_ALL||-1!==t.autofixInfo.findIndex((function(t){return t.start===e.getStart()&&t.end===e.getEnd()&&t.problemID===r[i]}))))};var i=e.createPrinter({omitTrailingSemicolon:!1,removeComments:!1});function a(e){return"__"+e.getText()}function o(e){var t=e.getText();return t.substring(1,t.length-1)}t.fixLiteralAsPropertyName=function(t){if(e.isPropertyDeclaration(t)||e.isPropertyAssignment(t)){var r=t.name,n=8===(i=r).kind?a(i):10===i.kind?o(i):"";if(n)return[{replacementText:n,start:r.getStart(),end:r.getEnd()}]}var i},t.fixPropertyAccessByIndex=function(t){if(e.isElementAccessExpression(t)){var r=t,n=8===(i=r.argumentExpression).kind?a(i):10===i.kind?o(i):"";if(n)return[{replacementText:r.expression.getText()+"."+n,start:r.getStart(),end:r.getEnd()}]}var i},t.fixFunctionExpression=function(t,r,n){void 0===r&&(r=t.parameters),void 0===n&&(n=t.type);var a=e.factory.createArrowFunction(void 0,void 0,r,n,e.factory.createToken(38),t.body),o=i.printNode(4,a,t.getSourceFile());return{start:t.getStart(),end:t.getEnd(),replacementText:o}},t.fixReturnType=function(t,r){var n=": "+i.printNode(4,r,t.getSourceFile()),a=function(t){if(t.body)for(var r=e.isArrowFunction(t)?t.equalsGreaterThanToken.getStart():t.body.getStart(),n=t.getChildren(),i=n.length-1;i>=0;i--){var a=n[i];if(21===a.kind&&a.getEnd()<r)return a.getEnd()}return-1}(t);return{start:a,end:a,replacementText:n}},t.fixCtorParameterProperties=function(t,r){for(var n=[],a=t.getStart(),o=[{start:a,end:a,replacementText:""}],s=0;s<t.parameters.length;s++){var c=t.parameters[s];if(e.isIdentifier(c.name)&&e.Utils.hasAccessModifier(c)){var l=e.factory.createIdentifier(c.name.text),u=e.factory.createPropertyDeclaration(void 0,c.modifiers,l,void 0,r[s],void 0),d=i.printNode(4,u,t.getSourceFile())+"\n";o[0].replacementText+=d;var p=e.factory.createParameterDeclaration(void 0,void 0,void 0,c.name,c.questionToken,c.type,c.initializer),f=i.printNode(4,p,t.getSourceFile());o.push({start:c.getStart(),end:c.getEnd(),replacementText:f}),n.push(e.factory.createExpressionStatement(e.factory.createAssignment(e.factory.createPropertyAccessExpression(e.factory.createThis(),l),l)))}}if(t.body){var m=e.factory.createBlock(n.concat(t.body.statements),!0),g=i.printNode(4,m,t.getSourceFile());o.push({start:t.body.getStart(),end:t.body.getEnd(),replacementText:g})}return o}}(e.Autofixer||(e.Autofixer={}))}(d||(d={})),function(e){var t=e.Problems.FaultID,r=function(){function r(){}return r.initStatic=function(){r.nodeDesc[t.AnyType]='"any" type',r.nodeDesc[t.SymbolType]='"symbol" type',r.nodeDesc[t.ObjectLiteralNoContextType]="Object literals with no context Class or Interface type",r.nodeDesc[t.ArrayLiteralNoContextType]="Array literals with no context Array type",r.nodeDesc[t.ComputedPropertyName]="Computed properties",r.nodeDesc[t.LiteralAsPropertyName]="String or integer literal as property name",r.nodeDesc[t.TypeQuery]='"typeof" operations',r.nodeDesc[t.RegexLiteral]="regex literals",r.nodeDesc[t.IsOperator]='"is" operations',r.nodeDesc[t.DestructuringParameter]="destructuring parameters",r.nodeDesc[t.YieldExpression]='"yield" operations',r.nodeDesc[t.InterfaceMerging]="merging interfaces",r.nodeDesc[t.EnumMerging]="merging enums",r.nodeDesc[t.InterfaceExtendsClass]="interfaces inherited from classes",r.nodeDesc[t.IndexMember]="index members",r.nodeDesc[t.WithStatement]='"with" statements',r.nodeDesc[t.ThrowStatement]='"throw" statements with expression of wrong type',r.nodeDesc[t.IndexedAccessType]="Indexed access type",r.nodeDesc[t.UnknownType]='"unknown" type',r.nodeDesc[t.ForInStatement]='"for-In" statements',r.nodeDesc[t.InOperator]='"in" operations',r.nodeDesc[t.ImportFromPath]="imports from path",r.nodeDesc[t.FunctionExpression]="function expressions",r.nodeDesc[t.IntersectionType]="intersection types and type literals",r.nodeDesc[t.ObjectTypeLiteral]="Object type literals",r.nodeDesc[t.CommaOperator]="comma operator",r.nodeDesc[t.LimitedReturnTypeInference]="Functions with limited return type inference",r.nodeDesc[t.LambdaWithTypeParameters]="Lambda function with type parameters",r.nodeDesc[t.ClassExpression]="Class expressions",r.nodeDesc[t.DestructuringAssignment]="Destructuring assignments",r.nodeDesc[t.DestructuringDeclaration]="Destructuring variable declarations",r.nodeDesc[t.VarDeclaration]='"var" declarations',r.nodeDesc[t.CatchWithUnsupportedType]='"catch" clause with unsupported exception type',r.nodeDesc[t.DeleteOperator]='"delete" operations',r.nodeDesc[t.DeclWithDuplicateName]="Declarations with duplicate name",r.nodeDesc[t.UnaryArithmNotNumber]="Unary arithmetics with not-numeric values",r.nodeDesc[t.ConstructorType]="Constructor type",r.nodeDesc[t.ConstructorFuncs]="Constructor function type is not supported",r.nodeDesc[t.ConstructorIface]="Construct signatures are not supported in interfaces",r.nodeDesc[t.CallSignature]="Call signatures",r.nodeDesc[t.TypeAssertion]="Type assertion expressions",r.nodeDesc[t.PrivateIdentifier]='Private identifiers (with "#" prefix)',r.nodeDesc[t.LocalFunction]="Local function declarations",r.nodeDesc[t.ConditionalType]="Conditional type",r.nodeDesc[t.MappedType]="Mapped type",r.nodeDesc[t.NamespaceAsObject]="Namespaces used as objects",r.nodeDesc[t.ClassAsObject]="Class used as object",r.nodeDesc[t.NonDeclarationInNamespace]="Non-declaration statements in namespaces",r.nodeDesc[t.GeneratorFunction]="Generator functions",r.nodeDesc[t.FunctionContainsThis]='Functions containing "this"',r.nodeDesc[t.PropertyAccessByIndex]="property access by index",r.nodeDesc[t.JsxElement]="JSX Elements",r.nodeDesc[t.EnumMemberNonConstInit]="Enum members with non-constant initializer",r.nodeDesc[t.ImplementsClass]='Class type mentioned in "implements" clause',r.nodeDesc[t.NoUndefinedPropAccess]="Access to undefined field",r.nodeDesc[t.MultipleStaticBlocks]="Multiple static blocks",r.nodeDesc[t.ThisType]='"this" type',r.nodeDesc[t.IntefaceExtendDifProps]="Extends same properties with different types",r.nodeDesc[t.StructuralIdentity]="Use of type structural identity",r.nodeDesc[t.DefaultImport]="Default import declarations",r.nodeDesc[t.ExportAssignment]="Export assignments (export = ..)",r.nodeDesc[t.ImportAssignment]="Import assignments (import = ..)",r.nodeDesc[t.GenericCallNoTypeArgs]="Generic calls without type arguments",r.nodeDesc[t.ParameterProperties]="Parameter properties in constructor",r.nodeDesc[t.InstanceofUnsupported]='Left-hand side of "instanceof" is wrong',r.nodeDesc[t.ShorthandAmbientModuleDecl]="Shorthand ambient module declaration",r.nodeDesc[t.WildcardsInModuleName]="Wildcards in module name",r.nodeDesc[t.UMDModuleDefinition]="UMD module definition",r.nodeDesc[t.NewTarget]='"new.target" meta-property',r.nodeDesc[t.DefiniteAssignment]="Definite assignment assertion",r.nodeDesc[t.Prototype]="Prototype assignment",r.nodeDesc[t.GlobalThis]="Use of globalThis",r.nodeDesc[t.UtilityType]="Standard Utility types",r.nodeDesc[t.PropertyDeclOnFunction]="Property declaration on function",r.nodeDesc[t.FunctionApplyBindCall]="Invoking methods of function objects",r.nodeDesc[t.ConstAssertion]='"as const" assertion',r.nodeDesc[t.ImportAssertion]="Import assertion",r.nodeDesc[t.SpreadOperator]="Spread operation",r.nodeDesc[t.LimitedStdLibApi]="Limited standard library API",r.nodeDesc[t.ErrorSuppression]="Error suppression annotation",r.nodeDesc[t.StrictDiagnostic]="Strict diagnostic",r.nodeDesc[t.UnsupportedDecorators]="Unsupported decorators",r.nodeDesc[t.ImportAfterStatement]="Import declaration after other declaration or statement",r.nodeDesc[t.EsObjectType]='Restricted "ESObject" type'},r.nodeDesc=[],r.tsSyntaxKindNames=[],r.terminalTokens=new e.Set([18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,60,57,58,59,61,62,63,64,65,66,67,68,69,70,71,72,73,77,1,2,3,4,5,6,7]),r.incrementOnlyTokens=new e.Map([[129,t.AnyType],[149,t.SymbolType],[188,t.ThisType],[177,t.TypeQuery],[212,t.DeleteOperator],[13,t.RegexLiteral],[173,t.IsOperator],[221,t.YieldExpression],[172,t.IndexMember],[245,t.WithStatement],[190,t.IndexedAccessType],[153,t.UnknownType],[101,t.InOperator],[170,t.CallSignature],[184,t.IntersectionType],[178,t.ObjectTypeLiteral],[176,t.ConstructorFuncs],[79,t.PrivateIdentifier],[185,t.ConditionalType],[191,t.MappedType],[276,t.JsxElement],[277,t.JsxElement],[263,t.ImportAssignment],[262,t.UMDModuleDefinition]]),r}();e.LinterConfig=r}(d||(d={})),function(e){var t=e.Problems.FaultID,r=e.Problems.faultsAttrs,n=e.perfLogger,i=e.LibraryTypeCallDiagnosticCheckerNamespace.ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE,a=e.LibraryTypeCallDiagnosticCheckerNamespace.TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE,o=e.LibraryTypeCallDiagnosticCheckerNamespace.NO_OVERLOAD_MATCHES_THIS_CALL_ERROR_CODE,s=e.LibraryTypeCallDiagnosticCheckerNamespace.LibraryTypeCallDiagnosticChecker,c=function(){function c(t,r,n){this.sourceFile=t,this.tscStrictDiagnostics=n,this.handlersMap=new e.Map([[201,this.handleObjectLiteralExpression],[200,this.handleArrayLiteralExpression],[161,this.handleParameter],[258,this.handleEnumDeclaration],[256,this.handleInterfaceDeclaration],[248,this.handleThrowStatement],[265,this.handleImportClause],[239,this.handleForStatement],[240,this.handleForInStatement],[241,this.handleForOfStatement],[264,this.handleImportDeclaration],[202,this.handlePropertyAccessExpression],[164,this.handlePropertyAssignmentOrDeclaration],[291,this.handlePropertyAssignmentOrDeclaration],[209,this.handleFunctionExpression],[210,this.handleArrowFunction],[223,this.handleClassExpression],[290,this.handleCatchClause],[253,this.handleFunctionDeclaration],[216,this.handlePrefixUnaryExpression],[218,this.handleBinaryExpression],[252,this.handleVariableDeclarationList],[251,this.handleVariableDeclaration],[254,this.handleClassDeclaration],[259,this.handleModuleDeclaration],[257,this.handleTypeAliasDeclaration],[268,this.handleImportSpecifier],[266,this.handleNamespaceImport],[207,this.handleTypeAssertionExpression],[166,this.handleMethodDeclaration],[78,this.handleIdentifier],[203,this.handleElementAccessExpression],[294,this.handleEnumMember],[174,this.handleTypeReference],[269,this.handleExportAssignment],[204,this.handleCallExpression],[228,this.handleMetaProperty],[205,this.handleNewExpression],[226,this.handleAsExpression],[222,this.handleSpreadOp],[293,this.handleSpreadOp],[168,this.handleGetAccessor],[169,this.handleSetAccessor],[171,this.handleConstructSignature],[225,this.handleExpressionWithTypeArguments],[159,this.handleComputedPropertyName]]),this.validatedTypesSet=new e.Set,c.tsTypeChecker=r.getTypeChecker(),this.currentErrorLine=0,this.currentWarningLine=0,this.staticBlocks=new e.Set,this.libraryTypeCallDiagnosticChecker=new s(c.filteredDiagnosticMessages)}return c.initGlobals=function(){c.filteredDiagnosticMessages=[]},c.initStatic=function(){c.strictMode=!0,c.logTscErrors=!1,c.warningsAsErrors=!1,c.lintEtsOnly=!0,c.totalVisitedNodes=0,c.nodeCounters=[],c.lineCounters=[],c.totalErrorLines=0,c.totalWarningLines=0,c.errorLineNumbersString="",c.warningLineNumbersString="",e.Autofixer.autofixInfo.length=0;for(var r=0;r<t.LAST_ID;r++)c.nodeCounters[r]=0,c.lineCounters[r]=0;c.problemsInfos=[]},c.prototype.incrementCounters=function(i,a,o,s){if(void 0===o&&(o=!1),c.strictMode||!r[a].migratable){var l=e.Utils.getStartPos(i),u=e.Utils.getEndPos(i);c.nodeCounters[a]++;var d=this.sourceFile.getLineAndCharacterOfPosition(l),p=d.line,f=d.character;++p,++f;var m=e.LinterConfig.nodeDesc[a],g="unknown",_=r[a]?Number(r[a].cookBookRef):0,h=e.cookBookTag[_],y=e.Utils.ProblemSeverity.ERROR;r[a]&&r[a].warning&&(y=e.Utils.ProblemSeverity.WARNING);var v={line:p,column:f,start:l,end:u,type:g,severity:y,problem:t[a],suggest:_>0?e.cookBookMsg[_]:"",rule:_>0&&""!==h?h:m||g,ruleTag:_,autofixable:o,autofix:s};c.problemsInfos.push(v),c.reportDiagnostics||n.logEvent("Warning: "+this.sourceFile.fileName+" ("+p+", "+f+"): "+(m||g)),c.lineCounters[a]++,r[a].warning?p!==this.currentWarningLine&&(this.currentWarningLine=p,++c.totalWarningLines,c.warningLineNumbersString+=p+", "):p!==this.currentErrorLine&&(this.currentErrorLine=p,++c.totalErrorLines,c.errorLineNumbersString+=p+", ")}},c.prototype.visitTSNode=function(t){var r=this;!function t(n){if(null===n||null===n.kind)return;if(c.totalVisitedNodes++,e.isStructDeclaration(n))return void r.handleStructDeclaration(n);if(r.handleComments(n),e.LinterConfig.terminalTokens.has(n.kind))return;var i=e.LinterConfig.incrementOnlyTokens.get(n.kind);if(void 0!==i)r.incrementCounters(n,i);else{var a=r.handlersMap.get(n.kind);void 0!==a&&a.call(r,n)}e.forEachChild(n,t)}(t)},c.prototype.countInterfaceExtendsDifferentPropertyTypes=function(e,r,n,i){if(i){var a=i.getText(),o=r.get(n);o?o!==a&&this.incrementCounters(e,t.IntefaceExtendDifProps):r.set(n,a)}},c.prototype.countDeclarationsWithDuplicateName=function(r,n,i){var a=c.tsTypeChecker.getSymbolAtLocation(r);a&&e.Utils.symbolHasDuplicateName(a,null!=i?i:n.kind)&&this.incrementCounters(n,t.DeclWithDuplicateName)},c.prototype.countClassMembersWithDuplicateName=function(r){for(var n=0,i=r.members;n<i.length;n++){var a=i[n];if(a.name&&(e.isIdentifier(a.name)||e.isPrivateIdentifier(a.name)))for(var o=0,s=r.members;o<s.length;o++){var c=s[o];if(a!==c&&(c.name&&(e.isIdentifier(c.name)||e.isPrivateIdentifier(c.name)))){if(e.isIdentifier(a.name)&&e.isPrivateIdentifier(c.name)&&a.name.text===c.name.text.substring(1)){this.incrementCounters(a,t.DeclWithDuplicateName);break}if(e.isPrivateIdentifier(a.name)&&e.isIdentifier(c.name)&&a.name.text.substring(1)===c.name.text){this.incrementCounters(a,t.DeclWithDuplicateName);break}}}}},c.prototype.functionContainsThis=function(t){var r=!1;return function t(n){r||(108!==n.kind?e.isClassDeclaration(n)||e.isClassExpression(n)||e.isModuleDeclaration(n)||e.isFunctionDeclaration(n)||e.isFunctionExpression(n)||n.forEachChild(t):r=!0)}(t),r},c.prototype.isPrototypePropertyAccess=function(t,r,n,i){if(!e.isIdentifier(t.name)||"prototype"!==t.name.text)return!1;for(var a=t;a&&e.isPropertyAccessExpression(a);){var o=e.Utils.trueSymbolAtLocation(a.expression);if(e.Utils.isLibrarySymbol(o))return!1;a=a.expression}if(e.isIdentifier(a)&&"prototype"!==a.text){var s=c.tsTypeChecker.getTypeAtLocation(a);if(e.Utils.isAnyType(s))return!1}if(e.Utils.isPrototypeSymbol(r))return!0;if(e.Utils.isTypeSymbol(n)||e.Utils.isFunctionSymbol(n))return!0;var l=c.tsTypeChecker.typeToTypeNode(i,void 0,0);return l&&e.isFunctionTypeNode(l)||e.Utils.isAnyType(i)},c.prototype.interfaceInheritanceLint=function(r,n){for(var i=0,a=n;i<a.length;i++){var o=a[i];if(94===o.token)for(var s=new e.Map,l=0,u=o.types;l<u.length;l++){var d=u[l],p=c.tsTypeChecker.getTypeAtLocation(d.expression);p.isClass()?this.incrementCounters(r,t.InterfaceExtendsClass):p.isClassOrInterface()&&this.lintForInterfaceExtendsDifferentPorpertyTypes(r,p,s)}}},c.prototype.lintForInterfaceExtendsDifferentPorpertyTypes=function(e,t,r){for(var n=0,i=t.getProperties();n<i.length;n++){var a=i[n];if(a.declarations){var o=a.declarations[0];(165===o.kind||166===o.kind||164===o.kind||163===o.kind)&&this.countInterfaceExtendsDifferentPropertyTypes(e,r,a.name,o.type)}}},c.prototype.handleObjectLiteralExpression=function(r){var n=r;if(!e.Utils.isDestructuringAssignmentLHS(n)){var i=c.tsTypeChecker.getContextualType(n);e.Utils.isStructObjectInitializer(n)||e.Utils.isDynamicLiteralInitializer(n)||e.Utils.isExpressionAssignableToType(i,n)||this.incrementCounters(r,t.ObjectLiteralNoContextType)}},c.prototype.handleArrayLiteralExpression=function(r){if(!e.Utils.isDestructuringAssignmentLHS(r)){for(var n=r,i=!1,a=0,o=n.elements;a<o.length;a++){var s=o[a];if(201===s.kind){var l=c.tsTypeChecker.getContextualType(s);if(!e.Utils.isDynamicLiteralInitializer(n)&&!e.Utils.isExpressionAssignableToType(l,s)){i=!0;break}}}i&&this.incrementCounters(r,t.ArrayLiteralNoContextType)}},c.prototype.handleParameter=function(r){var n=r;(e.isArrayBindingPattern(n.name)||e.isObjectBindingPattern(n.name))&&this.incrementCounters(r,t.DestructuringParameter);var i=n.modifiers;i&&(e.Utils.hasModifier(i,123)||e.Utils.hasModifier(i,122)||e.Utils.hasModifier(i,143)||e.Utils.hasModifier(i,121))&&this.incrementCounters(r,t.ParameterProperties),this.handleDecorators(n.decorators),this.handleDeclarationInferredType(n)},c.prototype.handleEnumDeclaration=function(r){var n=r;this.countDeclarationsWithDuplicateName(n.name,n);var i=e.Utils.trueSymbolAtLocation(n.name);if(i){var a=i.getDeclarations();if(a){for(var o=0,s=0,c=a;s<c.length;s++){258===c[s].kind&&o++}o>1&&this.incrementCounters(r,t.EnumMerging)}}},c.prototype.handleInterfaceDeclaration=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.name),a=i?i.getDeclarations():null;if(a){for(var o=0,s=0,c=a;s<c.length;s++){256===c[s].kind&&o++}o>1&&this.incrementCounters(r,t.InterfaceMerging)}n.heritageClauses&&this.interfaceInheritanceLint(r,n.heritageClauses),this.countDeclarationsWithDuplicateName(n.name,n)},c.prototype.handleThrowStatement=function(r){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n.expression);i.isClassOrInterface()&&e.Utils.isDerivedFrom(i,e.Utils.CheckType.Error)||this.incrementCounters(r,t.ThrowStatement)},c.prototype.handleForStatement=function(r){var n=r.initializer;n&&(e.isArrayLiteralExpression(n)||e.isObjectLiteralExpression(n))&&this.incrementCounters(n,t.DestructuringAssignment)},c.prototype.handleForInStatement=function(r){var n=r.initializer;(e.isArrayLiteralExpression(n)||e.isObjectLiteralExpression(n))&&this.incrementCounters(n,t.DestructuringAssignment),this.incrementCounters(r,t.ForInStatement)},c.prototype.handleForOfStatement=function(r){var n=r.initializer;(e.isArrayLiteralExpression(n)||e.isObjectLiteralExpression(n))&&this.incrementCounters(n,t.DestructuringAssignment)},c.prototype.handleImportDeclaration=function(r){for(var n=r,i=0,a=n.parent.statements;i<a.length;i++){var o=a[i];if(o===n)break;if(!e.isImportDeclaration(o)){this.incrementCounters(r,t.ImportAfterStatement);break}}10===n.moduleSpecifier.kind&&(n.importClause||this.incrementCounters(r,t.ImportFromPath))},c.prototype.handlePropertyAccessExpression=function(r){if(!e.isCallExpression(r.parent)||r!=r.parent.expression){var n=r,i=e.Utils.trueSymbolAtLocation(n),a=e.Utils.trueSymbolAtLocation(n.expression),o=c.tsTypeChecker.getTypeAtLocation(n.expression);this.isPrototypePropertyAccess(n,i,a,o)&&this.incrementCounters(n.name,t.Prototype),i&&e.Utils.isSymbolAPI(i)&&!e.Utils.ALLOWED_STD_SYMBOL_API.includes(i.getName())&&this.incrementCounters(n,t.SymbolType),a&&e.Utils.symbolHasEsObjectType(a)&&this.incrementCounters(n,t.EsObjectType)}},c.prototype.handlePropertyAssignmentOrDeclaration=function(r){var n,i=r.name;if(i&&(8===i.kind||10===i.kind)){var a=!1,o=!1;if(e.isPropertyAssignment(r)){var s=c.tsTypeChecker.getContextualType(r.parent);s&&(a=e.Utils.isStdRecordType(s),o=e.Utils.isLibraryType(s)||e.Utils.isDynamicLiteralInitializer(r.parent))}if(!a&&!o){var l=e.Autofixer.fixLiteralAsPropertyName(r),u=void 0!==l;e.Autofixer.shouldAutofix(r,t.LiteralAsPropertyName)||(l=void 0),this.incrementCounters(r,t.LiteralAsPropertyName,u,l)}}if(e.isPropertyDeclaration(r)){var d=r.decorators;this.handleDecorators(d),this.filterOutDecoratorsDiagnostics(d,e.Utils.NON_INITIALIZABLE_PROPERTY_DECORATORS,{begin:i.getStart(),end:i.getStart()},e.Utils.PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE);var p=r.parent.decorators,f=null===(n=r.type)||void 0===n?void 0:n.getText();this.filterOutDecoratorsDiagnostics(p,e.Utils.NON_INITIALIZABLE_PROPERTY_ClASS_DECORATORS,{begin:i.getStart(),end:i.getStart()},e.Utils.PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE,f),this.handleDeclarationInferredType(r),this.handleDefiniteAssignmentAssertion(r)}},c.prototype.filterOutDecoratorsDiagnostics=function(t,r,n,i,a){if(this.tscStrictDiagnostics&&this.sourceFile&&(null==t?void 0:t.some((function(t){var n="";return e.isIdentifier(t.expression)?n=t.expression.text:e.isCallExpression(t.expression)&&e.isIdentifier(t.expression.expression)&&(n=t.expression.expression.text),r.includes(e.Utils.NON_INITIALIZABLE_PROPERTY_ClASS_DECORATORS[0])?r.includes(n)&&"CustomDialogController"===a:r.includes(n)})))){var o=e.normalizePath(this.sourceFile.fileName),s=this.tscStrictDiagnostics.get(o);if(s){var c=s.filter((function(e){return e.code!==i||(void 0===e.start||(e.start<n.begin||e.start>n.end))}));this.tscStrictDiagnostics.set(o,c)}}},c.prototype.checkInRange=function(e,t){for(var r=0;r<e.length;r++)if(t>=e[r].begin&&t<e[r].end)return!1;return!0},c.prototype.filterStrictDiagnostics=function(t,r){if(!this.tscStrictDiagnostics||!this.sourceFile)return!1;var n=e.normalizePath(this.sourceFile.fileName),i=this.tscStrictDiagnostics.get(n);if(!i)return!1;var a=function(e){var n=t[e.code];return!n||(!(void 0!==e.start&&!n(e.start))||r.checkDiagnosticMessage(e.messageText))};return!i.every(a)&&(this.tscStrictDiagnostics.set(n,i.filter(a)),!0)},c.prototype.handleFunctionExpression=function(r){var n,i=r,a=void 0!==i.asteriskToken,o=this.functionContainsThis(i.body),s=e.Utils.hasPredecessor(i,e.isClassLike)||e.Utils.hasPredecessor(i,e.isInterfaceDeclaration),c=void 0!==i.typeParameters&&i.typeParameters.length>0,l=this.handleMissingReturnType(i),u=l[0],d=l[1],p=!(c||a||o||u);p&&e.Autofixer.shouldAutofix(r,t.FunctionExpression)&&(n=[e.Autofixer.fixFunctionExpression(i,i.parameters,d)]),this.incrementCounters(r,t.FunctionExpression,p,n),c&&this.incrementCounters(i,t.LambdaWithTypeParameters),a&&this.incrementCounters(i,t.GeneratorFunction),o&&!s&&this.incrementCounters(i,t.FunctionContainsThis),u&&this.incrementCounters(i,t.LimitedReturnTypeInference)},c.prototype.handleArrowFunction=function(r){var n=r,i=this.functionContainsThis(n.body),a=e.Utils.hasPredecessor(n,e.isClassLike)||e.Utils.hasPredecessor(n,e.isInterfaceDeclaration);i&&!a&&this.incrementCounters(n,t.FunctionContainsThis);var o=c.tsTypeChecker.getContextualType(n);o&&e.Utils.isLibraryType(o)||(n.type||this.handleMissingReturnType(n),n.typeParameters&&n.typeParameters.length>0&&this.incrementCounters(r,t.LambdaWithTypeParameters))},c.prototype.handleClassExpression=function(e){this.incrementCounters(e,t.ClassExpression)},c.prototype.handleFunctionDeclaration=function(r){var n=r;n.type||this.handleMissingReturnType(n),n.name&&this.countDeclarationsWithDuplicateName(n.name,n),n.body&&this.functionContainsThis(n.body)&&this.incrementCounters(r,t.FunctionContainsThis),e.isSourceFile(n.parent)||e.isModuleBlock(n.parent)||this.incrementCounters(n,t.LocalFunction),n.asteriskToken&&this.incrementCounters(r,t.GeneratorFunction)},c.prototype.handleMissingReturnType=function(r){if(!r.body)return[!1,void 0];var n,i,a=!1,o=e.isFunctionExpression(r),s=this.hasLimitedTypeInferenceFromReturnExpr(r.body),l=c.tsTypeChecker.getSignatureFromDeclaration(r);if(l){var u=c.tsTypeChecker.getReturnTypeOfSignature(l);!u||e.Utils.isUnsupportedType(u)?s=!0:s&&(a=!!(i=c.tsTypeChecker.typeToTypeNode(u,r,0)),!o&&i&&e.Autofixer.shouldAutofix(r,t.LimitedReturnTypeInference)&&(n=[e.Autofixer.fixReturnType(r,i)]))}return s&&!o&&this.incrementCounters(r,t.LimitedReturnTypeInference,a,n),[s&&!i,i]},c.prototype.hasLimitedTypeInferenceFromReturnExpr=function(t){var r=!1;if(e.isBlock(t))!function t(n){r||(e.isReturnStatement(n)&&n.expression&&e.Utils.isCallToFunctionWithOmittedReturnType(e.Utils.unwrapParenthesized(n.expression))?r=!0:e.isFunctionDeclaration(n)||e.isFunctionExpression(n)||e.isMethodDeclaration(n)||e.isAccessor(n)||e.isArrowFunction(n)||n.forEachChild(t))}(t);else{var n=e.Utils.unwrapParenthesized(t);r=e.Utils.isCallToFunctionWithOmittedReturnType(n)}return r},c.prototype.handlePrefixUnaryExpression=function(r){var n=r,i=n.operator;39!==i&&40!==i&&54!==i||(2344&c.tsTypeChecker.getTypeAtLocation(n.operand).getFlags()&&(54!==i||8!==n.operand.kind||e.Utils.isIntegerConstantValue(n.operand))||this.incrementCounters(r,t.UnaryArithmNotNumber))},c.prototype.handleBinaryExpression=function(r){var n=r,i=n.left,a=n.right;if(e.Utils.isAssignmentOperator(n.operatorToken)&&((e.isObjectLiteralExpression(i)||e.isArrayLiteralExpression(i))&&this.incrementCounters(r,t.DestructuringAssignment),e.isPropertyAccessExpression(i))){var o=e.Utils.trueSymbolAtLocation(i),s=e.Utils.trueSymbolAtLocation(i.expression);o&&8192&o.flags&&this.incrementCounters(i,t.NoUndefinedPropAccess),e.Utils.isMethodAssignment(o)&&s&&16&s.flags&&this.incrementCounters(i,t.PropertyDeclOnFunction)}var l=c.tsTypeChecker.getTypeAtLocation(i),u=c.tsTypeChecker.getTypeAtLocation(a);if(39===n.operatorToken.kind)if(e.Utils.isEnumMemberType(l)&&e.Utils.isEnumMemberType(u)){if(296&l.flags&&296&u.getFlags()||402653316&l.flags&&402653316&u.getFlags())return}else{if(e.Utils.isNumberType(l)&&e.Utils.isNumberType(u))return;if(e.Utils.isStringLikeType(l)||e.Utils.isStringLikeType(u))return}else if(50===n.operatorToken.kind||51===n.operatorToken.kind||52===n.operatorToken.kind||47===n.operatorToken.kind||48===n.operatorToken.kind||49===n.operatorToken.kind){if(!e.Utils.isNumberType(l)||!e.Utils.isNumberType(u)||8===i.kind&&!e.Utils.isIntegerConstantValue(i)||8===a.kind&&!e.Utils.isIntegerConstantValue(a))return}else if(27===n.operatorToken.kind){for(var d=n,p=d.parent;p&&218===p.kind;)p=(d=p).parent;if(p&&239===p.kind){var f=p;if(d===f.initializer||d===f.incrementor)return}this.incrementCounters(r,t.CommaOperator)}else if(102===n.operatorToken.kind){var m=e.Utils.unwrapParenthesized(n.left),g=e.Utils.trueSymbolAtLocation(m);if(108===i.kind)return;(e.Utils.isPrimitiveType(l)||e.isTypeNode(m)||e.Utils.isTypeSymbol(g))&&this.incrementCounters(r,t.InstanceofUnsupported)}else if(62===n.operatorToken.kind){e.Utils.needToDeduceStructuralIdentity(u,l)&&this.incrementCounters(n,t.StructuralIdentity);var _=e.Utils.getVariableDeclarationTypeNode(i);this.handleEsObjectAssignment(n,_,a)}},c.prototype.handleVariableDeclarationList=function(r){3&e.getCombinedNodeFlags(r)||this.incrementCounters(r,t.VarDeclaration)},c.prototype.handleVariableDeclaration=function(r){var n=this,i=r;(e.isArrayBindingPattern(i.name)||e.isObjectBindingPattern(i.name))&&this.incrementCounters(r,t.DestructuringDeclaration);var a=function(t){if(e.isIdentifier(t))n.countDeclarationsWithDuplicateName(t,t,t.parent.kind);else for(var r=0,i=t.elements;r<i.length;r++){var o=i[r];e.isOmittedExpression(o)||a(o.name)}};if(a(i.name),i.type&&i.initializer){var o=i.initializer,s=c.tsTypeChecker.getTypeAtLocation(i.type),l=c.tsTypeChecker.getTypeAtLocation(o);e.Utils.needToDeduceStructuralIdentity(l,s)&&this.incrementCounters(i,t.StructuralIdentity)}this.handleEsObjectDelaration(i),this.handleDeclarationInferredType(i),this.handleDefiniteAssignmentAssertion(i)},c.prototype.handleEsObjectDelaration=function(r){var n=!!r.type&&e.Utils.isEsObjectType(r.type),i=r.initializer&&e.Utils.getVariableDeclarationTypeNode(r.initializer),a=!!i&&e.Utils.isEsObjectType(i),o=e.Utils.isInsideBlock(r);!n&&!a||o?r.initializer&&this.handleEsObjectAssignment(r,r.type,r.initializer):this.incrementCounters(r,t.EsObjectType)},c.prototype.handleEsObjectAssignment=function(r,n,i){var a=!!n,o=!!n&&e.Utils.isEsObjectType(n),s=e.Utils.getVariableDeclarationTypeNode(i),c=!!s&&e.Utils.isEsObjectType(s);(a&&!o&&c||o&&!e.Utils.isValueAssignableToESObject(i))&&this.incrementCounters(r,t.EsObjectType)},c.prototype.handleCatchClause=function(e){var r=e;r.variableDeclaration&&r.variableDeclaration.type&&this.incrementCounters(e,t.CatchWithUnsupportedType)},c.prototype.handleClassDeclaration=function(e){var r=this,n=e;this.staticBlocks.clear(),n.name&&this.countDeclarationsWithDuplicateName(n.name,n),this.countClassMembersWithDuplicateName(n);var i=function(e){for(var n=0,i=e.types;n<i.length;n++){var a=i[n];c.tsTypeChecker.getTypeAtLocation(a.expression).isClass()&&117===e.token&&r.incrementCounters(a,t.ImplementsClass)}};if(n.heritageClauses)for(var a=0,o=n.heritageClauses;a<o.length;a++){var s=o[a];s&&i(s)}this.handleDecorators(n.decorators)},c.prototype.handleModuleDeclaration=function(r){var n=r;this.countDeclarationsWithDuplicateName(n.name,n);var i=n.body,a=n.modifiers;if(i&&e.isModuleBlock(i))for(var o=0,s=i.statements;o<s.length;o++){var c=s[o];switch(c.kind){case 234:case 253:case 254:case 256:case 257:case 258:case 270:case 259:break;default:this.incrementCounters(c,t.NonDeclarationInNamespace)}}16&n.flags||!e.Utils.hasModifier(a,134)||this.incrementCounters(n,t.ShorthandAmbientModuleDecl),e.isStringLiteral(n.name)&&n.name.text.includes("*")&&this.incrementCounters(n,t.WildcardsInModuleName)},c.prototype.handleTypeAliasDeclaration=function(e){var t=e;this.countDeclarationsWithDuplicateName(t.name,t)},c.prototype.handleImportClause=function(r){var n=r;if(n.name&&this.countDeclarationsWithDuplicateName(n.name,n),n.namedBindings&&e.isNamedImports(n.namedBindings)){for(var i=[],a=void 0,o=0,s=n.namedBindings.elements;o<s.length;o++){var c=s[o];e.Utils.isDefaultImport(c)?a=c:i.push(c)}if(a){this.incrementCounters(a,t.DefaultImport,!0,void 0)}}},c.prototype.handleImportSpecifier=function(e){var t=e;this.countDeclarationsWithDuplicateName(t.name,t)},c.prototype.handleNamespaceImport=function(e){var t=e;this.countDeclarationsWithDuplicateName(t.name,t)},c.prototype.handleTypeAssertionExpression=function(e){var r=e;"const"===r.type.getText()?this.incrementCounters(r,t.ConstAssertion):this.incrementCounters(e,t.TypeAssertion)},c.prototype.handleMethodDeclaration=function(r){var n,i,a=r,o=this.functionContainsThis(a),s=!1;if(a.modifiers)for(var c=0,l=a.modifiers;c<l.length;c++){if(124===l[c].kind){s=!0;break}}s&&o&&this.incrementCounters(r,t.FunctionContainsThis),a.type||this.handleMissingReturnType(a),a.asteriskToken&&this.incrementCounters(r,t.GeneratorFunction),this.handleDecorators(a.decorators),this.filterOutDecoratorsDiagnostics(e.Utils.getDecorators(a),e.Utils.NON_RETURN_FUNCTION_DECORATORS,{begin:a.parameters.end,end:null!==(i=null===(n=a.body)||void 0===n?void 0:n.getStart())&&void 0!==i?i:a.parameters.end},e.Utils.FUNCTION_HAS_NO_RETURN_ERROR_CODE)},c.prototype.handleIdentifier=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n);i&&(1536&i.flags&&33554432&i.flags&&"globalThis"===n.text?this.incrementCounters(r,t.GlobalThis):this.handleRestrictedValues(n,i))},c.prototype.isAllowedClassValueContext=function(t){for(var r=t;e.isPropertyAccessExpression(r.parent)||e.isQualifiedName(r.parent);)r=r.parent;if(e.isPropertyAssignment(r.parent)&&e.isObjectLiteralExpression(r.parent.parent)&&(r=r.parent.parent),e.isArrowFunction(r.parent)&&r.parent.body===r&&(r=r.parent),e.isCallExpression(r.parent)||e.isNewExpression(r.parent)){var n=r.parent.expression,i=e.Utils.isAnyType(c.tsTypeChecker.getTypeAtLocation(n))||e.Utils.hasLibraryType(n);if(n!==r&&i)return!0}return!1},c.prototype.handleRestrictedValues=function(r,n){512&n.flags&&n&&e.Utils.symbolHasDuplicateName(n,259)||928&n.flags&&!e.Utils.isStruct(n)&&this.identiferUseInValueContext(r,n)&&(32&n.flags&&this.isAllowedClassValueContext(r)||(512&n.flags?this.incrementCounters(r,t.NamespaceAsObject):this.incrementCounters(r,t.ClassAsObject)))},c.prototype.identiferUseInValueContext=function(t,r){for(var n=t;e.isPropertyAccessExpression(n.parent)||e.isQualifiedName(n.parent);)n=n.parent;var i=n.parent;return!(e.isTypeNode(i)&&!e.isTypeOfExpression(i)||this.isEnumPropAccess(t,r,i)||e.isExpressionWithTypeArguments(i)||e.isExportAssignment(i)||e.isExportSpecifier(i)||e.isMetaProperty(i)||e.isImportClause(i)||e.isClassLike(i)||e.isInterfaceDeclaration(i)||e.isModuleDeclaration(i)||e.isEnumDeclaration(i)||e.isNamespaceImport(i)||e.isImportSpecifier(i)||e.isImportEqualsDeclaration(i)||e.isQualifiedName(n)&&t!==n.right||e.isPropertyAccessExpression(n)&&t!==n.name||e.isNewExpression(n.parent)&&n===n.parent.expression||e.isBinaryExpression(n.parent)&&102===n.parent.operatorToken.kind)},c.prototype.isEnumPropAccess=function(t,r,n){return e.isElementAccessExpression(n)&&!!(384&r.flags)&&(n.expression==t||e.isPropertyAccessExpression(n.expression)&&n.expression.name==t)},c.prototype.handleElementAccessExpression=function(r){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n.expression),a=c.tsTypeChecker.typeToTypeNode(i,void 0,0),o=e.Utils.isDerivedFrom(i,e.Utils.CheckType.Array),s=i.isClassOrInterface()&&!e.Utils.isGenericArrayType(i)&&!o,l=e.Utils.isThisOrSuperExpr(n.expression)&&!o;if(!e.Utils.isLibraryType(i)&&!e.Utils.isTypedArray(a)&&(s||e.Utils.isObjectLiteralType(i)||l)){var u=e.Autofixer.fixPropertyAccessByIndex(r),d=void 0!==u;e.Autofixer.shouldAutofix(r,t.PropertyAccessByIndex)||(u=void 0),this.incrementCounters(r,t.PropertyAccessByIndex,d,u)}e.Utils.hasEsObjectType(n.expression)&&this.incrementCounters(r,t.EsObjectType)},c.prototype.handleEnumMember=function(r){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n),a=c.tsTypeChecker.getConstantValue(n);n.initializer&&!e.Utils.isValidEnumMemberInit(n.initializer)&&this.incrementCounters(r,t.EnumMemberNonConstInit);var o=n.parent.members[0],s=c.tsTypeChecker.getTypeAtLocation(o),l=c.tsTypeChecker.getConstantValue(o);void 0!==a&&"string"==typeof a&&void 0!==l&&"string"==typeof l||void 0!==a&&"number"==typeof a&&void 0!==l&&"number"==typeof l||s!==i&&this.incrementCounters(r,t.EnumMemberNonConstInit)},c.prototype.handleExportAssignment=function(e){e.isExportEquals&&this.incrementCounters(e,t.ExportAssignment)},c.prototype.handleCallExpression=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.expression),a=c.tsTypeChecker.getTypeAtLocation(n.expression),o=c.tsTypeChecker.getResolvedSignature(n);this.handleImportCall(n),this.handleRequireCall(n),void 0!==i&&(this.handleStdlibAPICall(n,i),this.handleFunctionApplyBindPropCall(n,i),e.Utils.symbolHasEsObjectType(i)&&this.incrementCounters(n,t.EsObjectType)),void 0!==o&&(e.Utils.isLibrarySymbol(i)||this.handleGenericCallWithNoTypeArgs(n,o),this.handleStructIdentAndUndefinedInArgs(n,o)),this.handleLibraryTypeCall(n,a),e.isPropertyAccessExpression(n.expression)&&e.Utils.hasEsObjectType(n.expression.expression)&&this.incrementCounters(r,t.EsObjectType)},c.prototype.handleImportCall=function(r){if(100===r.expression.kind){var n=r.arguments;if(n.length>1&&e.isObjectLiteralExpression(n[1]))for(var i=0,a=n[1].properties;i<a.length;i++){var o=a[i];if((e.isPropertyAssignment(o)||e.isShorthandPropertyAssignment(o))&&"assert"===o.name.getText()){this.incrementCounters(o,t.ImportAssertion);break}}}},c.prototype.handleRequireCall=function(r){if(e.isIdentifier(r.expression)&&"require"===r.expression.text&&e.isVariableDeclaration(r.parent)){var n=c.tsTypeChecker.getTypeAtLocation(r.expression);e.Utils.isInterfaceType(n)&&"NodeRequire"===n.symbol.name&&this.incrementCounters(r.parent,t.ImportAssignment)}},c.prototype.handleGenericCallWithNoTypeArgs=function(r,n){var i,a,o=e.isNewExpression(r)?167:253,s=c.tsTypeChecker.signatureToSignatureDeclaration(n,o,void 0,70221856);if(null==s?void 0:s.typeArguments)for(var l=s.typeArguments,u=null!==(a=null===(i=r.typeArguments)||void 0===i?void 0:i.length)&&void 0!==a?a:0;u<l.length;++u){if(153==l[u].kind){this.incrementCounters(r,t.GenericCallNoTypeArgs);break}}},c.prototype.handleFunctionApplyBindPropCall=function(e,r){var n=c.tsTypeChecker.getFullyQualifiedName(r);c.listApplyBindCallApis.includes(n)&&this.incrementCounters(e,t.FunctionApplyBindCall)},c.prototype.handleStructIdentAndUndefinedInArgs=function(r,n){if(r.arguments)for(var i=0;i<r.arguments.length;++i){var a=r.arguments[i],o=c.tsTypeChecker.getTypeAtLocation(a);if(o){var s=i<n.parameters.length?i:n.parameters.length-1,l=n.parameters[s];if(l){var u=l.valueDeclaration;if(u&&e.isParameter(u)){var d=c.tsTypeChecker.getTypeOfSymbolAtLocation(l,u);if(u.dotDotDotToken&&e.Utils.isGenericArrayType(d)&&d.typeArguments&&(d=d.typeArguments[0]),!d)continue;e.Utils.needToDeduceStructuralIdentity(o,d)&&this.incrementCounters(a,t.StructuralIdentity)}}}}},c.prototype.handleStdlibAPICall=function(r,n){var i=n.getName(),a=e.Utils.getParentSymbolName(n);if(void 0!==a){var o=c.LimitedApis.get(a);void 0===o||null!==o.arr&&!o.arr.includes(i)||this.incrementCounters(r,o.fault)}else{if(e.Utils.LIMITED_STD_GLOBAL_FUNC.includes(i))return void this.incrementCounters(r,t.LimitedStdLibApi);var s=n.escapedName;"Symbol"!==s&&"SymbolConstructor"!==s||this.incrementCounters(r,t.SymbolType)}},c.prototype.findNonFilteringRangesFunctionCalls=function(t){for(var r=[],n=0,i=t.arguments;n<i.length;n++){var a=i[n];if(e.isArrowFunction(a)){var o=a;r.push({begin:o.body.pos,end:o.body.end})}else e.isCallExpression(a)&&r.push({begin:a.arguments.pos,end:a.arguments.end})}return r},c.prototype.handleLibraryTypeCall=function(t,r){var n,s=this,l=e.Utils.isLibraryType(r),u=[];this.libraryTypeCallDiagnosticChecker.configure(l,u);var d=this.findNonFilteringRangesFunctionCalls(t),p=[];if(0!==d.length){var f=d.length;p.push({begin:t.arguments.pos,end:d[0].begin}),p.push({begin:d[f-1].end,end:t.arguments.end});for(var m=0;m<f-1;m++)p.push({begin:d[m].end,end:d[m+1].begin})}else p.push({begin:t.arguments.pos,end:t.arguments.end});this.filterStrictDiagnostics(((n={})[i]=function(e){return s.checkInRange([{begin:t.pos,end:t.end}],e)},n[o]=function(e){return s.checkInRange([{begin:t.pos,end:t.end}],e)},n[a]=function(e){return s.checkInRange(p,e)},n),this.libraryTypeCallDiagnosticChecker);for(var g=0,_=u;g<_.length;g++){var h=_[g];c.filteredDiagnosticMessages.push(h)}},c.prototype.handleNewExpression=function(e){var t=e,r=c.tsTypeChecker.getResolvedSignature(t);void 0!==r&&(this.handleStructIdentAndUndefinedInArgs(t,r),this.handleGenericCallWithNoTypeArgs(t,r))},c.prototype.handleAsExpression=function(r){var n,i,a=r;"const"===a.type.getText()&&this.incrementCounters(r,t.ConstAssertion);var o=c.tsTypeChecker.getTypeAtLocation(a.type).getNonNullableType(),s=c.tsTypeChecker.getTypeAtLocation(a.expression).getNonNullableType();e.Utils.needToDeduceStructuralIdentity(s,o,!0)&&this.incrementCounters(a,t.StructuralIdentity),(e.Utils.isNumberType(s)&&"Number"===(null===(n=o.getSymbol())||void 0===n?void 0:n.getName())||e.Utils.isBooleanType(s)&&"Boolean"===(null===(i=o.getSymbol())||void 0===i?void 0:i.getName()))&&this.incrementCounters(r,t.TypeAssertion)},c.prototype.handleTypeReference=function(r){var n=r,i=e.Utils.isEsObjectType(n),a=e.Utils.isEsObjectPossiblyAllowed(n);if(!i||a){var o=e.Utils.entityNameToString(n.typeName);if(e.Utils.LIMITED_STANDARD_UTILITY_TYPES.includes(o))this.incrementCounters(r,t.UtilityType);else{var s="Partial"===e.Utils.entityNameToString(n.typeName),l=!!n.typeArguments&&1===n.typeArguments.length,u=!!n.typeArguments&&l&&n.typeArguments[0],d=u&&c.tsTypeChecker.getTypeFromTypeNode(u);s&&d&&!d.isClassOrInterface()&&this.incrementCounters(r,t.UtilityType)}}else this.incrementCounters(r,t.EsObjectType)},c.prototype.handleMetaProperty=function(e){"target"===e.name.text&&this.incrementCounters(e,t.NewTarget)},c.prototype.handleStructDeclaration=function(t){var r=this;t.forEachChild((function(t){e.isConstructorDeclaration(t)||r.visitTSNode(t)}))},c.prototype.handleSpreadOp=function(r){if(e.isSpreadElement(r)){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n.expression);if(i){var a=c.tsTypeChecker.typeToTypeNode(i,void 0,0);if(void 0!==a&&(e.isCallLikeExpression(r.parent)||e.isArrayLiteralExpression(r.parent))&&(e.isArrayTypeNode(a)||e.Utils.isTypedArray(a)||e.Utils.isDerivedFrom(i,e.Utils.CheckType.Array)))return}}this.incrementCounters(r,t.SpreadOperator)},c.prototype.handleConstructSignature=function(e){switch(e.parent.kind){case 178:this.incrementCounters(e,t.ConstructorType);break;case 256:this.incrementCounters(e,t.ConstructorIface);break;default:return}},c.prototype.handleComments=function(t){var r=t.getSourceFile().getFullText(),n=t.parent;if(!n||n.getFullStart()!==t.getFullStart()){var i=e.getLeadingCommentRanges(r,t.getFullStart());if(i)for(var a=0,o=i;a<o.length;a++){var s=o[a];this.checkErrorSuppressingAnnotation(s,r)}}if(!n||n.getEnd()!==t.getEnd()){var c=e.getTrailingCommentRanges(r,t.getEnd());if(c)for(var l=0,u=c;l<u.length;l++){s=u[l];this.checkErrorSuppressingAnnotation(s,r)}}},c.prototype.handleExpressionWithTypeArguments=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.expression);i&&e.Utils.isEsObjectSymbol(i)&&this.incrementCounters(n,t.EsObjectType)},c.prototype.handleComputedPropertyName=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.expression);i&&e.Utils.isSymbolIterator(i)||this.incrementCounters(r,t.ComputedPropertyName)},c.prototype.checkErrorSuppressingAnnotation=function(e,r){var n=3===e.kind?r.slice(e.pos+2,e.end-2):r.slice(e.pos+2,e.end);if(!n.endsWith("\n")){var i=n.trim();(i.startsWith("@ts-ignore")||i.startsWith("@ts-nocheck")||i.startsWith("@ts-expect-error"))&&this.incrementCounters(e,t.ErrorSuppression)}},c.prototype.handleDecorators=function(r){if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n],o="";e.isIdentifier(a.expression)?o=a.expression.text:e.isCallExpression(a.expression)&&e.isIdentifier(a.expression.expression)&&(o=a.expression.expression.text),e.Utils.ARKUI_DECORATORS.includes(o)||this.incrementCounters(a,t.UnsupportedDecorators)}},c.prototype.handleGetAccessor=function(e){this.handleDecorators(e.decorators)},c.prototype.handleSetAccessor=function(e){this.handleDecorators(e.decorators)},c.prototype.handleDeclarationInferredType=function(t){if(!(t.type||e.isCatchClause(t.parent)||e.isArrayBindingPattern(t.name)||e.isObjectBindingPattern(t.name))){var r=c.tsTypeChecker.getTypeAtLocation(t);r&&this.validateDeclInferredType(r,t)}},c.prototype.handleDefiniteAssignmentAssertion=function(e){void 0!==e.exclamationToken&&this.incrementCounters(e,t.DefiniteAssignment)},c.prototype.checkAnyOrUnknownChildNode=function(e){if(129===e.kind||153===e.kind)return!0;for(var t=0,r=e.getChildren();t<r.length;t++){var n=r[t];if(this.checkAnyOrUnknownChildNode(n))return!0}return!1},c.prototype.handleInferredObjectreference=function(e,t){var r=c.tsTypeChecker.getTypeArguments(e);if(r&&!this.checkAnyOrUnknownChildNode(t))for(var n=0,i=r;n<i.length;n++){var a=i[n];this.validateDeclInferredType(a,t)}},c.prototype.validateDeclInferredType=function(r,n){if(void 0===r.aliasSymbol){var i=524288&r.flags,a=4&r.objectFlags;if(i&&a)this.handleInferredObjectreference(r,n);else if(!this.validatedTypesSet.has(r)){if(r.isUnion()){this.validatedTypesSet.add(r);for(var o=0,s=r.types;o<s.length;o++){var c=s[o];this.validateDeclInferredType(c,n)}}e.Utils.isAnyType(r)?this.incrementCounters(n,t.AnyType):e.Utils.isUnknownType(r)&&this.incrementCounters(n,t.UnknownType)}}},c.prototype.lint=function(){this.visitTSNode(this.sourceFile)},c.reportDiagnostics=!0,c.problemsInfos=[],c.filteredDiagnosticMessages=[],c.listApplyBindCallApis=["Function.apply","Function.call","Function.bind","CallableFunction.apply","CallableFunction.call","CallableFunction.bind"],c.LimitedApis=new e.Map([["global",{arr:e.Utils.LIMITED_STD_GLOBAL_FUNC,fault:t.LimitedStdLibApi}],["Object",{arr:e.Utils.LIMITED_STD_OBJECT_API,fault:t.LimitedStdLibApi}],["ObjectConstructor",{arr:e.Utils.LIMITED_STD_OBJECT_API,fault:t.LimitedStdLibApi}],["Reflect",{arr:e.Utils.LIMITED_STD_REFLECT_API,fault:t.LimitedStdLibApi}],["ProxyHandler",{arr:e.Utils.LIMITED_STD_PROXYHANDLER_API,fault:t.LimitedStdLibApi}],["Symbol",{arr:null,fault:t.SymbolType}],["SymbolConstructor",{arr:null,fault:t.SymbolType}]]),c}();e.TypeScriptLinter=c}(d||(d={})),function(e){var t=function(){function t(t,i){var o=function(t,n){var i=a({},t.getCompilerOptions()),o=function(e){var t=r(),n=!1;return Object.keys(t).forEach((function(t){n=n||!!e[t]})),n}(i),s=r(!o),c=function(t,r,n,i){var a=function(e,t,r,n){var i={rootNames:e,host:r,options:t};n&&(i.options=Object.assign(i.options,n));return i.options.allowJs=!0,i.options.checkJs=!0,i}(t,r,n,i),o=e.createProgram(a);return o}(t.getRootFileNames(),i,n,s);return{strict:o?t:c,nonStrict:o?c:t,wasStrict:o}}(t,i),s=o.strict,c=o.nonStrict,l=o.wasStrict;this.diagnosticsExtractor=new n(s,c),this.wasStrict=l}return t.prototype.getOriginalProgram=function(){return this.wasStrict?this.diagnosticsExtractor.strictProgram:this.diagnosticsExtractor.nonStrictProgram},t.prototype.getStrictProgram=function(){return this.diagnosticsExtractor.strictProgram},t.prototype.getStrictDiagnostics=function(e){return this.diagnosticsExtractor.getStrictDiagnostics(e)},t}();function r(e){return void 0===e&&(e=!0),{strictNullChecks:e,strictFunctionTypes:e,strictPropertyInitialization:e,noImplicitReturns:e}}e.TSCCompiledProgram=t;var n=function(){function t(e,t){this.strictProgram=e,this.nonStrictProgram=t}return t.prototype.getStrictDiagnostics=function(t){var r=i(this.strictProgram,t).filter((function(e){return!(0===e.length&&0===e.start)})),n=i(this.nonStrictProgram,t).reduce((function(e,t){var r=o(t);return r&&e.add(r),e}),new e.Set);return r.filter((function(e){var t=o(e);return t&&!n.has(t)}))},t}();function i(e,t){var r=e.getSourceFile(t);return e.getSemanticDiagnostics(r).concat(e.getSyntacticDiagnostics(r)).filter((function(e){return e.file===r}))}function o(e){if(void 0!==e.start&&void 0!==e.length)return e.code+"%"+e.start+"%"+e.length}}(d||(d={})),function(e){function t(t,r){var n,i,a,o,s,c,l=r.severity===e.Utils.ProblemSeverity.ERROR?e.DiagnosticCategory.Error:e.DiagnosticCategory.Warning;return n=l,i=-1,a=t,o=r.start,s=r.end-r.start+1,c=r.rule,{category:n,code:i,file:a,start:o,length:s,messageText:c}}e.translateDiag=t,e.runArkTSLinter=function(r,n,i){var a;e.TypeScriptLinter.errorLineNumbersString="",e.TypeScriptLinter.warningLineNumbersString="";var o=[];e.LinterConfig.initStatic();var s=new e.TSCCompiledProgram(r,n),c=s.getStrictProgram(),l=[];i?l.push(i):l=c.getSourceFiles();var u=function(t,r){var n=new e.Map;return r.forEach((function(r){var i=t.getStrictDiagnostics(r.fileName);0!==i.length&&n.set(e.normalizePath(r.fileName),i)})),n}(s,l);e.TypeScriptLinter.initGlobals();for(var d=function(r){if(e.TypeScriptLinter.initStatic(),e.TypeScriptLinter.lintEtsOnly&&8!==r.scriptKind)return"continue";var n=new e.TypeScriptLinter(r,c,u);e.Utils.setTypeChecker(e.TypeScriptLinter.tsTypeChecker),n.lint();var i=null!==(a=u.get(r.fileName))&&void 0!==a?a:[];e.TypeScriptLinter.problemsInfos.forEach((function(e){return i.push(t(r,e))})),o.push.apply(o,i)},p=0,f=l;p<f.length;p++){d(f[p])}return o}}(d||(d={}))},89387:e=>{function t(e){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}t.keys=()=>[],t.resolve=t,t.id=89387,e.exports=t},95540:(e,t,r)=>{var n=r(20181).Buffer;void 0===n.from&&(n.from=function(e,t,r){return new n(e,t,r)},n.alloc=n.from),e.exports=n},51324:(e,t,r)=>{var n=r(51007),i=r(2203),a=r(95540);i.Writable&&i.Writable.prototype.destroy||(i=r(47715)),e.exports=function(e){return new n((function(t,r){var n=[],o=i.Transform().on("finish",(function(){t(a.concat(n))})).on("error",r);o._transform=function(e,t,r){n.push(e),r()},e.on("error",r).pipe(o)}))}},92321:(e,t,r)=>{var n,i=r(92096),a=r(2203);function o(e,t){return n||function(){var e,t,r;for(n=[],t=0;t<256;t++){for(e=t,r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>=1;n[t]=e>>>0}}(),e.charCodeAt&&(e=e.charCodeAt(0)),i(t).shiftRight(8).and(16777215).xor(n[i(t).xor(e).and(255)]).value}function s(){if(!(this instanceof s))return new s;this.key0=305419896,this.key1=591751049,this.key2=878082192}a.Writable&&a.Writable.prototype.destroy||(a=r(47715)),s.prototype.update=function(e){this.key0=o(e,this.key0),this.key1=i(this.key0).and(255).and(4294967295).add(this.key1),this.key1=i(this.key1).multiply(134775813).add(1).and(4294967295).value,this.key2=o(i(this.key1).shiftRight(24).and(255),this.key2)},s.prototype.decryptByte=function(e){var t=i(this.key2).or(2);return e^=i(t).multiply(i(1^t)).shiftRight(8).and(255),this.update(e),e},s.prototype.stream=function(){var e=a.Transform(),t=this;return e._transform=function(e,r,n){for(var i=0;i<e.length;i++)e[i]=t.decryptByte(e[i]);this.push(e),n()},e},e.exports=s},12994:(e,t,r)=>{var n=r(2203),i=r(39023);function a(){if(!(this instanceof a))return new a;n.Transform.call(this)}n.Writable&&n.Writable.prototype.destroy||(n=r(47715)),i.inherits(a,n.Transform),a.prototype._transform=function(e,t,r){r()},e.exports=a},63822:(e,t,r)=>{var n=r(46892),i=r(17437),a=r(20603),o=r(51007),s=r(51324),c=r(58189),l=r(95540),u=r(16928),d=r(41723).Writer,p=r(3214),f=l.alloc(4);f.writeUInt32LE(101010256,0),e.exports=function(e,t){var r,l,m,g,_=i(),h=i(),y=t&&t.tailSize||80;return t&&t.crx&&(l=function(e){var t=e.stream(0).pipe(i());return t.pull(4).then((function(e){var r;if(875721283===e.readUInt32LE(0))return t.pull(12).then((function(e){r=n.parse(e).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars})).then((function(){return t.pull(r.pubKeyLength+r.signatureLength)})).then((function(e){return r.publicKey=e.slice(0,r.pubKeyLength),r.signature=e.slice(r.pubKeyLength),r.size=16+r.pubKeyLength+r.signatureLength,r}))}))}(e)),e.size().then((function(t){return r=t,e.stream(Math.max(0,t-y)).on("error",(function(e){_.emit("error",e)})).pipe(_),_.pull(f)})).then((function(){return o.props({directory:_.pull(22),crxHeader:l})})).then((function(t){var a=t.directory;if(m=t.crxHeader&&t.crxHeader.size||0,65535==(g=n.parse(a).word32lu("signature").word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars).numberOfRecords||65535==g.numberOfRecords||4294967295==g.offsetToStartOfCentralDirectory){const t=20,a=r-(y-_.match+t),o=i();return e.stream(a).pipe(o),o.pull(t).then((function(t){return function(e,t){var r=n.parse(t).word32lu("signature").word32lu("diskNumber").word64lu("offsetToStartOfCentralDirectory").word32lu("numberOfDisks").vars;if(117853008!=r.signature)throw new Error("invalid zip64 end of central dir locator signature (0x07064b50): 0x"+r.signature.toString(16));var a=i();return e.stream(r.offsetToStartOfCentralDirectory).pipe(a),a.pull(56)}(e,t)})).then((function(e){g=function(e){var t=n.parse(e).word32lu("signature").word64lu("sizeOfCentralDirectory").word16lu("version").word16lu("versionsNeededToExtract").word32lu("diskNumber").word32lu("diskStart").word64lu("numberOfRecordsOnDisk").word64lu("numberOfRecords").word64lu("sizeOfCentralDirectory").word64lu("offsetToStartOfCentralDirectory").vars;if(101075792!=t.signature)throw new Error("invalid zip64 end of central dir locator signature (0x06064b50): 0x0"+t.signature.toString(16));return t}(e)}))}g.offsetToStartOfCentralDirectory+=m})).then((function(){if(g.commentLength)return _.pull(g.commentLength).then((function(e){g.comment=e.toString("utf8")}))})).then((function(){return e.stream(g.offsetToStartOfCentralDirectory).pipe(h),g.extract=function(e){if(!e||!e.path)throw new Error("PATH_MISSING");return e.path=u.resolve(u.normalize(e.path)),g.files.then((function(t){return o.map(t,(function(t){if("Directory"!=t.type){var r=u.join(e.path,t.path);if(0==r.indexOf(e.path)){var n=e.getWriter?e.getWriter({path:r}):d({path:r});return new o((function(r,i){t.stream(e.password).on("error",i).pipe(n).on("close",r).on("error",i)}))}}}),{concurrency:e.concurrency>1?e.concurrency:1})}))},g.files=o.mapSeries(Array(g.numberOfRecords),(function(){return h.pull(46).then((function(t){var r=n.parse(t).word32lu("signature").word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars;return r.offsetToLocalFileHeader+=m,r.lastModifiedDateTime=p(r.lastModifiedDate,r.lastModifiedTime),h.pull(r.fileNameLength).then((function(e){return r.pathBuffer=e,r.path=e.toString("utf8"),r.isUnicode=!!(2048&r.flags),h.pull(r.extraFieldLength)})).then((function(e){return r.extra=c(e,r),h.pull(r.fileCommentLength)})).then((function(t){return r.comment=t,r.type=0===r.uncompressedSize&&/[\/\\]$/.test(r.path)?"Directory":"File",r.stream=function(t){return a(e,r.offsetToLocalFileHeader,t,r)},r.buffer=function(e){return s(r.stream(e))},r}))}))})),o.props(g)}))}},74773:(e,t,r)=>{var n=r(63735),i=r(51007),a=r(63822),o=r(2203);o.Writable&&o.Writable.prototype.destroy||(o=r(47715)),e.exports={buffer:function(e,t){return a({stream:function(t,r){var n=o.PassThrough();return n.end(e.slice(t,r)),n},size:function(){return i.resolve(e.length)}},t)},file:function(e,t){return a({stream:function(t,r){return n.createReadStream(e,{start:t,end:r&&t+r})},size:function(){return new i((function(t,r){n.stat(e,(function(e,n){e?r(e):t(n.size)}))}))}},t)},url:function(e,t,r){if("string"==typeof t&&(t={url:t}),!t.url)throw"URL missing";t.headers=t.headers||{};var n={stream:function(r,n){var i=Object.create(t);return i.headers=Object.create(t.headers),i.headers.range="bytes="+r+"-"+(n||""),e(i)},size:function(){return new i((function(r,n){var i=e(t);i.on("response",(function(e){i.abort(),e.headers["content-length"]?r(e.headers["content-length"]):n(new Error("Missing content length header"))})).on("error",n)}))}};return a(n,r)},s3:function(e,t,r){return a({size:function(){return new i((function(r,n){e.headObject(t,(function(e,t){e?n(e):r(t.ContentLength)}))}))},stream:function(r,n){var i={};for(var a in t)i[a]=t[a];return i.Range="bytes="+r+"-"+(n||""),e.getObject(i).createReadStream()}},r)},custom:function(e,t){return a(e,t)}}},20603:(e,t,r)=>{var n=r(51007),i=r(92321),a=r(17437),o=r(2203),s=r(46892),c=r(43106),l=r(58189),u=r(95540),d=r(3214);o.Writable&&o.Writable.prototype.destroy||(o=r(47715)),e.exports=function(e,t,r,p){var f=a(),m=o.PassThrough(),g=e.stream(t);return g.pipe(f).on("error",(function(e){m.emit("error",e)})),m.vars=f.pull(30).then((function(e){var t=s.parse(e).word32lu("signature").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars;return t.lastModifiedDateTime=d(t.lastModifiedDate,t.lastModifiedTime),f.pull(t.fileNameLength).then((function(e){return t.fileName=e.toString("utf8"),f.pull(t.extraFieldLength)})).then((function(e){var a;return t.extra=l(e,t),p&&p.compressedSize&&(t=p),1&t.flags&&(a=f.pull(12).then((function(e){if(!r)throw new Error("MISSING_PASSWORD");var n=i();String(r).split("").forEach((function(e){n.update(e)}));for(var a=0;a<e.length;a++)e[a]=n.decryptByte(e[a]);t.decrypt=n,t.compressedSize-=12;var o=8&t.flags?t.lastModifiedTime>>8&255:t.crc32>>24&255;if(e[11]!==o)throw new Error("BAD_PASSWORD");return t}))),n.resolve(a).then((function(){return m.emit("vars",t),t}))}))})),m.vars.then((function(e){var t,r=!(8&e.flags)||e.compressedSize>0,n=e.compressionMethod?c.createInflateRaw():o.PassThrough();r?(m.size=e.uncompressedSize,t=e.compressedSize):(t=u.alloc(4)).writeUInt32LE(134695760,0);var i=f.stream(t);e.decrypt&&(i=i.pipe(e.decrypt.stream())),i.pipe(n).on("error",(function(e){m.emit("error",e)})).pipe(m).on("finish",(function(){g.destroy?g.destroy():g.abort?g.abort():g.close?g.close():g.push?g.push():console.log("warning - unable to close stream")}))})).catch((function(e){m.emit("error",e)})),m}},17437:(e,t,r)=>{var n=r(2203),i=r(51007),a=r(39023),o=r(95540);function s(){if(!(this instanceof s))return new s;n.Duplex.call(this,{decodeStrings:!1,objectMode:!0}),this.buffer=o.from("");var e=this;e.on("finish",(function(){e.finished=!0,e.emit("chunk",!1)}))}n.Writable&&n.Writable.prototype.destroy||(n=r(47715)),a.inherits(s,n.Duplex),s.prototype._write=function(e,t,r){this.buffer=o.concat([this.buffer,e]),this.cb=r,this.emit("chunk")},s.prototype.stream=function(e,t){var r,i=n.PassThrough(),a=this;function o(){if("function"==typeof a.cb){var e=a.cb;return a.cb=void 0,e()}}function s(){var n;if(a.buffer&&a.buffer.length){if("number"==typeof e)n=a.buffer.slice(0,e),a.buffer=a.buffer.slice(e),e-=n.length,r=!e;else{var c=a.buffer.indexOf(e);if(-1!==c)a.match=c,t&&(c+=e.length),n=a.buffer.slice(0,c),a.buffer=a.buffer.slice(c),r=!0;else{var l=a.buffer.length-e.length;l<=0?o():(n=a.buffer.slice(0,l),a.buffer=a.buffer.slice(l))}}n&&i.write(n,(function(){(0===a.buffer.length||e.length&&a.buffer.length<=e.length)&&o()}))}if(r)a.removeListener("chunk",s),i.end();else if(a.finished)return a.removeListener("chunk",s),void a.emit("error",new Error("FILE_ENDED"))}return a.on("chunk",s),s(),i},s.prototype.pull=function(e,t){if(0===e)return i.resolve("");if(!isNaN(e)&&this.buffer.length>e){var r=this.buffer.slice(0,e);return this.buffer=this.buffer.slice(e),i.resolve(r)}var a,s,c=o.from(""),l=this,u=n.Transform();return u._transform=function(e,t,r){c=o.concat([c,e]),r()},new i((function(r,n){if(a=n,s=function(e){l.__emittedError=e,n(e)},l.finished)return n(new Error("FILE_ENDED"));l.once("error",s),l.stream(e,t).on("error",n).pipe(u).on("finish",(function(){r(c)})).on("error",n)})).finally((function(){l.removeListener("error",a),l.removeListener("error",s)}))},s.prototype._read=function(){},e.exports=s},39149:(e,t,r)=>{e.exports=function(e){e.path=a.resolve(a.normalize(e.path));var t=new n(e),r=new o.Writable({objectMode:!0});r._write=function(t,r,n){if("Directory"==t.type)return n();var o=a.join(e.path,t.path);if(0!=o.indexOf(e.path))return n();const s=e.getWriter?e.getWriter({path:o}):i({path:o});t.pipe(s).on("error",n).on("close",n)};var l=s(t,r);return t.once("crx-header",(function(e){l.crxHeader=e})),t.pipe(r).on("finish",(function(){l.emit("close")})),l.promise=function(){return new c((function(e,t){l.on("close",e),l.on("error",t)}))},l};var n=r(199),i=r(41723).Writer,a=r(16928),o=r(2203),s=r(87450),c=r(51007)},199:(e,t,r)=>{var n=r(39023),i=r(43106),a=r(2203),o=r(46892),s=r(51007),c=r(17437),l=r(12994),u=r(51324),d=r(58189),p=r(95540),f=r(3214);a.Writable&&a.Writable.prototype.destroy||(a=r(47715));var m=p.alloc(4);function g(e){if(!(this instanceof g))return new g(e);var t=this;t._opts=e||{verbose:!1},c.call(t,t._opts),t.on("finish",(function(){t.emit("end"),t.emit("close")})),t._readRecord().catch((function(e){t.__emittedError&&t.__emittedError===e||t.emit("error",e)}))}m.writeUInt32LE(101010256,0),n.inherits(g,c),g.prototype._readRecord=function(){var e=this;return e.pull(4).then((function(t){if(0!==t.length){var r=t.readUInt32LE(0);if(875721283===r)return e._readCrxHeader();if(67324752===r)return e._readFile();if(33639248===r)return e.reachedCD=!0,e._readCentralDirectoryFileHeader();if(101010256===r)return e._readEndOfCentralDirectoryRecord();if(e.reachedCD){return e.pull(m,!0).then((function(){return e._readEndOfCentralDirectoryRecord()}))}e.emit("error",new Error("invalid signature: 0x"+r.toString(16)))}}))},g.prototype._readCrxHeader=function(){var e=this;return e.pull(12).then((function(t){return e.crxHeader=o.parse(t).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars,e.pull(e.crxHeader.pubKeyLength+e.crxHeader.signatureLength)})).then((function(t){return e.crxHeader.publicKey=t.slice(0,e.crxHeader.pubKeyLength),e.crxHeader.signature=t.slice(e.crxHeader.pubKeyLength),e.emit("crx-header",e.crxHeader),e._readRecord()}))},g.prototype._readFile=function(){var e=this;return e.pull(26).then((function(t){var r=o.parse(t).word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars;return r.lastModifiedDateTime=f(r.lastModifiedDate,r.lastModifiedTime),e.crxHeader&&(r.crxHeader=e.crxHeader),e.pull(r.fileNameLength).then((function(t){var n=t.toString("utf8"),o=a.PassThrough(),c=!1;return o.autodrain=function(){c=!0;var e=o.pipe(l());return e.promise=function(){return new s((function(t,r){e.on("finish",t),e.on("error",r)}))},e},o.buffer=function(){return u(o)},o.path=n,o.props={},o.props.path=n,o.props.pathBuffer=t,o.props.flags={isUnicode:!!(2048&r.flags)},o.type=0===r.uncompressedSize&&/[\/\\]$/.test(n)?"Directory":"File",e._opts.verbose&&("Directory"===o.type?console.log(" creating:",n):"File"===o.type&&(0===r.compressionMethod?console.log(" extracting:",n):console.log(" inflating:",n))),e.pull(r.extraFieldLength).then((function(t){var l=d(t,r);o.vars=r,o.extra=l,e._opts.forceStream?e.push(o):(e.emit("entry",o),(e._readableState.pipesCount||e._readableState.pipes&&e._readableState.pipes.length)&&e.push(o)),e._opts.verbose&&console.log({filename:n,vars:r,extra:l});var u,f=!(8&r.flags)||r.compressedSize>0;o.__autodraining=c;var m=r.compressionMethod&&!c?i.createInflateRaw():a.PassThrough();return f?(o.size=r.uncompressedSize,u=r.compressedSize):(u=p.alloc(4)).writeUInt32LE(134695760,0),new s((function(t,r){e.stream(u).pipe(m).on("error",(function(t){e.emit("error",t)})).pipe(o).on("finish",(function(){return f?e._readRecord().then(t).catch(r):e._processDataDescriptor(o).then(t).catch(r)}))}))}))}))}))},g.prototype._processDataDescriptor=function(e){var t=this;return t.pull(16).then((function(r){var n=o.parse(r).word32lu("dataDescriptorSignature").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").vars;return e.size=n.uncompressedSize,t._readRecord()}))},g.prototype._readCentralDirectoryFileHeader=function(){var e=this;return e.pull(42).then((function(t){var r=o.parse(t).word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars;return e.pull(r.fileNameLength).then((function(t){return r.fileName=t.toString("utf8"),e.pull(r.extraFieldLength)})).then((function(t){return e.pull(r.fileCommentLength)})).then((function(t){return e._readRecord()}))}))},g.prototype._readEndOfCentralDirectoryRecord=function(){var e=this;return e.pull(18).then((function(t){var r=o.parse(t).word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars;return e.pull(r.commentLength).then((function(t){t=t.toString("utf8"),e.end(),e.push(null)}))}))},g.prototype.promise=function(){var e=this;return new s((function(t,r){e.on("finish",t),e.on("error",r)}))},e.exports=g},3214:e=>{e.exports=function(e,t){const r=31&e,n=e>>5&15,i=1980+(e>>9&127),a=t?2*(31&t):0,o=t?t>>5&63:0,s=t?t>>11:0;return new Date(Date.UTC(i,n-1,r,s,o,a))}},58189:(e,t,r)=>{var n=r(46892);e.exports=function(e,t){for(var r;!r&&e&&e.length;){var i=n.parse(e).word16lu("signature").word16lu("partsize").word64lu("uncompressedSize").word64lu("compressedSize").word64lu("offset").word64lu("disknum").vars;1===i.signature?r=i:e=e.slice(i.partsize+4)}return r=r||{},4294967295===t.compressedSize&&(t.compressedSize=r.compressedSize),4294967295===t.uncompressedSize&&(t.uncompressedSize=r.uncompressedSize),4294967295===t.offsetToLocalFileHeader&&(t.offsetToLocalFileHeader=r.offset),r}},97315:(e,t,r)=>{var n=r(2203),i=r(199),a=r(87450),o=r(51324);n.Writable&&n.Writable.prototype.destroy||(n=r(47715)),e.exports=function(e,t){var r,s=n.PassThrough({objectMode:!0}),c=n.PassThrough(),l=n.Transform({objectMode:!0}),u=e instanceof RegExp?e:e&&new RegExp(e);l._transform=function(e,t,n){if(r||u&&!u.exec(e.path))return e.autodrain(),n();r=!0,d.emit("entry",e),e.on("error",(function(e){c.emit("error",e)})),e.pipe(c).on("error",(function(e){n(e)})).on("finish",(function(e){n(null,e)}))},s.pipe(i(t)).on("error",(function(e){c.emit("error",e)})).pipe(l).on("error",Object).on("finish",(function(){r?c.end():c.emit("error",new Error("PATTERN_NOT_FOUND"))}));var d=a(s,c);return d.buffer=function(){return o(c)},d}},28383:(e,t,r)=>{"use strict";var n=r(33225),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(15622));a.inherits=r(72017);var o=r(80253),s=r(38589);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},4291:(e,t,r)=>{"use strict";e.exports=a;var n=r(68609),i=Object.create(r(15622));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(72017),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},80253:(e,t,r)=>{"use strict";var n=r(33225);e.exports=y;var i,a=r(64634);y.ReadableState=h;r(24434).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(54531),c=r(92861).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(15622));u.inherits=r(72017);var d=r(39023),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(76005),g=r(46033);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(28383));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(83141).I),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(28383),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,E(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&E(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(83141).I),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(w,e,t))}function w(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):E(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&E(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},68609:(e,t,r)=>{"use strict";e.exports=o;var n=r(28383),i=Object.create(r(15622));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(72017),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},38589:(e,t,r)=>{"use strict";var n=r(33225);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(15622));s.inherits=r(72017);var c={deprecate:r(27983)},l=r(54531),u=r(92861).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(46033);function m(){}function g(e,t){a=a||r(28383),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(28383),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},76005:(e,t,r)=>{"use strict";var n=r(92861).Buffer,i=r(39023);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},46033:(e,t,r)=>{"use strict";var n=r(33225);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},54531:(e,t,r)=>{e.exports=r(2203)},47715:(e,t,r)=>{var n=r(2203);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(80253)).Stream=n||t,t.Readable=t,t.Writable=r(38589),t.Duplex=r(28383),t.Transform=r(68609),t.PassThrough=r(4291))},14490:(e,t,r)=>{"use strict";r(1528),r(36761),r(42791),t.Parse=r(199),t.ParseOne=r(97315),t.Extract=r(39149),t.Open=r(74773)},27983:(e,t,r)=>{e.exports=r(39023).deprecate},22587:(e,t,r)=>{"use strict";r.r(t),r.d(t,{NIL:()=>x,parse:()=>h,stringify:()=>d,v1:()=>_,v3:()=>v,v4:()=>b,v5:()=>k,validate:()=>l,version:()=>E});var n=r(76982),i=r.n(n);const a=new Uint8Array(256);let o=a.length;function s(){return o>a.length-16&&(i().randomFillSync(a),o=0),a.slice(o,o+=16)}const c=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;const l=function(e){return"string"==typeof e&&c.test(e)},u=[];for(let e=0;e<256;++e)u.push((e+256).toString(16).substr(1));const d=function(e,t=0){const r=(u[e[t+0]]+u[e[t+1]]+u[e[t+2]]+u[e[t+3]]+"-"+u[e[t+4]]+u[e[t+5]]+"-"+u[e[t+6]]+u[e[t+7]]+"-"+u[e[t+8]]+u[e[t+9]]+"-"+u[e[t+10]]+u[e[t+11]]+u[e[t+12]]+u[e[t+13]]+u[e[t+14]]+u[e[t+15]]).toLowerCase();if(!l(r))throw TypeError("Stringified UUID is invalid");return r};let p,f,m=0,g=0;const _=function(e,t,r){let n=t&&r||0;const i=t||new Array(16);let a=(e=e||{}).node||p,o=void 0!==e.clockseq?e.clockseq:f;if(null==a||null==o){const t=e.random||(e.rng||s)();null==a&&(a=p=[1|t[0],t[1],t[2],t[3],t[4],t[5]]),null==o&&(o=f=16383&(t[6]<<8|t[7]))}let c=void 0!==e.msecs?e.msecs:Date.now(),l=void 0!==e.nsecs?e.nsecs:g+1;const u=c-m+(l-g)/1e4;if(u<0&&void 0===e.clockseq&&(o=o+1&16383),(u<0||c>m)&&void 0===e.nsecs&&(l=0),l>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");m=c,g=l,f=o,c+=122192928e5;const _=(1e4*(268435455&c)+l)%4294967296;i[n++]=_>>>24&255,i[n++]=_>>>16&255,i[n++]=_>>>8&255,i[n++]=255&_;const h=c/4294967296*1e4&268435455;i[n++]=h>>>8&255,i[n++]=255&h,i[n++]=h>>>24&15|16,i[n++]=h>>>16&255,i[n++]=o>>>8|128,i[n++]=255&o;for(let e=0;e<6;++e)i[n+e]=a[e];return t||d(i)};const h=function(e){if(!l(e))throw TypeError("Invalid UUID");let t;const r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=255&t,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=255&t,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=255&t,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=255&t,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=255&t,r};function y(e,t,r){function n(e,n,i,a){if("string"==typeof e&&(e=function(e){e=unescape(encodeURIComponent(e));const t=[];for(let r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t}(e)),"string"==typeof n&&(n=h(n)),16!==n.length)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let o=new Uint8Array(16+e.length);if(o.set(n),o.set(e,n.length),o=r(o),o[6]=15&o[6]|t,o[8]=63&o[8]|128,i){a=a||0;for(let e=0;e<16;++e)i[a+e]=o[e];return i}return d(o)}try{n.name=e}catch(e){}return n.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",n.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",n}const v=y("v3",48,(function(e){return Array.isArray(e)?e=Buffer.from(e):"string"==typeof e&&(e=Buffer.from(e,"utf8")),i().createHash("md5").update(e).digest()}));const b=function(e,t,r){const n=(e=e||{}).random||(e.rng||s)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,t){r=r||0;for(let e=0;e<16;++e)t[r+e]=n[e];return t}return d(n)};const k=y("v5",80,(function(e){return Array.isArray(e)?e=Buffer.from(e):"string"==typeof e&&(e=Buffer.from(e,"utf8")),i().createHash("sha1").update(e).digest()})),x="00000000-0000-0000-0000-000000000000";const E=function(e){if(!l(e))throw TypeError("Invalid UUID");return parseInt(e.substr(14,1),16)}},86587:e=>{e.exports=function e(t,r){if(t&&r)return e(t)(r);if("function"!=typeof t)throw new TypeError("need wrapper function");return Object.keys(t).forEach((function(e){n[e]=t[e]})),n;function n(){for(var e=new Array(arguments.length),r=0;r<e.length;r++)e[r]=arguments[r];var n=t.apply(this,e),i=e[e.length-1];return"function"==typeof n&&n!==i&&Object.keys(i).forEach((function(e){n[e]=i[e]})),n}}},31487:(e,t)=>{"use strict"; -/** - * Character classes and associated utilities for the 5th edition of XML 1.0. - * - * @author Louis-Dominique Dubeau - * @license MIT - * @copyright Louis-Dominique Dubeau - */Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR="\t\n\r -퟿-�𐀀-􏿿",t.S=" \t\r\n",t.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NAME_CHAR="-"+t.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.CHAR_RE=new RegExp("^["+t.CHAR+"]$","u"),t.S_RE=new RegExp("^["+t.S+"]+$","u"),t.NAME_START_CHAR_RE=new RegExp("^["+t.NAME_START_CHAR+"]$","u"),t.NAME_CHAR_RE=new RegExp("^["+t.NAME_CHAR+"]$","u"),t.NAME_RE=new RegExp("^["+t.NAME_START_CHAR+"]["+t.NAME_CHAR+"]*$","u"),t.NMTOKEN_RE=new RegExp("^["+t.NAME_CHAR+"]+$","u");function r(e){return e>=65&&e<=90||e>=97&&e<=122||58===e||95===e||8204===e||8205===e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}t.S_LIST=[32,10,13,9],t.isChar=function(e){return e>=32&&e<=55295||10===e||13===e||9===e||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isS=function(e){return 32===e||10===e||13===e||9===e},t.isNameStartChar=r,t.isNameChar=function(e){return r(e)||e>=48&&e<=57||45===e||46===e||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},84797:(e,t)=>{"use strict"; -/** - * Character classes and associated utilities for the 2nd edition of XML 1.1. - * - * @author Louis-Dominique Dubeau - * @license MIT - * @copyright Louis-Dominique Dubeau - */Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR="-퟿-�𐀀-􏿿",t.RESTRICTED_CHAR="-\b\v\f--„†-Ÿ",t.S=" \t\r\n",t.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NAME_CHAR="-"+t.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.CHAR_RE=new RegExp("^["+t.CHAR+"]$","u"),t.RESTRICTED_CHAR_RE=new RegExp("^["+t.RESTRICTED_CHAR+"]$","u"),t.S_RE=new RegExp("^["+t.S+"]+$","u"),t.NAME_START_CHAR_RE=new RegExp("^["+t.NAME_START_CHAR+"]$","u"),t.NAME_CHAR_RE=new RegExp("^["+t.NAME_CHAR+"]$","u"),t.NAME_RE=new RegExp("^["+t.NAME_START_CHAR+"]["+t.NAME_CHAR+"]*$","u"),t.NMTOKEN_RE=new RegExp("^["+t.NAME_CHAR+"]+$","u");function r(e){return e>=65&&e<=90||e>=97&&e<=122||58===e||95===e||8204===e||8205===e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}t.S_LIST=[32,10,13,9],t.isChar=function(e){return e>=1&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isRestrictedChar=function(e){return e>=1&&e<=8||11===e||12===e||e>=14&&e<=31||e>=127&&e<=132||e>=134&&e<=159},t.isCharAndNotRestricted=function(e){return 9===e||10===e||13===e||e>31&&e<127||133===e||e>159&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isS=function(e){return 32===e||10===e||13===e||9===e},t.isNameStartChar=r,t.isNameChar=function(e){return r(e)||e>=48&&e<=57||45===e||46===e||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},60446:(e,t)=>{"use strict"; -/** - * Character class utilities for XML NS 1.0 edition 3. - * - * @author Louis-Dominique Dubeau - * @license MIT - * @copyright Louis-Dominique Dubeau - */function r(e){return e>=65&&e<=90||95===e||e>=97&&e<=122||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8204&&e<=8205||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}Object.defineProperty(t,"__esModule",{value:!0}),t.NC_NAME_START_CHAR="A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NC_NAME_CHAR="-"+t.NC_NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.NC_NAME_START_CHAR_RE=new RegExp("^["+t.NC_NAME_START_CHAR+"]$","u"),t.NC_NAME_CHAR_RE=new RegExp("^["+t.NC_NAME_CHAR+"]$","u"),t.NC_NAME_RE=new RegExp("^["+t.NC_NAME_START_CHAR+"]["+t.NC_NAME_CHAR+"]*$","u"),t.isNCNameStartChar=r,t.isNCNameChar=function(e){return r(e)||45===e||46===e||e>=48&&e<=57||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},42613:e=>{"use strict";e.exports=require("assert")},20181:e=>{"use strict";e.exports=require("buffer")},35317:e=>{"use strict";e.exports=require("child_process")},49140:e=>{"use strict";e.exports=require("constants")},76982:e=>{"use strict";e.exports=require("crypto")},24434:e=>{"use strict";e.exports=require("events")},79896:e=>{"use strict";e.exports=require("fs")},50264:e=>{"use strict";e.exports=require("inspector")},70857:e=>{"use strict";e.exports=require("os")},16928:e=>{"use strict";e.exports=require("path")},82987:e=>{"use strict";e.exports=require("perf_hooks")},932:e=>{"use strict";e.exports=require("process")},2203:e=>{"use strict";e.exports=require("stream")},13193:e=>{"use strict";e.exports=require("string_decoder")},39023:e=>{"use strict";e.exports=require("util")},43106:e=>{"use strict";e.exports=require("zlib")},62116:(e,t,r)=>{const{Argument:n}=r(39297),{Command:i}=r(23749),{CommanderError:a,InvalidArgumentError:o}=r(43666),{Help:s}=r(13693),{Option:c}=r(75019);(t=e.exports=new i).program=t,t.Argument=n,t.Command=i,t.CommanderError=a,t.Help=s,t.InvalidArgumentError=o,t.InvalidOptionArgumentError=o,t.Option=c},39297:(e,t,r)=>{const{InvalidArgumentError:n}=r(43666);t.Argument=class{constructor(e,t){switch(this.description=t||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e}this._name.length>3&&"..."===this._name.slice(-3)&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_concatValue(e,t){return t!==this.defaultValue&&Array.isArray(t)?t.concat(e):[e]}default(e,t){return this.defaultValue=e,this.defaultValueDescription=t,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(e,t)=>{if(!this.argChoices.includes(e))throw new n(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(e,t):e},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}},t.humanReadableArgName=function(e){const t=e.name()+(!0===e.variadic?"...":"");return e.required?"<"+t+">":"["+t+"]"}},23749:(e,t,r)=>{const n=r(24434).EventEmitter,i=r(35317),a=r(16928),o=r(79896),s=r(932),{Argument:c,humanReadableArgName:l}=r(39297),{CommanderError:u}=r(43666),{Help:d}=r(13693),{Option:p,splitOptionFlags:f,DualOptions:m}=r(75019),{suggestSimilar:g}=r(87369);class _ extends n{constructor(e){super(),this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!0,this._args=[],this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=e||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._outputConfiguration={writeOut:e=>s.stdout.write(e),writeErr:e=>s.stderr.write(e),getOutHelpWidth:()=>s.stdout.isTTY?s.stdout.columns:void 0,getErrHelpWidth:()=>s.stderr.isTTY?s.stderr.columns:void 0,outputError:(e,t)=>t(e)},this._hidden=!1,this._hasHelpOption=!0,this._helpFlags="-h, --help",this._helpDescription="display help for command",this._helpShortFlag="-h",this._helpLongFlag="--help",this._addImplicitHelpCommand=void 0,this._helpCommandName="help",this._helpCommandnameAndArgs="help [command]",this._helpCommandDescription="display help for command",this._helpConfiguration={}}copyInheritedSettings(e){return this._outputConfiguration=e._outputConfiguration,this._hasHelpOption=e._hasHelpOption,this._helpFlags=e._helpFlags,this._helpDescription=e._helpDescription,this._helpShortFlag=e._helpShortFlag,this._helpLongFlag=e._helpLongFlag,this._helpCommandName=e._helpCommandName,this._helpCommandnameAndArgs=e._helpCommandnameAndArgs,this._helpCommandDescription=e._helpCommandDescription,this._helpConfiguration=e._helpConfiguration,this._exitCallback=e._exitCallback,this._storeOptionsAsProperties=e._storeOptionsAsProperties,this._combineFlagAndOptionalValue=e._combineFlagAndOptionalValue,this._allowExcessArguments=e._allowExcessArguments,this._enablePositionalOptions=e._enablePositionalOptions,this._showHelpAfterError=e._showHelpAfterError,this._showSuggestionAfterError=e._showSuggestionAfterError,this}command(e,t,r){let n=t,i=r;"object"==typeof n&&null!==n&&(i=n,n=null),i=i||{};const[,a,o]=e.match(/([^ ]+) *(.*)/),s=this.createCommand(a);return n&&(s.description(n),s._executableHandler=!0),i.isDefault&&(this._defaultCommandName=s._name),s._hidden=!(!i.noHelp&&!i.hidden),s._executableFile=i.executableFile||null,o&&s.arguments(o),this.commands.push(s),s.parent=this,s.copyInheritedSettings(this),n?this:s}createCommand(e){return new _(e)}createHelp(){return Object.assign(new d,this.configureHelp())}configureHelp(e){return void 0===e?this._helpConfiguration:(this._helpConfiguration=e,this)}configureOutput(e){return void 0===e?this._outputConfiguration:(Object.assign(this._outputConfiguration,e),this)}showHelpAfterError(e=!0){return"string"!=typeof e&&(e=!!e),this._showHelpAfterError=e,this}showSuggestionAfterError(e=!0){return this._showSuggestionAfterError=!!e,this}addCommand(e,t){if(!e._name)throw new Error("Command passed to .addCommand() must have a name\n- specify the name in Command constructor or using .name()");return(t=t||{}).isDefault&&(this._defaultCommandName=e._name),(t.noHelp||t.hidden)&&(e._hidden=!0),this.commands.push(e),e.parent=this,this}createArgument(e,t){return new c(e,t)}argument(e,t,r,n){const i=this.createArgument(e,t);return"function"==typeof r?i.default(n).argParser(r):i.default(r),this.addArgument(i),this}arguments(e){return e.split(/ +/).forEach((e=>{this.argument(e)})),this}addArgument(e){const t=this._args.slice(-1)[0];if(t&&t.variadic)throw new Error(`only the last argument can be variadic '${t.name()}'`);if(e.required&&void 0!==e.defaultValue&&void 0===e.parseArg)throw new Error(`a default value for a required argument is never used: '${e.name()}'`);return this._args.push(e),this}addHelpCommand(e,t){return!1===e?this._addImplicitHelpCommand=!1:(this._addImplicitHelpCommand=!0,"string"==typeof e&&(this._helpCommandName=e.split(" ")[0],this._helpCommandnameAndArgs=e),this._helpCommandDescription=t||this._helpCommandDescription),this}_hasImplicitHelpCommand(){return void 0===this._addImplicitHelpCommand?this.commands.length&&!this._actionHandler&&!this._findCommand("help"):this._addImplicitHelpCommand}hook(e,t){const r=["preSubcommand","preAction","postAction"];if(!r.includes(e))throw new Error(`Unexpected value for event passed to hook : '${e}'.\nExpecting one of '${r.join("', '")}'`);return this._lifeCycleHooks[e]?this._lifeCycleHooks[e].push(t):this._lifeCycleHooks[e]=[t],this}exitOverride(e){return this._exitCallback=e||(e=>{if("commander.executeSubCommandAsync"!==e.code)throw e}),this}_exit(e,t,r){this._exitCallback&&this._exitCallback(new u(e,t,r)),s.exit(e)}action(e){return this._actionHandler=t=>{const r=this._args.length,n=t.slice(0,r);return this._storeOptionsAsProperties?n[r]=this:n[r]=this.opts(),n.push(this),e.apply(this,n)},this}createOption(e,t){return new p(e,t)}addOption(e){const t=e.name(),r=e.attributeName();if(e.negate){const t=e.long.replace(/^--no-/,"--");this._findOption(t)||this.setOptionValueWithSource(r,void 0===e.defaultValue||e.defaultValue,"default")}else void 0!==e.defaultValue&&this.setOptionValueWithSource(r,e.defaultValue,"default");this.options.push(e);const n=(t,n,i)=>{null==t&&void 0!==e.presetArg&&(t=e.presetArg);const a=this.getOptionValue(r);if(null!==t&&e.parseArg)try{t=e.parseArg(t,a)}catch(e){if("commander.invalidArgument"===e.code){const t=`${n} ${e.message}`;this.error(t,{exitCode:e.exitCode,code:e.code})}throw e}else null!==t&&e.variadic&&(t=e._concatValue(t,a));null==t&&(t=!e.negate&&(!(!e.isBoolean()&&!e.optional)||"")),this.setOptionValueWithSource(r,t,i)};return this.on("option:"+t,(t=>{const r=`error: option '${e.flags}' argument '${t}' is invalid.`;n(t,r,"cli")})),e.envVar&&this.on("optionEnv:"+t,(t=>{const r=`error: option '${e.flags}' value '${t}' from env '${e.envVar}' is invalid.`;n(t,r,"env")})),this}_optionEx(e,t,r,n,i){if("object"==typeof t&&t instanceof p)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");const a=this.createOption(t,r);if(a.makeOptionMandatory(!!e.mandatory),"function"==typeof n)a.default(i).argParser(n);else if(n instanceof RegExp){const e=n;n=(t,r)=>{const n=e.exec(t);return n?n[0]:r},a.default(i).argParser(n)}else a.default(n);return this.addOption(a)}option(e,t,r,n){return this._optionEx({},e,t,r,n)}requiredOption(e,t,r,n){return this._optionEx({mandatory:!0},e,t,r,n)}combineFlagAndOptionalValue(e=!0){return this._combineFlagAndOptionalValue=!!e,this}allowUnknownOption(e=!0){return this._allowUnknownOption=!!e,this}allowExcessArguments(e=!0){return this._allowExcessArguments=!!e,this}enablePositionalOptions(e=!0){return this._enablePositionalOptions=!!e,this}passThroughOptions(e=!0){if(this._passThroughOptions=!!e,this.parent&&e&&!this.parent._enablePositionalOptions)throw new Error("passThroughOptions can not be used without turning on enablePositionalOptions for parent command(s)");return this}storeOptionsAsProperties(e=!0){if(this._storeOptionsAsProperties=!!e,this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");return this}getOptionValue(e){return this._storeOptionsAsProperties?this[e]:this._optionValues[e]}setOptionValue(e,t){return this.setOptionValueWithSource(e,t,void 0)}setOptionValueWithSource(e,t,r){return this._storeOptionsAsProperties?this[e]=t:this._optionValues[e]=t,this._optionValueSources[e]=r,this}getOptionValueSource(e){return this._optionValueSources[e]}getOptionValueSourceWithGlobals(e){let t;return v(this).forEach((r=>{void 0!==r.getOptionValueSource(e)&&(t=r.getOptionValueSource(e))})),t}_prepareUserArgs(e,t){if(void 0!==e&&!Array.isArray(e))throw new Error("first parameter to parse must be array or undefined");let r;switch(t=t||{},void 0===e&&(e=s.argv,s.versions&&s.versions.electron&&(t.from="electron")),this.rawArgs=e.slice(),t.from){case void 0:case"node":this._scriptPath=e[1],r=e.slice(2);break;case"electron":s.defaultApp?(this._scriptPath=e[1],r=e.slice(2)):r=e.slice(1);break;case"user":r=e.slice(0);break;default:throw new Error(`unexpected parse option { from: '${t.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",r}parse(e,t){const r=this._prepareUserArgs(e,t);return this._parseCommand([],r),this}async parseAsync(e,t){const r=this._prepareUserArgs(e,t);return await this._parseCommand([],r),this}_executeSubCommand(e,t){t=t.slice();let r=!1;const n=[".js",".ts",".tsx",".mjs",".cjs"];function c(e,t){const r=a.resolve(e,t);if(o.existsSync(r))return r;if(n.includes(a.extname(t)))return;const i=n.find((e=>o.existsSync(`${r}${e}`)));return i?`${r}${i}`:void 0}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let l,d=e._executableFile||`${this._name}-${e._name}`,p=this._executableDir||"";if(this._scriptPath){let e;try{e=o.realpathSync(this._scriptPath)}catch(t){e=this._scriptPath}p=a.resolve(a.dirname(e),p)}if(p){let t=c(p,d);if(!t&&!e._executableFile&&this._scriptPath){const r=a.basename(this._scriptPath,a.extname(this._scriptPath));r!==this._name&&(t=c(p,`${r}-${e._name}`))}d=t||d}if(r=n.includes(a.extname(d)),"win32"!==s.platform?r?(t.unshift(d),t=y(s.execArgv).concat(t),l=i.spawn(s.argv[0],t,{stdio:"inherit"})):l=i.spawn(d,t,{stdio:"inherit"}):(t.unshift(d),t=y(s.execArgv).concat(t),l=i.spawn(s.execPath,t,{stdio:"inherit"})),!l.killed){["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((e=>{s.on(e,(()=>{!1===l.killed&&null===l.exitCode&&l.kill(e)}))}))}const f=this._exitCallback;f?l.on("close",(()=>{f(new u(s.exitCode||0,"commander.executeSubCommandAsync","(close)"))})):l.on("close",s.exit.bind(s)),l.on("error",(t=>{if("ENOENT"===t.code){const t=p?`searched for local subcommand relative to directory '${p}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",r=`'${d}' does not exist\n - if '${e._name}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead\n - if the default executable name is not suitable, use the executableFile option to supply a custom name or path\n - ${t}`;throw new Error(r)}if("EACCES"===t.code)throw new Error(`'${d}' not executable`);if(f){const e=new u(1,"commander.executeSubCommandAsync","(error)");e.nestedError=t,f(e)}else s.exit(1)})),this.runningCommand=l}_dispatchSubcommand(e,t,r){const n=this._findCommand(e);let i;return n||this.help({error:!0}),i=this._chainOrCallSubCommandHook(i,n,"preSubcommand"),i=this._chainOrCall(i,(()=>{if(!n._executableHandler)return n._parseCommand(t,r);this._executeSubCommand(n,t.concat(r))})),i}_checkNumberOfArguments(){this._args.forEach(((e,t)=>{e.required&&null==this.args[t]&&this.missingArgument(e.name())})),this._args.length>0&&this._args[this._args.length-1].variadic||this.args.length>this._args.length&&this._excessArguments(this.args)}_processArguments(){const e=(e,t,r)=>{let n=t;if(null!==t&&e.parseArg)try{n=e.parseArg(t,r)}catch(r){if("commander.invalidArgument"===r.code){const n=`error: command-argument value '${t}' is invalid for argument '${e.name()}'. ${r.message}`;this.error(n,{exitCode:r.exitCode,code:r.code})}throw r}return n};this._checkNumberOfArguments();const t=[];this._args.forEach(((r,n)=>{let i=r.defaultValue;r.variadic?n<this.args.length?(i=this.args.slice(n),r.parseArg&&(i=i.reduce(((t,n)=>e(r,n,t)),r.defaultValue))):void 0===i&&(i=[]):n<this.args.length&&(i=this.args[n],r.parseArg&&(i=e(r,i,r.defaultValue))),t[n]=i})),this.processedArgs=t}_chainOrCall(e,t){return e&&e.then&&"function"==typeof e.then?e.then((()=>t())):t()}_chainOrCallHooks(e,t){let r=e;const n=[];return v(this).reverse().filter((e=>void 0!==e._lifeCycleHooks[t])).forEach((e=>{e._lifeCycleHooks[t].forEach((t=>{n.push({hookedCommand:e,callback:t})}))})),"postAction"===t&&n.reverse(),n.forEach((e=>{r=this._chainOrCall(r,(()=>e.callback(e.hookedCommand,this)))})),r}_chainOrCallSubCommandHook(e,t,r){let n=e;return void 0!==this._lifeCycleHooks[r]&&this._lifeCycleHooks[r].forEach((e=>{n=this._chainOrCall(n,(()=>e(this,t)))})),n}_parseCommand(e,t){const r=this.parseOptions(t);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(r.operands),t=r.unknown,this.args=e.concat(t),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),t);if(this._hasImplicitHelpCommand()&&e[0]===this._helpCommandName)return 1===e.length&&this.help(),this._dispatchSubcommand(e[1],[],[this._helpLongFlag]);if(this._defaultCommandName)return h(this,t),this._dispatchSubcommand(this._defaultCommandName,e,t);!this.commands.length||0!==this.args.length||this._actionHandler||this._defaultCommandName||this.help({error:!0}),h(this,r.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();const n=()=>{r.unknown.length>0&&this.unknownOption(r.unknown[0])},i=`command:${this.name()}`;if(this._actionHandler){let r;return n(),this._processArguments(),r=this._chainOrCallHooks(r,"preAction"),r=this._chainOrCall(r,(()=>this._actionHandler(this.processedArgs))),this.parent&&(r=this._chainOrCall(r,(()=>{this.parent.emit(i,e,t)}))),r=this._chainOrCallHooks(r,"postAction"),r}if(this.parent&&this.parent.listenerCount(i))n(),this._processArguments(),this.parent.emit(i,e,t);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,t);this.listenerCount("command:*")?this.emit("command:*",e,t):this.commands.length?this.unknownCommand():(n(),this._processArguments())}else this.commands.length?(n(),this.help({error:!0})):(n(),this._processArguments())}_findCommand(e){if(e)return this.commands.find((t=>t._name===e||t._aliases.includes(e)))}_findOption(e){return this.options.find((t=>t.is(e)))}_checkForMissingMandatoryOptions(){for(let e=this;e;e=e.parent)e.options.forEach((t=>{t.mandatory&&void 0===e.getOptionValue(t.attributeName())&&e.missingMandatoryOptionValue(t)}))}_checkForConflictingLocalOptions(){const e=this.options.filter((e=>{const t=e.attributeName();return void 0!==this.getOptionValue(t)&&"default"!==this.getOptionValueSource(t)}));e.filter((e=>e.conflictsWith.length>0)).forEach((t=>{const r=e.find((e=>t.conflictsWith.includes(e.attributeName())));r&&this._conflictingOption(t,r)}))}_checkForConflictingOptions(){for(let e=this;e;e=e.parent)e._checkForConflictingLocalOptions()}parseOptions(e){const t=[],r=[];let n=t;const i=e.slice();function a(e){return e.length>1&&"-"===e[0]}let o=null;for(;i.length;){const e=i.shift();if("--"===e){n===r&&n.push(e),n.push(...i);break}if(!o||a(e)){if(o=null,a(e)){const t=this._findOption(e);if(t){if(t.required){const e=i.shift();void 0===e&&this.optionMissingArgument(t),this.emit(`option:${t.name()}`,e)}else if(t.optional){let e=null;i.length>0&&!a(i[0])&&(e=i.shift()),this.emit(`option:${t.name()}`,e)}else this.emit(`option:${t.name()}`);o=t.variadic?t:null;continue}}if(e.length>2&&"-"===e[0]&&"-"!==e[1]){const t=this._findOption(`-${e[1]}`);if(t){t.required||t.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${t.name()}`,e.slice(2)):(this.emit(`option:${t.name()}`),i.unshift(`-${e.slice(2)}`));continue}}if(/^--[^=]+=/.test(e)){const t=e.indexOf("="),r=this._findOption(e.slice(0,t));if(r&&(r.required||r.optional)){this.emit(`option:${r.name()}`,e.slice(t+1));continue}}if(a(e)&&(n=r),(this._enablePositionalOptions||this._passThroughOptions)&&0===t.length&&0===r.length){if(this._findCommand(e)){t.push(e),i.length>0&&r.push(...i);break}if(e===this._helpCommandName&&this._hasImplicitHelpCommand()){t.push(e),i.length>0&&t.push(...i);break}if(this._defaultCommandName){r.push(e),i.length>0&&r.push(...i);break}}if(this._passThroughOptions){n.push(e),i.length>0&&n.push(...i);break}n.push(e)}else this.emit(`option:${o.name()}`,e)}return{operands:t,unknown:r}}opts(){if(this._storeOptionsAsProperties){const e={},t=this.options.length;for(let r=0;r<t;r++){const t=this.options[r].attributeName();e[t]=t===this._versionOptionName?this._version:this[t]}return e}return this._optionValues}optsWithGlobals(){return v(this).reduce(((e,t)=>Object.assign(e,t.opts())),{})}error(e,t){this._outputConfiguration.outputError(`${e}\n`,this._outputConfiguration.writeErr),"string"==typeof this._showHelpAfterError?this._outputConfiguration.writeErr(`${this._showHelpAfterError}\n`):this._showHelpAfterError&&(this._outputConfiguration.writeErr("\n"),this.outputHelp({error:!0}));const r=t||{},n=r.exitCode||1,i=r.code||"commander.error";this._exit(n,i,e)}_parseOptionsEnv(){this.options.forEach((e=>{if(e.envVar&&e.envVar in s.env){const t=e.attributeName();(void 0===this.getOptionValue(t)||["default","config","env"].includes(this.getOptionValueSource(t)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,s.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}}))}_parseOptionsImplied(){const e=new m(this.options),t=e=>void 0!==this.getOptionValue(e)&&!["default","implied"].includes(this.getOptionValueSource(e));this.options.filter((r=>void 0!==r.implied&&t(r.attributeName())&&e.valueFromOption(this.getOptionValue(r.attributeName()),r))).forEach((e=>{Object.keys(e.implied).filter((e=>!t(e))).forEach((t=>{this.setOptionValueWithSource(t,e.implied[t],"implied")}))}))}missingArgument(e){const t=`error: missing required argument '${e}'`;this.error(t,{code:"commander.missingArgument"})}optionMissingArgument(e){const t=`error: option '${e.flags}' argument missing`;this.error(t,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){const t=`error: required option '${e.flags}' not specified`;this.error(t,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,t){const r=e=>{const t=e.attributeName(),r=this.getOptionValue(t),n=this.options.find((e=>e.negate&&t===e.attributeName())),i=this.options.find((e=>!e.negate&&t===e.attributeName()));return n&&(void 0===n.presetArg&&!1===r||void 0!==n.presetArg&&r===n.presetArg)?n:i||e},n=e=>{const t=r(e),n=t.attributeName();return"env"===this.getOptionValueSource(n)?`environment variable '${t.envVar}'`:`option '${t.flags}'`},i=`error: ${n(e)} cannot be used with ${n(t)}`;this.error(i,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let t="";if(e.startsWith("--")&&this._showSuggestionAfterError){let r=[],n=this;do{const e=n.createHelp().visibleOptions(n).filter((e=>e.long)).map((e=>e.long));r=r.concat(e),n=n.parent}while(n&&!n._enablePositionalOptions);t=g(e,r)}const r=`error: unknown option '${e}'${t}`;this.error(r,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;const t=this._args.length,r=1===t?"":"s",n=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${t} argument${r} but got ${e.length}.`;this.error(n,{code:"commander.excessArguments"})}unknownCommand(){const e=this.args[0];let t="";if(this._showSuggestionAfterError){const r=[];this.createHelp().visibleCommands(this).forEach((e=>{r.push(e.name()),e.alias()&&r.push(e.alias())})),t=g(e,r)}const r=`error: unknown command '${e}'${t}`;this.error(r,{code:"commander.unknownCommand"})}version(e,t,r){if(void 0===e)return this._version;this._version=e,t=t||"-V, --version",r=r||"output the version number";const n=this.createOption(t,r);return this._versionOptionName=n.attributeName(),this.options.push(n),this.on("option:"+n.name(),(()=>{this._outputConfiguration.writeOut(`${e}\n`),this._exit(0,"commander.version",e)})),this}description(e,t){return void 0===e&&void 0===t?this._description:(this._description=e,t&&(this._argsDescription=t),this)}summary(e){return void 0===e?this._summary:(this._summary=e,this)}alias(e){if(void 0===e)return this._aliases[0];let t=this;if(0!==this.commands.length&&this.commands[this.commands.length-1]._executableHandler&&(t=this.commands[this.commands.length-1]),e===t._name)throw new Error("Command alias can't be the same as its name");return t._aliases.push(e),this}aliases(e){return void 0===e?this._aliases:(e.forEach((e=>this.alias(e))),this)}usage(e){if(void 0===e){if(this._usage)return this._usage;const e=this._args.map((e=>l(e)));return[].concat(this.options.length||this._hasHelpOption?"[options]":[],this.commands.length?"[command]":[],this._args.length?e:[]).join(" ")}return this._usage=e,this}name(e){return void 0===e?this._name:(this._name=e,this)}nameFromFilename(e){return this._name=a.basename(e,a.extname(e)),this}executableDir(e){return void 0===e?this._executableDir:(this._executableDir=e,this)}helpInformation(e){const t=this.createHelp();return void 0===t.helpWidth&&(t.helpWidth=e&&e.error?this._outputConfiguration.getErrHelpWidth():this._outputConfiguration.getOutHelpWidth()),t.formatHelp(this,t)}_getHelpContext(e){const t={error:!!(e=e||{}).error};let r;return r=t.error?e=>this._outputConfiguration.writeErr(e):e=>this._outputConfiguration.writeOut(e),t.write=e.write||r,t.command=this,t}outputHelp(e){let t;"function"==typeof e&&(t=e,e=void 0);const r=this._getHelpContext(e);v(this).reverse().forEach((e=>e.emit("beforeAllHelp",r))),this.emit("beforeHelp",r);let n=this.helpInformation(r);if(t&&(n=t(n),"string"!=typeof n&&!Buffer.isBuffer(n)))throw new Error("outputHelp callback must return a string or a Buffer");r.write(n),this.emit(this._helpLongFlag),this.emit("afterHelp",r),v(this).forEach((e=>e.emit("afterAllHelp",r)))}helpOption(e,t){if("boolean"==typeof e)return this._hasHelpOption=e,this;this._helpFlags=e||this._helpFlags,this._helpDescription=t||this._helpDescription;const r=f(this._helpFlags);return this._helpShortFlag=r.shortFlag,this._helpLongFlag=r.longFlag,this}help(e){this.outputHelp(e);let t=s.exitCode||0;0===t&&e&&"function"!=typeof e&&e.error&&(t=1),this._exit(t,"commander.help","(outputHelp)")}addHelpText(e,t){const r=["beforeAll","before","after","afterAll"];if(!r.includes(e))throw new Error(`Unexpected value for position to addHelpText.\nExpecting one of '${r.join("', '")}'`);const n=`${e}Help`;return this.on(n,(e=>{let r;r="function"==typeof t?t({error:e.error,command:e.command}):t,r&&e.write(`${r}\n`)})),this}}function h(e,t){e._hasHelpOption&&t.find((t=>t===e._helpLongFlag||t===e._helpShortFlag))&&(e.outputHelp(),e._exit(0,"commander.helpDisplayed","(outputHelp)"))}function y(e){return e.map((e=>{if(!e.startsWith("--inspect"))return e;let t,r,n="127.0.0.1",i="9229";return null!==(r=e.match(/^(--inspect(-brk)?)$/))?t=r[1]:null!==(r=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))?(t=r[1],/^\d+$/.test(r[3])?i=r[3]:n=r[3]):null!==(r=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))&&(t=r[1],n=r[3],i=r[4]),t&&"0"!==i?`${t}=${n}:${parseInt(i)+1}`:e}))}function v(e){const t=[];for(let r=e;r;r=r.parent)t.push(r);return t}t.Command=_},43666:(e,t)=>{class r extends Error{constructor(e,t,r){super(r),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=t,this.exitCode=e,this.nestedError=void 0}}t.CommanderError=r,t.InvalidArgumentError=class extends r{constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}},13693:(e,t,r)=>{const{humanReadableArgName:n}=r(39297);t.Help=class{constructor(){this.helpWidth=void 0,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}visibleCommands(e){const t=e.commands.filter((e=>!e._hidden));if(e._hasImplicitHelpCommand()){const[,r,n]=e._helpCommandnameAndArgs.match(/([^ ]+) *(.*)/),i=e.createCommand(r).helpOption(!1);i.description(e._helpCommandDescription),n&&i.arguments(n),t.push(i)}return this.sortSubcommands&&t.sort(((e,t)=>e.name().localeCompare(t.name()))),t}compareOptions(e,t){const r=e=>e.short?e.short.replace(/^-/,""):e.long.replace(/^--/,"");return r(e).localeCompare(r(t))}visibleOptions(e){const t=e.options.filter((e=>!e.hidden)),r=e._hasHelpOption&&e._helpShortFlag&&!e._findOption(e._helpShortFlag),n=e._hasHelpOption&&!e._findOption(e._helpLongFlag);if(r||n){let i;i=r?n?e.createOption(e._helpFlags,e._helpDescription):e.createOption(e._helpShortFlag,e._helpDescription):e.createOption(e._helpLongFlag,e._helpDescription),t.push(i)}return this.sortOptions&&t.sort(this.compareOptions),t}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];const t=[];for(let r=e.parent;r;r=r.parent){const e=r.options.filter((e=>!e.hidden));t.push(...e)}return this.sortOptions&&t.sort(this.compareOptions),t}visibleArguments(e){return e._argsDescription&&e._args.forEach((t=>{t.description=t.description||e._argsDescription[t.name()]||""})),e._args.find((e=>e.description))?e._args:[]}subcommandTerm(e){const t=e._args.map((e=>n(e))).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(t?" "+t:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,t){return t.visibleCommands(e).reduce(((e,r)=>Math.max(e,t.subcommandTerm(r).length)),0)}longestOptionTermLength(e,t){return t.visibleOptions(e).reduce(((e,r)=>Math.max(e,t.optionTerm(r).length)),0)}longestGlobalOptionTermLength(e,t){return t.visibleGlobalOptions(e).reduce(((e,r)=>Math.max(e,t.optionTerm(r).length)),0)}longestArgumentTermLength(e,t){return t.visibleArguments(e).reduce(((e,r)=>Math.max(e,t.argumentTerm(r).length)),0)}commandUsage(e){let t=e._name;e._aliases[0]&&(t=t+"|"+e._aliases[0]);let r="";for(let t=e.parent;t;t=t.parent)r=t.name()+" "+r;return r+t+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){const t=[];if(e.argChoices&&t.push(`choices: ${e.argChoices.map((e=>JSON.stringify(e))).join(", ")}`),void 0!==e.defaultValue){(e.required||e.optional||e.isBoolean()&&"boolean"==typeof e.defaultValue)&&t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`)}return void 0!==e.presetArg&&e.optional&&t.push(`preset: ${JSON.stringify(e.presetArg)}`),void 0!==e.envVar&&t.push(`env: ${e.envVar}`),t.length>0?`${e.description} (${t.join(", ")})`:e.description}argumentDescription(e){const t=[];if(e.argChoices&&t.push(`choices: ${e.argChoices.map((e=>JSON.stringify(e))).join(", ")}`),void 0!==e.defaultValue&&t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),t.length>0){const r=`(${t.join(", ")})`;return e.description?`${e.description} ${r}`:r}return e.description}formatHelp(e,t){const r=t.padWidth(e,t),n=t.helpWidth||80;function i(e,i){if(i){const a=`${e.padEnd(r+2)}${i}`;return t.wrap(a,n-2,r+2)}return e}function a(e){return e.join("\n").replace(/^/gm," ".repeat(2))}let o=[`Usage: ${t.commandUsage(e)}`,""];const s=t.commandDescription(e);s.length>0&&(o=o.concat([s,""]));const c=t.visibleArguments(e).map((e=>i(t.argumentTerm(e),t.argumentDescription(e))));c.length>0&&(o=o.concat(["Arguments:",a(c),""]));const l=t.visibleOptions(e).map((e=>i(t.optionTerm(e),t.optionDescription(e))));if(l.length>0&&(o=o.concat(["Options:",a(l),""])),this.showGlobalOptions){const r=t.visibleGlobalOptions(e).map((e=>i(t.optionTerm(e),t.optionDescription(e))));r.length>0&&(o=o.concat(["Global Options:",a(r),""]))}const u=t.visibleCommands(e).map((e=>i(t.subcommandTerm(e),t.subcommandDescription(e))));return u.length>0&&(o=o.concat(["Commands:",a(u),""])),o.join("\n")}padWidth(e,t){return Math.max(t.longestOptionTermLength(e,t),t.longestGlobalOptionTermLength(e,t),t.longestSubcommandTermLength(e,t),t.longestArgumentTermLength(e,t))}wrap(e,t,r,n=40){if(e.match(/[\n]\s+/))return e;const i=t-r;if(i<n)return e;const a=e.slice(0,r),o=e.slice(r),s=" ".repeat(r),c=new RegExp(".{1,"+(i-1)+"}([\\s​]|$)|[^\\s​]+?([\\s​]|$)","g");return a+(o.match(c)||[]).map(((e,t)=>("\n"===e.slice(-1)&&(e=e.slice(0,e.length-1)),(t>0?s:"")+e.trimRight()))).join("\n")}}},75019:(e,t,r)=>{const{InvalidArgumentError:n}=r(43666);function i(e){let t,r;const n=e.split(/[ |,]+/);return n.length>1&&!/^[[<]/.test(n[1])&&(t=n.shift()),r=n.shift(),!t&&/^-[^-]$/.test(r)&&(t=r,r=void 0),{shortFlag:t,longFlag:r}}t.Option=class{constructor(e,t){this.flags=e,this.description=t||"",this.required=e.includes("<"),this.optional=e.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(e),this.mandatory=!1;const r=i(e);this.short=r.shortFlag,this.long=r.longFlag,this.negate=!1,this.long&&(this.negate=this.long.startsWith("--no-")),this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0}default(e,t){return this.defaultValue=e,this.defaultValueDescription=t,this}preset(e){return this.presetArg=e,this}conflicts(e){return this.conflictsWith=this.conflictsWith.concat(e),this}implies(e){return this.implied=Object.assign(this.implied||{},e),this}env(e){return this.envVar=e,this}argParser(e){return this.parseArg=e,this}makeOptionMandatory(e=!0){return this.mandatory=!!e,this}hideHelp(e=!0){return this.hidden=!!e,this}_concatValue(e,t){return t!==this.defaultValue&&Array.isArray(t)?t.concat(e):[e]}choices(e){return this.argChoices=e.slice(),this.parseArg=(e,t)=>{if(!this.argChoices.includes(e))throw new n(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(e,t):e},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return this.name().replace(/^no-/,"").split("-").reduce(((e,t)=>e+t[0].toUpperCase()+t.slice(1)))}is(e){return this.short===e||this.long===e}isBoolean(){return!this.required&&!this.optional&&!this.negate}},t.splitOptionFlags=i,t.DualOptions=class{constructor(e){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,e.forEach((e=>{e.negate?this.negativeOptions.set(e.attributeName(),e):this.positiveOptions.set(e.attributeName(),e)})),this.negativeOptions.forEach(((e,t)=>{this.positiveOptions.has(t)&&this.dualOptions.add(t)}))}valueFromOption(e,t){const r=t.attributeName();if(!this.dualOptions.has(r))return!0;const n=this.negativeOptions.get(r).presetArg,i=void 0!==n&&n;return t.negate===(i===e)}}},87369:(e,t)=>{const r=3;t.suggestSimilar=function(e,t){if(!t||0===t.length)return"";t=Array.from(new Set(t));const n=e.startsWith("--");n&&(e=e.slice(2),t=t.map((e=>e.slice(2))));let i=[],a=r;return t.forEach((t=>{if(t.length<=1)return;const n=function(e,t){if(Math.abs(e.length-t.length)>r)return Math.max(e.length,t.length);const n=[];for(let t=0;t<=e.length;t++)n[t]=[t];for(let e=0;e<=t.length;e++)n[0][e]=e;for(let r=1;r<=t.length;r++)for(let i=1;i<=e.length;i++){let a=1;a=e[i-1]===t[r-1]?0:1,n[i][r]=Math.min(n[i-1][r]+1,n[i][r-1]+1,n[i-1][r-1]+a),i>1&&r>1&&e[i-1]===t[r-2]&&e[i-2]===t[r-1]&&(n[i][r]=Math.min(n[i][r],n[i-2][r-2]+1))}return n[e.length][t.length]}(e,t),o=Math.max(e.length,t.length);(o-n)/o>.4&&(n<a?(a=n,i=[t]):n===a&&i.push(t))})),i.sort(((e,t)=>e.localeCompare(t))),n&&(i=i.map((e=>`--${e}`))),i.length>1?`\n(Did you mean one of ${i.join(", ")}?)`:1===i.length?`\n(Did you mean ${i[0]}?)`:""}},67634:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.util=t.tokenizers=t.transforms=t.inspect=t.stringify=t.parse=void 0;const a=r(70558),o=r(1339),s=r(29610),c=r(63409),l=r(5919),u=r(56945),d=r(81219),p=r(68646),f=r(72693),m=r(59192),g=r(98274);i(r(97140),t),t.parse=function(e,t={}){return(0,a.default)(t)(e)},t.stringify=(0,u.default)();var _=r(42237);Object.defineProperty(t,"inspect",{enumerable:!0,get:function(){return _.default}}),t.transforms={flow:m.flow,align:d.default,indent:p.default,crlf:f.default},t.tokenizers={tag:c.default,type:l.default,name:s.default,description:o.default},t.util={rewireSpecs:g.rewireSpecs,rewireSource:g.rewireSource,seedBlock:g.seedBlock,seedTokens:g.seedTokens}},66127:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=/^@\S+/;t.default=function({fence:e="```"}={}){const t=function(e){return"string"==typeof e?t=>t.split(e).length%2==0:e}(e),n=(e,r)=>t(e)?!r:r;return function(e){const t=[[]];let i=!1;for(const a of e)r.test(a.tokens.description)&&!i?t.push([a]):t[t.length-1].push(a),i=n(a.tokens.description,i);return t}}},70558:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(97140),i=r(98274),a=r(66127),o=r(89239),s=r(45377),c=r(63409),l=r(5919),u=r(29610),d=r(1339);t.default=function({startLine:e=0,fence:t="```",spacing:r="compact",markers:p=n.Markers,tokenizers:f=[(0,c.default)(),(0,l.default)(r),(0,u.default)(),(0,d.default)(r)]}={}){if(e<0||e%1>0)throw new Error("Invalid startLine");const m=(0,o.default)({startLine:e,markers:p}),g=(0,a.default)({fence:t}),_=(0,s.default)({tokenizers:f}),h=(0,d.getJoiner)(r);return function(e){const t=[];for(const r of(0,i.splitLines)(e)){const e=m(r);if(null===e)continue;const n=g(e),i=n.slice(1).map(_);t.push({description:h(n[0],p),tags:i,source:e,problems:i.reduce(((e,t)=>e.concat(t.problems)),[])})}return t}}},89239:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(97140),i=r(98274);t.default=function({startLine:e=0,markers:t=n.Markers}={}){let r=null,a=e;return function(e){let n=e;const o=(0,i.seedTokens)();if([o.lineEnd,n]=(0,i.splitCR)(n),[o.start,n]=(0,i.splitSpace)(n),null===r&&n.startsWith(t.start)&&!n.startsWith(t.nostart)&&(r=[],o.delimiter=n.slice(0,t.start.length),n=n.slice(t.start.length),[o.postDelimiter,n]=(0,i.splitSpace)(n)),null===r)return a++,null;const s=n.trimRight().endsWith(t.end);if(""===o.delimiter&&n.startsWith(t.delim)&&!n.startsWith(t.end)&&(o.delimiter=t.delim,n=n.slice(t.delim.length),[o.postDelimiter,n]=(0,i.splitSpace)(n)),s){const e=n.trimRight();o.end=n.slice(e.length-t.end.length),n=e.slice(0,-t.end.length)}if(o.description=n,r.push({number:a,source:e,tokens:o}),a++,s){const e=r.slice();return r=null,e}return null}}},45377:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(98274);t.default=function({tokenizers:e}){return function(t){var r;let i=(0,n.seedSpec)({source:t});for(const t of e)if(i=t(i),null===(r=i.problems[i.problems.length-1])||void 0===r?void 0:r.critical)break;return i}}},1339:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getJoiner=void 0;const n=r(97140);function i(e){return"compact"===e?a:"preserve"===e?c:e}function a(e,t=n.Markers){return e.map((({tokens:{description:e}})=>e.trim())).filter((e=>""!==e)).join(" ")}t.default=function(e="compact",t=n.Markers){const r=i(e);return e=>(e.description=r(e.source,t),e)},t.getJoiner=i;const o=(e,{tokens:t},r)=>""===t.type?e:r,s=({tokens:e})=>(""===e.delimiter?e.start:e.postDelimiter.slice(1))+e.description;function c(e,t=n.Markers){if(0===e.length)return"";""===e[0].tokens.description&&e[0].tokens.delimiter===t.start&&(e=e.slice(1));const r=e[e.length-1];return void 0!==r&&""===r.tokens.description&&r.tokens.end.endsWith(t.end)&&(e=e.slice(0,-1)),(e=e.slice(e.reduce(o,0))).map(s).join("\n")}},29610:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(98274);t.default=function(){const e=(e,{tokens:t},r)=>""===t.type?e:r;return t=>{const{tokens:r}=t.source[t.source.reduce(e,0)],i=r.description.trimLeft(),a=i.split('"');if(a.length>1&&""===a[0]&&a.length%2==1)return t.name=a[1],r.name=`"${a[1]}"`,[r.postName,r.description]=(0,n.splitSpace)(i.slice(r.name.length)),t;let o,s=0,c="",l=!1;for(const e of i){if(0===s&&(0,n.isSpace)(e))break;"["===e&&s++,"]"===e&&s--,c+=e}if(0!==s)return t.problems.push({code:"spec:name:unpaired-brackets",message:"unpaired brackets",line:t.source[0].number,critical:!0}),t;const u=c;if("["===c[0]&&"]"===c[c.length-1]){l=!0,c=c.slice(1,-1);const e=c.split("=");if(c=e[0].trim(),void 0!==e[1]&&(o=e.slice(1).join("=").trim()),""===c)return t.problems.push({code:"spec:name:empty-name",message:"empty name",line:t.source[0].number,critical:!0}),t;if(""===o)return t.problems.push({code:"spec:name:empty-default",message:"empty default value",line:t.source[0].number,critical:!0}),t;if(!((d=o)&&d.startsWith('"')&&d.endsWith('"'))&&/=(?!>)/.test(o))return t.problems.push({code:"spec:name:invalid-default",message:"invalid default value syntax",line:t.source[0].number,critical:!0}),t}var d;return t.optional=l,t.name=c,r.name=u,void 0!==o&&(t.default=o),[r.postName,r.description]=(0,n.splitSpace)(i.slice(r.name.length)),t}}},63409:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return e=>{const{tokens:t}=e.source[0],r=t.description.match(/\s*(@(\S+))(\s*)/);return null===r?(e.problems.push({code:"spec:tag:prefix",message:'tag should start with "@" symbol',line:e.source[0].number,critical:!0}),e):(t.tag=r[1],t.postTag=r[3],t.description=t.description.slice(r[0].length),e.tag=r[2],e)}}},5919:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(98274);t.default=function(e="compact"){const t=function(e){return"compact"===e?e=>e.map(i).join(""):"preserve"===e?e=>e.join("\n"):e}(e);return e=>{let r=0,i=[];for(const[t,{tokens:n}]of e.source.entries()){let a="";if(0===t&&"{"!==n.description[0])return e;for(const e of n.description)if("{"===e&&r++,"}"===e&&r--,a+=e,0===r)break;if(i.push([n,a]),0===r)break}if(0!==r)return e.problems.push({code:"spec:type:unpaired-curlies",message:"unpaired curlies",line:e.source[0].number,critical:!0}),e;const a=[],o=i[0][0].postDelimiter.length;for(const[e,[t,r]]of i.entries())t.type=r,e>0&&(t.type=t.postDelimiter.slice(o)+r,t.postDelimiter=t.postDelimiter.slice(0,o)),[t.postType,t.description]=(0,n.splitSpace)(t.description.slice(r.length)),a.push(t.type);return a[0]=a[0].slice(1),a[a.length-1]=a[a.length-1].slice(0,-1),e.type=t(a),e}};const i=e=>e.trim()},97140:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Markers=void 0,function(e){e.start="/**",e.nostart="/***",e.delim="*",e.end="*/"}(t.Markers||(t.Markers={}))},56945:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return e=>e.source.map((({tokens:e})=>function(e){return e.start+e.delimiter+e.postDelimiter+e.tag+e.postTag+e.type+e.postType+e.name+e.postName+e.description+e.end+e.lineEnd}(e))).join("\n")}},42237:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(98274),i={line:0,start:0,delimiter:0,postDelimiter:0,tag:0,postTag:0,name:0,postName:0,type:0,postType:0,description:0,end:0,lineEnd:0},a={lineEnd:"CR"},o=Object.keys(i),s=e=>(0,n.isSpace)(e)?`{${e.length}}`:e,c=e=>"|"+e.join("|")+"|",l=(e,t)=>Object.keys(t).map((r=>s(t[r]).padEnd(e[r])));t.default=function({source:e}){var t,r;if(0===e.length)return"";const n=Object.assign({},i);for(const e of o)n[e]=(null!==(t=a[e])&&void 0!==t?t:e).length;for(const{number:t,tokens:r}of e){n.line=Math.max(n.line,t.toString().length);for(const e in r)n[e]=Math.max(n[e],s(r[e]).length)}const u=[[],[]];for(const e of o)u[0].push((null!==(r=a[e])&&void 0!==r?r:e).padEnd(n[e]));for(const e of o)u[1].push("-".padEnd(n[e],"-"));for(const{number:t,tokens:r}of e){const e=t.toString().padStart(n.line);u.push([e,...l(n,r)])}return u.map(c).join("\n")}},81219:function(e,t,r){"use strict";var n=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r};Object.defineProperty(t,"__esModule",{value:!0});const i=r(97140),a=r(98274),o={start:0,tag:0,type:0,name:0},s=e=>"".padStart(e," ");t.default=function(e=i.Markers){let t,r=!1;function c(n){const i=Object.assign({},n.tokens);""!==i.tag&&(r=!0);const a=""===i.tag&&""===i.name&&""===i.type&&""===i.description;if(i.end===e.end&&a)return i.start=s(t.start+1),Object.assign(Object.assign({},n),{tokens:i});switch(i.delimiter){case e.start:i.start=s(t.start);break;case e.delim:i.start=s(t.start+1);break;default:i.delimiter="",i.start=s(t.start+2)}if(!r)return i.postDelimiter=""===i.description?"":" ",Object.assign(Object.assign({},n),{tokens:i});const o={delim:!1,tag:!1,type:!1,name:!1};return""===i.description&&(o.name=!0,i.postName="",""===i.name&&(o.type=!0,i.postType="",""===i.type&&(o.tag=!0,i.postTag="",""===i.tag&&(o.delim=!0)))),i.postDelimiter=o.delim?"":" ",o.tag||(i.postTag=s(t.tag-i.tag.length+1)),o.type||(i.postType=s(t.type-i.type.length+1)),o.name||(i.postName=s(t.name-i.name.length+1)),Object.assign(Object.assign({},n),{tokens:i})}return r=>{var{source:s}=r,l=n(r,["source"]);return t=s.reduce(((e=i.Markers)=>(t,{tokens:r})=>({start:r.delimiter===e.start?r.start.length:t.start,tag:Math.max(t.tag,r.tag.length),type:Math.max(t.type,r.type.length),name:Math.max(t.name,r.name.length)}))(e),Object.assign({},o)),(0,a.rewireSource)(Object.assign(Object.assign({},l),{source:s.map(c)}))}}},72693:function(e,t,r){"use strict";var n=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r};Object.defineProperty(t,"__esModule",{value:!0});const i=r(98274);t.default=function(e){function t(t){return Object.assign(Object.assign({},t),{tokens:Object.assign(Object.assign({},t.tokens),{lineEnd:"LF"===e?"":"\r"})})}return e=>{var{source:r}=e,a=n(e,["source"]);return(0,i.rewireSource)(Object.assign(Object.assign({},a),{source:r.map(t)}))}}},68646:function(e,t,r){"use strict";var n=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r};Object.defineProperty(t,"__esModule",{value:!0});const i=r(98274);t.default=function(e){let t;const r=r=>{if(void 0===t){const n=e-r.length;t=n>0?(e=>{const t="".padStart(e," ");return e=>e+t})(n):(e=>t=>t.slice(e))(-n)}return t(r)},a=e=>Object.assign(Object.assign({},e),{tokens:Object.assign(Object.assign({},e.tokens),{start:r(e.tokens.start)})});return e=>{var{source:t}=e,r=n(e,["source"]);return(0,i.rewireSource)(Object.assign(Object.assign({},r),{source:t.map(a)}))}}},59192:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.flow=void 0,t.flow=function(...e){return t=>e.reduce(((e,t)=>t(e)),t)}},98274:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.rewireSpecs=t.rewireSource=t.seedTokens=t.seedSpec=t.seedBlock=t.splitLines=t.splitSpace=t.splitCR=t.hasCR=t.isSpace=void 0,t.isSpace=function(e){return/^\s+$/.test(e)},t.hasCR=function(e){return/\r$/.test(e)},t.splitCR=function(e){const t=e.match(/\r+$/);return null==t?["",e]:[e.slice(-t[0].length),e.slice(0,-t[0].length)]},t.splitSpace=function(e){const t=e.match(/^\s+/);return null==t?["",e]:[e.slice(0,t[0].length),e.slice(t[0].length)]},t.splitLines=function(e){return e.split(/\n/)},t.seedBlock=function(e={}){return Object.assign({description:"",tags:[],source:[],problems:[]},e)},t.seedSpec=function(e={}){return Object.assign({tag:"",name:"",type:"",optional:!1,description:"",problems:[],source:[]},e)},t.seedTokens=function(e={}){return Object.assign({start:"",delimiter:"",postDelimiter:"",tag:"",postTag:"",name:"",postName:"",type:"",postType:"",description:"",end:"",lineEnd:""},e)},t.rewireSource=function(e){const t=e.source.reduce(((e,t)=>e.set(t.number,t)),new Map);for(const r of e.tags)r.source=r.source.map((e=>t.get(e.number)));return e},t.rewireSpecs=function(e){const t=e.tags.reduce(((e,t)=>t.source.reduce(((e,t)=>e.set(t.number,t)),e)),new Map);return e.source=e.source.map((e=>t.get(e.number)||e)),e}},22268:(e,t,r)=>{"use strict";function n(e,...t){return(...r)=>e(...t,...r)}function i(e){return function(...t){var r=t.pop();return e.call(this,t,r)}}r.r(t),r.d(t,{all:()=>ge,allLimit:()=>_e,allSeries:()=>he,any:()=>rt,anyLimit:()=>nt,anySeries:()=>it,apply:()=>n,applyEach:()=>P,applyEachSeries:()=>O,asyncify:()=>d,auto:()=>L,autoInject:()=>q,cargo:()=>K,cargoQueue:()=>W,compose:()=>Y,concat:()=>Z,concatLimit:()=>Q,concatSeries:()=>ee,constant:()=>te,default:()=>_t,detect:()=>ne,detectLimit:()=>ie,detectSeries:()=>ae,dir:()=>se,doDuring:()=>ce,doUntil:()=>le,doWhilst:()=>ce,during:()=>ft,each:()=>de,eachLimit:()=>pe,eachOf:()=>A,eachOfLimit:()=>w,eachOfSeries:()=>I,eachSeries:()=>fe,ensureAsync:()=>me,every:()=>ge,everyLimit:()=>_e,everySeries:()=>he,filter:()=>ke,filterLimit:()=>xe,filterSeries:()=>Ee,find:()=>ne,findLimit:()=>ie,findSeries:()=>ae,flatMap:()=>Z,flatMapLimit:()=>Q,flatMapSeries:()=>ee,foldl:()=>G,foldr:()=>Je,forEach:()=>de,forEachLimit:()=>pe,forEachOf:()=>A,forEachOfLimit:()=>w,forEachOfSeries:()=>I,forEachSeries:()=>fe,forever:()=>Se,groupBy:()=>we,groupByLimit:()=>De,groupBySeries:()=>Te,inject:()=>G,log:()=>Ce,map:()=>N,mapLimit:()=>X,mapSeries:()=>F,mapValues:()=>Ne,mapValuesLimit:()=>Ae,mapValuesSeries:()=>Pe,memoize:()=>Ie,nextTick:()=>Fe,parallel:()=>Re,parallelLimit:()=>Me,priorityQueue:()=>Ue,queue:()=>Le,race:()=>qe,reduce:()=>G,reduceRight:()=>Je,reflect:()=>Ve,reflectAll:()=>He,reject:()=>We,rejectLimit:()=>Ge,rejectSeries:()=>$e,retry:()=>Ze,retryable:()=>et,select:()=>ke,selectLimit:()=>xe,selectSeries:()=>Ee,seq:()=>$,series:()=>tt,setImmediate:()=>u,some:()=>rt,someLimit:()=>nt,someSeries:()=>it,sortBy:()=>at,timeout:()=>ot,times:()=>ct,timesLimit:()=>st,timesSeries:()=>lt,transform:()=>ut,tryEach:()=>dt,unmemoize:()=>pt,until:()=>mt,waterfall:()=>gt,whilst:()=>ft,wrapSync:()=>d});var a="function"==typeof queueMicrotask&&queueMicrotask,o="function"==typeof setImmediate&&setImmediate,s="object"==typeof process&&"function"==typeof process.nextTick;function c(e){setTimeout(e,0)}function l(e){return(t,...r)=>e((()=>t(...r)))}var u=l(a?queueMicrotask:o?setImmediate:s?process.nextTick:c);function d(e){return m(e)?function(...t){const r=t.pop();return p(e.apply(this,t),r)}:i((function(t,r){var n;try{n=e.apply(this,t)}catch(e){return r(e)}if(n&&"function"==typeof n.then)return p(n,r);r(null,n)}))}function p(e,t){return e.then((e=>{f(t,null,e)}),(e=>{f(t,e&&(e instanceof Error||e.message)?e:new Error(e))}))}function f(e,t,r){try{e(t,r)}catch(e){u((e=>{throw e}),e)}}function m(e){return"AsyncFunction"===e[Symbol.toStringTag]}function g(e){if("function"!=typeof e)throw new Error("expected a function");return m(e)?d(e):e}function _(e,t){if(t||(t=e.length),!t)throw new Error("arity is undefined");return function(...r){return"function"==typeof r[t-1]?e.apply(this,r):new Promise(((n,i)=>{r[t-1]=(e,...t)=>{if(e)return i(e);n(t.length>1?t:t[0])},e.apply(this,r)}))}}function h(e){return function(t,...r){return _((function(n){var i=this;return e(t,((e,t)=>{g(e).apply(i,r.concat(t))}),n)}))}}function y(e,t,r,n){t=t||[];var i=[],a=0,o=g(r);return e(t,((e,t,r)=>{var n=a++;o(e,((e,t)=>{i[n]=t,r(e)}))}),(e=>{n(e,i)}))}function v(e){return e&&"number"==typeof e.length&&e.length>=0&&e.length%1==0}var b={};function k(e){function t(...t){if(null!==e){var r=e;e=null,r.apply(this,t)}}return Object.assign(t,e),t}function x(e){if(v(e))return function(e){var t=-1,r=e.length;return function(){return++t<r?{value:e[t],key:t}:null}}(e);var t,r,n,i,a=function(e){return e[Symbol.iterator]&&e[Symbol.iterator]()}(e);return a?function(e){var t=-1;return function(){var r=e.next();return r.done?null:(t++,{value:r.value,key:t})}}(a):(r=(t=e)?Object.keys(t):[],n=-1,i=r.length,function e(){var a=r[++n];return"__proto__"===a?e():n<i?{value:t[a],key:a}:null})}function E(e){return function(...t){if(null===e)throw new Error("Callback was already called.");var r=e;e=null,r.apply(this,t)}}function S(e,t,r,n){let i=!1,a=!1,o=!1,s=0,c=0;function l(){s>=t||o||i||(o=!0,e.next().then((({value:e,done:t})=>{if(!a&&!i){if(o=!1,t)return i=!0,void(s<=0&&n(null));s++,r(e,c,u),c++,l()}})).catch(d))}function u(e,t){if(s-=1,!a)return e?d(e):!1===e?(i=!0,void(a=!0)):t===b||i&&s<=0?(i=!0,n(null)):void l()}function d(e){a||(o=!1,i=!0,n(e))}l()}var D=e=>(t,r,n)=>{if(n=k(n),e<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!t)return n(null);if("AsyncGenerator"===t[Symbol.toStringTag])return S(t,e,r,n);if(function(e){return"function"==typeof e[Symbol.asyncIterator]}(t))return S(t[Symbol.asyncIterator](),e,r,n);var i=x(t),a=!1,o=!1,s=0,c=!1;function l(e,t){if(!o)if(s-=1,e)a=!0,n(e);else if(!1===e)a=!0,o=!0;else{if(t===b||a&&s<=0)return a=!0,n(null);c||u()}}function u(){for(c=!0;s<e&&!a;){var t=i();if(null===t)return a=!0,void(s<=0&&n(null));s+=1,r(t.value,t.key,E(l))}c=!1}u()};var w=_((function(e,t,r,n){return D(t)(e,g(r),n)}),4);function T(e,t,r){r=k(r);var n=0,i=0,{length:a}=e,o=!1;function s(e,t){!1===e&&(o=!0),!0!==o&&(e?r(e):++i!==a&&t!==b||r(null))}for(0===a&&r(null);n<a;n++)t(e[n],n,E(s))}function C(e,t,r){return w(e,1/0,t,r)}var A=_((function(e,t,r){return(v(e)?T:C)(e,g(t),r)}),3);var N=_((function(e,t,r){return y(A,e,t,r)}),3),P=h(N);var I=_((function(e,t,r){return w(e,1,t,r)}),3);var F=_((function(e,t,r){return y(I,e,t,r)}),3),O=h(F);const R=Symbol("promiseCallback");function M(){let e,t;function r(r,...n){if(r)return t(r);e(n.length>1?n:n[0])}return r[R]=new Promise(((r,n)=>{e=r,t=n})),r}function L(e,t,r){"number"!=typeof t&&(r=t,t=null),r=k(r||M());var n=Object.keys(e).length;if(!n)return r(null);t||(t=n);var i={},a=0,o=!1,s=!1,c=Object.create(null),l=[],u=[],d={};function p(e,t){l.push((()=>function(e,t){if(s)return;var n=E(((t,...n)=>{if(a--,!1!==t)if(n.length<2&&([n]=n),t){var l={};if(Object.keys(i).forEach((e=>{l[e]=i[e]})),l[e]=n,s=!0,c=Object.create(null),o)return;r(t,l)}else i[e]=n,(c[e]||[]).forEach((e=>e())),f();else o=!0}));a++;var l=g(t[t.length-1]);t.length>1?l(i,n):l(n)}(e,t)))}function f(){if(!o){if(0===l.length&&0===a)return r(null,i);for(;l.length&&a<t;){l.shift()()}}}function m(t){var r=[];return Object.keys(e).forEach((n=>{const i=e[n];Array.isArray(i)&&i.indexOf(t)>=0&&r.push(n)})),r}return Object.keys(e).forEach((t=>{var r=e[t];if(!Array.isArray(r))return p(t,[r]),void u.push(t);var n=r.slice(0,r.length-1),i=n.length;if(0===i)return p(t,r),void u.push(t);d[t]=i,n.forEach((a=>{if(!e[a])throw new Error("async.auto task `"+t+"` has a non-existent dependency `"+a+"` in "+n.join(", "));!function(e,t){var r=c[e];r||(r=c[e]=[]);r.push(t)}(a,(()=>{0===--i&&p(t,r)}))}))})),function(){var e=0;for(;u.length;)e++,m(u.pop()).forEach((e=>{0==--d[e]&&u.push(e)}));if(e!==n)throw new Error("async.auto cannot execute tasks due to a recursive dependency")}(),f(),r[R]}var j=/^(?:async\s+)?(?:function)?\s*\w*\s*\(\s*([^)]+)\s*\)(?:\s*{)/,B=/^(?:async\s+)?\(?\s*([^)=]+)\s*\)?(?:\s*=>)/,z=/,/,U=/(=.+)?(\s*)$/;function q(e,t){var r={};return Object.keys(e).forEach((t=>{var n,i=e[t],a=m(i),o=!a&&1===i.length||a&&0===i.length;if(Array.isArray(i))n=[...i],i=n.pop(),r[t]=n.concat(n.length>0?s:i);else if(o)r[t]=i;else{if(n=function(e){const t=function(e){let t="",r=0,n=e.indexOf("*/");for(;r<e.length;)if("/"===e[r]&&"/"===e[r+1]){let t=e.indexOf("\n",r);r=-1===t?e.length:t}else if(-1!==n&&"/"===e[r]&&"*"===e[r+1]){let i=e.indexOf("*/",r);-1!==i?(r=i+2,n=e.indexOf("*/",r)):(t+=e[r],r++)}else t+=e[r],r++;return t}(e.toString());let r=t.match(j);if(r||(r=t.match(B)),!r)throw new Error("could not parse args in autoInject\nSource:\n"+t);let[,n]=r;return n.replace(/\s/g,"").split(z).map((e=>e.replace(U,"").trim()))}(i),0===i.length&&!a&&0===n.length)throw new Error("autoInject task functions require explicit parameters.");a||n.pop(),r[t]=n.concat(s)}function s(e,t){var r=n.map((t=>e[t]));r.push(t),g(i)(...r)}})),L(r,t)}class J{constructor(){this.head=this.tail=null,this.length=0}removeLink(e){return e.prev?e.prev.next=e.next:this.head=e.next,e.next?e.next.prev=e.prev:this.tail=e.prev,e.prev=e.next=null,this.length-=1,e}empty(){for(;this.head;)this.shift();return this}insertAfter(e,t){t.prev=e,t.next=e.next,e.next?e.next.prev=t:this.tail=t,e.next=t,this.length+=1}insertBefore(e,t){t.prev=e.prev,t.next=e,e.prev?e.prev.next=t:this.head=t,e.prev=t,this.length+=1}unshift(e){this.head?this.insertBefore(this.head,e):V(this,e)}push(e){this.tail?this.insertAfter(this.tail,e):V(this,e)}shift(){return this.head&&this.removeLink(this.head)}pop(){return this.tail&&this.removeLink(this.tail)}toArray(){return[...this]}*[Symbol.iterator](){for(var e=this.head;e;)yield e.data,e=e.next}remove(e){for(var t=this.head;t;){var{next:r}=t;e(t)&&this.removeLink(t),t=r}return this}}function V(e,t){e.length=1,e.head=e.tail=t}function H(e,t,r){if(null==t)t=1;else if(0===t)throw new RangeError("Concurrency must not be zero");var n=g(e),i=0,a=[];const o={error:[],drain:[],saturated:[],unsaturated:[],empty:[]};function s(e,t){return e?t?void(o[e]=o[e].filter((e=>e!==t))):o[e]=[]:Object.keys(o).forEach((e=>o[e]=[]))}function c(e,...t){o[e].forEach((e=>e(...t)))}var l=!1;function d(e,t,r,n){if(null!=n&&"function"!=typeof n)throw new Error("task callback must be a function");var i,a;function o(e,...t){return e?r?a(e):i():t.length<=1?i(t[0]):void i(t)}h.started=!0;var s=h._createTaskItem(e,r?o:n||o);if(t?h._tasks.unshift(s):h._tasks.push(s),l||(l=!0,u((()=>{l=!1,h.process()}))),r||!n)return new Promise(((e,t)=>{i=e,a=t}))}function p(e){return function(t,...r){i-=1;for(var n=0,o=e.length;n<o;n++){var s=e[n],l=a.indexOf(s);0===l?a.shift():l>0&&a.splice(l,1),s.callback(t,...r),null!=t&&c("error",t,s.data)}i<=h.concurrency-h.buffer&&c("unsaturated"),h.idle()&&c("drain"),h.process()}}function f(e){return!(0!==e.length||!h.idle())&&(u((()=>c("drain"))),!0)}const m=e=>t=>{if(!t)return new Promise(((t,r)=>{!function(e,t){const r=(...n)=>{s(e,r),t(...n)};o[e].push(r)}(e,((e,n)=>{if(e)return r(e);t(n)}))}));s(e),function(e,t){o[e].push(t)}(e,t)};var _=!1,h={_tasks:new J,_createTaskItem:(e,t)=>({data:e,callback:t}),*[Symbol.iterator](){yield*h._tasks[Symbol.iterator]()},concurrency:t,payload:r,buffer:t/4,started:!1,paused:!1,push(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!1,!1,t)))}return d(e,!1,!1,t)},pushAsync(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!1,!0,t)))}return d(e,!1,!0,t)},kill(){s(),h._tasks.empty()},unshift(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!0,!1,t)))}return d(e,!0,!1,t)},unshiftAsync(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!0,!0,t)))}return d(e,!0,!0,t)},remove(e){h._tasks.remove(e)},process(){if(!_){for(_=!0;!h.paused&&i<h.concurrency&&h._tasks.length;){var e=[],t=[],r=h._tasks.length;h.payload&&(r=Math.min(r,h.payload));for(var o=0;o<r;o++){var s=h._tasks.shift();e.push(s),a.push(s),t.push(s.data)}i+=1,0===h._tasks.length&&c("empty"),i===h.concurrency&&c("saturated");var l=E(p(e));n(t,l)}_=!1}},length:()=>h._tasks.length,running:()=>i,workersList:()=>a,idle:()=>h._tasks.length+i===0,pause(){h.paused=!0},resume(){!1!==h.paused&&(h.paused=!1,u(h.process))}};return Object.defineProperties(h,{saturated:{writable:!1,value:m("saturated")},unsaturated:{writable:!1,value:m("unsaturated")},empty:{writable:!1,value:m("empty")},drain:{writable:!1,value:m("drain")},error:{writable:!1,value:m("error")}}),h}function K(e,t){return H(e,1,t)}function W(e,t,r){return H(e,t,r)}var G=_((function(e,t,r,n){n=k(n);var i=g(r);return I(e,((e,r,n)=>{i(t,e,((e,r)=>{t=r,n(e)}))}),(e=>n(e,t)))}),4);function $(...e){var t=e.map(g);return function(...e){var r=this,n=e[e.length-1];return"function"==typeof n?e.pop():n=M(),G(t,e,((e,t,n)=>{t.apply(r,e.concat(((e,...t)=>{n(e,t)})))}),((e,t)=>n(e,...t))),n[R]}}function Y(...e){return $(...e.reverse())}var X=_((function(e,t,r,n){return y(D(t),e,r,n)}),4);var Q=_((function(e,t,r,n){var i=g(r);return X(e,t,((e,t)=>{i(e,((e,...r)=>e?t(e):t(e,r)))}),((e,t)=>{for(var r=[],i=0;i<t.length;i++)t[i]&&(r=r.concat(...t[i]));return n(e,r)}))}),4);var Z=_((function(e,t,r){return Q(e,1/0,t,r)}),3);var ee=_((function(e,t,r){return Q(e,1,t,r)}),3);function te(...e){return function(...t){return t.pop()(null,...e)}}function re(e,t){return(r,n,i,a)=>{var o,s=!1;const c=g(i);r(n,((r,n,i)=>{c(r,((n,a)=>n||!1===n?i(n):e(a)&&!o?(s=!0,o=t(!0,r),i(null,b)):void i()))}),(e=>{if(e)return a(e);a(null,s?o:t(!1))}))}}var ne=_((function(e,t,r){return re((e=>e),((e,t)=>t))(A,e,t,r)}),3);var ie=_((function(e,t,r,n){return re((e=>e),((e,t)=>t))(D(t),e,r,n)}),4);var ae=_((function(e,t,r){return re((e=>e),((e,t)=>t))(D(1),e,t,r)}),3);function oe(e){return(t,...r)=>g(t)(...r,((t,...r)=>{"object"==typeof console&&(t?console.error&&console.error(t):console[e]&&r.forEach((t=>console[e](t))))}))}var se=oe("dir");var ce=_((function(e,t,r){r=E(r);var n,i=g(e),a=g(t);function o(e,...t){if(e)return r(e);!1!==e&&(n=t,a(...t,s))}function s(e,t){return e?r(e):!1!==e?t?void i(o):r(null,...n):void 0}return s(null,!0)}),3);function le(e,t,r){const n=g(t);return ce(e,((...e)=>{const t=e.pop();n(...e,((e,r)=>t(e,!r)))}),r)}function ue(e){return(t,r,n)=>e(t,n)}var de=_((function(e,t,r){return A(e,ue(g(t)),r)}),3);var pe=_((function(e,t,r,n){return D(t)(e,ue(g(r)),n)}),4);var fe=_((function(e,t,r){return pe(e,1,t,r)}),3);function me(e){return m(e)?e:function(...t){var r=t.pop(),n=!0;t.push(((...e)=>{n?u((()=>r(...e))):r(...e)})),e.apply(this,t),n=!1}}var ge=_((function(e,t,r){return re((e=>!e),(e=>!e))(A,e,t,r)}),3);var _e=_((function(e,t,r,n){return re((e=>!e),(e=>!e))(D(t),e,r,n)}),4);var he=_((function(e,t,r){return re((e=>!e),(e=>!e))(I,e,t,r)}),3);function ye(e,t,r,n){var i=new Array(t.length);e(t,((e,t,n)=>{r(e,((e,r)=>{i[t]=!!r,n(e)}))}),(e=>{if(e)return n(e);for(var r=[],a=0;a<t.length;a++)i[a]&&r.push(t[a]);n(null,r)}))}function ve(e,t,r,n){var i=[];e(t,((e,t,n)=>{r(e,((r,a)=>{if(r)return n(r);a&&i.push({index:t,value:e}),n(r)}))}),(e=>{if(e)return n(e);n(null,i.sort(((e,t)=>e.index-t.index)).map((e=>e.value)))}))}function be(e,t,r,n){return(v(t)?ye:ve)(e,t,g(r),n)}var ke=_((function(e,t,r){return be(A,e,t,r)}),3);var xe=_((function(e,t,r,n){return be(D(t),e,r,n)}),4);var Ee=_((function(e,t,r){return be(I,e,t,r)}),3);var Se=_((function(e,t){var r=E(t),n=g(me(e));return function e(t){if(t)return r(t);!1!==t&&n(e)}()}),2);var De=_((function(e,t,r,n){var i=g(r);return X(e,t,((e,t)=>{i(e,((r,n)=>r?t(r):t(r,{key:n,val:e})))}),((e,t)=>{for(var r={},{hasOwnProperty:i}=Object.prototype,a=0;a<t.length;a++)if(t[a]){var{key:o}=t[a],{val:s}=t[a];i.call(r,o)?r[o].push(s):r[o]=[s]}return n(e,r)}))}),4);function we(e,t,r){return De(e,1/0,t,r)}function Te(e,t,r){return De(e,1,t,r)}var Ce=oe("log");var Ae=_((function(e,t,r,n){n=k(n);var i={},a=g(r);return D(t)(e,((e,t,r)=>{a(e,t,((e,n)=>{if(e)return r(e);i[t]=n,r(e)}))}),(e=>n(e,i)))}),4);function Ne(e,t,r){return Ae(e,1/0,t,r)}function Pe(e,t,r){return Ae(e,1,t,r)}function Ie(e,t=e=>e){var r=Object.create(null),n=Object.create(null),a=g(e),o=i(((e,i)=>{var o=t(...e);o in r?u((()=>i(null,...r[o]))):o in n?n[o].push(i):(n[o]=[i],a(...e,((e,...t)=>{e||(r[o]=t);var i=n[o];delete n[o];for(var a=0,s=i.length;a<s;a++)i[a](e,...t)})))}));return o.memo=r,o.unmemoized=e,o}var Fe=l(s?process.nextTick:o?setImmediate:c),Oe=_(((e,t,r)=>{var n=v(t)?[]:{};e(t,((e,t,r)=>{g(e)(((e,...i)=>{i.length<2&&([i]=i),n[t]=i,r(e)}))}),(e=>r(e,n)))}),3);function Re(e,t){return Oe(A,e,t)}function Me(e,t,r){return Oe(D(t),e,r)}function Le(e,t){var r=g(e);return H(((e,t)=>{r(e[0],t)}),t,1)}class je{constructor(){this.heap=[],this.pushCount=Number.MIN_SAFE_INTEGER}get length(){return this.heap.length}empty(){return this.heap=[],this}percUp(e){let t;for(;e>0&&ze(this.heap[e],this.heap[t=Be(e)]);){let r=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=r,e=t}}percDown(e){let t;for(;(t=1+(e<<1))<this.heap.length&&(t+1<this.heap.length&&ze(this.heap[t+1],this.heap[t])&&(t+=1),!ze(this.heap[e],this.heap[t]));){let r=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=r,e=t}}push(e){e.pushCount=++this.pushCount,this.heap.push(e),this.percUp(this.heap.length-1)}unshift(e){return this.heap.push(e)}shift(){let[e]=this.heap;return this.heap[0]=this.heap[this.heap.length-1],this.heap.pop(),this.percDown(0),e}toArray(){return[...this]}*[Symbol.iterator](){for(let e=0;e<this.heap.length;e++)yield this.heap[e].data}remove(e){let t=0;for(let r=0;r<this.heap.length;r++)e(this.heap[r])||(this.heap[t]=this.heap[r],t++);this.heap.splice(t);for(let e=Be(this.heap.length-1);e>=0;e--)this.percDown(e);return this}}function Be(e){return(e+1>>1)-1}function ze(e,t){return e.priority!==t.priority?e.priority<t.priority:e.pushCount<t.pushCount}function Ue(e,t){var r=Le(e,t),{push:n,pushAsync:i}=r;function a(e,t){return Array.isArray(e)?e.map((e=>({data:e,priority:t}))):{data:e,priority:t}}return r._tasks=new je,r._createTaskItem=({data:e,priority:t},r)=>({data:e,priority:t,callback:r}),r.push=function(e,t=0,r){return n(a(e,t),r)},r.pushAsync=function(e,t=0,r){return i(a(e,t),r)},delete r.unshift,delete r.unshiftAsync,r}var qe=_((function(e,t){if(t=k(t),!Array.isArray(e))return t(new TypeError("First argument to race must be an array of functions"));if(!e.length)return t();for(var r=0,n=e.length;r<n;r++)g(e[r])(t)}),2);function Je(e,t,r,n){var i=[...e].reverse();return G(i,t,r,n)}function Ve(e){var t=g(e);return i((function(e,r){return e.push(((e,...t)=>{let n={};if(e&&(n.error=e),t.length>0){var i=t;t.length<=1&&([i]=t),n.value=i}r(null,n)})),t.apply(this,e)}))}function He(e){var t;return Array.isArray(e)?t=e.map(Ve):(t={},Object.keys(e).forEach((r=>{t[r]=Ve.call(this,e[r])}))),t}function Ke(e,t,r,n){const i=g(r);return be(e,t,((e,t)=>{i(e,((e,r)=>{t(e,!r)}))}),n)}var We=_((function(e,t,r){return Ke(A,e,t,r)}),3);var Ge=_((function(e,t,r,n){return Ke(D(t),e,r,n)}),4);var $e=_((function(e,t,r){return Ke(I,e,t,r)}),3);function Ye(e){return function(){return e}}const Xe=5,Qe=0;function Ze(e,t,r){var n={times:Xe,intervalFunc:Ye(Qe)};if(arguments.length<3&&"function"==typeof e?(r=t||M(),t=e):(!function(e,t){if("object"==typeof t)e.times=+t.times||Xe,e.intervalFunc="function"==typeof t.interval?t.interval:Ye(+t.interval||Qe),e.errorFilter=t.errorFilter;else{if("number"!=typeof t&&"string"!=typeof t)throw new Error("Invalid arguments for async.retry");e.times=+t||Xe}}(n,e),r=r||M()),"function"!=typeof t)throw new Error("Invalid arguments for async.retry");var i=g(t),a=1;return function e(){i(((t,...i)=>{!1!==t&&(t&&a++<n.times&&("function"!=typeof n.errorFilter||n.errorFilter(t))?setTimeout(e,n.intervalFunc(a-1)):r(t,...i))}))}(),r[R]}function et(e,t){t||(t=e,e=null);let r=e&&e.arity||t.length;m(t)&&(r+=1);var n=g(t);return i(((t,i)=>{function a(e){n(...t,e)}return(t.length<r-1||null==i)&&(t.push(i),i=M()),e?Ze(e,a,i):Ze(a,i),i[R]}))}function tt(e,t){return Oe(I,e,t)}var rt=_((function(e,t,r){return re(Boolean,(e=>e))(A,e,t,r)}),3);var nt=_((function(e,t,r,n){return re(Boolean,(e=>e))(D(t),e,r,n)}),4);var it=_((function(e,t,r){return re(Boolean,(e=>e))(I,e,t,r)}),3);var at=_((function(e,t,r){var n=g(t);return N(e,((e,t)=>{n(e,((r,n)=>{if(r)return t(r);t(r,{value:e,criteria:n})}))}),((e,t)=>{if(e)return r(e);r(null,t.sort(i).map((e=>e.value)))}));function i(e,t){var r=e.criteria,n=t.criteria;return r<n?-1:r>n?1:0}}),3);function ot(e,t,r){var n=g(e);return i(((i,a)=>{var o,s=!1;i.push(((...e)=>{s||(a(...e),clearTimeout(o))})),o=setTimeout((function(){var t=e.name||"anonymous",n=new Error('Callback function "'+t+'" timed out.');n.code="ETIMEDOUT",r&&(n.info=r),s=!0,a(n)}),t),n(...i)}))}function st(e,t,r,n){var i=g(r);return X(function(e){for(var t=Array(e);e--;)t[e]=e;return t}(e),t,i,n)}function ct(e,t,r){return st(e,1/0,t,r)}function lt(e,t,r){return st(e,1,t,r)}function ut(e,t,r,n){arguments.length<=3&&"function"==typeof t&&(n=r,r=t,t=Array.isArray(e)?[]:{}),n=k(n||M());var i=g(r);return A(e,((e,r,n)=>{i(t,e,r,n)}),(e=>n(e,t))),n[R]}var dt=_((function(e,t){var r,n=null;return fe(e,((e,t)=>{g(e)(((e,...i)=>{if(!1===e)return t(e);i.length<2?[r]=i:r=i,n=e,t(e?null:{})}))}),(()=>t(n,r)))}));function pt(e){return(...t)=>(e.unmemoized||e)(...t)}var ft=_((function(e,t,r){r=E(r);var n=g(t),i=g(e),a=[];function o(e,...t){if(e)return r(e);a=t,!1!==e&&i(s)}function s(e,t){return e?r(e):!1!==e?t?void n(o):r(null,...a):void 0}return i(s)}),3);function mt(e,t,r){const n=g(e);return ft((e=>n(((t,r)=>e(t,!r)))),t,r)}var gt=_((function(e,t){if(t=k(t),!Array.isArray(e))return t(new Error("First argument to waterfall must be an array of functions"));if(!e.length)return t();var r=0;function n(t){g(e[r++])(...t,E(i))}function i(i,...a){if(!1!==i)return i||r===e.length?t(i,...a):void n(a)}n([])})),_t={apply:n,applyEach:P,applyEachSeries:O,asyncify:d,auto:L,autoInject:q,cargo:K,cargoQueue:W,compose:Y,concat:Z,concatLimit:Q,concatSeries:ee,constant:te,detect:ne,detectLimit:ie,detectSeries:ae,dir:se,doUntil:le,doWhilst:ce,each:de,eachLimit:pe,eachOf:A,eachOfLimit:w,eachOfSeries:I,eachSeries:fe,ensureAsync:me,every:ge,everyLimit:_e,everySeries:he,filter:ke,filterLimit:xe,filterSeries:Ee,forever:Se,groupBy:we,groupByLimit:De,groupBySeries:Te,log:Ce,map:N,mapLimit:X,mapSeries:F,mapValues:Ne,mapValuesLimit:Ae,mapValuesSeries:Pe,memoize:Ie,nextTick:Fe,parallel:Re,parallelLimit:Me,priorityQueue:Ue,queue:Le,race:qe,reduce:G,reduceRight:Je,reflect:Ve,reflectAll:He,reject:We,rejectLimit:Ge,rejectSeries:$e,retry:Ze,retryable:et,seq:$,series:tt,setImmediate:u,some:rt,someLimit:nt,someSeries:it,sortBy:at,timeout:ot,times:ct,timesLimit:st,timesSeries:lt,transform:ut,tryEach:dt,unmemoize:pt,until:mt,waterfall:gt,whilst:ft,all:ge,allLimit:_e,allSeries:he,any:rt,anyLimit:nt,anySeries:it,find:ne,findLimit:ie,findSeries:ae,flatMap:Z,flatMapLimit:Q,flatMapSeries:ee,forEach:de,forEachSeries:fe,forEachLimit:pe,forEachOf:A,forEachOfSeries:I,forEachOfLimit:w,inject:G,foldl:G,foldr:Je,select:ke,selectLimit:xe,selectSeries:Ee,wrapSync:d,during:ft,doDuring:ce}},79429:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>M});var n={Space_Separator:/[\u1680\u2000-\u200A\u202F\u205F\u3000]/,ID_Start:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\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\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\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-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\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]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/,ID_Continue:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\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\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\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\u09FC\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\u0AF9-\u0AFF\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\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\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\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\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-\u191E\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\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\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\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-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\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-\uFE2F\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]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/},i={isSpaceSeparator:e=>"string"==typeof e&&n.Space_Separator.test(e),isIdStartChar:e=>"string"==typeof e&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||"$"===e||"_"===e||n.ID_Start.test(e)),isIdContinueChar:e=>"string"==typeof e&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e>="0"&&e<="9"||"$"===e||"_"===e||"‌"===e||"‍"===e||n.ID_Continue.test(e)),isDigit:e=>"string"==typeof e&&/[0-9]/.test(e),isHexDigit:e=>"string"==typeof e&&/[0-9A-Fa-f]/.test(e)};let a,o,s,c,l,u,d,p,f;function m(e,t,r){const n=e[t];if(null!=n&&"object"==typeof n)if(Array.isArray(n))for(let e=0;e<n.length;e++){const t=String(e),i=m(n,t,r);void 0===i?delete n[t]:Object.defineProperty(n,t,{value:i,writable:!0,enumerable:!0,configurable:!0})}else for(const e in n){const t=m(n,e,r);void 0===t?delete n[e]:Object.defineProperty(n,e,{value:t,writable:!0,enumerable:!0,configurable:!0})}return r.call(e,t,n)}let g,_,h,y,v;function b(){for(g="default",_="",h=!1,y=1;;){v=k();const e=E[g]();if(e)return e}}function k(){if(a[c])return String.fromCodePoint(a.codePointAt(c))}function x(){const e=k();return"\n"===e?(l++,u=0):e?u+=e.length:u++,e&&(c+=e.length),e}const E={default(){switch(v){case"\t":case"\v":case"\f":case" ":case" ":case"\ufeff":case"\n":case"\r":case"\u2028":case"\u2029":return void x();case"/":return x(),void(g="comment");case void 0:return x(),S("eof")}if(!i.isSpaceSeparator(v))return E[o]();x()},comment(){switch(v){case"*":return x(),void(g="multiLineComment");case"/":return x(),void(g="singleLineComment")}throw N(x())},multiLineComment(){switch(v){case"*":return x(),void(g="multiLineCommentAsterisk");case void 0:throw N(x())}x()},multiLineCommentAsterisk(){switch(v){case"*":return void x();case"/":return x(),void(g="default");case void 0:throw N(x())}x(),g="multiLineComment"},singleLineComment(){switch(v){case"\n":case"\r":case"\u2028":case"\u2029":return x(),void(g="default");case void 0:return x(),S("eof")}x()},value(){switch(v){case"{":case"[":return S("punctuator",x());case"n":return x(),D("ull"),S("null",null);case"t":return x(),D("rue"),S("boolean",!0);case"f":return x(),D("alse"),S("boolean",!1);case"-":case"+":return"-"===x()&&(y=-1),void(g="sign");case".":return _=x(),void(g="decimalPointLeading");case"0":return _=x(),void(g="zero");case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return _=x(),void(g="decimalInteger");case"I":return x(),D("nfinity"),S("numeric",1/0);case"N":return x(),D("aN"),S("numeric",NaN);case'"':case"'":return h='"'===x(),_="",void(g="string")}throw N(x())},identifierNameStartEscape(){if("u"!==v)throw N(x());x();const e=w();switch(e){case"$":case"_":break;default:if(!i.isIdStartChar(e))throw I()}_+=e,g="identifierName"},identifierName(){switch(v){case"$":case"_":case"‌":case"‍":return void(_+=x());case"\\":return x(),void(g="identifierNameEscape")}if(!i.isIdContinueChar(v))return S("identifier",_);_+=x()},identifierNameEscape(){if("u"!==v)throw N(x());x();const e=w();switch(e){case"$":case"_":case"‌":case"‍":break;default:if(!i.isIdContinueChar(e))throw I()}_+=e,g="identifierName"},sign(){switch(v){case".":return _=x(),void(g="decimalPointLeading");case"0":return _=x(),void(g="zero");case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return _=x(),void(g="decimalInteger");case"I":return x(),D("nfinity"),S("numeric",y*(1/0));case"N":return x(),D("aN"),S("numeric",NaN)}throw N(x())},zero(){switch(v){case".":return _+=x(),void(g="decimalPoint");case"e":case"E":return _+=x(),void(g="decimalExponent");case"x":case"X":return _+=x(),void(g="hexadecimal")}return S("numeric",0*y)},decimalInteger(){switch(v){case".":return _+=x(),void(g="decimalPoint");case"e":case"E":return _+=x(),void(g="decimalExponent")}if(!i.isDigit(v))return S("numeric",y*Number(_));_+=x()},decimalPointLeading(){if(i.isDigit(v))return _+=x(),void(g="decimalFraction");throw N(x())},decimalPoint(){switch(v){case"e":case"E":return _+=x(),void(g="decimalExponent")}return i.isDigit(v)?(_+=x(),void(g="decimalFraction")):S("numeric",y*Number(_))},decimalFraction(){switch(v){case"e":case"E":return _+=x(),void(g="decimalExponent")}if(!i.isDigit(v))return S("numeric",y*Number(_));_+=x()},decimalExponent(){switch(v){case"+":case"-":return _+=x(),void(g="decimalExponentSign")}if(i.isDigit(v))return _+=x(),void(g="decimalExponentInteger");throw N(x())},decimalExponentSign(){if(i.isDigit(v))return _+=x(),void(g="decimalExponentInteger");throw N(x())},decimalExponentInteger(){if(!i.isDigit(v))return S("numeric",y*Number(_));_+=x()},hexadecimal(){if(i.isHexDigit(v))return _+=x(),void(g="hexadecimalInteger");throw N(x())},hexadecimalInteger(){if(!i.isHexDigit(v))return S("numeric",y*Number(_));_+=x()},string(){switch(v){case"\\":return x(),void(_+=function(){switch(k()){case"b":return x(),"\b";case"f":return x(),"\f";case"n":return x(),"\n";case"r":return x(),"\r";case"t":return x(),"\t";case"v":return x(),"\v";case"0":if(x(),i.isDigit(k()))throw N(x());return"\0";case"x":return x(),function(){let e="",t=k();if(!i.isHexDigit(t))throw N(x());if(e+=x(),t=k(),!i.isHexDigit(t))throw N(x());return e+=x(),String.fromCodePoint(parseInt(e,16))}();case"u":return x(),w();case"\n":case"\u2028":case"\u2029":return x(),"";case"\r":return x(),"\n"===k()&&x(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case void 0:throw N(x())}return x()}());case'"':return h?(x(),S("string",_)):void(_+=x());case"'":return h?void(_+=x()):(x(),S("string",_));case"\n":case"\r":throw N(x());case"\u2028":case"\u2029":!function(e){console.warn(`JSON5: '${F(e)}' in strings is not valid ECMAScript; consider escaping`)}(v);break;case void 0:throw N(x())}_+=x()},start(){switch(v){case"{":case"[":return S("punctuator",x())}g="value"},beforePropertyName(){switch(v){case"$":case"_":return _=x(),void(g="identifierName");case"\\":return x(),void(g="identifierNameStartEscape");case"}":return S("punctuator",x());case'"':case"'":return h='"'===x(),void(g="string")}if(i.isIdStartChar(v))return _+=x(),void(g="identifierName");throw N(x())},afterPropertyName(){if(":"===v)return S("punctuator",x());throw N(x())},beforePropertyValue(){g="value"},afterPropertyValue(){switch(v){case",":case"}":return S("punctuator",x())}throw N(x())},beforeArrayValue(){if("]"===v)return S("punctuator",x());g="value"},afterArrayValue(){switch(v){case",":case"]":return S("punctuator",x())}throw N(x())},end(){throw N(x())}};function S(e,t){return{type:e,value:t,line:l,column:u}}function D(e){for(const t of e){if(k()!==t)throw N(x());x()}}function w(){let e="",t=4;for(;t-- >0;){const t=k();if(!i.isHexDigit(t))throw N(x());e+=x()}return String.fromCodePoint(parseInt(e,16))}const T={start(){if("eof"===d.type)throw P();C()},beforePropertyName(){switch(d.type){case"identifier":case"string":return p=d.value,void(o="afterPropertyName");case"punctuator":return void A();case"eof":throw P()}},afterPropertyName(){if("eof"===d.type)throw P();o="beforePropertyValue"},beforePropertyValue(){if("eof"===d.type)throw P();C()},beforeArrayValue(){if("eof"===d.type)throw P();"punctuator"!==d.type||"]"!==d.value?C():A()},afterPropertyValue(){if("eof"===d.type)throw P();switch(d.value){case",":return void(o="beforePropertyName");case"}":A()}},afterArrayValue(){if("eof"===d.type)throw P();switch(d.value){case",":return void(o="beforeArrayValue");case"]":A()}},end(){}};function C(){let e;switch(d.type){case"punctuator":switch(d.value){case"{":e={};break;case"[":e=[]}break;case"null":case"boolean":case"numeric":case"string":e=d.value}if(void 0===f)f=e;else{const t=s[s.length-1];Array.isArray(t)?t.push(e):Object.defineProperty(t,p,{value:e,writable:!0,enumerable:!0,configurable:!0})}if(null!==e&&"object"==typeof e)s.push(e),o=Array.isArray(e)?"beforeArrayValue":"beforePropertyName";else{const e=s[s.length-1];o=null==e?"end":Array.isArray(e)?"afterArrayValue":"afterPropertyValue"}}function A(){s.pop();const e=s[s.length-1];o=null==e?"end":Array.isArray(e)?"afterArrayValue":"afterPropertyValue"}function N(e){return O(void 0===e?`JSON5: invalid end of input at ${l}:${u}`:`JSON5: invalid character '${F(e)}' at ${l}:${u}`)}function P(){return O(`JSON5: invalid end of input at ${l}:${u}`)}function I(){return u-=5,O(`JSON5: invalid identifier character at ${l}:${u}`)}function F(e){const t={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};if(t[e])return t[e];if(e<" "){const t=e.charCodeAt(0).toString(16);return"\\x"+("00"+t).substring(t.length)}return e}function O(e){const t=new SyntaxError(e);return t.lineNumber=l,t.columnNumber=u,t}const R={parse:function(e,t){a=String(e),o="start",s=[],c=0,l=1,u=0,d=void 0,p=void 0,f=void 0;do{d=b(),T[o]()}while("eof"!==d.type);return"function"==typeof t?m({"":f},"",t):f},stringify:function(e,t,r){const n=[];let a,o,s,c="",l="";if(null==t||"object"!=typeof t||Array.isArray(t)||(r=t.space,s=t.quote,t=t.replacer),"function"==typeof t)o=t;else if(Array.isArray(t)){a=[];for(const e of t){let t;"string"==typeof e?t=e:("number"==typeof e||e instanceof String||e instanceof Number)&&(t=String(e)),void 0!==t&&a.indexOf(t)<0&&a.push(t)}}return r instanceof Number?r=Number(r):r instanceof String&&(r=String(r)),"number"==typeof r?r>0&&(r=Math.min(10,Math.floor(r)),l=" ".substr(0,r)):"string"==typeof r&&(l=r.substr(0,10)),u("",{"":e});function u(e,t){let r=t[e];switch(null!=r&&("function"==typeof r.toJSON5?r=r.toJSON5(e):"function"==typeof r.toJSON&&(r=r.toJSON(e))),o&&(r=o.call(t,e,r)),r instanceof Number?r=Number(r):r instanceof String?r=String(r):r instanceof Boolean&&(r=r.valueOf()),r){case null:return"null";case!0:return"true";case!1:return"false"}return"string"==typeof r?d(r):"number"==typeof r?String(r):"object"==typeof r?Array.isArray(r)?function(e){if(n.indexOf(e)>=0)throw TypeError("Converting circular structure to JSON5");n.push(e);let t=c;c+=l;let r,i=[];for(let t=0;t<e.length;t++){const r=u(String(t),e);i.push(void 0!==r?r:"null")}if(0===i.length)r="[]";else if(""===l){r="["+i.join(",")+"]"}else{let e=",\n"+c,n=i.join(e);r="[\n"+c+n+",\n"+t+"]"}return n.pop(),c=t,r}(r):function(e){if(n.indexOf(e)>=0)throw TypeError("Converting circular structure to JSON5");n.push(e);let t=c;c+=l;let r,i=a||Object.keys(e),o=[];for(const t of i){const r=u(t,e);if(void 0!==r){let e=p(t)+":";""!==l&&(e+=" "),e+=r,o.push(e)}}if(0===o.length)r="{}";else{let e;if(""===l)e=o.join(","),r="{"+e+"}";else{let n=",\n"+c;e=o.join(n),r="{\n"+c+e+",\n"+t+"}"}}return n.pop(),c=t,r}(r):void 0}function d(e){const t={"'":.1,'"':.2},r={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};let n="";for(let a=0;a<e.length;a++){const o=e[a];switch(o){case"'":case'"':t[o]++,n+=o;continue;case"\0":if(i.isDigit(e[a+1])){n+="\\x00";continue}}if(r[o])n+=r[o];else if(o<" "){let e=o.charCodeAt(0).toString(16);n+="\\x"+("00"+e).substring(e.length)}else n+=o}const a=s||Object.keys(t).reduce(((e,r)=>t[e]<t[r]?e:r));return n=n.replace(new RegExp(a,"g"),r[a]),a+n+a}function p(e){if(0===e.length)return d(e);const t=String.fromCodePoint(e.codePointAt(0));if(!i.isIdStartChar(t))return d(e);for(let r=t.length;r<e.length;r++)if(!i.isIdContinueChar(String.fromCodePoint(e.codePointAt(r))))return d(e);return e}}};const M=R},63598:e=>{"use strict";e.exports=JSON.parse('{"kitData":[{"filePath":"@internal/component/ets/ability_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/action_sheet.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/alert_dialog.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/alphabet_indexer.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/animator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/badge.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/blank.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/calendar.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/calendar_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/canvas.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/checkbox.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/checkboxgroup.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/circle.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/column.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/column_split.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/common.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/common_ts_ets_api.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/container_span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/context_menu.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/counter.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/custom_dialog_controller.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/data_panel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/date_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/divider.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/effect_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/ellipse.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/embedded_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/enums.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/flex.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/flow_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/folder_stack.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/form_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/form_link.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/for_each.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/gauge.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/gesture.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/gridItem.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid_col.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid_container.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid_row.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/hyperlink.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image_animator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image_common.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image_span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/inspector.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/lazy_for_each.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/line.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/list.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/list_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/list_item_group.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/loading_progress.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/location_button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/marquee.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/matrix2d.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/media_cached_image.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/menu.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/menu_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/menu_item_group.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/navigation.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/navigator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/nav_destination.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/nav_router.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/node_container.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/page_transition.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/panel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/particle.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/paste_button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/path.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/pattern_lock.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/plugin_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/polygon.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/polyline.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/progress.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/qrcode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/radio.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rating.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rect.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/refresh.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/relative_container.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/remote_window.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rich_editor.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rich_text.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/root_scene.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/row.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/row_split.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/save_button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/screen.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/scroll.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/scroll_bar.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/search.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/security_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/select.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/shape.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/sidebar.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/slider.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/stack.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/state_management.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/stepper.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/stepper_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/styled_string.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/swiper.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/symbolglyph.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/symbol_span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/tabs.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/tab_content.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_area.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_clock.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_common.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_input.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_timer.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/time_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/toggle.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/ui_extension_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/units.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/video.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/water_flow.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/web.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@internal/component/ets/window_scene.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/xcomponent.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/ets/global.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/ets/global.d.ts","kitName":"ArkUI","subSystem":"公共基础类库"},{"filePath":"@internal/ets/lifecycle.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.ability.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.dataUriUtils.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.errorCode.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.featureAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.particleAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.particleAbility.d.ts","kitName":"AbilityKit","subSystem":"资源调度"},{"filePath":"@ohos.ability.wantConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.abilityAccessCtrl.d.ts","kitName":"AbilityKit","subSystem":"安全基础能力"},{"filePath":"@ohos.accessibility.config.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.accessibility.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.accessibility.GesturePath.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.accessibility.GesturePoint.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.account.appAccount.d.ts","kitName":"BasicServicesKit","subSystem":"账号"},{"filePath":"@ohos.account.distributedAccount.d.ts","kitName":"BasicServicesKit","subSystem":"账号"},{"filePath":"@ohos.account.osAccount.d.ts","kitName":"BasicServicesKit","subSystem":"账号"},{"filePath":"@ohos.advertising.AdComponent.d.ets","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.advertising.AdsServiceExtensionAbility.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.advertising.AutoAdComponent.d.ets","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.advertising.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.ai.intelligentVoice.d.ts","kitName":"MindSporeLiteKit","subSystem":"AI业务"},{"filePath":"@ohos.ai.mindSporeLite.d.ts","kitName":"MindSporeLiteKit","subSystem":"AI业务"},{"filePath":"@ohos.animation.windowAnimationManager.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.animator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.app.ability.Ability.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AbilityConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.abilityDelegatorRegistry.d.ts","kitName":"TestKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AbilityLifecycleCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.abilityManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AbilityStage.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ActionExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ApplicationStateChangeCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.appManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.appRecovery.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AtomicServiceOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AutoFillExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.autoFillManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.autoStartupManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ChildProcess.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.childProcessManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.common.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.Configuration.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ConfigurationConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.contextConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.dataUriUtils.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.dialogRequest.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.dialogSession.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.DriverExtensionAbility.d.ts","kitName":"DriverDevelopmentKit","subSystem":"驱动"},{"filePath":"@ohos.app.ability.EmbeddableUIAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.EmbeddedUIExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.EnvironmentCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.errorManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.insightIntent.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.InsightIntentContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.insightIntentDriver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.InsightIntentExecutor.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.MediaControlExtensionAbility.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.app.ability.missionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.OpenLinkOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.PrintExtensionAbility.d.ts","kitName":"BasicServicesKit","subSystem":"打印"},{"filePath":"@ohos.app.ability.quickFixManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ServiceExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ShareExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.StartOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UIAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UIExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UIExtensionContentSession.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UserAuthExtensionAbility.d.ts","kitName":"UserAuthenticationKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.VpnExtensionAbility.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.Want.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.wantAgent.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.wantConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupListener.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.businessAbilityRouter.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formAgent.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formBindingData.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.FormExtensionAbility.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formHost.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formInfo.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formObserver.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formProvider.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.abilityDelegatorRegistry.d.ts","kitName":"TestKit","subSystem":"元能力"},{"filePath":"@ohos.application.abilityManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.AccessibilityExtensionAbility.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.application.appManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.BackupExtensionAbility.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.application.Configuration.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.ConfigurationConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.DataShareExtensionAbility.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.application.formBindingData.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formError.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formHost.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formInfo.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formProvider.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.missionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.StaticSubscriberExtensionAbility.d.ts","kitName":"BasicServicesKit","subSystem":"元能力"},{"filePath":"@ohos.application.StaticSubscriberExtensionContext.d.ts","kitName":"BasicServicesKit","subSystem":"元能力"},{"filePath":"@ohos.application.testRunner.d.ts","kitName":"TestKit","subSystem":"元能力"},{"filePath":"@ohos.application.uriPermissionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.Want.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.WindowExtensionAbility.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.arkui.advanced.Chip.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ChipGroup.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ComposeListItem.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ComposeTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Counter.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Dialog.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.EditableTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ExceptionPrompt.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Filter.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.GridObjectSortComponent.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Popup.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ProgressButton.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SegmentButton.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SelectionMenu.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SelectTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SplitLayout.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SubHeader.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SwipeRefresher.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.TabTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ToolBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.TreeView.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.componentSnapshot.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.componentUtils.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.dragController.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.drawableDescriptor.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.inspector.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.observer.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.performanceMonitor.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.shape.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.UIContext.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.UIContext.d.ts","kitName":"ArkUI","subSystem":"元能力"},{"filePath":"@ohos.arkui.uiExtension.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.backgroundTaskManager.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.base.d.ts","kitName":"BasicServicesKit","subSystem":"SDK"},{"filePath":"@ohos.batteryInfo.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.batteryStatistics.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.bluetooth.a2dp.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.access.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.baseProfile.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.ble.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.connection.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.constant.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.hfp.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.hid.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.map.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.pan.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.pbap.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.socket.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.wearDetection.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetoothManager.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.brightness.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.buffer.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.bundle.appControl.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.bundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.bundleMonitor.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.bundleResourceManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.defaultAppManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.distributedBundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.freeInstall.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.innerBundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.installer.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.launcherBundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.overlay.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundleState.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.bytrace.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.calendarManager.d.ts","kitName":"CalendarKit","subSystem":"应用"},{"filePath":"@ohos.charger.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.commonEventManager.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"@ohos.configPolicy.d.ts","kitName":"BasicServicesKit","subSystem":"定制"},{"filePath":"@ohos.connectedTag.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.contact.d.ts","kitName":"ContactsKit","subSystem":"应用"},{"filePath":"@ohos.continuation.continuationManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.convertxml.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.cooperate.d.ts","kitName":"DistributedServiceKit","subSystem":"综合传感处理平台"},{"filePath":"@ohos.curves.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.data.cloudData.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.cloudExtension.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.commonType.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.dataAbility.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.dataShare.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.dataSharePredicates.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.DataShareResultSet.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.distributedData.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.distributedDataObject.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.distributedKVStore.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.preferences.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.rdb.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.relationalStore.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.storage.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.unifiedDataChannel.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.uniformDataStruct.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.uniformTypeDescriptor.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.ValuesBucket.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.deviceAttest.d.ts","kitName":"BasicServicesKit","subSystem":"XTS"},{"filePath":"@ohos.deviceInfo.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@ohos.deviceStatus.dragInteraction.d.ts","kitName":"ArkUI","subSystem":"综合传感处理平台"},{"filePath":"@ohos.display.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.display.d.ts","kitName":"ArkUI","subSystem":"窗口"},{"filePath":"@ohos.distributedBundle.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.distributedDeviceManager.d.ts","kitName":"DistributedServiceKit","subSystem":"分布式硬件"},{"filePath":"@ohos.distributedHardware.deviceManager.d.ts","kitName":"DistributedServiceKit","subSystem":"分布式硬件"},{"filePath":"@ohos.distributedHardware.hardwareManager.d.ts","kitName":"DistributedServiceKit","subSystem":"分布式硬件"},{"filePath":"@ohos.distributedMissionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.dlpPermission.d.ts","kitName":"DataLossPreventionKit","subSystem":"安全基础能力"},{"filePath":"@ohos.document.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.driver.deviceManager.d.ts","kitName":"DriverDevelopmentKit","subSystem":"驱动"},{"filePath":"@ohos.effectKit.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.enterprise.accountManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.adminManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.applicationManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.bluetoothManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.browser.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.bundleManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.dateTimeManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.deviceControl.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.deviceInfo.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.deviceSettings.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.EnterpriseAdminExtensionAbility.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.locationManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.networkManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.restrictions.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.securityManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.systemManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.usbManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.wifiManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.events.emitter.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"@ohos.faultLogger.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.file.backup.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.cloudSync.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.cloudSyncManager.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.environment.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fileAccess.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fileExtensionInfo.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fileuri.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fs.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.hash.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.photoAccessHelper.d.ts","kitName":"MediaLibraryKit","subSystem":"文件管理"},{"filePath":"@ohos.file.PhotoPickerComponent.d.ets","kitName":"MediaLibraryKit","subSystem":"文件管理"},{"filePath":"@ohos.file.picker.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.recent.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.securityLabel.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.statvfs.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.storageStatistics.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.trash.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.volumeManager.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.fileio.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.filemanagement.userFileManager.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.fileshare.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.font.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.geolocation.d.ts","kitName":"LocationKit","subSystem":"位置服务"},{"filePath":"@ohos.geoLocationManager.d.ts","kitName":"LocationKit","subSystem":"位置服务"},{"filePath":"@ohos.graphics.colorSpaceManager.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.graphics.displaySync.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.graphics.hdrCapability.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.hiAppEvent.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hichecker.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hidebug.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hilog.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiSysEvent.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiTraceChain.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiTraceMeter.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiviewdfx.hiAppEvent.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.i18n.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"@ohos.identifier.oaid.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.inputMethod.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.inputMethod.Panel.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.inputMethodEngine.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.InputMethodExtensionAbility.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.InputMethodExtensionContext.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.inputMethodList.d.ets","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.InputMethodSubtype.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.intl.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"@ohos.logLibrary.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.matrix4.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.measure.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.mediaquery.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.multimedia.audio.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.audioHaptic.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avCastPicker.d.ets","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avCastPickerParam.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avsession.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avVolumePanel.d.ets","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.camera.d.ts","kitName":"CameraKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.cameraPicker.d.ts","kitName":"CameraKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.drm.d.ts","kitName":"DrmKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.image.d.ts","kitName":"ImageKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.media.d.ts","kitName":"MediaKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.mediaLibrary.d.ts","kitName":"MediaLibraryKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.systemSoundManager.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimodalInput.gestureEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputConsumer.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputDevice.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputDeviceCooperate.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputEventClient.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputMonitor.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.intentionCode.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.keyCode.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.keyEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.mouseEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.pointer.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.shortKey.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.touchEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.infraredEmitter.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.net.connection.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.connection.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.ethernet.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.http.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.mdns.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.networkSecurity.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.policy.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.sharing.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.socket.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.statistics.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.vpn.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.vpn.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"@ohos.net.vpnExtension.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.vpnExtension.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"@ohos.net.webSocket.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.webSocket.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.nfc.cardEmulation.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.nfc.controller.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.nfc.tag.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.notificationManager.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@ohos.notificationSubscribe.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@ohos.pasteboard.d.ts","kitName":"BasicServicesKit","subSystem":"剪贴板"},{"filePath":"@ohos.PiPWindow.d.ts","kitName":"ArkUI","subSystem":"窗口"},{"filePath":"@ohos.pluginComponent.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.power.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.print.d.ts","kitName":"BasicServicesKit","subSystem":"打印"},{"filePath":"@ohos.privacyManager.d.ts","kitName":"AbilityKit","subSystem":"安全基础能力"},{"filePath":"@ohos.process.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.prompt.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.promptAction.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.reminderAgent.d.ts","kitName":"BackgroundTasksKit","subSystem":"事件通知"},{"filePath":"@ohos.reminderAgentManager.d.ts","kitName":"BackgroundTasksKit","subSystem":"事件通知"},{"filePath":"@ohos.request.d.ts","kitName":"BasicServicesKit","subSystem":"上传下载"},{"filePath":"@ohos.resourceManager.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"@ohos.resourceschedule.backgroundTaskManager.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.deviceStandby.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.systemload.d.ts","kitName":"BasicServicesKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.usageStatistics.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.workScheduler.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.router.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.rpc.d.ts","kitName":"IPCKit","subSystem":"基础通信"},{"filePath":"@ohos.runningLock.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.screen.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.screenLock.d.ts","kitName":"BasicServicesKit","subSystem":"主题"},{"filePath":"@ohos.screenshot.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.secureElement.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.security.asset.d.ts","kitName":"Asset Store Kit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.cert.d.ts","kitName":"DeviceCertificateKit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.certManager.d.ts","kitName":"DeviceCertificateKit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.cryptoFramework.d.ts","kitName":"CryptoArchitectureKit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.huks.d.ts","kitName":"UniversalKeystoreKit","subSystem":"安全基础能力"},{"filePath":"@ohos.sensor.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"@ohos.settings.d.ts","kitName":"BasicServicesKit","subSystem":"应用"},{"filePath":"@ohos.statfs.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.stationary.d.ts","kitName":"MultimodalAwarenessKit","subSystem":"综合传感处理平台"},{"filePath":"@ohos.systemCapability.d.ts","kitName":"BasicServicesKit","subSystem":"研发工具链"},{"filePath":"@ohos.systemDateTime.d.ts","kitName":"BasicServicesKit","subSystem":"时间时区"},{"filePath":"@ohos.systemparameter.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@ohos.systemParameterEnhance.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@ohos.systemTime.d.ts","kitName":"BasicServicesKit","subSystem":"时间时区"},{"filePath":"@ohos.systemTimer.d.ts","kitName":"BasicServicesKit","subSystem":"时间时区"},{"filePath":"@ohos.taskpool.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.telephony.call.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.call.d.ts","kitName":"TelephonyKit","subSystem":"应用"},{"filePath":"@ohos.telephony.data.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.observer.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.radio.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.sim.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.sms.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.vcard.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.thermal.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.uiAppearance.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.uiExtensionHost.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.UiTest.d.ts","kitName":"TestKit","subSystem":"测试框架"},{"filePath":"@ohos.update.d.ts","kitName":"BasicServicesKit","subSystem":"升级服务"},{"filePath":"@ohos.uri.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.url.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.usb.d.ts","kitName":"BasicServicesKit","subSystem":"USB服务"},{"filePath":"@ohos.usbManager.d.ts","kitName":"BasicServicesKit","subSystem":"USB服务"},{"filePath":"@ohos.userIAM.faceAuth.d.ts","kitName":"UserAuthenticationKit","subSystem":"用户IAM"},{"filePath":"@ohos.userIAM.userAuth.d.ts","kitName":"UserAuthenticationKit","subSystem":"用户IAM"},{"filePath":"@ohos.userIAM.userAuthIcon.d.ets","kitName":"UserAuthenticationKit","subSystem":"用户IAM"},{"filePath":"@ohos.util.ArrayList.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Deque.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.HashMap.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.HashSet.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.json.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.LightWeightMap.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.LightWeightSet.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.LinkedList.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.List.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.PlainArray.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Queue.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Stack.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.TreeMap.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.TreeSet.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Vector.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.vibrator.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"@ohos.wallpaper.d.ts","kitName":"BasicServicesKit","subSystem":"主题"},{"filePath":"@ohos.WallpaperExtensionAbility.d.ts","kitName":"BasicServicesKit","subSystem":"主题"},{"filePath":"@ohos.wantAgent.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.web.netErrorList.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@ohos.web.webview.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@ohos.wifi.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiext.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiManager.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiManagerExt.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiManagerExt.d.ts","kitName":"ConnectivityKit","subSystem":"元能力"},{"filePath":"@ohos.window.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.window.d.ts","kitName":"ArkUI","subSystem":"窗口"},{"filePath":"@ohos.worker.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.WorkSchedulerExtensionAbility.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.xml.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.zlib.d.ts","kitName":"BasicServicesKit","subSystem":"包管理"},{"filePath":"@system.app.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.battery.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@system.bluetooth.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@system.brightness.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@system.cipher.d.ts","kitName":"CryptoArchitectureKit","subSystem":"安全基础能力"},{"filePath":"@system.configuration.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.device.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@system.file.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@system.geolocation.d.ts","kitName":"LocationKit","subSystem":"位置服务"},{"filePath":"@system.mediaquery.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.notification.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@system.package.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@system.prompt.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.request.d.ts","kitName":"BasicServicesKit","subSystem":"上传下载"},{"filePath":"@system.router.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.sensor.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"@system.storage.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@system.vibrator.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"ability/abilityResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/connectOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/dataAbilityHelper.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/dataAbilityOperation.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/dataAbilityResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/startAbilityParameter.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/want.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"advertising/advertisement.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"app/appVersionInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"app/context.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"app/processInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityDelegator.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/abilityDelegatorArgs.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityFirstFrameStateData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityForegroundStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityMonitor.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityRunningInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStageContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStageMonitor.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStateData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AccessibilityExtensionContext.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"application/AppForegroundStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ApplicationContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ApplicationStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AppStateData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillRect.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillRequest.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillType.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoStartupCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoStartupInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/BaseContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/BusinessAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/Context.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinuableInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinueCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinueDeviceInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinueMissionInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/DriverExtensionContext.d.ts","kitName":"DriverDevelopmentKit","subSystem":"驱动"},{"filePath":"application/EmbeddableUIAbilityContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ErrorObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/EventHub.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ExtensionRunningInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/FormExtensionContext.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"application/LoopObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MediaControlExtensionContext.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"application/MissionCallbacks.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionDeviceInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionListener.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionParameter.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionSnapshot.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/PageNodeInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ProcessData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ProcessInformation.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ProcessRunningInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ServiceExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/shellCmdResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/UIAbilityContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/UIExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ViewData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/VpnExtensionContext.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"application/WorkSchedulerExtensionContext.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"arkui/AlphabetIndexerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/BlankModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/BuilderNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ButtonModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CalendarPickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CheckboxGroupModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CheckboxModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ColumnModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ColumnSplitModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CommonModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ComponentContent.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CounterModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/DataPanelModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/DatePickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/DividerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/FormComponentModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/FrameNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GaugeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/Graphics.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridColModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridRowModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/HyperlinkModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ImageAnimatorModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ImageModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ImageSpanModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/LineModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ListItemGroupModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ListItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ListModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/LoadingProgressModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/MarqueeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/MenuItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/MenuModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavDestinationModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavigationModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavigatorModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavRouterModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NodeController.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PanelModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PathModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PatternLockModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PolygonModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PolylineModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ProgressModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/QRCodeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RadioModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RatingModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RectModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RenderNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RichEditorModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RowModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RowSplitModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ScrollModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SearchModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SelectModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ShapeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SideBarContainerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SliderModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SpanModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/StackModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/StepperItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SwiperModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TabsModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextAreaModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextClockModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextInputModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextPickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextTimerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TimePickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ToggleModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/VideoModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/WaterFlowModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/XComponentNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"bundle/abilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/applicationInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/bundleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/bundleInstaller.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/bundleStatusCallback.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/customizeData.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/elementName.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/hapModuleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/launcherAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/moduleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/PermissionDef.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/remoteAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/shortcutInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/AbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ApplicationInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/AppProvisionInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/BundleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/BundlePackInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/BundleResourceInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/DispatchInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ElementName.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ExtensionAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/HapModuleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/LauncherAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/LauncherAbilityResourceInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/Metadata.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/OverlayModuleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/PermissionDef.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/RecoverableApplicationInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/RemoteAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/SharedBundleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ShortcutInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"common/full/canvaspattern.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/console.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/dom.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/featureability.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/global.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/viewmodel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/console.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/featureability.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/global.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/viewmodel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"commonEvent/commonEventData.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"commonEvent/commonEventPublishData.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"commonEvent/commonEventSubscribeInfo.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"commonEvent/commonEventSubscriber.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"continuation/continuationExtraParams.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"continuation/continuationResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"data/rdb/resultSet.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"global/rawFileDescriptor.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"global/resource.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"multimedia/soundPool.d.ts","kitName":"MediaKit","subSystem":"OS媒体软件"},{"filePath":"notification/notificationActionButton.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/NotificationCommonDef.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationContent.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationContent.d.ts","kitName":"NotificationKit","subSystem":"安全基础能力"},{"filePath":"notification/notificationFlags.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationRequest.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSlot.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSorting.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSortingMap.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSubscribeInfo.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSubscriber.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationTemplate.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationUserInput.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"security/PermissionRequestResult.d.ts","kitName":"AbilityKit","subSystem":"安全基础能力"},{"filePath":"tag/nfctech.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"tag/tagSession.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"wantAgent/triggerInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@internal/component/ets/component3d.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/styled_string.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/web.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@ohos.app.appstartup.StartupConfig.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupConfigEntry.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupListener.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.startupManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupTask.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.arkui.shape.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.commonEvent.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"@ohos.graphics.common2D.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.graphics.drawing.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.notification.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@ohos.security.securityGuard.d.ts","kitName":"securityGuardKit","subSystem":"安全基础能力"},{"filePath":"@system.fetch.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@system.network.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"application/VpnExtensionContext.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"application/WindowExtensionContext.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"arkui/AttributeUpdater.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"data/rdb/resultSet.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"multimedia/ringtonePlayer.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"multimedia/systemTonePlayer.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@internal/component/ets/repeat.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"application/AbilityFirstFrameStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStartCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityFirstFrameStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.graphics.text.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"wantAgent/wantAgentInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"permissions.d.ts","kitName":"NA","subSystem":"NA"}]}')},739:e=>{"use strict";e.exports=JSON.parse('{"compileOnSave":false,"compilerOptions":{"ets":{"render":{"method":["build","pageTransition"],"decorator":"Builder"},"components":["AbilityComponent","AlphabetIndexer","Animator","Badge","Blank","Button","Calendar","CalendarPicker","Camera","Canvas","Checkbox","CheckboxGroup","Circle","ColorPicker","ColorPickerDialog","Column","ColumnSplit","Component3D","Counter","DataPanel","DatePicker","Divider","Ellipse","Flex","FormComponent","Gauge","GeometryView","Grid","GridItem","GridContainer","Hyperlink","Image","ImageAnimator","LazyVGridLayout","Line","List","ListItem","ListItemGroup","LoadingProgress","Marquee","Menu","MenuItem","MenuItemGroup","Navigation","Navigator","Option","PageTransitionEnter","PageTransitionExit","Panel","Particle","Path","PatternLock","Piece","PluginComponent","Polygon","Polyline","Progress","QRCode","Radio","Rating","Rect","Refresh","RelativeContainer","RemoteWindow","Row","RowSplit","RichText","Scroll","ScrollBar","Search","Section","Select","Shape","Sheet","SideBarContainer","Slider","Span","Stack","Stepper","StepperItem","Swiper","TabContent","Tabs","Text","TextPicker","TextClock","TextArea","TextInput","TextTimer","TimePicker","Toggle","Video","Web","XComponent","GridRow","GridCol"],"extend":{"decorator":"Extend","components":[{"name":"AbilityComponent","type":"AbilityComponentAttribute","instance":"AbilityComponentInstance"},{"name":"AlphabetIndexer","type":"AlphabetIndexerAttribute","instance":"AlphabetIndexerInstance"},{"name":"Animator","type":"AnimatorAttribute","instance":"AnimatorInstance"},{"name":"Badge","type":"BadgeAttribute","instance":"BadgeInstance"},{"name":"Blank","type":"BlankAttribute","instance":"BlankInstance"},{"name":"Button","type":"ButtonAttribute","instance":"ButtonInstance"},{"name":"Calendar","type":"CalendarAttribute","instance":"CalendarInstance"},{"name":"CalendarPicker","type":"CalendarPickerAttribute","instance":"CalendarPickerInstance"},{"name":"Camera","type":"CameraAttribute","instance":"CameraInstance"},{"name":"Canvas","type":"CanvasAttribute","instance":"CanvasInstance"},{"name":"Checkbox","type":"CheckboxAttribute","instance":"CheckboxInstance"},{"name":"CheckboxGroup","type":"CheckboxGroupAttribute","instance":"CheckboxGroupInstance"},{"name":"Circle","type":"CircleAttribute","instance":"CircleInstance"},{"name":"ColorPicker","type":"ColorPickerAttribute","instance":"ColorPickerInstance"},{"name":"ColorPickerDialog","type":"ColorPickerDialogAttribute","instance":"ColorPickerDialogInstance"},{"name":"Column","type":"ColumnAttribute","instance":"ColumnInstance"},{"name":"ColumnSplit","type":"ColumnSplitAttribute","instance":"ColumnSplitInstance"},{"name":"Component3D","type":"Component3DAttribute","instance":"Component3DInstance"},{"name":"Counter","type":"CounterAttribute","instance":"CounterInstance"},{"name":"DataPanel","type":"DataPanelAttribute","instance":"DataPanelInstance"},{"name":"DatePicker","type":"DatePickerAttribute","instance":"DatePickerInstance"},{"name":"Divider","type":"DividerAttribute","instance":"DividerInstance"},{"name":"Ellipse","type":"EllipseAttribute","instance":"EllipseInstance"},{"name":"Flex","type":"FlexAttribute","instance":"FlexInstance"},{"name":"FormComponent","type":"FormComponentAttribute","instance":"FormComponentInstance"},{"name":"Gauge","type":"GaugeAttribute","instance":"GaugeInstance"},{"name":"GeometryView","type":"GeometryViewAttribute","instance":"GeometryViewInstance"},{"name":"Grid","type":"GridAttribute","instance":"GridInstance"},{"name":"GridItem","type":"GridItemAttribute","instance":"GridItemInstance"},{"name":"GridContainer","type":"GridContainerAttribute","instance":"GridContainerInstance"},{"name":"Hyperlink","type":"HyperlinkAttribute","instance":"HyperlinkInstance"},{"name":"Image","type":"ImageAttribute","instance":"ImageInstance"},{"name":"ImageAnimator","type":"ImageAnimatorAttribute","instance":"ImageAnimatorInstance"},{"name":"LazyVGridLayout","type":"LazyVGridLayoutAttribute","instance":"LazyVGridLayoutInstance"},{"name":"Line","type":"LineAttribute","instance":"LineInstance"},{"name":"List","type":"ListAttribute","instance":"ListInstance"},{"name":"ListItem","type":"ListItemAttribute","instance":"ListItemInstance"},{"name":"ListItemGroup","type":"ListItemGroupAttribute","instance":"ListItemGroupInstance"},{"name":"LoadingProgress","type":"LoadingProgressAttribute","instance":"LoadingProgressInstance"},{"name":"Marquee","type":"MarqueeAttribute","instance":"MarqueeInstance"},{"name":"Menu","type":"MenuAttribute","instance":"MenuInstance"},{"name":"MenuItem","type":"MenuItemAttribute","instance":"MenuItemInstance"},{"name":"MenuItemGroup","type":"MenuItemGroupAttribute","instance":"MenuItemGroupInstance"},{"name":"Navigation","type":"NavigationAttribute","instance":"NavigationInstance"},{"name":"Navigator","type":"NavigatorAttribute","instance":"NavigatorInstance"},{"name":"Option","type":"OptionAttribute","instance":"OptionInstance"},{"name":"PageTransitionEnter","type":"PageTransitionEnterAttribute","instance":"PageTransitionEnterInstance"},{"name":"PageTransitionExit","type":"PageTransitionExitAttribute","instance":"PageTransitionExitInstance"},{"name":"Panel","type":"PanelAttribute","instance":"PanelInstance"},{"name":"Particle","type":"ParticleAttribute","instance":"ParticleInstance"},{"name":"Path","type":"PathAttribute","instance":"PathInstance"},{"name":"PatternLock","type":"PatternLockAttribute","instance":"PatternLockInstance"},{"name":"Piece","type":"PieceAttribute","instance":"PieceInstance"},{"name":"PluginComponent","type":"PluginComponentAttribute","instance":"PluginComponentInstance"},{"name":"Polygon","type":"PolygonAttribute","instance":"PolygonInstance"},{"name":"Polyline","type":"PolylineAttribute","instance":"PolylineInstance"},{"name":"Progress","type":"ProgressAttribute","instance":"ProgressInstance"},{"name":"QRCode","type":"QRCodeAttribute","instance":"QRCodeInstance"},{"name":"Radio","type":"RadioAttribute","instance":"RadioInstance"},{"name":"Rating","type":"RatingAttribute","instance":"RatingInstance"},{"name":"Rect","type":"RectAttribute","instance":"RectInstance"},{"name":"RelativeContainer","type":"RelativeContainerAttribute","instance":"RelativeContainerInstance"},{"name":"Refresh","type":"RefreshAttribute","instance":"RefreshInstance"},{"name":"RemoteWindow","type":"RemoteWindowAttribute","instance":"RemoteWindowInstance"},{"name":"Row","type":"RowAttribute","instance":"RowInstance"},{"name":"RowSplit","type":"RowSplitAttribute","instance":"RowSplitInstance"},{"name":"RichText","type":"RichTextAttribute","instance":"RichTextInstance"},{"name":"Scroll","type":"ScrollAttribute","instance":"ScrollInstance"},{"name":"ScrollBar","type":"ScrollBarAttribute","instance":"ScrollBarInstance"},{"name":"Search","type":"SearchAttribute","instance":"SearchInstance"},{"name":"Section","type":"SectionAttribute","instance":"SectionInstance"},{"name":"Select","type":"SelectAttribute","instance":"SelectInstance"},{"name":"Shape","type":"ShapeAttribute","instance":"ShapeInstance"},{"name":"Sheet","type":"SheetAttribute","instance":"SheetInstance"},{"name":"SideBarContainer","type":"SideBarContainerAttribute","instance":"SideBarContainerInstance"},{"name":"Slider","type":"SliderAttribute","instance":"SliderInstance"},{"name":"Span","type":"SpanAttribute","instance":"SpanInstance"},{"name":"Stack","type":"StackAttribute","instance":"StackInstance"},{"name":"Stepper","type":"StepperAttribute","instance":"StepperInstance"},{"name":"StepperItem","type":"StepperItemAttribute","instance":"StepperItemInstance"},{"name":"Swiper","type":"SwiperAttribute","instance":"SwiperInstance"},{"name":"TabContent","type":"TabContentAttribute","instance":"TabContentInstance"},{"name":"Tabs","type":"TabsAttribute","instance":"TabsInstance"},{"name":"Text","type":"TextAttribute","instance":"TextInstance"},{"name":"TextPicker","type":"TextPickerAttribute","instance":"TextPickerInstance"},{"name":"TextClock","type":"TextClockAttribute","instance":"TextClockInstance"},{"name":"TextArea","type":"TextAreaAttribute","instance":"TextAreaInstance"},{"name":"TextInput","type":"TextInputAttribute","instance":"TextInputInstance"},{"name":"TextTimer","type":"TextTimerAttribute","instance":"TextTimerInstance"},{"name":"TimePicker","type":"TimePickerAttribute","instance":"TimePickerInstance"},{"name":"Toggle","type":"ToggleAttribute","instance":"ToggleInstance"},{"name":"Video","type":"VideoAttribute","instance":"VideoInstance"},{"name":"Web","type":"WebAttribute","instance":"WebInstance"},{"name":"XComponent","type":"XComponentAttribute","instance":"XComponentInstance"},{"name":"GridRow","type":"GridRowAttribute","instance":"GridRowInterface"},{"name":"GridCol","type":"GridColAttribute","instance":"GridColInterface"}]},"styles":{"decorator":"Styles","component":{"name":"Common","type":"T","instance":"CommonInstance"},"property":"stateStyles"},"customComponent":"CustomComponent","propertyDecorators":[],"emitDecorators":[],"libs":[]},"allowJs":false,"allowSyntheticDefaultImports":true,"esModuleInterop":true,"importsNotUsedAsValues":"preserve","noImplicitAny":false,"noUnusedLocals":false,"noUnusedParameters":false,"experimentalDecorators":true,"moduleResolution":"node","resolveJsonModule":true,"skipLibCheck":true,"sourceMap":true,"module":"commonjs","target":"es2017","types":[],"typeRoots":[],"lib":["es2020"],"alwaysStrict":true},"exclude":["node_modules"]}')},61574:e=>{"use strict";e.exports=JSON.parse('{"DOC":{"API_DOC_ATOMICSERVICE_01":"JSDoc label order error, please adjust the order of [atomicservice] labels.","API_DOC_ATOMICSERVICE_02":"The validity verification of the JSDoc tag failed. The [atomicservice] tag is not allowed to be reused, please delete the extra tags.","API_DOC_ATOMICSERVICE_03":"It was detected that there is a following label [atomicservice] in the current file, but the parent nodes without this label.","API_DOC_CONSTANT_01":"JSDoc label order error, please adjust the order of [constant] labels.","API_DOC_CONSTANT_02":"JSDoc label validity verification failed. The [constant] label is not allowed. Please check the label usage method.","API_DOC_CONSTANT_03":"JSDoc tag validity verification failed. Please confirm if the [constant] tag is missing.","API_DOC_CONSTANT_04":"The validity verification of the JSDoc tag failed. The [constant] tag is not allowed to be reused, please delete the extra tags.","API_DOC_CROSSPLATFORM_01":"JSDoc label order error, please adjust the order of [crossplatform] labels.","API_DOC_CROSSPLATFORM_02":"The validity verification of the JSDoc tag failed. The [crossplatform] tag is not allowed to be reused, please delete the extra tags.","API_DOC_CROSSPLATFORM_03":"It was detected that there is an inheritable label [crossplatform] in the current file, but there are child nodes without this label.","API_DOC_DEFAULT_01":"The [default] tag value is incorrect. Please supplement the default value.","API_DOC_DEFAULT_02":"JSDoc label order error, please adjust the order of [default] labels.","API_DOC_DEFAULT_03":"JSDoc label validity verification failed. The [default] label is not allowed. Please check the label usage method.","API_DOC_DEFAULT_04":"The validity verification of the JSDoc tag failed. The [default] tag is not allowed to be reused, please delete the extra tags.","API_DOC_DEPRECATED_01":"The [deprecated] tag value is incorrect. Please check the usage method.","API_DOC_DEPRECATED_02":"JSDoc label order error, please adjust the order of [deprecated] labels.","API_DOC_DEPRECATED_03":"It was detected that there is an inheritable label [deprecated] in the current file, but there are child nodes without this label.","API_DOC_DEPRECATED_04":"The validity verification of the JSDoc tag failed. The [deprecated] tag is not allowed to be reused, please delete the extra tags.","API_DOC_ENUM_01":"The [enum] tag type is incorrect. Please check if the tag type is { string } or { number }.","API_DOC_ENUM_02":"JSDoc label order error, please adjust the order of [enum] labels.","API_DOC_ENUM_03":"JSDoc label validity verification failed. The [enum] label is not allowed. Please check the label usage method.","API_DOC_ENUM_04":"JSDoc tag validity verification failed. Please confirm if the [enum] tag is missing.","API_DOC_ENUM_05":"The validity verification of the JSDoc tag failed. The [enum] tag is not allowed to be reused, please delete the extra tags.","API_DOC_EXAMPLE_01":"JSDoc label order error, please adjust the order of [example] labels.","API_DOC_EXAMPLE_02":"The validity verification of the JSDoc tag failed. The [example] tag is not allowed to be reused, please delete the extra tags.","API_DOC_EXTENDS_01":"The [extends] tag value is incorrect. Please check if the tag value matches the inherited class name.","API_DOC_EXTENDS_02":"JSDoc label order error, please adjust the order of [extends] labels.","API_DOC_EXTENDS_03":"JSDoc label validity verification failed. The [extends] label is not allowed. Please check the label usage method.","API_DOC_EXTENDS_04":"JSDoc tag validity verification failed. Please confirm if the [extends] tag is missing.","API_DOC_EXTENDS_05":"The validity verification of the JSDoc tag failed. The [extends] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FAMODELONLY_01":"JSDoc label order error, please adjust the order of [famodelonly] labels.","API_DOC_FAMODELONLY_02":"The validity verification of the JSDoc tag failed. The [famodelonly] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FAMODELONLY_03":"It was detected that there is an inheritable label [famodelonly] in the current file, but there are child nodes without this label.","API_DOC_FIRES_01":"JSDoc label order error, please adjust the order of [fires] labels.","API_DOC_FIRES_02":"The validity verification of the JSDoc tag failed. The [fires] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FORM_01":"JSDoc label order error, please adjust the order of [form] labels.","API_DOC_FORM_02":"The validity verification of the JSDoc tag failed. The [form] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FORM_03":"It was detected that there is a following label [form] in the current file, but the parent nodes without this label.","API_DOC_IMPLEMENTS_01":"JSDoc label order error, please adjust the order of [implements] labels.","API_DOC_IMPLEMENTS_02":"JSDoc label validity verification failed. The [implements] label is not allowed. Please check the label usage method.","API_DOC_IMPLEMENTS_03":"JSDoc tag validity verification failed. Please confirm if the [implements] tag is missing.","API_DOC_IMPLEMENTS_04":"The validity verification of the JSDoc tag failed. The [implements] tag is not allowed to be reused, please delete the extra tags.","API_DOC_IMPLEMENTS_05":"The [implements] tag value is incorrect. Please check if the tag value matches the inherited class name.","API_DOC_INTERFACE_04":"JSDoc label order error, please adjust the order of [interface] labels.","API_DOC_INTERFACE_05":"The validity verification of the JSDoc tag failed. The [interface] tag is not allowed to be reused, please delete the extra tags.","API_DOC_NAMESPACE_01":"The [namespace] tag value is incorrect. Please check if it matches the namespace name.","API_DOC_NAMESPACE_02":"JSDoc label order error, please adjust the order of [namespace] labels.","API_DOC_NAMESPACE_03":"JSDoc tag validity verification failed. Please confirm if the [namespace] tag is missing.","API_DOC_NAMESPACE_04":"JSDoc label validity verification failed. The [namespace] label is not allowed. Please check the label usage method.","API_DOC_NAMESPACE_05":"The validity verification of the JSDoc tag failed. The [namespace] tag is not allowed to be reused, please delete the extra tags.","API_DOC_PARAM_01":"The type of the [1] [param] tag is incorrect. Please check if it matches the type of the [1] parameter.","API_DOC_PARAM_02":"The value of the [1] [param] tag is incorrect. Please check if it matches the [1] parameter name.","API_DOC_PARAM_03":"JSDoc tag validity verification failed.There are [1] redundant [param]. Please check if the tag should be deleted.","API_DOC_PARAM_04":"JSDoc tag validity verification failed. Please confirm if the [param] tag is missing.","API_DOC_PARAM_05":"JSDoc label validity verification failed. The [param] label is not allowed. Please check the label usage method.","API_DOC_PARAM_06":"JSDoc label order error, please adjust the order of [param] labels.","API_DOC_PERMISSION_01":"The [permission] tag value is incorrect. Please check if the permission field has been configured or update the configuration file.","API_DOC_PERMISSION_02":"JSDoc label order error, please adjust the order of [permission] labels.","API_DOC_PERMISSION_03":"JSDoc label validity verification failed. The [permission] label is not allowed. Please check the label usage method.","API_DOC_PERMISSION_04":"The validity verification of the JSDoc tag failed. The [permission] tag is not allowed to be reused, please delete the extra tags.","API_DOC_PERMISSION_05":"JSDoc tag validity verification failed. Please confirm if the [permission] tag is missing.","API_DOC_READONLY_01":"JSDoc label order error, please adjust the order of [readonly] labels.","API_DOC_READONLY_02":"JSDoc label validity verification failed. The [readonly] label is not allowed. Please check the label usage method.","API_DOC_READONLY_03":"The validity verification of the JSDoc tag failed. The [readonly] tag is not allowed to be reused, please delete the extra tags.","API_DOC_READONLY_04":"JSDoc tag validity verification failed. Please confirm if the [readonly] tag is missing.","API_DOC_RETURNS_01":"The [returns] tag was used incorrectly. The returns tag should not be used when the return type is void.","API_DOC_RETURNS_02":"The [returns] tag type is incorrect. Please check if the tag type is consistent with the return type.","API_DOC_RETURNS_03":"JSDoc label order error, please adjust the order of [returns] labels.","API_DOC_RETURNS_04":"JSDoc tag validity verification failed. Please confirm if the [returns] tag is missing.","API_DOC_RETURNS_05":"The validity verification of the JSDoc tag failed. The [returns] tag is not allowed to be reused, please delete the extra tags.","API_DOC_RETURNS_06":"JSDoc label validity verification failed. The [returns] label is not allowed. Please check the label usage method.","API_DOC_SINCE_01":"The [since] tag value is incorrect. Please check if the tag value is a numerical value.","API_DOC_SINCE_02":"JSDoc label order error, please adjust the order of [since] labels.","API_DOC_SINCE_03":"JSDoc tag validity verification failed. Please confirm if the [since] tag is missing.","API_DOC_SINCE_04":"The validity verification of the JSDoc tag failed. The [since] tag is not allowed to be reused, please delete the extra tags.","API_DOC_SINCE_05":"The [since] value is greater than the latest version number.","API_DOC_SINCE_06":"The [since] value for different jsdoc should not be the same.","API_DOC_SINCE_07":"The [since] value is greater than the latest version number.The [since] value for different jsdoc should not be the same.","API_DOC_SINCE_08":"The [since] tag value is incorrect. Please check if the tag value is a numerical value.The [since] value for different jsdoc should not be the same.","API_DOC_STAGEMODELONLY_01":"It was detected that there is an inheritable label [stagemodelonly] in the current file, but there are child nodes without this label.","API_DOC_STAGEMODELONLY_02":"JSDoc label order error, please adjust the order of [stagemodelonly] labels.","API_DOC_STAGEMODELONLY_03":"The validity verification of the JSDoc tag failed. The [stagemodelonly] tag is not allowed to be reused, please delete the extra tags.","API_DOC_STATIC_01":"JSDoc label order error, please adjust the order of [static] labels.","API_DOC_STATIC_02":"The validity verification of the JSDoc tag failed. The [static] tag is not allowed to be reused, please delete the extra tags.","API_DOC_STRUCT_01":"The [struct] tag value is incorrect. Please check if it matches the struct name.","API_DOC_STRUCT_02":"JSDoc label order error, please adjust the order of [struct] labels.","API_DOC_STRUCT_03":"JSDoc label validity verification failed. The [struct] label is not allowed. Please check the label usage method.","API_DOC_STRUCT_04":"JSDoc tag validity verification failed. Please confirm if the [struct] tag is missing.","API_DOC_STRUCT_05":"The validity verification of the JSDoc tag failed. The [struct] tag is not allowed to be reused, please delete the extra tags.","API_DOC_SYSCAP_01":"The [syscap] tag value is incorrect. Please check if the syscap field is configured.","API_DOC_SYSCAP_02":"JSDoc label order error, please adjust the order of [syscap] labels.","API_DOC_SYSCAP_03":"JSDoc tag validity verification failed. Please confirm if the [syscap] tag is missing.","API_DOC_SYSCAP_04":"The validity verification of the JSDoc tag failed. The [syscap] tag is not allowed to be reused, please delete the extra tags.","API_DOC_SYSTEMAPI_01":"JSDoc label order error, please adjust the order of [systemapi] labels.","API_DOC_SYSTEMAPI_02":"It was detected that there is an inheritable label [systemapi] in the current file, but there are child nodes without this label.","API_DOC_SYSTEMAPI_03":"The validity verification of the JSDoc tag failed. The [systemapi] tag is not allowed to be reused, please delete the extra tags.","API_DOC_TEST_01":"JSDoc label order error, please adjust the order of [test] labels.","API_DOC_TEST_02":"It was detected that there is an inheritable label [test] in the current file, but there are child nodes without this label.","API_DOC_TEST_03":"The validity verification of the JSDoc tag failed. The [test] tag is not allowed to be reused, please delete the extra tags.","API_DOC_THROWS_01":"The type of the [1] [throws] tag is incorrect. Please check if the tag value is a numerical value.","API_DOC_THROWS_02":"The type of the [1] [throws] tag is incorrect. Please fill in [BusinessError].","API_DOC_THROWS_03":"JSDoc label order error, please adjust the order of [throws] labels.","API_DOC_THROWS_04":"JSDoc label validity verification failed. The [throws] label is not allowed. Please check the label usage method.","API_DOC_THROWS_05":"JSDoc tag validity verification failed. Please confirm if the [throws 1] tag is missing.","API_DOC_THROWS_07":"JSDoc label validity verification failed. The [throws 1] label is not allowed. Please check the label usage method.","API_DOC_THROWS_08":"The validity verification of the JSDoc tag failed. The [throws] tag is not allowed to be reused, please delete the extra tags.","API_DOC_THROWS_09":"The generic error code does not contain the current error code.","API_DOC_THROWS_10":"The description of the [1 throws] is incorrect. please fix it according to the specification.","API_DOC_THROWS_11":"The type of the [1] [throws] tag is incorrect. Please fill in [BusinessError].The description of the [1 throws] is incorrect. please fix it according to the specification.","API_DOC_TYPE_01":"The [type] tag type is incorrect. Please check if the type matches the attribute type.","API_DOC_TYPE_02":"JSDoc label order error, please adjust the order of [type] labels.","API_DOC_TYPE_03":"JSDoc label validity verification failed. The [type] label is not allowed. Please check the label usage method.","API_DOC_TYPE_04":"JSDoc tag validity verification failed. Please confirm if the [type] tag is missing.","API_DOC_TYPE_05":"The validity verification of the JSDoc tag failed. The [type] tag is not allowed to be reused, please delete the extra tags.","API_DOC_TYPEDEF_01":"The [typedef] tag value is incorrect. Please check if it matches the interface name or type content.","API_DOC_TYPEDEF_02":"JSDoc label order error, please adjust the order of [typedef] labels.","API_DOC_TYPEDEF_03":"JSDoc label validity verification failed. The [typedef] label is not allowed. Please check the label usage method.","API_DOC_TYPEDEF_04":"JSDoc tag validity verification failed. Please confirm if the [typedef] tag is missing.","API_DOC_TYPEDEF_05":"The validity verification of the JSDoc tag failed. The [typedef] tag is not allowed to be reused, please delete the extra tags.","API_DOC_USEINSTEAD_01":"The [useinstead] tag value is incorrect. Please check the usage method.","API_DOC_USEINSTEAD_02":"JSDoc label order error, please adjust the order of [useinstead] labels.","API_DOC_USEINSTEAD_03":"JSDoc label validity verification failed. The [useinstead] label is not allowed. Please check the label usage method.","API_DOC_USEINSTEAD_04":"The validity verification of the JSDoc tag failed. The [useinstead] tag is not allowed to be reused, please delete the extra tags.","API_DOC_GLOBAL_01":"JSDoc tag validity verification failed. Please confirm if the [file] tag is missing.","API_DOC_GLOBAL_02":"JSDoc tag validity verification failed. Please confirm if the [kit] tag is missing.","API_DOC_JSDOC_01":"Jsdoc needs to be added to the current API.","API_DOC_JSDOC_02":"JSDoc tag validity verification failed. Please confirm if the [since] tag is missing.JSDoc tag validity verification failed. Please confirm if the [syscap] tag is missing.","API_DOC_JSDOC_03":"Jsdoc has chinese.","API_DOC_UNKNOW_DECORATOR_01":"The [XXXX] tag does not exist. Please use a valid JSDoc tag.","API_DOC_JSDOC_04":"The [systemapi] and [atomicservice] cannot exist in the same doc."},"DEFINE":{"API_DEFINE_UNALLOWABLE_01":"Illegal [any] keyword used in the API.","API_DEFINE_UNALLOWABLE_02":"Illegal [this] keyword used in the API.","API_DEFINE_UNALLOWABLE_03":"Illegal [unknown] keyword used in the API.","API_DEFINE_NAME_01":"Prohibited word in [XXXX]:{option}.The word allowed is [XXXX].","API_DEFINE_NAME_02":"Prohibited word in [XXXX]:{ability} in the [XXXX] file.","API_DEFINE_SPELLING_01":"{XXXX}. please confirm whether it needs to be corrected to a common word.","API_DEFINE_EVENT_01":"The event name should be string.","API_DEFINE_EVENT_02":"The event name cannot be Null value.","API_DEFINE_EVENT_03":"The callback parameter of off function should be optional.","API_DEFINE_EVENT_04":"The off functions of one single event should have at least one callback parameter, and the callback parameter should be the last parameter.","API_DEFINE_EVENT_05":"The on and off event subscription methods do not appear in pair.","API_DEFINE_EVENT_06":"The event subscription methods should has at least one parameter.","API_DEFINE_EVENT_07":"Please check if the changed API version number is 10.","API_DEFINE_EVENT_08":"The event name should be named by small hump. (Received [XXXX]).","API_DEFINE_HUMP_01":"This API file should be named by large hump.","API_DEFINE_HUMP_02":"This API file should be named by small hump.","API_DEFINE_HUMP_03":"This name [XXXX] should be named by large hump.","API_DEFINE_HUMP_04":"This name [XXXX] should be named by small hump.","API_DEFINE_HUMP_05":"This name [XXXX] should be named by all uppercase.","API_DEFINE_ANONYMOUS_FUNCTION_01":"Anonymous functions or anonymous object that are not allowed are used in this api."},"CHANEGE":{"API_CHANGE_INCOMPATIBLE_01":"Forbid changes: Cannot change from public API to system API.","API_CHANGE_INCOMPATIBLE_02":"Forbid changes: Cannot reduce or permission or increase and permission.","API_CHANGE_INCOMPATIBLE_03":"Forbid changes: Cannot change permission value,cannot judge the range change.","API_CHANGE_INCOMPATIBLE_04":"Forbid changes: The number of error codes cannot be increased from 1 to multiple error codes.","API_CHANGE_INCOMPATIBLE_05":"Forbid changes: Cannot change the error code value.","API_CHANGE_INCOMPATIBLE_06":"Forbid changes: The card application cannot be changed from supported to not supported.","API_CHANGE_INCOMPATIBLE_07":"Forbid changes: Crossplatform cannot be changed from supported to not supported.","API_CHANGE_INCOMPATIBLE_08":"Forbid changes: API cannot be deleted.","API_CHANGE_INCOMPATIBLE_09":"Forbid changes: Cannot change from FAModelOnly to StageModelOnly.","API_CHANGE_INCOMPATIBLE_10":"Forbid changes: Cannot change from StageModelOnly to FAModelOnly.","API_CHANGE_INCOMPATIBLE_11":"Forbid changes: Cannot change from nothing to StageModelOnly.","API_CHANGE_INCOMPATIBLE_12":"Forbid changes: Cannot change from nothing to FAModelOnly.","API_CHANGE_INCOMPATIBLE_13":"Forbid changes: The function return value type cannot be extended.","API_CHANGE_INCOMPATIBLE_14":"Forbid changes: The function return value type cannot be reduced.","API_CHANGE_INCOMPATIBLE_15":"Forbid changes: Cannot change function return value type.","API_CHANGE_INCOMPATIBLE_16":"Forbid changes: Cannot change function param position.","API_CHANGE_INCOMPATIBLE_17":"Forbid changes: Cannot add function required param.","API_CHANGE_INCOMPATIBLE_18":"Forbid changes: Cannot delete function param.","API_CHANGE_INCOMPATIBLE_19":"Forbid changes: Cannot change form unrequired param to required param.","API_CHANGE_INCOMPATIBLE_20":"Forbid changes: Cannot change function param type.","API_CHANGE_INCOMPATIBLE_21":"Forbid changes: The function param type range is cannot be reduced.","API_CHANGE_INCOMPATIBLE_22":"Forbid changes: Read-only properties cannot be changed from optional to required.","API_CHANGE_INCOMPATIBLE_23":"Forbid changes: Writable properties cannot be changed from required to optional.","API_CHANGE_INCOMPATIBLE_24":"Forbid changes: Writable properties cannot be changed from optional to required.","API_CHANGE_INCOMPATIBLE_25":"Forbid changes: Cannot change property type.","API_CHANGE_INCOMPATIBLE_26":"Forbid changes: Cannot Expand the range of readonly property types.","API_CHANGE_INCOMPATIBLE_27":"Forbid changes: Cannot Expand the range of writable property types.","API_CHANGE_INCOMPATIBLE_28":"Forbid changes: Cannot reduce the range of writable property types.","API_CHANGE_INCOMPATIBLE_29":"Forbid changes: Decorator cannot be deleted.","API_CHANGE_INCOMPATIBLE_30":"Forbid changes: Cannot change constant value.","API_CHANGE_INCOMPATIBLE_31":"Forbid changes: Cannot change custom type value.","API_CHANGE_INCOMPATIBLE_32":"Forbid changes: Cannot expand the range of custom type.","API_CHANGE_INCOMPATIBLE_33":"Forbid changes: Cannot reduce the range of custom type.","API_CHANGE_INCOMPATIBLE_34":"Forbid changes: Cannot change Enumeration assignment.","API_CHANGE_INCOMPATIBLE_35":"Forbid changes: Historical JSDoc cannot be changed.","API_CHANGE_INCOMPATIBLE_36":"Forbid changes: API changes must add a new section of JSDoc.","API_CHANGE_INCOMPATIBLE_37":"Forbid changes: Cannot change from atomicservice to NA.","API_CHANGE_INCOMPATIBLE_38":"Forbid changes: Cannot change from NA to syscap.","API_CHANGE_INCOMPATIBLE_39":"Forbid changes: Cannot change from syscap to NA.","API_CHANGE_INCOMPATIBLE_40":"Forbid changes: Cannot change syscap value.","API_CHANGE_INCOMPATIBLE_41":"Forbid changes: Cannot add new property to interface API."}}')},98768:e=>{"use strict";e.exports=JSON.parse('{"ApiCheckVersion":13,"ApiMaxVersion":13}')},54732:e=>{"use strict";e.exports=JSON.parse('{"dictionariesArr":["a","aa","aaa","aaaa","aaaaa","aab","aac","aachen","aad","aapl","aapt","aar","aardvark","aaren","aarhus","aarika","aaron","ab","aba","aback","abacus","abaft","abagael","abagail","abalone","abandon","abandoned","abandoner","abandonment","abase","abasement","abaser","abash","abashed","abashment","abate","abated","abatement","abater","abattoir","abb","abba","abbe","abbess","abbey","abbi","abbie","abbot","abbott","abbr","abbrev","abbreviate","abbreviated","abbreviates","abbreviating","abbreviation","abby","abbye","abc","abcd","abcde","abcdef","abcdefghijklmnopqrstuvwxyz","abd","abdel","abdicate","abdication","abdomen","abdominal","abduct","abduction","abductor","abdul","abe","abeam","abel","abelard","abelson","aberdeen","abernathy","aberrant","aberration","aberrational","abet","abetted","abetting","abettor","abeu","abey","abeyance","abeyant","abhor","abhorred","abhorrence","abhorrent","abhorrer","abhorring","abi","abidance","abide","abider","abiding","abidjan","abie","abigael","abigail","abigale","abilene","abilities","ability","abject","abjection","abjectness","abjuration","abjuratory","abjure","abjurer","ablate","ablation","ablative","ablaze","able","abler","ables","ablest","abloom","ablution","abm","abnegate","abnegation","abner","abnormal","abnormality","abo","aboard","abode","abolish","abolisher","abolishment","abolition","abolitionism","abolitionist","abominable","abominably","abominate","abomination","aboriginal","aborigine","aborning","abort","aborted","aborting","abortion","abortionist","abortive","abortiveness","abound","about","above","aboveboard","aboveground","abra","abracadabra","abrade","abrader","abraham","abrahan","abram","abramo","abramson","abran","abrasion","abrasive","abrasiveness","abreaction","abreast","abridge","abridged","abridger","abridgment","abroad","abrogate","abrogation","abrogator","abrupt","abruptness","abs","abscess","abscissa","abscission","abscond","absconder","abseil","absence","absent","absentee","absenteeism","absentia","absentminded","absentmindedness","absinthe","abslistview","absolute","absolutely","absoluteness","absolution","absolutism","absolutist","absolve","absolver","absorb","absorbed","absorbency","absorbent","absorber","absorbing","absorption","absorptive","absorptivity","abspath","abstain","abstainer","abstemious","abstemiousness","abstention","abstinence","abstinent","abstract","abstractapplicationcontext","abstractautowirecapablebeanfactory","abstractbeanfactory","abstractchannelhandlercontext","abstracted","abstractedness","abstracter","abstracthttp","abstraction","abstractionism","abstractionist","abstractions","abstractness","abstractor","abstractplainsocketimpl","abstractprotocol","abstruse","abstruseness","absurd","absurdity","absurdness","abuja","abundance","abundant","abuse","abused","abuser","abuses","abusing","abusive","abusiveness","abut","abutment","abutted","abutter","abutting","abuzz","abysmal","abyss","abyssal","abyssinia","abyssinian","ac","acacia","academe","academia","academic","academical","academician","academicianship","academy","acadia","acanthus","acapulco","acc","accdb","accede","accelerate","accelerated","accelerating","acceleration","accelerator","accelerometer","accent","accented","accentual","accentuate","accentuation","accept","acceptability","acceptable","acceptableness","acceptably","acceptance","acceptant","acceptation","accepted","accepter","accepting","acceptor","accepts","acces","access","accesscontroller","accessed","accesses","accessibility","accessible","accessibly","accessing","accession","accesslogvalve","accessor","accessories","accessors","accessory","accesstoken","accidence","accident","accidental","accidentally","accidentalness","acclaim","acclaimer","acclamation","acclimate","acclimation","acclimatisation","acclimatise","acclimatization","acclimatize","acclimatized","acclimatizes","acclivity","accolade","accommodate","accommodated","accommodating","accommodation","accommodative","accommodativeness","accompanied","accompanier","accompaniment","accompanist","accompany","accomplice","accomplish","accomplished","accomplisher","accomplishing","accomplishment","accord","accordance","accordant","accorder","according","accordingly","accordion","accordionist","accost","account","accountability","accountable","accountableness","accountably","accountancy","accountant","accounted","accountid","accounting","accountname","accountnumber","accounts","accounttype","accouter","accouterment","accouterments","accoutrement","accra","accredit","accreditation","accredited","accretion","accrual","accrue","acct","acculturate","acculturation","accumsan","accumulate","accumulated","accumulation","accumulative","accumulativeness","accumulator","accuracy","accurate","accurately","accurateness","accursed","accursedness","accusal","accusation","accusative","accusatory","accuse","accused","accuser","accusing","accustom","accustomed","accustomedness","acd","ace","aced","acerbate","acerbic","acerbically","acerbity","acetaminophen","acetate","acetic","acetone","acetonic","acetylene","acevedo","acf","achaean","ache","achebe","ached","achene","achernar","aches","acheson","achievable","achieve","achieved","achievement","achievements","achiever","achieving","achilles","aching","achive","achoo","achromatic","achy","acid","acidic","acidification","acidify","acidity","acidness","acidoses","acidosis","acidulous","acing","ack","ackerman","acknowledge","acknowledgeable","acknowledged","acknowledgedly","acknowledger","acknowledgment","acl","aclass","aclu","acm","acme","acne","acolyte","aconcagua","aconite","acorn","acosta","acoustic","acoustical","acoustician","acoustics","acquaint","acquaintance","acquaintanceship","acquainted","acquiesce","acquiescence","acquiescent","acquirable","acquire","acquired","acquirement","acquiring","acquisition","acquisitive","acquisitiveness","acquit","acquittal","acquittance","acquitted","acquitter","acquitting","acre","acreage","acrid","acridity","acridness","acrimonious","acrimoniousness","acrimony","acrobat","acrobatic","acrobatically","acrobatics","acronym","acrophobia","acropolis","across","acrostic","acrux","acrylate","acrylic","acs","act","acta","actaeon","acth","acting","actinic","actinide","actinium","actinometer","action","actionbar","actionbaractivity","actionbardrawertoggle","actionbarsherlock","actionbarsize","actionbutton","actioncontroller","actionevent","actionlink","actionlistener","actionname","actionpack","actionperformed","actionresult","actions","actionscript","actionview","activate","activated","activatedroute","activating","activation","activator","active","activeadmin","activecell","activedocument","actively","activemodel","activemq","activeness","activerecord","actives","activesheet","activesupport","activewindow","activeworkbook","activex","activexobject","activism","activist","activities","activity","activitycompat","activityindicator","activitymanager","activitythread","acton","actor","actors","actress","acts","actual","actuality","actualization","actualize","actualizes","actually","actualwidth","actuarial","actuary","actuate","actuation","actuator","acuity","acumen","acupressure","acupuncture","acupuncturist","acute","acuteness","acyclic","acyclically","acyclovir","ad","ada","adage","adagio","adah","adair","adaline","adam","adamant","adamo","adamson","adan","adana","adapt","adaptability","adaptable","adaptation","adapted","adaptedness","adapter","adapters","adapterview","adapting","adaption","adaptive","adaptively","adaptiveness","adaptivity","adaptor","adara","adata","adb","adc","add","adda","addaction","addactionlistener","addall","addams","addattribute","addbutton","addcell","addchild","addclass","addcolumn","addcomponent","adddays","added","addelement","addend","addenda","addendum","adder","addevent","addeventlistener","addflags","addgesturerecognizer","addgroup","addhandler","addheader","addi","addia","addict","addiction","addictive","addie","addin","adding","addison","additem","addition","additional","additionally","additions","additive","additivity","addle","addlistener","addmarker","addobject","addobserver","addon","addons","addproperty","addr","addrange","address","addressability","addressable","addressbook","addressed","addressee","addresser","addresses","addressid","addressing","addressline","addressof","addressograph","addrow","adds","addslashes","addsubview","addtab","addtarget","addtextchangedlistener","addto","addtobackstack","addtype","adduce","adducer","adduct","adduction","adductor","adduser","addvalue","addview","addwidget","addwithvalue","addy","ade","adecoder","adel","adela","adelaida","adelaide","adelbert","adele","adelheid","adelice","adelina","adelind","adeline","adella","adelle","aden","adena","adenauer","adenine","adenoid","adenoidal","adept","adeptness","adequacy","adequate","adequateness","adey","adf","adfs","adham","adhara","adhere","adherence","adherent","adherer","adhesion","adhesive","adhesiveness","adi","adiabatic","adiabatically","adiana","adidas","adieu","adina","adipiscing","adipisicing","adipose","adirondack","adis","adj","adjacency","adjacent","adjectival","adjective","adjoin","adjoint","adjourn","adjournment","adjudge","adjudicate","adjudication","adjudicator","adjudicatory","adjunct","adjuration","adjure","adjust","adjustable","adjustably","adjusted","adjuster","adjusting","adjustive","adjustment","adjustments","adjustor","adjutant","adkins","adlai","adler","adm","adman","admen","admin","adminhtml","administer","administrable","administrate","administration","administrative","administrator","administrators","administratrix","admins","admirable","admirableness","admirably","admiral","admiralty","admiration","admire","admirer","admiring","admissibility","admissible","admissibly","admission","admit","admittance","admitted","admittedly","admitting","admix","admixture","admob","admonish","admonisher","admonishing","admonishment","admonition","admonitory","ado","adobe","adodb","adolescence","adolescent","adolf","adolfo","adolph","adolphe","adolpho","adolphus","adonis","adopt","adopted","adopter","adoption","adoptive","adopts","adora","adorable","adorableness","adorably","adoration","adore","adoree","adorer","adoring","adorn","adorne","adorned","adornment","adp","adr","adrea","adrenal","adrenalin","adrenaline","adrequest","adress","adresse","adria","adrian","adriana","adriane","adrianna","adrianne","adriano","adriatic","adrien","adriena","adrienne","adrift","adroit","adroitness","ads","adsense","adsorb","adsorbate","adsorbent","adsorption","adsorptive","adt","adulate","adulation","adulator","adulatory","adult","adulterant","adulterate","adulterated","adulteration","adulterer","adulteress","adulterous","adultery","adulthood","adultness","adults","adumbrate","adumbration","adumbrative","adv","advance","advanced","advancement","advancer","advances","advantage","advantageous","advantageousness","advantages","advent","adventist","adventitious","adventitiousness","adventive","adventure","adventurer","adventuresome","adventuress","adventurous","adventurousness","adverb","adverbial","adversarial","adversary","adverse","adverseness","adversity","advert","advertise","advertised","advertisement","advertiser","advertisers","advertising","advertorial","advice","advices","adview","advil","advisability","advisable","advisableness","advisably","advise","advised","advisedly","advisee","advisement","adviser","advisor","advisory","advocacy","advocate","advocation","advt","adwords","adz","adze","ae","aegean","aegis","aelfric","aenean","aeneas","aeneid","aeolian","aeolus","aeon","aerate","aeration","aerator","aerial","aerialist","aerie","aeriel","aeriela","aeriell","aeroacoustic","aerobatic","aerobic","aerobically","aerodrome","aerodynamic","aerodynamically","aerodynamics","aeronautic","aeronautical","aeronautics","aerosol","aerosolize","aerospace","aes","aeschylus","aesculapius","aesop","aesthete","aesthetic","aesthetically","aestheticism","aesthetics","aether","aetiology","af","afaik","afar","afb","afc","afd","afdc","aff","affability","affable","affably","affair","affect","affectation","affected","affectedness","affecter","affecting","affection","affectionate","affectioned","affectioning","affective","affects","afferent","affiance","affidavit","affiliate","affiliated","affiliation","affine","affinity","affirm","affirmation","affirmative","affix","afflatus","afflict","affliction","afflictive","affluence","affluent","afford","affordable","afforest","afforestation","afforested","afforesting","afforests","affray","affricate","affrication","affricative","affright","affront","afghan","afghani","afghanistan","aficionado","afield","afire","aflame","afloat","aflutter","afnetworking","afoot","afore","aforementioned","aforesaid","aforethought","afoul","afr","afraid","afresh","africa","african","afrikaans","afrikaner","afro","afrocentric","afrocentrism","aft","after","afterbirth","afterbirths","afterburner","aftercare","aftereffect","afterglow","afterimage","afterlife","afterlives","aftermath","aftermaths","aftermost","afternoon","afters","aftershave","aftershock","aftertaste","aftertextchanged","afterthought","afterward","afterwards","afterworld","afton","ag","agace","again","against","agamemnon","agapae","agape","agar","agassiz","agata","agate","agatha","agathe","agave","age","aged","agedness","ageism","ageist","ageless","agelessness","agencies","agency","agenda","agent","agented","agenting","agentive","agents","ageratum","ages","agg","aggi","aggie","agglomerate","agglomeration","agglutinate","agglutination","agglutinin","aggrandize","aggrandizement","aggravate","aggravating","aggravation","aggregate","aggregated","aggregately","aggregateness","aggregates","aggregation","aggregations","aggregative","aggregator","aggression","aggressive","aggressively","aggressiveness","aggressor","aggrieve","aggrieved","aggy","aghast","agile","agility","agitate","agitated","agitation","agitator","agitprop","aglaia","agleam","aglitter","aglow","agna","agnella","agnes","agnese","agnesse","agneta","agnew","agni","agnola","agnostic","agnosticism","ago","agog","agonize","agonized","agonizedly","agonizing","agony","agoraphobia","agoraphobic","agosto","agra","agrarian","agrarianism","agree","agreeable","agreeableness","agreeably","agreed","agreeing","agreement","agreements","agreer","agretha","agribusiness","agricola","agricultural","agriculturalist","agriculture","agriculturist","agrippa","agrippina","agrochemicals","agronomic","agronomist","agronomy","aground","aguascalientes","ague","aguie","aguilar","aguinaldo","aguirre","aguistin","aguste","agustin","ah","aha","ahab","aharon","ahead","ahem","ahmad","ahmadabad","ahmed","ahoy","ahriman","ai","aid","aida","aidan","aide","aided","aider","aids","aigneis","aigrette","aiken","ail","aila","ailbert","aile","ailee","aileen","ailene","aileron","ailey","aili","ailina","ailment","ailsun","ailyn","aim","aime","aimed","aimee","aimer","aimil","aiming","aimless","aimlessness","aims","ain","aindrea","ainslee","ainsley","ainslie","ainu","air","airbag","airbase","airbnb","airborne","airbrush","airbus","aircraft","aircrew","airdrop","airdropped","airdropping","airedale","aires","airfare","airfield","airflow","airfoil","airframe","airfreight","airhead","airily","airiness","airing","airless","airlessness","airlift","airline","airliner","airlock","airmail","airman","airmass","airmen","airpark","airplane","airplay","airport","airship","airsick","airsickness","airspace","airspeed","airstrip","airtight","airtightness","airtime","airwaves","airway","airworthiness","airworthy","airy","aisha","aisle","aitch","aj","ajar","ajax","ajaxoptions","ajay","ajp","ak","aka","akbar","akihito","akim","akimbo","akin","akita","akka","akkad","akron","aksel","al","ala","alabama","alabaman","alabamian","alabaster","alack","alacrity","aladdin","alain","alaine","alair","alameda","alamo","alamofire","alamogordo","alan","alana","alanah","aland","alane","alanine","alanna","alano","alanson","alar","alard","alaric","alarm","alarming","alarmist","alarmmanager","alarms","alas","alasdair","alaska","alaskan","alastair","alasteir","alaster","alayne","alb","alba","albacore","albania","albanian","albany","albatross","albedo","albee","albeit","alberich","alberik","alberio","albert","alberta","albertan","albertina","albertine","alberto","albie","albigensian","albina","albinism","albino","albion","albireo","albrecht","album","albumen","albumin","albuminous","albums","albuquerque","alcatraz","alcestis","alchemical","alchemist","alchemy","alcibiades","alcmena","alcoa","alcohol","alcoholic","alcoholically","alcoholism","alcott","alcove","alcuin","alcyone","aldan","aldebaran","aldehyde","alden","alder","alderamin","alderman","aldermen","alderwoman","alderwomen","aldin","aldis","aldo","aldon","aldous","aldric","aldrich","aldridge","aldrin","aldus","aldwin","ale","aleatory","alec","alecia","aleck","aleda","alee","aleece","aleen","alehouse","aleichem","alejandra","alejandrina","alejandro","alejoa","aleksandr","alembert","alembic","alena","alene","aleph","aleppo","aler","alert","alertcontroller","alertdialog","alerted","alertness","alerts","alertview","alessandra","alessandro","aleta","alethea","aleut","aleutian","alewife","alewives","alex","alexa","alexander","alexandr","alexandra","alexandre","alexandria","alexandrian","alexandrina","alexandro","alexei","alexi","alexia","alexina","alexine","alexio","alf","alfa","alfalfa","alfi","alfie","alfons","alfonse","alfonso","alfonzo","alford","alfred","alfreda","alfredo","alfresco","alfy","alg","alga","algae","algaecide","algal","algebra","algebraic","algebraical","algebraist","algenib","alger","algeria","algerian","algernon","algieba","algiers","alginate","algo","algol","algonquian","algonquin","algorithm","algorithmic","algorithmically","algorithms","alhambra","alhena","ali","alia","alias","aliased","aliases","aliasing","alibi","alic","alica","alice","alicea","alicia","alick","alida","alidia","alie","alien","alienable","alienate","alienation","alienist","alighieri","alight","align","aligned","aligner","alignleft","alignment","alignparentbottom","alignparentleft","alignparentright","alignparentstart","alignparenttop","alika","alike","alikee","alikeness","aliment","alimentary","alimony","alina","aline","alinement","alioth","aliqua","aliquam","aliquet","aliquip","aliquot","alisa","alisander","alisha","alison","alissa","alist","alistair","alister","alisun","alive","aliveness","alix","aliyah","aliyahs","aliza","alkaid","alkali","alkalies","alkaline","alkalinity","alkalize","alkaloid","alkyd","alkyl","all","alla","allah","allahabad","allan","allard","allay","allayne","alldata","alleen","allegation","allege","alleged","allegheny","allegiance","allegiant","allegoric","allegorical","allegoricalness","allegorist","allegory","allegra","allegretto","allegri","allegro","allele","alleluia","allemande","allen","allendale","allende","allene","allentown","allergen","allergenic","allergic","allergically","allergist","allergy","alleviate","alleviation","alleviator","alley","alleyn","alleyway","allhallows","alli","alliance","allianora","allie","allier","allies","alligator","allin","allina","allison","allissa","allister","allistir","alliterate","alliteration","alliterative","allix","alloc","allocable","allocatable","allocate","allocated","allocates","allocating","allocation","allocations","allocative","allocator","allophone","allophonic","allot","allotment","allotments","allotrope","allotropic","allots","allotted","allotter","allotting","allover","allow","allowable","allowableness","allowably","allowance","allowbackup","allowed","allowfullscreen","allowget","allowing","allowoverride","allows","alloy","alloyed","allspice","allstate","allsun","allude","allure","allurement","alluring","allusion","allusive","allusiveness","alluvial","alluvions","alluvium","allx","ally","allyce","allyn","allys","allyson","alma","almach","almaden","almagest","almanac","almaty","almeda","almeria","almeta","almightiness","almighty","almira","almire","almond","almoner","almost","alms","almshouse","almsman","alnico","alnilam","alnitak","aloe","aloft","aloha","aloin","aloise","aloisia","alon","alone","aloneness","along","alongshore","alongside","alonso","alonzo","aloof","aloofness","alot","aloud","aloysia","aloysius","alp","alpaca","alpert","alpha","alphabet","alphabetic","alphabetical","alphabetically","alphabetization","alphabetize","alphabetizer","alphabets","alphanumeric","alphanumerical","alphard","alphecca","alpheratz","alphonse","alphonso","alpine","alps","already","alric","alright","alsace","alsatian","also","alsop","alston","alt","alta","altai","altaic","altair","altar","altarpiece","alter","alterable","alteration","altercate","altercation","altered","altering","alternate","alternately","alternation","alternative","alternatively","alternativeness","alternatives","alternator","althea","although","altimeter","altiplano","altitude","alto","altogether","alton","altos","altruism","altruist","altruistic","altruistically","alu","aludra","aluin","aluino","alum","alumina","aluminum","alumna","alumnae","alumni","alumnus","alundum","alva","alvan","alvarado","alvarez","alvaro","alveolar","alveoli","alveolus","alvera","alverta","alvie","alvin","alvina","alvinia","alvira","alvis","alvy","alway","always","alwin","alwyn","alyce","alyda","alyosha","alys","alysa","alyse","alysia","alyson","alyss","alyssa","alzheimer","am","ama","amabel","amabelle","amadeus","amado","amain","amalea","amalee","amaleta","amalgam","amalgamate","amalgamation","amalia","amalie","amalita","amalle","amanda","amandi","amandie","amandy","amanuenses","amanuensis","amara","amaranth","amaranths","amaretto","amargo","amarillo","amaryllis","amass","amasser","amata","amateur","amateurish","amateurishness","amateurism","amati","amatory","amaze","amazed","amazement","amazing","amazon","amazonaws","amazonian","amazons","ambassador","ambassadorial","ambassadorship","ambassadress","amber","ambergris","amberly","ambiance","ambidexterity","ambidextrous","ambience","ambient","ambiguity","ambiguous","ambiguously","ambiguousness","ambit","ambition","ambitious","ambitiousness","ambivalence","ambivalent","amble","ambler","ambros","ambrose","ambrosi","ambrosia","ambrosial","ambrosio","ambrosius","ambulance","ambulant","ambulate","ambulation","ambulatory","ambur","ambuscade","ambuscader","ambush","ambusher","amby","amcharts","amd","amdahl","ame","ameba","amelia","amelie","amelina","ameline","ameliorate","amelioration","amelita","amen","amenability","amenably","amend","amended","amender","amendment","amends","amenhotep","amenity","amenorrhea","amer","amerada","amerasian","amerce","amercement","america","american","americana","americanism","americanization","americanize","americanized","americans","americium","amerigo","amerind","amerindian","amery","ameslan","amet","amethyst","amethystine","amharic","amherst","ami","amiability","amiable","amiableness","amiably","amicability","amicable","amicableness","amicably","amid","amide","amidships","amidst","amie","amiga","amigo","amii","amil","amines","amino","aminobenzoic","amir","amish","amiss","amitie","amity","ammamaria","amman","ammerman","ammeter","ammo","ammonia","ammoniac","ammonium","ammunition","amnesia","amnesiac","amnesic","amnesty","amniocenteses","amniocentesis","amnion","amniotic","amoco","amoeba","amoebic","amoeboid","amok","among","amongst","amontillado","amoral","amorality","amorous","amorousness","amorphous","amorphousness","amortization","amortize","amortized","amory","amos","amount","amounts","amour","amp","amparo","amperage","ampere","ampersand","ampex","amphetamine","amphibian","amphibious","amphibiousness","amphibology","amphitheater","amphora","amphorae","ample","ampleness","amplification","amplifier","amplify","amplitude","ampoule","ampule","amputate","amputation","amputee","amqp","amritsar","ams","amsterdam","amt","amtrak","amuck","amulet","amundsen","amur","amuse","amused","amusement","amuser","amusing","amusingness","amway","amy","amye","amyl","amylase","amz","amzn","an","ana","anabal","anabaptist","anabel","anabella","anabelle","anabolic","anabolism","anachronism","anachronistic","anachronistically","anacin","anaconda","anacreon","anaerobe","anaerobic","anaerobically","anaglyph","anagram","anagrammatic","anagrammatically","anagrammed","anagramming","anaheim","anal","analects","analgesia","analgesic","analiese","analise","anallese","anallise","analog","analogical","analogize","analogous","analogousness","analogue","analogy","analysand","analyse","analyses","analysis","analyst","analytic","analytical","analyticity","analytics","analyzable","analyze","analyzed","analyzer","analyzing","anamorphic","ananias","anapaest","anapest","anapestic","anaphora","anaphoric","anaphorically","anaplasmosis","anarchic","anarchical","anarchism","anarchist","anarchistic","anarchy","anastasia","anastasie","anastassia","anastigmatic","anastomoses","anastomosis","anastomotic","anathema","anathematize","anatol","anatola","anatole","anatolia","anatolian","anatollo","anatomic","anatomical","anatomist","anatomize","anatomy","anaxagoras","ancell","ancestor","ancestors","ancestortype","ancestral","ancestress","ancestry","anchor","anchorage","anchored","anchorite","anchoritism","anchorman","anchormen","anchorpane","anchorpeople","anchorperson","anchors","anchorwoman","anchorwomen","anchovy","ancient","ancientness","ancillary","and","andalso","andalusia","andalusian","andaman","andante","andean","andee","andeee","anderea","anders","andersen","anderson","andes","andi","andie","andiron","andonis","andorra","andover","andra","andre","andrea","andreana","andree","andrei","andrej","andrew","andrey","andria","andriana","andriette","andris","androgen","androgenic","androgynous","androgyny","andromache","andromeda","andropov","andros","andrus","andy","anecdotal","anecdote","anechoic","anemia","anemic","anemically","anemometer","anemometry","anemone","anent","aneroid","anestassia","anesthesia","anesthesiologist","anesthesiology","anesthetic","anesthetically","anesthetist","anesthetization","anesthetize","anesthetizer","anet","anett","anetta","anette","aneurysm","anew","ang","angara","ange","angel","angela","angele","angeleno","angeles","angelfish","angeli","angelia","angelic","angelica","angelical","angelico","angelika","angelina","angeline","angelique","angelita","angelle","angelo","angelou","anger","angevin","angie","angil","angina","angiography","angioplasty","angiosperm","angkor","angle","angler","angles","angleworm","anglia","anglican","anglicanism","anglicism","anglicization","anglicize","angling","anglo","anglophile","anglophilia","anglophobe","anglophobia","angola","angolan","angora","angrily","angriness","angry","angst","angstrom","anguilla","anguish","angular","angularfire","angularity","angularjs","angus","angy","anheuser","anhydride","anhydrite","anhydrous","ania","aniakchak","anibal","anica","aniline","anim","animadversion","animadvert","animal","animalcule","animals","animate","animated","animatedly","animately","animateness","animates","animatewithduration","animating","animation","animations","animator","animism","animist","animistic","animized","animosity","animus","anion","anionic","anise","aniseed","aniseikonic","anisette","anisotropic","anisotropy","anissa","anita","anitra","anjanette","anjela","ankara","ankh","ankhs","ankle","anklebone","anklet","ann","anna","annabal","annabel","annabela","annabell","annabella","annabelle","annadiana","annadiane","annal","annalee","annaliese","annalise","annalist","annamaria","annamarie","annapolis","annapurna","anne","anneal","annealer","annecorinne","annelid","anneliese","annelise","annemarie","annetta","annette","annex","annexation","annexe","anni","annice","annie","annihilate","annihilation","annihilator","annissa","anniversary","annmaria","annmarie","annnora","annora","annotate","annotated","annotation","annotations","annotator","announce","announced","announcement","announcements","announcer","annoy","annoyance","annoyed","annoyer","annoying","annual","annualized","annuitant","annuity","annul","annular","annuli","annulled","annulling","annulment","annulus","annum","annunciate","annunciation","annunciator","anny","anode","anodic","anodize","anodyne","anoint","anointer","anointment","anomalous","anomalousness","anomaly","anomic","anomie","anon","anonfun","anonymity","anonymous","anonymousness","anopheles","anorak","anorectic","anorexia","anorexic","another","anouilh","ans","ansel","ansell","anselm","anselma","anselmo","anshan","ansi","ansible","ansley","anson","anstice","answer","answerable","answered","answerer","answering","answers","ant","antacid","antaeus","antagonism","antagonist","antagonistic","antagonistically","antagonize","antagonized","antagonizing","antananarivo","antarctic","antarctica","antares","ante","anteater","antebellum","antecedence","antecedent","antechamber","antedate","antediluvian","anteing","antelope","antenatal","antenna","antennae","anterior","anteroom","anthe","anthea","anthem","anther","anthia","anthiathia","anthill","anthologist","anthologize","anthology","anthony","anthraces","anthracite","anthrax","anthropic","anthropocentric","anthropogenic","anthropoid","anthropological","anthropologist","anthropology","anthropometric","anthropometry","anthropomorphic","anthropomorphically","anthropomorphism","anthropomorphizing","anthropomorphous","anti","antiabortion","antiabortionist","antiaircraft","antibacterial","antibiotic","antibody","antic","anticancer","antichrist","anticipate","anticipated","anticipation","anticipative","anticipatory","anticked","anticking","anticlerical","anticlimactic","anticlimactically","anticlimax","anticline","anticlockwise","anticoagulant","anticoagulation","anticommunism","anticommunist","anticompetitive","anticyclone","anticyclonic","antidemocratic","antidepressant","antidisestablishmentarianism","antidote","antietam","antifascist","antiformant","antifreeze","antifundamentalist","antigen","antigenic","antigenicity","antigone","antigua","antihero","antiheroes","antihistamine","antihistorical","antiknock","antilabor","antillean","antilles","antilogarithm","antilogs","antimacassar","antimalarial","antimatter","antimicrobial","antimissile","antimony","antin","anting","antinomian","antinomy","antinuclear","antioch","antioxidant","antiparticle","antipas","antipasti","antipasto","antipathetic","antipathy","antipersonnel","antiperspirant","antiphon","antiphonal","antipodal","antipode","antipodean","antipodes","antipollution","antipoverty","antiquarian","antiquarianism","antiquary","antiquate","antiquation","antique","antiquity","antiredeposition","antiresonance","antiresonator","antisemitic","antisemitism","antisepses","antisepsis","antiseptic","antiseptically","antiserum","antislavery","antisocial","antispasmodic","antisubmarine","antisymmetric","antisymmetry","antitank","antitheses","antithesis","antithetic","antithetical","antithyroid","antitoxin","antitrust","antivenin","antiviral","antivivisectionist","antiwar","antler","antlr","antmatchers","antofagasta","antoine","antoinette","anton","antone","antonella","antonetta","antoni","antonia","antonie","antonietta","antonin","antonina","antonino","antoninus","antonio","antonius","antonovics","antony","antonym","antonymous","antral","antsy","antwan","antwerp","anubis","anus","anvil","anxiety","anxious","anxiousness","any","anya","anybody","anyhow","anymore","anyobject","anyone","anyplace","anything","anytime","anyway","anyways","anywhere","anywise","ao","aol","aop","aorta","aortic","aot","ap","apace","apache","apalachicola","apart","apartheid","apartment","apartness","apathetic","apathetically","apathy","apatite","apb","apc","ape","aped","apelike","apennines","aper","aperiodic","aperiodically","aperiodicity","aperitif","aperture","apex","aphasia","aphasic","aphelia","aphelion","aphid","aphonic","aphorism","aphoristic","aphoristically","aphrodisiac","aphrodite","api","apia","apiarist","apiary","apical","apices","apiclient","apicontroller","apidocs","apiece","apikey","apis","apiservice","apish","apishness","apiurl","apiversion","apk","apl","aplenty","aplomb","apns","apo","apocalypse","apocalyptic","apocrypha","apocryphal","apocryphalness","apogee","apolar","apolitical","apollinaire","apollo","apollonian","apologetic","apologetically","apologetics","apologia","apologies","apologist","apologize","apologizer","apologizes","apologizing","apology","apoplectic","apoplexy","apos","apostasy","apostate","apostatize","apostle","apostleship","apostolic","apostrophe","apostrophized","apothecary","apothegm","apotheoses","apotheosis","apotheosized","apotheosizes","apotheosizing","app","appalachia","appalachian","appall","appalling","appaloosa","appanage","apparatus","apparel","apparency","apparent","apparently","apparentness","apparition","appbar","appbarlayout","appbundle","appcelerator","appclassloader","appcompat","appcompatactivity","appcomponent","appconfig","appcontext","appcontroller","appdata","appdelegate","appdomain","appeal","appealer","appealing","appear","appearance","appeared","appearer","appearing","appears","appease","appeased","appeasement","appeaser","appellant","appellate","appellation","appellative","append","appendage","appendchild","appenddata","appendectomy","appended","appender","appendices","appendicitis","appending","appendix","appendline","appends","appendtext","appendto","appengine","appertain","appetite","appetizer","appetizing","appia","appian","appid","appium","appkit","applaud","applauder","applause","apple","applecart","applejack","apples","applesauce","applescript","appleseed","applet","appleton","applewebkit","appliance","applicabilities","applicability","applicable","applicably","applicant","applicants","applicate","application","applicationcontext","applicationcontroller","applicationdbcontext","applicationdispatcher","applicationfilterchain","applicationid","applicationname","applicationrecord","applications","applicationuser","applicative","applicator","applied","applier","applies","appliqu","appliqud","apply","applybindings","applying","appmodule","appname","appoint","appointee","appointer","appointive","appointment","appointments","appolonia","appomattox","apportion","apportionment","appose","apposite","appositeness","apposition","appositive","appraisal","appraise","appraised","appraisees","appraiser","appraises","appraising","appreciable","appreciably","appreciate","appreciated","appreciation","appreciative","appreciativeness","appreciator","appreciatory","apprehend","apprehender","apprehensible","apprehension","apprehensive","apprehensiveness","apprentice","apprenticeship","apprise","apprizer","apprizingly","apprizings","approach","approachability","approachable","approacher","approaches","approaching","approbate","approbation","appropriable","appropriate","appropriated","appropriately","appropriateness","appropriation","appropriator","approval","approve","approved","approver","approving","approx","approximate","approximately","approximation","approximative","apps","appserver","appsettings","appspot","appstore","apptheme","appurtenance","appurtenant","appwidgetmanager","apr","apricot","april","aprilette","apron","apropos","aps","apse","apsis","apt","aptana","apter","aptest","aptitude","aptness","apuleius","aq","aqua","aquaculture","aqualung","aquamarine","aquanaut","aquaplane","aquarium","aquarius","aquatic","aquatically","aquavit","aqueduct","aqueous","aquiculture","aquifer","aquila","aquiline","aquinas","aquino","aquitaine","ar","ara","arab","arabel","arabela","arabele","arabella","arabelle","arabesque","arabia","arabian","arabic","arability","arabist","arable","araby","araceli","arachnid","arachnoid","arachnophobia","arafat","araguaya","aral","araldo","aramaic","aramco","arange","arapaho","arapahoe","arapahoes","ararat","araucanian","arawak","arawakan","arb","arbiter","arbitrage","arbitrager","arbitrageur","arbitrament","arbitrarily","arbitrariness","arbitrary","arbitrate","arbitration","arbitrator","arbor","arboreal","arbores","arboretum","arborvitae","arbutus","arc","arcade","arcadia","arcadian","arcana","arcane","arcgis","arch","archaeological","archaeologist","archaic","archaically","archaimbaud","archaism","archaist","archaize","archaizer","archambault","archangel","archbishop","archbishopric","archdeacon","archdiocesan","archdiocese","archduchess","archduke","archean","archenemy","archeologist","archeology","archer","archery","archetypal","archetype","archfiend","archfool","archibald","archibaldo","archibold","archie","archiepiscopal","archimedes","arching","archipelago","architect","architectonic","architectonics","architectural","architecture","architectures","architrave","archival","archive","archived","archives","archivist","archness","archway","archy","arclike","arco","arcsine","arctangent","arctic","arcturus","arcu","arda","ardabil","ardath","ardeen","ardelia","ardelis","ardella","ardelle","arden","ardency","ardene","ardenia","ardent","ardine","ardis","ardisj","ardith","ardor","ardra","arduino","arduous","arduousness","ardyce","ardys","ardyth","are","area","areal","areas","areawide","areequal","arel","aren","arena","arenaceous","arequipa","ares","aretha","arg","argb","argc","argent","argentina","argentine","argentinean","argentinian","arginine","argmax","argo","argon","argonaut","argonne","argosy","argot","argparse","args","arguable","arguably","argue","arguer","arguing","argument","argumentation","argumentative","argumentativeness","argumentexception","argumentnullexception","arguments","argus","argv","argyle","ari","aria","ariadne","arial","ariana","arianism","arianist","arid","aridatha","aridity","aridness","arie","ariel","ariela","ariella","arielle","aries","aright","arin","ario","ariosto","arise","arisen","arises","aristarchus","aristides","aristocracy","aristocrat","aristocratic","aristocratically","aristophanes","aristotelean","aristotelian","aristotle","arithmetic","arithmetical","arithmetician","arithmetize","arius","ariz","arizona","arizonan","arizonian","arjuna","ark","ark","arkansan","arkansas","arkhangelsk","arkwright","arlan","arlana","arlee","arleen","arlen","arlena","arlene","arleta","arlette","arley","arleyne","arlie","arliene","arlin","arlina","arlinda","arline","arlington","arluene","arly","arlyn","arlyne","arm","armada","armadillo","armageddon","armagnac","armament","arman","armand","armando","armata","armature","armband","armchair","armco","armeabi","armed","armenia","armenian","armer","armful","armhole","armin","arming","arminius","armistice","armless","armlet","armload","armonk","armor","armored","armorer","armorial","armory","armour","armpit","armrest","arms","armstrong","armv","army","arn","arnaldo","arne","arneb","arney","arnhem","arni","arnie","arno","arnold","arnoldo","arnuad","arnulfo","arny","aroma","aromatherapist","aromatherapy","aromatic","aromatically","aromaticity","aromaticness","aron","arose","around","arousal","arouse","aroused","arp","arpa","arpanet","arpeggio","arquillian","arr","arrack","arragon","arraign","arraignment","arrange","arrangeable","arranged","arrangement","arranger","arranges","arranging","arrant","arras","array","arrayadapter","arraybuffer","arraycollection","arraycopy","arrayer","arrayindexoutofboundsexception","arraylist","arrays","arraysize","arraywithobjects","arrear","arrest","arrestee","arrester","arresting","arrestor","arrhenius","arrhythmia","arrhythmic","arrhythmical","arri","arrival","arrive","arrived","arriver","arrives","arrogance","arrogant","arrogate","arrogation","arron","arrow","arrowhead","arrowroot","arrows","arroyo","arsenal","arsenate","arsenic","arsenide","arsine","arson","arsonist","art","artair","artaxerxes","arte","artefact","artemas","artemis","artemus","arterial","arteriolar","arteriole","arterioscleroses","arteriosclerosis","artery","artesian","artful","artfulness","arther","arthritic","arthritides","arthritis","arthrogram","arthropod","arthroscope","arthroscopic","arthur","arthurian","artichoke","article","articleid","articles","articulable","articular","articulate","articulated","articulately","articulateness","articulates","articulation","articulator","articulatory","artie","artifact","artifactid","artifactory","artifacts","artifice","artificer","artificial","artificiality","artificialness","artillerist","artillery","artilleryman","artillerymen","artiness","artisan","artist","artiste","artistic","artistically","artistry","artists","artless","artlessness","arts","artsy","artur","arturo","artus","artwork","arty","aruba","arum","arv","arvie","arvin","arvy","ary","aryan","aryn","as","asa","asama","asap","asarray","asax","asbestos","asc","ascella","ascend","ascendancy","ascendant","ascender","ascending","ascension","ascent","ascertain","ascertainment","ascetic","ascetically","asceticism","ascii","ascot","ascribe","ascription","ascriptive","ascx","asd","asdf","ase","asenumerable","aseptic","aseptically","asexual","asexuality","asf","asgard","ash","ashame","ashamed","ashanti","ashbey","ashby","ashcan","ashely","asher","asheville","ashia","ashien","ashil","ashkenazim","ashkhabad","ashla","ashlan","ashland","ashlar","ashlee","ashleigh","ashlen","ashley","ashli","ashlie","ashlin","ashly","ashman","ashmolean","ashore","ashram","ashton","ashtray","ashurbanipal","ashx","ashy","asia","asian","asiatic","aside","asilomar","asimov","asin","asinine","asininity","asio","ask","askance","asked","asker","askew","asking","asks","asl","aslant","asleep","aslist","asm","asmara","asmx","asn","asocial","asoka","asp","asparagus","aspartame","aspca","aspect","aspectj","aspects","aspell","aspen","asper","asperity","aspersion","asphalt","asphodel","asphyxia","asphyxiate","asphyxiation","aspic","aspidiske","aspidistra","aspirant","aspirate","aspiration","aspirational","aspirator","aspire","aspirer","aspirin","asplenium","aspnet","aspnetcore","aspx","asquith","ass","assad","assail","assailable","assailant","assam","assamese","assassin","assassinate","assassination","assault","assaulter","assaultive","assay","assayer","assemblage","assemble","assembled","assembler","assemblies","assembly","assemblyidentity","assemblyman","assemblymen","assemblyname","assemblywoman","assemblywomen","assent","assert","assertequals","asserter","assertion","assertional","assertionerror","assertions","assertive","assertiveness","asserts","assertthat","asserttrue","assess","assessed","assesses","assessment","assessor","asset","assetmanager","assets","asseverate","asseveration","asshole","assiduity","assiduous","assiduousness","assign","assignable","assignation","assigned","assignee","assigner","assigning","assignment","assignments","assignor","assigns","assimilate","assimilation","assimilationist","assisi","assist","assistance","assistant","assistantship","assisted","assister","assize","assn","assoc","associable","associate","associated","associateship","association","associational","associations","associative","associativity","associator","assonance","assonant","assort","assorter","assortment","asst","assuage","assuaged","assumability","assume","assumed","assumer","assumes","assuming","assumption","assumptions","assumptive","assurance","assure","assured","assuredness","assurer","assuring","assyria","assyrian","assyriology","ast","astaire","astarte","astatine","astc","aster","asteria","asterisk","asterisked","astern","asteroid","asteroidal","asthma","asthmatic","astigmatic","astigmatism","astir","aston","astonish","astonishing","astonishment","astor","astoria","astound","astounding","astra","astraddle","astrakhan","astral","astray","astrid","astride","astring","astringency","astringent","astrix","astrolabe","astrologer","astrological","astrologist","astrology","astronaut","astronautic","astronautical","astronautics","astronomer","astronomic","astronomical","astronomy","astrophysical","astrophysicist","astrophysics","astroturf","asturias","astute","astuteness","astype","asuncin","asunder","asus","aswan","aswell","asylum","asymmetric","asymmetrical","asymmetry","asymptomatic","asymptomatically","asymptote","asymptotic","asymptotically","async","asynccallback","asynchronism","asynchronous","asynchronously","asynchrony","asyncio","asyncresult","asynctask","at","atacama","atahualpa","atalanta","atan","atari","atatrk","atavism","atavist","atavistic","ataxia","ataxic","ate","atelier","atemporal","athabasca","athabascan","athabaska","athabaskan","atheism","atheist","atheistic","athena","athene","athenian","athens","atheroscleroses","atherosclerosis","athirst","athlete","athletic","athletically","athleticism","athletics","athwart","atilt","atindex","atkins","atkinson","atl","atlanta","atlante","atlantes","atlantic","atlantis","atlas","atlassian","atleast","atm","atman","atmosphere","atmospheric","atmospherically","atoi","atoll","atom","atomic","atomically","atomicity","atomics","atomistic","atomization","atomize","atomizer","atoms","atonal","atonality","atone","atonement","atop","atp","atreus","atria","atrial","atrium","atrocious","atrociousness","atrocity","atrophic","atrophy","atropine","atropos","ats","att","attach","attached","attacher","attachevent","attaching","attachment","attachments","attack","attacker","attacks","attain","attainabilities","attainability","attainable","attainableness","attainably","attainder","attained","attainer","attainment","attar","attempt","attempted","attempter","attempting","attempts","attend","attendance","attendant","attended","attendee","attendees","attender","attention","attentional","attentionality","attentive","attentiveness","attenuate","attenuated","attenuation","attenuator","attest","attestation","attested","attester","attic","attica","attila","attire","attitude","attitudinal","attitudinize","attlee","attn","attorney","attr","attract","attractant","attraction","attractive","attractiveness","attractivenesses","attractor","attrib","attributable","attribute","attributed","attributeerror","attributename","attributer","attributes","attributeset","attributevalue","attribution","attributional","attributive","attrition","attrs","atts","attucks","attune","atty","atv","atwitter","atwood","atypical","au","aube","auberge","aubergine","auberon","aubert","auberta","aubine","aubree","aubrette","aubrey","aubrie","aubry","auburn","auc","auckland","auction","auctioneer","auctor","aud","audacious","audaciousness","audacity","auden","audi","audibility","audible","audibles","audibly","audie","audience","audio","audiobook","audioformat","audiogram","audiological","audiologist","audiology","audiomanager","audiometer","audiometric","audiometry","audiophile","audioplayer","audiotape","audiovisual","audit","audited","audition","auditor","auditorium","auditory","audra","audre","audrey","audrie","audry","audrye","audubon","audy","auerbach","aug","augean","auger","aught","augie","augment","augmentation","augmentative","augmenter","augue","augur","augury","august","augusta","augustan","auguste","augustin","augustina","augustine","augustinian","augustness","augusto","augustus","augy","auk","aundrea","aunt","auntie","aunty","aura","aural","aurea","aurel","aurelea","aurelia","aurelie","aurelio","aurelius","aureole","aureomycin","auria","auric","auricle","auricular","aurie","auriga","aurilia","aurlie","auroora","aurora","auroral","aurore","aurthur","auschwitz","auscultate","auscultation","auspice","auspicious","auspiciousness","auspiciousnesses","aussie","austen","austere","austereness","austerity","austin","austina","austine","austral","australasia","australasian","australes","australia","australian","australis","australites","australoid","australopithecus","austria","austrian","austronesian","aut","aute","auth","authentic","authentically","authenticate","authenticated","authenticating","authentication","authenticationmanager","authenticator","authenticatorbase","authenticity","author","authoress","authorial","authoritarian","authoritarianism","authoritative","authoritativeness","authorities","authority","authorization","authorize","authorized","authorizer","authorizes","authors","authorship","authservice","authtoken","autism","autistic","auto","autobahn","autobiographer","autobiographic","autobiographical","autobiography","autoclave","autocollimator","autocommit","autocomplete","autocompletetextview","autoconfigure","autocorrelate","autocorrelation","autocracy","autocrat","autocratic","autocratically","autodesk","autodial","autodidact","autoeventwireup","autofac","autofill","autofilter","autofluorescence","autofocus","autogeneratecolumns","autograph","autographs","autoignition","autoimmune","autoimmunity","autoincrement","autolayout","autoload","autoloader","automagically","automaker","automapper","automata","automate","automated","automatic","automatically","automating","automation","automatism","automatize","automaton","automobile","automorphism","automotive","autonavigator","autonomic","autonomous","autonomy","autopilot","autoplay","autopostback","autoprefixer","autopsy","autoregressive","autorelease","autorepeat","autosize","autostart","autosuggestibility","autotransformer","autowire","autowired","autowiredannotationbeanpostprocessor","autoworker","autumn","autumnal","aux","auxiliary","auxin","av","ava","avail","availability","available","availableness","availably","availing","avalanche","avalon","avant","avarice","avaricious","avariciousness","avast","avatar","avaudioplayer","avaunt","avc","avd","avdp","ave","aveline","avenge","avenged","avenger","aventine","aventino","avenue","average","averages","averell","averil","averill","avernus","averred","averrer","averring","averroes","avers","averse","averseness","aversion","avert","avery","averyl","aves","avesta","avfoundation","avg","avi","avian","aviary","aviate","aviation","aviator","aviatrices","aviatrix","avicenna","avictor","avid","avidity","avie","avigdor","avignon","avila","avionic","avionics","avior","avis","avitaminoses","avitaminosis","aviv","aviva","avivah","avocado","avocation","avocational","avogadro","avoid","avoidable","avoidably","avoidance","avoided","avoider","avoiding","avoids","avoirdupois","avon","avouch","avow","avowal","avowed","avower","avplayer","avr","avram","avril","avrit","avro","avrom","avuncular","avx","aw","awacs","await","awaiting","awake","awakefromnib","awaken","awakened","awakener","awakening","award","awarder","aware","awareness","awash","away","awe","aweigh","awesome","awesomeness","awestruck","awful","awfuller","awfullest","awfulness","awhile","awk","awkward","awkwardness","awl","awn","awning","awoke","awoken","awol","awry","aws","awt","ax","axd","axe","axehead","axel","axeman","axes","axial","axillary","axiological","axiology","axiom","axiomatic","axiomatically","axiomatization","axiomatize","axion","axios","axis","axle","axletree","axolotl","axon","ay","ayah","ayahs","ayala","ayatollah","ayatollahs","aye","ayers","aylmar","aylmer","aymara","aymer","ayn","az","azalea","azania","azazel","azerbaijan","azimuth","azimuthal","azimuths","azores","azov","azt","aztec","aztecan","azure","azurewebsites","b","ba","baa","baal","bab","babar","babara","babb","babbage","babbette","babbie","babbitt","babble","babbler","babcock","babe","babel","babette","babita","babka","baboon","babushka","baby","babyhood","babyish","babylon","babylonia","babylonian","babysat","babysit","babysitter","babysitting","bac","bacall","bacardi","baccalaureate","baccarat","bacchanal","bacchanalia","bacchanalian","bacchic","bacchus","bach","bachelor","bachelorhood","bacillary","bacilli","bacillus","back","backache","backarrow","backbench","backbencher","backbit","backbite","backbiter","backbitten","backboard","backbone","backbreaking","backbutton","backchaining","backcloth","backcolor","backdate","backdrop","backdropped","backdropping","backed","backend","backends","backer","backfield","backfill","backfire","backgammon","background","backgroundcolor","backgroundimage","backgrounds","backgroundworker","backhand","backhanded","backhander","backhoe","backing","backlash","backless","backlog","backlogged","backlogging","backorder","backpack","backpacker","backpedal","backplane","backplate","backrest","backscatter","backseat","backside","backslapper","backslapping","backslash","backslashes","backslid","backslide","backslider","backspace","backspin","backstabber","backstabbing","backstage","backstair","backstitch","backstop","backstopped","backstopping","backstreet","backstretch","backstroke","backtalk","backticks","backtrace","backtrack","backtracking","backup","backups","backus","backward","backwardness","backwards","backwash","backwater","backwood","backwoodsman","backwoodsmen","backyard","bacon","baconer","bacteria","bacterial","bactericidal","bactericide","bacteriologic","bacteriological","bacteriologist","bacteriology","bacterium","bactria","bad","badder","baddest","baddie","bade","baden","badge","badger","badinage","badland","badlands","badlogic","badly","badman","badmen","badminton","badmouth","badmouths","badness","badrequest","baedeker","baez","baffin","baffle","bafflement","baffler","baffling","bag","bagatelle","bagel","bagful","baggage","baggageman","baggagemen","bagged","bagger","baggily","bagginess","bagging","baggy","baghdad","bagpipe","bagpiper","bagrodia","bags","baguette","baguio","bah","baha","bahama","bahamanian","bahamian","bahia","bahrain","bahs","baikal","bail","bailey","bailie","bailiff","bailiwick","baillie","bailout","bailsman","bailsmen","baily","baird","bairn","bait","baiter","baize","baja","bak","bake","baked","bakehouse","bakelite","baker","bakersfield","bakery","bakeshop","baking","baklava","baksheesh","baku","bakunin","bal","balaclava","balalaika","balance","balanced","balancedness","balancer","balanchine","balancing","balboa","balcony","bald","balder","balderdash","baldfaced","baldness","baldric","balduin","baldwin","baldy","bale","balearic","baleen","baleful","balefuller","balefullest","balefulness","baler","balfour","bali","balinese","balk","balkan","balkanization","balkanize","balker","balkhash","balkiness","balky","ball","ballad","ballade","balladeer","balladry","ballard","ballast","ballcock","baller","ballerina","ballet","balletic","ballfields","ballgame","ballistic","ballistics","balloon","balloonist","ballot","balloter","ballpark","ballplayer","ballpoint","ballroom","balls","ballsy","ballyhoo","balm","balminess","balmy","baloney","balsa","balsam","balsamic","balthazar","baltic","baltimore","baluchistan","baluster","balustrade","balzac","bam","bamako","bamberger","bambi","bambie","bamboo","bamboozle","bamby","ban","banach","banal","banality","banana","bananas","bancroft","band","bandage","bandager","bandanna","bandbox","bandeau","bandeaux","bander","banding","bandit","banditry","bandmaster","bandoleer","bandpass","bands","bandsman","bandsmen","bandstand","bandstop","bandung","bandwagon","bandwidth","bandwidths","bandy","bane","baneful","banefuller","banefullest","bang","bangalore","banger","bangkok","bangladesh","bangladeshi","bangle","bangor","bangui","bani","banish","banisher","banishment","banister","banjarmasin","banjo","banjoist","banjul","bank","bankaccount","bankbook","bankcard","banker","banking","banknote","bankroll","bankrupt","bankruptcy","banks","banky","banned","banneker","banner","banners","banning","bannister","bannock","banns","banquet","banqueter","banquette","bans","banshee","bantam","bantamweight","banter","banterer","bantering","banting","bantu","banyan","banzai","baobab","baos","baotou","baptism","baptismal","baptist","baptiste","baptistery","baptistry","baptize","baptized","baptizer","baptizes","bar","barabbas","barb","barbabas","barbabra","barbadian","barbados","barbara","barbaraanne","barbarella","barbarian","barbarianism","barbaric","barbarically","barbarism","barbarity","barbarize","barbarossa","barbarous","barbarousness","barbary","barbe","barbecue","barbed","barbee","barbel","barbell","barbeque","barber","barbered","barberry","barbershop","barbette","barbey","barbi","barbie","barbital","barbiturate","barbour","barbra","barbuda","barbwire","barby","barcarole","barcelona","barchart","barclay","barcode","bard","barde","bardeen","bardic","bare","bareback","barefaced","barefacedness","barefoot","barehanded","bareheaded","barelegged","barely","bareness","barents","barf","barfly","bargain","bargainer","barge","bargeman","bargemen","bargepole","barhop","barhopped","barhopping","bari","baritone","barium","bark","barked","barkeep","barkeeper","barker","barkley","barks","barley","barleycorn","barlow","barmaid","barman","barmen","barn","barnabas","barnabe","barnaby","barnacle","barnard","barnaul","barnebas","barnes","barnett","barney","barnful","barnhard","barnie","barnsful","barnstorm","barnstormer","barnum","barny","barnyard","baroda","barometer","barometric","barometrically","baron","baronage","baroness","baronet","baronetcy","baronial","barony","baroque","barplot","barque","barquisimeto","barr","barrack","barracker","barracuda","barrage","barranquilla","barre","barred","barrel","barren","barrenness","barrera","barret","barrett","barrette","barri","barricade","barrie","barrier","barriers","barring","barrio","barrister","barron","barroom","barrow","barry","barrymore","bars","barstool","barstow","bart","bartel","bartend","bartender","barter","barterer","barth","barthel","bartholdi","bartholemy","bartholomeo","bartholomeus","bartholomew","bartie","bartk","bartlet","bartlett","bartolemo","bartolomeo","barton","bartram","barty","bary","barycenter","barycentre","barycentric","baryon","baryram","baryshnikov","bas","basal","basalt","basaltic","bascom","base","baseadapter","baseaddress","baseball","baseband","baseboard","baseclass","basecontroller","based","basedir","basel","baseless","baseline","basely","baseman","basemen","basement","basename","baseness","basepath","baseplate","bases","basetting","basetype","baseurl","bash","bashful","bashfulness","basho","bashrc","basia","basic","basically","basicdbobject","basichttpbinding","basicnamevaluepair","basics","basie","basil","basilar","basile","basilica","basilio","basilisk","basilius","basin","basinful","basis","bask","basket","basketball","basketry","basketwork","basophilic","basque","basra","bass","basset","basseterre","bassett","bassinet","bassist","basso","bassoon","bassoonist","basswood","bast","bastard","bastardization","bastardize","bastardized","bastardy","baste","baster","bastian","bastien","bastille","basting","bastion","basutoland","bat","bataan","batavia","batch","batches","batchsize","bate","bated","bater","bates","bath","bathe","bather","bathetic","bathhouse","bathmat","batholomew","bathos","bathrobe","bathroom","baths","bathsheba","bathtub","bathwater","bathyscaphe","bathysphere","batik","batista","batiste","batman","batmen","baton","batsheva","batsman","batsmen","battalion","batted","batten","batter","batteries","battery","batting","battle","battledore","battledress","battlefield","battlefront","battleground","battlement","battler","battleship","batty","batu","batwings","bauble","baud","baudelaire","baudoin","baudouin","bauer","bauhaus","baulk","bausch","bauxite","bavaria","bavarian","bawd","bawdily","bawdiness","bawdy","bawl","bawler","bax","baxie","baxter","baxy","bay","bayamon","bayard","bayberry","bayda","bayer","bayes","bayesian","baylor","bayonet","bayonne","bayou","bayreuth","baz","bazaar","bazel","bazillion","bazooka","bb","bbb","bbbb","bbc","bbl","bbox","bbq","bbs","bc","bcc","bcd","bcp","bcrypt","bd","bdd","bdist","bdrm","be","bea","beach","beachcomber","beachhead","beachwear","beacon","beacons","bead","beading","beadle","beadsman","beadworker","beady","beagle","beak","beaker","beale","bealle","beam","bean","beanbag","beancreationexception","beanie","beanpole","beans","beanstalk","beanutils","bear","bearable","bearably","beard","bearded","beardless","beardmore","beardsley","bearer","bearing","bearish","bearishness","bearlike","bearnaise","bearnard","bearskin","beasley","beast","beasties","beastings","beastliness","beastly","beat","beatable","beatably","beaten","beater","beatific","beatifically","beatification","beatify","beating","beatitude","beatlemania","beatles","beatnik","beatrice","beatrisa","beatrix","beatriz","beats","beau","beauchamps","beaufort","beaujolais","beaumarchais","beaumont","beauregard","beaut","beauteous","beauteousness","beautician","beautification","beautifier","beautiful","beautifully","beautifulness","beautifulsoup","beautify","beauty","beauvoir","beaux","beaver","beaverton","bebe","bebop","becalm","became","because","becca","bechtel","beck","becka","becker","becket","beckett","becki","beckie","beckon","becky","becloud","become","becomes","becoming","becquerel","bed","bedaub","bedazzle","bedazzlement","bedbug","bedchamber","bedclothes","bedded","bedder","bedding","bede","bedeck","bedevil","bedevilment","bedfast","bedfellow","bedford","bedim","bedimmed","bedimming","bedizen","bedlam","bedlinen","bedmaker","bedmate","bedouin","bedpan","bedpost","bedraggle","bedridden","bedrock","bedroll","bedroom","bedsheets","bedside","bedsit","bedsitter","bedsore","bedspread","bedspring","bedstead","bedstraw","bedtime","bee","beebe","beebread","beech","beecher","beechnut","beechwood","beef","beefburger","beefcake","beefiness","beefsteak","beefy","beehive","beekeeper","beekeeping","beeline","beelzebub","been","beep","beeper","beer","beerbohm","beermat","beery","beeswax","beet","beethoven","beetle","beeton","beetroot","beeves","befall","befell","befit","befitted","befitting","befog","befogged","befogging","before","beforeeach","beforehand","beforesend","befoul","befriend","befuddle","befuddlement","beg","began","beget","begetting","beggar","beggarliness","beggarly","beggary","begged","begging","begin","beginform","begining","begininvoke","beginner","beginners","beginning","beginpath","begins","begintransaction","begone","begonia","begot","begotten","begrime","begrudge","begrudging","beguile","beguilement","beguiler","beguiling","beguine","begum","begun","behalf","behalves","behan","behave","behaves","behaving","behavior","behavioral","behaviorism","behaviorist","behavioristic","behaviors","behaviorsubject","behaviour","behead","beheld","behemoth","behemoths","behest","behind","behindhand","behold","beholder","behoofs","behoove","behooving","behring","beiderbecke","beige","beijing","beilul","being","beirut","beitris","bejewel","bekesy","bekki","bel","bela","belabor","belarus","belate","belated","belatedness","belau","belay","belch","beleaguer","belem","belfast","belfry","belg","belgian","belgium","belgrade","belia","belicia","belie","belief","beliefs","belier","believability","believable","believably","believe","believed","believer","believes","believing","belinda","belita","belittle","belittlement","belittler","belize","bell","bella","belladonna","bellamy","bellanca","bellatrix","bellboy","belle","belled","belletrist","belletristic","belleville","bellflower","bellhop","bellicose","bellicoseness","bellicosity","belligerence","belligerency","belligerent","bellina","belling","bellini","bellman","bellmen","bellovin","bellow","bellows","bells","bellwether","bellwood","belly","bellyache","bellyacher","bellybutton","bellyful","bellyfull","belmont","belmopan","beloit","belong","belonging","belongs","belongsto","belongstomany","belorussia","belorussian","belove","beloved","below","belshazzar","belt","belted","belting","belton","beltran","beltsville","beltway","beluga","belushi","belva","belvedere","belvia","bely","beman","bemire","bemoan","bemuse","bemused","bemusement","ben","benacerraf","benares","bench","bencher","benchmark","benchmarking","benchmarks","bend","bended","bender","bendick","bendicty","bendite","bendix","beneath","benedetta","benedetto","benedick","benedict","benedicta","benedictine","benediction","benedicto","benedictory","benedikt","benedikta","benefaction","benefactor","benefactress","benefice","beneficence","beneficent","beneficial","beneficialness","beneficiary","benefit","benefiter","benefits","benelux","benet","benetta","benetton","benevolence","benevolent","benevolentness","bengal","bengali","benghazi","bengt","beniamino","benighted","benightedness","benign","benignant","benignity","benin","beninese","benita","benito","benjamen","benjamin","benji","benjie","benjy","benn","bennett","benni","bennie","bennington","benny","benoit","benoite","benson","bent","bentham","bentlee","bentley","benton","bents","bentwood","benumb","benyamin","benz","benzedrine","benzene","benzine","beograd","beowulf","bequeath","bequeaths","bequest","ber","berate","berber","bereave","bereavement","bereft","berenice","beret","berg","bergen","berger","bergerac","berget","berglund","bergman","bergson","bergsten","bergstrom","beribbon","beriberi","bering","beringer","berk","berke","berkeley","berkelium","berkie","berkley","berkly","berkowitz","berkshire","berky","berle","berlin","berliner","berlioz","berlitz","berm","berman","bermuda","bermudan","bermudian","bern","berna","bernadene","bernadette","bernadina","bernadine","bernard","bernardina","bernardine","bernardino","bernardo","bernarr","bernays","bernbach","berne","bernelle","bernese","bernete","bernetta","bernette","bernhard","bernhardt","berni","bernice","bernie","berniece","bernini","bernita","bernoulli","bernstein","berny","berra","berri","berrie","berry","berrylike","berserk","berserker","bert","berta","berte","berth","bertha","berthe","berths","berti","bertie","bertillon","bertina","bertine","berton","bertram","bertrand","bertrando","berty","beryl","beryle","beryllium","berzelius","bes","beseech","beseecher","beseeching","beseem","beset","besetting","beside","besides","besiege","besieger","besmear","besmirch","besom","besot","besotted","besotting","besought","bespangle","bespatter","bespeak","bespectacled","bespoke","bespoken","bess","bessel","bessemer","bessie","bessy","best","bestial","bestiality","bestiary","bestir","bestirred","bestirring","bestow","bestowal","bestrew","bestrewn","bestridden","bestride","bestrode","bestseller","bestselling","bestubble","bet","beta","betake","betaken","betatron","betcha","betel","betelgeuse","beth","bethanne","bethany","bethe","bethel","bethena","bethesda","bethina","bethink","bethlehem","bethought","bethune","betide","betimes","betoken","betook","betray","betrayal","betrayer","betroth","betrothal","betrothed","betroths","betsey","betsy","betta","bette","betteann","betteanne","better","betterment","betti","bettie","bettina","bettine","betting","bettor","betty","bettye","between","betweenness","betwixt","beulah","bev","bevan","bevel","beverage","beverie","beverlee","beverley","beverlie","beverly","bevin","bevon","bevvy","bevy","bewail","beware","bewhisker","bewigged","bewilder","bewildered","bewildering","bewilderment","bewitch","bewitching","bewitchment","bey","beyond","bezel","bezier","bf","bfs","bg","bgcolor","bgr","bh","bhopal","bhutan","bhutanese","bhutto","bi","bialystok","bianca","bianco","bianka","biannual","bias","biased","biases","biathlon","biaxial","bib","bibbed","bibbie","bibbing","bibby","bibbye","bibendum","bibi","bible","biblical","biblicists","bibliographer","bibliographic","bibliographical","bibliography","bibliophile","bibulous","bicameral","bicameralism","bicarb","bicarbonate","bicentenary","bicentennial","bicep","biceps","bichromate","bicker","bickerer","bickering","biconcave","biconnected","biconvex","bicuspid","bicycle","bicycler","bicyclist","bid","biddable","bidden","bidder","biddie","bidding","biddle","biddy","bide","bider","bidet","bidget","bidiagonal","bidirectional","bids","biennial","biennium","bienville","bier","bierce","bifocal","bifurcate","bifurcation","big","bigamist","bigamous","bigamy","bigdecimal","bigelow","bigfoot","bigged","bigger","biggest","biggie","bigging","biggish","bighead","bighearted","bigheartedness","bighorn","bight","bigint","biginteger","bigmouth","bigmouths","bigness","bigot","bigoted","bigotry","bigquery","bigwig","biharmonic","bijection","bijective","bijou","bijoux","bike","biker","bikini","biko","bil","bilabial","bilateral","bilateralness","bilayer","bilbao","bilberry","bilbo","bile","bilge","bili","biliary","bilinear","bilingual","bilingualism","bilious","biliousness","bilk","bilker","bill","billboard","biller","billet","billfold","billi","billiard","billie","billing","billings","billingsgate","billion","billionaire","billions","billionths","billow","billowy","billposters","bills","billy","billye","bimbo","bimetallic","bimetallism","bimini","bimodal","bimolecular","bimonthly","bin","binaries","binary","binaural","bind","bindable","binded","binder","bindery","binding","bindingcontext","bindingflags","bindingness","bindingredirect","bindingresult","bindings","bindingsource","bindle","bindparam","binds","bindvalue","bindweed","bing","binge","bingham","binghamton","bingo","bini","bink","binky","binnacle","binned","binni","binnie","binning","binny","binocular","binodal","binomial","bins","bintray","binuclear","bio","biochemical","biochemist","biochemistry","biodegradability","biodegradable","biodiversity","bioengineering","bioethics","biofeedback","biog","biograph","biographer","biographic","biographical","biography","bioko","biol","biologic","biological","biologist","biology","biomass","biomedical","biomedicine","biometric","biometrics","biometry","biomolecule","biomorph","bionic","bionically","bionics","biophysic","biophysical","biophysicist","biophysics","biopic","biopsy","biorhythm","bios","bioscience","biosphere","biostatistic","biosynthesized","biotechnological","biotechnologist","biotechnology","biotic","biotin","bipartisan","bipartisanship","bipartite","bipartition","biped","bipedal","biplane","bipolar","bipolarity","biracial","birch","bird","birdbath","birdbaths","birdbrain","birdcage","birder","birdhouse","birdie","birdieing","birdlike","birdlime","birds","birdseed","birdseye","birdsong","birdtables","birdwatch","birefringence","birefringent","biretta","birgit","birgitta","birk","birkenstock","birmingham","biro","biron","birt","birth","birthdate","birthday","birthmark","birthplace","birthrate","birthright","births","birthstone","bis","biscay","biscayne","biscuit","bisect","bisection","bisector","biserial","bisexual","bisexuality","bishkek","bishop","bishopric","bismarck","bismark","bismuth","bismuths","bison","bisque","bissau","bistable","bistate","bistro","bisyllabic","bit","bitblt","bitbucket","bitch","bitchily","bitchiness","bitchy","bitcoin","bitcoins","bitconverter","bite","biter","biting","bitmap","bitmapdata","bitmapdrawable","bitmapfactory","bitmapimage","bitmaps","bitnami","bitnet","bitrate","bits","bitser","bitset","bitted","bitten","bitter","bittern","bitterness","bitternut","bitterroot","bittersweet","bitting","bitty","bitumen","bituminous","bitwise","bivalent","bivalve","bivariate","bivouac","bivouacked","bivouacking","biweekly","biyearly","biz","bizarre","bizarreness","bizet","biztalk","bizzes","bj","bjorn","bk","bl","bla","blab","blabbed","blabber","blabbermouth","blabbermouths","blabbing","blabla","blablabla","black","blackamoor","blackball","blackberry","blackbird","blackbirder","blackboard","blackbody","blackburn","blackcolor","blackcurrant","blacken","blackener","blackfeet","blackfoot","blackguard","blackhead","blacking","blackish","blackjack","blackleg","blacklist","blackmail","blackmailer","blackman","blackmer","blackness","blackout","blackpool","blacksmith","blacksmiths","blacksnake","blackspot","blackstone","blackthorn","blacktop","blacktopped","blacktopping","blackwell","bladder","bladdernut","bladderwort","blade","blah","blahblah","blahs","blaine","blair","blaire","blake","blakelee","blakeley","blakey","blame","blameless","blamelessness","blamer","blameworthiness","blameworthy","blanc","blanca","blanch","blancha","blanchard","blanche","blancher","blancmange","bland","blandish","blandishment","blandit","blandness","blane","blank","blankenship","blanket","blanketing","blankness","blanks","blanton","blantyre","blare","blarney","blas","blaspheme","blasphemer","blasphemous","blasphemousness","blasphemy","blast","blaster","blasting","blastoff","blatancy","blatant","blather","blatting","blatz","blavatsky","blayne","blaze","blazer","blazing","blazon","blazoner","bldg","ble","bleach","bleached","bleacher","bleak","bleakness","blear","blearily","bleariness","bleary","bleat","bleater","bleed","bleeder","bleeker","bleep","blemish","blemished","blench","blend","blender","blenheim","bless","blessed","blessedness","blessing","blevins","blew","bligh","blight","blighter","blimey","blimp","blind","blinded","blinder","blindfold","blinding","blindly","blindness","blindside","blink","blinker","blinking","blinks","blinni","blinnie","blinny","blintz","blintze","blip","blipped","blipping","bliss","blisse","blissful","blissfulness","blister","blistering","blistery","blit","blithe","blitheness","blither","blithesome","blitz","blitzkrieg","blizzard","blk","bloat","bloater","blob","blobbed","blobbing","blobs","bloc","bloch","block","blockade","blockader","blockage","blockbuster","blockbusting","blockchain","blocked","blocker","blockhead","blockhouse","blocking","blockjunit","blockquote","blocks","blocksize","blocky","bloemfontein","blog","blogger","blogging","bloginfo","blogpost","blogs","blogspot","bloke","blomberg","blomquist","blond","blonde","blondell","blondelle","blondie","blondish","blondness","blondy","blood","bloodbath","bloodbaths","bloodcurdling","bloodhound","bloodied","bloodiness","bloodless","bloodlessness","bloodletting","bloodline","bloodmobile","bloodroot","bloodshed","bloodshot","bloodsport","bloodstain","bloodstock","bloodstone","bloodstream","bloodsucker","bloodsucking","bloodthirstily","bloodthirstiness","bloodthirsty","bloodworm","bloody","bloodymindedness","bloom","bloomer","bloomfield","bloomington","bloop","blooper","blossom","blossomy","blot","blotch","blotchy","blotted","blotter","blotting","blotto","blouse","blow","blower","blowfish","blowfly","blowgun","blowing","blown","blowout","blowpipe","blowtorch","blowup","blowy","blowzy","blt","blubber","blubbery","blucher","bludgeon","blue","blueback","bluebeard","bluebell","blueberry","bluebill","bluebird","bluebonnet","bluebook","bluebottle","bluebush","bluefish","bluegill","bluegrass","blueing","blueish","bluejacket","bluejeans","bluemix","blueness","bluenose","bluepoint","blueprint","bluer","bluest","bluestocking","bluesy","bluet","bluetooth","bluetoothadapter","bluetoothdevice","bluff","bluffer","bluffness","bluing","bluish","bluishness","blum","blumenthal","blunder","blunderbuss","blunderer","blundering","blunt","bluntness","blur","blurb","blurred","blurriness","blurring","blurry","blurt","blush","blusher","blushing","bluster","blusterer","blustering","blusterous","blustery","blvd","blythe","bm","bmi","bmp","bmw","bn","bo","boa","boar","board","boarded","boarder","boardgames","boarding","boardinghouse","boardroom","boards","boardwalk","boast","boaster","boastful","boastfulness","boat","boatclubs","boater","boathouse","boating","boatload","boatman","boatmen","boatswain","boatyard","bob","bobbe","bobbed","bobbee","bobbette","bobbi","bobbie","bobbin","bobbing","bobbitt","bobble","bobbsey","bobby","bobbye","bobbysoxer","bobcat","bobette","bobina","bobine","bobinette","bobolink","bobrow","bobs","bobsled","bobsledded","bobsledder","bobsledding","bobsleigh","bobsleighs","bobtail","bobwhite","boca","boccaccio","boccie","bock","bockwurst","bod","bode","bodega","bodenheim","bodhidharma","bodhisattva","bodice","bodied","bodies","bodiless","bodily","boding","bodkin","body","bodybuilder","bodybuilding","bodyguard","bodying","bodyparser","bodysuit","bodyweight","bodywork","boeing","boeotia","boeotian","boer","bog","bogart","bogartian","bogey","bogeyman","bogeymen","bogged","bogging","boggle","boggling","boggy","bogie","bogot","bogus","bogy","bogyman","bogymen","boheme","bohemia","bohemian","bohemianism","bohr","boigie","boil","boiled","boiler","boilermaker","boilerplate","boils","bois","boise","boisterous","boisterousness","bokeh","bola","bold","boldface","boldness","bole","bolero","boleyn","bolivar","bolivares","bolivia","bolivian","boll","bollard","bollix","bolo","bologna","bolometer","boloney","bolshevik","bolshevism","bolshevist","bolshevistic","bolshoi","bolster","bolsterer","bolt","bolted","bolter","bolton","bolts","boltzmann","bolus","bom","bomb","bombard","bombardier","bombardment","bombast","bombastic","bombastically","bombay","bomber","bombproof","bombshell","bona","bonanza","bonaparte","bonaventure","bonbon","bond","bondage","bonder","bondholder","bondie","bondman","bondmen","bondon","bonds","bondsman","bondsmen","bondwoman","bondwomen","bondy","bone","boned","bonehead","boneless","boner","bones","bonfire","bong","bongo","bonham","bonhomie","boniface","boniness","bonita","bonito","bonjour","bonkers","bonn","bonnee","bonner","bonnet","bonneted","bonneville","bonni","bonnibelle","bonnie","bonny","bonsai","bontempo","bonus","bony","bonzes","boo","boob","booby","boodle","boogeyman","boogie","boogieing","boohoo","book","bookbind","bookbinder","bookbindery","bookbinding","bookcase","booked","bookend","booker","bookid","bookie","booking","bookings","bookish","bookishness","bookkeep","bookkeeper","bookkeeping","booklet","bookmaker","bookmaking","bookmark","bookmarks","bookmobile","bookplate","books","bookseller","bookshelf","bookshelves","bookshop","bookstall","bookstore","bookwork","bookworm","bool","boole","boolean","booleanfield","booleans","boom","boomer","boomerang","boomtown","boon","boondocks","boondoggle","boondoggler","boone","boonie","boonies","boony","boor","boorish","boorishness","boost","booster","boosterism","boot","bootblack","boote","bootee","booth","boothe","booths","bootie","booting","bootlaces","bootle","bootleg","bootlegged","bootlegger","bootlegging","bootless","bootloader","bootply","bootprints","bootstrap","bootstrapcdn","bootstrapped","bootstrapper","bootstrapping","booty","booze","boozer","boozy","bop","bopped","bopping","borate","borax","bord","bordeaux","bordello","borden","border","borderbrush","bordercolor","bordered","borderer","borderfactory","borderland","borderlayout","borderline","borderpane","borderradius","borders","borderstyle","borderthickness","borderwidth","bordie","bordon","bordy","bore","borealis","boreas","bored","boredom","boreholes","borer","borg","borges","borgia","boric","boring","boris","bork","born","borne","borneo","borodin","boron","borosilicate","borough","boroughs","borroughs","borrow","borrowed","borrower","borrowing","borscht","borstal","boru","borzoi","bos","bosch","bose","bosh","bosnia","bosnian","bosom","bosomy","boson","bosporus","boss","bossily","bossiness","bossism","bossy","bostitch","boston","bostonian","bosun","boswell","bot","botanic","botanical","botanist","botany","botch","botcher","botes","botfly","both","bother","bothered","bothersome","bothy","boto","bots","botswana","botticelli","bottle","bottleneck","bottler","bottom","bottomless","bottomlessness","bottommost","botulin","botulinus","botulism","boucher","boudoir","bouffant","bougainvillea","bough","boughs","bought","bouillabaisse","bouillon","boulder","boulevard","bounce","bouncer","bouncily","bouncing","bouncy","bouncycastle","bound","boundaries","boundary","bounded","boundedness","bounden","bounder","bounders","boundfield","bounding","boundingbox","boundless","boundlessness","bounds","bounteous","bounteousness","bountiful","bountifulness","bounty","bouquet","bourbaki","bourbon","bourgeois","bourgeoisie","bourke","bourne","bournemouth","bout","boutique","boutonnire","bouvier","bovary","bovine","bow","bowditch","bowdlerization","bowdlerize","bowed","bowel","bowell","bowen","bower","bowers","bowery","bowes","bowie","bowing","bowl","bowlder","bowleg","bowlegged","bowler","bowlful","bowline","bowling","bowman","bowmen","bows","bowser","bowsprit","bowstring","bowwow","box","boxcar","boxed","boxer","boxes","boxful","boxing","boxlayout","boxlike","boxplot","boxtops","boxwood","boxy","boy","boyce","boycey","boycie","boycott","boycotter","boyd","boyer","boyfriend","boyhood","boyish","boyishness","boyle","boys","boyscout","boysenberry","bozo","bp","bpi","bpm","bps","bq","br","bra","brace","braced","bracelet","bracer","braces","brachia","brachium","bracken","bracket","bracketed","bracketing","brackets","brackish","brackishness","bract","brad","bradan","bradawl","bradbury","bradburys","bradded","bradding","braddock","brade","braden","bradford","bradley","bradly","bradney","bradshaw","bradstreet","brady","brae","brag","bragg","braggadocio","braggart","bragged","bragger","braggest","bragging","brahe","brahma","brahman","brahmanism","brahmaputra","brahmin","brahms","braid","braider","braiding","braille","brain","brainard","braincell","brainchild","brainchildren","braininess","brainless","brainlessness","brainpower","brainstorm","brainstorming","brainteaser","brainteasing","braintree","brainwash","brainwasher","brainwashing","brainwave","brainy","braise","brake","brakeman","brakemen","bram","bramble","brambling","brambly","brampton","bran","brana","branch","branched","branches","branching","branchlike","branchville","brand","brandais","brande","brandea","branded","brandeis","brandel","branden","brandenburg","brander","brandi","brandice","brandie","branding","brandise","brandish","brando","brandon","brands","brandt","brandtr","brandy","brandyn","brandywine","braniff","branned","branning","brannon","brant","brantley","braque","brash","brashness","brasilia","brass","brasserie","brassiere","brassily","brassiness","brassy","brat","bratislava","brattain","bratty","bratwurst","braun","bravado","bravadoes","brave","braveness","bravery","bravest","bravo","bravura","brawl","brawler","brawn","brawniness","brawny","bray","brayer","braze","brazen","brazenness","brazer","brazier","brazil","brazilian","brazos","brazzaville","breach","breacher","bread","breadbasket","breadboard","breadbox","breadcrumb","breadcrumbs","breadfruit","breadline","breadth","breadths","breadwinner","break","breakable","breakables","breakage","breakaway","breakdown","breaker","breakfast","breakfaster","breakfront","breaking","breakneck","breakout","breakpoint","breakpoints","breaks","breakthrough","breakthroughs","breakup","breakwater","bream","breanne","brear","breast","breastbone","breastfed","breastfeed","breasting","breastplate","breaststroke","breastwork","breath","breathable","breathalyser","breathalyzer","breathe","breather","breathing","breathless","breathlessness","breaths","breathtaking","breathy","brecht","breckenridge","bred","bredes","bree","breech","breeching","breed","breeder","breeding","breeds","breena","breeze","breezeway","breezily","breeziness","breezy","bremen","bremsstrahlung","bren","brena","brenda","brendan","brenden","brendin","brendis","brendon","brenn","brenna","brennan","brennen","brenner","brent","brenton","bresenham","brest","bret","brethren","breton","brett","breve","brevet","brevetted","brevetting","breviary","brevity","brew","brewer","brewery","brewing","brewpub","brewster","brezhnev","bria","brian","briana","brianna","brianne","briano","briant","briar","bribe","briber","bribery","brice","brick","brickbat","bricklayer","bricklaying","brickmason","brickwork","brickyard","bridal","bridalveil","bride","bridegroom","bridesmaid","bridewell","bridge","bridgeable","bridged","bridgehead","bridgeport","bridger","bridges","bridget","bridgetown","bridgett","bridgette","bridgewater","bridgework","bridging","bridgman","bridie","bridle","bridled","bridleway","brie","brief","briefcase","briefed","briefing","briefly","briefness","briefs","brien","brier","brietta","brig","brigade","brigadier","brigadoon","brigand","brigandage","brigantine","brigg","brigham","bright","brighten","brightener","brightness","brighton","brigid","brigida","brigit","brigitta","brigitte","brilliance","brilliancy","brilliant","brilliantine","brilliantness","brillo","brillouin","brim","brimful","brimless","brimmed","brimming","brimstone","brina","brindisi","brindle","brine","briner","briney","bring","bringer","bringing","brings","brininess","brink","brinkley","brinkmanship","brinn","brinna","briny","brioche","brion","briquet","briquette","brisbane","brisk","brisket","briskness","bristle","bristly","bristol","brit","brita","britain","britannia","britannic","britannica","britches","briticism","british","britisher","britishly","britney","britni","briton","britt","britta","brittan","brittaney","brittani","brittany","britte","britten","britteny","brittle","brittleness","brittne","brittney","brittni","brnaba","brnaby","brno","bro","broach","broacher","broad","broadband","broadcast","broadcaster","broadcasting","broadcastreceiver","broadcasts","broadcloth","broadcloths","broaden","broader","broadleaved","broadloom","broadminded","broadness","broadsheet","broadside","broadsword","broadway","brobdingnag","brobdingnagian","brocade","broccoli","brochette","brochure","brock","brockie","brocky","brod","broddie","broddy","broderic","broderick","brodie","brody","brogan","broglie","brogue","broil","broiler","brok","broke","broken","brokenhearted","brokenness","broker","brokerage","brokers","bromide","bromidic","bromine","bron","bronc","bronchi","bronchial","bronchiolar","bronchiole","bronchiolitis","bronchitic","bronchitis","broncho","bronchus","bronco","broncobuster","bronnie","bronny","bronson","bronte","brontosaur","brontosaurus","bronx","bronze","bronzed","bronzing","brooch","brood","brooder","broodiness","brooding","broodmare","broody","brook","brookdale","brooke","brookfield","brookhaven","brooklet","brooklyn","brookmont","brookside","broom","broomstick","bros","brose","broth","brothel","brother","brotherhood","brotherliness","brotherly","broths","brougham","brought","brouhaha","brow","browbeat","brown","browne","brownell","brownian","brownie","browning","brownish","brownness","brownout","brownstone","brownsville","brows","browse","browser","browserify","browsermodule","browsername","browsers","browsing","brr","brubeck","bruce","brucellosis","brucie","bruckner","bruegel","brueghel","bruin","bruis","bruise","bruised","bruiser","bruit","brumidi","brummel","brunch","brunei","brunelleschi","brunet","brunette","brunhilda","brunhilde","bruno","brunswick","brunt","brush","brusher","brushes","brushfire","brushlike","brushoff","brushwood","brushwork","brushy","brusque","brusqueness","brussels","brutal","brutality","brutalization","brutalize","brutalized","brutalizes","brute","brutish","brutishness","brutus","bruxelles","bryan","bryana","bryant","bryanty","bryce","bryn","bryna","brynn","brynna","brynne","brynner","bryon","brzezinski","bs","bsa","bsd","bson","bss","bst","bstr","bt","btc","btn","btnsave","btnsubmit","btree","btu","btw","bu","bub","bubble","bubblegum","bubbler","bubbles","bubbling","bubbly","buber","bubo","buboes","bubonic","buccaneer","buchanan","bucharest","buchenwald","buchwald","buck","buckaroo","buckboard","bucker","bucket","bucketful","bucketname","buckets","buckeye","buckhorn","buckie","buckingham","buckle","buckled","buckler","buckles","buckley","buckling","buckner","buckram","bucksaw","buckshot","buckskin","buckteeth","bucktooth","buckwheat","bucky","bucolic","bucolically","bud","budapest","budd","budded","buddha","buddhism","buddhist","buddie","budding","buddy","budge","budgerigar","budget","budgetary","budgeter","budgie","budging","budweiser","buehring","buena","buf","buff","buffalo","buffaloes","buffer","buffered","bufferedimage","bufferedinputstream","bufferedoutputstream","bufferedreader","bufferedwriter","bufferer","buffering","buffers","buffersize","buffet","bufflehead","buffoon","buffoonery","buffoonish","buffy","buford","bufsize","bug","bugaboo","bugatti","bugbear","bugeyed","bugged","bugger","buggered","buggering","buggery","bugging","buggy","bugle","bugler","bugs","bugzilla","buick","build","buildconfig","buildcontext","builddir","builder","builders","building","buildings","buildpack","builds","buildscript","buildtoolsversion","buildtypes","buildup","built","builtin","builtins","buiron","bujumbura","bukhara","bukharin","bukkit","bulawayo","bulb","bulba","bulblet","bulbous","bulfinch","bulganin","bulgaria","bulgarian","bulge","bulgy","bulimarexia","bulimia","bulimic","bulk","bulkhead","bulkiness","bulky","bull","bulldog","bulldogged","bulldogger","bulldogging","bulldoze","bulldozer","bullet","bulletin","bulletproof","bullets","bullfight","bullfighter","bullfighting","bullfinch","bullfrog","bullhead","bullheaded","bullheadedness","bullhide","bullhorn","bullied","bullion","bullish","bullishness","bullock","bullpen","bullring","bullseye","bullshit","bullshitted","bullshitter","bullshitting","bullwhackers","bullwinkle","bully","bullyboy","bullying","bulrush","bultmann","bulwark","bum","bumble","bumblebee","bumbler","bumbling","bumbry","bummed","bummer","bummest","bumming","bump","bumper","bumpiness","bumpkin","bumppo","bumptious","bumptiousness","bumpy","bun","bunch","bunche","bunchy","bunco","buncombe","bundestag","bundle","bundled","bundler","bundles","bundling","bundy","bung","bungalow","bungee","bunghole","bungle","bungler","bungling","bunin","bunion","bunk","bunker","bunkhouse","bunkmate","bunko","bunkum","bunni","bunnie","bunny","bunsen","bunt","bunting","bunyan","buoy","buoyancy","buoyant","bur","burbank","burble","burbler","burbs","burch","burden","burdensome","burdensomeness","burdock","bureau","bureaucracy","bureaucrat","bureaucratic","bureaucratically","bureaucratization","bureaucratize","burg","burgeon","burger","burgess","burgh","burgher","burghs","burglar","burglarize","burglarproof","burglary","burgle","burgomaster","burgoyne","burgundian","burgundy","burial","buried","burier","burk","burke","burl","burlap","burler","burlesque","burlesquer","burley","burlie","burliness","burlingame","burlington","burly","burma","burmese","burn","burnable","burnaby","burnard","burne","burned","burner","burnett","burning","burnish","burnisher","burnoose","burnout","burns","burnside","burnt","burp","burr","burris","burrito","burro","burroughs","burrow","burrower","bursa","bursae","bursar","bursary","bursitis","burst","burster","burt","burtie","burton","burty","burundi","burundian","bury","bus","busboy","busby","busch","buses","busgirl","bush","bushel","bushido","bushiness","bushing","bushland","bushman","bushmaster","bushmen","bushnell","bushwhack","bushwhacker","bushwhacking","bushy","busily","business","businesses","businesslike","businessman","businessmen","businesspeople","businessperson","businesswoman","businesswomen","busk","busker","buskin","buss","bust","bustard","buster","bustle","bustling","busty","busy","busybody","busyness","busywork","but","butane","butch","butcher","butcherer","butchery","butene","butler","butt","butte","butted","butter","butterball","buttercup","buttered","butterfat","butterfield","butterfingered","butterfingers","butterfly","butterknife","buttermilk","butternut","butterscotch","buttery","butting","buttock","button","buttoner","buttonhole","buttonholer","buttons","buttonweed","buttonwood","buttress","butyl","butyrate","buuel","buxom","buxomness","buxtehude","buy","buyback","buyer","buyers","buying","buyout","buys","buzz","buzzard","buzzer","buzzword","buzzy","bv","bw","bx","bxs","by","bye","byelaw","byelorussia","byers","bygone","byid","bylaw","byline","byliner","byob","bypass","bypath","bypaths","byplay","byproduct","byram","byran","byrann","byrd","byre","byref","byrle","byrne","byroad","byrom","byron","byronic","byronism","bystander","byte","bytearray","bytearrayinputstream","bytearrayoutputstream","bytebuffer","bytecode","bytes","bytesread","bytestring","byval","byway","byword","byzantine","byzantium","bz","c","ca","cab","cabal","cabala","caballed","caballero","caballing","cabana","cabaret","cabbage","cabbed","cabbing","cabby","cabdriver","caber","cabernet","cabin","cabinet","cabinetmaker","cabinetmaking","cabinetry","cabinetwork","cable","cablecast","cablegram","cabochon","caboodle","caboose","cabot","cabrera","cabrini","cabriolet","cabstand","cacao","cacciatore","cache","cached","cachepot","caches","cachet","caching","cacilia","cacilie","cackle","cackler","cackly","cacm","cacophonist","cacophonous","cacophony","cacti","cactus","cad","cadaver","cadaverous","caddish","caddishness","caddric","caddy","cadence","cadenced","cadencing","cadent","cadenza","cadet","cadette","cadge","cadger","cadillac","cadiz","cadmium","cadre","caducei","caduceus","caedmon","caesar","caesura","caf","cafe","cafeteria","caffe","caffeine","caftan","cage","caged","cager","cagey","cagier","cagiest","cagily","caginess","cagney","cahokia","cahoot","cahra","cai","caiaphas","caiman","cain","caine","cairistiona","cairn","cairo","caisson","caitiff","caitlin","caitrin","cajole","cajolement","cajoler","cajolery","cajun","cake","cakephp","cakewalk","cal","calabash","calaboose","calais","calamari","calamine","calamitous","calamitousness","calamity","calayer","calc","calcareous","calcareousness","calciferous","calcification","calcify","calcimine","calcine","calcite","calcium","calcomp","calculability","calculable","calculate","calculated","calculates","calculating","calculatingly","calculation","calculations","calculative","calculator","calculi","calculus","calcutta","calder","caldera","calderon","caldron","caldwell","cale","caleb","caledonia","calendar","calendars","calender","calf","calfskin","calgary","calhoun","cali","caliban","caliber","calibrate","calibrated","calibrater","calibrating","calibration","calibrator","calibri","calico","calicoes","calida","calif","california","californian","californium","caligula","caliper","caliph","caliphate","caliphs","calisthenic","calisthenics","call","calla","callable","callactivityoncreate","callaghan","callahan","callao","callback","callbacks","callean","called","callee","caller","callers","calley","calli","callida","callie","calligraph","calligrapher","calligraphic","calligraphist","calligraphy","calling","callingconvention","calliope","callisthenics","callisto","calloc","callosity","callous","callousness","callout","callow","callowness","calls","callsite","callus","cally","calm","calming","calmness","caloocan","caloric","calorie","calories","calorific","calorimeter","calorimetric","calorimetry","caltech","calumet","calumniate","calumniation","calumniator","calumnious","calumny","calv","calvary","calve","calvert","calves","calvin","calvinism","calvinist","calvinistic","calyces","calypso","calyx","cam","camacho","camala","camaraderie","camber","cambial","cambium","cambodia","cambodian","cambrian","cambric","cambridge","camcorder","camden","came","camel","camelcase","camelhair","camella","camellia","camelopardalis","camelot","camembert","cameo","camera","camerae","cameraman","cameramen","cameras","cameraupdatefactory","camerawoman","camerawomen","cameron","cameroon","cameroonian","camey","cami","camila","camile","camilla","camille","camino","camion","camisole","cammed","cammi","cammie","cammy","camoens","camomile","camouflage","camouflager","camp","campaign","campaigner","campaigns","campanile","campanological","campanologist","campanology","campbell","campbellsport","camper","campesinos","campest","campfire","campground","camphor","campinas","camping","campos","campsite","campus","campy","camry","camshaft","camus","can","canaan","canaanite","canactivate","canad","canada","canadian","canadianism","canal","canaletto","canalization","canalize","canap","canard","canaries","canary","canasta","canaveral","canberra","cancan","cancel","cancelate","cancelbuttontitle","canceled","canceler","cancellation","cancellationtoken","cancelled","cancer","cancerous","cancun","candace","candelabra","candelabrum","candi","candice","candid","candida","candidacy","candidate","candidates","candidature","candide","candidly","candidness","candie","candle","candlelight","candlelit","candlepower","candler","candlestick","candlewick","candor","candra","candy","cane","canebrake","caner","canexecute","canine","caning","canis","canister","caniuse","canker","cankerous","cannabis","canned","cannelloni","canner","cannery","cannes","cannibal","cannibalism","cannibalistic","cannibalization","cannibalize","cannily","canniness","canninesses","canning","cannister","cannon","cannonade","cannonball","cannot","canny","canoe","canoeist","canoga","canon","canonic","canonical","canonicalization","canonicalize","canonist","canonization","canonize","canonized","canopus","canopy","canst","cant","cantabile","cantabrigian","cantaloupe","cantankerous","cantankerousness","cantata","canted","canteen","canter","canterbury","cantered","cantering","canticle","cantilever","canto","canton","cantonal","cantonese","cantonment","cantor","cantrell","cants","cantu","canute","canvas","canvasback","canvass","canvasser","canyon","cap","capabilities","capability","capable","capableness","capabler","capablest","capably","capacious","capaciousness","capacitance","capacitate","capacitive","capacitor","capacity","caparison","cape","capek","capella","caper","capeskin","capet","capetown","caph","capillarity","capillary","capistrano","capita","capital","capitalism","capitalist","capitalistic","capitalistically","capitalization","capitalize","capitalized","capitalizer","capitalizes","capitan","capitation","capitol","capitoline","capitulate","capitulation","caplet","capo","capon","capone","capote","capped","capping","cappuccino","cappy","capra","capri","caprice","capricious","capriciousness","capricorn","caps","capsicum","capsize","capstan","capstone","capsular","capsule","capsulize","capt","captain","captaincy","captcha","caption","captions","captious","captiousness","captivate","captivation","captivator","captive","captivity","captor","capture","captured","capturer","captures","capturing","capulet","caputo","capybara","car","cara","caracalla","caracas","caracul","carafe","caralie","caramel","caramelize","carapace","carapaxes","carat","caravaggio","caravan","caravaner","caravansary","caravanserai","caravel","caraway","carbide","carbine","carbohydrate","carbolic","carboloy","carbon","carbonaceous","carbonate","carbonation","carbondale","carbone","carbonic","carboniferous","carbonization","carbonize","carbonizer","carbonizes","carbonyl","carborundum","carboy","carbuncle","carbuncular","carburetor","carburetter","carburettor","carcase","carcass","carce","carcinogen","carcinogenic","carcinogenicity","carcinoma","card","cardamom","cardboard","cardenas","carder","cardholders","cardiac","cardiff","cardigan","cardin","cardinal","cardinality","carding","cardiod","cardiogram","cardiograph","cardiographs","cardioid","cardiologist","cardiology","cardiomegaly","cardiopulmonary","cardiovascular","cards","cardsharp","cardview","care","cared","careen","career","careerism","careerist","careers","carefree","careful","carefuller","carefullest","carefully","carefulness","caregiver","careless","carelessness","caren","carena","carer","cares","caresa","caress","caressa","caresse","caresser","caressing","caressive","caret","caretaker","careworn","carey","carfare","cargo","cargoes","carhop","carhopped","carhopping","cari","caria","carib","caribbean","caribou","caricature","caricaturisation","caricaturist","caricaturization","carid","carie","caries","caril","carillon","carillonned","carillonning","carilyn","carin","carina","carine","caring","cariotta","carious","carissa","carita","caritta","carjack","carl","carla","carlee","carleen","carlen","carlene","carleton","carletonian","carley","carlie","carlin","carlina","carline","carling","carlita","carlo","carload","carlota","carlotta","carlsbad","carlson","carlton","carly","carlye","carlyle","carlyn","carlynn","carlynne","carma","carmel","carmela","carmelia","carmelina","carmelita","carmella","carmelle","carmelo","carmen","carmencita","carmichael","carmina","carmine","carmita","carmon","carnage","carnal","carnality","carnap","carnation","carnegie","carnelian","carney","carnival","carnivore","carnivorous","carnivorousness","carnot","carny","caro","carob","carol","carola","carolan","carolann","carole","carolee","caroler","carolin","carolina","caroline","carolingian","carolinian","caroljean","carolus","carolyn","carolyne","carolynn","carom","caron","carotene","carotid","carousal","carouse","carousel","carouser","carp","carpal","carpathian","carpel","carpenter","carpentering","carpentry","carper","carpet","carpetbag","carpetbagged","carpetbagger","carpetbagging","carpeting","carpi","carping","carpool","carport","carpus","carr","carrageen","carree","carrel","carri","carriage","carriageway","carrie","carried","carrier","carriers","carrierwave","carries","carrillo","carrion","carrissa","carrol","carroll","carrot","carroty","carrousel","carry","carryall","carrying","carryout","carryover","cars","carsick","carsickness","carson","cart","cartage","carte","cartel","carter","cartesian","carthage","carthaginian","carthorse","cartier","cartilage","cartilaginous","cartload","cartographer","cartographic","cartography","carton","cartoon","cartoonist","cartridge","cartwheel","cartwright","carty","caruso","carve","carven","carver","carving","cary","caryatid","caryl","caryn","cas","casaba","casablanca","casals","casandra","casanova","casar","casbah","cascade","cascades","cascadetype","cascading","cascara","case","casebook","cased","caseharden","casein","caseload","casement","cases","casework","caseworker","casey","cash","cashbook","cashew","cashier","cashless","cashmere","casi","casie","casing","casino","cask","casket","caspar","casper","caspian","cass","cassandra","cassandre","cassandry","cassatt","cassaundra","cassava","casserole","cassette","cassey","cassi","cassia","cassie","cassino","cassiopeia","cassite","cassius","cassock","cassondra","cassowary","cassy","cast","castaneda","castanet","castaway","caste","casted","castellated","caster","castigate","castigation","castigator","castile","castillo","casting","castle","castoff","castor","castrate","castration","castries","castro","casts","casual","casualness","casualty","casuist","casuistic","casuistry","cat","cataclysm","cataclysmal","cataclysmic","catacomb","catafalque","catalan","catalepsy","cataleptic","catalina","catalog","cataloger","catalogue","catalonia","catalpa","catalysis","catalyst","catalytic","catalytically","catalyze","catamaran","catapult","cataract","catarina","catarrh","catarrhs","catastrophe","catastrophic","catastrophically","catatonia","catatonic","catawba","catbird","catboat","catcall","catch","catchable","catchall","catcher","catches","catching","catchment","catchpenny","catchphrase","catchup","catchword","catchy","cate","catechism","catechist","catechize","catecholamine","categoria","categoric","categorical","categorie","categories","categorization","categorize","categorized","category","categoryid","categoryinfo","categoryname","catenate","catenation","cater","catercorner","caterer","caterina","catering","caterpillar","caterwaul","catfish","catgut","catha","catharina","catharine","catharses","catharsis","cathartic","cathay","cathe","cathedral","cathee","cather","catherin","catherina","catherine","catheter","catheterize","cathi","cathie","cathleen","cathlene","cathode","cathodic","catholic","catholicism","catholicity","cathrin","cathrine","cathryn","cathy","cathyleen","cati","catid","catie","catiline","catina","cation","cationic","catkin","catlaina","catlee","catlike","catlin","catnap","catnapped","catnapping","catnip","cato","catrina","catriona","cats","catskill","catsup","catt","cattail","catted","cattery","cattily","cattiness","catting","cattle","cattleman","cattlemen","catty","catullus","catv","catwalk","caty","caucasian","caucasoid","caucasus","cauchy","caucus","caudal","caught","cauldron","cauliflower","caulk","caulker","causal","causality","causate","causation","causative","cause","caused","causeless","causer","causerie","causes","causeway","causing","caustic","caustically","causticity","cauterization","cauterize","cauterized","caution","cautionary","cautioner","cautious","cautiousness","cavalcade","cavalier","cavalierness","cavalry","cavalryman","cavalrymen","cave","caveat","caveats","caveatted","caveatting","caveman","cavemen","cavendish","caver","cavern","cavernous","caviar","cavil","caviler","caving","cavity","cavort","cavour","caw","caxton","cay","caye","cayenne","cayla","cayman","cayuga","cayuse","caz","cazzie","cb","cbc","cbind","cbs","cc","ccc","cccccc","cchaddie","ccp","cctv","ccu","cd","cdata","cdate","cdb","cdc","cde","cdecl","cdef","cdf","cdh","cdi","cdn","cdnjs","cdr","cds","cdt","ce","cease","ceasefire","ceaseless","ceaselessness","ceasing","ceausescu","cebu","cebuano","ceca","cecal","cece","cecelia","cecil","cecile","ceciley","cecilia","cecilio","cecilius","cecilla","cecily","cecum","ced","cedar","cede","ceded","ceder","cedes","cedilla","ceding","cedric","cef","ceil","ceilidh","ceiling","cel","celandine","celanese","cele","celebes","celebrant","celebrate","celebrated","celebratedness","celebration","celebrator","celebratory","celebrity","celene","celerity","celery","celesta","celeste","celestia","celestial","celestina","celestine","celestyn","celestyna","celia","celibacy","celibate","celie","celina","celinda","celine","celinka","celisse","celka","cell","cellar","cellarer","celle","cellforrowat","cellforrowatindexpath","cellidentifier","cellini","cellist","cello","cellophane","cellpadding","cellphone","cells","cellspacing","celltemplate","cellular","cellulite","celluloid","cellulose","cellvalue","celsius","celt","celtic","cement","cementa","cementer","cementum","cemetery","cenobite","cenobitic","cenotaph","cenotaphs","cenozoic","censer","censor","censored","censorial","censorious","censoriousness","censorship","censure","censurer","census","cent","centaur","centaurus","centavo","centenarian","centenary","centennial","center","centerboard","centered","centerer","centerfold","centerhorizontal","centering","centerline","centerpiece","centers","centervertical","centerx","centery","centigrade","centigram","centiliter","centime","centimeter","centipede","centos","central","centralia","centralism","centralist","centrality","centralization","centralize","centralized","centralizer","centralizes","centre","centrefold","centrex","centric","centrifugal","centrifugate","centrifugation","centrifuge","centripetal","centrist","centroid","cents","centuries","centurion","century","ceo","cephalic","cepheid","cepheus","cer","ceramic","ceramicist","ceramist","cerate","cerberus","cereal","cerebellar","cerebellum","cerebra","cerebral","cerebrate","cerebration","cerebrum","cerement","ceremonial","ceremonious","ceremoniousness","ceremony","cerenkov","ceres","cerf","cerise","cerium","cermet","cern","cerr","cert","certain","certainer","certainest","certainly","certainty","certifiable","certifiably","certificate","certificates","certification","certified","certifier","certify","certiorari","certitude","certs","cerulean","cervantes","cervical","cervices","cervix","cesar","cesare","cesarean","cesaro","cesium","cessation","cession","cessna","cesspit","cesspool","cest","cesya","cet","cetacean","cetera","cetus","cex","ceylon","ceylonese","cezanne","cf","cfc","cfg","cfif","cflags","cfm","cfo","cfoutput","cfset","cg","cgal","cgcolor","cgfloat","cgi","cgimage","cglib","cgpoint","cgpointmake","cgrect","cgrectmake","cgsize","cgsizemake","ch","chablis","chad","chadd","chaddie","chaddy","chadian","chadwick","chafe","chafer","chaff","chaffer","chafferer","chaffey","chaffinch","chagall","chagrin","chai","chaim","chain","chained","chaining","chainlike","chains","chainsaw","chair","chairlady","chairlift","chairman","chairmanship","chairmen","chairperson","chairwoman","chairwomen","chaise","chalcedony","chaldea","chaldean","chalet","chalice","chalk","chalkboard","chalkiness","chalkline","chalky","challenge","challenged","challenger","challenges","challenging","challis","chalmers","chamber","chamberer","chamberlain","chambermaid","chamberpot","chambers","chambray","chameleon","chamfer","chammy","chamois","chamomile","champ","champagne","champaign","champion","championship","champlain","chan","chance","chanced","chancel","chancellery","chancellor","chancellorship","chancellorsville","chancery","chances","chancey","chanciness","chancing","chancre","chancy","chanda","chandal","chandelier","chandigarh","chandler","chandra","chandragupta","chandrasekhar","chandy","chane","chanel","chaney","chang","changchun","change","changeabilities","changeability","changeable","changeableness","changeably","changed","changeless","changeling","changelog","changeover","changer","changes","changeset","changing","changsha","channa","channel","channeler","channelid","channeling","channelization","channelize","channellings","channels","channing","chanson","chant","chantal","chantalle","chanter","chanteuse","chantey","chanticleer","chantilly","chantry","chanty","chanukah","chao","chaos","chaotic","chaotically","chap","chaparral","chapbook","chapeau","chapel","chaperon","chaperonage","chaperone","chaperoned","chaplain","chaplaincy","chaplet","chaplin","chapman","chappaquiddick","chapped","chapping","chapter","chapters","char","chara","charabanc","character","characterful","characteristic","characteristically","characteristics","characterizable","characterization","characterize","characterized","characterizer","characterless","characters","charade","chararray","charat","charbroil","charcoal","charcode","charcodeat","chard","chardonnay","charfield","charge","chargeable","chargeableness","charged","charger","chargers","charges","charging","charil","charily","charin","charindex","chariness","chariot","charioteer","charis","charisma","charismata","charismatic","charismatically","charissa","charisse","charita","charitable","charitableness","charitablenesses","charitably","charity","charla","charlady","charlatan","charlatanism","charlatanry","charlean","charleen","charlemagne","charlena","charlene","charles","charleston","charley","charlie","charline","charlot","charlotta","charlotte","charlottesville","charlottetown","charlton","charm","charmain","charmaine","charmane","charmer","charmian","charmin","charmine","charming","charmion","charmless","charo","charolais","charon","charred","charring","chars","charsequence","charset","chart","chartdata","charted","charter","chartered","charterer","charting","chartist","chartres","chartreuse","chartroom","charts","charwoman","charwomen","chary","charybdis","charyl","chas","chase","chaser","chasing","chasity","chasm","chassis","chaste","chastely","chasten","chasteness","chastise","chastisement","chastiser","chastity","chasuble","chat","chateaubriand","chateaus","chats","chattahoochee","chattanooga","chatted","chattel","chatter","chatterbox","chatterer","chatterley","chatterton","chattily","chattiness","chatting","chatty","chaucer","chauffeur","chaunce","chauncey","chautauqua","chauvinism","chauvinist","chauvinistic","chauvinistically","chavez","chaw","chayefsky","chdir","che","cheap","cheapen","cheaper","cheapest","cheapish","cheapness","cheapskate","cheat","cheater","cheating","chechen","chechnya","check","checkable","checkbook","checkbox","checkboxes","checkboxlist","checked","checker","checkerboard","checkin","checking","checklist","checkmark","checkmate","checkoff","checkout","checkpoint","checkroom","checks","checkselfpermission","checkstyle","checksum","checksummed","checksumming","checkup","cheddar","cheek","cheekbone","cheekily","cheekiness","cheeky","cheep","cheer","cheerer","cheerful","cheerfuller","cheerfullest","cheerfulness","cheerily","cheeriness","cheerio","cheerios","cheerleader","cheerless","cheerlessness","cheers","cheery","cheese","cheeseburger","cheesecake","cheesecloth","cheesecloths","cheeseparing","cheesiness","cheesy","cheetah","cheetahs","cheeto","cheever","chef","cheffed","cheffing","chekhov","chelate","chelation","chelsae","chelsea","chelsey","chelsie","chelsy","chelyabinsk","chem","chemic","chemical","chemiluminescence","chemiluminescent","chemise","chemist","chemistry","chemotherapeutic","chemotherapy","chemurgy","chen","cheng","chengdu","chenille","cheops","cher","chere","cherey","cheri","cherianne","cherice","cherida","cherie","cherilyn","cherilynn","cherin","cherise","cherish","cherisher","cheriton","cherlyn","chernenko","chernobyl","cherokee","cheroot","cherri","cherrita","cherry","cherrypy","chert","cherub","cherubic","cherubim","chervil","chery","cherye","cheryl","chesapeake","cheshire","cheslie","chess","chessboard","chessman","chessmen","chest","chester","chesterfield","chesterton","chestful","chestnut","cheston","chesty","chet","chev","chevalier","cheviot","chevrolet","chevron","chevy","chew","chewer","chewiness","chewy","cheyenne","chg","chge","chi","chiang","chianti","chiaroscuro","chiarra","chiba","chic","chicago","chicagoan","chicana","chicane","chicanery","chicano","chichi","chick","chickadee","chickasaw","chicken","chickenfeed","chickenhearted","chickenpox","chickie","chickpea","chickweed","chicky","chicle","chicness","chico","chicory","chide","chiding","chief","chiefdom","chieftain","chiffon","chiffonier","chigger","chignon","chihuahua","chilblain","child","childbearing","childbirth","childbirths","childcare","childes","childhood","childish","childishness","childitem","childless","childlessness","childlike","childlikeness","childminders","childnode","childnodes","childposition","childprocess","childproof","childrearing","children","childs","chile","chilean","chili","chilies","chill","chiller","chilli","chilliness","chilling","chillness","chilly","chilton","chimaera","chimaerical","chimborazo","chime","chimer","chimera","chimeric","chimerical","chimiques","chimney","chimp","chimpanzee","chimu","chin","china","chinaman","chinamen","chinatown","chinchilla","chine","chinese","ching","chink","chinless","chinned","chinner","chinning","chino","chinook","chinstrap","chintz","chintzy","chip","chipboard","chipewyan","chipmunk","chipped","chippendale","chipper","chippewa","chipping","chips","chiquia","chiquita","chiral","chirico","chirography","chiropodist","chiropody","chiropractic","chiropractor","chirp","chirpy","chirrup","chisel","chiseler","chisholm","chisinau","chit","chitchat","chitchatted","chitchatting","chitin","chitinous","chittagong","chitterlings","chivalric","chivalrous","chivalrously","chivalrousness","chivalry","chive","chivvy","chivying","chk","chlamydia","chlamydiae","chlo","chloe","chloette","chloral","chlorate","chlordane","chloride","chlorinate","chlorinated","chlorinates","chlorination","chlorine","chloris","chlorofluorocarbon","chloroform","chlorophyll","chloroplast","chloroquine","chm","chmod","chock","chockablock","chocoholic","chocolate","chocolaty","choctaw","choice","choiceness","choices","choir","choirboy","choirmaster","choke","chokeberry","chokecherry","choker","chokes","choking","choler","cholera","choleric","cholesterol","choline","cholinesterase","chomp","chomsky","chongqing","choose","chooser","chooses","choosiness","choosing","choosy","chop","chophouse","chopin","chopped","chopper","choppily","choppiness","chopping","choppy","chopstick","choral","chorale","chord","chordal","chordata","chordate","chording","chore","chorea","choreograph","choreographer","choreographic","choreographically","choreographs","choreography","chorines","chorion","chorister","choroid","chortle","chortler","chorus","chose","chosen","chou","chow","chowder","chown","chr","chretien","chris","chrism","chrissake","chrisse","chrissie","chrissy","christ","christa","christabel","christabella","christal","christalle","christan","christchurch","christean","christel","christen","christendom","christened","christening","christensen","christenson","christi","christian","christiana","christiane","christianity","christianize","christiano","christians","christiansen","christie","christin","christina","christine","christlike","christmas","christmastide","christmastime","christoffel","christoffer","christoforo","christoper","christoph","christophe","christopher","christophorus","christos","christy","christye","christyna","chrisy","chroma","chromate","chromatic","chromatically","chromaticism","chromaticness","chromatics","chromatin","chromatogram","chromatograph","chromatographic","chromatography","chromic","chromite","chromium","chromosomal","chromosome","chromosphere","chronic","chronically","chronicle","chronicled","chronicler","chrono","chronograph","chronographs","chronography","chronological","chronologist","chronology","chronometer","chronometric","chrotoem","chrysa","chrysalids","chrysalis","chrysanthemum","chrysler","chrysostom","chrystal","chryste","chrystel","chteau","chteaux","chtelaine","chub","chubbiness","chubby","chucho","chuck","chuckhole","chuckle","chuckling","chuff","chug","chugged","chugging","chukchi","chukka","chum","chumash","chummed","chummily","chumminess","chumming","chummy","chump","chumping","chung","chungking","chunk","chunked","chunkiness","chunks","chunksize","chunky","chuntering","church","churchgoer","churchgoing","churchill","churchillian","churchliness","churchly","churchman","churchmen","churchwarden","churchwoman","churchwomen","churchyard","churl","churlish","churlishness","churn","churner","churning","chute","chutney","chutzpa","chutzpah","chutzpahs","chuvash","chyme","ci","cia","ciao","cicada","cicatrice","cicatrix","cicely","cicero","cicerone","ciceroni","ciceronian","cicily","cid","cider","ciel","cigar","cigarette","cigarillo","cilantro","cilia","ciliate","ciliately","cilium","cilka","cin","cinch","cinchona","cincinnati","cincture","cinda","cindee","cindelyn","cinder","cinderella","cindi","cindie","cindra","cindy","cine","cinema","cinematic","cinematographer","cinematographic","cinematography","cinerama","cinnabar","cinnamon","cint","cipher","ciphered","ciphers","ciphertext","cir","circa","circadian","circe","circle","circler","circles","circlet","circuit","circuital","circuitous","circuitousness","circuitry","circuity","circulant","circular","circularity","circularize","circularness","circulate","circulation","circulations","circulative","circulatory","circumcise","circumcised","circumciser","circumcision","circumference","circumferential","circumflex","circumlocution","circumlocutory","circumnavigate","circumnavigation","circumnavigational","circumpolar","circumscribe","circumscription","circumspect","circumspection","circumsphere","circumstance","circumstances","circumstantial","circumvent","circumvention","circus","cirillo","cirilo","ciro","cirque","cirrhoses","cirrhosis","cirrhotic","cirri","cirrus","cis","cisco","cissiee","cissy","cistern","cit","citadel","citation","citations","cite","cited","citibank","cities","citified","citizen","citizenry","citizens","citizenship","citrate","citric","citroen","citron","citronella","citrus","city","cityid","cityname","cityscape","citywide","civet","civic","civics","civil","civilian","civility","civilization","civilizational","civilize","civilized","civilizedness","civilizer","civilizes","civvies","cj","cjs","ck","ckeditor","cl","clack","clad","cladding","clads","claiborn","claiborne","claim","claimable","claimant","claimed","claimer","claiming","claims","clair","claire","clairol","clairvoyance","clairvoyant","clam","clambake","clamber","clamberer","clammed","clammily","clamminess","clamming","clammy","clamor","clamorer","clamorous","clamorousness","clamp","clampdown","clamper","clamshell","clan","clancy","clandestine","clandestineness","clang","clanger","clangor","clangorous","clank","clanking","clannish","clannishness","clansman","clansmen","clap","clapboard","clapeyron","clapped","clapper","clapping","clapton","claptrap","claque","clara","clarabelle","clarance","clare","claremont","clarence","clarendon","claresta","claret","clareta","claretta","clarette","clarey","clari","claribel","clarice","clarie","clarification","clarifier","clarify","clarinda","clarine","clarinet","clarinetist","clarinettist","clarion","clarissa","clarisse","clarita","clarities","clarity","clark","clarke","clarridge","clary","clash","clasher","clasp","clasped","clasper","class","classa","classb","classcastexception","classer","classes","classic","classical","classicism","classicist","classics","classid","classifiable","classification","classificatory","classified","classifier","classify","classiness","classless","classlist","classloader","classmate","classmethod","classname","classnotfoundexception","classpath","classroom","classrunner","classwork","classworlds","classy","clat","clatter","clatterer","clattering","clattery","claude","claudell","claudelle","claudetta","claudette","claudia","claudian","claudianus","claudie","claudina","claudine","claudio","claudius","claus","clausal","clause","clausen","clauses","clausewitz","clausius","claustrophobia","claustrophobic","clave","clavichord","clavicle","clavier","claw","clawer","clay","clayborn","clayborne","claybourne","clayey","clayier","clayiest","claymore","clayson","clayton","clazz","clea","clean","cleanable","cleaned","cleaner","cleanest","cleaning","cleanliness","cleanly","cleanness","cleans","cleanse","cleanser","cleanup","clear","clearance","clearcolor","clearcut","cleared","clearer","clearfix","clearheaded","clearheadedness","clearing","clearinghouse","clearinterval","clearly","clearness","clearrect","clears","cleartimeout","clearwater","clearway","cleat","cleavage","cleave","cleaver","cleavland","clef","cleft","clem","clematis","clemence","clemenceau","clemency","clement","clemente","clementia","clementina","clementine","clementius","clements","clemmie","clemmy","clemons","clemson","clench","clenches","clenching","cleo","cleon","cleopatra","clerc","clerestory","clergy","clergyman","clergymen","clergywoman","clergywomen","cleric","clerical","clericalism","clerissa","clerk","clerkship","cletis","cletus","cleve","cleveland","clever","cleverness","clevey","clevie","clevis","clew","clf","cli","cliburn","clich","clichd","click","clickable","clicked","clicker","clickhandler","clicking","clickonce","clicks","client","clientcontext","cliente","clientheight","clientid","clientle","clientname","clients","clientsecret","clientsocket","clientwidth","clientx","clienty","cliff","cliffhanger","cliffhanging","clifford","clifton","clim","climacteric","climactic","climate","climatic","climatically","climatological","climatologist","climatology","climax","climb","climbable","climbdown","climbed","climber","clime","clinch","clincher","clinching","cline","cling","clinger","clinging","clingy","clinic","clinical","clinician","clinit","clink","clinker","clinometer","clint","clinton","clio","cliometric","cliometrician","clip","clipboard","clipped","clipper","clipping","clips","clique","cliquey","cliquier","cliquiest","cliquish","cliquishness","clitoral","clitorides","clitoris","clive","clj","clk","cllocation","cllocationcoordinate","cllocationmanager","clo","cloaca","cloacae","cloak","cloakroom","clob","clobber","cloche","clock","clocker","clockmaker","clocks","clockwatcher","clockwise","clockwork","clod","clodded","clodding","cloddish","cloddishness","clodhopper","cloe","clog","clogged","clogging","cloisonn","cloisonnes","cloister","cloistral","clojure","clomp","clonal","clone","cloned","clones","cloning","clonk","clop","clopped","clopping","cloris","close","closed","closefisted","closehandle","closely","closemouthed","closeness","closeout","closer","closers","closes","closest","closet","closeup","closing","closure","closured","closures","closuring","clot","cloth","clothbound","clothe","clothes","clothesbrush","clotheshorse","clothesline","clothesman","clothesmen","clothespin","clothier","clothing","clotho","cloths","clotilda","clotted","clotting","cloture","cloud","cloudburst","clouded","cloudera","cloudflare","cloudformation","cloudfront","cloudiness","cloudless","cloudlessness","clouds","cloudscape","cloudwatch","cloudy","clout","clove","cloven","clover","cloverleaf","clovis","clown","clownish","clownishness","cloy","cloying","clr","cls","clsid","club","clubbed","clubbing","clubfeet","clubfoot","clubhouse","clubroom","clubs","cluck","clue","clueless","clues","cluj","clump","clumpy","clumsily","clumsiness","clumsy","clung","clunk","clunky","cluster","clustered","clustering","clusters","clutch","clutter","cluttered","cly","clyde","clydesdale","clytemnestra","clyve","clywd","cm","cmake","cmakefiles","cmakelists","cmap","cmath","cmd","cmdlet","cmdline","cmds","cmos","cmp","cms","cmu","cn","cname","cnf","cnidarian","cnn","cns","cnt","co","coach","coacher","coachman","coachmen","coachwork","coadjutor","coagulable","coagulant","coagulate","coagulation","coagulator","coal","coaler","coalesce","coalescence","coalescent","coalface","coalfield","coalition","coalitionist","coalminers","coarse","coarsen","coarseness","coast","coastal","coaster","coastguard","coastline","coat","coated","coates","coating","coattail","coattest","coauthor","coax","coaxer","coaxial","coaxing","cob","cobain","cobalt","cobb","cobbed","cobbie","cobbing","cobble","cobbler","cobblestone","cobby","coble","cobol","cobra","cobweb","cobwebbed","cobwebbing","cobwebby","coca","cocaine","cocci","coccus","coccyges","coccyx","cochabamba","cochin","cochineal","cochise","cochlea","cochleae","cochlear","cochran","cock","cockade","cockamamie","cockatoo","cockatrice","cockcrow","cocker","cockerel","cockeye","cockeyed","cockfight","cockfighting","cockily","cockiness","cockle","cocklebur","cockleshell","cockney","cockpit","cockroach","cockscomb","cockshies","cocksucker","cocksure","cocktail","cocky","coco","cocoa","cocoapods","coconut","cocoon","cocos","cocteau","cod","coda","codded","codding","coddle","coddler","code","codebase","codebehind","codebook","codebreak","codec","codecs","coded","codee","codegen","codehaus","codeigniter","codeine","codemirror","codename","codepad","codepen","codependency","codependent","codeplex","codeproject","coder","coders","codes","codesandbox","codetermine","codeword","codex","codfish","codger","codi","codices","codicil","codie","codification","codifier","codify","codigo","coding","codling","codpiece","cody","coed","coedited","coediting","coeditor","coedits","coeducation","coeducational","coef","coeff","coefficient","coefficients","coelenterate","coequal","coerce","coercer","coercible","coercion","coercive","coerciveness","coeval","coexist","coexistence","coexistent","coextensive","cofactor","coffee","coffeecake","coffeecup","coffeehouse","coffeemaker","coffeepot","coffeescript","coffer","cofferdam","coffey","coffin","coffman","cog","cogency","cogent","cogged","cogging","cogitate","cogitation","cogitator","cognac","cognate","cognation","cognition","cognitional","cognitive","cognito","cognizable","cognizance","cognizances","cognizant","cognomen","cognoscente","cognoscenti","cogwheel","cohabit","cohabitant","cohabitation","cohabitational","cohan","coheir","cohen","cohere","coherence","coherencies","coherency","coherent","coherer","cohesion","cohesive","cohesiveness","cohn","coho","cohoes","cohort","coif","coiffed","coiffing","coiffure","coil","coimbatore","coin","coinage","coincide","coincidence","coincident","coincidental","coined","coiner","coins","coinsurance","cointon","cointreau","coital","coitus","coke","col","cola","colan","colander","colas","colatitude","colb","colbert","colby","cold","coldblooded","coldfusion","coldish","coldness","cole","coleen","coleman","colene","coleridge","coleslaw","colet","coletta","colette","coleus","colfax","colgate","colic","colicky","coliform","colin","coliru","coliseum","colitis","coll","collaborate","collaboration","collaborative","collaborator","collage","collagen","collapse","collapsed","collapsibility","collapsible","collapsing","collar","collarbone","collard","collarless","collate","collated","collateral","collation","collator","colleague","colleagues","collect","collected","collectedness","collectible","collecting","collection","collections","collectionview","collective","collectivism","collectivist","collectivity","collectivization","collectivize","collector","collectors","collects","colleen","college","colleges","collegiality","collegian","collegiate","collen","collete","collette","collide","collider","collie","collier","colliery","collimate","collimated","collimates","collimating","collimation","collimator","collin","colline","collinear","collinearity","collision","collisional","collisions","collocate","collocation","colloid","colloidal","colloq","colloquial","colloquialism","colloquies","colloquium","colloquy","collude","collusion","collusive","colly","collying","colman","colname","colnames","colo","cologne","colombia","colombian","colombo","colon","colonel","colonelcy","colonial","colonialism","colonialist","colonist","colonization","colonize","colonized","colonizer","colonizes","colonnade","colons","colony","colophon","color","coloraccent","coloradan","colorado","coloradoan","colorant","coloration","coloratura","colorbar","colorblind","colorblindness","colorbox","colored","colorer","colorfast","colorfastness","colorful","colorfulness","colorimeter","colorimetry","colorindex","coloring","colorization","colorize","colorizing","colorless","colorlessness","colormap","colorprimary","colorprimarydark","colors","colorspace","colorwithred","colossal","colosseum","colossi","colossus","colostomy","colostrum","colour","colours","cols","colspan","colt","colter","coltish","coltishness","coltrane","columbia","columbian","columbine","columbus","column","columna","columnar","columncount","columndefinition","columndefinitions","columnindex","columnist","columnize","columnname","columnnames","columns","columnspan","columnwidth","colver","com","coma","comae","comaker","comanche","comatose","comb","combat","combatant","combative","combativeness","combed","comber","combination","combinational","combinations","combinator","combinatorial","combinatoric","combine","combined","combiner","combines","combining","combo","combobox","comboboxitem","combs","combusted","combustibility","combustible","combustion","combustive","comcast","comdex","comdr","come","comeback","comedian","comedic","comedienne","comedown","comedy","comeliness","comely","comer","comes","comestible","comet","cometary","cometh","comeuppance","comfit","comfort","comfortability","comfortable","comfortableness","comfortably","comforted","comforter","comforting","comfy","comic","comical","comicality","cominform","coming","comity","comm","comma","command","commandant","commandargument","commandbutton","commandeer","commander","commanding","commandline","commandlink","commandment","commandname","commando","commandparameter","commandrunnerimpl","commands","commandtext","commandtype","commas","commemorate","commemoration","commemorative","commemorator","commence","commencement","commencer","commend","commendably","commendation","commendatory","commender","commensurable","commensurate","commensurates","commensuration","comment","commentary","commentate","commentator","commented","commenter","commenting","comments","commerce","commercial","commercialism","commercialization","commercialize","commie","commingle","commiserate","commiseration","commissar","commissariat","commissary","commission","commissioner","commit","commitment","commits","committable","committal","committals","committed","committee","committeeman","committeemen","committeewoman","committeewomen","committing","commode","commodes","commodious","commodiousness","commodity","commodo","commodore","common","commonality","commonalty","commondatakinds","commoner","commonjs","commonly","commonness","commonplace","commonplaceness","commons","commonsense","commonweal","commonwealth","commonwealths","commotion","communal","communality","commune","communicability","communicable","communicably","communicant","communicate","communicates","communicating","communication","communicational","communications","communicative","communicativeness","communicator","communion","communique","communism","communist","communistic","communitarian","communities","community","communize","commutable","commutate","commutation","commutative","commutativity","commutator","commute","commuter","comoros","comp","compact","compaction","compactness","compactor","companies","companion","companionable","companionableness","companionably","companionship","companionway","company","companyid","companyname","compaq","comparabilities","comparability","comparable","comparableness","comparably","comparative","comparativeness","comparator","compare","compared","comparer","compares","compareto","comparing","comparison","comparisons","compartment","compartmental","compartmentalization","compartmentalize","compass","compassion","compassionate","compassionateness","compat","compatibility","compatible","compatibleness","compatibly","compatriot","compeer","compel","compellable","compelled","compelling","compendious","compendium","compensable","compensate","compensated","compensation","compensator","compensatory","compete","competence","competency","competent","competing","competition","competitive","competitiveness","competitor","competitors","compilable","compilation","compile","compiled","compiler","compilers","compilerservices","compiles","compilesdkversion","compiling","complacence","complacency","complacent","complain","complainant","complainer","complaining","complains","complaint","complaints","complaisance","complaisant","complected","complement","complementariness","complementarity","complementary","complementation","complementer","completablefuture","complete","completed","completely","completeness","completer","completes","completing","completion","completionhandler","complex","complexion","complexional","complexity","complexness","complextype","compliance","compliant","complicate","complicated","complicatedness","complication","complicator","complicit","complicity","complier","compliment","complimentary","complimenter","comply","component","componentdidmount","componentinfo","componentmodel","componentname","components","componentscan","componentwillmount","comport","comportment","compose","composed","composedness","composer","composers","composite","composition","compositional","compositions","compositor","compost","composure","compote","compound","compoundbutton","compounded","compounder","comprehend","comprehending","comprehensibility","comprehensible","comprehensibleness","comprehensibly","comprehension","comprehensions","comprehensive","comprehensiveness","compress","compressed","compressformat","compressibility","compressible","compressing","compression","compressional","compressive","compressor","comprise","compromise","compromised","compromiser","compromising","compton","comptroller","compulsion","compulsive","compulsiveness","compulsivity","compulsorily","compulsory","compunction","compuserve","computability","computable","computably","computation","computational","computations","compute","computed","computer","computerese","computerization","computerize","computername","computers","computes","computing","comrade","comradely","comradeship","comte","con","conakry","conan","conant","concat","concatenate","concatenated","concatenating","concatenation","concave","concaveness","conceal","concealed","concealer","concealing","concealment","conceded","conceit","conceited","conceitedness","conceivable","conceivably","conceive","conceiver","concentrate","concentration","concentrator","concentrically","concepcin","concept","conception","conceptional","concepts","conceptual","conceptuality","conceptualization","conceptualizations","conceptualize","conceptualizing","conceptually","concern","concerned","concerning","concerns","concert","concerted","concertina","concertize","concertmaster","concerto","concession","concessionaire","concessional","concessionary","concetta","concettina","conch","conchita","conchs","concierge","conciliar","conciliate","conciliation","conciliator","conciliatory","concise","conciseness","concision","conclave","conclude","concluder","conclusion","conclusions","conclusive","conclusiveness","concoct","concocter","concoction","concomitant","concord","concordance","concordant","concordat","concorde","concordia","concourse","concrete","concreteness","concretion","concubinage","concubine","concupiscence","concupiscent","concur","concurrence","concurrency","concurrent","concurrenthashmap","concurrently","concuss","concussion","cond","conda","condemn","condemnate","condemnation","condemnatory","condemner","condensate","condensation","condense","condensed","condenser","condensible","condescend","condescending","condescension","condign","condiment","condimentum","condition","conditional","conditionally","conditionals","conditioned","conditioner","conditioning","conditions","condo","condole","condolence","condom","condominium","condone","condoner","condor","condorcet","conduce","conducive","conduciveness","conduct","conductance","conductibility","conductible","conduction","conductive","conductivity","conductor","conductress","conduit","coneflower","conestoga","coney","conf","confab","confabbed","confabbing","confabulate","confabulation","confect","confection","confectioner","confectionery","confectionist","confederacy","confederate","confer","conferee","conference","conferences","conferrable","conferral","conferred","conferrer","conferring","confessed","confession","confessional","confessor","confetti","confidant","confidante","confide","confidence","confident","confidential","confidentiality","confidentialness","confider","confiding","config","configchanges","configfile","configs","configsections","configurable","configuration","configurationmanager","configurations","configure","configured","configureservices","configuring","confine","confined","confinement","confiner","confirm","confirmation","confirmatory","confirmed","confirmedness","confirmpassword","confirms","confiscate","confiscation","confiscator","confiscatory","conflagration","conflate","conflation","conflict","conflicting","conflicts","confluence","confluent","conform","conformable","conformal","conformance","conformational","conformer","conforming","conformism","conformist","conformities","conformity","conforms","confound","confounded","confront","confrontation","confrontational","confronter","confrre","confucian","confucianism","confucius","confuse","confused","confusedness","confuses","confusing","confusion","confutation","confute","confuter","cong","conga","congeal","congealment","congenial","congeniality","conger","congeries","congest","congestion","conglomerate","conglomeration","congo","congolese","congrats","congratulate","congratulation","congratulations","congratulatory","congregate","congregation","congregational","congregationalism","congregationalist","congress","congressional","congressman","congressmen","congresspeople","congressperson","congresswoman","congresswomen","congreve","congruence","congruences","congruency","congruent","congruential","congruity","congruous","congruousness","congue","conic","conical","conicalness","conics","conifer","coniferous","conjectural","conjecture","conjecturer","conjoint","conjugacy","conjugal","conjugate","conjugation","conjunct","conjunction","conjunctiva","conjunctive","conjunctivitis","conjuration","conjure","conjurer","conjuring","conk","conker","conley","conman","conn","connect","connected","connectedly","connectedness","connectible","connecticut","connecting","connection","connectionfactory","connectionhandler","connectionimpl","connectionless","connectionmanager","connectionpool","connectionresult","connections","connectionstring","connectionstrings","connective","connectivity","connectivitymanager","connector","connectors","connects","connelly","conner","connery","connexion","conney","conni","connie","conniption","connivance","connive","conniver","connoisseur","connor","connotative","connstring","connubial","conny","conquer","conquerable","conquered","conqueror","conquers","conquest","conquistador","conrad","conrade","conrado","conrail","conroy","cons","consalve","consanguineous","consanguinity","conscienceless","conscientious","conscientiousness","conscionable","conscious","consciousness","conscription","consecrate","consecrated","consecrates","consecrating","consecration","consectetur","consecutive","consecutiveness","consensus","consent","consenter","consenting","consequat","consequence","consequences","consequent","consequential","consequentiality","consequentialness","consequently","conservancy","conservation","conservationism","conservationist","conservatism","conservative","conservativeness","conservator","conservatory","consider","considerable","considerables","considerably","considerate","considerateness","consideration","considerations","considered","considerer","considering","considers","consign","consignee","consignment","consist","consistence","consistency","consistent","consistently","consisting","consistory","consists","consolable","consolata","consolation","consolatory","console","consoleapplication","consoled","consoler","consolidate","consolidated","consolidates","consolidation","consolidator","consoling","consomm","consonance","consonances","consonant","consonantal","consortia","consortium","conspectus","conspicuous","conspicuousness","conspiracy","conspirator","conspiratorial","const","constable","constabulary","constance","constancia","constancy","constant","constanta","constantia","constantin","constantina","constantine","constantino","constantinople","constantly","constants","constellation","consternate","consternation","constexpr","constipate","constipation","constituency","constituent","constitute","constituted","constitutes","constituting","constitution","constitutional","constitutionality","constitutionally","constitutive","constr","constrain","constrained","constrainedly","constraint","constraintbottom","constraintend","constraintlayout","constraints","constraintstart","constrainttop","constrict","constriction","constrictor","construable","construct","constructed","constructibility","constructible","constructing","construction","constructional","constructionist","constructions","constructive","constructiveness","constructor","constructorresolver","constructors","constructs","construe","consuela","consuelo","consul","consular","consulate","consulship","consult","consultancy","consultant","consultation","consultative","consulted","consulter","consulting","consumable","consume","consumed","consumer","consumerism","consumerist","consumers","consumes","consuming","consummate","consummated","consumption","consumptive","cont","contact","contacted","contactform","contactid","contacting","contactlist","contactname","contacts","contactscontract","contagion","contagious","contagiousness","contain","contained","container","containerbase","containerization","containerize","containers","containerview","containing","containment","contains","containskey","contaminant","contaminate","contaminated","contaminates","contaminating","contamination","contaminative","contaminator","contd","contemn","contemplate","contemplation","contemplative","contemplativeness","contemporaneity","contemporaneous","contemporaneousness","contempt","contemptible","contemptibleness","contemptibly","contemptuous","contemptuousness","content","contentcontrol","contentdescription","contented","contenteditable","contentedly","contentedness","contention","contentious","contentiousness","contentlength","contently","contentment","contentmode","contentoffset","contentpage","contentpane","contentplaceholder","contentpresenter","contentprovider","contentresolver","contents","contentsize","contenttemplate","contenttype","contentvalues","contentview","contentwindow","conterminous","contest","contestable","contestant","contested","context","contextcompat","contexthandler","contextloader","contextloaderlistener","contextmenu","contextpath","contexts","contextual","contextualize","contiguity","contiguous","contiguousness","continence","continent","continental","continents","contingency","contingent","continua","continuable","continual","continually","continuance","continuant","continuation","continue","continued","continuer","continues","continuewith","continuing","continuity","continuous","continuously","continuousness","continuum","contort","contortion","contortionist","contour","contours","contra","contraband","contrabass","contraception","contraceptive","contract","contractible","contractile","contractor","contracts","contractual","contradict","contradiction","contradictorily","contradictoriness","contradictory","contradistinction","contraflow","contrail","contraindicate","contraindication","contralto","contrapositive","contraption","contrapuntal","contrariety","contrarily","contrariness","contrariwise","contrary","contrast","contrasting","contrastive","contravene","contravener","contravention","contreras","contretemps","contrib","contribute","contributed","contributing","contribution","contributions","contributive","contributor","contributorily","contributors","contributory","contrite","contriteness","contrition","contrivance","contrive","contrived","contriver","control","controlid","controllability","controllable","controllably","controlled","controller","controllercontext","controllername","controllers","controlling","controls","controltemplate","controltovalidate","controversial","controversialists","controversy","controvert","controvertible","contumacious","contumacy","contumelious","contumely","contuse","contusion","conundrum","conurbation","conv","convalesce","convalescence","convalescent","convallis","convect","convection","convectional","convector","convene","convener","convenience","convenient","conveniently","conventicle","convention","conventional","conventionalism","conventionalist","conventionality","conventionalize","conventions","convergence","convergent","conversant","conversation","conversational","conversationalist","conversations","conversazione","converse","conversion","conversioning","conversions","convert","converted","converter","converters","convertibility","convertible","convertibleness","converting","converts","convertto","convertview","convex","convexity","convey","conveyance","conveyancer","conveyancing","conveyor","convict","conviction","convince","convinced","convincer","convincing","convincingness","convivial","conviviality","convoke","convolute","convoluted","convolution","convolve","convolved","convolves","convolving","convoy","convulse","convulsion","convulsive","convulsiveness","conway","cony","coo","cook","cookbook","cooke","cooked","cooker","cookery","cookie","cookiecontainer","cookies","cooking","cookout","cooks","cookware","cooky","cool","coolant","cooled","cooler","cooley","coolheaded","coolidge","coolie","coolness","coon","coonskin","coop","cooper","cooperage","cooperate","cooperation","cooperative","cooperativeness","cooperator","coord","coordinate","coordinated","coordinateness","coordinates","coordination","coordinator","coordinatorlayout","coords","coors","coot","cootie","cop","copay","cope","copeland","copenhagen","coper","copernican","copernicus","copied","copier","copies","copilot","coping","copious","copiousness","coplanar","copland","copley","copolymer","copora","copped","copper","copperfield","copperhead","copperplate","coppersmith","coppersmiths","coppery","coppice","copping","coppola","copra","coprolite","coprophagous","cops","copse","copter","coptic","copula","copulate","copulation","copulative","copy","copybook","copycat","copycatted","copycatting","copying","copyist","copyright","copyrighter","copyto","copywriter","coquetry","coquette","coquettish","cor","cora","corabel","corabella","corabelle","coracle","coral","coralie","coraline","coralline","coralyn","corba","corbel","corbet","corbett","corbie","corbin","corby","cord","corda","cordage","corded","cordelia","cordelie","cordell","corder","cordey","cordi","cordial","cordiality","cordialness","cordie","cordillera","cordilleras","cording","cordite","cordless","cordoba","cordon","cordova","cordovan","cordula","corduroy","cordy","core","cored","coredata","coreen","corefoundation","corella","corenda","corene","corer","cores","corespondent","coretta","corette","corey","corfu","corgi","cori","coriander","corie","corilla","corina","corine","coring","corinna","corinne","corinth","corinthian","corinthians","coriolanus","coriolis","coriss","corissa","cork","corked","corker","corks","corkscrew","corliss","corly","corm","cormack","cormorant","corn","cornall","cornball","cornbread","corncob","corncrake","cornea","corneal","corneille","cornela","cornelia","cornelius","cornell","cornelle","corner","cornerradius","corners","cornerstone","cornet","corney","cornfield","cornflake","cornflour","cornflower","cornice","cornie","cornily","corniness","cornish","cornmeal","cornrow","cornstalk","cornstarch","cornucopia","cornwall","cornwallis","corny","corolla","corollary","corona","coronado","coronal","coronary","coronate","coronation","coroner","coronet","corot","coroutine","coroutines","corp","corpora","corporal","corporate","corporately","corporation","corporations","corporatism","corporatist","corporeal","corporeality","corporealness","corps","corpse","corpsman","corpsmen","corpulence","corpulent","corpulentness","corpus","corpuscle","corpuscular","corr","corral","corralled","corralling","correct","correctable","corrected","correcting","correction","correctional","corrections","corrective","correctly","correctness","corrector","correggio","correlate","correlated","correlation","correlative","correna","correspond","correspondence","correspondent","corresponding","corresponds","correy","corri","corrianne","corridor","corrie","corrigenda","corrigendum","corrigible","corrina","corrine","corrinne","corroborate","corroborated","corroboration","corroborative","corroborator","corroboratory","corrode","corrodible","corrosion","corrosive","corrosiveness","corrugate","corrugation","corrupt","corrupted","corrupter","corruptibility","corruptible","corruption","corruptions","corruptive","corruptness","corry","cors","corsage","corsair","corset","corsica","corsican","cort","cortes","cortex","cortez","cortge","cortical","cortices","corticosteroid","cortie","cortisone","cortland","cortney","corty","corundum","coruscate","coruscation","corvallis","corvette","corvus","cory","cos","cosby","cosetta","cosette","cosign","cosignatory","cosily","cosimo","cosine","cosiness","cosme","cosmetic","cosmetically","cosmetician","cosmetologist","cosmetology","cosmic","cosmical","cosmo","cosmogonist","cosmogony","cosmological","cosmologist","cosmology","cosmonaut","cosmopolitan","cosmopolitanism","cosmos","cosponsor","cossack","cosset","cost","costa","costanza","costar","costarred","costarring","costello","costive","costiveness","costless","costliness","costly","costner","costs","costume","costumer","cot","cotangent","cote","coterie","coterminous","cotillion","cotonou","cotopaxi","cottage","cottager","cottar","cotted","cotter","cotton","cottonmouth","cottonmouths","cottonseed","cottontail","cottonwood","cottony","cotyledon","couch","couchbase","couchdb","couching","cougar","cough","cougher","coughs","could","couldn","couldnt","coule","coulomb","council","councilman","councilmen","councilor","councilperson","councilwoman","councilwomen","counsel","counsellings","counselor","count","countability","countable","countably","countdown","countdowntimer","counted","countenance","countenancer","counter","counteract","counteraction","counterargument","counterattack","counterbalance","counterclaim","counterclockwise","counterculture","countercyclical","counterespionage","counterexample","counterfeit","counterfeiter","counterflow","counterfoil","counterforce","counterinsurgency","counterintelligence","counterintuitive","counterman","countermand","countermeasure","countermen","counteroffensive","counteroffer","counterpane","counterpart","counterpoint","counterpoise","counterproductive","counterproposal","counterrevolution","counterrevolutionary","counters","countersign","countersignature","countersink","counterspy","counterstrike","countersunk","countertenor","countervail","counterweight","countess","countif","counting","countless","countries","countrify","country","countrycode","countryid","countryman","countrymen","countryname","countryside","countrywide","countrywoman","countrywomen","counts","county","coup","coupe","couperin","couple","coupled","coupler","couplers","couples","couplet","coupling","coupon","coupons","courage","courageous","courageously","courageousness","courages","courbet","courgette","courier","course","courseid","coursename","courser","courses","coursework","coursing","court","courtenay","courteous","courteousness","courteousnesses","courtesan","courtesied","courtesy","courtesying","courthouse","courtier","courtliness","courtly","courtnay","courtney","courtroom","courts","courtship","courtyard","couscous","cousin","cousinly","cousteau","cout","couture","couturier","cov","covalent","covariance","covariant","covariate","covary","cove","coven","covenant","covenanted","covenanter","covent","coventry","cover","coverable","coverage","coverall","covered","coverer","covering","coverlet","covers","coversheet","covert","covertness","covet","coveter","coveting","covetous","covetousness","covey","covington","cow","coward","cowardice","cowardliness","cowardly","cowbell","cowbird","cowboy","cowcatcher","cowed","cower","cowering","cowgirl","cowhand","cowherd","cowhide","cowl","cowley","cowlick","cowling","cowman","cowmen","coworker","cowper","cowpoke","cowpony","cowpox","cowpunch","cowpuncher","cowrie","cowshed","cowslip","cox","coxcomb","coxswain","coy","coyer","coyest","coyly","coyness","coyote","coyoteadapter","coypu","cozen","cozenage","cozily","coziness","cozmo","cozumel","cozy","cp","cpa","cpan","cpanel","cpd","cpi","cpl","cplusplus","cpo","cpp","cppreference","cpr","cps","cpt","cpu","cpus","cpython","cq","cql","cr","crab","crabapple","crabbe","crabbed","crabbedness","crabber","crabbily","crabbiness","crabbing","crabby","crabgrass","crablike","crack","crackable","crackdown","cracker","crackerjack","crackle","crackling","crackly","crackpot","crackup","cradle","cradler","cradling","craft","craftily","craftiness","craftsman","craftsmanship","craftsmen","craftspeople","craftspersons","craftswoman","craftswomen","crafty","crag","craggie","cragginess","craggy","craig","craigslist","cram","cramer","crammed","crammer","cramming","cramp","cramper","crampon","cran","cranach","cranberry","crandall","crane","cranelike","cranford","cranial","cranium","crank","crankcase","crankily","crankiness","crankshaft","cranky","cranmer","cranny","cranston","crap","crape","crapped","crappie","crapping","crappy","crapshooter","cras","crash","crashed","crasher","crashes","crashing","crashlytics","crass","crassness","crate","crater","cravat","cravatted","cravatting","crave","craven","cravenness","craver","craving","craw","crawdad","crawfish","crawford","crawl","crawler","crawling","crawlspace","crawlway","crawly","cray","crayfish","crayola","crayon","craze","crazily","craziness","crazy","crc","crche","creak","creakily","creakiness","creaky","cream","creamer","creamery","creamily","creaminess","creamy","crease","creased","creases","creasing","creat","create","createbean","createbitmap","createchooser","createclass","createcommand","createconnection","createcriteria","created","createdat","createdate","createdby","createddate","createdon","createelement","createfile","createinstance","createmap","createobject","createobjecturl","createparallelgroup","createquery","creates","createserver","createstatement","createtable","createtextnode","createuser","createview","creating","creation","creationdate","creationism","creationist","creative","creativeness","creativities","creativity","creator","creators","creature","creatureliness","creaturely","cred","credence","credent","credential","credentials","credenza","credibility","credible","credibly","credit","creditability","creditable","creditableness","creditably","credited","creditor","credits","creditworthiness","credo","creds","credulity","credulous","credulousness","cree","creed","creedal","creeds","creek","creekside","creel","creep","creeper","creepily","creepiness","creepy","cref","creigh","creight","creighton","cremate","cremation","crematoria","crematorium","crematory","creme","crenelate","crenelation","creole","creon","creosote","crepe","crept","crescendo","crescendoed","crescendoing","crescent","cress","crest","crestfallen","crestfallenness","cresting","crestless","crestview","cretaceous","cretaceously","cretan","crete","cretin","cretinism","cretinous","cretonne","crevasse","crevice","crew","crewel","crewelwork","crewman","crewmen","crib","cribbage","cribbed","cribber","cribbing","crichton","crick","cricket","cricketer","cried","crier","cries","crime","crimea","crimean","crimes","criminal","criminality","criminalization","criminalize","criminologist","criminology","crimp","crimper","crimson","crin","cringe","cringer","crinkle","crinkly","crinoline","cripple","crippler","crippling","cris","crisco","crises","crisis","crisp","crisper","crispiness","crispness","crispy","criss","crisscross","crissie","crissy","crista","cristabel","cristal","cristen","cristi","cristian","cristiano","cristie","cristin","cristina","cristine","cristionna","cristobal","cristy","crit","criteria","criterion","critic","critical","criticality","critically","criticalness","criticism","criticize","criticized","criticizer","criticizes","criticizing","criticizingly","critique","critter","crlf","crm","croak","croaker","croaky","croat","croatia","croatian","croce","crochet","crocheter","crock","crockery","crockett","crockpot","crocodile","crocus","croesus","croft","crofter","croissant","croix","cromwell","cromwellian","cron","crone","cronin","cronjob","cronkite","crontab","cronus","crony","crook","crooked","crookedness","crookes","crookneck","croon","crooner","crop","cropland","cropped","cropper","cropping","croquet","croquette","crosby","crosier","cross","crossarm","crossbar","crossbarred","crossbarring","crossbeam","crossbones","crossbow","crossbowman","crossbowmen","crossbred","crossbreed","crosscheck","crosscurrent","crosscut","crosscutting","crossdomain","crossed","crosses","crossfire","crosshatch","crossing","crossness","crossorigin","crossover","crosspatch","crosspiece","crosspoint","crossproduct","crossroad","crossroads","crosstalk","crosstown","crosswalk","crossway","crosswind","crosswise","crossword","crotch","crotchet","crotchetiness","crotchety","crotchless","croton","crouch","croup","croupier","croupy","crow","crowbait","crowbar","crowbarred","crowbarring","crowd","crowded","crowdedness","crowfeet","crowfoot","crowley","crown","crowned","crowner","crozier","crs","crt","crucial","crucible","crucifiable","crucifix","crucifixion","cruciform","crucify","crud","crudded","crudding","cruddy","crude","crudeness","crudits","crudity","cruel","cruelness","cruelty","cruet","cruft","crufty","cruikshank","cruise","cruiser","cruller","crumb","crumble","crumbliness","crumbly","crumby","crumminess","crummy","crump","crumpet","crumple","crunch","crunchiness","crunchy","crupper","crusade","crusader","cruse","crush","crushable","crusher","crushing","crushproof","crusoe","crust","crustacean","crustal","crustily","crustiness","crusty","crutch","crux","cruz","cry","crybaby","cryogenic","cryogenics","cryostat","cryosurgery","crypt","cryptanalysis","cryptanalyst","cryptanalytic","cryptic","cryptically","crypto","cryptogram","cryptographer","cryptographic","cryptographically","cryptography","cryptologic","cryptological","cryptologist","cryptology","cryptozoic","crysta","crystal","crystalline","crystallite","crystallization","crystallize","crystallized","crystallizes","crystallizing","crystallographer","crystallographic","crystallography","crystie","cs","csc","cse","csharp","cshtml","csp","csproj","csr","csrf","csrftoken","css","cssclass","cssmenu","cssref","cssselector","cst","cstdlib","cstr","cstring","csv","csvfile","ct","cte","cthrine","ctime","ctl","ctn","ctor","ctp","ctr","ctrl","cts","ctx","ctype","ctypes","cu","cub","cuba","cuban","cubbed","cubbing","cubbyhole","cube","cuber","cubes","cubic","cubical","cubicle","cubism","cubist","cubit","cuboid","cuchulain","cuckold","cuckoldry","cuckoo","cucumber","cud","cuda","cuddle","cuddly","cudgel","cue","cuff","cuisinart","cuisine","culbertson","culinary","cull","cullan","cullen","cullender","culler","culley","cullie","cullin","cully","culminate","culmination","culotte","culpa","culpability","culpable","culpableness","culpably","culprit","cult","cultism","cultist","cultivable","cultivate","cultivated","cultivation","cultivator","cultural","culture","cultured","cultureinfo","cultures","culver","culvert","cum","cumber","cumberland","cumbersome","cumbersomeness","cumbrous","cumin","cummerbund","cummings","cumquat","cumsum","cumulate","cumulation","cumulative","cumuli","cumulonimbi","cumulonimbus","cumulus","cunard","cuneiform","cunnilingus","cunning","cunningham","cunningness","cunt","cup","cupboard","cupcake","cupertino","cupful","cupid","cupidinously","cupidity","cupola","cupped","cupping","cupric","cuprous","cur","curability","curabitur","curable","curableness","curably","curacao","curacy","curare","curate","curative","curator","curatorial","curb","curbing","curbside","curbstone","curcio","curd","curdate","curdle","cure","cured","curer","curettage","curfew","curfs","curia","curiae","curie","curio","curiosity","curious","curiousness","curitiba","curium","curl","curler","curlew","curlicue","curliness","curling","curlopt","curly","curlycue","curmudgeon","curr","curran","currant","curred","currencies","currency","current","currentculture","currentdate","currentdb","currentdevice","currentdomain","currentindex","currentitem","currentline","currentlocation","currently","currentness","currentnode","currentpage","currentposition","currentrow","currentstate","currenttarget","currentthread","currenttime","currenttimemillis","currentuser","currentvalue","currentversion","currey","curricle","curricula","curricular","curriculum","currie","currier","curring","curry","currycomb","curs","curse","cursed","cursedness","curses","cursive","cursiveness","cursives","cursor","cursorily","cursoriness","cursors","cursory","cursus","curt","curtail","curtailer","curtailment","curtain","curtice","curtis","curtness","curtsey","curtsy","curvaceous","curvaceousness","curvature","curve","curved","curves","curvilinear","curvilinearity","curving","curvy","cus","cushion","cushman","cushy","cusp","cuspid","cuspidor","cuss","cussed","cussedness","cusses","cussing","cust","custard","custer","custid","custodial","custodian","custodianship","custody","custom","customadapter","customarily","customariness","customary","customcell","customer","customerid","customername","customers","customhouse","customizable","customization","customize","customized","customizing","customview","cut","cutaneous","cutaway","cutback","cute","cuteness","cutesy","cuticle","cutlass","cutler","cutlery","cutlet","cutoff","cutout","cuts","cutter","cutthroat","cutting","cuttle","cuttlebone","cuttlefish","cutup","cutworm","cuvier","cuzco","cv","cvs","cvtcolor","cw","cwd","cwiki","cwt","cx","cxf","cxx","cxxflags","cy","cyan","cyanamid","cyanate","cyanic","cyanide","cyanogen","cyb","cybele","cybernetic","cybernetics","cyberpunk","cyberspace","cybil","cybill","cyborg","cyclades","cyclamen","cycle","cycler","cycles","cycleway","cyclic","cyclical","cycling","cyclist","cyclohexanol","cycloid","cycloidal","cyclometer","cyclone","cyclonic","cyclopean","cyclopedia","cyclopes","cyclops","cyclotron","cyder","cygnet","cygnus","cygwin","cyl","cylinder","cylindric","cylindrical","cymbal","cymbalist","cymbre","cynde","cyndi","cyndia","cyndie","cyndy","cynic","cynical","cynicism","cynosure","cynthea","cynthia","cynthie","cynthy","cypher","cypreses","cypress","cyprian","cypriot","cyprus","cyrano","cyril","cyrill","cyrille","cyrillic","cyrillus","cyrus","cyst","cystic","cython","cytochemistry","cytologist","cytology","cytolysis","cytoplasm","cytoplasmic","cytosine","cytotoxic","cz","czar","czarevitch","czarina","czarism","czarist","czarship","czech","czechoslovak","czechoslovakia","czechoslovakian","czechs","czerniak","czerny","d","da","dab","dabbed","dabber","dabbing","dabble","dabbler","dac","dacca","dace","dacey","dacha","dachau","dachshund","dacia","dacie","dacron","dactyl","dactylic","dacy","dad","dada","dadaism","dadaist","daddy","dade","dado","dadoes","dados","daedalus","dael","daemon","daemoncommandexecution","daemonic","daffi","daffie","daffiness","daffodil","daffy","daft","daftness","dag","dagger","dagmar","dagny","dagscheduler","daguerre","daguerreotype","dagwood","dahl","dahlia","dahomey","daile","dailiness","daily","daimler","daintily","daintiness","dainty","daiquiri","dairy","dairying","dairyland","dairymaid","dairyman","dairymen","dairywoman","dairywomen","dais","daisey","daisi","daisie","daisy","dakar","dakota","dakotan","dal","dale","dalenna","daleth","daley","dalhousie","dali","dalia","dalian","dalila","dall","dallas","dalli","dalliance","dallier","dallon","dally","dalmatia","dalmatian","daloris","dalston","dalt","dalton","dalvik","dalvikvm","daly","dam","damage","damageable","damaged","damager","damaging","damara","damaris","damascus","damask","dame","damian","damiano","damien","damion","damita","dammed","damming","dammit","damn","damnably","damnation","damned","damnedest","damning","damocles","damon","damp","damped","dampen","dampener","damper","damping","dampness","damsel","damselfly","damson","dan","dana","danbury","dance","dancelike","dancer","dandelion","dander","dandify","dandily","dandle","dandruff","dandy","dane","danelaw","danell","danella","danette","dang","danger","dangerfield","dangerous","dangerousness","dangle","dangler","dangling","dani","dania","danial","danica","danice","danie","daniel","daniela","daniele","daniella","danielle","danielson","danika","danila","danish","danit","danita","dank","dankness","danna","dannel","danni","dannie","danny","dannye","danseuse","dante","danton","danube","danubian","danville","danya","danyelle","danyette","danzig","dao","daphene","daphna","daphne","dapibus","dapper","dapperness","dapple","dar","dara","darb","darbee","darbie","darby","darcee","darcey","darci","darcie","darcy","darda","dardanelles","dare","daredevil","daredevilry","dareen","darell","darelle","daren","darer","daresay","dari","daria","darice","darill","darin","daring","daringness","dario","darius","darjeeling","dark","darken","darkener","darker","darkish","darkly","darkness","darkroom","darla","darleen","darlene","darline","darling","darlingness","darlington","darlleen","darn","darnall","darned","darnell","darner","darning","daron","darpa","darrel","darrell","darrelle","darren","darrick","darrin","darrow","darryl","darsey","darsie","dart","dartboard","darter","darth","dartmouth","darvon","darwin","darwinian","darwinism","darwinist","darya","daryl","daryle","daryn","das","dash","dasha","dashboard","dashed","dasher","dashes","dashiki","dashing","dasi","dasie","dask","dastard","dastardliness","dastardly","dasya","dat","data","dataaccess","dataadapter","dataannotations","dataarray","database","databaseerror","databasehelper","databasename","databasereference","databases","databind","databinding","datacenter","datacolumn","datacontext","datacontract","datafield","datafile","dataflow","dataframe","dataframes","datagram","datagrid","datagridtemplatecolumn","datagridtextcolumn","datagridview","dataindex","datainputstream","dataitem","datalist","datamation","datamedia","datamember","datamodel","datanode","datanucleus","dataobject","dataoutputstream","datapoint","datapoints","dataprovider","datareader","datarow","datas","dataservice","dataset","datasets","datasheet","datasnapshot","datasource","datasourceid","datasources","datastax","datastore","datastream","datastring","datatable","datatables","datatemplate","datatextfield","datatransfer","datatrigger","datatype","datatypes","dataurl","datausingencoding","datavaluefield","dataview","date","dateadd","datecreated","dated","datediff","datedly","datedness","datefield","dateformat","dateformatter","datefrom","dateless","dateline","dateofbirth","datepart","datepicker","datepickerdialog","dater","daterange","dates","datestr","datestring","datetime","datetimefield","datetimeformat","datetimeformatter","datetimeoffset","datetimepicker","dateto","dateutil","datevalue","datha","dating","dative","datos","datsun","datum","daub","dauber","daugherty","daughter","daumier","daune","daunt","daunted","daunting","dauntless","dauntlessness","dauphin","dav","davao","dave","daveen","daven","davenport","daveta","davey","david","davida","davidde","davide","davidson","davie","davin","davina","davine","davinich","davis","davit","davita","davon","davy","dawdle","dawdler","dawes","dawn","dawna","dawson","day","daybed","daybreak","daycare","daydream","daydreamer","dayle","daylight","dayna","dayofmonth","dayofweek","days","daysack","daytime","dayton","daze","dazed","dazzle","dazzler","dazzling","db","dba","dbadapter","dbc","dbconn","dbconnect","dbconnection","dbcontext","dbcp","dbd","dbf","dbg","dbh","dbhelper","dbhost","dbi","dbl","dbms","dbname","dbnull","dbo","dbpath","dbpedia","dbs","dbset","dbtype","dbus","dbuser","dbutante","dc","dcc","dcollet","dcolletage","dct","dd","ddd","dddd","ddene","ddf","ddl","dds","ddt","de","deacon","deaconess","deactivate","dead","deadbeat","deadbolt","deaden","deadener","deadening","deadhead","deadline","deadliness","deadlock","deadly","deadness","deadpan","deadpanned","deadpanner","deadpanning","deadwood","deaf","deafen","deafening","deafness","deal","dealer","dealership","dealing","dealloc","deallocate","deallocated","deallocator","deals","dealt","dean","deana","deandre","deane","deanery","deann","deanna","deanne","deanship","dear","dearborn","dearness","dearth","dearths","deary","deassign","death","deathbed","deathblow","deathless","deathlike","deathly","deaths","deathtrap","deathward","deathwatch","deb","debacle","debar","debark","debarkation","debarment","debarring","debaser","debatable","debate","debater","debauch","debauched","debauchedness","debauchee","debaucher","debauchery","debbi","debbie","debby","debee","debenture","debera","debi","debian","debilitate","debilitation","debility","debit","debonair","debonairness","debor","debora","deborah","debouch","debounce","debra","debrief","debris","debt","debtor","debug","debugged","debugger","debugging","debussy","debut","dec","decade","decadency","decadent","decades","decaf","decaffeinate","decagon","decal","decalogue","decamp","decampment","decapitate","decapitator","decathlon","decatur","decay","decca","deccan","decease","decedent","deceit","deceitful","deceitfulness","deceive","deceived","deceiver","deceives","deceiving","deceivingly","decelerate","deceleration","decelerator","december","decency","decennial","decent","deception","deceptive","deceptiveness","decertify","dechlorinate","decibel","decidability","decidable","decide","decided","decidedness","decides","deciding","deciduous","deciduousness","decile","deciliter","decimal","decimalformat","decimals","decimate","decimation","decimeter","decipher","decipherable","decipherer","decision","decisional","decisioned","decisioning","decisions","decisive","decisiveness","deck","deckchair","decker","deckhand","decking","decl","declamation","declamatory","declarable","declaration","declarations","declarative","declarator","declaratory","declare","declared","declarer","declares","declaring","declension","declination","decline","decliner","declivity","declspec","decltype","decnet","deco","decode","decoded","decodefile","decoder","decoderesource","decodestream","decoding","decolletes","decolorising","decomposability","decomposable","decompose","decomposition","decompress","decongestant","deconstruction","deconvolution","decor","decorate","decorated","decorates","decorating","decoration","decorative","decorativeness","decorator","decorators","decorous","decorousness","decorticate","decortication","decorum","decorview","decoupage","decouple","decoy","decrease","decreases","decreasing","decree","decreeing","decrement","decremental","decrepit","decrepitude","decriminalization","decriminalize","decry","decrypt","decrypted","decryption","decstation","decsystem","dectape","decustomised","dede","dedekind","dedicate","dedicated","dedication","dedicative","dedicator","dedicatory","dedie","dedra","deduce","deducible","deduct","deductibility","deductible","deduction","deductive","dee","deeann","deeanne","deed","deeded","deedee","deeding","deejay","deem","deemphasis","deena","deep","deepcopy","deepen","deeper","deepish","deeply","deepness","deer","deerdre","deere","deerskin","deerstalker","deerstalking","deeyn","def","deface","defacement","defaecate","defalcate","defalcation","defamation","defamatory","defame","defamer","default","defaultactioninvocation","defaultbuildoperationexecutor","defaultcenter","defaultconfig","defaultdict","defaulter","defaultfilterchain","defaulthttpclient","defaulting","defaultlistablebeanfactory","defaultmanager","defaultmaven","defaults","defaultsingletonbeanregistry","defaulttablemodel","defaultvalue","defaultview","defeat","defeated","defeater","defeatism","defeatist","defeats","defecate","defecation","defect","defection","defective","defectiveness","defector","defend","defendant","defended","defenestrate","defense","defenseless","defenselessness","defenses","defensibility","defensible","defensibly","defensive","defensiveness","defer","deference","deferent","deferential","deferrable","deferral","deferred","deferrer","deferring","deffer","defiance","defiant","defibrillator","deficiency","deficient","deficit","defier","defile","defilement","definable","definably","define","defineclass","defined","defineproperty","definer","defines","defining","definite","definitely","definiteness","definition","definitional","definitions","definitive","definitiveness","defis","deflate","deflation","deflationary","deflect","deflected","deflection","deflector","defn","defocus","defocussing","defoe","defog","defogger","defoliant","defoliator","deform","deformational","deformed","deformity","defraud","defrauder","defrayal","defrost","defroster","defs","deft","deftness","defun","defunct","defy","defying","deg","degas","degassing","degauss","degeneracy","degenerate","degenerateness","degrade","degraded","degradedness","degrading","degrease","degree","degrees","degum","dehlia","dehumanize","dehydrator","deice","deicer","deictic","deidre","deification","deify","deign","deimos","deina","deirdre","deist","deistic","deity","deja","deject","dejected","dejectedness","dejection","dejesus","dekalb","dekastere","del","dela","delacroix","delacruz","delainey","delaney","delano","delaware","delawarean","delay","delayed","delayer","delays","delbert","delcina","delcine","delectable","delectableness","delectably","delectation","delegable","delegate","delegated","delegates","delegatingconstructoraccessorimpl","delegatingfilterproxy","delegatingmethodaccessorimpl","delegation","deleon","delete","deleted","deleterious","deleteriousness","deletes","deleting","deletion","delfs","delft","delftware","delgado","delhi","deli","delia","deliberate","deliberately","deliberateness","deliberative","deliberativeness","delibes","delicacy","delicate","delicateness","delicatenesses","delicates","delicatessen","delicious","deliciousness","delicti","delighted","delightedness","delightful","delightfulness","delila","delilah","delilahs","delim","delimited","delimiter","delimiters","delims","delinda","delineate","delineation","delinquency","delinquent","deliquesce","deliquescent","delirious","deliriousness","delirium","delius","deliver","deliverable","deliverables","deliverance","delivered","deliverer","delivering","delivers","delivery","deliverymen","dell","della","dellwood","delly","delmar","delmarva","delmer","delmonico","delmor","delmore","delora","delores","deloria","deloris","delphi","delphic","delphine","delphinia","delphinium","delphinus","delta","deltatime","deltax","deltay","deltoid","delude","deluder","deluding","deluge","delusion","delusional","delusive","delusiveness","deluxe","delve","delver","dem","demagnify","demagogic","demagogue","demagoguery","demagogy","demand","demander","demanding","demandingly","demands","demarcate","demarcation","demavend","demean","demeanor","demented","dementedness","dementia","demerol","demesne","demeter","demetra","demetre","demetri","demetria","demetrius","demigod","demijohn","demimondaine","demimonde","demineralization","deming","demise","demit","demitasse","demitted","demitting","demo","democracy","democrat","democratic","democratically","democratization","democratize","democratizes","democritus","demographer","demographic","demographical","demography","demolish","demolisher","demolition","demon","demonetization","demoniac","demoniacal","demonic","demonology","demonstrable","demonstrableness","demonstrably","demonstrate","demonstrated","demonstrates","demonstrating","demonstration","demonstrative","demonstrativeness","demonstrativenesses","demonstratives","demonstrator","demoralization","demoralizer","demoralizing","demorgan","demos","demosthenes","demote","demotic","demott","demount","dempsey","demulcent","demultiplex","demur","demure","demureness","demurral","demurred","demurrer","demurring","demythologization","demythologize","den","dena","dendrite","dene","deneb","denebola","deneen","deng","dengue","deni","deniable","denial","denice","denied","denier","denigrate","denigration","denim","denise","denizen","denmark","denna","denned","dennet","denney","denni","dennie","denning","dennison","denny","denominate","denominational","denominator","denote","denotes","denouement","denounce","denouncement","denouncer","dens","dense","densely","denseness","densitometer","densitometric","densitometry","density","dent","dental","dentifrice","dentin","dentine","dentist","dentistry","dentition","denture","denuclearize","denudation","denude","denuder","denunciate","denunciation","denver","deny","denying","denys","denyse","deodorant","deodorization","deodorize","deodorizer","deon","deonne","deoxyribonucleic","dep","depart","department","departmental","departmentalization","departmentalize","departmentid","departments","departure","depend","dependability","dependable","dependableness","dependably","dependant","dependence","dependencies","dependency","dependencyobject","dependencyproperty","dependent","dependentassembly","depending","depends","dependson","depict","depicted","depicter","depiction","depilatory","deplete","depletion","deplorable","deplorableness","deplorably","deplore","deplorer","deploring","deploy","deployable","deployed","deployer","deploying","deployment","deployments","depolarize","deponent","deport","deportation","deportee","deportment","depose","deposit","depositary","deposition","depositor","depository","depot","deprave","depraved","depravedness","depraver","depravity","deprecate","deprecated","deprecating","deprecation","deprecatory","depreciable","depreciate","depreciating","depreciation","depreciative","depress","depressant","depressible","depression","depressive","depressor","deprive","deps","dept","depth","depths","deputation","depute","deputize","deputy","deque","dequeue","dequeuereusablecell","dequeuereusablecellwithidentifier","der","derail","derailment","derange","derangement","derby","derbyshire","dereference","dereferencing","derek","derelict","dereliction","derick","deride","deriding","derision","derisive","derisiveness","derisory","derivable","derivate","derivation","derivative","derivativeness","derivatives","derive","derived","deriveddata","derives","deriving","derk","dermal","dermatitides","dermatitis","dermatological","dermatologist","dermatology","dermis","dermot","derogate","derogation","derogatorily","derogatory","derrek","derrick","derrida","derrik","derril","derringer","derrire","derron","derry","dervish","derward","derwin","des","desalinate","desalination","desalinization","desalinize","desalt","desc","descant","descartes","descend","descendant","descendants","descended","descendent","descender","descending","descends","descent","descr","describable","describe","described","describes","describing","description","descriptions","descriptive","descriptiveness","descriptor","descriptors","descry","desdemona","desecrate","desecrater","desecration","deselect","deserialization","deserialize","deserialized","deserializeobject","deserializer","deserializing","desert","deserter","desertification","desertion","deserunt","deserve","deserved","deservedness","deserves","deserving","desi","desiccant","desiccate","desiccation","desiccator","desiderata","desideratum","design","designable","designate","designated","designation","designational","designator","designed","designer","designers","designing","designs","desirabilia","desirability","desirable","desirableness","desirably","desirae","desire","desired","desiredcapabilities","desiree","desirer","desiri","desirous","desirousness","desist","desk","desktop","desktops","desmond","desmund","desolate","desolateness","desolater","desolating","desolation","desorption","despair","despairer","despairing","desperado","desperadoes","desperate","desperateness","desperation","despicable","despicably","despise","despiser","despite","despoil","despoilment","despond","despondence","despondency","despondent","despotic","despotically","despotism","dessert","dessicate","dest","destdir","destinate","destination","destinations","destinationviewcontroller","destine","destiny","destitute","destituteness","destitution","destroy","destroyed","destroyer","destroying","destroys","destruct","destructibility","destructible","destruction","destructive","destructiveness","destructor","destructors","destructuring","desuetude","desultorily","desultoriness","desultory","det","detach","detached","detachedness","detacher","detachment","detail","detailed","detailedness","details","detailview","detailviewcontroller","detain","detainee","detainer","detainment","detect","detectability","detectable","detectably","detected","detecting","detection","detective","detector","detects","detentes","detention","deter","detergency","detergent","deteriorate","deterioration","determent","determinability","determinable","determinableness","determinacy","determinant","determinate","determinateness","determination","determinative","determinativeness","determine","determined","determinedly","determinedness","determiner","determines","determining","determinism","deterministic","deterministically","deterred","deterrence","deterrent","deterring","deters","detersive","detestable","detestableness","detestably","detestation","dethrone","dethronement","detonable","detonate","detonated","detonation","detonator","detour","detox","detoxification","detoxify","detract","detractive","detribalize","detriment","detrimental","detritus","detroit","deuce","deuced","deus","deuterium","deuteron","deuteronomy","deutsch","dev","deva","devan","devanagari","devastate","devastating","devastation","devastator","devcenter","devdependencies","devel","develop","developed","developer","developerguide","developers","developerworks","developing","development","developmental","devexpress","devi","deviance","deviancy","deviant","deviate","deviated","deviating","deviation","device","deviceid","devicename","devices","devil","devilish","devilishness","devilment","devilry","deviltry","devin","devina","devinne","devious","deviousness","devise","deviser","devkit","devland","devlen","devlin","devoice","devolution","devolve","devon","devondra","devonian","devonna","devonne","devonshire","devops","devora","devote","devoted","devotee","devotion","devotional","devour","devourer","devout","devoutness","devs","devtools","devy","dew","dewain","dewar","dewayne","dewberry","dewclaw","dewdrop","dewey","dewie","dewiness","dewitt","dewlap","dewy","dex","dexedrine","dexes","dexter","dexterity","dexterous","dexterousness","dextrose","df","dfa","dfd","dff","dfs","dg","dgv","dh","dhaka","dhaulagiri","dhcp","dhe","dhoti","dhow","di","dia","diabase","diabetes","diabetic","diabolic","diabolical","diabolicalness","diabolism","diachronic","diacritic","diacritical","diadem","diaereses","diaeresis","diag","diaghilev","diagnometer","diagnosable","diagnose","diagnosed","diagnosis","diagnostic","diagnostically","diagnostician","diagnostics","diagonal","diagonalize","diagram","diagrammable","diagrammatic","diagrammaticality","diagrammatically","diagrammed","diagrammer","diagramming","diagrams","diahann","dial","dialect","dialectal","dialectic","dialectical","dialed","dialer","dialing","dialog","dialogflow","dialogfragment","dialogged","dialogging","dialoginterface","dialogresult","dialogs","dialogue","dials","dialysis","dialyzed","dialyzes","diam","diamagnetic","diameter","diametric","diametrical","diamond","diamondback","diamonds","dian","diana","diandra","diane","dianemarie","diann","dianna","dianne","diannne","diapason","diaper","diaphanous","diaphanousness","diaphragm","diaphragmatic","diarist","diarmid","diarrhea","diarrheal","diary","diaspora","diastase","diastole","diastolic","diathermy","diathesis","diatom","diatomic","diatonic","diatribe","diaz","dibble","dibs","dic","dicaprio","dice","dicer","dicey","dichloride","dichotomization","dichotomize","dichotomous","dichotomy","dicier","diciest","dicing","dick","dickens","dickensian","dicker","dickerson","dickey","dickie","dickier","dickiest","dickinson","dickson","dicky","dicotyledon","dicotyledonous","dict","dicta","dictaphone","dictate","dictation","dictator","dictatorial","dictatorialness","dictatorship","diction","dictionaries","dictionary","dicts","dictum","did","didactic","didactically","didactics","diddle","diddler","diderot","didfinishlaunchingwithoptions","didi","didn","didnt","dido","didoes","didreceivememorywarning","didselectrowatindexpath","didst","die","died","diefenbaker","diego","dieing","dielectric","diem","diena","dierdre","diereses","dieresis","dies","diesel","diet","dietary","dieter","dietetic","dietetics","diethylaminoethyl","diethylstilbestrol","dietitian","dietrich","dietz","dif","diff","differ","difference","differences","different","differentiability","differentiable","differential","differentiate","differentiated","differentiation","differentiator","differently","differentness","differing","differs","difficile","difficult","difficulties","difficulty","diffidence","diffident","diffract","diffraction","diffractometer","diffs","diffuse","diffuseness","diffuser","diffusible","diffusion","diffusional","diffusive","diffusiveness","diffusivity","dig","digerati","digest","digested","digester","digestibility","digestible","digestifs","digestion","digestive","digg","digger","digging","digit","digital","digitalis","digitalization","digitalized","digitalizes","digitalizing","digitalocean","digitalwrite","digitization","digitize","digitizer","digits","dignified","dignify","dignissim","dignitary","dignity","digram","digraph","digraphs","digress","digression","digressive","digressiveness","dihedral","dijit","dijkstra","dijon","dike","diker","diktat","dilan","dilapidate","dilapidation","dilatation","dilate","dilated","dilation","dilator","dilatoriness","dilatory","dilbert","dilemma","dilettante","dilettantish","dilettantism","diligence","diligent","diligentness","dilithium","dill","dillard","dillie","dilling","dillinger","dillis","dillon","dilly","dillydally","dilogarithm","diluent","dilute","diluted","diluteness","dilution","dim","dimaggio","dime","dimen","dimension","dimensional","dimensionality","dimensionless","dimensions","dimer","dimethyl","dimethylglyoxime","diminish","diminished","diminuendo","diminution","diminutive","diminutiveness","dimitri","dimitry","dimity","dimmed","dimmer","dimmest","dimming","dimness","dimorphism","dimple","dimply","dims","dimwit","dimwitted","din","dina","dinah","dinar","dine","diner","dinette","ding","dingbat","dinghy","dingily","dinginess","dingle","dingo","dingoes","dingus","dingy","dinky","dinned","dinner","dinnertime","dinnerware","dinnie","dinning","dinny","dino","dinosaur","dint","diocesan","diocese","diocletian","diode","diogenes","dion","dione","dionis","dionisio","dionne","dionysian","dionysus","diophantine","diopter","dior","diorama","dioxalate","dioxide","dioxin","dip","diphtheria","diphthong","diplexers","diploid","diploma","diplomacy","diplomat","diplomata","diplomatic","diplomatically","diplomatics","diplomatist","dipodic","dipody","dipole","dipped","dipper","dipping","dippy","dipsomania","dipsomaniac","dipstick","dipterous","diptych","diptychs","dir","dirac","dire","direct","directcast","directed","direction","directional","directionality","directions","directive","directives","directivity","directly","directness","director","directorate","directorial","directories","directorship","directory","directoryentry","directoryinfo","directrix","directs","directx","direful","direness","dirge","dirichlet","dirigible","dirk","dirname","dirndl","dirpath","dirs","dirt","dirtily","dirtiness","dirty","dis","disable","disabled","disablement","disabler","disables","disabling","disabuse","disadvantage","disadvantaged","disadvantages","disagree","disagreeable","disallow","disambiguate","disappear","disappeared","disappearing","disappears","disappointed","disappointing","disarming","disarrange","disaster","disastrous","disband","disbandment","disbar","disbarment","disbarring","disbelieving","disbursal","disburse","disbursement","disburser","disc","discard","discarded","discern","discerner","discernibility","discernible","discernibly","discerning","discernment","discharged","disciple","discipleship","disciplinarian","disciplinary","discipline","disciplined","discipliner","disciplines","disciplining","disclaimer","disclosed","disclosure","disco","discography","discolor","discolored","discoloreds","discombobulate","discomfit","discomfiture","discommode","disconcerting","disconnect","disconnected","disconnectedness","disconnecter","disconsolate","discord","discordance","discordant","discorporate","discotheque","discount","discourage","discouraged","discouragement","discouraging","discover","discoverable","discovered","discoverer","discovering","discovery","discreet","discreetly","discreetness","discrepancy","discrepant","discrete","discreteness","discreteobjectkeyframe","discretion","discretionary","discretization","discretized","discriminable","discriminant","discriminate","discriminated","discriminating","discrimination","discriminator","discriminatory","discursiveness","discus","discuss","discussant","discussed","discusser","discusses","discussing","discussion","discussions","disdain","disdainful","disdainfulness","disease","disembowel","disembowelment","disengage","disfigure","disfigurement","disfranchise","disfranchisement","disgorge","disgrace","disgracer","disgruntle","disgruntlement","disguise","disguised","disguiser","disgust","disgusted","disgustful","disgusting","dish","dishabille","disharmonious","dishcloth","dishcloths","dishevel","dishevelment","dishonest","dishonored","dishpan","dishrag","dishtowel","dishwasher","dishwater","disillusion","disillusionment","disinfectant","disinherit","disinterested","disinterestedness","disinvest","disjoin","disjointedness","disjunct","disjunctive","disk","diskette","disks","dislike","dislodge","dislodgement","dismal","dismalness","dismantle","dismantlement","dismay","dismayed","dismaying","dismember","dismemberment","dismiss","dismissed","dismissive","dismissviewcontrolleranimated","disney","disneyland","disoblige","disorder","disordered","disorderedness","disorderliness","disorderly","disorganize","disorganized","disp","disparage","disparagement","disparager","disparaging","disparate","disparateness","dispatch","dispatched","dispatcher","dispatcherservlet","dispatchevent","dispatcheventimpl","dispatching","dispatchmessage","dispatchqueue","dispatchtouchevent","dispel","dispelled","dispelling","dispensable","dispensary","dispensate","dispensation","dispense","dispenser","dispersal","dispersant","disperse","dispersed","disperser","dispersible","dispersion","dispersive","dispersiveness","dispirit","displace","display","displayalerts","displayclass","displayed","displayfor","displaying","displaymetrics","displayname","displays","displease","displeased","displeasure","disport","disposable","disposal","dispose","disposed","disposing","disposition","dispositional","disproportional","disproportionate","disproportionation","disprove","disputable","disputably","disputant","disputation","disputatious","dispute","disputed","disputer","disquiet","disquieting","disquisition","disqus","disraeli","disregard","disregardful","disrepair","disreputable","disreputableness","disrepute","disrespect","disrupt","disrupted","disrupter","disruption","disruptive","disruptor","dissatisfy","dissect","dissed","dissemble","dissembler","disseminate","dissemination","dissension","dissent","dissenter","dissertation","disservice","disses","dissever","dissidence","dissident","dissimilar","dissing","dissipate","dissipated","dissipatedly","dissipatedness","dissipater","dissipation","dissociable","dissociate","dissociated","dissociation","dissociative","dissoluble","dissolute","dissoluteness","dissolve","dissolved","dissonance","dissonant","dissuade","dissuader","dissuasive","dist","distaff","distal","distance","distances","distant","distantness","distaste","distemper","distend","distension","distention","distillate","distillation","distillery","distinct","distincter","distinctest","distinction","distinctive","distinctiveness","distinctness","distinguish","distinguishable","distinguishably","distinguished","distinguisher","distort","distorted","distorter","distortion","distract","distracted","distractedness","distracting","distrait","distraught","distress","distressful","distressing","distribute","distributed","distributer","distributing","distribution","distributional","distributions","distributive","distributiveness","distributivity","distributor","distributorship","district","distro","distrust","disturb","disturbance","disturbed","disturber","disturbing","distutils","disulfide","disuse","disyllable","dita","ditch","ditcher","dither","ditsy","ditto","ditty","ditz","ditzel","diuresis","diuretic","diurnal","div","diva","divalent","divan","dive","dived","diver","diverge","divergence","divergent","diverse","diverseness","diversification","diversifier","diversify","diversion","diversionary","diversity","divert","diverticulitis","divertimento","divest","divestiture","divestment","divid","dividable","divide","divided","dividend","divider","dividing","divination","divine","diviner","divinity","divisibility","divisible","division","divisional","divisions","divisive","divisiveness","divisor","divorce","divorcement","divot","divs","divulge","divvy","dix","dixie","dixiecrat","dixieland","dixon","dizzily","dizziness","dizzy","dizzying","dj","djakarta","django","djangoproject","djava","djellaba","djellabah","djibouti","dk","dl","dlg","dlib","dll","dllexport","dllimport","dlls","dlopen","dm","dma","dmd","dmg","dmitri","dml","dmod","dms","dmz","dn","dna","dname","dnepr","dnepropetrovsk","dnieper","dniester","dniren","dnn","dns","do","doa","doable","dob","dobbin","doberman","dobro","doc","docent","docid","docile","docility","dock","docker","dockerfile","docket","dockland","dockpanel","dockside","dockworker","dockyard","docmd","docreatebean","docs","doctor","doctoral","doctorate","doctorow","doctors","doctrinaire","doctrinal","doctrine","doctype","docudrama","document","documentary","documentation","documentbuilder","documentbuilderfactory","documented","documentelement","documentid","documentroot","documents","documentsdirectory","docusign","docx","dod","dodder","dode","dodecahedra","dodecahedral","dodecahedron","dodge","dodgem","dodger","dodgson","dodi","dodie","dodington","dodo","dodoma","dodson","dody","doe","doer","does","doeskin","doesn","doesnt","doevents","doexecute","doff","dofilter","dofilterinternal","dog","dogcart","dogcatcher","doge","dogeared","doget","dogetbean","dogfight","dogfish","dogfought","dogged","doggedness","doggerel","dogging","doggone","doggy","doghouse","dogie","dogleg","doglegged","doglegging","dogma","dogmatic","dogmatically","dogmatics","dogmatism","dogmatist","dogs","dogsbody","dogtooth","dogtown","dogtrot","dogtrotted","dogtrotting","dogwood","dogy","doh","doha","doi","doily","doinbackground","doing","doit","dojo","dolby","doldrum","doldrums","dole","doled","doleful","dolefuller","dolefullest","dolefulness","doles","dolf","doling","doll","dollar","dollars","dolley","dolli","dollie","dollop","dolly","dolmen","dolomite","dolomitic","dolor","dolore","dolores","dolorita","dolorous","dolph","dolphin","dolt","doltish","doltishness","dom","domain","domainname","domains","domcontentloaded","domdocument","dome","domelement","domenic","domenico","domeniga","domesday","domestic","domestically","domesticate","domesticated","domestication","domesticity","domicile","domiciliary","dominance","dominant","dominate","domination","dominator","dominatrices","dominatrix","domineer","domineering","domineeringness","dominga","domingo","dominguez","domini","dominic","dominica","dominican","dominick","dominik","dominion","dominique","domino","dominoes","domitian","dompdf","don","dona","donahue","donal","donald","donaldson","donall","donalt","donate","donatello","donation","donations","donative","donaugh","donavon","done","donec","donella","donelle","donetsk","donetta","dong","dongle","donia","donica","donielle","donizetti","donkey","donn","donna","donnamarie","donne","donned","donnell","donnelly","donner","donni","donnie","donning","donnish","donnishness","donny","donnybrook","donor","donovan","dont","donut","donutted","donutting","doodad","doodle","doodlebug","doodler","doohickey","dooley","doolittle","doom","doomsday","doonesbury","door","doorbell","doorhandles","doorkeep","doorkeeper","doorknob","doorman","doormat","doormen","doornail","doorplate","doors","doorstep","doorstepped","doorstepping","doorstop","doorway","dooryard","dopa","dopamine","dopant","dope","doper","dopey","dopier","dopiest","dopiness","dopost","doppler","doprivileged","dor","dora","dorado","doralia","doralin","doralyn","doralynn","doralynne","dorcas","dorchester","doreen","dorelia","dorella","dorelle","dorena","dorene","doretta","dorette","dorey","dori","doria","dorian","doric","dorice","dorie","dorine","dorisa","dorise","dorita","dork","dorky","dorm","dormancy","dormant","dormer","dormice","dormitory","dormouse","doro","dorolice","dorolisa","dorotea","doroteya","dorothea","dorothee","dorothy","dorree","dorri","dorrie","dorry","dorsal","dorsey","dorthea","dorthy","dortmund","dory","dos","dosage","dose","dosi","dosimeter","dosimetry","dosomething","dossier","dost","dostart","dostoevsky","dostuff","dot","dotage","dotard","dote","doter","doti","doting","dotnet","dotnetfiddle","dots","dotson","dotted","dotti","dottie","dottiness","dotting","dotty","douala","douay","double","doubleanimation","doubled","doubleday","doubleheader","doubleness","doubler","doubles","doublespeak","doublet","doublethink","doubleton","doublevalue","doubling","doubloon","doubly","doubt","doubted","doubter","doubtful","doubtfulness","doubting","doubtless","doubtlessness","doubts","douche","doug","dough","dougherty","doughs","doughty","doughy","dougie","douglas","douglass","dougy","dour","dourness","douro","douse","douser","dov","dove","dovecote","dover","dovetail","dovish","dow","dowager","dowdily","dowdiness","dowdy","dowel","dower","down","downbeat","downcase","downcast","downdraft","downer","downey","downfall","downgrade","downhearted","downheartedness","downhill","downland","download","downloadable","downloaded","downloader","downloadfile","downloading","downloadmanager","downloads","downloadurl","downpipes","downplay","downpour","downrange","downright","downrightness","downriver","downs","downscale","downside","downsides","downsize","downslope","downspout","downstage","downstairs","downstate","downstream","downswing","downtime","downto","downtown","downtowner","downtrend","downtrodden","downturn","downvote","downvoted","downvotes","downward","downwardness","downwind","downy","dowork","dowry","dowse","dowser","doxology","doxygen","doy","doyen","doyenne","doyle","doz","doze","dozen","dozens","dozenths","dozer","dozy","dp","dpi","dpkg","dplyr","dps","dpt","dq","dr","drab","drabbed","drabber","drabbest","drabbing","drabness","drachma","draco","draconian","dracula","draft","draftee","drafter","draftily","draftiness","drafting","draftsman","draftsmanship","draftsmen","draftsperson","draftswoman","draftswomen","drafty","drag","draggable","dragged","dragger","dragging","draggy","dragnet","dragon","dragonfly","dragonhead","dragoon","drailleur","drain","drainage","drainboard","drained","drainer","drainpipe","drake","dram","drama","dramamine","dramatic","dramatical","dramatically","dramatics","dramatist","dramatization","dramatize","dramatized","dramatizer","dramaturgy","drambuie","drammed","dramming","drank","drano","drape","draper","drapery","drastic","drastically","drat","dratted","dratting","dravidian","draw","drawable","drawables","drawback","drawbacks","drawbitmap","drawbridge","drawchart","drawer","drawerlayout","drawimage","drawing","drawl","drawler","drawline","drawling","drawly","drawn","drawnly","drawnness","drawrect","draws","drawstring","drawtext","dray","dre","dread","dreadful","dreadfulness","dreadlocks","dreadnought","dream","dreamboat","dreamed","dreamer","dreamily","dreaminess","dreaming","dreamland","dreamless","dreamlessness","dreamlike","dreamweaver","dreamworld","dreamy","drear","drearily","dreariness","dreary","dreddy","dredge","dredger","dredi","dreg","dreiser","drench","drencher","drer","dresden","dress","dressage","dressed","dresser","dresses","dressiness","dressing","dressmaker","dressmaking","dressy","drew","drexel","dreyfus","dreyfuss","drib","dribble","dribbler","driblet","dried","drier","drift","drifter","drifting","driftwood","drill","driller","drilling","drillmaster","drink","drinkable","drinker","drinking","drinks","drip","dripped","dripping","drippy","drive","drivel","driveler","driven","driver","driverclassname","drivermanager","drivers","drives","driveway","driving","drizzle","drizzling","drizzly","drm","drogue","droid","droll","drollery","drollness","drolly","dromedary","drona","drone","droning","drool","drools","droop","droopiness","drooping","droopy","drop","dropbox","dropboxusercontent","dropdown","dropdownlist","dropdownlistfor","dropdowns","drophead","dropkick","droplet","dropout","droppable","dropped","dropper","dropping","drops","dropsical","dropsy","dropzone","drosophila","dross","drought","drove","drover","drown","drowner","drowse","drowsily","drowsiness","drowsy","dru","drub","drubbed","drubber","drubbing","druci","drucie","drucill","drucy","drud","drudge","drudger","drudgery","drudging","drug","drugged","druggie","drugging","druggist","drugi","drugless","drugs","drugstore","druid","druidism","drum","drumbeat","drumhead","drumlin","drummed","drummer","drumming","drummond","drumstick","drunk","drunkard","drunken","drunkenness","drupal","drupe","drury","drusi","drusie","drusilla","drusy","druthers","drv","drwxr","dry","dryad","dryden","dryer","dryish","dryness","drys","drystone","drywall","ds","dsa","dsc","dshabill","dshubba","dsl","dsn","dsp","dss","dsseldorf","dst","dt","dtd","dte","dtente","dtm","dto","dtp","dts","dtype","dtypes","du","dual","dualism","dualist","dualistic","duality","duane","dub","dubai","dubbed","dubber","dubbin","dubbing","dubcek","dubhe","dubiety","dubious","dubiousness","dublin","dubrovnik","dubuque","ducal","ducat","duce","duchamp","duchess","duchy","duck","duckbill","ducker","duckling","duckpins","duckpond","duckweed","ducky","duct","ducted","ductile","ductility","ducting","ductless","ducts","ductwork","dud","dudder","dude","dudgeon","dudley","due","duedate","duel","duelist","dueness","duenna","duet","duetted","duetting","duff","duffel","duffer","duffie","duffy","dug","dugald","dugout","duh","dui","duis","duisburg","duke","dukedom","dukey","dukie","duky","dulce","dulcea","dulcet","dulci","dulcia","dulciana","dulcie","dulcify","dulcimer","dulcine","dulcinea","dulcy","dull","dullard","dulles","dullness","dully","dulness","dulsea","duluth","duly","dumas","dumb","dumbbell","dumbfound","dumbness","dumbo","dumbstruck","dumbwaiter","dumdum","dummies","dummy","dumont","dump","dumped","dumper","dumpiness","dumping","dumpling","dumps","dumpster","dumpty","dumpy","dun","dunant","dunbar","dunc","duncan","dunce","dundee","dunderhead","dune","dunedin","dung","dungaree","dungeon","dunghill","dunham","dunk","dunker","dunkirk","dunlap","dunn","dunne","dunned","dunner","dunnest","dunning","dunno","dunstan","duo","duodecimal","duodena","duodenal","duodenum","duologue","duopolist","duopoly","dup","dupe","duper","dupion","duple","duplex","duplexer","duplicability","duplicable","duplicate","duplicated","duplicates","duplicating","duplication","duplicative","duplicator","duplicitous","duplicity","dupont","dur","durability","durable","durableness","durably","duracell","duran","durance","durand","durant","durante","duration","durational","durban","duress","durex","durham","during","durkee","durkheim","durocher","durst","durum","durward","duse","dusenberg","dusenbury","dushanbe","dusk","duskiness","dusky","dust","dustbin","dustcart","dustcover","duster","dustily","dustin","dustiness","dusting","dustless","dustman","dustmen","dustpan","dusty","dutch","dutchman","dutchmen","dutchwoman","dutchwomen","duteous","dutiable","dutiful","dutifulness","duty","duvalier","duvet","duxes","dv","dvd","dvina","dvork","dw","dwain","dwarf","dwarfish","dwarfism","dwayne","dweeb","dwell","dweller","dwelling","dwelt","dwi","dwight","dwindle","dword","dx","dximagetransform","dy","dyad","dyadic","dyan","dyana","dyane","dyann","dyanna","dyanne","dybbuk","dybbukim","dye","dyed","dyeing","dyer","dyes","dyestuff","dying","dyke","dylan","dyld","dylib","dyn","dyna","dynah","dynamic","dynamical","dynamically","dynamicresource","dynamics","dynamism","dynamite","dynamiter","dynamized","dynamo","dynamodb","dynastic","dynasty","dyne","dyno","dysentery","dysfunction","dysfunctional","dyslectic","dyslexia","dyslexic","dyslexically","dyspepsia","dyspeptic","dysprosium","dystopia","dystrophy","dz","dzerzhinsky","e","ea","each","eachelle","eada","eadie","eadith","eadmund","eager","eagerness","eagle","eaglet","eakins","eal","ealasaid","eamon","ean","eap","ear","earache","eardrum","earful","earhart","earing","earl","earldom","earle","earlene","earlie","earlier","earliest","earline","earliness","earlobe","early","earmark","earmuff","earn","earned","earner","earnest","earnestine","earnestness","earning","earnings","earp","earphone","earpieces","earplug","earring","earshot","earsplitting","earth","eartha","earthbound","earthed","earthenware","earthiness","earthliness","earthling","earthly","earthmen","earthmover","earthmoving","earthquake","earths","earthshaking","earthward","earthwork","earthworm","earthy","earvin","earwax","earwig","earwigged","earwigging","ease","eased","easel","easement","easer","eases","easier","easies","easiest","easily","easiness","easing","east","eastbound","easter","easterly","eastern","easterner","easternmost","easthampton","easting","eastland","eastman","eastward","eastwick","eastwood","easy","easygoing","easygoingness","eat","eatable","eatables","eaten","eater","eatery","eating","eaton","eave","eavesdrop","eavesdropped","eavesdropper","eavesdropping","eax","eb","eba","ebay","ebb","ebba","ebcdic","eben","ebeneezer","ebeneser","ebenezer","eberhard","eberto","ebola","ebonee","ebonics","ebony","ebook","ebp","ebro","ebs","ebullience","ebullient","ebullition","ebx","ec","ecb","ecc","eccentric","eccentrically","eccentricity","eccl","eccles","ecclesiastes","ecclesiastic","ecclesiastical","ecdh","ecdhe","ecdsa","ecg","echelon","echinoderm","echo","echoed","echoes","echoic","echoing","echolocation","eclectic","eclectically","eclecticism","eclipse","eclipselink","ecliptic","eclogue","ecma","ecmascript","eco","ecocide","ecol","ecole","ecologic","ecological","ecologist","ecology","ecommerce","econ","econometric","econometrica","econometricians","econometrics","economic","economical","economics","economist","economization","economize","economizer","economizing","economy","ecosystem","ecru","ecs","ecstasy","ecstatic","ecstatically","ect","ectoplasm","ecuador","ecuadoran","ecuadorean","ecuadorian","ecumenic","ecumenical","ecumenicism","ecumenicist","ecumenics","ecumenism","ecumenist","ecx","eczema","ed","eda","edam","edan","edd","edda","eddi","eddie","eddy","ede","edee","edeline","edelweiss","edema","edematous","eden","edgar","edgard","edgardo","edge","edgeless","edger","edgerton","edges","edgewater","edgewise","edgewood","edgily","edginess","edging","edgy","edi","edibility","edible","edibleness","edict","edie","edification","edifice","edifier","edify","edifying","edik","edin","edinburgh","edison","edit","edita","editable","edited","edith","editha","edithe","editing","edition","editions","edititemtemplate","editor","editorfor","editorial","editorialist","editorialize","editorializer","editors","editorship","edits","edittext","ediva","edlin","edm","edmon","edmond","edmonton","edmund","edmx","edna","edouard","edp","eds","edsel","edsger","edt","edu","eduard","eduardo","educ","educability","educable","educate","educated","education","educational","educationalists","educationists","educative","educator","educe","eduction","eduino","edutainment","edvard","edward","edwardian","edwardo","edwin","edwina","edx","edy","edyth","edythe","ee","eec","eee","eeg","eek","eel","eelgrass","eeo","eeoc","eerie","eerily","eeriness","eeyore","ef","eff","efface","effaceable","effacement","effacer","effect","effective","effectively","effectiveness","effectives","effector","effects","effectual","effectualness","effectuate","effectuation","effeminacy","effeminate","effendi","efferent","effervesce","effervescence","effervescent","effete","effeteness","efficacious","efficaciousness","efficacy","efficiency","efficient","efficiently","effie","effigy","effloresce","efflorescence","efflorescent","effluence","effluent","effluvia","effluvium","efflux","effluxion","effort","effortless","effortlessness","efforts","effrontery","effulgence","effulgent","effuse","effusion","effusive","effusiveness","efl","efrain","efrem","efren","eft","eg","ega","egad","egalitarian","egalitarianism","egalitarians","egan","egbert","egerton","egestas","eget","egg","eggbeater","eggcup","egger","egghead","eggheaded","eggnog","eggplant","eggs","eggshell","egis","egl","eglantine","ego","egocentric","egocentrically","egocentricity","egoism","egoist","egoistic","egoistical","egomania","egomaniac","egon","egor","egotism","egotist","egotistic","egotistical","egregious","egregiousness","egrep","egress","egret","egypt","egyptian","egyptology","eh","ehcache","ehrlich","ei","eichmann","eid","eider","eiderdown","eidetic","eiffel","eigen","eigenfunction","eigenstate","eigenvalue","eigenvector","eight","eighteen","eighteenths","eightfold","eighth","eighths","eightieths","eightpence","eighty","eileen","eilis","eimile","einstein","einsteinian","einsteinium","eire","eirena","eisenhower","eisenstein","eisner","eisteddfod","either","eiusmod","ej","ejabberd","ejaculate","ejaculation","ejaculatory","ejb","eject","ejecta","ejection","ejector","ejs","ekaterina","ekberg","eke","eked","ekg","ekstrom","el","elaborate","elaborateness","elaboration","elaborators","elaina","elaine","elana","eland","elane","elanor","elans","elapse","elapsed","elapsedtime","elastic","elastically","elasticated","elasticbeanstalk","elasticity","elasticize","elasticsearch","elastodynamics","elastomer","elate","elated","elatedness","elater","elation","elayne","elb","elba","elbe","elbert","elberta","elbertina","elbertine","elbow","elbowroom","elbrus","elden","elder","elderberry","elderflower","elderliness","elderly","eldest","eldin","eldon","eldorado","eldredge","eldridge","ele","eleanor","eleanora","eleanore","eleazar","elect","electable","elected","election","electioneer","elective","electiveness","elector","electoral","electorate","electra","electress","electric","electrical","electricalness","electrician","electricity","electrification","electrifier","electrify","electro","electrocardiogram","electrocardiograph","electrocardiographs","electrocardiography","electrochemical","electrocute","electrocution","electrode","electrodynamic","electrodynamics","electroencephalogram","electroencephalograph","electroencephalographic","electroencephalographs","electroencephalography","electrologist","electroluminescent","electrolysis","electrolyte","electrolytic","electrolytically","electrolyze","electromagnet","electromagnetic","electromagnetically","electromagnetism","electromechanical","electromechanics","electromotive","electromyograph","electromyographic","electromyographically","electromyography","electron","electronegative","electronic","electronically","electronics","electrophoresis","electrophorus","electroplate","electroscope","electroscopic","electroshock","electrostatic","electrostatics","electrotherapist","electrotype","electroweak","eleemosynary","eleen","elegance","elegant","elegiac","elegiacal","elegy","eleifend","elem","element","elemental","elementarily","elementariness","elementary","elementat","elementid","elementname","elementref","elements","elementtree","elementtype","elementum","elems","elena","elene","eleni","elenore","eleonora","eleonore","elephant","elephantiases","elephantiasis","elephantine","elev","elevate","elevated","elevation","elevator","eleven","elevens","elevenths","elf","elfie","elfin","elfish","elfreda","elfrida","elfrieda","elga","elgar","eli","elia","elianora","elianore","elicia","elicit","elicitation","elide","elie","elif","eligibility","eligible","elihu","elijah","eliminate","eliminated","eliminates","eliminating","elimination","eliminator","elinor","elinore","eliot","elisa","elisabet","elisabeth","elisabetta","elise","eliseo","elisha","elision","elissa","elit","elita","elite","elitism","elitist","elixir","eliza","elizabet","elizabeth","elizabethan","elk","elka","elke","elkhart","ell","ella","elladine","ellary","elle","ellen","ellene","ellerey","ellery","ellesmere","ellette","elli","ellie","ellington","elliot","elliott","ellipse","ellipsis","ellipsoid","ellipsoidal","ellipsometer","ellipsometry","elliptic","elliptical","ellipticity","ellison","ellissa","ellswerth","ellsworth","ellwood","elly","ellyn","ellynn","elm","elma","elmah","elmer","elmhurst","elmira","elmo","elmore","elmsford","elna","elnar","elnath","elnora","elnore","elocution","elocutionary","elocutionist","elodea","elohim","eloisa","eloise","elongate","elongation","elonore","elope","elopement","eloper","eloquence","eloquent","elora","eloy","elroy","els","elsa","elsbeth","else","elseif","elset","elsewhere","elsey","elsi","elsie","elsif","elsinore","elspeth","elston","elsworth","elsy","elt","eltanin","elton","eluate","elucidate","elucidation","elude","elusive","elusiveness","elute","elution","elva","elven","elver","elvera","elves","elvia","elvin","elvina","elvira","elvis","elvish","elvyn","elwin","elwira","elwood","elwyn","ely","elyn","elyse","elysees","elysha","elysia","elysian","elysium","elyssa","em","ema","emaciate","emaciation","emacs","email","emailaddress","emailid","emails","emalee","emalia","emanate","emanation","emancipate","emancipation","emancipator","emanuel","emanuele","emasculate","emasculation","embalm","embalmer","embank","embankment","embarcadero","embargo","embargoes","embark","embarkation","embarrass","embarrassed","embarrassedly","embarrassing","embarrassment","embassy","embattle","embed","embeddable","embedded","embedder","embedding","embellish","embellished","embellisher","embellishment","ember","emberjs","embezzle","embezzlement","embezzler","embitter","embitterment","emblazon","emblazonment","emblem","emblematic","embodier","embodiment","embody","embolden","embolism","embosom","emboss","embosser","embouchure","embower","embrace","embraceable","embracer","embracing","embrasure","embrittle","embrocation","embroider","embroiderer","embroidery","embroil","embroilment","embryo","embryologist","embryology","embryonic","emcee","emceeing","emelda","emelen","emelia","emelina","emeline","emelita","emelyne","emend","emendation","emera","emerald","emerge","emergence","emergency","emergent","emerita","emeritae","emeriti","emeritus","emerson","emery","emetic","emf","emigrant","emigrate","emigration","emil","emile","emilee","emili","emilia","emilie","emiline","emilio","emily","eminence","eminent","emir","emirate","emissary","emission","emissivity","emit","emits","emittance","emitted","emitter","emitting","emlen","emlyn","emlynn","emlynne","emma","emmalee","emmaline","emmalyn","emmalynn","emmalynne","emmanuel","emmeline","emmerich","emmery","emmet","emmett","emmey","emmi","emmie","emmit","emmott","emmy","emmye","emogene","emoji","emollient","emolument","emory","emote","emotion","emotional","emotionalism","emotionality","emotionalize","emotionless","emotive","emp","empaneled","empaneling","empath","empathetic","empathetical","empathic","empathize","empathy","emperor","emphases","emphasis","emphasize","emphatic","emphatically","emphysema","emphysematous","empid","empire","empiric","empirical","empiricism","empiricist","emplace","emplacement","employ","employability","employable","employed","employee","employeeid","employeename","employees","employer","employers","employment","empname","empno","emporium","empower","empowerment","empress","emptier","emptily","emptiness","empty","empyrean","emr","ems","emt","emu","emulate","emulated","emulation","emulative","emulator","emulators","emulsification","emulsifier","emulsify","emulsion","emyle","emylee","en","enable","enabled","enabledelayedexpansion","enableevents","enabler","enables","enabling","enact","enactment","ename","enamel","enameler","enamelware","enamor","enc","encamp","encampment","encapsulate","encapsulated","encapsulation","encase","encasement","encephalitic","encephalitides","encephalitis","encephalographic","encephalopathy","enchain","enchant","enchanter","enchanting","enchantment","enchantress","enchilada","encipher","encipherer","encircle","encirclement","encl","enclave","enclose","enclosed","enclosing","enclosure","encode","encoded","encoder","encodes","encodeuricomponent","encoding","encodings","encomium","encompass","encore","encounter","encountered","encountering","encounters","encourage","encouraged","encouragement","encourager","encouraging","encroach","encroacher","encroachment","encrust","encrustation","encrypt","encrypted","encrypting","encryption","enctype","encumber","encumbered","encumbrance","encumbrancer","ency","encyclical","encyclopaedia","encyclopedia","encyclopedic","encyst","encystment","end","endanger","endangerment","endblock","enddate","endear","endearing","endearment","endeavor","endeavored","endeavorer","ended","endemic","endemically","endemicity","ender","endfor","endforeach","endgame","endian","endicott","endif","endindex","ending","endings","endive","endl","endless","endlessness","endmost","endnote","endocrine","endocrinologist","endocrinology","endogamous","endogamy","endogenous","endomorphism","endorse","endorsement","endorser","endoscope","endoscopic","endoscopy","endosperm","endothelial","endothermic","endow","endowment","endpoint","endpoints","endregion","ends","endswith","endtime","endue","endungeoned","endurable","endurably","endurance","endure","enduring","enduringness","endways","endwhile","endymion","ene","enema","enemies","enemy","energetic","energetically","energetics","energize","energized","energizer","energy","enervate","enervation","enfeeble","enfeeblement","enfilade","enfold","enforce","enforceability","enforceable","enforced","enforcement","enforcer","enforcible","enforcing","enfranchise","enfranchisement","enfranchiser","eng","engage","engagement","engaging","engel","engelbert","engender","engine","engineer","engineering","engineers","engines","england","englebert","englewood","english","englishman","englishmen","englishwoman","englishwomen","engorge","engorgement","engracia","engram","engrave","engraver","engraving","engross","engrossed","engrosser","engrossing","engrossment","engulf","engulfment","enhance","enhanceable","enhanced","enhancement","enhancer","enharmonic","enid","enif","enigma","enigmatic","enigmatically","enim","eniwetok","enjambement","enjambment","enjoin","enjoinder","enjoy","enjoyability","enjoyable","enjoyableness","enjoyably","enjoyed","enjoyment","enkidu","enlarge","enlargeable","enlargement","enlarger","enlighten","enlightened","enlightening","enlightenment","enlist","enlistee","enlister","enlistment","enliven","enlivenment","enmesh","enmeshment","enmity","ennis","ennoble","ennoblement","ennobler","ennui","enoch","enoent","enormity","enormous","enormousness","enos","enough","enoughs","enplane","enqueue","enquirer","enquiringly","enquiry","enrage","enrapture","enrica","enrich","enricher","enrichetta","enrichment","enrico","enrika","enrique","enriqueta","enrobed","enroll","enrollee","enrollment","ens","ensconce","ensemble","enshrine","enshrinement","enshroud","ensign","ensilage","enslave","enslavement","enslaver","ensnare","ensnarement","ensolite","ensue","ensure","ensurer","ensures","ensuring","ent","entail","entailer","entailment","entangle","entanglement","entangler","entente","enter","entered","enterer","entering","enteritides","enteritis","enterprise","enterpriser","enterprising","enters","entertain","entertainer","entertaining","entertainment","enthalpy","enthrall","enthrallment","enthrone","enthronement","enthuse","enthusiasm","enthusiast","enthusiastic","enthusiastically","entice","enticement","enticing","entire","entirely","entirerow","entirety","entities","entitle","entitled","entitlement","entity","entityframework","entityframeworkcore","entityid","entitymanager","entitymanagerfactory","entityname","entitystate","entitytype","entomb","entombment","entomological","entomologist","entomology","entourage","entr","entrails","entrain","entrainer","entrance","entrancement","entranceway","entrancing","entrant","entrap","entrapment","entrapped","entrapping","entre","entreat","entreating","entreaty","entrench","entrenchment","entrepreneur","entrepreneurial","entrepreneurs","entrepreneurship","entries","entropic","entropy","entrust","entry","entrypoint","entryset","entryway","entwine","enum","enumerable","enumerate","enumerated","enumerates","enumerating","enumeration","enumerative","enumerator","enums","enunciable","enunciate","enunciated","enunciation","enureses","enuresis","env","envelop","envelope","enveloper","envelopment","envenom","enviable","enviableness","enviably","envied","envier","envious","enviousness","environ","environment","environmental","environmentalism","environmentalist","environments","envisage","envision","envoy","envs","envy","envying","enzymatic","enzymatically","enzyme","enzymology","eo","eocene","eoe","eof","eohippus","eol","eolanda","eolande","eolian","eon","eos","eot","ep","epa","epaulet","ephedrine","ephemera","ephemeral","ephemerids","ephemeris","ephesian","ephesians","ephesus","ephraim","ephrayim","ephrem","epi","epic","epically","epicenter","epictetus","epicure","epicurean","epicurus","epicycle","epicyclic","epicyclical","epicycloid","epidemic","epidemically","epidemiological","epidemiologist","epidemiology","epidermal","epidermic","epidermis","epidural","epigenetic","epiglottis","epigram","epigrammatic","epigraph","epigrapher","epigraphs","epigraphy","epilepsy","epileptic","epilogue","epimethius","epinephrine","epiphany","epiphenomena","episcopacy","episcopal","episcopalian","episcopate","episode","episodes","episodic","episodically","epistemic","epistemological","epistemology","epistle","epistolary","epistolatory","epitaph","epitaphs","epitaxial","epitaxy","epithelial","epithelium","epithet","epitome","epitomize","epitomized","epitomizer","epoch","epochal","epochs","epoll","eponymous","epoxy","eps","epsg","epsilon","epsom","epstein","eq","equ","equability","equable","equableness","equably","equal","equaling","equality","equalization","equalize","equalized","equalizer","equalizes","equally","equals","equalsignorecase","equalto","equanimity","equate","equation","equations","equator","equatorial","equerry","equestrian","equestrianism","equestrienne","equiangular","equidistant","equilateral","equilibrate","equilibration","equilibrium","equine","equinoctial","equinox","equip","equipage","equipartition","equipment","equipoise","equipotent","equipped","equipping","equiproportional","equiproportionality","equiproportionate","equitable","equitableness","equitably","equitation","equity","equiv","equivalence","equivalent","equivalents","equivocal","equivocalness","equivocate","equivocation","equivocator","equuleus","er","era","eradicable","eradicate","eradication","eradicator","eran","eras","erase","erased","eraser","erasion","erasmus","erastus","erasure","erat","erato","eratosthenes","erb","erbium","erda","ere","erebus","erect","erectile","erection","erectness","erector","erek","erelong","eremite","erena","erg","ergo","ergodic","ergodicity","ergonomic","ergonomically","ergonomics","ergophobia","ergosterol","ergot","erhard","erhart","eric","erica","erich","ericha","erick","ericka","erickson","ericson","ericsson","eridanus","erie","erik","erika","erikson","erin","erina","erinn","erinna","eris","eritrea","erl","erlang","erlenmeyer","erma","ermanno","ermengarde","ermentrude","ermin","ermina","ermine","erminia","erminie","erna","ernaline","ernest","ernesta","ernestine","ernesto","ernestus","ernie","ernst","erny","erode","erodible","erogenous","eros","erosible","erosion","erosional","erosive","erosiveness","erotic","erotica","erotically","eroticism","erp","err","errancy","errand","errant","errantry","errata","erratic","erratically","erratum","errick","erring","errmode","errmsg","errno","errol","erroll","erroneous","erroneousness","error","errorcode","errordocument","errorhandler","errorlevel","errorlistener","errorlog","errormessage","errormsg","errorreportvalve","errors","errorthrown","ersatz","erse","erskine","erst","erstwhile","ertha","eruct","eructation","erudite","erudition","erupt","eruption","eruptive","erv","ervin","erwin","eryn","erysipelas","erythrocyte","es","esau","esb","esc","escadrille","escalate","escalation","escalator","escallop","escapable","escapade","escape","escaped","escapee","escapement","escaper","escapes","escaping","escapism","escapist","escapology","escarole","escarpment","eschatology","escher","escherichia","eschew","escondido","escort","escritoire","escrow","escudo","escutcheon","esdras","ese","esi","eskimo","esl","eslint","esma","esmaria","esmark","esme","esmeralda","esophageal","esophagi","esophagus","esoteric","esoterica","esoterically","esp","espadrille","espagnol","espalier","especial","especially","esperanto","esperanza","espinoza","espionage","esplanade","esposito","espousal","espouse","espouser","espresso","esprit","espy","esq","esquire","esra","esri","essa","essay","essayer","essayist","esse","essen","essence","essene","essential","essentialist","essentially","essentialness","essentials","essequibo","essex","essie","essy","est","esta","establish","established","establisher","establishing","establishment","estado","estate","esteban","esteem","estel","estela","estele","estell","estella","estelle","ester","esterhzy","estes","estevan","esther","esthete","esthetic","esthetically","esthetics","estimable","estimableness","estimate","estimated","estimates","estimating","estimation","estimator","estonia","estonian","estoppal","estrada","estrange","estrangement","estranger","estrella","estrellita","estrogen","estrous","estrus","estuarine","estuary","et","eta","etag","etan","etc","etcetera","etch","etcher","etching","etd","eternal","eternalness","eternity","eth","ethan","ethane","ethanol","ethe","ethel","ethelbert","ethelda","ethelin","ethelind","etheline","ethelred","ethelyn","ether","ethereal","etherealness","etherized","ethernet","ethic","ethical","ethically","ethicalness","ethicist","ethiopia","ethiopian","ethnic","ethnically","ethnicity","ethnocentric","ethnocentrism","ethnographers","ethnographic","ethnography","ethnological","ethnologist","ethnology","ethnomethodology","ethological","ethologist","ethology","ethos","ethyl","ethylene","etiam","etienne","etiologic","etiological","etiology","etiquette","etl","etna","etree","etruria","etruscan","etta","etti","ettie","ettore","etty","etymological","etymologist","etymology","eu","eucalypti","eucalyptus","eucharist","eucharistic","euchre","euclid","euclidean","eudora","euell","eugen","eugene","eugenia","eugenic","eugenically","eugenicist","eugenics","eugenie","eugenio","eugenius","eugine","euismod","eula","eulalie","euler","eulerian","eulogist","eulogistic","eulogize","eulogized","eulogizer","eulogy","eumenides","eunice","eunuch","eunuchs","euphemia","euphemism","euphemist","euphemistic","euphemistically","euphonious","euphonium","euphony","euphoria","euphoric","euphorically","euphrates","eur","eurasia","eurasian","eureka","euripides","euro","eurodollar","europa","europe","european","europeanization","europeanized","europium","eurydice","eustace","eustachian","eustacia","eutectic","euterpe","euthanasia","euthenics","ev","eva","evacuate","evacuation","evacuee","evade","evader","eval","evaleen","evaluable","evaluate","evaluated","evaluates","evaluating","evaluation","evaluational","evaluative","evaluator","evan","evanescence","evanescent","evangelia","evangelic","evangelical","evangelicalism","evangelin","evangelina","evangeline","evangelism","evangelist","evangelistic","evangelize","evania","evanne","evanston","evansville","evaporate","evaporation","evaporative","evaporator","evasion","evasive","evasiveness","eve","eveleen","evelin","evelina","eveline","evelyn","even","evened","evener","evenhanded","evening","evenki","evenly","evenness","evens","evensong","event","eventargs","eventbus","eventdata","eventdate","eventdispatchthread","eventemitter","eventful","eventfulness","eventhandler","eventid","eventide","eventlistener","eventlog","eventname","eventqueue","events","eventtrigger","eventtype","eventual","eventuality","eventually","eventuate","ever","everard","eveready","evered","everest","everett","everette","everglade","everglades","evergreen","everhart","everlasting","everlastingness","everliving","evermore","evernote","everready","every","everybody","everyday","everydayness","everyman","everyone","everyplace","everything","everytime","everywhere","eves","evey","evict","eviction","evidence","evident","evidential","evie","evil","evildoer","evildoing","evilness","evin","evince","eviscerate","evisceration","evita","evocable","evocate","evocation","evocative","evocativeness","evoke","evolute","evolution","evolutionarily","evolutionary","evolutionist","evolve","evolved","evonne","evp","evt","evvie","evvy","evy","evyn","ew","ewan","eward","ewart","ewe","ewell","ewen","ewer","ewing","ex","exacerbate","exacerbation","exact","exacter","exacting","exactingness","exaction","exactitude","exactly","exactness","exaggerate","exaggerated","exaggeration","exaggerative","exaggerator","exalt","exaltation","exalted","exalter","exam","examen","examination","examine","examined","examinees","examiner","examines","examining","example","exampled","examples","exams","exasperate","exasperated","exasperating","exasperation","exc","excalibur","excavate","excavation","excavator","excedrin","exceed","exceeded","exceeder","exceeding","exceeds","excel","excelled","excellence","excellency","excellent","excelling","excelsior","except","exception","exceptionable","exceptional","exceptionalness","exceptionhandler","exceptions","excerpt","excerpter","excess","excessive","excessiveness","exchange","exchangeable","exchanger","exchanges","exchequer","excise","excision","excitability","excitable","excitableness","excitably","excitation","excitatory","excite","excited","excitement","exciter","exciting","excitingly","exciton","exclaim","exclaimer","exclamation","exclamatory","exclude","excluded","excluder","excludes","excluding","exclusion","exclusionary","exclusioner","exclusions","exclusive","exclusively","exclusiveness","exclusivity","excommunicate","excommunication","excoriate","excoriation","excrement","excremental","excrescence","excrescent","excreta","excrete","excreter","excretion","excretory","excruciate","excruciating","excruciation","exculpate","exculpation","exculpatory","excursion","excursionist","excursive","excursiveness","excursus","excusable","excusableness","excusably","excuse","excused","excuser","exe","exec","execrable","execrableness","execrably","execrate","execration","execsql","executable","executables","execute","executeactionstaskexecuter","executed","executenonquery","executequery","executer","executereader","executes","executescalar","executescript","executesql","executeupdate","executing","execution","executional","executioncontext","executioner","executionexception","executions","executive","executor","executors","executorservice","executrices","executrix","exegeses","exegesis","exegete","exegetic","exegetical","exemplar","exemplariness","exemplary","exemple","exemplification","exemplifier","exemplify","exempt","exemption","exercise","exerciser","exercises","exercitation","exert","exertion","exeter","exeunt","exhalation","exhale","exhaust","exhausted","exhauster","exhaustible","exhausting","exhaustion","exhaustive","exhaustiveness","exhibit","exhibition","exhibitioner","exhibitionism","exhibitionist","exhibitor","exhilarate","exhilarating","exhilaration","exhort","exhortation","exhorter","exhumation","exhume","exhumer","exif","exigence","exigency","exigent","exiguity","exiguous","exile","exist","existed","existence","existent","existential","existentialism","existentialist","existentialistic","existents","existing","exists","exit","exitcode","exited","exiting","exits","exobiology","exocrine","exodus","exogamous","exogamy","exogenous","exonerate","exoneration","exorbitance","exorbitant","exorcise","exorcism","exorcist","exorcizer","exoskeleton","exosphere","exothermic","exothermically","exotic","exotica","exotically","exoticism","exoticness","exp","expand","expandability","expandable","expandablelistview","expanded","expander","expanding","expands","expanse","expansible","expansion","expansionary","expansionism","expansionist","expansive","expansiveness","expatiate","expatiation","expatriate","expatriation","expect","expectancy","expectant","expectation","expectational","expectations","expected","expectedconditions","expecting","expectorant","expectorate","expectoration","expects","expedience","expediency","expedient","expedients","expedite","expediter","expedition","expeditionary","expeditious","expeditiousness","expeditor","expel","expellable","expelled","expelling","expend","expendable","expended","expender","expenditure","expense","expenses","expensive","expensiveness","experience","experienced","experiences","experiencing","experiential","experiment","experimental","experimentalism","experimentalist","experimentation","experimented","experimenter","experimenting","experiments","expert","experted","experting","expertise","expertize","expertness","expertnesses","experts","expiable","expiate","expiation","expiatory","expiration","expire","expired","expires","expiresbytype","expiry","explain","explainable","explained","explainer","explaining","explains","explanation","explanations","explanatory","expletive","explicable","explicate","explication","explicative","explicit","explicitly","explicitness","explode","exploded","exploder","exploit","exploitation","exploitative","exploited","exploiter","exploration","exploratory","explore","explored","explorer","exploring","explosion","explosive","explosiveness","expo","exponent","exponential","exponentiate","exponentiation","export","exportability","exportable","exportation","exported","exporter","exporting","exports","expos","expose","exposed","exposer","exposes","exposing","exposit","exposition","expositor","expository","expostulate","expostulation","exposure","expound","expounder","expr","express","expressed","expresser","expressibility","expressible","expressibly","expression","expressionism","expressionist","expressionistic","expressionless","expressions","expressive","expressiveness","expressjs","expressway","expropriate","expropriation","expropriator","expulsion","expunge","expunger","expurgate","expurgated","expurgation","exquisite","exquisiteness","ext","extant","extemporaneous","extemporaneousness","extempore","extemporization","extemporize","extemporizer","extend","extendability","extended","extendedly","extendedness","extender","extendibility","extendibles","extending","extends","extensibility","extensible","extension","extensional","extensions","extensive","extensively","extensiveness","extensor","extent","extenuate","extenuation","exterior","exterminate","extermination","exterminator","extern","external","externalities","externalization","externalize","externally","externals","extinct","extinction","extinguish","extinguishable","extinguisher","extirpate","extirpation","extjs","extol","extolled","extoller","extolling","extort","extorter","extortion","extortionate","extortioner","extortionist","extra","extracellular","extract","extracted","extracting","extraction","extractive","extractor","extracts","extracurricular","extradite","extradition","extragalactic","extralegal","extramarital","extramural","extraneous","extraneousness","extraordinarily","extraordinariness","extraordinary","extrapolate","extrapolation","extras","extrasensory","extraterrestrial","extraterritorial","extraterritoriality","extravagance","extravagant","extravaganza","extravehicular","extravert","extrema","extremal","extreme","extremely","extremeness","extremism","extremist","extremity","extricable","extricate","extrication","extrinsic","extrinsically","extroversion","extrovert","extrude","extruder","extrusion","extrusive","exuberance","exuberant","exudate","exudation","exude","exult","exultant","exultation","exulting","exurb","exurban","exurbanite","exurbia","exxon","ey","eyck","eyde","eydie","eye","eyeball","eyebrow","eyed","eyedropper","eyeful","eyeglass","eyelash","eyeless","eyelet","eyelid","eyeliner","eyeopener","eyeopening","eyepiece","eyer","eyes","eyeshadow","eyesight","eyesore","eyestrain","eyeteeth","eyetooth","eyewash","eyewitness","eyre","eyrie","eysenck","ez","ezechiel","ezekiel","ezequiel","eziechiele","ezmeralda","ezra","ezri","f","f0_","fa","faa","fab","fabe","faber","faberg","fabian","fabiano","fabien","fabio","fable","fabler","fabric","fabricate","fabrication","fabricator","fabulists","fabulous","fabulousness","fac","facade","facades","face","facebook","facecloth","facecloths","faced","faceless","facelets","faceplate","facer","faces","facescontext","facet","facetious","facetiousness","facets","facial","facile","facileness","facilisis","facilitate","facilitation","facilitator","facilitatory","facilities","facility","facing","facsimile","facsimileing","fact","faction","factional","factionalism","factious","factiousness","factitious","facto","factoid","factor","factorial","factories","factoring","factorisable","factorization","factorize","factors","factory","factorygirl","factotum","facts","factual","factuality","factualness","faculty","fad","faddish","faddist","fade","faded","fadedly","fadein","fadeout","fader","fades","fadeto","fading","fae","faence","faerie","faeroe","faery","fafnir","fag","fagged","fagging","faggoting","fagin","fagot","fagoting","fahd","fahrenheit","fail","failed","failing","faille","failover","fails","failsafe","failure","failures","fain","faina","faint","fainter","fainthearted","faintness","fair","fairbanks","fairchild","faired","fairfax","fairfield","fairgoer","fairground","fairing","fairish","fairleigh","fairless","fairlie","fairly","fairmont","fairness","fairport","fairs","fairview","fairway","fairy","fairyland","fairytale","faisal","faisalabad","faith","faithed","faithful","faithfulness","faithfuls","faithing","faithless","faithlessness","faiths","fajitas","fake","faker","fakir","falafel","falcon","falconer","falconry","falito","falk","falkland","falkner","fall","fallacious","fallaciousness","fallacy","fallback","faller","fallibility","fallible","fallibleness","fallibly","falling","falloff","fallon","fallopian","fallout","fallow","fallowness","falls","false","falsehood","falseness","falsetto","falsie","falsifiability","falsifiable","falsification","falsifier","falsify","falsity","falstaff","falter","falterer","faltering","falwell","fame","famed","fames","familial","familiar","familiarity","familiarization","familiarize","familiarized","familiarizer","familiarizing","familiarly","familiarness","families","family","famine","faming","famish","famous","famously","famousness","fan","fanatic","fanatical","fanaticalness","fanaticism","fanchette","fanchon","fancie","fancied","fancier","fanciest","fanciful","fancifulness","fancily","fanciness","fancy","fancybox","fancying","fancywork","fandango","fanechka","fanfare","fanfold","fang","fangled","fania","fanlight","fanned","fanni","fannie","fanning","fanny","fanout","fans","fantail","fantasia","fantasist","fantasize","fantastic","fantastical","fantasy","fanya","fanzine","faq","faqs","far","fara","farad","faraday","farah","farand","faraway","farber","farce","farcical","fare","farer","farewell","farfetchedness","fargo","farica","farina","farinaceous","farkas","farlay","farlee","farleigh","farley","farlie","farly","farm","farmer","farmhand","farmhouse","farming","farmington","farmland","farmstead","farmworker","farmyard","faro","farr","farra","farrago","farragoes","farragut","farrah","farrakhan","farrand","farrel","farrell","farrier","farris","farrow","farseeing","farsighted","farsightedness","fart","farther","farthermost","farthest","farthing","fas","fascia","fascicle","fasciculate","fasciculation","fascinate","fascinating","fascination","fascism","fascist","fascistic","fashion","fashionable","fashionableness","fashionably","fashioner","fassbinder","fast","fasta","fastback","fastball","fastcgi","fasten","fastener","fastening","faster","fasterxml","fastest","fastidious","fastidiousness","fastness","fat","fatal","fatalism","fatalist","fatalistic","fatalistically","fatality","fatback","fate","fateful","fatefulness","fates","fathead","fatheaded","father","fathered","fatherhood","fatherland","fatherless","fatherliness","fatherly","fathom","fathomable","fathomless","fatigue","fatigued","fatiguing","fatima","fatness","fatso","fatted","fatten","fattener","fatter","fattest","fattiness","fatting","fatty","fatuity","fatuous","fatuousness","fatwa","faucet","faucibus","faulkner","faulknerian","fault","faultfinder","faultfinding","faultily","faultiness","faultless","faultlessness","faults","faulty","faun","fauna","faunie","fauntleroy","faust","faustian","faustina","faustine","faustino","faustus","fauvism","fav","favicon","favor","favorable","favorableness","favorably","favored","favoredness","favorer","favoring","favorings","favorite","favorites","favoritism","favors","favour","favourite","fawkes","fawn","fawne","fawner","fawnia","fawning","fax","fay","faydra","faye","fayette","fayetteville","fayina","fayre","fayth","faythe","faze","fb","fbi","fc","fcc","fclose","fcm","fcntl","fct","fd","fda","fdic","fdr","fds","fe","fealty","fear","fearful","fearfuller","fearfullest","fearfulness","fearless","fearlessness","fearsome","fearsomeness","feasibility","feasible","feasibleness","feasibly","feast","feaster","feat","feater","feather","featherbed","featherbedding","featherbrain","feathered","feathering","featherless","featherlight","featherman","feathertop","featherweight","feathery","feats","feature","featured","featureless","features","feb","febrile","february","fecal","feces","fecha","feckless","fecklessness","fecund","fecundability","fecundate","fecundation","fecundity","fed","federal","federalism","federalist","federalization","federalize","federate","federated","federation","federative","federica","federico","fedex","fedora","feds","fee","feeble","feebleness","feebly","feed","feedback","feedbag","feeder","feeding","feedlot","feeds","feedstock","feedstuffs","feeing","feel","feeler","feeling","feelingly","feelingness","feelings","feels","fees","feet","feign","feigned","feigner","feint","feisty","felder","feldman","feldspar","felecia","felic","felicdad","felice","felicia","felicio","felicitate","felicitation","felicitous","felicitousness","felicity","felicle","felike","feliks","feline","felipa","felipe","felis","felisha","felita","felix","feliza","felizio","fell","fella","fellatio","felled","feller","felling","fellini","fellness","fellow","fellowman","fellowmen","fellowship","fellowshipped","fellowshipping","felon","felonious","feloniousness","felony","felt","felting","fem","female","femaleness","feminine","feminineness","femininity","feminism","feminist","femme","femoral","femur","fen","fence","fenced","fencepost","fencer","fencing","fend","fender","fenelia","fenestration","fenian","fenland","fennel","fenwick","feodor","feodora","feof","fer","feral","ferber","ferd","ferdie","ferdinand","ferdinanda","ferdinande","ferdinando","ferdy","fergus","ferguson","ferlinghetti","fermat","ferment","fermentation","fermented","fermenter","fermenting","fermentum","fermi","fermion","fermium","fern","fernanda","fernande","fernandez","fernandina","fernando","ferne","fernery","ferny","ferocious","ferociousness","ferocity","ferrari","ferraro","ferreira","ferrel","ferrell","ferrer","ferret","ferreter","ferric","ferris","ferrite","ferro","ferroelectric","ferromagnet","ferromagnetic","ferrous","ferrule","ferry","ferryboat","ferryman","ferrymen","fertile","fertileness","fertility","fertilization","fertilize","fertilized","fertilizer","fertilizes","ferule","fervency","fervent","fervid","fervidness","fervor","fess","fest","festal","fester","festival","festive","festiveness","festivity","festoon","feta","fetal","fetch","fetchall","fetchdata","fetched","fetchedresultscontroller","fetcher","fetches","fetching","fetchrequest","fetchtype","feted","fetich","fetid","fetidness","feting","fetish","fetishism","fetishist","fetishistic","fetlock","fetter","fettle","fettling","fettuccine","fetus","feud","feudal","feudalism","feudalistic","feudatory","feugiat","fever","feverish","feverishness","few","fewer","fewness","fey","feynman","fez","fezzes","ff","ffa","ffb","ffc","ffd","ffe","fff","ffff","ffffff","ffffffff","ffi","fflush","ffmpeg","fft","fftw","fg","fgetc","fgets","fh","fha","fi","fianc","fiance","fiann","fianna","fiasco","fiascoes","fiat","fib","fibbed","fibber","fibbing","fiber","fiberboard","fiberfill","fiberglas","fiberglass","fibonacci","fibril","fibrillate","fibrillation","fibrin","fibroblast","fibroid","fibroses","fibrosis","fibrous","fibrousness","fibula","fibulae","fibular","fica","fices","fiche","fichte","fichu","fickle","fickleness","ficos","fiction","fictional","fictionalization","fictionalize","fictitious","fictitiousness","fictive","ficus","fid","fiddle","fiddler","fiddlestick","fiddling","fiddly","fide","fidel","fidela","fidelia","fidelio","fidelity","fidget","fidgety","fido","fidole","fiducial","fiduciary","fie","fief","fiefdom","field","fielded","fielder","fieldid","fielding","fieldname","fieldnames","fields","fieldset","fieldstone","fieldtype","fieldvalue","fieldwork","fieldworker","fiend","fiendish","fiendishness","fierce","fierceness","fierily","fieriness","fiery","fies","fiesta","fife","fifer","fifi","fifine","fifo","fifteen","fifteenths","fifth","fifths","fiftieths","fifty","fig","figaro","figcaption","figged","figging","fight","fightback","fighter","fighting","figment","figsize","figueroa","figural","figuration","figurative","figurativeness","figure","figured","figurehead","figurer","figures","figurine","figuring","fiji","fijian","fil","filament","filamentary","filamentous","filbert","filberte","filberto","filch","file","fileaccess","filechooser","filecontent","filed","filedata","filedialog","fileextension","fileformat","filehandle","fileid","fileinfo","fileinput","fileinputstream","filelist","filemanager","filemode","filename","filenames","fileno","filenotfoundexception","fileoutputstream","filepath","filer","filereader","files","fileset","filesize","filesmatch","filestream","filesystem","filesystemobject","filesystems","filet","filetree","filetype","fileupload","fileurl","fileurlwithpath","fileutils","filewriter","filia","filial","filibuster","filibusterer","filide","filigree","filigreeing","filing","filings","filip","filipino","filippa","filippo","fill","fillcolor","filled","filler","fillet","filleting","filling","fillip","fillmore","fillna","fillrect","fills","fillstyle","filly","film","filmdom","filmer","filminess","filming","filmmaker","filmore","films","filmstrip","filmy","filofax","filter","filterable","filterchain","filterchainproxy","filtercontext","filtered","filterer","filtering","filters","filth","filthily","filthiness","filths","filthy","filtrate","filtrated","filtrates","filtrating","filtration","fin","fina","finagle","finagler","final","finale","finalist","finality","finalization","finalize","finally","finalname","finance","financed","finances","financial","financier","financing","finch","find","findable","findall","findbugs","findbyid","findclass","findcontrol","findelement","findelements","finder","findfragmentbyid","finding","findings","findlay","findley","findone","finds","findstr","findviewbyid","fine","finely","fineness","finery","finespun","finesse","finger","fingerboard","fingerer","fingering","fingerless","fingerling","fingernail","fingerprint","fingers","fingertip","finial","finical","finickiness","finicky","fining","finis","finish","finished","finisher","finishes","finishing","finite","finitely","finiteness","fink","finland","finlay","finley","finn","finnbogadottir","finned","finnegan","finner","finning","finnish","finny","fiona","fionna","fionnula","fiord","fiorello","fiorenze","fiori","fir","fire","firearm","fireball","firebase","firebaseauth","firebasedatabase","firebird","fireboat","firebomb","firebox","firebrand","firebreak","firebrick","firebug","firecracker","fired","firedamp","fireevent","firefight","firefly","firefox","firefoxdriver","fireguard","firehouse","firelight","fireman","firemen","fireplace","fireplug","firepower","fireproof","firer","fires","firesafe","fireside","firestone","firestore","firestorm","firetrap","firetruck","firewall","firewalls","firewater","firewood","firework","firing","firkin","firm","firmament","firmer","firmest","firmly","firmness","firms","firmware","firring","first","firstborn","firstchild","firsthand","firstly","firstname","firstordefault","firth","firths","fis","fiscal","fischbein","fischer","fish","fishbowl","fishcake","fisher","fisherman","fishermen","fishery","fishhook","fishily","fishiness","fishing","fishkill","fishmeal","fishmonger","fishnet","fishpond","fishtail","fishtanks","fishwife","fishwives","fishy","fisk","fiske","fissile","fission","fissionable","fissure","fist","fistfight","fistful","fisticuff","fistula","fistulous","fit","fitch","fitchburg","fitful","fitfulness","fitments","fitness","fits","fitssystemwindows","fitted","fitter","fittest","fitting","fittingly","fittingness","fittings","fitz","fitzgerald","fitzpatrick","fitzroy","five","fivefold","fiver","fix","fixable","fixate","fixatifs","fixation","fixative","fixed","fixedness","fixer","fixes","fixing","fixity","fixture","fixtures","fizeau","fizz","fizzer","fizzle","fizzy","fjord","fjs","fk","fl","fla","flab","flabbergast","flabbergasting","flabbily","flabbiness","flabby","flaccid","flaccidity","flack","flag","flagella","flagellate","flagellation","flagellum","flagged","flagging","flaggingly","flagman","flagmen","flagon","flagpole","flagrance","flagrancy","flagrant","flags","flagship","flagstaff","flagstone","flail","flair","flak","flake","flaker","flakiness","flaky","flam","flamb","flambeing","flambes","flamboyance","flamboyancy","flamboyant","flame","flamen","flamenco","flameproof","flamer","flamethrower","flaming","flamingo","flammability","flammable","flan","flanagan","flanders","flange","flank","flanker","flannel","flannelet","flannelette","flap","flapjack","flapped","flapper","flapping","flaps","flare","flareup","flaring","flash","flashback","flashbulb","flashcard","flashcube","flasher","flashgun","flashily","flashiness","flashing","flashlight","flashy","flask","flat","flatbed","flatboat","flatcar","flatfeet","flatfish","flatfoot","flathead","flatiron","flatland","flatmap","flatmate","flatness","flatt","flatted","flatten","flattened","flattener","flatter","flatterer","flattering","flattery","flattest","flatting","flattish","flattop","flatulence","flatulent","flatus","flatware","flatworm","flaubert","flaunt","flaunting","flautist","flavor","flavored","flavorer","flavorful","flavoring","flavorless","flavors","flavorsome","flaw","flawed","flawless","flawlessly","flawlessness","flaws","flax","flaxseed","flay","flayer","fld","flea","fleabag","fleabites","fleawort","fleck","fledermaus","fledge","fledged","fledgling","flee","fleece","fleecer","fleeciness","fleecy","fleeing","fleet","fleeting","fleetingly","fleetingness","fleetness","fleischer","fleischman","fleisher","flem","fleming","flemish","flemished","flemishing","flemming","flesh","flesher","fleshiness","fleshless","fleshly","fleshpot","fleshy","fletch","fletcher","fletching","fleur","fleurette","flew","flews","flex","flexbox","flexed","flexibility","flexible","flexibly","flexitime","flexslider","flextime","flexural","flexure","flibbertigibbet","flick","flicker","flickering","flickery","flickr","flier","flight","flightiness","flightless","flightpath","flights","flighty","flimflam","flimflammed","flimflamming","flimsily","flimsiness","flimsy","flin","flinch","flincher","flinching","fling","flinger","flink","flinn","flint","flintiness","flintless","flintlock","flintstones","flinty","flip","flipflop","flippable","flippancy","flippant","flipped","flipper","flippest","flipping","flirt","flirtation","flirtatious","flirtatiousness","flit","flitted","flitting","flo","float","floated","floater","floating","floatingactionbutton","floats","floatvalue","floaty","flocculate","flocculation","flock","floe","flog","flogged","flogger","flogging","flood","floodgate","floodlight","floodlit","floodplain","floodwater","floor","floorboard","floorer","flooring","floorspace","floorwalker","floozy","flop","flophouse","flopped","flopper","floppily","floppiness","flopping","floppy","flor","flora","floral","florance","flore","florella","florence","florencia","florentia","florentine","florenza","florescence","florescent","floret","florette","flori","floria","florian","florid","florida","floridan","floridian","floridness","florie","florin","florina","florinda","florine","florist","florri","florrie","florry","flory","floss","flossi","flossie","flossy","flot","flotation","flotilla","flotsam","flounce","flouncing","flouncy","flounder","flour","flourish","flourisher","flourishing","floury","flout","flouter","flow","flowchart","flowed","flower","flowerbed","flowerer","floweriness","flowerless","flowerpot","flowers","flowery","flowing","flowlayout","flown","flows","flowstone","floyd","flss","flt","flu","flub","flubbed","flubbing","fluctuate","fluctuation","flue","fluency","fluent","fluently","fluff","fluffiness","fluffy","fluid","fluidity","fluidized","fluidness","fluidpage","fluke","fluky","flume","flummox","flung","flunk","flunkey","flunky","fluoresce","fluorescence","fluorescent","fluoridate","fluoridation","fluoride","fluorimetric","fluorinated","fluorine","fluorite","fluorocarbon","fluoroscope","fluoroscopic","flurry","flush","flushed","flushing","flushness","fluster","flute","fluter","fluting","flutist","flutter","flutterer","fluttery","flux","fluxed","fluxes","fluxing","flv","fly","flyaway","flyblown","flyby","flybys","flycatcher","flyer","flying","flyleaf","flyleaves","flynn","flyover","flypaper","flysheet","flyspeck","flyswatter","flyway","flyweight","flywheel","fm","fmap","fmt","fn","fname","fnma","fno","fnr","fo","foal","foam","foaminess","foamy","fob","fobbed","fobbing","focal","focally","foch","foci","focus","focusable","focused","focuser","focuses","focusing","fodder","foe","foetid","fofl","fog","fogbound","fogged","foggily","fogginess","fogging","foggy","foghorn","fogs","fogy","fogyish","foible","foil","foist","fokker","fol","fold","foldaway","folded","folder","foldername","folderpath","folders","folding","foldout","foldr","folds","foley","foliage","foliate","foliation","folio","folk","folklike","folklore","folkloric","folklorist","folks","folksiness","folksinger","folksinging","folksong","folksy","folktale","folkway","foll","follicle","follicular","follow","followed","follower","followers","following","follows","followsymlinks","followup","folly","folsom","fomalhaut","foment","fomentation","fomenter","fond","fonda","fondant","fondle","fondler","fondness","fondue","fons","fonsie","font","fontaine","fontainebleau","fontana","fontanel","fontanelle","fontawesome","fontfamily","fontname","fonts","fontsize","fontstyle","fontweight","fontwithname","fonz","fonzie","foo","foobar","food","foodie","foods","foodstuff","fool","foolery","foolhardily","foolhardiness","foolhardy","foolish","foolishness","foolproof","foolscap","foos","foot","footage","football","footbridge","foote","footer","footfall","foothill","foothold","footing","footless","footlights","footling","footlocker","footloose","footman","footmarks","footmen","footnote","footpad","footpath","footpaths","footplate","footprint","footrace","footrest","footsie","footsore","footstep","footstool","footwear","footwork","fop","fopen","fopped","foppery","fopping","foppish","foppishness","for","forage","forager","forall","foray","forayer","forbade","forbear","forbearance","forbearer","forbes","forbid","forbidden","forbidding","forbiddingness","forbore","forborne","force","forced","forcefield","forceful","forcefulness","forceps","forcer","forces","forcible","forcibleness","forcibly","forcing","forcontrolevents","ford","fordable","fordham","fore","foreach","forearm","forebear","forebode","foreboding","forebodingness","forecast","forecaster","forecastle","foreclose","foreclosure","forecolor","forecourt","foredoom","forefather","forefeet","forefinger","forefoot","forefront","foregoer","foregoing","foregone","foregos","foreground","foregroundcolor","forehand","forehead","foreign","foreigner","foreignkey","foreignness","foreknew","foreknow","foreknowledge","foreknown","foreleg","forelimb","forelock","foreman","foremast","foremen","foremost","forename","forenoon","forensic","forensically","forensics","foreordain","forepart","forepaws","forepeople","foreperson","foreplay","forequarter","forerunner","foresail","foresaw","foresee","foreseeable","foreseeing","foreseen","foreseer","foreshadow","foreshore","foreshorten","foresight","foresighted","foresightedness","foreskin","forest","forestall","forestaller","forestallment","forestation","forestations","forester","forestland","forestry","foretaste","foretell","foreteller","forethought","foretold","forever","forevermore","forewarn","forewarner","forewent","forewoman","forewomen","foreword","forfeit","forfeiter","forfeiture","forfend","forgather","forgave","forge","forged","forger","forgery","forges","forget","forgetful","forgetfulness","forgettable","forgettably","forgetting","forging","forgivable","forgivably","forgive","forgiven","forgiveness","forgiver","forgiving","forgivingly","forgivingness","forgo","forgoer","forgoes","forgone","forgot","forgotten","forhttpheaderfield","forindexpath","fork","forked","forkey","forkful","forking","forklift","forks","forlorn","forlornness","form","formability","formal","formaldehyde","formalin","formalism","formalist","formalistic","formality","formalization","formalize","formalized","formalizer","formalizes","formally","formalness","formals","formant","format","formatdate","formate","formation","formative","formatively","formativeness","formats","formatted","formatter","formatters","formatting","formbuilder","formcontrol","formcontrolname","formdata","formed","former","formerly","formfitting","formgroup","formic","formica","formid","formidable","formidableness","formidably","forming","formless","formlessness","formmethod","formname","formosa","formosan","forms","formsauthentication","formset","formula","formulaic","formular","formulas","formulate","formulated","formulation","formulator","forname","fornicate","fornication","fornicator","forrest","forrester","forroot","forsake","forsaken","forsook","forsooth","forstate","forster","forswear","forswore","forsworn","forsythia","fort","fortaleza","forte","forth","forthcome","forthcoming","forthright","forthrightness","forthwith","fortieths","fortification","fortified","fortifier","fortify","fortiori","fortissimo","fortitude","fortnight","fortnightly","fortran","fortress","fortuitous","fortuitousness","fortuity","fortunate","fortunately","fortunateness","fortune","fortuneteller","fortunetelling","forty","forum","forums","forward","forwarded","forwarder","forwarding","forwardness","forwards","forwent","fos","foss","fossil","fossiliferous","fossilization","fossilize","fossilized","foster","fosterer","foto","foucault","fought","foul","foulard","foulmouth","foulness","fouls","found","foundation","foundational","founded","founder","founders","founding","foundling","foundry","founds","fount","fountain","fountainhead","four","fourfold","fourier","fourpence","fourpenny","fourposter","fourscore","foursome","foursquare","fourteen","fourteener","fourteenths","fourth","fourths","fout","fovea","fowl","fowler","fowling","fox","foxfire","foxglove","foxhall","foxhole","foxhound","foxily","foxiness","foxing","foxtail","foxtrot","foxtrotted","foxtrotting","foxy","foyer","fp","fpga","fpic","fpm","fpo","fprintf","fps","fq","fql","fr","frac","fracas","fractal","fraction","fractional","fractionate","fractionation","fractioned","fractioning","fractions","fractious","fractiousness","fracture","frag","fragile","fragility","fragment","fragmentactivity","fragmentarily","fragmentariness","fragmentary","fragmentation","fragmentmanager","fragmentmanagerimpl","fragmentpageradapter","fragments","fragmenttransaction","fragonard","fragrance","fragrant","frail","frailness","frailty","frame","frameborder","framebuffer","framed","framelayout","framer","framerate","frames","framework","frameworkelement","frameworkmethod","frameworks","frameworkservlet","framing","fran","franc","francaise","france","francene","francesca","francesco","franchise","franchisee","franchiser","franchot","francie","francine","francis","francisca","franciscan","francisco","franciska","franciskus","francium","franck","francklin","francklyn","franco","francois","francoise","francophone","francyne","frangibility","frangible","frank","frankel","frankenstein","franker","frankford","frankfort","frankfurt","frankfurter","frankie","frankincense","frankish","franklin","frankly","franklyn","frankness","franky","franni","frannie","franny","fransisco","frantic","frantically","franticness","frants","franz","franzen","frapp","frappeed","frappeing","frappes","frasco","fraser","frasier","frasquito","frat","fraternal","fraternity","fraternization","fraternize","fraternizer","fraternizing","fratricidal","fratricide","frau","fraud","fraudsters","fraudulence","fraudulent","fraught","fraulein","fray","frayda","frayne","fraze","frazer","frazier","frazzle","fread","freak","freakish","freakishness","freaky","freckle","freckly","fred","freda","freddi","freddie","freddy","fredek","fredelia","frederic","frederica","frederich","frederick","fredericka","frederico","fredericton","frederigo","frederik","frederique","fredholm","fredi","fredia","fredra","fredric","fredrick","fredrickson","fredrika","free","freebase","freebie","freeboot","freebooter","freeborn","freebsd","freed","freedman","freedmen","freedom","freehand","freehanded","freehold","freeholder","freeing","freelance","freeland","freeload","freeloader","freely","freeman","freemarker","freemason","freemasonry","freemen","freemon","freeness","freeport","freestanding","freestone","freestyle","freethinker","freethinking","freetown","freetype","freeway","freewheel","freewheeler","freewheeling","freewill","freezable","freeze","freezer","freezes","freezing","freida","freight","freighter","fremont","french","frenchman","frenchmen","frenchwoman","frenchwomen","frenetic","frenetically","frenzied","frenzy","freon","freq","frequencies","frequency","frequent","frequented","frequenter","frequentest","frequenting","frequently","frequentness","frequents","fresco","frescoes","fresh","freshen","freshener","fresher","freshest","freshet","freshly","freshman","freshmen","freshness","freshwater","fresnel","fresno","fret","fretboard","fretful","fretfulness","fretsaw","fretted","fretting","fretwork","freud","freudian","frey","freya","fri","friable","friableness","friar","friary","fricassee","fricasseeing","frication","fricative","frick","friction","frictional","frictionless","friday","fridge","fried","frieda","friedan","friedcake","friederike","friedman","friedrich","friedrick","friend","friendless","friendlessness","friendlies","friendlily","friendliness","friendly","friends","friendship","frier","fries","frieze","frig","frigate","frigga","frigged","frigging","fright","frighten","frightening","frightful","frightfulness","frigid","frigidaire","frigidity","frigidness","frill","frilly","fringe","fringilla","frippery","frisbee","frisco","frisian","frisk","frisker","friskily","friskiness","frisky","frisson","frito","fritter","fritterer","fritz","frivolity","frivolous","frivolousness","frizz","frizzle","frizzly","frizzy","frm","fro","frobisher","frock","frocking","frog","frogged","frogging","frogman","frogmarched","frogmen","froissart","frolic","frolicked","frolicker","frolicking","frolicsome","from","frombody","fromcharcode","fromdate","fromfile","fromhtml","fromimage","fromjson","fromm","fromseconds","fromstring","frond","front","frontage","frontal","frontenac","frontend","frontier","frontiersman","frontiersmen","frontispiece","frontrunner","frontward","frosh","frost","frostbelt","frostbit","frostbite","frostbiting","frostbitten","frosted","frosteds","frostily","frostiness","frosting","frosty","froth","frothiness","froths","frothy","froufrou","froward","frowardness","frown","frowner","frowning","frowzily","frowziness","frowzy","froze","frozen","frozenness","fructify","fructose","fruehauf","frugal","frugality","fruit","fruitcake","fruiter","fruiterer","fruitful","fruitfuller","fruitfullest","fruitfulness","fruitiness","fruition","fruitless","fruitlessness","fruits","fruity","frump","frumpish","frumpy","frunze","frustrate","frustrated","frustrater","frustrating","frustration","frustum","fry","frye","fryer","fs","fscanf","fseek","fsharp","fslic","fso","fst","fstream","ft","ftc","fte","ftp","ftpclient","fu","fuchs","fuchsia","fuck","fucker","fucking","fud","fuddle","fudge","fuel","fueler","fuentes","fugal","fugger","fugiat","fugitive","fugitiveness","fugue","fuhrer","fuji","fujitsu","fujiyama","fukuoka","fulani","fulbright","fulcrum","fulfill","fulfilled","fulfiller","fulfillment","full","fullback","fullcalendar","fuller","fullerton","fullish","fullname","fullness","fullpath","fullscreen","fullstops","fulltext","fullword","fully","fulminate","fulmination","fulness","fulsome","fulsomeness","fulton","fulvia","fumble","fumbler","fumbling","fume","fumigant","fumigate","fumigation","fumigator","fuming","fumy","fun","funafuti","func","funcs","function","functional","functionalism","functionalist","functionalities","functionality","functionally","functionary","functioning","functionname","functions","functools","functor","fund","fundamental","fundamentalism","fundamentalist","fundamentally","fundamentals","funded","fundholders","fundholding","funding","funds","fundy","funeral","funerary","funereal","funfair","fungal","fungi","fungible","fungicidal","fungicide","fungoid","fungous","fungus","funicular","funk","funkiness","funky","funned","funnel","funner","funnest","funnily","funniness","funning","funny","fur","furbelow","furbish","furbisher","furious","furiousness","furl","furlong","furlough","furloughs","furn","furnace","furnish","furnished","furnisher","furnishing","furniture","furor","furore","furred","furrier","furriness","furring","furrow","furry","further","furtherance","furtherer","furthermore","furthermost","furthest","furtive","furtiveness","fury","furze","fusce","fuse","fusebox","fusee","fuselage","fushun","fusibility","fusible","fusiform","fusilier","fusillade","fusion","fuss","fussbudget","fusser","fussily","fussiness","fusspot","fussy","fustian","fustiness","fusty","fut","futile","futileness","futility","futon","future","futures","futuretask","futurism","futurist","futuristic","futurity","futurologist","futurology","futz","fuze","fuzhou","fuzz","fuzzbuster","fuzzily","fuzziness","fuzzy","fv","fw","fwd","fwiw","fwlink","fwrite","fwww","fwy","fx","fxml","fxmlloader","fy","fyi","g","ga","gab","gabardine","gabbed","gabbey","gabbi","gabbie","gabbiness","gabbing","gabble","gabby","gabe","gaberdine","gabey","gabfest","gabi","gabie","gable","gabon","gabonese","gaborone","gabriel","gabriela","gabriele","gabriell","gabriella","gabrielle","gabriellia","gabriello","gabrila","gaby","gac","gacrux","gad","gadabout","gadded","gadder","gadding","gadfly","gadget","gadgetry","gadolinium","gadsden","gae","gaea","gael","gaelan","gaelic","gaff","gaffe","gaffer","gag","gaga","gagarin","gage","gager","gagged","gagging","gaggle","gagwriter","gaiety","gail","gaile","gaily","gain","gained","gainer","gaines","gainesville","gainful","gainfulness","gaining","gainly","gains","gainsaid","gainsay","gainsayer","gainsborough","gait","gaiter","gaithersburg","gal","gala","galactic","galahad","galapagos","galatea","galatia","galatians","galaxy","galbraith","galbreath","gale","galen","galena","galenite","galibi","galilean","galilee","galileo","galina","gall","gallagher","gallant","gallanted","gallanting","gallantry","gallants","gallard","gallbladder","gallegos","galleon","galleria","galleries","gallery","galley","gallic","gallicism","gallimaufry","galling","gallium","gallivant","gallon","gallonage","gallop","galloper","galloway","gallows","gallstone","gallup","galois","galoot","galore","galosh","galsworthy","galumph","galumphs","galvan","galvani","galvanic","galvanism","galvanization","galvanize","galvanometer","galvanometric","galven","galveston","galvin","gama","gamaliel","gambia","gambian","gambit","gamble","gambler","gambol","game","gamecock","gameid","gamekeeper","gameness","gameobject","games","gamescene","gamesmanship","gamesmen","gamest","gamestate","gamester","gamete","gametic","gametime","gamin","gamine","gaminess","gaming","gamma","gammon","gamow","gamut","gamy","gan","gander","gandhi","gandhian","gang","gangbusters","ganger","ganges","gangland","ganglia","gangling","ganglion","ganglionic","gangplank","gangrene","gangrenous","gangster","gangtok","gangway","gannet","gannie","gannon","ganny","gantlet","gantry","ganymede","gao","gaol","gaoler","gap","gape","gaper","gapi","gaping","gapped","gapping","gaps","gaq","gar","garage","garald","garb","garbage","garbageman","garbanzo","garble","garbler","garbo","garcia","gard","garden","gardener","gardenia","gardening","gardie","gardiner","gardner","gardy","gare","garek","gareth","garey","garfield","garfish","garfunkel","gargantua","gargantuan","gargle","gargoyle","garibaldi","garik","garish","garishness","garland","garlic","garlicked","garlicking","garlicky","garment","garner","garnet","garnett","garnette","garnish","garnishee","garnisheeing","garnishment","garold","garon","garote","garotte","garrard","garred","garrek","garret","garreth","garrett","garrick","garrik","garring","garrison","garrot","garrote","garroter","garrott","garrotte","garrulity","garrulous","garrulousness","garry","garter","garth","garv","garvey","garvin","garvy","garwin","garwood","gary","garza","gas","gasbag","gascony","gaseous","gaseousness","gases","gash","gasification","gasifier","gasify","gasket","gaslight","gasohol","gasoline","gasometer","gasp","gaspar","gaspard","gasparo","gasper","gasping","gassed","gasser","gasset","gassiness","gassing","gassy","gaston","gastric","gastritides","gastritis","gastroenteritides","gastroenteritis","gastrointestinal","gastronome","gastronomic","gastronomical","gastronomy","gastropod","gasworks","gate","gateau","gateaux","gatecrash","gatehouse","gatekeeper","gatepost","gates","gateway","gather","gathered","gatherer","gathering","gathers","gatlinburg","gatling","gator","gatorade","gatsby","gatt","gatun","gauche","gaucheness","gaucherie","gaucho","gaudily","gaudiness","gaudy","gauge","gaugeable","gauger","gauguin","gaul","gaulish","gaulle","gaultiero","gaunt","gauntlet","gauntley","gauntness","gauss","gausses","gaussian","gautama","gauthier","gautier","gauze","gauziness","gauzy","gav","gavan","gave","gavel","gaven","gavin","gavotte","gavra","gavrielle","gawain","gawen","gawk","gawkily","gawkiness","gawky","gay","gaye","gayel","gayelord","gayety","gayla","gayle","gayleen","gaylene","gayler","gaylor","gaylord","gayness","gaynor","gaza","gaze","gazebo","gazelle","gazer","gazette","gazetteer","gaziantep","gazillion","gazpacho","gb","gbc","gbp","gc","gca","gcc","gcd","gcloud","gcm","gcp","gcs","gd","gdal","gdansk","gdata","gdb","gdel","gdi","gdk","gdp","gdx","ge","gear","gearalt","gearard","gearbox","gearing","gearshift","gearstick","gearwheel","geary","gecko","geckodriver","ged","gee","geegaw","geeing","geek","geeky","geese","geest","geezer","gehenna","gehrig","geiger","geigy","geisha","gel","gelatin","gelatinous","gelatinousness","gelcap","geld","gelding","gelid","gelignite","gelled","gelling","gelya","gem","gemfile","gemini","gemlike","gemma","gemmed","gemming","gemological","gemologist","gemology","gems","gemstone","gen","gena","genaro","gendarme","gender","genderless","gene","genealogical","genealogist","genealogy","genera","general","generalissimo","generalist","generality","generalizable","generalization","generalize","generalized","generalizer","generally","generalness","generalship","generate","generated","generatedvalue","generates","generating","generation","generational","generations","generationtype","generative","generator","generators","generic","generically","generics","generosity","generous","generously","generousness","genes","genesco","genesis","genet","genetic","genetically","geneticist","genetics","geneva","genevieve","genevra","genghis","genia","genial","geniality","genially","genialness","genie","genies","genii","genital","genitalia","genitals","genitive","genitourinary","genius","genna","genni","gennie","gennifer","genny","geno","genoa","genocidal","genocide","genome","genotype","genovera","genre","genres","gent","genteel","genteelness","gentian","gentile","gentility","gentle","gentlefolk","gentleman","gentlemanliness","gentlemanly","gentlemen","gentleness","gentlewoman","gentlewomen","gently","gentrification","gentrify","gentry","genuflect","genuflection","genuine","genuinely","genuineness","genus","genvieve","genymotion","geo","geocentric","geocentrically","geocentricism","geochemical","geochemistry","geochronology","geocode","geocoder","geocoding","geode","geodesic","geodesy","geodetic","geoff","geoffrey","geoffry","geog","geographer","geographic","geographical","geography","geoip","geojson","geolocation","geologic","geological","geologist","geology","geom","geomagnetic","geomagnetically","geomagnetism","geometer","geometric","geometrical","geometrician","geometry","geomorphological","geomorphology","geophysical","geophysicist","geophysics","geopoint","geopolitic","geopolitical","geopolitics","georas","geordie","georg","george","georgeanna","georgeanne","georgena","georgeta","georgetown","georgetta","georgette","georgi","georgia","georgian","georgiana","georgianna","georgianne","georgie","georgina","georgine","georgy","geostationary","geosynchronous","geosyncline","geothermal","geothermic","ger","gerald","geralda","geraldine","geranium","gerard","gerardo","gerber","gerbil","gerda","gerek","gerhard","gerhardine","gerhardt","geri","gerianna","gerianne","geriatric","geriatrics","gerick","gerik","geritol","gerladina","germ","germain","germaine","german","germana","germane","germania","germanic","germanium","germanized","germantown","germany","germayne","germen","germicidal","germicide","germinal","germinate","germinated","germination","germinative","gerome","geronimo","gerontocracy","gerontological","gerontologist","gerontology","gerrard","gerri","gerrie","gerrilee","gerrit","gerry","gerrymander","gershwin","gert","gerta","gerti","gertie","gertrud","gertruda","gertrude","gertrudis","gerty","gerund","gerundive","gery","gestalt","gestapo","gestate","gestation","gestational","gesticulate","gesticulation","gesticulative","gestural","gesture","gesturedetector","gesturerecognizer","gestures","gesundheit","get","getabsolutepath","getaccesstoken","getaction","getactionbar","getactivesheet","getactivespreadsheet","getactivity","getaddress","getaddrinfo","getage","getall","getapplication","getapplicationcontext","getarguments","getassets","getasync","getattr","getattribute","getaway","getbasecontext","getbean","getbody","getboolean","getbootstrap","getboundingclientrect","getbounds","getbroadcast","getbyid","getbytes","getcell","getch","getchar","getchild","getchildat","getchildren","getclass","getclassloader","getcode","getcollection","getcolor","getcolumn","getcolumnindex","getcomponent","getconnection","getcontent","getcontentpane","getcontentresolver","getcontext","getcount","getcurrentinstance","getcurrentposition","getcurrentsession","getcurrentuser","getcwd","getdata","getdate","getday","getdefault","getdefaultproguardfile","getdefaultsharedpreferences","getdescription","getdouble","getdrawable","getelement","getelementbyid","getelementsbyclassname","getelementsbyname","getelementsbytagname","getemail","getentity","getenumerator","getenv","getexternalstoragedirectory","getextras","getfield","getfile","getfilename","getfiles","getfirstname","getfragmentmanager","getfullyear","gethashcode","getheight","gethours","gethsemane","getid","getimage","getindex","getinfo","getinputstream","getinstance","getint","getintent","getitem","getitemcount","getitemid","getitems","getjson","getjsonarray","getjsonobject","getkey","getkeycode","getlasterror","getlatitude","getlayoutinflater","getlayoutparams","getlength","getline","getlist","getlocation","getlogger","getlong","getlongitude","getmap","getmenuinflater","getmessage","getmethod","getminutes","getmodel","getmonth","getname","getnext","getnumber","getobject","getopt","getoutputstream","getpackagemanager","getpackagename","getpage","getparameter","getparameters","getparent","getpassword","getpath","getpid","getpixel","getposition","getpreferredsize","getprice","getproperties","getproperty","getquery","getrange","getreadabledatabase","getreference","getrepository","getrequest","getresource","getresourceasstream","getresources","getresponse","getresponsecode","getresponsestream","getresult","getresultlist","getrow","getruntime","gets","getscript","getselecteditem","getselection","getservice","getsession","getsettings","getsharedpreferences","getsheetbyname","getsimplename","getsingleton","getsize","getsource","getstate","getstatus","getstream","getstring","getstringextra","getsupportactionbar","getsupportfragmentmanager","getsystemservice","gettable","gettag","getter","getters","gettext","gettime","gettimeinmillis","getting","gettitle","gettoken","gettransaction","getty","gettype","gettysburg","getup","geturl","getuser","getuserid","getusername","getusers","getvalue","getvalues","getview","getwidth","getwindow","getwritabledatabase","getwriter","getx","gety","gevent","gewgaw","gewrztraminer","geyser","gf","gfortran","gfx","gg","ggplot","gh","ghana","ghanaian","ghanian","ghastliness","ghastly","ghat","ghats","ghc","ghci","ghent","gherardo","gherkin","ghetto","ghettoize","ghi","ghibelline","ghost","ghostlike","ghostliness","ghostly","ghostscript","ghostwrite","ghostwritten","ghostwrote","ghoul","ghoulish","ghoulishness","ghq","ghz","gi","giacinta","giacobo","giacometti","giacomo","giacopo","gian","giana","gianina","gianna","gianni","giannini","giant","giantess","giantkiller","giauque","giavani","gib","gibb","gibber","gibberish","gibbet","gibbie","gibbon","gibbous","gibbousness","gibby","gibe","giber","giblet","gibraltar","gibson","gid","giddap","giddily","giddiness","giddings","giddy","gide","gideon","gielgud","gienah","gif","giff","giffard","giffer","giffie","gifford","giffy","gift","gifted","giftedness","gig","gigabyte","gigacycle","gigahertz","gigantic","gigantically","giganticness","gigavolt","gigawatt","gigged","gigging","giggle","giggler","giggling","giggly","gigi","gigo","gigolo","gil","gila","gilbert","gilberta","gilberte","gilbertina","gilbertine","gilberto","gilbertson","gilburt","gilchrist","gild","gilda","gilder","gilding","gilead","gilemette","giles","gilgamesh","gilkson","gill","gillan","gilles","gillespie","gillette","gilli","gilliam","gillian","gillie","gilligan","gilly","gilmore","gilt","gimbaled","gimbals","gimbel","gimcrack","gimcrackery","gimlet","gimme","gimmick","gimmickry","gimmicky","gimp","gimpy","gin","gina","ginelle","ginevra","ginger","gingerbread","gingerliness","gingerly","gingersnap","gingery","gingham","gingivitis","gingrich","ginkgo","ginkgoes","ginmill","ginned","ginni","ginnie","ginnifer","ginning","ginny","gino","ginsberg","ginsburg","ginseng","gioconda","giordano","giorgi","giorgia","giorgio","giorgione","giotto","giovanna","giovanni","gipsy","giraffe","giralda","giraldo","giraud","giraudoux","gird","girded","girder","girdle","girdler","girl","girlfriend","girlhood","girlie","girlish","girlishness","girls","giro","girt","girth","girths","gis","gisela","giselbert","gisele","gisella","giselle","gish","gist","git","github","githubusercontent","gitignore","gitlab","giuditta","giulia","giuliano","giulietta","giulio","giuseppe","giustina","giustino","giusto","give","giveaway","giveback","given","givenname","giver","gives","giving","giza","gizela","gizmo","gizzard","gk","gl","glac","glacial","glaciate","glaciation","glacier","glaciological","glaciologist","glaciology","glad","gladded","gladden","gladder","gladdest","gladding","gladdy","glade","gladi","gladiator","gladiatorial","gladiola","gladioli","gladiolus","gladly","gladness","gladsome","gladstone","gladys","glamor","glamorization","glamorize","glamorizer","glamorous","glamorousness","glance","glancing","gland","glanders","glandes","glandular","glans","glare","glaring","glaringness","glaser","glasgow","glasnost","glass","glassblower","glassblowing","glassfish","glassful","glasshouse","glassily","glassiness","glassless","glassware","glasswort","glassy","glastonbury","glaswegian","glaucoma","glaucous","glaze","glazed","glazer","glazier","glazing","glbindbuffer","glbindtexture","glclear","glcolor","gleam","glean","gleaner","gleaning","gleason","gleda","glee","gleed","gleeful","gleefulness","gleeing","glen","glenable","glenda","glendale","glenden","glendon","glenine","glenn","glenna","glennie","glennis","gles","glew","glfloat","glfw","glib","glibber","glibbest","glibc","glibness","glide","glider","glim","glimmer","glimmering","glimpse","glimpser","glint","glissandi","glissando","glisten","glister","glitch","glitter","glittering","glittery","glitz","glitzy","glm","glmatrixmode","gloaming","gloat","gloater","gloating","glob","global","globalism","globalist","globalization","globally","globals","globe","globetrotter","globular","globularity","globularness","globule","globulin","glockenspiel","glommed","gloom","gloomily","gloominess","gloomy","glop","glopped","glopping","gloppy","glori","gloria","gloriana","gloriane","glorification","glorifier","glorify","glorious","gloriousness","glory","gloss","glossary","glossily","glossiness","glossolalia","glossy","glottal","glottalization","glottis","gloucester","glove","gloveless","glover","glow","glower","glowing","glowworm","glsl","gltexparameteri","glucose","glue","glued","gluer","gluey","gluier","gluiest","gluint","glum","glummer","glummest","glumness","gluon","glut","glutamate","gluten","glutenous","glutinous","glutinousness","glutted","glutting","glutton","gluttonous","gluttony","glvertex","glyceride","glycerin","glycerinate","glycerine","glycerol","glycerolized","glycine","glycogen","glycol","glyn","glynda","glynis","glynn","glynnis","glyph","glyphicon","glyphs","gm","gmap","gmaps","gmp","gms","gmt","gn","gnarl","gnash","gnat","gnaw","gnawer","gnawing","gneiss","gnni","gnome","gnomelike","gnomic","gnomish","gnomonic","gnostic","gnosticism","gnp","gnu","gnuplot","go","goa","goad","goal","goalie","goalkeeper","goalkeeping","goalless","goalmouth","goalpost","goals","goalscorer","goalscoring","goaltender","goat","goatee","goatherd","goatskin","gob","goback","gobbed","gobbet","gobbing","gobble","gobbledegook","gobbledygook","gobbler","gobi","goblet","goblin","god","godaddy","godard","godart","godchild","godchildren","goddammit","goddamn","goddard","goddart","goddaughter","godded","goddess","godding","godfather","godforsaken","godfree","godfrey","godfry","godhead","godhood","godiva","godless","godlessness","godlike","godlikeness","godliness","godly","godmother","godot","godparent","godsend","godson","godspeed","godthaab","godunov","godwin","godzilla","goebbels","goer","goering","goes","goethals","goethe","gofer","goff","gog","goggle","goggler","gogh","gogol","goiania","going","goiter","golan","golang","golconda","gold","golda","goldarina","goldberg","goldbrick","goldbricker","golden","goldenness","goldenrod","goldenseal","goldfinch","goldfish","goldi","goldia","goldie","goldilocks","goldina","golding","goldman","goldmine","goldsmith","goldsmiths","goldstein","goldwater","goldwyn","goldy","goleta","golf","golfer","golgotha","goliath","goliaths","golly","gomez","gomorrah","gompers","gonad","gonadal","gondola","gondolier","gondwanaland","gone","goner","gong","gonion","gonna","gonorrhea","gonorrheal","gonzales","gonzalez","gonzalo","goo","goober","good","goodbye","goodhearted","goodie","goodish","goodly","goodman","goodness","goodnight","goodrich","goods","goodwill","goodwin","goody","goodyear","gooey","goof","goofiness","goofy","goog","googling","gooier","gooiest","gook","goon","goop","goos","goose","gooseberry","goosebumps","gop","gopath","gopher","goran","goraud","gorbachev","gordan","gorden","gordian","gordie","gordimer","gordon","gordy","gore","goren","gorey","gorgas","gorge","gorged","gorgeous","gorgeousness","gorger","gorges","gorging","gorgon","gorgonzola","gorham","gorilla","gorily","goriness","goring","gorky","gormandize","gormandizer","gormless","gorp","gorse","gory","gos","gosh","goshawk","gosling","gospel","gospeler","gossamer","gossip","gossipy","got","gotcha","goth","gotham","gothart","gothic","gothicism","goths","goto","gotta","gotten","gottfried","goucher","gouda","gouge","gouger","goulash","gould","gounod","gourd","gourde","gourmand","gourmet","gout","gouty","gov","govern","governable","governance","governed","governess","governing","government","governmental","governments","governor","governorship","govt","gown","goya","gp","gpa","gpg","gpio","gpl","gpo","gps","gpss","gpu","gpus","gr","grab","grabbed","grabber","grabbing","grabs","gracchus","grace","graceful","gracefuller","gracefullest","gracefully","gracefulness","graceland","graceless","gracelessness","gracia","gracie","graciela","gracious","graciousness","grackle","grad","gradate","gradation","grade","graded","gradeigh","gradely","grader","grades","gradey","gradient","gradients","gradientstop","gradle","gradlew","gradual","gradualism","gradualist","gradually","gradualness","graduand","graduate","graduation","grady","graehme","graeme","graff","graffias","graffiti","graffito","graft","grafter","grafting","grafton","graham","grahame","graig","grail","grails","grain","grained","grainer","graininess","graining","grainy","gram","grammar","grammarian","grammatic","grammatical","grammaticality","grammaticalness","gramme","grammy","gramophone","grampians","grampus","gran","granada","granary","grand","grandam","grandaunt","grandchild","grandchildren","granddad","granddaddy","granddaughter","grandee","grandeur","grandfather","grandiloquence","grandiloquent","grandiose","grandiosity","grandkid","grandma","grandmaster","grandmother","grandnephew","grandness","grandniece","grandpa","grandparent","grandson","grandstand","grandstander","granduncle","grange","granger","granite","granitic","grannie","granny","granola","grant","granted","grantee","granter","grantham","granthem","grantley","grantor","grantresults","grants","grantsmanship","granular","granularity","granulate","granulation","granule","granulocytic","granville","grape","grapefruit","grapeshot","grapevine","graph","grapheme","graphic","graphical","graphicness","graphics","graphite","graphologist","graphology","graphql","graphs","graphviz","grapnel","grapple","grappler","grappling","grasp","grasper","grasping","graspingness","grass","grasshopper","grassland","grassroots","grassy","grata","grate","grateful","gratefuller","gratefullest","gratefulness","grater","grates","gratia","gratiana","graticule","gratification","gratified","gratify","gratifying","grating","gratis","gratitude","gratuitous","gratuitousness","gratuity","gravamen","grave","gravedigger","gravel","graven","graveness","graver","graves","graveside","gravestone","graveyard","gravid","gravida","gravidness","gravimeter","gravimetric","gravitas","gravitate","gravitation","gravitational","graviton","gravity","gravy","gray","graybeard","grayce","grayish","grayness","grayscale","grayson","graze","grazer","grazia","grazing","grease","greasepaint","greaseproof","greaser","greasily","greasiness","greasy","great","greatcoat","greaten","greater","greatest","greathearted","greatly","greatness","grebe","grecian","greece","greed","greedily","greediness","greeds","greedy","greek","greeley","green","greenback","greenbelt","greenberg","greenblatt","greenbriar","greene","greenery","greenfeld","greenfield","greenfly","greengage","greengrocer","greengrocery","greenhorn","greenhouse","greening","greenish","greenland","greenmail","greenness","greenpeace","greenroom","greensboro","greensleeves","greensville","greensward","greentree","greenville","greenwich","greenwood","greer","greet","greeter","greeting","greetings","greets","greg","gregarious","gregariousness","gregg","greggory","gregoire","gregoor","gregor","gregorian","gregoriancalendar","gregorio","gregorius","gregory","gremlin","grenada","grenade","grenadian","grenadier","grenadine","grenadines","grendel","grenier","grenoble","grenville","grep","grepcode","grepl","gresham","greta","gretal","gretchen","grete","gretel","grethel","gretna","gretta","gretzky","grew","grey","greybeard","greyhound","greyness","grid","gridbagconstraints","gridbaglayout","griddata","gridded","griddle","griddlecake","gridiron","gridlayout","gridlock","gridpane","grids","gridview","gridviewcolumn","gridviewrow","gridx","gridy","grief","grieg","grier","grievance","grieve","griever","grieving","grievous","grievousness","griff","griffie","griffin","griffith","griffon","griffy","grill","grille","griller","grillwork","grim","grimace","grimacer","grimaldi","grime","grimes","griminess","grimm","grimmer","grimmest","grimness","grimy","grin","grinch","grind","grinder","grinding","grindstone","gringo","grinned","grinner","grinning","grip","gripe","griper","grippe","gripper","gripping","gris","griselda","grisliness","grisly","grissel","grist","gristle","gristliness","gristly","gristmill","griswold","grit","gritted","gritter","grittiness","gritting","gritty","griz","grizzle","grizzling","grizzly","grnewald","groan","groaner","groat","grocer","grocery","grog","groggily","grogginess","groggy","groin","grok","grokked","grokking","grommet","gromyko","groofs","groom","groomer","groomsman","groomsmen","groot","groove","groover","groovy","grope","groper","gropius","grosbeak","grosgrain","gross","grosset","grossman","grossness","grosvenor","grosz","grotesque","grotesqueness","grotius","groton","grotto","grottoes","grouch","grouchily","grouchiness","grouchy","ground","groundbreaking","grounded","grounder","groundhog","groundless","groundlessness","groundnut","groundsheet","groundskeepers","groundsman","groundswell","groundwater","groundwork","group","groupbox","groupby","grouped","grouper","groupid","groupie","grouping","grouplayout","groupname","groupon","groupposition","groups","grouse","grouser","grout","grouter","grove","grovel","groveler","grovelike","groveling","grover","grow","grower","growing","growingly","growl","growler","growling","growly","grown","grownup","grows","growth","growths","grp","grpc","grub","grubbed","grubber","grubbily","grubbiness","grubbing","grubby","grubstake","grudge","grudger","grudging","gruel","grueling","gruesome","gruesomeness","gruff","gruffness","grumble","grumbler","grumbling","grumman","grump","grumpily","grumpiness","grumpy","grundy","grunge","grungy","grunion","grunt","grunter","grus","grusky","gruyeres","gruyre","gryphon","gs","gsa","gsl","gsm","gson","gsp","gst","gstatic","gstreamer","gsub","gt","gte","gteborg","gtest","gtk","gtm","gu","guacamole","guadalajara","guadalcanal","guadalquivir","guadalupe","guadeloupe","guallatiri","gualterio","guam","guamanian","guangzhou","guanine","guano","guantanamo","guarani","guarantee","guaranteed","guaranteeing","guarantees","guarantor","guaranty","guard","guarded","guardedness","guarder","guardhouse","guardia","guardian","guardianship","guardrail","guardroom","guards","guardsman","guardsmen","guarnieri","guatemala","guatemalan","guava","guayaquil","gubernatorial","gucci","gudgeon","guelph","guendolen","guenevere","guenna","guenther","guernsey","guerra","guerrero","guerrilla","guess","guessable","guessed","guesser","guesses","guessing","guesstimate","guesswork","guest","guests","guevara","guff","guffaw","guggenheim","guglielma","guglielmo","guhleman","gui","guiana","guice","guid","guidance","guide","guidebook","guided","guideline","guidelines","guidepost","guider","guides","guido","guids","guilbert","guild","guilder","guildhall","guile","guileful","guileless","guilelessness","guillaume","guillema","guillemette","guillemot","guillermo","guillotine","guilt","guiltily","guiltiness","guiltless","guiltlessness","guilty","guinea","guinean","guinevere","guinna","guinness","guise","guitar","guitarist","guiyang","guizot","gujarat","gujarati","gujranwala","gulag","gulch","gulden","gulf","gull","gullah","gullet","gulley","gullibility","gullible","gulliver","gully","gulp","gum","gumbo","gumboil","gumboots","gumdrop","gummed","gumminess","gumming","gummy","gumption","gumshoe","gumshoeing","gumtree","gun","gunar","gunboat","gunderson","gunfight","gunfighter","gunfire","gunflint","gunfought","gunicorn","gunilla","gunk","gunky","gunman","gunmen","gunmetal","gunnar","gunned","gunnel","gunner","gunnery","gunning","gunny","gunnysack","gunpoint","gunpowder","gunrunner","gunrunning","guns","gunship","gunshot","gunsling","gunslinger","gunsmith","gunsmiths","guntar","gunter","gunther","gunwale","guofeng","guppy","gupta","gurgle","gurkha","gurney","guru","gus","gusella","gush","gusher","gushy","guss","gusset","gussi","gussie","gussy","gust","gusta","gustaf","gustafson","gustatory","gustav","gustave","gustavo","gustavus","gusted","gusti","gustie","gustily","gustiness","gusting","gusto","gustoes","gusts","gusty","gut","gutenberg","guthrey","guthrie","guthry","gutierrez","gutless","gutlessness","guts","gutser","gutsiness","gutsy","gutted","gutter","guttering","guttersnipe","gutting","guttural","gutturalness","gutty","guy","guyana","guyanese","guys","guzman","guzzle","guzzler","gv","gw","gwalior","gwen","gwendolen","gwendolin","gwendoline","gwendolyn","gweneth","gwenette","gwenneth","gwenni","gwennie","gwenny","gwenora","gwenore","gwt","gwyn","gwyneth","gwynne","gx","gy","gym","gymkhana","gymnasia","gymnasium","gymnast","gymnastic","gymnastically","gymnastics","gymnosperm","gynecologic","gynecological","gynecologist","gynecology","gyp","gypped","gypper","gypping","gypsite","gypster","gypsum","gypsy","gyrate","gyration","gyrator","gyrfalcon","gyro","gyrocompass","gyroscope","gyroscopic","gyve","gz","gzip","h","ha","haag","haas","habakkuk","habeas","haber","haberdasher","haberdashery","haberman","habib","habiliment","habit","habitability","habitable","habitableness","habitant","habitat","habitation","habitations","habits","habitu","habitual","habitualness","habituate","habituation","hacienda","hack","hackage","hacked","hacker","hackers","hackett","hacking","hackle","hackler","hackney","hacks","hacksaw","hackwork","hacky","had","hadamard","hadar","haddad","haddock","hades","hadj","hadji","hadlee","hadleigh","hadley","hadn","hadoop","hadria","hadrian","hadron","hadst","haemoglobin","haemophilia","haemorrhage","hafiz","hafnium","haft","hag","hagan","hagar","hagen","hager","haggai","haggard","haggardness","hagged","hagging","haggis","haggish","haggle","haggler","hagiographa","hagiographer","hagiography","hagstrom","hague","haha","hahn","hahnium","haifa","haiku","hail","hailee","hailer","hailey","hailstone","hailstorm","haily","haiphong","hair","hairball","hairbreadth","hairbreadths","hairbrush","haircare","haircloth","haircloths","haircut","haircutting","hairdo","hairdresser","hairdressing","hairdryer","hairiness","hairless","hairlessness","hairlike","hairline","hairnet","hairpiece","hairpin","hairsbreadth","hairsbreadths","hairsplitter","hairsplitting","hairspray","hairspring","hairstyle","hairstylist","hairy","haiti","haitian","hajj","hajjes","hajji","hake","hakeem","hakim","hakka","hakluyt","hal","halal","halalled","halalling","halberd","halcyon","haldane","hale","haleakala","haleigh","haler","halest","halette","haley","half","halfback","halfbreed","halfhearted","halfheartedness","halfpence","halfpenny","halfpennyworth","halftime","halftone","halfway","halfword","hali","halibut","halide","halie","halifax","halimeda","halite","halitoses","halitosis","hall","hallelujah","hallelujahs","halley","halli","halliard","hallie","hallinan","hallmark","hallo","halloo","hallow","halloween","hallowing","hallows","hallsy","hallucinate","hallucination","hallucinatory","hallucinogen","hallucinogenic","hallway","hally","halo","halocarbon","halogen","halogenated","halon","halpern","halsey","halsy","halt","halter","halting","halve","halves","halyard","ham","hamal","haman","hamburg","hamburger","hamcrest","hamel","hamey","hamhung","hamid","hamil","hamilcar","hamilton","hamiltonian","hamish","hamitic","haml","hamlen","hamlet","hamlin","hammad","hammarskjold","hammed","hammer","hammerer","hammerhead","hammering","hammerless","hammerlock","hammerstein","hammertoe","hammett","hamming","hammock","hammond","hammurabi","hammy","hamnet","hamper","hampered","hampshire","hampton","hamster","hamstring","hamstrung","hamsun","han","hana","hanan","hancock","hand","handbag","handbagged","handbagging","handball","handbarrow","handbasin","handbill","handbook","handbrake","handcar","handcart","handclasp","handcraft","handcuff","handcuffs","handed","handedness","handel","hander","handful","handgun","handhold","handicap","handicapped","handicapper","handicapping","handicraft","handicraftsman","handicraftsmen","handily","handiness","handiwork","handkerchief","handle","handleable","handlebar","handlebars","handlecallback","handlechange","handleclick","handled","handleerror","handlelaunchactivity","handlemessage","handlenonsuccessanddebuggernotification","handler","handlerequest","handlers","handles","handless","handlesubmit","handling","handmade","handmaid","handmaiden","handout","handover","handpick","handrail","hands","handsaw","handset","handshake","handshaker","handshaking","handsome","handsomely","handsomeness","handspike","handspring","handstand","handwork","handwoven","handwrite","handwriting","handwritten","handy","handyman","handymen","haney","hang","hangar","hangdog","hanged","hanger","hanging","hangman","hangmen","hangnail","hangout","hangover","hangs","hangul","hangup","hangzhou","hank","hankel","hanker","hankerer","hankering","hankie","hanky","hanna","hannah","hanni","hannibal","hannie","hanny","hanoi","hanover","hanoverian","hans","hansel","hansen","hansiain","hansom","hanson","hanuka","hanukkah","hanukkahs","hap","hapgood","haphazard","haphazardness","hapless","haplessness","haploid","happed","happen","happened","happening","happens","happenstance","happily","happiness","happing","happy","haproxy","hapsburg","harald","harangue","haranguer","harare","harass","harasser","harassment","harbert","harbin","harbinger","harbor","harborer","harcourt","hard","hardback","hardball","hardboard","hardboiled","hardbound","hardcode","hardcoded","hardcoding","hardcore","hardcover","harden","hardened","hardener","hardening","harder","hardest","hardhat","hardheaded","hardheadedness","hardhearted","hardheartedness","hardihood","hardily","hardin","hardiness","harding","hardliner","hardly","hardness","hardscrabble","hardshell","hardship","hardstand","hardtack","hardtop","hardware","hardwire","hardwood","hardworking","hardy","hare","harebell","harebrained","harelip","harelipped","harem","hargreaves","hark","harlan","harland","harlem","harlen","harlene","harlequin","harley","harli","harlie","harlin","harlot","harlotry","harlow","harm","harman","harmed","harmer","harmful","harmfulness","harmless","harmlessness","harmon","harmonia","harmonic","harmonica","harmonically","harmonics","harmonie","harmonious","harmoniousness","harmonium","harmonization","harmonizations","harmonize","harmonized","harmonizer","harmonizes","harmony","harness","harnessed","harnesser","harnesses","harold","haroun","harp","harper","harping","harpist","harpoon","harpooner","harpsichord","harpsichordist","harpy","harrell","harri","harridan","harrie","harrier","harriet","harriett","harrietta","harriette","harrington","harriot","harriott","harrisburg","harrison","harrisonburg","harrow","harrower","harrumph","harry","harsh","harshen","harshness","hart","harte","hartford","hartley","hartline","hartman","hartwell","harv","harvard","harvest","harvested","harvester","harvestman","harvey","harwell","harwilll","has","hasattr","hasbro","hasclass","hasfocus","hash","hashcode","hashed","hasheem","hasher","hashes","hashim","hashing","hashish","hashlib","hashmap","hashset","hashtable","hashtag","hashtags","hasidim","haskel","haskell","haskins","haslett","hasmany","hasn","hasnext","hasone","hasownproperty","hasp","hassle","hassock","hast","haste","hasten","hastener","hastie","hastily","hastiness","hastings","hasty","hasvalue","hat","hatch","hatchback","hatcheck","hatched","hatcher","hatchery","hatchet","hatching","hatchure","hatchway","hate","hateful","hatefulness","hater","hatfield","hathaway","hatless","hatred","hatstands","hatted","hatter","hatteras","hatti","hattie","hatting","hatty","hauberk","haugen","haughtily","haughtiness","haughty","haul","haulage","hauler","haunch","haunt","haunter","haunting","hauptmann","hausa","hausdorff","hauser","hauteur","havana","havarti","have","havel","haven","havent","haver","haversack","having","havoc","havocked","havocking","haw","hawaii","hawaiian","hawk","hawker","hawking","hawkins","hawkish","hawkishness","hawley","haws","hawser","hawthorn","hawthorne","hay","haycock","hayden","haydn","haydon","hayes","hayfield","hayley","hayloft","haymow","haynes","hayrick","hayride","hayseed","haystack","haywain","hayward","haywire","haywood","hayyim","hazard","hazardous","hazardousness","haze","hazel","hazelcast","hazelnut","hazer","hazily","haziness","hazing","hazlett","hazlitt","hazy","hb","hbase","hbm","hbo","hbox","hbs","hc","hd","hdc","hdd","hdf","hdfs","hdpi","hdqrs","hdr","hdtv","he","head","headache","headaches","headband","headboard","headcount","headdress","header","headers","headerstyle","headertemplate","headertext","headerview","headfirst","headgear","headhunt","headhunter","headhunting","headily","headiness","heading","headings","headlamp","headland","headless","headlessness","headlight","headline","headliner","headlines","headlock","headlong","headman","headmaster","headmastership","headmen","headmistress","headphone","headpiece","headpin","headquarter","headrest","headroom","heads","headscarf","headset","headship","headshrinker","headsman","headsmen","headstall","headstand","headstock","headstone","headstrong","headwaiter","headwall","headwater","headway","headwind","headword","heady","heal","healed","healer","heall","health","healthcare","healthful","healthfully","healthfulness","healthily","healthiness","healths","healthy","heap","hear","heard","hearer","hearing","hearken","hears","hearsay","hearse","hearst","heart","heartache","heartbeat","heartbreak","heartbreaking","heartbroke","heartbroken","heartburn","heartburning","hearted","hearten","heartening","heartfelt","hearth","hearthrug","hearths","hearthstone","heartily","heartiness","heartland","heartless","heartlessness","heartrending","hearts","heartsick","heartsickness","heartstrings","heartthrob","heartwarming","heartwood","hearty","heat","heated","heatedly","heater","heath","heathen","heathendom","heathenish","heathenism","heather","heathery","heathkit","heathland","heathman","heaths","heatmap","heatproof","heats","heatstroke","heatwave","heave","heaven","heavenliness","heavenly","heavenward","heaver","heaves","heavily","heaviness","heaviside","heavy","heavyhearted","heavyset","heavyweight","heb","hebe","hebephrenic","hebert","hebraic","hebraism","hebrew","hebrides","hecate","hecatomb","heck","heckle","heckler","hectare","hectic","hectically","hectogram","hectometer","hector","hecuba","heda","hedda","heddi","heddie","hedge","hedgehog","hedgehop","hedgehopped","hedgehopping","hedger","hedgerow","hedging","hedi","hedonism","hedonist","hedonistic","hedvig","hedvige","hedwig","hedwiga","hedy","heed","heeded","heedful","heedfulness","heeding","heedless","heedlessness","heehaw","heel","heeler","heeling","heelless","heep","hefner","heft","heftily","heftiness","hefty","hegel","hegelian","hegemonic","hegemony","hegira","heida","heidegger","heidelberg","heidi","heidie","heifer","heifetz","height","heighten","heights","heimlich","heindrick","heine","heineken","heinlein","heinous","heinousness","heinrich","heinrick","heinrik","heinz","heinze","heir","heiress","heirloom","heisenberg","heiser","heist","heister","hejira","helaina","helaine","held","helen","helena","helene","helenka","helga","helge","helical","helices","helicon","helicopter","heliocentric","heliography","heliopolis","helios","heliosphere","heliotrope","heliport","helium","helix","hell","hellbender","hellbent","hellcat","hellebore","hellene","hellenic","hellenism","hellenist","hellenistic","hellenization","hellenize","heller","hellespont","hellfire","hellhole","helli","hellion","hellish","hellishness","hellman","hello","helloworld","helluva","helm","helmed","helmet","helmholtz","helming","helms","helmsman","helmsmen","helmut","helot","help","helped","helper","helpers","helpful","helpfulness","helping","helpless","helplessness","helpline","helpmate","helpmeet","helps","helsa","helsinki","helve","helvetian","helvetica","helvetius","helyn","hem","hematite","hematologic","hematological","hematologist","hematology","heme","hemingway","hemisphere","hemispheric","hemispherical","hemline","hemlock","hemmed","hemmer","hemming","hemoglobin","hemolytic","hemophilia","hemophiliac","hemorrhage","hemorrhagic","hemorrhoid","hemostat","hemp","hemstitch","hen","hence","henceforth","henceforward","hench","henchman","henchmen","henderson","hendrerit","hendrick","hendrickson","hendrik","hendrika","hendrix","henge","henka","henley","henna","hennessey","henning","henpeck","henri","henrie","henrieta","henrietta","henriette","henrik","henry","henryetta","hensley","henson","hep","heparin","hepatic","hepatitides","hepatitis","hepburn","hephaestus","hephzibah","hepper","heppest","hepplewhite","heptagon","heptagonal","heptane","heptathlon","her","hera","heracles","heraclitus","herald","heralded","heraldic","heraldry","herb","herbaceous","herbage","herbal","herbalism","herbalist","herbart","herbert","herbicidal","herbicide","herbie","herbivore","herbivorous","herby","herc","herculaneum","hercule","herculean","herculie","herd","herder","herdsman","herdsmen","here","hereabout","hereafter","hereby","hereditary","heredity","hereford","herein","hereinafter","hereof","hereon","heres","heresy","heretic","heretical","hereto","heretofore","hereunder","hereunto","hereupon","herewith","heriberto","heritable","heritage","heritor","herkimer","herman","hermann","hermaphrodite","hermaphroditic","hermaphroditus","hermeneutic","hermeneutics","hermes","hermetic","hermetical","hermia","hermie","hermina","hermine","herminia","hermione","hermit","hermitage","hermite","hermitian","hermon","hermosa","hermosillo","hermy","hernandez","hernando","hernia","hernial","herniate","hero","herod","herodotus","heroes","heroic","heroically","heroics","heroin","heroine","heroism","heroku","herokuapp","herold","heron","herpes","herpetologist","herpetology","herr","herrera","herrick","herring","herringbone","herrington","hersch","herschel","herself","hersey","hersh","hershel","hershey","herta","hertha","hertz","hertzog","hertzsprung","herve","hervey","herzegovina","herzl","hes","hesiod","hesitance","hesitancy","hesitant","hesitantly","hesitate","hesitater","hesitating","hesitation","hesperus","hess","hesse","hessian","hester","hesther","hestia","heston","heterodox","heterodoxy","heterodyne","heterogamous","heterogamy","heterogeneity","heterogeneous","heterogeneousness","heterosexual","heterosexuality","heterostructure","heterozygous","hetti","hettie","hetty","heublein","heuristic","heuristically","heusen","heuser","hew","hewe","hewer","hewet","hewett","hewie","hewitt","hewlett","hex","hexachloride","hexadecimal","hexafluoride","hexagon","hexagonal","hexagram","hexameter","hexer","hey","heyday","heyerdahl","heywood","hezekiah","hf","hg","hgt","hgwy","hh","hhh","hhs","hi","hialeah","hiatus","hiawatha","hibachi","hibernate","hibernation","hibernator","hibernia","hibernian","hibiscus","hiccup","hick","hickey","hickman","hickok","hickory","hicks","hid","hidden","hiddenfield","hiddenfor","hide","hideaway","hidebound","hideous","hideousness","hideout","hider","hides","hiding","hie","hieing","hierarchal","hierarchic","hierarchical","hierarchy","hieratic","hieroglyph","hieroglyphic","hieroglyphics","hieroglyphs","hieronymus","hifalutin","higashiosaka","higgins","high","highball","highborn","highboy","highbrow","highchair","highcharts","higher","highest","highfalutin","highfield","highgui","highhanded","highhandedness","highish","highland","highlander","highlands","highlight","highlighted","highlighting","highlights","highly","highness","highpoint","highroad","highs","highscore","hight","hightail","highway","highwayman","highwaymen","hijack","hijacker","hike","hiker","hilario","hilarious","hilariousness","hilarity","hilarius","hilary","hilbert","hilda","hildagard","hildagarde","hilde","hildebrand","hildegaard","hildegarde","hildy","hill","hillard","hillary","hillbilly","hillcrest","hillel","hiller","hillery","hilliard","hilliary","hillie","hillier","hilliness","hillman","hillmen","hillock","hillsboro","hillsdale","hillside","hilltop","hillwalking","hilly","hillyer","hilt","hilton","him","himalaya","himalayan","himmler","himself","hinayana","hind","hinda","hindemith","hindenburg","hinder","hindered","hinderer","hindi","hindmost","hindquarter","hindrance","hindsight","hindu","hinduism","hindustan","hindustani","hines","hinge","hinger","hinkle","hinsdale","hinstance","hint","hinter","hinterland","hinton","hints","hinze","hip","hipbone","hipness","hipparchus","hipped","hipper","hippest","hippie","hipping","hippo","hippocrates","hippocratic","hippodrome","hippopotamus","hippy","hipster","hiragana","hiram","hire","hired","hireling","hirer","hirey","hiring","hirohito","hiroshi","hiroshima","hirsch","hirsute","hirsuteness","his","hispanic","hispaniola","hiss","hisser","hissing","hist","histamine","histidine","histochemic","histochemical","histochemistry","histogram","histological","histologist","histology","historian","historic","historical","historically","historicalness","historicism","historicist","historicity","historiographer","historiography","history","histrionic","histrionically","histrionics","hit","hitachi","hitch","hitchcock","hitcher","hitchhike","hither","hitherto","hitler","hitless","hits","hittable","hitter","hitting","hittite","hiv","hive","hk","hkey","hklm","hl","hloise","hls","hm","hmac","hmm","hmo","hmong","hms","hn","ho","hoar","hoard","hoarder","hoarding","hoarfrost","hoariness","hoarse","hoarseness","hoary","hoax","hoaxer","hob","hobard","hobart","hobbed","hobbes","hobbies","hobbing","hobbit","hobble","hobbler","hobbs","hobby","hobbyhorse","hobbyist","hobday","hobey","hobgoblin","hobie","hobnail","hobnob","hobnobbed","hobnobbing","hobo","hoboken","hoc","hock","hocker","hockey","hockney","hockshop","hod","hodge","hodgepodge","hodgkin","hoe","hoebart","hoecake","hoedown","hoeing","hoer","hoff","hoffa","hoffman","hofstadter","hog","hogan","hogarth","hogback","hogged","hogger","hogging","hoggish","hogshead","hogtie","hogtying","hogwash","hohenlohe","hohenstaufen","hohenzollern","hohhot","hoist","hoister","hoke","hokey","hokier","hokiest","hokkaido","hokum","hokusai","holbein","holbrook","holcomb","hold","holdall","holden","holder","holders","holding","holdout","holdover","holds","holdup","hole","holes","holey","holiday","holidaymaker","holidays","holier","holiness","holistic","holistically","holland","hollandaise","hollander","holler","hollerith","holley","holli","hollie","hollister","hollow","holloway","hollowness","hollowware","holly","hollyanne","hollyhock","hollywood","holm","holman","holmes","holmium","holo","holocaust","holocene","hologram","holograph","holographic","holographs","holography","holst","holstein","holster","holt","holy","holyoke","holystone","holzman","hom","homage","homager","hombre","homburg","home","homebody","homebound","homeboy","homebrew","homebuilder","homebuilding","homebuilt","homecoming","homecontroller","homegrown","homeland","homeless","homelessness","homelike","homeliness","homely","homemade","homemake","homemaker","homemaking","homeomorph","homeomorphic","homeomorphism","homeopath","homeopathic","homeopaths","homeopathy","homeostases","homeostasis","homeostatic","homeowner","homeownership","homepage","homer","homere","homeric","homerists","homeroom","homerus","homes","homeschooling","homescreen","homesick","homesickness","homespun","homestead","homesteader","homestretch","hometown","homeward","homework","homeworker","homey","homeyness","homicidal","homicide","homier","homiest","homiletic","homily","hominess","homing","hominid","hominy","homo","homogamy","homogenate","homogeneity","homogeneous","homogenization","homogenize","homogenizer","homograph","homographs","homological","homologous","homologue","homology","homomorphic","homomorphism","homonym","homophobia","homophobic","homophone","homopolymers","homosexual","homosexuality","homotopy","homozygous","hon","honcho","honda","hondo","honduran","honduras","hone","honecker","honest","honestly","honesty","honey","honeybee","honeycomb","honeydew","honeylocust","honeymoon","honeymooner","honeysuckle","honeywell","hong","honiara","honk","honker","honky","honolulu","honor","honorable","honorableness","honorables","honorablies","honorably","honorarily","honorarium","honorary","honored","honoree","honorer","honoria","honorific","honors","honshu","hooch","hood","hooded","hoodedness","hoodlum","hoodoo","hoodwink","hoodwinker","hooey","hoof","hoofer","hoofmark","hook","hookah","hookahs","hooke","hooked","hookedness","hooker","hookey","hooking","hooks","hookup","hookworm","hooky","hooligan","hooliganism","hoop","hooper","hoopla","hooray","hoosegow","hoosier","hoot","hootch","hootenanny","hooter","hoover","hooves","hop","hope","hoped","hopeful","hopefully","hopefulness","hopeless","hopelessness","hoper","hopes","hopewell","hopi","hoping","hopkins","hopkinsian","hopped","hopper","hopping","hoppled","hopples","hopscotch","horace","horacio","horatia","horatio","horatius","horde","horehound","horizon","horizontal","horizontalalign","horizontalalignment","horizontalcontentalignment","horizontally","horizontalscrollview","hormel","hormonal","hormone","hormuz","horn","hornbeam","hornblende","hornblower","horne","horned","hornedness","hornet","horniness","hornless","hornlike","hornpipe","horny","horologic","horological","horologist","horology","horoscope","horowitz","horrendous","horrible","horribleness","horribly","horrid","horridness","horrific","horrifically","horrify","horrifying","horror","hors","horse","horseback","horsedom","horseflesh","horsefly","horsehair","horsehide","horselaugh","horselaughs","horseless","horselike","horsely","horseman","horsemanship","horsemen","horseplay","horseplayer","horsepower","horseradish","horseshoe","horseshoeing","horseshoer","horsetail","horsewhip","horsewhipped","horsewhipping","horsewoman","horsewomen","horsey","horsier","horsiest","horsing","horst","hort","hortatory","horten","hortense","hortensia","horticultural","horticulture","horticulturist","horton","horus","hos","hosanna","hose","hosea","hosepipe","hosier","hosiery","hosp","hospice","hospitable","hospitably","hospital","hospitality","hospitalization","hospitalize","host","hostage","hostconfig","hosted","hostel","hosteler","hostelry","hostess","hostile","hostility","hosting","hostler","hostname","hosts","hot","hotbed","hotblooded","hotbox","hotcake","hotchpotch","hotel","hotelier","hotelman","hotels","hotfoot","hothead","hotheaded","hotheadedness","hothouse","hotmail","hotness","hotplate","hotpot","hotrod","hotshot","hotspot","hotted","hottentot","hotter","hottest","hotting","houdaille","houdini","hough","hound","hounder","hounding","hour","hourglass","houri","hourly","hours","house","houseboat","housebound","houseboy","housebreak","housebreaker","housebreaking","housebroke","housebroken","housebuilding","houseclean","housecleaning","housecoat","housefly","houseful","household","householder","househusband","housekeep","housekeeper","housekeeping","houselights","housemaid","houseman","housemen","housemother","housemoving","houseparent","houseplant","houser","houses","housetop","housewares","housewarming","housewife","housewifeliness","housewifely","housewives","housework","houseworker","housing","housman","houston","houyhnhnm","hov","hove","hovel","hover","hovercraft","hovered","hoverer","hovering","hovers","how","howard","howbeit","howdah","howdahs","howdy","howe","howell","however","howey","howie","howitzer","howl","howler","howrah","howsoever","howto","hoy","hoyden","hoydenish","hoyle","hoyt","hp","hpa","hpp","hq","hql","hr","href","hresult","hrh","hrothgar","hrs","hs","hsl","hsqldb","hst","hsv","ht","htaccess","htc","htdocs","hth","htm","html","htmlattributes","htmldocument","htmlelement","htmlentities","htmlhelper","htmlspecialchars","htmlstring","htmltextwriter","htmlunit","htons","hts","http","httpapplication","httpbackend","httpclient","httpcomponents","httpconnection","httpcontext","httpd","httpentity","httpget","httphandler","httpheader","httpheaders","httplib","httpmethod","httponly","httppost","httpprovider","httprequest","httprequestmessage","httpresponse","httpresponsemessage","httpresponseredirect","httpruntime","https","httpsecurity","httpserver","httpservlet","httpservletrequest","httpservletresponse","httpsession","httpstatus","httpstatuscode","httpurlconnection","httputility","httpwebrequest","httpwebresponse","hu","huang","huarache","huawei","hub","hubba","hubbard","hubble","hubbub","hubby","hubcap","hube","huber","hubert","huberto","hubey","hubie","hubris","hubs","huck","huckleberry","huckster","hud","huddersfield","huddle","huddler","hudson","hue","huerta","huey","huff","huffily","huffiness","huffman","huffy","hug","huge","hugely","hugeness","hugged","hugger","hugging","huggins","hugh","hughie","hugibert","hugo","huguenot","hugues","huh","huhs","hui","huitzilopitchli","hula","hulda","hulk","hull","hullabaloo","huller","hulling","hullo","hum","human","humane","humaneness","humaner","humanest","humanism","humanist","humanistic","humanitarian","humanitarianism","humanity","humanization","humanize","humanized","humanizer","humanizes","humanizing","humankind","humanness","humannesses","humanoid","humans","humbert","humberto","humble","humbleness","humbly","humboldt","humbug","humbugged","humbugging","humdinger","humdrum","hume","humeral","humeri","humerus","humfrey","humfrid","humfried","humid","humidification","humidifier","humidify","humidistat","humidity","humidor","humiliate","humiliating","humiliation","humility","hummed","hummel","hummer","humming","hummingbird","hummock","hummocky","hummus","humongous","humor","humored","humorist","humorless","humorlessness","humorous","humorousness","hump","humpback","humph","humphrey","humphs","humpty","humus","humvee","hun","hunch","hunchback","hundred","hundredfold","hundreds","hundredths","hundredweight","hunfredo","hung","hungarian","hungary","hunger","hungover","hungrily","hungriness","hungry","hunk","hunker","hunky","hunt","hunter","hunting","huntington","huntlee","huntley","huntress","huntsman","huntsmen","huntsville","hurdle","hurdler","hurl","hurlee","hurleigh","hurler","hurley","hurling","huron","hurray","hurricane","hurried","hurriedness","hurry","hurst","hurt","hurter","hurtful","hurtfulness","hurting","hurtle","hurts","hurwitz","hus","husain","husband","husbander","husbandman","husbandmen","husbandry","husein","hush","husk","husker","huskily","huskiness","husking","husky","hussar","hussein","husserl","hussy","hustings","hustle","hustler","huston","hut","hutch","hutchins","hutchinson","hutchison","hutted","hutting","hutton","hutu","huxley","huygens","huzzah","huzzahs","hv","hw","hwnd","hwy","hx","hy","hyacinth","hyacintha","hyacinthe","hyacinthia","hyacinthie","hyacinths","hyades","hyaena","hyannis","hyatt","hybrid","hybridism","hybridization","hybridize","hyde","hyderabad","hydra","hydrangea","hydrant","hydrate","hydration","hydraulic","hydraulically","hydraulicked","hydraulicking","hydraulics","hydrazine","hydride","hydro","hydrocarbon","hydrocephali","hydrocephalus","hydrochemistry","hydrochloric","hydrochloride","hydrodynamic","hydrodynamical","hydrodynamics","hydroelectric","hydroelectrically","hydroelectricity","hydrofluoric","hydrofoil","hydrogen","hydrogenate","hydrogenation","hydrogenations","hydrogenous","hydrological","hydrologist","hydrology","hydrolysis","hydrolyze","hydrolyzed","hydromagnetic","hydromechanics","hydrometer","hydrometry","hydrophilic","hydrophobia","hydrophobic","hydrophone","hydroplane","hydroponic","hydroponics","hydrosphere","hydrostatic","hydrostatics","hydrotherapy","hydrothermal","hydrous","hydroxide","hydroxy","hydroxyl","hydroxylate","hydroxyzine","hyena","hygiene","hygienic","hygienically","hygienics","hygienist","hygrometer","hygroscopic","hying","hyman","hymen","hymeneal","hymie","hymn","hymnal","hymnbook","hynda","hype","hyper","hyperactive","hyperactivity","hyperbola","hyperbole","hyperbolic","hyperbolically","hyperboloid","hyperboloidal","hypercellularity","hypercritical","hypercube","hyperemia","hyperemic","hyperfine","hypergamous","hypergamy","hyperglycemia","hyperinflation","hyperion","hyperledger","hyperlink","hyperlinks","hypermarket","hypermedia","hyperplane","hyperplasia","hypersensitive","hypersensitiveness","hypersensitivity","hypersonic","hyperspace","hypersphere","hypertension","hypertensive","hypertext","hyperthyroid","hyperthyroidism","hypertrophy","hypervelocity","hyperventilate","hyperventilation","hyphen","hyphenate","hyphenated","hyphenation","hyphens","hypnoses","hypnosis","hypnotherapy","hypnotic","hypnotically","hypnotism","hypnotist","hypnotize","hypo","hypoactive","hypoallergenic","hypocellularity","hypochondria","hypochondriac","hypocrisy","hypocrite","hypocritical","hypodermic","hypoglycemia","hypoglycemic","hypophyseal","hypophysectomized","hypotenuse","hypothalami","hypothalamic","hypothalamically","hypothalamus","hypothermia","hypotheses","hypothesis","hypothesize","hypothesizer","hypothetic","hypothetical","hypothyroid","hypothyroidism","hypoxia","hyssop","hysterectomy","hysteresis","hysteria","hysteric","hysterical","hyundai","hz","i","ia","iaccoca","iactionresult","iago","iain","iam","iamb","iambi","iambic","iambus","ian","ianthe","iasyncresult","ib","ibaction","ibadan","ibb","ibbie","ibby","iberia","iberian","ibero","ibex","ibid","ibidem","ibinder","ibis","ibm","ibo","iboutlet","ibrahim","ibsen","ibuprofen","ic","icarus","icbm","icc","ice","iceberg","iceboat","icebound","icebox","icebreaker","icecap","iceland","icelander","icelandic","iceman","icemen","icepack","icepick","ichabod","ichneumon","ichthyologist","ichthyology","icicle","icily","iciness","icing","icky","icloud","icmp","ico","icollection","icommand","icon","iconic","iconoclasm","iconoclast","iconoclastic","iconography","icons","iconv","icosahedra","icosahedral","icosahedron","ics","ictus","icu","icy","id","ida","idaho","idahoan","idahoes","idalia","idalina","idaline","idc","ide","idea","ideal","idealism","idealist","idealistic","idealistically","idealization","idealize","idealized","idealizer","ideally","idealogical","ideas","ideate","ideation","idell","idelle","idem","idempotent","ident","identical","identicalness","identifiability","identifiable","identifiably","identification","identified","identifier","identifiers","identifies","identify","identifying","identities","identity","identitymodel","identityserver","ideogram","ideograph","ideographic","ideographs","ideological","ideologist","ideologue","ideology","ideone","ides","idette","idf","idictionary","idiocy","idiolect","idiom","idiomatic","idiomatically","idiopathic","idiosyncrasy","idiosyncratic","idiosyncratically","idiot","idiotic","idiotically","idisposable","idl","idle","idleness","idler","idol","idolater","idolatress","idolatrous","idolatry","idolization","idolize","idolized","idolizer","idp","ids","idt","iduser","idx","idyll","idyllic","idyllically","ie","ieee","ienumerable","ienumerator","ietf","ieyasu","if","iface","ifdef","ifelse","iferror","iffiness","iffy","ifmodule","ifndef","ifni","ifnull","ifoo","iframe","iframes","ifs","ifstream","ig","iggie","iggy","igloo","ignace","ignacio","ignacius","ignatius","ignaz","ignazio","igneous","ignitable","ignite","igniter","ignition","ignoble","ignobleness","ignobly","ignominious","ignominy","ignorable","ignoramus","ignorance","ignorant","ignorantness","ignore","ignorecase","ignored","ignorer","ignores","ignoring","igor","igraph","iguana","iguassu","ih","ii","iid","iif","iii","iirc","iis","ij","ijsselmeer","ik","ike","ikey","ikhnaton","ikon","il","ila","ilaire","ilario","ilea","ileana","ileane","ileitides","ileitis","ilene","ileum","ilia","iliac","iliad","ilise","ilist","ilium","ilk","ilka","ill","illa","illegal","illegalaccessexception","illegalargumentexception","illegality","illegalstateexception","illegibility","illegible","illegibly","illegitimacy","illegitimate","illiberal","illiberality","illicit","illicitness","illimitable","illimitableness","illinois","illinoisan","illiquid","illiteracy","illiterate","illiterateness","illness","illogic","illogical","illogicality","illogicalness","illume","illuminate","illuminati","illuminating","illuminatingly","illumination","illumine","illus","illusion","illusionary","illusionist","illusive","illusiveness","illusoriness","illusory","illustrate","illustrated","illustrates","illustration","illustrative","illustrator","illustrious","illustriousness","illy","iloc","ilogger","ilona","ilsa","ilse","ilysa","ilyse","ilyssa","ilyushin","im","imag","image","imageadapter","imagearray","imagebutton","imagedata","imagefield","imagefile","imageformat","imageicon","imageid","imageio","imagelist","imageloader","imagemagick","imagen","imagename","imagenamed","imagepath","imagepicker","imagery","images","imageshack","imagesize","imagesource","imageuri","imageurl","imageview","imagewidth","imagick","imaginable","imaginableness","imaginably","imaginariness","imaginary","imagination","imaginative","imaginativeness","imagine","imagined","imaginer","imaging","imago","imagoes","imam","imap","imbalance","imbecile","imbecilic","imbecility","imbibe","imbiber","imbrication","imbrium","imbroglio","imbruing","imbue","imdb","ime","imei","imelda","imessage","imf","img","imgdata","imgproc","imgs","imgur","imgurl","imgview","imho","imitable","imitate","imitation","imitative","imitativeness","imitator","imm","immaculate","immaculateness","immanence","immanency","immanent","immanuel","immaterial","immateriality","immaterialness","immature","immatureness","immaturity","immeasurable","immeasurableness","immeasurably","immediacy","immediate","immediately","immediateness","immemorial","immense","immenseness","immensity","immerse","immersible","immersion","immigrant","immigrate","immigration","imminence","imminent","imminentness","immobile","immobility","immobilization","immobilize","immoderate","immoderateness","immoderation","immodest","immodesty","immolate","immolation","immoral","immorality","immortal","immortality","immortalize","immortalized","immovability","immovable","immovableness","immovably","immune","immunity","immunization","immunize","immunoassay","immunodeficiency","immunodeficient","immunologic","immunological","immunologist","immunology","immure","immutability","immutable","immutableness","immutably","imnsho","imo","imogen","imogene","imojean","imp","impact","impaction","impactor","impair","impaired","impairer","impairment","impala","impale","impalement","impaler","impalpable","impalpably","impanel","impart","impartation","impartial","impartiality","impassable","impassableness","impassably","impasse","impassibility","impassible","impassibly","impassion","impassioned","impassive","impassiveness","impassivity","impasto","impatience","impatiens","impatient","impeach","impeachable","impeacher","impeachment","impeccability","impeccable","impeccably","impecunious","impecuniousness","imped","impedance","impede","impeded","impeder","impediment","impedimenta","impel","impelled","impeller","impelling","impend","impenetrability","impenetrable","impenetrableness","impenetrably","impenitence","impenitent","imperative","imperativeness","imperceivable","imperceptibility","imperceptible","imperceptibly","imperceptive","imperdiet","imperf","imperfect","imperfectability","imperfection","imperfectness","imperial","imperialism","imperialist","imperialistic","imperialistically","imperil","imperilment","imperious","imperiousness","imperishable","imperishableness","imperishably","impermanence","impermanent","impermeability","impermeable","impermeableness","impermeably","impermissible","impersonal","impersonality","impersonalized","impersonate","impersonation","impersonator","impertinence","impertinent","imperturbability","imperturbable","imperturbably","impervious","imperviousness","impetigo","impetuosity","impetuous","impetuousness","impetus","impiety","imping","impinge","impingement","impious","impiousness","impish","impishness","impl","implacability","implacable","implacableness","implacably","implant","implantation","implanter","implausibility","implausible","implausibly","implement","implementability","implementable","implementation","implementations","implemented","implementer","implementing","implementor","implements","implicant","implicate","implication","implications","implicative","implicit","implicitly","implicitness","implied","implies","implode","implore","imploring","implosion","implosive","imply","implying","impolite","impoliteness","impolitic","impoliticness","imponderable","imponderableness","import","importance","important","importantly","importation","imported","importer","importerror","importing","importlib","imports","importunate","importunateness","importune","importuner","importunity","imposable","impose","imposer","imposing","imposingly","imposition","impossibility","impossible","impossibleness","impossibly","impost","imposter","impostor","imposture","impotence","impotency","impotent","impound","impoundments","impoverish","impoverisher","impoverishment","impracticable","impracticableness","impracticably","impractical","impracticality","impracticalness","imprecate","imprecation","imprecise","impreciseness","imprecision","impregnability","impregnable","impregnableness","impregnably","impregnate","impregnation","impresario","impress","impressed","impresser","impressibility","impressible","impression","impressionability","impressionable","impressionableness","impressionism","impressionist","impressionistic","impressions","impressive","impressiveness","impressment","imprimatur","imprint","imprinter","imprinting","imprison","imprisonment","improbability","improbable","improbableness","improbably","impromptu","improper","improperness","impropitious","impropriety","improve","improved","improvement","improvements","improver","improves","improvidence","improvident","improving","improvisation","improvisational","improvisatory","improvise","improviser","imprudence","imprudent","impudence","impudent","impugn","impugner","impulse","impulsion","impulsive","impulsiveness","impunity","impure","impureness","impurity","imputation","impute","imread","imshow","imus","in","ina","inaccessible","inaccurate","inaction","inactive","inadequate","inadvertence","inadvertent","inalienability","inalienably","inalterable","inalterableness","inamorata","inane","inanimate","inanimateness","inanity","inappeasable","inappropriate","inarray","inarticulate","inasmuch","inaugural","inaugurate","inauguration","inauthenticity","inbound","inbox","inbred","inbreed","inbuilt","inc","inca","incalculableness","incalculably","incandescence","incandescent","incant","incantation","incantatory","incapable","incapacitate","incapacitation","incarcerate","incarceration","incarnadine","incarnate","incarnation","incase","incendiary","incense","incentive","incentively","incentives","incept","inception","inceptive","inceptor","incessant","incest","incestuous","incestuousness","inch","inches","inchoate","inchon","inchworm","incidence","incident","incidental","incidentally","incidents","incididunt","incinerate","incineration","incinerator","incipience","incipiency","incipient","incise","incision","incisive","incisiveness","incisor","incite","incitement","inciter","incl","inclination","incline","inclined","incliner","inclining","include","included","includes","including","inclusion","inclusive","inclusiveness","incognito","incoherency","income","incoming","incommode","incommunicado","incomparable","incompatible","incompetent","incomplete","inconceivability","inconceivable","inconceivableness","incondensable","incongruousness","inconsiderable","inconsiderableness","inconsistence","inconsistent","inconsolable","inconsolableness","inconsolably","incontestability","incontestably","incontrovertibly","inconvenience","inconvenient","inconvertibility","inconvertible","incorporable","incorporate","incorporated","incorrect","incorrectly","incorrigibility","incorrigible","incorrigibleness","incorrigibly","incorruptible","incorruptibly","incr","increase","increased","increaser","increases","increasing","increasingly","incredible","incredibleness","incredibly","increment","incremental","incrementation","incremented","incrementing","increments","incriminate","incrimination","incriminatory","incrustation","incubate","incubation","incubator","incubus","inculcate","inculcation","inculpate","incumbency","incumbent","incunabula","incunabulum","incurable","incurious","incursion","ind","indebted","indebtedness","indeed","indefatigable","indefatigableness","indefatigably","indefeasible","indefeasibly","indefinable","indefinableness","indefinite","indefinitely","indelible","indelibly","indemnification","indemnify","indemnity","indent","indentation","indented","indenter","indention","indenture","independence","independent","independently","indescribable","indescribableness","indescribably","indestructible","indestructibleness","indestructibly","indeterminably","indeterminacy","indeterminate","indeterminism","index","indexation","indexed","indexeddb","indexer","indexerror","indexes","indexing","indexof","indexpath","india","indian","indiana","indianan","indianapolis","indianian","indicant","indicate","indicated","indicates","indicating","indication","indicative","indicator","indicators","indices","indict","indicter","indictment","indifference","indigence","indigenous","indigenousness","indigent","indigestible","indignant","indignation","indigo","indira","indirect","indirection","indirectly","indiscreet","indiscriminate","indiscriminateness","indispensability","indispensable","indispensableness","indispensably","indisputable","indisputableness","indissoluble","indissolubleness","indissolubly","indistinguishable","indistinguishableness","indite","indium","individual","individualism","individualist","individualistic","individualistically","individuality","individualization","individualize","individualized","individualizer","individualizes","individualizing","individually","individuals","individuate","individuation","indivisible","indivisibleness","indivisibly","indochina","indochinese","indoctrinate","indoctrination","indoctrinator","indolence","indolent","indomitable","indomitableness","indomitably","indonesia","indonesian","indoor","indore","indra","indubitable","indubitableness","indubitably","induce","induced","inducement","inducer","inducible","induct","inductance","inductee","induction","inductive","inductiveness","inductor","indulge","indulgence","indulgent","indulger","indus","industrial","industrialism","industrialist","industrialization","industrialize","industrialized","industries","industrious","industriousness","industry","indx","indy","inebriate","inebriation","inedible","ineducable","ineffability","ineffable","ineffableness","ineffably","inefficient","inelastic","ineligibly","ineluctable","ineluctably","inept","ineptitude","ineptness","inequality","inequivalent","inerrant","inert","inertia","inertial","inertness","ines","inescapably","inesita","inessa","inestimably","inet","inetaddress","inetpub","inevitability","inevitable","inevitableness","inevitably","inexact","inexhaustible","inexhaustibleness","inexhaustibly","inexorability","inexorable","inexorableness","inexorably","inexpedience","inexplicable","inexplicableness","inexplicably","inexplicit","inexpressibility","inexpressible","inexpressibleness","inextricably","inez","inf","infamous","infamy","infancy","infant","infanticide","infantile","infantry","infantryman","infantrymen","infarct","infarction","infatuate","infatuation","infauna","infect","infected","infecter","infection","infectious","infectiousness","infective","infer","inference","inferential","inferior","inferiority","infernal","inferno","inferred","inferring","infertile","infest","infestation","infester","infidel","infighting","infile","infill","infiltrate","infiltrator","infinispan","infinite","infinitely","infinitesimal","infinitival","infinitive","infinitude","infinitum","infinity","infirmary","infirmity","infix","inflammable","inflammableness","inflammation","inflammatory","inflatable","inflate","inflated","inflateexception","inflater","inflating","inflation","inflationary","inflect","inflection","inflectional","inflexible","inflexibleness","inflexion","inflict","inflicter","infliction","inflow","influence","influenced","influencer","influent","influential","influenza","info","infobox","infocenter","infomercial","inform","informatica","informatics","information","informational","informations","informative","informativeness","informatory","informed","informer","infos","infotainment","infowindow","infra","infrared","infrasonic","infrastructural","infrastructure","infrequence","infringe","infringement","infringer","infuriate","infuriating","infuriation","infuse","infuser","infusible","infusibleness","ing","inga","ingaberg","ingaborg","ingamar","ingar","inge","ingeberg","ingeborg","ingelbert","ingemar","ingenious","ingeniousness","ingenuity","ingenuous","ingenuousness","inger","ingersoll","ingest","ingestible","ingestion","inglebert","inglenook","inglewood","inglis","ingmar","ingnue","ingoing","ingot","ingra","ingrained","ingram","ingrate","ingratiate","ingratiating","ingratiation","ingredient","ingredients","ingres","ingress","ingression","ingrid","ingrim","ingrown","inguinal","ingunna","inhabit","inhabitable","inhabitance","inhabited","inhabiter","inhalant","inhalation","inhalator","inhale","inhere","inherent","inherently","inherit","inheritable","inheritableness","inheritance","inherited","inheriting","inheritor","inheritress","inheritrix","inherits","inhibit","inhibited","inhibiter","inhibition","inhibitor","inhibitory","inhomogeneous","inhospitable","inhospitableness","inhospitality","ini","inigo","inimical","inimitable","inimitableness","inimitably","inion","iniquitous","iniquitousness","iniquity","init","initandlisten","initial","initialcontext","initialer","initialisation","initialise","initialised","initializable","initialization","initializations","initialize","initializecomponent","initialized","initializer","initializers","initializes","initializing","initially","initials","initialstate","initiate","initiated","initiates","initiating","initiation","initiative","initiator","initiatory","initmap","initwithdata","initwithframe","initwithnibname","initwithstyle","initwithtitle","inject","injectable","injected","injecting","injection","injections","injector","injunctive","injure","injured","injurer","injurious","injuriousness","ink","inkblot","inker","inkiness","inkling","inkscape","inkstand","inkwell","inky","inland","inlander","inlay","inletting","inline","inlined","inlining","inly","inmost","inn","inna","innards","innate","innateness","inner","innerexception","innerheight","innerhtml","innermost","innersole","innerspring","innertext","innervate","innervation","innerwidth","inning","innis","innkeeper","innocence","innocent","innocuous","innocuousness","innodb","innovate","innovation","innovative","innovator","innovatory","innsbruck","innuendo","innumerability","innumerable","innumerableness","innumerably","innumerate","inoculate","inoculation","inoculative","inode","inoffensive","inonu","inopportune","inopportuneness","inorder","inordinate","inordinateness","inorganic","inotifypropertychanged","inout","inp","inpatient","inplace","input","inputarray","inputbox","inputdata","inputfield","inputfile","inputid","inputline","inputmethodmanager","inputs","inputstream","inputstreamreader","inputstring","inputted","inputtext","inputting","inputtype","inputvalue","inquire","inquirer","inquiring","inquiry","inquisition","inquisitional","inquisitive","inquisitiveness","inquisitor","inquisitorial","inri","inrush","ins","insalubrious","insamplesize","insane","insanitary","insatiability","insatiable","insatiableness","insatiably","inscribe","inscription","inscrutability","inscrutable","inscrutableness","inscrutably","inseam","insecticidal","insecticide","insectivore","insectivorous","insecure","insecureness","inseminate","insemination","insensate","insensateness","insensible","insensitive","insentient","inseparable","insert","insertafter","insertbefore","insertcell","inserted","inserter","inserting","insertion","inserts","inset","insets","insetting","inshore","inside","insider","insidious","insidiousness","insight","insightful","insights","insigne","insignia","insignificant","insinuate","insinuating","insinuation","insinuator","insipid","insipidity","insist","insistence","insistent","insisting","insociable","insofar","insole","insolence","insolent","insoluble","insolubleness","insolubly","insomnia","insomniac","insomuch","insouciance","insouciant","inspect","inspecting","inspection","inspective","inspector","inspectorate","inspiration","inspirational","inspire","inspired","inspirer","inspiring","inspirit","inst","instagram","install","installable","installation","installations","installed","installer","installers","installing","installment","installs","instance","instanceid","instanceof","instances","instant","instantaneous","instantaneousness","instantiate","instantiated","instantiates","instantiateviewcontrollerwithidentifier","instantiating","instantiation","instantly","instate","instead","instigate","instigation","instigator","instillation","instinct","instinctive","instinctual","institute","instituter","institutes","institution","institutional","institutionalism","institutionalist","institutionalization","institutionalize","institutions","institutor","instr","instream","instruct","instructed","instruction","instructional","instructions","instructive","instructiveness","instructor","instrument","instrumental","instrumentalist","instrumentality","instrumentation","instruments","insubordinate","insubstantial","insufferable","insufferably","insufficient","insular","insularity","insulate","insulated","insulation","insulator","insulin","insult","insulter","insulting","insuperable","insuperably","insupportable","insupportableness","insurance","insure","insured","insurer","insurgence","insurgency","insurgent","insurmountably","insurrection","insurrectionist","int","intact","intactness","intaglio","intake","intangible","intarray","integer","integerfield","integers","integrability","integrable","integral","integrand","integrate","integrated","integrates","integrating","integration","integrative","integrator","integrity","integument","intel","intellect","intellective","intellectual","intellectualism","intellectuality","intellectualize","intellectualness","intelligence","intelligencer","intelligent","intelligentsia","intelligibilities","intelligibility","intelligible","intelligibleness","intelligibly","intellij","intellisense","intelsat","intemperate","intend","intendant","intended","intendedness","intender","intensification","intensifier","intensify","intensional","intensity","intensive","intensiveness","intent","intentfilter","intention","intentional","intentionality","intentionally","intentions","intentness","intents","intentservice","inter","interact","interacting","interaction","interactions","interactive","interactively","interactivity","interacts","interaxial","interbank","interbred","interbreed","intercalate","intercalation","intercase","intercaste","intercede","interceder","intercensal","intercept","interception","interceptor","interceptors","intercession","intercessor","intercessory","interchange","interchangeability","interchangeable","interchangeableness","interchangeably","interchanger","intercity","interclass","intercohort","intercollegiate","intercom","intercommunicate","intercommunication","interconnect","interconnected","interconnectedness","interconnection","interconnectivity","intercontinental","interconversion","intercorrelated","intercourse","interdata","interdenominational","interdepartmental","interdependence","interdependency","interdependent","interdict","interdiction","interdisciplinary","interdum","interest","interested","interesting","interestingly","interestingness","interests","interface","interfaces","interfacing","interfaith","interfere","interference","interferer","interfering","interferometer","interferometric","interferometry","interferon","interfile","intergalactic","intergeneration","intergenerational","interglacial","intergovernmental","intergroup","interim","interindex","interindustry","interior","interj","interject","interjection","interjectional","interlace","interlard","interlayer","interleave","interleukin","interlibrary","interline","interlinear","interlingua","interlingual","interlining","interlink","interlisp","interlobular","interlock","interlocker","interlocutor","interlocutory","interlope","interloper","interlude","intermarriage","intermarry","intermediary","intermediate","intermediateness","intermediates","intermediation","interment","intermeshed","intermetrics","intermezzi","intermezzo","interminably","intermingle","intermission","intermittent","intermix","intermodule","intermolecular","intern","internal","internaldofilter","internalization","internalize","internally","internals","international","internationale","internationalism","internationalist","internationality","internationalization","internationalize","interne","internecine","internee","internet","internetwork","internist","internment","internship","internuclear","interocular","interoffice","interop","interoperability","interopservices","interp","interpenetrates","interpersonal","interplanetary","interplay","interpol","interpolate","interpolated","interpolation","interpose","interposer","interposition","interpret","interpretable","interpretation","interpretative","interpreted","interpreter","interpreting","interpretive","interpretor","interprets","interprocess","interprocessor","interquartile","interracial","interred","interregional","interregnum","interrelate","interrelated","interrelatedness","interrelation","interrelationship","interring","interrogate","interrogation","interrogative","interrogator","interrogatory","interrupt","interrupted","interruptedexception","interrupter","interruptibility","interruptible","interruption","interrupts","interscholastic","intersect","intersection","intersects","intersession","interspecies","intersperse","interspersion","interstage","interstate","interstellar","interstice","interstitial","intersurvey","intertask","intertwine","interurban","interval","intervals","intervene","intervener","intervenor","intervention","interventionism","interventionist","interview","interviewed","interviewee","interviewer","interviewing","interviews","intervocalic","interweave","interwove","interwoven","intestacy","intestinal","intestine","inti","intifada","intimacy","intimal","intimate","intimateness","intimater","intimation","intimidate","intimidating","intimidation","intl","into","intolerable","intolerableness","intolerant","intonate","intonation","intoxicant","intoxicate","intoxicated","intoxication","intptr","intra","intracellular","intracity","intraclass","intracohort","intractability","intractable","intractableness","intradepartmental","intrafamily","intragenerational","intraindustry","intraline","intrametropolitan","intramural","intramuscular","intranasal","intranet","intransigence","intransigent","intransitive","intraoffice","intraprocess","intrapulmonary","intraregional","intrasectoral","intrastate","intratissue","intrauterine","intravenous","intrepid","intrepidity","intrepidness","intricacy","intricate","intricateness","intrigue","intriguer","intriguing","intrinsic","intrinsically","intro","introduce","introduced","introducer","introduces","introducing","introduction","introductory","introit","introject","introspect","introspection","introspective","introspectiveness","introversion","introvert","intrude","intruder","intrusion","intrusive","intrusiveness","ints","intubate","intubation","intuit","intuition","intuitionist","intuitive","intuitiveness","intval","intvalue","inuit","inundate","inundation","inure","inv","invade","invader","invalid","invalidate","invalidated","invalidism","invalidoperationexception","invariable","invariant","invariantculture","invasion","invasive","invective","invectiveness","inveigh","inveigher","inveighs","inveigle","inveigler","invent","invented","invention","inventive","inventiveness","inventor","inventory","inverness","inverse","inversion","invert","inverted","inverter","invertible","invest","invested","investigate","investigating","investigation","investigator","investigatory","investing","investiture","investment","investments","investor","investors","inveteracy","inveterate","inviability","invidious","invidiousness","invigilate","invigilator","invigorate","invigorating","invigoration","invigorations","invincibility","invincible","invincibleness","invincibly","inviolability","inviolably","inviolate","inviolateness","inviscid","invisible","invisibleness","invitation","invitational","invite","invited","invitee","inviter","inviting","invocable","invocablehandlermethod","invocate","invocation","invocations","invocationtargetexception","invoice","invoices","invoke","invoked","invokelater","invokemethod","invokenative","invoker","invokes","invoking","involuntariness","involuntary","involute","involution","involutorial","involve","involved","involvedly","involvement","involver","involves","involving","invulnerability","invulnerableness","inward","inwardness","io","ioc","ioctl","iodate","iodation","iodide","iodinate","iodine","iodize","ioe","ioerror","ioexception","iolande","iolanthe","ion","iona","ionesco","ionian","ionic","ionicframework","ionization","ionize","ionized","ionizer","ionizes","ionizing","ionosphere","ionospheric","iorgo","iormina","ios","iosep","iostream","iot","iota","iou","ioutils","iowa","iowan","ip","ipa","ipad","ipaddress","ipc","ipecac","ipendpoint","iphigenia","iphone","iphoneos","iphones","iphonesimulator","ipn","ipo","ipod","ips","ipso","ipsum","ipswich","iptables","ipv","ipython","iq","iqbal","iqueryable","iquitos","ir","ira","iran","iranian","iraq","iraqi","irascibility","irascible","irascibly","irate","irateness","irb","irc","ire","ireful","ireland","irena","irene","irenic","irepository","irides","iridescence","iridescent","iridium","irids","irina","iris","irish","irishman","irishmen","irishwoman","irishwomen","irita","irk","irksome","irksomeness","irkutsk","irma","iron","ironclad","ironer","ironic","ironical","ironicalness","ironing","ironmonger","ironmongery","ironpython","ironside","ironstone","ironware","ironwood","ironwork","ironworker","irony","iroquoian","iroquois","irow","irq","irradiate","irradiation","irrational","irrationality","irrationalness","irrawaddy","irreclaimable","irreconcilability","irreconcilable","irreconcilableness","irreconcilably","irrecoverable","irrecoverableness","irrecoverably","irredeemable","irredeemably","irredentism","irredentist","irreducibility","irreducible","irreducibly","irreflexive","irrefutable","irrefutably","irregardless","irregular","irregularity","irrelevance","irrelevancy","irrelevant","irreligious","irremediable","irremediableness","irremediably","irremovable","irreparable","irreparableness","irreparably","irreplaceable","irrepressible","irrepressibly","irreproachable","irreproachableness","irreproachably","irreproducibility","irreproducible","irresistibility","irresistible","irresistibleness","irresistibly","irresolute","irresoluteness","irresolution","irresolvable","irrespective","irresponsibility","irresponsible","irresponsibleness","irresponsibly","irretrievable","irretrievably","irreverence","irreverent","irreversible","irreversibly","irrevocable","irrevocableness","irrevocably","irrigable","irrigate","irrigation","irritability","irritable","irritableness","irritably","irritant","irritate","irritated","irritating","irritation","irrupt","irruption","irs","irtish","irv","irvin","irvine","irving","irwin","irwinn","is","isa","isaac","isaak","isabel","isabelita","isabella","isabelle","isac","isacco","isactive","isadmin","isador","isadora","isadore","isahella","isaiah","isak","isarray","isassignablefrom","isauthenticated","isbn","iscariot","ischecked","isconnected","isdeleted","isdigit","isdirectory","iseabal","isempty","isenabled","isequal","isequaltostring","iserror","iservice","isexpanded","isfahan","isfile","ish","isherwood","ishidden","ishim","ishmael","ishtar","isiah","isiahi","isidor","isidora","isidore","isidoro","isidro","isin","isinglass","isinstance","isis","iskindofclass","isl","islam","islamabad","islamic","island","islander","islandia","islands","isle","islet","isloading","isloggedin","ism","ismael","ismatch","isn","isnan","isnt","isnull","isnullorempty","isnullorwhitespace","isnumber","isnumeric","iso","isobar","isobaric","isobel","isochronal","isochronous","isocline","isocyanate","isodate","isodine","isolate","isolated","isolation","isolationism","isolationist","isolationistic","isolator","isolde","isomer","isomeric","isomerism","isometric","isometrically","isometrics","isomorph","isomorphic","isomorphically","isomorphism","isopen","isoperimetrical","isopleth","isopleths","isosceles","isostatic","isotherm","isothermal","isotonic","isotope","isotopic","isotropic","isotropically","isotropy","isp","ispahan","ispell","isplaying","ispostback","isprime","isr","israel","israeli","israelite","isreadonly","isrequired","isrunning","iss","issac","isselected","isset","issi","issiah","issie","issuable","issuance","issuant","issue","issuecomment","issued","issuer","issues","issuing","issy","ist","istanbul","isthmian","isthmus","istream","istrue","istvan","isuzu","isvalid","isvisible","it","itaipu","ital","italian","italianate","italic","italicization","italicize","italicized","italy","itasca","itch","itchiness","itchy","itcorp","itel","item","itemarray","itemcode","itemcontainerstyle","itemcount","itemgetter","itemgroup","itemid","itemization","itemize","itemized","itemizer","itemizes","itemlabel","itemlist","itemname","itemprop","items","itemscontrol","itemspanel","itemspaneltemplate","itemssource","itemstyle","itemtemplate","itemtype","itemvalue","itemview","iter","iterable","iterate","iterated","iterates","iterating","iteration","iterations","iterative","iterator","iterators","iteritems","itertools","itext","itextpdf","itextsharp","ithaca","ithacan","itinerant","itinerary","itm","ito","itr","its","itself","itt","itunes","iu","iud","iv","iva","ivan","ivanhoe","ivar","ive","iver","ivett","ivette","ivie","ivonne","ivor","ivory","ivs","ivy","iw","iwc","ix","iy","izaak","izabel","izak","izanagi","izanami","izhevsk","izmir","izvestia","izzy","j","ja","jab","jabbed","jabber","jabberer","jabbing","jabez","jablonsky","jabot","jacaranda","jacenta","jacinda","jacinta","jacintha","jacinthe","jack","jackal","jackass","jackboot","jackdaw","jackelyn","jacket","jacketed","jackhammer","jacki","jackie","jackknife","jackknives","jacklin","jacklyn","jackman","jackpot","jackquelin","jackqueline","jackrabbit","jackson","jacksonian","jacksonville","jackstraw","jacky","jaclin","jaclyn","jacob","jacobean","jacobi","jacobian","jacobin","jacobite","jacobo","jacobs","jacobsen","jacobson","jacobus","jacoby","jacoco","jacquard","jacquelin","jacqueline","jacquelyn","jacquelynn","jacquenetta","jacquenette","jacques","jacquetta","jacquette","jacqui","jacquie","jacuzzi","jacynth","jada","jade","jaded","jadedness","jadeite","jae","jaeger","jag","jagged","jaggedness","jagger","jaggers","jagging","jaguar","jail","jailbird","jailbreak","jailer","jaime","jaimie","jain","jaine","jainism","jaipur","jakarta","jake","jakie","jakob","jalapeo","jalopy","jalousie","jam","jamaal","jamaica","jamaican","jamal","jamar","jamb","jambalaya","jamboree","jame","jamel","james","jameson","jamestown","jamesy","jamey","jami","jamie","jamil","jamill","jamima","jamison","jammal","jammed","jammie","jamming","jan","jana","janacek","janaya","janaye","jandy","jane","janean","janeczka","janeen","janeiro","janek","janel","janela","janell","janella","janelle","janene","janenna","janessa","janesville","janet","janeta","janetta","janette","janeva","janey","jangle","jangler","jangly","jania","janice","janie","janifer","janina","janine","janis","janissary","janith","janitor","janitorial","janka","janna","jannel","jannelle","jannie","janos","janot","jansen","jansenist","january","janus","jany","japan","japanese","japanned","japanner","japanning","jape","japura","jaquelin","jaquelyn","jaquenetta","jaquenette","jaquith","jar","jarad","jard","jardinire","jareb","jared","jarful","jargon","jarib","jarid","jarlsberg","jarrad","jarray","jarred","jarret","jarrett","jarrid","jarring","jarrod","jars","jarvis","jase","jasen","jasmin","jasmina","jasmine","jason","jasper","jasperreports","jastrow","jasun","jato","jaundice","jaundiced","jaunt","jauntily","jauntiness","jaunty","java","javac","javadoc","javadocs","javaee","javafx","javamail","javanese","javascript","javascripts","javascriptserializer","javase","javassist","javax","javelin","javier","jaw","jawbone","jawbreaker","jawline","jax","jaxartes","jaxb","jaxbcontext","jaxrs","jaxws","jay","jayapura","jaybird","jaycee","jaye","jayme","jaymee","jaymie","jayne","jaynell","jayson","jaywalk","jaywalker","jazmin","jazz","jazziness","jazzmen","jazzy","jb","jboss","jbutton","jc","jcenter","jcheckbox","jcombobox","jcomponent","jcp","jcr","jcs","jct","jd","jdavie","jdbc","jdbctemplate","jdialog","jdk","jdt","je","jealous","jealousness","jealousy","jean","jeana","jeane","jeanelle","jeanette","jeanie","jeanine","jeanna","jeanne","jeannette","jeannie","jeannine","jecho","jed","jedd","jeddy","jedediah","jedi","jedidiah","jee","jeep","jeer","jeerer","jeering","jeeves","jeez","jeff","jefferey","jefferson","jeffersonian","jeffery","jeffie","jeffrey","jeffry","jeffy","jehad","jehanna","jehoshaphat","jehovah","jehu","jejuna","jejune","jejuneness","jejunum","jekyll","jelene","jell","jello","jelly","jellybean","jellyfish","jellying","jellylike","jellyroll","jemie","jemima","jemimah","jemmie","jemmy","jen","jena","jenda","jenelle","jeni","jenica","jeniece","jenifer","jeniffer","jenilee","jenine","jenkins","jenn","jenna","jennee","jenner","jennet","jennette","jenni","jennica","jennie","jennifer","jennilee","jennine","jennings","jenny","jeno","jens","jensen","jeopard","jeopardize","jeopardy","jephthah","jerad","jerald","jeralee","jeramey","jeramie","jere","jereme","jeremiad","jeremiah","jeremiahs","jeremias","jeremie","jeremy","jeri","jericho","jerk","jerker","jerkily","jerkin","jerkiness","jerkwater","jerky","jermain","jermaine","jermayne","jeroboam","jerold","jerome","jeromy","jerri","jerrie","jerrilee","jerrilyn","jerrine","jerrod","jerrold","jerrome","jerry","jerrybuilt","jerrylee","jersey","jerusalem","jervis","jes","jess","jessa","jessalin","jessalyn","jessamine","jessamyn","jesse","jessee","jesselyn","jessey","jessi","jessica","jessie","jessika","jessy","jest","jester","jesting","jesuit","jesus","jet","jetbrains","jeth","jethro","jetliner","jetport","jetsam","jetted","jetting","jettison","jetty","jew","jewel","jeweler","jewelery","jewell","jewelle","jewelled","jewellery","jewelry","jewess","jewish","jewishness","jewry","jezebel","jf","jfilechooser","jfk","jframe","jg","jhipster","jib","jibbed","jibbing","jibe","jid","jidda","jiff","jiffy","jig","jigged","jigger","jigging","jiggle","jiggly","jigsaw","jihad","jilin","jill","jillana","jillane","jillayne","jilleen","jillene","jilli","jillian","jillie","jilly","jilt","jilter","jim","jimenez","jimmie","jimmy","jimsonweed","jinan","jingle","jingler","jingly","jingo","jingoism","jingoist","jingoistic","jinja","jinn","jinnah","jinni","jinny","jinrikisha","jinx","jioendpoint","jira","jit","jitney","jitter","jitterbug","jitterbugged","jitterbugger","jitterbugging","jittery","jiujitsu","jivaro","jive","jj","jk","jkl","jks","jl","jlabel","jlist","jls","jm","jmenu","jmenuitem","jmeter","jmp","jms","jmx","jna","jndi","jni","jnienv","jnlp","jo","joachim","joan","joana","joane","joanie","joann","joanna","joanne","joaquin","job","jobbed","jobber","jobbery","jobbing","jobey","jobholder","jobi","jobid","jobie","jobina","jobj","jobject","jobless","joblessness","jobname","jobrel","jobs","jobtitle","joby","jobye","jobyna","jocasta","jocelin","joceline","jocelyn","jocelyne","jock","jockey","jocko","jockstrap","jocose","jocoseness","jocosity","jocular","jocularity","jocund","jocundity","joda","jodee","jodhpurs","jodi","jodie","jody","joe","joeann","joel","joela","joelie","joell","joella","joelle","joellen","joelly","joellyn","joelynn","joesph","joete","joey","jog","jogged","jogger","jogging","joggle","joggler","jogjakarta","johan","johann","johanna","johannah","johannes","johannesburg","johansen","johanson","john","johna","johnath","johnathan","johnathon","johnette","johnie","johnna","johnnie","johnny","johnnycake","johns","johnsen","johnson","johnston","johnstown","johny","joice","join","joincolumn","joincolumns","joined","joiner","joinery","joining","joins","joint","jointable","jointed","jointedness","jointer","jointly","jointures","joist","jojo","joke","joker","jokes","jokey","jokier","jokiest","jokily","joking","jolee","joleen","jolene","joletta","joli","jolie","joliet","joline","jolla","jollification","jollily","jolliness","jollity","jolly","jolson","jolt","jolter","joly","jolyn","jolynn","jon","jonah","jonahs","jonas","jonathan","jonathon","jone","jonell","jones","joni","jonie","jonquil","jonson","joomla","jooq","joplin","joptionpane","jordain","jordan","jordana","jordanian","jordanna","jordon","jorey","jorgan","jorge","jorgensen","jorgenson","jori","jorie","jorrie","jorry","jory","joscelin","jose","josee","josef","josefa","josefina","joseito","joseph","josepha","josephina","josephine","josephs","josephson","josephus","josey","josh","josher","joshia","joshua","joshuah","josi","josiah","josias","josie","joss","josselyn","jostle","josue","josy","jot","jotted","jotter","jotting","joule","jounce","jouncy","jourdain","jourdan","journal","journalese","journalism","journalist","journalistic","journalize","journalized","journalizer","journey","journeyer","journeyman","journeymen","joust","jouster","jovanovich","jove","jovial","joviality","jovian","jowl","jowly","joy","joya","joyan","joyann","joyce","joycean","joycelin","joye","joyful","joyfuller","joyfullest","joyfulness","joyless","joylessness","joyner","joyous","joyousness","joyridden","joyride","joyrode","joystick","jozef","jp","jpa","jpanel","jpeg","jpg","jpn","jq","jqgrid","jqm","jqplot","jquery","jquerymobile","jqueryui","jqxhr","jr","jradiobutton","jre","jruby","js","jsandye","jsbin","jsch","jscript","jscrollpane","jsessionid","jsf","jsfiddle","jshint","json","jsonarray","jsonb","jsonconvert","jsondata","jsonexception","jsonobj","jsonobject","jsonobjectwithdata","jsonp","jsonparser","jsonpath","jsonproperty","jsonreader","jsonrequestbehavior","jsonresponse","jsonresult","jsonserializer","jsonstr","jsonstring","jsoup","jsp","jspservlet","jsr","jsref","jstl","jstree","jsx","jt","jta","jtable","jtc","jtextarea","jtextfield","juan","juana","juanita","juarez","jubal","jubilant","jubilate","jubilation","jubilee","jud","judah","judaic","judaical","judaism","judas","judd","juddered","juddering","jude","judea","judge","judgement","judger","judgeship","judging","judgment","judgmental","judi","judicable","judicatory","judicature","judicial","judiciary","judicious","judiciousness","judie","judith","juditha","judo","judon","judson","judy","judye","jug","jugate","jugful","jugged","juggernaut","jugging","juggle","juggler","jugglery","jugular","juice","juicer","juicily","juiciness","juicy","juieta","jujitsu","juju","jujube","jujutsu","juke","jukebox","jul","jule","julee","julep","juli","julia","julian","juliana","juliane","juliann","julianna","julianne","julie","julienne","juliet","julieta","julietta","juliette","julina","juline","julio","julissa","julita","julius","july","julys","jumble","jumbo","jumbotron","jump","jumped","jumper","jumpily","jumpiness","jumping","jumps","jumpsuit","jumpy","jun","junco","junction","juncture","june","juneau","junette","jung","jungfrau","jungian","jungle","junia","junie","junina","junior","juniority","juniper","junit","junk","junker","junkerdom","junket","junketeer","junkie","junkyard","juno","junta","jupiter","jupyter","jurassic","juridic","juridical","juried","jurisdiction","jurisdictional","jurisprudence","jurisprudent","jurisprudential","jurist","juristic","juror","jurua","jury","jurying","juryman","jurymen","jurywoman","jurywomen","just","justed","justen","juster","justest","justice","justiciable","justifiability","justifiable","justifiably","justification","justified","justifier","justify","justin","justina","justine","justing","justinian","justinn","justino","justis","justness","justo","justs","justus","jut","jute","jutish","jutland","jutted","jutting","juvenal","juvenile","juxtapose","juxtaposition","jv","jvm","jvms","jw","jwt","jyoti","jython","k","ka","kaaba","kabob","kaboom","kabuki","kabul","kacey","kacie","kacy","kaddish","kaela","kaffeeklatch","kaffeeklatsch","kafka","kafkaesque","kaftan","kagoshima","kahaleel","kahlil","kahlua","kahn","kai","kaia","kaifeng","kaila","kaile","kailey","kain","kaine","kaiser","kaitlin","kaitlyn","kaitlynn","kaja","kajar","kakalina","kala","kalahari","kalamazoo","kalashnikov","kalb","kale","kaleb","kaleena","kaleidescope","kaleidoscope","kaleidoscopic","kaleidoscopically","kalgoorlie","kali","kalie","kalil","kalila","kalina","kalinda","kalindi","kalle","kalli","kally","kalmyk","kalvin","kama","kamchatka","kamehameha","kameko","kamikaze","kamila","kamilah","kamillah","kampala","kampuchea","kan","kanchenjunga","kandace","kandahar","kandinsky","kandy","kane","kangaroo","kania","kankakee","kannada","kano","kanpur","kansan","kansas","kant","kantian","kanya","kaohsiung","kaolin","kaolinite","kaplan","kapok","kaposi","kappa","kaput","kara","karachi","karaf","karaganda","karakorum","karakul","karalee","karalynn","karamazov","karaoke","karat","karate","kare","karee","kareem","karel","karen","karena","karenina","kari","karia","karie","karil","karilynn","karim","karin","karina","karine","kariotta","karisa","karissa","karita","karl","karla","karlan","karlee","karleen","karlen","karlene","karlie","karlik","karlis","karloff","karlotta","karlotte","karly","karlyn","karma","karmen","karmic","karna","karney","karo","karol","karola","karole","karolina","karoline","karoly","karon","karp","karrah","karrie","karroo","karry","kart","kary","karyl","karylin","karyn","kasai","kasey","kashmir","kaspar","kasparov","kasper","kass","kassandra","kassey","kassi","kassia","kassie","kat","kata","katakana","katalin","kate","katee","katelyn","katerina","katerine","katey","kath","katha","katharina","katharine","katharyn","kathe","katherina","katherine","katheryn","kathi","kathiawar","kathie","kathleen","kathlin","kathmandu","kathrine","kathryn","kathryne","kathy","kathye","kati","katie","katina","katine","katinka","katleen","katlin","katmai","katmandu","katowice","katrina","katrine","katrinka","katti","kattie","katuscha","katusha","katy","katya","katydid","katz","kauai","kauffman","kaufman","kaunas","kaunda","kawabata","kawasaki","kay","kayak","kaycee","kaye","kayla","kayle","kaylee","kayley","kaylil","kaylyn","kayne","kayo","kazakh","kazakhstan","kazan","kazantzakis","kazoo","kb","kbd","kc","kcal","kd","kde","ke","kean","keane","kearney","keary","keaton","keats","kebab","keck","keefe","keefer","keegan","keel","keelby","keeley","keelhaul","keelia","keely","keen","keenan","keene","keener","keening","keenness","keep","keepalive","keeper","keeping","keeps","keepsake","keewatin","keg","kegged","kegging","keillor","keir","keisha","keith","kelbee","kelby","kelcey","kelci","kelcie","kelcy","kele","kelila","kellby","kellen","keller","kelley","kelli","kellia","kellie","kellina","kellogg","kellsie","kelly","kellyann","kelp","kelsey","kelsi","kelsy","kelt","kelvin","kelwin","kemerovo","kemp","kempis","ken","kendal","kendall","kendell","kendo","kendra","kendre","kendrick","kenilworth","kenmore","kenn","kenna","kennan","kennecott","kenned","kennedy","kennel","kenneth","kennett","kennie","kenning","kennith","kenny","keno","kenon","kenosha","kensington","kent","kenton","kentuckian","kentucky","kenya","kenyan","kenyatta","kenyon","keogh","keokuk","kepi","kepler","kept","ker","keras","keratin","kerberos","kerbside","kerby","kerchief","kerensky","keri","keriann","kerianne","kerk","kermie","kermit","kermy","kern","kerned","kernel","kernels","kerning","kerosene","kerouac","kerr","kerri","kerrie","kerrill","kerrin","kerry","kerstin","kerwin","kerwinn","kesley","keslie","kessia","kessiah","kessler","kestrel","ketch","ketchup","ketone","ketosis","kettering","ketti","kettie","kettle","kettledrum","kettleful","ketty","kev","kevan","keven","kevin","kevina","kevlar","kevon","kevorkian","kevyn","kewaskum","kewaunee","kewpie","key","keyboard","keyboardist","keyboards","keychain","keyclick","keycloak","keycode","keydown","keyed","keyerror","keyevent","keyframes","keyhole","keyname","keynes","keynesian","keynote","keynoter","keypad","keypair","keypath","keypoints","keypress","keypressed","keypunch","keypuncher","keyring","keys","keyset","keyspace","keystone","keystore","keystroke","keystrokes","keytime","keytool","keyup","keyvalue","keyvaluepair","keyword","keywords","kf","kg","kgb","kh","khabarovsk","khachaturian","khaki","khalid","khalil","khan","kharkov","khartoum","khayyam","khmer","khoisan","khomeini","khorana","khrushchev","khtml","khufu","khulna","khwarizmi","khyber","khz","ki","kia","kiah","kial","kib","kibana","kibble","kibbutz","kibbutzim","kibitz","kibitzer","kibosh","kick","kickapoo","kickback","kickball","kicker","kickoff","kicks","kickstand","kickstarter","kicky","kid","kidd","kidded","kidder","kiddie","kidding","kiddish","kiddo","kiddy","kiddying","kidless","kidnap","kidnaper","kidnaping","kidnapped","kidnapper","kidnapping","kidney","kids","kidskin","kieffer","kiel","kielbasa","kielbasi","kiele","kienan","kier","kierkegaard","kiersten","kieth","kiev","kigali","kikelia","kikuyu","kilauea","kile","kiley","kilian","kilimanjaro","kill","killdeer","killebrew","killed","killer","killian","killie","killing","killjoy","kills","killy","kiln","kilo","kilobaud","kilobit","kilobuck","kilobyte","kilocycle","kilogauss","kilogram","kilohertz","kilohm","kilojoule","kiloliter","kilometer","kiloton","kilovolt","kilowatt","kiloword","kilt","kilter","kim","kimball","kimbell","kimberlee","kimberley","kimberli","kimberly","kimberlyn","kimble","kimbra","kimmi","kimmie","kimmy","kimono","kin","kincaid","kind","kinda","kinder","kindergarten","kindergrtner","kindhearted","kindheartedness","kindle","kindler","kindliness","kindling","kindly","kindness","kindred","kinds","kine","kinect","kinematic","kinematics","kinesics","kinesthesis","kinesthetic","kinesthetically","kinetic","kinetically","kinetics","kinfolk","king","kingbird","kingdom","kingfisher","kinglet","kingliness","kingly","kingpin","kingsbury","kingship","kingsley","kingsly","kingston","kingstown","kingwood","kink","kinkily","kinkiness","kinky","kinna","kinney","kinnickinnic","kinnie","kinny","kinsey","kinsfolk","kinshasa","kinshasha","kinship","kinsley","kinsman","kinsmen","kinswoman","kinswomen","kiosk","kiowa","kip","kipling","kipp","kippar","kipped","kipper","kippie","kipping","kippy","kira","kirbee","kirbie","kirby","kirchhoff","kirchner","kirchoff","kirghistan","kirghiz","kirghizia","kiri","kiribati","kirinyaga","kirk","kirkland","kirkpatrick","kirkwood","kirov","kirsch","kirsten","kirsteni","kirsti","kirstin","kirstyn","kisangani","kishinev","kismet","kiss","kissee","kisser","kissiah","kissie","kissinger","kit","kitakyushu","kitbag","kitchen","kitchener","kitchenette","kitchenware","kite","kiter","kith","kiths","kitkat","kits","kitsch","kitschy","kitted","kitten","kittenish","kittenishness","kitti","kittie","kitting","kittiwakes","kitty","kivy","kiwanis","kiwi","kiwifruit","kizzee","kizzie","kk","kkk","kl","klan","klansman","klara","klarika","klarrisa","klass","klaus","klaxon","klee","kleenex","klein","kleinrock","klemens","klement","kleon","kleptomania","kleptomaniac","kliment","kline","klingon","klondike","kludge","kludger","kludgey","klutz","klutziness","klutzy","klux","klystron","km","kmeans","kml","kn","knack","knacker","knackwurst","knapp","knapsack","knauer","knave","knavery","knavish","knead","kneader","knee","kneecap","kneecapped","kneecapping","kneeing","kneel","kneeler","kneepad","knell","knelt","knesset","knew","kngwarreye","knick","knickerbocker","knickknack","knievel","knife","knight","knighthood","knightliness","knightly","knish","knit","knitr","knits","knitted","knitter","knitting","knitwear","knives","knob","knobbly","knobby","knobeloch","knock","knockabout","knockdown","knocker","knockoff","knockout","knockoutjs","knockwurst","knoll","knopf","knossos","knot","knothole","knotted","knottiness","knotting","knotty","know","knowable","knower","knowhow","knowing","knowingly","knowings","knowledge","knowledgeable","knowledgeableness","knowledgeably","knowledgecenter","knowles","known","knows","knox","knoxville","knuckle","knuckleball","knuckleduster","knucklehead","knudsen","knudson","knurl","knuth","knutsen","knutson","ko","koala","kobayashi","kobe","koch","kochab","kodak","kodaly","kodiak","koenig","koenigsberg","koenraad","koestler","kohinoor","kohl","kohler","kohlrabi","kohlrabies","kola","kolyma","kommunizma","kong","kongo","konrad","konstance","konstantin","konstantine","konstanze","koo","kook","kookaburra","kookiness","kooky","koontz","kopeck","koppers","kora","koral","koralle","koran","koranic","kordula","kore","korea","korean","korella","koren","koressa","korey","kori","korie","kornberg","korney","korrie","korry","kort","kory","korzybski","kosciusko","kosher","kossuth","kosygin","kotlin","kovacs","kowalewski","kowalski","kowloon","kowtow","kp","kph","kr","kraal","kraemer","kraft","krakatau","krakatoa","krakow","kramer","krasnodar","krasnoyarsk","krause","kraut","krebs","kremlin","kremlinologist","kremlinology","kresge","krieger","kriegspiel","krill","kringle","kris","krisha","krishna","krishnah","krispin","krissie","krissy","krista","kristal","kristan","kriste","kristel","kristen","kristi","kristian","kristie","kristien","kristin","kristina","kristine","kristo","kristofer","kristoffer","kristofor","kristoforo","kristopher","kristy","kristyn","krna","krnur","kroc","kroger","krone","kronecker","kronor","kropotkin","krueger","kruger","krugerrand","krupp","kruse","krypton","krysta","krystal","krystalle","krystle","krystyna","ks","ksh","kt","ku","kube","kubectl","kubelet","kubernetes","kublai","kubrick","kuchen","kudos","kudzu","kuenning","kuhn","kuibyshev","kumar","kumquat","kunming","kuomintang","kurd","kurdish","kurdistan","kurosawa","kurt","kurtis","kurtosis","kusch","kuwait","kuwaiti","kuznets","kuznetsk","kv","kvetch","kvp","kw","kwakiutl","kwangchow","kwangju","kwanzaa","kwargs","kwh","kx","ky","kyla","kyle","kylen","kylie","kylila","kylynn","kym","kynthia","kyoto","kyrgyzstan","kyrstin","kyushu","l","la","lab","laban","label","labeled","labeler","labelfor","labelled","labelledby","labellings","labels","labia","labial","labile","labiodental","labium","labor","laboratory","labore","labored","laboredness","laborer","laboring","laborings","laborious","laboriousness","laboris","laborsaving","laborum","labrador","labradorean","labs","laburnum","labyrinth","labyrinthine","labyrinths","lac","lace","laced","lacee","lacer","lacerate","laceration","laces","lacewing","lacey","lachesis","lachrymal","lachrymose","lacie","lacing","lacinia","lack","lackadaisic","lackadaisical","lackawanna","lacker","lackey","lacking","lackluster","lacks","laconic","laconically","lacquer","lacquerer","lacrosse","lactate","lactation","lactational","lacteal","lactic","lactose","lacuna","lacunae","lacus","lacy","lad","ladder","laddie","lade","laded","laden","ladened","ladening","lading","ladle","ladoga","ladonna","lady","ladybird","ladybug","ladyfinger","ladylike","ladylove","ladyship","laetitia","laetrile","lafayette","lafitte","lag","lager","laggard","laggardness","lagged","lagging","lagniappe","lagoon","lagos","lagrange","lagrangian","laguerre","laguna","lahore","laid","laidlaw","lain","laina","lainey","lair","laird","laissez","laity","laius","lake","lakehurst","lakeisha","laker","lakeside","lakewood","lakisha","lakshmi","lallygag","lallygagged","lallygagging","lalo","lam","lama","lamaism","lamar","lamarck","lamasery","lamaze","lamb","lambada","lambaste","lambda","lambdas","lambency","lambent","lambert","lambkin","lamborghini","lambskin","lambswool","lame","lamebrain","lamed","lameness","lament","lamentable","lamentableness","lamentably","lamentation","lamented","lamina","laminae","laminar","laminate","lamination","lammed","lammer","lamming","lammond","lamond","lamont","lamp","lampblack","lamplight","lamplighter","lampoon","lampooner","lamport","lamppost","lamprey","lampshade","lan","lana","lanae","lanai","lancashire","lancaster","lance","lancelot","lancer","lancet","land","landau","lander","landfall","landfill","landforms","landhold","landholder","landing","landis","landlady","landless","landlines","landlocked","landlord","landlubber","landmark","landmass","landon","landowner","landownership","landowning","landry","lands","landsat","landscape","landscaper","landslid","landslide","landslip","landsman","landsmen","landsteiner","landward","landwehr","lane","lanette","laney","lang","lange","langeland","langerhans","langford","langland","langley","langmuir","langsdon","langston","language","languages","languid","languidness","languish","languisher","languishing","languor","languorous","lani","lanie","lanita","lank","lankiness","lankness","lanky","lanna","lanni","lannie","lanny","lanolin","lansing","lantern","lanthanide","lanthanum","lanyard","lanzhou","lao","laocoon","laoreet","laotian","lap","lapack","lapboard","lapdog","lapel","lapidary","lapin","laplace","lapland","lapp","lapped","lappet","lapping","lapply","laps","lapse","lapsed","lapser","lapses","lapsing","laptop","laptops","lapwing","lara","laraine","laramie","laravel","larboard","larcenist","larcenous","larceny","larch","lard","larder","lardner","lardy","laredo","large","largehearted","largely","largemouth","largeness","larger","largess","largest","largish","largo","lari","lariat","larina","larine","larisa","larissa","lark","larker","larkspur","larousse","larry","lars","larsen","larson","larva","larvae","larval","laryngeal","larynges","laryngitides","laryngitis","larynx","laryssa","las","lasagna","lasagne","lascaux","lascivious","lasciviousness","lase","laser","lash","lashed","lasher","lashing","lass","lassa","lassen","lassie","lassitude","lasso","lassoer","last","laster","lastindex","lastindexof","lasting","lastingness","lastly","lastmodified","lastname","lastrow","laszlo","lat","latasha","latashia","latch","latching","latchkey","late","latecomer","lated","lately","latency","lateness","latent","later","lateral","lateralization","lateran","latest","latex","lath","lathe","lather","latherer","lathery","lathing","lathrop","laths","latia","latices","latin","latina","latinate","latino","latish","latisha","latitude","latitudinal","latitudinarian","latitudinary","latlng","latonya","latoya","latrena","latrina","latrine","latrobe","latte","latter","lattice","latticework","latticing","lattimer","latvia","latvian","laud","laudably","laudanum","laudatory","lauder","lauderdale","lauds","laue","laugh","laughable","laughableness","laughably","laugher","laughing","laughingstock","laughs","laughter","laughton","launce","launch","launched","launcher","launches","launching","launchoptions","launchpad","launder","laundered","launderer","launderette","laundress","laundrette","laundromat","laundry","laundryman","laundrymen","laundrywoman","laundrywomen","laura","lauraine","laural","lauralee","laurasia","laure","laureate","laureateship","lauree","laureen","laurel","laurella","lauren","laurena","laurence","laurene","laurent","laurentian","lauretta","laurette","lauri","laurianne","laurice","laurie","lauritz","lauryn","lausanne","lava","lavage","laval","lavaliere","lavatory","lave","lavena","lavender","lavern","laverna","laverne","lavina","lavinia","lavinie","lavish","lavishness","lavoisier","lavonne","law","lawanda","lawbreaker","lawbreaking","lawford","lawful","lawfulness","lawgiver","lawgiving","lawless","lawlessness","lawmaker","lawmaking","lawman","lawmen","lawn","lawnmower","lawrence","lawrenceville","lawrencium","lawry","laws","lawson","lawsuit","lawton","lawyer","lawyers","lax","laxative","laxativeness","laxer","laxes","laxity","laxness","lay","layabout","layamon","layaway","layer","layered","layering","layers","layette","layla","layman","laymen","layne","layney","layoff","layout","layoutinflater","layoutmanager","layoutparams","layouts","layoutsubviews","layover","laypeople","layperson","lays","layton","layup","laywoman","laywomen","lazar","lazare","lazaro","lazarus","laze","lazily","laziness","lazuli","lazy","lazybones","lb","lbj","lbl","lbound","lbs","lc","lcd","lcm","lcom","ld","lda","ldap","ldc","ldflags","ldr","le","lea","leach","leachate","lead","leadbelly","leaded","leaden","leadenness","leader","leaderboard","leaderless","leaders","leadership","leading","leads","leadsman","leadsmen","leaf","leafage","leafhopper","leafiness","leafless","leaflet","leafstalk","leafy","league","leaguer","leah","leak","leakage","leaked","leaker","leakey","leakiness","leaking","leaks","leaky","lean","leander","leandra","leaner","leaning","leann","leanna","leanne","leanness","leanor","leanora","leap","leaper","leapfrog","leapfrogged","leapfrogging","lear","learn","learned","learnedly","learnedness","learner","learning","learns","learnt","leary","leas","lease","leaseback","leasehold","leaseholder","leaser","leash","leasing","least","leastwise","leather","leatherette","leathern","leatherneck","leathery","leave","leaven","leavened","leavening","leavenworth","leaver","leaves","leaving","lebanese","lebanon","lebbie","lebensraum","lebesgue","leblanc","lecher","lecherous","lecherousness","lechery","lecithin","lectern","lecture","lecturer","lectures","lectureship","lectus","led","leda","lederberg","ledge","ledger","lee","leeann","leeanne","leech","leeds","leek","leela","leelah","leeland","leena","leer","leeriness","leering","leery","leesa","leese","leeuwenhoek","leeward","leeway","left","leftism","leftist","leftmost","leftover","leftward","lefty","leg","legacy","legal","legalese","legalism","legalistic","legality","legalization","legalize","legalized","legally","legate","legatee","legation","legato","legend","legendarily","legendary","legendre","leger","legerdemain","legged","legginess","legging","leggy","leghorn","legibility","legible","legibly","legion","legionary","legionnaire","legislate","legislation","legislative","legislator","legislature","legit","legitimacy","legitimate","legitimation","legitimatize","legitimization","legitimize","legless","legman","legmen","lego","legra","legree","legroom","legs","legstraps","legume","leguminous","legwork","lehigh","lehman","lei","leia","leibniz","leicester","leiden","leif","leigh","leigha","leighton","leila","leilah","leipzig","leisha","leisure","leisureliness","leisurely","leisurewear","leitmotif","leitmotiv","lek","lela","lelah","leland","lelia","lem","lemaitre","lemar","lemke","lemma","lemme","lemmie","lemming","lemmy","lemon","lemonade","lemony","lemuel","lemur","lemuria","len","lena","lenard","lenci","lend","lender","lenee","lenette","lenght","length","lengthen","lengthener","lengthily","lengthiness","lengths","lengthwise","lengthy","lenience","leniency","lenient","lenin","leningrad","leninism","leninist","lenitive","lenka","lenna","lennard","lennie","lennon","lenny","leno","lenoir","lenora","lenore","lenovo","lens","lent","lenticular","lentil","lento","leo","leodora","leoine","leola","leoline","leon","leona","leonanie","leonard","leonardo","leoncavallo","leone","leonel","leonelle","leonerd","leonhard","leonid","leonidas","leonie","leonine","leonor","leonora","leonore","leontine","leontyne","leopard","leopardess","leopardskin","leopold","leopoldo","leopoldville","leora","leotard","leper","lepidus","lepke","leprechaun","leprosy","leprous","lepta","lepton","lepus","lerner","leroi","leroy","les","lesa","lesbian","lesbianism","leshia","lesion","lesley","lesli","leslie","lesly","lesotho","less","lessee","lessen","lesseps","lesser","lesses","lessie","lessing","lesson","lessons","lessor","lest","lester","lesya","let","leta","letdown","letha","lethal","lethality","lethargic","lethargically","lethargy","lethe","lethia","leticia","letisha","letitia","letizia","lets","letsencrypt","letta","letter","letterbox","lettered","letterer","letterhead","lettering","letterman","lettermen","letterpress","letters","letti","lettie","letting","lettuce","letty","letup","leukemia","leukemic","leukocyte","leupold","lev","levant","levee","leveeing","level","leveled","leveler","levelheaded","levelheadedness","leveling","levelness","levels","levenshtein","lever","leverage","levesque","levey","levi","leviathan","levier","levin","levine","levitate","levitation","leviticus","levitt","levity","levon","levy","lew","lewd","lewdness","lewellyn","lewes","lewie","lewinsky","lewis","lewiss","lex","lexeme","lexer","lexi","lexical","lexicographer","lexicographic","lexicographical","lexicography","lexicon","lexie","lexine","lexington","lexus","lexy","leyden","leyla","lezley","lezlie","lf","lfs","lft","lg","lh","lhasa","lhotse","lhs","li","lia","liability","liable","liaise","liaison","liam","lian","liana","liane","lianna","lianne","liar","lib","libation","libbed","libbey","libbi","libbie","libbing","libboost","libby","libc","libcore","libcurl","libdispatch","libel","libeler","libelous","liberace","liberal","liberalism","liberality","liberalization","liberalize","liberalized","liberalizer","liberalness","liberate","liberation","liberationists","liberator","liberia","liberian","libero","libertarian","libertarianism","libertine","liberty","libexec","libgcc","libgdx","libidinal","libidinous","libidinousness","libido","libopencv","libpng","libra","librarian","libraries","library","libretoes","libretos","librettist","libretto","libreville","librium","libs","libstdc","libsystem","libusb","libx","libxml","libya","libyan","lice","licence","license","licensed","licensee","licenser","licenses","licensing","licensor","licentiate","licentious","licentiousness","licha","lichee","lichen","lichtenstein","lichter","licit","lick","licked","licker","lickerish","licking","licorice","lid","lida","lidded","lidding","lidia","lidless","lido","lie","lieberman","liebfraumilch","liechtenstein","lied","lief","liefs","liege","lien","lier","lies","liesa","lieu","lieut","lieutenancy","lieutenant","life","lifeblood","lifeboat","lifebuoy","lifecycle","lifecyclebase","lifeforms","lifeguard","lifeless","lifelessness","lifelike","lifelikeness","lifeline","lifelong","lifer","liferay","lifesaver","lifesaving","lifespan","lifestyle","lifetaking","lifetime","lifework","lifo","lift","lifter","lifting","liftoff","ligament","ligand","ligate","ligation","ligature","light","lightblue","lightbox","lighted","lighten","lightener","lightening","lighter","lightered","lightering","lighters","lightest","lightface","lightgray","lightheaded","lighthearted","lightheartedness","lighthouse","lighting","lightly","lightness","lightning","lightproof","lights","lightship","lightweight","ligneous","lignite","lignum","ligula","likability","likable","likableness","like","likeability","liked","likelihood","likely","liken","likeness","liker","likes","likest","likewise","liking","lil","lila","lilac","lilah","lilia","lilian","liliana","liliane","lilith","liliuokalani","lilla","lille","lilli","lillian","lillie","lilliput","lilliputian","lilllie","lilly","lilongwe","lilt","lilting","lily","lilyan","lim","lima","limb","limbaugh","limber","limbered","limberness","limbers","limbic","limbless","limbo","limburger","lime","limeade","limekiln","limelight","limerick","limestone","limit","limitability","limitably","limitation","limitations","limited","limitedly","limitedness","limiter","limiting","limitless","limitlessness","limits","limn","limo","limoges","limousine","limp","limper","limpet","limpid","limpidity","limpidness","limpness","limpopo","limy","lin","lina","linage","linalg","linc","linchpin","lincoln","lind","linda","lindberg","lindbergh","linden","lindholm","lindi","lindie","lindon","lindquist","lindsay","lindsey","lindstrom","lindsy","lindy","line","linea","lineage","lineal","lineament","linear","lineargradientbrush","linearity","linearize","linearlayout","linearlayoutmanager","linebacker","linechart","linecolor","lined","linefeed","linell","lineman","linemen","linen","lineno","linenumber","liner","lines","linesman","linesmen","linestyle","linet","lineto","linette","lineup","linewidth","ling","linger","lingerer","lingerie","lingering","lingo","lingoes","lingua","lingual","linguine","linguini","linguist","linguistic","linguistically","linguistics","liniment","lining","link","linkable","linkage","linkbutton","linked","linkedhashmap","linkedin","linkedlist","linker","linkid","linking","links","linkup","linn","linnaeus","linnea","linnell","linnet","linnie","lino","linode","linoel","linoleum","linotype","linq","linseed","linspace","lint","lintel","linter","linton","linty","linus","linux","linwood","linzy","lion","lionel","lionello","lioness","lionhearted","lionization","lionize","lionizer","lip","lipase","lipid","liposuction","lipped","lipper","lippi","lipping","lippmann","lippy","lipread","lipschitz","lipscomb","lipstick","lipton","liq","liquefaction","liquefier","liquefy","liqueur","liquibase","liquid","liquidate","liquidation","liquidator","liquidity","liquidize","liquidizer","liquidness","liquor","liquorice","liquorish","lira","lire","lis","lisa","lisabeth","lisbeth","lisbon","lise","lisetta","lisette","lisha","lishe","lisle","lisp","lisper","liss","lissa","lissajous","lissi","lissie","lissome","lissomeness","lissomness","lissy","list","lista","listactivity","listadapter","listb","listbox","listboxitem","listdata","listdir","liste","listed","listen","listener","listeners","listening","listens","lister","listerine","listfiles","listfragment","listid","listing","listings","listitem","listitems","listless","listlessness","listnode","liston","lists","listview","listviewitem","liszt","lit","lita","litany","litchi","lite","liter","literacy","literal","literalism","literalistic","literally","literalness","literals","literariness","literary","literate","literati","literation","literature","lithe","litheness","lithesome","lithium","lithograph","lithographer","lithographic","lithographically","lithographs","lithography","lithology","lithosphere","lithospheric","lithuania","lithuanian","litigant","litigate","litigation","litigator","litigious","litigiousness","litmus","litotes","litter","litterbug","little","littleneck","littleness","littleton","litton","littoral","littrateur","liturgic","liturgical","liturgics","liturgist","liturgy","liuka","liv","liva","livability","livable","livableness","livably","live","lived","livedata","livelihood","liveliness","livelong","lively","liven","liveness","liver","liveried","liverish","livermore","liverpool","liverpudlian","liverwort","liverwurst","livery","liveryman","liverymen","lives","livestock","livia","livid","lividness","living","livingness","livingston","livingstone","livonia","livvie","livvy","livvyy","livy","liz","liza","lizabeth","lizard","lizbeth","lizette","lizzie","lizzy","ljava","ljubljana","lk","ll","llama","llano","llb","llc","lld","lldb","llewellyn","lloyd","llvm","llywellyn","lm","ln","lname","lng","lnk","lo","load","loadable","loadclass","loaddata","loaded","loader","loaders","loadfile","loadhtml","loadimage","loading","loadlibrary","loadmodule","loads","loadstar","loadstone","loadurl","loadxml","loaf","loafer","loam","loamy","loan","loaner","loaning","loans","loansharking","loanword","loath","loathe","loather","loathing","loathness","loathsome","loathsomeness","loaves","lob","lobachevsky","lobar","lobbed","lobber","lobbing","lobby","lobbyist","lobe","lobortis","lobotomist","lobotomize","lobotomy","lobster","lobular","lobularity","lobule","loc","local","localcontainerentitymanagerfactorybean","localdate","localdatetime","localdb","locale","locales","localhost","localisms","locality","localization","localize","localized","localizeddescription","localizer","localizes","locally","localname","locals","localstorage","localtime","locatable","locate","located","locater","locating","location","locational","locationid","locationlistener","locationmanager","locationprovider","locationrequest","locations","locative","locator","loch","lochinvar","lochs","loci","lock","lockable","locke","lockean","locked","locker","locket","lockhart","lockheed","lockian","locking","lockjaw","locknut","lockout","locks","locksmith","locksmithing","locksmiths","lockstep","lockup","lockwood","loco","locomotion","locomotive","locomotor","locomotory","locoweed","locus","locust","locution","lodash","lode","lodestar","lodestone","lodge","lodged","lodgepole","lodger","lodges","lodging","lodgment","lodovico","lodowick","lodz","loeb","loella","loewe","loewi","loft","lofter","loftily","loftiness","lofty","log","logan","loganberry","logarithm","logarithmic","logarithmically","logback","logbook","logcat","loge","logfile","logged","loggedin","logger","loggerfactory","loggerhead","loggers","loggia","logging","logic","logical","logicality","logically","logicalness","logician","login","loginactivity","loginbutton","logincontroller","loginform","loginpage","logins","loginurl","loginview","logion","logistic","logistical","logits","logjam","loglevel","logmanager","logo","logon","logos","logotype","logout","logrolling","logs","logstash","logy","lohengrin","loin","loincloth","loincloths","loire","lois","loise","loiter","loiterer","loki","lol","lola","loleta","lolita","loll","loller","lollipop","lolly","lomb","lombard","lombardi","lombardy","lombok","lome","lon","lona","london","londonderry","londoner","lone","lonee","loneliness","lonely","loneness","loner","lonesome","lonesomeness","long","longboat","longbow","longed","longeing","longer","longest","longevity","longfellow","longhair","longhand","longhorn","longing","longish","longitude","longitudinal","longness","longs","longshoreman","longshoremen","longsighted","longstanding","longstreet","longsword","longterm","longtime","longueuil","longueur","longways","longword","loni","lonna","lonnard","lonni","lonnie","lonny","loofah","loofahs","look","lookahead","lookalike","lookat","lookbehind","looked","looker","looking","lookout","looks","lookup","lookups","loom","looming","loomis","loon","loony","loop","loopback","looped","looper","loophole","looping","loops","loopy","loose","loosed","looseleaf","loosely","loosen","loosener","looseness","looses","loosing","loot","looter","lop","lope","loper","lopez","lopped","lopper","lopping","lopsided","lopsidedness","loquacious","loquaciousness","loquacity","lora","lorain","loraine","loralee","loralie","loralyn","lorant","lord","lording","lordliness","lordly","lordship","lore","loree","loreen","lorelei","lorelle","lorem","lorempixel","loren","lorena","lorene","lorentz","lorentzian","lorenz","lorenza","lorenzo","loretta","lorette","lorgnette","lori","loria","lorianna","lorianne","lorie","lorilee","lorilyn","lorin","lorinda","lorine","loris","lorita","lorn","lorna","lorne","lorraine","lorrayne","lorre","lorri","lorrie","lorrin","lorry","lorryload","lory","los","lose","loser","loses","losing","loss","lossage","losses","lossless","lossy","lost","lot","lothaire","lothario","lotion","lots","lott","lotta","lotte","lotted","lotter","lottery","lotti","lottie","lotting","lotto","lotty","lotus","lou","loud","louden","loudhailer","loudly","loudmouth","loudmouths","loudness","loudspeaker","loudspeaking","louella","louie","louis","louisa","louise","louisette","louisiana","louisianan","louisianian","louisville","lounge","lounger","lour","lourdes","louse","lousewort","lousily","lousiness","lousy","lout","loutish","loutishness","loutitia","louver","louvre","lovable","lovableness","lovably","love","lovebird","lovechild","lovecraft","loved","lovejoy","lovelace","loveland","loveless","lovelessness","lovelies","loveliness","lovelinesses","lovell","lovelorn","lovelornness","lovely","lovemaking","lover","lovesick","lovestruck","loving","lovingly","lovingness","low","lowborn","lowboy","lowbrow","lowdown","lowe","lowell","lower","lowercase","lowermost","lowery","lowest","lowish","lowland","lowlands","lowlife","lowlight","lowliness","lowly","lowness","lowrance","lox","loy","loyal","loyaler","loyalest","loyalism","loyalist","loyalty","loyang","loyd","loydie","loyola","lozenge","lp","lparam","lpg","lpn","lq","lr","lrow","ls","lsb","lsd","lst","lstm","lt","ltd","lte","ltr","ltrim","lts","lu","lua","luanda","luann","luau","lubber","lubbock","lube","lubricant","lubricate","lubrication","lubricator","lubricious","lubricity","lubumbashi","luca","lucais","luce","lucene","lucent","lucerne","lucho","luci","lucia","lucian","luciana","luciano","lucid","lucidity","lucidness","lucie","lucien","lucienne","lucifer","lucila","lucile","lucilia","lucille","lucina","lucinda","lucine","lucio","lucita","lucite","lucius","luck","luckier","luckily","luckiness","luckless","lucknow","lucky","lucrative","lucrativeness","lucre","lucretia","lucretius","luctus","lucubrate","lucubration","lucy","luddite","ludhiana","ludicrous","ludicrousness","ludlow","ludmilla","ludo","ludovico","ludovika","ludvig","ludwig","luella","luelle","luff","lufthansa","luftwaffe","lug","luge","luger","luggage","lugged","lugger","lugging","lugosi","lugsail","lugubrious","lugubriousness","luigi","luis","luisa","luise","lukas","luke","lukewarm","lukewarmness","lula","lulita","lull","lullaby","lulu","lumbago","lumbar","lumber","lumberer","lumbering","lumberjack","lumberman","lumbermen","lumberyard","lumen","luminance","luminary","luminescence","luminescent","luminosity","luminous","luminousness","lumire","lummox","lump","lumper","lumpiness","lumpish","lumpishness","lumpy","luna","lunacy","lunar","lunary","lunate","lunatic","lunation","lunch","luncheon","luncheonette","luncher","lunchpack","lunchroom","lunchtime","lund","lundberg","lundquist","lune","lung","lunge","lunger","lungfish","lungful","lunkhead","lupe","lupine","lupus","lura","lurch","lurcher","lure","lurer","lurette","lurex","luria","lurid","luridness","lurk","lurker","lurleen","lurlene","lurline","lusa","lusaka","luscious","lusciousness","lush","lushness","lusitania","lust","luster","lustering","lusterless","lustful","lustfulness","lustily","lustiness","lustrous","lustrousness","lusty","lutanist","lute","lutenist","lutero","lutetium","luther","lutheran","lutheranism","luting","lutz","luxe","luxembourg","luxembourgian","luxemburg","luxuriance","luxuriant","luxuriate","luxuriation","luxurious","luxuriousness","luxury","luz","luzon","lv","lvalue","lvl","lw","lwjgl","lwp","lx","lxml","ly","lyallpur","lyceum","lychee","lycopodium","lycra","lycurgus","lyda","lydia","lydian","lydie","lydon","lye","lyell","lying","lyle","lyly","lyman","lyme","lymph","lymphatic","lymphocyte","lymphoid","lymphoma","lymphs","lyn","lynch","lynchburg","lyncher","lynching","lynda","lynde","lyndel","lyndell","lyndon","lyndsay","lyndsey","lyndsie","lyndy","lynea","lynelle","lynett","lynette","lynn","lynna","lynne","lynnea","lynnell","lynnelle","lynnet","lynnett","lynnette","lynsey","lynx","lyon","lyra","lyre","lyrebird","lyric","lyrical","lyricalness","lyricism","lyricist","lyrics","lysenko","lysine","lysistrata","lysol","lyssa","lyx","lz","m","ma","maalox","maana","mab","mabel","mabelle","mable","mac","macabre","macadam","macadamize","macao","macaque","macaroni","macaroon","macarthur","macaulay","macaw","macbeth","macbook","maccabees","maccabeus","macdonald","macdraw","mace","macedon","macedonia","macedonian","macer","macerate","maceration","macgregor","mach","machete","machiavelli","machiavellian","machinate","machination","machine","machinelike","machinery","machines","machinist","machismo","macho","machs","macias","macintosh","mack","mackenzie","mackerel","mackinac","mackinaw","mackintosh","macleish","macmillan","macon","macos","macosx","macpaint","macports","macram","macro","macrobiotic","macrobiotics","macrocosm","macrodynamic","macroeconomic","macroeconomics","macromolecular","macromolecule","macron","macrophage","macros","macroscopic","macroscopically","macrosimulation","macrosocioeconomic","macs","mactivity","macy","mad","mada","madagascan","madagascar","madalena","madalyn","madam","madame","madapter","madcap","maddalena","madded","madden","maddening","madder","maddest","maddi","maddie","madding","maddox","maddy","made","madeira","madel","madelaine","madeleine","madelena","madelene","madelin","madelina","madeline","madella","madelle","madelon","madelyn","mademoiselle","madge","madhouse","madhya","madison","madlen","madlin","madman","madmen","madness","madonna","madras","madrid","madrigal","madsen","madurai","madwoman","madwomen","mady","mae","maecenas","maegan","maelstrom","maestro","maeterlinck","mafia","mafiosi","mafioso","mag","magazine","magda","magdaia","magdalen","magdalena","magdalene","mage","magellan","magellanic","magenta","magento","magged","maggee","maggi","maggie","magging","maggot","maggoty","maggy","magi","magic","magical","magically","magician","magick","magicked","magicking","magill","maginot","magisterial","magistracy","magistrate","magma","magna","magnanimity","magnanimosity","magnanimous","magnate","magnesia","magnesite","magnesium","magnet","magnetic","magnetically","magnetics","magnetism","magnetite","magnetizable","magnetization","magnetize","magnetized","magneto","magnetodynamics","magnetohydrodynamical","magnetohydrodynamics","magnetometer","magnetosphere","magnetron","magnification","magnificence","magnificent","magnified","magnify","magniloquence","magniloquent","magnitogorsk","magnitude","magnolia","magnum","magnuson","magog","magoo","magpie","magritte","magruder","magsaysay","maguire","magus","magyar","mahabharata","mahala","mahalia","maharajah","maharajahs","maharanee","maharani","maharashtra","maharishi","mahatma","mahavira","mahayana","mahayanist","mahdi","mahfouz","mahican","mahjong","mahler","mahmoud","mahmud","mahogany","mahomet","mahout","mai","maia","maible","maid","maiden","maidenhair","maidenhead","maidenhood","maidenly","maidservant","maier","maiga","maighdiln","maigret","mail","mailaddress","mailbag","mailbox","mailchimp","mailer","mailgun","mailing","mailitem","maillol","maillot","mailman","mailmen","mailmessage","mails","mailto","maim","maiman","maimed","maimedness","maimer","maimonides","main","mainactivity","mainapp","mainbrace","mainbundle","mainclass","maincontent","maincontroller","mainctrl","maine","mainer","mainform","mainframe","mainland","mainlander","mainlayout","mainline","mainliner","mainloop","mainly","mainmast","mainmenu","mainpage","mainpanel","mains","mainsail","mainscreen","mainspring","mainstay","mainstream","maintain","maintainability","maintainable","maintained","maintainer","maintaining","maintains","maintenance","mainthread","maintop","mainview","mainviewcontroller","mainviewmodel","mainwindow","maiolica","mair","maire","maisey","maisie","maison","maisonette","maitilde","maize","maj","maje","majestic","majestically","majesty","majolica","major","majorca","majordomo","majorette","majority","majuro","makable","makarios","make","makefile","makefiles","makeover","maker","makers","makes","makeshift","maketext","makeup","making","mal","mala","malabar","malabo","malacca","malachi","malachite","maladapt","maladjust","maladjustment","maladministration","maladroit","maladroitness","malady","malagasy","malaise","malamud","malamute","malanie","malaprop","malapropism","malaria","malarial","malarious","malarkey","malathion","malawi","malawian","malay","malaya","malayalam","malayan","malaysia","malaysian","malchy","malcolm","malcontent","malcontented","malcontentedness","maldive","maldivian","maldonado","male","maledict","malediction","malefaction","malefactor","malefic","maleficence","maleficent","malena","maleness","malesuada","malevolence","malevolencies","malevolent","malfeasance","malfeasant","malformation","malformed","malformedurlexception","malfunction","mali","malia","malian","malibu","malice","malicious","maliciousness","malign","malignancy","malignant","malignity","malina","malinda","malinde","malinger","malingerer","malinowski","malissa","malissia","mall","mallard","mallarm","malleability","malleable","malleableness","mallet","mallissa","malloc","mallorie","mallory","mallow","malnourished","malnutrition","malocclusion","malodorous","malone","malorie","malory","malposed","malpractice","malraux","malt","malta","malted","maltese","malthus","malthusian","malting","maltose","maltreat","maltreatment","malty","malva","malvin","malvina","malware","malynda","mama","mamba","mambo","mame","mamet","mamie","mamma","mammal","mammalian","mammary","mammogram","mammography","mammon","mammoth","mammoths","mammy","mamore","mamp","man","manacle","manage","manageability","manageable","manageableness","managed","managedbean","managedobjectcontext","management","manager","manageress","managerial","managers","managership","manages","managing","managua","manama","mananas","manasseh","manatee","manaus","manchester","manchu","manchuria","manchurian","mancini","manciple","mancunian","manda","mandala","mandalay","mandamus","mandarin","mandate","mandatory","mandel","mandela","mandelbrot","mandi","mandible","mandibular","mandie","mandingo","mandolin","mandrake","mandrel","mandrill","mandy","mane","manet","maneuver","maneuverability","maneuverer","manfred","manful","manganese","mange","manger","manginess","mangle","mangler","mango","mangoes","mangrove","mangy","manhandle","manhattan","manhole","manhood","manhunt","mani","mania","maniac","maniacal","manic","manically","manichean","manicure","manicurist","manifest","manifestation","manifesto","manifests","manifold","manifolder","manifoldness","manikin","manila","manilla","manioc","manipulability","manipulable","manipulate","manipulated","manipulating","manipulation","manipulations","manipulative","manipulator","manipulatory","manitoba","manitoulin","manitowoc","mankind","mankowski","manley","manlike","manliness","manly","mann","manna","manned","mannequin","manner","mannered","mannerism","mannerist","mannerliness","mannerly","mannheim","mannie","mannikin","manning","mannish","mannishness","manny","mano","manolo","manometer","manon","manor","manorial","manpower","manqu","mans","mansard","manse","manservant","mansfield","mansion","manslaughter","manson","manta","mantegna","mantel","mantelpiece","mantes","mantilla","mantis","mantissa","mantle","mantling","mantra","mantrap","manual","manually","manuals","manuel","manuela","manufacture","manufacturer","manufacturers","manufacturing","manumission","manumit","manumitted","manumitting","manure","manuscript","manville","manx","many","manya","manytomany","manytomanyfield","manytoone","mao","maoism","maoist","maori","map","mapbox","mapdispatchtoprops","mapfragment","mapi","maple","maplecrest","mapmaker","mapoptions","mappable","mappath","mapped","mappedby","mapper","mappers","mapping","mappings","mapplethorpe","mapred","mapreduce","maproute","maps","mapstatetoprops","maptypeid","maputo","mapview","mar","mara","marabel","marabou","marabout","maraca","maracaibo","maraschino","marat","marathi","marathon","marathoner","maraud","marauder","marble","marbleize","marbler","marbling","marc","marceau","marcel","marcela","marcelia","marcelino","marcella","marcelle","marcellina","marcelline","marcello","marcellus","marcelo","march","marchall","marchelle","marcher","marchioness","marci","marcia","marciano","marcie","marcile","marcille","marco","marconi","marcotte","marcus","marcy","mardi","marduk","mare","mareah","maren","marena","maressa","marga","margalit","margalo","margaret","margareta","margarete","margaretha","margarethe","margaretta","margarette","margarine","margarita","margarito","margaux","marge","margeaux","margery","marget","margette","margi","margie","margin","marginal","marginalia","marginality","marginalization","marginalize","marginbottom","marginend","marginleft","marginright","margins","marginstart","margintop","margit","margo","margot","margret","margrethe","marguerite","margy","mari","maria","mariachi","mariadb","mariam","marian","mariana","mariann","marianna","marianne","mariano","maribel","maribelle","maribeth","marice","maricela","maridel","marie","marieann","mariejeanne","mariel","mariele","marielle","mariellen","marietta","mariette","marigold","marijn","marijo","marijuana","marika","marilee","marilin","marillin","marilyn","marimba","marin","marina","marinade","marinara","marinate","marination","marine","mariner","marinna","marino","mario","marion","marionette","mariquilla","marisa","mariska","marisol","marissa","marita","maritain","marital","maritime","maritsa","maritza","mariupol","marius","mariya","marj","marja","marje","marji","marjie","marjoram","marjorie","marjory","marjy","mark","markab","markdown","marked","markedly","marker","markeroptions","markers","market","marketa","marketability","marketable","marketeer","marketer","marketing","marketplace","markets","markham","marking","markism","markka","markkaa","marklogic","markos","markov","markovian","markovitz","marks","marksman","marksmanship","marksmen","markup","markus","marl","marla","marlane","marlboro","marlborough","marleah","marlee","marleen","marlena","marlene","marley","marlie","marlin","marline","marlinespike","marlo","marlon","marlow","marlowe","marlyn","marmaduke","marmalade","marmara","marmoreal","marmoset","marmot","marna","marne","marney","marni","marnia","marnie","maroon","marque","marquee","marquesas","marquess","marquetry","marquette","marquez","marquis","marquise","marquisette","marquita","marrakesh","marred","marriage","marriageability","marriageable","married","marrilee","marring","marriott","marris","marrissa","marrow","marrowbone","marry","mars","marseillaise","marseille","marseilles","marsh","marsha","marshal","marshalas","marshall","marshalled","marshaller","marshalling","marshallings","marshiness","marshland","marshmallow","marshy","marsiella","marsupial","mart","marta","martainn","martel","martelle","marten","martguerita","martha","marthe","marthena","marti","martial","martian","martica","martie","martin","martina","martinet","martinez","martingale","martini","martinique","martino","martinson","martita","marty","martyn","martynne","martyr","martyrdom","marv","marva","marve","marvel","marvell","marvelous","marven","marvin","marwin","marx","marxian","marxism","marxist","mary","marya","maryann","maryanna","maryanne","marybelle","marybeth","maryellen","maryjane","maryjo","maryl","maryland","marylee","marylin","marylinda","marylou","marylynne","maryrose","marys","marysa","marzipan","mas","masada","masai","masaryk","masc","mascagni","mascara","mascot","masculine","masculineness","masculinity","masefield","maser","maseru","mash","masha","mashhad","mask","masked","masker","masking","masks","masochism","masochist","masochistic","masochistically","mason","masonic","masonite","masonry","masque","masquer","masquerade","masquerader","mass","massa","massachusetts","massacre","massage","massager","massasoit","massenet","masseur","masseuse","massey","massif","massimiliano","massimo","massing","massive","massively","massiveness","massless","mast","mastectomy","master","masterclass","mastered","masterful","masterfulness","masterliness","masterly","mastermind","masterpage","masterpiece","masters","mastership","masterstroke","masterwork","mastery","masthead","mastic","masticate","mastication","mastiff","mastodon","mastoid","masturbate","masturbation","masturbatory","mat","mata","matador","match","matchable","matchbook","matchbox","matchcase","matched","matcher","matchers","matches","matching","matchless","matchlock","matchmake","matchmaker","matchmaking","matchplay","matchstick","matchwood","mate","mated","matelda","mateo","mater","material","materialism","materialist","materialistic","materialistically","materiality","materialization","materialize","materialized","materializer","materializes","materializing","materialness","materials","maternal","maternity","mates","math","mathe","mathematic","mathematica","mathematical","mathematically","mathematician","mathematics","mathematik","mather","mathew","mathewson","mathian","mathias","mathieu","mathilda","mathilde","mathis","mathjax","maths","mathworks","matias","matilda","matilde","matine","mating","matins","matisse","matlab","matmul","matplotlib","matriarch","matriarchal","matriarchs","matriarchy","matrices","matricidal","matricide","matriculate","matriculation","matriel","matrimonial","matrimony","matrix","matron","matsumoto","matt","matte","mattel","matteo","matter","matterhorn","matters","matthaeus","mattheus","matthew","matthias","matthieu","matthiew","matthus","matti","mattias","mattie","matting","mattins","mattis","mattock","mattress","matty","maturate","maturation","maturational","mature","matureness","maturer","maturity","matzo","matzot","maud","maude","maudie","maudlin","maugham","maui","maul","mauler","maunder","maupassant","maura","maure","maureen","maureene","maurene","mauriac","maurice","mauricio","maurie","maurine","mauris","maurise","maurita","mauritania","mauritanian","mauritian","mauritius","maurits","maurizia","maurizio","mauro","maurois","maury","mauser","mausoleum","mauve","maven","mavencentral","mavencli","maverick","mavin","mavis","mavra","maw","mawkish","mawkishness","mawr","max","maxcdn","maxdate","maxdepth","maxheight","maxi","maxie","maxilla","maxillae","maxillary","maxim","maxima","maximal","maximality","maximilian","maximilianus","maximilien","maximization","maximize","maximized","maximizer","maximo","maximum","maxine","maxlen","maxlength","maxlines","maxoccurs","maxsize","maxtor","maxvalue","maxwell","maxwellian","maxwidth","maxx","maxy","may","maya","mayan","maybe","maybelle","mayday","maye","mayer","mayest","mayfair","mayflower","mayfly","mayhap","mayhem","mayn","maynard","mayne","maynord","mayo","mayonnaise","mayor","mayoral","mayoralty","mayoress","mayorship","maypole","mayra","mayst","mazama","mazarin","mazatlan","mazda","maze","mazed","mazedness","mazurka","mazzini","mb","mba","mbabane","mbini","mbostock","mbp","mbuilder","mc","mcadam","mcallister","mcamera","mcbride","mccabe","mccain","mccall","mccarthy","mccarthyism","mccartney","mccarty","mccauley","mcclain","mcclellan","mcclure","mccluskey","mcconnell","mccormick","mccoy","mccracken","mccray","mccullough","mcdaniel","mcdermott","mcdonald","mcdonnell","mcdougall","mcdowell","mce","mcelhaney","mcenroe","mcfadden","mcfarland","mcgee","mcgill","mcgovern","mcgowan","mcgrath","mcgraw","mcgregor","mcguffey","mcguire","mci","mcintosh","mcintyre","mckay","mckee","mckenzie","mckesson","mckinley","mckinney","mcknight","mclanahan","mclaughlin","mclean","mcleod","mcluhan","mcmahon","mcmartin","mcmillan","mcnamara","mcnaughton","mcneil","mcontext","mcpherson","mcrypt","mcursor","md","mdash","mdata","mdb","mdc","mdf","mdi","mdl","mdm","mdn","mdpi","mdrawerlayout","mdse","mdt","me","mead","meade","meadow","meadowland","meadowlark","meadows","meadowsweet","meagan","meager","meagerness","meaghan","meagres","meal","mealiness","meals","mealtime","mealy","mealybug","mealymouthed","mean","meander","meaneing","meanie","meaning","meaningful","meaningfulness","meaningless","meaninglessness","meanings","meanness","means","meant","meantime","meanwhile","meany","meara","meas","measle","measles","measly","measurable","measurably","measure","measured","measureless","measurement","measurements","measurer","measures","measurespec","measuring","meat","meataxe","meatball","meatiness","meatless","meatloaf","meatloaves","meatpacking","meaty","mecca","mechanic","mechanical","mechanics","mechanism","mechanisms","mechanist","mechanistic","mechanistically","mechanization","mechanize","mechanized","mechanizer","mechanizes","mechanochemically","mechelle","med","medal","medalist","medallion","medan","meddle","meddlesome","medea","medellin","medfield","media","mediaelement","mediaeval","medial","medials","median","mediaplayer","mediarecorder","mediastore","mediate","mediateness","mediation","mediator","mediatype","mediawiki","medic","medicaid","medical","medicament","medicare","medicate","medication","medici","medicinal","medicine","medico","medieval","medievalist","medina","mediocre","mediocrity","meditate","meditation","meditative","meditativeness","mediterranean","medium","mediumistic","medley","medulla","medusa","meed","meek","meekness","meerschaum","meet","meeter","meeting","meetinghouse","meetings","meets","meetup","mef","meg","mega","megabit","megabuck","megabyte","megacycle","megadeath","megadeaths","megahertz","megalith","megalithic","megaliths","megalomania","megalomaniac","megalopolis","megan","megaphone","megaton","megavolt","megawatt","megaword","megen","meggi","meggie","meggy","meghan","meghann","megohm","mehetabel","mei","meier","meighen","meiji","meioses","meiosis","meiotic","meir","meister","meistersinger","mejia","mekong","mel","mela","melamie","melamine","melancholia","melancholic","melancholy","melanesia","melanesian","melange","melania","melanie","melanin","melanoma","melantha","melany","melba","melbourne","melcher","melchior","meld","melendez","melesa","melessa","melicent","melina","melinda","melinde","meliorate","melioration","melisa","melisande","melisandra","melisenda","melisent","melissa","melisse","melita","melitta","mella","melli","mellicent","mellie","mellifluous","mellifluousness","mellisa","mellisent","mellon","melloney","mellow","mellowness","melly","melodee","melodic","melodically","melodie","melodious","melodiousness","melodrama","melodramatic","melodramatically","melody","melon","melonie","melony","melosa","melpomene","melt","meltdown","melter","melting","melton","melva","melville","melvin","melvyn","mem","member","membered","memberid","members","membership","memberships","membrane","membranous","memcache","memcached","memcpy","memento","memling","memo","memoir","memorabilia","memorability","memorable","memorableness","memorably","memorandum","memorial","memorialize","memorialized","memoriam","memorization","memorize","memorized","memorizer","memorizes","memory","memoryless","memorystream","memphis","memset","men","menace","menacing","menage","menagerie","menander","menarche","menard","mencius","mencken","mend","mendacious","mendaciousness","mendacity","mendel","mendeleev","mendelevium","mendelian","mendelssohn","mender","mendez","mendicancy","mendicant","mendie","mending","mendocino","mendoza","mendy","menelaus","menes","menfolk","menhaden","menial","meningeal","meninges","meningitides","meningitis","meninx","menisci","meniscus","menkalinan","menkar","menkent","menlo","mennonite","menominee","menopausal","menopause","menorah","menorahs","menotti","mens","mensa","mensch","menservants","menstrual","menstruate","menstruation","mensurable","mensuration","menswear","mental","mentalist","mentality","menthol","mentholated","mention","mentionable","mentioned","mentioner","mentioning","mentions","mentor","menu","menubar","menuhin","menuinflater","menuitem","menuitems","menus","menzies","meow","mephistopheles","mer","merak","mercado","mercantile","mercator","mercedes","mercenariness","mercenary","mercer","mercerize","merchandise","merchandiser","merchant","merchantability","merchantman","merchantmen","merci","mercie","merciful","mercifully","mercifulness","merciless","mercilessness","merck","mercurial","mercuric","mercury","mercy","mere","meredeth","meredith","meredithe","merell","merely","meretricious","meretriciousness","merganser","merge","merged","merger","merges","mergesort","merging","meridel","meridian","meridional","meridith","meriel","merilee","merill","merilyn","meringue","merino","meris","merissa","merit","merited","meritocracy","meritocratic","meritocrats","meritorious","meritoriousness","meriwether","merl","merla","merle","merlin","merlina","merline","mermaid","merman","mermen","merna","merola","meromorphic","merralee","merrel","merriam","merrick","merridie","merrie","merrielle","merrile","merrilee","merrili","merrill","merrily","merrimac","merrimack","merriment","merriness","merritt","merry","merrymaker","merrymaking","mersey","merton","merv","mervin","merwin","merwyn","meryl","mes","mesa","mesabi","mescal","mescaline","mesdames","mesdemoiselles","mesh","meshed","meshgrid","mesmeric","mesmerism","mesmerize","mesmerized","mesmerizer","mesolithic","mesomorph","mesomorphs","meson","mesopotamia","mesopotamian","mesos","mesosphere","mesozoic","mesquite","mess","message","messagebox","messageboxbuttons","messageboxicon","messagedigest","messageid","messagequeue","messages","messagetype","messaging","messed","messeigneurs","messenger","messerschmidt","messes","messiaen","messiah","messiahs","messianic","messieurs","messily","messiness","messing","messmate","messrs","messy","mestizo","met","meta","metabolic","metabolically","metabolism","metabolite","metabolize","metacarpal","metacarpi","metacarpus","metacircular","metacircularity","metaclass","metacpan","metadata","metal","metalanguage","metalization","metalized","metallic","metalliferous","metallings","metallography","metalloid","metallurgic","metallurgical","metallurgist","metallurgy","metalsmith","metalwork","metalworking","metamathematical","metamorphic","metamorphism","metamorphose","metamorphosis","metaphor","metaphoric","metaphorical","metaphosphate","metaphysic","metaphysical","metastability","metastable","metastases","metastasis","metastasize","metastatic","metastore","metatarsal","metatarsi","metatarsus","metatheses","metathesis","metathesized","metathesizes","metathesizing","metavariable","mete","metempsychoses","metempsychosis","meteor","meteoric","meteorically","meteorite","meteoritic","meteoritics","meteoroid","meteorologic","meteorological","meteorologist","meteorology","meter","meters","meth","methadone","methane","methanol","methinks","methionine","method","methodandargscaller","methodical","methodicalness","methodinfo","methodism","methodist","methodname","methodological","methodologists","methodology","methods","methought","methuen","methuselah","methuselahs","methyl","methylated","methylene","meticulous","meticulousness","metonymy","metrecal","metric","metrical","metricate","metricize","metrics","metro","metronome","metropolis","metropolitan","metropolitanization","mets","metternich","mettle","mettlesome","metus","metzler","meuse","mew","mewl","mews","mex","mexicali","mexican","mexico","meyer","meyerbeer","mezzanine","mezzo","mf","mfa","mfc","mfg","mfr","mg","mgm","mgmt","mgr","mh","mhandler","mhz","mi","mia","miami","miaplacidus","miasma","miasmal","mib","mic","mica","micaela","micah","mice","micelles","mich","michael","michaela","michaelangelo","michaelina","michaeline","michaella","michaelmas","michaelson","michail","michal","michale","micheal","micheil","michel","michelangelo","michele","michelin","michelina","micheline","michell","michelle","michelson","michigan","michigander","michiganite","mick","mickelson","mickey","micki","mickie","micky","micmac","micra","micro","microamp","microanalysis","microanalytic","microbe","microbial","microbicidal","microbicide","microbiological","microbiologist","microbiology","microbrewery","microchemistry","microchip","microcircuit","microcode","microcomputer","microcosm","microcosmic","microdensitometer","microdot","microeconomic","microeconomics","microelectronic","microelectronics","microfiber","microfiche","microfilm","microfossils","micrography","microgroove","microhydrodynamics","microinstruction","microjoule","microlevel","microlight","micromanage","micromanagement","micrometeorite","micrometeoritic","micrometer","micron","micronesia","micronesian","microorganism","microphone","microport","microprocessing","microprocessor","microprogram","microprogrammed","microprogramming","micros","microscope","microscopic","microscopical","microscopy","microsecond","microseconds","microservice","microservices","microsimulation","microsoft","microsomal","microstore","microsurgery","microsystems","microtime","microvax","microvaxes","microvolt","microwave","microwaveable","microword","mid","midair","midas","midband","midday","midden","middest","middle","middlebrow","middlebury","middleman","middlemen","middlemost","middlename","middlesex","middleton","middletown","middleware","middleweight","middling","middy","mideast","mideastern","midfield","midge","midget","midi","midland","midlife","midlives","midmorn","midmost","midnight","midpoint","midrange","midrib","midriff","midscale","midsection","midship","midshipman","midshipmen","midspan","midst","midstream","midsummer","midterm","midtown","midway","midweek","midwest","midwestern","midwesterner","midwicket","midwife","midwifery","midwinter","midwives","midyear","mien","miff","mig","might","mightily","mightiness","mightn","mighty","mignon","mignonette","mignonne","migr","migraine","migrant","migrate","migrated","migrating","migration","migrations","migrative","migratory","miguel","miguela","miguelita","mikado","mikael","mikaela","mike","mikel","mikey","mikhail","mikkel","mikol","mikoyan","mil","milady","milagros","milan","milanese","milch","mild","mildew","mildness","mildred","mildrid","mile","mileage","milena","milepost","miler","miles","milestone","milford","milicent","milieu","milissent","militancy","militant","militantness","militarily","militarism","militarist","militaristic","militarization","militarize","military","militate","militia","militiaman","militiamen","milk","milka","milken","milker","milkiness","milkmaid","milkman","milkmen","milkshake","milksop","milkweed","milky","mill","millage","millard","millay","millenarian","millenarianism","millennial","millennialism","millennium","millepede","miller","millet","milli","milliamp","milliampere","milliard","millibar","millicent","millidegree","millie","milligram","millijoule","millikan","milliliter","millimeter","milliner","millinery","milling","million","millionaire","millions","millionth","millionths","millipede","millis","millisecond","milliseconds","millisent","millivolt","millivoltmeter","milliwatt","millpond","millrace","millstone","millstream","millwright","milly","milne","milo","milquetoast","milt","miltiades","miltie","milton","miltonic","miltown","milty","milwaukee","milzie","mimd","mime","mimemessage","mimeograph","mimeographs","mimer","mimesis","mimetic","mimetically","mimetype","mimi","mimic","mimicked","mimicker","mimicking","mimicry","mimosa","min","mina","minaret","minatory","mince","mincemeat","mincer","mincing","mind","minda","mindanao","mindate","mindbogglingly","minded","minder","mindful","mindfully","mindfulness","mindless","mindlessness","mindoro","minds","mindset","mindy","mine","minecraft","minefield","miner","mineral","mineralization","mineralized","mineralogical","mineralogist","mineralogy","minerva","mineshaft","minestrone","minesweeper","minetta","minette","mineworkers","minflater","ming","mingle","mingus","mingw","minheight","mini","miniature","miniaturist","miniaturization","miniaturize","minibike","minibus","minicab","minicam","minicomputer","miniconda","minidress","minified","minify","minifyenabled","minim","minima","minimal","minimalism","minimalist","minimalistic","minimality","minimax","minimization","minimize","minimized","minimizer","minimum","mining","minion","miniseries","miniskirt","minister","ministerial","ministrant","ministration","ministry","minivan","miniver","mink","minke","minlength","minn","minna","minnaminnie","minne","minneapolis","minnesinger","minnesota","minnesotan","minni","minnie","minnnie","minnow","minny","minoan","minoccurs","minolta","minor","minority","minos","minot","minotaur","minoxidil","mins","minsdkversion","minsk","minsky","minster","minstrel","minstrelsy","mint","minta","mintage","mintaka","minter","minty","minuend","minuet","minuit","minus","minuscule","minute","minuteman","minutemen","minuteness","minutes","minutia","minutiae","minvalue","minwidth","minx","miny","miocene","mipmap","mips","miquela","mir","mira","mirabeau","mirabel","mirabella","mirabelle","mirach","miracle","miraculous","miraculousness","mirage","miran","miranda","mire","mireielle","mireille","mirella","mirelle","mirfak","miriam","mirilla","mirna","miro","mirror","mirrors","mirth","mirthful","mirthfulness","mirthless","mirthlessness","mirths","mirv","miry","mirzam","mis","misaddress","misadventure","misalign","misalignment","misalliance","misanalysed","misanthrope","misanthropic","misanthropically","misanthropist","misanthropy","misapplier","misapply","misapprehend","misapprehension","misappropriate","misbegotten","misbehave","misbehaver","misbehavior","misbrand","misc","miscalculate","miscalculation","miscall","miscarriage","miscarry","miscast","miscegenation","miscellanea","miscellaneous","miscellany","mischa","mischance","mischief","mischievous","mischievousness","miscibility","miscible","misclassification","misclassified","misclassifying","miscode","miscommunicate","miscomprehended","misconceive","misconception","misconduct","misconfiguration","misconstruction","misconstrue","miscopying","miscount","miscreant","miscue","misdeal","misdealt","misdeed","misdemeanant","misdemeanor","misdiagnose","misdid","misdirect","misdirection","misdirector","misdo","misdoes","misdone","miser","miserable","miserableness","miserably","miserliness","miserly","misery","mises","misfeasance","misfeature","misfield","misfile","misfire","misfit","misfitted","misfitting","misfortune","misgauge","misgiving","misgovern","misgovernment","misguidance","misguide","misguided","misguidedness","misguider","misha","mishandle","mishap","mishapped","mishapping","mishear","misheard","mishitting","mishmash","misidentification","misidentify","misinform","misinformation","misinterpret","misinterpretation","misinterpreter","misjudge","misjudging","misjudgment","miskito","mislabel","mislaid","mislay","mislead","misleader","misleading","misled","mismanage","mismanagement","mismatch","misname","misnomer","misogamist","misogamy","misogynist","misogynistic","misogynous","misogyny","misperceive","misplace","misplacement","misplay","mispositioned","misprint","misprision","mispronounce","mispronunciation","misquotation","misquote","misread","misreader","misrelated","misremember","misreport","misrepresent","misrepresentation","misrepresenter","misroute","misrule","miss","missal","missed","misses","misshape","misshapen","misshapenness","missie","missile","missilery","missing","mission","missionary","missioned","missioner","missioning","missis","mississauga","mississippi","mississippian","missive","missoula","missouri","missourian","misspeak","misspecification","misspecified","misspell","misspelling","misspend","misspent","misspoke","misspoken","misstate","misstatement","misstater","misstep","misstepped","misstepping","missus","missy","mist","mistakable","mistake","mistaken","mistaker","mistakes","mistaking","mistassini","mister","misti","mistily","mistime","mistiness","mistletoe","mistook","mistral","mistranslated","mistranslates","mistranslating","mistranslation","mistreat","mistreatment","mistress","mistrial","mistrust","mistruster","mistrustful","misty","mistype","misunderstand","misunderstander","misunderstanding","misunderstood","misuse","misuser","miswritten","mit","mitch","mitchael","mitchel","mitchell","mite","miter","miterer","mitford","mithra","mithridates","mitigate","mitigated","mitigation","mitoses","mitosis","mitotic","mitre","mitsubishi","mitt","mitten","mitterrand","mitty","mitzi","mitzvahs","mix","mixable","mixed","mixer","mixin","mixing","mixins","mixture","mizar","mizzen","mizzenmast","mj","mk","mkdir","mkdirs","mkl","mkmapview","mks","mktime","mkyong","ml","mle","mlist","mlistener","mlle","mm","mmap","mme","mmm","mmmm","mms","mmsc","mn","mname","mnchhausen","mnemonic","mnemonically","mnemonics","mnemosyne","mnist","mno","mnt","mo","moan","moat","mob","mobbed","mobber","mobbing","mobcap","mobil","mobile","mobility","mobilizable","mobilization","mobilize","mobilized","mobilizer","mobilizes","mobster","mobutu","moc","moccasin","mocha","mock","mocked","mockers","mockery","mocking","mockingbird","mockito","mocks","mod","modal","modality","modals","mode","model","modeladmin","modelandview","modelattribute","modelbuilder","modeled","modeler","modelform","modeling","modelitem","modelling","modelname","models","modelserializer","modelstate","modelversion","modelview","modem","moderate","moderated","moderateness","moderation","moderator","modern","modernism","modernist","modernistic","modernity","modernization","modernize","modernized","modernizer","modernizes","modernizr","modernness","modes","modest","modesta","modestia","modestine","modesto","modesty","modicum","modifiability","modifiable","modifiableness","modification","modifications","modified","modifier","modifiers","modifies","modify","modifying","modigliani","modish","modishness","mods","modula","modular","modularity","modularization","modularize","modulate","modulation","modulator","module","moduleid","modulename","modules","moduli","modulo","modulus","modus","moe","moen","mogadiscio","mogadishu","mogul","mohair","mohamed","mohammad","mohammed","mohammedan","mohammedanism","mohandas","mohandis","mohawk","mohegan","mohican","moho","mohorovicic","mohr","moiety","moil","moina","moines","moira","moire","moise","moiseyev","moishe","moist","moisten","moistener","moistness","moisture","moisturize","mojave","mojo","mojoexecutor","molal","molar","molarity","molasses","mold","moldavia","moldavian","moldboard","molder","moldiness","molding","moldova","moldy","mole","molecular","molecularity","molecule","molehill","moleskin","molest","molestation","molested","molester","molestie","moliere","molina","moline","moll","mollee","molli","mollie","mollification","mollify","mollis","mollusc","mollusk","molly","mollycoddle","mollycoddler","molnar","moloch","molokai","molotov","molt","molter","moluccas","molybdenite","molybdenum","mom","mombasa","moment","momenta","momentarily","momentariness","momentary","momentjs","momentous","momentousness","moments","momentum","momma","mommy","mon","mona","monaco","monad","monadic","monads","monah","monarch","monarchic","monarchical","monarchism","monarchist","monarchistic","monarchs","monarchy","monash","monastery","monastic","monastical","monasticism","monaural","mondale","monday","mondrian","monegasque","monera","monet","monetarily","monetarism","monetarist","monetary","monetization","monetize","money","moneybag","moneychangers","moneyer","moneylender","moneymaker","moneymaking","monfort","monger","mongo","mongoclient","mongod","mongodb","mongoid","mongol","mongolia","mongolian","mongolic","mongolism","mongoloid","mongoose","mongrel","monica","monies","monika","moniker","monique","monism","monist","monition","monitor","monitored","monitoring","monitors","monitory","monk","monkey","monkeyshine","monkish","monkshood","monmouth","mono","monobehaviour","monochromatic","monochromator","monochrome","monocle","monoclinic","monoclonal","monocotyledon","monocotyledonous","monocular","monodevelop","monodic","monodist","monody","monogamist","monogamous","monogamy","monogram","monogrammed","monogramming","monograph","monographs","monolingual","monolingualism","monolith","monolithic","monolithically","monoliths","monologist","monologue","monomania","monomaniac","monomaniacal","monomer","monomeric","monomial","monongahela","mononuclear","mononucleoses","mononucleosis","monophonic","monoplane","monopole","monopolist","monopolistic","monopolization","monopolize","monopolized","monopolizes","monopoly","monorail","monospace","monostable","monosyllabic","monosyllable","monotheism","monotheist","monotheistic","monotone","monotonic","monotonically","monotonicity","monotonous","monotonousness","monotony","monotouch","monovalent","monoxide","monro","monroe","monrovia","monsanto","monseigneur","monsieur","monsignor","monsignori","monsoon","monsoonal","monster","monstrance","monstrosity","monstrous","monstrousness","mont","montage","montague","montaigne","montana","montanan","montcalm","montclair","monte","montenegrin","montenegro","monterey","monterrey","montesquieu","montessori","monteverdi","montevideo","montezuma","montgomery","month","monthly","months","monti","monticello","montmartre","montoya","montpelier","montrachet","montreal","montserrat","monty","monument","monumental","monumentality","moo","mooch","mood","moodily","moodiness","moodle","moody","moog","moon","moonbeam","mooney","moonless","moonlight","moonlighting","moonlit","moonscape","moonshine","moonshiner","moonshot","moonstone","moonstruck","moonwalk","moor","moore","mooring","moorish","moorland","moose","moot","mootools","mop","mope","moped","moper","mopey","mopier","mopiest","mopish","mopped","moppet","mopping","moq","mora","moraine","moral","morale","morales","moralist","moralistic","moralistically","morality","moralization","moralize","moralled","moraller","moralling","moran","morass","moratorium","moravia","moravian","moray","morbi","morbid","morbidity","morbidness","mord","mordancy","mordant","mordecai","mordred","mordy","more","moreen","morehouse","morel","moreland","morena","moreno","moreover","morey","morgan","morgana","morganica","morganne","morgen","morgue","morgun","moria","moriarty","moribund","moribundity","morie","morin","morion","morison","morissa","morita","moritz","morlee","morley","morly","mormon","mormonism","morn","morna","morning","moro","moroccan","morocco","moron","moroni","moronic","moronically","morose","moroseness","morph","morpheme","morphemic","morpheus","morphia","morphine","morphism","morphologic","morphological","morphology","morphophonemic","morphophonemics","morphs","morrie","morris","morrison","morristown","morrow","morry","morse","morsel","mort","mortal","mortality","mortar","mortarboard","mortbay","morten","mortgage","mortgageable","mortgagee","mortgagor","mortice","mortician","mortie","mortification","mortified","mortifier","mortify","mortimer","mortise","morton","mortuary","morty","mos","mosaic","mosaicked","mosaicking","moscone","moscow","mose","moseley","moselle","moser","mosey","moshe","moslem","mosley","mosque","mosquito","mosquitoes","moss","mossback","mossberg","mossy","most","mostly","mosul","mot","mote","motel","motet","moth","mothball","mother","motherboard","motherfucker","motherfucking","motherhood","mothering","motherland","motherless","motherliness","motherly","moths","motif","motile","motility","motion","motional","motioner","motionevent","motionless","motionlessness","motions","motivate","motivated","motivation","motivational","motivator","motive","motiveless","motley","motlier","motliest","motocross","motor","motorbike","motorboat","motorcade","motorcar","motorcycle","motorcyclist","motoring","motorist","motorization","motorize","motorized","motorman","motormen","motormouth","motormouths","motorola","motorway","motown","mott","mottle","mottler","motto","mottoes","moue","moulder","moult","mound","mount","mountable","mountain","mountaineer","mountaineering","mountainous","mountainousness","mountainside","mountaintop","mountbatten","mountebank","mounted","mounter","mountie","mounties","mounting","mounts","mourn","mourner","mournful","mournfuller","mournfullest","mournfulness","mourning","mouse","mousedown","mouseenter","mouseevent","mouseeventargs","mouseleave","mousemove","mouseout","mouseover","mouser","mousetrap","mousetrapped","mousetrapping","mouseup","mousewheel","mousex","mousey","mousiness","mousing","mousse","moussorgsky","mousy","mouth","mouthe","mouthful","mouthiness","mouthorgan","mouthpiece","mouths","mouthwash","mouthwatering","mouthy","mouton","mov","movable","movableness","move","moved","movement","movements","movenext","mover","moves","moveto","movetofirst","movetonext","movie","movieclip","moviegoer","movieid","movies","moving","movl","movq","mow","mower","mowgli","mowing","moxie","moyer","moyna","moyra","moz","mozambican","mozambique","mozart","mozelle","mozes","mozilla","mozzarella","mp","mpaint","mpdf","mpeg","mpg","mph","mpi","mpl","mplayer","mq","mqtt","mr","mrecyclerview","mri","mrs","ms","msb","msbuild","msc","mscorlib","msdn","mse","msec","msft","msg","msgbox","msgid","msgr","msgs","msi","msie","msil","msmq","mso","msp","mssql","mst","msvc","msw","msxml","msys","mt","mtcars","mtg","mtge","mtier","mtime","mts","mtu","mtv","mu","muawiya","mubarak","much","muchness","mucilage","mucilaginous","muck","mucker","muckrake","muckraker","mucky","mucosa","mucous","mucus","mud","mudded","muddily","muddiness","mudding","muddle","muddlehead","muddleheaded","muddler","muddy","mudflat","mudguard","mudlarks","mudroom","mudslide","mudsling","mudslinger","mudslinging","mueller","muenster","muesli","muezzin","muff","muffin","muffle","muffler","mufi","mufinella","mufti","mug","mugabe","mugged","mugger","mugginess","mugging","muggy","mugshot","mugwump","muhammad","muhammadan","muhammadanism","muir","muire","mukden","mukluk","mul","mulatto","mulattoes","mulberry","mulch","mulct","mulder","mule","muleskinner","mulesoft","muleteer","mulish","mulishness","mull","mullah","mullahs","mullein","mullen","muller","mullet","mulligan","mulligatawny","mullikan","mullins","mullion","mult","multan","multer","multi","multibus","multicast","multicellular","multichannel","multicollinearity","multicolor","multicolumn","multicomponent","multicomputer","multics","multicultural","multiculturalism","multidex","multidimensional","multidimensionality","multidisciplinary","multifaceted","multifamily","multifarious","multifariousness","multifigure","multiform","multifunction","multiindex","multilateral","multilayer","multilevel","multiline","multilingual","multilingualism","multimap","multimedia","multimegaton","multimeter","multimillionaire","multinational","multinomial","multipart","multiphase","multiple","multiples","multiplet","multiplex","multiplexor","multipliable","multiplicand","multiplication","multiplicative","multiplicity","multiplied","multiplier","multiply","multiplying","multiprocess","multiprocessing","multiprocessor","multiprogram","multiprogrammed","multiprogramming","multipurpose","multiracial","multiselect","multistage","multistory","multisyllabic","multitasking","multithreaded","multithreading","multitude","multitudinous","multitudinousness","multiuser","multivalent","multivalued","multivariate","multiversity","multiviews","multivitamin","mum","mumble","mumbler","mumbletypeg","mumford","mummed","mummer","mummery","mummification","mummify","mumming","mummy","mumps","mun","munch","muncher","munchies","muncie","mundane","mundt","munge","munich","municipal","municipality","munificence","munificent","munition","munmro","munoz","munro","munroe","munsey","munson","munster","muon","muong","muppet","mural","muralist","murasaki","murat","murchison","murcia","murder","murderer","murderess","murderous","murderousness","murdoch","murdock","mureil","murial","muriatic","muriel","murielle","murillo","murk","murkily","murkiness","murky","murmansk","murmur","murmurer","murmuring","murmurous","murphy","murrain","murray","murrow","murrumbidgee","murry","murvyn","mus","muscat","muscatel","muscle","musclebound","muscovite","muscovy","muscular","muscularity","musculature","muse","muser","musette","museum","mush","musher","mushiness","mushroom","mushy","musial","music","musical","musicale","musicality","musicals","musician","musicianship","musicked","musicking","musicological","musicologist","musicology","musing","musk","muskeg","muskegon","muskellunge","musket","musketeer","musketry","muskie","muskiness","muskmelon","muskox","muskrat","musky","muslim","muslin","muss","mussel","mussolini","mussorgsky","mussy","must","mustache","mustachio","mustang","mustard","muster","mustily","mustiness","mustn","musty","mut","mutability","mutable","mutableness","mutably","mutagen","mutant","mutate","mutating","mutation","mutational","mutations","mutator","mute","muted","muteness","mutex","mutilate","mutilation","mutilator","mutineer","mutinous","mutiny","mutsuhito","mutt","mutter","mutterer","mutton","muttonchops","mutual","mutuality","mutually","muumuu","mux","muzak","muzo","muzzle","muzzled","muzzler","mv","mvc","mview","mviewpager","mvn","mvnrepository","mvp","mvvm","mvvmcross","mw","mwebview","mx","mxml","my","myaction","myactivity","myadapter","myanmar","myapp","myapplication","myarr","myarray","mybase","mybatis","mybean","mybutton","myca","mycah","mycanvas","mycarousel","mycell","mycenae","mycenaean","mychal","mychart","myclass","mycollection","mycologist","mycology","mycommand","mycompany","mycomponent","myconnection","mycontext","mycontrol","mycontroller","myctrl","mydata","mydatabase","mydate","mydb","mydf","mydict","mydir","mydiv","mydomain","myelement","myelitides","myelitis","myemail","myentity","myenum","myer","myers","myevent","myfaces","myfield","myfile","myfolder","myform","myfragment","myframe","myfunc","myfunction","mygrid","myhost","myid","myimage","myinput","myint","myintent","myinterface","myisam","myitem","myjson","mykey","mylabel","mylar","myles","mylib","mylist","mylo","mymap","mymethod","mymodal","mymodel","mymodule","myna","myname","mynamespace","mynheer","mynumber","myobj","myobject","myocardial","myocardium","myopia","myopic","myopically","myoptions","mypackage","mypage","mypanel","mypassword","mypath","myplugin","myprogram","myproject","myproperty","myra","myrah","myranda","myrange","myrdal","myreader","myriad","myriam","myrilla","myrle","myrlene","myrmidon","myrna","myron","myrow","myrrh","myrrhs","myrta","myrtia","myrtice","myrtie","myrtle","myrvyn","myrwyn","mys","myscript","myselect","myself","myserver","myservice","mysite","mysore","mysql","mysqlclient","mysqlcommand","mysqlconnection","mysqld","mysqldb","mysqldump","mysqli","mysqlio","myst","mysterious","mysteriousness","mystery","mystic","mystical","mysticism","mystification","mystifier","mystify","mystifying","mystique","mystr","mystring","mystruct","mytable","mytask","mytest","mytext","myth","mythic","mythical","mythographer","mythography","mythological","mythologist","mythologize","mythology","mythread","myths","mytimer","mytype","myurl","myuser","myusername","myval","myvalue","myvar","myvariable","myvector","myview","myviewcontroller","myviewholder","myviewmodel","mywebsite","mywebview","mywindow","mz","n","na","naacp","naam","nab","nabbed","nabbing","nabble","nabisco","nabob","nabokov","nacelle","nacho","nacl","nacre","nacreous","nada","nadean","nadeen","nader","nadia","nadine","nadir","nadiya","nady","nadya","nae","nag","nagasaki","nagged","nagger","nagging","nagios","nagoya","nagpur","nagy","nahuatl","nahum","naiad","naifs","nail","nailbrush","nailer","naipaul","nair","nairobi","naismith","naive","naivet","naivety","nakamura","nakayama","naked","nakedness","nakoma","nalani","nam","nama","namath","name","nameable","named","namedrop","namedropping","nameerror","nameless","namelist","namely","namenode","nameof","nameplate","namer","names","namesake","namespace","namespaces","namevaluepair","namevaluepairs","namibia","namibian","naming","nan","nana","nanak","nananne","nance","nancee","nancey","nanchang","nanci","nancie","nancy","nanete","nanette","nani","nanice","nanine","nanjing","nanking","nannette","nanni","nannie","nanny","nano","nanometer","nanon","nanook","nanosecond","nanoseconds","nanotime","nansen","nantes","nantucket","naoma","naomi","nap","napalm","nape","naphtali","naphtha","naphthalene","napier","napkin","naples","napless","napoleon","napoleonic","napped","napper","nappie","napping","nappy","nara","narbonne","narc","narcissism","narcissist","narcissistic","narcissus","narcoleptic","narcoses","narcosis","narcotic","narcotization","narcotize","nari","nariko","nark","narmada","narragansett","narrate","narration","narrative","narratology","narrator","narrow","narrowed","narrowing","narrowness","narwhal","nary","nas","nasa","nasal","nasality","nasalization","nasalize","nascence","nascent","nasdaq","nash","nashua","nashville","nasm","nassau","nasser","nastily","nastiness","nasturtium","nasty","nat","nata","natal","natala","natale","natalee","natalia","natalie","natalina","nataline","natalist","natality","natalya","nataniel","natasha","natassia","natch","natchez","nate","nathalia","nathalie","nathan","nathanael","nathanial","nathaniel","nathanil","nation","national","nationalism","nationalist","nationalistic","nationalistically","nationality","nationalization","nationalize","nationalized","nationalizer","nationhood","nations","nationwide","native","nativeconstructoraccessorimpl","nativeelement","natively","nativemethodaccessorimpl","nativeness","nativescript","nativestart","natividad","nativity","natka","natl","nato","natter","nattily","nattiness","natty","natural","naturalism","naturalist","naturalistic","naturalization","naturalize","naturalized","naturally","naturalness","naturals","nature","naturist","naugahyde","naught","naughtily","naughtiness","naughty","naur","nauru","nausea","nauseate","nauseating","nauseous","nauseousness","nautical","nautilus","nav","navaho","navajo","navajoes","naval","navarro","navbar","navcontroller","nave","navel","navigability","navigable","navigableness","navigate","navigated","navigates","navigating","navigation","navigational","navigationbar","navigationcontroller","navigationitem","navigationview","navigator","navona","navratilova","navvy","navy","nay","naysayer","nazarene","nazareth","nazi","nazism","nb","nba","nbc","nbr","nbs","nbsp","nc","ncaa","ncc","nchar","nco","ncol","ncols","ncr","ncurses","nd","ndarray","ndb","ndjamena","ndk","ne","neal","neala","neale","neall","nealon","nealson","nealy","neanderthal","neap","neapolitan","near","nearby","nearest","nearly","nearness","nearside","nearsighted","nearsightedness","neat","neaten","neath","neatness","neb","nebr","nebraska","nebraskan","nebuchadnezzar","nebula","nebulae","nebular","nebulous","nebulousness","nec","necessaries","necessarily","necessary","necessitate","necessitation","necessitous","necessity","neck","neckband","neckerchief","necking","necklace","neckline","necktie","necrology","necromancer","necromancy","necromantic","necrophilia","necrophiliac","necropolis","necropsy","necroses","necrosis","necrotic","nectar","nectarine","nectarous","nectary","ned","neda","nedda","neddie","neddy","nedi","need","needed","needer","needful","needham","neediness","needing","needle","needlecraft","needlepoint","needless","needlessness","needlewoman","needlewomen","needlework","needn","needs","needy","neel","neely","nefarious","nefariousness","nefen","nefertiti","neg","negate","negated","negater","negation","negative","negativeness","negativism","negativity","negator","negev","neglect","neglecter","neglectful","neglectfulness","negligee","negligence","negligent","negligibility","negligible","negligibly","negotiability","negotiable","negotiant","negotiate","negotiation","negotiator","negress","negritude","negro","negroes","negroid","nehemiah","nehru","neigh","neighbor","neighbored","neighborer","neighborhood","neighborliness","neighborlinesses","neighborly","neighbors","neighbours","neighs","neil","neila","neile","neill","neilla","neille","neither","nelda","nelia","nelie","nell","nelle","nelli","nellie","nelly","nels","nelsen","nelson","nematic","nematode","nembutal","nemeses","nemesis","nenter","neo","neoclassic","neoclassical","neoclassicism","neocolonialism","neocortex","neodymium","neogene","neolithic","neologism","neomycin","neon","neonatal","neonate","neophyte","neoplasm","neoplastic","neoprene","nepal","nepalese","nepali","nepenthe","nephew","nephrite","nephritic","nephritides","nephritis","nepotism","nepotist","neptune","neptunium","neque","nerd","nerdy","nereid","nerf","nerissa","nerita","nero","neron","nert","nerta","nerte","nerti","nertie","nerty","neruda","nerve","nerveless","nervelessness","nerviness","nerving","nervous","nervousness","nervy","nessa","nessi","nessie","nessy","nest","nesta","nested","nestedscrollview","nester","nesting","nestle","nestler","nestling","nestor","nestorius","net","netball","netbeans","netflix","netframework","nether","netherlander","netherlands","nethermost","netherworld","netscape","netstat","nett","netta","netti","nettie","netting","nettle","nettlesome","netty","network","networkcredential","networkinfo","networking","networks","networkstream","networkx","netzahualcoyotl","neue","neumann","neural","neuralgia","neuralgic","neurasthenia","neurasthenic","neuritic","neuritides","neuritis","neuroanatomy","neurobiology","neurological","neurologist","neurology","neuromuscular","neuron","neuronal","neurone","neurons","neuropathology","neurophysiology","neuropsychiatric","neuroses","neurosis","neurosurgeon","neurosurgery","neurotic","neurotically","neurotransmitter","neut","neuter","neutral","neutralise","neutralism","neutralist","neutrality","neutralization","neutralize","neutralized","neutrino","neutron","nev","neva","nevada","nevadan","nevadian","never","nevermore","nevertheless","nevi","nevil","nevile","neville","nevin","nevis","nevsa","nevsky","nevus","new","newark","newarr","newarray","newbie","newborn","newbury","newburyport","newcastle","newcomer","newdata","newdate","newdiv","newed","newel","newell","newer","newest","newfangled","newfile","newfound","newfoundland","newfoundlander","newguid","newheight","newid","newimage","newinstance","newish","newitem","newline","newlines","newlist","newly","newlywed","newman","newname","newness","newnode","newobj","newobject","newpage","newpassword","newpath","newport","newrelic","newrow","news","newsagent","newsboy","newscast","newscaster","newscasting","newsdealer","newsed","newses","newsflash","newsgirl","newsgroup","newsing","newsize","newsletter","newsman","newsmen","newspaper","newspaperman","newspapermen","newspaperwoman","newspaperwomen","newsprint","newsreader","newsreel","newsroom","newsstand","newstate","newstr","newstring","newsweek","newsweekly","newswire","newswoman","newswomen","newsworthiness","newsworthy","newsy","newt","newtab","newtext","newton","newtonian","newtonsoft","newurl","newuser","newval","newvalue","newversion","newwidth","newx","nexis","next","nextdouble","nextint","nextline","nextpage","nextprops","nexttoken","nextval","nexus","neysa","nf","nfc","nfl","nfs","ng","ngaliema","ngclass","ngfor","ngif","nginx","ngmodel","ngmodule","ngoninit","ngram","ngroute","ngstrm","nguyen","ngx","nh","nhibernate","nhl","ni","niacin","niagara","nial","niall","niamey","nib","nibbed","nibbing","nibble","nibbler","nibelung","nibh","nic","nicaean","nicaragua","nicaraguan","niccolo","nice","nicely","nicene","niceness","nicer","nicety","niche","nichol","nicholas","nichole","nicholle","nicholson","nick","nickel","nickelodeon","nicker","nickey","nicki","nickie","nicklaus","nicknack","nickname","nicknamer","nicko","nickola","nickolai","nickolaus","nicky","nico","nicobar","nicodemus","nicol","nicola","nicolai","nicole","nicolea","nicolette","nicoli","nicolina","nicoline","nicolle","nicosia","nicotine","nid","niebuhr","niece","niel","niels","nielsen","nielson","nietzsche","nieves","nifi","nifty","nigel","niger","nigeria","nigerian","nigerien","niggard","niggardliness","niggardly","nigger","niggle","niggler","niggling","nigh","nighs","night","nightcap","nightclothes","nightclub","nightclubbed","nightclubbing","nightdress","nightfall","nightgown","nighthawk","nightie","nightingale","nightlife","nightlong","nightly","nightmare","nightmarish","nights","nightshade","nightshirt","nightspot","nightstand","nightstick","nighttime","nightwear","nighty","nih","nihilism","nihilist","nihilistic","nijinsky","nikaniki","nike","niki","nikita","nikki","nikkie","nikko","niko","nikola","nikolai","nikolaos","nikolaus","nikolayev","nikoletta","nikolia","nikolos","nikon","nil","nilclass","nile","nilled","nilling","nilpotent","nils","nilsen","nilson","nilsson","nimbi","nimble","nimbleness","nimbly","nimbus","nimby","nimitz","nimrod","nina","nincompoop","nine","ninefold","ninepence","ninepin","ninepins","nineteen","nineteenths","ninetieths","ninetta","ninette","ninety","nineveh","ninja","ninject","ninnetta","ninnette","ninny","ninon","nintendo","ninth","ninths","nio","niobe","niobium","nioendpoint","nip","nipped","nipper","nippiness","nipping","nipple","nippon","nipponese","nippy","nirenberg","nirvana","nisei","nisi","nisl","nissa","nissan","nisse","nissie","nissy","nit","nita","niter","nitpick","nitrate","nitration","nitric","nitride","nitriding","nitrification","nitrite","nitrocellulose","nitrogen","nitrogenous","nitroglycerin","nitrous","nitwit","niven","nix","nixer","nixie","nixon","nj","nk","nkrumah","nl","nlog","nlp","nlrb","nls","nltk","nm","nmap","nn","no","noaa","noach","noactionbar","noah","noak","noam","noami","nob","nobe","nobel","nobelist","nobelium","nobie","nobility","noble","nobleman","noblemen","nobleness","noblesse","noblewoman","noblewomen","nobody","noby","noclassdeffounderror","noconflict","nocount","nocturnal","nocturne","nod","nodal","nodded","nodding","noddle","noddy","node","nodeid","nodejs","nodelist","nodemon","nodename","nodes","nodetype","nodevalue","nodoz","nodular","nodule","noe","noel","noelani","noell","noella","noelle","noellyn","noelyn","noemi","noes","noexcept","nofollow","noggin","nohow","nohup","noise","noiseless","noiselessness","noisemake","noisemaker","noisily","noisiness","noisome","noisy","nokia","nokogiri","nola","nolan","nolana","noland","nolie","noll","nollie","nolly","nolock","nom","nomad","nomadic","nombre","nome","nomenclature","nomethoderror","nomi","nominal","nominalized","nominally","nominals","nominate","nomination","nominative","nominator","nominee","non","nona","nonabrasive","nonabsorbent","nonacademic","nonacceptance","nonacid","nonactive","nonadaptive","nonaddictive","nonadhesive","nonadjacent","nonadjustable","nonadministrative","nonage","nonagenarian","nonaggression","nonagricultural","nonah","nonalcoholic","nonaligned","nonalignment","nonallergic","nonappearance","nonassignable","nonathletic","nonatomic","nonattendance","nonautomotive","nonavailability","nonbasic","nonbeliever","nonbelligerent","nonblocking","nonbreakable","nonburnable","nonbusiness","noncaloric","noncancerous","noncarbohydrate","nonce","nonchalance","nonchalant","nonchargeable","nonclerical","nonclinical","noncollectable","noncom","noncombatant","noncombustible","noncommercial","noncommissioned","noncommittal","noncommunicable","noncompeting","noncompetitive","noncompliance","noncomplying","noncomprehending","nonconducting","nonconductor","nonconforming","nonconformist","nonconformity","nonconsecutive","nonconservative","nonconstructive","noncontagious","noncontiguous","noncontinuous","noncontributing","noncontributory","noncontroversial","nonconvertible","noncooperation","noncorroding","noncorrosive","noncredit","noncriminal","noncritical","noncrystalline","noncumulative","noncustodial","noncyclic","nondairy","nondecreasing","nondeductible","nondelivery","nondemocratic","nondenominational","nondepartmental","nondepreciating","nondescript","nondestructive","nondetachable","nondeterminacy","nondeterminate","nondeterminism","nondeterministic","nondeterministically","nondisciplinary","nondisclosure","nondiscrimination","nondiscriminatory","nondramatic","nondrinker","nondrying","nondurable","none","noneconomic","noneducational","noneffective","nonelastic","nonelectric","nonelectrical","nonemergency","nonempty","nonenforceable","nonentity","nonequivalence","nonequivalent","nones","nonessential","nonesuch","nonetheless","nonetype","nonevent","nonexchangeable","nonexclusive","nonexempt","nonexistence","nonexistent","nonexplosive","nonextensible","nonfactual","nonfading","nonfat","nonfatal","nonfattening","nonferrous","nonfiction","nonfictional","nonflammable","nonflowering","nonfluctuating","nonflying","nonfood","nonfreezing","nonfunctional","nongovernmental","nongranular","nonhazardous","nonhereditary","nonhuman","noni","nonidentical","nonie","noninclusive","nonindependent","nonindustrial","noninfectious","noninflammatory","noninflationary","noninflected","nonintellectual","noninteracting","noninterchangeable","noninterference","nonintervention","nonintoxicating","nonintuitive","noninvasive","nonionic","nonirritating","nonjudgmental","nonjudicial","nonlegal","nonlethal","nonlinear","nonlinearity","nonlinguistic","nonliterary","nonliving","nonlocal","nonmagical","nonmagnetic","nonmalignant","nonmember","nonmetal","nonmetallic","nonmigratory","nonmilitant","nonmilitary","nonna","nonnah","nonnarcotic","nonnative","nonnegative","nonnegotiable","nonnuclear","nonnull","nonnumerical","nonobjective","nonobligatory","nonobservance","nonobservant","nonoccupational","nonoccurence","nonofficial","nonogenarian","nonoperational","nonoperative","nonorthogonal","nonorthogonality","nonparallel","nonparametric","nonpareil","nonparticipant","nonparticipating","nonpartisan","nonpaying","nonpayment","nonperformance","nonperforming","nonperishable","nonperson","nonperturbing","nonphysical","nonplus","nonplussed","nonplussing","nonpoisonous","nonpolitical","nonpolluting","nonporous","nonpracticing","nonprejudicial","nonprescription","nonprocedural","nonproductive","nonprofessional","nonprofit","nonprogrammable","nonprogrammer","nonproliferation","nonpublic","nonpunishable","nonracial","nonradioactive","nonrandom","nonreactive","nonreciprocal","nonreciprocating","nonrecognition","nonrecoverable","nonrecurring","nonredeemable","nonreducing","nonrefillable","nonrefundable","nonreligious","nonrenewable","nonrepresentational","nonresident","nonresidential","nonresidual","nonresistance","nonresistant","nonrespondent","nonresponse","nonrestrictive","nonreturnable","nonrhythmic","nonrigid","nonsalaried","nonscheduled","nonscientific","nonscoring","nonseasonal","nonsectarian","nonsecular","nonsegregated","nonsense","nonsensical","nonsensicalness","nonsensitive","nonsexist","nonsexual","nonsingular","nonskid","nonslip","nonsmoker","nonsmoking","nonsocial","nonspeaking","nonspecialist","nonspecializing","nonspecific","nonspiritual","nonstaining","nonstandard","nonstarter","nonstick","nonstop","nonstrategic","nonstriking","nonstructural","nonsuccessive","nonsupervisory","nonsupport","nonsurgical","nonsustaining","nonsympathizer","nontarnishable","nontaxable","nontechnical","nontenured","nonterminal","nonterminating","nontermination","nontheatrical","nonthinking","nonthreatening","nontoxic","nontraditional","nontransferable","nontransparent","nontrivial","nontropical","nonuniform","nonunion","nonuser","nonvenomous","nonverbal","nonveteran","nonviable","nonviolence","nonviolent","nonvirulent","nonvocal","nonvocational","nonvolatile","nonvolunteer","nonvoter","nonvoting","nonwhite","nonworking","nonyielding","nonzero","noob","noodle","nook","noon","noonday","nooning","noontide","noontime","noop","noose","nop","nope","nor","nora","norad","noradrenalin","noradrenaline","norah","norbert","norberto","norbie","norby","nordhoff","nordic","nordstrom","norean","noredirect","noreen","noreferrer","norene","norfolk","norina","norine","norm","norma","normal","normalcy","normality","normalization","normalizations","normalize","normalized","normalizes","normally","normals","norman","normand","normandy","normative","normativeness","normie","normy","norplant","norri","norrie","norristown","norry","norse","norseman","norsemen","north","northampton","northbound","northeast","northeaster","northeastern","northeastward","norther","northerly","northern","northerner","northernmost","northfield","northing","northland","northmen","northrop","northrup","norths","northumberland","northward","northwest","northwester","northwestern","northwestward","norton","norw","norwalk","norway","norwegian","norwich","nos","noscript","nose","nosebag","nosebleed","nosecone","nosed","nosedive","nosegay","nosferatu","nosh","nosily","nosiness","nosing","nosql","nostalgia","nostalgic","nostalgically","nostradamus","nostrand","nostril","nostrud","nostrum","nosuchelementexception","nosuchmethoderror","nosy","not","notability","notable","notableness","notably","notarial","notarization","notarize","notary","notate","notation","notational","notative","notch","note","notebook","notebooks","noted","notedness","notempty","notepad","notepaper","notes","noteworthiness","noteworthy","notfound","nothing","nothingness","notice","noticeable","noticeably","noticeboard","noticed","notices","noticing","notif","notifiable","notification","notificationcompat","notificationmanager","notifications","notified","notifier","notify","notifydatasetchanged","notifypropertychanged","notimplementedexception","noting","notion","notional","notnull","notoriety","notorious","notoriousness","notre","nottingham","notwithstanding","nouakchott","nougat","noumea","noun","nourish","nourished","nourisher","nourishment","nous","nouveau","nouvelle","nov","nova","novae","novak","novalidate","novel","novelette","novelia","novelist","novelization","novelize","novell","novella","novelty","november","novena","novene","novgorod","novice","novitiate","novocain","novocaine","novokuznetsk","novosibirsk","now","nowadays","noway","nowell","nowhere","nowise","nowrap","noxious","noxiousness","noyce","noyes","nozzle","np","npe","npm","npmjs","npos","nr","nra","nroff","nrow","nrows","ns","nsa","nsarray","nsattributedstring","nsbundle","nscalendar","nscoder","nsdata","nsdate","nsdateformatter","nsdictionary","nsdocumentdirectory","nsentitydescription","nserror","nservicebus","nsf","nsfetchedresultscontroller","nsfetchrequest","nsfilemanager","nsindexpath","nsinteger","nsjsonserialization","nslayoutconstraint","nslog","nsmakerange","nsmanagedobject","nsmanagedobjectcontext","nsmutablearray","nsmutabledata","nsmutabledictionary","nsmutablestring","nsmutableurlrequest","nsnotification","nsnotificationcenter","nsnumber","nsobject","nsoperationqueue","nspredicate","nsrange","nssearchpathfordirectoriesindomains","nsset","nssortdescriptor","nsstring","nstimeinterval","nstimer","nsuinteger","nsurl","nsurlconnection","nsurlrequest","nsurlsession","nsuserdefaults","nsuserdomainmask","nsutf","nsvalue","nsview","nsxmlparser","nt","ntdll","nth","ntlm","ntp","nu","nuance","nub","nubbin","nubby","nubia","nubian","nubile","nuclear","nuclease","nucleate","nucleated","nucleation","nuclei","nucleic","nucleoli","nucleolus","nucleon","nucleotide","nucleus","nuclide","nude","nudely","nudeness","nudest","nudge","nudger","nudism","nudist","nudity","nugatory","nugent","nuget","nugget","nuisance","nuke","nukualofa","nul","null","nulla","nullable","nullam","nullif","nullification","nullifier","nullify","nullity","nullpointerexception","nullptr","nullreferenceexception","nulls","num","numb","numba","number","numbered","numberer","numberformat","numberformatexception","numbering","numberless","numberofrowsinsection","numberplate","numbers","numberwithint","numbing","numbness","numbskull","numel","numerable","numeracy","numeral","numerate","numerates","numeration","numerator","numeric","numerical","numero","numerological","numerologist","numerology","numerous","numerousness","numinous","numismatic","numismatics","numismatist","numpy","numrows","nums","numskull","nun","nunavut","nunc","nuncio","nunez","nunit","nunki","nunnery","nuptial","nuremberg","nureyev","nurse","nursemaid","nurser","nursery","nurseryman","nurserymen","nursling","nurture","nurturer","nus","nut","nutate","nutation","nutch","nutcrack","nutcracker","nuthatch","nutmeat","nutmeg","nutmegged","nutmegging","nutpick","nutrasweet","nutria","nutrient","nutriment","nutrition","nutritional","nutritionist","nutritious","nutritiousness","nutritive","nuts","nutshell","nutted","nuttiness","nutting","nutty","nuzzle","nv","nvarchar","nvidia","nvl","nvm","nw","nwt","nx","ny","nyasa","nyc","nydia","nye","nyerere","nylon","nymph","nymphet","nympholepsy","nymphomania","nymphomaniac","nymphs","nyquist","nyse","nyssa","nytimes","nz","o","oa","oaf","oafish","oafishness","oahu","oak","oakland","oakley","oakmont","oakum","oakwood","oar","oarlock","oarsman","oarsmen","oarswoman","oarswomen","oas","oases","oasis","oat","oatcake","oater","oates","oath","oaths","oatmeal","oauth","oaxaca","ob","obadiah","obadias","obama","obbligato","obduracy","obdurate","obdurateness","obed","obediah","obedience","obedient","obeisance","obeisant","obelisk","oberlin","oberon","obese","obesity","obey","obeyer","obfuscate","obfuscated","obfuscation","obfuscatory","obi","obidiah","obie","obit","obituary","obj","objc","object","objectanimationusingkeyframes","objectatindex","objectclass","objectcontext","objectforkey","objectid","objectify","objectinputstream","objection","objectionable","objectionableness","objectionably","objective","objectiveness","objectivity","objectmapper","objectname","objector","objectoutputstream","objects","objecttype","objphpexcel","objs","objurgate","objurgation","oblate","oblation","obligate","obligation","obligational","obligatorily","obligatory","oblige","obliged","obliger","obliges","obliging","obligingness","oblique","obliqueness","obliquity","obliterate","obliteration","obliterative","oblivion","oblivious","obliviousness","oblong","oblongness","obloquies","obloquy","obnoxious","obnoxiousness","oboe","oboist","obos","obs","obscene","obscenity","obscurantism","obscurantist","obscuration","obscure","obscureness","obscurity","obsequies","obsequious","obsequiousness","obsequy","observability","observable","observablearray","observablecollection","observablelist","observables","observably","observance","observant","observantly","observants","observation","observational","observations","observatory","observe","observed","observer","observers","observing","obsess","obsession","obsessional","obsessive","obsessiveness","obsidian","obsolesce","obsolescence","obsolescent","obsolete","obsoleteness","obstacle","obstetric","obstetrical","obstetrician","obstetrics","obstinacy","obstinate","obstinateness","obstreperous","obstreperousness","obstruct","obstructed","obstructer","obstruction","obstructionism","obstructionist","obstructive","obstructiveness","obtain","obtainable","obtainably","obtained","obtaining","obtainment","obtains","obtrude","obtruder","obtrusion","obtrusive","obtrusiveness","obtuse","obtuseness","obverse","obviate","obvious","obviously","obviousness","oby","oc","ocaml","ocarina","occ","occam","occasion","occasional","occasionally","occasions","occident","occidental","occipital","occlude","occlusion","occlusive","occult","occulter","occultism","occupancy","occupant","occupation","occupational","occupied","occupier","occupies","occupy","occur","occured","occurence","occurences","occuring","occurred","occurrence","occurrences","occurring","occurs","ocean","oceanfront","oceangoing","oceania","oceanic","oceanographer","oceanographic","oceanography","oceanology","oceanside","oceanus","ocelot","ocher","ochoa","oci","ocks","oconomowoc","ocr","oct","octagon","octagonal","octahedral","octahedron","octal","octane","octant","octave","octavia","octavian","octavio","octavius","octavo","octennial","octet","octile","octillion","october","octogenarian","octopus","octoroon","ocular","oculist","od","odalisque","odata","odbc","odd","oddball","oddity","oddly","oddment","oddness","odds","ode","odele","odelia","odelinda","odell","odella","odelle","oder","oderberg","odessa","odets","odetta","odette","odey","odie","odilia","odille","odin","odio","odious","odiousness","odis","odium","odo","odom","odometer","odoo","odor","odoriferous","odorless","odorous","ods","ody","odysseus","odyssey","oe","oed","oedipal","oedipus","oem","oems","oenology","oenophile","oersted","oesophagi","oeuvre","of","ofcourse","ofelia","ofella","off","offal","offbeat","offcuts","offenbach","offend","offender","offending","offense","offensive","offensively","offensiveness","offer","offered","offerer","offering","offers","offertory","offhand","offhanded","offhandedness","office","officeholder","officemate","officer","officership","offices","officia","official","officialdom","officialism","officially","officiant","officiate","officiation","officiator","officio","officious","officiousness","offing","offish","offline","offload","offprint","offramp","offs","offset","offsetheight","offsets","offsetting","offsettop","offsetwidth","offsetx","offsety","offshoot","offshore","offside","offspring","offstage","offtrack","ofilia","ofs","ofstream","oft","often","oftentimes","ofttimes","oftype","og","ogbomosho","ogdan","ogden","ogdon","ogg","ogilvy","ogive","ogle","oglethorpe","ogre","ogreish","ogress","oh","ohio","ohioan","ohm","ohmic","ohmmeter","oho","ohos","ohs","ohsa","oi","oid","oil","oilcloth","oilcloths","oiler","oilfield","oiliness","oilman","oilmen","oilseed","oilskin","oily","oink","ointment","oise","oj","ojibwa","ok","okamoto","okapi","okay","okayama","okeechobee","okefenokee","okhotsk","okhttp","okhttpclient","okinawa","okinawan","okla","oklahoma","oklahoman","okra","oks","oktoberfest","ol","ola","olaf","olag","olav","old","olden","oldenburg","older","oldest","oldfield","oldie","oldish","oldness","oldsmobile","oldster","olduvai","oldvalue","oldversion","ole","oleaginous","oleander","oledb","oledbcommand","oledbconnection","oledbdataadapter","olefin","oleg","olen","olenek","olenka","olenolin","oleo","oleomargarine","oles","olfactory","olga","olia","oligarch","oligarchic","oligarchical","oligarchs","oligarchy","oligocene","oligopolistic","oligopoly","olimpia","olin","olive","oliver","olivero","olivette","olivetti","olivia","olivie","olivier","oliviero","oliy","ollie","olly","olmec","olmsted","olsen","olson","olva","olvan","olwen","olympe","olympia","olympiad","olympian","olympic","olympie","olympus","om","omaha","oman","omar","ombudsman","ombudsmen","omdurman","omega","omelet","omelette","omen","omero","omg","omicron","ominous","ominousness","omission","omit","omitted","omitting","omni","omniauth","omnibus","omnipotence","omnipotent","omnipresence","omnipresent","omniscience","omniscient","omnivore","omnivorous","omnivorousness","omp","oms","omsk","on","onactivitycreated","onactivityresult","onanism","onassis","onattach","onbackpressed","onbeforeunload","onbindviewholder","onblur","oncancelled","once","onceperrequestfilter","oncer","onchange","oncheckedchanged","onclick","onclicklistener","onclientclick","onclose","oncogene","oncologist","oncology","oncoming","oncomplete","oncompleted","onconfigurationchanged","oncreate","oncreateoptionsmenu","oncreateview","oncreateviewholder","ondatachange","ondelete","ondestroy","ondraw","ondrea","one","oneal","onedrive","onega","onegin","oneida","oneness","oner","onerous","onerousness","onerror","ones","oneself","onetime","onetomany","onetoone","oneupmanship","oneway","onfailure","onfocus","onfre","onfroi","ongoing","onida","oninit","onion","onionskin","onitemclick","onitemclicklistener","onitemselected","onitemselectedlistener","onkeydown","onkeypress","onkeyup","onlayout","online","onlinedocs","onlinepubs","onload","onlocationchanged","onlooker","onlooking","only","onmeasure","onmessage","onmodelcreating","onmousedown","onmouseout","onmouseover","onnext","ono","onofredo","onomatopoeia","onomatopoeic","onomatopoetic","onondaga","onopen","onoptionsitemselected","onpause","onpostexecute","onpreexecute","onpress","onprogressupdate","onpropertychanged","onreadystatechange","onreceive","onresponse","onresume","onrush","ons","onsager","onsaveinstancestate","onscroll","onselect","onset","onsetting","onshore","onside","onslaught","onstart","onstartcommand","onstop","onsubmit","onsuccess","ont","ontarian","ontario","ontextchanged","onto","ontogeny","ontological","ontology","ontouch","ontouchevent","ontouchlistener","onupdate","onupgrade","onus","onward","onwards","onyx","oo","oodles","ooh","oohs","oolitic","oom","oona","ooo","oop","oops","oort","oos","ooze","oozie","oozy","op","opacity","opal","opalescence","opalescent","opalina","opaline","opaque","opaqueness","opcode","opcodes","ope","opec","opel","open","openapi","opencart","opencast","opencl","openconnection","opencv","opendatabase","opendir","opened","opener","openerp","openfile","openfiledialog","opengl","opengroup","openhanded","openhandedness","openhearted","openid","opening","openjdk","openjpa","openlayers","openmp","openness","openoffice.org","openpyxl","openqa","opens","opensession","openshift","opensource","openssh","openssl","openstack","openstream","openstreetmap","opensymphony","openurl","openwork","openxml","openxmlformats","opera","operable","operand","operandi","operands","operant","operate","operates","operatic","operatically","operating","operation","operational","operationalization","operationalize","operationcontract","operations","operative","operatively","operativeness","operatives","operator","operators","operetta","ophelia","ophelie","ophiuchus","ophthalmic","ophthalmologist","ophthalmology","opiate","opine","opinion","opinionated","opinionatedness","opinions","opioid","opium","opossum","opp","oppenheimer","opponent","opportune","opportunism","opportunist","opportunistic","opportunistically","opportunities","opportunity","oppose","opposed","opposer","opposite","oppositeness","opposition","oppositional","oppress","oppression","oppressive","oppressiveness","oppressor","opprobrious","opprobrium","oprah","ops","opt","opted","optgroup","opthalmic","opthalmologic","opthalmology","optic","optical","optician","optics","optima","optimal","optimality","optimisation","optimise","optimised","optimism","optimist","optimistic","optimistically","optimization","optimizations","optimize","optimized","optimizer","optimizes","optimizing","optimum","option","optional","optionality","optionally","options","optoelectronic","optometric","optometrist","optometry","opts","opulence","opulent","opus","oq","or","ora","oracle","oracular","oral","oralee","oralia","oralie","oralla","oralle","oran","orange","orangeade","orangery","oranges","orangutan","oranjestad","orate","oration","orator","oratorical","oratorio","oratory","orazio","orb","orbadiah","orbicular","orbiculares","orbit","orbital","orchard","orchestra","orchestral","orchestrate","orchestrater","orchestration","orchestrator","orchid","orci","ord","ordain","ordainer","ordainment","ordeal","order","orderby","orderbydescending","orderdate","ordered","ordereddict","orderer","orderid","ordering","orderitem","orderless","orderliness","orderly","ordernumber","orders","ordinal","ordinance","ordinarily","ordinariness","ordinary","ordinate","ordinated","ordinates","ordinating","ordination","ordnance","ordovician","ordure","ore","oreg","oregano","oregon","oregonian","orel","orelee","orelia","orelie","orella","orelle","orelse","oren","oreo","orestes","org","organ","organdie","organdy","organelle","organic","organically","organisation","organism","organismic","organist","organizable","organization","organizational","organizations","organize","organized","organizer","organizes","organizing","organometallic","organza","orgasm","orgasmic","orgiastic","orgy","oriana","oriel","orient","orientable","oriental","orientate","orientated","orientates","orientation","orientations","oriented","orienteering","orienter","orifice","orig","origami","origin","original","originality","originally","originate","originated","origination","originative","originator","origins","orin","orinoco","oriole","orion","orison","oriya","orizaba","orkney","orlan","orland","orlando","orleans","orlick","orlon","orly","orm","ormlite","ormolu","ornament","ornamental","ornamentation","ornare","ornate","ornateness","orneriness","ornery","ornithological","ornithologist","ornithology","orographic","orography","orono","orotund","orotundity","orphan","orphanage","orphanhood","orpheus","orphic","orr","orran","orren","orrin","orris","ors","orsa","orsola","orson","ortega","ortensia","orthodontia","orthodontic","orthodontics","orthodontist","orthodox","orthodoxies","orthodoxly","orthodoxy","orthogonal","orthogonality","orthogonalization","orthogonalized","orthographic","orthographically","orthography","orthonormal","orthopedic","orthopedics","orthopedist","orthophosphate","orthorhombic","ortiz","orton","orv","orval","orville","orwell","orwellian","os","osage","osaka","osbert","osborn","osborne","osbourn","osbourne","oscar","osceola","oscillate","oscillation","oscillator","oscillatory","oscilloscope","osculate","osculation","osgi","osgood","osha","oshawa","oshkosh","osier","osiris","oslo","osm","osman","osmium","osmond","osmoses","osmosis","osmotic","osmund","osprey","oss","osseous","ossie","ossification","ossify","ostensible","ostensibly","ostentation","ostentatious","ostentatiousness","osteoarthritides","osteoarthritis","osteology","osteopath","osteopathic","osteopaths","osteopathy","osteoporoses","osteoporosis","ostracise","ostracism","ostracize","ostrander","ostream","ostrich","ostrogoth","ostwald","osvaldo","oswald","oswell","osx","ot","otb","otc","otes","otf","otha","othelia","othella","othello","other","otherbuttontitles","otherness","others","otherwise","otherworld","otherworldly","othilia","othilie","otho","otiose","otis","otoh","otp","ottawa","otter","ottilie","otto","ottoman","ou","ouagadougou","oubliette","ouch","ought","oughtn","ouija","ounce","ouput","our","ours","ourself","ourselves","oust","ouster","out","outage","outargue","outback","outbalance","outbid","outbidding","outboard","outboast","outbound","outbreak","outbroke","outbroken","outbuilding","outburst","outcast","outclass","outcome","outcomes","outcrop","outcropped","outcropping","outcry","outdated","outdid","outdir","outdistance","outdo","outdoes","outdone","outdoor","outdoorsy","outdraw","outdrawn","outdrew","outer","outerheight","outerhtml","outermost","outerwear","outface","outfall","outfield","outfielder","outfight","outfile","outfit","outfitted","outfitter","outfitting","outflank","outflow","outfought","outfox","outgeneraled","outgo","outgoes","outgoing","outgrew","outgrip","outgrow","outgrown","outgrowth","outgrowths","outguess","outhit","outhitting","outhouse","outing","outlaid","outland","outlander","outlandish","outlandishness","outlast","outlaw","outlawry","outlay","outlet","outlets","outliers","outline","outlined","outlive","outlook","outlying","outmaneuver","outmatch","outmigration","outmoded","outness","outnumber","outofmemoryerror","outpaced","outpatient","outperform","outplacement","outplay","outpoint","outpost","outpour","outpouring","outproduce","output","outputdirectory","outputfile","outputlabel","outputpath","outputs","outputstream","outputstreamwriter","outputted","outputtext","outputting","outr","outrace","outrage","outrageous","outrageousness","outran","outrank","outreach","outrider","outrigger","outright","outrun","outrunning","outs","outscore","outsell","outset","outsetting","outshine","outshone","outshout","outside","outsider","outsize","outskirt","outsmart","outsold","outsource","outspend","outspent","outspoke","outspoken","outspokenness","outspread","outstanding","outstate","outstation","outstay","outstream","outstretch","outstrip","outstripped","outstripping","outtake","outvote","outward","outwardness","outwear","outweigh","outweighs","outwit","outwitted","outwitting","outwore","outwork","outworn","ouzo","ov","ova","oval","ovalness","ovarian","ovary","ovate","ovation","oven","ovenbird","over","overabundance","overabundant","overachieve","overact","overage","overaggressive","overall","overallocation","overambitious","overanxious","overarching","overarm","overate","overattentive","overawe","overbalance","overbear","overbearing","overbearingness","overbid","overbidding","overbite","overblown","overboard","overbold","overbook","overbore","overborne","overbought","overbuild","overbuilt","overburden","overburdening","overbuy","overcame","overcapacity","overcapitalize","overcareful","overcast","overcasting","overcautious","overcerebral","overcharge","overcloud","overcoat","overcoating","overcome","overcomer","overcommitment","overcompensate","overcompensation","overcomplexity","overcomplicated","overconfidence","overconfident","overconscientious","overconsumption","overcook","overcooled","overcorrection","overcritical","overcrowd","overcurious","overdecorate","overdependent","overdetermined","overdevelop","overdid","overdo","overdoes","overdone","overdose","overdraft","overdraw","overdrawn","overdress","overdrew","overdrive","overdriven","overdrove","overdub","overdubbed","overdubbing","overdue","overeager","overeagerness","overeat","overeater","overeducated","overemotional","overemphases","overemphasis","overemphasize","overenthusiastic","overestimate","overestimation","overexcite","overexercise","overexert","overexertion","overexploitation","overexploited","overexpose","overexposure","overextend","overextension","overfall","overfed","overfeed","overfill","overfishing","overflew","overflight","overflow","overflown","overflows","overfly","overfond","overfull","overgeneralize","overgenerous","overgraze","overgrew","overground","overgrow","overgrown","overgrowth","overgrowths","overhand","overhang","overhasty","overhaul","overhead","overhear","overheard","overhearer","overheat","overhung","overincredulous","overindulge","overindulgence","overindulgent","overinflated","overjoy","overkill","overladed","overladen","overlaid","overlain","overland","overlap","overlapped","overlapping","overlaps","overlarge","overlay","overlays","overleaf","overlie","overload","overloaded","overloading","overloads","overlong","overlook","overlooked","overlooking","overlord","overloud","overly","overmanning","overmaster","overmatching","overmodest","overmuch","overnice","overnight","overoptimism","overoptimistic","overpaid","overparticular","overpass","overpay","overpayment","overplay","overpopulate","overpopulation","overpopulous","overpower","overpowering","overpraise","overprecise","overpressure","overprice","overprint","overproduce","overproduction","overprotect","overprotection","overqualified","overran","overrate","overreach","overreact","overreaction","overred","overrefined","overrepresented","overridden","override","overriden","overrider","overrides","overriding","overripe","overrode","overrule","overrun","overrunning","oversample","oversaturate","oversaw","oversea","oversee","overseeing","overseen","overseer","oversell","oversensitive","oversensitiveness","oversensitivity","oversexed","overshadow","overshoe","overshoot","overshot","oversight","oversimple","oversimplification","oversimplify","oversize","oversleep","overslept","oversoft","oversoftness","oversold","overspecialization","overspecialize","overspend","overspent","overspill","overspread","overstaffed","overstate","overstatement","overstay","overstep","overstepped","overstepping","overstimulate","overstock","overstraining","overstressed","overstretch","overstrict","overstrike","overstrung","overstuffed","oversubscribe","oversubtle","oversupply","oversuspicious","overt","overtake","overtaken","overtax","overthrew","overthrow","overthrown","overtightened","overtime","overtire","overtone","overtook","overture","overturn","overuse","overvalue","overview","overweening","overweight","overwhelm","overwhelming","overwinter","overwork","overwrap","overwrite","overwrites","overwriting","overwritten","overwrote","overwrought","overzealous","overzealousness","ovid","oviduct","oviform","oviparous","ovoid","ovular","ovulate","ovulatory","ovule","ovum","ow","owasp","owe","owen","owin","owl","owlet","owlish","owlishness","own","owned","owner","ownerid","owners","ownership","owning","owns","ox","oxalate","oxalic","oxaloacetic","oxblood","oxbow","oxcart","oxen","oxford","oxidant","oxidate","oxidation","oxidative","oxide","oxidization","oxidize","oxidized","oxidizer","oxidizes","oxnard","oxonian","oxtail","oxus","oxyacetylene","oxygen","oxygenate","oxygenation","oxyhydroxides","oxymora","oxymoron","oyster","oystering","oz","ozark","ozone","ozymandias","ozzie","ozzy","p","pa","pablo","pablum","pabst","pabulum","pac","pace","pacemaker","pacer","pacesetter","pacesetting","pacheco","pachyderm","pachysandra","pacific","pacifically","pacification","pacifier","pacifism","pacifist","pacifistic","pacify","pack","package","packaged","packagemanager","packagename","packager","packages","packaging","packard","packed","packer","packet","packets","packhorse","packing","packinghouse","packs","packsaddle","packston","packwood","paco","pacorro","pact","pad","padang","padded","paddie","padding","paddingbottom","paddingleft","paddingright","paddingtop","paddle","paddler","paddock","paddy","padget","padgett","padilla","padlock","padraic","padraig","padre","padrewski","padriac","padx","pady","paean","paediatrician","paediatrics","paedophilia","paella","paeony","pagan","paganini","paganism","page","pageable","pageant","pageantry","pageboy","pagecount","paged","pageful","pageid","pageindex","pagename","pagenum","pagenumber","pager","pageradapter","pages","pagesize","pagetitle","pageview","pageviewcontroller","pagex","pagey","paginate","pagination","paginator","paging","paglia","pagoda","pahlavi","paid","paige","pail","pailful","pain","paine","painful","painfuller","painfullest","painfulness","painkiller","painkilling","painless","painlessness","painstaking","paint","paintbox","paintbrush","paintcomponent","painted","painter","painterly","painting","paintwork","pair","paired","pairing","pairs","pairwise","paisley","pajama","pakistan","pakistani","pal","palace","paladin","palaeolithic","palaeontologists","palaeontology","palanquin","palatability","palatable","palatableness","palatal","palatalization","palatalize","palate","palatial","palatinate","palatine","palaver","pale","paleface","palembang","paleness","paleocene","paleogene","paleographer","paleography","paleolithic","paleontologist","paleontology","paleozoic","palermo","palestine","palestinian","palestrina","palette","paley","palfrey","palimony","palimpsest","palindrome","palindromic","paling","palisade","palisades","palish","pall","palladio","palladium","pallbearer","pallet","palletized","palliate","palliation","palliative","pallid","pallidness","pallor","palm","palmate","palmer","palmerston","palmetto","palmist","palmistry","palmolive","palmtop","palmy","palmyra","palo","paloma","palomar","palomino","palpable","palpably","palpate","palpation","palpitate","palpitation","palsy","paltriness","paltry","paludal","pam","pamela","pamelina","pamella","pamirs","pammi","pammie","pammy","pampas","pamper","pamperer","pampers","pamphlet","pamphleteer","pan","panacea","panache","panama","panamanian","pancake","panchito","pancho","panchromatic","pancreas","pancreatic","panda","pandas","pandemic","pandemonium","pander","pandoc","pandora","pane","panegyric","panel","panelgrid","panelgroup","paneling","panelist","panelization","panelized","panels","panes","pang","pangaea","pangolin","panhandle","panic","panicked","panicking","panicky","panier","panjandrum","pankhurst","panmunjom","panned","pannier","panning","panoply","panorama","panoramic","panpipes","pansie","pansy","pant","pantagruel","pantaloon","pantaloons","pantheism","pantheist","pantheistic","pantheon","panther","pantie","pantiled","pantograph","pantomime","pantomimic","pantomimist","pantry","pantsuit","pantyhose","pantyliner","pantywaist","panza","paola","paoli","paolina","paolo","pap","papa","papacy","papagena","papageno","papal","paparazzi","papaw","papaya","paper","paperback","paperboard","paperboy","paperclip","paperer","papergirl","paperhanger","paperhanging","paperiness","paperless","papers","paperweight","paperwork","papery","papilla","papillae","papillary","papist","papoose","pappas","papped","papping","pappy","paprika","papyri","papyrus","paquito","par","para","parable","parabola","parabolic","paraboloid","paraboloidal","paracelsus","paracetamol","parachute","parachuter","parachutist","paraclete","parade","parader","paradigm","paradigmatic","paradisaic","paradisaical","paradise","paradox","paradoxic","paradoxical","paradoxicalness","paraffin","paragon","paragraph","paragrapher","paragraphs","paraguay","paraguayan","parakeet","paralegal","paralinguistic","parallax","parallel","paralleled","parallelepiped","parallelism","parallelization","parallelize","parallelogram","paralysis","paralytic","paralytically","paralyze","paralyzed","paralyzedly","paralyzer","paralyzing","paralyzingly","param","paramagnet","paramagnetic","paramaribo","paramecia","paramecium","paramedic","paramedical","parameter","parameterization","parameterize","parameterized","parameterless","parametername","parameters","parametric","parametrically","parametrization","parametrize","paramiko","paramilitary","paramname","paramount","paramour","params","paramus","paran","paranoia","paranoiac","paranoid","paranormal","parapet","paraphernalia","paraphrase","paraphraser","paraplegia","paraplegic","paraprofessional","parapsychologist","parapsychology","paraquat","parasite","parasitic","parasitically","parasitism","parasitologist","parasitology","parasol","parasympathetic","parathion","parathyroid","paratroop","paratrooper","paratyphoid","parboil","parc","parcel","parcelable","parceled","parceling","parch","parcheesi","parchment","pardon","pardonable","pardonableness","pardonably","pardoner","pare","paregoric","parens","parent","parentage","parental","parentelement","parenteral","parentheses","parenthesis","parenthesize","parenthetic","parenthetical","parenthood","parentid","parentnode","parentrunner","parents","pares","paresis","pareto","parfait","pariah","pariahs","pariatur","parietal","parimutuel","paring","paris","parish","parishioner","parisian","parity","park","parka","parke","parker","parkersburg","parkhouse","parking","parkinson","parkish","parkland","parklike","parkman","parkway","parlance","parlay","parley","parliament","parliamentarian","parliamentary","parlor","parlous","parm","parmesan","parmigiana","parnassus","parnell","parochial","parochialism","parochiality","parodied","parodist","parody","parole","parolee","paroxysm","paroxysmal","parquet","parquetry","parr","parrakeet","parred","parricidal","parricide","parring","parrish","parrnell","parrot","parrotlike","parry","pars","parse","parsec","parsecolor","parsed","parsedouble","parsee","parseexact","parseexception","parsefloat","parseint","parsejson","parseobject","parser","parsers","parses","parsifal","parsimonious","parsimony","parsing","parsley","parsnip","parson","parsonage","parsons","part","partake","partaken","partaker","parter","parterre","parthenogeneses","parthenogenesis","parthenon","parthia","partial","partiality","partially","partials","partialview","participant","participants","participate","participation","participator","participatory","participial","participle","particle","particleboard","particles","particolored","particular","particularistic","particularity","particularization","particularize","particularly","particulate","parties","parting","partisan","partisanship","partition","partitioned","partitioner","partitioning","partitions","partitive","partizan","partly","partner","partners","partnership","partnumber","partook","partridge","parts","parturition","partway","party","parvenu","pas","pasadena","pascal","pascale","paschal","pasha","paso","pasquale","pass","passably","passage","passageway","passaic","passband","passbook","passed","passel","passenger","passengers","passer","passerby","passersby","passes","passim","passing","passion","passionate","passionated","passionateness","passionates","passionating","passioned","passionflower","passioning","passionless","passivated","passive","passiveness","passivity","passkey","passmark","passover","passphrase","passport","passwd","password","passwords","past","pasta","paste","pastebin","pasteboard","pasted","pastel","pastern","pasternak","pastespecial","pasteup","pasteur","pasteurization","pasteurize","pasteurized","pasteurizer","pastiche","pastille","pastime","pastiness","pasting","pastor","pastoral","pastoralization","pastorate","pastrami","pastry","pasts","pasturage","pasture","pasturer","pasty","pat","patagonia","patagonian","patch","patched","patcher","patches","patchily","patchiness","patching","patchwork","patchy","pate","patel","patella","patellae","paten","patent","patentee","patents","pater","paterfamilias","paternal","paternalism","paternalist","paternalistic","paternity","paternoster","paterson","path","pathetic","pathetically","pathfinder","pathforresource","pathinfo","pathless","pathname","pathogen","pathogenesis","pathogenic","pathologic","pathological","pathologist","pathology","pathos","paths","pathvariable","pathway","patience","patient","patientid","patients","patin","patina","patine","patio","patna","patois","paton","patresfamilias","patriarch","patriarchal","patriarchate","patriarchs","patriarchy","patric","patrica","patrice","patricia","patrician","patricide","patricio","patrick","patrimonial","patrimony","patriot","patriotic","patriotically","patriotism","patristic","patrizia","patrizio","patrizius","patrol","patrolled","patrolling","patrolman","patrolmen","patrolwoman","patrolwomen","patron","patronage","patroness","patronization","patronize","patronized","patronizer","patronizes","patronizing","patronymic","patronymically","patroon","patsy","patted","patten","patter","patterer","pattern","patternlayout","patternless","patterns","patterson","patti","pattie","pattin","patting","patton","patty","paucity","paul","paula","paule","pauletta","paulette","pauli","paulie","paulina","pauline","pauling","paulita","paulo","paulsen","paulson","paulus","pauly","paunch","paunchiness","paunchy","pauper","pauperism","pauperize","pause","paused","pauses","pavarotti","pave","paved","pavel","pavement","paver","paves","pavia","pavilion","paving","pavla","pavlov","pavlova","pavlovian","paw","pawl","pawn","pawnbroker","pawnbroking","pawnee","pawner","pawnshop","pawpaw","pawtucket","pax","paxes","paxon","paxton","pay","payable","payback","paycheck","payday","payed","payee","payer","paying","payload","paymaster","payment","payments","payne","payoff","payola","payout","paypal","payroll","pays","payslip","payson","payton","paz","pb","pbkdf","pbs","pbx","pc","pca","pcap","pcb","pch","pci","pcl","pcm","pcp","pcre","pcs","pct","pd","pdata","pdb","pdf","pdfbox","pdfreader","pdfs","pdfwriter","pdialog","pdo","pdoexception","pdp","pdq","pdt","pe","pea","peabody","peace","peaceable","peaceableness","peaceably","peaceful","peacefuller","peacefullest","peacefulness","peacekeeping","peacemaker","peacemaking","peacetime","peach","peachtree","peachy","peacock","peadar","peafowl","peahen","peak","peaked","peakiness","peaks","peaky","peal","peale","pealed","peals","peanut","pear","pearce","pearl","pearla","pearle","pearler","pearlie","pearline","pearly","pearson","peartrees","peary","peasant","peasanthood","peasantry","peashooter","peat","peats","peaty","pebble","pebbling","pebbly","pebrook","pecan","peccadillo","peccadilloes","peccary","pechora","peck","pecker","peckinpah","pecl","pecos","pectic","pectin","pectoral","peculate","peculator","peculiar","peculiarity","pecuniary","pedagogic","pedagogical","pedagogics","pedagogue","pedagogy","pedal","pedant","pedantic","pedantically","pedantry","peddle","peddler","peder","pederast","pederasty","pedestal","pedestrian","pedestrianization","pedestrianize","pediatric","pediatrician","pedicab","pedicure","pedicurist","pedigree","pediment","pedlar","pedometer","pedophile","pedophilia","pedro","peduncle","pee","peeing","peek","peekaboo","peel","peeler","peeling","peen","peep","peeper","peephole","peepshow","peepy","peer","peerage","peeress","peerless","peerlessness","peers","peeve","peevers","peevish","peevishness","peewee","peg","pegasus","pegboard","pegeen","pegged","peggi","peggie","pegging","peggy","pei","peignoir","peiping","peirce","pejoration","pejorative","peke","pekinese","peking","pekingese","pekoe","pelagic","pele","pelee","pelf","pelham","pelican","pellagra","pellentesque","pellet","pellucid","peloponnese","pelt","pelter","pelvic","pelvis","pem","pembroke","pemmican","pen","pena","penal","penalization","penalize","penalized","penalty","penance","pence","penchant","pencil","pend","pendant","pendent","penderecki","pending","pendingintent","pendleton","pendulous","pendulum","penelopa","penelope","penetrability","penetrable","penetrate","penetrating","penetration","penetrative","penetrativeness","penetrator","penguin","penicillin","penile","peninsula","peninsular","penis","penitence","penitent","penitential","penitentiary","penknife","penknives","penlight","penman","penmanship","penmen","penn","penna","pennant","penned","penney","penni","pennie","penniless","penning","pennington","pennis","pennon","pennsylvania","pennsylvanian","penny","pennyweight","pennyworth","penologist","penology","penrod","pens","pensacola","pension","pensioner","pensive","pensiveness","pent","pentacle","pentagon","pentagonal","pentagram","pentaho","pentameter","pentateuch","pentathlete","pentathlon","pentatonic","pentecost","pentecostal","pentecostalism","penthouse","pentium","penuche","penultimate","penumbra","penumbrae","penurious","penuriousness","penury","peon","peonage","peony","people","peoples","peoria","pep","pepe","pepi","pepillo","pepin","pepita","pepito","pepped","pepper","peppercorn","pepperer","peppergrass","peppermint","pepperoni","peppery","peppiness","pepping","peppy","peps","pepsi","pepsico","pepsin","peptic","peptidase","peptide","peptizing","pepys","pequot","per","peradventure","perambulate","perambulation","perambulator","perc","percale","perceivably","perceive","perceived","perceiver","percent","percentage","percentages","percentile","percept","perceptible","perceptibly","perception","perceptional","perceptive","perceptiveness","perceptual","perceval","perch","perchance","perchlorate","perchlorination","percipience","percipient","percival","percolate","percolation","percolator","percuss","percussion","percussionist","percussive","percussiveness","percutaneous","percy","perdition","perdurable","peregrinate","peregrination","peregrine","perelman","peremptorily","peremptory","perennial","perestroika","perez","perf","perfect","perfecta","perfecter","perfectibility","perfectible","perfection","perfectionism","perfectionist","perfective","perfectiveness","perfectly","perfectness","perfidious","perfidiousness","perfidy","perforate","perforated","perforation","perforce","perform","performance","performant","performclick","performcreate","performed","performer","performing","performlaunchactivity","performs","performseguewithidentifier","performselector","perfume","perfumer","perfumery","perfunctorily","perfunctoriness","perfunctory","perfused","perfusion","pergamon","pergola","perhaps","peri","peria","pericardia","pericardium","perice","periclean","pericles","perigee","perihelia","perihelion","peril","perilla","perilous","perilousness","perimeter","perinatal","perinea","perineum","period","periodic","periodical","periodically","periodicity","periodontal","periodontics","periodontist","periods","peripatetic","peripheral","periphery","periphrases","periphrasis","periphrastic","periscope","perish","perishable","perishing","peristalses","peristalsis","peristaltic","peristyle","peritoneal","peritoneum","peritonitis","periwig","periwigged","periwigging","periwinkle","perjure","perjurer","perjury","perk","perkily","perkin","perkiness","perky","perl","perla","perldoc","perle","perm","permafrost","permalink","permalloy","permanence","permanency","permanent","permanently","permanentness","permeability","permeable","permeableness","permeate","permian","permissibility","permissible","permissibleness","permissibly","permission","permissions","permissive","permissiveness","permit","permitall","permits","permitted","permitting","perms","permutation","permutations","permute","pernell","pernicious","perniciousness","pernod","peron","peroration","perot","peroxidase","peroxide","perpend","perpendicular","perpendicularity","perpetrate","perpetration","perpetrator","perpetual","perpetuate","perpetuation","perpetuity","perplex","perplexed","perplexity","perquisite","perren","perri","perrine","perror","perry","persecute","persecution","persecutor","persecutory","perseid","persephone","perseus","perseverance","persevere","persevering","pershing","persia","persian","persiflage","persimmon","persis","persist","persisted","persistence","persistent","persisting","persists","persnickety","person","persona","personable","personableness","personae","personage","personal","personality","personalization","personalize","personalized","personally","personalty","personid","personification","personifier","personify","personname","personnel","persons","perspective","perspex","perspicacious","perspicaciousness","perspicacity","perspicuity","perspicuous","perspicuousness","perspiration","perspire","persuade","persuaded","persuader","persuasion","persuasive","persuasively","persuasiveness","pert","pertain","perth","pertinacious","pertinaciousness","pertinacity","pertinence","pertinent","pertness","perturb","perturbation","perturbed","pertussis","peru","peruke","perusal","peruse","peruser","peruvian","pervade","pervasion","pervasive","pervasiveness","perverse","perverseness","perversion","perversity","pervert","perverted","perverter","perviousness","peseta","peshawar","peskily","peskiness","pesky","peso","pessimal","pessimism","pessimist","pessimistic","pessimistically","pest","pester","pesticide","pestiferous","pestilence","pestilent","pestilential","pestle","pesto","pet","peta","petal","petard","petcock","pete","peter","peters","petersburg","petersen","peterson","peterus","petey","pethidine","petiole","petite","petiteness","petition","petitioner","petitions","petits","petkiewicz","petr","petra","petrarch","petrel","petri","petrifaction","petrify","petrina","petrochemical","petrodollar","petroglyph","petrol","petrolatum","petroleum","petrolled","petrolling","petrologist","petrology","petronella","petronia","petronilla","petronille","pets","petted","petter","pettibone","petticoat","pettifog","pettifogged","pettifogger","pettifogging","pettily","pettiness","petting","pettis","pettish","pettishness","petty","petulance","petulant","petunia","peugeot","pew","pewaukee","pewee","pewit","pewter","peyote","peyter","peyton","pf","pfc","pfennig","pfizer","pfobject","pfuser","pfx","pg","pgp","pgsql","ph","phaedra","phaethon","phaeton","phage","phagocyte","phaidra","phalanger","phalanges","phalanx","phalli","phallic","phallus","phanerozoic","phantasm","phantasmagoria","phantasmal","phantasy","phantom","phantomjs","phar","pharaoh","pharaohs","pharetra","pharisaic","pharisaical","pharisee","pharmaceutic","pharmaceutical","pharmaceutics","pharmacist","pharmacological","pharmacologist","pharmacology","pharmacopoeia","pharmacy","pharyngeal","pharynges","pharyngitides","pharyngitis","pharynx","phase","phasellus","phaseout","phases","phd","pheasant","phebe","phedra","phekda","phelia","phelps","phenacetin","phenobarbital","phenol","phenolic","phenolphthalein","phenomena","phenomenal","phenomenological","phenomenology","phenomenon","phenotype","phenyl","phenylalanine","pheromone","phew","phi","phial","phialled","phialling","phidias","phil","philadelphia","philander","philanderer","philanthropic","philanthropically","philanthropist","philanthropy","philatelic","philatelist","philately","philbert","philco","philharmonic","philip","philipa","philippa","philippe","philippians","philippic","philippine","philis","philistine","philistinism","phillida","phillie","phillip","phillipa","phillipe","phillipp","phillis","philly","philodendron","philological","philologist","philology","philomena","philosopher","philosophic","philosophical","philosophize","philosophized","philosophizer","philosophizes","philosophy","philter","philtre","phineas","phip","phipps","phlebitides","phlebitis","phlegm","phlegmatic","phlegmatically","phloem","phlox","phobia","phobic","phobos","phoebe","phoenicia","phoenician","phoenix","phone","phonegap","phoneme","phonemic","phonemically","phonemics","phonenumber","phones","phonetic","phonetically","phonetician","phonetics","phonewindow","phonic","phonically","phonics","phoniness","phonograph","phonographer","phonographic","phonographs","phonologic","phonological","phonologist","phonology","phonon","phony","phooey","phosphatase","phosphate","phosphide","phosphine","phosphor","phosphoresce","phosphorescence","phosphorescent","phosphoric","phosphorous","phosphorus","photo","photocell","photochemical","photochemistry","photocopier","photocopy","photoelectric","photoelectrically","photoelectronic","photoelectrons","photoengrave","photoengraver","photoengraving","photofinishing","photogenic","photogenically","photograph","photographer","photographic","photographically","photographs","photography","photojournalism","photojournalist","photoluminescence","photolysis","photolytic","photometer","photometric","photometrically","photometry","photomicrograph","photomicrography","photomultiplier","photon","photorealism","photos","photosensitive","photoshop","photosphere","photostat","photostatic","photostatted","photostatting","photosyntheses","photosynthesis","photosynthesize","photosynthetic","phototypesetter","phototypesetting","php","phpexcel","phpinfo","phpmailer","phpmyadmin","phpstorm","phpunit","phrasal","phrase","phrasebook","phrasemaking","phraseology","phrases","phrasing","phrenological","phrenologist","phrenology","phtml","phyla","phylactery","phylae","phylis","phyllida","phyllis","phyllys","phylogeny","phylum","phylys","phys","physic","physical","physicality","physically","physician","physicist","physicked","physicking","physics","physicsbody","physiochemical","physiognomy","physiography","physiologic","physiological","physiologist","physiology","physiotherapist","physiotherapy","physique","phytoplankton","pi","pia","piaf","piaget","pianism","pianissimo","pianist","pianistic","piano","pianoforte","pianola","piaster","piata","piazza","pibroch","pibrochs","pic","pica","picador","picaresque","picasso","picayune","piccadilly","piccalilli","piccolo","pick","pickaback","pickax","pickaxe","picked","picker","pickerel","pickering","pickerview","picket","picketer","pickett","pickford","picking","pickle","pickman","pickoff","pickpocket","picks","pickup","pickwick","picky","picnic","picnicked","picnicker","picnicking","picofarad","picojoule","picoseconds","picot","pics","pict","pictograph","pictographs","pictorial","pictorialness","picture","picturebox","pictures","picturesque","picturesqueness","pid","piddle","piddly","pidgin","pids","pie","piebald","piece","piecemeal","piecer","pieces","piecewise","piecework","pieceworker","piechart","piedmont","pieing","pier","pierce","piercer","piercing","pierette","pierre","pierrette","pierrot","pierson","pieter","pietra","pietrek","pietro","piety","piezoelectric","piezoelectricity","piffle","pig","pigeon","pigeonhole","pigged","piggery","pigging","piggish","piggishness","piggy","piggyback","pigheaded","pigheadedness","piglet","pigment","pigmentation","pigmy","pigpen","pigroot","pigskin","pigsty","pigswill","pigtail","pike","piker","pikestaff","pil","pilaf","pilaster","pilate","pilau","pilchard","pilcomayo","pile","pileup","pilfer","pilferage","pilferer","pilgrim","pilgrimage","piling","pill","pillage","pillar","pillbox","pillion","pillory","pillow","pillowcase","pillowslip","pills","pillsbury","pilot","pilothouse","piloting","pimento","pimiento","pimp","pimpernel","pimple","pimplike","pimply","pin","pinafore","pinatubo","pinball","pincas","pincer","pinch","pinchas","pincher","pincus","pincushion","pindar","pine","pineapple","pined","pinehurst","pines","pinfeather","ping","pinhead","pinheaded","pinhole","pining","pinion","pink","pinkerton","pinkeye","pinkie","pinkish","pinkness","pinko","pinky","pinnacle","pinnate","pinned","pinning","pinocchio","pinochet","pinochle","pinpoint","pinprick","pins","pinsetter","pinsky","pinstripe","pint","pintail","pinter","pinterest","pinto","pinup","pinvoke","pinwheel","piny","pinyin","pion","pioneer","piotr","pious","piousness","pip","pipe","pipeline","pipelines","piper","pipermail","pipes","pipestone","pipet","pipette","pipework","piping","pipit","pippa","pipped","pippin","pipping","pippo","pippy","pipsqueak","piquancy","piquant","piquantness","pique","piracy","piraeus","pirandello","piranha","pirate","piratical","pirogi","pirogies","pirouette","pis","pisa","piscatorial","pisces","pisistratus","pismire","piss","pissaro","pistachio","piste","pistil","pistillate","pistol","pistole","pistoleers","piston","pit","pita","pitapat","pitapatted","pitapatting","pitcairn","pitch","pitchblende","pitcher","pitchfork","pitching","pitchman","pitchmen","pitchstone","piteous","piteousness","pitfall","pitfalls","pith","pithily","pithiness","piths","pithy","pitiable","pitiableness","pitiably","pitier","pitiful","pitifuller","pitifullest","pitifulness","pitiless","pitilessness","pitman","pitney","piton","pitt","pittance","pitted","pitting","pittman","pittsburgh","pittsfield","pittston","pituitary","pity","pitying","pius","pivot","pivotal","pivoting","pivottable","pix","pixel","pixelformat","pixels","pixie","pixiness","pixmap","pizarro","pizazz","pizza","pizzeria","pizzicati","pizzicato","pj","pk","pkcs","pkey","pkg","pkgs","pkt","pkwy","pl","placard","placate","placatory","place","placeable","placebo","placed","placehold","placeholder","placeholders","placekick","placeless","placemark","placement","placenta","placental","placer","placerat","places","placid","placidity","placidness","placing","placket","plagiarism","plagiarist","plagiarize","plagiary","plague","plagued","plaguer","plaice","plaid","plain","plainclothes","plainclothesman","plainclothesmen","plainfield","plainness","plainsman","plainsmen","plainsocketimpl","plainsong","plainspoken","plaint","plaintext","plaintiff","plaintive","plaintiveness","plainview","plait","plaiting","plan","planar","planarity","planck","plane","planeload","planer","planes","planet","planetarium","planetary","planetesimal","planetoid","planets","plangency","plangent","plank","planking","plankton","planned","planner","planning","plano","planoconcave","planoconvex","plans","plant","plantagenet","plantain","plantar","plantation","planter","planting","plantlike","plants","plaque","plash","plasm","plasma","plasmid","plaster","plasterboard","plasterer","plastering","plasterwork","plastic","plastically","plasticine","plasticity","plasticize","plat","plate","plateau","plateful","platelet","platen","plater","platform","platforms","plath","plating","platinize","platinum","platitude","platitudinous","plato","platonic","platonism","platonist","platoon","platte","platted","platter","platteville","platting","platy","platypus","platys","plaudit","plausibility","plausible","plausibly","plautus","play","playability","playable","playact","playacting","playback","playbill","playbook","playboy","played","player","playerid","playername","players","playfellow","playframework","playful","playfulness","playgirl","playgoer","playground","playgroup","playhouse","playing","playlist","playlists","playmate","playoff","playpen","playroom","plays","playsound","playtex","plaything","playtime","playwright","playwriting","plaza","plea","plead","pleader","pleading","pleas","pleasant","pleasanter","pleasantest","pleasantness","pleasantry","please","pleased","pleaser","pleases","pleasing","pleasingness","pleasurable","pleasurableness","pleasurably","pleasure","pleasureful","pleasures","pleat","pleater","plebe","plebeian","plebiscite","plectra","plectrum","pledge","pledger","pleiads","pleistocene","plenary","plenipotentiary","plenitude","plenteous","plenteousness","plentiful","plentifulness","plenty","plenum","pleonasm","plethora","pleura","pleurae","pleural","pleurisy","plexiglas","plexus","pliability","pliable","pliableness","pliancy","pliant","pliantness","plication","plier","plight","plimsolls","plink","plinker","plinth","plinths","pliny","pliocene","plist","plnkr","plo","plod","plodded","plodder","plodding","plone","plop","plopped","plopping","plosive","plot","plotly","plots","plotted","plotter","plotting","plover","plow","plowed","plower","plowman","plowmen","plowshare","ploy","plpgsql","pls","plt","pluck","plucker","pluckily","pluckiness","plucky","plug","pluggable","plugged","plugging","plughole","plugin","plugins","plum","plumage","plumb","plumbago","plumbed","plumber","plumbing","plume","plummer","plummest","plummet","plummy","plump","plumper","plumpness","plumy","plunder","plunge","plunger","plunk","plunker","pluperfect","plural","pluralism","pluralist","pluralistic","plurality","pluralization","pluralize","pluralizer","plus","plush","plushness","plushy","plussed","plussing","plutarch","pluto","plutocracy","plutocrat","plutocratic","plutonium","pluvial","ply","plymouth","plyr","plywood","plz","pm","pmd","pms","pn","pname","pneumatic","pneumatically","pneumatics","pneumonia","png","po","poach","poacher","poc","pocahontas","pock","pocket","pocketbook","pocketful","pocketing","pocketknife","pocketknives","pockmark","poco","pocono","pocoo","pod","podcast","podded","podding","podge","podgorica","podiatrist","podiatry","podium","pods","podunk","poe","poem","poesy","poet","poetaster","poetess","poetic","poetical","poetically","poeticalness","poetics","poetry","pogo","pogrom","poi","poignancy","poignant","poincar","poinciana","poindexter","poinsettia","point","pointblank","pointed","pointedness","pointer","pointers","pointf","pointillism","pointillist","pointing","pointless","pointlessness","points","pointy","pois","poise","poison","poisoner","poisoning","poisonous","poisson","pojo","poke","pokemon","poker","pokerface","poky","pol","poland","polanski","polar","polarimeter","polarimetry","polaris","polariscope","polarity","polarization","polarize","polarized","polarizes","polarizing","polarogram","polarograph","polarography","polaroid","pole","polecat","polemic","polemical","polemicist","polemics","poler","polestar","poleward","police","policeman","policemen","policewoman","policewomen","policies","policy","policyholder","policymaker","policymaking","polio","poliomyelitides","poliomyelitis","polis","polish","polished","polisher","politburo","polite","politeness","politesse","politic","political","politically","politician","politicians","politicization","politicize","politicked","politicking","politico","politics","polity","polk","polka","poll","pollack","pollard","polled","pollen","pollinate","pollination","pollinator","polling","polliwog","pollock","polls","pollster","pollutant","pollute","polluted","polluter","pollution","pollux","polly","pollyanna","pollywog","polo","polonaise","polonium","poltergeist","poltroon","poly","polyandrous","polyandry","polyatomic","polybutene","polycarbonate","polychemicals","polyclinic","polycrystalline","polyelectrolytes","polyester","polyether","polyethylene","polyfill","polyfills","polygamist","polygamous","polygamy","polyglot","polygon","polygonal","polygons","polygraph","polygraphs","polygynous","polyhedral","polyhedron","polyhymnia","polyisobutylene","polyisocyanates","polyline","polymath","polymaths","polymer","polymerase","polymeric","polymerization","polymerize","polymorph","polymorphic","polymorphism","polymyositis","polynesia","polynesian","polynomial","polyp","polyphemus","polyphonic","polyphony","polyphosphate","polypropylene","polystyrene","polysyllabic","polysyllable","polytechnic","polytheism","polytheist","polytheistic","polythene","polytonal","polytopes","polyunsaturated","polyurethane","polyvinyl","pom","pomade","pomander","pomegranate","pomerania","pomeranian","pommel","pomona","pomp","pompadour","pompano","pompeian","pompeii","pompey","pompom","pompon","pomposity","pompous","pompousness","ponce","ponchartrain","poncho","pond","ponder","ponderer","ponderous","ponderousness","pone","pong","pongee","poniard","pons","pontchartrain","pontiac","pontianak","pontiff","pontifical","pontificate","pontoon","pony","ponytail","pooch","poodle","poof","pooh","poohs","pool","poole","pooling","poolroom","pools","poolside","poona","poop","poor","poorboy","poorhouse","poorly","poorness","pop","popcorn","pope","popek","popen","popeye","popgun","popinjay","poplar","poplin","popocatepetl","popover","poppa","popped","popper","poppet","popping","poppins","poppy","poppycock","poppyseed","pops","popsicle","populace","popular","popularism","popularity","popularization","popularize","popularized","popularizer","popularizes","popularizing","populate","populated","populates","populating","population","populism","populist","populous","populousness","popup","popupmenu","popups","popupwindow","por","porcelain","porch","porcine","porcupine","pore","porfirio","porgy","poring","pork","porker","porky","porn","porno","pornographer","pornographic","pornographically","pornography","porosity","porous","porousness","porphyritic","porphyry","porpoise","porridge","porrima","porringer","porsche","port","porta","portability","portable","portables","portably","portage","portaged","portaging","portal","portamento","portcullis","porte","ported","portend","portent","portentous","portentousness","porter","porterage","porterhouse","portfolio","porthole","portia","portico","porticoes","portie","porting","portion","portions","portire","portland","portlet","portliness","portly","portmanteau","portrait","portraitist","portraiture","portray","portrayal","portrayer","ports","portsmouth","porttitor","portugal","portuguese","portulaca","porty","pos","pose","posed","poseidon","poser","poses","poseur","posh","posing","posit","positifs","position","positionable","positional","positioned","positioning","positions","positive","positiveness","positives","positivism","positivist","positivity","positron","posix","posixct","posner","poss","posse","possess","possessed","possession","possessional","possessive","possessiveness","possessor","possibilities","possibility","possible","possibly","possum","post","postage","postal","postalcode","postback","postbag","postbox","postcard","postcode","postcondition","postconsonantal","postconstruct","postcss","postdata","postdate","postdelayed","postdoctoral","posted","poster","posterior","posteriori","posterity","posters","postfields","postfix","postgis","postgraduate","postgres","postgresql","posthaste","posthumous","posthumousness","posthypnotic","postid","postilion","postimg","postindustrial","posting","postlude","postman","postmarital","postmark","postmaster","postmen","postmeridian","postmessage","postmeta","postmistress","postmodern","postmodernist","postmortem","postnasal","postnatal","postoperative","postorder","postpaid","postpartum","postpone","postponement","postpositions","postprandial","posts","postscript","postsecondary","postulate","postulation","postural","posture","posturer","postvocalic","postwar","posuere","posx","posy","pot","potability","potable","potableness","potage","potash","potassium","potato","potatoes","potbelly","potboil","potboiler","potemkin","potency","potent","potentate","potential","potentiality","potentially","potentiating","potentiometer","potful","pothead","pother","potherb","potholder","pothole","potholing","pothook","potion","potlatch","potluck","potomac","potpie","potpourri","potsdam","potsherd","potshot","pottage","pottawatomie","potted","potter","pottery","potting","potts","potty","pouch","poughkeepsie","poul","poulterer","poultice","poultry","pounce","pound","poundage","pounder","pounds","pour","pourer","poussin","pout","pouter","poverty","pow","powder","powderpuff","powdery","powell","power","powerboat","powered","powerful","powerfulness","powerhouse","powerless","powerlessness","powermanager","powermock","powerpoint","powers","powershell","powhatan","powwow","pox","poznan","pp","ppa","ppc","ppm","ppp","ppr","pprint","pps","ppt","pq","pqr","pr","practicability","practicable","practicably","practical","practicality","practically","practicalness","practice","practiced","practicer","practices","practicing","practicum","practise","practitioner","pradesh","prado","praesent","praetor","praetorian","pragma","pragmatic","pragmatical","pragmatics","pragmatism","pragmatist","prague","praia","prairie","praise","praiser","praiseworthiness","praiseworthy","praising","prakrit","praline","pram","prance","prancer","prancing","prank","prankster","praseodymium","pratchett","prate","prater","pratfall","prating","pratt","prattle","prattler","prattling","prattville","pravda","prawn","praxes","praxis","praxiteles","pray","prayer","prayerbook","prayerful","prayerfulness","prc","prcis","prd","pre","preach","preacher","preaching","preachment","preachy","preadolescence","preakness","preallocate","preallocation","preallocator","preamble","preamp","preamplifier","prearrange","prearrangement","preassign","preauthorize","prebendary","prebuilt","precambrian","precancel","precancerous","precarious","precariousness","precaution","precautionary","precede","preceded","precedence","precedent","precedented","preceding","precept","preceptive","preceptor","precess","precession","precinct","preciosity","precious","preciousness","precipice","precipitable","precipitant","precipitate","precipitateness","precipitation","precipitous","precipitousness","precise","precisely","preciseness","precision","preclude","preclusion","precocious","precociousness","precocity","precode","precognition","precognitive","precollege","precolonial","precompile","precompiled","precomputed","preconceive","preconception","precondition","preconscious","precook","precursor","precursory","precut","pred","predate","predation","predator","predatory","predecease","predecessor","predeclared","predecline","predefine","predefined","predefinition","predesignate","predestination","predestine","predetermination","predetermine","predeterminer","predicable","predicament","predicate","predicates","predicatewithformat","predication","predicator","predict","predictability","predictable","predictably","predicted","prediction","predictions","predictive","predictor","predigest","predilect","predilection","predispose","predisposition","predoctoral","predominance","predominant","predominate","predomination","preexisting","preemie","preeminence","preeminent","preemployment","preempt","preemption","preemptive","preemptor","preen","preener","preexist","preexistence","preexistent","pref","prefab","prefabbed","prefabbing","prefabricate","prefabrication","preface","prefacer","prefatory","prefect","prefecture","prefer","preferable","preferableness","preferably","preference","preferencemanager","preferences","preferential","preferment","preferred","preferring","prefetch","prefheight","prefiguration","prefigure","prefix","prefixed","prefixes","preflight","preform","prefs","prefwidth","preg","pregnancy","pregnant","preheat","prehensile","prehistoric","prehistorical","prehistory","preindustrial","preinitialize","preinterview","preisolated","prejudge","prejudger","prejudgment","prejudice","prejudiced","prejudicial","prekindergarten","prelacy","prelate","preliminarily","preliminary","preliterate","preload","preloaded","preloader","prelude","preluder","premarital","premarket","premature","prematureness","prematurity","premed","premedical","premeditate","premeditated","premeditation","premenstrual","premier","premiere","premiership","preminger","premise","premiss","premium","premix","premolar","premonition","premonitory","pren","prenatal","prent","prentice","prenticed","prenticing","prentiss","prenuptial","preoccupation","preoccupy","preoperative","preordain","prep","prepackage","prepaid","preparation","preparative","preparatory","prepare","prepared","preparedly","preparedness","preparedstatement","prepareforsegue","preparestatement","preparing","prepay","prepayment","prepend","prepender","prepends","preplanned","preponderance","preponderant","preponderate","preposition","prepositional","prepossess","prepossessing","prepossession","preposterous","preposterousness","prepped","prepping","preppy","preprepared","preprint","preprocess","preprocessed","preprocessing","preprocessor","preproduction","preprogrammed","prepubescence","prepubescent","prepublication","prepuce","prequel","preradiation","prerecord","preregister","preregistration","prerequisite","prerequisites","prerogative","pres","presage","presager","presbyopia","presbyter","presbyterian","presbyterianism","presbytery","preschool","prescience","prescient","prescott","prescribe","prescribed","prescriber","prescript","prescription","prescriptive","preselect","preselected","preselecteduris","presence","present","presentable","presentableness","presentably","presentation","presentational","presentations","presented","presenter","presentiment","presenting","presentment","presentmodalviewcontroller","presents","presentviewcontroller","preservation","preservationist","preservative","preserve","preserved","preserver","preserves","preserving","preset","presets","presetting","preshrank","preshrink","preshrunk","preside","presidency","president","presidential","presider","presidia","presidium","presley","presoaks","presort","press","pressed","presser","presses","pressing","pressingly","pressman","pressmen","pressure","pressurization","pressurize","pressurized","prestashop","prestidigitate","prestidigitation","prestidigitator","prestidigitatorial","prestige","prestigious","presto","preston","presumably","presume","presumer","presuming","presumption","presumptive","presumptuous","presumptuousness","presuppose","presupposition","pretax","preteen","pretend","pretended","pretender","pretending","pretense","pretension","pretentious","pretentiousness","preterit","preterite","preternatural","pretest","pretext","pretium","pretoria","pretreated","pretreatment","pretrial","prettier","prettify","prettily","prettiness","pretty","prettyprint","pretzel","prev","prevail","prevailing","prevalence","prevalent","prevaricate","prevaricator","prevent","preventable","preventably","preventative","preventdefault","prevented","preventer","preventing","prevention","preventive","preventiveness","prevents","preview","previous","previously","prevision","prevstate","prewar","prexes","prey","preyer","pri","priam","priapic","pribilof","price","priced","priceless","pricer","prices","pricey","pricier","priciest","pricing","prick","pricker","pricking","prickle","prickliness","prickly","pride","prideful","prier","priest","priestess","priesthood","priestley","priestliness","priestly","prig","prigged","prigging","priggish","priggishness","prim","primacy","primal","primarily","primary","primarykey","primarystage","primate","prime","primed","primefaces","primely","primeness","primer","primes","primeval","priming","primitive","primitiveness","primitives","primitivism","primmed","primmer","primmest","primming","primness","primogenitor","primogeniture","primordial","primp","primrose","prince","princedom","princeliness","princely","princess","princeton","principal","principality","principe","principia","principle","principled","principles","print","printable","printably","printed","printer","printers","printf","printing","println","printmake","printmaker","printmaking","printout","prints","printstacktrace","printstream","printwriter","prinz","prio","prior","prioress","priori","priorities","prioritize","priority","priory","pris","prisca","priscella","priscilla","prise","prised","prism","prismatic","prison","prisoner","prissie","prissily","prissiness","prissy","pristine","prithee","priv","privacy","private","privateer","privatekey","privateness","privation","privative","privatization","privatize","privet","privilege","privileged","privileges","privily","privy","prize","prized","prizefight","prizefighter","prizefighting","prizewinner","prizewinning","prj","prntscr","pro","proactive","prob","probabilist","probabilistic","probabilistically","probabilities","probability","probable","probably","probate","probated","probates","probating","probation","probational","probationary","probationer","probative","probe","prober","probity","problem","problematic","problematical","problems","proboscis","proc","procaine","procedural","procedure","procedures","proceed","proceeder","proceeding","proceeds","process","processbuilder","processdata","processed","processes","processid","processing","procession","processional","processname","processor","processors","processrequest","processstartinfo","proclamation","proclivity","proconsular","procrastinate","procrastination","procrastinator","procreational","procreatory","procrustean","procrustes","procs","proctor","proctorial","procurable","procure","procurement","procyon","prod","prodded","prodding","prodid","prodigal","prodigality","prodigious","prodigiousness","prodigy","produce","produced","producer","producers","produces","producible","producing","product","productcode","productid","production","productive","productively","productiveness","productivities","productivity","productize","productlist","productname","products","producttype","prof","profanation","profane","profaneness","profanity","professed","profession","professional","professionalism","professionalize","professionals","professor","professorial","professors","professorship","proffer","proficiency","proficient","profile","profiler","profiles","profiling","profit","profitability","profitable","profitableness","profitably","profiteer","profiterole","profitless","profits","profligacy","profligate","proforma","profound","profoundity","profoundness","profundity","profuse","profuseness","prog","progenitor","progeny","progesterone","progid","prognathous","prognoses","prognosis","prognostic","prognosticate","prognostication","prognosticator","program","programatically","programdata","programed","programing","programm","programmability","programmable","programmatic","programmatically","programme","programmed","programmer","programmers","programming","programmings","programs","progress","progressbar","progressdialog","progression","progressive","progressiveness","progressivism","proguard","proguardfiles","prohibit","prohibited","prohibiter","prohibition","prohibitionist","prohibitive","prohibitiveness","prohibitory","proin","proj","project","projected","projectid","projectile","projection","projectionist","projections","projective","projectname","projector","projects","prokofieff","prokofiev","prolegomena","proletarian","proletarianization","proletarianized","proletariat","proliferate","proliferation","prolific","prolifically","prolix","prolixity","prolog","prologize","prologue","prologuize","prolong","prolongate","prolongation","prolonger","promenade","promenader","promethean","prometheus","promethium","prominence","prominent","promiscuity","promiscuous","promiscuousness","promise","promised","promises","promising","promissory","promo","promontory","promote","promoted","promoter","promotion","promotions","promotive","promotiveness","prompt","prompted","prompter","prompting","promptitude","promptness","prompts","promulgate","promulgation","promulgator","pron","prone","proneness","prong","pronghorn","pronominalization","pronominalize","pronounce","pronounceable","pronounced","pronouncedly","pronouncement","pronouncer","pronto","pronunciation","proof","proofed","proofer","proofing","proofread","proofreader","prop","propaganda","propagandist","propagandistic","propagandize","propagate","propagated","propagation","propagator","propel","propellant","propelled","propeller","propelling","propensity","proper","properly","properness","propertied","properties","property","propertychanged","propertychangedeventargs","propertychangedeventhandler","propertygroup","propertyinfo","propertyname","propertytype","propertyvalue","prophecy","prophesier","prophesy","prophet","prophetess","prophetic","prophetical","prophylactic","prophylaxes","prophylaxis","propinquity","propionate","propitiate","propitiatory","propitious","propitiousness","propname","proponent","proportion","proportional","proportionality","proportionate","proportioner","proportionment","proposal","proposals","propose","proposed","proposition","propped","propping","proprietary","proprietor","proprietorial","proprietorship","proprietress","propriety","proprioception","proprioceptive","props","proptypes","propulsion","propulsive","propylene","prorogation","prorogue","pros","prosaic","prosaically","proscenium","prosciutti","prosciutto","proscription","proscriptive","prose","prosecute","prosecution","prosecutor","proselyte","proselytism","proselytize","proser","proserpine","prosodic","prosody","prospect","prospection","prospective","prospectiveness","prospector","prospectus","prosper","prosperity","prosperous","prosperousness","prostate","prostheses","prosthesis","prosthetic","prosthetics","prostitute","prostitution","prostrate","prostration","prosy","prot","protactinium","protagonist","protagoras","protean","protease","protect","protected","protecting","protection","protectiondomain","protectionism","protectionist","protective","protectiveness","protector","protectorate","protein","proteolysis","proteolytic","proterozoic","protest","protestant","protestantism","protestation","protesting","proteus","protg","protges","proto","protobuf","protocol","protocols","protoplasm","protoplasmic","prototype","prototypes","prototypic","prototypical","protozoa","protozoan","protozoic","protozoon","protract","protractor","protrude","protrusile","protrusion","protrusive","protuberance","protuberant","proud","proudhon","proust","prov","provabilities","provability","provable","provableness","provably","prove","proved","proven","provenal","provenance","provencals","provence","provender","provenience","provenly","prover","proverb","proverbial","proverbs","proves","provide","provided","providence","provident","providential","provider","providername","providers","provides","providing","province","provincial","provincialism","proving","provision","provisional","provisioner","provisioning","proviso","provo","provocateur","provocative","provocativeness","provoke","provoked","provoking","provolone","provost","prow","prowess","prowl","prowler","proxies","proximal","proximate","proximateness","proximity","proxmire","proxy","prozac","prto","pru","prude","prudence","prudent","prudential","prudery","prudi","prudish","prudishness","prudy","prue","pruitt","prune","pruner","prurience","prurient","prussia","prussian","prussic","prut","pry","pryce","pryer","prying","ps","psalm","psalmist","psalms","psalter","psaltery","psd","psephologist","pseudo","pseudocode","pseudonym","pseudonymous","pseudopod","pseudoscience","pshaw","psi","psittacoses","psittacosis","psoriases","psoriasis","psql","psr","psst","pst","pstmt","psych","psyche","psychedelic","psychedelically","psychiatric","psychiatrist","psychiatry","psychic","psychical","psycho","psychoacoustic","psychoacoustics","psychoactive","psychoanalysis","psychoanalyst","psychoanalytic","psychoanalytical","psychoanalyze","psychobabble","psychobiology","psychocultural","psychodrama","psychogenic","psychokinesis","psycholinguistic","psycholinguistics","psycholinguists","psychological","psychologist","psychology","psychometric","psychometrics","psychometry","psychoneuroses","psychoneurosis","psychopath","psychopathic","psychopathology","psychopaths","psychopathy","psychophysic","psychophysical","psychophysics","psychophysiology","psychos","psychosis","psychosocial","psychosomatic","psychosomatics","psychotherapeutic","psychotherapist","psychotherapy","psychotic","psychotically","psychotropic","psychs","psycopg","pt","pta","ptah","ptain","ptarmigan","pterodactyl","pthread","pthreads","pto","ptolemaic","ptolemaists","ptolemy","ptomaine","ptr","pts","pu","pub","pubbed","pubbing","pubdate","pubertal","puberty","pubes","pubescence","pubescent","pubic","pubis","public","publican","publication","publications","publicist","publicity","publicize","publicized","publickey","publickeytoken","publicly","publicness","publics","publish","publishable","published","publisher","publishers","publishes","publishing","pubnub","pubs","pubsub","puccini","puce","puck","pucker","puckett","puckish","puckishness","pudding","puddle","puddler","puddling","puddly","pudenda","pudendum","pudginess","pudgy","puebla","pueblo","puerile","puerility","puerperal","puers","puerto","puff","puffball","puffer","puffery","puffin","puffiness","puffy","pug","puget","pugged","pugging","pugh","pugilism","pugilist","pugilistic","pugnacious","pugnaciousness","pugnacity","puissant","puke","pukka","pulaski","pulchritude","pulchritudinous","pule","pulitzer","pull","pullback","pulled","pullet","pulley","pulling","pullman","pullout","pullover","pulls","pulmonary","pulp","pulpiness","pulpit","pulpwood","pulpy","pulsar","pulsate","pulsation","pulse","pulser","pulverable","pulverization","pulverize","pulverized","pulverizer","pulverizes","pulvinar","puma","pumice","pummel","pump","pumpernickel","pumping","pumpkin","pun","punch","punchbowl","punched","puncheon","puncher","punchline","punchy","punctilio","punctilious","punctiliousness","punctual","punctualities","punctuality","punctualness","punctuate","punctuation","punctuational","puncture","pundit","punditry","pungency","pungent","punic","puniness","punish","punished","punisher","punishment","punitive","punitiveness","punjab","punjabi","punk","punky","punned","punning","punster","punt","punter","puny","pup","pupa","pupae","pupal","pupate","pupil","pupillage","pupped","puppet","puppeteer","puppetry","pupping","puppy","puppyish","purblind","purcell","purchasable","purchase","purchased","purchaser","purchases","purchasing","purdah","purdahs","purdue","pure","purebred","puree","pureeing","purely","pureness","purgation","purgative","purgatorial","purgatory","purge","purger","purify","purim","purina","purine","purism","purist","puristic","puritan","puritanic","puritanical","puritanism","purity","purl","purlieu","purloin","purloiner","purple","purplish","purport","purported","purpose","purposeful","purposefulness","purposeless","purposelessness","purposes","purposive","purposiveness","purr","purring","purse","purser","pursuance","pursuant","pursue","pursuer","pursuit","purulence","purulent","purus","purvey","purveyance","purveyor","purview","pus","pusan","pusey","push","pushbutton","pushcart","pushchair","pushdown","pushed","pusher","pushes","pushily","pushiness","pushing","pushkin","pushover","pushstate","pushtu","pushviewcontroller","pushy","pusillanimity","pusillanimous","puss","pussy","pussycat","pussyfoot","pustular","pustule","put","putative","putchar","putextra","putin","putint","putnam","putnem","putout","putrefaction","putrefactive","putrefy","putrescence","putrescent","putrid","putridity","putridness","puts","putsch","putstring","putstrln","putt","putted","puttee","putter","putting","putty","puttying","puzzle","puzzled","puzzlement","puzzler","pv","pvc","pvt","pw","pwd","px","py","pyc","pycharm","pycharmprojects","pydata","pydev","pygame","pygmalion","pygmy","pyhrric","pyinstaller","pyknotic","pylab","pyle","pylon","pylori","pyloric","pylorus","pym","pymongo","pynchon","pyobject","pyodbc","pyongyang","pyorrhea","pyotr","pypi","pyplot","pypy","pyqt","pyramid","pyramidal","pyre","pyrenees","pyrex","pyridine","pyrimidine","pyrite","pyroelectric","pyroelectricity","pyrolysis","pyrolyze","pyromania","pyromaniac","pyrometer","pyrometry","pyrophosphate","pyrotechnic","pyrotechnical","pyrotechnics","pyroxene","pyroxenite","pyrrhic","pyside","pyspark","pytest","pythagoras","pythagorean","pythias","python","pythonic","pythonpath","pytorch","pyx","q","qa","qaddafi","qantas","qapplication","qatar","qb","qc","qdebug","qed","qemu","qi","qid","qimage","qingdao","qiqihar","ql","qlabel","qlineedit","qlist","qm","qmainwindow","qmake","qml","qmodelindex","qn","qname","qobject","qom","qos","qp","qpushbutton","qq","qr","qrcode","qry","qs","qsa","qsort","qstring","qt","qtcore","qtgui","qthread","qtquick","qtwidgets","qty","qu","qua","quaalude","quack","quackery","quackish","quad","quadded","quadding","quadrangle","quadrangular","quadrant","quadraphonic","quadrapole","quadratic","quadratical","quadrature","quadrennial","quadrennium","quadric","quadriceps","quadrilateral","quadrille","quadrillion","quadripartite","quadriplegia","quadriplegic","quadrivia","quadrivium","quadruped","quadrupedal","quadruple","quadruplet","quadruplicate","quadruply","quadrupole","quadword","quaff","quaffer","quagmire","quahog","quail","quaint","quaintness","quake","quaker","quakeress","quakerism","quaky","qualification","qualified","qualifier","qualifiers","qualify","qualitative","quality","qualm","qualmish","quam","quandary","quangos","quanta","quantico","quantifiable","quantified","quantifier","quantify","quantile","quantitative","quantitativeness","quantities","quantity","quantization","quantize","quantizer","quantum","quarantine","quark","quarrel","quarreler","quarrellings","quarrelsome","quarrelsomeness","quarrier","quarry","quarryman","quarrymen","quart","quarter","quarterback","quarterdeck","quarterer","quarterfinal","quartering","quarterly","quartermaster","quarters","quarterstaff","quarterstaves","quartet","quartic","quartile","quarto","quartz","quartzcore","quartzite","quasar","quash","quasi","quasilinear","quasimodo","quaternary","quaternion","quatrain","quaver","quavering","quavery","quay","quayle","quayside","que","queasily","queasiness","queasy","quebec","quechua","queen","queenie","queenly","queensland","queer","queerness","quell","queller","quench","quenchable","quenched","quencher","quenchless","quent","quentin","querida","queried","queries","quern","querulous","querulousness","query","querybuilder","querying","queryselector","queryselectorall","queryset","querystring","ques","quest","quested","quester","questing","question","questionable","questionableness","questionably","questioned","questioner","questionid","questioning","questionnaire","questions","quests","quetzalcoatl","queue","queued","queuer","queues","queuing","quezon","qui","quibble","quibbler","quiche","quick","quickbooks","quicken","quicker","quickest","quickie","quicklime","quickly","quickness","quicksand","quicksilver","quicksort","quickstart","quickstep","quid","quiesce","quiescence","quiescent","quiet","quieted","quieten","quieter","quieting","quietly","quietness","quiets","quietude","quietus","quill","quillan","quilt","quilter","quilting","quince","quincentenary","quincey","quincy","quinine","quinlan","quinn","quinquennial","quinsy","quint","quinta","quintana","quintessence","quintessential","quintet","quintic","quintile","quintilian","quintilla","quintillion","quintillionth","quintin","quintina","quinton","quintuple","quintuplet","quintus","quip","quipped","quipper","quipping","quipster","quire","quired","quires","quirinal","quiring","quirk","quirkiness","quirks","quirksmode","quirky","quirt","quis","quisling","quisque","quit","quitclaim","quite","quito","quittance","quitter","quitting","quiver","quivering","quivery","quixote","quixotic","quixotically","quixotism","quiz","quizzed","quizzer","quizzes","quizzical","quizzing","quo","quoin","quoit","quondam","quonset","quora","quorate","quorum","quot","quota","quotability","quotation","quote","quoted","quotename","quoter","quotes","quotidian","quotient","quoting","qux","qvariant","qvboxlayout","qw","qwerty","qwertys","qwidget","qx","r","ra","rab","rabat","rabbet","rabbi","rabbinate","rabbinic","rabbinical","rabbit","rabbiter","rabbitmq","rabble","rabbler","rabelais","rabelaisian","rabi","rabid","rabidness","rabies","rabin","rabis","raccoon","race","racecourse","racegoers","racehorse","raceme","racer","races","racetrack","raceway","rachael","rachel","rachele","rachelle","rachmaninoff","racial","racialism","racialist","racily","racine","raciness","racism","racist","rack","racket","racketeer","rackety","rackspace","raconteur","racoon","racquet","racquetball","racy","rad","radar","radarscope","radcliffe","radded","radder","raddest","raddie","radding","raddy","radial","radian","radiance","radians","radiant","radiate","radiation","radiative","radiator","radical","radicalism","radicalization","radicalize","radicalness","radices","radii","radio","radioactive","radioactivity","radioastronomical","radioastronomy","radiobutton","radiobuttons","radiocarbon","radiochemical","radiochemistry","radiogalaxy","radiogram","radiographer","radiographic","radiography","radiogroup","radioisotope","radiologic","radiological","radiologist","radiology","radioman","radiomen","radiometer","radiometric","radiometry","radionics","radionuclide","radiopasteurization","radiophone","radiophysics","radios","radioscopy","radiosonde","radiosterilization","radiosterilized","radiotelegraph","radiotelegraphs","radiotelegraphy","radiotelephone","radiotherapist","radiotherapy","radish","radium","radius","radix","radon","rads","rae","raeann","raf","rafa","rafael","rafaela","rafaelia","rafaelita","rafaellle","rafaello","rafe","raff","raffaello","raffarty","rafferty","raffia","raffish","raffishness","raffle","rafi","raft","rafter","rag","raga","ragamuffin","ragbag","rage","ragged","raggedness","raggedy","ragging","raging","raglan","ragnar","ragnark","ragout","ragtag","ragtime","ragweed","ragwort","rah","rahal","rahel","rahs","raid","raider","rail","railbird","railer","railhead","railing","raillery","railroad","railroader","railroading","rails","railscasts","railsinstaller","railties","railway","railwaymen","raiment","raimondo","raimund","raimundo","rain","raina","rainbow","raincloud","raincoat","raindrop","raine","rainer","rainfall","rainforest","rainier","rainless","rainmaker","rainmaking","rainproof","rainstorm","rainwater","rainy","raise","raised","raisepropertychanged","raiser","raises","raisin","raising","raj","rajah","rajahs","rajive","rake","rakel","raker","rakish","rakishness","raleigh","ralf","ralina","rally","ralph","ralston","ram","rama","ramada","ramadan","ramakrishna","raman","ramayana","ramble","rambler","rambling","rambo","rambunctious","rambunctiousness","ramekin","ramie","ramification","ramify","ramirez","ramiro","ramjet","rammed","ramming","ramo","ramon","ramona","ramonda","ramp","rampage","rampancy","rampant","rampart","ramrod","ramrodded","ramrodding","rams","ramsay","ramses","ramsey","ramshackle","ran","rana","rance","rancell","ranch","rancher","rancho","rancid","rancidity","rancidness","rancor","rancorous","rand","randa","randal","randall","randee","randell","randene","randi","randie","randiness","randint","randn","randolf","randolph","random","randomization","randomize","randomly","randomness","randomnumber","randrange","randy","ranee","rang","range","ranged","rangeland","ranger","ranges","ranginess","ranging","rangoon","rangy","rani","rania","ranice","ranier","ranique","rank","ranked","ranker","rankin","rankine","ranking","rankle","rankness","ranks","ranna","ransack","ransacker","ransell","ransom","ransomer","rant","ranter","ranting","raoul","rap","rapacious","rapaciousness","rapacity","rape","rapeseed","raphael","raphaela","rapid","rapidity","rapidly","rapidness","rapier","rapine","rapist","rapped","rappel","rappelled","rappelling","rapper","rapping","rapport","rapporteur","rapprochement","rapscallion","rapt","raptness","rapture","rapturous","rapturousness","rapunzel","raquel","raquela","rar","rare","rarebit","rarefaction","rarefy","rarely","rareness","rarity","rasalgethi","rasalhague","rascal","rash","rasher","rashness","rasia","rasla","rasmussen","rasp","raspberry","raspberrypi","rasper","rasping","rasputin","raspy","rastaban","rastafarian","raster","rastus","rat","ratchet","rate","rateable","rated","ratepayer","rater","rates","ratfor","rather","rathskeller","ratifier","ratify","rating","ratings","ratio","ratiocinate","ratiocination","ration","rational","rationale","rationalism","rationalist","rationalistic","rationality","rationalization","rationalize","rationalizer","rationalness","ratios","ratliff","ratlike","ratline","rattail","rattan","ratted","ratter","ratting","rattle","rattlebrain","rattlesnake","rattletrap","rattling","rattly","rattrap","ratty","raucous","raucousness","raul","raunchily","raunchiness","raunchy","ravage","ravager","rave","ravel","raveling","raven","ravenous","raver","ravi","ravid","ravine","ravioli","ravish","ravisher","ravishing","ravishment","raviv","raw","rawalpindi","rawboned","rawdata","rawhide","rawley","rawlings","rawlins","rawlinson","rawness","rawquery","rawson","rawvalue","rax","ray","rayburn","raychel","raye","rayleigh","raymond","raymondville","raymund","raymundo","rayna","raynard","raynell","rayner","raynor","rayon","rayshell","raytheon","raywenderlich","raze","razer","razor","razorback","razorblades","razz","razzmatazz","rb","rbenv","rbi","rbind","rbp","rbx","rc","rca","rcp","rcpp","rcpt","rcs","rcx","rd","rda","rdata","rdbms","rdd","rdf","rdfs","rdi","rdoc","rdp","rdr","rds","rdx","re","rea","reabbreviate","reach","reachability","reachable","reachably","reached","reacher","reaches","reaching","reacquisition","react","reactant","reactdom","reacted","reaction","reactionary","reactive","reactivex","reactivity","reactjs","reactor","read","readability","readable","readably","readalllines","readalltext","readdata","readdir","readdress","reade","reader","readers","readership","readfile","readfilesync","readied","readies","readily","readiness","readinesses","reading","readings","readint","readkey","readline","readlines","readme","readobject","readonly","readopt","readout","reads","readstring","readthedocs","readtoend","readvalue","readwrite","ready","readying","readystate","reagan","reagen","real","realise","realised","realism","realisms","realist","realistic","realistically","reality","realizability","realizable","realizableness","realizably","realization","realize","realized","realizer","realizes","realizing","realloc","really","realm","realness","realpath","realpolitik","realtime","realtor","realty","ream","reamer","reamonn","reanimate","reap","reaper","reappraise","rear","rearguard","rearmost","rearrange","rearward","reason","reasonable","reasonableness","reasonably","reasoner","reasoning","reasonless","reasons","reassess","reassign","reassuringly","reattach","reawakening","reba","rebase","rebate","rebbecca","rebe","rebeca","rebecca","rebecka","rebeka","rebekah","rebekkah","rebel","rebeller","rebellion","rebellious","rebelliousness","rebid","rebidding","rebind","rebirth","reboil","rebook","reboot","rebound","rebroadcast","rebuild","rebuilding","rebuilt","rebuke","rebuking","rebus","rebuttal","rebutting","rec","recalcitrance","recalcitrant","recalculate","recalibrate","recall","recant","recantation","recap","recappable","recapping","recaptcha","recast","recd","recede","receipt","receivable","receive","received","receiver","receivers","receivership","receives","receiving","recency","recension","recent","recently","recentness","receptacle","reception","receptionist","receptive","receptiveness","receptivity","receptor","recess","recessional","recessionary","recessive","recessiveness","rechargeable","recheck","recherch","recherches","recidivism","recidivist","recieve","recieved","recife","recipe","recipes","recipiency","recipient","recipients","reciprocal","reciprocate","reciprocation","reciprocity","recital","recitalist","recitative","recite","reciter","recked","recking","reckless","recklessness","reckon","reckoner","reckoning","reclaim","reclamation","recline","recliner","recluse","reclusion","recode","recognise","recognition","recognizability","recognizable","recognizably","recognize","recognized","recognizedly","recognizer","recognizes","recognizing","recognizingly","recoilless","recoinage","recolor","recombinant","recombine","recommend","recommendation","recommendations","recommended","recommends","recompense","recompile","recompute","reconcile","reconciled","reconciler","recondite","reconditeness","reconfigurability","reconfigure","reconnaissance","reconnect","reconnoiter","reconquer","reconsecrate","reconstitute","reconstruct","reconstructed","reconstruction","reconsult","recontact","recontaminate","recontribute","recook","recopy","record","recorded","recorder","recordid","recording","records","recordset","recourse","recover","recoverability","recoverable","recovery","recreant","recreate","recreated","recreating","recreational","recriminate","recrimination","recriminatory","recross","recrudesce","recrudescence","recrudescent","recruit","recruiter","recruitment","recrystallize","rect","recta","rectal","rectangle","rectangles","rectangular","rectifiable","rectification","rectifier","rectify","rectilinear","rectitude","recto","rector","rectory","rects","rectum","recumbent","recuperate","recuperation","recur","recurrence","recurrent","recurring","recurse","recursion","recursive","recursively","recusant","recuse","recv","recyclable","recycle","recycled","recycler","recyclerview","recycling","red","redact","redacted","redaction","redactor","redbird","redbreast","redbrick","redbud","redcap","redcoat","redcolor","redcurrant","redd","redden","redder","reddest","redding","reddish","reddit","redeclaration","redecorate","redeem","redeemable","redeemed","redeemer","redefine","redemption","redemptioner","redemptive","redeposit","redesign","redetermination","redford","redgrave","redhat","redhead","redhook","redial","redim","redirect","redirected","redirecting","redirection","redirects","redirectto","redirecttoaction","redis","redlining","redmine","redmond","redneck","redness","redo","redolence","redolent","redondo","redouble","redoubtably","redound","redraw","redshift","redskin","redstone","reduce","reduced","reducer","reducers","reduces","reducibility","reducible","reducibly","reducing","reduct","reduction","reductionism","reductionist","redundancy","redundant","redux","redwood","redye","redyeing","ree","reeba","reebok","reece","reecho","reed","reediness","reeding","reedville","reedy","reef","reefer","reek","reeker","reel","reeler","reena","reenforcement","reentrant","reese","reestimate","reeta","reeva","reeve","reeves","reexamine","ref","refactor","refactored","refactoring","refection","refectory","refer","referee","refereed","refereeing","reference","referenced","referencedcolumnname","referenceerror","references","referencing","referendum","referent","referential","referentiality","referer","referral","referred","referrer","referring","refers","reffed","reffing","refid","refile","refinance","refine","refined","refinement","refinish","refit","reflect","reflectance","reflected","reflection","reflectional","reflective","reflectivemethodinvocation","reflectiveness","reflectivity","reflector","reflects","reflex","reflexion","reflexive","reflexiveness","reflexivity","reflooring","refluent","reflux","refman","refocus","refold","reforestation","reforge","reform","reformat","reformatory","reformed","reformer","reformism","reformist","refract","refractive","refractiveness","refractometer","refractoriness","refractory","refrain","refresh","refreshed","refreshes","refreshing","refreshment","refrigerant","refrigerate","refrigerated","refrigeration","refrigerator","refrozen","refry","refs","refuge","refugee","refugio","refulgence","refulgent","refund","refunder","refurbish","refurbishment","refusal","refuse","refused","refuser","refuses","refutation","refute","refuter","reg","regal","regale","regalement","regalia","regan","regard","regarding","regardless","regards","regather","regatta","regen","regency","regeneracy","regenerate","regenerately","regenerateness","regex","regexes","regexoptions","regexp","regexr","reggae","reggi","reggie","reggy","regicide","regime","regimen","regiment","regimental","regimentation","regina","reginae","reginald","reginauld","regine","region","regional","regionalism","regions","regis","register","registered","registering","registerreceiver","registers","registertype","registrable","registrant","registrar","registration","registrations","registry","regnant","regor","regress","regression","regressive","regressiveness","regressors","regret","regretful","regretfulness","regrettable","regrettably","regretted","regretting","reground","regroup","regrow","regular","regularexpressions","regularity","regularization","regularize","regularly","regulate","regulated","regulation","regulations","regulative","regulator","regulatory","regulus","regurgitate","regurgitation","rehab","rehabbed","rehabbing","rehabilitate","rehabilitation","rehang","rehear","rehears","rehearsal","rehearse","rehearsed","rehearser","reheat","reheating","rehnquist","rehydrate","reich","reichenberg","reichstag","reichstags","reid","reidar","reider","reign","reiko","reilly","reimburse","reimbursement","rein","reina","reinald","reinaldo","reindeer","reindex","reine","reinforce","reinforced","reinforcement","reinforcer","reinhard","reinhardt","reinhold","reinold","reinstall","reinstalled","reinstalling","reinstate","reinstatement","reinsurance","reinterpret","reinvent","reinwald","reissue","reit","reiterative","reject","rejected","rejecter","rejecting","rejection","rejector","rejigger","rejoice","rejoicing","rejoinder","rejuvenate","rejuvenatory","rel","relapse","relate","related","relatedby","relatedly","relatedness","relater","relates","relating","relation","relational","relations","relationship","relationships","relative","relativelayout","relatively","relativeness","relativepath","relativesource","relativism","relativist","relativistic","relativistically","relativity","relator","relax","relaxant","relaxation","relaxed","relaxedness","relaxing","relay","relaycommand","relearn","releasable","release","released","releases","releasing","relent","relenting","relentless","relentlessness","relevance","relevancy","relevant","reliability","reliable","reliables","reliably","reliance","reliant","relic","relicense","relict","relief","relies","relieve","relieved","relievedly","reliever","religion","religionists","religiosity","religious","religiousness","relink","relinquish","relinquishment","reliquary","relish","relive","reload","reloaddata","reloaded","reloading","reloads","relocate","relu","reluctance","reluctant","rely","relying","rem","remade","remain","remainder","remained","remaining","remains","remake","remand","remap","remapping","remark","remarkable","remarkableness","remarkably","remarked","remarks","remarque","rematch","rembrandt","remeasure","remediable","remediableness","remedy","remember","remembered","rememberer","remembering","rememberme","remembrance","remembrancer","remind","reminded","reminder","reminders","reminds","remington","reminisce","reminiscence","reminiscent","remiss","remissness","remit","remittance","remitted","remitting","remnant","remodel","remolding","remonstrant","remonstrate","remonstration","remonstrative","remorse","remorseful","remorsefulness","remorseless","remorselessness","remote","remotely","remotemessage","remoteness","remotes","remotetestrunner","remoteviews","remotewebdriver","remoting","remoulds","removal","remove","removeall","removeat","removeattr","removechild","removeclass","removed","removeeventlistener","removefromsuperview","removeitem","removes","removing","remunerate","remunerated","remuneration","remunerative","remunerativeness","remus","remy","ren","rena","renado","renae","renaissance","renal","renaldo","rename","renamed","renaming","renard","renascence","renata","renate","renato","renaturation","renaud","renault","rend","render","rendered","renderer","renderers","rendering","renders","rendertransform","rendezvous","rendition","rene","renee","renegade","renege","reneger","renell","renelle","renew","renewal","renewer","renie","rennet","rennie","rennin","reno","renoir","renounce","renouncement","renouncer","renovate","renovation","renovator","renown","rensselaer","rent","rental","rentaller","renter","renumber","renumeration","renunciate","renunciation","renville","reoccupy","reopen","reorder","reordering","reorganized","rep","repack","repaint","repair","repairable","repairer","repairman","repairmen","repairs","repaper","reparable","reparation","repartee","reparteeing","repartition","repast","repatriate","repave","repeal","repealer","repeat","repeatability","repeatable","repeatably","repeated","repeatedly","repeater","repeating","repeats","repel","repelled","repellent","repelling","repent","repentance","repentant","repertoire","repertory","repetition","repetitions","repetitious","repetitiousness","repetitive","repetitiveness","repine","repiner","repl","replace","replaceall","replaced","replacement","replacements","replaces","replacewith","replacing","replay","replayed","replenish","replenishment","replete","repleteness","repletion","replica","replicas","replicate","replicated","replication","replicator","replied","replies","replug","reply","repo","reponse","repopulate","report","reported","reportelement","reporter","reporting","reportorial","reports","reportviewer","repos","repose","reposeful","repositories","repository","repr","reprehend","reprehenderit","reprehensibility","reprehensible","reprehensibleness","reprehensibly","reprehension","represent","representable","representation","representational","representations","representative","representativeness","representativity","represented","representing","represents","repress","repression","repressive","repressiveness","reprieve","reprimand","reprint","reprisal","reproach","reproacher","reproachful","reproachfulness","reproaching","reprobate","reprocess","reproduce","reproduced","reproducibility","reproducible","reproducibly","reproductive","reproof","reprove","reproving","reps","reptile","reptilian","republic","republican","republicanism","republish","repudiate","repudiation","repudiator","repugnance","repugnant","repulse","repulsion","repulsive","repulsiveness","reputability","reputably","reputation","repute","reputed","reputing","req","request","requestanimationframe","requestbody","requestcode","requestcontext","requestdata","requested","requestfocus","requesthandler","requestid","requesting","requestlocationupdates","requestmapping","requestmappinghandleradapter","requestmethod","requestoptions","requestparam","requestpermissions","requestqueue","requests","requesturl","requestwithurl","requiem","require","required","requiredfieldvalidator","requirejs","requirement","requirements","requires","requiring","requisite","requisiteness","requisition","requisitioner","requital","requite","requited","requiter","reread","rerecord","rerouteing","rerun","rerunning","res","resample","rescale","rescind","rescission","rescue","reseal","research","researched","researchers","researching","reselect","resemblant","resemble","resend","resent","resentful","resentfulness","resentment","reserpine","reservation","reservations","reserve","reserved","reservedness","reservednesses","reservist","reservoir","reset","resets","resetting","resettle","reshape","resharper","reshipping","reshow","reshuffle","resid","reside","residence","residency","resident","residential","resider","resides","residua","residual","residuary","residue","residuum","resignation","resigned","resignfirstresponder","resilience","resiliency","resilient","resin","resinlike","resinous","resiny","resist","resistance","resistant","resistantly","resistants","resisted","resistible","resistibly","resisting","resistive","resistiveness","resistivity","resistless","resistor","resizable","resize","resized","resizes","resizing","resold","resole","resoluble","resolute","resoluteness","resolution","resolutions","resolvability","resolvable","resolve","resolved","resolvent","resolver","resolvers","resolves","resolving","resonance","resonant","resonate","resonator","resorption","resort","resound","resource","resourcebundle","resourcedictionary","resourceful","resourcefulness","resourceid","resourcemanager","resourcename","resources","resourcetype","resp","respect","respectability","respectable","respectably","respected","respectful","respectfulness","respecting","respective","respectively","respectiveness","respects","respell","respiration","respirator","respiratory","resplendence","resplendent","respond","responded","respondent","responder","responding","responds","respondstoselector","response","responsebody","responsecode","responsedata","responseentity","responsejson","responseobject","responser","responses","responsestring","responsetext","responsetype","responsibilities","responsibility","responsible","responsibleness","responsibly","responsive","responsiveness","respray","resque","rest","restapi","restart","restarted","restarting","restarts","restate","restaurant","restaurants","restaurateur","restclient","restcontroller","resteasy","rested","rester","restful","restfuller","restfullest","restfulness","restitution","restive","restiveness","restkit","restless","restlessness","restlet","restorability","restoration","restorative","restore","restored","restorer","restoring","restrained","restraint","restrict","restricted","restricting","restriction","restrictions","restrictive","restrictively","restrictiveness","restrictives","restroom","restructurability","restructure","rests","resttemplate","restudy","restyle","resubstitute","result","resultado","resultant","resultarray","resultcode","resulted","resulting","resultlist","results","resultset","resume","resumes","resumption","resurface","resurgence","resurgent","resurrect","resurrection","resurvey","resuscitate","resuscitation","resuscitator","resx","ret","reta","retail","retailer","retain","retained","retainer","retaining","retains","retake","retaliate","retaliation","retaliatory","retard","retardant","retardation","retarder","retch","retention","retentive","retentiveness","retentivity","retest","retha","rethink","rethought","reticence","reticent","reticle","reticular","reticulate","reticulation","reticule","reticulum","retina","retinal","retinue","retire","retiredness","retiree","retirement","retiring","retort","retract","retractile","retrench","retrenchment","retributed","retribution","retributive","retries","retrieval","retrieve","retrieved","retriever","retrieves","retrieving","retrive","retro","retroactive","retrofire","retrofit","retrofitted","retrofitting","retroflection","retroflex","retroflexion","retrogradations","retrograde","retrogress","retrogression","retrogressive","retrorocket","retrospect","retrospection","retrospective","retrovirus","retrovision","retry","retrying","retsina","return","returnable","returned","returnee","returning","returns","returntransfer","returntype","returnurl","returnvalue","retval","retype","reub","reube","reuben","reunion","reusable","reuse","reused","reuseidentifier","reusing","reuters","reuther","reutilization","reuven","rev","reva","revalidate","revanchist","reveal","revealed","revealing","revealingly","reveals","reveille","revel","revelation","revelatory","revelry","revenge","revenger","revenue","revenuer","reverberant","reverberate","reverberation","revere","reverence","reverencer","reverend","reverent","reverential","reverie","revers","reversal","reverse","reversed","reverser","reversibility","reversible","reversibly","reversing","reversion","reversioner","revert","reverter","revertible","revet","revetment","review","reviewed","reviewer","reviewing","reviews","revile","revilement","reviler","revise","revised","revision","revisionary","revisionism","revisionist","revisions","revitalize","revival","revivalism","revivalist","revive","reviver","revivification","revivify","revkah","revlon","revocable","revoke","revolt","revolter","revolting","revolution","revolutionariness","revolutionary","revolutionist","revolutionize","revolutionizer","revolve","revolver","revue","revulsion","revved","revving","reward","rewarded","rewarding","rewards","rewarm","reweave","rewedding","reweigh","rewind","rewire","rework","rewrite","rewritebase","rewritecond","rewriteengine","rewriterule","rewrites","rewriting","rewritten","rex","rexes","rextester","rey","reyes","reykjavik","reyna","reynaldo","reynard","reynold","rezone","rf","rfc","rfd","rg","rgb","rgba","rh","rhapsodic","rhapsodical","rhapsodize","rhapsody","rhea","rheba","rhee","rheims","rheinholdt","rhel","rhenish","rhenium","rheology","rheostat","rhesus","rheta","rhetoric","rhetorical","rhetorician","rhett","rhetta","rheum","rheumatic","rheumatically","rheumatics","rheumatism","rheumatoid","rheumy","rhiamon","rhianna","rhiannon","rhianon","rhine","rhineland","rhinelander","rhinestone","rhinitides","rhinitis","rhino","rhinoceros","rhinotracheitis","rhizome","rho","rhoda","rhodes","rhodesia","rhodesian","rhodia","rhodie","rhodium","rhododendron","rhodolite","rhodonite","rhody","rhombic","rhomboid","rhomboidal","rhombus","rhona","rhoncus","rhonda","rhone","rhs","rhubarb","rhyme","rhymester","rhys","rhythm","rhythmic","rhythmical","rhythmics","ri","rial","riane","riannon","rianon","rib","ribald","ribaldry","ribbed","ribbentrop","ribber","ribbing","ribbon","ribcage","riboflavin","ribonucleic","ribosomal","ribosome","ric","rica","rican","ricard","ricardo","ricca","riccardo","rice","ricer","rich","richard","richardo","richardson","richart","richelieu","richen","richey","richfaces","richfield","richie","richland","richmond","richmound","richness","richter","richtextbox","richthofen","richy","rici","rick","rickard","rickenbacker","rickenbaugh","rickert","rickets","rickety","rickey","ricki","rickie","rickover","rickrack","rickshaw","ricky","rico","ricochet","ricoriki","ricotta","rid","riddance","ridden","ridding","riddle","ride","rider","riderless","ridership","ridge","ridgefield","ridgepole","ridgway","ridgy","ridicule","ridiculer","ridiculous","ridiculously","ridiculousness","riding","riemann","riesling","rife","riff","riffle","riffraff","rifle","rifled","rifleman","riflemen","rifler","rifling","rift","rig","riga","rigamarole","rigatoni","rigel","rigged","rigger","rigging","riggs","right","righteous","righteousness","righteousnesses","rightful","rightfulness","rightism","rightist","rightmost","rightness","rights","rightsize","rightward","rigid","rigidbody","rigidify","rigidity","rigidness","rigmarole","rigoberto","rigoletto","rigor","rigorous","rigorousness","rik","riki","rikki","rile","riley","rilke","rill","rim","rimbaud","rime","rimer","rimless","rimmed","rimming","rina","rinaldo","rind","rinehart","rinflate","ring","ringer","ringing","ringleader","ringlet","ringlike","ringling","ringmaster","ringo","rings","ringside","ringworm","rink","rinse","rio","riobard","riordan","riot","rioter","riotous","riotousness","rip","riparian","ripcord","ripe","ripen","ripened","ripeness","ripenesses","riper","ripest","ripley","ripoff","riposte","ripped","ripper","ripping","ripple","rippler","ripply","ripsaw","riptide","risa","risc","rise","risen","riser","risibility","risible","rising","risk","risker","riskily","riskiness","risks","risky","risotto","risqu","rissole","risus","rita","ritalin","ritchie","rite","ritter","ritual","ritualism","ritualistic","ritualistically","ritualized","ritz","ritzy","riv","riva","rival","rivaled","rivalee","rivalry","rive","river","rivera","riverbank","riverbed","riverboat","riverfront","riverine","rivers","riverside","riverview","rivet","riveter","riveting","rivi","riviera","rivkah","rivulet","rivy","riyadh","riyal","rj","rk","rl","rm","rmi","rms","rn","rna","rnd","rng","rnn","rnorm","ro","roach","road","roadbed","roadblock","roadhouse","roadie","roadkill","roadmap","roadrunner","roads","roadshow","roadside","roadsigns","roadster","roadsweepers","roadway","roadwork","roadworthy","roam","roaming","roan","roana","roanna","roanne","roanoke","roar","roarer","roaring","roarke","roast","roaster","rob","robb","robbed","robber","robbert","robbery","robbi","robbie","robbin","robbing","robby","robbyn","robe","robena","robenia","robers","roberson","robert","roberta","roberto","robertson","robeson","robespierre","robin","robina","robinet","robinett","robinetta","robinette","robinia","robinson","robinsonville","robles","robolectric","robot","robotic","robotism","robotize","roboto","robots","robson","robt","robust","robustness","roby","robyn","roc","rocco","roch","rocha","rochambeau","roche","rochell","rochella","rochelle","rochester","rochette","rock","rockabilly","rockabye","rockaway","rockbound","rockefeller","rocker","rocket","rocketry","rockey","rockfall","rockford","rockie","rockiness","rockland","rockne","rocks","rockville","rockwell","rocky","rococo","rod","roda","rodd","rodded","roddenberry","rodder","roddie","rodding","roddy","rode","rodent","rodeo","roderic","roderich","roderick","roderigo","rodge","rodger","rodi","rodie","rodin","rodina","rodney","rodolfo","rodolph","rodolphe","rodrick","rodrigo","rodriguez","rodrique","rodriquez","roe","roebuck","roentgen","rofl","rog","rogelio","roger","rogerio","roget","rogue","rogued","roguery","rogues","roguing","roguish","roguishness","roi","roil","roister","roisterer","rojas","roland","rolando","roldan","role","roleid","rolename","roles","roley","rolf","rolfe","roll","rolland","rollback","rolled","roller","rollerblade","rollerskating","rollick","rollicking","rollie","rollin","rolling","rollo","rollover","rolls","rollup","rolodex","rolph","rolvaag","rom","roma","romain","romaine","roman","romance","romancer","romanesque","romania","romanian","romano","romanov","romans","romansh","romantic","romantically","romanticism","romanticist","romanticize","romany","rome","romeo","romero","rommel","romney","romola","romona","romonda","romp","romper","romulus","romy","ron","rona","ronald","ronalda","ronda","rondo","ronica","ronna","ronni","ronnica","ronnie","ronny","ronstadt","rontgen","roo","roobbie","rood","roof","roofer","roofgarden","roofing","roofless","rooftop","rook","rookery","rookie","room","roomer","roomette","roomful","roomid","roominess","roommate","rooms","roomy","rooney","roosevelt","rooseveltian","roost","rooster","root","rootdir","rooted","rooter","rootless","rootlessness","rootlet","rootnode","rootobject","rootproject","roots","rootscope","rootstock","rootview","rootviewcontroller","rope","roper","roping","roquefort","roquemore","ror","rora","rori","rorie","rorke","rorschach","rory","ros","rosa","rosabel","rosabella","rosabelle","rosaleen","rosales","rosalia","rosalie","rosalind","rosalinda","rosalinde","rosaline","rosalyn","rosalynd","rosamond","rosamund","rosana","rosanna","rosanne","rosario","rosary","rosco","roscoe","rose","roseann","roseanna","roseanne","roseate","roseau","rosebud","rosebush","rosecrans","roseland","roselia","roselin","roseline","rosella","roselle","rosemaria","rosemarie","rosemary","rosemonde","rosen","rosenberg","rosenblum","rosendo","rosene","rosenthal","rosenzweig","rosetta","rosette","rosewater","rosewood","roshelle","rosicrucian","rosie","rosily","rosin","rosina","rosiness","rosita","roslyn","rosmunda","ross","rossetti","rossi","rossie","rossini","rossy","rostand","roster","rostov","rostra","rostrum","roswell","rosy","rot","rota","rotarian","rotary","rotate","rotated","rotates","rotatex","rotatey","rotating","rotation","rotational","rotations","rotative","rotator","rotatory","rotc","rote","rotgut","roth","rothschild","rotisserie","rotogravure","rotor","rototill","rotted","rotten","rottenness","rotter","rotterdam","rotting","rotund","rotunda","rotundity","rotundness","rou","rouault","rouge","rough","roughage","roughen","rougher","roughhouse","roughish","roughly","roughneck","roughness","roughs","roughshod","roulette","round","roundabout","rounded","roundedness","roundelay","roundels","rounder","roundhead","roundheaded","roundheadedness","roundhouse","rounding","roundish","roundness","roundoff","rounds","roundup","roundworm","rourke","rouse","rouser","rousseau","roust","roustabout","rout","route","routed","routedata","routedeventargs","routeparams","routeprovider","router","routerlink","routermodule","routers","routes","routine","routines","routing","routinize","rouvin","rove","rover","roving","row","rowan","rowboat","rowcount","rowdata","rowdatabound","rowdefinition","rowdefinitions","rowdily","rowdiness","rowdy","rowdyism","rowe","rowel","rowen","rowena","rower","rowheight","rowid","rowindex","rowland","rowley","rownames","rowney","rownum","rownumber","rows","rowspan","rowtype","rowview","roxana","roxane","roxanna","roxanne","roxi","roxie","roxine","roxy","roy","royal","royalist","royall","royalty","royce","roz","rozalie","rozalin","rozamond","rozanna","rozanne","roze","rozele","rozella","rozelle","rozina","rp","rpath","rpc","rpi","rpm","rps","rpt","rpy","rq","rr","rriocard","rs","rsa","rsfsr","rsi","rsp","rspec","rss","rssi","rst","rstrip","rstudio","rsv","rsvp","rsx","rsync","rt","rtc","rte","rtf","rtfm","rtl","rtmp","rtp","rtrim","rtsp","ru","rub","rubaiyat","rubato","rubbed","rubber","rubberize","rubberneck","rubbery","rubbing","rubbish","rubbishy","rubble","rubdown","rube","rubella","ruben","rubetta","rubi","rubia","rubicon","rubicund","rubidium","rubie","rubies","rubik","rubin","rubina","rubinstein","ruble","rubout","rubric","ruby","rubygems","rubyonrails","ruchbah","ruck","rucksack","ruckus","ruction","rudd","rudder","rudderless","ruddie","ruddiness","ruddy","rude","rudeness","rudie","rudiger","rudiment","rudimentariness","rudimentary","rudolf","rudolfo","rudolph","rudy","rudyard","rue","rueful","ruefulness","rufe","ruff","ruffian","ruffle","ruffled","ruffler","ruffly","rufus","rug","rugby","rugged","ruggedness","ruggiero","rugging","ruhr","ruin","ruination","ruiner","ruinous","ruinousness","ruiz","rule","rulebook","ruled","ruler","rules","ruling","rum","rumania","rumanian","rumba","rumble","rumbler","rumbustious","rumen","rumford","ruminant","ruminate","ruminative","rummage","rummager","rummel","rummer","rummest","rummy","rumor","rumored","rumorer","rumormonger","rump","rumpelstiltskin","rumple","rumply","rumpus","run","runabout","runaround","runat","runaway","rundown","rune","rung","runge","runic","runif","runlet","runnable","runnel","runner","runners","running","runny","runnymede","runoff","runonuithread","runs","runserver","runt","runtask","runtime","runtimeerror","runtimeexception","runtimes","runtiness","runty","runway","runwith","runworker","runyon","rupee","rupert","ruperta","ruperto","rupiah","rupiahs","ruppert","ruprecht","rupture","rural","rurality","rurik","ruse","rush","rushdie","rusher","rushes","rushing","rushmore","rushy","rusk","ruskin","russ","russel","russell","russet","russetting","russia","russian","russo","rust","rustbelt","rustic","rustically","rusticate","rustication","rusticity","rustie","rustin","rustiness","rustle","rustler","rustproof","rusty","rut","rutabaga","rutger","ruth","ruthann","ruthanne","ruthe","ruthenium","rutherford","rutherfordium","ruthi","ruthie","ruthless","ruthlessness","ruthy","rutland","rutledge","rutrum","rutted","rutter","ruttger","rutting","rutty","ruy","rv","rvalue","rvm","rvs","rw","rwanda","rwandan","rwy","rx","rxjava","rxjs","ry","ryan","ryann","rycca","rydberg","ryder","rye","ryley","ryon","ryukyu","ryun","rz","s","sa","saab","saar","saas","saba","sabbath","sabbaths","sabbatical","saber","sabered","sabik","sabin","sabina","sabine","sable","sabot","sabotage","saboteur","sabra","sabrina","sac","sacajawea","saccharides","saccharin","saccharine","sacco","sacerdotal","sacha","sachem","sachet","sachs","sack","sackcloth","sackcloths","sacker","sackful","sacking","sacra","sacral","sacrament","sacramental","sacramento","sacred","sacredness","sacrifice","sacrificer","sacrificial","sacrilege","sacrilegious","sacristan","sacristy","sacroiliac","sacrosanct","sacrosanctness","sacrum","sad","sada","sadat","saddam","sadden","sadder","saddest","saddle","saddlebag","saddler","sadducee","sade","sadella","sades","sadie","sadism","sadist","sadistic","sadistically","sadly","sadness","sadomasochism","sadomasochist","sadomasochistic","sadr","sadye","safari","safe","safeguard","safekeeping","safely","safeness","safer","safes","safest","safety","safflower","saffron","sag","saga","sagacious","sagaciousness","sagacity","sagan","sage","sagebrush","sagged","sagger","sagging","saggy","saginaw","sagittarius","sagittis","sago","saguaro","sahara","saharan","sahel","sahib","said","saidee","saids","saigon","sail","sailboard","sailboat","sailcloth","sailcloths","sailer","sailfish","sailing","sailor","sailplane","sails","saint","sainthood","saintlike","saintliness","saintly","saiph","saith","saiths","sakai","sake","saker","sakhalin","sakharov","saki","sal","salaam","salable","salacious","salaciousness","salacity","salad","saladin","salado","salaidh","salamander","salami","salaries","salary","salas","salazar","sale","saleability","saleem","salem","salerno","sales","salesclerk","salesforce","salesgirl","saleslady","salesman","salesmanship","salesmen","salespeople","salesperson","salesroom","saleswoman","saleswomen","salience","saliency","salient","salim","salina","saline","salinger","salinity","salisbury","salish","saliva","salivary","salivate","salivation","salk","salle","sallee","salli","sallie","sallow","sallowness","sallust","sally","sallyann","sallyanne","salmon","salmonella","salmonellae","saloma","salome","salomi","salomo","salomon","salomone","salon","salonika","saloon","saloonkeeper","salsa","salsify","salt","saltcellar","salted","salter","saltine","saltiness","saltness","salton","saltpeter","salts","saltshaker","saltwater","salty","salubrious","salubriousness","salubrity","salutariness","salutary","salutation","salutatory","salute","saluter","salvador","salvadoran","salvadorian","salvage","salvageable","salvager","salvation","salvatore","salve","salver","salvidor","salvo","salween","salyut","salz","sam","samaccountname","samantha","samara","samaria","samaritan","samarium","samarkand","samba","same","sameness","saml","sammie","sammy","samoa","samoan","samoset","samovar","samoyed","samp","sampan","sample","sampled","sampler","samples","sampling","sampson","samson","samsonite","samsung","samuel","samuele","samuelson","samurai","san","sana","sanatorium","sanborn","sance","sanchez","sancho","sanctification","sanctifier","sanctify","sanctimonious","sanctimoniousness","sanctimony","sanction","sanctioned","sanctity","sanctuary","sanctum","sand","sandal","sandalwood","sandbag","sandbagged","sandbagging","sandbank","sandbar","sandblast","sandblaster","sandbox","sandburg","sandcastle","sande","sander","sanderling","sanderson","sandhill","sandhog","sandi","sandia","sandie","sandiness","sandinista","sandlot","sandlotter","sandman","sandmen","sandor","sandoval","sandpaper","sandpile","sandpiper","sandpit","sandra","sandro","sandstone","sandstorm","sandusky","sandwich","sandy","sandye","sane","saned","saneness","sanes","sanford","sanforized","sang","sanger","sangfroid","sangria","sanguinary","sanguine","sanguined","sanguinely","sanguineness","sanguineous","sanguines","sanguining","sanhedrin","saning","sanitarian","sanitarium","sanitary","sanitate","sanitation","sanitize","sanitizer","sanity","sank","sankara","sans","sanserif","sanskrit","sanskritic","sanskritize","sanson","sansone","santa","santana","santayana","santeria","santiago","santo","sap","sapien","sapience","sapient","sapless","sapling","sapped","sapper","sapphira","sapphire","sappho","sappiness","sapping","sapply","sapporo","sappy","saprophyte","saprophytic","sapsucker","sapwood","sara","saraann","saracen","saragossa","sarah","sarajane","sarajevo","saran","sarape","sarasota","saratoga","saratov","sarawak","sarcasm","sarcastic","sarcastically","sarcoma","sarcophagi","sarcophagus","sardine","sardinia","sardonic","sardonically","saree","sarena","sarene","sarette","sargasso","sarge","sargent","sargon","sari","sarina","sarine","sarita","sarnoff","sarong","saroyan","sarsaparilla","sarto","sartorial","sartorius","sartre","sas","sascha","sase","sash","sasha","sashay","sashenka","sask","saskatchewan","saskatoon","sasl","sass","sassafras","sassoon","sassy","sat","satan","satanic","satanical","satanism","satanist","satchel","sate","sateen","satellite","satiable","satiate","satiation","satiety","satin","satinwood","satiny","satire","satiric","satirical","satirist","satirize","satirizes","satisfaction","satisfactorily","satisfactoriness","satisfactory","satisfiability","satisfiable","satisfied","satisfier","satisfies","satisfy","satisfying","satisfyingly","satori","satrap","saturate","saturated","saturater","saturates","saturation","saturday","saturn","saturnalia","saturnine","satyanarayanan","satyr","satyriases","satyriasis","satyric","sauce","saucepan","saucer","saucily","sauciness","saucy","saud","saudi","saudra","sauerkraut","saukville","saul","sault","sauna","sauncho","saunder","saunderson","saundra","saunter","saurian","sauropod","sausage","saussure","saut","sauternes","sauveur","savage","savageness","savagery","savanna","savannah","savant","save","saveas","savechanges","saved","savedata","savedinstancestate","savefig","savefile","saveloy","saver","saves","savina","saving","savings","savior","saviour","savonarola","savor","savored","savorer","savorier","savoriest","savoriness","savoring","savoringly","savory","savoy","savoyard","savvy","saw","sawbones","sawbuck","sawdust","sawer","sawfly","sawhorse","sawmill","sawtooth","sawyer","sawyere","sax","saxe","saxifrage","saxon","saxony","saxophone","saxophonist","saxton","say","sayer","sayest","sayhello","saying","sayre","says","sb","sba","sbin","sbt","sc","scab","scabbard","scabbed","scabbiness","scabbing","scabby","scabies","scabrous","scabrousness","scad","scaffold","scaffolding","scala","scalability","scalable","scalar","scalatest","scalawag","scald","scale","scaled","scalefactor","scaleless","scalene","scaler","scales","scaletype","scalex","scaley","scaliness","scaling","scallion","scallop","scalloper","scalloping","scalp","scalpel","scalper","scalping","scaly","scam","scammed","scamming","scamp","scamper","scampi","scan","scandal","scandalize","scandalized","scandalmonger","scandalous","scandalousness","scandinavia","scandinavian","scandium","scanf","scanned","scanner","scanning","scans","scansion","scant","scantest","scantily","scantiness","scantly","scantness","scanty","scape","scapegoat","scapegrace","scapula","scapulae","scapular","scar","scarab","scaramouch","scarborough","scarce","scarceness","scarcity","scare","scarecrow","scared","scaremonger","scaremongering","scarer","scarf","scarface","scarification","scarify","scarily","scariness","scarlatina","scarlatti","scarlet","scarlett","scarp","scarred","scarring","scarves","scary","scat","scathe","scathed","scathing","scatological","scatology","scatted","scatter","scatterbrain","scatterer","scattergun","scattering","scatting","scavenge","scavenger","sccs","sce","scelerisque","scenario","scenarios","scenarist","scene","scenery","scenes","scenic","scenically","scent","scented","scentless","scents","scepter","scepters","sceptically","sch","schaefer","schaeffer","schafer","schaffner","schantz","schapiro","scheat","sched","schedar","schedule","scheduled","scheduledthreadpoolexecutor","scheduler","schedulers","schedules","scheduling","scheherazade","scheherezade","schelling","schema","schemalocation","schemas","schemata","schematic","schematically","scheme","schemer","schemes","schemta","schenectady","scherzo","schick","schiller","schilling","schism","schismatic","schist","schizo","schizoid","schizomycetes","schizophrenia","schizophrenic","schizophrenically","schlemiel","schlep","schlepped","schlepping","schlesinger","schliemann","schlitz","schlock","schlocky","schloss","schmaltz","schmaltzy","schmidt","schmitt","schmo","schmoes","schmooze","schmuck","schnabel","schnapps","schnauzer","schneider","schnitzel","schnook","schnoz","schnozzle","schoenberg","schofield","scholar","scholarship","scholastic","scholastically","school","schoolbag","schoolbook","schoolboy","schoolchild","schoolchildren","schooldays","schooled","schoolfellow","schoolfriend","schoolgirl","schoolgirlish","schoolhouse","schooling","schoolmarm","schoolmarmish","schoolmaster","schoolmate","schoolmistress","schoolroom","schools","schoolteacher","schoolwork","schoolyard","schooner","schopenhauer","schottky","schrdinger","schrieffer","schroeder","schroedinger","schubert","schultz","schulz","schumacher","schuman","schumann","schuss","schussboomer","schuster","schuyler","schuylkill","schwa","schwab","schwartz","schwartzkopf","schwarzenegger","schweitzer","schweppes","schwinger","schwinn","sci","sciatic","sciatica","science","scientific","scientifically","scientist","scientists","scientology","scikit","scimitar","scintilla","scintillate","scintillation","scintillator","scion","scipio","scipy","scissor","scissors","scleroses","sclerosis","sclerotic","scm","scoff","scoffer","scofflaw","scold","scolder","scolioses","scoliosis","scollop","sconce","scone","scons","scoop","scooper","scoot","scooter","scope","scoped","scopes","scoping","scops","scorbutic","scorch","scorcher","scorching","score","scoreboard","scorecard","scored","scorekeeper","scoreless","scoreline","scores","scoring","scorn","scorner","scornful","scornfulness","scorpio","scorpion","scorpius","scorsese","scot","scotch","scotchgard","scotchman","scotchmen","scotchs","scotchwoman","scotchwomen","scotia","scotian","scotland","scotsman","scotsmen","scotswoman","scotswomen","scott","scotti","scottie","scottish","scottsdale","scotty","scoundrel","scour","scourer","scourge","scourger","scouring","scout","scouter","scouting","scoutmaster","scow","scowl","scowler","scp","scr","scrabble","scrabbler","scrag","scragged","scragging","scraggly","scraggy","scram","scramble","scrambler","scrammed","scramming","scranton","scrap","scrapbook","scrape","scraped","scraper","scrapheap","scraping","scrapped","scrapper","scrapping","scrappy","scrapy","scrapyard","scratch","scratched","scratcher","scratches","scratchily","scratchiness","scratchy","scrawl","scrawler","scrawly","scrawniness","scrawny","scream","screamer","screaming","scree","screech","screecher","screechy","screed","screen","screencast","screened","screenheight","screening","screenorientation","screenplay","screens","screenshot","screenshots","screensize","screenupdating","screenwidth","screenwriter","screw","screwball","screwdriver","screwed","screwer","screwiness","screwup","screwworm","screwy","scriabin","scribal","scribble","scribbler","scribe","scriber","scribner","scrim","scrimmage","scrimmager","scrimp","scrimshaw","scrip","scripps","script","scriptblock","scripted","scripting","scriptmanager","scriptreference","scripts","scriptural","scripture","scriptwriter","scriptwriting","scriven","scrivener","scrod","scrofula","scrofulous","scroll","scrollable","scrollbar","scrollbars","scrolled","scroller","scrollheight","scrolling","scrollleft","scrollpane","scrolls","scrollto","scrolltop","scrollview","scrollviewer","scrooge","scrota","scrotal","scrotum","scrounge","scroungy","scrub","scrubbed","scrubber","scrubbing","scrubby","scruff","scruffily","scruffiness","scruffy","scruggs","scrum","scrummage","scrumptious","scrunch","scrunchy","scruple","scrupulosity","scrupulous","scrupulousness","scrutable","scrutinize","scrutinized","scrutinizer","scrutinizing","scrutinizingly","scrutiny","scsi","scss","scuba","scud","scudded","scudding","scuff","scuffle","scull","sculler","scullery","sculley","scullion","sculpt","sculptor","sculptress","sculptural","sculpture","scum","scumbag","scummed","scumming","scummy","scupper","scurf","scurfy","scurrility","scurrilous","scurrilousness","scurry","scurvily","scurviness","scurvy","scutcheon","scuttle","scuttlebutt","scuzzy","scylla","scythe","scythia","sd","sda","sdate","sdcard","sdf","sdi","sdk","sdks","sdl","sdp","se","sea","seabed","seabird","seaboard","seaborg","seaborn","seaborne","seabrook","seacoast","seafare","seafarer","seafood","seafront","seagate","seagoing","seagram","seagull","seahorse","seal","sealant","sealed","sealer","seals","sealskin","seam","seamail","seaman","seamanship","seamer","seaminess","seamless","seamlessly","seamlessness","seams","seamstress","seamus","seamy","sean","seana","seaplane","seaport","seaquake","seaquarium","sear","search","searchable","searchbar","searchbox","searchcontroller","searched","searcher","searches","searchform","searching","searchlight","searchquery","searchresult","searchresults","searchstring","searchterm","searchtext","searchview","searing","sears","seascape","seashell","seashore","seasick","seasickness","seaside","season","seasonable","seasonableness","seasonably","seasonal","seasonality","seasoned","seasoner","seasoning","seat","seatbelt","seated","seater","seating","seato","seats","seattle","seawall","seaward","seawater","seaway","seaweed","seaworthiness","seaworthinesses","seaworthy","sebaceous","sebastian","sebastiano","sebastien","seborrhea","sec","secant","secede","secession","secessionist","seclude","secluded","secludedness","seclusion","seclusive","seconal","second","secondarily","secondary","seconder","secondhand","secondly","seconds","secondviewcontroller","secrecy","secret","secretarial","secretariat","secretary","secretaryship","secrete","secretion","secretive","secretiveness","secretkey","secretory","secrets","secs","sect","sectarian","sectarianism","sectary","section","sectional","sectionalism","sectionalized","sectioned","sectioning","sections","sector","sectoral","sectored","sectoring","sectors","sects","secular","secularism","secularist","secularity","secularization","secularize","secularized","secure","secured","securely","securerandom","securing","security","securityexception","secy","sed","sedan","sedate","sedateness","sedation","sedative","sedentary","seder","sedge","sedgwick","sedgy","sediment","sedimentary","sedimentation","sedition","seditious","seditiousness","seduce","seducer","seduction","seductive","seductiveness","seductress","sedulous","see","seebeck","seed","seedbed","seedcase","seeded","seeder","seediness","seeding","seedless","seedling","seedpod","seeds","seedy","seeing","seeings","seek","seekbar","seeker","seeking","seeley","seem","seemed","seeming","seemingly","seemliness","seemly","seems","seen","seep","seepage","seer","seersucker","sees","seesaw","seethe","seg","segfault","segment","segmental","segmentation","segmented","segments","segovia","segre","segregant","segregate","segregated","segregation","segregationist","segregative","segue","segueing","segundo","seidel","seigneur","seignior","seiko","seine","seiner","seinfeld","seismic","seismically","seismograph","seismographer","seismographic","seismographs","seismography","seismologic","seismological","seismologist","seismology","seismometer","seize","seizer","seizin","seizing","seizor","seizure","seka","sel","sela","selassie","selby","seldom","select","selectable","selectall","selectbox","selectcommand","selected","selecteddate","selectedimage","selectedindex","selectedindexchanged","selecteditem","selecteditems","selectedrow","selectedvalue","selecting","selectinput","selection","selectional","selectionchanged","selectionmode","selections","selectionstart","selectitem","selective","selectively","selectiveness","selectivity","selectlist","selectlistitem","selectman","selectmany","selectmen","selectness","selectnodes","selectonemenu","selector","selectors","selectric","selects","selectsinglenode","selena","selenate","selene","selenite","selenium","seleniumhq","selenographer","selenography","selestina","seleucid","seleucus","self","selfish","selfishness","selfless","selflessness","selfness","selfridge","selfsame","selfsameness","selia","selie","selig","selim","selina","selinda","seline","selinux","seljuk","selkirk","sell","sella","selle","seller","sellers","selling","sellout","sells","selma","seltzer","selvage","selves","selznick","sem","semantic","semantical","semantically","semanticist","semantics","semaphore","semarang","semblance","semen","semester","semi","semiannual","semiarid","semiautomated","semiautomatic","semicircle","semicircular","semicolon","semicolons","semiconductor","semiconscious","semidefinite","semidetached","semidrying","semifinal","semifinalist","semilogarithmic","semimonthly","seminal","seminar","seminarian","seminary","seminole","semiofficial","semiotic","semioticians","semiotics","semipermanent","semipermeable","semiprecious","semiprivate","semiprofessional","semipublic","semiquantitative","semiramis","semiretired","semisecret","semiskilled","semisolid","semistructured","semisweet","semite","semitic","semitone","semitrailer","semitrance","semitransparent","semitropical","semivowel","semiweekly","semiyearly","semolina","semper","sempiternal","sempstress","semtex","semver","sen","sena","senate","senator","senatorial","sencha","send","sendai","senddata","sendemail","sender","senderid","sendevent","sendfile","sendgrid","sending","sendkeys","sendmail","sendmessage","sendrequest","sends","sendto","seneca","senegal","senegalese","senescence","senescent","senile","senility","senior","seniority","senna","sennacherib","sennett","senor","senora","senorita","sens","sensate","sensately","sensation","sensational","sensationalism","sensationalist","sensationalize","sense","senseless","senselessness","sensibility","sensible","sensibleness","sensibly","sensitive","sensitiveness","sensitives","sensitivity","sensitization","sensitize","sensitized","sensitizers","sensor","sensormanager","sensors","sensory","sensual","sensualist","sensuality","sensuous","sensuousness","sensurround","sent","sentence","sentences","sentential","sententious","sentience","sentient","sentiment","sentimental","sentimentalism","sentimentalist","sentimentality","sentimentalization","sentimentalize","sentimentalizes","sentinel","sentry","seo","seora","seoul","sep","sepal","separability","separable","separableness","separably","separate","separated","separately","separateness","separates","separating","separation","separatism","separatist","separator","separators","seperate","seperated","sephardi","sephira","sepia","sepoy","sepses","sepsis","sept","septa","septate","september","septennial","septet","septic","septicemia","septicemic","septillion","septuagenarian","septuagint","septum","sepulcher","sepulchers","sepulchral","seq","seqnum","sequel","sequelize","sequence","sequenced","sequencer","sequences","sequent","sequential","sequentiality","sequentialize","sequentially","sequester","sequestrate","sequestration","sequin","sequitur","sequoia","sequoya","ser","sera","serafin","seraglio","serape","seraph","seraphic","seraphically","seraphim","seraphs","serb","serbia","serbian","serbo","sere","serena","serenade","serenader","serendipitous","serendipity","serene","sereneness","serengeti","serenity","serf","serfdom","serge","sergeant","sergei","sergent","sergio","serial","serializable","serialization","serialize","serialized","serializedname","serializeobject","serializer","serializers","serializing","serialnumber","serialport","serialversionuid","serie","series","serif","serigraph","serigraphs","serious","seriously","seriousness","sermon","sermonize","serological","serology","serons","serous","serpens","serpent","serpentine","serra","serrano","serrate","serration","serried","serum","serv","servant","serve","served","server","serverfault","serverless","servername","servers","serverside","serversocket","serves","service","serviceability","serviceable","serviceableness","servicebehaviors","serviced","servicehost","serviceid","serviceman","servicemen","servicemodel","servicename","serviceprovider","services","servicestack","servicetype","servicewoman","servicewomen","serviette","servile","servilely","servileness","serviles","servility","serving","servitor","servitude","servlet","servletcontainer","servletcontext","servletexception","servlethandler","servlets","servo","servomechanism","servomotor","ses","sesame","sesquicentennial","sess","sessile","session","sessionfactory","sessionid","sessionimpl","sessions","sessionstate","sessionstorage","set","setaccessible","setaction","setactive","setadapter","setarguments","setattr","setattribute","setback","setbackground","setbackgroundcolor","setbackgroundimage","setbackgroundresource","setborder","setbounds","setcancelable","setcapability","setcellvalue","setcenter","setchecked","setcolor","setcontent","setcontenttext","setcontenttype","setcontentview","setcookie","setdata","setdatasource","setdate","setdateformat","setdefault","setdefaultcloseoperation","setdelegate","setdescription","setdt","setduration","seteditable","setenabled","setentity","setenv","seterror","setfill","setflags","setfont","setforeground","setframe","setgeometry","seth","setheader","seticon","setid","setimage","setimagebitmap","setimageresource","setint","setinterval","setitem","setitems","setjavascriptenabled","setlasterror","setlayout","setlayoutmanager","setlayoutparams","setlength","setlevel","setlistadapter","setlocal","setlocale","setlocation","setlocationrelativeto","setmap","setmessage","setmodel","setname","setnegativebutton","setobject","setobjectname","seton","setonclicklistener","setonitemclicklistener","setontouchlistener","setopt","setosa","setpadding","setparameter","setpassword","setposition","setpositivebutton","setpreferredsize","setprogress","setproperty","setq","setrequestheader","setrequestmethod","setrequestproperty","setresult","sets","setscene","setscrew","setselected","setselection","setsize","setstate","setstatus","setstring","setstyle","setsupportactionbar","sett","settable","settag","settee","setter","setters","settext","settextcolor","settextsize","settime","settimeout","setting","settings","settitle","settle","settled","settlement","settler","settling","settype","settypeface","setup","setups","setuptools","setupui","seturl","setusername","setvalue","setvalues","setview","setvisibility","setvisible","setw","setwidth","setx","sety","seumas","seurat","seuss","sevastopol","seven","sevenfold","sevenpence","seventeen","seventeenths","sevenths","seventieths","seventy","sever","several","severalfold","severalty","severance","severe","severed","severeness","severing","severity","severn","severs","severus","seville","sew","sewage","seward","sewer","sewerage","sewing","sewn","sex","sexagenarian","sexily","sexiness","sexism","sexist","sexless","sexologist","sexology","sexpot","sextans","sextant","sextet","sextillion","sexton","sextuple","sextuplet","sexual","sexuality","sexualized","sexy","seychelles","seyfert","seymour","sf","sfml","sftp","sg","sgt","sh","sha","shabbily","shabbiness","shabby","shack","shackle","shackler","shackleton","shad","shade","shaded","shadeless","shader","shaders","shadily","shadiness","shading","shadow","shadowbox","shadower","shadowiness","shadows","shadowy","shady","shae","shafer","shaffer","shaft","shafting","shag","shagged","shagginess","shagging","shaggy","shah","shahs","shaina","shaine","shakable","shakably","shake","shakeable","shakedown","shaken","shakeout","shaker","shakespeare","shakespearean","shakespearian","shakeup","shakily","shakiness","shaking","shaky","shale","shall","shallot","shallow","shallowness","shalna","shalne","shalom","shalt","sham","shaman","shamanic","shamble","shambles","shame","shamefaced","shameful","shamefulness","shameless","shamelessness","shammed","shammer","shamming","shammy","shampoo","shampooer","shamrock","shamus","shan","shana","shanan","shanda","shandee","shandeigh","shandie","shandra","shandy","shane","shanghai","shanghaiing","shani","shanie","shank","shanna","shannah","shannan","shannen","shannon","shanon","shanta","shantee","shantis","shantung","shanty","shantytown","shape","shaped","shapeless","shapelessness","shapeliness","shapely","shaper","shapes","shapiro","shara","sharable","sharai","shard","shards","share","shareable","sharecrop","sharecropped","sharecropper","sharecropping","shared","sharedapplication","sharedinstance","sharedpreferences","shareholder","shareholding","sharepoint","sharer","shares","shareware","shari","sharia","sharing","sharity","shark","sharkskin","sharl","sharla","sharleen","sharlene","sharline","sharon","sharona","sharp","sharpe","sharpen","sharpened","sharpener","sharper","sharpie","sharpness","sharpshoot","sharpshooter","sharpshooting","sharpy","sharron","sharyl","shasta","shat","shatter","shattering","shatterproof","shaughn","shaula","shaun","shauna","shave","shaved","shaver","shavian","shaving","shavuot","shaw","shawano","shawl","shawn","shawna","shawnee","shay","shayla","shaylah","shaylyn","shaylynn","shayna","shayne","shcharansky","she","shea","sheaf","shear","shearer","sheath","sheathe","sheather","sheathing","sheaths","sheave","sheaves","sheba","shebang","shebeli","sheboygan","shed","shedding","shedir","sheds","sheela","sheelagh","sheelah","sheen","sheena","sheeny","sheep","sheepdog","sheepfold","sheepherder","sheepish","sheepishness","sheepskin","sheer","sheeree","sheerness","sheet","sheeting","sheetlike","sheetname","sheetrock","sheets","sheff","sheffie","sheffield","sheffielder","sheffy","sheik","sheikdom","sheikh","sheila","sheilah","shekel","shel","shela","shelagh","shelba","shelbi","shelby","shelden","sheldon","shelf","shelia","shell","shellac","shellacked","shellacking","shelled","shelley","shellfire","shellfish","shelli","shellie","shells","shelly","shelter","sheltered","shelterer","shelton","shelve","shelver","shelves","shelving","shem","shena","shenandoah","shenanigan","shenyang","sheol","shep","shepard","shepherd","shepherdess","sheppard","shepperd","sher","sheratan","sheraton","sherbet","sherd","sheree","sheri","sheridan","sherie","sheriff","sherill","sherilyn","sherline","sherlock","sherlocke","sherm","sherman","shermie","shermy","sherpa","sherri","sherrie","sherry","sherwin","sherwood","sherwynd","sherye","sheryl","shetland","shevardnadze","shew","shewn","shh","shi","shiatsu","shibboleth","shibboleths","shield","shielded","shielder","shields","shift","shifted","shiftily","shiftiness","shifting","shiftless","shiftlessness","shifts","shifty","shiite","shijiazhuang","shikoku","shill","shillelagh","shillelaghs","shilling","shillong","shiloh","shim","shimmed","shimmer","shimmery","shimming","shimmy","shin","shina","shinbone","shindig","shine","shiner","shingle","shingler","shinguard","shininess","shining","shinned","shinning","shinny","shinsplints","shinto","shintoism","shintoist","shiny","shinyapp","ship","shipboard","shipborne","shipbuild","shipbuilder","shipload","shipman","shipmate","shipmen","shipment","shipowner","shippable","shipped","shipper","shipping","ships","shipshape","shipwreck","shipwright","shipyard","shir","shiraz","shire","shirk","shirker","shirl","shirlee","shirleen","shirlene","shirley","shirline","shiro","shirr","shirt","shirtfront","shirting","shirtless","shirtmake","shirtmaker","shirts","shirtsleeve","shirttail","shirtwaist","shit","shitting","shitty","shiv","shiva","shiver","shiverer","shivery","shivved","shivving","shlemiel","shm","shmuel","shoal","shoat","shock","shocker","shocking","shockley","shockproof","shod","shoddily","shoddiness","shoddy","shoe","shoehorn","shoeing","shoelace","shoemake","shoemaker","shoer","shoes","shoeshine","shoestring","shoetree","shogun","shogunate","shoji","sholom","shone","shoo","shoofly","shook","shoot","shooter","shooting","shootout","shop","shopify","shopkeep","shopkeeper","shoplift","shoplifter","shoplifting","shoppe","shopped","shopper","shopping","shops","shoptalk","shopworn","shore","shorebird","shoreline","shorewood","shoring","short","shortage","shortbread","shortcake","shortchange","shortcode","shortcoming","shortcrust","shortcut","shortcuts","shortcutting","shorten","shortened","shortener","shortening","shorter","shortest","shortfall","shorthand","shorthorn","shortie","shortish","shortlist","shortly","shortname","shortness","shortsighted","shortsightedness","shortstop","shortwave","shorty","shoshana","shoshanna","shoshone","shostakovitch","shot","shotgun","shotgunned","shotgunner","shotgunning","shots","shotted","shotting","should","shoulder","shouldn","shout","shove","shovel","shoveler","shovelful","shover","show","showasaction","showbiz","showbizzes","showboat","showcase","showdialog","showdown","showed","shower","showery","showgirl","showily","showiness","showing","showinputdialog","showman","showmanship","showmen","showmessage","showmessagedialog","shown","showoff","showpiece","showplace","showroom","shows","showthread","showy","shp","shpt","shrank","shrapnel","shred","shredded","shredder","shredding","shreveport","shrew","shrewd","shrewdness","shrewish","shrewishness","shriek","shrieker","shrift","shrike","shrill","shrillness","shrilly","shrimp","shrine","shrink","shrinkage","shrinker","shrinking","shrive","shrivel","shriven","shropshire","shroud","shrub","shrubbed","shrubbery","shrubbing","shrubby","shrug","shrugged","shrugging","shrunk","sht","shtick","shtml","shu","shuck","shucker","shucks","shudder","shuddery","shuffle","shuffleboard","shuffled","shuffles","shuffling","shulman","shun","shunned","shunning","shunt","shunter","shurlock","shurlocke","shurwood","shush","shut","shutdown","shuteye","shutil","shutoff","shutout","shutter","shutterbug","shuttering","shutting","shuttle","shuttlecock","shy","shyer","shyest","shylock","shylockian","shyness","shyster","si","siam","siamese","sian","siana","sianna","sib","sibbie","sibby","sibeal","sibel","sibelius","sibella","sibelle","siberia","siberian","sibilance","sibilancy","sibilant","sibilla","sibley","sibling","siblings","sibyl","sibylla","sibylle","sibylline","sic","sicilian","siciliana","sicily","sick","sickbay","sickbed","sicken","sickener","sickening","sicker","sickie","sickish","sickle","sickliness","sickly","sickness","sicko","sickout","sickroom","sid","side","sidearm","sideband","sidebar","sideboard","sideburns","sidecar","sided","sidedness","sidekick","sidekiq","sidelight","sideline","sidelong","sideman","sidemen","sidenav","sidepiece","sider","sidereal","sides","sidesaddle","sideshow","sidesplitting","sidestep","sidestepped","sidestepping","sidestroke","sideswipe","sidetrack","sidewalk","sidewall","sidewards","sideway","sidewinder","siding","sidle","sidnee","sidney","sidoney","sidonia","sidonnie","sids","siege","siegel","siegfried","sieglinda","siegmund","siemens","siena","sienna","sierpinski","sierra","siesta","sieve","siffre","sift","sifted","sifter","sig","sigfrid","sigfried","siggraph","sigh","sigher","sighs","sight","sighted","sighter","sighting","sightless","sightliness","sightly","sightread","sightsee","sightseeing","sigint","sigismond","sigismondo","sigismund","sigismundo","sigma","sigmoid","sigmund","sign","signal","signaled","signaler","signaling","signalization","signalize","signally","signalman","signalmen","signalr","signals","signatory","signature","signatures","signboard","signed","signer","signet","significance","significant","significantly","signification","signify","signin","signing","signor","signora","signore","signori","signories","signorina","signorine","signout","signpost","signs","signup","sigrid","sigsegv","sigurd","sigvard","sihanouk","sikh","sikhism","sikhs","sikkim","sikkimese","sikorsky","silage","silas","sile","sileas","siled","silence","silencer","silent","silently","silentness","silesia","silhouette","silica","silicate","siliceous","silicide","silicon","silicone","silicoses","silicosis","silk","silken","silkily","silkiness","silkscreen","silkworm","silky","sill","silliness","silly","silo","silt","siltation","siltstone","silty","silurian","silva","silvain","silvan","silvana","silvano","silvanus","silver","silverer","silverfish","silverlight","silverman","silversmith","silversmiths","silverstein","silverware","silvery","silvester","silvia","silvie","silvio","sim","simd","simenon","simeon","simian","similar","similarity","similarly","simile","similiar","similitude","simla","simmer","simmonds","simmons","simmonsville","simms","simon","simona","simone","simonette","simonize","simonne","simony","simpatico","simper","simple","simpleadapter","simplecursoradapter","simpledateformat","simpleminded","simpleness","simpler","simplest","simpleton","simpletype","simplex","simplexml","simplexmlelement","simplicity","simplification","simplified","simplifies","simplify","simplifying","simplistic","simplistically","simply","simpson","simula","simulacrum","simulate","simulated","simulating","simulation","simulative","simulator","simulcast","simultaneity","simultaneous","simultaneously","simultaneousness","sin","sinai","sinatra","since","sincere","sincereness","sincerer","sincerest","sincerity","sinclair","sinclare","sindbad","sindee","sindhi","sine","sinecure","sinecurist","sinew","sinewy","sinful","sinfulness","sing","singapore","singaporean","singborg","singe","singeing","singer","singing","single","singlehanded","singleline","singleness","singleordefault","singlet","singleton","singletons","singletree","singsong","singular","singularity","singularization","sinhalese","sinister","sinisterness","sinistral","sink","sinkable","sinker","sinkhole","sinkiang","sinking","sinks","sinless","sinlessness","sinned","sinner","sinning","sinon","sint","sinter","sinuosity","sinuous","sinuousities","sinuousness","sinus","sinusitis","sinusoid","sinusoidal","siobhan","sioux","siouxie","sip","siphon","siphons","sipped","sipper","sipping","sir","sire","sired","siren","sires","siring","sirius","sirloin","sirocco","sirred","sirring","sirup","sis","sisal","sisely","sisile","sissie","sissified","sissy","sister","sisterhood","sisterliness","sisterly","sistine","sisyphean","sisyphus","sit","sitar","sitarist","sitcom","site","sitecore","siteid","sitemap","sitename","sitepoint","sites","sits","sitter","sitting","situ","situate","situation","situational","situationist","situations","situs","siusan","siva","siward","six","sixfold","sixgun","sixpence","sixpenny","sixshooter","sixteen","sixteenths","sixth","sixths","sixtieths","sixty","sizable","sizableness","size","sized","sizeof","sizer","sizes","sizing","sizzle","sizzler","sj","sjaelland","sk","ska","skaction","skat","skate","skateboard","skater","skedaddle","skeet","skein","skeletal","skeleton","skell","skelly","skeptic","skeptical","skepticism","sketch","sketchbook","sketcher","sketchily","sketchiness","sketchpad","sketchy","skew","skewer","skewing","skewness","ski","skid","skidded","skidding","skiff","skiing","skilfully","skill","skilled","skillet","skillful","skillfulness","skillfulnesses","skilling","skills","skim","skimmed","skimmer","skimming","skimp","skimpily","skimpiness","skimpy","skin","skincare","skindive","skinflint","skinhead","skinless","skinned","skinner","skinniness","skinning","skinny","skins","skintight","skip","skipp","skipped","skipper","skippie","skipping","skippy","skips","skipton","skirmish","skirmisher","skirt","skirter","skirting","skit","skitter","skittish","skittishness","skittle","skivvy","sklearn","skoal","skopje","skspritenode","sku","skulduggery","skulk","skulker","skull","skullcap","skullduggery","skunk","skview","sky","skycap","skydiver","skydiving","skye","skyhook","skyjack","skyjacker","skylab","skylar","skylark","skylarker","skyler","skylight","skyline","skype","skyrocket","skyscrape","skyscraper","skyward","skywave","skyway","skywriter","skywriting","sl","slab","slabbed","slabbing","slack","slacken","slacker","slackness","slade","slag","slagged","slagging","slain","slake","slaked","slalom","slam","slammed","slammer","slamming","slander","slanderous","slanderousness","slang","slangy","slant","slanting","slantwise","slap","slapdash","slaphappy","slapped","slapper","slapping","slapstick","slash","slashes","slashing","slat","slate","slater","slather","slating","slatted","slattern","slatting","slaughter","slaughterer","slaughterhouse","slav","slave","slaveholder","slaver","slavery","slaves","slavic","slavish","slavishness","slavonic","slaw","slay","sleaze","sleazily","sleaziness","sleazy","sled","sledded","sledder","sledding","sledge","sledgehammer","sleek","sleekness","sleep","sleeper","sleepily","sleepiness","sleeping","sleepless","sleeplessness","sleepover","sleepwalk","sleepwalker","sleepwear","sleepy","sleepyhead","sleet","sleety","sleeve","sleeveless","sleeving","sleigh","sleighs","sleight","sleken","slender","slenderize","slenderness","slept","slesinger","sleuth","sleuths","slew","slf","slice","sliced","slicer","slices","slicing","slick","slicker","slickness","slid","slide","slidedown","slider","sliders","slides","slideshow","slidetoggle","slideup","sliding","slight","slighter","slighting","slightly","slightness","slim","slime","sliminess","slimline","slimmed","slimmer","slimmest","slimming","slimness","slimy","sling","slings","slingshot","slink","slinky","slip","slipcase","slipcover","slipknot","slippage","slipped","slipper","slipperiness","slippery","slipping","slipshod","slipstream","slipway","slit","slither","slithery","slitted","slitter","slitting","sliver","slivery","sln","sloan","sloane","slob","slobber","slobbery","slocum","sloe","slog","slogan","sloganeer","slogged","slogging","sloop","slop","slope","sloped","slopped","sloppily","sloppiness","slopping","sloppy","slosh","slot","sloth","slothful","slothfulness","sloths","slots","slotted","slotting","slouch","sloucher","slouchy","slough","sloughs","slovak","slovakia","slovakian","sloven","slovene","slovenia","slovenian","slovenliness","slovenly","slow","slowcoaches","slowdown","slower","slowing","slowish","slowly","slowness","slowpoke","slows","slr","sludge","sludgy","slue","slug","sluggard","slugged","slugger","slugging","sluggish","sluggishness","sluice","slum","slumber","slumberer","slumberous","slumlord","slummed","slummer","slumming","slummy","slump","slung","slunk","slur","slurp","slurred","slurried","slurring","slurry","slurrying","slush","slushiness","slushy","slut","sluttish","slutty","sly","slyness","sm","smack","smacker","small","smaller","smallest","smallholders","smallholding","smallint","smallish","smallness","smallpox","smalltalk","smalltime","smallwood","smarmy","smart","smarten","smarter","smartness","smartphone","smartphones","smarty","smartypants","smash","smasher","smashing","smashup","smattering","smb","smear","smearer","smeary","smell","smeller","smelliness","smelly","smelt","smelter","smetana","smidgen","smilax","smile","smiley","smilies","smiling","smirch","smirk","smirnoff","smite","smiter","smith","smithereens","smithfield","smiths","smithson","smithsonian","smithtown","smithy","smitten","smitty","smock","smocking","smog","smoggy","smoke","smokehouse","smokeless","smoker","smokescreen","smokestack","smokey","smokiness","smoking","smoky","smolder","smoldering","smolensk","smollett","smooch","smooth","smoothen","smoother","smoothie","smoothing","smoothly","smoothness","smooths","smote","smother","smp","smrgsbord","sms","smsa","smsmanager","smth","smtp","smtpclient","smucker","smudge","smudginess","smudgy","smug","smugged","smugger","smuggest","smugging","smuggle","smuggler","smugness","smut","smuts","smutted","smuttiness","smutting","smutty","smyrna","sn","snack","snackbar","snaffle","snafu","snag","snagged","snagging","snail","snake","snakebird","snakebite","snakelike","snakeroot","snaky","sname","snap","snapback","snapdragon","snapped","snapper","snappily","snappiness","snapping","snappish","snappishness","snappy","snapshot","snapshots","snapshotted","snapshotting","snare","snarer","snarf","snarl","snarler","snarling","snarly","snatch","snatcher","snazzily","snazzy","snd","snead","sneak","sneaker","sneakily","sneakiness","sneaking","sneaky","sneed","sneer","sneerer","sneering","sneeze","snell","snick","snicker","snide","snideness","snider","sniff","sniffer","sniffle","sniffler","sniffles","snifter","snigger","snip","snipe","sniper","snipped","snipper","snippet","snippets","snipping","snippy","snit","snitch","snivel","sniveler","snmp","sno","snob","snobbery","snobbish","snobbishness","snobby","snodgrass","snood","snook","snooker","snoop","snooper","snoopy","snoot","snootily","snootiness","snooty","snooze","snore","snorkel","snort","snorter","snot","snotted","snottily","snottiness","snotting","snotty","snout","snow","snowball","snowbank","snowbelt","snowbird","snowblower","snowboard","snowbound","snowcapped","snowden","snowdrift","snowdrop","snowfall","snowfield","snowflake","snowily","snowiness","snowman","snowmen","snowmobile","snowplough","snowploughs","snowplow","snowshed","snowshoe","snowshoeing","snowshoer","snowstorm","snowsuit","snowy","snprintf","sns","snub","snubbed","snubber","snubbing","snuff","snuffbox","snuffer","snuffle","snuffler","snuffly","snug","snugged","snugger","snuggest","snugging","snuggle","snuggly","snugness","snyder","so","soa","soak","soaker","soap","soapaction","soapbox","soapclient","soapenv","soapiness","soapobject","soapstone","soapsud","soapui","soapy","soar","soarer","soaring","sob","sobbed","sobbing","sober","soberer","soberness","sobriety","sobriquet","soc","soccer","sociabilities","sociability","sociable","sociably","social","socialism","socialist","socialistic","socialite","sociality","socialization","socialize","socialized","socializer","socially","societal","society","socio","sociobiology","sociocultural","sociodemographic","socioeconomic","socioeconomically","sociolinguistics","sociological","sociologist","sociology","sociometric","sociometry","sociopath","sociopaths","sock","sockaddr","socket","socketexception","socketio","socketprocessor","sockets","sockfd","socks","socorro","socrates","socratic","sod","soda","sodales","sodded","sodden","soddenness","sodding","soddy","sodium","sodom","sodomite","sodomize","sodomy","soever","sofa","sofia","sofie","soft","softball","softbound","soften","softener","softhearted","softie","softlayer","softmax","softness","software","softwood","softy","soggily","sogginess","soggy","soho","soign","soil","soiled","soire","sojourn","sol","solace","solacer","solar","solaria","solaris","solarium","sold","solder","soldier","soldiery","sole","solecism","soled","solely","solemn","solemness","solemnify","solemnity","solemnization","solemnize","solemnness","solenoid","soler","soles","solicit","solicitation","solicited","solicitor","solicitous","solicitousness","solicitude","solid","solidarity","solidcolorbrush","solidi","solidification","solidify","solidity","solidness","solidus","soliloquies","soliloquize","soliloquy","soling","solipsism","solipsist","solis","solitaire","solitary","solitude","sollie","solly","solo","soloist","solomon","solon","soloviev","solr","solstice","solubility","soluble","solute","solution","solutions","solvable","solvating","solve","solved","solvency","solvent","solvently","solver","solves","solving","solzhenitsyn","som","soma","somali","somalia","somalian","somatic","somber","somberness","sombre","sombrero","some","somebody","someclass","somedata","someday","somefile","somefunc","somefunction","somehow","someid","somemethod","somename","someobject","someone","someplace","someproperty","somersault","somerset","somersetted","somersetting","somerville","somestring","sometable","sometext","something","somethingelse","sometime","sometimes","sometype","someurl","somevalue","somevar","someway","somewhat","somewhere","somme","sommelier","somnambulism","somnambulist","somnolence","somnolent","somoza","somthing","son","sonar","sonarqube","sonata","sonatina","sonatype","sondheim","sondra","sonenberg","song","songbag","songbird","songbook","songfest","songful","songfulness","songhai","songhua","songs","songster","songstress","songwriter","songwriting","sonia","sonic","sonja","sonnet","sonni","sonnie","sonnnie","sonny","sonoma","sonora","sonority","sonorous","sonorousness","sontag","sonuvabitch","sony","sonya","soon","sooner","soonish","soot","sooth","soothe","soother","soothing","soothingness","sooths","soothsay","soothsayer","sooty","sop","sophey","sophi","sophia","sophie","sophism","sophist","sophister","sophistic","sophistical","sophisticate","sophisticated","sophisticatedly","sophistication","sophistry","sophoclean","sophocles","sophomore","sophomoric","sophronia","soporific","soporifically","sopped","sopping","soppy","soprano","sopwith","sorbet","sorbonne","sorcerer","sorceress","sorcery","sorcha","sordid","sordidness","sore","sorehead","soreness","sorensen","sorenson","sorghum","sorority","sorrel","sorrentine","sorrily","sorriness","sorrow","sorrower","sorrowful","sorrowfulness","sorry","sort","sorta","sortable","sortby","sorted","sortedlist","sorter","sortexpression","sortie","sortieing","sorting","sortorder","sorts","sos","sosa","sosanna","sot","soto","sottish","sou","soubriquet","souffl","sough","soughs","sought","soul","soulful","soulfulness","soulless","sound","soundboard","soundcloud","sounder","sounders","soundest","sounding","soundings","soundless","soundly","soundness","soundproof","soundproofing","sounds","soundtrack","soup","souphanouvong","soupon","soupy","sour","source","sourcecode","sourced","sourceencoding","sourcefile","sourceforge","sourceid","sourceless","sourcemap","sourcepath","sources","sourcetype","sourcing","sourdough","sourdoughs","sourish","sourness","sourpuss","sous","sousa","sousaphone","souse","south","southampton","southbound","southeast","southeaster","southeastern","southeastward","souther","southerly","southern","southerner","southernisms","southernmost","southey","southfield","southing","southland","southpaw","souths","southward","southwest","southwester","southwestern","southwestward","souvenir","sovereign","sovereignty","soviet","sow","sowbelly","sowens","sower","soweto","sown","sox","soy","soybean","soyinka","soyuz","sp","spa","spaatz","space","spacecraft","spaced","spaceflight","spaceman","spacemen","spaceport","spacer","spaces","spaceship","spacesuit","spacewalk","spacewar","spacewoman","spacewomen","spacey","spacial","spacier","spaciest","spaciness","spacing","spacious","spaciousness","spackle","spade","spadeful","spader","spadework","spadices","spadix","spafford","spaghetti","spahn","spain","spake","spalding","spam","span","spandex","spandrels","spangle","spanglish","spaniard","spaniel","spanielled","spanielling","spanish","spank","spanker","spanking","spanned","spanner","spanning","spans","spar","sparc","sparcstation","spare","spareness","sparer","spareribs","sparing","spark","sparkconf","sparkcontext","sparker","sparkle","sparkler","sparkman","sparks","sparksession","sparksubmit","sparky","sparling","sparql","sparred","sparrer","sparring","sparrow","spars","sparse","sparseness","sparsity","sparta","spartacus","spartan","spasm","spasmodic","spasmodically","spastic","spat","spate","spathe","spatial","spatiality","spatted","spatter","spatterdock","spatting","spatula","spavin","spawn","spawned","spawner","spawning","spay","spca","speak","speakable","speakeasy","speaker","speakers","speakership","speaking","speaks","spear","spearer","spearfish","spearhead","spearmint","spears","spec","special","specialcells","specialism","specialist","specialization","specialize","specialized","specializing","specially","specialty","specie","species","specif","specifiability","specifiable","specifiably","specific","specifically","specification","specifications","specificity","specifics","specified","specifier","specifies","specify","specifying","specimen","specious","speciousness","speck","speckle","specs","spectacle","spectacular","spectator","specter","spectra","spectral","spectralness","spectrogram","spectrograph","spectrographically","spectrography","spectrometer","spectrometric","spectrometry","spectrophotometer","spectrophotometric","spectrophotometry","spectroscope","spectroscopic","spectroscopically","spectroscopy","spectrum","specular","specularity","speculate","speculation","speculative","speculator","sped","speech","speechless","speechlessness","speed","speedboat","speedboating","speeder","speedily","speediness","speedometer","speeds","speedster","speedup","speedway","speedwell","speedy","speer","speleological","speleologist","speleology","spell","spellbind","spellbinder","spellbound","spelldown","spelled","speller","spelling","spells","spelunker","spelunking","spence","spencer","spencerian","spend","spender","spending","spends","spendthrift","spengler","spenglerian","spense","spenser","spenserian","spent","sperm","spermatophyte","spermatozoa","spermatozoon","spermicidal","spermicide","sperry","spew","spewer","spf","sphagnum","sphere","spheric","spherical","spherics","spheroid","spheroidal","spherule","sphincter","sphinx","spi","spic","spica","spice","spicebush","spicily","spiciness","spicule","spicy","spider","spiderweb","spiderwort","spidery","spiegel","spiel","spielberg","spier","spiffy","spigot","spike","spiker","spikiness","spiky","spill","spillage","spillane","spillover","spillway","spin","spinach","spinal","spindle","spindly","spine","spineless","spinelessness","spinet","spininess","spinnability","spinnaker","spinner","spinneret","spinning","spinoza","spinster","spinsterhood","spinsterish","spiny","spiracle","spiraea","spiral","spire","spirea","spirit","spirited","spiritedness","spiritless","spirits","spiritual","spiritualism","spiritualist","spiritualistic","spirituality","spirituous","spiro","spirochete","spiry","spit","spitball","spite","spiteful","spitefuller","spitefullest","spitefulness","spitfire","spits","spitted","spitting","spittle","spittoon","spitz","spl","splash","splashdown","splasher","splashily","splashiness","splashscreen","splashy","splat","splatted","splatter","splatting","splay","splayfeet","splayfoot","spleen","splendid","splendidness","splendor","splendorous","splenetic","splice","splicer","spline","splint","splinter","splintery","split","splits","splittable","splitted","splitter","splitting","splodge","splotch","splotchy","splurge","splutter","splutterer","spock","spoil","spoilables","spoilage","spoiled","spoiler","spoilsport","spokane","spoke","spoken","spokeshave","spokesman","spokesmen","spokespeople","spokesperson","spokeswoman","spokeswomen","spoliation","sponge","spongecake","sponger","sponginess","spongy","sponsor","sponsorship","spontaneity","spontaneous","spontaneousness","spoof","spook","spookiness","spooky","spool","spoon","spoonbill","spoonerism","spoonful","spoor","sporadic","sporadically","spore","sporran","sport","sportiness","sporting","sportive","sportiveness","sports","sportscast","sportsman","sportsmanlike","sportsmanship","sportsmen","sportswear","sportswoman","sportswomen","sportswriter","sporty","sposato","spot","spotify","spotless","spotlessness","spotlight","spotlit","spots","spotted","spotter","spottily","spottiness","spotting","spotty","spousal","spouse","spout","spouter","sprain","sprang","sprat","sprawl","spray","sprayed","sprayer","sprays","spread","spreadeagled","spreader","spreadsheet","spreadsheetapp","spreadsheets","spree","spreeing","sprig","sprigged","sprigging","sprightliness","sprightly","spring","springapplication","springboard","springbok","springboot","springbootapplication","springeing","springer","springfield","springframework","springily","springiness","springing","springjunit","springlike","springsource","springsteen","springtime","springy","sprinkle","sprinkler","sprinkling","sprint","sprintf","sprite","spritebatch","spritekit","sprites","spritz","sprocket","sprocketed","sprockets","sproul","sprout","spruce","spruceness","sprue","sprung","spry","spryness","spss","spud","spudded","spudding","spuds","spume","spumone","spumoni","spumy","spun","spunk","spunky","spur","spurge","spurious","spuriousness","spurn","spurred","spurring","spurt","sputa","sputnik","sputter","sputum","spy","spyder","spyglass","sq","sql","sqlalchemy","sqlclient","sqlcmd","sqlcommand","sqlconnection","sqlcontext","sqldataadapter","sqldatareader","sqldatasource","sqldbtype","sqlerror","sqlexception","sqlexpress","sqlfiddle","sqlite","sqliteconnection","sqlitedatabase","sqliteopenhelper","sqlparameter","sqlplus","sqlquery","sqlserver","sqlsrv","sqlstate","sqoop","sqq","sqrt","sqs","squab","squabbed","squabber","squabbest","squabbing","squabble","squabbler","squad","squadded","squadding","squadron","squalid","squalidness","squall","squaller","squally","squalor","squamous","squander","squanto","square","squared","squareness","squarer","squares","squaresville","squareup","squarish","squash","squashiness","squashy","squat","squatness","squatted","squatter","squattest","squatting","squaw","squawk","squawker","squeak","squeaker","squeakily","squeakiness","squeaky","squeal","squealer","squeamish","squeamishness","squeegee","squeegeeing","squeeze","squeezer","squelch","squelcher","squelchy","squib","squibb","squibbed","squibbing","squid","squidded","squidding","squiggle","squiggly","squint","squinter","squinting","squire","squirehood","squirm","squirmy","squirrel","squirt","squirter","squish","squishy","sr","srand","src","srcdir","srcdirs","sref","srinagar","sro","srv","ss","ssa","sscanf","ssd","sse","ssh","sshd","ssid","ssis","ssl","sslcontext","sslsocketimpl","sslv","ssms","ssn","sso","ssrs","sss","sst","sstream","ssw","st","sta","stab","stabbed","stabber","stabbing","stability","stabilizability","stabilization","stabilize","stabilizer","stable","stableman","stablemate","stablemen","stableness","stabler","stables","stablest","stabling","stably","staccato","stace","stacee","stacey","staci","stacia","stacie","stack","stackable","stackblitz","stacked","stacker","stackexchange","stacking","stacklayout","stackoverflow","stackpane","stackpanel","stacks","stacktrace","stacy","stadia","stadias","stadium","stael","stafani","staff","staffard","staffer","stafford","staffordshire","staffroom","staford","stag","stage","stagecoach","stagecraft","staged","stagehand","stager","stages","stagestruck","stagflation","stagged","stagger","staggerer","staggering","staggers","stagging","staginess","staging","stagnancy","stagnant","stagnate","stagnation","stagy","stahl","staid","staidness","stain","stained","stainer","stainless","stair","staircase","stairway","stairwell","stake","stakeholder","stakeout","stalactite","stalag","stalagmite","stale","stalemate","staleness","staley","stalin","stalingrad","stalinist","stalk","stalker","stall","stalled","stallholders","stallion","stallone","stalls","stalwart","stalwartness","stamen","stamford","stamina","staminate","stammer","stammerer","stammering","stamp","stamped","stampede","stampeder","stamper","stan","stance","stanch","stancher","stanchion","stand","standalone","standard","standardcontext","standardcontextvalve","standardenginevalve","standardhost","standardhostvalve","standardization","standardize","standardized","standardizer","standardizes","standards","standarduserdefaults","standardwrapper","standardwrappervalve","standby","standbys","standee","standford","standing","standish","standoff","standoffish","standout","standpipe","standpoint","stands","standstill","stanfield","stanford","stanislas","stanislaus","stanislavsky","stanislaw","stank","stanleigh","stanley","stanly","stannic","stannous","stanton","stanwood","stanza","staph","staphs","staphylococcal","staphylococci","staphylococcus","staple","stapled","stapler","stapleton","star","starboard","starch","starchily","starchiness","starchy","stardom","stardust","stare","starfish","stargate","stargaze","staring","stark","starkey","starkness","starla","starlene","starless","starlet","starlight","starlin","starling","starlit","starr","starred","starring","starry","stars","starship","starstruck","start","startactivity","startactivityforresult","startangle","startanimation","startdate","started","starter","starters","startid","startindex","startinfo","starting","startinternal","startle","startling","startnew","startpoint","startpos","startrow","starts","startservice","startstop","startswith","starttime","starttls","startup","startups","startx","starty","starvation","starve","starveling","starver","stash","stasis","stat","state","statecraft","stated","stateful","statehood","statehouse","stateid","stateless","statelessness","stateliness","stately","statement","statements","staten","statename","stateparams","stateprovider","stater","stateroom","states","stateside","statesman","statesmanlike","statesmanship","statesmen","stateswoman","stateswomen","statewide","static","statical","statically","staticfiles","staticmethod","staticresource","statics","statictext","stating","station","stationarity","stationary","stationer","stationery","stationmaster","stations","statistic","statistical","statistician","statistics","statler","stator","stats","statuary","statue","statuesque","statuette","stature","status","statusbar","statuscode","statuses","statusid","statustext","statute","statutorily","statutory","stauffer","staunch","staunchness","stave","stavro","stay","stayed","stayer","staying","stays","std","stdafx","stdcall","stdclass","stderr","stdin","stdint","stdio","stdlib","stdout","stdtypes","ste","stead","steadfast","steadfastness","steadily","steadiness","steading","steady","steak","steakhouse","steal","stealer","stealing","stealth","stealthily","stealthiness","stealths","stealthy","steam","steamboat","steamer","steamfitter","steamfitting","steamily","steaminess","steamroll","steamroller","steamship","steamy","stearn","stearne","steed","steel","steele","steeliness","steelmaker","steelwork","steelworker","steely","steelyard","steen","steep","steepen","steeper","steeple","steeplebush","steeplechase","steeplejack","steepness","steer","steerage","steerer","steersman","steersmen","steeves","stefa","stefan","stefania","stefanie","stefano","steffane","steffen","steffi","steffie","stegosauri","stegosaurus","stein","steinbeck","steinberg","steinem","steiner","steinmetz","steinway","stella","stellar","stellated","stem","stemless","stemmed","stemming","stemware","stench","stencil","stenciler","stencillings","stendhal","stendler","stengel","steno","stenographer","stenographic","stenography","stenotype","stentorian","step","stepbrother","stepchild","stepchildren","stepdaughter","stepfather","stepha","stephan","stephana","stephani","stephanie","stephannie","stephanus","stephen","stephenie","stephenson","stephi","stephie","stephine","stepladder","stepmother","stepparent","steppe","stepper","stepping","steppingstone","steps","stepsister","stepson","stepwise","stereo","stereographic","stereography","stereophonic","stereoscope","stereoscopic","stereoscopically","stereoscopy","stereotype","stereotypic","stereotypical","sterile","sterility","sterilization","sterilize","sterilized","sterilizes","sterling","sterlingness","stern","sternal","sternberg","sterne","sternness","sterno","sternum","steroid","steroidal","stertorous","stesha","stet","stethoscope","stetson","stetted","stetting","steuben","stevana","steve","stevedore","steven","stevena","stevenson","stevie","stevy","stew","steward","stewardess","stewardship","stewart","stg","sth","stick","sticker","stickily","stickiness","sticking","stickle","stickleback","stickler","stickpin","sticks","stickup","sticky","stieglitz","stiff","stiffen","stiffness","stifle","stifler","stifling","stigma","stigmata","stigmatic","stigmatization","stigmatizations","stigmatize","stigmatized","stile","stiletto","still","stillbirth","stillbirths","stillborn","stiller","stillest","stillman","stillmann","stillness","stillwell","stilt","stilted","stilton","stimson","stimulant","stimulate","stimulated","stimulation","stimulative","stimulator","stimulatory","stimuli","stimulus","stine","sting","stinger","stingily","stinginess","stinging","stingray","stingy","stink","stinkbug","stinker","stinking","stinkpot","stinky","stint","stinter","stinting","stipend","stipendiary","stipple","stippler","stipulate","stipulation","stir","stirling","stirred","stirrer","stirring","stirrup","stitch","stitcher","stitchery","stitching","stl","stm","stmt","stoat","stochastic","stochastically","stochasticity","stock","stockade","stockbreeder","stockbroker","stockbroking","stocker","stockhausen","stockholder","stockholm","stockily","stockiness","stockinet","stockinette","stocking","stockist","stockpile","stockpiler","stockpot","stockroom","stocks","stocktaking","stockton","stocky","stockyard","stoddard","stodge","stodgily","stodginess","stodgy","stogy","stoic","stoical","stoichiometric","stoichiometry","stoicism","stoke","stoker","stokes","stol","stole","stolen","stolid","stolidity","stolidness","stolon","stomach","stomachache","stomacher","stomachs","stomp","stone","stonecutter","stonehenge","stoneless","stonemason","stoner","stonewall","stoneware","stonewashed","stonework","stonewort","stonily","stoniness","stony","stood","stooge","stool","stoop","stop","stopcock","stopgap","stoplight","stopover","stoppable","stoppage","stoppard","stopped","stopper","stopping","stopple","stoppropagation","stops","stopwatch","stopwords","storage","store","stored","storedprocedure","storefront","storehouse","storeid","storekeep","storekeeper","storeroom","stores","stories","storing","stork","storm","stormbound","stormer","stormi","stormie","stormily","storminess","stormtroopers","stormy","story","storyboard","storyboards","storybook","storyline","storyteller","storytelling","stouffer","stoup","stout","stouten","stouthearted","stoutness","stove","stovepipe","stover","stow","stowage","stowaway","stowe","str","strabo","strace","straddle","straddler","stradivari","stradivarius","strafe","strafer","straggle","straggly","straight","straightaway","straightedge","straighten","straightener","straightforward","straightforwardness","straightjacket","straightness","straightway","strain","strained","strainer","straining","strains","strait","straiten","straitjacket","straitlaced","straitness","strand","stranded","strange","strangely","strangeness","stranger","strangle","stranglehold","strangles","strangulate","strangulation","strap","strapless","strapped","strapping","strasbourg","strata","stratagem","strategic","strategical","strategics","strategies","strategist","strategy","stratford","strati","stratification","stratified","stratify","stratigraphic","stratigraphical","stratigraphy","stratosphere","stratospheric","stratospherically","stratum","stratus","strauss","stravinsky","straw","strawberry","strawflower","stray","strayer","strcat","strcmp","strcpy","strdup","streak","streaker","streaky","stream","streamed","streamer","streaming","streamline","streamreader","streams","streamwriter","street","streetcar","streetlight","streets","streetwalker","streetwise","streisand","strength","strengthen","strengthener","strengths","strenuous","strenuousness","strep","streptococcal","streptococci","streptococcus","streptomycin","strerror","stress","stressed","stressful","stretch","stretchability","stretchable","stretched","stretcher","stretchy","strew","strewn","strftime","stria","striae","striate","striated","striation","stricken","strickland","strict","stricter","strictest","strictly","strictmode","strictness","stricture","stridden","stride","stridency","strident","strider","strides","strife","strike","strikebreak","strikebreaker","strikebreaking","strikeout","striker","strikes","striking","strindberg","string","stringarray","stringbuffer","stringbuilder","stringbyappendingpathcomponent","stringcomparison","stringed","stringencoding","stringency","stringent","stringer","stringformat","stringify","stringiness","stringing","stringio","stringlength","stringlist","stringproperty","stringr","stringreader","stringrequest","strings","stringsasfactors","stringsplitoptions","stringstream","stringtokenizer","stringtype","stringutils","stringvalue","stringvar","stringwithformat","stringwriter","stringy","strip","stripe","striped","striper","stripling","stripped","stripper","stripping","strips","stripslashes","striptease","stripteaser","stripy","strive","striven","striver","strlen","strncpy","strobe","stroboscope","stroboscopic","strode","stroke","strokecolor","strokewidth","stroking","stroll","stroller","strom","stromberg","stromboli","strong","strongbow","strongbox","stronger","strongheart","stronghold","strongish","strongly","strongman","strongmen","strongroom","strontium","strop","strophe","strophic","stropped","stropping","strove","strpos","strptime","strs","strsplit","strsql","strstr","strtok","strtolower","strtotime","struck","struct","structfield","structs","structural","structuralism","structuralist","structure","structured","structureless","structures","structuring","strudel","struggle","struggled","struggler","struggling","strum","strummed","strumming","strumpet","strung","strut","struts","strutted","strutter","strutting","strychnine","sts","stu","stuart","stub","stubbed","stubbing","stubble","stubblefield","stubbly","stubborn","stubbornness","stubby","stubs","stucco","stuccoes","stuck","stud","studbook","studded","studding","studebaker","student","studentid","studentname","students","studentship","studied","studiedness","studier","studies","studio","studios","studious","studiousness","study","studying","stuff","stuffily","stuffiness","stuffing","stuffs","stuffy","stultify","stumble","stumbled","stumbling","stump","stumpage","stumped","stumper","stumpy","stun","stung","stunk","stunned","stunner","stunning","stunt","stunted","stupefaction","stupefy","stupendous","stupendousness","stupid","stupidity","stupidness","stupor","sturdily","sturdiness","sturdy","sturgeon","sturm","stutter","stuttgart","stuyvesant","sty","stygian","style","styleable","styleclass","styled","styles","stylesheet","stylesheets","styleurls","styli","styling","stylish","stylishness","stylist","stylistic","stylistically","stylites","stylization","stylize","stylos","stylus","stymie","stymieing","stymy","styptic","styrene","styrofoam","styx","su","suable","suarez","suasion","suave","suaveness","suavity","sub","subaltern","subarctic","subareas","subarray","subaru","subassembly","subatomic","subbasement","subbed","subbing","subbranch","subcaste","subcat","subcategories","subcategorizing","subcategory","subchain","subclass","subclasses","subclassifications","subclassing","subclauses","subcommand","subcommittee","subcompact","subcomponent","subcomputation","subconcept","subconscious","subconsciousness","subconstituent","subcontinent","subcontinental","subcontract","subcontractor","subcultural","subculture","subcutaneous","subdir","subdirectories","subdirectory","subdistrict","subdivide","subdivision","subdomain","subdomains","subdue","subdued","subduer","subexpression","subfamily","subfield","subfile","subfolder","subfolders","subform","subfreezing","subgoal","subgraph","subgraphs","subgroup","subharmonic","subhead","subheading","subhuman","subindex","subinterval","subitem","subitems","subj","subject","subjection","subjective","subjectiveness","subjectivist","subjectivity","subjects","subjoin","subjugate","subjugation","subjunctive","subkey","sublayer","sublease","sublet","subletting","sublimate","sublimation","sublime","sublimeness","sublimer","subliminal","sublimity","sublist","subliterary","sublunary","submachine","submarginal","submarine","submariner","submenu","submerge","submergence","submerse","submersible","submersion","submicroscopic","submission","submissions","submissive","submissiveness","submit","submitbutton","submitform","submits","submittable","submittal","submitted","submitter","submitting","submode","submodule","submodules","subnational","subnet","subnetwork","subnormal","suboptimal","suborbital","suborder","subordinate","subordinately","subordinates","subordination","subordinator","suborn","subornation","subpage","subparagraph","subpart","subplot","subplots","subpoena","subpopulation","subproblem","subprocess","subprofessional","subprogram","subproject","subproof","subqueries","subquery","subquestion","subrange","subregion","subregional","subreport","subrogation","subroutine","subs","subsample","subschema","subscribe","subscribed","subscriber","subscribers","subscribing","subscript","subscripted","subscription","subscriptions","subsection","subsegment","subsentence","subsequence","subsequent","subsequently","subservience","subservient","subset","subsets","subside","subsidence","subsidiarity","subsidiary","subsidization","subsidize","subsidized","subsidizer","subsidy","subsist","subsistence","subsistent","subsocietal","subsoil","subsonic","subspace","subspecies","substance","substandard","substantial","substantially","substantialness","substantiate","substantiated","substantiation","substantive","substantiveness","substantivity","substation","substerilization","substitutability","substitute","substituted","substitution","substitutionary","substitutive","substr","substrata","substrate","substratum","substring","substrings","substructure","subsume","subsurface","subsystem","subtable","subtask","subteen","subtenancy","subtenant","subtend","subterfuge","subterranean","subtest","subtext","subtitle","subtle","subtleness","subtlety","subtly","subtopic","subtotal","subtract","subtracter","subtracting","subtraction","subtrahend","subtree","subtropic","subtropical","subtype","subunit","suburb","suburban","suburbanite","suburbanization","suburbanized","suburbanizing","suburbia","subvention","subversion","subversive","subversiveness","subvert","subverter","subview","subviews","subway","subzero","succ","succeed","succeeded","succeeder","succeeds","succesfully","success","successful","successfull","successfully","successfulness","succession","successive","successiveness","successor","successorship","succinct","succinctness","succor","succored","succorer","succotash","succubus","succulence","succulency","succulent","succumb","such","suchlike","suck","sucker","suckle","suckling","sucks","sucre","sucrose","suction","sud","sudan","sudanese","sudanic","sudden","suddenly","suddenness","sudetenland","sudo","sudoku","suds","sudsy","sue","sued","suede","suellen","suer","suet","suetonius","suety","suez","suffer","sufferance","sufferer","suffering","suffice","sufficiency","sufficient","sufficiently","suffix","suffixation","suffixed","suffixes","suffocate","suffocating","suffolk","suffragan","suffrage","suffragette","suffragist","suffuse","suffusion","sufi","sufism","sugar","sugarcane","sugarcoat","sugarless","sugarplum","sugary","suggest","suggested","suggester","suggestibility","suggestible","suggesting","suggestion","suggestions","suggestive","suggestiveness","suggests","sugillate","suharto","sui","suicidal","suicide","suit","suitability","suitable","suitableness","suitably","suitcase","suite","suited","suites","suiting","suitor","suits","sukarno","sukey","suki","sukiyaki","sukkot","sukkoth","sula","sulawesi","suleiman","sulfa","sulfaquinoxaline","sulfate","sulfide","sulfite","sulfonamide","sulfur","sulfuric","sulfurous","sulfurousness","sulk","sulkily","sulkiness","sulky","sulla","sullen","sullenness","sullied","sullivan","sully","sulphate","sulphide","sulphuric","sultan","sultana","sultanate","sultrily","sultriness","sultry","sulzberger","sum","sumac","sumach","sumatra","sumatran","sumer","sumeria","sumerian","summability","summable","summand","summarily","summarise","summarization","summarize","summarized","summarizer","summary","summation","summed","summer","summerdale","summerhouse","summertime","summery","summing","summit","summitry","summon","summoner","summons","sumner","sumo","sump","sumptuous","sumptuousness","sums","sumter","sun","sunbaked","sunbath","sunbathe","sunbather","sunbathing","sunbaths","sunbeam","sunbelt","sunblock","sunbonnet","sunburn","sunburst","suncream","sundae","sundanese","sundas","sunday","sunder","sundial","sundown","sundowner","sundris","sundry","sunfish","sunflower","sung","sunglass","sunk","sunlamp","sunless","sunlight","sunlit","sunned","sunni","sunniness","sunning","sunnite","sunny","sunnyvale","sunrise","sunroof","sunscreen","sunset","sunsetting","sunshade","sunshine","sunshiny","sunspot","sunstroke","sunt","suntan","suntanned","suntanning","sunup","sup","super","superabundance","superabundant","superannuate","superannuation","superb","superbness","supercargo","supercargoes","supercharge","supercharger","supercilious","superciliousness","supercity","superclass","supercomputer","supercomputing","superconcept","superconducting","superconductivity","superconductor","supercooled","supercooling","supercritical","superdense","superego","supererogation","supererogatory","superficial","superficiality","superfine","superfix","superfluity","superfluous","superfluousness","superheat","superhero","superheroes","superhighway","superhuman","superhumanness","superimpose","superimposition","superintend","superintendence","superintendency","superintendent","superior","superiority","superlative","superlativeness","superlunary","supermachine","superman","supermarket","supermen","supermodel","supermom","supernal","supernatant","supernatural","supernaturalism","supernaturalness","supernormal","supernova","supernovae","supernumerary","superordinate","superpose","superposition","superpower","superpredicate","supersaturate","supersaturation","superscribe","superscript","superscription","supersede","superseder","supersensitive","supersensitiveness","superset","supersonic","supersonically","supersonics","superstar","superstition","superstitious","superstore","superstructural","superstructure","supertanker","supertitle","superuser","supervene","supervention","superview","supervise","supervised","supervision","supervisor","supervisory","superwoman","superwomen","supine","supineness","supp","supper","suppl","supplant","supplanter","supple","supplement","supplemental","supplementary","supplementation","supplementer","suppleness","suppliant","supplicant","supplicate","supplication","supplied","supplier","suppliers","supplies","supply","supplying","support","supportability","supportable","supported","supporter","supporting","supportive","supportmapfragment","supports","suppose","supposed","supposedly","supposing","supposition","suppository","suppress","suppressant","suppressed","suppressible","suppression","suppressive","suppresslint","suppressor","suppresswarnings","suppurate","suppuration","supra","supranational","supranationalism","suprasegmental","supremacist","supremacy","supremal","supreme","supremeness","supremo","supt","surabaya","surat","surcease","surcharge","surcingle","surd","sure","sured","surefire","surefooted","surely","sureness","surer","surest","surety","surf","surface","surfaced","surfaceholder","surfacer","surfaces","surfaceview","surfacing","surfactant","surfboard","surfeit","surfer","surfing","surge","surged","surgeon","surgery","surges","surgical","surinam","suriname","surinamese","surliness","surly","surmise","surmiser","surmount","surmountable","surname","surpass","surpassed","surpassing","surplice","surplus","surplussed","surplussing","surprise","surprised","surpriser","surprising","surprisingly","surreal","surrealism","surrealist","surrealistic","surrealistically","surreality","surrender","surrenderer","surreptitious","surreptitiousness","surrey","surrogacy","surrogate","surrogation","surround","surrounded","surrounding","surtax","surveillance","surveillant","survey","surveyed","surveying","surveyor","surveys","survivability","survivable","survival","survivalist","survive","survived","survivor","survivorship","surya","sus","susan","susana","susanetta","susann","susanna","susannah","susanne","susceptibilities","susceptibility","susceptible","suscipit","susette","sushi","susi","susie","suspect","suspected","suspecter","suspecting","suspend","suspended","suspender","suspendisse","suspense","suspenseful","suspension","suspensive","suspensor","suspicion","suspicious","suspiciousness","susquehanna","sussex","sustain","sustainability","sustainable","sustainer","sustainment","sustenance","susy","sutherlan","sutherland","sutler","sutton","suture","suv","suva","suwanee","suzann","suzanna","suzanne","suzerain","suzerainty","suzette","suzhou","suzi","suzie","suzuki","suzy","sv","svalbard","svc","svelte","sven","svend","svengali","sverdlovsk","svetlana","svg","svm","svn","sw","swab","swabbed","swabbing","swabby","swabian","swaddle","swag","swagged","swagger","swagging","swahili","swain","swak","swallow","swallower","swallowtail","swam","swami","swamp","swamper","swampland","swampy","swan","swanee","swank","swankily","swankiness","swanky","swanlike","swanned","swanning","swansea","swanson","swap","swappable","swapped","swapper","swapping","swaps","sward","swarm","swarmer","swart","swarthiness","swarthmore","swarthy","swartz","swash","swashbuckler","swashbuckling","swastika","swat","swatch","swath","swathe","swather","swaths","swatted","swatter","swatting","sway","swayback","swayer","swazi","swaziland","swear","swearer","swearword","sweat","sweatband","sweater","sweatily","sweatiness","sweatpants","sweatshirt","sweatshop","sweaty","swed","swede","sweden","swedenborg","swedish","sweeney","sweep","sweeper","sweeping","sweepingness","sweeps","sweepstake","sweepstakes","sweet","sweetbread","sweetbrier","sweetcorn","sweeten","sweetened","sweetener","sweetening","sweetheart","sweetie","sweeting","sweetish","sweetmeat","sweetness","sweetshop","swell","swellhead","swelling","swelter","sweltering","swen","swenson","swept","sweptback","swerve","swerving","swf","swi","swift","swifter","swiftness","swig","swigged","swigging","swill","swim","swimmer","swimming","swimsuit","swinburne","swindle","swindler","swine","swineherd","swing","swingeing","swinger","swinging","swingutilities","swingworker","swingy","swinish","swinishness","swink","swipe","swiper","swiperefreshlayout","swiping","swirl","swirling","swirly","swish","swishy","swiss","switch","switchback","switchblade","switchboard","switched","switcher","switches","switchgear","switching","switchman","switchmap","switchmen","switchover","switz","switzer","switzerland","swivel","swizzle","swob","swollen","swoon","swooning","swoop","swoosh","swop","sword","swordfish","swordplay","swordplayer","swordsman","swordsmanship","swordsmen","swordtail","swore","sworn","swot","swt","swum","swung","sx","sy","sybarite","sybaritic","sybase","sybil","sybila","sybilla","sybille","sybyl","sycamore","sycophancy","sycophant","sycophantic","sycophantically","syd","sydel","sydelle","sydney","sykes","sylas","syllabi","syllabic","syllabicate","syllabication","syllabicity","syllabification","syllabify","syllable","syllabub","syllabus","syllabusss","syllogism","syllogistic","sylow","sylph","sylphic","sylphlike","sylphs","sylvan","sylvania","sylvester","sylvia","sylvie","sym","syman","symbiont","symbioses","symbiosis","symbiotic","symbol","symbolic","symbolical","symbolics","symbolism","symbolist","symbolization","symbolize","symbolized","symbolizes","symbols","symfony","symington","symlink","symlinks","symmetric","symmetrical","symmetrically","symmetricalness","symmetrization","symmetrizing","symmetry","symon","sympathetic","sympathetically","sympathize","sympathized","sympathizer","sympathizing","sympathy","symphonic","symphonists","symphony","symposium","symptom","symptomatic","symptomatically","symptomatology","symptoms","sympy","syn","synagogal","synagogue","synapse","synaptic","sync","synced","synchronism","synchronization","synchronize","synchronized","synchronizer","synchronous","synchronously","synchronousness","synchrony","synchrotron","syncing","syncopate","syncopation","syncope","syndic","syndicalist","syndicate","syndrome","synergism","synergistic","synergy","synfuel","synge","synod","synonym","synonymic","synonymous","synonyms","synonymy","synopses","synopsis","synopsized","synopsizes","synopsizing","synoptic","syntactic","syntactical","syntactically","syntactics","syntax","syntaxerror","syntheses","synthesis","synthesize","synthesized","synthesizer","synthesizes","synthetic","synthetically","syphilis","syphilitic","syphilized","syphilizing","syracuse","syria","syriac","syrian","syringe","syrup","syrupy","sys","sysadmin","syscall","syscap","sysdate","syslog","system","systematic","systematical","systematics","systematization","systematize","systematized","systematizer","systematizing","systemctl","systemd","systemic","systemically","systemization","systemjs","systems","systole","systolic","syswow","sz","szilard","szymborska","t","ta","tab","tabasco","tabatha","tabb","tabbar","tabbarcontroller","tabbatha","tabbed","tabbi","tabbie","tabbing","tabbitha","tabbouleh","tabboulehs","tabby","tabcontent","tabcontrol","taber","tabernacle","tabhost","tabid","tabina","tabindex","tabitem","tabitha","tabla","tablayout","table","tablea","tableau","tableaux","tableb","tablecell","tablecloth","tablecloths","tablecolumn","tabledata","tableid","tableland","tablelayout","tablemodel","tablename","tablerow","tables","tablesorter","tablespace","tablespoon","tablespoonful","tablet","tabletop","tablets","tableview","tableviewcontroller","tableware","tabling","tabloid","taboo","tabor","tabpanel","tabriz","tabs","tabula","tabular","tabulate","tabulation","tabulator","tabview","tac","tachometer","tachometry","tachycardia","tachyon","tacit","tacitness","taciturn","taciturnity","tacitus","tack","tacker","tackiness","tackle","tackler","tackling","tacky","taco","tacoma","tact","tactful","tactfulness","tactic","tactical","tactician","tactile","tactility","tactless","tactlessness","tactual","tad","tadd","taddeo","taddeusz","tadeas","tadeo","tades","tadio","tadpole","tadzhikistan","tadzhikstan","taegu","taejon","taffeta","taffrail","taffy","taft","tag","tagalog","tagged","tagger","tagging","tagid","taglib","tagname","tagore","tags","tagus","tahiti","tahitian","tahoe","tahoma","taichung","taiga","tail","tailback","tailcoat","tailer","tailgate","tailgater","tailing","tailless","taillessness","taillight","tailor","tailpipe","tailspin","tailwind","tainan","taine","taint","tainted","taipei","tait","taite","taiwan","taiwanese","taiyuan","tajikistan","take","takeaway","taken","takeoff","takeout","takeover","taker","takes","taking","taklamakan","talbert","talbot","talc","talcked","talcking","talcum","tale","talebearer","talent","talented","talentless","taler","tali","talia","taliesin","talion","talisman","talismanic","talk","talkative","talkativeness","talked","talker","talkie","talking","talks","talky","tall","talladega","tallahassee","tallahatchie","tallahoosa","tallboy","tallchief","talley","talleyrand","tallia","tallie","tallinn","tallish","tallness","tallou","tallow","tallowy","tallulah","tally","tallyho","talmud","talmudic","talmudist","talon","talus","talya","talyah","tam","tamable","tamale","tamar","tamara","tamarack","tamarah","tamarind","tamarra","tamas","tambourine","tame","tamed","tameka","tameness","tamera","tamerlane","tami","tamika","tamiko","tamil","tamma","tammany","tammara","tammi","tammie","tammy","tamp","tampa","tampax","tamper","tampered","tamperer","tampon","tamqrah","tamra","tan","tana","tanager","tanaka","tananarive","tanbark","tancred","tandem","tandi","tandie","tandoori","tandy","taney","tang","tanganyika","tangelo","tangency","tangent","tangential","tangerine","tangibility","tangible","tangibleness","tangibly","tangier","tangle","tango","tangshan","tangy","tanhya","tani","tania","tanisha","tanitansy","tank","tankard","tanker","tankful","tann","tanned","tannenbaum","tanner","tannery","tannest","tanney","tannhuser","tannie","tannin","tanning","tanny","tansy","tantalization","tantalize","tantalized","tantalizing","tantalizingly","tantalizingness","tantalum","tantalus","tantamount","tantra","tantrum","tanya","tanzania","tanzanian","tao","taoism","taoist","tap","tapdance","tape","taped","tapeline","taper","taperer","tapestry","tapeworm","tapioca","tapir","tapped","tapper","tappet","tapping","taproom","taproot","taps","tar","tara","tarah","tarantella","tarantula","tarawa","tarazed","tarbell","tardily","tardiness","tardy","tare","target","targeted","targetentity","targetframework","targeting","targetname","targetnamespace","targetpath","targetproperty","targets","targetsdkversion","targettype","tariff","tarim","tarkington","tarmac","tarmacked","tarmacking","tarn","tarnish","tarnished","taro","tarot","tarp","tarpapered","tarpaulin","tarpon","tarra","tarragon","tarrah","tarrance","tarred","tarring","tarry","tarrytown","tarsal","tarsi","tarsus","tart","tartan","tartar","tartaric","tartary","tartness","tartuffe","taryn","tarzan","tasha","tashkent","tasia","task","taskawaiter","taskbar","tasked","taskgraph","taskid","tasklist","taskmaster","taskmistress","taskname","tasks","taskthread","tasmania","tasmanian","tass","tassel","tassellings","taste","tasted","tasteful","tastefulness","tasteless","tastelessness","taster","tastes","tastily","tastiness","tasting","tasty","tat","tatami","tatar","tate","tater","tatiana","tatiania","tatted","tatter","tatterdemalion","tattered","tatting","tattle","tattler","tattletale","tattoo","tattooer","tattooist","tatty","tatum","tau","taught","taunt","taunter","taunting","taupe","taurus","taut","tauten","tautness","tautological","tautologous","tautology","tavern","taverner","tawdrily","tawdriness","tawdry","tawney","tawny","tawnya","tawsha","tax","taxable","taxably","taxation","taxed","taxes","taxi","taxicab","taxidermist","taxidermy","taximeter","taxing","taxiway","taxonomic","taxonomically","taxonomist","taxonomy","taxpayer","taxpaying","taylor","tb","tba","tbilisi","tbl","tbn","tbody","tbs","tbsp","tc","tchaikovsky","tchar","tcl","tcp","tcpclient","tcpdf","tcs","td","tdd","tds","te","tea","teabag","teacake","teacart","teach","teachable","teacher","teachers","teaching","teacloth","teacup","teacupful","teador","teahouse","teak","teakettle","teakwood","teal","tealeaves","team","teamcity","teamid","teammate","teamname","teams","teamster","teamwork","teapot","tear","tearaway","teardown","teardrop","tearer","tearful","tearfulness","teargas","teargassed","teargassing","tearjerker","tearoom","teary","teas","teasdale","tease","teasel","teaser","teashop","teasing","teaspoon","teaspoonful","teat","teatime","tech","techcrunch","technet","technetium","technetwork","technical","technicality","technically","technicalness","technician","technicolor","technion","technique","techniques","technocracy","technocrat","technocratic","technological","technologies","technologist","technology","technophobia","technophobic","technotes","techs","tectonic","tectonically","tectonics","tecumseh","ted","tedd","tedda","teddi","teddie","teddy","tedi","tedie","tedious","tediousness","tedium","tedman","tedmund","tedra","tee","teeing","teem","teeming","teemingness","teen","teena","teenage","teenager","teeny","teenybopper","teepee","teeshirt","teeter","teeth","teethe","teether","teething","teethmarks","teetotal","teetotaler","teetotalism","tefl","teflon","tegucigalpa","teheran","tehran","teirtza","tektite","tektronix","tel","telecast","telecommunicate","telecommunication","telecommute","telecoms","teleconference","teledyne","telefunken","telegenic","telegram","telegrammed","telegramming","telegraph","telegraphic","telegraphically","telegraphist","telegraphs","telegraphy","telekineses","telekinesis","telekinetic","telemachus","telemann","telemarketer","telemarketing","telemeter","telemetric","telemetry","teleological","teleology","telepathic","telepathically","telepathy","telephone","telephonic","telephonist","telephony","telephonymanager","telephoto","telephotography","teleprinter","teleprocessing","teleprompter","telerik","telescope","telescopic","telescopically","teletext","telethon","teletype","teletypewriter","televangelism","televangelist","televise","television","televisor","televisual","telex","tell","teller","telling","tells","telltale","tellurium","tellus","telly","telnet","telomeric","telugu","tem","temblor","temerity","temp","temparray","tempdata","tempdb","tempe","temper","tempera","temperament","temperamental","temperance","temperate","temperately","temperateness","temperature","tempered","tempering","tempers","tempest","tempestuous","tempestuousness","tempfile","template","templatebinding","templated","templatefield","templates","templateurl","templating","temple","templeman","templeton","templist","tempo","tempoes","tempor","temporal","temporarily","temporariness","temporarinesses","temporary","temporize","temporizer","temporizing","temporizings","temps","tempt","temptable","temptation","tempted","tempter","tempting","temptress","tempura","tempuri","tempus","ten","tenabilities","tenability","tenable","tenableness","tenably","tenacious","tenaciousness","tenacity","tenancy","tenant","tenanted","tenantid","tenantry","tench","tend","tended","tendency","tendentious","tendentiousness","tender","tendered","tenderer","tenderest","tenderfoot","tenderhearted","tenderheartedness","tendering","tenderize","tenderizer","tenderloin","tenderly","tenderness","tending","tendinitis","tendon","tendril","tends","tenebrous","tenement","tenet","tenex","tenfold","tenn","tenneco","tenner","tennessean","tennessee","tenney","tennis","tennyson","tenochtitlan","tenon","tenor","tenpin","tens","tense","tenseness","tensile","tension","tensional","tensionless","tensions","tensity","tensor","tensorflow","tensorial","tensors","tenspot","tent","tentacle","tentative","tentativeness","tented","tenter","tenterhook","tenth","tenths","tenting","tentity","tenuity","tenuous","tenuousness","tenure","teodoor","teodor","teodora","teodorico","teodoro","tepee","tepid","tepidity","tepidness","tequila","tera","teradata","teratogenic","teratology","terbium","tercel","tercentenary","tercentennial","terence","terencio","teresa","terese","tereshkova","teresina","teresita","teressa","teri","teriann","terkel","term","termagant","termcap","termer","terminable","terminableness","terminal","terminals","terminate","terminated","terminates","terminating","termination","terminative","terminator","termini","terminological","terminology","terminus","termite","terms","tern","ternary","terpsichore","terpsichorean","terr","terra","terrace","terracing","terracotta","terraform","terrain","terramycin","terran","terrance","terrapin","terrarium","terrazzo","terre","terrel","terrell","terrence","terrestrial","terri","terrible","terribleness","terribly","terrie","terrier","terrific","terrifically","terrify","terrifying","terrijo","terrill","terrine","territorial","territoriality","territory","terror","terrorism","terrorist","terroristic","terrorize","terrorized","terrorizer","terry","terrycloth","terrye","terse","terseness","tersina","tertian","tertiary","terza","tesl","tesla","tesol","tess","tessa","tessellate","tessellation","tesseract","tesseral","tessi","tessie","tessy","test","testability","testable","testament","testamentary","testapp","testate","testator","testatrices","testatrix","testbed","testcard","testcase","testclass","testcompile","testcontroller","testdata","testdb","teste","tested","tester","testers","testes","testfile","testicle","testicular","testid","testifier","testify","testily","testimonial","testimony","testiness","testing","testis","testlist","testmethod","testname","testng","testobject","testosterone","testrunner","tests","testservice","teststring","testsuite","testtable","testuser","testy","tetanus","tetchy","tether","tethered","tethys","tetons","tetra","tetrachloride","tetracycline","tetrafluoride","tetragonal","tetrahalides","tetrahedral","tetrahedron","tetrameron","tetrameter","tetrasodium","tetravalent","teuton","teutonic","tex","texaco","texan","texas","texcoord","text","textalign","textalignment","textappearance","textappearancemedium","textarea","textblock","textbook","textbox","textboxes","textboxfor","textchanged","textcolor","textcontent","textedit","textelement","textfield","textfieldexpression","textfields","textfile","textile","textinput","textinputlayout","textlabel","textmate","texto","textron","texts","textsize","textstatus","textstyle","texttospeech","textual","textural","texture","textured","textures","textutils","textview","textviews","textwatcher","textwrapping","textwriter","tf","tfoot","tform","tfs","tg","tgt","tgz","th","thacher","thackeray","thad","thaddeus","thaddus","thadeus","thai","thailand","thain","thaine","thalami","thalamus","thales","thalia","thalidomide","thallium","thallophyte","thames","than","thane","thanh","thank","thanker","thankful","thankfuller","thankfullest","thankfulness","thankless","thanklessness","thanks","thanksgiving","thankyou","thant","thanx","thar","that","thatch","thatcher","thatching","thats","thaumaturge","thaw","thaxter","thayer","thayne","thc","the","thea","thead","theadora","theano","theater","theatergoer","theatergoing","theatric","theatrical","theatricality","theatrics","thebault","thebes","theda","thedate","thedric","thedrick","thee","theeing","theform","theft","theiler","their","theirs","theism","theist","theistic","thekla","thelist","thelma","them","themas","thematic","thematically","thematics","theme","themeoverlay","themeresource","themes","themistocles","themselves","then","thence","thenceforth","thenceforward","thenreturn","theo","theobald","theocracy","theocratic","theocritus","theodolite","theodor","theodora","theodore","theodoric","theodosia","theodosian","theodosius","theologian","theological","theologists","theology","theorem","theoretic","theoretical","theoretically","theoretician","theoretics","theories","theorist","theorization","theorize","theory","theosophic","theosophical","theosophist","theosophy","therapeutic","therapeutically","therapeutics","therapist","therapy","theravada","there","thereabout","thereafter","thereat","thereby","therefor","therefore","therefrom","therein","thereof","thereon","theres","theresa","therese","theresina","theresita","theressa","thereto","theretofore","thereunder","thereunto","thereupon","therewith","therine","therm","thermal","thermionic","thermionics","thermistor","thermo","thermocouple","thermodynamic","thermodynamical","thermodynamics","thermoelastic","thermoelectric","thermoformed","thermoforming","thermogravimetric","thermoluminescence","thermometer","thermometric","thermometry","thermonuclear","thermopile","thermoplastic","thermopower","thermos","thermosetting","thermostable","thermostat","thermostatic","thermostatically","thermostatics","thermostatted","thermostatting","theron","thesauri","thesaurus","these","theseus","thesis","thespian","thespis","thessalonian","thessalonki","thessaly","theta","thevalue","thew","they","thia","thiamine","thibaud","thibaut","thick","thicken","thickener","thickening","thicket","thickheaded","thickish","thickness","thickset","thief","thiensville","thieu","thieve","thievery","thievish","thievishness","thigh","thighbone","thighs","thimble","thimbleful","thimbu","thimphu","thin","thine","thing","thingamabob","thingamajig","things","thingy","think","thinkable","thinkableness","thinkably","thinker","thinking","thinkingly","thinks","thinned","thinner","thinness","thinnest","thinning","thinnish","thiocyanate","thiouracil","third","thirst","thirster","thirstily","thirstiness","thirsty","thirteen","thirteenths","thirtieths","thirty","this","thiscall","thistle","thistledown","thisworkbook","thither","tho","thole","thom","thoma","thomas","thomasa","thomasin","thomasina","thomasine","thomism","thomistic","thompson","thomson","thong","thor","thoracic","thorax","thorazine","thoreau","thoriate","thorin","thorium","thorn","thornburg","thorndike","thornie","thorniness","thornton","thorny","thorough","thoroughbred","thoroughfare","thoroughgoing","thoroughly","thoroughness","thorpe","thorstein","thorsten","thorvald","those","thoth","thou","though","thought","thoughtful","thoughtfully","thoughtfulness","thoughtless","thoughtlessness","thoughts","thousand","thousandfold","thousands","thousandths","thr","thrace","thracian","thrall","thralldom","thrash","thrasher","thrashing","thread","threadbare","threaded","threader","threadid","threadidx","threading","threadlike","threadlocal","threadpool","threadpoolexecutor","threads","threadstart","thready","threat","threaten","threatener","threatening","three","threefold","threepence","threepenny","threescore","threesome","threeten","threnody","thresh","thresher","threshold","threw","thrice","thrift","thriftily","thriftiness","thriftless","thrifty","thrill","thriller","thrilling","thrive","thriver","thriving","throat","throatily","throatiness","throaty","throb","throbbed","throbbing","throe","throeing","thrombi","thromboses","thrombosis","thrombotic","thrombus","throne","throneberry","throng","throttle","throttler","through","throughout","throughput","throughway","throw","throwable","throwaway","throwback","thrower","throwing","thrown","throwout","throws","thru","thrum","thrummed","thrumming","thrush","thrust","thruster","thruway","thu","thucydides","thud","thudded","thudding","thug","thuggee","thuggery","thuggish","thule","thulium","thumb","thumbnail","thumbnails","thumbs","thumbscrew","thumbtack","thump","thunder","thunderbird","thunderbolt","thunderclap","thundercloud","thunderer","thunderhead","thundering","thunderous","thundershower","thunderstorm","thunderstruck","thundery","thunk","thur","thurber","thurman","thursday","thurstan","thurston","thus","thwack","thwacker","thwart","thwarter","thx","thy","thyme","thymeleaf","thymine","thymus","thyratron","thyristor","thyroglobulin","thyroid","thyroidal","thyronine","thyrotoxic","thyrotrophic","thyrotrophin","thyrotropic","thyrotropin","thyroxine","thyself","ti","tia","tianjin","tiara","tibble","tiber","tiberius","tibet","tibetan","tibia","tibiae","tibial","tibold","tiburon","tic","tick","ticker","ticket","tickets","ticking","tickle","tickler","ticklish","ticklishness","ticks","ticktacktoe","ticktock","ticonderoga","tid","tidal","tidbit","tiddlywinks","tide","tideland","tidewater","tideway","tidily","tidiness","tidy","tidying","tidyr","tidyverse","tie","tieback","tiebold","tiebout","tiebreaker","tieck","tied","tiena","tienanmen","tientsin","tier","tierney","tiertza","ties","tif","tiff","tiffani","tiffanie","tiffany","tiffi","tiffie","tiffy","tiger","tigerish","tight","tighten","tightener","tightfisted","tightly","tightness","tightrope","tightwad","tigress","tigris","tijuana","tike","til","tilda","tilde","tildi","tildie","tildy","tile","tiled","tiler","tiles","tiling","till","tillable","tillage","tiller","tillich","tillie","tillman","tilly","tilt","tilth","tim","timber","timbering","timberland","timberline","timbre","timbrel","timbuktu","time","timebase","timed","timedelta","timediff","timeframe","timeinterval","timeit","timekeeper","timekeeping","timeless","timelessness","timeline","timeliness","timely","timeout","timeouts","timepicker","timepiece","timer","timers","timertask","times","timescale","timeseries","timeserver","timeserving","timeshare","timesheet","timespan","timestamp","timestamped","timestamps","timetable","timeunit","timeworn","timex","timezone","timezones","timi","timid","timidity","timidness","timing","timings","timmi","timmie","timmy","timofei","timon","timorous","timorousness","timoteo","timothea","timothee","timotheus","timothy","timpani","timpanist","timur","tin","tina","tincidunt","tincture","tinder","tinderbox","tine","tinfoil","ting","tinge","tingeing","tingle","tingling","tingly","tinily","tininess","tinker","tinkertoy","tinkle","tinkling","tinkly","tinned","tinner","tinnily","tinniness","tinning","tinnitus","tinny","tinplate","tinsel","tinseltown","tinsmith","tinsmiths","tint","tintcolor","tinter","tintinnabulation","tintoretto","tintype","tinware","tiny","tinyint","tinymce","tinypic","tioga","tip","tiphani","tiphanie","tiphany","tipi","tipo","tipoff","tippecanoe","tipped","tipper","tipperary","tippet","tipping","tipple","tippler","tippy","tips","tipsily","tipsiness","tipster","tipsy","tiptoe","tiptoeing","tiptop","tirade","tirana","tirane","tire","tired","tireder","tiredest","tiredness","tireless","tirelessness","tires","tiresias","tiresome","tiresomeness","tiring","tiro","tirol","tirolean","tirrell","tis","tish","tisha","tissue","tit","titan","titanate","titania","titanic","titanically","titanium","titbit","titel","titer","tithe","tither","tithing","titian","titicaca","titillate","titillating","titillation","titivate","titivation","title","titlebar","titled","titleholder","titlelabel","titles","titling","titmice","titmouse","tito","titrate","titration","titted","titter","titting","tittle","titular","titulo","titus","tizzy","tj","tk","tkey","tkinter","tko","tl","tlaloc","tlc","tld","tldr","tlingit","tls","tlsv","tm","tmodel","tmp","tmpdir","tmpl","tmux","tn","tnpk","tns","tnt","to","toad","toadstool","toady","toadyism","toarray","toast","toaster","toastmaster","toastmistress","toasty","tobacco","tobacconist","tobaggon","tobago","tobase","tobe","tobey","tobi","tobiah","tobias","tobie","tobin","tobit","tobject","toboggan","tobottomof","toby","tobye","tobytearray","toc","tocantins","toccata","tochararray","tocqueville","tocsin","tod","todataurl","todate","todatetime","today","todays","todd","toddie","toddle","toddler","toddy","todictionary","todo","todolist","todos","todouble","toe","toecap","toeclip","toefl","toehold","toeing","toenail","toendof","toequal","toffee","tofixed","tofu","tog","toga","toge","together","togetherness","togged","togging","toggle","togglebutton","toggleclass","toggled","toggler","toggles","toggling","togo","togolese","toiboid","toil","toilet","toiletry","toilette","toilsome","toilsomeness","toinette","toint","toitem","tojo","tojson","tok","tokamak","tokay","toke","token","tokenism","tokenize","tokenized","tokenizer","tokens","tokugawa","tokyo","tokyoite","toland","told","tole","toledo","toleftof","tolerability","tolerable","tolerably","tolerance","tolerant","tolerate","toleration","tolist","tolkien","toll","tollbooth","tollbooths","tolley","tollgate","tollhouse","tollway","tolower","tolowercase","tolstoy","toluene","tolyatti","tom","toma","tomahawk","tomasina","tomasine","tomaso","tomato","tomatoes","tomb","tombaugh","tombigbee","tomblike","tombola","tomboy","tomboyish","tombstone","tomcat","tomcatted","tomcatting","tome","tomfool","tomfoolery","tomi","tomkin","tomlin","tommed","tommi","tommie","tomming","tommy","tomographic","tomography","tomorrow","tompkins","tomsk","tomtit","ton","tonal","tonality","tone","tonearm","toneless","tonelessness","toner","tong","tonga","tongan","tongue","tongueless","tonguing","toni","tonia","tonic","tonie","tonight","tonio","tonk","tonnage","tonne","tonnie","tons","tonsil","tonsillectomy","tonsillitis","tonsorial","tonsure","tonto","tony","tonya","tonye","too","toodle","took","tool","toolbar","toolbox","toolchain","toolchains","tooler","tooling","toolkit","toolkits","toolmake","toolmaker","toolmaking","tools","toolset","toolsmith","tooltip","tooltips","toomey","toot","tooter","tooth","toothache","toothbrush","toothily","toothless","toothmarks","toothpaste","toothpick","tooths","toothsome","toothy","tootle","toots","tootsie","tootsy","top","topaz","topbar","topcoat","topdressing","topeka","toper","topflight","topgallant","topiary","topic","topical","topicality","topics","topknot","topleft","topless","toplevel","topmast","topmost","topnav","topnotch","topocentric","topographer","topographic","topographical","topography","topological","topologist","topology","topped","topper","topping","topple","topsail","topside","topsoil","topspin","topsy","toque","tor","torah","torahs","torch","torchbearer","torchlight","tore","toreador","torey","tori","torie","torightof","torin","torment","tormenting","tormentor","torn","tornado","tornadoes","toroid","toroidal","toronto","torpedo","torpedoes","torpid","torpidity","torpor","torque","torquemada","torr","torrance","torre","torrence","torrens","torrent","torrential","torrey","torricelli","torrid","torridity","torridness","torrie","torrin","torry","tors","torsi","torsion","torsional","torsions","torso","tort","torte","tortellini","torten","tortilla","tortoise","tortoiseshell","tortoisesvn","tortola","tortoni","tortor","tortuga","tortuous","tortuousness","torture","torturous","torus","tory","tos","tosca","toscanini","toshiba","toss","tossup","tostartof","tostring","tot","totable","total","totalamount","totalcount","totaler","totalistic","totalitarian","totalitarianism","totality","totalizator","totalizing","totally","totalprice","totals","totaltime","tote","totem","totemic","toter","toting","toto","totopof","totted","totter","totterer","tottering","totting","toucan","touch","touchable","touchableopacity","touchdown","touched","toucher","touches","touchesbegan","touchily","touchiness","touching","touchline","touchscreen","touchstart","touchstone","touchy","tough","toughen","toughener","toughness","toughs","toulouse","toupee","toupper","touppercase","tour","toured","tourer","touring","tourism","tourist","touristic","touristy","tourmaline","tournament","tourney","tourniquet","tours","tousle","tout","touter","tova","tove","tow","toward","towardliness","towardly","towards","towboat","towel","towelette","toweling","tower","towering","towhead","towhee","towline","town","towner","townes","towney","townhouse","townie","townley","townsend","townsfolk","township","townsman","townsmen","townspeople","townswoman","townswomen","towny","towpath","towpaths","towrope","towsley","toxemia","toxic","toxicity","toxicological","toxicologist","toxicology","toxin","toy","toyer","toymaker","toynbee","toyoda","toyota","toys","toyshop","tp","tpl","tq","tr","trac","trace","traceability","traceable","traceableness","traceback","traced","tracee","traceless","tracepoint","tracer","tracery","traces","tracey","trachea","tracheae","tracheal","tracheotomy","traci","tracie","tracing","track","trackage","trackball","trackbed","tracked","tracker","tracking","trackless","tracks","tracksuit","tract","tractability","tractable","tractably","tractarians","traction","tractive","tractor","tracts","tracy","trade","trademark","tradeoff","trader","trades","tradesman","tradesmen","tradespeople","tradespersons","tradeswoman","tradeswomen","trading","tradition","traditional","traditionalism","traditionalist","traditionalistic","traditionalized","traditionally","traduce","traefik","trafalgar","traffic","trafficked","trafficker","trafficking","tragedian","tragedienne","tragedy","tragic","tragically","tragicomedy","tragicomic","trail","trailblazer","trailblazing","trailer","trailing","trails","trailside","train","trainable","trained","trainee","traineeships","trainer","training","trainman","trainmen","trains","trainspotter","traipse","trait","traitor","traitorous","traits","trajan","trajectory","tram","trammed","trammel","trammeled","tramming","tramp","trample","trampler","trampoline","tramway","tran","trance","tranche","tranquil","tranquility","tranquilize","tranquilized","tranquilizer","tranquilizes","tranquilizing","tranquillize","tranquillizer","tranquilness","trans","transact","transaction","transactional","transactionid","transactionmanager","transactions","transactionscope","transactor","transalpine","transaminase","transatlantic","transcaucasia","transceiver","transcend","transcendence","transcendent","transcendental","transcendentalism","transcendentalist","transclude","transconductance","transcontinental","transcribe","transcriber","transcript","transcription","transcultural","transducer","transduction","transect","transept","transfer","transferability","transferal","transferee","transference","transferor","transferral","transferred","transferrer","transferring","transfers","transfiguration","transfigure","transfinite","transfix","transform","transformation","transformational","transformations","transformed","transformer","transformers","transforming","transforms","transfuse","transfusion","transgress","transgression","transgressor","transience","transiency","transient","transistor","transistorize","transit","transite","transition","transitional","transitions","transitive","transitiveness","transitivenesses","transitivity","transitoriness","transitory","transl","translatability","translatable","translate","translated","translates","translatesautoresizingmaskintoconstraints","translatex","translatey","translatez","translating","translation","translational","translations","translator","transliterate","translucence","translucency","translucent","transmigrate","transmissible","transmission","transmissive","transmit","transmittable","transmittal","transmittance","transmitted","transmitter","transmitting","transmogrification","transmogrify","transmutation","transmute","transnational","transoceanic","transom","transonic","transpacific","transparency","transparent","transparentness","transpiration","transpire","transplant","transplantation","transpolar","transponder","transport","transportability","transportable","transportation","transports","transpose","transposed","transposition","transputer","transsexual","transsexualism","transship","transshipment","transshipped","transshipping","transubstantiation","transvaal","transversal","transverse","transvestism","transvestite","transvestitism","transylvania","trap","trapdoor","trapeze","trapezium","trapezoid","trapezoidal","trappable","trapped","trapper","trapping","trappist","trapshooting","trash","trashcan","trashiness","trashy","trastevere","trauma","traumatic","traumatically","traumatize","travail","travel","traveled","traveler","traveling","travelog","travelogue","traver","traversal","traverse","traverser","traversing","travertine","travesty","travis","travus","trawl","trawler","tray","treacherous","treacherousness","treachery","treacle","treacly","tread","treader","treadle","treadmill","treadwell","treas","treason","treasonous","treasure","treasurer","treasurership","treasury","treat","treatable","treated","treater","treating","treatise","treatment","treats","treaty","treble","treblinka","tree","treeing","treeless","treelike","treemap","treenode","trees","treeset","treetop","treeview","treeviewitem","trefoil","trefor","trek","trekked","trekker","trekkie","trekking","trellis","tremain","tremaine","trematode","tremayne","tremble","trembler","trembles","trembly","tremendous","tremendousness","tremolo","tremor","tremulous","tremulousness","trench","trenchancy","trenchant","trencher","trencherman","trenchermen","trend","trendily","trendiness","trends","trendy","trenna","trent","trenton","trepanned","trepidation","tresa","trescha","trespass","trespasser","tress","tressa","tressed","tresses","tressing","trestle","tresult","trev","trevar","trevelyan","trever","trevino","trevor","trey","tri","triable","triableness","triad","triadic","triage","trial","trialization","trialled","trialling","trials","triamcinolone","triangle","triangles","triangulable","triangular","triangularization","triangulate","triangulation","triangulum","trianon","triassic","triathlon","triatomic","tribal","tribalism","tribe","tribesman","tribesmen","tribeswoman","tribeswomen","tribulate","tribulation","tribunal","tribune","tributary","tribute","trice","tricentennial","triceps","triceratops","trichina","trichinae","trichinoses","trichinosis","trichloroacetic","trichloroethane","trichotomy","trichromatic","tricia","trick","trickery","trickily","trickiness","trickle","tricks","trickster","tricky","tricolor","tricycle","trident","tridiagonal","trie","tried","triennial","trier","tries","trieste","triffid","trifle","trifler","trifluoride","trifocals","trig","trigged","trigger","triggered","triggering","triggers","triggest","trigging","triglyceride","trigonal","trigonometric","trigonometrical","trigonometry","trigram","trihedral","trike","trilateral","trilby","trilingual","trill","trillion","trillionth","trillionths","trillium","trilobite","trilogy","trim","trimaran","trimble","trimer","trimester","trimmed","trimmer","trimmest","trimming","trimness","trimodal","trimonthly","trimurti","trina","trinidad","trinitarian","trinitrotoluene","trinity","trinket","trinketer","trio","triode","trioxide","trip","tripartite","tripartition","tripe","triphenylarsine","triphenylphosphine","triphenylstibine","triphosphopyridine","triple","triplet","triplex","triplicate","triplication","triply","tripod","tripodal","tripoli","tripolyphosphate","tripos","tripp","trippe","tripped","tripper","tripping","trips","triptych","triptychs","tripwire","trireme","tris","trisect","trisection","trisector","trish","trisha","trisodium","trista","tristam","tristan","tristate","tristique","trisyllable","trite","tritely","triteness","tritium","triton","triumph","triumphal","triumphalism","triumphant","triumphs","triumvir","triumvirate","triune","trivalent","trivet","trivia","trivial","triviality","trivialization","trivialize","trivially","trivium","trix","trixi","trixie","trixy","trobriand","trochaic","trochee","trod","trodden","trodes","troff","troglodyte","troika","trojan","troll","trolled","trolley","trolleybus","trolling","trollish","trollop","trollope","trolly","trombone","trombonist","tromp","trondheim","troop","trooper","troopship","trope","tropez","trophic","trophy","tropic","tropical","tropism","tropocollagen","troposphere","tropospheric","trot","troth","troths","trotsky","trotted","trotter","trotting","troubadour","trouble","troubled","troublemaker","troubler","troubles","troubleshoot","troubleshooter","troubleshooting","troubleshot","troublesome","troublesomeness","trough","troughs","trounce","trouncer","troupe","trouper","trouser","trousseau","trousseaux","trout","troutman","trove","trow","trowel","troweler","troy","troyes","trstram","truancy","truant","truce","truck","truckee","trucker","trucking","truckle","truckload","truculence","truculent","truda","trude","trudeau","trudey","trudge","trudi","trudie","trudy","true","truelove","trueman","trueness","truer","truest","truetype","truffle","truism","trujillo","trula","truly","trumaine","truman","trumann","trumbull","trump","trumpery","trumpet","trumpeter","trunc","truncate","truncated","truncation","truncheon","trundle","trundler","trunk","trunnion","truss","trusser","trussing","trust","trusted","trustee","trusteeing","trusteeship","truster","trustful","trustfulness","trustiness","trusting","trusts","truststore","trustworthier","trustworthiest","trustworthiness","trustworthy","trusty","truth","truthful","truthfulness","truths","truthy","trw","trx","try","tryed","trygetvalue","trying","tryout","tryparse","trypsin","tryst","ts","tsa","tsarevich","tsarina","tsarism","tsarist","tsc","tsconfig","tsetse","tsimshian","tsiolkovsky","tsitsihar","tslint","tsource","tsp","tspan","tsql","tst","tsunami","tsunematsu","tsv","tswana","tsx","tt","ttf","ttk","ttl","tts","ttt","tty","ttys","tu","tuamotu","tuareg","tub","tuba","tubae","tubal","tubbed","tubbing","tubby","tube","tubeless","tuber","tubercle","tubercular","tuberculin","tuberculoses","tuberculosis","tuberculous","tuberose","tuberous","tubing","tubman","tubular","tubule","tuck","tucker","tuckie","tucky","tucson","tucuman","tude","tudor","tue","tuesday","tuft","tufter","tufting","tug","tugboat","tugged","tugging","tuition","tulane","tularemia","tulip","tull","tulle","tulley","tully","tulsa","tum","tumble","tumbledown","tumbler","tumbleweed","tumblr","tumbrel","tumescence","tumescent","tumid","tumidity","tummy","tumor","tumorous","tums","tumult","tumultuous","tumultuousness","tumulus","tun","tuna","tunable","tunableness","tundra","tune","tuned","tuneful","tunefulness","tuneless","tuner","tuneup","tung","tungstate","tungsten","tungus","tunguska","tunic","tuning","tunis","tunisia","tunisian","tunned","tunnel","tunneler","tunning","tunny","tup","tupelo","tupi","tuple","tuples","tuppence","tupperware","tupungato","turban","turbid","turbidity","turbinate","turbine","turbo","turbocharged","turbocharger","turbofan","turbojet","turbolinks","turboprop","turbot","turbulence","turbulent","turd","tureen","turf","turfy","turgenev","turgid","turgidity","turgidness","turin","turing","turk","turkestan","turkey","turkic","turkish","turkmenistan","turmeric","turmoil","turn","turnabout","turnaround","turnbuckle","turncoat","turned","turner","turning","turnip","turnkey","turnoff","turnout","turnover","turnpike","turnround","turns","turnstile","turnstone","turntable","turpentine","turpin","turpis","turpitude","turquoise","turret","turtle","turtleback","turtledove","turtleneck","turtles","turves","turvy","tuscaloosa","tuscan","tuscany","tuscarora","tuscon","tush","tusk","tuskegee","tusker","tussle","tussock","tussocky","tussuad","tut","tutankhamen","tutelage","tutelary","tutor","tutored","tutorial","tutorials","tutorialspoint","tutorship","tutsi","tutsplus","tutted","tutti","tutting","tuttle","tutu","tuvalu","tux","tuxedo","tv","tva","tvalue","tvs","tw","twa","twaddle","twaddler","twain","twang","twangy","twas","tweak","tweaked","tweaking","tweaks","twee","tweed","tweediness","tweedledee","tweedledum","tweedy","tween","tweepy","tweet","tweeter","tweets","tweeze","tweezer","twelfth","twelfths","twelve","twelvemonth","twelvemonths","twentieths","twenty","twerp","twice","twiddle","twiddler","twiddly","twig","twigged","twigging","twiggy","twila","twilight","twilio","twilit","twill","twin","twine","twiner","twinge","twinkie","twinkle","twinkler","twinkling","twinkly","twinned","twinning","twirl","twirler","twirling","twirly","twist","twisted","twister","twists","twisty","twit","twitch","twitchy","twitted","twitter","twitterer","twittery","twitting","twixt","two","twofer","twofold","twopence","twopenny","twosome","twoway","twp","twx","twyla","tx","txn","txt","txtbox","txtname","txtusername","ty","tybalt","tybi","tybie","tycoon","tye","tyeing","tying","tyke","tylenol","tyler","tymon","tymothy","tympani","tympanist","tympanum","tynan","tyndale","tyndall","tyne","typ","type","typeahead","typecast","typed","typedarray","typedef","typeerror","typeface","typeid","typeless","typename","typeof","types","typesafe","typescript","typeset","typesetter","typesetting","typewrite","typewriter","typewriting","typewritten","typewrote","typhoid","typhon","typhoon","typhus","typical","typicality","typically","typicalness","typification","typify","typing","typings","typist","typo","typographer","typographic","typographical","typography","typological","typology","typos","tyrannic","tyrannical","tyrannicalness","tyrannicide","tyrannize","tyrannizer","tyrannizing","tyrannosaur","tyrannosaurus","tyrannous","tyranny","tyrant","tyree","tyreo","tyro","tyrol","tyrolean","tyrone","tyrosine","tyrus","tyson","tz","tzar","tzarina","tzeltal","tzinfo","u","ua","uac","uar","uart","uaw","ub","ubangi","uber","ubiquitous","ubiquity","ubound","ubuntu","uc","ucayali","uccello","uchar","uci","ucla","ud","udale","udall","udder","udell","udf","udp","ue","uf","ufa","ufo","ufologist","ufology","ug","uganda","ugandan","ugh","ughs","uglification","uglify","ugliness","uglis","ugly","ugo","uh","uhf","ui","uialertaction","uialertcontroller","uialertview","uiapplication","uibarbuttonitem","uibezierpath","uibutton","uicollectionview","uicollectionviewcell","uicolor","uicomponent","uicontrol","uicontroleventtouchupinside","uicontrolstatenormal","uid","uidevice","uielement","uievent","uifont","uighur","uigraphicsgetcurrentcontext","uigraphicsgetimagefromcurrentimagecontext","uiimage","uiimagepickercontroller","uiimageview","uikit","uilabel","uimanager","uinavigationbar","uinavigationcontroller","uint","uipickerview","uiscreen","uiscrollview","uisearchbar","uistoryboard","uistoryboardsegue","uiswing","uitabbarcontroller","uitableview","uitableviewcell","uitableviewcontroller","uitableviewdatasource","uitableviewdelegate","uitapgesturerecognizer","uitextfield","uitextview","uitouch","uiview","uiviewcontroller","uiwebview","uiwindow","uix","ujungpandang","uk","ukase","ukraine","ukrainian","ukulele","ul","ula","ulberto","ulcer","ulcerate","ulceration","ulcerous","ulick","ulises","ulla","ullamco","ullamcorper","ullman","ulna","ulnae","ulnar","ulong","ulric","ulrica","ulrich","ulrick","ulrika","ulrikaumeko","ulrike","ulster","ult","ulterior","ultimas","ultimate","ultimately","ultimateness","ultimatum","ultimo","ultra","ultracentrifugally","ultracentrifugation","ultracentrifuge","ultraconservative","ultrafast","ultrahigh","ultralight","ultramarine","ultramodern","ultramontane","ultrashort","ultrasonic","ultrasonically","ultrasonics","ultrasound","ultrastructure","ultrasuede","ultraviolet","ultrices","ultricies","ultrix","ululate","ululation","ulyanovsk","ulysses","um","umbel","umber","umberto","umbilical","umbilici","umbilicus","umbra","umbraco","umbrage","umbrageous","umbrella","umbriel","umd","umeko","umiak","uml","umlaut","ump","umpire","umpteen","un","una","unabated","unable","unabridged","unacceptability","unacceptable","unaccepted","unaccommodating","unaccountability","unaccustomed","unadapted","unadulterated","unadventurous","unalienability","unalterable","unalterableness","unalterably","unambiguity","unambiguous","unambitious","uname","unamused","unanimity","unanimous","unanticipated","unapologetic","unapologizing","unappeasable","unappeasably","unappreciative","unary","unassailable","unassailableness","unassertive","unassuming","unassumingness","unauthorized","unavailable","unavailing","unaware","unbalanced","unbar","unbarring","unbecoming","unbeknown","unbelieving","unbiased","unbid","unbind","unblessed","unblinking","unbodied","unbolt","unbound","unbounded","unbreakability","unbred","unbroken","unbuckle","unbudging","unburnt","unc","uncap","uncapping","uncatalogued","uncaught","uncauterized","unceasing","uncelebrated","uncertain","unchallengeable","unchanged","unchanging","unchangingness","uncharacteristic","uncharismatic","unchastity","uncheck","unchecked","unchristian","uncial","uncivilized","unclassified","uncle","unclear","unclouded","uncodable","uncollected","uncolored","uncoloredness","uncombable","uncomfortable","uncomment","uncommon","uncommunicative","uncompetitive","uncomplicated","uncomprehending","uncompressed","uncompromisable","unconcern","unconcerned","unconfirmed","unconfused","unconscionable","unconscionableness","unconscionably","unconstitutional","unconsumed","uncontentious","uncontrollability","unconvertible","uncool","uncooperative","uncork","uncouple","uncouth","uncouthness","uncreate","uncritical","uncross","uncrowded","unction","unctions","unctuous","unctuousness","uncustomary","uncut","und","undated","undaunted","undeceive","undecided","undeclared","undedicated","undef","undefinability","undefined","undefinedness","undelete","undeliverability","undeniable","undeniableness","undeniably","undependable","under","underachieve","underachiever","underact","underadjusting","underage","underarm","underbedding","underbelly","underbid","underbidding","underbracing","underbrush","undercarriage","undercharge","underclass","underclassman","underclassmen","underclothes","underclothing","undercoat","undercoating","underconsumption","undercooked","undercount","undercover","undercurrent","undercut","undercutting","underdeveloped","underdevelopment","underdog","underdone","undereducated","underemphasis","underemployed","underemployment","underenumerated","underenumeration","underestimate","underexploited","underexpose","underexposure","underfed","underfeed","underfloor","underflow","underfoot","underfund","underfur","undergarment","undergirding","undergo","undergoes","undergone","undergrad","undergraduate","underground","undergrowth","undergrowths","underhand","underhanded","underhandedness","underheat","underinvestment","underlaid","underlain","underlay","underlie","underline","underling","underlip","underloaded","underly","underlying","undermanned","undermentioned","undermine","undermost","underneath","underneaths","undernourished","undernourishment","underpaid","underpants","underpart","underpass","underpay","underpayment","underperformed","underpin","underpinned","underpinning","underplay","underpopulated","underpopulation","underpowered","underpricing","underprivileged","underproduction","underrate","underregistration","underreported","underreporting","underrepresentation","underrepresented","underscore","underscores","undersea","undersealed","undersecretary","undersell","undersexed","undershirt","undershoot","undershorts","undershot","underside","undersign","undersigned","undersized","undersizes","undersizing","underskirt","undersold","underspecification","underspecified","underspend","understaffed","understand","understandability","understandable","understandably","understanding","understands","understate","understatement","understocked","understood","understrength","understructure","understudy","undertake","undertaken","undertaker","undertaking","underthings","undertone","undertook","undertow","underused","underusing","underutilization","underutilized","undervaluation","undervalue","underwater","underway","underwear","underweight","underwent","underwhelm","underwood","underworld","underwrite","underwriter","underwritten","underwrote","undeserving","undesigned","undesirable","undeviating","undialyzed","undiplomatic","undiscerning","undiscriminating","undo","undocumented","undoubted","undramatic","undramatized","undress","undrinkability","undrinkable","undroppable","undue","undulant","undulate","undulation","unearth","unearthliness","unearthly","unease","uneconomic","uneducated","unemployed","unemployment","unencroachable","unending","unendurable","unenergized","unenforced","unenterprising","unescape","unesco","unethical","uneulogized","unexacting","unexceptionably","unexcited","unexpected","unexpectedly","unexpectedness","unfading","unfailing","unfailingness","unfair","unfamiliar","unfashionable","unfathomably","unfavored","unfeeling","unfeigned","unfelt","unfeminine","unfertile","unfetchable","unfinished","unflagging","unflappability","unflappable","unflappably","unflinching","unfold","unfoldment","unforced","unforgeable","unfortunate","unfortunately","unfossilized","unfraternizing","unfrozen","unfulfillable","unfunny","unfussy","ungainliness","ungainly","ungava","ungenerous","ungentle","unglamorous","ungrammaticality","ungrudging","unguent","ungulate","unhandled","unharmonious","unharness","unhistorical","unholy","unhook","unhydrolyzed","unhygienic","uni","unibus","unicameral","unicef","unicellular","unicode","unicorn","unicycle","unicyclist","unideal","unidimensional","unidiomatic","unidirectional","unidirectionality","unidolized","unifiable","unification","unified","unifier","unifilar","uniform","uniformity","uniformness","unify","unilateral","unilateralism","unilateralist","unimodal","unimpeachably","unimportance","unimportant","unimpressive","unindustrialized","uninhibited","uninitialized","uninominal","uninstall","uninstalled","uninstalling","uninsured","unintellectual","unintended","uninteresting","uninterrupted","uninterruptedness","unintuitive","uninviting","union","unionism","unionist","unionize","unions","uniplus","unipolar","uniprocessor","uniq","uniqid","unique","uniqueid","uniqueidentifier","uniquely","uniqueness","uniroyal","unisex","unisoft","unison","unistd","unisys","unit","unitarian","unitarianism","unitary","unite","united","uniter","unitize","unitofwork","unitprice","units","unittest","unity","unityengine","univ","univac","univalent","univalve","univariate","universal","universalism","universalistic","universality","universalize","universalizer","universally","universe","universities","university","unix","unixtime","unjam","unkempt","unkind","unkink","unknightly","unknowable","unknowing","unknown","unknownhostexception","unlabored","unlace","unlearn","unless","unlike","unlikeable","unlikeliness","unlikely","unlimber","unlimited","unlink","unlist","unlit","unliterary","unload","unloaded","unlock","unlocked","unloose","unlucky","unmagnetized","unmanageably","unmanaged","unmanagedtype","unmannered","unmarshal","unmarshaller","unmask","unmeaning","unmeasured","unmeetable","unmelodious","unmemorable","unmemorialized","unmentionable","unmerciful","unmeritorious","unmethodical","unmineralized","unmissable","unmistakably","unmitigated","unmnemonic","unmobilized","unmoral","unmount","unmovable","unmoving","unnamed","unnaturalness","unnavigable","unnecessarily","unnecessary","unneeded","unnerving","unnest","uno","unobliging","unobtrusive","unoffensive","unofficial","unordered","unorganized","unorthodox","unpack","unpacked","unpacking","unpaintable","unpalatability","unpalatable","unpartizan","unpatronizing","unpeople","unperceptive","unperson","unperturbed","unphysical","unpick","unpicturesque","unpinning","unpkg","unpleasing","unploughed","unpolarized","unpopular","unpractical","unprecedented","unpredictable","unpreemphasized","unpremeditated","unpretentiousness","unprincipled","unproblematic","unproductive","unpropitious","unprovable","unproven","unprovocative","unpunctual","unqualified","unquestionable","unraisable","unravellings","unreachable","unread","unreadability","unreadable","unreal","unrealizable","unreasonable","unreasoning","unreceptive","unrecognized","unrecordable","unreflective","unregister","unrelated","unrelenting","unreliable","unremitting","unrepeatability","unrepeated","unrepentant","unreported","unrepresentative","unreproducible","unresolved","unresponsive","unrest","unrestrained","unrewarding","unriddle","unripe","unromantic","unruliness","unruly","unsafe","unsaleable","unsanitary","unsavored","unsavoriness","unseal","unsearchable","unseasonal","unseeing","unseen","unselected","unselfconscious","unselfconsciousness","unselfishness","unsellable","unsentimental","unserialize","unset","unsettled","unsettledness","unsettling","unshapely","unshaven","unshift","unshorn","unsighted","unsightliness","unsigned","unskilful","unsociability","unsociable","unsocial","unsorted","unsound","unspeakably","unspecific","unspecified","unspectacular","unspoilt","unspoke","unsporting","unstable","unstigmatized","unstilted","unstinting","unstopping","unstrapping","unstudied","unstuffy","unsubdued","unsubscribe","unsubstantial","unsubtle","unsuccessful","unsuitable","unsupported","unsupportedencodingexception","unsupportedoperationexception","unsure","unsuspecting","unswerving","unsymmetrical","unsympathetic","unsystematic","unsystematized","untactful","untalented","untaxing","unteach","untellable","untenable","untested","unthinking","until","untill","untiring","untitled","unto","untouchable","untouched","untoward","untowardness","untraceable","untrue","untrusted","untruthfulness","untwist","unukalhai","unusable","unused","unusual","unusualness","unutterable","unutterably","unvocalized","unvulcanized","unwaivering","unwanted","unwarrantable","unwarrantably","unwashed","unwearable","unwearied","unwed","unwedge","unwelcome","unwell","unwieldiness","unwieldy","unwind","unwomanly","unworkable","unworried","unwrap","unwrapping","unyielding","unyoke","unzip","up","upanishads","uparrow","upbeat","upbraid","upbring","upbringing","upc","upchuck","upcome","upcoming","upcountry","upd","updatability","updatable","update","updated","updatedat","updatepanel","updater","updates","updatesourcetrigger","updating","updike","updraft","upend","upfield","upfront","upgrade","upgradeable","upgraded","upgrades","upgrading","upheaval","upheld","uphill","uphold","upholder","upholster","upholsterer","upholstery","upi","upkeep","upland","uplander","uplift","uplifter","upload","uploaded","uploadedfile","uploader","uploadfile","uploading","uploads","upmarket","upon","upped","upper","uppercase","upperclassman","upperclassmen","uppercut","uppercutting","uppermost","upping","uppish","uppity","upraise","uprated","uprating","uprear","upright","uprightness","uprise","uprising","upriver","uproar","uproarious","uproariousness","uproot","uprooter","ups","upscale","upsert","upset","upsetting","upshot","upside","upsilon","upslope","upstage","upstairs","upstanding","upstandingness","upstart","upstate","upstream","upstroke","upsurge","upswing","upswung","uptake","upthrust","uptight","uptime","upto","upton","uptown","uptrend","upturn","upvote","upvoted","upvotes","upward","upwardness","upwards","upwelling","upwind","uq","ur","uracil","ural","urania","uranium","uranus","uranyl","urbain","urban","urbana","urbane","urbanism","urbanite","urbanity","urbanization","urbanize","urbano","urbanologist","urbanology","urbanus","urchin","urdu","urea","uremia","uremic","ureter","urethane","urethra","urethrae","urethral","urethritis","urey","urge","urgency","urgent","urger","uri","uriah","uric","uriel","urikind","urinal","urinalyses","urinalysis","urinary","urinate","urination","urine","uris","url","urlclassloader","urlconnection","urldecode","urlencode","urlencoded","urlencoder","urllib","urlopen","urlparameter","urlpatterns","urlrequest","urlrouterprovider","urls","urlsession","urlstring","urlwithstring","urn","urna","urning","urogenital","urological","urologist","urology","urquhart","ursa","ursala","ursine","ursola","urson","ursula","ursulina","ursuline","urticaria","uruguay","uruguayan","urumqi","us","usa","usability","usable","usably","usaf","usage","usages","usart","usb","usc","uscg","usd","usda","use","usec","usecase","used","usedrange","useful","usefull","usefulness","useless","uselessness","usenet","usenix","user","useragent","userbundle","usercontrol","usercontroller","userdao","userdata","userdefaults","userdetails","userdetailsservice","useremail","userfile","userform","userguide","userid","userinfo","userinput","userinteractionenabled","userlist","userlogin","usermanager","usermanual","usermodel","username","usernames","userpassword","userprofile","userrepository","userrole","users","userscontroller","userservice","usertype","uses","usg","usher","usherette","ushort","usia","using","usmc","usn","uso","usort","usp","usps","usr","uss","ussr","ustinov","usu","usual","usually","usuals","usuario","usurer","usurious","usuriousness","usurp","usurpation","usurper","usury","ut","uta","utah","utahan","utc","utcnow","ute","utensil","uteri","uterine","uterus","utf","utica","util","utile","utilitarian","utilitarianism","utilities","utility","utilization","utilize","utilizer","utilizes","utilizing","utils","utl","utm","utmost","utopia","utopian","utopianism","utrecht","utrillo","utter","utterance","uttered","utterer","utterly","uttermost","uu","uucp","uuid","uv","uvula","uvular","uw","uwp","uwsgi","ux","uxorious","uzbek","uzbekistan","uzi","v","va","vaadin","vacancy","vacant","vacantness","vacate","vacation","vacationist","vacationland","vaccinate","vaccination","vaccine","vaccinia","vaccinial","vachel","vacillate","vacillating","vacillation","vacillator","vaclav","vacua","vacuity","vacuo","vacuolate","vacuolated","vacuole","vacuolization","vacuous","vacuousness","vacuum","vader","vaduz","vagabond","vagabondage","vagarious","vagary","vagina","vaginae","vaginal","vagrancy","vagrant","vague","vagueing","vagueness","vail","vain","vainglorious","vaingloriousness","vainglory","val","valance","valaree","valaria","valarie","valdemar","valdez","vale","valeda","valediction","valedictorian","valedictory","valence","valencia","valency","valene","valenka","valentia","valentijn","valentin","valentina","valentine","valentino","valenzuela","valera","valeria","valerian","valerie","valerye","valet","valetudinarian","valetudinarianism","valgrind","valhalla","valiance","valiant","valiantness","valid","valida","validate","validated","validates","validating","validation","validationerror","validationmessagefor","validationresult","validations","validator","validators","validity","validness","validnesses","valign","valina","valise","valium","valkyrie","valle","vallejo","valletta","valley","valli","vallie","vally","valma","valois","valor","valorous","valparaiso","valry","vals","valuable","valuableness","valuables","valuably","valuate","valuation","valuator","value","valuechanged","valued","valueerror","valueeventlistener","valueforkey","valueless","valuelessness","valueof","valuer","values","valuetype","valve","valveless","valves","valvular","vamoose","vamp","vamper","vampire","van","vanadium","vance","vancouver","vanda","vandal","vandalism","vandalize","vandenberg","vanderbilt","vanderburgh","vanderpoel","vandyke","vane","vanessa","vang","vanguard","vania","vanilla","vanish","vanisher","vanishing","vanity","vanna","vanned","vanni","vannie","vanning","vanny","vanquish","vanquisher","vantage","vanuatu","vanya","vanzetti","vapid","vapidity","vapidness","vapor","vaporer","vaporing","vaporisation","vaporise","vaporization","vaporize","vaporizer","vaporous","vapory","vaquero","var","varanasi","varbinary","varchar","varese","vargas","variability","variable","variablename","variableness","variables","variably","variadic","varian","variance","variances","variant","variants","variate","variation","variational","variations","varicolored","varicose","varied","variedly","variegate","variegation","varier","varies","varietal","variety","various","varistor","varityping","varius","varlet","varmint","varname","varnish","varnished","varnisher","vars","varsity","vary","varying","vascular","vase","vasectomy","vaseline","vasili","vasily","vasomotor","vasquez","vassal","vassalage","vassar","vassili","vassily","vast","vastly","vastness","vat","vatican","vatted","vatting","vaudeville","vaudevillian","vaudois","vaughan","vaughn","vault","vaulter","vaulting","vaunt","vaunter","vax","vaxes","vazquez","vb","vba","vbcrlf","vbnewline","vbo","vbox","vbs","vbscript","vc","vcard","vcf","vcl","vcr","vcs","vd","vdt","vdu","ve","veal","vealed","vealer","veals","veblen","vec","vect","vector","vectorial","vectorization","vectorize","vectorized","vectorizing","vectors","ved","veda","vedanta","veejay","veep","veer","veering","veg","vega","vegan","vegemite","veges","vegetable","vegetarian","vegetarianism","vegetate","vegetation","vegetative","vegged","veggie","vegging","vehemence","vehemency","vehement","vehicle","vehicles","vehicula","vehicular","veil","veiling","vein","veining","vel","vela","velar","velarize","velcro","veld","veldt","velez","velit","vella","vellum","velma","velocipede","velocity","velor","velour","velsquez","velum","velveeta","velvet","velveteen","velvety","velzquez","venal","venality","venation","vend","vender","vendetta","vendible","vendor","vendors","veneer","veneerer","veneering","venenatis","venerability","venerable","venerate","veneration","venereal","venetian","venezuela","venezuelan","vengeance","vengeful","vengefulness","venial","venialness","veniam","venice","venireman","veniremen","venison","venita","venn","venom","venomous","venomousness","venous","vent","venter","ventilate","ventilated","ventilation","ventilator","ventral","ventricle","ventricular","ventriloquies","ventriloquism","ventriloquist","ventriloquy","ventura","venture","venturesome","venturesomeness","venturi","venturous","venturousness","venue","venues","venus","venusian","venv","ver","vera","veracious","veraciousness","veracities","veracity","veracruz","veradis","veranda","verandahed","verb","verbal","verbalization","verbalize","verbalized","verbalizer","verballed","verballing","verbatim","verbena","verbiage","verbose","verbosity","verboten","verbs","verdana","verdant","verde","verderer","verdi","verdict","verdigris","verdure","vere","verena","verene","verge","verger","vergil","veridical","veriee","verifiability","verifiable","verifiableness","verification","verified","verifier","verifies","verify","verifying","verifypeer","verile","verily","verina","verine","verisimilitude","veritable","veritableness","veritably","verity","verizon","verla","verlag","verlaine","vermeer","vermicelli","vermiculite","vermiform","vermilion","vermin","verminous","vermont","vermonter","vermouth","vermouths","vern","verna","vernacular","vernal","verne","vernen","verney","vernice","vernier","vernon","vernor","verona","veronese","veronica","veronika","veronike","veronique","verruca","verrucae","versa","versailles","versatec","versatile","versatileness","versatility","verse","versed","verses","versicle","versification","versifier","versify","versing","version","versioncode","versioned","versioning","versionname","versions","verso","versus","vert","vertebra","vertebrae","vertebral","vertebrate","vertebration","vertex","vertical","verticalalignment","vertically","vertices","vertiginous","vertigo","vertigoes","vertx","verve","very","vesalius","vesicle","vesicular","vesiculate","vespasian","vesper","vespucci","vessel","vest","vesta","vestal","vestibular","vestibule","vestibulum","vestige","vestigial","vesting","vestment","vestry","vestryman","vestrymen","vesture","vesuvius","vet","vetch","veter","veteran","veterinarian","veterinary","veto","vetoes","vetted","vetting","vevay","vex","vexation","vexatious","vexatiousness","vexed","vf","vfs","vfw","vfy","vg","vga","vh","vhdl","vhf","vhost","vhosts","vhs","vi","via","viability","viable","viably","viaduct","viagra","vial","viand","vibe","vibraharp","vibrancy","vibrant","vibraphone","vibraphonist","vibrate","vibration","vibrational","vibrato","vibrator","vibratory","vibrio","vibrionic","viburnum","vic","vicar","vicarage","vicarious","vicariousness","vice","viced","vicegerent","vicennial","vicente","viceregal","viceroy","vichy","vichyssoise","vicing","vicinity","vicious","viciousness","vicissitude","vick","vickers","vicki","vickie","vicksburg","vicky","victim","victimization","victimize","victimized","victimizer","victoir","victor","victoria","victorian","victorianism","victorious","victoriousness","victory","victrola","victual","victualer","vicua","vid","vida","vidal","videlicet","video","videocapture","videocassette","videoconferencing","videodisc","videodisk","videoid","videophone","videoplayer","videos","videotape","videoview","vidovic","vidovik","vie","vienna","viennese","vientiane","vier","viet","vietcong","vietminh","vietnam","vietnamese","view","viewable","viewbag","viewbox","viewchild","viewcontext","viewcontroller","viewcontrollers","viewdata","viewdidappear","viewdidload","viewed","viewer","viewers","viewfinder","viewgraph","viewgroup","viewholder","viewing","viewless","viewmodel","viewmodels","viewname","viewpager","viewpoint","viewport","viewrootimpl","views","viewstate","viewtopic","viewtype","viewwillappear","viewwithtag","vigesimal","vigil","vigilance","vigilant","vigilante","vigilantism","vigilantist","vignette","vignetter","vignetting","vignettist","vigor","vigorous","vigorousness","vii","viii","vijayawada","viki","viking","vikki","vikky","vikram","vila","vile","vilely","vileness","vilest","vilhelmina","vilification","vilifier","vilify","villa","village","villager","villain","villainous","villainousness","villainy","villarreal","ville","villein","villeinage","villi","villon","villus","vilma","vilnius","vilyui","vim","vimeo","vimrc","vin","vina","vinaigrette","vince","vincent","vincenty","vincenz","vinci","vincible","vindemiatrix","vindicate","vindication","vindicator","vindictive","vindictiveness","vine","vinegar","vinegary","vineyard","vinita","vinni","vinnie","vinny","vino","vinous","vinson","vintage","vintager","vintner","vinyl","viol","viola","violable","violante","violate","violated","violates","violating","violation","violations","violator","viole","violence","violent","violet","violetta","violette","violin","violinist","violist","violoncellist","violoncello","vip","viper","viperous","virago","viragoes","viral","vireo","virge","virgie","virgil","virgilio","virgin","virgina","virginal","virginia","virginian","virginie","virginity","virgo","virgule","virile","virility","virologist","virology","virtual","virtualbox","virtualenv","virtualenvs","virtualfilterchain","virtualhost","virtualization","virtually","virtue","virtuosity","virtuoso","virtuosoes","virtuous","virtuousness","virulence","virulent","virus","vis","visa","visage","visakhapatnam","visayans","viscera","visceral","viscid","viscoelastic","viscoelasticity","viscometer","viscose","viscosity","viscount","viscountcy","viscountess","viscous","viscousness","viscus","vise","viselike","vishnu","visibility","visible","visibly","visigoth","visigoths","vision","visionariness","visionary","visit","visitable","visitant","visitation","visited","visiting","visitor","visitors","visits","visor","vista","vistula","visual","visualization","visualize","visualized","visualizer","visualizes","visually","visualstate","visualstudio","vita","vitae","vital","vitality","vitalization","vitalize","vitamin","vite","vitia","vitiate","vitiation","viticulture","viticulturist","vitim","vito","vitoria","vitreous","vitrifaction","vitrification","vitrify","vitrine","vitriol","vitriolic","vitro","vittles","vittoria","vittorio","vituperate","vituperation","vituperative","vitus","viv","viva","vivace","vivacious","vivaciousness","vivacity","vivaldi","vivamus","vivaria","vivarium","vivaxes","vive","vivekananda","viverra","vivi","vivia","vivian","viviana","vivianna","vivianne","vivid","vividness","vivie","vivien","viviene","vivienne","vivifier","vivify","viviparous","vivisect","vivisection","vivisectional","vivisectionist","viviyan","vivo","vivyan","vivyanne","vixen","vixenish","viz","vizier","vizor","vj","vk","vl","vlad","vladamir","vladimir","vladivostok","vlc","vlf","vlookup","vlsi","vm","vms","vmware","vn","vnd","vo","voa","vocab","vocable","vocabularian","vocabularianism","vocabulary","vocal","vocalic","vocalise","vocalism","vocalist","vocalization","vocalize","vocalized","vocalizer","vocation","vocational","vocative","vociferate","vociferation","vociferous","vociferousness","vocoded","vocoder","vodka","voe","vogel","vogella","vogue","vogueing","voguish","voice","voiceband","voiced","voiceless","voicelessness","voicer","voices","voicing","void","voidable","voided","voider","voiding","voidness","voids","voil","voila","voile","voip","vol","volar","volatile","volatileness","volatility","volatilization","volatilize","volcanic","volcanically","volcanism","volcano","volcanoes","vole","volga","volgograd","volition","volitional","volitionality","volkswagen","volley","volleyball","volleyer","volleyerror","volstead","volt","volta","voltage","voltaic","voltaire","volterra","voltmeter","volubility","voluble","volubly","volume","volumes","volumetric","volumetrically","voluminous","voluminousness","voluntarily","voluntariness","voluntarism","voluntary","volunteer","voluptate","voluptuary","voluptuous","voluptuousness","volute","volutpat","volvo","vomit","von","vonda","vonnegut","vonni","vonnie","vonny","vonr","voodoo","voodooism","voracious","voraciousness","voracity","voronezh","vorster","vortex","vortices","vorticity","votary","vote","voted","voter","votes","voting","votive","vouch","voucher","vouchsafe","vow","vowel","vowelled","vowelling","vowels","vower","voyage","voyager","voyageur","voyeur","voyeurism","voyeuristic","vp","vpc","vpn","vps","vr","vs","vscode","vsts","vstudio","vt","vtable","vtk","vtol","vue","vuejs","vuex","vulcan","vulcanization","vulcanize","vulcanized","vulg","vulgar","vulgarian","vulgarism","vulgarity","vulgarization","vulgarize","vulgate","vulnerabilities","vulnerability","vulnerable","vulnerably","vulpine","vulputate","vulture","vulturelike","vulturous","vulva","vulvae","vv","vw","vx","vy","vying","vyky","w","wa","waals","wabash","wac","wacke","wackes","wackiness","wacko","wacky","waco","wad","wadded","wadding","waddle","wade","wader","wadi","wadsworth","wafer","waffle","wafs","waft","wafter","wag","wage","waged","wager","wages","wagged","waggery","wagging","waggish","waggishness","waggle","waggly","wagner","wagnerian","wagon","wagoner","wagtail","wahl","waif","waikiki","wail","wailer","wain","wainscot","wainwright","waist","waistband","waistcoat","waister","waistline","wait","waite","waited","waiter","waitfor","waiting","waitkey","waitpeople","waitperson","waitress","waits","waive","waiver","wake","wakefield","wakeful","wakefulness","waken","waker","wakeup","waksman","wal","walbridge","walcott","wald","waldemar","walden","waldensian","waldheim","waldo","waldon","waldorf","wale","wales","walesa","walford","walgreen","waling","walk","walkabout","walkaway","walker","walkie","walking","walkman","walkout","walkover","walks","walkthrough","walkway","wall","wallaby","wallace","wallache","wallah","wallas","wallboard","wallenstein","waller","wallet","walleye","wallflower","wallie","wallis","walliw","walloon","wallop","walloper","walloping","wallow","wallower","wallpaper","walls","wally","walnut","walpole","walpurgisnacht","walrus","walsh","walt","walter","walther","walton","waltz","waltzer","walworth","waly","wamp","wampum","wan","wanamaker","wand","wanda","wander","wanderer","wanderlust","wandie","wandis","wane","waneta","wang","wangle","wangler","wanids","wankel","wanna","wannabe","wanned","wanner","wanness","wannest","wanning","wansee","wansley","want","wanted","wanter","wanting","wanton","wantonness","wants","wapiti","war","warble","warbler","warbonnet","ward","warde","warden","warder","wardrobe","wardroom","wards","wardship","ware","warehouse","warehouseman","warfare","warfield","warhead","warhol","warhorse","warily","wariness","warinesses","waring","warless","warlike","warlock","warlord","warm","warmblooded","warmed","warmer","warmhearted","warmheartedness","warmish","warmness","warmonger","warmongering","warms","warmth","warmths","warn","warned","warner","warning","warnings","warnock","warp","warpaint","warpath","warpaths","warper","warplane","warrant","warranted","warranter","warranty","warred","warren","warrener","warring","warrior","wars","warsaw","warship","wart","warthog","wartime","warty","warwick","wary","was","wasatch","wash","washable","washbasin","washboard","washbowl","washburn","washcloth","washcloths","washday","washed","washer","washerwoman","washerwomen","washing","washington","washingtonian","washoe","washout","washrag","washroom","washstand","washtub","washy","wasn","wasp","waspish","waspishness","wassail","wasserman","wassermann","wast","wastage","waste","wastebasket","wasted","wasteful","wastefulness","wasteland","wastepaper","waster","wastewater","wasting","wastrel","wat","watanabe","watch","watchable","watchband","watchdog","watchdogged","watchdogging","watched","watcher","watches","watchful","watchfulness","watching","watchmake","watchmaker","watchman","watchmen","watchpoints","watchtower","watchword","water","waterbird","waterborne","waterbury","watercolor","watercolorist","watercourse","watercraft","watercress","waterer","waterfall","waterfowl","waterfront","watergate","waterhole","waterhouse","wateriness","watering","waterless","waterlily","waterline","waterlogged","waterloo","waterman","watermark","watermelon","watermill","waterproof","waters","watershed","waterside","watersider","waterspout","watertight","watertightness","watertown","waterway","waterwheel","waterworks","watery","watir","watkins","wats","watson","watt","wattage","watteau","wattenberg","watterson","wattle","watusi","waugh","waukesha","waunona","waupaca","waupun","wausau","wauwatosa","wav","wave","waveband","waveform","wavefront","waveguide","waveland","wavelength","wavelengths","wavelet","wavelike","wavenumber","waver","wavering","waverley","waverly","waves","wavily","waviness","wavy","wax","waxer","waxiness","waxwing","waxwork","waxy","way","wayfarer","wayfaring","waylaid","waylan","wayland","waylay","waylayer","wayleave","waylen","waylin","waylon","waymarked","wayne","waynesboro","waypoint","waypoints","ways","wayside","wayward","waywardness","wb","wc","wcf","wchar","wd","we","weak","weaken","weakener","weakfish","weakish","weakliness","weakling","weakly","weakness","weakreference","weal","wealth","wealthiness","wealths","wealthy","wean","weaner","weanling","weapon","weaponless","weaponry","weapons","wear","wearable","wearer","wearied","wearily","weariness","wearing","wearisome","wearisomeness","weary","wearying","weasel","weather","weatherbeaten","weathercock","weatherer","weatherford","weathering","weatherize","weatherman","weathermen","weatherperson","weatherproof","weatherstrip","weatherstripped","weatherstripping","weave","weaver","weaves","weaving","web","webapi","webapp","webappclassloader","webappcontext","webapplication","webapps","webb","webbed","webber","webbing","webbrowser","webcam","webclient","webcontainer","webcontrols","webcore","webdav","webdriver","webdriverwait","webelement","weber","webern","webexception","webfeet","webfont","webfoot","webform","webforms","webgl","webhook","webhooks","webhost","webkit","weblog","weblogic","weblogs","webm","webmaster","webmethod","webmvc","webp","webpack","webpage","webpages","webrequest","webresponse","webrick","webroot","webrtc","webserver","webservice","webservices","websettings","website","websites","websocket","websockets","websphere","webster","websterville","webstore","webstorm","webview","webviewclient","wed","wedded","weddell","wedder","wedding","wedge","wedgie","wedgwood","wedlock","wednesday","wee","weed","weeder","weediness","weedkiller","weedless","weedy","weeing","week","weekday","weekdays","weekend","weekender","weekends","weekly","weeknight","weeks","ween","weenie","weeny","weep","weeper","weepy","weevil","weft","wehr","wei","weibull","weidar","weider","weidman","weierstrass","weigh","weighed","weigher","weighs","weight","weighted","weighter","weightily","weightiness","weighting","weightless","weightlessness","weightlifter","weightlifting","weights","weightsum","weighty","weill","weinberg","weiner","weinstein","weir","weird","weirdie","weirdness","weirdo","weisenheimer","weiss","weissman","weissmuller","weizmann","weka","welbie","welby","welcher","welches","welcome","welcomed","welcomeness","welcoming","weld","welder","weldon","weldwood","welfare","welkin","well","welland","wellbeing","weller","welles","wellesley","wellhead","wellington","wellman","wellness","wells","wellspring","wellsville","welmers","welsh","welsher","welshman","welshmen","welshwoman","welshwomen","welt","welter","welterweight","wen","wench","wencher","wend","wenda","wendall","wendel","wendeline","wendell","wendi","wendie","wendy","wendye","wenona","wenonah","went","wentworth","wept","were","weren","werewolf","werewolves","werner","wernher","werror","werther","werwolf","wes","wesley","wesleyan","wessex","wesson","west","westbound","westbrook","westbrooke","westchester","wester","westerly","western","westerner","westernization","westernize","westernmost","westfield","westhampton","westing","westinghouse","westleigh","westley","westminster","westmore","weston","westphalia","westport","westward","westwood","wet","wetback","wether","wetland","wetness","wettable","wetter","wettest","wetting","weyden","weyerhauser","weylin","wezen","wf","wff","wg","wget","wh","whack","whacker","whale","whaleboat","whalebone","whalen","whaler","whaling","wham","whammed","whamming","whammy","wharf","wharton","wharves","what","whatchamacallit","whatever","whatnot","whats","whatsapp","whatsoever","whatwg","wheal","wheat","wheatgerm","wheaties","wheatland","wheaton","wheatstone","whee","wheedle","wheel","wheelbarrow","wheelbase","wheelchair","wheeler","wheelhouse","wheelie","wheeling","wheelock","wheels","wheelwright","wheeze","wheezily","wheeziness","wheezy","whelan","whelk","wheller","whelm","whelp","when","whence","whenever","whensoever","where","whereabout","whereas","whereat","whereby","wherefore","wherein","whereof","whereon","wheresoever","whereto","whereupon","wherever","wherewith","wherewithal","wherry","whet","whether","whetstone","whetted","whetting","whew","whey","which","whichever","whiff","whiffle","whiffler","whiffletree","whig","while","whilom","whilst","whim","whimmed","whimming","whimper","whimsey","whimsical","whimsicality","whimsy","whine","whining","whinny","whiny","whip","whipcord","whiplash","whippany","whipped","whipper","whippersnapper","whippet","whipping","whipple","whippletree","whippoorwill","whips","whipsaw","whir","whirl","whirligig","whirlpool","whirlwind","whirly","whirlybird","whirred","whirring","whisk","whisker","whiskery","whiskey","whisper","whisperer","whispering","whist","whistle","whistleable","whistler","whistling","whit","whitaker","whitby","whitcomb","white","whitebait","whitecap","whitecolor","whiteface","whitefield","whitefish","whitehall","whitehead","whitehorse","whiteleaf","whiteley","whitelist","whiten","whitener","whiteness","whitening","whiteout","whitespace","whitespaces","whitetail","whitewall","whitewash","whitewater","whitey","whitfield","whither","whitier","whitiest","whiting","whitish","whitley","whitlock","whitman","whitney","whitsunday","whittaker","whitter","whittier","whittle","whittler","whiz","whizkid","whizzbang","whizzed","whizzes","whizzing","whl","who","whoa","whodunit","whoever","whois","whole","wholegrain","wholehearted","wholeheartedness","wholemeal","wholeness","wholesale","wholesaler","wholesome","wholesomeness","wholewheat","wholly","whom","whomever","whomsoever","whoop","whoopee","whooper","whoosh","whop","whopper","whopping","whore","whorehouse","whoreish","whorish","whorl","whose","whoso","whosoever","why","whys","wi","wiatt","wich","wichita","wick","wicked","wickedness","wicker","wickerwork","wicket","wicketkeeper","wicking","wid","wide","widely","widemouthed","widen","widener","wideness","wider","widespread","widgeon","widget","widgets","widow","widower","widowhood","width","widths","widthwise","wieland","wield","wielder","wiemar","wiener","wienie","wier","wiesel","wife","wifeless","wifely","wifi","wifimanager","wig","wigeon","wigged","wigging","wiggins","wiggle","wiggler","wiggly","wight","wiglet","wigmaker","wigner","wigwag","wigwagged","wigwagging","wigwam","wiki","wikimedia","wikipedia","wilberforce","wilbert","wilbur","wilburn","wilburt","wilcox","wild","wilda","wildcard","wildcards","wildcat","wildcatted","wildcatter","wildcatting","wilde","wildebeest","wilden","wilder","wilderness","wildfire","wildflower","wildfly","wildfowl","wilding","wildlife","wildly","wildness","wildon","wile","wileen","wilek","wiley","wilford","wilfred","wilfredo","wilfrid","wilfulness","wilhelm","wilhelmina","wilhelmine","wilie","wilily","wiliness","wilkerson","wilkes","wilkins","wilkinson","will","willa","willabella","willamette","willamina","willard","willcox","willdon","willed","willem","willemstad","willer","willetta","willette","willey","willful","willfulness","willi","william","williamsburg","williamson","willie","willied","willies","willing","willinger","willingest","willingness","willisson","williwaw","willoughby","willow","willower","willowy","willpower","willy","willyt","wilma","wilmar","wilmer","wilmette","wilmington","wilona","wilone","wilow","wilshire","wilson","wilsonian","wilt","wilton","wily","wimbledon","wimp","wimpish","wimple","wimpy","win","winapi","wince","winch","winchell","wincher","winchester","wind","windbag","windblown","windbreak","windburn","winded","winder","windfall","windflower","windham","windhoek","windily","windiness","winding","windjammer","windlass","windless","windmill","window","windowless","windowmanager","windowpane","windows","windowsazure","windowsill","windowstate","windpipe","windproof","windrow","winds","windscreen","windshield","windsock","windsor","windstorm","windsurf","windswept","windup","windward","windy","wine","wineglass","winegrower","winehead","winemake","winemaster","winery","winesap","wineskin","winfield","winform","winforms","winfred","winfrey","winfx","wing","wingback","wingding","wingeing","winger","wingless","winglike","wingman","wingmen","wingspan","wingspread","wingtip","wini","winifield","winifred","wink","winker","winking","winkle","winless","winn","winna","winnable","winnah","winne","winnebago","winner","winners","winnetka","winni","winnie","winnifred","winning","winnipeg","winnow","winny","wino","winograd","winona","winonah","winooski","winrt","wins","winsborough","winsett","winslow","winsock","winsome","winsomeness","winston","winter","winterer","wintergreen","winterize","winters","wintertime","winthrop","wintriness","wintry","winy","wipe","wiper","wire","wired","wirehair","wireless","wireman","wiremen","wirer","wires","wireshark","wiretap","wiretapped","wiretapper","wiretapping","wiriness","wiring","wiry","wis","wisc","wisconsin","wisconsinite","wisdom","wisdoms","wise","wiseacre","wisecrack","wised","wisely","wiseness","wisenheimer","wises","wish","wishbone","wishes","wishful","wishfulness","wishlist","wishy","wising","wisp","wispy","wist","wisteria","wistful","wistfulness","wit","witch","witchcraft","witchdoctor","witchery","with","withal","withcolumn","withdraw","withdrawal","withdrawer","withdrawn","withdrawnness","withdrew","withe","wither","withering","witherspoon","withevent","withheld","withhold","withholder","withidentifier","within","withobject","without","withrowanimation","withs","withstand","withstood","withstring","witless","witlessness","witness","witnessed","witt","witted","witter","wittgenstein","witticism","wittie","wittily","wittiness","witting","wittings","witty","witwatersrand","wive","wives","wix","wiz","wizard","wizardry","wizen","wk","wkhtmltopdf","wkwebview","wl","wlan","wls","wm","wmi","wn","wnd","wndproc","wno","wnw","wo","woad","wobble","wobbler","wobbliness","wobbly","wodehouse","woe","woebegone","woeful","woefuller","woefullest","woefulness","woff","wok","woke","wolcott","wold","wolf","wolfe","wolfer","wolff","wolfgang","wolfhound","wolfie","wolfish","wolfishness","wolfram","wolfy","wollongong","wollstonecraft","wolsey","wolverhampton","wolverine","wolverton","wolves","woman","womanhood","womanish","womanize","womanized","womanizer","womanizes","womankind","womanlike","womanliness","womanly","womb","wombat","women","womenfolk","won","wonder","wondered","wonderer","wonderful","wonderfulness","wondering","wonderland","wonderment","wondrous","wondrousness","wong","wonk","wonky","wonned","wonning","wont","wonted","wontedness","woo","woocommerce","wood","woodard","woodberry","woodbine","woodblock","woodbury","woodcarver","woodcarving","woodchopper","woodchuck","woodcock","woodcraft","woodcut","woodcutter","woodcutting","wooden","woodenness","woodgrain","woodhen","woodhull","woodie","woodiness","woodland","woodlawn","woodlice","woodlot","woodlouse","woodman","woodmen","woodpecker","woodpile","woodrow","woodruff","woods","woodshed","woodshedded","woodshedding","woodside","woodsman","woodsmen","woodsmoke","woodstock","woodsy","woodward","woodwind","woodwork","woodworker","woodworking","woodworm","woody","woodyard","woof","woofer","wool","woolf","woolgather","woolgatherer","woolgathering","woolliness","woolly","woolongong","woolworth","woonsocket","wooster","wooten","woozily","wooziness","woozy","wop","worcester","worcestershire","word","wordage","wordbook","wordcount","worden","wordily","wordiness","wording","wordless","wordlist","wordplay","wordpress","words","wordsworth","wordy","wore","work","workability","workable","workableness","workably","workaday","workaholic","workaround","workarounds","workbench","workbook","workbooks","workday","workdir","worked","worker","workers","workfare","workflow","workflows","workforce","workhorse","workhouse","working","workingman","workingmen","workingwoman","workingwomen","workitem","worklight","workload","workman","workmanlike","workmanship","workmate","workmen","workout","workpiece","workplace","workroom","works","worksheet","worksheetfunction","worksheets","workshop","workspace","workspaces","workstation","worktable","worktop","workup","workweek","world","worldlier","worldliest","worldliness","worldly","worlds","worldwide","worm","wormer","wormhole","worms","wormwood","wormy","worn","worried","worrier","worries","worriment","worrisome","worry","worrying","worrywart","worse","worsen","worship","worshiper","worshipful","worshipfulness","worst","worsted","wort","worth","worthily","worthiness","worthinesses","worthington","worthless","worthlessness","worths","worthwhile","worthy","wost","wot","wotan","would","wouldn","wouldst","wound","wounded","wounder","wounding","wounds","wove","woven","wovens","wow","wozniak","wp","wparam","wpdb","wpf","wpfapplication","wpm","wr","wrack","wraith","wraiths","wrangell","wrangle","wrangler","wrap","wraparound","wrapped","wrapper","wrappers","wrapping","wraps","wrasse","wrath","wrathful","wraths","wreak","wreath","wreathe","wreaths","wreck","wreckage","wrecker","wren","wrench","wrenching","wrennie","wrest","wrester","wrestle","wrestler","wrestling","wretch","wretched","wretchedness","wriggle","wriggler","wriggly","wright","wrigley","wring","wringer","wrinkle","wrinkled","wrinkly","wrist","wristband","wristwatch","writ","writable","write","writebytes","writefile","writehead","writeline","writeln","writeobject","writer","writerow","writers","writes","writestring","writeto","writetofile","writeup","writhe","writing","written","wroclaw","wrong","wrongdoer","wrongdoing","wronger","wrongful","wrongfulness","wrongheaded","wrongheadedness","wrongly","wrongness","wronskian","wrote","wroth","wrought","wrt","wrung","wry","wryer","wryest","wryness","ws","wscript","wsdl","wsfilter","wsgi","wshttpbinding","wso","wsp","wss","wsse","wstring","wsw","wt","wtf","wu","wuhan","wurlitzer","wurst","wuss","wussy","wv","ww","wwdc","wwi","wwii","www","wwwroot","wx","wxpython","wxwidgets","wy","wyatan","wyatt","wycherley","wycliffe","wye","wyeth","wylie","wylma","wyman","wyn","wyndham","wynn","wynne","wynnie","wynny","wyo","wyoming","wyomingite","wysiwyg","x","xa","xamarin","xaml","xampp","xanadu","xanthippe","xanthus","xargs","xavier","xaviera","xaxis","xb","xbox","xc","xcode","xcopy","xd","xdata","xdebug","xdoc","xdocument","xe","xebec","xelement","xemacs","xena","xenakis","xenia","xenix","xenon","xenophobe","xenophobia","xenophobic","xenophon","xenos","xerces","xerographic","xerography","xerox","xerxes","xever","xf","xfbml","xff","xffff","xffffff","xffffffff","xhdpi","xhosa","xhr","xhtml","xhttp","xi","xian","xiaoping","xib","xii","xiii","ximenes","ximenez","ximian","xingu","xis","xiv","xix","xkcd","xl","xlab","xlabel","xlapp","xlarge","xldown","xlim","xlink","xls","xlsm","xlsx","xlup","xm","xmas","xmax","xmin","xml","xmlattribute","xmldata","xmldoc","xmldocument","xmlelement","xmlfile","xmlhttp","xmlhttprequest","xmlnode","xmlns","xmlparser","xmlreader","xmlrootelement","xmlrpc","xmlschema","xmlserializer","xmlsoap","xmlstring","xmltype","xmlwriter","xmm","xmpp","xms","xmx","xn","xna","xochipilli","xor","xp","xpath","xpos","xquery","xr","xrange","xref","xs","xscale","xsd","xsi","xsl","xslt","xsp","xss","xstream","xt","xterm","xticks","xts","xtype","xunit","xuzhou","xv","xvi","xvii","xviii","xwork","xx","xxl","xxx","xxxx","xxxxx","xxxxxx","xxxxxxx","xxxxxxxx","xxxxxxxxx","xxxxxxxxxx","xy","xylem","xylene","xylia","xylina","xylophone","xylophonist","xymenes","xyz","xz","y","ya","yacc","yacht","yachting","yachtsman","yachtsmen","yachtswoman","yachtswomen","yack","yagi","yahoo","yahweh","yak","yakima","yakked","yakking","yakut","yakutsk","yale","yalies","yalonda","yalow","yalta","yalu","yam","yamaha","yaml","yammer","yamoussoukro","yanaton","yance","yancey","yancy","yang","yangon","yangtze","yank","yankee","yaounde","yap","yapped","yapping","yaqui","yard","yardage","yardarm","yardley","yardman","yardmaster","yardmen","yardstick","yarmulke","yarn","yaroslavl","yarrow","yasmeen","yasmin","yates","yaw","yawl","yawn","yawner","yawning","yaxis","yay","yb","yc","ycombinator","yd","ydata","ye","yea","yeager","yeah","yeahs","year","yearbook","yearling","yearlong","yearly","yearn","yearner","yearning","years","yeast","yeastiness","yeasty","yeats","yecch","yegg","yehudi","yehudit","yekaterinburg","yelena","yell","yellow","yellowhammers","yellowish","yellowknife","yellowness","yellowstone","yellowy","yelp","yelper","yeltsin","yemen","yemeni","yemenite","yen","yenisei","yenned","yenning","yentl","yeoman","yeomanry","yeomen","yep","yerevan","yerkes","yes","yesenia","yeshiva","yessed","yessing","yesterday","yesteryear","yet","yeti","yetta","yettie","yetty","yevette","yevtushenko","yew","yggdrasil","yi","yiddish","yield","yielded","yielding","yields","yii","yiiframework","yikes","yin","yip","yipe","yipped","yippee","yipping","ylab","ylabel","ylim","ym","ymax","ymca","ymha","ymin","ymir","yml","ymmv","yn","ynes","ynez","yo","yoda","yodel","yodeler","yoder","yoga","yoghurt","yogi","yogurt","yoke","yoked","yokel","yokes","yoking","yoknapatawpha","yoko","yokohama","yolanda","yolande","yolane","yolanthe","yolk","yon","yonder","yong","yonkers","yore","yorgo","yorick","york","yorke","yorker","yorkshire","yorktown","yoruba","yosemite","yoshi","yoshiko","yost","you","young","younger","youngish","youngster","youngstown","your","yourapp","yourclass","yourdomain","yours","yourself","yourselves","yourtable","youth","youthful","youthfulness","youths","youtrack","youtu","yovonnda","yow","yowl","yp","ypos","ypres","ypsilanti","yr","yrs","ys","ysabel","yscale","yt","ytterbium","yttrium","yuan","yuba","yucatan","yucca","yuck","yucky","yugo","yugoslav","yugoslavia","yugoslavian","yuh","yui","yuk","yuki","yukked","yukking","yukon","yul","yule","yuletide","yulma","yum","yuma","yummy","yunnan","yup","yuppie","yuri","yurik","yurt","yuv","yves","yvette","yvon","yvonne","yvor","yw","ywca","ywha","yy","yyy","yyyy","yyyymmdd","z","za","zabrina","zaccaria","zach","zacharia","zachariah","zacharie","zachary","zacherie","zachery","zack","zackariah","zag","zagging","zagreb","zahara","zaire","zairian","zak","zambezi","zambia","zambian","zamboni","zamenhof","zamora","zan","zandra","zane","zaneta","zaniness","zanuck","zany","zanzibar","zap","zapata","zaporozhye","zappa","zapped","zapper","zapping","zara","zarah","zared","zaria","zarla","zc","ze","zea","zeal","zealand","zealot","zealotry","zealous","zealousness","zeb","zebadiah","zebedee","zebra","zebu","zebulen","zebulon","zechariah","zed","zedekiah","zedong","zeffirelli","zeiss","zeitgeist","zeke","zelda","zelig","zellerbach","zelma","zen","zena","zend","zendframework","zenger","zenia","zenith","zeniths","zennist","zeno","zephaniah","zephyr","zephyrus","zeppelin","zerk","zero","zeroed","zeroes","zeroing","zeromq","zeros","zest","zestful","zestfulness","zesty","zeta","zeugma","zeus","zf","zh","zhdanov","zhengzhou","zhivago","zhukov","zi","zia","zibo","ziegfeld","ziegler","zig","zigged","zigging","ziggy","zigzag","zigzagged","zigzagger","zigzagging","zilch","zillion","zilvia","zimbabwe","zimbabwean","zimmerman","zinc","zincked","zincking","zindex","zing","zingy","zinnia","zion","zionism","zionist","zip","zipcode","zipfile","zipped","zipper","zipping","zippy","zips","zircon","zirconium","zit","zita","zitella","zither","zk","zlib","zloty","zm","zmq","zn","zodiac","zodiacal","zoe","zola","zollie","zolly","zomba","zombi","zombie","zonal","zonda","zondra","zone","zoned","zoneddatetime","zoneid","zones","zoning","zonked","zonnya","zoo","zookeeper","zookeepers","zoological","zoologist","zoology","zoom","zoomed","zooming","zoophyte","zoophytic","zora","zorah","zorana","zorina","zorine","zorn","zoroaster","zoroastrian","zoroastrianism","zorro","zosma","zounds","zr","zrich","zs","zsazsa","zsh","zsigmondy","zu","zubenelgenubi","zubeneschamali","zucchini","zukor","zulema","zulu","zululand","zuni","zuzana","zwieback","zwingli","zworykin","zx","zxing","zydeco","zygote","zygoteinit","zygotic","zymurgy","zz","zzz"]}')},77596:e=>{"use strict";e.exports=JSON.parse('{"dictionariesSupplementaryArr":["a256","a2dpsource","aabb","aafwk","abilityname","abilityslice","abnormally","accelerates","accents","accommodates","aces","acmmax","acn","acquires","activates","actived","adapts","adblock","adcp","adjusts","adpu","adts","advertisements","aec","affinities","agrees","aiding","aifc","alerting","algrithom","aligns","allowlist","alpha","alpn","alpnprotocols","alterase","alternating","altitudes","amb","ambisonic","ambisonics","amr","animatable","annually","antialias","antialiasing","apdu","apecified","apertures","appselect","arcs","arfcn","arkui","arrarybuffer","arraybuffer","arrlist","ashmem","askpass","asr","associating","asy","asyn","asynchronized","atime","atio","atomicservice","atqa","attaches","attachment0","attackers","attribs","audios","authenticates","authinfo","authmode","autocorrect","autosizing","averr","avoidareachange","avrcp","avscreencapture","avsession","backforwardcache","backgrounding","backpress","backs","base64","bassboost","batching","beidou","beta1","bevels","bgra","bidirectionally","bitrates","blending","blendmode","blocklist","bms","bolder","bonded","bonding","booted","brightens","brighter","brightest","browsable","bscribes","bsic","bssid","bufferfi","bufferfv","bufferiv","bufferqueue","bufferuiv","bundlename","bundlestat","buttonconfig","bypassed","bypassing","bytrace","callbackfn","camped","canceling","cancelling","cancels","capabilitys","capturers","ccm","cdma","ce","certsign","cfa","cfb","cft","channeldown","channelup","checkboxgroup","checksum","chload","chromaticities","chromaticity","chrominance","circled","clamped","clamps","cleartext","clouddata","cloudfile","coincides","collaborated","collapses","collations","collectable","colno","colorfilter","commonevent","complied","complies","compositing","compresses","concatenates","cone","conferencing","confpersist","connectable","consecutively","contentful","contex","controlpanel","controlparam","convertxml","cpid","cpuprofiler","cpx","cpy","creatable","crl","crls","crops","crosshair","crossings","crowdtest","crowdtested","crowdtesting","csh","cubemap","cug","cyclewindows","cyclically","daltonization","darkens","darkest","dataability","datareceive","dataresubmissionhandler","datashare","datasync","dbm","dci","ddmp","de","deactivated","deactivates","deactivation","decodes","decomposed","decompressed","decompresses","decompressing","decompression","decr","decrypts","defaulted","delegator","deletable","deletefile","denormalization","denormalize","denormalized","densitys","deregistered","deregisters","deselected","designative","desynchronized","detaches","detaching","detents","developtools","devicemanager","dfactor","dfx","dialling","differed","digidesign","digitized","dimbehind","dirent","dirxml","disables","disallowed","disallowing","disallowlist","disallows","discards","discharging","disconnecting","disconnection","disconnects","discription","dismissal","dismissing","dispatches","displacement","dlna","dlp","dnd","dng","dnses","donot","dop","downlink","downmix","dpad","dragbar","drains","drawbuffer","drm","dsda","dsds","dsf","dtmf","ducked","ducking","earfcn","earphones","earpiece","easylist","ebu","ece","edr","efuse","efx","egid","ehrpd","ejectclosecd","emphasized","emption","encapsulates","encipherment","encloses","encompassed","encrypts","endc","endx","endy","enhancing","enqueued","enrolled","enrolls","enumeratable","equirectangular","erasing","eration","errcode","erver","esim","ethiopic","ets","euc","euid","evdo","evenodd","evicted","excepted","exempted","extention","f1","fatally","faultlog","faultlogger","fchmod","fchown","fdatasync","fdn","fdopen","fileio","fileshare","fillets","finer","flac","flashpix","flg","flips","flushes","foiling","foldable","followx","foregrounding","formatable","formulat","forwardmail","fov","freesize","fstat","fsync","ftruncate","fts","fulfills","fuma","furse","gamepad","gba","gbk","geofence","geofences","getunfilteredlinkurl","glasses","glonass","gnss","goaway","granting","graphicseditor","greate","gtc","gunzip","gz_headerp","gzbuffer","gzclearerr","gzclose","gzcloser","gzclosew","gzcompress","gzdirect","gzdopen","gzeof","gzerror","gzflush","gzfread","gzfwrite","gzgetc","gzgets","gzoffset","gzopen","gzopenw","gzprintf","gzputc","gzputs","gzread","gzrewind","gzseek","gzsetparams","gztell","gzungetc","gzwrite","hailing","handheld","handhold","handsfree","handsfreeunit","hanguel","hangups","hanja","hankaku","hapmodule","haps","haptic","haptics","hce","hcrc","hdcp","hdoc","headed","headerp","headersreceive","headphones","heapsnapshot","heating","heavier","henkan","hevc","hexadecagonal","hfp","hibernates","hibernating","hichecker","hidebug","hierarchically","hifi","hilog","hinote","hinting","hisysevent","hitrace","hiview","hiviewdfx","hkdf","hlg","hogp","hsp","hspa","hspap","htmltext","huks","hwid","icann","icq","id","idm","ifaces","illuminated","ima","imager","imagevideo","imclient","imengine","immersive","imms","improperly","ims","imsi","inactived","inactivity","inclusiza","inconsistency","indata","indcating","ineffective","injects","ino","inputer","inputers","inputevent","inputmethod","inputmethodengine","inquired","inspected","inspectors","instanced","intercepted","intercepting","interchanged","interleaved","internalformat","internationalized","interpolating","interpolatingSpring","interpolator","interworking","invalidates","ipaddr","ipsec","irnss","irradiance","isdn","isim","issuers","ivi","iwlan","jank","jfx","jis","judged","kaihong","kbdillum","kbdinputassist","kbps","kdf","keyframe","keyguard","keyof","keyusage","khronos","kneading","kvpairs","kvstore","lable","lacked","lanes","lasted","lastmode","latitudeyyy","latitudezzz","latn","layoutable","lbitfield","lboolean","lbyte","lchown","lclampf","ldpi","lenum","leye","lfloat","libraryname","lifted","lifts","lightens","lightupEffect","linearly","lintptr","listened","llbackfn","locates","lockdown","lockscreen","lod","loggable","logoff","longitudinally","lowercased","lpx","lru","lseek","lshort","lsizei","lsizeiptr","lstat","lubyte","luint","luma","lumination","lushort","lux","mah","malham","map","mcc","md5","mdns","mdnserror","mediaquery","meid","meshes","messageerror","metered","metering","mgf","mgf1","mifare","minibar","minimizing","minors","minorsmode","mirrored","misconfigured","mismatches","missions","mkdtemp","mmax","mmi","mmicode","mnc","mnote","moderately","moitor","moov","mori","mplink","mschap","msdos","msdp","mserr","msn","mtp","muhenkan","multifrequency","multimodal","multiplies","multisample","multisim","multitask","mutates","mutes","narrowband","navigations","nci","ndef","neglects","negotiated","neighborhoods","netmask","nets","nextgroup","nitems","nlink","nmea","nnrt","nnrtdevice","no_gzcompress","nodownload","nofullscreen","nopadding","noremoteplayback","normalizer","notifies","notifying","nprintf","numpad","nvalidates","nweb","oaep","obscured","ocsp","ofb","offhook","offscreen","omapi","oncancel","ondataresubmission","ondataresubmitted","onexit","onfinish","onframe","onmessageerror","onrepeat","oob","oobinline","opendocument","openexr","openharmony","opentype","openvpn","oper","operated","operatorconfigs","opkey","opl","opname","option","opto","originating","osd","ota","ott","ounted","outlines","overheated","overlimit","overline","ovpn","owningproperties","ows","oximeter","p2p","paddings","paginated","paramcheck","parameterf","parameteri","paren","parseinfo","participating","passpoint","pastedata","patchlevel","pbap","pbo","pda","pdu","peap","persion","persistable","persistently","perso","personalisation","pertaining","pfa","pfb","pgo","phonemes","photographing","phy","pickers","pixelmap","pkzip","pkzip_bug_workaround","playpause","playstate","plmn","plurals","plusminus","pmm","pnn","pobox","polylines","pooled","ppid","pread","precisiontype","precomposed","precomposited","precon","preconnect","preconnectable","preconnected","preconnecting","preempted","preexisting","preferentially","prefetched","prefetcher","prefetches","prefetching","preinstalled","prelaunch","preloads","premises","premultiplied","premultiply","prepares","preresolve","presentationml","presently","presistent","prevgroup","previewed","prikey","primaries","proactively","prohibits","promisify","provisioned","proxyed","psc","psec","psk","psrc","pss","pssh","puk","pvr","quant","querier","queriers","qzss","racing","radiuses","rasterizer","rawfile","rdb","rdev","reallocate","reassociate","rebounds","recalculated","reclaimed","reconfiguration","reconfirm","reconfirmed","recovered","recovering","recovers","recursions","redefines","redirections","reenter","refill","refresher","refusing","rehandshake","rejects","relocation","remidner","remotedevice","removable","renderbuffer","renderbuffertarget","renegotiation","repaired","repayment","repeates","replacer","reposition","rerouting","resfile","resizeable","resmgr","resourceschedule","restores","restricts","resubmission","resubmitted","resultsets","resumed","retried","reverses","revocation","revoked","rewinding","reye","rfcomm","rfid","rfkill","ringtone","ringtones","rle","rmdir","rotatable","rscp","rsrp","rtcp","rtd","rtt","ruim","ruleset","rwt","s5","sac","sae","sak","sandboxes","sar","satellites","sbas","sbc","scdma","scene","sco","scrambling","screencapture","screenlock","screenoff","screensaver","scrolldown","scrollup","sdpi","sdr","searchsetter","sece","secinfo","securityguard","seeked","semicircles","sendable","sensing","sequenceable","setsockopt","settingsdata","seventh","sfactor","sgi","sha1","shadertype","sharedarraybuffer","shenzhen","shortkey","showcounter","shrinks","shuts","sigalgs","silenced","singly","skews","slidable","sliderstyle","sm3","smil","smpte","smsc","snoozing","snorm","snr","socid","softer","sonification","sortings","spatialization","spawns","spay","spdy","speakerphone","specificed","speedratings","spellcheck","spn","spooler","spp","spreadsheetml","springs","spry","spy","srgb","ssp","stablization","statfs","statvfs","stk","stopcd","storei","storge","str","strikethrough","strm","stroked","strokes","structurally","stuffit","subassembies","subassemblies","subcomponents","subframe","subframes","subkeys","subnode","subpixel","subresource","subscrbers","subscribale","subscribes","subsec","substate","subtitles","subtypes","subwindow","subwindows","superimposed","suscriber","suscribes","suspending","suspends","swanctl","switchvideomode","symantec","symbolglyph","synched","synchronizes","synchronizing","synth","syscreen","sysevent","sysex","sysrq","systemapp","systembar","systemsize","systemui","tailoring","talkback","taskmanager","taskpool","tbla","tcpnodelay","tdm","tdscdma","telecom","tethering","texel","textarget","textblob","textclock","texttimer","tga","thirdparty","throttled","timeinterfaceimpl","tlsv12","tlsv13","tnf","tones","totalsize","touchpad","trackinfo","tranlisterated","transcode","transferable","transfunc","transliterated","transliterator","transpilation","trashed","traversed","traverses","truncates","trustlist","tsbundle","ttls","tunneled","txpower","uarfcn","ubset","ucs","udid","uids","uint8","uint8arr","uitest","umalqura","unadjustable","unapply","unassigned","unauth","unbinding","unblock","unblocking","unbond","uncalibrated","uncategorized","uncatergorized","uncertainty","unchained","unchangeable","unclearable","uncompress","unconditional","undefer","undisturbed","unduck","unducked","unequal","unfiltered","unfocusable","unfocused","unhealthy","unhold","unicom","unicon","uniform1ui","uniforms","unimplemented","uninit","uninitialize","uninitializes","uninstallation","uninstalls","unlinked","unlocking","unlocks","unmap","unmapping","unmarshalling","unmountable","unmounted","unmute","unmuted","unmutes","unobserve","unperceivable","unpipe","unpremultiplied","unprepare","unpressed","unregistered","unregistering","unregisters","unremovable","unrendered","unrestricted","unrevoked","unsecure","unsent","unshare","unspec","unsubscribes","unsuccessfully","unsupport","unsuspended","untyped","uplink","useriam","userspace","usim","ussd","utd","utilized","utimes","uuids","uwb","v9","varyings","vibrates","vibrating","viewframe","vlr","voicemail","voidpf","volte","volumemanager","vorbis","vpr","vss","vsync","wakes","waking","wallpapers","wantagent","wapi","wappush","warmup","watchers","waterflow","wcdma","wcdmn","weakmap","weakset","wearables","weighing","wep","wideband","wifiext","wimax","wireframe","wma","wmp","wmv","wmx","wordprocessingml","wordprocessor","workscheduler","woy","wrappedvalue","writemask","writev","wukong","wvx","wwan","x25519","x509","xbitmap","xcomponent","xfer","xflags","xldpi","xoffset","xxldpi","xxxldpi","ycbcr","ycrcb","yoffset","zenkaku","zfail","zoffset","zoomin","zoomout","zoomreset","zooms","zpass"]}')},93460:e=>{"use strict";e.exports=JSON.parse('[{"badWord":"option","suggestion":"options","ignore":["options","optionMode","_OPTION_"]}]')},289:e=>{"use strict";e.exports=JSON.parse('[{"word":"ability","files":[".*d.ts$"]}]')},85311:e=>{"use strict";e.exports=JSON.parse('{"module":{"package":"ohos.global.systemres","name":"entry","type":"entry","generateBuildHash":true,"deviceTypes":["default","tv","car","wearable","tablet","2in1"],"deliveryWithInstall":true,"installationFree":false,"definePermissions":[{"name":"ohos.permission.ANSWER_CALL","grantMode":"user_grant","since":9,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_answer_call","description":"$string:ohos_desc_answer_call"},{"name":"ohos.permission.USE_BLUETOOTH","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DISCOVER_BLUETOOTH","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_BLUETOOTH","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_BLUETOOTH","grantMode":"user_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false,"label":"$string:ohos_lab_access_bluetooth","description":"$string:ohos_desc_access_bluetooth"},{"name":"ohos.permission.GET_BLUETOOTH_LOCAL_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_BLUETOOTH_PEERS_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERNET","grantMode":"system_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_internet","description":"$string:ohos_desc_internet"},{"name":"ohos.permission.MODIFY_AUDIO_SETTINGS","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_modify_audio_settings","description":"$string:ohos_desc_modify_audio_settings"},{"name":"ohos.permission.ACCESS_NOTIFICATION_POLICY","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.READ_CALENDAR","grantMode":"user_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_calendar","description":"$string:ohos_desc_read_calendar"},{"name":"ohos.permission.READ_CALL_LOG","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_call_log","description":"$string:ohos_desc_read_call_log"},{"name":"ohos.permission.READ_CELL_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_cell_messages","description":"$string:ohos_desc_read_cell_messages"},{"name":"ohos.permission.READ_CONTACTS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_contacts","description":"$string:ohos_desc_read_contacts"},{"name":"ohos.permission.GET_TELEPHONY_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_telephony_state","description":"$string:ohos_desc_get_telephony_state"},{"name":"ohos.permission.GET_PHONE_NUMBERS","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_phone_numbers","description":"$string:ohos_desc_get_phone_numbers"},{"name":"ohos.permission.READ_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_messages","description":"$string:ohos_desc_read_messages"},{"name":"ohos.permission.RECEIVE_MMS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_receive_mms","description":"$string:ohos_desc_receive_mms"},{"name":"ohos.permission.RECEIVE_SMS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_receive_sms","description":"$string:ohos_desc_receive_sms"},{"name":"ohos.permission.RECEIVE_WAP_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_receive_wap_messages","description":"$string:ohos_desc_receive_wap_messages"},{"name":"ohos.permission.MICROPHONE","grantMode":"user_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_microphone","description":"$string:ohos_desc_microphone"},{"name":"ohos.permission.SEND_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_send_messages","description":"$string:ohos_desc_send_messages"},{"name":"ohos.permission.WRITE_CALENDAR","grantMode":"user_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_calendar","description":"$string:ohos_desc_write_calendar"},{"name":"ohos.permission.WRITE_CALL_LOG","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_call_log","description":"$string:ohos_desc_write_call_log"},{"name":"ohos.permission.WRITE_CONTACTS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_contacts","description":"$string:ohos_desc_write_contacts"},{"name":"ohos.permission.DISTRIBUTED_DATASYNC","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_distributed_datasync","description":"$string:ohos_desc_distributed_datasync"},{"name":"ohos.permission.DISTRIBUTED_SOFTBUS_CENTER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":true},{"name":"ohos.permission.MANAGE_VOICEMAIL","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_manage_voicemail","description":"$string:ohos_desc_manage_voicemail"},{"name":"ohos.permission.REQUIRE_FORM","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.AGENT_REQUIRE_FORM","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.LOCATION_IN_BACKGROUND","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false,"label":"$string:ohos_lab_location_in_background","description":"$string:ohos_desc_location_in_background"},{"name":"ohos.permission.LOCATION","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_location","description":"$string:ohos_desc_location"},{"name":"ohos.permission.APPROXIMATELY_LOCATION","grantMode":"user_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":true,"label":"$string:ohos_lab_approximately_location","description":"$string:ohos_desc_approximately_location"},{"name":"ohos.permission.MEDIA_LOCATION","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_media_location","description":"$string:ohos_desc_media_location"},{"name":"ohos.permission.GET_NETWORK_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_network_info","description":"$string:ohos_desc_get_network_info"},{"name":"ohos.permission.PLACE_CALL","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_place_call","description":"$string:ohos_desc_place_call"},{"name":"ohos.permission.CAMERA","grantMode":"user_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_camera","description":"$string:ohos_desc_camera"},{"name":"ohos.permission.SET_NETWORK_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_network_info","description":"$string:ohos_desc_set_network_info"},{"name":"ohos.permission.REMOVE_CACHE_FILES","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_MEDIA","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_read_media","description":"$string:ohos_desc_read_media"},{"name":"ohos.permission.REBOOT","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUNNING_LOCK","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_MEDIA","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_write_media","description":"$string:ohos_desc_write_media"},{"name":"ohos.permission.SET_TIME","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_time","description":"$string:ohos_desc_set_time"},{"name":"ohos.permission.SET_TIME_ZONE","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_time_zone","description":"$string:ohos_desc_set_time_zone"},{"name":"ohos.permission.DOWNLOAD_SESSION_MANAGER","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_download_session_manager","description":"$string:ohos_desc_download_session_manager"},{"name":"ohos.permission.COMMONEVENT_STICKY","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_commonevent_sticky","description":"$string:ohos_desc_commonevent_sticky"},{"name":"ohos.permission.SYSTEM_FLOAT_WINDOW","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PRIVACY_WINDOW","grantMode":"system_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.POWER_MANAGER","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REFRESH_USER_ACTION","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.POWER_OPTIMIZATION","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REBOOT_RECOVERY","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_LOCAL_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_manage_local_accounts","description":"$string:ohos_desc_manage_local_accounts"},{"name":"ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_interact_across_local_accounts","description":"$string:ohos_desc_interact_across_local_accounts"},{"name":"ohos.permission.VIBRATE","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_vibrate","description":"$string:ohos_desc_vibrate"},{"name":"ohos.permission.SYSTEM_LIGHT_CONTROL","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACTIVITY_MOTION","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_activity_motion","description":"$string:ohos_desc_activity_motion"},{"name":"ohos.permission.READ_HEALTH_DATA","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_health_data","description":"$string:ohos_desc_read_health_data"},{"name":"ohos.permission.CONNECT_IME_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_connect_ime_ability","description":"$string:ohos_desc_connect_ime_ability"},{"name":"ohos.permission.CONNECT_SCREEN_SAVER_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_SCREEN_SAVER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_SCREEN_SAVER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_WALLPAPER","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_wallpaper","description":"$string:ohos_desc_set_wallpaper"},{"name":"ohos.permission.GET_WALLPAPER","grantMode":"system_grant","availableLevel":"system_basic","provisionEnable":true,"since":7,"deprecated":"","distributedSceneEnable":false,"label":"$string:ohos_lab_get_wallpaper","description":"$string:ohos_desc_get_wallpaper"},{"name":"ohos.permission.CHANGE_ABILITY_ENABLED_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_MISSIONS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"since 9","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLEAN_BACKGROUND_PROCESSES","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.KEEP_BACKGROUND_RUNNING","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPDATE_CONFIGURATION","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPDATE_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.FACTORY_RESET","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ASSIST_DEVICE_UPDATE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPDATE_MIGRATE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GRANT_SENSITIVE_PERMISSIONS","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REVOKE_SENSITIVE_PERMISSIONS","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SENSITIVE_PERMISSIONS","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS_EXTENSION","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_interact_across_local_accounts_extension","description":"$string:ohos_desc_interact_across_local_accounts_extension"},{"name":"ohos.permission.LISTEN_BUNDLE_CHANGE","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_BUNDLE_INFO","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCELEROMETER","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_accelerometer","description":"$string:ohos_desc_accelerometer"},{"name":"ohos.permission.GYROSCOPE","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_gyroscope","description":"$string:ohos_desc_gyroscope"},{"name":"ohos.permission.GET_BUNDLE_INFO_PRIVILEGED","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SHORTCUTS","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.radio.ACCESS_FM_AM","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_TELEPHONY_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_telephony_state","description":"$string:ohos_desc_set_telephony_state"},{"name":"ohos.permission.START_ABILIIES_FROM_BACKGROUND","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"since 9","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_ABILITIES_FROM_BACKGROUND","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.BUNDLE_ACTIVE_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_bundle_active_info","description":"$string:ohos_desc_bundle_active_info"},{"name":"ohos.permission.START_INVISIBLE_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.sec.ACCESS_UDID","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.LAUNCH_DATA_PRIVACY_CENTER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_MEDIA_RESOURCES","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PUBLISH_AGENT_REMINDER","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_publish_agent_reminder","description":"$string:ohos_desc_publish_agent_reminder"},{"name":"ohos.permission.CONTROL_TASK_SYNC_ANIMATOR","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_control_task_sync_animator","description":"$string:ohos_desc_control_task_sync_animator"},{"name":"ohos.permission.INPUT_MONITORING","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_MISSIONS","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NOTIFICATION_CONTROLLER","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_notification_controller","description":"$string:ohos_desc_notification_controller"},{"name":"ohos.permission.CONNECTIVITY_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_NET_STRATEGY","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_NETWORK_STATS","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_VPN","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_ABILITY_CONTROLLER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_USER_IDM","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_USER_IDM","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NETSYS_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_BIOMETRIC","grantMode":"system_grant","availableLevel":"normal","since":6,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_USER_AUTH_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_FINGERPRINT_AUTH","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PIN_AUTH","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_AUTH_RESPOOL","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ENFORCE_USER_IDM","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.GET_RUNNING_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLEAN_APPLICATION_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUNNING_STATE_OBSERVER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CAPTURE_SCREEN","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_INFO_INTERNAL","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_WIFI_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_PEERS_MAC","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_LOCAL_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_WIFI_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_WIFI_CONNECTION","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DUMP","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_WIFI_HOTSPOT","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_ALL_APP_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SECURE_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_DFX_SYSEVENT","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_HIVIEW_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_HIVIEW_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_ENTERPRISE_INFO","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_BUNDLE_DIR","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_DATETIME","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_GET_DEVICE_INFO","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_RESET_DEVICE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_WIFI","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_GET_NETWORK_INFO","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_ACCOUNT_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_BUNDLE_INSTALL_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_NETWORK","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SET_APP_RUNNING_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_SCREENOFF_TIME","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SECURITY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_BLUETOOTH","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_WIFI","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_RESTRICTIONS","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_APPLICATION","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_LOCATION","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_REBOOT","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_LOCK_DEVICE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_GET_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_INSTALL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_CERTIFICATE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_RESTRICT_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_USB","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_NETWORK","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_BROWSER_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_OPERATE_DEVICE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_ADMIN_MANAGE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NFC_TAG","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.NFC_CARD_EMULATION","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.PERMISSION_USED_STATS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NOTIFICATION_AGENT_CONTROLLER","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MOUNT_UNMOUNT_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MOUNT_FORMAT_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.STORAGE_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.BACKUP","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLOUDFILE_SYNC_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLOUDFILE_SYNC","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.FILE_ACCESS_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_DEFAULT_APPLICATION","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_DEFAULT_APPLICATION","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_IDS","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_DISPOSED_APP_STATUS","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DLP_FILE","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PROVISIONING_MESSAGE","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SYSTEM_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_IMAGEVIDEO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_imagevideo","description":"$string:ohos_desc_read_imagevideo"},{"name":"ohos.permission.READ_AUDIO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_audio","description":"$string:ohos_desc_read_audio"},{"name":"ohos.permission.READ_DOCUMENT","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_document","description":"$string:ohos_desc_read_document"},{"name":"ohos.permission.WRITE_IMAGEVIDEO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_imagevideo","description":"$string:ohos_desc_write_imagevideo"},{"name":"ohos.permission.WRITE_AUDIO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_audio","description":"$string:ohos_desc_write_audio"},{"name":"ohos.permission.WRITE_DOCUMENT","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_document","description":"$string:ohos_desc_write_document"},{"name":"ohos.permission.ABILITY_BACKGROUND_COMMUNICATION","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.securityguard.REPORT_SECURITY_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.securityguard.REQUEST_SECURITY_MODEL_RESULT","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.securityguard.REQUEST_SECURITY_EVENT_INFO","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.ACCESS_CERT_MANAGER_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_CERT_MANAGER","grantMode":"system_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.GET_LOCAL_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_DISTRIBUTED_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_DISTRIBUTED_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_ACCESSIBILITY_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_ACCESSIBILITY_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PUSH_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_APP_PUSH_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_APP_PUSH_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_AUDIO_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_CAMERA_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECEIVER_STARTUP_COMPLETED","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_WHOLE_CALENDAR","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_whole_calendar","description":"$string:ohos_desc_read_whole_calendar"},{"name":"ohos.permission.WRITE_WHOLE_CALENDAR","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_whole_calendar","description":"$string:ohos_desc_write_whole_calendar"},{"name":"ohos.permission.ACCESS_SERVICE_DM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUN_ANY_CODE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.APP_TRACKING_CONSENT","grantMode":"user_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_app_tracking_consent","description":"$string:ohos_desc_app_tracking_consent"},{"name":"ohos.permission.PUBLISH_SYSTEM_COMMON_EVENT","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SCREEN_LOCK_INNER","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PRINT","grantMode":"system_grant","since":10,"deprecated":"","availableLevel":"normal","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_PRINT_JOB","grantMode":"system_grant","since":10,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CHANGE_OVERLAY_ENABLED_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CONNECT_CELLULAR_CALL_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.CONNECT_IMS_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SENSING_WITH_ULTRASOUND","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PROXY_AUTHORIZATION_URI","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_ENTERPRISE_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_INSTALLED_BUNDLE_LIST","grantMode":"user_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_installed_bundle_list","description":"$string:ohos_desc_get_installed_bundle_list"},{"name":"ohos.permission.ACCESS_CAST_ENGINE_MIRROR","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_CAST_ENGINE_STREAM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLOUDDATA_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DEVICE_STANDBY_EXEMPTION","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RESTRICT_APPLICATION_ACTIVE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SENSOR","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPLOAD_SESSION_MANAGER","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PREPARE_APP_TERMINATE","grantMode":"system_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_ECOLOGICAL_RULE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SCENE_CODE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.FILE_GUARD_MANAGER","grantMode":"system_grant","availableLevel":"system_core","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_FILE_GUARD_POLICY","grantMode":"system_grant","availableLevel":"system_core","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.securityguard.SET_MODEL_STATE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.hsdr.HSDR_ACCESS","grantMode":"system_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.SUPPORT_USER_AUTH","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CAPTURE_VOICE_DOWNLINK_AUDIO","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_INTELLIGENT_VOICE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_SELF_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.OBSERVE_FORM_RUNNING","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_DEVICE_AUTH_CRED","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.UNINSTALL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECOVER_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_DOMAIN_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_UNREMOVABLE_NOTIFICATION","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.QUERY_ACCESSIBILITY_ELEMENT","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACTIVATE_THEME_PACKAGE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ATTEST_KEY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WAKEUP_VOICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WAKEUP_VISION","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENABLE_DISTRIBUTED_HARDWARE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":true},{"name":"ohos.permission.ACCESS_DISTRIBUTED_HARDWARE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.INSTANTSHARE_SWITCH_CONTROL","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_INSTANTSHARE_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_INSTANTSHARE_PRIVATE_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SECURE_PASTE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_PASTEBOARD","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_pasteboard","description":"$string:ohos_desc_read_pasteboard"},{"name":"ohos.permission.ACCESS_MCP_AUTHORIZATION","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_BUNDLE_RESOURCES","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_CODE_PROTECT_INFO","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_ADVANCED_SECURITY_MODE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_DEVELOPER_MODE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUN_DYN_CODE","grantMode":"system_grant","availableLevel":"normal","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.COOPERATE_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PERCEIVE_TRAIL","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DISABLE_PERMISSION_DIALOG","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXECUTE_INSIGHT_INTENT","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_ACTIVATION_LOCK","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.VERIFY_ACTIVATION_LOCK","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_PRIVATE_PHOTOS","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_OUC","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.TRUSTED_RING_HASH_DATA_PERMISSION","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_TRUSTED_RING","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_TRUSTED_RING","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INPUT_CONTROL_DISPATCHING","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERCEPT_INPUT_EVENT","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SECURITY_PRIVACY_CENTER","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SECURITY_PRIVACY_ADVICE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_SECURITY_PRIVACY_ADVICE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_SECURITY_PRIVACY_MESSAGER","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECORD_VOICE_CALL","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_APP_INSTALL_INFO","grantMode":"system_grant","since":11,"availableLevel":"system_core","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECEIVE_APP_INSTALL_INFO_CHANGE","grantMode":"system_grant","since":11,"availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_ADVANCED_SECURITY_MODE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.STORE_PERSISTENT_DATA","grantMode":"system_grant","availableLevel":"normal","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_HIVIEWX","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PASSWORDVAULT_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PRIVATE_SPACE_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PRIVATE_SPACE_PASSWORD_PROTECT","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_LOWPOWER_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_USB","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_USB_SERIAL","grantMode":"system_grant","availableLevel":"system_basic","since":16,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_SCSI_PERIPHERAL","grantMode":"system_grant","availableLevel":"system_basic","since":16,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_EXTENSIONAL_DEVICE_DRIVER","grantMode":"system_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_DRIVERS","grantMode":"system_grant","availableLevel":"system_basic","since":16,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"isKernelEffect":false,"hasValue":true},{"name":"ohos.permission.ACCESS_DDK_HID","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_APP_BOOT","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_HIVIEWCARE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CONNECT_UI_EXTENSION_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_WRITE_DOWNLOAD_DIRECTORY","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_write_download_directory","description":"$string:ohos_desc_read_write_download_directory"},{"name":"ohos.permission.READ_WRITE_DOCUMENTS_DIRECTORY","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_write_documents_directory","description":"$string:ohos_desc_read_write_documents_directory"},{"name":"ohos.permission.READ_WRITE_DESKTOP_DIRECTORY","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_write_desktop_directory","description":"$string:ohos_desc_read_write_desktop_directory"},{"name":"ohos.permission.FILE_ACCESS_PERSIST","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_SANDBOX_POLICY","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_ACCOUNT_KIT_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REQUEST_ANONYMOUS_ATTEST","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_ACCOUNT_KIT_UI","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_RECENT_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_CLOUD_SYNC_CONFIG","grantMode":"system_grant","availableLevel":"normal","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_CLOUD_SYNC_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_FINDDEVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_FINDSERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_FINDSERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.TRIGGER_ACTIVATIONLOCK","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_USB_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_PRIVACY_PUSH_DATA","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_STATUSBAR_ICON","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_SYSTEM_DIALOG","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SYSTEM_AUDIO_EFFECTS","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_NEARLINK","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_NEARLINK","grantMode":"user_grant","availableLevel":"normal","since":12,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false,"label":"$string:ohos_lab_access_nearlink","description":"$string:ohos_desc_access_nearlink"},{"name":"ohos.permission.GET_NEARLINK_LOCAL_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_NEARLINK_PEER_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PROTOCOL_DFX_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PROTOCOL_DFX_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_RGM","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ALLOW_UPGRADE_GUIDE_ACCESS","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_USER_ACCOUNT_INFO","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_ACCOUNT_LOGIN_STATE","grantMode":"system_grant","availableLevel":"normal","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_ACCOUNT_LOGIN_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS_AS_USER","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NOTIFY_DEBUG_ASSERT_RESULT","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_AI_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_HEALTH_MOTION","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.hsdr.REQUEST_HSDR","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.QUERY_PASSWORD_VAULT_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SUBSCRIBE_NOTIFICATION_WINDOW_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CHANGE_DISPLAYMODE","grantMode":"system_grant","since":12,"deprecated":"","availableLevel":"system_core","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_MEDIALIB_THUMB_DB","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MIGRATE_DATA","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DYNAMIC_ICON","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXEMPT_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXEMPT_CAMERA_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXEMPT_MICROPHONE_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXEMPT_LOCATION_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_SUPER_PRIVACY","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SUPER_PRIVACY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.LAUNCH_SPAMSHIELD_PAGE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SPAMSHIELD_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CHANGE_BUNDLE_UNINSTALL_STATE","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_STYLUS_EVENT","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SERVICE_NAVIGATION_INFO","grantMode":"system_grant","availableLevel":"normal","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_GTOKEN_POLICY","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_GTOKEN_POLICY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENABLE_PROFILER","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.USE_CLOUD_DRIVE_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_CLOUD_BACKUP_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_CLOUD_COMMON_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_DLP_CRED","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_SHORTCUT","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_INPUT_INFRARED_EMITTER","grantMode":"system_grant","availableLevel":"normal","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PRELOAD_APPLICATION","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_PROCESS_CACHE_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PRELOAD_UI_EXTENSION_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SYSTEM_APP_CERT","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_USER_TRUSTED_CERT","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_LOCAL_BACKUP","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CAST_AUDIO_OUTPUT","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.ACCESS_TEXTAUTOFILL_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.KILL_APP_PROCESSES","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_RINGTONE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SCREEN_LOCK_MEDIA_DATA","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SCREEN_LOCK_ALL_DATA","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_ACCOUNT_MINORS_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_LOCAL_THEME","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SHADER_CACHE_DIR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_CLONE_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UNINSTALL_CLONE_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PROTECT_SCREEN_LOCK_DATA","grantMode":"system_grant","availableLevel":"normal","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DEVICE_COLLABORATION_PRIVATE_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_RINGTONE_RESOURCE","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_FILE_CONTENT_SHARE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SEARCH_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false}]}}')},11663:e=>{"use strict";e.exports=JSON.parse('{"SystemCapability":["SystemCapability.Applications.CalendarData","SystemCapability.ArkUI.ArkUI.Full","SystemCapability.ArkUI.ArkUI.Lite","SystemCapability.ArkUI.ArkUI.Napi","SystemCapability.ArkUI.ArkUI.Libuv","SystemCapability.ArkUI.UiAppearance","SystemCapability.BundleManager.BundleFramework","SystemCapability.BundleManager.DistributedBundleFramework","SystemCapability.BundleManager.Zlib","SystemCapability.BundleManager.BundleFramework.Core","SystemCapability.BundleManager.BundleFramework.FreeInstall","SystemCapability.BundleManager.BundleFramework.Resource","SystemCapability.BundleManager.BundleFramework.DefaultApp","SystemCapability.BundleManager.BundleFramework.Launcher","SystemCapability.BundleManager.BundleFramework.SandboxApp","SystemCapability.BundleManager.BundleFramework.QuickFix","SystemCapability.BundleManager.BundleFramework.AppControl","SystemCapability.BundleManager.BundleFramework.Overlay","SystemCapability.Developtools.Syscap","SystemCapability.Graphic.Graphic2D.WebGL","SystemCapability.Graphic.Graphic2D.WebGL2","SystemCapability.Graphic.Graphic2D.ColorManager.Core","SystemCapability.Window.SessionManager","SystemCapability.Graphic.Vulkan","SystemCapability.WindowManager.WindowManager.Core","SystemCapability.Notification.CommonEvent","SystemCapability.Notification.Notification","SystemCapability.Notification.ReminderAgent","SystemCapability.Notification.Emitter","SystemCapability.Communication.IPC.Core","SystemCapability.Communication.SoftBus.Core","SystemCapability.Communication.NetManager.Core","SystemCapability.Communication.NetManager.Extension","SystemCapability.Communication.NetStack","SystemCapability.Communication.WiFi.Core","SystemCapability.Communication.WiFi.STA","SystemCapability.Communication.WiFi.AP.Core","SystemCapability.Communication.WiFi.AP.Extension","SystemCapability.Communication.WiFi.P2P","SystemCapability.Communication.Bluetooth.Core","SystemCapability.Communication.Bluetooth.Lite","SystemCapability.Communication.NFC.Core","SystemCapability.Communication.ConnectedTag","SystemCapability.Communication.NFC.Tag","SystemCapability.Communication.NFC.CardEmulation","SystemCapability.Communication.NetManager.Ethernet","SystemCapability.Communication.NetManager.NetSharing","SystemCapability.Communication.NetManager.MDNS","SystemCapability.Communication.NetManager.Vpn","SystemCapability.Communication.SecureElement","SystemCapability.Location.Location.Core","SystemCapability.Location.Location.Geocoder","SystemCapability.Location.Location.Geofence","SystemCapability.Location.Location.Gnss","SystemCapability.Location.Location.Lite","SystemCapability.Msdp.DeviceStatus.Stationary","SystemCapability.MultimodalInput.Input.Core","SystemCapability.MultimodalInput.Input.InputDevice","SystemCapability.MultimodalInput.Input.RemoteInputDevice","SystemCapability.MultimodalInput.Input.InputMonitor","SystemCapability.MultimodalInput.Input.InputConsumer","SystemCapability.MultimodalInput.Input.InputSimulator","SystemCapability.MultimodalInput.Input.InputFilter","SystemCapability.MultimodalInput.Input.Cooperator","SystemCapability.MultimodalInput.Input.Pointer","SystemCapability.PowerManager.BatteryManager.Extension","SystemCapability.PowerManager.BatteryStatistics","SystemCapability.PowerManager.DisplayPowerManager","SystemCapability.PowerManager.DisplayPowerManager.Lite","SystemCapability.PowerManager.ThermalManager","SystemCapability.PowerManager.PowerManager.Core","SystemCapability.PowerManager.PowerManager.Lite","SystemCapability.PowerManager.BatteryManager.Core","SystemCapability.PowerManager.BatteryManager.Lite","SystemCapability.PowerManager.PowerManager.Extension","SystemCapability.Multimedia.Media.Core","SystemCapability.Multimedia.Media.AudioPlayer","SystemCapability.Multimedia.Media.AudioRecorder","SystemCapability.Multimedia.Media.VideoPlayer","SystemCapability.Multimedia.Media.VideoRecorder","SystemCapability.Multimedia.Media.CodecBase","SystemCapability.Multimedia.Media.AudioCodec","SystemCapability.Multimedia.Media.AudioDecoder","SystemCapability.Multimedia.Media.AudioEncoder","SystemCapability.Multimedia.Media.VideoDecoder","SystemCapability.Multimedia.Media.VideoEncoder","SystemCapability.Multimedia.Media.Spliter","SystemCapability.Multimedia.Media.Muxer","SystemCapability.Multimedia.Media.AVScreenCapture","SystemCapability.Multimedia.Media.SoundPool","SystemCapability.Multimedia.AVSession.Core","SystemCapability.Multimedia.AVSession.Manager","SystemCapability.Multimedia.AVSession.AVCast","SystemCapability.Multimedia.AVSession.ExtendedDisplayCast","SystemCapability.Multimedia.Audio.Core","SystemCapability.Multimedia.Audio.Tone","SystemCapability.Multimedia.Audio.Interrupt","SystemCapability.Multimedia.Audio.Renderer","SystemCapability.Multimedia.Audio.Capturer","SystemCapability.Multimedia.Audio.Device","SystemCapability.Multimedia.Audio.Volume","SystemCapability.Multimedia.Audio.Communication","SystemCapability.Multimedia.Audio.PlaybackCapture","SystemCapability.Multimedia.Camera.Core","SystemCapability.Multimedia.Camera.DistributedCore","SystemCapability.Multimedia.Image.Core","SystemCapability.Multimedia.Image.ImageSource","SystemCapability.Multimedia.Image.ImagePacker","SystemCapability.Multimedia.Image.ImageReceiver","SystemCapability.Multimedia.ImageEffect.Core","SystemCapability.Multimedia.MediaLibrary.Core","SystemCapability.Multimedia.MediaLibrary.SmartAlbum","SystemCapability.Multimedia.MediaLibrary.DistributedCore","SystemCapability.Multimedia.Media.AVPlayer","SystemCapability.Multimedia.Media.AVRecorder","SystemCapability.Multimedia.Media.AVMetadataExtractor","SystemCapability.Multimedia.Media.AVImageGenerator","SystemCapability.Multimedia.Image.ImageCreator","SystemCapability.Multimedia.SystemSound.Core","SystemCapability.Telephony.CoreService","SystemCapability.Telephony.CallManager","SystemCapability.Telephony.CellularCall","SystemCapability.Telephony.CellularData","SystemCapability.Telephony.SmsMms","SystemCapability.Telephony.StateRegistry","SystemCapability.Global.I18n","SystemCapability.Global.ResourceManager","SystemCapability.Customization.ConfigPolicy","SystemCapability.Customization.CustomConfig","SystemCapability.Customization.EnterpriseDeviceManager","SystemCapability.BarrierFree.Accessibility.Core","SystemCapability.BarrierFree.Accessibility.Vision","SystemCapability.BarrierFree.Accessibility.Hearing","SystemCapability.BarrierFree.Accessibility.Interaction","SystemCapability.ResourceSchedule.WorkScheduler","SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask","SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask","SystemCapability.ResourceSchedule.UsageStatistics.App","SystemCapability.ResourceSchedule.UsageStatistics.AppGroup","SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply","SystemCapability.Utils.Lang","SystemCapability.HiviewDFX.HiLog","SystemCapability.HiviewDFX.HiLogLite","SystemCapability.HiviewDFX.HiTrace","SystemCapability.HiviewDFX.Hiview.FaultLogger","SystemCapability.HiviewDFX.Hiview.LogLibrary","SystemCapability.HiviewDFX.HiviewLite","SystemCapability.HiviewDFX.HiChecker","SystemCapability.HiviewDFX.HiCollie","SystemCapability.HiviewDFX.HiDumper","SystemCapability.HiviewDFX.HiAppEvent","SystemCapability.HiviewDFX.HiSysEvent","SystemCapability.HiviewDFX.HiEventLite","SystemCapability.HiviewDFX.HiProfiler.HiDebug","SystemCapability.Update.UpdateService","SystemCapability.DistributedHardware.DeviceManager","SystemCapability.DistributedHardware.DistributedHardwareFWK","SystemCapability.Security.DeviceAuth","SystemCapability.Security.DataTransitManager","SystemCapability.Security.DeviceSecurityLevel","SystemCapability.Security.Huks.Core","SystemCapability.Security.Huks.Extension","SystemCapability.Security.Asset","SystemCapability.Security.AccessToken","SystemCapability.Security.Cipher","SystemCapability.Security.CertificateManager","SystemCapability.Security.CryptoFramework","SystemCapability.Security.CryptoFramework.Cert","SystemCapability.Security.DataLossPrevention","SystemCapability.Security.Cert","SystemCapability.Security.SecurityGuard","SystemCapability.Security.ScreenLockFileManager","SystemCapability.Account.OsAccount","SystemCapability.Account.AppAccount","SystemCapability.UserIAM.UserAuth.Core","SystemCapability.UserIAM.UserAuth.PinAuth","SystemCapability.UserIAM.UserAuth.FaceAuth","SystemCapability.MiscServices.InputMethodFramework","SystemCapability.MiscServices.Pasteboard","SystemCapability.MiscServices.Time","SystemCapability.MiscServices.Wallpaper","SystemCapability.MiscServices.ScreenLock","SystemCapability.MiscServices.Upload","SystemCapability.MiscServices.Download","SystemCapability.FileManagement.StorageService.Backup","SystemCapability.FileManagement.StorageService.SpatialStatistics","SystemCapability.FileManagement.StorageService.Volume","SystemCapability.FileManagement.StorageService.Encryption","SystemCapability.FileManagement.File.FileIO","SystemCapability.FileManagement.File.FileIO.Lite","SystemCapability.FileManagement.File.Environment","SystemCapability.FileManagement.File.DistributedFile","SystemCapability.FileManagement.File.Environment.FolderObtain","SystemCapability.FileManagement.AppFileService","SystemCapability.FileManagement.AppFileService.FolderAuthorization","SystemCapability.FileManagement.UserFileService","SystemCapability.FileManagement.UserFileManager","SystemCapability.FileManagement.UserFileManager.DistributedCore","SystemCapability.FileManagement.UserFileManager.Core","SystemCapability.FileManagement.UserFileService.FolderSelection","SystemCapability.USB.USBManager","SystemCapability.Sensors.Sensor","SystemCapability.Sensors.MiscDevice","SystemCapability.Sensors.Sensor.Lite","SystemCapability.Sensors.MiscDevice.Lite","SystemCapability.Startup.SystemInfo","SystemCapability.Startup.SystemInfo.Lite","SystemCapability.DistributedDataManager.RelationalStore.Core","SystemCapability.DistributedDataManager.RelationalStore.Synchronize","SystemCapability.DistributedDataManager.RelationalStore.Lite","SystemCapability.DistributedDataManager.KVStore.Core","SystemCapability.DistributedDataManager.KVStore.Lite","SystemCapability.DistributedDataManager.KVStore.DistributedKVStore","SystemCapability.DistributedDataManager.DataObject.DistributedObject","SystemCapability.DistributedDataManager.Preferences.Core","SystemCapability.DistributedDataManager.DataShare.Core","SystemCapability.DistributedDataManager.DataShare.Consumer","SystemCapability.DistributedDataManager.DataShare.Provider","SystemCapability.DistributedDataManager.UDMF.Core","SystemCapability.DistributedDataManager.CloudSync.Config","SystemCapability.DistributedDataManager.CloudSync.Client","SystemCapability.DistributedDataManager.CloudSync.Server","SystemCapability.Ability.AbilityBase","SystemCapability.Ability.AbilityRuntime.Core","SystemCapability.Ability.AbilityRuntime.FAModel","SystemCapability.Ability.AbilityRuntime.AbilityCore","SystemCapability.Ability.AbilityRuntime.Mission","SystemCapability.Ability.AbilityTools.AbilityAssistant","SystemCapability.Ability.Form","SystemCapability.Ability.DistributedAbilityManager","SystemCapability.Ability.AbilityRuntime.QuickFix","SystemCapability.Applications.ContactsData","SystemCapability.Applications.Contacts","SystemCapability.Applications.Settings.Core","SystemCapability.Test.UiTest","SystemCapability.Web.Webview.Core","SystemCapability.Cloud.AAID","SystemCapability.Advertising.OAID","SystemCapability.Advertising.Ads","SystemCapability.Cloud.VAID","SystemCapability.Cloud.Push","SystemCapability.XTS.DeviceAttest","SystemCapability.XTS.DeviceAttest.Lite","SystemCapability.Base","SystemCapability.FileManagement.DistributedFileService.CloudSyncManager","SystemCapability.FileManagement.DistributedFileService.CloudSync.Core","SystemCapability.MultimodalInput.Input.ShortKey","SystemCapability.Msdp.DeviceStatus.Cooperate","SystemCapability.Request.FileTransferAgent","SystemCapability.ResourceSchedule.DeviceStandby","SystemCapability.AI.MindSporeLite","SystemCapability.Print.PrintFramework","SystemCapability.DistributedDataManager.Preferences.Core.Lite","SystemCapability.Driver.ExternalDevice","SystemCapability.FileManagement.PhotoAccessHelper.Core","SystemCapability.AI.IntelligentVoice.Core","SystemCapability.Msdp.DeviceStatus.Drag","SystemCapability.DistributedDataManager.CommonType","SystemCapability.Multimedia.Audio.Spatialization","SystemCapability.Multimedia.AudioHaptic.Core","SystemCapability.ArkUi.Graphics3D","SystemCapability.Multimedia.Drm.Core","SystemCapability.Graphics.Drawing","SystemCapability.ResourceSchedule.SystemLoad","SystemCapability.Ability.AppStartup","SystemCapability.MultimodalInput.Input.InfraredEmitter"]}')},80417:e=>{"use strict";e.exports=JSON.parse('{"fileContent":[{"syscap":"ArkUI","subsystem":"ArkUI开发框架","fileName":"arkui"},{"syscap":"BundleManager","subsystem":"包管理","fileName":"bundle"},{"syscap":"Graphic","subsystem":"图形图像","fileName":"graphic"},{"syscap":"WindowManager","subsystem":"窗口管理","fileName":"window"},{"syscap":"Notification","subsystem":"事件通知","fileName":"notification"},{"syscap":"Communication","subsystem":"基础通信","fileName":"communication"},{"syscap":"Location","subsystem":"位置服务","fileName":"geolocation"},{"syscap":"MultimodalInput","subsystem":"多模输入","fileName":"multi-modal-input"},{"syscap":"PowerManager","subsystem":"电源服务","fileName":"battery"},{"syscap":"Multimedia","subsystem":"OS媒体软件","fileName":"multimedia"},{"syscap":"Telephony","subsystem":"电话服务","fileName":"telephony"},{"syscap":"Global","subsystem":"全球化","fileName":"global"},{"syscap":"Customization","subsystem":"定制","fileName":"customization"},{"syscap":"BarrierFree","subsystem":"无障碍软件服务","fileName":"accessibility"},{"syscap":"ResourceSchedule","subsystem":"资源调度","fileName":"resource-scheduler"},{"syscap":"Utils","subsystem":"公共基础类库","fileName":"compiler-and-runtime"},{"syscap":"HiviewDFX","subsystem":"DFX","fileName":"dfx"},{"syscap":"Update","subsystem":"升级服务","fileName":"update"},{"syscap":"DistributedHardware","subsystem":"分布式硬件","fileName":"distributed-hardware"},{"syscap":"Security","subsystem":"安全基础能力","fileName":"security"},{"syscap":"Account","subsystem":"账号","fileName":"account"},{"syscap":"UserIAM","subsystem":"用户IAM","fileName":"user-iam"},{"syscap":"FileManagement","subsystem":"文件管理","fileName":"file-management"},{"syscap":"USB","subsystem":"USB服务","fileName":"usb"},{"syscap":"Sensors","subsystem":"泛sensor服务","fileName":"sensor"},{"syscap":"Startup","subsystem":"启动恢复","fileName":"start-up"},{"syscap":"DistributedDataManager","subsystem":"分布式数据管理","fileName":"distributed-data"},{"syscap":"Ability","subsystem":"元能力","fileName":"ability"},{"syscap":"Web","subsystem":"web","fileName":"web"},{"syscap":"Applications","subsystem":"应用","fileName":"application"},{"syscap":"Msdp","subsystem":"综合传感处理平台","fileName":"msdp"},{"syscap":"Test","subsystem":"测试框架","fileName":"unitest"},{"syscap":"Base","subsystem":"SDK","fileName":"sdk"},{"syscap":"AI","subsystem":"AI业务","fileName":"ai"},{"syscap":"Request","subsystem":"上传下载","fileName":"download-upload"},{"syscap":"Download","subsystem":"上传下载","fileName":"download-upload"},{"syscap":"Upload","subsystem":"上传下载","fileName":"download-upload"},{"syscap":"Wallpaper","subsystem":"主题","fileName":"theme"},{"syscap":"Time","subsystem":"时间时区","fileName":"time"},{"syscap":"ScreenLock","subsystem":"主题","fileName":"theme"},{"syscap":"Pasteboard","subsystem":"剪贴板","fileName":"pasteboard"},{"syscap":"InputMethodFramework","subsystem":"输入法","fileName":"input-method-framework"},{"syscap":"Driver","subsystem":"驱动","fileName":"driver"},{"syscap":"Developtools","subsystem":"研发工具链","fileName":"developtools"},{"syscap":"Bluetooth","subsystem":"蓝牙","fileName":"blue-tooth"},{"syscap":"NetManager","subsystem":"网络管理·","fileName":"net-manager"},{"syscap":"Print","subsystem":"打印","fileName":"print"},{"syscap":"Window","subsystem":"窗口","fileName":"window"},{"syscap":"Advertising","subsystem":"广告服务","fileName":"advertising"},{"syscap":"XTS","subsystem":"XTS","fileName":"xts"}]}')}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.loaded=!0,r.exports}__webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=(e,t)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var __webpack_exports__=__webpack_require__(32875)})(); \ No newline at end of file diff --git a/build-tools/dts_parser/package/JS_API_OPTIMIZE_PLUGIN.js b/build-tools/dts_parser/package/JS_API_OPTIMIZE_PLUGIN.js deleted file mode 100644 index e6ce20acf5cdbeaed1a8d4d13f11446f8a2fcb3e..0000000000000000000000000000000000000000 --- a/build-tools/dts_parser/package/JS_API_OPTIMIZE_PLUGIN.js +++ /dev/null @@ -1,117 +0,0 @@ -/*! version:1.0.0 */(()=>{var __webpack_modules__={93062:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CsvFormatterStream=void 0;const n=r(12781),i=r(49947);class a extends n.Transform{constructor(e){super({writableObjectMode:e.objectMode}),this.hasWrittenBOM=!1,this.formatterOptions=e,this.rowFormatter=new i.RowFormatter(e),this.hasWrittenBOM=!e.writeBOM}transform(e){return this.rowFormatter.rowTransform=e,this}_transform(e,t,r){let n=!1;try{this.hasWrittenBOM||(this.push(this.formatterOptions.BOM),this.hasWrittenBOM=!0),this.rowFormatter.format(e,((e,t)=>e?(n=!0,r(e)):(t&&t.forEach((e=>{this.push(Buffer.from(e,"utf8"))})),n=!0,r())))}catch(e){if(n)throw e;r(e)}}_flush(e){this.rowFormatter.finish(((t,r)=>t?e(t):(r&&r.forEach((e=>{this.push(Buffer.from(e,"utf8"))})),e())))}}t.CsvFormatterStream=a},26763:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FormatterOptions=void 0;t.FormatterOptions=class{constructor(e={}){var t;this.objectMode=!0,this.delimiter=",",this.rowDelimiter="\n",this.quote='"',this.escape=this.quote,this.quoteColumns=!1,this.quoteHeaders=this.quoteColumns,this.headers=null,this.includeEndRowDelimiter=!1,this.writeBOM=!1,this.BOM="\ufeff",this.alwaysWriteHeaders=!1,Object.assign(this,e||{}),void 0===(null==e?void 0:e.quoteHeaders)&&(this.quoteHeaders=this.quoteColumns),!0===(null==e?void 0:e.quote)?this.quote='"':!1===(null==e?void 0:e.quote)&&(this.quote=""),"string"!=typeof(null==e?void 0:e.escape)&&(this.escape=this.quote),this.shouldWriteHeaders=!!this.headers&&(null===(t=e.writeHeaders)||void 0===t||t),this.headers=Array.isArray(this.headers)?this.headers:null,this.escapedQuote=`${this.escape}${this.quote}`}}},92607:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FieldFormatter=void 0;const i=n(r(48094)),a=n(r(59722)),o=n(r(91658));t.FieldFormatter=class{constructor(e){this._headers=null,this.formatterOptions=e,null!==e.headers&&(this.headers=e.headers),this.REPLACE_REGEXP=new RegExp(e.quote,"g");const t=`[${e.delimiter}${o.default(e.rowDelimiter)}|\r|\n]`;this.ESCAPE_REGEXP=new RegExp(t)}set headers(e){this._headers=e}shouldQuote(e,t){const r=t?this.formatterOptions.quoteHeaders:this.formatterOptions.quoteColumns;return i.default(r)?r:Array.isArray(r)?r[e]:null!==this._headers&&r[this._headers[e]]}format(e,t,r){const n=`${a.default(e)?"":e}`.replace(/\0/g,""),{formatterOptions:i}=this;if(""!==i.quote){if(-1!==n.indexOf(i.quote))return this.quoteField(n.replace(this.REPLACE_REGEXP,i.escapedQuote))}return-1!==n.search(this.ESCAPE_REGEXP)||this.shouldQuote(t,r)?this.quoteField(n):n}quoteField(e){const{quote:t}=this.formatterOptions;return`${t}${e}${t}`}}},17181:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RowFormatter=void 0;const i=n(r(98423)),a=n(r(72307)),o=r(92607),s=r(24692);class c{constructor(e){this.rowCount=0,this.formatterOptions=e,this.fieldFormatter=new o.FieldFormatter(e),this.headers=e.headers,this.shouldWriteHeaders=e.shouldWriteHeaders,this.hasWrittenHeaders=!1,null!==this.headers&&(this.fieldFormatter.headers=this.headers),e.transform&&(this.rowTransform=e.transform)}static isRowHashArray(e){return!!Array.isArray(e)&&(Array.isArray(e[0])&&2===e[0].length)}static isRowArray(e){return Array.isArray(e)&&!this.isRowHashArray(e)}static gatherHeaders(e){return c.isRowHashArray(e)?e.map((e=>e[0])):Array.isArray(e)?e:Object.keys(e)}static createTransform(e){return s.isSyncTransform(e)?(t,r)=>{let n=null;try{n=e(t)}catch(e){return r(e)}return r(null,n)}:(t,r)=>{e(t,r)}}set rowTransform(e){if(!i.default(e))throw new TypeError("The transform should be a function");this._rowTransform=c.createTransform(e)}format(e,t){this.callTransformer(e,((r,n)=>{if(r)return t(r);if(!e)return t(null);const i=[];if(n){const{shouldFormatColumns:e,headers:t}=this.checkHeaders(n);if(this.shouldWriteHeaders&&t&&!this.hasWrittenHeaders&&(i.push(this.formatColumns(t,!0)),this.hasWrittenHeaders=!0),e){const e=this.gatherColumns(n);i.push(this.formatColumns(e,!1))}}return t(null,i)}))}finish(e){const t=[];if(this.formatterOptions.alwaysWriteHeaders&&0===this.rowCount){if(!this.headers)return e(new Error("`alwaysWriteHeaders` option is set to true but `headers` option not provided."));t.push(this.formatColumns(this.headers,!0))}return this.formatterOptions.includeEndRowDelimiter&&t.push(this.formatterOptions.rowDelimiter),e(null,t)}checkHeaders(e){if(this.headers)return{shouldFormatColumns:!0,headers:this.headers};const t=c.gatherHeaders(e);return this.headers=t,this.fieldFormatter.headers=t,this.shouldWriteHeaders?{shouldFormatColumns:!a.default(t,e),headers:t}:{shouldFormatColumns:!0,headers:null}}gatherColumns(e){if(null===this.headers)throw new Error("Headers is currently null");return Array.isArray(e)?c.isRowHashArray(e)?this.headers.map(((t,r)=>{const n=e[r];return n?n[1]:""})):c.isRowArray(e)&&!this.shouldWriteHeaders?e:this.headers.map(((t,r)=>e[r])):this.headers.map((t=>e[t]))}callTransformer(e,t){return this._rowTransform?this._rowTransform(e,t):t(null,e)}formatColumns(e,t){const r=e.map(((e,r)=>this.fieldFormatter.format(e,r,t))).join(this.formatterOptions.delimiter),{rowCount:n}=this;return this.rowCount+=1,n?[this.formatterOptions.rowDelimiter,r].join(""):r}}t.RowFormatter=c},49947:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FieldFormatter=t.RowFormatter=void 0;var n=r(17181);Object.defineProperty(t,"RowFormatter",{enumerable:!0,get:function(){return n.RowFormatter}});var i=r(92607);Object.defineProperty(t,"FieldFormatter",{enumerable:!0,get:function(){return i.FieldFormatter}})},47201:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.writeToPath=t.writeToString=t.writeToBuffer=t.writeToStream=t.write=t.format=t.FormatterOptions=t.CsvFormatterStream=void 0;const s=r(73837),c=r(12781),l=a(r(57147)),u=r(26763),d=r(93062);o(r(24692),t);var p=r(93062);Object.defineProperty(t,"CsvFormatterStream",{enumerable:!0,get:function(){return p.CsvFormatterStream}});var f=r(26763);Object.defineProperty(t,"FormatterOptions",{enumerable:!0,get:function(){return f.FormatterOptions}}),t.format=e=>new d.CsvFormatterStream(new u.FormatterOptions(e)),t.write=(e,r)=>{const n=t.format(r),i=s.promisify(((e,t)=>{n.write(e,void 0,t)}));return e.reduce(((e,t)=>e.then((()=>i(t)))),Promise.resolve()).then((()=>n.end())).catch((e=>{n.emit("error",e)})),n},t.writeToStream=(e,r,n)=>t.write(r,n).pipe(e),t.writeToBuffer=(e,r={})=>{const n=[],i=new c.Writable({write(e,t,r){n.push(e),r()}});return new Promise(((a,o)=>{i.on("error",o).on("finish",(()=>a(Buffer.concat(n)))),t.write(e,r).pipe(i)}))},t.writeToString=(e,r)=>t.writeToBuffer(e,r).then((e=>e.toString())),t.writeToPath=(e,r,n)=>{const i=l.createWriteStream(e,{encoding:"utf8"});return t.write(r,n).pipe(i)}},24692:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSyncTransform=void 0,t.isSyncTransform=e=>1===e.length},47410:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CsvParserStream=void 0;const n=r(71576),i=r(12781),a=r(23962),o=r(5147);class s extends i.Transform{constructor(e){super({objectMode:e.objectMode}),this.lines="",this.rowCount=0,this.parsedRowCount=0,this.parsedLineCount=0,this.endEmitted=!1,this.headersEmitted=!1,this.parserOptions=e,this.parser=new o.Parser(e),this.headerTransformer=new a.HeaderTransformer(e),this.decoder=new n.StringDecoder(e.encoding),this.rowTransformerValidator=new a.RowTransformerValidator}get hasHitRowLimit(){return this.parserOptions.limitRows&&this.rowCount>=this.parserOptions.maxRows}get shouldEmitRows(){return this.parsedRowCount>this.parserOptions.skipRows}get shouldSkipLine(){return this.parsedLineCount<=this.parserOptions.skipLines}transform(e){return this.rowTransformerValidator.rowTransform=e,this}validate(e){return this.rowTransformerValidator.rowValidator=e,this}emit(e,...t){return"end"===e?(this.endEmitted||(this.endEmitted=!0,super.emit("end",this.rowCount)),!1):super.emit(e,...t)}_transform(e,t,r){if(this.hasHitRowLimit)return r();const n=s.wrapDoneCallback(r);try{const{lines:t}=this,r=t+this.decoder.write(e),i=this.parse(r,!0);return this.processRows(i,n)}catch(e){return n(e)}}_flush(e){const t=s.wrapDoneCallback(e);if(this.hasHitRowLimit)return t();try{const e=this.lines+this.decoder.end(),r=this.parse(e,!1);return this.processRows(r,t)}catch(e){return t(e)}}parse(e,t){if(!e)return[];const{line:r,rows:n}=this.parser.parse(e,t);return this.lines=r,n}processRows(e,t){const r=e.length,n=i=>{const a=e=>e?t(e):i%100!=0?n(i+1):void setImmediate((()=>n(i+1)));if(this.checkAndEmitHeaders(),i>=r||this.hasHitRowLimit)return t();if(this.parsedLineCount+=1,this.shouldSkipLine)return a();const o=e[i];this.rowCount+=1,this.parsedRowCount+=1;const s=this.rowCount;return this.transformRow(o,((e,t)=>{if(e)return this.rowCount-=1,a(e);if(!t)return a(new Error("expected transform result"));if(t.isValid){if(t.row)return this.pushRow(t.row,a)}else this.emit("data-invalid",t.row,s,t.reason);return a()}))};n(0)}transformRow(e,t){try{this.headerTransformer.transform(e,((r,n)=>r?t(r):n?n.isValid?n.row?this.shouldEmitRows?this.rowTransformerValidator.transformAndValidate(n.row,t):this.skipRow(t):(this.rowCount-=1,this.parsedRowCount-=1,t(null,{row:null,isValid:!0})):this.shouldEmitRows?t(null,{isValid:!1,row:e}):this.skipRow(t):t(new Error("Expected result from header transform"))))}catch(e){t(e)}}checkAndEmitHeaders(){!this.headersEmitted&&this.headerTransformer.headers&&(this.headersEmitted=!0,this.emit("headers",this.headerTransformer.headers))}skipRow(e){return this.rowCount-=1,e(null,{row:null,isValid:!0})}pushRow(e,t){try{this.parserOptions.objectMode?this.push(e):this.push(JSON.stringify(e)),t()}catch(e){t(e)}}static wrapDoneCallback(e){let t=!1;return(r,...n)=>{if(r){if(t)throw r;return t=!0,void e(r)}e(...n)}}}t.CsvParserStream=s},49042:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ParserOptions=void 0;const i=n(r(91658)),a=n(r(59722));t.ParserOptions=class{constructor(e){var t;if(this.objectMode=!0,this.delimiter=",",this.ignoreEmpty=!1,this.quote='"',this.escape=null,this.escapeChar=this.quote,this.comment=null,this.supportsComments=!1,this.ltrim=!1,this.rtrim=!1,this.trim=!1,this.headers=null,this.renameHeaders=!1,this.strictColumnHandling=!1,this.discardUnmappedColumns=!1,this.carriageReturn="\r",this.encoding="utf8",this.limitRows=!1,this.maxRows=0,this.skipLines=0,this.skipRows=0,Object.assign(this,e||{}),this.delimiter.length>1)throw new Error("delimiter option must be one character long");this.escapedDelimiter=i.default(this.delimiter),this.escapeChar=null!==(t=this.escape)&&void 0!==t?t:this.quote,this.supportsComments=!a.default(this.comment),this.NEXT_TOKEN_REGEXP=new RegExp(`([^\\s]|\\r\\n|\\n|\\r|${this.escapedDelimiter})`),this.maxRows>0&&(this.limitRows=!0)}}},85455:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.parseString=t.parseFile=t.parseStream=t.parse=t.ParserOptions=t.CsvParserStream=void 0;const s=a(r(57147)),c=r(12781),l=r(49042),u=r(47410);o(r(53154),t);var d=r(47410);Object.defineProperty(t,"CsvParserStream",{enumerable:!0,get:function(){return d.CsvParserStream}});var p=r(49042);Object.defineProperty(t,"ParserOptions",{enumerable:!0,get:function(){return p.ParserOptions}}),t.parse=e=>new u.CsvParserStream(new l.ParserOptions(e)),t.parseStream=(e,t)=>e.pipe(new u.CsvParserStream(new l.ParserOptions(t))),t.parseFile=(e,t={})=>s.createReadStream(e).pipe(new u.CsvParserStream(new l.ParserOptions(t))),t.parseString=(e,t)=>{const r=new c.Readable;return r.push(e),r.push(null),r.pipe(new u.CsvParserStream(new l.ParserOptions(t)))}},46366:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;const n=r(90203),i=r(40478),a=r(98661);class o{constructor(e){this.parserOptions=e,this.rowParser=new i.RowParser(this.parserOptions)}static removeBOM(e){return e&&65279===e.charCodeAt(0)?e.slice(1):e}parse(e,t){const r=new n.Scanner({line:o.removeBOM(e),parserOptions:this.parserOptions,hasMoreData:t});return this.parserOptions.supportsComments?this.parseWithComments(r):this.parseWithoutComments(r)}parseWithoutComments(e){const t=[];let r=!0;for(;r;)r=this.parseRow(e,t);return{line:e.line,rows:t}}parseWithComments(e){const{parserOptions:t}=this,r=[];for(let n=e.nextCharacterToken;null!==n;n=e.nextCharacterToken)if(a.Token.isTokenComment(n,t)){if(null===e.advancePastLine())return{line:e.lineFromCursor,rows:r};if(!e.hasMoreCharacters)return{line:e.lineFromCursor,rows:r};e.truncateToCursor()}else if(!this.parseRow(e,r))break;return{line:e.line,rows:r}}parseRow(e,t){if(!e.nextNonSpaceToken)return!1;const r=this.rowParser.parse(e);return null!==r&&(this.parserOptions.ignoreEmpty&&i.RowParser.isEmptyRow(r)||t.push(r),!0)}}t.Parser=o},40478:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RowParser=void 0;const n=r(83525),i=r(98661);t.RowParser=class{constructor(e){this.parserOptions=e,this.columnParser=new n.ColumnParser(e)}static isEmptyRow(e){return""===e.join("").replace(/\s+/g,"")}parse(e){const{parserOptions:t}=this,{hasMoreData:r}=e,n=e,a=[];let o=this.getStartToken(n,a);for(;o;){if(i.Token.isTokenRowDelimiter(o))return n.advancePastToken(o),!n.hasMoreCharacters&&i.Token.isTokenCarriageReturn(o,t)&&r?null:(n.truncateToCursor(),a);if(!this.shouldSkipColumnParse(n,o,a)){const e=this.columnParser.parse(n);if(null===e)return null;a.push(e)}o=n.nextNonSpaceToken}return r?null:(n.truncateToCursor(),a)}getStartToken(e,t){const r=e.nextNonSpaceToken;return null!==r&&i.Token.isTokenDelimiter(r,this.parserOptions)?(t.push(""),e.nextNonSpaceToken):r}shouldSkipColumnParse(e,t,r){const{parserOptions:n}=this;if(i.Token.isTokenDelimiter(t,n)){e.advancePastToken(t);const a=e.nextCharacterToken;if(!e.hasMoreCharacters||null!==a&&i.Token.isTokenRowDelimiter(a))return r.push(""),!0;if(null!==a&&i.Token.isTokenDelimiter(a,n))return r.push(""),!0}return!1}}},90203:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Scanner=void 0;const n=r(98661),i=/((?:\r\n)|\n|\r)/;t.Scanner=class{constructor(e){this.cursor=0,this.line=e.line,this.lineLength=this.line.length,this.parserOptions=e.parserOptions,this.hasMoreData=e.hasMoreData,this.cursor=e.cursor||0}get hasMoreCharacters(){return this.lineLength>this.cursor}get nextNonSpaceToken(){const{lineFromCursor:e}=this,t=this.parserOptions.NEXT_TOKEN_REGEXP;if(-1===e.search(t))return null;const r=t.exec(e);if(null==r)return null;const i=r[1],a=this.cursor+(r.index||0);return new n.Token({token:i,startCursor:a,endCursor:a+i.length-1})}get nextCharacterToken(){const{cursor:e,lineLength:t}=this;return t<=e?null:new n.Token({token:this.line[e],startCursor:e,endCursor:e})}get lineFromCursor(){return this.line.substr(this.cursor)}advancePastLine(){const e=i.exec(this.lineFromCursor);return e?(this.cursor+=(e.index||0)+e[0].length,this):this.hasMoreData?null:(this.cursor=this.lineLength,this)}advanceTo(e){return this.cursor=e,this}advanceToToken(e){return this.cursor=e.startCursor,this}advancePastToken(e){return this.cursor=e.endCursor+1,this}truncateToCursor(){return this.line=this.lineFromCursor,this.lineLength=this.line.length,this.cursor=0,this}}},98661:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Token=void 0;t.Token=class{constructor(e){this.token=e.token,this.startCursor=e.startCursor,this.endCursor=e.endCursor}static isTokenRowDelimiter(e){const t=e.token;return"\r"===t||"\n"===t||"\r\n"===t}static isTokenCarriageReturn(e,t){return e.token===t.carriageReturn}static isTokenComment(e,t){return t.supportsComments&&!!e&&e.token===t.comment}static isTokenEscapeCharacter(e,t){return e.token===t.escapeChar}static isTokenQuote(e,t){return e.token===t.quote}static isTokenDelimiter(e,t){return e.token===t.delimiter}}},37165:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnFormatter=void 0;t.ColumnFormatter=class{constructor(e){e.trim?this.format=e=>e.trim():e.ltrim?this.format=e=>e.trimLeft():e.rtrim?this.format=e=>e.trimRight():this.format=e=>e}}},46231:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnParser=void 0;const n=r(75586),i=r(16443),a=r(98661);t.ColumnParser=class{constructor(e){this.parserOptions=e,this.quotedColumnParser=new i.QuotedColumnParser(e),this.nonQuotedColumnParser=new n.NonQuotedColumnParser(e)}parse(e){const{nextNonSpaceToken:t}=e;return null!==t&&a.Token.isTokenQuote(t,this.parserOptions)?(e.advanceToToken(t),this.quotedColumnParser.parse(e)):this.nonQuotedColumnParser.parse(e)}}},75586:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NonQuotedColumnParser=void 0;const n=r(37165),i=r(98661);t.NonQuotedColumnParser=class{constructor(e){this.parserOptions=e,this.columnFormatter=new n.ColumnFormatter(e)}parse(e){if(!e.hasMoreCharacters)return null;const{parserOptions:t}=this,r=[];let n=e.nextCharacterToken;for(;n&&(!i.Token.isTokenDelimiter(n,t)&&!i.Token.isTokenRowDelimiter(n));n=e.nextCharacterToken)r.push(n.token),e.advancePastToken(n);return this.columnFormatter.format(r.join(""))}}},16443:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuotedColumnParser=void 0;const n=r(37165),i=r(98661);t.QuotedColumnParser=class{constructor(e){this.parserOptions=e,this.columnFormatter=new n.ColumnFormatter(e)}parse(e){if(!e.hasMoreCharacters)return null;const t=e.cursor,{foundClosingQuote:r,col:n}=this.gatherDataBetweenQuotes(e);if(!r){if(e.advanceTo(t),!e.hasMoreData)throw new Error(`Parse Error: missing closing: '${this.parserOptions.quote||""}' in line: at '${e.lineFromCursor.replace(/[\r\n]/g,"\\n'")}'`);return null}return this.checkForMalformedColumn(e),n}gatherDataBetweenQuotes(e){const{parserOptions:t}=this;let r=!1,n=!1;const a=[];let o=e.nextCharacterToken;for(;!n&&null!==o;o=e.nextCharacterToken){const s=i.Token.isTokenQuote(o,t);if(!r&&s)r=!0;else if(r)if(i.Token.isTokenEscapeCharacter(o,t)){e.advancePastToken(o);const r=e.nextCharacterToken;null!==r&&(i.Token.isTokenQuote(r,t)||i.Token.isTokenEscapeCharacter(r,t))?(a.push(r.token),o=r):s?n=!0:a.push(o.token)}else s?n=!0:a.push(o.token);e.advancePastToken(o)}return{col:this.columnFormatter.format(a.join("")),foundClosingQuote:n}}checkForMalformedColumn(e){const{parserOptions:t}=this,{nextNonSpaceToken:r}=e;if(r){const n=i.Token.isTokenDelimiter(r,t),a=i.Token.isTokenRowDelimiter(r);if(!n&&!a){const n=e.lineFromCursor.substr(0,10).replace(/[\r\n]/g,"\\n'");throw new Error(`Parse Error: expected: '${t.escapedDelimiter}' OR new line got: '${r.token}'. at '${n}`)}e.advanceToToken(r)}else e.hasMoreData||e.advancePastLine()}}},83525:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ColumnFormatter=t.QuotedColumnParser=t.NonQuotedColumnParser=t.ColumnParser=void 0;var n=r(46231);Object.defineProperty(t,"ColumnParser",{enumerable:!0,get:function(){return n.ColumnParser}});var i=r(75586);Object.defineProperty(t,"NonQuotedColumnParser",{enumerable:!0,get:function(){return i.NonQuotedColumnParser}});var a=r(16443);Object.defineProperty(t,"QuotedColumnParser",{enumerable:!0,get:function(){return a.QuotedColumnParser}});var o=r(37165);Object.defineProperty(t,"ColumnFormatter",{enumerable:!0,get:function(){return o.ColumnFormatter}})},5147:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuotedColumnParser=t.NonQuotedColumnParser=t.ColumnParser=t.Token=t.Scanner=t.RowParser=t.Parser=void 0;var n=r(46366);Object.defineProperty(t,"Parser",{enumerable:!0,get:function(){return n.Parser}});var i=r(40478);Object.defineProperty(t,"RowParser",{enumerable:!0,get:function(){return i.RowParser}});var a=r(90203);Object.defineProperty(t,"Scanner",{enumerable:!0,get:function(){return a.Scanner}});var o=r(98661);Object.defineProperty(t,"Token",{enumerable:!0,get:function(){return o.Token}});var s=r(83525);Object.defineProperty(t,"ColumnParser",{enumerable:!0,get:function(){return s.ColumnParser}}),Object.defineProperty(t,"NonQuotedColumnParser",{enumerable:!0,get:function(){return s.NonQuotedColumnParser}}),Object.defineProperty(t,"QuotedColumnParser",{enumerable:!0,get:function(){return s.QuotedColumnParser}})},18255:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.HeaderTransformer=void 0;const i=n(r(28801)),a=n(r(98423)),o=n(r(97644)),s=n(r(20276));t.HeaderTransformer=class{constructor(e){this.headers=null,this.receivedHeaders=!1,this.shouldUseFirstRow=!1,this.processedFirstRow=!1,this.headersLength=0,this.parserOptions=e,!0===e.headers?this.shouldUseFirstRow=!0:Array.isArray(e.headers)?this.setHeaders(e.headers):a.default(e.headers)&&(this.headersTransform=e.headers)}transform(e,t){return this.shouldMapRow(e)?t(null,this.processRow(e)):t(null,{row:null,isValid:!0})}shouldMapRow(e){const{parserOptions:t}=this;if(!this.headersTransform&&t.renameHeaders&&!this.processedFirstRow){if(!this.receivedHeaders)throw new Error("Error renaming headers: new headers must be provided in an array");return this.processedFirstRow=!0,!1}if(!this.receivedHeaders&&Array.isArray(e)){if(this.headersTransform)this.setHeaders(this.headersTransform(e));else{if(!this.shouldUseFirstRow)return!0;this.setHeaders(e)}return!1}return!0}processRow(e){if(!this.headers)return{row:e,isValid:!0};const{parserOptions:t}=this;if(!t.discardUnmappedColumns&&e.length>this.headersLength){if(!t.strictColumnHandling)throw new Error(`Unexpected Error: column header mismatch expected: ${this.headersLength} columns got: ${e.length}`);return{row:e,isValid:!1,reason:`Column header mismatch expected: ${this.headersLength} columns got: ${e.length}`}}return t.strictColumnHandling&&e.length<this.headersLength?{row:e,isValid:!1,reason:`Column header mismatch expected: ${this.headersLength} columns got: ${e.length}`}:{row:this.mapHeaders(e),isValid:!0}}mapHeaders(e){const t={},{headers:r,headersLength:n}=this;for(let a=0;a<n;a+=1){const n=r[a];if(!i.default(n)){const r=e[a];i.default(r)?t[n]="":t[n]=r}}return t}setHeaders(e){var t;const r=e.filter((e=>!!e));if(o.default(r).length!==r.length){const e=s.default(r),t=Object.keys(e).filter((t=>e[t].length>1));throw new Error(`Duplicate headers found ${JSON.stringify(t)}`)}this.headers=e,this.receivedHeaders=!0,this.headersLength=(null===(t=this.headers)||void 0===t?void 0:t.length)||0}}},39529:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RowTransformerValidator=void 0;const i=n(r(98423)),a=r(53154);class o{constructor(){this._rowTransform=null,this._rowValidator=null}static createTransform(e){return a.isSyncTransform(e)?(t,r)=>{let n=null;try{n=e(t)}catch(e){return r(e)}return r(null,n)}:e}static createValidator(e){return a.isSyncValidate(e)?(t,r)=>{r(null,{row:t,isValid:e(t)})}:(t,r)=>{e(t,((e,n,i)=>e?r(e):r(null,n?{row:t,isValid:n,reason:i}:{row:t,isValid:!1,reason:i})))}}set rowTransform(e){if(!i.default(e))throw new TypeError("The transform should be a function");this._rowTransform=o.createTransform(e)}set rowValidator(e){if(!i.default(e))throw new TypeError("The validate should be a function");this._rowValidator=o.createValidator(e)}transformAndValidate(e,t){return this.callTransformer(e,((e,r)=>e?t(e):r?this.callValidator(r,((e,n)=>e?t(e):n&&!n.isValid?t(null,{row:r,isValid:!1,reason:n.reason}):t(null,{row:r,isValid:!0}))):t(null,{row:null,isValid:!0})))}callTransformer(e,t){return this._rowTransform?this._rowTransform(e,t):t(null,e)}callValidator(e,t){return this._rowValidator?this._rowValidator(e,t):t(null,{row:e,isValid:!0})}}t.RowTransformerValidator=o},23962:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HeaderTransformer=t.RowTransformerValidator=void 0;var n=r(39529);Object.defineProperty(t,"RowTransformerValidator",{enumerable:!0,get:function(){return n.RowTransformerValidator}});var i=r(18255);Object.defineProperty(t,"HeaderTransformer",{enumerable:!0,get:function(){return i.HeaderTransformer}})},53154:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSyncValidate=t.isSyncTransform=void 0,t.isSyncTransform=e=>1===e.length,t.isSyncValidate=e=>1===e.length},5623:e=>{"use strict";function t(e,t,i){e instanceof RegExp&&(e=r(e,i)),t instanceof RegExp&&(t=r(t,i));var a=n(e,t,i);return a&&{start:a[0],end:a[1],pre:i.slice(0,a[0]),body:i.slice(a[0]+e.length,a[1]),post:i.slice(a[1]+t.length)}}function r(e,t){var r=t.match(e);return r?r[0]:null}function n(e,t,r){var n,i,a,o,s,c=r.indexOf(e),l=r.indexOf(t,c+1),u=c;if(c>=0&&l>0){if(e===t)return[c,l];for(n=[],a=r.length;u>=0&&!s;)u==c?(n.push(u),c=r.indexOf(e,u+1)):1==n.length?s=[n.pop(),l]:((i=n.pop())<a&&(a=i,o=l),l=r.indexOf(t,u+1)),u=c<l&&c>=0?c:l;n.length&&(s=[a,o])}return s}e.exports=t,t.range=n},24736:(e,t,r)=>{var n;e=r.nmd(e);var i=function(e){"use strict";var t=1e7,r=7,n=9007199254740992,a=f(n),o="0123456789abcdefghijklmnopqrstuvwxyz",s="function"==typeof BigInt;function c(e,t,r,n){return void 0===e?c[0]:void 0!==t&&(10!=+t||r)?K(e,t,r,n):X(e)}function l(e,t){this.value=e,this.sign=t,this.isSmall=!1}function u(e){this.value=e,this.sign=e<0,this.isSmall=!0}function d(e){this.value=e}function p(e){return-n<e&&e<n}function f(e){return e<1e7?[e]:e<1e14?[e%1e7,Math.floor(e/1e7)]:[e%1e7,Math.floor(e/1e7)%1e7,Math.floor(e/1e14)]}function m(e){g(e);var r=e.length;if(r<4&&P(e,a)<0)switch(r){case 0:return 0;case 1:return e[0];case 2:return e[0]+e[1]*t;default:return e[0]+(e[1]+e[2]*t)*t}return e}function g(e){for(var t=e.length;0===e[--t];);e.length=t+1}function _(e){for(var t=new Array(e),r=-1;++r<e;)t[r]=0;return t}function h(e){return e>0?Math.floor(e):Math.ceil(e)}function y(e,r){var n,i,a=e.length,o=r.length,s=new Array(a),c=0,l=t;for(i=0;i<o;i++)c=(n=e[i]+r[i]+c)>=l?1:0,s[i]=n-c*l;for(;i<a;)c=(n=e[i]+c)===l?1:0,s[i++]=n-c*l;return c>0&&s.push(c),s}function v(e,t){return e.length>=t.length?y(e,t):y(t,e)}function b(e,r){var n,i,a=e.length,o=new Array(a),s=t;for(i=0;i<a;i++)n=e[i]-s+r,r=Math.floor(n/s),o[i]=n-r*s,r+=1;for(;r>0;)o[i++]=r%s,r=Math.floor(r/s);return o}function k(e,r){var n,i,a=e.length,o=r.length,s=new Array(a),c=0,l=t;for(n=0;n<o;n++)(i=e[n]-c-r[n])<0?(i+=l,c=1):c=0,s[n]=i;for(n=o;n<a;n++){if(!((i=e[n]-c)<0)){s[n++]=i;break}i+=l,s[n]=i}for(;n<a;n++)s[n]=e[n];return g(s),s}function x(e,r,n){var i,a,o=e.length,s=new Array(o),c=-r,d=t;for(i=0;i<o;i++)a=e[i]+c,c=Math.floor(a/d),a%=d,s[i]=a<0?a+d:a;return"number"==typeof(s=m(s))?(n&&(s=-s),new u(s)):new l(s,n)}function E(e,r){var n,i,a,o,s=e.length,c=r.length,l=_(s+c),u=t;for(a=0;a<s;++a){o=e[a];for(var d=0;d<c;++d)n=o*r[d]+l[a+d],i=Math.floor(n/u),l[a+d]=n-i*u,l[a+d+1]+=i}return g(l),l}function S(e,r){var n,i,a=e.length,o=new Array(a),s=t,c=0;for(i=0;i<a;i++)n=e[i]*r+c,c=Math.floor(n/s),o[i]=n-c*s;for(;c>0;)o[i++]=c%s,c=Math.floor(c/s);return o}function D(e,t){for(var r=[];t-- >0;)r.push(0);return r.concat(e)}function w(e,t){var r=Math.max(e.length,t.length);if(r<=30)return E(e,t);r=Math.ceil(r/2);var n=e.slice(r),i=e.slice(0,r),a=t.slice(r),o=t.slice(0,r),s=w(i,o),c=w(n,a),l=w(v(i,n),v(o,a)),u=v(v(s,D(k(k(l,s),c),r)),D(c,2*r));return g(u),u}function T(e,r,n){return new l(e<t?S(r,e):E(r,f(e)),n)}function C(e){var r,n,i,a,o=e.length,s=_(o+o),c=t;for(i=0;i<o;i++){n=0-(a=e[i])*a;for(var l=i;l<o;l++)r=a*e[l]*2+s[i+l]+n,n=Math.floor(r/c),s[i+l]=r-n*c;s[i+o]=n}return g(s),s}function A(e,r){var n,i,a,o,s=e.length,c=_(s),l=t;for(a=0,n=s-1;n>=0;--n)a=(o=a*l+e[n])-(i=h(o/r))*r,c[n]=0|i;return[c,0|a]}function N(e,r){var n,i=X(r);if(s)return[new d(e.value/i.value),new d(e.value%i.value)];var a,o=e.value,p=i.value;if(0===p)throw new Error("Cannot divide by zero");if(e.isSmall)return i.isSmall?[new u(h(o/p)),new u(o%p)]:[c[0],e];if(i.isSmall){if(1===p)return[e,c[0]];if(-1==p)return[e.negate(),c[0]];var y=Math.abs(p);if(y<t){a=m((n=A(o,y))[0]);var v=n[1];return e.sign&&(v=-v),"number"==typeof a?(e.sign!==i.sign&&(a=-a),[new u(a),new u(v)]):[new l(a,e.sign!==i.sign),new u(v)]}p=f(y)}var b=P(o,p);if(-1===b)return[c[0],e];if(0===b)return[c[e.sign===i.sign?1:-1],c[0]];n=o.length+p.length<=200?function(e,r){var n,i,a,o,s,c,l,u=e.length,d=r.length,p=t,f=_(r.length),g=r[d-1],h=Math.ceil(p/(2*g)),y=S(e,h),v=S(r,h);for(y.length<=u&&y.push(0),v.push(0),g=v[d-1],i=u-d;i>=0;i--){for(n=p-1,y[i+d]!==g&&(n=Math.floor((y[i+d]*p+y[i+d-1])/g)),a=0,o=0,c=v.length,s=0;s<c;s++)a+=n*v[s],l=Math.floor(a/p),o+=y[i+s]-(a-l*p),a=l,o<0?(y[i+s]=o+p,o=-1):(y[i+s]=o,o=0);for(;0!==o;){for(n-=1,a=0,s=0;s<c;s++)(a+=y[i+s]-p+v[s])<0?(y[i+s]=a+p,a=0):(y[i+s]=a,a=1);o+=a}f[i]=n}return y=A(y,h)[0],[m(f),m(y)]}(o,p):function(e,r){for(var n,i,a,o,s,c=e.length,l=r.length,u=[],d=[],p=t;c;)if(d.unshift(e[--c]),g(d),P(d,r)<0)u.push(0);else{a=d[(i=d.length)-1]*p+d[i-2],o=r[l-1]*p+r[l-2],i>l&&(a=(a+1)*p),n=Math.ceil(a/o);do{if(P(s=S(r,n),d)<=0)break;n--}while(n);u.push(n),d=k(d,s)}return u.reverse(),[m(u),m(d)]}(o,p),a=n[0];var x=e.sign!==i.sign,E=n[1],D=e.sign;return"number"==typeof a?(x&&(a=-a),a=new u(a)):a=new l(a,x),"number"==typeof E?(D&&(E=-E),E=new u(E)):E=new l(E,D),[a,E]}function P(e,t){if(e.length!==t.length)return e.length>t.length?1:-1;for(var r=e.length-1;r>=0;r--)if(e[r]!==t[r])return e[r]>t[r]?1:-1;return 0}function I(e){var t=e.abs();return!t.isUnit()&&(!!(t.equals(2)||t.equals(3)||t.equals(5))||!(t.isEven()||t.isDivisibleBy(3)||t.isDivisibleBy(5))&&(!!t.lesser(49)||void 0))}function F(e,t){for(var r,n,a,o=e.prev(),s=o,c=0;s.isEven();)s=s.divide(2),c++;e:for(n=0;n<t.length;n++)if(!e.lesser(t[n])&&!(a=i(t[n]).modPow(s,e)).isUnit()&&!a.equals(o)){for(r=c-1;0!=r;r--){if((a=a.square().mod(e)).isUnit())return!1;if(a.equals(o))continue e}return!1}return!0}l.prototype=Object.create(c.prototype),u.prototype=Object.create(c.prototype),d.prototype=Object.create(c.prototype),l.prototype.add=function(e){var t=X(e);if(this.sign!==t.sign)return this.subtract(t.negate());var r=this.value,n=t.value;return t.isSmall?new l(b(r,Math.abs(n)),this.sign):new l(v(r,n),this.sign)},l.prototype.plus=l.prototype.add,u.prototype.add=function(e){var t=X(e),r=this.value;if(r<0!==t.sign)return this.subtract(t.negate());var n=t.value;if(t.isSmall){if(p(r+n))return new u(r+n);n=f(Math.abs(n))}return new l(b(n,Math.abs(r)),r<0)},u.prototype.plus=u.prototype.add,d.prototype.add=function(e){return new d(this.value+X(e).value)},d.prototype.plus=d.prototype.add,l.prototype.subtract=function(e){var t=X(e);if(this.sign!==t.sign)return this.add(t.negate());var r=this.value,n=t.value;return t.isSmall?x(r,Math.abs(n),this.sign):function(e,t,r){var n;return P(e,t)>=0?n=k(e,t):(n=k(t,e),r=!r),"number"==typeof(n=m(n))?(r&&(n=-n),new u(n)):new l(n,r)}(r,n,this.sign)},l.prototype.minus=l.prototype.subtract,u.prototype.subtract=function(e){var t=X(e),r=this.value;if(r<0!==t.sign)return this.add(t.negate());var n=t.value;return t.isSmall?new u(r-n):x(n,Math.abs(r),r>=0)},u.prototype.minus=u.prototype.subtract,d.prototype.subtract=function(e){return new d(this.value-X(e).value)},d.prototype.minus=d.prototype.subtract,l.prototype.negate=function(){return new l(this.value,!this.sign)},u.prototype.negate=function(){var e=this.sign,t=new u(-this.value);return t.sign=!e,t},d.prototype.negate=function(){return new d(-this.value)},l.prototype.abs=function(){return new l(this.value,!1)},u.prototype.abs=function(){return new u(Math.abs(this.value))},d.prototype.abs=function(){return new d(this.value>=0?this.value:-this.value)},l.prototype.multiply=function(e){var r,n,i,a=X(e),o=this.value,s=a.value,u=this.sign!==a.sign;if(a.isSmall){if(0===s)return c[0];if(1===s)return this;if(-1===s)return this.negate();if((r=Math.abs(s))<t)return new l(S(o,r),u);s=f(r)}return n=o.length,i=s.length,new l(-.012*n-.012*i+15e-6*n*i>0?w(o,s):E(o,s),u)},l.prototype.times=l.prototype.multiply,u.prototype._multiplyBySmall=function(e){return p(e.value*this.value)?new u(e.value*this.value):T(Math.abs(e.value),f(Math.abs(this.value)),this.sign!==e.sign)},l.prototype._multiplyBySmall=function(e){return 0===e.value?c[0]:1===e.value?this:-1===e.value?this.negate():T(Math.abs(e.value),this.value,this.sign!==e.sign)},u.prototype.multiply=function(e){return X(e)._multiplyBySmall(this)},u.prototype.times=u.prototype.multiply,d.prototype.multiply=function(e){return new d(this.value*X(e).value)},d.prototype.times=d.prototype.multiply,l.prototype.square=function(){return new l(C(this.value),!1)},u.prototype.square=function(){var e=this.value*this.value;return p(e)?new u(e):new l(C(f(Math.abs(this.value))),!1)},d.prototype.square=function(e){return new d(this.value*this.value)},l.prototype.divmod=function(e){var t=N(this,e);return{quotient:t[0],remainder:t[1]}},d.prototype.divmod=u.prototype.divmod=l.prototype.divmod,l.prototype.divide=function(e){return N(this,e)[0]},d.prototype.over=d.prototype.divide=function(e){return new d(this.value/X(e).value)},u.prototype.over=u.prototype.divide=l.prototype.over=l.prototype.divide,l.prototype.mod=function(e){return N(this,e)[1]},d.prototype.mod=d.prototype.remainder=function(e){return new d(this.value%X(e).value)},u.prototype.remainder=u.prototype.mod=l.prototype.remainder=l.prototype.mod,l.prototype.pow=function(e){var t,r,n,i=X(e),a=this.value,o=i.value;if(0===o)return c[1];if(0===a)return c[0];if(1===a)return c[1];if(-1===a)return i.isEven()?c[1]:c[-1];if(i.sign)return c[0];if(!i.isSmall)throw new Error("The exponent "+i.toString()+" is too large.");if(this.isSmall&&p(t=Math.pow(a,o)))return new u(h(t));for(r=this,n=c[1];!0&o&&(n=n.times(r),--o),0!==o;)o/=2,r=r.square();return n},u.prototype.pow=l.prototype.pow,d.prototype.pow=function(e){var t=X(e),r=this.value,n=t.value,i=BigInt(0),a=BigInt(1),o=BigInt(2);if(n===i)return c[1];if(r===i)return c[0];if(r===a)return c[1];if(r===BigInt(-1))return t.isEven()?c[1]:c[-1];if(t.isNegative())return new d(i);for(var s=this,l=c[1];(n&a)===a&&(l=l.times(s),--n),n!==i;)n/=o,s=s.square();return l},l.prototype.modPow=function(e,t){if(e=X(e),(t=X(t)).isZero())throw new Error("Cannot take modPow with modulus 0");var r=c[1],n=this.mod(t);for(e.isNegative()&&(e=e.multiply(c[-1]),n=n.modInv(t));e.isPositive();){if(n.isZero())return c[0];e.isOdd()&&(r=r.multiply(n).mod(t)),e=e.divide(2),n=n.square().mod(t)}return r},d.prototype.modPow=u.prototype.modPow=l.prototype.modPow,l.prototype.compareAbs=function(e){var t=X(e),r=this.value,n=t.value;return t.isSmall?1:P(r,n)},u.prototype.compareAbs=function(e){var t=X(e),r=Math.abs(this.value),n=t.value;return t.isSmall?r===(n=Math.abs(n))?0:r>n?1:-1:-1},d.prototype.compareAbs=function(e){var t=this.value,r=X(e).value;return(t=t>=0?t:-t)===(r=r>=0?r:-r)?0:t>r?1:-1},l.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=X(e),r=this.value,n=t.value;return this.sign!==t.sign?t.sign?1:-1:t.isSmall?this.sign?-1:1:P(r,n)*(this.sign?-1:1)},l.prototype.compareTo=l.prototype.compare,u.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=X(e),r=this.value,n=t.value;return t.isSmall?r==n?0:r>n?1:-1:r<0!==t.sign?r<0?-1:1:r<0?1:-1},u.prototype.compareTo=u.prototype.compare,d.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=this.value,r=X(e).value;return t===r?0:t>r?1:-1},d.prototype.compareTo=d.prototype.compare,l.prototype.equals=function(e){return 0===this.compare(e)},d.prototype.eq=d.prototype.equals=u.prototype.eq=u.prototype.equals=l.prototype.eq=l.prototype.equals,l.prototype.notEquals=function(e){return 0!==this.compare(e)},d.prototype.neq=d.prototype.notEquals=u.prototype.neq=u.prototype.notEquals=l.prototype.neq=l.prototype.notEquals,l.prototype.greater=function(e){return this.compare(e)>0},d.prototype.gt=d.prototype.greater=u.prototype.gt=u.prototype.greater=l.prototype.gt=l.prototype.greater,l.prototype.lesser=function(e){return this.compare(e)<0},d.prototype.lt=d.prototype.lesser=u.prototype.lt=u.prototype.lesser=l.prototype.lt=l.prototype.lesser,l.prototype.greaterOrEquals=function(e){return this.compare(e)>=0},d.prototype.geq=d.prototype.greaterOrEquals=u.prototype.geq=u.prototype.greaterOrEquals=l.prototype.geq=l.prototype.greaterOrEquals,l.prototype.lesserOrEquals=function(e){return this.compare(e)<=0},d.prototype.leq=d.prototype.lesserOrEquals=u.prototype.leq=u.prototype.lesserOrEquals=l.prototype.leq=l.prototype.lesserOrEquals,l.prototype.isEven=function(){return 0==(1&this.value[0])},u.prototype.isEven=function(){return 0==(1&this.value)},d.prototype.isEven=function(){return(this.value&BigInt(1))===BigInt(0)},l.prototype.isOdd=function(){return 1==(1&this.value[0])},u.prototype.isOdd=function(){return 1==(1&this.value)},d.prototype.isOdd=function(){return(this.value&BigInt(1))===BigInt(1)},l.prototype.isPositive=function(){return!this.sign},u.prototype.isPositive=function(){return this.value>0},d.prototype.isPositive=u.prototype.isPositive,l.prototype.isNegative=function(){return this.sign},u.prototype.isNegative=function(){return this.value<0},d.prototype.isNegative=u.prototype.isNegative,l.prototype.isUnit=function(){return!1},u.prototype.isUnit=function(){return 1===Math.abs(this.value)},d.prototype.isUnit=function(){return this.abs().value===BigInt(1)},l.prototype.isZero=function(){return!1},u.prototype.isZero=function(){return 0===this.value},d.prototype.isZero=function(){return this.value===BigInt(0)},l.prototype.isDivisibleBy=function(e){var t=X(e);return!t.isZero()&&(!!t.isUnit()||(0===t.compareAbs(2)?this.isEven():this.mod(t).isZero()))},d.prototype.isDivisibleBy=u.prototype.isDivisibleBy=l.prototype.isDivisibleBy,l.prototype.isPrime=function(t){var r=I(this);if(r!==e)return r;var n=this.abs(),a=n.bitLength();if(a<=64)return F(n,[2,3,5,7,11,13,17,19,23,29,31,37]);for(var o=Math.log(2)*a.toJSNumber(),s=Math.ceil(!0===t?2*Math.pow(o,2):o),c=[],l=0;l<s;l++)c.push(i(l+2));return F(n,c)},d.prototype.isPrime=u.prototype.isPrime=l.prototype.isPrime,l.prototype.isProbablePrime=function(t,r){var n=I(this);if(n!==e)return n;for(var a=this.abs(),o=t===e?5:t,s=[],c=0;c<o;c++)s.push(i.randBetween(2,a.minus(2),r));return F(a,s)},d.prototype.isProbablePrime=u.prototype.isProbablePrime=l.prototype.isProbablePrime,l.prototype.modInv=function(e){for(var t,r,n,a=i.zero,o=i.one,s=X(e),c=this.abs();!c.isZero();)t=s.divide(c),r=a,n=s,a=o,s=c,o=r.subtract(t.multiply(o)),c=n.subtract(t.multiply(c));if(!s.isUnit())throw new Error(this.toString()+" and "+e.toString()+" are not co-prime");return-1===a.compare(0)&&(a=a.add(e)),this.isNegative()?a.negate():a},d.prototype.modInv=u.prototype.modInv=l.prototype.modInv,l.prototype.next=function(){var e=this.value;return this.sign?x(e,1,this.sign):new l(b(e,1),this.sign)},u.prototype.next=function(){var e=this.value;return e+1<n?new u(e+1):new l(a,!1)},d.prototype.next=function(){return new d(this.value+BigInt(1))},l.prototype.prev=function(){var e=this.value;return this.sign?new l(b(e,1),!0):x(e,1,this.sign)},u.prototype.prev=function(){var e=this.value;return e-1>-n?new u(e-1):new l(a,!0)},d.prototype.prev=function(){return new d(this.value-BigInt(1))};for(var O=[1];2*O[O.length-1]<=t;)O.push(2*O[O.length-1]);var R=O.length,M=O[R-1];function L(e){return Math.abs(e)<=t}function j(e,t,r){t=X(t);for(var n=e.isNegative(),a=t.isNegative(),o=n?e.not():e,s=a?t.not():t,c=0,l=0,u=null,d=null,p=[];!o.isZero()||!s.isZero();)c=(u=N(o,M))[1].toJSNumber(),n&&(c=M-1-c),l=(d=N(s,M))[1].toJSNumber(),a&&(l=M-1-l),o=u[0],s=d[0],p.push(r(c,l));for(var f=0!==r(n?1:0,a?1:0)?i(-1):i(0),m=p.length-1;m>=0;m-=1)f=f.multiply(M).add(i(p[m]));return f}l.prototype.shiftLeft=function(e){var t=X(e).toJSNumber();if(!L(t))throw new Error(String(t)+" is too large for shifting.");if(t<0)return this.shiftRight(-t);var r=this;if(r.isZero())return r;for(;t>=R;)r=r.multiply(M),t-=R-1;return r.multiply(O[t])},d.prototype.shiftLeft=u.prototype.shiftLeft=l.prototype.shiftLeft,l.prototype.shiftRight=function(e){var t,r=X(e).toJSNumber();if(!L(r))throw new Error(String(r)+" is too large for shifting.");if(r<0)return this.shiftLeft(-r);for(var n=this;r>=R;){if(n.isZero()||n.isNegative()&&n.isUnit())return n;n=(t=N(n,M))[1].isNegative()?t[0].prev():t[0],r-=R-1}return(t=N(n,O[r]))[1].isNegative()?t[0].prev():t[0]},d.prototype.shiftRight=u.prototype.shiftRight=l.prototype.shiftRight,l.prototype.not=function(){return this.negate().prev()},d.prototype.not=u.prototype.not=l.prototype.not,l.prototype.and=function(e){return j(this,e,(function(e,t){return e&t}))},d.prototype.and=u.prototype.and=l.prototype.and,l.prototype.or=function(e){return j(this,e,(function(e,t){return e|t}))},d.prototype.or=u.prototype.or=l.prototype.or,l.prototype.xor=function(e){return j(this,e,(function(e,t){return e^t}))},d.prototype.xor=u.prototype.xor=l.prototype.xor;var B=1<<30,z=(t&-t)*(t&-t)|B;function U(e){var r=e.value,n="number"==typeof r?r|B:"bigint"==typeof r?r|BigInt(B):r[0]+r[1]*t|z;return n&-n}function q(e,t){if(t.compareTo(e)<=0){var r=q(e,t.square(t)),n=r.p,a=r.e,o=n.multiply(t);return o.compareTo(e)<=0?{p:o,e:2*a+1}:{p:n,e:2*a}}return{p:i(1),e:0}}function J(e,t){return e=X(e),t=X(t),e.greater(t)?e:t}function V(e,t){return e=X(e),t=X(t),e.lesser(t)?e:t}function H(e,t){if(e=X(e).abs(),t=X(t).abs(),e.equals(t))return e;if(e.isZero())return t;if(t.isZero())return e;for(var r,n,i=c[1];e.isEven()&&t.isEven();)r=V(U(e),U(t)),e=e.divide(r),t=t.divide(r),i=i.multiply(r);for(;e.isEven();)e=e.divide(U(e));do{for(;t.isEven();)t=t.divide(U(t));e.greater(t)&&(n=t,t=e,e=n),t=t.subtract(e)}while(!t.isZero());return i.isUnit()?e:e.multiply(i)}l.prototype.bitLength=function(){var e=this;return e.compareTo(i(0))<0&&(e=e.negate().subtract(i(1))),0===e.compareTo(i(0))?i(0):i(q(e,i(2)).e).add(i(1))},d.prototype.bitLength=u.prototype.bitLength=l.prototype.bitLength;var K=function(e,t,r,n){r=r||o,e=String(e),n||(e=e.toLowerCase(),r=r.toLowerCase());var i,a=e.length,s=Math.abs(t),c={};for(i=0;i<r.length;i++)c[r[i]]=i;for(i=0;i<a;i++){if("-"!==(d=e[i])&&(d in c&&c[d]>=s)){if("1"===d&&1===s)continue;throw new Error(d+" is not a valid digit in base "+t+".")}}t=X(t);var l=[],u="-"===e[0];for(i=u?1:0;i<e.length;i++){var d;if((d=e[i])in c)l.push(X(c[d]));else{if("<"!==d)throw new Error(d+" is not a valid character");var p=i;do{i++}while(">"!==e[i]&&i<e.length);l.push(X(e.slice(p+1,i)))}}return W(l,t,u)};function W(e,t,r){var n,i=c[0],a=c[1];for(n=e.length-1;n>=0;n--)i=i.add(e[n].times(a)),a=a.times(t);return r?i.negate():i}function G(e,t){if((t=i(t)).isZero()){if(e.isZero())return{value:[0],isNegative:!1};throw new Error("Cannot convert nonzero numbers to base 0.")}if(t.equals(-1)){if(e.isZero())return{value:[0],isNegative:!1};if(e.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-e.toJSNumber())).map(Array.prototype.valueOf,[1,0])),isNegative:!1};var r=Array.apply(null,Array(e.toJSNumber()-1)).map(Array.prototype.valueOf,[0,1]);return r.unshift([1]),{value:[].concat.apply([],r),isNegative:!1}}var n=!1;if(e.isNegative()&&t.isPositive()&&(n=!0,e=e.abs()),t.isUnit())return e.isZero()?{value:[0],isNegative:!1}:{value:Array.apply(null,Array(e.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:n};for(var a,o=[],s=e;s.isNegative()||s.compareAbs(t)>=0;){a=s.divmod(t),s=a.quotient;var c=a.remainder;c.isNegative()&&(c=t.minus(c).abs(),s=s.next()),o.push(c.toJSNumber())}return o.push(s.toJSNumber()),{value:o.reverse(),isNegative:n}}function $(e,t,r){var n=G(e,t);return(n.isNegative?"-":"")+n.value.map((function(e){return function(e,t){return e<(t=t||o).length?t[e]:"<"+e+">"}(e,r)})).join("")}function Y(e){if(p(+e)){var t=+e;if(t===h(t))return s?new d(BigInt(t)):new u(t);throw new Error("Invalid integer: "+e)}var n="-"===e[0];n&&(e=e.slice(1));var i=e.split(/e/i);if(i.length>2)throw new Error("Invalid integer: "+i.join("e"));if(2===i.length){var a=i[1];if("+"===a[0]&&(a=a.slice(1)),(a=+a)!==h(a)||!p(a))throw new Error("Invalid integer: "+a+" is not a valid exponent.");var o=i[0],c=o.indexOf(".");if(c>=0&&(a-=o.length-c-1,o=o.slice(0,c)+o.slice(c+1)),a<0)throw new Error("Cannot include negative exponent part for integers");e=o+=new Array(a+1).join("0")}if(!/^([0-9][0-9]*)$/.test(e))throw new Error("Invalid integer: "+e);if(s)return new d(BigInt(n?"-"+e:e));for(var f=[],m=e.length,_=r,y=m-_;m>0;)f.push(+e.slice(y,m)),(y-=_)<0&&(y=0),m-=_;return g(f),new l(f,n)}function X(e){return"number"==typeof e?function(e){if(s)return new d(BigInt(e));if(p(e)){if(e!==h(e))throw new Error(e+" is not an integer.");return new u(e)}return Y(e.toString())}(e):"string"==typeof e?Y(e):"bigint"==typeof e?new d(e):e}l.prototype.toArray=function(e){return G(this,e)},u.prototype.toArray=function(e){return G(this,e)},d.prototype.toArray=function(e){return G(this,e)},l.prototype.toString=function(t,r){if(t===e&&(t=10),10!==t)return $(this,t,r);for(var n,i=this.value,a=i.length,o=String(i[--a]);--a>=0;)n=String(i[a]),o+="0000000".slice(n.length)+n;return(this.sign?"-":"")+o},u.prototype.toString=function(t,r){return t===e&&(t=10),10!=t?$(this,t,r):String(this.value)},d.prototype.toString=u.prototype.toString,d.prototype.toJSON=l.prototype.toJSON=u.prototype.toJSON=function(){return this.toString()},l.prototype.valueOf=function(){return parseInt(this.toString(),10)},l.prototype.toJSNumber=l.prototype.valueOf,u.prototype.valueOf=function(){return this.value},u.prototype.toJSNumber=u.prototype.valueOf,d.prototype.valueOf=d.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};for(var Q=0;Q<1e3;Q++)c[Q]=X(Q),Q>0&&(c[-Q]=X(-Q));return c.one=c[1],c.zero=c[0],c.minusOne=c[-1],c.max=J,c.min=V,c.gcd=H,c.lcm=function(e,t){return e=X(e).abs(),t=X(t).abs(),e.divide(H(e,t)).multiply(t)},c.isInstance=function(e){return e instanceof l||e instanceof u||e instanceof d},c.randBetween=function(e,r,n){e=X(e),r=X(r);var i=n||Math.random,a=V(e,r),o=J(e,r).subtract(a).add(1);if(o.isSmall)return a.add(Math.floor(i()*o));for(var s=G(o,t).value,l=[],u=!0,d=0;d<s.length;d++){var p=u?s[d]+(d+1<s.length?s[d+1]/t:0):t,f=h(i()*p);l.push(f),f<s[d]&&(u=!1)}return a.add(c.fromArray(l,t,!1))},c.fromArray=function(e,t,r){return W(e.map(X),X(t||10),r)},c}();e.hasOwnProperty("exports")&&(e.exports=i),void 0===(n=function(){return i}.call(t,r,t,e))||(e.exports=n)},67740:(e,t,r)=>{var n=r(4077),i=r(82361).EventEmitter,a=r(75289),o=r(77962),s=r(12781).Stream;function c(e){for(var t=0,r=0;r<e.length;r++)t+=Math.pow(256,r)*e[r];return t}function l(e){for(var t=0,r=0;r<e.length;r++)t+=Math.pow(256,e.length-r-1)*e[r];return t}function u(e){var t=l(e);return 128==(128&e[0])&&(t-=Math.pow(256,e.length)),t}function d(e){var t=c(e);return 128==(128&e[e.length-1])&&(t-=Math.pow(256,e.length)),t}function p(e){var t={};return[1,2,4,8].forEach((function(r){var n=8*r;t["word"+n+"le"]=t["word"+n+"lu"]=e(r,c),t["word"+n+"ls"]=e(r,d),t["word"+n+"be"]=t["word"+n+"bu"]=e(r,l),t["word"+n+"bs"]=e(r,u)})),t.word8=t.word8u=t.word8be,t.word8s=t.word8bs,t}(t=e.exports=function(e,r){if(Buffer.isBuffer(e))return t.parse(e);var n=t.stream();return e&&e.pipe?e.pipe(n):e&&(e.on(r||"data",(function(e){n.write(e)})),e.on("end",(function(){n.end()}))),n}).stream=function(e){if(e)return t.apply(null,arguments);var r=null;function c(e,t,n){r={bytes:e,skip:n,cb:function(e){r=null,t(e)}},u()}var l=null;function u(){if(r)if("function"==typeof r)r();else{var e,t=l+r.bytes;if(f.length>=t)null==l?(e=f.splice(0,t),r.skip||(e=e.slice())):(r.skip||(e=f.slice(l,t)),l=t),r.skip?r.cb():r.cb(e)}else _&&(g=!0)}var d=n.light((function(e){function t(){g||e.next()}var n=p((function(e,r){return function(n){c(e,(function(e){m.set(n,r(e)),t()}))}}));return n.tap=function(t){e.nest(t,m.store)},n.into=function(t,r){m.get(t)||m.set(t,{});var n=m;m=o(n.get(t)),e.nest((function(){r.apply(this,arguments),this.tap((function(){m=n}))}),m.store)},n.flush=function(){m.store={},t()},n.loop=function(r){var n=!1;e.nest(!1,(function i(){this.vars=m.store,r.call(this,(function(){n=!0,t()}),m.store),this.tap(function(){n?e.next():i.call(this)}.bind(this))}),m.store)},n.buffer=function(e,r){"string"==typeof r&&(r=m.get(r)),c(r,(function(r){m.set(e,r),t()}))},n.skip=function(e){"string"==typeof e&&(e=m.get(e)),c(e,(function(){t()}))},n.scan=function(e,n){if("string"==typeof n)n=new Buffer(n);else if(!Buffer.isBuffer(n))throw new Error("search must be a Buffer or a string");var i=0;r=function(){var a=f.indexOf(n,l+i),o=a-l-i;-1!==a?(r=null,null!=l?(m.set(e,f.slice(l,l+i+o)),l+=i+o+n.length):(m.set(e,f.slice(0,i+o)),f.splice(0,i+o+n.length)),t(),u()):o=Math.max(f.length-n.length-l-i,0),i+=o},u()},n.peek=function(t){l=0,e.nest((function(){t.call(this,m.store),this.tap((function(){l=null}))}))},n}));d.writable=!0;var f=a();d.write=function(e){f.push(e),u()};var m=o(),g=!1,_=!1;return d.end=function(){_=!0},d.pipe=s.prototype.pipe,Object.getOwnPropertyNames(i.prototype).forEach((function(e){d[e]=i.prototype[e]})),d},t.parse=function(e){var t=p((function(i,a){return function(o){if(r+i<=e.length){var s=e.slice(r,r+i);r+=i,n.set(o,a(s))}else n.set(o,null);return t}})),r=0,n=o();return t.vars=n.store,t.tap=function(e){return e.call(t,n.store),t},t.into=function(e,r){n.get(e)||n.set(e,{});var i=n;return n=o(i.get(e)),r.call(t,n.store),n=i,t},t.loop=function(e){for(var r=!1,i=function(){r=!0};!1===r;)e.call(t,i,n.store);return t},t.buffer=function(i,a){"string"==typeof a&&(a=n.get(a));var o=e.slice(r,Math.min(e.length,r+a));return r+=a,n.set(i,o),t},t.skip=function(e){return"string"==typeof e&&(e=n.get(e)),r+=e,t},t.scan=function(i,a){if("string"==typeof a)a=new Buffer(a);else if(!Buffer.isBuffer(a))throw new Error("search must be a Buffer or a string");n.set(i,null);for(var o=0;o+r<=e.length-a.length+1;o++){for(var s=0;s<a.length&&e[r+o+s]===a[s];s++);if(s===a.length)break}return n.set(i,e.slice(r,r+o)),r+=o+a.length,t},t.peek=function(e){var i=r;return e.call(t,n.store),r=i,t},t.flush=function(){return n.store={},t},t.eof=function(){return r>=e.length},t}},77962:e=>{e.exports=function(e){function t(e,t){var n=r.store,i=e.split(".");i.slice(0,-1).forEach((function(e){void 0===n[e]&&(n[e]={}),n=n[e]}));var a=i[i.length-1];return 1==arguments.length?n[a]:n[a]=t}var r={get:function(e){return t(e)},set:function(e,r){return t(e,r)},store:e||{}};return r}},9668:(e,t,r)=>{"use strict";const{Buffer:n}=r(14300),i=Symbol.for("BufferList");function a(e){if(!(this instanceof a))return new a(e);a._init.call(this,e)}a._init=function(e){Object.defineProperty(this,i,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)},a.prototype._new=function(e){return new a(e)},a.prototype._offset=function(e){if(0===e)return[0,0];let t=0;for(let r=0;r<this._bufs.length;r++){const n=t+this._bufs[r].length;if(e<n||r===this._bufs.length-1)return[r,e-t];t=n}},a.prototype._reverseOffset=function(e){const t=e[0];let r=e[1];for(let e=0;e<t;e++)r+=this._bufs[e].length;return r},a.prototype.get=function(e){if(e>this.length||e<0)return;const t=this._offset(e);return this._bufs[t[0]][t[1]]},a.prototype.slice=function(e,t){return"number"==typeof e&&e<0&&(e+=this.length),"number"==typeof t&&t<0&&(t+=this.length),this.copy(null,0,e,t)},a.prototype.copy=function(e,t,r,i){if(("number"!=typeof r||r<0)&&(r=0),("number"!=typeof i||i>this.length)&&(i=this.length),r>=this.length)return e||n.alloc(0);if(i<=0)return e||n.alloc(0);const a=!!e,o=this._offset(r),s=i-r;let c=s,l=a&&t||0,u=o[1];if(0===r&&i===this.length){if(!a)return 1===this._bufs.length?this._bufs[0]:n.concat(this._bufs,this.length);for(let t=0;t<this._bufs.length;t++)this._bufs[t].copy(e,l),l+=this._bufs[t].length;return e}if(c<=this._bufs[o[0]].length-u)return a?this._bufs[o[0]].copy(e,t,u,u+c):this._bufs[o[0]].slice(u,u+c);a||(e=n.allocUnsafe(s));for(let t=o[0];t<this._bufs.length;t++){const r=this._bufs[t].length-u;if(!(c>r)){this._bufs[t].copy(e,l,u,u+c),l+=r;break}this._bufs[t].copy(e,l,u),l+=r,c-=r,u&&(u=0)}return e.length>l?e.slice(0,l):e},a.prototype.shallowSlice=function(e,t){if(e=e||0,t="number"!=typeof t?this.length:t,e<0&&(e+=this.length),t<0&&(t+=this.length),e===t)return this._new();const r=this._offset(e),n=this._offset(t),i=this._bufs.slice(r[0],n[0]+1);return 0===n[1]?i.pop():i[i.length-1]=i[i.length-1].slice(0,n[1]),0!==r[1]&&(i[0]=i[0].slice(r[1])),this._new(i)},a.prototype.toString=function(e,t,r){return this.slice(t,r).toString(e)},a.prototype.consume=function(e){if(e=Math.trunc(e),Number.isNaN(e)||e<=0)return this;for(;this._bufs.length;){if(!(e>=this._bufs[0].length)){this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift()}return this},a.prototype.duplicate=function(){const e=this._new();for(let t=0;t<this._bufs.length;t++)e.append(this._bufs[t]);return e},a.prototype.append=function(e){if(null==e)return this;if(e.buffer)this._appendBuffer(n.from(e.buffer,e.byteOffset,e.byteLength));else if(Array.isArray(e))for(let t=0;t<e.length;t++)this.append(e[t]);else if(this._isBufferList(e))for(let t=0;t<e._bufs.length;t++)this.append(e._bufs[t]);else"number"==typeof e&&(e=e.toString()),this._appendBuffer(n.from(e));return this},a.prototype._appendBuffer=function(e){this._bufs.push(e),this.length+=e.length},a.prototype.indexOf=function(e,t,r){if(void 0===r&&"string"==typeof t&&(r=t,t=void 0),"function"==typeof e||Array.isArray(e))throw new TypeError('The "value" argument must be one of type string, Buffer, BufferList, or Uint8Array.');if("number"==typeof e?e=n.from([e]):"string"==typeof e?e=n.from(e,r):this._isBufferList(e)?e=e.slice():Array.isArray(e.buffer)?e=n.from(e.buffer,e.byteOffset,e.byteLength):n.isBuffer(e)||(e=n.from(e)),t=Number(t||0),isNaN(t)&&(t=0),t<0&&(t=this.length+t),t<0&&(t=0),0===e.length)return t>this.length?this.length:t;const i=this._offset(t);let a=i[0],o=i[1];for(;a<this._bufs.length;a++){const t=this._bufs[a];for(;o<t.length;){if(t.length-o>=e.length){const r=t.indexOf(e,o);if(-1!==r)return this._reverseOffset([a,r]);o=t.length-e.length+1}else{const t=this._reverseOffset([a,o]);if(this._match(t,e))return t;o++}}o=0}return-1},a.prototype._match=function(e,t){if(this.length-e<t.length)return!1;for(let r=0;r<t.length;r++)if(this.get(e+r)!==t[r])return!1;return!0},function(){const e={readDoubleBE:8,readDoubleLE:8,readFloatBE:4,readFloatLE:4,readInt32BE:4,readInt32LE:4,readUInt32BE:4,readUInt32LE:4,readInt16BE:2,readInt16LE:2,readUInt16BE:2,readUInt16LE:2,readInt8:1,readUInt8:1,readIntBE:null,readIntLE:null,readUIntBE:null,readUIntLE:null};for(const t in e)!function(t){a.prototype[t]=null===e[t]?function(e,r){return this.slice(e,e+r)[t](0,r)}:function(r=0){return this.slice(r,r+e[t])[t](0)}}(t)}(),a.prototype._isBufferList=function(e){return e instanceof a||a.isBufferList(e)},a.isBufferList=function(e){return null!=e&&e[i]},e.exports=a},10022:(e,t,r)=>{"use strict";const n=r(11451).Duplex,i=r(94378),a=r(9668);function o(e){if(!(this instanceof o))return new o(e);if("function"==typeof e){this._callback=e;const t=function(e){this._callback&&(this._callback(e),this._callback=null)}.bind(this);this.on("pipe",(function(e){e.on("error",t)})),this.on("unpipe",(function(e){e.removeListener("error",t)})),e=null}a._init.call(this,e),n.call(this)}i(o,n),Object.assign(o.prototype,a.prototype),o.prototype._new=function(e){return new o(e)},o.prototype._write=function(e,t,r){this._appendBuffer(e),"function"==typeof r&&r()},o.prototype._read=function(e){if(!this.length)return this.push(null);e=Math.min(e,this.length),this.push(this.slice(0,e)),this.consume(e)},o.prototype.end=function(e){n.prototype.end.call(this,e),this._callback&&(this._callback(null,this.slice()),this._callback=null)},o.prototype._destroy=function(e,t){this._bufs.length=0,this.length=0,t(e)},o.prototype._isBufferList=function(e){return e instanceof o||e instanceof a||o.isBufferList(e)},o.isBufferList=a.isBufferList,e.exports=o,e.exports.BufferListStream=o,e.exports.BufferList=a},89846:e=>{"use strict";e.exports=function(e){var t=e._SomePromiseArray;function r(e){var r=new t(e),n=r.promise();return r.setHowMany(1),r.setUnwrap(),r.init(),n}e.any=function(e){return r(e)},e.prototype.any=function(){return r(this)}}},4601:(e,t,r)=>{"use strict";var n;try{throw new Error}catch(e){n=e}var i=r(10679),a=r(7824),o=r(75942);function s(){this._customScheduler=!1,this._isTickUsed=!1,this._lateQueue=new a(16),this._normalQueue=new a(16),this._haveDrainedQueues=!1,this._trampolineEnabled=!0;var e=this;this.drainQueues=function(){e._drainQueues()},this._schedule=i}function c(e,t,r){this._lateQueue.push(e,t,r),this._queueTick()}function l(e,t,r){this._normalQueue.push(e,t,r),this._queueTick()}function u(e){this._normalQueue._pushOne(e),this._queueTick()}s.prototype.setScheduler=function(e){var t=this._schedule;return this._schedule=e,this._customScheduler=!0,t},s.prototype.hasCustomScheduler=function(){return this._customScheduler},s.prototype.enableTrampoline=function(){this._trampolineEnabled=!0},s.prototype.disableTrampolineIfNecessary=function(){o.hasDevTools&&(this._trampolineEnabled=!1)},s.prototype.haveItemsQueued=function(){return this._isTickUsed||this._haveDrainedQueues},s.prototype.fatalError=function(e,t){t?(process.stderr.write("Fatal "+(e instanceof Error?e.stack:e)+"\n"),process.exit(2)):this.throwLater(e)},s.prototype.throwLater=function(e,t){if(1===arguments.length&&(t=e,e=function(){throw t}),"undefined"!=typeof setTimeout)setTimeout((function(){e(t)}),0);else try{this._schedule((function(){e(t)}))}catch(e){throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n")}},o.hasDevTools?(s.prototype.invokeLater=function(e,t,r){this._trampolineEnabled?c.call(this,e,t,r):this._schedule((function(){setTimeout((function(){e.call(t,r)}),100)}))},s.prototype.invoke=function(e,t,r){this._trampolineEnabled?l.call(this,e,t,r):this._schedule((function(){e.call(t,r)}))},s.prototype.settlePromises=function(e){this._trampolineEnabled?u.call(this,e):this._schedule((function(){e._settlePromises()}))}):(s.prototype.invokeLater=c,s.prototype.invoke=l,s.prototype.settlePromises=u),s.prototype._drainQueue=function(e){for(;e.length()>0;){var t=e.shift();if("function"==typeof t){var r=e.shift(),n=e.shift();t.call(r,n)}else t._settlePromises()}},s.prototype._drainQueues=function(){this._drainQueue(this._normalQueue),this._reset(),this._haveDrainedQueues=!0,this._drainQueue(this._lateQueue)},s.prototype._queueTick=function(){this._isTickUsed||(this._isTickUsed=!0,this._schedule(this.drainQueues))},s.prototype._reset=function(){this._isTickUsed=!1},e.exports=s,e.exports.firstLineError=n},23635:e=>{"use strict";e.exports=function(e,t,r,n){var i=!1,a=function(e,t){this._reject(t)},o=function(e,t){t.promiseRejectionQueued=!0,t.bindingPromise._then(a,a,null,this,e)},s=function(e,t){0==(50397184&this._bitField)&&this._resolveCallback(t.target)},c=function(e,t){t.promiseRejectionQueued||this._reject(e)};e.prototype.bind=function(a){i||(i=!0,e.prototype._propagateFrom=n.propagateFromFunction(),e.prototype._boundValue=n.boundValueFunction());var l=r(a),u=new e(t);u._propagateFrom(this,1);var d=this._target();if(u._setBoundTo(l),l instanceof e){var p={promiseRejectionQueued:!1,promise:u,target:d,bindingPromise:l};d._then(t,o,void 0,u,p),l._then(s,c,void 0,u,p),u._setOnCancel(l)}else u._resolveCallback(d);return u},e.prototype._setBoundTo=function(e){void 0!==e?(this._bitField=2097152|this._bitField,this._boundTo=e):this._bitField=-2097153&this._bitField},e.prototype._isBound=function(){return 2097152==(2097152&this._bitField)},e.bind=function(t,r){return e.resolve(r).bind(t)}}},93786:(e,t,r)=>{"use strict";var n;"undefined"!=typeof Promise&&(n=Promise);var i=r(7502)();i.noConflict=function(){try{Promise===i&&(Promise=n)}catch(e){}return i},e.exports=i},12293:(e,t,r)=>{"use strict";var n=Object.create;if(n){var i=n(null),a=n(null);i[" size"]=a[" size"]=0}e.exports=function(e){var t,n,o=r(75942),s=o.canEvaluate,c=o.isIdentifier,l=function(e){return new Function("ensureMethod"," \n return function(obj) { \n 'use strict' \n var len = this.length; \n ensureMethod(obj, 'methodName'); \n switch(len) { \n case 1: return obj.methodName(this[0]); \n case 2: return obj.methodName(this[0], this[1]); \n case 3: return obj.methodName(this[0], this[1], this[2]); \n case 0: return obj.methodName(); \n default: \n return obj.methodName.apply(obj, this); \n } \n }; \n ".replace(/methodName/g,e))(p)},u=function(e){return new Function("obj"," \n 'use strict'; \n return obj.propertyName; \n ".replace("propertyName",e))},d=function(e,t,r){var n=r[e];if("function"!=typeof n){if(!c(e))return null;if(n=t(e),r[e]=n,r[" size"]++,r[" size"]>512){for(var i=Object.keys(r),a=0;a<256;++a)delete r[i[a]];r[" size"]=i.length-256}}return n};function p(t,r){var n;if(null!=t&&(n=t[r]),"function"!=typeof n){var i="Object "+o.classString(t)+" has no method '"+o.toString(r)+"'";throw new e.TypeError(i)}return n}function f(e){return p(e,this.pop()).apply(e,this)}function m(e){return e[this]}function g(e){var t=+this;return t<0&&(t=Math.max(0,t+e.length)),e[t]}t=function(e){return d(e,l,i)},n=function(e){return d(e,u,a)},e.prototype.call=function(e){for(var r=arguments.length,n=new Array(Math.max(r-1,0)),i=1;i<r;++i)n[i-1]=arguments[i];if(s){var a=t(e);if(null!==a)return this._then(a,void 0,void 0,n,void 0)}return n.push(e),this._then(f,void 0,void 0,n,void 0)},e.prototype.get=function(e){var t;if("number"==typeof e)t=g;else if(s){var r=n(e);t=null!==r?r:m}else t=m;return this._then(t,void 0,void 0,e,void 0)}}},11735:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i){var a=r(75942),o=a.tryCatch,s=a.errorObj,c=e._async;e.prototype.break=e.prototype.cancel=function(){if(!i.cancellation())return this._warn("cancellation is disabled");for(var e=this,t=e;e._isCancellable();){if(!e._cancelBy(t)){t._isFollowing()?t._followee().cancel():t._cancelBranched();break}var r=e._cancellationParent;if(null==r||!r._isCancellable()){e._isFollowing()?e._followee().cancel():e._cancelBranched();break}e._isFollowing()&&e._followee().cancel(),e._setWillBeCancelled(),t=e,e=r}},e.prototype._branchHasCancelled=function(){this._branchesRemainingToCancel--},e.prototype._enoughBranchesHaveCancelled=function(){return void 0===this._branchesRemainingToCancel||this._branchesRemainingToCancel<=0},e.prototype._cancelBy=function(e){return e===this?(this._branchesRemainingToCancel=0,this._invokeOnCancel(),!0):(this._branchHasCancelled(),!!this._enoughBranchesHaveCancelled()&&(this._invokeOnCancel(),!0))},e.prototype._cancelBranched=function(){this._enoughBranchesHaveCancelled()&&this._cancel()},e.prototype._cancel=function(){this._isCancellable()&&(this._setCancelled(),c.invoke(this._cancelPromises,this,void 0))},e.prototype._cancelPromises=function(){this._length()>0&&this._settlePromises()},e.prototype._unsetOnCancel=function(){this._onCancelField=void 0},e.prototype._isCancellable=function(){return this.isPending()&&!this._isCancelled()},e.prototype.isCancellable=function(){return this.isPending()&&!this.isCancelled()},e.prototype._doInvokeOnCancel=function(e,t){if(a.isArray(e))for(var r=0;r<e.length;++r)this._doInvokeOnCancel(e[r],t);else if(void 0!==e)if("function"==typeof e){if(!t){var n=o(e).call(this._boundValue());n===s&&(this._attachExtraTrace(n.e),c.throwLater(n.e))}}else e._resultCancelled(this)},e.prototype._invokeOnCancel=function(){var e=this._onCancel();this._unsetOnCancel(),c.invoke(this._doInvokeOnCancel,this,e)},e.prototype._invokeInternalOnCancel=function(){this._isCancellable()&&(this._doInvokeOnCancel(this._onCancel(),!0),this._unsetOnCancel())},e.prototype._resultCancelled=function(){this.cancel()}}},89976:(e,t,r)=>{"use strict";e.exports=function(e){var t=r(75942),n=r(89571).keys,i=t.tryCatch,a=t.errorObj;return function(r,o,s){return function(c){var l=s._boundValue();e:for(var u=0;u<r.length;++u){var d=r[u];if(d===Error||null!=d&&d.prototype instanceof Error){if(c instanceof d)return i(o).call(l,c)}else if("function"==typeof d){var p=i(d).call(l,c);if(p===a)return p;if(p)return i(o).call(l,c)}else if(t.isObject(c)){for(var f=n(d),m=0;m<f.length;++m){var g=f[m];if(d[g]!=c[g])continue e}return i(o).call(l,c)}}return e}}}},75910:e=>{"use strict";e.exports=function(e){var t=!1,r=[];function n(){this._trace=new n.CapturedTrace(i())}function i(){var e=r.length-1;if(e>=0)return r[e]}return e.prototype._promiseCreated=function(){},e.prototype._pushContext=function(){},e.prototype._popContext=function(){return null},e._peekContext=e.prototype._peekContext=function(){},n.prototype._pushContext=function(){void 0!==this._trace&&(this._trace._promiseCreated=null,r.push(this._trace))},n.prototype._popContext=function(){if(void 0!==this._trace){var e=r.pop(),t=e._promiseCreated;return e._promiseCreated=null,t}return null},n.CapturedTrace=null,n.create=function(){if(t)return new n},n.deactivateLongStackTraces=function(){},n.activateLongStackTraces=function(){var r=e.prototype._pushContext,a=e.prototype._popContext,o=e._peekContext,s=e.prototype._peekContext,c=e.prototype._promiseCreated;n.deactivateLongStackTraces=function(){e.prototype._pushContext=r,e.prototype._popContext=a,e._peekContext=o,e.prototype._peekContext=s,e.prototype._promiseCreated=c,t=!1},t=!0,e.prototype._pushContext=n.prototype._pushContext,e.prototype._popContext=n.prototype._popContext,e._peekContext=e.prototype._peekContext=i,e.prototype._promiseCreated=function(){var e=this._peekContext();e&&null==e._promiseCreated&&(e._promiseCreated=this)}},n}},90461:(e,t,r)=>{"use strict";e.exports=function(e,t){var n,i,a,o=e._getDomain,s=e._async,c=r(57621).Warning,l=r(75942),u=l.canAttachTrace,d=/[\\\/]bluebird[\\\/]js[\\\/](release|debug|instrumented)/,p=/\((?:timers\.js):\d+:\d+\)/,f=/[\/<\(](.+?):(\d+):(\d+)\)?\s*$/,m=null,g=null,_=!1,h=!(0==l.env("BLUEBIRD_DEBUG")||!l.env("BLUEBIRD_DEBUG")&&"development"!==l.env("NODE_ENV")),y=!(0==l.env("BLUEBIRD_WARNINGS")||!h&&!l.env("BLUEBIRD_WARNINGS")),v=!(0==l.env("BLUEBIRD_LONG_STACK_TRACES")||!h&&!l.env("BLUEBIRD_LONG_STACK_TRACES")),b=0!=l.env("BLUEBIRD_W_FORGOTTEN_RETURN")&&(y||!!l.env("BLUEBIRD_W_FORGOTTEN_RETURN"));e.prototype.suppressUnhandledRejections=function(){var e=this._target();e._bitField=-1048577&e._bitField|524288},e.prototype._ensurePossibleRejectionHandled=function(){0==(524288&this._bitField)&&(this._setRejectionIsUnhandled(),s.invokeLater(this._notifyUnhandledRejection,this,void 0))},e.prototype._notifyUnhandledRejectionIsHandled=function(){q("rejectionHandled",n,void 0,this)},e.prototype._setReturnedNonUndefined=function(){this._bitField=268435456|this._bitField},e.prototype._returnedNonUndefined=function(){return 0!=(268435456&this._bitField)},e.prototype._notifyUnhandledRejection=function(){if(this._isRejectionUnhandled()){var e=this._settledValue();this._setUnhandledRejectionIsNotified(),q("unhandledRejection",i,e,this)}},e.prototype._setUnhandledRejectionIsNotified=function(){this._bitField=262144|this._bitField},e.prototype._unsetUnhandledRejectionIsNotified=function(){this._bitField=-262145&this._bitField},e.prototype._isUnhandledRejectionNotified=function(){return(262144&this._bitField)>0},e.prototype._setRejectionIsUnhandled=function(){this._bitField=1048576|this._bitField},e.prototype._unsetRejectionIsUnhandled=function(){this._bitField=-1048577&this._bitField,this._isUnhandledRejectionNotified()&&(this._unsetUnhandledRejectionIsNotified(),this._notifyUnhandledRejectionIsHandled())},e.prototype._isRejectionUnhandled=function(){return(1048576&this._bitField)>0},e.prototype._warn=function(e,t,r){return j(e,t,r||this)},e.onPossiblyUnhandledRejection=function(e){var t=o();i="function"==typeof e?null===t?e:l.domainBind(t,e):void 0},e.onUnhandledRejectionHandled=function(e){var t=o();n="function"==typeof e?null===t?e:l.domainBind(t,e):void 0};var k=function(){};e.longStackTraces=function(){if(s.haveItemsQueued()&&!Y.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");if(!Y.longStackTraces&&V()){var r=e.prototype._captureStackTrace,n=e.prototype._attachExtraTrace;Y.longStackTraces=!0,k=function(){if(s.haveItemsQueued()&&!Y.longStackTraces)throw new Error("cannot enable long stack traces after promises have been created\n\n See http://goo.gl/MqrFmX\n");e.prototype._captureStackTrace=r,e.prototype._attachExtraTrace=n,t.deactivateLongStackTraces(),s.enableTrampoline(),Y.longStackTraces=!1},e.prototype._captureStackTrace=M,e.prototype._attachExtraTrace=L,t.activateLongStackTraces(),s.disableTrampolineIfNecessary()}},e.hasLongStackTraces=function(){return Y.longStackTraces&&V()};var x=function(){try{if("function"==typeof CustomEvent){var e=new CustomEvent("CustomEvent");return l.global.dispatchEvent(e),function(e,t){var r=new CustomEvent(e.toLowerCase(),{detail:t,cancelable:!0});return!l.global.dispatchEvent(r)}}if("function"==typeof Event){e=new Event("CustomEvent");return l.global.dispatchEvent(e),function(e,t){var r=new Event(e.toLowerCase(),{cancelable:!0});return r.detail=t,!l.global.dispatchEvent(r)}}return(e=document.createEvent("CustomEvent")).initCustomEvent("testingtheevent",!1,!0,{}),l.global.dispatchEvent(e),function(e,t){var r=document.createEvent("CustomEvent");return r.initCustomEvent(e.toLowerCase(),!1,!0,t),!l.global.dispatchEvent(r)}}catch(e){}return function(){return!1}}(),E=l.isNode?function(){return process.emit.apply(process,arguments)}:l.global?function(e){var t="on"+e.toLowerCase(),r=l.global[t];return!!r&&(r.apply(l.global,[].slice.call(arguments,1)),!0)}:function(){return!1};function S(e,t){return{promise:t}}var D={promiseCreated:S,promiseFulfilled:S,promiseRejected:S,promiseResolved:S,promiseCancelled:S,promiseChained:function(e,t,r){return{promise:t,child:r}},warning:function(e,t){return{warning:t}},unhandledRejection:function(e,t,r){return{reason:t,promise:r}},rejectionHandled:S},w=function(e){var t=!1;try{t=E.apply(null,arguments)}catch(e){s.throwLater(e),t=!0}var r=!1;try{r=x(e,D[e].apply(null,arguments))}catch(e){s.throwLater(e),r=!0}return r||t};function T(){return!1}function C(e,t,r){var n=this;try{e(t,r,(function(e){if("function"!=typeof e)throw new TypeError("onCancel must be a function, got: "+l.toString(e));n._attachCancellationCallback(e)}))}catch(e){return e}}function A(e){if(!this._isCancellable())return this;var t=this._onCancel();void 0!==t?l.isArray(t)?t.push(e):this._setOnCancel([t,e]):this._setOnCancel(e)}function N(){return this._onCancelField}function P(e){this._onCancelField=e}function I(){this._cancellationParent=void 0,this._onCancelField=void 0}function F(e,t){if(0!=(1&t)){this._cancellationParent=e;var r=e._branchesRemainingToCancel;void 0===r&&(r=0),e._branchesRemainingToCancel=r+1}0!=(2&t)&&e._isBound()&&this._setBoundTo(e._boundTo)}e.config=function(t){if("longStackTraces"in(t=Object(t))&&(t.longStackTraces?e.longStackTraces():!t.longStackTraces&&e.hasLongStackTraces()&&k()),"warnings"in t){var r=t.warnings;Y.warnings=!!r,b=Y.warnings,l.isObject(r)&&"wForgottenReturn"in r&&(b=!!r.wForgottenReturn)}if("cancellation"in t&&t.cancellation&&!Y.cancellation){if(s.haveItemsQueued())throw new Error("cannot enable cancellation after promises are in use");e.prototype._clearCancellationData=I,e.prototype._propagateFrom=F,e.prototype._onCancel=N,e.prototype._setOnCancel=P,e.prototype._attachCancellationCallback=A,e.prototype._execute=C,O=F,Y.cancellation=!0}return"monitoring"in t&&(t.monitoring&&!Y.monitoring?(Y.monitoring=!0,e.prototype._fireEvent=w):!t.monitoring&&Y.monitoring&&(Y.monitoring=!1,e.prototype._fireEvent=T)),e},e.prototype._fireEvent=T,e.prototype._execute=function(e,t,r){try{e(t,r)}catch(e){return e}},e.prototype._onCancel=function(){},e.prototype._setOnCancel=function(e){},e.prototype._attachCancellationCallback=function(e){},e.prototype._captureStackTrace=function(){},e.prototype._attachExtraTrace=function(){},e.prototype._clearCancellationData=function(){},e.prototype._propagateFrom=function(e,t){};var O=function(e,t){0!=(2&t)&&e._isBound()&&this._setBoundTo(e._boundTo)};function R(){var t=this._boundTo;return void 0!==t&&t instanceof e?t.isFulfilled()?t.value():void 0:t}function M(){this._trace=new G(this._peekContext())}function L(e,t){if(u(e)){var r=this._trace;if(void 0!==r&&t&&(r=r._parent),void 0!==r)r.attachExtraTrace(e);else if(!e.__stackCleaned__){var n=z(e);l.notEnumerableProp(e,"stack",n.message+"\n"+n.stack.join("\n")),l.notEnumerableProp(e,"__stackCleaned__",!0)}}}function j(t,r,n){if(Y.warnings){var i,a=new c(t);if(r)n._attachExtraTrace(a);else if(Y.longStackTraces&&(i=e._peekContext()))i.attachExtraTrace(a);else{var o=z(a);a.stack=o.message+"\n"+o.stack.join("\n")}w("warning",a)||U(a,"",!0)}}function B(e){for(var t=[],r=0;r<e.length;++r){var n=e[r],i=" (No stack trace)"===n||m.test(n),a=i&&H(n);i&&!a&&(_&&" "!==n.charAt(0)&&(n=" "+n),t.push(n))}return t}function z(e){var t=e.stack,r=e.toString();return t="string"==typeof t&&t.length>0?function(e){for(var t=e.stack.replace(/\s+$/g,"").split("\n"),r=0;r<t.length;++r){var n=t[r];if(" (No stack trace)"===n||m.test(n))break}return r>0&&"SyntaxError"!=e.name&&(t=t.slice(r)),t}(e):[" (No stack trace)"],{message:r,stack:"SyntaxError"==e.name?t:B(t)}}function U(e,t,r){if("undefined"!=typeof console){var n;if(l.isObject(e)){var i=e.stack;n=t+g(i,e)}else n=t+String(e);"function"==typeof a?a(n,r):"function"!=typeof console.log&&"object"!=typeof console.log||console.log(n)}}function q(e,t,r,n){var i=!1;try{"function"==typeof t&&(i=!0,"rejectionHandled"===e?t(n):t(r,n))}catch(e){s.throwLater(e)}"unhandledRejection"===e?w(e,r,n)||i||U(r,"Unhandled rejection "):w(e,n)}function J(e){var t;if("function"==typeof e)t="[function "+(e.name||"anonymous")+"]";else{t=e&&"function"==typeof e.toString?e.toString():l.toString(e);if(/\[object [a-zA-Z0-9$_]+\]/.test(t))try{t=JSON.stringify(e)}catch(e){}0===t.length&&(t="(empty array)")}return"(<"+function(e){var t=41;if(e.length<t)return e;return e.substr(0,t-3)+"..."}(t)+">, no stack trace)"}function V(){return"function"==typeof $}var H=function(){return!1},K=/[\/<\(]([^:\/]+):(\d+):(?:\d+)\)?\s*$/;function W(e){var t=e.match(K);if(t)return{fileName:t[1],line:parseInt(t[2],10)}}function G(e){this._parent=e,this._promisesCreated=0;var t=this._length=1+(void 0===e?0:e._length);$(this,G),t>32&&this.uncycle()}l.inherits(G,Error),t.CapturedTrace=G,G.prototype.uncycle=function(){var e=this._length;if(!(e<2)){for(var t=[],r={},n=0,i=this;void 0!==i;++n)t.push(i),i=i._parent;for(n=(e=this._length=n)-1;n>=0;--n){var a=t[n].stack;void 0===r[a]&&(r[a]=n)}for(n=0;n<e;++n){var o=r[t[n].stack];if(void 0!==o&&o!==n){o>0&&(t[o-1]._parent=void 0,t[o-1]._length=1),t[n]._parent=void 0,t[n]._length=1;var s=n>0?t[n-1]:this;o<e-1?(s._parent=t[o+1],s._parent.uncycle(),s._length=s._parent._length+1):(s._parent=void 0,s._length=1);for(var c=s._length+1,l=n-2;l>=0;--l)t[l]._length=c,c++;return}}}},G.prototype.attachExtraTrace=function(e){if(!e.__stackCleaned__){this.uncycle();for(var t=z(e),r=t.message,n=[t.stack],i=this;void 0!==i;)n.push(B(i.stack.split("\n"))),i=i._parent;!function(e){for(var t=e[0],r=1;r<e.length;++r){for(var n=e[r],i=t.length-1,a=t[i],o=-1,s=n.length-1;s>=0;--s)if(n[s]===a){o=s;break}for(s=o;s>=0;--s){var c=n[s];if(t[i]!==c)break;t.pop(),i--}t=n}}(n),function(e){for(var t=0;t<e.length;++t)(0===e[t].length||t+1<e.length&&e[t][0]===e[t+1][0])&&(e.splice(t,1),t--)}(n),l.notEnumerableProp(e,"stack",function(e,t){for(var r=0;r<t.length-1;++r)t[r].push("From previous event:"),t[r]=t[r].join("\n");return r<t.length&&(t[r]=t[r].join("\n")),e+"\n"+t.join("\n")}(r,n)),l.notEnumerableProp(e,"__stackCleaned__",!0)}};var $=function(){var e=/^\s*at\s*/,t=function(e,t){return"string"==typeof e?e:void 0!==t.name&&void 0!==t.message?t.toString():J(t)};if("number"==typeof Error.stackTraceLimit&&"function"==typeof Error.captureStackTrace){Error.stackTraceLimit+=6,m=e,g=t;var r=Error.captureStackTrace;return H=function(e){return d.test(e)},function(e,t){Error.stackTraceLimit+=6,r(e,t),Error.stackTraceLimit-=6}}var n,i=new Error;if("string"==typeof i.stack&&i.stack.split("\n")[0].indexOf("stackDetection@")>=0)return m=/@/,g=t,_=!0,function(e){e.stack=(new Error).stack};try{throw new Error}catch(e){n="stack"in e}return!("stack"in i)&&n&&"number"==typeof Error.stackTraceLimit?(m=e,g=t,function(e){Error.stackTraceLimit+=6;try{throw new Error}catch(t){e.stack=t.stack}Error.stackTraceLimit-=6}):(g=function(e,t){return"string"==typeof e?e:"object"!=typeof t&&"function"!=typeof t||void 0===t.name||void 0===t.message?J(t):t.toString()},null)}();"undefined"!=typeof console&&void 0!==console.warn&&(a=function(e){console.warn(e)},l.isNode&&process.stderr.isTTY?a=function(e,t){var r=t?"":"";console.warn(r+e+"\n")}:l.isNode||"string"!=typeof(new Error).stack||(a=function(e,t){console.warn("%c"+e,t?"color: darkorange":"color: red")}));var Y={warnings:y,longStackTraces:!1,cancellation:!1,monitoring:!1};return v&&e.longStackTraces(),{longStackTraces:function(){return Y.longStackTraces},warnings:function(){return Y.warnings},cancellation:function(){return Y.cancellation},monitoring:function(){return Y.monitoring},propagateFromFunction:function(){return O},boundValueFunction:function(){return R},checkForgottenReturns:function(e,t,r,n,i){if(void 0===e&&null!==t&&b){if(void 0!==i&&i._returnedNonUndefined())return;if(0==(65535&n._bitField))return;r&&(r+=" ");var a="",o="";if(t._trace){for(var s=t._trace.stack.split("\n"),c=B(s),l=c.length-1;l>=0;--l){var u=c[l];if(!p.test(u)){var d=u.match(f);d&&(a="at "+d[1]+":"+d[2]+":"+d[3]+" ");break}}if(c.length>0){var m=c[0];for(l=0;l<s.length;++l)if(s[l]===m){l>0&&(o="\n"+s[l-1]);break}}}var g="a promise was created in a "+r+"handler "+a+"but was not returned from it, see http://goo.gl/rRqMUw"+o;n._warn(g,!0,t)}},setBounds:function(e,t){if(V()){for(var r,n,i=e.stack.split("\n"),a=t.stack.split("\n"),o=-1,s=-1,c=0;c<i.length;++c){if(l=W(i[c])){r=l.fileName,o=l.line;break}}for(c=0;c<a.length;++c){var l;if(l=W(a[c])){n=l.fileName,s=l.line;break}}o<0||s<0||!r||!n||r!==n||o>=s||(H=function(e){if(d.test(e))return!0;var t=W(e);return!!(t&&t.fileName===r&&o<=t.line&&t.line<=s)})}},warn:j,deprecated:function(e,t){var r=e+" is deprecated and will be removed in a future version.";return t&&(r+=" Use "+t+" instead."),j(r)},CapturedTrace:G,fireDomEvent:x,fireGlobalEvent:E}}},45632:e=>{"use strict";e.exports=function(e){function t(){return this.value}function r(){throw this.reason}e.prototype.return=e.prototype.thenReturn=function(r){return r instanceof e&&r.suppressUnhandledRejections(),this._then(t,void 0,void 0,{value:r},void 0)},e.prototype.throw=e.prototype.thenThrow=function(e){return this._then(r,void 0,void 0,{reason:e},void 0)},e.prototype.catchThrow=function(e){if(arguments.length<=1)return this._then(void 0,r,void 0,{reason:e},void 0);var t=arguments[1];return this.caught(e,(function(){throw t}))},e.prototype.catchReturn=function(r){if(arguments.length<=1)return r instanceof e&&r.suppressUnhandledRejections(),this._then(void 0,t,void 0,{value:r},void 0);var n=arguments[1];n instanceof e&&n.suppressUnhandledRejections();return this.caught(r,(function(){return n}))}}},6574:e=>{"use strict";e.exports=function(e,t){var r=e.reduce,n=e.all;function i(){return n(this)}e.prototype.each=function(e){return r(this,e,t,0)._then(i,void 0,void 0,this,void 0)},e.prototype.mapSeries=function(e){return r(this,e,t,t)},e.each=function(e,n){return r(e,n,t,0)._then(i,void 0,void 0,e,void 0)},e.mapSeries=function(e,n){return r(e,n,t,t)}}},57621:(e,t,r)=>{"use strict";var n,i,a=r(89571),o=a.freeze,s=r(75942),c=s.inherits,l=s.notEnumerableProp;function u(e,t){function r(n){if(!(this instanceof r))return new r(n);l(this,"message","string"==typeof n?n:t),l(this,"name",e),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):Error.call(this)}return c(r,Error),r}var d=u("Warning","warning"),p=u("CancellationError","cancellation error"),f=u("TimeoutError","timeout error"),m=u("AggregateError","aggregate error");try{n=TypeError,i=RangeError}catch(e){n=u("TypeError","type error"),i=u("RangeError","range error")}for(var g="join pop push shift unshift slice filter forEach some every map indexOf lastIndexOf reduce reduceRight sort reverse".split(" "),_=0;_<g.length;++_)"function"==typeof Array.prototype[g[_]]&&(m.prototype[g[_]]=Array.prototype[g[_]]);a.defineProperty(m.prototype,"length",{value:0,configurable:!1,writable:!0,enumerable:!0}),m.prototype.isOperational=!0;var h=0;function y(e){if(!(this instanceof y))return new y(e);l(this,"name","OperationalError"),l(this,"message",e),this.cause=e,this.isOperational=!0,e instanceof Error?(l(this,"message",e.message),l(this,"stack",e.stack)):Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}m.prototype.toString=function(){var e=Array(4*h+1).join(" "),t="\n"+e+"AggregateError of:\n";h++,e=Array(4*h+1).join(" ");for(var r=0;r<this.length;++r){for(var n=this[r]===this?"[Circular AggregateError]":this[r]+"",i=n.split("\n"),a=0;a<i.length;++a)i[a]=e+i[a];t+=(n=i.join("\n"))+"\n"}return h--,t},c(y,Error);var v=Error.__BluebirdErrorTypes__;v||(v=o({CancellationError:p,TimeoutError:f,OperationalError:y,RejectionError:y,AggregateError:m}),a.defineProperty(Error,"__BluebirdErrorTypes__",{value:v,writable:!1,enumerable:!1,configurable:!1})),e.exports={Error,TypeError:n,RangeError:i,CancellationError:v.CancellationError,OperationalError:v.OperationalError,TimeoutError:v.TimeoutError,AggregateError:v.AggregateError,Warning:d}},89571:e=>{var t=function(){"use strict";return void 0===this}();if(t)e.exports={freeze:Object.freeze,defineProperty:Object.defineProperty,getDescriptor:Object.getOwnPropertyDescriptor,keys:Object.keys,names:Object.getOwnPropertyNames,getPrototypeOf:Object.getPrototypeOf,isArray:Array.isArray,isES5:t,propertyIsWritable:function(e,t){var r=Object.getOwnPropertyDescriptor(e,t);return!(r&&!r.writable&&!r.set)}};else{var r={}.hasOwnProperty,n={}.toString,i={}.constructor.prototype,a=function(e){var t=[];for(var n in e)r.call(e,n)&&t.push(n);return t};e.exports={isArray:function(e){try{return"[object Array]"===n.call(e)}catch(e){return!1}},keys:a,names:a,defineProperty:function(e,t,r){return e[t]=r.value,e},getDescriptor:function(e,t){return{value:e[t]}},freeze:function(e){return e},getPrototypeOf:function(e){try{return Object(e).constructor.prototype}catch(e){return i}},isES5:t,propertyIsWritable:function(){return!0}}}},66777:e=>{"use strict";e.exports=function(e,t){var r=e.map;e.prototype.filter=function(e,n){return r(this,e,n,t)},e.filter=function(e,n,i){return r(e,n,i,t)}}},87707:(e,t,r)=>{"use strict";e.exports=function(e,t){var n=r(75942),i=e.CancellationError,a=n.errorObj;function o(e,t,r){this.promise=e,this.type=t,this.handler=r,this.called=!1,this.cancelPromise=null}function s(e){this.finallyHandler=e}function c(e,t){return null!=e.cancelPromise&&(arguments.length>1?e.cancelPromise._reject(t):e.cancelPromise._cancel(),e.cancelPromise=null,!0)}function l(){return d.call(this,this.promise._target()._settledValue())}function u(e){if(!c(this,e))return a.e=e,a}function d(r){var n=this.promise,o=this.handler;if(!this.called){this.called=!0;var d=this.isFinallyHandler()?o.call(n._boundValue()):o.call(n._boundValue(),r);if(void 0!==d){n._setReturnedNonUndefined();var p=t(d,n);if(p instanceof e){if(null!=this.cancelPromise){if(p._isCancelled()){var f=new i("late cancellation observer");return n._attachExtraTrace(f),a.e=f,a}p.isPending()&&p._attachCancellationCallback(new s(this))}return p._then(l,u,void 0,this,void 0)}}}return n.isRejected()?(c(this),a.e=r,a):(c(this),r)}return o.prototype.isFinallyHandler=function(){return 0===this.type},s.prototype._resultCancelled=function(){c(this.finallyHandler)},e.prototype._passThrough=function(e,t,r,n){return"function"!=typeof e?this.then():this._then(r,n,void 0,new o(this,t,e),void 0)},e.prototype.lastly=e.prototype.finally=function(e){return this._passThrough(e,0,d,d)},e.prototype.tap=function(e){return this._passThrough(e,1,d)},o}},60687:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=r(57621).TypeError,c=r(75942),l=c.errorObj,u=c.tryCatch,d=[];function p(t,r,i,a){if(o.cancellation()){var s=new e(n),c=this._finallyPromise=new e(n);this._promise=s.lastly((function(){return c})),s._captureStackTrace(),s._setOnCancel(this)}else{(this._promise=new e(n))._captureStackTrace()}this._stack=a,this._generatorFunction=t,this._receiver=r,this._generator=void 0,this._yieldHandlers="function"==typeof i?[i].concat(d):d,this._yieldedPromise=null,this._cancellationPhase=!1}c.inherits(p,a),p.prototype._isResolved=function(){return null===this._promise},p.prototype._cleanup=function(){this._promise=this._generator=null,o.cancellation()&&null!==this._finallyPromise&&(this._finallyPromise._fulfill(),this._finallyPromise=null)},p.prototype._promiseCancelled=function(){if(!this._isResolved()){var t;if(void 0!==this._generator.return)this._promise._pushContext(),t=u(this._generator.return).call(this._generator,void 0),this._promise._popContext();else{var r=new e.CancellationError("generator .return() sentinel");e.coroutine.returnSentinel=r,this._promise._attachExtraTrace(r),this._promise._pushContext(),t=u(this._generator.throw).call(this._generator,r),this._promise._popContext()}this._cancellationPhase=!0,this._yieldedPromise=null,this._continue(t)}},p.prototype._promiseFulfilled=function(e){this._yieldedPromise=null,this._promise._pushContext();var t=u(this._generator.next).call(this._generator,e);this._promise._popContext(),this._continue(t)},p.prototype._promiseRejected=function(e){this._yieldedPromise=null,this._promise._attachExtraTrace(e),this._promise._pushContext();var t=u(this._generator.throw).call(this._generator,e);this._promise._popContext(),this._continue(t)},p.prototype._resultCancelled=function(){if(this._yieldedPromise instanceof e){var t=this._yieldedPromise;this._yieldedPromise=null,t.cancel()}},p.prototype.promise=function(){return this._promise},p.prototype._run=function(){this._generator=this._generatorFunction.call(this._receiver),this._receiver=this._generatorFunction=void 0,this._promiseFulfilled(void 0)},p.prototype._continue=function(t){var r=this._promise;if(t===l)return this._cleanup(),this._cancellationPhase?r.cancel():r._rejectCallback(t.e,!1);var n=t.value;if(!0===t.done)return this._cleanup(),this._cancellationPhase?r.cancel():r._resolveCallback(n);var a=i(n,this._promise);if(a instanceof e||(a=function(t,r,n){for(var a=0;a<r.length;++a){n._pushContext();var o=u(r[a])(t);if(n._popContext(),o===l){n._pushContext();var s=e.reject(l.e);return n._popContext(),s}var c=i(o,n);if(c instanceof e)return c}return null}(a,this._yieldHandlers,this._promise),null!==a)){var o=(a=a._target())._bitField;0==(50397184&o)?(this._yieldedPromise=a,a._proxy(this,null)):0!=(33554432&o)?e._async.invoke(this._promiseFulfilled,this,a._value()):0!=(16777216&o)?e._async.invoke(this._promiseRejected,this,a._reason()):this._promiseCancelled()}else this._promiseRejected(new s("A value %s was yielded that could not be treated as a promise\n\n See http://goo.gl/MqrFmX\n\n".replace("%s",n)+"From coroutine:\n"+this._stack.split("\n").slice(1,-7).join("\n")))},e.coroutine=function(e,t){if("function"!=typeof e)throw new s("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n");var r=Object(t).yieldHandler,n=p,i=(new Error).stack;return function(){var t=e.apply(this,arguments),a=new n(void 0,void 0,r,i),o=a.promise();return a._generator=t,a._promiseFulfilled(void 0),o}},e.coroutine.addYieldHandler=function(e){if("function"!=typeof e)throw new s("expecting a function but got "+c.classString(e));d.push(e)},e.spawn=function(r){if(o.deprecated("Promise.spawn()","Promise.coroutine()"),"function"!=typeof r)return t("generatorFunction must be a function\n\n See http://goo.gl/MqrFmX\n");var n=new p(r,this),i=n.promise();return n._run(e.spawn),i}}},17717:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s,c=r(75942),l=c.canEvaluate,u=c.tryCatch,d=c.errorObj;if(l){for(var p=function(e){return new Function("value","holder"," \n 'use strict'; \n holder.pIndex = value; \n holder.checkFulfillment(this); \n ".replace(/Index/g,e))},f=function(e){return new Function("promise","holder"," \n 'use strict'; \n holder.pIndex = promise; \n ".replace(/Index/g,e))},m=function(t){for(var r=new Array(t),n=0;n<r.length;++n)r[n]="this.p"+(n+1);var i=r.join(" = ")+" = null;",o="var promise;\n"+r.map((function(e){return" \n promise = "+e+"; \n if (promise instanceof Promise) { \n promise.cancel(); \n } \n "})).join("\n"),s=r.join(", "),c="Holder$"+t,l="return function(tryCatch, errorObj, Promise, async) { \n 'use strict'; \n function [TheName](fn) { \n [TheProperties] \n this.fn = fn; \n this.asyncNeeded = true; \n this.now = 0; \n } \n \n [TheName].prototype._callFunction = function(promise) { \n promise._pushContext(); \n var ret = tryCatch(this.fn)([ThePassedArguments]); \n promise._popContext(); \n if (ret === errorObj) { \n promise._rejectCallback(ret.e, false); \n } else { \n promise._resolveCallback(ret); \n } \n }; \n \n [TheName].prototype.checkFulfillment = function(promise) { \n var now = ++this.now; \n if (now === [TheTotal]) { \n if (this.asyncNeeded) { \n async.invoke(this._callFunction, this, promise); \n } else { \n this._callFunction(promise); \n } \n \n } \n }; \n \n [TheName].prototype._resultCancelled = function() { \n [CancellationCode] \n }; \n \n return [TheName]; \n }(tryCatch, errorObj, Promise, async); \n ";return l=l.replace(/\[TheName\]/g,c).replace(/\[TheTotal\]/g,t).replace(/\[ThePassedArguments\]/g,s).replace(/\[TheProperties\]/g,i).replace(/\[CancellationCode\]/g,o),new Function("tryCatch","errorObj","Promise","async",l)(u,d,e,a)},g=[],_=[],h=[],y=0;y<8;++y)g.push(m(y+1)),_.push(p(y+1)),h.push(f(y+1));s=function(e){this._reject(e)}}e.join=function(){var r,a=arguments.length-1;if(a>0&&"function"==typeof arguments[a]&&(r=arguments[a],a<=8&&l)){(x=new e(i))._captureStackTrace();for(var u=new(0,g[a-1])(r),d=_,p=0;p<a;++p){var f=n(arguments[p],x);if(f instanceof e){var m=(f=f._target())._bitField;0==(50397184&m)?(f._then(d[p],s,void 0,x,u),h[p](f,u),u.asyncNeeded=!1):0!=(33554432&m)?d[p].call(x,f._value(),u):0!=(16777216&m)?x._reject(f._reason()):x._cancel()}else d[p].call(x,f,u)}if(!x._isFateSealed()){if(u.asyncNeeded){var y=o();null!==y&&(u.fn=c.domainBind(y,u.fn))}x._setAsyncGuaranteed(),x._setOnCancel(u)}return x}for(var v=arguments.length,b=new Array(v),k=0;k<v;++k)b[k]=arguments[k];r&&b.pop();var x=new t(b).promise();return void 0!==r?x.spread(r):x}}},6343:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=e._getDomain,c=r(75942),l=c.tryCatch,u=c.errorObj,d=e._async;function p(e,t,r,n){this.constructor$(e),this._promise._captureStackTrace();var i=s();this._callback=null===i?t:c.domainBind(i,t),this._preservedValues=n===a?new Array(this.length()):null,this._limit=r,this._inFlight=0,this._queue=[],d.invoke(this._asyncInit,this,void 0)}function f(t,r,i,a){if("function"!=typeof r)return n("expecting a function but got "+c.classString(r));var o=0;if(void 0!==i){if("object"!=typeof i||null===i)return e.reject(new TypeError("options argument must be an object but it is "+c.classString(i)));if("number"!=typeof i.concurrency)return e.reject(new TypeError("'concurrency' must be a number but it is "+c.classString(i.concurrency)));o=i.concurrency}return new p(t,r,o="number"==typeof o&&isFinite(o)&&o>=1?o:0,a).promise()}c.inherits(p,t),p.prototype._asyncInit=function(){this._init$(void 0,-2)},p.prototype._init=function(){},p.prototype._promiseFulfilled=function(t,r){var n=this._values,a=this.length(),s=this._preservedValues,c=this._limit;if(r<0){if(n[r=-1*r-1]=t,c>=1&&(this._inFlight--,this._drainQueue(),this._isResolved()))return!0}else{if(c>=1&&this._inFlight>=c)return n[r]=t,this._queue.push(r),!1;null!==s&&(s[r]=t);var d=this._promise,p=this._callback,f=d._boundValue();d._pushContext();var m=l(p).call(f,t,r,a),g=d._popContext();if(o.checkForgottenReturns(m,g,null!==s?"Promise.filter":"Promise.map",d),m===u)return this._reject(m.e),!0;var _=i(m,this._promise);if(_ instanceof e){var h=(_=_._target())._bitField;if(0==(50397184&h))return c>=1&&this._inFlight++,n[r]=_,_._proxy(this,-1*(r+1)),!1;if(0==(33554432&h))return 0!=(16777216&h)?(this._reject(_._reason()),!0):(this._cancel(),!0);m=_._value()}n[r]=m}return++this._totalResolved>=a&&(null!==s?this._filter(n,s):this._resolve(n),!0)},p.prototype._drainQueue=function(){for(var e=this._queue,t=this._limit,r=this._values;e.length>0&&this._inFlight<t;){if(this._isResolved())return;var n=e.pop();this._promiseFulfilled(r[n],n)}},p.prototype._filter=function(e,t){for(var r=t.length,n=new Array(r),i=0,a=0;a<r;++a)e[a]&&(n[i++]=t[a]);n.length=i,this._resolve(n)},p.prototype.preservedValues=function(){return this._preservedValues},e.prototype.map=function(e,t){return f(this,e,t,null)},e.map=function(e,t,r,n){return f(e,t,r,n)}}},96926:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a){var o=r(75942),s=o.tryCatch;e.method=function(r){if("function"!=typeof r)throw new e.TypeError("expecting a function but got "+o.classString(r));return function(){var n=new e(t);n._captureStackTrace(),n._pushContext();var i=s(r).apply(this,arguments),o=n._popContext();return a.checkForgottenReturns(i,o,"Promise.method",n),n._resolveFromSyncValue(i),n}},e.attempt=e.try=function(r){if("function"!=typeof r)return i("expecting a function but got "+o.classString(r));var n,c=new e(t);if(c._captureStackTrace(),c._pushContext(),arguments.length>1){a.deprecated("calling Promise.try with more than 1 argument");var l=arguments[1],u=arguments[2];n=o.isArray(l)?s(r).apply(u,l):s(r).call(u,l)}else n=s(r)();var d=c._popContext();return a.checkForgottenReturns(n,d,"Promise.try",c),c._resolveFromSyncValue(n),c},e.prototype._resolveFromSyncValue=function(e){e===o.errorObj?this._rejectCallback(e.e,!1):this._resolveCallback(e,!0)}}},81776:(e,t,r)=>{"use strict";var n=r(75942),i=n.maybeWrapAsError,a=r(57621).OperationalError,o=r(89571);var s=/^(?:name|message|stack|cause)$/;function c(e){var t;if(function(e){return e instanceof Error&&o.getPrototypeOf(e)===Error.prototype}(e)){(t=new a(e)).name=e.name,t.message=e.message,t.stack=e.stack;for(var r=o.keys(e),i=0;i<r.length;++i){var c=r[i];s.test(c)||(t[c]=e[c])}return t}return n.markAsOriginatingFromRejection(e),e}e.exports=function(e,t){return function(r,n){if(null!==e){if(r){var a=c(i(r));e._attachExtraTrace(a),e._reject(a)}else if(t){for(var o=arguments.length,s=new Array(Math.max(o-1,0)),l=1;l<o;++l)s[l-1]=arguments[l];e._fulfill(s)}else e._fulfill(n);e=null}}}},61941:(e,t,r)=>{"use strict";e.exports=function(e){var t=r(75942),n=e._async,i=t.tryCatch,a=t.errorObj;function o(e,r){if(!t.isArray(e))return s.call(this,e,r);var o=i(r).apply(this._boundValue(),[null].concat(e));o===a&&n.throwLater(o.e)}function s(e,t){var r=this._boundValue(),o=void 0===e?i(t).call(r,null):i(t).call(r,null,e);o===a&&n.throwLater(o.e)}function c(e,t){if(!e){var r=new Error(e+"");r.cause=e,e=r}var o=i(t).call(this._boundValue(),e);o===a&&n.throwLater(o.e)}e.prototype.asCallback=e.prototype.nodeify=function(e,t){if("function"==typeof e){var r=s;void 0!==t&&Object(t).spread&&(r=o),this._then(r,c,void 0,this,e)}return this}}},7502:(e,t,r)=>{"use strict";e.exports=function(){var t=function(){return new f("circular promise resolution chain\n\n See http://goo.gl/MqrFmX\n")},n=function(){return new C.PromiseInspection(this._target())},i=function(e){return C.reject(new f(e))};function a(){}var o,s={},c=r(75942);o=c.isNode?function(){var e=process.domain;return void 0===e&&(e=null),e}:function(){return null},c.notEnumerableProp(C,"_getDomain",o);var l=r(89571),u=r(4601),d=new u;l.defineProperty(C,"_async",{value:d});var p=r(57621),f=C.TypeError=p.TypeError;C.RangeError=p.RangeError;var m=C.CancellationError=p.CancellationError;C.TimeoutError=p.TimeoutError,C.OperationalError=p.OperationalError,C.RejectionError=p.OperationalError,C.AggregateError=p.AggregateError;var g=function(){},_={},h={},y=r(91778)(C,g),v=r(21640)(C,g,y,i,a),b=r(75910)(C),k=b.create,x=r(90461)(C,b),E=(x.CapturedTrace,r(87707)(C,y)),S=r(89976)(h),D=r(81776),w=c.errorObj,T=c.tryCatch;function C(e){this._bitField=0,this._fulfillmentHandler0=void 0,this._rejectionHandler0=void 0,this._promise0=void 0,this._receiver0=void 0,e!==g&&(!function(e,t){if("function"!=typeof t)throw new f("expecting a function but got "+c.classString(t));if(e.constructor!==C)throw new f("the promise constructor cannot be invoked directly\n\n See http://goo.gl/MqrFmX\n")}(this,e),this._resolveFromExecutor(e)),this._promiseCreated(),this._fireEvent("promiseCreated",this)}function A(e){this.promise._resolveCallback(e)}function N(e){this.promise._rejectCallback(e,!1)}function P(e){var t=new C(g);t._fulfillmentHandler0=e,t._rejectionHandler0=e,t._promise0=e,t._receiver0=e}return C.prototype.toString=function(){return"[object Promise]"},C.prototype.caught=C.prototype.catch=function(e){var t=arguments.length;if(t>1){var r,n=new Array(t-1),a=0;for(r=0;r<t-1;++r){var o=arguments[r];if(!c.isObject(o))return i("expecting an object but got A catch statement predicate "+c.classString(o));n[a++]=o}return n.length=a,e=arguments[r],this.then(void 0,S(n,e,this))}return this.then(void 0,e)},C.prototype.reflect=function(){return this._then(n,n,void 0,this,void 0)},C.prototype.then=function(e,t){if(x.warnings()&&arguments.length>0&&"function"!=typeof e&&"function"!=typeof t){var r=".then() only accepts functions but was passed: "+c.classString(e);arguments.length>1&&(r+=", "+c.classString(t)),this._warn(r)}return this._then(e,t,void 0,void 0,void 0)},C.prototype.done=function(e,t){this._then(e,t,void 0,void 0,void 0)._setIsFinal()},C.prototype.spread=function(e){return"function"!=typeof e?i("expecting a function but got "+c.classString(e)):this.all()._then(e,void 0,void 0,_,void 0)},C.prototype.toJSON=function(){var e={isFulfilled:!1,isRejected:!1,fulfillmentValue:void 0,rejectionReason:void 0};return this.isFulfilled()?(e.fulfillmentValue=this.value(),e.isFulfilled=!0):this.isRejected()&&(e.rejectionReason=this.reason(),e.isRejected=!0),e},C.prototype.all=function(){return arguments.length>0&&this._warn(".all() was passed arguments but it does not take any"),new v(this).promise()},C.prototype.error=function(e){return this.caught(c.originatesFromRejection,e)},C.getNewLibraryCopy=e.exports,C.is=function(e){return e instanceof C},C.fromNode=C.fromCallback=function(e){var t=new C(g);t._captureStackTrace();var r=arguments.length>1&&!!Object(arguments[1]).multiArgs,n=T(e)(D(t,r));return n===w&&t._rejectCallback(n.e,!0),t._isFateSealed()||t._setAsyncGuaranteed(),t},C.all=function(e){return new v(e).promise()},C.cast=function(e){var t=y(e);return t instanceof C||((t=new C(g))._captureStackTrace(),t._setFulfilled(),t._rejectionHandler0=e),t},C.resolve=C.fulfilled=C.cast,C.reject=C.rejected=function(e){var t=new C(g);return t._captureStackTrace(),t._rejectCallback(e,!0),t},C.setScheduler=function(e){if("function"!=typeof e)throw new f("expecting a function but got "+c.classString(e));return d.setScheduler(e)},C.prototype._then=function(e,t,r,n,i){var a=void 0!==i,s=a?i:new C(g),l=this._target(),u=l._bitField;a||(s._propagateFrom(this,3),s._captureStackTrace(),void 0===n&&0!=(2097152&this._bitField)&&(n=0!=(50397184&u)?this._boundValue():l===this?void 0:this._boundTo),this._fireEvent("promiseChained",this,s));var p=o();if(0!=(50397184&u)){var f,_,h=l._settlePromiseCtx;0!=(33554432&u)?(_=l._rejectionHandler0,f=e):0!=(16777216&u)?(_=l._fulfillmentHandler0,f=t,l._unsetRejectionIsUnhandled()):(h=l._settlePromiseLateCancellationObserver,_=new m("late cancellation observer"),l._attachExtraTrace(_),f=t),d.invoke(h,l,{handler:null===p?f:"function"==typeof f&&c.domainBind(p,f),promise:s,receiver:n,value:_})}else l._addCallbacks(e,t,s,n,p);return s},C.prototype._length=function(){return 65535&this._bitField},C.prototype._isFateSealed=function(){return 0!=(117506048&this._bitField)},C.prototype._isFollowing=function(){return 67108864==(67108864&this._bitField)},C.prototype._setLength=function(e){this._bitField=-65536&this._bitField|65535&e},C.prototype._setFulfilled=function(){this._bitField=33554432|this._bitField,this._fireEvent("promiseFulfilled",this)},C.prototype._setRejected=function(){this._bitField=16777216|this._bitField,this._fireEvent("promiseRejected",this)},C.prototype._setFollowing=function(){this._bitField=67108864|this._bitField,this._fireEvent("promiseResolved",this)},C.prototype._setIsFinal=function(){this._bitField=4194304|this._bitField},C.prototype._isFinal=function(){return(4194304&this._bitField)>0},C.prototype._unsetCancelled=function(){this._bitField=-65537&this._bitField},C.prototype._setCancelled=function(){this._bitField=65536|this._bitField,this._fireEvent("promiseCancelled",this)},C.prototype._setWillBeCancelled=function(){this._bitField=8388608|this._bitField},C.prototype._setAsyncGuaranteed=function(){d.hasCustomScheduler()||(this._bitField=134217728|this._bitField)},C.prototype._receiverAt=function(e){var t=0===e?this._receiver0:this[4*e-4+3];if(t!==s)return void 0===t&&this._isBound()?this._boundValue():t},C.prototype._promiseAt=function(e){return this[4*e-4+2]},C.prototype._fulfillmentHandlerAt=function(e){return this[4*e-4+0]},C.prototype._rejectionHandlerAt=function(e){return this[4*e-4+1]},C.prototype._boundValue=function(){},C.prototype._migrateCallback0=function(e){e._bitField;var t=e._fulfillmentHandler0,r=e._rejectionHandler0,n=e._promise0,i=e._receiverAt(0);void 0===i&&(i=s),this._addCallbacks(t,r,n,i,null)},C.prototype._migrateCallbackAt=function(e,t){var r=e._fulfillmentHandlerAt(t),n=e._rejectionHandlerAt(t),i=e._promiseAt(t),a=e._receiverAt(t);void 0===a&&(a=s),this._addCallbacks(r,n,i,a,null)},C.prototype._addCallbacks=function(e,t,r,n,i){var a=this._length();if(a>=65531&&(a=0,this._setLength(0)),0===a)this._promise0=r,this._receiver0=n,"function"==typeof e&&(this._fulfillmentHandler0=null===i?e:c.domainBind(i,e)),"function"==typeof t&&(this._rejectionHandler0=null===i?t:c.domainBind(i,t));else{var o=4*a-4;this[o+2]=r,this[o+3]=n,"function"==typeof e&&(this[o+0]=null===i?e:c.domainBind(i,e)),"function"==typeof t&&(this[o+1]=null===i?t:c.domainBind(i,t))}return this._setLength(a+1),a},C.prototype._proxy=function(e,t){this._addCallbacks(void 0,void 0,t,e,null)},C.prototype._resolveCallback=function(e,r){if(0==(117506048&this._bitField)){if(e===this)return this._rejectCallback(t(),!1);var n=y(e,this);if(!(n instanceof C))return this._fulfill(e);r&&this._propagateFrom(n,2);var i=n._target();if(i!==this){var a=i._bitField;if(0==(50397184&a)){var o=this._length();o>0&&i._migrateCallback0(this);for(var s=1;s<o;++s)i._migrateCallbackAt(this,s);this._setFollowing(),this._setLength(0),this._setFollowee(i)}else if(0!=(33554432&a))this._fulfill(i._value());else if(0!=(16777216&a))this._reject(i._reason());else{var c=new m("late cancellation observer");i._attachExtraTrace(c),this._reject(c)}}else this._reject(t())}},C.prototype._rejectCallback=function(e,t,r){var n=c.ensureErrorObject(e),i=n===e;if(!i&&!r&&x.warnings()){var a="a promise was rejected with a non-error: "+c.classString(e);this._warn(a,!0)}this._attachExtraTrace(n,!!t&&i),this._reject(e)},C.prototype._resolveFromExecutor=function(e){var t=this;this._captureStackTrace(),this._pushContext();var r=!0,n=this._execute(e,(function(e){t._resolveCallback(e)}),(function(e){t._rejectCallback(e,r)}));r=!1,this._popContext(),void 0!==n&&t._rejectCallback(n,!0)},C.prototype._settlePromiseFromHandler=function(e,t,r,n){var i=n._bitField;if(0==(65536&i)){var a;n._pushContext(),t===_?r&&"number"==typeof r.length?a=T(e).apply(this._boundValue(),r):(a=w).e=new f("cannot .spread() a non-array: "+c.classString(r)):a=T(e).call(t,r);var o=n._popContext();0==(65536&(i=n._bitField))&&(a===h?n._reject(r):a===w?n._rejectCallback(a.e,!1):(x.checkForgottenReturns(a,o,"",n,this),n._resolveCallback(a)))}},C.prototype._target=function(){for(var e=this;e._isFollowing();)e=e._followee();return e},C.prototype._followee=function(){return this._rejectionHandler0},C.prototype._setFollowee=function(e){this._rejectionHandler0=e},C.prototype._settlePromise=function(e,t,r,i){var o=e instanceof C,s=this._bitField,c=0!=(134217728&s);0!=(65536&s)?(o&&e._invokeInternalOnCancel(),r instanceof E&&r.isFinallyHandler()?(r.cancelPromise=e,T(t).call(r,i)===w&&e._reject(w.e)):t===n?e._fulfill(n.call(r)):r instanceof a?r._promiseCancelled(e):o||e instanceof v?e._cancel():r.cancel()):"function"==typeof t?o?(c&&e._setAsyncGuaranteed(),this._settlePromiseFromHandler(t,r,i,e)):t.call(r,i,e):r instanceof a?r._isResolved()||(0!=(33554432&s)?r._promiseFulfilled(i,e):r._promiseRejected(i,e)):o&&(c&&e._setAsyncGuaranteed(),0!=(33554432&s)?e._fulfill(i):e._reject(i))},C.prototype._settlePromiseLateCancellationObserver=function(e){var t=e.handler,r=e.promise,n=e.receiver,i=e.value;"function"==typeof t?r instanceof C?this._settlePromiseFromHandler(t,n,i,r):t.call(n,i,r):r instanceof C&&r._reject(i)},C.prototype._settlePromiseCtx=function(e){this._settlePromise(e.promise,e.handler,e.receiver,e.value)},C.prototype._settlePromise0=function(e,t,r){var n=this._promise0,i=this._receiverAt(0);this._promise0=void 0,this._receiver0=void 0,this._settlePromise(n,e,i,t)},C.prototype._clearCallbackDataAtIndex=function(e){var t=4*e-4;this[t+2]=this[t+3]=this[t+0]=this[t+1]=void 0},C.prototype._fulfill=function(e){var r=this._bitField;if(!((117506048&r)>>>16)){if(e===this){var n=t();return this._attachExtraTrace(n),this._reject(n)}this._setFulfilled(),this._rejectionHandler0=e,(65535&r)>0&&(0!=(134217728&r)?this._settlePromises():d.settlePromises(this))}},C.prototype._reject=function(e){var t=this._bitField;if(!((117506048&t)>>>16)){if(this._setRejected(),this._fulfillmentHandler0=e,this._isFinal())return d.fatalError(e,c.isNode);(65535&t)>0?d.settlePromises(this):this._ensurePossibleRejectionHandled()}},C.prototype._fulfillPromises=function(e,t){for(var r=1;r<e;r++){var n=this._fulfillmentHandlerAt(r),i=this._promiseAt(r),a=this._receiverAt(r);this._clearCallbackDataAtIndex(r),this._settlePromise(i,n,a,t)}},C.prototype._rejectPromises=function(e,t){for(var r=1;r<e;r++){var n=this._rejectionHandlerAt(r),i=this._promiseAt(r),a=this._receiverAt(r);this._clearCallbackDataAtIndex(r),this._settlePromise(i,n,a,t)}},C.prototype._settlePromises=function(){var e=this._bitField,t=65535&e;if(t>0){if(0!=(16842752&e)){var r=this._fulfillmentHandler0;this._settlePromise0(this._rejectionHandler0,r,e),this._rejectPromises(t,r)}else{var n=this._rejectionHandler0;this._settlePromise0(this._fulfillmentHandler0,n,e),this._fulfillPromises(t,n)}this._setLength(0)}this._clearCancellationData()},C.prototype._settledValue=function(){var e=this._bitField;return 0!=(33554432&e)?this._rejectionHandler0:0!=(16777216&e)?this._fulfillmentHandler0:void 0},C.defer=C.pending=function(){return x.deprecated("Promise.defer","new Promise"),{promise:new C(g),resolve:A,reject:N}},c.notEnumerableProp(C,"_makeSelfResolutionError",t),r(96926)(C,g,y,i,x),r(23635)(C,g,y,x),r(11735)(C,v,i,x),r(45632)(C),r(1958)(C),r(17717)(C,v,y,g,d,o),C.Promise=C,C.version="3.4.7",r(6343)(C,v,i,y,g,x),r(12293)(C),r(14525)(C,i,y,k,g,x),r(98418)(C,g,x),r(60687)(C,i,g,y,a,x),r(61941)(C),r(79346)(C,g),r(5733)(C,v,y,i),r(94648)(C,g,y,i),r(73609)(C,v,i,y,g,x),r(38615)(C,v,x),r(74488)(C,v,i),r(66777)(C,g),r(6574)(C,g),r(89846)(C),c.toFastProperties(C),c.toFastProperties(C.prototype),P({a:1}),P({b:2}),P({c:3}),P(1),P((function(){})),P(void 0),P(!1),P(new C(g)),x.setBounds(u.firstLineError,c.lastLineError),C}},21640:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a){var o=r(75942);o.isArray;function s(r){var n=this._promise=new e(t);r instanceof e&&n._propagateFrom(r,3),n._setOnCancel(this),this._values=r,this._length=0,this._totalResolved=0,this._init(void 0,-2)}return o.inherits(s,a),s.prototype.length=function(){return this._length},s.prototype.promise=function(){return this._promise},s.prototype._init=function t(r,a){var s=n(this._values,this._promise);if(s instanceof e){var c=(s=s._target())._bitField;if(this._values=s,0==(50397184&c))return this._promise._setAsyncGuaranteed(),s._then(t,this._reject,void 0,this,a);if(0==(33554432&c))return 0!=(16777216&c)?this._reject(s._reason()):this._cancel();s=s._value()}if(null!==(s=o.asArray(s)))0!==s.length?this._iterate(s):-5===a?this._resolveEmptyArray():this._resolve(function(e){switch(e){case-2:return[];case-3:return{}}}(a));else{var l=i("expecting an array or an iterable object but got "+o.classString(s)).reason();this._promise._rejectCallback(l,!1)}},s.prototype._iterate=function(t){var r=this.getActualLength(t.length);this._length=r,this._values=this.shouldCopyValues()?new Array(r):this._values;for(var i=this._promise,a=!1,o=null,s=0;s<r;++s){var c=n(t[s],i);o=c instanceof e?(c=c._target())._bitField:null,a?null!==o&&c.suppressUnhandledRejections():null!==o?0==(50397184&o)?(c._proxy(this,s),this._values[s]=c):a=0!=(33554432&o)?this._promiseFulfilled(c._value(),s):0!=(16777216&o)?this._promiseRejected(c._reason(),s):this._promiseCancelled(s):a=this._promiseFulfilled(c,s)}a||i._setAsyncGuaranteed()},s.prototype._isResolved=function(){return null===this._values},s.prototype._resolve=function(e){this._values=null,this._promise._fulfill(e)},s.prototype._cancel=function(){!this._isResolved()&&this._promise._isCancellable()&&(this._values=null,this._promise._cancel())},s.prototype._reject=function(e){this._values=null,this._promise._rejectCallback(e,!1)},s.prototype._promiseFulfilled=function(e,t){return this._values[t]=e,++this._totalResolved>=this._length&&(this._resolve(this._values),!0)},s.prototype._promiseCancelled=function(){return this._cancel(),!0},s.prototype._promiseRejected=function(e){return this._totalResolved++,this._reject(e),!0},s.prototype._resultCancelled=function(){if(!this._isResolved()){var t=this._values;if(this._cancel(),t instanceof e)t.cancel();else for(var r=0;r<t.length;++r)t[r]instanceof e&&t[r].cancel()}},s.prototype.shouldCopyValues=function(){return!0},s.prototype.getActualLength=function(e){return e},s}},79346:(e,t,r)=>{"use strict";e.exports=function(e,t){var n={},i=r(75942),a=r(81776),o=i.withAppended,s=i.maybeWrapAsError,c=i.canEvaluate,l=r(57621).TypeError,u={__isPromisified__:!0},d=new RegExp("^(?:"+["arity","length","name","arguments","caller","callee","prototype","__isPromisified__"].join("|")+")$"),p=function(e){return i.isIdentifier(e)&&"_"!==e.charAt(0)&&"constructor"!==e};function f(e){return!d.test(e)}function m(e){try{return!0===e.__isPromisified__}catch(e){return!1}}function g(e,t,r){var n=i.getDataPropertyOrDefault(e,t+r,u);return!!n&&m(n)}function _(e,t,r,n){for(var a=i.inheritedDataKeys(e),o=[],s=0;s<a.length;++s){var c=a[s],u=e[c],d=n===p||p(c,u,e);"function"!=typeof u||m(u)||g(e,c,t)||!n(c,u,e,d)||o.push(c,u)}return function(e,t,r){for(var n=0;n<e.length;n+=2){var i=e[n];if(r.test(i))for(var a=i.replace(r,""),o=0;o<e.length;o+=2)if(e[o]===a)throw new l("Cannot promisify an API that has normal methods with '%s'-suffix\n\n See http://goo.gl/MqrFmX\n".replace("%s",t))}}(o,t,r),o}var h;h=function(r,c,l,u,d,p){var f=Math.max(0,function(e){return"number"==typeof e.length?Math.max(Math.min(e.length,1024),0):0}(u)-1),m=function(e){for(var t=[e],r=Math.max(0,e-1-3),n=e-1;n>=r;--n)t.push(n);for(n=e+1;n<=3;++n)t.push(n);return t}(f),g="string"==typeof r||c===n;function _(e){var t,r=(t=e,i.filledRange(t,"_arg","")).join(", "),n=e>0?", ":"";return(g?"ret = callback.call(this, {{args}}, nodeback); break;\n":void 0===c?"ret = callback({{args}}, nodeback); break;\n":"ret = callback.call(receiver, {{args}}, nodeback); break;\n").replace("{{args}}",r).replace(", ",n)}var h="string"==typeof r?"this != null ? this['"+r+"'] : fn":"fn",y="'use strict'; \n var ret = function (Parameters) { \n 'use strict'; \n var len = arguments.length; \n var promise = new Promise(INTERNAL); \n promise._captureStackTrace(); \n var nodeback = nodebackForPromise(promise, "+p+"); \n var ret; \n var callback = tryCatch([GetFunctionCode]); \n switch(len) { \n [CodeForSwitchCase] \n } \n if (ret === errorObj) { \n promise._rejectCallback(maybeWrapAsError(ret.e), true, true);\n } \n if (!promise._isFateSealed()) promise._setAsyncGuaranteed(); \n return promise; \n }; \n notEnumerableProp(ret, '__isPromisified__', true); \n return ret; \n ".replace("[CodeForSwitchCase]",function(){for(var e="",t=0;t<m.length;++t)e+="case "+m[t]+":"+_(m[t]);return e+=" \n default: \n var args = new Array(len + 1); \n var i = 0; \n for (var i = 0; i < len; ++i) { \n args[i] = arguments[i]; \n } \n args[i] = nodeback; \n [CodeForCall] \n break; \n ".replace("[CodeForCall]",g?"ret = callback.apply(this, args);\n":"ret = callback.apply(receiver, args);\n")}()).replace("[GetFunctionCode]",h);return y=y.replace("Parameters",function(e){return i.filledRange(Math.max(e,3),"_arg","")}(f)),new Function("Promise","fn","receiver","withAppended","maybeWrapAsError","nodebackForPromise","tryCatch","errorObj","notEnumerableProp","INTERNAL",y)(e,u,c,o,s,a,i.tryCatch,i.errorObj,i.notEnumerableProp,t)};var y=c?h:function(r,c,l,u,d,p){var f=function(){return this}(),m=r;function g(){var i=c;c===n&&(i=this);var l=new e(t);l._captureStackTrace();var u="string"==typeof m&&this!==f?this[m]:r,d=a(l,p);try{u.apply(i,o(arguments,d))}catch(e){l._rejectCallback(s(e),!0,!0)}return l._isFateSealed()||l._setAsyncGuaranteed(),l}return"string"==typeof m&&(r=u),i.notEnumerableProp(g,"__isPromisified__",!0),g};function v(e,t,r,a,o){for(var s=new RegExp(t.replace(/([$])/,"\\$")+"$"),c=_(e,t,s,r),l=0,u=c.length;l<u;l+=2){var d=c[l],p=c[l+1],f=d+t;if(a===y)e[f]=y(d,n,d,p,t,o);else{var m=a(p,(function(){return y(d,n,d,p,t,o)}));i.notEnumerableProp(m,"__isPromisified__",!0),e[f]=m}}return i.toFastProperties(e),e}e.promisify=function(e,t){if("function"!=typeof e)throw new l("expecting a function but got "+i.classString(e));if(m(e))return e;var r=function(e,t,r){return y(e,t,void 0,e,null,r)}(e,void 0===(t=Object(t)).context?n:t.context,!!t.multiArgs);return i.copyDescriptors(e,r,f),r},e.promisifyAll=function(e,t){if("function"!=typeof e&&"object"!=typeof e)throw new l("the target of promisifyAll must be an object or a function\n\n See http://goo.gl/MqrFmX\n");var r=!!(t=Object(t)).multiArgs,n=t.suffix;"string"!=typeof n&&(n="Async");var a=t.filter;"function"!=typeof a&&(a=p);var o=t.promisifier;if("function"!=typeof o&&(o=y),!i.isIdentifier(n))throw new RangeError("suffix must be a valid identifier\n\n See http://goo.gl/MqrFmX\n");for(var s=i.inheritedDataKeys(e),c=0;c<s.length;++c){var u=e[s[c]];"constructor"!==s[c]&&i.isClass(u)&&(v(u.prototype,n,a,o,r),v(u,n,a,o,r))}return v(e,n,a,o,r)}}},5733:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i){var a,o=r(75942),s=o.isObject,c=r(89571);"function"==typeof Map&&(a=Map);var l=function(){var e=0,t=0;function r(r,n){this[e]=r,this[e+t]=n,e++}return function(n){t=n.size,e=0;var i=new Array(2*n.size);return n.forEach(r,i),i}}();function u(e){var t,r=!1;if(void 0!==a&&e instanceof a)t=l(e),r=!0;else{var n=c.keys(e),i=n.length;t=new Array(2*i);for(var o=0;o<i;++o){var s=n[o];t[o]=e[s],t[o+i]=s}}this.constructor$(t),this._isMap=r,this._init$(void 0,-3)}function d(t){var r,a=n(t);return s(a)?(r=a instanceof e?a._then(e.props,void 0,void 0,void 0,void 0):new u(a).promise(),a instanceof e&&r._propagateFrom(a,2),r):i("cannot await properties of a non-object\n\n See http://goo.gl/MqrFmX\n")}o.inherits(u,t),u.prototype._init=function(){},u.prototype._promiseFulfilled=function(e,t){if(this._values[t]=e,++this._totalResolved>=this._length){var r;if(this._isMap)r=function(e){for(var t=new a,r=e.length/2|0,n=0;n<r;++n){var i=e[r+n],o=e[n];t.set(i,o)}return t}(this._values);else{r={};for(var n=this.length(),i=0,o=this.length();i<o;++i)r[this._values[i+n]]=this._values[i]}return this._resolve(r),!0}return!1},u.prototype.shouldCopyValues=function(){return!1},u.prototype.getActualLength=function(e){return e>>1},e.prototype.props=function(){return d(this)},e.props=function(e){return d(e)}}},7824:e=>{"use strict";function t(e){this._capacity=e,this._length=0,this._front=0}t.prototype._willBeOverCapacity=function(e){return this._capacity<e},t.prototype._pushOne=function(e){var t=this.length();this._checkCapacity(t+1),this[this._front+t&this._capacity-1]=e,this._length=t+1},t.prototype.push=function(e,t,r){var n=this.length()+3;if(this._willBeOverCapacity(n))return this._pushOne(e),this._pushOne(t),void this._pushOne(r);var i=this._front+n-3;this._checkCapacity(n);var a=this._capacity-1;this[i+0&a]=e,this[i+1&a]=t,this[i+2&a]=r,this._length=n},t.prototype.shift=function(){var e=this._front,t=this[e];return this[e]=void 0,this._front=e+1&this._capacity-1,this._length--,t},t.prototype.length=function(){return this._length},t.prototype._checkCapacity=function(e){this._capacity<e&&this._resizeTo(this._capacity<<1)},t.prototype._resizeTo=function(e){var t=this._capacity;this._capacity=e,function(e,t,r,n,i){for(var a=0;a<i;++a)r[a+n]=e[a+t],e[a+t]=void 0}(this,0,this,t,this._front+this._length&t-1)},e.exports=t},94648:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i){var a=r(75942);function o(r,s){var c,l=n(r);if(l instanceof e)return(c=l).then((function(e){return o(e,c)}));if(null===(r=a.asArray(r)))return i("expecting an array or an iterable object but got "+a.classString(r));var u=new e(t);void 0!==s&&u._propagateFrom(s,3);for(var d=u._fulfill,p=u._reject,f=0,m=r.length;f<m;++f){var g=r[f];(void 0!==g||f in r)&&e.cast(g)._then(d,p,void 0,u,null)}return u}e.race=function(e){return o(e,void 0)},e.prototype.race=function(){return o(this,void 0)}}},73609:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=e._getDomain,c=r(75942),l=c.tryCatch;function u(t,r,n,i){this.constructor$(t);var o=s();this._fn=null===o?r:c.domainBind(o,r),void 0!==n&&(n=e.resolve(n))._attachCancellationCallback(this),this._initialValue=n,this._currentCancellable=null,this._eachValues=i===a?Array(this._length):0===i?null:void 0,this._promise._captureStackTrace(),this._init$(void 0,-5)}function d(e,t){this.isFulfilled()?t._resolve(e):t._reject(e)}function p(e,t,r,i){return"function"!=typeof t?n("expecting a function but got "+c.classString(t)):new u(e,t,r,i).promise()}function f(t){this.accum=t,this.array._gotAccum(t);var r=i(this.value,this.array._promise);return r instanceof e?(this.array._currentCancellable=r,r._then(m,void 0,void 0,this,void 0)):m.call(this,r)}function m(t){var r,n=this.array,i=n._promise,a=l(n._fn);i._pushContext(),(r=void 0!==n._eachValues?a.call(i._boundValue(),t,this.index,this.length):a.call(i._boundValue(),this.accum,t,this.index,this.length))instanceof e&&(n._currentCancellable=r);var s=i._popContext();return o.checkForgottenReturns(r,s,void 0!==n._eachValues?"Promise.each":"Promise.reduce",i),r}c.inherits(u,t),u.prototype._gotAccum=function(e){void 0!==this._eachValues&&null!==this._eachValues&&e!==a&&this._eachValues.push(e)},u.prototype._eachComplete=function(e){return null!==this._eachValues&&this._eachValues.push(e),this._eachValues},u.prototype._init=function(){},u.prototype._resolveEmptyArray=function(){this._resolve(void 0!==this._eachValues?this._eachValues:this._initialValue)},u.prototype.shouldCopyValues=function(){return!1},u.prototype._resolve=function(e){this._promise._resolveCallback(e),this._values=null},u.prototype._resultCancelled=function(t){if(t===this._initialValue)return this._cancel();this._isResolved()||(this._resultCancelled$(),this._currentCancellable instanceof e&&this._currentCancellable.cancel(),this._initialValue instanceof e&&this._initialValue.cancel())},u.prototype._iterate=function(t){var r,n;this._values=t;var i=t.length;if(void 0!==this._initialValue?(r=this._initialValue,n=0):(r=e.resolve(t[0]),n=1),this._currentCancellable=r,!r.isRejected())for(;n<i;++n){var a={accum:null,value:t[n],index:n,length:i,array:this};r=r._then(f,void 0,void 0,a,void 0)}void 0!==this._eachValues&&(r=r._then(this._eachComplete,void 0,void 0,this,void 0)),r._then(d,d,void 0,r,this)},e.prototype.reduce=function(e,t){return p(this,e,t,null)},e.reduce=function(e,t,r,n){return p(e,t,r,n)}}},10679:(e,t,r)=>{"use strict";var n,i=r(75942),a=i.getNativePromise();if(i.isNode&&"undefined"==typeof MutationObserver){var o=global.setImmediate,s=process.nextTick;n=i.isRecentNode?function(e){o.call(global,e)}:function(e){s.call(process,e)}}else if("function"==typeof a&&"function"==typeof a.resolve){var c=a.resolve();n=function(e){c.then(e)}}else n="undefined"==typeof MutationObserver||"undefined"!=typeof window&&window.navigator&&(window.navigator.standalone||window.cordova)?"undefined"!=typeof setImmediate?function(e){setImmediate(e)}:"undefined"!=typeof setTimeout?function(e){setTimeout(e,0)}:function(){throw new Error("No async scheduler available\n\n See http://goo.gl/MqrFmX\n")}:function(){var e=document.createElement("div"),t={attributes:!0},r=!1,n=document.createElement("div");new MutationObserver((function(){e.classList.toggle("foo"),r=!1})).observe(n,t);return function(i){var a=new MutationObserver((function(){a.disconnect(),i()}));a.observe(e,t),r||(r=!0,n.classList.toggle("foo"))}}();e.exports=n},38615:(e,t,r)=>{"use strict";e.exports=function(e,t,n){var i=e.PromiseInspection;function a(e){this.constructor$(e)}r(75942).inherits(a,t),a.prototype._promiseResolved=function(e,t){return this._values[e]=t,++this._totalResolved>=this._length&&(this._resolve(this._values),!0)},a.prototype._promiseFulfilled=function(e,t){var r=new i;return r._bitField=33554432,r._settledValueField=e,this._promiseResolved(t,r)},a.prototype._promiseRejected=function(e,t){var r=new i;return r._bitField=16777216,r._settledValueField=e,this._promiseResolved(t,r)},e.settle=function(e){return n.deprecated(".settle()",".reflect()"),new a(e).promise()},e.prototype.settle=function(){return e.settle(this)}}},74488:(e,t,r)=>{"use strict";e.exports=function(e,t,n){var i=r(75942),a=r(57621).RangeError,o=r(57621).AggregateError,s=i.isArray,c={};function l(e){this.constructor$(e),this._howMany=0,this._unwrap=!1,this._initialized=!1}function u(e,t){if((0|t)!==t||t<0)return n("expecting a positive integer\n\n See http://goo.gl/MqrFmX\n");var r=new l(e),i=r.promise();return r.setHowMany(t),r.init(),i}i.inherits(l,t),l.prototype._init=function(){if(this._initialized)if(0!==this._howMany){this._init$(void 0,-5);var e=s(this._values);!this._isResolved()&&e&&this._howMany>this._canPossiblyFulfill()&&this._reject(this._getRangeError(this.length()))}else this._resolve([])},l.prototype.init=function(){this._initialized=!0,this._init()},l.prototype.setUnwrap=function(){this._unwrap=!0},l.prototype.howMany=function(){return this._howMany},l.prototype.setHowMany=function(e){this._howMany=e},l.prototype._promiseFulfilled=function(e){return this._addFulfilled(e),this._fulfilled()===this.howMany()&&(this._values.length=this.howMany(),1===this.howMany()&&this._unwrap?this._resolve(this._values[0]):this._resolve(this._values),!0)},l.prototype._promiseRejected=function(e){return this._addRejected(e),this._checkOutcome()},l.prototype._promiseCancelled=function(){return this._values instanceof e||null==this._values?this._cancel():(this._addRejected(c),this._checkOutcome())},l.prototype._checkOutcome=function(){if(this.howMany()>this._canPossiblyFulfill()){for(var e=new o,t=this.length();t<this._values.length;++t)this._values[t]!==c&&e.push(this._values[t]);return e.length>0?this._reject(e):this._cancel(),!0}return!1},l.prototype._fulfilled=function(){return this._totalResolved},l.prototype._rejected=function(){return this._values.length-this.length()},l.prototype._addRejected=function(e){this._values.push(e)},l.prototype._addFulfilled=function(e){this._values[this._totalResolved++]=e},l.prototype._canPossiblyFulfill=function(){return this.length()-this._rejected()},l.prototype._getRangeError=function(e){var t="Input array must contain at least "+this._howMany+" items but contains only "+e+" items";return new a(t)},l.prototype._resolveEmptyArray=function(){this._reject(this._getRangeError(0))},e.some=function(e,t){return u(e,t)},e.prototype.some=function(e){return u(this,e)},e._SomePromiseArray=l}},1958:e=>{"use strict";e.exports=function(e){function t(e){void 0!==e?(e=e._target(),this._bitField=e._bitField,this._settledValueField=e._isFateSealed()?e._settledValue():void 0):(this._bitField=0,this._settledValueField=void 0)}t.prototype._settledValue=function(){return this._settledValueField};var r=t.prototype.value=function(){if(!this.isFulfilled())throw new TypeError("cannot get fulfillment value of a non-fulfilled promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},n=t.prototype.error=t.prototype.reason=function(){if(!this.isRejected())throw new TypeError("cannot get rejection reason of a non-rejected promise\n\n See http://goo.gl/MqrFmX\n");return this._settledValue()},i=t.prototype.isFulfilled=function(){return 0!=(33554432&this._bitField)},a=t.prototype.isRejected=function(){return 0!=(16777216&this._bitField)},o=t.prototype.isPending=function(){return 0==(50397184&this._bitField)},s=t.prototype.isResolved=function(){return 0!=(50331648&this._bitField)};t.prototype.isCancelled=function(){return 0!=(8454144&this._bitField)},e.prototype.__isCancelled=function(){return 65536==(65536&this._bitField)},e.prototype._isCancelled=function(){return this._target().__isCancelled()},e.prototype.isCancelled=function(){return 0!=(8454144&this._target()._bitField)},e.prototype.isPending=function(){return o.call(this._target())},e.prototype.isRejected=function(){return a.call(this._target())},e.prototype.isFulfilled=function(){return i.call(this._target())},e.prototype.isResolved=function(){return s.call(this._target())},e.prototype.value=function(){return r.call(this._target())},e.prototype.reason=function(){var e=this._target();return e._unsetRejectionIsUnhandled(),n.call(e)},e.prototype._value=function(){return this._settledValue()},e.prototype._reason=function(){return this._unsetRejectionIsUnhandled(),this._settledValue()},e.PromiseInspection=t}},91778:(e,t,r)=>{"use strict";e.exports=function(e,t){var n=r(75942),i=n.errorObj,a=n.isObject;var o={}.hasOwnProperty;return function(r,s){if(a(r)){if(r instanceof e)return r;var c=function(e){try{return function(e){return e.then}(e)}catch(e){return i.e=e,i}}(r);if(c===i){s&&s._pushContext();var l=e.reject(c.e);return s&&s._popContext(),l}if("function"==typeof c){if(function(e){try{return o.call(e,"_promise0")}catch(e){return!1}}(r)){l=new e(t);return r._then(l._fulfill,l._reject,void 0,l,null),l}return function(r,a,o){var s=new e(t),c=s;o&&o._pushContext();s._captureStackTrace(),o&&o._popContext();var l=!0,u=n.tryCatch(a).call(r,d,p);l=!1,s&&u===i&&(s._rejectCallback(u.e,!0,!0),s=null);function d(e){s&&(s._resolveCallback(e),s=null)}function p(e){s&&(s._rejectCallback(e,l,!0),s=null)}return c}(r,c,s)}}return r}}},98418:(e,t,r)=>{"use strict";e.exports=function(e,t,n){var i=r(75942),a=e.TimeoutError;function o(e){this.handle=e}o.prototype._resultCancelled=function(){clearTimeout(this.handle)};var s=function(e){return c(+this).thenReturn(e)},c=e.delay=function(r,i){var a,c;return void 0!==i?(a=e.resolve(i)._then(s,null,null,r,void 0),n.cancellation()&&i instanceof e&&a._setOnCancel(i)):(a=new e(t),c=setTimeout((function(){a._fulfill()}),+r),n.cancellation()&&a._setOnCancel(new o(c)),a._captureStackTrace()),a._setAsyncGuaranteed(),a};e.prototype.delay=function(e){return c(e,this)};function l(e){return clearTimeout(this.handle),e}function u(e){throw clearTimeout(this.handle),e}e.prototype.timeout=function(e,t){var r,s;e=+e;var c=new o(setTimeout((function(){r.isPending()&&function(e,t,r){var n;n="string"!=typeof t?t instanceof Error?t:new a("operation timed out"):new a(t),i.markAsOriginatingFromRejection(n),e._attachExtraTrace(n),e._reject(n),null!=r&&r.cancel()}(r,t,s)}),e));return n.cancellation()?(s=this.then(),(r=s._then(l,u,void 0,c,void 0))._setOnCancel(c)):r=this._then(l,u,void 0,c,void 0),r}}},14525:(e,t,r)=>{"use strict";e.exports=function(e,t,n,i,a,o){var s=r(75942),c=r(57621).TypeError,l=r(75942).inherits,u=s.errorObj,d=s.tryCatch,p={};function f(e){setTimeout((function(){throw e}),0)}function m(t,r){var i=0,o=t.length,s=new e(a);return function a(){if(i>=o)return s._fulfill();var c=function(e){var t=n(e);return t!==e&&"function"==typeof e._isDisposable&&"function"==typeof e._getDisposer&&e._isDisposable()&&t._setDisposable(e._getDisposer()),t}(t[i++]);if(c instanceof e&&c._isDisposable()){try{c=n(c._getDisposer().tryDispose(r),t.promise)}catch(e){return f(e)}if(c instanceof e)return c._then(a,f,null,null,null)}a()}(),s}function g(e,t,r){this._data=e,this._promise=t,this._context=r}function _(e,t,r){this.constructor$(e,t,r)}function h(e){return g.isDisposer(e)?(this.resources[this.index]._setDisposable(e),e.promise()):e}function y(e){this.length=e,this.promise=null,this[e-1]=null}g.prototype.data=function(){return this._data},g.prototype.promise=function(){return this._promise},g.prototype.resource=function(){return this.promise().isFulfilled()?this.promise().value():p},g.prototype.tryDispose=function(e){var t=this.resource(),r=this._context;void 0!==r&&r._pushContext();var n=t!==p?this.doDispose(t,e):null;return void 0!==r&&r._popContext(),this._promise._unsetDisposable(),this._data=null,n},g.isDisposer=function(e){return null!=e&&"function"==typeof e.resource&&"function"==typeof e.tryDispose},l(_,g),_.prototype.doDispose=function(e,t){return this.data().call(e,e,t)},y.prototype._resultCancelled=function(){for(var t=this.length,r=0;r<t;++r){var n=this[r];n instanceof e&&n.cancel()}},e.using=function(){var r=arguments.length;if(r<2)return t("you must pass at least 2 arguments to Promise.using");var i,a=arguments[r-1];if("function"!=typeof a)return t("expecting a function but got "+s.classString(a));var c=!0;2===r&&Array.isArray(arguments[0])?(r=(i=arguments[0]).length,c=!1):(i=arguments,r--);for(var l=new y(r),p=0;p<r;++p){var f=i[p];if(g.isDisposer(f)){var _=f;(f=f.promise())._setDisposable(_)}else{var v=n(f);v instanceof e&&(f=v._then(h,null,null,{resources:l,index:p},void 0))}l[p]=f}var b=new Array(l.length);for(p=0;p<b.length;++p)b[p]=e.resolve(l[p]).reflect();var k=e.all(b).then((function(e){for(var t=0;t<e.length;++t){var r=e[t];if(r.isRejected())return u.e=r.error(),u;if(!r.isFulfilled())return void k.cancel();e[t]=r.value()}x._pushContext(),a=d(a);var n=c?a.apply(void 0,e):a(e),i=x._popContext();return o.checkForgottenReturns(n,i,"Promise.using",x),n})),x=k.lastly((function(){var t=new e.PromiseInspection(k);return m(l,t)}));return l.promise=x,x._setOnCancel(l),x},e.prototype._setDisposable=function(e){this._bitField=131072|this._bitField,this._disposer=e},e.prototype._isDisposable=function(){return(131072&this._bitField)>0},e.prototype._getDisposer=function(){return this._disposer},e.prototype._unsetDisposable=function(){this._bitField=-131073&this._bitField,this._disposer=void 0},e.prototype.disposer=function(e){if("function"==typeof e)return new _(e,this,i());throw new c}}},75942:function(e,t,r){"use strict";var n=r(89571),i="undefined"==typeof navigator,a={e:{}},o,s="undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:void 0!==this?this:null;function c(){try{var e=o;return o=null,e.apply(this,arguments)}catch(e){return a.e=e,a}}function l(e){return o=e,c}var u=function(e,t){var r={}.hasOwnProperty;function n(){for(var n in this.constructor=e,this.constructor$=t,t.prototype)r.call(t.prototype,n)&&"$"!==n.charAt(n.length-1)&&(this[n+"$"]=t.prototype[n])}return n.prototype=t.prototype,e.prototype=new n,e.prototype};function d(e){return null==e||!0===e||!1===e||"string"==typeof e||"number"==typeof e}function p(e){return"function"==typeof e||"object"==typeof e&&null!==e}function f(e){return d(e)?new Error(D(e)):e}function m(e,t){var r,n=e.length,i=new Array(n+1);for(r=0;r<n;++r)i[r]=e[r];return i[r]=t,i}function g(e,t,r){if(!n.isES5)return{}.hasOwnProperty.call(e,t)?e[t]:void 0;var i=Object.getOwnPropertyDescriptor(e,t);return null!=i?null==i.get&&null==i.set?i.value:r:void 0}function _(e,t,r){if(d(e))return e;var i={value:r,configurable:!0,enumerable:!1,writable:!0};return n.defineProperty(e,t,i),e}function h(e){throw e}var y=function(){var e=[Array.prototype,Object.prototype,Function.prototype],t=function(t){for(var r=0;r<e.length;++r)if(e[r]===t)return!0;return!1};if(n.isES5){var r=Object.getOwnPropertyNames;return function(e){for(var i=[],a=Object.create(null);null!=e&&!t(e);){var o;try{o=r(e)}catch(e){return i}for(var s=0;s<o.length;++s){var c=o[s];if(!a[c]){a[c]=!0;var l=Object.getOwnPropertyDescriptor(e,c);null!=l&&null==l.get&&null==l.set&&i.push(c)}}e=n.getPrototypeOf(e)}return i}}var i={}.hasOwnProperty;return function(r){if(t(r))return[];var n=[];e:for(var a in r)if(i.call(r,a))n.push(a);else{for(var o=0;o<e.length;++o)if(i.call(e[o],a))continue e;n.push(a)}return n}}(),v=/this\s*\.\s*\S+\s*=/;function b(e){try{if("function"==typeof e){var t=n.names(e.prototype),r=n.isES5&&t.length>1,i=t.length>0&&!(1===t.length&&"constructor"===t[0]),a=v.test(e+"")&&n.names(e).length>0;if(r||i||a)return!0}return!1}catch(e){return!1}}function k(e){function t(){}t.prototype=e;for(var r=8;r--;)new t;return e}var x=/^[a-z$_][a-z$_0-9]*$/i;function E(e){return x.test(e)}function S(e,t,r){for(var n=new Array(e),i=0;i<e;++i)n[i]=t+i+r;return n}function D(e){try{return e+""}catch(e){return"[no string representation]"}}function w(e){return null!==e&&"object"==typeof e&&"string"==typeof e.message&&"string"==typeof e.name}function T(e){try{_(e,"isOperational",!0)}catch(e){}}function C(e){return null!=e&&(e instanceof Error.__BluebirdErrorTypes__.OperationalError||!0===e.isOperational)}function A(e){return w(e)&&n.propertyIsWritable(e,"stack")}var N="stack"in new Error?function(e){return A(e)?e:new Error(D(e))}:function(e){if(A(e))return e;try{throw new Error(D(e))}catch(e){return e}};function P(e){return{}.toString.call(e)}function I(e,t,r){for(var i=n.names(e),a=0;a<i.length;++a){var o=i[a];if(r(o))try{n.defineProperty(t,o,n.getDescriptor(e,o))}catch(e){}}}var F=function(e){return n.isArray(e)?e:null};if("undefined"!=typeof Symbol&&Symbol.iterator){var O="function"==typeof Array.from?function(e){return Array.from(e)}:function(e){for(var t,r=[],n=e[Symbol.iterator]();!(t=n.next()).done;)r.push(t.value);return r};F=function(e){return n.isArray(e)?e:null!=e&&"function"==typeof e[Symbol.iterator]?O(e):null}}var R="undefined"!=typeof process&&"[object process]"===P(process).toLowerCase(),M="undefined"!=typeof process&&void 0!==process.env;function L(e){return M?process.env[e]:void 0}function j(){if("function"==typeof Promise)try{var e=new Promise((function(){}));if("[object Promise]"==={}.toString.call(e))return Promise}catch(e){}}function B(e,t){return e.bind(t)}var z={isClass:b,isIdentifier:E,inheritedDataKeys:y,getDataPropertyOrDefault:g,thrower:h,isArray:n.isArray,asArray:F,notEnumerableProp:_,isPrimitive:d,isObject:p,isError:w,canEvaluate:i,errorObj:a,tryCatch:l,inherits:u,withAppended:m,maybeWrapAsError:f,toFastProperties:k,filledRange:S,toString:D,canAttachTrace:A,ensureErrorObject:N,originatesFromRejection:C,markAsOriginatingFromRejection:T,classString:P,copyDescriptors:I,hasDevTools:!1,isNode:R,hasEnvVariables:M,env:L,global:s,getNativePromise:j,domainBind:B},U;z.isRecentNode=z.isNode&&(U=process.versions.node.split(".").map(Number),0===U[0]&&U[1]>10||U[0]>0),z.isNode&&z.toFastProperties(process);try{throw new Error}catch(e){z.lastLineError=e}e.exports=z},3644:(e,t,r)=>{var n=r(11048),i=r(5623);e.exports=function(e){if(!e)return[];"{}"===e.substr(0,2)&&(e="\\{\\}"+e.substr(2));return h(function(e){return e.split("\\\\").join(a).split("\\{").join(o).split("\\}").join(s).split("\\,").join(c).split("\\.").join(l)}(e),!0).map(d)};var a="\0SLASH"+Math.random()+"\0",o="\0OPEN"+Math.random()+"\0",s="\0CLOSE"+Math.random()+"\0",c="\0COMMA"+Math.random()+"\0",l="\0PERIOD"+Math.random()+"\0";function u(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function d(e){return e.split(a).join("\\").split(o).join("{").split(s).join("}").split(c).join(",").split(l).join(".")}function p(e){if(!e)return[""];var t=[],r=i("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,s=n.split(",");s[s.length-1]+="{"+a+"}";var c=p(o);return o.length&&(s[s.length-1]+=c.shift(),s.push.apply(s,c)),t.push.apply(t,s),t}function f(e){return"{"+e+"}"}function m(e){return/^-?0\d/.test(e)}function g(e,t){return e<=t}function _(e,t){return e>=t}function h(e,t){var r=[],a=i("{","}",e);if(!a||/\$$/.test(a.pre))return[e];var o,c=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(a.body),l=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(a.body),d=c||l,y=a.body.indexOf(",")>=0;if(!d&&!y)return a.post.match(/,.*\}/)?h(e=a.pre+"{"+a.body+s+a.post):[e];if(d)o=a.body.split(/\.\./);else if(1===(o=p(a.body)).length&&1===(o=h(o[0],!1).map(f)).length)return(k=a.post.length?h(a.post,!1):[""]).map((function(e){return a.pre+o[0]+e}));var v,b=a.pre,k=a.post.length?h(a.post,!1):[""];if(d){var x=u(o[0]),E=u(o[1]),S=Math.max(o[0].length,o[1].length),D=3==o.length?Math.abs(u(o[2])):1,w=g;E<x&&(D*=-1,w=_);var T=o.some(m);v=[];for(var C=x;w(C,E);C+=D){var A;if(l)"\\"===(A=String.fromCharCode(C))&&(A="");else if(A=String(C),T){var N=S-A.length;if(N>0){var P=new Array(N+1).join("0");A=C<0?"-"+P+A.slice(1):P+A}}v.push(A)}}else v=n(o,(function(e){return h(e,!1)}));for(var I=0;I<v.length;I++)for(var F=0;F<k.length;F++){var O=b+v[I]+k[F];(!t||d||O)&&r.push(O)}return r}},55420:e=>{var t=Object.prototype.toString,r="undefined"!=typeof Buffer&&"function"==typeof Buffer.alloc&&"function"==typeof Buffer.allocUnsafe&&"function"==typeof Buffer.from;e.exports=function(e,n,i){if("number"==typeof e)throw new TypeError('"value" argument must not be a number');return a=e,"ArrayBuffer"===t.call(a).slice(8,-1)?function(e,t,n){t>>>=0;var i=e.byteLength-t;if(i<0)throw new RangeError("'offset' is out of bounds");if(void 0===n)n=i;else if((n>>>=0)>i)throw new RangeError("'length' is out of bounds");return r?Buffer.from(e.slice(t,t+n)):new Buffer(new Uint8Array(e.slice(t,t+n)))}(e,n,i):"string"==typeof e?function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!Buffer.isEncoding(t))throw new TypeError('"encoding" must be a valid string encoding');return r?Buffer.from(e,t):new Buffer(e,t)}(e,n):r?Buffer.from(e):new Buffer(e);var a}},67800:(e,t,r)=>{"use strict";var n=r(7280);function i(e,t){"string"==typeof e||e instanceof String?e=n(e):("number"==typeof e||e instanceof Number)&&(e=n([e]));for(var r=e.length,i=t=t||this.length-r;i>=0;i--){for(var a=!1,o=0;o<r;o++)if(this[i+o]!=e[o]){a=!0;break}if(!a)return i}return-1}Buffer.prototype.indexOf||(Buffer.prototype.indexOf=function(e,t){t=t||0,"string"==typeof e||e instanceof String?e=n(e):("number"==typeof e||e instanceof Number)&&(e=n([e]));for(var r=e.length,i=t;i<=this.length-r;i++){for(var a=!1,o=0;o<r;o++)if(this[i+o]!=e[o]){a=!0;break}if(!a)return i}return-1}),Buffer.prototype.lastIndexOf?-1===n("ABC").lastIndexOf("ABC")&&(Buffer.prototype.lastIndexOf=i):Buffer.prototype.lastIndexOf=i},7280:e=>{e.exports=function(e){return(process&&process.version?process.version:"v5.0.0").split(".")[0].replace("v","")<6?new Buffer(e):Buffer.from(e)}},75289:e=>{function t(e){if(!(this instanceof t))return new t(e);this.buffers=e||[],this.length=this.buffers.reduce((function(e,t){return e+t.length}),0)}e.exports=t,t.prototype.push=function(){for(var e=0;e<arguments.length;e++)if(!Buffer.isBuffer(arguments[e]))throw new TypeError("Tried to push a non-buffer");for(e=0;e<arguments.length;e++){var t=arguments[e];this.buffers.push(t),this.length+=t.length}return this.length},t.prototype.unshift=function(){for(var e=0;e<arguments.length;e++)if(!Buffer.isBuffer(arguments[e]))throw new TypeError("Tried to unshift a non-buffer");for(e=0;e<arguments.length;e++){var t=arguments[e];this.buffers.unshift(t),this.length+=t.length}return this.length},t.prototype.copy=function(e,t,r,n){return this.slice(r,n).copy(e,t,0,n-r)},t.prototype.splice=function(e,r){var n=this.buffers,i=e>=0?e:this.length-e,a=[].slice.call(arguments,2);(void 0===r||r>this.length-i)&&(r=this.length-i);for(e=0;e<a.length;e++)this.length+=a[e].length;for(var o=new t,s=0,c=0;c<n.length&&s+n[c].length<i;c++)s+=n[c].length;if(i-s>0){var l=i-s;if(l+r<n[c].length){o.push(n[c].slice(l,l+r));var u=n[c],d=new Buffer(l);for(e=0;e<l;e++)d[e]=u[e];var p=new Buffer(u.length-l-r);for(e=l+r;e<u.length;e++)p[e-r-l]=u[e];if(a.length>0){var f=a.slice();f.unshift(d),f.push(p),n.splice.apply(n,[c,1].concat(f)),c+=f.length,a=[]}else n.splice(c,1,d,p),c+=2}else o.push(n[c].slice(l)),n[c]=n[c].slice(0,l),c++}for(a.length>0&&(n.splice.apply(n,[c,0].concat(a)),c+=a.length);o.length<r;){var m=n[c],g=m.length,_=Math.min(g,r-o.length);_===g?(o.push(m),n.splice(c,1)):(o.push(m.slice(0,_)),n[c]=n[c].slice(_))}return this.length-=o.length,o},t.prototype.slice=function(e,t){var r=this.buffers;void 0===t&&(t=this.length),void 0===e&&(e=0),t>this.length&&(t=this.length);for(var n=0,i=0;i<r.length&&n+r[i].length<=e;i++)n+=r[i].length;for(var a=new Buffer(t-e),o=0,s=i;o<t-e&&s<r.length;s++){var c=r[s].length,l=0===o?e-n:0,u=o+c>=t-e?Math.min(l+(t-e)-o,c):c;r[s].copy(a,o,l,u),o+=u-l}return a},t.prototype.pos=function(e){if(e<0||e>=this.length)throw new Error("oob");for(var t=e,r=0,n=null;;){if(t<(n=this.buffers[r]).length)return{buf:r,offset:t};t-=n.length,r++}},t.prototype.get=function(e){var t=this.pos(e);return this.buffers[t.buf].get(t.offset)},t.prototype.set=function(e,t){var r=this.pos(e);return this.buffers[r.buf].set(r.offset,t)},t.prototype.indexOf=function(e,t){if("string"==typeof e)e=new Buffer(e);else if(!(e instanceof Buffer))throw new Error("Invalid type for a search string");if(!e.length)return 0;if(!this.length)return-1;var r,n=0,i=0,a=0,o=0;if(t){var s=this.pos(t);n=s.buf,i=s.offset,o=t}for(;;){for(;i>=this.buffers[n].length;)if(i=0,++n>=this.buffers.length)return-1;if(this.buffers[n][i]==e[a]){if(0==a&&(r={i:n,j:i,pos:o}),++a==e.length)return r.pos}else 0!=a&&(n=r.i,i=r.j,o=r.pos,a=0);i++,o++}},t.prototype.toBuffer=function(){return this.slice()},t.prototype.toString=function(e,t,r){return this.slice(t,r).toString(e)}},4077:(e,t,r)=>{var n=r(13692),i=r(82361).EventEmitter;function a(e){var t=a.saw(e,{}),r=e.call(t.handlers,t);return void 0!==r&&(t.handlers=r),t.record(),t.chain()}e.exports=a,a.light=function(e){var t=a.saw(e,{}),r=e.call(t.handlers,t);return void 0!==r&&(t.handlers=r),t.chain()},a.saw=function(e,t){var r=new i;return r.handlers=t,r.actions=[],r.chain=function(){var e=n(r.handlers).map((function(t){if(this.isRoot)return t;var n=this.path;"function"==typeof t&&this.update((function(){return r.actions.push({path:n,args:[].slice.call(arguments)}),e}))}));return process.nextTick((function(){r.emit("begin"),r.next()})),e},r.pop=function(){return r.actions.shift()},r.next=function(){var e=r.pop();if(e){if(!e.trap){var t=r.handlers;e.path.forEach((function(e){t=t[e]})),t.apply(r.handlers,e.args)}}else r.emit("end")},r.nest=function(t){var n=[].slice.call(arguments,1),i=!0;if("boolean"==typeof t){i=t;t=n.shift()}var o=a.saw(e,{}),s=e.call(o.handlers,o);void 0!==s&&(o.handlers=s),void 0!==r.step&&o.record(),t.apply(o.chain(),n),!1!==i&&o.on("end",r.next)},r.record=function(){!function(e){e.step=0,e.pop=function(){return e.actions[e.step++]},e.trap=function(t,r){var n=Array.isArray(t)?t:[t];e.actions.push({path:n,step:e.step,cb:r,trap:!0})},e.down=function(t){var r=(Array.isArray(t)?t:[t]).join("/"),n=e.actions.slice(e.step).map((function(t){return!(t.trap&&t.step<=e.step)&&t.path.join("/")==r})).indexOf(!0);n>=0?e.step+=n:e.step=e.actions.length;var i=e.actions[e.step-1];i&&i.trap?(e.step=i.step,i.cb()):e.next()},e.jump=function(t){e.step=t,e.next()}}(r)},["trap","down","jump"].forEach((function(e){r[e]=function(){throw new Error("To use the trap, down and jump features, please call record() first to start recording actions.")}})),r}},11048:e=>{e.exports=function(e,r){for(var n=[],i=0;i<e.length;i++){var a=r(e[i],i);t(a)?n.push.apply(n,a):n.push(a)}return n};var t=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},16497:(e,t,r)=>{function n(e){return Object.prototype.toString.call(e)}t.isArray=function(e){return Array.isArray?Array.isArray(e):"[object Array]"===n(e)},t.isBoolean=function(e){return"boolean"==typeof e},t.isNull=function(e){return null===e},t.isNullOrUndefined=function(e){return null==e},t.isNumber=function(e){return"number"==typeof e},t.isString=function(e){return"string"==typeof e},t.isSymbol=function(e){return"symbol"==typeof e},t.isUndefined=function(e){return void 0===e},t.isRegExp=function(e){return"[object RegExp]"===n(e)},t.isObject=function(e){return"object"==typeof e&&null!==e},t.isDate=function(e){return"[object Date]"===n(e)},t.isError=function(e){return"[object Error]"===n(e)||e instanceof Error},t.isFunction=function(e){return"function"==typeof e},t.isPrimitive=function(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e},t.isBuffer=r(14300).Buffer.isBuffer},34606:(e,t)=>{ -/*! crc32.js (C) 2014-present SheetJS -- http://sheetjs.com */ -var r;r=function(e){e.version="1.2.2";var t=function(){for(var e=0,t=new Array(256),r=0;256!=r;++r)e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=r)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1,t[r]=e;return"undefined"!=typeof Int32Array?new Int32Array(t):t}(),r=function(e){var t=0,r=0,n=0,i="undefined"!=typeof Int32Array?new Int32Array(4096):new Array(4096);for(n=0;256!=n;++n)i[n]=e[n];for(n=0;256!=n;++n)for(r=e[n],t=256+n;t<4096;t+=256)r=i[t]=r>>>8^e[255&r];var a=[];for(n=1;16!=n;++n)a[n-1]="undefined"!=typeof Int32Array?i.subarray(256*n,256*n+256):i.slice(256*n,256*n+256);return a}(t),n=r[0],i=r[1],a=r[2],o=r[3],s=r[4],c=r[5],l=r[6],u=r[7],d=r[8],p=r[9],f=r[10],m=r[11],g=r[12],_=r[13],h=r[14];e.table=t,e.bstr=function(e,r){for(var n=-1^r,i=0,a=e.length;i<a;)n=n>>>8^t[255&(n^e.charCodeAt(i++))];return~n},e.buf=function(e,r){for(var y=-1^r,v=e.length-15,b=0;b<v;)y=h[e[b++]^255&y]^_[e[b++]^y>>8&255]^g[e[b++]^y>>16&255]^m[e[b++]^y>>>24]^f[e[b++]]^p[e[b++]]^d[e[b++]]^u[e[b++]]^l[e[b++]]^c[e[b++]]^s[e[b++]]^o[e[b++]]^a[e[b++]]^i[e[b++]]^n[e[b++]]^t[e[b++]];for(v+=15;b<v;)y=y>>>8^t[255&(y^e[b++])];return~y},e.str=function(e,r){for(var n=-1^r,i=0,a=e.length,o=0,s=0;i<a;)(o=e.charCodeAt(i++))<128?n=n>>>8^t[255&(n^o)]:o<2048?n=(n=n>>>8^t[255&(n^(192|o>>6&31))])>>>8^t[255&(n^(128|63&o))]:o>=55296&&o<57344?(o=64+(1023&o),s=1023&e.charCodeAt(i++),n=(n=(n=(n=n>>>8^t[255&(n^(240|o>>8&7))])>>>8^t[255&(n^(128|o>>2&63))])>>>8^t[255&(n^(128|s>>6&15|(3&o)<<4))])>>>8^t[255&(n^(128|63&s))]):n=(n=(n=n>>>8^t[255&(n^(224|o>>12&15))])>>>8^t[255&(n^(128|o>>6&63))])>>>8^t[255&(n^(128|63&o))];return~n}},"undefined"==typeof DO_NOT_EXPORT_CRC?r(t):r({})},27484:function(e){e.exports=function(){"use strict";var e=1e3,t=6e4,r=36e5,n="millisecond",i="second",a="minute",o="hour",s="day",c="week",l="month",u="quarter",d="year",p="date",f="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,g=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,_={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(e){var t=["th","st","nd","rd"],r=e%100;return"["+e+(t[(r-20)%10]||t[r]||t[0])+"]"}},h=function(e,t,r){var n=String(e);return!n||n.length>=t?e:""+Array(t+1-n.length).join(r)+e},y={s:h,z:function(e){var t=-e.utcOffset(),r=Math.abs(t),n=Math.floor(r/60),i=r%60;return(t<=0?"+":"-")+h(n,2,"0")+":"+h(i,2,"0")},m:function e(t,r){if(t.date()<r.date())return-e(r,t);var n=12*(r.year()-t.year())+(r.month()-t.month()),i=t.clone().add(n,l),a=r-i<0,o=t.clone().add(n+(a?-1:1),l);return+(-(n+(r-i)/(a?i-o:o-i))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(e){return{M:l,y:d,w:c,d:s,D:p,h:o,m:a,s:i,ms:n,Q:u}[e]||String(e||"").toLowerCase().replace(/s$/,"")},u:function(e){return void 0===e}},v="en",b={};b[v]=_;var k="$isDayjsObject",x=function(e){return e instanceof w||!(!e||!e[k])},E=function e(t,r,n){var i;if(!t)return v;if("string"==typeof t){var a=t.toLowerCase();b[a]&&(i=a),r&&(b[a]=r,i=a);var o=t.split("-");if(!i&&o.length>1)return e(o[0])}else{var s=t.name;b[s]=t,i=s}return!n&&i&&(v=i),i||!n&&v},S=function(e,t){if(x(e))return e.clone();var r="object"==typeof t?t:{};return r.date=e,r.args=arguments,new w(r)},D=y;D.l=E,D.i=x,D.w=function(e,t){return S(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var w=function(){function _(e){this.$L=E(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[k]=!0}var h=_.prototype;return h.parse=function(e){this.$d=function(e){var t=e.date,r=e.utc;if(null===t)return new Date(NaN);if(D.u(t))return new Date;if(t instanceof Date)return new Date(t);if("string"==typeof t&&!/Z$/i.test(t)){var n=t.match(m);if(n){var i=n[2]-1||0,a=(n[7]||"0").substring(0,3);return r?new Date(Date.UTC(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)):new Date(n[1],i,n[3]||1,n[4]||0,n[5]||0,n[6]||0,a)}}return new Date(t)}(e),this.init()},h.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},h.$utils=function(){return D},h.isValid=function(){return!(this.$d.toString()===f)},h.isSame=function(e,t){var r=S(e);return this.startOf(t)<=r&&r<=this.endOf(t)},h.isAfter=function(e,t){return S(e)<this.startOf(t)},h.isBefore=function(e,t){return this.endOf(t)<S(e)},h.$g=function(e,t,r){return D.u(e)?this[t]:this.set(r,e)},h.unix=function(){return Math.floor(this.valueOf()/1e3)},h.valueOf=function(){return this.$d.getTime()},h.startOf=function(e,t){var r=this,n=!!D.u(t)||t,u=D.p(e),f=function(e,t){var i=D.w(r.$u?Date.UTC(r.$y,t,e):new Date(r.$y,t,e),r);return n?i:i.endOf(s)},m=function(e,t){return D.w(r.toDate()[e].apply(r.toDate("s"),(n?[0,0,0,0]:[23,59,59,999]).slice(t)),r)},g=this.$W,_=this.$M,h=this.$D,y="set"+(this.$u?"UTC":"");switch(u){case d:return n?f(1,0):f(31,11);case l:return n?f(1,_):f(0,_+1);case c:var v=this.$locale().weekStart||0,b=(g<v?g+7:g)-v;return f(n?h-b:h+(6-b),_);case s:case p:return m(y+"Hours",0);case o:return m(y+"Minutes",1);case a:return m(y+"Seconds",2);case i:return m(y+"Milliseconds",3);default:return this.clone()}},h.endOf=function(e){return this.startOf(e,!1)},h.$set=function(e,t){var r,c=D.p(e),u="set"+(this.$u?"UTC":""),f=(r={},r[s]=u+"Date",r[p]=u+"Date",r[l]=u+"Month",r[d]=u+"FullYear",r[o]=u+"Hours",r[a]=u+"Minutes",r[i]=u+"Seconds",r[n]=u+"Milliseconds",r)[c],m=c===s?this.$D+(t-this.$W):t;if(c===l||c===d){var g=this.clone().set(p,1);g.$d[f](m),g.init(),this.$d=g.set(p,Math.min(this.$D,g.daysInMonth())).$d}else f&&this.$d[f](m);return this.init(),this},h.set=function(e,t){return this.clone().$set(e,t)},h.get=function(e){return this[D.p(e)]()},h.add=function(n,u){var p,f=this;n=Number(n);var m=D.p(u),g=function(e){var t=S(f);return D.w(t.date(t.date()+Math.round(e*n)),f)};if(m===l)return this.set(l,this.$M+n);if(m===d)return this.set(d,this.$y+n);if(m===s)return g(1);if(m===c)return g(7);var _=(p={},p[a]=t,p[o]=r,p[i]=e,p)[m]||1,h=this.$d.getTime()+n*_;return D.w(h,this)},h.subtract=function(e,t){return this.add(-1*e,t)},h.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return r.invalidDate||f;var n=e||"YYYY-MM-DDTHH:mm:ssZ",i=D.z(this),a=this.$H,o=this.$m,s=this.$M,c=r.weekdays,l=r.months,u=r.meridiem,d=function(e,r,i,a){return e&&(e[r]||e(t,n))||i[r].slice(0,a)},p=function(e){return D.s(a%12||12,e,"0")},m=u||function(e,t,r){var n=e<12?"AM":"PM";return r?n.toLowerCase():n};return n.replace(g,(function(e,n){return n||function(e){switch(e){case"YY":return String(t.$y).slice(-2);case"YYYY":return D.s(t.$y,4,"0");case"M":return s+1;case"MM":return D.s(s+1,2,"0");case"MMM":return d(r.monthsShort,s,l,3);case"MMMM":return d(l,s);case"D":return t.$D;case"DD":return D.s(t.$D,2,"0");case"d":return String(t.$W);case"dd":return d(r.weekdaysMin,t.$W,c,2);case"ddd":return d(r.weekdaysShort,t.$W,c,3);case"dddd":return c[t.$W];case"H":return String(a);case"HH":return D.s(a,2,"0");case"h":return p(1);case"hh":return p(2);case"a":return m(a,o,!0);case"A":return m(a,o,!1);case"m":return String(o);case"mm":return D.s(o,2,"0");case"s":return String(t.$s);case"ss":return D.s(t.$s,2,"0");case"SSS":return D.s(t.$ms,3,"0");case"Z":return i}return null}(e)||i.replace(":","")}))},h.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},h.diff=function(n,p,f){var m,g=this,_=D.p(p),h=S(n),y=(h.utcOffset()-this.utcOffset())*t,v=this-h,b=function(){return D.m(g,h)};switch(_){case d:m=b()/12;break;case l:m=b();break;case u:m=b()/3;break;case c:m=(v-y)/6048e5;break;case s:m=(v-y)/864e5;break;case o:m=v/r;break;case a:m=v/t;break;case i:m=v/e;break;default:m=v}return f?m:D.a(m)},h.daysInMonth=function(){return this.endOf(l).$D},h.$locale=function(){return b[this.$L]},h.locale=function(e,t){if(!e)return this.$L;var r=this.clone(),n=E(e,t,!0);return n&&(r.$L=n),r},h.clone=function(){return D.w(this.$d,this)},h.toDate=function(){return new Date(this.valueOf())},h.toJSON=function(){return this.isValid()?this.toISOString():null},h.toISOString=function(){return this.$d.toISOString()},h.toString=function(){return this.$d.toUTCString()},_}(),T=w.prototype;return S.prototype=T,[["$ms",n],["$s",i],["$m",a],["$H",o],["$W",s],["$M",l],["$y",d],["$D",p]].forEach((function(e){T[e[1]]=function(t){return this.$g(t,e[0],e[1])}})),S.extend=function(e,t){return e.$i||(e(t,w,S),e.$i=!0),S},S.locale=E,S.isDayjs=x,S.unix=function(e){return S(1e3*e)},S.en=b[v],S.Ls=b,S.p={},S}()},10285:function(e){e.exports=function(){"use strict";var e={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,r=/\d\d/,n=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,a={},o=function(e){return(e=+e)+(e>68?1900:2e3)},s=function(e){return function(t){this[e]=+t}},c=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var t=e.match(/([+-]|\d\d)/g),r=60*t[1]+(+t[2]||0);return 0===r?0:"+"===t[0]?-r:r}(e)}],l=function(e){var t=a[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var r,n=a.meridiem;if(n){for(var i=1;i<=24;i+=1)if(e.indexOf(n(i,0,t))>-1){r=i>12;break}}else r=e===(t?"pm":"PM");return r},d={A:[i,function(e){this.afternoon=u(e,!1)}],a:[i,function(e){this.afternoon=u(e,!0)}],S:[/\d/,function(e){this.milliseconds=100*+e}],SS:[r,function(e){this.milliseconds=10*+e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[n,s("seconds")],ss:[n,s("seconds")],m:[n,s("minutes")],mm:[n,s("minutes")],H:[n,s("hours")],h:[n,s("hours")],HH:[n,s("hours")],hh:[n,s("hours")],D:[n,s("day")],DD:[r,s("day")],Do:[i,function(e){var t=a.ordinal,r=e.match(/\d+/);if(this.day=r[0],t)for(var n=1;n<=31;n+=1)t(n).replace(/\[|\]/g,"")===e&&(this.day=n)}],M:[n,s("month")],MM:[r,s("month")],MMM:[i,function(e){var t=l("months"),r=(l("monthsShort")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(r<1)throw new Error;this.month=r%12||r}],MMMM:[i,function(e){var t=l("months").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t}],Y:[/[+-]?\d+/,s("year")],YY:[r,function(e){this.year=o(e)}],YYYY:[/\d{4}/,s("year")],Z:c,ZZ:c};function p(r){var n,i;n=r,i=a&&a.formats;for(var o=(r=n.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,r,n){var a=n&&n.toUpperCase();return r||i[n]||e[n]||i[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,r){return t||r.slice(1)}))}))).match(t),s=o.length,c=0;c<s;c+=1){var l=o[c],u=d[l],p=u&&u[0],f=u&&u[1];o[c]=f?{regex:p,parser:f}:l.replace(/^\[|\]$/g,"")}return function(e){for(var t={},r=0,n=0;r<s;r+=1){var i=o[r];if("string"==typeof i)n+=i.length;else{var a=i.regex,c=i.parser,l=e.slice(n),u=a.exec(l)[0];c.call(t,u),e=e.replace(u,"")}}return function(e){var t=e.afternoon;if(void 0!==t){var r=e.hours;t?r<12&&(e.hours+=12):12===r&&(e.hours=0),delete e.afternoon}}(t),t}}return function(e,t,r){r.p.customParseFormat=!0,e&&e.parseTwoDigitYear&&(o=e.parseTwoDigitYear);var n=t.prototype,i=n.parse;n.parse=function(e){var t=e.date,n=e.utc,o=e.args;this.$u=n;var s=o[1];if("string"==typeof s){var c=!0===o[2],l=!0===o[3],u=c||l,d=o[2];l&&(d=o[2]),a=this.$locale(),!c&&d&&(a=r.Ls[d]),this.$d=function(e,t,r){try{if(["x","X"].indexOf(t)>-1)return new Date(("X"===t?1e3:1)*e);var n=p(t)(e),i=n.year,a=n.month,o=n.day,s=n.hours,c=n.minutes,l=n.seconds,u=n.milliseconds,d=n.zone,f=new Date,m=o||(i||a?1:f.getDate()),g=i||f.getFullYear(),_=0;i&&!a||(_=a>0?a-1:f.getMonth());var h=s||0,y=c||0,v=l||0,b=u||0;return d?new Date(Date.UTC(g,_,m,h,y,v,b+60*d.offset*1e3)):r?new Date(Date.UTC(g,_,m,h,y,v,b)):new Date(g,_,m,h,y,v,b)}catch(e){return new Date("")}}(t,s,n),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(s)&&(this.$d=new Date("")),a={}}else if(s instanceof Array)for(var f=s.length,m=1;m<=f;m+=1){o[1]=s[m-1];var g=r.apply(this,o);if(g.isValid()){this.$d=g.$d,this.$L=g.$L,this.init();break}m===f&&(this.$d=new Date(""))}else i.call(this,e)}}}()},70178:function(e){e.exports=function(){"use strict";var e="minute",t=/[+-]\d\d(?::?\d\d)?/g,r=/([+-]|\d\d)/g;return function(n,i,a){var o=i.prototype;a.utc=function(e){return new i({date:e,utc:!0,args:arguments})},o.utc=function(t){var r=a(this.toDate(),{locale:this.$L,utc:!0});return t?r.add(this.utcOffset(),e):r},o.local=function(){return a(this.toDate(),{locale:this.$L,utc:!1})};var s=o.parse;o.parse=function(e){e.utc&&(this.$u=!0),this.$utils().u(e.$offset)||(this.$offset=e.$offset),s.call(this,e)};var c=o.init;o.init=function(){if(this.$u){var e=this.$d;this.$y=e.getUTCFullYear(),this.$M=e.getUTCMonth(),this.$D=e.getUTCDate(),this.$W=e.getUTCDay(),this.$H=e.getUTCHours(),this.$m=e.getUTCMinutes(),this.$s=e.getUTCSeconds(),this.$ms=e.getUTCMilliseconds()}else c.call(this)};var l=o.utcOffset;o.utcOffset=function(n,i){var a=this.$utils().u;if(a(n))return this.$u?0:a(this.$offset)?l.call(this):this.$offset;if("string"==typeof n&&(n=function(e){void 0===e&&(e="");var n=e.match(t);if(!n)return null;var i=(""+n[0]).match(r)||["-",0,0],a=i[0],o=60*+i[1]+ +i[2];return 0===o?0:"+"===a?o:-o}(n),null===n))return this;var o=Math.abs(n)<=16?60*n:n,s=this;if(i)return s.$offset=o,s.$u=0===n,s;if(0!==n){var c=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(s=this.local().add(o+c,e)).$offset=o,s.$x.$localOffset=c}else s=this.utc();return s};var u=o.format;o.format=function(e){var t=e||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return u.call(this,t)},o.valueOf=function(){var e=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*e},o.isUTC=function(){return!!this.$u},o.toISOString=function(){return this.toDate().toISOString()},o.toString=function(){return this.toDate().toUTCString()};var d=o.toDate;o.toDate=function(e){return"s"===e&&this.$offset?a(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():d.call(this)};var p=o.diff;o.diff=function(e,t,r){if(e&&this.$u===e.$u)return p.call(this,e,t,r);var n=this.local(),i=a(e).local();return p.call(n,i,t,r)}}}()},94422:(e,t,r)=>{"use strict";var n=r(23107);function i(e,t,r){void 0===r&&(r=t,t=e,e=null),n.Duplex.call(this,e),"function"!=typeof r.read&&(r=new n.Readable(e).wrap(r)),this._writable=t,this._readable=r,this._waiting=!1;var i=this;t.once("finish",(function(){i.end()})),this.once("finish",(function(){t.end()})),r.on("readable",(function(){i._waiting&&(i._waiting=!1,i._read())})),r.once("end",(function(){i.push(null)})),e&&void 0!==e.bubbleErrors&&!e.bubbleErrors||(t.on("error",(function(e){i.emit("error",e)})),r.on("error",(function(e){i.emit("error",e)})))}i.prototype=Object.create(n.Duplex.prototype,{constructor:{value:i}}),i.prototype._write=function(e,t,r){this._writable.write(e,t,r)},i.prototype._read=function(){for(var e,t=0;null!==(e=this._readable.read());)this.push(e),t++;0===t&&(this._waiting=!0)},e.exports=function(e,t,r){return new i(e,t,r)},e.exports.DuplexWrapper=i},89496:(e,t,r)=>{"use strict";var n=r(88212),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(16497));a.inherits=r(94378);var o=r(63782),s=r(41690);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},64480:(e,t,r)=>{"use strict";e.exports=a;var n=r(85767),i=Object.create(r(16497));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(94378),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},63782:(e,t,r)=>{"use strict";var n=r(88212);e.exports=y;var i,a=r(5826);y.ReadableState=h;r(82361).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(35823),c=r(89509).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(16497));u.inherits=r(94378);var d=r(73837),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(30072),g=r(35974);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(89496));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(32553).s),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(89496),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,E(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&E(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(32553).s),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(w,e,t))}function w(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):E(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&E(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},85767:(e,t,r)=>{"use strict";e.exports=o;var n=r(89496),i=Object.create(r(16497));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(94378),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},41690:(e,t,r)=>{"use strict";var n=r(88212);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(16497));s.inherits=r(94378);var c={deprecate:r(41159)},l=r(35823),u=r(89509).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(35974);function m(){}function g(e,t){a=a||r(89496),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(89496),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},30072:(e,t,r)=>{"use strict";var n=r(89509).Buffer,i=r(73837);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},35974:(e,t,r)=>{"use strict";var n=r(88212);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},35823:(e,t,r)=>{e.exports=r(12781)},23107:(e,t,r)=>{var n=r(12781);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(63782)).Stream=n||t,t.Readable=t,t.Writable=r(41690),t.Duplex=r(89496),t.Transform=r(85767),t.PassThrough=r(64480))},12840:(e,t,r)=>{var n=r(30778),i=function(){},a=function(e,t,r){if("function"==typeof t)return a(e,null,t);t||(t={}),r=n(r||i);var o=e._writableState,s=e._readableState,c=t.readable||!1!==t.readable&&e.readable,l=t.writable||!1!==t.writable&&e.writable,u=!1,d=function(){e.writable||p()},p=function(){l=!1,c||r.call(e)},f=function(){c=!1,l||r.call(e)},m=function(t){r.call(e,t?new Error("exited with error code: "+t):null)},g=function(t){r.call(e,t)},_=function(){process.nextTick(h)},h=function(){if(!u)return(!c||s&&s.ended&&!s.destroyed)&&(!l||o&&o.ended&&!o.destroyed)?void 0:r.call(e,new Error("premature close"))},y=function(){e.req.on("finish",p)};return!function(e){return e.setHeader&&"function"==typeof e.abort}(e)?l&&!o&&(e.on("end",d),e.on("close",d)):(e.on("complete",p),e.on("abort",_),e.req?y():e.on("request",y)),function(e){return e.stdio&&Array.isArray(e.stdio)&&3===e.stdio.length}(e)&&e.on("exit",m),e.on("end",f),e.on("finish",p),!1!==t.error&&e.on("error",g),e.on("close",_),function(){u=!0,e.removeListener("complete",p),e.removeListener("abort",_),e.removeListener("request",y),e.req&&e.req.removeListener("finish",p),e.removeListener("end",d),e.removeListener("close",d),e.removeListener("finish",p),e.removeListener("exit",m),e.removeListener("end",f),e.removeListener("error",g),e.removeListener("close",_)}};e.exports=a},35244:(e,t,r)=>{if(parseInt(process.versions.node.split(".")[0],10)<10)throw new Error("For node versions older than 10, please use the ES5 Import: https://github.com/exceljs/exceljs#es5-imports");e.exports=r(89668)},6305:(e,t,r)=>{const n=r(57147),i=r(77283),a=r(10285),o=r(70178),s=r(27484).extend(a).extend(o),c=r(25168),{fs:{exists:l}}=r(86144),u={true:!0,false:!1,"#N/A":{error:"#N/A"},"#REF!":{error:"#REF!"},"#NAME?":{error:"#NAME?"},"#DIV/0!":{error:"#DIV/0!"},"#NULL!":{error:"#NULL!"},"#VALUE!":{error:"#VALUE!"},"#NUM!":{error:"#NUM!"}};e.exports=class{constructor(e){this.workbook=e,this.worksheet=null}async readFile(e,t){if(t=t||{},!await l(e))throw new Error(`File not found: ${e}`);const r=n.createReadStream(e),i=await this.read(r,t);return r.close(),i}read(e,t){return t=t||{},new Promise(((r,n)=>{const a=this.workbook.addWorksheet(t.sheetName),o=t.dateFormats||["YYYY-MM-DD[T]HH:mm:ssZ","YYYY-MM-DD[T]HH:mm:ss","MM-DD-YYYY","YYYY-MM-DD"],c=t.map||function(e){if(""===e)return null;const t=Number(e);if(!Number.isNaN(t)&&t!==1/0)return t;const r=o.reduce(((t,r)=>{if(t)return t;const n=s(e,r,!0);return n.isValid()?n:null}),null);if(r)return new Date(r.valueOf());const n=u[e];return void 0!==n?n:e},l=i.parse(t.parserOptions).on("data",(e=>{a.addRow(e.map(c))})).on("end",(()=>{l.emit("worksheet",a)}));l.on("worksheet",r).on("error",n),e.pipe(l)}))}createInputStream(){throw new Error("`CSV#createInputStream` is deprecated. You should use `CSV#read` instead. This method will be removed in version 5.0. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md")}write(e,t){return new Promise(((r,n)=>{t=t||{};const a=this.workbook.getWorksheet(t.sheetName||t.sheetId),o=i.format(t.formatterOptions);e.on("finish",(()=>{r()})),o.on("error",n),o.pipe(e);const{dateFormat:c,dateUTC:l}=t,u=t.map||(e=>{if(e){if(e.text||e.hyperlink)return e.hyperlink||e.text||"";if(e.formula||e.result)return e.result||"";if(e instanceof Date)return c?l?s.utc(e).format(c):s(e).format(c):l?s.utc(e).format():s(e).format();if(e.error)return e.error;if("object"==typeof e)return JSON.stringify(e)}return e}),d=void 0===t.includeEmptyRows||t.includeEmptyRows;let p=1;a&&a.eachRow(((e,t)=>{if(d)for(;p++<t-1;)o.write([]);const{values:r}=e;r.shift(),o.write(r.map(u)),p=t})),o.end()}))}writeFile(e,t){const r={encoding:(t=t||{}).encoding||"utf8"},i=n.createWriteStream(e,r);return this.write(i,t)}async writeBuffer(e){const t=new c;return await this.write(t,e),t.read()}}},75334:(e,t,r)=>{"use strict";const n=r(48376);class i{constructor(e,t,r=0){if(t)if("string"==typeof t){const e=n.decodeAddress(t);this.nativeCol=e.col+r,this.nativeColOff=0,this.nativeRow=e.row+r,this.nativeRowOff=0}else void 0!==t.nativeCol?(this.nativeCol=t.nativeCol||0,this.nativeColOff=t.nativeColOff||0,this.nativeRow=t.nativeRow||0,this.nativeRowOff=t.nativeRowOff||0):void 0!==t.col?(this.col=t.col+r,this.row=t.row+r):(this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0);else this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0;this.worksheet=e}static asInstance(e){return e instanceof i||null==e?e:new i(e)}get col(){return this.nativeCol+Math.min(this.colWidth-1,this.nativeColOff)/this.colWidth}set col(e){this.nativeCol=Math.floor(e),this.nativeColOff=Math.floor((e-this.nativeCol)*this.colWidth)}get row(){return this.nativeRow+Math.min(this.rowHeight-1,this.nativeRowOff)/this.rowHeight}set row(e){this.nativeRow=Math.floor(e),this.nativeRowOff=Math.floor((e-this.nativeRow)*this.rowHeight)}get colWidth(){return this.worksheet&&this.worksheet.getColumn(this.nativeCol+1)&&this.worksheet.getColumn(this.nativeCol+1).isCustomWidth?Math.floor(1e4*this.worksheet.getColumn(this.nativeCol+1).width):64e4}get rowHeight(){return this.worksheet&&this.worksheet.getRow(this.nativeRow+1)&&this.worksheet.getRow(this.nativeRow+1).height?Math.floor(1e4*this.worksheet.getRow(this.nativeRow+1).height):18e4}get model(){return{nativeCol:this.nativeCol,nativeColOff:this.nativeColOff,nativeRow:this.nativeRow,nativeRowOff:this.nativeRowOff}}set model(e){this.nativeCol=e.nativeCol,this.nativeColOff=e.nativeColOff,this.nativeRow=e.nativeRow,this.nativeRowOff=e.nativeRowOff}}e.exports=i},11573:(e,t,r)=>{const n=r(48376),i=r(15797),a=r(79931),{slideFormula:o}=r(97426),s=r(65993);class c{constructor(e,t,r){if(!e||!t)throw new Error("A Cell needs a Row");this._row=e,this._column=t,n.validateAddress(r),this._address=r,this._value=l.create(c.Types.Null,this),this.style=this._mergeStyle(e.style,t.style,{}),this._mergeCount=0}get worksheet(){return this._row.worksheet}get workbook(){return this._row.worksheet.workbook}destroy(){delete this.style,delete this._value,delete this._row,delete this._column,delete this._address}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e}get font(){return this.style.font}set font(e){this.style.font=e}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e}get border(){return this.style.border}set border(e){this.style.border=e}get fill(){return this.style.fill}set fill(e){this.style.fill=e}get protection(){return this.style.protection}set protection(e){this.style.protection=e}_mergeStyle(e,t,r){const n=e&&e.numFmt||t&&t.numFmt;n&&(r.numFmt=n);const i=e&&e.font||t&&t.font;i&&(r.font=i);const a=e&&e.alignment||t&&t.alignment;a&&(r.alignment=a);const o=e&&e.border||t&&t.border;o&&(r.border=o);const s=e&&e.fill||t&&t.fill;s&&(r.fill=s);const c=e&&e.protection||t&&t.protection;return c&&(r.protection=c),r}get address(){return this._address}get row(){return this._row.number}get col(){return this._column.number}get $col$row(){return`$${this._column.letter}$${this.row}`}get type(){return this._value.type}get effectiveType(){return this._value.effectiveType}toCsvString(){return this._value.toCsvString()}addMergeRef(){this._mergeCount++}releaseMergeRef(){this._mergeCount--}get isMerged(){return this._mergeCount>0||this.type===c.Types.Merge}merge(e,t){this._value.release(),this._value=l.create(c.Types.Merge,this,e),t||(this.style=e.style)}unmerge(){this.type===c.Types.Merge&&(this._value.release(),this._value=l.create(c.Types.Null,this),this.style=this._mergeStyle(this._row.style,this._column.style,{}))}isMergedTo(e){return this._value.type===c.Types.Merge&&this._value.isMergedTo(e)}get master(){return this.type===c.Types.Merge?this._value.master:this}get isHyperlink(){return this._value.type===c.Types.Hyperlink}get hyperlink(){return this._value.hyperlink}get value(){return this._value.value}set value(e){this.type!==c.Types.Merge?(this._value.release(),this._value=l.create(l.getType(e),this,e)):this._value.master.value=e}get note(){return this._comment&&this._comment.note}set note(e){this._comment=new s(e)}get text(){return this._value.toString()}get html(){return i.escapeHtml(this.text)}toString(){return this.text}_upgradeToHyperlink(e){this.type===c.Types.String&&(this._value=l.create(c.Types.Hyperlink,this,{text:this._value.value,hyperlink:e}))}get formula(){return this._value.formula}get result(){return this._value.result}get formulaType(){return this._value.formulaType}get fullAddress(){const{worksheet:e}=this._row;return{sheetName:e.name,address:this.address,row:this.row,col:this.col}}get name(){return this.names[0]}set name(e){this.names=[e]}get names(){return this.workbook.definedNames.getNamesEx(this.fullAddress)}set names(e){const{definedNames:t}=this.workbook;t.removeAllNames(this.fullAddress),e.forEach((e=>{t.addEx(this.fullAddress,e)}))}addName(e){this.workbook.definedNames.addEx(this.fullAddress,e)}removeName(e){this.workbook.definedNames.removeEx(this.fullAddress,e)}removeAllNames(){this.workbook.definedNames.removeAllNames(this.fullAddress)}get _dataValidations(){return this.worksheet.dataValidations}get dataValidation(){return this._dataValidations.find(this.address)}set dataValidation(e){this._dataValidations.add(this.address,e)}get model(){const{model:e}=this._value;return e.style=this.style,this._comment&&(e.comment=this._comment.model),e}set model(e){if(this._value.release(),this._value=l.create(e.type,this),this._value.model=e,e.comment&&"note"===e.comment.type)this._comment=s.fromModel(e.comment);e.style?this.style=e.style:this.style={}}}c.Types=a.ValueType;const l={getType:e=>null==e?c.Types.Null:e instanceof String||"string"==typeof e?c.Types.String:"number"==typeof e?c.Types.Number:"boolean"==typeof e?c.Types.Boolean:e instanceof Date?c.Types.Date:e.text&&e.hyperlink?c.Types.Hyperlink:e.formula||e.sharedFormula?c.Types.Formula:e.richText?c.Types.RichText:e.sharedString?c.Types.SharedString:e.error?c.Types.Error:c.Types.JSON,types:[{t:c.Types.Null,f:class{constructor(e){this.model={address:e.address,type:c.Types.Null}}get value(){return null}set value(e){}get type(){return c.Types.Null}get effectiveType(){return c.Types.Null}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return""}release(){}toString(){return""}}},{t:c.Types.Number,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Number,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Number}get effectiveType(){return c.Types.Number}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.String,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.String}get effectiveType(){return c.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return`"${this.model.value.replace(/"/g,'""')}"`}release(){}toString(){return this.model.value}}},{t:c.Types.Date,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Date,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Date}get effectiveType(){return c.Types.Date}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toISOString()}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.Hyperlink,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Hyperlink,text:t?t.text:void 0,hyperlink:t?t.hyperlink:void 0},t&&t.tooltip&&(this.model.tooltip=t.tooltip)}get value(){const e={text:this.model.text,hyperlink:this.model.hyperlink};return this.model.tooltip&&(e.tooltip=this.model.tooltip),e}set value(e){this.model={text:e.text,hyperlink:e.hyperlink},e.tooltip&&(this.model.tooltip=e.tooltip)}get text(){return this.model.text}set text(e){this.model.text=e}get hyperlink(){return this.model.hyperlink}set hyperlink(e){this.model.hyperlink=e}get type(){return c.Types.Hyperlink}get effectiveType(){return c.Types.Hyperlink}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.hyperlink}release(){}toString(){return this.model.text}}},{t:c.Types.Formula,f:class{constructor(e,t){this.cell=e,this.model={address:e.address,type:c.Types.Formula,shareType:t?t.shareType:void 0,ref:t?t.ref:void 0,formula:t?t.formula:void 0,sharedFormula:t?t.sharedFormula:void 0,result:t?t.result:void 0}}_copyModel(e){const t={},r=r=>{const n=e[r];n&&(t[r]=n)};return r("formula"),r("result"),r("ref"),r("shareType"),r("sharedFormula"),t}get value(){return this._copyModel(this.model)}set value(e){this.model=this._copyModel(e)}validate(e){switch(l.getType(e)){case c.Types.Null:case c.Types.String:case c.Types.Number:case c.Types.Date:break;case c.Types.Hyperlink:case c.Types.Formula:default:throw new Error("Cannot process that type of result value")}}get dependencies(){return{ranges:this.formula.match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g),cells:this.formula.replace(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g,"").match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}/g)}}get formula(){return this.model.formula||this._getTranslatedFormula()}set formula(e){this.model.formula=e}get formulaType(){return this.model.formula?a.FormulaType.Master:this.model.sharedFormula?a.FormulaType.Shared:a.FormulaType.None}get result(){return this.model.result}set result(e){this.model.result=e}get type(){return c.Types.Formula}get effectiveType(){const e=this.model.result;return null==e?a.ValueType.Null:e instanceof String||"string"==typeof e?a.ValueType.String:"number"==typeof e?a.ValueType.Number:e instanceof Date?a.ValueType.Date:e.text&&e.hyperlink?a.ValueType.Hyperlink:e.formula?a.ValueType.Formula:a.ValueType.Null}get address(){return this.model.address}set address(e){this.model.address=e}_getTranslatedFormula(){if(!this._translatedFormula&&this.model.sharedFormula){const{worksheet:e}=this.cell,t=e.findCell(this.model.sharedFormula);this._translatedFormula=t&&o(t.formula,t.address,this.model.address)}return this._translatedFormula}toCsvString(){return`${this.model.result||""}`}release(){}toString(){return this.model.result?this.model.result.toString():""}}},{t:c.Types.Merge,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Merge,master:t?t.address:void 0},this._master=t,t&&t.addMergeRef()}get value(){return this._master.value}set value(e){e instanceof c?(this._master&&this._master.releaseMergeRef(),e.addMergeRef(),this._master=e):this._master.value=e}isMergedTo(e){return e===this._master}get master(){return this._master}get type(){return c.Types.Merge}get effectiveType(){return this._master.effectiveType}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return""}release(){this._master.releaseMergeRef()}toString(){return this.value.toString()}}},{t:c.Types.JSON,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.String,value:JSON.stringify(t),rawValue:t}}get value(){return this.model.rawValue}set value(e){this.model.rawValue=e,this.model.value=JSON.stringify(e)}get type(){return c.Types.String}get effectiveType(){return c.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value}release(){}toString(){return this.model.value}}},{t:c.Types.SharedString,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.SharedString,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.SharedString}get effectiveType(){return c.Types.SharedString}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.RichText,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}toString(){return this.model.value.richText.map((e=>e.text)).join("")}get type(){return c.Types.RichText}get effectiveType(){return c.Types.RichText}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return`"${this.text.replace(/"/g,'""')}"`}release(){}}},{t:c.Types.Boolean,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Boolean,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Boolean}get effectiveType(){return c.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value?1:0}release(){}toString(){return this.model.value.toString()}}},{t:c.Types.Error,f:class{constructor(e,t){this.model={address:e.address,type:c.Types.Error,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return c.Types.Error}get effectiveType(){return c.Types.Error}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.toString()}release(){}toString(){return this.model.value.error.toString()}}}].reduce(((e,t)=>(e[t.t]=t.f,e)),[]),create(e,t,r){const n=this.types[e];if(!n)throw new Error(`Could not create Value of type ${e}`);return new n(t,r)}};e.exports=c},14538:(e,t,r)=>{"use strict";const n=r(15797),i=r(79931),a=r(48376);class o{constructor(e,t,r){this._worksheet=e,this._number=t,!1!==r&&(this.defn=r)}get number(){return this._number}get worksheet(){return this._worksheet}get letter(){return a.n2l(this._number)}get isCustomWidth(){return void 0!==this.width&&9!==this.width}get defn(){return{header:this._header,key:this.key,width:this.width,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel}}set defn(e){e?(this.key=e.key,this.width=void 0!==e.width?e.width:9,this.outlineLevel=e.outlineLevel,e.style?this.style=e.style:this.style={},this.header=e.header,this._hidden=!!e.hidden):(delete this._header,delete this._key,delete this.width,this.style={},this.outlineLevel=0)}get headers(){return this._header&&this._header instanceof Array?this._header:[this._header]}get header(){return this._header}set header(e){void 0!==e?(this._header=e,this.headers.forEach(((e,t)=>{this._worksheet.getCell(t+1,this.number).value=e}))):this._header=void 0}get key(){return this._key}set key(e){(this._key&&this._worksheet.getColumnKey(this._key))===this&&this._worksheet.deleteColumnKey(this._key),this._key=e,e&&this._worksheet.setColumnKey(this._key,this)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel||0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=this._worksheet.properties.outlineLevelCol)}toString(){return JSON.stringify({key:this.key,width:this.width,headers:this.headers.length?this.headers:void 0})}equivalentTo(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&n.isEqual(this.style,e.style)}get isDefault(){if(this.isCustomWidth)return!1;if(this.hidden)return!1;if(this.outlineLevel)return!1;const e=this.style;return!e||!(e.font||e.numFmt||e.alignment||e.border||e.fill||e.protection)}get headerCount(){return this.headers.length}eachCell(e,t){const r=this.number;t||(t=e,e=null),this._worksheet.eachRow(e,((e,n)=>{t(e.getCell(r),n)}))}get values(){const e=[];return this.eachCell(((t,r)=>{t&&t.type!==i.ValueType.Null&&(e[r]=t.value)})),e}set values(e){if(!e)return;const t=this.number;let r=0;e.hasOwnProperty("0")&&(r=1),e.forEach(((e,n)=>{this._worksheet.getCell(n+r,t).value=e}))}_applyStyle(e,t){return this.style[e]=t,this.eachCell((r=>{r[e]=t})),t}get numFmt(){return this.style.numFmt}set numFmt(e){this._applyStyle("numFmt",e)}get font(){return this.style.font}set font(e){this._applyStyle("font",e)}get alignment(){return this.style.alignment}set alignment(e){this._applyStyle("alignment",e)}get protection(){return this.style.protection}set protection(e){this._applyStyle("protection",e)}get border(){return this.style.border}set border(e){this._applyStyle("border",e)}get fill(){return this.style.fill}set fill(e){this._applyStyle("fill",e)}static toModel(e){const t=[];let r=null;return e&&e.forEach(((e,n)=>{e.isDefault?r&&(r=null):r&&e.equivalentTo(r)?r.max=n+1:(r={min:n+1,max:n+1,width:void 0!==e.width?e.width:9,style:e.style,isCustomWidth:e.isCustomWidth,hidden:e.hidden,outlineLevel:e.outlineLevel,collapsed:e.collapsed},t.push(r))})),t.length?t:void 0}static fromModel(e,t){t=t||[];const r=[];let n=1,i=0;for(;i<t.length;){const a=t[i++];for(;n<a.min;)r.push(new o(e,n++));for(;n<=a.max;)r.push(new o(e,n++,a))}return r.length?r:null}}e.exports=o},8881:e=>{e.exports=class{constructor(e){this.model=e||{}}add(e,t){return this.model[e]=t}find(e){return this.model[e]}remove(e){this.model[e]=void 0}}},16938:(e,t,r)=>{"use strict";const n=r(15797),i=r(48376),a=r(73519),o=r(47765),s=/[$](\w+)[$](\d+)(:[$](\w+)[$](\d+))?/;e.exports=class{constructor(){this.matrixMap={}}getMatrix(e){return this.matrixMap[e]||(this.matrixMap[e]=new a)}add(e,t){const r=i.decodeEx(e);this.addEx(r,t)}addEx(e,t){const r=this.getMatrix(t);if(e.top)for(let t=e.left;t<=e.right;t++)for(let n=e.top;n<=e.bottom;n++){const a={sheetName:e.sheetName,address:i.n2l(t)+n,row:n,col:t};r.addCellEx(a)}else r.addCellEx(e)}remove(e,t){const r=i.decodeEx(e);this.removeEx(r,t)}removeEx(e,t){this.getMatrix(t).removeCellEx(e)}removeAllNames(e){n.each(this.matrixMap,(t=>{t.removeCellEx(e)}))}forEach(e){n.each(this.matrixMap,((t,r)=>{t.forEach((t=>{e(r,t)}))}))}getNames(e){return this.getNamesEx(i.decodeEx(e))}getNamesEx(e){return n.map(this.matrixMap,((t,r)=>t.findCellEx(e)&&r)).filter(Boolean)}_explore(e,t){t.mark=!1;const{sheetName:r}=t,n=new o(t.row,t.col,t.row,t.col,r);let i,a;function s(i,a){const o=e.findCellAt(r,i,t.col);return!(!o||!o.mark)&&(n[a]=i,o.mark=!1,!0)}for(a=t.row-1;s(a,"top");a--);for(a=t.row+1;s(a,"bottom");a++);function c(t,i){const o=[];for(a=n.top;a<=n.bottom;a++){const n=e.findCellAt(r,a,t);if(!n||!n.mark)return!1;o.push(n)}n[i]=t;for(let e=0;e<o.length;e++)o[e].mark=!1;return!0}for(i=t.col-1;c(i,"left");i--);for(i=t.col+1;c(i,"right");i++);return n}getRanges(e,t){if(!(t=t||this.matrixMap[e]))return{name:e,ranges:[]};t.forEach((e=>{e.mark=!0}));return{name:e,ranges:t.map((e=>e.mark&&this._explore(t,e))).filter(Boolean).map((e=>e.$shortRange))}}normaliseMatrix(e,t){e.forEachInSheet(t,((e,t,r)=>{e&&(e.row===t&&e.col===r||(e.row=t,e.col=r,e.address=i.n2l(r)+t))}))}spliceRows(e,t,r,i){n.each(this.matrixMap,(n=>{n.spliceRows(e,t,r,i),this.normaliseMatrix(n,e)}))}spliceColumns(e,t,r,i){n.each(this.matrixMap,(n=>{n.spliceColumns(e,t,r,i),this.normaliseMatrix(n,e)}))}get model(){return n.map(this.matrixMap,((e,t)=>this.getRanges(t,e))).filter((e=>e.ranges.length))}set model(e){const t=this.matrixMap={};e.forEach((e=>{const r=t[e.name]=new a;e.ranges.forEach((e=>{s.test(e.split("!").pop()||"")&&r.addCell(e)}))}))}}},79931:e=>{"use strict";e.exports={ValueType:{Null:0,Merge:1,Number:2,String:3,Date:4,Hyperlink:5,Formula:6,SharedString:7,RichText:8,Boolean:9,Error:10},FormulaType:{None:0,Master:1,Shared:2},RelationshipType:{None:0,OfficeDocument:1,Worksheet:2,CalcChain:3,SharedStrings:4,Styles:5,Theme:6,Hyperlink:7},DocumentType:{Xlsx:1},ReadingOrder:{LeftToRight:1,RightToLeft:2},ErrorValue:{NotApplicable:"#N/A",Ref:"#REF!",Name:"#NAME?",DivZero:"#DIV/0!",Null:"#NULL!",Value:"#VALUE!",Num:"#NUM!"}}},60487:(e,t,r)=>{const n=r(48376),i=r(75334);e.exports=class{constructor(e,t){this.worksheet=e,this.model=t}get model(){switch(this.type){case"background":return{type:this.type,imageId:this.imageId};case"image":return{type:this.type,imageId:this.imageId,hyperlinks:this.range.hyperlinks,range:{tl:this.range.tl.model,br:this.range.br&&this.range.br.model,ext:this.range.ext,editAs:this.range.editAs}};default:throw new Error("Invalid Image Type")}}set model({type:e,imageId:t,range:r,hyperlinks:a}){if(this.type=e,this.imageId=t,"image"===e)if("string"==typeof r){const e=n.decode(r);this.range={tl:new i(this.worksheet,{col:e.left,row:e.top},-1),br:new i(this.worksheet,{col:e.right,row:e.bottom},0),editAs:"oneCell"}}else this.range={tl:new i(this.worksheet,r.tl,0),br:r.br&&new i(this.worksheet,r.br,0),ext:r.ext,editAs:r.editAs,hyperlinks:a||r.hyperlinks}}}},91914:(e,t,r)=>{"use strict";const n=r(92208);e.exports=class{constructor(e){this.model=e}get xlsx(){return this._xlsx||(this._xlsx=new n(this)),this._xlsx}}},65993:(e,t,r)=>{const n=r(15797);class i{constructor(e){this.note=e}get model(){let e=null;if("string"==typeof this.note)e={type:"note",note:{texts:[{text:this.note}]}};else e={type:"note",note:this.note};return n.deepMerge({},i.DEFAULT_CONFIGS,e)}set model(e){const{note:t}=e,{texts:r}=t;1===r.length&&1===Object.keys(r[0]).length?this.note=r[0].text:this.note=t}static fromModel(e){const t=new i;return t.model=e,t}}i.DEFAULT_CONFIGS={note:{margins:{insetmode:"auto",inset:[.13,.13,.25,.25]},protection:{locked:"True",lockText:"True"},editAs:"absolute"}},e.exports=i},47765:(e,t,r)=>{const n=r(48376);class i{constructor(){this.decode(arguments)}setTLBR(e,t,r,i,a){if(arguments.length<4){const i=n.decodeAddress(e),o=n.decodeAddress(t);this.model={top:Math.min(i.row,o.row),left:Math.min(i.col,o.col),bottom:Math.max(i.row,o.row),right:Math.max(i.col,o.col),sheetName:r},this.setTLBR(i.row,i.col,o.row,o.col,a)}else this.model={top:Math.min(e,r),left:Math.min(t,i),bottom:Math.max(e,r),right:Math.max(t,i),sheetName:a}}decode(e){switch(e.length){case 5:this.setTLBR(e[0],e[1],e[2],e[3],e[4]);break;case 4:this.setTLBR(e[0],e[1],e[2],e[3]);break;case 3:this.setTLBR(e[0],e[1],e[2]);break;case 2:this.setTLBR(e[0],e[1]);break;case 1:{const t=e[0];if(t instanceof i)this.model={top:t.model.top,left:t.model.left,bottom:t.model.bottom,right:t.model.right,sheetName:t.sheetName};else if(t instanceof Array)this.decode(t);else if(t.top&&t.left&&t.bottom&&t.right)this.model={top:t.top,left:t.left,bottom:t.bottom,right:t.right,sheetName:t.sheetName};else{const e=n.decodeEx(t);e.top?this.model={top:e.top,left:e.left,bottom:e.bottom,right:e.right,sheetName:e.sheetName}:this.model={top:e.row,left:e.col,bottom:e.row,right:e.col,sheetName:e.sheetName}}break}case 0:this.model={top:0,left:0,bottom:0,right:0};break;default:throw new Error(`Invalid number of arguments to _getDimensions() - ${e.length}`)}}get top(){return this.model.top||1}set top(e){this.model.top=e}get left(){return this.model.left||1}set left(e){this.model.left=e}get bottom(){return this.model.bottom||1}set bottom(e){this.model.bottom=e}get right(){return this.model.right||1}set right(e){this.model.right=e}get sheetName(){return this.model.sheetName}set sheetName(e){this.model.sheetName=e}get _serialisedSheetName(){const{sheetName:e}=this.model;return e?/^[a-zA-Z0-9]*$/.test(e)?`${e}!`:`'${e}'!`:""}expand(e,t,r,n){(!this.model.top||e<this.top)&&(this.top=e),(!this.model.left||t<this.left)&&(this.left=t),(!this.model.bottom||r>this.bottom)&&(this.bottom=r),(!this.model.right||n>this.right)&&(this.right=n)}expandRow(e){if(e){const{dimensions:t,number:r}=e;t&&this.expand(r,t.min,r,t.max)}}expandToAddress(e){const t=n.decodeEx(e);this.expand(t.row,t.col,t.row,t.col)}get tl(){return n.n2l(this.left)+this.top}get $t$l(){return`$${n.n2l(this.left)}$${this.top}`}get br(){return n.n2l(this.right)+this.bottom}get $b$r(){return`$${n.n2l(this.right)}$${this.bottom}`}get range(){return`${this._serialisedSheetName+this.tl}:${this.br}`}get $range(){return`${this._serialisedSheetName+this.$t$l}:${this.$b$r}`}get shortRange(){return this.count>1?this.range:this._serialisedSheetName+this.tl}get $shortRange(){return this.count>1?this.$range:this._serialisedSheetName+this.$t$l}get count(){return(1+this.bottom-this.top)*(1+this.right-this.left)}toString(){return this.range}intersects(e){return(!e.sheetName||!this.sheetName||e.sheetName===this.sheetName)&&(!(e.bottom<this.top)&&(!(e.top>this.bottom)&&(!(e.right<this.left)&&!(e.left>this.right))))}contains(e){const t=n.decodeEx(e);return this.containsEx(t)}containsEx(e){return(!e.sheetName||!this.sheetName||e.sheetName===this.sheetName)&&(e.row>=this.top&&e.row<=this.bottom&&e.col>=this.left&&e.col<=this.right)}forEachAddress(e){for(let t=this.left;t<=this.right;t++)for(let r=this.top;r<=this.bottom;r++)e(n.encodeAddress(r,t),r,t)}}e.exports=i},67211:(e,t,r)=>{"use strict";const n=r(15797),i=r(79931),a=r(48376),o=r(11573);e.exports=class{constructor(e,t){this._worksheet=e,this._number=t,this._cells=[],this.style={},this.outlineLevel=0}get number(){return this._number}get worksheet(){return this._worksheet}commit(){this._worksheet._commitRow(this)}destroy(){delete this._worksheet,delete this._cells,delete this.style}findCell(e){return this._cells[e-1]}getCellEx(e){let t=this._cells[e.col-1];if(!t){const r=this._worksheet.getColumn(e.col);t=new o(this,r,e.address),this._cells[e.col-1]=t}return t}getCell(e){if("string"==typeof e){const t=this._worksheet.getColumnKey(e);e=t?t.number:a.l2n(e)}return this._cells[e-1]||this.getCellEx({address:a.encodeAddress(this._number,e),row:this._number,col:e})}splice(e,t,...r){const n=e+t,i=r.length-t,a=this._cells.length;let o,s,c;if(i<0)for(o=e+r.length;o<=a;o++)c=this._cells[o-1],s=this._cells[o-i-1],s?(c=this.getCell(o),c.value=s.value,c.style=s.style,c._comment=s._comment):c&&(c.value=null,c.style={},c._comment=void 0);else if(i>0)for(o=a;o>=n;o--)s=this._cells[o-1],s?(c=this.getCell(o+i),c.value=s.value,c.style=s.style,c._comment=s._comment):this._cells[o+i-1]=void 0;for(o=0;o<r.length;o++)c=this.getCell(e+o),c.value=r[o],c.style={},c._comment=void 0}eachCell(e,t){if(t||(t=e,e=null),e&&e.includeEmpty){const e=this._cells.length;for(let r=1;r<=e;r++)t(this.getCell(r),r)}else this._cells.forEach(((e,r)=>{e&&e.type!==i.ValueType.Null&&t(e,r+1)}))}addPageBreak(e,t){const r=this._worksheet,n=Math.max(0,e-1)||0,i=Math.max(0,t-1)||16838,a={id:this._number,max:i,man:1};n&&(a.min=n),r.rowBreaks.push(a)}get values(){const e=[];return this._cells.forEach((t=>{t&&t.type!==i.ValueType.Null&&(e[t.col]=t.value)})),e}set values(e){if(this._cells=[],e)if(e instanceof Array){let t=0;e.hasOwnProperty("0")&&(t=1),e.forEach(((e,r)=>{void 0!==e&&(this.getCellEx({address:a.encodeAddress(this._number,r+t),row:this._number,col:r+t}).value=e)}))}else this._worksheet.eachColumnKey(((t,r)=>{void 0!==e[r]&&(this.getCellEx({address:a.encodeAddress(this._number,t.number),row:this._number,col:t.number}).value=e[r])}));else;}get hasValues(){return n.some(this._cells,(e=>e&&e.type!==i.ValueType.Null))}get cellCount(){return this._cells.length}get actualCellCount(){let e=0;return this.eachCell((()=>{e++})),e}get dimensions(){let e=0,t=0;return this._cells.forEach((r=>{r&&r.type!==i.ValueType.Null&&((!e||e>r.col)&&(e=r.col),t<r.col&&(t=r.col))})),e>0?{min:e,max:t}:null}_applyStyle(e,t){return this.style[e]=t,this._cells.forEach((r=>{r&&(r[e]=t)})),t}get numFmt(){return this.style.numFmt}set numFmt(e){this._applyStyle("numFmt",e)}get font(){return this.style.font}set font(e){this._applyStyle("font",e)}get alignment(){return this.style.alignment}set alignment(e){this._applyStyle("alignment",e)}get protection(){return this.style.protection}set protection(e){this._applyStyle("protection",e)}get border(){return this.style.border}set border(e){this._applyStyle("border",e)}get fill(){return this.style.fill}set fill(e){this._applyStyle("fill",e)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel||0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=this._worksheet.properties.outlineLevelRow)}get model(){const e=[];let t=0,r=0;return this._cells.forEach((n=>{if(n){const i=n.model;i&&((!t||t>n.col)&&(t=n.col),r<n.col&&(r=n.col),e.push(i))}})),this.height||e.length?{cells:e,number:this.number,min:t,max:r,height:this.height,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel,collapsed:this.collapsed}:null}set model(e){if(e.number!==this._number)throw new Error("Invalid row number in model");let t;this._cells=[],e.cells.forEach((e=>{switch(e.type){case o.Types.Merge:break;default:{let r;if(e.address)r=a.decodeAddress(e.address);else if(t){const{row:e}=t,n=t.col+1;r={row:e,col:n,address:a.encodeAddress(e,n),$col$row:`$${a.n2l(n)}$${e}`}}t=r;this.getCellEx(r).model=e;break}}})),e.height?this.height=e.height:delete this.height,this.hidden=e.hidden,this.outlineLevel=e.outlineLevel||0,this.style=e.style&&JSON.parse(JSON.stringify(e.style))||{}}}},65944:(e,t,r)=>{const n=r(48376);class i{constructor(e,t,r){this.table=e,this.column=t,this.index=r}_set(e,t){this.table.cacheState(),this.column[e]=t}get name(){return this.column.name}set name(e){this._set("name",e)}get filterButton(){return this.column.filterButton}set filterButton(e){this.column.filterButton=e}get style(){return this.column.style}set style(e){this.column.style=e}get totalsRowLabel(){return this.column.totalsRowLabel}set totalsRowLabel(e){this._set("totalsRowLabel",e)}get totalsRowFunction(){return this.column.totalsRowFunction}set totalsRowFunction(e){this._set("totalsRowFunction",e)}get totalsRowResult(){return this.column.totalsRowResult}set totalsRowResult(e){this._set("totalsRowResult",e)}get totalsRowFormula(){return this.column.totalsRowFormula}set totalsRowFormula(e){this._set("totalsRowFormula",e)}}e.exports=class{constructor(e,t){this.worksheet=e,t&&(this.table=t,this.validate(),this.store())}getFormula(e){switch(e.totalsRowFunction){case"none":return null;case"average":return`SUBTOTAL(101,${this.table.name}[${e.name}])`;case"countNums":return`SUBTOTAL(102,${this.table.name}[${e.name}])`;case"count":return`SUBTOTAL(103,${this.table.name}[${e.name}])`;case"max":return`SUBTOTAL(104,${this.table.name}[${e.name}])`;case"min":return`SUBTOTAL(105,${this.table.name}[${e.name}])`;case"stdDev":return`SUBTOTAL(106,${this.table.name}[${e.name}])`;case"var":return`SUBTOTAL(107,${this.table.name}[${e.name}])`;case"sum":return`SUBTOTAL(109,${this.table.name}[${e.name}])`;case"custom":return e.totalsRowFormula;default:throw new Error(`Invalid Totals Row Function: ${e.totalsRowFunction}`)}}get width(){return this.table.columns.length}get height(){return this.table.rows.length}get filterHeight(){return this.height+(this.table.headerRow?1:0)}get tableHeight(){return this.filterHeight+(this.table.totalsRow?1:0)}validate(){const{table:e}=this,t=(e,t,r)=>{void 0===e[t]&&(e[t]=r)};t(e,"headerRow",!0),t(e,"totalsRow",!1),t(e,"style",{}),t(e.style,"theme","TableStyleMedium2"),t(e.style,"showFirstColumn",!1),t(e.style,"showLastColumn",!1),t(e.style,"showRowStripes",!1),t(e.style,"showColumnStripes",!1);const r=(e,t)=>{if(!e)throw new Error(t)};r(e.ref,"Table must have ref"),r(e.columns,"Table must have column definitions"),r(e.rows,"Table must have row definitions"),e.tl=n.decodeAddress(e.ref);const{row:i,col:a}=e.tl;r(i>0,"Table must be on valid row"),r(a>0,"Table must be on valid col");const{width:o,filterHeight:s,tableHeight:c}=this;e.autoFilterRef=n.encode(i,a,i+s-1,a+o-1),e.tableRef=n.encode(i,a,i+c-1,a+o-1),e.columns.forEach(((e,n)=>{r(e.name,`Column ${n} must have a name`),0===n?t(e,"totalsRowLabel","Total"):(t(e,"totalsRowFunction","none"),e.totalsRowFormula=this.getFormula(e))}))}store(){const e=(e,t)=>{t&&Object.keys(t).forEach((r=>{e[r]=t[r]}))},{worksheet:t,table:r}=this,{row:n,col:i}=r.tl;let a=0;if(r.headerRow){const o=t.getRow(n+a++);r.columns.forEach(((t,r)=>{const{style:n,name:a}=t,s=o.getCell(i+r);s.value=a,e(s,n)}))}if(r.rows.forEach((o=>{const s=t.getRow(n+a++);o.forEach(((t,n)=>{const a=s.getCell(i+n);a.value=t,e(a,r.columns[n].style)}))})),r.totalsRow){const o=t.getRow(n+a++);r.columns.forEach(((t,r)=>{const n=o.getCell(i+r);if(0===r)n.value=t.totalsRowLabel;else{const e=this.getFormula(t);n.value=e?{formula:t.totalsRowFormula,result:t.totalsRowResult}:null}e(n,t.style)}))}}load(e){const{table:t}=this,{row:r,col:n}=t.tl;let i=0;if(t.headerRow){const a=e.getRow(r+i++);t.columns.forEach(((e,t)=>{a.getCell(n+t).value=e.name}))}if(t.rows.forEach((t=>{const a=e.getRow(r+i++);t.forEach(((e,t)=>{a.getCell(n+t).value=e}))})),t.totalsRow){const a=e.getRow(r+i++);t.columns.forEach(((e,t)=>{const r=a.getCell(n+t);if(0===t)r.value=e.totalsRowLabel;else{this.getFormula(e)&&(r.value={formula:e.totalsRowFormula,result:e.totalsRowResult})}}))}}get model(){return this.table}set model(e){this.table=e}cacheState(){this._cache||(this._cache={ref:this.ref,width:this.width,tableHeight:this.tableHeight})}commit(){if(!this._cache)return;this.validate();const e=n.decodeAddress(this._cache.ref);if(this.ref!==this._cache.ref)for(let t=0;t<this._cache.tableHeight;t++){const r=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){r.getCell(e.col+t).value=null}}else{for(let t=this.tableHeight;t<this._cache.tableHeight;t++){const r=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){r.getCell(e.col+t).value=null}}for(let t=0;t<this.tableHeight;t++){const r=this.worksheet.getRow(e.row+t);for(let t=this.width;t<this._cache.width;t++){r.getCell(e.col+t).value=null}}}this.store()}addRow(e,t){this.cacheState(),void 0===t?this.table.rows.push(e):this.table.rows.splice(t,0,e)}removeRows(e,t=1){this.cacheState(),this.table.rows.splice(e,t)}getColumn(e){const t=this.table.columns[e];return new i(this,t,e)}addColumn(e,t,r){this.cacheState(),void 0===r?(this.table.columns.push(e),this.table.rows.forEach(((e,r)=>{e.push(t[r])}))):(this.table.columns.splice(r,0,e),this.table.rows.forEach(((e,n)=>{e.splice(r,0,t[n])})))}removeColumns(e,t=1){this.cacheState(),this.table.columns.splice(e,t),this.table.rows.forEach((r=>{r.splice(e,t)}))}_assign(e,t,r){this.cacheState(),e[t]=r}get ref(){return this.table.ref}set ref(e){this._assign(this.table,"ref",e)}get name(){return this.table.name}set name(e){this.table.name=e}get displayName(){return this.table.displyName||this.table.name}set displayNamename(e){this.table.displayName=e}get headerRow(){return this.table.headerRow}set headerRow(e){this._assign(this.table,"headerRow",e)}get totalsRow(){return this.table.totalsRow}set totalsRow(e){this._assign(this.table,"totalsRow",e)}get theme(){return this.table.style.name}set theme(e){this.table.style.name=e}get showFirstColumn(){return this.table.style.showFirstColumn}set showFirstColumn(e){this.table.style.showFirstColumn=e}get showLastColumn(){return this.table.style.showLastColumn}set showLastColumn(e){this.table.style.showLastColumn=e}get showRowStripes(){return this.table.style.showRowStripes}set showRowStripes(e){this.table.style.showRowStripes=e}get showColumnStripes(){return this.table.style.showColumnStripes}set showColumnStripes(e){this.table.style.showColumnStripes=e}}},41117:(e,t,r)=>{"use strict";const n=r(27315),i=r(16938),a=r(92208),o=r(6305);e.exports=class{constructor(){this.category="",this.company="",this.created=new Date,this.description="",this.keywords="",this.manager="",this.modified=this.created,this.properties={},this.calcProperties={},this._worksheets=[],this.subject="",this.title="",this.views=[],this.media=[],this._definedNames=new i}get xlsx(){return this._xlsx||(this._xlsx=new a(this)),this._xlsx}get csv(){return this._csv||(this._csv=new o(this)),this._csv}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addWorksheet(e,t){const r=this.nextId;if(e&&e.length>31&&console.warn(`Worksheet name ${e} exceeds 31 chars. This will be truncated`),/[*?:/\\[\]]/.test(e))throw new Error(`Worksheet name ${e} cannot include any of the following characters: * ? : \\ / [ ]`);if(/(^')|('$)/.test(e))throw new Error(`The first or last character of worksheet name cannot be a single quotation mark: ${e}`);if(e=(e||`sheet${r}`).substring(0,31),this._worksheets.find((t=>t&&t.name.toLowerCase()===e.toLowerCase())))throw new Error(`Worksheet name already exists: ${e}`);t&&("string"==typeof t?(console.trace('tabColor argument is now deprecated. Please use workbook.addWorksheet(name, {properties: { tabColor: { argb: "rbg value" } }'),t={properties:{tabColor:{argb:t}}}):(t.argb||t.theme||t.indexed)&&(console.trace("tabColor argument is now deprecated. Please use workbook.addWorksheet(name, {properties: { tabColor: { ... } }"),t={properties:{tabColor:t}}));const i=this._worksheets.reduce(((e,t)=>(t&&t.orderNo)>e?t.orderNo:e),0),a=Object.assign({},t,{id:r,name:e,orderNo:i+1,workbook:this}),o=new n(a);return this._worksheets[r]=o,o}removeWorksheetEx(e){delete this._worksheets[e.id]}removeWorksheet(e){const t=this.getWorksheet(e);t&&t.destroy()}getWorksheet(e){return void 0===e?this._worksheets.find(Boolean):"number"==typeof e?this._worksheets[e]:"string"==typeof e?this._worksheets.find((t=>t&&t.name===e)):void 0}get worksheets(){return this._worksheets.slice(1).sort(((e,t)=>e.orderNo-t.orderNo)).filter(Boolean)}eachSheet(e){this.worksheets.forEach((t=>{e(t,t.id)}))}get definedNames(){return this._definedNames}clearThemes(){this._themes=void 0}addImage(e){const t=this.media.length;return this.media.push(Object.assign({},e,{type:"image"})),t}getImage(e){return this.media[e]}get model(){return{creator:this.creator||"Unknown",lastModifiedBy:this.lastModifiedBy||"Unknown",lastPrinted:this.lastPrinted,created:this.created,modified:this.modified,properties:this.properties,worksheets:this.worksheets.map((e=>e.model)),sheets:this.worksheets.map((e=>e.model)).filter(Boolean),definedNames:this._definedNames.model,views:this.views,company:this.company,manager:this.manager,title:this.title,subject:this.subject,keywords:this.keywords,category:this.category,description:this.description,language:this.language,revision:this.revision,contentStatus:this.contentStatus,themes:this._themes,media:this.media,calcProperties:this.calcProperties}}set model(e){this.creator=e.creator,this.lastModifiedBy=e.lastModifiedBy,this.lastPrinted=e.lastPrinted,this.created=e.created,this.modified=e.modified,this.company=e.company,this.manager=e.manager,this.title=e.title,this.subject=e.subject,this.keywords=e.keywords,this.category=e.category,this.description=e.description,this.language=e.language,this.revision=e.revision,this.contentStatus=e.contentStatus,this.properties=e.properties,this.calcProperties=e.calcProperties,this._worksheets=[],e.worksheets.forEach((t=>{const{id:r,name:i,state:a}=t,o=e.sheets&&e.sheets.findIndex((e=>e.id===r));(this._worksheets[r]=new n({id:r,name:i,orderNo:o,state:a,workbook:this})).model=t})),this._definedNames.model=e.definedNames,this.views=e.views,this._themes=e.themes,this.media=e.media||[]}}},27315:(e,t,r)=>{const n=r(15797),i=r(48376),a=r(47765),o=r(67211),s=r(14538),c=r(79931),l=r(60487),u=r(65944),d=r(8881),p=r(3539);e.exports=class{constructor(e){e=e||{},this.id=e.id,this.orderNo=e.orderNo,this.name=e.name||`Sheet${this.id}`,this.state=e.state||"visible",this._rows=[],this._columns=null,this._keys={},this._merges={},this.rowBreaks=[],this._workbook=e.workbook,this.properties=Object.assign({},{defaultRowHeight:15,dyDescent:55,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:"portrait",horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!(!e.pageSetup||!e.pageSetup.fitToWidth&&!e.pageSetup.fitToHeight||e.pageSetup.scale),pageOrder:"downThenOver",blackAndWhite:!1,draft:!1,cellComments:"None",errors:"displayed",scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,firstPageNumber:void 0,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.dataValidations=new d,this.views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this.tables={},this.conditionalFormattings=[]}get workbook(){return this._workbook}destroy(){this._workbook.removeWorksheetEx(this)}get dimensions(){const e=new a;return this._rows.forEach((t=>{if(t){const r=t.dimensions;r&&e.expand(t.number,r.min,t.number,r.max)}})),e}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce(((e,t)=>{const r=(t.header?1:t.headers&&t.headers.length)||0;return Math.max(e,r)}),0);let t=1;const r=this._columns=[];e.forEach((e=>{const n=new s(this,t++,!1);r.push(n),n.defn=e}))}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){n.each(this._keys,e)}getColumn(e){if("string"==typeof e){const t=this._keys[e];if(t)return t;e=i.l2n(e)}if(this._columns||(this._columns=[]),e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new s(this,t++))}return this._columns[e-1]}spliceColumns(e,t,...r){const n=this._rows.length;if(r.length>0)for(let i=0;i<n;i++){const n=[e,t];r.forEach((e=>{n.push(e[i]||null)}));const a=this.getRow(i+1);a.splice.apply(a,n)}else this._rows.forEach((r=>{r&&r.splice(e,t)}));const i=r.length-t,a=e+t,o=this._columns.length;if(i<0)for(let t=e+r.length;t<=o;t++)this.getColumn(t).defn=this.getColumn(t-i).defn;else if(i>0)for(let e=o;e>=a;e--)this.getColumn(e+i).defn=this.getColumn(e).defn;for(let t=e;t<e+r.length;t++)this.getColumn(t).defn=null;this.workbook.definedNames.spliceColumns(this.name,e,t,r.length)}get lastColumn(){return this.getColumn(this.columnCount)}get columnCount(){let e=0;return this.eachRow((t=>{e=Math.max(e,t.cellCount)})),e}get actualColumnCount(){const e=[];let t=0;return this.eachRow((r=>{r.eachCell((({col:r})=>{e[r]||(e[r]=!0,t++)}))})),t}_commitRow(){}get _lastRowNumber(){const e=this._rows;let t=e.length;for(;t>0&&void 0===e[t-1];)t--;return t}get _nextRow(){return this._lastRowNumber+1}get lastRow(){if(this._rows.length)return this._rows[this._rows.length-1]}findRow(e){return this._rows[e-1]}findRows(e,t){return this._rows.slice(e-1,e-1+t)}get rowCount(){return this._lastRowNumber}get actualRowCount(){let e=0;return this.eachRow((()=>{e++})),e}getRow(e){let t=this._rows[e-1];return t||(t=this._rows[e-1]=new o(this,e)),t}getRows(e,t){if(t<1)return;const r=[];for(let n=e;n<e+t;n++)r.push(this.getRow(n));return r}addRow(e,t="n"){const r=this._nextRow,n=this.getRow(r);return n.values=e,this._setStyleOption(r,"i"===t[0]?t:"n"),n}addRows(e,t="n"){const r=[];return e.forEach((e=>{r.push(this.addRow(e,t))})),r}insertRow(e,t,r="n"){return this.spliceRows(e,0,t),this._setStyleOption(e,r),this.getRow(e)}insertRows(e,t,r="n"){if(this.spliceRows(e,0,...t),"n"!==r)for(let n=0;n<t.length;n++)"o"===r[0]&&void 0!==this.findRow(t.length+e+n)?this._copyStyle(t.length+e+n,e+n,"+"===r[1]):"i"===r[0]&&void 0!==this.findRow(e-1)&&this._copyStyle(e-1,e+n,"+"===r[1]);return this.getRows(e,t.length)}_setStyleOption(e,t="n"){"o"===t[0]&&void 0!==this.findRow(e+1)?this._copyStyle(e+1,e,"+"===t[1]):"i"===t[0]&&void 0!==this.findRow(e-1)&&this._copyStyle(e-1,e,"+"===t[1])}_copyStyle(e,t,r=!1){const n=this.getRow(e),i=this.getRow(t);i.style=Object.freeze({...n.style}),n.eachCell({includeEmpty:r},((e,t)=>{i.getCell(t).style=Object.freeze({...e.style})})),i.height=n.height}duplicateRow(e,t,r=!1){const n=this._rows[e-1],i=new Array(t).fill(n.values);this.spliceRows(e+1,r?0:t,...i);for(let r=0;r<t;r++){const t=this._rows[e+r];t.style=n.style,t.height=n.height,n.eachCell({includeEmpty:!0},((e,r)=>{t.getCell(r).style=e.style}))}}spliceRows(e,t,...r){const n=e+t,i=r.length,a=i-t,o=this._rows.length;let s,c;if(a<0)for(s=n;s<=o;s++)if(c=this._rows[s-1],c){const e=this.getRow(s+a);e.values=c.values,e.style=c.style,e.height=c.height,c.eachCell({includeEmpty:!0},((t,r)=>{e.getCell(r).style=t.style})),this._rows[s-1]=void 0}else this._rows[s+a-1]=void 0;else if(a>0)for(s=o;s>=n;s--)if(c=this._rows[s-1],c){const e=this.getRow(s+a);e.values=c.values,e.style=c.style,e.height=c.height,c.eachCell({includeEmpty:!0},((t,r)=>{if(e.getCell(r).style=t.style,"MergeValue"===t._value.constructor.name){const e=this.getRow(t._row._number+i).getCell(r),n=t._value._master,a=this.getRow(n._row._number+i).getCell(n._column._number);e.merge(a)}}))}else this._rows[s+a-1]=void 0;for(s=0;s<i;s++){const t=this.getRow(e+s);t.style={},t.values=r[s]}this.workbook.definedNames.spliceRows(this.name,e,t,i)}eachRow(e,t){if(t||(t=e,e=void 0),e&&e.includeEmpty){const e=this._rows.length;for(let r=1;r<=e;r++)t(this.getRow(r),r)}else this._rows.forEach((e=>{e&&e.hasValues&&t(e,e.number)}))}getSheetValues(){const e=[];return this._rows.forEach((t=>{t&&(e[t.number]=t.values)})),e}findCell(e,t){const r=i.getAddress(e,t),n=this._rows[r.row-1];return n?n.findCell(r.col):void 0}getCell(e,t){const r=i.getAddress(e,t);return this.getRow(r.row).getCellEx(r)}mergeCells(...e){const t=new a(e);this._mergeCellsInternal(t)}mergeCellsWithoutStyle(...e){const t=new a(e);this._mergeCellsInternal(t,!0)}_mergeCellsInternal(e,t){n.each(this._merges,(t=>{if(t.intersects(e))throw new Error("Cannot merge already merged cells")}));const r=this.getCell(e.top,e.left);for(let n=e.top;n<=e.bottom;n++)for(let i=e.left;i<=e.right;i++)(n>e.top||i>e.left)&&this.getCell(n,i).merge(r,t);this._merges[r.address]=e}_unMergeMaster(e){const t=this._merges[e.address];if(t){for(let e=t.top;e<=t.bottom;e++)for(let r=t.left;r<=t.right;r++)this.getCell(e,r).unmerge();delete this._merges[e.address]}}get hasMerges(){return n.some(this._merges,Boolean)}unMergeCells(...e){const t=new a(e);for(let e=t.top;e<=t.bottom;e++)for(let r=t.left;r<=t.right;r++){const t=this.findCell(e,r);t&&(t.type===c.ValueType.Merge?this._unMergeMaster(t.master):this._merges[t.address]&&this._unMergeMaster(t))}}fillFormula(e,t,r,n="shared"){const a=i.decode(e),{top:o,left:s,bottom:c,right:l}=a,u=l-s+1,d=i.encodeAddress(o,s),p="shared"===n;let f;f="function"==typeof r?r:Array.isArray(r)?Array.isArray(r[0])?(e,t)=>r[e-o][t-s]:(e,t)=>r[(e-o)*u+(t-s)]:()=>{};let m=!0;for(let r=o;r<=c;r++)for(let i=s;i<=l;i++)m?(this.getCell(r,i).value={shareType:n,formula:t,ref:e,result:f(r,i)},m=!1):this.getCell(r,i).value=p?{sharedFormula:d,result:f(r,i)}:f(r,i)}addImage(e,t){const r={type:"image",imageId:e,range:t};this._media.push(new l(this,r))}getImages(){return this._media.filter((e=>"image"===e.type))}addBackgroundImage(e){const t={type:"background",imageId:e};this._media.push(new l(this,t))}getBackgroundImageId(){const e=this._media.find((e=>"background"===e.type));return e&&e.imageId}protect(e,t){return new Promise((r=>{this.sheetProtection={sheet:!0},t&&"spinCount"in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName="SHA-512",this.sheetProtection.saltValue=p.randomBytes(16).toString("base64"),this.sheetProtection.spinCount=t&&"spinCount"in t?t.spinCount:1e5,this.sheetProtection.hashValue=p.convertPasswordToHash(e,"SHA512",this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&"spinCount"in t&&delete this.sheetProtection.spinCount),r()}))}unprotect(){this.sheetProtection=null}addTable(e){const t=new u(this,e);return this.tables[e.name]=t,t}getTable(e){return this.tables[e]}removeTable(e){delete this.tables[e]}getTables(){return Object.values(this.tables)}addConditionalFormatting(e){this.conditionalFormattings.push(e)}removeConditionalFormatting(e){"number"==typeof e?this.conditionalFormattings.splice(e,1):this.conditionalFormattings=e instanceof Function?this.conditionalFormattings.filter(e):[]}get tabColor(){return console.trace("worksheet.tabColor property is now deprecated. Please use worksheet.properties.tabColor"),this.properties.tabColor}set tabColor(e){console.trace("worksheet.tabColor property is now deprecated. Please use worksheet.properties.tabColor"),this.properties.tabColor=e}get model(){const e={id:this.id,name:this.name,dataValidations:this.dataValidations.model,properties:this.properties,state:this.state,pageSetup:this.pageSetup,headerFooter:this.headerFooter,rowBreaks:this.rowBreaks,views:this.views,autoFilter:this.autoFilter,media:this._media.map((e=>e.model)),sheetProtection:this.sheetProtection,tables:Object.values(this.tables).map((e=>e.model)),conditionalFormattings:this.conditionalFormattings};e.cols=s.toModel(this.columns);const t=e.rows=[],r=e.dimensions=new a;return this._rows.forEach((e=>{const n=e&&e.model;n&&(r.expand(n.number,n.min,n.number,n.max),t.push(n))})),e.merges=[],n.each(this._merges,(t=>{e.merges.push(t.range)})),e}_parseRows(e){this._rows=[],e.rows.forEach((e=>{const t=new o(this,e.number);this._rows[t.number-1]=t,t.model=e}))}_parseMergeCells(e){n.each(e.mergeCells,(e=>{this.mergeCellsWithoutStyle(e)}))}set model(e){this.name=e.name,this._columns=s.fromModel(this,e.cols),this._parseRows(e),this._parseMergeCells(e),this.dataValidations=new d(e.dataValidations),this.properties=e.properties,this.pageSetup=e.pageSetup,this.headerFooter=e.headerFooter,this.views=e.views,this.autoFilter=e.autoFilter,this._media=e.media.map((e=>new l(this,e))),this.sheetProtection=e.sheetProtection,this.tables=e.tables.reduce(((e,t)=>{const r=new u;return r.model=t,e[t.name]=r,e}),{}),this.conditionalFormattings=e.conditionalFormattings}}},89668:(e,t,r)=>{const n={Workbook:r(41117),ModelContainer:r(91914),stream:{xlsx:{WorkbookWriter:r(81858),WorkbookReader:r(40351)}}};Object.assign(n,r(79931)),e.exports=n},68662:(e,t,r)=>{const{EventEmitter:n}=r(82361),i=r(23041),a=r(79931),o=r(46405);e.exports=class extends n{constructor({workbook:e,id:t,iterator:r,options:n}){super(),this.workbook=e,this.id=t,this.iterator=r,this.options=n}get count(){return this.hyperlinks&&this.hyperlinks.length||0}each(e){return this.hyperlinks.forEach(e)}async read(){const{iterator:e,options:t}=this;let r=!1,n=null;switch(t.hyperlinks){case"emit":r=!0;break;case"cache":this.hyperlinks=n={}}if(r||n)try{for await(const t of i(e))for(const{eventType:e,value:i}of t)if("opentag"===e){const e=i;if("Relationship"===e.name){const t=e.attributes.Id;if(e.attributes.Type===o.Hyperlink){const i={type:a.RelationshipType.Styles,rId:t,target:e.attributes.Target,targetMode:e.attributes.TargetMode};r?this.emit("hyperlink",i):n[i.rId]=i}}}this.emit("finished")}catch(e){this.emit("error",e)}else this.emit("finished")}}},283:(e,t,r)=>{const n=r(91483),i=r(46405),a=r(48376),o=r(39207),s=r(1362);e.exports=class{constructor(e,t,r){this.id=r.id,this.count=0,this._worksheet=e,this._workbook=r.workbook,this._sheetRelsWriter=t}get commentsStream(){return this._commentsStream||(this._commentsStream=this._workbook._openStream(`/xl/comments${this.id}.xml`)),this._commentsStream}get vmlStream(){return this._vmlStream||(this._vmlStream=this._workbook._openStream(`xl/drawings/vmlDrawing${this.id}.vml`)),this._vmlStream}_addRelationships(){const e={Type:i.Comments,Target:`../comments${this.id}.xml`};this._sheetRelsWriter.addRelationship(e);const t={Type:i.VmlDrawing,Target:`../drawings/vmlDrawing${this.id}.vml`};this.vmlRelId=this._sheetRelsWriter.addRelationship(t)}_addCommentRefs(){this._workbook.commentRefs.push({commentName:`comments${this.id}`,vmlDrawing:`vmlDrawing${this.id}`})}_writeOpen(){this.commentsStream.write('<?xml version="1.0" encoding="UTF-8" standalone="yes"?><comments xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><authors><author>Author</author></authors><commentList>'),this.vmlStream.write('<?xml version="1.0" encoding="UTF-8"?><xml xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:x="urn:schemas-microsoft-com:office:excel"><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1" /></o:shapelayout><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe"><v:stroke joinstyle="miter" /><v:path gradientshapeok="t" o:connecttype="rect" /></v:shapetype>')}_writeComment(e,t){const r=new o,i=new n;r.render(i,e),this.commentsStream.write(i.xml);const a=new s,c=new n;a.render(c,e,t),this.vmlStream.write(c.xml)}_writeClose(){this.commentsStream.write("</commentList></comments>"),this.vmlStream.write("</xml>")}addComments(e){e&&e.length&&(this.startedData||(this._worksheet.comments=[],this._writeOpen(),this._addRelationships(),this._addCommentRefs(),this.startedData=!0),e.forEach((e=>{e.refAddress=a.decodeAddress(e.ref)})),e.forEach((e=>{this._writeComment(e,this.count),this.count+=1})))}commit(){this.count&&(this._writeClose(),this.commentsStream.end(),this.vmlStream.end())}}},96656:(e,t,r)=>{const n=r(86144),i=r(46405);class a{constructor(e){this.writer=e}push(e){this.writer.addHyperlink(e)}}e.exports=class{constructor(e){this.id=e.id,this.count=0,this._hyperlinks=[],this._workbook=e.workbook}get stream(){return this._stream||(this._stream=this._workbook._openStream(`/xl/worksheets/_rels/sheet${this.id}.xml.rels`)),this._stream}get length(){return this._hyperlinks.length}each(e){return this._hyperlinks.forEach(e)}get hyperlinksProxy(){return this._hyperlinksProxy||(this._hyperlinksProxy=new a(this))}addHyperlink(e){const t={Target:e.target,Type:i.Hyperlink,TargetMode:"External"},r=this._writeRelationship(t);this._hyperlinks.push({rId:r,address:e.address})}addMedia(e){return this._writeRelationship(e)}addRelationship(e){return this._writeRelationship(e)}commit(){this.count&&(this._writeClose(),this.stream.end())}_writeOpen(){this.stream.write('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">')}_writeRelationship(e){this.count||this._writeOpen();const t="rId"+ ++this.count;return e.TargetMode?this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${n.xmlEncode(e.Target)}" TargetMode="${e.TargetMode}"/>`):this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${e.Target}"/>`),t}_writeClose(){this.stream.write("</Relationships>")}}},40351:(e,t,r)=>{const n=r(57147),{EventEmitter:i}=r(82361),{PassThrough:a,Readable:o}=r(11451),s=r(12781),c=r(40984),l=r(36276),u=r(57120),d=r(23041),p=r(35818),f=r(44769),m=r(56181),g=r(7663),_=r(68662);l.setGracefulCleanup();class h extends i{constructor(e,t={}){super(),this.input=e,this.options={worksheets:"emit",sharedStrings:"cache",hyperlinks:"ignore",styles:"ignore",entries:"ignore",...t},this.styles=new p,this.styles.init()}_getStream(e){if(e instanceof s.Readable||e instanceof o)return e;if("string"==typeof e)return n.createReadStream(e);throw new Error(`Could not recognise input: ${e}`)}async read(e,t){try{for await(const{eventType:r,value:n}of this.parse(e,t))switch(r){case"shared-strings":case"hyperlinks":this.emit(r,n);break;case"worksheet":this.emit(r,n),await n.read()}this.emit("end"),this.emit("finished")}catch(e){this.emit("error",e)}}async*[Symbol.asyncIterator](){for await(const{eventType:e,value:t}of this.parse())"worksheet"===e&&(yield t)}async*parse(e,t){t&&(this.options=t);const r=this.stream=this._getStream(e||this.input),i=c.Parse({forceStream:!0});r.pipe(i);const o=[];for await(const e of u(i)){let t,r;switch(e.path){case"_rels/.rels":break;case"xl/_rels/workbook.xml.rels":await this._parseRels(e);break;case"xl/workbook.xml":await this._parseWorkbook(e);break;case"xl/sharedStrings.xml":yield*this._parseSharedStrings(e);break;case"xl/styles.xml":await this._parseStyles(e);break;default:e.path.match(/xl\/worksheets\/sheet\d+[.]xml/)?(t=e.path.match(/xl\/worksheets\/sheet(\d+)[.]xml/),r=t[1],this.sharedStrings&&this.workbookRels?yield*this._parseWorksheet(u(e),r):await new Promise(((t,i)=>{l.file(((a,s,c,l)=>{if(a)return i(a);o.push({sheetNo:r,path:s,tempFileCleanupCallback:l});const u=n.createWriteStream(s);return e.pipe(u),u.on("finish",(()=>t()))}))}))):e.path.match(/xl\/worksheets\/_rels\/sheet\d+[.]xml.rels/)&&(t=e.path.match(/xl\/worksheets\/_rels\/sheet(\d+)[.]xml.rels/),r=t[1],yield*this._parseHyperlinks(u(e),r))}e.autodrain()}for(const{sheetNo:e,path:t,tempFileCleanupCallback:r}of o){let i=n.createReadStream(t);i[Symbol.asyncIterator]||(i=i.pipe(new a)),yield*this._parseWorksheet(i,e),r()}}_emitEntry(e){"emit"===this.options.entries&&this.emit("entry",e)}async _parseRels(e){const t=new m;this.workbookRels=await t.parseStream(u(e))}async _parseWorkbook(e){this._emitEntry({type:"workbook"});const t=new f;await t.parseStream(u(e)),this.properties=t.map.workbookPr,this.model=t.model}async*_parseSharedStrings(e){switch(this._emitEntry({type:"shared-strings"}),this.options.sharedStrings){case"cache":this.sharedStrings=[];break;case"emit":break;default:return}let t=null,r=[],n=0,i=null;for await(const a of d(u(e)))for(const{eventType:e,value:o}of a)if("opentag"===e){const e=o;switch(e.name){case"b":i=i||{},i.bold=!0;break;case"charset":i=i||{},i.charset=parseInt(e.attributes.charset,10);break;case"color":i=i||{},i.color={},e.attributes.rgb&&(i.color.argb=e.attributes.argb),e.attributes.val&&(i.color.argb=e.attributes.val),e.attributes.theme&&(i.color.theme=e.attributes.theme);break;case"family":i=i||{},i.family=parseInt(e.attributes.val,10);break;case"i":i=i||{},i.italic=!0;break;case"outline":i=i||{},i.outline=!0;break;case"rFont":i=i||{},i.name=e.value;break;case"si":i=null,r=[],t=null;break;case"sz":i=i||{},i.size=parseInt(e.attributes.val,10);break;case"strike":break;case"t":t=null;break;case"u":i=i||{},i.underline=!0;break;case"vertAlign":i=i||{},i.vertAlign=e.attributes.val}}else if("text"===e)t=t?t+o:o;else if("closetag"===e){switch(o.name){case"r":r.push({font:i,text:t}),i=null,t=null;break;case"si":"cache"===this.options.sharedStrings?this.sharedStrings.push(r.length?{richText:r}:t):"emit"===this.options.sharedStrings&&(yield{index:n++,text:r.length?{richText:r}:t}),r=[],i=null,t=null}}}async _parseStyles(e){this._emitEntry({type:"styles"}),"cache"===this.options.styles&&(this.styles=new p,await this.styles.parseStream(u(e)))}*_parseWorksheet(e,t){this._emitEntry({type:"worksheet",id:t});const r=new g({workbook:this,id:t,iterator:e,options:this.options}),n=(this.workbookRels||[]).find((e=>e.Target===`worksheets/sheet${t}.xml`)),i=n&&(this.model.sheets||[]).find((e=>e.rId===n.Id));i&&(r.id=i.id,r.name=i.name,r.state=i.state),"emit"===this.options.worksheets&&(yield{eventType:"worksheet",value:r})}*_parseHyperlinks(e,t){this._emitEntry({type:"hyperlinks",id:t});const r=new _({workbook:this,id:t,iterator:e,options:this.options});"emit"===this.options.hyperlinks&&(yield{eventType:"hyperlinks",value:r})}}h.Options={worksheets:["emit","ignore"],sharedStrings:["cache","emit","ignore"],hyperlinks:["cache","emit","ignore"],styles:["cache","ignore"],entries:["emit","ignore"]},e.exports=h},81858:(e,t,r)=>{const n=r(57147),i=r(8036),a=r(25168),o=r(46405),s=r(35818),c=r(19810),l=r(16938),u=r(74117),d=r(56181),p=r(45461),f=r(78223),m=r(44769),g=r(73475),_=r(33575),h=r(20430);e.exports=class{constructor(e){e=e||{},this.created=e.created||new Date,this.modified=e.modified||this.created,this.creator=e.creator||"ExcelJS",this.lastModifiedBy=e.lastModifiedBy||"ExcelJS",this.lastPrinted=e.lastPrinted,this.useSharedStrings=e.useSharedStrings||!1,this.sharedStrings=new c,this.styles=e.useStyles?new s(!0):new s.Mock(!0),this._definedNames=new l,this._worksheets=[],this.views=[],this.zipOptions=e.zip,this.media=[],this.commentRefs=[],this.zip=i("zip",this.zipOptions),e.stream?this.stream=e.stream:e.filename?this.stream=n.createWriteStream(e.filename):this.stream=new a,this.zip.pipe(this.stream),this.promise=Promise.all([this.addThemes(),this.addOfficeRels()])}get definedNames(){return this._definedNames}_openStream(e){const t=new a({bufSize:65536,batch:!0});return this.zip.append(t,{name:e}),t.on("finish",(()=>{t.emit("zipped")})),t}_commitWorksheets(){const e=this._worksheets.map((function(e){return e.committed?Promise.resolve():new Promise((t=>{e.stream.on("zipped",(()=>{t()})),e.commit()}))}));return e.length?Promise.all(e):Promise.resolve()}async commit(){return await this.promise,await this.addMedia(),await this._commitWorksheets(),await Promise.all([this.addContentTypes(),this.addApp(),this.addCore(),this.addSharedStrings(),this.addStyles(),this.addWorkbookRels()]),await this.addWorkbook(),this._finalize()}get nextId(){let e;for(e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addImage(e){const t=this.media.length,r=Object.assign({},e,{type:"image",name:`image${t}.${e.extension}`});return this.media.push(r),t}getImage(e){return this.media[e]}addWorksheet(e,t){const r=void 0!==(t=t||{}).useSharedStrings?t.useSharedStrings:this.useSharedStrings;t.tabColor&&(console.trace("tabColor option has moved to { properties: tabColor: {...} }"),t.properties=Object.assign({tabColor:t.tabColor},t.properties));const n=this.nextId,i=new _({id:n,name:e=e||`sheet${n}`,workbook:this,useSharedStrings:r,properties:t.properties,state:t.state,pageSetup:t.pageSetup,views:t.views,autoFilter:t.autoFilter,headerFooter:t.headerFooter});return this._worksheets[n]=i,i}getWorksheet(e){return void 0===e?this._worksheets.find((()=>!0)):"number"==typeof e?this._worksheets[e]:"string"==typeof e?this._worksheets.find((t=>t&&t.name===e)):void 0}addStyles(){return new Promise((e=>{this.zip.append(this.styles.xml,{name:"xl/styles.xml"}),e()}))}addThemes(){return new Promise((e=>{this.zip.append(h,{name:"xl/theme/theme1.xml"}),e()}))}addOfficeRels(){return new Promise((e=>{const t=(new d).toXml([{Id:"rId1",Type:o.OfficeDocument,Target:"xl/workbook.xml"},{Id:"rId2",Type:o.CoreProperties,Target:"docProps/core.xml"},{Id:"rId3",Type:o.ExtenderProperties,Target:"docProps/app.xml"}]);this.zip.append(t,{name:"/_rels/.rels"}),e()}))}addContentTypes(){return new Promise((e=>{const t={worksheets:this._worksheets.filter(Boolean),sharedStrings:this.sharedStrings,commentRefs:this.commentRefs,media:this.media},r=(new p).toXml(t);this.zip.append(r,{name:"[Content_Types].xml"}),e()}))}addMedia(){return Promise.all(this.media.map((e=>{if("image"===e.type){const t=`xl/media/${e.name}`;if(e.filename)return this.zip.file(e.filename,{name:t});if(e.buffer)return this.zip.append(e.buffer,{name:t});if(e.base64){const r=e.base64,n=r.substring(r.indexOf(",")+1);return this.zip.append(n,{name:t,base64:!0})}}throw new Error("Unsupported media")})))}addApp(){return new Promise((e=>{const t={worksheets:this._worksheets.filter(Boolean)},r=(new f).toXml(t);this.zip.append(r,{name:"docProps/app.xml"}),e()}))}addCore(){return new Promise((e=>{const t=(new u).toXml(this);this.zip.append(t,{name:"docProps/core.xml"}),e()}))}addSharedStrings(){return this.sharedStrings.count?new Promise((e=>{const t=(new g).toXml(this.sharedStrings);this.zip.append(t,{name:"/xl/sharedStrings.xml"}),e()})):Promise.resolve()}addWorkbookRels(){let e=1;const t=[{Id:"rId"+e++,Type:o.Styles,Target:"styles.xml"},{Id:"rId"+e++,Type:o.Theme,Target:"theme/theme1.xml"}];return this.sharedStrings.count&&t.push({Id:"rId"+e++,Type:o.SharedStrings,Target:"sharedStrings.xml"}),this._worksheets.forEach((r=>{r&&(r.rId="rId"+e++,t.push({Id:r.rId,Type:o.Worksheet,Target:`worksheets/sheet${r.id}.xml`}))})),new Promise((e=>{const r=(new d).toXml(t);this.zip.append(r,{name:"/xl/_rels/workbook.xml.rels"}),e()}))}addWorkbook(){const{zip:e}=this,t={worksheets:this._worksheets.filter(Boolean),definedNames:this._definedNames.model,views:this.views,properties:{},calcProperties:{}};return new Promise((r=>{const n=new m;n.prepare(t),e.append(n.toXml(t),{name:"/xl/workbook.xml"}),r()}))}_finalize(){return new Promise(((e,t)=>{this.stream.on("error",t),this.stream.on("finish",(()=>{e(this)})),this.zip.on("error",t),this.zip.finalize()}))}}},7663:(e,t,r)=>{const{EventEmitter:n}=r(82361),i=r(23041),a=r(15797),o=r(86144),s=r(48376),c=r(47765),l=r(67211),u=r(14538);class d extends n{constructor({workbook:e,id:t,iterator:r,options:n}){super(),this.workbook=e,this.id=t,this.iterator=r,this.options=n||{},this.name=`Sheet${this.id}`,this._columns=null,this._keys={},this._dimensions=new c}destroy(){throw new Error("Invalid Operation: destroy")}get dimensions(){return this._dimensions}get columns(){return this._columns}getColumn(e){if("string"==typeof e){const t=this._keys[e];if(t)return t;e=s.l2n(e)}if(this._columns||(this._columns=[]),e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new u(this,t++))}return this._columns[e-1]}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){a.each(this._keys,e)}async read(){try{for await(const e of this.parse())for(const{eventType:t,value:r}of e)this.emit(t,r);this.emit("finished")}catch(e){this.emit("error",e)}}async*[Symbol.asyncIterator](){for await(const e of this.parse())for(const{eventType:t,value:r}of e)"row"===t&&(yield r)}async*parse(){const{iterator:e,options:t}=this;let r=!1,n=!1,a=null;if("emit"===t.worksheets)r=!0;switch(t.hyperlinks){case"emit":n=!0;break;case"cache":this.hyperlinks=a={}}if(!r&&!n&&!a)return;const{sharedStrings:c,styles:d,properties:p}=this.workbook;let f=!1,m=!1,g=!1,_=null,h=null,y=null,v=null;for await(const t of i(e)){const e=[];for(const{eventType:i,value:b}of t)if("opentag"===i){const t=b;if(r)switch(t.name){case"cols":f=!0,_=[];break;case"sheetData":m=!0;break;case"col":f&&_.push({min:parseInt(t.attributes.min,10),max:parseInt(t.attributes.max,10),width:parseFloat(t.attributes.width),styleId:parseInt(t.attributes.style||"0",10)});break;case"row":if(m){const e=parseInt(t.attributes.r,10);if(h=new l(this,e),t.attributes.ht&&(h.height=parseFloat(t.attributes.ht)),t.attributes.s){const e=parseInt(t.attributes.s,10),r=d.getStyleModel(e);r&&(h.style=r)}}break;case"c":h&&(y={ref:t.attributes.r,s:parseInt(t.attributes.s,10),t:t.attributes.t});break;case"f":y&&(v=y.f={text:""});break;case"v":y&&(v=y.v={text:""})}if(n||a)switch(t.name){case"hyperlinks":g=!0;break;case"hyperlink":if(g){const r={ref:t.attributes.ref,rId:t.attributes["r:id"]};n?e.push({eventType:"hyperlink",value:r}):a[r.ref]=r}}}else if("text"===i)r&&v&&(v.text+=b);else if("closetag"===i){const t=b;if(r)switch(t.name){case"cols":f=!1,this._columns=u.fromModel(_);break;case"sheetData":m=!1;break;case"row":this._dimensions.expandRow(h),e.push({eventType:"row",value:h}),h=null;break;case"c":if(h&&y){const e=s.decodeAddress(y.ref),t=h.getCell(e.col);if(y.s){const e=d.getStyleModel(y.s);e&&(t.style=e)}if(y.f){const e={formula:y.f.text};y.v&&("str"===y.t?e.result=o.xmlDecode(y.v.text):e.result=parseFloat(y.v.text)),t.value=e}else if(y.v)switch(y.t){case"s":{const e=parseInt(y.v.text,10);t.value=c?c[e]:{sharedString:e};break}case"str":t.value=o.xmlDecode(y.v.text);break;case"e":t.value={error:y.v.text};break;case"b":t.value=0!==parseInt(y.v.text,10);break;default:o.isDateFmt(t.numFmt)?t.value=o.excelToDate(parseFloat(y.v.text),p.model&&p.model.date1904):t.value=parseFloat(y.v.text)}if(a){const e=a[y.ref];e&&(t.text=t.value,t.value=void 0,t.hyperlink=e)}y=null}}if((n||a)&&"hyperlinks"===t.name)g=!1}e.length>0&&(yield e)}}}e.exports=d},33575:(e,t,r)=>{const n=r(15797),i=r(46405),a=r(48376),o=r(3539),s=r(47765),c=r(63821),l=r(67211),u=r(14538),d=r(96656),p=r(283),f=r(8881),m=new c,g=r(750),_=r(83068),h=r(25262),y=r(43435),v=r(65165),b=r(87730),k=r(30221),x=r(61632),E=r(4248),S=r(27131),D=r(98350),w=r(37773),T=r(33210),C=r(62247),A=r(58466),N=r(8821),P={dataValidations:new _,sheetProperties:new h,sheetFormatProperties:new y,columns:new g({tag:"cols",length:!1,childXform:new v}),row:new b,hyperlinks:new g({tag:"hyperlinks",length:!1,childXform:new k}),sheetViews:new g({tag:"sheetViews",length:!1,childXform:new x}),sheetProtection:new E,pageMargins:new S,pageSeteup:new D,autoFilter:new w,picture:new T,conditionalFormattings:new C,headerFooter:new A,rowBreaks:new N};e.exports=class{constructor(e){this.id=e.id,this.name=e.name||`Sheet${this.id}`,this.state=e.state||"visible",this._rows=[],this._columns=null,this._keys={},this._merges=[],this._merges.add=function(){},this._sheetRelsWriter=new d(e),this._sheetCommentsWriter=new p(this,this._sheetRelsWriter,e),this._dimensions=new s,this._rowZero=1,this.committed=!1,this.dataValidations=new f,this._formulae={},this._siFormulae=0,this.conditionalFormatting=[],this.rowBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,dyDescent:55,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:"portrait",horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!(!e.pageSetup||!e.pageSetup.fitToWidth&&!e.pageSetup.fitToHeight||e.pageSetup.scale),pageOrder:"downThenOver",blackAndWhite:!1,draft:!1,cellComments:"None",errors:"displayed",scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.useSharedStrings=e.useSharedStrings||!1,this._workbook=e.workbook,this.hasComments=!1,this._views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this._writeOpenWorksheet(),this.startedData=!1}get workbook(){return this._workbook}get stream(){return this._stream||(this._stream=this._workbook._openStream(`/xl/worksheets/sheet${this.id}.xml`),this._stream.pause()),this._stream}destroy(){throw new Error("Invalid Operation: destroy")}commit(){this.committed||(this._rows.forEach((e=>{e&&this._writeRow(e)})),this._rows=null,this.startedData||this._writeOpenSheetData(),this._writeCloseSheetData(),this._writeAutoFilter(),this._writeMergeCells(),this._writeHyperlinks(),this._writeConditionalFormatting(),this._writeDataValidations(),this._writeSheetProtection(),this._writePageMargins(),this._writePageSetup(),this._writeBackground(),this._writeHeaderFooter(),this._writeRowBreaks(),this._writeLegacyData(),this._writeCloseWorksheet(),this.stream.end(),this._sheetCommentsWriter.commit(),this._sheetRelsWriter.commit(),this.committed=!0)}get dimensions(){return this._dimensions}get views(){return this._views}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce(((e,t)=>{const r=(t.header?1:t.headers&&t.headers.length)||0;return Math.max(e,r)}),0);let t=1;const r=this._columns=[];e.forEach((e=>{const n=new u(this,t++,!1);r.push(n),n.defn=e}))}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){n.each(this._keys,e)}getColumn(e){if("string"==typeof e){const t=this._keys[e];if(t)return t;e=a.l2n(e)}if(this._columns||(this._columns=[]),e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new u(this,t++))}return this._columns[e-1]}get _nextRow(){return this._rowZero+this._rows.length}eachRow(e,t){if(t||(t=e,e=void 0),e&&e.includeEmpty){const e=this._nextRow;for(let r=this._rowZero;r<e;r++)t(this.getRow(r),r)}else this._rows.forEach((e=>{e.hasValues&&t(e,e.number)}))}_commitRow(e){let t=!1;for(;this._rows.length&&!t;){const r=this._rows.shift();this._rowZero++,r&&(this._writeRow(r),t=r.number===e.number,this._rowZero=r.number+1)}}get lastRow(){if(this._rows.length)return this._rows[this._rows.length-1]}findRow(e){const t=e-this._rowZero;return this._rows[t]}getRow(e){const t=e-this._rowZero;if(t<0)throw new Error("Out of bounds: this row has been committed");let r=this._rows[t];return r||(this._rows[t]=r=new l(this,e)),r}addRow(e){const t=new l(this,this._nextRow);return this._rows[t.number-this._rowZero]=t,t.values=e,t}findCell(e,t){const r=a.getAddress(e,t),n=this.findRow(r.row);return n?n.findCell(r.column):void 0}getCell(e,t){const r=a.getAddress(e,t);return this.getRow(r.row).getCellEx(r)}mergeCells(...e){const t=new s(e);this._merges.forEach((e=>{if(e.intersects(t))throw new Error("Cannot merge already merged cells")}));const r=this.getCell(t.top,t.left);for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++)(e>t.top||n>t.left)&&this.getCell(e,n).merge(r);this._merges.push(t)}addConditionalFormatting(e){this.conditionalFormatting.push(e)}removeConditionalFormatting(e){"number"==typeof e?this.conditionalFormatting.splice(e,1):this.conditionalFormatting=e instanceof Function?this.conditionalFormatting.filter(e):[]}addBackgroundImage(e){this._background={imageId:e}}getBackgroundImageId(){return this._background&&this._background.imageId}protect(e,t){return new Promise((r=>{this.sheetProtection={sheet:!0},t&&"spinCount"in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName="SHA-512",this.sheetProtection.saltValue=o.randomBytes(16).toString("base64"),this.sheetProtection.spinCount=t&&"spinCount"in t?t.spinCount:1e5,this.sheetProtection.hashValue=o.convertPasswordToHash(e,"SHA512",this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&"spinCount"in t&&delete this.sheetProtection.spinCount),r()}))}unprotect(){this.sheetProtection=null}_write(e){m.reset(),m.addText(e),this.stream.write(m)}_writeSheetProperties(e,t,r){const n={outlineProperties:t&&t.outlineProperties,tabColor:t&&t.tabColor,pageSetup:r&&r.fitToPage?{fitToPage:r.fitToPage}:void 0};e.addText(P.sheetProperties.toXml(n))}_writeSheetFormatProperties(e,t){const r=t?{defaultRowHeight:t.defaultRowHeight,dyDescent:t.dyDescent,outlineLevelCol:t.outlineLevelCol,outlineLevelRow:t.outlineLevelRow}:void 0;t.defaultColWidth&&(r.defaultColWidth=t.defaultColWidth),e.addText(P.sheetFormatProperties.toXml(r))}_writeOpenWorksheet(){m.reset(),m.addText('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>'),m.addText('<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">'),this._writeSheetProperties(m,this.properties,this.pageSetup),m.addText(P.sheetViews.toXml(this.views)),this._writeSheetFormatProperties(m,this.properties),this.stream.write(m)}_writeColumns(){const e=u.toModel(this.columns);e&&(P.columns.prepare(e,{styles:this._workbook.styles}),this.stream.write(P.columns.toXml(e)))}_writeOpenSheetData(){this._write("<sheetData>")}_writeRow(e){if(this.startedData||(this._writeColumns(),this._writeOpenSheetData(),this.startedData=!0),e.hasValues||e.height){const{model:t}=e,r={styles:this._workbook.styles,sharedStrings:this.useSharedStrings?this._workbook.sharedStrings:void 0,hyperlinks:this._sheetRelsWriter.hyperlinksProxy,merges:this._merges,formulae:this._formulae,siFormulae:this._siFormulae,comments:[]};P.row.prepare(t,r),this.stream.write(P.row.toXml(t)),r.comments.length&&(this.hasComments=!0,this._sheetCommentsWriter.addComments(r.comments))}}_writeCloseSheetData(){this._write("</sheetData>")}_writeMergeCells(){this._merges.length&&(m.reset(),m.addText(`<mergeCells count="${this._merges.length}">`),this._merges.forEach((e=>{m.addText(`<mergeCell ref="${e}"/>`)})),m.addText("</mergeCells>"),this.stream.write(m))}_writeHyperlinks(){this.stream.write(P.hyperlinks.toXml(this._sheetRelsWriter._hyperlinks))}_writeConditionalFormatting(){const e={styles:this._workbook.styles};P.conditionalFormattings.prepare(this.conditionalFormatting,e),this.stream.write(P.conditionalFormattings.toXml(this.conditionalFormatting))}_writeRowBreaks(){this.stream.write(P.rowBreaks.toXml(this.rowBreaks))}_writeDataValidations(){this.stream.write(P.dataValidations.toXml(this.dataValidations.model))}_writeSheetProtection(){this.stream.write(P.sheetProtection.toXml(this.sheetProtection))}_writePageMargins(){this.stream.write(P.pageMargins.toXml(this.pageSetup.margins))}_writePageSetup(){this.stream.write(P.pageSeteup.toXml(this.pageSetup))}_writeHeaderFooter(){this.stream.write(P.headerFooter.toXml(this.headerFooter))}_writeAutoFilter(){this.stream.write(P.autoFilter.toXml(this.autoFilter))}_writeBackground(){if(this._background){if(void 0!==this._background.imageId){const e=this._workbook.getImage(this._background.imageId),t=this._sheetRelsWriter.addMedia({Target:`../media/${e.name}`,Type:i.Image});this._background={...this._background,rId:t}}this.stream.write(P.picture.toXml({rId:this._background.rId}))}}_writeLegacyData(){this.hasComments&&(m.reset(),m.addText(`<legacyDrawing r:id="${this._sheetCommentsWriter.vmlRelId}"/>`),this.stream.write(m))}_writeDimensions(){}_writeCloseWorksheet(){this._write("</worksheet>")}}},83101:(e,t)=>{const r="undefined"==typeof TextDecoder?null:new TextDecoder("utf-8");t.bufferToString=function(e){return"string"==typeof e?e:r?r.decode(e):e.toString()}},23697:(e,t,r)=>{const n="undefined"==typeof TextEncoder?null:new TextEncoder("utf-8"),{Buffer:i}=r(14300);t.stringToBuffer=function(e){return"string"!=typeof e?e:n?i.from(n.encode(e).buffer):i.from(e)}},73519:(e,t,r)=>{const n=r(15797),i=r(48376);e.exports=class{constructor(e){this.template=e,this.sheets={}}addCell(e){this.addCellEx(i.decodeEx(e))}getCell(e){return this.findCellEx(i.decodeEx(e),!0)}findCell(e){return this.findCellEx(i.decodeEx(e),!1)}findCellAt(e,t,r){const n=this.sheets[e],i=n&&n[t];return i&&i[r]}addCellEx(e){if(e.top)for(let t=e.top;t<=e.bottom;t++)for(let r=e.left;r<=e.right;r++)this.getCellAt(e.sheetName,t,r);else this.findCellEx(e,!0)}getCellEx(e){return this.findCellEx(e,!0)}findCellEx(e,t){const r=this.findSheet(e,t),n=this.findSheetRow(r,e,t);return this.findRowCell(n,e,t)}getCellAt(e,t,r){const n=this.sheets[e]||(this.sheets[e]=[]),a=n[t]||(n[t]=[]);return a[r]||(a[r]={sheetName:e,address:i.n2l(r)+t,row:t,col:r})}removeCellEx(e){const t=this.findSheet(e);if(!t)return;const r=this.findSheetRow(t,e);r&&delete r[e.col]}forEachInSheet(e,t){const r=this.sheets[e];r&&r.forEach(((e,r)=>{e&&e.forEach(((e,n)=>{e&&t(e,r,n)}))}))}forEach(e){n.each(this.sheets,((t,r)=>{this.forEachInSheet(r,e)}))}map(e){const t=[];return this.forEach((r=>{t.push(e(r))})),t}findSheet(e,t){const r=e.sheetName;return this.sheets[r]?this.sheets[r]:t?this.sheets[r]=[]:void 0}findSheetRow(e,t,r){const{row:n}=t;return e&&e[n]?e[n]:r?e[n]=[]:void 0}findRowCell(e,t,r){const{col:n}=t;return e&&e[n]?e[n]:r?e[n]=this.template?Object.assign(t,JSON.parse(JSON.stringify(this.template))):t:void 0}spliceRows(e,t,r,n){const i=this.sheets[e];if(i){const e=[];for(let t=0;t<n;t++)e.push([]);i.splice(t,r,...e)}}spliceColumns(e,t,r,i){const a=this.sheets[e];if(a){const e=[];for(let t=0;t<i;t++)e.push(null);n.each(a,(n=>{n.splice(t,r,...e)}))}}}},48376:e=>{const t=/^[A-Z]+\d+$/,r={_dictionary:["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"],_l2nFill:0,_l2n:{},_n2l:[],_level:e=>e<=26?1:e<=676?2:3,_fill(e){let t,r,n,i,a,o=1;if(e>=4)throw new Error("Out of bounds. Excel supports columns from 1 to 16384");if(this._l2nFill<1&&e>=1){for(;o<=26;)t=this._dictionary[o-1],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=1}if(this._l2nFill<2&&e>=2){for(o=27;o<=702;)r=o-27,n=r%26,i=Math.floor(r/26),t=this._dictionary[i]+this._dictionary[n],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=2}if(this._l2nFill<3&&e>=3){for(o=703;o<=16384;)r=o-703,n=r%26,i=Math.floor(r/26)%26,a=Math.floor(r/676),t=this._dictionary[a]+this._dictionary[i]+this._dictionary[n],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=3}},l2n(e){if(this._l2n[e]||this._fill(e.length),!this._l2n[e])throw new Error(`Out of bounds. Invalid column letter: ${e}`);return this._l2n[e]},n2l(e){if(e<1||e>16384)throw new Error(`${e} is out of bounds. Excel supports columns from 1 to 16384`);return this._n2l[e]||this._fill(this._level(e)),this._n2l[e]},_hash:{},validateAddress(e){if(!t.test(e))throw new Error(`Invalid Address: ${e}`);return!0},decodeAddress(e){const t=e.length<5&&this._hash[e];if(t)return t;let r=!1,n="",i=0,a=!1,o="",s=0;for(let t,c=0;c<e.length;c++)if(t=e.charCodeAt(c),!a&&t>=65&&t<=90)r=!0,n+=e[c],i=26*i+t-64;else if(t>=48&&t<=57)a=!0,o+=e[c],s=10*s+t-48;else if(a&&r&&36!==t)break;if(r){if(i>16384)throw new Error(`Out of bounds. Invalid column letter: ${n}`)}else i=void 0;a||(s=void 0);const c={address:e=n+o,col:i,row:s,$col$row:`$${n}$${o}`};return i<=100&&s<=100&&(this._hash[e]=c,this._hash[c.$col$row]=c),c},getAddress(e,t){if(t){const r=this.n2l(t)+e;return this.decodeAddress(r)}return this.decodeAddress(e)},decode(e){const t=e.split(":");if(2===t.length){const e=this.decodeAddress(t[0]),r=this.decodeAddress(t[1]),n={top:Math.min(e.row,r.row),left:Math.min(e.col,r.col),bottom:Math.max(e.row,r.row),right:Math.max(e.col,r.col)};return n.tl=this.n2l(n.left)+n.top,n.br=this.n2l(n.right)+n.bottom,n.dimensions=`${n.tl}:${n.br}`,n}return this.decodeAddress(e)},decodeEx(e){const t=e.match(/(?:(?:(?:'((?:[^']|'')*)')|([^'^ !]*))!)?(.*)/),r=t[1]||t[2],n=t[3],i=n.split(":");if(i.length>1){let e=this.decodeAddress(i[0]),t=this.decodeAddress(i[1]);const n=Math.min(e.row,t.row),a=Math.min(e.col,t.col),o=Math.max(e.row,t.row),s=Math.max(e.col,t.col);return e=this.n2l(a)+n,t=this.n2l(s)+o,{top:n,left:a,bottom:o,right:s,sheetName:r,tl:{address:e,col:a,row:n,$col$row:`$${this.n2l(a)}$${n}`,sheetName:r},br:{address:t,col:s,row:o,$col$row:`$${this.n2l(s)}$${o}`,sheetName:r},dimensions:`${e}:${t}`}}if(n.startsWith("#"))return r?{sheetName:r,error:n}:{error:n};const a=this.decodeAddress(n);return r?{sheetName:r,...a}:a},encodeAddress:(e,t)=>r.n2l(t)+e,encode(){switch(arguments.length){case 2:return r.encodeAddress(arguments[0],arguments[1]);case 4:return`${r.encodeAddress(arguments[0],arguments[1])}:${r.encodeAddress(arguments[2],arguments[3])}`;default:throw new Error("Can only encode with 2 or 4 arguments")}},inRange(e,t){const[r,n,,i,a]=e,[o,s]=t;return o>=r&&o<=i&&s>=n&&s<=a}};e.exports=r},3539:(e,t,r)=>{"use strict";const n=r(6113),i={hash(e,...t){const r=n.createHash(e);return r.update(Buffer.concat(t)),r.digest()},convertPasswordToHash(e,t,r,i){t=t.toLowerCase();if(n.getHashes().indexOf(t)<0)throw new Error(`Hash algorithm '${t}' not supported!`);const a=Buffer.from(e,"utf16le");let o=this.hash(t,Buffer.from(r,"base64"),a);for(let e=0;e<i;e++){const r=Buffer.alloc(4);r.writeUInt32LE(e,0),o=this.hash(t,o,r)}return o.toString("base64")},randomBytes:e=>n.randomBytes(e)};e.exports=i},57120:e=>{function t(e,t){return new Promise((r=>{let n=!1;const i=()=>{n||(n=!0,e.removeListener(t,i),r())};e.addListener(t,i)}))}e.exports=async function*(e){const r=[];let n;e.on("data",(e=>r.push(e)));const i=new Promise((e=>n=e));let a=!1;e.on("end",(()=>{a=!0,n()}));let o=!1;for(e.on("error",(e=>{o=e,n()}));!a||r.length>0;){if(0===r.length)e.resume(),await Promise.race([t(e,"data"),i]);else{e.pause();const t=r.shift();yield t}if(o)throw o}n()}},23041:(e,t,r)=>{const{SaxesParser:n}=r(31285),{PassThrough:i}=r(11451),{bufferToString:a}=r(83101);e.exports=async function*(e){e.pipe&&!e[Symbol.asyncIterator]&&(e=e.pipe(new i));const t=new n;let r;t.on("error",(e=>{r=e}));let o=[];t.on("opentag",(e=>o.push({eventType:"opentag",value:e}))),t.on("text",(e=>o.push({eventType:"text",value:e}))),t.on("closetag",(e=>o.push({eventType:"closetag",value:e})));for await(const n of e){if(t.write(a(n)),r)throw r;yield o,o=[]}}},97426:(e,t,r)=>{const n=r(48376),i=/(([a-z_\-0-9]*)!)?([a-z0-9_$]{2,})([(])?/gi,a=/^([$])?([a-z]+)([$])?([1-9][0-9]*)$/i;e.exports={slideFormula:function(e,t,r){const o=n.decode(t),s=n.decode(r);return e.replace(i,((e,t,r,i,c)=>{if(c)return e;const l=a.exec(i);if(l){const r=l[1],i=l[2].toUpperCase(),a=l[3],c=l[4];if(i.length>3||3===i.length&&i>"XFD")return e;let u=n.l2n(i),d=parseInt(c,10);r||(u+=s.col-o.col),a||(d+=s.row-o.row);return(t||"")+(r||"")+n.n2l(u)+(a||"")+d}return e}))}}},19810:e=>{e.exports=class{constructor(){this._values=[],this._totalRefs=0,this._hash=Object.create(null)}get count(){return this._values.length}get values(){return this._values}get totalRefs(){return this._totalRefs}getString(e){return this._values[e]}add(e){let t=this._hash[e];return void 0===t&&(t=this._hash[e]=this._values.length,this._values.push(e)),this._totalRefs++,t}}},25168:(e,t,r)=>{const n=r(11451),i=r(86144),a=r(63821);class o{constructor(e,t){this._data=e,this._encoding=t}get length(){return this.toBuffer().length}copy(e,t,r,n){return this.toBuffer().copy(e,t,r,n)}toBuffer(){return this._buffer||(this._buffer=Buffer.from(this._data,this._encoding)),this._buffer}}class s{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,r,n){return this._data._buf.copy(e,t,r,n)}toBuffer(){return this._data.toBuffer()}}class c{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,r,n){this._data.copy(e,t,r,n)}toBuffer(){return this._data}}class l{constructor(e){this.size=e,this.buffer=Buffer.alloc(e),this.iRead=0,this.iWrite=0}toBuffer(){if(0===this.iRead&&this.iWrite===this.size)return this.buffer;const e=Buffer.alloc(this.iWrite-this.iRead);return this.buffer.copy(e,0,this.iRead,this.iWrite),e}get length(){return this.iWrite-this.iRead}get eod(){return this.iRead===this.iWrite}get full(){return this.iWrite===this.size}read(e){let t;return 0===e?null:void 0===e||e>=this.length?(t=this.toBuffer(),this.iRead=this.iWrite,t):(t=Buffer.alloc(e),this.buffer.copy(t,0,this.iRead,e),this.iRead+=e,t)}write(e,t,r){const n=Math.min(r,this.size-this.iWrite);return e.copy(this.buffer,this.iWrite,t,t+n),this.iWrite+=n,n}}const u=function(e){e=e||{},this.bufSize=e.bufSize||1048576,this.buffers=[],this.batch=e.batch||!1,this.corked=!1,this.inPos=0,this.outPos=0,this.pipes=[],this.paused=!1,this.encoding=null};i.inherits(u,n.Duplex,{toBuffer(){switch(this.buffers.length){case 0:return null;case 1:return this.buffers[0].toBuffer();default:return Buffer.concat(this.buffers.map((e=>e.toBuffer())))}},_getWritableBuffer(){if(this.buffers.length){const e=this.buffers[this.buffers.length-1];if(!e.full)return e}const e=new l(this.bufSize);return this.buffers.push(e),e},async _pipe(e){await Promise.all(this.pipes.map((function(t){return new Promise((r=>{t.write(e.toBuffer(),(()=>{r()}))}))})))},_writeToBuffers(e){let t=0;const r=e.length;for(;t<r;){t+=this._getWritableBuffer().write(e,t,r-t)}},async write(e,t,r){let n;if(t instanceof Function&&(r=t,t="utf8"),r=r||i.nop,e instanceof a)n=new s(e);else if(e instanceof Buffer)n=new c(e);else{if(!("string"==typeof e||e instanceof String||e instanceof ArrayBuffer))throw new Error("Chunk must be one of type String, Buffer or StringBuf.");n=new o(e,t)}if(this.pipes.length)if(this.batch)for(this._writeToBuffers(n);!this.corked&&this.buffers.length>1;)this._pipe(this.buffers.shift());else this.corked?(this._writeToBuffers(n),process.nextTick(r)):(await this._pipe(n),r());else this.paused||this.emit("data",n.toBuffer()),this._writeToBuffers(n),this.emit("readable");return!0},cork(){this.corked=!0},_flush(){if(this.pipes.length)for(;this.buffers.length;)this._pipe(this.buffers.shift())},uncork(){this.corked=!1,this._flush()},end(e,t,r){const n=e=>{e?r(e):(this._flush(),this.pipes.forEach((e=>{e.end()})),this.emit("finish"))};e?this.write(e,t,n):n()},read(e){let t;if(e){for(t=[];e&&this.buffers.length&&!this.buffers[0].eod;){const r=this.buffers[0],n=r.read(e);e-=n.length,t.push(n),r.eod&&r.full&&this.buffers.shift()}return Buffer.concat(t)}return t=this.buffers.map((e=>e.toBuffer())).filter(Boolean),this.buffers=[],Buffer.concat(t)},setEncoding(e){this.encoding=e},pause(){this.paused=!0},resume(){this.paused=!1},isPaused(){return!!this.paused},pipe(e){this.pipes.push(e),!this.paused&&this.buffers.length&&this.end()},unpipe(e){this.pipes=this.pipes.filter((t=>t!==e))},unshift(){throw new Error("Not Implemented")},wrap(){throw new Error("Not Implemented")}}),e.exports=u},63821:e=>{e.exports=class{constructor(e){this._buf=Buffer.alloc(e&&e.size||16384),this._encoding=e&&e.encoding||"utf8",this._inPos=0,this._buffer=void 0}get length(){return this._inPos}get capacity(){return this._buf.length}get buffer(){return this._buf}toBuffer(){return this._buffer||(this._buffer=Buffer.alloc(this.length),this._buf.copy(this._buffer,0,0,this.length)),this._buffer}reset(e){e=e||0,this._buffer=void 0,this._inPos=e}_grow(e){let t=2*this._buf.length;for(;t<e;)t*=2;const r=Buffer.alloc(t);this._buf.copy(r,0),this._buf=r}addText(e){this._buffer=void 0;let t=this._inPos+this._buf.write(e,this._inPos,this._encoding);for(;t>=this._buf.length-4;)this._grow(this._inPos+e.length),t=this._inPos+this._buf.write(e,this._inPos,this._encoding);this._inPos=t}addStringBuf(e){e.length&&(this._buffer=void 0,this.length+e.length>this.capacity&&this._grow(this.length+e.length),e._buf.copy(this._buf,this._inPos,0,e.length),this._inPos+=e.length)}}},15797:e=>{const{toString:t}=Object.prototype,r=/["&<>]/,n={each:function(e,t){e&&(Array.isArray(e)?e.forEach(t):Object.keys(e).forEach((r=>{t(e[r],r)})))},some:function(e,t){return!!e&&(Array.isArray(e)?e.some(t):Object.keys(e).some((r=>t(e[r],r))))},every:function(e,t){return!e||(Array.isArray(e)?e.every(t):Object.keys(e).every((r=>t(e[r],r))))},map:function(e,t){return e?Array.isArray(e)?e.map(t):Object.keys(e).map((r=>t(e[r],r))):[]},keyBy:(e,t)=>e.reduce(((e,r)=>(e[r[t]]=r,e)),{}),isEqual:function(e,t){const r=typeof e,i=typeof t,a=Array.isArray(e),o=Array.isArray(t);return r===i&&("object"==typeof e?a||o?!(!a||!o)&&(e.length===t.length&&e.every(((e,r)=>{const i=t[r];return n.isEqual(e,i)}))):n.every(e,((e,r)=>{const i=t[r];return n.isEqual(e,i)})):e===t)},escapeHtml(e){const t=r.exec(e);if(!t)return e;let n="",i="",a=0,o=t.index;for(;o<e.length;o++){switch(e.charAt(o)){case'"':i=""";break;case"&":i="&";break;case"'":i="'";break;case"<":i="<";break;case">":i=">";break;default:continue}a!==o&&(n+=e.substring(a,o)),a=o+1,n+=i}return a!==o?n+e.substring(a,o):n},strcmp:(e,t)=>e<t?-1:e>t?1:0,isUndefined:e=>"[object Undefined]"===t.call(e),isObject:e=>"[object Object]"===t.call(e),deepMerge(){const e=arguments[0]||{},{length:t}=arguments;let r,i,a;function o(t,o){r=e[o],a=Array.isArray(t),n.isObject(t)||a?(a?(a=!1,i=r&&Array.isArray(r)?r:[]):i=r&&n.isObject(r)?r:{},e[o]=n.deepMerge(i,t)):n.isUndefined(t)||(e[o]=t)}for(let e=0;e<t;e++)n.each(arguments[e],o);return e}};e.exports=n},86144:(e,t,r)=>{const n=r(57147),i=/[<>&'"\x7F\x00-\x08\x0B-\x0C\x0E-\x1F]/,a={nop(){},promiseImmediate:e=>new Promise((t=>{global.setImmediate?setImmediate((()=>{t(e)})):setTimeout((()=>{t(e)}),1)})),inherits:function(e,t,r,n){e.super_=t,n||(n=r,r=null),r&&Object.keys(r).forEach((t=>{Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}));const i={constructor:{value:e,enumerable:!1,writable:!1,configurable:!0}};n&&Object.keys(n).forEach((e=>{i[e]=Object.getOwnPropertyDescriptor(n,e)})),e.prototype=Object.create(t.prototype,i)},dateToExcel:(e,t)=>25569+e.getTime()/864e5-(t?1462:0),excelToDate(e,t){const r=Math.round(24*(e-25569+(t?1462:0))*3600*1e3);return new Date(r)},parsePath(e){const t=e.lastIndexOf("/");return{path:e.substring(0,t),name:e.substring(t+1)}},getRelsPath(e){const t=a.parsePath(e);return`${t.path}/_rels/${t.name}.rels`},xmlEncode(e){const t=i.exec(e);if(!t)return e;let r="",n="",a=0,o=t.index;for(;o<e.length;o++){const t=e.charCodeAt(o);switch(t){case 34:n=""";break;case 38:n="&";break;case 39:n="'";break;case 60:n="<";break;case 62:n=">";break;case 127:n="";break;default:if(t<=31&&(t<=8||t>=11&&13!==t)){n="";break}continue}a!==o&&(r+=e.substring(a,o)),a=o+1,n&&(r+=n)}return a!==o?r+e.substring(a,o):r},xmlDecode:e=>e.replace(/&([a-z]*);/g,(e=>{switch(e){case"<":return"<";case">":return">";case"&":return"&";case"'":return"'";case""":return'"';default:return e}})),validInt(e){const t=parseInt(e,10);return Number.isNaN(t)?0:t},isDateFmt(e){if(!e)return!1;return null!==(e=(e=e.replace(/\[[^\]]*]/g,"")).replace(/"[^"]*"/g,"")).match(/[ymdhMsb]+/)},fs:{exists:e=>new Promise((t=>{n.access(e,n.constants.F_OK,(e=>{t(!e)}))}))},toIsoDateString:e=>e.toIsoString().subsstr(0,10)};e.exports=a},91483:(e,t,r)=>{const n=r(15797),i=r(86144),a=">",o='="',s='"',c=" ";function l(e,t,r){e.push(c),e.push(t),e.push(o),e.push(i.xmlEncode(r.toString())),e.push(s)}function u(e,t){t&&n.each(t,((t,r)=>{void 0!==t&&l(e,r,t)}))}class d{constructor(){this._xml=[],this._stack=[],this._rollbacks=[]}get tos(){return this._stack.length?this._stack[this._stack.length-1]:void 0}get cursor(){return this._xml.length}openXml(e){const t=this._xml;t.push("<?xml"),u(t,e),t.push("?>\n")}openNode(e,t){const r=this.tos,n=this._xml;r&&this.open&&n.push(a),this._stack.push(e),n.push("<"),n.push(e),u(n,t),this.leaf=!0,this.open=!0}addAttribute(e,t){if(!this.open)throw new Error("Cannot write attributes to node if it is not open");void 0!==t&&l(this._xml,e,t)}addAttributes(e){if(!this.open)throw new Error("Cannot write attributes to node if it is not open");u(this._xml,e)}writeText(e){const t=this._xml;this.open&&(t.push(a),this.open=!1),this.leaf=!1,t.push(i.xmlEncode(e.toString()))}writeXml(e){this.open&&(this._xml.push(a),this.open=!1),this.leaf=!1,this._xml.push(e)}closeNode(){const e=this._stack.pop(),t=this._xml;this.leaf?t.push("/>"):(t.push("</"),t.push(e),t.push(a)),this.open=!1,this.leaf=!1}leafNode(e,t,r){this.openNode(e,t),void 0!==r&&this.writeText(r),this.closeNode()}closeAll(){for(;this._stack.length;)this.closeNode()}addRollback(){return this._rollbacks.push({xml:this._xml.length,stack:this._stack.length,leaf:this.leaf,open:this.open}),this.cursor}commit(){this._rollbacks.pop()}rollback(){const e=this._rollbacks.pop();this._xml.length>e.xml&&this._xml.splice(e.xml,this._xml.length-e.xml),this._stack.length>e.stack&&this._stack.splice(e.stack,this._stack.length-e.stack),this.leaf=e.leaf,this.open=e.open}get xml(){return this.closeAll(),this._xml.join("")}}d.StdDocAttributes={version:"1.0",encoding:"UTF-8",standalone:"yes"},e.exports=d},56861:(e,t,r)=>{const n=r(82361),i=r(66085),a=r(25168),{stringToBuffer:o}=r(23697);class s extends n.EventEmitter{constructor(e){super(),this.options=Object.assign({type:"nodebuffer",compression:"DEFLATE"},e),this.zip=new i,this.stream=new a}append(e,t){t.hasOwnProperty("base64")&&t.base64?this.zip.file(t.name,e,{base64:!0}):(process.browser&&"string"==typeof e&&(e=o(e)),this.zip.file(t.name,e))}async finalize(){const e=await this.zip.generateAsync(this.options);this.stream.end(e),this.emit("finish")}read(e){return this.stream.read(e)}setEncoding(e){return this.stream.setEncoding(e)}pause(){return this.stream.pause()}resume(){return this.stream.resume()}isPaused(){return this.stream.isPaused()}pipe(e,t){return this.stream.pipe(e,t)}unpipe(e){return this.stream.unpipe(e)}unshift(e){return this.stream.unshift(e)}wrap(e){return this.stream.wrap(e)}}e.exports={ZipWriter:s}},19163:e=>{e.exports={0:{f:"General"},1:{f:"0"},2:{f:"0.00"},3:{f:"#,##0"},4:{f:"#,##0.00"},9:{f:"0%"},10:{f:"0.00%"},11:{f:"0.00E+00"},12:{f:"# ?/?"},13:{f:"# ??/??"},14:{f:"mm-dd-yy"},15:{f:"d-mmm-yy"},16:{f:"d-mmm"},17:{f:"mmm-yy"},18:{f:"h:mm AM/PM"},19:{f:"h:mm:ss AM/PM"},20:{f:"h:mm"},21:{f:"h:mm:ss"},22:{f:'m/d/yy "h":mm'},27:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},28:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},29:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},30:{"zh-tw":"m/d/yy ","zh-cn":"m-d-yy","ja-jp":"m/d/yy","ko-kr":"mm-dd-yy"},31:{"zh-tw":'yyyy"年"m"月"d"日"',"zh-cn":'yyyy"年"m"月"d"日"',"ja-jp":'yyyy"年"m"月"d"日"',"ko-kr":'yyyy"년" mm"월" dd"일"'},32:{"zh-tw":'hh"時"mm"分"',"zh-cn":'h"时"mm"分"',"ja-jp":'h"時"mm"分"',"ko-kr":'h"시" mm"분"'},33:{"zh-tw":'hh"時"mm"分"ss"秒"',"zh-cn":'h"时"mm"分"ss"秒"',"ja-jp":'h"時"mm"分"ss"秒"',"ko-kr":'h"시" mm"분" ss"초"'},34:{"zh-tw":'上午/下午 hh"時"mm"分"',"zh-cn":'上午/下午 h"时"mm"分"',"ja-jp":'yyyy"年"m"月"',"ko-kr":"yyyy-mm-dd"},35:{"zh-tw":'上午/下午 hh"時"mm"分"ss"秒"',"zh-cn":'上午/下午 h"时"mm"分"ss"秒"',"ja-jp":'m"月"d"日"',"ko-kr":"yyyy-mm-dd"},36:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},37:{f:"#,##0 ;(#,##0)"},38:{f:"#,##0 ;[Red](#,##0)"},39:{f:"#,##0.00 ;(#,##0.00)"},40:{f:"#,##0.00 ;[Red](#,##0.00)"},45:{f:"mm:ss"},46:{f:"[h]:mm:ss"},47:{f:"mmss.0"},48:{f:"##0.0E+0"},49:{f:"@"},50:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},51:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},52:{"zh-tw":'上午/下午 hh"時"mm"分"',"zh-cn":'yyyy"年"m"月"',"ja-jp":'yyyy"年"m"月"',"ko-kr":"yyyy-mm-dd"},53:{"zh-tw":'上午/下午 hh"時"mm"分"ss"秒"',"zh-cn":'m"月"d"日"',"ja-jp":'m"月"d"日"',"ko-kr":"yyyy-mm-dd"},54:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},55:{"zh-tw":'上午/下午 hh"時"mm"分"',"zh-cn":'上午/下午 h"时"mm"分"',"ja-jp":'yyyy"年"m"月"',"ko-kr":"yyyy-mm-dd"},56:{"zh-tw":'上午/下午 hh"時"mm"分"ss"秒"',"zh-cn":'上午/下午 h"时"mm"分"ss"秒"',"ja-jp":'m"月"d"日"',"ko-kr":"yyyy-mm-dd"},57:{"zh-tw":"[$-404]e/m/d","zh-cn":'yyyy"年"m"月"',"ja-jp":"[$-411]ge.m.d","ko-kr":'yyyy"年" mm"月" dd"日"'},58:{"zh-tw":'[$-404]e"年"m"月"d"日"',"zh-cn":'m"月"d"日"',"ja-jp":'[$-411]ggge"年"m"月"d"日"',"ko-kr":"mm-dd"},59:{"th-th":"t0"},60:{"th-th":"t0.00"},61:{"th-th":"t#,##0"},62:{"th-th":"t#,##0.00"},67:{"th-th":"t0%"},68:{"th-th":"t0.00%"},69:{"th-th":"t# ?/?"},70:{"th-th":"t# ??/??"},81:{"th-th":"d/m/bb"}}},46405:e=>{"use strict";e.exports={OfficeDocument:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Worksheet:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",CalcChain:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/calcChain",SharedStrings:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Styles:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Theme:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",Hyperlink:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",Image:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",CoreProperties:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",ExtenderProperties:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",Comments:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",VmlDrawing:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",Table:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/table"}},38835:(e,t,r)=>{const n=r(23041),i=r(91483);class a{prepare(){}render(){}parseOpen(e){}parseText(e){}parseClose(e){}reconcile(e,t){}reset(){this.model=null,this.map&&Object.values(this.map).forEach((e=>{e instanceof a?e.reset():e.xform&&e.xform.reset()}))}mergeModel(e){this.model=Object.assign(this.model||{},e)}async parse(e){for await(const t of e)for(const{eventType:e,value:r}of t)if("opentag"===e)this.parseOpen(r);else if("text"===e)this.parseText(r);else if("closetag"===e&&!this.parseClose(r.name))return this.model;return this.model}async parseStream(e){return this.parse(n(e))}get xml(){return this.toXml(this.model)}toXml(e){const t=new i;return this.render(t,e),t.xml}static toAttribute(e,t,r=!1){if(void 0===e){if(r)return t}else if(r||e!==t)return e.toString()}static toStringAttribute(e,t,r=!1){return a.toAttribute(e,t,r)}static toStringValue(e,t){return void 0===e?t:e}static toBoolAttribute(e,t,r=!1){if(void 0===e){if(r)return t}else if(r||e!==t)return e?"1":"0"}static toBoolValue(e,t){return void 0===e?t:"1"===e}static toIntAttribute(e,t,r=!1){return a.toAttribute(e,t,r)}static toIntValue(e,t){return void 0===e?t:parseInt(e,10)}static toFloatAttribute(e,t,r=!1){return a.toAttribute(e,t,r)}static toFloatValue(e,t){return void 0===e?t:parseFloat(e)}}e.exports=a},84066:(e,t,r)=>{const n=r(38835),i=r(48376);function a(e){try{return i.decodeEx(e),!0}catch(e){return!1}}function o(e){const t=[];let r=!1,n="";return e.split(",").forEach((e=>{if(!e)return;const i=(e.match(/'/g)||[]).length;if(!i)return void(r?n+=`${e},`:a(e)&&t.push(e));const o=i%2==0;!r&&o&&a(e)?t.push(e):r&&!o?(r=!1,a(n+e)&&t.push(n+e),n=""):(r=!0,n+=`${e},`)})),t}e.exports=class extends n{render(e,t){e.openNode("definedName",{name:t.name,localSheetId:t.localSheetId}),e.writeText(t.ranges.join(",")),e.closeNode()}parseOpen(e){return"definedName"===e.name&&(this._parsedName=e.attributes.name,this._parsedLocalSheetId=e.attributes.localSheetId,this._parsedText=[],!0)}parseText(e){this._parsedText.push(e)}parseClose(){return this.model={name:this._parsedName,ranges:o(this._parsedText.join(""))},void 0!==this._parsedLocalSheetId&&(this.model.localSheetId=parseInt(this._parsedLocalSheetId,10)),!1}}},59446:(e,t,r)=>{const n=r(86144),i=r(38835);e.exports=class extends i{render(e,t){e.leafNode("sheet",{sheetId:t.id,name:t.name,state:t.state,"r:id":t.rId})}parseOpen(e){return"sheet"===e.name&&(this.model={name:n.xmlDecode(e.attributes.name),id:parseInt(e.attributes.sheetId,10),state:e.attributes.state,rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},82325:(e,t,r)=>{const n=r(38835);e.exports=class extends n{render(e,t){e.leafNode("calcPr",{calcId:171027,fullCalcOnLoad:t.fullCalcOnLoad?1:void 0})}parseOpen(e){return"calcPr"===e.name&&(this.model={},!0)}parseText(){}parseClose(){return!1}}},98704:(e,t,r)=>{const n=r(38835);e.exports=class extends n{render(e,t){e.leafNode("workbookPr",{date1904:t.date1904?1:void 0,defaultThemeVersion:164011,filterPrivacy:1})}parseOpen(e){return"workbookPr"===e.name&&(this.model={date1904:"1"===e.attributes.date1904},!0)}parseText(){}parseClose(){return!1}}},69093:(e,t,r)=>{const n=r(38835);e.exports=class extends n{render(e,t){const r={xWindow:t.x||0,yWindow:t.y||0,windowWidth:t.width||12e3,windowHeight:t.height||24e3,firstSheet:t.firstSheet,activeTab:t.activeTab};t.visibility&&"visible"!==t.visibility&&(r.visibility=t.visibility),e.leafNode("workbookView",r)}parseOpen(e){if("workbookView"===e.name){const t=this.model={},r=function(e,r,n){const i=void 0!==r?t[e]=r:n;void 0!==i&&(t[e]=i)},n=function(e,r,n){const i=void 0!==r?t[e]=parseInt(r,10):n;void 0!==i&&(t[e]=i)};return n("x",e.attributes.xWindow,0),n("y",e.attributes.yWindow,0),n("width",e.attributes.windowWidth,25e3),n("height",e.attributes.windowHeight,1e4),r("visibility",e.attributes.visibility,"visible"),n("activeTab",e.attributes.activeTab,void 0),n("firstSheet",e.attributes.firstSheet,void 0),!0}return!1}parseText(){}parseClose(){return!1}}},44769:(e,t,r)=>{const n=r(15797),i=r(48376),a=r(91483),o=r(38835),s=r(94891),c=r(750),l=r(84066),u=r(59446),d=r(69093),p=r(98704),f=r(82325);class m extends o{constructor(){super(),this.map={fileVersion:m.STATIC_XFORMS.fileVersion,workbookPr:new p,bookViews:new c({tag:"bookViews",count:!1,childXform:new d}),sheets:new c({tag:"sheets",count:!1,childXform:new u}),definedNames:new c({tag:"definedNames",count:!1,childXform:new l}),calcPr:new f}}prepare(e){e.sheets=e.worksheets;const t=[];let r=0;e.sheets.forEach((e=>{if(e.pageSetup&&e.pageSetup.printArea&&e.pageSetup.printArea.split("&&").forEach((n=>{const i=n.split(":"),a={name:"_xlnm.Print_Area",ranges:[`'${e.name}'!$${i[0]}:$${i[1]}`],localSheetId:r};t.push(a)})),e.pageSetup&&(e.pageSetup.printTitlesRow||e.pageSetup.printTitlesColumn)){const n=[];if(e.pageSetup.printTitlesColumn){const t=e.pageSetup.printTitlesColumn.split(":");n.push(`'${e.name}'!$${t[0]}:$${t[1]}`)}if(e.pageSetup.printTitlesRow){const t=e.pageSetup.printTitlesRow.split(":");n.push(`'${e.name}'!$${t[0]}:$${t[1]}`)}const i={name:"_xlnm.Print_Titles",ranges:n,localSheetId:r};t.push(i)}r++})),t.length&&(e.definedNames=e.definedNames.concat(t)),(e.media||[]).forEach(((e,t)=>{e.name=e.type+(t+1)}))}render(e,t){e.openXml(a.StdDocAttributes),e.openNode("workbook",m.WORKBOOK_ATTRIBUTES),this.map.fileVersion.render(e),this.map.workbookPr.render(e,t.properties),this.map.bookViews.render(e,t.views),this.map.sheets.render(e,t.sheets),this.map.definedNames.render(e,t.definedNames),this.map.calcPr.render(e,t.calcProperties),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):("workbook"===e.name||(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):"workbook"!==e||(this.model={sheets:this.map.sheets.model,properties:this.map.workbookPr.model||{},views:this.map.bookViews.model,calcProperties:{}},this.map.definedNames.model&&(this.model.definedNames=this.map.definedNames.model),!1)}reconcile(e){const t=(e.workbookRels||[]).reduce(((e,t)=>(e[t.Id]=t,e)),{}),r=[];let a,o=0;(e.sheets||[]).forEach((n=>{const i=t[n.rId];i&&(a=e.worksheetHash[`xl/${i.Target.replace(/^(\s|\/xl\/)+/,"")}`],a&&(a.name=n.name,a.id=n.id,a.state=n.state,r[o++]=a))}));const s=[];n.each(e.definedNames,(e=>{if("_xlnm.Print_Area"===e.name){if(a=r[e.localSheetId],a){a.pageSetup||(a.pageSetup={});const t=i.decodeEx(e.ranges[0]);a.pageSetup.printArea=a.pageSetup.printArea?`${a.pageSetup.printArea}&&${t.dimensions}`:t.dimensions}}else if("_xlnm.Print_Titles"===e.name){if(a=r[e.localSheetId],a){a.pageSetup||(a.pageSetup={});const t=e.ranges.join(","),r=/\$/g,n=/\$\d+:\$\d+/,i=t.match(n);if(i&&i.length){const e=i[0];a.pageSetup.printTitlesRow=e.replace(r,"")}const o=/\$[A-Z]+:\$[A-Z]+/,s=t.match(o);if(s&&s.length){const e=s[0];a.pageSetup.printTitlesColumn=e.replace(r,"")}}}else s.push(e)})),e.definedNames=s,e.media.forEach(((e,t)=>{e.index=t}))}}m.WORKBOOK_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"x15","xmlns:x15":"http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"},m.STATIC_XFORMS={fileVersion:new s({tag:"fileVersion",$:{appName:"xl",lastEdited:5,lowestEdited:5,rupBuild:9303}})},e.exports=m},39207:(e,t,r)=>{const n=r(91363),i=r(86144),a=r(38835),o=e.exports=function(e){this.model=e};i.inherits(o,a,{get tag(){return"r"},get richTextXform(){return this._richTextXform||(this._richTextXform=new n),this._richTextXform},render(e,t){t=t||this.model,e.openNode("comment",{ref:t.ref,authorId:0}),e.openNode("text"),t&&t.note&&t.note.texts&&t.note.texts.forEach((t=>{this.richTextXform.render(e,t)})),e.closeNode(),e.closeNode()},parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"comment":return this.model={type:"note",note:{texts:[]},...e.attributes},!0;case"r":return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}},parseText(e){this.parser&&this.parser.parseText(e)},parseClose(e){switch(e){case"comment":return!1;case"r":return this.model.note.texts.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}})},21758:(e,t,r)=>{const n=r(91483),i=r(86144),a=r(38835),o=r(39207),s=e.exports=function(){this.map={comment:new o}};i.inherits(s,a,{COMMENTS_ATTRIBUTES:{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main"}},{render(e,t){t=t||this.model,e.openXml(n.StdDocAttributes),e.openNode("comments",s.COMMENTS_ATTRIBUTES),e.openNode("authors"),e.leafNode("author",null,"Author"),e.closeNode(),e.openNode("commentList"),t.comments.forEach((t=>{this.map.comment.render(e,t)})),e.closeNode(),e.closeNode()},parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"commentList":return this.model={comments:[]},!0;case"comment":return this.parser=this.map.comment,this.parser.parseOpen(e),!0;default:return!1}},parseText(e){this.parser&&this.parser.parseText(e)},parseClose(e){switch(e){case"commentList":return!1;case"comment":return this.model.comments.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}})},16073:(e,t,r)=>{const n=r(38835);e.exports=class extends n{constructor(e){super(),this._model=e}get tag(){return this._model&&this._model.tag}render(e,t,r){(t===r[2]||"x:SizeWithCells"===this.tag&&t===r[1])&&e.leafNode(this.tag)}parseOpen(e){return e.name===this.tag&&(this.model={},this.model[this.tag]=!0,!0)}parseText(){}parseClose(){return!1}}},88695:(e,t,r)=>{const n=r(38835);e.exports=class extends n{constructor(e){super(),this._model=e}get tag(){return this._model&&this._model.tag}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(e){return e.name===this.tag&&(this.text="",!0)}parseText(e){this.text=e}parseClose(){return!1}}},97889:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"x:Anchor"}getAnchorRect(e){const t=Math.floor(e.left),r=Math.floor(68*(e.left-t)),n=Math.floor(e.top),i=Math.floor(18*(e.top-n)),a=Math.floor(e.right),o=Math.floor(68*(e.right-a)),s=Math.floor(e.bottom);return[t,r,n,i,a,o,s,Math.floor(18*(e.bottom-s))]}getDefaultRect(e){const t=e.col,r=Math.max(e.row-2,0);return[t,6,r,14,t+2,2,r+4,16]}render(e,t){const r=t.anchor?this.getAnchorRect(t.anchor):this.getDefaultRect(t.refAddress);e.leafNode("x:Anchor",null,r.join(", "))}parseOpen(e){return e.name===this.tag&&(this.text="",!0)}parseText(e){this.text=e}parseClose(){return!1}}},23663:(e,t,r)=>{const n=r(38835),i=r(97889),a=r(88695),o=r(16073),s=["twoCells","oneCells","absolute"];e.exports=class extends n{constructor(){super(),this.map={"x:Anchor":new i,"x:Locked":new a({tag:"x:Locked"}),"x:LockText":new a({tag:"x:LockText"}),"x:SizeWithCells":new o({tag:"x:SizeWithCells"}),"x:MoveWithCells":new o({tag:"x:MoveWithCells"})}}get tag(){return"x:ClientData"}render(e,t){const{protection:r,editAs:n}=t.note;e.openNode(this.tag,{ObjectType:"Note"}),this.map["x:MoveWithCells"].render(e,n,s),this.map["x:SizeWithCells"].render(e,n,s),this.map["x:Anchor"].render(e,t),this.map["x:Locked"].render(e,r.locked),e.leafNode("x:AutoFill",null,"False"),this.map["x:LockText"].render(e,r.lockText),e.leafNode("x:Row",null,t.refAddress.row-1),e.leafNode("x:Column",null,t.refAddress.col-1),e.closeNode()}parseOpen(e){if(e.name===this.tag)this.reset(),this.model={anchor:[],protection:{},editAs:""};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.normalizeModel(),!1)}normalizeModel(){const e=Object.assign({},this.map["x:MoveWithCells"].model,this.map["x:SizeWithCells"].model),t=Object.keys(e).length;this.model.editAs=s[t],this.model.anchor=this.map["x:Anchor"].text,this.model.protection.locked=this.map["x:Locked"].text,this.model.protection.lockText=this.map["x:LockText"].text}}},82464:(e,t,r)=>{const n=r(91483),i=r(38835),a=r(1362);class o extends i{constructor(){super(),this.map={"v:shape":new a}}get tag(){return"xml"}render(e,t){e.openXml(n.StdDocAttributes),e.openNode(this.tag,o.DRAWING_ATTRIBUTES),e.openNode("o:shapelayout",{"v:ext":"edit"}),e.leafNode("o:idmap",{"v:ext":"edit",data:1}),e.closeNode(),e.openNode("v:shapetype",{id:"_x0000_t202",coordsize:"21600,21600","o:spt":202,path:"m,l,21600r21600,l21600,xe"}),e.leafNode("v:stroke",{joinstyle:"miter"}),e.leafNode("v:path",{gradientshapeok:"t","o:connecttype":"rect"}),e.closeNode(),t.comments.forEach(((t,r)=>{this.map["v:shape"].render(e,t,r)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={comments:[]};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.comments.push(this.parser.model),this.parser=void 0),!0):e!==this.tag}reconcile(e,t){e.anchors.forEach((e=>{e.br?this.map["xdr:twoCellAnchor"].reconcile(e,t):this.map["xdr:oneCellAnchor"].reconcile(e,t)}))}}o.DRAWING_ATTRIBUTES={"xmlns:v":"urn:schemas-microsoft-com:vml","xmlns:o":"urn:schemas-microsoft-com:office:office","xmlns:x":"urn:schemas-microsoft-com:office:excel"},e.exports=o},1362:(e,t,r)=>{const n=r(38835),i=r(4659),a=r(23663);class o extends n{constructor(){super(),this.map={"v:textbox":new i,"x:ClientData":new a}}get tag(){return"v:shape"}render(e,t,r){e.openNode("v:shape",o.V_SHAPE_ATTRIBUTES(t,r)),e.leafNode("v:fill",{color2:"infoBackground [80]"}),e.leafNode("v:shadow",{color:"none [81]",obscured:"t"}),e.leafNode("v:path",{"o:connecttype":"none"}),this.map["v:textbox"].render(e,t),this.map["x:ClientData"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={margins:{insetmode:e.attributes["o:insetmode"]},anchor:"",editAs:"",protection:{}};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.margins.inset=this.map["v:textbox"].model&&this.map["v:textbox"].model.inset,this.model.protection=this.map["x:ClientData"].model&&this.map["x:ClientData"].model.protection,this.model.anchor=this.map["x:ClientData"].model&&this.map["x:ClientData"].model.anchor,this.model.editAs=this.map["x:ClientData"].model&&this.map["x:ClientData"].model.editAs,!1)}}o.V_SHAPE_ATTRIBUTES=(e,t)=>({id:`_x0000_s${1025+t}`,type:"#_x0000_t202",style:"position:absolute; margin-left:105.3pt;margin-top:10.5pt;width:97.8pt;height:59.1pt;z-index:1;visibility:hidden",fillcolor:"infoBackground [80]",strokecolor:"none [81]","o:insetmode":e.note.margins&&e.note.margins.insetmode}),e.exports=o},4659:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"v:textbox"}conversionUnit(e,t,r){return`${parseFloat(e)*t.toFixed(2)}${r}`}reverseConversionUnit(e){return(e||"").split(",").map((e=>Number(parseFloat(this.conversionUnit(parseFloat(e),.1,"")).toFixed(2))))}render(e,t){const r={style:"mso-direction-alt:auto"};if(t&&t.note){let{inset:e}=t.note&&t.note.margins;Array.isArray(e)&&(e=e.map((e=>this.conversionUnit(e,10,"mm"))).join(",")),e&&(r.inset=e)}e.openNode("v:textbox",r),e.leafNode("div",{style:"text-align:left"}),e.closeNode()}parseOpen(e){return e.name!==this.tag||(this.model={inset:this.reverseConversionUnit(e.attributes.inset)},!0)}parseText(){}parseClose(e){return e!==this.tag}}},90837:(e,t,r)=>{const n=r(38835);e.exports=class extends n{createNewModel(e){return{}}parseOpen(e){return this.parser=this.parser||this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag&&(this.model=this.createNewModel(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}onParserClose(e,t){this.model[e]=t.model}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.onParserClose(e,this.parser),this.parser=void 0),!0):e!==this.tag}}},36213:(e,t,r)=>{const n=r(38835);e.exports=class extends n{render(e,t){e.openNode("HeadingPairs"),e.openNode("vt:vector",{size:2,baseType:"variant"}),e.openNode("vt:variant"),e.leafNode("vt:lpstr",void 0,"Worksheets"),e.closeNode(),e.openNode("vt:variant"),e.leafNode("vt:i4",void 0,t.length),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(e){return"HeadingPairs"===e.name}parseText(){}parseClose(e){return"HeadingPairs"!==e}}},49705:(e,t,r)=>{const n=r(38835);e.exports=class extends n{render(e,t){e.openNode("TitlesOfParts"),e.openNode("vt:vector",{size:t.length,baseType:"lpstr"}),t.forEach((t=>{e.leafNode("vt:lpstr",void 0,t.name)})),e.closeNode(),e.closeNode()}parseOpen(e){return"TitlesOfParts"===e.name}parseText(){}parseClose(e){return"TitlesOfParts"!==e}}},78223:(e,t,r)=>{const n=r(91483),i=r(38835),a=r(47908),o=r(36213),s=r(49705);class c extends i{constructor(){super(),this.map={Company:new a({tag:"Company"}),Manager:new a({tag:"Manager"}),HeadingPairs:new o,TitleOfParts:new s}}render(e,t){e.openXml(n.StdDocAttributes),e.openNode("Properties",c.PROPERTY_ATTRIBUTES),e.leafNode("Application",void 0,"Microsoft Excel"),e.leafNode("DocSecurity",void 0,"0"),e.leafNode("ScaleCrop",void 0,"false"),this.map.HeadingPairs.render(e,t.worksheets),this.map.TitleOfParts.render(e,t.worksheets),this.map.Company.render(e,t.company||""),this.map.Manager.render(e,t.manager),e.leafNode("LinksUpToDate",void 0,"false"),e.leafNode("SharedDoc",void 0,"false"),e.leafNode("HyperlinksChanged",void 0,"false"),e.leafNode("AppVersion",void 0,"16.0300"),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"Properties"===e.name||(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):"Properties"!==e||(this.model={worksheets:this.map.TitleOfParts.model,company:this.map.Company.model,manager:this.map.Manager.model},!1)}}c.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3,6}/,"")},c.DateAttrs={"xsi:type":"dcterms:W3CDTF"},c.PROPERTY_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties","xmlns:vt":"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"},e.exports=c},45461:(e,t,r)=>{const n=r(91483),i=r(38835);class a extends i{render(e,t){e.openXml(n.StdDocAttributes),e.openNode("Types",a.PROPERTY_ATTRIBUTES);const r={};(t.media||[]).forEach((t=>{if("image"===t.type){const n=t.extension;r[n]||(r[n]=!0,e.leafNode("Default",{Extension:n,ContentType:`image/${n}`}))}})),e.leafNode("Default",{Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"}),e.leafNode("Default",{Extension:"xml",ContentType:"application/xml"}),e.leafNode("Override",{PartName:"/xl/workbook.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"}),t.worksheets.forEach((t=>{const r=`/xl/worksheets/sheet${t.id}.xml`;e.leafNode("Override",{PartName:r,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"})})),e.leafNode("Override",{PartName:"/xl/theme/theme1.xml",ContentType:"application/vnd.openxmlformats-officedocument.theme+xml"}),e.leafNode("Override",{PartName:"/xl/styles.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"});t.sharedStrings&&t.sharedStrings.count&&e.leafNode("Override",{PartName:"/xl/sharedStrings.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml"}),t.tables&&t.tables.forEach((t=>{e.leafNode("Override",{PartName:`/xl/tables/${t.target}`,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml"})})),t.drawings&&t.drawings.forEach((t=>{e.leafNode("Override",{PartName:`/xl/drawings/${t.name}.xml`,ContentType:"application/vnd.openxmlformats-officedocument.drawing+xml"})})),t.commentRefs&&(e.leafNode("Default",{Extension:"vml",ContentType:"application/vnd.openxmlformats-officedocument.vmlDrawing"}),t.commentRefs.forEach((({commentName:t})=>{e.leafNode("Override",{PartName:`/xl/${t}.xml`,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml"})}))),e.leafNode("Override",{PartName:"/docProps/core.xml",ContentType:"application/vnd.openxmlformats-package.core-properties+xml"}),e.leafNode("Override",{PartName:"/docProps/app.xml",ContentType:"application/vnd.openxmlformats-officedocument.extended-properties+xml"}),e.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}}a.PROPERTY_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"},e.exports=a},74117:(e,t,r)=>{const n=r(91483),i=r(38835),a=r(67747),o=r(47908),s=r(47065);class c extends i{constructor(){super(),this.map={"dc:creator":new o({tag:"dc:creator"}),"dc:title":new o({tag:"dc:title"}),"dc:subject":new o({tag:"dc:subject"}),"dc:description":new o({tag:"dc:description"}),"dc:identifier":new o({tag:"dc:identifier"}),"dc:language":new o({tag:"dc:language"}),"cp:keywords":new o({tag:"cp:keywords"}),"cp:category":new o({tag:"cp:category"}),"cp:lastModifiedBy":new o({tag:"cp:lastModifiedBy"}),"cp:lastPrinted":new a({tag:"cp:lastPrinted",format:c.DateFormat}),"cp:revision":new s({tag:"cp:revision"}),"cp:version":new o({tag:"cp:version"}),"cp:contentStatus":new o({tag:"cp:contentStatus"}),"cp:contentType":new o({tag:"cp:contentType"}),"dcterms:created":new a({tag:"dcterms:created",attrs:c.DateAttrs,format:c.DateFormat}),"dcterms:modified":new a({tag:"dcterms:modified",attrs:c.DateAttrs,format:c.DateFormat})}}render(e,t){e.openXml(n.StdDocAttributes),e.openNode("cp:coreProperties",c.CORE_PROPERTY_ATTRIBUTES),this.map["dc:creator"].render(e,t.creator),this.map["dc:title"].render(e,t.title),this.map["dc:subject"].render(e,t.subject),this.map["dc:description"].render(e,t.description),this.map["dc:identifier"].render(e,t.identifier),this.map["dc:language"].render(e,t.language),this.map["cp:keywords"].render(e,t.keywords),this.map["cp:category"].render(e,t.category),this.map["cp:lastModifiedBy"].render(e,t.lastModifiedBy),this.map["cp:lastPrinted"].render(e,t.lastPrinted),this.map["cp:revision"].render(e,t.revision),this.map["cp:version"].render(e,t.version),this.map["cp:contentStatus"].render(e,t.contentStatus),this.map["cp:contentType"].render(e,t.contentType),this.map["dcterms:created"].render(e,t.created),this.map["dcterms:modified"].render(e,t.modified),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"cp:coreProperties":case"coreProperties":return!0;default:if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case"cp:coreProperties":case"coreProperties":return this.model={creator:this.map["dc:creator"].model,title:this.map["dc:title"].model,subject:this.map["dc:subject"].model,description:this.map["dc:description"].model,identifier:this.map["dc:identifier"].model,language:this.map["dc:language"].model,keywords:this.map["cp:keywords"].model,category:this.map["cp:category"].model,lastModifiedBy:this.map["cp:lastModifiedBy"].model,lastPrinted:this.map["cp:lastPrinted"].model,revision:this.map["cp:revision"].model,contentStatus:this.map["cp:contentStatus"].model,contentType:this.map["cp:contentType"].model,created:this.map["dcterms:created"].model,modified:this.map["dcterms:modified"].model},!1;default:throw new Error(`Unexpected xml node in parseClose: ${e}`)}}}c.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3}/,"")},c.DateAttrs={"xsi:type":"dcterms:W3CDTF"},c.CORE_PROPERTY_ATTRIBUTES={"xmlns:cp":"http://schemas.openxmlformats.org/package/2006/metadata/core-properties","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:dcterms":"http://purl.org/dc/terms/","xmlns:dcmitype":"http://purl.org/dc/dcmitype/","xmlns:xsi":"http://www.w3.org/2001/XMLSchema-instance"},e.exports=c},45238:(e,t,r)=>{const n=r(38835);e.exports=class extends n{render(e,t){e.leafNode("Relationship",t)}parseOpen(e){return"Relationship"===e.name&&(this.model=e.attributes,!0)}parseText(){}parseClose(){return!1}}},56181:(e,t,r)=>{const n=r(91483),i=r(38835),a=r(45238);class o extends i{constructor(){super(),this.map={Relationship:new a}}render(e,t){t=t||this._values,e.openXml(n.StdDocAttributes),e.openNode("Relationships",o.RELATIONSHIPS_ATTRIBUTES),t.forEach((t=>{this.map.Relationship.render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if("Relationships"===e.name)return this.model=[],!0;if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.push(this.parser.model),this.parser=void 0),!0;if("Relationships"===e)return!1;throw new Error(`Unexpected xml node in parseClose: ${e}`)}}o.RELATIONSHIPS_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},e.exports=o},16328:(e,t,r)=>{const n=r(38835);e.exports=class extends n{parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={range:{editAs:e.attributes.editAs||"oneCell"}};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}reconcilePicture(e,t){if(e&&e.rId){const r=t.rels[e.rId].Target.match(/.*\/media\/(.+[.][a-zA-Z]{3,4})/);if(r){const e=r[1],n=t.mediaIndex[e];return t.media[n]}}}}},904:(e,t,r)=>{const n=r(38835),i=r(8472);e.exports=class extends n{constructor(){super(),this.map={"a:blip":new i}}get tag(){return"xdr:blipFill"}render(e,t){e.openNode(this.tag),this.map["a:blip"].render(e,t),e.openNode("a:stretch"),e.leafNode("a:fillRect"),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model=this.map["a:blip"].model,!1)}}},8472:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"a:blip"}render(e,t){e.leafNode(this.tag,{"xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","r:embed":t.rId,cstate:"print"})}parseOpen(e){return e.name!==this.tag||(this.model={rId:e.attributes["r:embed"]},!0)}parseText(){}parseClose(e){return e!==this.tag}}},7127:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"xdr:cNvPicPr"}render(e){e.openNode(this.tag),e.leafNode("a:picLocks",{noChangeAspect:"1"}),e.closeNode()}parseOpen(e){return e.name,this.tag,!0}parseText(){}parseClose(e){return e!==this.tag}}},26226:(e,t,r)=>{const n=r(38835),i=r(88102),a=r(12953);e.exports=class extends n{constructor(){super(),this.map={"a:hlinkClick":new i,"a:extLst":new a}}get tag(){return"xdr:cNvPr"}render(e,t){e.openNode(this.tag,{id:t.index,name:`Picture ${t.index}`}),this.map["a:hlinkClick"].render(e,t),this.map["a:extLst"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model=this.map["a:hlinkClick"].model,!1)}}},31504:(e,t,r)=>{const n=r(38835),i=r(47065);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.map={"xdr:col":new i({tag:"xdr:col",zero:!0}),"xdr:colOff":new i({tag:"xdr:colOff",zero:!0}),"xdr:row":new i({tag:"xdr:row",zero:!0}),"xdr:rowOff":new i({tag:"xdr:rowOff",zero:!0})}}render(e,t){e.openNode(this.tag),this.map["xdr:col"].render(e,t.nativeCol),this.map["xdr:colOff"].render(e,t.nativeColOff),this.map["xdr:row"].render(e,t.nativeRow),this.map["xdr:rowOff"].render(e,t.nativeRowOff),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model={nativeCol:this.map["xdr:col"].model,nativeColOff:this.map["xdr:colOff"].model,nativeRow:this.map["xdr:row"].model,nativeRowOff:this.map["xdr:rowOff"].model},!1)}}},96870:(e,t,r)=>{const n=r(48376),i=r(91483),a=r(38835),o=r(95617),s=r(26867);class c extends a{constructor(){super(),this.map={"xdr:twoCellAnchor":new o,"xdr:oneCellAnchor":new s}}prepare(e){e.anchors.forEach(((e,t)=>{e.anchorType=function(e){return("string"==typeof e.range?n.decode(e.range):e.range).br?"xdr:twoCellAnchor":"xdr:oneCellAnchor"}(e);this.map[e.anchorType].prepare(e,{index:t})}))}get tag(){return"xdr:wsDr"}render(e,t){e.openXml(i.StdDocAttributes),e.openNode(this.tag,c.DRAWING_ATTRIBUTES),t.anchors.forEach((t=>{this.map[t.anchorType].render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset(),this.model={anchors:[]};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.anchors.push(this.parser.model),this.parser=void 0),!0):e!==this.tag}reconcile(e,t){e.anchors.forEach((e=>{e.br?this.map["xdr:twoCellAnchor"].reconcile(e,t):this.map["xdr:oneCellAnchor"].reconcile(e,t)}))}}c.DRAWING_ATTRIBUTES={"xmlns:xdr":"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing","xmlns:a":"http://schemas.openxmlformats.org/drawingml/2006/main"},e.exports=c},12953:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"a:extLst"}render(e){e.openNode(this.tag),e.openNode("a:ext",{uri:"{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}"}),e.leafNode("a16:creationId",{"xmlns:a16":"http://schemas.microsoft.com/office/drawing/2014/main",id:"{00000000-0008-0000-0000-000002000000}"}),e.closeNode(),e.closeNode()}parseOpen(e){return e.name,this.tag,!0}parseText(){}parseClose(e){return e!==this.tag}}},35062:(e,t,r)=>{const n=r(38835),i=9525;e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.map={}}render(e,t){e.openNode(this.tag);const r=Math.floor(t.width*i),n=Math.floor(t.height*i);e.addAttribute("cx",r),e.addAttribute("cy",n),e.closeNode()}parseOpen(e){return e.name===this.tag&&(this.model={width:parseInt(e.attributes.cx||"0",10)/i,height:parseInt(e.attributes.cy||"0",10)/i},!0)}parseText(){}parseClose(){return!1}}},88102:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"a:hlinkClick"}render(e,t){t.hyperlinks&&t.hyperlinks.rId&&e.leafNode(this.tag,{"xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","r:id":t.hyperlinks.rId,tooltip:t.hyperlinks.tooltip})}parseOpen(e){return e.name!==this.tag||(this.model={hyperlinks:{rId:e.attributes["r:id"],tooltip:e.attributes.tooltip}},!0)}parseText(){}parseClose(){return!1}}},31985:(e,t,r)=>{const n=r(38835),i=r(26226),a=r(7127);e.exports=class extends n{constructor(){super(),this.map={"xdr:cNvPr":new i,"xdr:cNvPicPr":new a}}get tag(){return"xdr:nvPicPr"}render(e,t){e.openNode(this.tag),this.map["xdr:cNvPr"].render(e,t),this.map["xdr:cNvPicPr"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model=this.map["xdr:cNvPr"].model,!1)}}},26867:(e,t,r)=>{const n=r(16328),i=r(94891),a=r(31504),o=r(35062),s=r(98234);e.exports=class extends n{constructor(){super(),this.map={"xdr:from":new a({tag:"xdr:from"}),"xdr:ext":new o({tag:"xdr:ext"}),"xdr:pic":new s,"xdr:clientData":new i({tag:"xdr:clientData"})}}get tag(){return"xdr:oneCellAnchor"}prepare(e,t){this.map["xdr:pic"].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs||"oneCell"}),this.map["xdr:from"].render(e,t.range.tl),this.map["xdr:ext"].render(e,t.range.ext),this.map["xdr:pic"].render(e,t.picture),this.map["xdr:clientData"].render(e,{}),e.closeNode()}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.range.tl=this.map["xdr:from"].model,this.model.range.ext=this.map["xdr:ext"].model,this.model.picture=this.map["xdr:pic"].model,!1)}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}}},98234:(e,t,r)=>{const n=r(38835),i=r(94891),a=r(904),o=r(31985),s=r(9682);e.exports=class extends n{constructor(){super(),this.map={"xdr:nvPicPr":new o,"xdr:blipFill":new a,"xdr:spPr":new i(s)}}get tag(){return"xdr:pic"}prepare(e,t){e.index=t.index+1}render(e,t){e.openNode(this.tag),this.map["xdr:nvPicPr"].render(e,t),this.map["xdr:blipFill"].render(e,t),this.map["xdr:spPr"].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)this.reset();else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.mergeModel(this.parser.model),this.parser=void 0),!0):e!==this.tag}}},9682:e=>{e.exports={tag:"xdr:spPr",c:[{tag:"a:xfrm",c:[{tag:"a:off",$:{x:"0",y:"0"}},{tag:"a:ext",$:{cx:"0",cy:"0"}}]},{tag:"a:prstGeom",$:{prst:"rect"},c:[{tag:"a:avLst"}]}]}},95617:(e,t,r)=>{const n=r(16328),i=r(94891),a=r(31504),o=r(98234);e.exports=class extends n{constructor(){super(),this.map={"xdr:from":new a({tag:"xdr:from"}),"xdr:to":new a({tag:"xdr:to"}),"xdr:pic":new o,"xdr:clientData":new i({tag:"xdr:clientData"})}}get tag(){return"xdr:twoCellAnchor"}prepare(e,t){this.map["xdr:pic"].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs||"oneCell"}),this.map["xdr:from"].render(e,t.range.tl),this.map["xdr:to"].render(e,t.range.br),this.map["xdr:pic"].render(e,t.picture),this.map["xdr:clientData"].render(e,{}),e.closeNode()}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.range.tl=this.map["xdr:from"].model,this.model.range.br=this.map["xdr:to"].model,this.model.picture=this.map["xdr:pic"].model,!1)}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}}},750:(e,t,r)=>{const n=r(38835);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.always=!!e.always,this.count=e.count,this.empty=e.empty,this.$count=e.$count||"count",this.$=e.$,this.childXform=e.childXform,this.maxItems=e.maxItems}prepare(e,t){const{childXform:r}=this;e&&e.forEach(((e,n)=>{t.index=n,r.prepare(e,t)}))}render(e,t){if(this.always||t&&t.length){e.openNode(this.tag,this.$),this.count&&e.addAttribute(this.$count,t&&t.length||0);const{childXform:r}=this;(t||[]).forEach(((t,n)=>{r.render(e,t,n)})),e.closeNode()}else this.empty&&e.leafNode(this.tag)}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model=[],!0):!!this.childXform.parseOpen(e)&&(this.parser=this.childXform,!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)&&(this.model.push(this.parser.model),this.parser=void 0,this.maxItems&&this.model.length>this.maxItems))throw new Error(`Max ${this.childXform.tag} count (${this.maxItems}) exceeded`);return!0}return!1}reconcile(e,t){if(e){const{childXform:r}=this;e.forEach((e=>{r.reconcile(e,t)}))}}}},37773:(e,t,r)=>{const n=r(48376),i=r(38835);e.exports=class extends i{get tag(){return"autoFilter"}render(e,t){if(t)if("string"==typeof t)e.leafNode("autoFilter",{ref:t});else{const r=function(e){return"string"==typeof e?e:n.getAddress(e.row,e.column).address},i=r(t.from),a=r(t.to);i&&a&&e.leafNode("autoFilter",{ref:`${i}:${a}`})}}parseOpen(e){"autoFilter"===e.name&&(this.model=e.attributes.ref)}}},28731:(e,t,r)=>{const n=r(86144),i=r(38835),a=r(47765),o=r(79931),s=r(91363);function c(e){if(null==e)return o.ValueType.Null;if(e instanceof String||"string"==typeof e)return o.ValueType.String;if("number"==typeof e)return o.ValueType.Number;if("boolean"==typeof e)return o.ValueType.Boolean;if(e instanceof Date)return o.ValueType.Date;if(e.text&&e.hyperlink)return o.ValueType.Hyperlink;if(e.formula)return o.ValueType.Formula;if(e.error)return o.ValueType.Error;throw new Error("I could not understand type of value")}e.exports=class extends i{constructor(){super(),this.richTextXForm=new s}get tag(){return"c"}prepare(e,t){const r=t.styles.addStyleModel(e.style||{},(n=e).type===o.ValueType.Formula?c(n.result):n.type);var n;switch(r&&(e.styleId=r),e.comment&&t.comments.push({...e.comment,ref:e.address}),e.type){case o.ValueType.String:case o.ValueType.RichText:t.sharedStrings&&(e.ssId=t.sharedStrings.add(e.value));break;case o.ValueType.Date:t.date1904&&(e.date1904=!0);break;case o.ValueType.Hyperlink:t.sharedStrings&&void 0!==e.text&&null!==e.text&&(e.ssId=t.sharedStrings.add(e.text)),t.hyperlinks.push({address:e.address,target:e.hyperlink,tooltip:e.tooltip});break;case o.ValueType.Merge:t.merges.add(e);break;case o.ValueType.Formula:if(t.date1904&&(e.date1904=!0),"shared"===e.shareType&&(e.si=t.siFormulae++),e.formula)t.formulae[e.address]=e;else if(e.sharedFormula){const r=t.formulae[e.sharedFormula];if(!r)throw new Error(`Shared Formula master must exist above and or left of clone for cell ${e.address}`);void 0===r.si?(r.shareType="shared",r.si=t.siFormulae++,r.range=new a(r.address,e.address)):r.range&&r.range.expandToAddress(e.address),e.si=r.si}}}renderFormula(e,t){let r=null;switch(t.shareType){case"shared":r={t:"shared",ref:t.ref||t.range.range,si:t.si};break;case"array":r={t:"array",ref:t.ref};break;default:void 0!==t.si&&(r={t:"shared",si:t.si})}switch(c(t.result)){case o.ValueType.Null:e.leafNode("f",r,t.formula);break;case o.ValueType.String:e.addAttribute("t","str"),e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result);break;case o.ValueType.Number:e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result);break;case o.ValueType.Boolean:e.addAttribute("t","b"),e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result?1:0);break;case o.ValueType.Error:e.addAttribute("t","e"),e.leafNode("f",r,t.formula),e.leafNode("v",null,t.result.error);break;case o.ValueType.Date:e.leafNode("f",r,t.formula),e.leafNode("v",null,n.dateToExcel(t.result,t.date1904));break;default:throw new Error("I could not understand type of value")}}render(e,t){if(t.type!==o.ValueType.Null||t.styleId){switch(e.openNode("c"),e.addAttribute("r",t.address),t.styleId&&e.addAttribute("s",t.styleId),t.type){case o.ValueType.Null:break;case o.ValueType.Number:e.leafNode("v",null,t.value);break;case o.ValueType.Boolean:e.addAttribute("t","b"),e.leafNode("v",null,t.value?"1":"0");break;case o.ValueType.Error:e.addAttribute("t","e"),e.leafNode("v",null,t.value.error);break;case o.ValueType.String:case o.ValueType.RichText:void 0!==t.ssId?(e.addAttribute("t","s"),e.leafNode("v",null,t.ssId)):t.value&&t.value.richText?(e.addAttribute("t","inlineStr"),e.openNode("is"),t.value.richText.forEach((t=>{this.richTextXForm.render(e,t)})),e.closeNode("is")):(e.addAttribute("t","str"),e.leafNode("v",null,t.value));break;case o.ValueType.Date:e.leafNode("v",null,n.dateToExcel(t.value,t.date1904));break;case o.ValueType.Hyperlink:void 0!==t.ssId?(e.addAttribute("t","s"),e.leafNode("v",null,t.ssId)):(e.addAttribute("t","str"),e.leafNode("v",null,t.text));break;case o.ValueType.Formula:this.renderFormula(e,t);case o.ValueType.Merge:}e.closeNode()}}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"c":return this.model={address:e.attributes.r},this.t=e.attributes.t,e.attributes.s&&(this.model.styleId=parseInt(e.attributes.s,10)),!0;case"f":return this.currentNode="f",this.model.si=e.attributes.si,this.model.shareType=e.attributes.t,this.model.ref=e.attributes.ref,!0;case"v":return this.currentNode="v",!0;case"t":return this.currentNode="t",!0;case"r":return this.parser=this.richTextXForm,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){if(this.parser)this.parser.parseText(e);else switch(this.currentNode){case"f":this.model.formula=this.model.formula?this.model.formula+e:e;break;case"v":case"t":this.model.value&&this.model.value.richText?this.model.value.richText.text=this.model.value.richText.text?this.model.value.richText.text+e:e:this.model.value=this.model.value?this.model.value+e:e}}parseClose(e){switch(e){case"c":{const{model:e}=this;if(e.formula||e.shareType)e.type=o.ValueType.Formula,e.value&&("str"===this.t?e.result=n.xmlDecode(e.value):"b"===this.t?e.result=0!==parseInt(e.value,10):"e"===this.t?e.result={error:e.value}:e.result=parseFloat(e.value),e.value=void 0);else if(void 0!==e.value)switch(this.t){case"s":e.type=o.ValueType.String,e.value=parseInt(e.value,10);break;case"str":e.type=o.ValueType.String,e.value=n.xmlDecode(e.value);break;case"inlineStr":e.type=o.ValueType.String;break;case"b":e.type=o.ValueType.Boolean,e.value=0!==parseInt(e.value,10);break;case"e":e.type=o.ValueType.Error,e.value={error:e.value};break;default:e.type=o.ValueType.Number,e.value=parseFloat(e.value)}else e.styleId?e.type=o.ValueType.Null:e.type=o.ValueType.Merge;return!1}case"f":case"v":case"is":return this.currentNode=void 0,!0;case"t":return this.parser?(this.parser.parseClose(e),!0):(this.currentNode=void 0,!0);case"r":return this.model.value=this.model.value||{},this.model.value.richText=this.model.value.richText||[],this.model.value.richText.push(this.parser.model),this.parser=void 0,this.currentNode=void 0,!0;default:return!!this.parser&&(this.parser.parseClose(e),!0)}}reconcile(e,t){const r=e.styleId&&t.styles&&t.styles.getStyleModel(e.styleId);switch(r&&(e.style=r),void 0!==e.styleId&&(e.styleId=void 0),e.type){case o.ValueType.String:"number"==typeof e.value&&t.sharedStrings&&(e.value=t.sharedStrings.getString(e.value)),e.value.richText&&(e.type=o.ValueType.RichText);break;case o.ValueType.Number:r&&n.isDateFmt(r.numFmt)&&(e.type=o.ValueType.Date,e.value=n.excelToDate(e.value,t.date1904));break;case o.ValueType.Formula:void 0!==e.result&&r&&n.isDateFmt(r.numFmt)&&(e.result=n.excelToDate(e.result,t.date1904)),"shared"===e.shareType&&(e.ref?t.formulae[e.si]=e.address:(e.sharedFormula=t.formulae[e.si],delete e.shareType),delete e.si)}const i=t.hyperlinkMap[e.address];i&&(e.type===o.ValueType.Formula?(e.text=e.result,e.result=void 0):(e.text=e.value,e.value=void 0),e.type=o.ValueType.Hyperlink,e.hyperlink=i);const a=t.commentsMap&&t.commentsMap[e.address];a&&(e.comment=a)}}},16557:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"x14:cfIcon"}render(e,t){e.leafNode(this.tag,{iconSet:t.iconSet,iconId:t.iconId})}parseOpen({attributes:e}){this.model={iconSet:e.iconSet,iconId:n.toIntValue(e.iconId)}}parseClose(e){return e!==this.tag}}},37502:(e,t,r)=>{const{v4:n}=r(42277),i=r(38835),a=r(90837),o=r(28805),s=r(2536),c={"3Triangles":!0,"3Stars":!0,"5Boxes":!0};class l extends a{constructor(){super(),this.map={"x14:dataBar":this.databarXform=new o,"x14:iconSet":this.iconSetXform=new s}}get tag(){return"x14:cfRule"}static isExt(e){return"dataBar"===e.type?o.isExt(e):!("iconSet"!==e.type||!e.custom&&!c[e.iconSet])}prepare(e){l.isExt(e)&&(e.x14Id=`{${n()}}`.toUpperCase())}render(e,t){if(l.isExt(t))switch(t.type){case"dataBar":this.renderDataBar(e,t);break;case"iconSet":this.renderIconSet(e,t)}}renderDataBar(e,t){e.openNode(this.tag,{type:"dataBar",id:t.x14Id}),this.databarXform.render(e,t),e.closeNode()}renderIconSet(e,t){e.openNode(this.tag,{type:"iconSet",priority:t.priority,id:t.x14Id||`{${n()}}`}),this.iconSetXform.render(e,t),e.closeNode()}createNewModel({attributes:e}){return{type:e.type,x14Id:e.id,priority:i.toIntValue(e.priority)}}onParserClose(e,t){Object.assign(this.model,t.model)}}e.exports=l},73828:(e,t,r)=>{const n=r(90837),i=r(84101);e.exports=class extends n{constructor(){super(),this.map={"xm:f":this.fExtXform=new i}}get tag(){return"x14:cfvo"}render(e,t){e.openNode(this.tag,{type:t.type}),void 0!==t.value&&this.fExtXform.render(e,t.value),e.closeNode()}createNewModel(e){return{type:e.attributes.type}}onParserClose(e,t){if("xm:f"===e)this.model.value=t.model?parseFloat(t.model):0}}},24719:(e,t,r)=>{const n=r(90837),i=r(97600),a=r(37502);e.exports=class extends n{constructor(){super(),this.map={"xm:sqref":this.sqRef=new i,"x14:cfRule":this.cfRule=new a}}get tag(){return"x14:conditionalFormatting"}prepare(e,t){e.rules.forEach((e=>{this.cfRule.prepare(e,t)}))}render(e,t){t.rules.some(a.isExt)&&(e.openNode(this.tag,{"xmlns:xm":"http://schemas.microsoft.com/office/excel/2006/main"}),t.rules.filter(a.isExt).forEach((t=>this.cfRule.render(e,t))),this.sqRef.render(e,t.ref),e.closeNode())}createNewModel(){return{rules:[]}}onParserClose(e,t){switch(e){case"xm:sqref":this.model.ref=t.model;break;case"x14:cfRule":this.model.rules.push(t.model)}}}},39018:(e,t,r)=>{const n=r(90837),i=r(37502),a=r(24719);e.exports=class extends n{constructor(){super(),this.map={"x14:conditionalFormatting":this.cfXform=new a}}get tag(){return"x14:conditionalFormattings"}hasContent(e){return void 0===e.hasExtContent&&(e.hasExtContent=e.some((e=>e.rules.some(i.isExt)))),e.hasExtContent}prepare(e,t){e.forEach((e=>{this.cfXform.prepare(e,t)}))}render(e,t){this.hasContent(t)&&(e.openNode(this.tag),t.forEach((t=>this.cfXform.render(e,t))),e.closeNode())}createNewModel(){return[]}onParserClose(e,t){this.model.push(t.model)}}},28805:(e,t,r)=>{const n=r(38835),i=r(90837),a=r(66951),o=r(73828);e.exports=class extends i{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new o,"x14:borderColor":this.borderColorXform=new a("x14:borderColor"),"x14:negativeBorderColor":this.negativeBorderColorXform=new a("x14:negativeBorderColor"),"x14:negativeFillColor":this.negativeFillColorXform=new a("x14:negativeFillColor"),"x14:axisColor":this.axisColorXform=new a("x14:axisColor")}}static isExt(e){return!e.gradient}get tag(){return"x14:dataBar"}render(e,t){e.openNode(this.tag,{minLength:n.toIntAttribute(t.minLength,0,!0),maxLength:n.toIntAttribute(t.maxLength,100,!0),border:n.toBoolAttribute(t.border,!1),gradient:n.toBoolAttribute(t.gradient,!0),negativeBarColorSameAsPositive:n.toBoolAttribute(t.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:n.toBoolAttribute(t.negativeBarBorderColorSameAsPositive,!0),axisPosition:n.toAttribute(t.axisPosition,"auto"),direction:n.toAttribute(t.direction,"leftToRight")}),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),this.borderColorXform.render(e,t.borderColor),this.negativeBorderColorXform.render(e,t.negativeBorderColor),this.negativeFillColorXform.render(e,t.negativeFillColor),this.axisColorXform.render(e,t.axisColor),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],minLength:n.toIntValue(e.minLength,0),maxLength:n.toIntValue(e.maxLength,100),border:n.toBoolValue(e.border,!1),gradient:n.toBoolValue(e.gradient,!0),negativeBarColorSameAsPositive:n.toBoolValue(e.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:n.toBoolValue(e.negativeBarBorderColorSameAsPositive,!0),axisPosition:n.toStringValue(e.axisPosition,"auto"),direction:n.toStringValue(e.direction,"leftToRight")}}onParserClose(e,t){const[,r]=e.split(":");if("cfvo"===r)this.model.cfvo.push(t.model);else this.model[r]=t.model}}},84101:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"xm:f"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}},2536:(e,t,r)=>{const n=r(38835),i=r(90837),a=r(73828),o=r(16557);e.exports=class extends i{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new a,"x14:cfIcon":this.cfIconXform=new o}}get tag(){return"x14:iconSet"}render(e,t){e.openNode(this.tag,{iconSet:n.toStringAttribute(t.iconSet),reverse:n.toBoolAttribute(t.reverse,!1),showValue:n.toBoolAttribute(t.showValue,!0),custom:n.toBoolAttribute(t.icons,!1)}),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),t.icons&&t.icons.forEach(((t,r)=>{t.iconId=r,this.cfIconXform.render(e,t)})),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],iconSet:n.toStringValue(e.iconSet,"3TrafficLights"),reverse:n.toBoolValue(e.reverse,!1),showValue:n.toBoolValue(e.showValue,!0)}}onParserClose(e,t){const[,r]=e.split(":");switch(r){case"cfvo":this.model.cfvo.push(t.model);break;case"cfIcon":this.model.icons||(this.model.icons=[]),this.model.icons.push(t.model);break;default:this.model[r]=t.model}}}},97600:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"xm:sqref"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}},30527:(e,t,r)=>{const n=r(38835),i=r(90837),a=r(47765),o=r(47372),s=r(70783),c=r(25485),l=r(93884),u=r(68849),d={"3Triangles":!0,"3Stars":!0,"5Boxes":!0},p=e=>{const{type:t,operator:r}=e;switch(t){case"containsText":case"containsBlanks":case"notContainsBlanks":case"containsErrors":case"notContainsErrors":return{type:"containsText",operator:t};default:return{type:t,operator:r}}};class f extends i{constructor(){super(),this.map={dataBar:this.databarXform=new o,extLst:this.extLstRefXform=new s,formula:this.formulaXform=new c,colorScale:this.colorScaleXform=new l,iconSet:this.iconSetXform=new u}}get tag(){return"cfRule"}static isPrimitive(e){return"iconSet"!==e.type||!e.custom&&!d[e.iconSet]}render(e,t){switch(t.type){case"expression":this.renderExpression(e,t);break;case"cellIs":this.renderCellIs(e,t);break;case"top10":this.renderTop10(e,t);break;case"aboveAverage":this.renderAboveAverage(e,t);break;case"dataBar":this.renderDataBar(e,t);break;case"colorScale":this.renderColorScale(e,t);break;case"iconSet":this.renderIconSet(e,t);break;case"containsText":this.renderText(e,t);break;case"timePeriod":this.renderTimePeriod(e,t)}}renderExpression(e,t){e.openNode(this.tag,{type:"expression",dxfId:t.dxfId,priority:t.priority}),this.formulaXform.render(e,t.formulae[0]),e.closeNode()}renderCellIs(e,t){e.openNode(this.tag,{type:"cellIs",dxfId:t.dxfId,priority:t.priority,operator:t.operator}),t.formulae.forEach((t=>{this.formulaXform.render(e,t)})),e.closeNode()}renderTop10(e,t){e.leafNode(this.tag,{type:"top10",dxfId:t.dxfId,priority:t.priority,percent:n.toBoolAttribute(t.percent,!1),bottom:n.toBoolAttribute(t.bottom,!1),rank:n.toIntValue(t.rank,10,!0)})}renderAboveAverage(e,t){e.leafNode(this.tag,{type:"aboveAverage",dxfId:t.dxfId,priority:t.priority,aboveAverage:n.toBoolAttribute(t.aboveAverage,!0)})}renderDataBar(e,t){e.openNode(this.tag,{type:"dataBar",priority:t.priority}),this.databarXform.render(e,t),this.extLstRefXform.render(e,t),e.closeNode()}renderColorScale(e,t){e.openNode(this.tag,{type:"colorScale",priority:t.priority}),this.colorScaleXform.render(e,t),e.closeNode()}renderIconSet(e,t){f.isPrimitive(t)&&(e.openNode(this.tag,{type:"iconSet",priority:t.priority}),this.iconSetXform.render(e,t),e.closeNode())}renderText(e,t){e.openNode(this.tag,{type:t.operator,dxfId:t.dxfId,priority:t.priority,operator:n.toStringAttribute(t.operator,"containsText")});const r=(e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];const t=new a(e.ref),{tl:r}=t;switch(e.operator){case"containsText":return`NOT(ISERROR(SEARCH("${e.text}",${r})))`;case"containsBlanks":return`LEN(TRIM(${r}))=0`;case"notContainsBlanks":return`LEN(TRIM(${r}))>0`;case"containsErrors":return`ISERROR(${r})`;case"notContainsErrors":return`NOT(ISERROR(${r}))`;default:return}})(t);r&&this.formulaXform.render(e,r),e.closeNode()}renderTimePeriod(e,t){e.openNode(this.tag,{type:"timePeriod",dxfId:t.dxfId,priority:t.priority,timePeriod:t.timePeriod});const r=(e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];const t=new a(e.ref),{tl:r}=t;switch(e.timePeriod){case"thisWeek":return`AND(TODAY()-ROUNDDOWN(${r},0)<=WEEKDAY(TODAY())-1,ROUNDDOWN(${r},0)-TODAY()<=7-WEEKDAY(TODAY()))`;case"lastWeek":return`AND(TODAY()-ROUNDDOWN(${r},0)>=(WEEKDAY(TODAY())),TODAY()-ROUNDDOWN(${r},0)<(WEEKDAY(TODAY())+7))`;case"nextWeek":return`AND(ROUNDDOWN(${r},0)-TODAY()>(7-WEEKDAY(TODAY())),ROUNDDOWN(${r},0)-TODAY()<(15-WEEKDAY(TODAY())))`;case"yesterday":return`FLOOR(${r},1)=TODAY()-1`;case"today":return`FLOOR(${r},1)=TODAY()`;case"tomorrow":return`FLOOR(${r},1)=TODAY()+1`;case"last7Days":return`AND(TODAY()-FLOOR(${r},1)<=6,FLOOR(${r},1)<=TODAY())`;case"lastMonth":return`AND(MONTH(${r})=MONTH(EDATE(TODAY(),0-1)),YEAR(${r})=YEAR(EDATE(TODAY(),0-1)))`;case"thisMonth":return`AND(MONTH(${r})=MONTH(TODAY()),YEAR(${r})=YEAR(TODAY()))`;case"nextMonth":return`AND(MONTH(${r})=MONTH(EDATE(TODAY(),0+1)),YEAR(${r})=YEAR(EDATE(TODAY(),0+1)))`;default:return}})(t);r&&this.formulaXform.render(e,r),e.closeNode()}createNewModel({attributes:e}){return{...p(e),dxfId:n.toIntValue(e.dxfId),priority:n.toIntValue(e.priority),timePeriod:e.timePeriod,percent:n.toBoolValue(e.percent),bottom:n.toBoolValue(e.bottom),rank:n.toIntValue(e.rank),aboveAverage:n.toBoolValue(e.aboveAverage)}}onParserClose(e,t){switch(e){case"dataBar":case"extLst":case"colorScale":case"iconSet":Object.assign(this.model,t.model);break;case"formula":this.model.formulae=this.model.formulae||[],this.model.formulae.push(t.model)}}}e.exports=f},8950:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"cfvo"}render(e,t){e.leafNode(this.tag,{type:t.type,val:t.value})}parseOpen(e){this.model={type:e.attributes.type,value:n.toFloatValue(e.attributes.val)}}parseClose(e){return e!==this.tag}}},93884:(e,t,r)=>{const n=r(90837),i=r(66951),a=r(8950);e.exports=class extends n{constructor(){super(),this.map={cfvo:this.cfvoXform=new a,color:this.colorXform=new i}}get tag(){return"colorScale"}render(e,t){e.openNode(this.tag),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),t.color.forEach((t=>{this.colorXform.render(e,t)})),e.closeNode()}createNewModel(e){return{cfvo:[],color:[]}}onParserClose(e,t){this.model[e].push(t.model)}}},28550:(e,t,r)=>{const n=r(90837),i=r(30527);e.exports=class extends n{constructor(){super(),this.map={cfRule:new i}}get tag(){return"conditionalFormatting"}render(e,t){t.rules.some(i.isPrimitive)&&(e.openNode(this.tag,{sqref:t.ref}),t.rules.forEach((r=>{i.isPrimitive(r)&&(r.ref=t.ref,this.map.cfRule.render(e,r))})),e.closeNode())}createNewModel({attributes:e}){return{ref:e.sqref,rules:[]}}onParserClose(e,t){this.model.rules.push(t.model)}}},62247:(e,t,r)=>{const n=r(38835),i=r(28550);e.exports=class extends n{constructor(){super(),this.cfXform=new i}get tag(){return"conditionalFormatting"}reset(){this.model=[]}prepare(e,t){let r=e.reduce(((e,t)=>Math.max(e,...t.rules.map((e=>e.priority||0)))),1);e.forEach((e=>{e.rules.forEach((e=>{e.priority||(e.priority=r++),e.style&&(e.dxfId=t.styles.addDxfStyle(e.style))}))}))}render(e,t){t.forEach((t=>{this.cfXform.render(e,t)}))}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"conditionalFormatting"===e.name&&(this.parser=this.cfXform,this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(!!this.parser.parseClose(e)||(this.model.push(this.parser.model),this.parser=void 0,!1))}reconcile(e,t){e.forEach((e=>{e.rules.forEach((e=>{void 0!==e.dxfId&&(e.style=t.styles.getDxfStyle(e.dxfId),delete e.dxfId)}))}))}}},47372:(e,t,r)=>{const n=r(90837),i=r(66951),a=r(8950);e.exports=class extends n{constructor(){super(),this.map={cfvo:this.cfvoXform=new a,color:this.colorXform=new i}}get tag(){return"dataBar"}render(e,t){e.openNode(this.tag),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),this.colorXform.render(e,t.color),e.closeNode()}createNewModel(){return{cfvo:[]}}onParserClose(e,t){switch(e){case"cfvo":this.model.cfvo.push(t.model);break;case"color":this.model.color=t.model}}}},70783:(e,t,r)=>{const n=r(38835),i=r(90837);class a extends n{get tag(){return"x14:id"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}class o extends i{constructor(){super(),this.map={"x14:id":this.idXform=new a}}get tag(){return"ext"}render(e,t){e.openNode(this.tag,{uri:"{B025F937-C7B1-47D3-B67F-A62EFF666E3E}","xmlns:x14":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"}),this.idXform.render(e,t.x14Id),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model.x14Id=t.model}}e.exports=class extends i{constructor(){super(),this.map={ext:new o}}get tag(){return"extLst"}render(e,t){e.openNode(this.tag),this.map.ext.render(e,t),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){Object.assign(this.model,t.model)}}},25485:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"formula"}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=""}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}}},68849:(e,t,r)=>{const n=r(38835),i=r(90837),a=r(8950);e.exports=class extends i{constructor(){super(),this.map={cfvo:this.cfvoXform=new a}}get tag(){return"iconSet"}render(e,t){e.openNode(this.tag,{iconSet:n.toStringAttribute(t.iconSet,"3TrafficLights"),reverse:n.toBoolAttribute(t.reverse,!1),showValue:n.toBoolAttribute(t.showValue,!0)}),t.cfvo.forEach((t=>{this.cfvoXform.render(e,t)})),e.closeNode()}createNewModel({attributes:e}){return{iconSet:n.toStringValue(e.iconSet,"3TrafficLights"),reverse:n.toBoolValue(e.reverse),showValue:n.toBoolValue(e.showValue),cfvo:[]}}onParserClose(e,t){this.model[e].push(t.model)}}},65165:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"col"}prepare(e,t){const r=t.styles.addStyleModel(e.style||{});r&&(e.styleId=r)}render(e,t){e.openNode("col"),e.addAttribute("min",t.min),e.addAttribute("max",t.max),t.width&&e.addAttribute("width",t.width),t.styleId&&e.addAttribute("style",t.styleId),t.hidden&&e.addAttribute("hidden","1"),t.bestFit&&e.addAttribute("bestFit","1"),t.outlineLevel&&e.addAttribute("outlineLevel",t.outlineLevel),t.collapsed&&e.addAttribute("collapsed","1"),e.addAttribute("customWidth","1"),e.closeNode()}parseOpen(e){if("col"===e.name){const t=this.model={min:parseInt(e.attributes.min||"0",10),max:parseInt(e.attributes.max||"0",10),width:void 0===e.attributes.width?void 0:parseFloat(e.attributes.width||"0")};return e.attributes.style&&(t.styleId=parseInt(e.attributes.style,10)),!0!==e.attributes.hidden&&"true"!==e.attributes.hidden&&1!==e.attributes.hidden&&"1"!==e.attributes.hidden||(t.hidden=!0),e.attributes.bestFit&&(t.bestFit=!0),e.attributes.outlineLevel&&(t.outlineLevel=parseInt(e.attributes.outlineLevel,10)),e.attributes.collapsed&&(t.collapsed=!0),!0}return!1}parseText(){}parseClose(){return!1}reconcile(e,t){e.styleId&&(e.style=t.styles.getStyleModel(e.styleId))}}},83068:(e,t,r)=>{const n=r(15797),i=r(86144),a=r(48376),o=r(38835),s=r(47765);function c(e,t,r,n){const i=t[r];void 0!==i?e[r]=i:void 0!==n&&(e[r]=n)}function l(e,t,r,n){const i=t[r];void 0!==i?e[r]=function(e){switch(e){case"1":case"true":return!0;default:return!1}}(i):void 0!==n&&(e[r]=n)}e.exports=class extends o{get tag(){return"dataValidations"}render(e,t){const r=function(e){const t=n.map(e,((e,t)=>({address:t,dataValidation:e,marked:!1}))).sort(((e,t)=>n.strcmp(e.address,t.address))),r=n.keyBy(t,"address"),i=(t,r,i)=>{for(let o=0;o<r;o++){const r=a.encodeAddress(t.row+o,i);if(!e[r]||!n.isEqual(e[t.address],e[r]))return!1}return!0};return t.map((t=>{if(!t.marked){const o=a.decodeEx(t.address);if(o.dimensions)return r[o.dimensions].marked=!0,{...t.dataValidation,sqref:t.address};let s=1,c=a.encodeAddress(o.row+s,o.col);for(;e[c]&&n.isEqual(t.dataValidation,e[c]);)s++,c=a.encodeAddress(o.row+s,o.col);let l=1;for(;i(o,s,o.col+l);)l++;for(let e=0;e<s;e++)for(let t=0;t<l;t++)c=a.encodeAddress(o.row+e,o.col+t),r[c].marked=!0;if(s>1||l>1){const e=o.row+(s-1),r=o.col+(l-1);return{...t.dataValidation,sqref:`${t.address}:${a.encodeAddress(e,r)}`}}return{...t.dataValidation,sqref:t.address}}return null})).filter(Boolean)}(t);r.length&&(e.openNode("dataValidations",{count:r.length}),r.forEach((t=>{e.openNode("dataValidation"),"any"!==t.type&&(e.addAttribute("type",t.type),t.operator&&"list"!==t.type&&"between"!==t.operator&&e.addAttribute("operator",t.operator),t.allowBlank&&e.addAttribute("allowBlank","1")),t.showInputMessage&&e.addAttribute("showInputMessage","1"),t.promptTitle&&e.addAttribute("promptTitle",t.promptTitle),t.prompt&&e.addAttribute("prompt",t.prompt),t.showErrorMessage&&e.addAttribute("showErrorMessage","1"),t.errorStyle&&e.addAttribute("errorStyle",t.errorStyle),t.errorTitle&&e.addAttribute("errorTitle",t.errorTitle),t.error&&e.addAttribute("error",t.error),e.addAttribute("sqref",t.sqref),(t.formulae||[]).forEach(((r,n)=>{e.openNode(`formula${n+1}`),"date"===t.type?e.writeText(i.dateToExcel(new Date(r))):e.writeText(r),e.closeNode()})),e.closeNode()})),e.closeNode())}parseOpen(e){switch(e.name){case"dataValidations":return this.model={},!0;case"dataValidation":{this._address=e.attributes.sqref;const t={type:e.attributes.type||"any",formulae:[]};switch(e.attributes.type&&l(t,e.attributes,"allowBlank"),l(t,e.attributes,"showInputMessage"),l(t,e.attributes,"showErrorMessage"),t.type){case"any":case"list":case"custom":break;default:c(t,e.attributes,"operator","between")}return c(t,e.attributes,"promptTitle"),c(t,e.attributes,"prompt"),c(t,e.attributes,"errorStyle"),c(t,e.attributes,"errorTitle"),c(t,e.attributes,"error"),this._dataValidation=t,!0}case"formula1":case"formula2":return this._formula=[],!0;default:return!1}}parseText(e){this._formula&&this._formula.push(e)}parseClose(e){switch(e){case"dataValidations":return!1;case"dataValidation":this._dataValidation.formulae&&this._dataValidation.formulae.length||(delete this._dataValidation.formulae,delete this._dataValidation.operator);return(this._address.split(/\s+/g)||[]).forEach((e=>{if(e.includes(":")){new s(e).forEachAddress((e=>{this.model[e]=this._dataValidation}))}else this.model[e]=this._dataValidation})),!0;case"formula1":case"formula2":{let e=this._formula.join("");switch(this._dataValidation.type){case"whole":case"textLength":e=parseInt(e,10);break;case"decimal":e=parseFloat(e);break;case"date":e=i.excelToDate(parseFloat(e))}return this._dataValidation.formulae.push(e),this._formula=void 0,!0}default:return!0}}}},49160:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"dimension"}render(e,t){t&&e.leafNode("dimension",{ref:t})}parseOpen(e){return"dimension"===e.name&&(this.model=e.attributes.ref,!0)}parseText(){}parseClose(){return!1}}},43572:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"drawing"}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){return e.name===this.tag&&(this.model={rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},98837:(e,t,r)=>{const n=r(90837),i=r(39018);class a extends n{constructor(){super(),this.map={"x14:conditionalFormattings":this.conditionalFormattings=new i}}get tag(){return"ext"}hasContent(e){return this.conditionalFormattings.hasContent(e.conditionalFormattings)}prepare(e,t){this.conditionalFormattings.prepare(e.conditionalFormattings,t)}render(e,t){e.openNode("ext",{uri:"{78C0D931-6437-407d-A8EE-F0AAD7539E65}","xmlns:x14":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"}),this.conditionalFormattings.render(e,t.conditionalFormattings),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}}e.exports=class extends n{constructor(){super(),this.map={ext:this.ext=new a}}get tag(){return"extLst"}prepare(e,t){this.ext.prepare(e,t)}hasContent(e){return this.ext.hasContent(e)}render(e,t){this.hasContent(t)&&(e.openNode("extLst"),this.ext.render(e,t),e.closeNode())}createNewModel(){return{}}onParserClose(e,t){Object.assign(this.model,t.model)}}},58466:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"headerFooter"}render(e,t){if(t){e.addRollback();let r=!1;e.openNode("headerFooter"),t.differentFirst&&(e.addAttribute("differentFirst","1"),r=!0),t.differentOddEven&&(e.addAttribute("differentOddEven","1"),r=!0),t.oddHeader&&"string"==typeof t.oddHeader&&(e.leafNode("oddHeader",null,t.oddHeader),r=!0),t.oddFooter&&"string"==typeof t.oddFooter&&(e.leafNode("oddFooter",null,t.oddFooter),r=!0),t.evenHeader&&"string"==typeof t.evenHeader&&(e.leafNode("evenHeader",null,t.evenHeader),r=!0),t.evenFooter&&"string"==typeof t.evenFooter&&(e.leafNode("evenFooter",null,t.evenFooter),r=!0),t.firstHeader&&"string"==typeof t.firstHeader&&(e.leafNode("firstHeader",null,t.firstHeader),r=!0),t.firstFooter&&"string"==typeof t.firstFooter&&(e.leafNode("firstFooter",null,t.firstFooter),r=!0),r?(e.closeNode(),e.commit()):e.rollback()}}parseOpen(e){switch(e.name){case"headerFooter":return this.model={},e.attributes.differentFirst&&(this.model.differentFirst=1===parseInt(e.attributes.differentFirst,0)),e.attributes.differentOddEven&&(this.model.differentOddEven=1===parseInt(e.attributes.differentOddEven,0)),!0;case"oddHeader":return this.currentNode="oddHeader",!0;case"oddFooter":return this.currentNode="oddFooter",!0;case"evenHeader":return this.currentNode="evenHeader",!0;case"evenFooter":return this.currentNode="evenFooter",!0;case"firstHeader":return this.currentNode="firstHeader",!0;case"firstFooter":return this.currentNode="firstFooter",!0;default:return!1}}parseText(e){switch(this.currentNode){case"oddHeader":this.model.oddHeader=e;break;case"oddFooter":this.model.oddFooter=e;break;case"evenHeader":this.model.evenHeader=e;break;case"evenFooter":this.model.evenFooter=e;break;case"firstHeader":this.model.firstHeader=e;break;case"firstFooter":this.model.firstFooter=e}}parseClose(){switch(this.currentNode){case"oddHeader":case"oddFooter":case"evenHeader":case"evenFooter":case"firstHeader":case"firstFooter":return this.currentNode=void 0,!0;default:return!1}}}},30221:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"hyperlink"}render(e,t){e.leafNode("hyperlink",{ref:t.address,"r:id":t.rId,tooltip:t.tooltip})}parseOpen(e){return"hyperlink"===e.name&&(this.model={address:e.attributes.ref,rId:e.attributes["r:id"],tooltip:e.attributes.tooltip},!0)}parseText(){}parseClose(){return!1}}},30238:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"mergeCell"}render(e,t){e.leafNode("mergeCell",{ref:t})}parseOpen(e){return"mergeCell"===e.name&&(this.model=e.attributes.ref,!0)}parseText(){}parseClose(){return!1}}},21773:(e,t,r)=>{const n=r(15797),i=r(47765),a=r(48376),o=r(79931);e.exports=class{constructor(){this.merges={}}add(e){if(this.merges[e.master])this.merges[e.master].expandToAddress(e.address);else{const t=`${e.master}:${e.address}`;this.merges[e.master]=new i(t)}}get mergeCells(){return n.map(this.merges,(e=>e.range))}reconcile(e,t){n.each(e,(e=>{const r=a.decode(e);for(let e=r.top;e<=r.bottom;e++){const n=t[e-1];for(let t=r.left;t<=r.right;t++){const i=n.cells[t-1];i?i.type===o.ValueType.Merge&&(i.master=r.tl):n.cells[t]={type:o.ValueType.Null,address:a.encodeAddress(e,t)}}}}))}getMasterAddress(e){const t=this.hash[e];return t&&t.tl}}},54494:(e,t,r)=>{const n=r(38835),i=e=>void 0!==e;e.exports=class extends n{get tag(){return"outlinePr"}render(e,t){return!(!t||!i(t.summaryBelow)&&!i(t.summaryRight))&&(e.leafNode(this.tag,{summaryBelow:i(t.summaryBelow)?Number(t.summaryBelow):void 0,summaryRight:i(t.summaryRight)?Number(t.summaryRight):void 0}),!0)}parseOpen(e){return e.name===this.tag&&(this.model={summaryBelow:i(e.attributes.summaryBelow)?Boolean(Number(e.attributes.summaryBelow)):void 0,summaryRight:i(e.attributes.summaryRight)?Boolean(Number(e.attributes.summaryRight)):void 0},!0)}parseText(){}parseClose(){return!1}}},36238:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"brk"}render(e,t){e.leafNode("brk",t)}parseOpen(e){return"brk"===e.name&&(this.model=e.attributes.ref,!0)}parseText(){}parseClose(){return!1}}},27131:(e,t,r)=>{const n=r(15797),i=r(38835);e.exports=class extends i{get tag(){return"pageMargins"}render(e,t){if(t){const r={left:t.left,right:t.right,top:t.top,bottom:t.bottom,header:t.header,footer:t.footer};n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={left:parseFloat(e.attributes.left||.7),right:parseFloat(e.attributes.right||.7),top:parseFloat(e.attributes.top||.75),bottom:parseFloat(e.attributes.bottom||.75),header:parseFloat(e.attributes.header||.3),footer:parseFloat(e.attributes.footer||.3)},!0)}parseText(){}parseClose(){return!1}}},97028:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"pageSetUpPr"}render(e,t){return!(!t||!t.fitToPage)&&(e.leafNode(this.tag,{fitToPage:t.fitToPage?"1":void 0}),!0)}parseOpen(e){return e.name===this.tag&&(this.model={fitToPage:"1"===e.attributes.fitToPage},!0)}parseText(){}parseClose(){return!1}}},98350:(e,t,r)=>{const n=r(15797),i=r(38835);function a(e){return e?"1":void 0}function o(e){if("overThenDown"===e)return e}function s(e){switch(e){case"atEnd":case"asDisplyed":return e;default:return}}function c(e){switch(e){case"dash":case"blank":case"NA":return e;default:return}}e.exports=class extends i{get tag(){return"pageSetup"}render(e,t){if(t){const r={paperSize:t.paperSize,orientation:t.orientation,horizontalDpi:t.horizontalDpi,verticalDpi:t.verticalDpi,pageOrder:o(t.pageOrder),blackAndWhite:a(t.blackAndWhite),draft:a(t.draft),cellComments:s(t.cellComments),errors:c(t.errors),scale:t.scale,fitToWidth:t.fitToWidth,fitToHeight:t.fitToHeight,firstPageNumber:t.firstPageNumber,useFirstPageNumber:a(t.firstPageNumber),usePrinterDefaults:a(t.usePrinterDefaults),copies:t.copies};n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={paperSize:(t=e.attributes.paperSize,void 0!==t?parseInt(t,10):void 0),orientation:e.attributes.orientation||"portrait",horizontalDpi:parseInt(e.attributes.horizontalDpi||"4294967295",10),verticalDpi:parseInt(e.attributes.verticalDpi||"4294967295",10),pageOrder:e.attributes.pageOrder||"downThenOver",blackAndWhite:"1"===e.attributes.blackAndWhite,draft:"1"===e.attributes.draft,cellComments:e.attributes.cellComments||"None",errors:e.attributes.errors||"displayed",scale:parseInt(e.attributes.scale||"100",10),fitToWidth:parseInt(e.attributes.fitToWidth||"1",10),fitToHeight:parseInt(e.attributes.fitToHeight||"1",10),firstPageNumber:parseInt(e.attributes.firstPageNumber||"1",10),useFirstPageNumber:"1"===e.attributes.useFirstPageNumber,usePrinterDefaults:"1"===e.attributes.usePrinterDefaults,copies:parseInt(e.attributes.copies||"1",10)},!0);var t}parseText(){}parseClose(){return!1}}},33210:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"picture"}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){return e.name===this.tag&&(this.model={rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},89768:(e,t,r)=>{const n=r(15797),i=r(38835);function a(e){return e?"1":void 0}e.exports=class extends i{get tag(){return"printOptions"}render(e,t){if(t){const r={headings:a(t.showRowColHeaders),gridLines:a(t.showGridLines),horizontalCentered:a(t.horizontalCentered),verticalCentered:a(t.verticalCentered)};n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={showRowColHeaders:"1"===e.attributes.headings,showGridLines:"1"===e.attributes.gridLines,horizontalCentered:"1"===e.attributes.horizontalCentered,verticalCentered:"1"===e.attributes.verticalCentered},!0)}parseText(){}parseClose(){return!1}}},8821:(e,t,r)=>{"use strict";const n=r(36238),i=r(750);e.exports=class extends i{constructor(){super({tag:"rowBreaks",count:!0,childXform:new n})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),this.count&&(e.addAttribute(this.$count,t.length),e.addAttribute("manualBreakCount",t.length));const{childXform:r}=this;t.forEach((t=>{r.render(e,t)})),e.closeNode()}else this.empty&&e.leafNode(this.tag)}}},87730:(e,t,r)=>{const n=r(38835),i=r(28731);e.exports=class extends n{constructor(e){super(),this.maxItems=e&&e.maxItems,this.map={c:new i}}get tag(){return"row"}prepare(e,t){const r=t.styles.addStyleModel(e.style);r&&(e.styleId=r);const n=this.map.c;e.cells.forEach((e=>{n.prepare(e,t)}))}render(e,t,r){e.openNode("row"),e.addAttribute("r",t.number),t.height&&(e.addAttribute("ht",t.height),e.addAttribute("customHeight","1")),t.hidden&&e.addAttribute("hidden","1"),t.min>0&&t.max>0&&t.min<=t.max&&e.addAttribute("spans",`${t.min}:${t.max}`),t.styleId&&(e.addAttribute("s",t.styleId),e.addAttribute("customFormat","1")),e.addAttribute("x14ac:dyDescent","0.25"),t.outlineLevel&&e.addAttribute("outlineLevel",t.outlineLevel),t.collapsed&&e.addAttribute("collapsed","1");const n=this.map.c;t.cells.forEach((t=>{n.render(e,t,r)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if("row"===e.name){this.numRowsSeen+=1;const t=e.attributes.spans?e.attributes.spans.split(":").map((e=>parseInt(e,10))):[void 0,void 0],r=this.model={number:parseInt(e.attributes.r,10),min:t[0],max:t[1],cells:[]};return e.attributes.s&&(r.styleId=parseInt(e.attributes.s,10)),!0!==e.attributes.hidden&&"true"!==e.attributes.hidden&&1!==e.attributes.hidden&&"1"!==e.attributes.hidden||(r.hidden=!0),e.attributes.bestFit&&(r.bestFit=!0),e.attributes.ht&&(r.height=parseFloat(e.attributes.ht)),e.attributes.outlineLevel&&(r.outlineLevel=parseInt(e.attributes.outlineLevel,10)),e.attributes.collapsed&&(r.collapsed=!0),!0}return this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){if(this.model.cells.push(this.parser.model),this.maxItems&&this.model.cells.length>this.maxItems)throw new Error(`Max column count (${this.maxItems}) exceeded`);this.parser=void 0}return!0}return!1}reconcile(e,t){e.style=e.styleId?t.styles.getStyleModel(e.styleId):{},void 0!==e.styleId&&(e.styleId=void 0);const r=this.map.c;e.cells.forEach((e=>{r.reconcile(e,t)}))}}},43435:(e,t,r)=>{const n=r(15797),i=r(38835);e.exports=class extends i{get tag(){return"sheetFormatPr"}render(e,t){if(t){const r={defaultRowHeight:t.defaultRowHeight,outlineLevelRow:t.outlineLevelRow,outlineLevelCol:t.outlineLevelCol,"x14ac:dyDescent":t.dyDescent};t.defaultColWidth&&(r.defaultColWidth=t.defaultColWidth),t.defaultRowHeight&&15===t.defaultRowHeight||(r.customHeight="1"),n.some(r,(e=>void 0!==e))&&e.leafNode("sheetFormatPr",r)}}parseOpen(e){return"sheetFormatPr"===e.name&&(this.model={defaultRowHeight:parseFloat(e.attributes.defaultRowHeight||"0"),dyDescent:parseFloat(e.attributes["x14ac:dyDescent"]||"0"),outlineLevelRow:parseInt(e.attributes.outlineLevelRow||"0",10),outlineLevelCol:parseInt(e.attributes.outlineLevelCol||"0",10)},e.attributes.defaultColWidth&&(this.model.defaultColWidth=parseFloat(e.attributes.defaultColWidth)),!0)}parseText(){}parseClose(){return!1}}},25262:(e,t,r)=>{const n=r(38835),i=r(66951),a=r(97028),o=r(54494);e.exports=class extends n{constructor(){super(),this.map={tabColor:new i("tabColor"),pageSetUpPr:new a,outlinePr:new o}}get tag(){return"sheetPr"}render(e,t){if(t){e.addRollback(),e.openNode("sheetPr");let r=!1;r=this.map.tabColor.render(e,t.tabColor)||r,r=this.map.pageSetUpPr.render(e,t.pageSetup)||r,r=this.map.outlinePr.render(e,t.outlineProperties)||r,r?(e.closeNode(),e.commit()):e.rollback()}}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.reset(),!0):!!this.map[e.name]&&(this.parser=this.map[e.name],this.parser.parseOpen(e),!0)}parseText(e){return!!this.parser&&(this.parser.parseText(e),!0)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(this.map.tabColor.model||this.map.pageSetUpPr.model||this.map.outlinePr.model?(this.model={},this.map.tabColor.model&&(this.model.tabColor=this.map.tabColor.model),this.map.pageSetUpPr.model&&(this.model.pageSetup=this.map.pageSetUpPr.model),this.map.outlinePr.model&&(this.model.outlineProperties=this.map.outlinePr.model)):this.model=null,!1)}}},4248:(e,t,r)=>{const n=r(15797),i=r(38835);function a(e,t){return e?t:void 0}function o(e,t){return e===t||void 0}e.exports=class extends i{get tag(){return"sheetProtection"}render(e,t){if(t){const r={sheet:a(t.sheet,"1"),selectLockedCells:!1===t.selectLockedCells?"1":void 0,selectUnlockedCells:!1===t.selectUnlockedCells?"1":void 0,formatCells:a(t.formatCells,"0"),formatColumns:a(t.formatColumns,"0"),formatRows:a(t.formatRows,"0"),insertColumns:a(t.insertColumns,"0"),insertRows:a(t.insertRows,"0"),insertHyperlinks:a(t.insertHyperlinks,"0"),deleteColumns:a(t.deleteColumns,"0"),deleteRows:a(t.deleteRows,"0"),sort:a(t.sort,"0"),autoFilter:a(t.autoFilter,"0"),pivotTables:a(t.pivotTables,"0")};t.sheet&&(r.algorithmName=t.algorithmName,r.hashValue=t.hashValue,r.saltValue=t.saltValue,r.spinCount=t.spinCount,r.objects=a(!1===t.objects,"1"),r.scenarios=a(!1===t.scenarios,"1")),n.some(r,(e=>void 0!==e))&&e.leafNode(this.tag,r)}}parseOpen(e){return e.name===this.tag&&(this.model={sheet:o(e.attributes.sheet,"1"),objects:"1"!==e.attributes.objects&&void 0,scenarios:"1"!==e.attributes.scenarios&&void 0,selectLockedCells:"1"!==e.attributes.selectLockedCells&&void 0,selectUnlockedCells:"1"!==e.attributes.selectUnlockedCells&&void 0,formatCells:o(e.attributes.formatCells,"0"),formatColumns:o(e.attributes.formatColumns,"0"),formatRows:o(e.attributes.formatRows,"0"),insertColumns:o(e.attributes.insertColumns,"0"),insertRows:o(e.attributes.insertRows,"0"),insertHyperlinks:o(e.attributes.insertHyperlinks,"0"),deleteColumns:o(e.attributes.deleteColumns,"0"),deleteRows:o(e.attributes.deleteRows,"0"),sort:o(e.attributes.sort,"0"),autoFilter:o(e.attributes.autoFilter,"0"),pivotTables:o(e.attributes.pivotTables,"0")},e.attributes.algorithmName&&(this.model.algorithmName=e.attributes.algorithmName,this.model.hashValue=e.attributes.hashValue,this.model.saltValue=e.attributes.saltValue,this.model.spinCount=parseInt(e.attributes.spinCount,10)),!0)}parseText(){}parseClose(){return!1}}},61632:(e,t,r)=>{const n=r(48376),i=r(38835),a={frozen:"frozen",frozenSplit:"frozen",split:"split"};e.exports=class extends i{get tag(){return"sheetView"}prepare(e){switch(e.state){case"frozen":case"split":break;default:e.state="normal"}}render(e,t){e.openNode("sheetView",{workbookViewId:t.workbookViewId||0});const r=function(t,r,n){n&&e.addAttribute(t,r)};let i,a,o,s;switch(r("rightToLeft","1",!0===t.rightToLeft),r("tabSelected","1",t.tabSelected),r("showRuler","0",!1===t.showRuler),r("showRowColHeaders","0",!1===t.showRowColHeaders),r("showGridLines","0",!1===t.showGridLines),r("zoomScale",t.zoomScale,t.zoomScale),r("zoomScaleNormal",t.zoomScaleNormal,t.zoomScaleNormal),r("view",t.style,t.style),t.state){case"frozen":a=t.xSplit||0,o=t.ySplit||0,i=t.topLeftCell||n.getAddress(o+1,a+1).address,s=(t.xSplit&&t.ySplit?"bottomRight":t.xSplit&&"topRight")||"bottomLeft",e.leafNode("pane",{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:i,activePane:s,state:"frozen"}),e.leafNode("selection",{pane:s,activeCell:t.activeCell,sqref:t.activeCell});break;case"split":"topLeft"===t.activePane&&(t.activePane=void 0),e.leafNode("pane",{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:t.topLeftCell,activePane:t.activePane}),e.leafNode("selection",{pane:t.activePane,activeCell:t.activeCell,sqref:t.activeCell});break;case"normal":t.activeCell&&e.leafNode("selection",{activeCell:t.activeCell,sqref:t.activeCell})}e.closeNode()}parseOpen(e){switch(e.name){case"sheetView":return this.sheetView={workbookViewId:parseInt(e.attributes.workbookViewId,10),rightToLeft:"1"===e.attributes.rightToLeft,tabSelected:"1"===e.attributes.tabSelected,showRuler:!("0"===e.attributes.showRuler),showRowColHeaders:!("0"===e.attributes.showRowColHeaders),showGridLines:!("0"===e.attributes.showGridLines),zoomScale:parseInt(e.attributes.zoomScale||"100",10),zoomScaleNormal:parseInt(e.attributes.zoomScaleNormal||"100",10),style:e.attributes.view},this.pane=void 0,this.selections={},!0;case"pane":return this.pane={xSplit:parseInt(e.attributes.xSplit||"0",10),ySplit:parseInt(e.attributes.ySplit||"0",10),topLeftCell:e.attributes.topLeftCell,activePane:e.attributes.activePane||"topLeft",state:e.attributes.state},!0;case"selection":{const t=e.attributes.pane||"topLeft";return this.selections[t]={pane:t,activeCell:e.attributes.activeCell},!0}default:return!1}}parseText(){}parseClose(e){let t,r;return"sheetView"!==e||(this.sheetView&&this.pane?(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,state:a[this.pane.state]||"split",xSplit:this.pane.xSplit,ySplit:this.pane.ySplit,topLeftCell:this.pane.topLeftCell,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},"split"===this.model.state&&(t.activePane=this.pane.activePane),r=this.selections[this.pane.activePane],r&&r.activeCell&&(t.activeCell=r.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)):(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,state:"normal",showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},r=this.selections.topLeft,r&&r.activeCell&&(t.activeCell=r.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)),!1)}reconcile(){}}},1427:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"tablePart"}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){return e.name===this.tag&&(this.model={rId:e.attributes["r:id"]},!0)}parseText(){}parseClose(){return!1}}},51114:(e,t,r)=>{const n=r(15797),i=r(48376),a=r(91483),o=r(46405),s=r(21773),c=r(38835),l=r(750),u=r(87730),d=r(65165),p=r(49160),f=r(30221),m=r(30238),g=r(83068),_=r(25262),h=r(43435),y=r(61632),v=r(4248),b=r(27131),k=r(98350),x=r(89768),E=r(37773),S=r(33210),D=r(43572),w=r(1427),T=r(8821),C=r(58466),A=r(62247),N=r(98837),P=(e,t)=>{if(!t||!t.length)return e;if(!e||!e.length)return t;const r={},n={};return e.forEach((e=>{r[e.ref]=e,e.rules.forEach((e=>{const{x14Id:t}=e;t&&(n[t]=e)}))})),t.forEach((t=>{t.rules.forEach((i=>{const a=n[i.x14Id];a?((e,t)=>{Object.keys(t).forEach((r=>{const n=e[r],i=t[r];void 0===n&&void 0!==i&&(e[r]=i)}))})(a,i):r[t.ref]?r[t.ref].rules.push(i):e.push({ref:t.ref,rules:[i]})}))})),e};class I extends c{constructor(e){super();const{maxRows:t,maxCols:r}=e||{};this.map={sheetPr:new _,dimension:new p,sheetViews:new l({tag:"sheetViews",count:!1,childXform:new y}),sheetFormatPr:new h,cols:new l({tag:"cols",count:!1,childXform:new d}),sheetData:new l({tag:"sheetData",count:!1,empty:!0,childXform:new u({maxItems:r}),maxItems:t}),autoFilter:new E,mergeCells:new l({tag:"mergeCells",count:!0,childXform:new m}),rowBreaks:new T,hyperlinks:new l({tag:"hyperlinks",count:!1,childXform:new f}),pageMargins:new b,dataValidations:new g,pageSetup:new k,headerFooter:new C,printOptions:new x,picture:new S,drawing:new D,sheetProtection:new v,tableParts:new l({tag:"tableParts",count:!0,childXform:new w}),conditionalFormatting:new A,extLst:new N}}prepare(e,t){t.merges=new s,e.hyperlinks=t.hyperlinks=[],e.comments=t.comments=[],t.formulae={},t.siFormulae=0,this.map.cols.prepare(e.cols,t),this.map.sheetData.prepare(e.rows,t),this.map.conditionalFormatting.prepare(e.conditionalFormattings,t),e.mergeCells=t.merges.mergeCells;const r=e.rels=[];function n(e){return`rId${e.length+1}`}if(e.hyperlinks.forEach((e=>{const t=n(r);e.rId=t,r.push({Id:t,Type:o.Hyperlink,Target:e.target,TargetMode:"External"})})),e.comments.length>0){const a={Id:n(r),Type:o.Comments,Target:`../comments${e.id}.xml`};r.push(a);const s={Id:n(r),Type:o.VmlDrawing,Target:`../drawings/vmlDrawing${e.id}.vml`};r.push(s),e.comments.forEach((e=>{e.refAddress=i.decodeAddress(e.ref)})),t.commentRefs.push({commentName:`comments${e.id}`,vmlDrawing:`vmlDrawing${e.id}`})}const a=[];let c;e.media.forEach((i=>{if("background"===i.type){const a=n(r);c=t.media[i.imageId],r.push({Id:a,Type:o.Image,Target:`../media/${c.name}.${c.extension}`}),e.background={rId:a},e.image=t.media[i.imageId]}else if("image"===i.type){let{drawing:s}=e;c=t.media[i.imageId],s||(s=e.drawing={rId:n(r),name:"drawing"+ ++t.drawingsCount,anchors:[],rels:[]},t.drawings.push(s),r.push({Id:s.rId,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",Target:`../drawings/${s.name}.xml`}));let l=this.preImageId===i.imageId?a[i.imageId]:a[s.rels.length];l||(l=n(s.rels),a[s.rels.length]=l,s.rels.push({Id:l,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`../media/${c.name}.${c.extension}`}));const u={picture:{rId:l},range:i.range};if(i.hyperlinks&&i.hyperlinks.hyperlink){const e=n(s.rels);a[s.rels.length]=e,u.picture.hyperlinks={tooltip:i.hyperlinks.tooltip,rId:e},s.rels.push({Id:e,Type:o.Hyperlink,Target:i.hyperlinks.hyperlink,TargetMode:"External"})}this.preImageId=i.imageId,s.anchors.push(u)}})),e.tables.forEach((e=>{const i=n(r);e.rId=i,r.push({Id:i,Type:o.Table,Target:`../tables/${e.target}`}),e.columns.forEach((e=>{const{style:r}=e;r&&(e.dxfId=t.styles.addDxfStyle(r))}))})),this.map.extLst.prepare(e,t)}render(e,t){e.openXml(a.StdDocAttributes),e.openNode("worksheet",I.WORKSHEET_ATTRIBUTES);const r=t.properties?{defaultRowHeight:t.properties.defaultRowHeight,dyDescent:t.properties.dyDescent,outlineLevelCol:t.properties.outlineLevelCol,outlineLevelRow:t.properties.outlineLevelRow}:void 0;t.properties&&t.properties.defaultColWidth&&(r.defaultColWidth=t.properties.defaultColWidth);const n={outlineProperties:t.properties&&t.properties.outlineProperties,tabColor:t.properties&&t.properties.tabColor,pageSetup:t.pageSetup&&t.pageSetup.fitToPage?{fitToPage:t.pageSetup.fitToPage}:void 0},i=t.pageSetup&&t.pageSetup.margins,s={showRowColHeaders:t.pageSetup&&t.pageSetup.showRowColHeaders,showGridLines:t.pageSetup&&t.pageSetup.showGridLines,horizontalCentered:t.pageSetup&&t.pageSetup.horizontalCentered,verticalCentered:t.pageSetup&&t.pageSetup.verticalCentered},c=t.sheetProtection;this.map.sheetPr.render(e,n),this.map.dimension.render(e,t.dimensions),this.map.sheetViews.render(e,t.views),this.map.sheetFormatPr.render(e,r),this.map.cols.render(e,t.cols),this.map.sheetData.render(e,t.rows),this.map.sheetProtection.render(e,c),this.map.autoFilter.render(e,t.autoFilter),this.map.mergeCells.render(e,t.mergeCells),this.map.conditionalFormatting.render(e,t.conditionalFormattings),this.map.dataValidations.render(e,t.dataValidations),this.map.hyperlinks.render(e,t.hyperlinks),this.map.printOptions.render(e,s),this.map.pageMargins.render(e,i),this.map.pageSetup.render(e,t.pageSetup),this.map.headerFooter.render(e,t.headerFooter),this.map.rowBreaks.render(e,t.rowBreaks),this.map.drawing.render(e,t.drawing),this.map.picture.render(e,t.background),this.map.tableParts.render(e,t.tables),this.map.extLst.render(e,t),t.rels&&t.rels.forEach((t=>{t.Type===o.VmlDrawing&&e.leafNode("legacyDrawing",{"r:id":t.Id})})),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"worksheet"===e.name?(n.each(this.map,(e=>{e.reset()})),!0):(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if("worksheet"===e){const e=this.map.sheetFormatPr.model||{};this.map.sheetPr.model&&this.map.sheetPr.model.tabColor&&(e.tabColor=this.map.sheetPr.model.tabColor),this.map.sheetPr.model&&this.map.sheetPr.model.outlineProperties&&(e.outlineProperties=this.map.sheetPr.model.outlineProperties);const t={fitToPage:this.map.sheetPr.model&&this.map.sheetPr.model.pageSetup&&this.map.sheetPr.model.pageSetup.fitToPage||!1,margins:this.map.pageMargins.model},r=Object.assign(t,this.map.pageSetup.model,this.map.printOptions.model),n=P(this.map.conditionalFormatting.model,this.map.extLst.model&&this.map.extLst.model["x14:conditionalFormattings"]);return this.model={dimensions:this.map.dimension.model,cols:this.map.cols.model,rows:this.map.sheetData.model,mergeCells:this.map.mergeCells.model,hyperlinks:this.map.hyperlinks.model,dataValidations:this.map.dataValidations.model,properties:e,views:this.map.sheetViews.model,pageSetup:r,headerFooter:this.map.headerFooter.model,background:this.map.picture.model,drawing:this.map.drawing.model,tables:this.map.tableParts.model,conditionalFormattings:n},this.map.autoFilter.model&&(this.model.autoFilter=this.map.autoFilter.model),this.map.sheetProtection.model&&(this.model.sheetProtection=this.map.sheetProtection.model),!1}return!0}reconcile(e,t){const r=(e.relationships||[]).reduce(((r,n)=>{if(r[n.Id]=n,n.Type===o.Comments&&(e.comments=t.comments[n.Target].comments),n.Type===o.VmlDrawing&&e.comments&&e.comments.length){const r=t.vmlDrawings[n.Target].comments;e.comments.forEach(((e,t)=>{e.note=Object.assign({},e.note,r[t])}))}return r}),{});if(t.commentsMap=(e.comments||[]).reduce(((e,t)=>(t.ref&&(e[t.ref]=t),e)),{}),t.hyperlinkMap=(e.hyperlinks||[]).reduce(((e,t)=>(t.rId&&(e[t.address]=r[t.rId].Target),e)),{}),t.formulae={},e.rows=e.rows&&e.rows.filter(Boolean)||[],e.rows.forEach((e=>{e.cells=e.cells&&e.cells.filter(Boolean)||[]})),this.map.cols.reconcile(e.cols,t),this.map.sheetData.reconcile(e.rows,t),this.map.conditionalFormatting.reconcile(e.conditionalFormattings,t),e.media=[],e.drawing){const n=r[e.drawing.rId].Target.match(/\/drawings\/([a-zA-Z0-9]+)[.][a-zA-Z]{3,4}$/);if(n){const r=n[1];t.drawings[r].anchors.forEach((t=>{if(t.medium){const r={type:"image",imageId:t.medium.index,range:t.range,hyperlinks:t.picture.hyperlinks};e.media.push(r)}}))}}const n=e.background&&r[e.background.rId];if(n){const r=n.Target.split("/media/")[1],i=t.mediaIndex&&t.mediaIndex[r];void 0!==i&&e.media.push({type:"background",imageId:i})}e.tables=(e.tables||[]).map((e=>{const n=r[e.rId];return t.tables[n.Target]})),delete e.relationships,delete e.hyperlinks,delete e.comments}}I.WORKSHEET_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"x14ac","xmlns:x14ac":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac"},e.exports=I},3987:(e,t,r)=>{const n=r(38835);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr}render(e,t){t&&(e.openNode(this.tag),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.model=!0)}parseText(){}parseClose(){return!1}}},67747:(e,t,r)=>{const n=r(38835);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this._format=e.format||function(e){try{return Number.isNaN(e.getTime())?"":e.toISOString()}catch(e){return""}},this._parse=e.parse||function(e){return new Date(e)}}render(e,t){t&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,this._format(t)):e.writeText(this._format(t)),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=this._parse(e.attributes[this.attr]):this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this._parse(this.text.join(""))),!1}}},47065:(e,t,r)=>{const n=r(38835);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.zero=e.zero}render(e,t){(t||this.zero)&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){return e.name===this.tag&&(this.attr?this.model=parseInt(e.attributes[this.attr],10):this.text=[],!0)}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=parseInt(this.text.join("")||0,10)),!1}}},47908:(e,t,r)=>{const n=r(38835);e.exports=class extends n{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs}render(e,t){void 0!==t&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=e.attributes[this.attr]:this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this.text.join("")),!1}}},94891:(e,t,r)=>{const n=r(38835),i=r(91483);function a(e,t){e.openNode(t.tag,t.$),t.c&&t.c.forEach((t=>{a(e,t)})),t.t&&e.writeText(t.t),e.closeNode()}e.exports=class extends n{constructor(e){super(),this._model=e}render(e){if(!this._xml){const e=new i;a(e,this._model),this._xml=e.xml}e.writeXml(this._xml)}parseOpen(){return!0}parseText(){}parseClose(e){return e!==this._model.tag}}},29227:(e,t,r)=>{const n=r(59944),i=r(91363),a=r(38835);e.exports=class extends a{constructor(){super(),this.map={r:new i,t:new n}}get tag(){return"rPh"}render(e,t){if(e.openNode(this.tag,{sb:t.sb||0,eb:t.eb||0}),t&&t.hasOwnProperty("richText")&&t.richText){const{r}=this.map;t.richText.forEach((t=>{r.render(e,t)}))}else t&&this.map.t.render(e,t.text);e.closeNode()}parseOpen(e){const{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={sb:parseInt(e.attributes.sb,10),eb:parseInt(e.attributes.eb,10)},!0):(this.parser=this.map[t],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case"r":{let e=this.model.richText;e||(e=this.model.richText=[]),e.push(this.parser.model);break}case"t":this.model.text=this.parser.model}this.parser=void 0}return!0}return e!==this.tag}}},91363:(e,t,r)=>{const n=r(59944),i=r(13496),a=r(38835);class o extends a{constructor(e){super(),this.model=e}get tag(){return"r"}get textXform(){return this._textXform||(this._textXform=new n)}get fontXform(){return this._fontXform||(this._fontXform=new i(o.FONT_OPTIONS))}render(e,t){t=t||this.model,e.openNode("r"),t.font&&this.fontXform.render(e,t.font),this.textXform.render(e,t.text),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"r":return this.model={},!0;case"t":return this.parser=this.textXform,this.parser.parseOpen(e),!0;case"rPr":return this.parser=this.fontXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case"r":return!1;case"t":return this.model.text=this.parser.model,this.parser=void 0,!0;case"rPr":return this.model.font=this.parser.model,this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}}o.FONT_OPTIONS={tagName:"rPr",fontNameTag:"rFont"},e.exports=o},67675:(e,t,r)=>{const n=r(59944),i=r(91363),a=r(29227),o=r(38835);e.exports=class extends o{constructor(e){super(),this.model=e,this.map={r:new i,t:new n,rPh:new a}}get tag(){return"si"}render(e,t){e.openNode(this.tag),t&&t.hasOwnProperty("richText")&&t.richText?t.richText.length?t.richText.forEach((t=>{this.map.r.render(e,t)})):this.map.t.render(e,""):null!=t&&this.map.t.render(e,t),e.closeNode()}parseOpen(e){const{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={},!0):(this.parser=this.map[t],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case"r":{let e=this.model.richText;e||(e=this.model.richText=[]),e.push(this.parser.model);break}case"t":this.model=this.parser.model}this.parser=void 0}return!0}return e!==this.tag}}},73475:(e,t,r)=>{const n=r(91483),i=r(38835),a=r(67675);e.exports=class extends i{constructor(e){super(),this.model=e||{values:[],count:0},this.hash=Object.create(null),this.rich=Object.create(null)}get sharedStringXform(){return this._sharedStringXform||(this._sharedStringXform=new a)}get values(){return this.model.values}get uniqueCount(){return this.model.values.length}get count(){return this.model.count}getString(e){return this.model.values[e]}add(e){return e.richText?this.addRichText(e):this.addText(e)}addText(e){let t=this.hash[e];return void 0===t&&(t=this.hash[e]=this.model.values.length,this.model.values.push(e)),this.model.count++,t}addRichText(e){const t=this.sharedStringXform.toXml(e);let r=this.rich[t];return void 0===r&&(r=this.rich[t]=this.model.values.length,this.model.values.push(e)),this.model.count++,r}render(e,t){t=t||this._values,e.openXml(n.StdDocAttributes),e.openNode("sst",{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:t.count,uniqueCount:t.values.length});const r=this.sharedStringXform;t.values.forEach((t=>{r.render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"sst":return!0;case"si":return this.parser=this.sharedStringXform,this.parser.parseOpen(e),!0;default:throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.values.push(this.parser.model),this.model.count++,this.parser=void 0),!0;if("sst"===e)return!1;throw new Error(`Unexpected xml node in parseClose: ${e}`)}}},59944:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"t"}render(e,t){e.openNode("t"),/^\s|\n|\s$/.test(t)&&e.addAttribute("xml:space","preserve"),e.writeText(t),e.closeNode()}get model(){return this._text.join("").replace(/_x([0-9A-F]{4})_/g,((e,t)=>String.fromCharCode(parseInt(t,16))))}parseOpen(e){return"t"===e.name&&(this._text=[],!0)}parseText(e){this._text.push(e)}parseClose(){return!1}}},42648:(e,t,r)=>{const n=r(79931),i=r(86144),a=r(38835),o={horizontalValues:["left","center","right","fill","centerContinuous","distributed","justify"].reduce(((e,t)=>(e[t]=!0,e)),{}),horizontal(e){return this.horizontalValues[e]?e:void 0},verticalValues:["top","middle","bottom","distributed","justify"].reduce(((e,t)=>(e[t]=!0,e)),{}),vertical(e){return"middle"===e?"center":this.verticalValues[e]?e:void 0},wrapText:e=>!!e||void 0,shrinkToFit:e=>!!e||void 0,textRotation:e=>"vertical"===e||(e=i.validInt(e))>=-90&&e<=90?e:void 0,indent:e=>(e=i.validInt(e),Math.max(0,e)),readingOrder(e){switch(e){case"ltr":return n.ReadingOrder.LeftToRight;case"rtl":return n.ReadingOrder.RightToLeft;default:return}}},s={toXml(e){if(e=o.textRotation(e)){if("vertical"===e)return 255;const t=Math.round(e);if(t>=0&&t<=90)return t;if(t<0&&t>=-90)return 90-t}},toModel(e){const t=i.validInt(e);if(void 0!==t){if(255===t)return"vertical";if(t>=0&&t<=90)return t;if(t>90&&t<=180)return 90-t}}};e.exports=class extends a{get tag(){return"alignment"}render(e,t){e.addRollback(),e.openNode("alignment");let r=!1;function n(t,n){n&&(e.addAttribute(t,n),r=!0)}n("horizontal",o.horizontal(t.horizontal)),n("vertical",o.vertical(t.vertical)),n("wrapText",!!o.wrapText(t.wrapText)&&"1"),n("shrinkToFit",!!o.shrinkToFit(t.shrinkToFit)&&"1"),n("indent",o.indent(t.indent)),n("textRotation",s.toXml(t.textRotation)),n("readingOrder",o.readingOrder(t.readingOrder)),e.closeNode(),r?e.commit():e.rollback()}parseOpen(e){const t={};let r=!1;function n(e,n,i){e&&(t[n]=i,r=!0)}n(e.attributes.horizontal,"horizontal",e.attributes.horizontal),n(e.attributes.vertical,"vertical","center"===e.attributes.vertical?"middle":e.attributes.vertical),n(e.attributes.wrapText,"wrapText",!!e.attributes.wrapText),n(e.attributes.shrinkToFit,"shrinkToFit",!!e.attributes.shrinkToFit),n(e.attributes.indent,"indent",parseInt(e.attributes.indent,10)),n(e.attributes.textRotation,"textRotation",s.toModel(e.attributes.textRotation)),n(e.attributes.readingOrder,"readingOrder","2"===e.attributes.readingOrder?"rtl":"ltr"),this.model=r?t:null}parseText(){}parseClose(){return!1}}},81929:(e,t,r)=>{const n=r(38835),i=r(66951);class a extends n{constructor(e){super(),this.name=e,this.map={color:new i}}get tag(){return this.name}render(e,t,r){const n=t&&t.color||r||this.defaultColor;e.openNode(this.name),t&&t.style&&(e.addAttribute("style",t.style),n&&this.map.color.render(e,n)),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.name:{const{style:t}=e.attributes;return this.model=t?{style:t}:void 0,!0}case"color":return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(e===this.name&&this.map.color.model&&(this.model||(this.model={}),this.model.color=this.map.color.model),!1)}validStyle(e){return a.validStyleValues[e]}}a.validStyleValues=["thin","dotted","dashDot","hair","dashDotDot","slantDashDot","mediumDashed","mediumDashDotDot","mediumDashDot","medium","double","thick"].reduce(((e,t)=>(e[t]=!0,e)),{});e.exports=class extends n{constructor(){super(),this.map={top:new a("top"),left:new a("left"),bottom:new a("bottom"),right:new a("right"),diagonal:new a("diagonal")}}render(e,t){const{color:r}=t;function n(n,i){n&&!n.color&&t.color&&(n={...n,color:t.color}),i.render(e,n,r)}e.openNode("border"),t.diagonal&&t.diagonal.style&&(t.diagonal.up&&e.addAttribute("diagonalUp","1"),t.diagonal.down&&e.addAttribute("diagonalDown","1")),n(t.left,this.map.left),n(t.right,this.map.right),n(t.top,this.map.top),n(t.bottom,this.map.bottom),n(t.diagonal,this.map.diagonal),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"border"===e.name?(this.reset(),this.diagonalUp=!!e.attributes.diagonalUp,this.diagonalDown=!!e.attributes.diagonalDown,!0):(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if("border"===e){const e=this.model={},t=function(t,r,n){r&&(n&&Object.assign(r,n),e[t]=r)};t("left",this.map.left.model),t("right",this.map.right.model),t("top",this.map.top.model),t("bottom",this.map.bottom.model),t("diagonal",this.map.diagonal.model,{up:this.diagonalUp,down:this.diagonalDown})}return!1}}},66951:(e,t,r)=>{const n=r(38835);e.exports=class extends n{constructor(e){super(),this.name=e||"color"}get tag(){return this.name}render(e,t){return!!t&&(e.openNode(this.name),t.argb?e.addAttribute("rgb",t.argb):void 0!==t.theme?(e.addAttribute("theme",t.theme),void 0!==t.tint&&e.addAttribute("tint",t.tint)):void 0!==t.indexed?e.addAttribute("indexed",t.indexed):e.addAttribute("auto","1"),e.closeNode(),!0)}parseOpen(e){return e.name===this.name&&(e.attributes.rgb?this.model={argb:e.attributes.rgb}:e.attributes.theme?(this.model={theme:parseInt(e.attributes.theme,10)},e.attributes.tint&&(this.model.tint=parseFloat(e.attributes.tint))):e.attributes.indexed?this.model={indexed:parseInt(e.attributes.indexed,10)}:this.model=void 0,!0)}parseText(){}parseClose(){return!1}}},91054:(e,t,r)=>{const n=r(38835),i=r(42648),a=r(81929),o=r(85448),s=r(13496),c=r(6742),l=r(30473);e.exports=class extends n{constructor(){super(),this.map={alignment:new i,border:new a,fill:new o,font:new s,numFmt:new c,protection:new l}}get tag(){return"dxf"}render(e,t){e.openNode(this.tag),t.font&&this.map.font.render(e,t.font),t.numFmt&&this.map.numFmt.render(e,t.numFmt),t.fill&&this.map.fill.render(e,t.fill),t.alignment&&this.map.alignment.render(e,t.alignment),t.border&&this.map.border.render(e,t.border),t.protection&&this.map.protection.render(e,t.protection),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.reset(),!0):(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model={alignment:this.map.alignment.model,border:this.map.border.model,fill:this.map.fill.model,font:this.map.font.model,numFmt:this.map.numFmt.model,protection:this.map.protection.model},!1)}}},85448:(e,t,r)=>{const n=r(38835),i=r(66951);class a extends n{constructor(){super(),this.map={color:new i}}get tag(){return"stop"}render(e,t){e.openNode("stop"),e.addAttribute("position",t.position),this.map.color.render(e,t.color),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"stop":return this.model={position:parseFloat(e.attributes.position)},!0;case"color":return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(){}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.model.color=this.parser.model,this.parser=void 0),!0)}}class o extends n{constructor(){super(),this.map={fgColor:new i("fgColor"),bgColor:new i("bgColor")}}get name(){return"pattern"}get tag(){return"patternFill"}render(e,t){e.openNode("patternFill"),e.addAttribute("patternType",t.pattern),t.fgColor&&this.map.fgColor.render(e,t.fgColor),t.bgColor&&this.map.bgColor.render(e,t.bgColor),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"patternFill"===e.name?(this.model={type:"pattern",pattern:e.attributes.patternType},!0):(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.parser.model&&(this.model[e]=this.parser.model),this.parser=void 0),!0)}}class s extends n{constructor(){super(),this.map={stop:new a}}get name(){return"gradient"}get tag(){return"gradientFill"}render(e,t){switch(e.openNode("gradientFill"),t.gradient){case"angle":e.addAttribute("degree",t.degree);break;case"path":e.addAttribute("type","path"),t.center.left&&(e.addAttribute("left",t.center.left),void 0===t.center.right&&e.addAttribute("right",t.center.left)),t.center.right&&e.addAttribute("right",t.center.right),t.center.top&&(e.addAttribute("top",t.center.top),void 0===t.center.bottom&&e.addAttribute("bottom",t.center.top)),t.center.bottom&&e.addAttribute("bottom",t.center.bottom)}const r=this.map.stop;t.stops.forEach((t=>{r.render(e,t)})),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"gradientFill":{const t=this.model={stops:[]};return e.attributes.degree?(t.gradient="angle",t.degree=parseInt(e.attributes.degree,10)):"path"===e.attributes.type&&(t.gradient="path",t.center={left:e.attributes.left?parseFloat(e.attributes.left):0,top:e.attributes.top?parseFloat(e.attributes.top):0},e.attributes.right!==e.attributes.left&&(t.center.right=e.attributes.right?parseFloat(e.attributes.right):0),e.attributes.bottom!==e.attributes.top&&(t.center.bottom=e.attributes.bottom?parseFloat(e.attributes.bottom):0)),!0}case"stop":return this.parser=this.map.stop,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.model.stops.push(this.parser.model),this.parser=void 0),!0)}}class c extends n{constructor(){super(),this.map={patternFill:new o,gradientFill:new s}}get tag(){return"fill"}render(e,t){switch(e.addRollback(),e.openNode("fill"),t.type){case"pattern":this.map.patternFill.render(e,t);break;case"gradient":this.map.gradientFill.render(e,t);break;default:return void e.rollback()}e.closeNode(),e.commit()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"fill"===e.name?(this.model={},!0):(this.parser=this.map[e.name],!!this.parser&&(this.parser.parseOpen(e),!0))}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return!!this.parser&&(this.parser.parseClose(e)||(this.model=this.parser.model,this.model.type=this.parser.name,this.parser=void 0),!0)}validStyle(e){return c.validPatternValues[e]}}c.validPatternValues=["none","solid","darkVertical","darkGray","mediumGray","lightGray","gray125","gray0625","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","lightGrid"].reduce(((e,t)=>(e[t]=!0,e)),{}),c.StopXform=a,c.PatternFillXform=o,c.GradientFillXform=s,e.exports=c},13496:(e,t,r)=>{"use strict";const n=r(66951),i=r(3987),a=r(47065),o=r(47908),s=r(30297),c=r(15797),l=r(38835);class u extends l{constructor(e){super(),this.options=e||u.OPTIONS,this.map={b:{prop:"bold",xform:new i({tag:"b",attr:"val"})},i:{prop:"italic",xform:new i({tag:"i",attr:"val"})},u:{prop:"underline",xform:new s},charset:{prop:"charset",xform:new a({tag:"charset",attr:"val"})},color:{prop:"color",xform:new n},condense:{prop:"condense",xform:new i({tag:"condense",attr:"val"})},extend:{prop:"extend",xform:new i({tag:"extend",attr:"val"})},family:{prop:"family",xform:new a({tag:"family",attr:"val"})},outline:{prop:"outline",xform:new i({tag:"outline",attr:"val"})},vertAlign:{prop:"vertAlign",xform:new o({tag:"vertAlign",attr:"val"})},scheme:{prop:"scheme",xform:new o({tag:"scheme",attr:"val"})},shadow:{prop:"shadow",xform:new i({tag:"shadow",attr:"val"})},strike:{prop:"strike",xform:new i({tag:"strike",attr:"val"})},sz:{prop:"size",xform:new a({tag:"sz",attr:"val"})}},this.map[this.options.fontNameTag]={prop:"name",xform:new o({tag:this.options.fontNameTag,attr:"val"})}}get tag(){return this.options.tagName}render(e,t){const{map:r}=this;e.openNode(this.options.tagName),c.each(this.map,((n,i)=>{r[i].xform.render(e,t[n.prop])})),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):this.map[e.name]?(this.parser=this.map[e.name].xform,this.parser.parseOpen(e)):e.name===this.options.tagName&&(this.model={},!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser&&!this.parser.parseClose(e)){const t=this.map[e];return this.parser.model&&(this.model[t.prop]=this.parser.model),this.parser=void 0,!0}return e!==this.options.tagName}}u.OPTIONS={tagName:"font",fontNameTag:"name"},e.exports=u},6742:(e,t,r)=>{const n=r(15797),i=r(19163),a=r(38835);const o=function(){const e={};return n.each(i,((t,r)=>{t.f&&(e[t.f]=parseInt(r,10))})),e}();class s extends a{constructor(e,t){super(),this.id=e,this.formatCode=t}get tag(){return"numFmt"}render(e,t){e.leafNode("numFmt",{numFmtId:t.id,formatCode:t.formatCode})}parseOpen(e){return"numFmt"===e.name&&(this.model={id:parseInt(e.attributes.numFmtId,10),formatCode:e.attributes.formatCode.replace(/[\\](.)/g,"$1")},!0)}parseText(){}parseClose(){return!1}}s.getDefaultFmtId=function(e){return o[e]},s.getDefaultFmtCode=function(e){return i[e]&&i[e].f},e.exports=s},30473:(e,t,r)=>{const n=r(38835),i={boolean:(e,t)=>void 0===e?t:e};e.exports=class extends n{get tag(){return"protection"}render(e,t){e.addRollback(),e.openNode("protection");let r=!1;function n(t,n){void 0!==n&&(e.addAttribute(t,n),r=!0)}n("locked",i.boolean(t.locked,!0)?void 0:"0"),n("hidden",i.boolean(t.hidden,!1)?"1":void 0),e.closeNode(),r?e.commit():e.rollback()}parseOpen(e){const t={locked:!("0"===e.attributes.locked),hidden:"1"===e.attributes.hidden},r=!t.locked||t.hidden;this.model=r?t:null}parseText(){}parseClose(){return!1}}},72336:(e,t,r)=>{const n=r(38835),i=r(42648),a=r(30473);e.exports=class extends n{constructor(e){super(),this.xfId=!(!e||!e.xfId),this.map={alignment:new i,protection:new a}}get tag(){return"xf"}render(e,t){e.openNode("xf",{numFmtId:t.numFmtId||0,fontId:t.fontId||0,fillId:t.fillId||0,borderId:t.borderId||0}),this.xfId&&e.addAttribute("xfId",t.xfId||0),t.numFmtId&&e.addAttribute("applyNumberFormat","1"),t.fontId&&e.addAttribute("applyFont","1"),t.fillId&&e.addAttribute("applyFill","1"),t.borderId&&e.addAttribute("applyBorder","1"),t.alignment&&e.addAttribute("applyAlignment","1"),t.protection&&e.addAttribute("applyProtection","1"),t.alignment&&this.map.alignment.render(e,t.alignment),t.protection&&this.map.protection.render(e,t.protection),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case"xf":return this.model={numFmtId:parseInt(e.attributes.numFmtId,10),fontId:parseInt(e.attributes.fontId,10),fillId:parseInt(e.attributes.fillId,10),borderId:parseInt(e.attributes.borderId,10)},this.xfId&&(this.model.xfId=parseInt(e.attributes.xfId,10)),!0;case"alignment":return this.parser=this.map.alignment,this.parser.parseOpen(e),!0;case"protection":return this.parser=this.map.protection,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.map.protection===this.parser?this.model.protection=this.parser.model:this.model.alignment=this.parser.model,this.parser=void 0),!0):"xf"!==e}}},35818:(e,t,r)=>{const n=r(79931),i=r(91483),a=r(38835),o=r(94891),s=r(750),c=r(13496),l=r(85448),u=r(81929),d=r(6742),p=r(72336),f=r(91054);class m extends a{constructor(e){super(),this.map={numFmts:new s({tag:"numFmts",count:!0,childXform:new d}),fonts:new s({tag:"fonts",count:!0,childXform:new c,$:{"x14ac:knownFonts":1}}),fills:new s({tag:"fills",count:!0,childXform:new l}),borders:new s({tag:"borders",count:!0,childXform:new u}),cellStyleXfs:new s({tag:"cellStyleXfs",count:!0,childXform:new p}),cellXfs:new s({tag:"cellXfs",count:!0,childXform:new p({xfId:!0})}),dxfs:new s({tag:"dxfs",always:!0,count:!0,childXform:new f}),numFmt:new d,font:new c,fill:new l,border:new u,style:new p({xfId:!0}),cellStyles:m.STATIC_XFORMS.cellStyles,tableStyles:m.STATIC_XFORMS.tableStyles,extLst:m.STATIC_XFORMS.extLst},e&&this.init()}initIndex(){this.index={style:{},numFmt:{},numFmtNextId:164,font:{},border:{},fill:{}}}init(){this.model={styles:[],numFmts:[],fonts:[],borders:[],fills:[],dxfs:[]},this.initIndex(),this._addBorder({}),this._addStyle({numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}),this._addFill({type:"pattern",pattern:"none"}),this._addFill({type:"pattern",pattern:"gray125"}),this.weakMap=new WeakMap}render(e,t){t=t||this.model,e.openXml(i.StdDocAttributes),e.openNode("styleSheet",m.STYLESHEET_ATTRIBUTES),this.index?(t.numFmts&&t.numFmts.length&&(e.openNode("numFmts",{count:t.numFmts.length}),t.numFmts.forEach((t=>{e.writeXml(t)})),e.closeNode()),t.fonts.length||this._addFont({size:11,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}),e.openNode("fonts",{count:t.fonts.length,"x14ac:knownFonts":1}),t.fonts.forEach((t=>{e.writeXml(t)})),e.closeNode(),e.openNode("fills",{count:t.fills.length}),t.fills.forEach((t=>{e.writeXml(t)})),e.closeNode(),e.openNode("borders",{count:t.borders.length}),t.borders.forEach((t=>{e.writeXml(t)})),e.closeNode(),this.map.cellStyleXfs.render(e,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),e.openNode("cellXfs",{count:t.styles.length}),t.styles.forEach((t=>{e.writeXml(t)})),e.closeNode()):(this.map.numFmts.render(e,t.numFmts),this.map.fonts.render(e,t.fonts),this.map.fills.render(e,t.fills),this.map.borders.render(e,t.borders),this.map.cellStyleXfs.render(e,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),this.map.cellXfs.render(e,t.styles)),m.STATIC_XFORMS.cellStyles.render(e),this.map.dxfs.render(e,t.dxfs),m.STATIC_XFORMS.tableStyles.render(e),m.STATIC_XFORMS.extLst.render(e),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):"styleSheet"===e.name?(this.initIndex(),!0):(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if("styleSheet"===e){this.model={};const e=(e,t)=>{t.model&&t.model.length&&(this.model[e]=t.model)};if(e("numFmts",this.map.numFmts),e("fonts",this.map.fonts),e("fills",this.map.fills),e("borders",this.map.borders),e("styles",this.map.cellXfs),e("dxfs",this.map.dxfs),this.index={model:[],numFmt:[]},this.model.numFmts){const e=this.index.numFmt;this.model.numFmts.forEach((t=>{e[t.id]=t.formatCode}))}return!1}return!0}addStyleModel(e,t){if(!e)return 0;if(this.model.fonts.length||this._addFont({size:11,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}),this.weakMap&&this.weakMap.has(e))return this.weakMap.get(e);const r={};if(t=t||n.ValueType.Number,e.numFmt)r.numFmtId=this._addNumFmtStr(e.numFmt);else switch(t){case n.ValueType.Number:r.numFmtId=this._addNumFmtStr("General");break;case n.ValueType.Date:r.numFmtId=this._addNumFmtStr("mm-dd-yy")}e.font&&(r.fontId=this._addFont(e.font)),e.border&&(r.borderId=this._addBorder(e.border)),e.fill&&(r.fillId=this._addFill(e.fill)),e.alignment&&(r.alignment=e.alignment),e.protection&&(r.protection=e.protection);const i=this._addStyle(r);return this.weakMap&&this.weakMap.set(e,i),i}getStyleModel(e){const t=this.model.styles[e];if(!t)return null;let r=this.index.model[e];if(r)return r;if(r=this.index.model[e]={},t.numFmtId){const e=this.index.numFmt[t.numFmtId]||d.getDefaultFmtCode(t.numFmtId);e&&(r.numFmt=e)}function n(e,t,n){if(n||0===n){const i=t[n];i&&(r[e]=i)}}return n("font",this.model.fonts,t.fontId),n("border",this.model.borders,t.borderId),n("fill",this.model.fills,t.fillId),t.alignment&&(r.alignment=t.alignment),t.protection&&(r.protection=t.protection),r}addDxfStyle(e){return this.model.dxfs.push(e),this.model.dxfs.length-1}getDxfStyle(e){return this.model.dxfs[e]}_addStyle(e){const t=this.map.style.toXml(e);let r=this.index.style[t];return void 0===r&&(r=this.index.style[t]=this.model.styles.length,this.model.styles.push(t)),r}_addNumFmtStr(e){let t=d.getDefaultFmtId(e);if(void 0!==t)return t;if(t=this.index.numFmt[e],void 0!==t)return t;t=this.index.numFmt[e]=164+this.model.numFmts.length;const r=this.map.numFmt.toXml({id:t,formatCode:e});return this.model.numFmts.push(r),t}_addFont(e){const t=this.map.font.toXml(e);let r=this.index.font[t];return void 0===r&&(r=this.index.font[t]=this.model.fonts.length,this.model.fonts.push(t)),r}_addBorder(e){const t=this.map.border.toXml(e);let r=this.index.border[t];return void 0===r&&(r=this.index.border[t]=this.model.borders.length,this.model.borders.push(t)),r}_addFill(e){const t=this.map.fill.toXml(e);let r=this.index.fill[t];return void 0===r&&(r=this.index.fill[t]=this.model.fills.length,this.model.fills.push(t)),r}}m.STYLESHEET_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"x14ac x16r2","xmlns:x14ac":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac","xmlns:x16r2":"http://schemas.microsoft.com/office/spreadsheetml/2015/02/main"},m.STATIC_XFORMS={cellStyles:new o({tag:"cellStyles",$:{count:1},c:[{tag:"cellStyle",$:{name:"Normal",xfId:0,builtinId:0}}]}),dxfs:new o({tag:"dxfs",$:{count:0}}),tableStyles:new o({tag:"tableStyles",$:{count:0,defaultTableStyle:"TableStyleMedium2",defaultPivotStyle:"PivotStyleLight16"}}),extLst:new o({tag:"extLst",c:[{tag:"ext",$:{uri:"{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}","xmlns:x14":"http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"},c:[{tag:"x14:slicerStyles",$:{defaultSlicerStyle:"SlicerStyleLight1"}}]},{tag:"ext",$:{uri:"{9260A510-F301-46a8-8635-F512D64BE5F5}","xmlns:x15":"http://schemas.microsoft.com/office/spreadsheetml/2010/11/main"},c:[{tag:"x15:timelineStyles",$:{defaultTimelineStyle:"TimeSlicerStyleLight1"}}]}]})};m.Mock=class extends m{constructor(){super(),this.model={styles:[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}],numFmts:[],fonts:[{size:11,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}],borders:[{}],fills:[{type:"pattern",pattern:"none"},{type:"pattern",pattern:"gray125"}]}}parseStream(e){return e.autodrain(),Promise.resolve()}addStyleModel(e,t){return t===n.ValueType.Date?this.dateStyleId:0}get dateStyleId(){if(!this._dateStyleId){const e={numFmtId:d.getDefaultFmtId("mm-dd-yy")};this._dateStyleId=this.model.styles.length,this.model.styles.push(e)}return this._dateStyleId}getStyleModel(){return{}}},e.exports=m},30297:(e,t,r)=>{const n=r(38835);class i extends n{constructor(e){super(),this.model=e}get tag(){return"u"}render(e,t){if(!0===(t=t||this.model))e.leafNode("u");else{const r=i.Attributes[t];r&&e.leafNode("u",r)}}parseOpen(e){"u"===e.name&&(this.model=e.attributes.val||!0)}parseText(){}parseClose(){return!1}}i.Attributes={single:{},double:{val:"double"},singleAccounting:{val:"singleAccounting"},doubleAccounting:{val:"doubleAccounting"}},e.exports=i},32558:(e,t,r)=>{const n=r(38835),i=r(52439);e.exports=class extends n{constructor(){super(),this.map={filterColumn:new i}}get tag(){return"autoFilter"}prepare(e){e.columns.forEach(((e,t)=>{this.map.filterColumn.prepare(e,{index:t})}))}render(e,t){return e.openNode(this.tag,{ref:t.autoFilterRef}),t.columns.forEach((t=>{this.map.filterColumn.render(e,t)})),e.closeNode(),!0}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===this.tag)return this.model={autoFilterRef:e.attributes.ref,columns:[]},!0;if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.columns.push(this.parser.model),this.parser=void 0),!0;if(e===this.tag)return!1;throw new Error(`Unexpected xml node in parseClose: ${e}`)}}},52439:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"filterColumn"}prepare(e,t){e.colId=t.index.toString()}render(e,t){return e.leafNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?"0":"1"}),!0}parseOpen(e){if(e.name===this.tag){const{attributes:t}=e;return this.model={filterButton:"0"===t.hiddenButton},!0}return!1}parseText(){}parseClose(){return!1}}},26399:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"tableColumn"}prepare(e,t){e.id=t.index+1}render(e,t){return e.leafNode(this.tag,{id:t.id.toString(),name:t.name,totalsRowLabel:t.totalsRowLabel,totalsRowFunction:t.totalsRowFunction,dxfId:t.dxfId}),!0}parseOpen(e){if(e.name===this.tag){const{attributes:t}=e;return this.model={name:t.name,totalsRowLabel:t.totalsRowLabel,totalsRowFunction:t.totalsRowFunction,dxfId:t.dxfId},!0}return!1}parseText(){}parseClose(){return!1}}},67890:(e,t,r)=>{const n=r(38835);e.exports=class extends n{get tag(){return"tableStyleInfo"}render(e,t){return e.leafNode(this.tag,{name:t.theme?t.theme:void 0,showFirstColumn:t.showFirstColumn?"1":"0",showLastColumn:t.showLastColumn?"1":"0",showRowStripes:t.showRowStripes?"1":"0",showColumnStripes:t.showColumnStripes?"1":"0"}),!0}parseOpen(e){if(e.name===this.tag){const{attributes:t}=e;return this.model={theme:t.name?t.name:null,showFirstColumn:"1"===t.showFirstColumn,showLastColumn:"1"===t.showLastColumn,showRowStripes:"1"===t.showRowStripes,showColumnStripes:"1"===t.showColumnStripes},!0}return!1}parseText(){}parseClose(){return!1}}},47760:(e,t,r)=>{const n=r(91483),i=r(38835),a=r(750),o=r(32558),s=r(26399),c=r(67890);class l extends i{constructor(){super(),this.map={autoFilter:new o,tableColumns:new a({tag:"tableColumns",count:!0,empty:!0,childXform:new s}),tableStyleInfo:new c}}prepare(e,t){this.map.autoFilter.prepare(e),this.map.tableColumns.prepare(e.columns,t)}get tag(){return"table"}render(e,t){e.openXml(n.StdDocAttributes),e.openNode(this.tag,{...l.TABLE_ATTRIBUTES,id:t.id,name:t.name,displayName:t.displayName||t.name,ref:t.tableRef,totalsRowCount:t.totalsRow?"1":void 0,totalsRowShown:t.totalsRow?void 0:"1",headerRowCount:t.headerRow?"1":"0"}),this.map.autoFilter.render(e,t),this.map.tableColumns.render(e,t.columns),this.map.tableStyleInfo.render(e,t.style),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;const{name:t,attributes:r}=e;if(t===this.tag)this.reset(),this.model={name:r.name,displayName:r.displayName||r.name,tableRef:r.ref,totalsRow:"1"===r.totalsRowCount,headerRow:"1"===r.headerRowCount};else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e!==this.tag||(this.model.columns=this.map.tableColumns.model,this.map.autoFilter.model&&(this.model.autoFilterRef=this.map.autoFilter.model.autoFilterRef,this.map.autoFilter.model.columns.forEach(((e,t)=>{this.model.columns[t].filterButton=e.filterButton}))),this.model.style=this.map.tableStyleInfo.model,!1)}reconcile(e,t){e.columns.forEach((e=>{void 0!==e.dxfId&&(e.style=t.styles.getDxfStyle(e.dxfId))}))}}l.TABLE_ATTRIBUTES={xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:mc":"http://schemas.openxmlformats.org/markup-compatibility/2006","mc:Ignorable":"xr xr3","xmlns:xr":"http://schemas.microsoft.com/office/spreadsheetml/2014/revision","xmlns:xr3":"http://schemas.microsoft.com/office/spreadsheetml/2016/revision3"},e.exports=l},92208:(e,t,r)=>{const n=r(57147),i=r(66085),{PassThrough:a}=r(11451),o=r(56861),s=r(25168),c=r(86144),l=r(91483),{bufferToString:u}=r(83101),d=r(35818),p=r(74117),f=r(73475),m=r(56181),g=r(45461),_=r(78223),h=r(44769),y=r(51114),v=r(96870),b=r(47760),k=r(21758),x=r(82464),E=r(20430);class S{constructor(e){this.workbook=e}async readFile(e,t){if(!await c.fs.exists(e))throw new Error(`File not found: ${e}`);const r=n.createReadStream(e);try{const e=await this.read(r,t);return r.close(),e}catch(e){throw r.close(),e}}parseRels(e){return(new m).parseStream(e)}parseWorkbook(e){return(new h).parseStream(e)}parseSharedStrings(e){return(new f).parseStream(e)}reconcile(e,t){const r=new h,n=new y(t),i=new v,a=new b;r.reconcile(e);const o={media:e.media,mediaIndex:e.mediaIndex};Object.keys(e.drawings).forEach((t=>{const r=e.drawings[t],n=e.drawingRels[t];n&&(o.rels=n.reduce(((e,t)=>(e[t.Id]=t,e)),{}),(r.anchors||[]).forEach((e=>{const t=e.picture&&e.picture.hyperlinks;t&&o.rels[t.rId]&&(t.hyperlink=o.rels[t.rId].Target,delete t.rId)})),i.reconcile(r,o))}));const s={styles:e.styles};Object.values(e.tables).forEach((e=>{a.reconcile(e,s)}));const c={styles:e.styles,sharedStrings:e.sharedStrings,media:e.media,mediaIndex:e.mediaIndex,date1904:e.properties&&e.properties.date1904,drawings:e.drawings,comments:e.comments,tables:e.tables,vmlDrawings:e.vmlDrawings};e.worksheets.forEach((t=>{t.relationships=e.worksheetRels[t.sheetNo],n.reconcile(t,c)})),delete e.worksheetHash,delete e.worksheetRels,delete e.globalRels,delete e.sharedStrings,delete e.workbookRels,delete e.sheetDefs,delete e.styles,delete e.mediaIndex,delete e.drawings,delete e.drawingRels,delete e.vmlDrawings}async _processWorksheetEntry(e,t,r,n,i){const a=new y(n),o=await a.parseStream(e);o.sheetNo=r,t.worksheetHash[i]=o,t.worksheets.push(o)}async _processCommentEntry(e,t,r){const n=new k,i=await n.parseStream(e);t.comments[`../${r}.xml`]=i}async _processTableEntry(e,t,r){const n=new b,i=await n.parseStream(e);t.tables[`../tables/${r}.xml`]=i}async _processWorksheetRelsEntry(e,t,r){const n=new m,i=await n.parseStream(e);t.worksheetRels[r]=i}async _processMediaEntry(e,t,r){const n=r.lastIndexOf(".");if(n>=1){const i=r.substr(n+1),a=r.substr(0,n);await new Promise(((n,o)=>{const c=new s;c.on("finish",(()=>{t.mediaIndex[r]=t.media.length,t.mediaIndex[a]=t.media.length;const e={type:"image",name:a,extension:i,buffer:c.toBuffer()};t.media.push(e),n()})),e.on("error",(e=>{o(e)})),e.pipe(c)}))}}async _processDrawingEntry(e,t,r){const n=new v,i=await n.parseStream(e);t.drawings[r]=i}async _processDrawingRelsEntry(e,t,r){const n=new m,i=await n.parseStream(e);t.drawingRels[r]=i}async _processVmlDrawingEntry(e,t,r){const n=new x,i=await n.parseStream(e);t.vmlDrawings[`../drawings/${r}.vml`]=i}async _processThemeEntry(e,t,r){await new Promise(((n,i)=>{const a=new s;e.on("error",i),a.on("error",i),a.on("finish",(()=>{t.themes[r]=a.read().toString(),n()})),e.pipe(a)}))}createInputStream(){throw new Error("`XLSX#createInputStream` is deprecated. You should use `XLSX#read` instead. This method will be removed in version 5.0. Please follow upgrade instruction: https://github.com/exceljs/exceljs/blob/master/UPGRADE-4.0.md")}async read(e,t){!e[Symbol.asyncIterator]&&e.pipe&&(e=e.pipe(new a));const r=[];for await(const t of e)r.push(t);return this.load(Buffer.concat(r),t)}async load(e,t){let r;r=t&&t.base64?Buffer.from(e.toString(),"base64"):e;const n={worksheets:[],worksheetHash:{},worksheetRels:[],themes:{},media:[],mediaIndex:{},drawings:{},drawingRels:{},comments:{},tables:{},vmlDrawings:{}},o=await i.loadAsync(r);for(const e of Object.values(o.files))if(!e.dir){let r,i=e.name;if("/"===i[0]&&(i=i.substr(1)),i.match(/xl\/media\//)||i.match(/xl\/theme\/([a-zA-Z0-9]+)[.]xml/))r=new a,r.write(await e.async("nodebuffer"));else{let t;r=new a({writableObjectMode:!0,readableObjectMode:!0}),t=process.browser?u(await e.async("nodebuffer")):await e.async("string");const n=16384;for(let e=0;e<t.length;e+=n)r.write(t.substring(e,e+n))}switch(r.end(),i){case"_rels/.rels":n.globalRels=await this.parseRels(r);break;case"xl/workbook.xml":{const e=await this.parseWorkbook(r);n.sheets=e.sheets,n.definedNames=e.definedNames,n.views=e.views,n.properties=e.properties,n.calcProperties=e.calcProperties;break}case"xl/_rels/workbook.xml.rels":n.workbookRels=await this.parseRels(r);break;case"xl/sharedStrings.xml":n.sharedStrings=new f,await n.sharedStrings.parseStream(r);break;case"xl/styles.xml":n.styles=new d,await n.styles.parseStream(r);break;case"docProps/app.xml":{const e=new _,t=await e.parseStream(r);n.company=t.company,n.manager=t.manager;break}case"docProps/core.xml":{const e=new p,t=await e.parseStream(r);Object.assign(n,t);break}default:{let e=i.match(/xl\/worksheets\/sheet(\d+)[.]xml/);if(e){await this._processWorksheetEntry(r,n,e[1],t,i);break}if(e=i.match(/xl\/worksheets\/_rels\/sheet(\d+)[.]xml.rels/),e){await this._processWorksheetRelsEntry(r,n,e[1]);break}if(e=i.match(/xl\/theme\/([a-zA-Z0-9]+)[.]xml/),e){await this._processThemeEntry(r,n,e[1]);break}if(e=i.match(/xl\/media\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/),e){await this._processMediaEntry(r,n,e[1]);break}if(e=i.match(/xl\/drawings\/([a-zA-Z0-9]+)[.]xml/),e){await this._processDrawingEntry(r,n,e[1]);break}if(e=i.match(/xl\/(comments\d+)[.]xml/),e){await this._processCommentEntry(r,n,e[1]);break}if(e=i.match(/xl\/tables\/(table\d+)[.]xml/),e){await this._processTableEntry(r,n,e[1]);break}if(e=i.match(/xl\/drawings\/_rels\/([a-zA-Z0-9]+)[.]xml[.]rels/),e){await this._processDrawingRelsEntry(r,n,e[1]);break}if(e=i.match(/xl\/drawings\/(vmlDrawing\d+)[.]vml/),e){await this._processVmlDrawingEntry(r,n,e[1]);break}}}}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async addMedia(e,t){await Promise.all(t.media.map((async t=>{if("image"===t.type){const r=`xl/media/${t.name}.${t.extension}`;if(t.filename){const i=await function(e,t){return new Promise(((r,i)=>{n.readFile(e,t,((e,t)=>{e?i(e):r(t)}))}))}(t.filename);return e.append(i,{name:r})}if(t.buffer)return e.append(t.buffer,{name:r});if(t.base64){const n=t.base64,i=n.substring(n.indexOf(",")+1);return e.append(i,{name:r,base64:!0})}}throw new Error("Unsupported media")})))}addDrawings(e,t){const r=new v,n=new m;t.worksheets.forEach((t=>{const{drawing:i}=t;if(i){r.prepare(i,{});let t=r.toXml(i);e.append(t,{name:`xl/drawings/${i.name}.xml`}),t=n.toXml(i.rels),e.append(t,{name:`xl/drawings/_rels/${i.name}.xml.rels`})}}))}addTables(e,t){const r=new b;t.worksheets.forEach((t=>{const{tables:n}=t;n.forEach((t=>{r.prepare(t,{});const n=r.toXml(t);e.append(n,{name:`xl/tables/${t.target}`})}))}))}async addContentTypes(e,t){const r=(new g).toXml(t);e.append(r,{name:"[Content_Types].xml"})}async addApp(e,t){const r=(new _).toXml(t);e.append(r,{name:"docProps/app.xml"})}async addCore(e,t){const r=new p;e.append(r.toXml(t),{name:"docProps/core.xml"})}async addThemes(e,t){const r=t.themes||{theme1:E};Object.keys(r).forEach((t=>{const n=r[t],i=`xl/theme/${t}.xml`;e.append(n,{name:i})}))}async addOfficeRels(e){const t=(new m).toXml([{Id:"rId1",Type:S.RelType.OfficeDocument,Target:"xl/workbook.xml"},{Id:"rId2",Type:S.RelType.CoreProperties,Target:"docProps/core.xml"},{Id:"rId3",Type:S.RelType.ExtenderProperties,Target:"docProps/app.xml"}]);e.append(t,{name:"_rels/.rels"})}async addWorkbookRels(e,t){let r=1;const n=[{Id:"rId"+r++,Type:S.RelType.Styles,Target:"styles.xml"},{Id:"rId"+r++,Type:S.RelType.Theme,Target:"theme/theme1.xml"}];t.sharedStrings.count&&n.push({Id:"rId"+r++,Type:S.RelType.SharedStrings,Target:"sharedStrings.xml"}),t.worksheets.forEach((e=>{e.rId="rId"+r++,n.push({Id:e.rId,Type:S.RelType.Worksheet,Target:`worksheets/sheet${e.id}.xml`})}));const i=(new m).toXml(n);e.append(i,{name:"xl/_rels/workbook.xml.rels"})}async addSharedStrings(e,t){t.sharedStrings&&t.sharedStrings.count&&e.append(t.sharedStrings.xml,{name:"xl/sharedStrings.xml"})}async addStyles(e,t){const{xml:r}=t.styles;r&&e.append(r,{name:"xl/styles.xml"})}async addWorkbook(e,t){const r=new h;e.append(r.toXml(t),{name:"xl/workbook.xml"})}async addWorksheets(e,t){const r=new y,n=new m,i=new k,a=new x;t.worksheets.forEach((t=>{let o=new l;r.render(o,t),e.append(o.xml,{name:`xl/worksheets/sheet${t.id}.xml`}),t.rels&&t.rels.length&&(o=new l,n.render(o,t.rels),e.append(o.xml,{name:`xl/worksheets/_rels/sheet${t.id}.xml.rels`})),t.comments.length>0&&(o=new l,i.render(o,t),e.append(o.xml,{name:`xl/comments${t.id}.xml`}),o=new l,a.render(o,t),e.append(o.xml,{name:`xl/drawings/vmlDrawing${t.id}.vml`}))}))}_finalize(e){return new Promise(((t,r)=>{e.on("finish",(()=>{t(this)})),e.on("error",r),e.finalize()}))}prepareModel(e,t){e.creator=e.creator||"ExcelJS",e.lastModifiedBy=e.lastModifiedBy||"ExcelJS",e.created=e.created||new Date,e.modified=e.modified||new Date,e.useSharedStrings=void 0===t.useSharedStrings||t.useSharedStrings,e.useStyles=void 0===t.useStyles||t.useStyles,e.sharedStrings=new f,e.styles=e.useStyles?new d(!0):new d.Mock;const r=new h,n=new y;r.prepare(e);const i={sharedStrings:e.sharedStrings,styles:e.styles,date1904:e.properties.date1904,drawingsCount:0,media:e.media};i.drawings=e.drawings=[],i.commentRefs=e.commentRefs=[];let a=0;e.tables=[],e.worksheets.forEach((t=>{t.tables.forEach((t=>{a++,t.target=`table${a}.xml`,t.id=a,e.tables.push(t)})),n.prepare(t,i)}))}async write(e,t){t=t||{};const{model:r}=this.workbook,n=new o.ZipWriter(t.zip);return n.pipe(e),this.prepareModel(r,t),await this.addContentTypes(n,r),await this.addOfficeRels(n,r),await this.addWorkbookRels(n,r),await this.addWorksheets(n,r),await this.addSharedStrings(n,r),await this.addDrawings(n,r),await this.addTables(n,r),await Promise.all([this.addThemes(n,r),this.addStyles(n,r)]),await this.addMedia(n,r),await Promise.all([this.addApp(n,r),this.addCore(n,r)]),await this.addWorkbook(n,r),this._finalize(n)}writeFile(e,t){const r=n.createWriteStream(e);return new Promise(((e,n)=>{r.on("finish",(()=>{e()})),r.on("error",(e=>{n(e)})),this.write(r,t).then((()=>{r.end()}))}))}async writeBuffer(e){const t=new s;return await this.write(t,e),t.read()}}S.RelType=r(46405),e.exports=S},20430:e=>{e.exports='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"> <a:shade val="95000"/> <a:satMod val="105000"/> </a:schemeClr> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <a:scene3d> <a:camera prst="orthographicFront"> <a:rot lat="0" lon="0" rev="0"/> </a:camera> <a:lightRig rig="threePt" dir="t"> <a:rot lat="0" lon="0" rev="1200000"/> </a:lightRig> </a:scene3d> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="1"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="3"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="2"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="lt1"/> </a:fontRef> </a:style> </a:spDef> <a:lnDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="2"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="0"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="1"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="tx1"/> </a:fontRef> </a:style> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>'},50073:(e,t,r)=>{var n=r(20077),i=r(71017),a=r(5800),o=r(61478),s=r(96744),c=r(8146),l=r(12884),u=e.exports={},d=/[\/\\]/g;u.exists=function(){var e=i.join.apply(i,arguments);return n.existsSync(e)},u.expand=function(...e){var t=c(e[0])?e.shift():{},r=Array.isArray(e[0])?e[0]:e;if(0===r.length)return[];var u=function(e,t){var r=[];return a(e).forEach((function(e){var n=0===e.indexOf("!");n&&(e=e.slice(1));var i=t(e);r=n?o(r,i):s(r,i)})),r}(r,(function(e){return l.sync(e,t)}));return t.filter&&(u=u.filter((function(e){e=i.join(t.cwd||"",e);try{return"function"==typeof t.filter?t.filter(e):n.statSync(e)[t.filter]()}catch(e){return!1}}))),u},u.expandMapping=function(e,t,r){r=Object.assign({rename:function(e,t){return i.join(e||"",t)}},r);var n=[],a={};return u.expand(r,e).forEach((function(e){var o=e;r.flatten&&(o=i.basename(o)),r.ext&&(o=o.replace(/(\.[^\/]*)?$/,r.ext));var s=r.rename(t,o,r);r.cwd&&(e=i.join(r.cwd,e)),s=s.replace(d,"/"),e=e.replace(d,"/"),a[s]?a[s].src.push(e):(n.push({src:[e],dest:s}),a[s]=n[n.length-1])})),n},u.normalizeFilesArray=function(e){var t=[];return e.forEach((function(e){("src"in e||"dest"in e)&&t.push(e)})),0===t.length?[]:t=_(t).chain().forEach((function(e){"src"in e&&e.src&&(Array.isArray(e.src)?e.src=a(e.src):e.src=[e.src])})).map((function(e){var t=Object.assign({},e);if(delete t.src,delete t.dest,e.expand)return u.expandMapping(e.src,e.dest,t).map((function(t){var r=Object.assign({},e);return r.orig=Object.assign({},e),r.src=t.src,r.dest=t.dest,["expand","cwd","flatten","rename","ext"].forEach((function(e){delete r[e]})),r}));var r=Object.assign({},e);return r.orig=Object.assign({},e),"src"in r&&Object.defineProperty(r,"src",{enumerable:!0,get:function r(){var n;return"result"in r||(n=e.src,n=Array.isArray(n)?a(n):[n],r.result=u.expand(t,n)),r.result}}),"dest"in r&&(r.dest=e.dest),r})).flatten().value()}},40920:(e,t,r)=>{var n=r(20077),i=r(71017),a=(r(73837),r(84150)),o=r(13171),s=r(55402),c=r(12781).Stream,l=r(50963).PassThrough,u=e.exports={};u.file=r(50073),u.collectStream=function(e,t){var r=[],n=0;e.on("error",t),e.on("data",(function(e){r.push(e),n+=e.length})),e.on("end",(function(){var e=new Buffer(n),i=0;r.forEach((function(t){t.copy(e,i),i+=t.length})),t(null,e)}))},u.dateify=function(e){return(e=e||new Date)instanceof Date||(e="string"==typeof e?new Date(e):new Date),e},u.defaults=function(e,t,r){var n=arguments;return n[0]=n[0]||{},s(...n)},u.isStream=function(e){return e instanceof c},u.lazyReadStream=function(e){return new a.Readable((function(){return n.createReadStream(e)}))},u.normalizeInputSource=function(e){if(null===e)return new Buffer(0);if("string"==typeof e)return new Buffer(e);if(u.isStream(e)&&!e._readableState){var t=new l;return e.pipe(t),t}return e},u.sanitizePath=function(e){return o(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,"")},u.trailingSlashIt=function(e){return"/"!==e.slice(-1)?e+"/":e},u.unixifyPath=function(e){return o(e,!1).replace(/^\w+:/,"")},u.walkdir=function(e,t,r){var a=[];"function"==typeof t&&(r=t,t=e),n.readdir(e,(function(o,s){var c,l,d=0;if(o)return r(o);!function o(){if(!(c=s[d++]))return r(null,a);l=i.join(e,c),n.stat(l,(function(e,r){a.push({path:l,relative:i.relative(t,l).replace(/\\/g,"/"),stats:r}),r&&r.isDirectory()?u.walkdir(l,t,(function(e,t){t.forEach((function(e){a.push(e)})),o()})):o()}))}()}))}},34937:(e,t,r)=>{"use strict";var n=r(88212),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(16497));a.inherits=r(94378);var o=r(23960),s=r(26695);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},83834:(e,t,r)=>{"use strict";e.exports=a;var n=r(24487),i=Object.create(r(16497));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(94378),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},23960:(e,t,r)=>{"use strict";var n=r(88212);e.exports=y;var i,a=r(5826);y.ReadableState=h;r(82361).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(94438),c=r(89509).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(16497));u.inherits=r(94378);var d=r(73837),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(2282),g=r(3616);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(34937));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(32553).s),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(34937),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,E(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&E(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(32553).s),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(w,e,t))}function w(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):E(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&E(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},24487:(e,t,r)=>{"use strict";e.exports=o;var n=r(34937),i=Object.create(r(16497));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(94378),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},26695:(e,t,r)=>{"use strict";var n=r(88212);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(16497));s.inherits=r(94378);var c={deprecate:r(41159)},l=r(94438),u=r(89509).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(3616);function m(){}function g(e,t){a=a||r(34937),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(34937),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},2282:(e,t,r)=>{"use strict";var n=r(89509).Buffer,i=r(73837);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},3616:(e,t,r)=>{"use strict";var n=r(88212);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},94438:(e,t,r)=>{e.exports=r(12781)},50963:(e,t,r)=>{var n=r(12781);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(23960)).Stream=n||t,t.Readable=t,t.Writable=r(26695),t.Duplex=r(34937),t.Transform=r(24487),t.PassThrough=r(83834))},8036:(e,t,r)=>{ -/** - * Archiver Vending - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(61417),i={},a=function(e,t){return a.create(e,t)};a.create=function(e,t){if(i[e]){var r=new n(e,t);return r.setFormat(e),r.setModule(new i[e](t)),r}throw new Error("create("+e+"): format not registered")},a.registerFormat=function(e,t){if(i[e])throw new Error("register("+e+"): format already registered");if("function"!=typeof t)throw new Error("register("+e+"): format module invalid");if("function"!=typeof t.prototype.append||"function"!=typeof t.prototype.finalize)throw new Error("register("+e+"): format module missing methods");i[e]=t},a.isRegisteredFormat=function(e){return!!i[e]},a.registerFormat("zip",r(21013)),a.registerFormat("tar",r(20239)),a.registerFormat("json",r(92375)),e.exports=a},61417:(e,t,r)=>{ -/** - * Archiver Core - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(57147),i=r(92141),a=r(1641),o=r(71017),s=r(40920),c=r(73837).inherits,l=r(44714),u=r(11451).Transform,d="win32"===process.platform,p=function(e,t){if(!(this instanceof p))return new p(e,t);"string"!=typeof e&&(t=e,e="zip"),t=this.options=s.defaults(t,{highWaterMark:1048576,statConcurrency:4}),u.call(this,t),this._format=!1,this._module=!1,this._pending=0,this._pointer=0,this._entriesCount=0,this._entriesProcessedCount=0,this._fsEntriesTotalBytes=0,this._fsEntriesProcessedBytes=0,this._queue=a.queue(this._onQueueTask.bind(this),1),this._queue.drain(this._onQueueDrain.bind(this)),this._statQueue=a.queue(this._onStatQueueTask.bind(this),t.statConcurrency),this._statQueue.drain(this._onQueueDrain.bind(this)),this._state={aborted:!1,finalize:!1,finalizing:!1,finalized:!1,modulePiped:!1},this._streams=[]};c(p,u),p.prototype._abort=function(){this._state.aborted=!0,this._queue.kill(),this._statQueue.kill(),this._queue.idle()&&this._shutdown()},p.prototype._append=function(e,t){var r={source:null,filepath:e};(t=t||{}).name||(t.name=e),t.sourcePath=e,r.data=t,this._entriesCount++,t.stats&&t.stats instanceof n.Stats?(r=this._updateQueueTaskWithStats(r,t.stats))&&(t.stats.size&&(this._fsEntriesTotalBytes+=t.stats.size),this._queue.push(r)):this._statQueue.push(r)},p.prototype._finalize=function(){this._state.finalizing||this._state.finalized||this._state.aborted||(this._state.finalizing=!0,this._moduleFinalize(),this._state.finalizing=!1,this._state.finalized=!0)},p.prototype._maybeFinalize=function(){return!(this._state.finalizing||this._state.finalized||this._state.aborted)&&(!!(this._state.finalize&&0===this._pending&&this._queue.idle()&&this._statQueue.idle())&&(this._finalize(),!0))},p.prototype._moduleAppend=function(e,t,r){this._state.aborted?r():this._module.append(e,t,function(e){if(this._task=null,this._state.aborted)this._shutdown();else{if(e)return this.emit("error",e),void setImmediate(r);this.emit("entry",t),this._entriesProcessedCount++,t.stats&&t.stats.size&&(this._fsEntriesProcessedBytes+=t.stats.size),this.emit("progress",{entries:{total:this._entriesCount,processed:this._entriesProcessedCount},fs:{totalBytes:this._fsEntriesTotalBytes,processedBytes:this._fsEntriesProcessedBytes}}),setImmediate(r)}}.bind(this))},p.prototype._moduleFinalize=function(){"function"==typeof this._module.finalize?this._module.finalize():"function"==typeof this._module.end?this._module.end():this.emit("error",new l("NOENDMETHOD"))},p.prototype._modulePipe=function(){this._module.on("error",this._onModuleError.bind(this)),this._module.pipe(this),this._state.modulePiped=!0},p.prototype._moduleSupports=function(e){return!(!this._module.supports||!this._module.supports[e])&&this._module.supports[e]},p.prototype._moduleUnpipe=function(){this._module.unpipe(this),this._state.modulePiped=!1},p.prototype._normalizeEntryData=function(e,t){e=s.defaults(e,{type:"file",name:null,date:null,mode:null,prefix:null,sourcePath:null,stats:!1}),t&&!1===e.stats&&(e.stats=t);var r="directory"===e.type;return e.name&&("string"==typeof e.prefix&&""!==e.prefix&&(e.name=e.prefix+"/"+e.name,e.prefix=null),e.name=s.sanitizePath(e.name),"symlink"!==e.type&&"/"===e.name.slice(-1)?(r=!0,e.type="directory"):r&&(e.name+="/")),"number"==typeof e.mode?e.mode&=d?511:4095:e.stats&&null===e.mode?(e.mode=d?511&e.stats.mode:4095&e.stats.mode,d&&r&&(e.mode=493)):null===e.mode&&(e.mode=r?493:420),e.stats&&null===e.date?e.date=e.stats.mtime:e.date=s.dateify(e.date),e},p.prototype._onModuleError=function(e){this.emit("error",e)},p.prototype._onQueueDrain=function(){this._state.finalizing||this._state.finalized||this._state.aborted||this._state.finalize&&0===this._pending&&this._queue.idle()&&this._statQueue.idle()&&this._finalize()},p.prototype._onQueueTask=function(e,t){var r=()=>{e.data.callback&&e.data.callback(),t()};this._state.finalizing||this._state.finalized||this._state.aborted?r():(this._task=e,this._moduleAppend(e.source,e.data,r))},p.prototype._onStatQueueTask=function(e,t){this._state.finalizing||this._state.finalized||this._state.aborted?t():n.lstat(e.filepath,function(r,n){if(this._state.aborted)setImmediate(t);else{if(r)return this._entriesCount--,this.emit("warning",r),void setImmediate(t);(e=this._updateQueueTaskWithStats(e,n))&&(n.size&&(this._fsEntriesTotalBytes+=n.size),this._queue.push(e)),setImmediate(t)}}.bind(this))},p.prototype._shutdown=function(){this._moduleUnpipe(),this.end()},p.prototype._transform=function(e,t,r){e&&(this._pointer+=e.length),r(null,e)},p.prototype._updateQueueTaskWithStats=function(e,t){if(t.isFile())e.data.type="file",e.data.sourceType="stream",e.source=s.lazyReadStream(e.filepath);else if(t.isDirectory()&&this._moduleSupports("directory"))e.data.name=s.trailingSlashIt(e.data.name),e.data.type="directory",e.data.sourcePath=s.trailingSlashIt(e.filepath),e.data.sourceType="buffer",e.source=Buffer.concat([]);else{if(!t.isSymbolicLink()||!this._moduleSupports("symlink"))return t.isDirectory()?this.emit("warning",new l("DIRECTORYNOTSUPPORTED",e.data)):t.isSymbolicLink()?this.emit("warning",new l("SYMLINKNOTSUPPORTED",e.data)):this.emit("warning",new l("ENTRYNOTSUPPORTED",e.data)),null;var r=n.readlinkSync(e.filepath),i=o.dirname(e.filepath);e.data.type="symlink",e.data.linkname=o.relative(i,o.resolve(i,r)),e.data.sourceType="buffer",e.source=Buffer.concat([])}return e.data=this._normalizeEntryData(e.data,t),e},p.prototype.abort=function(){return this._state.aborted||this._state.finalized||this._abort(),this},p.prototype.append=function(e,t){if(this._state.finalize||this._state.aborted)return this.emit("error",new l("QUEUECLOSED")),this;if("string"!=typeof(t=this._normalizeEntryData(t)).name||0===t.name.length)return this.emit("error",new l("ENTRYNAMEREQUIRED")),this;if("directory"===t.type&&!this._moduleSupports("directory"))return this.emit("error",new l("DIRECTORYNOTSUPPORTED",{name:t.name})),this;if(e=s.normalizeInputSource(e),Buffer.isBuffer(e))t.sourceType="buffer";else{if(!s.isStream(e))return this.emit("error",new l("INPUTSTEAMBUFFERREQUIRED",{name:t.name})),this;t.sourceType="stream"}return this._entriesCount++,this._queue.push({data:t,source:e}),this},p.prototype.directory=function(e,t,r){if(this._state.finalize||this._state.aborted)return this.emit("error",new l("QUEUECLOSED")),this;if("string"!=typeof e||0===e.length)return this.emit("error",new l("DIRECTORYDIRPATHREQUIRED")),this;this._pending++,!1===t?t="":"string"!=typeof t&&(t=e);var n=!1;"function"==typeof r?(n=r,r={}):"object"!=typeof r&&(r={});var a=i(e,{stat:!0,dot:!0});return a.on("error",function(e){this.emit("error",e)}.bind(this)),a.on("match",function(i){a.pause();var o=!1,s=Object.assign({},r);s.name=i.relative,s.prefix=t,s.stats=i.stat,s.callback=a.resume.bind(a);try{if(n)if(!1===(s=n(s)))o=!0;else if("object"!=typeof s)throw new l("DIRECTORYFUNCTIONINVALIDDATA",{dirpath:e})}catch(e){return void this.emit("error",e)}o?a.resume():this._append(i.absolute,s)}.bind(this)),a.on("end",function(){this._pending--,this._maybeFinalize()}.bind(this)),this},p.prototype.file=function(e,t){return this._state.finalize||this._state.aborted?(this.emit("error",new l("QUEUECLOSED")),this):"string"!=typeof e||0===e.length?(this.emit("error",new l("FILEFILEPATHREQUIRED")),this):(this._append(e,t),this)},p.prototype.glob=function(e,t,r){this._pending++,t=s.defaults(t,{stat:!0,pattern:e});var n=i(t.cwd||".",t);return n.on("error",function(e){this.emit("error",e)}.bind(this)),n.on("match",function(e){n.pause();var t=Object.assign({},r);t.callback=n.resume.bind(n),t.stats=e.stat,t.name=e.relative,this._append(e.absolute,t)}.bind(this)),n.on("end",function(){this._pending--,this._maybeFinalize()}.bind(this)),this},p.prototype.finalize=function(){if(this._state.aborted){var e=new l("ABORTED");return this.emit("error",e),Promise.reject(e)}if(this._state.finalize){var t=new l("FINALIZING");return this.emit("error",t),Promise.reject(t)}this._state.finalize=!0,0===this._pending&&this._queue.idle()&&this._statQueue.idle()&&this._finalize();var r=this;return new Promise((function(e,t){var n;r._module.on("end",(function(){n||e()})),r._module.on("error",(function(e){n=!0,t(e)}))}))},p.prototype.setFormat=function(e){return this._format?(this.emit("error",new l("FORMATSET")),this):(this._format=e,this)},p.prototype.setModule=function(e){return this._state.aborted?(this.emit("error",new l("ABORTED")),this):this._state.module?(this.emit("error",new l("MODULESET")),this):(this._module=e,this._modulePipe(),this)},p.prototype.symlink=function(e,t,r){if(this._state.finalize||this._state.aborted)return this.emit("error",new l("QUEUECLOSED")),this;if("string"!=typeof e||0===e.length)return this.emit("error",new l("SYMLINKFILEPATHREQUIRED")),this;if("string"!=typeof t||0===t.length)return this.emit("error",new l("SYMLINKTARGETREQUIRED",{filepath:e})),this;if(!this._moduleSupports("symlink"))return this.emit("error",new l("SYMLINKNOTSUPPORTED",{filepath:e})),this;var n={type:"symlink"};return n.name=e.replace(/\\/g,"/"),n.linkname=t.replace(/\\/g,"/"),n.sourceType="buffer","number"==typeof r&&(n.mode=r),this._entriesCount++,this._queue.push({data:n,source:Buffer.concat([])}),this},p.prototype.pointer=function(){return this._pointer},p.prototype.use=function(e){return this._streams.push(e),this},e.exports=p},44714:(e,t,r)=>{ -/** - * Archiver Core - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(73837);const i={ABORTED:"archive was aborted",DIRECTORYDIRPATHREQUIRED:"diretory dirpath argument must be a non-empty string value",DIRECTORYFUNCTIONINVALIDDATA:"invalid data returned by directory custom data function",ENTRYNAMEREQUIRED:"entry name must be a non-empty string value",FILEFILEPATHREQUIRED:"file filepath argument must be a non-empty string value",FINALIZING:"archive already finalizing",QUEUECLOSED:"queue closed",NOENDMETHOD:"no suitable finalize/end method defined by module",DIRECTORYNOTSUPPORTED:"support for directory entries not defined by module",FORMATSET:"archive format already set",INPUTSTEAMBUFFERREQUIRED:"input source must be valid Stream or Buffer instance",MODULESET:"module already set",SYMLINKNOTSUPPORTED:"support for symlink entries not defined by module",SYMLINKFILEPATHREQUIRED:"symlink filepath argument must be a non-empty string value",SYMLINKTARGETREQUIRED:"symlink target argument must be a non-empty string value",ENTRYNOTSUPPORTED:"entry not supported"};function a(e,t){Error.captureStackTrace(this,this.constructor),this.message=i[e]||e,this.code=e,this.data=t}n.inherits(a,Error),e.exports=a},92375:(e,t,r)=>{ -/** - * JSON Format Plugin - * - * @module plugins/json - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(73837).inherits,i=r(11451).Transform,a=r(7807),o=r(40920),s=function(e){if(!(this instanceof s))return new s(e);e=this.options=o.defaults(e,{}),i.call(this,e),this.supports={directory:!0,symlink:!0},this.files=[]};n(s,i),s.prototype._transform=function(e,t,r){r(null,e)},s.prototype._writeStringified=function(){var e=JSON.stringify(this.files);this.write(e)},s.prototype.append=function(e,t,r){var n=this;function i(e,i){e?r(e):(t.size=i.length||0,t.crc32=a.unsigned(i),n.files.push(t),r(null,t))}t.crc32=0,"buffer"===t.sourceType?i(null,e):"stream"===t.sourceType&&o.collectStream(e,i)},s.prototype.finalize=function(){this._writeStringified(),this.end()},e.exports=s},20239:(e,t,r)=>{ -/** - * TAR Format Plugin - * - * @module plugins/tar - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(59796),i=r(60764),a=r(40920),o=function(e){if(!(this instanceof o))return new o(e);"object"!=typeof(e=this.options=a.defaults(e,{gzip:!1})).gzipOptions&&(e.gzipOptions={}),this.supports={directory:!0,symlink:!0},this.engine=i.pack(e),this.compressor=!1,e.gzip&&(this.compressor=n.createGzip(e.gzipOptions),this.compressor.on("error",this._onCompressorError.bind(this)))};o.prototype._onCompressorError=function(e){this.engine.emit("error",e)},o.prototype.append=function(e,t,r){var n=this;function i(e,i){e?r(e):n.engine.entry(t,i,(function(e){r(e,t)}))}if(t.mtime=t.date,"buffer"===t.sourceType)i(null,e);else if("stream"===t.sourceType&&t.stats){t.size=t.stats.size;var o=n.engine.entry(t,(function(e){r(e,t)}));e.pipe(o)}else"stream"===t.sourceType&&a.collectStream(e,i)},o.prototype.finalize=function(){this.engine.finalize()},o.prototype.on=function(){return this.engine.on.apply(this.engine,arguments)},o.prototype.pipe=function(e,t){return this.compressor?this.engine.pipe.apply(this.engine,[this.compressor]).pipe(e,t):this.engine.pipe.apply(this.engine,arguments)},o.prototype.unpipe=function(){return this.compressor?this.compressor.unpipe.apply(this.compressor,arguments):this.engine.unpipe.apply(this.engine,arguments)},e.exports=o},21013:(e,t,r)=>{ -/** - * ZIP Format Plugin - * - * @module plugins/zip - * @license [MIT]{@link https://github.com/archiverjs/node-archiver/blob/master/LICENSE} - * @copyright (c) 2012-2014 Chris Talkington, contributors. - */ -var n=r(45443),i=r(40920),a=function(e){if(!(this instanceof a))return new a(e);e=this.options=i.defaults(e,{comment:"",forceUTC:!1,namePrependSlash:!1,store:!1}),this.supports={directory:!0,symlink:!0},this.engine=new n(e)};a.prototype.append=function(e,t,r){this.engine.entry(e,t,r)},a.prototype.finalize=function(){this.engine.finalize()},a.prototype.on=function(){return this.engine.on.apply(this.engine,arguments)},a.prototype.pipe=function(){return this.engine.pipe.apply(this.engine,arguments)},a.prototype.unpipe=function(){return this.engine.unpipe.apply(this.engine,arguments)},e.exports=a},7807:(e,t,r)=>{var n=r(14300).Buffer,i=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];function a(e){if(n.isBuffer(e))return e;var t="function"==typeof n.alloc&&"function"==typeof n.from;if("number"==typeof e)return t?n.alloc(e):new n(e);if("string"==typeof e)return t?n.from(e):new n(e);throw new Error("input must be buffer, number, or string, received "+typeof e)}function o(e,t){e=a(e),n.isBuffer(t)&&(t=t.readUInt32BE(0));for(var r=-1^~~t,o=0;o<e.length;o++)r=i[255&(r^e[o])]^r>>>8;return-1^r}function s(){return e=o.apply(null,arguments),(t=a(4)).writeInt32BE(e,0),t;var e,t}"undefined"!=typeof Int32Array&&(i=new Int32Array(i)),s.signed=function(){return o.apply(null,arguments)},s.unsigned=function(){return o.apply(null,arguments)>>>0},e.exports=s},51261:e=>{var t=e.exports=function(){};t.prototype.getName=function(){},t.prototype.getSize=function(){},t.prototype.getLastModifiedDate=function(){},t.prototype.isDirectory=function(){}},31166:(e,t,r)=>{var n=r(73837).inherits,i=r(11451).Transform,a=r(51261),o=r(68561),s=e.exports=function(e){if(!(this instanceof s))return new s(e);i.call(this,e),this.offset=0,this._archive={finish:!1,finished:!1,processing:!1}};n(s,i),s.prototype._appendBuffer=function(e,t,r){},s.prototype._appendStream=function(e,t,r){},s.prototype._emitErrorCallback=function(e){e&&this.emit("error",e)},s.prototype._finish=function(e){},s.prototype._normalizeEntry=function(e){},s.prototype._transform=function(e,t,r){r(null,e)},s.prototype.entry=function(e,t,r){if(t=t||null,"function"!=typeof r&&(r=this._emitErrorCallback.bind(this)),e instanceof a)if(this._archive.finish||this._archive.finished)r(new Error("unacceptable entry after finish"));else{if(!this._archive.processing){if(this._archive.processing=!0,this._normalizeEntry(e),this._entry=e,t=o.normalizeInputSource(t),Buffer.isBuffer(t))this._appendBuffer(e,t,r);else{if(!o.isStream(t))return this._archive.processing=!1,void r(new Error("input source must be valid Stream or Buffer instance"));this._appendStream(e,t,r)}return this}r(new Error("already processing an entry"))}else r(new Error("not a valid instance of ArchiveEntry"))},s.prototype.finish=function(){this._archive.processing?this._archive.finish=!0:this._finish()},s.prototype.getBytesWritten=function(){return this.offset},s.prototype.write=function(e,t){return e&&(this.offset+=e.length),i.prototype.write.call(this,e,t)}},87135:e=>{e.exports={WORD:4,DWORD:8,EMPTY:Buffer.alloc(0),SHORT:2,SHORT_MASK:65535,SHORT_SHIFT:16,SHORT_ZERO:Buffer.from(Array(2)),LONG:4,LONG_ZERO:Buffer.from(Array(4)),MIN_VERSION_INITIAL:10,MIN_VERSION_DATA_DESCRIPTOR:20,MIN_VERSION_ZIP64:45,VERSION_MADEBY:45,METHOD_STORED:0,METHOD_DEFLATED:8,PLATFORM_UNIX:3,PLATFORM_FAT:0,SIG_LFH:67324752,SIG_DD:134695760,SIG_CFH:33639248,SIG_EOCD:101010256,SIG_ZIP64_EOCD:101075792,SIG_ZIP64_EOCD_LOC:117853008,ZIP64_MAGIC_SHORT:65535,ZIP64_MAGIC:4294967295,ZIP64_EXTRA_ID:1,ZLIB_NO_COMPRESSION:0,ZLIB_BEST_SPEED:1,ZLIB_BEST_COMPRESSION:9,ZLIB_DEFAULT_COMPRESSION:-1,MODE_MASK:4095,DEFAULT_FILE_MODE:33188,DEFAULT_DIR_MODE:16877,EXT_FILE_ATTR_DIR:1106051088,EXT_FILE_ATTR_FILE:2175008800,S_IFMT:61440,S_IFIFO:4096,S_IFCHR:8192,S_IFDIR:16384,S_IFBLK:24576,S_IFREG:32768,S_IFLNK:40960,S_IFSOCK:49152,S_DOS_A:32,S_DOS_D:16,S_DOS_V:8,S_DOS_S:4,S_DOS_H:2,S_DOS_R:1}},54193:(e,t,r)=>{var n=r(93911),i=e.exports=function(){return this instanceof i?(this.descriptor=!1,this.encryption=!1,this.utf8=!1,this.numberOfShannonFanoTrees=0,this.strongEncryption=!1,this.slidingDictionarySize=0,this):new i};i.prototype.encode=function(){return n.getShortBytes((this.descriptor?8:0)|(this.utf8?2048:0)|(this.encryption?1:0)|(this.strongEncryption?64:0))},i.prototype.parse=function(e,t){var r=n.getShortBytesValue(e,t),a=new i;return a.useDataDescriptor(0!=(8&r)),a.useUTF8ForNames(0!=(2048&r)),a.useStrongEncryption(0!=(64&r)),a.useEncryption(0!=(1&r)),a.setSlidingDictionarySize(0!=(2&r)?8192:4096),a.setNumberOfShannonFanoTrees(0!=(4&r)?3:2),a},i.prototype.setNumberOfShannonFanoTrees=function(e){this.numberOfShannonFanoTrees=e},i.prototype.getNumberOfShannonFanoTrees=function(){return this.numberOfShannonFanoTrees},i.prototype.setSlidingDictionarySize=function(e){this.slidingDictionarySize=e},i.prototype.getSlidingDictionarySize=function(){return this.slidingDictionarySize},i.prototype.useDataDescriptor=function(e){this.descriptor=e},i.prototype.usesDataDescriptor=function(){return this.descriptor},i.prototype.useEncryption=function(e){this.encryption=e},i.prototype.usesEncryption=function(){return this.encryption},i.prototype.useStrongEncryption=function(e){this.strongEncryption=e},i.prototype.usesStrongEncryption=function(){return this.strongEncryption},i.prototype.useUTF8ForNames=function(e){this.utf8=e},i.prototype.usesUTF8ForNames=function(){return this.utf8}},14109:e=>{e.exports={PERM_MASK:4095,FILE_TYPE_FLAG:61440,LINK_FLAG:40960,FILE_FLAG:32768,DIR_FLAG:16384,DEFAULT_LINK_PERM:511,DEFAULT_DIR_PERM:493,DEFAULT_FILE_PERM:420}},93911:e=>{var t=e.exports={};t.dateToDos=function(e,t){var r=(t=t||!1)?e.getFullYear():e.getUTCFullYear();return r<1980?2162688:r>=2044?2141175677:r-1980<<25|(t?e.getMonth():e.getUTCMonth())+1<<21|(t?e.getDate():e.getUTCDate())<<16|(t?e.getHours():e.getUTCHours())<<11|(t?e.getMinutes():e.getUTCMinutes())<<5|(t?e.getSeconds():e.getUTCSeconds())/2},t.dosToDate=function(e){return new Date(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1)},t.fromDosTime=function(e){return t.dosToDate(e.readUInt32LE(0))},t.getEightBytes=function(e){var t=Buffer.alloc(8);return t.writeUInt32LE(e%4294967296,0),t.writeUInt32LE(e/4294967296|0,4),t},t.getShortBytes=function(e){var t=Buffer.alloc(2);return t.writeUInt16LE((65535&e)>>>0,0),t},t.getShortBytesValue=function(e,t){return e.readUInt16LE(t)},t.getLongBytes=function(e){var t=Buffer.alloc(4);return t.writeUInt32LE((4294967295&e)>>>0,0),t},t.getLongBytesValue=function(e,t){return e.readUInt32LE(t)},t.toDosTime=function(e){return t.getLongBytes(t.dateToDos(e))}},98483:(e,t,r)=>{var n=r(73837).inherits,i=r(13171),a=r(51261),o=r(54193),s=r(14109),c=r(87135),l=r(93911),u=e.exports=function(e){if(!(this instanceof u))return new u(e);a.call(this),this.platform=c.PLATFORM_FAT,this.method=-1,this.name=null,this.size=0,this.csize=0,this.gpb=new o,this.crc=0,this.time=-1,this.minver=c.MIN_VERSION_INITIAL,this.mode=-1,this.extra=null,this.exattr=0,this.inattr=0,this.comment=null,e&&this.setName(e)};n(u,a),u.prototype.getCentralDirectoryExtra=function(){return this.getExtra()},u.prototype.getComment=function(){return null!==this.comment?this.comment:""},u.prototype.getCompressedSize=function(){return this.csize},u.prototype.getCrc=function(){return this.crc},u.prototype.getExternalAttributes=function(){return this.exattr},u.prototype.getExtra=function(){return null!==this.extra?this.extra:c.EMPTY},u.prototype.getGeneralPurposeBit=function(){return this.gpb},u.prototype.getInternalAttributes=function(){return this.inattr},u.prototype.getLastModifiedDate=function(){return this.getTime()},u.prototype.getLocalFileDataExtra=function(){return this.getExtra()},u.prototype.getMethod=function(){return this.method},u.prototype.getName=function(){return this.name},u.prototype.getPlatform=function(){return this.platform},u.prototype.getSize=function(){return this.size},u.prototype.getTime=function(){return-1!==this.time?l.dosToDate(this.time):-1},u.prototype.getTimeDos=function(){return-1!==this.time?this.time:0},u.prototype.getUnixMode=function(){return this.platform!==c.PLATFORM_UNIX?0:this.getExternalAttributes()>>c.SHORT_SHIFT&c.SHORT_MASK},u.prototype.getVersionNeededToExtract=function(){return this.minver},u.prototype.setComment=function(e){Buffer.byteLength(e)!==e.length&&this.getGeneralPurposeBit().useUTF8ForNames(!0),this.comment=e},u.prototype.setCompressedSize=function(e){if(e<0)throw new Error("invalid entry compressed size");this.csize=e},u.prototype.setCrc=function(e){if(e<0)throw new Error("invalid entry crc32");this.crc=e},u.prototype.setExternalAttributes=function(e){this.exattr=e>>>0},u.prototype.setExtra=function(e){this.extra=e},u.prototype.setGeneralPurposeBit=function(e){if(!(e instanceof o))throw new Error("invalid entry GeneralPurposeBit");this.gpb=e},u.prototype.setInternalAttributes=function(e){this.inattr=e},u.prototype.setMethod=function(e){if(e<0)throw new Error("invalid entry compression method");this.method=e},u.prototype.setName=function(e,t=!1){e=i(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,""),t&&(e=`/${e}`),Buffer.byteLength(e)!==e.length&&this.getGeneralPurposeBit().useUTF8ForNames(!0),this.name=e},u.prototype.setPlatform=function(e){this.platform=e},u.prototype.setSize=function(e){if(e<0)throw new Error("invalid entry size");this.size=e},u.prototype.setTime=function(e,t){if(!(e instanceof Date))throw new Error("invalid entry time");this.time=l.dateToDos(e,t)},u.prototype.setUnixMode=function(e){var t=0;t|=(e|=this.isDirectory()?c.S_IFDIR:c.S_IFREG)<<c.SHORT_SHIFT|(this.isDirectory()?c.S_DOS_D:c.S_DOS_A),this.setExternalAttributes(t),this.mode=e&c.MODE_MASK,this.platform=c.PLATFORM_UNIX},u.prototype.setVersionNeededToExtract=function(e){this.minver=e},u.prototype.isDirectory=function(){return"/"===this.getName().slice(-1)},u.prototype.isUnixSymlink=function(){return(this.getUnixMode()&s.FILE_TYPE_FLAG)===s.LINK_FLAG},u.prototype.isZip64=function(){return this.csize>c.ZIP64_MAGIC||this.size>c.ZIP64_MAGIC}},68302:(e,t,r)=>{var n=r(73837).inherits,i=r(7807),{CRC32Stream:a}=r(40864),{DeflateCRC32Stream:o}=r(40864),s=r(31166),c=(r(98483),r(54193),r(87135)),l=(r(68561),r(93911)),u=e.exports=function(e){if(!(this instanceof u))return new u(e);e=this.options=this._defaults(e),s.call(this,e),this._entry=null,this._entries=[],this._archive={centralLength:0,centralOffset:0,comment:"",finish:!1,finished:!1,processing:!1,forceZip64:e.forceZip64,forceLocalTime:e.forceLocalTime}};n(u,s),u.prototype._afterAppend=function(e){this._entries.push(e),e.getGeneralPurposeBit().usesDataDescriptor()&&this._writeDataDescriptor(e),this._archive.processing=!1,this._entry=null,this._archive.finish&&!this._archive.finished&&this._finish()},u.prototype._appendBuffer=function(e,t,r){0===t.length&&e.setMethod(c.METHOD_STORED);var n=e.getMethod();return n===c.METHOD_STORED&&(e.setSize(t.length),e.setCompressedSize(t.length),e.setCrc(i.unsigned(t))),this._writeLocalFileHeader(e),n===c.METHOD_STORED?(this.write(t),this._afterAppend(e),void r(null,e)):n===c.METHOD_DEFLATED?void this._smartStream(e,r).end(t):void r(new Error("compression method "+n+" not implemented"))},u.prototype._appendStream=function(e,t,r){e.getGeneralPurposeBit().useDataDescriptor(!0),e.setVersionNeededToExtract(c.MIN_VERSION_DATA_DESCRIPTOR),this._writeLocalFileHeader(e);var n=this._smartStream(e,r);t.once("error",(function(e){n.emit("error",e),n.end()})),t.pipe(n)},u.prototype._defaults=function(e){return"object"!=typeof e&&(e={}),"object"!=typeof e.zlib&&(e.zlib={}),"number"!=typeof e.zlib.level&&(e.zlib.level=c.ZLIB_BEST_SPEED),e.forceZip64=!!e.forceZip64,e.forceLocalTime=!!e.forceLocalTime,e},u.prototype._finish=function(){this._archive.centralOffset=this.offset,this._entries.forEach(function(e){this._writeCentralFileHeader(e)}.bind(this)),this._archive.centralLength=this.offset-this._archive.centralOffset,this.isZip64()&&this._writeCentralDirectoryZip64(),this._writeCentralDirectoryEnd(),this._archive.processing=!1,this._archive.finish=!0,this._archive.finished=!0,this.end()},u.prototype._normalizeEntry=function(e){-1===e.getMethod()&&e.setMethod(c.METHOD_DEFLATED),e.getMethod()===c.METHOD_DEFLATED&&(e.getGeneralPurposeBit().useDataDescriptor(!0),e.setVersionNeededToExtract(c.MIN_VERSION_DATA_DESCRIPTOR)),-1===e.getTime()&&e.setTime(new Date,this._archive.forceLocalTime),e._offsets={file:0,data:0,contents:0}},u.prototype._smartStream=function(e,t){var r=e.getMethod()===c.METHOD_DEFLATED?new o(this.options.zlib):new a,n=null;return r.once("end",function(){var i=r.digest().readUInt32BE(0);e.setCrc(i),e.setSize(r.size()),e.setCompressedSize(r.size(!0)),this._afterAppend(e),t(n,e)}.bind(this)),r.once("error",(function(e){n=e})),r.pipe(this,{end:!1}),r},u.prototype._writeCentralDirectoryEnd=function(){var e=this._entries.length,t=this._archive.centralLength,r=this._archive.centralOffset;this.isZip64()&&(e=c.ZIP64_MAGIC_SHORT,t=c.ZIP64_MAGIC,r=c.ZIP64_MAGIC),this.write(l.getLongBytes(c.SIG_EOCD)),this.write(c.SHORT_ZERO),this.write(c.SHORT_ZERO),this.write(l.getShortBytes(e)),this.write(l.getShortBytes(e)),this.write(l.getLongBytes(t)),this.write(l.getLongBytes(r));var n=this.getComment(),i=Buffer.byteLength(n);this.write(l.getShortBytes(i)),this.write(n)},u.prototype._writeCentralDirectoryZip64=function(){this.write(l.getLongBytes(c.SIG_ZIP64_EOCD)),this.write(l.getEightBytes(44)),this.write(l.getShortBytes(c.MIN_VERSION_ZIP64)),this.write(l.getShortBytes(c.MIN_VERSION_ZIP64)),this.write(c.LONG_ZERO),this.write(c.LONG_ZERO),this.write(l.getEightBytes(this._entries.length)),this.write(l.getEightBytes(this._entries.length)),this.write(l.getEightBytes(this._archive.centralLength)),this.write(l.getEightBytes(this._archive.centralOffset)),this.write(l.getLongBytes(c.SIG_ZIP64_EOCD_LOC)),this.write(c.LONG_ZERO),this.write(l.getEightBytes(this._archive.centralOffset+this._archive.centralLength)),this.write(l.getLongBytes(1))},u.prototype._writeCentralFileHeader=function(e){var t=e.getGeneralPurposeBit(),r=e.getMethod(),n=e._offsets,i=e.getSize(),a=e.getCompressedSize();if(e.isZip64()||n.file>c.ZIP64_MAGIC){i=c.ZIP64_MAGIC,a=c.ZIP64_MAGIC,e.setVersionNeededToExtract(c.MIN_VERSION_ZIP64);var o=Buffer.concat([l.getShortBytes(c.ZIP64_EXTRA_ID),l.getShortBytes(24),l.getEightBytes(e.getSize()),l.getEightBytes(e.getCompressedSize()),l.getEightBytes(n.file)],28);e.setExtra(o)}this.write(l.getLongBytes(c.SIG_CFH)),this.write(l.getShortBytes(e.getPlatform()<<8|c.VERSION_MADEBY)),this.write(l.getShortBytes(e.getVersionNeededToExtract())),this.write(t.encode()),this.write(l.getShortBytes(r)),this.write(l.getLongBytes(e.getTimeDos())),this.write(l.getLongBytes(e.getCrc())),this.write(l.getLongBytes(a)),this.write(l.getLongBytes(i));var s=e.getName(),u=e.getComment(),d=e.getCentralDirectoryExtra();t.usesUTF8ForNames()&&(s=Buffer.from(s),u=Buffer.from(u)),this.write(l.getShortBytes(s.length)),this.write(l.getShortBytes(d.length)),this.write(l.getShortBytes(u.length)),this.write(c.SHORT_ZERO),this.write(l.getShortBytes(e.getInternalAttributes())),this.write(l.getLongBytes(e.getExternalAttributes())),n.file>c.ZIP64_MAGIC?this.write(l.getLongBytes(c.ZIP64_MAGIC)):this.write(l.getLongBytes(n.file)),this.write(s),this.write(d),this.write(u)},u.prototype._writeDataDescriptor=function(e){this.write(l.getLongBytes(c.SIG_DD)),this.write(l.getLongBytes(e.getCrc())),e.isZip64()?(this.write(l.getEightBytes(e.getCompressedSize())),this.write(l.getEightBytes(e.getSize()))):(this.write(l.getLongBytes(e.getCompressedSize())),this.write(l.getLongBytes(e.getSize())))},u.prototype._writeLocalFileHeader=function(e){var t=e.getGeneralPurposeBit(),r=e.getMethod(),n=e.getName(),i=e.getLocalFileDataExtra();e.isZip64()&&(t.useDataDescriptor(!0),e.setVersionNeededToExtract(c.MIN_VERSION_ZIP64)),t.usesUTF8ForNames()&&(n=Buffer.from(n)),e._offsets.file=this.offset,this.write(l.getLongBytes(c.SIG_LFH)),this.write(l.getShortBytes(e.getVersionNeededToExtract())),this.write(t.encode()),this.write(l.getShortBytes(r)),this.write(l.getLongBytes(e.getTimeDos())),e._offsets.data=this.offset,t.usesDataDescriptor()?(this.write(c.LONG_ZERO),this.write(c.LONG_ZERO),this.write(c.LONG_ZERO)):(this.write(l.getLongBytes(e.getCrc())),this.write(l.getLongBytes(e.getCompressedSize())),this.write(l.getLongBytes(e.getSize()))),this.write(l.getShortBytes(n.length)),this.write(l.getShortBytes(i.length)),this.write(n),this.write(i),e._offsets.contents=this.offset},u.prototype.getComment=function(e){return null!==this._archive.comment?this._archive.comment:""},u.prototype.isZip64=function(){return this._archive.forceZip64||this._entries.length>c.ZIP64_MAGIC_SHORT||this._archive.centralLength>c.ZIP64_MAGIC||this._archive.centralOffset>c.ZIP64_MAGIC},u.prototype.setComment=function(e){this._archive.comment=e}},56614:(e,t,r)=>{e.exports={ArchiveEntry:r(51261),ZipArchiveEntry:r(98483),ArchiveOutputStream:r(31166),ZipArchiveOutputStream:r(68302)}},68561:(e,t,r)=>{var n=r(12781).Stream,i=r(11451).PassThrough,a=e.exports={};a.isStream=function(e){return e instanceof n},a.normalizeInputSource=function(e){if(null===e)return Buffer.alloc(0);if("string"==typeof e)return Buffer.from(e);if(a.isStream(e)&&!e._readableState){var t=new i;return e.pipe(t),t}return e}},5625:(e,t,r)=>{"use strict";const{Transform:n}=r(11451),i=r(34606);e.exports=class extends n{constructor(e){super(e),this.checksum=Buffer.allocUnsafe(4),this.checksum.writeInt32BE(0,0),this.rawSize=0}_transform(e,t,r){e&&(this.checksum=i.buf(e,this.checksum)>>>0,this.rawSize+=e.length),r(null,e)}digest(e){const t=Buffer.allocUnsafe(4);return t.writeUInt32BE(this.checksum>>>0,0),e?t.toString(e):t}hex(){return this.digest("hex").toUpperCase()}size(){return this.rawSize}}},72291:(e,t,r)=>{"use strict";const{DeflateRaw:n}=r(59796),i=r(34606);e.exports=class extends n{constructor(e){super(e),this.checksum=Buffer.allocUnsafe(4),this.checksum.writeInt32BE(0,0),this.rawSize=0,this.compressedSize=0}push(e,t){return e&&(this.compressedSize+=e.length),super.push(e,t)}_transform(e,t,r){e&&(this.checksum=i.buf(e,this.checksum)>>>0,this.rawSize+=e.length),super._transform(e,t,r)}digest(e){const t=Buffer.allocUnsafe(4);return t.writeUInt32BE(this.checksum>>>0,0),e?t.toString(e):t}hex(){return this.digest("hex").toUpperCase()}size(e=!1){return e?this.compressedSize:this.rawSize}}},40864:(e,t,r)=>{"use strict";e.exports={CRC32Stream:r(5625),DeflateCRC32Stream:r(72291)}},84934:(e,t,r)=>{var n=r(73837),i=r(10022),a=r(26029),o=r(11451).Writable,s=r(11451).PassThrough,c=function(){},l=function(e){return(e&=511)&&512-e},u=function(e,t){this._parent=e,this.offset=t,s.call(this,{autoDestroy:!1})};n.inherits(u,s),u.prototype.destroy=function(e){this._parent.destroy(e)};var d=function(e){if(!(this instanceof d))return new d(e);o.call(this,e),e=e||{},this._offset=0,this._buffer=i(),this._missing=0,this._partial=!1,this._onparse=c,this._header=null,this._stream=null,this._overflow=null,this._cb=null,this._locked=!1,this._destroyed=!1,this._pax=null,this._paxGlobal=null,this._gnuLongPath=null,this._gnuLongLinkPath=null;var t=this,r=t._buffer,n=function(){t._continue()},s=function(e){if(t._locked=!1,e)return t.destroy(e);t._stream||n()},p=function(){t._stream=null;var e=l(t._header.size);e?t._parse(e,f):t._parse(512,y),t._locked||n()},f=function(){t._buffer.consume(l(t._header.size)),t._parse(512,y),n()},m=function(){var e=t._header.size;t._paxGlobal=a.decodePax(r.slice(0,e)),r.consume(e),p()},g=function(){var e=t._header.size;t._pax=a.decodePax(r.slice(0,e)),t._paxGlobal&&(t._pax=Object.assign({},t._paxGlobal,t._pax)),r.consume(e),p()},_=function(){var n=t._header.size;this._gnuLongPath=a.decodeLongPath(r.slice(0,n),e.filenameEncoding),r.consume(n),p()},h=function(){var n=t._header.size;this._gnuLongLinkPath=a.decodeLongPath(r.slice(0,n),e.filenameEncoding),r.consume(n),p()},y=function(){var i,o=t._offset;try{i=t._header=a.decode(r.slice(0,512),e.filenameEncoding,e.allowUnknownFormat)}catch(e){t.emit("error",e)}return r.consume(512),i?"gnu-long-path"===i.type?(t._parse(i.size,_),void n()):"gnu-long-link-path"===i.type?(t._parse(i.size,h),void n()):"pax-global-header"===i.type?(t._parse(i.size,m),void n()):"pax-header"===i.type?(t._parse(i.size,g),void n()):(t._gnuLongPath&&(i.name=t._gnuLongPath,t._gnuLongPath=null),t._gnuLongLinkPath&&(i.linkname=t._gnuLongLinkPath,t._gnuLongLinkPath=null),t._pax&&(t._header=i=function(e,t){return t.path&&(e.name=t.path),t.linkpath&&(e.linkname=t.linkpath),t.size&&(e.size=parseInt(t.size,10)),e.pax=t,e}(i,t._pax),t._pax=null),t._locked=!0,i.size&&"directory"!==i.type?(t._stream=new u(t,o),t.emit("entry",i,t._stream,s),t._parse(i.size,p),void n()):(t._parse(512,y),void t.emit("entry",i,function(e,t){var r=new u(e,t);return r.end(),r}(t,o),s))):(t._parse(512,y),void n())};this._onheader=y,this._parse(512,y)};n.inherits(d,o),d.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.emit("close"))},d.prototype._parse=function(e,t){this._destroyed||(this._offset+=e,this._missing=e,t===this._onheader&&(this._partial=!1),this._onparse=t)},d.prototype._continue=function(){if(!this._destroyed){var e=this._cb;this._cb=c,this._overflow?this._write(this._overflow,void 0,e):e()}},d.prototype._write=function(e,t,r){if(!this._destroyed){var n=this._stream,i=this._buffer,a=this._missing;if(e.length&&(this._partial=!0),e.length<a)return this._missing-=e.length,this._overflow=null,n?n.write(e,r):(i.append(e),r());this._cb=r,this._missing=0;var o=null;e.length>a&&(o=e.slice(a),e=e.slice(0,a)),n?n.end(e):i.append(e),this._overflow=o,this._onparse()}},d.prototype._final=function(e){if(this._partial)return this.destroy(new Error("Unexpected end of data"));e()},e.exports=d},26029:(e,t)=>{var r=Buffer.alloc,n="0".charCodeAt(0),i=Buffer.from("ustar\0","binary"),a=Buffer.from("00","binary"),o=Buffer.from("ustar ","binary"),s=Buffer.from(" \0","binary"),c=parseInt("7777",8),l=257,u=function(e,t,r,n){for(;r<n;r++)if(e[r]===t)return r;return n},d=function(e){for(var t=256,r=0;r<148;r++)t+=e[r];for(var n=156;n<512;n++)t+=e[n];return t},p=function(e,t){return(e=e.toString(8)).length>t?"7777777777777777777".slice(0,t)+" ":"0000000000000000000".slice(0,t-e.length)+e+" "};var f=function(e,t,r){if(128&(e=e.slice(t,t+r))[t=0])return function(e){var t;if(128===e[0])t=!0;else{if(255!==e[0])return null;t=!1}for(var r=[],n=e.length-1;n>0;n--){var i=e[n];t?r.push(i):r.push(255-i)}var a=0,o=r.length;for(n=0;n<o;n++)a+=r[n]*Math.pow(256,n);return t?a:-1*a}(e);for(;t<e.length&&32===e[t];)t++;for(var n=(i=u(e,32,t,e.length),a=e.length,o=e.length,"number"!=typeof i?o:(i=~~i)>=a?a:i>=0||(i+=a)>=0?i:0);t<n&&0===e[t];)t++;return n===t?0:parseInt(e.slice(t,n).toString(),8);var i,a,o},m=function(e,t,r,n){return e.slice(t,u(e,0,t,t+r)).toString(n)},g=function(e){var t=Buffer.byteLength(e),r=Math.floor(Math.log(t)/Math.log(10))+1;return t+r>=Math.pow(10,r)&&r++,t+r+e};t.decodeLongPath=function(e,t){return m(e,0,e.length,t)},t.encodePax=function(e){var t="";e.name&&(t+=g(" path="+e.name+"\n")),e.linkname&&(t+=g(" linkpath="+e.linkname+"\n"));var r=e.pax;if(r)for(var n in r)t+=g(" "+n+"="+r[n]+"\n");return Buffer.from(t)},t.decodePax=function(e){for(var t={};e.length;){for(var r=0;r<e.length&&32!==e[r];)r++;var n=parseInt(e.slice(0,r).toString(),10);if(!n)return t;var i=e.slice(r+1,n-1).toString(),a=i.indexOf("=");if(-1===a)return t;t[i.slice(0,a)]=i.slice(a+1),e=e.slice(n)}return t},t.encode=function(e){var t=r(512),o=e.name,s="";if(5===e.typeflag&&"/"!==o[o.length-1]&&(o+="/"),Buffer.byteLength(o)!==o.length)return null;for(;Buffer.byteLength(o)>100;){var u=o.indexOf("/");if(-1===u)return null;s+=s?"/"+o.slice(0,u):o.slice(0,u),o=o.slice(u+1)}return Buffer.byteLength(o)>100||Buffer.byteLength(s)>155||e.linkname&&Buffer.byteLength(e.linkname)>100?null:(t.write(o),t.write(p(e.mode&c,6),100),t.write(p(e.uid,6),108),t.write(p(e.gid,6),116),t.write(p(e.size,11),124),t.write(p(e.mtime.getTime()/1e3|0,11),136),t[156]=n+function(e){switch(e){case"file":return 0;case"link":return 1;case"symlink":return 2;case"character-device":return 3;case"block-device":return 4;case"directory":return 5;case"fifo":return 6;case"contiguous-file":return 7;case"pax-header":return 72}return 0}(e.type),e.linkname&&t.write(e.linkname,157),i.copy(t,l),a.copy(t,263),e.uname&&t.write(e.uname,265),e.gname&&t.write(e.gname,297),t.write(p(e.devmajor||0,6),329),t.write(p(e.devminor||0,6),337),s&&t.write(s,345),t.write(p(d(t),6),148),t)},t.decode=function(e,t,r){var a=0===e[156]?0:e[156]-n,c=m(e,0,100,t),u=f(e,100,8),p=f(e,108,8),g=f(e,116,8),_=f(e,124,12),h=f(e,136,12),y=function(e){switch(e){case 0:return"file";case 1:return"link";case 2:return"symlink";case 3:return"character-device";case 4:return"block-device";case 5:return"directory";case 6:return"fifo";case 7:return"contiguous-file";case 72:return"pax-header";case 55:return"pax-global-header";case 27:return"gnu-long-link-path";case 28:case 30:return"gnu-long-path"}return null}(a),v=0===e[157]?null:m(e,157,100,t),b=m(e,265,32),k=m(e,297,32),x=f(e,329,8),E=f(e,337,8),S=d(e);if(256===S)return null;if(S!==f(e,148,8))throw new Error("Invalid tar header. Maybe the tar is corrupted or it needs to be gunzipped?");if(0===i.compare(e,l,263))e[345]&&(c=m(e,345,155,t)+"/"+c);else if(0===o.compare(e,l,263)&&0===s.compare(e,263,265));else if(!r)throw new Error("Invalid tar header: unknown format.");return 0===a&&c&&"/"===c[c.length-1]&&(a=5),{name:c,mode:u,uid:p,gid:g,size:_,mtime:new Date(1e3*h),type:y,linkname:v,uname:b,gname:k,devmajor:x,devminor:E}}},60764:(e,t,r)=>{t.extract=r(84934),t.pack=r(25626)},25626:(e,t,r)=>{var n=r(17268),i=r(12840),a=r(94378),o=Buffer.alloc,s=r(11451).Readable,c=r(11451).Writable,l=r(71576).StringDecoder,u=r(26029),d=parseInt("755",8),p=parseInt("644",8),f=o(1024),m=function(){},g=function(e,t){(t&=511)&&e.push(f.slice(0,512-t))};var _=function(e){c.call(this),this.written=0,this._to=e,this._destroyed=!1};a(_,c),_.prototype._write=function(e,t,r){if(this.written+=e.length,this._to.push(e))return r();this._to._drain=r},_.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var h=function(){c.call(this),this.linkname="",this._decoder=new l("utf-8"),this._destroyed=!1};a(h,c),h.prototype._write=function(e,t,r){this.linkname+=this._decoder.write(e),r()},h.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var y=function(){c.call(this),this._destroyed=!1};a(y,c),y.prototype._write=function(e,t,r){r(new Error("No body allowed for this entry"))},y.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.emit("close"))};var v=function(e){if(!(this instanceof v))return new v(e);s.call(this,e),this._drain=m,this._finalized=!1,this._finalizing=!1,this._destroyed=!1,this._stream=null};a(v,s),v.prototype.entry=function(e,t,r){if(this._stream)throw new Error("already piping an entry");if(!this._finalized&&!this._destroyed){"function"==typeof t&&(r=t,t=null),r||(r=m);var a=this;if(e.size&&"symlink"!==e.type||(e.size=0),e.type||(e.type=function(e){switch(e&n.S_IFMT){case n.S_IFBLK:return"block-device";case n.S_IFCHR:return"character-device";case n.S_IFDIR:return"directory";case n.S_IFIFO:return"fifo";case n.S_IFLNK:return"symlink"}return"file"}(e.mode)),e.mode||(e.mode="directory"===e.type?d:p),e.uid||(e.uid=0),e.gid||(e.gid=0),e.mtime||(e.mtime=new Date),"string"==typeof t&&(t=Buffer.from(t)),Buffer.isBuffer(t)){e.size=t.length,this._encode(e);var o=this.push(t);return g(a,e.size),o?process.nextTick(r):this._drain=r,new y}if("symlink"===e.type&&!e.linkname){var s=new h;return i(s,(function(t){if(t)return a.destroy(),r(t);e.linkname=s.linkname,a._encode(e),r()})),s}if(this._encode(e),"file"!==e.type&&"contiguous-file"!==e.type)return process.nextTick(r),new y;var c=new _(this);return this._stream=c,i(c,(function(t){return a._stream=null,t?(a.destroy(),r(t)):c.written!==e.size?(a.destroy(),r(new Error("size mismatch"))):(g(a,e.size),a._finalizing&&a.finalize(),void r())})),c}},v.prototype.finalize=function(){this._stream?this._finalizing=!0:this._finalized||(this._finalized=!0,this.push(f),this.push(null))},v.prototype.destroy=function(e){this._destroyed||(this._destroyed=!0,e&&this.emit("error",e),this.emit("close"),this._stream&&this._stream.destroy&&this._stream.destroy())},v.prototype._encode=function(e){if(!e.pax){var t=u.encode(e);if(t)return void this.push(t)}this._encodePax(e)},v.prototype._encodePax=function(e){var t=u.encodePax({name:e.name,linkname:e.linkname,pax:e.pax}),r={name:"PaxHeader",mode:e.mode,uid:e.uid,gid:e.gid,size:t.length,mtime:e.mtime,type:"pax-header",linkname:e.linkname&&"PaxHeader",uname:e.uname,gname:e.gname,devmajor:e.devmajor,devminor:e.devminor};this.push(u.encode(r)),this.push(t),g(this,t.length),r.size=e.size,r.type=e.type,this.push(u.encode(r))},v.prototype._read=function(e){var t=this._drain;this._drain=m,t()},e.exports=v},45443:(e,t,r)=>{ -/** - * ZipStream - * - * @ignore - * @license [MIT]{@link https://github.com/archiverjs/node-zip-stream/blob/master/LICENSE} - * @copyright (c) 2014 Chris Talkington, contributors. - */ -var n=r(73837).inherits,i=r(56614).ZipArchiveOutputStream,a=r(56614).ZipArchiveEntry,o=r(95558),s=e.exports=function(e){if(!(this instanceof s))return new s(e);(e=this.options=e||{}).zlib=e.zlib||{},i.call(this,e),"number"==typeof e.level&&e.level>=0&&(e.zlib.level=e.level,delete e.level),e.forceZip64||"number"!=typeof e.zlib.level||0!==e.zlib.level||(e.store=!0),e.namePrependSlash=e.namePrependSlash||!1,e.comment&&e.comment.length>0&&this.setComment(e.comment)};n(s,i),s.prototype._normalizeFileData=function(e){var t="directory"===(e=o.defaults(e,{type:"file",name:null,namePrependSlash:this.options.namePrependSlash,linkname:null,date:null,mode:null,store:this.options.store,comment:""})).type,r="symlink"===e.type;return e.name&&(e.name=o.sanitizePath(e.name),r||"/"!==e.name.slice(-1)?t&&(e.name+="/"):(t=!0,e.type="directory")),(t||r)&&(e.store=!0),e.date=o.dateify(e.date),e},s.prototype.entry=function(e,t,r){if("function"!=typeof r&&(r=this._emitErrorCallback.bind(this)),"file"===(t=this._normalizeFileData(t)).type||"directory"===t.type||"symlink"===t.type)if("string"==typeof t.name&&0!==t.name.length){if("symlink"!==t.type||"string"==typeof t.linkname){var n=new a(t.name);return n.setTime(t.date,this.options.forceLocalTime),t.namePrependSlash&&n.setName(t.name,!0),t.store&&n.setMethod(0),t.comment.length>0&&n.setComment(t.comment),"symlink"===t.type&&"number"!=typeof t.mode&&(t.mode=40960),"number"==typeof t.mode&&("symlink"===t.type&&(t.mode|=40960),n.setUnixMode(t.mode)),"symlink"===t.type&&"string"==typeof t.linkname&&(e=Buffer.from(t.linkname)),i.prototype.entry.call(this,n,e,r)}r(new Error("entry linkname must be a non-empty string value when type equals symlink"))}else r(new Error("entry name must be a non-empty string value"));else r(new Error(t.type+" entries not currently supported"))},s.prototype.finalize=function(){this.finish()}},22607:(e,t,r)=>{var n=r(20077),i=r(71017),a=r(5800),o=r(61478),s=r(96744),c=r(8146),l=r(12884),u=e.exports={},d=/[\/\\]/g;u.exists=function(){var e=i.join.apply(i,arguments);return n.existsSync(e)},u.expand=function(...e){var t=c(e[0])?e.shift():{},r=Array.isArray(e[0])?e[0]:e;if(0===r.length)return[];var u=function(e,t){var r=[];return a(e).forEach((function(e){var n=0===e.indexOf("!");n&&(e=e.slice(1));var i=t(e);r=n?o(r,i):s(r,i)})),r}(r,(function(e){return l.sync(e,t)}));return t.filter&&(u=u.filter((function(e){e=i.join(t.cwd||"",e);try{return"function"==typeof t.filter?t.filter(e):n.statSync(e)[t.filter]()}catch(e){return!1}}))),u},u.expandMapping=function(e,t,r){r=Object.assign({rename:function(e,t){return i.join(e||"",t)}},r);var n=[],a={};return u.expand(r,e).forEach((function(e){var o=e;r.flatten&&(o=i.basename(o)),r.ext&&(o=o.replace(/(\.[^\/]*)?$/,r.ext));var s=r.rename(t,o,r);r.cwd&&(e=i.join(r.cwd,e)),s=s.replace(d,"/"),e=e.replace(d,"/"),a[s]?a[s].src.push(e):(n.push({src:[e],dest:s}),a[s]=n[n.length-1])})),n},u.normalizeFilesArray=function(e){var t=[];return e.forEach((function(e){("src"in e||"dest"in e)&&t.push(e)})),0===t.length?[]:t=_(t).chain().forEach((function(e){"src"in e&&e.src&&(Array.isArray(e.src)?e.src=a(e.src):e.src=[e.src])})).map((function(e){var t=Object.assign({},e);if(delete t.src,delete t.dest,e.expand)return u.expandMapping(e.src,e.dest,t).map((function(t){var r=Object.assign({},e);return r.orig=Object.assign({},e),r.src=t.src,r.dest=t.dest,["expand","cwd","flatten","rename","ext"].forEach((function(e){delete r[e]})),r}));var r=Object.assign({},e);return r.orig=Object.assign({},e),"src"in r&&Object.defineProperty(r,"src",{enumerable:!0,get:function r(){var n;return"result"in r||(n=e.src,n=Array.isArray(n)?a(n):[n],r.result=u.expand(t,n)),r.result}}),"dest"in r&&(r.dest=e.dest),r})).flatten().value()}},95558:(e,t,r)=>{var n=r(20077),i=r(71017),a=r(84150),o=r(13171),s=r(55402),c=r(12781).Stream,l=r(11451).PassThrough,u=e.exports={};u.file=r(22607),u.collectStream=function(e,t){var r=[],n=0;e.on("error",t),e.on("data",(function(e){r.push(e),n+=e.length})),e.on("end",(function(){var e=Buffer.alloc(n),i=0;r.forEach((function(t){t.copy(e,i),i+=t.length})),t(null,e)}))},u.dateify=function(e){return(e=e||new Date)instanceof Date||(e="string"==typeof e?new Date(e):new Date),e},u.defaults=function(e,t,r){var n=arguments;return n[0]=n[0]||{},s(...n)},u.isStream=function(e){return e instanceof c},u.lazyReadStream=function(e){return new a.Readable((function(){return n.createReadStream(e)}))},u.normalizeInputSource=function(e){return null===e?Buffer.alloc(0):"string"==typeof e?Buffer.from(e):u.isStream(e)?e.pipe(new l):e},u.sanitizePath=function(e){return o(e,!1).replace(/^\w+:/,"").replace(/^(\.\.\/|\/)+/,"")},u.trailingSlashIt=function(e){return"/"!==e.slice(-1)?e+"/":e},u.unixifyPath=function(e){return o(e,!1).replace(/^\w+:/,"")},u.walkdir=function(e,t,r){var a=[];"function"==typeof t&&(r=t,t=e),n.readdir(e,(function(o,s){var c,l,d=0;if(o)return r(o);!function o(){if(!(c=s[d++]))return r(null,a);l=i.join(e,c),n.stat(l,(function(e,r){a.push({path:l,relative:i.relative(t,l).replace(/\\/g,"/"),stats:r}),r&&r.isDirectory()?u.walkdir(l,t,(function(e,t){t.forEach((function(e){a.push(e)})),o()})):o()}))}()}))}},77283:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CsvParserStream=t.ParserOptions=t.parseFile=t.parseStream=t.parseString=t.parse=t.FormatterOptions=t.CsvFormatterStream=t.writeToPath=t.writeToString=t.writeToBuffer=t.writeToStream=t.write=t.format=void 0;var n=r(47201);Object.defineProperty(t,"format",{enumerable:!0,get:function(){return n.format}}),Object.defineProperty(t,"write",{enumerable:!0,get:function(){return n.write}}),Object.defineProperty(t,"writeToStream",{enumerable:!0,get:function(){return n.writeToStream}}),Object.defineProperty(t,"writeToBuffer",{enumerable:!0,get:function(){return n.writeToBuffer}}),Object.defineProperty(t,"writeToString",{enumerable:!0,get:function(){return n.writeToString}}),Object.defineProperty(t,"writeToPath",{enumerable:!0,get:function(){return n.writeToPath}}),Object.defineProperty(t,"CsvFormatterStream",{enumerable:!0,get:function(){return n.CsvFormatterStream}}),Object.defineProperty(t,"FormatterOptions",{enumerable:!0,get:function(){return n.FormatterOptions}});var i=r(85455);Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return i.parse}}),Object.defineProperty(t,"parseString",{enumerable:!0,get:function(){return i.parseString}}),Object.defineProperty(t,"parseStream",{enumerable:!0,get:function(){return i.parseStream}}),Object.defineProperty(t,"parseFile",{enumerable:!0,get:function(){return i.parseFile}}),Object.defineProperty(t,"ParserOptions",{enumerable:!0,get:function(){return i.ParserOptions}}),Object.defineProperty(t,"CsvParserStream",{enumerable:!0,get:function(){return i.CsvParserStream}})},17268:(e,t,r)=>{e.exports=r(57147).constants||r(22057)},37334:(e,t,r)=>{e.exports=u,u.realpath=u,u.sync=d,u.realpathSync=d,u.monkeypatch=function(){n.realpath=u,n.realpathSync=d},u.unmonkeypatch=function(){n.realpath=i,n.realpathSync=a};var n=r(57147),i=n.realpath,a=n.realpathSync,o=process.version,s=/^v[0-5]\./.test(o),c=r(47059);function l(e){return e&&"realpath"===e.syscall&&("ELOOP"===e.code||"ENOMEM"===e.code||"ENAMETOOLONG"===e.code)}function u(e,t,r){if(s)return i(e,t,r);"function"==typeof t&&(r=t,t=null),i(e,t,(function(n,i){l(n)?c.realpath(e,t,r):r(n,i)}))}function d(e,t){if(s)return a(e,t);try{return a(e,t)}catch(r){if(l(r))return c.realpathSync(e,t);throw r}}},47059:(e,t,r)=>{var n=r(71017),i="win32"===process.platform,a=r(57147),o=process.env.NODE_DEBUG&&/fs/.test(process.env.NODE_DEBUG);function s(e){return"function"==typeof e?e:function(){var e;if(o){var t=new Error;e=function(e){e&&(t.message=e.message,r(e=t))}}else e=r;return e;function r(e){if(e){if(process.throwDeprecation)throw e;if(!process.noDeprecation){var t="fs: missing callback "+(e.stack||e.message);process.traceDeprecation?console.trace(t):console.error(t)}}}}()}n.normalize;if(i)var c=/(.*?)(?:[\/\\]+|$)/g;else c=/(.*?)(?:[\/]+|$)/g;if(i)var l=/^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/;else l=/^[\/]*/;t.realpathSync=function(e,t){if(e=n.resolve(e),t&&Object.prototype.hasOwnProperty.call(t,e))return t[e];var r,o,s,u,d=e,p={},f={};function m(){var t=l.exec(e);r=t[0].length,o=t[0],s=t[0],u="",i&&!f[s]&&(a.lstatSync(s),f[s]=!0)}for(m();r<e.length;){c.lastIndex=r;var g=c.exec(e);if(u=o,o+=g[0],s=u+g[1],r=c.lastIndex,!(f[s]||t&&t[s]===s)){var _;if(t&&Object.prototype.hasOwnProperty.call(t,s))_=t[s];else{var h=a.lstatSync(s);if(!h.isSymbolicLink()){f[s]=!0,t&&(t[s]=s);continue}var y=null;if(!i){var v=h.dev.toString(32)+":"+h.ino.toString(32);p.hasOwnProperty(v)&&(y=p[v])}null===y&&(a.statSync(s),y=a.readlinkSync(s)),_=n.resolve(u,y),t&&(t[s]=_),i||(p[v]=y)}e=n.resolve(_,e.slice(r)),m()}}return t&&(t[d]=e),e},t.realpath=function(e,t,r){if("function"!=typeof r&&(r=s(t),t=null),e=n.resolve(e),t&&Object.prototype.hasOwnProperty.call(t,e))return process.nextTick(r.bind(null,null,t[e]));var o,u,d,p,f=e,m={},g={};function _(){var t=l.exec(e);o=t[0].length,u=t[0],d=t[0],p="",i&&!g[d]?a.lstat(d,(function(e){if(e)return r(e);g[d]=!0,h()})):process.nextTick(h)}function h(){if(o>=e.length)return t&&(t[f]=e),r(null,e);c.lastIndex=o;var n=c.exec(e);return p=u,u+=n[0],d=p+n[1],o=c.lastIndex,g[d]||t&&t[d]===d?process.nextTick(h):t&&Object.prototype.hasOwnProperty.call(t,d)?b(t[d]):a.lstat(d,y)}function y(e,n){if(e)return r(e);if(!n.isSymbolicLink())return g[d]=!0,t&&(t[d]=d),process.nextTick(h);if(!i){var o=n.dev.toString(32)+":"+n.ino.toString(32);if(m.hasOwnProperty(o))return v(null,m[o],d)}a.stat(d,(function(e){if(e)return r(e);a.readlink(d,(function(e,t){i||(m[o]=t),v(e,t)}))}))}function v(e,i,a){if(e)return r(e);var o=n.resolve(p,i);t&&(t[a]=o),b(o)}function b(t){e=n.resolve(t,e.slice(o)),_()}_()}},98052:(e,t,r)=>{r(95348),r(87937),t.Writer=r(80608),t.$B={Reader:r(49305),Writer:r(93589)},t.Lv={Reader:r(21831),Writer:r(26969)},t.rU={Reader:r(79716),Writer:r(33423)},t._S={Reader:r(63732),Writer:r(14955)},t.Lv.Reader,t.$B.Reader,t.rU.Reader,t._S.Reader,t.Writer.Dir=t.Lv.Writer,t.Writer.File=t.$B.Writer,t.Writer.Link=t.rU.Writer,t.Writer.Proxy=t._S.Writer,r(88818)},95348:(e,t,r)=>{e.exports=i;var n=r(12781).Stream;function i(){n.call(this)}function a(e,t,r){return e instanceof Error||(e=new Error(e)),e.code=e.code||t,e.path=e.path||r.path,e.fstream_type=e.fstream_type||r.type,e.fstream_path=e.fstream_path||r.path,r._path!==r.path&&(e.fstream_unc_path=e.fstream_unc_path||r._path),r.linkpath&&(e.fstream_linkpath=e.fstream_linkpath||r.linkpath),e.fstream_class=e.fstream_class||r.constructor.name,e.fstream_stack=e.fstream_stack||(new Error).stack.split(/\n/).slice(3).map((function(e){return e.replace(/^ {4}at /,"")})),e}r(94378)(i,n),i.prototype.on=function(e,t){return"ready"===e&&this.ready?process.nextTick(t.bind(this)):n.prototype.on.call(this,e,t),this},i.prototype.abort=function(){this._aborted=!0,this.emit("abort")},i.prototype.destroy=function(){},i.prototype.warn=function(e,t){var r=this,n=a(e,t,r);r.listeners("warn")?r.emit("warn",n):console.error("%s %s\npath = %s\nsyscall = %s\nfstream_type = %s\nfstream_path = %s\nfstream_unc_path = %s\nfstream_class = %s\nfstream_stack =\n%s\n",t||"UNKNOWN",n.stack,n.path,n.syscall,n.fstream_type,n.fstream_path,n.fstream_unc_path,n.fstream_class,n.fstream_stack.join("\n"))},i.prototype.info=function(e,t){this.emit("info",e,t)},i.prototype.error=function(e,t,r){var n=a(e,t,this);if(r)throw n;this.emit("error",n)}},88818:e=>{e.exports=function e(t){if(t._collected)return;if(t._paused)return t.on("resume",e.bind(null,t));t._collected=!0,t.pause(),t.on("data",n),t.on("end",n);var r=[];function n(e){"string"==typeof e&&(e=new Buffer(e)),Buffer.isBuffer(e)&&!e.length||r.push(e)}t.on("entry",a);var i=[];function a(t){e(t),i.push(t)}t.on("proxy",(function(e){e.pause()})),t.pipe=(o=t.pipe,function(e){var s=0;return function c(){var l=i[s++];if(!l)return t.removeListener("entry",a),t.removeListener("data",n),t.removeListener("end",n),t.pipe=o,e&&t.pipe(e),r.forEach((function(e){e?t.emit("data",e):t.emit("end")})),void t.resume();l.on("end",c),e?e.add(l):t.emit("entry",l)}(),e});var o}},21831:(e,t,r)=>{e.exports=c;var n=r(20077),i=r(94378),a=r(71017),o=r(87937),s=r(39491).ok;function c(e){var t=this;if(!(t instanceof c))throw new Error("DirReader must be called as constructor.");if("Directory"!==e.type||!e.Directory)throw new Error("Non-directory type "+e.type);t.entries=null,t._index=-1,t._paused=!1,t._length=-1,e.sort&&(this.sort=e.sort),o.call(this,e)}i(c,o),c.prototype._getEntries=function(){var e=this;e._gotEntries||(e._gotEntries=!0,n.readdir(e._path,(function(t,r){if(t)return e.error(t);function n(){e._length=e.entries.length,"function"==typeof e.sort&&(e.entries=e.entries.sort(e.sort.bind(e))),e._read()}e.entries=r,e.emit("entries",r),e._paused?e.once("resume",n):n()})))},c.prototype._read=function(){var e=this;if(!e.entries)return e._getEntries();if(!(e._paused||e._currentEntry||e._aborted))if(e._index++,e._index>=e.entries.length)e._ended||(e._ended=!0,e.emit("end"),e.emit("close"));else{var t=a.resolve(e._path,e.entries[e._index]);s(t!==e._path),s(e.entries[e._index]),e._currentEntry=t,n[e.props.follow?"stat":"lstat"](t,(function(r,n){if(r)return e.error(r);var i=e._proxy||e;n.path=t,n.basename=a.basename(t),n.dirname=a.dirname(t);var s=e.getChildProps.call(i,n);s.path=t,s.basename=a.basename(t),s.dirname=a.dirname(t);var c=o(s,n);e._currentEntry=c,c.on("pause",(function(t){e._paused||c._disowned||e.pause(t)})),c.on("resume",(function(t){e._paused&&!c._disowned&&e.resume(t)})),c.on("stat",(function(t){e.emit("_entryStat",c,t),c._aborted||(c._paused?c.once("resume",(function(){e.emit("entryStat",c,t)})):e.emit("entryStat",c,t))})),c.on("ready",(function t(){if(e._paused)return c.pause(e),e.once("resume",t);"Socket"===c.type?e.emit("socket",c):e.emitEntry(c)}));var l=!1;function u(){l||(l=!0,e.emit("childEnd",c),e.emit("entryEnd",c),e._currentEntry=null,e._paused||e._read())}c.on("close",u),c.on("disown",u),c.on("error",(function(t){c._swallowErrors?(e.warn(t),c.emit("end"),c.emit("close")):e.emit("error",t)})),["child","childEnd","warn"].forEach((function(t){c.on(t,e.emit.bind(e,t))}))}))}},c.prototype.disown=function(e){e.emit("beforeDisown"),e._disowned=!0,e.parent=e.root=null,e===this._currentEntry&&(this._currentEntry=null),e.emit("disown")},c.prototype.getChildProps=function(){return{depth:this.depth+1,root:this.root||this,parent:this,follow:this.follow,filter:this.filter,sort:this.props.sort,hardlinks:this.props.hardlinks}},c.prototype.pause=function(e){var t=this;t._paused||(e=e||t,t._paused=!0,t._currentEntry&&t._currentEntry.pause&&t._currentEntry.pause(e),t.emit("pause",e))},c.prototype.resume=function(e){var t=this;t._paused&&(e=e||t,t._paused=!1,t.emit("resume",e),t._paused||(t._currentEntry?t._currentEntry.resume&&t._currentEntry.resume(e):t._read()))},c.prototype.emitEntry=function(e){this.emit("entry",e),this.emit("child",e)}},26969:(e,t,r)=>{e.exports=c;var n=r(80608),i=r(94378),a=r(81890),o=r(71017),s=r(88818);function c(e){var t=this;t instanceof c||t.error("DirWriter must be called as constructor.",null,!0),"Directory"===e.type&&e.Directory||t.error("Non-directory type "+e.type+" "+JSON.stringify(e),null,!0),n.call(this,e)}i(c,n),c.prototype._create=function(){var e=this;a(e._path,n.dirmode,(function(t){if(t)return e.error(t);e.ready=!0,e.emit("ready"),e._process()}))},c.prototype.write=function(){return!0},c.prototype.end=function(){this._ended=!0,this._process()},c.prototype.add=function(e){var t=this;return s(e),!t.ready||t._currentEntry?(t._buffer.push(e),!1):t._ended?t.error("add after end"):(t._buffer.push(e),t._process(),0===this._buffer.length)},c.prototype._process=function(){var e=this;if(!e._processing){var t=e._buffer.shift();if(!t)return e.emit("drain"),void(e._ended&&e._finish());e._processing=!0,e.emit("entry",t);var r,i=t;do{if((r=i._path||i.path)===e.root._path||r===e._path||r&&0===r.indexOf(e._path))return e._processing=!1,t._collected&&t.pipe(),e._process();i=i.parent}while(i);var a={parent:e,root:e.root||e,type:t.type,depth:e.depth+1};r=t._path||t.path||t.props.path,t.parent&&(r=r.substr(t.parent._path.length+1)),a.path=o.join(e.path,o.join("/",r)),a.filter=e.filter,Object.keys(t.props).forEach((function(e){a.hasOwnProperty(e)||(a[e]=t.props[e])}));var s=e._currentChild=new n(a);s.on("ready",(function(){t.pipe(s),t.resume()})),s.on("error",(function(t){s._swallowErrors?(e.warn(t),s.emit("end"),s.emit("close")):e.emit("error",t)})),s.on("close",(function(){if(c)return;c=!0,e._currentChild=null,e._processing=!1,e._process()}));var c=!1}}},49305:(e,t,r)=>{e.exports=c;var n=r(20077),i=r(94378),a=r(87937),o={EOF:!0},s={CLOSE:!0};function c(e){var t=this;if(!(t instanceof c))throw new Error("FileReader must be called as constructor.");if(!("Link"===e.type&&e.Link||"File"===e.type&&e.File))throw new Error("Non-file type "+e.type);t._buffer=[],t._bytesEmitted=0,a.call(t,e)}i(c,a),c.prototype._getStream=function(){var e=this,t=e._stream=n.createReadStream(e._path,e.props);e.props.blksize&&(t.bufferSize=e.props.blksize),t.on("open",e.emit.bind(e,"open")),t.on("data",(function(t){e._bytesEmitted+=t.length,t.length&&(e._paused||e._buffer.length?(e._buffer.push(t),e._read()):e.emit("data",t))})),t.on("end",(function(){e._paused||e._buffer.length?(e._buffer.push(o),e._read()):e.emit("end"),e._bytesEmitted!==e.props.size&&e.error("Didn't get expected byte count\nexpect: "+e.props.size+"\nactual: "+e._bytesEmitted)})),t.on("close",(function(){e._paused||e._buffer.length?(e._buffer.push(s),e._read()):e.emit("close")})),t.on("error",(function(t){e.emit("error",t)})),e._read()},c.prototype._read=function(){var e=this;if(!e._paused){if(!e._stream)return e._getStream();if(e._buffer.length){for(var t=e._buffer,r=0,n=t.length;r<n;r++){var i=t[r];if(i===o?e.emit("end"):i===s?e.emit("close"):e.emit("data",i),e._paused)return void(e._buffer=t.slice(r))}e._buffer.length=0}}},c.prototype.pause=function(e){var t=this;t._paused||(e=e||t,t._paused=!0,t._stream&&t._stream.pause(),t.emit("pause",e))},c.prototype.resume=function(e){var t=this;t._paused&&(e=e||t,t.emit("resume",e),t._paused=!1,t._stream&&t._stream.resume(),t._read())}},93589:(e,t,r)=>{e.exports=s;var n=r(20077),i=r(80608),a=r(94378),o={};function s(e){var t=this;if(!(t instanceof s))throw new Error("FileWriter must be called as constructor.");if("File"!==e.type||!e.File)throw new Error("Non-file type "+e.type);t._buffer=[],t._bytesWritten=0,i.call(this,e)}a(s,i),s.prototype._create=function(){var e=this;if(!e._stream){var t={};e.props.flags&&(t.flags=e.props.flags),t.mode=i.filemode,e._old&&e._old.blksize&&(t.bufferSize=e._old.blksize),e._stream=n.createWriteStream(e._path,t),e._stream.on("open",(function(){e.ready=!0,e._buffer.forEach((function(t){t===o?e._stream.end():e._stream.write(t)})),e.emit("ready"),e.emit("drain")})),e._stream.on("error",(function(t){e.emit("error",t)})),e._stream.on("drain",(function(){e.emit("drain")})),e._stream.on("close",(function(){e._finish()}))}},s.prototype.write=function(e){var t=this;if(t._bytesWritten+=e.length,!t.ready){if(!Buffer.isBuffer(e)&&"string"!=typeof e)throw new Error("invalid write data");return t._buffer.push(e),!1}var r=t._stream.write(e);return!1===r&&t._stream._queue?t._stream._queue.length<=2:r},s.prototype.end=function(e){var t=this;return e&&t.write(e),t.ready?t._stream.end():(t._buffer.push(o),!1)},s.prototype._finish=function(){var e=this;"number"==typeof e.size&&e._bytesWritten!==e.size&&e.error("Did not get expected byte count.\nexpect: "+e.size+"\nactual: "+e._bytesWritten),i.prototype._finish.call(e)}},82152:e=>{e.exports=function(e){var t,r=["Directory","File","SymbolicLink","Link","BlockDevice","CharacterDevice","FIFO","Socket"];if(e.type&&-1!==r.indexOf(e.type))return e[e.type]=!0,e.type;for(var n=0,i=r.length;n<i;n++){var a=e[t=r[n]]||e["is"+t];if("function"==typeof a&&(a=a.call(e)),a)return e[t]=!0,e.type=t,t}return null}},79716:(e,t,r)=>{e.exports=o;var n=r(20077),i=r(94378),a=r(87937);function o(e){if(!(this instanceof o))throw new Error("LinkReader must be called as constructor.");if(!("Link"===e.type&&e.Link||"SymbolicLink"===e.type&&e.SymbolicLink))throw new Error("Non-link type "+e.type);a.call(this,e)}i(o,a),o.prototype._stat=function(e){var t=this;n.readlink(t._path,(function(r,n){if(r)return t.error(r);t.linkpath=t.props.linkpath=n,t.emit("linkpath",n),a.prototype._stat.call(t,e)}))},o.prototype._read=function(){var e=this;e._paused||e._ended||(e.emit("end"),e.emit("close"),e._ended=!0)}},33423:(e,t,r)=>{e.exports=c;var n=r(20077),i=r(80608),a=r(94378),o=r(71017),s=r(72899);function c(e){if(!(this instanceof c))throw new Error("LinkWriter must be called as constructor.");if(!("Link"===e.type&&e.Link||"SymbolicLink"===e.type&&e.SymbolicLink))throw new Error("Non-link type "+e.type);""===e.linkpath&&(e.linkpath="."),e.linkpath||this.error("Need linkpath property to create "+e.type),i.call(this,e)}function l(e,t,r){s(e._path,(function(i){if(i)return e.error(i);!function(e,t,r){n[r](t,e._path,(function(t){if(t){if("ENOENT"!==t.code&&"EACCES"!==t.code&&"EPERM"!==t.code||"win32"!==process.platform)return e.error(t);e.ready=!0,e.emit("ready"),e.emit("end"),e.emit("close"),e.end=e._finish=function(){}}u(e)}))}(e,t,r)}))}function u(e){e.ready=!0,e.emit("ready"),e._ended&&!e._finished&&e._finish()}a(c,i),c.prototype._create=function(){var e=this,t="Link"===e.type||"win32"===process.platform,r=t?"link":"symlink",i=t?o.resolve(e.dirname,e.linkpath):e.linkpath;if(t)return l(e,i,r);n.readlink(e._path,(function(t,n){if(n&&n===i)return u(e);l(e,i,r)}))},c.prototype.end=function(){this._ended=!0,this.ready&&(this._finished=!0,this._finish())}},63732:(e,t,r)=>{e.exports=s;var n=r(87937),i=r(82152),a=r(94378),o=r(20077);function s(e){var t=this;if(!(t instanceof s))throw new Error("ProxyReader must be called as constructor.");t.props=e,t._buffer=[],t.ready=!1,n.call(t,e)}a(s,n),s.prototype._stat=function(){var e=this,t=e.props,r=t.follow?"stat":"lstat";o[r](t.path,(function(r,a){var o;o=r||!a?"File":i(a),t[o]=!0,t.type=e.type=o,e._old=a,e._addProxy(n(t,a))}))},s.prototype._addProxy=function(e){var t=this;if(t._proxyTarget)return t.error("proxy already set");t._proxyTarget=e,e._proxy=t,["error","data","end","close","linkpath","entry","entryEnd","child","childEnd","warn","stat"].forEach((function(r){e.on(r,t.emit.bind(t,r))})),t.emit("proxy",e),e.on("ready",(function(){t.ready=!0,t.emit("ready")}));var r=t._buffer;t._buffer.length=0,r.forEach((function(t){e[t[0]].apply(e,t[1])}))},s.prototype.pause=function(){return!!this._proxyTarget&&this._proxyTarget.pause()},s.prototype.resume=function(){return!!this._proxyTarget&&this._proxyTarget.resume()}},14955:(e,t,r)=>{e.exports=c;var n=r(80608),i=r(82152),a=r(94378),o=r(88818),s=r(57147);function c(e){var t=this;if(!(t instanceof c))throw new Error("ProxyWriter must be called as constructor.");t.props=e,t._needDrain=!1,n.call(t,e)}a(c,n),c.prototype._stat=function(){var e=this,t=e.props,r=t.follow?"stat":"lstat";s[r](t.path,(function(r,a){var o;o=r||!a?"File":i(a),t[o]=!0,t.type=e.type=o,e._old=a,e._addProxy(n(t,a))}))},c.prototype._addProxy=function(e){var t=this;if(t._proxy)return t.error("proxy already set");t._proxy=e,["ready","error","close","pipe","drain","warn"].forEach((function(r){e.on(r,t.emit.bind(t,r))})),t.emit("proxy",e),t._buffer.forEach((function(t){e[t[0]].apply(e,t[1])})),t._buffer.length=0,t._needsDrain&&t.emit("drain")},c.prototype.add=function(e){return o(e),this._proxy?this._proxy.add(e):(this._buffer.push(["add",[e]]),this._needDrain=!0,!1)},c.prototype.write=function(e){return this._proxy?this._proxy.write(e):(this._buffer.push(["write",[e]]),this._needDrain=!0,!1)},c.prototype.end=function(e){return this._proxy?this._proxy.end(e):(this._buffer.push(["end",[e]]),!1)}},87937:(e,t,r)=>{e.exports=d;var n=r(20077),i=r(12781).Stream,a=r(94378),o=r(71017),s=r(82152),c=d.hardLinks={},l=r(95348);a(d,l);var u=r(79716);function d(e,t){var n,i,a=this;if(!(a instanceof d))return new d(e,t);switch("string"==typeof e&&(e={path:e}),e.type&&"function"==typeof e.type?i=n=e.type:(n=s(e),i=d),t&&!n&&(e[n=s(t)]=!0,e.type=n),n){case"Directory":i=r(21831);break;case"Link":case"File":i=r(49305);break;case"SymbolicLink":i=u;break;case"Socket":i=r(80012);break;case null:i=r(63732)}if(!(a instanceof i))return new i(e);l.call(a),e.path||a.error("Must provide a path",null,!0),a.readable=!0,a.writable=!1,a.type=n,a.props=e,a.depth=e.depth=e.depth||0,a.parent=e.parent||null,a.root=e.root||e.parent&&e.parent.root||a,a._path=a.path=o.resolve(e.path),"win32"===process.platform&&(a.path=a._path=a.path.replace(/\?/g,"_"),a._path.length>=260&&(a._swallowErrors=!0,a._path="\\\\?\\"+a.path.replace(/\//g,"\\"))),a.basename=e.basename=o.basename(a.path),a.dirname=e.dirname=o.dirname(a.path),e.parent=e.root=null,a.size=e.size,a.filter="function"==typeof e.filter?e.filter:null,"alpha"===e.sort&&(e.sort=p),a._stat(t)}function p(e,t){return e===t?0:e.toLowerCase()>t.toLowerCase()?1:e.toLowerCase()<t.toLowerCase()?-1:e>t?1:-1}d.prototype._stat=function(e){var t=this,r=t.props,i=r.follow?"stat":"lstat";function a(e,n){if(e)return t.error(e);if(Object.keys(n).forEach((function(e){r[e]=n[e]})),void 0!==t.size&&r.size!==t.size)return t.error("incorrect size");t.size=r.size;var i=s(r);if(!1!==r.hardlinks&&"Directory"!==i&&r.nlink&&r.nlink>1){var a=r.dev+":"+r.ino;c[a]!==t._path&&c[a]?(i=t.type=t.props.type="Link",t.Link=t.props.Link=!0,t.linkpath=t.props.linkpath=c[a],t._stat=t._read=u.prototype._read):c[a]=t._path}if(t.type&&t.type!==i&&t.error("Unexpected type: "+i),t.filter){var o=t._proxy||t;if(!t.filter.call(o,o,r))return void(t._disowned||(t.abort(),t.emit("end"),t.emit("close")))}var l=["_stat","stat","ready"],d=0;!function e(){if(t._aborted)return t.emit("end"),void t.emit("close");if(t._paused&&"Directory"!==t.type)t.once("resume",e);else{var n=l[d++];if(!n)return t._read();t.emit(n,r),e()}}()}e?process.nextTick(a.bind(null,null,e)):n[i](t._path,a)},d.prototype.pipe=function(e){var t=this;return"function"==typeof e.add&&t.on("entry",(function(r){!1===e.add(r)&&t.pause()})),i.prototype.pipe.apply(this,arguments)},d.prototype.pause=function(e){this._paused=!0,e=e||this,this.emit("pause",e),this._stream&&this._stream.pause(e)},d.prototype.resume=function(e){this._paused=!1,e=e||this,this.emit("resume",e),this._stream&&this._stream.resume(e),this._read()},d.prototype._read=function(){this.error("Cannot read unknown type: "+this.type)}},80012:(e,t,r)=>{e.exports=a;var n=r(94378),i=r(87937);function a(e){if(!(this instanceof a))throw new Error("SocketReader must be called as constructor.");if("Socket"!==e.type||!e.Socket)throw new Error("Non-socket type "+e.type);i.call(this,e)}n(a,i),a.prototype._read=function(){var e=this;e._paused||e._ended||(e.emit("end"),e.emit("close"),e._ended=!0)}},80608:(e,t,r)=>{e.exports=g;var n=r(20077),i=r(94378),a=r(72899),o=r(81890),s=r(71017),c="win32"===process.platform?0:process.umask(),l=r(82152),u=r(95348);i(g,u),g.dirmode=parseInt("0777",8)&~c,g.filemode=parseInt("0666",8)&~c;var d=r(26969),p=r(33423),f=r(93589),m=r(14955);function g(e,t){var r=this;"string"==typeof e&&(e={path:e});var n=g;switch(l(e)){case"Directory":n=d;break;case"File":n=f;break;case"Link":case"SymbolicLink":n=p;break;default:n=m}if(!(r instanceof n))return new n(e);u.call(r),e.path||r.error("Must provide a path",null,!0),r.type=e.type,r.props=e,r.depth=e.depth||0,r.clobber=!1!==e.clobber||e.clobber,r.parent=e.parent||null,r.root=e.root||e.parent&&e.parent.root||r,r._path=r.path=s.resolve(e.path),"win32"===process.platform&&(r.path=r._path=r.path.replace(/\?/g,"_"),r._path.length>=260&&(r._swallowErrors=!0,r._path="\\\\?\\"+r.path.replace(/\//g,"\\"))),r.basename=s.basename(e.path),r.dirname=s.dirname(e.path),r.linkpath=e.linkpath||null,e.parent=e.root=null,r.size=e.size,"string"==typeof e.mode&&(e.mode=parseInt(e.mode,8)),r.readable=!1,r.writable=!0,r._buffer=[],r.ready=!1,r.filter="function"==typeof e.filter?e.filter:null,r._stat(t)}function _(e){o(s.dirname(e._path),g.dirmode,(function(t,r){return t?e.error(t):(e._madeDir=r,e._create())}))}function h(e,t,r,i,a){var o=t.mode,s=t.follow||"SymbolicLink"!==e.type?"chmod":"lchmod";if(!n[s])return a();if("number"!=typeof o)return a();var c=r.mode&parseInt("0777",8);if((o&=parseInt("0777",8))===c)return a();n[s](i,o,a)}function y(e,t,r,i,a){if("win32"===process.platform)return a();if(!process.getuid||0!==process.getuid())return a();if("number"!=typeof t.uid&&"number"!=typeof t.gid)return a();if(r.uid===t.uid&&r.gid===t.gid)return a();var o=e.props.follow||"SymbolicLink"!==e.type?"chown":"lchown";if(!n[o])return a();"number"!=typeof t.uid&&(t.uid=r.uid),"number"!=typeof t.gid&&(t.gid=r.gid),n[o](i,t.uid,t.gid,a)}function v(e,t,r,i,a){if(!n.utimes||"win32"===process.platform)return a();var o=t.follow||"SymbolicLink"!==e.type?"utimes":"lutimes";if("lutimes"!==o||n[o]||(o="utimes"),!n[o])return a();var s=r.atime,c=r.mtime,l=t.atime,u=t.mtime;if(void 0===l&&(l=s),void 0===u&&(u=c),k(l)||(l=new Date(l)),k(u)||(l=new Date(u)),l.getTime()===s.getTime()&&u.getTime()===c.getTime())return a();n[o](i,l,u,a)}function b(e,t,r){var i=e._madeDir,a=s.dirname(t);!function(e,t,r){var i={};Object.keys(e.props).forEach((function(t){i[t]=e.props[t],"mode"===t&&"Directory"!==e.type&&(i[t]=i[t]|parseInt("0111",8))}));var a=3,o=null;function s(e){if(!o)return e?r(o=e):0==--a?r():void 0}n.stat(t,(function(n,a){if(n)return r(o=n);h(e,i,a,t,s),y(e,i,a,t,s),v(e,i,a,t,s)}))}(e,a,(function(t){return t?r(t):a===i?r():void b(e,a,r)}))}function k(e){return"object"==typeof e&&"[object Date]"===function(e){return Object.prototype.toString.call(e)}(e)}g.prototype._create=function(){var e=this;n[e.props.follow?"stat":"lstat"](e._path,(function(t){if(t)return e.warn("Cannot create "+e._path+"\nUnsupported type: "+e.type,"ENOTSUP");e._finish()}))},g.prototype._stat=function(e){var t=this,r=t.props.follow?"stat":"lstat",i=t._proxy||t;function o(e,r){return t.filter&&!t.filter.call(i,i,r)?(t._aborted=!0,t.emit("end"),void t.emit("close")):e||!r?_(t):(t._old=r,l(r)!==t.type||"File"===t.type&&r.nlink>1?a(t._path,(function(e){if(e)return t.error(e);t._old=null,_(t)})):void _(t))}e?o(null,e):n[r](t._path,o)},g.prototype._finish=function(){var e=this;if(e._finishing);else{e._finishing=!0;var t=0,r=null,i=!1;if(e._old)e._old.atime=new Date(0),e._old.mtime=new Date(0),o(e._old);else{var a=e.props.follow?"stat":"lstat";n[a](e._path,(function(t,r){if(t)return"ENOENT"!==t.code||"Link"!==e.type&&"SymbolicLink"!==e.type||"win32"!==process.platform?e.error(t):(e.ready=!0,e.emit("ready"),e.emit("end"),e.emit("close"),void(e.end=e._finish=function(){}));o(e._old=r)}))}}function o(r){t+=3,h(e,e.props,r,e._path,s("chmod")),y(e,e.props,r,e._path,s("chown")),v(e,e.props,r,e._path,s("utimes"))}function s(n){return function(a){if(!r){if(a)return a.fstream_finish_call=n,e.error(r=a);if(!(--t>0||i)){if(i=!0,!e._madeDir)return o();b(e,e._path,o)}}function o(t){if(t)return t.fstream_finish_call="setupMadeDir",e.error(t);e.emit("end"),e.emit("close")}}}},g.prototype.pipe=function(){this.error("Can't pipe from writable stream")},g.prototype.add=function(){this.error("Can't add to non-Directory type")},g.prototype.write=function(){return!0}},72899:(e,t,r)=>{e.exports=p,p.sync=h;var n=r(39491),i=r(71017),a=r(57147),o=void 0;try{o=r(12884)}catch(e){}var s=parseInt("666",8),c={nosort:!0,silent:!0},l=0,u="win32"===process.platform;function d(e){if(["unlink","chmod","stat","lstat","rmdir","readdir"].forEach((function(t){e[t]=e[t]||a[t],e[t+="Sync"]=e[t]||a[t]})),e.maxBusyTries=e.maxBusyTries||3,e.emfileWait=e.emfileWait||1e3,!1===e.glob&&(e.disableGlob=!0),!0!==e.disableGlob&&void 0===o)throw Error("glob dependency not found, set `options.disableGlob = true` if intentional");e.disableGlob=e.disableGlob||!1,e.glob=e.glob||c}function p(e,t,r){"function"==typeof t&&(r=t,t={}),n(e,"rimraf: missing path"),n.equal(typeof e,"string","rimraf: path should be a string"),n.equal(typeof r,"function","rimraf: callback function required"),n(t,"rimraf: invalid options argument provided"),n.equal(typeof t,"object","rimraf: options should be object"),d(t);var i=0,a=null,s=0;if(t.disableGlob||!o.hasMagic(e))return c(null,[e]);function c(e,n){return e?r(e):0===(s=n.length)?r():void n.forEach((function(e){f(e,t,(function n(o){if(o){if(("EBUSY"===o.code||"ENOTEMPTY"===o.code||"EPERM"===o.code)&&i<t.maxBusyTries)return i++,setTimeout((function(){f(e,t,n)}),100*i);if("EMFILE"===o.code&&l<t.emfileWait)return setTimeout((function(){f(e,t,n)}),l++);"ENOENT"===o.code&&(o=null)}l=0,function(e){a=a||e,0==--s&&r(a)}(o)}))}))}t.lstat(e,(function(r,n){if(!r)return c(null,[e]);o(e,t.glob,c)}))}function f(e,t,r){n(e),n(t),n("function"==typeof r),t.lstat(e,(function(n,i){return n&&"ENOENT"===n.code?r(null):(n&&"EPERM"===n.code&&u&&m(e,t,n,r),i&&i.isDirectory()?_(e,t,n,r):void t.unlink(e,(function(n){if(n){if("ENOENT"===n.code)return r(null);if("EPERM"===n.code)return u?m(e,t,n,r):_(e,t,n,r);if("EISDIR"===n.code)return _(e,t,n,r)}return r(n)})))}))}function m(e,t,r,i){n(e),n(t),n("function"==typeof i),r&&n(r instanceof Error),t.chmod(e,s,(function(n){n?i("ENOENT"===n.code?null:r):t.stat(e,(function(n,a){n?i("ENOENT"===n.code?null:r):a.isDirectory()?_(e,t,r,i):t.unlink(e,i)}))}))}function g(e,t,r){n(e),n(t),r&&n(r instanceof Error);try{t.chmodSync(e,s)}catch(e){if("ENOENT"===e.code)return;throw r}try{var i=t.statSync(e)}catch(e){if("ENOENT"===e.code)return;throw r}i.isDirectory()?y(e,t,r):t.unlinkSync(e)}function _(e,t,r,a){n(e),n(t),r&&n(r instanceof Error),n("function"==typeof a),t.rmdir(e,(function(o){!o||"ENOTEMPTY"!==o.code&&"EEXIST"!==o.code&&"EPERM"!==o.code?o&&"ENOTDIR"===o.code?a(r):a(o):function(e,t,r){n(e),n(t),n("function"==typeof r),t.readdir(e,(function(n,a){if(n)return r(n);var o,s=a.length;if(0===s)return t.rmdir(e,r);a.forEach((function(n){p(i.join(e,n),t,(function(n){if(!o)return n?r(o=n):void(0==--s&&t.rmdir(e,r))}))}))}))}(e,t,a)}))}function h(e,t){var r;if(d(t=t||{}),n(e,"rimraf: missing path"),n.equal(typeof e,"string","rimraf: path should be a string"),n(t,"rimraf: missing options"),n.equal(typeof t,"object","rimraf: options should be object"),t.disableGlob||!o.hasMagic(e))r=[e];else try{t.lstatSync(e),r=[e]}catch(n){r=o.sync(e,t.glob)}if(r.length)for(var i=0;i<r.length;i++){e=r[i];try{var a=t.lstatSync(e)}catch(r){if("ENOENT"===r.code)return;"EPERM"===r.code&&u&&g(e,t,r)}try{a&&a.isDirectory()?y(e,t,null):t.unlinkSync(e)}catch(r){if("ENOENT"===r.code)return;if("EPERM"===r.code)return u?g(e,t,r):y(e,t,r);if("EISDIR"!==r.code)throw r;y(e,t,r)}}}function y(e,t,r){n(e),n(t),r&&n(r instanceof Error);try{t.rmdirSync(e)}catch(a){if("ENOENT"===a.code)return;if("ENOTDIR"===a.code)throw r;"ENOTEMPTY"!==a.code&&"EEXIST"!==a.code&&"EPERM"!==a.code||function(e,t){n(e),n(t),t.readdirSync(e).forEach((function(r){h(i.join(e,r),t)}));var r=u?100:1,a=0;for(;;){var o=!0;try{var s=t.rmdirSync(e,t);return o=!1,s}finally{if(++a<r&&o)continue}}}(e,t)}}},66772:(e,t,r)=>{function n(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.setopts=function(e,t,r){r||(r={});if(r.matchBase&&-1===t.indexOf("/")){if(r.noglobstar)throw new Error("base matching requires globstar");t="**/"+t}e.silent=!!r.silent,e.pattern=t,e.strict=!1!==r.strict,e.realpath=!!r.realpath,e.realpathCache=r.realpathCache||Object.create(null),e.follow=!!r.follow,e.dot=!!r.dot,e.mark=!!r.mark,e.nodir=!!r.nodir,e.nodir&&(e.mark=!0);e.sync=!!r.sync,e.nounique=!!r.nounique,e.nonull=!!r.nonull,e.nosort=!!r.nosort,e.nocase=!!r.nocase,e.stat=!!r.stat,e.noprocess=!!r.noprocess,e.absolute=!!r.absolute,e.fs=r.fs||i,e.maxLength=r.maxLength||1/0,e.cache=r.cache||Object.create(null),e.statCache=r.statCache||Object.create(null),e.symlinks=r.symlinks||Object.create(null),function(e,t){e.ignore=t.ignore||[],Array.isArray(e.ignore)||(e.ignore=[e.ignore]);e.ignore.length&&(e.ignore=e.ignore.map(u))}(e,r),e.changedCwd=!1;var o=process.cwd();n(r,"cwd")?(e.cwd=a.resolve(r.cwd),e.changedCwd=e.cwd!==o):e.cwd=o;e.root=r.root||a.resolve(e.cwd,"/"),e.root=a.resolve(e.root),"win32"===process.platform&&(e.root=e.root.replace(/\\/g,"/"));e.cwdAbs=s(e.cwd)?e.cwd:d(e,e.cwd),"win32"===process.platform&&(e.cwdAbs=e.cwdAbs.replace(/\\/g,"/"));e.nomount=!!r.nomount,r.nonegate=!0,r.nocomment=!0,r.allowWindowsEscape=!1,e.minimatch=new c(t,r),e.options=e.minimatch.options},t.ownProp=n,t.makeAbs=d,t.finish=function(e){for(var t=e.nounique,r=t?[]:Object.create(null),n=0,i=e.matches.length;n<i;n++){var a=e.matches[n];if(a&&0!==Object.keys(a).length){var o=Object.keys(a);t?r.push.apply(r,o):o.forEach((function(e){r[e]=!0}))}else if(e.nonull){var s=e.minimatch.globSet[n];t?r.push(s):r[s]=!0}}t||(r=Object.keys(r));e.nosort||(r=r.sort(l));if(e.mark){for(n=0;n<r.length;n++)r[n]=e._mark(r[n]);e.nodir&&(r=r.filter((function(t){var r=!/\/$/.test(t),n=e.cache[t]||e.cache[d(e,t)];return r&&n&&(r="DIR"!==n&&!Array.isArray(n)),r})))}e.ignore.length&&(r=r.filter((function(t){return!p(e,t)})));e.found=r},t.mark=function(e,t){var r=d(e,t),n=e.cache[r],i=t;if(n){var a="DIR"===n||Array.isArray(n),o="/"===t.slice(-1);if(a&&!o?i+="/":!a&&o&&(i=i.slice(0,-1)),i!==t){var s=d(e,i);e.statCache[s]=e.statCache[r],e.cache[s]=e.cache[r]}}return i},t.isIgnored=p,t.childrenIgnored=function(e,t){return!!e.ignore.length&&e.ignore.some((function(e){return!(!e.gmatcher||!e.gmatcher.match(t))}))};var i=r(57147),a=r(71017),o=r(91171),s=r(64095),c=o.Minimatch;function l(e,t){return e.localeCompare(t,"en")}function u(e){var t=null;if("/**"===e.slice(-3)){var r=e.replace(/(\/\*\*)+$/,"");t=new c(r,{dot:!0})}return{matcher:new c(e,{dot:!0}),gmatcher:t}}function d(e,t){var r=t;return r="/"===t.charAt(0)?a.join(e.root,t):s(t)||""===t?t:e.changedCwd?a.resolve(e.cwd,t):a.resolve(t),"win32"===process.platform&&(r=r.replace(/\\/g,"/")),r}function p(e,t){return!!e.ignore.length&&e.ignore.some((function(e){return e.matcher.match(t)||!(!e.gmatcher||!e.gmatcher.match(t))}))}},12884:(e,t,r)=>{e.exports=y;var n=r(37334),i=r(91171),a=(i.Minimatch,r(94378)),o=r(82361).EventEmitter,s=r(71017),c=r(39491),l=r(64095),u=r(14751),d=r(66772),p=d.setopts,f=d.ownProp,m=r(67844),g=(r(73837),d.childrenIgnored),_=d.isIgnored,h=r(30778);function y(e,t,r){if("function"==typeof t&&(r=t,t={}),t||(t={}),t.sync){if(r)throw new TypeError("callback provided to sync glob");return u(e,t)}return new b(e,t,r)}y.sync=u;var v=y.GlobSync=u.GlobSync;function b(e,t,r){if("function"==typeof t&&(r=t,t=null),t&&t.sync){if(r)throw new TypeError("callback provided to sync glob");return new v(e,t)}if(!(this instanceof b))return new b(e,t,r);p(this,e,t),this._didRealPath=!1;var n=this.minimatch.set.length;this.matches=new Array(n),"function"==typeof r&&(r=h(r),this.on("error",r),this.on("end",(function(e){r(null,e)})));var i=this;if(this._processing=0,this._emitQueue=[],this._processQueue=[],this.paused=!1,this.noprocess)return this;if(0===n)return s();for(var a=!0,o=0;o<n;o++)this._process(this.minimatch.set[o],o,!1,s);function s(){--i._processing,i._processing<=0&&(a?process.nextTick((function(){i._finish()})):i._finish())}a=!1}y.glob=y,y.hasMagic=function(e,t){var r=function(e,t){if(null===t||"object"!=typeof t)return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e}({},t);r.noprocess=!0;var n=new b(e,r).minimatch.set;if(!e)return!1;if(n.length>1)return!0;for(var i=0;i<n[0].length;i++)if("string"!=typeof n[0][i])return!0;return!1},y.Glob=b,a(b,o),b.prototype._finish=function(){if(c(this instanceof b),!this.aborted){if(this.realpath&&!this._didRealpath)return this._realpath();d.finish(this),this.emit("end",this.found)}},b.prototype._realpath=function(){if(!this._didRealpath){this._didRealpath=!0;var e=this.matches.length;if(0===e)return this._finish();for(var t=this,r=0;r<this.matches.length;r++)this._realpathSet(r,n)}function n(){0==--e&&t._finish()}},b.prototype._realpathSet=function(e,t){var r=this.matches[e];if(!r)return t();var i=Object.keys(r),a=this,o=i.length;if(0===o)return t();var s=this.matches[e]=Object.create(null);i.forEach((function(r,i){r=a._makeAbs(r),n.realpath(r,a.realpathCache,(function(n,i){n?"stat"===n.syscall?s[r]=!0:a.emit("error",n):s[i]=!0,0==--o&&(a.matches[e]=s,t())}))}))},b.prototype._mark=function(e){return d.mark(this,e)},b.prototype._makeAbs=function(e){return d.makeAbs(this,e)},b.prototype.abort=function(){this.aborted=!0,this.emit("abort")},b.prototype.pause=function(){this.paused||(this.paused=!0,this.emit("pause"))},b.prototype.resume=function(){if(this.paused){if(this.emit("resume"),this.paused=!1,this._emitQueue.length){var e=this._emitQueue.slice(0);this._emitQueue.length=0;for(var t=0;t<e.length;t++){var r=e[t];this._emitMatch(r[0],r[1])}}if(this._processQueue.length){var n=this._processQueue.slice(0);this._processQueue.length=0;for(t=0;t<n.length;t++){var i=n[t];this._processing--,this._process(i[0],i[1],i[2],i[3])}}}},b.prototype._process=function(e,t,r,n){if(c(this instanceof b),c("function"==typeof n),!this.aborted)if(this._processing++,this.paused)this._processQueue.push([e,t,r,n]);else{for(var a,o=0;"string"==typeof e[o];)o++;switch(o){case e.length:return void this._processSimple(e.join("/"),t,n);case 0:a=null;break;default:a=e.slice(0,o).join("/")}var s,u=e.slice(o);null===a?s=".":l(a)||l(e.map((function(e){return"string"==typeof e?e:"[*]"})).join("/"))?(a&&l(a)||(a="/"+a),s=a):s=a;var d=this._makeAbs(s);if(g(this,s))return n();u[0]===i.GLOBSTAR?this._processGlobStar(a,s,d,u,t,r,n):this._processReaddir(a,s,d,u,t,r,n)}},b.prototype._processReaddir=function(e,t,r,n,i,a,o){var s=this;this._readdir(r,a,(function(c,l){return s._processReaddir2(e,t,r,n,i,a,l,o)}))},b.prototype._processReaddir2=function(e,t,r,n,i,a,o,c){if(!o)return c();for(var l=n[0],u=!!this.minimatch.negate,d=l._glob,p=this.dot||"."===d.charAt(0),f=[],m=0;m<o.length;m++){if("."!==(_=o[m]).charAt(0)||p)(u&&!e?!_.match(l):_.match(l))&&f.push(_)}var g=f.length;if(0===g)return c();if(1===n.length&&!this.mark&&!this.stat){this.matches[i]||(this.matches[i]=Object.create(null));for(m=0;m<g;m++){var _=f[m];e&&(_="/"!==e?e+"/"+_:e+_),"/"!==_.charAt(0)||this.nomount||(_=s.join(this.root,_)),this._emitMatch(i,_)}return c()}n.shift();for(m=0;m<g;m++){_=f[m];e&&(_="/"!==e?e+"/"+_:e+_),this._process([_].concat(n),i,a,c)}c()},b.prototype._emitMatch=function(e,t){if(!this.aborted&&!_(this,t))if(this.paused)this._emitQueue.push([e,t]);else{var r=l(t)?t:this._makeAbs(t);if(this.mark&&(t=this._mark(t)),this.absolute&&(t=r),!this.matches[e][t]){if(this.nodir){var n=this.cache[r];if("DIR"===n||Array.isArray(n))return}this.matches[e][t]=!0;var i=this.statCache[r];i&&this.emit("stat",t,i),this.emit("match",t)}}},b.prototype._readdirInGlobStar=function(e,t){if(!this.aborted){if(this.follow)return this._readdir(e,!1,t);var r=this,n=m("lstat\0"+e,(function(n,i){if(n&&"ENOENT"===n.code)return t();var a=i&&i.isSymbolicLink();r.symlinks[e]=a,a||!i||i.isDirectory()?r._readdir(e,!1,t):(r.cache[e]="FILE",t())}));n&&r.fs.lstat(e,n)}},b.prototype._readdir=function(e,t,r){if(!this.aborted&&(r=m("readdir\0"+e+"\0"+t,r))){if(t&&!f(this.symlinks,e))return this._readdirInGlobStar(e,r);if(f(this.cache,e)){var n=this.cache[e];if(!n||"FILE"===n)return r();if(Array.isArray(n))return r(null,n)}this.fs.readdir(e,function(e,t,r){return function(n,i){n?e._readdirError(t,n,r):e._readdirEntries(t,i,r)}}(this,e,r))}},b.prototype._readdirEntries=function(e,t,r){if(!this.aborted){if(!this.mark&&!this.stat)for(var n=0;n<t.length;n++){var i=t[n];i="/"===e?e+i:e+"/"+i,this.cache[i]=!0}return this.cache[e]=t,r(null,t)}},b.prototype._readdirError=function(e,t,r){if(!this.aborted){switch(t.code){case"ENOTSUP":case"ENOTDIR":var n=this._makeAbs(e);if(this.cache[n]="FILE",n===this.cwdAbs){var i=new Error(t.code+" invalid cwd "+this.cwd);i.path=this.cwd,i.code=t.code,this.emit("error",i),this.abort()}break;case"ENOENT":case"ELOOP":case"ENAMETOOLONG":case"UNKNOWN":this.cache[this._makeAbs(e)]=!1;break;default:this.cache[this._makeAbs(e)]=!1,this.strict&&(this.emit("error",t),this.abort()),this.silent||console.error("glob error",t)}return r()}},b.prototype._processGlobStar=function(e,t,r,n,i,a,o){var s=this;this._readdir(r,a,(function(c,l){s._processGlobStar2(e,t,r,n,i,a,l,o)}))},b.prototype._processGlobStar2=function(e,t,r,n,i,a,o,s){if(!o)return s();var c=n.slice(1),l=e?[e]:[],u=l.concat(c);this._process(u,i,!1,s);var d=this.symlinks[r],p=o.length;if(d&&a)return s();for(var f=0;f<p;f++){if("."!==o[f].charAt(0)||this.dot){var m=l.concat(o[f],c);this._process(m,i,!0,s);var g=l.concat(o[f],n);this._process(g,i,!0,s)}}s()},b.prototype._processSimple=function(e,t,r){var n=this;this._stat(e,(function(i,a){n._processSimple2(e,t,i,a,r)}))},b.prototype._processSimple2=function(e,t,r,n,i){if(this.matches[t]||(this.matches[t]=Object.create(null)),!n)return i();if(e&&l(e)&&!this.nomount){var a=/[\/\\]$/.test(e);"/"===e.charAt(0)?e=s.join(this.root,e):(e=s.resolve(this.root,e),a&&(e+="/"))}"win32"===process.platform&&(e=e.replace(/\\/g,"/")),this._emitMatch(t,e),i()},b.prototype._stat=function(e,t){var r=this._makeAbs(e),n="/"===e.slice(-1);if(e.length>this.maxLength)return t();if(!this.stat&&f(this.cache,r)){var i=this.cache[r];if(Array.isArray(i)&&(i="DIR"),!n||"DIR"===i)return t(null,i);if(n&&"FILE"===i)return t()}var a=this.statCache[r];if(void 0!==a){if(!1===a)return t(null,a);var o=a.isDirectory()?"DIR":"FILE";return n&&"FILE"===o?t():t(null,o,a)}var s=this,c=m("stat\0"+r,(function(n,i){if(i&&i.isSymbolicLink())return s.fs.stat(r,(function(n,a){n?s._stat2(e,r,null,i,t):s._stat2(e,r,n,a,t)}));s._stat2(e,r,n,i,t)}));c&&s.fs.lstat(r,c)},b.prototype._stat2=function(e,t,r,n,i){if(r&&("ENOENT"===r.code||"ENOTDIR"===r.code))return this.statCache[t]=!1,i();var a="/"===e.slice(-1);if(this.statCache[t]=n,"/"===t.slice(-1)&&n&&!n.isDirectory())return i(null,!1,n);var o=!0;return n&&(o=n.isDirectory()?"DIR":"FILE"),this.cache[t]=this.cache[t]||o,a&&"FILE"===o?i():i(null,o,n)}},14751:(e,t,r)=>{e.exports=f,f.GlobSync=m;var n=r(37334),i=r(91171),a=(i.Minimatch,r(12884).Glob,r(73837),r(71017)),o=r(39491),s=r(64095),c=r(66772),l=c.setopts,u=c.ownProp,d=c.childrenIgnored,p=c.isIgnored;function f(e,t){if("function"==typeof t||3===arguments.length)throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167");return new m(e,t).found}function m(e,t){if(!e)throw new Error("must provide pattern");if("function"==typeof t||3===arguments.length)throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167");if(!(this instanceof m))return new m(e,t);if(l(this,e,t),this.noprocess)return this;var r=this.minimatch.set.length;this.matches=new Array(r);for(var n=0;n<r;n++)this._process(this.minimatch.set[n],n,!1);this._finish()}m.prototype._finish=function(){if(o.ok(this instanceof m),this.realpath){var e=this;this.matches.forEach((function(t,r){var i=e.matches[r]=Object.create(null);for(var a in t)try{a=e._makeAbs(a),i[n.realpathSync(a,e.realpathCache)]=!0}catch(t){if("stat"!==t.syscall)throw t;i[e._makeAbs(a)]=!0}}))}c.finish(this)},m.prototype._process=function(e,t,r){o.ok(this instanceof m);for(var n,a=0;"string"==typeof e[a];)a++;switch(a){case e.length:return void this._processSimple(e.join("/"),t);case 0:n=null;break;default:n=e.slice(0,a).join("/")}var c,l=e.slice(a);null===n?c=".":s(n)||s(e.map((function(e){return"string"==typeof e?e:"[*]"})).join("/"))?(n&&s(n)||(n="/"+n),c=n):c=n;var u=this._makeAbs(c);d(this,c)||(l[0]===i.GLOBSTAR?this._processGlobStar(n,c,u,l,t,r):this._processReaddir(n,c,u,l,t,r))},m.prototype._processReaddir=function(e,t,r,n,i,o){var s=this._readdir(r,o);if(s){for(var c=n[0],l=!!this.minimatch.negate,u=c._glob,d=this.dot||"."===u.charAt(0),p=[],f=0;f<s.length;f++){if("."!==(_=s[f]).charAt(0)||d)(l&&!e?!_.match(c):_.match(c))&&p.push(_)}var m=p.length;if(0!==m)if(1!==n.length||this.mark||this.stat){n.shift();for(f=0;f<m;f++){var g;_=p[f];g=e?[e,_]:[_],this._process(g.concat(n),i,o)}}else{this.matches[i]||(this.matches[i]=Object.create(null));for(var f=0;f<m;f++){var _=p[f];e&&(_="/"!==e.slice(-1)?e+"/"+_:e+_),"/"!==_.charAt(0)||this.nomount||(_=a.join(this.root,_)),this._emitMatch(i,_)}}}},m.prototype._emitMatch=function(e,t){if(!p(this,t)){var r=this._makeAbs(t);if(this.mark&&(t=this._mark(t)),this.absolute&&(t=r),!this.matches[e][t]){if(this.nodir){var n=this.cache[r];if("DIR"===n||Array.isArray(n))return}this.matches[e][t]=!0,this.stat&&this._stat(t)}}},m.prototype._readdirInGlobStar=function(e){if(this.follow)return this._readdir(e,!1);var t,r;try{r=this.fs.lstatSync(e)}catch(e){if("ENOENT"===e.code)return null}var n=r&&r.isSymbolicLink();return this.symlinks[e]=n,n||!r||r.isDirectory()?t=this._readdir(e,!1):this.cache[e]="FILE",t},m.prototype._readdir=function(e,t){if(t&&!u(this.symlinks,e))return this._readdirInGlobStar(e);if(u(this.cache,e)){var r=this.cache[e];if(!r||"FILE"===r)return null;if(Array.isArray(r))return r}try{return this._readdirEntries(e,this.fs.readdirSync(e))}catch(t){return this._readdirError(e,t),null}},m.prototype._readdirEntries=function(e,t){if(!this.mark&&!this.stat)for(var r=0;r<t.length;r++){var n=t[r];n="/"===e?e+n:e+"/"+n,this.cache[n]=!0}return this.cache[e]=t,t},m.prototype._readdirError=function(e,t){switch(t.code){case"ENOTSUP":case"ENOTDIR":var r=this._makeAbs(e);if(this.cache[r]="FILE",r===this.cwdAbs){var n=new Error(t.code+" invalid cwd "+this.cwd);throw n.path=this.cwd,n.code=t.code,n}break;case"ENOENT":case"ELOOP":case"ENAMETOOLONG":case"UNKNOWN":this.cache[this._makeAbs(e)]=!1;break;default:if(this.cache[this._makeAbs(e)]=!1,this.strict)throw t;this.silent||console.error("glob error",t)}},m.prototype._processGlobStar=function(e,t,r,n,i,a){var o=this._readdir(r,a);if(o){var s=n.slice(1),c=e?[e]:[],l=c.concat(s);this._process(l,i,!1);var u=o.length;if(!this.symlinks[r]||!a)for(var d=0;d<u;d++){if("."!==o[d].charAt(0)||this.dot){var p=c.concat(o[d],s);this._process(p,i,!0);var f=c.concat(o[d],n);this._process(f,i,!0)}}}},m.prototype._processSimple=function(e,t){var r=this._stat(e);if(this.matches[t]||(this.matches[t]=Object.create(null)),r){if(e&&s(e)&&!this.nomount){var n=/[\/\\]$/.test(e);"/"===e.charAt(0)?e=a.join(this.root,e):(e=a.resolve(this.root,e),n&&(e+="/"))}"win32"===process.platform&&(e=e.replace(/\\/g,"/")),this._emitMatch(t,e)}},m.prototype._stat=function(e){var t=this._makeAbs(e),r="/"===e.slice(-1);if(e.length>this.maxLength)return!1;if(!this.stat&&u(this.cache,t)){var n=this.cache[t];if(Array.isArray(n)&&(n="DIR"),!r||"DIR"===n)return n;if(r&&"FILE"===n)return!1}var i=this.statCache[t];if(!i){var a;try{a=this.fs.lstatSync(t)}catch(e){if(e&&("ENOENT"===e.code||"ENOTDIR"===e.code))return this.statCache[t]=!1,!1}if(a&&a.isSymbolicLink())try{i=this.fs.statSync(t)}catch(e){i=a}else i=a}this.statCache[t]=i;n=!0;return i&&(n=i.isDirectory()?"DIR":"FILE"),this.cache[t]=this.cache[t]||n,(!r||"FILE"!==n)&&n},m.prototype._mark=function(e){return c.mark(this,e)},m.prototype._makeAbs=function(e){return c.makeAbs(this,e)}},66458:e=>{"use strict";e.exports=function(e){if(null===e||"object"!=typeof e)return e;if(e instanceof Object)var r={__proto__:t(e)};else r=Object.create(null);return Object.getOwnPropertyNames(e).forEach((function(t){Object.defineProperty(r,t,Object.getOwnPropertyDescriptor(e,t))})),r};var t=Object.getPrototypeOf||function(e){return e.__proto__}},20077:(e,t,r)=>{var n,i,a=r(57147),o=r(61382),s=r(78520),c=r(66458),l=r(73837);function u(e,t){Object.defineProperty(e,n,{get:function(){return t}})}"function"==typeof Symbol&&"function"==typeof Symbol.for?(n=Symbol.for("graceful-fs.queue"),i=Symbol.for("graceful-fs.previous")):(n="___graceful-fs.queue",i="___graceful-fs.previous");var d,p=function(){};if(l.debuglog?p=l.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(p=function(){var e=l.format.apply(l,arguments);e="GFS4: "+e.split(/\n/).join("\nGFS4: "),console.error(e)}),!a[n]){var f=global[n]||[];u(a,f),a.close=function(e){function t(t,r){return e.call(a,t,(function(e){e||_(),"function"==typeof r&&r.apply(this,arguments)}))}return Object.defineProperty(t,i,{value:e}),t}(a.close),a.closeSync=function(e){function t(t){e.apply(a,arguments),_()}return Object.defineProperty(t,i,{value:e}),t}(a.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",(function(){p(a[n]),r(39491).equal(a[n].length,0)}))}function m(e){o(e),e.gracefulify=m,e.createReadStream=function(t,r){return new e.ReadStream(t,r)},e.createWriteStream=function(t,r){return new e.WriteStream(t,r)};var t=e.readFile;e.readFile=function(e,r,n){"function"==typeof r&&(n=r,r=null);return function e(r,n,i,a){return t(r,n,(function(t){!t||"EMFILE"!==t.code&&"ENFILE"!==t.code?"function"==typeof i&&i.apply(this,arguments):g([e,[r,n,i],t,a||Date.now(),Date.now()])}))}(e,r,n)};var r=e.writeFile;e.writeFile=function(e,t,n,i){"function"==typeof n&&(i=n,n=null);return function e(t,n,i,a,o){return r(t,n,i,(function(r){!r||"EMFILE"!==r.code&&"ENFILE"!==r.code?"function"==typeof a&&a.apply(this,arguments):g([e,[t,n,i,a],r,o||Date.now(),Date.now()])}))}(e,t,n,i)};var n=e.appendFile;n&&(e.appendFile=function(e,t,r,i){"function"==typeof r&&(i=r,r=null);return function e(t,r,i,a,o){return n(t,r,i,(function(n){!n||"EMFILE"!==n.code&&"ENFILE"!==n.code?"function"==typeof a&&a.apply(this,arguments):g([e,[t,r,i,a],n,o||Date.now(),Date.now()])}))}(e,t,r,i)});var i=e.copyFile;i&&(e.copyFile=function(e,t,r,n){"function"==typeof r&&(n=r,r=0);return function e(t,r,n,a,o){return i(t,r,n,(function(i){!i||"EMFILE"!==i.code&&"ENFILE"!==i.code?"function"==typeof a&&a.apply(this,arguments):g([e,[t,r,n,a],i,o||Date.now(),Date.now()])}))}(e,t,r,n)});var a=e.readdir;e.readdir=function(e,t,r){"function"==typeof t&&(r=t,t=null);var n=c.test(process.version)?function(e,t,r,n){return a(e,i(e,t,r,n))}:function(e,t,r,n){return a(e,t,i(e,t,r,n))};return n(e,t,r);function i(e,t,r,i){return function(a,o){!a||"EMFILE"!==a.code&&"ENFILE"!==a.code?(o&&o.sort&&o.sort(),"function"==typeof r&&r.call(this,a,o)):g([n,[e,t,r],a,i||Date.now(),Date.now()])}}};var c=/^v[0-5]\./;if("v0.8"===process.version.substr(0,4)){var l=s(e);_=l.ReadStream,h=l.WriteStream}var u=e.ReadStream;u&&(_.prototype=Object.create(u.prototype),_.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,(function(t,r){t?(e.autoClose&&e.destroy(),e.emit("error",t)):(e.fd=r,e.emit("open",r),e.read())}))});var d=e.WriteStream;d&&(h.prototype=Object.create(d.prototype),h.prototype.open=function(){var e=this;v(e.path,e.flags,e.mode,(function(t,r){t?(e.destroy(),e.emit("error",t)):(e.fd=r,e.emit("open",r))}))}),Object.defineProperty(e,"ReadStream",{get:function(){return _},set:function(e){_=e},enumerable:!0,configurable:!0}),Object.defineProperty(e,"WriteStream",{get:function(){return h},set:function(e){h=e},enumerable:!0,configurable:!0});var p=_;Object.defineProperty(e,"FileReadStream",{get:function(){return p},set:function(e){p=e},enumerable:!0,configurable:!0});var f=h;function _(e,t){return this instanceof _?(u.apply(this,arguments),this):_.apply(Object.create(_.prototype),arguments)}function h(e,t){return this instanceof h?(d.apply(this,arguments),this):h.apply(Object.create(h.prototype),arguments)}Object.defineProperty(e,"FileWriteStream",{get:function(){return f},set:function(e){f=e},enumerable:!0,configurable:!0});var y=e.open;function v(e,t,r,n){return"function"==typeof r&&(n=r,r=null),function e(t,r,n,i,a){return y(t,r,n,(function(o,s){!o||"EMFILE"!==o.code&&"ENFILE"!==o.code?"function"==typeof i&&i.apply(this,arguments):g([e,[t,r,n,i],o,a||Date.now(),Date.now()])}))}(e,t,r,n)}return e.open=v,e}function g(e){p("ENQUEUE",e[0].name,e[1]),a[n].push(e),h()}function _(){for(var e=Date.now(),t=0;t<a[n].length;++t)a[n][t].length>2&&(a[n][t][3]=e,a[n][t][4]=e);h()}function h(){if(clearTimeout(d),d=void 0,0!==a[n].length){var e=a[n].shift(),t=e[0],r=e[1],i=e[2],o=e[3],s=e[4];if(void 0===o)p("RETRY",t.name,r),t.apply(null,r);else if(Date.now()-o>=6e4){p("TIMEOUT",t.name,r);var c=r.pop();"function"==typeof c&&c.call(null,i)}else{var l=Date.now()-s,u=Math.max(s-o,1);l>=Math.min(1.2*u,100)?(p("RETRY",t.name,r),t.apply(null,r.concat([o]))):a[n].push(e)}void 0===d&&(d=setTimeout(h,0))}}global[n]||u(global,a[n]),e.exports=m(c(a)),process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!a.__patched&&(e.exports=m(a),a.__patched=!0)},78520:(e,t,r)=>{var n=r(12781).Stream;e.exports=function(e){return{ReadStream:function t(r,i){if(!(this instanceof t))return new t(r,i);n.call(this);var a=this;this.path=r,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536,i=i||{};for(var o=Object.keys(i),s=0,c=o.length;s<c;s++){var l=o[s];this[l]=i[l]}this.encoding&&this.setEncoding(this.encoding);if(void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(void 0===this.end)this.end=1/0;else if("number"!=typeof this.end)throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(null!==this.fd)return void process.nextTick((function(){a._read()}));e.open(this.path,this.flags,this.mode,(function(e,t){if(e)return a.emit("error",e),void(a.readable=!1);a.fd=t,a.emit("open",t),a._read()}))},WriteStream:function t(r,i){if(!(this instanceof t))return new t(r,i);n.call(this),this.path=r,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,i=i||{};for(var a=Object.keys(i),o=0,s=a.length;o<s;o++){var c=a[o];this[c]=i[c]}if(void 0!==this.start){if("number"!=typeof this.start)throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],null===this.fd&&(this._open=e.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}}},61382:(e,t,r)=>{var n=r(22057),i=process.cwd,a=null,o=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return a||(a=i.call(process)),a};try{process.cwd()}catch(e){}if("function"==typeof process.chdir){var s=process.chdir;process.chdir=function(e){a=null,s.call(process,e)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,s)}e.exports=function(e){n.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&function(e){e.lchmod=function(t,r,i){e.open(t,n.O_WRONLY|n.O_SYMLINK,r,(function(t,n){t?i&&i(t):e.fchmod(n,r,(function(t){e.close(n,(function(e){i&&i(t||e)}))}))}))},e.lchmodSync=function(t,r){var i,a=e.openSync(t,n.O_WRONLY|n.O_SYMLINK,r),o=!0;try{i=e.fchmodSync(a,r),o=!1}finally{if(o)try{e.closeSync(a)}catch(e){}else e.closeSync(a)}return i}}(e);e.lutimes||function(e){n.hasOwnProperty("O_SYMLINK")&&e.futimes?(e.lutimes=function(t,r,i,a){e.open(t,n.O_SYMLINK,(function(t,n){t?a&&a(t):e.futimes(n,r,i,(function(t){e.close(n,(function(e){a&&a(t||e)}))}))}))},e.lutimesSync=function(t,r,i){var a,o=e.openSync(t,n.O_SYMLINK),s=!0;try{a=e.futimesSync(o,r,i),s=!1}finally{if(s)try{e.closeSync(o)}catch(e){}else e.closeSync(o)}return a}):e.futimes&&(e.lutimes=function(e,t,r,n){n&&process.nextTick(n)},e.lutimesSync=function(){})}(e);e.chown=i(e.chown),e.fchown=i(e.fchown),e.lchown=i(e.lchown),e.chmod=t(e.chmod),e.fchmod=t(e.fchmod),e.lchmod=t(e.lchmod),e.chownSync=a(e.chownSync),e.fchownSync=a(e.fchownSync),e.lchownSync=a(e.lchownSync),e.chmodSync=r(e.chmodSync),e.fchmodSync=r(e.fchmodSync),e.lchmodSync=r(e.lchmodSync),e.stat=s(e.stat),e.fstat=s(e.fstat),e.lstat=s(e.lstat),e.statSync=c(e.statSync),e.fstatSync=c(e.fstatSync),e.lstatSync=c(e.lstatSync),e.chmod&&!e.lchmod&&(e.lchmod=function(e,t,r){r&&process.nextTick(r)},e.lchmodSync=function(){});e.chown&&!e.lchown&&(e.lchown=function(e,t,r,n){n&&process.nextTick(n)},e.lchownSync=function(){});"win32"===o&&(e.rename="function"!=typeof e.rename?e.rename:function(t){function r(r,n,i){var a=Date.now(),o=0;t(r,n,(function s(c){if(c&&("EACCES"===c.code||"EPERM"===c.code||"EBUSY"===c.code)&&Date.now()-a<6e4)return setTimeout((function(){e.stat(n,(function(e,a){e&&"ENOENT"===e.code?t(r,n,s):i(c)}))}),o),void(o<100&&(o+=10));i&&i(c)}))}return Object.setPrototypeOf&&Object.setPrototypeOf(r,t),r}(e.rename));function t(t){return t?function(r,n,i){return t.call(e,r,n,(function(e){l(e)&&(e=null),i&&i.apply(this,arguments)}))}:t}function r(t){return t?function(r,n){try{return t.call(e,r,n)}catch(e){if(!l(e))throw e}}:t}function i(t){return t?function(r,n,i,a){return t.call(e,r,n,i,(function(e){l(e)&&(e=null),a&&a.apply(this,arguments)}))}:t}function a(t){return t?function(r,n,i){try{return t.call(e,r,n,i)}catch(e){if(!l(e))throw e}}:t}function s(t){return t?function(r,n,i){function a(e,t){t&&(t.uid<0&&(t.uid+=4294967296),t.gid<0&&(t.gid+=4294967296)),i&&i.apply(this,arguments)}return"function"==typeof n&&(i=n,n=null),n?t.call(e,r,n,a):t.call(e,r,a)}:t}function c(t){return t?function(r,n){var i=n?t.call(e,r,n):t.call(e,r);return i&&(i.uid<0&&(i.uid+=4294967296),i.gid<0&&(i.gid+=4294967296)),i}:t}function l(e){return!e||("ENOSYS"===e.code||!(process.getuid&&0===process.getuid()||"EINVAL"!==e.code&&"EPERM"!==e.code))}e.read="function"!=typeof e.read?e.read:function(t){function r(r,n,i,a,o,s){var c;if(s&&"function"==typeof s){var l=0;c=function(u,d,p){if(u&&"EAGAIN"===u.code&&l<10)return l++,t.call(e,r,n,i,a,o,c);s.apply(this,arguments)}}return t.call(e,r,n,i,a,o,c)}return Object.setPrototypeOf&&Object.setPrototypeOf(r,t),r}(e.read),e.readSync="function"!=typeof e.readSync?e.readSync:(u=e.readSync,function(t,r,n,i,a){for(var o=0;;)try{return u.call(e,t,r,n,i,a)}catch(e){if("EAGAIN"===e.code&&o<10){o++;continue}throw e}});var u}},70624:e=>{"use strict";var t,r,n=global.MutationObserver||global.WebKitMutationObserver;if(process.browser)if(n){var i=0,a=new n(l),o=global.document.createTextNode("");a.observe(o,{characterData:!0}),t=function(){o.data=i=++i%2}}else if(global.setImmediate||void 0===global.MessageChannel)t="document"in global&&"onreadystatechange"in global.document.createElement("script")?function(){var e=global.document.createElement("script");e.onreadystatechange=function(){l(),e.onreadystatechange=null,e.parentNode.removeChild(e),e=null},global.document.documentElement.appendChild(e)}:function(){setTimeout(l,0)};else{var s=new global.MessageChannel;s.port1.onmessage=l,t=function(){s.port2.postMessage(0)}}else t=function(){process.nextTick(l)};var c=[];function l(){var e,t;r=!0;for(var n=c.length;n;){for(t=c,c=[],e=-1;++e<n;)t[e]();n=c.length}r=!1}e.exports=function(e){1!==c.push(e)||r||t()}},67844:(e,t,r)=>{var n=r(52479),i=Object.create(null),a=r(30778);e.exports=n((function(e,t){return i[e]?(i[e].push(t),null):(i[e]=[t],function(e){return a((function t(){var r=i[e],n=r.length,a=function(e){for(var t=e.length,r=[],n=0;n<t;n++)r[n]=e[n];return r}(arguments);try{for(var o=0;o<n;o++)r[o].apply(null,a)}finally{r.length>n?(r.splice(0,n),process.nextTick((function(){t.apply(null,a)}))):delete i[e]}}))}(e))}))},94378:(e,t,r)=>{try{var n=r(73837);if("function"!=typeof n.inherits)throw"";e.exports=n.inherits}catch(t){e.exports=r(35717)}},35717:e=>{"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},5826:e=>{var t={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==t.call(e)}},78458:(e,t,r)=>{"use strict";var n=r(58910),i=r(53790),a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";t.encode=function(e){for(var t,r,i,o,s,c,l,u=[],d=0,p=e.length,f=p,m="string"!==n.getTypeOf(e);d<e.length;)f=p-d,m?(t=e[d++],r=d<p?e[d++]:0,i=d<p?e[d++]:0):(t=e.charCodeAt(d++),r=d<p?e.charCodeAt(d++):0,i=d<p?e.charCodeAt(d++):0),o=t>>2,s=(3&t)<<4|r>>4,c=f>1?(15&r)<<2|i>>6:64,l=f>2?63&i:64,u.push(a.charAt(o)+a.charAt(s)+a.charAt(c)+a.charAt(l));return u.join("")},t.decode=function(e){var t,r,n,o,s,c,l=0,u=0,d="data:";if(e.substr(0,5)===d)throw new Error("Invalid base64 input, it looks like a data url.");var p,f=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,"")).length/4;if(e.charAt(e.length-1)===a.charAt(64)&&f--,e.charAt(e.length-2)===a.charAt(64)&&f--,f%1!=0)throw new Error("Invalid base64 input, bad content length.");for(p=i.uint8array?new Uint8Array(0|f):new Array(0|f);l<e.length;)t=a.indexOf(e.charAt(l++))<<2|(o=a.indexOf(e.charAt(l++)))>>4,r=(15&o)<<4|(s=a.indexOf(e.charAt(l++)))>>2,n=(3&s)<<6|(c=a.indexOf(e.charAt(l++))),p[u++]=t,64!==s&&(p[u++]=r),64!==c&&(p[u++]=n);return p}},37326:(e,t,r)=>{"use strict";var n=r(38565),i=r(5301),a=r(22541),o=r(95977);function s(e,t,r,n,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=r,this.compression=n,this.compressedContent=i}s.prototype={getContentWorker:function(){var e=new i(n.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o("data_length")),t=this;return e.on("end",(function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")})),e},getCompressedWorker:function(){return new i(n.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},s.createWorkerFrom=function(e,t,r){return e.pipe(new a).pipe(new o("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new o("compressedSize")).withStreamInfo("compression",t)},e.exports=s},61678:(e,t,r)=>{"use strict";var n=r(43718);t.STORE={magic:"\0\0",compressWorker:function(){return new n("STORE compression")},uncompressWorker:function(){return new n("STORE decompression")}},t.DEFLATE=r(51033)},86988:(e,t,r)=>{"use strict";var n=r(58910);var i=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();e.exports=function(e,t){return void 0!==e&&e.length?"string"!==n.getTypeOf(e)?function(e,t,r,n){var a=i,o=n+r;e^=-1;for(var s=n;s<o;s++)e=e>>>8^a[255&(e^t[s])];return-1^e}(0|t,e,e.length,0):function(e,t,r,n){var a=i,o=n+r;e^=-1;for(var s=n;s<o;s++)e=e>>>8^a[255&(e^t.charCodeAt(s))];return-1^e}(0|t,e,e.length,0):0}},26032:(e,t)=>{"use strict";t.base64=!1,t.binary=!1,t.dir=!1,t.createFolders=!0,t.date=null,t.compression=null,t.compressionOptions=null,t.comment=null,t.unixPermissions=null,t.dosPermissions=null},38565:(e,t,r)=>{"use strict";var n=null;n="undefined"!=typeof Promise?Promise:r(56783),e.exports={Promise:n}},51033:(e,t,r)=>{"use strict";var n="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,i=r(99591),a=r(58910),o=r(43718),s=n?"uint8array":"array";function c(e,t){o.call(this,"FlateWorker/"+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}t.magic="\b\0",a.inherits(c,o),c.prototype.processChunk=function(e){this.meta=e.meta,null===this._pako&&this._createPako(),this._pako.push(a.transformTo(s,e.data),!1)},c.prototype.flush=function(){o.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},c.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},c.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},t.compressWorker=function(e){return new c("Deflate",e)},t.uncompressWorker=function(){return new c("Inflate",{})}},4979:(e,t,r)=>{"use strict";var n=r(58910),i=r(43718),a=r(83600),o=r(86988),s=r(71141),c=function(e,t){var r,n="";for(r=0;r<t;r++)n+=String.fromCharCode(255&e),e>>>=8;return n},l=function(e,t,r,i,l,u){var d,p,f=e.file,m=e.compression,g=u!==a.utf8encode,_=n.transformTo("string",u(f.name)),h=n.transformTo("string",a.utf8encode(f.name)),y=f.comment,v=n.transformTo("string",u(y)),b=n.transformTo("string",a.utf8encode(y)),k=h.length!==f.name.length,x=b.length!==y.length,E="",S="",D="",w=f.dir,T=f.date,C={crc32:0,compressedSize:0,uncompressedSize:0};t&&!r||(C.crc32=e.crc32,C.compressedSize=e.compressedSize,C.uncompressedSize=e.uncompressedSize);var A=0;t&&(A|=8),g||!k&&!x||(A|=2048);var N,P,I,F=0,O=0;w&&(F|=16),"UNIX"===l?(O=798,F|=(N=f.unixPermissions,P=w,I=N,N||(I=P?16893:33204),(65535&I)<<16)):(O=20,F|=63&(f.dosPermissions||0)),d=T.getUTCHours(),d<<=6,d|=T.getUTCMinutes(),d<<=5,d|=T.getUTCSeconds()/2,p=T.getUTCFullYear()-1980,p<<=4,p|=T.getUTCMonth()+1,p<<=5,p|=T.getUTCDate(),k&&(S=c(1,1)+c(o(_),4)+h,E+="up"+c(S.length,2)+S),x&&(D=c(1,1)+c(o(v),4)+b,E+="uc"+c(D.length,2)+D);var R="";return R+="\n\0",R+=c(A,2),R+=m.magic,R+=c(d,2),R+=c(p,2),R+=c(C.crc32,4),R+=c(C.compressedSize,4),R+=c(C.uncompressedSize,4),R+=c(_.length,2),R+=c(E.length,2),{fileRecord:s.LOCAL_FILE_HEADER+R+_+E,dirRecord:s.CENTRAL_FILE_HEADER+c(O,2)+R+c(v.length,2)+"\0\0\0\0"+c(F,4)+c(i,4)+_+E+v}},u=function(e){return s.DATA_DESCRIPTOR+c(e.crc32,4)+c(e.compressedSize,4)+c(e.uncompressedSize,4)};function d(e,t,r,n){i.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=r,this.encodeFileName=n,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}n.inherits(d,i),d.prototype.push=function(e){var t=e.meta.percent||0,r=this.entriesCount,n=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,i.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:r?(t+100*(r-n-1))/r:100}}))},d.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var r=l(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},d.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,r=l(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),t)this.push({data:u(e),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},d.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var r=this.bytesWritten-e,i=function(e,t,r,i,a){var o=n.transformTo("string",a(i));return s.CENTRAL_DIRECTORY_END+"\0\0\0\0"+c(e,2)+c(e,2)+c(t,4)+c(r,4)+c(o.length,2)+o}(this.dirRecords.length,r,e,this.zipComment,this.encodeFileName);this.push({data:i,meta:{percent:100}})},d.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},d.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on("data",(function(e){t.processChunk(e)})),e.on("end",(function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()})),e.on("error",(function(e){t.error(e)})),this},d.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},d.prototype.error=function(e){var t=this._sources;if(!i.prototype.error.call(this,e))return!1;for(var r=0;r<t.length;r++)try{t[r].error(e)}catch(e){}return!0},d.prototype.lock=function(){i.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},e.exports=d},37834:(e,t,r)=>{"use strict";var n=r(61678),i=r(4979);t.generateWorker=function(e,t,r){var a=new i(t.streamFiles,r,t.platform,t.encodeFileName),o=0;try{e.forEach((function(e,r){o++;var i=function(e,t){var r=e||t,i=n[r];if(!i)throw new Error(r+" is not a valid compression method !");return i}(r.options.compression,t.compression),s=r.options.compressionOptions||t.compressionOptions||{},c=r.dir,l=r.date;r._compressWorker(i,s).withStreamInfo("file",{name:e,dir:c,date:l,comment:r.comment||"",unixPermissions:r.unixPermissions,dosPermissions:r.dosPermissions}).pipe(a)})),a.entriesCount=o}catch(e){a.error(e)}return a}},66085:(e,t,r)=>{"use strict";function n(){if(!(this instanceof n))return new n;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var e=new n;for(var t in this)"function"!=typeof this[t]&&(e[t]=this[t]);return e}}n.prototype=r(17132),n.prototype.loadAsync=r(81062),n.support=r(53790),n.defaults=r(26032),n.version="3.10.1",n.loadAsync=function(e,t){return(new n).loadAsync(e,t)},n.external=r(38565),e.exports=n},81062:(e,t,r)=>{"use strict";var n=r(58910),i=r(38565),a=r(83600),o=r(6624),s=r(22541),c=r(72182);function l(e){return new i.Promise((function(t,r){var n=e.decompressed.getContentWorker().pipe(new s);n.on("error",(function(e){r(e)})).on("end",(function(){n.streamInfo.crc32!==e.decompressed.crc32?r(new Error("Corrupted zip : CRC32 mismatch")):t()})).resume()}))}e.exports=function(e,t){var r=this;return t=n.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:a.utf8decode}),c.isNode&&c.isStream(e)?i.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):n.prepareContent("the loaded zip file",e,!0,t.optimizedBinaryString,t.base64).then((function(e){var r=new o(t);return r.load(e),r})).then((function(e){var r=[i.Promise.resolve(e)],n=e.files;if(t.checkCRC32)for(var a=0;a<n.length;a++)r.push(l(n[a]));return i.Promise.all(r)})).then((function(e){for(var i=e.shift(),a=i.files,o=0;o<a.length;o++){var s=a[o],c=s.fileNameStr,l=n.resolve(s.fileNameStr);r.file(l,s.decompressed,{binary:!0,optimizedBinaryString:!0,date:s.date,dir:s.dir,comment:s.fileCommentStr.length?s.fileCommentStr:null,unixPermissions:s.unixPermissions,dosPermissions:s.dosPermissions,createFolders:t.createFolders}),s.dir||(r.file(l).unsafeOriginalName=c)}return i.zipComment.length&&(r.comment=i.zipComment),r}))}},72182:e=>{"use strict";e.exports={isNode:"undefined"!=typeof Buffer,newBufferFrom:function(e,t){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(e,t);if("number"==typeof e)throw new Error('The "data" argument must not be a number');return new Buffer(e,t)},allocBuffer:function(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t},isBuffer:function(e){return Buffer.isBuffer(e)},isStream:function(e){return e&&"function"==typeof e.on&&"function"==typeof e.pause&&"function"==typeof e.resume}}},660:(e,t,r)=>{"use strict";var n=r(58910),i=r(43718);function a(e,t){i.call(this,"Nodejs stream input adapter for "+e),this._upstreamEnded=!1,this._bindStream(t)}n.inherits(a,i),a.prototype._bindStream=function(e){var t=this;this._stream=e,e.pause(),e.on("data",(function(e){t.push({data:e,meta:{percent:0}})})).on("error",(function(e){t.isPaused?this.generatedError=e:t.error(e)})).on("end",(function(){t.isPaused?t._upstreamEnded=!0:t.end()}))},a.prototype.pause=function(){return!!i.prototype.pause.call(this)&&(this._stream.pause(),!0)},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},e.exports=a},31220:(e,t,r)=>{"use strict";var n=r(27409).Readable;function i(e,t,r){n.call(this,t),this._helper=e;var i=this;e.on("data",(function(e,t){i.push(e)||i._helper.pause(),r&&r(t)})).on("error",(function(e){i.emit("error",e)})).on("end",(function(){i.push(null)}))}r(58910).inherits(i,n),i.prototype._read=function(){this._helper.resume()},e.exports=i},17132:(e,t,r)=>{"use strict";var n=r(83600),i=r(58910),a=r(43718),o=r(11285),s=r(26032),c=r(37326),l=r(46859),u=r(37834),d=r(72182),p=r(660),f=function(e,t,r){var n,o=i.getTypeOf(t),u=i.extend(r||{},s);u.date=u.date||new Date,null!==u.compression&&(u.compression=u.compression.toUpperCase()),"string"==typeof u.unixPermissions&&(u.unixPermissions=parseInt(u.unixPermissions,8)),u.unixPermissions&&16384&u.unixPermissions&&(u.dir=!0),u.dosPermissions&&16&u.dosPermissions&&(u.dir=!0),u.dir&&(e=g(e)),u.createFolders&&(n=m(e))&&_.call(this,n,!0);var f="string"===o&&!1===u.binary&&!1===u.base64;r&&void 0!==r.binary||(u.binary=!f),(t instanceof c&&0===t.uncompressedSize||u.dir||!t||0===t.length)&&(u.base64=!1,u.binary=!0,t="",u.compression="STORE",o="string");var h=null;h=t instanceof c||t instanceof a?t:d.isNode&&d.isStream(t)?new p(e,t):i.prepareContent(e,t,u.binary,u.optimizedBinaryString,u.base64);var y=new l(e,h,u);this.files[e]=y},m=function(e){"/"===e.slice(-1)&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf("/");return t>0?e.substring(0,t):""},g=function(e){return"/"!==e.slice(-1)&&(e+="/"),e},_=function(e,t){return t=void 0!==t?t:s.createFolders,e=g(e),this.files[e]||f.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function h(e){return"[object RegExp]"===Object.prototype.toString.call(e)}var y={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(e){var t,r,n;for(t in this.files)n=this.files[t],(r=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(r,n)},filter:function(e){var t=[];return this.forEach((function(r,n){e(r,n)&&t.push(n)})),t},file:function(e,t,r){if(1===arguments.length){if(h(e)){var n=e;return this.filter((function(e,t){return!t.dir&&n.test(e)}))}var i=this.files[this.root+e];return i&&!i.dir?i:null}return e=this.root+e,f.call(this,e,t,r),this},folder:function(e){if(!e)return this;if(h(e))return this.filter((function(t,r){return r.dir&&e.test(t)}));var t=this.root+e,r=_.call(this,t),n=this.clone();return n.root=r.name,n},remove:function(e){e=this.root+e;var t=this.files[e];if(t||("/"!==e.slice(-1)&&(e+="/"),t=this.files[e]),t&&!t.dir)delete this.files[e];else for(var r=this.filter((function(t,r){return r.name.slice(0,e.length)===e})),n=0;n<r.length;n++)delete this.files[r[n].name];return this},generate:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(e){var t,r={};try{if((r=i.extend(e||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:n.utf8encode})).type=r.type.toLowerCase(),r.compression=r.compression.toUpperCase(),"binarystring"===r.type&&(r.type="string"),!r.type)throw new Error("No output type specified.");i.checkSupport(r.type),"darwin"!==r.platform&&"freebsd"!==r.platform&&"linux"!==r.platform&&"sunos"!==r.platform||(r.platform="UNIX"),"win32"===r.platform&&(r.platform="DOS");var s=r.comment||this.comment||"";t=u.generateWorker(this,r,s)}catch(e){(t=new a("error")).error(e)}return new o(t,r.type||"string",r.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e=e||{}).type||(e.type="nodebuffer"),this.generateInternalStream(e).toNodejsStream(t)}};e.exports=y},22370:(e,t,r)=>{"use strict";var n=r(28542);function i(e){n.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}r(58910).inherits(i,n),i.prototype.byteAt=function(e){return this.data[this.zero+e]},i.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),a=this.length-4;a>=0;--a)if(this.data[a]===t&&this.data[a+1]===r&&this.data[a+2]===n&&this.data[a+3]===i)return a-this.zero;return-1},i.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),r=e.charCodeAt(1),n=e.charCodeAt(2),i=e.charCodeAt(3),a=this.readData(4);return t===a[0]&&r===a[1]&&n===a[2]&&i===a[3]},i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},28542:(e,t,r)=>{"use strict";var n=r(58910);function i(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}i.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+e+"). Corrupted zip ?")},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(){},readInt:function(e){var t,r=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)r=(r<<8)+this.byteAt(t);return this.index+=e,r},readString:function(e){return n.transformTo("string",this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},e.exports=i},69583:(e,t,r)=>{"use strict";var n=r(70414);function i(e){n.call(this,e)}r(58910).inherits(i,n),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},9226:(e,t,r)=>{"use strict";var n=r(28542);function i(e){n.call(this,e)}r(58910).inherits(i,n),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},70414:(e,t,r)=>{"use strict";var n=r(22370);function i(e){n.call(this,e)}r(58910).inherits(i,n),i.prototype.readData=function(e){if(this.checkOffset(e),0===e)return new Uint8Array(0);var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},e.exports=i},78435:(e,t,r)=>{"use strict";var n=r(58910),i=r(53790),a=r(22370),o=r(9226),s=r(69583),c=r(70414);e.exports=function(e){var t=n.getTypeOf(e);return n.checkSupport(t),"string"!==t||i.uint8array?"nodebuffer"===t?new s(e):i.uint8array?new c(n.transformTo("uint8array",e)):new a(n.transformTo("array",e)):new o(e)}},71141:(e,t)=>{"use strict";t.LOCAL_FILE_HEADER="PK",t.CENTRAL_FILE_HEADER="PK",t.CENTRAL_DIRECTORY_END="PK",t.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",t.ZIP64_CENTRAL_DIRECTORY_END="PK",t.DATA_DESCRIPTOR="PK\b"},64293:(e,t,r)=>{"use strict";var n=r(43718),i=r(58910);function a(e){n.call(this,"ConvertWorker to "+e),this.destType=e}i.inherits(a,n),a.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},e.exports=a},22541:(e,t,r)=>{"use strict";var n=r(43718),i=r(86988);function a(){n.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}r(58910).inherits(a,n),a.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},e.exports=a},95977:(e,t,r)=>{"use strict";var n=r(58910),i=r(43718);function a(e){i.call(this,"DataLengthProbe for "+e),this.propName=e,this.withStreamInfo(e,0)}n.inherits(a,i),a.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},e.exports=a},5301:(e,t,r)=>{"use strict";var n=r(58910),i=r(43718);function a(e){i.call(this,"DataWorker");var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,e.then((function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=n.getTypeOf(e),t.isPaused||t._tickAndRepeat()}),(function(e){t.error(e)}))}n.inherits(a,i),a.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,n.delay(this._tickAndRepeat,[],this)),!0)},a.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(n.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},a.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":e=this.data.substring(this.index,t);break;case"uint8array":e=this.data.subarray(this.index,t);break;case"array":case"nodebuffer":e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},e.exports=a},43718:e=>{"use strict";function t(e){this.name=e||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}t.prototype={push:function(e){this.emit("data",e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(e){this.emit("error",e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit("error",e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var r=0;r<this._listeners[e].length;r++)this._listeners[e][r].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on("data",(function(e){t.processChunk(e)})),e.on("end",(function(){t.end()})),e.on("error",(function(e){t.error(e)})),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;this.isPaused=!1;var e=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e="Worker "+this.name;return this.previous?this.previous+" -> "+e:e}},e.exports=t},11285:(e,t,r)=>{"use strict";var n=r(58910),i=r(64293),a=r(43718),o=r(78458),s=r(53790),c=r(38565),l=null;if(s.nodestream)try{l=r(31220)}catch(e){}function u(e,t){return new c.Promise((function(r,i){var a=[],s=e._internalType,c=e._outputType,l=e._mimeType;e.on("data",(function(e,r){a.push(e),t&&t(r)})).on("error",(function(e){a=[],i(e)})).on("end",(function(){try{var e=function(e,t,r){switch(e){case"blob":return n.newBlob(n.transformTo("arraybuffer",t),r);case"base64":return o.encode(t);default:return n.transformTo(e,t)}}(c,function(e,t){var r,n=0,i=null,a=0;for(r=0;r<t.length;r++)a+=t[r].length;switch(e){case"string":return t.join("");case"array":return Array.prototype.concat.apply([],t);case"uint8array":for(i=new Uint8Array(a),r=0;r<t.length;r++)i.set(t[r],n),n+=t[r].length;return i;case"nodebuffer":return Buffer.concat(t);default:throw new Error("concat : unsupported type '"+e+"'")}}(s,a),l);r(e)}catch(e){i(e)}a=[]})).resume()}))}function d(e,t,r){var o=t;switch(t){case"blob":case"arraybuffer":o="uint8array";break;case"base64":o="string"}try{this._internalType=o,this._outputType=t,this._mimeType=r,n.checkSupport(o),this._worker=e.pipe(new i(o)),e.lock()}catch(e){this._worker=new a("error"),this._worker.error(e)}}d.prototype={accumulate:function(e){return u(this,e)},on:function(e,t){var r=this;return"data"===e?this._worker.on(e,(function(e){t.call(r,e.data,e.meta)})):this._worker.on(e,(function(){n.delay(t,arguments,r)})),this},resume:function(){return n.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(n.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new l(this,{objectMode:"nodebuffer"!==this._outputType},e)}},e.exports=d},53790:(e,t,r)=>{"use strict";if(t.base64=!0,t.array=!0,t.string=!0,t.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,t.nodebuffer="undefined"!=typeof Buffer,t.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)t.blob=!1;else{var n=new ArrayBuffer(0);try{t.blob=0===new Blob([n],{type:"application/zip"}).size}catch(e){try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);i.append(n),t.blob=0===i.getBlob("application/zip").size}catch(e){t.blob=!1}}}try{t.nodestream=!!r(27409).Readable}catch(e){t.nodestream=!1}},83600:(e,t,r)=>{"use strict";for(var n=r(58910),i=r(53790),a=r(72182),o=r(43718),s=new Array(256),c=0;c<256;c++)s[c]=c>=252?6:c>=248?5:c>=240?4:c>=224?3:c>=192?2:1;s[254]=s[254]=1;function l(){o.call(this,"utf-8 decode"),this.leftOver=null}function u(){o.call(this,"utf-8 encode")}t.utf8encode=function(e){return i.nodebuffer?a.newBufferFrom(e,"utf-8"):function(e){var t,r,n,a,o,s=e.length,c=0;for(a=0;a<s;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(n=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(n-56320),a++),c+=r<128?1:r<2048?2:r<65536?3:4;for(t=i.uint8array?new Uint8Array(c):new Array(c),o=0,a=0;o<c;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(n=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(n-56320),a++),r<128?t[o++]=r:r<2048?(t[o++]=192|r>>>6,t[o++]=128|63&r):r<65536?(t[o++]=224|r>>>12,t[o++]=128|r>>>6&63,t[o++]=128|63&r):(t[o++]=240|r>>>18,t[o++]=128|r>>>12&63,t[o++]=128|r>>>6&63,t[o++]=128|63&r);return t}(e)},t.utf8decode=function(e){return i.nodebuffer?n.transformTo("nodebuffer",e).toString("utf-8"):function(e){var t,r,i,a,o=e.length,c=new Array(2*o);for(r=0,t=0;t<o;)if((i=e[t++])<128)c[r++]=i;else if((a=s[i])>4)c[r++]=65533,t+=a-1;else{for(i&=2===a?31:3===a?15:7;a>1&&t<o;)i=i<<6|63&e[t++],a--;a>1?c[r++]=65533:i<65536?c[r++]=i:(i-=65536,c[r++]=55296|i>>10&1023,c[r++]=56320|1023&i)}return c.length!==r&&(c.subarray?c=c.subarray(0,r):c.length=r),n.applyFromCharCode(c)}(e=n.transformTo(i.uint8array?"uint8array":"array",e))},n.inherits(l,o),l.prototype.processChunk=function(e){var r=n.transformTo(i.uint8array?"uint8array":"array",e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var a=r;(r=new Uint8Array(a.length+this.leftOver.length)).set(this.leftOver,0),r.set(a,this.leftOver.length)}else r=this.leftOver.concat(r);this.leftOver=null}var o=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;r>=0&&128==(192&e[r]);)r--;return r<0||0===r?t:r+s[e[r]]>t?r:t}(r),c=r;o!==r.length&&(i.uint8array?(c=r.subarray(0,o),this.leftOver=r.subarray(o,r.length)):(c=r.slice(0,o),this.leftOver=r.slice(o,r.length))),this.push({data:t.utf8decode(c),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:t.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},t.Utf8DecodeWorker=l,n.inherits(u,o),u.prototype.processChunk=function(e){this.push({data:t.utf8encode(e.data),meta:e.meta})},t.Utf8EncodeWorker=u},58910:(e,t,r)=>{"use strict";var n=r(53790),i=r(78458),a=r(72182),o=r(38565);function s(e){return e}function c(e,t){for(var r=0;r<e.length;++r)t[r]=255&e.charCodeAt(r);return t}r(24889),t.newBlob=function(e,r){t.checkSupport("blob");try{return new Blob([e],{type:r})}catch(t){try{var n=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return n.append(e),n.getBlob(r)}catch(e){throw new Error("Bug : can't construct the Blob.")}}};var l={stringifyByChunk:function(e,t,r){var n=[],i=0,a=e.length;if(a<=r)return String.fromCharCode.apply(null,e);for(;i<a;)"array"===t||"nodebuffer"===t?n.push(String.fromCharCode.apply(null,e.slice(i,Math.min(i+r,a)))):n.push(String.fromCharCode.apply(null,e.subarray(i,Math.min(i+r,a)))),i+=r;return n.join("")},stringifyByChar:function(e){for(var t="",r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},applyCanBeUsed:{uint8array:function(){try{return n.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(e){return!1}}(),nodebuffer:function(){try{return n.nodebuffer&&1===String.fromCharCode.apply(null,a.allocBuffer(1)).length}catch(e){return!1}}()}};function u(e){var r=65536,n=t.getTypeOf(e),i=!0;if("uint8array"===n?i=l.applyCanBeUsed.uint8array:"nodebuffer"===n&&(i=l.applyCanBeUsed.nodebuffer),i)for(;r>1;)try{return l.stringifyByChunk(e,n,r)}catch(e){r=Math.floor(r/2)}return l.stringifyByChar(e)}function d(e,t){for(var r=0;r<e.length;r++)t[r]=e[r];return t}t.applyFromCharCode=u;var p={};p.string={string:s,array:function(e){return c(e,new Array(e.length))},arraybuffer:function(e){return p.string.uint8array(e).buffer},uint8array:function(e){return c(e,new Uint8Array(e.length))},nodebuffer:function(e){return c(e,a.allocBuffer(e.length))}},p.array={string:u,array:s,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(e)}},p.arraybuffer={string:function(e){return u(new Uint8Array(e))},array:function(e){return d(new Uint8Array(e),new Array(e.byteLength))},arraybuffer:s,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(new Uint8Array(e))}},p.uint8array={string:u,array:function(e){return d(e,new Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:s,nodebuffer:function(e){return a.newBufferFrom(e)}},p.nodebuffer={string:u,array:function(e){return d(e,new Array(e.length))},arraybuffer:function(e){return p.nodebuffer.uint8array(e).buffer},uint8array:function(e){return d(e,new Uint8Array(e.length))},nodebuffer:s},t.transformTo=function(e,r){if(r||(r=""),!e)return r;t.checkSupport(e);var n=t.getTypeOf(r);return p[n][e](r)},t.resolve=function(e){for(var t=e.split("/"),r=[],n=0;n<t.length;n++){var i=t[n];"."===i||""===i&&0!==n&&n!==t.length-1||(".."===i?r.pop():r.push(i))}return r.join("/")},t.getTypeOf=function(e){return"string"==typeof e?"string":"[object Array]"===Object.prototype.toString.call(e)?"array":n.nodebuffer&&a.isBuffer(e)?"nodebuffer":n.uint8array&&e instanceof Uint8Array?"uint8array":n.arraybuffer&&e instanceof ArrayBuffer?"arraybuffer":void 0},t.checkSupport=function(e){if(!n[e.toLowerCase()])throw new Error(e+" is not supported by this platform")},t.MAX_VALUE_16BITS=65535,t.MAX_VALUE_32BITS=-1,t.pretty=function(e){var t,r,n="";for(r=0;r<(e||"").length;r++)n+="\\x"+((t=e.charCodeAt(r))<16?"0":"")+t.toString(16).toUpperCase();return n},t.delay=function(e,t,r){setImmediate((function(){e.apply(r||null,t||[])}))},t.inherits=function(e,t){var r=function(){};r.prototype=t.prototype,e.prototype=new r},t.extend=function(){var e,t,r={};for(e=0;e<arguments.length;e++)for(t in arguments[e])Object.prototype.hasOwnProperty.call(arguments[e],t)&&void 0===r[t]&&(r[t]=arguments[e][t]);return r},t.prepareContent=function(e,r,a,s,l){return o.Promise.resolve(r).then((function(e){return n.blob&&(e instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(e)))&&"undefined"!=typeof FileReader?new o.Promise((function(t,r){var n=new FileReader;n.onload=function(e){t(e.target.result)},n.onerror=function(e){r(e.target.error)},n.readAsArrayBuffer(e)})):e})).then((function(r){var u,d=t.getTypeOf(r);return d?("arraybuffer"===d?r=t.transformTo("uint8array",r):"string"===d&&(l?r=i.decode(r):a&&!0!==s&&(r=c(u=r,n.uint8array?new Uint8Array(u.length):new Array(u.length)))),r):o.Promise.reject(new Error("Can't read the data of '"+e+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))}))}},6624:(e,t,r)=>{"use strict";var n=r(78435),i=r(58910),a=r(71141),o=r(39392),s=r(53790);function c(e){this.files=[],this.loadOptions=e}c.prototype={checkSignature:function(e){if(!this.reader.readAndCheckSignature(e)){this.reader.index-=4;var t=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+i.pretty(t)+", expected "+i.pretty(e)+")")}},isSignature:function(e,t){var r=this.reader.index;this.reader.setIndex(e);var n=this.reader.readString(4)===t;return this.reader.setIndex(r),n},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=s.uint8array?"uint8array":"array",r=i.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(r)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,r,n=this.zip64EndOfCentralSize-44;0<n;)e=this.reader.readInt(2),t=this.reader.readInt(4),r=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:r}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var e,t;for(e=0;e<this.files.length;e++)t=this.files[e],this.reader.setIndex(t.localHeaderOffset),this.checkSignature(a.LOCAL_FILE_HEADER),t.readLocalPart(this.reader),t.handleUTF8(),t.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(a.CENTRAL_FILE_HEADER);)(e=new o({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(a.CENTRAL_DIRECTORY_END);if(e<0)throw!this.isSignature(0,a.LOCAL_FILE_HEADER)?new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html"):new Error("Corrupted zip: can't find end of central directory");this.reader.setIndex(e);var t=e;if(this.checkSignature(a.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===i.MAX_VALUE_16BITS||this.diskWithCentralDirStart===i.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===i.MAX_VALUE_16BITS||this.centralDirRecords===i.MAX_VALUE_16BITS||this.centralDirSize===i.MAX_VALUE_32BITS||this.centralDirOffset===i.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(e),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,a.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var r=this.centralDirOffset+this.centralDirSize;this.zip64&&(r+=20,r+=12+this.zip64EndOfCentralSize);var n=t-r;if(n>0)this.isSignature(t,a.CENTRAL_FILE_HEADER)||(this.reader.zero=n);else if(n<0)throw new Error("Corrupted zip: missing "+Math.abs(n)+" bytes.")},prepareReader:function(e){this.reader=n(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},e.exports=c},39392:(e,t,r)=>{"use strict";var n=r(78435),i=r(58910),a=r(37326),o=r(86988),s=r(83600),c=r(61678),l=r(53790);function u(e,t){this.options=e,this.loadOptions=t}u.prototype={isEncrypted:function(){return 1==(1&this.bitFlag)},useUTF8:function(){return 2048==(2048&this.bitFlag)},readLocalPart:function(e){var t,r;if(e.skip(22),this.fileNameLength=e.readInt(2),r=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(r),-1===this.compressedSize||-1===this.uncompressedSize)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(null===(t=function(e){for(var t in c)if(Object.prototype.hasOwnProperty.call(c,t)&&c[t].magic===e)return c[t];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+i.pretty(this.compressionMethod)+" unknown (inner file : "+i.transformTo("string",this.fileName)+")");this.decompressed=new a(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0===e&&(this.dosPermissions=63&this.externalFileAttributes),3===e&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=n(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,r,n,i=e.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});e.index+4<i;)t=e.readInt(2),r=e.readInt(2),n=e.readData(r),this.extraFields[t]={id:t,length:r,value:n};e.setIndex(i)},handleUTF8:function(){var e=l.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=s.utf8decode(this.fileName),this.fileCommentStr=s.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();if(null!==t)this.fileNameStr=t;else{var r=i.transformTo(e,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(r)}var n=this.findExtraFieldUnicodeComment();if(null!==n)this.fileCommentStr=n;else{var a=i.transformTo(e,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(a)}}},findExtraFieldUnicodePath:function(){var e=this.extraFields[28789];if(e){var t=n(e.value);return 1!==t.readInt(1)||o(this.fileName)!==t.readInt(4)?null:s.utf8decode(t.readData(e.length-5))}return null},findExtraFieldUnicodeComment:function(){var e=this.extraFields[25461];if(e){var t=n(e.value);return 1!==t.readInt(1)||o(this.fileComment)!==t.readInt(4)?null:s.utf8decode(t.readData(e.length-5))}return null}},e.exports=u},46859:(e,t,r)=>{"use strict";var n=r(11285),i=r(5301),a=r(83600),o=r(37326),s=r(43718),c=function(e,t,r){this.name=e,this.dir=r.dir,this.date=r.date,this.comment=r.comment,this.unixPermissions=r.unixPermissions,this.dosPermissions=r.dosPermissions,this._data=t,this._dataBinary=r.binary,this.options={compression:r.compression,compressionOptions:r.compressionOptions}};c.prototype={internalStream:function(e){var t=null,r="string";try{if(!e)throw new Error("No output type specified.");var i="string"===(r=e.toLowerCase())||"text"===r;"binarystring"!==r&&"text"!==r||(r="string"),t=this._decompressWorker();var o=!this._dataBinary;o&&!i&&(t=t.pipe(new a.Utf8EncodeWorker)),!o&&i&&(t=t.pipe(new a.Utf8DecodeWorker))}catch(e){(t=new s("error")).error(e)}return new n(t,r,"")},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||"nodebuffer").toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof o&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var r=this._decompressWorker();return this._dataBinary||(r=r.pipe(new a.Utf8EncodeWorker)),o.createWorkerFrom(r,e,t)},_decompressWorker:function(){return this._data instanceof o?this._data.getContentWorker():this._data instanceof s?this._data:new i(this._data)}};for(var l=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],u=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},d=0;d<l.length;d++)c.prototype[l[d]]=u;e.exports=c},25919:(e,t,r)=>{"use strict";var n=r(88212),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(16497));a.inherits=r(94378);var o=r(75050),s=r(49397);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},59530:(e,t,r)=>{"use strict";e.exports=a;var n=r(55878),i=Object.create(r(16497));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(94378),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},75050:(e,t,r)=>{"use strict";var n=r(88212);e.exports=y;var i,a=r(5826);y.ReadableState=h;r(82361).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(99603),c=r(89509).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(16497));u.inherits=r(94378);var d=r(73837),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(85194),g=r(3686);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(25919));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(32553).s),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(25919),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,E(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&E(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(32553).s),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(w,e,t))}function w(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):E(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&E(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},55878:(e,t,r)=>{"use strict";e.exports=o;var n=r(25919),i=Object.create(r(16497));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(94378),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},49397:(e,t,r)=>{"use strict";var n=r(88212);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(16497));s.inherits=r(94378);var c={deprecate:r(41159)},l=r(99603),u=r(89509).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(3686);function m(){}function g(e,t){a=a||r(25919),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(25919),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},85194:(e,t,r)=>{"use strict";var n=r(89509).Buffer,i=r(73837);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},3686:(e,t,r)=>{"use strict";var n=r(88212);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},99603:(e,t,r)=>{e.exports=r(12781)},27409:(e,t,r)=>{var n=r(12781);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(75050)).Stream=n||t,t.Readable=t,t.Writable=r(49397),t.Duplex=r(25919),t.Transform=r(55878),t.PassThrough=r(59530))},84150:(e,t,r)=>{var n=r(73837),i=r(82209);function a(e,t,r){e[t]=function(){return delete e[t],r.apply(this,arguments),this[t].apply(this,arguments)}}function o(e,t){if(!(this instanceof o))return new o(e,t);i.call(this,t),a(this,"_read",(function(){var r=e.call(this,t),n=this.emit.bind(this,"error");r.on("error",n),r.pipe(this)})),this.emit("readable")}function s(e,t){if(!(this instanceof s))return new s(e,t);i.call(this,t),a(this,"_write",(function(){var r=e.call(this,t),n=this.emit.bind(this,"error");r.on("error",n),this.pipe(r)})),this.emit("writable")}e.exports={Readable:o,Writable:s},n.inherits(o,i),n.inherits(s,i)},32836:(e,t,r)=>{"use strict";var n=r(88212),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(16497));a.inherits=r(94378);var o=r(11143),s=r(93494);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},99406:(e,t,r)=>{"use strict";e.exports=a;var n=r(67628),i=Object.create(r(16497));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(94378),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},11143:(e,t,r)=>{"use strict";var n=r(88212);e.exports=y;var i,a=r(5826);y.ReadableState=h;r(82361).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(2300),c=r(89509).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(16497));u.inherits=r(94378);var d=r(73837),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(98979),g=r(54201);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(32836));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(32553).s),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(32836),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,E(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&E(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(32553).s),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(w,e,t))}function w(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):E(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&E(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},67628:(e,t,r)=>{"use strict";e.exports=o;var n=r(32836),i=Object.create(r(16497));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(94378),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},93494:(e,t,r)=>{"use strict";var n=r(88212);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(16497));s.inherits=r(94378);var c={deprecate:r(41159)},l=r(2300),u=r(89509).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(54201);function m(){}function g(e,t){a=a||r(32836),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(32836),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},98979:(e,t,r)=>{"use strict";var n=r(89509).Buffer,i=r(73837);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},54201:(e,t,r)=>{"use strict";var n=r(88212);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},2300:(e,t,r)=>{e.exports=r(12781)},82209:(e,t,r)=>{e.exports=r(83485).PassThrough},83485:(e,t,r)=>{var n=r(12781);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(11143)).Stream=n||t,t.Readable=t,t.Writable=r(93494),t.Duplex=r(32836),t.Transform=r(67628),t.PassThrough=r(99406))},56783:(e,t,r)=>{"use strict";var n=r(70624);function i(){}var a={},o=["REJECTED"],s=["FULFILLED"],c=["PENDING"];if(!process.browser)var l=["UNHANDLED"];function u(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=c,this.queue=[],this.outcome=void 0,process.browser||(this.handled=l),e!==i&&m(this,e)}function d(e,t,r){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof r&&(this.onRejected=r,this.callRejected=this.otherCallRejected)}function p(e,t,r){n((function(){var n;try{n=t(r)}catch(t){return a.reject(e,t)}n===e?a.reject(e,new TypeError("Cannot resolve promise with itself")):a.resolve(e,n)}))}function f(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function m(e,t){var r=!1;function n(t){r||(r=!0,a.reject(e,t))}function i(t){r||(r=!0,a.resolve(e,t))}var o=g((function(){t(i,n)}));"error"===o.status&&n(o.value)}function g(e,t){var r={};try{r.value=e(t),r.status="success"}catch(e){r.status="error",r.value=e}return r}e.exports=u,u.prototype.finally=function(e){if("function"!=typeof e)return this;var t=this.constructor;return this.then((function(r){return t.resolve(e()).then((function(){return r}))}),(function(r){return t.resolve(e()).then((function(){throw r}))}))},u.prototype.catch=function(e){return this.then(null,e)},u.prototype.then=function(e,t){if("function"!=typeof e&&this.state===s||"function"!=typeof t&&this.state===o)return this;var r=new this.constructor(i);(process.browser||this.handled===l&&(this.handled=null),this.state!==c)?p(r,this.state===s?e:t,this.outcome):this.queue.push(new d(r,e,t));return r},d.prototype.callFulfilled=function(e){a.resolve(this.promise,e)},d.prototype.otherCallFulfilled=function(e){p(this.promise,this.onFulfilled,e)},d.prototype.callRejected=function(e){a.reject(this.promise,e)},d.prototype.otherCallRejected=function(e){p(this.promise,this.onRejected,e)},a.resolve=function(e,t){var r=g(f,t);if("error"===r.status)return a.reject(e,r.value);var n=r.value;if(n)m(e,n);else{e.state=s,e.outcome=t;for(var i=-1,o=e.queue.length;++i<o;)e.queue[i].callFulfilled(t)}return e},a.reject=function(e,t){e.state=o,e.outcome=t,process.browser||e.handled===l&&n((function(){e.handled===l&&process.emit("unhandledRejection",t,e)}));for(var r=-1,i=e.queue.length;++r<i;)e.queue[r].callRejected(t);return e},u.resolve=function(e){if(e instanceof this)return e;return a.resolve(new this(i),e)},u.reject=function(e){var t=new this(i);return a.reject(t,e)},u.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var r=e.length,n=!1;if(!r)return this.resolve([]);var o=new Array(r),s=0,c=-1,l=new this(i);for(;++c<r;)u(e[c],c);return l;function u(e,i){t.resolve(e).then((function(e){o[i]=e,++s!==r||n||(n=!0,a.resolve(l,o))}),(function(e){n||(n=!0,a.reject(l,e))}))}},u.race=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var r=e.length,n=!1;if(!r)return this.resolve([]);var o=-1,s=new this(i);for(;++o<r;)c=e[o],t.resolve(c).then((function(e){n||(n=!0,a.resolve(s,e))}),(function(e){n||(n=!0,a.reject(s,e))}));var c;return s}},1441:(e,t,r)=>{"use strict";var n=r(82361).listenerCount;n=n||function(e,t){var r=e&&e._events&&e._events[t];return Array.isArray(r)?r.length:"function"==typeof r?1:0},e.exports=n},55402:e=>{var t=9007199254740991,r="[object Arguments]",n="[object Function]",i="[object GeneratorFunction]",a=/^(?:0|[1-9]\d*)$/;function o(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}var s=Object.prototype,c=s.hasOwnProperty,l=s.toString,u=s.propertyIsEnumerable,d=Math.max;function p(e,t){var n=v(e)||function(e){return function(e){return function(e){return!!e&&"object"==typeof e}(e)&&b(e)}(e)&&c.call(e,"callee")&&(!u.call(e,"callee")||l.call(e)==r)}(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],i=n.length,a=!!i;for(var o in e)!t&&!c.call(e,o)||a&&("length"==o||h(o,i))||n.push(o);return n}function f(e,t,r,n){return void 0===e||y(e,s[r])&&!c.call(n,r)?t:e}function m(e,t,r){var n=e[t];c.call(e,t)&&y(n,r)&&(void 0!==r||t in e)||(e[t]=r)}function g(e){if(!k(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t,r,n,i=(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||s,t===n),a=[];for(var o in e)("constructor"!=o||!i&&c.call(e,o))&&a.push(o);return a}function _(e,t){return t=d(void 0===t?e.length-1:t,0),function(){for(var r=arguments,n=-1,i=d(r.length-t,0),a=Array(i);++n<i;)a[n]=r[t+n];n=-1;for(var s=Array(t+1);++n<t;)s[n]=r[n];return s[t]=a,o(e,this,s)}}function h(e,r){return!!(r=null==r?t:r)&&("number"==typeof e||a.test(e))&&e>-1&&e%1==0&&e<r}function y(e,t){return e===t||e!=e&&t!=t}var v=Array.isArray;function b(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=t}(e.length)&&!function(e){var t=k(e)?l.call(e):"";return t==n||t==i}(e)}function k(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}var x,E=(x=function(e,t,r,n){!function(e,t,r,n){r||(r={});for(var i=-1,a=t.length;++i<a;){var o=t[i],s=n?n(r[o],e[o],o,r,e):void 0;m(r,o,void 0===s?e[o]:s)}}(t,function(e){return b(e)?p(e,!0):g(e)}(t),e,n)},_((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,a=n>2?t[2]:void 0;for(i=x.length>3&&"function"==typeof i?(n--,i):void 0,a&&function(e,t,r){if(!k(r))return!1;var n=typeof t;return!!("number"==n?b(r)&&h(t,r.length):"string"==n&&t in r)&&y(r[t],e)}(t[0],t[1],a)&&(i=n<3?void 0:i,n=1),e=Object(e);++r<n;){var o=t[r];o&&x(e,o,r,i)}return e}))),S=_((function(e){return e.push(void 0,f),o(E,void 0,e)}));e.exports=S},61478:e=>{var t="__lodash_hash_undefined__",r=9007199254740991,n="[object Arguments]",i="[object Function]",a="[object GeneratorFunction]",o=/^\[object .+?Constructor\]$/,s="object"==typeof global&&global&&global.Object===Object&&global,c="object"==typeof self&&self&&self.Object===Object&&self,l=s||c||Function("return this")();function u(e,t){return!!(e?e.length:0)&&function(e,t,r){if(t!=t)return function(e,t,r,n){var i=e.length,a=r+(n?1:-1);for(;n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}(e,f,r);var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,0)>-1}function d(e,t,r){for(var n=-1,i=e?e.length:0;++n<i;)if(r(t,e[n]))return!0;return!1}function p(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}function f(e){return e!=e}function m(e,t){return e.has(t)}var g,_=Array.prototype,h=Function.prototype,y=Object.prototype,v=l["__core-js_shared__"],b=(g=/[^.]+$/.exec(v&&v.keys&&v.keys.IE_PROTO||""))?"Symbol(src)_1."+g:"",k=h.toString,x=y.hasOwnProperty,E=y.toString,S=RegExp("^"+k.call(x).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=l.Symbol,w=y.propertyIsEnumerable,T=_.splice,C=D?D.isConcatSpreadable:void 0,A=Math.max,N=U(l,"Map"),P=U(Object,"create");function I(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function F(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function O(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function R(e){var t=-1,r=e?e.length:0;for(this.__data__=new O;++t<r;)this.add(e[t])}function M(e,t){for(var r,n,i=e.length;i--;)if((r=e[i][0])===(n=t)||r!=r&&n!=n)return i;return-1}function L(e,t,r,n){var i,a=-1,o=u,s=!0,c=e.length,l=[],p=t.length;if(!c)return l;r&&(t=function(e,t){for(var r=-1,n=e?e.length:0,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}(t,(i=r,function(e){return i(e)}))),n?(o=d,s=!1):t.length>=200&&(o=m,s=!1,t=new R(t));e:for(;++a<c;){var f=e[a],g=r?r(f):f;if(f=n||0!==f?f:0,s&&g==g){for(var _=p;_--;)if(t[_]===g)continue e;l.push(f)}else o(t,g,n)||l.push(f)}return l}function j(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=q),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?j(s,t-1,r,n,i):p(i,s):n||(i[i.length]=s)}return i}function B(e){if(!Y(e)||(t=e,b&&b in t))return!1;var t,r=$(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?S:o;return r.test(function(e){if(null!=e){try{return k.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}function z(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function U(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return B(r)?r:void 0}function q(e){return K(e)||function(e){return G(e)&&x.call(e,"callee")&&(!w.call(e,"callee")||E.call(e)==n)}(e)||!!(C&&e&&e[C])}I.prototype.clear=function(){this.__data__=P?P(null):{}},I.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},I.prototype.get=function(e){var r=this.__data__;if(P){var n=r[e];return n===t?void 0:n}return x.call(r,e)?r[e]:void 0},I.prototype.has=function(e){var t=this.__data__;return P?void 0!==t[e]:x.call(t,e)},I.prototype.set=function(e,r){return this.__data__[e]=P&&void 0===r?t:r,this},F.prototype.clear=function(){this.__data__=[]},F.prototype.delete=function(e){var t=this.__data__,r=M(t,e);return!(r<0)&&(r==t.length-1?t.pop():T.call(t,r,1),!0)},F.prototype.get=function(e){var t=this.__data__,r=M(t,e);return r<0?void 0:t[r][1]},F.prototype.has=function(e){return M(this.__data__,e)>-1},F.prototype.set=function(e,t){var r=this.__data__,n=M(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},O.prototype.clear=function(){this.__data__={hash:new I,map:new(N||F),string:new I}},O.prototype.delete=function(e){return z(this,e).delete(e)},O.prototype.get=function(e){return z(this,e).get(e)},O.prototype.has=function(e){return z(this,e).has(e)},O.prototype.set=function(e,t){return z(this,e).set(e,t),this},R.prototype.add=R.prototype.push=function(e){return this.__data__.set(e,t),this},R.prototype.has=function(e){return this.__data__.has(e)};var J,V,H=(J=function(e,t){return G(e)?L(e,j(t,1,G,!0)):[]},V=A(void 0===V?J.length-1:V,0),function(){for(var e=arguments,t=-1,r=A(e.length-V,0),n=Array(r);++t<r;)n[t]=e[V+t];t=-1;for(var i=Array(V+1);++t<V;)i[t]=e[t];return i[V]=n,function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(J,this,i)});var K=Array.isArray;function W(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=r}(e.length)&&!$(e)}function G(e){return function(e){return!!e&&"object"==typeof e}(e)&&W(e)}function $(e){var t=Y(e)?E.call(e):"";return t==i||t==a}function Y(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}e.exports=H},91658:e=>{var t=1/0,r="[object Symbol]",n=/[\\^$.*+?()[\]{}|]/g,i=RegExp(n.source),a="object"==typeof global&&global&&global.Object===Object&&global,o="object"==typeof self&&self&&self.Object===Object&&self,s=a||o||Function("return this")(),c=Object.prototype.toString,l=s.Symbol,u=l?l.prototype:void 0,d=u?u.toString:void 0;function p(e){if("string"==typeof e)return e;if(function(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&c.call(e)==r}(e))return d?d.call(e):"";var n=e+"";return"0"==n&&1/e==-t?"-0":n}e.exports=function(e){var t;return(e=null==(t=e)?"":p(t))&&i.test(e)?e.replace(n,"\\$&"):e}},5800:e=>{var t=9007199254740991,r="[object Arguments]",n="[object Function]",i="[object GeneratorFunction]",a="object"==typeof global&&global&&global.Object===Object&&global,o="object"==typeof self&&self&&self.Object===Object&&self,s=a||o||Function("return this")();function c(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}var l=Object.prototype,u=l.hasOwnProperty,d=l.toString,p=s.Symbol,f=l.propertyIsEnumerable,m=p?p.isConcatSpreadable:void 0;function g(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=_),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?g(s,t-1,r,n,i):c(i,s):n||(i[i.length]=s)}return i}function _(e){return h(e)||function(e){return function(e){return function(e){return!!e&&"object"==typeof e}(e)&&function(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=t}(e.length)&&!function(e){var t=function(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}(e)?d.call(e):"";return t==n||t==i}(e)}(e)}(e)&&u.call(e,"callee")&&(!f.call(e,"callee")||d.call(e)==r)}(e)||!!(m&&e&&e[m])}var h=Array.isArray;e.exports=function(e){return(e?e.length:0)?g(e,1):[]}},20276:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=1,a=2,o=1/0,s=9007199254740991,c="[object Arguments]",l="[object Array]",u="[object Boolean]",d="[object Date]",p="[object Error]",f="[object Function]",m="[object GeneratorFunction]",g="[object Map]",_="[object Number]",h="[object Object]",y="[object Promise]",v="[object RegExp]",b="[object Set]",k="[object String]",x="[object Symbol]",E="[object WeakMap]",S="[object ArrayBuffer]",D="[object DataView]",w=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,T=/^\w*$/,C=/^\./,A=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,N=/\\(\\)?/g,P=/^\[object .+?Constructor\]$/,I=/^(?:0|[1-9]\d*)$/,F={};F["[object Float32Array]"]=F["[object Float64Array]"]=F["[object Int8Array]"]=F["[object Int16Array]"]=F["[object Int32Array]"]=F["[object Uint8Array]"]=F["[object Uint8ClampedArray]"]=F["[object Uint16Array]"]=F["[object Uint32Array]"]=!0,F[c]=F[l]=F[S]=F[u]=F[D]=F[d]=F[p]=F[f]=F[g]=F[_]=F[h]=F[v]=F[b]=F[k]=F[E]=!1;var O="object"==typeof global&&global&&global.Object===Object&&global,R="object"==typeof self&&self&&self.Object===Object&&self,M=O||R||Function("return this")(),L=t&&!t.nodeType&&t,j=L&&e&&!e.nodeType&&e,B=j&&j.exports===L&&O.process,z=function(){try{return B&&B.binding("util")}catch(e){}}(),U=z&&z.isTypedArray;function q(e,t,r,n){for(var i=-1,a=e?e.length:0;++i<a;){var o=e[i];t(n,o,r(o),e)}return n}function J(e,t){for(var r=-1,n=e?e.length:0;++r<n;)if(t(e[r],r,e))return!0;return!1}function V(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}function H(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function K(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var W,G,$,Y=Array.prototype,X=Function.prototype,Q=Object.prototype,Z=M["__core-js_shared__"],ee=(W=/[^.]+$/.exec(Z&&Z.keys&&Z.keys.IE_PROTO||""))?"Symbol(src)_1."+W:"",te=X.toString,re=Q.hasOwnProperty,ne=Q.toString,ie=RegExp("^"+te.call(re).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ae=M.Symbol,oe=M.Uint8Array,se=Q.propertyIsEnumerable,ce=Y.splice,le=(G=Object.keys,$=Object,function(e){return G($(e))}),ue=He(M,"DataView"),de=He(M,"Map"),pe=He(M,"Promise"),fe=He(M,"Set"),me=He(M,"WeakMap"),ge=He(Object,"create"),_e=Ze(ue),he=Ze(de),ye=Ze(pe),ve=Ze(fe),be=Ze(me),ke=ae?ae.prototype:void 0,xe=ke?ke.valueOf:void 0,Ee=ke?ke.toString:void 0;function Se(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function De(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function we(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Te(e){var t=-1,r=e?e.length:0;for(this.__data__=new we;++t<r;)this.add(e[t])}function Ce(e){this.__data__=new De(e)}function Ae(e,t){var r=ot(e)||at(e)?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],n=r.length,i=!!n;for(var a in e)!t&&!re.call(e,a)||i&&("length"==a||We(a,n))||r.push(a);return r}function Ne(e,t){for(var r=e.length;r--;)if(it(e[r][0],t))return r;return-1}function Pe(e,t,r,n){return Oe(e,(function(e,i,a){t(n,e,r(e),a)})),n}Se.prototype.clear=function(){this.__data__=ge?ge(null):{}},Se.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},Se.prototype.get=function(e){var t=this.__data__;if(ge){var r=t[e];return r===n?void 0:r}return re.call(t,e)?t[e]:void 0},Se.prototype.has=function(e){var t=this.__data__;return ge?void 0!==t[e]:re.call(t,e)},Se.prototype.set=function(e,t){return this.__data__[e]=ge&&void 0===t?n:t,this},De.prototype.clear=function(){this.__data__=[]},De.prototype.delete=function(e){var t=this.__data__,r=Ne(t,e);return!(r<0)&&(r==t.length-1?t.pop():ce.call(t,r,1),!0)},De.prototype.get=function(e){var t=this.__data__,r=Ne(t,e);return r<0?void 0:t[r][1]},De.prototype.has=function(e){return Ne(this.__data__,e)>-1},De.prototype.set=function(e,t){var r=this.__data__,n=Ne(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},we.prototype.clear=function(){this.__data__={hash:new Se,map:new(de||De),string:new Se}},we.prototype.delete=function(e){return Ve(this,e).delete(e)},we.prototype.get=function(e){return Ve(this,e).get(e)},we.prototype.has=function(e){return Ve(this,e).has(e)},we.prototype.set=function(e,t){return Ve(this,e).set(e,t),this},Te.prototype.add=Te.prototype.push=function(e){return this.__data__.set(e,n),this},Te.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.clear=function(){this.__data__=new De},Ce.prototype.delete=function(e){return this.__data__.delete(e)},Ce.prototype.get=function(e){return this.__data__.get(e)},Ce.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.set=function(e,t){var r=this.__data__;if(r instanceof De){var n=r.__data__;if(!de||n.length<199)return n.push([e,t]),this;r=this.__data__=new we(n)}return r.set(e,t),this};var Ie,Fe,Oe=(Ie=function(e,t){return e&&Re(e,t,mt)},function(e,t){if(null==e)return e;if(!st(e))return Ie(e,t);for(var r=e.length,n=Fe?r:-1,i=Object(e);(Fe?n--:++n<r)&&!1!==t(i[n],n,i););return e}),Re=function(e){return function(t,r,n){for(var i=-1,a=Object(t),o=n(t),s=o.length;s--;){var c=o[e?s:++i];if(!1===r(a[c],c,a))break}return t}}();function Me(e,t){for(var r=0,n=(t=Ge(t,e)?[t]:qe(t)).length;null!=e&&r<n;)e=e[Qe(t[r++])];return r&&r==n?e:void 0}function Le(e,t){return null!=e&&t in Object(e)}function je(e,t,r,n,o){return e===t||(null==e||null==t||!ut(e)&&!dt(t)?e!=e&&t!=t:function(e,t,r,n,o,s){var f=ot(e),m=ot(t),y=l,E=l;f||(y=(y=Ke(e))==c?h:y);m||(E=(E=Ke(t))==c?h:E);var w=y==h&&!V(e),T=E==h&&!V(t),C=y==E;if(C&&!w)return s||(s=new Ce),f||ft(e)?Je(e,t,r,n,o,s):function(e,t,r,n,o,s,c){switch(r){case D:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case S:return!(e.byteLength!=t.byteLength||!n(new oe(e),new oe(t)));case u:case d:case _:return it(+e,+t);case p:return e.name==t.name&&e.message==t.message;case v:case k:return e==t+"";case g:var l=H;case b:var f=s&a;if(l||(l=K),e.size!=t.size&&!f)return!1;var m=c.get(e);if(m)return m==t;s|=i,c.set(e,t);var h=Je(l(e),l(t),n,o,s,c);return c.delete(e),h;case x:if(xe)return xe.call(e)==xe.call(t)}return!1}(e,t,y,r,n,o,s);if(!(o&a)){var A=w&&re.call(e,"__wrapped__"),N=T&&re.call(t,"__wrapped__");if(A||N){var P=A?e.value():e,I=N?t.value():t;return s||(s=new Ce),r(P,I,n,o,s)}}if(!C)return!1;return s||(s=new Ce),function(e,t,r,n,i,o){var s=i&a,c=mt(e),l=c.length,u=mt(t),d=u.length;if(l!=d&&!s)return!1;var p=l;for(;p--;){var f=c[p];if(!(s?f in t:re.call(t,f)))return!1}var m=o.get(e);if(m&&o.get(t))return m==t;var g=!0;o.set(e,t),o.set(t,e);var _=s;for(;++p<l;){var h=e[f=c[p]],y=t[f];if(n)var v=s?n(y,h,f,t,e,o):n(h,y,f,e,t,o);if(!(void 0===v?h===y||r(h,y,n,i,o):v)){g=!1;break}_||(_="constructor"==f)}if(g&&!_){var b=e.constructor,k=t.constructor;b==k||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof k&&k instanceof k||(g=!1)}return o.delete(e),o.delete(t),g}(e,t,r,n,o,s)}(e,t,je,r,n,o))}function Be(e){return!(!ut(e)||function(e){return!!ee&&ee in e}(e))&&(ct(e)||V(e)?ie:P).test(Ze(e))}function ze(e){return"function"==typeof e?e:null==e?gt:"object"==typeof e?ot(e)?function(e,t){if(Ge(e)&&$e(t))return Ye(Qe(e),t);return function(r){var n=function(e,t,r){var n=null==e?void 0:Me(e,t);return void 0===n?r:n}(r,e);return void 0===n&&n===t?function(e,t){return null!=e&&function(e,t,r){t=Ge(t,e)?[t]:qe(t);var n,i=-1,a=t.length;for(;++i<a;){var o=Qe(t[i]);if(!(n=null!=e&&r(e,o)))break;e=e[o]}if(n)return n;a=e?e.length:0;return!!a&<(a)&&We(o,a)&&(ot(e)||at(e))}(e,t,Le)}(r,e):je(t,n,void 0,i|a)}}(e[0],e[1]):function(e){var t=function(e){var t=mt(e),r=t.length;for(;r--;){var n=t[r],i=e[n];t[r]=[n,i,$e(i)]}return t}(e);if(1==t.length&&t[0][2])return Ye(t[0][0],t[0][1]);return function(r){return r===e||function(e,t,r,n){var o=r.length,s=o,c=!n;if(null==e)return!s;for(e=Object(e);o--;){var l=r[o];if(c&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++o<s;){var u=(l=r[o])[0],d=e[u],p=l[1];if(c&&l[2]){if(void 0===d&&!(u in e))return!1}else{var f=new Ce;if(n)var m=n(d,p,u,e,t,f);if(!(void 0===m?je(p,d,n,i|a,f):m))return!1}}return!0}(r,e,t)}}(e):Ge(t=e)?(r=Qe(t),function(e){return null==e?void 0:e[r]}):function(e){return function(t){return Me(t,e)}}(t);var t,r}function Ue(e){if(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||Q,t!==n)return le(e);var t,r,n,i=[];for(var a in Object(e))re.call(e,a)&&"constructor"!=a&&i.push(a);return i}function qe(e){return ot(e)?e:Xe(e)}function Je(e,t,r,n,o,s){var c=o&a,l=e.length,u=t.length;if(l!=u&&!(c&&u>l))return!1;var d=s.get(e);if(d&&s.get(t))return d==t;var p=-1,f=!0,m=o&i?new Te:void 0;for(s.set(e,t),s.set(t,e);++p<l;){var g=e[p],_=t[p];if(n)var h=c?n(_,g,p,t,e,s):n(g,_,p,e,t,s);if(void 0!==h){if(h)continue;f=!1;break}if(m){if(!J(t,(function(e,t){if(!m.has(t)&&(g===e||r(g,e,n,o,s)))return m.add(t)}))){f=!1;break}}else if(g!==_&&!r(g,_,n,o,s)){f=!1;break}}return s.delete(e),s.delete(t),f}function Ve(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function He(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Be(r)?r:void 0}var Ke=function(e){return ne.call(e)};function We(e,t){return!!(t=null==t?s:t)&&("number"==typeof e||I.test(e))&&e>-1&&e%1==0&&e<t}function Ge(e,t){if(ot(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!pt(e))||(T.test(e)||!w.test(e)||null!=t&&e in Object(t))}function $e(e){return e==e&&!ut(e)}function Ye(e,t){return function(r){return null!=r&&(r[e]===t&&(void 0!==t||e in Object(r)))}}(ue&&Ke(new ue(new ArrayBuffer(1)))!=D||de&&Ke(new de)!=g||pe&&Ke(pe.resolve())!=y||fe&&Ke(new fe)!=b||me&&Ke(new me)!=E)&&(Ke=function(e){var t=ne.call(e),r=t==h?e.constructor:void 0,n=r?Ze(r):void 0;if(n)switch(n){case _e:return D;case he:return g;case ye:return y;case ve:return b;case be:return E}return t});var Xe=nt((function(e){var t;e=null==(t=e)?"":function(e){if("string"==typeof e)return e;if(pt(e))return Ee?Ee.call(e):"";var t=e+"";return"0"==t&&1/e==-o?"-0":t}(t);var r=[];return C.test(e)&&r.push(""),e.replace(A,(function(e,t,n,i){r.push(n?i.replace(N,"$1"):t||e)})),r}));function Qe(e){if("string"==typeof e||pt(e))return e;var t=e+"";return"0"==t&&1/e==-o?"-0":t}function Ze(e){if(null!=e){try{return te.call(e)}catch(e){}try{return e+""}catch(e){}}return""}var et,tt,rt=(et=function(e,t,r){re.call(e,r)?e[r].push(t):e[r]=[t]},function(e,t){var r=ot(e)?q:Pe,n=tt?tt():{};return r(e,et,ze(t),n)});function nt(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new TypeError("Expected a function");var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var o=e.apply(this,n);return r.cache=a.set(i,o),o};return r.cache=new(nt.Cache||we),r}function it(e,t){return e===t||e!=e&&t!=t}function at(e){return function(e){return dt(e)&&st(e)}(e)&&re.call(e,"callee")&&(!se.call(e,"callee")||ne.call(e)==c)}nt.Cache=we;var ot=Array.isArray;function st(e){return null!=e&<(e.length)&&!ct(e)}function ct(e){var t=ut(e)?ne.call(e):"";return t==f||t==m}function lt(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=s}function ut(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function dt(e){return!!e&&"object"==typeof e}function pt(e){return"symbol"==typeof e||dt(e)&&ne.call(e)==x}var ft=U?function(e){return function(t){return e(t)}}(U):function(e){return dt(e)&<(e.length)&&!!F[ne.call(e)]};function mt(e){return st(e)?Ae(e):Ue(e)}function gt(e){return e}e.exports=rt},48094:e=>{var t=Object.prototype.toString;e.exports=function(e){return!0===e||!1===e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Boolean]"==t.call(e)}},72307:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=1,a=2,o=9007199254740991,s="[object Arguments]",c="[object Array]",l="[object AsyncFunction]",u="[object Boolean]",d="[object Date]",p="[object Error]",f="[object Function]",m="[object GeneratorFunction]",g="[object Map]",_="[object Number]",h="[object Null]",y="[object Object]",v="[object Promise]",b="[object Proxy]",k="[object RegExp]",x="[object Set]",E="[object String]",S="[object Symbol]",D="[object Undefined]",w="[object WeakMap]",T="[object ArrayBuffer]",C="[object DataView]",A=/^\[object .+?Constructor\]$/,N=/^(?:0|[1-9]\d*)$/,P={};P["[object Float32Array]"]=P["[object Float64Array]"]=P["[object Int8Array]"]=P["[object Int16Array]"]=P["[object Int32Array]"]=P["[object Uint8Array]"]=P["[object Uint8ClampedArray]"]=P["[object Uint16Array]"]=P["[object Uint32Array]"]=!0,P[s]=P[c]=P[T]=P[u]=P[C]=P[d]=P[p]=P[f]=P[g]=P[_]=P[y]=P[k]=P[x]=P[E]=P[w]=!1;var I="object"==typeof global&&global&&global.Object===Object&&global,F="object"==typeof self&&self&&self.Object===Object&&self,O=I||F||Function("return this")(),R=t&&!t.nodeType&&t,M=R&&e&&!e.nodeType&&e,L=M&&M.exports===R,j=L&&I.process,B=function(){try{return j&&j.binding&&j.binding("util")}catch(e){}}(),z=B&&B.isTypedArray;function U(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}function q(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function J(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var V,H,K,W=Array.prototype,G=Function.prototype,$=Object.prototype,Y=O["__core-js_shared__"],X=G.toString,Q=$.hasOwnProperty,Z=(V=/[^.]+$/.exec(Y&&Y.keys&&Y.keys.IE_PROTO||""))?"Symbol(src)_1."+V:"",ee=$.toString,te=RegExp("^"+X.call(Q).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),re=L?O.Buffer:void 0,ne=O.Symbol,ie=O.Uint8Array,ae=$.propertyIsEnumerable,oe=W.splice,se=ne?ne.toStringTag:void 0,ce=Object.getOwnPropertySymbols,le=re?re.isBuffer:void 0,ue=(H=Object.keys,K=Object,function(e){return H(K(e))}),de=Be(O,"DataView"),pe=Be(O,"Map"),fe=Be(O,"Promise"),me=Be(O,"Set"),ge=Be(O,"WeakMap"),_e=Be(Object,"create"),he=Je(de),ye=Je(pe),ve=Je(fe),be=Je(me),ke=Je(ge),xe=ne?ne.prototype:void 0,Ee=xe?xe.valueOf:void 0;function Se(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function De(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function we(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Te(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new we;++t<r;)this.add(e[t])}function Ce(e){var t=this.__data__=new De(e);this.size=t.size}function Ae(e,t){var r=Ke(e),n=!r&&He(e),i=!r&&!n&&We(e),a=!r&&!n&&!i&&Qe(e),o=r||n||i||a,s=o?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],c=s.length;for(var l in e)!t&&!Q.call(e,l)||o&&("length"==l||i&&("offset"==l||"parent"==l)||a&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||qe(l,c))||s.push(l);return s}function Ne(e,t){for(var r=e.length;r--;)if(Ve(e[r][0],t))return r;return-1}function Pe(e){return null==e?void 0===e?D:h:se&&se in Object(e)?function(e){var t=Q.call(e,se),r=e[se];try{e[se]=void 0;var n=!0}catch(e){}var i=ee.call(e);n&&(t?e[se]=r:delete e[se]);return i}(e):function(e){return ee.call(e)}(e)}function Ie(e){return Xe(e)&&Pe(e)==s}function Fe(e,t,r,n,o){return e===t||(null==e||null==t||!Xe(e)&&!Xe(t)?e!=e&&t!=t:function(e,t,r,n,o,l){var f=Ke(e),m=Ke(t),h=f?c:Ue(e),v=m?c:Ue(t),b=(h=h==s?y:h)==y,D=(v=v==s?y:v)==y,w=h==v;if(w&&We(e)){if(!We(t))return!1;f=!0,b=!1}if(w&&!b)return l||(l=new Ce),f||Qe(e)?Me(e,t,r,n,o,l):function(e,t,r,n,o,s,c){switch(r){case C:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case T:return!(e.byteLength!=t.byteLength||!s(new ie(e),new ie(t)));case u:case d:case _:return Ve(+e,+t);case p:return e.name==t.name&&e.message==t.message;case k:case E:return e==t+"";case g:var l=q;case x:var f=n&i;if(l||(l=J),e.size!=t.size&&!f)return!1;var m=c.get(e);if(m)return m==t;n|=a,c.set(e,t);var h=Me(l(e),l(t),n,o,s,c);return c.delete(e),h;case S:if(Ee)return Ee.call(e)==Ee.call(t)}return!1}(e,t,h,r,n,o,l);if(!(r&i)){var A=b&&Q.call(e,"__wrapped__"),N=D&&Q.call(t,"__wrapped__");if(A||N){var P=A?e.value():e,I=N?t.value():t;return l||(l=new Ce),o(P,I,r,n,l)}}if(!w)return!1;return l||(l=new Ce),function(e,t,r,n,a,o){var s=r&i,c=Le(e),l=c.length,u=Le(t),d=u.length;if(l!=d&&!s)return!1;var p=l;for(;p--;){var f=c[p];if(!(s?f in t:Q.call(t,f)))return!1}var m=o.get(e);if(m&&o.get(t))return m==t;var g=!0;o.set(e,t),o.set(t,e);var _=s;for(;++p<l;){var h=e[f=c[p]],y=t[f];if(n)var v=s?n(y,h,f,t,e,o):n(h,y,f,e,t,o);if(!(void 0===v?h===y||a(h,y,r,n,o):v)){g=!1;break}_||(_="constructor"==f)}if(g&&!_){var b=e.constructor,k=t.constructor;b==k||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof k&&k instanceof k||(g=!1)}return o.delete(e),o.delete(t),g}(e,t,r,n,o,l)}(e,t,r,n,Fe,o))}function Oe(e){return!(!Ye(e)||function(e){return!!Z&&Z in e}(e))&&(Ge(e)?te:A).test(Je(e))}function Re(e){if(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||$,t!==n)return ue(e);var t,r,n,i=[];for(var a in Object(e))Q.call(e,a)&&"constructor"!=a&&i.push(a);return i}function Me(e,t,r,n,o,s){var c=r&i,l=e.length,u=t.length;if(l!=u&&!(c&&u>l))return!1;var d=s.get(e);if(d&&s.get(t))return d==t;var p=-1,f=!0,m=r&a?new Te:void 0;for(s.set(e,t),s.set(t,e);++p<l;){var g=e[p],_=t[p];if(n)var h=c?n(_,g,p,t,e,s):n(g,_,p,e,t,s);if(void 0!==h){if(h)continue;f=!1;break}if(m){if(!U(t,(function(e,t){if(i=t,!m.has(i)&&(g===e||o(g,e,r,n,s)))return m.push(t);var i}))){f=!1;break}}else if(g!==_&&!o(g,_,r,n,s)){f=!1;break}}return s.delete(e),s.delete(t),f}function Le(e){return function(e,t,r){var n=t(e);return Ke(e)?n:function(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}(n,r(e))}(e,Ze,ze)}function je(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function Be(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Oe(r)?r:void 0}Se.prototype.clear=function(){this.__data__=_e?_e(null):{},this.size=0},Se.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Se.prototype.get=function(e){var t=this.__data__;if(_e){var r=t[e];return r===n?void 0:r}return Q.call(t,e)?t[e]:void 0},Se.prototype.has=function(e){var t=this.__data__;return _e?void 0!==t[e]:Q.call(t,e)},Se.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=_e&&void 0===t?n:t,this},De.prototype.clear=function(){this.__data__=[],this.size=0},De.prototype.delete=function(e){var t=this.__data__,r=Ne(t,e);return!(r<0)&&(r==t.length-1?t.pop():oe.call(t,r,1),--this.size,!0)},De.prototype.get=function(e){var t=this.__data__,r=Ne(t,e);return r<0?void 0:t[r][1]},De.prototype.has=function(e){return Ne(this.__data__,e)>-1},De.prototype.set=function(e,t){var r=this.__data__,n=Ne(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},we.prototype.clear=function(){this.size=0,this.__data__={hash:new Se,map:new(pe||De),string:new Se}},we.prototype.delete=function(e){var t=je(this,e).delete(e);return this.size-=t?1:0,t},we.prototype.get=function(e){return je(this,e).get(e)},we.prototype.has=function(e){return je(this,e).has(e)},we.prototype.set=function(e,t){var r=je(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Te.prototype.add=Te.prototype.push=function(e){return this.__data__.set(e,n),this},Te.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.clear=function(){this.__data__=new De,this.size=0},Ce.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Ce.prototype.get=function(e){return this.__data__.get(e)},Ce.prototype.has=function(e){return this.__data__.has(e)},Ce.prototype.set=function(e,t){var r=this.__data__;if(r instanceof De){var n=r.__data__;if(!pe||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new we(n)}return r.set(e,t),this.size=r.size,this};var ze=ce?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var o=e[r];t(o,r,e)&&(a[i++]=o)}return a}(ce(e),(function(t){return ae.call(e,t)})))}:function(){return[]},Ue=Pe;function qe(e,t){return!!(t=null==t?o:t)&&("number"==typeof e||N.test(e))&&e>-1&&e%1==0&&e<t}function Je(e){if(null!=e){try{return X.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ve(e,t){return e===t||e!=e&&t!=t}(de&&Ue(new de(new ArrayBuffer(1)))!=C||pe&&Ue(new pe)!=g||fe&&Ue(fe.resolve())!=v||me&&Ue(new me)!=x||ge&&Ue(new ge)!=w)&&(Ue=function(e){var t=Pe(e),r=t==y?e.constructor:void 0,n=r?Je(r):"";if(n)switch(n){case he:return C;case ye:return g;case ve:return v;case be:return x;case ke:return w}return t});var He=Ie(function(){return arguments}())?Ie:function(e){return Xe(e)&&Q.call(e,"callee")&&!ae.call(e,"callee")},Ke=Array.isArray;var We=le||function(){return!1};function Ge(e){if(!Ye(e))return!1;var t=Pe(e);return t==f||t==m||t==l||t==b}function $e(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=o}function Ye(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Xe(e){return null!=e&&"object"==typeof e}var Qe=z?function(e){return function(t){return e(t)}}(z):function(e){return Xe(e)&&$e(e.length)&&!!P[Pe(e)]};function Ze(e){return null!=(t=e)&&$e(t.length)&&!Ge(t)?Ae(e):Re(e);var t}e.exports=function(e,t){return Fe(e,t)}},98423:e=>{var t="[object Null]",r="[object Undefined]",n="object"==typeof global&&global&&global.Object===Object&&global,i="object"==typeof self&&self&&self.Object===Object&&self,a=n||i||Function("return this")(),o=Object.prototype,s=o.hasOwnProperty,c=o.toString,l=a.Symbol,u=l?l.toStringTag:void 0;function d(e){return null==e?void 0===e?r:t:u&&u in Object(e)?function(e){var t=s.call(e,u),r=e[u];try{e[u]=void 0;var n=!0}catch(e){}var i=c.call(e);n&&(t?e[u]=r:delete e[u]);return i}(e):function(e){return c.call(e)}(e)}e.exports=function(e){if(!function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}(e))return!1;var t=d(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},59722:e=>{e.exports=function(e){return null==e}},8146:e=>{var t,r,n=Function.prototype,i=Object.prototype,a=n.toString,o=i.hasOwnProperty,s=a.call(Object),c=i.toString,l=(t=Object.getPrototypeOf,r=Object,function(e){return t(r(e))});e.exports=function(e){if(!function(e){return!!e&&"object"==typeof e}(e)||"[object Object]"!=c.call(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e))return!1;var t=l(e);if(null===t)return!0;var r=o.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&a.call(r)==s}},28801:e=>{e.exports=function(e){return void 0===e}},96744:e=>{var t="__lodash_hash_undefined__",r=9007199254740991,n="[object Arguments]",i="[object Function]",a="[object GeneratorFunction]",o=/^\[object .+?Constructor\]$/,s="object"==typeof global&&global&&global.Object===Object&&global,c="object"==typeof self&&self&&self.Object===Object&&self,l=s||c||Function("return this")();function u(e,t){return!!(e?e.length:0)&&function(e,t,r){if(t!=t)return function(e,t,r,n){var i=e.length,a=r+(n?1:-1);for(;n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}(e,f,r);var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,0)>-1}function d(e,t,r){for(var n=-1,i=e?e.length:0;++n<i;)if(r(t,e[n]))return!0;return!1}function p(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}function f(e){return e!=e}function m(e,t){return e.has(t)}function g(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var _,h=Array.prototype,y=Function.prototype,v=Object.prototype,b=l["__core-js_shared__"],k=(_=/[^.]+$/.exec(b&&b.keys&&b.keys.IE_PROTO||""))?"Symbol(src)_1."+_:"",x=y.toString,E=v.hasOwnProperty,S=v.toString,D=RegExp("^"+x.call(E).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),w=l.Symbol,T=v.propertyIsEnumerable,C=h.splice,A=w?w.isConcatSpreadable:void 0,N=Math.max,P=J(l,"Map"),I=J(l,"Set"),F=J(Object,"create");function O(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function R(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function M(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function L(e){var t=-1,r=e?e.length:0;for(this.__data__=new M;++t<r;)this.add(e[t])}function j(e,t){for(var r,n,i=e.length;i--;)if((r=e[i][0])===(n=t)||r!=r&&n!=n)return i;return-1}function B(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=V),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?B(s,t-1,r,n,i):p(i,s):n||(i[i.length]=s)}return i}function z(e){if(!Q(e)||(t=e,k&&k in t))return!1;var t,r=X(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?D:o;return r.test(function(e){if(null!=e){try{return x.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}O.prototype.clear=function(){this.__data__=F?F(null):{}},O.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},O.prototype.get=function(e){var r=this.__data__;if(F){var n=r[e];return n===t?void 0:n}return E.call(r,e)?r[e]:void 0},O.prototype.has=function(e){var t=this.__data__;return F?void 0!==t[e]:E.call(t,e)},O.prototype.set=function(e,r){return this.__data__[e]=F&&void 0===r?t:r,this},R.prototype.clear=function(){this.__data__=[]},R.prototype.delete=function(e){var t=this.__data__,r=j(t,e);return!(r<0)&&(r==t.length-1?t.pop():C.call(t,r,1),!0)},R.prototype.get=function(e){var t=this.__data__,r=j(t,e);return r<0?void 0:t[r][1]},R.prototype.has=function(e){return j(this.__data__,e)>-1},R.prototype.set=function(e,t){var r=this.__data__,n=j(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},M.prototype.clear=function(){this.__data__={hash:new O,map:new(P||R),string:new O}},M.prototype.delete=function(e){return q(this,e).delete(e)},M.prototype.get=function(e){return q(this,e).get(e)},M.prototype.has=function(e){return q(this,e).has(e)},M.prototype.set=function(e,t){return q(this,e).set(e,t),this},L.prototype.add=L.prototype.push=function(e){return this.__data__.set(e,t),this},L.prototype.has=function(e){return this.__data__.has(e)};var U=I&&1/g(new I([,-0]))[1]==1/0?function(e){return new I(e)}:function(){};function q(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function J(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return z(r)?r:void 0}function V(e){return G(e)||function(e){return Y(e)&&E.call(e,"callee")&&(!T.call(e,"callee")||S.call(e)==n)}(e)||!!(A&&e&&e[A])}var H,K,W=(H=function(e){return function(e,t,r){var n=-1,i=u,a=e.length,o=!0,s=[],c=s;if(r)o=!1,i=d;else if(a>=200){var l=t?null:U(e);if(l)return g(l);o=!1,i=m,c=new L}else c=t?[]:s;e:for(;++n<a;){var p=e[n],f=t?t(p):p;if(p=r||0!==p?p:0,o&&f==f){for(var _=c.length;_--;)if(c[_]===f)continue e;t&&c.push(f),s.push(p)}else i(c,f,r)||(c!==s&&c.push(f),s.push(p))}return s}(B(e,1,Y,!0))},K=N(void 0===K?H.length-1:K,0),function(){for(var e=arguments,t=-1,r=N(e.length-K,0),n=Array(r);++t<r;)n[t]=e[K+t];t=-1;for(var i=Array(K+1);++t<K;)i[t]=e[t];return i[K]=n,function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}(H,this,i)});var G=Array.isArray;function $(e){return null!=e&&function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=r}(e.length)&&!X(e)}function Y(e){return function(e){return!!e&&"object"==typeof e}(e)&&$(e)}function X(e){var t=Q(e)?S.call(e):"";return t==i||t==a}function Q(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}e.exports=W},97644:e=>{var t=200,r="__lodash_hash_undefined__",n="[object Function]",i="[object GeneratorFunction]",a=/^\[object .+?Constructor\]$/,o="object"==typeof global&&global&&global.Object===Object&&global,s="object"==typeof self&&self&&self.Object===Object&&self,c=o||s||Function("return this")();function l(e,t){return!!(e?e.length:0)&&function(e,t,r){if(t!=t)return function(e,t,r,n){var i=e.length,a=r+(n?1:-1);for(;n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}(e,d,r);var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,0)>-1}function u(e,t,r){for(var n=-1,i=e?e.length:0;++n<i;)if(r(t,e[n]))return!0;return!1}function d(e){return e!=e}function p(e,t){return e.has(t)}function f(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var m,g=Array.prototype,_=Function.prototype,h=Object.prototype,y=c["__core-js_shared__"],v=(m=/[^.]+$/.exec(y&&y.keys&&y.keys.IE_PROTO||""))?"Symbol(src)_1."+m:"",b=_.toString,k=h.hasOwnProperty,x=h.toString,E=RegExp("^"+b.call(k).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),S=g.splice,D=M(c,"Map"),w=M(c,"Set"),T=M(Object,"create");function C(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function A(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function N(e){var t=-1,r=e?e.length:0;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function P(e){var t=-1,r=e?e.length:0;for(this.__data__=new N;++t<r;)this.add(e[t])}function I(e,t){for(var r,n,i=e.length;i--;)if((r=e[i][0])===(n=t)||r!=r&&n!=n)return i;return-1}function F(e){if(!L(e)||(t=e,v&&v in t))return!1;var t,r=function(e){var t=L(e)?x.call(e):"";return t==n||t==i}(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?E:a;return r.test(function(e){if(null!=e){try{return b.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}C.prototype.clear=function(){this.__data__=T?T(null):{}},C.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},C.prototype.get=function(e){var t=this.__data__;if(T){var n=t[e];return n===r?void 0:n}return k.call(t,e)?t[e]:void 0},C.prototype.has=function(e){var t=this.__data__;return T?void 0!==t[e]:k.call(t,e)},C.prototype.set=function(e,t){return this.__data__[e]=T&&void 0===t?r:t,this},A.prototype.clear=function(){this.__data__=[]},A.prototype.delete=function(e){var t=this.__data__,r=I(t,e);return!(r<0)&&(r==t.length-1?t.pop():S.call(t,r,1),!0)},A.prototype.get=function(e){var t=this.__data__,r=I(t,e);return r<0?void 0:t[r][1]},A.prototype.has=function(e){return I(this.__data__,e)>-1},A.prototype.set=function(e,t){var r=this.__data__,n=I(r,e);return n<0?r.push([e,t]):r[n][1]=t,this},N.prototype.clear=function(){this.__data__={hash:new C,map:new(D||A),string:new C}},N.prototype.delete=function(e){return R(this,e).delete(e)},N.prototype.get=function(e){return R(this,e).get(e)},N.prototype.has=function(e){return R(this,e).has(e)},N.prototype.set=function(e,t){return R(this,e).set(e,t),this},P.prototype.add=P.prototype.push=function(e){return this.__data__.set(e,r),this},P.prototype.has=function(e){return this.__data__.has(e)};var O=w&&1/f(new w([,-0]))[1]==1/0?function(e){return new w(e)}:function(){};function R(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function M(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return F(r)?r:void 0}function L(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}e.exports=function(e){return e&&e.length?function(e,r,n){var i=-1,a=l,o=e.length,s=!0,c=[],d=c;if(n)s=!1,a=u;else if(o>=t){var m=r?null:O(e);if(m)return f(m);s=!1,a=p,d=new P}else d=r?[]:c;e:for(;++i<o;){var g=e[i],_=r?r(g):g;if(g=n||0!==g?g:0,s&&_==_){for(var h=d.length;h--;)if(d[h]===_)continue e;r&&d.push(_),c.push(g)}else a(d,_,n)||(d!==c&&d.push(_),c.push(g))}return c}(e):[]}},96486:function(e,t,r){var n; -/** - * @license - * Lodash <https://lodash.com/> - * Copyright OpenJS Foundation and other contributors <https://openjsf.org/> - * Released under MIT license <https://lodash.com/license> - * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> - * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */e=r.nmd(e),function(){var i,a="Expected a function",o="__lodash_hash_undefined__",s="__lodash_placeholder__",c=16,l=32,u=64,d=128,p=256,f=1/0,m=9007199254740991,g=NaN,_=4294967295,h=[["ary",d],["bind",1],["bindKey",2],["curry",8],["curryRight",c],["flip",512],["partial",l],["partialRight",u],["rearg",p]],y="[object Arguments]",v="[object Array]",b="[object Boolean]",k="[object Date]",x="[object Error]",E="[object Function]",S="[object GeneratorFunction]",D="[object Map]",w="[object Number]",T="[object Object]",C="[object Promise]",A="[object RegExp]",N="[object Set]",P="[object String]",I="[object Symbol]",F="[object WeakMap]",O="[object ArrayBuffer]",R="[object DataView]",M="[object Float32Array]",L="[object Float64Array]",j="[object Int8Array]",B="[object Int16Array]",z="[object Int32Array]",U="[object Uint8Array]",q="[object Uint8ClampedArray]",J="[object Uint16Array]",V="[object Uint32Array]",H=/\b__p \+= '';/g,K=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,G=/&(?:amp|lt|gt|quot|#39);/g,$=/[&<>"']/g,Y=RegExp(G.source),X=RegExp($.source),Q=/<%-([\s\S]+?)%>/g,Z=/<%([\s\S]+?)%>/g,ee=/<%=([\s\S]+?)%>/g,te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,re=/^\w*$/,ne=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,ae=RegExp(ie.source),oe=/^\s+/,se=/\s/,ce=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,le=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,de=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,pe=/[()=,{}\[\]\/\s]/,fe=/\\(\\)?/g,me=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ge=/\w*$/,_e=/^[-+]0x[0-9a-f]+$/i,he=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,ve=/^0o[0-7]+$/i,be=/^(?:0|[1-9]\d*)$/,ke=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,xe=/($^)/,Ee=/['\n\r\u2028\u2029\\]/g,Se="\\ud800-\\udfff",De="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",we="\\u2700-\\u27bf",Te="a-z\\xdf-\\xf6\\xf8-\\xff",Ce="A-Z\\xc0-\\xd6\\xd8-\\xde",Ae="\\ufe0e\\ufe0f",Ne="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Pe="['’]",Ie="["+Se+"]",Fe="["+Ne+"]",Oe="["+De+"]",Re="\\d+",Me="["+we+"]",Le="["+Te+"]",je="[^"+Se+Ne+Re+we+Te+Ce+"]",Be="\\ud83c[\\udffb-\\udfff]",ze="[^"+Se+"]",Ue="(?:\\ud83c[\\udde6-\\uddff]){2}",qe="[\\ud800-\\udbff][\\udc00-\\udfff]",Je="["+Ce+"]",Ve="\\u200d",He="(?:"+Le+"|"+je+")",Ke="(?:"+Je+"|"+je+")",We="(?:['’](?:d|ll|m|re|s|t|ve))?",Ge="(?:['’](?:D|LL|M|RE|S|T|VE))?",$e="(?:"+Oe+"|"+Be+")"+"?",Ye="["+Ae+"]?",Xe=Ye+$e+("(?:"+Ve+"(?:"+[ze,Ue,qe].join("|")+")"+Ye+$e+")*"),Qe="(?:"+[Me,Ue,qe].join("|")+")"+Xe,Ze="(?:"+[ze+Oe+"?",Oe,Ue,qe,Ie].join("|")+")",et=RegExp(Pe,"g"),tt=RegExp(Oe,"g"),rt=RegExp(Be+"(?="+Be+")|"+Ze+Xe,"g"),nt=RegExp([Je+"?"+Le+"+"+We+"(?="+[Fe,Je,"$"].join("|")+")",Ke+"+"+Ge+"(?="+[Fe,Je+He,"$"].join("|")+")",Je+"?"+He+"+"+We,Je+"+"+Ge,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Re,Qe].join("|"),"g"),it=RegExp("["+Ve+Se+De+Ae+"]"),at=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,ot=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],st=-1,ct={};ct[M]=ct[L]=ct[j]=ct[B]=ct[z]=ct[U]=ct[q]=ct[J]=ct[V]=!0,ct[y]=ct[v]=ct[O]=ct[b]=ct[R]=ct[k]=ct[x]=ct[E]=ct[D]=ct[w]=ct[T]=ct[A]=ct[N]=ct[P]=ct[F]=!1;var lt={};lt[y]=lt[v]=lt[O]=lt[R]=lt[b]=lt[k]=lt[M]=lt[L]=lt[j]=lt[B]=lt[z]=lt[D]=lt[w]=lt[T]=lt[A]=lt[N]=lt[P]=lt[I]=lt[U]=lt[q]=lt[J]=lt[V]=!0,lt[x]=lt[E]=lt[F]=!1;var ut={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},dt=parseFloat,pt=parseInt,ft="object"==typeof global&&global&&global.Object===Object&&global,mt="object"==typeof self&&self&&self.Object===Object&&self,gt=ft||mt||Function("return this")(),_t=t&&!t.nodeType&&t,ht=_t&&e&&!e.nodeType&&e,yt=ht&&ht.exports===_t,vt=yt&&ft.process,bt=function(){try{var e=ht&&ht.require&&ht.require("util").types;return e||vt&&vt.binding&&vt.binding("util")}catch(e){}}(),kt=bt&&bt.isArrayBuffer,xt=bt&&bt.isDate,Et=bt&&bt.isMap,St=bt&&bt.isRegExp,Dt=bt&&bt.isSet,wt=bt&&bt.isTypedArray;function Tt(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function Ct(e,t,r,n){for(var i=-1,a=null==e?0:e.length;++i<a;){var o=e[i];t(n,o,r(o),e)}return n}function At(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}function Nt(e,t){for(var r=null==e?0:e.length;r--&&!1!==t(e[r],r,e););return e}function Pt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(!t(e[r],r,e))return!1;return!0}function It(e,t){for(var r=-1,n=null==e?0:e.length,i=0,a=[];++r<n;){var o=e[r];t(o,r,e)&&(a[i++]=o)}return a}function Ft(e,t){return!!(null==e?0:e.length)&&Jt(e,t,0)>-1}function Ot(e,t,r){for(var n=-1,i=null==e?0:e.length;++n<i;)if(r(t,e[n]))return!0;return!1}function Rt(e,t){for(var r=-1,n=null==e?0:e.length,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}function Mt(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}function Lt(e,t,r,n){var i=-1,a=null==e?0:e.length;for(n&&a&&(r=e[++i]);++i<a;)r=t(r,e[i],i,e);return r}function jt(e,t,r,n){var i=null==e?0:e.length;for(n&&i&&(r=e[--i]);i--;)r=t(r,e[i],i,e);return r}function Bt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}var zt=Wt("length");function Ut(e,t,r){var n;return r(e,(function(e,r,i){if(t(e,r,i))return n=r,!1})),n}function qt(e,t,r,n){for(var i=e.length,a=r+(n?1:-1);n?a--:++a<i;)if(t(e[a],a,e))return a;return-1}function Jt(e,t,r){return t==t?function(e,t,r){var n=r-1,i=e.length;for(;++n<i;)if(e[n]===t)return n;return-1}(e,t,r):qt(e,Ht,r)}function Vt(e,t,r,n){for(var i=r-1,a=e.length;++i<a;)if(n(e[i],t))return i;return-1}function Ht(e){return e!=e}function Kt(e,t){var r=null==e?0:e.length;return r?Yt(e,t)/r:g}function Wt(e){return function(t){return null==t?i:t[e]}}function Gt(e){return function(t){return null==e?i:e[t]}}function $t(e,t,r,n,i){return i(e,(function(e,i,a){r=n?(n=!1,e):t(r,e,i,a)})),r}function Yt(e,t){for(var r,n=-1,a=e.length;++n<a;){var o=t(e[n]);o!==i&&(r=r===i?o:r+o)}return r}function Xt(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}function Qt(e){return e?e.slice(0,gr(e)+1).replace(oe,""):e}function Zt(e){return function(t){return e(t)}}function er(e,t){return Rt(t,(function(t){return e[t]}))}function tr(e,t){return e.has(t)}function rr(e,t){for(var r=-1,n=e.length;++r<n&&Jt(t,e[r],0)>-1;);return r}function nr(e,t){for(var r=e.length;r--&&Jt(t,e[r],0)>-1;);return r}var ir=Gt({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),ar=Gt({"&":"&","<":"<",">":">",'"':""","'":"'"});function or(e){return"\\"+ut[e]}function sr(e){return it.test(e)}function cr(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function lr(e,t){return function(r){return e(t(r))}}function ur(e,t){for(var r=-1,n=e.length,i=0,a=[];++r<n;){var o=e[r];o!==t&&o!==s||(e[r]=s,a[i++]=r)}return a}function dr(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}function pr(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=[e,e]})),r}function fr(e){return sr(e)?function(e){var t=rt.lastIndex=0;for(;rt.test(e);)++t;return t}(e):zt(e)}function mr(e){return sr(e)?function(e){return e.match(rt)||[]}(e):function(e){return e.split("")}(e)}function gr(e){for(var t=e.length;t--&&se.test(e.charAt(t)););return t}var _r=Gt({"&":"&","<":"<",">":">",""":'"',"'":"'"});var hr=function e(t){var r,n=(t=null==t?gt:hr.defaults(gt.Object(),t,hr.pick(gt,ot))).Array,se=t.Date,Se=t.Error,De=t.Function,we=t.Math,Te=t.Object,Ce=t.RegExp,Ae=t.String,Ne=t.TypeError,Pe=n.prototype,Ie=De.prototype,Fe=Te.prototype,Oe=t["__core-js_shared__"],Re=Ie.toString,Me=Fe.hasOwnProperty,Le=0,je=(r=/[^.]+$/.exec(Oe&&Oe.keys&&Oe.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"",Be=Fe.toString,ze=Re.call(Te),Ue=gt._,qe=Ce("^"+Re.call(Me).replace(ie,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Je=yt?t.Buffer:i,Ve=t.Symbol,He=t.Uint8Array,Ke=Je?Je.allocUnsafe:i,We=lr(Te.getPrototypeOf,Te),Ge=Te.create,$e=Fe.propertyIsEnumerable,Ye=Pe.splice,Xe=Ve?Ve.isConcatSpreadable:i,Qe=Ve?Ve.iterator:i,Ze=Ve?Ve.toStringTag:i,rt=function(){try{var e=pa(Te,"defineProperty");return e({},"",{}),e}catch(e){}}(),it=t.clearTimeout!==gt.clearTimeout&&t.clearTimeout,ut=se&&se.now!==gt.Date.now&&se.now,ft=t.setTimeout!==gt.setTimeout&&t.setTimeout,mt=we.ceil,_t=we.floor,ht=Te.getOwnPropertySymbols,vt=Je?Je.isBuffer:i,bt=t.isFinite,zt=Pe.join,Gt=lr(Te.keys,Te),yr=we.max,vr=we.min,br=se.now,kr=t.parseInt,xr=we.random,Er=Pe.reverse,Sr=pa(t,"DataView"),Dr=pa(t,"Map"),wr=pa(t,"Promise"),Tr=pa(t,"Set"),Cr=pa(t,"WeakMap"),Ar=pa(Te,"create"),Nr=Cr&&new Cr,Pr={},Ir=ja(Sr),Fr=ja(Dr),Or=ja(wr),Rr=ja(Tr),Mr=ja(Cr),Lr=Ve?Ve.prototype:i,jr=Lr?Lr.valueOf:i,Br=Lr?Lr.toString:i;function zr(e){if(rs(e)&&!Ho(e)&&!(e instanceof Vr)){if(e instanceof Jr)return e;if(Me.call(e,"__wrapped__"))return Ba(e)}return new Jr(e)}var Ur=function(){function e(){}return function(t){if(!ts(t))return{};if(Ge)return Ge(t);e.prototype=t;var r=new e;return e.prototype=i,r}}();function qr(){}function Jr(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}function Vr(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=_,this.__views__=[]}function Hr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Kr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Wr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Gr(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new Wr;++t<r;)this.add(e[t])}function $r(e){var t=this.__data__=new Kr(e);this.size=t.size}function Yr(e,t){var r=Ho(e),n=!r&&Vo(e),i=!r&&!n&&$o(e),a=!r&&!n&&!i&&us(e),o=r||n||i||a,s=o?Xt(e.length,Ae):[],c=s.length;for(var l in e)!t&&!Me.call(e,l)||o&&("length"==l||i&&("offset"==l||"parent"==l)||a&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||va(l,c))||s.push(l);return s}function Xr(e){var t=e.length;return t?e[$n(0,t-1)]:i}function Qr(e,t){return Ra(Ni(e),cn(t,0,e.length))}function Zr(e){return Ra(Ni(e))}function en(e,t,r){(r!==i&&!Uo(e[t],r)||r===i&&!(t in e))&&on(e,t,r)}function tn(e,t,r){var n=e[t];Me.call(e,t)&&Uo(n,r)&&(r!==i||t in e)||on(e,t,r)}function rn(e,t){for(var r=e.length;r--;)if(Uo(e[r][0],t))return r;return-1}function nn(e,t,r,n){return fn(e,(function(e,i,a){t(n,e,r(e),a)})),n}function an(e,t){return e&&Pi(t,Is(t),e)}function on(e,t,r){"__proto__"==t&&rt?rt(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}function sn(e,t){for(var r=-1,a=t.length,o=n(a),s=null==e;++r<a;)o[r]=s?i:Ts(e,t[r]);return o}function cn(e,t,r){return e==e&&(r!==i&&(e=e<=r?e:r),t!==i&&(e=e>=t?e:t)),e}function ln(e,t,r,n,a,o){var s,c=1&t,l=2&t,u=4&t;if(r&&(s=a?r(e,n,a,o):r(e)),s!==i)return s;if(!ts(e))return e;var d=Ho(e);if(d){if(s=function(e){var t=e.length,r=new e.constructor(t);t&&"string"==typeof e[0]&&Me.call(e,"index")&&(r.index=e.index,r.input=e.input);return r}(e),!c)return Ni(e,s)}else{var p=ga(e),f=p==E||p==S;if($o(e))return Si(e,c);if(p==T||p==y||f&&!a){if(s=l||f?{}:ha(e),!c)return l?function(e,t){return Pi(e,ma(e),t)}(e,function(e,t){return e&&Pi(t,Fs(t),e)}(s,e)):function(e,t){return Pi(e,fa(e),t)}(e,an(s,e))}else{if(!lt[p])return a?e:{};s=function(e,t,r){var n=e.constructor;switch(t){case O:return Di(e);case b:case k:return new n(+e);case R:return function(e,t){var r=t?Di(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case M:case L:case j:case B:case z:case U:case q:case J:case V:return wi(e,r);case D:return new n;case w:case P:return new n(e);case A:return function(e){var t=new e.constructor(e.source,ge.exec(e));return t.lastIndex=e.lastIndex,t}(e);case N:return new n;case I:return i=e,jr?Te(jr.call(i)):{}}var i}(e,p,c)}}o||(o=new $r);var m=o.get(e);if(m)return m;o.set(e,s),ss(e)?e.forEach((function(n){s.add(ln(n,t,r,n,e,o))})):ns(e)&&e.forEach((function(n,i){s.set(i,ln(n,t,r,i,e,o))}));var g=d?i:(u?l?aa:ia:l?Fs:Is)(e);return At(g||e,(function(n,i){g&&(n=e[i=n]),tn(s,i,ln(n,t,r,i,e,o))})),s}function un(e,t,r){var n=r.length;if(null==e)return!n;for(e=Te(e);n--;){var a=r[n],o=t[a],s=e[a];if(s===i&&!(a in e)||!o(s))return!1}return!0}function dn(e,t,r){if("function"!=typeof e)throw new Ne(a);return Pa((function(){e.apply(i,r)}),t)}function pn(e,t,r,n){var i=-1,a=Ft,o=!0,s=e.length,c=[],l=t.length;if(!s)return c;r&&(t=Rt(t,Zt(r))),n?(a=Ot,o=!1):t.length>=200&&(a=tr,o=!1,t=new Gr(t));e:for(;++i<s;){var u=e[i],d=null==r?u:r(u);if(u=n||0!==u?u:0,o&&d==d){for(var p=l;p--;)if(t[p]===d)continue e;c.push(u)}else a(t,d,n)||c.push(u)}return c}zr.templateSettings={escape:Q,evaluate:Z,interpolate:ee,variable:"",imports:{_:zr}},zr.prototype=qr.prototype,zr.prototype.constructor=zr,Jr.prototype=Ur(qr.prototype),Jr.prototype.constructor=Jr,Vr.prototype=Ur(qr.prototype),Vr.prototype.constructor=Vr,Hr.prototype.clear=function(){this.__data__=Ar?Ar(null):{},this.size=0},Hr.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Hr.prototype.get=function(e){var t=this.__data__;if(Ar){var r=t[e];return r===o?i:r}return Me.call(t,e)?t[e]:i},Hr.prototype.has=function(e){var t=this.__data__;return Ar?t[e]!==i:Me.call(t,e)},Hr.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=Ar&&t===i?o:t,this},Kr.prototype.clear=function(){this.__data__=[],this.size=0},Kr.prototype.delete=function(e){var t=this.__data__,r=rn(t,e);return!(r<0)&&(r==t.length-1?t.pop():Ye.call(t,r,1),--this.size,!0)},Kr.prototype.get=function(e){var t=this.__data__,r=rn(t,e);return r<0?i:t[r][1]},Kr.prototype.has=function(e){return rn(this.__data__,e)>-1},Kr.prototype.set=function(e,t){var r=this.__data__,n=rn(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Wr.prototype.clear=function(){this.size=0,this.__data__={hash:new Hr,map:new(Dr||Kr),string:new Hr}},Wr.prototype.delete=function(e){var t=ua(this,e).delete(e);return this.size-=t?1:0,t},Wr.prototype.get=function(e){return ua(this,e).get(e)},Wr.prototype.has=function(e){return ua(this,e).has(e)},Wr.prototype.set=function(e,t){var r=ua(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Gr.prototype.add=Gr.prototype.push=function(e){return this.__data__.set(e,o),this},Gr.prototype.has=function(e){return this.__data__.has(e)},$r.prototype.clear=function(){this.__data__=new Kr,this.size=0},$r.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},$r.prototype.get=function(e){return this.__data__.get(e)},$r.prototype.has=function(e){return this.__data__.has(e)},$r.prototype.set=function(e,t){var r=this.__data__;if(r instanceof Kr){var n=r.__data__;if(!Dr||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Wr(n)}return r.set(e,t),this.size=r.size,this};var fn=Oi(kn),mn=Oi(xn,!0);function gn(e,t){var r=!0;return fn(e,(function(e,n,i){return r=!!t(e,n,i)})),r}function _n(e,t,r){for(var n=-1,a=e.length;++n<a;){var o=e[n],s=t(o);if(null!=s&&(c===i?s==s&&!ls(s):r(s,c)))var c=s,l=o}return l}function hn(e,t){var r=[];return fn(e,(function(e,n,i){t(e,n,i)&&r.push(e)})),r}function yn(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=ya),i||(i=[]);++a<o;){var s=e[a];t>0&&r(s)?t>1?yn(s,t-1,r,n,i):Mt(i,s):n||(i[i.length]=s)}return i}var vn=Ri(),bn=Ri(!0);function kn(e,t){return e&&vn(e,t,Is)}function xn(e,t){return e&&bn(e,t,Is)}function En(e,t){return It(t,(function(t){return Qo(e[t])}))}function Sn(e,t){for(var r=0,n=(t=bi(t,e)).length;null!=e&&r<n;)e=e[La(t[r++])];return r&&r==n?e:i}function Dn(e,t,r){var n=t(e);return Ho(e)?n:Mt(n,r(e))}function wn(e){return null==e?e===i?"[object Undefined]":"[object Null]":Ze&&Ze in Te(e)?function(e){var t=Me.call(e,Ze),r=e[Ze];try{e[Ze]=i;var n=!0}catch(e){}var a=Be.call(e);n&&(t?e[Ze]=r:delete e[Ze]);return a}(e):function(e){return Be.call(e)}(e)}function Tn(e,t){return e>t}function Cn(e,t){return null!=e&&Me.call(e,t)}function An(e,t){return null!=e&&t in Te(e)}function Nn(e,t,r){for(var a=r?Ot:Ft,o=e[0].length,s=e.length,c=s,l=n(s),u=1/0,d=[];c--;){var p=e[c];c&&t&&(p=Rt(p,Zt(t))),u=vr(p.length,u),l[c]=!r&&(t||o>=120&&p.length>=120)?new Gr(c&&p):i}p=e[0];var f=-1,m=l[0];e:for(;++f<o&&d.length<u;){var g=p[f],_=t?t(g):g;if(g=r||0!==g?g:0,!(m?tr(m,_):a(d,_,r))){for(c=s;--c;){var h=l[c];if(!(h?tr(h,_):a(e[c],_,r)))continue e}m&&m.push(_),d.push(g)}}return d}function Pn(e,t,r){var n=null==(e=Ca(e,t=bi(t,e)))?e:e[La(Ya(t))];return null==n?i:Tt(n,e,r)}function In(e){return rs(e)&&wn(e)==y}function Fn(e,t,r,n,a){return e===t||(null==e||null==t||!rs(e)&&!rs(t)?e!=e&&t!=t:function(e,t,r,n,a,o){var s=Ho(e),c=Ho(t),l=s?v:ga(e),u=c?v:ga(t),d=(l=l==y?T:l)==T,p=(u=u==y?T:u)==T,f=l==u;if(f&&$o(e)){if(!$o(t))return!1;s=!0,d=!1}if(f&&!d)return o||(o=new $r),s||us(e)?ra(e,t,r,n,a,o):function(e,t,r,n,i,a,o){switch(r){case R:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case O:return!(e.byteLength!=t.byteLength||!a(new He(e),new He(t)));case b:case k:case w:return Uo(+e,+t);case x:return e.name==t.name&&e.message==t.message;case A:case P:return e==t+"";case D:var s=cr;case N:var c=1&n;if(s||(s=dr),e.size!=t.size&&!c)return!1;var l=o.get(e);if(l)return l==t;n|=2,o.set(e,t);var u=ra(s(e),s(t),n,i,a,o);return o.delete(e),u;case I:if(jr)return jr.call(e)==jr.call(t)}return!1}(e,t,l,r,n,a,o);if(!(1&r)){var m=d&&Me.call(e,"__wrapped__"),g=p&&Me.call(t,"__wrapped__");if(m||g){var _=m?e.value():e,h=g?t.value():t;return o||(o=new $r),a(_,h,r,n,o)}}if(!f)return!1;return o||(o=new $r),function(e,t,r,n,a,o){var s=1&r,c=ia(e),l=c.length,u=ia(t),d=u.length;if(l!=d&&!s)return!1;var p=l;for(;p--;){var f=c[p];if(!(s?f in t:Me.call(t,f)))return!1}var m=o.get(e),g=o.get(t);if(m&&g)return m==t&&g==e;var _=!0;o.set(e,t),o.set(t,e);var h=s;for(;++p<l;){var y=e[f=c[p]],v=t[f];if(n)var b=s?n(v,y,f,t,e,o):n(y,v,f,e,t,o);if(!(b===i?y===v||a(y,v,r,n,o):b)){_=!1;break}h||(h="constructor"==f)}if(_&&!h){var k=e.constructor,x=t.constructor;k==x||!("constructor"in e)||!("constructor"in t)||"function"==typeof k&&k instanceof k&&"function"==typeof x&&x instanceof x||(_=!1)}return o.delete(e),o.delete(t),_}(e,t,r,n,a,o)}(e,t,r,n,Fn,a))}function On(e,t,r,n){var a=r.length,o=a,s=!n;if(null==e)return!o;for(e=Te(e);a--;){var c=r[a];if(s&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++a<o;){var l=(c=r[a])[0],u=e[l],d=c[1];if(s&&c[2]){if(u===i&&!(l in e))return!1}else{var p=new $r;if(n)var f=n(u,d,l,e,t,p);if(!(f===i?Fn(d,u,3,n,p):f))return!1}}return!0}function Rn(e){return!(!ts(e)||(t=e,je&&je in t))&&(Qo(e)?qe:ye).test(ja(e));var t}function Mn(e){return"function"==typeof e?e:null==e?ic:"object"==typeof e?Ho(e)?qn(e[0],e[1]):Un(e):fc(e)}function Ln(e){if(!Sa(e))return Gt(e);var t=[];for(var r in Te(e))Me.call(e,r)&&"constructor"!=r&&t.push(r);return t}function jn(e){if(!ts(e))return function(e){var t=[];if(null!=e)for(var r in Te(e))t.push(r);return t}(e);var t=Sa(e),r=[];for(var n in e)("constructor"!=n||!t&&Me.call(e,n))&&r.push(n);return r}function Bn(e,t){return e<t}function zn(e,t){var r=-1,i=Wo(e)?n(e.length):[];return fn(e,(function(e,n,a){i[++r]=t(e,n,a)})),i}function Un(e){var t=da(e);return 1==t.length&&t[0][2]?wa(t[0][0],t[0][1]):function(r){return r===e||On(r,e,t)}}function qn(e,t){return ka(e)&&Da(t)?wa(La(e),t):function(r){var n=Ts(r,e);return n===i&&n===t?Cs(r,e):Fn(t,n,3)}}function Jn(e,t,r,n,a){e!==t&&vn(t,(function(o,s){if(a||(a=new $r),ts(o))!function(e,t,r,n,a,o,s){var c=Aa(e,r),l=Aa(t,r),u=s.get(l);if(u)return void en(e,r,u);var d=o?o(c,l,r+"",e,t,s):i,p=d===i;if(p){var f=Ho(l),m=!f&&$o(l),g=!f&&!m&&us(l);d=l,f||m||g?Ho(c)?d=c:Go(c)?d=Ni(c):m?(p=!1,d=Si(l,!0)):g?(p=!1,d=wi(l,!0)):d=[]:as(l)||Vo(l)?(d=c,Vo(c)?d=ys(c):ts(c)&&!Qo(c)||(d=ha(l))):p=!1}p&&(s.set(l,d),a(d,l,n,o,s),s.delete(l));en(e,r,d)}(e,t,s,r,Jn,n,a);else{var c=n?n(Aa(e,s),o,s+"",e,t,a):i;c===i&&(c=o),en(e,s,c)}}),Fs)}function Vn(e,t){var r=e.length;if(r)return va(t+=t<0?r:0,r)?e[t]:i}function Hn(e,t,r){t=t.length?Rt(t,(function(e){return Ho(e)?function(t){return Sn(t,1===e.length?e[0]:e)}:e})):[ic];var n=-1;t=Rt(t,Zt(la()));var i=zn(e,(function(e,r,i){var a=Rt(t,(function(t){return t(e)}));return{criteria:a,index:++n,value:e}}));return function(e,t){var r=e.length;for(e.sort(t);r--;)e[r]=e[r].value;return e}(i,(function(e,t){return function(e,t,r){var n=-1,i=e.criteria,a=t.criteria,o=i.length,s=r.length;for(;++n<o;){var c=Ti(i[n],a[n]);if(c)return n>=s?c:c*("desc"==r[n]?-1:1)}return e.index-t.index}(e,t,r)}))}function Kn(e,t,r){for(var n=-1,i=t.length,a={};++n<i;){var o=t[n],s=Sn(e,o);r(s,o)&&ei(a,bi(o,e),s)}return a}function Wn(e,t,r,n){var i=n?Vt:Jt,a=-1,o=t.length,s=e;for(e===t&&(t=Ni(t)),r&&(s=Rt(e,Zt(r)));++a<o;)for(var c=0,l=t[a],u=r?r(l):l;(c=i(s,u,c,n))>-1;)s!==e&&Ye.call(s,c,1),Ye.call(e,c,1);return e}function Gn(e,t){for(var r=e?t.length:0,n=r-1;r--;){var i=t[r];if(r==n||i!==a){var a=i;va(i)?Ye.call(e,i,1):pi(e,i)}}return e}function $n(e,t){return e+_t(xr()*(t-e+1))}function Yn(e,t){var r="";if(!e||t<1||t>m)return r;do{t%2&&(r+=e),(t=_t(t/2))&&(e+=e)}while(t);return r}function Xn(e,t){return Ia(Ta(e,t,ic),e+"")}function Qn(e){return Xr(Us(e))}function Zn(e,t){var r=Us(e);return Ra(r,cn(t,0,r.length))}function ei(e,t,r,n){if(!ts(e))return e;for(var a=-1,o=(t=bi(t,e)).length,s=o-1,c=e;null!=c&&++a<o;){var l=La(t[a]),u=r;if("__proto__"===l||"constructor"===l||"prototype"===l)return e;if(a!=s){var d=c[l];(u=n?n(d,l,c):i)===i&&(u=ts(d)?d:va(t[a+1])?[]:{})}tn(c,l,u),c=c[l]}return e}var ti=Nr?function(e,t){return Nr.set(e,t),e}:ic,ri=rt?function(e,t){return rt(e,"toString",{configurable:!0,enumerable:!1,value:tc(t),writable:!0})}:ic;function ni(e){return Ra(Us(e))}function ii(e,t,r){var i=-1,a=e.length;t<0&&(t=-t>a?0:a+t),(r=r>a?a:r)<0&&(r+=a),a=t>r?0:r-t>>>0,t>>>=0;for(var o=n(a);++i<a;)o[i]=e[i+t];return o}function ai(e,t){var r;return fn(e,(function(e,n,i){return!(r=t(e,n,i))})),!!r}function oi(e,t,r){var n=0,i=null==e?n:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;n<i;){var a=n+i>>>1,o=e[a];null!==o&&!ls(o)&&(r?o<=t:o<t)?n=a+1:i=a}return i}return si(e,t,ic,r)}function si(e,t,r,n){var a=0,o=null==e?0:e.length;if(0===o)return 0;for(var s=(t=r(t))!=t,c=null===t,l=ls(t),u=t===i;a<o;){var d=_t((a+o)/2),p=r(e[d]),f=p!==i,m=null===p,g=p==p,_=ls(p);if(s)var h=n||g;else h=u?g&&(n||f):c?g&&f&&(n||!m):l?g&&f&&!m&&(n||!_):!m&&!_&&(n?p<=t:p<t);h?a=d+1:o=d}return vr(o,4294967294)}function ci(e,t){for(var r=-1,n=e.length,i=0,a=[];++r<n;){var o=e[r],s=t?t(o):o;if(!r||!Uo(s,c)){var c=s;a[i++]=0===o?0:o}}return a}function li(e){return"number"==typeof e?e:ls(e)?g:+e}function ui(e){if("string"==typeof e)return e;if(Ho(e))return Rt(e,ui)+"";if(ls(e))return Br?Br.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function di(e,t,r){var n=-1,i=Ft,a=e.length,o=!0,s=[],c=s;if(r)o=!1,i=Ot;else if(a>=200){var l=t?null:Yi(e);if(l)return dr(l);o=!1,i=tr,c=new Gr}else c=t?[]:s;e:for(;++n<a;){var u=e[n],d=t?t(u):u;if(u=r||0!==u?u:0,o&&d==d){for(var p=c.length;p--;)if(c[p]===d)continue e;t&&c.push(d),s.push(u)}else i(c,d,r)||(c!==s&&c.push(d),s.push(u))}return s}function pi(e,t){return null==(e=Ca(e,t=bi(t,e)))||delete e[La(Ya(t))]}function fi(e,t,r,n){return ei(e,t,r(Sn(e,t)),n)}function mi(e,t,r,n){for(var i=e.length,a=n?i:-1;(n?a--:++a<i)&&t(e[a],a,e););return r?ii(e,n?0:a,n?a+1:i):ii(e,n?a+1:0,n?i:a)}function gi(e,t){var r=e;return r instanceof Vr&&(r=r.value()),Lt(t,(function(e,t){return t.func.apply(t.thisArg,Mt([e],t.args))}),r)}function _i(e,t,r){var i=e.length;if(i<2)return i?di(e[0]):[];for(var a=-1,o=n(i);++a<i;)for(var s=e[a],c=-1;++c<i;)c!=a&&(o[a]=pn(o[a]||s,e[c],t,r));return di(yn(o,1),t,r)}function hi(e,t,r){for(var n=-1,a=e.length,o=t.length,s={};++n<a;){var c=n<o?t[n]:i;r(s,e[n],c)}return s}function yi(e){return Go(e)?e:[]}function vi(e){return"function"==typeof e?e:ic}function bi(e,t){return Ho(e)?e:ka(e,t)?[e]:Ma(vs(e))}var ki=Xn;function xi(e,t,r){var n=e.length;return r=r===i?n:r,!t&&r>=n?e:ii(e,t,r)}var Ei=it||function(e){return gt.clearTimeout(e)};function Si(e,t){if(t)return e.slice();var r=e.length,n=Ke?Ke(r):new e.constructor(r);return e.copy(n),n}function Di(e){var t=new e.constructor(e.byteLength);return new He(t).set(new He(e)),t}function wi(e,t){var r=t?Di(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function Ti(e,t){if(e!==t){var r=e!==i,n=null===e,a=e==e,o=ls(e),s=t!==i,c=null===t,l=t==t,u=ls(t);if(!c&&!u&&!o&&e>t||o&&s&&l&&!c&&!u||n&&s&&l||!r&&l||!a)return 1;if(!n&&!o&&!u&&e<t||u&&r&&a&&!n&&!o||c&&r&&a||!s&&a||!l)return-1}return 0}function Ci(e,t,r,i){for(var a=-1,o=e.length,s=r.length,c=-1,l=t.length,u=yr(o-s,0),d=n(l+u),p=!i;++c<l;)d[c]=t[c];for(;++a<s;)(p||a<o)&&(d[r[a]]=e[a]);for(;u--;)d[c++]=e[a++];return d}function Ai(e,t,r,i){for(var a=-1,o=e.length,s=-1,c=r.length,l=-1,u=t.length,d=yr(o-c,0),p=n(d+u),f=!i;++a<d;)p[a]=e[a];for(var m=a;++l<u;)p[m+l]=t[l];for(;++s<c;)(f||a<o)&&(p[m+r[s]]=e[a++]);return p}function Ni(e,t){var r=-1,i=e.length;for(t||(t=n(i));++r<i;)t[r]=e[r];return t}function Pi(e,t,r,n){var a=!r;r||(r={});for(var o=-1,s=t.length;++o<s;){var c=t[o],l=n?n(r[c],e[c],c,r,e):i;l===i&&(l=e[c]),a?on(r,c,l):tn(r,c,l)}return r}function Ii(e,t){return function(r,n){var i=Ho(r)?Ct:nn,a=t?t():{};return i(r,e,la(n,2),a)}}function Fi(e){return Xn((function(t,r){var n=-1,a=r.length,o=a>1?r[a-1]:i,s=a>2?r[2]:i;for(o=e.length>3&&"function"==typeof o?(a--,o):i,s&&ba(r[0],r[1],s)&&(o=a<3?i:o,a=1),t=Te(t);++n<a;){var c=r[n];c&&e(t,c,n,o)}return t}))}function Oi(e,t){return function(r,n){if(null==r)return r;if(!Wo(r))return e(r,n);for(var i=r.length,a=t?i:-1,o=Te(r);(t?a--:++a<i)&&!1!==n(o[a],a,o););return r}}function Ri(e){return function(t,r,n){for(var i=-1,a=Te(t),o=n(t),s=o.length;s--;){var c=o[e?s:++i];if(!1===r(a[c],c,a))break}return t}}function Mi(e){return function(t){var r=sr(t=vs(t))?mr(t):i,n=r?r[0]:t.charAt(0),a=r?xi(r,1).join(""):t.slice(1);return n[e]()+a}}function Li(e){return function(t){return Lt(Qs(Vs(t).replace(et,"")),e,"")}}function ji(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=Ur(e.prototype),n=e.apply(r,t);return ts(n)?n:r}}function Bi(e){return function(t,r,n){var a=Te(t);if(!Wo(t)){var o=la(r,3);t=Is(t),r=function(e){return o(a[e],e,a)}}var s=e(t,r,n);return s>-1?a[o?t[s]:s]:i}}function zi(e){return na((function(t){var r=t.length,n=r,o=Jr.prototype.thru;for(e&&t.reverse();n--;){var s=t[n];if("function"!=typeof s)throw new Ne(a);if(o&&!c&&"wrapper"==sa(s))var c=new Jr([],!0)}for(n=c?n:r;++n<r;){var l=sa(s=t[n]),u="wrapper"==l?oa(s):i;c=u&&xa(u[0])&&424==u[1]&&!u[4].length&&1==u[9]?c[sa(u[0])].apply(c,u[3]):1==s.length&&xa(s)?c[l]():c.thru(s)}return function(){var e=arguments,n=e[0];if(c&&1==e.length&&Ho(n))return c.plant(n).value();for(var i=0,a=r?t[i].apply(this,e):n;++i<r;)a=t[i].call(this,a);return a}}))}function Ui(e,t,r,a,o,s,c,l,u,p){var f=t&d,m=1&t,g=2&t,_=24&t,h=512&t,y=g?i:ji(e);return function d(){for(var v=arguments.length,b=n(v),k=v;k--;)b[k]=arguments[k];if(_)var x=ca(d),E=function(e,t){for(var r=e.length,n=0;r--;)e[r]===t&&++n;return n}(b,x);if(a&&(b=Ci(b,a,o,_)),s&&(b=Ai(b,s,c,_)),v-=E,_&&v<p){var S=ur(b,x);return Gi(e,t,Ui,d.placeholder,r,b,S,l,u,p-v)}var D=m?r:this,w=g?D[e]:e;return v=b.length,l?b=function(e,t){var r=e.length,n=vr(t.length,r),a=Ni(e);for(;n--;){var o=t[n];e[n]=va(o,r)?a[o]:i}return e}(b,l):h&&v>1&&b.reverse(),f&&u<v&&(b.length=u),this&&this!==gt&&this instanceof d&&(w=y||ji(w)),w.apply(D,b)}}function qi(e,t){return function(r,n){return function(e,t,r,n){return kn(e,(function(e,i,a){t(n,r(e),i,a)})),n}(r,e,t(n),{})}}function Ji(e,t){return function(r,n){var a;if(r===i&&n===i)return t;if(r!==i&&(a=r),n!==i){if(a===i)return n;"string"==typeof r||"string"==typeof n?(r=ui(r),n=ui(n)):(r=li(r),n=li(n)),a=e(r,n)}return a}}function Vi(e){return na((function(t){return t=Rt(t,Zt(la())),Xn((function(r){var n=this;return e(t,(function(e){return Tt(e,n,r)}))}))}))}function Hi(e,t){var r=(t=t===i?" ":ui(t)).length;if(r<2)return r?Yn(t,e):t;var n=Yn(t,mt(e/fr(t)));return sr(t)?xi(mr(n),0,e).join(""):n.slice(0,e)}function Ki(e){return function(t,r,a){return a&&"number"!=typeof a&&ba(t,r,a)&&(r=a=i),t=ms(t),r===i?(r=t,t=0):r=ms(r),function(e,t,r,i){for(var a=-1,o=yr(mt((t-e)/(r||1)),0),s=n(o);o--;)s[i?o:++a]=e,e+=r;return s}(t,r,a=a===i?t<r?1:-1:ms(a),e)}}function Wi(e){return function(t,r){return"string"==typeof t&&"string"==typeof r||(t=hs(t),r=hs(r)),e(t,r)}}function Gi(e,t,r,n,a,o,s,c,d,p){var f=8&t;t|=f?l:u,4&(t&=~(f?u:l))||(t&=-4);var m=[e,t,a,f?o:i,f?s:i,f?i:o,f?i:s,c,d,p],g=r.apply(i,m);return xa(e)&&Na(g,m),g.placeholder=n,Fa(g,e,t)}function $i(e){var t=we[e];return function(e,r){if(e=hs(e),(r=null==r?0:vr(gs(r),292))&&bt(e)){var n=(vs(e)+"e").split("e");return+((n=(vs(t(n[0]+"e"+(+n[1]+r)))+"e").split("e"))[0]+"e"+(+n[1]-r))}return t(e)}}var Yi=Tr&&1/dr(new Tr([,-0]))[1]==f?function(e){return new Tr(e)}:lc;function Xi(e){return function(t){var r=ga(t);return r==D?cr(t):r==N?pr(t):function(e,t){return Rt(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Qi(e,t,r,o,f,m,g,_){var h=2&t;if(!h&&"function"!=typeof e)throw new Ne(a);var y=o?o.length:0;if(y||(t&=-97,o=f=i),g=g===i?g:yr(gs(g),0),_=_===i?_:gs(_),y-=f?f.length:0,t&u){var v=o,b=f;o=f=i}var k=h?i:oa(e),x=[e,t,r,o,f,v,b,m,g,_];if(k&&function(e,t){var r=e[1],n=t[1],i=r|n,a=i<131,o=n==d&&8==r||n==d&&r==p&&e[7].length<=t[8]||384==n&&t[7].length<=t[8]&&8==r;if(!a&&!o)return e;1&n&&(e[2]=t[2],i|=1&r?0:4);var c=t[3];if(c){var l=e[3];e[3]=l?Ci(l,c,t[4]):c,e[4]=l?ur(e[3],s):t[4]}(c=t[5])&&(l=e[5],e[5]=l?Ai(l,c,t[6]):c,e[6]=l?ur(e[5],s):t[6]);(c=t[7])&&(e[7]=c);n&d&&(e[8]=null==e[8]?t[8]:vr(e[8],t[8]));null==e[9]&&(e[9]=t[9]);e[0]=t[0],e[1]=i}(x,k),e=x[0],t=x[1],r=x[2],o=x[3],f=x[4],!(_=x[9]=x[9]===i?h?0:e.length:yr(x[9]-y,0))&&24&t&&(t&=-25),t&&1!=t)E=8==t||t==c?function(e,t,r){var a=ji(e);return function o(){for(var s=arguments.length,c=n(s),l=s,u=ca(o);l--;)c[l]=arguments[l];var d=s<3&&c[0]!==u&&c[s-1]!==u?[]:ur(c,u);return(s-=d.length)<r?Gi(e,t,Ui,o.placeholder,i,c,d,i,i,r-s):Tt(this&&this!==gt&&this instanceof o?a:e,this,c)}}(e,t,_):t!=l&&33!=t||f.length?Ui.apply(i,x):function(e,t,r,i){var a=1&t,o=ji(e);return function t(){for(var s=-1,c=arguments.length,l=-1,u=i.length,d=n(u+c),p=this&&this!==gt&&this instanceof t?o:e;++l<u;)d[l]=i[l];for(;c--;)d[l++]=arguments[++s];return Tt(p,a?r:this,d)}}(e,t,r,o);else var E=function(e,t,r){var n=1&t,i=ji(e);return function t(){return(this&&this!==gt&&this instanceof t?i:e).apply(n?r:this,arguments)}}(e,t,r);return Fa((k?ti:Na)(E,x),e,t)}function Zi(e,t,r,n){return e===i||Uo(e,Fe[r])&&!Me.call(n,r)?t:e}function ea(e,t,r,n,a,o){return ts(e)&&ts(t)&&(o.set(t,e),Jn(e,t,i,ea,o),o.delete(t)),e}function ta(e){return as(e)?i:e}function ra(e,t,r,n,a,o){var s=1&r,c=e.length,l=t.length;if(c!=l&&!(s&&l>c))return!1;var u=o.get(e),d=o.get(t);if(u&&d)return u==t&&d==e;var p=-1,f=!0,m=2&r?new Gr:i;for(o.set(e,t),o.set(t,e);++p<c;){var g=e[p],_=t[p];if(n)var h=s?n(_,g,p,t,e,o):n(g,_,p,e,t,o);if(h!==i){if(h)continue;f=!1;break}if(m){if(!Bt(t,(function(e,t){if(!tr(m,t)&&(g===e||a(g,e,r,n,o)))return m.push(t)}))){f=!1;break}}else if(g!==_&&!a(g,_,r,n,o)){f=!1;break}}return o.delete(e),o.delete(t),f}function na(e){return Ia(Ta(e,i,Ha),e+"")}function ia(e){return Dn(e,Is,fa)}function aa(e){return Dn(e,Fs,ma)}var oa=Nr?function(e){return Nr.get(e)}:lc;function sa(e){for(var t=e.name+"",r=Pr[t],n=Me.call(Pr,t)?r.length:0;n--;){var i=r[n],a=i.func;if(null==a||a==e)return i.name}return t}function ca(e){return(Me.call(zr,"placeholder")?zr:e).placeholder}function la(){var e=zr.iteratee||ac;return e=e===ac?Mn:e,arguments.length?e(arguments[0],arguments[1]):e}function ua(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function da(e){for(var t=Is(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,Da(i)]}return t}function pa(e,t){var r=function(e,t){return null==e?i:e[t]}(e,t);return Rn(r)?r:i}var fa=ht?function(e){return null==e?[]:(e=Te(e),It(ht(e),(function(t){return $e.call(e,t)})))}:_c,ma=ht?function(e){for(var t=[];e;)Mt(t,fa(e)),e=We(e);return t}:_c,ga=wn;function _a(e,t,r){for(var n=-1,i=(t=bi(t,e)).length,a=!1;++n<i;){var o=La(t[n]);if(!(a=null!=e&&r(e,o)))break;e=e[o]}return a||++n!=i?a:!!(i=null==e?0:e.length)&&es(i)&&va(o,i)&&(Ho(e)||Vo(e))}function ha(e){return"function"!=typeof e.constructor||Sa(e)?{}:Ur(We(e))}function ya(e){return Ho(e)||Vo(e)||!!(Xe&&e&&e[Xe])}function va(e,t){var r=typeof e;return!!(t=null==t?m:t)&&("number"==r||"symbol"!=r&&be.test(e))&&e>-1&&e%1==0&&e<t}function ba(e,t,r){if(!ts(r))return!1;var n=typeof t;return!!("number"==n?Wo(r)&&va(t,r.length):"string"==n&&t in r)&&Uo(r[t],e)}function ka(e,t){if(Ho(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!ls(e))||(re.test(e)||!te.test(e)||null!=t&&e in Te(t))}function xa(e){var t=sa(e),r=zr[t];if("function"!=typeof r||!(t in Vr.prototype))return!1;if(e===r)return!0;var n=oa(r);return!!n&&e===n[0]}(Sr&&ga(new Sr(new ArrayBuffer(1)))!=R||Dr&&ga(new Dr)!=D||wr&&ga(wr.resolve())!=C||Tr&&ga(new Tr)!=N||Cr&&ga(new Cr)!=F)&&(ga=function(e){var t=wn(e),r=t==T?e.constructor:i,n=r?ja(r):"";if(n)switch(n){case Ir:return R;case Fr:return D;case Or:return C;case Rr:return N;case Mr:return F}return t});var Ea=Oe?Qo:hc;function Sa(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Fe)}function Da(e){return e==e&&!ts(e)}function wa(e,t){return function(r){return null!=r&&(r[e]===t&&(t!==i||e in Te(r)))}}function Ta(e,t,r){return t=yr(t===i?e.length-1:t,0),function(){for(var i=arguments,a=-1,o=yr(i.length-t,0),s=n(o);++a<o;)s[a]=i[t+a];a=-1;for(var c=n(t+1);++a<t;)c[a]=i[a];return c[t]=r(s),Tt(e,this,c)}}function Ca(e,t){return t.length<2?e:Sn(e,ii(t,0,-1))}function Aa(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Na=Oa(ti),Pa=ft||function(e,t){return gt.setTimeout(e,t)},Ia=Oa(ri);function Fa(e,t,r){var n=t+"";return Ia(e,function(e,t){var r=t.length;if(!r)return e;var n=r-1;return t[n]=(r>1?"& ":"")+t[n],t=t.join(r>2?", ":" "),e.replace(ce,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return At(h,(function(r){var n="_."+r[0];t&r[1]&&!Ft(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(le);return t?t[1].split(ue):[]}(n),r)))}function Oa(e){var t=0,r=0;return function(){var n=br(),a=16-(n-r);if(r=n,a>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(i,arguments)}}function Ra(e,t){var r=-1,n=e.length,a=n-1;for(t=t===i?n:t;++r<t;){var o=$n(r,a),s=e[o];e[o]=e[r],e[r]=s}return e.length=t,e}var Ma=function(e){var t=Ro(e,(function(e){return 500===r.size&&r.clear(),e})),r=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ne,(function(e,r,n,i){t.push(n?i.replace(fe,"$1"):r||e)})),t}));function La(e){if("string"==typeof e||ls(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ja(e){if(null!=e){try{return Re.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ba(e){if(e instanceof Vr)return e.clone();var t=new Jr(e.__wrapped__,e.__chain__);return t.__actions__=Ni(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var za=Xn((function(e,t){return Go(e)?pn(e,yn(t,1,Go,!0)):[]})),Ua=Xn((function(e,t){var r=Ya(t);return Go(r)&&(r=i),Go(e)?pn(e,yn(t,1,Go,!0),la(r,2)):[]})),qa=Xn((function(e,t){var r=Ya(t);return Go(r)&&(r=i),Go(e)?pn(e,yn(t,1,Go,!0),i,r):[]}));function Ja(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:gs(r);return i<0&&(i=yr(n+i,0)),qt(e,la(t,3),i)}function Va(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var a=n-1;return r!==i&&(a=gs(r),a=r<0?yr(n+a,0):vr(a,n-1)),qt(e,la(t,3),a,!0)}function Ha(e){return(null==e?0:e.length)?yn(e,1):[]}function Ka(e){return e&&e.length?e[0]:i}var Wa=Xn((function(e){var t=Rt(e,yi);return t.length&&t[0]===e[0]?Nn(t):[]})),Ga=Xn((function(e){var t=Ya(e),r=Rt(e,yi);return t===Ya(r)?t=i:r.pop(),r.length&&r[0]===e[0]?Nn(r,la(t,2)):[]})),$a=Xn((function(e){var t=Ya(e),r=Rt(e,yi);return(t="function"==typeof t?t:i)&&r.pop(),r.length&&r[0]===e[0]?Nn(r,i,t):[]}));function Ya(e){var t=null==e?0:e.length;return t?e[t-1]:i}var Xa=Xn(Qa);function Qa(e,t){return e&&e.length&&t&&t.length?Wn(e,t):e}var Za=na((function(e,t){var r=null==e?0:e.length,n=sn(e,t);return Gn(e,Rt(t,(function(e){return va(e,r)?+e:e})).sort(Ti)),n}));function eo(e){return null==e?e:Er.call(e)}var to=Xn((function(e){return di(yn(e,1,Go,!0))})),ro=Xn((function(e){var t=Ya(e);return Go(t)&&(t=i),di(yn(e,1,Go,!0),la(t,2))})),no=Xn((function(e){var t=Ya(e);return t="function"==typeof t?t:i,di(yn(e,1,Go,!0),i,t)}));function io(e){if(!e||!e.length)return[];var t=0;return e=It(e,(function(e){if(Go(e))return t=yr(e.length,t),!0})),Xt(t,(function(t){return Rt(e,Wt(t))}))}function ao(e,t){if(!e||!e.length)return[];var r=io(e);return null==t?r:Rt(r,(function(e){return Tt(t,i,e)}))}var oo=Xn((function(e,t){return Go(e)?pn(e,t):[]})),so=Xn((function(e){return _i(It(e,Go))})),co=Xn((function(e){var t=Ya(e);return Go(t)&&(t=i),_i(It(e,Go),la(t,2))})),lo=Xn((function(e){var t=Ya(e);return t="function"==typeof t?t:i,_i(It(e,Go),i,t)})),uo=Xn(io);var po=Xn((function(e){var t=e.length,r=t>1?e[t-1]:i;return r="function"==typeof r?(e.pop(),r):i,ao(e,r)}));function fo(e){var t=zr(e);return t.__chain__=!0,t}function mo(e,t){return t(e)}var go=na((function(e){var t=e.length,r=t?e[0]:0,n=this.__wrapped__,a=function(t){return sn(t,e)};return!(t>1||this.__actions__.length)&&n instanceof Vr&&va(r)?((n=n.slice(r,+r+(t?1:0))).__actions__.push({func:mo,args:[a],thisArg:i}),new Jr(n,this.__chain__).thru((function(e){return t&&!e.length&&e.push(i),e}))):this.thru(a)}));var _o=Ii((function(e,t,r){Me.call(e,r)?++e[r]:on(e,r,1)}));var ho=Bi(Ja),yo=Bi(Va);function vo(e,t){return(Ho(e)?At:fn)(e,la(t,3))}function bo(e,t){return(Ho(e)?Nt:mn)(e,la(t,3))}var ko=Ii((function(e,t,r){Me.call(e,r)?e[r].push(t):on(e,r,[t])}));var xo=Xn((function(e,t,r){var i=-1,a="function"==typeof t,o=Wo(e)?n(e.length):[];return fn(e,(function(e){o[++i]=a?Tt(t,e,r):Pn(e,t,r)})),o})),Eo=Ii((function(e,t,r){on(e,r,t)}));function So(e,t){return(Ho(e)?Rt:zn)(e,la(t,3))}var Do=Ii((function(e,t,r){e[r?0:1].push(t)}),(function(){return[[],[]]}));var wo=Xn((function(e,t){if(null==e)return[];var r=t.length;return r>1&&ba(e,t[0],t[1])?t=[]:r>2&&ba(t[0],t[1],t[2])&&(t=[t[0]]),Hn(e,yn(t,1),[])})),To=ut||function(){return gt.Date.now()};function Co(e,t,r){return t=r?i:t,t=e&&null==t?e.length:t,Qi(e,d,i,i,i,i,t)}function Ao(e,t){var r;if("function"!=typeof t)throw new Ne(a);return e=gs(e),function(){return--e>0&&(r=t.apply(this,arguments)),e<=1&&(t=i),r}}var No=Xn((function(e,t,r){var n=1;if(r.length){var i=ur(r,ca(No));n|=l}return Qi(e,n,t,r,i)})),Po=Xn((function(e,t,r){var n=3;if(r.length){var i=ur(r,ca(Po));n|=l}return Qi(t,n,e,r,i)}));function Io(e,t,r){var n,o,s,c,l,u,d=0,p=!1,f=!1,m=!0;if("function"!=typeof e)throw new Ne(a);function g(t){var r=n,a=o;return n=o=i,d=t,c=e.apply(a,r)}function _(e){var r=e-u;return u===i||r>=t||r<0||f&&e-d>=s}function h(){var e=To();if(_(e))return y(e);l=Pa(h,function(e){var r=t-(e-u);return f?vr(r,s-(e-d)):r}(e))}function y(e){return l=i,m&&n?g(e):(n=o=i,c)}function v(){var e=To(),r=_(e);if(n=arguments,o=this,u=e,r){if(l===i)return function(e){return d=e,l=Pa(h,t),p?g(e):c}(u);if(f)return Ei(l),l=Pa(h,t),g(u)}return l===i&&(l=Pa(h,t)),c}return t=hs(t)||0,ts(r)&&(p=!!r.leading,s=(f="maxWait"in r)?yr(hs(r.maxWait)||0,t):s,m="trailing"in r?!!r.trailing:m),v.cancel=function(){l!==i&&Ei(l),d=0,n=u=o=l=i},v.flush=function(){return l===i?c:y(To())},v}var Fo=Xn((function(e,t){return dn(e,1,t)})),Oo=Xn((function(e,t,r){return dn(e,hs(t)||0,r)}));function Ro(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Ne(a);var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],a=r.cache;if(a.has(i))return a.get(i);var o=e.apply(this,n);return r.cache=a.set(i,o)||a,o};return r.cache=new(Ro.Cache||Wr),r}function Mo(e){if("function"!=typeof e)throw new Ne(a);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ro.Cache=Wr;var Lo=ki((function(e,t){var r=(t=1==t.length&&Ho(t[0])?Rt(t[0],Zt(la())):Rt(yn(t,1),Zt(la()))).length;return Xn((function(n){for(var i=-1,a=vr(n.length,r);++i<a;)n[i]=t[i].call(this,n[i]);return Tt(e,this,n)}))})),jo=Xn((function(e,t){var r=ur(t,ca(jo));return Qi(e,l,i,t,r)})),Bo=Xn((function(e,t){var r=ur(t,ca(Bo));return Qi(e,u,i,t,r)})),zo=na((function(e,t){return Qi(e,p,i,i,i,t)}));function Uo(e,t){return e===t||e!=e&&t!=t}var qo=Wi(Tn),Jo=Wi((function(e,t){return e>=t})),Vo=In(function(){return arguments}())?In:function(e){return rs(e)&&Me.call(e,"callee")&&!$e.call(e,"callee")},Ho=n.isArray,Ko=kt?Zt(kt):function(e){return rs(e)&&wn(e)==O};function Wo(e){return null!=e&&es(e.length)&&!Qo(e)}function Go(e){return rs(e)&&Wo(e)}var $o=vt||hc,Yo=xt?Zt(xt):function(e){return rs(e)&&wn(e)==k};function Xo(e){if(!rs(e))return!1;var t=wn(e);return t==x||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!as(e)}function Qo(e){if(!ts(e))return!1;var t=wn(e);return t==E||t==S||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Zo(e){return"number"==typeof e&&e==gs(e)}function es(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=m}function ts(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function rs(e){return null!=e&&"object"==typeof e}var ns=Et?Zt(Et):function(e){return rs(e)&&ga(e)==D};function is(e){return"number"==typeof e||rs(e)&&wn(e)==w}function as(e){if(!rs(e)||wn(e)!=T)return!1;var t=We(e);if(null===t)return!0;var r=Me.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Re.call(r)==ze}var os=St?Zt(St):function(e){return rs(e)&&wn(e)==A};var ss=Dt?Zt(Dt):function(e){return rs(e)&&ga(e)==N};function cs(e){return"string"==typeof e||!Ho(e)&&rs(e)&&wn(e)==P}function ls(e){return"symbol"==typeof e||rs(e)&&wn(e)==I}var us=wt?Zt(wt):function(e){return rs(e)&&es(e.length)&&!!ct[wn(e)]};var ds=Wi(Bn),ps=Wi((function(e,t){return e<=t}));function fs(e){if(!e)return[];if(Wo(e))return cs(e)?mr(e):Ni(e);if(Qe&&e[Qe])return function(e){for(var t,r=[];!(t=e.next()).done;)r.push(t.value);return r}(e[Qe]());var t=ga(e);return(t==D?cr:t==N?dr:Us)(e)}function ms(e){return e?(e=hs(e))===f||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function gs(e){var t=ms(e),r=t%1;return t==t?r?t-r:t:0}function _s(e){return e?cn(gs(e),0,_):0}function hs(e){if("number"==typeof e)return e;if(ls(e))return g;if(ts(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=ts(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Qt(e);var r=he.test(e);return r||ve.test(e)?pt(e.slice(2),r?2:8):_e.test(e)?g:+e}function ys(e){return Pi(e,Fs(e))}function vs(e){return null==e?"":ui(e)}var bs=Fi((function(e,t){if(Sa(t)||Wo(t))Pi(t,Is(t),e);else for(var r in t)Me.call(t,r)&&tn(e,r,t[r])})),ks=Fi((function(e,t){Pi(t,Fs(t),e)})),xs=Fi((function(e,t,r,n){Pi(t,Fs(t),e,n)})),Es=Fi((function(e,t,r,n){Pi(t,Is(t),e,n)})),Ss=na(sn);var Ds=Xn((function(e,t){e=Te(e);var r=-1,n=t.length,a=n>2?t[2]:i;for(a&&ba(t[0],t[1],a)&&(n=1);++r<n;)for(var o=t[r],s=Fs(o),c=-1,l=s.length;++c<l;){var u=s[c],d=e[u];(d===i||Uo(d,Fe[u])&&!Me.call(e,u))&&(e[u]=o[u])}return e})),ws=Xn((function(e){return e.push(i,ea),Tt(Rs,i,e)}));function Ts(e,t,r){var n=null==e?i:Sn(e,t);return n===i?r:n}function Cs(e,t){return null!=e&&_a(e,t,An)}var As=qi((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=Be.call(t)),e[t]=r}),tc(ic)),Ns=qi((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=Be.call(t)),Me.call(e,t)?e[t].push(r):e[t]=[r]}),la),Ps=Xn(Pn);function Is(e){return Wo(e)?Yr(e):Ln(e)}function Fs(e){return Wo(e)?Yr(e,!0):jn(e)}var Os=Fi((function(e,t,r){Jn(e,t,r)})),Rs=Fi((function(e,t,r,n){Jn(e,t,r,n)})),Ms=na((function(e,t){var r={};if(null==e)return r;var n=!1;t=Rt(t,(function(t){return t=bi(t,e),n||(n=t.length>1),t})),Pi(e,aa(e),r),n&&(r=ln(r,7,ta));for(var i=t.length;i--;)pi(r,t[i]);return r}));var Ls=na((function(e,t){return null==e?{}:function(e,t){return Kn(e,t,(function(t,r){return Cs(e,r)}))}(e,t)}));function js(e,t){if(null==e)return{};var r=Rt(aa(e),(function(e){return[e]}));return t=la(t),Kn(e,r,(function(e,r){return t(e,r[0])}))}var Bs=Xi(Is),zs=Xi(Fs);function Us(e){return null==e?[]:er(e,Is(e))}var qs=Li((function(e,t,r){return t=t.toLowerCase(),e+(r?Js(t):t)}));function Js(e){return Xs(vs(e).toLowerCase())}function Vs(e){return(e=vs(e))&&e.replace(ke,ir).replace(tt,"")}var Hs=Li((function(e,t,r){return e+(r?"-":"")+t.toLowerCase()})),Ks=Li((function(e,t,r){return e+(r?" ":"")+t.toLowerCase()})),Ws=Mi("toLowerCase");var Gs=Li((function(e,t,r){return e+(r?"_":"")+t.toLowerCase()}));var $s=Li((function(e,t,r){return e+(r?" ":"")+Xs(t)}));var Ys=Li((function(e,t,r){return e+(r?" ":"")+t.toUpperCase()})),Xs=Mi("toUpperCase");function Qs(e,t,r){return e=vs(e),(t=r?i:t)===i?function(e){return at.test(e)}(e)?function(e){return e.match(nt)||[]}(e):function(e){return e.match(de)||[]}(e):e.match(t)||[]}var Zs=Xn((function(e,t){try{return Tt(e,i,t)}catch(e){return Xo(e)?e:new Se(e)}})),ec=na((function(e,t){return At(t,(function(t){t=La(t),on(e,t,No(e[t],e))})),e}));function tc(e){return function(){return e}}var rc=zi(),nc=zi(!0);function ic(e){return e}function ac(e){return Mn("function"==typeof e?e:ln(e,1))}var oc=Xn((function(e,t){return function(r){return Pn(r,e,t)}})),sc=Xn((function(e,t){return function(r){return Pn(e,r,t)}}));function cc(e,t,r){var n=Is(t),i=En(t,n);null!=r||ts(t)&&(i.length||!n.length)||(r=t,t=e,e=this,i=En(t,Is(t)));var a=!(ts(r)&&"chain"in r&&!r.chain),o=Qo(e);return At(i,(function(r){var n=t[r];e[r]=n,o&&(e.prototype[r]=function(){var t=this.__chain__;if(a||t){var r=e(this.__wrapped__);return(r.__actions__=Ni(this.__actions__)).push({func:n,args:arguments,thisArg:e}),r.__chain__=t,r}return n.apply(e,Mt([this.value()],arguments))})})),e}function lc(){}var uc=Vi(Rt),dc=Vi(Pt),pc=Vi(Bt);function fc(e){return ka(e)?Wt(La(e)):function(e){return function(t){return Sn(t,e)}}(e)}var mc=Ki(),gc=Ki(!0);function _c(){return[]}function hc(){return!1}var yc=Ji((function(e,t){return e+t}),0),vc=$i("ceil"),bc=Ji((function(e,t){return e/t}),1),kc=$i("floor");var xc,Ec=Ji((function(e,t){return e*t}),1),Sc=$i("round"),Dc=Ji((function(e,t){return e-t}),0);return zr.after=function(e,t){if("function"!=typeof t)throw new Ne(a);return e=gs(e),function(){if(--e<1)return t.apply(this,arguments)}},zr.ary=Co,zr.assign=bs,zr.assignIn=ks,zr.assignInWith=xs,zr.assignWith=Es,zr.at=Ss,zr.before=Ao,zr.bind=No,zr.bindAll=ec,zr.bindKey=Po,zr.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ho(e)?e:[e]},zr.chain=fo,zr.chunk=function(e,t,r){t=(r?ba(e,t,r):t===i)?1:yr(gs(t),0);var a=null==e?0:e.length;if(!a||t<1)return[];for(var o=0,s=0,c=n(mt(a/t));o<a;)c[s++]=ii(e,o,o+=t);return c},zr.compact=function(e){for(var t=-1,r=null==e?0:e.length,n=0,i=[];++t<r;){var a=e[t];a&&(i[n++]=a)}return i},zr.concat=function(){var e=arguments.length;if(!e)return[];for(var t=n(e-1),r=arguments[0],i=e;i--;)t[i-1]=arguments[i];return Mt(Ho(r)?Ni(r):[r],yn(t,1))},zr.cond=function(e){var t=null==e?0:e.length,r=la();return e=t?Rt(e,(function(e){if("function"!=typeof e[1])throw new Ne(a);return[r(e[0]),e[1]]})):[],Xn((function(r){for(var n=-1;++n<t;){var i=e[n];if(Tt(i[0],this,r))return Tt(i[1],this,r)}}))},zr.conforms=function(e){return function(e){var t=Is(e);return function(r){return un(r,e,t)}}(ln(e,1))},zr.constant=tc,zr.countBy=_o,zr.create=function(e,t){var r=Ur(e);return null==t?r:an(r,t)},zr.curry=function e(t,r,n){var a=Qi(t,8,i,i,i,i,i,r=n?i:r);return a.placeholder=e.placeholder,a},zr.curryRight=function e(t,r,n){var a=Qi(t,c,i,i,i,i,i,r=n?i:r);return a.placeholder=e.placeholder,a},zr.debounce=Io,zr.defaults=Ds,zr.defaultsDeep=ws,zr.defer=Fo,zr.delay=Oo,zr.difference=za,zr.differenceBy=Ua,zr.differenceWith=qa,zr.drop=function(e,t,r){var n=null==e?0:e.length;return n?ii(e,(t=r||t===i?1:gs(t))<0?0:t,n):[]},zr.dropRight=function(e,t,r){var n=null==e?0:e.length;return n?ii(e,0,(t=n-(t=r||t===i?1:gs(t)))<0?0:t):[]},zr.dropRightWhile=function(e,t){return e&&e.length?mi(e,la(t,3),!0,!0):[]},zr.dropWhile=function(e,t){return e&&e.length?mi(e,la(t,3),!0):[]},zr.fill=function(e,t,r,n){var a=null==e?0:e.length;return a?(r&&"number"!=typeof r&&ba(e,t,r)&&(r=0,n=a),function(e,t,r,n){var a=e.length;for((r=gs(r))<0&&(r=-r>a?0:a+r),(n=n===i||n>a?a:gs(n))<0&&(n+=a),n=r>n?0:_s(n);r<n;)e[r++]=t;return e}(e,t,r,n)):[]},zr.filter=function(e,t){return(Ho(e)?It:hn)(e,la(t,3))},zr.flatMap=function(e,t){return yn(So(e,t),1)},zr.flatMapDeep=function(e,t){return yn(So(e,t),f)},zr.flatMapDepth=function(e,t,r){return r=r===i?1:gs(r),yn(So(e,t),r)},zr.flatten=Ha,zr.flattenDeep=function(e){return(null==e?0:e.length)?yn(e,f):[]},zr.flattenDepth=function(e,t){return(null==e?0:e.length)?yn(e,t=t===i?1:gs(t)):[]},zr.flip=function(e){return Qi(e,512)},zr.flow=rc,zr.flowRight=nc,zr.fromPairs=function(e){for(var t=-1,r=null==e?0:e.length,n={};++t<r;){var i=e[t];n[i[0]]=i[1]}return n},zr.functions=function(e){return null==e?[]:En(e,Is(e))},zr.functionsIn=function(e){return null==e?[]:En(e,Fs(e))},zr.groupBy=ko,zr.initial=function(e){return(null==e?0:e.length)?ii(e,0,-1):[]},zr.intersection=Wa,zr.intersectionBy=Ga,zr.intersectionWith=$a,zr.invert=As,zr.invertBy=Ns,zr.invokeMap=xo,zr.iteratee=ac,zr.keyBy=Eo,zr.keys=Is,zr.keysIn=Fs,zr.map=So,zr.mapKeys=function(e,t){var r={};return t=la(t,3),kn(e,(function(e,n,i){on(r,t(e,n,i),e)})),r},zr.mapValues=function(e,t){var r={};return t=la(t,3),kn(e,(function(e,n,i){on(r,n,t(e,n,i))})),r},zr.matches=function(e){return Un(ln(e,1))},zr.matchesProperty=function(e,t){return qn(e,ln(t,1))},zr.memoize=Ro,zr.merge=Os,zr.mergeWith=Rs,zr.method=oc,zr.methodOf=sc,zr.mixin=cc,zr.negate=Mo,zr.nthArg=function(e){return e=gs(e),Xn((function(t){return Vn(t,e)}))},zr.omit=Ms,zr.omitBy=function(e,t){return js(e,Mo(la(t)))},zr.once=function(e){return Ao(2,e)},zr.orderBy=function(e,t,r,n){return null==e?[]:(Ho(t)||(t=null==t?[]:[t]),Ho(r=n?i:r)||(r=null==r?[]:[r]),Hn(e,t,r))},zr.over=uc,zr.overArgs=Lo,zr.overEvery=dc,zr.overSome=pc,zr.partial=jo,zr.partialRight=Bo,zr.partition=Do,zr.pick=Ls,zr.pickBy=js,zr.property=fc,zr.propertyOf=function(e){return function(t){return null==e?i:Sn(e,t)}},zr.pull=Xa,zr.pullAll=Qa,zr.pullAllBy=function(e,t,r){return e&&e.length&&t&&t.length?Wn(e,t,la(r,2)):e},zr.pullAllWith=function(e,t,r){return e&&e.length&&t&&t.length?Wn(e,t,i,r):e},zr.pullAt=Za,zr.range=mc,zr.rangeRight=gc,zr.rearg=zo,zr.reject=function(e,t){return(Ho(e)?It:hn)(e,Mo(la(t,3)))},zr.remove=function(e,t){var r=[];if(!e||!e.length)return r;var n=-1,i=[],a=e.length;for(t=la(t,3);++n<a;){var o=e[n];t(o,n,e)&&(r.push(o),i.push(n))}return Gn(e,i),r},zr.rest=function(e,t){if("function"!=typeof e)throw new Ne(a);return Xn(e,t=t===i?t:gs(t))},zr.reverse=eo,zr.sampleSize=function(e,t,r){return t=(r?ba(e,t,r):t===i)?1:gs(t),(Ho(e)?Qr:Zn)(e,t)},zr.set=function(e,t,r){return null==e?e:ei(e,t,r)},zr.setWith=function(e,t,r,n){return n="function"==typeof n?n:i,null==e?e:ei(e,t,r,n)},zr.shuffle=function(e){return(Ho(e)?Zr:ni)(e)},zr.slice=function(e,t,r){var n=null==e?0:e.length;return n?(r&&"number"!=typeof r&&ba(e,t,r)?(t=0,r=n):(t=null==t?0:gs(t),r=r===i?n:gs(r)),ii(e,t,r)):[]},zr.sortBy=wo,zr.sortedUniq=function(e){return e&&e.length?ci(e):[]},zr.sortedUniqBy=function(e,t){return e&&e.length?ci(e,la(t,2)):[]},zr.split=function(e,t,r){return r&&"number"!=typeof r&&ba(e,t,r)&&(t=r=i),(r=r===i?_:r>>>0)?(e=vs(e))&&("string"==typeof t||null!=t&&!os(t))&&!(t=ui(t))&&sr(e)?xi(mr(e),0,r):e.split(t,r):[]},zr.spread=function(e,t){if("function"!=typeof e)throw new Ne(a);return t=null==t?0:yr(gs(t),0),Xn((function(r){var n=r[t],i=xi(r,0,t);return n&&Mt(i,n),Tt(e,this,i)}))},zr.tail=function(e){var t=null==e?0:e.length;return t?ii(e,1,t):[]},zr.take=function(e,t,r){return e&&e.length?ii(e,0,(t=r||t===i?1:gs(t))<0?0:t):[]},zr.takeRight=function(e,t,r){var n=null==e?0:e.length;return n?ii(e,(t=n-(t=r||t===i?1:gs(t)))<0?0:t,n):[]},zr.takeRightWhile=function(e,t){return e&&e.length?mi(e,la(t,3),!1,!0):[]},zr.takeWhile=function(e,t){return e&&e.length?mi(e,la(t,3)):[]},zr.tap=function(e,t){return t(e),e},zr.throttle=function(e,t,r){var n=!0,i=!0;if("function"!=typeof e)throw new Ne(a);return ts(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),Io(e,t,{leading:n,maxWait:t,trailing:i})},zr.thru=mo,zr.toArray=fs,zr.toPairs=Bs,zr.toPairsIn=zs,zr.toPath=function(e){return Ho(e)?Rt(e,La):ls(e)?[e]:Ni(Ma(vs(e)))},zr.toPlainObject=ys,zr.transform=function(e,t,r){var n=Ho(e),i=n||$o(e)||us(e);if(t=la(t,4),null==r){var a=e&&e.constructor;r=i?n?new a:[]:ts(e)&&Qo(a)?Ur(We(e)):{}}return(i?At:kn)(e,(function(e,n,i){return t(r,e,n,i)})),r},zr.unary=function(e){return Co(e,1)},zr.union=to,zr.unionBy=ro,zr.unionWith=no,zr.uniq=function(e){return e&&e.length?di(e):[]},zr.uniqBy=function(e,t){return e&&e.length?di(e,la(t,2)):[]},zr.uniqWith=function(e,t){return t="function"==typeof t?t:i,e&&e.length?di(e,i,t):[]},zr.unset=function(e,t){return null==e||pi(e,t)},zr.unzip=io,zr.unzipWith=ao,zr.update=function(e,t,r){return null==e?e:fi(e,t,vi(r))},zr.updateWith=function(e,t,r,n){return n="function"==typeof n?n:i,null==e?e:fi(e,t,vi(r),n)},zr.values=Us,zr.valuesIn=function(e){return null==e?[]:er(e,Fs(e))},zr.without=oo,zr.words=Qs,zr.wrap=function(e,t){return jo(vi(t),e)},zr.xor=so,zr.xorBy=co,zr.xorWith=lo,zr.zip=uo,zr.zipObject=function(e,t){return hi(e||[],t||[],tn)},zr.zipObjectDeep=function(e,t){return hi(e||[],t||[],ei)},zr.zipWith=po,zr.entries=Bs,zr.entriesIn=zs,zr.extend=ks,zr.extendWith=xs,cc(zr,zr),zr.add=yc,zr.attempt=Zs,zr.camelCase=qs,zr.capitalize=Js,zr.ceil=vc,zr.clamp=function(e,t,r){return r===i&&(r=t,t=i),r!==i&&(r=(r=hs(r))==r?r:0),t!==i&&(t=(t=hs(t))==t?t:0),cn(hs(e),t,r)},zr.clone=function(e){return ln(e,4)},zr.cloneDeep=function(e){return ln(e,5)},zr.cloneDeepWith=function(e,t){return ln(e,5,t="function"==typeof t?t:i)},zr.cloneWith=function(e,t){return ln(e,4,t="function"==typeof t?t:i)},zr.conformsTo=function(e,t){return null==t||un(e,t,Is(t))},zr.deburr=Vs,zr.defaultTo=function(e,t){return null==e||e!=e?t:e},zr.divide=bc,zr.endsWith=function(e,t,r){e=vs(e),t=ui(t);var n=e.length,a=r=r===i?n:cn(gs(r),0,n);return(r-=t.length)>=0&&e.slice(r,a)==t},zr.eq=Uo,zr.escape=function(e){return(e=vs(e))&&X.test(e)?e.replace($,ar):e},zr.escapeRegExp=function(e){return(e=vs(e))&&ae.test(e)?e.replace(ie,"\\$&"):e},zr.every=function(e,t,r){var n=Ho(e)?Pt:gn;return r&&ba(e,t,r)&&(t=i),n(e,la(t,3))},zr.find=ho,zr.findIndex=Ja,zr.findKey=function(e,t){return Ut(e,la(t,3),kn)},zr.findLast=yo,zr.findLastIndex=Va,zr.findLastKey=function(e,t){return Ut(e,la(t,3),xn)},zr.floor=kc,zr.forEach=vo,zr.forEachRight=bo,zr.forIn=function(e,t){return null==e?e:vn(e,la(t,3),Fs)},zr.forInRight=function(e,t){return null==e?e:bn(e,la(t,3),Fs)},zr.forOwn=function(e,t){return e&&kn(e,la(t,3))},zr.forOwnRight=function(e,t){return e&&xn(e,la(t,3))},zr.get=Ts,zr.gt=qo,zr.gte=Jo,zr.has=function(e,t){return null!=e&&_a(e,t,Cn)},zr.hasIn=Cs,zr.head=Ka,zr.identity=ic,zr.includes=function(e,t,r,n){e=Wo(e)?e:Us(e),r=r&&!n?gs(r):0;var i=e.length;return r<0&&(r=yr(i+r,0)),cs(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&Jt(e,t,r)>-1},zr.indexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:gs(r);return i<0&&(i=yr(n+i,0)),Jt(e,t,i)},zr.inRange=function(e,t,r){return t=ms(t),r===i?(r=t,t=0):r=ms(r),function(e,t,r){return e>=vr(t,r)&&e<yr(t,r)}(e=hs(e),t,r)},zr.invoke=Ps,zr.isArguments=Vo,zr.isArray=Ho,zr.isArrayBuffer=Ko,zr.isArrayLike=Wo,zr.isArrayLikeObject=Go,zr.isBoolean=function(e){return!0===e||!1===e||rs(e)&&wn(e)==b},zr.isBuffer=$o,zr.isDate=Yo,zr.isElement=function(e){return rs(e)&&1===e.nodeType&&!as(e)},zr.isEmpty=function(e){if(null==e)return!0;if(Wo(e)&&(Ho(e)||"string"==typeof e||"function"==typeof e.splice||$o(e)||us(e)||Vo(e)))return!e.length;var t=ga(e);if(t==D||t==N)return!e.size;if(Sa(e))return!Ln(e).length;for(var r in e)if(Me.call(e,r))return!1;return!0},zr.isEqual=function(e,t){return Fn(e,t)},zr.isEqualWith=function(e,t,r){var n=(r="function"==typeof r?r:i)?r(e,t):i;return n===i?Fn(e,t,i,r):!!n},zr.isError=Xo,zr.isFinite=function(e){return"number"==typeof e&&bt(e)},zr.isFunction=Qo,zr.isInteger=Zo,zr.isLength=es,zr.isMap=ns,zr.isMatch=function(e,t){return e===t||On(e,t,da(t))},zr.isMatchWith=function(e,t,r){return r="function"==typeof r?r:i,On(e,t,da(t),r)},zr.isNaN=function(e){return is(e)&&e!=+e},zr.isNative=function(e){if(Ea(e))throw new Se("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Rn(e)},zr.isNil=function(e){return null==e},zr.isNull=function(e){return null===e},zr.isNumber=is,zr.isObject=ts,zr.isObjectLike=rs,zr.isPlainObject=as,zr.isRegExp=os,zr.isSafeInteger=function(e){return Zo(e)&&e>=-9007199254740991&&e<=m},zr.isSet=ss,zr.isString=cs,zr.isSymbol=ls,zr.isTypedArray=us,zr.isUndefined=function(e){return e===i},zr.isWeakMap=function(e){return rs(e)&&ga(e)==F},zr.isWeakSet=function(e){return rs(e)&&"[object WeakSet]"==wn(e)},zr.join=function(e,t){return null==e?"":zt.call(e,t)},zr.kebabCase=Hs,zr.last=Ya,zr.lastIndexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var a=n;return r!==i&&(a=(a=gs(r))<0?yr(n+a,0):vr(a,n-1)),t==t?function(e,t,r){for(var n=r+1;n--;)if(e[n]===t)return n;return n}(e,t,a):qt(e,Ht,a,!0)},zr.lowerCase=Ks,zr.lowerFirst=Ws,zr.lt=ds,zr.lte=ps,zr.max=function(e){return e&&e.length?_n(e,ic,Tn):i},zr.maxBy=function(e,t){return e&&e.length?_n(e,la(t,2),Tn):i},zr.mean=function(e){return Kt(e,ic)},zr.meanBy=function(e,t){return Kt(e,la(t,2))},zr.min=function(e){return e&&e.length?_n(e,ic,Bn):i},zr.minBy=function(e,t){return e&&e.length?_n(e,la(t,2),Bn):i},zr.stubArray=_c,zr.stubFalse=hc,zr.stubObject=function(){return{}},zr.stubString=function(){return""},zr.stubTrue=function(){return!0},zr.multiply=Ec,zr.nth=function(e,t){return e&&e.length?Vn(e,gs(t)):i},zr.noConflict=function(){return gt._===this&&(gt._=Ue),this},zr.noop=lc,zr.now=To,zr.pad=function(e,t,r){e=vs(e);var n=(t=gs(t))?fr(e):0;if(!t||n>=t)return e;var i=(t-n)/2;return Hi(_t(i),r)+e+Hi(mt(i),r)},zr.padEnd=function(e,t,r){e=vs(e);var n=(t=gs(t))?fr(e):0;return t&&n<t?e+Hi(t-n,r):e},zr.padStart=function(e,t,r){e=vs(e);var n=(t=gs(t))?fr(e):0;return t&&n<t?Hi(t-n,r)+e:e},zr.parseInt=function(e,t,r){return r||null==t?t=0:t&&(t=+t),kr(vs(e).replace(oe,""),t||0)},zr.random=function(e,t,r){if(r&&"boolean"!=typeof r&&ba(e,t,r)&&(t=r=i),r===i&&("boolean"==typeof t?(r=t,t=i):"boolean"==typeof e&&(r=e,e=i)),e===i&&t===i?(e=0,t=1):(e=ms(e),t===i?(t=e,e=0):t=ms(t)),e>t){var n=e;e=t,t=n}if(r||e%1||t%1){var a=xr();return vr(e+a*(t-e+dt("1e-"+((a+"").length-1))),t)}return $n(e,t)},zr.reduce=function(e,t,r){var n=Ho(e)?Lt:$t,i=arguments.length<3;return n(e,la(t,4),r,i,fn)},zr.reduceRight=function(e,t,r){var n=Ho(e)?jt:$t,i=arguments.length<3;return n(e,la(t,4),r,i,mn)},zr.repeat=function(e,t,r){return t=(r?ba(e,t,r):t===i)?1:gs(t),Yn(vs(e),t)},zr.replace=function(){var e=arguments,t=vs(e[0]);return e.length<3?t:t.replace(e[1],e[2])},zr.result=function(e,t,r){var n=-1,a=(t=bi(t,e)).length;for(a||(a=1,e=i);++n<a;){var o=null==e?i:e[La(t[n])];o===i&&(n=a,o=r),e=Qo(o)?o.call(e):o}return e},zr.round=Sc,zr.runInContext=e,zr.sample=function(e){return(Ho(e)?Xr:Qn)(e)},zr.size=function(e){if(null==e)return 0;if(Wo(e))return cs(e)?fr(e):e.length;var t=ga(e);return t==D||t==N?e.size:Ln(e).length},zr.snakeCase=Gs,zr.some=function(e,t,r){var n=Ho(e)?Bt:ai;return r&&ba(e,t,r)&&(t=i),n(e,la(t,3))},zr.sortedIndex=function(e,t){return oi(e,t)},zr.sortedIndexBy=function(e,t,r){return si(e,t,la(r,2))},zr.sortedIndexOf=function(e,t){var r=null==e?0:e.length;if(r){var n=oi(e,t);if(n<r&&Uo(e[n],t))return n}return-1},zr.sortedLastIndex=function(e,t){return oi(e,t,!0)},zr.sortedLastIndexBy=function(e,t,r){return si(e,t,la(r,2),!0)},zr.sortedLastIndexOf=function(e,t){if(null==e?0:e.length){var r=oi(e,t,!0)-1;if(Uo(e[r],t))return r}return-1},zr.startCase=$s,zr.startsWith=function(e,t,r){return e=vs(e),r=null==r?0:cn(gs(r),0,e.length),t=ui(t),e.slice(r,r+t.length)==t},zr.subtract=Dc,zr.sum=function(e){return e&&e.length?Yt(e,ic):0},zr.sumBy=function(e,t){return e&&e.length?Yt(e,la(t,2)):0},zr.template=function(e,t,r){var n=zr.templateSettings;r&&ba(e,t,r)&&(t=i),e=vs(e),t=xs({},t,n,Zi);var a,o,s=xs({},t.imports,n.imports,Zi),c=Is(s),l=er(s,c),u=0,d=t.interpolate||xe,p="__p += '",f=Ce((t.escape||xe).source+"|"+d.source+"|"+(d===ee?me:xe).source+"|"+(t.evaluate||xe).source+"|$","g"),m="//# sourceURL="+(Me.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++st+"]")+"\n";e.replace(f,(function(t,r,n,i,s,c){return n||(n=i),p+=e.slice(u,c).replace(Ee,or),r&&(a=!0,p+="' +\n__e("+r+") +\n'"),s&&(o=!0,p+="';\n"+s+";\n__p += '"),n&&(p+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),u=c+t.length,t})),p+="';\n";var g=Me.call(t,"variable")&&t.variable;if(g){if(pe.test(g))throw new Se("Invalid `variable` option passed into `_.template`")}else p="with (obj) {\n"+p+"\n}\n";p=(o?p.replace(H,""):p).replace(K,"$1").replace(W,"$1;"),p="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(a?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+p+"return __p\n}";var _=Zs((function(){return De(c,m+"return "+p).apply(i,l)}));if(_.source=p,Xo(_))throw _;return _},zr.times=function(e,t){if((e=gs(e))<1||e>m)return[];var r=_,n=vr(e,_);t=la(t),e-=_;for(var i=Xt(n,t);++r<e;)t(r);return i},zr.toFinite=ms,zr.toInteger=gs,zr.toLength=_s,zr.toLower=function(e){return vs(e).toLowerCase()},zr.toNumber=hs,zr.toSafeInteger=function(e){return e?cn(gs(e),-9007199254740991,m):0===e?e:0},zr.toString=vs,zr.toUpper=function(e){return vs(e).toUpperCase()},zr.trim=function(e,t,r){if((e=vs(e))&&(r||t===i))return Qt(e);if(!e||!(t=ui(t)))return e;var n=mr(e),a=mr(t);return xi(n,rr(n,a),nr(n,a)+1).join("")},zr.trimEnd=function(e,t,r){if((e=vs(e))&&(r||t===i))return e.slice(0,gr(e)+1);if(!e||!(t=ui(t)))return e;var n=mr(e);return xi(n,0,nr(n,mr(t))+1).join("")},zr.trimStart=function(e,t,r){if((e=vs(e))&&(r||t===i))return e.replace(oe,"");if(!e||!(t=ui(t)))return e;var n=mr(e);return xi(n,rr(n,mr(t))).join("")},zr.truncate=function(e,t){var r=30,n="...";if(ts(t)){var a="separator"in t?t.separator:a;r="length"in t?gs(t.length):r,n="omission"in t?ui(t.omission):n}var o=(e=vs(e)).length;if(sr(e)){var s=mr(e);o=s.length}if(r>=o)return e;var c=r-fr(n);if(c<1)return n;var l=s?xi(s,0,c).join(""):e.slice(0,c);if(a===i)return l+n;if(s&&(c+=l.length-c),os(a)){if(e.slice(c).search(a)){var u,d=l;for(a.global||(a=Ce(a.source,vs(ge.exec(a))+"g")),a.lastIndex=0;u=a.exec(d);)var p=u.index;l=l.slice(0,p===i?c:p)}}else if(e.indexOf(ui(a),c)!=c){var f=l.lastIndexOf(a);f>-1&&(l=l.slice(0,f))}return l+n},zr.unescape=function(e){return(e=vs(e))&&Y.test(e)?e.replace(G,_r):e},zr.uniqueId=function(e){var t=++Le;return vs(e)+t},zr.upperCase=Ys,zr.upperFirst=Xs,zr.each=vo,zr.eachRight=bo,zr.first=Ka,cc(zr,(xc={},kn(zr,(function(e,t){Me.call(zr.prototype,t)||(xc[t]=e)})),xc),{chain:!1}),zr.VERSION="4.17.21",At(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){zr[e].placeholder=zr})),At(["drop","take"],(function(e,t){Vr.prototype[e]=function(r){r=r===i?1:yr(gs(r),0);var n=this.__filtered__&&!t?new Vr(this):this.clone();return n.__filtered__?n.__takeCount__=vr(r,n.__takeCount__):n.__views__.push({size:vr(r,_),type:e+(n.__dir__<0?"Right":"")}),n},Vr.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),At(["filter","map","takeWhile"],(function(e,t){var r=t+1,n=1==r||3==r;Vr.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:la(e,3),type:r}),t.__filtered__=t.__filtered__||n,t}})),At(["head","last"],(function(e,t){var r="take"+(t?"Right":"");Vr.prototype[e]=function(){return this[r](1).value()[0]}})),At(["initial","tail"],(function(e,t){var r="drop"+(t?"":"Right");Vr.prototype[e]=function(){return this.__filtered__?new Vr(this):this[r](1)}})),Vr.prototype.compact=function(){return this.filter(ic)},Vr.prototype.find=function(e){return this.filter(e).head()},Vr.prototype.findLast=function(e){return this.reverse().find(e)},Vr.prototype.invokeMap=Xn((function(e,t){return"function"==typeof e?new Vr(this):this.map((function(r){return Pn(r,e,t)}))})),Vr.prototype.reject=function(e){return this.filter(Mo(la(e)))},Vr.prototype.slice=function(e,t){e=gs(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Vr(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==i&&(r=(t=gs(t))<0?r.dropRight(-t):r.take(t-e)),r)},Vr.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Vr.prototype.toArray=function(){return this.take(_)},kn(Vr.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),n=/^(?:head|last)$/.test(t),a=zr[n?"take"+("last"==t?"Right":""):t],o=n||/^find/.test(t);a&&(zr.prototype[t]=function(){var t=this.__wrapped__,s=n?[1]:arguments,c=t instanceof Vr,l=s[0],u=c||Ho(t),d=function(e){var t=a.apply(zr,Mt([e],s));return n&&p?t[0]:t};u&&r&&"function"==typeof l&&1!=l.length&&(c=u=!1);var p=this.__chain__,f=!!this.__actions__.length,m=o&&!p,g=c&&!f;if(!o&&u){t=g?t:new Vr(this);var _=e.apply(t,s);return _.__actions__.push({func:mo,args:[d],thisArg:i}),new Jr(_,p)}return m&&g?e.apply(this,s):(_=this.thru(d),m?n?_.value()[0]:_.value():_)})})),At(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Pe[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);zr.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var i=this.value();return t.apply(Ho(i)?i:[],e)}return this[r]((function(r){return t.apply(Ho(r)?r:[],e)}))}})),kn(Vr.prototype,(function(e,t){var r=zr[t];if(r){var n=r.name+"";Me.call(Pr,n)||(Pr[n]=[]),Pr[n].push({name:t,func:r})}})),Pr[Ui(i,2).name]=[{name:"wrapper",func:i}],Vr.prototype.clone=function(){var e=new Vr(this.__wrapped__);return e.__actions__=Ni(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ni(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ni(this.__views__),e},Vr.prototype.reverse=function(){if(this.__filtered__){var e=new Vr(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Vr.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,r=Ho(e),n=t<0,i=r?e.length:0,a=function(e,t,r){var n=-1,i=r.length;for(;++n<i;){var a=r[n],o=a.size;switch(a.type){case"drop":e+=o;break;case"dropRight":t-=o;break;case"take":t=vr(t,e+o);break;case"takeRight":e=yr(e,t-o)}}return{start:e,end:t}}(0,i,this.__views__),o=a.start,s=a.end,c=s-o,l=n?s:o-1,u=this.__iteratees__,d=u.length,p=0,f=vr(c,this.__takeCount__);if(!r||!n&&i==c&&f==c)return gi(e,this.__actions__);var m=[];e:for(;c--&&p<f;){for(var g=-1,_=e[l+=t];++g<d;){var h=u[g],y=h.iteratee,v=h.type,b=y(_);if(2==v)_=b;else if(!b){if(1==v)continue e;break e}}m[p++]=_}return m},zr.prototype.at=go,zr.prototype.chain=function(){return fo(this)},zr.prototype.commit=function(){return new Jr(this.value(),this.__chain__)},zr.prototype.next=function(){this.__values__===i&&(this.__values__=fs(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?i:this.__values__[this.__index__++]}},zr.prototype.plant=function(e){for(var t,r=this;r instanceof qr;){var n=Ba(r);n.__index__=0,n.__values__=i,t?a.__wrapped__=n:t=n;var a=n;r=r.__wrapped__}return a.__wrapped__=e,t},zr.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Vr){var t=e;return this.__actions__.length&&(t=new Vr(this)),(t=t.reverse()).__actions__.push({func:mo,args:[eo],thisArg:i}),new Jr(t,this.__chain__)}return this.thru(eo)},zr.prototype.toJSON=zr.prototype.valueOf=zr.prototype.value=function(){return gi(this.__wrapped__,this.__actions__)},zr.prototype.first=zr.prototype.head,Qe&&(zr.prototype[Qe]=function(){return this}),zr}();gt._=hr,(n=function(){return hr}.call(t,r,t,e))===i||(e.exports=n)}.call(this)},91171:(e,t,r)=>{e.exports=p,p.Minimatch=f;var n=function(){try{return r(71017)}catch(e){}}()||{sep:"/"};p.sep=n.sep;var i=p.GLOBSTAR=f.GLOBSTAR={},a=r(3644),o={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},s="[^/]",c=s+"*?",l="().*{}+?[]^$\\!".split("").reduce((function(e,t){return e[t]=!0,e}),{});var u=/\/+/;function d(e,t){t=t||{};var r={};return Object.keys(e).forEach((function(t){r[t]=e[t]})),Object.keys(t).forEach((function(e){r[e]=t[e]})),r}function p(e,t,r){return g(t),r||(r={}),!(!r.nocomment&&"#"===t.charAt(0))&&new f(t,r).match(e)}function f(e,t){if(!(this instanceof f))return new f(e,t);g(e),t||(t={}),e=e.trim(),t.allowWindowsEscape||"/"===n.sep||(e=e.split(n.sep).join("/")),this.options=t,this.set=[],this.pattern=e,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.make()}function m(e,t){return t||(t=this instanceof f?this.options:{}),e=void 0===e?this.pattern:e,g(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:a(e)}p.filter=function(e,t){return t=t||{},function(r,n,i){return p(r,e,t)}},p.defaults=function(e){if(!e||"object"!=typeof e||!Object.keys(e).length)return p;var t=p,r=function(r,n,i){return t(r,n,d(e,i))};return(r.Minimatch=function(r,n){return new t.Minimatch(r,d(e,n))}).defaults=function(r){return t.defaults(d(e,r)).Minimatch},r.filter=function(r,n){return t.filter(r,d(e,n))},r.defaults=function(r){return t.defaults(d(e,r))},r.makeRe=function(r,n){return t.makeRe(r,d(e,n))},r.braceExpand=function(r,n){return t.braceExpand(r,d(e,n))},r.match=function(r,n,i){return t.match(r,n,d(e,i))},r},f.defaults=function(e){return p.defaults(e).Minimatch},f.prototype.debug=function(){},f.prototype.make=function(){var e=this.pattern,t=this.options;if(!t.nocomment&&"#"===e.charAt(0))return void(this.comment=!0);if(!e)return void(this.empty=!0);this.parseNegate();var r=this.globSet=this.braceExpand();t.debug&&(this.debug=function(){console.error.apply(console,arguments)});this.debug(this.pattern,r),r=this.globParts=r.map((function(e){return e.split(u)})),this.debug(this.pattern,r),r=r.map((function(e,t,r){return e.map(this.parse,this)}),this),this.debug(this.pattern,r),r=r.filter((function(e){return-1===e.indexOf(!1)})),this.debug(this.pattern,r),this.set=r},f.prototype.parseNegate=function(){var e=this.pattern,t=!1,r=this.options,n=0;if(r.nonegate)return;for(var i=0,a=e.length;i<a&&"!"===e.charAt(i);i++)t=!t,n++;n&&(this.pattern=e.substr(n));this.negate=t},p.braceExpand=function(e,t){return m(e,t)},f.prototype.braceExpand=m;var g=function(e){if("string"!=typeof e)throw new TypeError("invalid pattern");if(e.length>65536)throw new TypeError("pattern is too long")};f.prototype.parse=function(e,t){g(e);var r=this.options;if("**"===e){if(!r.noglobstar)return i;e="*"}if(""===e)return"";var n,a="",u=!!r.nocase,d=!1,p=[],f=[],m=!1,h=-1,y=-1,v="."===e.charAt(0)?"":r.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",b=this;function k(){if(n){switch(n){case"*":a+=c,u=!0;break;case"?":a+=s,u=!0;break;default:a+="\\"+n}b.debug("clearStateChar %j %j",n,a),n=!1}}for(var x,E=0,S=e.length;E<S&&(x=e.charAt(E));E++)if(this.debug("%s\t%s %s %j",e,E,a,x),d&&l[x])a+="\\"+x,d=!1;else switch(x){case"/":return!1;case"\\":k(),d=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s\t%s %s %j <-- stateChar",e,E,a,x),m){this.debug(" in class"),"!"===x&&E===y+1&&(x="^"),a+=x;continue}b.debug("call clearStateChar %j",n),k(),n=x,r.noext&&k();continue;case"(":if(m){a+="(";continue}if(!n){a+="\\(";continue}p.push({type:n,start:E-1,reStart:a.length,open:o[n].open,close:o[n].close}),a+="!"===n?"(?:(?!(?:":"(?:",this.debug("plType %j %j",n,a),n=!1;continue;case")":if(m||!p.length){a+="\\)";continue}k(),u=!0;var D=p.pop();a+=D.close,"!"===D.type&&f.push(D),D.reEnd=a.length;continue;case"|":if(m||!p.length||d){a+="\\|",d=!1;continue}k(),a+="|";continue;case"[":if(k(),m){a+="\\"+x;continue}m=!0,y=E,h=a.length,a+=x;continue;case"]":if(E===y+1||!m){a+="\\"+x,d=!1;continue}var w=e.substring(y+1,E);try{RegExp("["+w+"]")}catch(e){var T=this.parse(w,_);a=a.substr(0,h)+"\\["+T[0]+"\\]",u=u||T[1],m=!1;continue}u=!0,m=!1,a+=x;continue;default:k(),d?d=!1:!l[x]||"^"===x&&m||(a+="\\"),a+=x}m&&(w=e.substr(y+1),T=this.parse(w,_),a=a.substr(0,h)+"\\["+T[0],u=u||T[1]);for(D=p.pop();D;D=p.pop()){var C=a.slice(D.reStart+D.open.length);this.debug("setting tail",a,D),C=C.replace(/((?:\\{2}){0,64})(\\?)\|/g,(function(e,t,r){return r||(r="\\"),t+t+r+"|"})),this.debug("tail=%j\n %s",C,C,D,a);var A="*"===D.type?c:"?"===D.type?s:"\\"+D.type;u=!0,a=a.slice(0,D.reStart)+A+"\\("+C}k(),d&&(a+="\\\\");var N=!1;switch(a.charAt(0)){case"[":case".":case"(":N=!0}for(var P=f.length-1;P>-1;P--){var I=f[P],F=a.slice(0,I.reStart),O=a.slice(I.reStart,I.reEnd-8),R=a.slice(I.reEnd-8,I.reEnd),M=a.slice(I.reEnd);R+=M;var L=F.split("(").length-1,j=M;for(E=0;E<L;E++)j=j.replace(/\)[+*?]?/,"");var B="";""===(M=j)&&t!==_&&(B="$"),a=F+O+M+B+R}""!==a&&u&&(a="(?=.)"+a);N&&(a=v+a);if(t===_)return[a,u];if(!u)return function(e){return e.replace(/\\(.)/g,"$1")}(e);var z=r.nocase?"i":"";try{var U=new RegExp("^"+a+"$",z)}catch(e){return new RegExp("$.")}return U._glob=e,U._src=a,U};var _={};p.makeRe=function(e,t){return new f(e,t||{}).makeRe()},f.prototype.makeRe=function(){if(this.regexp||!1===this.regexp)return this.regexp;var e=this.set;if(!e.length)return this.regexp=!1,this.regexp;var t=this.options,r=t.noglobstar?c:t.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",n=t.nocase?"i":"",a=e.map((function(e){return e.map((function(e){return e===i?r:"string"==typeof e?function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}(e):e._src})).join("\\/")})).join("|");a="^(?:"+a+")$",this.negate&&(a="^(?!"+a+").*$");try{this.regexp=new RegExp(a,n)}catch(e){this.regexp=!1}return this.regexp},p.match=function(e,t,r){var n=new f(t,r=r||{});return e=e.filter((function(e){return n.match(e)})),n.options.nonull&&!e.length&&e.push(t),e},f.prototype.match=function(e,t){if(void 0===t&&(t=this.partial),this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return""===e;if("/"===e&&t)return!0;var r=this.options;"/"!==n.sep&&(e=e.split(n.sep).join("/")),e=e.split(u),this.debug(this.pattern,"split",e);var i,a,o=this.set;for(this.debug(this.pattern,"set",o),a=e.length-1;a>=0&&!(i=e[a]);a--);for(a=0;a<o.length;a++){var s=o[a],c=e;if(r.matchBase&&1===s.length&&(c=[i]),this.matchOne(c,s,t))return!!r.flipNegate||!this.negate}return!r.flipNegate&&this.negate},f.prototype.matchOne=function(e,t,r){var n=this.options;this.debug("matchOne",{this:this,file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var a=0,o=0,s=e.length,c=t.length;a<s&&o<c;a++,o++){this.debug("matchOne loop");var l,u=t[o],d=e[a];if(this.debug(t,u,d),!1===u)return!1;if(u===i){this.debug("GLOBSTAR",[t,u,d]);var p=a,f=o+1;if(f===c){for(this.debug("** at the end");a<s;a++)if("."===e[a]||".."===e[a]||!n.dot&&"."===e[a].charAt(0))return!1;return!0}for(;p<s;){var m=e[p];if(this.debug("\nglobstar while",e,p,t,f,m),this.matchOne(e.slice(p),t.slice(f),r))return this.debug("globstar found match!",p,s,m),!0;if("."===m||".."===m||!n.dot&&"."===m.charAt(0)){this.debug("dot detected!",e,p,t,f);break}this.debug("globstar swallow a segment, and continue"),p++}return!(!r||(this.debug("\n>>> no match, partial?",e,p,t,f),p!==s))}if("string"==typeof u?(l=d===u,this.debug("string match",u,d,l)):(l=d.match(u),this.debug("pattern match",u,d,l)),!l)return!1}if(a===s&&o===c)return!0;if(a===s)return r;if(o===c)return a===s-1&&""===e[a];throw new Error("wtf?")}},81890:(e,t,r)=>{var n=r(71017),i=r(57147),a=parseInt("0777",8);function o(e,t,r,s){"function"==typeof t?(r=t,t={}):t&&"object"==typeof t||(t={mode:t});var c=t.mode,l=t.fs||i;void 0===c&&(c=a),s||(s=null);var u=r||function(){};e=n.resolve(e),l.mkdir(e,c,(function(r){if(!r)return u(null,s=s||e);if("ENOENT"===r.code){if(n.dirname(e)===e)return u(r);o(n.dirname(e),t,(function(r,n){r?u(r,n):o(e,t,u,n)}))}else l.stat(e,(function(e,t){e||!t.isDirectory()?u(r,s):u(null,s)}))}))}e.exports=o.mkdirp=o.mkdirP=o,o.sync=function e(t,r,o){r&&"object"==typeof r||(r={mode:r});var s=r.mode,c=r.fs||i;void 0===s&&(s=a),o||(o=null),t=n.resolve(t);try{c.mkdirSync(t,s),o=o||t}catch(i){if("ENOENT"===i.code)o=e(n.dirname(t),r,o),e(t,r,o);else{var l;try{l=c.statSync(t)}catch(e){throw i}if(!l.isDirectory())throw i}}return o}},13171:e=>{ -/*! - * normalize-path <https://github.com/jonschlinkert/normalize-path> - * - * Copyright (c) 2014-2018, Jon Schlinkert. - * Released under the MIT License. - */ -e.exports=function(e,t){if("string"!=typeof e)throw new TypeError("expected path to be a string");if("\\"===e||"/"===e)return"/";var r=e.length;if(r<=1)return e;var n="";if(r>4&&"\\"===e[3]){var i=e[2];"?"!==i&&"."!==i||"\\\\"!==e.slice(0,2)||(e=e.slice(2),n="//")}var a=e.split(/[/\\]+/);return!1!==t&&""===a[a.length-1]&&a.pop(),n+a.join("/")}},30778:(e,t,r)=>{var n=r(52479);function i(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function a(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}e.exports=n(i),e.exports.strict=n(a),i.proto=i((function(){Object.defineProperty(Function.prototype,"once",{value:function(){return i(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return a(this)},configurable:!0})}))},99591:(e,t,r)=>{"use strict";var n={};(0,r(24236).assign)(n,r(24555),r(78843),r(71619)),e.exports=n},24555:(e,t,r)=>{"use strict";var n=r(30405),i=r(24236),a=r(29373),o=r(48898),s=r(62292),c=Object.prototype.toString,l=0,u=-1,d=0,p=8;function f(e){if(!(this instanceof f))return new f(e);this.options=i.assign({level:u,method:p,chunkSize:16384,windowBits:15,memLevel:8,strategy:d,to:""},e||{});var t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new s,this.strm.avail_out=0;var r=n.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(r!==l)throw new Error(o[r]);if(t.header&&n.deflateSetHeader(this.strm,t.header),t.dictionary){var m;if(m="string"==typeof t.dictionary?a.string2buf(t.dictionary):"[object ArrayBuffer]"===c.call(t.dictionary)?new Uint8Array(t.dictionary):t.dictionary,(r=n.deflateSetDictionary(this.strm,m))!==l)throw new Error(o[r]);this._dict_set=!0}}function m(e,t){var r=new f(t);if(r.push(e,!0),r.err)throw r.msg||o[r.err];return r.result}f.prototype.push=function(e,t){var r,o,s=this.strm,u=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,"string"==typeof e?s.input=a.string2buf(e):"[object ArrayBuffer]"===c.call(e)?s.input=new Uint8Array(e):s.input=e,s.next_in=0,s.avail_in=s.input.length;do{if(0===s.avail_out&&(s.output=new i.Buf8(u),s.next_out=0,s.avail_out=u),1!==(r=n.deflate(s,o))&&r!==l)return this.onEnd(r),this.ended=!0,!1;0!==s.avail_out&&(0!==s.avail_in||4!==o&&2!==o)||("string"===this.options.to?this.onData(a.buf2binstring(i.shrinkBuf(s.output,s.next_out))):this.onData(i.shrinkBuf(s.output,s.next_out)))}while((s.avail_in>0||0===s.avail_out)&&1!==r);return 4===o?(r=n.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===l):2!==o||(this.onEnd(l),s.avail_out=0,!0)},f.prototype.onData=function(e){this.chunks.push(e)},f.prototype.onEnd=function(e){e===l&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Deflate=f,t.deflate=m,t.deflateRaw=function(e,t){return(t=t||{}).raw=!0,m(e,t)},t.gzip=function(e,t){return(t=t||{}).gzip=!0,m(e,t)}},78843:(e,t,r)=>{"use strict";var n=r(27948),i=r(24236),a=r(29373),o=r(71619),s=r(48898),c=r(62292),l=r(42401),u=Object.prototype.toString;function d(e){if(!(this instanceof d))return new d(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:""},e||{});var t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&0==(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new c,this.strm.avail_out=0;var r=n.inflateInit2(this.strm,t.windowBits);if(r!==o.Z_OK)throw new Error(s[r]);if(this.header=new l,n.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=a.string2buf(t.dictionary):"[object ArrayBuffer]"===u.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(r=n.inflateSetDictionary(this.strm,t.dictionary))!==o.Z_OK))throw new Error(s[r])}function p(e,t){var r=new d(t);if(r.push(e,!0),r.err)throw r.msg||s[r.err];return r.result}d.prototype.push=function(e,t){var r,s,c,l,d,p=this.strm,f=this.options.chunkSize,m=this.options.dictionary,g=!1;if(this.ended)return!1;s=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,"string"==typeof e?p.input=a.binstring2buf(e):"[object ArrayBuffer]"===u.call(e)?p.input=new Uint8Array(e):p.input=e,p.next_in=0,p.avail_in=p.input.length;do{if(0===p.avail_out&&(p.output=new i.Buf8(f),p.next_out=0,p.avail_out=f),(r=n.inflate(p,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&m&&(r=n.inflateSetDictionary(this.strm,m)),r===o.Z_BUF_ERROR&&!0===g&&(r=o.Z_OK,g=!1),r!==o.Z_STREAM_END&&r!==o.Z_OK)return this.onEnd(r),this.ended=!0,!1;p.next_out&&(0!==p.avail_out&&r!==o.Z_STREAM_END&&(0!==p.avail_in||s!==o.Z_FINISH&&s!==o.Z_SYNC_FLUSH)||("string"===this.options.to?(c=a.utf8border(p.output,p.next_out),l=p.next_out-c,d=a.buf2string(p.output,c),p.next_out=l,p.avail_out=f-l,l&&i.arraySet(p.output,p.output,c,l,0),this.onData(d)):this.onData(i.shrinkBuf(p.output,p.next_out)))),0===p.avail_in&&0===p.avail_out&&(g=!0)}while((p.avail_in>0||0===p.avail_out)&&r!==o.Z_STREAM_END);return r===o.Z_STREAM_END&&(s=o.Z_FINISH),s===o.Z_FINISH?(r=n.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===o.Z_OK):s!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),p.avail_out=0,!0)},d.prototype.onData=function(e){this.chunks.push(e)},d.prototype.onEnd=function(e){e===o.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},t.Inflate=d,t.inflate=p,t.inflateRaw=function(e,t){return(t=t||{}).raw=!0,p(e,t)},t.ungzip=p},24236:(e,t)=>{"use strict";var r="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;function n(e,t){return Object.prototype.hasOwnProperty.call(e,t)}t.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var r=t.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var i in r)n(r,i)&&(e[i]=r[i])}}return e},t.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var i={arraySet:function(e,t,r,n,i){if(t.subarray&&e.subarray)e.set(t.subarray(r,r+n),i);else for(var a=0;a<n;a++)e[i+a]=t[r+a]},flattenChunks:function(e){var t,r,n,i,a,o;for(n=0,t=0,r=e.length;t<r;t++)n+=e[t].length;for(o=new Uint8Array(n),i=0,t=0,r=e.length;t<r;t++)a=e[t],o.set(a,i),i+=a.length;return o}},a={arraySet:function(e,t,r,n,i){for(var a=0;a<n;a++)e[i+a]=t[r+a]},flattenChunks:function(e){return[].concat.apply([],e)}};t.setTyped=function(e){e?(t.Buf8=Uint8Array,t.Buf16=Uint16Array,t.Buf32=Int32Array,t.assign(t,i)):(t.Buf8=Array,t.Buf16=Array,t.Buf32=Array,t.assign(t,a))},t.setTyped(r)},29373:(e,t,r)=>{"use strict";var n=r(24236),i=!0,a=!0;try{String.fromCharCode.apply(null,[0])}catch(e){i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){a=!1}for(var o=new n.Buf8(256),s=0;s<256;s++)o[s]=s>=252?6:s>=248?5:s>=240?4:s>=224?3:s>=192?2:1;function c(e,t){if(t<65534&&(e.subarray&&a||!e.subarray&&i))return String.fromCharCode.apply(null,n.shrinkBuf(e,t));for(var r="",o=0;o<t;o++)r+=String.fromCharCode(e[o]);return r}o[254]=o[254]=1,t.string2buf=function(e){var t,r,i,a,o,s=e.length,c=0;for(a=0;a<s;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(i=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(i-56320),a++),c+=r<128?1:r<2048?2:r<65536?3:4;for(t=new n.Buf8(c),o=0,a=0;o<c;a++)55296==(64512&(r=e.charCodeAt(a)))&&a+1<s&&56320==(64512&(i=e.charCodeAt(a+1)))&&(r=65536+(r-55296<<10)+(i-56320),a++),r<128?t[o++]=r:r<2048?(t[o++]=192|r>>>6,t[o++]=128|63&r):r<65536?(t[o++]=224|r>>>12,t[o++]=128|r>>>6&63,t[o++]=128|63&r):(t[o++]=240|r>>>18,t[o++]=128|r>>>12&63,t[o++]=128|r>>>6&63,t[o++]=128|63&r);return t},t.buf2binstring=function(e){return c(e,e.length)},t.binstring2buf=function(e){for(var t=new n.Buf8(e.length),r=0,i=t.length;r<i;r++)t[r]=e.charCodeAt(r);return t},t.buf2string=function(e,t){var r,n,i,a,s=t||e.length,l=new Array(2*s);for(n=0,r=0;r<s;)if((i=e[r++])<128)l[n++]=i;else if((a=o[i])>4)l[n++]=65533,r+=a-1;else{for(i&=2===a?31:3===a?15:7;a>1&&r<s;)i=i<<6|63&e[r++],a--;a>1?l[n++]=65533:i<65536?l[n++]=i:(i-=65536,l[n++]=55296|i>>10&1023,l[n++]=56320|1023&i)}return c(l,n)},t.utf8border=function(e,t){var r;for((t=t||e.length)>e.length&&(t=e.length),r=t-1;r>=0&&128==(192&e[r]);)r--;return r<0||0===r?t:r+o[e[r]]>t?r:t}},66069:e=>{"use strict";e.exports=function(e,t,r,n){for(var i=65535&e|0,a=e>>>16&65535|0,o=0;0!==r;){r-=o=r>2e3?2e3:r;do{a=a+(i=i+t[n++]|0)|0}while(--o);i%=65521,a%=65521}return i|a<<16|0}},71619:e=>{"use strict";e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},2869:e=>{"use strict";var t=function(){for(var e,t=[],r=0;r<256;r++){e=r;for(var n=0;n<8;n++)e=1&e?3988292384^e>>>1:e>>>1;t[r]=e}return t}();e.exports=function(e,r,n,i){var a=t,o=i+n;e^=-1;for(var s=i;s<o;s++)e=e>>>8^a[255&(e^r[s])];return-1^e}},30405:(e,t,r)=>{"use strict";var n,i=r(24236),a=r(10342),o=r(66069),s=r(2869),c=r(48898),l=0,u=4,d=0,p=-2,f=-1,m=4,g=2,_=8,h=9,y=286,v=30,b=19,k=2*y+1,x=15,E=3,S=258,D=S+E+1,w=42,T=103,C=113,A=666,N=1,P=2,I=3,F=4;function O(e,t){return e.msg=c[t],t}function R(e){return(e<<1)-(e>4?9:0)}function M(e){for(var t=e.length;--t>=0;)e[t]=0}function L(e){var t=e.state,r=t.pending;r>e.avail_out&&(r=e.avail_out),0!==r&&(i.arraySet(e.output,t.pending_buf,t.pending_out,r,e.next_out),e.next_out+=r,t.pending_out+=r,e.total_out+=r,e.avail_out-=r,t.pending-=r,0===t.pending&&(t.pending_out=0))}function j(e,t){a._tr_flush_block(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,L(e.strm)}function B(e,t){e.pending_buf[e.pending++]=t}function z(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function U(e,t){var r,n,i=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-D?e.strstart-(e.w_size-D):0,l=e.window,u=e.w_mask,d=e.prev,p=e.strstart+S,f=l[a+o-1],m=l[a+o];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do{if(l[(r=t)+o]===m&&l[r+o-1]===f&&l[r]===l[a]&&l[++r]===l[a+1]){a+=2,r++;do{}while(l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&l[++a]===l[++r]&&a<p);if(n=S-(p-a),a=p-S,n>o){if(e.match_start=t,o=n,n>=s)break;f=l[a+o-1],m=l[a+o]}}}while((t=d[t&u])>c&&0!=--i);return o<=e.lookahead?o:e.lookahead}function q(e){var t,r,n,a,c,l,u,d,p,f,m=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-D)){i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=r=e.hash_size;do{n=e.head[--t],e.head[t]=n>=m?n-m:0}while(--r);t=r=m;do{n=e.prev[--t],e.prev[t]=n>=m?n-m:0}while(--r);a+=m}if(0===e.strm.avail_in)break;if(l=e.strm,u=e.window,d=e.strstart+e.lookahead,p=a,f=void 0,(f=l.avail_in)>p&&(f=p),r=0===f?0:(l.avail_in-=f,i.arraySet(u,l.input,l.next_in,f,d),1===l.state.wrap?l.adler=o(l.adler,u,f,d):2===l.state.wrap&&(l.adler=s(l.adler,u,f,d)),l.next_in+=f,l.total_in+=f,f),e.lookahead+=r,e.lookahead+e.insert>=E)for(c=e.strstart-e.insert,e.ins_h=e.window[c],e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+E-1])&e.hash_mask,e.prev[c&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=c,c++,e.insert--,!(e.lookahead+e.insert<E)););}while(e.lookahead<D&&0!==e.strm.avail_in)}function J(e,t){for(var r,n;;){if(e.lookahead<D){if(q(e),e.lookahead<D&&t===l)return N;if(0===e.lookahead)break}if(r=0,e.lookahead>=E&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+E-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==r&&e.strstart-r<=e.w_size-D&&(e.match_length=U(e,r)),e.match_length>=E)if(n=a._tr_tally(e,e.strstart-e.match_start,e.match_length-E),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=E){e.match_length--;do{e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+E-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart}while(0!=--e.match_length);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(n&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=e.strstart<E-1?e.strstart:E-1,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}function V(e,t){for(var r,n,i;;){if(e.lookahead<D){if(q(e),e.lookahead<D&&t===l)return N;if(0===e.lookahead)break}if(r=0,e.lookahead>=E&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+E-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=E-1,0!==r&&e.prev_length<e.max_lazy_match&&e.strstart-r<=e.w_size-D&&(e.match_length=U(e,r),e.match_length<=5&&(1===e.strategy||e.match_length===E&&e.strstart-e.match_start>4096)&&(e.match_length=E-1)),e.prev_length>=E&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-E,n=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-E),e.lookahead-=e.prev_length-1,e.prev_length-=2;do{++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+E-1])&e.hash_mask,r=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart)}while(0!=--e.prev_length);if(e.match_available=0,e.match_length=E-1,e.strstart++,n&&(j(e,!1),0===e.strm.avail_out))return N}else if(e.match_available){if((n=a._tr_tally(e,0,e.window[e.strstart-1]))&&j(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return N}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(n=a._tr_tally(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<E-1?e.strstart:E-1,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}function H(e,t,r,n,i){this.good_length=e,this.max_lazy=t,this.nice_length=r,this.max_chain=n,this.func=i}function K(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=_,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(2*k),this.dyn_dtree=new i.Buf16(2*(2*v+1)),this.bl_tree=new i.Buf16(2*(2*b+1)),M(this.dyn_ltree),M(this.dyn_dtree),M(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(x+1),this.heap=new i.Buf16(2*y+1),M(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*y+1),M(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function W(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=g,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?w:C,e.adler=2===t.wrap?0:1,t.last_flush=l,a._tr_init(t),d):O(e,p)}function G(e){var t,r=W(e);return r===d&&((t=e.state).window_size=2*t.w_size,M(t.head),t.max_lazy_match=n[t.level].max_lazy,t.good_match=n[t.level].good_length,t.nice_match=n[t.level].nice_length,t.max_chain_length=n[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=E-1,t.match_available=0,t.ins_h=0),r}function $(e,t,r,n,a,o){if(!e)return p;var s=1;if(t===f&&(t=6),n<0?(s=0,n=-n):n>15&&(s=2,n-=16),a<1||a>h||r!==_||n<8||n>15||t<0||t>9||o<0||o>m)return O(e,p);8===n&&(n=9);var c=new K;return e.state=c,c.strm=e,c.wrap=s,c.gzhead=null,c.w_bits=n,c.w_size=1<<c.w_bits,c.w_mask=c.w_size-1,c.hash_bits=a+7,c.hash_size=1<<c.hash_bits,c.hash_mask=c.hash_size-1,c.hash_shift=~~((c.hash_bits+E-1)/E),c.window=new i.Buf8(2*c.w_size),c.head=new i.Buf16(c.hash_size),c.prev=new i.Buf16(c.w_size),c.lit_bufsize=1<<a+6,c.pending_buf_size=4*c.lit_bufsize,c.pending_buf=new i.Buf8(c.pending_buf_size),c.d_buf=1*c.lit_bufsize,c.l_buf=3*c.lit_bufsize,c.level=t,c.strategy=o,c.method=r,G(e)}n=[new H(0,0,0,0,(function(e,t){var r=65535;for(r>e.pending_buf_size-5&&(r=e.pending_buf_size-5);;){if(e.lookahead<=1){if(q(e),0===e.lookahead&&t===l)return N;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;var n=e.block_start+r;if((0===e.strstart||e.strstart>=n)&&(e.lookahead=e.strstart-n,e.strstart=n,j(e,!1),0===e.strm.avail_out))return N;if(e.strstart-e.block_start>=e.w_size-D&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=0,t===u?(j(e,!0),0===e.strm.avail_out?I:F):(e.strstart>e.block_start&&(j(e,!1),e.strm.avail_out),N)})),new H(4,4,8,4,J),new H(4,5,16,8,J),new H(4,6,32,32,J),new H(4,4,16,16,V),new H(8,16,32,32,V),new H(8,16,128,128,V),new H(8,32,128,256,V),new H(32,128,258,1024,V),new H(32,258,258,4096,V)],t.deflateInit=function(e,t){return $(e,t,_,15,8,0)},t.deflateInit2=$,t.deflateReset=G,t.deflateResetKeep=W,t.deflateSetHeader=function(e,t){return e&&e.state?2!==e.state.wrap?p:(e.state.gzhead=t,d):p},t.deflate=function(e,t){var r,i,o,c;if(!e||!e.state||t>5||t<0)return e?O(e,p):p;if(i=e.state,!e.output||!e.input&&0!==e.avail_in||i.status===A&&t!==u)return O(e,0===e.avail_out?-5:p);if(i.strm=e,r=i.last_flush,i.last_flush=t,i.status===w)if(2===i.wrap)e.adler=0,B(i,31),B(i,139),B(i,8),i.gzhead?(B(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),B(i,255&i.gzhead.time),B(i,i.gzhead.time>>8&255),B(i,i.gzhead.time>>16&255),B(i,i.gzhead.time>>24&255),B(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),B(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(B(i,255&i.gzhead.extra.length),B(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(B(i,0),B(i,0),B(i,0),B(i,0),B(i,0),B(i,9===i.level?2:i.strategy>=2||i.level<2?4:0),B(i,3),i.status=C);else{var f=_+(i.w_bits-8<<4)<<8;f|=(i.strategy>=2||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(f|=32),f+=31-f%31,i.status=C,z(i,f),0!==i.strstart&&(z(i,e.adler>>>16),z(i,65535&e.adler)),e.adler=1}if(69===i.status)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),L(e),o=i.pending,i.pending!==i.pending_buf_size));)B(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),L(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,B(i,c)}while(0!==c);i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===c&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),L(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,B(i,c)}while(0!==c);i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),0===c&&(i.status=T)}else i.status=T;if(i.status===T&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&L(e),i.pending+2<=i.pending_buf_size&&(B(i,255&e.adler),B(i,e.adler>>8&255),e.adler=0,i.status=C)):i.status=C),0!==i.pending){if(L(e),0===e.avail_out)return i.last_flush=-1,d}else if(0===e.avail_in&&R(t)<=R(r)&&t!==u)return O(e,-5);if(i.status===A&&0!==e.avail_in)return O(e,-5);if(0!==e.avail_in||0!==i.lookahead||t!==l&&i.status!==A){var m=2===i.strategy?function(e,t){for(var r;;){if(0===e.lookahead&&(q(e),0===e.lookahead)){if(t===l)return N;break}if(e.match_length=0,r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,r&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=0,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}(i,t):3===i.strategy?function(e,t){for(var r,n,i,o,s=e.window;;){if(e.lookahead<=S){if(q(e),e.lookahead<=S&&t===l)return N;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=E&&e.strstart>0&&(n=s[i=e.strstart-1])===s[++i]&&n===s[++i]&&n===s[++i]){o=e.strstart+S;do{}while(n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&n===s[++i]&&i<o);e.match_length=S-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=E?(r=a._tr_tally(e,1,e.match_length-E),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),r&&(j(e,!1),0===e.strm.avail_out))return N}return e.insert=0,t===u?(j(e,!0),0===e.strm.avail_out?I:F):e.last_lit&&(j(e,!1),0===e.strm.avail_out)?N:P}(i,t):n[i.level].func(i,t);if(m!==I&&m!==F||(i.status=A),m===N||m===I)return 0===e.avail_out&&(i.last_flush=-1),d;if(m===P&&(1===t?a._tr_align(i):5!==t&&(a._tr_stored_block(i,0,0,!1),3===t&&(M(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),L(e),0===e.avail_out))return i.last_flush=-1,d}return t!==u?d:i.wrap<=0?1:(2===i.wrap?(B(i,255&e.adler),B(i,e.adler>>8&255),B(i,e.adler>>16&255),B(i,e.adler>>24&255),B(i,255&e.total_in),B(i,e.total_in>>8&255),B(i,e.total_in>>16&255),B(i,e.total_in>>24&255)):(z(i,e.adler>>>16),z(i,65535&e.adler)),L(e),i.wrap>0&&(i.wrap=-i.wrap),0!==i.pending?d:1)},t.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==w&&69!==t&&73!==t&&91!==t&&t!==T&&t!==C&&t!==A?O(e,p):(e.state=null,t===C?O(e,-3):d):p},t.deflateSetDictionary=function(e,t){var r,n,a,s,c,l,u,f,m=t.length;if(!e||!e.state)return p;if(2===(s=(r=e.state).wrap)||1===s&&r.status!==w||r.lookahead)return p;for(1===s&&(e.adler=o(e.adler,t,m,0)),r.wrap=0,m>=r.w_size&&(0===s&&(M(r.head),r.strstart=0,r.block_start=0,r.insert=0),f=new i.Buf8(r.w_size),i.arraySet(f,t,m-r.w_size,r.w_size,0),t=f,m=r.w_size),c=e.avail_in,l=e.next_in,u=e.input,e.avail_in=m,e.next_in=0,e.input=t,q(r);r.lookahead>=E;){n=r.strstart,a=r.lookahead-(E-1);do{r.ins_h=(r.ins_h<<r.hash_shift^r.window[n+E-1])&r.hash_mask,r.prev[n&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=n,n++}while(--a);r.strstart=n,r.lookahead=E-1,q(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=E-1,r.match_available=0,e.next_in=l,e.input=u,e.avail_in=c,r.wrap=s,d},t.deflateInfo="pako deflate (from Nodeca project)"},42401:e=>{"use strict";e.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},94264:e=>{"use strict";e.exports=function(e,t){var r,n,i,a,o,s,c,l,u,d,p,f,m,g,_,h,y,v,b,k,x,E,S,D,w;r=e.state,n=e.next_in,D=e.input,i=n+(e.avail_in-5),a=e.next_out,w=e.output,o=a-(t-e.avail_out),s=a+(e.avail_out-257),c=r.dmax,l=r.wsize,u=r.whave,d=r.wnext,p=r.window,f=r.hold,m=r.bits,g=r.lencode,_=r.distcode,h=(1<<r.lenbits)-1,y=(1<<r.distbits)-1;e:do{m<15&&(f+=D[n++]<<m,m+=8,f+=D[n++]<<m,m+=8),v=g[f&h];t:for(;;){if(f>>>=b=v>>>24,m-=b,0===(b=v>>>16&255))w[a++]=65535&v;else{if(!(16&b)){if(0==(64&b)){v=g[(65535&v)+(f&(1<<b)-1)];continue t}if(32&b){r.mode=12;break e}e.msg="invalid literal/length code",r.mode=30;break e}k=65535&v,(b&=15)&&(m<b&&(f+=D[n++]<<m,m+=8),k+=f&(1<<b)-1,f>>>=b,m-=b),m<15&&(f+=D[n++]<<m,m+=8,f+=D[n++]<<m,m+=8),v=_[f&y];r:for(;;){if(f>>>=b=v>>>24,m-=b,!(16&(b=v>>>16&255))){if(0==(64&b)){v=_[(65535&v)+(f&(1<<b)-1)];continue r}e.msg="invalid distance code",r.mode=30;break e}if(x=65535&v,m<(b&=15)&&(f+=D[n++]<<m,(m+=8)<b&&(f+=D[n++]<<m,m+=8)),(x+=f&(1<<b)-1)>c){e.msg="invalid distance too far back",r.mode=30;break e}if(f>>>=b,m-=b,x>(b=a-o)){if((b=x-b)>u&&r.sane){e.msg="invalid distance too far back",r.mode=30;break e}if(E=0,S=p,0===d){if(E+=l-b,b<k){k-=b;do{w[a++]=p[E++]}while(--b);E=a-x,S=w}}else if(d<b){if(E+=l+d-b,(b-=d)<k){k-=b;do{w[a++]=p[E++]}while(--b);if(E=0,d<k){k-=b=d;do{w[a++]=p[E++]}while(--b);E=a-x,S=w}}}else if(E+=d-b,b<k){k-=b;do{w[a++]=p[E++]}while(--b);E=a-x,S=w}for(;k>2;)w[a++]=S[E++],w[a++]=S[E++],w[a++]=S[E++],k-=3;k&&(w[a++]=S[E++],k>1&&(w[a++]=S[E++]))}else{E=a-x;do{w[a++]=w[E++],w[a++]=w[E++],w[a++]=w[E++],k-=3}while(k>2);k&&(w[a++]=w[E++],k>1&&(w[a++]=w[E++]))}break}}break}}while(n<i&&a<s);n-=k=m>>3,f&=(1<<(m-=k<<3))-1,e.next_in=n,e.next_out=a,e.avail_in=n<i?i-n+5:5-(n-i),e.avail_out=a<s?s-a+257:257-(a-s),r.hold=f,r.bits=m}},27948:(e,t,r)=>{"use strict";var n=r(24236),i=r(66069),a=r(2869),o=r(94264),s=r(9241),c=1,l=2,u=0,d=-2,p=1,f=12,m=30,g=852,_=592;function h(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function y(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new n.Buf16(320),this.work=new n.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function v(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=p,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new n.Buf32(g),t.distcode=t.distdyn=new n.Buf32(_),t.sane=1,t.back=-1,u):d}function b(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,v(e)):d}function k(e,t){var r,n;return e&&e.state?(n=e.state,t<0?(r=0,t=-t):(r=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?d:(null!==n.window&&n.wbits!==t&&(n.window=null),n.wrap=r,n.wbits=t,b(e))):d}function x(e,t){var r,n;return e?(n=new y,e.state=n,n.window=null,(r=k(e,t))!==u&&(e.state=null),r):d}var E,S,D=!0;function w(e){if(D){var t;for(E=new n.Buf32(512),S=new n.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(c,e.lens,0,288,E,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(l,e.lens,0,32,S,0,e.work,{bits:5}),D=!1}e.lencode=E,e.lenbits=9,e.distcode=S,e.distbits=5}function T(e,t,r,i){var a,o=e.state;return null===o.window&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new n.Buf8(o.wsize)),i>=o.wsize?(n.arraySet(o.window,t,r-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):((a=o.wsize-o.wnext)>i&&(a=i),n.arraySet(o.window,t,r-i,a,o.wnext),(i-=a)?(n.arraySet(o.window,t,r-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=a))),0}t.inflateReset=b,t.inflateReset2=k,t.inflateResetKeep=v,t.inflateInit=function(e){return x(e,15)},t.inflateInit2=x,t.inflate=function(e,t){var r,g,_,y,v,b,k,x,E,S,D,C,A,N,P,I,F,O,R,M,L,j,B,z,U=0,q=new n.Buf8(4),J=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return d;(r=e.state).mode===f&&(r.mode=13),v=e.next_out,_=e.output,k=e.avail_out,y=e.next_in,g=e.input,b=e.avail_in,x=r.hold,E=r.bits,S=b,D=k,j=u;e:for(;;)switch(r.mode){case p:if(0===r.wrap){r.mode=13;break}for(;E<16;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(2&r.wrap&&35615===x){r.check=0,q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0),x=0,E=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&x)<<8)+(x>>8))%31){e.msg="incorrect header check",r.mode=m;break}if(8!=(15&x)){e.msg="unknown compression method",r.mode=m;break}if(E-=4,L=8+(15&(x>>>=4)),0===r.wbits)r.wbits=L;else if(L>r.wbits){e.msg="invalid window size",r.mode=m;break}r.dmax=1<<L,e.adler=r.check=1,r.mode=512&x?10:f,x=0,E=0;break;case 2:for(;E<16;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(r.flags=x,8!=(255&r.flags)){e.msg="unknown compression method",r.mode=m;break}if(57344&r.flags){e.msg="unknown header flags set",r.mode=m;break}r.head&&(r.head.text=x>>8&1),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0)),x=0,E=0,r.mode=3;case 3:for(;E<32;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.head&&(r.head.time=x),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,q[2]=x>>>16&255,q[3]=x>>>24&255,r.check=a(r.check,q,4,0)),x=0,E=0,r.mode=4;case 4:for(;E<16;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.head&&(r.head.xflags=255&x,r.head.os=x>>8),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0)),x=0,E=0,r.mode=5;case 5:if(1024&r.flags){for(;E<16;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.length=x,r.head&&(r.head.extra_len=x),512&r.flags&&(q[0]=255&x,q[1]=x>>>8&255,r.check=a(r.check,q,2,0)),x=0,E=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&((C=r.length)>b&&(C=b),C&&(r.head&&(L=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),n.arraySet(r.head.extra,g,y,C,L)),512&r.flags&&(r.check=a(r.check,g,C,y)),b-=C,y+=C,r.length-=C),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===b)break e;C=0;do{L=g[y+C++],r.head&&L&&r.length<65536&&(r.head.name+=String.fromCharCode(L))}while(L&&C<b);if(512&r.flags&&(r.check=a(r.check,g,C,y)),b-=C,y+=C,L)break e}else r.head&&(r.head.name=null);r.length=0,r.mode=8;case 8:if(4096&r.flags){if(0===b)break e;C=0;do{L=g[y+C++],r.head&&L&&r.length<65536&&(r.head.comment+=String.fromCharCode(L))}while(L&&C<b);if(512&r.flags&&(r.check=a(r.check,g,C,y)),b-=C,y+=C,L)break e}else r.head&&(r.head.comment=null);r.mode=9;case 9:if(512&r.flags){for(;E<16;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(x!==(65535&r.check)){e.msg="header crc mismatch",r.mode=m;break}x=0,E=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=f;break;case 10:for(;E<32;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}e.adler=r.check=h(x),x=0,E=0,r.mode=11;case 11:if(0===r.havedict)return e.next_out=v,e.avail_out=k,e.next_in=y,e.avail_in=b,r.hold=x,r.bits=E,2;e.adler=r.check=1,r.mode=f;case f:if(5===t||6===t)break e;case 13:if(r.last){x>>>=7&E,E-=7&E,r.mode=27;break}for(;E<3;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}switch(r.last=1&x,E-=1,3&(x>>>=1)){case 0:r.mode=14;break;case 1:if(w(r),r.mode=20,6===t){x>>>=2,E-=2;break e}break;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=m}x>>>=2,E-=2;break;case 14:for(x>>>=7&E,E-=7&E;E<32;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if((65535&x)!=(x>>>16^65535)){e.msg="invalid stored block lengths",r.mode=m;break}if(r.length=65535&x,x=0,E=0,r.mode=15,6===t)break e;case 15:r.mode=16;case 16:if(C=r.length){if(C>b&&(C=b),C>k&&(C=k),0===C)break e;n.arraySet(_,g,y,C,v),b-=C,y+=C,k-=C,v+=C,r.length-=C;break}r.mode=f;break;case 17:for(;E<14;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(r.nlen=257+(31&x),x>>>=5,E-=5,r.ndist=1+(31&x),x>>>=5,E-=5,r.ncode=4+(15&x),x>>>=4,E-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=m;break}r.have=0,r.mode=18;case 18:for(;r.have<r.ncode;){for(;E<3;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.lens[J[r.have++]]=7&x,x>>>=3,E-=3}for(;r.have<19;)r.lens[J[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,B={bits:r.lenbits},j=s(0,r.lens,0,19,r.lencode,0,r.work,B),r.lenbits=B.bits,j){e.msg="invalid code lengths set",r.mode=m;break}r.have=0,r.mode=19;case 19:for(;r.have<r.nlen+r.ndist;){for(;I=(U=r.lencode[x&(1<<r.lenbits)-1])>>>16&255,F=65535&U,!((P=U>>>24)<=E);){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(F<16)x>>>=P,E-=P,r.lens[r.have++]=F;else{if(16===F){for(z=P+2;E<z;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(x>>>=P,E-=P,0===r.have){e.msg="invalid bit length repeat",r.mode=m;break}L=r.lens[r.have-1],C=3+(3&x),x>>>=2,E-=2}else if(17===F){for(z=P+3;E<z;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}E-=P,L=0,C=3+(7&(x>>>=P)),x>>>=3,E-=3}else{for(z=P+7;E<z;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}E-=P,L=0,C=11+(127&(x>>>=P)),x>>>=7,E-=7}if(r.have+C>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=m;break}for(;C--;)r.lens[r.have++]=L}}if(r.mode===m)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=m;break}if(r.lenbits=9,B={bits:r.lenbits},j=s(c,r.lens,0,r.nlen,r.lencode,0,r.work,B),r.lenbits=B.bits,j){e.msg="invalid literal/lengths set",r.mode=m;break}if(r.distbits=6,r.distcode=r.distdyn,B={bits:r.distbits},j=s(l,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,B),r.distbits=B.bits,j){e.msg="invalid distances set",r.mode=m;break}if(r.mode=20,6===t)break e;case 20:r.mode=21;case 21:if(b>=6&&k>=258){e.next_out=v,e.avail_out=k,e.next_in=y,e.avail_in=b,r.hold=x,r.bits=E,o(e,D),v=e.next_out,_=e.output,k=e.avail_out,y=e.next_in,g=e.input,b=e.avail_in,x=r.hold,E=r.bits,r.mode===f&&(r.back=-1);break}for(r.back=0;I=(U=r.lencode[x&(1<<r.lenbits)-1])>>>16&255,F=65535&U,!((P=U>>>24)<=E);){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(I&&0==(240&I)){for(O=P,R=I,M=F;I=(U=r.lencode[M+((x&(1<<O+R)-1)>>O)])>>>16&255,F=65535&U,!(O+(P=U>>>24)<=E);){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}x>>>=O,E-=O,r.back+=O}if(x>>>=P,E-=P,r.back+=P,r.length=F,0===I){r.mode=26;break}if(32&I){r.back=-1,r.mode=f;break}if(64&I){e.msg="invalid literal/length code",r.mode=m;break}r.extra=15&I,r.mode=22;case 22:if(r.extra){for(z=r.extra;E<z;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.length+=x&(1<<r.extra)-1,x>>>=r.extra,E-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;I=(U=r.distcode[x&(1<<r.distbits)-1])>>>16&255,F=65535&U,!((P=U>>>24)<=E);){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(0==(240&I)){for(O=P,R=I,M=F;I=(U=r.distcode[M+((x&(1<<O+R)-1)>>O)])>>>16&255,F=65535&U,!(O+(P=U>>>24)<=E);){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}x>>>=O,E-=O,r.back+=O}if(x>>>=P,E-=P,r.back+=P,64&I){e.msg="invalid distance code",r.mode=m;break}r.offset=F,r.extra=15&I,r.mode=24;case 24:if(r.extra){for(z=r.extra;E<z;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}r.offset+=x&(1<<r.extra)-1,x>>>=r.extra,E-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=m;break}r.mode=25;case 25:if(0===k)break e;if(C=D-k,r.offset>C){if((C=r.offset-C)>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=m;break}C>r.wnext?(C-=r.wnext,A=r.wsize-C):A=r.wnext-C,C>r.length&&(C=r.length),N=r.window}else N=_,A=v-r.offset,C=r.length;C>k&&(C=k),k-=C,r.length-=C;do{_[v++]=N[A++]}while(--C);0===r.length&&(r.mode=21);break;case 26:if(0===k)break e;_[v++]=r.length,k--,r.mode=21;break;case 27:if(r.wrap){for(;E<32;){if(0===b)break e;b--,x|=g[y++]<<E,E+=8}if(D-=k,e.total_out+=D,r.total+=D,D&&(e.adler=r.check=r.flags?a(r.check,_,D,v-D):i(r.check,_,D,v-D)),D=k,(r.flags?x:h(x))!==r.check){e.msg="incorrect data check",r.mode=m;break}x=0,E=0}r.mode=28;case 28:if(r.wrap&&r.flags){for(;E<32;){if(0===b)break e;b--,x+=g[y++]<<E,E+=8}if(x!==(4294967295&r.total)){e.msg="incorrect length check",r.mode=m;break}x=0,E=0}r.mode=29;case 29:j=1;break e;case m:j=-3;break e;case 31:return-4;default:return d}return e.next_out=v,e.avail_out=k,e.next_in=y,e.avail_in=b,r.hold=x,r.bits=E,(r.wsize||D!==e.avail_out&&r.mode<m&&(r.mode<27||4!==t))&&T(e,e.output,e.next_out,D-e.avail_out)?(r.mode=31,-4):(S-=e.avail_in,D-=e.avail_out,e.total_in+=S,e.total_out+=D,r.total+=D,r.wrap&&D&&(e.adler=r.check=r.flags?a(r.check,_,D,e.next_out-D):i(r.check,_,D,e.next_out-D)),e.data_type=r.bits+(r.last?64:0)+(r.mode===f?128:0)+(20===r.mode||15===r.mode?256:0),(0===S&&0===D||4===t)&&j===u&&(j=-5),j)},t.inflateEnd=function(e){if(!e||!e.state)return d;var t=e.state;return t.window&&(t.window=null),e.state=null,u},t.inflateGetHeader=function(e,t){var r;return e&&e.state?0==(2&(r=e.state).wrap)?d:(r.head=t,t.done=!1,u):d},t.inflateSetDictionary=function(e,t){var r,n=t.length;return e&&e.state?0!==(r=e.state).wrap&&11!==r.mode?d:11===r.mode&&i(1,t,n,0)!==r.check?-3:T(e,t,n,n)?(r.mode=31,-4):(r.havedict=1,u):d},t.inflateInfo="pako inflate (from Nodeca project)"},9241:(e,t,r)=>{"use strict";var n=r(24236),i=15,a=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],o=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],s=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],c=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];e.exports=function(e,t,r,l,u,d,p,f){var m,g,_,h,y,v,b,k,x,E=f.bits,S=0,D=0,w=0,T=0,C=0,A=0,N=0,P=0,I=0,F=0,O=null,R=0,M=new n.Buf16(16),L=new n.Buf16(16),j=null,B=0;for(S=0;S<=i;S++)M[S]=0;for(D=0;D<l;D++)M[t[r+D]]++;for(C=E,T=i;T>=1&&0===M[T];T--);if(C>T&&(C=T),0===T)return u[d++]=20971520,u[d++]=20971520,f.bits=1,0;for(w=1;w<T&&0===M[w];w++);for(C<w&&(C=w),P=1,S=1;S<=i;S++)if(P<<=1,(P-=M[S])<0)return-1;if(P>0&&(0===e||1!==T))return-1;for(L[1]=0,S=1;S<i;S++)L[S+1]=L[S]+M[S];for(D=0;D<l;D++)0!==t[r+D]&&(p[L[t[r+D]]++]=D);if(0===e?(O=j=p,v=19):1===e?(O=a,R-=257,j=o,B-=257,v=256):(O=s,j=c,v=-1),F=0,D=0,S=w,y=d,A=C,N=0,_=-1,h=(I=1<<C)-1,1===e&&I>852||2===e&&I>592)return 1;for(;;){b=S-N,p[D]<v?(k=0,x=p[D]):p[D]>v?(k=j[B+p[D]],x=O[R+p[D]]):(k=96,x=0),m=1<<S-N,w=g=1<<A;do{u[y+(F>>N)+(g-=m)]=b<<24|k<<16|x|0}while(0!==g);for(m=1<<S-1;F&m;)m>>=1;if(0!==m?(F&=m-1,F+=m):F=0,D++,0==--M[S]){if(S===T)break;S=t[r+p[D]]}if(S>C&&(F&h)!==_){for(0===N&&(N=C),y+=w,P=1<<(A=S-N);A+N<T&&!((P-=M[A+N])<=0);)A++,P<<=1;if(I+=1<<A,1===e&&I>852||2===e&&I>592)return 1;u[_=F&h]=C<<24|A<<16|y-d|0}}return 0!==F&&(u[y+F]=S-N<<24|64<<16|0),f.bits=C,0}},48898:e=>{"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},10342:(e,t,r)=>{"use strict";var n=r(24236),i=0,a=1;function o(e){for(var t=e.length;--t>=0;)e[t]=0}var s=0,c=29,l=256,u=l+1+c,d=30,p=19,f=2*u+1,m=15,g=16,_=7,h=256,y=16,v=17,b=18,k=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],x=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],E=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],S=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],D=new Array(2*(u+2));o(D);var w=new Array(2*d);o(w);var T=new Array(512);o(T);var C=new Array(256);o(C);var A=new Array(c);o(A);var N,P,I,F=new Array(d);function O(e,t,r,n,i){this.static_tree=e,this.extra_bits=t,this.extra_base=r,this.elems=n,this.max_length=i,this.has_stree=e&&e.length}function R(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function M(e){return e<256?T[e]:T[256+(e>>>7)]}function L(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function j(e,t,r){e.bi_valid>g-r?(e.bi_buf|=t<<e.bi_valid&65535,L(e,e.bi_buf),e.bi_buf=t>>g-e.bi_valid,e.bi_valid+=r-g):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=r)}function B(e,t,r){j(e,r[2*t],r[2*t+1])}function z(e,t){var r=0;do{r|=1&e,e>>>=1,r<<=1}while(--t>0);return r>>>1}function U(e,t,r){var n,i,a=new Array(m+1),o=0;for(n=1;n<=m;n++)a[n]=o=o+r[n-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];0!==s&&(e[2*i]=z(a[s]++,s))}}function q(e){var t;for(t=0;t<u;t++)e.dyn_ltree[2*t]=0;for(t=0;t<d;t++)e.dyn_dtree[2*t]=0;for(t=0;t<p;t++)e.bl_tree[2*t]=0;e.dyn_ltree[2*h]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function J(e){e.bi_valid>8?L(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function V(e,t,r,n){var i=2*t,a=2*r;return e[i]<e[a]||e[i]===e[a]&&n[t]<=n[r]}function H(e,t,r){for(var n=e.heap[r],i=r<<1;i<=e.heap_len&&(i<e.heap_len&&V(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!V(t,n,e.heap[i],e.depth));)e.heap[r]=e.heap[i],r=i,i<<=1;e.heap[r]=n}function K(e,t,r){var n,i,a,o,s=0;if(0!==e.last_lit)do{n=e.pending_buf[e.d_buf+2*s]<<8|e.pending_buf[e.d_buf+2*s+1],i=e.pending_buf[e.l_buf+s],s++,0===n?B(e,i,t):(B(e,(a=C[i])+l+1,t),0!==(o=k[a])&&j(e,i-=A[a],o),B(e,a=M(--n),r),0!==(o=x[a])&&j(e,n-=F[a],o))}while(s<e.last_lit);B(e,h,t)}function W(e,t){var r,n,i,a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.has_stree,c=t.stat_desc.elems,l=-1;for(e.heap_len=0,e.heap_max=f,r=0;r<c;r++)0!==a[2*r]?(e.heap[++e.heap_len]=l=r,e.depth[r]=0):a[2*r+1]=0;for(;e.heap_len<2;)a[2*(i=e.heap[++e.heap_len]=l<2?++l:0)]=1,e.depth[i]=0,e.opt_len--,s&&(e.static_len-=o[2*i+1]);for(t.max_code=l,r=e.heap_len>>1;r>=1;r--)H(e,a,r);i=c;do{r=e.heap[1],e.heap[1]=e.heap[e.heap_len--],H(e,a,1),n=e.heap[1],e.heap[--e.heap_max]=r,e.heap[--e.heap_max]=n,a[2*i]=a[2*r]+a[2*n],e.depth[i]=(e.depth[r]>=e.depth[n]?e.depth[r]:e.depth[n])+1,a[2*r+1]=a[2*n+1]=i,e.heap[1]=i++,H(e,a,1)}while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],function(e,t){var r,n,i,a,o,s,c=t.dyn_tree,l=t.max_code,u=t.stat_desc.static_tree,d=t.stat_desc.has_stree,p=t.stat_desc.extra_bits,g=t.stat_desc.extra_base,_=t.stat_desc.max_length,h=0;for(a=0;a<=m;a++)e.bl_count[a]=0;for(c[2*e.heap[e.heap_max]+1]=0,r=e.heap_max+1;r<f;r++)(a=c[2*c[2*(n=e.heap[r])+1]+1]+1)>_&&(a=_,h++),c[2*n+1]=a,n>l||(e.bl_count[a]++,o=0,n>=g&&(o=p[n-g]),s=c[2*n],e.opt_len+=s*(a+o),d&&(e.static_len+=s*(u[2*n+1]+o)));if(0!==h){do{for(a=_-1;0===e.bl_count[a];)a--;e.bl_count[a]--,e.bl_count[a+1]+=2,e.bl_count[_]--,h-=2}while(h>0);for(a=_;0!==a;a--)for(n=e.bl_count[a];0!==n;)(i=e.heap[--r])>l||(c[2*i+1]!==a&&(e.opt_len+=(a-c[2*i+1])*c[2*i],c[2*i+1]=a),n--)}}(e,t),U(a,l,e.bl_count)}function G(e,t,r){var n,i,a=-1,o=t[1],s=0,c=7,l=4;for(0===o&&(c=138,l=3),t[2*(r+1)+1]=65535,n=0;n<=r;n++)i=o,o=t[2*(n+1)+1],++s<c&&i===o||(s<l?e.bl_tree[2*i]+=s:0!==i?(i!==a&&e.bl_tree[2*i]++,e.bl_tree[2*y]++):s<=10?e.bl_tree[2*v]++:e.bl_tree[2*b]++,s=0,a=i,0===o?(c=138,l=3):i===o?(c=6,l=3):(c=7,l=4))}function $(e,t,r){var n,i,a=-1,o=t[1],s=0,c=7,l=4;for(0===o&&(c=138,l=3),n=0;n<=r;n++)if(i=o,o=t[2*(n+1)+1],!(++s<c&&i===o)){if(s<l)do{B(e,i,e.bl_tree)}while(0!=--s);else 0!==i?(i!==a&&(B(e,i,e.bl_tree),s--),B(e,y,e.bl_tree),j(e,s-3,2)):s<=10?(B(e,v,e.bl_tree),j(e,s-3,3)):(B(e,b,e.bl_tree),j(e,s-11,7));s=0,a=i,0===o?(c=138,l=3):i===o?(c=6,l=3):(c=7,l=4)}}o(F);var Y=!1;function X(e,t,r,i){j(e,(s<<1)+(i?1:0),3),function(e,t,r,i){J(e),i&&(L(e,r),L(e,~r)),n.arraySet(e.pending_buf,e.window,t,r,e.pending),e.pending+=r}(e,t,r,!0)}t._tr_init=function(e){Y||(!function(){var e,t,r,n,i,a=new Array(m+1);for(r=0,n=0;n<c-1;n++)for(A[n]=r,e=0;e<1<<k[n];e++)C[r++]=n;for(C[r-1]=n,i=0,n=0;n<16;n++)for(F[n]=i,e=0;e<1<<x[n];e++)T[i++]=n;for(i>>=7;n<d;n++)for(F[n]=i<<7,e=0;e<1<<x[n]-7;e++)T[256+i++]=n;for(t=0;t<=m;t++)a[t]=0;for(e=0;e<=143;)D[2*e+1]=8,e++,a[8]++;for(;e<=255;)D[2*e+1]=9,e++,a[9]++;for(;e<=279;)D[2*e+1]=7,e++,a[7]++;for(;e<=287;)D[2*e+1]=8,e++,a[8]++;for(U(D,u+1,a),e=0;e<d;e++)w[2*e+1]=5,w[2*e]=z(e,5);N=new O(D,k,l+1,u,m),P=new O(w,x,0,d,m),I=new O(new Array(0),E,0,p,_)}(),Y=!0),e.l_desc=new R(e.dyn_ltree,N),e.d_desc=new R(e.dyn_dtree,P),e.bl_desc=new R(e.bl_tree,I),e.bi_buf=0,e.bi_valid=0,q(e)},t._tr_stored_block=X,t._tr_flush_block=function(e,t,r,n){var o,s,c=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=function(e){var t,r=4093624447;for(t=0;t<=31;t++,r>>>=1)if(1&r&&0!==e.dyn_ltree[2*t])return i;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return a;for(t=32;t<l;t++)if(0!==e.dyn_ltree[2*t])return a;return i}(e)),W(e,e.l_desc),W(e,e.d_desc),c=function(e){var t;for(G(e,e.dyn_ltree,e.l_desc.max_code),G(e,e.dyn_dtree,e.d_desc.max_code),W(e,e.bl_desc),t=p-1;t>=3&&0===e.bl_tree[2*S[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),o=e.opt_len+3+7>>>3,(s=e.static_len+3+7>>>3)<=o&&(o=s)):o=s=r+5,r+4<=o&&-1!==t?X(e,t,r,n):4===e.strategy||s===o?(j(e,2+(n?1:0),3),K(e,D,w)):(j(e,4+(n?1:0),3),function(e,t,r,n){var i;for(j(e,t-257,5),j(e,r-1,5),j(e,n-4,4),i=0;i<n;i++)j(e,e.bl_tree[2*S[i]+1],3);$(e,e.dyn_ltree,t-1),$(e,e.dyn_dtree,r-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,c+1),K(e,e.dyn_ltree,e.dyn_dtree)),q(e),n&&J(e)},t._tr_tally=function(e,t,r){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&r,e.last_lit++,0===t?e.dyn_ltree[2*r]++:(e.matches++,t--,e.dyn_ltree[2*(C[r]+l+1)]++,e.dyn_dtree[2*M(t)]++),e.last_lit===e.lit_bufsize-1},t._tr_align=function(e){j(e,2,3),B(e,h,D),function(e){16===e.bi_valid?(L(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},62292:e=>{"use strict";e.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},64095:e=>{"use strict";function t(e){return"/"===e.charAt(0)}function r(e){var t=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/.exec(e),r=t[1]||"",n=Boolean(r&&":"!==r.charAt(1));return Boolean(t[2]||n)}e.exports="win32"===process.platform?r:t,e.exports.posix=t,e.exports.win32=r},88212:e=>{"use strict";"undefined"==typeof process||!process.version||0===process.version.indexOf("v0.")||0===process.version.indexOf("v1.")&&0!==process.version.indexOf("v1.8.")?e.exports={nextTick:function(e,t,r,n){if("function"!=typeof e)throw new TypeError('"callback" argument must be a function');var i,a,o=arguments.length;switch(o){case 0:case 1:return process.nextTick(e);case 2:return process.nextTick((function(){e.call(null,t)}));case 3:return process.nextTick((function(){e.call(null,t,r)}));case 4:return process.nextTick((function(){e.call(null,t,r,n)}));default:for(i=new Array(o-1),a=0;a<i.length;)i[a++]=arguments[a];return process.nextTick((function(){e.apply(null,i)}))}}}:e.exports=process},4012:e=>{"use strict";const t={};function r(e,r,n){n||(n=Error);class i extends n{constructor(e,t,n){super(function(e,t,n){return"string"==typeof r?r:r(e,t,n)}(e,t,n))}}i.prototype.name=n.name,i.prototype.code=e,t[e]=i}function n(e,t){if(Array.isArray(e)){const r=e.length;return e=e.map((e=>String(e))),r>2?`one of ${t} ${e.slice(0,r-1).join(", ")}, or `+e[r-1]:2===r?`one of ${t} ${e[0]} or ${e[1]}`:`of ${t} ${e[0]}`}return`of ${t} ${String(e)}`}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){let i;var a,o;let s;if("string"==typeof t&&(a="not ",t.substr(!o||o<0?0:+o,a.length)===a)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))s=`The ${e} ${i} ${n(t,"type")}`;else{const r=function(e,t,r){return"number"!=typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";s=`The "${e}" ${r} ${i} ${n(t,"type")}`}return s+=". Received type "+typeof r,s}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.q=t},56753:(e,t,r)=>{"use strict";var n=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=l;var i=r(79481),a=r(64229);r(94378)(l,i);for(var o=n(a.prototype),s=0;s<o.length;s++){var c=o[s];l.prototype[c]||(l.prototype[c]=a.prototype[c])}function l(e){if(!(this instanceof l))return new l(e);i.call(this,e),a.call(this,e),this.allowHalfOpen=!0,e&&(!1===e.readable&&(this.readable=!1),!1===e.writable&&(this.writable=!1),!1===e.allowHalfOpen&&(this.allowHalfOpen=!1,this.once("end",u)))}function u(){this._writableState.ended||process.nextTick(d,this)}function d(e){e.end()}Object.defineProperty(l.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(l.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(l.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(l.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}})},82725:(e,t,r)=>{"use strict";e.exports=i;var n=r(74605);function i(e){if(!(this instanceof i))return new i(e);n.call(this,e)}r(94378)(i,n),i.prototype._transform=function(e,t,r){r(null,e)}},79481:(e,t,r)=>{"use strict";var n;e.exports=S,S.ReadableState=E;r(82361).EventEmitter;var i=function(e,t){return e.listeners(t).length},a=r(79740),o=r(14300).Buffer,s=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var c,l=r(73837);c=l&&l.debuglog?l.debuglog("stream"):function(){};var u,d,p,f=r(57327),m=r(61195),g=r(82457).getHighWaterMark,_=r(4012).q,h=_.ERR_INVALID_ARG_TYPE,y=_.ERR_STREAM_PUSH_AFTER_EOF,v=_.ERR_METHOD_NOT_IMPLEMENTED,b=_.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(94378)(S,a);var k=m.errorOrDestroy,x=["error","close","destroy","pause","resume"];function E(e,t,i){n=n||r(56753),e=e||{},"boolean"!=typeof i&&(i=t instanceof n),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=g(this,e,"readableHighWaterMark",i),this.buffer=new f,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(u||(u=r(32553).s),this.decoder=new u(e.encoding),this.encoding=e.encoding)}function S(e){if(n=n||r(56753),!(this instanceof S))return new S(e);var t=this instanceof n;this._readableState=new E(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),a.call(this)}function D(e,t,r,n,i){c("readableAddChunk",t);var a,l=e._readableState;if(null===t)l.reading=!1,function(e,t){if(c("onEofChunk"),t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?A(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,N(e)))}(e,l);else if(i||(a=function(e,t){var r;n=t,o.isBuffer(n)||n instanceof s||"string"==typeof t||void 0===t||e.objectMode||(r=new h("chunk",["string","Buffer","Uint8Array"],t));var n;return r}(l,t)),a)k(e,a);else if(l.objectMode||t&&t.length>0)if("string"==typeof t||l.objectMode||Object.getPrototypeOf(t)===o.prototype||(t=function(e){return o.from(e)}(t)),n)l.endEmitted?k(e,new b):w(e,l,t,!0);else if(l.ended)k(e,new y);else{if(l.destroyed)return!1;l.reading=!1,l.decoder&&!r?(t=l.decoder.write(t),l.objectMode||0!==t.length?w(e,l,t,!1):P(e,l)):w(e,l,t,!1)}else n||(l.reading=!1,P(e,l));return!l.ended&&(l.length<l.highWaterMark||0===l.length)}function w(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(t.awaitDrain=0,e.emit("data",r)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&A(e)),P(e,t)}Object.defineProperty(S.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),S.prototype.destroy=m.destroy,S.prototype._undestroy=m.undestroy,S.prototype._destroy=function(e,t){t(e)},S.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=o.from(e,t),t=""),r=!0),D(this,e,t,!1,r)},S.prototype.unshift=function(e){return D(this,e,null,!0,!1)},S.prototype.isPaused=function(){return!1===this._readableState.flowing},S.prototype.setEncoding=function(e){u||(u=r(32553).s);var t=new u(e);this._readableState.decoder=t,this._readableState.encoding=this._readableState.decoder.encoding;for(var n=this._readableState.buffer.head,i="";null!==n;)i+=t.write(n.data),n=n.next;return this._readableState.buffer.clear(),""!==i&&this._readableState.buffer.push(i),this._readableState.length=i.length,this};var T=1073741824;function C(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=T?e=T:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function A(e){var t=e._readableState;c("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(c("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(N,e))}function N(e){var t=e._readableState;c("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,M(e)}function P(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length<t.highWaterMark||t.flowing&&0===t.length);){var r=t.length;if(c("maybeReadMore read 0"),e.read(0),r===t.length)break}t.readingMore=!1}function F(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function O(e){c("readable nexttick read 0"),e.read(0)}function R(e,t){c("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),M(e),t.flowing&&!t.reading&&e.read(0)}function M(e){var t=e._readableState;for(c("flow",t.flowing);t.flowing&&null!==e.read(););}function L(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function j(e){var t=e._readableState;c("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(B,t,e))}function B(e,t){if(c("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function z(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}S.prototype.read=function(e){c("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&((0!==t.highWaterMark?t.length>=t.highWaterMark:t.length>0)||t.ended))return c("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?j(this):A(this),null;if(0===(e=C(e,t))&&t.ended)return 0===t.length&&j(this),null;var n,i=t.needReadable;return c("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&c("length less than watermark",i=!0),t.ended||t.reading?c("reading or ended",i=!1):i&&(c("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=C(r,t))),null===(n=e>0?L(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&j(this)),null!==n&&this.emit("data",n),n},S.prototype._read=function(e){k(this,new v("_read()"))},S.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,c("pipe count=%d opts=%j",n.pipesCount,t);var a=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?s:g;function o(t,i){c("onunpipe"),t===r&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,c("cleanup"),e.removeListener("close",f),e.removeListener("finish",m),e.removeListener("drain",l),e.removeListener("error",p),e.removeListener("unpipe",o),r.removeListener("end",s),r.removeListener("end",g),r.removeListener("data",d),u=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function s(){c("onend"),e.end()}n.endEmitted?process.nextTick(a):r.once("end",a),e.on("unpipe",o);var l=function(e){return function(){var t=e._readableState;c("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&i(e,"data")&&(t.flowing=!0,M(e))}}(r);e.on("drain",l);var u=!1;function d(t){c("ondata");var i=e.write(t);c("dest.write",i),!1===i&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==z(n.pipes,e))&&!u&&(c("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function p(t){c("onerror",t),g(),e.removeListener("error",p),0===i(e,"error")&&k(e,t)}function f(){e.removeListener("finish",m),g()}function m(){c("onfinish"),e.removeListener("close",f),g()}function g(){c("unpipe"),r.unpipe(e)}return r.on("data",d),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",p),e.once("close",f),e.once("finish",m),e.emit("pipe",r),n.flowing||(c("pipe resume"),r.resume()),e},S.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=z(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},S.prototype.on=function(e,t){var r=a.prototype.on.call(this,e,t),n=this._readableState;return"data"===e?(n.readableListening=this.listenerCount("readable")>0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,c("on readable",n.length,n.reading),n.length?A(this):n.reading||process.nextTick(O,this))),r},S.prototype.addListener=S.prototype.on,S.prototype.removeListener=function(e,t){var r=a.prototype.removeListener.call(this,e,t);return"readable"===e&&process.nextTick(F,this),r},S.prototype.removeAllListeners=function(e){var t=a.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||process.nextTick(F,this),t},S.prototype.resume=function(){var e=this._readableState;return e.flowing||(c("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(R,e,t))}(this,e)),e.paused=!1,this},S.prototype.pause=function(){return c("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(c("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},S.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(c("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(c("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<x.length;a++)e.on(x[a],this.emit.bind(this,x[a]));return this._read=function(t){c("wrapped _read",t),n&&(n=!1,e.resume())},this},"function"==typeof Symbol&&(S.prototype[Symbol.asyncIterator]=function(){return void 0===d&&(d=r(45850)),d(this)}),Object.defineProperty(S.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(S.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(S.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(e){this._readableState&&(this._readableState.flowing=e)}}),S._fromList=L,Object.defineProperty(S.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}}),"function"==typeof Symbol&&(S.from=function(e,t){return void 0===p&&(p=r(96307)),p(S,e,t)})},74605:(e,t,r)=>{"use strict";e.exports=u;var n=r(4012).q,i=n.ERR_METHOD_NOT_IMPLEMENTED,a=n.ERR_MULTIPLE_CALLBACK,o=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,c=r(56753);function l(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new a);r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function u(e){if(!(this instanceof u))return new u(e);c.call(this,e),this._transformState={afterTransform:l.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",d)}function d(){var e=this;"function"!=typeof this._flush||this._readableState.destroyed?p(this,null,null):this._flush((function(t,r){p(e,t,r)}))}function p(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new s;if(e._transformState.transforming)throw new o;return e.push(null)}r(94378)(u,c),u.prototype.push=function(e,t){return this._transformState.needTransform=!1,c.prototype.push.call(this,e,t)},u.prototype._transform=function(e,t,r){r(new i("_transform()"))},u.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},u.prototype._read=function(e){var t=this._transformState;null===t.writechunk||t.transforming?t.needTransform=!0:(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform))},u.prototype._destroy=function(e,t){c.prototype._destroy.call(this,e,(function(e){t(e)}))}},64229:(e,t,r)=>{"use strict";function n(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}var i;e.exports=S,S.WritableState=E;var a={deprecate:r(41159)},o=r(79740),s=r(14300).Buffer,c=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var l,u=r(61195),d=r(82457).getHighWaterMark,p=r(4012).q,f=p.ERR_INVALID_ARG_TYPE,m=p.ERR_METHOD_NOT_IMPLEMENTED,g=p.ERR_MULTIPLE_CALLBACK,_=p.ERR_STREAM_CANNOT_PIPE,h=p.ERR_STREAM_DESTROYED,y=p.ERR_STREAM_NULL_VALUES,v=p.ERR_STREAM_WRITE_AFTER_END,b=p.ERR_UNKNOWN_ENCODING,k=u.errorOrDestroy;function x(){}function E(e,t,a){i=i||r(56753),e=e||{},"boolean"!=typeof a&&(a=t instanceof i),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=d(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var o=!1===e.decodeStrings;this.decodeStrings=!o,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if("function"!=typeof i)throw new g;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,i){--t.pendingcb,r?(process.nextTick(i,n),process.nextTick(N,e,t),e._writableState.errorEmitted=!0,k(e,n)):(i(n),e._writableState.errorEmitted=!0,k(e,n),N(e,t))}(e,r,n,t,i);else{var a=C(r)||e.destroyed;a||r.corked||r.bufferProcessing||!r.bufferedRequest||T(e,r),n?process.nextTick(w,e,r,a,i):w(e,r,a,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new n(this)}function S(e){var t=this instanceof(i=i||r(56753));if(!t&&!l.call(S,this))return new S(e);this._writableState=new E(e,this,t),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),o.call(this)}function D(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new h("write")):r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function w(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),N(e,t)}function T(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var i=t.bufferedRequestCount,a=new Array(i),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,D(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new n(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(D(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function C(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function A(e,t){e._final((function(r){t.pendingcb--,r&&k(e,r),t.prefinished=!0,e.emit("prefinish"),N(e,t)}))}function N(e,t){var r=C(t);if(r&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,process.nextTick(A,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var n=e._readableState;(!n||n.autoDestroy&&n.endEmitted)&&e.destroy()}return r}r(94378)(S,o),E.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(E.prototype,"buffer",{get:a.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(l=Function.prototype[Symbol.hasInstance],Object.defineProperty(S,Symbol.hasInstance,{value:function(e){return!!l.call(this,e)||this===S&&(e&&e._writableState instanceof E)}})):l=function(e){return e instanceof this},S.prototype.pipe=function(){k(this,new _)},S.prototype.write=function(e,t,r){var n,i=this._writableState,a=!1,o=!i.objectMode&&(n=e,s.isBuffer(n)||n instanceof c);return o&&!s.isBuffer(e)&&(e=function(e){return s.from(e)}(e)),"function"==typeof t&&(r=t,t=null),o?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof r&&(r=x),i.ending?function(e,t){var r=new v;k(e,r),process.nextTick(t,r)}(this,r):(o||function(e,t,r,n){var i;return null===r?i=new y:"string"==typeof r||t.objectMode||(i=new f("chunk",["string","Buffer"],r)),!i||(k(e,i),process.nextTick(n,i),!1)}(this,i,e,r))&&(i.pendingcb++,a=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=s.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var c=t.objectMode?1:n.length;t.length+=c;var l=t.length<t.highWaterMark;l||(t.needDrain=!0);if(t.writing||t.corked){var u=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},u?u.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else D(e,t,!1,c,n,i,a);return l}(this,i,o,e,t,r)),a},S.prototype.cork=function(){this._writableState.corked++},S.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||T(this,e))},S.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new b(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(S.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(S.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),S.prototype._write=function(e,t,r){r(new m("_write()"))},S.prototype._writev=null,S.prototype.end=function(e,t,r){var n=this._writableState;return"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,N(e,t),r&&(t.finished?process.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r),this},Object.defineProperty(S.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(S.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),S.prototype.destroy=u.destroy,S.prototype._undestroy=u.undestroy,S.prototype._destroy=function(e,t){t(e)}},45850:(e,t,r)=>{"use strict";var n;function i(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var a=r(8610),o=Symbol("lastResolve"),s=Symbol("lastReject"),c=Symbol("error"),l=Symbol("ended"),u=Symbol("lastPromise"),d=Symbol("handlePromise"),p=Symbol("stream");function f(e,t){return{value:e,done:t}}function m(e){var t=e[o];if(null!==t){var r=e[p].read();null!==r&&(e[u]=null,e[o]=null,e[s]=null,t(f(r,!1)))}}function g(e){process.nextTick(m,e)}var _=Object.getPrototypeOf((function(){})),h=Object.setPrototypeOf((i(n={get stream(){return this[p]},next:function(){var e=this,t=this[c];if(null!==t)return Promise.reject(t);if(this[l])return Promise.resolve(f(void 0,!0));if(this[p].destroyed)return new Promise((function(t,r){process.nextTick((function(){e[c]?r(e[c]):t(f(void 0,!0))}))}));var r,n=this[u];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[l]?r(f(void 0,!0)):t[d](r,n)}),n)}}(n,this));else{var i=this[p].read();if(null!==i)return Promise.resolve(f(i,!1));r=new Promise(this[d])}return this[u]=r,r}},Symbol.asyncIterator,(function(){return this})),i(n,"return",(function(){var e=this;return new Promise((function(t,r){e[p].destroy(null,(function(e){e?r(e):t(f(void 0,!0))}))}))})),n),_);e.exports=function(e){var t,r=Object.create(h,(i(t={},p,{value:e,writable:!0}),i(t,o,{value:null,writable:!0}),i(t,s,{value:null,writable:!0}),i(t,c,{value:null,writable:!0}),i(t,l,{value:e._readableState.endEmitted,writable:!0}),i(t,d,{value:function(e,t){var n=r[p].read();n?(r[u]=null,r[o]=null,r[s]=null,e(f(n,!1))):(r[o]=e,r[s]=t)},writable:!0}),t));return r[u]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[s];return null!==t&&(r[u]=null,r[o]=null,r[s]=null,t(e)),void(r[c]=e)}var n=r[o];null!==n&&(r[u]=null,r[o]=null,r[s]=null,n(f(void 0,!0))),r[l]=!0})),e.on("readable",g.bind(null,r)),r}},57327:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function a(e,t,r){return(t=s(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,s(n.key),n)}}function s(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}var c=r(14300).Buffer,l=r(73837).inspect,u=l&&l.custom||"inspect";e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}var t,r,n;return t=e,(r=[{key:"push",value:function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return c.alloc(0);for(var t,r,n,i=c.allocUnsafe(e>>>0),a=this.head,o=0;a;)t=a.data,r=i,n=o,c.prototype.copy.call(t,r,n),o+=a.data.length,a=a.next;return i}},{key:"consume",value:function(e,t){var r;return e<this.head.data.length?(r=this.head.data.slice(0,e),this.head.data=this.head.data.slice(e)):r=e===this.head.data.length?this.shift():t?this._getString(e):this._getBuffer(e),r}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(e){var t=this.head,r=1,n=t.data;for(e-=n.length;t=t.next;){var i=t.data,a=e>i.length?i.length:e;if(a===i.length?n+=i:n+=i.slice(0,e),0==(e-=a)){a===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(a));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=c.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,a),0==(e-=a)){a===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(a));break}++n}return this.length-=n,t}},{key:u,value:function(e,t){return l(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&o(t.prototype,r),n&&o(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}()},61195:e=>{"use strict";function t(e,t){n(e,t),r(e)}function r(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function n(e,t){e.emit("error",t)}e.exports={destroy:function(e,i){var a=this,o=this._readableState&&this._readableState.destroyed,s=this._writableState&&this._writableState.destroyed;return o||s?(i?i(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(n,this,e)):process.nextTick(n,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!i&&e?a._writableState?a._writableState.errorEmitted?process.nextTick(r,a):(a._writableState.errorEmitted=!0,process.nextTick(t,a,e)):process.nextTick(t,a,e):i?(process.nextTick(r,a),i(e)):process.nextTick(r,a)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}}},8610:(e,t,r)=>{"use strict";var n=r(4012).q.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,r,a){if("function"==typeof r)return e(t,null,r);r||(r={}),a=function(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];e.apply(this,n)}}}(a||i);var o=r.readable||!1!==r.readable&&t.readable,s=r.writable||!1!==r.writable&&t.writable,c=function(){t.writable||u()},l=t._writableState&&t._writableState.finished,u=function(){s=!1,l=!0,o||a.call(t)},d=t._readableState&&t._readableState.endEmitted,p=function(){o=!1,d=!0,s||a.call(t)},f=function(e){a.call(t,e)},m=function(){var e;return o&&!d?(t._readableState&&t._readableState.ended||(e=new n),a.call(t,e)):s&&!l?(t._writableState&&t._writableState.ended||(e=new n),a.call(t,e)):void 0},g=function(){t.req.on("finish",u)};return!function(e){return e.setHeader&&"function"==typeof e.abort}(t)?s&&!t._writableState&&(t.on("end",c),t.on("close",c)):(t.on("complete",u),t.on("abort",m),t.req?g():t.on("request",g)),t.on("end",p),t.on("finish",u),!1!==r.error&&t.on("error",f),t.on("close",m),function(){t.removeListener("complete",u),t.removeListener("abort",m),t.removeListener("request",g),t.req&&t.req.removeListener("finish",u),t.removeListener("end",c),t.removeListener("close",c),t.removeListener("finish",u),t.removeListener("end",p),t.removeListener("error",f),t.removeListener("close",m)}}},96307:(e,t,r)=>{"use strict";function n(e,t,r,n,i,a,o){try{var s=e[a](o),c=s.value}catch(e){return void r(e)}s.done?t(c):Promise.resolve(c).then(n,i)}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var o=r(4012).q.ERR_INVALID_ARG_TYPE;e.exports=function(e,t,r){var s;if(t&&"function"==typeof t.next)s=t;else if(t&&t[Symbol.asyncIterator])s=t[Symbol.asyncIterator]();else{if(!t||!t[Symbol.iterator])throw new o("iterable",["Iterable"],t);s=t[Symbol.iterator]()}var c=new e(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({objectMode:!0},r)),l=!1;function u(){return d.apply(this,arguments)}function d(){var e;return e=function*(){try{var e=yield s.next(),t=e.value;e.done?c.push(null):c.push(yield t)?u():l=!1}catch(e){c.destroy(e)}},d=function(){var t=this,r=arguments;return new Promise((function(i,a){var o=e.apply(t,r);function s(e){n(o,i,a,s,c,"next",e)}function c(e){n(o,i,a,s,c,"throw",e)}s(void 0)}))},d.apply(this,arguments)}return c._read=function(){l||(l=!0,u())},c}},59946:(e,t,r)=>{"use strict";var n;var i=r(4012).q,a=i.ERR_MISSING_ARGS,o=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function c(e){e()}function l(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];var u,d=function(e){return e.length?"function"!=typeof e[e.length-1]?s:e.pop():s}(t);if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new a("streams");var p=t.map((function(e,i){var a=i<t.length-1;return function(e,t,i,a){a=function(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}(a);var s=!1;e.on("close",(function(){s=!0})),void 0===n&&(n=r(8610)),n(e,{readable:t,writable:i},(function(e){if(e)return a(e);s=!0,a()}));var c=!1;return function(t){if(!s&&!c)return c=!0,function(e){return e.setHeader&&"function"==typeof e.abort}(e)?e.abort():"function"==typeof e.destroy?e.destroy():void a(t||new o("pipe"))}}(e,a,i>0,(function(e){u||(u=e),e&&p.forEach(c),a||(p.forEach(c),d(u))}))}));return t.reduce(l)}},82457:(e,t,r)=>{"use strict";var n=r(4012).q.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var a=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=a){if(!isFinite(a)||Math.floor(a)!==a||a<0)throw new n(i?r:"highWaterMark",a);return Math.floor(a)}return e.objectMode?16:16384}}},79740:(e,t,r)=>{e.exports=r(12781)},11451:(e,t,r)=>{var n=r(12781);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n.Readable,Object.assign(e.exports,n),e.exports.Stream=n):((t=e.exports=r(79481)).Stream=n||t,t.Readable=t,t.Writable=r(64229),t.Duplex=r(56753),t.Transform=r(74605),t.PassThrough=r(82725),t.finished=r(8610),t.pipeline=r(59946))},92141:(e,t,r)=>{e.exports=u;const n=r(57147),{EventEmitter:i}=r(82361),{Minimatch:a}=r(35924),{resolve:o}=r(71017);function s(e,t){return new Promise(((r,i)=>{(t?n.stat:n.lstat)(e,((n,i)=>{if(n)if("ENOENT"===n.code)r(t?s(e,!1):null);else r(null);else r(i)}))}))}async function*c(e,t,r,i,a,o){let l=await function(e,t){return new Promise(((r,i)=>{n.readdir(e,{withFileTypes:!0},((e,n)=>{if(e)switch(e.code){case"ENOTDIR":t?i(e):r([]);break;case"ENOTSUP":case"ENOENT":case"ENAMETOOLONG":case"UNKNOWN":r([]);break;default:i(e)}else r(n)}))}))}(t+e,o);for(const n of l){let o=n.name;void 0===o&&(o=n,i=!0);const l=e+"/"+o,u=l.slice(1),d=t+"/"+u;let p=null;(i||r)&&(p=await s(d,r)),p||void 0===n.name||(p=n),null===p&&(p={isDirectory:()=>!1}),p.isDirectory()?a(u)||(yield{relative:u,absolute:d,stats:p},yield*c(l,t,r,i,a,!1)):yield{relative:u,absolute:d,stats:p}}}class l extends i{constructor(e,t,r){if(super(),"function"==typeof t&&(r=t,t=null),this.options=function(e){return{pattern:e.pattern,dot:!!e.dot,noglobstar:!!e.noglobstar,matchBase:!!e.matchBase,nocase:!!e.nocase,ignore:e.ignore,skip:e.skip,follow:!!e.follow,stat:!!e.stat,nodir:!!e.nodir,mark:!!e.mark,silent:!!e.silent,absolute:!!e.absolute}}(t||{}),this.matchers=[],this.options.pattern){const e=Array.isArray(this.options.pattern)?this.options.pattern:[this.options.pattern];this.matchers=e.map((e=>new a(e,{dot:this.options.dot,noglobstar:this.options.noglobstar,matchBase:this.options.matchBase,nocase:this.options.nocase})))}if(this.ignoreMatchers=[],this.options.ignore){const e=Array.isArray(this.options.ignore)?this.options.ignore:[this.options.ignore];this.ignoreMatchers=e.map((e=>new a(e,{dot:!0})))}if(this.skipMatchers=[],this.options.skip){const e=Array.isArray(this.options.skip)?this.options.skip:[this.options.skip];this.skipMatchers=e.map((e=>new a(e,{dot:!0})))}this.iterator=async function*(e,t,r,n){yield*c("",e,t,r,n,!0)}(o(e||"."),this.options.follow,this.options.stat,this._shouldSkipDirectory.bind(this)),this.paused=!1,this.inactive=!1,this.aborted=!1,r&&(this._matches=[],this.on("match",(e=>this._matches.push(this.options.absolute?e.absolute:e.relative))),this.on("error",(e=>r(e))),this.on("end",(()=>r(null,this._matches)))),setTimeout((()=>this._next()),0)}_shouldSkipDirectory(e){return this.skipMatchers.some((t=>t.match(e)))}_fileMatches(e,t){const r=e+(t?"/":"");return(0===this.matchers.length||this.matchers.some((e=>e.match(r))))&&!this.ignoreMatchers.some((e=>e.match(r)))&&(!this.options.nodir||!t)}_next(){this.paused||this.aborted?this.inactive=!0:this.iterator.next().then((e=>{if(e.done)this.emit("end");else{const t=e.value.stats.isDirectory();if(this._fileMatches(e.value.relative,t)){let r=e.value.relative,n=e.value.absolute;this.options.mark&&t&&(r+="/",n+="/"),this.options.stat?this.emit("match",{relative:r,absolute:n,stat:e.value.stats}):this.emit("match",{relative:r,absolute:n})}this._next(this.iterator)}})).catch((e=>{this.abort(),this.emit("error",e),e.code||this.options.silent||console.error(e)}))}abort(){this.aborted=!0}pause(){this.paused=!0}resume(){this.paused=!1,this.inactive&&(this.inactive=!1,this._next())}}function u(e,t,r){return new l(e,t,r)}u.ReaddirGlob=l},4491:(e,t,r)=>{var n=r(5623);e.exports=function(e){if(!e)return[];"{}"===e.substr(0,2)&&(e="\\{\\}"+e.substr(2));return _(function(e){return e.split("\\\\").join(i).split("\\{").join(a).split("\\}").join(o).split("\\,").join(s).split("\\.").join(c)}(e),!0).map(u)};var i="\0SLASH"+Math.random()+"\0",a="\0OPEN"+Math.random()+"\0",o="\0CLOSE"+Math.random()+"\0",s="\0COMMA"+Math.random()+"\0",c="\0PERIOD"+Math.random()+"\0";function l(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function u(e){return e.split(i).join("\\").split(a).join("{").split(o).join("}").split(s).join(",").split(c).join(".")}function d(e){if(!e)return[""];var t=[],r=n("{","}",e);if(!r)return e.split(",");var i=r.pre,a=r.body,o=r.post,s=i.split(",");s[s.length-1]+="{"+a+"}";var c=d(o);return o.length&&(s[s.length-1]+=c.shift(),s.push.apply(s,c)),t.push.apply(t,s),t}function p(e){return"{"+e+"}"}function f(e){return/^-?0\d/.test(e)}function m(e,t){return e<=t}function g(e,t){return e>=t}function _(e,t){var r=[],i=n("{","}",e);if(!i)return[e];var a=i.pre,s=i.post.length?_(i.post,!1):[""];if(/\$$/.test(i.pre))for(var c=0;c<s.length;c++){var u=a+"{"+i.body+"}"+s[c];r.push(u)}else{var h,y,v=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(i.body),b=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(i.body),k=v||b,x=i.body.indexOf(",")>=0;if(!k&&!x)return i.post.match(/,.*\}/)?_(e=i.pre+"{"+i.body+o+i.post):[e];if(k)h=i.body.split(/\.\./);else if(1===(h=d(i.body)).length&&1===(h=_(h[0],!1).map(p)).length)return s.map((function(e){return i.pre+h[0]+e}));if(k){var E=l(h[0]),S=l(h[1]),D=Math.max(h[0].length,h[1].length),w=3==h.length?Math.abs(l(h[2])):1,T=m;S<E&&(w*=-1,T=g);var C=h.some(f);y=[];for(var A=E;T(A,S);A+=w){var N;if(b)"\\"===(N=String.fromCharCode(A))&&(N="");else if(N=String(A),C){var P=D-N.length;if(P>0){var I=new Array(P+1).join("0");N=A<0?"-"+I+N.slice(1):I+N}}y.push(N)}}else{y=[];for(var F=0;F<h.length;F++)y.push.apply(y,_(h[F],!1))}for(F=0;F<y.length;F++)for(c=0;c<s.length;c++){u=a+y[F]+s[c];(!t||k||u)&&r.push(u)}}return r}},88582:e=>{const t="object"==typeof process&&process&&"win32"===process.platform;e.exports=t?{sep:"\\"}:{sep:"/"}},35924:(e,t,r)=>{const n=e.exports=(e,t,r={})=>(_(t),!(!r.nocomment&&"#"===t.charAt(0))&&new v(t,r).match(e));e.exports=n;const i=r(88582);n.sep=i.sep;const a=Symbol("globstar **");n.GLOBSTAR=a;const o=r(4491),s={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},c="[^/]",l=c+"*?",u=e=>e.split("").reduce(((e,t)=>(e[t]=!0,e)),{}),d=u("().*{}+?[]^$\\!"),p=u("[.("),f=/\/+/;n.filter=(e,t={})=>(r,i,a)=>n(r,e,t);const m=(e,t={})=>{const r={};return Object.keys(e).forEach((t=>r[t]=e[t])),Object.keys(t).forEach((e=>r[e]=t[e])),r};n.defaults=e=>{if(!e||"object"!=typeof e||!Object.keys(e).length)return n;const t=n,r=(r,n,i)=>t(r,n,m(e,i));return(r.Minimatch=class extends t.Minimatch{constructor(t,r){super(t,m(e,r))}}).defaults=r=>t.defaults(m(e,r)).Minimatch,r.filter=(r,n)=>t.filter(r,m(e,n)),r.defaults=r=>t.defaults(m(e,r)),r.makeRe=(r,n)=>t.makeRe(r,m(e,n)),r.braceExpand=(r,n)=>t.braceExpand(r,m(e,n)),r.match=(r,n,i)=>t.match(r,n,m(e,i)),r},n.braceExpand=(e,t)=>g(e,t);const g=(e,t={})=>(_(e),t.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:o(e)),_=e=>{if("string"!=typeof e)throw new TypeError("invalid pattern");if(e.length>65536)throw new TypeError("pattern is too long")},h=Symbol("subparse");n.makeRe=(e,t)=>new v(e,t||{}).makeRe(),n.match=(e,t,r={})=>{const n=new v(t,r);return e=e.filter((e=>n.match(e))),n.options.nonull&&!e.length&&e.push(t),e};const y=e=>e.replace(/[[\]\\]/g,"\\$&");class v{constructor(e,t){_(e),t||(t={}),this.options=t,this.set=[],this.pattern=e,this.windowsPathsNoEscape=!!t.windowsPathsNoEscape||!1===t.allowWindowsEscape,this.windowsPathsNoEscape&&(this.pattern=this.pattern.replace(/\\/g,"/")),this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!t.partial,this.make()}debug(){}make(){const e=this.pattern,t=this.options;if(!t.nocomment&&"#"===e.charAt(0))return void(this.comment=!0);if(!e)return void(this.empty=!0);this.parseNegate();let r=this.globSet=this.braceExpand();t.debug&&(this.debug=(...e)=>console.error(...e)),this.debug(this.pattern,r),r=this.globParts=r.map((e=>e.split(f))),this.debug(this.pattern,r),r=r.map(((e,t,r)=>e.map(this.parse,this))),this.debug(this.pattern,r),r=r.filter((e=>-1===e.indexOf(!1))),this.debug(this.pattern,r),this.set=r}parseNegate(){if(this.options.nonegate)return;const e=this.pattern;let t=!1,r=0;for(let n=0;n<e.length&&"!"===e.charAt(n);n++)t=!t,r++;r&&(this.pattern=e.slice(r)),this.negate=t}matchOne(e,t,r){var n=this.options;this.debug("matchOne",{this:this,file:e,pattern:t}),this.debug("matchOne",e.length,t.length);for(var i=0,o=0,s=e.length,c=t.length;i<s&&o<c;i++,o++){this.debug("matchOne loop");var l,u=t[o],d=e[i];if(this.debug(t,u,d),!1===u)return!1;if(u===a){this.debug("GLOBSTAR",[t,u,d]);var p=i,f=o+1;if(f===c){for(this.debug("** at the end");i<s;i++)if("."===e[i]||".."===e[i]||!n.dot&&"."===e[i].charAt(0))return!1;return!0}for(;p<s;){var m=e[p];if(this.debug("\nglobstar while",e,p,t,f,m),this.matchOne(e.slice(p),t.slice(f),r))return this.debug("globstar found match!",p,s,m),!0;if("."===m||".."===m||!n.dot&&"."===m.charAt(0)){this.debug("dot detected!",e,p,t,f);break}this.debug("globstar swallow a segment, and continue"),p++}return!(!r||(this.debug("\n>>> no match, partial?",e,p,t,f),p!==s))}if("string"==typeof u?(l=d===u,this.debug("string match",u,d,l)):(l=d.match(u),this.debug("pattern match",u,d,l)),!l)return!1}if(i===s&&o===c)return!0;if(i===s)return r;if(o===c)return i===s-1&&""===e[i];throw new Error("wtf?")}braceExpand(){return g(this.pattern,this.options)}parse(e,t){_(e);const r=this.options;if("**"===e){if(!r.noglobstar)return a;e="*"}if(""===e)return"";let n="",i=!1,o=!1;const u=[],f=[];let m,g,v,b,k=!1,x=-1,E=-1,S="."===e.charAt(0),D=r.dot||S;const w=e=>"."===e.charAt(0)?"":r.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",T=()=>{if(m){switch(m){case"*":n+=l,i=!0;break;case"?":n+=c,i=!0;break;default:n+="\\"+m}this.debug("clearStateChar %j %j",m,n),m=!1}};for(let t,a=0;a<e.length&&(t=e.charAt(a));a++)if(this.debug("%s\t%s %s %j",e,a,n,t),o){if("/"===t)return!1;d[t]&&(n+="\\"),n+=t,o=!1}else switch(t){case"/":return!1;case"\\":if(k&&"-"===e.charAt(a+1)){n+=t;continue}T(),o=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s\t%s %s %j <-- stateChar",e,a,n,t),k){this.debug(" in class"),"!"===t&&a===E+1&&(t="^"),n+=t;continue}this.debug("call clearStateChar %j",m),T(),m=t,r.noext&&T();continue;case"(":{if(k){n+="(";continue}if(!m){n+="\\(";continue}const t={type:m,start:a-1,reStart:n.length,open:s[m].open,close:s[m].close};this.debug(this.pattern,"\t",t),u.push(t),n+=t.open,0===t.start&&"!"!==t.type&&(S=!0,n+=w(e.slice(a+1))),this.debug("plType %j %j",m,n),m=!1;continue}case")":{const e=u[u.length-1];if(k||!e){n+="\\)";continue}u.pop(),T(),i=!0,v=e,n+=v.close,"!"===v.type&&f.push(Object.assign(v,{reEnd:n.length}));continue}case"|":{const t=u[u.length-1];if(k||!t){n+="\\|";continue}T(),n+="|",0===t.start&&"!"!==t.type&&(S=!0,n+=w(e.slice(a+1)));continue}case"[":if(T(),k){n+="\\"+t;continue}k=!0,E=a,x=n.length,n+=t;continue;case"]":if(a===E+1||!k){n+="\\"+t;continue}g=e.substring(E+1,a);try{RegExp("["+y(g.replace(/\\([^-\]])/g,"$1"))+"]"),n+=t}catch(e){n=n.substring(0,x)+"(?:$.)"}i=!0,k=!1;continue;default:T(),!d[t]||"^"===t&&k||(n+="\\"),n+=t}for(k&&(g=e.slice(E+1),b=this.parse(g,h),n=n.substring(0,x)+"\\["+b[0],i=i||b[1]),v=u.pop();v;v=u.pop()){let e;e=n.slice(v.reStart+v.open.length),this.debug("setting tail",n,v),e=e.replace(/((?:\\{2}){0,64})(\\?)\|/g,((e,t,r)=>(r||(r="\\"),t+t+r+"|"))),this.debug("tail=%j\n %s",e,e,v,n);const t="*"===v.type?l:"?"===v.type?c:"\\"+v.type;i=!0,n=n.slice(0,v.reStart)+t+"\\("+e}T(),o&&(n+="\\\\");const C=p[n.charAt(0)];for(let e=f.length-1;e>-1;e--){const r=f[e],i=n.slice(0,r.reStart),a=n.slice(r.reStart,r.reEnd-8);let o=n.slice(r.reEnd);const s=n.slice(r.reEnd-8,r.reEnd)+o,c=i.split(")").length,l=i.split("(").length-c;let u=o;for(let e=0;e<l;e++)u=u.replace(/\)[+*?]?/,"");o=u;n=i+a+o+(""===o&&t!==h?"(?:$|\\/)":"")+s}if(""!==n&&i&&(n="(?=.)"+n),C&&(n=(S?"":D?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)")+n),t===h)return[n,i];if(r.nocase&&!i&&(i=e.toUpperCase()!==e.toLowerCase()),!i)return(e=>e.replace(/\\(.)/g,"$1"))(e);const A=r.nocase?"i":"";try{return Object.assign(new RegExp("^"+n+"$",A),{_glob:e,_src:n})}catch(e){return new RegExp("$.")}}makeRe(){if(this.regexp||!1===this.regexp)return this.regexp;const e=this.set;if(!e.length)return this.regexp=!1,this.regexp;const t=this.options,r=t.noglobstar?l:t.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",n=t.nocase?"i":"";let i=e.map((e=>(e=e.map((e=>"string"==typeof e?e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):e===a?a:e._src)).reduce(((e,t)=>(e[e.length-1]===a&&t===a||e.push(t),e)),[]),e.forEach(((t,n)=>{t===a&&e[n-1]!==a&&(0===n?e.length>1?e[n+1]="(?:\\/|"+r+"\\/)?"+e[n+1]:e[n]=r:n===e.length-1?e[n-1]+="(?:\\/|"+r+")?":(e[n-1]+="(?:\\/|\\/"+r+"\\/)"+e[n+1],e[n+1]=a))})),e.filter((e=>e!==a)).join("/")))).join("|");i="^(?:"+i+")$",this.negate&&(i="^(?!"+i+").*$");try{this.regexp=new RegExp(i,n)}catch(e){this.regexp=!1}return this.regexp}match(e,t=this.partial){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return""===e;if("/"===e&&t)return!0;const r=this.options;"/"!==i.sep&&(e=e.split(i.sep).join("/")),e=e.split(f),this.debug(this.pattern,"split",e);const n=this.set;let a;this.debug(this.pattern,"set",n);for(let t=e.length-1;t>=0&&(a=e[t],!a);t--);for(let i=0;i<n.length;i++){const o=n[i];let s=e;r.matchBase&&1===o.length&&(s=[a]);if(this.matchOne(s,o,t))return!!r.flipNegate||!this.negate}return!r.flipNegate&&this.negate}static defaults(e){return n.defaults(e).Minimatch}}n.Minimatch=v},50984:(e,t,r)=>{const n=r(39491),i=r(71017),a=r(57147);let o;try{o=r(12884)}catch(e){}const s={nosort:!0,silent:!0};let c=0;const l="win32"===process.platform,u=e=>{if(["unlink","chmod","stat","lstat","rmdir","readdir"].forEach((t=>{e[t]=e[t]||a[t],e[t+="Sync"]=e[t]||a[t]})),e.maxBusyTries=e.maxBusyTries||3,e.emfileWait=e.emfileWait||1e3,!1===e.glob&&(e.disableGlob=!0),!0!==e.disableGlob&&void 0===o)throw Error("glob dependency not found, set `options.disableGlob = true` if intentional");e.disableGlob=e.disableGlob||!1,e.glob=e.glob||s},d=(e,t,r)=>{"function"==typeof t&&(r=t,t={}),n(e,"rimraf: missing path"),n.equal(typeof e,"string","rimraf: path should be a string"),n.equal(typeof r,"function","rimraf: callback function required"),n(t,"rimraf: invalid options argument provided"),n.equal(typeof t,"object","rimraf: options should be object"),u(t);let i=0,a=null,s=0;const l=(e,n)=>e?r(e):(s=n.length,0===s?r():void n.forEach((e=>{const n=o=>{if(o){if(("EBUSY"===o.code||"ENOTEMPTY"===o.code||"EPERM"===o.code)&&i<t.maxBusyTries)return i++,setTimeout((()=>p(e,t,n)),100*i);if("EMFILE"===o.code&&c<t.emfileWait)return setTimeout((()=>p(e,t,n)),c++);"ENOENT"===o.code&&(o=null)}c=0,(e=>{a=a||e,0==--s&&r(a)})(o)};p(e,t,n)})));if(t.disableGlob||!o.hasMagic(e))return l(null,[e]);t.lstat(e,((r,n)=>{if(!r)return l(null,[e]);o(e,t.glob,l)}))},p=(e,t,r)=>{n(e),n(t),n("function"==typeof r),t.lstat(e,((n,i)=>n&&"ENOENT"===n.code?r(null):(n&&"EPERM"===n.code&&l&&f(e,t,n,r),i&&i.isDirectory()?g(e,t,n,r):void t.unlink(e,(n=>{if(n){if("ENOENT"===n.code)return r(null);if("EPERM"===n.code)return l?f(e,t,n,r):g(e,t,n,r);if("EISDIR"===n.code)return g(e,t,n,r)}return r(n)})))))},f=(e,t,r,i)=>{n(e),n(t),n("function"==typeof i),t.chmod(e,438,(n=>{n?i("ENOENT"===n.code?null:r):t.stat(e,((n,a)=>{n?i("ENOENT"===n.code?null:r):a.isDirectory()?g(e,t,r,i):t.unlink(e,i)}))}))},m=(e,t,r)=>{n(e),n(t);try{t.chmodSync(e,438)}catch(e){if("ENOENT"===e.code)return;throw r}let i;try{i=t.statSync(e)}catch(e){if("ENOENT"===e.code)return;throw r}i.isDirectory()?y(e,t,r):t.unlinkSync(e)},g=(e,t,r,i)=>{n(e),n(t),n("function"==typeof i),t.rmdir(e,(n=>{!n||"ENOTEMPTY"!==n.code&&"EEXIST"!==n.code&&"EPERM"!==n.code?n&&"ENOTDIR"===n.code?i(r):i(n):_(e,t,i)}))},_=(e,t,r)=>{n(e),n(t),n("function"==typeof r),t.readdir(e,((n,a)=>{if(n)return r(n);let o,s=a.length;if(0===s)return t.rmdir(e,r);a.forEach((n=>{d(i.join(e,n),t,(n=>{if(!o)return n?r(o=n):void(0==--s&&t.rmdir(e,r))}))}))}))},h=(e,t)=>{let r;if(u(t=t||{}),n(e,"rimraf: missing path"),n.equal(typeof e,"string","rimraf: path should be a string"),n(t,"rimraf: missing options"),n.equal(typeof t,"object","rimraf: options should be object"),t.disableGlob||!o.hasMagic(e))r=[e];else try{t.lstatSync(e),r=[e]}catch(n){r=o.sync(e,t.glob)}if(r.length)for(let e=0;e<r.length;e++){const n=r[e];let i;try{i=t.lstatSync(n)}catch(e){if("ENOENT"===e.code)return;"EPERM"===e.code&&l&&m(n,t,e)}try{i&&i.isDirectory()?y(n,t,null):t.unlinkSync(n)}catch(e){if("ENOENT"===e.code)return;if("EPERM"===e.code)return l?m(n,t,e):y(n,t,e);if("EISDIR"!==e.code)throw e;y(n,t,e)}}},y=(e,t,r)=>{n(e),n(t);try{t.rmdirSync(e)}catch(n){if("ENOENT"===n.code)return;if("ENOTDIR"===n.code)throw r;"ENOTEMPTY"!==n.code&&"EEXIST"!==n.code&&"EPERM"!==n.code||v(e,t)}},v=(e,t)=>{n(e),n(t),t.readdirSync(e).forEach((r=>h(i.join(e,r),t)));const r=l?100:1;let a=0;for(;;){let n=!0;try{const r=t.rmdirSync(e,t);return n=!1,r}finally{if(++a<r&&n)continue}}};e.exports=d,d.sync=h},89509:(e,t,r)=>{var n=r(14300),i=n.Buffer;function a(e,t){for(var r in e)t[r]=e[r]}function o(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(a(n,t),t.Buffer=o),a(i,o),o.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},o.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"==typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},31285:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(83347),i=r(95285),a=r(87046);var o=n.isS,s=n.isChar,c=n.isNameStartChar,l=n.isNameChar,u=n.S_LIST,d=n.NAME_RE,p=i.isChar,f=a.isNCNameStartChar,m=a.isNCNameChar,g=a.NC_NAME_RE;const _="http://www.w3.org/XML/1998/namespace",h="http://www.w3.org/2000/xmlns/",y={__proto__:null,xml:_,xmlns:h},v={__proto__:null,amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},b=-1,k=-2,x=13,E=33,S=10,D=60,w=61,T=62,C=63,A=93,N=e=>34===e||39===e,P=[34,39],I=[...P,91,T],F=[...P,D,A],O=[w,C,...u],R=[...u,T,38,D];function M(e,t,r){switch(t){case"xml":r!==_&&e.fail(`xml prefix must be bound to ${_}.`);break;case"xmlns":r!==h&&e.fail(`xmlns prefix must be bound to ${h}.`)}switch(r){case h:e.fail(""===t?`the default namespace may not be set to ${r}.`:`may not assign a prefix (even "xmlns") to the URI ${h}.`);break;case _:switch(t){case"xml":break;case"":e.fail(`the default namespace may not be set to ${r}.`);break;default:e.fail("may not assign the xml namespace to another prefix.")}}}const L=e=>g.test(e),j=e=>d.test(e);t.EVENTS=["xmldecl","text","processinginstruction","doctype","comment","opentagstart","attribute","opentag","closetag","cdata","error","end","ready"];const B={xmldecl:"xmldeclHandler",text:"textHandler",processinginstruction:"piHandler",doctype:"doctypeHandler",comment:"commentHandler",opentagstart:"openTagStartHandler",attribute:"attributeHandler",opentag:"openTagHandler",closetag:"closeTagHandler",cdata:"cdataHandler",error:"errorHandler",end:"endHandler",ready:"readyHandler"};t.SaxesParser=class{constructor(e){this.opt=null!=e?e:{},this.fragmentOpt=!!this.opt.fragment;const t=this.xmlnsOpt=!!this.opt.xmlns;if(this.trackPosition=!1!==this.opt.position,this.fileName=this.opt.fileName,t){this.nameStartCheck=f,this.nameCheck=m,this.isName=L,this.processAttribs=this.processAttribsNS,this.pushAttrib=this.pushAttribNS,this.ns=Object.assign({__proto__:null},y);const e=this.opt.additionalNamespaces;null!=e&&(!function(e,t){for(const r of Object.keys(t))M(e,r,t[r])}(this,e),Object.assign(this.ns,e))}else this.nameStartCheck=c,this.nameCheck=l,this.isName=j,this.processAttribs=this.processAttribsPlain,this.pushAttrib=this.pushAttribPlain;this.stateTable=[this.sBegin,this.sBeginWhitespace,this.sDoctype,this.sDoctypeQuote,this.sDTD,this.sDTDQuoted,this.sDTDOpenWaka,this.sDTDOpenWakaBang,this.sDTDComment,this.sDTDCommentEnding,this.sDTDCommentEnded,this.sDTDPI,this.sDTDPIEnding,this.sText,this.sEntity,this.sOpenWaka,this.sOpenWakaBang,this.sComment,this.sCommentEnding,this.sCommentEnded,this.sCData,this.sCDataEnding,this.sCDataEnding2,this.sPIFirstChar,this.sPIRest,this.sPIBody,this.sPIEnding,this.sXMLDeclNameStart,this.sXMLDeclName,this.sXMLDeclEq,this.sXMLDeclValueStart,this.sXMLDeclValue,this.sXMLDeclSeparator,this.sXMLDeclEnding,this.sOpenTag,this.sOpenTagSlash,this.sAttrib,this.sAttribName,this.sAttribNameSawWhite,this.sAttribValue,this.sAttribValueQuoted,this.sAttribValueClosed,this.sAttribValueUnquoted,this.sCloseTag,this.sCloseTagSawWhite],this._init()}get closed(){return this._closed}_init(){var e;this.openWakaBang="",this.text="",this.name="",this.piTarget="",this.entity="",this.q=null,this.tags=[],this.tag=null,this.topNS=null,this.chunk="",this.chunkPosition=0,this.i=0,this.prevI=0,this.carriedFromPrevious=void 0,this.forbiddenState=0,this.attribList=[];const{fragmentOpt:t}=this;this.state=t?x:0,this.reportedTextBeforeRoot=this.reportedTextAfterRoot=this.closedRoot=this.sawRoot=t,this.xmlDeclPossible=!t,this.xmlDeclExpects=["version"],this.entityReturnState=void 0;let{defaultXMLVersion:r}=this.opt;if(void 0===r){if(!0===this.opt.forceXMLVersion)throw new Error("forceXMLVersion set but defaultXMLVersion is not set");r="1.0"}this.setXMLVersion(r),this.positionAtNewLine=0,this.doctype=!1,this._closed=!1,this.xmlDecl={version:void 0,encoding:void 0,standalone:void 0},this.line=1,this.column=0,this.ENTITIES=Object.create(v),null===(e=this.readyHandler)||void 0===e||e.call(this)}get position(){return this.chunkPosition+this.i}get columnIndex(){return this.position-this.positionAtNewLine}on(e,t){this[B[e]]=t}off(e){this[B[e]]=void 0}makeError(e){var t;let r=null!==(t=this.fileName)&&void 0!==t?t:"";return this.trackPosition&&(r.length>0&&(r+=":"),r+=`${this.line}:${this.column}`),r.length>0&&(r+=": "),new Error(r+e)}fail(e){const t=this.makeError(e),r=this.errorHandler;if(void 0===r)throw t;return r(t),this}write(e){if(this.closed)return this.fail("cannot write after close; assign an onready handler.");let t=!1;null===e?(t=!0,e=""):"object"==typeof e&&(e=e.toString()),void 0!==this.carriedFromPrevious&&(e=`${this.carriedFromPrevious}${e}`,this.carriedFromPrevious=void 0);let r=e.length;const n=e.charCodeAt(r-1);!t&&(13===n||n>=55296&&n<=56319)&&(this.carriedFromPrevious=e[r-1],r--,e=e.slice(0,r));const{stateTable:i}=this;for(this.chunk=e,this.i=0;this.i<r;)i[this.state].call(this);return this.chunkPosition+=r,t?this.end():this}close(){return this.write(null)}getCode10(){const{chunk:e,i:t}=this;if(this.prevI=t,this.i=t+1,t>=e.length)return b;const r=e.charCodeAt(t);if(this.column++,r<55296){if(r>=32||9===r)return r;switch(r){case S:return this.line++,this.column=0,this.positionAtNewLine=this.position,S;case 13:return e.charCodeAt(t+1)===S&&(this.i=t+2),this.line++,this.column=0,this.positionAtNewLine=this.position,k;default:return this.fail("disallowed character."),r}}if(r>56319)return r>=57344&&r<=65533||this.fail("disallowed character."),r;const n=65536+1024*(r-55296)+(e.charCodeAt(t+1)-56320);return this.i=t+2,n>1114111&&this.fail("disallowed character."),n}getCode11(){const{chunk:e,i:t}=this;if(this.prevI=t,this.i=t+1,t>=e.length)return b;const r=e.charCodeAt(t);if(this.column++,r<55296){if(r>31&&r<127||r>159&&8232!==r||9===r)return r;switch(r){case S:return this.line++,this.column=0,this.positionAtNewLine=this.position,S;case 13:{const r=e.charCodeAt(t+1);r!==S&&133!==r||(this.i=t+2)}case 133:case 8232:return this.line++,this.column=0,this.positionAtNewLine=this.position,k;default:return this.fail("disallowed character."),r}}if(r>56319)return r>=57344&&r<=65533||this.fail("disallowed character."),r;const n=65536+1024*(r-55296)+(e.charCodeAt(t+1)-56320);return this.i=t+2,n>1114111&&this.fail("disallowed character."),n}getCodeNorm(){const e=this.getCode();return e===k?S:e}unget(){this.i=this.prevI,this.column--}captureTo(e){let{i:t}=this;const{chunk:r}=this;for(;;){const n=this.getCode(),i=n===k,a=i?S:n;if(a===b||e.includes(a))return this.text+=r.slice(t,this.prevI),a;i&&(this.text+=`${r.slice(t,this.prevI)}\n`,t=this.i)}}captureToChar(e){let{i:t}=this;const{chunk:r}=this;for(;;){let n=this.getCode();switch(n){case k:this.text+=`${r.slice(t,this.prevI)}\n`,t=this.i,n=S;break;case b:return this.text+=r.slice(t),!1}if(n===e)return this.text+=r.slice(t,this.prevI),!0}}captureNameChars(){const{chunk:e,i:t}=this;for(;;){const r=this.getCode();if(r===b)return this.name+=e.slice(t),b;if(!l(r))return this.name+=e.slice(t,this.prevI),r===k?S:r}}skipSpaces(){for(;;){const e=this.getCodeNorm();if(e===b||!o(e))return e}}setXMLVersion(e){this.currentXMLVersion=e,"1.0"===e?(this.isChar=s,this.getCode=this.getCode10):(this.isChar=p,this.getCode=this.getCode11)}sBegin(){65279===this.chunk.charCodeAt(0)&&(this.i++,this.column++),this.state=1}sBeginWhitespace(){const e=this.i,t=this.skipSpaces();switch(this.prevI!==e&&(this.xmlDeclPossible=!1),t){case D:if(this.state=15,0!==this.text.length)throw new Error("no-empty text at start");break;case b:break;default:this.unget(),this.state=x,this.xmlDeclPossible=!1}}sDoctype(){var e;const t=this.captureTo(I);switch(t){case T:null===(e=this.doctypeHandler)||void 0===e||e.call(this,this.text),this.text="",this.state=x,this.doctype=!0;break;case b:break;default:this.text+=String.fromCodePoint(t),91===t?this.state=4:N(t)&&(this.state=3,this.q=t)}}sDoctypeQuote(){const e=this.q;this.captureToChar(e)&&(this.text+=String.fromCodePoint(e),this.q=null,this.state=2)}sDTD(){const e=this.captureTo(F);e!==b&&(this.text+=String.fromCodePoint(e),e===A?this.state=2:e===D?this.state=6:N(e)&&(this.state=5,this.q=e))}sDTDQuoted(){const e=this.q;this.captureToChar(e)&&(this.text+=String.fromCodePoint(e),this.state=4,this.q=null)}sDTDOpenWaka(){const e=this.getCodeNorm();switch(this.text+=String.fromCodePoint(e),e){case 33:this.state=7,this.openWakaBang="";break;case C:this.state=11;break;default:this.state=4}}sDTDOpenWakaBang(){const e=String.fromCodePoint(this.getCodeNorm()),t=this.openWakaBang+=e;this.text+=e,"-"!==t&&(this.state="--"===t?8:4,this.openWakaBang="")}sDTDComment(){this.captureToChar(45)&&(this.text+="-",this.state=9)}sDTDCommentEnding(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),this.state=45===e?10:8}sDTDCommentEnded(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),e===T?this.state=4:(this.fail("malformed comment."),this.state=8)}sDTDPI(){this.captureToChar(C)&&(this.text+="?",this.state=12)}sDTDPIEnding(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),e===T&&(this.state=4)}sText(){0!==this.tags.length?this.handleTextInRoot():this.handleTextOutsideRoot()}sEntity(){let{i:e}=this;const{chunk:t}=this;e:for(;;)switch(this.getCode()){case k:this.entity+=`${t.slice(e,this.prevI)}\n`,e=this.i;break;case 59:{const{entityReturnState:r}=this,n=this.entity+t.slice(e,this.prevI);let i;this.state=r,""===n?(this.fail("empty entity name."),i="&;"):(i=this.parseEntity(n),this.entity=""),r===x&&void 0===this.textHandler||(this.text+=i);break e}case b:this.entity+=t.slice(e);break e}}sOpenWaka(){const e=this.getCode();if(c(e))this.state=34,this.unget(),this.xmlDeclPossible=!1;else switch(e){case 47:this.state=43,this.xmlDeclPossible=!1;break;case 33:this.state=16,this.openWakaBang="",this.xmlDeclPossible=!1;break;case C:this.state=23;break;default:this.fail("disallowed character in tag name"),this.state=x,this.xmlDeclPossible=!1}}sOpenWakaBang(){switch(this.openWakaBang+=String.fromCodePoint(this.getCodeNorm()),this.openWakaBang){case"[CDATA[":this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0),this.state=20,this.openWakaBang="";break;case"--":this.state=17,this.openWakaBang="";break;case"DOCTYPE":this.state=2,(this.doctype||this.sawRoot)&&this.fail("inappropriately located doctype declaration."),this.openWakaBang="";break;default:this.openWakaBang.length>=7&&this.fail("incorrect syntax.")}}sComment(){this.captureToChar(45)&&(this.state=18)}sCommentEnding(){var e;const t=this.getCodeNorm();45===t?(this.state=19,null===(e=this.commentHandler)||void 0===e||e.call(this,this.text),this.text=""):(this.text+=`-${String.fromCodePoint(t)}`,this.state=17)}sCommentEnded(){const e=this.getCodeNorm();e!==T?(this.fail("malformed comment."),this.text+=`--${String.fromCodePoint(e)}`,this.state=17):this.state=x}sCData(){this.captureToChar(A)&&(this.state=21)}sCDataEnding(){const e=this.getCodeNorm();e===A?this.state=22:(this.text+=`]${String.fromCodePoint(e)}`,this.state=20)}sCDataEnding2(){var e;const t=this.getCodeNorm();switch(t){case T:null===(e=this.cdataHandler)||void 0===e||e.call(this,this.text),this.text="",this.state=x;break;case A:this.text+="]";break;default:this.text+=`]]${String.fromCodePoint(t)}`,this.state=20}}sPIFirstChar(){const e=this.getCodeNorm();this.nameStartCheck(e)?(this.piTarget+=String.fromCodePoint(e),this.state=24):e===C||o(e)?(this.fail("processing instruction without a target."),this.state=e===C?26:25):(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(e),this.state=24)}sPIRest(){const{chunk:e,i:t}=this;for(;;){const r=this.getCodeNorm();if(r===b)return void(this.piTarget+=e.slice(t));if(!this.nameCheck(r)){this.piTarget+=e.slice(t,this.prevI);const n=r===C;n||o(r)?"xml"===this.piTarget?(this.xmlDeclPossible||this.fail("an XML declaration must be at the start of the document."),this.state=n?E:27):this.state=n?26:25:(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(r));break}}}sPIBody(){if(0===this.text.length){const e=this.getCodeNorm();e===C?this.state=26:o(e)||(this.text=String.fromCodePoint(e))}else this.captureToChar(C)&&(this.state=26)}sPIEnding(){var e;const t=this.getCodeNorm();if(t===T){const{piTarget:t}=this;"xml"===t.toLowerCase()&&this.fail("the XML declaration must appear at the start of the document."),null===(e=this.piHandler)||void 0===e||e.call(this,{target:t,body:this.text}),this.piTarget=this.text="",this.state=x}else t===C?this.text+="?":(this.text+=`?${String.fromCodePoint(t)}`,this.state=25);this.xmlDeclPossible=!1}sXMLDeclNameStart(){const e=this.skipSpaces();e!==C?e!==b&&(this.state=28,this.name=String.fromCodePoint(e)):this.state=E}sXMLDeclName(){const e=this.captureTo(O);if(e===C)return this.state=E,this.name+=this.text,this.text="",void this.fail("XML declaration is incomplete.");if(o(e)||e===w){if(this.name+=this.text,this.text="",!this.xmlDeclExpects.includes(this.name))switch(this.name.length){case 0:this.fail("did not expect any more name/value pairs.");break;case 1:this.fail(`expected the name ${this.xmlDeclExpects[0]}.`);break;default:this.fail(`expected one of ${this.xmlDeclExpects.join(", ")}`)}this.state=e===w?30:29}}sXMLDeclEq(){const e=this.getCodeNorm();if(e===C)return this.state=E,void this.fail("XML declaration is incomplete.");o(e)||(e!==w&&this.fail("value required."),this.state=30)}sXMLDeclValueStart(){const e=this.getCodeNorm();if(e===C)return this.state=E,void this.fail("XML declaration is incomplete.");o(e)||(N(e)?this.q=e:(this.fail("value must be quoted."),this.q=32),this.state=31)}sXMLDeclValue(){const e=this.captureTo([this.q,C]);if(e===C)return this.state=E,this.text="",void this.fail("XML declaration is incomplete.");if(e===b)return;const t=this.text;switch(this.text="",this.name){case"version":{this.xmlDeclExpects=["encoding","standalone"];const e=t;this.xmlDecl.version=e,/^1\.[0-9]+$/.test(e)?this.opt.forceXMLVersion||this.setXMLVersion(e):this.fail("version number must match /^1\\.[0-9]+$/.");break}case"encoding":/^[A-Za-z][A-Za-z0-9._-]*$/.test(t)||this.fail("encoding value must match /^[A-Za-z0-9][A-Za-z0-9._-]*$/."),this.xmlDeclExpects=["standalone"],this.xmlDecl.encoding=t;break;case"standalone":"yes"!==t&&"no"!==t&&this.fail('standalone value must match "yes" or "no".'),this.xmlDeclExpects=[],this.xmlDecl.standalone=t}this.name="",this.state=32}sXMLDeclSeparator(){const e=this.getCodeNorm();e!==C?(o(e)||(this.fail("whitespace required."),this.unget()),this.state=27):this.state=E}sXMLDeclEnding(){var e;this.getCodeNorm()===T?("xml"!==this.piTarget?this.fail("processing instructions are not allowed before root."):"version"!==this.name&&this.xmlDeclExpects.includes("version")&&this.fail("XML declaration must contain a version."),null===(e=this.xmldeclHandler)||void 0===e||e.call(this,this.xmlDecl),this.name="",this.piTarget=this.text="",this.state=x):this.fail("The character ? is disallowed anywhere in XML declarations."),this.xmlDeclPossible=!1}sOpenTag(){var e;const t=this.captureNameChars();if(t===b)return;const r=this.tag={name:this.name,attributes:Object.create(null)};switch(this.name="",this.xmlnsOpt&&(this.topNS=r.ns=Object.create(null)),null===(e=this.openTagStartHandler)||void 0===e||e.call(this,r),this.sawRoot=!0,!this.fragmentOpt&&this.closedRoot&&this.fail("documents may contain only one root."),t){case T:this.openTag();break;case 47:this.state=35;break;default:o(t)||this.fail("disallowed character in tag name."),this.state=36}}sOpenTagSlash(){this.getCode()===T?this.openSelfClosingTag():(this.fail("forward-slash in opening tag not followed by >."),this.state=36)}sAttrib(){const e=this.skipSpaces();e!==b&&(c(e)?(this.unget(),this.state=37):e===T?this.openTag():47===e?this.state=35:this.fail("disallowed character in attribute name."))}sAttribName(){const e=this.captureNameChars();e===w?this.state=39:o(e)?this.state=38:e===T?(this.fail("attribute without value."),this.pushAttrib(this.name,this.name),this.name=this.text="",this.openTag()):e!==b&&this.fail("disallowed character in attribute name.")}sAttribNameSawWhite(){const e=this.skipSpaces();switch(e){case b:return;case w:this.state=39;break;default:this.fail("attribute without value."),this.text="",this.name="",e===T?this.openTag():c(e)?(this.unget(),this.state=37):(this.fail("disallowed character in attribute name."),this.state=36)}}sAttribValue(){const e=this.getCodeNorm();N(e)?(this.q=e,this.state=40):o(e)||(this.fail("unquoted attribute value."),this.state=42,this.unget())}sAttribValueQuoted(){const{q:e,chunk:t}=this;let{i:r}=this;for(;;)switch(this.getCode()){case e:return this.pushAttrib(this.name,this.text+t.slice(r,this.prevI)),this.name=this.text="",this.q=null,void(this.state=41);case 38:return this.text+=t.slice(r,this.prevI),this.state=14,void(this.entityReturnState=40);case S:case k:case 9:this.text+=`${t.slice(r,this.prevI)} `,r=this.i;break;case D:return this.text+=t.slice(r,this.prevI),void this.fail("disallowed character.");case b:return void(this.text+=t.slice(r))}}sAttribValueClosed(){const e=this.getCodeNorm();o(e)?this.state=36:e===T?this.openTag():47===e?this.state=35:c(e)?(this.fail("no whitespace between attributes."),this.unget(),this.state=37):this.fail("disallowed character in attribute name.")}sAttribValueUnquoted(){const e=this.captureTo(R);switch(e){case 38:this.state=14,this.entityReturnState=42;break;case D:this.fail("disallowed character.");break;case b:break;default:this.text.includes("]]>")&&this.fail('the string "]]>" is disallowed in char data.'),this.pushAttrib(this.name,this.text),this.name=this.text="",e===T?this.openTag():this.state=36}}sCloseTag(){const e=this.captureNameChars();e===T?this.closeTag():o(e)?this.state=44:e!==b&&this.fail("disallowed character in closing tag.")}sCloseTagSawWhite(){switch(this.skipSpaces()){case T:this.closeTag();break;case b:break;default:this.fail("disallowed character in closing tag.")}}handleTextInRoot(){let{i:e,forbiddenState:t}=this;const{chunk:r,textHandler:n}=this;e:for(;;)switch(this.getCode()){case D:if(this.state=15,void 0!==n){const{text:t}=this,i=r.slice(e,this.prevI);0!==t.length?(n(t+i),this.text=""):0!==i.length&&n(i)}t=0;break e;case 38:this.state=14,this.entityReturnState=x,void 0!==n&&(this.text+=r.slice(e,this.prevI)),t=0;break e;case A:switch(t){case 0:t=1;break;case 1:t=2;break;case 2:break;default:throw new Error("impossible state")}break;case T:2===t&&this.fail('the string "]]>" is disallowed in char data.'),t=0;break;case k:void 0!==n&&(this.text+=`${r.slice(e,this.prevI)}\n`),e=this.i,t=0;break;case b:void 0!==n&&(this.text+=r.slice(e));break e;default:t=0}this.forbiddenState=t}handleTextOutsideRoot(){let{i:e}=this;const{chunk:t,textHandler:r}=this;let n=!1;e:for(;;){const i=this.getCode();switch(i){case D:if(this.state=15,void 0!==r){const{text:n}=this,i=t.slice(e,this.prevI);0!==n.length?(r(n+i),this.text=""):0!==i.length&&r(i)}break e;case 38:this.state=14,this.entityReturnState=x,void 0!==r&&(this.text+=t.slice(e,this.prevI)),n=!0;break e;case k:void 0!==r&&(this.text+=`${t.slice(e,this.prevI)}\n`),e=this.i;break;case b:void 0!==r&&(this.text+=t.slice(e));break e;default:o(i)||(n=!0)}}n&&(this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0))}pushAttribNS(e,t){var r;const{prefix:n,local:i}=this.qname(e),a={name:e,prefix:n,local:i,value:t};if(this.attribList.push(a),null===(r=this.attributeHandler)||void 0===r||r.call(this,a),"xmlns"===n){const e=t.trim();"1.0"===this.currentXMLVersion&&""===e&&this.fail("invalid attempt to undefine prefix in XML 1.0"),this.topNS[i]=e,M(this,i,e)}else if("xmlns"===e){const e=t.trim();this.topNS[""]=e,M(this,"",e)}}pushAttribPlain(e,t){var r;const n={name:e,value:t};this.attribList.push(n),null===(r=this.attributeHandler)||void 0===r||r.call(this,n)}end(){var e,t;this.sawRoot||this.fail("document must contain a root element.");const{tags:r}=this;for(;r.length>0;){const e=r.pop();this.fail(`unclosed tag: ${e.name}`)}0!==this.state&&this.state!==x&&this.fail("unexpected end.");const{text:n}=this;return 0!==n.length&&(null===(e=this.textHandler)||void 0===e||e.call(this,n),this.text=""),this._closed=!0,null===(t=this.endHandler)||void 0===t||t.call(this),this._init(),this}resolve(e){var t,r;let n=this.topNS[e];if(void 0!==n)return n;const{tags:i}=this;for(let t=i.length-1;t>=0;t--)if(n=i[t].ns[e],void 0!==n)return n;return n=this.ns[e],void 0!==n?n:null===(r=(t=this.opt).resolvePrefix)||void 0===r?void 0:r.call(t,e)}qname(e){const t=e.indexOf(":");if(-1===t)return{prefix:"",local:e};const r=e.slice(t+1),n=e.slice(0,t);return(""===n||""===r||r.includes(":"))&&this.fail(`malformed name: ${e}.`),{prefix:n,local:r}}processAttribsNS(){var e;const{attribList:t}=this,r=this.tag;{const{prefix:t,local:n}=this.qname(r.name);r.prefix=t,r.local=n;const i=r.uri=null!==(e=this.resolve(t))&&void 0!==e?e:"";""!==t&&("xmlns"===t&&this.fail('tags may not have "xmlns" as prefix.'),""===i&&(this.fail(`unbound namespace prefix: ${JSON.stringify(t)}.`),r.uri=t))}if(0===t.length)return;const{attributes:n}=r,i=new Set;for(const e of t){const{name:t,prefix:r,local:a}=e;let o,s;""===r?(o="xmlns"===t?h:"",s=t):(o=this.resolve(r),void 0===o&&(this.fail(`unbound namespace prefix: ${JSON.stringify(r)}.`),o=r),s=`{${o}}${a}`),i.has(s)&&this.fail(`duplicate attribute: ${s}.`),i.add(s),e.uri=o,n[t]=e}this.attribList=[]}processAttribsPlain(){const{attribList:e}=this,t=this.tag.attributes;for(const{name:r,value:n}of e)void 0!==t[r]&&this.fail(`duplicate attribute: ${r}.`),t[r]=n;this.attribList=[]}openTag(){var e;this.processAttribs();const{tags:t}=this,r=this.tag;r.isSelfClosing=!1,null===(e=this.openTagHandler)||void 0===e||e.call(this,r),t.push(r),this.state=x,this.name=""}openSelfClosingTag(){var e,t,r;this.processAttribs();const{tags:n}=this,i=this.tag;i.isSelfClosing=!0,null===(e=this.openTagHandler)||void 0===e||e.call(this,i),null===(t=this.closeTagHandler)||void 0===t||t.call(this,i);null===(this.tag=null!==(r=n[n.length-1])&&void 0!==r?r:null)&&(this.closedRoot=!0),this.state=x,this.name=""}closeTag(){const{tags:e,name:t}=this;if(this.state=x,this.name="",""===t)return this.fail("weird empty close tag."),void(this.text+="</>");const r=this.closeTagHandler;let n=e.length;for(;n-- >0;){const n=this.tag=e.pop();if(this.topNS=n.ns,null==r||r(n),n.name===t)break;this.fail("unexpected close tag.")}0===n?this.closedRoot=!0:n<0&&(this.fail(`unmatched closing tag: ${t}.`),this.text+=`</${t}>`)}parseEntity(e){if("#"!==e[0]){const t=this.ENTITIES[e];return void 0!==t?t:(this.fail(this.isName(e)?"undefined entity.":"disallowed character in entity name."),`&${e};`)}let t=NaN;return"x"===e[1]&&/^#x[0-9a-f]+$/i.test(e)?t=parseInt(e.slice(2),16):/^#[0-9]+$/.test(e)&&(t=parseInt(e.slice(1),10)),this.isChar(t)?String.fromCodePoint(t):(this.fail("malformed character entity."),`&${e};`)}}},24889:function(){!function(e,t){"use strict";if(!e.setImmediate){var r,n,i,a,o,s=1,c={},l=!1,u=e.document,d=Object.getPrototypeOf&&Object.getPrototypeOf(e);d=d&&d.setTimeout?d:e,"[object process]"==={}.toString.call(e.process)?r=function(e){process.nextTick((function(){f(e)}))}:!function(){if(e.postMessage&&!e.importScripts){var t=!0,r=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=r,t}}()?e.MessageChannel?((i=new MessageChannel).port1.onmessage=function(e){f(e.data)},r=function(e){i.port2.postMessage(e)}):u&&"onreadystatechange"in u.createElement("script")?(n=u.documentElement,r=function(e){var t=u.createElement("script");t.onreadystatechange=function(){f(e),t.onreadystatechange=null,n.removeChild(t),t=null},n.appendChild(t)}):r=function(e){setTimeout(f,0,e)}:(a="setImmediate$"+Math.random()+"$",o=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(a)&&f(+t.data.slice(a.length))},e.addEventListener?e.addEventListener("message",o,!1):e.attachEvent("onmessage",o),r=function(t){e.postMessage(a+t,"*")}),d.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n<t.length;n++)t[n]=arguments[n+1];var i={callback:e,args:t};return c[s]=i,r(s),s++},d.clearImmediate=p}function p(e){delete c[e]}function f(e){if(l)setTimeout(f,0,e);else{var r=c[e];if(r){l=!0;try{!function(e){var r=e.callback,n=e.args;switch(n.length){case 0:r();break;case 1:r(n[0]);break;case 2:r(n[0],n[1]);break;case 3:r(n[0],n[1],n[2]);break;default:r.apply(t,n)}}(r)}finally{p(e),l=!1}}}}}("undefined"==typeof self?"undefined"==typeof global?this:global:self)},76252:(e,t,r)=>{e=r.nmd(e);var n,i=r(49125).SourceMapConsumer,a=r(71017);try{(n=r(57147)).existsSync&&n.readFileSync||(n=null)}catch(e){}var o=r(55420);function s(e,t){return e.require(t)}var c=!1,l=!1,u=!1,d="auto",p={},f={},m=/^data:application\/json[^,]+base64,/,g=[],_=[];function h(){return"browser"===d||"node"!==d&&("undefined"!=typeof window&&"function"==typeof XMLHttpRequest&&!(window.require&&window.module&&window.process&&"renderer"===window.process.type))}function y(e){return function(t){for(var r=0;r<e.length;r++){var n=e[r](t);if(n)return n}return null}}var v=y(g);function b(e,t){if(!e)return t;var r=a.dirname(e),n=/^\w+:\/\/[^\/]*/.exec(r),i=n?n[0]:"",o=r.slice(i.length);return i&&/^\/\w\:/.test(o)?(i+="/")+a.resolve(r.slice(i.length),t).replace(/\\/g,"/"):i+a.resolve(r.slice(i.length),t)}g.push((function(e){if(e=e.trim(),/^file:/.test(e)&&(e=e.replace(/file:\/\/\/(\w:)?/,(function(e,t){return t?"":"/"}))),e in p)return p[e];var t="";try{if(n)n.existsSync(e)&&(t=n.readFileSync(e,"utf8"));else{var r=new XMLHttpRequest;r.open("GET",e,!1),r.send(null),4===r.readyState&&200===r.status&&(t=r.responseText)}}catch(e){}return p[e]=t}));var k=y(_);function x(e){var t=f[e.source];if(!t){var r=k(e.source);r?(t=f[e.source]={url:r.url,map:new i(r.map)}).map.sourcesContent&&t.map.sources.forEach((function(e,r){var n=t.map.sourcesContent[r];if(n){var i=b(t.url,e);p[i]=n}})):t=f[e.source]={url:null,map:null}}if(t&&t.map&&"function"==typeof t.map.originalPositionFor){var n=t.map.originalPositionFor(e);if(null!==n.source)return n.source=b(t.url,n.source),n}return e}function E(e){var t=/^eval at ([^(]+) \((.+):(\d+):(\d+)\)$/.exec(e);if(t){var r=x({source:t[2],line:+t[3],column:t[4]-1});return"eval at "+t[1]+" ("+r.source+":"+r.line+":"+(r.column+1)+")"}return(t=/^eval at ([^(]+) \((.+)\)$/.exec(e))?"eval at "+t[1]+" ("+E(t[2])+")":e}function S(){var e,t="";if(this.isNative())t="native";else{!(e=this.getScriptNameOrSourceURL())&&this.isEval()&&(t=this.getEvalOrigin(),t+=", "),t+=e||"<anonymous>";var r=this.getLineNumber();if(null!=r){t+=":"+r;var n=this.getColumnNumber();n&&(t+=":"+n)}}var i="",a=this.getFunctionName(),o=!0,s=this.isConstructor();if(!(this.isToplevel()||s)){var c=this.getTypeName();"[object Object]"===c&&(c="null");var l=this.getMethodName();a?(c&&0!=a.indexOf(c)&&(i+=c+"."),i+=a,l&&a.indexOf("."+l)!=a.length-l.length-1&&(i+=" [as "+l+"]")):i+=c+"."+(l||"<anonymous>")}else s?i+="new "+(a||"<anonymous>"):a?i+=a:(i+=t,o=!1);return o&&(i+=" ("+t+")"),i}function D(e){var t={};return Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach((function(r){t[r]=/^(?:is|get)/.test(r)?function(){return e[r].call(e)}:e[r]})),t.toString=S,t}function w(e,t){if(void 0===t&&(t={nextPosition:null,curPosition:null}),e.isNative())return t.curPosition=null,e;var r=e.getFileName()||e.getScriptNameOrSourceURL();if(r){var n=e.getLineNumber(),i=e.getColumnNumber()-1,a=/^v(10\.1[6-9]|10\.[2-9][0-9]|10\.[0-9]{3,}|1[2-9]\d*|[2-9]\d|\d{3,}|11\.11)/.test("object"==typeof process&&null!==process?process.version:"")?0:62;1===n&&i>a&&!h()&&!e.isEval()&&(i-=a);var o=x({source:r,line:n,column:i});t.curPosition=o;var s=(e=D(e)).getFunctionName;return e.getFunctionName=function(){return null==t.nextPosition?s():t.nextPosition.name||s()},e.getFileName=function(){return o.source},e.getLineNumber=function(){return o.line},e.getColumnNumber=function(){return o.column+1},e.getScriptNameOrSourceURL=function(){return o.source},e}var c=e.isEval()&&e.getEvalOrigin();return c?(c=E(c),(e=D(e)).getEvalOrigin=function(){return c},e):e}function T(e,t){u&&(p={},f={});for(var r=(e.name||"Error")+": "+(e.message||""),n={nextPosition:null,curPosition:null},i=[],a=t.length-1;a>=0;a--)i.push("\n at "+w(t[a],n)),n.nextPosition=n.curPosition;return n.curPosition=n.nextPosition=null,r+i.reverse().join("")}function C(e){var t=/\n at [^(]+ \((.*):(\d+):(\d+)\)/.exec(e.stack);if(t){var r=t[1],i=+t[2],a=+t[3],o=p[r];if(!o&&n&&n.existsSync(r))try{o=n.readFileSync(r,"utf8")}catch(e){o=""}if(o){var s=o.split(/(?:\r\n|\r|\n)/)[i-1];if(s)return r+":"+i+"\n"+s+"\n"+new Array(a).join(" ")+"^"}}return null}function A(e){var t=C(e),r=function(){if("object"==typeof process&&null!==process)return process.stderr}();r&&r._handle&&r._handle.setBlocking&&r._handle.setBlocking(!0),t&&(console.error(),console.error(t)),console.error(e.stack),function(e){if("object"==typeof process&&null!==process&&"function"==typeof process.exit)process.exit(e)}(1)}_.push((function(e){var t,r=function(e){var t;if(h())try{var r=new XMLHttpRequest;r.open("GET",e,!1),r.send(null),t=4===r.readyState?r.responseText:null;var n=r.getResponseHeader("SourceMap")||r.getResponseHeader("X-SourceMap");if(n)return n}catch(e){}t=v(e);for(var i,a,o=/(?:\/\/[@#][\s]*sourceMappingURL=([^\s'"]+)[\s]*$)|(?:\/\*[@#][\s]*sourceMappingURL=([^\s*'"]+)[\s]*(?:\*\/)[\s]*$)/gm;a=o.exec(t);)i=a;return i?i[1]:null}(e);if(!r)return null;if(m.test(r)){var n=r.slice(r.indexOf(",")+1);t=o(n,"base64").toString(),r=e}else r=b(e,r),t=v(r);return t?{url:r,map:t}:null}));var N=g.slice(0),P=_.slice(0);t.wrapCallSite=w,t.getErrorSource=C,t.mapSourcePosition=x,t.retrieveSourceMap=k,t.install=function(t){if((t=t||{}).environment&&(d=t.environment,-1===["node","browser","auto"].indexOf(d)))throw new Error("environment "+d+" was unknown. Available options are {auto, browser, node}");if(t.retrieveFile&&(t.overrideRetrieveFile&&(g.length=0),g.unshift(t.retrieveFile)),t.retrieveSourceMap&&(t.overrideRetrieveSourceMap&&(_.length=0),_.unshift(t.retrieveSourceMap)),t.hookRequire&&!h()){var r=s(e,"module"),n=r.prototype._compile;n.__sourceMapSupport||(r.prototype._compile=function(e,t){return p[t]=e,f[t]=void 0,n.call(this,e,t)},r.prototype._compile.__sourceMapSupport=!0)}if(u||(u="emptyCacheBetweenOperations"in t&&t.emptyCacheBetweenOperations),c||(c=!0,Error.prepareStackTrace=T),!l){var i=!("handleUncaughtExceptions"in t)||t.handleUncaughtExceptions;try{!1===s(e,"worker_threads").isMainThread&&(i=!1)}catch(e){}i&&"object"==typeof process&&null!==process&&"function"==typeof process.on&&(l=!0,a=process.emit,process.emit=function(e){if("uncaughtException"===e){var t=arguments[1]&&arguments[1].stack,r=this.listeners(e).length>0;if(t&&!r)return A(arguments[1])}return a.apply(this,arguments)})}var a},t.resetRetrieveHandlers=function(){g.length=0,_.length=0,g=N.slice(0),_=P.slice(0),k=y(_),v=y(g)}},78213:(e,t,r)=>{var n=r(32728),i=Object.prototype.hasOwnProperty,a="undefined"!=typeof Map;function o(){this._array=[],this._set=a?new Map:Object.create(null)}o.fromArray=function(e,t){for(var r=new o,n=0,i=e.length;n<i;n++)r.add(e[n],t);return r},o.prototype.size=function(){return a?this._set.size:Object.getOwnPropertyNames(this._set).length},o.prototype.add=function(e,t){var r=a?e:n.toSetString(e),o=a?this.has(e):i.call(this._set,r),s=this._array.length;o&&!t||this._array.push(e),o||(a?this._set.set(e,s):this._set[r]=s)},o.prototype.has=function(e){if(a)return this._set.has(e);var t=n.toSetString(e);return i.call(this._set,t)},o.prototype.indexOf=function(e){if(a){var t=this._set.get(e);if(t>=0)return t}else{var r=n.toSetString(e);if(i.call(this._set,r))return this._set[r]}throw new Error('"'+e+'" is not in the set.')},o.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)},o.prototype.toArray=function(){return this._array.slice()},t.I=o},16400:(e,t,r)=>{var n=r(67923);t.encode=function(e){var t,r="",i=function(e){return e<0?1+(-e<<1):0+(e<<1)}(e);do{t=31&i,(i>>>=5)>0&&(t|=32),r+=n.encode(t)}while(i>0);return r},t.decode=function(e,t,r){var i,a,o,s,c=e.length,l=0,u=0;do{if(t>=c)throw new Error("Expected more digits in base 64 VLQ value.");if(-1===(a=n.decode(e.charCodeAt(t++))))throw new Error("Invalid base64 digit: "+e.charAt(t-1));i=!!(32&a),l+=(a&=31)<<u,u+=5}while(i);r.value=(s=(o=l)>>1,1==(1&o)?-s:s),r.rest=t}},67923:(e,t)=>{var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");t.encode=function(e){if(0<=e&&e<r.length)return r[e];throw new TypeError("Must be between 0 and 63: "+e)},t.decode=function(e){return 65<=e&&e<=90?e-65:97<=e&&e<=122?e-97+26:48<=e&&e<=57?e-48+52:43==e?62:47==e?63:-1}},9216:(e,t)=>{function r(e,n,i,a,o,s){var c=Math.floor((n-e)/2)+e,l=o(i,a[c],!0);return 0===l?c:l>0?n-c>1?r(c,n,i,a,o,s):s==t.LEAST_UPPER_BOUND?n<a.length?n:-1:c:c-e>1?r(e,c,i,a,o,s):s==t.LEAST_UPPER_BOUND?c:e<0?-1:e}t.GREATEST_LOWER_BOUND=1,t.LEAST_UPPER_BOUND=2,t.search=function(e,n,i,a){if(0===n.length)return-1;var o=r(-1,n.length,e,n,i,a||t.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&0===i(n[o],n[o-1],!0);)--o;return o}},21188:(e,t,r)=>{var n=r(32728);function i(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}i.prototype.unsortedForEach=function(e,t){this._array.forEach(e,t)},i.prototype.add=function(e){var t,r,i,a,o,s;t=this._last,r=e,i=t.generatedLine,a=r.generatedLine,o=t.generatedColumn,s=r.generatedColumn,a>i||a==i&&s>=o||n.compareByGeneratedPositionsInflated(t,r)<=0?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},i.prototype.toArray=function(){return this._sorted||(this._array.sort(n.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},t.H=i},22826:(e,t)=>{function r(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function n(e,t,i,a){if(i<a){var o=i-1;r(e,(u=i,d=a,Math.round(u+Math.random()*(d-u))),a);for(var s=e[a],c=i;c<a;c++)t(e[c],s)<=0&&r(e,o+=1,c);r(e,o+1,c);var l=o+1;n(e,t,i,l-1),n(e,t,l+1,a)}var u,d}t.U=function(e,t){n(e,t,0,e.length-1)}},76771:(e,t,r)=>{var n=r(32728),i=r(9216),a=r(78213).I,o=r(16400),s=r(22826).U;function c(e,t){var r=e;return"string"==typeof e&&(r=n.parseSourceMapInput(e)),null!=r.sections?new d(r,t):new l(r,t)}function l(e,t){var r=e;"string"==typeof e&&(r=n.parseSourceMapInput(e));var i=n.getArg(r,"version"),o=n.getArg(r,"sources"),s=n.getArg(r,"names",[]),c=n.getArg(r,"sourceRoot",null),l=n.getArg(r,"sourcesContent",null),u=n.getArg(r,"mappings"),d=n.getArg(r,"file",null);if(i!=this._version)throw new Error("Unsupported version: "+i);c&&(c=n.normalize(c)),o=o.map(String).map(n.normalize).map((function(e){return c&&n.isAbsolute(c)&&n.isAbsolute(e)?n.relative(c,e):e})),this._names=a.fromArray(s.map(String),!0),this._sources=a.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map((function(e){return n.computeSourceURL(c,e,t)})),this.sourceRoot=c,this.sourcesContent=l,this._mappings=u,this._sourceMapURL=t,this.file=d}function u(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}function d(e,t){var r=e;"string"==typeof e&&(r=n.parseSourceMapInput(e));var i=n.getArg(r,"version"),o=n.getArg(r,"sections");if(i!=this._version)throw new Error("Unsupported version: "+i);this._sources=new a,this._names=new a;var s={line:-1,column:0};this._sections=o.map((function(e){if(e.url)throw new Error("Support for url field in sections not implemented.");var r=n.getArg(e,"offset"),i=n.getArg(r,"line"),a=n.getArg(r,"column");if(i<s.line||i===s.line&&a<s.column)throw new Error("Section offsets must be ordered and non-overlapping.");return s=r,{generatedOffset:{generatedLine:i+1,generatedColumn:a+1},consumer:new c(n.getArg(e,"map"),t)}}))}c.fromSourceMap=function(e,t){return l.fromSourceMap(e,t)},c.prototype._version=3,c.prototype.__generatedMappings=null,Object.defineProperty(c.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),c.prototype.__originalMappings=null,Object.defineProperty(c.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),c.prototype._charIsMappingSeparator=function(e,t){var r=e.charAt(t);return";"===r||","===r},c.prototype._parseMappings=function(e,t){throw new Error("Subclasses must implement _parseMappings")},c.GENERATED_ORDER=1,c.ORIGINAL_ORDER=2,c.GREATEST_LOWER_BOUND=1,c.LEAST_UPPER_BOUND=2,c.prototype.eachMapping=function(e,t,r){var i,a=t||null;switch(r||c.GENERATED_ORDER){case c.GENERATED_ORDER:i=this._generatedMappings;break;case c.ORIGINAL_ORDER:i=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var o=this.sourceRoot;i.map((function(e){var t=null===e.source?null:this._sources.at(e.source);return{source:t=n.computeSourceURL(o,t,this._sourceMapURL),generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:null===e.name?null:this._names.at(e.name)}}),this).forEach(e,a)},c.prototype.allGeneratedPositionsFor=function(e){var t=n.getArg(e,"line"),r={source:n.getArg(e,"source"),originalLine:t,originalColumn:n.getArg(e,"column",0)};if(r.source=this._findSourceIndex(r.source),r.source<0)return[];var a=[],o=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",n.compareByOriginalPositions,i.LEAST_UPPER_BOUND);if(o>=0){var s=this._originalMappings[o];if(void 0===e.column)for(var c=s.originalLine;s&&s.originalLine===c;)a.push({line:n.getArg(s,"generatedLine",null),column:n.getArg(s,"generatedColumn",null),lastColumn:n.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++o];else for(var l=s.originalColumn;s&&s.originalLine===t&&s.originalColumn==l;)a.push({line:n.getArg(s,"generatedLine",null),column:n.getArg(s,"generatedColumn",null),lastColumn:n.getArg(s,"lastGeneratedColumn",null)}),s=this._originalMappings[++o]}return a},t.SourceMapConsumer=c,l.prototype=Object.create(c.prototype),l.prototype.consumer=c,l.prototype._findSourceIndex=function(e){var t,r=e;if(null!=this.sourceRoot&&(r=n.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(t=0;t<this._absoluteSources.length;++t)if(this._absoluteSources[t]==e)return t;return-1},l.fromSourceMap=function(e,t){var r=Object.create(l.prototype),i=r._names=a.fromArray(e._names.toArray(),!0),o=r._sources=a.fromArray(e._sources.toArray(),!0);r.sourceRoot=e._sourceRoot,r.sourcesContent=e._generateSourcesContent(r._sources.toArray(),r.sourceRoot),r.file=e._file,r._sourceMapURL=t,r._absoluteSources=r._sources.toArray().map((function(e){return n.computeSourceURL(r.sourceRoot,e,t)}));for(var c=e._mappings.toArray().slice(),d=r.__generatedMappings=[],p=r.__originalMappings=[],f=0,m=c.length;f<m;f++){var g=c[f],_=new u;_.generatedLine=g.generatedLine,_.generatedColumn=g.generatedColumn,g.source&&(_.source=o.indexOf(g.source),_.originalLine=g.originalLine,_.originalColumn=g.originalColumn,g.name&&(_.name=i.indexOf(g.name)),p.push(_)),d.push(_)}return s(r.__originalMappings,n.compareByOriginalPositions),r},l.prototype._version=3,Object.defineProperty(l.prototype,"sources",{get:function(){return this._absoluteSources.slice()}}),l.prototype._parseMappings=function(e,t){for(var r,i,a,c,l,d=1,p=0,f=0,m=0,g=0,_=0,h=e.length,y=0,v={},b={},k=[],x=[];y<h;)if(";"===e.charAt(y))d++,y++,p=0;else if(","===e.charAt(y))y++;else{for((r=new u).generatedLine=d,c=y;c<h&&!this._charIsMappingSeparator(e,c);c++);if(a=v[i=e.slice(y,c)])y+=i.length;else{for(a=[];y<c;)o.decode(e,y,b),l=b.value,y=b.rest,a.push(l);if(2===a.length)throw new Error("Found a source, but no line and column");if(3===a.length)throw new Error("Found a source and line, but no column");v[i]=a}r.generatedColumn=p+a[0],p=r.generatedColumn,a.length>1&&(r.source=g+a[1],g+=a[1],r.originalLine=f+a[2],f=r.originalLine,r.originalLine+=1,r.originalColumn=m+a[3],m=r.originalColumn,a.length>4&&(r.name=_+a[4],_+=a[4])),x.push(r),"number"==typeof r.originalLine&&k.push(r)}s(x,n.compareByGeneratedPositionsDeflated),this.__generatedMappings=x,s(k,n.compareByOriginalPositions),this.__originalMappings=k},l.prototype._findMapping=function(e,t,r,n,a,o){if(e[r]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[r]);if(e[n]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[n]);return i.search(e,t,a,o)},l.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var r=this._generatedMappings[e+1];if(t.generatedLine===r.generatedLine){t.lastGeneratedColumn=r.generatedColumn-1;continue}}t.lastGeneratedColumn=1/0}},l.prototype.originalPositionFor=function(e){var t={generatedLine:n.getArg(e,"line"),generatedColumn:n.getArg(e,"column")},r=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",n.compareByGeneratedPositionsDeflated,n.getArg(e,"bias",c.GREATEST_LOWER_BOUND));if(r>=0){var i=this._generatedMappings[r];if(i.generatedLine===t.generatedLine){var a=n.getArg(i,"source",null);null!==a&&(a=this._sources.at(a),a=n.computeSourceURL(this.sourceRoot,a,this._sourceMapURL));var o=n.getArg(i,"name",null);return null!==o&&(o=this._names.at(o)),{source:a,line:n.getArg(i,"originalLine",null),column:n.getArg(i,"originalColumn",null),name:o}}}return{source:null,line:null,column:null,name:null}},l.prototype.hasContentsOfAllSources=function(){return!!this.sourcesContent&&(this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some((function(e){return null==e})))},l.prototype.sourceContentFor=function(e,t){if(!this.sourcesContent)return null;var r=this._findSourceIndex(e);if(r>=0)return this.sourcesContent[r];var i,a=e;if(null!=this.sourceRoot&&(a=n.relative(this.sourceRoot,a)),null!=this.sourceRoot&&(i=n.urlParse(this.sourceRoot))){var o=a.replace(/^file:\/\//,"");if("file"==i.scheme&&this._sources.has(o))return this.sourcesContent[this._sources.indexOf(o)];if((!i.path||"/"==i.path)&&this._sources.has("/"+a))return this.sourcesContent[this._sources.indexOf("/"+a)]}if(t)return null;throw new Error('"'+a+'" is not in the SourceMap.')},l.prototype.generatedPositionFor=function(e){var t=n.getArg(e,"source");if((t=this._findSourceIndex(t))<0)return{line:null,column:null,lastColumn:null};var r={source:t,originalLine:n.getArg(e,"line"),originalColumn:n.getArg(e,"column")},i=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",n.compareByOriginalPositions,n.getArg(e,"bias",c.GREATEST_LOWER_BOUND));if(i>=0){var a=this._originalMappings[i];if(a.source===r.source)return{line:n.getArg(a,"generatedLine",null),column:n.getArg(a,"generatedColumn",null),lastColumn:n.getArg(a,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},d.prototype=Object.create(c.prototype),d.prototype.constructor=c,d.prototype._version=3,Object.defineProperty(d.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var r=0;r<this._sections[t].consumer.sources.length;r++)e.push(this._sections[t].consumer.sources[r]);return e}}),d.prototype.originalPositionFor=function(e){var t={generatedLine:n.getArg(e,"line"),generatedColumn:n.getArg(e,"column")},r=i.search(t,this._sections,(function(e,t){var r=e.generatedLine-t.generatedOffset.generatedLine;return r||e.generatedColumn-t.generatedOffset.generatedColumn})),a=this._sections[r];return a?a.consumer.originalPositionFor({line:t.generatedLine-(a.generatedOffset.generatedLine-1),column:t.generatedColumn-(a.generatedOffset.generatedLine===t.generatedLine?a.generatedOffset.generatedColumn-1:0),bias:e.bias}):{source:null,line:null,column:null,name:null}},d.prototype.hasContentsOfAllSources=function(){return this._sections.every((function(e){return e.consumer.hasContentsOfAllSources()}))},d.prototype.sourceContentFor=function(e,t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r].consumer.sourceContentFor(e,!0);if(n)return n}if(t)return null;throw new Error('"'+e+'" is not in the SourceMap.')},d.prototype.generatedPositionFor=function(e){for(var t=0;t<this._sections.length;t++){var r=this._sections[t];if(-1!==r.consumer._findSourceIndex(n.getArg(e,"source"))){var i=r.consumer.generatedPositionFor(e);if(i)return{line:i.line+(r.generatedOffset.generatedLine-1),column:i.column+(r.generatedOffset.generatedLine===i.line?r.generatedOffset.generatedColumn-1:0)}}}return{line:null,column:null}},d.prototype._parseMappings=function(e,t){this.__generatedMappings=[],this.__originalMappings=[];for(var r=0;r<this._sections.length;r++)for(var i=this._sections[r],a=i.consumer._generatedMappings,o=0;o<a.length;o++){var c=a[o],l=i.consumer._sources.at(c.source);l=n.computeSourceURL(i.consumer.sourceRoot,l,this._sourceMapURL),this._sources.add(l),l=this._sources.indexOf(l);var u=null;c.name&&(u=i.consumer._names.at(c.name),this._names.add(u),u=this._names.indexOf(u));var d={source:l,generatedLine:c.generatedLine+(i.generatedOffset.generatedLine-1),generatedColumn:c.generatedColumn+(i.generatedOffset.generatedLine===c.generatedLine?i.generatedOffset.generatedColumn-1:0),originalLine:c.originalLine,originalColumn:c.originalColumn,name:u};this.__generatedMappings.push(d),"number"==typeof d.originalLine&&this.__originalMappings.push(d)}s(this.__generatedMappings,n.compareByGeneratedPositionsDeflated),s(this.__originalMappings,n.compareByOriginalPositions)}},34433:(e,t,r)=>{var n=r(16400),i=r(32728),a=r(78213).I,o=r(21188).H;function s(e){e||(e={}),this._file=i.getArg(e,"file",null),this._sourceRoot=i.getArg(e,"sourceRoot",null),this._skipValidation=i.getArg(e,"skipValidation",!1),this._sources=new a,this._names=new a,this._mappings=new o,this._sourcesContents=null}s.prototype._version=3,s.fromSourceMap=function(e){var t=e.sourceRoot,r=new s({file:e.file,sourceRoot:t});return e.eachMapping((function(e){var n={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(n.source=e.source,null!=t&&(n.source=i.relative(t,n.source)),n.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(n.name=e.name)),r.addMapping(n)})),e.sources.forEach((function(n){var a=n;null!==t&&(a=i.relative(t,n)),r._sources.has(a)||r._sources.add(a);var o=e.sourceContentFor(n);null!=o&&r.setSourceContent(n,o)})),r},s.prototype.addMapping=function(e){var t=i.getArg(e,"generated"),r=i.getArg(e,"original",null),n=i.getArg(e,"source",null),a=i.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,r,n,a),null!=n&&(n=String(n),this._sources.has(n)||this._sources.add(n)),null!=a&&(a=String(a),this._names.has(a)||this._names.add(a)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=r&&r.line,originalColumn:null!=r&&r.column,source:n,name:a})},s.prototype.setSourceContent=function(e,t){var r=e;null!=this._sourceRoot&&(r=i.relative(this._sourceRoot,r)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[i.toSetString(r)]=t):this._sourcesContents&&(delete this._sourcesContents[i.toSetString(r)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},s.prototype.applySourceMap=function(e,t,r){var n=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');n=e.file}var o=this._sourceRoot;null!=o&&(n=i.relative(o,n));var s=new a,c=new a;this._mappings.unsortedForEach((function(t){if(t.source===n&&null!=t.originalLine){var a=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=a.source&&(t.source=a.source,null!=r&&(t.source=i.join(r,t.source)),null!=o&&(t.source=i.relative(o,t.source)),t.originalLine=a.line,t.originalColumn=a.column,null!=a.name&&(t.name=a.name))}var l=t.source;null==l||s.has(l)||s.add(l);var u=t.name;null==u||c.has(u)||c.add(u)}),this),this._sources=s,this._names=c,e.sources.forEach((function(t){var n=e.sourceContentFor(t);null!=n&&(null!=r&&(t=i.join(r,t)),null!=o&&(t=i.relative(o,t)),this.setSourceContent(t,n))}),this)},s.prototype._validateMapping=function(e,t,r,n){if(t&&"number"!=typeof t.line&&"number"!=typeof t.column)throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||r||n)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&r))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:r,original:t,name:n}))},s.prototype._serializeMappings=function(){for(var e,t,r,a,o=0,s=1,c=0,l=0,u=0,d=0,p="",f=this._mappings.toArray(),m=0,g=f.length;m<g;m++){if(e="",(t=f[m]).generatedLine!==s)for(o=0;t.generatedLine!==s;)e+=";",s++;else if(m>0){if(!i.compareByGeneratedPositionsInflated(t,f[m-1]))continue;e+=","}e+=n.encode(t.generatedColumn-o),o=t.generatedColumn,null!=t.source&&(a=this._sources.indexOf(t.source),e+=n.encode(a-d),d=a,e+=n.encode(t.originalLine-1-l),l=t.originalLine-1,e+=n.encode(t.originalColumn-c),c=t.originalColumn,null!=t.name&&(r=this._names.indexOf(t.name),e+=n.encode(r-u),u=r)),p+=e}return p},s.prototype._generateSourcesContent=function(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=i.relative(t,e));var r=i.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null}),this)},s.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},s.prototype.toString=function(){return JSON.stringify(this.toJSON())},t.h=s},17085:(e,t,r)=>{var n=r(34433).h,i=r(32728),a=/(\r?\n)/,o="$$$isSourceNode$$$";function s(e,t,r,n,i){this.children=[],this.sourceContents={},this.line=null==e?null:e,this.column=null==t?null:t,this.source=null==r?null:r,this.name=null==i?null:i,this[o]=!0,null!=n&&this.add(n)}s.fromStringWithSourceMap=function(e,t,r){var n=new s,o=e.split(a),c=0,l=function(){return e()+(e()||"");function e(){return c<o.length?o[c++]:void 0}},u=1,d=0,p=null;return t.eachMapping((function(e){if(null!==p){if(!(u<e.generatedLine)){var t=(r=o[c]||"").substr(0,e.generatedColumn-d);return o[c]=r.substr(e.generatedColumn-d),d=e.generatedColumn,f(p,t),void(p=e)}f(p,l()),u++,d=0}for(;u<e.generatedLine;)n.add(l()),u++;if(d<e.generatedColumn){var r=o[c]||"";n.add(r.substr(0,e.generatedColumn)),o[c]=r.substr(e.generatedColumn),d=e.generatedColumn}p=e}),this),c<o.length&&(p&&f(p,l()),n.add(o.splice(c).join(""))),t.sources.forEach((function(e){var a=t.sourceContentFor(e);null!=a&&(null!=r&&(e=i.join(r,e)),n.setSourceContent(e,a))})),n;function f(e,t){if(null===e||void 0===e.source)n.add(t);else{var a=r?i.join(r,e.source):e.source;n.add(new s(e.originalLine,e.originalColumn,a,t,e.name))}}},s.prototype.add=function(e){if(Array.isArray(e))e.forEach((function(e){this.add(e)}),this);else{if(!e[o]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);e&&this.children.push(e)}return this},s.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[o]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},s.prototype.walk=function(e){for(var t,r=0,n=this.children.length;r<n;r++)(t=this.children[r])[o]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},s.prototype.join=function(e){var t,r,n=this.children.length;if(n>0){for(t=[],r=0;r<n-1;r++)t.push(this.children[r]),t.push(e);t.push(this.children[r]),this.children=t}return this},s.prototype.replaceRight=function(e,t){var r=this.children[this.children.length-1];return r[o]?r.replaceRight(e,t):"string"==typeof r?this.children[this.children.length-1]=r.replace(e,t):this.children.push("".replace(e,t)),this},s.prototype.setSourceContent=function(e,t){this.sourceContents[i.toSetString(e)]=t},s.prototype.walkSourceContents=function(e){for(var t=0,r=this.children.length;t<r;t++)this.children[t][o]&&this.children[t].walkSourceContents(e);var n=Object.keys(this.sourceContents);for(t=0,r=n.length;t<r;t++)e(i.fromSetString(n[t]),this.sourceContents[n[t]])},s.prototype.toString=function(){var e="";return this.walk((function(t){e+=t})),e},s.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},r=new n(e),i=!1,a=null,o=null,s=null,c=null;return this.walk((function(e,n){t.code+=e,null!==n.source&&null!==n.line&&null!==n.column?(a===n.source&&o===n.line&&s===n.column&&c===n.name||r.addMapping({source:n.source,original:{line:n.line,column:n.column},generated:{line:t.line,column:t.column},name:n.name}),a=n.source,o=n.line,s=n.column,c=n.name,i=!0):i&&(r.addMapping({generated:{line:t.line,column:t.column}}),a=null,i=!1);for(var l=0,u=e.length;l<u;l++)10===e.charCodeAt(l)?(t.line++,t.column=0,l+1===u?(a=null,i=!1):i&&r.addMapping({source:n.source,original:{line:n.line,column:n.column},generated:{line:t.line,column:t.column},name:n.name})):t.column++})),this.walkSourceContents((function(e,t){r.setSourceContent(e,t)})),{code:t.code,map:r}}},32728:(e,t)=>{t.getArg=function(e,t,r){if(t in e)return e[t];if(3===arguments.length)return r;throw new Error('"'+t+'" is a required argument.')};var r=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,n=/^data:.+\,.+$/;function i(e){var t=e.match(r);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function a(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}function o(e){var r=e,n=i(e);if(n){if(!n.path)return e;r=n.path}for(var o,s=t.isAbsolute(r),c=r.split(/\/+/),l=0,u=c.length-1;u>=0;u--)"."===(o=c[u])?c.splice(u,1):".."===o?l++:l>0&&(""===o?(c.splice(u+1,l),l=0):(c.splice(u,2),l--));return""===(r=c.join("/"))&&(r=s?"/":"."),n?(n.path=r,a(n)):r}function s(e,t){""===e&&(e="."),""===t&&(t=".");var r=i(t),s=i(e);if(s&&(e=s.path||"/"),r&&!r.scheme)return s&&(r.scheme=s.scheme),a(r);if(r||t.match(n))return t;if(s&&!s.host&&!s.path)return s.host=t,a(s);var c="/"===t.charAt(0)?t:o(e.replace(/\/+$/,"")+"/"+t);return s?(s.path=c,a(s)):c}t.urlParse=i,t.urlGenerate=a,t.normalize=o,t.join=s,t.isAbsolute=function(e){return"/"===e.charAt(0)||r.test(e)},t.relative=function(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var r=0;0!==t.indexOf(e+"/");){var n=e.lastIndexOf("/");if(n<0)return t;if((e=e.slice(0,n)).match(/^([^\/]+:\/)?\/*$/))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)};var c=!("__proto__"in Object.create(null));function l(e){return e}function u(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var r=t-10;r>=0;r--)if(36!==e.charCodeAt(r))return!1;return!0}function d(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}t.toSetString=c?l:function(e){return u(e)?"$"+e:e},t.fromSetString=c?l:function(e){return u(e)?e.slice(1):e},t.compareByOriginalPositions=function(e,t,r){var n=d(e.source,t.source);return 0!==n||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)||r||0!==(n=e.generatedColumn-t.generatedColumn)||0!==(n=e.generatedLine-t.generatedLine)?n:d(e.name,t.name)},t.compareByGeneratedPositionsDeflated=function(e,t,r){var n=e.generatedLine-t.generatedLine;return 0!==n||0!==(n=e.generatedColumn-t.generatedColumn)||r||0!==(n=d(e.source,t.source))||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)?n:d(e.name,t.name)},t.compareByGeneratedPositionsInflated=function(e,t){var r=e.generatedLine-t.generatedLine;return 0!==r||0!==(r=e.generatedColumn-t.generatedColumn)||0!==(r=d(e.source,t.source))||0!==(r=e.originalLine-t.originalLine)||0!==(r=e.originalColumn-t.originalColumn)?r:d(e.name,t.name)},t.parseSourceMapInput=function(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))},t.computeSourceURL=function(e,t,r){if(t=t||"",e&&("/"!==e[e.length-1]&&"/"!==t[0]&&(e+="/"),t=e+t),r){var n=i(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var c=n.path.lastIndexOf("/");c>=0&&(n.path=n.path.substring(0,c+1))}t=s(a(n),t)}return o(t)}},49125:(e,t,r)=>{r(34433).h,t.SourceMapConsumer=r(76771).SourceMapConsumer,r(17085)},32553:(e,t,r)=>{"use strict";var n=r(89509).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=l,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=u,this.end=d,t=3;break;default:return this.write=p,void(this.end=f)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function u(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function p(e){return e.toString(this.encoding)}function f(e){return e&&e.length?this.write(e):""}t.s=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<e.length?t?t+this.text(e,r):this.text(e,r):t||""},a.prototype.end=function(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"�":t},a.prototype.text=function(e,t){var r=function(e,t,r){var n=t.length-1;if(n<r)return 0;var i=o(t[n]);if(i>=0)return i>0&&(e.lastNeed=i-1),i;if(--n<r||-2===i)return 0;if(i=o(t[n]),i>=0)return i>0&&(e.lastNeed=i-2),i;if(--n<r||-2===i)return 0;if(i=o(t[n]),i>=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},36276:(e,t,r)=>{ -/*! - * Tmp - * - * Copyright (c) 2011-2017 KARASZI Istvan <github@spam.raszi.hu> - * - * MIT Licensed - */ -const n=r(57147),i=r(22037),a=r(71017),o=r(6113),s={fs:n.constants,os:i.constants},c=r(50984),l="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",u=/XXXXXX/,d=3,p=(s.O_CREAT||s.fs.O_CREAT)|(s.O_EXCL||s.fs.O_EXCL)|(s.O_RDWR||s.fs.O_RDWR),f="win32"===i.platform(),m=s.EBADF||s.os.errno.EBADF,g=s.ENOENT||s.os.errno.ENOENT,_=[],h=n.rmdirSync.bind(n),y=c.sync;let v=!1;function b(e,t){const r=N(e,t),i=r[0],a=r[1];try{I(i)}catch(e){return a(e)}let o=i.tries;!function e(){try{const t=P(i);n.stat(t,(function(r){if(!r)return o-- >0?e():a(new Error("Could not get a unique tmp filename, max tries reached "+t));a(null,t)}))}catch(e){a(e)}}()}function k(e){const t=N(e)[0];I(t);let r=t.tries;do{const e=P(t);try{n.statSync(e)}catch(t){return e}}while(r-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}function x(e,t){const r=function(e){if(e&&!M(e))return t(e);t()};0<=e[0]?n.close(e[0],(function(){n.unlink(e[1],r)})):n.unlink(e[1],r)}function E(e){let t=null;try{0<=e[0]&&n.closeSync(e[0])}catch(e){if(!(r=e,L(r,-m,"EBADF")||M(e)))throw e}finally{try{n.unlinkSync(e[1])}catch(e){M(e)||(t=e)}}var r;if(null!==t)throw t}function S(e,t,r,n){const i=w(E,[t,e],n),a=w(x,[t,e],n,i);return r.keep||_.unshift(i),n?i:a}function D(e,t,r){const i=t.unsafeCleanup?c:n.rmdir.bind(n),a=w(t.unsafeCleanup?y:h,e,r),o=w(i,e,r,a);return t.keep||_.unshift(a),r?a:o}function w(e,t,r,n){let i=!1;return function a(o){if(!i){const s=n||a,c=_.indexOf(s);return c>=0&&_.splice(c,1),i=!0,r||e===h||e===y?e(t):e(t,o||function(){})}}}function T(e){let t=[],r=null;try{r=o.randomBytes(e)}catch(t){r=o.pseudoRandomBytes(e)}for(var n=0;n<e;n++)t.push(l[r[n]%l.length]);return t.join("")}function C(e){return null===e||A(e)||!e.trim()}function A(e){return void 0===e}function N(e,t){if("function"==typeof e)return[{},e];if(A(e))return[{},t];const r={};for(const t of Object.getOwnPropertyNames(e))r[t]=e[t];return[r,t]}function P(e){const t=e.tmpdir;if(!A(e.name))return a.join(t,e.dir,e.name);if(!A(e.template))return a.join(t,e.dir,e.template).replace(u,T(6));const r=[e.prefix?e.prefix:"tmp","-",process.pid,"-",T(12),e.postfix?"-"+e.postfix:""].join("");return a.join(t,e.dir,r)}function I(e){e.tmpdir=j(e);const t=e.tmpdir;if(A(e.name)||R(e.name,"name",t),A(e.dir)||R(e.dir,"dir",t),!A(e.template)&&(R(e.template,"template",t),!e.template.match(u)))throw new Error(`Invalid template, found "${e.template}".`);if(!A(e.tries)&&isNaN(e.tries)||e.tries<0)throw new Error(`Invalid tries, found "${e.tries}".`);e.tries=A(e.name)?e.tries||d:1,e.keep=!!e.keep,e.detachDescriptor=!!e.detachDescriptor,e.discardDescriptor=!!e.discardDescriptor,e.unsafeCleanup=!!e.unsafeCleanup,e.dir=A(e.dir)?"":a.relative(t,F(e.dir,t)),e.template=A(e.template)?void 0:a.relative(t,F(e.template,t)),e.template=C(e.template)?void 0:a.relative(e.dir,e.template),e.name=A(e.name)?void 0:O(e.name),e.prefix=A(e.prefix)?"":e.prefix,e.postfix=A(e.postfix)?"":e.postfix}function F(e,t){const r=O(e);return r.startsWith(t)?a.resolve(r):a.resolve(a.join(t,r))}function O(e){return C(e)?e:e.replace(/["']/g,"")}function R(e,t,r){if("name"===t){if(a.isAbsolute(e))throw new Error(`${t} option must not contain an absolute path, found "${e}".`);let r=a.basename(e);if(".."===r||"."===r||r!==e)throw new Error(`${t} option must not contain a path, found "${e}".`)}else{if(a.isAbsolute(e)&&!e.startsWith(r))throw new Error(`${t} option must be relative to "${r}", found "${e}".`);let n=F(e,r);if(!n.startsWith(r))throw new Error(`${t} option must be relative to "${r}", found "${n}".`)}}function M(e){return L(e,-g,"ENOENT")}function L(e,t,r){return f?e.code===r:e.code===r&&e.errno===t}function j(e){return a.resolve(O(e&&e.tmpdir||i.tmpdir()))}process.addListener("exit",(function(){if(v)for(;_.length;)try{_[0]()}catch(e){}})),Object.defineProperty(e.exports,"tmpdir",{enumerable:!0,configurable:!1,get:function(){return j()}}),e.exports.dir=function(e,t){const r=N(e,t),i=r[0],a=r[1];b(i,(function(e,t){if(e)return a(e);n.mkdir(t,i.mode||448,(function(e){if(e)return a(e);a(null,t,D(t,i,!1))}))}))},e.exports.dirSync=function(e){const t=N(e)[0],r=k(t);return n.mkdirSync(r,t.mode||448),{name:r,removeCallback:D(r,t,!0)}},e.exports.file=function(e,t){const r=N(e,t),i=r[0],a=r[1];b(i,(function(e,t){if(e)return a(e);n.open(t,p,i.mode||384,(function(e,r){if(e)return a(e);if(i.discardDescriptor)return n.close(r,(function(e){return a(e,t,void 0,S(t,-1,i,!1))}));{const e=i.discardDescriptor||i.detachDescriptor;a(null,t,r,S(t,e?-1:r,i,!1))}}))}))},e.exports.fileSync=function(e){const t=N(e)[0],r=t.discardDescriptor||t.detachDescriptor,i=k(t);var a=n.openSync(i,p,t.mode||384);return t.discardDescriptor&&(n.closeSync(a),a=void 0),{name:i,fd:a,removeCallback:S(i,r?-1:a,t,!0)}},e.exports.tmpName=b,e.exports.tmpNameSync=k,e.exports.setGracefulCleanup=function(){v=!0}},13692:e=>{function t(e){if(!(this instanceof t))return new t(e);this.value=e}function r(e,t,r){var i=[],a=[],o=!0;return function e(s){var c=r?n(s):s,l={},u={node:c,node_:s,path:[].concat(i),parent:a.slice(-1)[0],key:i.slice(-1)[0],isRoot:0===i.length,level:i.length,circular:null,update:function(e){u.isRoot||(u.parent.node[u.key]=e),u.node=e},delete:function(){delete u.parent.node[u.key]},remove:function(){Array.isArray(u.parent.node)?u.parent.node.splice(u.key,1):delete u.parent.node[u.key]},before:function(e){l.before=e},after:function(e){l.after=e},pre:function(e){l.pre=e},post:function(e){l.post=e},stop:function(){o=!1}};if(!o)return u;if("object"==typeof c&&null!==c){u.isLeaf=0==Object.keys(c).length;for(var d=0;d<a.length;d++)if(a[d].node_===s){u.circular=a[d];break}}else u.isLeaf=!0;u.notLeaf=!u.isLeaf,u.notRoot=!u.isRoot;var p=t.call(u,u.node);if(void 0!==p&&u.update&&u.update(p),l.before&&l.before.call(u,u.node),"object"==typeof u.node&&null!==u.node&&!u.circular){a.push(u);var f=Object.keys(u.node);f.forEach((function(t,n){i.push(t),l.pre&&l.pre.call(u,u.node[t],t);var a=e(u.node[t]);r&&Object.hasOwnProperty.call(u.node,t)&&(u.node[t]=a.node),a.isLast=n==f.length-1,a.isFirst=0==n,l.post&&l.post.call(u,a),i.pop()})),a.pop()}return l.after&&l.after.call(u,u.node),u}(e).node}function n(e){var t;return"object"==typeof e&&null!==e?(t=Array.isArray(e)?[]:e instanceof Date?new Date(e):e instanceof Boolean?new Boolean(e):e instanceof Number?new Number(e):e instanceof String?new String(e):Object.create(Object.getPrototypeOf(e)),Object.keys(e).forEach((function(r){t[r]=e[r]})),t):e}e.exports=t,t.prototype.get=function(e){for(var t=this.value,r=0;r<e.length;r++){var n=e[r];if(!Object.hasOwnProperty.call(t,n)){t=void 0;break}t=t[n]}return t},t.prototype.set=function(e,t){for(var r=this.value,n=0;n<e.length-1;n++){var i=e[n];Object.hasOwnProperty.call(r,i)||(r[i]={}),r=r[i]}return r[e[n]]=t,t},t.prototype.map=function(e){return r(this.value,e,!0)},t.prototype.forEach=function(e){return this.value=r(this.value,e,!1),this.value},t.prototype.reduce=function(e,t){var r=1===arguments.length,n=r?this.value:t;return this.forEach((function(t){this.isRoot&&r||(n=e.call(this,n,t))})),n},t.prototype.deepEqual=function(e){if(1!==arguments.length)throw new Error("deepEqual requires exactly one object to compare against");var r=!0,n=e;return this.forEach((function(i){var a=function(){r=!1}.bind(this);if(!this.isRoot){if("object"!=typeof n)return a();n=n[this.key]}var o=n;this.post((function(){n=o}));var s=function(e){return Object.prototype.toString.call(e)};if(this.circular)t(e).get(this.circular.path)!==o&&a();else if(typeof o!=typeof i)a();else if(null===o||null===i||void 0===o||void 0===i)o!==i&&a();else if(o.__proto__!==i.__proto__)a();else if(o===i);else if("function"==typeof o)o instanceof RegExp?o.toString()!=i.toString()&&a():o!==i&&a();else if("object"==typeof o)if("[object Arguments]"===s(i)||"[object Arguments]"===s(o))s(o)!==s(i)&&a();else if(o instanceof Date||i instanceof Date)o instanceof Date&&i instanceof Date&&o.getTime()===i.getTime()||a();else{var c=Object.keys(o),l=Object.keys(i);if(c.length!==l.length)return a();for(var u=0;u<c.length;u++){var d=c[u];Object.hasOwnProperty.call(i,d)||a()}}})),r},t.prototype.paths=function(){var e=[];return this.forEach((function(t){e.push(this.path)})),e},t.prototype.nodes=function(){var e=[];return this.forEach((function(t){e.push(this.node)})),e},t.prototype.clone=function(){var e=[],t=[];return function r(i){for(var a=0;a<e.length;a++)if(e[a]===i)return t[a];if("object"==typeof i&&null!==i){var o=n(i);return e.push(i),t.push(o),Object.keys(i).forEach((function(e){o[e]=r(i[e])})),e.pop(),t.pop(),o}return i}(this.value)},Object.keys(t.prototype).forEach((function(e){t[e]=function(r){var n=[].slice.call(arguments,1),i=t(r);return i[e].apply(i,n)}}))},30513:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.toolNameMethod=t.joinNewMessage=t.joinOldMessage=t.Plugin=t.formatSet=t.formatType=t.toolNameSet=t.toolNameType=void 0;const i=n(r(71017)),a=n(r(57147)),o=r(32081),s=r(95840),c=r(10391),l=r(42034),u=r(83317),d=r(24182),p=r(550),f=r(51626),m=r(17999),g=r(3477),_=r(64158),h=r(60479),y=r(53073),v=r(94801),b=r(40139),k=r(5391),x=r(19503);var E,S;!function(e){e.COLLECT="collect",e.CHECK="check",e.CHECKONLINE="checkOnline",e.APICHANGECHECK="apiChangeCheck",e.DIFF="diff",e.LABELDETECTION="detection",e.COUNT="count"}(E=t.toolNameType||(t.toolNameType={})),t.toolNameSet=new Set(s.EnumUtils.enum2arr(E)),function(e){e.NULL="",e.JSON="json",e.EXCEL="excel",e.CHANGELOG="changelog"}(S=t.formatType||(t.formatType={})),t.formatSet=new Set(s.EnumUtils.enum2arr(S)),t.Plugin={pluginOptions:{name:"parser",version:"0.1.0",description:"Compare the parser the SDKS",commands:[{isRequiredOption:!0,options:[`-N,--tool-name <${[...t.toolNameSet]}>`,"tool name ","checkOnline"]},{isRequiredOption:!1,options:["-C,--collect-path <string>","collect api path","./api"]},{isRequiredOption:!1,options:["-F,--collect-file <string>","collect api file array",""]},{isRequiredOption:!1,options:["-L,--check-labels <string>","detection check labels",""]},{isRequiredOption:!1,options:["--isOH <string>","detection check labels",""]},{isRequiredOption:!1,options:["--path <string>","check api path, split with comma",""]},{isRequiredOption:!1,options:["--checker <string>","check api rule, split with comma","all"]},{isRequiredOption:!1,options:["--prId <string>","check api prId",""]},{isRequiredOption:!1,options:["--is-increment <string>","check api is increment, only check change","true"]},{isRequiredOption:!1,options:["--excel <string>","check api excel","false"]},{isRequiredOption:!1,options:["--old <string>","diff old sdk path","./api"]},{isRequiredOption:!1,options:["--new <string>","diff new sdk path","./api"]},{isRequiredOption:!1,options:["--old-version <string>","old sdk version","0"]},{isRequiredOption:!1,options:["--new-version <string>","new sdk version","0"]},{isRequiredOption:!1,options:["--output <string>","output file path","./"]},{isRequiredOption:!1,options:[`--format <${[...t.formatSet]}>`,"output file format","json"]},{isRequiredOption:!1,options:["--changelogUrl <string>","changelog url",""]},{isRequiredOption:!1,options:["--all <boolean>","is all sheet",""]}]},start:async function(e){const r=e.toolName,n=t.toolNameMethod.get(r);if(!n)return void l.LogUtil.i("CommandArgs","tool-name may use error name or don't have function,tool-name can use 'collect' or 'diff'");const i={toolName:r,collectPath:e.collectPath,collectFile:e.collectFile,checkLabels:e.checkLabels,isOH:e.isOH,path:e.path,checker:e.checker,prId:e.prId,isIncrement:e.isIncrement,old:e.old,new:e.new,oldVersion:e.oldVersion,newVersion:e.newVersion,output:e.output,format:e.format,changelogUrl:e.changelogUrl,excel:e.excel,all:e.all},a=n(i);!function(e,t,r){const n=t.format;let i=`${t.toolName}_${t.oldVersion}_${t.newVersion}.json`;if(!n)return;t.toolName===E.COUNT&&(i="api_kit_js.json");switch(n){case S.JSON:m.WriterHelper.JSONReporter(String(e[0]),t.output,i);break;case S.EXCEL:m.WriterHelper.ExcelReporter(e,t.output,`${t.toolName}.xlsx`,r,t);break;case S.CHANGELOG:m.WriterHelper.JSONReporter(String(e[0]),t.output,`${t.toolName}.json`)}}(a.data,i,a.callback)},stop:function(){l.LogUtil.i("commander","elapsed time: "+(Date.now()-D))}};let D=Date.now();function w(e,t,r,n){const i=t.addWorksheet(),a=new Set,o=k.FunctionUtils.readKitFile();i.name="JsApi",i.views=[{xSplit:1}],i.getRow(1).values=["模块名","类名","方法名","函数","类型","起始版本","废弃版本","syscap","错误码","是否为系统API","模型限制","权限","是否支持跨平台","是否支持卡片应用","是否为高阶API","装饰器","kit","文件路径","子系统","父节点类型","父节点API是否可选"];let s=2;e.forEach((e=>{const t=`${e.getHierarchicalRelations()},${e.getDefinedText()}`;a.has(t)||(i.getRow(s).values=[e.getPackageName(),e.getParentModuleName(),e.getApiName(),e.getDefinedText(),e.getApiType(),"-1"===e.getSince()?"":e.getSince(),"-1"===e.getDeprecatedVersion()?"":e.getDeprecatedVersion(),e.getSyscap(),"-1"===e.getErrorCodes().join()?"":e.getErrorCodes().join(),e.getApiLevel(),e.getModelLimitation(),e.getPermission(),e.getIsCrossPlatForm(),e.getIsForm(),e.getIsAutomicService(),e.getDecorators()?.join(),""===e.getKitInfo()?o.kitNameMap.get(e.getFilePath().replace(/\\/g,"/").replace("api/","")):e.getKitInfo(),e.getFilePath(),o.subsystemMap.get(e.getFilePath().replace(/\\/g,"/").replace("api/","")),e.getParentApiType(),e.getIsOptional()],s++,a.add(t))})),n?.all&&function(e,t){const r=t.addWorksheet(),n=new Set,i=k.FunctionUtils.readKitFile();r.name="JsApi定制版本",r.views=[{xSplit:1}],r.getRow(1).values=["模块名","类名","方法名","函数","类型","起始版本","废弃版本","syscap","错误码","是否为系统API","模型限制","权限","是否支持跨平台","是否支持卡片应用","是否为高阶API","装饰器","kit","文件路径","子系统","接口全路径"];let a=2;e.forEach((e=>{const t=`${e.getHierarchicalRelations()},${e.getDefinedText()}`;n.has(t)||(r.getRow(a).values=[e.getPackageName(),e.getParentModuleName(),e.getApiName(),e.getDefinedText(),e.getApiType(),"-1"===e.getSince()?"":e.getSince(),"-1"===e.getDeprecatedVersion()?"":e.getDeprecatedVersion(),e.getSyscap(),"-1"===e.getErrorCodes().join()?"":e.getErrorCodes().join(),e.getApiLevel(),e.getModelLimitation(),e.getPermission(),e.getIsCrossPlatForm(),e.getIsForm(),e.getIsAutomicService(),e.getDecorators()?.join(),""===e.getKitInfo()?i.kitNameMap.get(e.getFilePath().replace(/\\/g,"/").replace("api/","")):e.getKitInfo(),e.getFilePath(),i.subsystemMap.get(e.getFilePath().replace(/\\/g,"/").replace("api/","")),e.getHierarchicalRelations().replace(/\//g,"#").replace("api\\","")],a++,n.add(t))}))}(e,t)}function T(e,t){const r=t.addWorksheet();r.name="api数量",r.views=[{xSplit:1}],r.getRow(1).values=["子系统","kit","文件","api数量"],e.forEach(((e,t)=>{r.getRow(t+_.NumberConstant.LINE_IN_EXCEL).values=[e.getsubSystem(),e.getKitName(),e.getFilePath(),e.getApiNumber()]}))}function C(e,t,r,n){const i=new Set,a=k.FunctionUtils.readKitFile(),o=t.addWorksheet("api差异");o.views=[{xSplit:2}],o.getRow(1).values=["操作标记","差异项-旧版本","差异项-新版本","d.ts文件","归属子系统","kit","是否为系统API"],e.forEach(((e,t)=>{i.add(I(e));const r=e.getNewDtsName()?e.getNewDtsName():e.getOldDtsName();o.getRow(t+_.NumberConstant.LINE_IN_EXCEL).values=[f.diffTypeMap.get(e.getDiffType()),F(e),O(e),r.replace(/\\/g,"/"),a.subsystemMap.get(r.replace(/\\/g,"/").replace("api/","")),""===y.SyscapProcessorHelper.getSingleKitInfo(e)?a.kitNameMap.get(r.replace(/\\/g,"/").replace("api/","")):y.SyscapProcessorHelper.getSingleKitInfo(e),e.getIsSystemapi()]})),m.WriterHelper.MarkdownReporter.writeInMarkdown(e,r),n?.all&&function(e,t,r,n){const i=t.addWorksheet("api变更数量统计");i.views=[{xSplit:2}],i.getRow(1).values=["api名称","kit名称","归属子系统","是否是api","api类型","操作标记","变更类型","兼容性","变更次数","差异项-旧版本","差异项-新版本","兼容性列表","接口全路径","是否为系统API","是否为同名API"];let a=[];e.forEach((e=>{let t="";const i=new f.DiffNumberInfo;r.forEach((r=>{const a=r.getNewDtsName()?r.getNewDtsName():r.getOldDtsName(),o=""===y.SyscapProcessorHelper.getSingleKitInfo(r)?n.kitNameMap.get(a.replace(/\\/g,"/").replace("api/","")):y.SyscapProcessorHelper.getSingleKitInfo(r);e===I(r)&&(t=P(r),i.setAllDiffType(r.getDiffMessage()).setAllChangeType(f.apiChangeMap.get(r.getDiffType())).setOldDiffMessage(r.getOldDescription()).setNewDiffMessage(r.getNewDescription()).setAllCompatible(r.getIsCompatible()).setIsApi(!f.isNotApiSet.has(r.getApiType())).setKitName(o).setSubsystem(n.subsystemMap.get(a.replace(/\\/g,"/").replace("api/",""))).setApiName(r.getApiType()===x.ApiType.SOURCE_FILE?"SOURCEFILE":P(r)).setApiRelation(I(r).replace(/\,/g,"#").replace("api\\","")).setIsSystemapi(r.getIsSystemapi()).setApiType(r.getApiType()).setIsSameNameFunction(r.getIsSameNameFunction()))})),a.push(i)})),a=function(e,t){return t}(0,a),a.forEach(((e,t)=>{i.getRow(t+_.NumberConstant.LINE_IN_EXCEL).values=[e.getApiName(),e.getKitName(),e.getSubsystem(),e.getIsApi(),e.getApiType(),e.getAllDiffType().join(" #&# "),e.getAllChangeType().join(" #&# "),A(e),N(e),e.getOldDiffMessage().join(" #&# "),e.getNewDiffMessage().join(" #&# "),e.getAllCompatible().join(" #&# "),e.getApiRelation(),e.getIsSystemapi(),e.getIsSameNameFunction()]}))}(i,t,e,a)}function A(e){const t=new Set(e.getAllCompatible());let r=0,n=0;return 2===t.size?(r=1,n=1):t.has(!0)?r=1:t.has(!1)&&(n=1),`{\n "兼容性":${r},\n "非兼容性":${n}\n }`}function N(e){const t=new Set(e.getAllChangeType());let r=0,n=0,i=0,a=0,o=0,s=0;return t.has("API修改(原型修改)")&&s++,t.has("API修改(约束变化)")&&o++,(t.has("API修改(原型修改)")||t.has("API修改(约束变化)"))&&a++,t.has("API废弃")&&i++,t.has("API新增")&&r++,t.has("API删除")&&n++,`{\n "API新增": ${r},\n "API删除": ${n},\n "API废弃": ${i},\n "API修改": ${a},\n "API修改(原型修改)": ${s},\n "API修改(约束变化)": ${o}\n }`}function P(e){return""!==e.getNewApiName()?e.getNewApiName():e.getOldApiName()}function I(e){const t=e.getNewHierarchicalRelations();return t.length>0?t.join():e.getOldHierarchicalRelations().join()}function F(e){if(e.getDiffMessage()===f.diffTypeMap.get(f.ApiDiffType.ADD))return"NA";let t="";const r=e.getOldHierarchicalRelations(),n=e.getParentModuleName(r);return t="-1"!==e.getOldDescription()&&e.getOldDescription()?e.getOldDescription():"NA",e.getDiffType()===f.ApiDiffType.KIT_CHANGE?`${t}`:`类名:${n};\nAPI声明:${e.getOldApiDefinedText()}\n差异内容:${t}`}function O(e){if(e.getDiffMessage()===f.diffTypeMap.get(f.ApiDiffType.REDUCE))return"NA";let t="";const r=e.getNewHierarchicalRelations(),n=e.getParentModuleName(r);return t="-1"!==e.getNewDescription()&&e.getNewDescription()?e.getNewDescription():"NA",e.getDiffType()===f.ApiDiffType.KIT_CHANGE?`${t}`:`类名:${n};\nAPI声明:${e.getNewApiDefinedText()}\n差异内容:${t}`}t.joinOldMessage=F,t.joinNewMessage=O,t.toolNameMethod=new Map([[E.COLLECT,function(e){const t=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectPath);let r,n="";""!==e.collectFile&&(n=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectFile),d.parserParam.setSdkPath(n));try{r=c.FileUtils.isDirectory(t)?u.Parser.parseDir(t,n):u.Parser.parseFile(i.default.resolve(t,".."),t);const a=h.ApiStatisticsHelper.getApiStatisticsInfos(r);let o=[u.Parser.getParseResults(r)];if("excel"===e.format){const t=a.allApiStatisticsInfos;o=a.apiStatisticsInfos,t&&m.WriterHelper.ExcelReporter(t,e.output,`all_${e.toolName}.xlsx`,w)}return{data:o,callback:w}}catch(e){const t=e;return l.LogUtil.e("error collect",t.stack?t.stack:t.message),{data:[],callback:w}}}],[E.CHECK,function(e){try{let t=[];const r=i.default.resolve(c.FileUtils.getBaseDirName(),"../mdFiles.txt");a.default.existsSync(r)&&(t=b.CommonFunctions.getMdFiles(r));const n={filePathArr:t,fileRuleArr:["all"],output:"./result.json",prId:e.prId,isOutExcel:"true",isIncrement:Boolean("true"===e.isIncrement)};return g.LocalEntry.checkEntryLocal(n),{data:[]}}catch(e){const t=e;return l.LogUtil.e("error check",t.stack?t.stack:t.message),{data:[]}}}],[E.CHECKONLINE,function(e){e.format=S.NULL;try{const t={filePathArr:e.path.split(","),fileRuleArr:e.checker.split(","),output:e.output,prId:e.prId,isOutExcel:e.excel,isIncrement:Boolean("true"===e.isIncrement)};return g.LocalEntry.checkEntryLocal(t),{data:[]}}catch(e){const t=e;l.LogUtil.e("error check",t.stack?t.stack:t.message)}return{data:[]}}],[E.APICHANGECHECK,function(e){e.format=S.NULL;try{const t={filePathArr:[],fileRuleArr:e.checker.split(","),output:e.output,prId:e.prId,isOutExcel:e.excel,isIncrement:Boolean("true"===e.isIncrement)};return g.LocalEntry.apiChangeCheckEntryLocal(t),{data:[]}}catch(e){const t=e;l.LogUtil.e("error api change check",t.stack?t.stack:t.message)}return{data:[]}}],[E.DIFF,function(e){const t=i.default.resolve(c.FileUtils.getBaseDirName(),e.old),r=i.default.resolve(c.FileUtils.getBaseDirName(),e.new),n=a.default.statSync(t);let o=[];try{if(n.isDirectory()){const n=u.Parser.parseDir(r);u.Parser.cleanParserParamSDK();const i=u.Parser.parseDir(t);o=p.DiffHelper.diffSDK(i,n,e.all)}else{const n=u.Parser.parseFile(i.default.resolve(t,".."),t);u.Parser.cleanParserParamSDK();const a=u.Parser.parseFile(i.default.resolve(r,".."),r);o=p.DiffHelper.diffSDK(n,a,e.all)}let a=[];return a=e.format===S.JSON?[JSON.stringify(o,null,_.NumberConstant.INDENT_SPACE)]:o,{data:a,callback:C}}catch(e){const t=e;return l.LogUtil.e("error diff",t.stack?t.stack:t.message),{data:[],callback:C}}}],[E.LABELDETECTION,function(e){process.env.NEED_DETECTION="true",process.env.IS_OH=e.isOH,e.format=S.NULL;const t=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectPath);let r,n="";""!==e.collectFile&&(n=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectFile));let a=Buffer.from("");try{r=c.FileUtils.isDirectory(t)?u.Parser.parseDir(t,n):u.Parser.parseFile(i.default.resolve(t,".."),t);const s=u.Parser.getParseResults(r);m.WriterHelper.JSONReporter(s,i.default.dirname(e.output),"detection.json");let l="";l=`${i.default.resolve(c.FileUtils.getBaseDirName(),"./main.exe")} -N detection -L ${e.checkLabels} -P ${i.default.resolve(i.default.dirname(e.output),"detection.json")} -O ${i.default.resolve(e.output)}`,a=o.execSync(l,{timeout:12e4})}catch(e){const t=e;l.LogUtil.e("error collect",t.stack?t.stack:t.message)}finally{l.LogUtil.i("detection run over",a.toString())}return{data:[]}}],[E.COUNT,function(e){const t=i.default.resolve(c.FileUtils.getBaseDirName(),"../../api");let r,n="";""!==e.collectFile&&(n=i.default.resolve(c.FileUtils.getBaseDirName(),e.collectFile));try{r=c.FileUtils.isDirectory(t)?u.Parser.parseDir(t,n):u.Parser.parseFile(i.default.resolve(t,".."),t);const a=h.ApiStatisticsHelper.getApiStatisticsInfos(r).apiStatisticsInfos,o=v.ApiCountHelper.countApi(a);let s=[];return s=e.format===S.JSON?[JSON.stringify(o,null,_.NumberConstant.INDENT_SPACE)]:o,{data:s,callback:T}}catch(e){const t=e;return l.LogUtil.e("error count",t.stack?t.stack:t.message),{data:[],callback:T}}}]])},35846:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getToolConfiguration=void 0;const n=r(30513);t.getToolConfiguration=function(){return{plugins:[n.Plugin]}}},17999:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WriterHelper=void 0;const i=n(r(35244)),a=n(r(71017)),o=n(r(57147)),s=r(42034),c=r(30513),l=r(51626),u=r(53073);!function(e){e.JSONReporter=function(e,t,r){const n=a.default.resolve(t,r);o.default.writeFileSync(n,e),s.LogUtil.i("JSONReporter",`report is in ${n}`)},e.ExcelReporter=async function(e,t,r,n,c){const l=new i.default.Workbook;"function"==typeof n&&n(e,l,t,c);const u=await l.xlsx.writeBuffer(),d=a.default.resolve(t,r);o.default.writeFileSync(d,u),s.LogUtil.i("ExcelReporter",`report is in ${d}`)};class t{static writeInMarkdown(e,r){t.getAllKitInfo(e).forEach((n=>{let i=[];e.forEach((e=>{u.SyscapProcessorHelper.getSingleKitInfo(e)===n&&i.push(e)})),0!==i.length&&t.sortDiffInfoByFile(i,n,r)}))}static getAllKitInfo(e){const t=new Set;return e.forEach((e=>{t.add(e.getOldKitInfo()),t.add(e.getNewKitInfo())})),t}static getSingleKitInfo(e){return""!==e.getNewKitInfo()?e.getNewKitInfo():e.getOldKitInfo()}static getFileNameInkit(e){const t=new Set;return e.forEach((e=>{""!==e.getNewDtsName()?t.add(e.getNewDtsName()):t.add(e.getOldDtsName())})),t}static getSingleFileName(e){return""!==e.getNewDtsName()?e.getNewDtsName():e.getOldDtsName()}static sortDiffInfoByFile(e,r,n){const i=t.getFileNameInkit(e),a=[];i.forEach((i=>{e.forEach((e=>{t.getSingleFileName(e)===i&&a.push(e)})),t.sortDiffInfoByStatus(a,r,n)}))}static sortDiffInfoByStatus(e,r,n){const i=[];for(const t of l.diffTypeMap.keys())e.forEach((e=>{e.getDiffType()===t&&i.push(e)}));t.exportDiffMd(r,i,n)}static exportDiffMd(e,r,n){let i="| 操作 | 旧版本 | 新版本 | d.ts文件 |\n| ---- | ------ | ------ | -------- |\n";for(let e=0;e<r.length;e++){let n=r[e];const a=n.getNewDtsName()?n.getNewDtsName():n.getOldDtsName();i+=`|${l.diffTypeMap.get(n.getDiffType())}|${t.formatDiffMessage(c.joinOldMessage(n))}|${t.formatDiffMessage(c.joinNewMessage(n))}|${a.replace(/\\/g,"/")}|\n`}const a=`${n}\\diff合集`;o.default.existsSync(a)||o.default.mkdirSync(a),o.default.writeFileSync(`${n}\\diff合集\\js-apidiff-${e}.md`,i)}static formatDiffMessage(e){return e.replace(/\r|\n/g,"<br>").replace(/\|/g,"\\|").replace(/\<(?!br>)/g,"\\<")}}e.MarkdownReporter=t}(t.WriterHelper||(t.WriterHelper={}))},84529:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(71017));t.default={NODE_ENV:"development",EVN_CONFIG:"dev",DIR_NAME:i.default.resolve(__dirname,"../.."),NEED_DETECTION:"",IS_OH:"",IS_INCREMENT_CHECK:void 0}},7251:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(84529)),a=n(r(39517)),o="production",s={development:i.default,production:a.default};Object.assign(process.env,s[o]),t.default=s[o]},39517:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(71017));t.default={NODE_ENV:"production",EVN_CONFIG:"prod",DIR_NAME:i.default.resolve(__dirname,".."),NEED_DETECTION:"",IS_OH:"",IS_INCREMENT_CHECK:void 0}},3477:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LocalEntry=void 0;const n=r(45842),i=r(48821),a=r(42034),o=r(40139),s=r(40139),c=r(55172),l=r(42372);class u{static checkEntryLocal(e){let t=s.apiCheckResult;try{i.Check.scanEntry(e.filePathArr,e.prId);const t=u.filterIncrementResult(s.compositiveResult,e.isIncrement);u.maskAlarm(t,e.fileRuleArr)}catch(e){a.LogUtil.e("API_CHECK_ERROR",e)}finally{o.GenerateFile.writeFile(s.apiCheckResult,e.output,{}),"true"===e.isOutExcel&&o.GenerateFile.writeExcelFile(s.apiCheckResult)}return t}static filterIncrementResult(e,t){return t&&0!==s.hierarchicalRelationsSet.size?e.filter((e=>!Boolean(process.env.IS_INCREMENT_CHECK)||u.hasHierarchicalRelations(e))):e}static hasHierarchicalRelations(e){return s.hierarchicalRelationsSet.has(e.hierarchicalRelations)}static maskAlarm(e,t){const r=1===t.length&&"all"===t[0],i=new Map(Object.entries({...c.DOC,...c.DEFINE,...c.CHANEGE}));let a=new Set;r?a=new Set([...i.values()]):t.forEach((e=>{const t=i.get(e);t&&a.add(t)}));new Set(e);u.filterAllResultInfo(e,i,a).forEach((e=>{const t=new n.ApiBaseInfo;t.setApiName(e.apiName).setApiType(e.apiType).setHierarchicalRelations(e.hierarchicalRelations).setParentModuleName(e.parentModuleName);const r=new n.ApiResultMessage;r.setFilePath(e.filePath).setLocation(e.location).setLevel(e.level).setType(e.type).setMessage(e.message).setMainBuggyCode(e.apiText).setMainBuggyLine(e.location).setExtendInfo(t),s.apiCheckResult.push(r)}))}static filterAllResultInfo(e,t,r){return e.filter((e=>{let n=e.message.replace(/API check error of \[.*\]: /g,"");if(/\d/g.test(n)&&(n=n.replace(/\d+/g,"1")),/Prohibited word in \[.*\]:{option}.The word allowed is \[.*\]\./g.test(n)&&(n=JSON.stringify(t.get("API_DEFINE_NAME_01")).replace(/\"/g,"")),/Prohibited word in \[.*\]:{ability} in the \[.*\] file\./g.test(n)&&(n=JSON.stringify(t.get("API_DEFINE_NAME_02")).replace(/\"/g,"")),/please confirm whether it needs to be corrected to a common word./g.test(n)&&(n=n.replace(/\{.*\}/g,"{XXXX}")),/tag does not exist. Please use a valid JSDoc tag./g.test(n)&&(n=n.replace(/\[.*\]/g,"[XXXX]")),/The event name should be named by small hump./g.test(n)&&(n=n.replace(/\[.*\]/g,"[XXXX]")),/This name \[.*\] should be named by/g.test(n)&&(n=n.replace(/\[.*\]/g,"[XXXX]")),r.has(n)){const r=u.filterApiCheckInfos(t,n);""!==r&&e.setType(r)}return r.has(n)}))}static filterApiCheckInfos(e,t){for(let[r,n]of e.entries())if(n===t)return r;return""}static apiChangeCheckEntryLocal(e){let t=s.apiCheckResult;try{l.ApiChangeCheck.checkApiChange(e.prId),u.maskAlarm(s.compositiveResult,e.fileRuleArr)}catch(e){a.LogUtil.e("API_CHECK_ERROR",e)}finally{o.GenerateFile.writeFile(s.apiCheckResult,e.output,{}),"true"===e.isOutExcel&&o.GenerateFile.writeExcelFile(s.apiCheckResult)}return t}}t.LocalEntry=u},48821:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Check=t.currentFilePath=void 0;const i=n(r(57147)),a=n(r(71017)),o=r(83317),s=r(19503),c=r(45842),l=r(40139),u=r(16110),d=r(50474),p=r(80350),f=r(8814),m=r(4528),g=r(32077),_=r(54068),h=r(49570),y=r(93501),v=r(63283),b=r(33444),k=r(42372),x=r(27104),E=r(2478),S=r(49018),D=r(88566);t.currentFilePath="";class w{static scanEntry(e,r){l.cleanApiCheckResult(),k.ApiChangeCheck.checkApiChange(r),e.forEach(((e,r)=>{if(t.currentFilePath=e,-1!==e.indexOf("build-tools"))return;console.log(`scaning file in no ${++r}!`);const n=w.parseAPICodeStyle(e),i=o.Parser.getAllBasicApi(n);w.checkNodeInfos(i);const s=n.get(a.default.basename(e));s&&v.CheckHump.checkAPIFileName(s),v.CheckHump.checkAllAPINameOfHump(i),_.WordsCheck.wordCheckResultsProcessing(i);const c=new b.EventMethodChecker(n),l=c.getAllEventMethod();c.checkEventMethod(l)}))}static getMdFiles(e){return i.default.readFileSync(e,"utf-8").split(/[(\r\n)\r\n]+/)}static parseAPICodeStyle(e){return o.Parser.parseFile(a.default.resolve(e,".."),e)}static checkNodeInfos(e){let r=[];w.getHasJsdocApiInfos(e,r),r.forEach((e=>{const r=e.getLastJsDocInfo(),n=e.getJsDocText().length;if("Method"!==e.getApiType()||"Struct"!==e.getParentApi()?.apiType)if(void 0===r||0===n){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.NO_JSDOC_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.NO_JSDOC).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(c.ErrorMessage.ERROR_NO_JSDOC);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}else{if("NA"===r.getKit()){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(l.CommonFunctions.createErrorInfo(c.ErrorMessage.ERROR_LOST_LABEL,["kit"]));const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(!r.getFileTagContent()){new c.ApiCheckInfo;const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(l.CommonFunctions.createErrorInfo(c.ErrorMessage.ERROR_LOST_LABEL,["file"]));const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}const n=p.LegalityCheck.apiLegalityCheck(e,r),i=u.OrderCheck.orderCheck(e,r),a=y.ApiNamingCheck.namingCheck(e),o=E.ChineseCheck.checkChinese(r),s=D.CheckErrorCode.checkErrorCode(r),_=d.TagNameCheck.tagNameCheck(r),v=x.TagInheritCheck.tagInheritCheck(e),b=g.TagValueCheck.tagValueCheck(e,r),k=f.TagRepeatCheck.tagRepeatCheck(r),w=h.ForbiddenWordsCheck.forbiddenWordsCheck(e),T=S.AnonymousFunctionCheck.checkAnonymousFunction(e);if(!i.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.WRONG_ORDER_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_ORDER).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(i.errorInfo);const a=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(a,l.compositiveResult,l.compositiveLocalResult)}if(!_.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.UNKNOW_DECORATOR_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.UNKNOW_DECORATOR).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(_.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(!w.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.FORBIDDEN_WORDS_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.FORBIDDEN_WORDS).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(w.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(!a.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.NAMING_ERRORS_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.NAMING_ERRORS).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(a.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(!o.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.JSDOC_HAS_CHINESE).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.JSDOC_HAS_CHINESE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(o.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(!s.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.ERROR_ERROR_CODE).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.ERROR_ERROR_CODE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(s.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}if(v.forEach((n=>{if(!n.state){const i=new c.ErrorBaseInfo;i.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(n.errorInfo);const a=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,i);m.AddErrorLogs.addAPICheckErrorLogs(a,l.compositiveResult,l.compositiveLocalResult)}})),n.forEach((n=>{if(!1===n.state){const i=new c.ErrorBaseInfo;i.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(n.errorInfo);const a=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,i);m.AddErrorLogs.addAPICheckErrorLogs(a,l.compositiveResult,l.compositiveLocalResult)}})),b.forEach((n=>{if(!1===n.state){const i=new c.ErrorBaseInfo;i.setErrorID(c.ErrorID.WRONG_VALUE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_VALUE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(n.errorInfo);const a=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,i);m.AddErrorLogs.addAPICheckErrorLogs(a,l.compositiveResult,l.compositiveLocalResult)}})),k.forEach((n=>{if(!1===n.state){const i=new c.ErrorBaseInfo;i.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(n.errorInfo);const a=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,i);m.AddErrorLogs.addAPICheckErrorLogs(a,l.compositiveResult,l.compositiveLocalResult)}})),!T.state){const n=new c.ErrorBaseInfo;n.setErrorID(c.ErrorID.WRONG_SCENE_ID).setErrorLevel(c.ErrorLevel.MIDDLE).setErrorType(c.ErrorType.WRONG_SCENE).setLogType(c.LogType.LOG_JSDOC).setErrorInfo(T.errorInfo);const i=l.CommonFunctions.getErrorInfo(e,r,t.currentFilePath,n);m.AddErrorLogs.addAPICheckErrorLogs(i,l.compositiveResult,l.compositiveLocalResult)}}}))}static getHasJsdocApiInfos(e,t){e.forEach((e=>{s.notJsDocApiTypes.has(e.getApiType())||t.push(e)}))}}t.Check=w},49018:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.AnonymousFunctionCheck=void 0;const i=n(r(55423)),a=r(45842),o=r(19503),s=r(40139);t.AnonymousFunctionCheck=class{static checkAnonymousFunction(e){const t={state:!0,errorInfo:""},r=e.getJsDocInfos();if(s.CommonFunctions.getSinceVersion(r[0].getSince())!==s.CommonFunctions.getCheckApiVersion())return t;let n=[i.default.SyntaxKind.FunctionType,i.default.SyntaxKind.TypeLiteral],c=!1,l=!1,u=!1;if(e.getApiType()===o.ApiType.METHOD){c=n.includes(e.returnValueType),l=!1;e.getParams().forEach((e=>{l=n.includes(e.getParamType())}))}else e.getApiType()===o.ApiType.PROPERTY&&(u=n.includes(e.typeKind));return(c||l||u)&&(t.state=!1,t.errorInfo=a.ErrorMessage.ERROR_ANONYMOUS_FUNCTION),t}}},42372:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ApiChangeCheck=void 0;const i=n(r(71017)),a=n(r(57147)),o=r(83317),s=r(550),c=r(10391),l=r(4528),u=r(40139),d=r(45842),p=r(51626);t.ApiChangeCheck=class{static checkApiChange(e){let t="";const r=i.default.resolve(c.FileUtils.getBaseDirName(),`../../../../Archive/patch_info/openharmony_interface_sdk-js_${e}`),n=i.default.resolve(c.FileUtils.getBaseDirName(),e);a.default.existsSync(r)?(process.env.IS_INCREMENT_CHECK="true",t=r):a.default.existsSync(n)?(process.env.IS_INCREMENT_CHECK="true",t=n):process.env.IS_INCREMENT_CHECK=void 0;const f=i.default.resolve(t,"./old"),m=i.default.resolve(t,"./new");if(!a.default.existsSync(f)||!a.default.existsSync(m))return;let g=[];if(a.default.statSync(f).isDirectory()){const e=o.Parser.parseDir(f),t=o.Parser.parseDir(m);g=s.DiffHelper.diffSDK(e,t,!1,!0)}else{const e=o.Parser.parseFile(i.default.resolve(f,".."),f),t=o.Parser.parseFile(i.default.resolve(m,".."),m);g=s.DiffHelper.diffSDK(e,t,!1,!0)}g.forEach((e=>{if(u.hierarchicalRelationsSet.add(e.oldHierarchicalRelations.join("|")).add(e.newHierarchicalRelations.join("|")),!1!==e.getIsCompatible())return;const t=d.incompatibleApiDiffTypes.get(e.getDiffType());if(e.getDiffType()===p.ApiDiffType.REDUCE){const r=i.default.basename(e.getOldDtsName());let n=new d.ApiCheckInfo;const a=e.getOldHierarchicalRelations(),o=a[a.length-1];n.setErrorID(d.ErrorID.API_CHANGE_ERRORS_ID).setErrorLevel(d.ErrorLevel.MIDDLE).setFilePath(r).setApiPostion(e.getOldPos()).setErrorType(d.ErrorType.API_CHANGE_ERRORS).setLogType(d.LogType.LOG_JSDOC).setSinceNumber(-1).setApiName(e.getOldApiName()).setApiType(e.getApiType()).setApiText(e.getOldApiDefinedText()).setErrorInfo(t).setHierarchicalRelations(e.getOldHierarchicalRelations().join("|")).setParentModuleName(o),l.AddErrorLogs.addAPICheckErrorLogs(n,u.compositiveResult,u.compositiveLocalResult)}else{const r=i.default.basename(e.getNewDtsName());let n=new d.ApiCheckInfo;const a=e.getNewHierarchicalRelations(),o=a[a.length-1];n.setErrorID(d.ErrorID.API_CHANGE_ERRORS_ID).setErrorLevel(d.ErrorLevel.MIDDLE).setFilePath(r).setApiPostion(e.getOldPos()).setErrorType(d.ErrorType.API_CHANGE_ERRORS).setLogType(d.LogType.LOG_JSDOC).setSinceNumber(-1).setApiName(e.getNewApiName()).setApiType(e.getApiType()).setApiText(e.getNewApiDefinedText()).setErrorInfo(t).setHierarchicalRelations(e.getNewHierarchicalRelations().join("|")).setParentModuleName(o),l.AddErrorLogs.addAPICheckErrorLogs(n,u.compositiveResult,u.compositiveLocalResult)}}))}}},2478:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChineseCheck=void 0;const n=r(45842),i=r(40139);t.ChineseCheck=class{static isChinese(e){return/[\u4e00-\u9fa5]/.test(e)}static checkChinese(e){const t={state:!0,errorInfo:""};this.isChinese(e.description)&&(t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_HAS_CHINESE,[e.description]));const r=e.tags;return void 0===r||r.forEach((e=>{for(let r=0;r<e.tokenSource.length;r++)this.isChinese(e.tokenSource[r].source)&&(t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_HAS_CHINESE,[e.tag]))})),t}}},88566:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CheckErrorCode=void 0;const n=r(45842);class i{static isArrayNotEmpty(e){return Array.isArray(e)&&e.length>0}static hasNumberInArray(e,t){return e.every((e=>t.includes(e)))}static checkErrorCode(e){const t={state:!0,errorInfo:""},r=e.errorCodes.filter((e=>e>=100&&e<1e3));return this.isArrayNotEmpty(r)&&(this.hasNumberInArray(r,this.errorCodeList)||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_ERROR_CODE)),t}}t.CheckErrorCode=i,i.errorCodeList=[201,202,203,301,401,501,502,801,901]},63283:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.CheckHump=void 0;const i=n(r(71017)),a=r(4528),o=r(64158),s=r(45842),c=r(19503),l=r(40139),u=r(40139),d=r(48821);class p{static checkLargeHump(e){return/^([A-Z][a-z0-9]*)*$/g.test(e)}static checkSmallHump(e){return/^[a-z]+[0-9]*([A-Z][a-z0-9]*)*$/g.test(e)}static checkAllUppercaseHump(e){return/^[A-Z]+[0-9]*([\_][A-Z0-9]+)*$/g.test(e)}static getApiInfosInFileMap(e,t){if(t===o.StringConstant.SELF)return[];return e.get(t).get(o.StringConstant.SELF)}static checkAllAPINameOfHump(e){e.forEach((e=>{c.notJsDocApiTypes.has(e.getApiType())||p.checkAPINameOfHump(e)}))}static checkAPINameOfHump(e){const t=e.getLastJsDocInfo(),r=e.getJsDocInfos().length>0?e.getJsDocInfos()[0].getSince():"";if(t){if("-1"!==t.getDeprecatedVersion())return;if(r!==String(l.CommonFunctions.getCheckApiVersion()))return}const n=e.getApiType(),o=e.getFilePath();let f=e.getApiName(),m="";if(e.getIsJoinType()&&(f=f.split("_")[0]),n===c.ApiType.ENUM_VALUE||n===c.ApiType.CONSTANT&&-1===o.indexOf(`component${i.default.sep}ets${i.default.sep}`)?p.checkAllUppercaseHump(f)||(m=l.CommonFunctions.createErrorInfo(s.ErrorMessage.ERROR_UPPERCASE_NAME,[f])):n===c.ApiType.INTERFACE||n===c.ApiType.CLASS||n===c.ApiType.TYPE_ALIAS||n===c.ApiType.ENUM?p.checkLargeHump(f)||(m=l.CommonFunctions.createErrorInfo(s.ErrorMessage.ERROR_LARGE_HUMP_NAME,[f])):n!==c.ApiType.PROPERTY&&n!==c.ApiType.METHOD&&n!==c.ApiType.PARAM&&n!==c.ApiType.NAMESPACE||p.checkSmallHump(f)||(m=l.CommonFunctions.createErrorInfo(s.ErrorMessage.ERROR_SMALL_HUMP_NAME,[f])),""!==m){const t=new s.ErrorBaseInfo;t.setErrorID(s.ErrorID.NAMING_ERRORS_ID).setErrorLevel(s.ErrorLevel.MIDDLE).setErrorType(s.ErrorType.NAMING_ERRORS).setLogType(s.LogType.LOG_JSDOC).setErrorInfo(m);const r=l.CommonFunctions.getErrorInfo(e,void 0,d.currentFilePath,t);a.AddErrorLogs.addAPICheckErrorLogs(r,u.compositiveResult,u.compositiveLocalResult)}}static checkAPIFileName(e){const t=e.get(o.StringConstant.SELF)[0];if(t.getApiType()!==c.ApiType.SOURCE_FILE)return;const r=t.getFilePath();if(-1!==r.indexOf(`component${i.default.sep}ets${i.default.sep}`))return;let n="",f="",m="NA";for(const t of e.keys()){p.getApiInfosInFileMap(e,t).forEach((e=>{if(!c.notJsDocApiTypes.has(e.getApiType())){const t=e.getJsDocInfos();m=t[0]?l.CommonFunctions.getSinceVersion(t[0].getSince()):m}n=e.getApiType()===c.ApiType.NAMESPACE?e.getApiName():n,f=e.getApiType()===c.ApiType.EXPORT_DEFAULT||e.getIsExport()?e.getApiName().replace(o.StringConstant.EXPORT_DEFAULT,""):f}))}const g=i.default.basename(r).replace(new RegExp(o.StringConstant.DTS_EXTENSION,"g"),"").replace(new RegExp(o.StringConstant.DETS_EXTENSION,"g"),"").split("."),_=g.length?g[g.length-1]:"";let h="";if(""===n||f!==n||p.checkSmallHump(_)?""!==n||f===n||p.checkLargeHump(_)||(h=s.ErrorMessage.ERROR_LARGE_HUMP_NAME_FILE):h=s.ErrorMessage.ERROR_SMALL_HUMP_NAME_FILE,""!==h&&m===String(l.CommonFunctions.getCheckApiVersion())){const e=new s.ErrorBaseInfo;e.setErrorID(s.ErrorID.NAMING_ERRORS_ID).setErrorLevel(s.ErrorLevel.MIDDLE).setErrorType(s.ErrorType.NAMING_ERRORS).setLogType(s.LogType.LOG_JSDOC).setErrorInfo(h);const r=l.CommonFunctions.getErrorInfo(t,void 0,d.currentFilePath,e);a.AddErrorLogs.addAPICheckErrorLogs(r,u.compositiveResult,u.compositiveLocalResult)}}}t.CheckHump=p},4528:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AddErrorLogs=void 0;const n=r(45842),i=r(40139);t.AddErrorLogs=class{static addAPICheckErrorLogs(e,t,r){const a=JSON.stringify(e.getApiPostion().line),o=`API check error of [${e.getErrorType()}]: ${e.getErrorInfo()}`,s=new n.ApiResultSimpleInfo;s.setID(e.getErrorID()).setLevel(e.getErrorLevel()).setLocation(a).setFilePath(e.getFilePath()).setMessage(o).setApiText(e.getApiText()).setApiName(e.getApiName()).setApiType(e.getApiType()).setHierarchicalRelations(e.getHierarchicalRelations()).setParentModuleName(e.getParentModuleName());const c=new n.ApiResultInfo;c.setErrorType(e.getErrorType()).setLocation(e.getFilePath().slice(e.getFilePath().indexOf("api"),e.getFilePath().length)+`(line: ${a})`).setApiType(e.getApiType()).setMessage(o).setVersion(e.getSinceNumber()).setLevel(e.getErrorLevel()).setApiName(e.getApiName()).setApiFullText(e.getApiText()).setBaseName(e.getFilePath().slice(e.getFilePath().lastIndexOf("\\")+1,e.getFilePath().length)).setHierarchicalRelations(e.getHierarchicalRelations()).setParentModuleName(e.getParentModuleName()).setDefectType("");let l=e.getErrorInfo()===i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_LOST_LABEL,["kit"]),u=e.getErrorInfo()===i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_LOST_LABEL,["file"]),d=[],p=[];t.forEach((t=>{const r=t.getMessage().replace(/API check error of \[.*\]: /g,""),a=t.getFilePath()+r;a===e.getFilePath()+i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_LOST_LABEL,["kit"])&&d.push(t.getFilePath()+t.getMessage()),a===e.getFilePath()+i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_LOST_LABEL,["file"])&&p.push(t.getFilePath()+t.getMessage())})),l&&0!==d.length||u&&0!==p.length||(t.push(s),r.push(c))}}},33444:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.EventMethodChecker=void 0;const i=n(r(55423)),a=r(64158),o=r(45842),s=r(19503),c=r(40139),l=r(83317),u=r(4528),d=r(40139),p=r(63283),f=r(42979),m=r(48821);t.EventMethodChecker=class{constructor(e){this.apiData=e}getAllEventMethod(){const e=l.Parser.getAllBasicApi(this.apiData);let t=[];m.Check.getHasJsdocApiInfos(e,t);const r=[];t.forEach((e=>{e.apiType===s.ApiType.METHOD&&e.getIsJoinType()&&r.push(e)}));return this.getEventMethodDataMap(r)}checkEventMethod(e){e.forEach((e=>{const t=e.onEvents.length>0?e.onEvents:[],r=t.length>0?t[0].jsDocInfos[0].since:"-1",n=e.offEvents.length>0?e.offEvents:[],a=n.length>0?n[0].jsDocInfos[0].since:"-1",s=0===e.onEvents.length&&0!==e.offEvents.length&&a===JSON.stringify(f.ApiCheckVersion),l=0!==e.onEvents.length&&0===e.offEvents.length&&r===JSON.stringify(f.ApiCheckVersion);if(s||l){const t=e.onEvents.concat(e.offEvents)[0],r=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_ON_AND_OFF_PAIR,[]),n=new o.ErrorBaseInfo;n.setErrorID(o.ErrorID.API_PAIR_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.API_PAIR_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(r);const i=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,n);u.AddErrorLogs.addAPICheckErrorLogs(i,d.compositiveResult,d.compositiveLocalResult)}let g=0,_=0;for(let t=0;t<e.offEvents.length;t++){const r=e.offEvents[t];if(r.getParams().length<2)continue;const n=this.collectEventCallback(r,g,_);g=n.callbackNumber,_=n.requiredCallbackNumber}if(e.offEvents.length>0&&a===JSON.stringify(f.ApiCheckVersion)&&(0!==g&&g===e.offEvents.length&&g===_||0===g&&0!==e.offEvents.length)){const t=e.offEvents[0],r=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_CALLBACK_OPTIONAL,[]),n=new o.ErrorBaseInfo;n.setErrorID(o.ErrorID.PARAMETER_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.PARAMETER_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(r);const i=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,n);u.AddErrorLogs.addAPICheckErrorLogs(i,d.compositiveResult,d.compositiveLocalResult)}const h=e.onEvents.concat(e.offEvents).concat(e.emitEvents).concat(e.onceEvents);for(let e=0;e<h.length;e++){const t=h[e];if(!this.checkVersionNeedCheck(t))continue;const r=t.getParams(),n=t.jsDocInfos[0].since;if(r.length<1&&n===JSON.stringify(f.ApiCheckVersion)){const e=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_WITHOUT_PARAMETER,[]),r=new o.ErrorBaseInfo;r.setErrorID(o.ErrorID.PARAMETER_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.PARAMETER_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(e);const n=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,r);u.AddErrorLogs.addAPICheckErrorLogs(n,d.compositiveResult,d.compositiveLocalResult);continue}const a=r.length?r[0]:void 0;if(void 0!==a&&n===JSON.stringify(f.ApiCheckVersion))if(a.getParamType()===i.default.SyntaxKind.LiteralType){const e=a.getType()[0].replace(/\'/g,"");if(""===e){const e=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_NAME_NULL,[a.getApiName()]),r=new o.ErrorBaseInfo;r.setErrorID(o.ErrorID.PARAMETER_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.PARAMETER_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(e);const n=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,r);u.AddErrorLogs.addAPICheckErrorLogs(n,d.compositiveResult,d.compositiveLocalResult)}else if(!p.CheckHump.checkSmallHump(e)){const r=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_NAME_SMALL_HUMP,[e]),n=new o.ErrorBaseInfo;n.setErrorID(o.ErrorID.PARAMETER_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.PARAMETER_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(r);const i=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,n);u.AddErrorLogs.addAPICheckErrorLogs(i,d.compositiveResult,d.compositiveLocalResult)}}else if(a.getParamType()!==i.default.SyntaxKind.StringKeyword){const e=c.CommonFunctions.createErrorInfo(o.ErrorMessage.ERROR_EVENT_NAME_STRING,[a.getApiName()]),r=new o.ErrorBaseInfo;r.setErrorID(o.ErrorID.PARAMETER_ERRORS_ID).setErrorLevel(o.ErrorLevel.MIDDLE).setErrorType(o.ErrorType.PARAMETER_ERRORS).setLogType(o.LogType.LOG_JSDOC).setErrorInfo(e);const n=c.CommonFunctions.getErrorInfo(t,void 0,m.currentFilePath,r);u.AddErrorLogs.addAPICheckErrorLogs(n,d.compositiveResult,d.compositiveLocalResult)}}}))}checkVersionNeedCheck(e){const t=c.CommonFunctions.getSinceVersion(e.getCurrentVersion());return parseInt(t)>=a.EventConstant.eventMethodCheckVersion}collectEventCallback(e,t,r){const n=e.getParams().slice(-1)[0];if(n.paramType){new Set([i.default.SyntaxKind.NumberKeyword,i.default.SyntaxKind.StringKeyword,i.default.SyntaxKind.BooleanKeyword,i.default.SyntaxKind.UndefinedKeyword,i.default.SyntaxKind.LiteralType]).has(n.paramType)||(t++,n.getIsRequired()&&r++)}return{callbackNumber:t,requiredCallbackNumber:r}}getEventMethodDataMap(e){let t=new Map;return e.forEach((e=>{const r=[...e.hierarchicalRelations];r.pop();const n=[...r,this.getEventName(e.apiName)].join("/");let i={onEvents:[],offEvents:[],emitEvents:[],onceEvents:[]};t.get(n)&&(i=t.get(n)),t.set(n,this.collectEventMethod(i,e))})),t}collectEventMethod(e,t){switch(this.getEventType(t.apiName)){case"on":e.onEvents.push(t);break;case"off":e.offEvents.push(t);break;case"emit":e.emitEvents.push(t);break;case"once":e.onceEvents.push(t)}return e}getEventName(e){return e.split(/\_/)[1]}getEventType(e){return e.split(/\_/)[0]}}},49570:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ForbiddenWordsCheck=void 0;const n=r(45842),i=r(40139),a=r(40139);t.ForbiddenWordsCheck=class{static forbiddenWordsCheck(e){const t=["this","unknown"],r={state:!0,errorInfo:""},o=e.getDefinedText(),s=e.getJsDocInfos(),c=i.CommonFunctions.getSinceVersion(s[0].getSince()),l=i.CommonFunctions.getCheckApiVersion(),u=/\s{2,}/g;let d=o.replace(/(\/\*|\*\/|\*)|\\n|\\r/g," ");return a.punctuationMarkSet.forEach((e=>{const t=new RegExp(e,"g");t.test(d)&&(d=d.replace(t," ").replace(u," "))})),d.split(/\s/g).forEach((a=>{c===l&&(t.includes(a)||"any"===a&&-1!==e.getFilePath().indexOf(".d.ets"))&&(r.state=!1,r.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ILLEGAL_USE_ANY,[a]))})),r}}},93501:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiNamingCheck=void 0;const n=r(45842),i=r(40139),a=r(54068),o=r(79170),s=r(8910);class c{static namingCheck(e){const t={state:!0,errorInfo:""},r=e.getJsDocInfos(),n=i.CommonFunctions.getSinceVersion(r[0].getSince()),o=i.CommonFunctions.getCheckApiVersion(),s=e.getFilePath().toLowerCase(),l=/\s{2,}/g;let u=e.getDefinedText().replace(/(\/\*|\*\/|\*)|\n|\r/g," ");i.punctuationMarkSet.forEach((e=>{const t=new RegExp(e,"g");t.test(u)&&(u=u.replace(t," ").replace(l," "))}));let d=u.split(/\s/g),p=[];return d.forEach((e=>{a.WordsCheck.splitComplexWords(e,p)})),p.forEach((r=>{n===o&&(c.checkApiNamingWords(r,t),c.checkApiNamingScenario(s,t,e))})),t}static checkApiNamingWords(e,t){const r=c.getlowercaseNamingMap();for(const[a,o]of r){const r=e.indexOf(a);if(-1===r)continue;const s=o.ignore.map((e=>e.toLowerCase())),l=e.substring(r,r+a.length);if(0===s.length){t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_NAMING,[e,l,o.suggestion]);break}!1===c.checkIgnoreWord(s,e)&&(t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_NAMING,[e,l,o.suggestion]))}}static checkApiNamingScenario(e,t,r){const a=c.getlowercaseNamingScenarioMap();for(const[o,s]of a){-1===e.indexOf(o)||c.isInAllowedFiles(s.files,r.getFilePath())||(t.state=!1,t.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_SCENARIO,[e,o,r.getFilePath()]))}}static getlowercaseNamingMap(){const e=new Map;for(const t of o){const r=t.badWord.toLowerCase(),n=t;e.set(r,n)}return e}static checkIgnoreWord(e,t){let r=!1;for(let n=0;n<e.length;n++)if(e[n]&&-1!==t.indexOf(e[n])){r=!0;break}return r}static getlowercaseNamingScenarioMap(){const e=new Map;for(const t of s){const r=t.word.toLowerCase(),n=t;e.set(r,n)}return e}static isInAllowedFiles(e,t){for(const r of e){const e=new RegExp(r);if(e.test(t),e.test(t))return!0}return!1}}t.ApiNamingCheck=c},27104:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagInheritCheck=void 0;const n=r(45842),i=r(40139),a=r(19503);class o{static tagInheritCheck(e){const t=[],r=e.getLastJsDocInfo();if(void 0===r)return t;const n=r.tags,i=[];if(void 0===n)return t;n.forEach((e=>{i.push(e.tag)}));let s=e.getParentApi();return a.containerApiTypes.has(s.getApiType())&&o.checkParentJsdoc(s,i,t),t}static checkParentJsdoc(e,t,r){if(void 0===e||!a.containerApiTypes.has(e.getApiType()))return!0;const s=e,c=s.getLastJsDocInfo()?.tags,l={state:!0,errorInfo:""};if(void 0===c)return!0;let u="";const d=c.some((e=>(u=e.tag,i.inheritTagArr.includes(e.tag)&&!t.includes(e.tag)))),p=d?{state:!1,errorInfo:i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_INHERIT,[u.toLocaleLowerCase()])}:l,f=[];c.forEach((e=>{f.push(e.tag)}));const m=t.some((e=>(u=e,i.followTagArr.includes(e)&&!f.includes(e)))),g=m?{state:!1,errorInfo:i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_FOLLOW,[u])}:l;if(d||m)return r.push(...d?m?[g,p]:[p]:[g]),!1;const _=s.getParentApi();return o.checkParentJsdoc(_,t,r)}}t.TagInheritCheck=o},80350:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LegalityCheck=void 0;const n=r(19503),i=r(40139),a=r(45842),o=r(40139);class s{static apiLegalityCheck(e,t){const r=[];s.checkSystemapiAtomicservice(t,r);const c=e.getNode(),l=i.apiLegalityCheckTypeMap.get(c.kind),u=new Set(l),d=s.getIllegalTagsArray(l);let p="",f="";if(e.getApiType()!==n.ApiType.CLASS&&e.getApiType()!==n.ApiType.INTERFACE||(p=o.CommonFunctions.getExtendsApiValue(e),f=o.CommonFunctions.getImplementsApiValue(e)),""===p&&(u.delete("extends"),d.push("extends")),""===f&&(u.delete("implements"),d.push("implements")),e.getApiType()===n.ApiType.PROPERTY&&(e.getIsReadOnly()||(u.delete("readonly"),d.push("readonly"))),!Array.isArray(l))return r;const m=t.tags,g=[],_=[];if(void 0===m){const e={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,["since"])+o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,["syscap"])};return r.push(e),r}const h=[];if(m.forEach((e=>{h.push(e.tag)})),h.includes("deprecated"))return r;let y=0,v=e.getApiType()===n.ApiType.METHOD?e.getParams().length:0;return v=e.getApiType()===n.ApiType.TYPE_ALIAS?e.getParamInfos().length:v,m.forEach((i=>{g.push(i.tag),"throws"===i.tag&&_.push(i.name),y="param"===i.tag?y+1:y;const s="useinstead"===i.tag&&"-1"!==t.deprecatedVersion;if(u.delete("param"),u.has(i.tag)&&u.delete(i.tag),e.getApiType()!==n.ApiType.PROPERTY&&e.getApiType()!==n.ApiType.DECLARE_CONST||(u.delete("constant"),d.push("constant")),e.getApiType()!==n.ApiType.INTERFACE||"typedef"!==i.tag&&"interface"!==i.tag||(u.delete("typedef"),u.delete("interface")),e.getApiType()===n.ApiType.TYPE_ALIAS&&e.getIsExport()&&u.delete("typedef"),(e.getApiType()===n.ApiType.METHOD&&0===e.getReturnValue().length||e.getApiType()===n.ApiType.TYPE_ALIAS&&("void"===e.getReturnType().join()||!e.getTypeIsFunction()))&&(u.delete("returns"),d.push("returns")),d.includes(i.tag)&&("useinstead"!==i.tag||!s)){const e={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_USE,[i.tag])};r.push(e)}})),e.getApiType()===n.ApiType.METHOD&&s.checkThrowsCode(_,g,v,r),s.paramLegalityCheck(y,v,r),u.forEach((e=>{if(!o.conditionalOptionalTags.includes(e)){const t={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,[e])};r.push(t)}})),r}static paramLegalityCheck(e,t,r){if(e>t){const n={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_MORELABEL,[JSON.stringify(e-t),"param"])};r.push(n)}else if(e<t){const e={state:!1,errorInfo:o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,["param"])};r.push(e)}}static checkThrowsCode(e,t,r,n){const i={state:!0,errorInfo:""},s={state:!0,errorInfo:""},c={state:!0,errorInfo:""},l={state:!0,errorInfo:""},u=t.includes(a.ParticularErrorCode.ERROR_PERMISSION),d=t.includes(a.ParticularErrorCode.ERROR_SYSTEMAPI),p=e.includes(a.ParticularErrorCode.ERROR_CODE_201),f=e.includes(a.ParticularErrorCode.ERROR_CODE_202),m=e.includes(a.ParticularErrorCode.ERROR_CODE_401);u!==p&&(i.state=!1,i.errorInfo=o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,[u?"throws 201":a.ParticularErrorCode.ERROR_PERMISSION])),d!==f&&(s.state=!1,s.errorInfo=o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_LOST_LABEL,[d?"throws 202":a.ParticularErrorCode.ERROR_SYSTEMAPI])),m&&0===r&&(c.state=!1,c.errorInfo=o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_USE,["throws 401"]));const g=e.sort();for(let e=0;e<g.length;e++)g[e]===g[e+1]&&(l.state=!1,l.errorInfo=o.CommonFunctions.createErrorInfo(a.ErrorMessage.ERROR_REPEATLABEL,["throws"]));n.push(i,s,c,l)}static getIllegalTagsArray(e){const t=[];return i.tagsArrayOfOrder.forEach((r=>{(i.optionalTags.includes(r)||Array.isArray(e))&&(i.optionalTags.includes(r)||e.includes(r))||t.push(r)})),t}static checkSystemapiAtomicservice(e,t){const r={state:!0,errorInfo:""},n=[];e.tags?.forEach((e=>{n.push(e.tag)}));const i=n.includes("systemapi"),o=n.includes("atomicservice");i&&o&&(r.state=!1,r.errorInfo=a.ErrorMessage.ERROR_ERROR_SYSTEMAPI_ATOMICSERVICE),t.push(r)}}t.LegalityCheck=s},50474:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagNameCheck=void 0;const n=r(40139),i=r(45842);t.TagNameCheck=class{static tagNameCheck(e){const t={state:!0,errorInfo:""},r=n.tagsArrayOfOrder.concat(n.officialTagArr),a=e.tags;return void 0===a||a.forEach((e=>{r.includes(e.tag)||(t.state=!1,t.errorInfo=n.CommonFunctions.createErrorInfo(i.ErrorMessage.ERROR_LABELNAME,[e.tag]))})),t}}},16110:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OrderCheck=void 0;const n=r(45842),i=r(40139);class a{static orderCheck(e,t){const r={state:!0,errorInfo:""},o=t.tags;if(void 0===o)return r;const s=[];if(o.forEach((e=>{s.push(e.tag)})),s.includes("deprecated"))return r;for(let e=0;e<o.length;e++)if(e+1<o.length){const t=i.tagsArrayOfOrder.indexOf(o[e].tag),s=i.tagsArrayOfOrder.indexOf(o[e+1].tag),c=i.CommonFunctions.isOfficialTag(o[e].tag);if("form"!==o[e].tag&&"form"!==o[e+1].tag&&(c&&s>-1||t>s&&s>-1)){r.state=!1,r.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_ORDER,[o[e].tag]);break}"form"===o[e].tag&&(r.state=a.formOrderCheck(o,e,t,s),r.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_ORDER,[o[e].tag]))}return r}static formOrderCheck(e,t,r,n){const a=t-1>-1?i.tagsArrayOfOrder.indexOf(e[t-1].tag):0,o=[a,r],s=[a,i.tagsArrayOfOrder.lastIndexOf(e[t].tag)];return n>-1&&(o.push(n),s.push(n)),!(!i.CommonFunctions.isAscending(o)&&!i.CommonFunctions.isAscending(s))}}t.OrderCheck=a},8814:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagRepeatCheck=void 0;const n=r(45842),i=r(40139);t.TagRepeatCheck=class{static tagRepeatCheck(e){const t=[],r=["throws","param"],a=[];if(e.tags?.forEach((e=>{a.push(e.tag)})),a.includes("deprecated"))return t;const o=a.filter((e=>a.indexOf(e)!==a.lastIndexOf(e)));return new Set(o).forEach((e=>{if(!r.includes(e)){const r={state:!1,errorInfo:i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_REPEATLABEL,[e])};t.push(r)}})),t}}},32077:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TagValueCheck=void 0;const n=r(45842),i=r(40139),a=r(19503),o=r(64158),s=r(23725),c=r(68762),l=r(96486),u=r(42979);class d{static tagValueCheck(e,t){const r=[],n=t.tags;let i=0,a=-1;if(void 0===n)return r;const o=[];n.forEach((e=>{o.push(e.tag)}));const s=o.includes("deprecated");return n.forEach((t=>{let o={state:!0,errorInfo:""};switch(t.tag){case"since":o=d.sinceTagValueCheck(e,t);break;case"extends":case"implements":o=s?o:d.extendsTagValueCheck(e,t);break;case"enum":o=s?o:d.enumTagValueCheck(t);break;case"returns":o=s?o:d.returnsTagValueCheck(e,t);break;case"namespace":case"typedef":case"struct":o=s?o:d.outerTagValueCheck(e,t);break;case"type":o=s?o:d.typeTagValueCheck(e,t);break;case"syscap":o=d.syscapTagValueCheck(t);break;case"default":o=s?o:d.defaultTagValueCheck(t);break;case"deprecated":o=d.deprecatedTagValueCheck(t);break;case"permission":o=s?o:d.permissionTagValueCheck(t);break;case"throws":"-1"===e.getLastJsDocInfo()?.deprecatedVersion&&(i+=1,o=s?o:d.throwsTagValueCheck(t,i,n));break;case"param":a+=1,o=s?o:d.paramTagValueCheck(e,t,a);break;case"useinstead":o=d.useinsteadTagValueCheck(t)}o.state||r.push(o)})),r}static sinceTagValueCheck(e,t){const r={state:!0,errorInfo:""},a=i.CommonFunctions.getSinceVersion(t.name),o=/^\d+$/.test(a),s=[];e.getJsDocInfos().forEach((e=>{s.push(e.since)}));const c=Array.from(new Set(s));return o?l.toNumber(a)>l.toNumber(u.ApiMaxVersion)&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_SINCE_NUMBER):(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_SINCE),s.length!==c.length&&(r.state=!1,r.errorInfo=r.errorInfo+n.ErrorMessage.ERROR_INFO_VALUE_SINCE_JSDOC),r}static extendsTagValueCheck(e,t){const r={state:!0,errorInfo:""};let o=t.name+t.description;if(e.getApiType()===a.ApiType.CLASS||e.getApiType()===a.ApiType.INTERFACE){const a=i.CommonFunctions.getExtendsApiValue(e),s=i.CommonFunctions.getImplementsApiValue(e);"extends"===t.tag&&o.replace(/\s/g,"")!==a&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_EXTENDS),"implements"===t.tag&&o!==s&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_IMPLEMENTS)}return r}static enumTagValueCheck(e){const t={state:!0,errorInfo:""};return-1===["string","number"].indexOf(e.type)&&(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_ENUM),t}static returnsTagValueCheck(e,t){const r={state:!0,errorInfo:""},o=t.type.replace(/\s/g,"");let s=[];if(![a.ApiType.METHOD,a.ApiType.TYPE_ALIAS].includes(e.getApiType()))return r;const c=i.CommonFunctions.judgeSpecialCase(e.returnValueType);return e.getApiType()===a.ApiType.TYPE_ALIAS?s.push(e.getReturnType().join()):s=c.length>0?c:e.getReturnValue(),0===s.length?(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_RETURNS):o!==s.join("|").replace(/\s/g,"")&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_RETURNS),r}static outerTagValueCheck(e,t){const r={state:!0,errorInfo:""};let i=t.name,o=t.type,s=e.getApiName();e.getDefinedText();if("namespace"===t.tag&&i!==s&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_NAMESPACE),"typedef"===t.tag){if(e.getApiType()===a.ApiType.TYPE_ALIAS){const t=e.getType().join("|").replace(/\s/g,""),r=e.getTypeIsFunction(),n=e.getTypeName()===a.TypeAliasType.OBJECT_TYPE;s=r?"function":n?"object":t}else{const t=e.getGenericInfo();if(t.length>0){s=s+"<"+t.map((e=>e.getGenericContent())).join(",")+">"}}"Interface"===e.getApiType()&&i!==s?(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_TYPEDEF):e.getApiType()!==a.ApiType.TYPE_ALIAS||e.getIsExport()||o.replace(/\s/g,"")===s||(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_TYPEDEF)}return"struct"===t.tag&&o!==s&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_STRUCT),r}static typeTagValueCheck(e,t){const r={state:!0,errorInfo:""};if(e.getApiType()!==a.ApiType.PROPERTY)return r;let o=t.type.replace(/\s/g,""),s=[];const c=i.CommonFunctions.judgeSpecialCase(e.typeKind);s=c.length>0?c:e.type;let l=s.join("|").replace(/\s/g,"");const u=!e.getIsRequired();return u&&1===s.length?l="?"+l:u&&s.length>1&&(l="?("+l+")"),o.replace(/\s/g,"")!==l.replace(/\s/g,"")&&(r.state=!1,r.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_TYPE),r}static syscapTagValueCheck(e){const t={state:!0,errorInfo:""},r=s.SystemCapability,i=e.name;return r.includes(i)||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_SYSCAP),t}static defaultTagValueCheck(e){const t={state:!0,errorInfo:""};return 0===(e.name+e.type).length&&(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_DEFAULT),t}static deprecatedTagValueCheck(e){const t={state:!0,errorInfo:""},r=e.name,a=i.CommonFunctions.getSinceVersion(e.description),o=/^\d+$/.test(a);return"since"===r&&o||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_DEPRECATED),t}static permissionTagValueCheck(e){const t={state:!0,errorInfo:""},r=c.module.definePermissions,i=[];r.forEach((e=>{i.push(e.name)}));return(e.name+e.description).replace(/(\s|\(|\))/g,"").replace(/(or|and)/g,"$").split("$").forEach((e=>{i.includes(e)||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_PERMISSION)})),t}static throwsTagValueCheck(e,t,r){const a={state:!0,errorInfo:""},o=e.type,s=e.name,c=/^\d+$/.test(s);if("BusinessError"!==o&&(a.state=!1,a.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_VALUE1_THROWS,[JSON.stringify(t)])),c){if("401"===s){const t=e.description,r=t.indexOf(i.throwsTagDescriptionArr[0]),o=t.indexOf(i.throwsTagDescriptionArr[1]),s=t.indexOf(i.throwsTagDescriptionArr[2]),c=t.indexOf(i.throwsTagDescriptionArr[3]),l=-1!==o||-1!==s||-1!==c,u=new RegExp(`${i.throwsTagDescriptionArr[0]}|${i.throwsTagDescriptionArr[1]}|${i.throwsTagDescriptionArr[2]}|${i.throwsTagDescriptionArr[3]}|<br>`,"g"),d=/[A-Za-z]+/.test(t.replace(u,""));(-1===r||r>1||!l||d)&&(a.state=!1,a.errorInfo=a.errorInfo+n.ErrorMessage.ERROR_INFO_VALUE3_THROWS)}}else a.state=!1,a.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_VALUE2_THROWS,[JSON.stringify(t)]);const l=[];return r?.forEach((e=>{l.push(e.tag)})),a}static paramTagValueCheck(e,t,r){const o={state:!0,errorInfo:""};if(![a.ApiType.METHOD,a.ApiType.TYPE_ALIAS].includes(e.getApiType()))return o;const s=t.type.replace(/\s/g,""),c=t.name;let l="",u=[];if(e.getApiType()===a.ApiType.TYPE_ALIAS){const t=e.getParamInfos();l=t.length>r?t[r].getApiName():"",u=t.length>r?t[r].getType():[""]}else{const t=e.getParams();l=t[r]?.getApiName();const n=t[r]?i.CommonFunctions.judgeSpecialCase(t[r].paramType):[];u=n.length>0?n:t[r]?.getType()}return c!==l&&(o.state=!1,o.errorInfo=i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_VALUE_PARAM,[JSON.stringify(r+1),JSON.stringify(r+1)])),void 0!==u&&s===u.join("|").replace(/\s/g,"")||(o.state=!1,o.errorInfo=o.errorInfo+i.CommonFunctions.createErrorInfo(n.ErrorMessage.ERROR_INFO_TYPE_PARAM,[JSON.stringify(r+1),JSON.stringify(r+1)])),o}static checkModule(e){return/^[A-Za-z0-9_]+\b(\.[A-Za-z0-9_]+\b)*$/.test(e)||/^[A-Za-z0-9_]+\b(\.[A-Za-z0-9_]+\b)*\#[A-Za-z0-9_]+\b$/.test(e)||/^[A-Za-z0-9_]+\b(\.[A-Za-z0-9_]+\b)*\#event:[A-Za-z0-9_]+\b$/.test(e)}static splitUseinsteadValue(e,t){e&&""!==e||(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_USEINSTEAD);const r=e.split(/\//g);if(1===r.length)t.state=-1===r[0].indexOf(o.PunctuationMark.LEFT_BRACKET)&&-1===r[0].indexOf(o.PunctuationMark.RIGHT_BRACKET)&&d.checkModule(r[0]);else if(2===r.length){const e=r[0].split(".");if(1===e.length)t.state=t.state&&/^[A-Za-z0-9_]+\b$/.test(e[0])&&d.checkModule(r[1]);else{let n=!0;for(let t=0;t<e.length;t++)n=n&&"ohos"===e[0]&&/^[A-Za-z0-9_]+\b$/.test(e[t]);n&&(d.checkModule(r[1])||-1!==r[1].indexOf(o.PunctuationMark.LEFT_BRACKET)||-1!==r[1].indexOf(o.PunctuationMark.RIGHT_BRACKET))||(t.state=!1)}}else t.state=!1;t.state||(t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_USEINSTEAD)}static useinsteadTagValueCheck(e){let t={state:!0,errorInfo:""};const r=e.name;return""===r?(t.state=!1,t.errorInfo=n.ErrorMessage.ERROR_INFO_VALUE_USEINSTEAD):d.splitUseinsteadValue(r,t),t}}t.TagValueCheck=d},54068:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WordsCheck=void 0;const n=r(19503),i=r(45842),a=r(40139),o=r(4528),s=r(40139),c=r(93289),l=r(12079),u=new Set([...c.dictionariesArr,...l.dictionariesSupplementaryArr,...a.tagsArrayOfOrder,...a.officialTagArr]);class d{static wordCheckResultsProcessing(e){e.forEach((e=>{if(e.getApiType()===n.ApiType.SOURCE_FILE)return;let t=e.getJsDocText()+e.getDefinedText();if(e.getApiType()===n.ApiType.IMPORT){const r=e.getImportValues(),n=[];r.forEach((e=>{n.push(e.key)})),t=n.join("|")}d.wordsCheck(t,e)}))}static wordsCheck(e,t){const r=/\s{2,}/g;let n=e.replace(/(\/\*|\*\/|\*)|\n|\r/g," ");s.punctuationMarkSet.forEach((e=>{const t=new RegExp(e,"g");t.test(n)&&(n=n.replace(t," ").replace(r," "))}));let c=n.split(/\s/g);const l=[];c.forEach((e=>{const r=[];d.splitComplexWords(e,r),r.forEach((r=>{if(!d.checkBaseWord(r.toLowerCase())){l.push(r);const n={state:!1,errorInfo:a.CommonFunctions.createErrorInfo(i.ErrorMessage.ERROR_WORD,[e,r])},c=new i.ErrorBaseInfo;c.setErrorID(i.ErrorID.MISSPELL_WORDS_ID).setErrorLevel(i.ErrorLevel.MIDDLE).setErrorType(i.ErrorType.MISSPELL_WORDS).setLogType(i.LogType.LOG_JSDOC).setErrorInfo(n.errorInfo);const u=a.CommonFunctions.getErrorInfo(t,void 0,t.getFileAbsolutePath(),c);o.AddErrorLogs.addAPICheckErrorLogs(u,s.compositiveResult,s.compositiveLocalResult)}}))}))}static hasUnderline(e){return/(?<!^)\_/g.test(e)}static splitComplexWords(e,t){let r=[];d.hasUnderline(e)?r=e.split(/(?<!^)\_/g):/(?<!^)(?=[A-Z])/g.test(e)?r=e.split(/(?<!^)(?=[A-Z])/g):r.push(e),r.forEach((e=>{/[0-9]/g.test(e)?t.concat(e.split(/0-9/g)):t.push(e)}))}static checkBaseWord(e){return!/^[a-z][0-9]+$/g.test(e)&&!(/^[A-Za-z]+/g.test(e)&&!u.has(e.toLowerCase()))}}t.WordsCheck=d},94801:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiCountHelper=void 0;const n=r(91676),i=r(5391);t.ApiCountHelper=class{static countApi(e){const t=[],r=i.FunctionUtils.readKitFile(),a=r.filePathSet,o=r.subsystemMap,s=r.kitNameMap;return a.forEach((r=>{let i=0,a="",c=new n.ApiCountInfo;e.forEach((e=>{r===e.getFilePath().replace(/\\/g,"/")&&(i++,a=e.getKitInfo())})),i>0&&(c.setFilePath(`api/${r}`).setApiNumber(i).setKitName(""===a?s.get(r):a).setsubSystem(o.get(r)),t.push(c))})),t}}},51719:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.DiffProcessorHelper=void 0;const i=r(19503),a=r(59062),o=r(51626),s=r(72161),c=r(10582),l=r(40139),u=r(64158),d=n(r(55423));!function(e){e.permissionsCharMap=new Map([["and",{splitchar:"and",transferchar:"&"}],["or",{splitchar:"or",transferchar:"|"}]]),e.typeCharMap=new Map([["and",{splitchar:"&",transferchar:"&"}],["or",{splitchar:"|",transferchar:"|"}]]);class t{static diffJsDocInfo(r,n,i,a,o){const s=r.getLastJsDocInfo(),c=n.getLastJsDocInfo();t.diffSinceVersion(r,n,i);const l=t.diffErrorCodes(s,c);l?.forEach((t=>{const a=e.wrapDiffInfo(r,n,t);i.push(a)}));for(let t=0;t<e.jsDocDiffProcessors.length;t++){const l=(0,e.jsDocDiffProcessors[t])(s,c,a,o);if(!l)continue;const u=e.wrapDiffInfo(r,n,l);i.push(u)}}static getFirstSinceVersion(e){let t="";for(let r=0;r<e.length;r++){const n=e[r];if("-1"!==n.getSince())return t=n.getSince(),t}return t}static diffSinceVersion(t,r,n){const i=new o.DiffTypeInfo,a=t.getJsDocInfos()[0],s=r.getJsDocInfos()[0],c=a?a.getSince():"-1",l=s?s.getSince():"-1";if(i.setStatusCode(o.ApiStatusCode.VERSION_CHNAGES).setOldMessage(c).setNewMessage(l),c===l)return;if("-1"===c){i.setDiffType(o.ApiDiffType.SINCE_VERSION_NA_TO_HAVE);const a=e.wrapDiffInfo(t,r,i);return void n.push(a)}if("-1"===l){i.setDiffType(o.ApiDiffType.SINCE_VERSION_HAVE_TO_NA);const a=e.wrapDiffInfo(t,r,i);return void n.push(a)}i.setDiffType(o.ApiDiffType.SINCE_VERSION_A_TO_B);const u=e.wrapDiffInfo(t,r,i);n.push(u)}static diffIsSystemApi(e,t){const r=new o.DiffTypeInfo,n=!!e&&e.getIsSystemApi(),i=!!t&&t.getIsSystemApi();if(r.setStatusCode(o.ApiStatusCode.SYSTEM_API_CHNAGES).setOldMessage(s.StringUtils.transformBooleanToTag(n,a.Comment.JsDocTag.SYSTEM_API)).setNewMessage(s.StringUtils.transformBooleanToTag(i,a.Comment.JsDocTag.SYSTEM_API)),i!==n)return i?r.setDiffType(o.ApiDiffType.PUBLIC_TO_SYSTEM):r.setDiffType(o.ApiDiffType.SYSTEM_TO_PUBLIC)}static diffModelLimitation(e,t){const r=new o.DiffTypeInfo,n=new Map([["_stagemodelonly",o.ApiDiffType.NA_TO_STAGE],["stagemodelonly_",o.ApiDiffType.STAGE_TO_NA],["_famodelonly",o.ApiDiffType.NA_TO_FA],["famodelonly_",o.ApiDiffType.FA_TO_NA],["famodelonly_stagemodelonly",o.ApiDiffType.FA_TO_STAGE],["stagemodelonly_famodelonly",o.ApiDiffType.STAGE_TO_FA]]),i=e?e.getModelLimitation().toLowerCase():"",a=t?t.getModelLimitation().toLowerCase():"";if(a===i)return;const s=`${i.toLowerCase()}_${a.toLowerCase()}`,c=n.get(s);return r.setStatusCode(o.ApiStatusCode.MODEL_CHNAGES).setDiffType(c).setOldMessage(i).setNewMessage(a),r}static diffIsForm(e,t){const r=new o.DiffTypeInfo,n=!!e&&e.getIsForm(),i=!!t&&t.getIsForm();if(r.setStatusCode(o.ApiStatusCode.FORM_CHANGED).setOldMessage(s.StringUtils.transformBooleanToTag(n,a.Comment.JsDocTag.FORM)).setNewMessage(s.StringUtils.transformBooleanToTag(i,a.Comment.JsDocTag.FORM)),i!==n)return i?r.setDiffType(o.ApiDiffType.NA_TO_CARD):r.setDiffType(o.ApiDiffType.CARD_TO_NA)}static diffIsCrossPlatForm(e,t){const r=new o.DiffTypeInfo,n=!!e&&e.getIsCrossPlatForm(),i=!!t&&t.getIsCrossPlatForm();if(r.setStatusCode(o.ApiStatusCode.CROSSPLATFORM_CHANGED).setOldMessage(s.StringUtils.transformBooleanToTag(n,a.Comment.JsDocTag.CROSS_PLAT_FORM)).setNewMessage(s.StringUtils.transformBooleanToTag(i,a.Comment.JsDocTag.CROSS_PLAT_FORM)),i!==n)return i?r.setDiffType(o.ApiDiffType.NA_TO_CROSS_PLATFORM):r.setDiffType(o.ApiDiffType.CROSS_PLATFORM_TO_NA)}static diffAtomicService(e,t){const r=new o.DiffTypeInfo,n=!!e&&e.getIsAtomicService(),i=!!t&&t.getIsAtomicService();if(r.setStatusCode(o.ApiStatusCode.ATOMICSERVICE_CHANGE).setOldMessage(s.StringUtils.transformBooleanToTag(n,a.Comment.JsDocTag.ATOMIC_SERVICE)).setNewMessage(s.StringUtils.transformBooleanToTag(i,a.Comment.JsDocTag.ATOMIC_SERVICE)),n!==i)return i?r.setDiffType(o.ApiDiffType.ATOMIC_SERVICE_NA_TO_HAVE):r.setDiffType(o.ApiDiffType.ATOMIC_SERVICE_HAVE_TO_NA)}static diffPermissions(t,r){const n=new o.DiffTypeInfo,i=t?t.getPermission():"",a=r?r.getPermission():"";if(n.setStatusCode(o.ApiStatusCode.PERMISSION_CHANGES).setOldMessage(i).setNewMessage(a),i===a)return;if(""===i)return n.setStatusCode(o.ApiStatusCode.PERMISSION_NEW).setDiffType(o.ApiDiffType.PERMISSION_NA_TO_HAVE);if(""===a)return n.setStatusCode(o.ApiStatusCode.PERMISSION_DELETE).setDiffType(o.ApiDiffType.PERMISSION_HAVE_TO_NA);const s=new c.PermissionsProcessorHelper(e.permissionsCharMap).comparePermissions(i,a);return s.range===c.RangeChange.DOWN?n.setDiffType(o.ApiDiffType.PERMISSION_RANGE_SMALLER):s.range===c.RangeChange.UP?n.setDiffType(o.ApiDiffType.PERMISSION_RANGE_BIGGER):n.setDiffType(o.ApiDiffType.PERMISSION_RANGE_CHANGE)}static diffErrorCodes(e,t){const r=new o.DiffTypeInfo,n=e?e.getErrorCode().sort():[],i=t?t.getErrorCode().sort():[],a=new Set(n),s=new Set(i),c=new Set(i.concat(n)),l=n.toString(),u=i.toString(),d=[];if(r.setStatusCode(o.ApiStatusCode.ERRORCODE_CHANGES).setOldMessage(l).setNewMessage(u),u===l)return;if(0===n.length&&0!==i.length)return d.push(r.setStatusCode(o.ApiStatusCode.NEW_ERRORCODE).setDiffType(o.ApiDiffType.ERROR_CODE_NA_TO_HAVE)),d;const p=[],f=[];if(c.forEach((e=>{a.has(e)||p.push(e),s.has(e)||f.push(e)})),0!==p.length){const e=new o.DiffTypeInfo;e.setOldMessage("NA").setNewMessage(p.join()).setStatusCode(o.ApiStatusCode.NEW_ERRORCODE).setDiffType(o.ApiDiffType.ERROR_CODE_ADD),d.push(e)}if(0!==f.length){const e=new o.DiffTypeInfo;e.setOldMessage(f.join()).setNewMessage("NA").setStatusCode(o.ApiStatusCode.ERRORCODE_DELETE).setDiffType(o.ApiDiffType.ERROR_CODE_REDUCE),d.push(e)}return d}static diffSyscap(e,t){const r=new o.DiffTypeInfo,n=e?e.getSyscap():"",i=t?t.getSyscap():"";if(r.setStatusCode(o.ApiStatusCode.SYSCAP_CHANGES).setOldMessage(n).setNewMessage(i),i!==n)return""===n?r.setDiffType(o.ApiDiffType.SYSCAP_NA_TO_HAVE):""===i?r.setDiffType(o.ApiDiffType.SYSCAP_HAVE_TO_NA):r.setDiffType(o.ApiDiffType.SYSCAP_A_TO_B)}static diffDeprecated(e,t,r,n){const i=new o.DiffTypeInfo,a=e?e.getDeprecatedVersion():"-1",s=t?t.getDeprecatedVersion():"-1";if(i.setStatusCode(o.ApiStatusCode.DEPRECATED_CHNAGES).setOldMessage(a.toString()).setNewMessage(s.toString()),s!==a){if(n){if("-1"===a&&!r)return i.setDiffType(o.ApiDiffType.DEPRECATED_NOT_All);if("-1"===a&&r)return i.setDiffType(o.ApiDiffType.DEPRECATED_NA_TO_HAVE)}else{if("-1"===a)return i.setDiffType(o.ApiDiffType.DEPRECATED_NA_TO_HAVE);if("-1"===s)return i.setDiffType(o.ApiDiffType.DEPRECATED_HAVE_TO_NA)}return"-1"===s?i.setDiffType(o.ApiDiffType.DEPRECATED_HAVE_TO_NA):i.setDiffType(o.ApiDiffType.DEPRECATED_A_TO_B)}}}e.JsDocDiffHelper=t;class r{static diffDecorator(e,t,n){const i=r.setDecoratorsMap(e.getDecorators()),a=r.setDecoratorsMap(t.getDecorators());if(0!==a.size)if(0!==i.size)r.diffDecoratorInfo(i,a,e,t,n);else for(const i of a.keys())r.addNewDecoratorsInfo(i,e,t,n),a.delete(i);else for(const a of i.keys())r.addDeleteDecoratorsInfo(a,e,t,n)}static diffDecoratorInfo(e,t,n,i,a){const o=new Set;for(const s of e.keys()){const c=t.get(s),l=e.get(s);c?l&&c.join()===l.join()&&(t.delete(s),o.add(s)):(r.addDeleteDecoratorsInfo(s,n,i,a),o.add(s))}for(const e of t.keys())r.addNewDecoratorsInfo(e,n,i,a);for(const t of e.keys())o.has(t)||r.addDeleteDecoratorsInfo(t,n,i,a)}static setDecoratorsMap(e){const t=new Map;return e?(e.forEach((e=>{const r=e.getExpressionArguments();t.set(e.getExpression(),void 0===r?[]:r)})),t):t}static addDeleteDecoratorsInfo(t,r,n,i){const a=new o.DiffTypeInfo;a.setStatusCode(o.ApiStatusCode.DELETE_DECORATOR).setDiffType(o.ApiDiffType.DELETE_DECORATOR).setOldMessage(t).setNewMessage("");const s=e.wrapDiffInfo(r,n,a);i.push(s)}static addNewDecoratorsInfo(t,r,n,i){const a=new o.DiffTypeInfo;a.setStatusCode(o.ApiStatusCode.NEW_DECORATOR).setDiffType(o.ApiDiffType.NEW_DECORATOR).setOldMessage("").setNewMessage(t);const s=e.wrapDiffInfo(r,n,a);i.push(s)}}e.ApiDecoratorsDiffHelper=r;class n{static diffHistoricalJsDoc(t,r,n){const i=l.CommonFunctions.getCheckApiVersion().toString(),a=t.getJsDocText().split("*/"),s=r.getJsDocText().split("*/"),c=new o.DiffTypeInfo;if(t.getCurrentVersion()===i?a.splice(u.NumberConstant.DELETE_CURRENT_JS_DOC):a.splice(-1),r.getCurrentVersion()===i?s.splice(u.NumberConstant.DELETE_CURRENT_JS_DOC):s.splice(-1),a.length===s.length){for(let i=0;i<a.length;i++)if(a[i].replace(/\r\n|\n|\s+/g,"")!==s[i].replace(/\r\n|\n|\s+/g,"")){c.setDiffType(o.ApiDiffType.HISTORICAL_JSDOC_CHANGE);const i=e.wrapDiffInfo(t,r,c);n.push(i)}}else{c.setDiffType(o.ApiDiffType.HISTORICAL_JSDOC_CHANGE);const i=e.wrapDiffInfo(t,r,c);n.push(i)}}static diffHistoricalAPI(t,r,n){const i=l.CommonFunctions.getCheckApiVersion().toString(),a=t.getDefinedText(),s=r.getDefinedText(),c=new o.DiffTypeInfo;if(a!==s&&r.getCurrentVersion()!==i){c.setDiffType(o.ApiDiffType.HISTORICAL_API_CHANGE);const i=e.wrapDiffInfo(t,r,c);n.push(i)}}}e.ApiCheckHelper=n;class p{static diffNodeInfo(t,r,a,o){o&&(n.diffHistoricalJsDoc(t,r,a),n.diffHistoricalAPI(t,r,a));const s=t.getApiType(),c=r.getApiType();if(`${s}_${c}`!=`${i.ApiType.CONSTANT}_${i.ApiType.PROPERTY}`&&`${s}_${c}`!=`${i.ApiType.PROPERTY}_${i.ApiType.CONSTANT}`||p.diffConstant(t,r,a),t.getApiType()!==c)return;const l=e.apiNodeDiffMethod.get(c);l&&l(t,r,a)}static diffBaseType(t,r){const n=new o.DiffTypeInfo;if(t===r)return;if(n.setStatusCode(o.ApiStatusCode.TYPE_CHNAGES).setOldMessage(t).setNewMessage(r),""===t)return n.setDiffType(o.ApiDiffType.TYPE_RANGE_CHANGE);if(""===r)return n.setDiffType(o.ApiDiffType.TYPE_RANGE_CHANGE);const i=new c.PermissionsProcessorHelper(e.typeCharMap).comparePermissions(t,r);return i.range===c.RangeChange.DOWN?n.setDiffType(o.ApiDiffType.TYPE_RANGE_SMALLER):i.range===c.RangeChange.UP?n.setDiffType(o.ApiDiffType.TYPE_RANGE_BIGGER):n.setDiffType(o.ApiDiffType.TYPE_RANGE_CHANGE)}static diffMethod(t,r,n){e.methodDiffProcessors.forEach((i=>{const a=i(t,r);if(a)if(a instanceof Array)a.forEach((i=>{const a=e.wrapDiffInfo(t,r,i.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(a)}));else{const i=e.wrapDiffInfo(t,r,a.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(i)}}))}static diffTypeAliasReturnType(e,t){const r=new o.DiffTypeInfo,n=e.getReturnType(),i=t.getReturnType(),a=n.toString().replace(/\r|\n|\s+|'|"/g,""),s=i.toString().replace(/\r|\n|\s+|'|"/g,"");if(a!==s)return r.setOldMessage(a).setNewMessage(s),m(i,n)?r.setDiffType(o.ApiDiffType.TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD):m(n,i)?r.setDiffType(o.ApiDiffType.TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE):r.setDiffType(o.ApiDiffType.TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE)}static diffMethodReturnType(e,t){const r=new o.DiffTypeInfo,n=e.getReturnValue(),a=t.getApiType()===i.ApiType.TYPE_ALIAS?t.getReturnType():t.getReturnValue(),c=n.toString().replace(/\r|\n|\s+|'|"|>/g,""),l=a.toString().replace(/\r|\n|\s+|'|"|>/g,"");if(c!==l)return r.setOldMessage(n.toString()).setNewMessage(a.toString()),m(a,n)||s.StringUtils.hasSubstring(l,c)?r.setDiffType(o.ApiDiffType.FUNCTION_RETURN_TYPE_ADD):m(n,a)||s.StringUtils.hasSubstring(c,l)?r.setDiffType(o.ApiDiffType.FUNCTION_RETURN_TYPE_REDUCE):r.setDiffType(o.ApiDiffType.FUNCTION_RETURN_TYPE_CHANGE)}static getDiffMethodTypes(e){return e?{POS_CHANGE:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE,ADD_OPTIONAL_PARAM:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD,ADD_REQUIRED_PARAM:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD,REDUCE_PARAM:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_REDUCE,PARAM_TYPE_CHANGE:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE,PARAM_TYPE_ADD:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD,PARAM_TYPE_REDUCE:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE,PARAM_TO_UNREQUIRED:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED,PARAM_TO_REQUIRED:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED,PARAM_CHANGE:o.ApiDiffType.TYPE_ALIAS_FUNCTION_PARAM_CHANGE}:{POS_CHANGE:o.ApiDiffType.FUNCTION_PARAM_POS_CHANGE,ADD_OPTIONAL_PARAM:o.ApiDiffType.FUNCTION_PARAM_UNREQUIRED_ADD,ADD_REQUIRED_PARAM:o.ApiDiffType.FUNCTION_PARAM_REQUIRED_ADD,REDUCE_PARAM:o.ApiDiffType.FUNCTION_PARAM_REDUCE,PARAM_TYPE_CHANGE:o.ApiDiffType.FUNCTION_PARAM_TYPE_CHANGE,PARAM_TYPE_ADD:o.ApiDiffType.FUNCTION_PARAM_TYPE_ADD,PARAM_TYPE_REDUCE:o.ApiDiffType.FUNCTION_PARAM_TYPE_REDUCE,PARAM_TO_UNREQUIRED:o.ApiDiffType.FUNCTION_PARAM_TO_UNREQUIRED,PARAM_TO_REQUIRED:o.ApiDiffType.FUNCTION_PARAM_TO_REQUIRED,PARAM_CHANGE:o.ApiDiffType.FUNCTION_PARAM_CHANGE}}static diffMethodParams(e,t){const r=[],n="TypeAlias"===e.getApiType(),a=e.getApiType()===i.ApiType.TYPE_ALIAS?e.getParamInfos():e.getParams(),o=t.getApiType()===i.ApiType.TYPE_ALIAS?t.getParamInfos():t.getParams(),s=p.getDiffMethodTypes(n);return p.diffParamsPosition(a,o,r,s),p.diffNewOptionalParam(a,o,r,s),p.diffNewRequiredParam(a,o,r,s),p.diffReducedParam(a,o,r,s),p.diffParamTypeChange(a,o,r,s),p.diffParamChange(a,o,r,s),p.diffMethodParamChange(a,o,r,s),r}static diffMethodParamChange(e,t,r,n){const i=e.length,a=t.length;if(!i||!a)return;const s=[],c=[];for(let r=0;r<Math.max(i,a);r++){const n=t[r],i=e[r];n&&c.push(n.getApiName()),i&&s.push(i.getApiName())}const l=i-e.filter((e=>!c.includes(e.getApiName()))).length;if(l===i||l===a)return;let u=e,d=t;r.forEach((e=>{u=u.filter((t=>e.getOldMessage()!==t.getDefinedText())),d=d.filter((t=>e.getNewMessage()!==t.getDefinedText()))}));const p=_(u),f=_(d),m=new o.DiffTypeInfo;m.setDiffType(n.PARAM_CHANGE).setOldMessage(p).setNewMessage(f),r.push(m)}static diffParamsPosition(e,t,r,n){const i=e.length,a=t.length;if(i<=1||i!==a)return;var s;if(s=e,t.every(((e,t)=>{const r=s[t];return e.getApiName()===r.getApiName()})))return;if(!f(e,t))return;const c=_(e),l=_(t),u=new o.DiffTypeInfo;u.setDiffType(n.POS_CHANGE).setOldMessage(c).setNewMessage(l),r.push(u)}static diffNewOptionalParam(e,t,r,n){const i=e.length,a=t.length;if(0===a||i>=a)return;if(!f(t,e))return;const s=e.map((e=>e.getApiName())),c=t.filter((e=>{const t=e.getApiName();return!s.includes(t)&&!e.getIsRequired()}));if(!c.length)return;const l=_(c),u=new o.DiffTypeInfo;u.setOldMessage("").setDiffType(n.ADD_OPTIONAL_PARAM).setNewMessage(l),r.push(u)}static diffNewRequiredParam(e,t,r,n){const i=e.length,a=t.length;if(0===a||i>=a)return;if(!f(t,e))return;const s=e.map((e=>e.getApiName())),c=t.filter((e=>{const t=e.getApiName();return!s.includes(t)&&e.getIsRequired()}));if(!c.length)return;const l=_(c),u=new o.DiffTypeInfo;u.setDiffType(n.ADD_REQUIRED_PARAM).setOldMessage("").setNewMessage(l),r.push(u)}static diffReducedParam(e,t,r,n){const i=e.length,a=t.length;if(0===i||a>=i)return;const s=f(e,t);if(a>0&&!s)return;const c=t.map((e=>e.getApiName())),l=_(e.filter((e=>!c.includes(e.getApiName())))),u=new o.DiffTypeInfo;u.setDiffType(n.REDUCE_PARAM).setOldMessage(l).setNewMessage(""),r.push(u)}static diffParamChange(e,t,r,n){const i=e.length,a=t.length;if(!i||!a)return;const s=e.filter((e=>{const r=e.getApiName();return t.find((e=>e.getApiName()===r))}));s.length&&s.forEach(((e,i)=>{const a=e.getApiName(),s=t.find((e=>e.getApiName()===a));if(s.getIsRequired()!==e.getIsRequired()){const t=e.getDefinedText(),i=s.getDefinedText(),a=e.getIsRequired()?n.PARAM_TO_UNREQUIRED:n.PARAM_TO_REQUIRED,c=new o.DiffTypeInfo;c.setDiffType(a).setOldMessage(t).setNewMessage(i),r.push(c)}}))}static diffParamTypeChange(e,t,r,n){const i=e.length,a=t.length;if(!i||!a)return;const s=t.map((e=>e.getApiName())),c=e.filter((e=>s.includes(e.getApiName())));c.length&&c.forEach(((e,i)=>{const a=e.getType(),s=t.find((t=>t.getApiName()===e.getApiName())),c=s.getType();if(a.toString().replace(/\r|\n|\s+|'|"|,|;/g,"")===c.toString().replace(/\r|\n|\s+|'|"|,|;/g,""))return;let l=p.getParamDiffType(e,s,n);const u=e.getDefinedText(),d=s.getDefinedText(),f=new o.DiffTypeInfo;f.setDiffType(l).setOldMessage(u).setNewMessage(d),r.push(f)}))}static getParamDiffType(e,t,r){let n=g(e.getType(),t.getType(),r);if(e.getParamType()===d.default.SyntaxKind.TypeLiteral&&t.getParamType()===d.default.SyntaxKind.TypeReference){const r=e.getObjLocations(),i=t.getTypeLocations()[0];n=p.judgeIsCompatible(r,i)?o.ApiDiffType.PARAM_TYPE_CHANGE_COMPATIABLE:o.ApiDiffType.PARAM_TYPE_CHANGE_IN_COMPATIABLE}else e.getParamType()===d.default.SyntaxKind.FunctionType&&t.getParamType()===d.default.SyntaxKind.TypeReference&&(n=p.diffFunctionTypeNode(e,t)?o.ApiDiffType.PARAM_TYPE_CHANGE_COMPATIABLE:o.ApiDiffType.PARAM_TYPE_CHANGE_IN_COMPATIABLE);return n}static diffFunctionTypeNode(e,t){const r=e.getMethodApiInfo(),n=t.getTypeLocations()[0],a=[];if(!r||!n)return!1;if(n.getApiType()!==i.ApiType.TYPE_ALIAS)return!1;a.push(...p.diffMethodParams(r,n));const s=p.diffMethodReturnType(r,n);s&&a.push(s);let c=!0;return a.forEach((e=>{o.incompatibleApiDiffTypes.has(e.getDiffType())&&(c=!1)})),c}static diffTypeLiteral(n,i){const a=p.setmethodInfoMap(n),s=p.setmethodInfoMap(i),c=[];return a.forEach(((n,i)=>{const a=s.get(i);a?(t.diffJsDocInfo(n,a,c),r.diffDecorator(n,a,c),p.diffNodeInfo(n,a,c),s.delete(i)):c.push(e.wrapDiffInfo(n,void 0,new o.DiffTypeInfo(o.ApiStatusCode.DELETE,o.ApiDiffType.REDUCE,n.getDefinedText())))})),s.forEach((t=>{c.push(e.wrapDiffInfo(void 0,t,new o.DiffTypeInfo(o.ApiStatusCode.NEW_API,o.ApiDiffType.ADD,void 0,t.getDefinedText())))})),c}static judgeIsCompatible(e,t){if(!t)return!1;let r=[];t.getApiType()===i.ApiType.TYPE_ALIAS?r=t.getTypeLiteralApiInfos():(t.getApiType()===i.ApiType.INTERFACE||t.getApiType()===i.ApiType.CLASS)&&(r=t.getChildApis());const n=p.diffTypeLiteral(e,r);let a=!0;return n.forEach((e=>{e.getIsCompatible()||(a=!1)})),a}static setmethodInfoMap(e){const t=new Map;return e.forEach((e=>{t.set(e.getApiName(),e)})),t}static diffMethodParamName(e,t){if(e.getApiName()!==t.getApiName())return o.ApiDiffType.FUNCTION_PARAM_NAME_CHANGE}static diffMethodParamType(e,t){const r=e.getType(),n=t.getType(),i=r.toString().replace(/\r|\n|\s+|'|"/g,"").replace(/\|/g,"\\|"),a=n.toString().replace(/\r|\n|\s+|'|"/g,"").replace(/\|/g,"\\|");if(i!==a)return s.StringUtils.hasSubstring(a,i)?o.ApiDiffType.FUNCTION_PARAM_TYPE_ADD:s.StringUtils.hasSubstring(i,a)?o.ApiDiffType.FUNCTION_PARAM_TYPE_REDUCE:o.ApiDiffType.FUNCTION_PARAM_TYPE_CHANGE}static diffMethodParamRequired(e,t){const r=e.getIsRequired(),n=t.getIsRequired();if(r!==n)return n?o.ApiDiffType.FUNCTION_PARAM_TO_REQUIRED:o.ApiDiffType.FUNCTION_PARAM_TO_UNREQUIRED}static diffClass(t,r,n){const i=new o.DiffTypeInfo,a=t.getApiName(),s=r.getApiName();if(a===s)return;i.setStatusCode(o.ApiStatusCode.CLASS_CHANGES).setDiffType(o.ApiDiffType.API_NAME_CHANGE).setOldMessage(a).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i);n.push(c)}static diffInterface(t,r,n){const i=new o.DiffTypeInfo,a=t.getApiName(),s=r.getApiName();if(a===s)return;i.setStatusCode(o.ApiStatusCode.CLASS_CHANGES).setDiffType(o.ApiDiffType.API_NAME_CHANGE).setOldMessage(a).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i);n.push(c)}static diffNamespace(t,r,n){const i=new o.DiffTypeInfo,a=t.getApiName(),s=r.getApiName();if(a===s)return;i.setStatusCode(o.ApiStatusCode.CLASS_CHANGES).setDiffType(o.ApiDiffType.API_NAME_CHANGE).setOldMessage(a).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i);n.push(c)}static diffProperty(t,r,n){e.propertyDiffProcessors.forEach((i=>{const a=i(t,r);if(!a)return;const s=e.wrapDiffInfo(t,r,a.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(s)}))}static diffPropertyType(e,t){const r=new o.DiffTypeInfo,n=e.getType(),i=t.getType(),a=e.getIsReadOnly(),c=t.getIsReadOnly(),l=n.toString().replace(/\r|\n|\s+|\>|\}/g,""),u=i.toString().replace(/\r|\n|\s+|\>|\}/g,""),p=t.getTypeKind()===d.default.SyntaxKind.UnionType;if(l!==u)return r.setOldMessage(n.toString()).setNewMessage(i.toString()),l.replace(/\,|\;/g,"")===u.replace(/\,|\;/g,"")?r.setDiffType(o.ApiDiffType.PROPERTY_TYPE_SIGN_CHANGE):p&&m(n,i)?r.setDiffType(a?o.ApiDiffType.PROPERTY_READONLY_REDUCE:o.ApiDiffType.PROPERTY_WRITABLE_REDUCE):p&&m(i,n)||!p&&s.StringUtils.hasSubstring(u,l)?r.setDiffType(c?o.ApiDiffType.PROPERTY_READONLY_ADD:o.ApiDiffType.PROPERTY_WRITABLE_ADD):!p&&s.StringUtils.hasSubstring(l,u)?r.setDiffType(a?o.ApiDiffType.PROPERTY_READONLY_REDUCE:o.ApiDiffType.PROPERTY_WRITABLE_REDUCE):r.setDiffType(o.ApiDiffType.PROPERTY_TYPE_CHANGE)}static diffPropertyRequired(e,t){const r=new o.DiffTypeInfo,n=e.getApiName(),i=t.getApiName(),a=e.getIsReadOnly(),s=new Map([["_true_false_true",o.ApiDiffType.PROPERTY_READONLY_TO_UNREQUIRED],["_false_true_true",o.ApiDiffType.PROPERTY_READONLY_TO_REQUIRED],["_true_false_false",o.ApiDiffType.PROPERTY_WRITABLE_TO_UNREQUIRED],["_false_true_false",o.ApiDiffType.PROPERTY_WRITABLE_TO_REQUIRED]]),c=e.getIsRequired(),l=t.getIsRequired();if(n===i&&c===l)return;r.setOldMessage(e.getDefinedText()).setNewMessage(t.getDefinedText());const u=`_${!!c}_${!!l}_${!!a}`,d=s.get(u);return r.setDiffType(d)}static diffConstant(t,r,n){e.constantDiffProcessors.forEach((i=>{const a=i(t,r);if(!a)return;const s=e.wrapDiffInfo(t,r,a.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(s)}))}static diffConstantValue(e,t){const r=new o.DiffTypeInfo,n=e.getApiType()===i.ApiType.CONSTANT?e.getValue():e.getType().join(),a=t.getApiType()===i.ApiType.CONSTANT?t.getValue():t.getType().join();if(n!==a)return r.setOldMessage(n).setNewMessage(a),r.setDiffType(o.ApiDiffType.CONSTANT_VALUE_CHANGE)}static diffTypeAlias(t,r,n){e.typeAliasDiffProcessors.forEach((i=>{const a=i(t,r);if(!a)return;const o=e.wrapDiffInfo(t,r,a);n.push(o)}));const i=t,a=r;if(i.getTypeIsFunction()){const i=p.diffMethodParams(t,r),a=p.diffTypeAliasReturnType(t,r);a&&i.push(a),i.forEach((i=>{const a=e.wrapDiffInfo(t,r,i.setStatusCode(o.ApiStatusCode.TYPE_CHNAGES));n.push(a)}))}if(i.getTypeIsObject()&&a.getTypeIsObject()){const e=i.getTypeLiteralApiInfos(),t=a.getTypeLiteralApiInfos(),r=p.diffTypeLiteral(e,t);n.push(...r)}}static diffTypeAliasType(e,t){const r=new o.DiffTypeInfo,n=e.getType(),i=t.getType(),a=n.toString(),s=i.toString();if(a.replace(/\r|\n|\s+|'|"/g,"")===s.replace(/\r|\n|\s+|'|"/g,""))return;if(e.getTypeIsObject()&&t.getTypeIsObject())return;if(e.getTypeIsFunction())return;const c=g(n,i,{PARAM_TYPE_CHANGE:o.ApiDiffType.TYPE_ALIAS_CHANGE,PARAM_TYPE_ADD:o.ApiDiffType.TYPE_ALIAS_ADD,PARAM_TYPE_REDUCE:o.ApiDiffType.TYPE_ALIAS_REDUCE});return r.setOldMessage(n.join(" | ")).setNewMessage(i.join(" | ")).setStatusCode(o.ApiStatusCode.TYPE_CHNAGES).setDiffType(c),r}static diffEnum(t,r,n){const i=new o.DiffTypeInfo,a=t.getApiName(),s=r.getApiName();if(a===s)return;i.setDiffType(o.ApiDiffType.API_NAME_CHANGE).setOldMessage(a).setNewMessage(s);const c=e.wrapDiffInfo(t,r,i.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(c)}static diffEnumMember(t,r,n){e.enumDiffProcessors.forEach((i=>{const a=i(t,r);if(!a)return;const s=e.wrapDiffInfo(t,r,a.setStatusCode(o.ApiStatusCode.FUNCTION_CHANGES));n.push(s)}))}static diffEnumMemberValue(e,t){const r=new o.DiffTypeInfo,n=e.getValue(),i=t.getValue();if(n!==i)return r.setOldMessage(n).setNewMessage(i),r.setDiffType(o.ApiDiffType.ENUM_MEMBER_VALUE_CHANGE)}static diffApiName(e,t){const r=new o.DiffTypeInfo,n=e.getApiName(),i=t.getApiName();if(n!==i)return r.setOldMessage(n).setNewMessage(i),r.setDiffType(o.ApiDiffType.API_NAME_CHANGE)}static diffSingleParamType(e,t,r){const n=e.toString().replace(/\r|\n|\s+|'|"|>/g,"").replace(/\|/g,"\\|"),i=t.toString().replace(/\r|\n|\s+|'|"|>/g,"").replace(/\|/g,"\\|");return s.StringUtils.hasSubstring(i,n)?r.PARAM_TYPE_ADD:s.StringUtils.hasSubstring(n,i)?r.PARAM_TYPE_REDUCE:r.PARAM_TYPE_CHANGE}}function f(e,t){return t.every((t=>{const r=t.getApiName(),n=e.find((e=>e.getApiName()===r));return n&&n.getApiType()===t.getApiType()}))}function m(e,t){return t.every((t=>e.includes(t)))}function g(e,t,r){const n=e.length,i=t.length;switch(n-i){case 0:return p.diffSingleParamType(e,t,r);case-i:return r.PARAM_TYPE_ADD;case n:return r.PARAM_TYPE_REDUCE;default:return n>i?t.every((t=>e.includes(t)))?r.PARAM_TYPE_REDUCE:r.PARAM_TYPE_CHANGE:e.every((e=>t.includes(e)))?r.PARAM_TYPE_ADD:r.PARAM_TYPE_CHANGE}}function _(e){return e.length<=1?e[0].getDefinedText():e.reduce(((t,r,n)=>{let i=r.getDefinedText();return n!==e.length-1&&(i+=", "),t+i}),"")}e.ApiNodeDiffHelper=p,e.wrapDiffInfo=function(e=void 0,t=void 0,r,n){const a=t,s=t,c=t&&t.getParentApiType()?t.getParentApiType():"";let l=!0;!n&&o.parentApiTypeSet.has(c)&&r.getDiffType()===o.ApiDiffType.ADD&&(t?.getApiType()===i.ApiType.METHOD&&s.getIsRequired()||t?.getApiType()===i.ApiType.PROPERTY&&a.getIsRequired())&&(l=!1);const u=new o.BasicDiffInfo,d=r.getDiffType(),p=e,f=t,m=p?.getLastJsDocInfo()?.getIsSystemApi(),g=f?.getLastJsDocInfo()?.getIsSystemApi();let _=f?.getIsSameNameFunction();return t||(_=p?.getIsSameNameFunction()),e&&function(e,t){const r=e,n=r.getLastJsDocInfo?.()?.getKit?.();n&&t.setOldKitInfo(n);t.setOldApiDefinedText(e.getDefinedText()).setApiType(e.getApiType()).setOldApiName(e.getApiName()).setOldDtsName(e.getFilePath()).setOldHierarchicalRelations(e.getHierarchicalRelations()).setOldPos(e.getPos()).setOldSyscapField(e.getSyscap())}(e,u),t&&function(e,t){const r=e,n=r.getLastJsDocInfo?.()?.getKit?.();n&&t.setNewKitInfo(n);t.setNewApiDefinedText(e.getDefinedText()).setApiType(e.getApiType()).setNewApiName(e.getApiName()).setNewDtsName(e.getFilePath()).setNewHierarchicalRelations(e.getHierarchicalRelations()).setNewPos(e.getPos()).setNewSyscapField(e.getSyscap())}(t,u),u.setDiffType(d).setDiffMessage(o.diffMap.get(d)).setStatusCode(r.getStatusCode()).setIsCompatible(!!l&&!o.incompatibleApiDiffTypes.has(d)).setOldDescription(r.getOldMessage()).setNewDescription(r.getNewMessage()).setIsSystemapi(g||m).setIsSameNameFunction(_),u},e.apiNodeDiffMethod=new Map([[i.ApiType.PROPERTY,p.diffProperty],[i.ApiType.CLASS,p.diffClass],[i.ApiType.INTERFACE,p.diffInterface],[i.ApiType.NAMESPACE,p.diffNamespace],[i.ApiType.METHOD,p.diffMethod],[i.ApiType.CONSTANT,p.diffConstant],[i.ApiType.ENUM,p.diffEnum],[i.ApiType.ENUM_VALUE,p.diffEnumMember],[i.ApiType.TYPE_ALIAS,p.diffTypeAlias]]),e.jsDocDiffProcessors=[t.diffSyscap,t.diffDeprecated,t.diffPermissions,t.diffIsForm,t.diffIsCrossPlatForm,t.diffModelLimitation,t.diffIsSystemApi,t.diffAtomicService],e.enumDiffProcessors=[p.diffApiName,p.diffEnumMemberValue],e.typeAliasDiffProcessors=[p.diffApiName,p.diffTypeAliasType],e.constantDiffProcessors=[p.diffApiName,p.diffConstantValue],e.propertyDiffProcessors=[p.diffApiName,p.diffPropertyType,p.diffPropertyRequired],e.methodDiffProcessors=[p.diffApiName,p.diffMethodReturnType,p.diffMethodParams]}(t.DiffProcessorHelper||(t.DiffProcessorHelper={}))},10582:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.RangeChange=exports.PermissionsProcessorHelper=void 0;const logUtil_1=__webpack_require__(42034),Constant_1=__webpack_require__(64158),PATT={GET_NOT_TRANSFERCHAR:/(?<!\\)([\*|\.|\?|\+|\^|\$|\||\/|\[|\]|\(|\)|\{|\}])/g,VARIABLE_START:"(?<=\\b|\\s|\\*|\\.|\\?|\\+|\\^|\\$|\\||\\/|\\[|\\]|\\(|\\)|\\{|\\})",VARIABLE_END:"(?=\\b|\\s|\\*|\\.|\\?|\\+|\\^|\\$|\\||\\/|\\[|\\]|\\(|\\)|\\{|\\})",SPILT_CHAR_START:"(\\b|\\s)",SPILT_CHAR_END:"(\\b|\\s)"};class PermissionsProcessorHelper{constructor(e){this.charMap=new Map([["and",{splitchar:"&",transferchar:"&"}],["or",{splitchar:"\\|",transferchar:"|"}],["eq",{splitchar:"=",transferchar:"=="}],["LE",{splitchar:"->",transferchar:"<="}],["RE",{splitchar:"<-",transferchar:">="}],["not",{splitchar:"-",transferchar:"!"}],["lcurve",{splitchar:"\\(",transferchar:"("}],["rcurve",{splitchar:"\\)",transferchar:")"}]]),this.splitchar=["&","\\|","->","-","=","\\(","\\)"],this.transferchar=["&","|","<=","!","==","(",")"],this.variables=[];let t=this.charMap;return e&&(t=new Map([...t,...e]),this.splitchar=[],this.transferchar=[],t.forEach(((e,t)=>{let r=e.splitchar;r instanceof RegExp||(r=r.replace(PATT.GET_NOT_TRANSFERCHAR,"\\$1"),r!==e.splitchar&&logUtil_1.LogUtil.i("PermissionsProcessorHelper",`传入的表达式有问题,已经自行修改! ${t}中的splitchar为${e.splitchar},修改为${r}`)),this.splitchar.push(r),this.transferchar.push(e.transferchar)}))),this}getvariables(){return this.variables}comparePermissions(e,t){const r={range:RangeChange.NO,situationDown:[],situationUp:[],variables:[]},n=this.calculateParadigmDown(e,t),i=this.calculateParadigmUp(e,t);return r.variables=this.variables,n.range!==RangeChange.NO&&(r.situationDown=n.situationDown,r.range=RangeChange.DOWN),i.range!==RangeChange.NO&&(r.situationUp=i.situationUp,r.range=r.range===RangeChange.NO?RangeChange.UP:RangeChange.CHANGE),r}calculateParadigmDown(e,t){const r={range:RangeChange.NO,situationDown:[],situationUp:[],variables:[]},n=this.charMap.get("LE");if(!n)return r;const i=`(${e}) ${n.splitchar} (${t})`,a=this.calculateParadigm(i);return r.variables=this.variables,a.fail.length>0&&(r.range=RangeChange.DOWN,r.situationDown=a.fail.map((e=>Number(e).toString(Constant_1.NumberConstant.BINARY_SYSTEM).padStart(this.variables.length,"0").split("").map((e=>Boolean(Number(e))))))),r}calculateParadigmUp(e,t){const r={range:RangeChange.NO,situationDown:[],situationUp:[],variables:[]},n=this.charMap.get("RE");if(!n)return r;const i=`(${e}) ${n.splitchar} (${t})`,a=this.calculateParadigm(i);return r.variables=this.variables,a.fail.length>0&&(r.range=RangeChange.UP,r.situationUp=a.fail.map((e=>Number(e).toString(Constant_1.NumberConstant.BINARY_SYSTEM).padStart(this.variables.length,"0").split("").map((e=>Boolean(Number(e))))))),r}calculateParadigm(e){const t=this.findVariables(e);this.variables=t,e=this.formatten(e);const r=this.variables.length,n=PermissionsProcessorHelper.getAllState(r),i=this.calculate(e,r,n);return this.processValues(i)}findVariables(e){this.splitchar.forEach((t=>{const r=new RegExp(t,"g");e=e.replace(r," ")}));const t=new Set(e.split(" "));t.delete("");return[...t].sort(((e,t)=>e.length===t.length?e<t?-1:1:e.length<t.length?1:-1))}formatten(e){return this.splitchar.forEach(((t,r)=>{t instanceof RegExp||(t=new RegExp(PATT.SPILT_CHAR_START+t+PATT.SPILT_CHAR_END,"g")),e=e.replace(t,this.transferchar[r])})),e}static getAllState(e){const t=[];for(let r=0;r<Constant_1.NumberConstant.BINARY_SYSTEM**e;r++)t.push(Number(r).toString(Constant_1.NumberConstant.BINARY_SYSTEM).padStart(e,"0").split(""));return t}calculate(str,variablesLen,states){const statesLen=states.length,values=[];let outError=!0;for(let i=0;i<statesLen;i++){const state=states[i];let modifyStr=str;for(let e=0;e<variablesLen;e++){let t=this.variables[e];t=t.replace(PATT.GET_NOT_TRANSFERCHAR,"\\$1");const r=new RegExp(PATT.VARIABLE_START+t+PATT.VARIABLE_END,"g");modifyStr=modifyStr.replace(r,state[e])}try{values.push(eval(modifyStr))}catch(e){outError&&(outError=!outError,logUtil_1.LogUtil.e("PermissionsProcessor.calculate",`error logical expression: ${str}`),values.push(0))}}return values}processValues(e){const t={pass:[],fail:[]};for(let r=0;r<e.length;r++){e[r]?t.pass.push(r):t.fail.push(r)}return t}}var RangeChange;exports.PermissionsProcessorHelper=PermissionsProcessorHelper,PermissionsProcessorHelper.NEED_TRANSFER_CHAR=["*",".","?","+","^","$","|","/","[","]","(",")","{","}"],function(e){e.DOWN="down",e.UP="up",e.NO="no",e.CHANGE="change"}(RangeChange=exports.RangeChange||(exports.RangeChange={}))},550:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.diffJsdocMethod=t.DiffTagInfoHelper=t.DiffHelper=void 0;const i=n(r(55423)),a=r(64158),o=r(19503),s=r(51626),c=r(83317),l=r(18789),u=r(51719),d=r(5391),p=r(59062),f=r(19503),m=r(72161),g=r(60172);class _{static diffSDK(e,t,r,n){const i=[],a=_.getApiLocations(e,n),o=_.getApiLocations(t,n);_.diffKit(e,t,i);const l=new Set(Array.from(e.keys()));for(const l of a.keys()){const d=a.get(l),p=c.Parser.getApiInfo(d,e,r);if(!o.has(l)){p.forEach((e=>{i.push(u.DiffProcessorHelper.wrapDiffInfo(e,void 0,new s.DiffTypeInfo(s.ApiStatusCode.DELETE,s.ApiDiffType.REDUCE,e.getDefinedText())))}));continue}const f=c.Parser.getApiInfo(d,t,r);_.diffApis(p,f,i,r,n),o.delete(l)}for(const e of o.keys()){const n=o.get(e),d=c.Parser.getApiInfo(n,t,r),p=n.slice(0,-1);d.forEach((e=>{let t=!1;l.has(e.getFilePath())&&a.get(p.join())||(t=!0),i.push(u.DiffProcessorHelper.wrapDiffInfo(void 0,e,new s.DiffTypeInfo(s.ApiStatusCode.NEW_API,s.ApiDiffType.ADD,void 0,e.getDefinedText()),t))}))}return i}static diffKit(e,t,r){for(const n of e.keys()){const i=_.getSourceFileInfo(e.get(n));i?.setSyscap(_.getSyscapField(i));const a=i?.getLastJsDocInfo()?.getKit();if(t.get(n)||"NA"===a){if(t.get(n)){const e=_.getSourceFileInfo(t.get(n)),o=e?.getLastJsDocInfo()?.getKit();a!==o&&r.push(u.DiffProcessorHelper.wrapDiffInfo(i,e,new s.DiffTypeInfo(s.ApiStatusCode.KIT_CHANGE,_.getKitDiffType(a,o),a,o)))}}else r.push(u.DiffProcessorHelper.wrapDiffInfo(i,void 0,new s.DiffTypeInfo(s.ApiStatusCode.KIT_CHANGE,s.ApiDiffType.KIT_HAVE_TO_NA,a,"NA")))}for(const n of t.keys()){const i=_.getSourceFileInfo(t.get(n)),a=i?.getLastJsDocInfo()?.getKit();e.get(n)||"NA"===a||r.push(u.DiffProcessorHelper.wrapDiffInfo(void 0,i,new s.DiffTypeInfo(s.ApiStatusCode.KIT_CHANGE,s.ApiDiffType.KIT_NA_TO_HAVE,"NA",a)))}}static getKitDiffType(e,t){return"NA"===e&&""===t?s.ApiDiffType.KIT_NA_TO_HAVE:""===e&&"NA"===t?s.ApiDiffType.KIT_HAVE_TO_NA:"NA"===e||""===e?s.ApiDiffType.KIT_NA_TO_HAVE:"NA"===t||""===t?s.ApiDiffType.KIT_HAVE_TO_NA:s.ApiDiffType.KIT_CHANGE}static getSourceFileInfo(e){if(!e)return;let t=[];for(const r of e.keys())r===a.StringConstant.SELF&&(t=e.get(r));return t[0]}static judgeIsSameNameFunction(e){let t=!1;return e.length>1&&e[0].getApiType()===o.ApiType.METHOD&&(t=!0),t}static diffApis(e,t,r,n,i){const a=_.getDiffSet(e,t),o=a[0],c=a[1];0!==o.size?0!==c.size?_.diffChangeApi(e,t,r,i):o.forEach((e=>{r.push(u.DiffProcessorHelper.wrapDiffInfo(e,void 0,new s.DiffTypeInfo(s.ApiStatusCode.DELETE,s.ApiDiffType.REDUCE,e.getDefinedText(),void 0)))})):c.forEach((e=>{r.push(u.DiffProcessorHelper.wrapDiffInfo(void 0,e,new s.DiffTypeInfo(s.ApiStatusCode.NEW_API,s.ApiDiffType.ADD,void 0,e.getDefinedText())))}))}static diffChangeApi(e,t,r,n){if(1===e.length&&e.length===t.length)u.DiffProcessorHelper.JsDocDiffHelper.diffJsDocInfo(e[0],t[0],r),u.DiffProcessorHelper.ApiDecoratorsDiffHelper.diffDecorator(e[0],t[0],r),u.DiffProcessorHelper.ApiNodeDiffHelper.diffNodeInfo(e[0],t[0],r,n);else{const i=_.setmethodInfoMap(t),a=_.setmethodInfoMap(e);e.forEach((e=>{const t=i.get(e.getDefinedText().replace(/\r|\n|\s+|,|;/g,""));t&&(u.DiffProcessorHelper.JsDocDiffHelper.diffJsDocInfo(e,t,r),u.DiffProcessorHelper.ApiDecoratorsDiffHelper.diffDecorator(e,t,r),i.delete(e.getDefinedText().replace(/\r|\n|\s+|,|;/g,"")),a.delete(e.getDefinedText().replace(/\r|\n|\s+|,|;/g,"")))}));for(const e of i.values()){1===e.getJsDocInfos().length&&(r.push(u.DiffProcessorHelper.wrapDiffInfo(void 0,e,new s.DiffTypeInfo(s.ApiStatusCode.NEW_API,s.ApiDiffType.NEW_SAME_NAME_FUNCTION,void 0,e.getDefinedText()))),i.delete(e.getDefinedText().replace(/\r|\n|\s+|,|;/g,"")))}if(1===a.size&&1===i.size){const e=a.entries().next().value[1],t=i.entries().next().value[1];u.DiffProcessorHelper.JsDocDiffHelper.diffJsDocInfo(e,t,r),u.DiffProcessorHelper.ApiDecoratorsDiffHelper.diffDecorator(e,t,r),u.DiffProcessorHelper.ApiNodeDiffHelper.diffNodeInfo(e,t,r,n)}else _.diffSameNameFunction(a,i,r,n)}}static diffSameNameFunction(e,t,r,n){for(const i of t.values()){const a=i.getPenultimateJsDocInfo();for(const o of e.values()){const s=o.getLastJsDocInfo();_.diffJsDoc(a,s)&&(u.DiffProcessorHelper.ApiNodeDiffHelper.diffNodeInfo(o,i,r,n),e.delete(o.getDefinedText().replace(/\r|\n|\s+|,|;/g,"")),t.delete(i.getDefinedText().replace(/\r|\n|\s+|,|;/g,"")))}}for(const e of t.values())r.push(u.DiffProcessorHelper.wrapDiffInfo(void 0,e,new s.DiffTypeInfo(s.ApiStatusCode.NEW_API,s.ApiDiffType.NEW_SAME_NAME_FUNCTION,void 0,e.getDefinedText())));for(const t of e.values())r.push(u.DiffProcessorHelper.wrapDiffInfo(t,void 0,new s.DiffTypeInfo(s.ApiStatusCode.DELETE,s.ApiDiffType.REDUCE_SAME_NAME_FUNCTION,t.getDefinedText(),void 0)))}static removeApiInfo(e){if(_.cleanApiInfo(e),!o.containerApiTypes.has(e.getApiType()))return;e.getChildApis().forEach((e=>{_.removeApiInfo(e)}))}static cleanApiInfo(e){e&&(e.setParentApi(void 0),e.removeNode(),(e instanceof o.MethodInfo||e instanceof o.PropertyInfo)&&(_.cleanChildrenApiInfo(e.getObjLocations()),_.cleanChildrenApiInfo(e.getTypeLocations()),e instanceof o.MethodInfo&&e.getParams().forEach((e=>{_.cleanChildrenApiInfo(e.getObjLocations()),_.cleanChildrenApiInfo(e.getTypeLocations()),_.cleanApiInfo(e.getMethodApiInfo())}))),e instanceof o.TypeAliasInfo&&(_.cleanChildrenApiInfo(e.getTypeLiteralApiInfos()),e.getParamInfos().forEach((e=>{_.cleanChildrenApiInfo(e.getObjLocations()),_.cleanChildrenApiInfo(e.getTypeLocations()),_.cleanApiInfo(e.getMethodApiInfo())}))))}static cleanChildrenApiInfo(e){e&&e.forEach((e=>{_.processApiInfos(e)}))}static processApiInfos(e){if(!e)return;if(_.cleanApiInfo(e),!o.containerApiTypes.has(e.getApiType()))return;e.getChildApis().forEach((e=>{_.processApiInfos(e)}))}static diffJsDoc(e,r){const n=new Set,i=h.diffParamTagInfo(r,e)&&h.diffReturnsTagInfo(r,e);return e?.getTags()?.forEach((i=>{const a=t.diffJsdocMethod.get(i.tag);a&&n.add(a(r,e))})),!(1!==n.size||!n.has(!0))||!!(n.size>1&&i)}static judgeIsAllDeprecated(e){let t=!0;return e.forEach((e=>{const r=e.getLastJsDocInfo()?.getDeprecatedVersion();"-1"!==r&&r||(t=!1)})),t}static handleDeprecatedVersion(e){let t=!0;e.forEach((e=>{const r=e.getLastJsDocInfo()?.getDeprecatedVersion();"-1"!==r&&r||(t=!1)})),t||e.forEach((e=>{e.getLastJsDocInfo()?.setDeprecatedVersion("-1")}))}static joinApiText(e){const t=[];for(const r of e.keys())t.push(r);return t.join(" #&# ")}static setmethodInfoMap(e){const t=new Map;return e.forEach((e=>{t.set(e.getDefinedText().replace(/\r|\n|\s+|,|;/g,""),e)})),t}static getDiffSet(e,t){const r=new Map,n=new Map;_.setApiInfoMap(r,e),_.setApiInfoMap(n,t);const i=new Map;r.forEach(((e,t)=>{n.has(t)||i.set(t,e)}));const a=new Map;return n.forEach(((e,t)=>{r.has(t)||a.set(t,e)})),[i,a]}static setApiInfoMap(e,t){t.forEach((t=>{const r=`${t.getDefinedText()}#${t.getJsDocText()}#${JSON.stringify(t.getDecorators())}`;e.set(r,t)}))}static getApiLocations(e,t){const r=new Map;for(const n of e.keys()){const i=0,a=e.get(n);_.processFileApiMap(a,r,i,t)}return r}static processFileApiMap(e,t,r,n){for(const i of e.keys()){if(i===a.StringConstant.SELF)continue;e.get(i).get(a.StringConstant.SELF).forEach((e=>{_.processApiInfo(e,t,r,n),r++}))}}static deleteUselessJsdoc(e){const t=e.getJsDocText().split("*/"),r=t;return r[1]&&m.StringUtils.hasSubstring(r[1],g.CommentHelper.fileTag)&&t.splice(1,1),r[0]&&m.StringUtils.hasSubstring(r[0],g.CommentHelper.fileTag)&&t.splice(0,1),r[0]&&m.StringUtils.hasSubstring(r[0],g.CommentHelper.licenseKeyword)&&t.splice(0,1),t.join("*/")}static processApiInfo(e,t,r,n){const i=e.getNode();if(n){const t=i?.getFullText().replace(i.getText(),"");t&&e.setJsDocText(t)}if(0===r&&e.getParentApiType()===o.ApiType.SOURCE_FILE){const t=_.deleteUselessJsdoc(e);e.setJsDocText(t)}if(e.setSyscap(_.getSyscapField(e)),!l.apiStatisticsType.has(e.getApiType()))return;if("constructor"===e.getApiName())return;const a=e,s=a.getHierarchicalRelations();if(t.set(s.toString(),s),!o.containerApiTypes.has(a.getApiType()))return;a.getChildApis().forEach((e=>{_.processApiInfo(e,t,1,n)}))}static getSyscapField(e){if(e.getApiType()===o.ApiType.SOURCE_FILE){const t=e.getNode()?.getFullText();let r="";return/\@[S|s][Y|y][S|s][C|c][A|a][P|p]\s*((\w|\.|\/|\{|\@|\}|\s)+)/g.test(t)&&t.replace(/\@[S|s][Y|y][S|s][C|c][A|a][P|p]\s*((\w|\.|\/|\{|\@|\}|\s)+)/g,((e,t)=>(r=e.replace(/\@[S|s][Y|y][S|s][C|c][A|a][P|p]/g,"").trim(),r))),d.FunctionUtils.handleSyscap(r)}if(f.notJsDocApiTypes.has(e.getApiType()))return"";const t=e,r=t.getLastJsDocInfo();if(!r)return _.searchSyscapFieldInParent(t);let n=r?.getSyscap();return n?n?d.FunctionUtils.handleSyscap(n):"":_.searchSyscapFieldInParent(t)}static searchSyscapFieldInParent(e){let t=e,r="";const n=t.getNode();for(;n&&t&&!i.default.isSourceFile(n);){if(r=t.getSyscap(),r)return r;t=t.getParentApi()}return r}}t.DiffHelper=_;class h{static diffSyscapTagInfo(e,t){return e?.getSyscap()===t?.getSyscap()}static diffSinceTagInfo(e,t){return e?.getSince()===t?.getSince()}static diffFormTagInfo(e,t){return e?.getIsForm()===t?.getIsForm()}static diffCrossPlatFromTagInfo(e,t){return e?.getIsCrossPlatForm()===t?.getIsCrossPlatForm()}static diffSystemApiTagInfo(e,t){return e?.getIsSystemApi()===t?.getIsSystemApi()}static diffModelTagInfo(e,t){return e?.getModelLimitation()===t?.getModelLimitation()}static diffDeprecatedTagInfo(e,t){return e?.getDeprecatedVersion()===t?.getDeprecatedVersion()}static diffUseinsteadTagInfo(e,t){return e?.getUseinstead()===t?.getUseinstead()}static diffPermissionTagInfo(e,t){return e?.getPermission()===t?.getPermission()}static diffThrowsTagInfo(e,t){return e?.getErrorCode().sort().join()===t?.getErrorCode().sort().join()}static diffAtomicServiceTagInfo(e,t){return e?.getIsAtomicService()===t?.getIsAtomicService()}static diffParamTagInfo(e,t){const r=[],n=[];return e?.getTags()?.forEach((e=>{e.tag===p.Comment.JsDocTag.PARAM&&r.push(`${e.name}#${e.type}`)})),t?.getTags()?.forEach((e=>{e.tag===p.Comment.JsDocTag.PARAM&&n.push(`${e.name}#${e.type}`)})),r.join()===n.join()}static diffReturnsTagInfo(e,t){let r="";return e?.getTags()?.forEach((e=>{e.tag===p.Comment.JsDocTag.RETURNS&&(r=e.type)})),t?.getTags()?.forEach((e=>{e.tag===p.Comment.JsDocTag.PARAM&&(r=e.type)})),r==r}}t.DiffTagInfoHelper=h,t.diffJsdocMethod=new Map([[p.Comment.JsDocTag.SYSCAP,h.diffSyscapTagInfo],[p.Comment.JsDocTag.SINCE,h.diffSinceTagInfo],[p.Comment.JsDocTag.FORM,h.diffFormTagInfo],[p.Comment.JsDocTag.CROSS_PLAT_FORM,h.diffCrossPlatFromTagInfo],[p.Comment.JsDocTag.SYSTEM_API,h.diffSystemApiTagInfo],[p.Comment.JsDocTag.STAGE_MODEL_ONLY,h.diffModelTagInfo],[p.Comment.JsDocTag.FA_MODEL_ONLY,h.diffModelTagInfo],[p.Comment.JsDocTag.DEPRECATED,h.diffDeprecatedTagInfo],[p.Comment.JsDocTag.USEINSTEAD,h.diffUseinsteadTagInfo],[p.Comment.JsDocTag.PERMISSION,h.diffPermissionTagInfo],[p.Comment.JsDocTag.THROWS,h.diffThrowsTagInfo],[p.Comment.JsDocTag.ATOMIC_SERVICE,h.diffAtomicServiceTagInfo],[p.Comment.JsDocTag.PARAM,h.diffParamTagInfo],[p.Comment.JsDocTag.RETURNS,h.diffReturnsTagInfo]])},53073:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SyscapProcessorHelper=void 0;const n=r(5391);class i{static matchSubsystem(e){const t=n.FunctionUtils.readSubsystemFile().subsystemMap,r=i.getSyscapField(e);return r?t.get(r):"NA"}static getSyscapField(e){const t=e.getNewSyscapField();if(t)return t;const r=e.getOldSyscapField();return r||""}static getSingleKitInfo(e){return""!==e.getNewKitInfo()?e.getNewKitInfo():e.getOldKitInfo()}}t.SyscapProcessorHelper=i},60172:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.JsDocProcessorHelper=t.CommentHelper=void 0;const i=n(r(55423)),a=r(59062),o=r(42034),s=r(72161),c=r(19503);class l{static getNodeLeadingComments(e,t){try{const r=i.default.getLeadingCommentRanges(t.getFullText(),e.getFullStart());if(r&&r.length){const e=[];return r.forEach((r=>{const n=t.getFullText().slice(r.pos,r.end),i=l.parseComment(n,r.kind,!0);i.pos=r.pos,i.end=r.end,e.push(i)})),e}return[]}catch(t){return o.LogUtil.d("CommentHelper",`node(kind=${e.kind}) is created in memory.`),[]}}static parseComment(e,t,n){const{parse:a}=r(88658),o={text:e,isMultiLine:t===i.default.SyntaxKind.MultiLineCommentTrivia,isLeading:n,description:"",commentTags:[],parsedComment:void 0,pos:-1,end:-1,ignore:!1,isApiComment:!1,isInstruct:!1,isFileJsDoc:!1};let c=e,l=a(c);if(0===l.length){if(s.StringUtils.hasSubstring(c,this.referenceRegexp)||t===i.default.SyntaxKind.SingleLineCommentTrivia){o.isMultiLine=!1;const e=2;o.text=c.substring(e,c.length)}return o}o.parsedComment=l[0],o.description=l[0].description;for(let e=0;e<l[0].tags.length;e++){const t=l[0].tags[e];o.commentTags.push({tag:t.tag,name:t.name,type:t.type,optional:t.optional,description:t.description,source:t.source[0].source,lineNumber:t.source[0].number,tokenSource:t.source,defaultValue:t.default?t.default:void 0})}return s.StringUtils.hasSubstring(c,this.fileTag)&&(o.isFileJsDoc=!0),o.isApiComment=!0,o}}t.CommentHelper=l,l.licenseKeyword="Copyright",l.referenceRegexp=/\/\/\/\s*<reference\s*path/g,l.referenceCommentRegexp=/\/\s*<reference\s*path/g,l.mutiCommentDelimiter="/**",l.fileTag=/\@file|\@kit/g;class u{static setSyscap(e,t){e.setSyscap(t.name)}static setSince(e,t){e.setSince(t.name)}static setIsForm(e){e.setIsForm(!0)}static setIsCrossPlatForm(e){e.setIsCrossPlatForm(!0)}static setIsSystemApi(e){e.setIsSystemApi(!0)}static setIsAtomicService(e){e.setIsAtomicService(!0)}static setDeprecatedVersion(e,t){e.setDeprecatedVersion(t.description)}static setUseinstead(e,t){e.setUseinstead(t.name)}static setPermission(e,t){const r=t.description,n=t.name,i=r?`${n} ${r}`:`${n}`;e.setPermission(i)}static addErrorCode(e,t){t&&!isNaN(Number(t.name))&&e.addErrorCode(Number(t.name))}static setTypeInfo(e,t){e.setTypeInfo(t.type)}static setIsConstant(e){e.setIsConstant(!0)}static setModelLimitation(e,t){e.setModelLimitation(t.tag)}static setKitContent(e,t){e.setKit(t.source.replace(/\* @kit|\r|\n/g,"").trim())}static setIsFile(e,t){e.setFileTagContent(t.source.replace(/\* @file|\r|\n/g,"").trim())}static processJsDoc(e,t,r){const n=new a.Comment.JsDocInfo;n.setDescription(e.description),n.setKit(t),n.setFileTagContent(r);for(let t=0;t<e.commentTags.length;t++){const r=e.commentTags[t];n.addTag(r);const i=d.get(r.tag.toLowerCase());i&&i(n,r)}return n}static processJsDocInfos(e,t,r,n){const i=e.getSourceFile(),o=l.getNodeLeadingComments(e,i).filter((e=>e.isApiComment&&!e.isFileJsDoc&&t!==c.ApiType.SOURCE_FILE||e.isApiComment&&e.isFileJsDoc&&t===c.ApiType.SOURCE_FILE)),s=[];if(0===o.length&&""!==r){const e=new a.Comment.JsDocInfo;e.setKit(r),e.setFileTagContent(n),s.push(e)}for(let e=0;e<o.length;e++){const t=o[e],i=u.processJsDoc(t,r,n);s.push(i)}return s}}t.JsDocProcessorHelper=u;const d=new Map([[a.Comment.JsDocTag.SYSCAP,u.setSyscap],[a.Comment.JsDocTag.SINCE,u.setSince],[a.Comment.JsDocTag.FORM,u.setIsForm],[a.Comment.JsDocTag.CROSS_PLAT_FORM,u.setIsCrossPlatForm],[a.Comment.JsDocTag.SYSTEM_API,u.setIsSystemApi],[a.Comment.JsDocTag.STAGE_MODEL_ONLY,u.setModelLimitation],[a.Comment.JsDocTag.FA_MODEL_ONLY,u.setModelLimitation],[a.Comment.JsDocTag.DEPRECATED,u.setDeprecatedVersion],[a.Comment.JsDocTag.USEINSTEAD,u.setUseinstead],[a.Comment.JsDocTag.TYPE,u.setTypeInfo],[a.Comment.JsDocTag.PERMISSION,u.setPermission],[a.Comment.JsDocTag.THROWS,u.addErrorCode],[a.Comment.JsDocTag.CONSTANT,u.setIsConstant],[a.Comment.JsDocTag.ATOMIC_SERVICE,u.setIsAtomicService],[a.Comment.JsDocTag.KIT,u.setKitContent],[a.Comment.JsDocTag.FILE,u.setIsFile]])},24182:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.typeMap=t.modifierProcessorMap=t.nodeProcessorMap=t.ModifierHelper=t.NodeProcessorHelper=t.parserParam=void 0;const i=n(r(55423)),a=n(r(96486)),o=r(19503),s=r(72161),c=r(64158);t.parserParam=new o.ParserParam;class l{static processReference(e,t,r){const n=[];if(e.referencedFiles.forEach((t=>{const i=new o.ReferenceInfo(o.ApiType.REFERENCE_FILE,e,r);i.setApiName(o.ApiType.REFERENCE_FILE),i.setPathName(t.fileName),n.push(i)})),0===n.length)return;const i=new Map;i.set(c.StringConstant.SELF,n),t.set(c.StringConstant.REFERENCE,i)}static processNode(e,r,n,i=!1){l.stopRecursion=i;const a=t.nodeProcessorMap.get(e.kind);if(!a)return;const s=a(e,n),c=l.setApiInfo(s,r,e),u=l.getChildNodes(e);u&&u.forEach((e=>{s.getApiType()===o.ApiType.STRUCT&&""===e.getFullText()||l.processNode(e,c,s,i)}))}static setApiInfo(e,t,r){if(e.getApiType()!==o.ApiType.METHOD)return l.setSingleApiInfo(e,t);let n=[];n=l.processEventMethod(e,r),l.processAsyncMethod(n);let i=new Map;return n.forEach((e=>{i=l.setSingleApiInfo(e,t)})),i}static setSingleApiInfo(e,t){const r=e.getApiName(),n=e.getParentApi();if(n&&o.containerApiTypes.has(n.apiType)){n.addChildApi(e)}if(t.has(r)){const n=t.get(r);return n.get(c.StringConstant.SELF).push(e),n}const i=[];i.push(e);const a=new Map;return a.set(c.StringConstant.SELF,i),t.set(r,a),a}static processEventMethod(e,t){const r=[],n=l.getOnOrOffMethodFirstParamType(e,t);if(void 0===n)return r.push(e),r;const o=n.literal;if(n.kind===i.default.SyntaxKind.LiteralType&&i.default.isStringLiteral(o)){const t=o.getText();e.setApiName(`${e.getApiName()}_${t.substring(1,t.length-1)}`),e.setIsJoinType(!0)}else if(n.kind===i.default.SyntaxKind.UnionType){n.types.forEach((t=>{if(i.default.isLiteralTypeNode(t)&&i.default.isStringLiteral(t.literal)){const n=t.literal.getText(),i=a.default.cloneDeep(e);i.setParentApi(e.getParentApi()),i.setApiName(`${e.getApiName()}_${n.substring(1,n.length-1)}`),e.setIsJoinType(!0),r.push(i)}}))}else n.kind===i.default.SyntaxKind.StringKeyword?(e.setApiName(`${e.getApiName()}_string`),e.setIsJoinType(!0)):n.kind===i.default.SyntaxKind.BooleanKeyword?(e.setApiName(`${e.getApiName()}_boolean`),e.setIsJoinType(!0)):(e.setApiName(`${e.getApiName()}_${n.getText()}`),e.setIsJoinType(!0));return 0===r.length&&r.push(e),r}static getOnOrOffMethodFirstParamType(e,t){if(!new Set(c.EventConstant.eventNameList).has(e.getApiName()))return;if(e.setIsJoinType(!0),0===t.parameters.length)return;return t.parameters[0].type}static processAsyncMethod(e){e.forEach((e=>{const t=e,r=t.getReturnValue();if(1===r.length&&r[0].startsWith(c.StringConstant.PROMISE_METHOD_KEY))return void t.setSync(c.StringConstant.PROMISE_METHOD_KEY_CHANGE);const n=t.getParams();for(let e=n.length-1;e>=0;e--){const r=n[e].getType();if(1===r.length&&r[0].startsWith(c.StringConstant.ASYNC_CALLBACK_METHOD_KEY))return void t.setSync(c.StringConstant.ASYNC_CALLBACK_METHOD_KEY_CHANGE)}}))}static getChildNodes(e){return i.default.isInterfaceDeclaration(e)||i.default.isClassDeclaration(e)||i.default.isEnumDeclaration(e)?e.members:i.default.isStructDeclaration(e)?i.default.visitNodes(e.members,(e=>{if(!i.default.isConstructorDeclaration(e))return e})):i.default.isModuleDeclaration(e)&&e.body&&i.default.isModuleBlock(e.body)?e.body.statements:void 0}static processExportAssignment(e,t){const r=new o.ExportDefaultInfo(o.ApiType.EXPORT_DEFAULT,e,t),n=e;return r.setApiName(c.StringConstant.EXPORT_DEFAULT+n.expression.getText()),r.setDefinedText(n.getText()),u.processModifiers(n.modifiers,r),r}static processExportDeclaration(e,t){const r=new o.ExportDeclareInfo(o.ApiType.EXPORT,e,t),n=e,a=n.exportClause;if(a){if(i.default.isNamespaceExport(a))r.setApiName(c.StringConstant.EXPORT+a.name.getText());else if(i.default.isNamedExports(a)){const e=[];a.elements.forEach((t=>{const n=t.propertyName?t.propertyName.getText():"",i=t.name.getText();e.push(i),r.addExportValues(i,n)})),r.setApiName(c.StringConstant.EXPORT+e.join("_"))}}else r.setApiName(c.StringConstant.EXPORT+(n.moduleSpecifier?n.moduleSpecifier.getText():""));return r.setDefinedText(n.getText()),u.processModifiers(n.modifiers,r),r}static processImportEqualsDeclaration(e,t){return new o.ImportInfo(o.ApiType.EXPORT,e,t)}static processImportInfo(e,t){const r=new o.ImportInfo(o.ApiType.IMPORT,e,t),n=e;if(r.setApiName(n.moduleSpecifier.getText()),r.setImportPath(n.moduleSpecifier.getText()),r.setDefinedText(n.getText()),u.processModifiers(n.modifiers,r),void 0===n.importClause)return r;const a=n.importClause;if(a.namedBindings&&i.default.isNamedImports(a.namedBindings))a.namedBindings.elements.forEach((e=>{const t=e.propertyName?e.propertyName.getText():"",n=e.name.getText();r.addImportValue(n,t)}));else{const e=a.name?a.name.escapedText.toString():"";r.addImportValue(e,e)}return r}static processInterface(e,t){const r=e,n=new o.InterfaceInfo(o.ApiType.INTERFACE,e,t);return n.setApiName(r.name.getText()),r.typeParameters?.forEach((e=>{n.setGenericInfo(l.processGenericity(e))})),u.processModifiers(r.modifiers,n),void 0===r.heritageClauses||r.heritageClauses.forEach((e=>{e.token===i.default.SyntaxKind.ExtendsKeyword?e.types.forEach((e=>{const t=new o.ParentClass;t.setImplementClass(""),t.setExtendClass(e.getText()),n.setParentClasses(t)})):e.token===i.default.SyntaxKind.ImplementsKeyword&&e.types.forEach((e=>{const t=new o.ParentClass;t.setImplementClass(e.getText()),t.setExtendClass(""),n.setParentClasses(t)}))})),n}static processGenericity(e){const t=new o.GenericInfo;return t.setIsGenericity(!0),t.setGenericContent(e.getText()),t}static processClass(e,t){const r=e,n=new o.ClassInfo(o.ApiType.CLASS,e,t),a=r.name?r.name.getText():"";return n.setApiName(a),r.typeParameters?.forEach((e=>{n.setGenericInfo(l.processGenericity(e))})),u.processModifiers(r.modifiers,n),void 0===r.heritageClauses||r.heritageClauses.forEach((e=>{e.token===i.default.SyntaxKind.ExtendsKeyword?e.types.forEach((e=>{const t=new o.ParentClass;t.setExtendClass(e.getText()),t.setImplementClass(""),n.setParentClasses(t)})):e.token===i.default.SyntaxKind.ImplementsKeyword&&e.types.forEach((e=>{const t=new o.ParentClass;t.setImplementClass(e.getText()),t.setExtendClass(""),n.setParentClasses(t)}))})),n}static processBaseModule(e,t){const r=e;return i.default.isIdentifier(r.name)?l.processNamespace(e,t):l.processModule(e,t)}static processModule(e,t){const r=e,n=new o.ModuleInfo(o.ApiType.MODULE,e,t);return n.setApiName(r.name.getText()),u.processModifiers(r.modifiers,n),n}static processNamespace(e,t){const r=e,n=new o.NamespaceInfo(o.ApiType.NAMESPACE,e,t);return n.setApiName(r.name.getText()),u.processModifiers(r.modifiers,n),n}static processEnum(e,t){const r=e,n=new o.EnumInfo(o.ApiType.ENUM,e,t);return n.setApiName(r.name.getText()),u.processModifiers(r.modifiers,n),n}static processEnumValue(e,t){const r=e,n=r.initializer?.getText(),i=new o.EnumValueInfo(o.ApiType.ENUM_VALUE,e,t);if(i.setApiName(r.name.getText()),i.setDefinedText(r.getText()),i.setValue(n??l.getCurrentEnumValue(t)),r.initializer){const e=r.initializer.getText().replace(l.regQuotation,"$1");i.setValue(e)}return i}static getCurrentEnumValue(e){if(!(e instanceof o.EnumInfo))return"";const t=e.getChildApis().length;if(0===t)return String(0);const r=e.getChildApis()[t-1].getValue();return isNaN(Number(r))?"":`${Number(r)+1}`}static processPropertySigAndDec(e,t){const r=e,n=new o.PropertyInfo(o.ApiType.PROPERTY,e,t),i=r.type?r.type:r.initializer;return n.setApiName(r.name?.getText()),n.setDefinedText(r.getText()),u.processModifiers(r.modifiers,n),n.setIsRequired(!r.questionToken),n.addType(l.processDataType(i)),l.processFunctionTypeNode(r.type,n,new o.ParamInfo(o.ApiType.PARAM),!1),n.setTypeKind(i?.kind),n}static processStruct(e,t){const r=e,n=new o.StructInfo(o.ApiType.STRUCT,e,t),i=r.name?r.name.getText():"";return n.setApiName(i),n.setDefinedText(n.getApiName()),u.processModifiers(r.modifiers,n),n}static processMethod(e,t){const r=e,n=new o.MethodInfo(o.ApiType.METHOD,e,t);n.setDefinedText(r.getText());let a=r.name?r.name.getText():"";(i.default.isConstructorDeclaration(r)||i.default.isConstructSignatureDeclaration(r)||i.default.isCallSignatureDeclaration(r))&&(a=c.StringConstant.CONSTRUCTOR_API_NAME),n.setApiName(a),n.setIsRequired(!r.questionToken),r.typeParameters?.forEach((e=>{n.setGenericInfo(l.processGenericity(e))}));const s=r.getText().replace(/export\s+|declare\s+|function\s+|\r\n|\;/g,"");if(n.setCallForm(s),r.type&&i.default.SyntaxKind.VoidKeyword!==r.type.kind){const e=l.processDataType(r.type);n.setReturnValue(e),n.setReturnValueType(r.type.kind),l.processFunctionTypeNode(r.type,n,new o.ParamInfo(o.ApiType.PARAM),!1)}for(let e=0;e<r.parameters.length;e++){const t=r.parameters[e],i=l.processParam(t,n);n.addParam(i)}return i.default.isCallSignatureDeclaration(r)||i.default.isConstructSignatureDeclaration(r)||u.processModifiers(r.modifiers,n),n}static processParam(e,r){const n=new o.ParamInfo(o.ApiType.PARAM);if(n.setApiName(e.name.getText()),n.setIsRequired(!e.questionToken),n.setDefinedText(e.getText()),n.setParamType(e.type?.kind),void 0===e.type)return n;let a;if(l.processFunctionTypeNode(e.type,r,n,!0),i.default.isLiteralTypeNode(e.type))a=t.typeMap.get(e.type.literal.kind);else if(i.default.isFunctionTypeNode(e.type)){const t=l.processMethod(e.type,r);n.setMethodApiInfo(t)}return n.setType(l.processDataType(e.type)),n}static getFilePathFromNode(e){return i.default.isSourceFile(e)?e.fileName:l.getFilePathFromNode(e.parent)}static setSymbolOfTypeReferenceMap(e,t,r){l.symbolOfTypeReferenceMap.has(e)||l.symbolOfTypeReferenceMap.set(e,new Map);const n=l.symbolOfTypeReferenceMap.get(e);n&&(n.has(t.getFullText().trim())||n.set(t.getFullText().trim(),r))}static getSymbolOfTypeReferenceMap(e,t){const r=l.symbolOfTypeReferenceMap.get(e);if(!r)return;const n=r.get(t.getFullText().trim());return n||void 0}static processFunctionTypeNode(e,t,r,n=!0){l.stopRecursion||e&&(i.default.isTypeLiteralNode(e)?l.processFunctionTypeObject(e,t,r,n):i.default.isUnionTypeNode(e)&&e.types.forEach((e=>{l.processFunctionTypeNode(e,t,r,n)})),i.default.isTypeReferenceNode(e)&&l.processFunctionTypeReference(e,t,r,n))}static processFunctionTypeReference(e,r,n,a=!0){let o="";const s=e.typeArguments;if(s?.forEach((e=>{l.processFunctionTypeNode(e,r,n,a)})),o=i.default.isIdentifier(e.typeName)?e.typeName.escapedText.toString():e.typeName.right.escapedText.toString(),l.typeReferenceFileMap.has(o)){const e=l.typeReferenceFileMap.get(o);a?n.addTypeLocations(e):r.addTypeLocations(e)}else try{const i=t.parserParam.getTsProgram(),s=i.getTypeChecker().getSymbolAtLocation(e.typeName);if(!s)return;const u=s.declarations;if(!u)return;const d=u[0],p=new Map;if(l.processNode(d,p,r,!0),l.stopRecursion=!1,p.has(o)){const e=p.get(o),t=e.get(c.StringConstant.SELF)[0];l.typeReferenceFileMap.set(o,t),t&&(a?n.addTypeLocations(t):r.addTypeLocations(t))}}catch(e){}}static processFunctionTypeObject(e,t,r,n=!0){t.getKitInfoFromParent(t);e.members.forEach((e=>{const i=l.processPropertySigAndDec(e,t);n?r.addObjLocations(i):t.addObjLocations(i)}))}static processDataType(e){const t=[];return e?i.default.isUnionTypeNode(e)?(e.types.forEach((e=>{t.push(e.getText())})),t):(t.push(e.getText()),t):t}static TypeAliasDeclaration(e,t){const r=e;return r.type.kind===i.default.SyntaxKind.TypeLiteral?l.processTypeInterface(r,t):l.processTypeAlias(r,t)}static processTypeInterface(e,t){const r=new o.InterfaceInfo(o.ApiType.INTERFACE,e,t);return r.setApiName(e.name.getText()),r.setDefinedText(r.getApiName()),u.processModifiers(e.modifiers,r),r}static processTypeAlias(e,t){const r=new Map([[i.default.SyntaxKind.UnionType,o.TypeAliasType.UNION_TYPE],[i.default.SyntaxKind.TypeLiteral,o.TypeAliasType.OBJECT_TYPE],[i.default.SyntaxKind.TupleType,o.TypeAliasType.TUPLE_TYPE],[i.default.SyntaxKind.TypeReference,o.TypeAliasType.REFERENCE_TYPE]]),n=new o.TypeAliasInfo(o.ApiType.TYPE_ALIAS,e,t);n.setApiName(e.name.getText());const a=r.get(e.type.kind);a&&n.setTypeName(a);let s=e.type;if(i.default.isFunctionTypeNode(s)){s.parameters.forEach((r=>{const i=l.processParam(r,new o.MethodInfo(o.ApiType.METHOD,e,t));n.setParamInfos(i)})),n.setReturnType(l.processDataType(s.type)),n.setTypeIsFunction(!0)}else i.default.isTypeLiteralNode(s)&&(s.members.forEach((e=>{const t=l.processPropertySigAndDec(e,n);n.setTypeLiteralApiInfos(t)})),n.setTypeIsObject(!0));return n.setDefinedText(e.getText()),u.processModifiers(e.modifiers,n),n.addType(l.processDataType(e.type)),n}static processVariableStat(e,r){const n=e,a=n.getText(),o=n.declarationList.declarations[0];let s="",c="";if(o.type)if(i.default.isLiteralTypeNode(o.type)){const e=t.typeMap.get(o.type.literal.kind);s=e||"",c=o.type.literal.getText().replace(l.regQuotation,"$1")}else s=o.type.getText();if(/declare\s+const/.test(n.getText())&&/[a-zA-Z]+(Attribute|Interface)/.test(s))return l.processDeclareConstant(n,a,s,r);if(o.initializer){const e=o.initializer.getText();return l.processConstant(n,a,e,r)}const u=o.type;if(u&&i.default.isLiteralTypeNode(u)){const e=u.getText();return l.processConstant(n,a,e,r)}return l.processVaribleProperty(n,a,r)}static processConstant(e,t,r,n){const i=e.declarationList.declarations[0],a=new o.ConstantInfo(o.ApiType.CONSTANT,e,n);return a.setDefinedText(t),a.setApiName(i.name.getText()),a.setValue(r),a}static processDeclareConstant(e,t,r,n){const i=e.declarationList.declarations[0],a=new o.ConstantInfo(o.ApiType.DECLARE_CONST,e,n);return a.setDefinedText(t),a.setApiName(i.name.getText()),a.setValue(r),a}static processVaribleProperty(e,t,r){const n=e.declarationList.declarations[0],i=new o.PropertyInfo(o.ApiType.PROPERTY,e,r);return i.setDefinedText(t),i.setApiName(n.name.getText()),i.addType(l.processDataType(n.type)),i.setIsRequired(!0),i.setTypeKind(n?.type?.kind),s.StringUtils.hasSubstring(t,c.StringConstant.CONST_KEY_WORD)&&i.setIsReadOnly(!0),i}}t.NodeProcessorHelper=l,l.regQuotation=/^[\'|\"](.*)[\'|\"]$/,l.stopRecursion=!1,l.symbolOfTypeReferenceMap=new Map,l.typeReferenceFileMap=new Map;class u{static setIsStatic(e){e.setIsStatic(!0)}static setIsReadonly(e){const t=e;t.setIsReadOnly&&t.setIsReadOnly(!0)}static setIsExport(e){e.setIsExport(!0)}static processModifiers(e,r){let n="";e&&e.forEach((e=>{o.containerApiTypes.has(r.apiType)&&!i.default.isDecorator(e)&&(n+=` ${e.getText()}`);const a=t.modifierProcessorMap.get(e.kind);a&&a(r)})),o.containerApiTypes.has(r.apiType)&&(n+=` ${r.getApiType().toLowerCase()} ${r.getApiName()}`,r.setDefinedText(n.trim()))}}t.ModifierHelper=u,t.nodeProcessorMap=new Map([[i.default.SyntaxKind.ExportAssignment,l.processExportAssignment],[i.default.SyntaxKind.ExportDeclaration,l.processExportDeclaration],[i.default.SyntaxKind.ImportDeclaration,l.processImportInfo],[i.default.SyntaxKind.VariableStatement,l.processVariableStat],[i.default.SyntaxKind.MethodDeclaration,l.processMethod],[i.default.SyntaxKind.MethodSignature,l.processMethod],[i.default.SyntaxKind.FunctionDeclaration,l.processMethod],[i.default.SyntaxKind.Constructor,l.processMethod],[i.default.SyntaxKind.ConstructSignature,l.processMethod],[i.default.SyntaxKind.CallSignature,l.processMethod],[i.default.SyntaxKind.PropertyDeclaration,l.processPropertySigAndDec],[i.default.SyntaxKind.PropertySignature,l.processPropertySigAndDec],[i.default.SyntaxKind.EnumMember,l.processEnumValue],[i.default.SyntaxKind.EnumDeclaration,l.processEnum],[i.default.SyntaxKind.TypeAliasDeclaration,l.processTypeAlias],[i.default.SyntaxKind.ClassDeclaration,l.processClass],[i.default.SyntaxKind.InterfaceDeclaration,l.processInterface],[i.default.SyntaxKind.ModuleDeclaration,l.processBaseModule],[i.default.SyntaxKind.StructDeclaration,l.processStruct]]),t.modifierProcessorMap=new Map([[i.default.SyntaxKind.ConstKeyword,u.setIsReadonly],[i.default.SyntaxKind.ReadonlyKeyword,u.setIsReadonly],[i.default.SyntaxKind.StaticKeyword,u.setIsStatic],[i.default.SyntaxKind.ExportKeyword,u.setIsExport]]),t.typeMap=new Map([[i.default.SyntaxKind.StringLiteral,"string"],[i.default.SyntaxKind.NumericLiteral,"number"]])},20745:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.resultsProcessMethod=t.ResultsProcessHelper=void 0;const s=o(r(55423)),c=r(59062),l=r(64158),u=r(19503),d=a(r(13382));class p{static getApiInfosInFileMap(e,t){if(t===l.StringConstant.SELF)return[];return e.get(t).get(l.StringConstant.SELF)}static processFileApiMap(e){const t=[];for(const r of e.keys()){p.getApiInfosInFileMap(e,r).forEach((e=>{p.processApiInfo(e),t.push(e)}))}return t}static processApiInfo(e){if(!e)return;if(p.cleanApiInfo(e),!u.containerApiTypes.has(e.getApiType()))return;e.getChildApis().forEach((e=>{p.processApiInfo(e)}))}static cleanApiInfo(e){e&&(e.setParentApi(void 0),e.removeNode(),(e instanceof u.MethodInfo||e instanceof u.PropertyInfo)&&(e.setObjLocations([]),e.setTypeLocations([]),e instanceof u.MethodInfo&&e.getParams().forEach((e=>{e.setObjLocations([]),e.setTypeLocations([]),p.processApiInfo(e.getMethodApiInfo())}))),e instanceof u.TypeAliasInfo&&(p.cleanChildrenApiInfo(e.getTypeLiteralApiInfos()),e.getParamInfos().forEach((e=>{e.setObjLocations([]),e.setTypeLocations([]),p.processApiInfo(e.getMethodApiInfo())}))),p.processJsDocInfos(e))}static cleanChildrenApiInfo(e){e&&e.forEach((e=>{p.processApiInfo(e)}))}static processJsDocInfos(e){if(!(e instanceof u.ApiInfo))return;e.getJsDocInfos().forEach((e=>{e.removeTags()}))}static processFileApiMapForGetBasicApi(e){let t=[];for(const r of e.keys()){p.getApiInfosInFileMap(e,r).forEach((e=>{t=t.concat(p.processApiInfoForGetBasicApi(e))}))}return t}static processApiInfoForGetBasicApi(e){let t=[];if(t=t.concat(e),!u.containerApiTypes.has(e.getApiType()))return t;return e.getChildApis().forEach((e=>{t=t.concat(p.processApiInfoForGetBasicApi(e))})),t}static processFileApiMapForEachSince(e){const t=[];for(const r of e.keys()){p.getApiInfosInFileMap(e,r).forEach((e=>{const r=p.processApiInfoForEachSince(e);0!==r.length&&t.push(...r)}))}return t}static processApiInfoForEachSince(e){const t=p.getNodeInfo(e);if(!u.containerApiTypes.has(e.getApiType()))return t;return e.getChildApis().forEach((e=>{const r=p.processApiInfoForEachSince(e);p.mergeResultApis(t,r)})),t}static mergeResultApis(e,t){e.forEach((e=>{const r=e,n=p.getResultApisVersion(t,Number(r.getSince()));r.addChildApi(n)}))}static getResultApisVersion(e,t){return e.filter((e=>{const r=Number(e.getSince());return-1===r||r>=t}))}static getNodeInfo(e){let r=e.getApiType();const n=t.resultsProcessMethod.get(r);if(!n)return[];return n(e)}static processProperty(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.PropertyInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setType(r.getType().join(" | ")),n.setName(e.getApiName()),n.setIsRequired(r.getIsRequired()),n.setIsReadOnly(r.getIsReadOnly()),n.setIsStatic(r.getIsStatic()),t.push(n)}return n.forEach((n=>{const i=new d.PropertyInfo(e.getApiType(),n),a=n.getTypeInfo();i.setType(a?a.replace(/^[\?]*[\(](.*)[\)]$/,"$1"):r.getType().join(" | ")),i.setName(e.getApiName()),i.setIsRequired(r.getIsRequired()),i.setIsReadOnly(r.getIsReadOnly()),i.setIsStatic(r.getIsStatic()),t.push(i)})),t}static processClass(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.ClassInterfaceInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setParentClasses(r.getParentClasses()),t.push(n)}return n.forEach((n=>{const i=new d.ClassInterfaceInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setParentClasses(r.getParentClasses()),t.push(i)})),t}static processInterface(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.ClassInterfaceInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setParentClasses(r.getParentClasses()),t.push(n)}return n.forEach((n=>{const i=new d.ClassInterfaceInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setParentClasses(r.getParentClasses()),t.push(i)})),t}static processNamespace(e){const t=[],r=e.getJsDocInfos();if(0===r.length){const r=new d.NamespaceEnumInfo(e.getApiType(),new c.Comment.JsDocInfo);r.setName(e.getApiName()),t.push(r)}return r.forEach((r=>{const n=new d.NamespaceEnumInfo(e.getApiType(),r);n.setName(e.getApiName()),t.push(n)})),t}static processMethod(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.MethodInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setCallForm(r.getCallForm()),n.setReturnValue(r.getReturnValue().join(" | ")),r.getParams().forEach((e=>{const t=new d.ParamInfo(e.getApiType(),new c.Comment.JsDocInfo);t.setName(e.getApiName()),t.setType(e.getType().join(" | ")),t.setIsRequired(e.getIsRequired()),n.addParam(t)})),n.setIsStatic(r.getIsStatic()),t.push(n)}return n.forEach((n=>{const i=new d.MethodInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setCallForm(r.getCallForm()),i.setReturnValue(r.getReturnValue().join(" | ")),r.getParams().forEach((e=>{const t=new d.ParamInfo(e.getApiType(),new c.Comment.JsDocInfo);t.setName(e.getApiName()),t.setType(e.getType().join(" | ")),t.setIsRequired(e.getIsRequired()),i.addParam(t)})),i.setIsStatic(r.getIsStatic()),t.push(i)})),t}static processExportDefault(e){const t=[],r=new d.ExportDefaultInfo(e.getApiType());return r.setName(e.getApiName()),t.push(r),t}static processImportInfo(e){const t=[],r=e,n=new d.ImportInfo(e.getApiType());return r.getImportValues().forEach((e=>{n.addImportValue(e.key,e.value)})),t.push(n),t}static processConstant(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.ConstantInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName());const i=r.getValue();n.setValue(i.replace(p.regQuotation,"$1")),n.setType(isNaN(Number(i))?"string":"number");const a=r.getNode();if(a.initializer){const e=f.get(a.initializer.kind);n.setType(e||"")}t.push(n)}return n.forEach((n=>{const i=new d.ConstantInfo(e.getApiType(),n);i.setName(e.getApiName());const a=r.getValue();i.setValue(a.replace(p.regQuotation,"$1")),i.setType(isNaN(Number(a))?"string":"number");const o=r.getNode();if(o.initializer){const e=f.get(o.initializer.kind);i.setType(e||"")}t.push(i)})),t}static processDeclareConstant(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.DeclareConstInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setType(r.getValue());const i=r.getNode();if(i.initializer){const e=f.get(i.initializer.kind);n.setType(e||"")}t.push(n)}return n.forEach((n=>{const i=new d.DeclareConstInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setType(r.getValue());const a=r.getNode();if(a.initializer){const e=f.get(a.initializer.kind);i.setType(e||"")}t.push(i)})),t}static processEnum(e){const t=[],r=e.getJsDocInfos();if(0===r.length){const r=new d.NamespaceEnumInfo(e.getApiType(),new c.Comment.JsDocInfo);r.setName(e.getApiName()),t.push(r)}return r.forEach((r=>{const n=new d.NamespaceEnumInfo(e.getApiType(),r);n.setName(e.getApiName()),t.push(n)})),t}static processEnumMember(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const n=new d.EnumValueInfo(e.getApiType(),new c.Comment.JsDocInfo);n.setName(e.getApiName()),n.setValue(r.getValue()),t.push(n)}return n.forEach((n=>{const i=new d.EnumValueInfo(e.getApiType(),n);i.setName(e.getApiName()),i.setValue(r.getValue()),t.push(i)})),t}static processTypeAlias(e){const t=[],r=e,n=r.getJsDocInfos();if(0===n.length){const e=p.processTypeAliasGetNewInfo(r,new c.Comment.JsDocInfo);t.push(e)}return n.forEach((e=>{const n=p.processTypeAliasGetNewInfo(r,e);t.push(n)})),t}static processTypeAliasGetNewInfo(e,t){if(e.getTypeName()===u.TypeAliasType.UNION_TYPE){const r=new d.UnionTypeInfo(e.getTypeName(),t);return r.setName(e.getApiName()),r.addValueRanges(e.getType().map((e=>e.replace(p.regQuotation,"$1")))),r}const r=new d.TypeAliasInfo(e.getApiType(),t);return r.setName(e.getApiName()),r.setType(e.getType().join(" | ")),r}}t.ResultsProcessHelper=p,p.regQuotation=/^[\'|\"](.*)[\'|\"]$/;const f=new Map([[s.default.SyntaxKind.StringLiteral,"string"],[s.default.SyntaxKind.NumericLiteral,"number"]]);t.resultsProcessMethod=new Map([[u.ApiType.PROPERTY,p.processProperty],[u.ApiType.CLASS,p.processClass],[u.ApiType.INTERFACE,p.processInterface],[u.ApiType.NAMESPACE,p.processNamespace],[u.ApiType.METHOD,p.processMethod],[u.ApiType.EXPORT_DEFAULT,p.processExportDefault],[u.ApiType.IMPORT,p.processImportInfo],[u.ApiType.CONSTANT,p.processConstant],[u.ApiType.DECLARE_CONST,p.processDeclareConstant],[u.ApiType.ENUM,p.processEnum],[u.ApiType.ENUM_VALUE,p.processEnumMember],[u.ApiType.TYPE_ALIAS,p.processTypeAlias]])},83317:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;const i=n(r(57147)),a=n(r(71017)),o=n(r(55423)),s=n(r(96486)),c=r(24182),l=r(20745),u=r(19503),d=r(64158),p=r(10391),f=r(550);class m{static cleanParserParamSDK(){c.parserParam.setFileDir(""),c.parserParam.setSdkPath("")}static parseDir(e,t=""){m.cleanParserParamSDK();const r=p.FileUtils.readFilesInDir(e,(e=>e.endsWith(d.StringConstant.DTS_EXTENSION)||e.endsWith(d.StringConstant.DETS_EXTENSION))),n=new Map;let i=[];return""===t?(c.parserParam.setSdkPath(e),i=r):p.FileUtils.isDirectory(t)?(m.needLib=!0,c.parserParam.setSdkPath(t),i=p.FileUtils.readFilesInDir(t,(e=>e.endsWith(d.StringConstant.DTS_EXTENSION)||e.endsWith(d.StringConstant.DETS_EXTENSION)))):p.FileUtils.isFile(t)&&(m.needLib=!0,c.parserParam.setSdkPath(a.default.resolve(t,"..")),i=[t]),c.parserParam.setFileDir(e),c.parserParam.setRootNames(i),m.needLib&&c.parserParam.setLibPath(a.default.resolve(p.FileUtils.getBaseDirName(),"./libs")),c.parserParam.setProgram(),i.forEach((t=>{m.parseFile(e,t,n)})),n}static parseFile(e,t,r){if(!i.default.existsSync(t))return new Map;c.NodeProcessorHelper.typeReferenceFileMap=new Map,""===c.parserParam.getFileDir()&&(c.parserParam.setSdkPath(e),c.parserParam.setFileDir(a.default.resolve(e,"..")),c.parserParam.setRootNames([t]),m.needLib&&c.parserParam.setLibPath(a.default.resolve(p.FileUtils.getBaseDirName(),"./libs")),c.parserParam.setProgram()),c.parserParam.setFilePath(t);let n="";n=a.default.relative(e,t);const s=c.parserParam.getTsProgram();s.getTypeChecker();const l=c.parserParam.compilerHost.getCanonicalFileName(t.replace(/\\/g,"/")),f=s.getSourceFileByPath(l);if(!f)return new Map;const g=[t];f.statements.forEach((e=>{o.default.isImportDeclaration(e)&&e.moduleSpecifier.getText().startsWith("./",1)&&g.push(a.default.resolve(t,"..",e.moduleSpecifier.getText().replace(/'|"/g,"")))}));const _=new u.ApiInfo(u.ApiType.SOURCE_FILE,f,void 0);_.setFilePath(n),_.setFileAbsolutePath(t),_.setApiName(n),_.setIsStruct(t.endsWith(d.StringConstant.ETS_EXTENSION));const h=new Map;return h.set(d.StringConstant.SELF,[_]),c.NodeProcessorHelper.processReference(f,h,_),f.forEachChild((e=>{c.NodeProcessorHelper.processNode(e,h,_)})),r||(r=new Map),r.set(n,h),r}static getApiInfo(e,t,r){const n=[];if(0===e.length)return n;let i=t;for(let t=0;t<e.length;t++){const r=e[t],a=i.get(r);if(!a)return n;i=a}const a=i.get(d.StringConstant.SELF);if(!a)return n;if(n.push(...a),r){const e=f.DiffHelper.judgeIsSameNameFunction(n);n.forEach((t=>{t.setIsSameNameFunction(e)}))}return n}static getParseResults(e){const t=s.default.cloneDeep(e),r=new Map;for(const n of t.keys()){const t=e.get(n),i=l.ResultsProcessHelper.processFileApiMap(t);r.set(n,i)}return JSON.stringify(Object.fromEntries(r),null,2)}static getParseEachSince(e){const t=s.default.cloneDeep(e),r=new Map;for(const n of t.keys()){const t=e.get(n),i=l.ResultsProcessHelper.processFileApiMapForEachSince(t);return r.set(n,i),JSON.stringify(i,null,2)}return""}static getAllBasicApi(e){let t=[];for(const r of e.keys()){const n=e.get(r),i=l.ResultsProcessHelper.processFileApiMapForGetBasicApi(n);t=t.concat(i)}return t}}t.Parser=m,m.needLib=!1},60479:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.ApiStatisticsHelper=void 0;const i=r(19503),a=r(18789),o=r(64158),s=r(42034),c=n(r(55423));class l{static getApiStatisticsInfos(e){const t=[],r=[];for(const n of e.keys()){const i=e.get(n);i&&l.processFileApiMap(i,t,r)}return{apiStatisticsInfos:t,allApiStatisticsInfos:r}}static processFileApiMap(e,t,r){for(const n of e.keys()){if(n===o.StringConstant.SELF)continue;const i=e.get(n);if(!i||Array.isArray(i))continue;const a=i.get(o.StringConstant.SELF),s=new Map;if(!a||!Array.isArray(a))continue;l.connectDefinedText(a,s);const c=new Set;a.forEach((e=>{l.processApiInfo(e,t,s,r,c)}))}}static connectDefinedText(e,t){e.forEach((e=>{if(e.getApiType()===i.ApiType.METHOD){if(a.notMergeDefinedText.has(e.getApiName()))return;const r=t.get(l.joinRelations(e));if(r){const n=`${r}\n${e.getDefinedText()}`;return void t.set(l.joinRelations(e),n)}t.set(l.joinRelations(e),e.getDefinedText())}if(i.containerApiTypes.has(e.getApiType())){const r=e;l.connectDefinedText(r.getChildApis(),t)}}))}static joinRelations(e){return e.getHierarchicalRelations().join()}static processApiInfo(e,t,r,n,s){const c=e;if(n.push(l.initApiStatisticsInfo(c,r,!0)),!a.apiStatisticsType.has(e.getApiType()))return;if(e.getApiName()===o.StringConstant.CONSTRUCTOR_API_NAME)return;const u=l.initApiStatisticsInfo(c,r);if(a.apiNotStatisticsType.has(u.getApiType())||s.has(l.joinRelations(e))||t.push(u),s.add(l.joinRelations(e)),!i.containerApiTypes.has(c.getApiType()))return;c.getChildApis().forEach((e=>{l.processApiInfo(e,t,r,n,s)}))}static initApiStatisticsInfo(e,t,r){const n=new a.ApiStatisticsInfo,s=e.getHierarchicalRelations();s.length>o.NumberConstant.RELATION_LENGTH&&n.setParentModuleName(s[s.length-o.NumberConstant.RELATION_LENGTH]);const c=l.joinRelations(e),u=t.get(c);r?n.setDefinedText(e.getDefinedText()):n.setDefinedText(u||e.getDefinedText());let d=!1;if(e.getApiType()===i.ApiType.METHOD){d=!e.getIsRequired()}else if(e.getApiType()===i.ApiType.PROPERTY){d=!e.getIsRequired()}if(n.setFilePath(e.getFilePath()).setApiType(e.getApiType()).setApiName(e.getApiName()).setPos(e.getPos()).setHierarchicalRelations(s.join("/")).setDecorators(e.getDecorators()).setParentApiType(e.getParentApiType()).setIsOptional(d),i.notJsDocApiTypes.has(e.getApiType()))return n;const p=e.getJsDocInfos()[0];p&&n.setSince(p.getSince());const f=e.getLastJsDocInfo();return f?n.setSyscap(f.getSyscap()?f.getSyscap():l.extendSyscap(e)).setPermission(f.getPermission()).setIsForm(f.getIsForm()).setIsCrossPlatForm(f.getIsCrossPlatForm()).setDeprecatedVersion(f.getDeprecatedVersion()===o.NumberConstant.DEFAULT_DEPRECATED_VERSION?"":f.getDeprecatedVersion()).setUseInstead(f.getUseinstead()).setApiLevel(f.getIsSystemApi()).setModelLimitation(f.getModelLimitation()).setIsAutomicService(f.getIsAtomicService()).setErrorCodes(f.getErrorCode()).setKitInfo(f.getKit()):n.setSyscap(l.extendSyscap(e)),n}static extendSyscap(e){let t=e,r="";const n=t.getNode();try{for(;n&&t&&!c.default.isSourceFile(n);){const e=t.getLastJsDocInfo();if(e&&(r=e.getSyscap()),r)return r;t=t.getParentApi()}}catch(e){s.LogUtil.e("SYSCAP ERROR",e)}return r}static getApiNumber(e){const t=new Set;return e.forEach((e=>{t.add(e.getHierarchicalRelations())})),t.size}}t.ApiStatisticsHelper=l},66608:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=n(r(27461)),a=n(r(7251)),o=r(35846),s=r(30513),c=r(42034),l=r(10391);class u{constructor(){this.program=new i.default.Command}addPluginCommand(e){const t=e.pluginOptions;if(!t)return;const r=this.program.name(t.name).description(t.description).version(t.version).action((t=>{this.judgeOpts(t),e.start(t),e.stop()}));t.commands.forEach((e=>{e.isRequiredOption?r.requiredOption(...e.options):r.option(...e.options)}))}buildCommands(){this.program.parse()}judgeOpts(e){const t=e.toolName;switch(s.toolNameSet.has(t)||this.stopRun(`error toolName "${t}",toolName not in [${[...s.toolNameSet]}] `),t){case s.toolNameType.COLLECT:const t=e.collectPath;""!==t&&l.FileUtils.isExists(t)||this.stopRun(`error collectPath "${t}",collectPath need a exist file path`);break;case s.toolNameType.LABELDETECTION:const r=e.checkLabels;""===r&&this.stopRun(`error checkLabels "${r}",detection tools need checkLabels`)}}stopRun(e){c.LogUtil.e("commander",e),this.program.help({error:!0})}}class d{constructor(){this.commandBuilder=new u}runPlugins(){o.getToolConfiguration().plugins.forEach((e=>{this.commandBuilder.addPluginCommand(e)})),this.commandBuilder.buildCommands()}}Object.assign(process.env,a.default),(new d).runPlugins()},45842:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ErrorBaseInfo=t.ApiBaseInfo=t.ApiCheckInfo=t.ApiResultMessage=t.ApiResultInfo=t.ApiResultSimpleInfo=t.incompatibleApiDiffTypes=t.ErrorMessage=t.ParticularErrorCode=t.ErrorLevel=t.LogType=t.ErrorID=t.ErrorType=void 0;const n=r(51626);var i;!function(e){e.UNKNOW_DECORATOR="unknow decorator",e.MISSPELL_WORDS="misspell words",e.NAMING_ERRORS="naming errors",e.UNKNOW_PERMISSION="unknow permission",e.UNKNOW_SYSCAP="unknow syscap",e.UNKNOW_DEPRECATED="unknow deprecated",e.WRONG_ORDER="wrong order",e.WRONG_VALUE="wrong value",e.WRONG_SCENE="wrong scene",e.PARAMETER_ERRORS="wrong parameter",e.API_PAIR_ERRORS="limited api pair errors",e.FORBIDDEN_WORDS="forbidden word",e.API_CHANGE_ERRORS="api change errors",e.TS_SYNTAX_ERROR="TS syntax error",e.NO_JSDOC="No jsdoc",e.JSDOC_HAS_CHINESE="JSDOC_HAS_CHINESE",e.ERROR_ERROR_CODE="error_error_code"}(t.ErrorType||(t.ErrorType={})),function(e){e[e.UNKNOW_DECORATOR_ID=0]="UNKNOW_DECORATOR_ID",e[e.MISSPELL_WORDS_ID=1]="MISSPELL_WORDS_ID",e[e.NAMING_ERRORS_ID=2]="NAMING_ERRORS_ID",e[e.UNKNOW_PERMISSION_ID=3]="UNKNOW_PERMISSION_ID",e[e.UNKNOW_SYSCAP_ID=4]="UNKNOW_SYSCAP_ID",e[e.UNKNOW_DEPRECATED_ID=5]="UNKNOW_DEPRECATED_ID",e[e.WRONG_ORDER_ID=6]="WRONG_ORDER_ID",e[e.WRONG_VALUE_ID=7]="WRONG_VALUE_ID",e[e.WRONG_SCENE_ID=8]="WRONG_SCENE_ID",e[e.PARAMETER_ERRORS_ID=9]="PARAMETER_ERRORS_ID",e[e.API_PAIR_ERRORS_ID=10]="API_PAIR_ERRORS_ID",e[e.FORBIDDEN_WORDS_ID=11]="FORBIDDEN_WORDS_ID",e[e.API_CHANGE_ERRORS_ID=12]="API_CHANGE_ERRORS_ID",e[e.TS_SYNTAX_ERROR_ID=13]="TS_SYNTAX_ERROR_ID",e[e.NO_JSDOC_ID=14]="NO_JSDOC_ID",e[e.JSDOC_HAS_CHINESE=15]="JSDOC_HAS_CHINESE",e[e.ERROR_ERROR_CODE=16]="ERROR_ERROR_CODE"}(t.ErrorID||(t.ErrorID={})),function(e){e.LOG_API="Api",e.LOG_JSDOC="JsDoc",e.LOG_FILE="File"}(t.LogType||(t.LogType={})),function(e){e[e.HIGH=3]="HIGH",e[e.MIDDLE=2]="MIDDLE",e[e.LOW=1]="LOW"}(t.ErrorLevel||(t.ErrorLevel={})),function(e){e.ERROR_CODE_201="201",e.ERROR_CODE_202="202",e.ERROR_CODE_401="401",e.ERROR_PERMISSION="permission",e.ERROR_SYSTEMAPI="systemapi"}(t.ParticularErrorCode||(t.ParticularErrorCode={})),function(e){e.ERROR_INFO_VALUE_EXTENDS="The [extends] tag value is incorrect. Please check if the tag value matches the inherited class name.",e.ERROR_INFO_VALUE_IMPLEMENTS="The [implements] tag value is incorrect. Please check if the tag value matches the inherited class name.",e.ERROR_INFO_VALUE_ENUM="The [enum] tag type is incorrect. Please check if the tag type is { string } or { number }.",e.ERROR_INFO_VALUE_SINCE="The [since] tag value is incorrect. Please check if the tag value is a numerical value.",e.ERROR_INFO_VALUE_SINCE_NUMBER="The [since] value is greater than the latest version number.",e.ERROR_INFO_VALUE_SINCE_JSDOC="The [since] value for different jsdoc should not be the same.",e.ERROR_INFO_RETURNS="The [returns] tag was used incorrectly. The returns tag should not be used when the return type is void.",e.ERROR_INFO_VALUE_RETURNS="The [returns] tag type is incorrect. Please check if the tag type is consistent with the return type.",e.ERROR_INFO_VALUE_USEINSTEAD="The [useinstead] tag value is incorrect. Please check the usage method.",e.ERROR_INFO_VALUE_TYPE="The [type] tag type is incorrect. Please check if the type matches the attribute type.",e.ERROR_INFO_VALUE_DEFAULT="The [default] tag value is incorrect. Please supplement the default value.",e.ERROR_INFO_VALUE_PERMISSION="The [permission] tag value is incorrect. Please check if the permission field has been configured or update the configuration file.",e.ERROR_INFO_VALUE_DEPRECATED="The [deprecated] tag value is incorrect. Please check the usage method.",e.ERROR_INFO_VALUE_SYSCAP="The [syscap] tag value is incorrect. Please check if the syscap field is configured.",e.ERROR_INFO_VALUE_NAMESPACE="The [namespace] tag value is incorrect. Please check if it matches the namespace name.",e.ERROR_INFO_VALUE_INTERFACE="The [interface] label value is incorrect. Please check if it matches the interface name.",e.ERROR_INFO_VALUE_TYPEDEF="The [typedef] tag value is incorrect. Please check if it matches the interface name or type content.",e.ERROR_INFO_VALUE_STRUCT="The [struct] tag value is incorrect. Please check if it matches the struct name.",e.ERROR_INFO_TYPE_PARAM="The type of the [$$] [param] tag is incorrect. Please check if it matches the type of the [$$] parameter.",e.ERROR_INFO_VALUE_PARAM="The value of the [$$] [param] tag is incorrect. Please check if it matches the [$$] parameter name.",e.ERROR_INFO_VALUE1_THROWS="The type of the [$$] [throws] tag is incorrect. Please fill in [BusinessError].",e.ERROR_INFO_VALUE2_THROWS="The type of the [$$] [throws] tag is incorrect. Please check if the tag value is a numerical value.",e.ERROR_INFO_VALUE3_THROWS="The description of the [401 throws] is incorrect. please fix it according to the specification.",e.ERROR_INFO_INHERIT="It was detected that there is an inheritable label [$$] in the current file, but there are child nodes without this label.",e.ERROR_INFO_FOLLOW="It was detected that there is a following label [$$] in the current file, but the parent nodes without this label.",e.ERROR_ORDER="JSDoc label order error, please adjust the order of [$$] labels.",e.ERROR_LABELNAME="The [$$] tag does not exist. Please use a valid JSDoc tag.",e.ERROR_LOST_LABEL="JSDoc tag validity verification failed. Please confirm if the [$$] tag is missing.",e.ERROR_USE="JSDoc label validity verification failed. The [$$] label is not allowed. Please check the label usage method.",e.ERROR_MORELABEL="JSDoc tag validity verification failed.There are [$$] redundant [$$]. Please check if the tag should be deleted.",e.ERROR_REPEATLABEL="The validity verification of the JSDoc tag failed. The [$$] tag is not allowed to be reused, please delete the extra tags.",e.ERROR_USE_INTERFACE="The validity verification of the JSDoc tag failed. The [interface] tag and [typedef] tag are not allowed to be used simultaneously. Please confirm the interface class.",e.ERROR_EVENT_NAME_STRING="The event name should be string.",e.ERROR_EVENT_NAME_NULL="The event name cannot be Null value.",e.ERROR_EVENT_NAME_SMALL_HUMP='The event name should be named by small hump. (Received ["$$"]).',e.ERROR_EVENT_CALLBACK_OPTIONAL="The callback parameter of off function should be optional.",e.ERROR_EVENT_CALLBACK_MISSING="The off functions of one single event should have at least one callback parameter, and the callback parameter should be the last parameter.",e.ERROR_EVENT_ON_AND_OFF_PAIR="The on and off event subscription methods do not appear in pair.",e.ERROR_EVENT_WITHOUT_PARAMETER="The event subscription methods should has at least one parameter.",e.ILLEGAL_USE_ANY="Illegal [$$] keyword used in the API.",e.ERROR_CHANGES_VERSION="Please check if the changed API version number is 10.",e.ERROR_WORD="Error words in [$$]: {$$}. please confirm whether it needs to be corrected to a common word.",e.ERROR_NAMING="Prohibited word in [$$]:{$$}.The word allowed is [$$].",e.ERROR_SCENARIO="Prohibited word in [$$]:{$$} in the [$$] file.",e.ERROR_UPPERCASE_NAME="This name [$$] should be named by all uppercase.",e.ERROR_LARGE_HUMP_NAME="This name [$$] should be named by large hump.",e.ERROR_SMALL_HUMP_NAME="This name [$$] should be named by small hump.",e.ERROR_SMALL_HUMP_NAME_FILE="This API file should be named by small hump.",e.ERROR_LARGE_HUMP_NAME_FILE="This API file should be named by large hump.",e.ERROR_ANONYMOUS_FUNCTION="Anonymous functions or anonymous object that are not allowed are used in this api.",e.ERROR_NO_JSDOC="Jsdoc needs to be added to the current API.",e.ERROR_NO_JSDOC_TAG="add tags to the Jsdoc.",e.ERROR_HAS_CHINESE="Jsdoc has chinese.",e.ERROR_ERROR_CODE="The generic error code does not contain the current error code.",e.ERROR_ERROR_SYSTEMAPI_ATOMICSERVICE="The [systemapi] and [atomicservice] cannot exist in the same doc.",e.ERROR_CHANGES_JSDOC_LEVEL="Forbid changes: Cannot change from public API to system API.",e.ERROR_CHANGES_JSDOC_PERMISSION_RANGE="Forbid changes: Cannot reduce or permission or increase and permission.",e.ERROR_CHANGES_JSDOC_PERMISSION_VALUE="Forbid changes: Cannot change permission value,cannot judge the range change.",e.ERROR_CHANGES_JSDOC_ERROR_CODE_ADD="Forbid changes: The number of error codes cannot be increased from 0 to multiple error codes.",e.ERROR_CHANGES_JSDOC_ERROR_CODE_VALUE="Forbid changes: Cannot change the error code value.",e.ERROR_CHANGES_JSDOC_CARD="Forbid changes: The card application cannot be changed from supported to not supported.",e.ERROR_CHANGES_JSDOC_CROSS_PLATFORM="Forbid changes: Crossplatform cannot be changed from supported to not supported.",e.ERROR_CHANGES_JSDOC_API_DELETE="Forbid changes: API cannot be deleted.",e.ERROR_CHANGES_JSDOC_FA_TO_STAGE="Forbid changes: Cannot change from FAModelOnly to StageModelOnly.",e.ERROR_CHANGES_JSDOC_STAGE_TO_FA="Forbid changes: Cannot change from StageModelOnly to FAModelOnly.",e.ERROR_CHANGES_JSDOC_NA_TO_STAGE="Forbid changes: Cannot change from nothing to StageModelOnly.",e.ERROR_CHANGES_JSDOC_NA_TO_FA="Forbid changes: Cannot change from nothing to FAModelOnly.",e.ERROR_CHANGES_JSDOC_ATOMICSERVICE_TO_NA="Forbid changes: Cannot change from atomicservice to NA.",e.ERROR_CHANGES_FUNCTION_RETURN_TYPE_ADD="Forbid changes: The function return value type cannot be extended.",e.ERROR_CHANGES_FUNCTION_RETURN_TYPE_REDUCE="Forbid changes: The function return value type cannot be reduced.",e.ERROR_CHANGES_FUNCTION_RETURN_TYPE_CHANGE="Forbid changes: Cannot change function return value type.",e.ERROR_CHANGES_FUNCTION_PARAM_POS_CHANGE="Forbid changes: Cannot change function param position.",e.ERROR_CHANGES_FUNCTION_PARAM_REQUIRED_ADD="Forbid changes: Cannot add function required param.",e.ERROR_CHANGES_FUNCTION_PARAM_REDUCE="Forbid changes: Cannot delete function param.",e.ERROR_CHANGES_FUNCTION_PARAM_TO_REQUIRED="Forbid changes: Cannot change form unrequired param to required param.",e.ERROR_CHANGES_FUNCTION_PARAM_TYPE="Forbid changes: Cannot change function param type.",e.ERROR_CHANGES_FUNCTION_PARAM_TYPE_REDUCE="Forbid changes: The function param type range is cannot be reduced.",e.ERROR_CHANGES_PROPERTY_READONLY_TO_REQUIRED="Forbid changes: Read-only properties cannot be changed from optional to required.",e.ERROR_CHANGES_PROPERTY_WRITABLE_TO_UNREQUIRED="Forbid changes: Writable properties cannot be changed from required to optional.",e.ERROR_CHANGES_PROPERTY_WRITABLE_TO_REQUIRED="Forbid changes: Writable properties cannot be changed from optional to required.",e.ERROR_CHANGES_PROPERTY_TYPE_CHANGE="Forbid changes: Cannot change property type.",e.ERROR_CHANGES_PROPERTY_READONLY_ADD="Forbid changes: Cannot Expand the range of readonly property types.",e.ERROR_CHANGES_PROPERTY_WRITABLE_ADD="Forbid changes: Cannot Expand the range of writable property types.",e.ERROR_CHANGES_PROPERTY_WRITABLE_REDUCE="Forbid changes: Cannot reduce the range of writable property types.",e.ERROR_CHANGES_DELETE_DECORATOR="Forbid changes: Decorator cannot be deleted.",e.ERROR_CHANGES_CONSTANT_VALUE="Forbid changes: Cannot change constant value.",e.ERROR_CHANGES_TYPE_ALIAS_VALUE="Forbid changes: Cannot change custom type value.",e.ERROR_CHANGES_TYPE_ALIAS_ADD="Forbid changes: Cannot expand the range of custom type.",e.ERROR_CHANGES_TYPE_ALIAS_REDUCE="Forbid changes: Cannot reduce the range of custom type.",e.ERROR_CHANGES_ENUM_MEMBER_VALUE="Forbid changes: Cannot change Enumeration assignment.",e.ERROR_CHANGES_JSDOC_CHANGE="Forbid changes: Historical JSDoc cannot be changed.",e.ERROR_CHANGES_JSDOC_NUMBER="Forbid changes: API changes must add a new section of JSDoc.",e.ERROR_CHANGES_SYSCAP_NA_TO_HAVE="Forbid changes: Cannot change from NA to syscap.",e.ERROR_CHANGES_SYSCAP_HAVE_TO_NA="Forbid changes: Cannot change from syscap to NA.",e.ERROR_CHANGES_SYSCAP_A_TO_B="Forbid changes: Cannot change syscap value.",e.ERROR_CHANGES_ADD_PROPERTY="Forbid changes: Cannot add new property to interface API."}(i=t.ErrorMessage||(t.ErrorMessage={})),t.incompatibleApiDiffTypes=new Map([[n.ApiDiffType.HISTORICAL_JSDOC_CHANGE,i.ERROR_CHANGES_JSDOC_CHANGE],[n.ApiDiffType.HISTORICAL_API_CHANGE,i.ERROR_CHANGES_JSDOC_NUMBER],[n.ApiDiffType.PUBLIC_TO_SYSTEM,i.ERROR_CHANGES_JSDOC_LEVEL],[n.ApiDiffType.PERMISSION_NA_TO_HAVE,i.ERROR_CHANGES_JSDOC_PERMISSION_VALUE],[n.ApiDiffType.PERMISSION_RANGE_SMALLER,i.ERROR_CHANGES_JSDOC_PERMISSION_RANGE],[n.ApiDiffType.PERMISSION_RANGE_CHANGE,i.ERROR_CHANGES_JSDOC_PERMISSION_VALUE],[n.ApiDiffType.ERROR_CODE_NA_TO_HAVE,i.ERROR_CHANGES_JSDOC_ERROR_CODE_ADD],[n.ApiDiffType.ERROR_CODE_CHANGE,i.ERROR_CHANGES_JSDOC_ERROR_CODE_VALUE],[n.ApiDiffType.CARD_TO_NA,i.ERROR_CHANGES_JSDOC_CARD],[n.ApiDiffType.CROSS_PLATFORM_TO_NA,i.ERROR_CHANGES_JSDOC_CROSS_PLATFORM],[n.ApiDiffType.REDUCE,i.ERROR_CHANGES_JSDOC_API_DELETE],[n.ApiDiffType.FA_TO_STAGE,i.ERROR_CHANGES_JSDOC_FA_TO_STAGE],[n.ApiDiffType.STAGE_TO_FA,i.ERROR_CHANGES_JSDOC_STAGE_TO_FA],[n.ApiDiffType.NA_TO_STAGE,i.ERROR_CHANGES_JSDOC_NA_TO_STAGE],[n.ApiDiffType.NA_TO_FA,i.ERROR_CHANGES_JSDOC_NA_TO_FA],[n.ApiDiffType.FUNCTION_RETURN_TYPE_ADD,i.ERROR_CHANGES_FUNCTION_RETURN_TYPE_ADD],[n.ApiDiffType.FUNCTION_RETURN_TYPE_REDUCE,i.ERROR_CHANGES_FUNCTION_RETURN_TYPE_REDUCE],[n.ApiDiffType.FUNCTION_RETURN_TYPE_CHANGE,i.ERROR_CHANGES_FUNCTION_RETURN_TYPE_CHANGE],[n.ApiDiffType.FUNCTION_PARAM_POS_CHANGE,i.ERROR_CHANGES_FUNCTION_PARAM_POS_CHANGE],[n.ApiDiffType.FUNCTION_PARAM_REQUIRED_ADD,i.ERROR_CHANGES_FUNCTION_PARAM_REQUIRED_ADD],[n.ApiDiffType.FUNCTION_PARAM_REDUCE,i.ERROR_CHANGES_FUNCTION_PARAM_REDUCE],[n.ApiDiffType.FUNCTION_PARAM_TO_REQUIRED,i.ERROR_CHANGES_FUNCTION_PARAM_TO_REQUIRED],[n.ApiDiffType.FUNCTION_PARAM_TYPE_CHANGE,i.ERROR_CHANGES_FUNCTION_PARAM_TYPE],[n.ApiDiffType.FUNCTION_PARAM_TYPE_REDUCE,i.ERROR_CHANGES_FUNCTION_PARAM_TYPE_REDUCE],[n.ApiDiffType.PROPERTY_READONLY_TO_REQUIRED,i.ERROR_CHANGES_PROPERTY_READONLY_TO_REQUIRED],[n.ApiDiffType.PROPERTY_WRITABLE_TO_UNREQUIRED,i.ERROR_CHANGES_PROPERTY_WRITABLE_TO_UNREQUIRED],[n.ApiDiffType.PROPERTY_WRITABLE_TO_REQUIRED,i.ERROR_CHANGES_PROPERTY_WRITABLE_TO_REQUIRED],[n.ApiDiffType.PROPERTY_TYPE_CHANGE,i.ERROR_CHANGES_PROPERTY_TYPE_CHANGE],[n.ApiDiffType.PROPERTY_READONLY_ADD,i.ERROR_CHANGES_PROPERTY_READONLY_ADD],[n.ApiDiffType.PROPERTY_WRITABLE_ADD,i.ERROR_CHANGES_PROPERTY_WRITABLE_ADD],[n.ApiDiffType.PROPERTY_WRITABLE_REDUCE,i.ERROR_CHANGES_PROPERTY_WRITABLE_REDUCE],[n.ApiDiffType.DELETE_DECORATOR,i.ERROR_CHANGES_DELETE_DECORATOR],[n.ApiDiffType.CONSTANT_VALUE_CHANGE,i.ERROR_CHANGES_CONSTANT_VALUE],[n.ApiDiffType.TYPE_ALIAS_CHANGE,i.ERROR_CHANGES_TYPE_ALIAS_VALUE],[n.ApiDiffType.TYPE_ALIAS_ADD,i.ERROR_CHANGES_TYPE_ALIAS_ADD],[n.ApiDiffType.TYPE_ALIAS_REDUCE,i.ERROR_CHANGES_TYPE_ALIAS_REDUCE],[n.ApiDiffType.ENUM_MEMBER_VALUE_CHANGE,i.ERROR_CHANGES_ENUM_MEMBER_VALUE],[n.ApiDiffType.ATOMIC_SERVICE_HAVE_TO_NA,i.ERROR_CHANGES_JSDOC_ATOMICSERVICE_TO_NA],[n.ApiDiffType.SYSCAP_NA_TO_HAVE,i.ERROR_CHANGES_SYSCAP_NA_TO_HAVE],[n.ApiDiffType.SYSCAP_HAVE_TO_NA,i.ERROR_CHANGES_SYSCAP_HAVE_TO_NA],[n.ApiDiffType.SYSCAP_A_TO_B,i.ERROR_CHANGES_SYSCAP_A_TO_B],[n.ApiDiffType.ADD,i.ERROR_CHANGES_ADD_PROPERTY]]);t.ApiResultSimpleInfo=class{constructor(){this.id=-1,this.level=-1,this.filePath="",this.location="",this.message="",this.type="",this.apiText="",this.apiName="",this.apiType="",this.hierarchicalRelations="",this.parentModuleName=""}setID(e){return this.id=e,this}getID(){return this.id}setLevel(e){return this.level=e,this}getLevel(){return this.level}setLocation(e){return this.location=e,this}getLocation(){return this.location}setFilePath(e){return this.filePath=e,this}getFilePath(){return this.filePath}setMessage(e){return this.message=e,this}getMessage(){return this.message}setType(e){return this.type=e,this}getType(){return this.type}setApiText(e){return this.apiText=e,this}getApiText(){return this.apiText}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setParentModuleName(e){return this.parentModuleName=e,this}getParentModuleName(){return this.parentModuleName}};t.ApiResultInfo=class{constructor(){this.errorType="",this.location="",this.apiType="",this.message="",this.version=-1,this.level=-1,this.apiName="",this.apiFullText="",this.baseName="",this.hierarchicalRelations="",this.parentModuleName="",this.defectType=""}setErrorType(e){return this.errorType=e,this}getErrorType(){return this.errorType}setLocation(e){return this.location=e,this}getLocation(){return this.location}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setMessage(e){return this.message=e,this}getMessage(){return this.message}setVersion(e){return this.version=e,this}getVersion(){return this.version}setLevel(e){return this.level=e,this}getLevel(){return this.level}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setApiFullText(e){return this.apiFullText=e,this}getApiFullText(){return this.apiFullText}setBaseName(e){return this.baseName=e,this}getBaseName(){return this.baseName}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setParentModuleName(e){return this.parentModuleName=e,this}getParentModuleName(){return this.parentModuleName}setDefectType(e){return this.defectType=e,this}getDefectType(){return this.defectType}};t.ApiResultMessage=class{constructor(){this.analyzerName="apiengine",this.buggyFilePath="",this.codeContextStaerLine="",this.defectLevel=-1,this.defectType="",this.description="",this.language="typescript",this.mainBuggyCode="",this.mainBuggyLine="",this.extendInfo=new a}setLocation(e){return this.codeContextStaerLine=e,this}getLocation(){return this.codeContextStaerLine}setLevel(e){return this.defectLevel=e,this}getLevel(){return this.defectLevel}setType(e){return this.defectType=e,this}getType(){return this.defectType}setFilePath(e){return this.buggyFilePath=e,this}getFilePath(){return this.buggyFilePath}setMessage(e){return this.description=e,this}getMessage(){return this.description}setMainBuggyCode(e){return this.mainBuggyCode=e,this}getMainBuggyCode(){return this.mainBuggyCode}setMainBuggyLine(e){return this.mainBuggyLine=e,this}getMainBuggyLine(){return this.mainBuggyLine}setExtendInfo(e){return this.extendInfo=e,this}getExtendInfo(){return this.extendInfo}};t.ApiCheckInfo=class{constructor(){this.errorID=-1,this.errorLevel=-1,this.filePath="",this.apiPostion={line:-1,character:-1},this.errorType="",this.logType="",this.sinceNumber=-1,this.apiName="",this.apiType="",this.apiText="",this.errorInfo="",this.hierarchicalRelations="",this.parentModuleName=""}setErrorID(e){return this.errorID=e,this}getErrorID(){return this.errorID}setErrorLevel(e){return this.errorLevel=e,this}getErrorLevel(){return this.errorLevel}setFilePath(e){return this.filePath=e,this}getFilePath(){return this.filePath}setApiPostion(e){return this.apiPostion=e,this}getApiPostion(){return this.apiPostion}setErrorType(e){return this.errorType=e,this}getErrorType(){return this.errorType}setLogType(e){return this.logType=e,this}getLogType(){return this.logType}setSinceNumber(e){return this.sinceNumber=e,this}getSinceNumber(){return this.sinceNumber}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setApiText(e){return this.apiText=e,this}getApiText(){return this.apiText}setErrorInfo(e){return this.errorInfo=e,this}getErrorInfo(){return this.errorInfo}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setParentModuleName(e){return this.parentModuleName=e,this}getParentModuleName(){return this.parentModuleName}};class a{constructor(){this.apiName="",this.apiType="",this.hierarchicalRelations="",this.parentModuleName=""}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setParentModuleName(e){return this.parentModuleName=e,this}getParentModuleName(){return this.parentModuleName}}t.ApiBaseInfo=a;t.ErrorBaseInfo=class{constructor(){this.errorID=-1,this.errorLevel=-1,this.errorType="",this.logType="",this.errorInfo=""}setErrorID(e){return this.errorID=e,this}getErrorID(){return this.errorID}setErrorLevel(e){return this.errorLevel=e,this}getErrorLevel(){return this.errorLevel}setErrorType(e){return this.errorType=e,this}getErrorType(){return this.errorType}setLogType(e){return this.logType=e,this}getLogType(){return this.logType}setErrorInfo(e){return this.errorInfo=e,this}getErrorInfo(){return this.errorInfo}}},91676:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiCountInfo=void 0;t.ApiCountInfo=class{constructor(){this.filePath="",this.kitName="",this.subSystem="",this.apiNumber=-1}setFilePath(e){return this.filePath=e,this}getFilePath(){return this.filePath}setKitName(e){return e?(this.kitName=e,this):this}getKitName(){return this.kitName}setsubSystem(e){return e?(this.subSystem=e,this):this}getsubSystem(){return this.subSystem}setApiNumber(e){return this.apiNumber=e,this}getApiNumber(){return this.apiNumber}}},51626:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parentApiTypeSet=t.isNotApiSet=t.incompatibleApiDiffTypes=t.apiChangeMap=t.diffMap=t.diffTypeMap=t.ApiDiffType=t.ApiStatusCode=t.DiffNumberInfo=t.DiffTypeInfo=t.BasicDiffInfo=void 0;const n=r(19503),i=r(64158);class a{constructor(){this.apiType=a.EMPTY,this.statusCode=o.DEFAULT,this.oldApiDefinedText=a.EMPTY,this.newApiDefinedText=a.EMPTY,this.oldApiName=a.EMPTY,this.newApiName=a.EMPTY,this.oldDtsName=a.EMPTY,this.newDtsName=a.EMPTY,this.diffType=s.DEFAULT,this.diffMessage="",this.changeLogUrl="",this.changeLogs=[],this.isCompatible=!0,this.oldHierarchicalRelations=[],this.newHierarchicalRelations=[],this.oldPos={line:-1,character:-1},this.newPos={line:-1,character:-1},this.oldDescription="",this.newDescription="",this.oldSyscapField="",this.newSyscapField="",this.oldKitInfo="",this.newKitInfo="",this.isSystemapi=!1,this.isSameNameFunction=!1}setApiType(e){return this.apiType=e||a.EMPTY,this}getApiType(){return this.apiType}getStatusCode(){return this.statusCode}setStatusCode(e){return this.statusCode=e,this}setOldApiDefinedText(e){return this.oldApiDefinedText=e,this}getOldApiDefinedText(){return this.oldApiDefinedText}setNewApiDefinedText(e){return this.newApiDefinedText=e,this}getNewApiDefinedText(){return this.newApiDefinedText}setOldApiName(e){return this.oldApiName=e,this}getOldApiName(){return this.oldApiName}setNewApiName(e){return this.newApiName=e,this}getNewApiName(){return this.newApiName}setOldDtsName(e){return this.oldDtsName=e,this}getOldDtsName(){return this.oldDtsName}setNewDtsName(e){return this.newDtsName=e,this}getNewDtsName(){return this.newDtsName}setDiffType(e){return this.diffType=e,this}getDiffType(){return this.diffType}setDiffMessage(e){return this.diffMessage=e,this}getDiffMessage(){return this.diffMessage}setChangeLogUrl(e){return this.changeLogUrl=e,this}getChangeLogUrl(){return this.changeLogUrl}addChangeLogs(e){return this.changeLogs.push(e),this}getChangeLogs(){return this.changeLogs}setIsCompatible(e){return this.isCompatible=e,this}getIsCompatible(){return this.isCompatible}setOldHierarchicalRelations(e){return this.oldHierarchicalRelations=e,this}getOldHierarchicalRelations(){return this.oldHierarchicalRelations}setNewHierarchicalRelations(e){return this.newHierarchicalRelations=e,this}getNewHierarchicalRelations(){return this.newHierarchicalRelations}setOldPos(e){return this.oldPos=e,this}getOldPos(){return this.oldPos}setNewPos(e){return this.newPos=e,this}getNewPos(){return this.newPos}getOldDescription(){return this.oldDescription}setOldDescription(e){return this.oldDescription=e,this}getNewDescription(){return this.newDescription}setNewDescription(e){return this.newDescription=e,this}getOldApiInfo(){return""}getParentModuleName(e){let t="global";return e.length>i.NumberConstant.RELATION_LENGTH&&(t=e[e.length-i.NumberConstant.RELATION_LENGTH]),t}setOldSyscapField(e){return this.oldSyscapField=e,this}getOldSyscapField(){return this.oldSyscapField}setNewSyscapField(e){return this.newSyscapField=e,this}getNewSyscapField(){return this.newSyscapField}setOldKitInfo(e){return this.oldKitInfo=e,this}getOldKitInfo(){return this.oldKitInfo}setNewKitInfo(e){return this.newKitInfo=e,this}getNewKitInfo(){return this.newKitInfo}setIsSystemapi(e){return e&&(this.isSystemapi=e),this}getIsSystemapi(){return this.isSystemapi}setIsSameNameFunction(e){return this.isSameNameFunction=e,this}getIsSameNameFunction(){return this.isSameNameFunction}}t.BasicDiffInfo=a,a.EMPTY="";t.DiffTypeInfo=class{constructor(e,t,r,n){this.diffType=s.DEFAULT,this.statusCode=o.DEFAULT,this.oldMessage="",this.newMessage="",void 0!==e&&this.setStatusCode(e),t&&this.setDiffType(t),r&&this.setOldMessage(r),n&&this.setNewMessage(n)}getStatusCode(){return this.statusCode}setStatusCode(e){return this.statusCode=e,this}getDiffType(){return this.diffType}setDiffType(e){return this.diffType=e,this}getOldMessage(){return this.oldMessage}setOldMessage(e){return this.oldMessage=e,this}getNewMessage(){return this.newMessage}setNewMessage(e){return this.newMessage=e,this}};var o,s;t.DiffNumberInfo=class{constructor(){this.apiName="",this.kitName="",this.subsystem="",this.apiType="",this.allDiffType=[],this.allChangeType=[],this.compatibleInfo={},this.oldDiffMessage=[],this.newDiffMessage=[],this.allCompatible=[],this.diffTypeNumber=0,this.isApi=!0,this.apiRelation="",this.isSystemapi=!1,this.isSameNameFunction=!1}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setKitName(e){return e?(this.kitName=e,this):this}getKitName(){return this.kitName}setSubsystem(e){return e?(this.subsystem=e,this):this}getSubsystem(){return this.subsystem}setApiType(e){return this.apiType=e,this}getApiType(){return this.apiType}setAllDiffType(e){return this.allDiffType.push(e),this}getAllDiffType(){return this.allDiffType}setOldDiffMessage(e){return"-1"===e||""===e?(this.oldDiffMessage.push("NA"),this):(this.oldDiffMessage.push(e),this)}getOldDiffMessage(){return this.oldDiffMessage}setNewDiffMessage(e){return"-1"===e||""===e?(this.newDiffMessage.push("NA"),this):(this.newDiffMessage.push(e),this)}getNewDiffMessage(){return this.newDiffMessage}setAllChangeType(e){return e?(this.allChangeType.push(e),this):this}getAllChangeType(){return this.allChangeType}setAllCompatible(e){return this.allCompatible.push(e),this}getAllCompatible(){return this.allCompatible}setDiffTypeNumber(e){return this.diffTypeNumber=e,this}getDiffTypeNumber(){return this.diffTypeNumber}setIsApi(e){return this.isApi=e,this}getIsApi(){return this.isApi}setApiRelation(e){return this.apiRelation=e,this}getApiRelation(){return this.apiRelation}setIsSystemapi(e){return this.isSystemapi=e,this}getIsSystemapi(){return this.isSystemapi}setIsSameNameFunction(e){return this.isSameNameFunction=e,this}getIsSameNameFunction(){return this.isSameNameFunction}},function(e){e[e.DEFAULT=-1]="DEFAULT",e[e.DELETE=0]="DELETE",e[e.DELETE_DTS=1]="DELETE_DTS",e[e.DELETE_CLASS=2]="DELETE_CLASS",e[e.NEW_API=3]="NEW_API",e[e.VERSION_CHNAGES=4]="VERSION_CHNAGES",e[e.DEPRECATED_CHNAGES=5]="DEPRECATED_CHNAGES",e[e.NEW_ERRORCODE=6]="NEW_ERRORCODE",e[e.ERRORCODE_CHANGES=7]="ERRORCODE_CHANGES",e[e.SYSCAP_CHANGES=8]="SYSCAP_CHANGES",e[e.SYSTEM_API_CHNAGES=9]="SYSTEM_API_CHNAGES",e[e.PERMISSION_DELETE=10]="PERMISSION_DELETE",e[e.PERMISSION_NEW=11]="PERMISSION_NEW",e[e.PERMISSION_CHANGES=12]="PERMISSION_CHANGES",e[e.MODEL_CHNAGES=13]="MODEL_CHNAGES",e[e.TYPE_CHNAGES=14]="TYPE_CHNAGES",e[e.CLASS_CHANGES=15]="CLASS_CHANGES",e[e.FUNCTION_CHANGES=16]="FUNCTION_CHANGES",e[e.CHANGELOG=17]="CHANGELOG",e[e.DTS_CHANGED=18]="DTS_CHANGED",e[e.FORM_CHANGED=19]="FORM_CHANGED",e[e.CROSSPLATFORM_CHANGED=20]="CROSSPLATFORM_CHANGED",e[e.NEW_DTS=21]="NEW_DTS",e[e.NEW_CLASS=22]="NEW_CLASS",e[e.NEW_DECORATOR=23]="NEW_DECORATOR",e[e.DELETE_DECORATOR=24]="DELETE_DECORATOR",e[e.KIT_CHANGE=26]="KIT_CHANGE",e[e.ATOMICSERVICE_CHANGE=27]="ATOMICSERVICE_CHANGE",e[e.ERRORCODE_DELETE=28]="ERRORCODE_DELETE"}(o=t.ApiStatusCode||(t.ApiStatusCode={})),function(e){e[e.DEFAULT=0]="DEFAULT",e[e.SYSTEM_TO_PUBLIC=1]="SYSTEM_TO_PUBLIC",e[e.PUBLIC_TO_SYSTEM=2]="PUBLIC_TO_SYSTEM",e[e.NA_TO_STAGE=3]="NA_TO_STAGE",e[e.NA_TO_FA=4]="NA_TO_FA",e[e.FA_TO_STAGE=5]="FA_TO_STAGE",e[e.STAGE_TO_FA=6]="STAGE_TO_FA",e[e.STAGE_TO_NA=7]="STAGE_TO_NA",e[e.FA_TO_NA=8]="FA_TO_NA",e[e.NA_TO_CARD=9]="NA_TO_CARD",e[e.CARD_TO_NA=10]="CARD_TO_NA",e[e.NA_TO_CROSS_PLATFORM=11]="NA_TO_CROSS_PLATFORM",e[e.CROSS_PLATFORM_TO_NA=12]="CROSS_PLATFORM_TO_NA",e[e.SYSCAP_NA_TO_HAVE=13]="SYSCAP_NA_TO_HAVE",e[e.SYSCAP_HAVE_TO_NA=14]="SYSCAP_HAVE_TO_NA",e[e.SYSCAP_A_TO_B=15]="SYSCAP_A_TO_B",e[e.DEPRECATED_NA_TO_HAVE=16]="DEPRECATED_NA_TO_HAVE",e[e.DEPRECATED_HAVE_TO_NA=17]="DEPRECATED_HAVE_TO_NA",e[e.DEPRECATED_A_TO_B=18]="DEPRECATED_A_TO_B",e[e.DEPRECATED_NOT_All=19]="DEPRECATED_NOT_All",e[e.ERROR_CODE_NA_TO_HAVE=20]="ERROR_CODE_NA_TO_HAVE",e[e.ERROR_CODE_ADD=21]="ERROR_CODE_ADD",e[e.ERROR_CODE_REDUCE=22]="ERROR_CODE_REDUCE",e[e.ERROR_CODE_CHANGE=23]="ERROR_CODE_CHANGE",e[e.PERMISSION_NA_TO_HAVE=24]="PERMISSION_NA_TO_HAVE",e[e.PERMISSION_HAVE_TO_NA=25]="PERMISSION_HAVE_TO_NA",e[e.PERMISSION_RANGE_BIGGER=26]="PERMISSION_RANGE_BIGGER",e[e.PERMISSION_RANGE_SMALLER=27]="PERMISSION_RANGE_SMALLER",e[e.PERMISSION_RANGE_CHANGE=28]="PERMISSION_RANGE_CHANGE",e[e.TYPE_RANGE_BIGGER=29]="TYPE_RANGE_BIGGER",e[e.TYPE_RANGE_SMALLER=30]="TYPE_RANGE_SMALLER",e[e.TYPE_RANGE_CHANGE=31]="TYPE_RANGE_CHANGE",e[e.API_NAME_CHANGE=32]="API_NAME_CHANGE",e[e.FUNCTION_RETURN_TYPE_ADD=33]="FUNCTION_RETURN_TYPE_ADD",e[e.FUNCTION_RETURN_TYPE_REDUCE=34]="FUNCTION_RETURN_TYPE_REDUCE",e[e.FUNCTION_RETURN_TYPE_CHANGE=35]="FUNCTION_RETURN_TYPE_CHANGE",e[e.FUNCTION_PARAM_POS_CHANGE=36]="FUNCTION_PARAM_POS_CHANGE",e[e.FUNCTION_PARAM_UNREQUIRED_ADD=37]="FUNCTION_PARAM_UNREQUIRED_ADD",e[e.FUNCTION_PARAM_REQUIRED_ADD=38]="FUNCTION_PARAM_REQUIRED_ADD",e[e.FUNCTION_PARAM_REDUCE=39]="FUNCTION_PARAM_REDUCE",e[e.FUNCTION_PARAM_TO_UNREQUIRED=40]="FUNCTION_PARAM_TO_UNREQUIRED",e[e.FUNCTION_PARAM_TO_REQUIRED=41]="FUNCTION_PARAM_TO_REQUIRED",e[e.FUNCTION_PARAM_NAME_CHANGE=42]="FUNCTION_PARAM_NAME_CHANGE",e[e.FUNCTION_PARAM_TYPE_CHANGE=43]="FUNCTION_PARAM_TYPE_CHANGE",e[e.FUNCTION_PARAM_TYPE_ADD=44]="FUNCTION_PARAM_TYPE_ADD",e[e.FUNCTION_PARAM_TYPE_REDUCE=45]="FUNCTION_PARAM_TYPE_REDUCE",e[e.FUNCTION_PARAM_CHANGE=46]="FUNCTION_PARAM_CHANGE",e[e.FUNCTION_CHANGES=47]="FUNCTION_CHANGES",e[e.PROPERTY_READONLY_TO_UNREQUIRED=48]="PROPERTY_READONLY_TO_UNREQUIRED",e[e.PROPERTY_READONLY_TO_REQUIRED=49]="PROPERTY_READONLY_TO_REQUIRED",e[e.PROPERTY_WRITABLE_TO_UNREQUIRED=50]="PROPERTY_WRITABLE_TO_UNREQUIRED",e[e.PROPERTY_WRITABLE_TO_REQUIRED=51]="PROPERTY_WRITABLE_TO_REQUIRED",e[e.PROPERTY_TYPE_CHANGE=52]="PROPERTY_TYPE_CHANGE",e[e.PROPERTY_READONLY_ADD=53]="PROPERTY_READONLY_ADD",e[e.PROPERTY_READONLY_REDUCE=54]="PROPERTY_READONLY_REDUCE",e[e.PROPERTY_WRITABLE_ADD=55]="PROPERTY_WRITABLE_ADD",e[e.PROPERTY_WRITABLE_REDUCE=56]="PROPERTY_WRITABLE_REDUCE",e[e.CONSTANT_VALUE_CHANGE=57]="CONSTANT_VALUE_CHANGE",e[e.TYPE_ALIAS_CHANGE=58]="TYPE_ALIAS_CHANGE",e[e.TYPE_ALIAS_ADD=59]="TYPE_ALIAS_ADD",e[e.TYPE_ALIAS_REDUCE=60]="TYPE_ALIAS_REDUCE",e[e.TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD=61]="TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD",e[e.TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE=62]="TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE",e[e.TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE=63]="TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE",e[e.TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE=64]="TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE",e[e.TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD=65]="TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD",e[e.TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD=66]="TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD",e[e.TYPE_ALIAS_FUNCTION_PARAM_REDUCE=67]="TYPE_ALIAS_FUNCTION_PARAM_REDUCE",e[e.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE=68]="TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE",e[e.TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED=69]="TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED",e[e.TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED=70]="TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED",e[e.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD=71]="TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD",e[e.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE=72]="TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE",e[e.TYPE_ALIAS_FUNCTION_PARAM_CHANGE=73]="TYPE_ALIAS_FUNCTION_PARAM_CHANGE",e[e.ENUM_MEMBER_VALUE_CHANGE=74]="ENUM_MEMBER_VALUE_CHANGE",e[e.ADD=75]="ADD",e[e.REDUCE=76]="REDUCE",e[e.NEW_DECORATOR=77]="NEW_DECORATOR",e[e.DELETE_DECORATOR=78]="DELETE_DECORATOR",e[e.SINCE_VERSION_NA_TO_HAVE=79]="SINCE_VERSION_NA_TO_HAVE",e[e.SINCE_VERSION_HAVE_TO_NA=80]="SINCE_VERSION_HAVE_TO_NA",e[e.SINCE_VERSION_A_TO_B=81]="SINCE_VERSION_A_TO_B",e[e.HISTORICAL_JSDOC_CHANGE=82]="HISTORICAL_JSDOC_CHANGE",e[e.HISTORICAL_API_CHANGE=83]="HISTORICAL_API_CHANGE",e[e.KIT_CHANGE=84]="KIT_CHANGE",e[e.ATOMIC_SERVICE_NA_TO_HAVE=85]="ATOMIC_SERVICE_NA_TO_HAVE",e[e.ATOMIC_SERVICE_HAVE_TO_NA=86]="ATOMIC_SERVICE_HAVE_TO_NA",e[e.PROPERTY_TYPE_SIGN_CHANGE=87]="PROPERTY_TYPE_SIGN_CHANGE",e[e.KIT_HAVE_TO_NA=88]="KIT_HAVE_TO_NA",e[e.KIT_NA_TO_HAVE=89]="KIT_NA_TO_HAVE",e[e.NEW_SAME_NAME_FUNCTION=90]="NEW_SAME_NAME_FUNCTION",e[e.REDUCE_SAME_NAME_FUNCTION=91]="REDUCE_SAME_NAME_FUNCTION",e[e.PARAM_TYPE_CHANGE_COMPATIABLE=92]="PARAM_TYPE_CHANGE_COMPATIABLE",e[e.PARAM_TYPE_CHANGE_IN_COMPATIABLE=93]="PARAM_TYPE_CHANGE_IN_COMPATIABLE"}(s=t.ApiDiffType||(t.ApiDiffType={})),t.diffTypeMap=new Map([[s.SYSTEM_TO_PUBLIC,"API访问级别变更"],[s.PUBLIC_TO_SYSTEM,"API访问级别变更"],[s.NA_TO_STAGE,"API模型切换"],[s.NA_TO_FA,"API模型切换"],[s.FA_TO_STAGE,"API模型切换"],[s.STAGE_TO_FA,"API模型切换"],[s.STAGE_TO_NA,"API模型切换"],[s.FA_TO_NA,"API模型切换"],[s.NA_TO_CARD,"API卡片权限变更"],[s.CARD_TO_NA,"API卡片权限变更"],[s.NA_TO_CROSS_PLATFORM,"API跨平台权限变更"],[s.CROSS_PLATFORM_TO_NA,"API跨平台权限变更"],[s.SYSCAP_NA_TO_HAVE,"syscap变更"],[s.SYSCAP_HAVE_TO_NA,"syscap变更"],[s.SYSCAP_A_TO_B,"syscap变更"],[s.DEPRECATED_NA_TO_HAVE,"API废弃版本变更"],[s.DEPRECATED_HAVE_TO_NA,"API废弃版本变更"],[s.DEPRECATED_NOT_All,"API废弃版本变更"],[s.DEPRECATED_A_TO_B,"API废弃版本变更"],[s.ERROR_CODE_NA_TO_HAVE,"错误码变更"],[s.ERROR_CODE_ADD,"错误码变更"],[s.ERROR_CODE_REDUCE,"错误码变更"],[s.ERROR_CODE_CHANGE,"错误码变更"],[s.PERMISSION_NA_TO_HAVE,"权限变更"],[s.PERMISSION_HAVE_TO_NA,"权限变更"],[s.PERMISSION_RANGE_BIGGER,"权限变更"],[s.PERMISSION_RANGE_SMALLER,"权限变更"],[s.PERMISSION_RANGE_CHANGE,"权限变更"],[s.TYPE_RANGE_BIGGER,"自定义类型变更"],[s.TYPE_RANGE_SMALLER,"自定义类型变更"],[s.TYPE_RANGE_CHANGE,"自定义类型变更"],[s.API_NAME_CHANGE,"API名称变更"],[s.FUNCTION_RETURN_TYPE_ADD,"函数变更"],[s.FUNCTION_RETURN_TYPE_REDUCE,"函数变更"],[s.FUNCTION_RETURN_TYPE_CHANGE,"函数变更"],[s.FUNCTION_PARAM_POS_CHANGE,"函数变更"],[s.FUNCTION_PARAM_UNREQUIRED_ADD,"函数变更"],[s.FUNCTION_PARAM_REQUIRED_ADD,"函数变更"],[s.FUNCTION_PARAM_REDUCE,"函数变更"],[s.FUNCTION_PARAM_TO_UNREQUIRED,"函数变更"],[s.FUNCTION_PARAM_TO_REQUIRED,"函数变更"],[s.FUNCTION_PARAM_NAME_CHANGE,"函数变更"],[s.FUNCTION_PARAM_TYPE_CHANGE,"函数变更"],[s.FUNCTION_PARAM_TYPE_ADD,"函数变更"],[s.FUNCTION_PARAM_TYPE_REDUCE,"函数变更"],[s.FUNCTION_PARAM_CHANGE,"函数变更"],[s.FUNCTION_CHANGES,"函数变更"],[s.PROPERTY_READONLY_TO_UNREQUIRED,"属性变更"],[s.PROPERTY_READONLY_TO_REQUIRED,"属性变更"],[s.PROPERTY_WRITABLE_TO_UNREQUIRED,"属性变更"],[s.PROPERTY_WRITABLE_TO_REQUIRED,"属性变更"],[s.PROPERTY_TYPE_CHANGE,"属性变更"],[s.PROPERTY_READONLY_ADD,"属性变更"],[s.PROPERTY_READONLY_REDUCE,"属性变更"],[s.PROPERTY_WRITABLE_ADD,"属性变更"],[s.PROPERTY_WRITABLE_REDUCE,"属性变更"],[s.PROPERTY_TYPE_SIGN_CHANGE,"属性变更"],[s.CONSTANT_VALUE_CHANGE,"常量变更"],[s.TYPE_ALIAS_CHANGE,"自定义类型变更"],[s.TYPE_ALIAS_ADD,"自定义类型变更"],[s.TYPE_ALIAS_REDUCE,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD,"函数变更"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE,"函数变更"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE,"函数变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_REDUCE,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE,"自定义类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_CHANGE,"自定义类型变更"],[s.ENUM_MEMBER_VALUE_CHANGE,"枚举赋值发生改变"],[s.ADD,"新增API"],[s.REDUCE,"删除API"],[s.DELETE_DECORATOR,"删除装饰器"],[s.NEW_DECORATOR,"新增装饰器"],[s.SINCE_VERSION_A_TO_B,"起始版本有变化"],[s.SINCE_VERSION_HAVE_TO_NA,"起始版本有变化"],[s.SINCE_VERSION_NA_TO_HAVE,"起始版本有变化"],[s.KIT_CHANGE,"kit变更"],[s.KIT_HAVE_TO_NA,"删除kit"],[s.KIT_NA_TO_HAVE,"新增kit"],[s.ATOMIC_SERVICE_HAVE_TO_NA,"API从支持元服务到不支持元服务"],[s.ATOMIC_SERVICE_NA_TO_HAVE,"API从不支持元服务到支持元服务"],[s.NEW_SAME_NAME_FUNCTION,"新增同名函数"],[s.REDUCE_SAME_NAME_FUNCTION,"删除同名函数"],[s.PARAM_TYPE_CHANGE_COMPATIABLE,"函数变更"],[s.PARAM_TYPE_CHANGE_IN_COMPATIABLE,"函数变更"]]),t.diffMap=new Map([[s.SYSTEM_TO_PUBLIC,"从系统API变更为公开API"],[s.PUBLIC_TO_SYSTEM,"从公开API变更为系统API"],[s.NA_TO_STAGE,"从无模型使用限制到仅在Stage模型下使用"],[s.NA_TO_FA,"从无模型使用限制到仅在FA模型下使用"],[s.FA_TO_STAGE,"从仅在FA模型下使用到仅在Stage模型下使用"],[s.STAGE_TO_FA,"从仅在Stage模型下使用到仅在FA模型下使用"],[s.STAGE_TO_NA,"从仅在Stage模型下使用到无模型使用限制"],[s.FA_TO_NA,"从仅在FA模型下使用到无模型使用限制"],[s.NA_TO_CARD,"从不支持卡片到支持卡片"],[s.CARD_TO_NA,"从支持卡片到不支持卡片"],[s.NA_TO_CROSS_PLATFORM,"从不支持跨平台到支持跨平台"],[s.CROSS_PLATFORM_TO_NA,"从支持跨平台到不支持跨平台"],[s.SYSCAP_NA_TO_HAVE,"从没有syscap到有syscap"],[s.SYSCAP_HAVE_TO_NA,"从有syscap到没有syscap"],[s.SYSCAP_A_TO_B,"syscap发生改变"],[s.DEPRECATED_NA_TO_HAVE,"接口变更为废弃"],[s.DEPRECATED_HAVE_TO_NA,"废弃接口变更为不废弃"],[s.DEPRECATED_NOT_All,"接口变更为废弃"],[s.DEPRECATED_A_TO_B,"接口废弃版本发生变化"],[s.ERROR_CODE_NA_TO_HAVE,"错误码从无到有"],[s.ERROR_CODE_ADD,"错误码增加"],[s.ERROR_CODE_REDUCE,"错误码减少"],[s.ERROR_CODE_CHANGE,"错误码的code值发生变化"],[s.PERMISSION_NA_TO_HAVE,"权限从无到有"],[s.PERMISSION_HAVE_TO_NA,"权限从有到无"],[s.PERMISSION_RANGE_BIGGER,"增加or或减少and权限"],[s.PERMISSION_RANGE_SMALLER,"减少or或增加and权限"],[s.PERMISSION_RANGE_CHANGE,"权限发生改变无法判断范围变化"],[s.TYPE_RANGE_BIGGER,"类型范围变大"],[s.TYPE_RANGE_SMALLER,"类型范围变小"],[s.TYPE_RANGE_CHANGE,"类型范围改变"],[s.API_NAME_CHANGE,"API名称变更"],[s.FUNCTION_RETURN_TYPE_ADD,"函数返回值类型扩大"],[s.FUNCTION_RETURN_TYPE_REDUCE,"函数返回值类型缩小"],[s.FUNCTION_RETURN_TYPE_CHANGE,"函数返回值类型改变"],[s.FUNCTION_PARAM_POS_CHANGE,"函数参数位置发生改变"],[s.FUNCTION_PARAM_UNREQUIRED_ADD,"函数新增可选参数"],[s.FUNCTION_PARAM_REQUIRED_ADD,"函数新增必选参数"],[s.FUNCTION_PARAM_REDUCE,"函数删除参数"],[s.FUNCTION_PARAM_TO_UNREQUIRED,"函数中的必选参数变为可选参数"],[s.FUNCTION_PARAM_TO_REQUIRED,"函数中的可选参数变为必选参数"],[s.FUNCTION_PARAM_NAME_CHANGE,"函数中的参数名称发生改变"],[s.FUNCTION_PARAM_TYPE_CHANGE,"函数的参数类型变更"],[s.FUNCTION_PARAM_TYPE_ADD,"函数的参数类型范围扩大"],[s.FUNCTION_PARAM_TYPE_REDUCE,"函数的参数类型范围缩小"],[s.FUNCTION_PARAM_CHANGE,"函数的参数变更"],[s.FUNCTION_CHANGES,"函数有变化"],[s.PROPERTY_READONLY_TO_UNREQUIRED,"只读属性由必选变为可选"],[s.PROPERTY_READONLY_TO_REQUIRED,"只读属性由可选变为必选"],[s.PROPERTY_WRITABLE_TO_UNREQUIRED,"可写属性由必选变为可选"],[s.PROPERTY_WRITABLE_TO_REQUIRED,"可写属性由可选变为必选"],[s.PROPERTY_TYPE_CHANGE,"属性类型发生改变"],[s.PROPERTY_TYPE_SIGN_CHANGE,"属性类型发生改变"],[s.PROPERTY_READONLY_ADD,"只读属性类型范围扩大"],[s.PROPERTY_READONLY_REDUCE,"只读属性类型范围缩小"],[s.PROPERTY_WRITABLE_ADD,"可写属性类型范围扩大"],[s.PROPERTY_WRITABLE_REDUCE,"可写属性类型范围缩小"],[s.CONSTANT_VALUE_CHANGE,"常量值发生改变"],[s.TYPE_ALIAS_CHANGE,"自定义类型值改变"],[s.TYPE_ALIAS_ADD,"自定义类型值范围扩大"],[s.TYPE_ALIAS_REDUCE,"自定义类型值范围缩小"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD,"自定义方法类型返回值类型扩大"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE,"自定义方法类型返回值类型缩小"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE,"自定义方法类型返回值类型改变"],[s.TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE,"自定义方法类型参数位置发生改变"],[s.TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD,"自定义方法类型新增可选参数"],[s.TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD,"自定义方法类型新增必选参数"],[s.TYPE_ALIAS_FUNCTION_PARAM_REDUCE,"自定义方法类型删除参数"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED,"自定义方法类型的必选参数变为可选参数"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED,"自定义方法类型的可选参数变为必选参数"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE,"自定义方法类型的参数类型变更"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD,"自定义方法类型的参数类型范围扩大"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE,"自定义方法类型的参数类型范围缩小"],[s.TYPE_ALIAS_FUNCTION_PARAM_CHANGE,"自定义方法类型的参数变更"],[s.ENUM_MEMBER_VALUE_CHANGE,"枚举赋值发生改变"],[s.ADD,"新增API"],[s.REDUCE,"删除API"],[s.DELETE_DECORATOR,"删除装饰器"],[s.NEW_DECORATOR,"新增装饰器"],[s.SINCE_VERSION_A_TO_B,"起始版本号变更"],[s.SINCE_VERSION_HAVE_TO_NA,"起始版本号删除"],[s.SINCE_VERSION_NA_TO_HAVE,"起始版本号新增"],[s.HISTORICAL_JSDOC_CHANGE,"历史版本jsdoc变更"],[s.HISTORICAL_API_CHANGE,"历史版本API变更"],[s.KIT_CHANGE,"kit变更"],[s.KIT_HAVE_TO_NA,"kit信息从有到无"],[s.KIT_NA_TO_HAVE,"kit信息从无到有"],[s.ATOMIC_SERVICE_HAVE_TO_NA,"API从支持元服务到不支持元服务"],[s.ATOMIC_SERVICE_NA_TO_HAVE,"API从不支持元服务到支持元服务"],[s.NEW_SAME_NAME_FUNCTION,"新增同名函数"],[s.REDUCE_SAME_NAME_FUNCTION,"删除同名函数"],[s.PARAM_TYPE_CHANGE_COMPATIABLE,"函数的参数类型变更"],[s.PARAM_TYPE_CHANGE_IN_COMPATIABLE,"函数的参数类型变更"]]),t.apiChangeMap=new Map([[s.SYSTEM_TO_PUBLIC,"API修改(约束变化)"],[s.PUBLIC_TO_SYSTEM,"API修改(约束变化)"],[s.NA_TO_STAGE,"API修改(约束变化)"],[s.NA_TO_FA,"API修改(约束变化)"],[s.FA_TO_STAGE,"API修改(约束变化)"],[s.STAGE_TO_FA,"API修改(约束变化)"],[s.STAGE_TO_NA,"API修改(约束变化)"],[s.FA_TO_NA,"API修改(约束变化)"],[s.NA_TO_CARD,"API修改(约束变化)"],[s.CARD_TO_NA,"API修改(约束变化)"],[s.NA_TO_CROSS_PLATFORM,"API修改(约束变化)"],[s.CROSS_PLATFORM_TO_NA,"API修改(约束变化)"],[s.SYSCAP_NA_TO_HAVE,"API修改(约束变化)"],[s.SYSCAP_HAVE_TO_NA,"API修改(约束变化)"],[s.SYSCAP_A_TO_B,"API修改(约束变化)"],[s.DEPRECATED_NA_TO_HAVE,"API废弃"],[s.DEPRECATED_HAVE_TO_NA,"API废弃"],[s.DEPRECATED_NOT_All,"API修改(约束变化)"],[s.DEPRECATED_A_TO_B,"API废弃"],[s.ERROR_CODE_NA_TO_HAVE,"API修改(约束变化)"],[s.ERROR_CODE_ADD,"API修改(原型修改)"],[s.ERROR_CODE_REDUCE,"API修改(原型修改)"],[s.ERROR_CODE_CHANGE,"API修改(原型修改)"],[s.PERMISSION_NA_TO_HAVE,"API修改(约束变化)"],[s.PERMISSION_HAVE_TO_NA,"API修改(约束变化)"],[s.PERMISSION_RANGE_BIGGER,"API修改(约束变化)"],[s.PERMISSION_RANGE_SMALLER,"API修改(约束变化)"],[s.PERMISSION_RANGE_CHANGE,"API修改(约束变化)"],[s.TYPE_RANGE_BIGGER,"API修改(原型修改)"],[s.TYPE_RANGE_SMALLER,"API修改(原型修改)"],[s.TYPE_RANGE_CHANGE,"API修改(原型修改)"],[s.API_NAME_CHANGE,"API修改(原型修改)"],[s.FUNCTION_RETURN_TYPE_ADD,"API修改(原型修改)"],[s.FUNCTION_RETURN_TYPE_REDUCE,"API修改(原型修改)"],[s.FUNCTION_RETURN_TYPE_CHANGE,"API修改(原型修改)"],[s.FUNCTION_PARAM_POS_CHANGE,"API修改(原型修改)"],[s.FUNCTION_PARAM_UNREQUIRED_ADD,"API修改(原型修改)"],[s.FUNCTION_PARAM_REQUIRED_ADD,"API修改(原型修改)"],[s.FUNCTION_PARAM_REDUCE,"API修改(原型修改)"],[s.FUNCTION_PARAM_TO_UNREQUIRED,"API修改(原型修改)"],[s.FUNCTION_PARAM_TO_REQUIRED,"API修改(原型修改)"],[s.FUNCTION_PARAM_NAME_CHANGE,"API修改(原型修改)"],[s.FUNCTION_PARAM_TYPE_CHANGE,"API修改(原型修改)"],[s.FUNCTION_PARAM_TYPE_ADD,"API修改(原型修改)"],[s.FUNCTION_PARAM_TYPE_REDUCE,"API修改(原型修改)"],[s.FUNCTION_CHANGES,"API修改(原型修改)"],[s.FUNCTION_PARAM_CHANGE,"API修改(原型修改)"],[s.PROPERTY_READONLY_TO_UNREQUIRED,"API修改(约束变化)"],[s.PROPERTY_READONLY_TO_REQUIRED,"API修改(约束变化)"],[s.PROPERTY_WRITABLE_TO_UNREQUIRED,"API修改(约束变化)"],[s.PROPERTY_WRITABLE_TO_REQUIRED,"API修改(约束变化)"],[s.PROPERTY_TYPE_CHANGE,"API修改(原型修改)"],[s.PROPERTY_TYPE_SIGN_CHANGE,"API修改(原型修改)"],[s.PROPERTY_READONLY_ADD,"API修改(约束变化)"],[s.PROPERTY_READONLY_REDUCE,"API修改(约束变化)"],[s.PROPERTY_WRITABLE_ADD,"API修改(约束变化)"],[s.PROPERTY_WRITABLE_REDUCE,"API修改(约束变化)"],[s.CONSTANT_VALUE_CHANGE,"API修改(原型修改)"],[s.TYPE_ALIAS_CHANGE,"API修改(原型修改)"],[s.TYPE_ALIAS_ADD,"API修改(原型修改)"],[s.TYPE_ALIAS_REDUCE,"API修改(原型修改)"],[s.ENUM_MEMBER_VALUE_CHANGE,"API修改(原型修改)"],[s.ADD,"API新增"],[s.REDUCE,"API删除"],[s.DELETE_DECORATOR,"API修改(约束变化)"],[s.NEW_DECORATOR,"API修改(约束变化)"],[s.SINCE_VERSION_A_TO_B,"API修改(约束变化)"],[s.SINCE_VERSION_HAVE_TO_NA,"API修改(约束变化)"],[s.SINCE_VERSION_NA_TO_HAVE,"API修改(约束变化)"],[s.KIT_CHANGE,"非API变更"],[s.KIT_HAVE_TO_NA,"非API变更"],[s.KIT_NA_TO_HAVE,"非API变更"],[s.ATOMIC_SERVICE_HAVE_TO_NA,"API修改(约束变化)"],[s.ATOMIC_SERVICE_NA_TO_HAVE,"API修改(约束变化)"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_ADD,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_REDUCE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_RETURN_TYPE_CHANGE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_POS_CHAHGE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_UNREQUIRED_ADD,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_REQUIRED_ADD,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_REDUCE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_UNREQUIRED,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_TO_REQUIRED,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE,"API修改(原型修改)"],[s.TYPE_ALIAS_FUNCTION_PARAM_CHANGE,"API修改(原型修改)"],[s.NEW_SAME_NAME_FUNCTION,"API修改(原型修改)"],[s.REDUCE_SAME_NAME_FUNCTION,"API修改(原型修改)"],[s.PARAM_TYPE_CHANGE_COMPATIABLE,"API修改(原型修改)"],[s.PARAM_TYPE_CHANGE_IN_COMPATIABLE,"API修改(原型修改)"]]),t.incompatibleApiDiffTypes=new Set([s.PUBLIC_TO_SYSTEM,s.NA_TO_STAGE,s.NA_TO_FA,s.FA_TO_STAGE,s.STAGE_TO_FA,s.CARD_TO_NA,s.CROSS_PLATFORM_TO_NA,s.ERROR_CODE_NA_TO_HAVE,s.ERROR_CODE_CHANGE,s.PERMISSION_NA_TO_HAVE,s.PERMISSION_RANGE_SMALLER,s.PERMISSION_RANGE_CHANGE,s.API_NAME_CHANGE,s.FUNCTION_RETURN_TYPE_ADD,s.FUNCTION_RETURN_TYPE_CHANGE,s.FUNCTION_PARAM_POS_CHANGE,s.FUNCTION_PARAM_REQUIRED_ADD,s.FUNCTION_PARAM_REDUCE,s.FUNCTION_PARAM_TO_REQUIRED,s.FUNCTION_PARAM_TYPE_CHANGE,s.FUNCTION_PARAM_TYPE_REDUCE,s.FUNCTION_PARAM_CHANGE,s.FUNCTION_CHANGES,s.PROPERTY_READONLY_TO_REQUIRED,s.PROPERTY_WRITABLE_TO_UNREQUIRED,s.PROPERTY_WRITABLE_TO_REQUIRED,s.PROPERTY_TYPE_CHANGE,s.PROPERTY_READONLY_ADD,s.PROPERTY_WRITABLE_ADD,s.PROPERTY_WRITABLE_REDUCE,s.CONSTANT_VALUE_CHANGE,s.TYPE_ALIAS_CHANGE,s.TYPE_ALIAS_ADD,s.TYPE_ALIAS_REDUCE,s.ENUM_MEMBER_VALUE_CHANGE,s.REDUCE,s.HISTORICAL_JSDOC_CHANGE,s.HISTORICAL_API_CHANGE,s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_REDUCE,s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_CHANGE,s.FUNCTION_RETURN_TYPE_REDUCE,s.TYPE_ALIAS_FUNCTION_PARAM_TYPE_ADD,s.TYPE_ALIAS_FUNCTION_PARAM_CHANGE,s.ATOMIC_SERVICE_HAVE_TO_NA,s.DELETE_DECORATOR,s.NEW_DECORATOR,s.SYSCAP_A_TO_B,s.SYSCAP_HAVE_TO_NA,s.SYSCAP_NA_TO_HAVE,s.KIT_CHANGE,s.KIT_HAVE_TO_NA,s.REDUCE_SAME_NAME_FUNCTION,s.PARAM_TYPE_CHANGE_IN_COMPATIABLE]),t.isNotApiSet=new Set([n.ApiType.NAMESPACE,n.ApiType.ENUM,n.ApiType.SOURCE_FILE]),t.parentApiTypeSet=new Set([n.ApiType.INTERFACE,n.ApiType.STRUCT,n.ApiType.CLASS,n.ApiType.TYPE_ALIAS])},19503:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.notJsDocApiTypes=t.containerApiTypes=t.ParserParam=t.ParentClass=t.GenericInfo=t.ParamInfo=t.TypeLocationInfo=t.MethodInfo=t.EnumValueInfo=t.TypeParamInfo=t.TypeAliasInfo=t.ConstantInfo=t.PropertyInfo=t.EnumInfo=t.ModuleInfo=t.StructInfo=t.NamespaceInfo=t.InterfaceInfo=t.ClassInfo=t.ApiInfo=t.ImportInfo=t.ExportDeclareInfo=t.ReferenceInfo=t.ExportDefaultInfo=t.BasicApiInfo=t.TypeAliasType=t.ApiType=void 0;const i=n(r(55423)),a=r(10391),o=r(64158),s=r(59062),c=r(98391),l=r(60172);var u;!function(e){e.SOURCE_FILE="SourceFile",e.REFERENCE_FILE="Reference",e.PROPERTY="Property",e.CLASS="Class",e.INTERFACE="Interface",e.NAMESPACE="Namespace",e.METHOD="Method",e.MODULE="Module",e.EXPORT="Export",e.EXPORT_DEFAULT="ExportDefault",e.CONSTANT="Constant",e.IMPORT="Import",e.DECLARE_CONST="DeclareConst",e.ENUM_VALUE="EnumValue",e.TYPE_ALIAS="TypeAlias",e.PARAM="Param",e.ENUM="Enum",e.STRUCT="Struct"}(u=t.ApiType||(t.ApiType={})),function(e){e.UNION_TYPE="UnionType",e.OBJECT_TYPE="ObjectType",e.TUPLE_TYPE="TupleType",e.REFERENCE_TYPE="ReferenceType"}(t.TypeAliasType||(t.TypeAliasType={}));class d{constructor(e="",t,r){this.node=void 0,this.filePath="",this.apiType="",this.definedText="",this.pos={line:-1,character:-1},this.parentApi=void 0,this.isExport=!1,this.apiName="",this.hierarchicalRelations=[],this.decorators=void 0,this.isStruct=!1,this.syscap="",this.currentVersion="-1",this.jsDocText="",this.isJoinType=!1,this.genericInfo=[],this.parentApiType="",this.fileAbsolutePath="",this.isSameNameFunction=!1,this.node=t,this.setParentApi(r),this.setParentApiType(r?.getApiType()),r&&(this.setFilePath(r.getFilePath()),this.setFileAbsolutePath(r.getFileAbsolutePath()),this.setIsStruct(r.getIsStruct())),this.setApiType(e);const n=t.getSourceFile(),i=t.getStart(),a=n.getLineAndCharacterOfPosition(i);a.character++,a.line++,this.setPos(a),t.decorators&&t.decorators.forEach((e=>{this.addDecorators([new c.DecoratorInfo(e)])}))}getNode(){return this.node}removeNode(){this.node=void 0}setFilePath(e){this.filePath=e}getFilePath(){return this.filePath}setFileAbsolutePath(e){this.fileAbsolutePath=e}getFileAbsolutePath(){return this.fileAbsolutePath}setApiType(e){this.apiType=e}getApiType(){return this.apiType}setDefinedText(e){this.definedText=e}getDefinedText(){return this.definedText}setPos(e){this.pos=e}getPos(){return this.pos}setParentApi(e){this.parentApi=e}getParentApi(){return this.parentApi}setParentApiType(e){e&&(this.parentApiType=e)}getParentApiType(){return this.parentApiType}setIsExport(e){this.isExport=e}getIsExport(){return this.isExport}setApiName(e){this.apiName=e,this.parentApi&&this.setHierarchicalRelations(this.parentApi.getHierarchicalRelations()),this.addHierarchicalRelation([e])}getApiName(){return this.apiName}setHierarchicalRelations(e){this.hierarchicalRelations=[...e]}getHierarchicalRelations(){return this.hierarchicalRelations}addHierarchicalRelation(e){this.hierarchicalRelations.push(...e)}setDecorators(e){this.decorators=e}addDecorators(e){this.decorators||(this.decorators=[]),this.decorators.push(...e)}getDecorators(){return this.decorators}setIsStruct(e){this.isStruct=e}getIsStruct(){return this.isStruct}setSyscap(e){this.syscap=e}getSyscap(){return this.syscap}setCurrentVersion(e){this.currentVersion=e}getCurrentVersion(){return this.currentVersion}setJsDocText(e){this.jsDocText=e}getJsDocText(){return this.jsDocText}setIsJoinType(e){this.isJoinType=e}getIsJoinType(){return this.isJoinType}setGenericInfo(e){this.genericInfo.push(e)}getGenericInfo(){return this.genericInfo}setIsSameNameFunction(e){this.isSameNameFunction=e}getIsSameNameFunction(){return this.isSameNameFunction}}t.BasicApiInfo=d;t.ExportDefaultInfo=class extends d{};t.ReferenceInfo=class extends d{constructor(){super(...arguments),this.pathName=""}setPathName(e){return this.pathName=e,this}getPathName(){return this.pathName}};t.ExportDeclareInfo=class extends d{constructor(){super(...arguments),this.exportValues=[]}addExportValues(e,t){this.exportValues.push({key:e,value:t||e})}getExportValues(){return this.exportValues}};t.ImportInfo=class extends d{constructor(){super(...arguments),this.importValues=[],this.importPath=""}addImportValue(e,t){this.importValues.push({key:e,value:t||e})}getImportValues(){return this.importValues}setImportPath(e){this.importPath=e}getImportPath(){return this.importPath}};class p extends d{constructor(e="",t,r){super(e,t,r),this.jsDocInfos=[];let n="NA",i="NA";r&&(n=this.getKitInfoFromParent(r).kitInfo,i=this.getKitInfoFromParent(r).fileTagContent);const a=l.JsDocProcessorHelper.processJsDocInfos(t,e,n,i),o=t.getFullText().substring(0,t.getFullText().length-t.getText().length).trim();this.setJsDocText(o),this.addJsDocInfos(a)}getKitInfoFromParent(e){const t=e.getJsDocInfos();let r="",n="NA";return t.forEach((e=>{r=e.getKit(),n=e.getFileTagContent()})),{kitInfo:r,fileTagContent:n}}getJsDocInfos(){return this.jsDocInfos}getLastJsDocInfo(){const e=this.jsDocInfos.length;if(0!==e)return this.jsDocInfos[e-1]}getPenultimateJsDocInfo(){const e=this.jsDocInfos.length;if(0!==e)return this.jsDocInfos[e-2]}addJsDocInfos(e){e.length>0&&this.setCurrentVersion(e[e.length-1]?.getSince()),this.jsDocInfos.push(...e)}addJsDocInfo(e){this.setCurrentVersion(e.getSince()),this.jsDocInfos.push(e)}}t.ApiInfo=p;t.ClassInfo=class extends p{constructor(){super(...arguments),this.parentClasses=[],this.childApis=[]}setParentClasses(e){this.parentClasses.push(e)}getParentClasses(){return this.parentClasses}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.InterfaceInfo=class extends p{constructor(){super(...arguments),this.parentClasses=[],this.childApis=[]}setParentClasses(e){this.parentClasses.push(e)}getParentClasses(){return this.parentClasses}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.NamespaceInfo=class extends p{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.StructInfo=class extends p{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.ModuleInfo=class extends p{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.EnumInfo=class extends p{constructor(){super(...arguments),this.childApis=[]}addChildApis(e){this.childApis.push(...e)}addChildApi(e){this.childApis.push(e)}getChildApis(){return this.childApis}};t.PropertyInfo=class extends p{constructor(e="",t,r){super(e,t,r),this.type=[],this.isReadOnly=!1,this.isRequired=!1,this.isStatic=!1,this.typeKind=i.default.SyntaxKind.Unknown,this.typeLocations=[],this.objLocations=[];let n=t;this.setTypeKind(n.type?n.type.kind:i.default.SyntaxKind.Unknown)}addType(e){this.type.push(...e)}getType(){return this.type}setIsReadOnly(e){this.isReadOnly=e}getIsReadOnly(){return this.isReadOnly}setIsRequired(e){this.isRequired=e}getIsRequired(){return this.isRequired}setIsStatic(e){this.isStatic=e}getIsStatic(){return this.isStatic}setTypeKind(e){this.typeKind=e||i.default.SyntaxKind.Unknown}getTypeKind(){return this.typeKind}addTypeLocations(e){this.typeLocations.push(e)}getTypeLocations(){return this.typeLocations}setTypeLocations(e){this.typeLocations=e}addObjLocations(e){this.objLocations.push(e)}getObjLocations(){return this.objLocations}setObjLocations(e){this.objLocations=e}};t.ConstantInfo=class extends p{constructor(){super(...arguments),this.value=""}setValue(e){this.value=e}getValue(){return this.value}};t.TypeAliasInfo=class extends p{constructor(){super(...arguments),this.type=[],this.typeName="",this.returnType=[],this.paramInfos=[],this.typeIsFunction=!1,this.typeLiteralApiInfos=[],this.typeIsObject=!1}addType(e){this.type.push(...e)}getType(){return this.type}setTypeName(e){return this.typeName=e,this}getTypeName(){return this.typeName}setReturnType(e){this.returnType.push(...e)}getReturnType(){return this.returnType}setParamInfos(e){return this.paramInfos.push(e),this}getParamInfos(){return this.paramInfos}setTypeIsFunction(e){return this.typeIsFunction=e,this}getTypeIsFunction(){return this.typeIsFunction}setTypeLiteralApiInfos(e){return this.typeLiteralApiInfos.push(e),this}getTypeLiteralApiInfos(){return this.typeLiteralApiInfos}setTypeIsObject(e){return this.typeIsObject=e,this}getTypeIsObject(){return this.typeIsObject}};t.TypeParamInfo=class{constructor(){this.paramName="",this.paramType=""}setParamName(e){return this.paramName=e,this}getParamName(){return this.paramName}setParamType(e){return e?(this.paramType=e,this):this}getParamType(){return this.paramType}};t.EnumValueInfo=class extends p{constructor(){super(...arguments),this.value=""}setValue(e){this.value=e}getValue(){return this.value}};t.MethodInfo=class extends p{constructor(){super(...arguments),this.callForm="",this.params=[],this.returnValue=[],this.isStatic=!1,this.sync="",this.returnValueType=i.default.SyntaxKind.Unknown,this.typeLocations=[],this.objLocations=[],this.isRequired=!1}setCallForm(e){this.callForm=e}getCallForm(){return this.callForm}addParam(e){this.params.push(e)}getParams(){return this.params}setReturnValue(e){this.returnValue.push(...e)}getReturnValue(){return this.returnValue}setReturnValueType(e){this.returnValueType=e}getReturnValueType(){return this.returnValueType}setIsStatic(e){this.isStatic=e}getIsStatic(){return this.isStatic}addTypeLocations(e){this.typeLocations.push(e)}getTypeLocations(){return this.typeLocations}setTypeLocations(e){this.typeLocations=e}addObjLocations(e){this.objLocations.push(e)}getObjLocations(){return this.objLocations}setObjLocations(e){this.objLocations=e}setSync(e){this.sync=e}getSync(){return this.sync}setIsRequired(e){this.isRequired=e}getIsRequired(){return this.isRequired}};class f extends s.Comment.JsDocInfo{constructor(){super(...arguments),this.typeName=""}getTypeName(){return this.typeName}setTypeName(e){this.typeName=e}}t.TypeLocationInfo=f;t.ParamInfo=class{constructor(e){this.apiType="",this.apiName="",this.paramType=i.default.SyntaxKind.Unknown,this.type=[],this.isRequired=!1,this.definedText="",this.typeLocations=[],this.objLocations=[],this.typeIsObject=!1,this.apiType=e}getApiType(){return this.apiType}setApiName(e){this.apiName=e}getApiName(){return this.apiName}setType(e){this.type.push(...e)}getParamType(){return this.paramType}setParamType(e){this.paramType=e||i.default.SyntaxKind.Unknown}getType(){return this.type}setIsRequired(e){this.isRequired=e}getIsRequired(){return this.isRequired}setDefinedText(e){this.definedText=e}getDefinedText(){return this.definedText}addTypeLocations(e){this.typeLocations.push(e)}getTypeLocations(){return this.typeLocations}setTypeLocations(e){this.typeLocations=e}addObjLocations(e){this.objLocations.push(e)}getObjLocations(){return this.objLocations}setObjLocations(e){this.objLocations=e}setMethodApiInfo(e){this.methodApiInfo=e}getMethodApiInfo(){return this.methodApiInfo}};t.GenericInfo=class{constructor(){this.isGenericity=!1,this.genericContent=""}setIsGenericity(e){this.isGenericity=e}getIsGenericity(){return this.isGenericity}setGenericContent(e){this.genericContent=e}getGenericContent(){return this.genericContent}};t.ParentClass=class{constructor(){this.extendClass="",this.implementClass=""}setExtendClass(e){this.extendClass=e}getExtendClass(){return this.extendClass}setImplementClass(e){this.implementClass=e}getImplementClass(){return this.implementClass}};t.ParserParam=class{constructor(){this.fileDir="",this.filePath="",this.libPath="",this.sdkPath="",this.rootNames=[],this.tsProgram=i.default.createProgram({rootNames:[],options:{}}),this.compilerHost=i.default.createCompilerHost({})}getFileDir(){return this.fileDir}setFileDir(e){this.fileDir=e}getFilePath(){return this.filePath}setFilePath(e){this.filePath=e}getLibPath(){return this.libPath}setLibPath(e){this.libPath=e}getSdkPath(){return this.sdkPath}setSdkPath(e){this.sdkPath=e}getRootNames(){return this.rootNames}setRootNames(e){this.rootNames=e}getTsProgram(){return this.tsProgram}getETSOptions(e){const t=r(41429).compilerOptions.ets;return t.libs=[...e],t}setProgram(){const e=a.FileUtils.readFilesInDir(this.sdkPath,(e=>e.endsWith(o.StringConstant.DTS_EXTENSION)||e.endsWith(o.StringConstant.DETS_EXTENSION))),t=a.FileUtils.readFilesInDir(this.libPath,(e=>e.endsWith(o.StringConstant.DTS_EXTENSION)||e.endsWith(o.StringConstant.DETS_EXTENSION))),r={target:i.default.ScriptTarget.ES2017,ets:this.getETSOptions([]),allowJs:!1,lib:[...e,...t],module:i.default.ModuleKind.CommonJS,baseUrl:"./",paths:{"@/*":["./*"]}};this.compilerHost=i.default.createCompilerHost(r),this.compilerHost.resolveModuleNames=(e,t,r,n,a)=>e.map((e=>{if("true"===process.env.IS_OH)return i.default.resolveModuleName(e,t,a,this.compilerHost).resolvedModule;const r={resolvedFileName:"",isExternalLibraryImport:!1},n={"^(@ohos\\.inner\\.)(.*)$":"../../../base/ets/api/","^(@ohos\\.)(.*)$":"../../../base/ets/api/"};for(const t in n){const r=new RegExp(t);if(r.test(e)){e=e.replace(r,((e,r,i)=>{let a="";switch(r){case"@ohos.":a=n[t]+r+i;break;case"@ohos.inner.":a=n[t]+i.replace(/\./g,"/");break;default:a=""}return a}));break}}const o=i.default.resolveModuleName(e,t,a,this.compilerHost).resolvedModule?.resolvedFileName;return o?(r.resolvedFileName=o,r.isExternalLibraryImport=!0,r):void 0})),this.tsProgram=i.default.createProgram({rootNames:[...this.rootNames],options:r,host:this.compilerHost})}},t.containerApiTypes=new Set([u.NAMESPACE,u.CLASS,u.INTERFACE,u.ENUM,u.MODULE,u.STRUCT]),t.notJsDocApiTypes=new Set([u.SOURCE_FILE,u.IMPORT,u.EXPORT,u.EXPORT_DEFAULT,u.MODULE,u.REFERENCE_FILE])},59062:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Comment=void 0,function(e){let t;!function(e){e.SYSCAP="syscap",e.SINCE="since",e.FORM="form",e.CROSS_PLAT_FORM="crossplatform",e.SYSTEM_API="systemapi",e.STAGE_MODEL_ONLY="stagemodelonly",e.FA_MODEL_ONLY="famodelonly",e.DEPRECATED="deprecated",e.USEINSTEAD="useinstead",e.TYPE="type",e.CONSTANT="constant",e.PERMISSION="permission",e.THROWS="throws",e.ATOMIC_SERVICE="atomicservice",e.KIT="kit",e.FILE="file",e.PARAM="param",e.RETURNS="returns"}(t=e.JsDocTag||(e.JsDocTag={}));e.JsDocInfo=class{constructor(){this.description="",this.syscap="",this.since="-1",this.isForm=!1,this.isCrossPlatForm=!1,this.isSystemApi=!1,this.modelLimitation="",this.deprecatedVersion="-1",this.useinstead="",this.permissions="",this.errorCodes=[],this.typeInfo="",this.isConstant=!1,this.isAtomicService=!1,this.kit="",this.fileTagContent="NA",this.tags=void 0}setDescription(e){return this.description=e,this}getDescription(){return this.description}setSyscap(e){return e&&(this.syscap=e),this}getSyscap(){return this.syscap}setSince(e){return this.since=e,this}getSince(){return this.since}setIsForm(e){return this.isForm=e,this}getIsForm(){return this.isForm}setIsCrossPlatForm(e){return this.isCrossPlatForm=e,this}getIsCrossPlatForm(){return this.isCrossPlatForm}setIsSystemApi(e){return this.isSystemApi=e,this}getIsSystemApi(){return this.isSystemApi}setIsAtomicService(e){return this.isAtomicService=e,this}getIsAtomicService(){return this.isAtomicService}setModelLimitation(e){return this.modelLimitation=e,this}getModelLimitation(){return this.modelLimitation}setDeprecatedVersion(e){return this.deprecatedVersion=e,this}getDeprecatedVersion(){return this.deprecatedVersion}setUseinstead(e){return this.useinstead=e,this}getUseinstead(){return this.useinstead}setPermission(e){return this.permissions=e,this}getPermission(){return this.permissions}addErrorCode(e){return this.errorCodes.push(e),this}getErrorCode(){return this.errorCodes}setTypeInfo(e){return this.typeInfo=e,this}getTypeInfo(){return this.typeInfo}setIsConstant(e){return this.isConstant=e,this}getIsConstant(){return this.isConstant}setKit(e){return this.kit=e,this}getKit(){return this.kit}setFileTagContent(e){return this.fileTagContent=e,this}getFileTagContent(){return this.fileTagContent}setTags(e){return this.tags=e,this}removeTags(){return this.tags=void 0,this}addTag(e){return this.tags||(this.tags=[]),this.tags.push(e),this}getTags(){return this.tags}}}(t.Comment||(t.Comment={}))},98391:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.DecoratorInfo=void 0;const i=n(r(55423));t.DecoratorInfo=class{constructor(e){this.expression="",this.expressionArguments=void 0;const t=e.expression;if(i.default.isCallExpression(t)){this.setExpression(t.expression.getText());t.arguments.forEach((e=>{this.addExpressionArguments([e.getText()])}))}i.default.isIdentifier(t)&&this.setExpression(t.getText())}setExpression(e){return this.expression=e,this}getExpression(){return this.expression}setExpressionArguments(e){return this.expressionArguments=e,this}addExpressionArguments(e){return this.expressionArguments||(this.expressionArguments=[]),this.expressionArguments.push(...e),this}getExpressionArguments(){return this.expressionArguments}}},13382:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ImportInfo=t.ExportDefaultInfo=t.ClassInterfaceInfo=t.NamespaceEnumInfo=t.ParamInfo=t.MethodInfo=t.TypeAliasInfo=t.EnumValueInfo=t.UnionTypeInfo=t.ConstantInfo=t.PropertyInfo=t.DeclareConstInfo=t.ApiInfo=t.BasicApiInfo=void 0;const n=r(64158);class i{constructor(e){this.apiType="",this.apiType=e}}t.BasicApiInfo=i;class a extends i{constructor(e,t){super(e),this.name="",this.syscap="",this.since="-1",this.isForm=!1,this.isCrossPlatForm=!1,this.isSystemApi=!1,this.isStageModelOnly=!1,this.isFaModelOnly=!1,this.deprecatedVersion="-1",this.useinstead="",this.setJsDocInfo(t)}setJsDocInfo(e){return this.syscap=e.getSyscap(),this.since=e.getSince(),this.isForm=e.getIsForm(),this.isCrossPlatForm=e.getIsCrossPlatForm(),this.isSystemApi=e.getIsSystemApi(),this.isStageModelOnly=e.getModelLimitation().toLowerCase()===n.StringConstant.STAGE_MODEL_ONLY,this.isFaModelOnly=e.getModelLimitation().toLowerCase()===n.StringConstant.FA_MODEL_ONLY,this.deprecatedVersion=e.getDeprecatedVersion(),this.useinstead=e.getUseinstead(),this}getSince(){return this.since}setName(e){return e?(this.name=e,this):this}}t.ApiInfo=a;t.DeclareConstInfo=class extends a{constructor(){super(...arguments),this.type=""}setType(e){return this.type=e,this}};t.PropertyInfo=class extends a{constructor(e,t){super(e,t),this.type="",this.isReadOnly=!1,this.isRequired=!1,this.isStatic=!1,this.permission="",this.setPermission(t.getPermission())}setType(e){return this.type=e,this}setIsReadOnly(e){return this.isReadOnly=e,this}setIsRequired(e){return this.isRequired=e,this}setIsStatic(e){return this.isStatic=e,this}setPermission(e){return this.permission=e,this}};t.ConstantInfo=class extends a{constructor(){super(...arguments),this.type="",this.value=""}setType(e){return this.type=e,this}setValue(e){return this.value=e,this}};t.UnionTypeInfo=class extends a{constructor(){super(...arguments),this.valueRange=[]}addValueRange(e){return this.valueRange.push(e),this}addValueRanges(e){return this.valueRange.push(...e),this}};t.EnumValueInfo=class extends a{constructor(){super(...arguments),this.value=""}setValue(e){return this.value=e,this}};t.TypeAliasInfo=class extends a{constructor(){super(...arguments),this.type=""}setType(e){return this.type=e,this}};t.MethodInfo=class extends a{constructor(e,t){super(e,t),this.callForm="",this.params=[],this.returnValue="",this.isStatic=!1,this.permission="",this.errorCodes=[],this.setPermission(t.getPermission()),this.setErrorCodes(t.getErrorCode())}setCallForm(e){return this.callForm=e,this}addParam(e){return this.params.push(e),this}setReturnValue(e){return this.returnValue=e,this}setIsStatic(e){return this.isStatic=e,this}setPermission(e){return this.permission=e,this}setErrorCodes(e){return this.errorCodes.push(...e),this}};t.ParamInfo=class extends a{constructor(){super(...arguments),this.type="",this.isRequired=!1}setType(e){e&&(this.type=e)}setIsRequired(e){this.isRequired=e}};class o extends a{constructor(){super(...arguments),this.childApis=[]}addChildApi(e){return this.childApis.push(...e),this}}t.NamespaceEnumInfo=o;t.ClassInterfaceInfo=class extends o{constructor(){super(...arguments),this.parentClasses=[]}setParentClasses(e){return this.parentClasses.push(...e),this}};class s extends i{constructor(){super(...arguments),this.name=""}createObject(){return new s(this.apiType)}setName(e){return this.name=e,this}}t.ExportDefaultInfo=s;t.ImportInfo=class extends i{constructor(){super(...arguments),this.importValues=[]}addImportValue(e,t){return this.importValues.push({key:e,value:t||e}),this}}},18789:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.mergeDefinedTextType=t.notMergeDefinedText=t.apiNotStatisticsType=t.apiStatisticsType=t.ApiStatisticsInfo=void 0;const i=n(r(55423)),a=r(19503),o=r(5391);t.ApiStatisticsInfo=class{constructor(){this.filePath="",this.packageName="",this.parentModuleName="global",this.syscap="",this.permissions="",this.since="",this.isForm=!1,this.isCrossPlatForm=!1,this.isAutomicService=!1,this.hierarchicalRelations="",this.apiName="",this.deprecatedVersion="",this.useInstead="",this.apiType="",this.definedText="",this.pos={line:-1,character:-1},this.isSystemapi=!1,this.modelLimitation="",this.decorators=[],this.errorCodes=[],this.kitInfo="",this.absolutePath="",this.parentApiType="",this.isOptional=!1}setFilePath(e){return this.filePath=e,this.packageName=o.FunctionUtils.getPackageName(e),this}getPackageName(){return this.packageName}getFilePath(){return this.filePath}setApiType(e){return this.apiType=e===a.ApiType.DECLARE_CONST?a.ApiType.PROPERTY:e,this}getParentModuleName(){return this.parentModuleName}setParentModuleName(e){return this.parentModuleName=e,this}setSyscap(e){return e&&(this.syscap=e),this}getSyscap(){return this.syscap}setPermission(e){return this.permissions=e,this}getPermission(){return this.permissions}setSince(e){return this.since=e,this}getSince(){return this.since}setIsForm(e){return this.isForm=e,this}getIsForm(){return this.isForm}setIsCrossPlatForm(e){return this.isCrossPlatForm=e,this}getIsCrossPlatForm(){return this.isCrossPlatForm}setIsAutomicService(e){return this.isAutomicService=e,this}getIsAutomicService(){return this.isAutomicService}getApiType(){return this.apiType}setDefinedText(e){return this.definedText=e,this}getDefinedText(){return this.definedText}setPos(e){return this.pos=e,this}getPos(){return this.pos}setApiName(e){return this.apiName=e,this}getApiName(){return this.apiName}setHierarchicalRelations(e){return this.hierarchicalRelations=e,this}getHierarchicalRelations(){return this.hierarchicalRelations}setDeprecatedVersion(e){return this.deprecatedVersion=e,this}getDeprecatedVersion(){return this.deprecatedVersion}setUseInstead(e){return this.useInstead=e,this}getUseInstead(){return this.useInstead}setApiLevel(e){return this.isSystemapi=e,this}getApiLevel(){return this.isSystemapi}setModelLimitation(e){return this.modelLimitation=e,this}getModelLimitation(){return this.modelLimitation}setDecorators(e){return e?.forEach((e=>{this.decorators?.push(e.expression)})),this}getDecorators(){return this.decorators}setErrorCodes(e){return this.errorCodes=e,this}getErrorCodes(){return this.errorCodes}setKitInfo(e){return this.kitInfo=e,this}getKitInfo(){return this.kitInfo}setAbsolutePath(e){return this.absolutePath=e,this}getAbsolutePath(){return this.absolutePath}setParentApiType(e){return this.parentApiType=e,this}getParentApiType(){return this.parentApiType}setIsOptional(e){return this.isOptional=e,this}getIsOptional(){return this.isOptional}},t.apiStatisticsType=new Set([a.ApiType.PROPERTY,a.ApiType.CLASS,a.ApiType.INTERFACE,a.ApiType.NAMESPACE,a.ApiType.METHOD,a.ApiType.CONSTANT,a.ApiType.ENUM_VALUE,a.ApiType.ENUM,a.ApiType.TYPE_ALIAS,a.ApiType.DECLARE_CONST,a.ApiType.STRUCT]),t.apiNotStatisticsType=new Set([a.ApiType.ENUM,a.ApiType.NAMESPACE]),t.notMergeDefinedText=new Set(["on","off"]),t.mergeDefinedTextType=new Set([i.default.SyntaxKind.MethodDeclaration,i.default.SyntaxKind.MethodSignature,i.default.SyntaxKind.FunctionDeclaration])},64158:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EventConstant=t.PunctuationMark=t.NumberConstant=t.StringConstant=void 0,function(e){e.ASYNC_CALLBACK_METHOD_KEY="AsyncCallback",e.ASYNC_CALLBACK_METHOD_KEY_CHANGE="AsyncCallback",e.CHECK_API_VERSION="11",e.CONST_KEY_WORD="const",e.CONSTRUCTOR_API_NAME="constructor",e.EXPORT_DEFAULT="export_default_",e.EXPORT="export_",e.DTS_EXTENSION=".d.ts",e.DETS_EXTENSION=".d.ets",e.ETS_EXTENSION=".ets",e.FA_MODEL_ONLY="famodelonly",e.PROMISE_METHOD_KEY="Promise",e.PROMISE_METHOD_KEY_CHANGE="Promise",e.REFERENCE="_reference",e.TS_EXTENSION=".ts",e.SELF="_self",e.STAGE_MODEL_ONLY="stagemodelonly",e.UTF8="utf-8",e.NOT_SCAN_DIR="build-tools"}(t.StringConstant||(t.StringConstant={})),function(e){e[e.INDENT_SPACE=2]="INDENT_SPACE",e[e.RELATION_LENGTH=2]="RELATION_LENGTH",e.DEFAULT_DEPRECATED_VERSION="-1",e[e.IS_FIELD_EXIST=0]="IS_FIELD_EXIST",e[e.BINARY_SYSTEM=2]="BINARY_SYSTEM",e[e.LINE_IN_EXCEL=2]="LINE_IN_EXCEL",e[e.SYSCAP_KEY_FIELD_INDEX=2]="SYSCAP_KEY_FIELD_INDEX",e[e.DELETE_CURRENT_JS_DOC=-2]="DELETE_CURRENT_JS_DOC"}(t.NumberConstant||(t.NumberConstant={})),function(e){e.QUERY="?",e.LEFT_BRACKET="[",e.RIGHT_BRACKET="]",e.LEFT_BRACE="{",e.RIGHT_BRACE="}",e.LEFT_PARENTHESES="(",e.RIGHT_PARENTHESES=")"}(t.PunctuationMark||(t.PunctuationMark={}));class r{}t.EventConstant=r,r.eventNameList=["on","off","emit","once"],r.eventMethodCheckVersion=10,r.eventFirstParamName="type"},95840:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EnumUtils=void 0;t.EnumUtils=class{static enum2arr(e){let t=Array.isArray(e)?e:Object.values(e);return t.some((e=>"number"==typeof e))&&(t=t.filter((e=>"number"==typeof e))),t}}},10391:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FileUtils=void 0;const i=n(r(57147)),a=n(r(71017)),o=n(r(7251)),s=r(42034),c=r(64158);process.env.DIR_NAME||Object.assign(process.env,o.default);class l{static getBaseDirName(){return this.baseDirName}static readFilesInDir(e,t){const r=[];return i.default.existsSync(e)?(i.default.readdirSync(e,{withFileTypes:!0}).forEach((n=>{if(n.name===c.StringConstant.NOT_SCAN_DIR)return;const i=a.default.join(e,n.name);if(n.isFile())return t?void(t(n.name)&&r.push(i)):void r.push(i);r.push(...l.readFilesInDir(i,t))})),r):r}static writeStringToFile(e,t){const r=a.default.dirname(t);l.isExists(r)||i.default.mkdirSync(r,{recursive:!0}),i.default.writeFileSync(t,e)}static isDirectory(e){return i.default.lstatSync(e).isDirectory()}static isFile(e){return i.default.lstatSync(e).isFile()}static isExists(e){if(!e)return!1;try{return i.default.accessSync(a.default.resolve(this.baseDirName,e),i.default.constants.R_OK),!0}catch(e){const t=e;return s.LogUtil.e("error filePath",t.stack?t.stack:t.message),!1}}}t.FileUtils=l,l.baseDirName=String(process.env.DIR_NAME)},5391:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FunctionUtils=void 0;const i=n(r(71017)),a=r(64158),o=r(44209),s=r(79646);t.FunctionUtils=class{static getPackageName(e){return e.indexOf("component\\ets\\")>=0||e.indexOf("component/ets/")>=0?"ArkUI":i.default.basename(e).replace(/@|.d.ts$/g,"")}static handleSyscap(e){const t=e.split(".");let r="";switch(t[1]){case"MiscServices":r=t[a.NumberConstant.SYSCAP_KEY_FIELD_INDEX];break;case"Communication":if(c.has(t[a.NumberConstant.SYSCAP_KEY_FIELD_INDEX])){r=t[a.NumberConstant.SYSCAP_KEY_FIELD_INDEX];break}r=t[1];break;default:r=t[1]}return r}static readSubsystemFile(){const e=new Map,t=new Map;return s.fileContent.forEach((r=>{e.set(r.syscap,r.subsystem),t.set(r.syscap,r.fileName)})),{subsystemMap:e,fileNameMap:t}}static readKitFile(){const e=new Map,t=new Map,r=new Set;return o.kitData.forEach((n=>{e.set(n.filePath,n.subSystem),t.set(n.filePath,n.kitName),r.add(n.filePath)})),{subsystemMap:e,kitNameMap:t,filePathSet:r}}};const c=new Set(["Bluetooth","NetManager"])},72161:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StringUtils=void 0;const n=r(42034);t.StringUtils=class{static hasSubstring(e,t){let r=!1;try{r=-1!==e.search(t)}catch(e){n.LogUtil.e("StringUtils.hasSubstring",e)}return r}static transformBooleanToTag(e,t){return"true"===e.toString()?t:"NA"}}},40139:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.throwsTagDescriptionArr=t.punctuationMarkSet=t.cleanApiCheckResult=t.hierarchicalRelationsSet=t.apiCheckResult=t.compositiveLocalResult=t.compositiveResult=t.apiLegalityCheckTypeMap=t.permissionOptionalTags=t.conditionalOptionalTags=t.optionalTags=t.followTagArr=t.inheritTagArr=t.officialTagArr=t.tagsArrayOfOrder=t.CommonFunctions=t.ObtainFullPath=t.GenerateFile=t.CompolerOptions=t.PosOfNode=void 0;const i=n(r(71017)),a=n(r(57147)),o=r(35244),s=n(r(55423)),c=r(45842),l=r(10391),u=r(42979),d=r(64158),p=r(96486);t.PosOfNode=class{static getPosOfNode(e,t){const r=s.default.getLineAndCharacterOfPosition(e.getSourceFile(),t.start);return t.file?.fileName+`(line: ${r.line+1}, col: ${r.character+1})`}};t.CompolerOptions=class{static getCompolerOptions(){const e=s.default.readConfigFile(i.default.resolve(l.FileUtils.getBaseDirName(),"./tsconfig.json"),s.default.sys.readFile).config.compilerOptions;return Object.assign(e,{target:"es2020",jsx:"preserve",incremental:void 0,declaration:void 0,declarationMap:void 0,emitDeclarationOnly:void 0,outFile:void 0,composite:void 0,tsBuildInfoFile:void 0,noEmit:void 0,isolatedModules:!0,paths:void 0,rootDirs:void 0,types:void 0,out:void 0,noLib:void 0,noResolve:!0,noEmitOnError:void 0,declarationDir:void 0,suppressOutputPathCheck:!0,allowNonTsExtensions:!0}),e}};t.GenerateFile=class{static writeFile(e,t,r){a.default.writeFile(i.default.resolve(t),JSON.stringify(e,null,2),r,(e=>{e?console.error(`ERROR FOR CREATE FILE:${e}`):console.log("API CHECK FINISH!")}))}static async writeExcelFile(e){const t=new o.Workbook,r=t.addWorksheet("Js Api",{views:[{xSplit:1}]});r.getRow(1).values=["order","analyzerName","buggyFilePath","codeContextStaerLine","defectLevel","defectType","description","language","mainBuggyCode","apiName","apiType","hierarchicalRelations","parentModuleName"];for(let t=1;t<=e.length;t++){const n=e[t-1];r.getRow(t+1).values=[t,n.analyzerName,n.getFilePath(),n.getLocation(),n.getLevel(),n.getType(),n.getMessage(),n.language,n.getMainBuggyCode(),n.getExtendInfo().getApiName(),n.getExtendInfo().getApiType(),n.getExtendInfo().getHierarchicalRelations(),n.getExtendInfo().getParentModuleName()]}t.xlsx.writeBuffer().then((e=>{a.default.writeFile(i.default.resolve(l.FileUtils.getBaseDirName(),"./Js_Api.xlsx"),e,(function(e){e&&console.error(e)}))}))}};class f{static getFullFiles(e,t){try{a.default.readdirSync(e).forEach((r=>{const n=i.default.join(e,r);a.default.statSync(n).isDirectory()?f.getFullFiles(n,t):(/\.d\.ts/.test(n)||/\.d\.ets/.test(n)||/\.ts/.test(n))&&t.push(n)}))}catch(e){console.error("ETS ERROR: "+e)}}}t.ObtainFullPath=f;class m{static getSinceVersion(e){return-1!==e.indexOf(d.PunctuationMark.LEFT_PARENTHESES)?e.substring(e.indexOf(d.PunctuationMark.LEFT_PARENTHESES)+1,e.indexOf(d.PunctuationMark.RIGHT_PARENTHESES)):e}static isOfficialTag(e){return-1===t.tagsArrayOfOrder.indexOf(e)}static createErrorInfo(e,t){return t.forEach((t=>{e=e.replace("$$",t)})),e}static getCheckApiVersion(){let e="-1";try{e=JSON.stringify(u.ApiCheckVersion)}catch(e){throw`Failed to read package.json or parse JSON content: ${e}`}if(!e)throw"Please configure the correct API version to be verified";return e}static judgeSpecialCase(e){let t=[];return e===s.default.SyntaxKind.TypeLiteral?t=["object"]:e===s.default.SyntaxKind.FunctionType&&(t=["function"]),t}static getExtendsApiValue(e){let t="";const r=[],n=e.getParentClasses();return 0===n.length||(n.forEach((e=>{0!==e.getExtendClass().length&&r.push(e.getExtendClass())})),t=r.join(",")),t}static getImplementsApiValue(e){let t="";const r=e.getParentClasses();return 0===r.length||r.forEach((e=>{0!==e.getImplementClass().length&&(t=e.getImplementClass())})),t}static getErrorInfo(e,t,r,n){let i=new c.ApiCheckInfo;if(void 0===e)return i;const a=void 0===t?-1:p.toNumber(t.since);return i.setErrorID(n.errorID).setErrorLevel(n.errorLevel).setFilePath(r).setApiPostion(e.getPos()).setErrorType(n.errorType).setLogType(n.logType).setSinceNumber(a).setApiName(e.getApiName()).setApiType(e.getApiType()).setApiText(e.getDefinedText()).setErrorInfo(n.errorInfo).setHierarchicalRelations(e.getHierarchicalRelations().join("|")).setParentModuleName(e.getParentApi()?.getApiName()),i}static getMdFiles(e){const t=[];return a.default.readFileSync(e,"utf-8").split(/[(\r\n)\r\n]+/).forEach((e=>{const r=new Set;m.splitPath(e,r),r.has("build-tools")||t.push(e)})),t}static splitPath(e,t){let r=i.default.parse(e);""!==r.base&&(t.add(r.base),m.splitPath(r.dir,t))}static isAscending(e){for(let t=1;t<e.length;t++)if(e[t]<e[t-1])return!1;return!0}}t.CommonFunctions=m,t.tagsArrayOfOrder=["namespace","struct","typedef","interface","extends","implements","permission","enum","constant","type","param","default","returns","readonly","throws","static","fires","syscap","systemapi","famodelonly","FAModelOnly","stagemodelonly","StageModelOnly","crossplatform","form","atomicservice","since","deprecated","useinstead","test","example"],t.officialTagArr=["abstract","access","alias","async","augments","author","borrows","class","classdesc","constructs","copyright","event","exports","external","file","function","generator","global","hideconstructor","ignore","inheritdoc","inner","instance","lends","license","listens","member","memberof","mixes","mixin","modifies","module","package","private","property","protected","public","requires","see","summary","this","todo","tutorial","variation","version","yields","also","description","kind","name","undocumented"],t.inheritTagArr=["test","famodelonly","FAModelOnly","stagemodelonly","StageModelOnly","deprecated","systemapi"],t.followTagArr=["atomicservice","form"],t.optionalTags=["static","fires","systemapi","famodelonly","FAModelOnly","stagemodelonly","StageModelOnly","crossplatform","deprecated","test","form","example","atomicservice"],t.conditionalOptionalTags=["default","permission","throws"],t.permissionOptionalTags=[s.default.SyntaxKind.FunctionDeclaration,s.default.SyntaxKind.MethodSignature,s.default.SyntaxKind.MethodDeclaration,s.default.SyntaxKind.CallSignature,s.default.SyntaxKind.Constructor,s.default.SyntaxKind.PropertyDeclaration,s.default.SyntaxKind.PropertySignature,s.default.SyntaxKind.VariableStatement],t.apiLegalityCheckTypeMap=new Map([[s.default.SyntaxKind.CallSignature,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.ClassDeclaration,["extends","implements","syscap","since"]],[s.default.SyntaxKind.Constructor,["param","syscap","permission","throws","syscap","since"]],[s.default.SyntaxKind.EnumDeclaration,["enum","syscap","since"]],[s.default.SyntaxKind.FunctionDeclaration,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.InterfaceDeclaration,["typedef","extends","syscap","since"]],[s.default.SyntaxKind.MethodDeclaration,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.MethodSignature,["param","returns","permission","throws","syscap","since"]],[s.default.SyntaxKind.ModuleDeclaration,["namespace","syscap","since"]],[s.default.SyntaxKind.PropertyDeclaration,["type","default","permission","throws","readonly","syscap","since"]],[s.default.SyntaxKind.PropertySignature,["type","default","permission","throws","readonly","syscap","since"]],[s.default.SyntaxKind.VariableStatement,["constant","default","permission","throws","syscap","since"]],[s.default.SyntaxKind.TypeAliasDeclaration,["syscap","since","typedef","param","returns","throws"]],[s.default.SyntaxKind.EnumMember,["syscap","since"]],[s.default.SyntaxKind.NamespaceExportDeclaration,["syscap","since"]],[s.default.SyntaxKind.TypeLiteral,["syscap","since"]],[s.default.SyntaxKind.LabeledStatement,["syscap","since"]],[s.default.SyntaxKind.StructDeclaration,["struct","syscap","since"]]]),t.compositiveResult=[],t.compositiveLocalResult=[],t.apiCheckResult=[],t.hierarchicalRelationsSet=new Set,t.cleanApiCheckResult=function(){t.apiCheckResult=[],t.compositiveResult=[],t.hierarchicalRelationsSet=new Set},t.punctuationMarkSet=new Set(["\\{","\\}","\\(","\\)","\\[","\\]","\\@","\\.","\\:","\\,","\\;","\\(","\\)",'\\"',"\\/","\\_","\\-","\\=","\\?","\\<","\\>","\\,","\\!","\\#",":",",","\\:","\\|","\\%","\\&","\\¡","\\¢","\\+","\\`","\\\\","\\'"]),t.throwsTagDescriptionArr=["Parameter error. Possible causes:","Mandatory parameters are left unspecified","Incorrect parameter types","Parameter verification failed"]},42034:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.LogUtil=t.LogLevelUtil=t.LogLevel=void 0,function(e){e[e.DEBUG=0]="DEBUG",e[e.INFO=1]="INFO",e[e.WARN=2]="WARN",e[e.ERR=3]="ERR"}(r=t.LogLevel||(t.LogLevel={}));t.LogLevelUtil=class{static get(e){for(let t=r.DEBUG;t<=r.ERR;t++)if(e===r[t])return t;return r.ERR}};class n{static e(e,t){n.logLevel<=r.ERR&&console.error(`${e}: ${t}`)}static w(e,t){n.logLevel<=r.WARN&&console.warn(`${e}: ${t}`)}static i(e,t){n.logLevel<=r.INFO&&console.info(`${e}: ${t}`)}static d(e,t){n.logLevel<=r.DEBUG&&console.debug(`${e}: ${t}`)}}t.LogUtil=n,n.logLevel=r.ERR},55423:function(e,t,r){"use strict"; -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. All rights reserved. -Licensed under the Apache License, Version 2.0 (the "License"); you may not use -this file except in compliance with the License. You may obtain a copy of the -License at http://www.apache.org/licenses/LICENSE-2.0 - -THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED -WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, -MERCHANTABLITY OR NON-INFRINGEMENT. - -See the Apache Version 2.0 License for specific language governing permissions -and limitations under the License. -***************************************************************************** */var n,i=this&&this.__spreadArray||function(e,t){for(var r=0,n=t.length,i=e.length;r<n;r++,i++)e[i]=t[r];return e},a=this&&this.__assign||function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},a.apply(this,arguments)},o=this&&this.__makeTemplateObject||function(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e},s=this&&this.__generator||function(e,t){var r,n,i,a,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,n=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==a[0]&&2!==a[0])){o=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){o.label=a[1];break}if(6===a[0]&&o.label<i[1]){o.label=i[1],i=a;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(a);break}i[2]&&o.ops.pop(),o.trys.pop();continue}a=t.call(e,o)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,s])}}},c=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r},l=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});!function(e){function t(){var e={};return e.prev=e,{head:e,tail:e,size:0}}function r(e,t){return e===t||e!=e&&t!=t}function n(e){var t=e.prev;if(!t||t===e)throw new Error("Illegal state");return t}function i(e){for(;e;){var t=!e.prev;if(e=e.next,!t)return e}}function a(e,t){for(var i=e.tail;i!==e.head;i=n(i))if(r(i.key,t))return i}function o(e,t,r){var n=a(e,t);if(!n){var i=function(e,t){return{key:e,value:t,next:void 0,prev:void 0}}(t,r);return i.prev=e.tail,e.tail.next=i,e.tail=i,e.size++,i}n.value=r}function s(e,t){for(var i=e.tail;i!==e.head;i=n(i)){if(void 0===i.prev)throw new Error("Illegal state");if(r(i.key,t)){if(i.next)i.next.prev=i.prev;else{if(e.tail!==i)throw new Error("Illegal state");e.tail=i.prev}return i.prev.next=i.next,i.next=i.prev,i.prev=void 0,e.size--,i}}}function c(e){for(var t=e.tail;t!==e.head;){var r=n(t);t.next=e.head,t.prev=void 0,t=r}e.head.next=void 0,e.tail=e.head,e.size=0}function l(e,t){for(var r=e.head;r;)(r=i(r))&&t(r.value,r.key)}function u(e,t){if(e)for(var r=e.next();!r.done;r=e.next())t(r.value)}function d(e,t){return{current:e.head,selector:t}}function p(e){return e.current=i(e.current),e.current?{value:e.selector(e.current.key,e.current.value),done:!1}:{value:void 0,done:!0}}!function(e){e.createMapShim=function(e){var r=function(){function e(e,t){this._data=d(e,t)}return e.prototype.next=function(){return p(this._data)},e}();return function(){function n(r){var n=this;this._mapData=t(),u(e(r),(function(e){var t=e[0],r=e[1];return n.set(t,r)}))}return Object.defineProperty(n.prototype,"size",{get:function(){return this._mapData.size},enumerable:!1,configurable:!0}),n.prototype.get=function(e){var t;return null===(t=a(this._mapData,e))||void 0===t?void 0:t.value},n.prototype.set=function(e,t){return o(this._mapData,e,t),this},n.prototype.has=function(e){return!!a(this._mapData,e)},n.prototype.delete=function(e){return!!s(this._mapData,e)},n.prototype.clear=function(){c(this._mapData)},n.prototype.keys=function(){return new r(this._mapData,(function(e,t){return e}))},n.prototype.values=function(){return new r(this._mapData,(function(e,t){return t}))},n.prototype.entries=function(){return new r(this._mapData,(function(e,t){return[e,t]}))},n.prototype.forEach=function(e){l(this._mapData,e)},n}()},e.createSetShim=function(e){var r=function(){function e(e,t){this._data=d(e,t)}return e.prototype.next=function(){return p(this._data)},e}();return function(){function n(r){var n=this;this._mapData=t(),u(e(r),(function(e){return n.add(e)}))}return Object.defineProperty(n.prototype,"size",{get:function(){return this._mapData.size},enumerable:!1,configurable:!0}),n.prototype.add=function(e){return o(this._mapData,e,e),this},n.prototype.has=function(e){return!!a(this._mapData,e)},n.prototype.delete=function(e){return!!s(this._mapData,e)},n.prototype.clear=function(){c(this._mapData)},n.prototype.keys=function(){return new r(this._mapData,(function(e,t){return e}))},n.prototype.values=function(){return new r(this._mapData,(function(e,t){return t}))},n.prototype.entries=function(){return new r(this._mapData,(function(e,t){return[e,t]}))},n.prototype.forEach=function(e){l(this._mapData,e)},n}()}}(e.ShimCollections||(e.ShimCollections={}))}(d||(d={})),function(e){e.versionMajorMinor="4.2",e.version="4.2.3",function(e){e[e.LessThan=-1]="LessThan",e[e.EqualTo=0]="EqualTo",e[e.GreaterThan=1]="GreaterThan"}(e.Comparison||(e.Comparison={})),function(e){e.tryGetNativeMap=function(){return"undefined"!=typeof Map&&"entries"in Map.prototype&&1===new Map([[0,0]]).size?Map:void 0},e.tryGetNativeSet=function(){return"undefined"!=typeof Set&&"entries"in Set.prototype&&1===new Set([0]).size?Set:void 0}}(e.NativeCollections||(e.NativeCollections={}))}(d||(d={})),function(e){function t(t,n,i){var a,o=null!==(a=e.NativeCollections[n]())&&void 0!==a?a:null===e.ShimCollections||void 0===e.ShimCollections?void 0:e.ShimCollections[i](r);if(o)return o;throw new Error("TypeScript requires an environment that provides a compatible native "+t+" implementation.")}function r(t){if(t){if(C(t))return g(t);if(t instanceof e.Map)return t.entries();if(t instanceof e.Set)return t.values();throw new Error("Iteration not supported.")}}function n(e,t,r){if(void 0===r&&(r=O),e)for(var n=0,i=e;n<i.length;n++){if(r(i[n],t))return!0}return!1}function a(e,t){if(e){if(!t)return e.length>0;for(var r=0,n=e;r<n.length;r++){if(t(n[r]))return!0}}return!1}function o(e,t){return a(t)?a(e)?i(i([],e),t):t:e}function s(e,t){return t}function c(e){return e.map(s)}function l(e,t){return void 0===t?e:void 0===e?[t]:(e.push(t),e)}function u(e,t){return t<0?e.length+t:t}function d(e,t,r,n){if(void 0===t||0===t.length)return e;if(void 0===e)return t.slice(r,n);r=void 0===r?0:u(t,r),n=void 0===n?t.length:u(t,n);for(var i=r;i<n&&i<t.length;i++)void 0!==t[i]&&e.push(t[i]);return e}function p(e,t,r){return!n(e,t,r)&&(e.push(t),!0)}function f(e,t,r){t.sort((function(t,n){return r(e[t],e[n])||M(t,n)}))}function m(e,t){return 0===e.length?e:e.slice().sort(t)}function g(e){var t=0;return{next:function(){return t===e.length?{value:void 0,done:!0}:(t++,{value:e[t-1],done:!1})}}}function _(e,t,r,n,i){return h(e,r(t),r,n,i)}function h(e,t,r,n,i){if(!a(e))return-1;for(var o=i||0,s=e.length-1;o<=s;){var c=o+(s-o>>1);switch(n(r(e[c],c),t)){case-1:o=c+1;break;case 0:return c;case 1:s=c-1}}return~o}function y(e,t,r,n,i){if(e&&e.length>0){var a=e.length;if(a>0){var o=void 0===n||n<0?0:n,s=void 0===i||o+i>a-1?a-1:o+i,c=void 0;for(arguments.length<=2?(c=e[o],o++):c=r;o<=s;)c=t(c,e[o],o),o++;return c}}return r}e.Map=t("Map","tryGetNativeMap","createMapShim"),e.Set=t("Set","tryGetNativeSet","createSetShim"),e.getIterator=r,e.emptyArray=[],e.emptyMap=new e.Map,e.emptySet=new e.Set,e.createMap=function(){return new e.Map},e.createMapFromTemplate=function(t){var r=new e.Map;for(var n in t)v.call(t,n)&&r.set(n,t[n]);return r},e.length=function(e){return e?e.length:0},e.forEach=function(e,t){if(e)for(var r=0;r<e.length;r++){var n=t(e[r],r);if(n)return n}},e.forEachRight=function(e,t){if(e)for(var r=e.length-1;r>=0;r--){var n=t(e[r],r);if(n)return n}},e.firstDefined=function(e,t){if(void 0!==e)for(var r=0;r<e.length;r++){var n=t(e[r],r);if(void 0!==n)return n}},e.firstDefinedIterator=function(e,t){for(;;){var r=e.next();if(r.done)return;var n=t(r.value);if(void 0!==n)return n}},e.reduceLeftIterator=function(e,t,r){var n=r;if(e)for(var i=e.next(),a=0;!i.done;i=e.next(),a++)n=t(n,i.value,a);return n},e.zipWith=function(t,r,n){var i=[];e.Debug.assertEqual(t.length,r.length);for(var a=0;a<t.length;a++)i.push(n(t[a],r[a],a));return i},e.zipToIterator=function(t,r){e.Debug.assertEqual(t.length,r.length);var n=0;return{next:function(){return n===t.length?{value:void 0,done:!0}:(n++,{value:[t[n-1],r[n-1]],done:!1})}}},e.zipToMap=function(t,r){e.Debug.assert(t.length===r.length);for(var n=new e.Map,i=0;i<t.length;++i)n.set(t[i],r[i]);return n},e.intersperse=function(e,t){if(e.length<=1)return e;for(var r=[],n=0,i=e.length;n<i;n++)n&&r.push(t),r.push(e[n]);return r},e.every=function(e,t){if(e)for(var r=0;r<e.length;r++)if(!t(e[r],r))return!1;return!0},e.find=function(e,t){for(var r=0;r<e.length;r++){var n=e[r];if(t(n,r))return n}},e.findLast=function(e,t){for(var r=e.length-1;r>=0;r--){var n=e[r];if(t(n,r))return n}},e.findIndex=function(e,t,r){for(var n=r||0;n<e.length;n++)if(t(e[n],n))return n;return-1},e.findLastIndex=function(e,t,r){for(var n=void 0===r?e.length-1:r;n>=0;n--)if(t(e[n],n))return n;return-1},e.findMap=function(t,r){for(var n=0;n<t.length;n++){var i=r(t[n],n);if(i)return i}return e.Debug.fail()},e.contains=n,e.arraysEqual=function(e,t,r){return void 0===r&&(r=O),e.length===t.length&&e.every((function(e,n){return r(e,t[n])}))},e.indexOfAnyCharCode=function(e,t,r){for(var i=r||0;i<e.length;i++)if(n(t,e.charCodeAt(i)))return i;return-1},e.countWhere=function(e,t){var r=0;if(e)for(var n=0;n<e.length;n++){t(e[n],n)&&r++}return r},e.filter=function(e,t){if(e){for(var r=e.length,n=0;n<r&&t(e[n]);)n++;if(n<r){var i=e.slice(0,n);for(n++;n<r;){var a=e[n];t(a)&&i.push(a),n++}return i}}return e},e.filterMutate=function(e,t){for(var r=0,n=0;n<e.length;n++)t(e[n],n,e)&&(e[r]=e[n],r++);e.length=r},e.clear=function(e){e.length=0},e.map=function(e,t){var r;if(e){r=[];for(var n=0;n<e.length;n++)r.push(t(e[n],n))}return r},e.mapIterator=function(e,t){return{next:function(){var r=e.next();return r.done?r:{value:t(r.value),done:!1}}}},e.sameMap=function(e,t){if(e)for(var r=0;r<e.length;r++){var n=e[r],i=t(n,r);if(n!==i){var a=e.slice(0,r);for(a.push(i),r++;r<e.length;r++)a.push(t(e[r],r));return a}}return e},e.flatten=function(e){for(var t=[],r=0,n=e;r<n.length;r++){var i=n[r];i&&(C(i)?d(t,i):t.push(i))}return t},e.flatMap=function(t,r){var n;if(t)for(var i=0;i<t.length;i++){var a=r(t[i],i);a&&(n=C(a)?d(n,a):l(n,a))}return n||e.emptyArray},e.flatMapToMutable=function(e,t){var r=[];if(e)for(var n=0;n<e.length;n++){var i=t(e[n],n);i&&(C(i)?d(r,i):r.push(i))}return r},e.flatMapIterator=function(t,r){var n=t.next();if(n.done)return e.emptyIterator;var i=a(n.value);return{next:function(){for(;;){var e=i.next();if(!e.done)return e;var r=t.next();if(r.done)return r;i=a(r.value)}}};function a(t){var n=r(t);return void 0===n?e.emptyIterator:C(n)?g(n):n}},e.sameFlatMap=function(e,t){var r;if(e)for(var n=0;n<e.length;n++){var i=e[n],a=t(i,n);(r||i!==a||C(a))&&(r||(r=e.slice(0,n)),C(a)?d(r,a):r.push(a))}return r||e},e.mapAllOrFail=function(e,t){for(var r=[],n=0;n<e.length;n++){var i=t(e[n],n);if(void 0===i)return;r.push(i)}return r},e.mapDefined=function(e,t){var r=[];if(e)for(var n=0;n<e.length;n++){var i=t(e[n],n);void 0!==i&&r.push(i)}return r},e.mapDefinedIterator=function(e,t){return{next:function(){for(;;){var r=e.next();if(r.done)return r;var n=t(r.value);if(void 0!==n)return{value:n,done:!1}}}}},e.mapDefinedEntries=function(t,r){if(t){var n=new e.Map;return t.forEach((function(e,t){var i=r(t,e);if(void 0!==i){var a=i[0],o=i[1];void 0!==a&&void 0!==o&&n.set(a,o)}})),n}},e.mapDefinedValues=function(t,r){if(t){var n=new e.Set;return t.forEach((function(e){var t=r(e);void 0!==t&&n.add(t)})),n}},e.getOrUpdate=function(e,t,r){if(e.has(t))return e.get(t);var n=r();return e.set(t,n),n},e.tryAddToSet=function(e,t){return!e.has(t)&&(e.add(t),!0)},e.emptyIterator={next:function(){return{value:void 0,done:!0}}},e.singleIterator=function(e){var t=!1;return{next:function(){var r=t;return t=!0,r?{value:void 0,done:!0}:{value:e,done:!1}}}},e.spanMap=function(e,t,r){var n;if(e){n=[];for(var i=e.length,a=void 0,o=void 0,s=0,c=0;s<i;){for(;c<i;){if(o=t(e[c],c),0===c)a=o;else if(o!==a)break;c++}if(s<c){var l=r(e.slice(s,c),a,s,c);l&&n.push(l),s=c}a=o,c++}}return n},e.mapEntries=function(t,r){if(t){var n=new e.Map;return t.forEach((function(e,t){var i=r(t,e),a=i[0],o=i[1];n.set(a,o)})),n}},e.some=a,e.getRangesWhere=function(e,t,r){for(var n,i=0;i<e.length;i++)t(e[i])?n=void 0===n?i:n:void 0!==n&&(r(n,i),n=void 0);void 0!==n&&r(n,e.length)},e.concatenate=o,e.indicesOf=c,e.deduplicate=function(e,t,r){return 0===e.length?[]:1===e.length?e.slice():r?function(e,t,r){var n=c(e);f(e,n,r);for(var i=e[n[0]],a=[n[0]],o=1;o<n.length;o++){var s=n[o],l=e[s];t(i,l)||(a.push(s),i=l)}return a.sort(),a.map((function(t){return e[t]}))}(e,t,r):function(e,t){for(var r=[],n=0,i=e;n<i.length;n++)p(r,i[n],t);return r}(e,t)},e.insertSorted=function(e,t,r){if(0!==e.length){var n=_(e,t,N,r);n<0&&e.splice(~n,0,t)}else e.push(t)},e.sortAndDeduplicate=function(t,r,n){return function(t,r){if(0===t.length)return e.emptyArray;for(var n=t[0],i=[n],a=1;a<t.length;a++){var o=t[a];switch(r(o,n)){case!0:case 0:continue;case-1:return e.Debug.fail("Array is unsorted.")}i.push(n=o)}return i}(m(t,r),n||r||j)},e.arrayIsSorted=function(e,t){if(e.length<2)return!0;for(var r=e[0],n=0,i=e.slice(1);n<i.length;n++){var a=i[n];if(1===t(r,a))return!1;r=a}return!0},e.arrayIsEqualTo=function(e,t,r){if(void 0===r&&(r=O),!e||!t)return e===t;if(e.length!==t.length)return!1;for(var n=0;n<e.length;n++)if(!r(e[n],t[n],n))return!1;return!0},e.compact=function(e){var t;if(e)for(var r=0;r<e.length;r++){var n=e[r];!t&&n||(t||(t=e.slice(0,r)),n&&t.push(n))}return t||e},e.relativeComplement=function(t,r,n){if(!r||!t||0===r.length||0===t.length)return r;var i=[];e:for(var a=0,o=0;o<r.length;o++){o>0&&e.Debug.assertGreaterThanOrEqual(n(r[o],r[o-1]),0);t:for(var s=a;a<t.length;a++)switch(a>s&&e.Debug.assertGreaterThanOrEqual(n(t[a],t[a-1]),0),n(r[o],t[a])){case-1:i.push(r[o]);continue e;case 0:continue e;case 1:continue t}}return i},e.sum=function(e,t){for(var r=0,n=0,i=e;n<i.length;n++){r+=i[n][t]}return r},e.append=l,e.combine=function(e,t){return void 0===e?t:void 0===t?e:C(e)?C(t)?o(e,t):l(e,t):C(t)?l(t,e):[e,t]},e.addRange=d,e.pushIfUnique=p,e.appendIfUnique=function(e,t,r){return e?(p(e,t,r),e):[t]},e.sort=m,e.arrayIterator=g,e.arrayReverseIterator=function(e){var t=e.length;return{next:function(){return 0===t?{value:void 0,done:!0}:(t--,{value:e[t],done:!1})}}},e.stableSort=function(e,t){var r=c(e);return f(e,r,t),r.map((function(t){return e[t]}))},e.rangeEquals=function(e,t,r,n){for(;r<n;){if(e[r]!==t[r])return!1;r++}return!0},e.elementAt=function(e,t){if(e&&(t=u(e,t))<e.length)return e[t]},e.firstOrUndefined=function(e){return 0===e.length?void 0:e[0]},e.first=function(t){return e.Debug.assert(0!==t.length),t[0]},e.lastOrUndefined=function(e){return 0===e.length?void 0:e[e.length-1]},e.last=function(t){return e.Debug.assert(0!==t.length),t[t.length-1]},e.singleOrUndefined=function(e){return e&&1===e.length?e[0]:void 0},e.singleOrMany=function(e){return e&&1===e.length?e[0]:e},e.replaceElement=function(e,t,r){var n=e.slice(0);return n[t]=r,n},e.binarySearch=_,e.binarySearchKey=h,e.reduceLeft=y;var v=Object.prototype.hasOwnProperty;function b(e,t){return v.call(e,t)}function k(e){var t=[];for(var r in e)v.call(e,r)&&t.push(r);return t}e.hasProperty=b,e.getProperty=function(e,t){return v.call(e,t)?e[t]:void 0},e.getOwnKeys=k,e.getAllKeys=function(e){var t=[];do{for(var r=0,n=Object.getOwnPropertyNames(e);r<n.length;r++){p(t,n[r])}}while(e=Object.getPrototypeOf(e));return t},e.getOwnValues=function(e){var t=[];for(var r in e)v.call(e,r)&&t.push(e[r]);return t};var x=Object.entries||function(e){for(var t=k(e),r=Array(t.length),n=0;n<t.length;n++)r[n]=[t[n],e[t[n]]];return r};function E(e,t){for(var r=[],n=e.next();!n.done;n=e.next())r.push(t?t(n.value):n.value);return r}function S(e,t,r){void 0===r&&(r=N);for(var n=D(),i=0,a=e;i<a.length;i++){var o=a[i];n.add(t(o),r(o))}return n}function D(){var t=new e.Map;return t.add=w,t.remove=T,t}function w(e,t){var r=this.get(e);return r?r.push(t):this.set(e,r=[t]),r}function T(e,t){var r=this.get(e);r&&(K(r,t),r.length||this.delete(e))}function C(e){return Array.isArray?Array.isArray(e):e instanceof Array}function A(e){}function N(e){return e}function P(e){return e.toLowerCase()}e.getEntries=function(e){return e?x(e):[]},e.arrayOf=function(e,t){for(var r=new Array(e),n=0;n<e;n++)r[n]=t(n);return r},e.arrayFrom=E,e.assign=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];for(var n=0,i=t;n<i.length;n++){var a=i[n];if(void 0!==a)for(var o in a)b(a,o)&&(e[o]=a[o])}return e},e.equalOwnProperties=function(e,t,r){if(void 0===r&&(r=O),e===t)return!0;if(!e||!t)return!1;for(var n in e)if(v.call(e,n)){if(!v.call(t,n))return!1;if(!r(e[n],t[n]))return!1}for(var n in t)if(v.call(t,n)&&!v.call(e,n))return!1;return!0},e.arrayToMap=function(t,r,n){void 0===n&&(n=N);for(var i=new e.Map,a=0,o=t;a<o.length;a++){var s=o[a],c=r(s);void 0!==c&&i.set(c,n(s))}return i},e.arrayToNumericMap=function(e,t,r){void 0===r&&(r=N);for(var n=[],i=0,a=e;i<a.length;i++){var o=a[i];n[t(o)]=r(o)}return n},e.arrayToMultiMap=S,e.group=function(e,t,r){return void 0===r&&(r=N),E(S(e,t).values(),r)},e.clone=function(e){var t={};for(var r in e)v.call(e,r)&&(t[r]=e[r]);return t},e.extend=function(e,t){var r={};for(var n in t)v.call(t,n)&&(r[n]=t[n]);for(var n in e)v.call(e,n)&&(r[n]=e[n]);return r},e.copyProperties=function(e,t){for(var r in t)v.call(t,r)&&(e[r]=t[r])},e.maybeBind=function(e,t){return t?t.bind(e):void 0},e.createMultiMap=D,e.createUnderscoreEscapedMultiMap=function(){return D()},e.isArray=C,e.toArray=function(e){return C(e)?e:[e]},e.isString=function(e){return"string"==typeof e},e.isNumber=function(e){return"number"==typeof e},e.tryCast=function(e,t){return void 0!==e&&t(e)?e:void 0},e.cast=function(t,r){return void 0!==t&&r(t)?t:e.Debug.fail("Invalid cast. The supplied value "+t+" did not pass the test '"+e.Debug.getFunctionName(r)+"'.")},e.noop=A,e.returnFalse=function(){return!1},e.returnTrue=function(){return!0},e.returnUndefined=function(){},e.identity=N,e.toLowerCase=P;var I=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_\. ]+/g;function F(e){return I.test(e)?e.replace(I,P):e}function O(e,t){return e===t}function R(e,t){return e===t?0:void 0===e?-1:void 0===t?1:e<t?-1:1}function M(e,t){return R(e,t)}function L(e,t){return e===t?0:void 0===e?-1:void 0===t?1:(e=e.toUpperCase())<(t=t.toUpperCase())?-1:e>t?1:0}function j(e,t){return R(e,t)}e.toFileNameLowerCase=F,e.notImplemented=function(){throw new Error("Not implemented")},e.memoize=function(e){var t;return function(){return e&&(t=e(),e=void 0),t}},e.memoizeOne=function(t){var r=new e.Map;return function(e){var n=typeof e+":"+e,i=r.get(n);return void 0!==i||r.has(n)||(i=t(e),r.set(n,i)),i}},e.compose=function(e,t,r,n,i){if(i){for(var a=[],o=0;o<arguments.length;o++)a[o]=arguments[o];return function(e){return y(a,(function(e,t){return t(e)}),e)}}return n?function(i){return n(r(t(e(i))))}:r?function(n){return r(t(e(n)))}:t?function(r){return t(e(r))}:e?function(t){return e(t)}:function(e){return e}},function(e){e[e.None=0]="None",e[e.Normal=1]="Normal",e[e.Aggressive=2]="Aggressive",e[e.VeryAggressive=3]="VeryAggressive"}(e.AssertionLevel||(e.AssertionLevel={})),e.equateValues=O,e.equateStringsCaseInsensitive=function(e,t){return e===t||void 0!==e&&void 0!==t&&e.toUpperCase()===t.toUpperCase()},e.equateStringsCaseSensitive=function(e,t){return O(e,t)},e.compareValues=M,e.compareTextSpans=function(e,t){return M(null==e?void 0:e.start,null==t?void 0:t.start)||M(null==e?void 0:e.length,null==t?void 0:t.length)},e.min=function(e,t,r){return-1===r(e,t)?e:t},e.compareStringsCaseInsensitive=L,e.compareStringsCaseSensitive=j,e.getStringComparer=function(e){return e?L:j};var B,z,U=function(){var e,t,r=function(){if("object"==typeof Intl&&"function"==typeof Intl.Collator)return i;if("function"==typeof String.prototype.localeCompare&&"function"==typeof String.prototype.toLocaleUpperCase&&"a".localeCompare("B")<0)return a;return o}();return function(n){return void 0===n?e||(e=r(n)):"en-US"===n?t||(t=r(n)):r(n)};function n(e,t,r){if(e===t)return 0;if(void 0===e)return-1;if(void 0===t)return 1;var n=r(e,t);return n<0?-1:n>0?1:0}function i(e){var t=new Intl.Collator(e,{usage:"sort",sensitivity:"variant"}).compare;return function(e,r){return n(e,r,t)}}function a(e){return void 0!==e?o():function(e,r){return n(e,r,t)};function t(e,t){return e.localeCompare(t)}}function o(){return function(t,r){return n(t,r,e)};function e(e,r){return t(e.toUpperCase(),r.toUpperCase())||t(e,r)}function t(e,t){return e<t?-1:e>t?1:0}}}();function q(e,t,r){for(var n=new Array(t.length+1),i=new Array(t.length+1),a=r+.01,o=0;o<=t.length;o++)n[o]=o;for(o=1;o<=e.length;o++){var s=e.charCodeAt(o-1),c=Math.ceil(o>r?o-r:1),l=Math.floor(t.length>r+o?r+o:t.length);i[0]=o;for(var u=o,d=1;d<c;d++)i[d]=a;for(d=c;d<=l;d++){var p=e[o-1].toLowerCase()===t[d-1].toLowerCase()?n[d-1]+.1:n[d-1]+2,f=s===t.charCodeAt(d-1)?n[d-1]:Math.min(n[d]+1,i[d-1]+1,p);i[d]=f,u=Math.min(u,f)}for(d=l+1;d<=t.length;d++)i[d]=a;if(u>r)return;var m=n;n=i,i=m}var g=n[t.length];return g>r?void 0:g}function J(e,t){var r=e.length-t.length;return r>=0&&e.indexOf(t,r)===r}function V(e,t){for(var r=t;r<e.length-1;r++)e[r]=e[r+1];e.pop()}function H(e,t){e[t]=e[e.length-1],e.pop()}function K(e,t){return function(e,t){for(var r=0;r<e.length;r++)if(t(e[r]))return H(e,r),!0;return!1}(e,(function(e){return e===t}))}function W(e,t){return 0===e.lastIndexOf(t,0)}function G(e,t){var r=e.prefix,n=e.suffix;return t.length>=r.length+n.length&&W(t,r)&&J(t,n)}function $(e,t,r,n){for(var i=0,a=e[n];i<a.length;i++){var o=a[i],s=void 0;r?(s=r.slice()).push(o):s=[o],n===e.length-1?t.push(s):$(e,t,s,n+1)}}e.getUILocale=function(){return z},e.setUILocale=function(e){z!==e&&(z=e,B=void 0)},e.compareStringsCaseSensitiveUI=function(e,t){return(B||(B=U(z)))(e,t)},e.compareProperties=function(e,t,r,n){return e===t?0:void 0===e?-1:void 0===t?1:n(e[r],t[r])},e.compareBooleans=function(e,t){return M(e?1:0,t?1:0)},e.getSpellingSuggestion=function(t,r,n){for(var i,a=Math.min(2,Math.floor(.34*t.length)),o=Math.floor(.4*t.length)+1,s=0,c=r;s<c.length;s++){var l=c[s],u=n(l);if(void 0!==u&&Math.abs(u.length-t.length)<=a){if(u===t)continue;if(u.length<3&&u.toLowerCase()!==t.toLowerCase())continue;var d=q(t,u,o-.1);if(void 0===d)continue;e.Debug.assert(d<o),o=d,i=l}}return i},e.endsWith=J,e.removeSuffix=function(e,t){return J(e,t)?e.slice(0,e.length-t.length):e},e.tryRemoveSuffix=function(e,t){return J(e,t)?e.slice(0,e.length-t.length):void 0},e.stringContains=function(e,t){return-1!==e.indexOf(t)},e.removeMinAndVersionNumbers=function(e){var t=/[.-]((min)|(\d+(\.\d+)*))$/;return e.replace(t,"").replace(t,"")},e.orderedRemoveItem=function(e,t){for(var r=0;r<e.length;r++)if(e[r]===t)return V(e,r),!0;return!1},e.orderedRemoveItemAt=V,e.unorderedRemoveItemAt=H,e.unorderedRemoveItem=K,e.createGetCanonicalFileName=function(e){return e?N:F},e.patternText=function(e){return e.prefix+"*"+e.suffix},e.matchedText=function(t,r){return e.Debug.assert(G(t,r)),r.substring(t.prefix.length,r.length-t.suffix.length)},e.findBestPatternMatch=function(e,t,r){for(var n,i=-1,a=0,o=e;a<o.length;a++){var s=o[a],c=t(s);G(c,r)&&c.prefix.length>i&&(i=c.prefix.length,n=s)}return n},e.startsWith=W,e.removePrefix=function(e,t){return W(e,t)?e.substr(t.length):e},e.tryRemovePrefix=function(e,t,r){return void 0===r&&(r=N),W(r(e),r(t))?e.substring(t.length):void 0},e.and=function(e,t){return function(r){return e(r)&&t(r)}},e.or=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];for(var n=0,i=e;n<i.length;n++){if(i[n].apply(void 0,t))return!0}return!1}},e.not=function(e){return function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return!e.apply(void 0,t)}},e.assertType=function(e){},e.singleElementArray=function(e){return void 0===e?void 0:[e]},e.enumerateInsertsAndDeletes=function(e,t,r,n,i,a){a=a||A;for(var o=0,s=0,c=e.length,l=t.length,u=!1;o<c&&s<l;){var d=e[o],p=t[s],f=r(d,p);-1===f?(n(d),o++,u=!0):1===f?(i(p),s++,u=!0):(a(p,d),o++,s++)}for(;o<c;)n(e[o++]),u=!0;for(;s<l;)i(t[s++]),u=!0;return u},e.fill=function(e,t){for(var r=Array(e),n=0;n<e;n++)r[n]=t(n);return r},e.cartesianProduct=function(e){var t=[];return $(e,t,void 0,0),t},e.padLeft=function(e,t,r){return void 0===r&&(r=" "),t<=e.length?e:r.repeat(t-e.length)+e},e.padRight=function(e,t,r){return void 0===r&&(r=" "),t<=e.length?e:e+r.repeat(t-e.length)},e.takeWhile=function(e,t){for(var r=e.length,n=0;n<r&&t(e[n]);)n++;return e.slice(0,n)}}(d||(d={})),function(e){var t;!function(e){e[e.Off=0]="Off",e[e.Error=1]="Error",e[e.Warning=2]="Warning",e[e.Info=3]="Info",e[e.Verbose=4]="Verbose"}(t=e.LogLevel||(e.LogLevel={})),function(r){var n,i,a=0;function o(){return null!=n?n:n=new e.Version(e.version)}function s(e){return r.currentLogLevel<=e}function c(e,t){r.loggingHost&&s(e)&&r.loggingHost.log(e,t)}function l(e){c(t.Info,e)}r.currentLogLevel=t.Warning,r.isDebugging=!1,r.getTypeScriptVersion=o,r.shouldLog=s,r.log=l,(i=l=r.log||(r.log={})).error=function(e){c(t.Error,e)},i.warn=function(e){c(t.Warning,e)},i.log=function(e){c(t.Info,e)},i.trace=function(e){c(t.Verbose,e)};var u={};function d(e){return a>=e}function p(t,n){return!!d(t)||(u[n]={level:t,assertion:r[n]},r[n]=e.noop,!1)}function f(e,t){var r=new Error(e?"Debug Failure. "+e:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(r,t||f),r}function m(e,t,r,n){e||(t=t?"False expression: "+t:"False expression.",r&&(t+="\r\nVerbose Debug Information: "+("string"==typeof r?r:r())),f(t,n||m))}function g(e,t,r){null==e&&f(t,r||g)}function _(e,t,r){return g(e,t,r||_),e}function h(e,t,r){for(var n=0,i=e;n<i.length;n++){g(i[n],t,r||h)}}function y(e,t,r){return h(e,t,r||y),e}function v(e){if("function"!=typeof e)return"";if(e.hasOwnProperty("name"))return e.name;var t=Function.prototype.toString.call(e),r=/^function\s+([\w\$]+)\s*\(/.exec(t);return r?r[1]:""}function b(t,r,n){void 0===t&&(t=0);var i=function(t){var r=[];for(var n in t){var i=t[n];"number"==typeof i&&r.push([i,n])}return e.stableSort(r,(function(t,r){return e.compareValues(t[0],r[0])}))}(r);if(0===t)return i.length>0&&0===i[0][0]?i[0][1]:"0";if(n){for(var a="",o=t,s=0,c=i;s<c.length;s++){var l=c[s],u=l[0],d=l[1];if(u>t)break;0!==u&&u&t&&(a=a+(a?"|":"")+d,o&=~u)}if(0===o)return a}else for(var p=0,f=i;p<f.length;p++){var m=f[p];u=m[0],d=m[1];if(u===t)return d}return t.toString()}function k(t){return b(t,e.SyntaxKind,!1)}function x(t){return b(t,e.NodeFlags,!0)}function E(t){return b(t,e.ModifierFlags,!0)}function S(t){return b(t,e.TransformFlags,!0)}function D(t){return b(t,e.EmitFlags,!0)}function w(t){return b(t,e.SymbolFlags,!0)}function T(t){return b(t,e.TypeFlags,!0)}function C(t){return b(t,e.SignatureFlags,!0)}function A(t){return b(t,e.ObjectFlags,!0)}function N(t){return b(t,e.FlowFlags,!0)}r.getAssertionLevel=function(){return a},r.setAssertionLevel=function(t){var n=a;if(a=t,t>n)for(var i=0,o=e.getOwnKeys(u);i<o.length;i++){var s=o[i],c=u[s];void 0!==c&&r[s]!==c.assertion&&t>=c.level&&(r[s]=c,u[s]=void 0)}},r.shouldAssert=d,r.fail=f,r.failBadSyntaxKind=function e(t,r,n){return f((r||"Unexpected node.")+"\r\nNode "+k(t.kind)+" was unexpected.",n||e)},r.assert=m,r.assertEqual=function e(t,r,n,i,a){t!==r&&f("Expected "+t+" === "+r+". "+(n?i?n+" "+i:n:""),a||e)},r.assertLessThan=function e(t,r,n,i){t>=r&&f("Expected "+t+" < "+r+". "+(n||""),i||e)},r.assertLessThanOrEqual=function e(t,r,n){t>r&&f("Expected "+t+" <= "+r,n||e)},r.assertGreaterThanOrEqual=function e(t,r,n){t<r&&f("Expected "+t+" >= "+r,n||e)},r.assertIsDefined=g,r.checkDefined=_,r.assertDefined=_,r.assertEachIsDefined=h,r.checkEachDefined=y,r.assertEachDefined=y,r.assertNever=function t(r,n,i){return void 0===n&&(n="Illegal value:"),f(n+" "+("object"==typeof r&&e.hasProperty(r,"kind")&&e.hasProperty(r,"pos")&&k?"SyntaxKind: "+k(r.kind):JSON.stringify(r)),i||t)},r.assertEachNode=function t(r,n,i,a){p(1,"assertEachNode")&&m(void 0===n||e.every(r,n),i||"Unexpected node.",(function(){return"Node array did not pass test '"+v(n)+"'."}),a||t)},r.assertNode=function e(t,r,n,i){p(1,"assertNode")&&m(void 0!==t&&(void 0===r||r(t)),n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" did not pass test '"+v(r)+"'."}),i||e)},r.assertNotNode=function e(t,r,n,i){p(1,"assertNotNode")&&m(void 0===t||void 0===r||!r(t),n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" should not have passed test '"+v(r)+"'."}),i||e)},r.assertOptionalNode=function e(t,r,n,i){p(1,"assertOptionalNode")&&m(void 0===r||void 0===t||r(t),n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" did not pass test '"+v(r)+"'."}),i||e)},r.assertOptionalToken=function e(t,r,n,i){p(1,"assertOptionalToken")&&m(void 0===r||void 0===t||t.kind===r,n||"Unexpected node.",(function(){return"Node "+k(t.kind)+" was not a '"+k(r)+"' token."}),i||e)},r.assertMissingNode=function e(t,r,n){p(1,"assertMissingNode")&&m(void 0===t,r||"Unexpected node.",(function(){return"Node "+k(t.kind)+" was unexpected'."}),n||e)},r.getFunctionName=v,r.formatSymbol=function(t){return"{ name: "+e.unescapeLeadingUnderscores(t.escapedName)+"; flags: "+w(t.flags)+"; declarations: "+e.map(t.declarations,(function(e){return k(e.kind)}))+" }"},r.formatEnum=b,r.formatSyntaxKind=k,r.formatNodeFlags=x,r.formatModifierFlags=E,r.formatTransformFlags=S,r.formatEmitFlags=D,r.formatSymbolFlags=w,r.formatTypeFlags=T,r.formatSignatureFlags=C,r.formatObjectFlags=A,r.formatFlowFlags=N;var P,I,F,O=!1;function R(e){return function(){if(j(),!P)throw new Error("Debugging helpers could not be loaded.");return P}().formatControlFlowGraph(e)}function M(t){"__debugFlowFlags"in t||Object.defineProperties(t,{__tsDebuggerDisplay:{value:function(){var e=2&this.flags?"FlowStart":4&this.flags?"FlowBranchLabel":8&this.flags?"FlowLoopLabel":16&this.flags?"FlowAssignment":32&this.flags?"FlowTrueCondition":64&this.flags?"FlowFalseCondition":128&this.flags?"FlowSwitchClause":256&this.flags?"FlowArrayMutation":512&this.flags?"FlowCall":1024&this.flags?"FlowReduceLabel":1&this.flags?"FlowUnreachable":"UnknownFlow",t=-2048&this.flags;return e+(t?" ("+N(t)+")":"")}},__debugFlowFlags:{get:function(){return b(this.flags,e.FlowFlags,!0)}},__debugToString:{value:function(){return R(this)}}})}function L(e){"__tsDebuggerDisplay"in e||Object.defineProperties(e,{__tsDebuggerDisplay:{value:function(e){return"NodeArray "+(e=String(e).replace(/(?:,[\s\w\d_]+:[^,]+)+\]$/,"]"))}}})}function j(){if(!O){var t,r;Object.defineProperties(e.objectAllocator.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value:function(){var t=33554432&this.flags?"TransientSymbol":"Symbol",r=-33554433&this.flags;return t+" '"+e.symbolName(this)+"'"+(r?" ("+w(r)+")":"")}},__debugFlags:{get:function(){return w(this.flags)}}}),Object.defineProperties(e.objectAllocator.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value:function(){var t=98304&this.flags?"NullableType":384&this.flags?"LiteralType "+JSON.stringify(this.value):2048&this.flags?"LiteralType "+(this.value.negative?"-":"")+this.value.base10Value+"n":8192&this.flags?"UniqueESSymbolType":32&this.flags?"EnumType":67359327&this.flags?"IntrinsicType "+this.intrinsicName:1048576&this.flags?"UnionType":2097152&this.flags?"IntersectionType":4194304&this.flags?"IndexType":8388608&this.flags?"IndexedAccessType":16777216&this.flags?"ConditionalType":33554432&this.flags?"SubstitutionType":262144&this.flags?"TypeParameter":524288&this.flags?3&this.objectFlags?"InterfaceType":4&this.objectFlags?"TypeReference":8&this.objectFlags?"TupleType":16&this.objectFlags?"AnonymousType":32&this.objectFlags?"MappedType":2048&this.objectFlags?"ReverseMappedType":256&this.objectFlags?"EvolvingArrayType":"ObjectType":"Type",r=524288&this.flags?-2368&this.objectFlags:0;return t+(this.symbol?" '"+e.symbolName(this.symbol)+"'":"")+(r?" ("+A(r)+")":"")}},__debugFlags:{get:function(){return T(this.flags)}},__debugObjectFlags:{get:function(){return 524288&this.flags?A(this.objectFlags):""}},__debugTypeToString:{value:function(){var e=(void 0===t&&"function"==typeof WeakMap&&(t=new WeakMap),t),r=null==e?void 0:e.get(this);return void 0===r&&(r=this.checker.typeToString(this),null==e||e.set(this,r)),r}}}),Object.defineProperties(e.objectAllocator.getSignatureConstructor().prototype,{__debugFlags:{get:function(){return C(this.flags)}},__debugSignatureToString:{value:function(){var e;return null===(e=this.checker)||void 0===e?void 0:e.signatureToString(this)}}});for(var n=0,i=[e.objectAllocator.getNodeConstructor(),e.objectAllocator.getIdentifierConstructor(),e.objectAllocator.getTokenConstructor(),e.objectAllocator.getSourceFileConstructor()];n<i.length;n++){var a=i[n];a.prototype.hasOwnProperty("__debugKind")||Object.defineProperties(a.prototype,{__tsDebuggerDisplay:{value:function(){return(e.isGeneratedIdentifier(this)?"GeneratedIdentifier":e.isIdentifier(this)?"Identifier '"+e.idText(this)+"'":e.isPrivateIdentifier(this)?"PrivateIdentifier '"+e.idText(this)+"'":e.isStringLiteral(this)?"StringLiteral "+JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"..."):e.isNumericLiteral(this)?"NumericLiteral "+this.text:e.isBigIntLiteral(this)?"BigIntLiteral "+this.text+"n":e.isTypeParameterDeclaration(this)?"TypeParameterDeclaration":e.isParameter(this)?"ParameterDeclaration":e.isConstructorDeclaration(this)?"ConstructorDeclaration":e.isGetAccessorDeclaration(this)?"GetAccessorDeclaration":e.isSetAccessorDeclaration(this)?"SetAccessorDeclaration":e.isCallSignatureDeclaration(this)?"CallSignatureDeclaration":e.isConstructSignatureDeclaration(this)?"ConstructSignatureDeclaration":e.isIndexSignatureDeclaration(this)?"IndexSignatureDeclaration":e.isTypePredicateNode(this)?"TypePredicateNode":e.isTypeReferenceNode(this)?"TypeReferenceNode":e.isFunctionTypeNode(this)?"FunctionTypeNode":e.isConstructorTypeNode(this)?"ConstructorTypeNode":e.isTypeQueryNode(this)?"TypeQueryNode":e.isTypeLiteralNode(this)?"TypeLiteralNode":e.isArrayTypeNode(this)?"ArrayTypeNode":e.isTupleTypeNode(this)?"TupleTypeNode":e.isOptionalTypeNode(this)?"OptionalTypeNode":e.isRestTypeNode(this)?"RestTypeNode":e.isUnionTypeNode(this)?"UnionTypeNode":e.isIntersectionTypeNode(this)?"IntersectionTypeNode":e.isConditionalTypeNode(this)?"ConditionalTypeNode":e.isInferTypeNode(this)?"InferTypeNode":e.isParenthesizedTypeNode(this)?"ParenthesizedTypeNode":e.isThisTypeNode(this)?"ThisTypeNode":e.isTypeOperatorNode(this)?"TypeOperatorNode":e.isIndexedAccessTypeNode(this)?"IndexedAccessTypeNode":e.isMappedTypeNode(this)?"MappedTypeNode":e.isLiteralTypeNode(this)?"LiteralTypeNode":e.isNamedTupleMember(this)?"NamedTupleMember":e.isImportTypeNode(this)?"ImportTypeNode":k(this.kind))+(this.flags?" ("+x(this.flags)+")":"")}},__debugKind:{get:function(){return k(this.kind)}},__debugNodeFlags:{get:function(){return x(this.flags)}},__debugModifierFlags:{get:function(){return E(e.getEffectiveModifierFlagsNoCache(this))}},__debugTransformFlags:{get:function(){return S(this.transformFlags)}},__debugIsParseTreeNode:{get:function(){return e.isParseTreeNode(this)}},__debugEmitFlags:{get:function(){return D(e.getEmitFlags(this))}},__debugGetText:{value:function(t){if(e.nodeIsSynthesized(this))return"";var n=(void 0===r&&"function"==typeof WeakMap&&(r=new WeakMap),r),i=null==n?void 0:n.get(this);if(void 0===i){var a=e.getParseTreeNode(this),o=a&&e.getSourceFileOfNode(a);i=o?e.getSourceTextOfNodeFromSourceFile(o,a,t):"",null==n||n.set(this,i)}return i}}})}try{if(e.sys&&e.sys.require){var o=e.getDirectoryPath(e.resolvePath(e.sys.getExecutingFilePath())),s=e.sys.require(o,"./compiler-debug");s.error||(s.module.init(e),P=s.module)}}catch(e){}O=!0}}function B(t,r,n,i,a){var o=r?"DeprecationError: ":"DeprecationWarning: ";return o+="'"+t+"' ",o+=i?"has been deprecated since v"+i:"is deprecated",o+=r?" and can no longer be used.":n?" and will no longer be usable after v"+n+".":".",o+=a?" "+e.formatStringFromArgs(a,[t],0):""}function z(t,r){var n,i;void 0===r&&(r={});var a="string"==typeof r.typeScriptVersion?new e.Version(r.typeScriptVersion):null!==(n=r.typeScriptVersion)&&void 0!==n?n:o(),s="string"==typeof r.errorAfter?new e.Version(r.errorAfter):r.errorAfter,c="string"==typeof r.warnAfter?new e.Version(r.warnAfter):r.warnAfter,u="string"==typeof r.since?new e.Version(r.since):null!==(i=r.since)&&void 0!==i?i:c,d=r.error||s&&a.compareTo(s)<=0,p=!c||a.compareTo(c)>=0;return d?function(e,t,r,n){var i=B(e,!0,t,r,n);return function(){throw new TypeError(i)}}(t,s,u,r.message):p?function(e,t,r,n){var i=!1;return function(){i||(l.warn(B(e,!1,t,r,n)),i=!0)}}(t,s,u,r.message):e.noop}r.printControlFlowGraph=function(e){return console.log(R(e))},r.formatControlFlowGraph=R,r.attachFlowNodeDebugInfo=function(e){O&&("function"==typeof Object.setPrototypeOf?(I||M(I=Object.create(Object.prototype)),Object.setPrototypeOf(e,I)):M(e))},r.attachNodeArrayDebugInfo=function(e){O&&("function"==typeof Object.setPrototypeOf?(F||L(F=Object.create(Array.prototype)),Object.setPrototypeOf(e,F)):L(e))},r.enableDebugInfo=j,r.deprecate=function(e,t){return function(e,t){return function(){return e(),t.apply(this,arguments)}}(z(v(e),t),e)}}(e.Debug||(e.Debug={}))}(d||(d={})),function(e){var t=/^(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,r=/^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)(?:\.(?:0|[1-9]\d*|[a-z-][a-z0-9-]*))*$/i,n=/^[a-z0-9-]+(?:\.[a-z0-9-]+)*$/i,i=/^(0|[1-9]\d*)$/,a=function(){function t(t,i,a,s,c){if(void 0===i&&(i=0),void 0===a&&(a=0),void 0===s&&(s=""),void 0===c&&(c=""),"string"==typeof t){var l=e.Debug.checkDefined(o(t),"Invalid version");t=l.major,i=l.minor,a=l.patch,s=l.prerelease,c=l.build}e.Debug.assert(t>=0,"Invalid argument: major"),e.Debug.assert(i>=0,"Invalid argument: minor"),e.Debug.assert(a>=0,"Invalid argument: patch"),e.Debug.assert(!s||r.test(s),"Invalid argument: prerelease"),e.Debug.assert(!c||n.test(c),"Invalid argument: build"),this.major=t,this.minor=i,this.patch=a,this.prerelease=s?s.split("."):e.emptyArray,this.build=c?c.split("."):e.emptyArray}return t.tryParse=function(e){var r=o(e);if(r)return new t(r.major,r.minor,r.patch,r.prerelease,r.build)},t.prototype.compareTo=function(t){return this===t?0:void 0===t?1:e.compareValues(this.major,t.major)||e.compareValues(this.minor,t.minor)||e.compareValues(this.patch,t.patch)||function(t,r){if(t===r)return 0;if(0===t.length)return 0===r.length?0:1;if(0===r.length)return-1;for(var n=Math.min(t.length,r.length),a=0;a<n;a++){var o=t[a],s=r[a];if(o!==s){var c=i.test(o),l=i.test(s);if(c||l){if(c!==l)return c?-1:1;if(u=e.compareValues(+o,+s))return u}else{var u;if(u=e.compareStringsCaseSensitive(o,s))return u}}}return e.compareValues(t.length,r.length)}(this.prerelease,t.prerelease)},t.prototype.increment=function(r){switch(r){case"major":return new t(this.major+1,0,0);case"minor":return new t(this.major,this.minor+1,0);case"patch":return new t(this.major,this.minor,this.patch+1);default:return e.Debug.assertNever(r)}},t.prototype.toString=function(){var t=this.major+"."+this.minor+"."+this.patch;return e.some(this.prerelease)&&(t+="-"+this.prerelease.join(".")),e.some(this.build)&&(t+="+"+this.build.join(".")),t},t.zero=new t(0,0,0),t}();function o(e){var i=t.exec(e);if(i){var a=i[1],o=i[2],s=void 0===o?"0":o,c=i[3],l=void 0===c?"0":c,u=i[4],d=void 0===u?"":u,p=i[5],f=void 0===p?"":p;if((!d||r.test(d))&&(!f||n.test(f)))return{major:parseInt(a,10),minor:parseInt(s,10),patch:parseInt(l,10),prerelease:d,build:f}}}e.Version=a;var s=function(){function t(t){this._alternatives=t?e.Debug.checkDefined(f(t),"Invalid range spec."):e.emptyArray}return t.tryParse=function(e){var r=f(e);if(r){var n=new t("");return n._alternatives=r,n}},t.prototype.test=function(e){return"string"==typeof e&&(e=new a(e)),function(e,t){if(0===t.length)return!0;for(var r=0,n=t;r<n.length;r++){if(v(e,n[r]))return!0}return!1}(e,this._alternatives)},t.prototype.toString=function(){return t=this._alternatives,e.map(t,k).join(" || ")||"*";var t},t}();e.VersionRange=s;var c=/\s*\|\|\s*/g,l=/\s+/g,u=/^([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,d=/^\s*([a-z0-9-+.*]+)\s+-\s+([a-z0-9-+.*]+)\s*$/i,p=/^\s*(~|\^|<|<=|>|>=|=)?\s*([a-z0-9-+.*]+)$/i;function f(e){for(var t=[],r=0,n=e.trim().split(c);r<n.length;r++){var i=n[r];if(i){var a=[],o=d.exec(i);if(o){if(!g(o[1],o[2],a))return}else for(var s=0,u=i.split(l);s<u.length;s++){var f=u[s],m=p.exec(f);if(!m||!_(m[1],m[2],a))return}t.push(a)}}return t}function m(e){var t=u.exec(e);if(t){var r=t[1],n=t[2],i=void 0===n?"*":n,o=t[3],s=void 0===o?"*":o,c=t[4],l=t[5];return{version:new a(h(r)?0:parseInt(r,10),h(r)||h(i)?0:parseInt(i,10),h(r)||h(i)||h(s)?0:parseInt(s,10),c,l),major:r,minor:i,patch:s}}}function g(e,t,r){var n=m(e);if(!n)return!1;var i=m(t);return!!i&&(h(n.major)||r.push(y(">=",n.version)),h(i.major)||r.push(h(i.minor)?y("<",i.version.increment("major")):h(i.patch)?y("<",i.version.increment("minor")):y("<=",i.version)),!0)}function _(e,t,r){var n=m(t);if(!n)return!1;var i=n.version,o=n.major,s=n.minor,c=n.patch;if(h(o))"<"!==e&&">"!==e||r.push(y("<",a.zero));else switch(e){case"~":r.push(y(">=",i)),r.push(y("<",i.increment(h(s)?"major":"minor")));break;case"^":r.push(y(">=",i)),r.push(y("<",i.increment(i.major>0||h(s)?"major":i.minor>0||h(c)?"minor":"patch")));break;case"<":case">=":r.push(y(e,i));break;case"<=":case">":r.push(h(s)?y("<="===e?"<":">=",i.increment("major")):h(c)?y("<="===e?"<":">=",i.increment("minor")):y(e,i));break;case"=":case void 0:h(s)||h(c)?(r.push(y(">=",i)),r.push(y("<",i.increment(h(s)?"major":"minor")))):r.push(y("=",i));break;default:return!1}return!0}function h(e){return"*"===e||"x"===e||"X"===e}function y(e,t){return{operator:e,operand:t}}function v(e,t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(!b(e,i.operator,i.operand))return!1}return!0}function b(t,r,n){var i=t.compareTo(n);switch(r){case"<":return i<0;case"<=":return i<=0;case">":return i>0;case">=":return i>=0;case"=":return 0===i;default:return e.Debug.assertNever(r)}}function k(t){return e.map(t,x).join(" ")}function x(e){return""+e.operator+e.operand}}(d||(d={})),function(e){function t(e,t){return"object"==typeof e&&"number"==typeof e.timeOrigin&&"function"==typeof e.mark&&"function"==typeof e.measure&&"function"==typeof e.now&&"function"==typeof t}var n=function(){if("object"==typeof performance&&"function"==typeof PerformanceObserver&&t(performance,PerformanceObserver))return{shouldWriteNativeEvents:!0,performance,PerformanceObserver}}()||function(){if("undefined"!=typeof process&&process.nextTick&&!process.browser)try{var n,i=r(4074),a=i.performance,o=i.PerformanceObserver;if(t(a,o)){n=a;var s=new e.Version(process.versions.node);return new e.VersionRange("<12.16.3 || 13 <13.13").test(s)&&(n={get timeOrigin(){return a.timeOrigin},now:function(){return a.now()},mark:function(e){return a.mark(e)},measure:function(e,t,r){void 0===t&&(t="nodeStart"),void 0===r&&(r="__performance.measure-fix__",a.mark(r)),a.measure(e,t,r),"__performance.measure-fix__"===r&&a.clearMarks("__performance.measure-fix__")}}),{shouldWriteNativeEvents:!1,performance:n,PerformanceObserver:o}}}catch(e){}}(),i=null==n?void 0:n.performance;e.tryGetNativePerformanceHooks=function(){return n},e.timestamp=i?function(){return i.now()}:Date.now?Date.now:function(){return+new Date}}(d||(d={})),function(e){!function(t){var r,n;function i(t,r,n){var i=0;return{enter:function(){1==++i&&u(r)},exit:function(){0==--i?(u(n),d(t,r,n)):i<0&&e.Debug.fail("enter/exit count does not match.")}}}t.createTimerIf=function(e,r,n,a){return e?i(r,n,a):t.nullTimer},t.createTimer=i,t.nullTimer={enter:e.noop,exit:e.noop};var a=!1,o=e.timestamp(),s=new e.Map,c=new e.Map,l=new e.Map;function u(t){var r;if(a){var i=null!==(r=c.get(t))&&void 0!==r?r:0;c.set(t,i+1),s.set(t,e.timestamp()),null==n||n.mark(t)}}function d(t,r,i){var c,u;if(a){var d=null!==(c=void 0!==i?s.get(i):void 0)&&void 0!==c?c:e.timestamp(),p=null!==(u=void 0!==r?s.get(r):void 0)&&void 0!==u?u:o,f=l.get(t)||0;l.set(t,f+(d-p)),null==n||n.measure(t,r,i)}}t.mark=u,t.measure=d,t.getCount=function(e){return c.get(e)||0},t.getDuration=function(e){return l.get(e)||0},t.forEachMeasure=function(e){l.forEach((function(t,r){return e(r,t)}))},t.isEnabled=function(){return a},t.enable=function(t){var i;return void 0===t&&(t=e.sys),a||(a=!0,r||(r=e.tryGetNativePerformanceHooks()),r&&(o=r.performance.timeOrigin,(r.shouldWriteNativeEvents||(null===(i=null==t?void 0:t.cpuProfilingEnabled)||void 0===i?void 0:i.call(t))||(null==t?void 0:t.debugMode))&&(n=r.performance))),!0},t.disable=function(){a&&(s.clear(),c.clear(),l.clear(),n=void 0,a=!1)}}(e.performance||(e.performance={}))}(d||(d={})),function(e){var t,n,i={logEvent:e.noop,logErrEvent:e.noop,logPerfEvent:e.noop,logInfoEvent:e.noop,logStartCommand:e.noop,logStopCommand:e.noop,logStartUpdateProgram:e.noop,logStopUpdateProgram:e.noop,logStartUpdateGraph:e.noop,logStopUpdateGraph:e.noop,logStartResolveModule:e.noop,logStopResolveModule:e.noop,logStartParseSourceFile:e.noop,logStopParseSourceFile:e.noop,logStartReadFile:e.noop,logStopReadFile:e.noop,logStartBindFile:e.noop,logStopBindFile:e.noop,logStartScheduledOperation:e.noop,logStopScheduledOperation:e.noop};try{var a=null!==(t=process.env.TS_ETW_MODULE_PATH)&&void 0!==t?t:"./node_modules/@microsoft/typescript-etw";n=r(13411)(a)}catch(e){n=void 0}e.perfLogger=n&&n.logEvent?n:i}(d||(d={})),d||(d={}),function(e){!function(t){var n;!function(e){e[e.Project=0]="Project",e[e.Build=1]="Build",e[e.Server=2]="Server"}(t.Mode||(t.Mode={}));var i,o,s=0,c=0,l=[];t.startTracing=function(u,d,p){if(e.Debug.assert(!e.tracing,"Tracing already started"),void 0===n)try{n=r(57147)}catch(e){throw new Error("tracing requires having fs\n(original error: "+(e.message||e)+")")}i=u,void 0===o&&(o=e.combinePaths(d,"legend.json")),n.existsSync(d)||n.mkdirSync(d,{recursive:!0});var f=1===i?"."+process.pid+"-"+ ++s:2===i?"."+process.pid:"",m=e.combinePaths(d,"trace"+f+".json"),g=e.combinePaths(d,"types"+f+".json");l.push({configFilePath:p,tracePath:m,typesPath:g}),c=n.openSync(m,"w"),e.tracing=t;var _={cat:"__metadata",ph:"M",ts:1e3*e.timestamp(),pid:1,tid:1};n.writeSync(c,"[\n"+[a({name:"process_name",args:{name:"tsc"}},_),a({name:"thread_name",args:{name:"Main"}},_),a(a({name:"TracingStartedInBrowser"},_),{cat:"disabled-by-default-devtools.timeline"})].map((function(e){return JSON.stringify(e)})).join(",\n"))},t.stopTracing=function(t){e.Debug.assert(e.tracing,"Tracing is not in progress"),e.Debug.assert(!!t==(2!==i)),n.writeSync(c,"\n]\n"),n.closeSync(c),e.tracing=void 0,t?function(t){var r,i,o,s,c,u,d,p,f,g,_,h,y,v,b,k;e.performance.mark("beginDumpTypes");var x=l[l.length-1].typesPath,E=n.openSync(x,"w"),S=new e.Map;n.writeSync(E,"[");for(var D=t.length,w=0;w<D;w++){var T=t[w],C=T.objectFlags,A=null!==(r=T.aliasSymbol)&&void 0!==r?r:T.symbol,N=null===(i=null==A?void 0:A.declarations)||void 0===i?void 0:i[0],P=N&&e.getSourceFileOfNode(N),I=void 0;if(16&C|2944&T.flags)try{I=null===(o=T.checker)||void 0===o?void 0:o.typeToString(T)}catch(e){I=void 0}var F={};if(8388608&T.flags){var O=T;F={indexedAccessObjectType:null===(s=O.objectType)||void 0===s?void 0:s.id,indexedAccessIndexType:null===(c=O.indexType)||void 0===c?void 0:c.id}}var R={};if(4&C){var M=T;R={instantiatedType:null===(u=M.target)||void 0===u?void 0:u.id,typeArguments:null===(d=M.resolvedTypeArguments)||void 0===d?void 0:d.map((function(e){return e.id}))}}var L={};if(16777216&T.flags){var j=T;L={conditionalCheckType:null===(p=j.checkType)||void 0===p?void 0:p.id,conditionalExtendsType:null===(f=j.extendsType)||void 0===f?void 0:f.id,conditionalTrueType:null!==(_=null===(g=j.resolvedTrueType)||void 0===g?void 0:g.id)&&void 0!==_?_:-1,conditionalFalseType:null!==(y=null===(h=j.resolvedFalseType)||void 0===h?void 0:h.id)&&void 0!==y?y:-1}}var B=void 0,z=T.checker.getRecursionIdentity(T);z&&((B=S.get(z))||(B=S.size,S.set(z,B)));var U=a(a(a(a({id:T.id,intrinsicName:T.intrinsicName,symbolName:(null==A?void 0:A.escapedName)&&e.unescapeLeadingUnderscores(A.escapedName),recursionId:B,unionTypes:1048576&T.flags?null===(v=T.types)||void 0===v?void 0:v.map((function(e){return e.id})):void 0,intersectionTypes:2097152&T.flags?T.types.map((function(e){return e.id})):void 0,aliasTypeArguments:null===(b=T.aliasTypeArguments)||void 0===b?void 0:b.map((function(e){return e.id})),keyofType:4194304&T.flags?null===(k=T.type)||void 0===k?void 0:k.id:void 0},F),R),L),{firstDeclaration:N&&{path:P.path,start:m(e.getLineAndCharacterOfPosition(P,N.pos)),end:m(e.getLineAndCharacterOfPosition(e.getSourceFileOfNode(N),N.end))},flags:e.Debug.formatTypeFlags(T.flags).split("|"),display:I});n.writeSync(E,JSON.stringify(U)),w<D-1&&n.writeSync(E,",\n")}n.writeSync(E,"]\n"),n.closeSync(E),e.performance.mark("endDumpTypes"),e.performance.measure("Dump types","beginDumpTypes","endDumpTypes")}(t):l[l.length-1].typesPath=void 0},function(e){e.Parse="parse",e.Program="program",e.Bind="bind",e.Check="check",e.CheckTypes="checkTypes",e.Emit="emit",e.Session="session"}(t.Phase||(t.Phase={})),t.instant=function(e,t,r){f("I",e,t,r,'"s":"g"')};var u=[];t.push=function(t,r,n,i){void 0===i&&(i=!1),i&&f("B",t,r,n),u.push({phase:t,name:r,args:n,time:1e3*e.timestamp(),separateBeginAndEnd:i})},t.pop=function(){e.Debug.assert(u.length>0),p(u.length-1,1e3*e.timestamp()),u.length--},t.popAll=function(){for(var t=1e3*e.timestamp(),r=u.length-1;r>=0;r--)p(r,t);u.length=0};var d=1e4;function p(e,t){var r=u[e],n=r.phase,i=r.name,a=r.args,o=r.time;r.separateBeginAndEnd?f("E",n,i,a,void 0,t):d-o%d<=t-o&&f("X",n,i,a,'"dur":'+(t-o),o)}function f(t,r,a,o,s,l){void 0===l&&(l=1e3*e.timestamp()),2===i&&"checkTypes"===r||(e.performance.mark("beginTracing"),n.writeSync(c,',\n{"pid":1,"tid":1,"ph":"'+t+'","cat":"'+r+'","ts":'+l+',"name":"'+a+'"'),s&&n.writeSync(c,","+s),o&&n.writeSync(c,',"args":'+JSON.stringify(o)),n.writeSync(c,"}"),e.performance.mark("endTracing"),e.performance.measure("Tracing","beginTracing","endTracing"))}function m(e){return{line:e.line+1,character:e.character+1}}t.dumpLegend=function(){o&&n.writeFileSync(o,JSON.stringify(l))}}(e.tracingEnabled||(e.tracingEnabled={}))}(d||(d={})),function(e){e.startTracing=e.tracingEnabled.startTracing}(d||(d={})),function(e){!function(e){e[e.Unknown=0]="Unknown",e[e.EndOfFileToken=1]="EndOfFileToken",e[e.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",e[e.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",e[e.NewLineTrivia=4]="NewLineTrivia",e[e.WhitespaceTrivia=5]="WhitespaceTrivia",e[e.ShebangTrivia=6]="ShebangTrivia",e[e.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",e[e.NumericLiteral=8]="NumericLiteral",e[e.BigIntLiteral=9]="BigIntLiteral",e[e.StringLiteral=10]="StringLiteral",e[e.JsxText=11]="JsxText",e[e.JsxTextAllWhiteSpaces=12]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=13]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=14]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=15]="TemplateHead",e[e.TemplateMiddle=16]="TemplateMiddle",e[e.TemplateTail=17]="TemplateTail",e[e.OpenBraceToken=18]="OpenBraceToken",e[e.CloseBraceToken=19]="CloseBraceToken",e[e.OpenParenToken=20]="OpenParenToken",e[e.CloseParenToken=21]="CloseParenToken",e[e.OpenBracketToken=22]="OpenBracketToken",e[e.CloseBracketToken=23]="CloseBracketToken",e[e.DotToken=24]="DotToken",e[e.DotDotDotToken=25]="DotDotDotToken",e[e.SemicolonToken=26]="SemicolonToken",e[e.CommaToken=27]="CommaToken",e[e.QuestionDotToken=28]="QuestionDotToken",e[e.LessThanToken=29]="LessThanToken",e[e.LessThanSlashToken=30]="LessThanSlashToken",e[e.GreaterThanToken=31]="GreaterThanToken",e[e.LessThanEqualsToken=32]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=33]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=34]="EqualsEqualsToken",e[e.ExclamationEqualsToken=35]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=36]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=37]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=38]="EqualsGreaterThanToken",e[e.PlusToken=39]="PlusToken",e[e.MinusToken=40]="MinusToken",e[e.AsteriskToken=41]="AsteriskToken",e[e.AsteriskAsteriskToken=42]="AsteriskAsteriskToken",e[e.SlashToken=43]="SlashToken",e[e.PercentToken=44]="PercentToken",e[e.PlusPlusToken=45]="PlusPlusToken",e[e.MinusMinusToken=46]="MinusMinusToken",e[e.LessThanLessThanToken=47]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=48]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=49]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=50]="AmpersandToken",e[e.BarToken=51]="BarToken",e[e.CaretToken=52]="CaretToken",e[e.ExclamationToken=53]="ExclamationToken",e[e.TildeToken=54]="TildeToken",e[e.AmpersandAmpersandToken=55]="AmpersandAmpersandToken",e[e.BarBarToken=56]="BarBarToken",e[e.QuestionToken=57]="QuestionToken",e[e.ColonToken=58]="ColonToken",e[e.AtToken=59]="AtToken",e[e.QuestionQuestionToken=60]="QuestionQuestionToken",e[e.BacktickToken=61]="BacktickToken",e[e.EqualsToken=62]="EqualsToken",e[e.PlusEqualsToken=63]="PlusEqualsToken",e[e.MinusEqualsToken=64]="MinusEqualsToken",e[e.AsteriskEqualsToken=65]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=66]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=67]="SlashEqualsToken",e[e.PercentEqualsToken=68]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=69]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=70]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=71]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=72]="AmpersandEqualsToken",e[e.BarEqualsToken=73]="BarEqualsToken",e[e.BarBarEqualsToken=74]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=75]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=76]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=77]="CaretEqualsToken",e[e.Identifier=78]="Identifier",e[e.PrivateIdentifier=79]="PrivateIdentifier",e[e.BreakKeyword=80]="BreakKeyword",e[e.CaseKeyword=81]="CaseKeyword",e[e.CatchKeyword=82]="CatchKeyword",e[e.ClassKeyword=83]="ClassKeyword",e[e.StructKeyword=84]="StructKeyword",e[e.ConstKeyword=85]="ConstKeyword",e[e.ContinueKeyword=86]="ContinueKeyword",e[e.DebuggerKeyword=87]="DebuggerKeyword",e[e.DefaultKeyword=88]="DefaultKeyword",e[e.DeleteKeyword=89]="DeleteKeyword",e[e.DoKeyword=90]="DoKeyword",e[e.ElseKeyword=91]="ElseKeyword",e[e.EnumKeyword=92]="EnumKeyword",e[e.ExportKeyword=93]="ExportKeyword",e[e.ExtendsKeyword=94]="ExtendsKeyword",e[e.FalseKeyword=95]="FalseKeyword",e[e.FinallyKeyword=96]="FinallyKeyword",e[e.ForKeyword=97]="ForKeyword",e[e.FunctionKeyword=98]="FunctionKeyword",e[e.IfKeyword=99]="IfKeyword",e[e.ImportKeyword=100]="ImportKeyword",e[e.InKeyword=101]="InKeyword",e[e.InstanceOfKeyword=102]="InstanceOfKeyword",e[e.NewKeyword=103]="NewKeyword",e[e.NullKeyword=104]="NullKeyword",e[e.ReturnKeyword=105]="ReturnKeyword",e[e.SuperKeyword=106]="SuperKeyword",e[e.SwitchKeyword=107]="SwitchKeyword",e[e.ThisKeyword=108]="ThisKeyword",e[e.ThrowKeyword=109]="ThrowKeyword",e[e.TrueKeyword=110]="TrueKeyword",e[e.TryKeyword=111]="TryKeyword",e[e.TypeOfKeyword=112]="TypeOfKeyword",e[e.VarKeyword=113]="VarKeyword",e[e.VoidKeyword=114]="VoidKeyword",e[e.WhileKeyword=115]="WhileKeyword",e[e.WithKeyword=116]="WithKeyword",e[e.ImplementsKeyword=117]="ImplementsKeyword",e[e.InterfaceKeyword=118]="InterfaceKeyword",e[e.LetKeyword=119]="LetKeyword",e[e.PackageKeyword=120]="PackageKeyword",e[e.PrivateKeyword=121]="PrivateKeyword",e[e.ProtectedKeyword=122]="ProtectedKeyword",e[e.PublicKeyword=123]="PublicKeyword",e[e.StaticKeyword=124]="StaticKeyword",e[e.YieldKeyword=125]="YieldKeyword",e[e.AbstractKeyword=126]="AbstractKeyword",e[e.AsKeyword=127]="AsKeyword",e[e.AssertsKeyword=128]="AssertsKeyword",e[e.AnyKeyword=129]="AnyKeyword",e[e.AsyncKeyword=130]="AsyncKeyword",e[e.AwaitKeyword=131]="AwaitKeyword",e[e.BooleanKeyword=132]="BooleanKeyword",e[e.ConstructorKeyword=133]="ConstructorKeyword",e[e.DeclareKeyword=134]="DeclareKeyword",e[e.GetKeyword=135]="GetKeyword",e[e.InferKeyword=136]="InferKeyword",e[e.IntrinsicKeyword=137]="IntrinsicKeyword",e[e.IsKeyword=138]="IsKeyword",e[e.KeyOfKeyword=139]="KeyOfKeyword",e[e.ModuleKeyword=140]="ModuleKeyword",e[e.NamespaceKeyword=141]="NamespaceKeyword",e[e.NeverKeyword=142]="NeverKeyword",e[e.ReadonlyKeyword=143]="ReadonlyKeyword",e[e.RequireKeyword=144]="RequireKeyword",e[e.NumberKeyword=145]="NumberKeyword",e[e.ObjectKeyword=146]="ObjectKeyword",e[e.SetKeyword=147]="SetKeyword",e[e.StringKeyword=148]="StringKeyword",e[e.SymbolKeyword=149]="SymbolKeyword",e[e.TypeKeyword=150]="TypeKeyword",e[e.UndefinedKeyword=151]="UndefinedKeyword",e[e.UniqueKeyword=152]="UniqueKeyword",e[e.UnknownKeyword=153]="UnknownKeyword",e[e.FromKeyword=154]="FromKeyword",e[e.GlobalKeyword=155]="GlobalKeyword",e[e.BigIntKeyword=156]="BigIntKeyword",e[e.OfKeyword=157]="OfKeyword",e[e.QualifiedName=158]="QualifiedName",e[e.ComputedPropertyName=159]="ComputedPropertyName",e[e.TypeParameter=160]="TypeParameter",e[e.Parameter=161]="Parameter",e[e.Decorator=162]="Decorator",e[e.PropertySignature=163]="PropertySignature",e[e.PropertyDeclaration=164]="PropertyDeclaration",e[e.MethodSignature=165]="MethodSignature",e[e.MethodDeclaration=166]="MethodDeclaration",e[e.Constructor=167]="Constructor",e[e.GetAccessor=168]="GetAccessor",e[e.SetAccessor=169]="SetAccessor",e[e.CallSignature=170]="CallSignature",e[e.ConstructSignature=171]="ConstructSignature",e[e.IndexSignature=172]="IndexSignature",e[e.TypePredicate=173]="TypePredicate",e[e.TypeReference=174]="TypeReference",e[e.FunctionType=175]="FunctionType",e[e.ConstructorType=176]="ConstructorType",e[e.TypeQuery=177]="TypeQuery",e[e.TypeLiteral=178]="TypeLiteral",e[e.ArrayType=179]="ArrayType",e[e.TupleType=180]="TupleType",e[e.OptionalType=181]="OptionalType",e[e.RestType=182]="RestType",e[e.UnionType=183]="UnionType",e[e.IntersectionType=184]="IntersectionType",e[e.ConditionalType=185]="ConditionalType",e[e.InferType=186]="InferType",e[e.ParenthesizedType=187]="ParenthesizedType",e[e.ThisType=188]="ThisType",e[e.TypeOperator=189]="TypeOperator",e[e.IndexedAccessType=190]="IndexedAccessType",e[e.MappedType=191]="MappedType",e[e.LiteralType=192]="LiteralType",e[e.NamedTupleMember=193]="NamedTupleMember",e[e.TemplateLiteralType=194]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=195]="TemplateLiteralTypeSpan",e[e.ImportType=196]="ImportType",e[e.ObjectBindingPattern=197]="ObjectBindingPattern",e[e.ArrayBindingPattern=198]="ArrayBindingPattern",e[e.BindingElement=199]="BindingElement",e[e.ArrayLiteralExpression=200]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=201]="ObjectLiteralExpression",e[e.PropertyAccessExpression=202]="PropertyAccessExpression",e[e.ElementAccessExpression=203]="ElementAccessExpression",e[e.CallExpression=204]="CallExpression",e[e.NewExpression=205]="NewExpression",e[e.TaggedTemplateExpression=206]="TaggedTemplateExpression",e[e.TypeAssertionExpression=207]="TypeAssertionExpression",e[e.ParenthesizedExpression=208]="ParenthesizedExpression",e[e.FunctionExpression=209]="FunctionExpression",e[e.ArrowFunction=210]="ArrowFunction",e[e.EtsComponentExpression=211]="EtsComponentExpression",e[e.DeleteExpression=212]="DeleteExpression",e[e.TypeOfExpression=213]="TypeOfExpression",e[e.VoidExpression=214]="VoidExpression",e[e.AwaitExpression=215]="AwaitExpression",e[e.PrefixUnaryExpression=216]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=217]="PostfixUnaryExpression",e[e.BinaryExpression=218]="BinaryExpression",e[e.ConditionalExpression=219]="ConditionalExpression",e[e.TemplateExpression=220]="TemplateExpression",e[e.YieldExpression=221]="YieldExpression",e[e.SpreadElement=222]="SpreadElement",e[e.ClassExpression=223]="ClassExpression",e[e.OmittedExpression=224]="OmittedExpression",e[e.ExpressionWithTypeArguments=225]="ExpressionWithTypeArguments",e[e.AsExpression=226]="AsExpression",e[e.NonNullExpression=227]="NonNullExpression",e[e.MetaProperty=228]="MetaProperty",e[e.SyntheticExpression=229]="SyntheticExpression",e[e.TemplateSpan=230]="TemplateSpan",e[e.SemicolonClassElement=231]="SemicolonClassElement",e[e.Block=232]="Block",e[e.EmptyStatement=233]="EmptyStatement",e[e.VariableStatement=234]="VariableStatement",e[e.ExpressionStatement=235]="ExpressionStatement",e[e.IfStatement=236]="IfStatement",e[e.DoStatement=237]="DoStatement",e[e.WhileStatement=238]="WhileStatement",e[e.ForStatement=239]="ForStatement",e[e.ForInStatement=240]="ForInStatement",e[e.ForOfStatement=241]="ForOfStatement",e[e.ContinueStatement=242]="ContinueStatement",e[e.BreakStatement=243]="BreakStatement",e[e.ReturnStatement=244]="ReturnStatement",e[e.WithStatement=245]="WithStatement",e[e.SwitchStatement=246]="SwitchStatement",e[e.LabeledStatement=247]="LabeledStatement",e[e.ThrowStatement=248]="ThrowStatement",e[e.TryStatement=249]="TryStatement",e[e.DebuggerStatement=250]="DebuggerStatement",e[e.VariableDeclaration=251]="VariableDeclaration",e[e.VariableDeclarationList=252]="VariableDeclarationList",e[e.FunctionDeclaration=253]="FunctionDeclaration",e[e.ClassDeclaration=254]="ClassDeclaration",e[e.StructDeclaration=255]="StructDeclaration",e[e.InterfaceDeclaration=256]="InterfaceDeclaration",e[e.TypeAliasDeclaration=257]="TypeAliasDeclaration",e[e.EnumDeclaration=258]="EnumDeclaration",e[e.ModuleDeclaration=259]="ModuleDeclaration",e[e.ModuleBlock=260]="ModuleBlock",e[e.CaseBlock=261]="CaseBlock",e[e.NamespaceExportDeclaration=262]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=263]="ImportEqualsDeclaration",e[e.ImportDeclaration=264]="ImportDeclaration",e[e.ImportClause=265]="ImportClause",e[e.NamespaceImport=266]="NamespaceImport",e[e.NamedImports=267]="NamedImports",e[e.ImportSpecifier=268]="ImportSpecifier",e[e.ExportAssignment=269]="ExportAssignment",e[e.ExportDeclaration=270]="ExportDeclaration",e[e.NamedExports=271]="NamedExports",e[e.NamespaceExport=272]="NamespaceExport",e[e.ExportSpecifier=273]="ExportSpecifier",e[e.MissingDeclaration=274]="MissingDeclaration",e[e.ExternalModuleReference=275]="ExternalModuleReference",e[e.JsxElement=276]="JsxElement",e[e.JsxSelfClosingElement=277]="JsxSelfClosingElement",e[e.JsxOpeningElement=278]="JsxOpeningElement",e[e.JsxClosingElement=279]="JsxClosingElement",e[e.JsxFragment=280]="JsxFragment",e[e.JsxOpeningFragment=281]="JsxOpeningFragment",e[e.JsxClosingFragment=282]="JsxClosingFragment",e[e.JsxAttribute=283]="JsxAttribute",e[e.JsxAttributes=284]="JsxAttributes",e[e.JsxSpreadAttribute=285]="JsxSpreadAttribute",e[e.JsxExpression=286]="JsxExpression",e[e.CaseClause=287]="CaseClause",e[e.DefaultClause=288]="DefaultClause",e[e.HeritageClause=289]="HeritageClause",e[e.CatchClause=290]="CatchClause",e[e.PropertyAssignment=291]="PropertyAssignment",e[e.ShorthandPropertyAssignment=292]="ShorthandPropertyAssignment",e[e.SpreadAssignment=293]="SpreadAssignment",e[e.EnumMember=294]="EnumMember",e[e.UnparsedPrologue=295]="UnparsedPrologue",e[e.UnparsedPrepend=296]="UnparsedPrepend",e[e.UnparsedText=297]="UnparsedText",e[e.UnparsedInternalText=298]="UnparsedInternalText",e[e.UnparsedSyntheticReference=299]="UnparsedSyntheticReference",e[e.SourceFile=300]="SourceFile",e[e.Bundle=301]="Bundle",e[e.UnparsedSource=302]="UnparsedSource",e[e.InputFiles=303]="InputFiles",e[e.JSDocTypeExpression=304]="JSDocTypeExpression",e[e.JSDocNameReference=305]="JSDocNameReference",e[e.JSDocAllType=306]="JSDocAllType",e[e.JSDocUnknownType=307]="JSDocUnknownType",e[e.JSDocNullableType=308]="JSDocNullableType",e[e.JSDocNonNullableType=309]="JSDocNonNullableType",e[e.JSDocOptionalType=310]="JSDocOptionalType",e[e.JSDocFunctionType=311]="JSDocFunctionType",e[e.JSDocVariadicType=312]="JSDocVariadicType",e[e.JSDocNamepathType=313]="JSDocNamepathType",e[e.JSDocComment=314]="JSDocComment",e[e.JSDocTypeLiteral=315]="JSDocTypeLiteral",e[e.JSDocSignature=316]="JSDocSignature",e[e.JSDocTag=317]="JSDocTag",e[e.JSDocAugmentsTag=318]="JSDocAugmentsTag",e[e.JSDocImplementsTag=319]="JSDocImplementsTag",e[e.JSDocAuthorTag=320]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=321]="JSDocDeprecatedTag",e[e.JSDocClassTag=322]="JSDocClassTag",e[e.JSDocPublicTag=323]="JSDocPublicTag",e[e.JSDocPrivateTag=324]="JSDocPrivateTag",e[e.JSDocProtectedTag=325]="JSDocProtectedTag",e[e.JSDocReadonlyTag=326]="JSDocReadonlyTag",e[e.JSDocCallbackTag=327]="JSDocCallbackTag",e[e.JSDocEnumTag=328]="JSDocEnumTag",e[e.JSDocParameterTag=329]="JSDocParameterTag",e[e.JSDocReturnTag=330]="JSDocReturnTag",e[e.JSDocThisTag=331]="JSDocThisTag",e[e.JSDocTypeTag=332]="JSDocTypeTag",e[e.JSDocTemplateTag=333]="JSDocTemplateTag",e[e.JSDocTypedefTag=334]="JSDocTypedefTag",e[e.JSDocSeeTag=335]="JSDocSeeTag",e[e.JSDocPropertyTag=336]="JSDocPropertyTag",e[e.SyntaxList=337]="SyntaxList",e[e.NotEmittedStatement=338]="NotEmittedStatement",e[e.PartiallyEmittedExpression=339]="PartiallyEmittedExpression",e[e.CommaListExpression=340]="CommaListExpression",e[e.MergeDeclarationMarker=341]="MergeDeclarationMarker",e[e.EndOfDeclarationMarker=342]="EndOfDeclarationMarker",e[e.SyntheticReferenceExpression=343]="SyntheticReferenceExpression",e[e.Count=344]="Count",e[e.FirstAssignment=62]="FirstAssignment",e[e.LastAssignment=77]="LastAssignment",e[e.FirstCompoundAssignment=63]="FirstCompoundAssignment",e[e.LastCompoundAssignment=77]="LastCompoundAssignment",e[e.FirstReservedWord=80]="FirstReservedWord",e[e.LastReservedWord=116]="LastReservedWord",e[e.FirstKeyword=80]="FirstKeyword",e[e.LastKeyword=157]="LastKeyword",e[e.FirstFutureReservedWord=117]="FirstFutureReservedWord",e[e.LastFutureReservedWord=125]="LastFutureReservedWord",e[e.FirstTypeNode=173]="FirstTypeNode",e[e.LastTypeNode=196]="LastTypeNode",e[e.FirstPunctuation=18]="FirstPunctuation",e[e.LastPunctuation=77]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=157]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=8]="FirstLiteralToken",e[e.LastLiteralToken=14]="LastLiteralToken",e[e.FirstTemplateToken=14]="FirstTemplateToken",e[e.LastTemplateToken=17]="LastTemplateToken",e[e.FirstBinaryOperator=29]="FirstBinaryOperator",e[e.LastBinaryOperator=77]="LastBinaryOperator",e[e.FirstStatement=234]="FirstStatement",e[e.LastStatement=250]="LastStatement",e[e.FirstNode=158]="FirstNode",e[e.FirstJSDocNode=304]="FirstJSDocNode",e[e.LastJSDocNode=336]="LastJSDocNode",e[e.FirstJSDocTagNode=317]="FirstJSDocTagNode",e[e.LastJSDocTagNode=336]="LastJSDocTagNode",e[e.FirstContextualKeyword=126]="FirstContextualKeyword",e[e.LastContextualKeyword=157]="LastContextualKeyword"}(e.SyntaxKind||(e.SyntaxKind={})),function(e){e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.NestedNamespace=4]="NestedNamespace",e[e.Synthesized=8]="Synthesized",e[e.Namespace=16]="Namespace",e[e.OptionalChain=32]="OptionalChain",e[e.ExportContext=64]="ExportContext",e[e.ContainsThis=128]="ContainsThis",e[e.HasImplicitReturn=256]="HasImplicitReturn",e[e.HasExplicitReturn=512]="HasExplicitReturn",e[e.GlobalAugmentation=1024]="GlobalAugmentation",e[e.HasAsyncFunctions=2048]="HasAsyncFunctions",e[e.DisallowInContext=4096]="DisallowInContext",e[e.YieldContext=8192]="YieldContext",e[e.DecoratorContext=16384]="DecoratorContext",e[e.AwaitContext=32768]="AwaitContext",e[e.ThisNodeHasError=65536]="ThisNodeHasError",e[e.JavaScriptFile=131072]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=262144]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=524288]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=1048576]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=2097152]="PossiblyContainsImportMeta",e[e.JSDoc=4194304]="JSDoc",e[e.Ambient=8388608]="Ambient",e[e.InWithStatement=16777216]="InWithStatement",e[e.JsonFile=33554432]="JsonFile",e[e.TypeCached=67108864]="TypeCached",e[e.Deprecated=134217728]="Deprecated",e[e.EtsContext=1073741824]="EtsContext",e[e.BlockScoped=3]="BlockScoped",e[e.ReachabilityCheckFlags=768]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=2816]="ReachabilityAndEmitFlags",e[e.ContextFlags=1099100160]="ContextFlags",e[e.TypeExcludesFlags=40960]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=3145728]="PermanentlySetIncrementalFlags"}(e.NodeFlags||(e.NodeFlags={})),function(e){e[e.None=0]="None",e[e.StructContext=2]="StructContext",e[e.EtsExtendComponentsContext=4]="EtsExtendComponentsContext",e[e.EtsStylesComponentsContext=8]="EtsStylesComponentsContext",e[e.EtsBuildContext=16]="EtsBuildContext",e[e.EtsBuilderContext=32]="EtsBuilderContext",e[e.EtsStateStylesContext=64]="EtsStateStylesContext",e[e.EtsComponentsContext=128]="EtsComponentsContext",e[e.EtsNewExpressionContext=256]="EtsNewExpressionContext"}(e.EtsFlags||(e.EtsFlags={})),function(e){e[e.None=0]="None",e[e.Export=1]="Export",e[e.Ambient=2]="Ambient",e[e.Public=4]="Public",e[e.Private=8]="Private",e[e.Protected=16]="Protected",e[e.Static=32]="Static",e[e.Readonly=64]="Readonly",e[e.Abstract=128]="Abstract",e[e.Async=256]="Async",e[e.Default=512]="Default",e[e.Const=2048]="Const",e[e.HasComputedJSDocModifiers=4096]="HasComputedJSDocModifiers",e[e.Deprecated=8192]="Deprecated",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=28]="AccessibilityModifier",e[e.ParameterPropertyModifier=92]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=24]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=2270]="TypeScriptModifier",e[e.ExportDefault=513]="ExportDefault",e[e.All=11263]="All"}(e.ModifierFlags||(e.ModifierFlags={})),function(e){e[e.None=0]="None",e[e.IntrinsicNamedElement=1]="IntrinsicNamedElement",e[e.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",e[e.IntrinsicElement=3]="IntrinsicElement"}(e.JsxFlags||(e.JsxFlags={})),function(e){e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.Reported=4]="Reported",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask"}(e.RelationComparisonResult||(e.RelationComparisonResult={})),function(e){e[e.None=0]="None",e[e.Auto=1]="Auto",e[e.Loop=2]="Loop",e[e.Unique=3]="Unique",e[e.Node=4]="Node",e[e.KindMask=7]="KindMask",e[e.ReservedInNestedScopes=8]="ReservedInNestedScopes",e[e.Optimistic=16]="Optimistic",e[e.FileLevel=32]="FileLevel",e[e.AllowNameSubstitution=64]="AllowNameSubstitution"}(e.GeneratedIdentifierFlags||(e.GeneratedIdentifierFlags={})),function(e){e[e.None=0]="None",e[e.PrecedingLineBreak=1]="PrecedingLineBreak",e[e.PrecedingJSDocComment=2]="PrecedingJSDocComment",e[e.Unterminated=4]="Unterminated",e[e.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",e[e.Scientific=16]="Scientific",e[e.Octal=32]="Octal",e[e.HexSpecifier=64]="HexSpecifier",e[e.BinarySpecifier=128]="BinarySpecifier",e[e.OctalSpecifier=256]="OctalSpecifier",e[e.ContainsSeparator=512]="ContainsSeparator",e[e.UnicodeEscape=1024]="UnicodeEscape",e[e.ContainsInvalidEscape=2048]="ContainsInvalidEscape",e[e.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",e[e.NumericLiteralFlags=1008]="NumericLiteralFlags",e[e.TemplateLiteralLikeFlags=2048]="TemplateLiteralLikeFlags"}(e.TokenFlags||(e.TokenFlags={})),function(e){e[e.Unreachable=1]="Unreachable",e[e.Start=2]="Start",e[e.BranchLabel=4]="BranchLabel",e[e.LoopLabel=8]="LoopLabel",e[e.Assignment=16]="Assignment",e[e.TrueCondition=32]="TrueCondition",e[e.FalseCondition=64]="FalseCondition",e[e.SwitchClause=128]="SwitchClause",e[e.ArrayMutation=256]="ArrayMutation",e[e.Call=512]="Call",e[e.ReduceLabel=1024]="ReduceLabel",e[e.Referenced=2048]="Referenced",e[e.Shared=4096]="Shared",e[e.Label=12]="Label",e[e.Condition=96]="Condition"}(e.FlowFlags||(e.FlowFlags={})),function(e){e[e.ExpectError=0]="ExpectError",e[e.Ignore=1]="Ignore"}(e.CommentDirectiveType||(e.CommentDirectiveType={}));var t,r=function(){};e.OperationCanceledException=r,function(e){e[e.RootFile=0]="RootFile",e[e.SourceFromProjectReference=1]="SourceFromProjectReference",e[e.OutputFromProjectReference=2]="OutputFromProjectReference",e[e.Import=3]="Import",e[e.ReferenceFile=4]="ReferenceFile",e[e.TypeReferenceDirective=5]="TypeReferenceDirective",e[e.LibFile=6]="LibFile",e[e.LibReferenceDirective=7]="LibReferenceDirective",e[e.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile"}(e.FileIncludeKind||(e.FileIncludeKind={})),function(e){e[e.FilePreprocessingReferencedDiagnostic=0]="FilePreprocessingReferencedDiagnostic",e[e.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic"}(e.FilePreprocessingDiagnosticsKind||(e.FilePreprocessingDiagnosticsKind={})),function(e){e[e.Not=0]="Not",e[e.SafeModules=1]="SafeModules",e[e.Completely=2]="Completely"}(e.StructureIsReused||(e.StructureIsReused={})),function(e){e[e.Success=0]="Success",e[e.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",e[e.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",e[e.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",e[e.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",e[e.ProjectReferenceCycle_OutputsSkupped=4]="ProjectReferenceCycle_OutputsSkupped"}(e.ExitStatus||(e.ExitStatus={})),function(e){e[e.None=0]="None",e[e.Literal=1]="Literal",e[e.Subtype=2]="Subtype"}(e.UnionReduction||(e.UnionReduction={})),function(e){e[e.None=0]="None",e[e.Signature=1]="Signature",e[e.NoConstraints=2]="NoConstraints",e[e.Completions=4]="Completions",e[e.SkipBindingPatterns=8]="SkipBindingPatterns"}(e.ContextFlags||(e.ContextFlags={})),function(e){e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.NoUndefinedOptionalParameterType=1073741824]="NoUndefinedOptionalParameterType",e[e.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",e[e.AllowQualifedNameInPlaceOfIdentifier=65536]="AllowQualifedNameInPlaceOfIdentifier",e[e.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",e[e.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",e[e.AllowEmptyTuple=524288]="AllowEmptyTuple",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",e[e.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",e[e.DoNotIncludeSymbolChain=134217728]="DoNotIncludeSymbolChain",e[e.IgnoreErrors=70221824]="IgnoreErrors",e[e.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.InInitialEntityName=16777216]="InInitialEntityName",e[e.InReverseMappedType=33554432]="InReverseMappedType"}(e.NodeBuilderFlags||(e.NodeBuilderFlags={})),function(e){e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AddUndefined=131072]="AddUndefined",e[e.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",e[e.InArrayType=524288]="InArrayType",e[e.InElementType=2097152]="InElementType",e[e.InFirstTypeArgument=4194304]="InFirstTypeArgument",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.WriteOwnNameForAnyLike=0]="WriteOwnNameForAnyLike",e[e.NodeBuilderFlagsMask=814775659]="NodeBuilderFlagsMask"}(e.TypeFormatFlags||(e.TypeFormatFlags={})),function(e){e[e.None=0]="None",e[e.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",e[e.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",e[e.AllowAnyNodeKind=4]="AllowAnyNodeKind",e[e.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",e[e.DoNotIncludeSymbolChain=16]="DoNotIncludeSymbolChain"}(e.SymbolFormatFlags||(e.SymbolFormatFlags={})),function(e){e[e.Accessible=0]="Accessible",e[e.NotAccessible=1]="NotAccessible",e[e.CannotBeNamed=2]="CannotBeNamed"}(e.SymbolAccessibility||(e.SymbolAccessibility={})),function(e){e[e.UnionOrIntersection=0]="UnionOrIntersection",e[e.Spread=1]="Spread"}(e.SyntheticSymbolKind||(e.SyntheticSymbolKind={})),function(e){e[e.This=0]="This",e[e.Identifier=1]="Identifier",e[e.AssertsThis=2]="AssertsThis",e[e.AssertsIdentifier=3]="AssertsIdentifier"}(e.TypePredicateKind||(e.TypePredicateKind={})),function(e){e[e.Unknown=0]="Unknown",e[e.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",e[e.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",e[e.NumberLikeType=3]="NumberLikeType",e[e.BigIntLikeType=4]="BigIntLikeType",e[e.StringLikeType=5]="StringLikeType",e[e.BooleanType=6]="BooleanType",e[e.ArrayLikeType=7]="ArrayLikeType",e[e.ESSymbolType=8]="ESSymbolType",e[e.Promise=9]="Promise",e[e.TypeWithCallSignature=10]="TypeWithCallSignature",e[e.ObjectType=11]="ObjectType"}(e.TypeReferenceSerializationKind||(e.TypeReferenceSerializationKind={})),function(e){e[e.None=0]="None",e[e.FunctionScopedVariable=1]="FunctionScopedVariable",e[e.BlockScopedVariable=2]="BlockScopedVariable",e[e.Property=4]="Property",e[e.EnumMember=8]="EnumMember",e[e.Function=16]="Function",e[e.Class=32]="Class",e[e.Interface=64]="Interface",e[e.ConstEnum=128]="ConstEnum",e[e.RegularEnum=256]="RegularEnum",e[e.ValueModule=512]="ValueModule",e[e.NamespaceModule=1024]="NamespaceModule",e[e.TypeLiteral=2048]="TypeLiteral",e[e.ObjectLiteral=4096]="ObjectLiteral",e[e.Method=8192]="Method",e[e.Constructor=16384]="Constructor",e[e.GetAccessor=32768]="GetAccessor",e[e.SetAccessor=65536]="SetAccessor",e[e.Signature=131072]="Signature",e[e.TypeParameter=262144]="TypeParameter",e[e.TypeAlias=524288]="TypeAlias",e[e.ExportValue=1048576]="ExportValue",e[e.Alias=2097152]="Alias",e[e.Prototype=4194304]="Prototype",e[e.ExportStar=8388608]="ExportStar",e[e.Optional=16777216]="Optional",e[e.Transient=33554432]="Transient",e[e.Assignment=67108864]="Assignment",e[e.ModuleExports=134217728]="ModuleExports",e[e.All=67108863]="All",e[e.Enum=384]="Enum",e[e.Variable=3]="Variable",e[e.Value=111551]="Value",e[e.Type=788968]="Type",e[e.Namespace=1920]="Namespace",e[e.Module=1536]="Module",e[e.Accessor=98304]="Accessor",e[e.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",e[e.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",e[e.ParameterExcludes=111551]="ParameterExcludes",e[e.PropertyExcludes=0]="PropertyExcludes",e[e.EnumMemberExcludes=900095]="EnumMemberExcludes",e[e.FunctionExcludes=110991]="FunctionExcludes",e[e.ClassExcludes=899503]="ClassExcludes",e[e.InterfaceExcludes=788872]="InterfaceExcludes",e[e.RegularEnumExcludes=899327]="RegularEnumExcludes",e[e.ConstEnumExcludes=899967]="ConstEnumExcludes",e[e.ValueModuleExcludes=110735]="ValueModuleExcludes",e[e.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",e[e.MethodExcludes=103359]="MethodExcludes",e[e.GetAccessorExcludes=46015]="GetAccessorExcludes",e[e.SetAccessorExcludes=78783]="SetAccessorExcludes",e[e.TypeParameterExcludes=526824]="TypeParameterExcludes",e[e.TypeAliasExcludes=788968]="TypeAliasExcludes",e[e.AliasExcludes=2097152]="AliasExcludes",e[e.ModuleMember=2623475]="ModuleMember",e[e.ExportHasLocal=944]="ExportHasLocal",e[e.BlockScoped=418]="BlockScoped",e[e.PropertyOrAccessor=98308]="PropertyOrAccessor",e[e.ClassMember=106500]="ClassMember",e[e.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",e[e.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",e[e.Classifiable=2885600]="Classifiable",e[e.LateBindingContainer=6256]="LateBindingContainer"}(e.SymbolFlags||(e.SymbolFlags={})),function(e){e[e.Numeric=0]="Numeric",e[e.Literal=1]="Literal"}(e.EnumKind||(e.EnumKind={})),function(e){e[e.Instantiated=1]="Instantiated",e[e.SyntheticProperty=2]="SyntheticProperty",e[e.SyntheticMethod=4]="SyntheticMethod",e[e.Readonly=8]="Readonly",e[e.ReadPartial=16]="ReadPartial",e[e.WritePartial=32]="WritePartial",e[e.HasNonUniformType=64]="HasNonUniformType",e[e.HasLiteralType=128]="HasLiteralType",e[e.ContainsPublic=256]="ContainsPublic",e[e.ContainsProtected=512]="ContainsProtected",e[e.ContainsPrivate=1024]="ContainsPrivate",e[e.ContainsStatic=2048]="ContainsStatic",e[e.Late=4096]="Late",e[e.ReverseMapped=8192]="ReverseMapped",e[e.OptionalParameter=16384]="OptionalParameter",e[e.RestParameter=32768]="RestParameter",e[e.DeferredType=65536]="DeferredType",e[e.HasNeverType=131072]="HasNeverType",e[e.Mapped=262144]="Mapped",e[e.StripOptional=524288]="StripOptional",e[e.Synthetic=6]="Synthetic",e[e.Discriminant=192]="Discriminant",e[e.Partial=48]="Partial"}(e.CheckFlags||(e.CheckFlags={})),function(e){e.Call="__call",e.Constructor="__constructor",e.New="__new",e.Index="__index",e.ExportStar="__export",e.Global="__global",e.Missing="__missing",e.Type="__type",e.Object="__object",e.JSXAttributes="__jsxAttributes",e.Class="__class",e.Function="__function",e.Computed="__computed",e.Resolving="__resolving__",e.ExportEquals="export=",e.Default="default",e.This="this"}(e.InternalSymbolName||(e.InternalSymbolName={})),function(e){e[e.TypeChecked=1]="TypeChecked",e[e.LexicalThis=2]="LexicalThis",e[e.CaptureThis=4]="CaptureThis",e[e.CaptureNewTarget=8]="CaptureNewTarget",e[e.SuperInstance=256]="SuperInstance",e[e.SuperStatic=512]="SuperStatic",e[e.ContextChecked=1024]="ContextChecked",e[e.AsyncMethodWithSuper=2048]="AsyncMethodWithSuper",e[e.AsyncMethodWithSuperBinding=4096]="AsyncMethodWithSuperBinding",e[e.CaptureArguments=8192]="CaptureArguments",e[e.EnumValuesComputed=16384]="EnumValuesComputed",e[e.LexicalModuleMergesWithClass=32768]="LexicalModuleMergesWithClass",e[e.LoopWithCapturedBlockScopedBinding=65536]="LoopWithCapturedBlockScopedBinding",e[e.ContainsCapturedBlockScopeBinding=131072]="ContainsCapturedBlockScopeBinding",e[e.CapturedBlockScopedBinding=262144]="CapturedBlockScopedBinding",e[e.BlockScopedBindingInLoop=524288]="BlockScopedBindingInLoop",e[e.ClassWithBodyScopedClassBinding=1048576]="ClassWithBodyScopedClassBinding",e[e.BodyScopedClassBinding=2097152]="BodyScopedClassBinding",e[e.NeedsLoopOutParameter=4194304]="NeedsLoopOutParameter",e[e.AssignmentsMarked=8388608]="AssignmentsMarked",e[e.ClassWithConstructorReference=16777216]="ClassWithConstructorReference",e[e.ConstructorReferenceInClass=33554432]="ConstructorReferenceInClass",e[e.ContainsClassWithPrivateIdentifiers=67108864]="ContainsClassWithPrivateIdentifiers"}(e.NodeCheckFlags||(e.NodeCheckFlags={})),function(e){e[e.Any=1]="Any",e[e.Unknown=2]="Unknown",e[e.String=4]="String",e[e.Number=8]="Number",e[e.Boolean=16]="Boolean",e[e.Enum=32]="Enum",e[e.BigInt=64]="BigInt",e[e.StringLiteral=128]="StringLiteral",e[e.NumberLiteral=256]="NumberLiteral",e[e.BooleanLiteral=512]="BooleanLiteral",e[e.EnumLiteral=1024]="EnumLiteral",e[e.BigIntLiteral=2048]="BigIntLiteral",e[e.ESSymbol=4096]="ESSymbol",e[e.UniqueESSymbol=8192]="UniqueESSymbol",e[e.Void=16384]="Void",e[e.Undefined=32768]="Undefined",e[e.Null=65536]="Null",e[e.Never=131072]="Never",e[e.TypeParameter=262144]="TypeParameter",e[e.Object=524288]="Object",e[e.Union=1048576]="Union",e[e.Intersection=2097152]="Intersection",e[e.Index=4194304]="Index",e[e.IndexedAccess=8388608]="IndexedAccess",e[e.Conditional=16777216]="Conditional",e[e.Substitution=33554432]="Substitution",e[e.NonPrimitive=67108864]="NonPrimitive",e[e.TemplateLiteral=134217728]="TemplateLiteral",e[e.StringMapping=268435456]="StringMapping",e[e.AnyOrUnknown=3]="AnyOrUnknown",e[e.Nullable=98304]="Nullable",e[e.Literal=2944]="Literal",e[e.Unit=109440]="Unit",e[e.StringOrNumberLiteral=384]="StringOrNumberLiteral",e[e.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",e[e.DefinitelyFalsy=117632]="DefinitelyFalsy",e[e.PossiblyFalsy=117724]="PossiblyFalsy",e[e.Intrinsic=67359327]="Intrinsic",e[e.Primitive=131068]="Primitive",e[e.StringLike=402653316]="StringLike",e[e.NumberLike=296]="NumberLike",e[e.BigIntLike=2112]="BigIntLike",e[e.BooleanLike=528]="BooleanLike",e[e.EnumLike=1056]="EnumLike",e[e.ESSymbolLike=12288]="ESSymbolLike",e[e.VoidLike=49152]="VoidLike",e[e.DisjointDomains=469892092]="DisjointDomains",e[e.UnionOrIntersection=3145728]="UnionOrIntersection",e[e.StructuredType=3670016]="StructuredType",e[e.TypeVariable=8650752]="TypeVariable",e[e.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",e[e.InstantiablePrimitive=406847488]="InstantiablePrimitive",e[e.Instantiable=465829888]="Instantiable",e[e.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",e[e.ObjectFlagsType=3899393]="ObjectFlagsType",e[e.Simplifiable=25165824]="Simplifiable",e[e.Substructure=469237760]="Substructure",e[e.Narrowable=536624127]="Narrowable",e[e.NotPrimitiveUnion=468598819]="NotPrimitiveUnion",e[e.IncludesMask=205258751]="IncludesMask",e[e.IncludesStructuredOrInstantiable=262144]="IncludesStructuredOrInstantiable",e[e.IncludesNonWideningType=4194304]="IncludesNonWideningType",e[e.IncludesWildcard=8388608]="IncludesWildcard",e[e.IncludesEmptyObject=16777216]="IncludesEmptyObject"}(e.TypeFlags||(e.TypeFlags={})),function(e){e[e.Class=1]="Class",e[e.Interface=2]="Interface",e[e.Reference=4]="Reference",e[e.Tuple=8]="Tuple",e[e.Anonymous=16]="Anonymous",e[e.Mapped=32]="Mapped",e[e.Instantiated=64]="Instantiated",e[e.ObjectLiteral=128]="ObjectLiteral",e[e.EvolvingArray=256]="EvolvingArray",e[e.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",e[e.ContainsSpread=1024]="ContainsSpread",e[e.ReverseMapped=2048]="ReverseMapped",e[e.JsxAttributes=4096]="JsxAttributes",e[e.MarkerType=8192]="MarkerType",e[e.JSLiteral=16384]="JSLiteral",e[e.FreshLiteral=32768]="FreshLiteral",e[e.ArrayLiteral=65536]="ArrayLiteral",e[e.ObjectRestType=131072]="ObjectRestType",e[e.PrimitiveUnion=262144]="PrimitiveUnion",e[e.ContainsWideningType=524288]="ContainsWideningType",e[e.ContainsObjectOrArrayLiteral=1048576]="ContainsObjectOrArrayLiteral",e[e.NonInferrableType=2097152]="NonInferrableType",e[e.IsGenericObjectTypeComputed=4194304]="IsGenericObjectTypeComputed",e[e.IsGenericObjectType=8388608]="IsGenericObjectType",e[e.IsGenericIndexTypeComputed=16777216]="IsGenericIndexTypeComputed",e[e.IsGenericIndexType=33554432]="IsGenericIndexType",e[e.CouldContainTypeVariablesComputed=67108864]="CouldContainTypeVariablesComputed",e[e.CouldContainTypeVariables=134217728]="CouldContainTypeVariables",e[e.ContainsIntersections=268435456]="ContainsIntersections",e[e.IsNeverIntersectionComputed=268435456]="IsNeverIntersectionComputed",e[e.IsNeverIntersection=536870912]="IsNeverIntersection",e[e.IsClassInstanceClone=1073741824]="IsClassInstanceClone",e[e.ClassOrInterface=3]="ClassOrInterface",e[e.RequiresWidening=1572864]="RequiresWidening",e[e.PropagatingFlags=3670016]="PropagatingFlags",e[e.ObjectTypeKindMask=2367]="ObjectTypeKindMask"}(e.ObjectFlags||(e.ObjectFlags={})),function(e){e[e.Invariant=0]="Invariant",e[e.Covariant=1]="Covariant",e[e.Contravariant=2]="Contravariant",e[e.Bivariant=3]="Bivariant",e[e.Independent=4]="Independent",e[e.VarianceMask=7]="VarianceMask",e[e.Unmeasurable=8]="Unmeasurable",e[e.Unreliable=16]="Unreliable",e[e.AllowsStructuralFallback=24]="AllowsStructuralFallback"}(e.VarianceFlags||(e.VarianceFlags={})),function(e){e[e.Required=1]="Required",e[e.Optional=2]="Optional",e[e.Rest=4]="Rest",e[e.Variadic=8]="Variadic",e[e.Fixed=3]="Fixed",e[e.Variable=12]="Variable",e[e.NonRequired=14]="NonRequired",e[e.NonRest=11]="NonRest"}(e.ElementFlags||(e.ElementFlags={})),function(e){e[e.Component=0]="Component",e[e.Function=1]="Function",e[e.Mixed=2]="Mixed"}(e.JsxReferenceKind||(e.JsxReferenceKind={})),function(e){e[e.Call=0]="Call",e[e.Construct=1]="Construct"}(e.SignatureKind||(e.SignatureKind={})),function(e){e[e.None=0]="None",e[e.HasRestParameter=1]="HasRestParameter",e[e.HasLiteralTypes=2]="HasLiteralTypes",e[e.Abstract=4]="Abstract",e[e.IsInnerCallChain=8]="IsInnerCallChain",e[e.IsOuterCallChain=16]="IsOuterCallChain",e[e.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",e[e.PropagatingFlags=39]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags"}(e.SignatureFlags||(e.SignatureFlags={})),function(e){e[e.String=0]="String",e[e.Number=1]="Number"}(e.IndexKind||(e.IndexKind={})),function(e){e[e.Simple=0]="Simple",e[e.Array=1]="Array",e[e.Function=2]="Function",e[e.Composite=3]="Composite",e[e.Merged=4]="Merged"}(e.TypeMapKind||(e.TypeMapKind={})),function(e){e[e.NakedTypeVariable=1]="NakedTypeVariable",e[e.SpeculativeTuple=2]="SpeculativeTuple",e[e.HomomorphicMappedType=4]="HomomorphicMappedType",e[e.PartialHomomorphicMappedType=8]="PartialHomomorphicMappedType",e[e.MappedTypeConstraint=16]="MappedTypeConstraint",e[e.ContravariantConditional=32]="ContravariantConditional",e[e.ReturnType=64]="ReturnType",e[e.LiteralKeyof=128]="LiteralKeyof",e[e.NoConstraints=256]="NoConstraints",e[e.AlwaysStrict=512]="AlwaysStrict",e[e.MaxValue=1024]="MaxValue",e[e.PriorityImpliesCombination=208]="PriorityImpliesCombination",e[e.Circularity=-1]="Circularity"}(e.InferencePriority||(e.InferencePriority={})),function(e){e[e.None=0]="None",e[e.NoDefault=1]="NoDefault",e[e.AnyDefault=2]="AnyDefault",e[e.SkippedGenericFunction=4]="SkippedGenericFunction"}(e.InferenceFlags||(e.InferenceFlags={})),function(e){e[e.False=0]="False",e[e.Unknown=1]="Unknown",e[e.Maybe=3]="Maybe",e[e.True=-1]="True"}(e.Ternary||(e.Ternary={})),function(e){e[e.None=0]="None",e[e.ExportsProperty=1]="ExportsProperty",e[e.ModuleExports=2]="ModuleExports",e[e.PrototypeProperty=3]="PrototypeProperty",e[e.ThisProperty=4]="ThisProperty",e[e.Property=5]="Property",e[e.Prototype=6]="Prototype",e[e.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",e[e.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",e[e.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty"}(e.AssignmentDeclarationKind||(e.AssignmentDeclarationKind={})),function(e){e[e.Warning=0]="Warning",e[e.Error=1]="Error",e[e.Suggestion=2]="Suggestion",e[e.Message=3]="Message"}(t=e.DiagnosticCategory||(e.DiagnosticCategory={})),e.diagnosticCategoryName=function(e,r){void 0===r&&(r=!0);var n=t[e.category];return r?n.toLowerCase():n},function(e){e[e.Classic=1]="Classic",e[e.NodeJs=2]="NodeJs"}(e.ModuleResolutionKind||(e.ModuleResolutionKind={})),function(e){e[e.FixedPollingInterval=0]="FixedPollingInterval",e[e.PriorityPollingInterval=1]="PriorityPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.UseFsEvents=3]="UseFsEvents",e[e.UseFsEventsOnParentDirectory=4]="UseFsEventsOnParentDirectory"}(e.WatchFileKind||(e.WatchFileKind={})),function(e){e[e.UseFsEvents=0]="UseFsEvents",e[e.FixedPollingInterval=1]="FixedPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling"}(e.WatchDirectoryKind||(e.WatchDirectoryKind={})),function(e){e[e.FixedInterval=0]="FixedInterval",e[e.PriorityInterval=1]="PriorityInterval",e[e.DynamicPriority=2]="DynamicPriority"}(e.PollingWatchKind||(e.PollingWatchKind={})),function(e){e[e.None=0]="None",e[e.CommonJS=1]="CommonJS",e[e.AMD=2]="AMD",e[e.UMD=3]="UMD",e[e.System=4]="System",e[e.ES2015=5]="ES2015",e[e.ES2020=6]="ES2020",e[e.ESNext=99]="ESNext"}(e.ModuleKind||(e.ModuleKind={})),function(e){e[e.None=0]="None",e[e.Preserve=1]="Preserve",e[e.React=2]="React",e[e.ReactNative=3]="ReactNative",e[e.ReactJSX=4]="ReactJSX",e[e.ReactJSXDev=5]="ReactJSXDev"}(e.JsxEmit||(e.JsxEmit={})),function(e){e[e.Remove=0]="Remove",e[e.Preserve=1]="Preserve",e[e.Error=2]="Error"}(e.ImportsNotUsedAsValues||(e.ImportsNotUsedAsValues={})),function(e){e[e.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",e[e.LineFeed=1]="LineFeed"}(e.NewLineKind||(e.NewLineKind={})),function(e){e[e.Unknown=0]="Unknown",e[e.JS=1]="JS",e[e.JSX=2]="JSX",e[e.TS=3]="TS",e[e.TSX=4]="TSX",e[e.External=5]="External",e[e.JSON=6]="JSON",e[e.Deferred=7]="Deferred",e[e.ETS=8]="ETS"}(e.ScriptKind||(e.ScriptKind={})),function(e){e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest"}(e.ScriptTarget||(e.ScriptTarget={})),function(e){e[e.Standard=0]="Standard",e[e.JSX=1]="JSX"}(e.LanguageVariant||(e.LanguageVariant={})),function(e){e[e.None=0]="None",e[e.Recursive=1]="Recursive"}(e.WatchDirectoryFlags||(e.WatchDirectoryFlags={})),function(e){e[e.nullCharacter=0]="nullCharacter",e[e.maxAsciiCharacter=127]="maxAsciiCharacter",e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.lineSeparator=8232]="lineSeparator",e[e.paragraphSeparator=8233]="paragraphSeparator",e[e.nextLine=133]="nextLine",e[e.space=32]="space",e[e.nonBreakingSpace=160]="nonBreakingSpace",e[e.enQuad=8192]="enQuad",e[e.emQuad=8193]="emQuad",e[e.enSpace=8194]="enSpace",e[e.emSpace=8195]="emSpace",e[e.threePerEmSpace=8196]="threePerEmSpace",e[e.fourPerEmSpace=8197]="fourPerEmSpace",e[e.sixPerEmSpace=8198]="sixPerEmSpace",e[e.figureSpace=8199]="figureSpace",e[e.punctuationSpace=8200]="punctuationSpace",e[e.thinSpace=8201]="thinSpace",e[e.hairSpace=8202]="hairSpace",e[e.zeroWidthSpace=8203]="zeroWidthSpace",e[e.narrowNoBreakSpace=8239]="narrowNoBreakSpace",e[e.ideographicSpace=12288]="ideographicSpace",e[e.mathematicalSpace=8287]="mathematicalSpace",e[e.ogham=5760]="ogham",e[e._=95]="_",e[e.$=36]="$",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.ampersand=38]="ampersand",e[e.asterisk=42]="asterisk",e[e.at=64]="at",e[e.backslash=92]="backslash",e[e.backtick=96]="backtick",e[e.bar=124]="bar",e[e.caret=94]="caret",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.closeParen=41]="closeParen",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.equals=61]="equals",e[e.exclamation=33]="exclamation",e[e.greaterThan=62]="greaterThan",e[e.hash=35]="hash",e[e.lessThan=60]="lessThan",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.openParen=40]="openParen",e[e.percent=37]="percent",e[e.plus=43]="plus",e[e.question=63]="question",e[e.semicolon=59]="semicolon",e[e.singleQuote=39]="singleQuote",e[e.slash=47]="slash",e[e.tilde=126]="tilde",e[e.backspace=8]="backspace",e[e.formFeed=12]="formFeed",e[e.byteOrderMark=65279]="byteOrderMark",e[e.tab=9]="tab",e[e.verticalTab=11]="verticalTab"}(e.CharacterCodes||(e.CharacterCodes={})),function(e){e.Ts=".ts",e.Tsx=".tsx",e.Dts=".d.ts",e.Js=".js",e.Jsx=".jsx",e.Json=".json",e.TsBuildInfo=".tsbuildinfo",e.Ets=".ets",e.Dets=".d.ets"}(e.Extension||(e.Extension={})),function(e){e[e.None=0]="None",e[e.ContainsTypeScript=1]="ContainsTypeScript",e[e.ContainsJsx=2]="ContainsJsx",e[e.ContainsESNext=4]="ContainsESNext",e[e.ContainsES2020=8]="ContainsES2020",e[e.ContainsES2019=16]="ContainsES2019",e[e.ContainsES2018=32]="ContainsES2018",e[e.ContainsES2017=64]="ContainsES2017",e[e.ContainsES2016=128]="ContainsES2016",e[e.ContainsES2015=256]="ContainsES2015",e[e.ContainsGenerator=512]="ContainsGenerator",e[e.ContainsDestructuringAssignment=1024]="ContainsDestructuringAssignment",e[e.ContainsTypeScriptClassSyntax=2048]="ContainsTypeScriptClassSyntax",e[e.ContainsLexicalThis=4096]="ContainsLexicalThis",e[e.ContainsRestOrSpread=8192]="ContainsRestOrSpread",e[e.ContainsObjectRestOrSpread=16384]="ContainsObjectRestOrSpread",e[e.ContainsComputedPropertyName=32768]="ContainsComputedPropertyName",e[e.ContainsBlockScopedBinding=65536]="ContainsBlockScopedBinding",e[e.ContainsBindingPattern=131072]="ContainsBindingPattern",e[e.ContainsYield=262144]="ContainsYield",e[e.ContainsAwait=524288]="ContainsAwait",e[e.ContainsHoistedDeclarationOrCompletion=1048576]="ContainsHoistedDeclarationOrCompletion",e[e.ContainsDynamicImport=2097152]="ContainsDynamicImport",e[e.ContainsClassFields=4194304]="ContainsClassFields",e[e.ContainsPossibleTopLevelAwait=8388608]="ContainsPossibleTopLevelAwait",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AssertTypeScript=1]="AssertTypeScript",e[e.AssertJsx=2]="AssertJsx",e[e.AssertESNext=4]="AssertESNext",e[e.AssertES2020=8]="AssertES2020",e[e.AssertES2019=16]="AssertES2019",e[e.AssertES2018=32]="AssertES2018",e[e.AssertES2017=64]="AssertES2017",e[e.AssertES2016=128]="AssertES2016",e[e.AssertES2015=256]="AssertES2015",e[e.AssertGenerator=512]="AssertGenerator",e[e.AssertDestructuringAssignment=1024]="AssertDestructuringAssignment",e[e.OuterExpressionExcludes=536870912]="OuterExpressionExcludes",e[e.PropertyAccessExcludes=536870912]="PropertyAccessExcludes",e[e.NodeExcludes=536870912]="NodeExcludes",e[e.ArrowFunctionExcludes=547309568]="ArrowFunctionExcludes",e[e.FunctionExcludes=547313664]="FunctionExcludes",e[e.ConstructorExcludes=547311616]="ConstructorExcludes",e[e.MethodOrAccessorExcludes=538923008]="MethodOrAccessorExcludes",e[e.PropertyExcludes=536875008]="PropertyExcludes",e[e.ClassExcludes=536905728]="ClassExcludes",e[e.ModuleExcludes=546379776]="ModuleExcludes",e[e.TypeExcludes=-2]="TypeExcludes",e[e.ObjectLiteralExcludes=536922112]="ObjectLiteralExcludes",e[e.ArrayLiteralOrCallOrNewExcludes=536879104]="ArrayLiteralOrCallOrNewExcludes",e[e.VariableDeclarationListExcludes=537018368]="VariableDeclarationListExcludes",e[e.ParameterExcludes=536870912]="ParameterExcludes",e[e.CatchClauseExcludes=536887296]="CatchClauseExcludes",e[e.BindingPatternExcludes=536879104]="BindingPatternExcludes",e[e.PropertyNamePropagatingFlags=4096]="PropertyNamePropagatingFlags"}(e.TransformFlags||(e.TransformFlags={})),function(e){e[e.None=0]="None",e[e.SingleLine=1]="SingleLine",e[e.AdviseOnEmitNode=2]="AdviseOnEmitNode",e[e.NoSubstitution=4]="NoSubstitution",e[e.CapturesThis=8]="CapturesThis",e[e.NoLeadingSourceMap=16]="NoLeadingSourceMap",e[e.NoTrailingSourceMap=32]="NoTrailingSourceMap",e[e.NoSourceMap=48]="NoSourceMap",e[e.NoNestedSourceMaps=64]="NoNestedSourceMaps",e[e.NoTokenLeadingSourceMaps=128]="NoTokenLeadingSourceMaps",e[e.NoTokenTrailingSourceMaps=256]="NoTokenTrailingSourceMaps",e[e.NoTokenSourceMaps=384]="NoTokenSourceMaps",e[e.NoLeadingComments=512]="NoLeadingComments",e[e.NoTrailingComments=1024]="NoTrailingComments",e[e.NoComments=1536]="NoComments",e[e.NoNestedComments=2048]="NoNestedComments",e[e.HelperName=4096]="HelperName",e[e.ExportName=8192]="ExportName",e[e.LocalName=16384]="LocalName",e[e.InternalName=32768]="InternalName",e[e.Indented=65536]="Indented",e[e.NoIndentation=131072]="NoIndentation",e[e.AsyncFunctionBody=262144]="AsyncFunctionBody",e[e.ReuseTempVariableScope=524288]="ReuseTempVariableScope",e[e.CustomPrologue=1048576]="CustomPrologue",e[e.NoHoisting=2097152]="NoHoisting",e[e.HasEndOfDeclarationMarker=4194304]="HasEndOfDeclarationMarker",e[e.Iterator=8388608]="Iterator",e[e.NoAsciiEscaping=16777216]="NoAsciiEscaping",e[e.TypeScriptClassWrapper=33554432]="TypeScriptClassWrapper",e[e.NeverApplyImportHelper=67108864]="NeverApplyImportHelper",e[e.IgnoreSourceNewlines=134217728]="IgnoreSourceNewlines"}(e.EmitFlags||(e.EmitFlags={})),function(e){e[e.Extends=1]="Extends",e[e.Assign=2]="Assign",e[e.Rest=4]="Rest",e[e.Decorate=8]="Decorate",e[e.Metadata=16]="Metadata",e[e.Param=32]="Param",e[e.Awaiter=64]="Awaiter",e[e.Generator=128]="Generator",e[e.Values=256]="Values",e[e.Read=512]="Read",e[e.SpreadArray=1024]="SpreadArray",e[e.Await=2048]="Await",e[e.AsyncGenerator=4096]="AsyncGenerator",e[e.AsyncDelegator=8192]="AsyncDelegator",e[e.AsyncValues=16384]="AsyncValues",e[e.ExportStar=32768]="ExportStar",e[e.ImportStar=65536]="ImportStar",e[e.ImportDefault=131072]="ImportDefault",e[e.MakeTemplateObject=262144]="MakeTemplateObject",e[e.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",e[e.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",e[e.CreateBinding=2097152]="CreateBinding",e[e.FirstEmitHelper=1]="FirstEmitHelper",e[e.LastEmitHelper=2097152]="LastEmitHelper",e[e.ForOfIncludes=256]="ForOfIncludes",e[e.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",e[e.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",e[e.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",e[e.SpreadIncludes=1536]="SpreadIncludes"}(e.ExternalEmitHelpers||(e.ExternalEmitHelpers={})),function(e){e[e.SourceFile=0]="SourceFile",e[e.Expression=1]="Expression",e[e.IdentifierName=2]="IdentifierName",e[e.MappedTypeParameter=3]="MappedTypeParameter",e[e.Unspecified=4]="Unspecified",e[e.EmbeddedStatement=5]="EmbeddedStatement",e[e.JsxAttributeValue=6]="JsxAttributeValue"}(e.EmitHint||(e.EmitHint={})),function(e){e[e.Parentheses=1]="Parentheses",e[e.TypeAssertions=2]="TypeAssertions",e[e.NonNullAssertions=4]="NonNullAssertions",e[e.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",e[e.Assertions=6]="Assertions",e[e.All=15]="All"}(e.OuterExpressionKinds||(e.OuterExpressionKinds={})),function(e){e[e.None=0]="None",e[e.InParameters=1]="InParameters",e[e.VariablesHoistedInParameters=2]="VariablesHoistedInParameters"}(e.LexicalEnvironmentFlags||(e.LexicalEnvironmentFlags={})),function(e){e.Prologue="prologue",e.EmitHelpers="emitHelpers",e.NoDefaultLib="no-default-lib",e.Reference="reference",e.Type="type",e.Lib="lib",e.Prepend="prepend",e.Text="text",e.Internal="internal"}(e.BundleFileSectionKind||(e.BundleFileSectionKind={})),function(e){e[e.None=0]="None",e[e.SingleLine=0]="SingleLine",e[e.MultiLine=1]="MultiLine",e[e.PreserveLines=2]="PreserveLines",e[e.LinesMask=3]="LinesMask",e[e.NotDelimited=0]="NotDelimited",e[e.BarDelimited=4]="BarDelimited",e[e.AmpersandDelimited=8]="AmpersandDelimited",e[e.CommaDelimited=16]="CommaDelimited",e[e.AsteriskDelimited=32]="AsteriskDelimited",e[e.DelimitersMask=60]="DelimitersMask",e[e.AllowTrailingComma=64]="AllowTrailingComma",e[e.Indented=128]="Indented",e[e.SpaceBetweenBraces=256]="SpaceBetweenBraces",e[e.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",e[e.Braces=1024]="Braces",e[e.Parenthesis=2048]="Parenthesis",e[e.AngleBrackets=4096]="AngleBrackets",e[e.SquareBrackets=8192]="SquareBrackets",e[e.BracketsMask=15360]="BracketsMask",e[e.OptionalIfUndefined=16384]="OptionalIfUndefined",e[e.OptionalIfEmpty=32768]="OptionalIfEmpty",e[e.Optional=49152]="Optional",e[e.PreferNewLine=65536]="PreferNewLine",e[e.NoTrailingNewLine=131072]="NoTrailingNewLine",e[e.NoInterveningComments=262144]="NoInterveningComments",e[e.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",e[e.SingleElement=1048576]="SingleElement",e[e.SpaceAfterList=2097152]="SpaceAfterList",e[e.Modifiers=262656]="Modifiers",e[e.HeritageClauses=512]="HeritageClauses",e[e.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",e[e.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",e[e.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",e[e.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",e[e.UnionTypeConstituents=516]="UnionTypeConstituents",e[e.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",e[e.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",e[e.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",e[e.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",e[e.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",e[e.CommaListElements=528]="CommaListElements",e[e.CallExpressionArguments=2576]="CallExpressionArguments",e[e.NewExpressionArguments=18960]="NewExpressionArguments",e[e.TemplateExpressionSpans=262144]="TemplateExpressionSpans",e[e.SingleLineBlockStatements=768]="SingleLineBlockStatements",e[e.MultiLineBlockStatements=129]="MultiLineBlockStatements",e[e.VariableDeclarationList=528]="VariableDeclarationList",e[e.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",e[e.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",e[e.ClassHeritageClauses=0]="ClassHeritageClauses",e[e.ClassMembers=129]="ClassMembers",e[e.InterfaceMembers=129]="InterfaceMembers",e[e.EnumMembers=145]="EnumMembers",e[e.CaseBlockClauses=129]="CaseBlockClauses",e[e.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",e[e.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",e[e.JsxElementAttributes=262656]="JsxElementAttributes",e[e.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",e[e.HeritageClauseTypes=528]="HeritageClauseTypes",e[e.SourceFileStatements=131073]="SourceFileStatements",e[e.Decorators=2146305]="Decorators",e[e.TypeArguments=53776]="TypeArguments",e[e.TypeParameters=53776]="TypeParameters",e[e.Parameters=2576]="Parameters",e[e.IndexSignatureParameters=8848]="IndexSignatureParameters",e[e.JSDocComment=33]="JSDocComment"}(e.ListFormat||(e.ListFormat={})),function(e){e[e.None=0]="None",e[e.TripleSlashXML=1]="TripleSlashXML",e[e.SingleLine=2]="SingleLine",e[e.MultiLine=4]="MultiLine",e[e.All=7]="All",e[e.Default=7]="Default"}(e.PragmaKindFlags||(e.PragmaKindFlags={})),e.commentPragmas={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}}}(d||(d={})),function(e){e.directorySeparator="/",e.altDirectorySeparator="\\";var t="://",r=/\\/g;function n(e){return 47===e||92===e}function a(e){return d(e)>0}function o(e){return 0!==d(e)}function s(e){return/^\.\.?($|[\\/])/.test(e)}function c(t,r){return t.length>r.length&&e.endsWith(t,r)}function l(e){return e.length>0&&n(e.charCodeAt(e.length-1))}function u(e){return e>=97&&e<=122||e>=65&&e<=90}function d(r){if(!r)return 0;var n=r.charCodeAt(0);if(47===n||92===n){if(r.charCodeAt(1)!==n)return 1;var i=r.indexOf(47===n?e.directorySeparator:e.altDirectorySeparator,2);return i<0?r.length:i+1}if(u(n)&&58===r.charCodeAt(1)){var a=r.charCodeAt(2);if(47===a||92===a)return 3;if(2===r.length)return 2}var o=r.indexOf(t);if(-1!==o){var s=o+t.length,c=r.indexOf(e.directorySeparator,s);if(-1!==c){var l=r.slice(0,o),d=r.slice(s,c);if("file"===l&&(""===d||"localhost"===d)&&u(r.charCodeAt(c+1))){var p=function(e,t){var r=e.charCodeAt(t);if(58===r)return t+1;if(37===r&&51===e.charCodeAt(t+1)){var n=e.charCodeAt(t+2);if(97===n||65===n)return t+3}return-1}(r,c+2);if(-1!==p){if(47===r.charCodeAt(p))return~(p+1);if(p===r.length)return~p}}return~(c+1)}return~r.length}return 0}function p(e){var t=d(e);return t<0?~t:t}function f(t){var r=p(t=v(t));return r===t.length?t:(t=w(t)).slice(0,Math.max(r,t.lastIndexOf(e.directorySeparator)))}function m(t,r,n){if(p(t=v(t))===t.length)return"";var i=(t=w(t)).slice(Math.max(p(t),t.lastIndexOf(e.directorySeparator)+1)),a=void 0!==r&&void 0!==n?_(i,r,n):void 0;return a?i.slice(0,i.length-a.length):i}function g(t,r,n){if(e.startsWith(r,".")||(r="."+r),t.length>=r.length&&46===t.charCodeAt(t.length-r.length)){var i=t.slice(t.length-r.length);if(n(i,r))return i}}function _(t,r,n){if(r)return function(e,t,r){if("string"==typeof t)return g(e,t,r)||"";for(var n=0,i=t;n<i.length;n++){var a=g(e,i[n],r);if(a)return a}return""}(w(t),r,n?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive);var i=m(t),a=i.lastIndexOf(".");return a>=0?i.substring(a):""}function h(t,r){return void 0===r&&(r=""),function(t,r){var n=t.substring(0,r),a=t.substring(r).split(e.directorySeparator);return a.length&&!e.lastOrUndefined(a)&&a.pop(),i([n],a)}(t=k(r,t),p(t))}function y(t){return 0===t.length?"":(t[0]&&T(t[0]))+t.slice(1).join(e.directorySeparator)}function v(t){return t.replace(r,e.directorySeparator)}function b(t){if(!e.some(t))return[];for(var r=[t[0]],n=1;n<t.length;n++){var i=t[n];if(i&&"."!==i){if(".."===i)if(r.length>1){if(".."!==r[r.length-1]){r.pop();continue}}else if(r[0])continue;r.push(i)}}return r}function k(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];e&&(e=v(e));for(var n=0,i=t;n<i.length;n++){var a=i[n];a&&(a=v(a),e=e&&0===p(a)?T(e)+a:a)}return e}function x(t){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return D(e.some(r)?k.apply(void 0,i([t],r)):v(t))}function E(e,t){return b(h(e,t))}function S(e,t){return y(E(e,t))}function D(e){var t=y(b(h(e=v(e))));return t&&l(e)?T(t):t}function w(e){return l(e)?e.substr(0,e.length-1):e}function T(t){return l(t)?t:t+e.directorySeparator}function C(e){return o(e)||s(e)?e:"./"+e}e.isAnyDirectorySeparator=n,e.isUrl=function(e){return d(e)<0},e.isRootedDiskPath=a,e.isDiskPathRoot=function(e){var t=d(e);return t>0&&t===e.length},e.pathIsAbsolute=o,e.pathIsRelative=s,e.pathIsBareSpecifier=function(e){return!o(e)&&!s(e)},e.hasExtension=function(t){return e.stringContains(m(t),".")},e.fileExtensionIs=c,e.fileExtensionIsOneOf=function(e,t){for(var r=0,n=t;r<n.length;r++){if(c(e,n[r]))return!0}return!1},e.hasTrailingDirectorySeparator=l,e.getRootLength=p,e.getDirectoryPath=f,e.getBaseFileName=m,e.getAnyExtensionFromPath=_,e.getPathComponents=h,e.getPathFromPathComponents=y,e.normalizeSlashes=v,e.reducePathComponents=b,e.combinePaths=k,e.resolvePath=x,e.getNormalizedPathComponents=E,e.getNormalizedAbsolutePath=S,e.normalizePath=D,e.getNormalizedAbsolutePathWithoutRoot=function(t,r){return function(t){return 0===t.length?"":t.slice(1).join(e.directorySeparator)}(E(t,r))},e.toPath=function(e,t,r){return r(a(e)?D(e):S(e,t))},e.normalizePathAndParts=function(t){var r=b(h(t=v(t))),n=r[0],i=r.slice(1);if(i.length){var a=n+i.join(e.directorySeparator);return{path:l(t)?T(a):a,parts:i}}return{path:n,parts:i}},e.removeTrailingDirectorySeparator=w,e.ensureTrailingDirectorySeparator=T,e.ensurePathIsNonModuleName=C,e.changeAnyExtension=function(t,r,n,i){var a=void 0!==n&&void 0!==i?_(t,n,i):_(t);return a?t.slice(0,t.length-a.length)+(e.startsWith(r,".")?r:"."+r):t};var A=/(^|\/)\.{0,2}($|\/)/;function N(t,r,n){if(t===r)return 0;if(void 0===t)return-1;if(void 0===r)return 1;var i=t.substring(0,p(t)),a=r.substring(0,p(r)),o=e.compareStringsCaseInsensitive(i,a);if(0!==o)return o;var s=t.substring(i.length),c=r.substring(a.length);if(!A.test(s)&&!A.test(c))return n(s,c);for(var l=b(h(t)),u=b(h(r)),d=Math.min(l.length,u.length),f=1;f<d;f++){var m=n(l[f],u[f]);if(0!==m)return m}return e.compareValues(l.length,u.length)}function P(t,r,n,a){var o,s=b(h(t)),c=b(h(r));for(o=0;o<s.length&&o<c.length;o++){var l=a(s[o]),u=a(c[o]);if(!(0===o?e.equateStringsCaseInsensitive:n)(l,u))break}if(0===o)return c;for(var d=c.slice(o),p=[];o<s.length;o++)p.push("..");return i(i([""],p),d)}function I(t,r,n){e.Debug.assert(p(t)>0==p(r)>0,"Paths must either both be absolute or both be relative");var i="function"==typeof n?n:e.identity;return y(P(t,r,"boolean"==typeof n&&n?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive,i))}function F(t,r,n,i,o){var s=P(x(n,t),x(n,r),e.equateStringsCaseSensitive,i),c=s[0];if(o&&a(c)){var l=c.charAt(0)===e.directorySeparator?"file://":"file:///";s[0]=l+c}return y(s)}e.comparePathsCaseSensitive=function(t,r){return N(t,r,e.compareStringsCaseSensitive)},e.comparePathsCaseInsensitive=function(t,r){return N(t,r,e.compareStringsCaseInsensitive)},e.comparePaths=function(t,r,n,i){return"string"==typeof n?(t=k(n,t),r=k(n,r)):"boolean"==typeof n&&(i=n),N(t,r,e.getStringComparer(i))},e.containsPath=function(t,r,n,i){if("string"==typeof n?(t=k(n,t),r=k(n,r)):"boolean"==typeof n&&(i=n),void 0===t||void 0===r)return!1;if(t===r)return!0;var a=b(h(t)),o=b(h(r));if(o.length<a.length)return!1;for(var s=i?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive,c=0;c<a.length;c++){if(!(0===c?e.equateStringsCaseInsensitive:s)(a[c],o[c]))return!1}return!0},e.startsWithDirectory=function(t,r,n){var i=n(t),a=n(r);return e.startsWith(i,a+"/")||e.startsWith(i,a+"\\")},e.getPathComponentsRelativeTo=P,e.getRelativePathFromDirectory=I,e.convertToRelativePath=function(e,t,r){return a(e)?F(t,e,t,r,!1):e},e.getRelativePathFromFile=function(e,t,r){return C(I(f(e),t,r))},e.getRelativePathToDirectoryOrUrl=F,e.forEachAncestorDirectory=function(e,t){for(;;){var r=t(e);if(void 0!==r)return r;var n=f(e);if(n===e)return;e=n}},e.isNodeModulesDirectory=function(t){return e.endsWith(t,"/node_modules")},e.isOHModulesDirectory=function(t){return e.endsWith(t,"/oh_modules")}}(d||(d={})),function(e){function t(e){for(var t=5381,r=0;r<e.length;r++)t=(t<<5)+t+e.charCodeAt(r);return t.toString()}var n,i;function o(e){var t;return(t={})[i.Low]=e.Low,t[i.Medium]=e.Medium,t[i.High]=e.High,t}e.generateDjb2Hash=t,e.setStackTraceLimit=function(){Error.stackTraceLimit<100&&(Error.stackTraceLimit=100)},function(e){e[e.Created=0]="Created",e[e.Changed=1]="Changed",e[e.Deleted=2]="Deleted"}(n=e.FileWatcherEventKind||(e.FileWatcherEventKind={})),function(e){e[e.High=2e3]="High",e[e.Medium=500]="Medium",e[e.Low=250]="Low"}(i=e.PollingInterval||(e.PollingInterval={})),e.missingFileModifiedTime=new Date(0);var s,c={Low:32,Medium:64,High:256},l=o(c);function u(t){if(t.getEnvironmentVariable){var r=function(e,t){var r=n(e);if(r)return i("Low"),i("Medium"),i("High"),!0;return!1;function i(e){t[e]=r[e]||t[e]}}("TSC_WATCH_POLLINGINTERVAL",i);l=s("TSC_WATCH_POLLINGCHUNKSIZE",c)||l,e.unchangedPollThresholds=s("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",c)||e.unchangedPollThresholds}function n(e){var r;return n("Low"),n("Medium"),n("High"),r;function n(n){var i=function(e,r){return t.getEnvironmentVariable(e+"_"+r.toUpperCase())}(e,n);i&&((r||(r={}))[n]=Number(i))}}function s(e,t){var i=n(e);return(r||i)&&o(i?a(a({},t),i):t)}}function d(t){var r=[],n=[],a=c(i.Low),o=c(i.Medium),s=c(i.High);return function(t,n,i){var a={fileName:t,callback:n,unchangedPolls:0,mtime:v(t)};return r.push(a),g(a,i),{close:function(){a.isClosed=!0,e.unorderedRemoveItem(r,a)}}};function c(e){var t=[];return t.pollingInterval=e,t.pollIndex=0,t.pollScheduled=!1,t}function u(t){t.pollIndex=p(t,t.pollingInterval,t.pollIndex,l[t.pollingInterval]),t.length?y(t.pollingInterval):(e.Debug.assert(0===t.pollIndex),t.pollScheduled=!1)}function d(e){p(n,i.Low,0,n.length),u(e),!e.pollScheduled&&n.length&&y(i.Low)}function p(t,r,a,o){for(var s=t.length,c=a,l=0;l<o&&s>0;p(),s--){var u=t[a];if(u)if(u.isClosed)t[a]=void 0;else{l++;var d=m(u,v(u.fileName));u.isClosed?t[a]=void 0:d?(u.unchangedPolls=0,t!==n&&(t[a]=void 0,_(u))):u.unchangedPolls!==e.unchangedPollThresholds[r]?u.unchangedPolls++:t===n?(u.unchangedPolls=1,t[a]=void 0,g(u,i.Low)):r!==i.High&&(u.unchangedPolls++,t[a]=void 0,g(u,r===i.Low?i.Medium:i.High)),t[a]&&(c<a&&(t[c]=u,t[a]=void 0),c++)}}return a;function p(){++a===t.length&&(c<a&&(t.length=c),a=0,c=0)}}function f(e){switch(e){case i.Low:return a;case i.Medium:return o;case i.High:return s}}function g(e,t){f(t).push(e),h(t)}function _(e){n.push(e),h(i.Low)}function h(e){f(e).pollScheduled||y(e)}function y(e){f(e).pollScheduled=t.setTimeout(e===i.Low?d:u,e,f(e))}function v(r){return t.getModifiedTime(r)||e.missingFileModifiedTime}}function p(t,r){var a=e.createMultiMap(),o=new e.Map,s=e.createGetCanonicalFileName(r);return function(r,c,l,u){var d=s(r);a.add(d,c);var p=e.getDirectoryPath(d)||".",f=o.get(p)||function(r,c,l){var u=t(r,1,(function(t,i){if(e.isString(i)){var o=e.getNormalizedAbsolutePath(i,r),c=o&&a.get(s(o));if(c)for(var l=0,u=c;l<u.length;l++){(0,u[l])(o,n.Changed)}}}),!1,i.Medium,l);return u.referenceCount=0,o.set(c,u),u}(e.getDirectoryPath(r)||".",p,u);return f.referenceCount++,{close:function(){1===f.referenceCount?(f.close(),o.delete(p)):f.referenceCount--,a.remove(d,c)}}}}function f(t,r){var n=new e.Map,i=e.createMultiMap(),a=e.createGetCanonicalFileName(r);return function(r,o,s,c){var l=a(r),u=n.get(l);return u?u.refCount++:n.set(l,{watcher:t(r,(function(t,r){return e.forEach(i.get(l),(function(e){return e(t,r)}))}),s,c),refCount:1}),i.add(l,o),{close:function(){var t=e.Debug.checkDefined(n.get(l));i.remove(l,o),t.refCount--,t.refCount||(n.delete(l),e.closeFileWatcherOf(t))}}}}function m(e,t){var r=e.mtime.getTime(),n=t.getTime();return r!==n&&(e.mtime=t,e.callback(e.fileName,g(r,n)),!0)}function g(e,t){return 0===e?n.Created:0===t?n.Deleted:n.Changed}function _(t){var r,n=t.watchDirectory,i=t.useCaseSensitiveFileNames,a=t.getCurrentDirectory,o=t.getAccessibleSortedChildDirectories,s=t.directoryExists,c=t.realpath,l=t.setTimeout,u=t.clearTimeout,d=new e.Map,p=e.createMultiMap(),f=new e.Map,m=e.getStringComparer(!i),g=e.createGetCanonicalFileName(i);return function(e,t,r,i){return r?_(e,i,t):n(e,t,r,i)};function _(t,i,a){var o=g(t),c=d.get(o);c?c.refCount++:(c={watcher:n(t,(function(e){x(e,i)||((null==i?void 0:i.synchronousWatchDirectory)?(h(o,e),k(t,o,i)):function(e,t,n,i){var a=d.get(t);if(a&&s(e))return void function(e,t,n,i){var a=f.get(t);a?a.fileNames.push(n):f.set(t,{dirName:e,options:i,fileNames:[n]});r&&(u(r),r=void 0);r=l(v,1e3)}(e,t,n,i);h(t,n),b(a)}(t,o,e,i))}),!1,i),refCount:1,childWatches:e.emptyArray},d.set(o,c),k(t,o,i));var m=a&&{dirName:t,callback:a};return m&&p.add(o,m),{dirName:t,close:function(){var t=e.Debug.checkDefined(d.get(o));m&&p.remove(o,m),t.refCount--,t.refCount||(d.delete(o),e.closeFileWatcherOf(t),t.childWatches.forEach(e.closeFileWatcher))}}}function h(t,r,n){var i,a;e.isString(r)?i=r:a=r,p.forEach((function(r,o){var s;if((!a||!0!==a.get(o))&&(o===t||e.startsWith(t,o)&&t[o.length]===e.directorySeparator))if(a)if(n){var c=a.get(o);c?(s=c).push.apply(s,n):a.set(o,n.slice())}else a.set(o,!0);else r.forEach((function(e){return(0,e.callback)(i)}))}))}function v(){r=void 0,e.sysLog("sysLog:: onTimerToUpdateChildWatches:: "+f.size);for(var t=e.timestamp(),n=new e.Map;!r&&f.size;){var i=f.entries().next();e.Debug.assert(!i.done);var a=i.value,o=a[0],s=a[1],c=s.dirName,l=s.options,u=s.fileNames;f.delete(o);var d=k(c,o,l);h(o,n,d?void 0:u)}e.sysLog("sysLog:: invokingWatchers:: Elapsed:: "+(e.timestamp()-t)+"ms:: "+f.size),p.forEach((function(t,r){var i=n.get(r);i&&t.forEach((function(t){var r=t.callback,n=t.dirName;e.isArray(i)?i.forEach(r):r(n)}))}));var m=e.timestamp()-t;e.sysLog("sysLog:: Elapsed:: "+m+"ms:: onTimerToUpdateChildWatches:: "+f.size+" "+r)}function b(t){if(t){var r=t.childWatches;t.childWatches=e.emptyArray;for(var n=0,i=r;n<i.length;n++){var a=i[n];a.close(),b(d.get(g(a.dirName)))}}}function k(t,r,n){var i,a=d.get(r);if(!a)return!1;var l=e.enumerateInsertsAndDeletes(s(t)?e.mapDefined(o(t),(function(r){var i=e.getNormalizedAbsolutePath(r,t);return x(i,n)||0!==m(i,e.normalizePath(c(i)))?void 0:i})):e.emptyArray,a.childWatches,(function(e,t){return m(e,t.dirName)}),(function(e){u(_(e,n))}),e.closeFileWatcher,u);return a.childWatches=i||e.emptyArray,l;function u(e){(i||(i=[])).push(e)}}function x(t,r){return e.some(e.ignoredPaths,(function(r){return function(t,r){return!!e.stringContains(t,r)||!i&&e.stringContains(g(t),r)}(t,r)}))||y(t,r,i,a)}}function h(e){return function(t,r){return e(r===n.Changed?"change":"rename","")}}function y(t,r,n,i){return((null==r?void 0:r.excludeDirectories)||(null==r?void 0:r.excludeFiles))&&(e.matchesExclude(t,null==r?void 0:r.excludeFiles,n,i())||e.matchesExclude(t,null==r?void 0:r.excludeDirectories,n,i()))}function v(t,r,n,i,a){return function(o,s){if("rename"===o){var c=s?e.normalizePath(e.combinePaths(t,s)):t;s&&y(c,n,i,a)||r(c)}}}function b(t){var r,a,o,s=t.pollingWatchFile,c=t.getModifiedTime,l=t.setTimeout,u=t.clearTimeout,f=t.fsWatch,m=t.fileExists,g=t.useCaseSensitiveFileNames,h=t.getCurrentDirectory,y=t.fsSupportsRecursiveFsWatch,b=t.directoryExists,k=t.getAccessibleSortedChildDirectories,x=t.realpath,E=t.tscWatchFile,S=t.useNonPollingWatchers,D=t.tscWatchDirectory;return{watchFile:function(t,r,o,c){c=function(t,r){if(t&&void 0!==t.watchFile)return t;switch(E){case"PriorityPollingInterval":return{watchFile:e.WatchFileKind.PriorityPollingInterval};case"DynamicPriorityPolling":return{watchFile:e.WatchFileKind.DynamicPriorityPolling};case"UseFsEvents":return T(e.WatchFileKind.UseFsEvents,e.PollingWatchKind.PriorityInterval,t);case"UseFsEventsWithFallbackDynamicPolling":return T(e.WatchFileKind.UseFsEvents,e.PollingWatchKind.DynamicPriority,t);case"UseFsEventsOnParentDirectory":r=!0;default:return r?T(e.WatchFileKind.UseFsEventsOnParentDirectory,e.PollingWatchKind.PriorityInterval,t):{watchFile:e.WatchFileKind.FixedPollingInterval}}}(c,S);var l=e.Debug.checkDefined(c.watchFile);switch(l){case e.WatchFileKind.FixedPollingInterval:return s(t,r,i.Low,void 0);case e.WatchFileKind.PriorityPollingInterval:return s(t,r,o,void 0);case e.WatchFileKind.DynamicPriorityPolling:return w()(t,r,o,void 0);case e.WatchFileKind.UseFsEvents:return f(t,0,function(e,t,r){return function(i){t(e,"rename"===i?r(e)?n.Created:n.Deleted:n.Changed)}}(t,r,m),!1,o,e.getFallbackOptions(c));case e.WatchFileKind.UseFsEventsOnParentDirectory:return a||(a=p(f,g)),a(t,r,o,e.getFallbackOptions(c));default:e.Debug.assertNever(l)}},watchDirectory:function(t,r,n,a){if(y)return f(t,1,v(t,r,a,g,h),n,i.Medium,e.getFallbackOptions(a));o||(o=_({useCaseSensitiveFileNames:g,getCurrentDirectory:h,directoryExists:b,getAccessibleSortedChildDirectories:k,watchDirectory:C,realpath:x,setTimeout:l,clearTimeout:u}));return o(t,r,n,a)}};function w(){return r||(r=d({getModifiedTime:c,setTimeout:l}))}function T(e,t,r){var n=null==r?void 0:r.fallbackPolling;return{watchFile:e,fallbackPolling:void 0===n?t:n}}function C(t,r,n,a){e.Debug.assert(!n);var o=function(t){if(t&&void 0!==t.watchDirectory)return t;switch(D){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:e.WatchDirectoryKind.FixedPollingInterval};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:e.WatchDirectoryKind.DynamicPriorityPolling};default:var r=null==t?void 0:t.fallbackPolling;return{watchDirectory:e.WatchDirectoryKind.UseFsEvents,fallbackPolling:void 0!==r?r:void 0}}}(a),c=e.Debug.checkDefined(o.watchDirectory);switch(c){case e.WatchDirectoryKind.FixedPollingInterval:return s(t,(function(){return r(t)}),i.Medium,void 0);case e.WatchDirectoryKind.DynamicPriorityPolling:return w()(t,(function(){return r(t)}),i.Medium,void 0);case e.WatchDirectoryKind.UseFsEvents:return f(t,1,v(t,r,a,g,h),n,i.Medium,e.getFallbackOptions(o));default:e.Debug.assertNever(c)}}}function k(t){var r=t.writeFile;t.writeFile=function(n,i,a){return e.writeFileEnsuringDirectories(n,i,!!a,(function(e,n,i){return r.call(t,e,n,i)}),(function(e){return t.createDirectory(e)}),(function(e){return t.directoryExists(e)}))}}function x(){if("undefined"!=typeof process){var e=process.version;if(e){var t=e.indexOf(".");if(-1!==t)return parseInt(e.substring(1,t))}}}e.unchangedPollThresholds=o(c),e.setCustomPollingValues=u,e.createDynamicPriorityPollingWatchFile=d,e.createSingleFileWatcherPerName=f,e.onWatchedFileStat=m,e.getFileWatcherEventKind=g,e.ignoredPaths=["/node_modules/.","/.git","/.#"],e.sysLog=e.noop,e.setSysLog=function(t){e.sysLog=t},e.createDirectoryWatcherSupportingRecursive=_,function(e){e[e.File=0]="File",e[e.Directory=1]="Directory"}(e.FileSystemEntryKind||(e.FileSystemEntryKind={})),e.createFileWatcherCallback=h,e.createSystemWatchFunctions=b,e.patchWriteFileEnsuringDirectory=k,e.getNodeMajorVersion=x,e.sys=("undefined"!=typeof process&&process.nextTick&&!process.browser&&(s=function(){var i,a,o,s=/^native |^\([^)]+\)$|^(internal[\\/]|[a-zA-Z0-9_\s]+(\.js)?$)/,c=r(57147),l=r(71017),u=r(22037);try{a=r(6113)}catch(e){a=void 0}var d,p="./profile.cpuprofile",m=null!==(i=c.realpathSync.native)&&void 0!==i?i:c.realpathSync,g=r(14300).Buffer,_=x()>=4,y="linux"===process.platform||"darwin"===process.platform,v=u.platform(),k="win32"!==v&&"win64"!==v&&!O((d=__filename,d.replace(/\w/g,(function(e){var t=e.toUpperCase();return e===t?e.toLowerCase():t})))),E=_&&("win32"===process.platform||"darwin"===process.platform),S=e.memoize((function(){return process.cwd()})),D=b({pollingWatchFile:f((function(e,t,r){var i;return c.watchFile(e,{persistent:!0,interval:r},a),{close:function(){return c.unwatchFile(e,a)}};function a(r,a){var o=0==+a.mtime||i===n.Deleted;if(0==+r.mtime){if(o)return;i=n.Deleted}else if(o)i=n.Created;else{if(+r.mtime==+a.mtime)return;i=n.Changed}t(e,i)}}),k),getModifiedTime:L,setTimeout,clearTimeout,fsWatch:function(t,r,i,a,o,s){var l,u,d;y&&(u=t.substr(t.lastIndexOf(e.directorySeparator)),d=u.slice(e.directorySeparator.length));var p=F(t,r)?m():_();return{close:function(){p.close(),p=void 0}};function f(r){e.sysLog("sysLog:: "+t+":: Changing watcher to "+(r===m?"Present":"Missing")+"FileSystemEntryWatcher"),i("rename",""),p&&(p.close(),p=r())}function m(){void 0===l&&(l=E?{persistent:!0,recursive:!!a}:{persistent:!0});try{var r=c.watch(t,l,y?g:i);return r.on("error",(function(){return f(_)})),r}catch(r){return e.sysLog("sysLog:: "+t+":: Changing to fsWatchFile"),w(t,h(i),o,s)}}function g(e,n){return"rename"!==e||n&&n!==d&&(-1===n.lastIndexOf(u)||n.lastIndexOf(u)!==n.length-u.length)||F(t,r)?i(e,n):f(_)}function _(){return w(t,(function(e,i){i===n.Created&&F(t,r)&&f(m)}),o,s)}},useCaseSensitiveFileNames:k,getCurrentDirectory:S,fileExists:O,fsSupportsRecursiveFsWatch:E,directoryExists:R,getAccessibleSortedChildDirectories:function(e){return I(e).directories},realpath:M,tscWatchFile:process.env.TSC_WATCHFILE,useNonPollingWatchers:process.env.TSC_NONPOLLING_WATCHER,tscWatchDirectory:process.env.TSC_WATCHDIRECTORY}),w=D.watchFile,T=D.watchDirectory,C={args:process.argv.slice(2),newLine:u.EOL,useCaseSensitiveFileNames:k,write:function(e){process.stdout.write(e)},writeOutputIsTTY:function(){return process.stdout.isTTY},readFile:function(t,r){e.perfLogger.logStartReadFile(t);var n=function(e,t){var r;try{r=c.readFileSync(e)}catch(e){return}var n=r.length;if(n>=2&&254===r[0]&&255===r[1]){n&=-2;for(var i=0;i<n;i+=2){var a=r[i];r[i]=r[i+1],r[i+1]=a}return r.toString("utf16le",2)}return n>=2&&255===r[0]&&254===r[1]?r.toString("utf16le",2):n>=3&&239===r[0]&&187===r[1]&&191===r[2]?r.toString("utf8",3):r.toString("utf8")}(t);return e.perfLogger.logStopReadFile(),n},writeFile:function(t,r,n){var i;e.perfLogger.logEvent("WriteFile: "+t),n&&(r="\ufeff"+r);try{i=c.openSync(t,"w"),c.writeSync(i,r,void 0,"utf8")}finally{void 0!==i&&c.closeSync(i)}},watchFile:w,watchDirectory:T,resolvePath:function(e){return l.resolve(e)},fileExists:O,directoryExists:R,createDirectory:function(e){if(!C.directoryExists(e))try{c.mkdirSync(e)}catch(e){if("EEXIST"!==e.code)throw e}},getExecutingFilePath:function(){return __filename},getCurrentDirectory:S,getDirectories:function(e){return I(e).directories.slice()},getEnvironmentVariable:function(e){return process.env[e]||""},readDirectory:function(t,r,n,i,a){return e.matchFiles(t,r,n,i,k,process.cwd(),a,I,M)},getModifiedTime:L,setModifiedTime:function(e,t){try{c.utimesSync(e,t,t)}catch(e){return}},deleteFile:function(e){try{return c.unlinkSync(e)}catch(e){return}},createHash:a?j:t,createSHA256Hash:a?j:void 0,getMemoryUsage:function(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize:function(e){try{var t=A(e);if(null==t?void 0:t.isFile())return t.size}catch(e){}return 0},exit:function(e){N((function(){return process.exit(e)}))},enableCPUProfiler:function(e,t){if(o)return t(),!1;var n=r(31405);if(!n||!n.Session)return t(),!1;var i=new n.Session;return i.connect(),i.post("Profiler.enable",(function(){i.post("Profiler.start",(function(){o=i,p=e,t()}))})),!0},disableCPUProfiler:N,cpuProfilingEnabled:function(){return!!o||e.contains(process.execArgv,"--cpu-prof")||e.contains(process.execArgv,"--prof")},realpath:M,debugMode:!!process.env.NODE_INSPECTOR_IPC||!!process.env.VSCODE_INSPECTOR_OPTIONS||e.some(process.execArgv,(function(e){return/^--(inspect|debug)(-brk)?(=\d+)?$/i.test(e)})),tryEnableSourceMapsForHost:function(){try{r(76252).install()}catch(e){}},setTimeout,clearTimeout,clearScreen:function(){process.stdout.write("c")},setBlocking:function(){process.stdout&&process.stdout._handle&&process.stdout._handle.setBlocking&&process.stdout._handle.setBlocking(!0)},bufferFrom:P,base64decode:function(e){return P(e,"base64").toString("utf8")},base64encode:function(e){return P(e).toString("base64")},require:function(t,n){try{var i=e.resolveJSModule(n,t,C);return{module:r(13411)(i),modulePath:i,error:void 0}}catch(e){return{module:void 0,modulePath:void 0,error:e}}}};return C;function A(e){return c.statSync(e,{throwIfNoEntry:!1})}function N(t){if(o&&"stopping"!==o){var r=o;return o.post("Profiler.stop",(function(n,i){var a,u=i.profile;if(!n){try{(null===(a=A(p))||void 0===a?void 0:a.isDirectory())&&(p=l.join(p,(new Date).toISOString().replace(/:/g,"-")+"+P"+process.pid+".cpuprofile"))}catch(e){}try{c.mkdirSync(l.dirname(p),{recursive:!0})}catch(e){}c.writeFileSync(p,JSON.stringify(function(t){for(var r=0,n=new e.Map,i=e.normalizeSlashes(__dirname),a="file://"+(1===e.getRootLength(i)?"":"/")+i,o=0,c=t.nodes;o<c.length;o++){var l=c[o];if(l.callFrame.url){var u=e.normalizeSlashes(l.callFrame.url);e.containsPath(a,u,k)?l.callFrame.url=e.getRelativePathToDirectoryOrUrl(a,u,a,e.createGetCanonicalFileName(k),!0):s.test(u)||(l.callFrame.url=(n.has(u)?n:n.set(u,"external"+r+".js")).get(u),r++)}}return t}(u)))}o=void 0,r.disconnect(),t()})),o="stopping",!0}return t(),!1}function P(e,t){return g.from&&g.from!==Int8Array.from?g.from(e,t):new g(e,t)}function I(t){e.perfLogger.logEvent("ReadDir: "+(t||"."));try{for(var r=c.readdirSync(t||".",{withFileTypes:!0}),n=[],i=[],a=0,o=r;a<o.length;a++){var s=o[a],l="string"==typeof s?s:s.name;if("."!==l&&".."!==l){var u=void 0;if("string"==typeof s||s.isSymbolicLink()){var d=e.combinePaths(t,l);try{if(!(u=A(d)))continue}catch(e){continue}}else u=s;u.isFile()?n.push(l):u.isDirectory()&&i.push(l)}}return n.sort(),i.sort(),{files:n,directories:i}}catch(t){return e.emptyFileSystemEntries}}function F(e,t){var r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{var n=A(e);if(!n)return!1;switch(t){case 0:return n.isFile();case 1:return n.isDirectory();default:return!1}}catch(e){return!1}finally{Error.stackTraceLimit=r}}function O(e){return F(e,0)}function R(e){return F(e,1)}function M(e){try{return m(e)}catch(t){return e}}function L(e){var t;try{return null===(t=A(e))||void 0===t?void 0:t.mtime}catch(e){return}}function j(e){var t=a.createHash("sha256");return t.update(e),t.digest("hex")}}()),s&&k(s),s),e.sys&&e.sys.getEnvironmentVariable&&(u(e.sys),e.Debug.setAssertionLevel(/^development$/i.test(e.sys.getEnvironmentVariable("NODE_ENV"))?1:0)),e.sys&&e.sys.debugMode&&(e.Debug.isDebugging=!0)}(d||(d={})),function(e){function t(e,t,r,n,i,a,o){return{code:e,category:t,key:r,message:n,reportsUnnecessary:i,elidedInCompatabilityPyramid:a,reportsDeprecated:o}}e.Diagnostics={Unterminated_string_literal:t(1002,e.DiagnosticCategory.Error,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:t(1003,e.DiagnosticCategory.Error,"Identifier_expected_1003","Identifier expected."),_0_expected:t(1005,e.DiagnosticCategory.Error,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:t(1006,e.DiagnosticCategory.Error,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_to_match_the_token_here:t(1007,e.DiagnosticCategory.Error,"The_parser_expected_to_find_a_to_match_the_token_here_1007","The parser expected to find a '}' to match the '{' token here."),Trailing_comma_not_allowed:t(1009,e.DiagnosticCategory.Error,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:t(1010,e.DiagnosticCategory.Error,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:t(1011,e.DiagnosticCategory.Error,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:t(1012,e.DiagnosticCategory.Error,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:t(1013,e.DiagnosticCategory.Error,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:t(1014,e.DiagnosticCategory.Error,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:t(1015,e.DiagnosticCategory.Error,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:t(1016,e.DiagnosticCategory.Error,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:t(1017,e.DiagnosticCategory.Error,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:t(1018,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:t(1019,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:t(1020,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:t(1021,e.DiagnosticCategory.Error,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:t(1022,e.DiagnosticCategory.Error,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),An_index_signature_parameter_type_must_be_either_string_or_number:t(1023,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_must_be_either_string_or_number_1023","An index signature parameter type must be either 'string' or 'number'."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:t(1024,e.DiagnosticCategory.Error,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:t(1025,e.DiagnosticCategory.Error,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:t(1028,e.DiagnosticCategory.Error,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:t(1029,e.DiagnosticCategory.Error,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:t(1030,e.DiagnosticCategory.Error,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:t(1031,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:t(1034,e.DiagnosticCategory.Error,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:t(1035,e.DiagnosticCategory.Error,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:t(1036,e.DiagnosticCategory.Error,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:t(1038,e.DiagnosticCategory.Error,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:t(1039,e.DiagnosticCategory.Error,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:t(1040,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_with_a_class_declaration:t(1041,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_a_class_declaration_1041","'{0}' modifier cannot be used with a class declaration."),_0_modifier_cannot_be_used_here:t(1042,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_data_property:t(1043,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_data_property_1043","'{0}' modifier cannot appear on a data property."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:t(1044,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),A_0_modifier_cannot_be_used_with_an_interface_declaration:t(1045,e.DiagnosticCategory.Error,"A_0_modifier_cannot_be_used_with_an_interface_declaration_1045","A '{0}' modifier cannot be used with an interface declaration."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:t(1046,e.DiagnosticCategory.Error,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:t(1047,e.DiagnosticCategory.Error,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:t(1048,e.DiagnosticCategory.Error,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:t(1049,e.DiagnosticCategory.Error,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:t(1051,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:t(1052,e.DiagnosticCategory.Error,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:t(1053,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:t(1054,e.DiagnosticCategory.Error,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:t(1055,e.DiagnosticCategory.Error,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Prom_1055","Type '{0}' is not a valid async function return type in ES5/ES3 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:t(1056,e.DiagnosticCategory.Error,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),An_async_function_or_method_must_have_a_valid_awaitable_return_type:t(1057,e.DiagnosticCategory.Error,"An_async_function_or_method_must_have_a_valid_awaitable_return_type_1057","An async function or method must have a valid awaitable return type."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1058,e.DiagnosticCategory.Error,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:t(1059,e.DiagnosticCategory.Error,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:t(1060,e.DiagnosticCategory.Error,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:t(1061,e.DiagnosticCategory.Error,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:t(1062,e.DiagnosticCategory.Error,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:t(1063,e.DiagnosticCategory.Error,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:t(1064,e.DiagnosticCategory.Error,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise<T> type. Did you mean to write 'Promise<{0}>'?"),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:t(1066,e.DiagnosticCategory.Error,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:t(1068,e.DiagnosticCategory.Error,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:t(1069,e.DiagnosticCategory.Error,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:t(1070,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:t(1071,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:t(1079,e.DiagnosticCategory.Error,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:t(1084,e.DiagnosticCategory.Error,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:t(1085,e.DiagnosticCategory.Error,"Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0_1085","Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '{0}'."),_0_modifier_cannot_appear_on_a_constructor_declaration:t(1089,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:t(1090,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:t(1091,e.DiagnosticCategory.Error,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:t(1092,e.DiagnosticCategory.Error,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:t(1093,e.DiagnosticCategory.Error,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:t(1094,e.DiagnosticCategory.Error,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:t(1095,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:t(1096,e.DiagnosticCategory.Error,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:t(1097,e.DiagnosticCategory.Error,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:t(1098,e.DiagnosticCategory.Error,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:t(1099,e.DiagnosticCategory.Error,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:t(1100,e.DiagnosticCategory.Error,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:t(1101,e.DiagnosticCategory.Error,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:t(1102,e.DiagnosticCategory.Error,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:t(1103,e.DiagnosticCategory.Error,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:t(1104,e.DiagnosticCategory.Error,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:t(1105,e.DiagnosticCategory.Error,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),Jump_target_cannot_cross_function_boundary:t(1107,e.DiagnosticCategory.Error,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:t(1108,e.DiagnosticCategory.Error,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:t(1109,e.DiagnosticCategory.Error,"Expression_expected_1109","Expression expected."),Type_expected:t(1110,e.DiagnosticCategory.Error,"Type_expected_1110","Type expected."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:t(1113,e.DiagnosticCategory.Error,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:t(1114,e.DiagnosticCategory.Error,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:t(1115,e.DiagnosticCategory.Error,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:t(1116,e.DiagnosticCategory.Error,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode:t(1117,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode_1117","An object literal cannot have multiple properties with the same name in strict mode."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:t(1118,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:t(1119,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:t(1120,e.DiagnosticCategory.Error,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_in_strict_mode:t(1121,e.DiagnosticCategory.Error,"Octal_literals_are_not_allowed_in_strict_mode_1121","Octal literals are not allowed in strict mode."),Variable_declaration_list_cannot_be_empty:t(1123,e.DiagnosticCategory.Error,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:t(1124,e.DiagnosticCategory.Error,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:t(1125,e.DiagnosticCategory.Error,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:t(1126,e.DiagnosticCategory.Error,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:t(1127,e.DiagnosticCategory.Error,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:t(1128,e.DiagnosticCategory.Error,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:t(1129,e.DiagnosticCategory.Error,"Statement_expected_1129","Statement expected."),case_or_default_expected:t(1130,e.DiagnosticCategory.Error,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:t(1131,e.DiagnosticCategory.Error,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:t(1132,e.DiagnosticCategory.Error,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:t(1134,e.DiagnosticCategory.Error,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:t(1135,e.DiagnosticCategory.Error,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:t(1136,e.DiagnosticCategory.Error,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:t(1137,e.DiagnosticCategory.Error,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:t(1138,e.DiagnosticCategory.Error,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:t(1139,e.DiagnosticCategory.Error,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:t(1140,e.DiagnosticCategory.Error,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:t(1141,e.DiagnosticCategory.Error,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:t(1142,e.DiagnosticCategory.Error,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:t(1144,e.DiagnosticCategory.Error,"or_expected_1144","'{' or ';' expected."),Declaration_expected:t(1146,e.DiagnosticCategory.Error,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:t(1147,e.DiagnosticCategory.Error,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:t(1148,e.DiagnosticCategory.Error,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:t(1149,e.DiagnosticCategory.Error,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),const_declarations_must_be_initialized:t(1155,e.DiagnosticCategory.Error,"const_declarations_must_be_initialized_1155","'const' declarations must be initialized."),const_declarations_can_only_be_declared_inside_a_block:t(1156,e.DiagnosticCategory.Error,"const_declarations_can_only_be_declared_inside_a_block_1156","'const' declarations can only be declared inside a block."),let_declarations_can_only_be_declared_inside_a_block:t(1157,e.DiagnosticCategory.Error,"let_declarations_can_only_be_declared_inside_a_block_1157","'let' declarations can only be declared inside a block."),Unterminated_template_literal:t(1160,e.DiagnosticCategory.Error,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:t(1161,e.DiagnosticCategory.Error,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:t(1162,e.DiagnosticCategory.Error,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:t(1163,e.DiagnosticCategory.Error,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:t(1164,e.DiagnosticCategory.Error,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1165,e.DiagnosticCategory.Error,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1166,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_1166","A computed property name in a class property declaration must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1168,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1169,e.DiagnosticCategory.Error,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:t(1170,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:t(1171,e.DiagnosticCategory.Error,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:t(1172,e.DiagnosticCategory.Error,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:t(1173,e.DiagnosticCategory.Error,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:t(1174,e.DiagnosticCategory.Error,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:t(1175,e.DiagnosticCategory.Error,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:t(1176,e.DiagnosticCategory.Error,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:t(1177,e.DiagnosticCategory.Error,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:t(1178,e.DiagnosticCategory.Error,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:t(1179,e.DiagnosticCategory.Error,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:t(1180,e.DiagnosticCategory.Error,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:t(1181,e.DiagnosticCategory.Error,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:t(1182,e.DiagnosticCategory.Error,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:t(1183,e.DiagnosticCategory.Error,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:t(1184,e.DiagnosticCategory.Error,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:t(1185,e.DiagnosticCategory.Error,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:t(1186,e.DiagnosticCategory.Error,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:t(1187,e.DiagnosticCategory.Error,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:t(1188,e.DiagnosticCategory.Error,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:t(1189,e.DiagnosticCategory.Error,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:t(1190,e.DiagnosticCategory.Error,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:t(1191,e.DiagnosticCategory.Error,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:t(1192,e.DiagnosticCategory.Error,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:t(1193,e.DiagnosticCategory.Error,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:t(1194,e.DiagnosticCategory.Error,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:t(1195,e.DiagnosticCategory.Error,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:t(1196,e.DiagnosticCategory.Error,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:t(1197,e.DiagnosticCategory.Error,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:t(1198,e.DiagnosticCategory.Error,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:t(1199,e.DiagnosticCategory.Error,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:t(1200,e.DiagnosticCategory.Error,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:t(1202,e.DiagnosticCategory.Error,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202","Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from \"mod\"', 'import {a} from \"mod\"', 'import d from \"mod\"', or another module format instead."),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:t(1203,e.DiagnosticCategory.Error,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type:t(1205,e.DiagnosticCategory.Error,"Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type_1205","Re-exporting a type when the '--isolatedModules' flag is provided requires using 'export type'."),Decorators_are_not_valid_here:t(1206,e.DiagnosticCategory.Error,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:t(1207,e.DiagnosticCategory.Error,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),_0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_import_export_or_an_empty_export_statement_to_make_it_a_module:t(1208,e.DiagnosticCategory.Error,"_0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_imp_1208","'{0}' cannot be compiled under '--isolatedModules' because it is considered a global script file. Add an import, export, or an empty 'export {}' statement to make it a module."),Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode:t(1210,e.DiagnosticCategory.Error,"Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode_1210","Invalid use of '{0}'. Class definitions are automatically in strict mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:t(1211,e.DiagnosticCategory.Error,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:t(1212,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:t(1213,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:t(1214,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:t(1215,e.DiagnosticCategory.Error,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:t(1216,e.DiagnosticCategory.Error,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:t(1218,e.DiagnosticCategory.Error,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning:t(1219,e.DiagnosticCategory.Error,"Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_t_1219","Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option in your 'tsconfig' or 'jsconfig' to remove this warning."),Generators_are_only_available_when_targeting_ECMAScript_2015_or_higher:t(1220,e.DiagnosticCategory.Error,"Generators_are_only_available_when_targeting_ECMAScript_2015_or_higher_1220","Generators are only available when targeting ECMAScript 2015 or higher."),Generators_are_not_allowed_in_an_ambient_context:t(1221,e.DiagnosticCategory.Error,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:t(1222,e.DiagnosticCategory.Error,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:t(1223,e.DiagnosticCategory.Error,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:t(1224,e.DiagnosticCategory.Error,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:t(1225,e.DiagnosticCategory.Error,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:t(1226,e.DiagnosticCategory.Error,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:t(1227,e.DiagnosticCategory.Error,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:t(1228,e.DiagnosticCategory.Error,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:t(1229,e.DiagnosticCategory.Error,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:t(1230,e.DiagnosticCategory.Error,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_can_only_be_used_in_a_module:t(1231,e.DiagnosticCategory.Error,"An_export_assignment_can_only_be_used_in_a_module_1231","An export assignment can only be used in a module."),An_import_declaration_can_only_be_used_in_a_namespace_or_module:t(1232,e.DiagnosticCategory.Error,"An_import_declaration_can_only_be_used_in_a_namespace_or_module_1232","An import declaration can only be used in a namespace or module."),An_export_declaration_can_only_be_used_in_a_module:t(1233,e.DiagnosticCategory.Error,"An_export_declaration_can_only_be_used_in_a_module_1233","An export declaration can only be used in a module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:t(1234,e.DiagnosticCategory.Error,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_in_a_namespace_or_module:t(1235,e.DiagnosticCategory.Error,"A_namespace_declaration_is_only_allowed_in_a_namespace_or_module_1235","A namespace declaration is only allowed in a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:t(1236,e.DiagnosticCategory.Error,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:t(1237,e.DiagnosticCategory.Error,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:t(1238,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:t(1239,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:t(1240,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:t(1241,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:t(1242,e.DiagnosticCategory.Error,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:t(1243,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:t(1244,e.DiagnosticCategory.Error,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:t(1245,e.DiagnosticCategory.Error,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:t(1246,e.DiagnosticCategory.Error,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:t(1247,e.DiagnosticCategory.Error,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:t(1248,e.DiagnosticCategory.Error,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:t(1249,e.DiagnosticCategory.Error,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5:t(1250,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:t(1251,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_d_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:t(1252,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Modules are automatically in strict mode."),_0_tag_cannot_be_used_independently_as_a_top_level_JSDoc_tag:t(1253,e.DiagnosticCategory.Error,"_0_tag_cannot_be_used_independently_as_a_top_level_JSDoc_tag_1253","'{0}' tag cannot be used independently as a top level JSDoc tag."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:t(1254,e.DiagnosticCategory.Error,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:t(1255,e.DiagnosticCategory.Error,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:t(1257,e.DiagnosticCategory.Error,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),Module_0_can_only_be_default_imported_using_the_1_flag:t(1259,e.DiagnosticCategory.Error,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:t(1260,e.DiagnosticCategory.Error,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:t(1261,e.DiagnosticCategory.Error,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:t(1262,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:t(1263,e.DiagnosticCategory.Error,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:t(1264,e.DiagnosticCategory.Error,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:t(1265,e.DiagnosticCategory.Error,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:t(1266,e.DiagnosticCategory.Error,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),with_statements_are_not_allowed_in_an_async_function_block:t(1300,e.DiagnosticCategory.Error,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:t(1308,e.DiagnosticCategory.Error,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:t(1312,e.DiagnosticCategory.Error,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:t(1313,e.DiagnosticCategory.Error,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:t(1314,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:t(1315,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:t(1316,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:t(1317,e.DiagnosticCategory.Error,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:t(1318,e.DiagnosticCategory.Error,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:t(1319,e.DiagnosticCategory.Error,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1320,e.DiagnosticCategory.Error,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1321,e.DiagnosticCategory.Error,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:t(1322,e.DiagnosticCategory.Error,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_esnext_commonjs_amd_system_or_umd:t(1323,e.DiagnosticCategory.Error,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_esnext_commonjs_amd_system__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'esnext', 'commonjs', 'amd', 'system', or 'umd'."),Dynamic_import_must_have_one_specifier_as_an_argument:t(1324,e.DiagnosticCategory.Error,"Dynamic_import_must_have_one_specifier_as_an_argument_1324","Dynamic import must have one specifier as an argument."),Specifier_of_dynamic_import_cannot_be_spread_element:t(1325,e.DiagnosticCategory.Error,"Specifier_of_dynamic_import_cannot_be_spread_element_1325","Specifier of dynamic import cannot be spread element."),Dynamic_import_cannot_have_type_arguments:t(1326,e.DiagnosticCategory.Error,"Dynamic_import_cannot_have_type_arguments_1326","Dynamic import cannot have type arguments."),String_literal_with_double_quotes_expected:t(1327,e.DiagnosticCategory.Error,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:t(1328,e.DiagnosticCategory.Error,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:t(1329,e.DiagnosticCategory.Error,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:t(1330,e.DiagnosticCategory.Error,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:t(1331,e.DiagnosticCategory.Error,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:t(1332,e.DiagnosticCategory.Error,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:t(1333,e.DiagnosticCategory.Error,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:t(1334,e.DiagnosticCategory.Error,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:t(1335,e.DiagnosticCategory.Error,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead:t(1336,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead_1336","An index signature parameter type cannot be a type alias. Consider writing '[{0}: {1}]: {2}' instead."),An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead:t(1337,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead_1337","An index signature parameter type cannot be a union type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:t(1338,e.DiagnosticCategory.Error,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:t(1339,e.DiagnosticCategory.Error,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:t(1340,e.DiagnosticCategory.Error,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Type_arguments_cannot_be_used_here:t(1342,e.DiagnosticCategory.Error,"Type_arguments_cannot_be_used_here_1342","Type arguments cannot be used here."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_esnext_or_system:t(1343,e.DiagnosticCategory.Error,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_esnext_or_system_1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'esnext', or 'system'."),A_label_is_not_allowed_here:t(1344,e.DiagnosticCategory.Error,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:t(1345,e.DiagnosticCategory.Error,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:t(1346,e.DiagnosticCategory.Error,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:t(1347,e.DiagnosticCategory.Error,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:t(1348,e.DiagnosticCategory.Error,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:t(1349,e.DiagnosticCategory.Error,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:t(1350,e.DiagnosticCategory.Message,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:t(1351,e.DiagnosticCategory.Error,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:t(1352,e.DiagnosticCategory.Error,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:t(1353,e.DiagnosticCategory.Error,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:t(1354,e.DiagnosticCategory.Error,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:t(1355,e.DiagnosticCategory.Error,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:t(1356,e.DiagnosticCategory.Error,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:t(1357,e.DiagnosticCategory.Error,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:t(1358,e.DiagnosticCategory.Error,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:t(1359,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Did_you_mean_to_parenthesize_this_function_type:t(1360,e.DiagnosticCategory.Error,"Did_you_mean_to_parenthesize_this_function_type_1360","Did you mean to parenthesize this function type?"),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:t(1361,e.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:t(1362,e.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:t(1363,e.DiagnosticCategory.Error,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:t(1364,e.DiagnosticCategory.Message,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:t(1365,e.DiagnosticCategory.Message,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:t(1366,e.DiagnosticCategory.Message,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:t(1367,e.DiagnosticCategory.Message,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:t(1368,e.DiagnosticCategory.Message,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_1368","Specify emit/checking behavior for imports that are only used for types"),Did_you_mean_0:t(1369,e.DiagnosticCategory.Message,"Did_you_mean_0_1369","Did you mean '{0}'?"),This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error:t(1371,e.DiagnosticCategory.Error,"This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set__1371","This import is never used as a value and must use 'import type' because 'importsNotUsedAsValues' is set to 'error'."),Convert_to_type_only_import:t(1373,e.DiagnosticCategory.Message,"Convert_to_type_only_import_1373","Convert to type-only import"),Convert_all_imports_not_used_as_a_value_to_type_only_imports:t(1374,e.DiagnosticCategory.Message,"Convert_all_imports_not_used_as_a_value_to_type_only_imports_1374","Convert all imports not used as a value to type-only imports"),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:t(1375,e.DiagnosticCategory.Error,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:t(1376,e.DiagnosticCategory.Message,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:t(1377,e.DiagnosticCategory.Message,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher:t(1378,e.DiagnosticCategory.Error,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_t_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'esnext' or 'system', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:t(1379,e.DiagnosticCategory.Error,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:t(1380,e.DiagnosticCategory.Error,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:t(1381,e.DiagnosticCategory.Error,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `}`?"),Unexpected_token_Did_you_mean_or_gt:t(1382,e.DiagnosticCategory.Error,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `>`?"),Only_named_exports_may_use_export_type:t(1383,e.DiagnosticCategory.Error,"Only_named_exports_may_use_export_type_1383","Only named exports may use 'export type'."),A_new_expression_with_type_arguments_must_always_be_followed_by_a_parenthesized_argument_list:t(1384,e.DiagnosticCategory.Error,"A_new_expression_with_type_arguments_must_always_be_followed_by_a_parenthesized_argument_list_1384","A 'new' expression with type arguments must always be followed by a parenthesized argument list."),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:t(1385,e.DiagnosticCategory.Error,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:t(1386,e.DiagnosticCategory.Error,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:t(1387,e.DiagnosticCategory.Error,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:t(1388,e.DiagnosticCategory.Error,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:t(1389,e.DiagnosticCategory.Error,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),Provides_a_root_package_name_when_using_outFile_with_declarations:t(1390,e.DiagnosticCategory.Message,"Provides_a_root_package_name_when_using_outFile_with_declarations_1390","Provides a root package name when using outFile with declarations."),The_bundledPackageName_option_must_be_provided_when_using_outFile_and_node_module_resolution_with_declaration_emit:t(1391,e.DiagnosticCategory.Error,"The_bundledPackageName_option_must_be_provided_when_using_outFile_and_node_module_resolution_with_de_1391","The `bundledPackageName` option must be provided when using outFile and node module resolution with declaration emit."),An_import_alias_cannot_use_import_type:t(1392,e.DiagnosticCategory.Error,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:t(1393,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:t(1394,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:t(1395,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:t(1396,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:t(1397,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:t(1398,e.DiagnosticCategory.Message,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:t(1399,e.DiagnosticCategory.Message,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:t(1400,e.DiagnosticCategory.Message,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:t(1401,e.DiagnosticCategory.Message,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:t(1402,e.DiagnosticCategory.Message,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:t(1403,e.DiagnosticCategory.Message,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:t(1404,e.DiagnosticCategory.Message,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:t(1405,e.DiagnosticCategory.Message,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:t(1406,e.DiagnosticCategory.Message,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:t(1407,e.DiagnosticCategory.Message,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:t(1408,e.DiagnosticCategory.Message,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:t(1409,e.DiagnosticCategory.Message,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:t(1410,e.DiagnosticCategory.Message,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:t(1411,e.DiagnosticCategory.Message,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:t(1412,e.DiagnosticCategory.Message,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:t(1413,e.DiagnosticCategory.Message,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:t(1414,e.DiagnosticCategory.Message,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:t(1415,e.DiagnosticCategory.Message,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:t(1416,e.DiagnosticCategory.Message,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:t(1417,e.DiagnosticCategory.Message,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:t(1418,e.DiagnosticCategory.Message,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:t(1419,e.DiagnosticCategory.Message,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:t(1420,e.DiagnosticCategory.Message,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:t(1421,e.DiagnosticCategory.Message,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:t(1422,e.DiagnosticCategory.Message,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:t(1423,e.DiagnosticCategory.Message,"File_is_library_specified_here_1423","File is library specified here."),Default_library:t(1424,e.DiagnosticCategory.Message,"Default_library_1424","Default library"),Default_library_for_target_0:t(1425,e.DiagnosticCategory.Message,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:t(1426,e.DiagnosticCategory.Message,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:t(1427,e.DiagnosticCategory.Message,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:t(1428,e.DiagnosticCategory.Message,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:t(1429,e.DiagnosticCategory.Message,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:t(1430,e.DiagnosticCategory.Message,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:t(1431,e.DiagnosticCategory.Error,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher:t(1432,e.DiagnosticCategory.Error,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'esnext' or 'system', and the 'target' option is set to 'es2017' or higher."),The_types_of_0_are_incompatible_between_these_types:t(2200,e.DiagnosticCategory.Error,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:t(2201,e.DiagnosticCategory.Error,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:t(2202,e.DiagnosticCategory.Error,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:t(2203,e.DiagnosticCategory.Error,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:t(2204,e.DiagnosticCategory.Error,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:t(2205,e.DiagnosticCategory.Error,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Duplicate_identifier_0:t(2300,e.DiagnosticCategory.Error,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:t(2301,e.DiagnosticCategory.Error,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:t(2302,e.DiagnosticCategory.Error,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:t(2303,e.DiagnosticCategory.Error,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:t(2304,e.DiagnosticCategory.Error,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:t(2305,e.DiagnosticCategory.Error,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:t(2306,e.DiagnosticCategory.Error,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:t(2307,e.DiagnosticCategory.Error,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:t(2308,e.DiagnosticCategory.Error,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:t(2309,e.DiagnosticCategory.Error,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:t(2310,e.DiagnosticCategory.Error,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),A_class_may_only_extend_another_class:t(2311,e.DiagnosticCategory.Error,"A_class_may_only_extend_another_class_2311","A class may only extend another class."),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:t(2312,e.DiagnosticCategory.Error,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:t(2313,e.DiagnosticCategory.Error,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:t(2314,e.DiagnosticCategory.Error,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:t(2315,e.DiagnosticCategory.Error,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:t(2316,e.DiagnosticCategory.Error,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:t(2317,e.DiagnosticCategory.Error,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:t(2318,e.DiagnosticCategory.Error,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:t(2319,e.DiagnosticCategory.Error,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:t(2320,e.DiagnosticCategory.Error,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:t(2321,e.DiagnosticCategory.Error,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:t(2322,e.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:t(2323,e.DiagnosticCategory.Error,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:t(2324,e.DiagnosticCategory.Error,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:t(2325,e.DiagnosticCategory.Error,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:t(2326,e.DiagnosticCategory.Error,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:t(2327,e.DiagnosticCategory.Error,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:t(2328,e.DiagnosticCategory.Error,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_is_missing_in_type_0:t(2329,e.DiagnosticCategory.Error,"Index_signature_is_missing_in_type_0_2329","Index signature is missing in type '{0}'."),Index_signatures_are_incompatible:t(2330,e.DiagnosticCategory.Error,"Index_signatures_are_incompatible_2330","Index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:t(2331,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:t(2332,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_constructor_arguments:t(2333,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_constructor_arguments_2333","'this' cannot be referenced in constructor arguments."),this_cannot_be_referenced_in_a_static_property_initializer:t(2334,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:t(2335,e.DiagnosticCategory.Error,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:t(2336,e.DiagnosticCategory.Error,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:t(2337,e.DiagnosticCategory.Error,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:t(2338,e.DiagnosticCategory.Error,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:t(2339,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:t(2340,e.DiagnosticCategory.Error,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:t(2341,e.DiagnosticCategory.Error,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),An_index_expression_argument_must_be_of_type_string_number_symbol_or_any:t(2342,e.DiagnosticCategory.Error,"An_index_expression_argument_must_be_of_type_string_number_symbol_or_any_2342","An index expression argument must be of type 'string', 'number', 'symbol', or 'any'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:t(2343,e.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:t(2344,e.DiagnosticCategory.Error,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:t(2345,e.DiagnosticCategory.Error,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Call_target_does_not_contain_any_signatures:t(2346,e.DiagnosticCategory.Error,"Call_target_does_not_contain_any_signatures_2346","Call target does not contain any signatures."),Untyped_function_calls_may_not_accept_type_arguments:t(2347,e.DiagnosticCategory.Error,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:t(2348,e.DiagnosticCategory.Error,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:t(2349,e.DiagnosticCategory.Error,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:t(2350,e.DiagnosticCategory.Error,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:t(2351,e.DiagnosticCategory.Error,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:t(2352,e.DiagnosticCategory.Error,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:t(2353,e.DiagnosticCategory.Error,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:t(2354,e.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value:t(2355,e.DiagnosticCategory.Error,"A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'void' nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:t(2356,e.DiagnosticCategory.Error,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:t(2357,e.DiagnosticCategory.Error,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:t(2358,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type:t(2359,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_F_2359","The right-hand side of an 'instanceof' expression must be of type 'any' or of a type assignable to the 'Function' interface type."),The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol:t(2360,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol_2360","The left-hand side of an 'in' expression must be of type 'any', 'string', 'number', or 'symbol'."),The_right_hand_side_of_an_in_expression_must_not_be_a_primitive:t(2361,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_in_expression_must_not_be_a_primitive_2361","The right-hand side of an 'in' expression must not be a primitive."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:t(2362,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:t(2363,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:t(2364,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:t(2365,e.DiagnosticCategory.Error,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:t(2366,e.DiagnosticCategory.Error,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap:t(2367,e.DiagnosticCategory.Error,"This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap_2367","This condition will always return '{0}' since the types '{1}' and '{2}' have no overlap."),Type_parameter_name_cannot_be_0:t(2368,e.DiagnosticCategory.Error,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:t(2369,e.DiagnosticCategory.Error,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:t(2370,e.DiagnosticCategory.Error,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:t(2371,e.DiagnosticCategory.Error,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:t(2372,e.DiagnosticCategory.Error,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:t(2373,e.DiagnosticCategory.Error,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_string_index_signature:t(2374,e.DiagnosticCategory.Error,"Duplicate_string_index_signature_2374","Duplicate string index signature."),Duplicate_number_index_signature:t(2375,e.DiagnosticCategory.Error,"Duplicate_number_index_signature_2375","Duplicate number index signature."),A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_properties_parameter_properties_or_private_identifiers:t(2376,e.DiagnosticCategory.Error,"A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_proper_2376","A 'super' call must be the first statement in the constructor when a class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:t(2377,e.DiagnosticCategory.Error,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:t(2378,e.DiagnosticCategory.Error,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Getter_and_setter_accessors_do_not_agree_in_visibility:t(2379,e.DiagnosticCategory.Error,"Getter_and_setter_accessors_do_not_agree_in_visibility_2379","Getter and setter accessors do not agree in visibility."),get_and_set_accessor_must_have_the_same_type:t(2380,e.DiagnosticCategory.Error,"get_and_set_accessor_must_have_the_same_type_2380","'get' and 'set' accessor must have the same type."),A_signature_with_an_implementation_cannot_use_a_string_literal_type:t(2381,e.DiagnosticCategory.Error,"A_signature_with_an_implementation_cannot_use_a_string_literal_type_2381","A signature with an implementation cannot use a string literal type."),Specialized_overload_signature_is_not_assignable_to_any_non_specialized_signature:t(2382,e.DiagnosticCategory.Error,"Specialized_overload_signature_is_not_assignable_to_any_non_specialized_signature_2382","Specialized overload signature is not assignable to any non-specialized signature."),Overload_signatures_must_all_be_exported_or_non_exported:t(2383,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:t(2384,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:t(2385,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:t(2386,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:t(2387,e.DiagnosticCategory.Error,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:t(2388,e.DiagnosticCategory.Error,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:t(2389,e.DiagnosticCategory.Error,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:t(2390,e.DiagnosticCategory.Error,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:t(2391,e.DiagnosticCategory.Error,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:t(2392,e.DiagnosticCategory.Error,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:t(2393,e.DiagnosticCategory.Error,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:t(2394,e.DiagnosticCategory.Error,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:t(2395,e.DiagnosticCategory.Error,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:t(2396,e.DiagnosticCategory.Error,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:t(2397,e.DiagnosticCategory.Error,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:t(2398,e.DiagnosticCategory.Error,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:t(2399,e.DiagnosticCategory.Error,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:t(2400,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),Duplicate_identifier_super_Compiler_uses_super_to_capture_base_class_reference:t(2401,e.DiagnosticCategory.Error,"Duplicate_identifier_super_Compiler_uses_super_to_capture_base_class_reference_2401","Duplicate identifier '_super'. Compiler uses '_super' to capture base class reference."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:t(2402,e.DiagnosticCategory.Error,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:t(2403,e.DiagnosticCategory.Error,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:t(2404,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:t(2405,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:t(2406,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:t(2407,e.DiagnosticCategory.Error,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:t(2408,e.DiagnosticCategory.Error,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:t(2409,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:t(2410,e.DiagnosticCategory.Error,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Property_0_of_type_1_is_not_assignable_to_string_index_type_2:t(2411,e.DiagnosticCategory.Error,"Property_0_of_type_1_is_not_assignable_to_string_index_type_2_2411","Property '{0}' of type '{1}' is not assignable to string index type '{2}'."),Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2:t(2412,e.DiagnosticCategory.Error,"Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2_2412","Property '{0}' of type '{1}' is not assignable to numeric index type '{2}'."),Numeric_index_type_0_is_not_assignable_to_string_index_type_1:t(2413,e.DiagnosticCategory.Error,"Numeric_index_type_0_is_not_assignable_to_string_index_type_1_2413","Numeric index type '{0}' is not assignable to string index type '{1}'."),Class_name_cannot_be_0:t(2414,e.DiagnosticCategory.Error,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:t(2415,e.DiagnosticCategory.Error,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:t(2416,e.DiagnosticCategory.Error,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:t(2417,e.DiagnosticCategory.Error,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:t(2418,e.DiagnosticCategory.Error,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:t(2419,e.DiagnosticCategory.Error,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:t(2420,e.DiagnosticCategory.Error,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:t(2422,e.DiagnosticCategory.Error,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:t(2423,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:t(2425,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:t(2426,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:t(2427,e.DiagnosticCategory.Error,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:t(2428,e.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:t(2430,e.DiagnosticCategory.Error,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:t(2431,e.DiagnosticCategory.Error,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:t(2432,e.DiagnosticCategory.Error,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:t(2433,e.DiagnosticCategory.Error,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:t(2434,e.DiagnosticCategory.Error,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:t(2435,e.DiagnosticCategory.Error,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:t(2436,e.DiagnosticCategory.Error,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:t(2437,e.DiagnosticCategory.Error,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:t(2438,e.DiagnosticCategory.Error,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:t(2439,e.DiagnosticCategory.Error,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:t(2440,e.DiagnosticCategory.Error,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:t(2441,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:t(2442,e.DiagnosticCategory.Error,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:t(2443,e.DiagnosticCategory.Error,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:t(2444,e.DiagnosticCategory.Error,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:t(2445,e.DiagnosticCategory.Error,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1:t(2446,e.DiagnosticCategory.Error,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:t(2447,e.DiagnosticCategory.Error,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:t(2448,e.DiagnosticCategory.Error,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:t(2449,e.DiagnosticCategory.Error,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:t(2450,e.DiagnosticCategory.Error,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:t(2451,e.DiagnosticCategory.Error,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:t(2452,e.DiagnosticCategory.Error,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),The_type_argument_for_type_parameter_0_cannot_be_inferred_from_the_usage_Consider_specifying_the_type_arguments_explicitly:t(2453,e.DiagnosticCategory.Error,"The_type_argument_for_type_parameter_0_cannot_be_inferred_from_the_usage_Consider_specifying_the_typ_2453","The type argument for type parameter '{0}' cannot be inferred from the usage. Consider specifying the type arguments explicitly."),Variable_0_is_used_before_being_assigned:t(2454,e.DiagnosticCategory.Error,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_argument_candidate_1_is_not_a_valid_type_argument_because_it_is_not_a_supertype_of_candidate_0:t(2455,e.DiagnosticCategory.Error,"Type_argument_candidate_1_is_not_a_valid_type_argument_because_it_is_not_a_supertype_of_candidate_0_2455","Type argument candidate '{1}' is not a valid type argument because it is not a supertype of candidate '{0}'."),Type_alias_0_circularly_references_itself:t(2456,e.DiagnosticCategory.Error,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:t(2457,e.DiagnosticCategory.Error,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:t(2458,e.DiagnosticCategory.Error,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:t(2459,e.DiagnosticCategory.Error,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:t(2460,e.DiagnosticCategory.Error,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:t(2461,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:t(2462,e.DiagnosticCategory.Error,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:t(2463,e.DiagnosticCategory.Error,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:t(2464,e.DiagnosticCategory.Error,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:t(2465,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:t(2466,e.DiagnosticCategory.Error,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:t(2467,e.DiagnosticCategory.Error,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:t(2468,e.DiagnosticCategory.Error,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:t(2469,e.DiagnosticCategory.Error,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object:t(2470,e.DiagnosticCategory.Error,"Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object_2470","'Symbol' reference does not refer to the global Symbol constructor object."),A_computed_property_name_of_the_form_0_must_be_of_type_symbol:t(2471,e.DiagnosticCategory.Error,"A_computed_property_name_of_the_form_0_must_be_of_type_symbol_2471","A computed property name of the form '{0}' must be of type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:t(2472,e.DiagnosticCategory.Error,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:t(2473,e.DiagnosticCategory.Error,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values:t(2474,e.DiagnosticCategory.Error,"const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values_2474","const enum member initializers can only contain literal values and other computed enum values."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:t(2475,e.DiagnosticCategory.Error,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:t(2476,e.DiagnosticCategory.Error,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:t(2477,e.DiagnosticCategory.Error,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:t(2478,e.DiagnosticCategory.Error,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),Property_0_does_not_exist_on_const_enum_1:t(2479,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_const_enum_1_2479","Property '{0}' does not exist on 'const' enum '{1}'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:t(2480,e.DiagnosticCategory.Error,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:t(2481,e.DiagnosticCategory.Error,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:t(2483,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:t(2484,e.DiagnosticCategory.Error,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:t(2487,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:t(2488,e.DiagnosticCategory.Error,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:t(2489,e.DiagnosticCategory.Error,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:t(2490,e.DiagnosticCategory.Error,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:t(2491,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:t(2492,e.DiagnosticCategory.Error,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:t(2493,e.DiagnosticCategory.Error,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:t(2494,e.DiagnosticCategory.Error,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:t(2495,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression:t(2496,e.DiagnosticCategory.Error,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_stand_2496","The 'arguments' object cannot be referenced in an arrow function in ES3 and ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:t(2497,e.DiagnosticCategory.Error,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:t(2498,e.DiagnosticCategory.Error,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:t(2499,e.DiagnosticCategory.Error,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:t(2500,e.DiagnosticCategory.Error,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:t(2501,e.DiagnosticCategory.Error,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:t(2502,e.DiagnosticCategory.Error,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:t(2503,e.DiagnosticCategory.Error,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:t(2504,e.DiagnosticCategory.Error,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:t(2505,e.DiagnosticCategory.Error,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:t(2506,e.DiagnosticCategory.Error,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:t(2507,e.DiagnosticCategory.Error,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:t(2508,e.DiagnosticCategory.Error,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:t(2509,e.DiagnosticCategory.Error,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:t(2510,e.DiagnosticCategory.Error,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:t(2511,e.DiagnosticCategory.Error,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:t(2512,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:t(2513,e.DiagnosticCategory.Error,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),Classes_containing_abstract_methods_must_be_marked_abstract:t(2514,e.DiagnosticCategory.Error,"Classes_containing_abstract_methods_must_be_marked_abstract_2514","Classes containing abstract methods must be marked abstract."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:t(2515,e.DiagnosticCategory.Error,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member '{1}' from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:t(2516,e.DiagnosticCategory.Error,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:t(2517,e.DiagnosticCategory.Error,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:t(2518,e.DiagnosticCategory.Error,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:t(2519,e.DiagnosticCategory.Error,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:t(2520,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),Expression_resolves_to_variable_declaration_0_that_compiler_uses_to_support_async_functions:t(2521,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_0_that_compiler_uses_to_support_async_functions_2521","Expression resolves to variable declaration '{0}' that compiler uses to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method:t(2522,e.DiagnosticCategory.Error,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_usi_2522","The 'arguments' object cannot be referenced in an async function or method in ES3 and ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:t(2523,e.DiagnosticCategory.Error,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:t(2524,e.DiagnosticCategory.Error,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value:t(2525,e.DiagnosticCategory.Error,"Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value_2525","Initializer provides no value for this binding element and the binding element has no default value."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:t(2526,e.DiagnosticCategory.Error,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:t(2527,e.DiagnosticCategory.Error,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:t(2528,e.DiagnosticCategory.Error,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:t(2529,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:t(2530,e.DiagnosticCategory.Error,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:t(2531,e.DiagnosticCategory.Error,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:t(2532,e.DiagnosticCategory.Error,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:t(2533,e.DiagnosticCategory.Error,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:t(2534,e.DiagnosticCategory.Error,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Enum_type_0_has_members_with_initializers_that_are_not_literals:t(2535,e.DiagnosticCategory.Error,"Enum_type_0_has_members_with_initializers_that_are_not_literals_2535","Enum type '{0}' has members with initializers that are not literals."),Type_0_cannot_be_used_to_index_type_1:t(2536,e.DiagnosticCategory.Error,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:t(2537,e.DiagnosticCategory.Error,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:t(2538,e.DiagnosticCategory.Error,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:t(2539,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:t(2540,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),The_target_of_an_assignment_must_be_a_variable_or_a_property_access:t(2541,e.DiagnosticCategory.Error,"The_target_of_an_assignment_must_be_a_variable_or_a_property_access_2541","The target of an assignment must be a variable or a property access."),Index_signature_in_type_0_only_permits_reading:t(2542,e.DiagnosticCategory.Error,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:t(2543,e.DiagnosticCategory.Error,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:t(2544,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:t(2545,e.DiagnosticCategory.Error,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:t(2547,e.DiagnosticCategory.Error,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:t(2548,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:t(2549,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:t(2550,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the `lib` compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:t(2551,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:t(2552,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:t(2553,e.DiagnosticCategory.Error,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:t(2554,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:t(2555,e.DiagnosticCategory.Error,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),Expected_0_arguments_but_got_1_or_more:t(2556,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_or_more_2556","Expected {0} arguments, but got {1} or more."),Expected_at_least_0_arguments_but_got_1_or_more:t(2557,e.DiagnosticCategory.Error,"Expected_at_least_0_arguments_but_got_1_or_more_2557","Expected at least {0} arguments, but got {1} or more."),Expected_0_type_arguments_but_got_1:t(2558,e.DiagnosticCategory.Error,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:t(2559,e.DiagnosticCategory.Error,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:t(2560,e.DiagnosticCategory.Error,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:t(2561,e.DiagnosticCategory.Error,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:t(2562,e.DiagnosticCategory.Error,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:t(2563,e.DiagnosticCategory.Error,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:t(2564,e.DiagnosticCategory.Error,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:t(2565,e.DiagnosticCategory.Error,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:t(2566,e.DiagnosticCategory.Error,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:t(2567,e.DiagnosticCategory.Error,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators:t(2569,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterati_2569","Type '{0}' is not an array type or a string type. Use compiler option '--downlevelIteration' to allow iterating of iterators."),Object_is_of_type_unknown:t(2571,e.DiagnosticCategory.Error,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),Rest_signatures_are_incompatible:t(2572,e.DiagnosticCategory.Error,"Rest_signatures_are_incompatible_2572","Rest signatures are incompatible."),Property_0_is_incompatible_with_rest_element_type:t(2573,e.DiagnosticCategory.Error,"Property_0_is_incompatible_with_rest_element_type_2573","Property '{0}' is incompatible with rest element type."),A_rest_element_type_must_be_an_array_type:t(2574,e.DiagnosticCategory.Error,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:t(2575,e.DiagnosticCategory.Error,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:t(2576,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:t(2577,e.DiagnosticCategory.Error,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:t(2578,e.DiagnosticCategory.Error,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:t(2580,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:t(2581,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:t(2582,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:t(2583,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the `lib` compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:t(2584,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the `lib` compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:t(2585,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the `lib` compiler option to es2015 or later."),Enum_type_0_circularly_references_itself:t(2586,e.DiagnosticCategory.Error,"Enum_type_0_circularly_references_itself_2586","Enum type '{0}' circularly references itself."),JSDoc_type_0_circularly_references_itself:t(2587,e.DiagnosticCategory.Error,"JSDoc_type_0_circularly_references_itself_2587","JSDoc type '{0}' circularly references itself."),Cannot_assign_to_0_because_it_is_a_constant:t(2588,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:t(2589,e.DiagnosticCategory.Error,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:t(2590,e.DiagnosticCategory.Error,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:t(2591,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add `node` to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:t(2592,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add `jquery` to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:t(2593,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add `jest` or `mocha` to the types field in your tsconfig."),This_module_is_declared_with_using_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:t(2594,e.DiagnosticCategory.Error,"This_module_is_declared_with_using_export_and_can_only_be_used_with_a_default_import_when_using_the__2594","This module is declared with using 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:t(2595,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:t(2596,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:t(2597,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:t(2598,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_attributes_type_0_may_not_be_a_union_type:t(2600,e.DiagnosticCategory.Error,"JSX_element_attributes_type_0_may_not_be_a_union_type_2600","JSX element attributes type '{0}' may not be a union type."),The_return_type_of_a_JSX_element_constructor_must_return_an_object_type:t(2601,e.DiagnosticCategory.Error,"The_return_type_of_a_JSX_element_constructor_must_return_an_object_type_2601","The return type of a JSX element constructor must return an object type."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:t(2602,e.DiagnosticCategory.Error,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:t(2603,e.DiagnosticCategory.Error,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:t(2604,e.DiagnosticCategory.Error,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements:t(2605,e.DiagnosticCategory.Error,"JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements_2605","JSX element type '{0}' is not a constructor function for JSX elements."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:t(2606,e.DiagnosticCategory.Error,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:t(2607,e.DiagnosticCategory.Error,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:t(2608,e.DiagnosticCategory.Error,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:t(2609,e.DiagnosticCategory.Error,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:t(2610,e.DiagnosticCategory.Error,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:t(2611,e.DiagnosticCategory.Error,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:t(2612,e.DiagnosticCategory.Error,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:t(2613,e.DiagnosticCategory.Error,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:t(2614,e.DiagnosticCategory.Error,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:t(2615,e.DiagnosticCategory.Error,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:t(2616,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:t(2617,e.DiagnosticCategory.Error,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:t(2618,e.DiagnosticCategory.Error,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:t(2619,e.DiagnosticCategory.Error,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:t(2620,e.DiagnosticCategory.Error,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:t(2621,e.DiagnosticCategory.Error,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:t(2623,e.DiagnosticCategory.Error,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:t(2624,e.DiagnosticCategory.Error,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:t(2625,e.DiagnosticCategory.Error,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:t(2626,e.DiagnosticCategory.Error,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:t(2627,e.DiagnosticCategory.Error,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:t(2649,e.DiagnosticCategory.Error,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:t(2651,e.DiagnosticCategory.Error,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:t(2652,e.DiagnosticCategory.Error,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:t(2653,e.DiagnosticCategory.Error,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Exported_external_package_typings_file_cannot_contain_tripleslash_references_Please_contact_the_package_author_to_update_the_package_definition:t(2654,e.DiagnosticCategory.Error,"Exported_external_package_typings_file_cannot_contain_tripleslash_references_Please_contact_the_pack_2654","Exported external package typings file cannot contain tripleslash references. Please contact the package author to update the package definition."),Exported_external_package_typings_file_0_is_not_a_module_Please_contact_the_package_author_to_update_the_package_definition:t(2656,e.DiagnosticCategory.Error,"Exported_external_package_typings_file_0_is_not_a_module_Please_contact_the_package_author_to_update_2656","Exported external package typings file '{0}' is not a module. Please contact the package author to update the package definition."),JSX_expressions_must_have_one_parent_element:t(2657,e.DiagnosticCategory.Error,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:t(2658,e.DiagnosticCategory.Error,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:t(2659,e.DiagnosticCategory.Error,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:t(2660,e.DiagnosticCategory.Error,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:t(2661,e.DiagnosticCategory.Error,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:t(2662,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:t(2663,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:t(2664,e.DiagnosticCategory.Error,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:t(2665,e.DiagnosticCategory.Error,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:t(2666,e.DiagnosticCategory.Error,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:t(2667,e.DiagnosticCategory.Error,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:t(2668,e.DiagnosticCategory.Error,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:t(2669,e.DiagnosticCategory.Error,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:t(2670,e.DiagnosticCategory.Error,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:t(2671,e.DiagnosticCategory.Error,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:t(2672,e.DiagnosticCategory.Error,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:t(2673,e.DiagnosticCategory.Error,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:t(2674,e.DiagnosticCategory.Error,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:t(2675,e.DiagnosticCategory.Error,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:t(2676,e.DiagnosticCategory.Error,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:t(2677,e.DiagnosticCategory.Error,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:t(2678,e.DiagnosticCategory.Error,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:t(2679,e.DiagnosticCategory.Error,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:t(2680,e.DiagnosticCategory.Error,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:t(2681,e.DiagnosticCategory.Error,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),get_and_set_accessor_must_have_the_same_this_type:t(2682,e.DiagnosticCategory.Error,"get_and_set_accessor_must_have_the_same_this_type_2682","'get' and 'set' accessor must have the same 'this' type."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:t(2683,e.DiagnosticCategory.Error,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:t(2684,e.DiagnosticCategory.Error,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:t(2685,e.DiagnosticCategory.Error,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:t(2686,e.DiagnosticCategory.Error,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:t(2687,e.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:t(2688,e.DiagnosticCategory.Error,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:t(2689,e.DiagnosticCategory.Error,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:t(2690,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead:t(2691,e.DiagnosticCategory.Error,"An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead_2691","An import path cannot end with a '{0}' extension. Consider importing '{1}' instead."),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:t(2692,e.DiagnosticCategory.Error,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:t(2693,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:t(2694,e.DiagnosticCategory.Error,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:t(2695,e.DiagnosticCategory.Error,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:t(2696,e.DiagnosticCategory.Error,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:t(2697,e.DiagnosticCategory.Error,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your `--lib` option."),Spread_types_may_only_be_created_from_object_types:t(2698,e.DiagnosticCategory.Error,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:t(2699,e.DiagnosticCategory.Error,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:t(2700,e.DiagnosticCategory.Error,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:t(2701,e.DiagnosticCategory.Error,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:t(2702,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:t(2703,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:t(2704,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:t(2705,e.DiagnosticCategory.Error,"An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_de_2705","An async function or method in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your `--lib` option."),Required_type_parameters_may_not_follow_optional_type_parameters:t(2706,e.DiagnosticCategory.Error,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:t(2707,e.DiagnosticCategory.Error,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:t(2708,e.DiagnosticCategory.Error,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:t(2709,e.DiagnosticCategory.Error,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:t(2710,e.DiagnosticCategory.Error,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:t(2711,e.DiagnosticCategory.Error,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your `--lib` option."),A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:t(2712,e.DiagnosticCategory.Error,"A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declarat_2712","A dynamic import call in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your `--lib` option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:t(2713,e.DiagnosticCategory.Error,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713","Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}[\"{1}\"]'?"),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:t(2714,e.DiagnosticCategory.Error,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:t(2715,e.DiagnosticCategory.Error,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:t(2716,e.DiagnosticCategory.Error,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:t(2717,e.DiagnosticCategory.Error,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:t(2718,e.DiagnosticCategory.Error,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:t(2719,e.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:t(2720,e.DiagnosticCategory.Error,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:t(2721,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:t(2722,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:t(2723,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:t(2724,e.DiagnosticCategory.Error,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:t(2725,e.DiagnosticCategory.Error,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:t(2726,e.DiagnosticCategory.Error,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:t(2727,e.DiagnosticCategory.Error,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:t(2728,e.DiagnosticCategory.Message,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:t(2729,e.DiagnosticCategory.Error,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:t(2730,e.DiagnosticCategory.Error,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:t(2731,e.DiagnosticCategory.Error,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:t(2732,e.DiagnosticCategory.Error,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:t(2733,e.DiagnosticCategory.Error,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:t(2734,e.DiagnosticCategory.Error,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:t(2735,e.DiagnosticCategory.Error,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:t(2736,e.DiagnosticCategory.Error,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:t(2737,e.DiagnosticCategory.Error,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:t(2738,e.DiagnosticCategory.Message,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:t(2739,e.DiagnosticCategory.Error,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:t(2740,e.DiagnosticCategory.Error,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:t(2741,e.DiagnosticCategory.Error,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:t(2742,e.DiagnosticCategory.Error,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:t(2743,e.DiagnosticCategory.Error,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:t(2744,e.DiagnosticCategory.Error,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:t(2745,e.DiagnosticCategory.Error,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:t(2746,e.DiagnosticCategory.Error,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:t(2747,e.DiagnosticCategory.Error,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided:t(2748,e.DiagnosticCategory.Error,"Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided_2748","Cannot access ambient const enums when the '--isolatedModules' flag is provided."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:t(2749,e.DiagnosticCategory.Error,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:t(2750,e.DiagnosticCategory.Error,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:t(2751,e.DiagnosticCategory.Error,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:t(2752,e.DiagnosticCategory.Error,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:t(2753,e.DiagnosticCategory.Error,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:t(2754,e.DiagnosticCategory.Error,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:t(2755,e.DiagnosticCategory.Error,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:t(2756,e.DiagnosticCategory.Error,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:t(2757,e.DiagnosticCategory.Error,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:t(2758,e.DiagnosticCategory.Error,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:t(2759,e.DiagnosticCategory.Error,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:t(2760,e.DiagnosticCategory.Error,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:t(2761,e.DiagnosticCategory.Error,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:t(2762,e.DiagnosticCategory.Error,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:t(2763,e.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:t(2764,e.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:t(2765,e.DiagnosticCategory.Error,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:t(2766,e.DiagnosticCategory.Error,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:t(2767,e.DiagnosticCategory.Error,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:t(2768,e.DiagnosticCategory.Error,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:t(2769,e.DiagnosticCategory.Error,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:t(2770,e.DiagnosticCategory.Error,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:t(2771,e.DiagnosticCategory.Error,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:t(2772,e.DiagnosticCategory.Error,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:t(2773,e.DiagnosticCategory.Error,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it_instead:t(2774,e.DiagnosticCategory.Error,"This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it__2774","This condition will always return true since the function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:t(2775,e.DiagnosticCategory.Error,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:t(2776,e.DiagnosticCategory.Error,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:t(2777,e.DiagnosticCategory.Error,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:t(2778,e.DiagnosticCategory.Error,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:t(2779,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:t(2780,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:t(2781,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:t(2782,e.DiagnosticCategory.Message,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:t(2783,e.DiagnosticCategory.Error,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:t(2784,e.DiagnosticCategory.Error,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:t(2785,e.DiagnosticCategory.Error,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:t(2786,e.DiagnosticCategory.Error,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:t(2787,e.DiagnosticCategory.Error,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:t(2788,e.DiagnosticCategory.Error,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:t(2789,e.DiagnosticCategory.Error,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:t(2790,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:t(2791,e.DiagnosticCategory.Error,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:t(2792,e.DiagnosticCategory.Error,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_th_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:t(2793,e.DiagnosticCategory.Error,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:t(2794,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:t(2795,e.DiagnosticCategory.Error,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:t(2796,e.DiagnosticCategory.Error,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:t(2797,e.DiagnosticCategory.Error,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:t(2798,e.DiagnosticCategory.Error,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:t(2799,e.DiagnosticCategory.Error,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:t(2800,e.DiagnosticCategory.Error,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),Import_declaration_0_is_using_private_name_1:t(4e3,e.DiagnosticCategory.Error,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:t(4002,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:t(4004,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:t(4006,e.DiagnosticCategory.Error,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:t(4008,e.DiagnosticCategory.Error,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:t(4010,e.DiagnosticCategory.Error,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:t(4012,e.DiagnosticCategory.Error,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:t(4014,e.DiagnosticCategory.Error,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:t(4016,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:t(4019,e.DiagnosticCategory.Error,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:t(4020,e.DiagnosticCategory.Error,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:t(4021,e.DiagnosticCategory.Error,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:t(4022,e.DiagnosticCategory.Error,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4023,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:t(4024,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:t(4025,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4026,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4027,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:t(4028,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4029,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4030,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:t(4031,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4032,e.DiagnosticCategory.Error,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:t(4033,e.DiagnosticCategory.Error,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4034,e.DiagnosticCategory.Error,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:t(4035,e.DiagnosticCategory.Error,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4036,e.DiagnosticCategory.Error,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:t(4037,e.DiagnosticCategory.Error,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4038,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4039,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:t(4040,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4041,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4042,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:t(4043,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4044,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:t(4045,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4046,e.DiagnosticCategory.Error,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:t(4047,e.DiagnosticCategory.Error,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4048,e.DiagnosticCategory.Error,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:t(4049,e.DiagnosticCategory.Error,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:t(4050,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:t(4051,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:t(4052,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:t(4053,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:t(4054,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:t(4055,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:t(4056,e.DiagnosticCategory.Error,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:t(4057,e.DiagnosticCategory.Error,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:t(4058,e.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:t(4059,e.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:t(4060,e.DiagnosticCategory.Warning,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4061,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4062,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:t(4063,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4064,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:t(4065,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4066,e.DiagnosticCategory.Error,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:t(4067,e.DiagnosticCategory.Error,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4068,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4069,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:t(4070,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4071,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:t(4072,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:t(4073,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4074,e.DiagnosticCategory.Error,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:t(4075,e.DiagnosticCategory.Error,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4076,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:t(4077,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:t(4078,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:t(4081,e.DiagnosticCategory.Error,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:t(4082,e.DiagnosticCategory.Error,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:t(4083,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:t(4084,e.DiagnosticCategory.Error,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict:t(4090,e.DiagnosticCategory.Error,"Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_librar_4090","Conflicting definitions for '{0}' found at '{1}' and '{2}'. Consider installing a specific version of this library to resolve the conflict."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4091,e.DiagnosticCategory.Error,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:t(4092,e.DiagnosticCategory.Error,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_class_expression_may_not_be_private_or_protected:t(4094,e.DiagnosticCategory.Error,"Property_0_of_exported_class_expression_may_not_be_private_or_protected_4094","Property '{0}' of exported class expression may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4095,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4096,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:t(4097,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4098,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:t(4099,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:t(4100,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:t(4101,e.DiagnosticCategory.Error,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:t(4102,e.DiagnosticCategory.Error,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:t(4103,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:t(4104,e.DiagnosticCategory.Error,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:t(4105,e.DiagnosticCategory.Error,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:t(4106,e.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:t(4107,e.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:t(4108,e.DiagnosticCategory.Error,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:t(4109,e.DiagnosticCategory.Error,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:t(4110,e.DiagnosticCategory.Error,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:t(4111,e.DiagnosticCategory.Error,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),The_current_host_does_not_support_the_0_option:t(5001,e.DiagnosticCategory.Error,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:t(5009,e.DiagnosticCategory.Error,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:t(5010,e.DiagnosticCategory.Error,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:t(5012,e.DiagnosticCategory.Error,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:t(5014,e.DiagnosticCategory.Error,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:t(5023,e.DiagnosticCategory.Error,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:t(5024,e.DiagnosticCategory.Error,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:t(5025,e.DiagnosticCategory.Error,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:t(5033,e.DiagnosticCategory.Error,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:t(5042,e.DiagnosticCategory.Error,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:t(5047,e.DiagnosticCategory.Error,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_cannot_be_specified_when_option_target_is_ES3:t(5048,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_when_option_target_is_ES3_5048","Option '{0}' cannot be specified when option 'target' is 'ES3'."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:t(5051,e.DiagnosticCategory.Error,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:t(5052,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:t(5053,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:t(5054,e.DiagnosticCategory.Error,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:t(5055,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:t(5056,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:t(5057,e.DiagnosticCategory.Error,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:t(5058,e.DiagnosticCategory.Error,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:t(5059,e.DiagnosticCategory.Error,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:t(5061,e.DiagnosticCategory.Error,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:t(5062,e.DiagnosticCategory.Error,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:t(5063,e.DiagnosticCategory.Error,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:t(5064,e.DiagnosticCategory.Error,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:t(5065,e.DiagnosticCategory.Error,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:t(5066,e.DiagnosticCategory.Error,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:t(5067,e.DiagnosticCategory.Error,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:t(5068,e.DiagnosticCategory.Error,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:t(5069,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy:t(5070,e.DiagnosticCategory.Error,"Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy_5070","Option '--resolveJsonModule' cannot be specified without 'node' module resolution strategy."),Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext:t(5071,e.DiagnosticCategory.Error,"Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_5071","Option '--resolveJsonModule' can only be specified when module code generation is 'commonjs', 'amd', 'es2015' or 'esNext'."),Unknown_build_option_0:t(5072,e.DiagnosticCategory.Error,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:t(5073,e.DiagnosticCategory.Error,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:t(5074,e.DiagnosticCategory.Error,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option `--tsBuildInfoFile` is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:t(5075,e.DiagnosticCategory.Error,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:t(5076,e.DiagnosticCategory.Error,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:t(5077,e.DiagnosticCategory.Error,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:t(5078,e.DiagnosticCategory.Error,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:t(5079,e.DiagnosticCategory.Error,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:t(5080,e.DiagnosticCategory.Error,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:t(5081,e.DiagnosticCategory.Error,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:t(5082,e.DiagnosticCategory.Error,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:t(5083,e.DiagnosticCategory.Error,"Cannot_read_file_0_5083","Cannot read file '{0}'."),Tuple_members_must_all_have_names_or_all_not_have_names:t(5084,e.DiagnosticCategory.Error,"Tuple_members_must_all_have_names_or_all_not_have_names_5084","Tuple members must all have names or all not have names."),A_tuple_member_cannot_be_both_optional_and_rest:t(5085,e.DiagnosticCategory.Error,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:t(5086,e.DiagnosticCategory.Error,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:t(5087,e.DiagnosticCategory.Error,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a `...` before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:t(5088,e.DiagnosticCategory.Error,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:t(5089,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:t(5090,e.DiagnosticCategory.Error,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled:t(5091,e.DiagnosticCategory.Error,"Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when 'isolatedModules' is enabled."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:t(6e3,e.DiagnosticCategory.Message,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:t(6001,e.DiagnosticCategory.Message,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:t(6002,e.DiagnosticCategory.Message,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:t(6003,e.DiagnosticCategory.Message,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6003","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:t(6004,e.DiagnosticCategory.Message,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:t(6005,e.DiagnosticCategory.Message,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:t(6006,e.DiagnosticCategory.Message,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:t(6007,e.DiagnosticCategory.Message,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:t(6008,e.DiagnosticCategory.Message,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:t(6009,e.DiagnosticCategory.Message,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:t(6010,e.DiagnosticCategory.Message,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:t(6011,e.DiagnosticCategory.Message,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:t(6012,e.DiagnosticCategory.Message,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:t(6013,e.DiagnosticCategory.Message,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:t(6014,e.DiagnosticCategory.Message,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_ES2019_ES2020_or_ESNEXT:t(6015,e.DiagnosticCategory.Message,"Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_ES2019_ES2020_or_6015","Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'."),Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_es2020_or_ESNext:t(6016,e.DiagnosticCategory.Message,"Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_es2020_or_ESNext_6016","Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'."),Print_this_message:t(6017,e.DiagnosticCategory.Message,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:t(6019,e.DiagnosticCategory.Message,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:t(6020,e.DiagnosticCategory.Message,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:t(6023,e.DiagnosticCategory.Message,"Syntax_Colon_0_6023","Syntax: {0}"),options:t(6024,e.DiagnosticCategory.Message,"options_6024","options"),file:t(6025,e.DiagnosticCategory.Message,"file_6025","file"),Examples_Colon_0:t(6026,e.DiagnosticCategory.Message,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:t(6027,e.DiagnosticCategory.Message,"Options_Colon_6027","Options:"),Version_0:t(6029,e.DiagnosticCategory.Message,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:t(6030,e.DiagnosticCategory.Message,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:t(6031,e.DiagnosticCategory.Message,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:t(6032,e.DiagnosticCategory.Message,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:t(6034,e.DiagnosticCategory.Message,"KIND_6034","KIND"),FILE:t(6035,e.DiagnosticCategory.Message,"FILE_6035","FILE"),VERSION:t(6036,e.DiagnosticCategory.Message,"VERSION_6036","VERSION"),LOCATION:t(6037,e.DiagnosticCategory.Message,"LOCATION_6037","LOCATION"),DIRECTORY:t(6038,e.DiagnosticCategory.Message,"DIRECTORY_6038","DIRECTORY"),STRATEGY:t(6039,e.DiagnosticCategory.Message,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:t(6040,e.DiagnosticCategory.Message,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Generates_corresponding_map_file:t(6043,e.DiagnosticCategory.Message,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:t(6044,e.DiagnosticCategory.Error,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:t(6045,e.DiagnosticCategory.Error,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:t(6046,e.DiagnosticCategory.Error,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:t(6048,e.DiagnosticCategory.Error,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form <language> or <language>-<territory>. For example '{0}' or '{1}'."),Unsupported_locale_0:t(6049,e.DiagnosticCategory.Error,"Unsupported_locale_0_6049","Unsupported locale '{0}'."),Unable_to_open_file_0:t(6050,e.DiagnosticCategory.Error,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:t(6051,e.DiagnosticCategory.Error,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:t(6052,e.DiagnosticCategory.Message,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:t(6053,e.DiagnosticCategory.Error,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:t(6054,e.DiagnosticCategory.Error,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:t(6055,e.DiagnosticCategory.Message,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:t(6056,e.DiagnosticCategory.Message,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:t(6058,e.DiagnosticCategory.Message,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:t(6059,e.DiagnosticCategory.Error,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:t(6060,e.DiagnosticCategory.Message,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:t(6061,e.DiagnosticCategory.Message,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:t(6064,e.DiagnosticCategory.Error,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:t(6065,e.DiagnosticCategory.Message,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:t(6066,e.DiagnosticCategory.Message,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Enables_experimental_support_for_ES7_async_functions:t(6068,e.DiagnosticCategory.Message,"Enables_experimental_support_for_ES7_async_functions_6068","Enables experimental support for ES7 async functions."),Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6:t(6069,e.DiagnosticCategory.Message,"Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6_6069","Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6)."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:t(6070,e.DiagnosticCategory.Message,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:t(6071,e.DiagnosticCategory.Message,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:t(6072,e.DiagnosticCategory.Message,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:t(6073,e.DiagnosticCategory.Message,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:t(6074,e.DiagnosticCategory.Message,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:t(6075,e.DiagnosticCategory.Message,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:t(6076,e.DiagnosticCategory.Message,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:t(6077,e.DiagnosticCategory.Message,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:t(6078,e.DiagnosticCategory.Message,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:t(6079,e.DiagnosticCategory.Message,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation_Colon_preserve_react_native_react_react_jsx_or_react_jsxdev:t(6080,e.DiagnosticCategory.Message,"Specify_JSX_code_generation_Colon_preserve_react_native_react_react_jsx_or_react_jsxdev_6080","Specify JSX code generation: 'preserve', 'react-native', 'react', 'react-jsx' or 'react-jsxdev'."),File_0_has_an_unsupported_extension_so_skipping_it:t(6081,e.DiagnosticCategory.Message,"File_0_has_an_unsupported_extension_so_skipping_it_6081","File '{0}' has an unsupported extension, so skipping it."),Only_amd_and_system_modules_are_supported_alongside_0:t(6082,e.DiagnosticCategory.Error,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:t(6083,e.DiagnosticCategory.Message,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:t(6084,e.DiagnosticCategory.Message,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:t(6085,e.DiagnosticCategory.Message,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:t(6086,e.DiagnosticCategory.Message,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:t(6087,e.DiagnosticCategory.Message,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:t(6088,e.DiagnosticCategory.Message,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:t(6089,e.DiagnosticCategory.Message,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:t(6090,e.DiagnosticCategory.Message,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:t(6091,e.DiagnosticCategory.Message,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:t(6092,e.DiagnosticCategory.Message,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:t(6093,e.DiagnosticCategory.Message,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:t(6094,e.DiagnosticCategory.Message,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1:t(6095,e.DiagnosticCategory.Message,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1_6095","Loading module as file / folder, candidate module location '{0}', target file type '{1}'."),File_0_does_not_exist:t(6096,e.DiagnosticCategory.Message,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exist_use_it_as_a_name_resolution_result:t(6097,e.DiagnosticCategory.Message,"File_0_exist_use_it_as_a_name_resolution_result_6097","File '{0}' exist - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_type_1:t(6098,e.DiagnosticCategory.Message,"Loading_module_0_from_node_modules_folder_target_file_type_1_6098","Loading module '{0}' from 'node_modules' folder, target file type '{1}'."),Found_package_json_at_0:t(6099,e.DiagnosticCategory.Message,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:t(6100,e.DiagnosticCategory.Message,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:t(6101,e.DiagnosticCategory.Message,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:t(6102,e.DiagnosticCategory.Message,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Option_0_should_have_array_of_strings_as_a_value:t(6103,e.DiagnosticCategory.Error,"Option_0_should_have_array_of_strings_as_a_value_6103","Option '{0}' should have array of strings as a value."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:t(6104,e.DiagnosticCategory.Message,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:t(6105,e.DiagnosticCategory.Message,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:t(6106,e.DiagnosticCategory.Message,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:t(6107,e.DiagnosticCategory.Message,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:t(6108,e.DiagnosticCategory.Message,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:t(6109,e.DiagnosticCategory.Message,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:t(6110,e.DiagnosticCategory.Message,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:t(6111,e.DiagnosticCategory.Message,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:t(6112,e.DiagnosticCategory.Message,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:t(6113,e.DiagnosticCategory.Message,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:t(6114,e.DiagnosticCategory.Error,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:t(6115,e.DiagnosticCategory.Message,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:t(6116,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Resolving_using_primary_search_paths:t(6117,e.DiagnosticCategory.Message,"Resolving_using_primary_search_paths_6117","Resolving using primary search paths..."),Resolving_from_node_modules_folder:t(6118,e.DiagnosticCategory.Message,"Resolving_from_node_modules_folder_6118","Resolving from node_modules folder..."),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:t(6119,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:t(6120,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:t(6121,e.DiagnosticCategory.Message,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:t(6122,e.DiagnosticCategory.Message,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:t(6123,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:t(6124,e.DiagnosticCategory.Message,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:t(6125,e.DiagnosticCategory.Message,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:t(6126,e.DiagnosticCategory.Message,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:t(6127,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:t(6128,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:t(6130,e.DiagnosticCategory.Message,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:t(6131,e.DiagnosticCategory.Error,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:t(6132,e.DiagnosticCategory.Message,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:t(6133,e.DiagnosticCategory.Error,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:t(6134,e.DiagnosticCategory.Message,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:t(6135,e.DiagnosticCategory.Message,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:t(6136,e.DiagnosticCategory.Message,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:t(6137,e.DiagnosticCategory.Error,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:t(6138,e.DiagnosticCategory.Error,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:t(6139,e.DiagnosticCategory.Message,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:t(6140,e.DiagnosticCategory.Error,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:t(6141,e.DiagnosticCategory.Message,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:t(6142,e.DiagnosticCategory.Error,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:t(6144,e.DiagnosticCategory.Message,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified:t(6145,e.DiagnosticCategory.Message,"Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified_6145","Module '{0}' was resolved as ambient module declared in '{1}' since this file was not modified."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:t(6146,e.DiagnosticCategory.Message,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:t(6147,e.DiagnosticCategory.Message,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:t(6148,e.DiagnosticCategory.Message,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:t(6149,e.DiagnosticCategory.Message,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:t(6150,e.DiagnosticCategory.Message,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:t(6151,e.DiagnosticCategory.Message,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:t(6152,e.DiagnosticCategory.Message,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:t(6153,e.DiagnosticCategory.Message,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:t(6154,e.DiagnosticCategory.Message,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:t(6155,e.DiagnosticCategory.Message,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:t(6156,e.DiagnosticCategory.Message,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:t(6157,e.DiagnosticCategory.Message,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:t(6158,e.DiagnosticCategory.Message,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:t(6159,e.DiagnosticCategory.Message,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:t(6160,e.DiagnosticCategory.Message,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:t(6161,e.DiagnosticCategory.Message,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:t(6162,e.DiagnosticCategory.Message,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:t(6163,e.DiagnosticCategory.Message,"The_character_set_of_the_input_files_6163","The character set of the input files."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:t(6164,e.DiagnosticCategory.Message,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6164","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Do_not_truncate_error_messages:t(6165,e.DiagnosticCategory.Message,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:t(6166,e.DiagnosticCategory.Message,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:t(6167,e.DiagnosticCategory.Message,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:t(6168,e.DiagnosticCategory.Message,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:t(6169,e.DiagnosticCategory.Message,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:t(6170,e.DiagnosticCategory.Message,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:t(6171,e.DiagnosticCategory.Message,"Command_line_Options_6171","Command-line Options"),Basic_Options:t(6172,e.DiagnosticCategory.Message,"Basic_Options_6172","Basic Options"),Strict_Type_Checking_Options:t(6173,e.DiagnosticCategory.Message,"Strict_Type_Checking_Options_6173","Strict Type-Checking Options"),Module_Resolution_Options:t(6174,e.DiagnosticCategory.Message,"Module_Resolution_Options_6174","Module Resolution Options"),Source_Map_Options:t(6175,e.DiagnosticCategory.Message,"Source_Map_Options_6175","Source Map Options"),Additional_Checks:t(6176,e.DiagnosticCategory.Message,"Additional_Checks_6176","Additional Checks"),Experimental_Options:t(6177,e.DiagnosticCategory.Message,"Experimental_Options_6177","Experimental Options"),Advanced_Options:t(6178,e.DiagnosticCategory.Message,"Advanced_Options_6178","Advanced Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3:t(6179,e.DiagnosticCategory.Message,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'."),Enable_all_strict_type_checking_options:t(6180,e.DiagnosticCategory.Message,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),List_of_language_service_plugins:t(6181,e.DiagnosticCategory.Message,"List_of_language_service_plugins_6181","List of language service plugins."),Scoped_package_detected_looking_in_0:t(6182,e.DiagnosticCategory.Message,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_to_file_1_from_old_program:t(6183,e.DiagnosticCategory.Message,"Reusing_resolution_of_module_0_to_file_1_from_old_program_6183","Reusing resolution of module '{0}' to file '{1}' from old program."),Reusing_module_resolutions_originating_in_0_since_resolutions_are_unchanged_from_old_program:t(6184,e.DiagnosticCategory.Message,"Reusing_module_resolutions_originating_in_0_since_resolutions_are_unchanged_from_old_program_6184","Reusing module resolutions originating in '{0}' since resolutions are unchanged from old program."),Disable_strict_checking_of_generic_signatures_in_function_types:t(6185,e.DiagnosticCategory.Message,"Disable_strict_checking_of_generic_signatures_in_function_types_6185","Disable strict checking of generic signatures in function types."),Enable_strict_checking_of_function_types:t(6186,e.DiagnosticCategory.Message,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:t(6187,e.DiagnosticCategory.Message,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:t(6188,e.DiagnosticCategory.Error,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:t(6189,e.DiagnosticCategory.Error,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:t(6191,e.DiagnosticCategory.Message,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:t(6192,e.DiagnosticCategory.Error,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:t(6193,e.DiagnosticCategory.Message,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:t(6194,e.DiagnosticCategory.Message,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:t(6195,e.DiagnosticCategory.Message,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:t(6196,e.DiagnosticCategory.Error,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:t(6197,e.DiagnosticCategory.Message,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:t(6198,e.DiagnosticCategory.Error,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:t(6199,e.DiagnosticCategory.Error,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:t(6200,e.DiagnosticCategory.Error,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:t(6201,e.DiagnosticCategory.Message,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:t(6202,e.DiagnosticCategory.Error,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:t(6203,e.DiagnosticCategory.Message,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:t(6204,e.DiagnosticCategory.Message,"and_here_6204","and here."),All_type_parameters_are_unused:t(6205,e.DiagnosticCategory.Error,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:t(6206,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:t(6207,e.DiagnosticCategory.Message,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:t(6208,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:t(6209,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:t(6210,e.DiagnosticCategory.Message,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:t(6211,e.DiagnosticCategory.Message,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:t(6212,e.DiagnosticCategory.Message,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:t(6213,e.DiagnosticCategory.Message,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:t(6214,e.DiagnosticCategory.Message,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:t(6215,e.DiagnosticCategory.Message,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:t(6216,e.DiagnosticCategory.Message,"Found_1_error_6216","Found 1 error."),Found_0_errors:t(6217,e.DiagnosticCategory.Message,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:t(6218,e.DiagnosticCategory.Message,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:t(6219,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:t(6220,e.DiagnosticCategory.Message,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:t(6221,e.DiagnosticCategory.Message,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:t(6222,e.DiagnosticCategory.Message,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:t(6223,e.DiagnosticCategory.Message,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:t(6224,e.DiagnosticCategory.Message,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_UseFsEvents_UseFsEventsOnParentDirectory:t(6225,e.DiagnosticCategory.Message,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling:t(6226,e.DiagnosticCategory.Message,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority:t(6227,e.DiagnosticCategory.Message,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority'."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:t(6228,e.DiagnosticCategory.Message,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6228","Synchronously call callbacks and update the state of directory watchers on platforms that don't support recursive watching natively."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:t(6229,e.DiagnosticCategory.Error,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:t(6230,e.DiagnosticCategory.Error,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:t(6231,e.DiagnosticCategory.Error,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:t(6232,e.DiagnosticCategory.Error,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:t(6233,e.DiagnosticCategory.Error,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:t(6234,e.DiagnosticCategory.Error,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:t(6235,e.DiagnosticCategory.Message,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:t(6236,e.DiagnosticCategory.Error,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:t(6237,e.DiagnosticCategory.Message,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:t(6238,e.DiagnosticCategory.Error,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the `jsx` and `jsxs` factory functions from. eg, react"),Projects_to_reference:t(6300,e.DiagnosticCategory.Message,"Projects_to_reference_6300","Projects to reference"),Enable_project_compilation:t(6302,e.DiagnosticCategory.Message,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:t(6304,e.DiagnosticCategory.Error,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:t(6305,e.DiagnosticCategory.Error,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:t(6306,e.DiagnosticCategory.Error,"Referenced_project_0_must_have_setting_composite_Colon_true_6306","Referenced project '{0}' must have setting \"composite\": true."),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:t(6307,e.DiagnosticCategory.Error,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Cannot_prepend_project_0_because_it_does_not_have_outFile_set:t(6308,e.DiagnosticCategory.Error,"Cannot_prepend_project_0_because_it_does_not_have_outFile_set_6308","Cannot prepend project '{0}' because it does not have 'outFile' set"),Output_file_0_from_project_1_does_not_exist:t(6309,e.DiagnosticCategory.Error,"Output_file_0_from_project_1_does_not_exist_6309","Output file '{0}' from project '{1}' does not exist"),Referenced_project_0_may_not_disable_emit:t(6310,e.DiagnosticCategory.Error,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2:t(6350,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2_6350","Project '{0}' is out of date because oldest output '{1}' is older than newest input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2:t(6351,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than oldest output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:t(6352,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:t(6353,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:t(6354,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:t(6355,e.DiagnosticCategory.Message,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:t(6356,e.DiagnosticCategory.Message,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:t(6357,e.DiagnosticCategory.Message,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:t(6358,e.DiagnosticCategory.Message,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:t(6359,e.DiagnosticCategory.Message,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),delete_this_Project_0_is_up_to_date_because_it_was_previously_built:t(6360,e.DiagnosticCategory.Message,"delete_this_Project_0_is_up_to_date_because_it_was_previously_built_6360","delete this - Project '{0}' is up to date because it was previously built"),Project_0_is_up_to_date:t(6361,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:t(6362,e.DiagnosticCategory.Message,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:t(6363,e.DiagnosticCategory.Message,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:t(6364,e.DiagnosticCategory.Message,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:t(6365,e.DiagnosticCategory.Message,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects"),Enable_verbose_logging:t(6366,e.DiagnosticCategory.Message,"Enable_verbose_logging_6366","Enable verbose logging"),Show_what_would_be_built_or_deleted_if_specified_with_clean:t(6367,e.DiagnosticCategory.Message,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Build_all_projects_including_those_that_appear_to_be_up_to_date:t(6368,e.DiagnosticCategory.Message,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6368","Build all projects, including those that appear to be up to date"),Option_build_must_be_the_first_command_line_argument:t(6369,e.DiagnosticCategory.Error,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:t(6370,e.DiagnosticCategory.Error,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:t(6371,e.DiagnosticCategory.Message,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed:t(6372,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed_6372","Project '{0}' is out of date because output of its dependency '{1}' has changed"),Updating_output_of_project_0:t(6373,e.DiagnosticCategory.Message,"Updating_output_of_project_0_6373","Updating output of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:t(6374,e.DiagnosticCategory.Message,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),A_non_dry_build_would_update_output_of_project_0:t(6375,e.DiagnosticCategory.Message,"A_non_dry_build_would_update_output_of_project_0_6375","A non-dry build would update output of project '{0}'"),Cannot_update_output_of_project_0_because_there_was_error_reading_file_1:t(6376,e.DiagnosticCategory.Message,"Cannot_update_output_of_project_0_because_there_was_error_reading_file_1_6376","Cannot update output of project '{0}' because there was error reading file '{1}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:t(6377,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Enable_incremental_compilation:t(6378,e.DiagnosticCategory.Message,"Enable_incremental_compilation_6378","Enable incremental compilation"),Composite_projects_may_not_disable_incremental_compilation:t(6379,e.DiagnosticCategory.Error,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:t(6380,e.DiagnosticCategory.Message,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:t(6381,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:t(6382,e.DiagnosticCategory.Message,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:t(6383,e.DiagnosticCategory.Message,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:t(6384,e.DiagnosticCategory.Message,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:t(6385,e.DiagnosticCategory.Suggestion,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:t(6386,e.DiagnosticCategory.Message,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:t(6387,e.DiagnosticCategory.Suggestion,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:t(6500,e.DiagnosticCategory.Message,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:t(6501,e.DiagnosticCategory.Message,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:t(6502,e.DiagnosticCategory.Message,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:t(6503,e.DiagnosticCategory.Message,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:t(6504,e.DiagnosticCategory.Error,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:t(6505,e.DiagnosticCategory.Message,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:t(6803,e.DiagnosticCategory.Error,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6803","Require undeclared properties from index signatures to use element accesses."),Include_undefined_in_index_signature_results:t(6800,e.DiagnosticCategory.Message,"Include_undefined_in_index_signature_results_6800","Include 'undefined' in index signature results"),Variable_0_implicitly_has_an_1_type:t(7005,e.DiagnosticCategory.Error,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:t(7006,e.DiagnosticCategory.Error,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:t(7008,e.DiagnosticCategory.Error,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:t(7009,e.DiagnosticCategory.Error,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:t(7010,e.DiagnosticCategory.Error,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:t(7011,e.DiagnosticCategory.Error,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:t(7013,e.DiagnosticCategory.Error,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:t(7014,e.DiagnosticCategory.Error,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:t(7015,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:t(7016,e.DiagnosticCategory.Error,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:t(7017,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:t(7018,e.DiagnosticCategory.Error,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:t(7019,e.DiagnosticCategory.Error,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:t(7020,e.DiagnosticCategory.Error,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:t(7022,e.DiagnosticCategory.Error,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:t(7023,e.DiagnosticCategory.Error,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:t(7024,e.DiagnosticCategory.Error,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:t(7025,e.DiagnosticCategory.Error,"Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_retu_7025","Generator implicitly has yield type '{0}' because it does not yield any values. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:t(7026,e.DiagnosticCategory.Error,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:t(7027,e.DiagnosticCategory.Error,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:t(7028,e.DiagnosticCategory.Error,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:t(7029,e.DiagnosticCategory.Error,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:t(7030,e.DiagnosticCategory.Error,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:t(7031,e.DiagnosticCategory.Error,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:t(7032,e.DiagnosticCategory.Error,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:t(7033,e.DiagnosticCategory.Error,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:t(7034,e.DiagnosticCategory.Error,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:t(7035,e.DiagnosticCategory.Error,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:t(7036,e.DiagnosticCategory.Error,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:t(7037,e.DiagnosticCategory.Message,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:t(7038,e.DiagnosticCategory.Message,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:t(7039,e.DiagnosticCategory.Error,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:t(7040,e.DiagnosticCategory.Error,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}`"),The_containing_arrow_function_captures_the_global_value_of_this:t(7041,e.DiagnosticCategory.Error,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:t(7042,e.DiagnosticCategory.Error,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:t(7043,e.DiagnosticCategory.Suggestion,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:t(7044,e.DiagnosticCategory.Suggestion,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:t(7045,e.DiagnosticCategory.Suggestion,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:t(7046,e.DiagnosticCategory.Suggestion,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:t(7047,e.DiagnosticCategory.Suggestion,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:t(7048,e.DiagnosticCategory.Suggestion,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:t(7049,e.DiagnosticCategory.Suggestion,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:t(7050,e.DiagnosticCategory.Suggestion,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:t(7051,e.DiagnosticCategory.Error,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:t(7052,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:t(7053,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:t(7054,e.DiagnosticCategory.Error,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:t(7055,e.DiagnosticCategory.Error,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:t(7056,e.DiagnosticCategory.Error,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:t(7057,e.DiagnosticCategory.Error,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),You_cannot_rename_this_element:t(8e3,e.DiagnosticCategory.Error,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:t(8001,e.DiagnosticCategory.Error,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:t(8002,e.DiagnosticCategory.Error,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:t(8003,e.DiagnosticCategory.Error,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:t(8004,e.DiagnosticCategory.Error,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:t(8005,e.DiagnosticCategory.Error,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:t(8006,e.DiagnosticCategory.Error,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:t(8008,e.DiagnosticCategory.Error,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:t(8009,e.DiagnosticCategory.Error,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:t(8010,e.DiagnosticCategory.Error,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:t(8011,e.DiagnosticCategory.Error,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:t(8012,e.DiagnosticCategory.Error,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:t(8013,e.DiagnosticCategory.Error,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:t(8016,e.DiagnosticCategory.Error,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:t(8017,e.DiagnosticCategory.Error,"Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0_8017","Octal literal types must use ES2015 syntax. Use the syntax '{0}'."),Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0:t(8018,e.DiagnosticCategory.Error,"Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0_8018","Octal literals are not allowed in enums members initializer. Use the syntax '{0}'."),Report_errors_in_js_files:t(8019,e.DiagnosticCategory.Message,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:t(8020,e.DiagnosticCategory.Error,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:t(8021,e.DiagnosticCategory.Error,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:t(8022,e.DiagnosticCategory.Error,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:t(8023,e.DiagnosticCategory.Error,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:t(8024,e.DiagnosticCategory.Error,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:t(8025,e.DiagnosticCategory.Error,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one `@augments` or `@extends` tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:t(8026,e.DiagnosticCategory.Error,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:t(8027,e.DiagnosticCategory.Error,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:t(8028,e.DiagnosticCategory.Error,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:t(8029,e.DiagnosticCategory.Error,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:t(8030,e.DiagnosticCategory.Error,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:t(8031,e.DiagnosticCategory.Error,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:t(8032,e.DiagnosticCategory.Error,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:t(8033,e.DiagnosticCategory.Error,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:t(8034,e.DiagnosticCategory.Error,"The_tag_was_first_specified_here_8034","The tag was first specified here."),Only_identifiers_Slashqualified_names_with_optional_type_arguments_are_currently_supported_in_a_class_extends_clause:t(9002,e.DiagnosticCategory.Error,"Only_identifiers_Slashqualified_names_with_optional_type_arguments_are_currently_supported_in_a_clas_9002","Only identifiers/qualified-names with optional type arguments are currently supported in a class 'extends' clause."),class_expressions_are_not_currently_supported:t(9003,e.DiagnosticCategory.Error,"class_expressions_are_not_currently_supported_9003","'class' expressions are not currently supported."),Language_service_is_disabled:t(9004,e.DiagnosticCategory.Error,"Language_service_is_disabled_9004","Language service is disabled."),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:t(9005,e.DiagnosticCategory.Error,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:t(9006,e.DiagnosticCategory.Error,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:t(17e3,e.DiagnosticCategory.Error,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:t(17001,e.DiagnosticCategory.Error,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:t(17002,e.DiagnosticCategory.Error,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),JSX_attribute_expected:t(17003,e.DiagnosticCategory.Error,"JSX_attribute_expected_17003","JSX attribute expected."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:t(17004,e.DiagnosticCategory.Error,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:t(17005,e.DiagnosticCategory.Error,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:t(17006,e.DiagnosticCategory.Error,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:t(17007,e.DiagnosticCategory.Error,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:t(17008,e.DiagnosticCategory.Error,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:t(17009,e.DiagnosticCategory.Error,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:t(17010,e.DiagnosticCategory.Error,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:t(17011,e.DiagnosticCategory.Error,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:t(17012,e.DiagnosticCategory.Error,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:t(17013,e.DiagnosticCategory.Error,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:t(17014,e.DiagnosticCategory.Error,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:t(17015,e.DiagnosticCategory.Error,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:t(17016,e.DiagnosticCategory.Error,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:t(17017,e.DiagnosticCategory.Error,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:t(17018,e.DiagnosticCategory.Error,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),Circularity_detected_while_resolving_configuration_Colon_0:t(18e3,e.DiagnosticCategory.Error,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),A_path_in_an_extends_option_must_be_relative_or_rooted_but_0_is_not:t(18001,e.DiagnosticCategory.Error,"A_path_in_an_extends_option_must_be_relative_or_rooted_but_0_is_not_18001","A path in an 'extends' option must be relative or rooted, but '{0}' is not."),The_files_list_in_config_file_0_is_empty:t(18002,e.DiagnosticCategory.Error,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:t(18003,e.DiagnosticCategory.Error,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module:t(80001,e.DiagnosticCategory.Suggestion,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module_80001","File is a CommonJS module; it may be converted to an ES6 module."),This_constructor_function_may_be_converted_to_a_class_declaration:t(80002,e.DiagnosticCategory.Suggestion,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:t(80003,e.DiagnosticCategory.Suggestion,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:t(80004,e.DiagnosticCategory.Suggestion,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:t(80005,e.DiagnosticCategory.Suggestion,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:t(80006,e.DiagnosticCategory.Suggestion,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:t(80007,e.DiagnosticCategory.Suggestion,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:t(80008,e.DiagnosticCategory.Suggestion,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),Add_missing_super_call:t(90001,e.DiagnosticCategory.Message,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:t(90002,e.DiagnosticCategory.Message,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:t(90003,e.DiagnosticCategory.Message,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:t(90004,e.DiagnosticCategory.Message,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:t(90005,e.DiagnosticCategory.Message,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:t(90006,e.DiagnosticCategory.Message,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:t(90007,e.DiagnosticCategory.Message,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:t(90008,e.DiagnosticCategory.Message,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:t(90010,e.DiagnosticCategory.Message,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:t(90011,e.DiagnosticCategory.Message,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:t(90012,e.DiagnosticCategory.Message,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_module_1:t(90013,e.DiagnosticCategory.Message,"Import_0_from_module_1_90013","Import '{0}' from module \"{1}\""),Change_0_to_1:t(90014,e.DiagnosticCategory.Message,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Add_0_to_existing_import_declaration_from_1:t(90015,e.DiagnosticCategory.Message,"Add_0_to_existing_import_declaration_from_1_90015","Add '{0}' to existing import declaration from \"{1}\""),Declare_property_0:t(90016,e.DiagnosticCategory.Message,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:t(90017,e.DiagnosticCategory.Message,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:t(90018,e.DiagnosticCategory.Message,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:t(90019,e.DiagnosticCategory.Message,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:t(90020,e.DiagnosticCategory.Message,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:t(90021,e.DiagnosticCategory.Message,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:t(90022,e.DiagnosticCategory.Message,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:t(90023,e.DiagnosticCategory.Message,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:t(90024,e.DiagnosticCategory.Message,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:t(90025,e.DiagnosticCategory.Message,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:t(90026,e.DiagnosticCategory.Message,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:t(90027,e.DiagnosticCategory.Message,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:t(90028,e.DiagnosticCategory.Message,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:t(90029,e.DiagnosticCategory.Message,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:t(90030,e.DiagnosticCategory.Message,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:t(90031,e.DiagnosticCategory.Message,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Import_default_0_from_module_1:t(90032,e.DiagnosticCategory.Message,"Import_default_0_from_module_1_90032","Import default '{0}' from module \"{1}\""),Add_default_import_0_to_existing_import_declaration_from_1:t(90033,e.DiagnosticCategory.Message,"Add_default_import_0_to_existing_import_declaration_from_1_90033","Add default import '{0}' to existing import declaration from \"{1}\""),Add_parameter_name:t(90034,e.DiagnosticCategory.Message,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:t(90035,e.DiagnosticCategory.Message,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:t(90036,e.DiagnosticCategory.Message,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:t(90037,e.DiagnosticCategory.Message,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:t(90038,e.DiagnosticCategory.Message,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:t(90039,e.DiagnosticCategory.Message,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:t(90041,e.DiagnosticCategory.Message,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:t(90053,e.DiagnosticCategory.Message,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Convert_function_to_an_ES2015_class:t(95001,e.DiagnosticCategory.Message,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_function_0_to_class:t(95002,e.DiagnosticCategory.Message,"Convert_function_0_to_class_95002","Convert function '{0}' to class"),Convert_0_to_1_in_0:t(95003,e.DiagnosticCategory.Message,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:t(95004,e.DiagnosticCategory.Message,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:t(95005,e.DiagnosticCategory.Message,"Extract_function_95005","Extract function"),Extract_constant:t(95006,e.DiagnosticCategory.Message,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:t(95007,e.DiagnosticCategory.Message,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:t(95008,e.DiagnosticCategory.Message,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:t(95009,e.DiagnosticCategory.Message,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Annotate_with_types_from_JSDoc:t(95010,e.DiagnosticCategory.Message,"Annotate_with_types_from_JSDoc_95010","Annotate with types from JSDoc"),Infer_type_of_0_from_usage:t(95011,e.DiagnosticCategory.Message,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:t(95012,e.DiagnosticCategory.Message,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:t(95013,e.DiagnosticCategory.Message,"Convert_to_default_import_95013","Convert to default import"),Install_0:t(95014,e.DiagnosticCategory.Message,"Install_0_95014","Install '{0}'"),Replace_import_with_0:t(95015,e.DiagnosticCategory.Message,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:t(95016,e.DiagnosticCategory.Message,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES6_module:t(95017,e.DiagnosticCategory.Message,"Convert_to_ES6_module_95017","Convert to ES6 module"),Add_undefined_type_to_property_0:t(95018,e.DiagnosticCategory.Message,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:t(95019,e.DiagnosticCategory.Message,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:t(95020,e.DiagnosticCategory.Message,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:t(95021,e.DiagnosticCategory.Message,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:t(95022,e.DiagnosticCategory.Message,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:t(95023,e.DiagnosticCategory.Message,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:t(95024,e.DiagnosticCategory.Message,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:t(95025,e.DiagnosticCategory.Message,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:t(95026,e.DiagnosticCategory.Message,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:t(95027,e.DiagnosticCategory.Message,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:t(95028,e.DiagnosticCategory.Message,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:t(95029,e.DiagnosticCategory.Message,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:t(95030,e.DiagnosticCategory.Message,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:t(95031,e.DiagnosticCategory.Message,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:t(95032,e.DiagnosticCategory.Message,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:t(95033,e.DiagnosticCategory.Message,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:t(95034,e.DiagnosticCategory.Message,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:t(95035,e.DiagnosticCategory.Message,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:t(95036,e.DiagnosticCategory.Message,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:t(95037,e.DiagnosticCategory.Message,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:t(95038,e.DiagnosticCategory.Message,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:t(95039,e.DiagnosticCategory.Message,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:t(95040,e.DiagnosticCategory.Message,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:t(95041,e.DiagnosticCategory.Message,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:t(95042,e.DiagnosticCategory.Message,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:t(95043,e.DiagnosticCategory.Message,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:t(95044,e.DiagnosticCategory.Message,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:t(95045,e.DiagnosticCategory.Message,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:t(95046,e.DiagnosticCategory.Message,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:t(95047,e.DiagnosticCategory.Message,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:t(95048,e.DiagnosticCategory.Message,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:t(95049,e.DiagnosticCategory.Message,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:t(95050,e.DiagnosticCategory.Message,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:t(95051,e.DiagnosticCategory.Message,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:t(95052,e.DiagnosticCategory.Message,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:t(95053,e.DiagnosticCategory.Message,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:t(95054,e.DiagnosticCategory.Message,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:t(95055,e.DiagnosticCategory.Message,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:t(95056,e.DiagnosticCategory.Message,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:t(95057,e.DiagnosticCategory.Message,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:t(95058,e.DiagnosticCategory.Message,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:t(95059,e.DiagnosticCategory.Message,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:t(95060,e.DiagnosticCategory.Message,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:t(95061,e.DiagnosticCategory.Message,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:t(95062,e.DiagnosticCategory.Message,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:t(95063,e.DiagnosticCategory.Message,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:t(95064,e.DiagnosticCategory.Message,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:t(95065,e.DiagnosticCategory.Message,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:t(95066,e.DiagnosticCategory.Message,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:t(95067,e.DiagnosticCategory.Message,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:t(95068,e.DiagnosticCategory.Message,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:t(95069,e.DiagnosticCategory.Message,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:t(95070,e.DiagnosticCategory.Message,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:t(95071,e.DiagnosticCategory.Message,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:t(95072,e.DiagnosticCategory.Message,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:t(95073,e.DiagnosticCategory.Message,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:t(95074,e.DiagnosticCategory.Message,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:t(95075,e.DiagnosticCategory.Message,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Allow_accessing_UMD_globals_from_modules:t(95076,e.DiagnosticCategory.Message,"Allow_accessing_UMD_globals_from_modules_95076","Allow accessing UMD globals from modules."),Extract_type:t(95077,e.DiagnosticCategory.Message,"Extract_type_95077","Extract type"),Extract_to_type_alias:t(95078,e.DiagnosticCategory.Message,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:t(95079,e.DiagnosticCategory.Message,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:t(95080,e.DiagnosticCategory.Message,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:t(95081,e.DiagnosticCategory.Message,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:t(95082,e.DiagnosticCategory.Message,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:t(95083,e.DiagnosticCategory.Message,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:t(95084,e.DiagnosticCategory.Message,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:t(95085,e.DiagnosticCategory.Message,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:t(95086,e.DiagnosticCategory.Message,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:t(95087,e.DiagnosticCategory.Message,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:t(95088,e.DiagnosticCategory.Message,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:t(95089,e.DiagnosticCategory.Message,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:t(95090,e.DiagnosticCategory.Message,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:t(95091,e.DiagnosticCategory.Message,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:t(95092,e.DiagnosticCategory.Message,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:t(95093,e.DiagnosticCategory.Message,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:t(95094,e.DiagnosticCategory.Message,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:t(95095,e.DiagnosticCategory.Message,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:t(95096,e.DiagnosticCategory.Message,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:t(95097,e.DiagnosticCategory.Message,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:t(95098,e.DiagnosticCategory.Message,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:t(95099,e.DiagnosticCategory.Message,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:t(95100,e.DiagnosticCategory.Message,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:t(95101,e.DiagnosticCategory.Message,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Add_class_tag:t(95102,e.DiagnosticCategory.Message,"Add_class_tag_95102","Add '@class' tag"),Add_this_tag:t(95103,e.DiagnosticCategory.Message,"Add_this_tag_95103","Add '@this' tag"),Add_this_parameter:t(95104,e.DiagnosticCategory.Message,"Add_this_parameter_95104","Add 'this' parameter."),Convert_function_expression_0_to_arrow_function:t(95105,e.DiagnosticCategory.Message,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:t(95106,e.DiagnosticCategory.Message,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:t(95107,e.DiagnosticCategory.Message,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:t(95108,e.DiagnosticCategory.Message,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:t(95109,e.DiagnosticCategory.Message,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_json_to_read_more_about_this_file:t(95110,e.DiagnosticCategory.Message,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_json_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig.json to read more about this file"),Add_a_return_statement:t(95111,e.DiagnosticCategory.Message,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:t(95112,e.DiagnosticCategory.Message,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:t(95113,e.DiagnosticCategory.Message,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:t(95114,e.DiagnosticCategory.Message,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:t(95115,e.DiagnosticCategory.Message,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:t(95116,e.DiagnosticCategory.Message,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:t(95117,e.DiagnosticCategory.Message,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:t(95118,e.DiagnosticCategory.Message,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:t(95119,e.DiagnosticCategory.Message,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:t(95120,e.DiagnosticCategory.Message,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:t(95121,e.DiagnosticCategory.Message,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:t(95122,e.DiagnosticCategory.Message,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:t(95123,e.DiagnosticCategory.Message,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:t(95124,e.DiagnosticCategory.Message,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:t(95125,e.DiagnosticCategory.Message,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:t(95126,e.DiagnosticCategory.Message,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:t(95127,e.DiagnosticCategory.Message,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:t(95128,e.DiagnosticCategory.Message,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:t(95129,e.DiagnosticCategory.Message,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:t(95130,e.DiagnosticCategory.Message,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:t(95131,e.DiagnosticCategory.Message,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:t(95132,e.DiagnosticCategory.Message,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:t(95133,e.DiagnosticCategory.Message,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:t(95134,e.DiagnosticCategory.Message,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:t(95135,e.DiagnosticCategory.Message,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:t(95136,e.DiagnosticCategory.Message,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:t(95137,e.DiagnosticCategory.Message,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:t(95138,e.DiagnosticCategory.Message,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:t(95139,e.DiagnosticCategory.Message,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:t(95140,e.DiagnosticCategory.Message,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:t(95141,e.DiagnosticCategory.Message,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:t(95142,e.DiagnosticCategory.Message,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:t(95143,e.DiagnosticCategory.Message,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:t(95144,e.DiagnosticCategory.Message,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:t(95145,e.DiagnosticCategory.Message,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:t(95146,e.DiagnosticCategory.Message,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:t(95147,e.DiagnosticCategory.Message,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:t(95148,e.DiagnosticCategory.Message,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:t(95149,e.DiagnosticCategory.Message,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:t(95150,e.DiagnosticCategory.Message,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:t(95151,e.DiagnosticCategory.Message,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:t(95152,e.DiagnosticCategory.Message,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:t(95153,e.DiagnosticCategory.Message,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenation:t(95154,e.DiagnosticCategory.Message,"Can_only_convert_string_concatenation_95154","Can only convert string concatenation"),Selection_is_not_a_valid_statement_or_statements:t(95155,e.DiagnosticCategory.Message,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:t(95156,e.DiagnosticCategory.Message,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:t(95157,e.DiagnosticCategory.Message,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:t(95158,e.DiagnosticCategory.Message,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:t(95159,e.DiagnosticCategory.Message,"Function_not_implemented_95159","Function not implemented."),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:t(18004,e.DiagnosticCategory.Error,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:t(18006,e.DiagnosticCategory.Error,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:t(18007,e.DiagnosticCategory.Error,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:t(18009,e.DiagnosticCategory.Error,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:t(18010,e.DiagnosticCategory.Error,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:t(18011,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:t(18012,e.DiagnosticCategory.Error,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:t(18013,e.DiagnosticCategory.Error,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:t(18014,e.DiagnosticCategory.Error,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:t(18015,e.DiagnosticCategory.Error,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:t(18016,e.DiagnosticCategory.Error,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:t(18017,e.DiagnosticCategory.Error,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:t(18018,e.DiagnosticCategory.Error,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:t(18019,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),A_method_cannot_be_named_with_a_private_identifier:t(18022,e.DiagnosticCategory.Error,"A_method_cannot_be_named_with_a_private_identifier_18022","A method cannot be named with a private identifier."),An_accessor_cannot_be_named_with_a_private_identifier:t(18023,e.DiagnosticCategory.Error,"An_accessor_cannot_be_named_with_a_private_identifier_18023","An accessor cannot be named with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:t(18024,e.DiagnosticCategory.Error,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:t(18026,e.DiagnosticCategory.Error,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:t(18027,e.DiagnosticCategory.Error,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:t(18028,e.DiagnosticCategory.Error,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:t(18029,e.DiagnosticCategory.Error,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:t(18030,e.DiagnosticCategory.Error,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:t(18031,e.DiagnosticCategory.Error,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:t(18032,e.DiagnosticCategory.Error,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhaustiveness_checks_consider_using_an_object_literal_instead:t(18033,e.DiagnosticCategory.Error,"Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhau_18033","Only numeric enums can have computed members, but this expression has type '{0}'. If you do not need exhaustiveness checks, consider using an object literal instead."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:t(18034,e.DiagnosticCategory.Message,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:t(18035,e.DiagnosticCategory.Error,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Should_not_add_return_type_to_the_function_that_is_annotated_by_Extend:t(18036,e.DiagnosticCategory.Error,"Should_not_add_return_type_to_the_function_that_is_annotated_by_Extend_18036","Should not add return type to the function that is annotated by Extend."),Decorator_name_must_be_one_of_ETS_Components:t(18037,e.DiagnosticCategory.Error,"Decorator_name_must_be_one_of_ETS_Components_18037","Decorator name must be one of ETS Components"),A_struct_declaration_without_the_default_modifier_must_have_a_name:t(18038,e.DiagnosticCategory.Error,"A_struct_declaration_without_the_default_modifier_must_have_a_name_18038","A struct declaration without the 'default' modifier must have a name."),Should_not_add_return_type_to_the_function_that_is_annotated_by_Styles:t(18039,e.DiagnosticCategory.Error,"Should_not_add_return_type_to_the_function_that_is_annotated_by_Styles_18039","Should not add return type to the function that is annotated by Styles."),Unable_to_resolve_signature_of_function_decorator_when_decorators_are_not_valid:t(18040,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_function_decorator_when_decorators_are_not_valid_18040","Unable to resolve signature of function decorator when decorators are not valid."),The_statement_must_be_written_use_the_function_0_under_the_if_condition:t(28e3,e.DiagnosticCategory.Warning,"The_statement_must_be_written_use_the_function_0_under_the_if_condition_28000","The statement must be written use the function '{0}' under the if condition."),The_struct_name_cannot_contain_reserved_tag_name_Colon_0:t(28001,e.DiagnosticCategory.Error,"The_struct_name_cannot_contain_reserved_tag_name_Colon_0_28001","The struct name cannot contain reserved tag name: '{0}'."),This_API_has_been_Special_Markings_exercise_caution_when_using_this_API:t(28002,e.DiagnosticCategory.Warning,"This_API_has_been_Special_Markings_exercise_caution_when_using_this_API_28002","This API has been Special Markings. exercise caution when using this API."),Looking_up_in_oh_modules_folder_initial_location_0:t(18041,e.DiagnosticCategory.Message,"Looking_up_in_oh_modules_folder_initial_location_0_18041","Looking up in 'oh_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_oh_modules_folder:t(18042,e.DiagnosticCategory.Message,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_oh_modul_18042","Containing file is not specified and root directory cannot be determined, skipping lookup in 'oh_modules' folder."),Loading_module_0_from_oh_modules_folder_target_file_type_1:t(18043,e.DiagnosticCategory.Message,"Loading_module_0_from_oh_modules_folder_target_file_type_1_18043","Loading module '{0}' from 'oh_modules' folder, target file type '{1}'."),Found_oh_package_json5_at_0:t(18044,e.DiagnosticCategory.Message,"Found_oh_package_json5_at_0_18044","Found 'oh-package.json5' at '{0}'."),oh_package_json5_does_not_have_a_0_field:t(18045,e.DiagnosticCategory.Message,"oh_package_json5_does_not_have_a_0_field_18045","'oh-package.json5' does not have a '{0}' field."),oh_package_json5_has_0_field_1_that_references_2:t(18046,e.DiagnosticCategory.Message,"oh_package_json5_has_0_field_1_that_references_2_18046","'oh-package.json5' has '{0}' field '{1}' that references '{2}'."),Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in_later_SDK_version_Please_make_sure_the_corresponding_d_ts_file_is_provided_and_the_napis_are_correctly_declared:t(18047,e.DiagnosticCategory.Warning,"Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in__18047","Currently module for '{0}' is not verified. If you're importing napi, its verification will be enabled in later SDK version. Please make sure the corresponding .d.ts file is provided and the napis are correctly declared."),UI_component_0_cannot_be_used_in_this_place:t(18048,e.DiagnosticCategory.Error,"UI_component_0_cannot_be_used_in_this_place_18048","UI component '{0}' cannot be used in this place."),Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden:t(18049,e.DiagnosticCategory.Warning,"Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden_18049","Importing ArkTS files in JS and TS files is about to be forbidden."),Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden:t(18050,e.DiagnosticCategory.Error,"Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden_18050","Importing ArkTS files in JS and TS files is forbidden.")}}(d||(d={})),function(e){var t;function r(e){return e>=78}e.tokenIsIdentifierOrKeyword=r,e.tokenIsIdentifierOrKeywordOrGreaterThan=function(e){return 31===e||r(e)};var n=((t={abstract:126,any:129,as:127,asserts:128,bigint:156,boolean:132,break:80,case:81,catch:82,class:83,struct:84,continue:86,const:85}).constructor=133,t.debugger=87,t.declare=134,t.default=88,t.delete=89,t.do=90,t.else=91,t.enum=92,t.export=93,t.extends=94,t.false=95,t.finally=96,t.for=97,t.from=154,t.function=98,t.get=135,t.if=99,t.implements=117,t.import=100,t.in=101,t.infer=136,t.instanceof=102,t.interface=118,t.intrinsic=137,t.is=138,t.keyof=139,t.let=119,t.module=140,t.namespace=141,t.never=142,t.new=103,t.null=104,t.number=145,t.object=146,t.package=120,t.private=121,t.protected=122,t.public=123,t.readonly=143,t.require=144,t.global=155,t.return=105,t.set=147,t.static=124,t.string=148,t.super=106,t.switch=107,t.symbol=149,t.this=108,t.throw=109,t.true=110,t.try=111,t.type=150,t.typeof=112,t.undefined=151,t.unique=152,t.unknown=153,t.var=113,t.void=114,t.while=115,t.with=116,t.yield=125,t.async=130,t.await=131,t.of=157,t),i=new e.Map(e.getEntries(n)),o=new e.Map(e.getEntries(a(a({},n),{"{":18,"}":19,"(":20,")":21,"[":22,"]":23,".":24,"...":25,";":26,",":27,"<":29,">":31,"<=":32,">=":33,"==":34,"!=":35,"===":36,"!==":37,"=>":38,"+":39,"-":40,"**":42,"*":41,"/":43,"%":44,"++":45,"--":46,"<<":47,"</":30,">>":48,">>>":49,"&":50,"|":51,"^":52,"!":53,"~":54,"&&":55,"||":56,"?":57,"??":60,"?.":28,":":58,"=":62,"+=":63,"-=":64,"*=":65,"**=":66,"/=":67,"%=":68,"<<=":69,">>=":70,">>>=":71,"&=":72,"|=":73,"^=":77,"||=":74,"&&=":75,"??=":76,"@":59,"`":61}))),s=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1569,1594,1600,1610,1649,1747,1749,1749,1765,1766,1786,1788,1808,1808,1810,1836,1920,1957,2309,2361,2365,2365,2384,2384,2392,2401,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2784,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2877,2877,2908,2909,2911,2913,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3294,3294,3296,3297,3333,3340,3342,3344,3346,3368,3370,3385,3424,3425,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3946,3976,3979,4096,4129,4131,4135,4137,4138,4176,4181,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6067,6176,6263,6272,6312,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8319,8319,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12329,12337,12341,12344,12346,12353,12436,12445,12446,12449,12538,12540,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65138,65140,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],c=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,768,846,864,866,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1155,1158,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1425,1441,1443,1465,1467,1469,1471,1471,1473,1474,1476,1476,1488,1514,1520,1522,1569,1594,1600,1621,1632,1641,1648,1747,1749,1756,1759,1768,1770,1773,1776,1788,1808,1836,1840,1866,1920,1968,2305,2307,2309,2361,2364,2381,2384,2388,2392,2403,2406,2415,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2524,2525,2527,2531,2534,2545,2562,2562,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2649,2652,2654,2654,2662,2676,2689,2691,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2784,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2876,2883,2887,2888,2891,2893,2902,2903,2908,2909,2911,2913,2918,2927,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3006,3010,3014,3016,3018,3021,3031,3031,3047,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3134,3140,3142,3144,3146,3149,3157,3158,3168,3169,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3262,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3297,3302,3311,3330,3331,3333,3340,3342,3344,3346,3368,3370,3385,3390,3395,3398,3400,3402,3405,3415,3415,3424,3425,3430,3439,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3805,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3946,3953,3972,3974,3979,3984,3991,3993,4028,4038,4038,4096,4129,4131,4135,4137,4138,4140,4146,4150,4153,4160,4169,4176,4185,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,4969,4977,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6099,6112,6121,6160,6169,6176,6263,6272,6313,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8319,8319,8400,8412,8417,8417,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12335,12337,12341,12344,12346,12353,12436,12441,12442,12445,12446,12449,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65056,65059,65075,65076,65101,65103,65136,65138,65140,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500],l=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],u=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],d=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2208,2228,2230,2237,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42943,42946,42950,42999,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69376,69404,69415,69415,69424,69445,69600,69622,69635,69687,69763,69807,69840,69864,69891,69926,69956,69956,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70751,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71680,71723,71840,71903,71935,71935,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72384,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,123136,123180,123191,123197,123214,123214,123584,123627,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101],p=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2208,2228,2230,2237,2259,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3162,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3328,3331,3333,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7673,7675,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42943,42946,42950,42999,43047,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69376,69404,69415,69415,69424,69456,69600,69622,69632,69702,69734,69743,69759,69818,69840,69864,69872,69881,69888,69940,69942,69951,69956,69958,69968,70003,70006,70006,70016,70084,70089,70092,70096,70106,70108,70108,70144,70161,70163,70199,70206,70206,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70751,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71680,71738,71840,71913,71935,71935,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72384,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92768,92777,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,123136,123180,123184,123197,123200,123209,123214,123214,123584,123641,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101,917760,917999],f=/^\s*\/\/\/?\s*@(ts-expect-error|ts-ignore)/,m=/^\s*(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/;function g(e,t){if(e<t[0])return!1;for(var r,n=0,i=t.length;n+1<i;){if(r=n+(i-n)/2,t[r-=r%2]<=e&&e<=t[r+1])return!0;e<t[r]?i=r:n=r+2}return!1}function _(e,t){return g(e,t>=2?d:1===t?l:s)}e.isUnicodeIdentifierStart=_;var h,y=(h=[],o.forEach((function(e,t){h[e]=t})),h);function v(e){for(var t=new Array,r=0,n=0;r<e.length;){var i=e.charCodeAt(r);switch(r++,i){case 13:10===e.charCodeAt(r)&&r++;case 10:t.push(n),n=r;break;default:i>127&&w(i)&&(t.push(n),n=r)}}return t.push(n),t}function b(t,r,n,i,a){(r<0||r>=t.length)&&(a?r=r<0?0:r>=t.length?t.length-1:r:e.Debug.fail("Bad line number. Line: "+r+", lineStarts.length: "+t.length+" , line map is correct? "+(void 0!==i?e.arraysEqual(t,v(i)):"unknown")));var o=t[r]+n;return a?o>t[r+1]?t[r+1]:"string"==typeof i&&o>i.length?i.length:o:(r<t.length-1?e.Debug.assert(o<t[r+1]):void 0!==i&&e.Debug.assert(o<=i.length),o)}function k(e){return e.lineMap||(e.lineMap=v(e.text))}function x(e,t){var r=E(e,t);return{line:r,character:t-e[r]}}function E(t,r,n){var i=e.binarySearch(t,r,e.identity,e.compareValues,n);return i<0&&(i=~i-1,e.Debug.assert(-1!==i,"position cannot precede the beginning of the file")),i}function S(e){return D(e)||w(e)}function D(e){return 32===e||9===e||11===e||12===e||160===e||133===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function w(e){return 10===e||13===e||8232===e||8233===e}function T(e){return e>=48&&e<=57}function C(e){return T(e)||e>=65&&e<=70||e>=97&&e<=102}function A(e){return e>=48&&e<=55}e.tokenToString=function(e){return y[e]},e.stringToToken=function(e){return o.get(e)},e.computeLineStarts=v,e.getPositionOfLineAndCharacter=function(e,t,r,n){return e.getPositionOfLineAndCharacter?e.getPositionOfLineAndCharacter(t,r,n):b(k(e),t,r,e.text,n)},e.computePositionOfLineAndCharacter=b,e.getLineStarts=k,e.computeLineAndCharacterOfPosition=x,e.computeLineOfPosition=E,e.getLinesBetweenPositions=function(e,t,r){if(t===r)return 0;var n=k(e),i=Math.min(t,r),a=i===r,o=a?t:r,s=E(n,i),c=E(n,o,s);return a?s-c:c-s},e.getLineAndCharacterOfPosition=function(e,t){return x(k(e),t)},e.isWhiteSpaceLike=S,e.isWhiteSpaceSingleLine=D,e.isLineBreak=w,e.isOctalDigit=A,e.couldStartTrivia=function(e,t){var r=e.charCodeAt(t);switch(r){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return 0===t;default:return r>127}},e.skipTrivia=function(t,r,n,i){if(void 0===i&&(i=!1),e.positionIsSynthesized(r))return r;for(;;){var a=t.charCodeAt(r);switch(a){case 13:10===t.charCodeAt(r+1)&&r++;case 10:if(r++,n)return r;continue;case 9:case 11:case 12:case 32:r++;continue;case 47:if(i)break;if(47===t.charCodeAt(r+1)){for(r+=2;r<t.length&&!w(t.charCodeAt(r));)r++;continue}if(42===t.charCodeAt(r+1)){for(r+=2;r<t.length;){if(42===t.charCodeAt(r)&&47===t.charCodeAt(r+1)){r+=2;break}r++}continue}break;case 60:case 124:case 61:case 62:if(P(t,r)){r=I(t,r);continue}break;case 35:if(0===r&&O(t,r)){r=R(t,r);continue}break;default:if(a>127&&S(a)){r++;continue}}return r}};var N=7;function P(t,r){if(e.Debug.assert(r>=0),0===r||w(t.charCodeAt(r-1))){var n=t.charCodeAt(r);if(r+N<t.length){for(var i=0;i<N;i++)if(t.charCodeAt(r+i)!==n)return!1;return 61===n||32===t.charCodeAt(r+N)}}return!1}function I(t,r,n){n&&n(e.Diagnostics.Merge_conflict_marker_encountered,r,N);var i=t.charCodeAt(r),a=t.length;if(60===i||62===i)for(;r<a&&!w(t.charCodeAt(r));)r++;else for(e.Debug.assert(124===i||61===i);r<a;){var o=t.charCodeAt(r);if((61===o||62===o)&&o!==i&&P(t,r))break;r++}return r}var F=/^#!.*/;function O(t,r){return e.Debug.assert(0===r),F.test(t)}function R(e,t){return t+=F.exec(e)[0].length}function M(e,t,r,n,i,a,o){var s,c,l,u,d=!1,p=n,f=o;if(0===r){p=!0;var m=z(t);m&&(r=m.length)}e:for(;r>=0&&r<t.length;){var g=t.charCodeAt(r);switch(g){case 13:10===t.charCodeAt(r+1)&&r++;case 10:if(r++,n)break e;p=!0,d&&(u=!0);continue;case 9:case 11:case 12:case 32:r++;continue;case 47:var _=t.charCodeAt(r+1),h=!1;if(47===_||42===_){var y=47===_?2:3,v=r;if(r+=2,47===_)for(;r<t.length;){if(w(t.charCodeAt(r))){h=!0;break}r++}else for(;r<t.length;){if(42===t.charCodeAt(r)&&47===t.charCodeAt(r+1)){r+=2;break}r++}if(p){if(d&&(f=i(s,c,l,u,a,f),!e&&f))return f;s=v,c=r,l=y,u=h,d=!0}continue}break e;default:if(g>127&&S(g)){d&&w(g)&&(u=!0),r++;continue}break e}}return d&&(f=i(s,c,l,u,a,f)),f}function L(e,t,r,n,i){return M(!0,e,t,!1,r,n,i)}function j(e,t,r,n,i){return M(!0,e,t,!0,r,n,i)}function B(e,t,r,n,i,a){return a||(a=[]),a.push({kind:r,pos:e,end:t,hasTrailingNewLine:n}),a}function z(e){var t=F.exec(e);if(t)return t[0]}function U(e,t){return e>=65&&e<=90||e>=97&&e<=122||36===e||95===e||e>127&&_(e,t)}function q(e,t,r){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||36===e||95===e||1===r&&(45===e||58===e)||e>127&&function(e,t){return g(e,t>=2?p:1===t?u:c)}(e,t)}e.isShebangTrivia=O,e.scanShebangTrivia=R,e.forEachLeadingCommentRange=function(e,t,r,n){return M(!1,e,t,!1,r,n)},e.forEachTrailingCommentRange=function(e,t,r,n){return M(!1,e,t,!0,r,n)},e.reduceEachLeadingCommentRange=L,e.reduceEachTrailingCommentRange=j,e.getLeadingCommentRanges=function(e,t){return L(e,t,B,void 0,void 0)},e.getTrailingCommentRanges=function(e,t){return j(e,t,B,void 0,void 0)},e.getShebang=z,e.isIdentifierStart=U,e.isIdentifierPart=q,e.isIdentifierText=function(e,t,r){var n=J(e,0);if(!U(n,t))return!1;for(var i=V(n);i<e.length;i+=V(n))if(!q(n=J(e,i),t,r))return!1;return!0},e.createScanner=function(t,n,a,o,s,c,l){void 0===a&&(a=0);var u,d,p,g,_,h,y,v,b=o,k=0,x=!1;ue(b,c,l);var E={getStartPos:function(){return p},getTextPos:function(){return u},getToken:function(){return _},getTokenPos:function(){return g},getTokenText:function(){return b.substring(g,u)},getTokenValue:function(){return h},hasUnicodeEscape:function(){return 0!=(1024&y)},hasExtendedUnicodeEscape:function(){return 0!=(8&y)},hasPrecedingLineBreak:function(){return 0!=(1&y)},hasPrecedingJSDocComment:function(){return 0!=(2&y)},isIdentifier:function(){return 78===_||_>116},isReservedWord:function(){return _>=80&&_<=116},isUnterminated:function(){return 0!=(4&y)},getCommentDirectives:function(){return v},getNumericLiteralFlags:function(){return 1008&y},getTokenFlags:function(){return y},reScanGreaterToken:function(){if(31===_){if(62===b.charCodeAt(u))return 62===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=71):(u+=2,_=49):61===b.charCodeAt(u+1)?(u+=2,_=70):(u++,_=48);if(61===b.charCodeAt(u))return u++,_=33}return _},reScanAsteriskEqualsToken:function(){return e.Debug.assert(65===_,"'reScanAsteriskEqualsToken' should only be called on a '*='"),u=g+1,_=62},reScanSlashToken:function(){if(43===_||67===_){for(var r=g+1,n=!1,i=!1;;){if(r>=d){y|=4,N(e.Diagnostics.Unterminated_regular_expression_literal);break}var a=b.charCodeAt(r);if(w(a)){y|=4,N(e.Diagnostics.Unterminated_regular_expression_literal);break}if(n)n=!1;else{if(47===a&&!i){r++;break}91===a?i=!0:92===a?n=!0:93===a&&(i=!1)}r++}for(;r<d&&q(b.charCodeAt(r),t);)r++;u=r,h=b.substring(g,u),_=13}return _},reScanTemplateToken:function(t){return e.Debug.assert(19===_,"'reScanTemplateToken' should only be called on a '}'"),u=g,_=G(t)},reScanTemplateHeadOrNoSubstitutionTemplate:function(){return u=g,_=G(!0)},scanJsxIdentifier:function(){if(r(_)){for(var e=!1;u<d;){var t=b.charCodeAt(u);if(45!==t)if(58!==t||e){var n=u;if(h+=ee(),u===n)break}else h+=":",u++,e=!0;else h+="-",u++}":"===h.slice(-1)&&(h=h.slice(0,-1),u--)}return _},scanJsxAttributeValue:ce,reScanJsxAttributeValue:function(){return u=g=p,ce()},reScanJsxToken:function(){return u=g=p,_=se()},reScanLessThanToken:function(){if(47===_)return u=g+1,_=29;return _},reScanQuestionToken:function(){return e.Debug.assert(60===_,"'reScanQuestionToken' should only be called on a '??'"),u=g+1,_=57},reScanInvalidIdentifier:function(){e.Debug.assert(0===_,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),u=g=p,y=0;var t=J(b,u),r=ae(t,99);if(r)return _=r;return u+=V(t),_},scanJsxToken:se,scanJsDocToken:function(){if(p=g=u,y=0,u>=d)return _=1;var e=J(b,u);switch(u+=V(e),e){case 9:case 11:case 12:case 32:for(;u<d&&D(b.charCodeAt(u));)u++;return _=5;case 64:return _=59;case 13:10===b.charCodeAt(u)&&u++;case 10:return y|=1,_=4;case 42:return _=41;case 123:return _=18;case 125:return _=19;case 91:return _=22;case 93:return _=23;case 60:return _=29;case 62:return _=31;case 61:return _=62;case 44:return _=27;case 46:return _=24;case 96:return _=61;case 92:u--;var r=Z();if(r>=0&&U(r,t))return u+=3,y|=8,h=X()+ee(),_=te();var n=Q();return n>=0&&U(n,t)?(u+=6,y|=1024,h=String.fromCharCode(n)+ee(),_=te()):(u++,_=0)}if(U(e,t)){for(var i=e;u<d&&q(i=J(b,u),t)||45===b.charCodeAt(u);)u+=V(i);return h=b.substring(g,u),92===i&&(h+=ee()),_=te()}return _=0},scan:ie,getText:function(){return b},clearCommentDirectives:function(){v=void 0},setText:ue,setScriptTarget:function(e){t=e},setLanguageVariant:function(e){a=e},setOnError:function(e){s=e},setTextPos:de,setInJSDocType:function(e){k+=e?1:-1},tryScan:function(e){return le(e,!1)},lookAhead:function(e){return le(e,!0)},scanRange:function(e,t,r){var n=d,i=u,a=p,o=g,s=_,c=h,l=y,f=v;ue(b,e,t);var m=r();return d=n,u=i,p=a,g=o,_=s,h=c,y=l,v=f,m},setEtsContext:function(e){x=e}};return e.Debug.isDebugging&&Object.defineProperty(E,"__debugShowCurrentPositionInText",{get:function(){var e=E.getText();return e.slice(0,E.getStartPos())+"║"+e.slice(E.getStartPos())}}),E;function N(e,t,r){if(void 0===t&&(t=u),s){var n=u;u=t,s(e,r||0),u=n}}function F(){for(var t=u,r=!1,n=!1,i="";;){var a=b.charCodeAt(u);if(95!==a){if(!T(a))break;r=!0,n=!1,u++}else y|=512,r?(r=!1,n=!0,i+=b.substring(t,u)):N(n?e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:e.Diagnostics.Numeric_separators_are_not_allowed_here,u,1),t=++u}return 95===b.charCodeAt(u-1)&&N(e.Diagnostics.Numeric_separators_are_not_allowed_here,u-1,1),i+b.substring(t,u)}function M(){var t,r,n=u,i=F();46===b.charCodeAt(u)&&(u++,t=F());var a,o=u;if(69===b.charCodeAt(u)||101===b.charCodeAt(u)){u++,y|=16,43!==b.charCodeAt(u)&&45!==b.charCodeAt(u)||u++;var s=u,c=F();c?(r=b.substring(o,s)+c,o=u):N(e.Diagnostics.Digit_expected)}if(512&y?(a=i,t&&(a+="."+t),r&&(a+=r)):a=b.substring(n,o),void 0!==t||16&y)return L(n,void 0===t&&!!(16&y)),{type:8,value:""+ +a};h=a;var l=ne();return L(n),{type:l,value:h}}function L(r,n){if(U(J(b,u),t)){var i=u,a=ee().length;1===a&&"n"===b[i]?N(n?e.Diagnostics.A_bigint_literal_cannot_use_exponential_notation:e.Diagnostics.A_bigint_literal_must_be_an_integer,r,i-r+1):(N(e.Diagnostics.An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal,i,a),u=i)}}function j(){for(var e=u;A(b.charCodeAt(u));)u++;return+b.substring(e,u)}function B(e,t){var r=H(e,!1,t);return r?parseInt(r,16):-1}function z(e,t){return H(e,!0,t)}function H(t,r,n){for(var i=[],a=!1,o=!1;i.length<t||r;){var s=b.charCodeAt(u);if(n&&95===s)y|=512,a?(a=!1,o=!0):N(o?e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:e.Diagnostics.Numeric_separators_are_not_allowed_here,u,1),u++;else{if(a=n,s>=65&&s<=70)s+=32;else if(!(s>=48&&s<=57||s>=97&&s<=102))break;i.push(s),u++,o=!1}}return i.length<t&&(i=[]),95===b.charCodeAt(u-1)&&N(e.Diagnostics.Numeric_separators_are_not_allowed_here,u-1,1),String.fromCharCode.apply(String,i)}function W(t){void 0===t&&(t=!1);for(var r=b.charCodeAt(u),n="",i=++u;;){if(u>=d){n+=b.substring(i,u),y|=4,N(e.Diagnostics.Unterminated_string_literal);break}var a=b.charCodeAt(u);if(a===r){n+=b.substring(i,u),u++;break}if(92!==a||t){if(w(a)&&!t){n+=b.substring(i,u),y|=4,N(e.Diagnostics.Unterminated_string_literal);break}u++}else n+=b.substring(i,u),n+=$(),i=u}return n}function G(t){for(var r,n=96===b.charCodeAt(u),i=++u,a="";;){if(u>=d){a+=b.substring(i,u),y|=4,N(e.Diagnostics.Unterminated_template_literal),r=n?14:17;break}var o=b.charCodeAt(u);if(96===o){a+=b.substring(i,u),u++,r=n?14:17;break}if(36===o&&u+1<d&&123===b.charCodeAt(u+1)){a+=b.substring(i,u),u+=2,r=n?15:16;break}92!==o?13!==o?u++:(a+=b.substring(i,u),++u<d&&10===b.charCodeAt(u)&&u++,a+="\n",i=u):(a+=b.substring(i,u),a+=$(t),i=u)}return e.Debug.assert(void 0!==r),h=a,r}function $(t){var r=u;if(++u>=d)return N(e.Diagnostics.Unexpected_end_of_text),"";var n=b.charCodeAt(u);switch(u++,n){case 48:return t&&u<d&&T(b.charCodeAt(u))?(u++,y|=2048,b.substring(r,u)):"\0";case 98:return"\b";case 116:return"\t";case 110:return"\n";case 118:return"\v";case 102:return"\f";case 114:return"\r";case 39:return"'";case 34:return'"';case 117:if(t)for(var i=u;i<u+4;i++)if(i<d&&!C(b.charCodeAt(i))&&123!==b.charCodeAt(i))return u=i,y|=2048,b.substring(r,u);if(u<d&&123===b.charCodeAt(u)){if(u++,t&&!C(b.charCodeAt(u)))return y|=2048,b.substring(r,u);if(t){var a=u,o=z(1,!1),s=o?parseInt(o,16):-1;if(!(s<=1114111&&125===b.charCodeAt(u)))return y|=2048,b.substring(r,u);u=a}return y|=8,X()}return y|=1024,Y(4);case 120:if(t){if(!C(b.charCodeAt(u)))return y|=2048,b.substring(r,u);if(!C(b.charCodeAt(u+1)))return u++,y|=2048,b.substring(r,u)}return Y(2);case 13:u<d&&10===b.charCodeAt(u)&&u++;case 10:case 8232:case 8233:return"";default:return String.fromCharCode(n)}}function Y(t){var r=B(t,!1);return r>=0?String.fromCharCode(r):(N(e.Diagnostics.Hexadecimal_digit_expected),"")}function X(){var t=z(1,!1),r=t?parseInt(t,16):-1,n=!1;return r<0?(N(e.Diagnostics.Hexadecimal_digit_expected),n=!0):r>1114111&&(N(e.Diagnostics.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive),n=!0),u>=d?(N(e.Diagnostics.Unexpected_end_of_text),n=!0):125===b.charCodeAt(u)?u++:(N(e.Diagnostics.Unterminated_Unicode_escape_sequence),n=!0),n?"":K(r)}function Q(){if(u+5<d&&117===b.charCodeAt(u+1)){var e=u;u+=2;var t=B(4,!1);return u=e,t}return-1}function Z(){if(t>=2&&117===J(b,u+1)&&123===J(b,u+2)){var e=u;u+=3;var r=z(1,!1),n=r?parseInt(r,16):-1;return u=e,n}return-1}function ee(){for(var e="",r=u;u<d;){var n=J(b,u);if(q(n,t))u+=V(n);else{if(92!==n)break;if((n=Z())>=0&&q(n,t)){u+=3,y|=8,e+=X(),r=u;continue}if(!((n=Q())>=0&&q(n,t)))break;y|=1024,e+=b.substring(r,u),e+=K(n),r=u+=6}}return e+=b.substring(r,u)}function te(){var e=h.length;if(e>=2&&e<=12){var t=h.charCodeAt(0);if(t>=97&&t<=122){var r=i.get(h);if(void 0!==r)return _=r,84!==r||x||(_=78),_}}return _=78}function re(t){for(var r="",n=!1,i=!1;;){var a=b.charCodeAt(u);if(95!==a){if(n=!0,!T(a)||a-48>=t)break;r+=b[u],u++,i=!1}else y|=512,n?(n=!1,i=!0):N(i?e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted:e.Diagnostics.Numeric_separators_are_not_allowed_here,u,1),u++}return 95===b.charCodeAt(u-1)&&N(e.Diagnostics.Numeric_separators_are_not_allowed_here,u-1,1),r}function ne(){if(110===b.charCodeAt(u))return h+="n",384&y&&(h=e.parsePseudoBigInt(h)+"n"),u++,9;var t=128&y?parseInt(h.slice(2),2):256&y?parseInt(h.slice(2),8):+h;return h=""+t,8}function ie(){var r;p=u,y=0;for(var i=!1;;){if(g=u,u>=d)return _=1;var o=J(b,u);if(35===o&&0===u&&O(b,u)){if(u=R(b,u),n)continue;return _=6}switch(o){case 10:case 13:if(y|=1,n){u++;continue}return 13===o&&u+1<d&&10===b.charCodeAt(u+1)?u+=2:u++,_=4;case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8203:case 8239:case 8287:case 12288:case 65279:if(n){u++;continue}for(;u<d&&D(b.charCodeAt(u));)u++;return _=5;case 33:return 61===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=37):(u+=2,_=35):(u++,_=53);case 34:case 39:return h=W(),_=10;case 96:return _=G(!1);case 37:return 61===b.charCodeAt(u+1)?(u+=2,_=68):(u++,_=44);case 38:return 38===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=75):(u+=2,_=55):61===b.charCodeAt(u+1)?(u+=2,_=72):(u++,_=50);case 40:return u++,_=20;case 41:return u++,_=21;case 42:if(61===b.charCodeAt(u+1))return u+=2,_=65;if(42===b.charCodeAt(u+1))return 61===b.charCodeAt(u+2)?(u+=3,_=66):(u+=2,_=42);if(u++,k&&!i&&1&y){i=!0;continue}return _=41;case 43:return 43===b.charCodeAt(u+1)?(u+=2,_=45):61===b.charCodeAt(u+1)?(u+=2,_=63):(u++,_=39);case 44:return u++,_=27;case 45:return 45===b.charCodeAt(u+1)?(u+=2,_=46):61===b.charCodeAt(u+1)?(u+=2,_=64):(u++,_=40);case 46:return T(b.charCodeAt(u+1))?(h=M().value,_=8):46===b.charCodeAt(u+1)&&46===b.charCodeAt(u+2)?(u+=3,_=25):(u++,_=24);case 47:if(47===b.charCodeAt(u+1)){for(u+=2;u<d&&!w(b.charCodeAt(u));)u++;if(v=oe(v,b.slice(g,u),f,g),n)continue;return _=2}if(42===b.charCodeAt(u+1)){u+=2,42===b.charCodeAt(u)&&47!==b.charCodeAt(u+1)&&(y|=2);for(var s=!1,c=g;u<d;){var l=b.charCodeAt(u);if(42===l&&47===b.charCodeAt(u+1)){u+=2,s=!0;break}u++,w(l)&&(c=u,y|=1)}if(v=oe(v,b.slice(c,u),m,c),s||N(e.Diagnostics.Asterisk_Slash_expected),n)continue;return s||(y|=4),_=3}return 61===b.charCodeAt(u+1)?(u+=2,_=67):(u++,_=43);case 48:if(u+2<d&&(88===b.charCodeAt(u+1)||120===b.charCodeAt(u+1)))return u+=2,(h=z(1,!0))||(N(e.Diagnostics.Hexadecimal_digit_expected),h="0"),h="0x"+h,y|=64,_=ne();if(u+2<d&&(66===b.charCodeAt(u+1)||98===b.charCodeAt(u+1)))return u+=2,(h=re(2))||(N(e.Diagnostics.Binary_digit_expected),h="0"),h="0b"+h,y|=128,_=ne();if(u+2<d&&(79===b.charCodeAt(u+1)||111===b.charCodeAt(u+1)))return u+=2,(h=re(8))||(N(e.Diagnostics.Octal_digit_expected),h="0"),h="0o"+h,y|=256,_=ne();if(u+1<d&&A(b.charCodeAt(u+1)))return h=""+j(),y|=32,_=8;case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return r=M(),_=r.type,h=r.value,_;case 58:return u++,_=58;case 59:return u++,_=26;case 60:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return 60===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=69):(u+=2,_=47):61===b.charCodeAt(u+1)?(u+=2,_=32):1===a&&47===b.charCodeAt(u+1)&&42!==b.charCodeAt(u+2)?(u+=2,_=30):(u++,_=29);case 61:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return 61===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=36):(u+=2,_=34):62===b.charCodeAt(u+1)?(u+=2,_=38):(u++,_=62);case 62:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return u++,_=31;case 63:return 46!==b.charCodeAt(u+1)||T(b.charCodeAt(u+2))?63===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=76):(u+=2,_=60):(u++,_=57):(u+=2,_=28);case 91:return u++,_=22;case 93:return u++,_=23;case 94:return 61===b.charCodeAt(u+1)?(u+=2,_=77):(u++,_=52);case 123:return u++,_=18;case 124:if(P(b,u)){if(u=I(b,u,N),n)continue;return _=7}return 124===b.charCodeAt(u+1)?61===b.charCodeAt(u+2)?(u+=3,_=74):(u+=2,_=56):61===b.charCodeAt(u+1)?(u+=2,_=73):(u++,_=51);case 125:return u++,_=19;case 126:return u++,_=54;case 64:return u++,_=59;case 92:var x=Z();if(x>=0&&U(x,t))return u+=3,y|=8,h=X()+ee(),_=te();var E=Q();return E>=0&&U(E,t)?(u+=6,y|=1024,h=String.fromCharCode(E)+ee(),_=te()):(N(e.Diagnostics.Invalid_character),u++,_=0);case 35:if(0!==u&&"!"===b[u+1])return N(e.Diagnostics.can_only_be_used_at_the_start_of_a_file),u++,_=0;if(u++,U(o=b.charCodeAt(u),t)){for(u++;u<d&&q(o=b.charCodeAt(u),t);)u++;h=b.substring(g,u),92===o&&(h+=ee())}else h="#",N(e.Diagnostics.Invalid_character);return _=79;default:var S=ae(o,t);if(S)return _=S;if(D(o)){u+=V(o);continue}if(w(o)){y|=1,u+=V(o);continue}return N(e.Diagnostics.Invalid_character),u+=V(o),_=0}}}function ae(e,t){var r=e;if(U(r,t)){for(u+=V(r);u<d&&q(r=J(b,u),t);)u+=V(r);return h=b.substring(g,u),92===r&&(h+=ee()),te()}}function oe(t,r,n,i){var a=function(e,t){var r=t.exec(e);if(!r)return;switch(r[1]){case"ts-expect-error":return 0;case"ts-ignore":return 1}return}(r,n);return void 0===a?t:e.append(t,{range:{pos:i,end:u},type:a})}function se(){if(p=g=u,u>=d)return _=1;var t=b.charCodeAt(u);if(60===t)return 47===b.charCodeAt(u+1)?(u+=2,_=30):(u++,_=29);if(123===t)return u++,_=18;for(var r=0,n=-1;u<d&&(D(t)||(n=u),123!==(t=b.charCodeAt(u)));){if(60===t){if(P(b,u))return u=I(b,u,N),_=7;break}62===t&&N(e.Diagnostics.Unexpected_token_Did_you_mean_or_gt,u,1),125===t&&N(e.Diagnostics.Unexpected_token_Did_you_mean_or_rbrace,u,1),n>0&&n++,w(t)&&0===r?r=-1:S(t)||(r=u),u++}var i=-1===n?u:n;return h=b.substring(p,i),-1===r?12:11}function ce(){switch(p=u,b.charCodeAt(u)){case 34:case 39:return h=W(!0),_=10;default:return ie()}}function le(e,t){var r=u,n=p,i=g,a=_,o=h,s=y,c=e();return c&&!t||(u=r,p=n,g=i,_=a,h=o,y=s),c}function ue(e,t,r){b=e||"",d=void 0===r?b.length:t+r,de(t||0)}function de(t){e.Debug.assert(t>=0),u=t,p=t,g=t,_=0,h=void 0,y=0}};var J=String.prototype.codePointAt?function(e,t){return e.codePointAt(t)}:function(e,t){var r=e.length;if(!(t<0||t>=r)){var n=e.charCodeAt(t);if(n>=55296&&n<=56319&&r>t+1){var i=e.charCodeAt(t+1);if(i>=56320&&i<=57343)return 1024*(n-55296)+i-56320+65536}return n}};function V(e){return e>=65536?2:1}var H=String.fromCodePoint?function(e){return String.fromCodePoint(e)}:function(t){if(e.Debug.assert(0<=t&&t<=1114111),t<=65535)return String.fromCharCode(t);var r=Math.floor((t-65536)/1024)+55296,n=(t-65536)%1024+56320;return String.fromCharCode(r,n)};function K(e){return H(e)}e.utf16EncodeAsString=K}(d||(d={})),function(e){function t(e){return e.start+e.length}function r(e){return 0===e.length}function n(e,t){var r=a(e,t);return r&&0===r.length?void 0:r}function i(e,t,r,n){return r<=e+t&&r+n>=e}function a(e,r){var n=Math.max(e.start,r.start),i=Math.min(t(e),t(r));return n<=i?s(n,i):void 0}function o(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function s(e,t){return o(e,t-e)}function c(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}function l(t){return!!Y(t)&&e.every(t.elements,u)}function u(t){return!!e.isOmittedExpression(t)||l(t.name)}function d(t){for(var r=t.parent;e.isBindingElement(r.parent);)r=r.parent.parent;return r.parent}function p(t,r){e.isBindingElement(t)&&(t=d(t));var n=r(t);return 251===t.kind&&(t=t.parent),t&&252===t.kind&&(n|=r(t),t=t.parent),t&&234===t.kind&&(n|=r(t)),n}function f(e){return 0==(8&e.flags)}function m(e){var t=e;return t.length>=3&&95===t.charCodeAt(0)&&95===t.charCodeAt(1)&&95===t.charCodeAt(2)?t.substr(1):t}function g(e){return m(e.escapedText)}function _(t){var r=t.parent.parent;if(r){if(ae(r))return h(r);switch(r.kind){case 234:if(r.declarationList&&r.declarationList.declarations[0])return h(r.declarationList.declarations[0]);break;case 235:var n=r.expression;switch(218===n.kind&&62===n.operatorToken.kind&&(n=n.left),n.kind){case 202:return n.name;case 203:var i=n.argumentExpression;if(e.isIdentifier(i))return i}break;case 208:return h(r.expression);case 247:if(ae(r.statement)||te(r.statement))return h(r.statement)}}}function h(t){var r=k(t);return r&&e.isIdentifier(r)?r:void 0}function y(e){return e.name||_(e)}function v(e){return!!e.name}function b(t){switch(t.kind){case 78:return t;case 336:case 329:var r=t.name;if(158===r.kind)return r.right;break;case 204:case 218:var n=t;switch(e.getAssignmentDeclarationKind(n)){case 1:case 4:case 5:case 3:return e.getElementOrPropertyAccessArgumentExpressionOrName(n.left);case 7:case 8:case 9:return n.arguments[1];default:return}case 334:return y(t);case 328:return _(t);case 269:var i=t.expression;return e.isIdentifier(i)?i:void 0;case 203:var a=t;if(e.isBindableStaticElementAccessExpression(a))return a.argumentExpression}return t.name}function k(t){if(void 0!==t)return b(t)||(e.isFunctionExpression(t)||e.isClassExpression(t)?x(t):void 0)}function x(t){if(t.parent){if(e.isPropertyAssignment(t.parent)||e.isBindingElement(t.parent))return t.parent.name;if(e.isBinaryExpression(t.parent)&&t===t.parent.right){if(e.isIdentifier(t.parent.left))return t.parent.left;if(e.isAccessExpression(t.parent.left))return e.getElementOrPropertyAccessArgumentExpressionOrName(t.parent.left)}else if(e.isVariableDeclaration(t.parent)&&e.isIdentifier(t.parent.name))return t.parent.name}}function E(t,r){if(t.name){if(e.isIdentifier(t.name)){var n=t.name.escapedText;return A(t.parent,r).filter((function(t){return e.isJSDocParameterTag(t)&&e.isIdentifier(t.name)&&t.name.escapedText===n}))}var i=t.parent.parameters.indexOf(t);e.Debug.assert(i>-1,"Parameters should always be in their parents' parameter list");var a=A(t.parent,r).filter(e.isJSDocParameterTag);if(i<a.length)return[a[i]]}return e.emptyArray}function S(e){return E(e,!1)}function D(t,r){var n=t.name.escapedText;return A(t.parent,r).filter((function(t){return e.isJSDocTemplateTag(t)&&t.typeParameters.some((function(e){return e.name.escapedText===n}))}))}function w(t){return P(t,e.isJSDocReturnTag)}function T(t){var r=P(t,e.isJSDocTypeTag);if(r&&r.typeExpression&&r.typeExpression.type)return r}function C(t){var r=P(t,e.isJSDocTypeTag);return!r&&e.isParameter(t)&&(r=e.find(S(t),(function(e){return!!e.typeExpression}))),r&&r.typeExpression&&r.typeExpression.type}function A(t,r){var n=t.jsDocCache;if(void 0===n||r){var i=e.getJSDocCommentsAndTags(t,r);e.Debug.assert(i.length<2||i[0]!==i[1]),n=e.flatMap(i,(function(t){return e.isJSDoc(t)?t.tags:t})),r||(t.jsDocCache=n)}return n}function N(e){return A(e,!1)}function P(t,r,n){return e.find(A(t,n),r)}function I(e,t){return N(e).filter(t)}function F(e){var t=e.kind;return!!(32&e.flags)&&(202===t||203===t||204===t||227===t)}function O(t){return F(t)&&!e.isNonNullExpression(t)&&!!t.questionDotToken}function R(t){return e.skipOuterExpressions(t,8)}function M(e){switch(e.kind){case 297:case 298:return!0;default:return!1}}function L(e){return e>=158}function j(e){return 8<=e&&e<=14}function B(e){return 14<=e&&e<=17}function z(t){return e.isPropertyDeclaration(t)&&e.isPrivateIdentifier(t.name)}function U(e){switch(e){case 126:case 130:case 85:case 134:case 88:case 93:case 123:case 121:case 122:case 143:case 124:return!0}return!1}function q(t){return!!(92&e.modifierToFlag(t))}function J(e){return e&&H(e.kind)}function V(e){switch(e){case 253:case 166:case 167:case 168:case 169:case 209:case 210:return!0;default:return!1}}function H(e){switch(e){case 165:case 170:case 316:case 171:case 172:case 175:case 311:case 176:return!0;default:return V(e)}}function K(e){var t=e.kind;return 167===t||164===t||166===t||168===t||169===t||172===t||231===t}function W(e){return e&&(254===e.kind||223===e.kind||255===e.kind)}function G(e){var t=e.kind;return 171===t||170===t||163===t||165===t||172===t}function $(e){var t=e.kind;return 291===t||292===t||293===t||166===t||168===t||169===t}function Y(e){if(e){var t=e.kind;return 198===t||197===t}return!1}function X(e){switch(e.kind){case 197:case 201:return!0}return!1}function Q(e){switch(e.kind){case 198:case 200:return!0}return!1}function Z(e){switch(e){case 202:case 203:case 205:case 204:case 276:case 277:case 280:case 206:case 200:case 208:case 201:case 223:case 209:case 211:case 78:case 13:case 8:case 9:case 10:case 14:case 220:case 95:case 104:case 108:case 110:case 106:case 227:case 228:case 100:return!0;default:return!1}}function ee(e){switch(e){case 216:case 217:case 212:case 213:case 214:case 215:case 207:return!0;default:return Z(e)}}function te(e){return function(e){switch(e){case 219:case 221:case 210:case 218:case 222:case 226:case 224:case 340:case 339:return!0;default:return ee(e)}}(R(e).kind)}function re(t){return e.isExportAssignment(t)||e.isExportDeclaration(t)}function ne(e){return 253===e||274===e||254===e||255===e||256===e||257===e||258===e||259===e||264===e||263===e||270===e||269===e||262===e}function ie(e){return 243===e||242===e||250===e||237===e||235===e||233===e||240===e||241===e||239===e||236===e||247===e||244===e||246===e||248===e||249===e||234===e||238===e||245===e||338===e||342===e||341===e}function ae(t){return 160===t.kind?t.parent&&333!==t.parent.kind||e.isInJSFile(t):210===(r=t.kind)||199===r||254===r||223===r||255===r||167===r||258===r||294===r||273===r||253===r||209===r||168===r||265===r||263===r||268===r||256===r||283===r||166===r||165===r||259===r||262===r||266===r||272===r||161===r||291===r||164===r||163===r||169===r||292===r||257===r||160===r||251===r||334===r||327===r||336===r;var r}function oe(e){return e.kind>=317&&e.kind<=336}e.isExternalModuleNameRelative=function(t){return e.pathIsRelative(t)||e.isRootedDiskPath(t)},e.sortAndDeduplicateDiagnostics=function(t){return e.sortAndDeduplicate(t,e.compareDiagnostics)},e.getDefaultLibFileName=function(e){switch(e.target){case 99:return"lib.esnext.full.d.ts";case 7:return"lib.es2020.full.d.ts";case 6:return"lib.es2019.full.d.ts";case 5:return"lib.es2018.full.d.ts";case 4:return"lib.es2017.full.d.ts";case 3:return"lib.es2016.full.d.ts";case 2:return"lib.es6.d.ts";default:return"lib.d.ts"}},e.textSpanEnd=t,e.textSpanIsEmpty=r,e.textSpanContainsPosition=function(e,r){return r>=e.start&&r<t(e)},e.textRangeContainsPositionInclusive=function(e,t){return t>=e.pos&&t<=e.end},e.textSpanContainsTextSpan=function(e,r){return r.start>=e.start&&t(r)<=t(e)},e.textSpanOverlapsWith=function(e,t){return void 0!==n(e,t)},e.textSpanOverlap=n,e.textSpanIntersectsWithTextSpan=function(e,t){return i(e.start,e.length,t.start,t.length)},e.textSpanIntersectsWith=function(e,t,r){return i(e.start,e.length,t,r)},e.decodedTextSpanIntersectsWith=i,e.textSpanIntersectsWithPosition=function(e,r){return r<=t(e)&&r>=e.start},e.textSpanIntersection=a,e.createTextSpan=o,e.createTextSpanFromBounds=s,e.textChangeRangeNewSpan=function(e){return o(e.span.start,e.newLength)},e.textChangeRangeIsUnchanged=function(e){return r(e.span)&&0===e.newLength},e.createTextChangeRange=c,e.unchangedTextChangeRange=c(o(0,0),0),e.collapseTextChangeRangesAcrossMultipleVersions=function(r){if(0===r.length)return e.unchangedTextChangeRange;if(1===r.length)return r[0];for(var n=r[0],i=n.span.start,a=t(n.span),o=i+n.newLength,l=1;l<r.length;l++){var u=r[l],d=i,p=a,f=o,m=u.span.start,g=t(u.span),_=m+u.newLength;i=Math.min(d,m),a=Math.max(p,p+(g-f)),o=Math.max(_,_+(f-g))}return c(s(i,a),o-i)},e.getTypeParameterOwner=function(e){if(e&&160===e.kind)for(var t=e;t;t=t.parent)if(J(t)||W(t)||256===t.kind)return t},e.isParameterPropertyDeclaration=function(t,r){return e.hasSyntacticModifier(t,92)&&167===r.kind},e.isEmptyBindingPattern=l,e.isEmptyBindingElement=u,e.walkUpBindingElementsAndPatterns=d,e.getCombinedModifierFlags=function(t){return p(t,e.getEffectiveModifierFlags)},e.getCombinedNodeFlagsAlwaysIncludeJSDoc=function(t){return p(t,e.getEffectiveModifierFlagsAlwaysIncludeJSDoc)},e.getCombinedNodeFlags=function(e){return p(e,(function(e){return e.flags}))},e.supportedLocaleDirectories=["cs","de","es","fr","it","ja","ko","pl","pt-br","ru","tr","zh-cn","zh-tw"],e.validateLocaleAndSetLanguage=function(t,r,n){var i=t.toLowerCase(),a=/^([a-z]+)([_\-]([a-z]+))?$/.exec(i);if(a){var o=a[1],s=a[3];e.contains(e.supportedLocaleDirectories,i)&&!c(o,s,n)&&c(o,void 0,n),e.setUILocale(t)}else n&&n.push(e.createCompilerDiagnostic(e.Diagnostics.Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1,"en","ja-jp"));function c(t,n,i){var a=e.normalizePath(r.getExecutingFilePath()),o=e.getDirectoryPath(a),s=e.combinePaths(o,t);if(n&&(s=s+"-"+n),s=r.resolvePath(e.combinePaths(s,"diagnosticMessages.generated.json")),!r.fileExists(s))return!1;var c="";try{c=r.readFile(s)}catch(t){return i&&i.push(e.createCompilerDiagnostic(e.Diagnostics.Unable_to_open_file_0,s)),!1}try{e.setLocalizedDiagnosticMessages(JSON.parse(c))}catch(t){return i&&i.push(e.createCompilerDiagnostic(e.Diagnostics.Corrupted_locale_file_0,s)),!1}return!0}},e.getOriginalNode=function(e,t){if(e)for(;void 0!==e.original;)e=e.original;return!t||t(e)?e:void 0},e.findAncestor=function(e,t){for(;e;){var r=t(e);if("quit"===r)return;if(r)return e;e=e.parent}},e.isParseTreeNode=f,e.getParseTreeNode=function(e,t){if(void 0===e||f(e))return e;for(e=e.original;e;){if(f(e))return!t||t(e)?e:void 0;e=e.original}},e.escapeLeadingUnderscores=function(e){return e.length>=2&&95===e.charCodeAt(0)&&95===e.charCodeAt(1)?"_"+e:e},e.unescapeLeadingUnderscores=m,e.idText=g,e.symbolName=function(e){return e.valueDeclaration&&z(e.valueDeclaration)?g(e.valueDeclaration.name):m(e.escapedName)},e.nodeHasName=function t(r,n){return!(!v(r)||!e.isIdentifier(r.name)||g(r.name)!==g(n))||!(!e.isVariableStatement(r)||!e.some(r.declarationList.declarations,(function(e){return t(e,n)})))},e.getNameOfJSDocTypedef=y,e.isNamedDeclaration=v,e.getNonAssignedNameOfDeclaration=b,e.getNameOfDeclaration=k,e.getAssignedName=x,e.getJSDocParameterTags=S,e.getJSDocParameterTagsNoCache=function(e){return E(e,!0)},e.getJSDocTypeParameterTags=function(e){return D(e,!1)},e.getJSDocTypeParameterTagsNoCache=function(e){return D(e,!0)},e.hasJSDocParameterTags=function(t){return!!P(t,e.isJSDocParameterTag)},e.getJSDocAugmentsTag=function(t){return P(t,e.isJSDocAugmentsTag)},e.getJSDocImplementsTags=function(t){return I(t,e.isJSDocImplementsTag)},e.getJSDocClassTag=function(t){return P(t,e.isJSDocClassTag)},e.getJSDocPublicTag=function(t){return P(t,e.isJSDocPublicTag)},e.getJSDocPublicTagNoCache=function(t){return P(t,e.isJSDocPublicTag,!0)},e.getJSDocPrivateTag=function(t){return P(t,e.isJSDocPrivateTag)},e.getJSDocPrivateTagNoCache=function(t){return P(t,e.isJSDocPrivateTag,!0)},e.getJSDocProtectedTag=function(t){return P(t,e.isJSDocProtectedTag)},e.getJSDocProtectedTagNoCache=function(t){return P(t,e.isJSDocProtectedTag,!0)},e.getJSDocReadonlyTag=function(t){return P(t,e.isJSDocReadonlyTag)},e.getJSDocReadonlyTagNoCache=function(t){return P(t,e.isJSDocReadonlyTag,!0)},e.getJSDocDeprecatedTag=function(t){return P(t,e.isJSDocDeprecatedTag)},e.getJSDocDeprecatedTagNoCache=function(t){return P(t,e.isJSDocDeprecatedTag,!0)},e.getJSDocEnumTag=function(t){return P(t,e.isJSDocEnumTag)},e.getJSDocThisTag=function(t){return P(t,e.isJSDocThisTag)},e.getJSDocReturnTag=w,e.getJSDocTemplateTag=function(t){return P(t,e.isJSDocTemplateTag)},e.getJSDocTypeTag=T,e.getJSDocType=C,e.getJSDocReturnType=function(t){var r=w(t);if(r&&r.typeExpression)return r.typeExpression.type;var n=T(t);if(n&&n.typeExpression){var i=n.typeExpression.type;if(e.isTypeLiteralNode(i)){var a=e.find(i.members,e.isCallSignatureDeclaration);return a&&a.type}if(e.isFunctionTypeNode(i)||e.isJSDocFunctionType(i))return i.type}},e.getJSDocTags=N,e.getJSDocTagsNoCache=function(e){return A(e,!0)},e.getAllJSDocTags=I,e.getAllJSDocTagsOfKind=function(e,t){return N(e).filter((function(e){return e.kind===t}))},e.getEffectiveTypeParameterDeclarations=function(t){if(e.isJSDocSignature(t))return e.emptyArray;if(e.isJSDocTypeAlias(t))return e.Debug.assert(314===t.parent.kind),e.flatMap(t.parent.tags,(function(t){return e.isJSDocTemplateTag(t)?t.typeParameters:void 0}));if(t.typeParameters)return t.typeParameters;if(e.isInJSFile(t)){var r=e.getJSDocTypeParameterDeclarations(t);if(r.length)return r;var n=C(t);if(n&&e.isFunctionTypeNode(n)&&n.typeParameters)return n.typeParameters}return e.emptyArray},e.getEffectiveConstraintOfTypeParameter=function(t){return t.constraint?t.constraint:e.isJSDocTemplateTag(t.parent)&&t===t.parent.typeParameters[0]?t.parent.constraint:void 0},e.isIdentifierOrPrivateIdentifier=function(e){return 78===e.kind||79===e.kind},e.isGetOrSetAccessorDeclaration=function(e){return 169===e.kind||168===e.kind},e.isPropertyAccessChain=function(t){return e.isPropertyAccessExpression(t)&&!!(32&t.flags)},e.isElementAccessChain=function(t){return e.isElementAccessExpression(t)&&!!(32&t.flags)},e.isCallChain=function(t){return e.isCallExpression(t)&&!!(32&t.flags)},e.isOptionalChain=F,e.isOptionalChainRoot=O,e.isExpressionOfOptionalChainRoot=function(e){return O(e.parent)&&e.parent.expression===e},e.isOutermostOptionalChain=function(e){return!F(e.parent)||O(e.parent)||e!==e.parent.expression},e.isNullishCoalesce=function(e){return 218===e.kind&&60===e.operatorToken.kind},e.isConstTypeReference=function(t){return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&"const"===t.typeName.escapedText&&!t.typeArguments},e.skipPartiallyEmittedExpressions=R,e.isNonNullChain=function(t){return e.isNonNullExpression(t)&&!!(32&t.flags)},e.isBreakOrContinueStatement=function(e){return 243===e.kind||242===e.kind},e.isNamedExportBindings=function(e){return 272===e.kind||271===e.kind},e.isUnparsedTextLike=M,e.isUnparsedNode=function(e){return M(e)||295===e.kind||299===e.kind},e.isJSDocPropertyLikeTag=function(e){return 336===e.kind||329===e.kind},e.isNode=function(e){return L(e.kind)},e.isNodeKind=L,e.isToken=function(e){return e.kind>=0&&e.kind<=157},e.isNodeArray=function(e){return e.hasOwnProperty("pos")&&e.hasOwnProperty("end")},e.isLiteralKind=j,e.isLiteralExpression=function(e){return j(e.kind)},e.isTemplateLiteralKind=B,e.isTemplateLiteralToken=function(e){return B(e.kind)},e.isTemplateMiddleOrTemplateTail=function(e){var t=e.kind;return 16===t||17===t},e.isImportOrExportSpecifier=function(t){return e.isImportSpecifier(t)||e.isExportSpecifier(t)},e.isTypeOnlyImportOrExportDeclaration=function(e){switch(e.kind){case 268:case 273:return e.parent.parent.isTypeOnly;case 266:return e.parent.isTypeOnly;case 265:case 263:return e.isTypeOnly;default:return!1}},e.isStringTextContainingNode=function(e){return 10===e.kind||B(e.kind)},e.isGeneratedIdentifier=function(t){return e.isIdentifier(t)&&(7&t.autoGenerateFlags)>0},e.isPrivateIdentifierPropertyDeclaration=z,e.isPrivateIdentifierPropertyAccessExpression=function(t){return e.isPropertyAccessExpression(t)&&e.isPrivateIdentifier(t.name)},e.isModifierKind=U,e.isParameterPropertyModifier=q,e.isClassMemberModifier=function(e){return q(e)||124===e},e.isModifier=function(e){return U(e.kind)},e.isEntityName=function(e){var t=e.kind;return 158===t||78===t},e.isPropertyName=function(e){var t=e.kind;return 78===t||79===t||10===t||8===t||159===t},e.isBindingName=function(e){var t=e.kind;return 78===t||197===t||198===t},e.isFunctionLike=J,e.isFunctionLikeDeclaration=function(e){return e&&V(e.kind)},e.isFunctionLikeKind=H,e.isFunctionOrModuleBlock=function(t){return e.isSourceFile(t)||e.isModuleBlock(t)||e.isBlock(t)&&J(t.parent)},e.isClassElement=K,e.isClassLike=W,e.isStruct=function(e){return e&&255===e.kind},e.isAccessor=function(e){return e&&(168===e.kind||169===e.kind)},e.isMethodOrAccessor=function(e){switch(e.kind){case 166:case 168:case 169:return!0;default:return!1}},e.isTypeElement=G,e.isClassOrTypeElement=function(e){return G(e)||K(e)},e.isObjectLiteralElementLike=$,e.isTypeNode=function(t){return e.isTypeNodeKind(t.kind)},e.isFunctionOrConstructorTypeNode=function(e){switch(e.kind){case 175:case 176:return!0}return!1},e.isBindingPattern=Y,e.isAssignmentPattern=function(e){var t=e.kind;return 200===t||201===t},e.isArrayBindingElement=function(e){var t=e.kind;return 199===t||224===t},e.isDeclarationBindingElement=function(e){switch(e.kind){case 251:case 161:case 199:return!0}return!1},e.isBindingOrAssignmentPattern=function(e){return X(e)||Q(e)},e.isObjectBindingOrAssignmentPattern=X,e.isArrayBindingOrAssignmentPattern=Q,e.isPropertyAccessOrQualifiedNameOrImportTypeNode=function(e){var t=e.kind;return 202===t||158===t||196===t},e.isPropertyAccessOrQualifiedName=function(e){var t=e.kind;return 202===t||158===t},e.isCallLikeExpression=function(e){switch(e.kind){case 278:case 277:case 204:case 205:case 206:case 162:case 211:return!0;default:return!1}},e.isCallOrNewExpression=function(e){return 204===e.kind||205===e.kind},e.isTemplateLiteral=function(e){var t=e.kind;return 220===t||14===t},e.isLeftHandSideExpression=function(e){return Z(R(e).kind)},e.isUnaryExpression=function(e){return ee(R(e).kind)},e.isUnaryExpressionWithWrite=function(e){switch(e.kind){case 217:return!0;case 216:return 45===e.operator||46===e.operator;default:return!1}},e.isExpression=te,e.isAssertionExpression=function(e){var t=e.kind;return 207===t||226===t},e.isNotEmittedOrPartiallyEmittedNode=function(t){return e.isNotEmittedStatement(t)||e.isPartiallyEmittedExpression(t)},e.isIterationStatement=function e(t,r){switch(t.kind){case 239:case 240:case 241:case 237:case 238:return!0;case 247:return r&&e(t.statement,r)}return!1},e.isScopeMarker=re,e.hasScopeMarker=function(t){return e.some(t,re)},e.needsScopeMarker=function(t){return!(e.isAnyImportOrReExport(t)||e.isExportAssignment(t)||e.hasSyntacticModifier(t,1)||e.isAmbientModule(t))},e.isExternalModuleIndicator=function(t){return e.isAnyImportOrReExport(t)||e.isExportAssignment(t)||e.hasSyntacticModifier(t,1)},e.isForInOrOfStatement=function(e){return 240===e.kind||241===e.kind},e.isConciseBody=function(t){return e.isBlock(t)||te(t)},e.isFunctionBody=function(t){return e.isBlock(t)},e.isForInitializer=function(t){return e.isVariableDeclarationList(t)||te(t)},e.isModuleBody=function(e){var t=e.kind;return 260===t||259===t||78===t},e.isNamespaceBody=function(e){var t=e.kind;return 260===t||259===t},e.isJSDocNamespaceBody=function(e){var t=e.kind;return 78===t||259===t},e.isNamedImportBindings=function(e){var t=e.kind;return 267===t||266===t},e.isModuleOrEnumDeclaration=function(e){return 259===e.kind||258===e.kind},e.isDeclaration=ae,e.isDeclarationStatement=function(e){return ne(e.kind)},e.isStatementButNotDeclaration=function(e){return ie(e.kind)},e.isStatement=function(t){var r=t.kind;return ie(r)||ne(r)||function(t){if(232!==t.kind)return!1;if(void 0!==t.parent&&(249===t.parent.kind||290===t.parent.kind))return!1;return!e.isFunctionBlock(t)}(t)},e.isStatementOrBlock=function(e){var t=e.kind;return ie(t)||ne(t)||232===t},e.isModuleReference=function(e){var t=e.kind;return 275===t||158===t||78===t},e.isJsxTagNameExpression=function(e){var t=e.kind;return 108===t||78===t||202===t},e.isJsxChild=function(e){var t=e.kind;return 276===t||286===t||277===t||11===t||280===t},e.isJsxAttributeLike=function(e){var t=e.kind;return 283===t||285===t},e.isStringLiteralOrJsxExpression=function(e){var t=e.kind;return 10===t||286===t},e.isJsxOpeningLikeElement=function(e){var t=e.kind;return 278===t||277===t},e.isCaseOrDefaultClause=function(e){var t=e.kind;return 287===t||288===t},e.isJSDocNode=function(e){return e.kind>=304&&e.kind<=336},e.isJSDocCommentContainingNode=function(t){return 314===t.kind||313===t.kind||oe(t)||e.isJSDocTypeLiteral(t)||e.isJSDocSignature(t)},e.isJSDocTag=oe,e.isSetAccessor=function(e){return 169===e.kind},e.isGetAccessor=function(e){return 168===e.kind},e.hasJSDocNodes=function(e){var t=e.jsDoc;return!!t&&t.length>0},e.hasType=function(e){return!!e.type},e.hasInitializer=function(e){return!!e.initializer},e.hasOnlyExpressionInitializer=function(e){switch(e.kind){case 251:case 161:case 199:case 163:case 164:case 291:case 294:return!0;default:return!1}},e.isObjectLiteralElement=function(e){return 283===e.kind||285===e.kind||$(e)},e.isTypeReferenceType=function(e){return 174===e.kind||225===e.kind};var se=1073741823;e.guessIndentation=function(t){for(var r=se,n=0,i=t;n<i.length;n++){var a=i[n];if(a.length){for(var o=0;o<a.length&&o<r&&e.isWhiteSpaceLike(a.charCodeAt(o));o++);if(o<r&&(r=o),0===r)return 0}}return r===se?void 0:r},e.isStringLiteralLike=function(e){return 10===e.kind||14===e.kind}}(d||(d={})),function(e){e.resolvingEmptyArray=[],e.externalHelpersModuleNameText="tslib",e.defaultMaximumTruncationLength=160,e.noTruncationMaximumTruncationLength=1e6,e.getDeclarationOfKind=function(e,t){var r=e.declarations;if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n];if(a.kind===t)return a}},e.createUnderscoreEscapedMap=function(){return new e.Map},e.hasEntries=function(e){return!!e&&!!e.size},e.createSymbolTable=function(t){var r=new e.Map;if(t)for(var n=0,i=t;n<i.length;n++){var a=i[n];r.set(a.escapedName,a)}return r},e.isTransientSymbol=function(e){return 0!=(33554432&e.flags)};var t,r,n=(t="",{getText:function(){return t},write:r=function(e){return t+=e},rawWrite:r,writeKeyword:r,writeOperator:r,writePunctuation:r,writeSpace:r,writeStringLiteral:r,writeLiteral:r,writeParameter:r,writeProperty:r,writeSymbol:function(e,t){return r(e)},writeTrailingSemicolon:r,writeComment:r,getTextPos:function(){return t.length},getLine:function(){return 0},getColumn:function(){return 0},getIndent:function(){return 0},isAtStartOfLine:function(){return!1},hasTrailingComment:function(){return!1},hasTrailingWhitespace:function(){return!!t.length&&e.isWhiteSpaceLike(t.charCodeAt(t.length-1))},writeLine:function(){return t+=" "},increaseIndent:e.noop,decreaseIndent:e.noop,clear:function(){return t=""},trackSymbol:e.noop,reportInaccessibleThisError:e.noop,reportInaccessibleUniqueSymbolError:e.noop,reportPrivateInBaseOfClassExpression:e.noop});function o(t,r){return e.moduleResolutionOptionDeclarations.some((function(e){return!fi(Nn(t,e),Nn(r,e))}))}function s(e){return e.end-e.pos}function c(t){return function(t){if(!(524288&t.flags)){(0!=(65536&t.flags)||e.forEachChild(t,c))&&(t.flags|=262144),t.flags|=524288}}(t),0!=(262144&t.flags)}function l(e){for(;e&&300!==e.kind;)e=e.parent;return e}function u(t){var r=ht(t,201);return void 0!==r&&void 0!==r.parent&&e.isPropertyAssignment(r.parent)}function d(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isCallExpression(o)&&e.isIdentifier(o.expression)&&(null===(a=null===(i=r.ets)||void 0===i?void 0:i.extend.decorator)||void 0===a?void 0:a.includes(o.expression.escapedText.toString()))&&n.push(o.expression.escapedText.toString())})),0!==n.length)}function p(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&o.escapedText.toString()===(null===(a=null===(i=r.ets)||void 0===i?void 0:i.styles)||void 0===a?void 0:a.decorator)&&n.push(o.escapedText.toString())})),0!==n.length)}function f(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&o.escapedText.toString()===(null===(a=null===(i=r.ets)||void 0===i?void 0:i.render)||void 0===a?void 0:a.decorator)&&n.push(o.escapedText.toString())})),0!==n.length)}function m(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&o.escapedText.toString()===(null===(a=null===(i=r.ets)||void 0===i?void 0:i.concurrent)||void 0===a?void 0:a.decorator)&&n.push(o.escapedText.toString())})),0!==n.length)}function g(t,r){e.Debug.assert(t>=0);var n=e.getLineStarts(r),i=t,a=r.text;if(i+1===n.length)return a.length-1;var o=n[i],s=n[i+1]-1;for(e.Debug.assert(e.isLineBreak(a.charCodeAt(s)));o<=s&&e.isLineBreak(a.charCodeAt(s));)s--;return s}function _(e){return void 0===e||!e.virtual&&(e.pos===e.end&&e.pos>=0&&1!==e.kind)}function h(e){return!_(e)}function y(e,t,r){if(void 0===t||0===t.length)return e;for(var n=0;n<e.length&&r(e[n]);++n);return e.splice.apply(e,i([n,0],t)),e}function v(e,t,r){if(void 0===t)return e;for(var n=0;n<e.length&&r(e[n]);++n);return e.splice(n,0,t),e}function b(e){return X(e)||!!(1048576&T(e))}function k(e,t){return 42===e.charCodeAt(t+1)&&33===e.charCodeAt(t+2)}function x(t,r,n){return _(t)?t.pos:e.isJSDocNode(t)||11===t.kind?e.skipTrivia((r||l(t)).text,t.pos,!1,!0):n&&e.hasJSDocNodes(t)?x(t.jsDoc[0],r):337===t.kind&&t._children.length>0?x(t._children[0],r,n):t.virtual?t.pos:e.skipTrivia((r||l(t)).text,t.pos)}function E(e,t,r){return void 0===r&&(r=!1),S(e.text,t,r)}function S(t,r,n){if(void 0===n&&(n=!1),_(r))return"";var i=t.substring(n?r.pos:e.skipTrivia(t,r.pos),r.end);return function(t){return!!e.findAncestor(t,e.isJSDocTypeExpression)}(r)&&(i=i.replace(/(^|\r?\n|\r)\s*\*\s*/g,"$1")),i}function D(e,t){return void 0===t&&(t=!1),E(l(e),e,t)}function w(e){return e.pos}function T(e){var t=e.emitNode;return t&&t.flags||0}function C(e){var t=It(e);return 251===t.kind&&290===t.parent.kind}function A(t){return e.isModuleDeclaration(t)&&(10===t.name.kind||P(t))}function N(t){return e.isModuleDeclaration(t)||e.isIdentifier(t)}function P(e){return!!(1024&e.flags)}function I(e){return A(e)&&F(e)}function F(t){switch(t.parent.kind){case 300:return e.isExternalModule(t.parent);case 260:return A(t.parent.parent)&&e.isSourceFile(t.parent.parent.parent)&&!e.isExternalModule(t.parent.parent.parent)}return!1}function O(t,r){switch(t.kind){case 300:case 261:case 290:case 259:case 239:case 240:case 241:case 167:case 166:case 168:case 169:case 253:case 209:case 210:return!0;case 232:return!e.isFunctionLike(r)}return!1}function R(t){switch(t.kind){case 170:case 171:case 165:case 172:case 175:case 176:case 311:case 254:case 255:case 223:case 256:case 257:case 333:case 253:case 166:case 167:case 168:case 169:case 209:case 210:return!0;default:return e.assertType(t),!1}}function M(e){switch(e.kind){case 264:case 263:return!0;default:return!1}}function L(t){return M(t)||e.isExportDeclaration(t)}function j(e){return e&&e.virtual&&78===e.kind?e.escapedText.toString():e&&0!==s(e)?D(e):"(Missing)"}function B(t){switch(t.kind){case 78:case 79:return t.escapedText;case 10:case 8:case 14:return e.escapeLeadingUnderscores(t.text);case 159:return xt(t.expression)?e.escapeLeadingUnderscores(t.expression.text):e.Debug.fail("Text of property name cannot be read from non-literal-valued ComputedPropertyNames");default:return e.Debug.assertNever(t)}}function z(t){switch(t.kind){case 108:return"this";case 79:case 78:return 0===s(t)?e.idText(t):D(t);case 158:return z(t.left)+"."+z(t.right);case 202:return e.isIdentifier(t.name)||e.isPrivateIdentifier(t.name)?z(t.expression)+"."+z(t.name):e.Debug.assertNever(t.name);default:return e.Debug.assertNever(t)}}function U(e,t,r,n,i,a,o){var s=H(e,t);return vn(e,s.start,s.length,r,n,i,a,o)}function q(t,r,n){e.Debug.assertGreaterThanOrEqual(r,0),e.Debug.assertGreaterThanOrEqual(n,0),t&&(e.Debug.assertLessThanOrEqual(r,t.text.length),e.Debug.assertLessThanOrEqual(r+n,t.text.length))}function J(e,t,r,n,i){return q(e,t,r),{file:e,start:t,length:r,code:n.code,category:n.category,messageText:n.next?n:n.messageText,relatedInformation:i}}function V(t,r){var n=e.createScanner(t.languageVersion,!0,t.languageVariant,t.text,void 0,r);n.scan();var i=n.getTokenPos();return e.createTextSpanFromBounds(i,n.getTextPos())}function H(t,r){var n=r;switch(r.kind){case 300:var i=e.skipTrivia(t.text,0,!1);return i===t.text.length?e.createTextSpan(0,0):V(t,i);case 251:case 199:case 254:case 223:case 255:case 256:case 259:case 258:case 294:case 253:case 209:case 166:case 168:case 169:case 257:case 164:case 163:n=r.name;break;case 210:return function(t,r){var n=e.skipTrivia(t.text,r.pos);if(r.body&&232===r.body.kind){var i=e.getLineAndCharacterOfPosition(t,r.body.pos).line;if(i<e.getLineAndCharacterOfPosition(t,r.body.end).line)return e.createTextSpan(n,g(i,t)-n+1)}return e.createTextSpanFromBounds(n,r.end)}(t,r);case 287:case 288:var a=e.skipTrivia(t.text,r.pos),o=r.statements.length>0?r.statements[0].pos:r.end;return e.createTextSpanFromBounds(a,o)}if(void 0===n)return V(t,r.pos);e.Debug.assert(!e.isJSDoc(n));var s=_(n),c=s||e.isJsxText(r)||r.virtual?n.pos:e.skipTrivia(t.text,n.pos);return s?(e.Debug.assert(c===n.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),e.Debug.assert(c===n.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(e.Debug.assert(c>=n.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),e.Debug.assert(c<=n.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),e.createTextSpanFromBounds(c,n.end)}function K(e){return 6===e.scriptKind}function W(e){return!!e}function G(t){return!!(2&e.getCombinedNodeFlags(t))}function $(e){return 204===e.kind&&100===e.expression.kind}function Y(t){return e.isImportTypeNode(t)&&e.isLiteralTypeNode(t.argument)&&e.isStringLiteral(t.argument.literal)}function X(e){return 235===e.kind&&10===e.expression.kind}function Q(e){return!!(1048576&T(e))}function Z(t){return e.isIdentifier(t.name)&&!t.initializer}e.changesAffectModuleResolution=function(e,t){return e.configFilePath!==t.configFilePath||o(e,t)},e.optionsHaveModuleResolutionChanges=o,e.forEachAncestor=function(t,r){for(;;){var n=r(t);if("quit"===n)return;if(void 0!==n)return n;if(e.isSourceFile(t))return;t=t.parent}},e.forEachEntry=function(e,t){for(var r=e.entries(),n=r.next();!n.done;n=r.next()){var i=n.value,a=i[0],o=t(i[1],a);if(o)return o}},e.forEachKey=function(e,t){for(var r=e.keys(),n=r.next();!n.done;n=r.next()){var i=t(n.value);if(i)return i}},e.copyEntries=function(e,t){e.forEach((function(e,r){t.set(r,e)}))},e.usingSingleLineStringWriter=function(e){var t=n.getText();try{return e(n),n.getText()}finally{n.clear(),n.writeKeyword(t)}},e.getFullWidth=s,e.getResolvedModule=function(e,t){return e&&e.resolvedModules&&e.resolvedModules.get(t)},e.setResolvedModule=function(t,r,n){t.resolvedModules||(t.resolvedModules=new e.Map),t.resolvedModules.set(r,n)},e.setResolvedTypeReferenceDirective=function(t,r,n){t.resolvedTypeReferenceDirectiveNames||(t.resolvedTypeReferenceDirectiveNames=new e.Map),t.resolvedTypeReferenceDirectiveNames.set(r,n)},e.projectReferenceIsEqualTo=function(e,t){return e.path===t.path&&!e.prepend==!t.prepend&&!e.circular==!t.circular},e.moduleResolutionIsEqualTo=function(e,t){return e.isExternalLibraryImport===t.isExternalLibraryImport&&e.extension===t.extension&&e.resolvedFileName===t.resolvedFileName&&e.originalPath===t.originalPath&&(r=e.packageId,n=t.packageId,r===n||!!r&&!!n&&r.name===n.name&&r.subModuleName===n.subModuleName&&r.version===n.version);var r,n},e.packageIdToString=function(e){var t=e.name,r=e.subModuleName;return(r?t+"/"+r:t)+"@"+e.version},e.typeDirectiveIsEqualTo=function(e,t){return e.resolvedFileName===t.resolvedFileName&&e.primary===t.primary},e.hasChangesInResolutions=function(t,r,n,i){e.Debug.assert(t.length===r.length);for(var a=0;a<t.length;a++){var o=r[a],s=n&&n.get(t[a]);if(s?!o||!i(s,o):o)return!0}return!1},e.containsParseError=c,e.getSourceFileOfNode=l,e.isTokenInsideBuilder=function(e,t){var r,n,i,a=null!==(i=null===(n=null===(r=t.ets)||void 0===r?void 0:r.render)||void 0===n?void 0:n.decorator)&&void 0!==i?i:"Builder";if(!e)return!1;for(var o=0,s=e;o<s.length;o++){var c=s[o];if(78===c.expression.kind&&c.expression.escapedText===a)return!0}return!1},e.getEtsComponentExpressionInnerCallExpressionNode=function(e){for(;e&&211!==e.kind;)e=204===e.kind||202===e.kind?e.expression:void 0;return e},e.getRootEtsComponentInnerCallExpressionNode=function(t){if(t&&e.isEtsComponentExpression(t))return t;for(;t;){var r=ht(e.isCallExpression(t)?t.parent:t,204),n=yt(r);if(n&&u(t))return n;t=null!=r?r:t.parent}},e.getEtsExtendDecoratorComponentNames=function(e,t){var r,n,i=[],a=null===(n=null===(r=t.ets)||void 0===r?void 0:r.extend)||void 0===n?void 0:n.decorator;return null==e||e.forEach((function(e){if(204===e.expression.kind){var t=e.expression.expression,r=e.expression.arguments;78===t.kind&&(null==a?void 0:a.includes(t.escapedText.toString()))&&r.length&&78===r[0].kind&&i.push(r[0].escapedText)}})),i},e.getEtsStylesDecoratorComponentNames=function(e,t){var r,n,i,a=[],o=null!==(i=null===(n=null===(r=t.ets)||void 0===r?void 0:r.styles)||void 0===n?void 0:n.decorator)&&void 0!==i?i:"Styles";return null==e||e.forEach((function(e){if(78===e.expression.kind){var t=e.expression;78===t.kind&&t.escapedText===o&&a.push(t.escapedText)}})),a},e.filterEtsExtendDecoratorComponentNamesByOptions=function(t,r){var n;if(!t.length)return[];var i=[];return null===(n=r.ets)||void 0===n||n.extend.components.forEach((function(r){var n=r.name;n===e.last(t)&&i.push(n)})),i},e.hasEtsExtendDecoratorNames=d,e.hasEtsStylesDecoratorNames=p,e.hasEtsBuildDecoratorNames=function(t,r){var n=[];return!(!t||!t.length)&&(t.forEach((function(t){var i,a,o=t.expression;e.isIdentifier(o)&&-1!==(null===(a=null===(i=r.ets)||void 0===i?void 0:i.render)||void 0===a?void 0:a.method.indexOf(o.escapedText.toString()))&&n.push(o.escapedText.toString())})),0!==n.length)},e.hasEtsBuilderDecoratorNames=f,e.hasEtsConcurrentDecoratorNames=m,e.isStatementWithLocals=function(e){switch(e.kind){case 232:case 261:case 239:case 240:case 241:return!0}return!1},e.getStartPositionOfLine=function(t,r){return e.Debug.assert(t>=0),e.getLineStarts(r)[t]},e.nodePosToString=function(t){var r=l(t),n=e.getLineAndCharacterOfPosition(r,t.pos);return r.fileName+"("+(n.line+1)+","+(n.character+1)+")"},e.getEndLinePosition=g,e.isFileLevelUniqueName=function(e,t,r){return!(r&&r(t)||e.identifiers.has(t))},e.nodeIsMissing=_,e.nodeIsPresent=h,e.insertStatementsAfterStandardPrologue=function(e,t){return y(e,t,X)},e.insertStatementsAfterCustomPrologue=function(e,t){return y(e,t,b)},e.insertStatementAfterStandardPrologue=function(e,t){return v(e,t,X)},e.insertStatementAfterCustomPrologue=function(e,t){return v(e,t,b)},e.getEtsLibs=function(t){var r,n,i=[],a=null!==(n=null===(r=t.getCompilerOptions().ets)||void 0===r?void 0:r.libs)&&void 0!==n?n:[];return a.length&&e.forEach(a,(function(r){i.push(e.sys.resolvePath(r));var n=function(t,r){if(!r)return;for(var n=e.sys.resolvePath(r),i=0,a=t.getSourceFiles();i<a.length;i++){var o=a[i];if(o.fileName)if(e.sys.resolvePath(o.fileName)===n)return o}return}(t,r);e.forEach(null==n?void 0:n.referencedFiles,(function(t){var r=e.sys.resolvePath(e.resolveTripleslashReference(t.fileName,n.fileName));i.push(r)}))})),i},e.isRecognizedTripleSlashComment=function(t,r,n){if(47===t.charCodeAt(r+1)&&r+2<n&&47===t.charCodeAt(r+2)){var i=t.substring(r,n);return!!(i.match(e.fullTripleSlashReferencePathRegEx)||i.match(e.fullTripleSlashAMDReferencePathRegEx)||i.match(ee)||i.match(te))}return!1},e.isPinnedComment=k,e.createCommentDirectivesMap=function(t,r){var n=new e.Map(r.map((function(r){return[""+e.getLineAndCharacterOfPosition(t,r.range.end).line,r]}))),i=new e.Map;return{getUnusedExpectations:function(){return e.arrayFrom(n.entries()).filter((function(e){var t=e[0];return 0===e[1].type&&!i.get(t)})).map((function(e){e[0];return e[1]}))},markUsed:function(e){if(!n.has(""+e))return!1;return i.set(""+e,!0),!0}}},e.getTokenPosOfNode=x,e.getNonDecoratorTokenPosOfNode=function(t,r){return _(t)||!t.decorators?x(t,r):e.skipTrivia((r||l(t)).text,t.decorators.end)},e.getSourceTextOfNodeFromSourceFile=E,e.isExportNamespaceAsDefaultDeclaration=function(t){return!!(e.isExportDeclaration(t)&&t.exportClause&&e.isNamespaceExport(t.exportClause)&&"default"===t.exportClause.name.escapedText)},e.getTextOfNodeFromSourceText=S,e.getTextOfNode=D,e.indexOfNode=function(t,r){return e.binarySearch(t,r,w,e.compareValues)},e.getEmitFlags=T,e.getScriptTargetFeatures=function(){return{es2015:{Array:["find","findIndex","fill","copyWithin","entries","keys","values"],RegExp:["flags","sticky","unicode"],Reflect:["apply","construct","defineProperty","deleteProperty","get"," getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"],ArrayConstructor:["from","of"],ObjectConstructor:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],NumberConstructor:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"],Math:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"],Map:["entries","keys","values"],Set:["entries","keys","values"],Promise:e.emptyArray,PromiseConstructor:["all","race","reject","resolve"],Symbol:["for","keyFor"],WeakMap:["entries","keys","values"],WeakSet:["entries","keys","values"],Iterator:e.emptyArray,AsyncIterator:e.emptyArray,String:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],StringConstructor:["fromCodePoint","raw"]},es2016:{Array:["includes"]},es2017:{Atomics:e.emptyArray,SharedArrayBuffer:e.emptyArray,String:["padStart","padEnd"],ObjectConstructor:["values","entries","getOwnPropertyDescriptors"],DateTimeFormat:["formatToParts"]},es2018:{Promise:["finally"],RegExpMatchArray:["groups"],RegExpExecArray:["groups"],RegExp:["dotAll"],Intl:["PluralRules"],AsyncIterable:e.emptyArray,AsyncIterableIterator:e.emptyArray,AsyncGenerator:e.emptyArray,AsyncGeneratorFunction:e.emptyArray},es2019:{Array:["flat","flatMap"],ObjectConstructor:["fromEntries"],String:["trimStart","trimEnd","trimLeft","trimRight"],Symbol:["description"]},es2020:{BigInt:e.emptyArray,BigInt64Array:e.emptyArray,BigUint64Array:e.emptyArray,PromiseConstructor:["allSettled"],SymbolConstructor:["matchAll"],String:["matchAll"],DataView:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"],RelativeTimeFormat:["format","formatToParts","resolvedOptions"]},esnext:{PromiseConstructor:["any"],String:["replaceAll"],NumberFormat:["formatToParts"]}}},function(e){e[e.None=0]="None",e[e.NeverAsciiEscape=1]="NeverAsciiEscape",e[e.JsxAttributeEscape=2]="JsxAttributeEscape",e[e.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",e[e.AllowNumericSeparator=8]="AllowNumericSeparator"}(e.GetLiteralTextFlags||(e.GetLiteralTextFlags={})),e.getLiteralText=function(t,r,n){if(function(t,r){if(Ft(t)||!t.parent||4&r&&t.isUnterminated)return!1;if(e.isNumericLiteral(t)&&512&t.numericLiteralFlags)return!!(8&r);return!e.isBigIntLiteral(t)}(t,n))return E(r,t);switch(t.kind){case 10:var i=2&n?Qt:1&n||16777216&T(t)?Ht:Wt;return t.singleQuote?"'"+i(t.text,39)+"'":'"'+i(t.text,34)+'"';case 14:case 15:case 16:case 17:i=1&n||16777216&T(t)?Ht:Wt;var a=t.rawText||function(e){return e.replace(jt,"\\${")}(i(t.text,96));switch(t.kind){case 14:return"`"+a+"`";case 15:return"`"+a+"${";case 16:return"}"+a+"${";case 17:return"}"+a+"`"}break;case 8:case 9:return t.text;case 13:return 4&n&&t.isUnterminated?t.text+(92===t.text.charCodeAt(t.text.length-1)?" /":"/"):t.text}return e.Debug.fail("Literal kind '"+t.kind+"' not accounted for.")},e.getTextOfConstantValue=function(t){return e.isString(t)?'"'+Wt(t)+'"':""+t},e.makeIdentifierFromModuleName=function(t){return e.getBaseFileName(t).replace(/^(\d)/,"_$1").replace(/\W/g,"_")},e.isBlockOrCatchScoped=function(t){return 0!=(3&e.getCombinedNodeFlags(t))||C(t)},e.isCatchClauseVariableDeclarationOrBindingElement=C,e.isAmbientModule=A,e.isModuleWithStringLiteralName=function(t){return e.isModuleDeclaration(t)&&10===t.name.kind},e.isNonGlobalAmbientModule=function(t){return e.isModuleDeclaration(t)&&e.isStringLiteral(t.name)},e.isEffectiveModuleDeclaration=N,e.isShorthandAmbientModuleSymbol=function(e){return(t=e.valueDeclaration)&&259===t.kind&&!t.body;var t},e.isBlockScopedContainerTopLevel=function(t){return 300===t.kind||259===t.kind||e.isFunctionLike(t)},e.isGlobalScopeAugmentation=P,e.isExternalModuleAugmentation=I,e.isModuleAugmentationExternal=F,e.getNonAugmentationDeclaration=function(t){return e.find(t.declarations,(function(t){return!(I(t)||e.isModuleDeclaration(t)&&P(t))}))},e.isEffectiveExternalModule=function(t,r){return e.isExternalModule(t)||r.isolatedModules||wn(r)===e.ModuleKind.CommonJS&&!!t.commonJsModuleIndicator},e.isEffectiveStrictModeSourceFile=function(t,r){switch(t.scriptKind){case 1:case 3:case 2:case 4:case 8:break;default:return!1}return!t.isDeclarationFile&&(!!Cn(r,"alwaysStrict")||(!!e.startsWithUseStrict(t.statements)||!(!e.isExternalModule(t)&&!r.isolatedModules)&&(wn(r)>=e.ModuleKind.ES2015||!r.noImplicitUseStrict)))},e.isBlockScope=O,e.isDeclarationWithTypeParameters=function(t){switch(t.kind){case 327:case 334:case 316:return!0;default:return e.assertType(t),R(t)}},e.isDeclarationWithTypeParameterChildren=R,e.isAnyImportSyntax=M,e.isLateVisibilityPaintedStatement=function(e){switch(e.kind){case 264:case 263:case 234:case 254:case 255:case 253:case 259:case 257:case 256:case 258:return!0;default:return!1}},e.hasPossibleExternalModuleReference=function(t){return L(t)||e.isModuleDeclaration(t)||e.isImportTypeNode(t)||$(t)},e.isAnyImportOrReExport=L,e.getEnclosingBlockScopeContainer=function(t){return e.findAncestor(t.parent,(function(e){return O(e,e.parent)}))},e.declarationNameToString=j,e.getNameFromIndexInfo=function(e){return e.declaration?j(e.declaration.parameters[0].name):void 0},e.isComputedNonLiteralName=function(e){return 159===e.kind&&!xt(e.expression)},e.getTextOfPropertyName=B,e.entityNameToString=z,e.createDiagnosticForNode=function(e,t,r,n,i,a){return U(l(e),e,t,r,n,i,a)},e.createDiagnosticForNodeArray=function(t,r,n,i,a,o,s){var c=e.skipTrivia(t.text,r.pos);return vn(t,c,r.end-c,n,i,a,o,s)},e.createDiagnosticForNodeInSourceFile=U,e.createDiagnosticForNodeFromMessageChain=function(e,t,r){var n=l(e),i=H(n,e);return J(n,i.start,i.length,t,r)},e.createFileDiagnosticFromMessageChain=J,e.createDiagnosticForFileFromMessageChain=function(e,t,r){return{file:e,start:0,length:0,code:t.code,category:t.category,messageText:t.next?t:t.messageText,relatedInformation:r}},e.createDiagnosticForRange=function(e,t,r){return{file:e,start:t.pos,length:t.end-t.pos,code:r.code,category:r.category,messageText:r.message}},e.getSpanOfTokenAtPosition=V,e.getErrorSpanForNode=H,e.isExternalOrCommonJsModule=function(e){return void 0!==(e.externalModuleIndicator||e.commonJsModuleIndicator)},e.isJsonSourceFile=K,e.isEmitNodeModulesFiles=W,e.isEnumConst=function(t){return!!(2048&e.getCombinedModifierFlags(t))},e.isDeclarationReadonly=function(t){return!(!(64&e.getCombinedModifierFlags(t))||e.isParameterPropertyDeclaration(t,t.parent))},e.isVarConst=G,e.isLet=function(t){return!!(1&e.getCombinedNodeFlags(t))},e.isSuperCall=function(e){return 204===e.kind&&106===e.expression.kind},e.isImportCall=$,e.isImportMeta=function(t){return e.isMetaProperty(t)&&100===t.keywordToken&&"meta"===t.name.escapedText},e.isLiteralImportTypeNode=Y,e.isPrologueDirective=X,e.isCustomPrologue=Q,e.isHoistedFunction=function(t){return Q(t)&&e.isFunctionDeclaration(t)},e.isHoistedVariableStatement=function(t){return Q(t)&&e.isVariableStatement(t)&&e.every(t.declarationList.declarations,Z)},e.getJSDocCommentRanges=function(t,r){var n=161===t.kind||160===t.kind||209===t.kind||210===t.kind||208===t.kind?e.concatenate(e.getTrailingCommentRanges(r,t.pos),e.getLeadingCommentRanges(r,t.pos)):e.getLeadingCommentRanges(r,t.pos);return e.filter(n,(function(e){return 42===r.charCodeAt(e.pos+1)&&42===r.charCodeAt(e.pos+2)&&47!==r.charCodeAt(e.pos+3)}))},e.fullTripleSlashReferencePathRegEx=/^(\/\/\/\s*<reference\s+path\s*=\s*)('|")(.+?)\2.*?\/>/;var ee=/^(\/\/\/\s*<reference\s+types\s*=\s*)('|")(.+?)\2.*?\/>/;e.fullTripleSlashAMDReferencePathRegEx=/^(\/\/\/\s*<amd-dependency\s+path\s*=\s*)('|")(.+?)\2.*?\/>/;var te=/^(\/\/\/\s*<reference\s+no-default-lib\s*=\s*)('|")(.+?)\2\s*\/>/;function re(t){if(173<=t.kind&&t.kind<=196)return!0;switch(t.kind){case 129:case 153:case 145:case 156:case 148:case 132:case 149:case 146:case 151:case 142:return!0;case 114:return 214!==t.parent.kind;case 225:return!Ur(t);case 160:return 191===t.parent.kind||186===t.parent.kind;case 78:(158===t.parent.kind&&t.parent.right===t||202===t.parent.kind&&t.parent.name===t)&&(t=t.parent),e.Debug.assert(78===t.kind||158===t.kind||202===t.kind,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 158:case 202:case 108:var r=t.parent;if(177===r.kind)return!1;if(196===r.kind)return!r.isTypeOf;if(173<=r.kind&&r.kind<=196)return!0;switch(r.kind){case 225:return!Ur(r);case 160:case 333:return t===r.constraint;case 164:case 163:case 161:case 251:case 253:case 209:case 210:case 167:case 166:case 165:case 168:case 169:case 170:case 171:case 172:case 207:return t===r.type;case 204:case 205:return e.contains(r.typeArguments,t);case 206:return!1}}return!1}function ne(e){if(e)switch(e.kind){case 199:case 294:case 161:case 291:case 164:case 163:case 292:case 251:return!0}return!1}function ie(e){return 252===e.parent.kind&&234===e.parent.parent.kind}function ae(e,t,r){return e.properties.filter((function(e){if(291===e.kind){var n=B(e.name);return t===n||!!r&&r===n}return!1}))}function oe(t){if(t&&t.statements.length){var r=t.statements[0].expression;return e.tryCast(r,e.isObjectLiteralExpression)}}function se(t,r){var n=oe(t);return n?ae(n,r):e.emptyArray}function ce(t){return e.findAncestor(t.parent,e.isFunctionLikeDeclaration)}function le(t){return e.findAncestor(t.parent,e.isClassLike)}function ue(t,r){for(e.Debug.assert(300!==t.kind);;){if(!(t=t.parent))return e.Debug.fail();switch(t.kind){case 159:if(e.isClassLike(t.parent.parent))return t;t=t.parent;break;case 162:161===t.parent.kind&&e.isClassElement(t.parent.parent)?t=t.parent.parent:e.isClassElement(t.parent)&&(t=t.parent);break;case 210:if(!r)continue;case 253:case 209:case 259:case 164:case 163:case 166:case 165:case 167:case 168:case 169:case 170:case 171:case 172:case 258:case 300:return t}}}function de(e){var t=e.kind;return(202===t||203===t)&&106===e.expression.kind}function pe(e){switch(e.kind){case 206:return e.tag;case 278:case 277:return e.tagName;default:return e.expression}}function fe(t,r,n,i){if(e.isNamedDeclaration(t)&&e.isPrivateIdentifier(t.name))return!1;switch(t.kind){case 254:case 255:return!0;case 164:return 254===r.kind||255===r.kind;case 168:case 169:case 166:return void 0!==t.body&&(254===r.kind||255===r.kind);case 161:return!(void 0===r.body||167!==r.kind&&166!==r.kind&&169!==r.kind||254!==n.kind&&255!==n.kind);case 253:if(i)return d(t.decorators,i)||p(t.decorators,i)||f(t.decorators,i)||m(t.decorators,i)}return!1}function me(e,t,r){return void 0!==e.decorators&&fe(e,t,r)}function ge(e,t,r){return me(e,t,r)||_e(e,t)}function _e(t,r){switch(t.kind){case 254:case 255:return e.some(t.members,(function(e){return ge(e,t,r)}));case 166:case 169:return e.some(t.parameters,(function(e){return me(e,t,r)}));default:return!1}}function he(e){var t=e.parent;return(278===t.kind||277===t.kind||279===t.kind)&&t.tagName===e}function ye(e){switch(e.kind){case 106:case 104:case 110:case 95:case 13:case 200:case 201:case 202:case 211:case 203:case 204:case 205:case 206:case 226:case 207:case 227:case 208:case 209:case 223:case 210:case 214:case 212:case 213:case 216:case 217:case 218:case 219:case 222:case 220:case 224:case 276:case 277:case 280:case 221:case 215:case 228:return!0;case 158:for(;158===e.parent.kind;)e=e.parent;return 177===e.parent.kind||he(e);case 78:if(177===e.parent.kind||he(e))return!0;case 8:case 9:case 10:case 14:case 108:return ve(e);default:return!1}}function ve(e){var t=e.parent;switch(t.kind){case 251:case 161:case 164:case 163:case 294:case 291:case 199:return t.initializer===e;case 235:case 236:case 237:case 238:case 244:case 245:case 246:case 287:case 248:return t.expression===e;case 239:var r=t;return r.initializer===e&&252!==r.initializer.kind||r.condition===e||r.incrementor===e;case 240:case 241:var n=t;return n.initializer===e&&252!==n.initializer.kind||n.expression===e;case 207:case 226:case 230:case 159:return e===t.expression;case 162:case 286:case 285:case 293:return!0;case 225:return t.expression===e&&Ur(t);case 292:return t.objectAssignmentInitializer===e;default:return ye(t)}}function be(e){for(;158===e.kind||78===e.kind;)e=e.parent;return 177===e.kind}function ke(e){return 263===e.kind&&275===e.moduleReference.kind}function xe(e){return Ee(e)}function Ee(e){return!!e&&!!(131072&e.flags)}function Se(t,r){if(204!==t.kind)return!1;var n=t,i=n.expression,a=n.arguments;if(78!==i.kind||"require"!==i.escapedText)return!1;if(1!==a.length)return!1;var o=a[0];return!r||e.isStringLiteralLike(o)}function De(t,r){return 199===t.kind&&(t=t.parent.parent),e.isVariableDeclaration(t)&&!!t.initializer&&Se(sn(t.initializer),r)}function we(t){return e.isBinaryExpression(t)||on(t)||e.isIdentifier(t)||e.isCallExpression(t)}function Te(t){return Ee(t)&&t.initializer&&e.isBinaryExpression(t.initializer)&&(56===t.initializer.operatorToken.kind||60===t.initializer.operatorToken.kind)&&t.name&&qr(t.name)&&Ae(t.name,t.initializer.left)?t.initializer.right:t.initializer}function Ce(t,r){if(e.isCallExpression(t)){var n=ct(t.expression);return 209===n.kind||210===n.kind?t:void 0}return 209===t.kind||223===t.kind||210===t.kind||e.isObjectLiteralExpression(t)&&(0===t.properties.length||r)?t:void 0}function Ae(t,r){if(Ct(t)&&Ct(r))return At(t)===At(r);if(e.isIdentifier(t)&&Me(r)&&(108===r.expression.kind||e.isIdentifier(r.expression)&&("window"===r.expression.escapedText||"self"===r.expression.escapedText||"global"===r.expression.escapedText))){var n=Ue(r);return e.isPrivateIdentifier(n)&&e.Debug.fail("Unexpected PrivateIdentifier in name expression with literal-like access."),Ae(t,n)}return!(!Me(t)||!Me(r))&&(Je(t)===Je(r)&&Ae(t.expression,r.expression))}function Ne(e){for(;zr(e,!0);)e=e.right;return e}function Pe(t){return e.isIdentifier(t)&&"exports"===t.escapedText}function Ie(t){return e.isIdentifier(t)&&"module"===t.escapedText}function Fe(t){return(e.isPropertyAccessExpression(t)||Le(t))&&Ie(t.expression)&&"exports"===Je(t)}function Oe(t){var r=function(t){if(e.isCallExpression(t)){if(!Re(t))return 0;var r=t.arguments[0];return Pe(r)||Fe(r)?8:je(r)&&"prototype"===Je(r)?9:7}if(62!==t.operatorToken.kind||!on(t.left)||(n=Ne(t),e.isVoidExpression(n)&&e.isNumericLiteral(n.expression)&&"0"===n.expression.text))return 0;var n;if(ze(t.left.expression,!0)&&"prototype"===Je(t.left)&&e.isObjectLiteralExpression(He(t)))return 6;return Ve(t.left)}(t);return 5===r||Ee(t)?r:0}function Re(t){return 3===e.length(t.arguments)&&e.isPropertyAccessExpression(t.expression)&&e.isIdentifier(t.expression.expression)&&"Object"===e.idText(t.expression.expression)&&"defineProperty"===e.idText(t.expression.name)&&xt(t.arguments[1])&&ze(t.arguments[0],!0)}function Me(t){return e.isPropertyAccessExpression(t)||Le(t)}function Le(t){return e.isElementAccessExpression(t)&&(xt(t.argumentExpression)||wt(t.argumentExpression))}function je(t,r){return e.isPropertyAccessExpression(t)&&(!r&&108===t.expression.kind||e.isIdentifier(t.name)&&ze(t.expression,!0))||Be(t,r)}function Be(e,t){return Le(e)&&(!t&&108===e.expression.kind||qr(e.expression)||je(e.expression,!0))}function ze(e,t){return qr(e)||je(e,t)}function Ue(t){return e.isPropertyAccessExpression(t)?t.name:t.argumentExpression}function qe(t){if(e.isPropertyAccessExpression(t))return t.name;var r=ct(t.argumentExpression);return e.isNumericLiteral(r)||e.isStringLiteralLike(r)?r:t}function Je(t){var r=qe(t);if(r){if(e.isIdentifier(r))return r.escapedText;if(e.isStringLiteralLike(r)||e.isNumericLiteral(r))return e.escapeLeadingUnderscores(r.text)}if(e.isElementAccessExpression(t)&&wt(t.argumentExpression))return Nt(e.idText(t.argumentExpression.name))}function Ve(t){if(108===t.expression.kind)return 4;if(Fe(t))return 2;if(ze(t.expression,!0)){if(Vr(t.expression))return 3;for(var r=t;!e.isIdentifier(r.expression);)r=r.expression;var n=r.expression;if(("exports"===n.escapedText||"module"===n.escapedText&&"exports"===Je(r))&&je(t))return 1;if(ze(t,!0)||e.isElementAccessExpression(t)&&Dt(t))return 5}return 0}function He(t){for(;e.isBinaryExpression(t.right);)t=t.right;return t.right}function Ke(t){switch(t.parent.kind){case 264:case 270:return t.parent;case 275:return t.parent.parent;case 204:return $(t.parent)||Se(t.parent,!1)?t.parent:void 0;case 192:return e.Debug.assert(e.isStringLiteral(t)),e.tryCast(t.parent.parent,e.isImportTypeNode);default:return}}function We(t){switch(t.kind){case 264:case 270:return t.moduleSpecifier;case 263:return 275===t.moduleReference.kind?t.moduleReference.expression:void 0;case 196:return Y(t)?t.argument.literal:void 0;case 204:return t.arguments[0];case 259:return 10===t.name.kind?t.name:void 0;default:return e.Debug.assertNever(t)}}function Ge(e){return 334===e.kind||327===e.kind||328===e.kind}function $e(t){return e.isExpressionStatement(t)&&e.isBinaryExpression(t.expression)&&0!==Oe(t.expression)&&e.isBinaryExpression(t.expression.right)&&(56===t.expression.right.operatorToken.kind||60===t.expression.right.operatorToken.kind)?t.expression.right.right:void 0}function Ye(e){switch(e.kind){case 234:var t=Xe(e);return t&&t.initializer;case 164:case 291:return e.initializer}}function Xe(t){return e.isVariableStatement(t)?e.firstOrUndefined(t.declarationList.declarations):void 0}function Qe(t){return e.isModuleDeclaration(t)&&t.body&&259===t.body.kind?t.body:void 0}function Ze(t){var r=t.parent;return 291===r.kind||269===r.kind||164===r.kind||235===r.kind&&202===t.kind||Qe(r)||e.isBinaryExpression(t)&&62===t.operatorToken.kind?r:r.parent&&(Xe(r.parent)===t||e.isBinaryExpression(r)&&62===r.operatorToken.kind)?r.parent:r.parent&&r.parent.parent&&(Xe(r.parent.parent)||Ye(r.parent.parent)===t||$e(r.parent.parent))?r.parent.parent:void 0}function et(t){var r=tt(t);return r&&e.isFunctionLike(r)?r:void 0}function tt(t){var r=rt(t);if(r)return $e(r)||function(t){return e.isExpressionStatement(t)&&e.isBinaryExpression(t.expression)&&62===t.expression.operatorToken.kind?Ne(t.expression):void 0}(r)||Ye(r)||Xe(r)||Qe(r)||r}function rt(t){var r=nt(t);if(r){var n=r.parent;return n&&n.jsDoc&&r===e.lastOrUndefined(n.jsDoc)?n:void 0}}function nt(t){return e.findAncestor(t.parent,e.isJSDoc)}function it(t){var r=e.isJSDocParameterTag(t)?t.typeExpression&&t.typeExpression.type:t.type;return void 0!==t.dotDotDotToken||!!r&&312===r.kind}function at(e){for(var t=e.parent;;){switch(t.kind){case 218:var r=t.operatorToken.kind;return Lr(r)&&t.left===e?62===r||Mr(r)?1:2:0;case 216:case 217:var n=t.operator;return 45===n||46===n?2:0;case 240:case 241:return t.initializer===e?1:0;case 208:case 200:case 222:case 227:e=t;break;case 292:if(t.name!==e)return 0;e=t.parent;break;case 291:if(t.name===e)return 0;e=t.parent;break;default:return 0}t=e.parent}}function ot(e,t){for(;e&&e.kind===t;)e=e.parent;return e}function st(e){return ot(e,208)}function ct(t){return e.skipOuterExpressions(t,1)}function lt(t){return qr(t)||e.isClassExpression(t)}function ut(e){return lt(dt(e))}function dt(t){return e.isExportAssignment(t)?t.expression:t.right}function pt(t){var r=ft(t);if(r&&Ee(t)){var n=e.getJSDocAugmentsTag(t);if(n)return n.class}return r}function ft(e){var t=_t(e.heritageClauses,94);return t&&t.types.length>0?t.types[0]:void 0}function mt(t){if(Ee(t))return e.getJSDocImplementsTags(t).map((function(e){return e.class}));var r=_t(t.heritageClauses,117);return null==r?void 0:r.types}function gt(e){var t=_t(e.heritageClauses,94);return t?t.types:void 0}function _t(e,t){if(e)for(var r=0,n=e;r<n.length;r++){var i=n[r];if(i.token===t)return i}}function ht(e,t){for(;e;){if(e.kind===t)return e;e=e.parent}}function yt(t){for(;t;){if(e.isEtsComponentExpression(t))return t;t=t.expression}}function vt(e){return 80<=e&&e<=157}function bt(e){return 126<=e&&e<=157}function kt(e){return vt(e)&&!bt(e)}function xt(t){return e.isStringLiteralLike(t)||e.isNumericLiteral(t)}function Et(t){return e.isPrefixUnaryExpression(t)&&(39===t.operator||40===t.operator)&&e.isNumericLiteral(t.operand)}function St(t){var r=e.getNameOfDeclaration(t);return!!r&&Dt(r)}function Dt(t){if(159!==t.kind&&203!==t.kind)return!1;var r=e.isElementAccessExpression(t)?ct(t.argumentExpression):t.expression;return!xt(r)&&!Et(r)&&!wt(r)}function wt(t){return e.isPropertyAccessExpression(t)&&Pt(t.expression)}function Tt(t){switch(t.kind){case 78:case 79:return t.escapedText;case 10:case 8:return e.escapeLeadingUnderscores(t.text);case 159:var r=t.expression;return wt(r)?Nt(e.idText(r.name)):xt(r)?e.escapeLeadingUnderscores(r.text):Et(r)?40===r.operator?e.tokenToString(r.operator)+r.operand.text:r.operand.text:void 0;default:return e.Debug.assertNever(t)}}function Ct(e){switch(e.kind){case 78:case 10:case 14:case 8:return!0;default:return!1}}function At(t){return e.isIdentifierOrPrivateIdentifier(t)?e.idText(t):t.text}function Nt(e){return"__@"+e}function Pt(e){return 78===e.kind&&"Symbol"===e.escapedText}function It(e){for(;199===e.kind;)e=e.parent.parent;return e}function Ft(e){return ui(e.pos)||ui(e.end)}function Ot(e,t,r){switch(e){case 205:return r?0:1;case 216:case 213:case 214:case 212:case 215:case 219:case 221:return 1;case 218:switch(t){case 42:case 62:case 63:case 64:case 66:case 65:case 67:case 68:case 69:case 70:case 71:case 72:case 77:case 73:case 74:case 75:case 76:return 1}}return 0}function Rt(e){return 218===e.kind?e.operatorToken.kind:216===e.kind||217===e.kind?e.operator:e.kind}function Mt(e,t,r){switch(e){case 340:return 0;case 222:return 1;case 221:return 2;case 219:return 4;case 218:switch(t){case 27:return 0;case 62:case 63:case 64:case 66:case 65:case 67:case 68:case 69:case 70:case 71:case 72:case 77:case 73:case 74:case 75:case 76:return 3;default:return Lt(t)}case 207:case 227:case 216:case 213:case 214:case 212:case 215:return 16;case 217:return 17;case 204:return 18;case 205:return r?19:18;case 206:case 202:case 203:return 19;case 226:return 11;case 108:case 106:case 78:case 104:case 110:case 95:case 8:case 9:case 10:case 200:case 201:case 209:case 210:case 223:case 13:case 14:case 220:case 208:case 224:case 276:case 277:case 280:return 20;default:return-1}}function Lt(e){switch(e){case 60:return 4;case 56:return 5;case 55:return 6;case 51:return 7;case 52:return 8;case 50:return 9;case 34:case 35:case 36:case 37:return 10;case 29:case 31:case 32:case 33:case 102:case 101:case 127:return 11;case 47:case 48:case 49:return 12;case 39:case 40:return 13;case 41:case 43:case 44:return 14;case 42:return 15}return-1}e.isPartOfTypeNode=re,e.isChildOfNodeWithKind=function(e,t){for(;e;){if(e.kind===t)return!0;e=e.parent}return!1},e.forEachReturnStatement=function(t,r){return function t(n){switch(n.kind){case 244:return r(n);case 261:case 232:case 236:case 237:case 238:case 239:case 240:case 241:case 245:case 246:case 287:case 288:case 247:case 249:case 290:return e.forEachChild(n,t)}}(t)},e.forEachYieldExpression=function(t,r){return function t(n){switch(n.kind){case 221:r(n);var i=n.expression;return void(i&&t(i));case 258:case 256:case 259:case 257:return;default:if(e.isFunctionLike(n)){if(n.name&&159===n.name.kind)return void t(n.name.expression)}else re(n)||e.forEachChild(n,t)}}(t)},e.getRestParameterElementType=function(t){return t&&179===t.kind?t.elementType:t&&174===t.kind?e.singleOrUndefined(t.typeArguments):void 0},e.getMembersOfDeclaration=function(e){switch(e.kind){case 256:case 254:case 223:case 255:case 178:return e.members;case 201:return e.properties}},e.isVariableLike=ne,e.isVariableLikeOrAccessor=function(t){return ne(t)||e.isAccessor(t)},e.isVariableDeclarationInVariableStatement=ie,e.isValidESSymbolDeclaration=function(t){return e.isVariableDeclaration(t)?G(t)&&e.isIdentifier(t.name)&&ie(t):e.isPropertyDeclaration(t)?wr(t)&&Dr(t):e.isPropertySignature(t)&&wr(t)},e.introducesArgumentsExoticObject=function(e){switch(e.kind){case 166:case 165:case 167:case 168:case 169:case 253:case 209:return!0}return!1},e.unwrapInnermostStatementOfLabel=function(e,t){for(;;){if(t&&t(e),247!==e.statement.kind)return e.statement;e=e.statement}},e.isFunctionBlock=function(t){return t&&232===t.kind&&e.isFunctionLike(t.parent)},e.isObjectLiteralMethod=function(e){return e&&166===e.kind&&201===e.parent.kind},e.isObjectLiteralOrClassExpressionMethod=function(e){return 166===e.kind&&(201===e.parent.kind||223===e.parent.kind)},e.isIdentifierTypePredicate=function(e){return e&&1===e.kind},e.isThisTypePredicate=function(e){return e&&0===e.kind},e.getPropertyAssignment=ae,e.getPropertyArrayElementValue=function(t,r,n){return e.firstDefined(ae(t,r),(function(t){return e.isArrayLiteralExpression(t.initializer)?e.find(t.initializer.elements,(function(t){return e.isStringLiteral(t)&&t.text===n})):void 0}))},e.getTsConfigObjectLiteralExpression=oe,e.getTsConfigPropArrayElementValue=function(t,r,n){return e.firstDefined(se(t,r),(function(t){return e.isArrayLiteralExpression(t.initializer)?e.find(t.initializer.elements,(function(t){return e.isStringLiteral(t)&&t.text===n})):void 0}))},e.getTsConfigPropArray=se,e.getContainingFunction=function(t){return e.findAncestor(t.parent,e.isFunctionLike)},e.getContainingFunctionDeclaration=ce,e.getContainingClass=le,e.getContainingStruct=function(t){return e.findAncestor(t.parent,e.isStruct)},e.getThisContainer=ue,e.isInTopLevelContext=function(t){e.isIdentifier(t)&&(e.isClassDeclaration(t.parent)||e.isFunctionDeclaration(t.parent))&&t.parent.name===t&&(t=t.parent);var r=ue(t,!0);return e.isSourceFile(r)},e.getNewTargetContainer=function(e){var t=ue(e,!1);if(t)switch(t.kind){case 167:case 253:case 209:return t}},e.getSuperContainer=function(t,r){for(;;){if(!(t=t.parent))return t;switch(t.kind){case 159:t=t.parent;break;case 253:case 209:case 210:if(!r)continue;case 164:case 163:case 166:case 165:case 167:case 168:case 169:return t;case 162:161===t.parent.kind&&e.isClassElement(t.parent.parent)?t=t.parent.parent:e.isClassElement(t.parent)&&(t=t.parent)}}},e.getImmediatelyInvokedFunctionExpression=function(e){if(209===e.kind||210===e.kind){for(var t=e,r=e.parent;208===r.kind;)t=r,r=r.parent;if(204===r.kind&&r.expression===t)return r}},e.isSuperOrSuperProperty=function(e){return 106===e.kind||de(e)},e.isSuperProperty=de,e.isThisProperty=function(e){var t=e.kind;return(202===t||203===t)&&108===e.expression.kind},e.isThisInitializedDeclaration=function(t){var r;return!!t&&e.isVariableDeclaration(t)&&108===(null===(r=t.initializer)||void 0===r?void 0:r.kind)},e.getEntityNameFromTypeNode=function(e){switch(e.kind){case 174:return e.typeName;case 225:return qr(e.expression)?e.expression:void 0;case 78:case 158:return e}},e.getInvokedExpression=pe,e.nodeCanBeDecorated=fe,e.nodeIsDecorated=me,e.nodeOrChildIsDecorated=ge,e.childIsDecorated=_e,e.isJSXTagName=he,e.isExpressionNode=ye,e.isInExpressionContext=ve,e.isPartOfTypeQuery=be,e.isExternalModuleImportEqualsDeclaration=ke,e.getExternalModuleImportEqualsDeclarationExpression=function(t){return e.Debug.assert(ke(t)),t.moduleReference.expression},e.getExternalModuleRequireArgument=function(e){return De(e,!0)&&sn(e.initializer).arguments[0]},e.isInternalModuleImportEqualsDeclaration=function(e){return 263===e.kind&&275!==e.moduleReference.kind},e.isSourceFileJS=xe,e.isSourceFileNotJS=function(e){return!Ee(e)},e.isInJSFile=Ee,e.isInJsonFile=function(e){return!!e&&!!(33554432&e.flags)},e.isSourceFileNotJson=function(e){return!K(e)},e.isInJSDoc=function(e){return!!e&&!!(4194304&e.flags)},e.isJSDocIndexSignature=function(t){return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&"Object"===t.typeName.escapedText&&t.typeArguments&&2===t.typeArguments.length&&(148===t.typeArguments[0].kind||145===t.typeArguments[0].kind)},e.isInETSFile=function(e){return!!e&&8===l(e).scriptKind},e.isInBuildOrPageTransitionContext=function(t,r){var n,i,a,o;if(!t)return!1;var s=null===(i=null===(n=r.ets)||void 0===n?void 0:n.render)||void 0===i?void 0:i.method,c=null===(o=null===(a=r.ets)||void 0===a?void 0:a.render)||void 0===o?void 0:o.decorator;if(!s&&!c)return!1;for(var l=ce(t),u=function(){if(s&&e.isMethodDeclaration(l)&&function(t){var r=le(t);return!!r&&e.isStruct(r)}(l)){var t=B(l.name).toString();if(s.some((function(e){return e===t})))return{value:!0}}if(c&&(e.isMethodDeclaration(l)||e.isFunctionDeclaration(l))&&l.decorators&&l.decorators.some((function(t){return e.isIdentifier(t.expression)&&B(t.expression).toString()===c})))return{value:!0};l=ce(l)};l;){var d=u();if("object"==typeof d)return d.value}return!1},e.isRequireCall=Se,e.isRequireVariableDeclaration=De,e.isRequireVariableStatement=function(t,r){return void 0===r&&(r=!0),e.isVariableStatement(t)&&t.declarationList.declarations.length>0&&e.every(t.declarationList.declarations,(function(e){return De(e,r)}))},e.isSingleOrDoubleQuote=function(e){return 39===e||34===e},e.isStringDoubleQuoted=function(e,t){return 34===E(t,e).charCodeAt(0)},e.isAssignmentDeclaration=we,e.getEffectiveInitializer=Te,e.getDeclaredExpandoInitializer=function(e){var t=Te(e);return t&&Ce(t,Vr(e.name))},e.getAssignedExpandoInitializer=function(t){if(t&&t.parent&&e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind){var r=Vr(t.parent.left);return Ce(t.parent.right,r)||function(t,r,n){var i=e.isBinaryExpression(r)&&(56===r.operatorToken.kind||60===r.operatorToken.kind)&&Ce(r.right,n);if(i&&Ae(t,r.left))return i}(t.parent.left,t.parent.right,r)}if(t&&e.isCallExpression(t)&&Re(t)){var n=function(t,r){return e.forEach(t.properties,(function(t){return e.isPropertyAssignment(t)&&e.isIdentifier(t.name)&&"value"===t.name.escapedText&&t.initializer&&Ce(t.initializer,r)}))}(t.arguments[2],"prototype"===t.arguments[1].text);if(n)return n}},e.getExpandoInitializer=Ce,e.isDefaultedExpandoInitializer=function(t){var r=e.isVariableDeclaration(t.parent)?t.parent.name:e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind?t.parent.left:void 0;return r&&Ce(t.right,Vr(r))&&qr(r)&&Ae(r,t.left)},e.getNameOfExpando=function(t){if(e.isBinaryExpression(t.parent)){var r=56!==t.parent.operatorToken.kind&&60!==t.parent.operatorToken.kind||!e.isBinaryExpression(t.parent.parent)?t.parent:t.parent.parent;if(62===r.operatorToken.kind&&e.isIdentifier(r.left))return r.left}else if(e.isVariableDeclaration(t.parent))return t.parent.name},e.isSameEntityName=Ae,e.getRightMostAssignedExpression=Ne,e.isExportsIdentifier=Pe,e.isModuleIdentifier=Ie,e.isModuleExportsAccessExpression=Fe,e.getAssignmentDeclarationKind=Oe,e.isBindableObjectDefinePropertyCall=Re,e.isLiteralLikeAccess=Me,e.isLiteralLikeElementAccess=Le,e.isBindableStaticAccessExpression=je,e.isBindableStaticElementAccessExpression=Be,e.isBindableStaticNameExpression=ze,e.getNameOrArgument=Ue,e.getElementOrPropertyAccessArgumentExpressionOrName=qe,e.getElementOrPropertyAccessName=Je,e.getAssignmentDeclarationPropertyAccessKind=Ve,e.getInitializerOfBinaryExpression=He,e.isPrototypePropertyAssignment=function(t){return e.isBinaryExpression(t)&&3===Oe(t)},e.isSpecialPropertyDeclaration=function(t){return Ee(t)&&t.parent&&235===t.parent.kind&&(!e.isElementAccessExpression(t)||Le(t))&&!!e.getJSDocTypeTag(t.parent)},e.setValueDeclaration=function(e,t){var r=e.valueDeclaration;(!r||(!(8388608&t.flags)||8388608&r.flags)&&we(r)&&!we(t)||r.kind!==t.kind&&N(r))&&(e.valueDeclaration=t)},e.isFunctionSymbol=function(t){if(!t||!t.valueDeclaration)return!1;var r=t.valueDeclaration;return 253===r.kind||e.isVariableDeclaration(r)&&r.initializer&&e.isFunctionLike(r.initializer)},e.importFromModuleSpecifier=function(t){return Ke(t)||e.Debug.failBadSyntaxKind(t.parent)},e.tryGetImportFromModuleSpecifier=Ke,e.getExternalModuleName=We,e.getNamespaceDeclarationNode=function(t){switch(t.kind){case 264:return t.importClause&&e.tryCast(t.importClause.namedBindings,e.isNamespaceImport);case 263:return t;case 270:return t.exportClause&&e.tryCast(t.exportClause,e.isNamespaceExport);default:return e.Debug.assertNever(t)}},e.isDefaultImport=function(e){return 264===e.kind&&!!e.importClause&&!!e.importClause.name},e.forEachImportClauseDeclaration=function(t,r){var n;if(t.name&&(n=r(t)))return n;if(t.namedBindings&&(n=e.isNamespaceImport(t.namedBindings)?r(t.namedBindings):e.forEach(t.namedBindings.elements,r)))return n},e.hasQuestionToken=function(e){if(e)switch(e.kind){case 161:case 166:case 165:case 292:case 291:case 164:case 163:return void 0!==e.questionToken}return!1},e.isJSDocConstructSignature=function(t){var r=e.isJSDocFunctionType(t)?e.firstOrUndefined(t.parameters):void 0,n=e.tryCast(r&&r.name,e.isIdentifier);return!!n&&"new"===n.escapedText},e.isJSDocTypeAlias=Ge,e.isTypeAlias=function(t){return Ge(t)||e.isTypeAliasDeclaration(t)},e.getSingleInitializerOfVariableStatementOrPropertyDeclaration=Ye,e.getSingleVariableOfVariableStatement=Xe,e.getJSDocCommentsAndTags=function(t,r){var n;ne(t)&&e.hasInitializer(t)&&e.hasJSDocNodes(t.initializer)&&(n=e.append(n,e.last(t.initializer.jsDoc)));for(var i=t;i&&i.parent;){if(e.hasJSDocNodes(i)&&(n=e.append(n,e.last(i.jsDoc))),161===i.kind){n=e.addRange(n,(r?e.getJSDocParameterTagsNoCache:e.getJSDocParameterTags)(i));break}if(160===i.kind){n=e.addRange(n,(r?e.getJSDocTypeParameterTagsNoCache:e.getJSDocTypeParameterTags)(i));break}i=Ze(i)}return n||e.emptyArray},e.getNextJSDocCommentLocation=Ze,e.getParameterSymbolFromJSDoc=function(t){if(t.symbol)return t.symbol;if(e.isIdentifier(t.name)){var r=t.name.escapedText,n=et(t);if(n){var i=e.find(n.parameters,(function(e){return 78===e.name.kind&&e.name.escapedText===r}));return i&&i.symbol}}},e.getHostSignatureFromJSDoc=et,e.getEffectiveJSDocHost=tt,e.getJSDocHost=rt,e.getJSDocRoot=nt,e.getTypeParameterFromJsDoc=function(t){var r=t.name.escapedText,n=t.parent.parent.parent.typeParameters;return n&&e.find(n,(function(e){return e.name.escapedText===r}))},e.hasRestParameter=function(t){var r=e.lastOrUndefined(t.parameters);return!!r&&it(r)},e.isRestParameter=it,e.hasTypeArguments=function(e){return!!e.typeArguments},function(e){e[e.None=0]="None",e[e.Definite=1]="Definite",e[e.Compound=2]="Compound"}(e.AssignmentKind||(e.AssignmentKind={})),e.getAssignmentTargetKind=at,e.isAssignmentTarget=function(e){return 0!==at(e)},e.isNodeWithPossibleHoistedDeclaration=function(e){switch(e.kind){case 232:case 234:case 245:case 236:case 246:case 261:case 287:case 288:case 247:case 239:case 240:case 241:case 237:case 238:case 249:case 290:return!0}return!1},e.isValueSignatureDeclaration=function(t){return e.isFunctionExpression(t)||e.isArrowFunction(t)||e.isMethodOrAccessor(t)||e.isFunctionDeclaration(t)||e.isConstructorDeclaration(t)},e.walkUpParenthesizedTypes=function(e){return ot(e,187)},e.walkUpParenthesizedExpressions=st,e.walkUpParenthesizedTypesAndGetParentAndChild=function(e){for(var t;e&&187===e.kind;)t=e,e=e.parent;return[t,e]},e.skipParentheses=ct,e.isDeleteTarget=function(e){return(202===e.kind||203===e.kind)&&((e=st(e.parent))&&212===e.kind)},e.isNodeDescendantOf=function(e,t){for(;e;){if(e===t)return!0;e=e.parent}return!1},e.isDeclarationName=function(t){return!e.isSourceFile(t)&&!e.isBindingPattern(t)&&e.isDeclaration(t.parent)&&t.parent.name===t},e.getDeclarationFromName=function(t){var r=t.parent;switch(t.kind){case 10:case 14:case 8:if(e.isComputedPropertyName(r))return r.parent;case 78:if(e.isDeclaration(r))return r.name===t?r:void 0;if(e.isQualifiedName(r)){var n=r.parent;return e.isJSDocParameterTag(n)&&n.name===r?n:void 0}var i=r.parent;return e.isBinaryExpression(i)&&0!==Oe(i)&&(i.left.symbol||i.symbol)&&e.getNameOfDeclaration(i)===t?i:void 0;case 79:return e.isDeclaration(r)&&r.name===t?r:void 0;default:return}},e.isLiteralComputedPropertyDeclarationName=function(t){return xt(t)&&159===t.parent.kind&&e.isDeclaration(t.parent.parent)},e.isIdentifierName=function(e){var t=e.parent;switch(t.kind){case 164:case 163:case 166:case 165:case 168:case 169:case 294:case 291:case 202:return t.name===e;case 158:return t.right===e;case 199:case 268:return t.propertyName===e;case 273:case 283:return!0}return!1},e.isAliasSymbolDeclaration=function(t){return 263===t.kind||262===t.kind||265===t.kind&&!!t.name||266===t.kind||272===t.kind||268===t.kind||273===t.kind||269===t.kind&&ut(t)||e.isBinaryExpression(t)&&2===Oe(t)&&ut(t)||e.isPropertyAccessExpression(t)&&e.isBinaryExpression(t.parent)&&t.parent.left===t&&62===t.parent.operatorToken.kind&<(t.parent.right)||292===t.kind||291===t.kind&<(t.initializer)},e.getAliasDeclarationFromName=function e(t){switch(t.parent.kind){case 265:case 268:case 266:case 273:case 269:case 263:return t.parent;case 158:do{t=t.parent}while(158===t.parent.kind);return e(t)}},e.isAliasableExpression=lt,e.exportAssignmentIsAlias=ut,e.getExportAssignmentExpression=dt,e.getPropertyAssignmentAliasLikeExpression=function(e){return 292===e.kind?e.name:291===e.kind?e.initializer:e.parent.right},e.getEffectiveBaseTypeNode=pt,e.getClassExtendsHeritageElement=ft,e.getEffectiveImplementsTypeNodes=mt,e.getAllSuperTypeNodes=function(t){return e.isInterfaceDeclaration(t)?gt(t)||e.emptyArray:e.isClassLike(t)&&e.concatenate(e.singleElementArray(pt(t)),mt(t))||e.emptyArray},e.getInterfaceBaseTypeNodes=gt,e.getHeritageClause=_t,e.getAncestor=ht,e.getRootEtsComponent=yt,e.isKeyword=vt,e.isContextualKeyword=bt,e.isNonContextualKeyword=kt,e.isFutureReservedKeyword=function(e){return 117<=e&&e<=125},e.isStringANonContextualKeyword=function(t){var r=e.stringToToken(t);return void 0!==r&&kt(r)},e.isStringAKeyword=function(t){var r=e.stringToToken(t);return void 0!==r&&vt(r)},e.isIdentifierANonContextualKeyword=function(e){var t=e.originalKeywordKind;return!!t&&!bt(t)},e.isTrivia=function(e){return 2<=e&&e<=7},function(e){e[e.Normal=0]="Normal",e[e.Generator=1]="Generator",e[e.Async=2]="Async",e[e.Invalid=4]="Invalid",e[e.AsyncGenerator=3]="AsyncGenerator"}(e.FunctionFlags||(e.FunctionFlags={})),e.getFunctionFlags=function(e){if(!e)return 4;var t=0;switch(e.kind){case 253:case 209:case 166:e.asteriskToken&&(t|=1);case 210:Sr(e,256)&&(t|=2)}return e.body||(t|=4),t},e.isAsyncFunction=function(e){switch(e.kind){case 253:case 209:case 210:case 166:return void 0!==e.body&&void 0===e.asteriskToken&&Sr(e,256)}return!1},e.isStringOrNumericLiteralLike=xt,e.isSignedNumericLiteral=Et,e.hasDynamicName=St,e.isDynamicName=Dt,e.isWellKnownSymbolSyntactically=wt,e.getPropertyNameForPropertyNameNode=Tt,e.isPropertyNameLiteral=Ct,e.getTextOfIdentifierOrLiteral=At,e.getEscapedTextOfIdentifierOrLiteral=function(t){return e.isIdentifierOrPrivateIdentifier(t)?t.escapedText:e.escapeLeadingUnderscores(t.text)},e.getPropertyNameForUniqueESSymbol=function(t){return"__@"+e.getSymbolId(t)+"@"+t.escapedName},e.getPropertyNameForKnownSymbolName=Nt,e.getSymbolNameForPrivateIdentifier=function(t,r){return"__#"+e.getSymbolId(t)+"@"+r},e.isKnownSymbol=function(t){return e.startsWith(t.escapedName,"__@")},e.isESSymbolIdentifier=Pt,e.isPushOrUnshiftIdentifier=function(e){return"push"===e.escapedText||"unshift"===e.escapedText},e.isParameterDeclaration=function(e){return 161===It(e).kind},e.getRootDeclaration=It,e.nodeStartsNewLexicalEnvironment=function(e){var t=e.kind;return 167===t||209===t||253===t||210===t||166===t||168===t||169===t||259===t||300===t},e.nodeIsSynthesized=Ft,e.getOriginalSourceFile=function(t){return e.getParseTreeNode(t,e.isSourceFile)||t},function(e){e[e.Left=0]="Left",e[e.Right=1]="Right"}(e.Associativity||(e.Associativity={})),e.getExpressionAssociativity=function(e){var t=Rt(e),r=205===e.kind&&void 0!==e.arguments;return Ot(e.kind,t,r)},e.getOperatorAssociativity=Ot,e.getExpressionPrecedence=function(e){var t=Rt(e),r=205===e.kind&&void 0!==e.arguments;return Mt(e.kind,t,r)},e.getOperator=Rt,function(e){e[e.Comma=0]="Comma",e[e.Spread=1]="Spread",e[e.Yield=2]="Yield",e[e.Assignment=3]="Assignment",e[e.Conditional=4]="Conditional",e[e.Coalesce=4]="Coalesce",e[e.LogicalOR=5]="LogicalOR",e[e.LogicalAND=6]="LogicalAND",e[e.BitwiseOR=7]="BitwiseOR",e[e.BitwiseXOR=8]="BitwiseXOR",e[e.BitwiseAND=9]="BitwiseAND",e[e.Equality=10]="Equality",e[e.Relational=11]="Relational",e[e.Shift=12]="Shift",e[e.Additive=13]="Additive",e[e.Multiplicative=14]="Multiplicative",e[e.Exponentiation=15]="Exponentiation",e[e.Unary=16]="Unary",e[e.Update=17]="Update",e[e.LeftHandSide=18]="LeftHandSide",e[e.Member=19]="Member",e[e.Primary=20]="Primary",e[e.Highest=20]="Highest",e[e.Lowest=0]="Lowest",e[e.Invalid=-1]="Invalid"}(e.OperatorPrecedence||(e.OperatorPrecedence={})),e.getOperatorPrecedence=Mt,e.getBinaryOperatorPrecedence=Lt,e.getSemanticJsxChildren=function(t){return e.filter(t,(function(e){switch(e.kind){case 286:return!!e.expression;case 11:return!e.containsOnlyTriviaWhiteSpaces;default:return!0}}))},e.createDiagnosticCollection=function(){var t=[],r=[],n=new e.Map,i=!1;return{add:function(a){var o;a.file?(o=n.get(a.file.fileName))||(o=[],n.set(a.file.fileName,o),e.insertSorted(r,a.file.fileName,e.compareStringsCaseSensitive)):(i&&(i=!1,t=t.slice()),o=t);e.insertSorted(o,a,xn)},lookup:function(r){var i;i=r.file?n.get(r.file.fileName):t;if(!i)return;var a=e.binarySearch(i,r,e.identity,En);if(a>=0)return i[a];return},getGlobalDiagnostics:function(){return i=!0,t},getDiagnostics:function(i){if(i)return n.get(i)||[];var a=e.flatMapToMutable(r,(function(e){return n.get(e)}));if(!t.length)return a;return a.unshift.apply(a,t),a}}};var jt=/\$\{/g;e.hasInvalidEscape=function(t){return t&&!!(e.isNoSubstitutionTemplateLiteral(t)?t.templateFlags:t.head.templateFlags||e.some(t.templateSpans,(function(e){return!!e.literal.templateFlags})))};var Bt=/[\\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,zt=/[\\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,Ut=/[\\`]/g,qt=new e.Map(e.getEntries({"\t":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","…":"\\u0085"}));function Jt(e){return"\\u"+("0000"+e.toString(16).toUpperCase()).slice(-4)}function Vt(e,t,r){if(0===e.charCodeAt(0)){var n=r.charCodeAt(t+e.length);return n>=48&&n<=57?"\\x00":"\\0"}return qt.get(e)||Jt(e.charCodeAt(0))}function Ht(e,t){var r=96===t?Ut:39===t?zt:Bt;return e.replace(r,Vt)}e.escapeString=Ht;var Kt=/[^\u0000-\u007F]/g;function Wt(e,t){return e=Ht(e,t),Kt.test(e)?e.replace(Kt,(function(e){return Jt(e.charCodeAt(0))})):e}e.escapeNonAsciiString=Wt;var Gt=/[\"\u0000-\u001f\u2028\u2029\u0085]/g,$t=/[\'\u0000-\u001f\u2028\u2029\u0085]/g,Yt=new e.Map(e.getEntries({'"':""","'":"'"}));function Xt(e){return 0===e.charCodeAt(0)?"�":Yt.get(e)||"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"}function Qt(e,t){var r=39===t?$t:Gt;return e.replace(r,Xt)}e.escapeJsxAttributeString=Qt,e.stripQuotes=function(e){var t,r=e.length;return r>=2&&e.charCodeAt(0)===e.charCodeAt(r-1)&&(39===(t=e.charCodeAt(0))||34===t||96===t)?e.substring(1,r-1):e},e.isIntrinsicJsxName=function(t){var r=t.charCodeAt(0);return r>=97&&r<=122||e.stringContains(t,"-")||e.stringContains(t,":")};var Zt=[""," "];function er(e){for(var t=Zt[1],r=Zt.length;r<=e;r++)Zt.push(Zt[r-1]+t);return Zt[e]}function tr(){return Zt[1].length}function rr(e){return!!e.useCaseSensitiveFileNames&&e.useCaseSensitiveFileNames()}function nr(e,t,r){return t.moduleName||ar(e,t.fileName,r&&r.fileName)}function ir(t,r){return t.getCanonicalFileName(e.getNormalizedAbsolutePath(r,t.getCurrentDirectory()))}function ar(t,r,n){var i=function(e){return t.getCanonicalFileName(e)},a=e.toPath(n?e.getDirectoryPath(n):t.getCommonSourceDirectory(),t.getCurrentDirectory(),i),o=e.getNormalizedAbsolutePath(r,t.getCurrentDirectory()),s=oi(e.getRelativePathToDirectoryOrUrl(a,o,a,i,!1));return n?e.ensurePathIsNonModuleName(s):s}function or(t,r,n,i,a){var o=r.declarationDir||r.outDir,s=o?ur(t,o,n,i,a):t;return oi(s)+(e.fileExtensionIs(s,".ets")?".d.ets":".d.ts")}function sr(e){return e.outFile||e.out}function cr(e,t,r){return!(t.getCompilerOptions().noEmitForJsFiles&&xe(e))&&!e.isDeclarationFile&&(!t.isSourceFileFromExternalLibrary(e)||W(t.getCompilerOptions().emitNodeModulesFiles))&&!(K(e)&&t.getResolvedProjectReferenceToRedirect(e.fileName))&&(r||!t.isSourceOfProjectReferenceRedirect(e.fileName))}function lr(e,t,r){return ur(e,r,t.getCurrentDirectory(),t.getCommonSourceDirectory(),(function(e){return t.getCanonicalFileName(e)}))}function ur(t,r,n,i,a){var o=e.getNormalizedAbsolutePath(t,n);return o=0===a(o).indexOf(a(i))?o.substring(i.length):o,e.combinePaths(r,o)}function dr(t,r,n){t.length>e.getRootLength(t)&&!n(t)&&(dr(e.getDirectoryPath(t),r,n),r(t))}function pr(t,r){return e.computeLineOfPosition(t,r)}function fr(e){if(e&&e.parameters.length>0){var t=2===e.parameters.length&&mr(e.parameters[0]);return e.parameters[t?1:0]}}function mr(e){return gr(e.name)}function gr(e){return!!e&&78===e.kind&&_r(e)}function _r(e){return 108===e.originalKeywordKind}function hr(t){if(Ee(t)||!e.isFunctionDeclaration(t)){var r=t.type;return r||!Ee(t)?r:e.isJSDocPropertyLikeTag(t)?t.typeExpression&&t.typeExpression.type:e.getJSDocType(t)}}function yr(e,t,r,n){vr(e,t,r.pos,n)}function vr(e,t,r,n){n&&n.length&&r!==n[0].pos&&pr(e,r)!==pr(e,n[0].pos)&&t.writeLine()}function br(e,t,r,n,i,a,o,s){if(n&&n.length>0){i&&r.writeSpace(" ");for(var c=!1,l=0,u=n;l<u.length;l++){var d=u[l];c&&(r.writeSpace(" "),c=!1),s(e,t,r,d.pos,d.end,o),d.hasTrailingNewLine?r.writeLine():c=!0}c&&a&&r.writeSpace(" ")}}function kr(e,t,r,n,i,a){var o=Math.min(t,a-1),s=e.substring(i,o).replace(/^\s+|\s+$/g,"");s?(r.writeComment(s),o!==t&&r.writeLine()):r.rawWrite(n)}function xr(t,r,n){for(var i=0;r<n&&e.isWhiteSpaceSingleLine(t.charCodeAt(r));r++)9===t.charCodeAt(r)?i+=tr()-i%tr():i++;return i}function Er(e,t){return!!Tr(e,t)}function Sr(e,t){return!!Cr(e,t)}function Dr(e){return Sr(e,32)}function wr(e){return Er(e,64)}function Tr(e,t){return Nr(e)&t}function Cr(e,t){return Pr(e)&t}function Ar(e,t,r){return e.kind>=0&&e.kind<=157?0:(536870912&e.modifierFlagsCache||(e.modifierFlagsCache=536870912|Fr(e)),!t||4096&e.modifierFlagsCache||!r&&!Ee(e)||!e.parent||(e.modifierFlagsCache|=4096|Ir(e)),-536875009&e.modifierFlagsCache)}function Nr(e){return Ar(e,!0)}function Pr(e){return Ar(e,!1)}function Ir(t){var r=0;return t.parent&&!e.isParameter(t)&&(Ee(t)&&(e.getJSDocPublicTagNoCache(t)&&(r|=4),e.getJSDocPrivateTagNoCache(t)&&(r|=8),e.getJSDocProtectedTagNoCache(t)&&(r|=16),e.getJSDocReadonlyTagNoCache(t)&&(r|=64)),e.getJSDocDeprecatedTagNoCache(t)&&(r|=8192)),r}function Fr(e){var t=Or(e.modifiers);return(4&e.flags||78===e.kind&&e.isInJSDocNamespace)&&(t|=1),t}function Or(e){var t=0;if(e)for(var r=0,n=e;r<n.length;r++){t|=Rr(n[r].kind)}return t}function Rr(e){switch(e){case 124:return 32;case 123:return 4;case 122:return 16;case 121:return 8;case 126:return 128;case 93:return 1;case 134:return 2;case 85:return 2048;case 88:return 512;case 130:return 256;case 143:return 64}return 0}function Mr(e){return 74===e||75===e||76===e}function Lr(e){return e>=62&&e<=77}function jr(e){var t=Br(e);return t&&!t.isImplements?t.class:void 0}function Br(t){return e.isExpressionWithTypeArguments(t)&&e.isHeritageClause(t.parent)&&e.isClassLike(t.parent.parent)?{class:t.parent.parent,isImplements:117===t.parent.token}:void 0}function zr(t,r){return e.isBinaryExpression(t)&&(r?62===t.operatorToken.kind:Lr(t.operatorToken.kind))&&e.isLeftHandSideExpression(t.left)}function Ur(e){return void 0!==jr(e)}function qr(e){return 78===e.kind||Jr(e)}function Jr(t){return e.isPropertyAccessExpression(t)&&e.isIdentifier(t.name)&&qr(t.expression)}function Vr(e){return je(e)&&"prototype"===Je(e)}e.getIndentString=er,e.getIndentSize=tr,e.getTrailingSemicolonDeferringWriter=function(e){var t=!1;function r(){t&&(e.writeTrailingSemicolon(";"),t=!1)}return a(a({},e),{writeTrailingSemicolon:function(){t=!0},writeLiteral:function(t){r(),e.writeLiteral(t)},writeStringLiteral:function(t){r(),e.writeStringLiteral(t)},writeSymbol:function(t,n){r(),e.writeSymbol(t,n)},writePunctuation:function(t){r(),e.writePunctuation(t)},writeKeyword:function(t){r(),e.writeKeyword(t)},writeOperator:function(t){r(),e.writeOperator(t)},writeParameter:function(t){r(),e.writeParameter(t)},writeSpace:function(t){r(),e.writeSpace(t)},writeProperty:function(t){r(),e.writeProperty(t)},writeComment:function(t){r(),e.writeComment(t)},writeLine:function(){r(),e.writeLine()},increaseIndent:function(){r(),e.increaseIndent()},decreaseIndent:function(){r(),e.decreaseIndent()}})},e.hostUsesCaseSensitiveFileNames=rr,e.hostGetCanonicalFileName=function(t){return e.createGetCanonicalFileName(rr(t))},e.getResolvedExternalModuleName=nr,e.getExternalModuleNameFromDeclaration=function(t,r,n){var i=r.getExternalModuleFileFromDeclaration(n);if(i&&!i.isDeclarationFile){var a=We(n);if(!a||!e.isStringLiteralLike(a)||e.pathIsRelative(a.text)||-1!==ir(t,i.path).indexOf(ir(t,e.ensureTrailingDirectorySeparator(t.getCommonSourceDirectory()))))return nr(t,i)}},e.getExternalModuleNameFromPath=ar,e.getOwnEmitOutputFilePath=function(e,t,r){var n=t.getCompilerOptions();return(n.outDir?oi(lr(e,t,n.outDir)):oi(e))+r},e.getDeclarationEmitOutputFilePath=function(e,t){return or(e,t.getCompilerOptions(),t.getCurrentDirectory(),t.getCommonSourceDirectory(),(function(e){return t.getCanonicalFileName(e)}))},e.getDeclarationEmitOutputFilePathWorker=or,e.outFile=sr,e.getPathsBasePath=function(t,r){var n,i;if(t.paths)return null!==(n=t.baseUrl)&&void 0!==n?n:e.Debug.checkDefined(t.pathsBasePath||(null===(i=r.getCurrentDirectory)||void 0===i?void 0:i.call(r)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")},e.getSourceFilesToEmit=function(t,r,n){var i=t.getCompilerOptions();if(sr(i)){var a=wn(i),o=i.emitDeclarationOnly||a===e.ModuleKind.AMD||a===e.ModuleKind.System;return e.filter(t.getSourceFiles(),(function(r){return(o||!e.isExternalModule(r))&&cr(r,t,n)}))}var s=void 0===r?t.getSourceFiles():[r];return e.filter(s,(function(e){return cr(e,t,n)}))},e.sourceFileMayBeEmitted=cr,e.getSourceFilePathInNewDir=lr,e.getSourceFilePathInNewDirWorker=ur,e.writeFile=function(t,r,n,i,a,o){t.writeFile(n,i,a,(function(t){r.add(bn(e.Diagnostics.Could_not_write_file_0_Colon_1,n,t))}),o)},e.writeFileEnsuringDirectories=function(t,r,n,i,a,o){try{i(t,r,n)}catch(s){dr(e.getDirectoryPath(e.normalizePath(t)),a,o),i(t,r,n)}},e.getLineOfLocalPosition=function(t,r){var n=e.getLineStarts(t);return e.computeLineOfPosition(n,r)},e.getLineOfLocalPositionFromLineMap=pr,e.getFirstConstructorWithBody=function(t){return e.find(t.members,(function(t){return e.isConstructorDeclaration(t)&&h(t.body)}))},e.getSetAccessorValueParameter=fr,e.getSetAccessorTypeAnnotationNode=function(e){var t=fr(e);return t&&t.type},e.getThisParameter=function(t){if(t.parameters.length&&!e.isJSDocSignature(t)){var r=t.parameters[0];if(mr(r))return r}},e.parameterIsThisKeyword=mr,e.isThisIdentifier=gr,e.identifierIsThisKeyword=_r,e.getAllAccessorDeclarations=function(t,r){var n,i,a,o;return St(r)?(n=r,168===r.kind?a=r:169===r.kind?o=r:e.Debug.fail("Accessor has wrong kind")):e.forEach(t,(function(t){e.isAccessor(t)&&Sr(t,32)===Sr(r,32)&&(Tt(t.name)===Tt(r.name)&&(n?i||(i=t):n=t,168!==t.kind||a||(a=t),169!==t.kind||o||(o=t)))})),{firstAccessor:n,secondAccessor:i,getAccessor:a,setAccessor:o}},e.getEffectiveTypeAnnotationNode=hr,e.getTypeAnnotationNode=function(e){return e.type},e.getEffectiveReturnTypeNode=function(t){return e.isJSDocSignature(t)?t.type&&t.type.typeExpression&&t.type.typeExpression.type:t.type||(Ee(t)?e.getJSDocReturnType(t):void 0)},e.getJSDocTypeParameterDeclarations=function(t){return e.flatMap(e.getJSDocTags(t),(function(t){return function(t){return e.isJSDocTemplateTag(t)&&!(314===t.parent.kind&&t.parent.tags.some(Ge))}(t)?t.typeParameters:void 0}))},e.getEffectiveSetAccessorTypeAnnotationNode=function(e){var t=fr(e);return t&&hr(t)},e.emitNewLineBeforeLeadingComments=yr,e.emitNewLineBeforeLeadingCommentsOfPosition=vr,e.emitNewLineBeforeLeadingCommentOfPosition=function(e,t,r,n){r!==n&&pr(e,r)!==pr(e,n)&&t.writeLine()},e.emitComments=br,e.emitDetachedComments=function(t,r,n,i,a,o,s){var c,l;if(s?0===a.pos&&(c=e.filter(e.getLeadingCommentRanges(t,a.pos),(function(e){return k(t,e.pos)}))):c=e.getLeadingCommentRanges(t,a.pos),c){for(var u=[],d=void 0,p=0,f=c;p<f.length;p++){var m=f[p];if(d){var g=pr(r,d.end);if(pr(r,m.pos)>=g+2)break}u.push(m),d=m}if(u.length){g=pr(r,e.last(u).end);pr(r,e.skipTrivia(t,a.pos))>=g+2&&(yr(r,n,a,c),br(t,r,n,u,!1,!0,o,i),l={nodePos:a.pos,detachedCommentEndPos:e.last(u).end})}}return l},e.writeCommentRange=function(t,r,n,i,a,o){if(42===t.charCodeAt(i+1))for(var s=e.computeLineAndCharacterOfPosition(r,i),c=r.length,l=void 0,u=i,d=s.line;u<a;d++){var p=d+1===c?t.length+1:r[d+1];if(u!==i){void 0===l&&(l=xr(t,r[s.line],i));var f=n.getIndent()*tr()-l+xr(t,u,p);if(f>0){var m=f%tr(),g=er((f-m)/tr());for(n.rawWrite(g);m;)n.rawWrite(" "),m--}else n.rawWrite("")}kr(t,a,n,o,u,p),u=p}else n.writeComment(t.substring(i,a))},e.hasEffectiveModifiers=function(e){return 0!==Nr(e)},e.hasSyntacticModifiers=function(e){return 0!==Pr(e)},e.hasEffectiveModifier=Er,e.hasSyntacticModifier=Sr,e.hasStaticModifier=Dr,e.hasEffectiveReadonlyModifier=wr,e.getSelectedEffectiveModifierFlags=Tr,e.getSelectedSyntacticModifierFlags=Cr,e.getEffectiveDecorators=function(t,r){var n,i=null===(n=r.getCompilerOptions().ets)||void 0===n?void 0:n.emitDecorators;if(i){for(var a=[],o=0,s=t;o<s.length;o++){var c=s[o],l=c.expression;if(e.isIdentifier(l))for(var u=0,d=i;u<d.length;u++){if((g=d[u]).name===l.escapedText.toString()){a.push(c);break}}else if(e.isCallExpression(l)){var p=l.expression;if(e.isIdentifier(p))for(var f=0,m=i;f<m.length;f++){var g;if((g=m[f]).name===p.escapedText.toString()){g.emitParameters||(c=e.factory.updateDecorator(c,p)),a.push(c);break}}}}return a}},e.getEffectiveModifierFlags=Nr,e.getEffectiveModifierFlagsAlwaysIncludeJSDoc=function(e){return Ar(e,!0,!0)},e.getSyntacticModifierFlags=Pr,e.getEffectiveModifierFlagsNoCache=function(e){return Fr(e)|Ir(e)},e.getSyntacticModifierFlagsNoCache=Fr,e.modifiersToFlags=Or,e.modifierToFlag=Rr,e.isLogicalOperator=function(e){return 56===e||55===e||53===e},e.isLogicalOrCoalescingAssignmentOperator=Mr,e.isLogicalOrCoalescingAssignmentExpression=function(e){return Mr(e.operatorToken.kind)},e.isAssignmentOperator=Lr,e.tryGetClassExtendingExpressionWithTypeArguments=jr,e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments=Br,e.isAssignmentExpression=zr,e.isDestructuringAssignment=function(e){if(zr(e,!0)){var t=e.left.kind;return 201===t||200===t}return!1},e.isExpressionWithTypeArgumentsInClassExtendsClause=Ur,e.isEntityNameExpression=qr,e.getFirstIdentifier=function(e){switch(e.kind){case 78:return e;case 158:do{e=e.left}while(78!==e.kind);return e;case 202:do{e=e.expression}while(78!==e.kind);return e}},e.isDottedName=function e(t){return 78===t.kind||108===t.kind||106===t.kind||202===t.kind&&e(t.expression)||208===t.kind&&e(t.expression)},e.isPropertyAccessEntityNameExpression=Jr,e.tryGetPropertyAccessOrIdentifierToString=function t(r){if(e.isPropertyAccessExpression(r)){if(void 0!==(n=t(r.expression)))return n+"."+z(r.name)}else if(e.isElementAccessExpression(r)){var n;if(void 0!==(n=t(r.expression))&&e.isPropertyName(r.argumentExpression))return n+"."+Tt(r.argumentExpression)}else if(e.isIdentifier(r))return e.unescapeLeadingUnderscores(r.escapedText)},e.isPrototypeAccess=Vr,e.isRightSideOfQualifiedNameOrPropertyAccess=function(e){return 158===e.parent.kind&&e.parent.right===e||202===e.parent.kind&&e.parent.name===e},e.isEmptyObjectLiteral=function(e){return 201===e.kind&&0===e.properties.length},e.isEmptyArrayLiteral=function(e){return 200===e.kind&&0===e.elements.length},e.getLocalSymbolForExportDefault=function(t){if(function(t){return t&&e.length(t.declarations)>0&&Sr(t.declarations[0],512)}(t))for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];if(i.localSymbol)return i.localSymbol}},e.tryExtractTSExtension=function(t){return e.find(e.supportedTSExtensionsForExtractExtension,(function(r){return e.fileExtensionIs(t,r)}))};var Hr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function Kr(t){for(var r,n,i,a,o="",s=function(t){for(var r=[],n=t.length,i=0;i<n;i++){var a=t.charCodeAt(i);a<128?r.push(a):a<2048?(r.push(a>>6|192),r.push(63&a|128)):a<65536?(r.push(a>>12|224),r.push(a>>6&63|128),r.push(63&a|128)):a<131072?(r.push(a>>18|240),r.push(a>>12&63|128),r.push(a>>6&63|128),r.push(63&a|128)):e.Debug.assert(!1,"Unexpected code point")}return r}(t),c=0,l=s.length;c<l;)r=s[c]>>2,n=(3&s[c])<<4|s[c+1]>>4,i=(15&s[c+1])<<2|s[c+2]>>6,a=63&s[c+2],c+1>=l?i=a=64:c+2>=l&&(a=64),o+=Hr.charAt(r)+Hr.charAt(n)+Hr.charAt(i)+Hr.charAt(a),c+=3;return o}e.convertToBase64=Kr,e.base64encode=function(e,t){return e&&e.base64encode?e.base64encode(t):Kr(t)},e.base64decode=function(e,t){if(e&&e.base64decode)return e.base64decode(t);for(var r=t.length,n=[],i=0;i<r&&t.charCodeAt(i)!==Hr.charCodeAt(64);){var a=Hr.indexOf(t[i]),o=Hr.indexOf(t[i+1]),s=Hr.indexOf(t[i+2]),c=Hr.indexOf(t[i+3]),l=(63&a)<<2|o>>4&3,u=(15&o)<<4|s>>2&15,d=(3&s)<<6|63&c;0===u&&0!==s?n.push(l):0===d&&0!==c?n.push(l,u):n.push(l,u,d),i+=4}return function(e){for(var t="",r=0,n=e.length;r<n;){var i=e[r];if(i<128)t+=String.fromCharCode(i),r++;else if(192==(192&i)){for(var a=63&i,o=e[++r];128==(192&o);)a=a<<6|63&o,o=e[++r];t+=String.fromCharCode(a)}else t+=String.fromCharCode(i),r++}return t}(n)},e.readJson=function(t,r){try{var n=r.readFile(t);if(!n)return{};var i=e.parseConfigFileTextToJson(t,n);return i.error?{}:i.config}catch(e){return{}}},e.directoryProbablyExists=function(e,t){return!t.directoryExists||t.directoryExists(e)};var Wr;function Gr(t,r){return void 0===r&&(r=t),e.Debug.assert(r>=t||-1===r),{pos:t,end:r}}function $r(e,t){return Gr(t,e.end)}function Yr(e){return e.decorators&&e.decorators.length>0?$r(e,e.decorators.end):e}function Xr(e,t,r){return Qr(Zr(e,r,!1),t.end,r)}function Qr(t,r,n){return 0===e.getLinesBetweenPositions(n,t,r)}function Zr(t,r,n){return ui(t.pos)?-1:e.skipTrivia(r.text,t.pos,!1,n)}function en(e){return void 0!==e.initializer}function tn(e){return 33554432&e.flags?e.checkFlags:0}function rn(t){var r=t.parent;if(!r)return 0;switch(r.kind){case 208:case 200:return rn(r);case 217:case 216:var n=r.operator;return 45===n||46===n?c():0;case 218:var i=r,a=i.left,o=i.operatorToken;return a===t&&Lr(o.kind)?62===o.kind?1:c():0;case 202:return r.name!==t?0:rn(r);case 291:var s=rn(r.parent);return t===r.name?function(t){switch(t){case 0:return 1;case 1:return 0;case 2:return 2;default:return e.Debug.assertNever(t)}}(s):s;case 292:return t===r.objectAssignmentInitializer?0:rn(r.parent);default:return 0}function c(){return r.parent&&235===function(e){for(;208===e.kind;)e=e.parent;return e}(r.parent).kind?1:2}}function nn(e,t,r){var n=r.onDeleteValue,i=r.onExistingValue;e.forEach((function(r,a){var o=t.get(a);void 0===o?(e.delete(a),n(r,a)):i&&i(r,o,a)}))}function an(t){return e.find(t.declarations,e.isClassLike)}function on(e){return 202===e.kind||203===e.kind}function sn(e){for(;on(e);)e=e.expression;return e}function cn(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=void 0,this.mergeId=void 0,this.parent=void 0}function ln(t,r){this.flags=r,(e.Debug.isDebugging||e.tracing)&&(this.checker=t)}function un(t,r){this.flags=r,e.Debug.isDebugging&&(this.checker=t)}function dn(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0}function pn(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0}function fn(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.flowNode=void 0}function mn(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||function(e){return e}}function gn(t,r,n){return void 0===n&&(n=0),t.replace(/{(\d+)}/g,(function(t,i){return""+e.Debug.checkDefined(r[+i+n])}))}function _n(t){return e.localizedDiagnosticMessages&&e.localizedDiagnosticMessages[t.key]||t.message}function hn(e){return void 0===e.file&&void 0!==e.start&&void 0!==e.length&&"string"==typeof e.fileName}function yn(t,r){var n=r.fileName||"",i=r.text.length;e.Debug.assertEqual(t.fileName,n),e.Debug.assertLessThanOrEqual(t.start,i),e.Debug.assertLessThanOrEqual(t.start+t.length,i);var a={file:r,start:t.start,length:t.length,messageText:t.messageText,category:t.category,code:t.code,reportsUnnecessary:t.reportsUnnecessary};if(t.relatedInformation){a.relatedInformation=[];for(var o=0,s=t.relatedInformation;o<s.length;o++){var c=s[o];hn(c)&&c.fileName===n?(e.Debug.assertLessThanOrEqual(c.start,i),e.Debug.assertLessThanOrEqual(c.start+c.length,i),a.relatedInformation.push(yn(c,r))):a.relatedInformation.push(c)}}return a}function vn(e,t,r,n){q(e,t,r);var i=_n(n);return arguments.length>4&&(i=gn(i,arguments,4)),{file:e,start:t,length:r,messageText:i,category:n.category,code:n.code,reportsUnnecessary:n.reportsUnnecessary,reportsDeprecated:n.reportsDeprecated}}function bn(e){var t=_n(e);return arguments.length>1&&(t=gn(t,arguments,1)),{file:void 0,start:void 0,length:void 0,messageText:t,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated}}function kn(e){return e.file?e.file.path:void 0}function xn(t,r){return En(t,r)||function(t,r){if(!t.relatedInformation&&!r.relatedInformation)return 0;if(t.relatedInformation&&r.relatedInformation)return e.compareValues(t.relatedInformation.length,r.relatedInformation.length)||e.forEach(t.relatedInformation,(function(e,t){return xn(e,r.relatedInformation[t])}))||0;return t.relatedInformation?-1:1}(t,r)||0}function En(t,r){return e.compareStringsCaseSensitive(kn(t),kn(r))||e.compareValues(t.start,r.start)||e.compareValues(t.length,r.length)||e.compareValues(t.code,r.code)||Sn(t.messageText,r.messageText)||0}function Sn(t,r){if("string"==typeof t&&"string"==typeof r)return e.compareStringsCaseSensitive(t,r);if("string"==typeof t)return-1;if("string"==typeof r)return 1;var n=e.compareStringsCaseSensitive(t.messageText,r.messageText);if(n)return n;if(!t.next&&!r.next)return 0;if(!t.next)return-1;if(!r.next)return 1;for(var i=Math.min(t.next.length,r.next.length),a=0;a<i;a++)if(n=Sn(t.next[a],r.next[a]))return n;return t.next.length<r.next.length?-1:t.next.length>r.next.length?1:0}function Dn(e){return e.target||0}function wn(t){return"number"==typeof t.module?t.module:Dn(t)>=2?e.ModuleKind.ES2015:e.ModuleKind.CommonJS}function Tn(e){return!(!e.declaration&&!e.composite)}function Cn(e,t){return void 0===e[t]?!!e.strict:!!e[t]}function An(e){return void 0===e.allowJs?!!e.checkJs:e.allowJs}function Nn(e,t){return t.strictFlag?Cn(e,t.name):e[t.name]}function Pn(e){for(var t=!1,r=0;r<e.length;r++)if(42===e.charCodeAt(r)){if(t)return!1;t=!0}return!0}function In(t,r){var n,i,a;return{getSymlinkedFiles:function(){return a},getSymlinkedDirectories:function(){return n},getSymlinkedDirectoriesByRealpath:function(){return i},setSymlinkedFile:function(t,r){return(a||(a=new e.Map)).set(t,r)},setSymlinkedDirectory:function(a,o){var s=e.toPath(a,t,r);vi(s)||(s=e.ensureTrailingDirectorySeparator(s),!1===o||(null==n?void 0:n.has(s))||(i||(i=e.createMultiMap())).add(e.ensureTrailingDirectorySeparator(o.realPath),a),(n||(n=new e.Map)).set(s,o))}}}function Fn(t,r,n,i,a){for(var o=e.getPathComponents(e.getNormalizedAbsolutePath(t,n)),s=e.getPathComponents(e.getNormalizedAbsolutePath(r,n)),c=!1;!On(o[o.length-2],i,a)&&!On(s[s.length-2],i,a)&&i(o[o.length-1])===i(s[s.length-1]);)o.pop(),s.pop(),c=!0;return c?[e.getPathFromPathComponents(o),e.getPathFromPathComponents(s)]:void 0}function On(t,r,n){return"node_modules"===r(t)||n&&"oh_modules"===r(t)||e.startsWith(t,"@")}e.getNewLineCharacter=function(t,r){switch(t.newLine){case 0:return"\r\n";case 1:return"\n"}return r?r():e.sys?e.sys.newLine:"\r\n"},e.createRange=Gr,e.moveRangeEnd=function(e,t){return Gr(e.pos,t)},e.moveRangePos=$r,e.moveRangePastDecorators=Yr,e.moveRangePastModifiers=function(e){return e.modifiers&&e.modifiers.length>0?$r(e,e.modifiers.end):Yr(e)},e.isCollapsedRange=function(e){return e.pos===e.end},e.createTokenRange=function(t,r){return Gr(t,t+e.tokenToString(r).length)},e.rangeIsOnSingleLine=function(e,t){return Xr(e,e,t)},e.rangeStartPositionsAreOnSameLine=function(e,t,r){return Qr(Zr(e,r,!1),Zr(t,r,!1),r)},e.rangeEndPositionsAreOnSameLine=function(e,t,r){return Qr(e.end,t.end,r)},e.rangeStartIsOnSameLineAsRangeEnd=Xr,e.rangeEndIsOnSameLineAsRangeStart=function(e,t,r){return Qr(e.end,Zr(t,r,!1),r)},e.getLinesBetweenRangeEndAndRangeStart=function(t,r,n,i){var a=Zr(r,n,i);return e.getLinesBetweenPositions(n,t.end,a)},e.getLinesBetweenRangeEndPositions=function(t,r,n){return e.getLinesBetweenPositions(n,t.end,r.end)},e.isNodeArrayMultiLine=function(e,t){return!Qr(e.pos,e.end,t)},e.positionsAreOnSameLine=Qr,e.getStartPositionOfRange=Zr,e.getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter=function(t,r,n,i){var a=e.skipTrivia(n.text,t,!1,i),o=function(t,r,n){void 0===r&&(r=0);for(;t-- >r;)if(!e.isWhiteSpaceLike(n.text.charCodeAt(t)))return t}(a,r,n);return e.getLinesBetweenPositions(n,null!=o?o:r,a)},e.getLinesBetweenPositionAndNextNonWhitespaceCharacter=function(t,r,n,i){var a=e.skipTrivia(n.text,t,!1,i);return e.getLinesBetweenPositions(n,t,Math.min(r,a))},e.isDeclarationNameOfEnumOrNamespace=function(t){var r=e.getParseTreeNode(t);if(r)switch(r.parent.kind){case 258:case 259:return r===r.parent.name}return!1},e.getInitializedVariables=function(t){return e.filter(t.declarations,en)},e.isWatchSet=function(e){return e.watch&&e.hasOwnProperty("watch")},e.closeFileWatcher=function(e){e.close()},e.getCheckFlags=tn,e.getDeclarationModifierFlagsFromSymbol=function(t){if(t.valueDeclaration){var r=e.getCombinedModifierFlags(t.valueDeclaration);return t.parent&&32&t.parent.flags?r:-29&r}if(6&tn(t)){var n=t.checkFlags;return(1024&n?8:256&n?4:16)|(2048&n?32:0)}return 4194304&t.flags?36:0},e.skipAlias=function(e,t){return 2097152&e.flags?t.getAliasedSymbol(e):e},e.getCombinedLocalAndExportSymbolFlags=function(e){return e.exportSymbol?e.exportSymbol.flags|e.flags:e.flags},e.isWriteOnlyAccess=function(e){return 1===rn(e)},e.isWriteAccess=function(e){return 0!==rn(e)},function(e){e[e.Read=0]="Read",e[e.Write=1]="Write",e[e.ReadWrite=2]="ReadWrite"}(Wr||(Wr={})),e.compareDataObjects=function e(t,r){if(!t||!r||Object.keys(t).length!==Object.keys(r).length)return!1;for(var n in t)if("object"==typeof t[n]){if(!e(t[n],r[n]))return!1}else if("function"!=typeof t[n]&&t[n]!==r[n])return!1;return!0},e.clearMap=function(e,t){e.forEach(t),e.clear()},e.mutateMapSkippingNewValues=nn,e.mutateMap=function(e,t,r){nn(e,t,r);var n=r.createNewValue;t.forEach((function(t,r){e.has(r)||e.set(r,n(r,t))}))},e.isAbstractConstructorSymbol=function(e){if(32&e.flags){var t=an(e);return!!t&&Sr(t,128)}return!1},e.getClassLikeDeclarationOfSymbol=an,e.getObjectFlags=function(e){return 3899393&e.flags?e.objectFlags:0},e.typeHasCallOrConstructSignatures=function(e,t){return 0!==t.getSignaturesOfType(e,0).length||0!==t.getSignaturesOfType(e,1).length},e.forSomeAncestorDirectory=function(t,r){return!!e.forEachAncestorDirectory(t,(function(e){return!!r(e)||void 0}))},e.isUMDExportSymbol=function(t){return!!t&&!!t.declarations&&!!t.declarations[0]&&e.isNamespaceExportDeclaration(t.declarations[0])},e.showModuleSpecifier=function(t){var r=t.moduleSpecifier;return e.isStringLiteral(r)?r.text:D(r)},e.getLastChild=function(t){var r;return e.forEachChild(t,(function(e){h(e)&&(r=e)}),(function(e){for(var t=e.length-1;t>=0;t--)if(h(e[t])){r=e[t];break}})),r},e.addToSeen=function(e,t,r){return void 0===r&&(r=!0),t=String(t),!e.has(t)&&(e.set(t,r),!0)},e.isObjectTypeDeclaration=function(t){return e.isClassLike(t)||e.isInterfaceDeclaration(t)||e.isTypeLiteralNode(t)},e.isTypeNodeKind=function(e){return e>=173&&e<=196||129===e||153===e||145===e||156===e||146===e||132===e||148===e||149===e||114===e||151===e||142===e||225===e||306===e||307===e||308===e||309===e||310===e||311===e||312===e},e.isAccessExpression=on,e.getNameOfAccessExpression=function(t){return 202===t.kind?t.name:(e.Debug.assert(203===t.kind),t.argumentExpression)},e.isBundleFileTextLike=function(e){switch(e.kind){case"text":case"internal":return!0;default:return!1}},e.isNamedImportsOrExports=function(e){return 267===e.kind||271===e.kind},e.getLeftmostAccessExpression=sn,e.getLeftmostExpression=function(e,t){for(;;){switch(e.kind){case 217:e=e.operand;continue;case 218:e=e.left;continue;case 219:e=e.condition;continue;case 206:e=e.tag;continue;case 204:if(t)return e;case 226:case 203:case 202:case 227:case 339:e=e.expression;continue}return e}},e.objectAllocator={getNodeConstructor:function(){return dn},getTokenConstructor:function(){return pn},getIdentifierConstructor:function(){return fn},getPrivateIdentifierConstructor:function(){return dn},getSourceFileConstructor:function(){return dn},getSymbolConstructor:function(){return cn},getTypeConstructor:function(){return ln},getSignatureConstructor:function(){return un},getSourceMapSourceConstructor:function(){return mn}},e.setObjectAllocator=function(t){e.objectAllocator=t},e.formatStringFromArgs=gn,e.setLocalizedDiagnosticMessages=function(t){e.localizedDiagnosticMessages=t},e.getLocaleSpecificMessage=_n,e.createDetachedDiagnostic=function(e,t,r,n){q(void 0,t,r);var i=_n(n);return arguments.length>4&&(i=gn(i,arguments,4)),{file:void 0,start:t,length:r,messageText:i,category:n.category,code:n.code,reportsUnnecessary:n.reportsUnnecessary,fileName:e}},e.attachFileToDiagnostics=function(e,t){for(var r=[],n=0,i=e;n<i.length;n++){var a=i[n];r.push(yn(a,t))}return r},e.createFileDiagnostic=vn,e.formatMessage=function(e,t){var r=_n(t);return arguments.length>2&&(r=gn(r,arguments,2)),r},e.createCompilerDiagnostic=bn,e.createCompilerDiagnosticFromMessageChain=function(e,t){return{file:void 0,start:void 0,length:void 0,code:e.code,category:e.category,messageText:e.next?e:e.messageText,relatedInformation:t}},e.chainDiagnosticMessages=function(e,t){var r=_n(t);return arguments.length>2&&(r=gn(r,arguments,2)),{messageText:r,category:t.category,code:t.code,next:void 0===e||Array.isArray(e)?e:[e]}},e.concatenateDiagnosticMessageChains=function(e,t){for(var r=e;r.next;)r=r.next[0];r.next=[t]},e.compareDiagnostics=xn,e.compareDiagnosticsSkipRelatedInformation=En,e.getLanguageVariant=function(e){return 4===e||2===e||1===e||6===e?1:0},e.getEmitScriptTarget=Dn,e.getEmitModuleKind=wn,e.getEmitModuleResolutionKind=function(t){var r=t.moduleResolution;return void 0===r&&(r=wn(t)===e.ModuleKind.CommonJS?e.ModuleResolutionKind.NodeJs:e.ModuleResolutionKind.Classic),r},e.hasJsonModuleEmitEnabled=function(t){switch(wn(t)){case e.ModuleKind.CommonJS:case e.ModuleKind.AMD:case e.ModuleKind.ES2015:case e.ModuleKind.ES2020:case e.ModuleKind.ESNext:return!0;default:return!1}},e.unreachableCodeIsError=function(e){return!1===e.allowUnreachableCode},e.unusedLabelIsError=function(e){return!1===e.allowUnusedLabels},e.getAreDeclarationMapsEnabled=function(e){return!(!Tn(e)||!e.declarationMap)},e.getAllowSyntheticDefaultImports=function(t){var r=wn(t);return void 0!==t.allowSyntheticDefaultImports?t.allowSyntheticDefaultImports:t.esModuleInterop||r===e.ModuleKind.System},e.getEmitDeclarations=Tn,e.shouldPreserveConstEnums=function(e){return!(!e.preserveConstEnums&&!e.isolatedModules)},e.isIncrementalCompilation=function(e){return!(!e.incremental&&!e.composite)},e.getStrictOptionValue=Cn,e.getAllowJSCompilerOption=An,e.compilerOptionsAffectSemanticDiagnostics=function(t,r){return r!==t&&e.semanticDiagnosticsOptionDeclarations.some((function(e){return!fi(Nn(r,e),Nn(t,e))}))},e.compilerOptionsAffectEmit=function(t,r){return r!==t&&e.affectsEmitOptionDeclarations.some((function(e){return!fi(Nn(r,e),Nn(t,e))}))},e.getCompilerOptionValue=Nn,e.getJSXTransformEnabled=function(e){var t=e.jsx;return 2===t||4===t||5===t},e.getJSXImplicitImportBase=function(t,r){var n=null==r?void 0:r.pragmas.get("jsximportsource"),i=e.isArray(n)?n[0]:n;return 4===t.jsx||5===t.jsx||t.jsxImportSource||i?(null==i?void 0:i.arguments.factory)||t.jsxImportSource||"react":void 0},e.getJSXRuntimeImport=function(e,t){return e?e+"/"+(5===t.jsx?"jsx-dev-runtime":"jsx-runtime"):void 0},e.hasZeroOrOneAsteriskCharacter=Pn,e.createSymlinkCache=In,e.discoverProbableSymlinks=function(t,r,n,i){for(var a=In(n,r),o=0,s=e.flatten(e.mapDefined(t,(function(t){return t.resolvedModules&&e.compact(e.arrayFrom(e.mapIterator(t.resolvedModules.values(),(function(e){return e&&e.originalPath&&e.resolvedFileName!==e.originalPath?[e.resolvedFileName,e.originalPath]:void 0}))))})));o<s.length;o++){var c=s[o],l=Fn(c[0],c[1],n,r,i)||e.emptyArray,u=l[0],d=l[1];u&&d&&a.setSymlinkedDirectory(d,{real:u,realPath:e.toPath(u,n,r)})}return a},e.tryRemoveDirectoryPrefix=function(t,r,n){var i,a=e.tryRemovePrefix(t,r,n);return void 0===a?void 0:(i=a,e.isAnyDirectorySeparator(i.charCodeAt(0))?i.slice(1):void 0)};var Rn=/[^\w\s\/]/g;function Mn(e){return"\\"+e}e.regExpEscape=function(e){return e.replace(Rn,Mn)};var Ln=[42,63];e.commonPackageFolders=["node_modules","oh_modules","bower_components","jspm_packages"];var jn="(?!("+e.commonPackageFolders.join("|")+")(/|$))",Bn={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:"(/"+jn+"[^/.][^/]*)*?",replaceWildcardCharacter:function(e){return Wn(e,Bn.singleAsteriskRegexFragment)}},zn={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/"+jn+"[^/.][^/]*)*?",replaceWildcardCharacter:function(e){return Wn(e,zn.singleAsteriskRegexFragment)}},Un={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:function(e){return Wn(e,Un.singleAsteriskRegexFragment)}},qn={files:Bn,directories:zn,exclude:Un};function Jn(e,t,r){var n=Vn(e,t,r);if(n&&n.length)return"^("+n.map((function(e){return"("+e+")"})).join("|")+")"+("exclude"===r?"($|/)":"$")}function Vn(t,r,n){if(void 0!==t&&0!==t.length)return e.flatMap(t,(function(e){return e&&Kn(e,r,n,qn[n])}))}function Hn(e){return!/[.*?]/.test(e)}function Kn(t,r,n,i){var a=i.singleAsteriskRegexFragment,o=i.doubleAsteriskRegexFragment,s=i.replaceWildcardCharacter,c="",l=!1,u=e.getNormalizedPathComponents(t,r),d=e.last(u);if("exclude"===n||"**"!==d){u[0]=e.removeTrailingDirectorySeparator(u[0]),Hn(d)&&u.push("**","*");for(var p=0,f=0,m=u;f<m.length;f++){var g=m[f];if("**"===g)c+=o;else if("directories"===n&&(c+="(",p++),l&&(c+=e.directorySeparator),"exclude"!==n){var _="";42===g.charCodeAt(0)?(_+="([^./]"+a+")?",g=g.substr(1)):63===g.charCodeAt(0)&&(_+="[^./]",g=g.substr(1)),(_+=g.replace(Rn,s))!==g&&(c+=jn),c+=_}else c+=g.replace(Rn,s);l=!0}for(;p>0;)c+=")?",p--;return c}}function Wn(e,t){return"*"===e?t:"?"===e?"[^/]":"\\"+e}function Gn(t,r,n,i,a){t=e.normalizePath(t),a=e.normalizePath(a);var o=e.combinePaths(a,t);return{includeFilePatterns:e.map(Vn(n,o,"files"),(function(e){return"^"+e+"$"})),includeFilePattern:Jn(n,o,"files"),includeDirectoryPattern:Jn(n,o,"directories"),excludePattern:Jn(r,o,"exclude"),basePaths:Yn(t,n,i)}}function $n(e,t){return new RegExp(e,t?"":"i")}function Yn(t,r,n){var i=[t];if(r){for(var a=[],o=0,s=r;o<s.length;o++){var c=s[o],l=e.isRootedDiskPath(c)?c:e.normalizePath(e.combinePaths(t,c));a.push(Xn(l))}a.sort(e.getStringComparer(!n));for(var u=function(r){e.every(i,(function(i){return!e.containsPath(i,r,t,!n)}))&&i.push(r)},d=0,p=a;d<p.length;d++){u(p[d])}}return i}function Xn(t){var r=e.indexOfAnyCharCode(t,Ln);return r<0?e.hasExtension(t)?e.removeTrailingDirectorySeparator(e.getDirectoryPath(t)):t:t.substring(0,t.lastIndexOf(e.directorySeparator,r))}function Qn(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".js":return 1;case".jsx":return 2;case".ts":return 3;case".tsx":return 4;case".json":return 6;case".ets":return 8;default:return 0}}e.getRegularExpressionForWildcard=Jn,e.getRegularExpressionsForWildcards=Vn,e.isImplicitGlob=Hn,e.getPatternFromSpec=function(e,t,r){var n=e&&Kn(e,t,r,qn[r]);return n&&"^("+n+")"+("exclude"===r?"($|/)":"$")},e.getFileMatcherPatterns=Gn,e.getRegexFromPattern=$n,e.matchFiles=function(t,r,n,i,a,o,s,c,l){t=e.normalizePath(t),o=e.normalizePath(o);for(var u=Gn(t,n,i,a,o),d=u.includeFilePatterns&&u.includeFilePatterns.map((function(e){return $n(e,a)})),p=u.includeDirectoryPattern&&$n(u.includeDirectoryPattern,a),f=u.excludePattern&&$n(u.excludePattern,a),m=d?d.map((function(){return[]})):[[]],g=new e.Map,_=e.createGetCanonicalFileName(a),h=0,y=u.basePaths;h<y.length;h++){var v=y[h];b(v,e.combinePaths(o,v),s)}return e.flatten(m);function b(t,n,i){var a=_(l(n));if(!g.has(a)){g.set(a,!0);for(var o=c(t),s=o.files,u=o.directories,h=function(i){var a=e.combinePaths(t,i),o=e.combinePaths(n,i);if(r&&!e.fileExtensionIsOneOf(a,r))return"continue";if(f&&f.test(o))return"continue";if(d){var s=e.findIndex(d,(function(e){return e.test(o)}));-1!==s&&m[s].push(a)}else m[0].push(a)},y=0,v=e.sort(s,e.compareStringsCaseSensitive);y<v.length;y++){h(E=v[y])}if(void 0===i||0!=--i)for(var k=0,x=e.sort(u,e.compareStringsCaseSensitive);k<x.length;k++){var E=x[k],S=e.combinePaths(t,E),D=e.combinePaths(n,E);p&&!p.test(D)||f&&f.test(D)||b(S,D,i)}}}},e.ensureScriptKind=function(e,t){return t||Qn(e)||3},e.getScriptKindFromFileName=Qn,e.supportedTSExtensions=[".ts",".tsx",".d.ts",".ets",".d.ets"],e.supportedTSExtensionsWithJson=[".ts",".tsx",".d.ts",".json",".ets",".d.ets"],e.supportedTSExtensionsForExtractExtension=[".d.ts",".ts",".tsx",".d.ets",".ets"],e.supportedJSExtensions=[".js",".jsx"],e.supportedJSAndJsonExtensions=[".js",".jsx",".json"];var Zn=i(i([],e.supportedTSExtensions),e.supportedJSExtensions),ei=i(i(i([],e.supportedTSExtensions),e.supportedJSExtensions),[".json"]);function ti(t,r){var n=t&&An(t);if(!r||0===r.length)return n?Zn:e.supportedTSExtensions;var a=i(i([],n?Zn:e.supportedTSExtensions),e.mapDefined(r,(function(e){return 7===e.scriptKind||n&&(1===(t=e.scriptKind)||2===t)?e.extension:void 0;var t})));return e.deduplicate(a,e.equateStringsCaseSensitive,e.compareStringsCaseSensitive)}function ri(t,r){return t&&t.resolveJsonModule?r===Zn?ei:r===e.supportedTSExtensions?e.supportedTSExtensionsWithJson:i(i([],r),[".json"]):r}function ni(e){var t=e.match(/\//g);return t?t.length:0}function ii(e,t){return e<2?0:e<t.length?2:t.length}e.getSupportedExtensions=ti,e.getSuppoertedExtensionsWithJsonIfResolveJsonModule=ri,e.hasJSFileExtension=function(t){return e.some(e.supportedJSExtensions,(function(r){return e.fileExtensionIs(t,r)}))},e.hasTSFileExtension=function(t){return e.some(e.supportedTSExtensions,(function(r){return e.fileExtensionIs(t,r)}))},e.isSupportedSourceFileName=function(t,r,n){if(!t)return!1;for(var i=0,a=ri(r,ti(r,n));i<a.length;i++){var o=a[i];if(e.fileExtensionIs(t,o))return!0}return!1},e.compareNumberOfDirectorySeparators=function(t,r){return e.compareValues(ni(t),ni(r))},function(e){e[e.TypeScriptFiles=0]="TypeScriptFiles",e[e.DeclarationAndJavaScriptFiles=2]="DeclarationAndJavaScriptFiles",e[e.Highest=0]="Highest",e[e.Lowest=2]="Lowest"}(e.ExtensionPriority||(e.ExtensionPriority={})),e.getExtensionPriority=function(t,r){for(var n=r.length-1;n>=0;n--)if(e.fileExtensionIs(t,r[n]))return ii(n,r);return 0},e.adjustExtensionPriority=ii,e.getNextLowestExtensionPriority=function(e,t){return e<2?2:t.length};var ai=[".d.ts",".ts",".js",".tsx",".jsx",".json",".d.ets",".ets"];function oi(e){for(var t=0,r=ai;t<r.length;t++){var n=si(e,r[t]);if(void 0!==n)return n}return e}function si(t,r){return e.fileExtensionIs(t,r)?ci(t,r):void 0}function ci(e,t){return e.substring(0,e.length-t.length)}function li(t){e.Debug.assert(Pn(t));var r=t.indexOf("*");return-1===r?void 0:{prefix:t.substr(0,r),suffix:t.substr(r+1)}}function ui(e){return!(e>=0)}function di(e){return".ts"===e||".tsx"===e||".d.ts"===e||".ets"===e||".d.ets"===e}function pi(t){return e.fileExtensionIs(t,".ets")?".ets":e.find(ai,(function(r){return e.fileExtensionIs(t,r)}))}function fi(t,r){return t===r||"object"==typeof t&&null!==t&&"object"==typeof r&&null!==r&&e.equalOwnProperties(t,r,fi)}function mi(e,t){return e.pos=t,e}function gi(e,t){return e.end=t,e}function _i(e,t,r){return gi(mi(e,t),r)}function hi(e,t){return e&&t&&(e.parent=t),e}function yi(t){return!e.isOmittedExpression(t)}function vi(t){return e.some(e.ignoredPaths,(function(r){return e.stringContains(t,r)}))}function bi(e){return"ohpm"===e}e.removeFileExtension=oi,e.tryRemoveExtension=si,e.removeExtension=ci,e.changeExtension=function(t,r){return e.changeAnyExtension(t,r,ai,!1)},e.tryParsePattern=li,e.positionIsSynthesized=ui,e.extensionIsTS=di,e.resolutionExtensionIsTSOrJson=function(e){return di(e)||".json"===e},e.extensionFromPath=function(t){var r=pi(t);return void 0!==r?r:e.Debug.fail("File "+t+" has unknown extension.")},e.isAnySupportedFileExtension=function(e){return void 0!==pi(e)},e.tryGetExtensionFromPath=pi,e.isCheckJsEnabledForFile=function(e,t){return e.checkJsDirective?e.checkJsDirective.enabled:t.checkJs},e.emptyFileSystemEntries={files:e.emptyArray,directories:e.emptyArray},e.matchPatternOrExact=function(t,r){for(var n=[],i=0,a=t;i<a.length;i++){var o=a[i];if(Pn(o)){var s=li(o);if(s)n.push(s);else if(o===r)return o}}return e.findBestPatternMatch(n,(function(e){return e}),r)},e.sliceAfter=function(t,r){var n=t.indexOf(r);return e.Debug.assert(-1!==n),t.slice(n)},e.addRelatedInfo=function(t){for(var r,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];return n.length?(t.relatedInformation||(t.relatedInformation=[]),e.Debug.assert(t.relatedInformation!==e.emptyArray,"Diagnostic had empty array singleton for related info, but is still being constructed!"),(r=t.relatedInformation).push.apply(r,n),t):t},e.minAndMax=function(t,r){e.Debug.assert(0!==t.length);for(var n=r(t[0]),i=n,a=1;a<t.length;a++){var o=r(t[a]);o<n?n=o:o>i&&(i=o)}return{min:n,max:i}},e.rangeOfNode=function(e){return{pos:x(e),end:e.end}},e.rangeOfTypeParameters=function(t,r){return{pos:r.pos-1,end:e.skipTrivia(t.text,r.end)+1}},e.skipTypeChecking=function(e,t,r){return t.skipLibCheck&&e.isDeclarationFile||t.skipDefaultLibCheck&&e.hasNoDefaultLib||r.isSourceOfProjectReferenceRedirect(e.fileName)},e.isJsonEqual=fi,e.parsePseudoBigInt=function(e){var t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:for(var r=e.length-1,n=0;48===e.charCodeAt(n);)n++;return e.slice(n,r)||"0"}for(var i=e.length-1,a=(i-2)*t,o=new Uint16Array((a>>>4)+(15&a?1:0)),s=i-1,c=0;s>=2;s--,c+=t){var l=c>>>4,u=e.charCodeAt(s),d=(u<=57?u-48:10+u-(u<=70?65:97))<<(15&c);o[l]|=d;var p=d>>>16;p&&(o[l+1]|=p)}for(var f="",m=o.length-1,g=!0;g;){var _=0;g=!1;for(l=m;l>=0;l--){var h=_<<16|o[l],y=h/10|0;o[l]=y,_=h-10*y,y&&!g&&(m=l,g=!0)}f=_+f}return f},e.pseudoBigIntToString=function(e){var t=e.negative,r=e.base10Value;return(t&&"0"!==r?"-":"")+r},e.isValidTypeOnlyAliasUseSite=function(t){return!!(8388608&t.flags)||be(t)||function(t){if(78!==t.kind)return!1;var r=e.findAncestor(t.parent,(function(e){switch(e.kind){case 289:return!0;case 202:case 225:return!1;default:return"quit"}}));return 117===(null==r?void 0:r.token)||256===(null==r?void 0:r.parent.kind)}(t)||function(e){for(;78===e.kind||202===e.kind;)e=e.parent;if(159!==e.kind)return!1;if(Sr(e.parent,128))return!0;var t=e.parent.parent.kind;return 256===t||178===t}(t)||!ye(t)},e.typeOnlyDeclarationIsExport=function(e){return 273===e.kind},e.isIdentifierTypeReference=function(t){return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)},e.arrayIsHomogeneous=function(t,r){if(void 0===r&&(r=e.equateValues),t.length<2)return!0;for(var n=t[0],i=1,a=t.length;i<a;i++){if(!r(n,t[i]))return!1}return!0},e.setTextRangePos=mi,e.setTextRangeEnd=gi,e.setTextRangePosEnd=_i,e.setTextRangePosWidth=function(e,t,r){return _i(e,t,t+r)},e.setNodeFlags=function(e,t){return e&&(e.flags=t),e},e.setParent=hi,e.setEachParent=function(e,t){if(e)for(var r=0,n=e;r<n.length;r++){hi(n[r],t)}return e},e.isPackedArrayLiteral=function(t){return e.isArrayLiteralExpression(t)&&e.every(t.elements,yi)},e.expressionResultIsUnused=function(t){for(e.Debug.assertIsDefined(t.parent);;){var r=t.parent;if(e.isParenthesizedExpression(r))t=r;else{if(e.isExpressionStatement(r)||e.isVoidExpression(r)||e.isForStatement(r)&&(r.initializer===t||r.incrementor===t))return!0;if(e.isCommaListExpression(r)){if(t!==e.last(r.elements))return!0;t=r}else{if(!e.isBinaryExpression(r)||27!==r.operatorToken.kind)return!1;if(t===r.left)return!0;t=r}}}},e.containsIgnoredPath=vi,e.isCalledStructDeclaration=function(e){return!!e&&e.some((function(e){return 255===e.kind}))},e.getNameOfDecorator=function(t){var r=t.expression;return e.isIdentifier(r)?r.escapedText.toString():e.isCallExpression(r)&&e.isIdentifier(r.expression)?r.expression.escapedText.toString():void 0},e.isEtsFunctionDecorators=function(e,t){var r,n,i,a,o,s,c,l;return e===(null===(n=null===(r=t.ets)||void 0===r?void 0:r.render)||void 0===n?void 0:n.decorator)||e===(null===(a=null===(i=t.ets)||void 0===i?void 0:i.styles)||void 0===a?void 0:a.decorator)||null!==(l=null===(c=null===(s=null===(o=t.ets)||void 0===o?void 0:o.extend)||void 0===s?void 0:s.decorator)||void 0===c?void 0:c.includes(e))&&void 0!==l&&l},e.isOhpm=bi,e.getModuleByPMType=function(e){return bi(e)?"oh_modules":"node_modules"},e.getPackageJsonByPMType=function(e){return bi(e)?"oh-package.json5":"package.json"},e.tryGetSignatureDeclaration=function(t,r){var n=function(t){var r=e.findAncestor(t,(function(t){return!function(t){var r;return(null===(r=e.tryCast(t.parent,e.isPropertyAccessExpression))||void 0===r?void 0:r.name)===t}(t)})),n=null==r?void 0:r.parent;return n&&e.isCallLikeExpression(n)&&pe(n)===r?n:void 0}(r),i=n&&t.tryGetResolvedSignatureWithoutCheck(n);return e.tryCast(i&&i.declaration,(function(t){return e.isFunctionLike(t)&&!e.isFunctionTypeNode(t)}))},e.getEtsComponentExpressionInnerExpressionStatementNode=function(t){for(;t&&!e.isIdentifier(t);){var r=t,n=t.expression;if(n&&e.isIdentifier(n)){t=r;break}t=n}if(t)return e.isCallExpression(t)||e.isEtsComponentExpression(t)||e.isPropertyAccessExpression(t)?t:void 0},e.getEtsExtendDecoratorsComponentNames=function(e,t){var r,n,i,a=[],o=null!==(i=null===(n=null===(r=t.ets)||void 0===r?void 0:r.extend)||void 0===n?void 0:n.decorator)&&void 0!==i?i:"Extend";return null==e||e.forEach((function(e){if(204===e.expression.kind){var t=e.expression.expression,r=e.expression.arguments;78===t.kind&&t.escapedText===o&&r.length&&78===r[0].kind&&a.push(r[0].escapedText)}})),a}}(d||(d={})),function(e){e.createObfTextSingleLineWriter=function(){var t,r,n;function i(i){var a=e.computeLineStarts(i);a.length>1?(n=t.length-i.length+e.last(a),r=n-t.length==0):r=!1}function a(e){!function(e){e&&e.length&&(r&&(r=!1),t+=e,i(e))}(e)}function o(){t="",r=!0,n=0}return o(),{write:a,rawWrite:function(e){void 0!==e&&(t+=e,i(e))},writeLiteral:function(e){e&&e.length&&a(e)},writeLine:function(e){r&&!e||(n=(t+=" ").length)},increaseIndent:e.noop,decreaseIndent:e.noop,getIndent:function(){return 0},getTextPos:function(){return t.length},getLine:function(){return 0},getColumn:function(){return r?0:t.length-n},getText:function(){return t},isAtStartOfLine:function(){return r},hasTrailingComment:function(){return!1},hasTrailingWhitespace:function(){return!!t.length&&e.isWhiteSpaceLike(t.charCodeAt(t.length-1))},clear:o,reportInaccessibleThisError:e.noop,reportPrivateInBaseOfClassExpression:e.noop,reportInaccessibleUniqueSymbolError:e.noop,trackSymbol:e.noop,writeKeyword:a,writeOperator:a,writeParameter:a,writeProperty:a,writePunctuation:a,writeSpace:a,writeStringLiteral:a,writeSymbol:function(e,t){return a(e)},writeTrailingSemicolon:a,writeComment:e.noop,getTextPosWithWriteLine:function(){return r?t.length:t.length+1}}},e.getLeadingCommentRangesOfNode=function(t,r){return 11!==t.kind?e.getLeadingCommentRanges(r.text,t.pos):void 0},e.createTextWriter=function(t){var r,n,i,a,o,s=!1;function c(t){var n=e.computeLineStarts(t);n.length>1?(a=a+n.length-1,o=r.length-t.length+e.last(n),i=o-r.length==0):i=!1}function l(t){t&&t.length&&(i&&(t=e.getIndentString(n)+t,i=!1),r+=t,c(t))}function u(e){e&&(s=!1),l(e)}function d(){r="",n=0,i=!0,a=0,o=0,s=!1}return d(),{write:u,rawWrite:function(e){void 0!==e&&(r+=e,c(e),s=!1)},writeLiteral:function(e){e&&e.length&&u(e)},writeLine:function(e){i&&!e||(a++,o=(r+=t).length,i=!0,s=!1)},increaseIndent:function(){n++},decreaseIndent:function(){n--},getIndent:function(){return n},getTextPos:function(){return r.length},getLine:function(){return a},getColumn:function(){return i?n*e.getIndentSize():r.length-o},getText:function(){return r},isAtStartOfLine:function(){return i},hasTrailingComment:function(){return s},hasTrailingWhitespace:function(){return!!r.length&&e.isWhiteSpaceLike(r.charCodeAt(r.length-1))},clear:d,reportInaccessibleThisError:e.noop,reportPrivateInBaseOfClassExpression:e.noop,reportInaccessibleUniqueSymbolError:e.noop,trackSymbol:e.noop,writeKeyword:u,writeOperator:u,writeParameter:u,writeProperty:u,writePunctuation:u,writeSpace:u,writeStringLiteral:u,writeSymbol:function(e,t){return u(e)},writeTrailingSemicolon:u,writeComment:function(e){e&&(s=!0),l(e)},getTextPosWithWriteLine:function(){return i?r.length:r.length+t.length}}},e.setParentRecursive=function(t,r){return t?(e.forEachChildRecursively(t,e.isJSDocNode(t)?n:function(t,r){return n(t,r)||function(t){if(e.hasJSDocNodes(t))for(var r=0,i=t.jsDoc;r<i.length;r++){var a=i[r];n(a,t),e.forEachChildRecursively(a,n)}}(t)}),t):t;function n(t,n){if(r&&t.parent===n)return"skip";e.setParent(t,n)}}}(d||(d={})),function(e){e.createBaseNodeFactory=function(){var t,r,n,i,a;return{createBaseSourceFileNode:function(t){return new(a||(a=e.objectAllocator.getSourceFileConstructor()))(t,-1,-1)},createBaseIdentifierNode:function(t){return new(n||(n=e.objectAllocator.getIdentifierConstructor()))(t,-1,-1)},createBasePrivateIdentifierNode:function(t){return new(i||(i=e.objectAllocator.getPrivateIdentifierConstructor()))(t,-1,-1)},createBaseTokenNode:function(t){return new(r||(r=e.objectAllocator.getTokenConstructor()))(t,-1,-1)},createBaseNode:function(r){return new(t||(t=e.objectAllocator.getNodeConstructor()))(r,-1,-1)}}}}(d||(d={})),function(e){e.createParenthesizerRules=function(t){return{parenthesizeLeftSideOfBinary:function(e,t){return n(e,t,!0)},parenthesizeRightSideOfBinary:function(e,t,r){return n(e,r,!1,t)},parenthesizeExpressionOfComputedPropertyName:function(r){return e.isCommaSequence(r)?t.createParenthesizedExpression(r):r},parenthesizeConditionOfConditionalExpression:function(r){var n=e.getOperatorPrecedence(219,57),i=e.skipPartiallyEmittedExpressions(r),a=e.getExpressionPrecedence(i);if(1!==e.compareValues(a,n))return t.createParenthesizedExpression(r);return r},parenthesizeBranchOfConditionalExpression:function(r){var n=e.skipPartiallyEmittedExpressions(r);return e.isCommaSequence(n)?t.createParenthesizedExpression(r):r},parenthesizeExpressionOfExportDefault:function(r){var n=e.skipPartiallyEmittedExpressions(r),i=e.isCommaSequence(n);if(!i)switch(e.getLeftmostExpression(n,!1).kind){case 223:case 209:i=!0}return i?t.createParenthesizedExpression(r):r},parenthesizeExpressionOfNew:function(r){var n=e.getLeftmostExpression(r,!0);switch(n.kind){case 204:return t.createParenthesizedExpression(r);case 205:return n.arguments?r:t.createParenthesizedExpression(r)}return i(r)},parenthesizeLeftSideOfAccess:i,parenthesizeOperandOfPostfixUnary:function(r){return e.isLeftHandSideExpression(r)?r:e.setTextRange(t.createParenthesizedExpression(r),r)},parenthesizeOperandOfPrefixUnary:function(r){return e.isUnaryExpression(r)?r:e.setTextRange(t.createParenthesizedExpression(r),r)},parenthesizeExpressionsOfCommaDelimitedList:function(r){var n=e.sameMap(r,a);return e.setTextRange(t.createNodeArray(n,r.hasTrailingComma),r)},parenthesizeExpressionForDisallowedComma:a,parenthesizeExpressionOfExpressionStatement:function(r){var n=e.skipPartiallyEmittedExpressions(r);if(e.isCallExpression(n)){var i=n.expression,a=e.skipPartiallyEmittedExpressions(i).kind;if(209===a||210===a){var o=t.updateCallExpression(n,e.setTextRange(t.createParenthesizedExpression(i),i),n.typeArguments,n.arguments);return t.restoreOuterExpressions(r,o,8)}}var s=e.getLeftmostExpression(n,!1).kind;if(201===s||209===s)return e.setTextRange(t.createParenthesizedExpression(r),r);return r},parenthesizeConciseBodyOfArrowFunction:function(r){if(!e.isBlock(r)&&(e.isCommaSequence(r)||201===e.getLeftmostExpression(r,!1).kind))return e.setTextRange(t.createParenthesizedExpression(r),r);return r},parenthesizeMemberOfConditionalType:o,parenthesizeMemberOfElementType:s,parenthesizeElementTypeOfArrayType:function(e){switch(e.kind){case 177:case 189:case 186:return t.createParenthesizedType(e)}return s(e)},parenthesizeConstituentTypesOfUnionOrIntersectionType:function(r){return t.createNodeArray(e.sameMap(r,s))},parenthesizeTypeArguments:function(r){if(e.some(r))return t.createNodeArray(e.sameMap(r,c))}};function r(t){if(t=e.skipPartiallyEmittedExpressions(t),e.isLiteralKind(t.kind))return t.kind;if(218===t.kind&&39===t.operatorToken.kind){if(void 0!==t.cachedLiteralKind)return t.cachedLiteralKind;var n=r(t.left),i=e.isLiteralKind(n)&&n===r(t.right)?n:0;return t.cachedLiteralKind=i,i}return 0}function n(n,i,a,o){return 208===e.skipPartiallyEmittedExpressions(i).kind?i:function(t,n,i,a){var o=e.getOperatorPrecedence(218,t),s=e.getOperatorAssociativity(218,t),c=e.skipPartiallyEmittedExpressions(n);if(!i&&210===n.kind&&o>3)return!0;var l=e.getExpressionPrecedence(c);switch(e.compareValues(l,o)){case-1:return!(!i&&1===s&&221===n.kind);case 1:return!1;case 0:if(i)return 1===s;if(e.isBinaryExpression(c)&&c.operatorToken.kind===t){if(function(e){return 41===e||51===e||50===e||52===e}(t))return!1;if(39===t){var u=a?r(a):0;if(e.isLiteralKind(u)&&u===r(c))return!1}}return 0===e.getExpressionAssociativity(c)}}(n,i,a,o)?t.createParenthesizedExpression(i):i}function i(r){var n=e.skipPartiallyEmittedExpressions(r);return e.isLeftHandSideExpression(n)&&(205!==n.kind||n.arguments)?r:e.setTextRange(t.createParenthesizedExpression(r),r)}function a(r){var n=e.skipPartiallyEmittedExpressions(r);return e.getExpressionPrecedence(n)>e.getOperatorPrecedence(218,27)?r:e.setTextRange(t.createParenthesizedExpression(r),r)}function o(e){return 185===e.kind?t.createParenthesizedType(e):e}function s(e){switch(e.kind){case 183:case 184:case 175:case 176:return t.createParenthesizedType(e)}return o(e)}function c(r,n){return 0===n&&e.isFunctionOrConstructorTypeNode(r)&&r.typeParameters?t.createParenthesizedType(r):r}},e.nullParenthesizerRules={parenthesizeLeftSideOfBinary:function(e,t){return t},parenthesizeRightSideOfBinary:function(e,t,r){return r},parenthesizeExpressionOfComputedPropertyName:e.identity,parenthesizeConditionOfConditionalExpression:e.identity,parenthesizeBranchOfConditionalExpression:e.identity,parenthesizeExpressionOfExportDefault:e.identity,parenthesizeExpressionOfNew:function(t){return e.cast(t,e.isLeftHandSideExpression)},parenthesizeLeftSideOfAccess:function(t){return e.cast(t,e.isLeftHandSideExpression)},parenthesizeOperandOfPostfixUnary:function(t){return e.cast(t,e.isLeftHandSideExpression)},parenthesizeOperandOfPrefixUnary:function(t){return e.cast(t,e.isUnaryExpression)},parenthesizeExpressionsOfCommaDelimitedList:function(t){return e.cast(t,e.isNodeArray)},parenthesizeExpressionForDisallowedComma:e.identity,parenthesizeExpressionOfExpressionStatement:e.identity,parenthesizeConciseBodyOfArrowFunction:e.identity,parenthesizeMemberOfConditionalType:e.identity,parenthesizeMemberOfElementType:e.identity,parenthesizeElementTypeOfArrayType:e.identity,parenthesizeConstituentTypesOfUnionOrIntersectionType:function(t){return e.cast(t,e.isNodeArray)},parenthesizeTypeArguments:function(t){return t&&e.cast(t,e.isNodeArray)}}}(d||(d={})),function(e){e.createNodeConverters=function(t){return{convertToFunctionBlock:function(r,n){if(e.isBlock(r))return r;var i=t.createReturnStatement(r);e.setTextRange(i,r);var a=t.createBlock([i],n);return e.setTextRange(a,r),a},convertToFunctionExpression:function(r){if(!r.body)return e.Debug.fail("Cannot convert a FunctionDeclaration without a body");var n=t.createFunctionExpression(r.modifiers,r.asteriskToken,r.name,r.typeParameters,r.parameters,r.type,r.body);e.setOriginalNode(n,r),e.setTextRange(n,r),e.getStartsOnNewLine(r)&&e.setStartsOnNewLine(n,!0);return n},convertToArrayAssignmentElement:r,convertToObjectAssignmentElement:n,convertToAssignmentPattern:i,convertToObjectAssignmentPattern:a,convertToArrayAssignmentPattern:o,convertToAssignmentElementTarget:s};function r(r){if(e.isBindingElement(r)){if(r.dotDotDotToken)return e.Debug.assertNode(r.name,e.isIdentifier),e.setOriginalNode(e.setTextRange(t.createSpreadElement(r.name),r),r);var n=s(r.name);return r.initializer?e.setOriginalNode(e.setTextRange(t.createAssignment(n,r.initializer),r),r):n}return e.cast(r,e.isExpression)}function n(r){if(e.isBindingElement(r)){if(r.dotDotDotToken)return e.Debug.assertNode(r.name,e.isIdentifier),e.setOriginalNode(e.setTextRange(t.createSpreadAssignment(r.name),r),r);if(r.propertyName){var n=s(r.name);return e.setOriginalNode(e.setTextRange(t.createPropertyAssignment(r.propertyName,r.initializer?t.createAssignment(n,r.initializer):n),r),r)}return e.Debug.assertNode(r.name,e.isIdentifier),e.setOriginalNode(e.setTextRange(t.createShorthandPropertyAssignment(r.name,r.initializer),r),r)}return e.cast(r,e.isObjectLiteralElementLike)}function i(e){switch(e.kind){case 198:case 200:return o(e);case 197:case 201:return a(e)}}function a(r){return e.isObjectBindingPattern(r)?e.setOriginalNode(e.setTextRange(t.createObjectLiteralExpression(e.map(r.elements,n)),r),r):e.cast(r,e.isObjectLiteralExpression)}function o(n){return e.isArrayBindingPattern(n)?e.setOriginalNode(e.setTextRange(t.createArrayLiteralExpression(e.map(n.elements,r)),n),n):e.cast(n,e.isArrayLiteralExpression)}function s(t){return e.isBindingPattern(t)?i(t):e.cast(t,e.isExpression)}},e.nullNodeConverters={convertToFunctionBlock:e.notImplemented,convertToFunctionExpression:e.notImplemented,convertToArrayAssignmentElement:e.notImplemented,convertToObjectAssignmentElement:e.notImplemented,convertToAssignmentPattern:e.notImplemented,convertToObjectAssignmentPattern:e.notImplemented,convertToArrayAssignmentPattern:e.notImplemented,convertToAssignmentElementTarget:e.notImplemented}}(d||(d={})),function(e){var t,r=0;function n(n,f){var m=8&n?a:o,g=e.memoize((function(){return 1&n?e.nullParenthesizerRules:e.createParenthesizerRules(C)})),_=e.memoize((function(){return 2&n?e.nullNodeConverters:e.createNodeConverters(C)})),h=e.memoizeOne((function(e){return function(t,r){return Rt(t,e,r)}})),v=e.memoizeOne((function(e){return function(t){return Ft(e,t)}})),b=e.memoizeOne((function(e){return function(t){return Ot(t,e)}})),k=e.memoizeOne((function(e){return function(){return function(e){return N(e)}(e)}})),x=e.memoizeOne((function(e){return function(t){return tn(e,t)}})),E=e.memoizeOne((function(e){return function(t,r){return function(e,t,r){return t.type!==r?m(tn(e,r),t):t}(e,t,r)}})),S=e.memoizeOne((function(e){return function(t,r){return yn(e,t,r)}})),D=e.memoizeOne((function(e){return function(t,r,n){return function(e,t,r,n){void 0===r&&(r=sn(t));return t.tagName!==r||t.comment!==n?m(yn(e,r,n),t):t}(e,t,r,n)}})),w=e.memoizeOne((function(e){return function(t,r,n){return vn(e,t,r,n)}})),T=e.memoizeOne((function(e){return function(t,r,n,i){return function(e,t,r,n,i){void 0===r&&(r=sn(t));return t.tagName!==r||t.typeExpression!==n||t.comment!==i?m(vn(e,r,n,i),t):t}(e,t,r,n,i)}})),C={get parenthesizer(){return g()},get converters(){return _()},createNodeArray:A,createNumericLiteral:J,createBigIntLiteral:V,createStringLiteral:K,createStringLiteralFromNode:function(t){var r=H(e.getTextOfIdentifierOrLiteral(t),void 0);return r.textSourceNode=t,r},createRegularExpressionLiteral:W,createLiteralLikeNode:function(e,t){switch(e){case 8:return J(t,0);case 9:return V(t);case 10:return K(t,void 0);case 11:return Tn(t,!1);case 12:return Tn(t,!0);case 13:return W(t);case 14:return zt(e,t,void 0,0)}},createIdentifier:Y,updateIdentifier:function(t,r){return t.typeArguments!==r?m(Y(e.idText(t),r),t):t},createTempVariable:X,createLoopVariable:function(){return $("",2)},createUniqueName:function(t,r){void 0===r&&(r=0);return e.Debug.assert(!(7&r),"Argument out of range: flags"),e.Debug.assert(32!=(48&r),"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),$(t,3|r)},getGeneratedNameForNode:Q,createPrivateIdentifier:function(t){e.startsWith(t,"#")||e.Debug.fail("First character of private identifier must be #: "+t);var r=f.createBasePrivateIdentifierNode(79);return r.escapedText=e.escapeLeadingUnderscores(t),r.transformFlags|=4194304,r},createToken:ee,createSuper:function(){return ee(106)},createThis:te,createNull:function(){return ee(104)},createTrue:re,createFalse:ne,createModifier:ie,createModifiersFromModifierFlags:ae,createQualifiedName:oe,updateQualifiedName:function(e,t,r){return e.left!==t||e.right!==r?m(oe(t,r),e):e},createComputedPropertyName:se,updateComputedPropertyName:function(e,t){return e.expression!==t?m(se(t),e):e},createTypeParameterDeclaration:ce,updateTypeParameterDeclaration:function(e,t,r,n){return e.name!==t||e.constraint!==r||e.default!==n?m(ce(t,r,n),e):e},createParameterDeclaration:le,updateParameterDeclaration:ue,createDecorator:de,updateDecorator:function(e,t){return e.expression!==t?m(de(t),e):e},createPropertySignature:pe,updatePropertySignature:fe,createPropertyDeclaration:me,updatePropertyDeclaration:ge,createMethodSignature:_e,updateMethodSignature:he,createMethodDeclaration:ye,updateMethodDeclaration:ve,createConstructorDeclaration:be,updateConstructorDeclaration:ke,createGetAccessorDeclaration:xe,updateGetAccessorDeclaration:Ee,createSetAccessorDeclaration:Se,updateSetAccessorDeclaration:De,createCallSignature:we,updateCallSignature:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?R(we(t,r,n),e):e},createConstructSignature:Te,updateConstructSignature:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?R(Te(t,r,n),e):e},createIndexSignature:Ce,updateIndexSignature:Ae,createTemplateLiteralTypeSpan:Ne,updateTemplateLiteralTypeSpan:function(e,t,r){return e.type!==t||e.literal!==r?m(Ne(t,r),e):e},createKeywordTypeNode:function(e){return ee(e)},createTypePredicateNode:Pe,updateTypePredicateNode:function(e,t,r,n){return e.assertsModifier!==t||e.parameterName!==r||e.type!==n?m(Pe(t,r,n),e):e},createTypeReferenceNode:Ie,updateTypeReferenceNode:function(e,t,r){return e.typeName!==t||e.typeArguments!==r?m(Ie(t,r),e):e},createFunctionTypeNode:Fe,updateFunctionTypeNode:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?R(Fe(t,r,n),e):e},createConstructorTypeNode:Oe,updateConstructorTypeNode:function(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return 5===t.length?Le.apply(void 0,t):4===t.length?je.apply(void 0,t):e.Debug.fail("Incorrect number of arguments specified.")},createTypeQueryNode:Be,updateTypeQueryNode:function(e,t){return e.exprName!==t?m(Be(t),e):e},createTypeLiteralNode:ze,updateTypeLiteralNode:function(e,t){return e.members!==t?m(ze(t),e):e},createArrayTypeNode:Ue,updateArrayTypeNode:function(e,t){return e.elementType!==t?m(Ue(t),e):e},createTupleTypeNode:qe,updateTupleTypeNode:function(e,t){return e.elements!==t?m(qe(t),e):e},createNamedTupleMember:Je,updateNamedTupleMember:function(e,t,r,n,i){return e.dotDotDotToken!==t||e.name!==r||e.questionToken!==n||e.type!==i?m(Je(t,r,n,i),e):e},createOptionalTypeNode:Ve,updateOptionalTypeNode:function(e,t){return e.type!==t?m(Ve(t),e):e},createRestTypeNode:He,updateRestTypeNode:function(e,t){return e.type!==t?m(He(t),e):e},createUnionTypeNode:function(e){return Ke(183,e)},updateUnionTypeNode:function(e,t){return We(e,t)},createIntersectionTypeNode:function(e){return Ke(184,e)},updateIntersectionTypeNode:function(e,t){return We(e,t)},createConditionalTypeNode:Ge,updateConditionalTypeNode:function(e,t,r,n,i){return e.checkType!==t||e.extendsType!==r||e.trueType!==n||e.falseType!==i?m(Ge(t,r,n,i),e):e},createInferTypeNode:$e,updateInferTypeNode:function(e,t){return e.typeParameter!==t?m($e(t),e):e},createImportTypeNode:Xe,updateImportTypeNode:function(e,t,r,n,i){void 0===i&&(i=e.isTypeOf);return e.argument!==t||e.qualifier!==r||e.typeArguments!==n||e.isTypeOf!==i?m(Xe(t,r,n,i),e):e},createParenthesizedType:Qe,updateParenthesizedType:function(e,t){return e.type!==t?m(Qe(t),e):e},createThisTypeNode:function(){var e=N(188);return e.transformFlags=1,e},createTypeOperatorNode:Ze,updateTypeOperatorNode:function(e,t){return e.type!==t?m(Ze(e.operator,t),e):e},createIndexedAccessTypeNode:et,updateIndexedAccessTypeNode:function(e,t,r){return e.objectType!==t||e.indexType!==r?m(et(t,r),e):e},createMappedTypeNode:tt,updateMappedTypeNode:function(e,t,r,n,i,a){return e.readonlyToken!==t||e.typeParameter!==r||e.nameType!==n||e.questionToken!==i||e.type!==a?m(tt(t,r,n,i,a),e):e},createLiteralTypeNode:rt,updateLiteralTypeNode:function(e,t){return e.literal!==t?m(rt(t),e):e},createTemplateLiteralType:Ye,updateTemplateLiteralType:function(e,t,r){return e.head!==t||e.templateSpans!==r?m(Ye(t,r),e):e},createObjectBindingPattern:nt,updateObjectBindingPattern:function(e,t){return e.elements!==t?m(nt(t),e):e},createArrayBindingPattern:it,updateArrayBindingPattern:function(e,t){return e.elements!==t?m(it(t),e):e},createBindingElement:at,updateBindingElement:function(e,t,r,n,i){return e.propertyName!==r||e.dotDotDotToken!==t||e.name!==n||e.initializer!==i?m(at(t,r,n,i),e):e},createArrayLiteralExpression:st,updateArrayLiteralExpression:function(e,t){return e.elements!==t?m(st(t,e.multiLine),e):e},createObjectLiteralExpression:ct,updateObjectLiteralExpression:function(e,t){return e.properties!==t?m(ct(t,e.multiLine),e):e},createPropertyAccessExpression:4&n?function(t,r){return e.setEmitFlags(lt(t,r),131072)}:lt,updatePropertyAccessExpression:function(t,r,n){if(e.isPropertyAccessChain(t))return dt(t,r,t.questionDotToken,e.cast(n,e.isIdentifier));return t.expression!==r||t.name!==n?m(lt(r,n),t):t},createPropertyAccessChain:4&n?function(t,r,n){return e.setEmitFlags(ut(t,r,n),131072)}:ut,updatePropertyAccessChain:dt,createElementAccessExpression:pt,updateElementAccessExpression:function(t,r,n){if(e.isElementAccessChain(t))return mt(t,r,t.questionDotToken,n);return t.expression!==r||t.argumentExpression!==n?m(pt(r,n),t):t},createElementAccessChain:ft,updateElementAccessChain:mt,createCallExpression:gt,updateCallExpression:function(t,r,n,i){if(e.isCallChain(t))return ht(t,r,t.questionDotToken,n,i);return t.expression!==r||t.typeArguments!==n||t.arguments!==i?m(gt(r,n,i),t):t},createCallChain:_t,updateCallChain:ht,createNewExpression:yt,updateNewExpression:function(e,t,r,n){return e.expression!==t||e.typeArguments!==r||e.arguments!==n?m(yt(t,r,n),e):e},createTaggedTemplateExpression:vt,updateTaggedTemplateExpression:function(e,t,r,n){return e.tag!==t||e.typeArguments!==r||e.template!==n?m(vt(t,r,n),e):e},createTypeAssertion:bt,updateTypeAssertion:kt,createParenthesizedExpression:xt,updateParenthesizedExpression:Et,createFunctionExpression:St,updateFunctionExpression:Dt,createEtsComponentExpression:wt,updateEtsComponentExpression:function(e,t,r,n){return e.expression!==t||e.arguments!==r||e.body!==n?wt(t,r,n):e},createArrowFunction:Tt,updateArrowFunction:Ct,createDeleteExpression:At,updateDeleteExpression:function(e,t){return e.expression!==t?m(At(t),e):e},createTypeOfExpression:Nt,updateTypeOfExpression:function(e,t){return e.expression!==t?m(Nt(t),e):e},createVoidExpression:Pt,updateVoidExpression:function(e,t){return e.expression!==t?m(Pt(t),e):e},createAwaitExpression:It,updateAwaitExpression:function(e,t){return e.expression!==t?m(It(t),e):e},createPrefixUnaryExpression:Ft,updatePrefixUnaryExpression:function(e,t){return e.operand!==t?m(Ft(e.operator,t),e):e},createPostfixUnaryExpression:Ot,updatePostfixUnaryExpression:function(e,t){return e.operand!==t?m(Ot(t,e.operator),e):e},createBinaryExpression:Rt,updateBinaryExpression:function(e,t,r,n){return e.left!==t||e.operatorToken!==r||e.right!==n?m(Rt(t,r,n),e):e},createConditionalExpression:Lt,updateConditionalExpression:function(e,t,r,n,i,a){return e.condition!==t||e.questionToken!==r||e.whenTrue!==n||e.colonToken!==i||e.whenFalse!==a?m(Lt(t,r,n,i,a),e):e},createTemplateExpression:jt,updateTemplateExpression:function(e,t,r){return e.head!==t||e.templateSpans!==r?m(jt(t,r),e):e},createTemplateHead:function(e,t,r){return Bt(15,e,t,r)},createTemplateMiddle:function(e,t,r){return Bt(16,e,t,r)},createTemplateTail:function(e,t,r){return Bt(17,e,t,r)},createNoSubstitutionTemplateLiteral:function(e,t,r){return Bt(14,e,t,r)},createTemplateLiteralLikeNode:zt,createYieldExpression:Ut,updateYieldExpression:function(e,t,r){return e.expression!==r||e.asteriskToken!==t?m(Ut(t,r),e):e},createSpreadElement:qt,updateSpreadElement:function(e,t){return e.expression!==t?m(qt(t),e):e},createClassExpression:Jt,updateClassExpression:Vt,createOmittedExpression:function(){return ot(224)},createExpressionWithTypeArguments:Ht,updateExpressionWithTypeArguments:function(e,t,r){return e.expression!==t||e.typeArguments!==r?m(Ht(t,r),e):e},createAsExpression:Kt,updateAsExpression:Wt,createNonNullExpression:Gt,updateNonNullExpression:$t,createNonNullChain:Yt,updateNonNullChain:Xt,createMetaProperty:Qt,updateMetaProperty:function(e,t){return e.name!==t?m(Qt(e.keywordToken,t),e):e},createTemplateSpan:Zt,updateTemplateSpan:function(e,t,r){return e.expression!==t||e.literal!==r?m(Zt(t,r),e):e},createSemicolonClassElement:function(){var e=N(231);return e.transformFlags|=256,e},createBlock:er,updateBlock:function(e,t){return e.statements!==t?m(er(t,e.multiLine),e):e},createVariableStatement:tr,updateVariableStatement:rr,createEmptyStatement:nr,createExpressionStatement:ir,updateExpressionStatement:function(e,t){return e.expression!==t?m(ir(t),e):e},createIfStatement:ar,updateIfStatement:function(e,t,r,n){return e.expression!==t||e.thenStatement!==r||e.elseStatement!==n?m(ar(t,r,n),e):e},createDoStatement:or,updateDoStatement:function(e,t,r){return e.statement!==t||e.expression!==r?m(or(t,r),e):e},createWhileStatement:sr,updateWhileStatement:function(e,t,r){return e.expression!==t||e.statement!==r?m(sr(t,r),e):e},createForStatement:cr,updateForStatement:function(e,t,r,n,i){return e.initializer!==t||e.condition!==r||e.incrementor!==n||e.statement!==i?m(cr(t,r,n,i),e):e},createForInStatement:lr,updateForInStatement:function(e,t,r,n){return e.initializer!==t||e.expression!==r||e.statement!==n?m(lr(t,r,n),e):e},createForOfStatement:ur,updateForOfStatement:function(e,t,r,n,i){return e.awaitModifier!==t||e.initializer!==r||e.expression!==n||e.statement!==i?m(ur(t,r,n,i),e):e},createContinueStatement:dr,updateContinueStatement:function(e,t){return e.label!==t?m(dr(t),e):e},createBreakStatement:pr,updateBreakStatement:function(e,t){return e.label!==t?m(pr(t),e):e},createReturnStatement:fr,updateReturnStatement:function(e,t){return e.expression!==t?m(fr(t),e):e},createWithStatement:mr,updateWithStatement:function(e,t,r){return e.expression!==t||e.statement!==r?m(mr(t,r),e):e},createSwitchStatement:gr,updateSwitchStatement:function(e,t,r){return e.expression!==t||e.caseBlock!==r?m(gr(t,r),e):e},createLabeledStatement:_r,updateLabeledStatement:hr,createThrowStatement:yr,updateThrowStatement:function(e,t){return e.expression!==t?m(yr(t),e):e},createTryStatement:vr,updateTryStatement:function(e,t,r,n){return e.tryBlock!==t||e.catchClause!==r||e.finallyBlock!==n?m(vr(t,r,n),e):e},createDebuggerStatement:function(){return N(250)},createVariableDeclaration:br,updateVariableDeclaration:function(e,t,r,n,i){return e.name!==t||e.type!==n||e.exclamationToken!==r||e.initializer!==i?m(br(t,r,n,i),e):e},createVariableDeclarationList:kr,updateVariableDeclarationList:function(e,t){return e.declarations!==t?m(kr(t,e.flags),e):e},createFunctionDeclaration:xr,updateFunctionDeclaration:Er,createClassDeclaration:Sr,updateClassDeclaration:Dr,createStructDeclaration:wr,updateStructDeclaration:Tr,createInterfaceDeclaration:Cr,updateInterfaceDeclaration:Ar,createTypeAliasDeclaration:Nr,updateTypeAliasDeclaration:Pr,createEnumDeclaration:Ir,updateEnumDeclaration:Fr,createModuleDeclaration:Or,updateModuleDeclaration:Rr,createModuleBlock:Mr,updateModuleBlock:function(e,t){return e.statements!==t?m(Mr(t),e):e},createCaseBlock:Lr,updateCaseBlock:function(e,t){return e.clauses!==t?m(Lr(t),e):e},createNamespaceExportDeclaration:jr,updateNamespaceExportDeclaration:function(e,t){return e.name!==t?m(jr(t),e):e},createImportEqualsDeclaration:Br,updateImportEqualsDeclaration:zr,createImportDeclaration:Ur,updateImportDeclaration:qr,createImportClause:Jr,updateImportClause:function(e,t,r,n){return e.isTypeOnly!==t||e.name!==r||e.namedBindings!==n?m(Jr(t,r,n),e):e},createNamespaceImport:Vr,updateNamespaceImport:function(e,t){return e.name!==t?m(Vr(t),e):e},createNamespaceExport:Hr,updateNamespaceExport:function(e,t){return e.name!==t?m(Hr(t),e):e},createNamedImports:Kr,updateNamedImports:function(e,t){return e.elements!==t?m(Kr(t),e):e},createImportSpecifier:Wr,updateImportSpecifier:function(e,t,r){return e.propertyName!==t||e.name!==r?m(Wr(t,r),e):e},createExportAssignment:Gr,updateExportAssignment:$r,createExportDeclaration:Yr,updateExportDeclaration:Xr,createNamedExports:Qr,updateNamedExports:function(e,t){return e.elements!==t?m(Qr(t),e):e},createExportSpecifier:Zr,updateExportSpecifier:function(e,t,r){return e.propertyName!==t||e.name!==r?m(Zr(t,r),e):e},createMissingDeclaration:function(){return P(274,void 0,void 0)},createExternalModuleReference:en,updateExternalModuleReference:function(e,t){return e.expression!==t?m(en(t),e):e},get createJSDocAllType(){return k(306)},get createJSDocUnknownType(){return k(307)},get createJSDocNonNullableType(){return x(309)},get updateJSDocNonNullableType(){return E(309)},get createJSDocNullableType(){return x(308)},get updateJSDocNullableType(){return E(308)},get createJSDocOptionalType(){return x(310)},get updateJSDocOptionalType(){return E(310)},get createJSDocVariadicType(){return x(312)},get updateJSDocVariadicType(){return E(312)},get createJSDocNamepathType(){return x(313)},get updateJSDocNamepathType(){return E(313)},createJSDocFunctionType:rn,updateJSDocFunctionType:function(e,t,r){return e.parameters!==t||e.type!==r?m(rn(t,r),e):e},createJSDocTypeLiteral:nn,updateJSDocTypeLiteral:function(e,t,r){return e.jsDocPropertyTags!==t||e.isArrayType!==r?m(nn(t,r),e):e},createJSDocTypeExpression:an,updateJSDocTypeExpression:function(e,t){return e.type!==t?m(an(t),e):e},createJSDocSignature:on,updateJSDocSignature:function(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?m(on(t,r,n),e):e},createJSDocTemplateTag:ln,updateJSDocTemplateTag:function(e,t,r,n,i){void 0===t&&(t=sn(e));return e.tagName!==t||e.constraint!==r||e.typeParameters!==n||e.comment!==i?m(ln(t,r,n,i),e):e},createJSDocTypedefTag:un,updateJSDocTypedefTag:function(e,t,r,n,i){void 0===t&&(t=sn(e));return e.tagName!==t||e.typeExpression!==r||e.fullName!==n||e.comment!==i?m(un(t,r,n,i),e):e},createJSDocParameterTag:dn,updateJSDocParameterTag:function(e,t,r,n,i,a,o){void 0===t&&(t=sn(e));return e.tagName!==t||e.name!==r||e.isBracketed!==n||e.typeExpression!==i||e.isNameFirst!==a||e.comment!==o?m(dn(t,r,n,i,a,o),e):e},createJSDocPropertyTag:pn,updateJSDocPropertyTag:function(e,t,r,n,i,a,o){void 0===t&&(t=sn(e));return e.tagName!==t||e.name!==r||e.isBracketed!==n||e.typeExpression!==i||e.isNameFirst!==a||e.comment!==o?m(pn(t,r,n,i,a,o),e):e},createJSDocCallbackTag:fn,updateJSDocCallbackTag:function(e,t,r,n,i){void 0===t&&(t=sn(e));return e.tagName!==t||e.typeExpression!==r||e.fullName!==n||e.comment!==i?m(fn(t,r,n,i),e):e},createJSDocAugmentsTag:mn,updateJSDocAugmentsTag:function(e,t,r,n){void 0===t&&(t=sn(e));return e.tagName!==t||e.class!==r||e.comment!==n?m(mn(t,r,n),e):e},createJSDocImplementsTag:gn,updateJSDocImplementsTag:function(e,t,r,n){void 0===t&&(t=sn(e));return e.tagName!==t||e.class!==r||e.comment!==n?m(gn(t,r,n),e):e},createJSDocSeeTag:_n,updateJSDocSeeTag:function(e,t,r,n){return e.tagName!==t||e.name!==r||e.comment!==n?m(_n(t,r,n),e):e},createJSDocNameReference:hn,updateJSDocNameReference:function(e,t){return e.name!==t?m(hn(t),e):e},get createJSDocTypeTag(){return w(332)},get updateJSDocTypeTag(){return T(332)},get createJSDocReturnTag(){return w(330)},get updateJSDocReturnTag(){return T(330)},get createJSDocThisTag(){return w(331)},get updateJSDocThisTag(){return T(331)},get createJSDocEnumTag(){return w(328)},get updateJSDocEnumTag(){return T(328)},get createJSDocAuthorTag(){return S(320)},get updateJSDocAuthorTag(){return D(320)},get createJSDocClassTag(){return S(322)},get updateJSDocClassTag(){return D(322)},get createJSDocPublicTag(){return S(323)},get updateJSDocPublicTag(){return D(323)},get createJSDocPrivateTag(){return S(324)},get updateJSDocPrivateTag(){return D(324)},get createJSDocProtectedTag(){return S(325)},get updateJSDocProtectedTag(){return D(325)},get createJSDocReadonlyTag(){return S(326)},get updateJSDocReadonlyTag(){return D(326)},get createJSDocDeprecatedTag(){return S(321)},get updateJSDocDeprecatedTag(){return D(321)},createJSDocUnknownTag:bn,updateJSDocUnknownTag:function(e,t,r){return e.tagName!==t||e.comment!==r?m(bn(t,r),e):e},createJSDocComment:kn,updateJSDocComment:function(e,t,r){return e.comment!==t||e.tags!==r?m(kn(t,r),e):e},createJsxElement:xn,updateJsxElement:function(e,t,r,n){return e.openingElement!==t||e.children!==r||e.closingElement!==n?m(xn(t,r,n),e):e},createJsxSelfClosingElement:En,updateJsxSelfClosingElement:function(e,t,r,n){return e.tagName!==t||e.typeArguments!==r||e.attributes!==n?m(En(t,r,n),e):e},createJsxOpeningElement:Sn,updateJsxOpeningElement:function(e,t,r,n){return e.tagName!==t||e.typeArguments!==r||e.attributes!==n?m(Sn(t,r,n),e):e},createJsxClosingElement:Dn,updateJsxClosingElement:function(e,t){return e.tagName!==t?m(Dn(t),e):e},createJsxFragment:wn,createJsxText:Tn,updateJsxText:function(e,t,r){return e.text!==t||e.containsOnlyTriviaWhiteSpaces!==r?m(Tn(t,r),e):e},createJsxOpeningFragment:function(){var e=N(281);return e.transformFlags|=2,e},createJsxJsxClosingFragment:function(){var e=N(282);return e.transformFlags|=2,e},updateJsxFragment:function(e,t,r,n){return e.openingFragment!==t||e.children!==r||e.closingFragment!==n?m(wn(t,r,n),e):e},createJsxAttribute:Cn,updateJsxAttribute:function(e,t,r){return e.name!==t||e.initializer!==r?m(Cn(t,r),e):e},createJsxAttributes:An,updateJsxAttributes:function(e,t){return e.properties!==t?m(An(t),e):e},createJsxSpreadAttribute:Nn,updateJsxSpreadAttribute:function(e,t){return e.expression!==t?m(Nn(t),e):e},createJsxExpression:Pn,updateJsxExpression:function(e,t){return e.expression!==t?m(Pn(e.dotDotDotToken,t),e):e},createCaseClause:In,updateCaseClause:function(e,t,r){return e.expression!==t||e.statements!==r?m(In(t,r),e):e},createDefaultClause:Fn,updateDefaultClause:function(e,t){return e.statements!==t?m(Fn(t),e):e},createHeritageClause:On,updateHeritageClause:function(e,t){return e.types!==t?m(On(e.token,t),e):e},createCatchClause:Rn,updateCatchClause:function(e,t,r){return e.variableDeclaration!==t||e.block!==r?m(Rn(t,r),e):e},createPropertyAssignment:Mn,updatePropertyAssignment:function(e,t,r){return e.name!==t||e.initializer!==r?function(e,t){t.decorators&&(e.decorators=t.decorators);t.modifiers&&(e.modifiers=t.modifiers);t.questionToken&&(e.questionToken=t.questionToken);t.exclamationToken&&(e.exclamationToken=t.exclamationToken);return m(e,t)}(Mn(t,r),e):e},createShorthandPropertyAssignment:Ln,updateShorthandPropertyAssignment:function(e,t,r){return e.name!==t||e.objectAssignmentInitializer!==r?function(e,t){t.decorators&&(e.decorators=t.decorators);t.modifiers&&(e.modifiers=t.modifiers);t.equalsToken&&(e.equalsToken=t.equalsToken);t.questionToken&&(e.questionToken=t.questionToken);t.exclamationToken&&(e.exclamationToken=t.exclamationToken);return m(e,t)}(Ln(t,r),e):e},createSpreadAssignment:jn,updateSpreadAssignment:function(e,t){return e.expression!==t?m(jn(t),e):e},createEnumMember:Bn,updateEnumMember:function(e,t,r){return e.name!==t||e.initializer!==r?m(Bn(t,r),e):e},createSourceFile:function(e,t,r){var n=f.createBaseSourceFileNode(300);return n.statements=A(e),n.endOfFileToken=t,n.flags|=r,n.fileName="",n.text="",n.languageVersion=0,n.languageVariant=0,n.scriptKind=0,n.isDeclarationFile=!1,n.hasNoDefaultLib=!1,n.transformFlags|=d(n.statements)|u(n.endOfFileToken),n},updateSourceFile:function(t,r,n,i,a,o,s){void 0===n&&(n=t.isDeclarationFile);void 0===i&&(i=t.referencedFiles);void 0===a&&(a=t.typeReferenceDirectives);void 0===o&&(o=t.hasNoDefaultLib);void 0===s&&(s=t.libReferenceDirectives);return t.statements!==r||t.isDeclarationFile!==n||t.referencedFiles!==i||t.typeReferenceDirectives!==a||t.hasNoDefaultLib!==o||t.libReferenceDirectives!==s?m(function(t,r,n,i,a,o,s){var c=t.redirectInfo?Object.create(t.redirectInfo.redirectTarget):f.createBaseSourceFileNode(300);for(var l in t)"emitNode"!==l&&!e.hasProperty(c,l)&&e.hasProperty(t,l)&&(c[l]=t[l]);return c.flags|=t.flags,c.statements=A(r),c.endOfFileToken=t.endOfFileToken,c.isDeclarationFile=n,c.referencedFiles=i,c.typeReferenceDirectives=a,c.hasNoDefaultLib=o,c.libReferenceDirectives=s,c.transformFlags=d(c.statements)|u(c.endOfFileToken),c}(t,r,n,i,a,o,s),t):t},createBundle:zn,updateBundle:function(t,r,n){void 0===n&&(n=e.emptyArray);return t.sourceFiles!==r||t.prepends!==n?m(zn(r,n),t):t},createUnparsedSource:function(t,r,n){var i=N(302);return i.prologues=t,i.syntheticReferences=r,i.texts=n,i.fileName="",i.text="",i.referencedFiles=e.emptyArray,i.libReferenceDirectives=e.emptyArray,i.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(i,t)},i},createUnparsedPrologue:function(e){return Un(295,e)},createUnparsedPrepend:function(e,t){var r=Un(296,e);return r.texts=t,r},createUnparsedTextLike:function(e,t){return Un(t?298:297,e)},createUnparsedSyntheticReference:function(e){var t=N(299);return t.data=e.data,t.section=e,t},createInputFiles:function(){var e=N(303);return e.javascriptText="",e.declarationText="",e},createSyntheticExpression:function(e,t,r){void 0===t&&(t=!1);var n=N(229);return n.type=e,n.isSpread=t,n.tupleNameSource=r,n},createSyntaxList:function(e){var t=N(337);return t._children=e,t},createNotEmittedStatement:function(t){var r=N(338);return r.original=t,e.setTextRange(r,t),r},createPartiallyEmittedExpression:qn,updatePartiallyEmittedExpression:Jn,createCommaListExpression:Hn,updateCommaListExpression:function(e,t){return e.elements!==t?m(Hn(t),e):e},createEndOfDeclarationMarker:function(e){var t=N(342);return t.emitNode={},t.original=e,t},createMergeDeclarationMarker:function(e){var t=N(341);return t.emitNode={},t.original=e,t},createSyntheticReferenceExpression:Kn,updateSyntheticReferenceExpression:function(e,t,r){return e.expression!==t||e.thisArg!==r?m(Kn(t,r),e):e},cloneNode:Wn,get createComma(){return h(27)},get createAssignment(){return h(62)},get createLogicalOr(){return h(56)},get createLogicalAnd(){return h(55)},get createBitwiseOr(){return h(51)},get createBitwiseXor(){return h(52)},get createBitwiseAnd(){return h(50)},get createStrictEquality(){return h(36)},get createStrictInequality(){return h(37)},get createEquality(){return h(34)},get createInequality(){return h(35)},get createLessThan(){return h(29)},get createLessThanEquals(){return h(32)},get createGreaterThan(){return h(31)},get createGreaterThanEquals(){return h(33)},get createLeftShift(){return h(47)},get createRightShift(){return h(48)},get createUnsignedRightShift(){return h(49)},get createAdd(){return h(39)},get createSubtract(){return h(40)},get createMultiply(){return h(41)},get createDivide(){return h(43)},get createModulo(){return h(44)},get createExponent(){return h(42)},get createPrefixPlus(){return v(39)},get createPrefixMinus(){return v(40)},get createPrefixIncrement(){return v(45)},get createPrefixDecrement(){return v(46)},get createBitwiseNot(){return v(54)},get createLogicalNot(){return v(53)},get createPostfixIncrement(){return b(45)},get createPostfixDecrement(){return b(46)},createImmediatelyInvokedFunctionExpression:function(e,t,r){return gt(St(void 0,void 0,void 0,void 0,t?[t]:[],void 0,er(e,!0)),void 0,r?[r]:[])},createImmediatelyInvokedArrowFunction:function(e,t,r){return gt(Tt(void 0,void 0,t?[t]:[],void 0,void 0,er(e,!0)),void 0,r?[r]:[])},createVoidZero:Gn,createExportDefault:function(e){return Gr(void 0,void 0,!1,e)},createExternalModuleExport:function(e){return Yr(void 0,void 0,!1,Qr([Zr(void 0,e)]))},createTypeCheck:function(e,t){return"undefined"===t?C.createStrictEquality(e,Gn()):C.createStrictEquality(Nt(e),K(t))},createMethodCall:$n,createGlobalMethodCall:Yn,createFunctionBindCall:function(e,t,r){return $n(e,"bind",i([t],r))},createFunctionCallCall:function(e,t,r){return $n(e,"call",i([t],r))},createFunctionApplyCall:function(e,t,r){return $n(e,"apply",[t,r])},createArraySliceCall:function(e,t){return $n(e,"slice",void 0===t?[]:[ci(t)])},createArrayConcatCall:function(e,t){return $n(e,"concat",t)},createObjectDefinePropertyCall:function(e,t,r){return Yn("Object","defineProperty",[e,ci(t),r])},createPropertyDescriptor:function(t,r){var n=[];Xn(n,"enumerable",ci(t.enumerable)),Xn(n,"configurable",ci(t.configurable));var i=Xn(n,"writable",ci(t.writable));i=Xn(n,"value",t.value)||i;var a=Xn(n,"get",t.get);return a=Xn(n,"set",t.set)||a,e.Debug.assert(!(i&&a),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),ct(n,!r)},createCallBinding:function(t,r,n,i){void 0===i&&(i=!1);var a,o,s=e.skipOuterExpressions(t,15);e.isSuperProperty(s)?(a=te(),o=s):e.isSuperKeyword(s)?(a=te(),o=void 0!==n&&n<2?e.setTextRange(Y("_super"),s):s):4096&e.getEmitFlags(s)?(a=Gn(),o=g().parenthesizeLeftSideOfAccess(s)):e.isPropertyAccessExpression(s)?Qn(s.expression,i)?(a=X(r),o=lt(e.setTextRange(C.createAssignment(a,s.expression),s.expression),s.name),e.setTextRange(o,s)):(a=s.expression,o=s):e.isElementAccessExpression(s)?Qn(s.expression,i)?(a=X(r),o=pt(e.setTextRange(C.createAssignment(a,s.expression),s.expression),s.argumentExpression),e.setTextRange(o,s)):(a=s.expression,o=s):(a=Gn(),o=g().parenthesizeLeftSideOfAccess(t));return{target:o,thisArg:a}},inlineExpressions:function(t){return t.length>10?Hn(t):e.reduceLeft(t,C.createComma)},getInternalName:function(e,t,r){return Zn(e,t,r,49152)},getLocalName:function(e,t,r){return Zn(e,t,r,16384)},getExportName:ei,getDeclarationName:function(e,t,r){return Zn(e,t,r)},getNamespaceMemberName:ti,getExternalModuleOrNamespaceExportName:function(t,r,n,i){if(t&&e.hasSyntacticModifier(r,1))return ti(t,Zn(r),n,i);return ei(r,n,i)},restoreOuterExpressions:function t(r,n,i){void 0===i&&(i=15);if(r&&e.isOuterExpression(r,i)&&(a=r,!(e.isParenthesizedExpression(a)&&e.nodeIsSynthesized(a)&&e.nodeIsSynthesized(e.getSourceMapRange(a))&&e.nodeIsSynthesized(e.getCommentRange(a)))||e.some(e.getSyntheticLeadingComments(a))||e.some(e.getSyntheticTrailingComments(a))))return function(e,t){switch(e.kind){case 208:return Et(e,t);case 207:return kt(e,e.type,t);case 226:return Wt(e,t,e.type);case 227:return $t(e,t);case 339:return Jn(e,t)}}(r,t(r.expression,n));var a;return n},restoreEnclosingLabel:function t(r,n,i){if(!n)return r;var a=hr(n,n.label,e.isLabeledStatement(n.statement)?t(r,n.statement):r);i&&i(n);return a},createUseStrictPrologue:ri,copyPrologue:function(e,t,r,n){var i=ni(e,t,r);return ii(e,t,i,n)},copyStandardPrologue:ni,copyCustomPrologue:ii,ensureUseStrict:function(t){if(!e.findUseStrictPrologue(t))return e.setTextRange(A(i([ri()],t)),t);return t},liftToBlock:function(t){return e.Debug.assert(e.every(t,e.isStatementOrBlock),"Cannot lift nodes to a Block."),e.singleOrUndefined(t)||er(t)},mergeLexicalEnvironment:function(t,r){if(!e.some(r))return t;var n=ai(t,e.isPrologueDirective,0),a=ai(t,e.isHoistedFunction,n),o=ai(t,e.isHoistedVariableStatement,a),s=ai(r,e.isPrologueDirective,0),c=ai(r,e.isHoistedFunction,s),l=ai(r,e.isHoistedVariableStatement,c),u=ai(r,e.isCustomPrologue,l);e.Debug.assert(u===r.length,"Expected declarations to be valid standard or custom prologues");var d=e.isNodeArray(t)?t.slice():t;u>l&&d.splice.apply(d,i([o,0],r.slice(l,u)));l>c&&d.splice.apply(d,i([a,0],r.slice(c,l)));c>s&&d.splice.apply(d,i([n,0],r.slice(s,c)));if(s>0)if(0===n)d.splice.apply(d,i([0,0],r.slice(0,s)));else{for(var p=new e.Map,f=0;f<n;f++){var m=t[f];p.set(m.expression.text,!0)}for(f=s-1;f>=0;f--){var g=r[f];p.has(g.expression.text)||d.unshift(g)}}if(e.isNodeArray(t))return e.setTextRange(A(d,t.hasTrailingComma),t);return t},updateModifiers:function(t,r){var n;"number"==typeof r&&(r=ae(r));return e.isParameter(t)?ue(t,t.decorators,r,t.dotDotDotToken,t.name,t.questionToken,t.type,t.initializer):e.isPropertySignature(t)?fe(t,r,t.name,t.questionToken,t.type):e.isPropertyDeclaration(t)?ge(t,t.decorators,r,t.name,null!==(n=t.questionToken)&&void 0!==n?n:t.exclamationToken,t.type,t.initializer):e.isMethodSignature(t)?he(t,r,t.name,t.questionToken,t.typeParameters,t.parameters,t.type):e.isMethodDeclaration(t)?ve(t,t.decorators,r,t.asteriskToken,t.name,t.questionToken,t.typeParameters,t.parameters,t.type,t.body):e.isConstructorDeclaration(t)?ke(t,t.decorators,r,t.parameters,t.body):e.isGetAccessorDeclaration(t)?Ee(t,t.decorators,r,t.name,t.parameters,t.type,t.body):e.isSetAccessorDeclaration(t)?De(t,t.decorators,r,t.name,t.parameters,t.body):e.isIndexSignatureDeclaration(t)?Ae(t,t.decorators,r,t.parameters,t.type):e.isFunctionExpression(t)?Dt(t,r,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body):e.isArrowFunction(t)?Ct(t,r,t.typeParameters,t.parameters,t.type,t.equalsGreaterThanToken,t.body):e.isClassExpression(t)?Vt(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isVariableStatement(t)?rr(t,r,t.declarationList):e.isFunctionDeclaration(t)?Er(t,t.decorators,r,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body):e.isClassDeclaration(t)?Dr(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isStructDeclaration(t)?Tr(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isInterfaceDeclaration(t)?Ar(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members):e.isTypeAliasDeclaration(t)?Pr(t,t.decorators,r,t.name,t.typeParameters,t.type):e.isEnumDeclaration(t)?Fr(t,t.decorators,r,t.name,t.members):e.isModuleDeclaration(t)?Rr(t,t.decorators,r,t.name,t.body):e.isImportEqualsDeclaration(t)?zr(t,t.decorators,r,t.isTypeOnly,t.name,t.moduleReference):e.isImportDeclaration(t)?qr(t,t.decorators,r,t.importClause,t.moduleSpecifier):e.isExportAssignment(t)?$r(t,t.decorators,r,t.expression):e.isExportDeclaration(t)?Xr(t,t.decorators,r,t.isTypeOnly,t.exportClause,t.moduleSpecifier):e.Debug.assertNever(t)}};return C;function A(t,r){if(void 0===t||t===e.emptyArray)t=[];else if(e.isNodeArray(t))return void 0===t.transformFlags&&p(t),e.Debug.attachNodeArrayDebugInfo(t),t;var n=t.length,i=n>=1&&n<=4?t.slice():t;return e.setTextRangePosEnd(i,-1,-1),i.hasTrailingComma=!!r,p(i),e.Debug.attachNodeArrayDebugInfo(i),i}function N(e){return f.createBaseNode(e)}function P(e,t,r){var n=N(e);return n.decorators=oi(t),n.modifiers=oi(r),n.transformFlags|=d(n.decorators)|d(n.modifiers),n.symbol=void 0,n.localSymbol=void 0,n.locals=void 0,n.nextContainer=void 0,n}function I(t,r,n,i){var a=P(t,r,n);if(i=si(i),a.name=i,i)switch(a.kind){case 166:case 168:case 169:case 164:case 291:if(e.isIdentifier(i)){a.transformFlags|=l(i);break}default:a.transformFlags|=u(i)}return a}function F(e,t,r,n,i){var a=I(e,t,r,n);return a.typeParameters=oi(i),a.transformFlags|=d(a.typeParameters),i&&(a.transformFlags|=1),a}function O(e,t,r,n,i,a,o){var s=F(e,t,r,n,i);return s.parameters=A(a),s.type=o,s.transformFlags|=d(s.parameters)|u(s.type),o&&(s.transformFlags|=1),s}function R(e,t){return t.typeArguments&&(e.typeArguments=t.typeArguments),m(e,t)}function M(e,t,r,n,i,a,o,s){var c=O(e,t,r,n,i,a,o);return c.body=s,c.transformFlags|=-8388609&u(c.body),s||(c.transformFlags|=1),c}function L(e,t){return t.exclamationToken&&(e.exclamationToken=t.exclamationToken),t.typeArguments&&(e.typeArguments=t.typeArguments),R(e,t)}function j(e,t,r,n,i,a){var o=F(e,t,r,n,i);return o.heritageClauses=oi(a),o.transformFlags|=d(o.heritageClauses),o}function B(e,t,r,n,i,a,o){var s=j(e,t,r,n,i,a);return s.members=A(o),s.transformFlags|=d(s.members),s}function z(e,t,r,n,i){var a=I(e,t,r,n);return a.initializer=i,a.transformFlags|=u(a.initializer),a}function U(e,t,r,n,i,a){var o=z(e,t,r,n,a);return o.type=i,o.transformFlags|=u(i),i&&(o.transformFlags|=1),o}function q(e,t){var r=Z(e);return r.text=t,r}function J(e,t){void 0===t&&(t=0);var r=q(8,"number"==typeof e?e+"":e);return r.numericLiteralFlags=t,384&t&&(r.transformFlags|=256),r}function V(t){var r=q(9,"string"==typeof t?t:e.pseudoBigIntToString(t)+"n");return r.transformFlags|=4,r}function H(e,t){var r=q(10,e);return r.singleQuote=t,r}function K(e,t,r){var n=H(e,t);return n.hasExtendedUnicodeEscape=r,r&&(n.transformFlags|=256),n}function W(e){return q(13,e)}function G(t,r){void 0===r&&t&&(r=e.stringToToken(t)),78===r&&(r=void 0);var n=f.createBaseIdentifierNode(78);return n.originalKeywordKind=r,n.escapedText=e.escapeLeadingUnderscores(t),n}function $(e,t){var n=G(e,void 0);return n.autoGenerateFlags=t,n.autoGenerateId=r,r++,n}function Y(e,t,r){var n=G(e,r);return t&&(n.typeArguments=A(t)),131===n.originalKeywordKind&&(n.transformFlags|=8388608),n}function X(e,t){var r=1;t&&(r|=8);var n=$("",r);return e&&e(n),n}function Q(t,r){void 0===r&&(r=0),e.Debug.assert(!(7&r),"Argument out of range: flags");var n=$(t&&e.isIdentifier(t)?e.idText(t):"",4|r);return n.original=t,n}function Z(e){return f.createBaseTokenNode(e)}function ee(t){e.Debug.assert(t>=0&&t<=157,"Invalid token"),e.Debug.assert(t<=14||t>=17,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),e.Debug.assert(t<=8||t>=14,"Invalid token. Use 'createLiteralLikeNode' to create literals."),e.Debug.assert(78!==t,"Invalid token. Use 'createIdentifier' to create identifiers");var r=Z(t),n=0;switch(t){case 130:n=96;break;case 123:case 121:case 122:case 143:case 126:case 134:case 85:case 129:case 145:case 156:case 142:case 146:case 148:case 132:case 149:case 114:case 153:case 151:n=1;break;case 124:case 106:n=256;break;case 108:n=4096}return n&&(r.transformFlags|=n),r}function te(){return ee(108)}function re(){return ee(110)}function ne(){return ee(95)}function ie(e){return ee(e)}function ae(e){var t=[];return 1&e&&t.push(ie(93)),2&e&&t.push(ie(134)),512&e&&t.push(ie(88)),2048&e&&t.push(ie(85)),4&e&&t.push(ie(123)),8&e&&t.push(ie(121)),16&e&&t.push(ie(122)),128&e&&t.push(ie(126)),32&e&&t.push(ie(124)),64&e&&t.push(ie(143)),256&e&&t.push(ie(130)),t}function oe(e,t){var r=N(158);return r.left=e,r.right=si(t),r.transformFlags|=u(r.left)|l(r.right),r}function se(e){var t=N(159);return t.expression=g().parenthesizeExpressionOfComputedPropertyName(e),t.transformFlags|=33024|u(t.expression),t}function ce(e,t,r){var n=I(160,void 0,void 0,e);return n.constraint=t,n.default=r,n.transformFlags=1,n}function le(t,r,n,i,a,o,s){var c=U(161,t,r,i,o,s&&g().parenthesizeExpressionForDisallowedComma(s));return c.dotDotDotToken=n,c.questionToken=a,e.isThisIdentifier(c.name)?c.transformFlags=1:(c.transformFlags|=u(c.dotDotDotToken)|u(c.questionToken),a&&(c.transformFlags|=1),92&e.modifiersToFlags(c.modifiers)&&(c.transformFlags|=2048),(s||n)&&(c.transformFlags|=256)),c}function ue(e,t,r,n,i,a,o,s){return e.decorators!==t||e.modifiers!==r||e.dotDotDotToken!==n||e.name!==i||e.questionToken!==a||e.type!==o||e.initializer!==s?m(le(t,r,n,i,a,o,s),e):e}function de(e){var t=N(162);return t.expression=g().parenthesizeLeftSideOfAccess(e),t.transformFlags|=2049|u(t.expression),t}function pe(e,t,r,n){var i=I(163,void 0,e,t);return i.type=n,i.questionToken=r,i.transformFlags=1,i}function fe(e,t,r,n,i){return e.modifiers!==t||e.name!==r||e.questionToken!==n||e.type!==i?m(pe(t,r,n,i),e):e}function me(t,r,n,i,a,o){var s=U(164,t,r,n,a,o);return s.questionToken=i&&e.isQuestionToken(i)?i:void 0,s.exclamationToken=i&&e.isExclamationToken(i)?i:void 0,s.transformFlags|=u(s.questionToken)|u(s.exclamationToken)|4194304,(e.isComputedPropertyName(s.name)||e.hasStaticModifier(s)&&s.initializer)&&(s.transformFlags|=2048),(i||2&e.modifiersToFlags(s.modifiers))&&(s.transformFlags|=1),s}function ge(t,r,n,i,a,o,s){return t.decorators!==r||t.modifiers!==n||t.name!==i||t.questionToken!==(void 0!==a&&e.isQuestionToken(a)?a:void 0)||t.exclamationToken!==(void 0!==a&&e.isExclamationToken(a)?a:void 0)||t.type!==o||t.initializer!==s?m(me(r,n,i,a,o,s),t):t}function _e(e,t,r,n,i,a){var o=O(165,void 0,e,t,n,i,a);return o.questionToken=r,o.transformFlags=1,o}function he(e,t,r,n,i,a,o){return e.modifiers!==t||e.name!==r||e.questionToken!==n||e.typeParameters!==i||e.parameters!==a||e.type!==o?R(_e(t,r,n,i,a,o),e):e}function ye(t,r,n,i,a,o,s,c,l){var d=M(166,t,r,i,o,s,c,l);return d.asteriskToken=n,d.questionToken=a,d.transformFlags|=u(d.asteriskToken)|u(d.questionToken)|256,a&&(d.transformFlags|=1),256&e.modifiersToFlags(d.modifiers)?d.transformFlags|=n?32:64:n&&(d.transformFlags|=512),d}function ve(e,t,r,n,i,a,o,s,c,l){return e.decorators!==t||e.modifiers!==r||e.asteriskToken!==n||e.name!==i||e.questionToken!==a||e.typeParameters!==o||e.parameters!==s||e.type!==c||e.body!==l?L(ye(t,r,n,i,a,o,s,c,l),e):e}function be(e,t,r,n){var i=M(167,e,t,void 0,void 0,r,void 0,n);return i.transformFlags|=256,i}function ke(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.parameters!==n||e.body!==i?L(be(t,r,n,i),e):e}function xe(e,t,r,n,i,a){return M(168,e,t,r,void 0,n,i,a)}function Ee(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.parameters!==i||e.type!==a||e.body!==o?L(xe(t,r,n,i,a,o),e):e}function Se(e,t,r,n,i){return M(169,e,t,r,void 0,n,void 0,i)}function De(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.parameters!==i||e.body!==a?L(Se(t,r,n,i,a),e):e}function we(e,t,r){var n=O(170,void 0,void 0,void 0,e,t,r);return n.transformFlags=1,n}function Te(e,t,r){var n=O(171,void 0,void 0,void 0,e,t,r);return n.transformFlags=1,n}function Ce(e,t,r,n){var i=O(172,e,t,void 0,void 0,r,n);return i.transformFlags=1,i}function Ae(e,t,r,n,i){return e.parameters!==n||e.type!==i||e.decorators!==t||e.modifiers!==r?R(Ce(t,r,n,i),e):e}function Ne(e,t){var r=N(195);return r.type=e,r.literal=t,r.transformFlags=1,r}function Pe(e,t,r){var n=N(173);return n.assertsModifier=e,n.parameterName=si(t),n.type=r,n.transformFlags=1,n}function Ie(e,t){var r=N(174);return r.typeName=si(e),r.typeArguments=t&&g().parenthesizeTypeArguments(A(t)),r.transformFlags=1,r}function Fe(e,t,r){var n=O(175,void 0,void 0,void 0,e,t,r);return n.transformFlags=1,n}function Oe(){for(var t=[],r=0;r<arguments.length;r++)t[r]=arguments[r];return 4===t.length?Re.apply(void 0,t):3===t.length?Me.apply(void 0,t):e.Debug.fail("Incorrect number of arguments specified.")}function Re(e,t,r,n){var i=O(176,void 0,e,void 0,t,r,n);return i.transformFlags=1,i}function Me(e,t,r){return Re(void 0,e,t,r)}function Le(e,t,r,n,i){return e.modifiers!==t||e.typeParameters!==r||e.parameters!==n||e.type!==i?R(Oe(t,r,n,i),e):e}function je(e,t,r,n){return Le(e,e.modifiers,t,r,n)}function Be(e){var t=N(177);return t.exprName=e,t.transformFlags=1,t}function ze(e){var t=N(178);return t.members=A(e),t.transformFlags=1,t}function Ue(e){var t=N(179);return t.elementType=g().parenthesizeElementTypeOfArrayType(e),t.transformFlags=1,t}function qe(e){var t=N(180);return t.elements=A(e),t.transformFlags=1,t}function Je(e,t,r,n){var i=N(193);return i.dotDotDotToken=e,i.name=t,i.questionToken=r,i.type=n,i.transformFlags=1,i}function Ve(e){var t=N(181);return t.type=g().parenthesizeElementTypeOfArrayType(e),t.transformFlags=1,t}function He(e){var t=N(182);return t.type=e,t.transformFlags=1,t}function Ke(e,t){var r=N(e);return r.types=g().parenthesizeConstituentTypesOfUnionOrIntersectionType(t),r.transformFlags=1,r}function We(e,t){return e.types!==t?m(Ke(e.kind,t),e):e}function Ge(e,t,r,n){var i=N(185);return i.checkType=g().parenthesizeMemberOfConditionalType(e),i.extendsType=g().parenthesizeMemberOfConditionalType(t),i.trueType=r,i.falseType=n,i.transformFlags=1,i}function $e(e){var t=N(186);return t.typeParameter=e,t.transformFlags=1,t}function Ye(e,t){var r=N(194);return r.head=e,r.templateSpans=A(t),r.transformFlags=1,r}function Xe(e,t,r,n){void 0===n&&(n=!1);var i=N(196);return i.argument=e,i.qualifier=t,i.typeArguments=r&&g().parenthesizeTypeArguments(r),i.isTypeOf=n,i.transformFlags=1,i}function Qe(e){var t=N(187);return t.type=e,t.transformFlags=1,t}function Ze(e,t){var r=N(189);return r.operator=e,r.type=g().parenthesizeMemberOfElementType(t),r.transformFlags=1,r}function et(e,t){var r=N(190);return r.objectType=g().parenthesizeMemberOfElementType(e),r.indexType=t,r.transformFlags=1,r}function tt(e,t,r,n,i){var a=N(191);return a.readonlyToken=e,a.typeParameter=t,a.nameType=r,a.questionToken=n,a.type=i,a.transformFlags=1,a}function rt(e){var t=N(192);return t.literal=e,t.transformFlags=1,t}function nt(e){var t=N(197);return t.elements=A(e),t.transformFlags|=131328|d(t.elements),8192&t.transformFlags&&(t.transformFlags|=16416),t}function it(e){var t=N(198);return t.elements=A(e),t.transformFlags|=131328|d(t.elements),t}function at(t,r,n,i){var a=z(199,void 0,void 0,n,i);return a.propertyName=si(r),a.dotDotDotToken=t,a.transformFlags|=256|u(a.dotDotDotToken),a.propertyName&&(a.transformFlags|=e.isIdentifier(a.propertyName)?l(a.propertyName):u(a.propertyName)),t&&(a.transformFlags|=8192),a}function ot(e){return N(e)}function st(e,t){var r=ot(200);return r.elements=g().parenthesizeExpressionsOfCommaDelimitedList(A(e)),r.multiLine=t,r.transformFlags|=d(r.elements),r}function ct(e,t){var r=ot(201);return r.properties=A(e),r.multiLine=t,r.transformFlags|=d(r.properties),r}function lt(t,r){var n=ot(202);return n.expression=g().parenthesizeLeftSideOfAccess(t),n.name=si(r),n.transformFlags=u(n.expression)|(e.isIdentifier(n.name)?l(n.name):u(n.name)),e.isSuperKeyword(t)&&(n.transformFlags|=96),n}function ut(t,r,n){var i=ot(202);return i.flags|=32,i.expression=g().parenthesizeLeftSideOfAccess(t),i.questionDotToken=r,i.name=si(n),i.transformFlags|=8|u(i.expression)|u(i.questionDotToken)|(e.isIdentifier(i.name)?l(i.name):u(i.name)),i}function dt(t,r,n,i){return e.Debug.assert(!!(32&t.flags),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),t.expression!==r||t.questionDotToken!==n||t.name!==i?m(ut(r,n,i),t):t}function pt(t,r){var n=ot(203);return n.expression=g().parenthesizeLeftSideOfAccess(t),n.argumentExpression=ci(r),n.transformFlags|=u(n.expression)|u(n.argumentExpression),e.isSuperKeyword(t)&&(n.transformFlags|=96),n}function ft(e,t,r){var n=ot(203);return n.flags|=32,n.expression=g().parenthesizeLeftSideOfAccess(e),n.questionDotToken=t,n.argumentExpression=ci(r),n.transformFlags|=u(n.expression)|u(n.questionDotToken)|u(n.argumentExpression)|8,n}function mt(t,r,n,i){return e.Debug.assert(!!(32&t.flags),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),t.expression!==r||t.questionDotToken!==n||t.argumentExpression!==i?m(ft(r,n,i),t):t}function gt(t,r,n){var i=ot(204);return i.expression=g().parenthesizeLeftSideOfAccess(t),i.typeArguments=oi(r),i.arguments=g().parenthesizeExpressionsOfCommaDelimitedList(A(n)),i.transformFlags|=u(i.expression)|d(i.typeArguments)|d(i.arguments),i.typeArguments&&(i.transformFlags|=1),e.isImportKeyword(i.expression)?i.transformFlags|=2097152:e.isSuperProperty(i.expression)&&(i.transformFlags|=4096),i}function _t(t,r,n,i){var a=ot(204);return a.flags|=32,a.expression=g().parenthesizeLeftSideOfAccess(t),a.questionDotToken=r,a.typeArguments=oi(n),a.arguments=g().parenthesizeExpressionsOfCommaDelimitedList(A(i)),a.transformFlags|=u(a.expression)|u(a.questionDotToken)|d(a.typeArguments)|d(a.arguments)|8,a.typeArguments&&(a.transformFlags|=1),e.isSuperProperty(a.expression)&&(a.transformFlags|=4096),a}function ht(t,r,n,i,a){return e.Debug.assert(!!(32&t.flags),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),t.expression!==r||t.questionDotToken!==n||t.typeArguments!==i||t.arguments!==a?m(_t(r,n,i,a),t):t}function yt(e,t,r){var n=ot(205);return n.expression=g().parenthesizeExpressionOfNew(e),n.typeArguments=oi(t),n.arguments=r?g().parenthesizeExpressionsOfCommaDelimitedList(r):void 0,n.transformFlags|=u(n.expression)|d(n.typeArguments)|d(n.arguments)|8,n.typeArguments&&(n.transformFlags|=1),n}function vt(t,r,n){var i=ot(206);return i.tag=g().parenthesizeLeftSideOfAccess(t),i.typeArguments=oi(r),i.template=n,i.transformFlags|=u(i.tag)|d(i.typeArguments)|u(i.template)|256,i.typeArguments&&(i.transformFlags|=1),e.hasInvalidEscape(i.template)&&(i.transformFlags|=32),i}function bt(e,t){var r=ot(207);return r.expression=g().parenthesizeOperandOfPrefixUnary(t),r.type=e,r.transformFlags|=u(r.expression)|u(r.type)|1,r}function kt(e,t,r){return e.type!==t||e.expression!==r?m(bt(t,r),e):e}function xt(e){var t=ot(208);return t.expression=e,t.transformFlags=u(t.expression),t}function Et(e,t){return e.expression!==t?m(xt(t),e):e}function St(t,r,n,i,a,o,s){var c=M(209,void 0,t,n,i,a,o,s);return c.asteriskToken=r,c.transformFlags|=u(c.asteriskToken),c.typeParameters&&(c.transformFlags|=1),256&e.modifiersToFlags(c.modifiers)?c.asteriskToken?c.transformFlags|=32:c.transformFlags|=64:c.asteriskToken&&(c.transformFlags|=512),c}function Dt(e,t,r,n,i,a,o,s){return e.name!==n||e.modifiers!==t||e.asteriskToken!==r||e.typeParameters!==i||e.parameters!==a||e.type!==o||e.body!==s?L(St(t,r,n,i,a,o,s),e):e}function wt(e,t,r){var n=ot(211);return n.expression=g().parenthesizeLeftSideOfAccess(e),n.arguments=g().parenthesizeExpressionsOfCommaDelimitedList(A(t)),n.body=r,n}function Tt(t,r,n,i,a,o){var s=M(210,void 0,t,void 0,r,n,i,g().parenthesizeConciseBodyOfArrowFunction(o));return s.equalsGreaterThanToken=null!=a?a:ee(38),s.transformFlags|=256|u(s.equalsGreaterThanToken),256&e.modifiersToFlags(s.modifiers)&&(s.transformFlags|=64),s}function Ct(e,t,r,n,i,a,o){return e.modifiers!==t||e.typeParameters!==r||e.parameters!==n||e.type!==i||e.equalsGreaterThanToken!==a||e.body!==o?L(Tt(t,r,n,i,a,o),e):e}function At(e){var t=ot(212);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=u(t.expression),t}function Nt(e){var t=ot(213);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=u(t.expression),t}function Pt(e){var t=ot(214);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=u(t.expression),t}function It(e){var t=ot(215);return t.expression=g().parenthesizeOperandOfPrefixUnary(e),t.transformFlags|=524384|u(t.expression),t}function Ft(e,t){var r=ot(216);return r.operator=e,r.operand=g().parenthesizeOperandOfPrefixUnary(t),r.transformFlags|=u(r.operand),r}function Ot(e,t){var r=ot(217);return r.operator=t,r.operand=g().parenthesizeOperandOfPostfixUnary(e),r.transformFlags=u(r.operand),r}function Rt(t,r,n){var i,a=ot(218),o="number"==typeof(i=r)?ee(i):i,s=o.kind;return a.left=g().parenthesizeLeftSideOfBinary(s,t),a.operatorToken=o,a.right=g().parenthesizeRightSideOfBinary(s,a.left,n),a.transformFlags|=u(a.left)|u(a.operatorToken)|u(a.right),60===s?a.transformFlags|=8:62===s?e.isObjectLiteralExpression(a.left)?a.transformFlags|=1312|Mt(a.left):e.isArrayLiteralExpression(a.left)&&(a.transformFlags|=1280|Mt(a.left)):42===s||66===s?a.transformFlags|=128:e.isLogicalOrCoalescingAssignmentOperator(s)&&(a.transformFlags|=4),a}function Mt(t){if(16384&t.transformFlags)return 16384;if(32&t.transformFlags)for(var r=0,n=e.getElementsOfBindingOrAssignmentPattern(t);r<n.length;r++){var i=n[r],a=e.getTargetOfBindingOrAssignmentElement(i);if(a&&e.isAssignmentPattern(a)){if(16384&a.transformFlags)return 16384;if(32&a.transformFlags){var o=Mt(a);if(o)return o}}}return 0}function Lt(e,t,r,n,i){var a=ot(219);return a.condition=g().parenthesizeConditionOfConditionalExpression(e),a.questionToken=null!=t?t:ee(57),a.whenTrue=g().parenthesizeBranchOfConditionalExpression(r),a.colonToken=null!=n?n:ee(58),a.whenFalse=g().parenthesizeBranchOfConditionalExpression(i),a.transformFlags|=u(a.condition)|u(a.questionToken)|u(a.whenTrue)|u(a.colonToken)|u(a.whenFalse),a}function jt(e,t){var r=ot(220);return r.head=e,r.templateSpans=A(t),r.transformFlags|=u(r.head)|d(r.templateSpans)|256,r}function Bt(r,n,i,a){void 0===a&&(a=0),e.Debug.assert(!(-2049&a),"Unsupported template flags.");var o=void 0;if(void 0!==i&&i!==n&&(o=function(r,n){t||(t=e.createScanner(99,!1,0));switch(r){case 14:t.setText("`"+n+"`");break;case 15:t.setText("`"+n+"${");break;case 16:t.setText("}"+n+"${");break;case 17:t.setText("}"+n+"`")}var i,a=t.scan();23===a&&(a=t.reScanTemplateToken(!1));if(t.isUnterminated())return t.setText(void 0),c;switch(a){case 14:case 15:case 16:case 17:i=t.getTokenValue()}if(void 0===i||1!==t.scan())return t.setText(void 0),c;return t.setText(void 0),i}(r,i),"object"==typeof o))return e.Debug.fail("Invalid raw text");if(void 0===n){if(void 0===o)return e.Debug.fail("Arguments 'text' and 'rawText' may not both be undefined.");n=o}else void 0!==o&&e.Debug.assert(n===o,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return zt(r,n,i,a)}function zt(e,t,r,n){var i=Z(e);return i.text=t,i.rawText=r,i.templateFlags=2048&n,i.transformFlags|=256,i.templateFlags&&(i.transformFlags|=32),i}function Ut(t,r){e.Debug.assert(!t||!!r,"A `YieldExpression` with an asteriskToken must have an expression.");var n=ot(221);return n.expression=r&&g().parenthesizeExpressionForDisallowedComma(r),n.asteriskToken=t,n.transformFlags|=262432|(u(n.expression)|u(n.asteriskToken)),n}function qt(e){var t=ot(222);return t.expression=g().parenthesizeExpressionForDisallowedComma(e),t.transformFlags|=8448|u(t.expression),t}function Jt(e,t,r,n,i,a){var o=B(223,e,t,r,n,i,a);return o.transformFlags|=256,o}function Vt(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(Jt(t,r,n,i,a,o),e):e}function Ht(e,t){var r=N(225);return r.expression=g().parenthesizeLeftSideOfAccess(e),r.typeArguments=t&&g().parenthesizeTypeArguments(t),r.transformFlags|=u(r.expression)|d(r.typeArguments)|256,r}function Kt(e,t){var r=ot(226);return r.expression=e,r.type=t,r.transformFlags|=u(r.expression)|u(r.type)|1,r}function Wt(e,t,r){return e.expression!==t||e.type!==r?m(Kt(t,r),e):e}function Gt(e){var t=ot(227);return t.expression=g().parenthesizeLeftSideOfAccess(e),t.transformFlags|=1|u(t.expression),t}function $t(t,r){return e.isNonNullChain(t)?Xt(t,r):t.expression!==r?m(Gt(r),t):t}function Yt(e){var t=ot(227);return t.flags|=32,t.expression=g().parenthesizeLeftSideOfAccess(e),t.transformFlags|=1|u(t.expression),t}function Xt(t,r){return e.Debug.assert(!!(32&t.flags),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),t.expression!==r?m(Yt(r),t):t}function Qt(t,r){var n=ot(228);switch(n.keywordToken=t,n.name=r,n.transformFlags|=u(n.name),t){case 103:n.transformFlags|=256;break;case 100:n.transformFlags|=4;break;default:return e.Debug.assertNever(t)}return n}function Zt(e,t){var r=N(230);return r.expression=e,r.literal=t,r.transformFlags|=u(r.expression)|u(r.literal)|256,r}function er(e,t){var r=N(232);return r.statements=A(e),r.multiLine=t,r.transformFlags|=d(r.statements),r}function tr(t,r){var n=P(234,void 0,t);return n.declarationList=e.isArray(r)?kr(r):r,n.transformFlags|=u(n.declarationList),2&e.modifiersToFlags(n.modifiers)&&(n.transformFlags=1),n}function rr(e,t,r){return e.modifiers!==t||e.declarationList!==r?m(tr(t,r),e):e}function nr(){return N(233)}function ir(e){var t=N(235);return t.expression=g().parenthesizeExpressionOfExpressionStatement(e),t.transformFlags|=u(t.expression),t}function ar(e,t,r){var n=N(236);return n.expression=e,n.thenStatement=li(t),n.elseStatement=li(r),n.transformFlags|=u(n.expression)|u(n.thenStatement)|u(n.elseStatement),n}function or(e,t){var r=N(237);return r.statement=li(e),r.expression=t,r.transformFlags|=u(r.statement)|u(r.expression),r}function sr(e,t){var r=N(238);return r.expression=e,r.statement=li(t),r.transformFlags|=u(r.expression)|u(r.statement),r}function cr(e,t,r,n){var i=N(239);return i.initializer=e,i.condition=t,i.incrementor=r,i.statement=li(n),i.transformFlags|=u(i.initializer)|u(i.condition)|u(i.incrementor)|u(i.statement),i}function lr(e,t,r){var n=N(240);return n.initializer=e,n.expression=t,n.statement=li(r),n.transformFlags|=u(n.initializer)|u(n.expression)|u(n.statement),n}function ur(e,t,r,n){var i=N(241);return i.awaitModifier=e,i.initializer=t,i.expression=g().parenthesizeExpressionForDisallowedComma(r),i.statement=li(n),i.transformFlags|=u(i.awaitModifier)|u(i.initializer)|u(i.expression)|u(i.statement)|256,e&&(i.transformFlags|=32),i}function dr(e){var t=N(242);return t.label=si(e),t.transformFlags|=1048576|u(t.label),t}function pr(e){var t=N(243);return t.label=si(e),t.transformFlags|=1048576|u(t.label),t}function fr(e){var t=N(244);return t.expression=e,t.transformFlags|=1048608|u(t.expression),t}function mr(e,t){var r=N(245);return r.expression=e,r.statement=li(t),r.transformFlags|=u(r.expression)|u(r.statement),r}function gr(e,t){var r=N(246);return r.expression=g().parenthesizeExpressionForDisallowedComma(e),r.caseBlock=t,r.transformFlags|=u(r.expression)|u(r.caseBlock),r}function _r(e,t){var r=N(247);return r.label=si(e),r.statement=li(t),r.transformFlags|=u(r.label)|u(r.statement),r}function hr(e,t,r){return e.label!==t||e.statement!==r?m(_r(t,r),e):e}function yr(e){var t=N(248);return t.expression=e,t.transformFlags|=u(t.expression),t}function vr(e,t,r){var n=N(249);return n.tryBlock=e,n.catchClause=t,n.finallyBlock=r,n.transformFlags|=u(n.tryBlock)|u(n.catchClause)|u(n.finallyBlock),n}function br(e,t,r,n){var i=U(251,void 0,void 0,e,r,n&&g().parenthesizeExpressionForDisallowedComma(n));return i.exclamationToken=t,i.transformFlags|=u(i.exclamationToken),t&&(i.transformFlags|=1),i}function kr(e,t){void 0===t&&(t=0);var r=N(252);return r.flags|=3&t,r.declarations=A(e),r.transformFlags|=1048576|d(r.declarations),3&t&&(r.transformFlags|=65792),r}function xr(t,r,n,i,a,o,s,c){var l=M(253,t,r,i,a,o,s,c);return l.asteriskToken=n,!l.body||2&e.modifiersToFlags(l.modifiers)?l.transformFlags=1:(l.transformFlags|=1048576|u(l.asteriskToken),256&e.modifiersToFlags(l.modifiers)?l.asteriskToken?l.transformFlags|=32:l.transformFlags|=64:l.asteriskToken&&(l.transformFlags|=512)),l}function Er(e,t,r,n,i,a,o,s,c){return e.decorators!==t||e.modifiers!==r||e.asteriskToken!==n||e.name!==i||e.typeParameters!==a||e.parameters!==o||e.type!==s||e.body!==c?L(xr(t,r,n,i,a,o,s,c),e):e}function Sr(t,r,n,i,a,o){var s=B(254,t,r,n,i,a,o);return 2&e.modifiersToFlags(s.modifiers)?s.transformFlags=1:(s.transformFlags|=256,2048&s.transformFlags&&(s.transformFlags|=1)),s}function Dr(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(Sr(t,r,n,i,a,o),e):e}function wr(t,r,n,i,a,o){var s=B(255,t,r,n,i,a,o);return 2&e.modifiersToFlags(s.modifiers)?s.transformFlags=1:(s.transformFlags|=256,2048&s.transformFlags&&(s.transformFlags|=1)),s}function Tr(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(wr(t,r,n,i,a,o),e):e}function Cr(e,t,r,n,i,a){var o=j(256,e,t,r,n,i);return o.members=A(a),o.transformFlags=1,o}function Ar(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?m(Cr(t,r,n,i,a,o),e):e}function Nr(e,t,r,n,i){var a=F(257,e,t,r,n);return a.type=i,a.transformFlags=1,a}function Pr(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.type!==a?m(Nr(t,r,n,i,a),e):e}function Ir(e,t,r,n){var i=I(258,e,t,r);return i.members=A(n),i.transformFlags|=1|d(i.members),i.transformFlags&=-8388609,i}function Fr(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.members!==i?m(Ir(t,r,n,i),e):e}function Or(t,r,n,i,a){void 0===a&&(a=0);var o=P(259,t,r);return o.flags|=1044&a,o.name=n,o.body=i,2&e.modifiersToFlags(o.modifiers)?o.transformFlags=1:o.transformFlags|=u(o.name)|u(o.body)|1,o.transformFlags&=-8388609,o}function Rr(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.body!==i?m(Or(t,r,n,i,e.flags),e):e}function Mr(e){var t=N(260);return t.statements=A(e),t.transformFlags|=d(t.statements),t}function Lr(e){var t=N(261);return t.clauses=A(e),t.transformFlags|=d(t.clauses),t}function jr(e){var t=I(262,void 0,void 0,e);return t.transformFlags=1,t}function Br(t,r,n,i,a){var o=I(263,t,r,i);return o.isTypeOnly=n,o.moduleReference=a,o.transformFlags|=u(o.moduleReference),e.isExternalModuleReference(o.moduleReference)||(o.transformFlags|=1),o.transformFlags&=-8388609,o}function zr(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.isTypeOnly!==n||e.name!==i||e.moduleReference!==a?m(Br(t,r,n,i,a),e):e}function Ur(e,t,r,n){var i=P(264,e,t);return i.importClause=r,i.moduleSpecifier=n,i.transformFlags|=u(i.importClause)|u(i.moduleSpecifier),i.transformFlags&=-8388609,i}function qr(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.importClause!==n||e.moduleSpecifier!==i?m(Ur(t,r,n,i),e):e}function Jr(e,t,r){var n=N(265);return n.isTypeOnly=e,n.name=t,n.namedBindings=r,n.transformFlags|=u(n.name)|u(n.namedBindings),e&&(n.transformFlags|=1),n.transformFlags&=-8388609,n}function Vr(e){var t=N(266);return t.name=e,t.transformFlags|=u(t.name),t.transformFlags&=-8388609,t}function Hr(e){var t=N(272);return t.name=e,t.transformFlags|=4|u(t.name),t.transformFlags&=-8388609,t}function Kr(e){var t=N(267);return t.elements=A(e),t.transformFlags|=d(t.elements),t.transformFlags&=-8388609,t}function Wr(e,t){var r=N(268);return r.propertyName=e,r.name=t,r.transformFlags|=u(r.propertyName)|u(r.name),r.transformFlags&=-8388609,r}function Gr(e,t,r,n){var i=P(269,e,t);return i.isExportEquals=r,i.expression=r?g().parenthesizeRightSideOfBinary(62,void 0,n):g().parenthesizeExpressionOfExportDefault(n),i.transformFlags|=u(i.expression),i.transformFlags&=-8388609,i}function $r(e,t,r,n){return e.decorators!==t||e.modifiers!==r||e.expression!==n?m(Gr(t,r,e.isExportEquals,n),e):e}function Yr(e,t,r,n,i){var a=P(270,e,t);return a.isTypeOnly=r,a.exportClause=n,a.moduleSpecifier=i,a.transformFlags|=u(a.exportClause)|u(a.moduleSpecifier),a.transformFlags&=-8388609,a}function Xr(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.isTypeOnly!==n||e.exportClause!==i||e.moduleSpecifier!==a?m(Yr(t,r,n,i,a),e):e}function Qr(e){var t=N(271);return t.elements=A(e),t.transformFlags|=d(t.elements),t.transformFlags&=-8388609,t}function Zr(e,t){var r=N(273);return r.propertyName=si(e),r.name=si(t),r.transformFlags|=u(r.propertyName)|u(r.name),r.transformFlags&=-8388609,r}function en(e){var t=N(275);return t.expression=e,t.transformFlags|=u(t.expression),t.transformFlags&=-8388609,t}function tn(e,t){var r=N(e);return r.type=t,r}function rn(e,t){return O(311,void 0,void 0,void 0,void 0,e,t)}function nn(e,t){void 0===t&&(t=!1);var r=N(315);return r.jsDocPropertyTags=oi(e),r.isArrayType=t,r}function an(e){var t=N(304);return t.type=e,t}function on(e,t,r){var n=N(316);return n.typeParameters=oi(e),n.parameters=A(t),n.type=r,n}function sn(t){var r=s(t.kind);return t.tagName.escapedText===e.escapeLeadingUnderscores(r)?t.tagName:Y(r)}function cn(e,t,r){var n=N(e);return n.tagName=t,n.comment=r,n}function ln(e,t,r,n){var i=cn(333,null!=e?e:Y("template"),n);return i.constraint=t,i.typeParameters=A(r),i}function un(t,r,n,i){var a=cn(334,null!=t?t:Y("typedef"),i);return a.typeExpression=r,a.fullName=n,a.name=e.getJSDocTypeAliasName(n),a}function dn(e,t,r,n,i,a){var o=cn(329,null!=e?e:Y("param"),a);return o.typeExpression=n,o.name=t,o.isNameFirst=!!i,o.isBracketed=r,o}function pn(e,t,r,n,i,a){var o=cn(336,null!=e?e:Y("prop"),a);return o.typeExpression=n,o.name=t,o.isNameFirst=!!i,o.isBracketed=r,o}function fn(t,r,n,i){var a=cn(327,null!=t?t:Y("callback"),i);return a.typeExpression=r,a.fullName=n,a.name=e.getJSDocTypeAliasName(n),a}function mn(e,t,r){var n=cn(318,null!=e?e:Y("augments"),r);return n.class=t,n}function gn(e,t,r){var n=cn(319,null!=e?e:Y("implements"),r);return n.class=t,n}function _n(e,t,r){var n=cn(335,null!=e?e:Y("see"),r);return n.name=t,n}function hn(e){var t=N(305);return t.name=e,t}function yn(e,t,r){return cn(e,null!=t?t:Y(s(e)),r)}function vn(e,t,r,n){var i=cn(e,null!=t?t:Y(s(e)),n);return i.typeExpression=r,i}function bn(e,t){return cn(317,e,t)}function kn(e,t){var r=N(314);return r.comment=e,r.tags=oi(t),r}function xn(e,t,r){var n=N(276);return n.openingElement=e,n.children=A(t),n.closingElement=r,n.transformFlags|=u(n.openingElement)|d(n.children)|u(n.closingElement)|2,n}function En(e,t,r){var n=N(277);return n.tagName=e,n.typeArguments=oi(t),n.attributes=r,n.transformFlags|=u(n.tagName)|d(n.typeArguments)|u(n.attributes)|2,n.typeArguments&&(n.transformFlags|=1),n}function Sn(e,t,r){var n=N(278);return n.tagName=e,n.typeArguments=oi(t),n.attributes=r,n.transformFlags|=u(n.tagName)|d(n.typeArguments)|u(n.attributes)|2,t&&(n.transformFlags|=1),n}function Dn(e){var t=N(279);return t.tagName=e,t.transformFlags|=2|u(t.tagName),t}function wn(e,t,r){var n=N(280);return n.openingFragment=e,n.children=A(t),n.closingFragment=r,n.transformFlags|=u(n.openingFragment)|d(n.children)|u(n.closingFragment)|2,n}function Tn(e,t){var r=N(11);return r.text=e,r.containsOnlyTriviaWhiteSpaces=!!t,r.transformFlags|=2,r}function Cn(e,t){var r=N(283);return r.name=e,r.initializer=t,r.transformFlags|=u(r.name)|u(r.initializer)|2,r}function An(e){var t=N(284);return t.properties=A(e),t.transformFlags|=2|d(t.properties),t}function Nn(e){var t=N(285);return t.expression=e,t.transformFlags|=2|u(t.expression),t}function Pn(e,t){var r=N(286);return r.dotDotDotToken=e,r.expression=t,r.transformFlags|=u(r.dotDotDotToken)|u(r.expression)|2,r}function In(e,t){var r=N(287);return r.expression=g().parenthesizeExpressionForDisallowedComma(e),r.statements=A(t),r.transformFlags|=u(r.expression)|d(r.statements),r}function Fn(e){var t=N(288);return t.statements=A(e),t.transformFlags=d(t.statements),t}function On(t,r){var n=N(289);switch(n.token=t,n.types=A(r),n.transformFlags|=d(n.types),t){case 94:n.transformFlags|=256;break;case 117:n.transformFlags|=1;break;default:return e.Debug.assertNever(t)}return n}function Rn(t,r){var n=N(290);return t=e.isString(t)?br(t,void 0,void 0,void 0):t,n.variableDeclaration=t,n.block=r,n.transformFlags|=u(n.variableDeclaration)|u(n.block),t||(n.transformFlags|=16),n}function Mn(e,t){var r=I(291,void 0,void 0,e);return r.initializer=g().parenthesizeExpressionForDisallowedComma(t),r.transformFlags|=u(r.name)|u(r.initializer),r}function Ln(e,t){var r=I(292,void 0,void 0,e);return r.objectAssignmentInitializer=t&&g().parenthesizeExpressionForDisallowedComma(t),r.transformFlags|=256|u(r.objectAssignmentInitializer),r}function jn(e){var t=N(293);return t.expression=g().parenthesizeExpressionForDisallowedComma(e),t.transformFlags|=16416|u(t.expression),t}function Bn(e,t){var r=N(294);return r.name=si(e),r.initializer=t&&g().parenthesizeExpressionForDisallowedComma(t),r.transformFlags|=u(r.name)|u(r.initializer)|1,r}function zn(t,r){void 0===r&&(r=e.emptyArray);var n=N(301);return n.prepends=r,n.sourceFiles=t,n}function Un(e,t){var r=N(e);return r.data=t,r}function qn(t,r){var n=N(339);return n.expression=t,n.original=r,n.transformFlags|=1|u(n.expression),e.setTextRange(n,r),n}function Jn(e,t){return e.expression!==t?m(qn(t,e.original),e):e}function Vn(t){if(e.nodeIsSynthesized(t)&&!e.isParseTreeNode(t)&&!t.original&&!t.emitNode&&!t.id){if(e.isCommaListExpression(t))return t.elements;if(e.isBinaryExpression(t)&&e.isCommaToken(t.operatorToken))return[t.left,t.right]}return t}function Hn(t){var r=N(340);return r.elements=A(e.sameFlatMap(t,Vn)),r.transformFlags|=d(r.elements),r}function Kn(e,t){var r=N(343);return r.expression=e,r.thisArg=t,r.transformFlags|=u(r.expression)|u(r.thisArg),r}function Wn(t){if(void 0===t)return t;var r=e.isSourceFile(t)?f.createBaseSourceFileNode(300):e.isIdentifier(t)?f.createBaseIdentifierNode(78):e.isPrivateIdentifier(t)?f.createBasePrivateIdentifierNode(79):e.isNodeKind(t.kind)?f.createBaseNode(t.kind):f.createBaseTokenNode(t.kind);for(var n in r.flags|=-9&t.flags,r.transformFlags=t.transformFlags,y(r,t),t)!r.hasOwnProperty(n)&&t.hasOwnProperty(n)&&(r[n]=t[n]);return r}function Gn(){return Pt(J("0"))}function $n(e,t,r){return gt(lt(e,t),void 0,r)}function Yn(e,t,r){return $n(Y(e),t,r)}function Xn(e,t,r){return!!r&&(e.push(Mn(t,r)),!0)}function Qn(t,r){var n=e.skipParentheses(t);switch(n.kind){case 78:return r;case 108:case 8:case 9:case 10:return!1;case 200:return 0!==n.elements.length;case 201:return n.properties.length>0;default:return!0}}function Zn(t,r,n,i){void 0===i&&(i=0);var a=e.getNameOfDeclaration(t);if(a&&e.isIdentifier(a)&&!e.isGeneratedIdentifier(a)){var o=e.setParent(e.setTextRange(Wn(a),a),a.parent);return i|=e.getEmitFlags(a),n||(i|=48),r||(i|=1536),i&&e.setEmitFlags(o,i),o}return Q(t)}function ei(e,t,r){return Zn(e,t,r,8192)}function ti(t,r,n,i){var a=lt(t,e.nodeIsSynthesized(r)?r:Wn(r));e.setTextRange(a,r);var o=0;return i||(o|=48),n||(o|=1536),o&&e.setEmitFlags(a,o),a}function ri(){return e.startOnNewLine(ir(K("use strict")))}function ni(t,r,n){e.Debug.assert(0===r.length,"Prologue directives should be at the first statement in the target statements array");for(var i,a=!1,o=0,s=t.length;o<s;){var c=t[o];if(!e.isPrologueDirective(c))break;i=c,e.isStringLiteral(i.expression)&&"use strict"===i.expression.text&&(a=!0),r.push(c),o++}return n&&!a&&r.push(ri()),o}function ii(t,r,n,i,a){void 0===a&&(a=e.returnTrue);for(var o=t.length;void 0!==n&&n<o;){var s=t[n];if(!(1048576&e.getEmitFlags(s)&&a(s)))break;e.append(r,i?e.visitNode(s,i,e.isStatement):s),n++}return n}function ai(e,t,r){for(var n=r;n<e.length&&t(e[n]);)n++;return n}function oi(e){return e?A(e):void 0}function si(e){return"string"==typeof e?Y(e):e}function ci(e){return"string"==typeof e?K(e):"number"==typeof e?J(e):"boolean"==typeof e?e?re():ne():e}function li(t){return t&&e.isNotEmittedStatement(t)?e.setTextRange(y(nr(),t),t):t}}function a(t,r){return t!==r&&e.setTextRange(t,r),t}function o(t,r){return t!==r&&(y(t,r),e.setTextRange(t,r)),t}function s(t){switch(t){case 332:return"type";case 330:return"returns";case 331:return"this";case 328:return"enum";case 320:return"author";case 322:return"class";case 323:return"public";case 324:return"private";case 325:return"protected";case 326:return"readonly";case 333:return"template";case 334:return"typedef";case 329:return"param";case 336:return"prop";case 327:return"callback";case 318:return"augments";case 319:return"implements";default:return e.Debug.fail("Unsupported kind: "+e.Debug.formatSyntaxKind(t))}}!function(e){e[e.None=0]="None",e[e.NoParenthesizerRules=1]="NoParenthesizerRules",e[e.NoNodeConverters=2]="NoNodeConverters",e[e.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",e[e.NoOriginalNode=8]="NoOriginalNode"}(e.NodeFactoryFlags||(e.NodeFactoryFlags={})),e.createNodeFactory=n;var c={};function l(e){return-8388609&u(e)}function u(t){if(!t)return 0;var r,n=t.transformFlags&~f(t.kind);return e.isNamedDeclaration(t)&&e.isPropertyName(t.name)?(r=t.name,n|4096&r.transformFlags):n}function d(e){return e?e.transformFlags:0}function p(e){for(var t=0,r=0,n=e;r<n.length;r++){t|=u(n[r])}e.transformFlags=t}function f(e){if(e>=173&&e<=196)return-2;switch(e){case 204:case 205:case 200:case 197:case 198:return 536879104;case 259:return 546379776;case 161:case 207:case 226:case 339:case 208:case 106:case 202:case 203:default:return 536870912;case 210:return 547309568;case 209:case 253:return 547313664;case 252:return 537018368;case 254:case 223:return 536905728;case 167:return 547311616;case 164:return 536875008;case 166:case 168:case 169:return 538923008;case 129:case 145:case 156:case 142:case 148:case 146:case 132:case 149:case 114:case 160:case 163:case 165:case 170:case 171:case 172:case 256:case 257:return-2;case 201:return 536922112;case 290:return 536887296}}e.getTransformFlagsSubtreeExclusions=f;var m=e.createBaseNodeFactory();function g(e){return e.flags|=8,e}var _,h={createBaseSourceFileNode:function(e){return g(m.createBaseSourceFileNode(e))},createBaseIdentifierNode:function(e){return g(m.createBaseIdentifierNode(e))},createBasePrivateIdentifierNode:function(e){return g(m.createBasePrivateIdentifierNode(e))},createBaseTokenNode:function(e){return g(m.createBaseTokenNode(e))},createBaseNode:function(e){return g(m.createBaseNode(e))}};function y(t,r){if(t.original=r,r){var n=r.emitNode;n&&(t.emitNode=function(t,r){var n=t.flags,i=t.leadingComments,a=t.trailingComments,o=t.commentRange,s=t.sourceMapRange,c=t.tokenSourceMapRanges,l=t.constantValue,u=t.helpers,d=t.startsOnNewLine;r||(r={});i&&(r.leadingComments=e.addRange(i.slice(),r.leadingComments));a&&(r.trailingComments=e.addRange(a.slice(),r.trailingComments));n&&(r.flags=n);o&&(r.commentRange=o);s&&(r.sourceMapRange=s);c&&(r.tokenSourceMapRanges=function(e,t){t||(t=[]);for(var r in e)t[r]=e[r];return t}(c,r.tokenSourceMapRanges));void 0!==l&&(r.constantValue=l);if(u)for(var p=0,f=u;p<f.length;p++){var m=f[p];r.helpers=e.appendIfUnique(r.helpers,m)}void 0!==d&&(r.startsOnNewLine=d);return r}(n,t.emitNode))}return t}e.factory=n(4,h),e.createUnparsedSourceFile=function(t,r,n){var i,a,o,s,c,l,u,d,p,f;e.isString(t)?(o="",s=t,c=t.length,l=r,u=n):(e.Debug.assert("js"===r||"dts"===r),o=("js"===r?t.javascriptPath:t.declarationPath)||"",l="js"===r?t.javascriptMapPath:t.declarationMapPath,d=function(){return"js"===r?t.javascriptText:t.declarationText},p=function(){return"js"===r?t.javascriptMapText:t.declarationMapText},c=function(){return d().length},t.buildInfo&&t.buildInfo.bundle&&(e.Debug.assert(void 0===n||"boolean"==typeof n),i=n,a="js"===r?t.buildInfo.bundle.js:t.buildInfo.bundle.dts,f=t.oldFileOfCurrentEmit));var m=f?function(t){for(var r,n,i=0,a=t.sections;i<a.length;i++){var o=a[i];switch(o.kind){case"internal":case"text":r=e.append(r,e.setTextRange(e.factory.createUnparsedTextLike(o.data,"internal"===o.kind),o));break;case"no-default-lib":case"reference":case"type":case"lib":n=e.append(n,e.setTextRange(e.factory.createUnparsedSyntheticReference(o),o));break;case"prologue":case"emitHelpers":case"prepend":break;default:e.Debug.assertNever(o)}}var s=e.factory.createUnparsedSource(e.emptyArray,n,null!=r?r:e.emptyArray);return e.setEachParent(n,s),e.setEachParent(r,s),s.helpers=e.map(t.sources&&t.sources.helpers,(function(t){return e.getAllUnscopedEmitHelpers().get(t)})),s}(e.Debug.assertDefined(a)):function(t,r,n){for(var i,a,o,s,c,l,u,d,p=0,f=t?t.sections:e.emptyArray;p<f.length;p++){var m=f[p];switch(m.kind){case"prologue":i=e.append(i,e.setTextRange(e.factory.createUnparsedPrologue(m.data),m));break;case"emitHelpers":a=e.append(a,e.getAllUnscopedEmitHelpers().get(m.data));break;case"no-default-lib":d=!0;break;case"reference":o=e.append(o,{pos:-1,end:-1,fileName:m.data});break;case"type":s=e.append(s,m.data);break;case"lib":c=e.append(c,{pos:-1,end:-1,fileName:m.data});break;case"prepend":for(var g=void 0,_=0,h=m.texts;_<h.length;_++){var y=h[_];r&&"internal"===y.kind||(g=e.append(g,e.setTextRange(e.factory.createUnparsedTextLike(y.data,"internal"===y.kind),y)))}l=e.addRange(l,g),u=e.append(u,e.factory.createUnparsedPrepend(m.data,null!=g?g:e.emptyArray));break;case"internal":if(r){u||(u=[]);break}case"text":u=e.append(u,e.setTextRange(e.factory.createUnparsedTextLike(m.data,"internal"===m.kind),m));break;default:e.Debug.assertNever(m)}}if(!u){var v=e.factory.createUnparsedTextLike(void 0,!1);e.setTextRangePosWidth(v,0,"function"==typeof n?n():n),u=[v]}var b=e.parseNodeFactory.createUnparsedSource(null!=i?i:e.emptyArray,void 0,u);return e.setEachParent(i,b),e.setEachParent(u,b),e.setEachParent(l,b),b.hasNoDefaultLib=d,b.helpers=a,b.referencedFiles=o||e.emptyArray,b.typeReferenceDirectives=s,b.libReferenceDirectives=c||e.emptyArray,b}(a,i,c);return m.fileName=o,m.sourceMapPath=l,m.oldFileOfCurrentEmit=f,d&&p?(Object.defineProperty(m,"text",{get:d}),Object.defineProperty(m,"sourceMapText",{get:p})):(e.Debug.assert(!f),m.text=null!=s?s:"",m.sourceMapText=u),m},e.createInputFiles=function(t,r,n,i,a,o,s,c,l,u,d){var p=e.parseNodeFactory.createInputFiles();if(e.isString(t))p.javascriptText=t,p.javascriptMapPath=n,p.javascriptMapText=i,p.declarationText=r,p.declarationMapPath=a,p.declarationMapText=o,p.javascriptPath=s,p.declarationPath=c,p.buildInfoPath=l,p.buildInfo=u,p.oldFileOfCurrentEmit=d;else{var f,m=new e.Map,g=function(e){if(void 0!==e){var r=m.get(e);return void 0===r&&(r=t(e),m.set(e,void 0!==r&&r)),!1!==r?r:void 0}},_=function(e){var t=g(e);return void 0!==t?t:"/* Input file "+e+" was missing */\r\n"};p.javascriptPath=r,p.javascriptMapPath=n,p.declarationPath=e.Debug.assertDefined(i),p.declarationMapPath=a,p.buildInfoPath=o,Object.defineProperties(p,{javascriptText:{get:function(){return _(r)}},javascriptMapText:{get:function(){return g(n)}},declarationText:{get:function(){return _(e.Debug.assertDefined(i))}},declarationMapText:{get:function(){return g(a)}},buildInfo:{get:function(){return function(t){if(void 0===f){var r=t();f=void 0!==r&&e.getBuildInfo(r)}return f||void 0}((function(){return g(o)}))}}})}return p},e.createSourceMapSource=function(t,r,n){return new(_||(_=e.objectAllocator.getSourceMapSourceConstructor()))(t,r,n)},e.setOriginalNode=y}(d||(d={})),function(e){function t(r){var n;if(!r.emitNode){if(e.isParseTreeNode(r)){if(300===r.kind)return r.emitNode={annotatedNodes:[r]};t(null!==(n=e.getSourceFileOfNode(e.getParseTreeNode(e.getSourceFileOfNode(r))))&&void 0!==n?n:e.Debug.fail("Could not determine parsed source file.")).annotatedNodes.push(r)}r.emitNode={}}return r.emitNode}function r(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.leadingComments}function n(e,r){return t(e).leadingComments=r,e}function i(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.trailingComments}function a(e,r){return t(e).trailingComments=r,e}e.getOrCreateEmitNode=t,e.disposeEmitNodes=function(t){var r,n,i=null===(n=null===(r=e.getSourceFileOfNode(e.getParseTreeNode(t)))||void 0===r?void 0:r.emitNode)||void 0===n?void 0:n.annotatedNodes;if(i)for(var a=0,o=i;a<o.length;a++){o[a].emitNode=void 0}},e.removeAllComments=function(e){var r=t(e);return r.flags|=1536,r.leadingComments=void 0,r.trailingComments=void 0,e},e.setEmitFlags=function(e,r){return t(e).flags=r,e},e.addEmitFlags=function(e,r){var n=t(e);return n.flags=n.flags|r,e},e.getSourceMapRange=function(e){var t,r;return null!==(r=null===(t=e.emitNode)||void 0===t?void 0:t.sourceMapRange)&&void 0!==r?r:e},e.setSourceMapRange=function(e,r){return t(e).sourceMapRange=r,e},e.getTokenSourceMapRange=function(e,t){var r,n;return null===(n=null===(r=e.emitNode)||void 0===r?void 0:r.tokenSourceMapRanges)||void 0===n?void 0:n[t]},e.setTokenSourceMapRange=function(e,r,n){var i,a=t(e);return(null!==(i=a.tokenSourceMapRanges)&&void 0!==i?i:a.tokenSourceMapRanges=[])[r]=n,e},e.getStartsOnNewLine=function(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.startsOnNewLine},e.setStartsOnNewLine=function(e,r){return t(e).startsOnNewLine=r,e},e.getCommentRange=function(e){var t,r;return null!==(r=null===(t=e.emitNode)||void 0===t?void 0:t.commentRange)&&void 0!==r?r:e},e.setCommentRange=function(e,r){return t(e).commentRange=r,e},e.getSyntheticLeadingComments=r,e.setSyntheticLeadingComments=n,e.addSyntheticLeadingComment=function(t,i,a,o){return n(t,e.append(r(t),{kind:i,pos:-1,end:-1,hasTrailingNewLine:o,text:a}))},e.getSyntheticTrailingComments=i,e.setSyntheticTrailingComments=a,e.addSyntheticTrailingComment=function(t,r,n,o){return a(t,e.append(i(t),{kind:r,pos:-1,end:-1,hasTrailingNewLine:o,text:n}))},e.moveSyntheticComments=function(e,o){n(e,r(o)),a(e,i(o));var s=t(o);return s.leadingComments=void 0,s.trailingComments=void 0,e},e.getConstantValue=function(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.constantValue},e.setConstantValue=function(e,r){return t(e).constantValue=r,e},e.addEmitHelper=function(r,n){var i=t(r);return i.helpers=e.append(i.helpers,n),r},e.addEmitHelpers=function(r,n){if(e.some(n))for(var i=t(r),a=0,o=n;a<o.length;a++){var s=o[a];i.helpers=e.appendIfUnique(i.helpers,s)}return r},e.removeEmitHelper=function(t,r){var n,i=null===(n=t.emitNode)||void 0===n?void 0:n.helpers;return!!i&&e.orderedRemoveItem(i,r)},e.getEmitHelpers=function(e){var t;return null===(t=e.emitNode)||void 0===t?void 0:t.helpers},e.moveEmitHelpers=function(r,n,i){var a=r.emitNode,o=a&&a.helpers;if(e.some(o)){for(var s=t(n),c=0,l=0;l<o.length;l++){var u=o[l];i(u)?(c++,s.helpers=e.appendIfUnique(s.helpers,u)):c>0&&(o[l-c]=u)}c>0&&(o.length-=c)}},e.ignoreSourceNewlines=function(e){return t(e).flags|=134217728,e}}(d||(d={})),function(e){function t(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return function(r){for(var n="",i=0;i<t.length;i++)n+=e[i],n+=r(t[i]);return n+=e[e.length-1]}}var r;e.createEmitHelperFactory=function(t){var r=t.factory;return{getUnscopedHelperName:n,createDecorateHelper:function(i,a,o,s){t.requestEmitHelper(e.decorateHelper);var c=[];c.push(r.createArrayLiteralExpression(i,!0)),c.push(a),o&&(c.push(o),s&&c.push(s));return r.createCallExpression(n("__decorate"),void 0,c)},createMetadataHelper:function(i,a){return t.requestEmitHelper(e.metadataHelper),r.createCallExpression(n("__metadata"),void 0,[r.createStringLiteral(i),a])},createParamHelper:function(i,a,o){return t.requestEmitHelper(e.paramHelper),e.setTextRange(r.createCallExpression(n("__param"),void 0,[r.createNumericLiteral(a+""),i]),o)},createAssignHelper:function(i){if(t.getCompilerOptions().target>=2)return r.createCallExpression(r.createPropertyAccessExpression(r.createIdentifier("Object"),"assign"),void 0,i);return t.requestEmitHelper(e.assignHelper),r.createCallExpression(n("__assign"),void 0,i)},createAwaitHelper:function(i){return t.requestEmitHelper(e.awaitHelper),r.createCallExpression(n("__await"),void 0,[i])},createAsyncGeneratorHelper:function(i,a){return t.requestEmitHelper(e.awaitHelper),t.requestEmitHelper(e.asyncGeneratorHelper),(i.emitNode||(i.emitNode={})).flags|=786432,r.createCallExpression(n("__asyncGenerator"),void 0,[a?r.createThis():r.createVoidZero(),r.createIdentifier("arguments"),i])},createAsyncDelegatorHelper:function(i){return t.requestEmitHelper(e.awaitHelper),t.requestEmitHelper(e.asyncDelegator),r.createCallExpression(n("__asyncDelegator"),void 0,[i])},createAsyncValuesHelper:function(i){return t.requestEmitHelper(e.asyncValues),r.createCallExpression(n("__asyncValues"),void 0,[i])},createRestHelper:function(i,a,o,s){t.requestEmitHelper(e.restHelper);for(var c=[],l=0,u=0;u<a.length-1;u++){var d=e.getPropertyNameOfBindingOrAssignmentElement(a[u]);if(d)if(e.isComputedPropertyName(d)){e.Debug.assertIsDefined(o,"Encountered computed property name but 'computedTempVariables' argument was not provided.");var p=o[l];l++,c.push(r.createConditionalExpression(r.createTypeCheck(p,"symbol"),void 0,p,void 0,r.createAdd(p,r.createStringLiteral(""))))}else c.push(r.createStringLiteralFromNode(d))}return r.createCallExpression(n("__rest"),void 0,[i,e.setTextRange(r.createArrayLiteralExpression(c),s)])},createAwaiterHelper:function(i,a,o,s){t.requestEmitHelper(e.awaiterHelper);var c=r.createFunctionExpression(void 0,r.createToken(41),void 0,void 0,[],void 0,s);return(c.emitNode||(c.emitNode={})).flags|=786432,r.createCallExpression(n("__awaiter"),void 0,[i?r.createThis():r.createVoidZero(),a?r.createIdentifier("arguments"):r.createVoidZero(),o?e.createExpressionFromEntityName(r,o):r.createVoidZero(),c])},createExtendsHelper:function(i){return t.requestEmitHelper(e.extendsHelper),r.createCallExpression(n("__extends"),void 0,[i,r.createUniqueName("_super",48)])},createTemplateObjectHelper:function(i,a){return t.requestEmitHelper(e.templateObjectHelper),r.createCallExpression(n("__makeTemplateObject"),void 0,[i,a])},createSpreadArrayHelper:function(i,a){return t.requestEmitHelper(e.spreadArrayHelper),r.createCallExpression(n("__spreadArray"),void 0,[i,a])},createValuesHelper:function(i){return t.requestEmitHelper(e.valuesHelper),r.createCallExpression(n("__values"),void 0,[i])},createReadHelper:function(i,a){return t.requestEmitHelper(e.readHelper),r.createCallExpression(n("__read"),void 0,void 0!==a?[i,r.createNumericLiteral(a+"")]:[i])},createGeneratorHelper:function(i){return t.requestEmitHelper(e.generatorHelper),r.createCallExpression(n("__generator"),void 0,[r.createThis(),i])},createCreateBindingHelper:function(a,o,s){return t.requestEmitHelper(e.createBindingHelper),r.createCallExpression(n("__createBinding"),void 0,i([r.createIdentifier("exports"),a,o],s?[s]:[]))},createImportStarHelper:function(i){return t.requestEmitHelper(e.importStarHelper),r.createCallExpression(n("__importStar"),void 0,[i])},createImportStarCallbackHelper:function(){return t.requestEmitHelper(e.importStarHelper),n("__importStar")},createImportDefaultHelper:function(i){return t.requestEmitHelper(e.importDefaultHelper),r.createCallExpression(n("__importDefault"),void 0,[i])},createExportStarHelper:function(i,a){void 0===a&&(a=r.createIdentifier("exports"));return t.requestEmitHelper(e.exportStarHelper),t.requestEmitHelper(e.createBindingHelper),r.createCallExpression(n("__exportStar"),void 0,[i,a])},createClassPrivateFieldGetHelper:function(i,a){return t.requestEmitHelper(e.classPrivateFieldGetHelper),r.createCallExpression(n("__classPrivateFieldGet"),void 0,[i,a])},createClassPrivateFieldSetHelper:function(i,a,o){return t.requestEmitHelper(e.classPrivateFieldSetHelper),r.createCallExpression(n("__classPrivateFieldSet"),void 0,[i,a,o])}};function n(t){return e.setEmitFlags(r.createIdentifier(t),4098)}},e.compareEmitHelpers=function(t,r){return t===r||t.priority===r.priority?0:void 0===t.priority?1:void 0===r.priority?-1:e.compareValues(t.priority,r.priority)},e.helperString=t,e.decorateHelper={name:"typescript:decorate",importName:"__decorate",scoped:!1,priority:2,text:'\n var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n };'},e.metadataHelper={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:'\n var __metadata = (this && this.__metadata) || function (k, v) {\n if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);\n };'},e.paramHelper={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:"\n var __param = (this && this.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n };"},e.assignHelper={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:"\n var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n };"},e.awaitHelper={name:"typescript:await",importName:"__await",scoped:!1,text:"\n var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }"},e.asyncGeneratorHelper={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[e.awaitHelper],text:'\n var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume("next", value); }\n function reject(value) { resume("throw", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n };'},e.asyncDelegator={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[e.awaitHelper],text:'\n var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {\n var i, p;\n return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }\n };'},e.asyncValues={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:'\n var __asyncValues = (this && this.__asyncValues) || function (o) {\n if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n };'},e.restHelper={name:"typescript:rest",importName:"__rest",scoped:!1,text:'\n var __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === "function")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n };'},e.awaiterHelper={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:'\n var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n };'},e.extendsHelper={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:'\n var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n\n return function (d, b) {\n if (typeof b !== "function" && b !== null)\n throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n })();'},e.templateObjectHelper={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:'\n var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n };'},e.readHelper={name:"typescript:read",importName:"__read",scoped:!1,text:'\n var __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === "function" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i["return"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n };'},e.spreadArrayHelper={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:"\n var __spreadArray = (this && this.__spreadArray) || function (to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n };"},e.valuesHelper={name:"typescript:values",importName:"__values",scoped:!1,text:'\n var __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === "number") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");\n };'},e.generatorHelper={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:'\n var __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError("Generator is already executing.");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n };'},e.createBindingHelper={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:"\n var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n }) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n }));"},e.setModuleDefaultHelper={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:'\n var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, "default", { enumerable: true, value: v });\n }) : function(o, v) {\n o["default"] = v;\n });'},e.importStarHelper={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[e.createBindingHelper,e.setModuleDefaultHelper],priority:2,text:'\n var __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n };'},e.importDefaultHelper={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:'\n var __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { "default": mod };\n };'},e.exportStarHelper={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[e.createBindingHelper],priority:2,text:'\n var __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n };'},e.classPrivateFieldGetHelper={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:'\n var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, privateMap) {\n if (!privateMap.has(receiver)) {\n throw new TypeError("attempted to get private field on non-instance");\n }\n return privateMap.get(receiver);\n };'},e.classPrivateFieldSetHelper={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:'\n var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, privateMap, value) {\n if (!privateMap.has(receiver)) {\n throw new TypeError("attempted to set private field on non-instance");\n }\n privateMap.set(receiver, value);\n return value;\n };'},e.getAllUnscopedEmitHelpers=function(){return r||(r=e.arrayToMap([e.decorateHelper,e.metadataHelper,e.paramHelper,e.assignHelper,e.awaitHelper,e.asyncGeneratorHelper,e.asyncDelegator,e.asyncValues,e.restHelper,e.awaiterHelper,e.extendsHelper,e.templateObjectHelper,e.spreadArrayHelper,e.valuesHelper,e.readHelper,e.generatorHelper,e.importStarHelper,e.importDefaultHelper,e.exportStarHelper,e.classPrivateFieldGetHelper,e.classPrivateFieldSetHelper,e.createBindingHelper,e.setModuleDefaultHelper],(function(e){return e.name})))},e.asyncSuperHelper={name:"typescript:async-super",scoped:!0,text:t(o(["\n const "," = name => super[name];"],["\n const "," = name => super[name];"]),"_superIndex")},e.advancedAsyncSuperHelper={name:"typescript:advanced-async-super",scoped:!0,text:t(o(["\n const "," = (function (geti, seti) {\n const cache = Object.create(null);\n return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } });\n })(name => super[name], (name, value) => super[name] = value);"],["\n const "," = (function (geti, seti) {\n const cache = Object.create(null);\n return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } });\n })(name => super[name], (name, value) => super[name] = value);"]),"_superIndex")},e.isCallToHelper=function(t,r){return e.isCallExpression(t)&&e.isIdentifier(t.expression)&&4096&e.getEmitFlags(t.expression)&&t.expression.escapedText===r}}(d||(d={})),function(e){e.isNumericLiteral=function(e){return 8===e.kind},e.isBigIntLiteral=function(e){return 9===e.kind},e.isStringLiteral=function(e){return 10===e.kind},e.isJsxText=function(e){return 11===e.kind},e.isRegularExpressionLiteral=function(e){return 13===e.kind},e.isNoSubstitutionTemplateLiteral=function(e){return 14===e.kind},e.isTemplateHead=function(e){return 15===e.kind},e.isTemplateMiddle=function(e){return 16===e.kind},e.isTemplateTail=function(e){return 17===e.kind},e.isIdentifier=function(e){return 78===e.kind},e.isQualifiedName=function(e){return 158===e.kind},e.isComputedPropertyName=function(e){return 159===e.kind},e.isPrivateIdentifier=function(e){return 79===e.kind},e.isSuperKeyword=function(e){return 106===e.kind},e.isImportKeyword=function(e){return 100===e.kind},e.isCommaToken=function(e){return 27===e.kind},e.isQuestionToken=function(e){return 57===e.kind},e.isExclamationToken=function(e){return 53===e.kind},e.isTypeParameterDeclaration=function(e){return 160===e.kind},e.isParameter=function(e){return 161===e.kind},e.isDecorator=function(e){return 162===e.kind},e.isPropertySignature=function(e){return 163===e.kind},e.isPropertyDeclaration=function(e){return 164===e.kind},e.isMethodSignature=function(e){return 165===e.kind},e.isMethodDeclaration=function(e){return 166===e.kind},e.isConstructorDeclaration=function(e){return 167===e.kind},e.isGetAccessorDeclaration=function(e){return 168===e.kind},e.isSetAccessorDeclaration=function(e){return 169===e.kind},e.isCallSignatureDeclaration=function(e){return 170===e.kind},e.isConstructSignatureDeclaration=function(e){return 171===e.kind},e.isIndexSignatureDeclaration=function(e){return 172===e.kind},e.isTypePredicateNode=function(e){return 173===e.kind},e.isTypeReferenceNode=function(e){return 174===e.kind},e.isFunctionTypeNode=function(e){return 175===e.kind},e.isConstructorTypeNode=function(e){return 176===e.kind},e.isTypeQueryNode=function(e){return 177===e.kind},e.isTypeLiteralNode=function(e){return 178===e.kind},e.isArrayTypeNode=function(e){return 179===e.kind},e.isTupleTypeNode=function(e){return 180===e.kind},e.isNamedTupleMember=function(e){return 193===e.kind},e.isOptionalTypeNode=function(e){return 181===e.kind},e.isRestTypeNode=function(e){return 182===e.kind},e.isUnionTypeNode=function(e){return 183===e.kind},e.isIntersectionTypeNode=function(e){return 184===e.kind},e.isConditionalTypeNode=function(e){return 185===e.kind},e.isInferTypeNode=function(e){return 186===e.kind},e.isParenthesizedTypeNode=function(e){return 187===e.kind},e.isThisTypeNode=function(e){return 188===e.kind},e.isTypeOperatorNode=function(e){return 189===e.kind},e.isIndexedAccessTypeNode=function(e){return 190===e.kind},e.isMappedTypeNode=function(e){return 191===e.kind},e.isLiteralTypeNode=function(e){return 192===e.kind},e.isImportTypeNode=function(e){return 196===e.kind},e.isTemplateLiteralTypeSpan=function(e){return 195===e.kind},e.isTemplateLiteralTypeNode=function(e){return 194===e.kind},e.isObjectBindingPattern=function(e){return 197===e.kind},e.isArrayBindingPattern=function(e){return 198===e.kind},e.isBindingElement=function(e){return 199===e.kind},e.isArrayLiteralExpression=function(e){return 200===e.kind},e.isObjectLiteralExpression=function(e){return 201===e.kind},e.isPropertyAccessExpression=function(e){return 202===e.kind},e.isElementAccessExpression=function(e){return 203===e.kind},e.isCallExpression=function(e){return 204===e.kind},e.isNewExpression=function(e){return 205===e.kind},e.isTaggedTemplateExpression=function(e){return 206===e.kind},e.isTypeAssertionExpression=function(e){return 207===e.kind},e.isParenthesizedExpression=function(e){return 208===e.kind},e.isFunctionExpression=function(e){return 209===e.kind},e.isEtsComponentExpression=function(e){return 211===e.kind},e.isArrowFunction=function(e){return 210===e.kind},e.isDeleteExpression=function(e){return 212===e.kind},e.isTypeOfExpression=function(e){return 213===e.kind},e.isVoidExpression=function(e){return 214===e.kind},e.isAwaitExpression=function(e){return 215===e.kind},e.isPrefixUnaryExpression=function(e){return 216===e.kind},e.isPostfixUnaryExpression=function(e){return 217===e.kind},e.isBinaryExpression=function(e){return 218===e.kind},e.isConditionalExpression=function(e){return 219===e.kind},e.isTemplateExpression=function(e){return 220===e.kind},e.isYieldExpression=function(e){return 221===e.kind},e.isSpreadElement=function(e){return 222===e.kind},e.isClassExpression=function(e){return 223===e.kind},e.isOmittedExpression=function(e){return 224===e.kind},e.isExpressionWithTypeArguments=function(e){return 225===e.kind},e.isAsExpression=function(e){return 226===e.kind},e.isNonNullExpression=function(e){return 227===e.kind},e.isMetaProperty=function(e){return 228===e.kind},e.isSyntheticExpression=function(e){return 229===e.kind},e.isPartiallyEmittedExpression=function(e){return 339===e.kind},e.isCommaListExpression=function(e){return 340===e.kind},e.isTemplateSpan=function(e){return 230===e.kind},e.isSemicolonClassElement=function(e){return 231===e.kind},e.isBlock=function(e){return 232===e.kind},e.isVariableStatement=function(e){return 234===e.kind},e.isEmptyStatement=function(e){return 233===e.kind},e.isExpressionStatement=function(e){return 235===e.kind},e.isIfStatement=function(e){return 236===e.kind},e.isDoStatement=function(e){return 237===e.kind},e.isWhileStatement=function(e){return 238===e.kind},e.isForStatement=function(e){return 239===e.kind},e.isForInStatement=function(e){return 240===e.kind},e.isForOfStatement=function(e){return 241===e.kind},e.isContinueStatement=function(e){return 242===e.kind},e.isBreakStatement=function(e){return 243===e.kind},e.isReturnStatement=function(e){return 244===e.kind},e.isWithStatement=function(e){return 245===e.kind},e.isSwitchStatement=function(e){return 246===e.kind},e.isLabeledStatement=function(e){return 247===e.kind},e.isThrowStatement=function(e){return 248===e.kind},e.isTryStatement=function(e){return 249===e.kind},e.isDebuggerStatement=function(e){return 250===e.kind},e.isVariableDeclaration=function(e){return 251===e.kind},e.isVariableDeclarationList=function(e){return 252===e.kind},e.isFunctionDeclaration=function(e){return 253===e.kind},e.isClassDeclaration=function(e){return 254===e.kind},e.isStructDeclaration=function(e){return 255===e.kind},e.isInterfaceDeclaration=function(e){return 256===e.kind},e.isTypeAliasDeclaration=function(e){return 257===e.kind},e.isEnumDeclaration=function(e){return 258===e.kind},e.isModuleDeclaration=function(e){return 259===e.kind},e.isModuleBlock=function(e){return 260===e.kind},e.isCaseBlock=function(e){return 261===e.kind},e.isNamespaceExportDeclaration=function(e){return 262===e.kind},e.isImportEqualsDeclaration=function(e){return 263===e.kind},e.isImportDeclaration=function(e){return 264===e.kind},e.isImportClause=function(e){return 265===e.kind},e.isNamespaceImport=function(e){return 266===e.kind},e.isNamespaceExport=function(e){return 272===e.kind},e.isNamedImports=function(e){return 267===e.kind},e.isImportSpecifier=function(e){return 268===e.kind},e.isExportAssignment=function(e){return 269===e.kind},e.isExportDeclaration=function(e){return 270===e.kind},e.isNamedExports=function(e){return 271===e.kind},e.isExportSpecifier=function(e){return 273===e.kind},e.isMissingDeclaration=function(e){return 274===e.kind},e.isNotEmittedStatement=function(e){return 338===e.kind},e.isSyntheticReference=function(e){return 343===e.kind},e.isMergeDeclarationMarker=function(e){return 341===e.kind},e.isEndOfDeclarationMarker=function(e){return 342===e.kind},e.isExternalModuleReference=function(e){return 275===e.kind},e.isJsxElement=function(e){return 276===e.kind},e.isJsxSelfClosingElement=function(e){return 277===e.kind},e.isJsxOpeningElement=function(e){return 278===e.kind},e.isJsxClosingElement=function(e){return 279===e.kind},e.isJsxFragment=function(e){return 280===e.kind},e.isJsxOpeningFragment=function(e){return 281===e.kind},e.isJsxClosingFragment=function(e){return 282===e.kind},e.isJsxAttribute=function(e){return 283===e.kind},e.isJsxAttributes=function(e){return 284===e.kind},e.isJsxSpreadAttribute=function(e){return 285===e.kind},e.isJsxExpression=function(e){return 286===e.kind},e.isCaseClause=function(e){return 287===e.kind},e.isDefaultClause=function(e){return 288===e.kind},e.isHeritageClause=function(e){return 289===e.kind},e.isCatchClause=function(e){return 290===e.kind},e.isPropertyAssignment=function(e){return 291===e.kind},e.isShorthandPropertyAssignment=function(e){return 292===e.kind},e.isSpreadAssignment=function(e){return 293===e.kind},e.isEnumMember=function(e){return 294===e.kind},e.isUnparsedPrepend=function(e){return 296===e.kind},e.isSourceFile=function(e){return 300===e.kind},e.isBundle=function(e){return 301===e.kind},e.isUnparsedSource=function(e){return 302===e.kind},e.isJSDocTypeExpression=function(e){return 304===e.kind},e.isJSDocNameReference=function(e){return 305===e.kind},e.isJSDocAllType=function(e){return 306===e.kind},e.isJSDocUnknownType=function(e){return 307===e.kind},e.isJSDocNullableType=function(e){return 308===e.kind},e.isJSDocNonNullableType=function(e){return 309===e.kind},e.isJSDocOptionalType=function(e){return 310===e.kind},e.isJSDocFunctionType=function(e){return 311===e.kind},e.isJSDocVariadicType=function(e){return 312===e.kind},e.isJSDocNamepathType=function(e){return 313===e.kind},e.isJSDoc=function(e){return 314===e.kind},e.isJSDocTypeLiteral=function(e){return 315===e.kind},e.isJSDocSignature=function(e){return 316===e.kind},e.isJSDocAugmentsTag=function(e){return 318===e.kind},e.isJSDocAuthorTag=function(e){return 320===e.kind},e.isJSDocClassTag=function(e){return 322===e.kind},e.isJSDocCallbackTag=function(e){return 327===e.kind},e.isJSDocPublicTag=function(e){return 323===e.kind},e.isJSDocPrivateTag=function(e){return 324===e.kind},e.isJSDocProtectedTag=function(e){return 325===e.kind},e.isJSDocReadonlyTag=function(e){return 326===e.kind},e.isJSDocDeprecatedTag=function(e){return 321===e.kind},e.isJSDocSeeTag=function(e){return 335===e.kind},e.isJSDocEnumTag=function(e){return 328===e.kind},e.isJSDocParameterTag=function(e){return 329===e.kind},e.isJSDocReturnTag=function(e){return 330===e.kind},e.isJSDocThisTag=function(e){return 331===e.kind},e.isJSDocTypeTag=function(e){return 332===e.kind},e.isJSDocTemplateTag=function(e){return 333===e.kind},e.isJSDocTypedefTag=function(e){return 334===e.kind},e.isJSDocUnknownTag=function(e){return 317===e.kind},e.isJSDocPropertyTag=function(e){return 336===e.kind},e.isJSDocImplementsTag=function(e){return 319===e.kind},e.isSyntaxList=function(e){return 337===e.kind}}(d||(d={})),function(e){function t(t,r,n,i){if(e.isComputedPropertyName(n))return e.setTextRange(t.createElementAccessExpression(r,n.expression),i);var a=e.setTextRange(e.isIdentifierOrPrivateIdentifier(n)?t.createPropertyAccessExpression(r,n):t.createElementAccessExpression(r,n),n);return e.getOrCreateEmitNode(a).flags|=64,a}function r(t,r){var n=e.parseNodeFactory.createIdentifier(t||"React");return e.setParent(n,e.getParseTreeNode(r)),n}function n(t,i,a){if(e.isQualifiedName(i)){var o=n(t,i.left,a),s=t.createIdentifier(e.idText(i.right));return s.escapedText=i.right.escapedText,t.createPropertyAccessExpression(o,s)}return r(e.idText(i),a)}function a(e,t,i,a){return t?n(e,t,a):e.createPropertyAccessExpression(r(i,a),"createElement")}function o(t,r){return e.isIdentifier(r)?t.createStringLiteralFromNode(r):e.isComputedPropertyName(r)?e.setParent(e.setTextRange(t.cloneNode(r.expression),r.expression),r.expression.parent):e.setParent(e.setTextRange(t.cloneNode(r),r),r.parent)}function s(t){return e.isStringLiteral(t.expression)&&"use strict"===t.expression.text}function c(e,t){switch(void 0===t&&(t=15),e.kind){case 208:return 0!=(1&t);case 207:case 226:return 0!=(2&t);case 227:return 0!=(4&t);case 339:return 0!=(8&t)}return!1}function l(e,t){for(void 0===t&&(t=15);c(e,t);)e=e.expression;return e}function u(t){return e.setStartsOnNewLine(t,!0)}function d(t){var r=e.getOriginalNode(t,e.isSourceFile),n=r&&r.emitNode;return n&&n.externalHelpersModuleName}function p(t,r,n,i,a){if(n.importHelpers&&e.isEffectiveExternalModule(r,n)){var o=d(r);if(o)return o;var s=e.getEmitModuleKind(n),c=(i||n.esModuleInterop&&a)&&s!==e.ModuleKind.System&&s<e.ModuleKind.ES2015;if(!c){var l=e.getEmitHelpers(r);if(l)for(var u=0,p=l;u<p.length;u++){if(!p[u].scoped){c=!0;break}}}if(c){var f=e.getOriginalNode(r,e.isSourceFile),m=e.getOrCreateEmitNode(f);return m.externalHelpersModuleName||(m.externalHelpersModuleName=t.createUniqueName(e.externalHelpersModuleNameText))}}}function f(t,r,n,i){if(r)return r.moduleName?t.createStringLiteral(r.moduleName):!r.isDeclarationFile&&e.outFile(i)?t.createStringLiteral(e.getExternalModuleNameFromPath(n,r.fileName)):void 0}function m(t){if(e.isDeclarationBindingElement(t))return t.name;if(!e.isObjectLiteralElementLike(t))return e.isAssignmentExpression(t,!0)?m(t.left):e.isSpreadElement(t)?m(t.expression):t;switch(t.kind){case 291:return m(t.initializer);case 292:return t.name;case 293:return m(t.expression)}}function g(t){switch(t.kind){case 199:if(t.propertyName){var r=t.propertyName;return e.isPrivateIdentifier(r)?e.Debug.failBadSyntaxKind(r):e.isComputedPropertyName(r)&&_(r.expression)?r.expression:r}break;case 291:if(t.name){r=t.name;return e.isPrivateIdentifier(r)?e.Debug.failBadSyntaxKind(r):e.isComputedPropertyName(r)&&_(r.expression)?r.expression:r}break;case 293:return t.name&&e.isPrivateIdentifier(t.name)?e.Debug.failBadSyntaxKind(t.name):t.name}var n=m(t);if(n&&e.isPropertyName(n))return n}function _(e){var t=e.kind;return 10===t||8===t}e.createEmptyExports=function(e){return e.createExportDeclaration(void 0,void 0,!1,e.createNamedExports([]),void 0)},e.createMemberAccessForPropertyName=t,e.createJsxFactoryExpression=a,e.createExpressionForJsxElement=function(t,r,n,i,a,o){var s=[n];if(i&&s.push(i),a&&a.length>0)if(i||s.push(t.createNull()),a.length>1)for(var c=0,l=a;c<l.length;c++){var d=l[c];u(d),s.push(d)}else s.push(a[0]);return e.setTextRange(t.createCallExpression(r,void 0,s),o)},e.createExpressionForJsxFragment=function(t,i,o,s,c,l,d){var p=[function(e,t,i,a){return t?n(e,t,a):e.createPropertyAccessExpression(r(i,a),"Fragment")}(t,o,s,l),t.createNull()];if(c&&c.length>0)if(c.length>1)for(var f=0,m=c;f<m.length;f++){var g=m[f];u(g),p.push(g)}else p.push(c[0]);return e.setTextRange(t.createCallExpression(a(t,i,s,l),void 0,p),d)},e.createForOfBindingStatement=function(t,r,n){if(e.isVariableDeclarationList(r)){var i=e.first(r.declarations),a=t.updateVariableDeclaration(i,i.name,void 0,void 0,n);return e.setTextRange(t.createVariableStatement(void 0,t.updateVariableDeclarationList(r,[a])),r)}var o=e.setTextRange(t.createAssignment(r,n),r);return e.setTextRange(t.createExpressionStatement(o),r)},e.insertLeadingStatement=function(t,r,n){return e.isBlock(r)?t.updateBlock(r,e.setTextRange(t.createNodeArray(i([n],r.statements)),r.statements)):t.createBlock(t.createNodeArray([r,n]),!0)},e.createExpressionFromEntityName=function t(r,n){if(e.isQualifiedName(n)){var i=t(r,n.left),a=e.setParent(e.setTextRange(r.cloneNode(n.right),n.right),n.right.parent);return e.setTextRange(r.createPropertyAccessExpression(i,a),n)}return e.setParent(e.setTextRange(r.cloneNode(n),n),n.parent)},e.createExpressionForPropertyName=o,e.createExpressionForObjectLiteralElementLike=function(r,n,i,a){switch(i.name&&e.isPrivateIdentifier(i.name)&&e.Debug.failBadSyntaxKind(i.name,"Private identifiers are not allowed in object literals."),i.kind){case 168:case 169:return function(t,r,n,i,a){var s=e.getAllAccessorDeclarations(r,n),c=s.firstAccessor,l=s.getAccessor,u=s.setAccessor;if(n===c)return e.setTextRange(t.createObjectDefinePropertyCall(i,o(t,n.name),t.createPropertyDescriptor({enumerable:t.createFalse(),configurable:!0,get:l&&e.setTextRange(e.setOriginalNode(t.createFunctionExpression(l.modifiers,void 0,void 0,void 0,l.parameters,void 0,l.body),l),l),set:u&&e.setTextRange(e.setOriginalNode(t.createFunctionExpression(u.modifiers,void 0,void 0,void 0,u.parameters,void 0,u.body),u),u)},!a)),c)}(r,n.properties,i,a,!!n.multiLine);case 291:return function(r,n,i){return e.setOriginalNode(e.setTextRange(r.createAssignment(t(r,i,n.name,n.name),n.initializer),n),n)}(r,i,a);case 292:return function(r,n,i){return e.setOriginalNode(e.setTextRange(r.createAssignment(t(r,i,n.name,n.name),r.cloneNode(n.name)),n),n)}(r,i,a);case 166:return function(r,n,i){return e.setOriginalNode(e.setTextRange(r.createAssignment(t(r,i,n.name,n.name),e.setOriginalNode(e.setTextRange(r.createFunctionExpression(n.modifiers,n.asteriskToken,void 0,void 0,n.parameters,void 0,n.body),n),n)),n),n)}(r,i,a)}},e.isInternalName=function(t){return 0!=(32768&e.getEmitFlags(t))},e.isLocalName=function(t){return 0!=(16384&e.getEmitFlags(t))},e.isExportName=function(t){return 0!=(8192&e.getEmitFlags(t))},e.findUseStrictPrologue=function(t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(!e.isPrologueDirective(i))break;if(s(i))return i}},e.startsWithUseStrict=function(t){var r=e.firstOrUndefined(t);return void 0!==r&&e.isPrologueDirective(r)&&s(r)},e.isCommaSequence=function(e){return 218===e.kind&&27===e.operatorToken.kind||340===e.kind},e.isOuterExpression=c,e.skipOuterExpressions=l,e.skipAssertions=function(e){return l(e,6)},e.startOnNewLine=u,e.getExternalHelpersModuleName=d,e.hasRecordedExternalHelpers=function(t){var r=e.getOriginalNode(t,e.isSourceFile),n=r&&r.emitNode;return!(!n||!n.externalHelpersModuleName&&!n.externalHelpers)},e.createExternalHelpersImportDeclarationIfNeeded=function(t,r,n,i,a,o,s){if(i.importHelpers&&e.isEffectiveExternalModule(n,i)){var c=void 0,l=e.getEmitModuleKind(i);if(l>=e.ModuleKind.ES2015&&l<=e.ModuleKind.ESNext){var u=e.getEmitHelpers(n);if(u){for(var d=[],f=0,m=u;f<m.length;f++){var g=m[f];if(!g.scoped){var _=g.importName;_&&e.pushIfUnique(d,_)}}if(e.some(d)){d.sort(e.compareStringsCaseSensitive),c=t.createNamedImports(e.map(d,(function(i){return e.isFileLevelUniqueName(n,i)?t.createImportSpecifier(void 0,t.createIdentifier(i)):t.createImportSpecifier(t.createIdentifier(i),r.getUnscopedHelperName(i))})));var h=e.getOriginalNode(n,e.isSourceFile);e.getOrCreateEmitNode(h).externalHelpers=!0}}}else{var y=p(t,n,i,a,o||s);y&&(c=t.createNamespaceImport(y))}if(c){var v=t.createImportDeclaration(void 0,void 0,t.createImportClause(!1,void 0,c),t.createStringLiteral(e.externalHelpersModuleNameText));return e.addEmitFlags(v,67108864),v}}},e.getOrCreateExternalHelpersModuleNameIfNeeded=p,e.getLocalNameForExternalImport=function(t,r,n){var i=e.getNamespaceDeclarationNode(r);if(i&&!e.isDefaultImport(r)&&!e.isExportNamespaceAsDefaultDeclaration(r)){var a=i.name;return e.isGeneratedIdentifier(a)?a:t.createIdentifier(e.getSourceTextOfNodeFromSourceFile(n,a)||e.idText(a))}return 264===r.kind&&r.importClause||270===r.kind&&r.moduleSpecifier?t.getGeneratedNameForNode(r):void 0},e.getExternalModuleNameLiteral=function(t,r,n,i,a,o){var s=e.getExternalModuleName(r);if(s&&e.isStringLiteral(s))return function(e,t,r,n,i){return f(r,n.getExternalModuleFileFromDeclaration(e),t,i)}(r,i,t,a,o)||function(e,t,r){var n=r.renamedDependencies&&r.renamedDependencies.get(t.text);return n?e.createStringLiteral(n):void 0}(t,s,n)||t.cloneNode(s)},e.tryGetModuleNameFromFile=f,e.getInitializerOfBindingOrAssignmentElement=function t(r){if(e.isDeclarationBindingElement(r))return r.initializer;if(e.isPropertyAssignment(r)){var n=r.initializer;return e.isAssignmentExpression(n,!0)?n.right:void 0}return e.isShorthandPropertyAssignment(r)?r.objectAssignmentInitializer:e.isAssignmentExpression(r,!0)?r.right:e.isSpreadElement(r)?t(r.expression):void 0},e.getTargetOfBindingOrAssignmentElement=m,e.getRestIndicatorOfBindingOrAssignmentElement=function(e){switch(e.kind){case 161:case 199:return e.dotDotDotToken;case 222:case 293:return e}},e.getPropertyNameOfBindingOrAssignmentElement=function(t){var r=g(t);return e.Debug.assert(!!r||e.isSpreadAssignment(t),"Invalid property name for binding element."),r},e.tryGetPropertyNameOfBindingOrAssignmentElement=g,e.getElementsOfBindingOrAssignmentPattern=function(e){switch(e.kind){case 197:case 198:case 200:return e.elements;case 201:return e.properties}},e.getJSDocTypeAliasName=function(t){if(t)for(var r=t;;){if(e.isIdentifier(r)||!r.body)return e.isIdentifier(r)?r:r.name;r=r.body}},e.canHaveModifiers=function(e){var t=e.kind;return 161===t||163===t||164===t||165===t||166===t||167===t||168===t||169===t||172===t||209===t||210===t||223===t||234===t||253===t||254===t||255===t||256===t||257===t||258===t||259===t||263===t||264===t||269===t||270===t},e.isExportModifier=function(e){return 93===e.kind},e.isAsyncModifier=function(e){return 130===e.kind},e.isStaticModifier=function(e){return 124===e.kind}}(d||(d={})),function(e){e.setTextRange=function(t,r){return r?e.setTextRangePosEnd(t,r.pos,r.end):t}}(d||(d={})),function(e){var t,r,n,i,a,o,s,c,l,u;function d(e,t){return t&&e(t)}function p(e,t,r){if(r){if(t)return t(r);for(var n=0,i=r;n<i.length;n++){var a=e(i[n]);if(a)return a}}}function f(e,t){return 42===e.charCodeAt(t+1)&&42===e.charCodeAt(t+2)&&47!==e.charCodeAt(t+3)}function m(t,r,n){if(t&&!(t.kind<=157))switch(t.kind){case 158:return d(r,t.left)||d(r,t.right);case 160:return d(r,t.name)||d(r,t.constraint)||d(r,t.default)||d(r,t.expression);case 292:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.exclamationToken)||d(r,t.equalsToken)||d(r,t.objectAssignmentInitializer);case 293:case 208:case 212:case 213:case 214:case 215:case 227:case 222:case 235:case 244:case 248:case 162:case 159:case 275:case 285:case 339:return d(r,t.expression);case 161:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.dotDotDotToken)||d(r,t.name)||d(r,t.questionToken)||d(r,t.type)||d(r,t.initializer);case 164:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.exclamationToken)||d(r,t.type)||d(r,t.initializer);case 163:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.type)||d(r,t.initializer);case 291:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.questionToken)||d(r,t.initializer);case 251:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.exclamationToken)||d(r,t.type)||d(r,t.initializer);case 199:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.dotDotDotToken)||d(r,t.propertyName)||d(r,t.name)||d(r,t.initializer);case 175:case 176:case 170:case 171:case 172:return p(r,n,t.decorators)||p(r,n,t.modifiers)||p(r,n,t.typeParameters)||p(r,n,t.parameters)||d(r,t.type);case 211:return d(r,t.expression)||p(r,n,t.arguments)||d(r,t.body);case 166:case 165:case 167:case 168:case 169:case 209:case 253:case 210:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.asteriskToken)||d(r,t.name)||d(r,t.questionToken)||d(r,t.exclamationToken)||p(r,n,t.typeParameters)||p(r,n,t.parameters)||d(r,t.type)||d(r,t.equalsGreaterThanToken)||d(r,t.body);case 174:return d(r,t.typeName)||p(r,n,t.typeArguments);case 173:return d(r,t.assertsModifier)||d(r,t.parameterName)||d(r,t.type);case 177:return d(r,t.exprName);case 178:return p(r,n,t.members);case 179:return d(r,t.elementType);case 180:case 197:case 198:case 200:case 267:case 271:case 340:return p(r,n,t.elements);case 183:case 184:case 289:return p(r,n,t.types);case 185:return d(r,t.checkType)||d(r,t.extendsType)||d(r,t.trueType)||d(r,t.falseType);case 186:return d(r,t.typeParameter);case 196:return d(r,t.argument)||d(r,t.qualifier)||p(r,n,t.typeArguments);case 187:case 189:case 181:case 182:case 304:case 309:case 308:case 310:case 312:return d(r,t.type);case 190:return d(r,t.objectType)||d(r,t.indexType);case 191:return d(r,t.readonlyToken)||d(r,t.typeParameter)||d(r,t.nameType)||d(r,t.questionToken)||d(r,t.type);case 192:return d(r,t.literal);case 193:return d(r,t.dotDotDotToken)||d(r,t.name)||d(r,t.questionToken)||d(r,t.type);case 201:case 284:return p(r,n,t.properties);case 202:return d(r,t.expression)||d(r,t.questionDotToken)||d(r,t.name);case 203:return d(r,t.expression)||d(r,t.questionDotToken)||d(r,t.argumentExpression);case 204:case 205:return d(r,t.expression)||d(r,t.questionDotToken)||p(r,n,t.typeArguments)||p(r,n,t.arguments);case 206:return d(r,t.tag)||d(r,t.questionDotToken)||p(r,n,t.typeArguments)||d(r,t.template);case 207:return d(r,t.type)||d(r,t.expression);case 216:case 217:return d(r,t.operand);case 221:return d(r,t.asteriskToken)||d(r,t.expression);case 218:return d(r,t.left)||d(r,t.operatorToken)||d(r,t.right);case 226:return d(r,t.expression)||d(r,t.type);case 228:case 262:case 266:case 272:case 305:return d(r,t.name);case 219:return d(r,t.condition)||d(r,t.questionToken)||d(r,t.whenTrue)||d(r,t.colonToken)||d(r,t.whenFalse);case 232:case 260:case 288:return p(r,n,t.statements);case 300:return p(r,n,t.statements)||d(r,t.endOfFileToken);case 234:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.declarationList);case 252:return p(r,n,t.declarations);case 236:return d(r,t.expression)||d(r,t.thenStatement)||d(r,t.elseStatement);case 237:return d(r,t.statement)||d(r,t.expression);case 238:case 245:return d(r,t.expression)||d(r,t.statement);case 239:return d(r,t.initializer)||d(r,t.condition)||d(r,t.incrementor)||d(r,t.statement);case 240:return d(r,t.initializer)||d(r,t.expression)||d(r,t.statement);case 241:return d(r,t.awaitModifier)||d(r,t.initializer)||d(r,t.expression)||d(r,t.statement);case 242:case 243:return d(r,t.label);case 246:return d(r,t.expression)||d(r,t.caseBlock);case 261:return p(r,n,t.clauses);case 287:return d(r,t.expression)||p(r,n,t.statements);case 247:return d(r,t.label)||d(r,t.statement);case 249:return d(r,t.tryBlock)||d(r,t.catchClause)||d(r,t.finallyBlock);case 290:return d(r,t.variableDeclaration)||d(r,t.block);case 255:case 254:case 223:case 256:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||p(r,n,t.typeParameters)||p(r,n,t.heritageClauses)||p(r,n,t.members);case 257:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||p(r,n,t.typeParameters)||d(r,t.type);case 258:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||p(r,n,t.members);case 294:case 283:return d(r,t.name)||d(r,t.initializer);case 259:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.body);case 263:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.name)||d(r,t.moduleReference);case 264:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.importClause)||d(r,t.moduleSpecifier);case 265:return d(r,t.name)||d(r,t.namedBindings);case 270:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.exportClause)||d(r,t.moduleSpecifier);case 268:case 273:return d(r,t.propertyName)||d(r,t.name);case 269:return p(r,n,t.decorators)||p(r,n,t.modifiers)||d(r,t.expression);case 220:case 194:return d(r,t.head)||p(r,n,t.templateSpans);case 230:return d(r,t.expression)||d(r,t.literal);case 195:return d(r,t.type)||d(r,t.literal);case 225:return d(r,t.expression)||p(r,n,t.typeArguments);case 274:return p(r,n,t.decorators);case 276:return d(r,t.openingElement)||p(r,n,t.children)||d(r,t.closingElement);case 280:return d(r,t.openingFragment)||p(r,n,t.children)||d(r,t.closingFragment);case 277:case 278:return d(r,t.tagName)||p(r,n,t.typeArguments)||d(r,t.attributes);case 286:return d(r,t.dotDotDotToken)||d(r,t.expression);case 279:case 320:case 317:case 322:case 323:case 324:case 325:case 326:return d(r,t.tagName);case 311:return p(r,n,t.parameters)||d(r,t.type);case 314:return p(r,n,t.tags);case 335:return d(r,t.tagName)||d(r,t.name);case 329:case 336:return d(r,t.tagName)||(t.isNameFirst?d(r,t.name)||d(r,t.typeExpression):d(r,t.typeExpression)||d(r,t.name));case 319:case 318:return d(r,t.tagName)||d(r,t.class);case 333:return d(r,t.tagName)||d(r,t.constraint)||p(r,n,t.typeParameters);case 334:return d(r,t.tagName)||(t.typeExpression&&304===t.typeExpression.kind?d(r,t.typeExpression)||d(r,t.fullName):d(r,t.fullName)||d(r,t.typeExpression));case 327:return d(r,t.tagName)||d(r,t.fullName)||d(r,t.typeExpression);case 330:case 332:case 331:case 328:return d(r,t.tagName)||d(r,t.typeExpression);case 316:return e.forEach(t.typeParameters,r)||e.forEach(t.parameters,r)||d(r,t.type);case 315:return e.forEach(t.jsDocPropertyTags,r)}}function g(e){var t=[];return m(e,r,r),t;function r(e){t.unshift(e)}}function _(e){return void 0!==e.externalModuleIndicator}function h(t){return e.fileExtensionIs(t,".d.ts")||e.fileExtensionIs(t,".d.ets")}function y(t,r){for(var n=[],i=0,a=e.getLeadingCommentRanges(r,0)||e.emptyArray;i<a.length;i++){var o=a[i];S(n,o,r.substring(o.pos,o.end))}t.pragmas=new e.Map;for(var s=0,c=n;s<c.length;s++){var l=c[s];if(t.pragmas.has(l.name)){var u=t.pragmas.get(l.name);u instanceof Array?u.push(l.args):t.pragmas.set(l.name,[u,l.args])}else t.pragmas.set(l.name,l.args)}}function v(t,r){t.checkJsDirective=void 0,t.referencedFiles=[],t.typeReferenceDirectives=[],t.libReferenceDirectives=[],t.amdDependencies=[],t.hasNoDefaultLib=!1,t.pragmas.forEach((function(n,i){switch(i){case"reference":var a=t.referencedFiles,o=t.typeReferenceDirectives,s=t.libReferenceDirectives;e.forEach(e.toArray(n),(function(n){var i=n.arguments,c=i.types,l=i.lib,u=i.path;n.arguments["no-default-lib"]?t.hasNoDefaultLib=!0:c?o.push({pos:c.pos,end:c.end,fileName:c.value}):l?s.push({pos:l.pos,end:l.end,fileName:l.value}):u?a.push({pos:u.pos,end:u.end,fileName:u.value}):r(n.range.pos,n.range.end-n.range.pos,e.Diagnostics.Invalid_reference_directive_syntax)}));break;case"amd-dependency":t.amdDependencies=e.map(e.toArray(n),(function(e){return{name:e.arguments.name,path:e.arguments.path}}));break;case"amd-module":if(n instanceof Array)for(var c=0,l=n;c<l.length;c++){var u=l[c];t.moduleName&&r(u.range.pos,u.range.end-u.range.pos,e.Diagnostics.An_AMD_module_cannot_have_multiple_name_assignments),t.moduleName=u.arguments.name}else t.moduleName=n.arguments.name;break;case"ts-nocheck":case"ts-check":e.forEach(e.toArray(n),(function(e){(!t.checkJsDirective||e.range.pos>t.checkJsDirective.pos)&&(t.checkJsDirective={enabled:"ts-check"===i,end:e.range.end,pos:e.range.pos})}));break;case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:e.Debug.fail("Unhandled pragma kind")}}))}!function(e){e[e.None=0]="None",e[e.Yield=1]="Yield",e[e.Await=2]="Await",e[e.Type=4]="Type",e[e.IgnoreMissingOpenBrace=16]="IgnoreMissingOpenBrace",e[e.JSDoc=32]="JSDoc"}(t||(t={})),function(e){e[e.TryParse=0]="TryParse",e[e.Lookahead=1]="Lookahead",e[e.Reparse=2]="Reparse"}(r||(r={})),e.parseBaseNodeFactory={createBaseSourceFileNode:function(t){return new(s||(s=e.objectAllocator.getSourceFileConstructor()))(t,-1,-1)},createBaseIdentifierNode:function(t){return new(a||(a=e.objectAllocator.getIdentifierConstructor()))(t,-1,-1)},createBasePrivateIdentifierNode:function(t){return new(o||(o=e.objectAllocator.getPrivateIdentifierConstructor()))(t,-1,-1)},createBaseTokenNode:function(t){return new(i||(i=e.objectAllocator.getTokenConstructor()))(t,-1,-1)},createBaseNode:function(t){return new(n||(n=e.objectAllocator.getNodeConstructor()))(t,-1,-1)}},e.parseNodeFactory=e.createNodeFactory(1,e.parseBaseNodeFactory),e.isJSDocLikeText=f,e.forEachChild=m,e.forEachChildRecursively=function(t,r,n){for(var i=g(t),a=[];a.length<i.length;)a.push(t);for(;0!==i.length;){var o=i.pop(),s=a.pop();if(e.isArray(o)){if(n)if(l=n(o,s)){if("skip"===l)continue;return l}for(var c=o.length-1;c>=0;--c)i.push(o[c]),a.push(s)}else{var l;if(l=r(o,s)){if("skip"===l)continue;return l}if(o.kind>=158)for(var u=0,d=g(o);u<d.length;u++){var p=d[u];i.push(p),a.push(o)}}}},e.createSourceFile=function(t,r,n,i,a,o){var s;return void 0===i&&(i=!1),null===e.tracing||void 0===e.tracing||e.tracing.push("parse","createSourceFile",{path:t},!0),e.performance.mark("beforeParse"),c=null!=o?o:e.defaultInitCompilerOptions,e.perfLogger.logStartParseSourceFile(t),s=100===n?l.parseSourceFile(t,r,n,void 0,i,6):l.parseSourceFile(t,r,n,void 0,i,a),e.perfLogger.logStopParseSourceFile(),e.performance.mark("afterParse"),e.performance.measure("Parse","beforeParse","afterParse"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),s},e.parseIsolatedEntityName=function(e,t){return l.parseIsolatedEntityName(e,t)},e.parseJsonText=function(e,t){return l.parseJsonText(e,t)},e.isExternalModule=_,e.updateSourceFile=function(t,r,n,i,a){void 0===i&&(i=!1),c=null!=a?a:e.defaultInitCompilerOptions;var o=u.updateSourceFile(t,r,n,i);return o.flags|=3145728&t.flags,o},e.parseIsolatedJSDocComment=function(e,t,r){var n=l.JSDocParser.parseIsolatedJSDocComment(e,t,r);return n&&n.jsDoc&&l.fixupParentReferences(n.jsDoc),n},e.parseJSDocTypeExpressionForTests=function(e,t,r){return l.JSDocParser.parseJSDocTypeExpressionForTests(e,t,r)},function(t){var r,n,i,a,o,s=e.createScanner(99,!0),l=20480;function d(e){return A++,e}var p,g,b,k,x,E,S,D,T,C,A,N,P,I,F,O,R,M,L,j,B,z,U={createBaseSourceFileNode:function(e){return d(new o(e,0,0))},createBaseIdentifierNode:function(e){return d(new i(e,0,0))},createBasePrivateIdentifierNode:function(e){return d(new a(e,0,0))},createBaseTokenNode:function(e){return d(new n(e,0,0))},createBaseNode:function(e){return d(new r(e,0,0))}},q=e.createNodeFactory(11,U),J=!0,V=!1,H=new e.Map,K=new e.Map;function W(t,r,n,i,a){void 0===n&&(n=2),void 0===a&&(a=!1),G(t,r,n,i,6),g=R,We();var o,s,c=qe();if(1===Ve())o=mt([],c,c),s=dt();else{var l=void 0;switch(Ve()){case 22:l=ei();break;case 110:case 95:case 104:l=dt();break;case 40:l=tt((function(){return 8===We()&&58!==We()}))?An():ri();break;case 8:case 10:if(tt((function(){return 58!==We()}))){l=ar();break}default:l=ri()}var u=q.createExpressionStatement(l);gt(u,c),o=mt([u],c),s=ut(1,e.Diagnostics.Unexpected_token)}var d=ie(t,2,6,!1,o,s,g);a&&ne(d),d.nodeCount=A,d.identifierCount=I,d.identifiers=N,d.parseDiagnostics=e.attachFileToDiagnostics(S,d),D&&(d.jsDocDiagnostics=e.attachFileToDiagnostics(D,d));var p=d;return $(),p}function G(t,c,l,u,d){switch(r=e.objectAllocator.getNodeConstructor(),n=e.objectAllocator.getTokenConstructor(),i=e.objectAllocator.getIdentifierConstructor(),a=e.objectAllocator.getPrivateIdentifierConstructor(),o=e.objectAllocator.getSourceFileConstructor(),p=e.normalizePath(t),b=c,k=l,T=u,x=d,E=e.getLanguageVariant(d),S=[],F=0,N=new e.Map,P=new e.Map,I=0,A=0,g=0,J=!0,x){case 1:case 2:R=131072;break;case 6:R=33685504;break;case 8:R=1073741824;break;default:R=0}p.endsWith(".ets")&&(R=1073741824),V=!1,s.setText(b),s.setOnError(Ue),s.setScriptTarget(k),s.setLanguageVariant(E),s.setEtsContext(Ae())}function $(){s.clearCommentDirectives(),s.setText(""),s.setOnError(void 0),s.setEtsContext(!1),b=void 0,k=void 0,T=void 0,x=void 0,E=void 0,g=0,S=void 0,D=void 0,F=0,N=void 0,O=void 0,J=!0,L=void 0,j=void 0,z=void 0,H.clear(),K.clear()}function Y(t,r,n){var i=h(p);i&&(R|=8388608),g=R,We();var a=qt(0,bi);e.Debug.assert(1===Ve());var o=re(dt()),c=ie(p,t,n,i,a,o,g);return y(c,b),v(c,(function(t,r,n){S.push(e.createDetachedDiagnostic(p,t,r,n))})),c.commentDirectives=s.getCommentDirectives(),c.nodeCount=A,c.identifierCount=I,c.identifiers=N,c.parseDiagnostics=e.attachFileToDiagnostics(S,c),D&&(c.jsDocDiagnostics=e.attachFileToDiagnostics(D,c)),r&&ne(c),c}function X(e,t){return t?re(e):e}t.parseSourceFile=function(t,r,n,i,a,o){if(void 0===a&&(a=!1),6===(o=e.ensureScriptKind(t,o))){var s=W(t,r,n,i,a);return e.convertToObjectWorker(s,s.parseDiagnostics,!1,void 0,void 0),s.referencedFiles=e.emptyArray,s.typeReferenceDirectives=e.emptyArray,s.libReferenceDirectives=e.emptyArray,s.amdDependencies=e.emptyArray,s.hasNoDefaultLib=!1,s.pragmas=e.emptyMap,s}G(t,r,n,i,o);var c=Y(n,a,o);return $(),c},t.parseIsolatedEntityName=function(e,t){G("",e,t,void 0,1),We();var r=Xt(!0),n=1===Ve()&&!S.length;return $(),n?r:void 0},t.parseJsonText=W;var Q,Z,ee,te=!1;function re(t){e.Debug.assert(!t.jsDoc);var r=e.mapDefined(e.getJSDocCommentRanges(t,b),(function(e){return ee.parseJSDocComment(t,e.pos,e.end-e.pos)}));return r.length&&(t.jsDoc=r),te&&(te=!1,t.flags|=134217728),t}function ne(t){e.setParentRecursive(t,!0)}function ie(t,r,n,i,a,o,c){var l=q.createSourceFile(a,o,c);return e.setTextRangePosWidth(l,0,b.length),function(t){t.externalModuleIndicator=e.forEach(t.statements,ha)||function(e){return 2097152&e.flags?ya(e):void 0}(t)}(l),!i&&_(l)&&8388608&l.transformFlags&&(l=function(t){var r=T,n=u.createSyntaxCursor(t);T={currentNode:function(e){var t=n.currentNode(e);return J&&t&&f(t)&&(t.intersectsChange=!0),t}};var i=[],a=S;S=[];for(var o=0,c=m(t.statements,0),l=function(){var r=t.statements[o],n=t.statements[c];e.addRange(i,t.statements,o,c),o=g(t.statements,c);var l=e.findIndex(a,(function(e){return e.start>=r.pos})),u=l>=0?e.findIndex(a,(function(e){return e.start>=n.pos}),l):-1;l>=0&&e.addRange(S,a,l,u>=0?u:void 0),et((function(){var e=R;for(R|=32768,s.setTextPos(n.pos),We();1!==Ve();){var r=s.getStartPos(),a=Jt(0,bi);if(i.push(a),r===s.getStartPos()&&We(),o>=0){var c=t.statements[o];if(a.end===c.pos)break;a.end>c.pos&&(o=g(t.statements,o+1))}}R=e}),2),c=o>=0?m(t.statements,o):-1};-1!==c;)l();if(o>=0){var d=t.statements[o];e.addRange(i,t.statements,o);var p=e.findIndex(a,(function(e){return e.start>=d.pos}));p>=0&&e.addRange(S,a,p)}return T=r,q.updateSourceFile(t,e.setTextRange(q.createNodeArray(i),t.statements));function f(e){return!(32768&e.flags||!(8388608&e.transformFlags))}function m(e,t){for(var r=t;r<e.length;r++)if(f(e[r]))return r;return-1}function g(e,t){for(var r=t;r<e.length;r++)if(!f(e[r]))return r;return-1}}(l)),l.text=b,l.bindDiagnostics=[],l.bindSuggestionDiagnostics=void 0,l.languageVersion=r,l.fileName=t,l.languageVariant=e.getLanguageVariant(n),l.isDeclarationFile=i,l.scriptKind=n,l}function ae(e,t){e?R|=t:R&=~t}function oe(e,t){e?M|=t:M&=~t}function se(e){ae(e,4096)}function ce(e){ae(e,8192)}function le(e){ae(e,16384)}function ue(e){ae(e,32768)}function de(e){oe(e,2)}function pe(e){oe(e,128)}function fe(e){oe(e,256)}function me(e){oe(e,4)}function ge(e){oe(e,8)}function _e(e){oe(e,16)}function he(e){oe(e,32)}function ye(e){oe(e,64)}function ve(e,t){var r=e&R;if(r){ae(!1,r);var n=t();return ae(!0,r),n}return t()}function be(e,t){var r=e&~R;if(r){ae(!0,r);var n=t();return ae(!1,r),n}return t()}function ke(e){return ve(4096,e)}function xe(e){return be(32768,e)}function Ee(e){return 0!=(R&e)}function Se(e){return 0!=(M&e)}function De(){return Ee(8192)}function we(){return Ee(4096)}function Te(){return Ee(16384)}function Ce(){return Ee(32768)}function Ae(){return Ee(1073741824)}function Ne(){return Ae()&&Se(2)}function Pe(){return Ae()&&Se(128)}function Ie(){return Ae()&&Se(4)}function Fe(){return Ae()&&Se(8)}function Oe(){return Ae()&&Ne()&&Se(16)}function Re(){return Ae()&&Se(32)}function Me(){return Ae()&&Ne()&&Se(64)}function Le(e,t){Be(s.getTokenPos(),s.getTextPos(),e,t)}function je(t,r,n,i){var a=e.lastOrUndefined(S);a&&t===a.start||S.push(e.createDetachedDiagnostic(p,t,r,n,i)),V=!0}function Be(e,t,r,n){je(e,t-e,r,n)}function ze(e,t,r){Be(e.pos,e.end,t,r)}function Ue(e,t){je(s.getTextPos(),t,e)}function qe(){return s.getStartPos()}function Je(){return s.hasPrecedingJSDocComment()}function Ve(){return C}function He(){return C=s.scan()}function Ke(e){return We(),e()}function We(){return e.isKeyword(C)&&(s.hasUnicodeEscape()||s.hasExtendedUnicodeEscape())&&Be(s.getTokenPos(),s.getTextPos(),e.Diagnostics.Keywords_cannot_contain_escape_characters),He()}function Ge(){return C=s.scanJsDocToken()}function $e(){return C=s.reScanGreaterToken()}function Ye(){return C=s.reScanTemplateHeadOrNoSubstitutionTemplate()}function Xe(){return C=s.reScanLessThanToken()}function Qe(){return C=s.scanJsxIdentifier()}function Ze(){return C=s.scanJsxToken()}function et(t,r){var n=C,i=S.length,a=V,o=R,c=0!==r?s.lookAhead(t):s.tryScan(t);return e.Debug.assert(o===R),c&&0===r||(C=n,2!==r&&(S.length=i),V=a),c}function tt(e){return et(e,1)}function rt(e){return et(e,0)}function nt(){return 78===Ve()||Ve()>116}function it(){return 78===Ve()||(125!==Ve()||!De())&&((131!==Ve()||!Ce())&&Ve()>116)}function at(t,r,n){return void 0===n&&(n=!0),Ve()===t?(n&&We(),!0):!(Ve()===t||!z||!Me())||(r?Le(r):Le(e.Diagnostics._0_expected,e.tokenToString(t)),!1)}function ot(t){return Ve()===t?(Ge(),!0):(Le(e.Diagnostics._0_expected,e.tokenToString(t)),!1)}function st(e){return Ve()===e&&(We(),!0)}function ct(e){if(Ve()===e)return dt()}function lt(e){if(Ve()===e)return t=qe(),r=Ve(),Ge(),gt(q.createToken(r),t);var t,r}function ut(t,r,n){return ct(t)||_t(t,!1,r||e.Diagnostics._0_expected,n||e.tokenToString(t))}function dt(){var e=qe(),t=Ve();return We(),gt(q.createToken(t),e)}function pt(){return 26===Ve()||(19===Ve()||1===Ve()||s.hasPrecedingLineBreak())}function ft(){return pt()?(26===Ve()&&We(),!0):at(26)}function mt(t,r,n,i){var a=q.createNodeArray(t,i);return e.setTextRangePosEnd(a,r,null!=n?n:s.getStartPos()),a}function gt(t,r,n,i){return e.setTextRangePosEnd(t,r,null!=n?n:s.getStartPos()),R&&(t.flags|=R),V&&(V=!1,t.flags|=65536),i&&(t.virtual=!0),t}function _t(t,r,n,i){r?je(s.getStartPos(),0,n,i):n&&Le(n,i);var a=qe();return gt(78===t?q.createIdentifier("",void 0,void 0):e.isTemplateLiteralKind(t)?q.createTemplateLiteralLikeNode(t,"","",void 0):8===t?q.createNumericLiteral("",void 0):10===t?q.createStringLiteral("",void 0):274===t?q.createMissingDeclaration():q.createToken(t),a)}function ht(e){var t=N.get(e);return void 0===t&&N.set(e,t=e),t}function yt(t,r,n){if(t){I++;var i=qe(),a=Ve(),o=ht(s.getTokenValue());return He(),gt(q.createIdentifier(o,void 0,a),i)}if(79===Ve())return Le(n||e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),yt(!0);if(0===Ve()&&s.tryScan((function(){return 78===s.reScanInvalidIdentifier()})))return yt(!0);if(z&&Me()&&24===Ve()){I++;i=qe();return aa(q.createIdentifier(z+"Instance",void 0,78),i,i)}I++;var c=1===Ve(),l=s.isReservedWord(),u=s.getTokenText(),d=l?e.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:e.Diagnostics.Identifier_expected;return _t(78,c,r||d,u)}function vt(e){return yt(nt(),void 0,e)}function bt(e,t){return yt(it(),e,t)}function kt(t){return yt(e.tokenIsIdentifierOrKeyword(Ve()),t)}function xt(){return e.tokenIsIdentifierOrKeyword(Ve())||10===Ve()||8===Ve()}function Et(e){if(10===Ve()||8===Ve()){var t=ar();return t.text=ht(t.text),t}return e&&22===Ve()?function(){var e=qe();at(22);var t=ke(_n);return at(23),gt(q.createComputedPropertyName(t),e)}():79===Ve()?Dt():kt()}function St(){return Et(!0)}function Dt(){var e,t,r=qe(),n=q.createPrivateIdentifier((e=s.getTokenText(),void 0===(t=P.get(e))&&P.set(e,t=e),t));return We(),gt(n,r)}function wt(e){return Ve()===e&&rt(Ct)}function Tt(){return We(),!s.hasPrecedingLineBreak()&&Pt()}function Ct(){switch(Ve()){case 85:return 92===We();case 93:return We(),88===Ve()?tt(It):150===Ve()?tt(Nt):At();case 88:return It();case 124:default:return Tt();case 135:case 147:return We(),Pt()}}function At(){return 41!==Ve()&&127!==Ve()&&18!==Ve()&&Pt()}function Nt(){return We(),At()}function Pt(){return 22===Ve()||18===Ve()||41===Ve()||25===Ve()||xt()}function It(){return We(),83===Ve()||Ae()&&84===Ve()||98===Ve()||118===Ve()||126===Ve()&&tt(fi)||130===Ve()&&tt(mi)}function Ft(t,r){if(Vt(t))return!0;switch(t){case 0:case 1:case 3:return!(26===Ve()&&r)&&yi();case 2:return 81===Ve()||88===Ve();case 4:return tt(Pr);case 5:return tt(qi)||26===Ve()&&!r;case 6:return 22===Ve()||xt();case 12:switch(Ve()){case 22:case 41:case 25:case 24:return!0;default:return xt()}case 18:return xt();case 9:return 22===Ve()||25===Ve()||xt();case 7:return 18===Ve()?tt(Ot):r?it()&&!jt():mn()&&!jt();case 8:return Ai();case 10:return 27===Ve()||25===Ve()||Ai();case 19:return it()||Fe()&&void 0!==j;case 15:switch(Ve()){case 27:case 24:return!0}case 11:return 25===Ve()||gn();case 16:return vr(!1);case 17:return vr(!0);case 20:case 21:return 27===Ve()||Yr();case 22:return ia();case 23:return e.tokenIsIdentifierOrKeyword(Ve());case 13:return e.tokenIsIdentifierOrKeyword(Ve())||18===Ve();case 14:return!0}return e.Debug.fail("Non-exhaustive case in 'isListElement'.")}function Ot(){if(e.Debug.assert(18===Ve()),19===We()){var t=We();return 27===t||18===t||94===t||117===t}return!0}function Rt(){return We(),it()}function Mt(){return We(),e.tokenIsIdentifierOrKeyword(Ve())}function Lt(){return We(),e.tokenIsIdentifierOrKeywordOrGreaterThan(Ve())}function jt(){return(117===Ve()||94===Ve())&&tt(Bt)}function Bt(){return We(),gn()}function zt(){return We(),Yr()}function Ut(e){if(1===Ve())return!0;switch(e){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:return 19===Ve();case 3:return 19===Ve()||81===Ve()||88===Ve();case 7:return 18===Ve()||94===Ve()||117===Ve();case 8:return function(){if(pt())return!0;if(wn(Ve()))return!0;if(38===Ve())return!0;return!1}();case 19:return 31===Ve()||20===Ve()||18===Ve()||94===Ve()||117===Ve();case 11:return 21===Ve()||26===Ve();case 15:case 21:case 10:return 23===Ve();case 17:case 16:case 18:return 21===Ve()||23===Ve();case 20:return 27!==Ve();case 22:return 18===Ve()||19===Ve();case 13:return 31===Ve()||43===Ve();case 14:return 29===Ve()&&tt(da);default:return!1}}function qt(e,t){var r=F;F|=1<<e;for(var n=[],i=qe();!Ut(e);)if(Ft(e,!1)){var a=Jt(e,t);n.push(a)}else if(Kt(e))break;return F=r,mt(n,i)}function Jt(e,t){var r=Vt(e);return r?Ht(r):t()}function Vt(t){if(T&&function(e){switch(e){case 5:case 2:case 0:case 1:case 3:case 6:case 4:case 8:case 17:case 16:return!0}return!1}(t)&&!V){var r=T.currentNode(s.getStartPos());if(!(e.nodeIsMissing(r)||r.intersectsChange||e.containsParseError(r)))if((1099100160&r.flags)===R&&function(e,t){switch(t){case 5:return function(e){if(e)switch(e.kind){case 167:case 172:case 168:case 169:case 231:return!0;case 164:return!Ne();case 166:var t=e;return!(78===t.name.kind&&133===t.name.originalKeywordKind)}return!1}(e);case 2:return function(e){if(e)switch(e.kind){case 287:case 288:return!0}return!1}(e);case 0:case 1:case 3:return function(e){if(e)switch(e.kind){case 253:case 234:case 232:case 236:case 235:case 248:case 244:case 246:case 243:case 242:case 240:case 241:case 239:case 238:case 245:case 233:case 249:case 247:case 237:case 250:case 264:case 263:case 270:case 269:case 259:case 254:case 255:case 256:case 258:case 257:return!0}return!1}(e);case 6:return function(e){return 294===e.kind}(e);case 4:return function(e){if(e)switch(e.kind){case 171:case 165:case 172:case 163:case 170:return!0}return!1}(e);case 8:return function(e){if(251!==e.kind)return!1;var t=e;return void 0===t.initializer}(e);case 17:case 16:return function(e){if(161!==e.kind)return!1;var t=e;return void 0===t.initializer}(e)}return!1}(r,t))return r.jsDocCache&&(r.jsDocCache=void 0),r}}function Ht(e){return s.setTextPos(e.end),We(),e}function Kt(t){return function(t){switch(t){case 0:case 1:return Le(e.Diagnostics.Declaration_or_statement_expected);case 2:return Le(e.Diagnostics.case_or_default_expected);case 3:return Le(e.Diagnostics.Statement_expected);case 18:case 4:return Le(e.Diagnostics.Property_or_signature_expected);case 5:return Le(e.Diagnostics.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);case 6:return Le(e.Diagnostics.Enum_member_expected);case 7:return Le(e.Diagnostics.Expression_expected);case 8:return e.isKeyword(Ve())?Le(e.Diagnostics._0_is_not_allowed_as_a_variable_declaration_name,e.tokenToString(Ve())):Le(e.Diagnostics.Variable_declaration_expected);case 9:return Le(e.Diagnostics.Property_destructuring_pattern_expected);case 10:return Le(e.Diagnostics.Array_element_destructuring_pattern_expected);case 11:return Le(e.Diagnostics.Argument_expression_expected);case 12:return Le(e.Diagnostics.Property_assignment_expected);case 15:return Le(e.Diagnostics.Expression_or_comma_expected);case 17:case 16:return Le(e.Diagnostics.Parameter_declaration_expected);case 19:return Le(e.Diagnostics.Type_parameter_declaration_expected);case 20:return Le(e.Diagnostics.Type_argument_expected);case 21:return Le(e.Diagnostics.Type_expected);case 22:return Le(e.Diagnostics.Unexpected_token_expected);case 23:case 13:case 14:return Le(e.Diagnostics.Identifier_expected);default:;}}(t),!!function(){for(var e=0;e<24;e++)if(F&1<<e&&(Ft(e,!0)||Ut(e)))return!0;return!1}()||(We(),!1)}function Wt(e,t,r){var n=F;F|=1<<e;for(var i=[],a=qe(),o=-1;;)if(Ft(e,!1)){var c=s.getStartPos();if(i.push(Jt(e,t)),o=s.getTokenPos(),st(27))continue;if(o=-1,Ut(e))break;at(27,Gt(e)),r&&26===Ve()&&!s.hasPrecedingLineBreak()&&We(),c===s.getStartPos()&&We()}else{if(Ut(e))break;if(Kt(e))break}return F=n,mt(i,a,void 0,o>=0)}function Gt(t){return 6===t?e.Diagnostics.An_enum_member_name_must_be_followed_by_a_or:void 0}function $t(){var e=mt([],qe());return e.isMissingList=!0,e}function Yt(e,t,r,n){if(at(r)){var i=Wt(e,t);return at(n),i}return $t()}function Xt(e,t){for(var r=qe(),n=e?kt(t):bt(t),i=qe();st(24);){if(29===Ve()){n.jsdocDotPos=i;break}i=qe(),n=gt(q.createQualifiedName(n,Zt(e,!1)),r)}return n}function Qt(e,t){return gt(q.createQualifiedName(e,t),e.pos)}function Zt(t,r){if(s.hasPrecedingLineBreak()&&e.tokenIsIdentifierOrKeyword(Ve())&&tt(pi))return _t(78,!0,e.Diagnostics.Identifier_expected);if(79===Ve()){var n=Dt();return r?n:_t(78,!0,e.Diagnostics.Identifier_expected)}return t?kt():bt()}function er(e){var t=qe();return gt(q.createTemplateExpression(or(e),function(e){var t,r=qe(),n=[];do{t=ir(e),n.push(t)}while(16===t.literal.kind);return mt(n,r)}(e)),t)}function tr(){var e=qe();return gt(q.createTemplateLiteralType(or(!1),function(){var e,t=qe(),r=[];do{e=rr(),r.push(e)}while(16===e.literal.kind);return mt(r,t)}()),e)}function rr(){var e=qe();return gt(q.createTemplateLiteralTypeSpan(ln(),nr(!1)),e)}function nr(t){return 19===Ve()?(function(e){C=s.reScanTemplateToken(e)}(t),r=sr(Ve()),e.Debug.assert(16===r.kind||17===r.kind,"Template fragment has wrong token kind"),r):ut(17,e.Diagnostics._0_expected,e.tokenToString(19));var r}function ir(e){var t=qe();return gt(q.createTemplateSpan(ke(_n),nr(e)),t)}function ar(){return sr(Ve())}function or(t){t&&Ye();var r=sr(Ve());return e.Debug.assert(15===r.kind,"Template head has wrong token kind"),r}function sr(t){var r=qe(),n=e.isTemplateLiteralKind(t)?q.createTemplateLiteralLikeNode(t,s.getTokenValue(),function(e){var t=14===e||17===e,r=s.getTokenText();return r.substring(1,r.length-(s.isUnterminated()?0:t?1:2))}(t),2048&s.getTokenFlags()):8===t?q.createNumericLiteral(s.getTokenValue(),s.getNumericLiteralFlags()):10===t?q.createStringLiteral(s.getTokenValue(),void 0,s.hasExtendedUnicodeEscape()):e.isLiteralKind(t)?q.createLiteralLikeNode(t,s.getTokenValue()):e.Debug.fail();return s.hasExtendedUnicodeEscape()&&(n.hasExtendedUnicodeEscape=!0),s.isUnterminated()&&(n.isUnterminated=!0),We(),gt(n,r)}function cr(){return Xt(!0,e.Diagnostics.Type_expected)}function lr(){if(!s.hasPrecedingLineBreak()&&29===Xe())return Yt(20,ln,29,31)}function ur(){var e=qe();return gt(q.createTypeReferenceNode(cr(),lr()),e)}function dr(t){switch(t.kind){case 174:return e.nodeIsMissing(t.typeName);case 175:case 176:var r=t,n=r.parameters,i=r.type;return!!n.isMissingList||dr(i);case 187:return dr(t.type);default:return!1}}function pr(){var e=qe();return We(),gt(q.createThisTypeNode(),e)}function fr(){var e,t=qe();return 108!==Ve()&&103!==Ve()||(e=kt(),at(58)),gt(q.createParameterDeclaration(void 0,void 0,void 0,e,void 0,mr(),void 0),t)}function mr(){s.setInJSDocType(!0);var e=qe();if(st(140)){var t=q.createJSDocNamepathType(void 0);e:for(;;)switch(Ve()){case 19:case 1:case 27:case 5:break e;default:Ge()}return s.setInJSDocType(!1),gt(t,e)}var r=st(25),n=sn();return s.setInJSDocType(!1),r&&(n=gt(q.createJSDocVariadicType(n),e)),62===Ve()?(We(),gt(q.createJSDocOptionalType(n),e)):n}function gr(e){var t,r,n=qe(),i=void 0!==e?function(e){I++;var t=ht(j.type);return aa(q.createIdentifier(t),e,e)}(e):bt();st(94)&&(Yr()||!gn()?t=ln():r=Nn());var a=st(62)?ln():void 0,o=q.createTypeParameterDeclaration(i,t,a);return o.expression=r,void 0!==e?aa(o,e,e):gt(o,n)}function _r(){if(29===Ve())return Yt(19,gr,29,31)}function hr(e){return mt([gr(e)],qe())}function yr(e,t){if(0==(131072&R))return mt([un(e,t)],qe())}function vr(t){return 25===Ve()||Ai()||e.isModifierKind(Ve())||59===Ve()||Yr(!t)}function br(){return xr(!0)}function kr(){return xr(!1)}function xr(t){var r=qe(),n=Je();if(108===Ve())return X(gt(q.createParameterDeclaration(void 0,void 0,void 0,yt(!0),void 0,fn(),void 0),r),n);var i=t?xe(Hi):Hi(),a=J;J=!1;var o=Wi(),s=X(gt(q.createParameterDeclaration(i,o,ct(25),function(t){var r=Ni(e.Diagnostics.Private_identifiers_cannot_be_used_as_parameters);return 0===e.getFullWidth(r)&&!e.some(t)&&e.isModifierKind(Ve())&&We(),r}(o),ct(57),fn(),hn()),r),n);return J=a,s}function Er(t,r){if(function(t,r){if(38===t)return at(t),!0;if(st(58))return!0;if(r&&38===Ve())return Le(e.Diagnostics._0_expected,e.tokenToString(58)),We(),!0;return!1}(t,r))return sn()}function Sr(e){var t=De(),r=Ce();ce(!!(1&e)),ue(!!(2&e));var n=32&e?Wt(17,fr):Wt(16,r?br:kr);return ce(t),ue(r),n}function Dr(e){if(!at(20))return $t();var t=Sr(e);return at(21),t}function wr(){st(27)||ft()}function Tr(e){var t=qe(),r=Je();171===e&&at(103);var n=_r(),i=Dr(4),a=Er(58,!0);return wr(),X(gt(170===e?q.createCallSignature(n,i,a):q.createConstructSignature(n,i,a),t),r)}function Cr(){return 22===Ve()&&tt(Ar)}function Ar(){if(We(),25===Ve()||23===Ve())return!0;if(e.isModifierKind(Ve())){if(We(),it())return!0}else{if(!it())return!1;We()}return 58===Ve()||27===Ve()||57===Ve()&&(We(),58===Ve()||27===Ve()||23===Ve())}function Nr(e,t,r,n){var i=Yt(16,kr,22,23),a=fn();return wr(),X(gt(q.createIndexSignature(r,n,i,a),e),t)}function Pr(){if(20===Ve()||29===Ve())return!0;for(var t=!1;e.isModifierKind(Ve());)t=!0,We();return 22===Ve()||(xt()&&(t=!0,We()),!!t&&(20===Ve()||29===Ve()||57===Ve()||58===Ve()||27===Ve()||pt()))}function Ir(){if(20===Ve()||29===Ve())return Tr(170);if(103===Ve()&&tt(Fr))return Tr(171);var e=qe(),t=Je(),r=Wi();return Cr()?Nr(e,t,void 0,r):function(e,t,r){var n,i=St(),a=ct(57);if(20===Ve()||29===Ve()){var o=_r(),s=Dr(4),c=Er(58,!0);n=q.createMethodSignature(r,i,a,o,s,c)}else c=fn(),n=q.createPropertySignature(r,i,a,c),62===Ve()&&(n.initializer=hn());return wr(),X(gt(n,e),t)}(e,t,r)}function Fr(){return We(),20===Ve()||29===Ve()}function Or(){return 24===We()}function Rr(){switch(We()){case 20:case 29:case 24:return!0}return!1}function Mr(){var e;return at(18)?(e=qt(4,Ir),at(19)):e=$t(),e}function Lr(){return We(),39===Ve()||40===Ve()?143===We():(143===Ve()&&We(),22===Ve()&&Rt()&&101===We())}function jr(){var e,t=qe();at(18),143!==Ve()&&39!==Ve()&&40!==Ve()||143!==(e=dt()).kind&&at(143),at(22);var r,n=function(){var e=qe(),t=kt();at(101);var r=ln();return gt(q.createTypeParameterDeclaration(t,r,void 0),e)}(),i=st(127)?ln():void 0;at(23),57!==Ve()&&39!==Ve()&&40!==Ve()||57!==(r=dt()).kind&&at(57);var a=fn();return ft(),at(19),gt(q.createMappedTypeNode(e,n,i,r,a),t)}function Br(){var t=qe();if(st(25))return gt(q.createRestTypeNode(ln()),t);var r=ln();if(e.isJSDocNullableType(r)&&r.pos===r.type.pos){var n=q.createOptionalTypeNode(r.type);return e.setTextRange(n,r),n.flags=r.flags,n}return r}function zr(){return 58===We()||57===Ve()&&58===We()}function Ur(){return 25===Ve()?e.tokenIsIdentifierOrKeyword(We())&&zr():e.tokenIsIdentifierOrKeyword(Ve())&&zr()}function qr(){if(tt(Ur)){var e=qe(),t=Je(),r=ct(25),n=kt(),i=ct(57);at(58);var a=Br();return X(gt(q.createNamedTupleMember(r,n,i,a),e),t)}return Br()}function Jr(){var e=qe(),t=Je(),r=function(){var e;if(126===Ve()){var t=qe();We(),e=mt([gt(q.createToken(126),t)],t)}return e}(),n=st(103),i=_r(),a=Dr(4),o=Er(38,!1),s=n?q.createConstructorTypeNode(r,i,a,o):q.createFunctionTypeNode(i,a,o);return n||(s.modifiers=r),X(gt(s,e),t)}function Vr(){var e=dt();return 24===Ve()?void 0:e}function Hr(e){var t=qe();e&&We();var r=110===Ve()||95===Ve()||104===Ve()?dt():sr(Ve());return e&&(r=gt(q.createPrefixUnaryExpression(40,r),t)),gt(q.createLiteralTypeNode(r),t)}function Kr(){return We(),100===Ve()}function Wr(){g|=1048576;var e=qe(),t=st(112);at(100),at(20);var r=ln();at(21);var n=st(24)?cr():void 0,i=lr();return gt(q.createImportTypeNode(r,n,i,t),e)}function Gr(){return We(),8===Ve()||9===Ve()}function $r(){switch(Ve()){case 129:case 153:case 148:case 145:case 156:case 149:case 132:case 151:case 142:case 146:return rt(Vr)||ur();case 65:s.reScanAsteriskEqualsToken();case 41:return r=qe(),We(),gt(q.createJSDocAllType(),r);case 60:s.reScanQuestionToken();case 57:return function(){var e=qe();return We(),27===Ve()||19===Ve()||21===Ve()||31===Ve()||62===Ve()||51===Ve()?gt(q.createJSDocUnknownType(),e):gt(q.createJSDocNullableType(ln()),e)}();case 98:return function(){var e=qe(),t=Je();if(tt(ua)){We();var r=Dr(36),n=Er(58,!1);return X(gt(q.createJSDocFunctionType(r,n),e),t)}return gt(q.createTypeReferenceNode(kt(),void 0),e)}();case 53:return function(){var e=qe();return We(),gt(q.createJSDocNonNullableType($r()),e)}();case 14:case 10:case 8:case 9:case 110:case 95:case 104:return Hr();case 40:return tt(Gr)?Hr(!0):ur();case 114:return dt();case 108:var e=pr();return 138!==Ve()||s.hasPrecedingLineBreak()?e:(t=e,We(),gt(q.createTypePredicateNode(void 0,t,ln()),t.pos));case 112:return tt(Kr)?Wr():function(){var e=qe();return at(112),gt(q.createTypeQueryNode(Xt(!0)),e)}();case 18:return tt(Lr)?jr():function(){var e=qe();return gt(q.createTypeLiteralNode(Mr()),e)}();case 22:return function(){var e=qe();return gt(q.createTupleTypeNode(Yt(21,qr,22,23)),e)}();case 20:return function(){var e=qe();at(20);var t=ln();return at(21),gt(q.createParenthesizedType(t),e)}();case 100:return Wr();case 128:return tt(pi)?function(){var e=qe(),t=ut(128),r=108===Ve()?pr():bt(),n=st(138)?ln():void 0;return gt(q.createTypePredicateNode(t,r,n),e)}():ur();case 15:return tr();default:return ur()}var t,r}function Yr(e){switch(Ve()){case 129:case 153:case 148:case 145:case 156:case 132:case 143:case 149:case 152:case 114:case 151:case 104:case 108:case 112:case 142:case 18:case 22:case 29:case 51:case 50:case 103:case 10:case 8:case 9:case 110:case 95:case 146:case 41:case 57:case 53:case 25:case 136:case 100:case 128:case 14:case 15:return!0;case 98:return!e;case 40:return!e&&tt(Gr);case 20:return!e&&tt(Xr);default:return it()}}function Xr(){return We(),21===Ve()||vr(!1)||Yr()}function Qr(){var e=qe();return at(136),gt(q.createInferTypeNode(function(){var e=qe();return gt(q.createTypeParameterDeclaration(bt(),void 0,void 0),e)}()),e)}function Zr(){var e=Ve();switch(e){case 139:case 152:case 143:return function(e){var t=qe();return at(e),gt(q.createTypeOperatorNode(e,Zr()),t)}(e);case 136:return Qr()}return function(){for(var e=qe(),t=$r();!s.hasPrecedingLineBreak();)switch(Ve()){case 53:We(),t=gt(q.createJSDocNonNullableType(t),e);break;case 57:if(tt(zt))return t;We(),t=gt(q.createJSDocNullableType(t),e);break;case 22:if(at(22),Yr()){var r=ln();at(23),t=gt(q.createIndexedAccessTypeNode(t,r),e)}else at(23),t=gt(q.createArrayTypeNode(t),e);break;default:return t}return t}()}function en(t){if(an()){var r=Jr();return ze(r,e.isFunctionTypeNode(r)?t?e.Diagnostics.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:e.Diagnostics.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:t?e.Diagnostics.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:e.Diagnostics.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type),r}}function tn(e,t,r){var n=qe(),i=51===e,a=st(e),o=a&&en(i)||t();if(Ve()===e||a){for(var s=[o];st(e);)s.push(en(i)||t());o=gt(r(mt(s,n)),n)}return o}function rn(){return tn(50,Zr,q.createIntersectionTypeNode)}function nn(){return We(),103===Ve()}function an(){return 29===Ve()||(!(20!==Ve()||!tt(on))||(103===Ve()||126===Ve()&&tt(nn)))}function on(){if(We(),21===Ve()||25===Ve())return!0;if(function(){if(e.isModifierKind(Ve())&&Wi(),it()||108===Ve())return We(),!0;if(22===Ve()||18===Ve()){var t=S.length;return Ni(),t===S.length}return!1}()){if(58===Ve()||27===Ve()||57===Ve()||62===Ve())return!0;if(21===Ve()&&(We(),38===Ve()))return!0}return!1}function sn(){var e=qe(),t=it()&&rt(cn),r=ln();return t?gt(q.createTypePredicateNode(void 0,t,r),e):r}function cn(){var e=bt();if(138===Ve()&&!s.hasPrecedingLineBreak())return We(),e}function ln(){return ve(40960,dn)}function un(e,t){var r=40960&R;if(r){ae(!1,r);var n=pn(e,t);return ae(!0,r),n}return pn(e,t)}function dn(e){if(an())return Jr();var t=qe(),r=tn(51,rn,q.createUnionTypeNode);if(!e&&!s.hasPrecedingLineBreak()&&st(94)){var n=dn(!0);at(57);var i=dn();at(58);var a=dn();return gt(q.createConditionalTypeNode(r,n,i,a),t)}return r}function pn(e,t){return aa(q.createTypeReferenceNode(aa(q.createIdentifier(t),e,e)),e,e)}function fn(){return st(58)?ln():void 0}function mn(){switch(Ve()){case 108:case 106:case 104:case 110:case 95:case 8:case 9:case 10:case 14:case 15:case 20:case 22:case 18:case 98:case 83:case 103:case 43:case 67:case 78:return!0;case 84:return Ae();case 100:return tt(Rr);default:return it()}}function gn(){if(mn())return!0;switch(Ve()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 45:case 46:case 29:case 131:case 125:case 79:return!0;case 24:return Ie()&&!!L||Fe()&&!!j;default:return!!function(){if(we()&&101===Ve())return!1;return e.getBinaryOperatorPrecedence(Ve())>0}()||it()}}function _n(){var e=Te();e&&le(!1);for(var t,r=qe(),n=yn();t=ct(27);)n=Cn(n,t,yn(),r);return e&&le(!0),n}function hn(){return st(62)?yn():void 0}function yn(){if(function(){if(125===Ve())return!!De()||tt(gi);return!1}())return function(){var e=qe();return We(),s.hasPrecedingLineBreak()||41!==Ve()&&!gn()?gt(q.createYieldExpression(void 0,void 0),e):gt(q.createYieldExpression(ct(41),yn()),e)}();var t=function(){var e=function(){if(20===Ve()||29===Ve()||130===Ve())return tt(bn);if(38===Ve())return 1;return 0}();if(0===e)return;return 1===e?En(!0):rt(kn)}()||function(){if(130===Ve()&&1===tt(xn)){var e=qe(),t=Gi();return vn(e,Dn(0),t)}return}();if(t)return t;var r=qe(),n=Dn(0);return 78===n.kind&&38===Ve()?vn(r,n,void 0):e.isLeftHandSideExpression(n)&&e.isAssignmentOperator($e())?Cn(n,dt(),yn(),r):Ae()&&e.isCallExpression(n)&&18===Ve()?function(e,t){var r=e.expression,n=oi(0);return gt(q.createEtsComponentExpression(r,e.arguments,n),t)}(n,r):function(t,r){var n,i=ct(57);if(!i)return t;return gt(q.createConditionalExpression(t,i,ve(l,yn),n=ut(58),e.nodeIsPresent(n)?yn():_t(78,!1,e.Diagnostics._0_expected,e.tokenToString(58))),r)}(n,r)}function vn(t,r,n){e.Debug.assert(38===Ve(),"parseSimpleArrowFunctionExpression should only have been called if we had a =>");var i=q.createParameterDeclaration(void 0,void 0,void 0,r,void 0,void 0,void 0);gt(i,r.pos);var a=mt([i],i.pos,i.end),o=ut(38),s=Sn(!!n);return re(gt(q.createArrowFunction(n,void 0,a,void 0,o,s),t))}function bn(){if(130===Ve()){if(We(),s.hasPrecedingLineBreak())return 0;if(20!==Ve()&&29!==Ve())return 0}var t=Ve(),r=We();if(20===t){if(21===r)switch(We()){case 38:case 58:case 18:return 1;default:return 0}if(22===r||18===r)return 2;if(25===r)return 1;if(e.isModifierKind(r)&&130!==r&&tt(Rt))return 1;if(!it()&&108!==r)return 0;switch(We()){case 58:return 1;case 57:return We(),58===Ve()||27===Ve()||62===Ve()||21===Ve()?1:0;case 27:case 62:case 21:return 2}return 0}if(e.Debug.assert(29===t),!it())return 0;if(1===E){var n=tt((function(){var e=We();if(94===e)switch(We()){case 62:case 31:return!1;default:return!0}else if(27===e)return!0;return!1}));return n?1:0}return 2}function kn(){var t=s.getTokenPos();if(!(null==O?void 0:O.has(t))){var r=En(!1);return r||(O||(O=new e.Set)).add(t),r}}function xn(){if(130===Ve()){if(We(),s.hasPrecedingLineBreak()||38===Ve())return 0;var e=Dn(0);if(!s.hasPrecedingLineBreak()&&78===e.kind&&38===Ve())return 1}return 0}function En(t){var r,n=qe(),i=Je(),a=Gi(),o=e.some(a,e.isAsyncModifier)?2:0,s=_r();if(at(20)){if(r=Sr(o),!at(21)&&!t)return}else{if(!t)return;r=$t()}var c=Er(58,!1);if(!c||t||!dr(c)){var l=c&&e.isJSDocFunctionType(c);if(t||38===Ve()||!l&&18===Ve()){var u=Ve(),d=ut(38),p=38===u||18===u?Sn(e.some(a,e.isAsyncModifier)):bt();return X(gt(q.createArrowFunction(a,s,r,c,d,p),n),i)}}}function Sn(e){if(18===Ve())return oi(e?2:0);if(26!==Ve()&&98!==Ve()&&83!==Ve()&&(!Ae()||84!==Ve())&&yi()&&(18===Ve()||98===Ve()||83===Ve()||Ae()&&84===Ve()||59===Ve()||!gn()))return oi(16|(e?2:0));var t=J;J=!1;var r=e?xe(yn):ve(32768,yn);return J=t,r}function Dn(e){var t=qe();return Tn(e,Nn(),t)}function wn(e){return 101===e||157===e}function Tn(t,r,n){for(;;){$e();var i=e.getBinaryOperatorPrecedence(Ve());if(!(42===Ve()?i>=t:i>t))break;if(101===Ve()&&we())break;if(127===Ve()){if(s.hasPrecedingLineBreak())break;We(),a=r,o=ln(),r=gt(q.createAsExpression(a,o),a.pos)}else r=Cn(r,dt(),Dn(i),n)}var a,o;return r}function Cn(e,t,r,n){return gt(q.createBinaryExpression(e,t,r),n)}function An(){var e=qe();return gt(q.createPrefixUnaryExpression(Ve(),Ke(Pn)),e)}function Nn(){if(function(){switch(Ve()){case 39:case 40:case 54:case 53:case 89:case 112:case 114:case 131:return!1;case 29:if(1!==E)return!1;default:return!0}}()){var t=qe(),r=In();return 42===Ve()?Tn(e.getBinaryOperatorPrecedence(Ve()),r,t):r}var n=Ve(),i=Pn();if(42===Ve()){t=e.skipTrivia(b,i.pos);var a=i.end;207===i.kind?Be(t,a,e.Diagnostics.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):Be(t,a,e.Diagnostics.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,e.tokenToString(n))}return i}function Pn(){switch(Ve()){case 39:case 40:case 54:case 53:return An();case 89:return e=qe(),gt(q.createDeleteExpression(Ke(Pn)),e);case 112:return function(){var e=qe();return gt(q.createTypeOfExpression(Ke(Pn)),e)}();case 114:return function(){var e=qe();return gt(q.createVoidExpression(Ke(Pn)),e)}();case 29:return function(){var e=qe();at(29);var t=ln();at(31);var r=Pn();return gt(q.createTypeAssertion(t,r),e)}();case 131:if(131===Ve()&&(Ce()||tt(gi)))return function(){var e=qe();return gt(q.createAwaitExpression(Ke(Pn)),e)}();default:return In()}var e}function In(){if(45===Ve()||46===Ve()){var t=qe();return gt(q.createPrefixUnaryExpression(Ve(),Ke(Fn)),t)}if(1===E&&29===Ve()&&tt(Lt))return Rn(!0);var r=Fn();if(e.Debug.assert(e.isLeftHandSideExpression(r)),(45===Ve()||46===Ve())&&!s.hasPrecedingLineBreak()){var n=Ve();return We(),gt(q.createPostfixUnaryExpression(r,n),r.pos)}return r}function Fn(){var t,r=qe();return 100===Ve()?tt(Fr)?(g|=1048576,t=dt()):tt(Or)?(We(),We(),t=gt(q.createMetaProperty(100,kt()),r),g|=2097152):t=On():t=106===Ve()?function(){var t=qe(),r=dt();if(29===Ve()){var n=qe();void 0!==rt(Yn)&&Be(n,qe(),e.Diagnostics.super_may_not_use_type_arguments)}if(20===Ve()||24===Ve()||22===Ve())return r;return ut(24,e.Diagnostics.super_must_be_followed_by_an_argument_list_or_member_access),gt(q.createPropertyAccessExpression(r,Zt(!0,!0)),t)}():On(),Gn(r,t)}function On(){var e=qe();return Hn(e,Ie()&&L&&24===Ve()?aa(q.createIdentifier(L.instance,void 0,78),e,e):Fe()&&j&&24===Ve()?aa(q.createIdentifier(j.instance,void 0,78),e,e):Me()&&z&&24===Ve()?aa(q.createIdentifier(z+"Instance",void 0,78),e,e):Xn(),!0)}function Rn(t,r){var n,i=qe(),a=function(e){var t=qe();if(at(29),31===Ve())return Ze(),gt(q.createJsxOpeningFragment(),t);var r,n=jn(),i=0==(131072&R)?na():void 0,a=function(){var e=qe();return gt(q.createJsxAttributes(qt(13,zn)),e)}();31===Ve()?(Ze(),r=q.createJsxOpeningElement(n,i,a)):(at(43),e?at(31):(at(31,void 0,!1),Ze()),r=q.createJsxSelfClosingElement(n,i,a));return gt(r,t)}(t);if(278===a.kind){var o=Ln(a),s=function(e){var t=qe();at(30);var r=jn();e?at(31):(at(31,void 0,!1),Ze());return gt(q.createJsxClosingElement(r),t)}(t);w(a.tagName,s.tagName)||ze(s,e.Diagnostics.Expected_corresponding_JSX_closing_tag_for_0,e.getTextOfNodeFromSourceText(b,a.tagName)),n=gt(q.createJsxElement(a,o,s),i)}else 281===a.kind?n=gt(q.createJsxFragment(a,Ln(a),function(t){var r=qe();at(30),e.tokenIsIdentifierOrKeyword(Ve())&&ze(jn(),e.Diagnostics.Expected_corresponding_closing_tag_for_JSX_fragment);t?at(31):(at(31,void 0,!1),Ze());return gt(q.createJsxJsxClosingFragment(),r)}(t)),i):(e.Debug.assert(277===a.kind),n=a);if(t&&29===Ve()){var c=void 0===r?n.pos:r,l=rt((function(){return Rn(!0,c)}));if(l){var u=_t(27,!1);return e.setTextRangePosWidth(u,l.pos,0),Be(e.skipTrivia(b,c),l.end,e.Diagnostics.JSX_expressions_must_have_one_parent_element),gt(q.createBinaryExpression(n,u,l),i)}}return n}function Mn(t,r){switch(r){case 1:if(e.isJsxOpeningFragment(t))ze(t,e.Diagnostics.JSX_fragment_has_no_corresponding_closing_tag);else{var n=t.tagName;Be(e.skipTrivia(b,n.pos),n.end,e.Diagnostics.JSX_element_0_has_no_corresponding_closing_tag,e.getTextOfNodeFromSourceText(b,t.tagName))}return;case 30:case 7:return;case 11:case 12:return i=qe(),a=q.createJsxText(s.getTokenValue(),12===C),C=s.scanJsxToken(),gt(a,i);case 18:return Bn(!1);case 29:return Rn(!1);default:return e.Debug.assertNever(r)}var i,a}function Ln(e){var t=[],r=qe(),n=F;for(F|=16384;;){var i=Mn(e,C=s.reScanJsxToken());if(!i)break;t.push(i)}return F=n,mt(t,r)}function jn(){var e=qe();Qe();for(var t=108===Ve()?dt():kt();st(24);)t=gt(q.createPropertyAccessExpression(t,Zt(!0,!1)),e);return t}function Bn(e){var t,r,n=qe();if(at(18))return 19!==Ve()&&(t=ct(25),r=_n()),e?at(19):at(19,void 0,!1)&&Ze(),gt(q.createJsxExpression(t,r),n)}function zn(){if(18===Ve())return function(){var e=qe();at(18),at(25);var t=_n();return at(19),gt(q.createJsxSpreadAttribute(t),e)}();Qe();var e=qe();return gt(q.createJsxAttribute(kt(),62!==Ve()?void 0:10===(C=s.scanJsxAttributeValue())?ar():Bn(!0)),e)}function Un(){return We(),e.tokenIsIdentifierOrKeyword(Ve())||22===Ve()||Kn()}function qn(t){if(32&t.flags)return!0;if(e.isNonNullExpression(t)){for(var r=t.expression;e.isNonNullExpression(r)&&!(32&r.flags);)r=r.expression;if(32&r.flags){for(;e.isNonNullExpression(t);)t.flags|=32,t=t.expression;return!0}}return!1}function Jn(t,r,n){var i=Zt(!0,!0),a=n||qn(r),o=a?q.createPropertyAccessChain(r,n,i):q.createPropertyAccessExpression(r,i);return a&&e.isPrivateIdentifier(o.name)&&ze(o.name,e.Diagnostics.An_optional_chain_cannot_contain_private_identifiers),gt(o,t)}function Vn(t,r,n){var i;if(23===Ve())i=_t(78,!0,e.Diagnostics.An_element_access_expression_should_take_an_argument);else{var a=ke(_n);e.isStringOrNumericLiteralLike(a)&&(a.text=ht(a.text)),i=a}return at(23),gt(n||qn(r)?q.createElementAccessChain(r,n,i):q.createElementAccessExpression(r,i),t)}function Hn(t,r,n){for(;;){var i=void 0,a=!1;if(n&&28===Ve()&&tt(Un)?(i=ut(28),a=e.tokenIsIdentifierOrKeyword(Ve())):a=st(24),a)r=Jn(t,r,i);else if(i||53!==Ve()||s.hasPrecedingLineBreak())if(!i&&Te()||!st(22)){if(!Kn())return r;r=Wn(t,r,i,void 0)}else r=Vn(t,r,i);else We(),r=gt(q.createNonNullExpression(r),t)}}function Kn(){return 14===Ve()||15===Ve()}function Wn(e,t,r,n){var i=q.createTaggedTemplateExpression(t,n,14===Ve()?(Ye(),ar()):er(!0));return(r||32&t.flags)&&(i.flags|=32),i.questionDotToken=r,gt(i,e)}function Gn(t,r){for(var n,i,a,o,s;;){r=Hn(t,r,!0);var l=ct(28);if(0!=(131072&R)||29!==Ve()&&47!==Ve()){if(20===Ve()){var u=void 0;if(((Oe()||Re())&&Ne()||Re())&&e.isPropertyAccessExpression(r)){var d=e.getRootEtsComponent(r);if(d){var p=d.expression.escapedText.toString();(s=e.getTextOfPropertyName(r.name).toString())===(null===(i=null===(n=null==c?void 0:c.ets)||void 0===n?void 0:n.styles)||void 0===i?void 0:i.property)?(ye(!0),z=p):(ye(!1),z=void 0),u=yr(t,p+"Attribute")}else Me()&&z&&(u=yr(t,z+"Attribute"))}f=$n();r=gt(l||qn(r)?q.createCallChain(r,l,u,f):q.createCallExpression(r,u,f),t);continue}}else if(u=rt(Yn)){if(Kn()){r=Wn(t,r,l,u);continue}var f=$n();r=gt(l||qn(r)?q.createCallChain(r,l,u,f):q.createCallExpression(r,u,f),t);continue}if(l){var m=_t(78,!1,e.Diagnostics.Identifier_expected);r=gt(q.createPropertyAccessChain(r,l,m),t)}break}return s===(null===(o=null===(a=null==c?void 0:c.ets)||void 0===a?void 0:a.styles)||void 0===o?void 0:o.property)&&(ye(!1),z=void 0),r}function $n(){at(20);var e=Wt(11,Zn);return at(21),e}function Yn(){if(0==(131072&R)&&29===Xe()){We();var e=Wt(20,ln);if(at(31))return e&&function(){switch(Ve()){case 20:case 14:case 15:case 24:case 21:case 23:case 58:case 26:case 57:case 34:case 36:case 35:case 37:case 55:case 56:case 60:case 52:case 50:case 51:case 19:case 1:return!0;default:return!1}}()?e:void 0}}function Xn(){switch(Ve()){case 8:case 9:case 10:case 14:return ar();case 108:case 106:case 104:case 110:case 95:return dt();case 20:return function(){var e=qe(),t=Je();at(20);var r=ke(_n);return at(21),X(gt(q.createParenthesizedExpression(r),e),t)}();case 22:return ei();case 18:return ri();case 130:if(!tt(mi))break;return ni();case 83:return Qi(qe(),Je(),void 0,void 0,223);case 98:return ni();case 103:return function(){fe(Pe());var t=qe();if(at(103),st(24)){var r=kt();return gt(q.createMetaProperty(103,r),t)}var n,i,a=qe(),o=Xn();for(;;){o=Hn(a,o,!1),n=rt(Yn),Kn()&&(e.Debug.assert(!!n,"Expected a type argument list; all plain tagged template starts should be consumed in 'parseMemberExpressionRest'"),o=Wn(a,o,void 0,n),n=void 0);break}20===Ve()?i=$n():n&&Be(t,s.getStartPos(),e.Diagnostics.A_new_expression_with_type_arguments_must_always_be_followed_by_a_parenthesized_argument_list);return fe(!1),gt(q.createNewExpression(o,n,i),t)}();case 43:case 67:if(13===(C=s.reScanSlashToken()))return ar();break;case 15:return er(!1)}return!Pe()||!(null!==(o=null===(a=c.ets)||void 0===a?void 0:a.components)&&void 0!==o?o:[]).includes(s.getTokenText())||Ae()&&Se(256)?bt(e.Diagnostics.Expression_expected):(t=qe(),r=vt(),n=$n(),i=18===Ve()?oi(0):void 0,gt(q.createEtsComponentExpression(r,n,i),t));var t,r,n,i,a,o}function Qn(){return 25===Ve()?function(){var e=qe();at(25);var t=yn();return gt(q.createSpreadElement(t),e)}():27===Ve()?gt(q.createOmittedExpression(),qe()):yn()}function Zn(){return ve(l,Qn)}function ei(){var e=qe();at(22);var t=s.hasPrecedingLineBreak(),r=Wt(15,Qn);return at(23),gt(q.createArrayLiteralExpression(r,t),e)}function ti(){var e=qe(),t=Je();if(ct(25)){var r=yn();return X(gt(q.createSpreadAssignment(r),e),t)}var n=Hi(),i=Wi();if(wt(135))return Ui(e,t,n,i,168);if(wt(147))return Ui(e,t,n,i,169);var a,o=ct(41),s=it(),c=St(),l=ct(57),u=ct(53);if(o||20===Ve()||29===Ve())return ji(e,t,n,i,o,c,l,u);if(s&&58!==Ve()){var d=ct(62),p=d?ke(yn):void 0;(a=q.createShorthandPropertyAssignment(c,p)).equalsToken=d}else{at(58);var f=ke(yn);a=q.createPropertyAssignment(c,f)}return a.decorators=n,a.modifiers=i,a.questionToken=l,a.exclamationToken=u,X(gt(a,e),t)}function ri(){var t=qe(),r=s.getTokenPos();at(18);var n=s.hasPrecedingLineBreak(),i=Wt(12,ti,!0);if(!at(19)){var a=e.lastOrUndefined(S);a&&a.code===e.Diagnostics._0_expected.code&&e.addRelatedInfo(a,e.createDetachedDiagnostic(p,r,1,e.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here))}return gt(q.createObjectLiteralExpression(i,n),t)}function ni(){var t=Te();t&&le(!1);var r=qe(),n=Je(),i=Wi();at(98);var a=ct(41),o=a?1:0,s=e.some(i,e.isAsyncModifier)?2:0,c=o&&s?be(40960,ii):o?function(e){return be(8192,e)}(ii):s?xe(ii):ii(),l=_r(),u=Dr(o|s),d=Er(58,!1),p=oi(o|s);return t&&le(!0),X(gt(q.createFunctionExpression(i,a,c,l,u,d,p),r),n)}function ii(){return nt()?vt():void 0}function ai(t,r){var n=qe(),i=s.getTokenPos();if(at(18,r)||t){var a=s.hasPrecedingLineBreak(),o=qt(1,bi);if(!at(19)){var c=e.lastOrUndefined(S);c&&c.code===e.Diagnostics._0_expected.code&&e.addRelatedInfo(c,e.createDetachedDiagnostic(p,i,1,e.Diagnostics.The_parser_expected_to_find_a_to_match_the_token_here))}return gt(q.createBlock(o,a),n)}o=$t();return gt(q.createBlock(o,void 0),n)}function oi(e,t){var r=De();ce(!!(1&e));var n=Ce();ue(!!(2&e));var i=J;J=!1;var a=Te();a&&le(!1);var o=ai(!!(16&e),t);return a&&le(!0),J=i,ce(r),ue(n),o}function si(){var e=qe();at(97);var t,r,n=ct(131);if(at(20),26!==Ve()&&(t=113===Ve()||119===Ve()||85===Ve()?Fi(!0):be(4096,_n)),n?at(157):st(157)){var i=ke(yn);at(21),r=q.createForOfStatement(n,t,i,bi())}else if(st(101)){i=ke(_n);at(21),r=q.createForInStatement(t,i,bi())}else{at(26);var a=26!==Ve()&&21!==Ve()?ke(_n):void 0;at(26);var o=21!==Ve()?ke(_n):void 0;at(21),r=q.createForStatement(t,a,o,bi())}return gt(r,e)}function ci(e){var t=qe();at(243===e?80:86);var r=pt()?void 0:bt();return ft(),gt(243===e?q.createBreakStatement(r):q.createContinueStatement(r),t)}function li(){return 81===Ve()?function(){var e=qe();at(81);var t=ke(_n);at(58);var r=qt(3,bi);return gt(q.createCaseClause(t,r),e)}():function(){var e=qe();at(88),at(58);var t=qt(3,bi);return gt(q.createDefaultClause(t),e)}()}function ui(){var e=qe();at(107),at(20);var t=ke(_n);at(21);var r=function(){var e=qe();at(18);var t=qt(2,li);return at(19),gt(q.createCaseBlock(t),e)}();return gt(q.createSwitchStatement(t,r),e)}function di(){var e=qe();at(111);var t,r=ai(!1),n=82===Ve()?function(){var e,t=qe();at(82),st(20)?(e=Ii(),at(21)):e=void 0;var r=ai(!1);return gt(q.createCatchClause(e,r),t)}():void 0;return n&&96!==Ve()||(at(96),t=ai(!1)),gt(q.createTryStatement(r,n,t),e)}function pi(){return We(),e.tokenIsIdentifierOrKeyword(Ve())&&!s.hasPrecedingLineBreak()}function fi(){return We(),83===Ve()&&!s.hasPrecedingLineBreak()}function mi(){return We(),98===Ve()&&!s.hasPrecedingLineBreak()}function gi(){return We(),(e.tokenIsIdentifierOrKeyword(Ve())||8===Ve()||9===Ve()||10===Ve())&&!s.hasPrecedingLineBreak()}function _i(){for(;;)switch(Ve()){case 113:case 119:case 85:case 98:case 83:case 92:return!0;case 84:return Ae();case 118:case 150:return We(),!s.hasPrecedingLineBreak()&&it();case 140:case 141:return Di();case 126:case 130:case 134:case 121:case 122:case 123:case 143:if(We(),s.hasPrecedingLineBreak())return!1;continue;case 155:return We(),18===Ve()||78===Ve()||93===Ve();case 100:return We(),10===Ve()||41===Ve()||18===Ve()||e.tokenIsIdentifierOrKeyword(Ve());case 93:var t=We();if(150===t&&(t=tt(We)),62===t||41===t||18===t||88===t||127===t)return!0;continue;case 124:We();continue;default:return!1}}function hi(){return tt(_i)}function yi(){switch(Ve()){case 59:case 26:case 18:case 113:case 119:case 98:case 83:case 92:case 99:case 90:case 115:case 97:case 86:case 80:case 105:case 116:case 107:case 109:case 111:case 87:case 82:case 96:case 130:case 134:case 118:case 140:case 141:case 150:case 155:return!0;case 84:return Ae();case 100:return hi()||tt(Rr);case 85:case 93:return hi();case 123:case 121:case 122:case 124:case 143:return hi()||!tt(pi);default:return gn()}}function vi(){return We(),it()||18===Ve()||22===Ve()}function bi(){switch(Ve()){case 26:return t=qe(),at(26),gt(q.createEmptyStatement(),t);case 18:return ai(!1);case 113:return Ri(qe(),Je(),void 0,void 0);case 119:if(tt(vi))return Ri(qe(),Je(),void 0,void 0);break;case 98:return Mi(qe(),Je(),void 0,void 0);case 84:if(Ae())return Xi(qe(),Je(),void 0,void 0);break;case 83:return Yi(qe(),Je(),void 0,void 0);case 99:return function(){var e=qe();at(99),at(20);var t=ke(_n);at(21);var r=bi(),n=st(91)?bi():void 0;return gt(q.createIfStatement(t,r,n),e)}();case 90:return function(){var e=qe();at(90);var t=bi();at(115),at(20);var r=ke(_n);return at(21),st(26),gt(q.createDoStatement(t,r),e)}();case 115:return function(){var e=qe();at(115),at(20);var t=ke(_n);at(21);var r=bi();return gt(q.createWhileStatement(t,r),e)}();case 97:return si();case 86:return ci(242);case 80:return ci(243);case 105:return function(){var e=qe();at(105);var t=pt()?void 0:ke(_n);return ft(),gt(q.createReturnStatement(t),e)}();case 116:return function(){var e=qe();at(116),at(20);var t=ke(_n);at(21);var r=be(16777216,bi);return gt(q.createWithStatement(t,r),e)}();case 107:return ui();case 109:return function(){var e=qe();at(109);var t=s.hasPrecedingLineBreak()?void 0:ke(_n);return void 0===t&&(I++,t=gt(q.createIdentifier(""),qe())),ft(),gt(q.createThrowStatement(t),e)}();case 111:case 82:case 96:return di();case 87:return function(){var e=qe();return at(87),ft(),gt(q.createDebuggerStatement(),e)}();case 59:return xi();case 130:case 118:case 150:case 140:case 141:case 134:case 85:case 92:case 93:case 100:case 121:case 122:case 123:case 126:case 124:case 143:case 155:if(hi())return xi()}var t;return function(){var t,r=qe(),n=Je(),i=20===Ve(),a=ke(_n);return e.isIdentifier(a)&&st(58)?t=q.createLabeledStatement(a,bi()):(ft(),t=q.createExpressionStatement(a),i&&(n=!1)),X(gt(t,r),n)}()}function ki(e){return 134===e.kind}function xi(){var t,r,n=e.some(tt((function(){return Hi(),Wi()})),ki);if(n){var i=be(8388608,(function(){var e=Vt(F);if(e)return Ht(e)}));if(i)return i}var a=qe(),o=Je(),s=Hi();if(98===Ve()||93===Ve())if(e.hasEtsExtendDecoratorNames(s,c)){var l=e.getEtsExtendDecoratorComponentNames(s,c);l.length>0&&(null===(t=c.ets)||void 0===t||t.extend.components.forEach((function(t){var r=t.name,n=t.type,i=t.instance;r===e.last(l)&&(L={name:r,type:n,instance:i})}))),me(!!L)}else if(e.hasEtsStylesDecoratorNames(s,c)){e.getEtsStylesDecoratorComponentNames(s,c).length>0&&(j=null===(r=c.ets)||void 0===r?void 0:r.styles.component),ge(!!j)}else pe(e.isTokenInsideBuilder(s,c));var u=Wi();if(n){for(var d=0,p=u;d<p.length;d++){p[d].flags|=8388608}return be(8388608,(function(){return Ei(a,o,s,u)}))}return Ei(a,o,s,u)}function Ei(e,t,r,n){switch(Ve()){case 113:case 119:case 85:return Ri(e,t,r,n);case 98:return Mi(e,t,r,n);case 83:return Yi(e,t,r,n);case 84:return Ae()?Xi(e,t,r,n):Si(e,r,n);case 118:return function(e,t,r,n){at(118);var i=bt(),a=_r(),o=ea(),s=Mr(),c=q.createInterfaceDeclaration(r,n,i,a,o,s);return X(gt(c,e),t)}(e,t,r,n);case 150:return function(e,t,r,n){at(150);var i=bt(),a=_r();at(62);var o=137===Ve()&&rt(Vr)||ln();ft();var s=q.createTypeAliasDeclaration(r,n,i,a,o);return X(gt(s,e),t)}(e,t,r,n);case 92:return function(e,t,r,n){at(92);var i,a=bt();at(18)?(i=ve(40960,(function(){return Wt(6,oa)})),at(19)):i=$t();var o=q.createEnumDeclaration(r,n,a,i);return X(gt(o,e),t)}(e,t,r,n);case 155:case 140:case 141:return function(e,t,r,n){var i=0;if(155===Ve())return la(e,t,r,n);if(st(141))i|=16;else if(at(140),10===Ve())return la(e,t,r,n);return ca(e,t,r,n,i)}(e,t,r,n);case 100:return function(e,t,r,n){at(100);var i,a=s.getStartPos();it()&&(i=bt());var o,c=!1;154===Ve()||"type"!==(null==i?void 0:i.escapedText)||!it()&&41!==Ve()&&18!==Ve()||(c=!0,i=it()?bt():void 0);if(i&&27!==Ve()&&154!==Ve())return function(e,t,r,n,i,a){at(62);var o=144===Ve()&&tt(ua)?function(){var e=qe();at(144),at(20);var t=pa();return at(21),gt(q.createExternalModuleReference(t),e)}():Xt(!1);ft();var s=q.createImportEqualsDeclaration(r,n,a,i,o),c=X(gt(s,e),t);return c}(e,t,r,n,i,c);(i||41===Ve()||18===Ve())&&(o=function(e,t,r){var n;e&&!st(27)||(n=41===Ve()?function(){var e=qe();at(41),at(127);var t=bt();return gt(q.createNamespaceImport(t),e)}():fa(267));return gt(q.createImportClause(r,e,n),t)}(i,a,c),at(154));var l=pa();ft();var u=q.createImportDeclaration(r,n,o,l);return X(gt(u,e),t)}(e,t,r,n);case 93:switch(We(),Ve()){case 88:case 62:return function(e,t,r,n){var i,a=Ce();ue(!0),st(62)?i=!0:at(88);var o=yn();ft(),ue(a);var s=q.createExportAssignment(r,n,i,o);return X(gt(s,e),t)}(e,t,r,n);case 127:return function(e,t,r,n){at(127),at(141);var i=bt();ft();var a=q.createNamespaceExportDeclaration(i);return a.decorators=r,a.modifiers=n,X(gt(a,e),t)}(e,t,r,n);default:return function(e,t,r,n){var i,a,o=Ce();ue(!0);var c=st(150),l=qe();st(41)?(st(127)&&(i=function(e){return gt(q.createNamespaceExport(kt()),e)}(l)),at(154),a=pa()):(i=fa(271),(154===Ve()||10===Ve()&&!s.hasPrecedingLineBreak())&&(at(154),a=pa()));ft(),ue(o);var u=q.createExportDeclaration(r,n,c,i,a);return X(gt(u,e),t)}(e,t,r,n)}default:return Si(e,r,n)}}function Si(t,r,n){if(r||n){var i=_t(274,!0,e.Diagnostics.Declaration_expected);return e.setTextRangePos(i,t),i.decorators=r,i.modifiers=n,i}}function Di(){return We(),!s.hasPrecedingLineBreak()&&(it()||10===Ve())}function wi(e,t){if(18===Ve()||!pt())return oi(e,t);ft()}function Ti(){var e=qe();if(27===Ve())return gt(q.createOmittedExpression(),e);var t=ct(25),r=Ni(),n=hn();return gt(q.createBindingElement(t,void 0,r,n),e)}function Ci(){var e,t=qe(),r=ct(25),n=nt(),i=St();n&&58!==Ve()?(e=i,i=void 0):(at(58),e=Ni());var a=hn();return gt(q.createBindingElement(r,i,e,a),t)}function Ai(){return 18===Ve()||22===Ve()||79===Ve()||nt()}function Ni(e){return 22===Ve()?function(){var e=qe();at(22);var t=Wt(10,Ti);return at(23),gt(q.createArrayBindingPattern(t),e)}():18===Ve()?function(){var e=qe();at(18);var t=Wt(9,Ci);return at(19),gt(q.createObjectBindingPattern(t),e)}():vt(e)}function Pi(){return Ii(!0)}function Ii(t){var r,n=qe(),i=Ni(e.Diagnostics.Private_identifiers_are_not_allowed_in_variable_declarations);t&&78===i.kind&&53===Ve()&&!s.hasPrecedingLineBreak()&&(r=dt());var a=fn(),o=wn(Ve())?void 0:hn();return gt(q.createVariableDeclaration(i,r,a,o),n)}function Fi(t){var r,n=qe(),i=0;switch(Ve()){case 113:break;case 119:i|=1;break;case 85:i|=2;break;default:e.Debug.fail()}if(We(),157===Ve()&&tt(Oi))r=$t();else{var a=we();se(t),r=Wt(8,t?Ii:Pi),se(a)}return gt(q.createVariableDeclarationList(r,i),n)}function Oi(){return Rt()&&21===We()}function Ri(e,t,r,n){var i=Fi(!1);ft();var a=q.createVariableStatement(n,i);return a.decorators=r,X(gt(a,e),t)}function Mi(t,r,n,i){var a=Ce(),o=e.modifiersToFlags(i);at(98);var l=ct(41),u=512&o?ii():vt();u&&e.hasEtsStylesDecoratorNames(n,c)&&H.set(u.escapedText.toString(),253),he(e.hasEtsBuilderDecoratorNames(n,c));var d=l?1:0,p=256&o?2:0,f=Fe()&&j?hr(s.getStartPos()):_r();1&o&&ue(!0);var m=Dr(d|p),g=s.getStartPos(),_=function(){var e=Er(58,!1);!e&&L&&Ie()&&(e=aa(q.createTypeReferenceNode(aa(q.createIdentifier(L.type),g,g)),g,g));!e&&j&&Fe()&&(e=aa(q.createTypeReferenceNode(aa(q.createIdentifier(j.type),g,g)),g,g));return e}(),h=wi(d|p,e.Diagnostics.or_expected);return he(!1),me(!1),L=void 0,ge(!1),j=void 0,pe(Oe()),ue(a),X(gt(q.createFunctionDeclaration(n,i,l,u,f,m,_,h),t),r)}function Li(t,r,n,i){return rt((function(){if(133===Ve()?at(133):10===Ve()&&20===tt(We)?rt((function(){var e=ar();return"constructor"===e.text?e:void 0})):void 0){var a=_r(),o=Dr(0),s=Er(58,!1),c=wi(0,e.Diagnostics.or_expected),l=q.createConstructorDeclaration(n,i,o,c);return l.typeParameters=a,l.type=s,X(gt(l,t),r)}}))}function ji(t,r,n,i,a,o,l,u,d){var p,f,m,g,_,h=null===(p=e.getPropertyNameForPropertyNameNode(o))||void 0===p?void 0:p.toString();(_e(h===(null===(g=null===(m=null===(f=null==c?void 0:c.ets)||void 0===f?void 0:f.render)||void 0===m?void 0:m.method)||void 0===g?void 0:g.find((function(e){return"build"===e})))),he(e.hasEtsBuilderDecoratorNames(n,c)),Ne()&&e.hasEtsStylesDecoratorNames(n,c))&&(h&&B&&K.set(h,{structName:B,kind:166}),e.getEtsStylesDecoratorComponentNames(n,c).length>0&&(j=null===(_=c.ets)||void 0===_?void 0:_.styles.component),ge(!!j));pe(Ne()&&(function(e){var t,r,n,i,a=null!==(i=null===(n=null===(r=null===(t=c.ets)||void 0===t?void 0:t.render)||void 0===r?void 0:r.method)||void 0===n?void 0:n.find((function(e){return"build"===e})))&&void 0!==i?i:"build";return 78===e.kind&&e.escapedText===a}(o)||function(t){return e.isTokenInsideBuilder(t,c)}(n)||function(e){var t,r,n,i,a=null!==(i=null===(n=null===(r=null===(t=c.ets)||void 0===t?void 0:t.render)||void 0===r?void 0:r.method)||void 0===n?void 0:n.find((function(e){return"pageTransition"===e})))&&void 0!==i?i:"pageTransition";return 78===e.kind&&e.escapedText===a}(o)));var y=a?1:0,v=e.some(i,e.isAsyncModifier)?2:0,b=Fe()&&j?hr(t):_r(),k=Dr(y|v),x=s.getStartPos(),E=function(){var e=Er(58,!1);!e&&j&&Fe()&&(e=aa(q.createTypeReferenceNode(aa(q.createIdentifier(j.type),x,x)),x,x));return e}(),S=wi(y|v,d),D=q.createMethodDeclaration(n,i,a,o,l,b,k,E,S);return D.exclamationToken=u,_e(!1),he(!1),ge(!1),j=void 0,pe(!1),X(gt(D,t),r)}function Bi(e,t,r,n,i,a){var o=a||s.hasPrecedingLineBreak()?void 0:ct(53),c=fn(),l=ve(45056,hn);return ft(),X(gt(q.createPropertyDeclaration(r,n,i,a||o,c,l),e),t)}function zi(t,r,n,i){var a=ct(41),o=St(),s=ct(57);return a||20===Ve()||29===Ve()?ji(t,r,n,i,a,o,s,void 0,e.Diagnostics.or_expected):Bi(t,r,n,i,o,s)}function Ui(e,t,r,n,i){var a=St(),o=_r(),s=Dr(0),c=Er(58,!1),l=wi(0),u=168===i?q.createGetAccessorDeclaration(r,n,a,s,c,l):q.createSetAccessorDeclaration(r,n,a,s,l);return u.typeParameters=o,c&&169===u.kind&&(u.type=c),X(gt(u,e),t)}function qi(){var t;if(59===Ve())return!0;for(;e.isModifierKind(Ve());){if(t=Ve(),e.isClassMemberModifier(t))return!0;We()}if(41===Ve())return!0;if(xt()&&(t=Ve(),We()),22===Ve())return!0;if(void 0!==t){if(!e.isKeyword(t)||147===t||135===t)return!0;switch(Ve()){case 20:case 29:case 53:case 58:case 62:case 57:return!0;default:return pt()}}return!1}function Ji(){if(Ce()&&131===Ve()){var t=qe(),r=bt(e.Diagnostics.Expression_expected);return We(),Gn(t,Hn(t,r,!0))}return Fn()}function Vi(){var e=qe();if(st(59)){var t=function(e){var t,r,n,i,a,o,l=null!==(n=null===(r=null===(t=c.ets)||void 0===t?void 0:t.extend)||void 0===r?void 0:r.decorator)&&void 0!==n?n:"Extend";78===Ve()&&s.getTokenText()===l&&oe(!0,4);var u=null!==(o=null===(a=null===(i=c.ets)||void 0===i?void 0:i.styles)||void 0===a?void 0:a.decorator)&&void 0!==o?o:"Styles";return 78===Ve()&&s.getTokenText()===u&&oe(!0,8),be(16384,e)}(Ji);return gt(q.createDecorator(t),e)}}function Hi(){for(var t,r,n=qe();r=Vi();)t=e.append(t,r);return t&&mt(t,n)}function Ki(t){var r=qe(),n=Ve();if(85===Ve()&&t){if(!rt(Tt))return}else if(!e.isModifierKind(Ve())||!rt(Ct))return;return gt(q.createToken(n),r)}function Wi(t){for(var r,n,i=qe();n=Ki(t);)r=e.append(r,n);return r&&mt(r,i)}function Gi(){var e;if(130===Ve()){var t=qe();We(),e=mt([gt(q.createToken(130),t)],t)}return e}function $i(){var t=qe();if(26===Ve())return We(),gt(q.createSemicolonClassElement(),t);var r=Je(),n=Hi(),i=Wi(!0);if(wt(135))return Ui(t,r,n,i,168);if(wt(147))return Ui(t,r,n,i,169);if(133===Ve()||10===Ve()){var a=Li(t,r,n,i);if(a)return a}if(Cr())return Nr(t,r,n,i);if(e.tokenIsIdentifierOrKeyword(Ve())||10===Ve()||8===Ve()||41===Ve()||22===Ve()){if(e.some(i,ki)){for(var o=0,s=i;o<s.length;o++){s[o].flags|=8388608}return be(8388608,(function(){return zi(t,r,n,i)}))}return zi(t,r,n,i)}if(n||i){var c=_t(78,!0,e.Diagnostics.Declaration_expected);return Bi(t,r,n,i,c,void 0)}return e.Debug.fail("Should not have attempted to parse class member declaration.")}function Yi(e,t,r,n){return Qi(e,t,r,n,254)}function Xi(t,r,n,i){return function(t,r,n,i){var a,o=Ce();at(84),de(!0);var s=Zi();B=null==s?void 0:s.escapedText.toString();var l=_r();e.some(i,e.isExportModifier)&&ue(!0);var u,d=ea(),p=null===(a=c.ets)||void 0===a?void 0:a.customComponent;!d&&p&&(d=function(e){var t=qe(),r=q.createHeritageClause(94,mt([gt(q.createExpressionWithTypeArguments(gt(q.createIdentifier(e),t,void 0,!0),void 0),t)],t,void 0,!1));return mt([gt(r,t,void 0,!0)],t,void 0,!1)}(p));at(18)?(u=function(e){var t=qt(5,$i),r=[],n=[];t.forEach((function(e){if(r.push(e),164===e.kind){var t=e;n.push(aa(q.createPropertySignature(t.modifiers,t.name,q.createToken(57),t.type)))}}));var i=[];if(n.length){var a=aa(q.createTypeLiteralNode(mt(n,0,0)));i.push(aa(q.createParameterDeclaration(void 0,void 0,void 0,aa(q.createIdentifier("value")),q.createToken(57),a)))}var o=aa(q.createBlock(mt([],0,0))),s=q.createConstructorDeclaration(void 0,void 0,mt(i,0,0),o);return r.unshift(aa(s,e,e)),mt(r,t.pos)}(t),at(19)):u=$t();ue(o);var f=q.createStructDeclaration(n,i,s,l,d,u);return B=void 0,K.clear(),de(!1),X(gt(f,t),r)}(t,r,n,i)}function Qi(t,r,n,i,a){var o=Ce();at(83);var s=Zi(),c=_r();e.some(i,e.isExportModifier)&&ue(!0);var l,u=ea();return at(18)?(l=qt(5,$i),at(19)):l=$t(),ue(o),X(gt(254===a?q.createClassDeclaration(n,i,s,c,u,l):q.createClassExpression(n,i,s,c,u,l),t),r)}function Zi(){return!nt()||117===Ve()&&tt(Mt)?void 0:yt(nt())}function ea(){if(ia())return qt(22,ta)}function ta(){var t=qe(),r=Ve();e.Debug.assert(94===r||117===r),We();var n=Wt(7,ra);return gt(q.createHeritageClause(r,n),t)}function ra(){var e=qe(),t=Fn(),r=na();return gt(q.createExpressionWithTypeArguments(t,r),e)}function na(){return 29===Ve()?Yt(20,ln,29,31):void 0}function ia(){return 94===Ve()||117===Ve()}function aa(e,t,r){return void 0===t&&(t=0),void 0===r&&(r=0),gt(e,t,r,!0)}function oa(){var e=qe(),t=Je(),r=St(),n=ke(hn);return X(gt(q.createEnumMember(r,n),e),t)}function sa(){var e,t=qe();return at(18)?(e=qt(1,bi),at(19)):e=$t(),gt(q.createModuleBlock(e),t)}function ca(e,t,r,n,i){var a=16&i,o=bt(),s=st(24)?ca(qe(),!1,void 0,void 0,4|a):sa();return X(gt(q.createModuleDeclaration(r,n,o,s,i),e),t)}function la(e,t,r,n){var i,a,o=0;return 155===Ve()?(i=bt(),o|=1024):(i=ar()).text=ht(i.text),18===Ve()?a=sa():ft(),X(gt(q.createModuleDeclaration(r,n,i,a,o),e),t)}function ua(){return 20===We()}function da(){return 43===We()}function pa(){if(10===Ve()){var e=ar();return e.text=ht(e.text),e}return _n()}function fa(e){var t=qe();return gt(267===e?q.createNamedImports(Yt(23,ga,18,19)):q.createNamedExports(Yt(23,ma,18,19)),t)}function ma(){return _a(273)}function ga(){return _a(268)}function _a(t){var r,n,i=qe(),a=e.isKeyword(Ve())&&!it(),o=s.getTokenPos(),c=s.getTextPos(),l=kt();return 127===Ve()?(r=l,at(127),a=e.isKeyword(Ve())&&!it(),o=s.getTokenPos(),c=s.getTextPos(),n=kt()):n=l,268===t&&a&&Be(o,c,e.Diagnostics.Identifier_expected),gt(268===t?q.createImportSpecifier(r,n):q.createExportSpecifier(r,n),i)}function ha(t){return function(t,r){return e.some(t.modifiers,(function(e){return e.kind===r}))}(t,93)||e.isImportEqualsDeclaration(t)&&e.isExternalModuleReference(t.moduleReference)||e.isImportDeclaration(t)||e.isExportAssignment(t)||e.isExportDeclaration(t)?t:void 0}function ya(t){return function(t){return e.isMetaProperty(t)&&100===t.keywordToken&&"meta"===t.name.escapedText}(t)?t:m(t,ya)}t.fixupParentReferences=ne,function(e){e[e.SourceElements=0]="SourceElements",e[e.BlockStatements=1]="BlockStatements",e[e.SwitchClauses=2]="SwitchClauses",e[e.SwitchClauseStatements=3]="SwitchClauseStatements",e[e.TypeMembers=4]="TypeMembers",e[e.ClassMembers=5]="ClassMembers",e[e.EnumMembers=6]="EnumMembers",e[e.HeritageClauseElement=7]="HeritageClauseElement",e[e.VariableDeclarations=8]="VariableDeclarations",e[e.ObjectBindingElements=9]="ObjectBindingElements",e[e.ArrayBindingElements=10]="ArrayBindingElements",e[e.ArgumentExpressions=11]="ArgumentExpressions",e[e.ObjectLiteralMembers=12]="ObjectLiteralMembers",e[e.JsxAttributes=13]="JsxAttributes",e[e.JsxChildren=14]="JsxChildren",e[e.ArrayLiteralMembers=15]="ArrayLiteralMembers",e[e.Parameters=16]="Parameters",e[e.JSDocParameters=17]="JSDocParameters",e[e.RestProperties=18]="RestProperties",e[e.TypeParameters=19]="TypeParameters",e[e.TypeArguments=20]="TypeArguments",e[e.TupleElementTypes=21]="TupleElementTypes",e[e.HeritageClauses=22]="HeritageClauses",e[e.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",e[e.Count=24]="Count"}(Q||(Q={})),function(e){e[e.False=0]="False",e[e.True=1]="True",e[e.Unknown=2]="Unknown"}(Z||(Z={})),function(t){function r(e){var t=qe(),r=(e?st:at)(18),n=be(4194304,mr);e&&!r||ot(19);var i=q.createJSDocTypeExpression(n);return ne(i),gt(i,t)}function n(){var e=qe(),t=st(18),r=Xt(!1);t&&ot(19);var n=q.createJSDocNameReference(r);return ne(n),gt(n,e)}var i,a;function o(t,i){void 0===t&&(t=0);var a=b,o=void 0===i?a.length:t+i;if(i=o-t,e.Debug.assert(t>=0),e.Debug.assert(t<=o),e.Debug.assert(o<=a.length),f(a,t)){var c,l,u,d=[];return s.scanRange(t+3,i-5,(function(){var e,r,n,i=1,p=t-(a.lastIndexOf("\n",t)+1)+4;function f(t){e||(e=p),d.push(t),p+=t.length}for(Ge();B(5););B(4)&&(i=0,p=0);e:for(;;){switch(Ve()){case 59:0===i||1===i?(g(d),E(v(p)),i=0,e=void 0):f(s.getTokenText());break;case 4:d.push(s.getTokenText()),i=0,p=0;break;case 41:var _=s.getTokenText();1===i||2===i?(i=2,f(_)):(i=1,p+=_.length);break;case 5:var h=s.getTokenText();2===i?d.push(h):void 0!==e&&p+h.length>e&&d.push(h.slice(e-p)),p+=h.length;break;case 1:break e;default:i=2,f(s.getTokenText())}Ge()}return m(d),g(d),r=d.length?d.join(""):void 0,n=c&&mt(c,l,u),gt(q.createJSDocComment(r,n),t,o)}))}function m(e){for(;e.length&&("\n"===e[0]||"\r"===e[0]);)e.shift()}function g(e){for(;e.length&&""===e[e.length-1].trim();)e.pop()}function _(){for(;;){if(Ge(),1===Ve())return!0;if(5!==Ve()&&4!==Ve())return!1}}function h(){if(5!==Ve()&&4!==Ve()||!tt(_))for(;5===Ve()||4===Ve();)Ge()}function y(){if((5===Ve()||4===Ve())&&tt(_))return"";for(var e=s.hasPrecedingLineBreak(),t=!1,r="";e&&41===Ve()||5===Ve()||4===Ve();)r+=s.getTokenText(),4===Ve()?(e=!0,t=!0,r=""):41===Ve()&&(e=!1),Ge();return t?r:""}function v(t){e.Debug.assert(59===Ve());var i=s.getTokenPos();Ge();var a,l=z(void 0),u=y();switch(l.escapedText){case"author":a=function(e,t,r,n){var i=function(){var e=[],t=!1,r=s.getToken();for(;1!==r&&4!==r;){if(29===r)t=!0;else{if(59===r&&!t)break;if(31===r&&t){e.push(s.getTokenText()),s.setTextPos(s.getTokenPos()+1);break}}e.push(s.getTokenText()),r=Ge()}return e.join("")}()+(k(e,o,r,n)||"");return gt(q.createJSDocAuthorTag(t,i||void 0),e)}(i,l,t,u);break;case"implements":a=function(e,t,r,n){var i=N(),a=qe();return gt(q.createJSDocImplementsTag(t,i,k(e,a,r,n)),e,a)}(i,l,t,u);break;case"augments":case"extends":a=function(e,t,r,n){var i=N(),a=qe();return gt(q.createJSDocAugmentsTag(t,i,k(e,a,r,n)),e,a)}(i,l,t,u);break;case"class":case"constructor":a=P(i,q.createJSDocClassTag,l,t,u);break;case"public":a=P(i,q.createJSDocPublicTag,l,t,u);break;case"private":a=P(i,q.createJSDocPrivateTag,l,t,u);break;case"protected":a=P(i,q.createJSDocProtectedTag,l,t,u);break;case"readonly":a=P(i,q.createJSDocReadonlyTag,l,t,u);break;case"deprecated":te=!0,a=P(i,q.createJSDocDeprecatedTag,l,t,u);break;case"this":a=function(e,t,n,i){var a=r(!0);h();var o=qe();return gt(q.createJSDocThisTag(t,a,k(e,o,n,i)),e,o)}(i,l,t,u);break;case"enum":a=function(e,t,n,i){var a=r(!0);h();var o=qe();return gt(q.createJSDocEnumTag(t,a,k(e,o,n,i)),e,o)}(i,l,t,u);break;case"arg":case"argument":case"param":return C(i,l,2,t);case"return":case"returns":a=function(t,r,n,i){e.some(c,e.isJSDocReturnTag)&&Be(r.pos,s.getTokenPos(),e.Diagnostics._0_tag_already_specified,r.escapedText);var a=D(),o=qe();return gt(q.createJSDocReturnTag(r,a,k(t,o,n,i)),t,o)}(i,l,t,u);break;case"template":a=function(e,t,n,i){var a=18===Ve()?r():void 0,o=function(){var e=qe(),t=[];do{h(),t.push(j()),y()}while(B(27));return mt(t,e)}(),s=qe();return gt(q.createJSDocTemplateTag(t,a,o,k(e,s,n,i)),e,s)}(i,l,t,u);break;case"type":a=A(i,l,t,u);break;case"typedef":a=function(t,r,n,i){var a,o=D();y();var s=F();h();var c,l=x(n);if(!o||T(o.type)){for(var u=void 0,d=void 0,f=void 0,m=!1;u=rt((function(){return R(n)}));)if(m=!0,332===u.kind){if(d){Le(e.Diagnostics.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);var g=e.lastOrUndefined(S);g&&e.addRelatedInfo(g,e.createDetachedDiagnostic(p,0,0,e.Diagnostics.The_tag_was_first_specified_here));break}d=u}else f=e.append(f,u);if(m){var _=o&&179===o.type.kind,v=q.createJSDocTypeLiteral(f,_);c=(o=d&&d.typeExpression&&!T(d.typeExpression.type)?d.typeExpression:gt(v,t)).end}}c=c||void 0!==l?qe():(null!==(a=null!=s?s:o)&&void 0!==a?a:r).end,l||(l=k(t,c,n,i));var b=q.createJSDocTypedefTag(r,o,s,l);return gt(b,t,c)}(i,l,t,u);break;case"callback":a=function(t,r,n,i){var a=F();h();var o=x(n),s=function(t){var r,n,i=qe();for(;r=rt((function(){return M(4,t)}));)n=e.append(n,r);return mt(n||[],i)}(n),c=rt((function(){if(B(59)){var e=v(n);if(e&&330===e.kind)return e}})),l=gt(q.createJSDocSignature(void 0,s,c),t),u=qe();o||(o=k(t,u,n,i));return gt(q.createJSDocCallbackTag(r,l,a,o),t,u)}(i,l,t,u);break;case"see":a=function(e,t,r,i){var a=n(),o=qe(),s=void 0!==r&&void 0!==i?k(e,o,r,i):void 0;return gt(q.createJSDocSeeTag(t,a,s),e,o)}(i,l,t,u);break;default:a=function(e,t,r,n){var i=qe();return gt(q.createJSDocUnknownTag(t,k(e,i,r,n)),e,i)}(i,l,t,u)}return a}function k(e,t,r,n){return n||(r+=t-e),x(r,n.slice(r))}function x(t,r){var n,i=[],a=0,o=!0;function c(e){n||(n=t),i.push(e),t+=e.length}void 0!==r&&(""!==r&&c(r),a=1);var l=Ve();e:for(;;){switch(l){case 4:a=0,i.push(s.getTokenText()),t=0;break;case 59:if(3===a||!o&&2===a){i.push(s.getTokenText());break}s.setTextPos(s.getTextPos()-1);case 1:break e;case 5:if(2===a||3===a)c(s.getTokenText());else{var u=s.getTokenText();void 0!==n&&t+u.length>n&&i.push(u.slice(n-t)),t+=u.length}break;case 18:a=2,tt((function(){return 59===Ge()&&e.tokenIsIdentifierOrKeyword(Ge())&&"link"===s.getTokenText()}))&&(c(s.getTokenText()),Ge(),c(s.getTokenText()),Ge()),c(s.getTokenText());break;case 61:a=3===a?2:3,c(s.getTokenText());break;case 41:if(0===a){a=1,t+=1;break}default:3!==a&&(a=2),c(s.getTokenText())}o=5===Ve(),l=Ge()}return m(i),g(i),0===i.length?void 0:i.join("")}function E(e){e&&(c?c.push(e):(c=[e],l=e.pos),u=e.end)}function D(){return y(),18===Ve()?r():void 0}function w(){var t=B(22);t&&h();var r,n=B(61),i=function(){var e=z();st(22)&&at(23);for(;st(24);){var t=z();st(22)&&at(23),e=Qt(e,t)}return e}();return n&&(lt(r=61)||_t(r,!1,e.Diagnostics._0_expected,e.tokenToString(r))),t&&(h(),ct(62)&&_n(),at(23)),{name:i,isBracketed:t}}function T(t){switch(t.kind){case 146:return!0;case 179:return T(t.elementType);default:return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&"Object"===t.typeName.escapedText&&!t.typeArguments}}function C(t,r,n,i){var a=D(),o=!a;y();var s=w(),c=s.name,l=s.isBracketed,u=y();o&&(a=D());var d=k(t,qe(),i,u),p=4!==n&&function(t,r,n,i){if(t&&T(t.type)){for(var a=qe(),o=void 0,s=void 0;o=rt((function(){return M(n,i,r)}));)329!==o.kind&&336!==o.kind||(s=e.append(s,o));if(s){var c=gt(q.createJSDocTypeLiteral(s,179===t.type.kind),a);return gt(q.createJSDocTypeExpression(c),a)}}}(a,c,n,i);return p&&(a=p,o=!0),gt(1===n?q.createJSDocPropertyTag(r,c,l,a,o,d):q.createJSDocParameterTag(r,c,l,a,o,d),t)}function A(t,n,i,a){e.some(c,e.isJSDocTypeTag)&&Be(n.pos,s.getTokenPos(),e.Diagnostics._0_tag_already_specified,n.escapedText);var o=r(!0),l=qe(),u=void 0!==i&&void 0!==a?k(t,l,i,a):void 0;return gt(q.createJSDocTypeTag(n,o,u),t,l)}function N(){var e=st(18),t=qe(),r=function(){var e=qe(),t=z();for(;st(24);){var r=z();t=gt(q.createPropertyAccessExpression(t,r),e)}return t}(),n=na(),i=gt(q.createExpressionWithTypeArguments(r,n),t);return e&&at(19),i}function P(e,t,r,n,i){var a=qe();return gt(t(r,k(e,a,n,i)),e,a)}function F(t){var r=s.getTokenPos();if(e.tokenIsIdentifierOrKeyword(Ve())){var n=z();if(st(24)){var i=F(!0);return gt(q.createModuleDeclaration(void 0,void 0,n,i,t?4:void 0),r)}return t&&(n.isInJSDocNamespace=!0),n}}function O(t,r){for(;!e.isIdentifier(t)||!e.isIdentifier(r);){if(e.isIdentifier(t)||e.isIdentifier(r)||t.right.escapedText!==r.right.escapedText)return!1;t=t.left,r=r.left}return t.escapedText===r.escapedText}function R(e){return M(1,e)}function M(t,r,n){for(var i=!0,a=!1;;)switch(Ge()){case 59:if(i){var o=L(t,r);return!(o&&(329===o.kind||336===o.kind)&&4!==t&&n&&(e.isIdentifier(o.name)||!O(n,o.name.left)))&&o}a=!1;break;case 4:i=!0,a=!1;break;case 41:a&&(i=!1),a=!0;break;case 78:i=!1;break;case 1:return!1}}function L(t,r){e.Debug.assert(59===Ve());var n=s.getStartPos();Ge();var i,a=z();switch(h(),a.escapedText){case"type":return 1===t&&A(n,a);case"prop":case"property":i=1;break;case"arg":case"argument":case"param":i=6;break;default:return!1}return!!(t&i)&&C(n,a,t,r)}function j(){var t=qe(),r=z(e.Diagnostics.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces);return gt(q.createTypeParameterDeclaration(r,void 0,void 0),t)}function B(e){return Ve()===e&&(Ge(),!0)}function z(t){if(!e.tokenIsIdentifierOrKeyword(Ve()))return _t(78,!t,t||e.Diagnostics.Identifier_expected);I++;var r=s.getTokenPos(),n=s.getTextPos(),i=Ve(),a=ht(s.getTokenValue()),o=gt(q.createIdentifier(a,void 0,i),r,n);return Ge(),o}}t.parseJSDocTypeExpressionForTests=function(t,n,i){G("file.js",t,99,void 0,1),s.setText(t,n,i),C=s.scan();var a=r(),o=ie("file.js",99,1,!1,[],q.createToken(1),0),c=e.attachFileToDiagnostics(S,o);return D&&(o.jsDocDiagnostics=e.attachFileToDiagnostics(D,o)),$(),a?{jsDocTypeExpression:a,diagnostics:c}:void 0},t.parseJSDocTypeExpression=r,t.parseJSDocNameReference=n,t.parseIsolatedJSDocComment=function(t,r,n){G("",t,99,void 0,1);var i=be(4194304,(function(){return o(r,n)})),a={languageVariant:0,text:t},s=e.attachFileToDiagnostics(S,a);return $(),i?{jsDoc:i,diagnostics:s}:void 0},t.parseJSDocComment=function(t,r,n){var i=C,a=S.length,s=V,c=be(4194304,(function(){return o(r,n)}));return e.setParent(c,t),131072&R&&(D||(D=[]),D.push.apply(D,S)),C=i,S.length=a,V=s,c},function(e){e[e.BeginningOfLine=0]="BeginningOfLine",e[e.SawAsterisk=1]="SawAsterisk",e[e.SavingComments=2]="SavingComments",e[e.SavingBackticks=3]="SavingBackticks"}(i||(i={})),function(e){e[e.Property=1]="Property",e[e.Parameter=2]="Parameter",e[e.CallbackParameter=4]="CallbackParameter"}(a||(a={}))}(ee=t.JSDocParser||(t.JSDocParser={}))}(l||(l={})),function(t){function r(t,r,i,o,s,c){return void(r?u(t):l(t));function l(t){var r="";if(c&&n(t)&&(r=o.substring(t.pos,t.end)),t._children&&(t._children=void 0),e.setTextRangePosEnd(t,t.pos+i,t.end+i),c&&n(t)&&e.Debug.assert(r===s.substring(t.pos,t.end)),m(t,l,u),e.hasJSDocNodes(t))for(var d=0,p=t.jsDoc;d<p.length;d++){l(p[d])}a(t,c)}function u(t){t._children=void 0,e.setTextRangePosEnd(t,t.pos+i,t.end+i);for(var r=0,n=t;r<n.length;r++){l(n[r])}}}function n(e){switch(e.kind){case 10:case 8:case 78:return!0}return!1}function i(t,r,n,i,a){e.Debug.assert(t.end>=r,"Adjusting an element that was entirely before the change range"),e.Debug.assert(t.pos<=n,"Adjusting an element that was entirely after the change range"),e.Debug.assert(t.pos<=t.end);var o=Math.min(t.pos,i),s=t.end>=n?t.end+a:Math.min(t.end,i);e.Debug.assert(o<=s),t.parent&&(e.Debug.assertGreaterThanOrEqual(o,t.parent.pos),e.Debug.assertLessThanOrEqual(s,t.parent.end)),e.setTextRangePosEnd(t,o,s)}function a(t,r){if(r){var n=t.pos,i=function(t){e.Debug.assert(t.pos>=n),n=t.end};if(e.hasJSDocNodes(t))for(var a=0,o=t.jsDoc;a<o.length;a++){i(o[a])}m(t,i),e.Debug.assert(n<=t.end)}}function o(t,r){var n,i=t;if(m(t,(function t(a){if(e.nodeIsMissing(a))return;if(!(a.pos<=r))return e.Debug.assert(a.pos>r),!0;if(a.pos>=i.pos&&(i=a),r<a.end)return m(a,t),!0;e.Debug.assert(a.end<=r),n=a})),n){var a=function(t){for(;;){var r=e.getLastChild(t);if(!r)return t;t=r}}(n);a.pos>i.pos&&(i=a)}return i}function s(t,r,n,i){var a=t.text;if(n&&(e.Debug.assert(a.length-n.span.length+n.newLength===r.length),i||e.Debug.shouldAssert(3))){var o=a.substr(0,n.span.start),s=r.substr(0,n.span.start);e.Debug.assert(o===s);var c=a.substring(e.textSpanEnd(n.span),a.length),l=r.substring(e.textSpanEnd(e.textChangeRangeNewSpan(n)),r.length);e.Debug.assert(c===l)}}function c(t){var r=t.statements,n=0;e.Debug.assert(n<r.length);var i=r[n],a=-1;return{currentNode:function(o){return o!==a&&(i&&i.end===o&&n<r.length-1&&(n++,i=r[n]),i&&i.pos===o||function(e){return r=void 0,n=-1,i=void 0,void m(t,a,o);function a(t){return e>=t.pos&&e<t.end&&(m(t,a,o),!0)}function o(t){if(e>=t.pos&&e<t.end)for(var s=0;s<t.length;s++){var c=t[s];if(c){if(c.pos===e)return r=t,n=s,i=c,!0;if(c.pos<e&&e<c.end)return m(c,a,o),!0}}return!1}}(o)),a=o,e.Debug.assert(!i||i.pos===o),i}}}var u;t.updateSourceFile=function(t,n,u,d){if(s(t,n,u,d=d||e.Debug.shouldAssert(2)),e.textChangeRangeIsUnchanged(u))return t;if(0===t.statements.length)return l.parseSourceFile(t.fileName,n,t.languageVersion,void 0,!0,t.scriptKind);var p=t;e.Debug.assert(!p.hasBeenIncrementallyParsed),p.hasBeenIncrementallyParsed=!0,l.fixupParentReferences(p);var f=t.text,g=c(t),_=function(t,r){for(var n=1,i=r.span.start,a=0;i>0&&a<=n;a++){var s=o(t,i);e.Debug.assert(s.pos<=i);var c=s.pos;i=Math.max(0,c-1)}var l=e.createTextSpanFromBounds(i,e.textSpanEnd(r.span)),u=r.newLength+(r.span.start-i);return e.createTextChangeRange(l,u)}(t,u);s(t,n,_,d),e.Debug.assert(_.span.start<=u.span.start),e.Debug.assert(e.textSpanEnd(_.span)===e.textSpanEnd(u.span)),e.Debug.assert(e.textSpanEnd(e.textChangeRangeNewSpan(_))===e.textSpanEnd(e.textChangeRangeNewSpan(u)));var h=e.textChangeRangeNewSpan(_).length-_.span.length;!function(t,n,o,s,c,l,u,d){return void p(t);function p(t){if(e.Debug.assert(t.pos<=t.end),t.pos>o)r(t,!1,c,l,u,d);else{var g=t.end;if(g>=n){if(t.intersectsChange=!0,t._children=void 0,i(t,n,o,s,c),m(t,p,f),e.hasJSDocNodes(t))for(var _=0,h=t.jsDoc;_<h.length;_++){p(h[_])}a(t,d)}else e.Debug.assert(g<n)}}function f(t){if(e.Debug.assert(t.pos<=t.end),t.pos>o)r(t,!0,c,l,u,d);else{var a=t.end;if(a>=n){t.intersectsChange=!0,t._children=void 0,i(t,n,o,s,c);for(var f=0,m=t;f<m.length;f++){var g=m[f];g.virtual||p(g)}}else e.Debug.assert(a<n)}}}(p,_.span.start,e.textSpanEnd(_.span),e.textSpanEnd(e.textChangeRangeNewSpan(_)),h,f,n,d);var y=l.parseSourceFile(t.fileName,n,t.languageVersion,g,!0,t.scriptKind);return y.commentDirectives=function(t,r,n,i,a,o,s,c){if(!t)return r;for(var l,u=!1,d=0,p=t;d<p.length;d++){var f=p[d],m=f.range,g=f.type;if(m.end<n)l=e.append(l,f);else if(m.pos>i){h();var _={range:{pos:m.pos+a,end:m.end+a},type:g};l=e.append(l,_),c&&e.Debug.assert(o.substring(m.pos,m.end)===s.substring(_.range.pos,_.range.end))}}return h(),l;function h(){u||(u=!0,l?r&&l.push.apply(l,r):l=r)}}(t.commentDirectives,y.commentDirectives,_.span.start,e.textSpanEnd(_.span),h,f,n,d),y},t.createSyntaxCursor=c,function(e){e[e.Value=-1]="Value"}(u||(u={}))}(u||(u={})),e.isDeclarationFileName=h,e.processCommentPragmas=y,e.processPragmasIntoFields=v;var b=new e.Map;function k(e){if(b.has(e))return b.get(e);var t=new RegExp("(\\s"+e+"\\s*=\\s*)('|\")(.+?)\\2","im");return b.set(e,t),t}var x=/^\/\/\/\s*<(\S+)\s.*?\/>/im,E=/^\/\/\/?\s*@(\S+)\s*(.*)\s*$/im;function S(t,r,n){var i=2===r.kind&&x.exec(n);if(i){var a=i[1].toLowerCase(),o=e.commentPragmas[a];if(!(o&&1&o.kind))return;if(o.args){for(var s={},c=0,l=o.args;c<l.length;c++){var u=l[c],d=k(u.name).exec(n);if(!d&&!u.optional)return;if(d)if(u.captureSpan){var p=r.pos+d.index+d[1].length+d[2].length;s[u.name]={value:d[3],pos:p,end:p+d[3].length}}else s[u.name]=d[3]}t.push({name:a,args:{arguments:s,range:r}})}else t.push({name:a,args:{arguments:{},range:r}})}else{var f=2===r.kind&&E.exec(n);if(f)return D(t,r,2,f);if(3===r.kind)for(var m=/\s*@(\S+)\s*(.*)\s*$/gim,g=void 0;g=m.exec(n);)D(t,r,4,g)}}function D(t,r,n,i){if(i){var a=i[1].toLowerCase(),o=e.commentPragmas[a];if(o&&o.kind&n){var s=function(t,r){if(!r)return{};if(!t.args)return{};for(var n=r.split(/\s+/),i={},a=0;a<t.args.length;a++){var o=t.args[a];if(!n[a]&&!o.optional)return"fail";if(o.captureSpan)return e.Debug.fail("Capture spans not yet implemented for non-xml pragmas");i[o.name]=n[a]}return i}(o,i[2]);"fail"!==s&&t.push({name:a,args:{arguments:s,range:r}})}}}function w(e,t){return e.kind===t.kind&&(78===e.kind?e.escapedText===t.escapedText:108===e.kind||e.name.escapedText===t.name.escapedText&&w(e.expression,t.expression))}e.tagNamesAreEquivalent=w}(d||(d={})),function(e){e.compileOnSaveCommandLineOption={name:"compileOnSave",type:"boolean"};var t=new e.Map(e.getEntries({preserve:1,"react-native":3,react:2,"react-jsx":4,"react-jsxdev":5}));e.inverseJsxOptionMap=new e.Map(e.arrayFrom(e.mapIterator(t.entries(),(function(e){var t=e[0];return[""+e[1],t]}))));var r,n,o=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["es2019","lib.es2019.d.ts"],["es2020","lib.es2020.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["webworker.iterable","lib.webworker.iterable.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.asyncgenerator","lib.es2018.asyncgenerator.d.ts"],["es2018.asynciterable","lib.es2018.asynciterable.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["es2019.array","lib.es2019.array.d.ts"],["es2019.object","lib.es2019.object.d.ts"],["es2019.string","lib.es2019.string.d.ts"],["es2019.symbol","lib.es2019.symbol.d.ts"],["es2020.bigint","lib.es2020.bigint.d.ts"],["es2020.promise","lib.es2020.promise.d.ts"],["es2020.sharedmemory","lib.es2020.sharedmemory.d.ts"],["es2020.string","lib.es2020.string.d.ts"],["es2020.symbol.wellknown","lib.es2020.symbol.wellknown.d.ts"],["es2020.intl","lib.es2020.intl.d.ts"],["esnext.array","lib.es2019.array.d.ts"],["esnext.symbol","lib.es2019.symbol.d.ts"],["esnext.asynciterable","lib.es2018.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.bigint","lib.es2020.bigint.d.ts"],["esnext.string","lib.esnext.string.d.ts"],["esnext.promise","lib.esnext.promise.d.ts"],["esnext.weakref","lib.esnext.weakref.d.ts"]];function s(t){var r=new e.Map,n=new e.Map;return e.forEach(t,(function(e){r.set(e.name.toLowerCase(),e),e.shortName&&n.set(e.shortName,e.name)})),{optionsNameMap:r,shortOptionNames:n}}function c(){return r||(r=s(e.optionDeclarations))}function l(e){return e&&void 0!==e.enableAutoDiscovery&&void 0===e.enable?{enable:e.enableAutoDiscovery,include:e.include||[],exclude:e.exclude||[]}:e}function u(t){return d(t,e.createCompilerDiagnostic)}function d(t,r){var n=e.arrayFrom(t.type.keys()).map((function(e){return"'"+e+"'"})).join(", ");return r(e.Diagnostics.Argument_for_0_option_must_be_Colon_1,"--"+t.name,n)}function p(e,t,r){return pe(e,fe(t||""),r)}function f(t,r,n){if(void 0===r&&(r=""),r=fe(r),!e.startsWith(r,"-")){if(""===r)return[];var i=r.split(",");switch(t.element.type){case"number":return e.mapDefined(i,(function(e){return de(t.element,parseInt(e),n)}));case"string":return e.mapDefined(i,(function(e){return de(t.element,e||"",n)}));default:return e.mapDefined(i,(function(e){return p(t.element,e,n)}))}}}function m(e){return e.name}function g(t,r,n,i){var a=e.getSpellingSuggestion(t,r.optionDeclarations,m);return a?n(r.unknownDidYouMeanDiagnostic,i||t,a.name):n(r.unknownOptionDiagnostic,i||t)}function _(t,r,n){var i,a={},o=[],s=[];return c(r),{options:a,watchOptions:i,fileNames:o,errors:s};function c(r){for(var n=0;n<r.length;){var c=r[n];if(n++,64===c.charCodeAt(0))l(c.slice(1));else if(45===c.charCodeAt(0)){var u=c.slice(45===c.charCodeAt(1)?2:1),d=v(t.getOptionsNameMap,u,!0);if(d)n=h(r,n,t,d,a,s);else{var p=v(I.getOptionsNameMap,u,!0);p?n=h(r,n,I,p,i||(i={}),s):s.push(g(u,t,e.createCompilerDiagnostic,c))}}else o.push(c)}}function l(t){var r=E(t,n||function(t){return e.sys.readFile(t)});if(e.isString(r)){for(var i=[],a=0;;){for(;a<r.length&&r.charCodeAt(a)<=32;)a++;if(a>=r.length)break;var o=a;if(34===r.charCodeAt(o)){for(a++;a<r.length&&34!==r.charCodeAt(a);)a++;a<r.length?(i.push(r.substring(o+1,a)),a++):s.push(e.createCompilerDiagnostic(e.Diagnostics.Unterminated_quoted_string_in_response_file_0,t))}else{for(;r.charCodeAt(a)>32;)a++;i.push(r.substring(o,a))}}c(i)}else s.push(r)}}function h(t,r,n,i,a,o){if(i.isTSConfigOnly)"null"===(s=t[r])?(a[i.name]=void 0,r++):"boolean"===i.type?"false"===s?(a[i.name]=de(i,!1,o),r++):("true"===s&&r++,o.push(e.createCompilerDiagnostic(e.Diagnostics.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,i.name))):(o.push(e.createCompilerDiagnostic(e.Diagnostics.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,i.name)),s&&!e.startsWith(s,"-")&&r++);else if(t[r]||"boolean"===i.type||o.push(e.createCompilerDiagnostic(n.optionTypeMismatchDiagnostic,i.name,j(i))),"null"!==t[r])switch(i.type){case"number":a[i.name]=de(i,parseInt(t[r]),o),r++;break;case"boolean":var s=t[r];a[i.name]=de(i,"false"!==s,o),"false"!==s&&"true"!==s||r++;break;case"string":a[i.name]=de(i,t[r]||"",o),r++;break;case"list":var c=f(i,t[r],o);a[i.name]=c||[],c&&r++;break;default:a[i.name]=p(i,t[r],o),r++}else a[i.name]=void 0,r++;return r}function y(e,t){return v(c,e,t)}function v(e,t,r){void 0===r&&(r=!1),t=t.toLowerCase();var n=e(),i=n.optionsNameMap,a=n.shortOptionNames;if(r){var o=a.get(t);void 0!==o&&(t=o)}return i.get(t)}e.libs=o.map((function(e){return e[0]})),e.libMap=new e.Map(o),e.optionsForWatch=[{name:"watchFile",type:new e.Map(e.getEntries({fixedpollinginterval:e.WatchFileKind.FixedPollingInterval,prioritypollinginterval:e.WatchFileKind.PriorityPollingInterval,dynamicprioritypolling:e.WatchFileKind.DynamicPriorityPolling,usefsevents:e.WatchFileKind.UseFsEvents,usefseventsonparentdirectory:e.WatchFileKind.UseFsEventsOnParentDirectory})),category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_UseFsEvents_UseFsEventsOnParentDirectory},{name:"watchDirectory",type:new e.Map(e.getEntries({usefsevents:e.WatchDirectoryKind.UseFsEvents,fixedpollinginterval:e.WatchDirectoryKind.FixedPollingInterval,dynamicprioritypolling:e.WatchDirectoryKind.DynamicPriorityPolling})),category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling},{name:"fallbackPolling",type:new e.Map(e.getEntries({fixedinterval:e.PollingWatchKind.FixedInterval,priorityinterval:e.PollingWatchKind.PriorityInterval,dynamicpriority:e.PollingWatchKind.DynamicPriority})),category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority},{name:"synchronousWatchDirectory",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively},{name:"excludeDirectories",type:"list",element:{name:"excludeDirectory",type:"string",isFilePath:!0,extraValidation:ke},category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:ke},category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively}],e.commonOptionsWithBuild=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Print_this_message},{name:"help",shortName:"?",type:"boolean"},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Watch_input_files},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen},{name:"listFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_files_part_of_the_compilation},{name:"explainFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_files_and_the_reason_they_are_part_of_the_compilation},{name:"listEmittedFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_generated_files_part_of_the_compilation},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Stylize_errors_and_messages_using_color_and_context_experimental},{name:"traceResolution",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Enable_tracing_of_the_name_resolution_process},{name:"diagnostics",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Show_diagnostic_information},{name:"extendedDiagnostics",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Show_verbose_diagnostic_information},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:e.Diagnostics.FILE_OR_DIRECTORY,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Generates_a_CPU_profile},{name:"generateTrace",type:"string",isFilePath:!0,isCommandLineOnly:!0,paramType:e.Diagnostics.DIRECTORY,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Enable_incremental_compilation,transpileOptionValue:void 0},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it},{name:"locale",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_locale_used_when_displaying_messages_to_the_user_e_g_en_us}],e.targetOptionDeclaration={name:"target",shortName:"t",type:new e.Map(e.getEntries({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,es2019:6,es2020:7,esnext:99})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,paramType:e.Diagnostics.VERSION,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_ES2019_ES2020_or_ESNEXT},e.optionDeclarations=i(i([],e.commonOptionsWithBuild),[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Show_all_compiler_options},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Print_the_compiler_s_version},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,paramType:e.Diagnostics.FILE_OR_DIRECTORY,description:e.Diagnostics.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:!0,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Build_one_or_more_projects_and_their_dependencies_if_out_of_date},{name:"showConfig",type:"boolean",category:e.Diagnostics.Command_line_Options,isCommandLineOnly:!0,description:e.Diagnostics.Print_the_final_configuration_instead_of_building},{name:"listFilesOnly",type:"boolean",category:e.Diagnostics.Command_line_Options,affectsSemanticDiagnostics:!0,affectsEmit:!0,isCommandLineOnly:!0,description:e.Diagnostics.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing},e.targetOptionDeclaration,{name:"module",shortName:"m",type:new e.Map(e.getEntries({none:e.ModuleKind.None,commonjs:e.ModuleKind.CommonJS,amd:e.ModuleKind.AMD,system:e.ModuleKind.System,umd:e.ModuleKind.UMD,es6:e.ModuleKind.ES2015,es2015:e.ModuleKind.ES2015,es2020:e.ModuleKind.ES2020,esnext:e.ModuleKind.ESNext})),affectsModuleResolution:!0,affectsEmit:!0,paramType:e.Diagnostics.KIND,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_es2020_or_ESNext},{name:"lib",type:"list",element:{name:"lib",type:e.libMap},affectsModuleResolution:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_library_files_to_be_included_in_the_compilation,transpileOptionValue:void 0},{name:"allowJs",type:"boolean",affectsModuleResolution:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Allow_javascript_files_to_be_compiled},{name:"checkJs",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Report_errors_in_js_files},{name:"jsx",type:t,affectsSourceFile:!0,affectsEmit:!0,affectsModuleResolution:!0,paramType:e.Diagnostics.KIND,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_JSX_code_generation_Colon_preserve_react_native_react_react_jsx_or_react_jsxdev},{name:"declaration",shortName:"d",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_corresponding_d_ts_file,transpileOptionValue:void 0},{name:"declarationMap",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_a_sourcemap_for_each_corresponding_d_ts_file,transpileOptionValue:void 0},{name:"emitDeclarationOnly",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Only_emit_d_ts_declaration_files,transpileOptionValue:void 0},{name:"sourceMap",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_corresponding_map_file},{name:"outFile",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.FILE,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Concatenate_and_emit_output_to_single_file,transpileOptionValue:void 0},{name:"outDir",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.DIRECTORY,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Redirect_output_structure_to_the_directory},{name:"rootDir",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir},{name:"composite",type:"boolean",affectsEmit:!0,isTSConfigOnly:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Enable_project_compilation,transpileOptionValue:void 0},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.FILE,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_file_to_store_incremental_compilation_information,transpileOptionValue:void 0},{name:"removeComments",type:"boolean",affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Do_not_emit_comments_to_output},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Do_not_emit_outputs,transpileOptionValue:void 0},{name:"importHelpers",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Import_emit_helpers_from_tslib},{name:"importsNotUsedAsValues",type:new e.Map(e.getEntries({remove:0,preserve:1,error:2})),affectsEmit:!0,affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3},{name:"isolatedModules",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule,transpileOptionValue:!0},{name:"strict",type:"boolean",showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_all_strict_type_checking_options},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Raise_error_on_expressions_and_declarations_with_an_implied_any_type},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_null_checks},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_checking_of_function_types},{name:"strictBindCallApply",type:"boolean",strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_bind_call_and_apply_methods_on_functions},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_checking_of_property_initialization_in_classes},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Raise_error_on_this_expressions_with_an_implied_any_type},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,strictFlag:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Parse_in_strict_mode_and_emit_use_strict_for_each_source_file},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_on_unused_locals},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_on_unused_parameters},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_error_when_not_all_code_paths_in_function_return_a_value},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_for_fallthrough_cases_in_switch_statement},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,showInSimplifiedHelpView:!1,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Include_undefined_in_index_signature_results},{name:"noPropertyAccessFromIndexSignature",type:"boolean",showInSimplifiedHelpView:!1,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Require_undeclared_properties_from_index_signatures_to_use_element_accesses},{name:"moduleResolution",type:new e.Map(e.getEntries({node:e.ModuleResolutionKind.NodeJs,classic:e.ModuleResolutionKind.Classic})),affectsModuleResolution:!0,paramType:e.Diagnostics.STRATEGY,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Base_directory_to_resolve_non_absolute_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,isTSConfigOnly:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl,transpileOptionValue:void 0},{name:"rootDirs",type:"list",isTSConfigOnly:!0,element:{name:"rootDirs",type:"string",isFilePath:!0},affectsModuleResolution:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime,transpileOptionValue:void 0},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.List_of_folders_to_include_type_definitions_from},{name:"types",type:"list",element:{name:"types",type:"string"},affectsModuleResolution:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Type_declaration_files_to_be_included_in_compilation,transpileOptionValue:void 0},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,showInSimplifiedHelpView:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports},{name:"preserveSymlinks",type:"boolean",category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Do_not_resolve_the_real_path_of_symlinks},{name:"allowUmdGlobalAccess",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Allow_accessing_UMD_globals_from_modules},{name:"sourceRoot",type:"string",affectsEmit:!0,paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations},{name:"mapRoot",type:"string",affectsEmit:!0,paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSourceMap",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file},{name:"inlineSources",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set},{name:"experimentalDecorators",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Experimental_Options,description:e.Diagnostics.Enables_experimental_support_for_ES7_decorators},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,category:e.Diagnostics.Experimental_Options,description:e.Diagnostics.Enables_experimental_support_for_emitting_type_metadata_for_decorators},{name:"jsxFactory",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h},{name:"jsxFragmentFactory",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment},{name:"jsxImportSource",type:"string",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react},{name:"ets",type:"object",affectsSourceFile:!0,affectsEmit:!0,affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Unknown_build_option_0},{name:"packageManagerType",type:"string",affectsSourceFile:!0,affectsEmit:!0,affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Unknown_build_option_0},{name:"emitNodeModulesFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Unknown_build_option_0},{name:"resolveJsonModule",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Include_modules_imported_with_json_extension},{name:"out",type:"string",affectsEmit:!0,isFilePath:!1,category:e.Diagnostics.Advanced_Options,paramType:e.Diagnostics.FILE,description:e.Diagnostics.Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file,transpileOptionValue:void 0},{name:"reactNamespace",type:"string",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit},{name:"skipDefaultLibCheck",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files},{name:"charset",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_character_set_of_the_input_files},{name:"emitBOM",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files},{name:"newLine",type:new e.Map(e.getEntries({crlf:0,lf:1})),affectsEmit:!0,paramType:e.Diagnostics.NEWLINE,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_truncate_error_messages},{name:"noLib",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_include_the_default_library_file_lib_d_ts,transpileOptionValue:!0},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files,transpileOptionValue:!0},{name:"stripInternal",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_declarations_for_code_that_has_an_internal_annotation},{name:"disableSizeLimit",type:"boolean",affectsSourceFile:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_size_limitations_on_JavaScript_projects},{name:"disableSourceOfProjectReferenceRedirect",type:"boolean",isTSConfigOnly:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_solution_searching_for_this_project},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_loading_referenced_projects},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_use_strict_directives_in_module_output},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_generate_custom_helper_functions_like_extends_in_compiled_output},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_outputs_if_any_errors_were_reported,transpileOptionValue:void 0},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_erase_const_enum_declarations_in_generated_code},{name:"declarationDir",type:"string",affectsEmit:!0,isFilePath:!0,paramType:e.Diagnostics.DIRECTORY,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Output_directory_for_generated_declaration_files,transpileOptionValue:void 0},{name:"skipLibCheck",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Skip_type_checking_of_declaration_files},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_report_errors_on_unused_labels},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_report_errors_on_unreachable_code},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Suppress_excess_property_checks_for_object_literals},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disallow_inconsistently_cased_references_to_the_same_file},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_strict_checking_of_generic_signatures_in_function_types},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Emit_class_fields_with_Define_instead_of_Set},{name:"keyofStringsOnly",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols},{name:"plugins",type:"list",isTSConfigOnly:!0,element:{name:"plugin",type:"object"},description:e.Diagnostics.List_of_language_service_plugins}]),e.semanticDiagnosticsOptionDeclarations=e.optionDeclarations.filter((function(e){return!!e.affectsSemanticDiagnostics})),e.affectsEmitOptionDeclarations=e.optionDeclarations.filter((function(e){return!!e.affectsEmit})),e.moduleResolutionOptionDeclarations=e.optionDeclarations.filter((function(e){return!!e.affectsModuleResolution})),e.sourceFileAffectingCompilerOptions=e.optionDeclarations.filter((function(e){return!!e.affectsSourceFile||!!e.affectsModuleResolution||!!e.affectsBindDiagnostics})),e.transpileOptionValueCompilerOptions=e.optionDeclarations.filter((function(t){return e.hasProperty(t,"transpileOptionValue")})),e.buildOpts=i(i([],e.commonOptionsWithBuild),[{name:"verbose",shortName:"v",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Enable_verbose_logging,type:"boolean"},{name:"dry",shortName:"d",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean"},{name:"force",shortName:"f",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean"},{name:"clean",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Delete_the_outputs_of_all_projects,type:"boolean"}]),e.typeAcquisitionDeclarations=[{name:"enableAutoDiscovery",type:"boolean"},{name:"enable",type:"boolean"},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},{name:"disableFilenameBasedTypeAcquisition",type:"boolean"}],e.createOptionNameMap=s,e.getOptionsNameMap=c,e.defaultInitCompilerOptions={module:e.ModuleKind.CommonJS,target:1,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0},e.convertEnableAutoDiscoveryToEnable=l,e.createCompilerDiagnosticForInvalidCustomType=u,e.parseCustomTypeOption=p,e.parseListTypeOption=f,e.parseCommandLineWorker=_,e.compilerOptionsDidYouMeanDiagnostics={getOptionsNameMap:c,optionDeclarations:e.optionDeclarations,unknownOptionDiagnostic:e.Diagnostics.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:e.Diagnostics.Compiler_option_0_expects_an_argument},e.parseCommandLine=function(t,r){return _(e.compilerOptionsDidYouMeanDiagnostics,t,r)},e.getOptionFromName=y;var b={getOptionsNameMap:function(){return n||(n=s(e.buildOpts))},optionDeclarations:e.buildOpts,unknownOptionDiagnostic:e.Diagnostics.Unknown_build_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:e.Diagnostics.Build_option_0_requires_a_value_of_type_1};function k(t,r){var n=e.parseJsonText(t,r);return{config:M(n,n.parseDiagnostics),error:n.parseDiagnostics.length?n.parseDiagnostics[0]:void 0}}function x(t,r){var n=E(t,r);return e.isString(n)?e.parseJsonText(t,n):{fileName:t,parseDiagnostics:[n]}}function E(t,r){var n;try{n=r(t)}catch(r){return e.createCompilerDiagnostic(e.Diagnostics.Cannot_read_file_0_Colon_1,t,r.message)}return void 0===n?e.createCompilerDiagnostic(e.Diagnostics.Cannot_read_file_0,t):n}function S(t){return e.arrayToMap(t,m)}e.parseBuildCommand=function(t){var r=_(b,t),n=r.options,i=r.watchOptions,a=r.fileNames,o=r.errors,s=n;return 0===a.length&&a.push("."),s.clean&&s.force&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","force")),s.clean&&s.verbose&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","verbose")),s.clean&&s.watch&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","watch")),s.watch&&s.dry&&o.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:s,watchOptions:i,projects:a,errors:o}},e.getDiagnosticText=function(t){for(var r=[],n=1;n<arguments.length;n++)r[n-1]=arguments[n];return e.createCompilerDiagnostic.apply(void 0,arguments).messageText},e.getParsedCommandLineOfConfigFile=function(t,r,n,i,a,o){var s=E(t,(function(e){return n.readFile(e)}));if(e.isString(s)){var c=e.parseJsonText(t,s),l=n.getCurrentDirectory();return c.path=e.toPath(t,l,e.createGetCanonicalFileName(n.useCaseSensitiveFileNames)),c.resolvedPath=c.path,c.originalFileName=c.fileName,W(c,n,e.getNormalizedAbsolutePath(e.getDirectoryPath(t),l),r,e.getNormalizedAbsolutePath(t,l),void 0,o,i,a)}n.onUnRecoverableConfigFileDiagnostic(s)},e.readConfigFile=function(t,r){var n=E(t,r);return e.isString(n)?k(t,n):{config:{},error:n}},e.parseConfigFileTextToJson=k,e.readJsonConfigFile=x,e.tryReadFile=E;var D,w={optionDeclarations:e.typeAcquisitionDeclarations,unknownOptionDiagnostic:e.Diagnostics.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_type_acquisition_option_0_Did_you_mean_1};function T(){return D||(D=s(e.optionsForWatch))}var C,A,N,P,I={getOptionsNameMap:T,optionDeclarations:e.optionsForWatch,unknownOptionDiagnostic:e.Diagnostics.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:e.Diagnostics.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:e.Diagnostics.Watch_option_0_requires_a_value_of_type_1};function F(){return C||(C=S(e.optionDeclarations))}function O(){return A||(A=S(e.optionsForWatch))}function R(){return N||(N=S(e.typeAcquisitionDeclarations))}function M(e,t){return L(e,t,!0,void 0,void 0)}function L(t,r,n,a,o){return t.statements.length?l(t.statements[0].expression,a):n?{}:void 0;function s(e){return a&&a.elementOptions===e}function c(i,a,c,d){for(var p=n?{}:void 0,f=function(i){if(291!==i.kind)return r.push(e.createDiagnosticForNodeInSourceFile(t,i,e.Diagnostics.Property_assignment_expected)),"continue";i.questionToken&&r.push(e.createDiagnosticForNodeInSourceFile(t,i.questionToken,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),u(i.name)||r.push(e.createDiagnosticForNodeInSourceFile(t,i.name,e.Diagnostics.String_literal_with_double_quotes_expected));var f=e.isComputedNonLiteralName(i.name)?void 0:e.getTextOfPropertyName(i.name),m=f&&e.unescapeLeadingUnderscores(f),_=m&&a?a.get(m):void 0;m&&c&&!_&&(a?r.push(g(m,c,(function(r,n,a){return e.createDiagnosticForNodeInSourceFile(t,i.name,r,n,a)}))):r.push(e.createDiagnosticForNodeInSourceFile(t,i.name,c.unknownOptionDiagnostic,m)));var h=l(i.initializer,_);if(void 0!==m&&(n&&(p[m]=h),o&&(d||s(a)))){var y=B(_,h);d?y&&o.onSetValidOptionKeyValueInParent(d,_,h):s(a)&&(y?o.onSetValidOptionKeyValueInRoot(m,i.name,h,i.initializer):_||o.onSetUnknownOptionKeyValueInRoot(m,i.name,h,i.initializer))}},m=0,_=i.properties;m<_.length;m++){f(_[m])}return p}function l(a,o){var s;switch(a.kind){case 110:return h(o&&"boolean"!==o.type),_(!0);case 95:return h(o&&"boolean"!==o.type),_(!1);case 104:return h(o&&"extends"===o.name),_(null);case 10:u(a)||r.push(e.createDiagnosticForNodeInSourceFile(t,a,e.Diagnostics.String_literal_with_double_quotes_expected)),h(o&&e.isString(o.type)&&"string"!==o.type);var p=a.text;if(o&&!e.isString(o.type)){var f=o;f.type.has(p.toLowerCase())||(r.push(d(f,(function(r,n,i){return e.createDiagnosticForNodeInSourceFile(t,a,r,n,i)}))),s=!0)}return _(p);case 8:return h(o&&"number"!==o.type),_(Number(a.text));case 216:if(40!==a.operator||8!==a.operand.kind)break;return h(o&&"number"!==o.type),_(-Number(a.operand.text));case 201:h(o&&"object"!==o.type);var m=a;if(o){var g=o;return _(c(m,g.elementOptions,g.extraKeyDiagnostics,g.name))}return _(c(m,void 0,void 0,void 0));case 200:return h(o&&"list"!==o.type),_(function(t,r){if(n)return e.filter(t.map((function(e){return l(e,r)})),(function(e){return void 0!==e}));t.forEach((function(e){return l(e,r)}))}(a.elements,o&&o.element))}return void(o?h(!0):r.push(e.createDiagnosticForNodeInSourceFile(t,a,e.Diagnostics.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal)));function _(n){var c;if(!s){var l=null===(c=null==o?void 0:o.extraValidation)||void 0===c?void 0:c.call(o,n);if(l)return void r.push(e.createDiagnosticForNodeInSourceFile.apply(void 0,i([t,a],l)))}return n}function h(n){n&&(r.push(e.createDiagnosticForNodeInSourceFile(t,a,e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,o.name,j(o))),s=!0)}}function u(r){return e.isStringLiteral(r)&&e.isStringDoubleQuoted(r,t)}}function j(t){return"list"===t.type?"Array":e.isString(t.type)?t.type:"string"}function B(t,r){return!!t&&(!!$(r)||("list"===t.type?e.isArray(r):typeof r===(e.isString(t.type)?t.type:"string")))}function z(t){return a({},e.arrayFrom(t.entries()).reduce((function(e,t){var r;return a(a({},e),((r={})[t[0]]=t[1],r))}),{}))}function U(t){if(e.length(t)){if(1!==e.length(t))return t;if("**/*"!==t[0])return t}}function q(e){return"string"===e.type||"number"===e.type||"boolean"===e.type||"object"===e.type?void 0:"list"===e.type?q(e.element):e.type}function J(t,r){return e.forEachEntry(r,(function(e,r){if(e===t)return r}))}function V(e,t){return H(e,c(),t)}function H(t,r,n){var i=r.optionsNameMap,a=new e.Map,o=n&&e.createGetCanonicalFileName(n.useCaseSensitiveFileNames),s=function(r){if(e.hasProperty(t,r)){if(i.has(r)&&i.get(r).category===e.Diagnostics.Command_line_Options)return"continue";var s=t[r],c=i.get(r.toLowerCase());if(c){var l=q(c);l?"list"===c.type?a.set(r,s.map((function(e){return J(e,l)}))):a.set(r,J(s,l)):n&&c.isFilePath?a.set(r,e.getRelativePathFromFile(n.configFilePath,e.getNormalizedAbsolutePath(s,e.getDirectoryPath(n.configFilePath)),o)):a.set(r,s)}}};for(var c in t)s(c);return a}function K(e,t,r){if(e&&!$(t))if("list"===e.type){var n=t;if(e.element.isFilePath&&n.length)return n.map(r)}else if(e.isFilePath)return r(t);return t}function W(e,t,r,n,i,a,o,s,c){return X(void 0,e,t,r,n,c,i,a,o,s)}function G(e,t){t&&Object.defineProperty(e,"configFile",{enumerable:!1,writable:!1,value:t})}function $(e){return null==e}function Y(t,r){return e.getDirectoryPath(e.getNormalizedAbsolutePath(t,r))}function X(t,r,n,i,a,o,s,c,l,u){void 0===a&&(a={}),void 0===c&&(c=[]),void 0===l&&(l=[]),e.Debug.assert(void 0===t&&void 0!==r||void 0!==t&&void 0===r);var d=[],p=te(t,r,n,i,s,c,d,u),f=p.raw,m=e.extend(a,p.options||{}),g=o&&p.watchOptions?e.extend(o,p.watchOptions):p.watchOptions||o;m.configFilePath=s&&e.normalizeSlashes(s);var _=function(){var t=b("references",(function(e){return"object"==typeof e}),"object"),n=y(v("files"));if(n){var i="no-prop"===t||e.isArray(t)&&0===t.length,a=e.hasProperty(f,"extends");if(0===n.length&&i&&!a)if(r){var o=s||"tsconfig.json",c=e.Diagnostics.The_files_list_in_config_file_0_is_empty,l=e.firstDefined(e.getTsConfigPropArray(r,"files"),(function(e){return e.initializer})),u=l?e.createDiagnosticForNodeInSourceFile(r,l,c,o):e.createCompilerDiagnostic(c,o);d.push(u)}else k(e.Diagnostics.The_files_list_in_config_file_0_is_empty,s||"tsconfig.json")}var p,m,g=y(v("include")),_=v("exclude"),h=y(_);if("no-prop"===_&&f.compilerOptions){var x=f.compilerOptions.outDir,E=f.compilerOptions.declarationDir;(x||E)&&(h=[x,E].filter((function(e){return!!e})))}void 0===n&&void 0===g&&(g=["**/*"]);g&&(p=be(g,d,!0,r,"include"));h&&(m=be(h,d,!1,r,"exclude"));return{filesSpecs:n,includeSpecs:g,excludeSpecs:h,validatedFilesSpec:e.filter(n,e.isString),validatedIncludeSpecs:p,validatedExcludeSpecs:m}}();r&&(r.configFileSpecs=_),G(m,r);var h=e.normalizePath(s?Y(s,i):i);return{options:m,watchOptions:g,fileNames:function(e){var t=ye(_,e,m,n,l);Z(t,ee(f),c)&&d.push(Q(_,s));return t}(h),projectReferences:function(t){var r,n=b("references",(function(e){return"object"==typeof e}),"object");if(e.isArray(n))for(var i=0,a=n;i<a.length;i++){var o=a[i];"string"!=typeof o.path?k(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(r||(r=[])).push({path:e.getNormalizedAbsolutePath(o.path,t),originalPath:o.path,prepend:o.prepend,circular:o.circular})}return r}(h),typeAcquisition:p.typeAcquisition||ae(),raw:f,errors:d,wildcardDirectories:xe(_,h,n.useCaseSensitiveFileNames),compileOnSave:!!f.compileOnSave};function y(t){return e.isArray(t)?t:void 0}function v(t){return b(t,e.isString,"string")}function b(t,n,i){if(e.hasProperty(f,t)&&!$(f[t])){if(e.isArray(f[t])){var a=f[t];return r||e.every(a,n)||d.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,t,i)),a}return k(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,t,"Array"),"not-array"}return"no-prop"}function k(t,n,i){r||d.push(e.createCompilerDiagnostic(t,n,i))}}function Q(t,r){var n=t.includeSpecs,i=t.excludeSpecs;return e.createCompilerDiagnostic(e.Diagnostics.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,r||"tsconfig.json",JSON.stringify(n||[]),JSON.stringify(i||[]))}function Z(e,t,r){return 0===e.length&&t&&(!r||0===r.length)}function ee(t){return!e.hasProperty(t,"files")&&!e.hasProperty(t,"references")}function te(t,r,n,a,o,s,c,l){var u;a=e.normalizeSlashes(a);var d=e.getNormalizedAbsolutePath(o||"",a);if(s.indexOf(d)>=0)return c.push(e.createCompilerDiagnostic(e.Diagnostics.Circularity_detected_while_resolving_configuration_Colon_0,i(i([],s),[d]).join(" -> "))),{raw:t||M(r,c)};var p=t?function(t,r,n,i,a){e.hasProperty(t,"excludes")&&a.push(e.createCompilerDiagnostic(e.Diagnostics.Unknown_option_excludes_Did_you_mean_exclude));var o,s=ie(t.compilerOptions,n,a,i),c=oe(t.typeAcquisition||t.typingOptions,n,a,i),l=function(e,t,r){return se(O(),e,t,void 0,I,r)}(t.watchOptions,n,a);if(t.compileOnSave=function(t,r,n){if(!e.hasProperty(t,e.compileOnSaveCommandLineOption.name))return!1;var i=ce(e.compileOnSaveCommandLineOption,t.compileOnSave,r,n);return"boolean"==typeof i&&i}(t,n,a),t.extends)if(e.isString(t.extends)){var u=i?Y(i,n):n;o=re(t.extends,r,u,a,e.createCompilerDiagnostic)}else a.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"extends","string"));return{raw:t,options:s,watchOptions:l,typeAcquisition:c,extendedConfigPath:o}}(t,n,a,o,c):function(t,r,n,i,a){var o,s,c,l,u=ne(i),d={onSetValidOptionKeyValueInParent:function(t,r,a){var l;switch(t){case"compilerOptions":l=u;break;case"watchOptions":l=c||(c={});break;case"typeAcquisition":l=o||(o=ae(i));break;case"typingOptions":l=s||(s=ae(i));break;default:e.Debug.fail("Unknown option")}l[r.name]=le(r,n,a)},onSetValidOptionKeyValueInRoot:function(o,s,c,u){if("extends"!==o);else{var d=i?Y(i,n):n;l=re(c,r,d,a,(function(r,n){return e.createDiagnosticForNodeInSourceFile(t,u,r,n)}))}},onSetUnknownOptionKeyValueInRoot:function(r,n,i,o){"excludes"===r&&a.push(e.createDiagnosticForNodeInSourceFile(t,n,e.Diagnostics.Unknown_option_excludes_Did_you_mean_exclude))}},p=L(t,a,!0,(void 0===P&&(P={name:void 0,type:"object",elementOptions:S([{name:"compilerOptions",type:"object",elementOptions:F(),extraKeyDiagnostics:e.compilerOptionsDidYouMeanDiagnostics},{name:"watchOptions",type:"object",elementOptions:O(),extraKeyDiagnostics:I},{name:"typingOptions",type:"object",elementOptions:R(),extraKeyDiagnostics:w},{name:"typeAcquisition",type:"object",elementOptions:R(),extraKeyDiagnostics:w},{name:"extends",type:"string"},{name:"references",type:"list",element:{name:"references",type:"object"}},{name:"files",type:"list",element:{name:"files",type:"string"}},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},e.compileOnSaveCommandLineOption])}),P),d);o||(o=s?void 0!==s.enableAutoDiscovery?{enable:s.enableAutoDiscovery,include:s.include,exclude:s.exclude}:s:ae(i));return{raw:p,options:u,watchOptions:c,typeAcquisition:o,extendedConfigPath:l}}(r,n,a,o,c);if((null===(u=p.options)||void 0===u?void 0:u.paths)&&(p.options.pathsBasePath=a),p.extendedConfigPath){s=s.concat([d]);var f=function(t,r,n,i,a,o){var s,c,l,u,d=n.useCaseSensitiveFileNames?r:e.toFileNameLowerCase(r);o&&(c=o.get(d))?(l=c.extendedResult,u=c.extendedConfig):(l=x(r,(function(e){return n.readFile(e)})),l.parseDiagnostics.length||(u=te(void 0,l,n,e.getDirectoryPath(r),e.getBaseFileName(r),i,a,o)),o&&o.set(d,{extendedResult:l,extendedConfig:u}));t&&(t.extendedSourceFiles=[l.fileName],l.extendedSourceFiles&&(s=t.extendedSourceFiles).push.apply(s,l.extendedSourceFiles));if(l.parseDiagnostics.length)return void a.push.apply(a,l.parseDiagnostics);return u}(r,p.extendedConfigPath,n,s,c,l);if(f&&f.options){var m,g=f.raw,_=p.raw,h=function(t){!_[t]&&g[t]&&(_[t]=e.map(g[t],(function(t){return e.isRootedDiskPath(t)?t:e.combinePaths(m||(m=e.convertToRelativePath(e.getDirectoryPath(p.extendedConfigPath),a,e.createGetCanonicalFileName(n.useCaseSensitiveFileNames))),t)})))};h("include"),h("exclude"),h("files"),void 0===_.compileOnSave&&(_.compileOnSave=g.compileOnSave),p.options=e.assign({},f.options,p.options),p.watchOptions=p.watchOptions&&f.watchOptions?e.assign({},f.watchOptions,p.watchOptions):p.watchOptions||f.watchOptions}}return p}function re(t,r,n,i,a){if(t=e.normalizeSlashes(t),e.isRootedDiskPath(t)||e.startsWith(t,"./")||e.startsWith(t,"../")){var o=e.getNormalizedAbsolutePath(t,n);return r.fileExists(o)||e.endsWith(o,".json")||(o+=".json",r.fileExists(o))?o:void i.push(a(e.Diagnostics.File_0_not_found,t))}var s=e.nodeModuleNameResolver(t,e.combinePaths(n,"tsconfig.json"),{moduleResolution:e.ModuleResolutionKind.NodeJs},r,void 0,void 0,!0);if(s.resolvedModule)return s.resolvedModule.resolvedFileName;i.push(a(e.Diagnostics.File_0_not_found,t))}function ne(t){return t&&"jsconfig.json"===e.getBaseFileName(t)?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function ie(t,r,n,i){var a=ne(i);return se(F(),t,r,a,e.compilerOptionsDidYouMeanDiagnostics,n),i&&(a.configFilePath=e.normalizeSlashes(i)),a}function ae(t){return{enable:!!t&&"jsconfig.json"===e.getBaseFileName(t),include:[],exclude:[]}}function oe(e,t,r,n){var i=ae(n),a=l(e);return se(R(),a,t,i,w,r),i}function se(t,r,n,i,a,o){if(r){for(var s in r){var c=t.get(s);c?(i||(i={}))[c.name]=ce(c,r[s],n,o):o.push(g(s,a,e.createCompilerDiagnostic))}return i}}function ce(t,r,n,i){if(B(t,r)){var a=t.type;if("list"===a&&e.isArray(r))return function(t,r,n,i){return e.filter(e.map(r,(function(e){return ce(t.element,e,n,i)})),(function(e){return!!e}))}(t,r,n,i);if(!e.isString(a))return pe(t,r,i);var o=de(t,r,i);return $(o)?o:ue(t,n,o)}i.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,t.name,j(t)))}function le(t,r,n){if(!$(n)){if("list"===t.type){var i=t;return i.element.isFilePath||!e.isString(i.element.type)?e.filter(e.map(n,(function(e){return le(i.element,r,e)})),(function(e){return!!e})):n}return e.isString(t.type)?ue(t,r,n):t.type.get(e.isString(n)?n.toLowerCase():n)}}function ue(t,r,n){return t.isFilePath&&""===(n=e.getNormalizedAbsolutePath(n,r))&&(n="."),n}function de(t,r,n){var i;if(!$(r)){var a=null===(i=t.extraValidation)||void 0===i?void 0:i.call(t,r);if(!a)return r;n.push(e.createCompilerDiagnostic.apply(void 0,a))}}function pe(e,t,r){if(!$(t)){var n=t.toLowerCase(),i=e.type.get(n);if(void 0!==i)return de(e,i,r);r.push(u(e))}}function fe(e){return"function"==typeof e.trim?e.trim():e.replace(/^[\s]+|[\s]+$/g,"")}e.convertToObject=M,e.convertToObjectWorker=L,e.convertToTSConfig=function(t,r,n){var i,o,s,c=e.createGetCanonicalFileName(n.useCaseSensitiveFileNames),l=e.map(e.filter(t.fileNames,(null===(o=null===(i=t.options.configFile)||void 0===i?void 0:i.configFileSpecs)||void 0===o?void 0:o.validatedIncludeSpecs)?function(t,r,n,i){if(!r)return e.returnTrue;var a=e.getFileMatcherPatterns(t,n,r,i.useCaseSensitiveFileNames,i.getCurrentDirectory()),o=a.excludePattern&&e.getRegexFromPattern(a.excludePattern,i.useCaseSensitiveFileNames),s=a.includeFilePattern&&e.getRegexFromPattern(a.includeFilePattern,i.useCaseSensitiveFileNames);if(s)return o?function(e){return!(s.test(e)&&!o.test(e))}:function(e){return!s.test(e)};if(o)return function(e){return o.test(e)};return e.returnTrue}(r,t.options.configFile.configFileSpecs.validatedIncludeSpecs,t.options.configFile.configFileSpecs.validatedExcludeSpecs,n):e.returnTrue),(function(t){return e.getRelativePathFromFile(e.getNormalizedAbsolutePath(r,n.getCurrentDirectory()),e.getNormalizedAbsolutePath(t,n.getCurrentDirectory()),c)})),u=V(t.options,{configFilePath:e.getNormalizedAbsolutePath(r,n.getCurrentDirectory()),useCaseSensitiveFileNames:n.useCaseSensitiveFileNames}),d=t.watchOptions&&H(t.watchOptions,T());return a(a({compilerOptions:a(a({},z(u)),{showConfig:void 0,configFile:void 0,configFilePath:void 0,help:void 0,init:void 0,listFiles:void 0,listEmittedFiles:void 0,project:void 0,build:void 0,version:void 0}),watchOptions:d&&z(d),references:e.map(t.projectReferences,(function(e){return a(a({},e),{path:e.originalPath?e.originalPath:"",originalPath:void 0})})),files:e.length(l)?l:void 0},(null===(s=t.options.configFile)||void 0===s?void 0:s.configFileSpecs)?{include:U(t.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:t.options.configFile.configFileSpecs.validatedExcludeSpecs}:{}),{compileOnSave:!!t.compileOnSave||void 0})},e.generateTSConfig=function(t,r,n){var i=V(e.extend(t,e.defaultInitCompilerOptions));return function(){for(var t=e.createMultiMap(),c=0,l=e.optionDeclarations;c<l.length;c++){var u=l[c],d=u.category;s(u)&&t.add(e.getLocaleSpecificMessage(d),u)}var p=0,f=0,m=[];t.forEach((function(t,r){0!==m.length&&m.push({value:""}),m.push({value:"/* "+r+" */"});for(var n=0,o=t;n<o.length;n++){var s=o[n],c=void 0;c=i.has(s.name)?'"'+s.name+'": '+JSON.stringify(i.get(s.name))+((f+=1)===i.size?"":","):'// "'+s.name+'": '+JSON.stringify(a(s))+",",m.push({value:c,description:"/* "+(s.description&&e.getLocaleSpecificMessage(s.description)||s.name)+" */"}),p=Math.max(c.length,p)}}));var g=o(2),_=[];_.push("{"),_.push(g+'"compilerOptions": {'),_.push(""+g+g+"/* "+e.getLocaleSpecificMessage(e.Diagnostics.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_json_to_read_more_about_this_file)+" */"),_.push("");for(var h=0,y=m;h<y.length;h++){var v=y[h],b=v.value,k=v.description,x=void 0===k?"":k;_.push(b&&""+g+g+b+(x&&o(p-b.length+2)+x))}if(r.length){_.push(g+"},"),_.push(g+'"files": [');for(var E=0;E<r.length;E++)_.push(""+g+g+JSON.stringify(r[E])+(E===r.length-1?"":","));_.push(g+"]")}else _.push(g+"}");return _.push("}"),_.join(n)+n}();function a(t){switch(t.type){case"number":return 1;case"boolean":return!0;case"string":return t.isFilePath?"./":"";case"list":return[];case"object":return{};default:var r=t.type.keys().next();return r.done?e.Debug.fail("Expected 'option.type' to have entries."):r.value}}function o(e){return Array(e+1).join(" ")}function s(t){var r=t.category,n=t.name;return void 0!==r&&r!==e.Diagnostics.Command_line_Options&&(r!==e.Diagnostics.Advanced_Options||i.has(n))}},e.convertToOptionsWithAbsolutePaths=function(t,r){var n={},i=c().optionsNameMap;for(var a in t)e.hasProperty(t,a)&&(n[a]=K(i.get(a.toLowerCase()),t[a],r));return n.configFilePath&&(n.configFilePath=r(n.configFilePath)),n},e.parseJsonConfigFileContent=function(e,t,r,n,i,a,o,s,c){return X(e,void 0,t,r,n,c,i,a,o,s)},e.parseJsonSourceFileConfigFileContent=W,e.setConfigFileInOptions=G,e.canJsonReportNoInputFiles=ee,e.updateErrorForNoInputFiles=function(t,r,n,i,a){var o=i.length;return Z(t,a)?i.push(Q(n,r)):e.filterMutate(i,(function(t){return!function(t){return t.code===e.Diagnostics.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}(t)})),o!==i.length},e.convertCompilerOptionsFromJson=function(e,t,r){var n=[];return{options:ie(e,t,n,r),errors:n}},e.convertTypeAcquisitionFromJson=function(e,t,r){var n=[];return{options:oe(e,t,n,r),errors:n}},e.convertJsonOption=ce;var me=/(^|\/)\*\*\/?$/,ge=/(^|\/)\*\*\/(.*\/)?\.\.($|\/)/,_e=/\/[^/]*?[*?][^/]*\//,he=/^[^*?]*(?=\/[^/]*[*?])/;function ye(t,r,n,i,a){void 0===a&&(a=e.emptyArray),r=e.normalizePath(r);var o,s=e.createGetCanonicalFileName(i.useCaseSensitiveFileNames),c=new e.Map,l=new e.Map,u=new e.Map,d=t.validatedFilesSpec,p=t.validatedIncludeSpecs,f=t.validatedExcludeSpecs,m=e.getSupportedExtensions(n,a),g=e.getSuppoertedExtensionsWithJsonIfResolveJsonModule(n,m);if(d)for(var _=0,h=d;_<h.length;_++){var y=h[_],v=e.getNormalizedAbsolutePath(y,r);c.set(s(v),v)}if(p&&p.length>0)for(var b=function(t){if(e.fileExtensionIs(t,".json")){if(!o){var n=p.filter((function(t){return e.endsWith(t,".json")})),a=e.map(e.getRegularExpressionsForWildcards(n,r,"files"),(function(e){return"^"+e+"$"}));o=a?a.map((function(t){return e.getRegexFromPattern(t,i.useCaseSensitiveFileNames)})):e.emptyArray}if(-1!==e.findIndex(o,(function(e){return e.test(t)}))){var d=s(t);c.has(d)||u.has(d)||u.set(d,t)}return"continue"}if(function(t,r,n,i,a){for(var o=e.getExtensionPriority(t,i),s=e.adjustExtensionPriority(o,i),c=0;c<s;c++){var l=i[c],u=a(e.changeExtension(t,l));if(r.has(u)||n.has(u))return!0}return!1}(t,c,l,m,s))return"continue";!function(t,r,n,i){for(var a=e.getExtensionPriority(t,n),o=e.getNextLowestExtensionPriority(a,n);o<n.length;o++){var s=n[o],c=i(e.changeExtension(t,s));r.delete(c)}}(t,l,m,s);var f=s(t);c.has(f)||l.has(f)||l.set(f,t)},k=0,x=i.readDirectory(r,g,f,p,void 0);k<x.length;k++){b(v=x[k])}var E=e.arrayFrom(c.values()),S=e.arrayFrom(l.values());return E.concat(S,e.arrayFrom(u.values()))}function ve(t,r,n,i,a){var o=e.getRegularExpressionForWildcard(r,e.combinePaths(e.normalizePath(i),a),"exclude"),s=o&&e.getRegexFromPattern(o,n);return!!s&&(!!s.test(t)||!e.hasExtension(t)&&s.test(e.ensureTrailingDirectorySeparator(t)))}function be(t,r,n,i,a){return t.filter((function(t){if(!e.isString(t))return!1;var i=ke(t,n);return void 0!==i&&r.push(o.apply(void 0,i)),void 0===i}));function o(t,r){var n=e.getTsConfigPropArrayElementValue(i,a,r);return n?e.createDiagnosticForNodeInSourceFile(i,n,t,r):e.createCompilerDiagnostic(t,r)}}function ke(t,r){return r&&me.test(t)?[e.Diagnostics.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,t]:ge.test(t)?[e.Diagnostics.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,t]:void 0}function xe(t,r,n){var i=t.validatedIncludeSpecs,a=t.validatedExcludeSpecs,o=e.getRegularExpressionForWildcard(a,r,"exclude"),s=o&&new RegExp(o,n?"":"i"),c={};if(void 0!==i){for(var l=[],u=0,d=i;u<d.length;u++){var p=d[u],f=e.normalizePath(e.combinePaths(r,p));if(!s||!s.test(f)){var m=Ee(f,n);if(m){var g=m.key,_=m.flags,h=c[g];(void 0===h||h<_)&&(c[g]=_,1===_&&l.push(g))}}}for(var g in c)if(e.hasProperty(c,g))for(var y=0,v=l;y<v.length;y++){var b=v[y];g!==b&&e.containsPath(b,g,r,!n)&&delete c[g]}}return c}function Ee(t,r){var n=he.exec(t);return n?{key:r?n[0]:e.toFileNameLowerCase(n[0]),flags:_e.test(t)?1:0}:e.isImplicitGlob(t)?{key:r?t:e.toFileNameLowerCase(t),flags:1}:void 0}function Se(t,r){switch(r.type){case"object":case"string":return"";case"number":return"number"==typeof t?t:"";case"boolean":return"boolean"==typeof t?t:"";case"list":var n=r.element;return e.isArray(t)?t.map((function(e){return Se(e,n)})):"";default:return e.forEachEntry(r.type,(function(e,r){if(e===t)return r}))}}e.getFileNamesFromConfigSpecs=ye,e.isExcludedFile=function(t,r,n,i,a){var o=r.validatedFilesSpec,s=r.validatedIncludeSpecs,c=r.validatedExcludeSpecs;if(!e.length(s)||!e.length(c))return!1;n=e.normalizePath(n);var l=e.createGetCanonicalFileName(i);if(o)for(var u=0,d=o;u<d.length;u++){var p=d[u];if(l(e.getNormalizedAbsolutePath(p,n))===t)return!1}return ve(t,c,i,a,n)},e.matchesExclude=function(t,r,n,i){return ve(t,e.filter(r,(function(e){return!ge.test(e)})),n,i)},e.convertCompilerOptionsForTelemetry=function(e){var t={};for(var r in e)if(e.hasOwnProperty(r)){var n=y(r);void 0!==n&&(t[r]=Se(e[r],n))}return t}}(d||(d={}));var u=r(15876);!function(e){function t(t){t.trace(e.formatMessage.apply(void 0,arguments))}function r(e,t){return!!e.traceResolution&&void 0!==t.trace}function n(t,r){var n;if(r&&t){var i=t.packageJsonContent;"string"==typeof i.name&&"string"==typeof i.version&&(n={name:i.name,subModuleName:r.path.slice(t.packageDirectory.length+e.directorySeparator.length),version:i.version})}return r&&{path:r.path,extension:r.ext,packageId:n}}function o(e){return n(void 0,e)}function s(t){if(t)return e.Debug.assert(void 0===t.packageId),{path:t.path,ext:t.extension}}var c,l;function d(t){if(t)return e.Debug.assert(e.extensionIsTS(t.extension)),{fileName:t.path,packageId:t.packageId}}function p(e,t,r,n){var i;return n?((i=n.failedLookupLocations).push.apply(i,r),n):{resolvedModule:e&&{resolvedFileName:e.path,originalPath:!0===e.originalPath?void 0:e.originalPath,extension:e.extension,isExternalLibraryImport:t,packageId:e.packageId},failedLookupLocations:r}}function f(r,n,i,a){if(e.hasProperty(r,n)){var o=r[n];if(typeof o===i&&null!==o)return o;a.traceEnabled&&t(a.host,e.Diagnostics.Expected_type_of_0_field_in_package_json_to_be_1_got_2,n,i,null===o?"null":typeof o)}else if(a.traceEnabled){var s=e.isOhpm(a.compilerOptions.packageManagerType)?e.Diagnostics.oh_package_json5_does_not_have_a_0_field:e.Diagnostics.package_json_does_not_have_a_0_field;t(a.host,s,n)}}function m(r,n,i,a){var o=f(r,n,"string",a);if(void 0!==o){if(o){var s=e.normalizePath(e.combinePaths(i,o));if(a.traceEnabled){var c=e.isOhpm(a.compilerOptions.packageManagerType)?e.Diagnostics.oh_package_json5_has_0_field_1_that_references_2:e.Diagnostics.package_json_has_0_field_1_that_references_2;t(a.host,c,n,o,s)}return s}a.traceEnabled&&t(a.host,e.Diagnostics.package_json_had_a_falsy_0_field,n)}}function g(e,t,r){return m(e,"typings",t,r)||m(e,"types",t,r)}function _(e,t,r){return m(e,"main",t,r)}function h(r,n){var i=function(r,n){var i=f(r,"typesVersions","object",n);if(void 0!==i)return n.traceEnabled&&t(n.host,e.Diagnostics.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),i}(r,n);if(void 0!==i){if(n.traceEnabled)for(var a in i)e.hasProperty(i,a)&&!e.VersionRange.tryParse(a)&&t(n.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,a);var o=y(i);if(o){var s=o.version,c=o.paths;if("object"==typeof c)return o;n.traceEnabled&&t(n.host,e.Diagnostics.Expected_type_of_0_field_in_package_json_to_be_1_got_2,"typesVersions['"+s+"']","object",typeof c)}else n.traceEnabled&&t(n.host,e.Diagnostics.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,e.versionMajorMinor)}}function y(t){for(var r in l||(l=new e.Version(e.version)),t)if(e.hasProperty(t,r)){var n=e.VersionRange.tryParse(r);if(void 0!==n&&n.test(l))return{version:r,paths:t[r]}}}function v(t,r){return t.typeRoots?t.typeRoots:(t.configFilePath?n=e.getDirectoryPath(t.configFilePath):r.getCurrentDirectory&&(n=r.getCurrentDirectory()),void 0!==n?function(t,r,n){var i,a=e.combinePaths(e.getModuleByPMType(n),"@types");if(!r.directoryExists)return[e.combinePaths(t,a)];return e.forEachAncestorDirectory(e.normalizePath(t),(function(t){var n=e.combinePaths(t,a);r.directoryExists(n)&&(i||(i=[])).push(n)})),i}(n,r,t.packageManagerType):void 0);var n}function b(t){var r=new e.Map,n=new e.Map;return{ownMap:r,redirectsMap:n,getOrCreateMapOfCacheRedirects:function(i){if(!i)return r;var a=i.sourceFile.path,o=n.get(a);o||(o=!t||e.optionsHaveModuleResolutionChanges(t,i.commandLine.options)?new e.Map:r,n.set(a,o));return o},clear:function(){r.clear(),n.clear()},setOwnOptions:function(e){t=e},setOwnMap:function(e){r=e}}}function k(t,r,n,i){return{getOrCreateCacheForDirectory:function(r,o){var s=e.toPath(r,n,i);return a(t,o,s,(function(){return new e.Map}))},getOrCreateCacheForModuleName:function(t,n){return e.Debug.assert(!e.isExternalModuleNameRelative(t)),a(r,n,t,o)},directoryToModuleNameMap:t,moduleNameToDirectoryMap:r};function a(e,t,r,n){var i=e.getOrCreateMapOfCacheRedirects(t),a=i.get(r);return a||(a=n(),i.set(r,a)),a}function o(){var t=new e.Map;return{get:function(r){return t.get(e.toPath(r,n,i))},set:function(r,a){var o=e.toPath(r,n,i);if(t.has(o))return;t.set(o,a);var s=a.resolvedModule&&(a.resolvedModule.originalPath||a.resolvedModule.resolvedFileName),c=s&&function(t,r){var a=e.toPath(e.getDirectoryPath(r),n,i),o=0,s=Math.min(t.length,a.length);for(;o<s&&t.charCodeAt(o)===a.charCodeAt(o);)o++;if(o===t.length&&(a.length===o||a[o]===e.directorySeparator))return t;var c=e.getRootLength(t);if(o<c)return;var l=t.lastIndexOf(e.directorySeparator,o-1);if(-1===l)return;return t.substr(0,Math.max(l,c))}(o,s),l=o;for(;l!==c;){var u=e.getDirectoryPath(l);if(u===l||t.has(u))break;t.set(u,a),l=u}}}}}function x(r,n,i,a,o){var s=function(r,n,i,a){var o=a.compilerOptions,s=o.baseUrl,c=o.paths;if(c&&!e.pathIsRelative(n)){return a.traceEnabled&&(s&&t(a.host,e.Diagnostics.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,s,n),t(a.host,e.Diagnostics.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,n)),W(r,n,e.getPathsBasePath(a.compilerOptions,a.host),c,i,!1,a)}}(r,n,a,o);return s?s.value:e.isExternalModuleNameRelative(n)?function(r,n,i,a,o){if(!o.compilerOptions.rootDirs)return;o.traceEnabled&&t(o.host,e.Diagnostics.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,n);for(var s,c,l=e.normalizePath(e.combinePaths(i,n)),u=0,d=o.compilerOptions.rootDirs;u<d.length;u++){var p=d[u],f=e.normalizePath(p);e.endsWith(f,e.directorySeparator)||(f+=e.directorySeparator);var m=e.startsWith(l,f)&&(void 0===c||c.length<f.length);o.traceEnabled&&t(o.host,e.Diagnostics.Checking_if_0_is_the_longest_matching_prefix_for_1_2,f,l,m),m&&(c=f,s=p)}if(c){o.traceEnabled&&t(o.host,e.Diagnostics.Longest_matching_prefix_for_0_is_1,l,c);var g=l.substr(c.length);o.traceEnabled&&t(o.host,e.Diagnostics.Loading_0_from_the_root_dir_1_candidate_location_2,g,c,l);var _=a(r,l,!e.directoryProbablyExists(i,o.host),o);if(_)return _;o.traceEnabled&&t(o.host,e.Diagnostics.Trying_other_entries_in_rootDirs);for(var h=0,y=o.compilerOptions.rootDirs;h<y.length;h++){if((p=y[h])!==s){var v=e.combinePaths(e.normalizePath(p),g);o.traceEnabled&&t(o.host,e.Diagnostics.Loading_0_from_the_root_dir_1_candidate_location_2,g,p,v);var b=e.getDirectoryPath(v),k=a(r,v,!e.directoryProbablyExists(b,o.host),o);if(k)return k}}o.traceEnabled&&t(o.host,e.Diagnostics.Module_resolution_using_rootDirs_has_failed)}return}(r,n,i,a,o):function(r,n,i,a){var o=a.compilerOptions.baseUrl;if(!o)return;a.traceEnabled&&t(a.host,e.Diagnostics.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,o,n);var s=e.normalizePath(e.combinePaths(o,n));a.traceEnabled&&t(a.host,e.Diagnostics.Resolving_module_name_0_relative_to_base_url_1_2,n,o,s);return i(r,s,!e.directoryProbablyExists(e.getDirectoryPath(s),a.host),a)}(r,n,a,o)}e.trace=t,e.isTraceEnabled=r,function(e){e[e.TypeScript=0]="TypeScript",e[e.JavaScript=1]="JavaScript",e[e.Json=2]="Json",e[e.TSConfig=3]="TSConfig",e[e.DtsOnly=4]="DtsOnly"}(c||(c={})),e.getPackageJsonTypesVersionsPaths=y,e.getEffectiveTypeRoots=v,e.resolveTypeReferenceDirective=function(n,i,a,o,s){var l=r(a,o);s&&(a=s.commandLine.options);var u=[],p={compilerOptions:a,host:o,traceEnabled:l,failedLookupLocations:u},f=v(a,o);l&&(void 0===i?void 0===f?t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,n):t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,n,f):void 0===f?t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,n,i):t(o,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,n,i,f),s&&t(o,e.Diagnostics.Using_compiler_options_of_project_reference_redirect_0,s.sourceFile.fileName));var m,g=function(){if(f&&f.length)return l&&t(o,e.Diagnostics.Resolving_with_primary_search_path_0,f.join(", ")),e.firstDefined(f,(function(r){var i=e.combinePaths(r,n),a=e.getDirectoryPath(i),s=e.directoryProbablyExists(a,o);return!s&&l&&t(o,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,a),d(B(c.DtsOnly,i,!s,p))}));l&&t(o,e.Diagnostics.Root_directory_cannot_be_determined_skipping_primary_search_paths)}(),_=!0;if(g||(g=function(){var r=i&&e.getDirectoryPath(i),s=a.packageManagerType;if(void 0!==r){if(l){var u=e.isOhpm(s)?e.Diagnostics.Looking_up_in_oh_modules_folder_initial_location_0:e.Diagnostics.Looking_up_in_node_modules_folder_initial_location_0;t(o,u,r)}var f=void 0;if(e.isExternalModuleNameRelative(n)){var m=e.normalizePathAndParts(e.combinePaths(r,n)).path;f=P(c.DtsOnly,m,!1,p,!0)}else{var g=J(c.DtsOnly,n,r,p,void 0,void 0);f=g&&g.value}var _=d(f);return!_&&l&&t(o,e.Diagnostics.Type_reference_directive_0_was_not_resolved,n),_}if(l){u=e.isOhpm(s)?e.Diagnostics.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_oh_modules_folder:e.Diagnostics.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder;t(o,u)}}(),_=!1),g){var h=g.fileName,y=g.packageId,b=a.preserveSymlinks?h:N(h,o,l);l&&(y?t(o,e.Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,n,b,e.packageIdToString(y),_):t(o,e.Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,n,b,_)),m={primary:_,resolvedFileName:b,packageId:y,isExternalLibraryImport:e.isOhpm(a.packageManagerType)?F(h):I(h)}}return{resolvedTypeReferenceDirective:m,failedLookupLocations:u}},e.getAutomaticTypeDirectiveNames=function(t,r){if(t.types)return t.types;var n=[];if(r.directoryExists&&r.getDirectories){var i=v(t,r);if(i)for(var a=0,o=i;a<o.length;a++){var s=o[a];if(r.directoryExists(s))for(var c=0,l=r.getDirectories(s);c<l.length;c++){var d=l[c],p=e.normalizePath(d),f=e.combinePaths(s,p,e.getPackageJsonByPMType(t.packageManagerType));if(!(e.isOhpm(t.packageManagerType)?r.fileExists(f)&&null===u.parse(r.readFile(f)).typings:r.fileExists(f)&&null===e.readJson(f,r).typings)){var m=e.getBaseFileName(p);46!==m.charCodeAt(0)&&n.push(m)}}}}return n},e.createModuleResolutionCache=function(e,t,r){return k(b(r),b(r),e,t)},e.createCacheWithRedirects=b,e.createModuleResolutionCacheWithMaps=k,e.resolveModuleNameFromCache=function(t,r,n){var i=e.getDirectoryPath(r),a=n&&n.getOrCreateCacheForDirectory(i);return a&&a.get(t)},e.resolveModuleName=function(n,i,a,o,s,c){var l=r(a,o);c&&(a=c.commandLine.options),l&&(t(o,e.Diagnostics.Resolving_module_0_from_1,n,i),c&&t(o,e.Diagnostics.Using_compiler_options_of_project_reference_redirect_0,c.sourceFile.fileName));var u=e.getDirectoryPath(i),d=s&&s.getOrCreateCacheForDirectory(u,c),p=d&&d.get(n);if(p)l&&t(o,e.Diagnostics.Resolution_for_module_0_was_found_in_cache_from_location_1,n,u);else{var f=a.moduleResolution;switch(void 0===f?(f=e.getEmitModuleKind(a)===e.ModuleKind.CommonJS?e.ModuleResolutionKind.NodeJs:e.ModuleResolutionKind.Classic,l&&t(o,e.Diagnostics.Module_resolution_kind_is_not_specified_using_0,e.ModuleResolutionKind[f])):l&&t(o,e.Diagnostics.Explicitly_specified_module_resolution_kind_Colon_0,e.ModuleResolutionKind[f]),e.perfLogger.logStartResolveModule(n),f){case e.ModuleResolutionKind.NodeJs:p=C(n,i,a,o,s,c);break;case e.ModuleResolutionKind.Classic:p=Q(n,i,a,o,s,c);break;default:return e.Debug.fail("Unexpected moduleResolution: "+f)}p&&p.resolvedModule&&e.perfLogger.logInfoEvent('Module "'+n+'" resolved to "'+p.resolvedModule.resolvedFileName+'"'),e.perfLogger.logStopResolveModule(p&&p.resolvedModule?""+p.resolvedModule.resolvedFileName:"null"),d&&(d.set(n,p),e.isExternalModuleNameRelative(n)||s.getOrCreateCacheForModuleName(n,c).set(u,p))}return l&&(p.resolvedModule?p.resolvedModule.packageId?t(o,e.Diagnostics.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,n,p.resolvedModule.resolvedFileName,e.packageIdToString(p.resolvedModule.packageId)):t(o,e.Diagnostics.Module_name_0_was_successfully_resolved_to_1,n,p.resolvedModule.resolvedFileName):t(o,e.Diagnostics.Module_name_0_was_not_resolved,n)),p},e.resolveJSModule=function(e,t,r){var n=T(e,t,r),i=n.resolvedModule,a=n.failedLookupLocations;if(!i)throw new Error("Could not resolve JS module '"+e+"' starting at '"+t+"'. Looked in: "+a.join(", "));return i.resolvedFileName},e.tryResolveJSModule=function(e,t,r){var n=T(e,t,r).resolvedModule;return n&&n.resolvedFileName};var E=[c.JavaScript],S=[c.TypeScript,c.JavaScript],D=i(i([],S),[c.Json]),w=[c.TSConfig];function T(t,r,n){return A(t,r,{moduleResolution:e.ModuleResolutionKind.NodeJs,allowJs:!0},n,void 0,E,void 0)}function C(t,r,n,i,a,o,s){return A(t,e.getDirectoryPath(r),n,i,a,s?w:n.resolveJsonModule?D:S,o)}function A(n,i,o,s,l,u,d){var f,m,g=r(o,s),_=[],h={compilerOptions:o,host:s,traceEnabled:g,failedLookupLocations:_},y=e.forEach(u,(function(r){return function(r){var u=function(e,t,r,n){return P(e,t,r,n,!0)},p=e.isOhpm(o.packageManagerType),f=x(r,n,i,u,h);if(f)return Z({resolved:f,isExternalLibraryImport:p?F(f.path):I(f.path)});if(e.isExternalModuleNameRelative(n)){var m=e.normalizePathAndParts(e.combinePaths(i,n)),_=m.path,y=m.parts,v=P(r,_,!1,h,!0);return v&&Z({resolved:v,isExternalLibraryImport:e.contains(y,e.getModuleByPMType(o.packageManagerType))})}if(g){var b=p?e.Diagnostics.Loading_module_0_from_oh_modules_folder_target_file_type_1:e.Diagnostics.Loading_module_0_from_node_modules_folder_target_file_type_1;t(s,b,n,c[r])}var k=J(r,n,i,h,l,d);if(!k)return;var E=k.value;if(!o.preserveSymlinks&&E&&!E.originalPath){var S=N(E.path,s,g),D=S===E.path?void 0:E.path;E=a(a({},E),{path:S,originalPath:D})}return{value:E&&{resolved:E,isExternalLibraryImport:!0}}}(r)}));return p(null===(f=null==y?void 0:y.value)||void 0===f?void 0:f.resolved,null===(m=null==y?void 0:y.value)||void 0===m?void 0:m.isExternalLibraryImport,_,h.resultFromCache)}function N(r,n,i){if(!n.realpath)return r;var a=e.normalizePath(n.realpath(r));return i&&t(n,e.Diagnostics.Resolving_real_path_for_0_result_1,r,a),e.Debug.assert(n.fileExists(a),r+" linked to nonexistent file "+a),a}function P(r,i,a,o,s){if(o.traceEnabled&&t(o.host,e.Diagnostics.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1,i,c[r]),!e.hasTrailingDirectorySeparator(i)){if(!a){var l=e.getDirectoryPath(i);e.directoryProbablyExists(l,o.host)||(o.traceEnabled&&t(o.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,l),a=!0)}var u=M(r,i,a,o);if(u){var d=s?function(t,r){var n=e.isOhpm(r)?e.ohModulesPathPart:e.nodeModulesPathPart,i=e.normalizePath(t.path),a=i.lastIndexOf(n);if(-1===a)return;var o=a+n.length,s=O(i,o);64===i.charCodeAt(o)&&(s=O(i,s));return i.slice(0,s)}(u,o.compilerOptions.packageManagerType):void 0;return n(d?z(d,!1,o):void 0,u)}}a||(e.directoryProbablyExists(i,o.host)||(o.traceEnabled&&t(o.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,i),a=!0));return B(r,i,a,o,s)}function I(t){return e.stringContains(t,e.nodeModulesPathPart)}function F(t){return e.stringContains(t,e.ohModulesPathPart)}function O(t,r){var n=t.indexOf(e.directorySeparator,r+1);return-1===n?r:n}function R(e,t,r,n){return o(M(e,t,r,n))}function M(r,n,i,a){if(r===c.Json||r===c.TSConfig){var o=e.tryRemoveExtension(n,".json");return void 0===o&&r===c.Json?void 0:L(o||n,r,i,a)}var s=L(n,r,i,a);if(s)return s;if(e.hasJSFileExtension(n)){var l=e.removeFileExtension(n);if(a.traceEnabled){var u=n.substring(l.length);t(a.host,e.Diagnostics.File_name_0_has_a_1_extension_stripping_it,n,u)}return L(l,r,i,a)}}function L(t,r,n,i){if(!n){var a=e.getDirectoryPath(t);a&&(n=!e.directoryProbablyExists(a,i.host))}switch(r){case c.DtsOnly:return i.compilerOptions.ets&&o(".d.ets")||o(".d.ts");case c.TypeScript:return i.compilerOptions.ets?o(".ets")||o(".ts")||o(".tsx")||o(".d.ets")||o(".d.ts"):o(".ts")||o(".tsx")||o(".d.ts")||o(".ets");case c.JavaScript:return o(".js")||o(".jsx");case c.TSConfig:case c.Json:return o(".json")}function o(e){var r=j(t+e,n,i);return void 0===r?void 0:{path:r,ext:e}}}function j(r,n,i){if(!n){if(i.host.fileExists(r))return i.traceEnabled&&t(i.host,e.Diagnostics.File_0_exist_use_it_as_a_name_resolution_result,r),r;i.traceEnabled&&t(i.host,e.Diagnostics.File_0_does_not_exist,r)}i.failedLookupLocations.push(r)}function B(e,t,r,i,a){void 0===a&&(a=!0);var o=a?z(t,r,i):void 0;return n(o,U(e,t,r,i,o&&o.packageJsonContent,o&&o.versionPaths))}function z(r,n,i){var a=i.host,o=i.traceEnabled,s=!n&&e.directoryProbablyExists(r,a),c=e.combinePaths(r,e.getPackageJsonByPMType(i.compilerOptions.packageManagerType));if(s&&a.fileExists(c)){var l=e.isOhpm(i.compilerOptions.packageManagerType),d=l?u.parse(a.readFile(c)):e.readJson(c,a);if(o)t(a,l?e.Diagnostics.Found_oh_package_json5_at_0:e.Diagnostics.Found_package_json_at_0,c);return{packageDirectory:r,packageJsonContent:d,versionPaths:h(d,i)}}s&&o&&t(a,e.Diagnostics.File_0_does_not_exist,c),i.failedLookupLocations.push(c)}function U(r,n,i,a,l,u){var d;if(l)switch(r){case c.JavaScript:case c.Json:d=_(l,n,a);break;case c.TypeScript:d=g(l,n,a)||_(l,n,a);break;case c.DtsOnly:d=g(l,n,a);break;case c.TSConfig:d=function(e,t,r){return m(e,"tsconfig",t,r)}(l,n,a);break;default:return e.Debug.assertNever(r)}var p=function(r,n,i,a){var s=j(n,i,a);if(s){var l=function(t,r){var n=e.tryGetExtensionFromPath(r);return void 0!==n&&function(e,t){switch(e){case c.JavaScript:return".js"===t||".jsx"===t;case c.TSConfig:case c.Json:return".json"===t;case c.TypeScript:return".ts"===t||".tsx"===t||".d.ts"===t||".ets"===t||".d.ets"===t;case c.DtsOnly:return".d.ts"===t||".d.ets"===t}}(t,n)?{path:r,ext:n}:void 0}(r,s);if(l)return o(l);a.traceEnabled&&t(a.host,e.Diagnostics.File_0_has_an_unsupported_extension_so_skipping_it,s)}return P(r===c.DtsOnly?c.TypeScript:r,n,i,a,!1)},f=d?!e.directoryProbablyExists(e.getDirectoryPath(d),a.host):void 0,h=i||!e.directoryProbablyExists(n,a.host),y=e.combinePaths(n,r===c.TSConfig?"tsconfig":"index");if(u&&(!d||e.containsPath(n,d))){var v=e.getRelativePathFromDirectory(n,d||y,!1);a.traceEnabled&&t(a.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,u.version,e.version,v);var b=W(r,v,n,u.paths,p,f||h,a);if(b)return s(b.value)}var k=d&&s(p(r,d,f,a));return k||M(r,y,h,a)}function q(t){var r=t.indexOf(e.directorySeparator);return"@"===t[0]&&(r=t.indexOf(e.directorySeparator,r+1)),-1===r?{packageName:t,rest:""}:{packageName:t.slice(0,r),rest:t.slice(r+1)}}function J(e,t,r,n,i,a){return V(e,t,r,n,!1,i,a)}function V(t,r,n,i,a,o,s){var c=o&&o.getOrCreateCacheForModuleName(r,s),l=i.compilerOptions.packageManagerType,u=e.getModuleByPMType(l);return e.forEachAncestorDirectory(e.normalizeSlashes(n),(function(n){if(e.getBaseFileName(n)!==u){var o=X(c,r,n,i);return o||Z(H(t,r,n,i,a))}}))}function H(r,n,i,a,o){var s=e.combinePaths(i,e.getModuleByPMType(a.compilerOptions.packageManagerType)),l=e.directoryProbablyExists(s,a.host);!l&&a.traceEnabled&&t(a.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,s);var u=o?void 0:K(r,n,s,l,a);if(u)return u;if(r===c.TypeScript||r===c.DtsOnly){var d=e.combinePaths(s,"@types"),p=l;return l&&!e.directoryProbablyExists(d,a.host)&&(a.traceEnabled&&t(a.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,d),p=!1),K(c.DtsOnly,function(r,n){var i=$(r);n.traceEnabled&&i!==r&&t(n.host,e.Diagnostics.Scoped_package_detected_looking_in_0,i);return i}(n,a),d,p,a)}}function K(r,i,a,s,c){var l=e.normalizePath(e.combinePaths(a,i)),u=z(l,!s,c);if(u){var d=M(r,l,!s,c);if(d)return o(d);var p=U(r,l,!s,c,u.packageJsonContent,u.versionPaths);return n(u,p)}var f=function(e,t,r,i){var a=M(e,t,r,i)||U(e,t,r,i,u&&u.packageJsonContent,u&&u.versionPaths);return n(u,a)},m=q(i),g=m.packageName,_=m.rest;if(""!==_){var h=e.combinePaths(a,g);if((u=z(h,!s,c))&&u.versionPaths){c.traceEnabled&&t(c.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,u.versionPaths.version,e.version,_);var y=s&&e.directoryProbablyExists(h,c.host),v=W(r,_,h,u.versionPaths.paths,f,!y,c);if(v)return v.value}}return f(r,l,!s,c)}function W(r,n,i,a,s,c,l){var u=e.matchPatternOrExact(e.getOwnKeys(a),n);if(u){var d=e.isString(u)?void 0:e.matchedText(u,n),p=e.isString(u)?u:e.patternText(u);return l.traceEnabled&&t(l.host,e.Diagnostics.Module_name_0_matched_pattern_1,n,p),{value:e.forEach(a[p],(function(n){var a=d?n.replace("*",d):n,u=e.normalizePath(e.combinePaths(i,a));l.traceEnabled&&t(l.host,e.Diagnostics.Trying_substitution_0_candidate_module_location_Colon_1,n,a);var p=e.tryGetExtensionFromPath(n);if(void 0!==p){var f=j(u,c,l);if(void 0!==f)return o({path:f,ext:p})}return s(r,u,c||!e.directoryProbablyExists(e.getDirectoryPath(u),l.host),l)}))}}}e.nodeModuleNameResolver=C,e.nodeModulesPathPart="/node_modules/",e.ohModulesPathPart="/oh_modules/",e.pathContainsNodeModules=I,e.pathContainsOHModules=F,e.parsePackageName=q;var G="__";function $(t){if(e.startsWith(t,"@")){var r=t.replace(e.directorySeparator,G);if(r!==t)return r.slice(1)}return t}function Y(t){return e.stringContains(t,G)?"@"+t.replace(G,e.directorySeparator):t}function X(r,n,i,a){var o=r&&r.get(i);if(o)return a.traceEnabled&&t(a.host,e.Diagnostics.Resolution_for_module_0_was_found_in_cache_from_location_1,n,i),a.resultFromCache=o,{value:o.resolvedModule&&{path:o.resolvedModule.resolvedFileName,originalPath:o.resolvedModule.originalPath||!0,extension:o.resolvedModule.extension,packageId:o.resolvedModule.packageId}}}function Q(t,n,i,a,o,s){var l=[],u={compilerOptions:i,host:a,traceEnabled:r(i,a),failedLookupLocations:l},d=e.getDirectoryPath(n),f=m(c.TypeScript)||m(c.JavaScript);return p(f&&f.value,!1,l,u.resultFromCache);function m(r){var n=x(r,t,d,R,u);if(n)return{value:n};if(e.isExternalModuleNameRelative(t)){var i=e.normalizePath(e.combinePaths(d,t));return Z(R(r,i,!1,u))}var a=o&&o.getOrCreateCacheForModuleName(t,s),l=e.forEachAncestorDirectory(d,(function(n){var i=X(a,t,n,u);if(i)return i;var o=e.normalizePath(e.combinePaths(n,t));return Z(R(r,o,!1,u))}));return l||(r===c.TypeScript?function(e,t,r){return V(c.DtsOnly,e,t,r,!0,void 0,void 0)}(t,d,u):void 0)}}function Z(e){return void 0!==e?{value:e}:void 0}e.getTypesPackageName=function(e){return"@types/"+$(e)},e.mangleScopedPackageName=$,e.getPackageNameFromTypesPackageName=function(t){var r=e.removePrefix(t,"@types/");return r!==t?Y(r):t},e.unmangleScopedPackageName=Y,e.classicNameResolver=Q,e.loadModuleFromGlobalCache=function(n,i,a,o,s){var l=r(a,o);l&&t(o,e.Diagnostics.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,i,n,s);var u=[],d={compilerOptions:a,host:o,traceEnabled:l,failedLookupLocations:u};return p(H(c.DtsOnly,n,s,d,!1),!0,u,d.resultFromCache)}}(d||(d={})),function(e){var t;function r(t,r){return t.body&&!t.body.parent&&(e.setParent(t.body,t),e.setParentRecursive(t.body,!1)),t.body?n(t.body,r):1}function n(t,i){void 0===i&&(i=new e.Map);var a=e.getNodeId(t);if(i.has(a))return i.get(a)||0;i.set(a,void 0);var s=function(t,i){switch(t.kind){case 256:case 257:return 0;case 258:if(e.isEnumConst(t))return 2;break;case 264:case 263:if(!e.hasSyntacticModifier(t,1))return 0;break;case 270:var a=t;if(!a.moduleSpecifier&&a.exportClause&&271===a.exportClause.kind){for(var s=0,c=0,l=a.exportClause.elements;c<l.length;c++){var u=o(l[c],i);if(u>s&&(s=u),1===s)return s}return s}break;case 260:var d=0;return e.forEachChild(t,(function(t){var r=n(t,i);switch(r){case 0:return;case 2:return void(d=2);case 1:return d=1,!0;default:e.Debug.assertNever(r)}})),d;case 259:return r(t,i);case 78:if(t.isInJSDocNamespace)return 0}return 1}(t,i);return i.set(a,s),s}function o(t,r){for(var i=t.propertyName||t.name,a=t.parent;a;){if(e.isBlock(a)||e.isModuleBlock(a)||e.isSourceFile(a)){for(var o=void 0,s=0,c=a.statements;s<c.length;s++){var l=c[s];if(e.nodeHasName(l,i)){l.parent||(e.setParent(l,a),e.setParentRecursive(l,!1));var u=n(l,r);if((void 0===o||u>o)&&(o=u),1===o)return o}}if(void 0!==o)return o}a=a.parent}return 1}function s(t){return e.Debug.attachFlowNodeDebugInfo(t),t}!function(e){e[e.NonInstantiated=0]="NonInstantiated",e[e.Instantiated=1]="Instantiated",e[e.ConstEnumOnly=2]="ConstEnumOnly"}(e.ModuleInstanceState||(e.ModuleInstanceState={})),e.getModuleInstanceState=r,function(e){e[e.None=0]="None",e[e.IsContainer=1]="IsContainer",e[e.IsBlockScopedContainer=2]="IsBlockScopedContainer",e[e.IsControlFlowContainer=4]="IsControlFlowContainer",e[e.IsFunctionLike=8]="IsFunctionLike",e[e.IsFunctionExpression=16]="IsFunctionExpression",e[e.HasLocals=32]="HasLocals",e[e.IsInterface=64]="IsInterface",e[e.IsObjectLiteralOrClassExpressionMethod=128]="IsObjectLiteralOrClassExpressionMethod"}(t||(t={}));var c=function(){var t,n,o,c,p,f,m,g,_,h,y,v,b,k,x,E,S,D,w,T,C,A,N,P,I=!1,F=0,O={flags:1},R={flags:1};function M(r,n,i,a,o){return e.createDiagnosticForNodeInSourceFile(e.getSourceFileOfNode(r)||t,r,n,i,a,o)}return function(r,i){t=r,n=i,o=e.getEmitScriptTarget(n),A=function(t,r){return!(!e.getStrictOptionValue(r,"alwaysStrict")||t.isDeclarationFile)||!!t.externalModuleIndicator}(t,i),P=new e.Set,F=0,N=e.objectAllocator.getSymbolConstructor(),e.Debug.attachFlowNodeDebugInfo(O),e.Debug.attachFlowNodeDebugInfo(R),t.locals||(Le(t),t.symbolCount=F,t.classifiableNames=P,function(){if(_){for(var r=p,n=g,i=m,a=c,o=y,l=0,d=_;l<d.length;l++){var f=d[l],h=e.getJSDocHost(f);p=h&&e.findAncestor(h.parent,(function(e){return!!(1&Se(e))}))||t,m=h&&e.getEnclosingBlockScopeContainer(h)||t,y=s({flags:2}),c=f,Le(f.typeExpression);var v=e.getNameOfDeclaration(f);if((e.isJSDocEnumTag(f)||!f.fullName)&&v&&e.isPropertyAccessEntityNameExpression(v.parent)){var b=Qe(v.parent);if(b){Ye(t.symbol,v.parent,b,!!e.findAncestor(v,(function(t){return e.isPropertyAccessExpression(t)&&"prototype"===t.name.escapedText})),!1);var k=p;switch(e.getAssignmentDeclarationPropertyAccessKind(v.parent)){case 1:case 2:p=e.isExternalOrCommonJsModule(t)?t:void 0;break;case 4:p=v.parent.expression;break;case 3:p=v.parent.expression.name;break;case 5:p=u(t,v.parent.expression)?t:e.isPropertyAccessExpression(v.parent.expression)?v.parent.expression.name:v.parent.expression;break;case 0:return e.Debug.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}p&&q(f,524288,788968),p=k}}else e.isJSDocEnumTag(f)||!f.fullName||78===f.fullName.kind?(c=f.parent,Ne(f,524288,788968)):Le(f.fullName)}p=r,g=n,m=i,c=a,y=o}}()),t=void 0,n=void 0,o=void 0,c=void 0,p=void 0,f=void 0,m=void 0,g=void 0,_=void 0,h=!1,y=void 0,v=void 0,b=void 0,k=void 0,x=void 0,E=void 0,S=void 0,w=void 0,T=!1,I=!1,C=0};function L(e,t){return F++,new N(e,t)}function j(t,r,n){t.flags|=n,r.symbol=t,t.declarations=e.appendIfUnique(t.declarations,r),1955&n&&!t.exports&&(t.exports=e.createSymbolTable()),6240&n&&!t.members&&(t.members=e.createSymbolTable()),t.constEnumOnlyModule&&304&t.flags&&(t.constEnumOnlyModule=!1),111551&n&&e.setValueDeclaration(t,r)}function B(t){if(269===t.kind)return t.isExportEquals?"export=":"default";var r=e.getNameOfDeclaration(t);if(r){if(e.isAmbientModule(t)){var n=e.getTextOfIdentifierOrLiteral(r);return e.isGlobalScopeAugmentation(t)?"__global":'"'+n+'"'}if(159===r.kind){var i=r.expression;return e.isStringOrNumericLiteralLike(i)?e.escapeLeadingUnderscores(i.text):e.isSignedNumericLiteral(i)?e.tokenToString(i.operator)+i.operand.text:(e.Debug.assert(e.isWellKnownSymbolSyntactically(i)),e.getPropertyNameForKnownSymbolName(e.idText(i.name)))}if(e.isWellKnownSymbolSyntactically(r))return e.getPropertyNameForKnownSymbolName(e.idText(r.name));if(e.isPrivateIdentifier(r)){var a=e.getContainingClass(t);if(!a)return;var o=a.symbol;return e.getSymbolNameForPrivateIdentifier(o,r.escapedText)}return e.isPropertyNameLiteral(r)?e.getEscapedTextOfIdentifierOrLiteral(r):void 0}switch(t.kind){case 167:return"__constructor";case 175:case 170:case 316:return"__call";case 176:case 171:return"__new";case 172:return"__index";case 270:return"__export";case 300:return"export=";case 218:if(2===e.getAssignmentDeclarationKind(t))return"export=";e.Debug.fail("Unknown binary declaration kind");break;case 311:return e.isJSDocConstructSignature(t)?"__new":"__call";case 161:return e.Debug.assert(311===t.parent.kind,"Impossible parameter parent kind",(function(){return"parent is: "+(e.SyntaxKind?e.SyntaxKind[t.parent.kind]:t.parent.kind)+", expected JSDocFunctionType"})),"arg"+t.parent.parameters.indexOf(t)}}function z(t){return e.isNamedDeclaration(t)?e.declarationNameToString(t.name):e.unescapeLeadingUnderscores(e.Debug.checkDefined(B(t)))}function U(r,n,a,o,s,c){e.Debug.assert(!e.hasDynamicName(a));var l,u=e.hasSyntacticModifier(a,512)||e.isExportSpecifier(a)&&"default"===a.name.escapedText,d=u&&n?"default":B(a);if(void 0===d)l=L(0,"__missing");else if(l=r.get(d),2885600&o&&P.add(d),l){if(c&&!l.isReplaceableByMethod)return l;if(l.flags&s)if(l.isReplaceableByMethod)r.set(d,l=L(0,d));else if(!(3&o&&67108864&l.flags)){e.isNamedDeclaration(a)&&e.setParent(a.name,a);var p=2&l.flags?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0,f=!0;(384&l.flags||384&o)&&(p=e.Diagnostics.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,f=!1);var m=!1;e.length(l.declarations)&&(u||l.declarations&&l.declarations.length&&269===a.kind&&!a.isExportEquals)&&(p=e.Diagnostics.A_module_cannot_have_multiple_default_exports,f=!1,m=!0);var g=[];e.isTypeAliasDeclaration(a)&&e.nodeIsMissing(a.type)&&e.hasSyntacticModifier(a,1)&&2887656&l.flags&&g.push(M(a,e.Diagnostics.Did_you_mean_0,"export type { "+e.unescapeLeadingUnderscores(a.name.escapedText)+" }"));var _=e.getNameOfDeclaration(a)||a;e.forEach(l.declarations,(function(r,n){var i=e.getNameOfDeclaration(r)||r,a=M(i,p,f?z(r):void 0);t.bindDiagnostics.push(m?e.addRelatedInfo(a,M(_,0===n?e.Diagnostics.Another_export_default_is_here:e.Diagnostics.and_here)):a),m&&g.push(M(i,e.Diagnostics.The_first_export_default_is_here))}));var h=M(_,p,f?z(a):void 0);t.bindDiagnostics.push(e.addRelatedInfo.apply(void 0,i([h],g))),l=L(0,d)}}else r.set(d,l=L(0,d)),c&&(l.isReplaceableByMethod=!0);return j(l,a,o),l.parent?e.Debug.assert(l.parent===n,"Existing symbol parent should match new one"):l.parent=n,l}function q(t,r,n){var i=!!(1&e.getCombinedModifierFlags(t))||function(t){t.parent&&e.isModuleDeclaration(t)&&(t=t.parent);if(!e.isJSDocTypeAlias(t))return!1;if(!e.isJSDocEnumTag(t)&&t.fullName)return!0;var r=e.getNameOfDeclaration(t);return!!r&&(!(!e.isPropertyAccessEntityNameExpression(r.parent)||!Qe(r.parent))||!!(e.isDeclaration(r.parent)&&1&e.getCombinedModifierFlags(r.parent)))}(t);if(2097152&r)return 273===t.kind||263===t.kind&&i?U(p.symbol.exports,p.symbol,t,r,n):U(p.locals,void 0,t,r,n);if(e.isJSDocTypeAlias(t)&&e.Debug.assert(e.isInJSFile(t)),!e.isAmbientModule(t)&&(i||64&p.flags)){if(!p.locals||e.hasSyntacticModifier(t,512)&&!B(t))return U(p.symbol.exports,p.symbol,t,r,n);var a=111551&r?1048576:0,o=U(p.locals,void 0,t,a,n);return o.exportSymbol=U(p.symbol.exports,p.symbol,t,r,n),t.localSymbol=o,o}return U(p.locals,void 0,t,r,n)}function J(e){V(e,(function(e){return 253===e.kind?Le(e):void 0})),V(e,(function(e){return 253!==e.kind?Le(e):void 0}))}function V(t,r){void 0===r&&(r=Le),void 0!==t&&e.forEach(t,r)}function H(t){e.forEachChild(t,Le,V)}function K(t){var i=I;if(I=!1,function(t){if(!(1&y.flags))return!1;if(y===O){var i=e.isStatementButNotDeclaration(t)&&233!==t.kind||254===t.kind||259===t.kind&&function(t){var i=r(t);return 1===i||2===i&&e.shouldPreserveConstEnums(n)}(t);if(i&&(y=R,!n.allowUnreachableCode)){var a=e.unreachableCodeIsError(n)&&!(8388608&t.flags)&&(!e.isVariableStatement(t)||!!(3&e.getCombinedNodeFlags(t.declarationList))||t.declarationList.declarations.some((function(e){return!!e.initializer})));!function(t,r){if(e.isStatement(t)&&l(t)&&e.isBlock(t.parent)){var n=t.parent.statements,i=e.sliceAfter(n,t);e.getRangesWhere(i,l,(function(e,t){return r(i[e],i[t-1])}))}else r(t,t)}(t,(function(t,r){return Me(a,t,r,e.Diagnostics.Unreachable_code_detected)}))}}return!0}(t))return H(t),je(t),void(I=i);switch(t.kind>=234&&t.kind<=250&&!n.allowUnreachableCode&&(t.flowNode=y),t.kind){case 238:!function(e){var t=me(e,Z()),r=Q(),n=Q();re(t,y),y=t,pe(e.expression,r,n),y=se(r),fe(e.statement,n,t),re(t,y),y=se(n)}(t);break;case 237:!function(e){var t=Z(),r=me(e,Q()),n=Q();re(t,y),y=t,fe(e.statement,n,r),re(r,y),y=se(r),pe(e.expression,t,n),y=se(n)}(t);break;case 239:!function(e){var t=me(e,Z()),r=Q(),n=Q();Le(e.initializer),re(t,y),y=t,pe(e.condition,r,n),y=se(r),fe(e.statement,n,t),Le(e.incrementor),re(t,y),y=se(n)}(t);break;case 240:case 241:!function(e){var t=me(e,Z()),r=Q();Le(e.expression),re(t,y),y=t,241===e.kind&&Le(e.awaitModifier);re(r,y),Le(e.initializer),252!==e.initializer.kind&&ye(e.initializer);fe(e.statement,r,t),re(t,y),y=se(r)}(t);break;case 236:!function(e){var t=Q(),r=Q(),n=Q();pe(e.expression,t,r),y=se(t),Le(e.thenStatement),re(n,y),y=se(r),Le(e.elseStatement),re(n,y),y=se(n)}(t);break;case 244:case 248:!function(e){Le(e.expression),244===e.kind&&(T=!0,k&&re(k,y));y=O}(t);break;case 243:case 242:!function(e){if(Le(e.label),e.label){var t=function(e){for(var t=w;t;t=t.next)if(t.name===e)return t;return}(e.label.escapedText);t&&(t.referenced=!0,ge(e,t.breakTarget,t.continueTarget))}else ge(e,v,b)}(t);break;case 249:!function(t){var r=k,n=S,i=Q(),a=Q(),o=Q();t.finallyBlock&&(k=a);re(o,y),S=o,Le(t.tryBlock),re(i,y),t.catchClause&&(y=se(o),re(o=Q(),y),S=o,Le(t.catchClause),re(i,y));if(k=r,S=n,t.finallyBlock){var s=Q();s.antecedents=e.concatenate(e.concatenate(i.antecedents,o.antecedents),a.antecedents),y=s,Le(t.finallyBlock),1&y.flags?y=O:(k&&a.antecedents&&re(k,ee(s,a.antecedents,y)),S&&o.antecedents&&re(S,ee(s,o.antecedents,y)),y=i.antecedents?ee(s,i.antecedents,y):O)}else y=se(i)}(t);break;case 246:!function(t){var r=Q();Le(t.expression);var n=v,i=D;v=r,D=y,Le(t.caseBlock),re(r,y);var a=e.forEach(t.caseBlock.clauses,(function(e){return 288===e.kind}));t.possiblyExhaustive=!a&&!r.antecedents,a||re(r,ie(D,t,0,0));v=n,D=i,y=se(r)}(t);break;case 261:!function(e){for(var t=e.clauses,r=W(e.parent.expression),i=O,a=0;a<t.length;a++){for(var o=a;!t[a].statements.length&&a+1<t.length;)Le(t[a]),a++;var s=Q();re(s,r?ie(D,e.parent,o,a+1):D),re(s,i),y=se(s);var c=t[a];Le(c),i=y,1&y.flags||a===t.length-1||!n.noFallthroughCasesInSwitch||(c.fallthroughFlowNode=y)}}(t);break;case 287:!function(e){var t=y;y=D,Le(e.expression),y=t,V(e.statements)}(t);break;case 235:!function(e){Le(e.expression),_e(e.expression)}(t);break;case 247:!function(t){var r=Q();w={next:w,name:t.label.escapedText,breakTarget:r,continueTarget:void 0,referenced:!1},Le(t.label),Le(t.statement),w.referenced||n.allowUnusedLabels||function(e,t,r){Me(e,t,t,r)}(e.unusedLabelIsError(n),t.label,e.Diagnostics.Unused_label);w=w.next,re(r,y),y=se(r)}(t);break;case 216:!function(e){if(53===e.operator){var t=x;x=E,E=t,H(e),E=x,x=t}else H(e),45!==e.operator&&46!==e.operator||ye(e.operand)}(t);break;case 217:!function(e){H(e),(45===e.operator||46===e.operator)&&ye(e.operand)}(t);break;case 218:if(e.isDestructuringAssignment(t))return I=i,void function(e){I?(I=!1,Le(e.operatorToken),Le(e.right),I=!0,Le(e.left)):(I=!0,Le(e.left),I=!1,Le(e.operatorToken),Le(e.right));ye(e.left)}(t);!function(t){var r={expr:[t],state:[1],inStrictMode:[void 0],parent:[void 0]},n=0;for(;n>=0;)switch(t=r.expr[n],r.state[n]){case 0:e.setParent(t,c);var i=A;ze(t);var a=c;c=t,l(1,i,a);break;case 1:if(55===(s=t.operatorToken.kind)||56===s||60===s||e.isLogicalOrCoalescingAssignmentOperator(s)){if(ue(t)){var o=Q();ve(t,o,o),y=se(o)}else ve(t,x,E);u()}else l(2),d(t.left);break;case 2:27===t.operatorToken.kind&&_e(t.left),l(3),d(t.operatorToken);break;case 3:l(4),d(t.right);break;case 4:var s=t.operatorToken.kind;if(e.isAssignmentOperator(s)&&!e.isAssignmentTarget(t))if(ye(t.left),62===s&&203===t.left.kind)X(t.left.expression)&&(y=ae(256,y,t));u();break;default:return e.Debug.fail("Invalid state "+r.state[n]+" for bindBinaryExpressionFlow")}function l(e,t,i){r.state[n]=e,void 0!==t&&(r.inStrictMode[n]=t),void 0!==i&&(r.parent[n]=i)}function u(){void 0!==r.inStrictMode[n]&&(A=r.inStrictMode[n],c=r.parent[n]),n--}function d(t){t&&e.isBinaryExpression(t)&&!e.isDestructuringAssignment(t)?(n++,r.expr[n]=t,r.state[n]=0,r.inStrictMode[n]=void 0,r.parent[n]=void 0):Le(t)}}(t);break;case 212:!function(e){H(e),202===e.expression.kind&&ye(e.expression)}(t);break;case 219:!function(e){var t=Q(),r=Q(),n=Q();pe(e.condition,t,r),y=se(t),Le(e.questionToken),Le(e.whenTrue),re(n,y),y=se(r),Le(e.colonToken),Le(e.whenFalse),re(n,y),y=se(n)}(t);break;case 251:!function(t){H(t),(t.initializer||e.isForInOrOfStatement(t.parent.parent))&&be(t)}(t);break;case 202:case 203:!function(t){e.isOptionalChain(t)?Ee(t):H(t)}(t);break;case 204:!function(t){if(e.isOptionalChain(t))Ee(t);else{var r=e.skipParentheses(t.expression);209===r.kind||210===r.kind?(V(t.typeArguments),V(t.arguments),Le(t.expression)):(H(t),106===t.expression.kind&&(y=oe(y,t)))}if(202===t.expression.kind){var n=t.expression;e.isIdentifier(n.name)&&X(n.expression)&&e.isPushOrUnshiftIdentifier(n.name)&&(y=ae(256,y,t))}}(t);break;case 227:!function(t){e.isOptionalChain(t)?Ee(t):H(t)}(t);break;case 334:case 327:case 328:!function(t){e.setParent(t.tagName,t),328!==t.kind&&t.fullName&&(e.setParent(t.fullName,t),e.setParentRecursive(t.fullName,!1))}(t);break;case 300:J(t.statements),Le(t.endOfFileToken);break;case 232:case 260:J(t.statements);break;case 199:!function(t){e.isBindingPattern(t.name)?(V(t.decorators),V(t.modifiers),Le(t.dotDotDotToken),Le(t.propertyName),Le(t.initializer),Le(t.name)):H(t)}(t);break;case 201:case 200:case 291:case 222:I=i;default:H(t)}je(t),I=i}function W(t){switch(t.kind){case 78:case 79:case 108:case 202:case 203:return $(t);case 204:return function(e){if(e.arguments)for(var t=0,r=e.arguments;t<r.length;t++){if($(r[t]))return!0}if(202===e.expression.kind&&$(e.expression.expression))return!0;return!1}(t);case 208:case 227:case 213:return W(t.expression);case 218:return function(t){switch(t.operatorToken.kind){case 62:case 74:case 75:case 76:return $(t.left);case 34:case 35:case 36:case 37:return X(t.left)||X(t.right)||Y(t.right,t.left)||Y(t.left,t.right);case 102:return X(t.left);case 101:return r=t.left,n=t.right,e.isStringLiteralLike(r)&&W(n);case 27:return W(t.right)}var r,n;return!1}(t);case 216:return 53===t.operator&&W(t.operand)}return!1}function G(t){return 78===t.kind||79===t.kind||108===t.kind||106===t.kind||(e.isPropertyAccessExpression(t)||e.isNonNullExpression(t)||e.isParenthesizedExpression(t))&&G(t.expression)||e.isBinaryExpression(t)&&27===t.operatorToken.kind&&G(t.right)||e.isElementAccessExpression(t)&&e.isStringOrNumericLiteralLike(t.argumentExpression)&&G(t.expression)||e.isAssignmentExpression(t)&&G(t.left)}function $(t){return G(t)||e.isOptionalChain(t)&&$(t.expression)}function Y(t,r){return e.isTypeOfExpression(t)&&X(t.expression)&&e.isStringLiteralLike(r)}function X(e){switch(e.kind){case 208:return X(e.expression);case 218:switch(e.operatorToken.kind){case 62:return X(e.left);case 27:return X(e.right)}}return $(e)}function Q(){return s({flags:4,antecedents:void 0})}function Z(){return s({flags:8,antecedents:void 0})}function ee(e,t,r){return s({flags:1024,target:e,antecedents:t,antecedent:r})}function te(e){e.flags|=2048&e.flags?4096:2048}function re(t,r){1&r.flags||e.contains(t.antecedents,r)||((t.antecedents||(t.antecedents=[])).push(r),te(r))}function ne(t,r,n){return 1&r.flags?r:n?!(110===n.kind&&64&t||95===n.kind&&32&t)||e.isExpressionOfOptionalChainRoot(n)||e.isNullishCoalesce(n.parent)?W(n)?(te(r),s({flags:t,antecedent:r,node:n})):r:O:32&t?r:O}function ie(e,t,r,n){return te(e),s({flags:128,antecedent:e,switchStatement:t,clauseStart:r,clauseEnd:n})}function ae(e,t,r){te(t);var n=s({flags:e,antecedent:t,node:r});return S&&re(S,n),n}function oe(e,t){return te(e),s({flags:512,antecedent:e,node:t})}function se(e){var t=e.antecedents;return t?1===t.length?t[0]:e:O}function ce(e){for(;;)if(208===e.kind)e=e.expression;else{if(216!==e.kind||53!==e.operator)return 218===e.kind&&(55===e.operatorToken.kind||56===e.operatorToken.kind||60===e.operatorToken.kind);e=e.operand}}function le(t){return t=e.skipParentheses(t),e.isBinaryExpression(t)&&e.isLogicalOrCoalescingAssignmentOperator(t.operatorToken.kind)}function ue(t){for(;e.isParenthesizedExpression(t.parent)||e.isPrefixUnaryExpression(t.parent)&&53===t.parent.operator;)t=t.parent;return!(function(e){var t=e.parent;switch(t.kind){case 236:case 238:case 237:return t.expression===e;case 239:case 219:return t.condition===e}return!1}(t)||le(t.parent)||ce(t.parent)||e.isOptionalChain(t.parent)&&t.parent.expression===t)}function de(e,t,r,n){var i=x,a=E;x=r,E=n,e(t),x=i,E=a}function pe(t,r,n){de(Le,t,r,n),t&&(le(t)||ce(t)||e.isOptionalChain(t)&&e.isOutermostOptionalChain(t))||(re(r,ne(32,y,t)),re(n,ne(64,y,t)))}function fe(e,t,r){var n=v,i=b;v=t,b=r,Le(e),v=n,b=i}function me(e,t){for(var r=w;r&&247===e.parent.kind;)r.continueTarget=t,r=r.next,e=e.parent;return t}function ge(e,t,r){var n=243===e.kind?t:r;n&&(re(n,y),y=O)}function _e(t){if(204===t.kind){var r=t;e.isDottedName(r.expression)&&106!==r.expression.kind&&(y=oe(y,r))}}function he(e){218===e.kind&&62===e.operatorToken.kind?ye(e.left):ye(e)}function ye(e){if(G(e))y=ae(16,y,e);else if(200===e.kind)for(var t=0,r=e.elements;t<r.length;t++){var n=r[t];222===n.kind?ye(n.expression):he(n)}else if(201===e.kind)for(var i=0,a=e.properties;i<a.length;i++){var o=a[i];291===o.kind?he(o.initializer):292===o.kind?ye(o.name):293===o.kind&&ye(o.expression)}}function ve(t,r,n){var i=Q();55===t.operatorToken.kind||75===t.operatorToken.kind?pe(t.left,i,n):pe(t.left,r,i),y=se(i),Le(t.operatorToken),e.isLogicalOrCoalescingAssignmentOperator(t.operatorToken.kind)?(de(Le,t.right,r,n),ye(t.left),re(r,ne(32,y,t)),re(n,ne(64,y,t))):pe(t.right,r,n)}function be(t){var r=e.isOmittedExpression(t)?void 0:t.name;if(e.isBindingPattern(r))for(var n=0,i=r.elements;n<i.length;n++){be(i[n])}else y=ae(16,y,t)}function ke(e){switch(e.kind){case 202:Le(e.questionDotToken),Le(e.name);break;case 203:Le(e.questionDotToken),Le(e.argumentExpression);break;case 204:Le(e.questionDotToken),V(e.typeArguments),V(e.arguments)}}function xe(t,r,n){var i=e.isOptionalChainRoot(t)?Q():void 0;!function(t,r,n){de(Le,t,r,n),e.isOptionalChain(t)&&!e.isOutermostOptionalChain(t)||(re(r,ne(32,y,t)),re(n,ne(64,y,t)))}(t.expression,i||r,n),i&&(y=se(i)),de(ke,t,r,n),e.isOutermostOptionalChain(t)&&(re(r,ne(32,y,t)),re(n,ne(64,y,t)))}function Ee(e){if(ue(e)){var t=Q();xe(e,t,t),y=se(t)}else xe(e,x,E)}function Se(t){switch(t.kind){case 223:case 254:case 255:case 258:case 201:case 178:case 315:case 284:return 1;case 256:return 65;case 259:case 257:case 191:return 33;case 300:return 37;case 166:if(e.isObjectLiteralOrClassExpressionMethod(t))return 173;case 167:case 253:case 165:case 168:case 169:case 170:case 316:case 311:case 175:case 171:case 172:case 176:return 45;case 209:case 210:return 61;case 260:return 4;case 164:return t.initializer?4:0;case 290:case 239:case 240:case 241:case 261:return 2;case 232:return e.isFunctionLike(t.parent)?0:2}return 0}function De(e){g&&(g.nextContainer=e),g=e}function we(r,n,i){switch(p.kind){case 259:return q(r,n,i);case 300:return function(r,n,i){return e.isExternalModule(t)?q(r,n,i):U(t.locals,void 0,r,n,i)}(r,n,i);case 223:case 254:case 255:return function(t,r,n){return e.hasSyntacticModifier(t,32)?U(p.symbol.exports,p.symbol,t,r,n):U(p.symbol.members,p.symbol,t,r,n)}(r,n,i);case 258:return U(p.symbol.exports,p.symbol,r,n,i);case 178:case 315:case 201:case 256:case 284:return U(p.symbol.members,p.symbol,r,n,i);case 175:case 176:case 170:case 171:case 316:case 172:case 166:case 165:case 167:case 168:case 169:case 253:case 209:case 210:case 311:case 334:case 327:case 257:case 191:return U(p.locals,void 0,r,n,i)}}function Te(t){8388608&t.flags&&!function(t){var r=e.isSourceFile(t)?t:e.tryCast(t.body,e.isModuleBlock);return!!r&&r.statements.some((function(t){return e.isExportDeclaration(t)||e.isExportAssignment(t)}))}(t)?t.flags|=64:t.flags&=-65}function Ce(e){var t=r(e),n=0!==t;return we(e,n?512:1024,n?110735:0),t}function Ae(e,t,r){var n=L(t,r);return 106508&t&&(n.parent=p.symbol),j(n,e,t),n}function Ne(t,r,n){switch(m.kind){case 259:q(t,r,n);break;case 300:if(e.isExternalOrCommonJsModule(p)){q(t,r,n);break}default:m.locals||(m.locals=e.createSymbolTable(),De(m)),U(m.locals,void 0,t,r,n)}}function Pe(r){t.parseDiagnostics.length||8388608&r.flags||4194304&r.flags||e.isIdentifierName(r)||(A&&r.originalKeywordKind>=117&&r.originalKeywordKind<=125?t.bindDiagnostics.push(M(r,function(r){if(e.getContainingClass(r))return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode;if(t.externalModuleIndicator)return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode;return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode}(r),e.declarationNameToString(r))):131===r.originalKeywordKind?e.isExternalModule(t)&&e.isInTopLevelContext(r)?t.bindDiagnostics.push(M(r,e.Diagnostics.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,e.declarationNameToString(r))):32768&r.flags&&t.bindDiagnostics.push(M(r,e.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,e.declarationNameToString(r))):125===r.originalKeywordKind&&8192&r.flags&&t.bindDiagnostics.push(M(r,e.Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,e.declarationNameToString(r))))}function Ie(r,n){if(n&&78===n.kind){var i=n;if(o=i,e.isIdentifier(o)&&("eval"===o.escapedText||"arguments"===o.escapedText)){var a=e.getErrorSpanForNode(t,n);t.bindDiagnostics.push(e.createFileDiagnostic(t,a.start,a.length,function(r){if(e.getContainingClass(r))return e.Diagnostics.Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode;if(t.externalModuleIndicator)return e.Diagnostics.Invalid_use_of_0_Modules_are_automatically_in_strict_mode;return e.Diagnostics.Invalid_use_of_0_in_strict_mode}(r),e.idText(i)))}}var o}function Fe(e){A&&Ie(e,e.name)}function Oe(r){if(o<2&&300!==m.kind&&259!==m.kind&&!e.isFunctionLike(m)){var n=e.getErrorSpanForNode(t,r);t.bindDiagnostics.push(e.createFileDiagnostic(t,n.start,n.length,function(r){return e.getContainingClass(r)?e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:t.externalModuleIndicator?e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5}(r)))}}function Re(r,n,i,a,o){var s=e.getSpanOfTokenAtPosition(t,r.pos);t.bindDiagnostics.push(e.createFileDiagnostic(t,s.start,s.length,n,i,a,o))}function Me(r,n,i,o){!function(r,n,i){var o=e.createFileDiagnostic(t,n.pos,n.end-n.pos,i);r?t.bindDiagnostics.push(o):t.bindSuggestionDiagnostics=e.append(t.bindSuggestionDiagnostics,a(a({},o),{category:e.DiagnosticCategory.Suggestion}))}(r,{pos:e.getTokenPosOfNode(n,t),end:i.end},o)}function Le(t){if(t){e.setParent(t,c);var r=A;if(ze(t),t.kind>157){var n=c;c=t;var i=Se(t);0===i?K(t):function(t,r){var n=p,i=f,a=m;if(1&r?(210!==t.kind&&(f=p),p=m=t,32&r&&(p.locals=e.createSymbolTable()),De(p)):2&r&&((m=t).locals=void 0),4&r){var o=y,c=v,l=b,u=k,d=S,g=w,_=T,x=16&r&&!e.hasSyntacticModifier(t,256)&&!t.asteriskToken&&!!e.getImmediatelyInvokedFunctionExpression(t);x||(y=s({flags:2}),144&r&&(y.node=t)),k=x||167===t.kind||e.isInJSFile(t)&&(253===t.kind||209===t.kind)?Q():void 0,S=void 0,v=void 0,b=void 0,w=void 0,T=!1,K(t),t.flags&=-2817,!(1&y.flags)&&8&r&&e.nodeIsPresent(t.body)&&(t.flags|=256,T&&(t.flags|=512),t.endFlowNode=y),300===t.kind&&(t.flags|=C),k&&(re(k,y),y=se(k),(167===t.kind||e.isInJSFile(t)&&(253===t.kind||209===t.kind))&&(t.returnFlowNode=y)),x||(y=o),v=c,b=l,k=u,S=d,w=g,T=_}else 64&r?(h=!1,K(t),t.flags=h?128|t.flags:-129&t.flags):K(t);p=n,f=i,m=a}(t,i),c=n}else{n=c;1===t.kind&&(c=t),je(t),c=n}A=r}}function je(t){if(e.hasJSDocNodes(t))if(e.isInJSFile(t))for(var r=0,n=t.jsDoc;r<n.length;r++){Le(o=n[r])}else for(var i=0,a=t.jsDoc;i<a.length;i++){var o=a[i];e.setParent(o,t),e.setParentRecursive(o,!1)}}function Be(r){if(!A)for(var n=0,i=r;n<i.length;n++){var a=i[n];if(!e.isPrologueDirective(a))return;if(o=a,s=void 0,'"use strict"'===(s=e.getSourceTextOfNodeFromSourceFile(t,o.expression))||"'use strict'"===s)return void(A=!0)}var o,s}function ze(r){switch(r.kind){case 78:if(r.isInJSDocNamespace){for(var i=r.parent;i&&!e.isJSDocTypeAlias(i);)i=i.parent;Ne(i,524288,788968);break}case 108:return y&&(e.isExpression(r)||292===c.kind)&&(r.flowNode=y),Pe(r);case 158:y&&177===c.kind&&(r.flowNode=y);break;case 106:r.flowNode=y;break;case 79:return function(r){"#constructor"===r.escapedText&&(t.parseDiagnostics.length||t.bindDiagnostics.push(M(r,e.Diagnostics.constructor_is_a_reserved_word,e.declarationNameToString(r))))}(r);case 202:case 203:var a=r;y&&G(a)&&(a.flowNode=y),e.isSpecialPropertyDeclaration(a)&&function(t){108===t.expression.kind?He(t):e.isBindableStaticAccessExpression(t)&&300===t.parent.parent.kind&&(e.isPrototypeAccess(t.expression)?Ge(t,t.parent):$e(t))}(a),e.isInJSFile(a)&&t.commonJsModuleIndicator&&e.isModuleExportsAccessExpression(a)&&!d(m,"module")&&U(t.locals,void 0,a.expression,134217729,111550);break;case 218:switch(e.getAssignmentDeclarationKind(r)){case 1:Je(r);break;case 2:!function(r){if(!qe(r))return;var n=e.getRightMostAssignedExpression(r.right);if(e.isEmptyObjectLiteral(n)||p===t&&u(t,n))return;if(e.isObjectLiteralExpression(n)&&e.every(n.properties,e.isShorthandPropertyAssignment))return void e.forEach(n.properties,Ve);var i=e.exportAssignmentIsAlias(r)?2097152:1049092,a=U(t.symbol.exports,t.symbol,r,67108864|i,0);e.setValueDeclaration(a,r)}(r);break;case 3:Ge(r.left,r);break;case 6:!function(t){e.setParent(t.left,t),e.setParent(t.right,t),Ze(t.left.expression,t.left,!1,!0)}(r);break;case 4:He(r);break;case 5:var o=r.left.expression;if(e.isInJSFile(r)&&e.isIdentifier(o)){var s=d(m,o.escapedText);if(e.isThisInitializedDeclaration(null==s?void 0:s.valueDeclaration)){He(r);break}}!function(r){var n,i=et(r.left.expression,p)||et(r.left.expression,m);if(!e.isInJSFile(r)&&!e.isFunctionSymbol(i))return;var a=e.getLeftmostAccessExpression(r.left);if(e.isIdentifier(a)&&2097152&(null===(n=d(p,a.escapedText))||void 0===n?void 0:n.flags))return;if(e.setParent(r.left,r),e.setParent(r.right,r),e.isIdentifier(r.left.expression)&&p===t&&u(t,r.left.expression))Je(r);else if(e.hasDynamicName(r)){Ae(r,67108868,"__computed"),We(r,Ye(i,r.left.expression,Qe(r.left),!1,!1))}else $e(e.cast(r.left,e.isBindableStaticNameExpression))}(r);break;case 0:break;default:e.Debug.fail("Unknown binary expression special property assignment kind")}return function(t){A&&e.isLeftHandSideExpression(t.left)&&e.isAssignmentOperator(t.operatorToken.kind)&&Ie(t,t.left)}(r);case 290:return function(e){A&&e.variableDeclaration&&Ie(e,e.variableDeclaration.name)}(r);case 212:return function(r){if(A&&78===r.expression.kind){var n=e.getErrorSpanForNode(t,r.expression);t.bindDiagnostics.push(e.createFileDiagnostic(t,n.start,n.length,e.Diagnostics.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}(r);case 8:return function(r){A&&32&r.numericLiteralFlags&&t.bindDiagnostics.push(M(r,e.Diagnostics.Octal_literals_are_not_allowed_in_strict_mode))}(r);case 217:return function(e){A&&Ie(e,e.operand)}(r);case 216:return function(e){A&&(45!==e.operator&&46!==e.operator||Ie(e,e.operand))}(r);case 245:return function(t){A&&Re(t,e.Diagnostics.with_statements_are_not_allowed_in_strict_mode)}(r);case 247:return function(t){A&&n.target>=2&&(e.isDeclarationStatement(t.statement)||e.isVariableStatement(t.statement))&&Re(t.label,e.Diagnostics.A_label_is_not_allowed_here)}(r);case 188:return void(h=!0);case 173:break;case 160:return function(t){if(e.isJSDocTemplateTag(t.parent)){var r=e.find(t.parent.parent.tags,e.isJSDocTypeAlias)||e.getHostSignatureFromJSDoc(t.parent);r?(r.locals||(r.locals=e.createSymbolTable()),U(r.locals,void 0,t,262144,526824)):we(t,262144,526824)}else if(186===t.parent.kind){var n=function(t){var r=e.findAncestor(t,(function(t){return t.parent&&e.isConditionalTypeNode(t.parent)&&t.parent.extendsType===t}));return r&&r.parent}(t.parent);n?(n.locals||(n.locals=e.createSymbolTable()),U(n.locals,void 0,t,262144,526824)):Ae(t,262144,B(t))}else we(t,262144,526824)}(r);case 161:return nt(r);case 251:return rt(r);case 199:return r.flowNode=y,rt(r);case 164:case 163:return function(e){return it(e,4|(e.questionToken?16777216:0),0)}(r);case 291:case 292:return it(r,4,0);case 294:return it(r,8,900095);case 170:case 171:case 172:return we(r,131072,0);case 166:case 165:return it(r,8192|(r.questionToken?16777216:0),e.isObjectLiteralMethod(r)?0:103359);case 253:return function(r){t.isDeclarationFile||8388608&r.flags||e.isAsyncFunction(r)&&(C|=2048);Fe(r),A?(Oe(r),Ne(r,16,110991)):we(r,16,110991)}(r);case 167:return we(r,16384,0);case 168:return it(r,32768,46015);case 169:return it(r,65536,78783);case 175:case 311:case 316:case 176:return function(t){var r=L(131072,B(t));j(r,t,131072);var n=L(2048,"__type");j(n,t,2048),n.members=e.createSymbolTable(),n.members.set(r.escapedName,r)}(r);case 178:case 315:case 191:return function(e){return Ae(e,2048,"__type")}(r);case 322:return function(t){H(t);var r=e.getHostSignatureFromJSDoc(t);r&&166!==r.kind&&j(r.symbol,r,32)}(r);case 201:return function(r){var n;if(function(e){e[e.Property=1]="Property",e[e.Accessor=2]="Accessor"}(n||(n={})),A&&!e.isAssignmentTarget(r))for(var i=new e.Map,a=0,o=r.properties;a<o.length;a++){var s=o[a];if(293!==s.kind&&78===s.name.kind){var c=s.name,l=291===s.kind||292===s.kind||166===s.kind?1:2,u=i.get(c.escapedText);if(u){if(1===l&&1===u){var d=e.getErrorSpanForNode(t,c);t.bindDiagnostics.push(e.createFileDiagnostic(t,d.start,d.length,e.Diagnostics.An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode))}}else i.set(c.escapedText,l)}}return Ae(r,4096,"__object")}(r);case 209:case 210:return function(r){t.isDeclarationFile||8388608&r.flags||e.isAsyncFunction(r)&&(C|=2048);y&&(r.flowNode=y);Fe(r);var n=r.name?r.name.escapedText:"__function";return Ae(r,16,n)}(r);case 204:switch(e.getAssignmentDeclarationKind(r)){case 7:return function(e){var t=et(e.arguments[0]),r=300===e.parent.parent.kind;t=Ye(t,e.arguments[0],r,!1,!1),Xe(e,t,!1)}(r);case 8:return function(e){if(!qe(e))return;var t=tt(e.arguments[0],void 0,(function(e,t){return t&&j(t,e,67110400),t}));if(t){var r=1048580;U(t.exports,t,e,r,0)}}(r);case 9:return function(e){var t=et(e.arguments[0].expression);t&&t.valueDeclaration&&j(t,t.valueDeclaration,32);Xe(e,t,!0)}(r);case 0:break;default:return e.Debug.fail("Unknown call expression assignment declaration kind")}e.isInJSFile(r)&&function(r){!t.commonJsModuleIndicator&&e.isRequireCall(r,!1)&&qe(r)}(r);break;case 223:case 254:case 255:return A=!0,function(r){if(254===r.kind||255===r.kind)Ne(r,32,899503);else{Ae(r,32,r.name?r.name.escapedText:"__class"),r.name&&P.add(r.name.escapedText)}var n=r.symbol,i=L(4194308,"prototype"),a=n.exports.get(i.escapedName);a&&(r.name&&e.setParent(r.name,r),t.bindDiagnostics.push(M(a.declarations[0],e.Diagnostics.Duplicate_identifier_0,e.symbolName(i))));n.exports.set(i.escapedName,i),i.parent=n}(r);case 256:return Ne(r,64,788872);case 257:return Ne(r,524288,788968);case 258:return function(t){return e.isEnumConst(t)?Ne(t,128,899967):Ne(t,256,899327)}(r);case 259:return function(r){if(Te(r),e.isAmbientModule(r))if(e.hasSyntacticModifier(r,1)&&Re(r,e.Diagnostics.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),e.isModuleAugmentationExternal(r))Ce(r);else{var n=void 0;if(10===r.name.kind){var i=r.name.text;e.hasZeroOrOneAsteriskCharacter(i)?n=e.tryParsePattern(i):Re(r.name,e.Diagnostics.Pattern_0_can_have_at_most_one_Asterisk_character,i)}var a=we(r,512,110735);t.patternAmbientModules=e.append(t.patternAmbientModules,n&&{pattern:n,symbol:a})}else{var o=Ce(r);0!==o&&((a=r.symbol).constEnumOnlyModule=!(304&a.flags)&&2===o&&!1!==a.constEnumOnlyModule)}}(r);case 284:return function(e){return Ae(e,4096,"__jsxAttributes")}(r);case 283:return function(e,t,r){return we(e,t,r)}(r,4,0);case 263:case 266:case 268:case 273:return we(r,2097152,2097152);case 262:return function(r){r.modifiers&&r.modifiers.length&&t.bindDiagnostics.push(M(r,e.Diagnostics.Modifiers_cannot_appear_here));var n=e.isSourceFile(r.parent)?e.isExternalModule(r.parent)?r.parent.isDeclarationFile?void 0:e.Diagnostics.Global_module_exports_may_only_appear_in_declaration_files:e.Diagnostics.Global_module_exports_may_only_appear_in_module_files:e.Diagnostics.Global_module_exports_may_only_appear_at_top_level;n?t.bindDiagnostics.push(M(r,n)):(t.symbol.globalExports=t.symbol.globalExports||e.createSymbolTable(),U(t.symbol.globalExports,t.symbol,r,2097152,2097152))}(r);case 265:return function(e){e.name&&we(e,2097152,2097152)}(r);case 270:return function(t){p.symbol&&p.symbol.exports?t.exportClause?e.isNamespaceExport(t.exportClause)&&(e.setParent(t.exportClause,t),U(p.symbol.exports,p.symbol,t.exportClause,2097152,2097152)):U(p.symbol.exports,p.symbol,t,8388608,0):Ae(t,8388608,B(t))}(r);case 269:return function(t){if(p.symbol&&p.symbol.exports){var r=e.exportAssignmentIsAlias(t)?2097152:4,n=U(p.symbol.exports,p.symbol,t,r,67108863);t.isExportEquals&&e.setValueDeclaration(n,t)}else Ae(t,2097152,B(t))}(r);case 300:return Be(r.statements),function(){if(Te(t),e.isExternalModule(t))Ue();else if(e.isJsonSourceFile(t)){Ue();var r=t.symbol;U(t.symbol.exports,t.symbol,t,4,67108863),t.symbol=r}}();case 232:if(!e.isFunctionLike(r.parent))return;case 260:return Be(r.statements);case 329:if(316===r.parent.kind)return nt(r);if(315!==r.parent.kind)break;case 336:var l=r;return we(l,l.isBracketed||l.typeExpression&&310===l.typeExpression.type.kind?16777220:4,0);case 334:case 327:case 328:return(_||(_=[])).push(r)}}function Ue(){Ae(t,512,'"'+e.removeFileExtension(t.fileName)+'"')}function qe(e){return!t.externalModuleIndicator&&(t.commonJsModuleIndicator||(t.commonJsModuleIndicator=e,Ue()),!0)}function Je(t){if(qe(t)){var r=tt(t.left.expression,void 0,(function(e,t){return t&&j(t,e,67110400),t}));if(r){var n=e.isAliasableExpression(t.right)&&(e.isExportsIdentifier(t.left.expression)||e.isModuleExportsAccessExpression(t.left.expression))?2097152:1048580;e.setParent(t.left,t),U(r.exports,r,t.left,n,0)}}}function Ve(e){U(t.symbol.exports,t.symbol,e,69206016,0)}function He(t){if(e.Debug.assert(e.isInJSFile(t)),!(e.isBinaryExpression(t)&&e.isPropertyAccessExpression(t.left)&&e.isPrivateIdentifier(t.left.name)||e.isPropertyAccessExpression(t)&&e.isPrivateIdentifier(t.name))){var r=e.getThisContainer(t,!1);switch(r.kind){case 253:case 209:var n=r.symbol;if(e.isBinaryExpression(r.parent)&&62===r.parent.operatorToken.kind){var i=r.parent.left;e.isBindableStaticAccessExpression(i)&&e.isPrototypeAccess(i.expression)&&(n=et(i.expression.expression,f))}n&&n.valueDeclaration&&(n.members=n.members||e.createSymbolTable(),e.hasDynamicName(t)?Ke(t,n):U(n.members,n,t,67108868,0),j(n,n.valueDeclaration,32));break;case 167:case 164:case 166:case 168:case 169:var a=r.parent,o=e.hasSyntacticModifier(r,32)?a.symbol.exports:a.symbol.members;e.hasDynamicName(t)?Ke(t,a.symbol):U(o,a.symbol,t,67108868,0,!0);break;case 300:if(e.hasDynamicName(t))break;r.commonJsModuleIndicator?U(r.symbol.exports,r.symbol,t,1048580,0):we(t,1,111550);break;default:e.Debug.failBadSyntaxKind(r)}}}function Ke(e,t){Ae(e,4,"__computed"),We(e,t)}function We(t,r){r&&(r.assignmentDeclarationMembers||(r.assignmentDeclarationMembers=new e.Map)).set(e.getNodeId(t),t)}function Ge(t,r){var n=t.expression,i=n.expression;e.setParent(i,n),e.setParent(n,t),e.setParent(t,r),Ze(i,t,!0,!0)}function $e(t){e.Debug.assert(!e.isIdentifier(t)),e.setParent(t.expression,t),Ze(t.expression,t,!1,!1)}function Ye(r,n,i,a,o){if(2097152&(null==r?void 0:r.flags))return r;if(i&&!a){var s=67110400;r=tt(n,r,(function(r,n,i){return n?(j(n,r,s),n):U(i?i.exports:t.jsGlobalAugmentations||(t.jsGlobalAugmentations=e.createSymbolTable()),i,r,s,110735)}))}return o&&r&&r.valueDeclaration&&j(r,r.valueDeclaration,32),r}function Xe(t,r,n){if(r&&function(t){if(1072&t.flags)return!0;var r=t.valueDeclaration;if(r&&e.isCallExpression(r))return!!e.getAssignedExpandoInitializer(r);var n=r?e.isVariableDeclaration(r)?r.initializer:e.isBinaryExpression(r)?r.right:e.isPropertyAccessExpression(r)&&e.isBinaryExpression(r.parent)?r.parent.right:void 0:void 0;if(n=n&&e.getRightMostAssignedExpression(n)){var i=e.isPrototypeAccess(e.isVariableDeclaration(r)?r.name:e.isBinaryExpression(r)?r.left:r);return!!e.getExpandoInitializer(!e.isBinaryExpression(n)||56!==n.operatorToken.kind&&60!==n.operatorToken.kind?n:n.right,i)}return!1}(r)){var i=n?r.members||(r.members=e.createSymbolTable()):r.exports||(r.exports=e.createSymbolTable()),a=0,o=0;e.isFunctionLikeDeclaration(e.getAssignedExpandoInitializer(t))?(a=8192,o=103359):e.isCallExpression(t)&&e.isBindableObjectDefinePropertyCall(t)&&(e.some(t.arguments[2].properties,(function(t){var r=e.getNameOfDeclaration(t);return!!r&&e.isIdentifier(r)&&"set"===e.idText(r)}))&&(a|=65540,o|=78783),e.some(t.arguments[2].properties,(function(t){var r=e.getNameOfDeclaration(t);return!!r&&e.isIdentifier(r)&&"get"===e.idText(r)}))&&(a|=32772,o|=46015)),0===a&&(a=4,o=0),U(i,r,t,67108864|a,-67108865&o)}}function Qe(t){return e.isBinaryExpression(t.parent)?300===function(t){for(;e.isBinaryExpression(t.parent);)t=t.parent;return t.parent}(t.parent).parent.kind:300===t.parent.parent.kind}function Ze(e,t,r,n){var i=et(e,p)||et(e,m),a=Qe(t);Xe(t,i=Ye(i,t.expression,a,r,n),r)}function et(t,r){if(void 0===r&&(r=p),e.isIdentifier(t))return d(r,t.escapedText);var n=et(t.expression);return n&&n.exports&&n.exports.get(e.getElementOrPropertyAccessName(t))}function tt(r,n,i){if(u(t,r))return t.symbol;if(e.isIdentifier(r))return i(r,et(r),n);var a=tt(r.expression,n,i),o=e.getNameOrArgument(r);return e.isPrivateIdentifier(o)&&e.Debug.fail("unexpected PrivateIdentifier"),i(o,a&&a.exports&&a.exports.get(e.getElementOrPropertyAccessName(r)),a)}function rt(t){A&&Ie(t,t.name),e.isBindingPattern(t.name)||(e.isInJSFile(t)&&e.isRequireVariableDeclaration(t,!0)&&!e.getJSDocTypeTag(t)?we(t,2097152,2097152):e.isBlockOrCatchScoped(t)?Ne(t,2,111551):e.isParameterDeclaration(t)?we(t,1,111551):we(t,1,111550))}function nt(t){if((329!==t.kind||316===p.kind)&&(!A||8388608&t.flags||Ie(t,t.name),e.isBindingPattern(t.name)?Ae(t,1,"__"+t.parent.parameters.indexOf(t)):we(t,1,111551),e.isParameterPropertyDeclaration(t,t.parent))){var r=t.parent.parent;U(r.symbol.members,r.symbol,t,4|(t.questionToken?16777216:0),0)}}function it(r,n,i){return t.isDeclarationFile||8388608&r.flags||!e.isAsyncFunction(r)||(C|=2048),y&&e.isObjectLiteralOrClassExpressionMethod(r)&&(r.flowNode=y),e.hasDynamicName(r)?Ae(r,n,"__computed"):we(r,n,i)}}();function l(t){return!(e.isFunctionDeclaration(t)||function(t){switch(t.kind){case 256:case 257:return!0;case 259:return 1!==r(t);case 258:return e.hasSyntacticModifier(t,2048);default:return!1}}(t)||e.isEnumDeclaration(t)||e.isVariableStatement(t)&&!(3&e.getCombinedNodeFlags(t))&&t.declarationList.declarations.some((function(e){return!e.initializer})))}function u(t,r){for(var n=0,i=[r];i.length&&n<100;){if(n++,r=i.shift(),e.isExportsIdentifier(r)||e.isModuleExportsAccessExpression(r))return!0;if(e.isIdentifier(r)){var a=d(t,r.escapedText);if(a&&a.valueDeclaration&&e.isVariableDeclaration(a.valueDeclaration)&&a.valueDeclaration.initializer){var o=a.valueDeclaration.initializer;i.push(o),e.isAssignmentExpression(o,!0)&&(i.push(o.left),i.push(o.right))}}}return!1}function d(t,r){var n=t.locals&&t.locals.get(r);return n?n.exportSymbol||n:e.isSourceFile(t)&&t.jsGlobalAugmentations&&t.jsGlobalAugmentations.has(r)?t.jsGlobalAugmentations.get(r):t.symbol&&t.symbol.exports&&t.symbol.exports.get(r)}e.bindSourceFile=function(t,r){null===e.tracing||void 0===e.tracing||e.tracing.push("bind","bindSourceFile",{path:t.path},!0),e.performance.mark("beforeBind"),e.perfLogger.logStartBindFile(""+t.fileName),c(t,r),e.perfLogger.logStopBindFile(),e.performance.mark("afterBind"),e.performance.measure("Bind","beforeBind","afterBind"),null===e.tracing||void 0===e.tracing||e.tracing.pop()},e.isExportsOrModuleExportsOrAlias=u}(d||(d={})),function(e){e.createGetSymbolWalker=function(t,r,n,i,a,o,s,c,l,u,d){return function(p){void 0===p&&(p=function(){return!0});var f=[],m=[];return{walkType:function(t){try{return g(t),{visitedTypes:e.getOwnValues(f),visitedSymbols:e.getOwnValues(m)}}finally{e.clear(f),e.clear(m)}},walkSymbol:function(t){try{return y(t),{visitedTypes:e.getOwnValues(f),visitedSymbols:e.getOwnValues(m)}}finally{e.clear(f),e.clear(m)}}};function g(t){if(t&&(!f[t.id]&&(f[t.id]=t,!y(t.symbol)))){if(524288&t.flags){var r=t,n=r.objectFlags;4&n&&function(t){g(t.target),e.forEach(d(t),g)}(t),32&n&&function(e){g(e.typeParameter),g(e.constraintType),g(e.templateType),g(e.modifiersType)}(t),3&n&&(h(a=t),e.forEach(a.typeParameters,g),e.forEach(i(a),g),g(a.thisType)),24&n&&h(r)}var a;262144&t.flags&&function(e){g(l(e))}(t),3145728&t.flags&&function(t){e.forEach(t.types,g)}(t),4194304&t.flags&&function(e){g(e.type)}(t),8388608&t.flags&&function(e){g(e.objectType),g(e.indexType),g(e.constraint)}(t)}}function _(i){var a=r(i);a&&g(a.type),e.forEach(i.typeParameters,g);for(var o=0,s=i.parameters;o<s.length;o++){y(s[o])}g(t(i)),g(n(i))}function h(e){g(c(e,0)),g(c(e,1));for(var t=a(e),r=0,n=t.callSignatures;r<n.length;r++){_(n[r])}for(var i=0,o=t.constructSignatures;i<o.length;i++){_(o[i])}for(var s=0,l=t.properties;s<l.length;s++){y(l[s])}}function y(t){if(!t)return!1;var r=e.getSymbolId(t);return!m[r]&&(m[r]=t,!p(t)||(g(o(t)),t.exports&&t.exports.forEach(y),e.forEach(t.declarations,(function(e){if(e.type&&177===e.type.kind){var t=e.type;y(s(u(t.exprName)))}})),!1))}}}}(d||(d={})),function(e){var t,r,n,o,c=/^".+"$/,l="(anonymous)",u=1,d=1,p=1,f=1;!function(e){e[e.AllowsSyncIterablesFlag=1]="AllowsSyncIterablesFlag",e[e.AllowsAsyncIterablesFlag=2]="AllowsAsyncIterablesFlag",e[e.AllowsStringInputFlag=4]="AllowsStringInputFlag",e[e.ForOfFlag=8]="ForOfFlag",e[e.YieldStarFlag=16]="YieldStarFlag",e[e.SpreadFlag=32]="SpreadFlag",e[e.DestructuringFlag=64]="DestructuringFlag",e[e.PossiblyOutOfBounds=128]="PossiblyOutOfBounds",e[e.Element=1]="Element",e[e.Spread=33]="Spread",e[e.Destructuring=65]="Destructuring",e[e.ForOf=13]="ForOf",e[e.ForAwaitOf=15]="ForAwaitOf",e[e.YieldStar=17]="YieldStar",e[e.AsyncYieldStar=19]="AsyncYieldStar",e[e.GeneratorReturnType=1]="GeneratorReturnType",e[e.AsyncGeneratorReturnType=2]="AsyncGeneratorReturnType"}(t||(t={})),function(e){e[e.Yield=0]="Yield",e[e.Return=1]="Return",e[e.Next=2]="Next"}(r||(r={})),function(e){e[e.Normal=0]="Normal",e[e.FunctionReturn=1]="FunctionReturn",e[e.GeneratorNext=2]="GeneratorNext",e[e.GeneratorYield=3]="GeneratorYield"}(n||(n={})),function(e){e[e.None=0]="None",e[e.TypeofEQString=1]="TypeofEQString",e[e.TypeofEQNumber=2]="TypeofEQNumber",e[e.TypeofEQBigInt=4]="TypeofEQBigInt",e[e.TypeofEQBoolean=8]="TypeofEQBoolean",e[e.TypeofEQSymbol=16]="TypeofEQSymbol",e[e.TypeofEQObject=32]="TypeofEQObject",e[e.TypeofEQFunction=64]="TypeofEQFunction",e[e.TypeofEQHostObject=128]="TypeofEQHostObject",e[e.TypeofNEString=256]="TypeofNEString",e[e.TypeofNENumber=512]="TypeofNENumber",e[e.TypeofNEBigInt=1024]="TypeofNEBigInt",e[e.TypeofNEBoolean=2048]="TypeofNEBoolean",e[e.TypeofNESymbol=4096]="TypeofNESymbol",e[e.TypeofNEObject=8192]="TypeofNEObject",e[e.TypeofNEFunction=16384]="TypeofNEFunction",e[e.TypeofNEHostObject=32768]="TypeofNEHostObject",e[e.EQUndefined=65536]="EQUndefined",e[e.EQNull=131072]="EQNull",e[e.EQUndefinedOrNull=262144]="EQUndefinedOrNull",e[e.NEUndefined=524288]="NEUndefined",e[e.NENull=1048576]="NENull",e[e.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",e[e.Truthy=4194304]="Truthy",e[e.Falsy=8388608]="Falsy",e[e.All=16777215]="All",e[e.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",e[e.BaseStringFacts=12582401]="BaseStringFacts",e[e.StringStrictFacts=16317953]="StringStrictFacts",e[e.StringFacts=16776705]="StringFacts",e[e.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",e[e.EmptyStringFacts=12582401]="EmptyStringFacts",e[e.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",e[e.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",e[e.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",e[e.BaseNumberFacts=12582146]="BaseNumberFacts",e[e.NumberStrictFacts=16317698]="NumberStrictFacts",e[e.NumberFacts=16776450]="NumberFacts",e[e.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",e[e.ZeroNumberFacts=12582146]="ZeroNumberFacts",e[e.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",e[e.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",e[e.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",e[e.BaseBigIntFacts=12581636]="BaseBigIntFacts",e[e.BigIntStrictFacts=16317188]="BigIntStrictFacts",e[e.BigIntFacts=16775940]="BigIntFacts",e[e.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",e[e.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",e[e.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",e[e.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",e[e.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",e[e.BaseBooleanFacts=12580616]="BaseBooleanFacts",e[e.BooleanStrictFacts=16316168]="BooleanStrictFacts",e[e.BooleanFacts=16774920]="BooleanFacts",e[e.FalseStrictFacts=12121864]="FalseStrictFacts",e[e.FalseFacts=12580616]="FalseFacts",e[e.TrueStrictFacts=7927560]="TrueStrictFacts",e[e.TrueFacts=16774920]="TrueFacts",e[e.SymbolStrictFacts=7925520]="SymbolStrictFacts",e[e.SymbolFacts=16772880]="SymbolFacts",e[e.ObjectStrictFacts=7888800]="ObjectStrictFacts",e[e.ObjectFacts=16736160]="ObjectFacts",e[e.FunctionStrictFacts=7880640]="FunctionStrictFacts",e[e.FunctionFacts=16728e3]="FunctionFacts",e[e.UndefinedFacts=9830144]="UndefinedFacts",e[e.NullFacts=9363232]="NullFacts",e[e.EmptyObjectStrictFacts=16318463]="EmptyObjectStrictFacts",e[e.AllTypeofNE=556800]="AllTypeofNE",e[e.EmptyObjectFacts=16777215]="EmptyObjectFacts"}(o||(o={}));var m,g,_,h,y,v,b,k,x,E=new e.Map(e.getEntries({string:1,number:2,bigint:4,boolean:8,symbol:16,undefined:65536,object:32,function:64})),S=new e.Map(e.getEntries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384}));!function(e){e[e.Type=0]="Type",e[e.ResolvedBaseConstructorType=1]="ResolvedBaseConstructorType",e[e.DeclaredType=2]="DeclaredType",e[e.ResolvedReturnType=3]="ResolvedReturnType",e[e.ImmediateBaseConstraint=4]="ImmediateBaseConstraint",e[e.EnumTagType=5]="EnumTagType",e[e.ResolvedTypeArguments=6]="ResolvedTypeArguments",e[e.ResolvedBaseTypes=7]="ResolvedBaseTypes"}(m||(m={})),function(e){e[e.Normal=0]="Normal",e[e.Contextual=1]="Contextual",e[e.Inferential=2]="Inferential",e[e.SkipContextSensitive=4]="SkipContextSensitive",e[e.SkipGenericFunctions=8]="SkipGenericFunctions",e[e.IsForSignatureHelp=16]="IsForSignatureHelp",e[e.SkipEtsComponentBody=32]="SkipEtsComponentBody"}(g||(g={})),function(e){e[e.None=0]="None",e[e.NoIndexSignatures=1]="NoIndexSignatures",e[e.Writing=2]="Writing",e[e.CacheSymbol=4]="CacheSymbol",e[e.NoTupleBoundsCheck=8]="NoTupleBoundsCheck",e[e.ExpressionPosition=16]="ExpressionPosition"}(_||(_={})),function(e){e[e.BivariantCallback=1]="BivariantCallback",e[e.StrictCallback=2]="StrictCallback",e[e.IgnoreReturnTypes=4]="IgnoreReturnTypes",e[e.StrictArity=8]="StrictArity",e[e.Callback=3]="Callback"}(h||(h={})),function(e){e[e.None=0]="None",e[e.Source=1]="Source",e[e.Target=2]="Target",e[e.PropertyCheck=4]="PropertyCheck",e[e.UnionIntersectionCheck=8]="UnionIntersectionCheck",e[e.InPropertyCheck=16]="InPropertyCheck"}(y||(y={})),function(e){e[e.IncludeReadonly=1]="IncludeReadonly",e[e.ExcludeReadonly=2]="ExcludeReadonly",e[e.IncludeOptional=4]="IncludeOptional",e[e.ExcludeOptional=8]="ExcludeOptional"}(v||(v={})),function(e){e[e.None=0]="None",e[e.Source=1]="Source",e[e.Target=2]="Target",e[e.Both=3]="Both"}(b||(b={})),function(e){e.resolvedExports="resolvedExports",e.resolvedMembers="resolvedMembers"}(k||(k={})),function(e){e[e.Local=0]="Local",e[e.Parameter=1]="Parameter"}(x||(x={}));var D,w,T,C,A=e.and(L,(function(t){return!e.isAccessor(t)}));!function(e){e[e.GetAccessor=1]="GetAccessor",e[e.SetAccessor=2]="SetAccessor",e[e.PropertyAssignment=4]="PropertyAssignment",e[e.Method=8]="Method",e[e.GetOrSetAccessor=3]="GetOrSetAccessor",e[e.PropertyAssignmentOrMethod=12]="PropertyAssignmentOrMethod"}(D||(D={})),function(e){e[e.None=0]="None",e[e.ExportValue=1]="ExportValue",e[e.ExportType=2]="ExportType",e[e.ExportNamespace=4]="ExportNamespace"}(w||(w={})),function(e){e[e.None=0]="None",e[e.StrongArityForUntypedJS=1]="StrongArityForUntypedJS",e[e.VoidIsNonOptional=2]="VoidIsNonOptional"}(T||(T={})),function(e){e[e.Uppercase=0]="Uppercase",e[e.Lowercase=1]="Lowercase",e[e.Capitalize=2]="Capitalize",e[e.Uncapitalize=3]="Uncapitalize"}(C||(C={}));var N,P=new e.Map(e.getEntries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3}));function I(){}function F(){this.flags=0}function O(e){return e.id||(e.id=d,d++),e.id}function R(e){return e.id||(e.id=u,u++),e.id}function M(t,r){var n=e.getModuleInstanceState(t);return 1===n||r&&2===n}function L(e){return 253!==e.kind&&166!==e.kind||!!e.body}function j(t){switch(t.parent.kind){case 268:case 273:return e.isIdentifier(t);default:return e.isDeclarationName(t)}}function B(e){switch(e.kind){case 265:case 263:case 266:case 268:return!0;case 78:return 268===e.parent.kind;default:return!1}}function z(e){switch(e){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function U(e){return!!(1&e.flags)}function q(e){return!!(2&e.flags)}e.getNodeId=O,e.getSymbolId=R,e.isInstantiatedModule=M,e.createTypeChecker=function(t,r){var n,o,u,d,m=e.memoize((function(){var r=new e.Set;return t.getSourceFiles().forEach((function(t){t.resolvedModules&&e.forEachEntry(t.resolvedModules,(function(e){e&&e.packageId&&r.add(e.packageId.name)}))})),r})),g=e.objectAllocator.getSymbolConstructor(),_=e.objectAllocator.getTypeConstructor(),h=e.objectAllocator.getSignatureConstructor(),y=0,v=0,b=0,k=0,x=0,D=0,w=[],T=e.createSymbolTable(),C=[1],J=t.getCompilerOptions(),V=e.getEmitScriptTarget(J),H=e.getEmitModuleKind(J),K=e.getAllowSyntheticDefaultImports(J),W=e.getStrictOptionValue(J,"strictNullChecks"),G=e.getStrictOptionValue(J,"strictFunctionTypes"),$=e.getStrictOptionValue(J,"strictBindCallApply"),Y=e.getStrictOptionValue(J,"strictPropertyInitialization"),X=e.getStrictOptionValue(J,"noImplicitAny"),Q=e.getStrictOptionValue(J,"noImplicitThis"),Z=!!J.keyofStringsOnly,ee=J.suppressExcessPropertyErrors?0:32768,te=function(){var r,n=t.getResolvedTypeReferenceDirectives();n&&(r=new e.Map,n.forEach((function(e,r){if(e&&e.resolvedFileName){var n=t.getSourceFile(e.resolvedFileName);n&&a(n,r)}})));return{getReferencedExportContainer:sE,getReferencedImportDeclaration:cE,getReferencedDeclarationWithCollidingName:uE,isDeclarationWithCollidingName:dE,isValueAliasDeclaration:function(t){var r=e.getParseTreeNode(t);return!r||pE(r)},hasGlobalName:PE,isReferencedAliasDeclaration:function(t,r){var n=e.getParseTreeNode(t);return!n||_E(n,r)},isReferenced:function(t){var r=e.getParseTreeNode(t);return!!r&&function(e){var t=Ai(e);return!!(null==t?void 0:t.isReferenced)}(r)},getNodeCheckFlags:function(t){var r=e.getParseTreeNode(t);return r?xE(r):0},isTopLevelValueImportEqualsWithEntityName:fE,isDeclarationVisible:Ea,isImplementationOfOverload:hE,isRequiredInitializedParameter:yE,isOptionalUninitializedParameterProperty:vE,isExpandoFunctionDeclaration:bE,getPropertiesOfContainerFunction:kE,createTypeOfDeclaration:CE,createReturnTypeOfSignatureDeclaration:AE,createTypeOfExpression:NE,createLiteralConstValue:RE,isSymbolAccessible:ra,isEntityNameVisible:ca,getConstantValue:function(t){var r=e.getParseTreeNode(t,SE);return r?DE(r):void 0},collectLinkedAliases:Sa,getReferencedValueDeclaration:FE,getTypeReferenceSerializationKind:TE,isOptionalParameter:Tc,moduleExportsSomeValue:oE,isArgumentsLocalBinding:aE,getExternalModuleFileFromDeclaration:function(t){var r=e.getParseTreeNode(t,e.hasPossibleExternalModuleReference);return r&&jE(r)},getTypeReferenceDirectivesForEntityName:function(e){if(!r)return;var t=790504;(78===e.kind&&Nm(e)||202===e.kind&&!function(e){return e.parent&&225===e.parent.kind&&e.parent.parent&&289===e.parent.parent.kind}(e))&&(t=1160127);var n=fi(e,t,!0);return n&&n!==ke?i(n,t):void 0},getTypeReferenceDirectivesForSymbol:i,isLiteralConstDeclaration:OE,isLateBound:function(t){var r=e.getParseTreeNode(t,e.isDeclaration),n=r&&Ai(r);return!!(n&&4096&e.getCheckFlags(n))},getJsxFactoryEntity:ME,getJsxFragmentFactoryEntity:LE,getAllAccessorDeclarations:function(t){var r=169===(t=e.getParseTreeNode(t,e.isGetOrSetAccessorDeclaration)).kind?168:169,n=e.getDeclarationOfKind(Ai(t),r);return{firstAccessor:n&&n.pos<t.pos?n:t,secondAccessor:n&&n.pos<t.pos?t:n,setAccessor:169===t.kind?t:n,getAccessor:168===t.kind?t:n}},getSymbolOfExternalModuleSpecifier:function(e){return _i(e,e,void 0)},isBindingCapturedByNode:function(t,r){var n=e.getParseTreeNode(t),i=e.getParseTreeNode(r);return!!n&&!!i&&(e.isVariableDeclaration(i)||e.isBindingElement(i))&&function(t,r){var n=Cn(t);return!!n&&e.contains(n.capturedBlockScopeBindings,Ai(r))}(n,i)},getDeclarationStatementsForSourceFile:function(t,r,n,i){var a=e.getParseTreeNode(t);e.Debug.assert(a&&300===a.kind,"Non-sourcefile node passed into getDeclarationsForSourceFile");var o=Ai(t);return o?o.exports?re.symbolTableToDeclarationStatements(o.exports,t,r,n,i):[]:t.locals?re.symbolTableToDeclarationStatements(t.locals,t,r,n,i):[]},isImportRequiredByAugmentation:function(t){var r=e.getSourceFileOfNode(t);if(!r.symbol)return!1;var n=jE(t);if(!n)return!1;if(n===r)return!1;for(var i=Di(r.symbol),a=0,o=e.arrayFrom(i.values());a<o.length;a++){var s=o[a];if(s.mergeId)for(var c=0,l=Ci(s).declarations;c<l.length;c++){var u=l[c];if(e.getSourceFileOfNode(u)===n)return!0}}return!1}};function i(t,n){if(r&&function(t){if(!t.declarations)return!1;var n=t;for(;;){var i=Ni(n);if(!i)break;n=i}if(n.valueDeclaration&&300===n.valueDeclaration.kind&&512&n.flags)return!1;for(var a=0,o=t.declarations;a<o.length;a++){var s=o[a],c=e.getSourceFileOfNode(s);if(r.has(c.path))return!0}return!1}(t)){for(var i,a=0,o=t.declarations;a<o.length;a++){var s=o[a];if(s.symbol&&s.symbol.flags&n){var c=e.getSourceFileOfNode(s),l=r.get(c.path);if(!l)return;(i||(i=[])).push(l)}}return i}}function a(n,i){if(!r.has(n.path)){r.set(n.path,i);for(var o=0,s=n.referencedFiles;o<s.length;o++){var c=s[o].fileName,l=e.resolveTripleslashReference(c,n.fileName),u=t.getSourceFile(l);u&&a(u,i)}}}}(),re=function(){return{typeToTypeNode:function(e,t,n,i){return r(t,n,i,(function(t){return s(e,t)}))},indexInfoToIndexSignatureDeclaration:function(e,t,n,i,a){return r(n,i,a,(function(r){return p(e,t,r,void 0)}))},signatureToSignatureDeclaration:function(e,t,n,i,a){return r(n,i,a,(function(r){return f(e,t,r)}))},symbolToEntityName:function(e,t,n,i,a){return r(n,i,a,(function(r){return T(e,r,t,!1)}))},symbolToExpression:function(e,t,n,i,a){return r(n,i,a,(function(r){return C(e,r,t)}))},symbolToTypeParameterDeclarations:function(e,t,n,i){return r(t,n,i,(function(t){return b(e,t)}))},symbolToParameterDeclaration:function(e,t,n,i){return r(t,n,i,(function(t){return _(e,t)}))},typeParameterToDeclaration:function(e,t,n,i){return r(t,n,i,(function(t){return g(e,t)}))},symbolTableToDeclarationStatements:function(t,n,o,c,l){return r(n,o,c,(function(r){return function(t,r,n){var o=se(e.factory.createPropertyDeclaration,166,!0),c=se((function(t,r,n,i,a){return e.factory.createPropertySignature(r,n,i,a)}),165,!1),l=r.enclosingDeclaration,u=[],d=new e.Set,m=[],_=r;r=a(a({},_),{usedSymbolNames:new e.Set(_.usedSymbolNames),remappedSymbolNames:new e.Map,tracker:a(a({},_.tracker),{trackSymbol:function(e,t,n){if(0===ra(e,t,n,!1).accessibility){var i=v(e,r,n);4&e.flags||U(i[0])}else _.tracker&&_.tracker.trackSymbol&&_.tracker.trackSymbol(e,t,n)}})}),e.forEachEntry(t,(function(t,r){_e(t,e.unescapeLeadingUnderscores(r))}));var h=!n,y=t.get("export=");y&&t.size>1&&2097152&y.flags&&(t=e.createSymbolTable()).set("export=",y);return O(t),w(u);function b(e){return!!e&&78===e.kind}function k(t){return e.isVariableStatement(t)?e.filter(e.map(t.declarationList.declarations,e.getNameOfDeclaration),b):e.filter([e.getNameOfDeclaration(t)],b)}function x(t){var r=e.find(t,e.isExportAssignment),n=e.findIndex(t,e.isModuleDeclaration),a=-1!==n?t[n]:void 0;if(a&&r&&r.isExportEquals&&e.isIdentifier(r.expression)&&e.isIdentifier(a.name)&&e.idText(a.name)===e.idText(r.expression)&&a.body&&e.isModuleBlock(a.body)){var o=e.filter(t,(function(t){return!!(1&e.getEffectiveModifierFlags(t))})),s=a.name,c=a.body;if(e.length(o)&&(a=e.factory.updateModuleDeclaration(a,a.decorators,a.modifiers,a.name,c=e.factory.updateModuleBlock(c,e.factory.createNodeArray(i(i([],a.body.statements),[e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.map(e.flatMap(o,(function(e){return k(e)})),(function(t){return e.factory.createExportSpecifier(void 0,t)}))),void 0)])))),t=i(i(i([],t.slice(0,n)),[a]),t.slice(n+1))),!e.find(t,(function(t){return t!==a&&e.nodeHasName(t,s)}))){u=[];var l=!e.some(c.statements,(function(t){return e.hasSyntacticModifier(t,1)||e.isExportAssignment(t)||e.isExportDeclaration(t)}));e.forEach(c.statements,(function(e){H(e,l?1:0)})),t=i(i([],e.filter(t,(function(e){return e!==a&&e!==r}))),u)}}return t}function S(t){var r=e.filter(t,(function(t){return e.isExportDeclaration(t)&&!t.moduleSpecifier&&!!t.exportClause&&e.isNamedExports(t.exportClause)}));if(e.length(r)>1){var n=e.filter(t,(function(t){return!e.isExportDeclaration(t)||!!t.moduleSpecifier||!t.exportClause}));t=i(i([],n),[e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.flatMap(r,(function(t){return e.cast(t.exportClause,e.isNamedExports).elements}))),void 0)])}var a=e.filter(t,(function(t){return e.isExportDeclaration(t)&&!!t.moduleSpecifier&&!!t.exportClause&&e.isNamedExports(t.exportClause)}));if(e.length(a)>1){var o=e.group(a,(function(t){return e.isStringLiteral(t.moduleSpecifier)?">"+t.moduleSpecifier.text:">"}));if(o.length!==a.length)for(var s=function(r){r.length>1&&(t=i(i([],e.filter(t,(function(e){return-1===r.indexOf(e)}))),[e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.flatMap(r,(function(t){return e.cast(t.exportClause,e.isNamedExports).elements}))),r[0].moduleSpecifier)]))},c=0,l=o;c<l.length;c++){s(l[c])}}return t}function D(t){var r=e.findIndex(t,(function(t){return e.isExportDeclaration(t)&&!t.moduleSpecifier&&!!t.exportClause&&e.isNamedExports(t.exportClause)}));if(r>=0){var n=t[r],i=e.mapDefined(n.exportClause.elements,(function(r){if(!r.propertyName){var n=e.indicesOf(t),i=e.filter(n,(function(n){return e.nodeHasName(t[n],r.name)}));if(e.length(i)&&e.every(i,(function(e){return A(t[e])}))){for(var a=0,o=i;a<o.length;a++){var s=o[a];t[s]=N(t[s])}return}}return r}));e.length(i)?t[r]=e.factory.updateExportDeclaration(n,n.decorators,n.modifiers,n.isTypeOnly,e.factory.updateNamedExports(n.exportClause,i),n.moduleSpecifier):e.orderedRemoveItemAt(t,r)}return t}function w(t){return t=D(t=S(t=x(t))),l&&(e.isSourceFile(l)&&e.isExternalOrCommonJsModule(l)||e.isModuleDeclaration(l))&&(!e.some(t,e.isExternalModuleIndicator)||!e.hasScopeMarker(t)&&e.some(t,e.needsScopeMarker))&&t.push(e.createEmptyExports(e.factory)),t}function A(t){return e.isEnumDeclaration(t)||e.isVariableStatement(t)||e.isFunctionDeclaration(t)||e.isClassDeclaration(t)||e.isModuleDeclaration(t)&&!e.isExternalModuleAugmentation(t)&&!e.isGlobalScopeAugmentation(t)||e.isInterfaceDeclaration(t)||Hx(t)}function N(t){var r=-3&(1|e.getEffectiveModifierFlags(t));return e.factory.updateModifiers(t,r)}function I(t){var r=-2&e.getEffectiveModifierFlags(t);return e.factory.updateModifiers(t,r)}function O(t,r,n){r||m.push(new e.Map),t.forEach((function(e){M(e,!1,!!n)})),r||(m[m.length-1].forEach((function(e){M(e,!0,!!n)})),m.pop())}function M(t,n,i){var o=Ci(t);if(!d.has(R(o))&&(d.add(R(o)),!n||e.length(t.declarations)&&e.some(t.declarations,(function(t){return!!e.findAncestor(t,(function(e){return e===l}))})))){var s=r;r=function(t){var r=a({},t);r.typeParameterNames&&(r.typeParameterNames=new e.Map(r.typeParameterNames));r.typeParameterNamesByText&&(r.typeParameterNamesByText=new e.Set(r.typeParameterNamesByText));r.typeParameterSymbolList&&(r.typeParameterSymbolList=new e.Set(r.typeParameterSymbolList));return r}(r);var c=z(t,n,i);return r=s,c}}function z(t,i,a){var o=e.unescapeLeadingUnderscores(t.escapedName),s="default"===t.escapedName;if(!i||131072&r.flags||!e.isStringANonContextualKeyword(o)||s){var c=s&&!!(-113&t.flags||16&t.flags&&e.length(Hs(_o(t))))&&!(2097152&t.flags),u=!c&&!i&&e.isStringANonContextualKeyword(o)&&!s;(c||u)&&(i=!0);var d=(i?0:1)|(s&&!c?512:0),p=1536&t.flags&&7&t.flags&&"export="!==t.escapedName,f=p&&oe(_o(t),t);if((8208&t.flags||f)&&Q(_o(t),t,_e(t,o),d),524288&t.flags&&K(t,o,d),7&t.flags&&"export="!==t.escapedName&&!(4194304&t.flags)&&!(32&t.flags)&&!f)if(a){ae(t)&&(u=!1,c=!1)}else{var m=_o(t),g=_e(t,o);if(16&t.flags||!oe(m,t)){var _=2&t.flags?jg(t)?2:1:void 0,h=!c&&4&t.flags?me(g,t):g,y=t.declarations&&e.find(t.declarations,(function(t){return e.isVariableDeclaration(t)}));y&&e.isVariableDeclarationList(y.parent)&&1===y.parent.declarations.length&&(y=y.parent.parent);var v=e.find(t.declarations,e.isPropertyAccessExpression);if(v&&e.isBinaryExpression(v.parent)&&e.isIdentifier(v.parent.right)&&m.symbol&&e.isSourceFile(m.symbol.valueDeclaration)){var b=g===v.parent.right.escapedText?void 0:v.parent.right;H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(b,g)])),0),r.tracker.trackSymbol(m.symbol,r.enclosingDeclaration,111551)}else{H(e.setTextRange(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(h,void 0,L(r,m,t,l,U,n))],_)),y),h!==g?-2&d:d),h===g||i||(H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(h,g)])),0),u=!1,c=!1)}}else Q(m,t,g,d)}if(384&t.flags&&X(t,o,d),32&t.flags&&(4&t.flags&&e.isBinaryExpression(t.valueDeclaration.parent)&&e.isClassExpression(t.valueDeclaration.parent.right)?ne(t,_e(t,o),d):re(t,_e(t,o),d)),(1536&t.flags&&(!p||$(t))||f)&&Y(t,o,d),64&t.flags&&!(32&t.flags)&&W(t,o,d),2097152&t.flags&&ne(t,_e(t,o),d),4&t.flags&&"export="===t.escapedName&&ae(t),8388608&t.flags)for(var k=0,x=t.declarations;k<x.length;k++){var S=x[k],D=gi(S,S.moduleSpecifier);D&&H(e.factory.createExportDeclaration(void 0,void 0,!1,void 0,e.factory.createStringLiteral(E(D,r))),0)}c?H(e.factory.createExportAssignment(void 0,void 0,!1,e.factory.createIdentifier(_e(t,o))),0):u&&H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(_e(t,o),o)])),0)}else r.encounteredError=!0}function U(t){if(!e.some(t.declarations,e.isParameterDeclaration)){e.Debug.assertIsDefined(m[m.length-1]),me(e.unescapeLeadingUnderscores(t.escapedName),t);var r=!!(2097152&t.flags)&&!e.some(t.declarations,(function(t){return!!e.findAncestor(t,e.isExportDeclaration)||e.isNamespaceExport(t)||e.isImportEqualsDeclaration(t)&&!e.isExternalModuleReference(t.moduleReference)}));m[r?0:m.length-1].set(R(t),t)}}function q(t){return e.isSourceFile(t)&&(e.isExternalOrCommonJsModule(t)||e.isJsonSourceFile(t))||e.isAmbientModule(t)&&!e.isGlobalScopeAugmentation(t)}function H(t,n){if(e.canHaveModifiers(t)){var i=0,a=r.enclosingDeclaration&&(e.isJSDocTypeAlias(r.enclosingDeclaration)?e.getSourceFileOfNode(r.enclosingDeclaration):r.enclosingDeclaration);1&n&&a&&(q(a)||e.isModuleDeclaration(a))&&A(t)&&(i|=1),!h||1&i||a&&8388608&a.flags||!(e.isEnumDeclaration(t)||e.isVariableStatement(t)||e.isFunctionDeclaration(t)||e.isClassDeclaration(t)||e.isModuleDeclaration(t))||(i|=2),512&n&&(e.isClassDeclaration(t)||e.isInterfaceDeclaration(t)||e.isFunctionDeclaration(t))&&(i|=512),i&&(t=e.factory.updateModifiers(t,i|e.getEffectiveModifierFlags(t)))}u.push(t)}function K(t,i,a){var o=Ro(t),c=Tn(t).typeParameters,l=e.map(c,(function(e){return g(e,r)})),u=e.find(t.declarations,e.isJSDocTypeAlias),d=u?u.comment||u.parent.comment:void 0,p=r.flags;r.flags|=8388608;var f=r.enclosingDeclaration;r.enclosingDeclaration=u;var m=u&&u.typeExpression&&e.isJSDocTypeExpression(u.typeExpression)&&B(r,u.typeExpression.type,U,n)||s(o,r);H(e.setSyntheticLeadingComments(e.factory.createTypeAliasDeclaration(void 0,void 0,_e(t,i),l,m),d?[{kind:3,text:"*\n * "+d.replace(/\n/g,"\n * ")+"\n ",pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),a),r.flags=p,r.enclosingDeclaration=f}function W(t,n,a){var o=Oo(t),s=Eo(t),c=e.map(s,(function(e){return g(e,r)})),l=Po(o),u=e.length(l)?fu(l):void 0,d=e.flatMap(Hs(o),(function(e){return ce(e,u)})),p=le(0,o,u,170),f=le(1,o,u,171),m=ue(o,u),_=e.length(l)?[e.factory.createHeritageClause(94,e.mapDefined(l,(function(e){return pe(e,111551)})))]:void 0;H(e.factory.createInterfaceDeclaration(void 0,void 0,_e(t,n),c,_,i(i(i(i([],m),f),p),d)),a)}function G(t){return t.exports?e.filter(e.arrayFrom(t.exports.values()),ee):[]}function $(t){return e.every(G(t),(function(e){return!(111551&ii(e).flags)}))}function Y(t,n,i){var a=G(t),o=e.arrayToMultiMap(a,(function(e){return e.parent&&e.parent===t?"real":"merged"})),s=o.get("real")||e.emptyArray,c=o.get("merged")||e.emptyArray;e.length(s)&&Z(s,u=_e(t,n),i,!!(67108880&t.flags));if(e.length(c)){var l=e.getSourceFileOfNode(r.enclosingDeclaration),u=_e(t,n),d=e.factory.createModuleBlock([e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports(e.mapDefined(e.filter(c,(function(e){return"export="!==e.escapedName})),(function(n){var i,a,o=e.unescapeLeadingUnderscores(n.escapedName),s=_e(n,o),c=n.declarations&&Vn(n);if(!l||(c?l===e.getSourceFileOfNode(c):e.some(n.declarations,(function(t){return e.getSourceFileOfNode(t)===l})))){var u=c&&ri(c,!0);U(u||n);var d=u?_e(u,e.unescapeLeadingUnderscores(u.escapedName)):s;return e.factory.createExportSpecifier(o===d?void 0:d,o)}null===(a=null===(i=r.tracker)||void 0===i?void 0:i.reportNonlocalAugmentation)||void 0===a||a.call(i,l,t,n)}))))]);H(e.factory.createModuleDeclaration(void 0,void 0,e.factory.createIdentifier(u),d,16),0)}}function X(t,r,n){H(e.factory.createEnumDeclaration(void 0,e.factory.createModifiersFromModifierFlags(Bv(t)?2048:0),_e(t,r),e.map(e.filter(Hs(_o(t)),(function(e){return!!(8&e.flags)})),(function(t){var r=t.declarations&&t.declarations[0]&&e.isEnumMember(t.declarations[0])?DE(t.declarations[0]):void 0;return e.factory.createEnumMember(e.unescapeLeadingUnderscores(t.escapedName),void 0===r?void 0:"string"==typeof r?e.factory.createStringLiteral(r):e.factory.createNumericLiteral(r))}))),n)}function Q(t,i,a,o){for(var s=0,c=hc(t,0);s<c.length;s++){var l=c[s],u=f(l,253,r,{name:e.factory.createIdentifier(a),privateSymbolVisitor:U,bundledImports:n});H(e.setTextRange(u,l.declaration&&e.isVariableDeclaration(l.declaration.parent)&&l.declaration.parent.parent||l.declaration),o)}1536&i.flags&&i.exports&&i.exports.size||Z(e.filter(Hs(t),ee),a,o,!0)}function Z(t,n,i,o){if(e.length(t)){var s=e.arrayToMultiMap(t,(function(t){return!e.length(t.declarations)||e.some(t.declarations,(function(t){return e.getSourceFileOfNode(t)===e.getSourceFileOfNode(r.enclosingDeclaration)}))?"local":"remote"})).get("local")||e.emptyArray,c=e.parseNodeFactory.createModuleDeclaration(void 0,void 0,e.factory.createIdentifier(n),e.factory.createModuleBlock([]),16);e.setParent(c,l),c.locals=e.createSymbolTable(t),c.symbol=t[0].parent;var d=u;u=[];var p=h;h=!1;var f=a(a({},r),{enclosingDeclaration:c}),m=r;r=f,O(e.createSymbolTable(s),o,!0),r=m,h=p;var g=u;u=d;var _=e.map(g,(function(t){return e.isExportAssignment(t)&&!t.isExportEquals&&e.isIdentifier(t.expression)?e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(t.expression,e.factory.createIdentifier("default"))])):t})),y=e.every(_,(function(t){return e.hasSyntacticModifier(t,1)}))?e.map(_,I):_;H(c=e.factory.updateModuleDeclaration(c,c.decorators,c.modifiers,c.name,e.factory.createModuleBlock(y)),i)}}function ee(t){return!!(2887656&t.flags)||!(4194304&t.flags||"prototype"===t.escapedName||t.valueDeclaration&&32&e.getEffectiveModifierFlags(t.valueDeclaration)&&e.isClassLike(t.valueDeclaration.parent))}function te(t){var i=e.mapDefined(t,(function(t){var i,a=r.enclosingDeclaration;r.enclosingDeclaration=t;var o=t.expression;if(e.isEntityNameExpression(o)){if(e.isIdentifier(o)&&""===e.idText(o))return l(void 0);var c=void 0;if(c=(i=j(o,r,U)).introducesError,o=i.node,c)return l(void 0)}return l(e.factory.createExpressionWithTypeArguments(o,e.map(t.typeArguments,(function(e){return B(r,e,U,n)||s(xd(e),r)}))));function l(e){return r.enclosingDeclaration=a,e}}));if(i.length===t.length)return i}function re(t,n,a){var s,c=e.find(t.declarations,e.isClassLike),l=r.enclosingDeclaration;r.enclosingDeclaration=c||l;var u=Eo(t),d=e.map(u,(function(e){return g(e,r)})),p=Oo(t),f=Po(p),m=c&&e.getEffectiveImplementsTypeNodes(c),_=m&&te(m)||e.mapDefined(function(t){for(var r=e.emptyArray,n=0,i=t.symbol.declarations;n<i.length;n++){var a=i[n],o=e.getEffectiveImplementsTypeNodes(a);if(o)for(var s=0,c=o;s<c.length;s++){var l=xd(c[s]);l!==we&&(r===e.emptyArray?r=[l]:r.push(l))}}return r}(p),fe),h=_o(t),y=!!(null===(s=h.symbol)||void 0===s?void 0:s.valueDeclaration)&&e.isClassLike(h.symbol.valueDeclaration),v=y?Ao(h):Ee,b=i(i([],e.length(f)?[e.factory.createHeritageClause(94,e.map(f,(function(e){return de(e,v,n)})))]:[]),e.length(_)?[e.factory.createHeritageClause(117,_)]:[]),k=function(t,r,n){if(!e.length(r))return n;var i=new e.Map;e.forEach(n,(function(e){i.set(e.escapedName,e)}));for(var a=0,o=r;a<o.length;a++)for(var s=0,c=Hs(ls(o[a],t.thisType));s<c.length;s++){var l=c[s],u=i.get(l.escapedName);u&&!Qp(u,l)&&i.delete(l.escapedName)}return e.arrayFrom(i.values())}(p,f,Hs(p)),x=e.filter(k,(function(t){var r=t.valueDeclaration;return r&&!(e.isNamedDeclaration(r)&&e.isPrivateIdentifier(r.name))})),E=e.some(k,(function(t){var r=t.valueDeclaration;return r&&e.isNamedDeclaration(r)&&e.isPrivateIdentifier(r.name)}))?[e.factory.createPropertyDeclaration(void 0,void 0,e.factory.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:e.emptyArray,S=e.flatMap(x,(function(e){return o(e,!1,f[0])})),D=e.flatMap(e.filter(Hs(h),(function(e){return!(4194304&e.flags||"prototype"===e.escapedName||ee(e))})),(function(e){return o(e,!0,v)})),w=!y&&!!t.valueDeclaration&&e.isInJSFile(t.valueDeclaration)&&!e.some(hc(h,1))?[e.factory.createConstructorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(8),[],void 0)]:le(1,h,v,167),T=ue(p,f[0]);r.enclosingDeclaration=l,H(e.setTextRange(e.factory.createClassDeclaration(void 0,void 0,n,d,b,i(i(i(i(i([],T),D),w),S),E)),t.declarations&&e.filter(t.declarations,(function(t){return e.isClassDeclaration(t)||e.isClassExpression(t)}))[0]),a)}function ne(t,n,i){var a,o,s,c,l,u=Vn(t);if(!u)return e.Debug.fail();var d=Ci(ri(u,!0));if(d){var p=e.unescapeLeadingUnderscores(d.escapedName);"export="===p&&(J.esModuleInterop||J.allowSyntheticDefaultImports)&&(p="default");var f=_e(d,p);switch(U(d),u.kind){case 199:if(251===(null===(o=null===(a=u.parent)||void 0===a?void 0:a.parent)||void 0===o?void 0:o.kind)){var m=E(d.parent||d,r),g=u.propertyName;H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamedImports([e.factory.createImportSpecifier(g&&e.isIdentifier(g)?e.factory.createIdentifier(e.idText(g)):void 0,e.factory.createIdentifier(n))])),e.factory.createStringLiteral(m)),0);break}e.Debug.failBadSyntaxKind((null===(s=u.parent)||void 0===s?void 0:s.parent)||u,"Unhandled binding element grandparent kind in declaration serialization");break;case 292:218===(null===(l=null===(c=u.parent)||void 0===c?void 0:c.parent)||void 0===l?void 0:l.kind)&&ie(e.unescapeLeadingUnderscores(t.escapedName),f);break;case 251:if(e.isPropertyAccessExpression(u.initializer)){var _=u.initializer,h=e.factory.createUniqueName(n),y=E(d.parent||d,r);H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,h,e.factory.createExternalModuleReference(e.factory.createStringLiteral(y))),0),H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,e.factory.createIdentifier(n),e.factory.createQualifiedName(h,_.name)),i);break}case 263:if("export="===d.escapedName&&e.some(d.declarations,e.isJsonSourceFile)){ae(t);break}var v=!(512&d.flags||e.isVariableDeclaration(u));H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,e.factory.createIdentifier(n),v?T(d,r,67108863,!1):e.factory.createExternalModuleReference(e.factory.createStringLiteral(E(d,r)))),v?i:0);break;case 262:H(e.factory.createNamespaceExportDeclaration(e.idText(u.name)),0);break;case 265:H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,e.factory.createIdentifier(n),void 0),e.factory.createStringLiteral(E(d.parent||d,r))),0);break;case 266:H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamespaceImport(e.factory.createIdentifier(n))),e.factory.createStringLiteral(E(d,r))),0);break;case 272:H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamespaceExport(e.factory.createIdentifier(n)),e.factory.createStringLiteral(E(d,r))),0);break;case 268:H(e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamedImports([e.factory.createImportSpecifier(n!==p?e.factory.createIdentifier(p):void 0,e.factory.createIdentifier(n))])),e.factory.createStringLiteral(E(d.parent||d,r))),0);break;case 273:var b=u.parent.parent.moduleSpecifier;ie(e.unescapeLeadingUnderscores(t.escapedName),b?p:f,b&&e.isStringLiteralLike(b)?e.factory.createStringLiteral(b.text):void 0);break;case 269:ae(t);break;case 218:case 202:case 203:"default"===t.escapedName||"export="===t.escapedName?ae(t):ie(n,f);break;default:return e.Debug.failBadSyntaxKind(u,"Unhandled alias declaration kind in symbol serializer!")}}}function ie(t,r,n){H(e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([e.factory.createExportSpecifier(t!==r?r:void 0,t)]),n),0)}function ae(t){if(4194304&t.flags)return!1;var i=e.unescapeLeadingUnderscores(t.escapedName),a="export="===i,o=a||"default"===i,s=t.declarations&&Vn(t),c=s&&ri(s,!0);if(c&&e.length(c.declarations)&&e.some(c.declarations,(function(t){return e.getSourceFileOfNode(t)===e.getSourceFileOfNode(l)}))){var d=s&&(e.isExportAssignment(s)||e.isBinaryExpression(s)?e.getExportAssignmentExpression(s):e.getPropertyAssignmentAliasLikeExpression(s)),p=d&&e.isEntityNameExpression(d)?function(t){switch(t.kind){case 78:return t;case 158:do{t=t.left}while(78!==t.kind);return t;case 202:do{if(e.isModuleExportsAccessExpression(t.expression)&&!e.isPrivateIdentifier(t.name))return t.name;t=t.expression}while(78!==t.kind);return t}}(d):void 0,f=p&&fi(p,67108863,!0,!0,l);(f||c)&&U(f||c);var m=r.tracker.trackSymbol;if(r.tracker.trackSymbol=e.noop,o)u.push(e.factory.createExportAssignment(void 0,void 0,a,C(c,r,67108863)));else if(p===d&&p)ie(i,e.idText(p));else if(d&&e.isClassExpression(d))ie(i,_e(c,e.symbolName(c)));else{var g=me(i,t);H(e.factory.createImportEqualsDeclaration(void 0,void 0,!1,e.factory.createIdentifier(g),T(c,r,67108863,!1)),0),ie(i,g)}return r.tracker.trackSymbol=m,!0}g=me(i,t);var _=Hf(_o(Ci(t)));return oe(_,t)?Q(_,t,g,o?0:1):H(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(g,void 0,L(r,_,t,l,U,n))],2)),c&&4&c.flags&&"export="===c.escapedName?2:i===g?1:0),o?(u.push(e.factory.createExportAssignment(void 0,void 0,a,e.factory.createIdentifier(g))),!0):i!==g&&(ie(i,g),!0)}function oe(t,n){var i=e.getSourceFileOfNode(r.enclosingDeclaration);return 48&e.getObjectFlags(t)&&!bc(t,0)&&!bc(t,1)&&!_a(t)&&!(!e.length(e.filter(Hs(t),ee))&&!e.length(hc(t,0)))&&!e.length(hc(t,1))&&!F(n,l)&&!(t.symbol&&e.some(t.symbol.declarations,(function(t){return e.getSourceFileOfNode(t)!==i})))&&!e.some(Hs(t),(function(e){return ts(e.escapedName)}))&&!e.some(Hs(t),(function(t){return e.some(t.declarations,(function(t){return e.getSourceFileOfNode(t)!==i}))}))&&e.every(Hs(t),(function(t){return e.isIdentifierText(e.symbolName(t),V)}))}function se(t,i,a){return function(o,s,c){var u=e.getDeclarationModifierFlagsFromSymbol(o),d=!!(8&u);if(s&&2887656&o.flags)return[];if(4194304&o.flags||c&&gc(c,o.escapedName)&&Nv(gc(c,o.escapedName))===Nv(o)&&(16777216&o.flags)==(16777216&gc(c,o.escapedName).flags)&&np(_o(o),Na(c,o.escapedName)))return[];var p=-257&u|(s?32:0),m=P(o,r),g=e.find(o.declarations,e.or(e.isPropertyDeclaration,e.isAccessor,e.isVariableDeclaration,e.isPropertySignature,e.isBinaryExpression,e.isPropertyAccessExpression));if(98304&o.flags&&a){var _=[];if(65536&o.flags&&_.push(e.setTextRange(e.factory.createSetAccessorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(p),m,[e.factory.createParameterDeclaration(void 0,void 0,void 0,"arg",void 0,d?void 0:L(r,_o(o),o,l,U,n))],void 0),e.find(o.declarations,e.isSetAccessor)||g)),32768&o.flags){var h=8&u;_.push(e.setTextRange(e.factory.createGetAccessorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(p),m,[],h?void 0:L(r,_o(o),o,l,U,n),void 0),e.find(o.declarations,e.isGetAccessor)||g))}return _}if(98311&o.flags)return e.setTextRange(t(void 0,e.factory.createModifiersFromModifierFlags((Nv(o)?64:0)|p),m,16777216&o.flags?e.factory.createToken(57):void 0,d?void 0:L(r,_o(o),o,l,U,n),void 0),e.find(o.declarations,e.or(e.isPropertyDeclaration,e.isVariableDeclaration))||g);if(8208&o.flags){var y=hc(_o(o),0);if(8&p)return e.setTextRange(t(void 0,e.factory.createModifiersFromModifierFlags((Nv(o)?64:0)|p),m,16777216&o.flags?e.factory.createToken(57):void 0,void 0,void 0),e.find(o.declarations,e.isFunctionLikeDeclaration)||y[0]&&y[0].declaration||o.declarations[0]);for(var v=[],b=0,k=y;b<k.length;b++){var x=k[b],E=f(x,i,r,{name:m,questionToken:16777216&o.flags?e.factory.createToken(57):void 0,modifiers:p?e.factory.createModifiersFromModifierFlags(p):void 0});v.push(e.setTextRange(E,x.declaration))}return v}return e.Debug.fail("Unhandled class member kind! "+(o.__debugFlags||o.flags))}}function ce(e,t){return c(e,!1,t)}function le(t,n,i,a){var o=hc(n,t);if(1===t){if(!i&&e.every(o,(function(t){return 0===e.length(t.parameters)})))return[];if(i){var s=hc(i,1);if(!e.length(s)&&e.every(o,(function(t){return 0===e.length(t.parameters)})))return[];if(s.length===o.length){for(var c=!1,l=0;l<s.length;l++)if(!ef(o[l],s[l],!1,!1,!0,ip)){c=!0;break}if(!c)return[]}}for(var u=0,d=0,p=o;d<p.length;d++){var m=p[d];m.declaration&&(u|=e.getSelectedEffectiveModifierFlags(m.declaration,24))}if(u)return[e.setTextRange(e.factory.createConstructorDeclaration(void 0,e.factory.createModifiersFromModifierFlags(u),[],void 0),o[0].declaration)]}for(var g=[],_=0,h=o;_<h.length;_++){var y=h[_],v=f(y,a,r);g.push(e.setTextRange(v,y.declaration))}return g}function ue(e,t){for(var n=[],i=0,a=[0,1];i<a.length;i++){var o=a[i],s=bc(e,o);if(s){if(t){var c=bc(t,o);if(c&&np(s.type,c.type))continue}n.push(p(s,o,r,void 0))}}return n}function de(t,n,i){var a=pe(t,111551);if(a)return a;var o=me(i+"_base");return H(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(o,void 0,s(n,r))],2)),0),e.factory.createExpressionWithTypeArguments(e.factory.createIdentifier(o),void 0)}function pe(t,n){var i,a;if(t.target&&ea(t.target.symbol,l,n)?(i=e.map(ll(t),(function(e){return s(e,r)})),a=C(t.target.symbol,r,788968)):t.symbol&&ea(t.symbol,l,n)&&(a=C(t.symbol,r,788968)),a)return e.factory.createExpressionWithTypeArguments(a,i)}function fe(t){var n=pe(t,788968);return n||(t.symbol?e.factory.createExpressionWithTypeArguments(C(t.symbol,r,788968),void 0):void 0)}function me(e,t){var n,i,a=t?R(t):void 0;if(a&&r.remappedSymbolNames.has(a))return r.remappedSymbolNames.get(a);t&&(e=ge(t,e));for(var o=0,s=e;null===(n=r.usedSymbolNames)||void 0===n?void 0:n.has(e);)e=s+"_"+ ++o;return null===(i=r.usedSymbolNames)||void 0===i||i.add(e),a&&r.remappedSymbolNames.set(a,e),e}function ge(t,n){if("default"===n||"__class"===n||"__function"===n){var i=r.flags;r.flags|=16777216;var a=xa(t,r);r.flags=i,n=a.length>0&&e.isSingleOrDoubleQuote(a.charCodeAt(0))?e.stripQuotes(a):a}return"default"===n?n="_default":"export="===n&&(n="_exports"),n=e.isIdentifierText(n,V)&&!e.isStringANonContextualKeyword(n)?n:"_"+n.replace(/[^a-zA-Z0-9]/g,"_")}function _e(e,t){var n=R(e);return r.remappedSymbolNames.has(n)?r.remappedSymbolNames.get(n):(t=ge(e,t),r.remappedSymbolNames.set(n,t),t)}}(t,r,l)}))}};function r(r,n,i,a){var o,s;e.Debug.assert(void 0===r||0==(8&r.flags));var c={enclosingDeclaration:r,flags:n||0,tracker:i&&i.trackSymbol?i:{trackSymbol:e.noop,moduleResolverHost:134217728&n?{getCommonSourceDirectory:t.getCommonSourceDirectory?function(){return t.getCommonSourceDirectory()}:function(){return""},getSourceFiles:function(){return t.getSourceFiles()},getCurrentDirectory:function(){return t.getCurrentDirectory()},getSymlinkCache:e.maybeBind(t,t.getSymlinkCache),useCaseSensitiveFileNames:e.maybeBind(t,t.useCaseSensitiveFileNames),redirectTargetsMap:t.redirectTargetsMap,getProjectReferenceRedirect:function(e){return t.getProjectReferenceRedirect(e)},isSourceOfProjectReferenceRedirect:function(e){return t.isSourceOfProjectReferenceRedirect(e)},fileExists:function(e){return t.fileExists(e)},getFileIncludeReasons:function(){return t.getFileIncludeReasons()}}:void 0},encounteredError:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0},l=a(c);return c.truncating&&1&c.flags&&(null===(s=null===(o=c.tracker)||void 0===o?void 0:o.reportTruncationError)||void 0===s||s.call(o)),c.encounteredError?void 0:l}function o(t){return t.truncating?t.truncating:t.truncating=t.approximateLength>(1&t.flags?e.noTruncationMaximumTruncationLength:e.defaultMaximumTruncationLength)}function s(t,r){n&&n.throwIfCancellationRequested&&n.throwIfCancellationRequested();var i=8388608&r.flags;if(r.flags&=-8388609,!t)return 262144&r.flags?(r.approximateLength+=3,e.factory.createKeywordTypeNode(129)):void(r.encounteredError=!0);if(536870912&r.flags||(t=uc(t)),1&t.flags)return r.approximateLength+=3,e.factory.createKeywordTypeNode(t===Ce?137:129);if(2&t.flags)return e.factory.createKeywordTypeNode(153);if(4&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(148);if(8&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(145);if(64&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(156);if(16&t.flags)return r.approximateLength+=7,e.factory.createKeywordTypeNode(132);if(1024&t.flags&&!(1048576&t.flags)){var a=Ni(t.symbol),c=S(a,r,788968);if(Jo(a)===t)return c;var g=e.symbolName(t.symbol);return e.isIdentifierText(g,0)?V(c,e.factory.createTypeReferenceNode(g,void 0)):e.isImportTypeNode(c)?(c.isTypeOf=!0,e.factory.createIndexedAccessTypeNode(c,e.factory.createLiteralTypeNode(e.factory.createStringLiteral(g)))):e.isTypeReferenceNode(c)?e.factory.createIndexedAccessTypeNode(e.factory.createTypeQueryNode(c.typeName),e.factory.createLiteralTypeNode(e.factory.createStringLiteral(g))):e.Debug.fail("Unhandled type node kind returned from `symbolToTypeNode`.")}if(1056&t.flags)return S(t.symbol,r,788968);if(128&t.flags)return r.approximateLength+=t.value.length+2,e.factory.createLiteralTypeNode(e.setEmitFlags(e.factory.createStringLiteral(t.value,!!(268435456&r.flags)),16777216));if(256&t.flags){var _=t.value;return r.approximateLength+=(""+_).length,e.factory.createLiteralTypeNode(_<0?e.factory.createPrefixUnaryExpression(40,e.factory.createNumericLiteral(-_)):e.factory.createNumericLiteral(_))}if(2048&t.flags)return r.approximateLength+=e.pseudoBigIntToString(t.value).length+1,e.factory.createLiteralTypeNode(e.factory.createBigIntLiteral(t.value));if(512&t.flags)return r.approximateLength+=t.intrinsicName.length,e.factory.createLiteralTypeNode("true"===t.intrinsicName?e.factory.createTrue():e.factory.createFalse());if(8192&t.flags){if(!(1048576&r.flags)){if(Zi(t.symbol,r.enclosingDeclaration))return r.approximateLength+=6,S(t.symbol,r,111551);r.tracker.reportInaccessibleUniqueSymbolError&&r.tracker.reportInaccessibleUniqueSymbolError()}return r.approximateLength+=13,e.factory.createTypeOperatorNode(152,e.factory.createKeywordTypeNode(149))}if(16384&t.flags)return r.approximateLength+=4,e.factory.createKeywordTypeNode(114);if(32768&t.flags)return r.approximateLength+=9,e.factory.createKeywordTypeNode(151);if(65536&t.flags)return r.approximateLength+=4,e.factory.createLiteralTypeNode(e.factory.createNull());if(131072&t.flags)return r.approximateLength+=5,e.factory.createKeywordTypeNode(142);if(4096&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(149);if(67108864&t.flags)return r.approximateLength+=6,e.factory.createKeywordTypeNode(146);if(Lu(t))return 4194304&r.flags&&(r.encounteredError||32768&r.flags||(r.encounteredError=!0),r.tracker.reportInaccessibleThisError&&r.tracker.reportInaccessibleThisError()),r.approximateLength+=4,e.factory.createThisTypeNode();if(!i&&t.aliasSymbol&&(16384&r.flags||Qi(t.aliasSymbol,r.enclosingDeclaration))){var h=d(t.aliasTypeArguments,r);return!Vi(t.aliasSymbol.escapedName)||32&t.aliasSymbol.flags?S(t.aliasSymbol,r,788968,h):e.factory.createTypeReferenceNode(e.factory.createIdentifier(""),h)}var y=e.getObjectFlags(t);if(4&y)return e.Debug.assert(!!(524288&t.flags)),t.node?U(t,J):J(t);if(262144&t.flags||3&y){if(262144&t.flags&&e.contains(r.inferTypeParameters,t))return r.approximateLength+=e.symbolName(t.symbol).length+6,e.factory.createInferTypeNode(m(t,r,void 0));if(4&r.flags&&262144&t.flags&&!Qi(t.symbol,r.enclosingDeclaration)){var v=w(t,r);return r.approximateLength+=e.idText(v).length,e.factory.createTypeReferenceNode(e.factory.createIdentifier(e.idText(v)),void 0)}return t.symbol?S(t.symbol,r,788968):e.factory.createTypeReferenceNode(e.factory.createIdentifier("?"),void 0)}if(1048576&t.flags&&t.origin&&(t=t.origin),3145728&t.flags){var b=1048576&t.flags?function(e){for(var t=[],r=0,n=0;n<e.length;n++){var i=e[n];if(r|=i.flags,!(98304&i.flags)){if(1536&i.flags){var a=512&i.flags?qe:Bo(i);if(1048576&a.flags){var o=a.types.length;if(n+o<=e.length&&gd(e[n+o-1])===gd(a.types[o-1])){t.push(a),n+=o-1;continue}}}t.push(i)}}65536&r&&t.push(Fe);32768&r&&t.push(Ne);return t||e}(t.types):t.types;if(1===e.length(b))return s(b[0],r);var k=d(b,r,!0);return k&&k.length>0?1048576&t.flags?e.factory.createUnionTypeNode(k):e.factory.createIntersectionTypeNode(k):void(r.encounteredError||262144&r.flags||(r.encounteredError=!0))}if(48&y)return e.Debug.assert(!!(524288&t.flags)),z(t);if(4194304&t.flags){var x=t.type;r.approximateLength+=6;var E=s(x,r);return e.factory.createTypeOperatorNode(139,E)}if(134217728&t.flags){var D=t.texts,T=t.types,C=e.factory.createTemplateHead(D[0]),A=e.factory.createNodeArray(e.map(T,(function(t,n){return e.factory.createTemplateLiteralTypeSpan(s(t,r),(n<T.length-1?e.factory.createTemplateMiddle:e.factory.createTemplateTail)(D[n+1]))})));return r.approximateLength+=2,e.factory.createTemplateLiteralType(C,A)}if(268435456&t.flags){var N=s(t.type,r);return S(t.symbol,r,788968,[N])}if(8388608&t.flags){var P=s(t.objectType,r);E=s(t.indexType,r);return r.approximateLength+=2,e.factory.createIndexedAccessTypeNode(P,E)}if(16777216&t.flags){var I=s(t.checkType,r),F=r.inferTypeParameters;r.inferTypeParameters=t.root.inferTypeParameters;var M=s(t.extendsType,r);r.inferTypeParameters=F;var L=B(Xu(t)),j=B(Qu(t));return r.approximateLength+=15,e.factory.createConditionalTypeNode(I,M,L,j)}return 33554432&t.flags?s(t.baseType,r):e.Debug.fail("Should be unreachable.");function B(e){var t,n,i;return 1048576&e.flags?(null===(t=r.visitedTypes)||void 0===t?void 0:t.has(Zl(e)))?(131072&r.flags||(r.encounteredError=!0,null===(i=null===(n=r.tracker)||void 0===n?void 0:n.reportCyclicStructureError)||void 0===i||i.call(n)),l(r)):U(e,(function(e){return s(e,r)})):s(e,r)}function z(t){var n,i=t.id,a=t.symbol;if(a){var o=_a(t)?788968:111551;if(Fy(a.valueDeclaration))return S(a,r,o);if(32&a.flags&&!po(a)&&!(223===a.valueDeclaration.kind&&2048&r.flags)||896&a.flags||function(){var t,n=!!(8192&a.flags)&&e.some(a.declarations,(function(t){return e.hasSyntacticModifier(t,32)})),o=!!(16&a.flags)&&(a.parent||e.forEach(a.declarations,(function(e){return 300===e.parent.kind||260===e.parent.kind})));if(n||o)return(!!(4096&r.flags)||(null===(t=r.visitedTypes)||void 0===t?void 0:t.has(i)))&&(!(8&r.flags)||Zi(a,r.enclosingDeclaration))}())return S(a,r,o);if(null===(n=r.visitedTypes)||void 0===n?void 0:n.has(i)){var s=function(t){if(t.symbol&&2048&t.symbol.flags){var r=e.walkUpParenthesizedTypes(t.symbol.declarations[0].parent);if(257===r.kind)return Ai(r)}return}(t);return s?S(s,r,788968):l(r)}return U(t,q)}return q(t)}function U(t,n){var i,a=t.id,o=16&e.getObjectFlags(t)&&t.symbol&&32&t.symbol.flags,s=4&e.getObjectFlags(t)&&t.node?"N"+O(t.node):t.symbol?(o?"+":"")+R(t.symbol):void 0;if(r.visitedTypes||(r.visitedTypes=new e.Set),s&&!r.symbolDepth&&(r.symbolDepth=new e.Map),s){if((i=r.symbolDepth.get(s)||0)>10)return l(r);r.symbolDepth.set(s,i+1)}r.visitedTypes.add(a);var c=n(t);return r.visitedTypes.delete(a),s&&r.symbolDepth.set(s,i),c}function q(t){if(zs(t)||t.containsError)return function(t){e.Debug.assert(!!(524288&t.flags));var n,i=t.declaration.readonlyToken?e.factory.createToken(t.declaration.readonlyToken.kind):void 0,a=t.declaration.questionToken?e.factory.createToken(t.declaration.questionToken.kind):void 0;n=Rs(t)?e.factory.createTypeOperatorNode(139,s(Ms(t),r)):s(Ps(t),r);var o=m(Ns(t),r,n),c=t.declaration.nameType?s(Is(t),r):void 0,l=s(Fs(t),r),u=e.factory.createMappedTypeNode(i,o,c,a,l);return r.approximateLength+=10,e.setEmitFlags(u,1)}(t);var n=Us(t);if(!n.properties.length&&!n.stringIndexInfo&&!n.numberIndexInfo){if(!n.callSignatures.length&&!n.constructSignatures.length)return r.approximateLength+=2,e.setEmitFlags(e.factory.createTypeLiteralNode(void 0),1);if(1===n.callSignatures.length&&!n.constructSignatures.length)return f(n.callSignatures[0],175,r);if(1===n.constructSignatures.length&&!n.callSignatures.length)return f(n.constructSignatures[0],176,r)}var i=e.filter(n.constructSignatures,(function(e){return!!(4&e.flags)}));if(e.some(i)){var a=e.map(i,$c);return n.callSignatures.length+(n.constructSignatures.length-i.length)+(n.stringIndexInfo?1:0)+(n.numberIndexInfo?1:0)+(2048&r.flags?e.countWhere(n.properties,(function(e){return!(4194304&e.flags)})):e.length(n.properties))&&a.push(function(t){if(0===t.constructSignatures.length)return t;if(t.objectTypeWithoutAbstractConstructSignatures)return t.objectTypeWithoutAbstractConstructSignatures;var r=e.filter(t.constructSignatures,(function(e){return!(4&e.flags)}));if(t.constructSignatures===r)return t;var n=Wi(t.symbol,t.members,t.callSignatures,e.some(r)?r:e.emptyArray,t.stringIndexInfo,t.numberIndexInfo);return t.objectTypeWithoutAbstractConstructSignatures=n,n.objectTypeWithoutAbstractConstructSignatures=n,n}(n)),s(fu(a),r)}var c=r.flags;r.flags|=4194304;var d=function(t){if(o(r))return[e.factory.createPropertySignature(void 0,"...",void 0,void 0)];for(var n=[],i=0,a=t.callSignatures;i<a.length;i++){var s=a[i];n.push(f(s,170,r))}for(var c=0,d=t.constructSignatures;c<d.length;c++){4&(s=d[c]).flags||n.push(f(s,171,r))}if(t.stringIndexInfo){var m=void 0;m=2048&t.objectFlags?p(Qc(Ee,t.stringIndexInfo.isReadonly,t.stringIndexInfo.declaration),0,r,l(r)):p(t.stringIndexInfo,0,r,void 0),n.push(m)}t.numberIndexInfo&&n.push(p(t.numberIndexInfo,1,r,void 0));var g=t.properties;if(!g)return n;for(var _=0,h=0,y=g;h<y.length;h++){var v=y[h];if(_++,2048&r.flags){if(4194304&v.flags)continue;24&e.getDeclarationModifierFlagsFromSymbol(v)&&r.tracker.reportPrivateInBaseOfClassExpression&&r.tracker.reportPrivateInBaseOfClassExpression(e.unescapeLeadingUnderscores(v.escapedName))}if(o(r)&&_+2<g.length-1){n.push(e.factory.createPropertySignature(void 0,"... "+(g.length-_)+" more ...",void 0,void 0)),u(g[g.length-1],r,n);break}u(v,r,n)}return n.length?n:void 0}(n);r.flags=c;var g=e.factory.createTypeLiteralNode(d);return r.approximateLength+=2,e.setEmitFlags(g,1024&r.flags?0:1),g}function J(t){var n=ll(t);if(t.target===xt||t.target===Et){if(2&r.flags){var i=s(n[0],r);return e.factory.createTypeReferenceNode(t.target===xt?"Array":"ReadonlyArray",[i])}var a=s(n[0],r),o=e.factory.createArrayTypeNode(a);return t.target===xt?o:e.factory.createTypeOperatorNode(143,o)}if(!(8&t.target.objectFlags)){if(2048&r.flags&&t.symbol.valueDeclaration&&e.isClassLike(t.symbol.valueDeclaration)&&!Zi(t.symbol,r.enclosingDeclaration))return z(t);var c=t.target.outerTypeParameters,l=(x=0,void 0);if(c)for(var u=c.length;x<u;){var p=x,f=rl(c[x]);do{x++}while(x<u&&rl(c[x])===f);if(!e.rangeEquals(c,n,p,x)){var m=d(n.slice(p,x),r),g=r.flags;r.flags|=16;var _=S(f,r,788968,m);r.flags=g,l=l?V(l,_):_}}var h=void 0;if(n.length>0){var y=(t.target.typeParameters||e.emptyArray).length;h=d(n.slice(x,y),r)}E=r.flags;r.flags|=16;var v=S(t.symbol,r,788968,h);return r.flags=E,l?V(l,v):v}if(n.length>0){var b=ul(t),k=d(n.slice(0,b),r);if(k){if(t.target.labeledElementDeclarations)for(var x=0;x<k.length;x++){var E=t.target.elementFlags[x];k[x]=e.factory.createNamedTupleMember(12&E?e.factory.createToken(25):void 0,e.factory.createIdentifier(e.unescapeLeadingUnderscores(Zy(t.target.labeledElementDeclarations[x]))),2&E?e.factory.createToken(57):void 0,4&E?e.factory.createArrayTypeNode(k[x]):k[x])}else for(var x=0;x<Math.min(b,k.length);x++){var E=t.target.elementFlags[x];k[x]=12&E?e.factory.createRestTypeNode(4&E?e.factory.createArrayTypeNode(k[x]):k[x]):2&E?e.factory.createOptionalTypeNode(k[x]):k[x]}var D=e.setEmitFlags(e.factory.createTupleTypeNode(k),1);return t.target.readonly?e.factory.createTypeOperatorNode(143,D):D}}if(r.encounteredError||524288&r.flags){D=e.setEmitFlags(e.factory.createTupleTypeNode([]),1);return t.target.readonly?e.factory.createTypeOperatorNode(143,D):D}r.encounteredError=!0}function V(t,r){if(e.isImportTypeNode(t)){var n=t.typeArguments,i=t.qualifier;i&&(i=e.isIdentifier(i)?e.factory.updateIdentifier(i,n):e.factory.updateQualifiedName(i,i.left,e.factory.updateIdentifier(i.right,n))),n=r.typeArguments;for(var a=0,o=H(r);a<o.length;a++){var s=o[a];i=i?e.factory.createQualifiedName(i,s):s}return e.factory.updateImportTypeNode(t,t.argument,i,n,t.isTypeOf)}n=t.typeArguments;var c=t.typeName;c=e.isIdentifier(c)?e.factory.updateIdentifier(c,n):e.factory.updateQualifiedName(c,c.left,e.factory.updateIdentifier(c.right,n)),n=r.typeArguments;for(var l=0,u=H(r);l<u.length;l++){s=u[l];c=e.factory.createQualifiedName(c,s)}return e.factory.updateTypeReferenceNode(t,c,n)}function H(t){for(var r=t.typeName,n=[];!e.isIdentifier(r);)n.unshift(r.right),r=r.left;return n.unshift(r),n}}function l(t){return t.approximateLength+=3,1&t.flags?e.factory.createKeywordTypeNode(129):e.factory.createTypeReferenceNode(e.factory.createIdentifier("..."),void 0)}function u(t,r,n){var i=!!(8192&e.getCheckFlags(t)),a=i&&33554432&r.flags?Ee:_o(t),o=r.enclosingDeclaration;if(r.enclosingDeclaration=void 0,r.tracker.trackSymbol&&4096&e.getCheckFlags(t)&&ts(t.escapedName)){var s=e.first(t.declarations);if(rs(s))if(e.isBinaryExpression(s)){var c=e.getNameOfDeclaration(s);c&&e.isElementAccessExpression(c)&&e.isPropertyAccessEntityNameExpression(c.argumentExpression)&&h(c.argumentExpression,o,r)}else h(s.name.expression,o,r)}r.enclosingDeclaration=o;var u=P(t,r);r.approximateLength+=e.symbolName(t).length+1;var d=16777216&t.flags?e.factory.createToken(57):void 0;if(8208&t.flags&&!qs(a).length&&!Nv(t))for(var p=0,m=hc(ug(a,(function(e){return!(32768&e.flags)})),0);p<m.length;p++){var g=f(m[p],165,r,{name:u,questionToken:d});n.push(k(g))}else{var _=r.flags;r.flags|=i?33554432:0;var y=void 0;y=i&&33554432&_?l(r):a?L(r,a,t,o):e.factory.createKeywordTypeNode(129),r.flags=_;var v=Nv(t)?[e.factory.createToken(143)]:void 0;v&&(r.approximateLength+=9);var b=e.factory.createPropertySignature(v,u,d,y);n.push(k(b))}function k(r){if(e.some(t.declarations,(function(e){return 336===e.kind}))){var n=e.find(t.declarations,(function(e){return 336===e.kind})).comment;n&&e.setSyntheticLeadingComments(r,[{kind:3,text:"*\n * "+n.replace(/\n/g,"\n * ")+"\n ",pos:-1,end:-1,hasTrailingNewLine:!0}])}else t.valueDeclaration&&e.setCommentRange(r,t.valueDeclaration);return r}}function d(t,r,n){if(e.some(t)){if(o(r)){if(!n)return[e.factory.createTypeReferenceNode("...",void 0)];if(t.length>2)return[s(t[0],r),e.factory.createTypeReferenceNode("... "+(t.length-2)+" more ...",void 0),s(t[t.length-1],r)]}for(var i=!(64&r.flags)?e.createUnderscoreEscapedMultiMap():void 0,a=[],c=0,l=0,u=t;l<u.length;l++){var d=u[l];if(c++,o(r)&&c+2<t.length-1){a.push(e.factory.createTypeReferenceNode("... "+(t.length-c)+" more ...",void 0));var p=s(t[t.length-1],r);p&&a.push(p);break}r.approximateLength+=2;var f=s(d,r);f&&(a.push(f),i&&e.isIdentifierTypeReference(f)&&i.add(f.typeName.escapedText,[d,a.length-1]))}if(i){var m=r.flags;r.flags|=64,i.forEach((function(t){if(!e.arrayIsHomogeneous(t,(function(e,t){return function(e,t){return e===t||!!e.symbol&&e.symbol===t.symbol||!!e.aliasSymbol&&e.aliasSymbol===t.aliasSymbol}(e[0],t[0])})))for(var n=0,i=t;n<i.length;n++){var o=i[n],c=o[0],l=o[1];a[l]=s(c,r)}})),r.flags=m}return a}}function p(t,r,n,i){var a=e.getNameFromIndexInfo(t)||"x",o=e.factory.createKeywordTypeNode(0===r?148:145),c=e.factory.createParameterDeclaration(void 0,void 0,void 0,a,void 0,o,void 0);return i||(i=s(t.type||Ee,n)),t.type||2097152&n.flags||(n.encounteredError=!0),n.approximateLength+=a.length+4,e.factory.createIndexSignature(void 0,t.isReadonly?[e.factory.createToken(143)]:void 0,[c],i)}function f(t,r,n,i){var a,o,c,l,u,d,p=256&n.flags;p&&(n.flags&=-257),32&n.flags&&t.target&&t.mapper&&t.target.typeParameters?d=t.target.typeParameters.map((function(e){return s(Wd(e,t.mapper),n)})):u=t.typeParameters&&t.typeParameters.map((function(e){return g(e,n)}));var f,m=gs(t,!0)[0],h=(e.some(m,(function(t){return t!==m[m.length-1]&&!!(32768&e.getCheckFlags(t))}))?t.parameters:m).map((function(e){return _(e,n,167===r,null==i?void 0:i.privateSymbolVisitor,null==i?void 0:i.bundledImports)}));if(t.thisParameter){var y=_(t.thisParameter,n);h.unshift(y)}var v=jc(t);if(v){var b=2===v.kind||3===v.kind?e.factory.createToken(128):void 0,k=1===v.kind||3===v.kind?e.setEmitFlags(e.factory.createIdentifier(v.parameterName),16777216):e.factory.createThisTypeNode(),x=v.type&&s(v.type,n);f=e.factory.createTypePredicateNode(b,k,x)}else{var E=Bc(t);!E||p&&Pa(E)?p||(f=e.factory.createKeywordTypeNode(129)):f=function(t,r,n,i,a){if(r!==we&&t.enclosingDeclaration){var o=n.declaration&&e.getEffectiveReturnTypeNode(n.declaration);if(e.findAncestor(o,(function(e){return e===t.enclosingDeclaration}))&&o&&Wd(xd(o),n.mapper)===r&&M(o,r)){var c=B(t,o,i,a);if(c)return c}}return s(r,t)}(n,E,t,null==i?void 0:i.privateSymbolVisitor,null==i?void 0:i.bundledImports)}var S=null==i?void 0:i.modifiers;if(176===r&&4&t.flags){var D=e.modifiersToFlags(S);S=e.factory.createModifiersFromModifierFlags(128|D)}n.approximateLength+=3;var w=170===r?e.factory.createCallSignature(u,h,f):171===r?e.factory.createConstructSignature(u,h,f):165===r?e.factory.createMethodSignature(S,null!==(a=null==i?void 0:i.name)&&void 0!==a?a:e.factory.createIdentifier(""),null==i?void 0:i.questionToken,u,h,f):166===r?e.factory.createMethodDeclaration(void 0,S,void 0,null!==(o=null==i?void 0:i.name)&&void 0!==o?o:e.factory.createIdentifier(""),void 0,u,h,f,void 0):167===r?e.factory.createConstructorDeclaration(void 0,S,h,void 0):168===r?e.factory.createGetAccessorDeclaration(void 0,S,null!==(c=null==i?void 0:i.name)&&void 0!==c?c:e.factory.createIdentifier(""),h,f,void 0):169===r?e.factory.createSetAccessorDeclaration(void 0,S,null!==(l=null==i?void 0:i.name)&&void 0!==l?l:e.factory.createIdentifier(""),h,void 0):172===r?e.factory.createIndexSignature(void 0,S,h,f):311===r?e.factory.createJSDocFunctionType(h,f):175===r?e.factory.createFunctionTypeNode(u,h,null!=f?f:e.factory.createTypeReferenceNode(e.factory.createIdentifier(""))):176===r?e.factory.createConstructorTypeNode(S,u,h,null!=f?f:e.factory.createTypeReferenceNode(e.factory.createIdentifier(""))):253===r?e.factory.createFunctionDeclaration(void 0,S,void 0,(null==i?void 0:i.name)?e.cast(i.name,e.isIdentifier):e.factory.createIdentifier(""),u,h,f,void 0):209===r?e.factory.createFunctionExpression(S,void 0,(null==i?void 0:i.name)?e.cast(i.name,e.isIdentifier):e.factory.createIdentifier(""),u,h,f,e.factory.createBlock([])):210===r?e.factory.createArrowFunction(S,u,h,f,void 0,e.factory.createBlock([])):e.Debug.assertNever(r);return d&&(w.typeArguments=e.factory.createNodeArray(d)),w}function m(t,r,n){var i=r.flags;r.flags&=-513;var a=w(t,r),o=nc(t),c=o&&s(o,r);return r.flags=i,e.factory.createTypeParameterDeclaration(a,n,c)}function g(e,t,r){return void 0===r&&(r=Ws(e)),m(e,t,r&&s(r,t))}function _(t,r,n,i,a){var o=e.getDeclarationOfKind(t,161);o||e.isTransientSymbol(t)||(o=e.getDeclarationOfKind(t,329));var s,c=_o(t);o&&yE(o)&&(c=Nf(c)),1073741824&r.flags&&o&&!e.isJSDocParameterTag(o)&&(s=o,W&&Tc(s)&&!s.initializer)&&(c=Hm(c,524288));var l=L(r,c,t,r.enclosingDeclaration,i,a),u=!(8192&r.flags)&&n&&o&&o.modifiers?o.modifiers.map(e.factory.cloneNode):void 0,d=o&&e.isRestParameter(o)||32768&e.getCheckFlags(t)?e.factory.createToken(25):void 0,p=o&&o.name?78===o.name.kind?e.setEmitFlags(e.factory.cloneNode(o.name),16777216):158===o.name.kind?e.setEmitFlags(e.factory.cloneNode(o.name.right),16777216):function t(n){r.tracker.trackSymbol&&e.isComputedPropertyName(n)&&es(n)&&h(n.expression,r.enclosingDeclaration,r);var i=e.visitEachChild(n,t,e.nullTransformationContext,void 0,t);return e.isBindingElement(i)&&(i=e.factory.updateBindingElement(i,i.dotDotDotToken,i.propertyName,i.name,void 0)),e.nodeIsSynthesized(i)||(i=e.factory.cloneNode(i)),e.setEmitFlags(i,16777217)}(o.name):e.symbolName(t),f=o&&Tc(o)||16384&e.getCheckFlags(t)?e.factory.createToken(57):void 0,m=e.factory.createParameterDeclaration(void 0,u,d,p,f,l,void 0);return r.approximateLength+=e.symbolName(t).length+3,m}function h(t,r,n){if(n.tracker.trackSymbol){var i=e.getFirstIdentifier(t),a=Fn(i,i.escapedText,1160127,void 0,void 0,!0);a&&n.tracker.trackSymbol(a,r,111551)}}function y(e,t,r,n){return t.tracker.trackSymbol(e,t.enclosingDeclaration,r),v(e,t,r,n)}function v(t,r,n,i){var a;return 262144&t.flags||!(r.enclosingDeclaration||64&r.flags)||134217728&r.flags?a=[t]:(a=e.Debug.checkDefined(function t(n,a,o){var s,c=Yi(n,r.enclosingDeclaration,a,!!(128&r.flags));if(!c||Xi(c[0],r.enclosingDeclaration,1===c.length?a:$i(a))){var l=Pi(c?c[0]:n,r.enclosingDeclaration,a);if(e.length(l)){s=l.map((function(t){return e.some(t.declarations,oa)?E(t,r):void 0}));var u=l.map((function(e,t){return t}));u.sort(g);for(var d=0,p=u.map((function(e){return l[e]}));d<p.length;d++){var f=p[d],m=t(f,$i(a),!1);if(m){if(f.exports&&f.exports.get("export=")&&Oi(f.exports.get("export="),n)){c=m;break}c=m.concat(c||[Fi(f,n)||n]);break}}}}if(c)return c;if(o||!(6144&n.flags)){if(!o&&!i&&e.forEach(n.declarations,oa))return;return[n]}function g(t,r){var n=s[t],i=s[r];if(n&&i){var a=e.pathIsRelative(i);return e.pathIsRelative(n)===a?e.moduleSpecifiers.countPathComponents(n)-e.moduleSpecifiers.countPathComponents(i):a?-1:1}return 0}}(t,n,!0)),e.Debug.assert(a&&a.length>0)),a}function b(t,r){var n;return 524384&_x(t).flags&&(n=e.factory.createNodeArray(e.map(Eo(t),(function(e){return g(e,r)})))),n}function k(t,r,n){var i;e.Debug.assert(t&&0<=r&&r<t.length);var a=t[r],o=R(a);if(!(null===(i=n.typeParameterSymbolList)||void 0===i?void 0:i.has(o))){var s;if((n.typeParameterSymbolList||(n.typeParameterSymbolList=new e.Set)).add(o),512&n.flags&&r<t.length-1){var c=a,l=t[r+1];if(1&e.getCheckFlags(l)){var u=function(t){return e.concatenate(xo(t),Eo(t))}(2097152&c.flags?ai(c):c);s=d(e.map(u,(function(e){return Cd(e,l.mapper)})),n)}else s=b(a,n)}return s}}function x(t){return e.isIndexedAccessTypeNode(t.objectType)?x(t.objectType):t}function E(t,r){var n,i=e.getDeclarationOfKind(t,300);if(!i){var o=e.firstDefined(t.declarations,(function(e){return Ii(e,t)}));o&&(i=e.getDeclarationOfKind(o,300))}if(i&&void 0!==i.moduleName)return i.moduleName;if(!i){if(r.tracker.trackReferencedAmbientModule){var s=e.filter(t.declarations,e.isAmbientModule);if(e.length(s))for(var l=0,u=s;l<u.length;l++){var d=u[l];r.tracker.trackReferencedAmbientModule(d,t)}}if(c.test(t.escapedName))return t.escapedName.substring(1,t.escapedName.length-1)}if(!r.enclosingDeclaration||!r.tracker.moduleResolverHost)return c.test(t.escapedName)?t.escapedName.substring(1,t.escapedName.length-1):e.getSourceFileOfNode(e.getNonAugmentationDeclaration(t)).fileName;var p=e.getSourceFileOfNode(e.getOriginalNode(r.enclosingDeclaration)),f=Tn(t),m=f.specifierCache&&f.specifierCache.get(p.path);if(!m){var g=!!e.outFile(J),_=r.tracker.moduleResolverHost,h=g?a(a({},J),{baseUrl:_.getCommonSourceDirectory()}):J;m=e.first(e.moduleSpecifiers.getModuleSpecifiers(t,le,h,p,_,{importModuleSpecifierPreference:g?"non-relative":"relative",importModuleSpecifierEnding:g?"minimal":void 0})),null!==(n=f.specifierCache)&&void 0!==n||(f.specifierCache=new e.Map),f.specifierCache.set(p.path,m)}return m}function S(t,r,n,i){var a=y(t,r,n,!(16384&r.flags)),o=111551===n;if(e.some(a[0].declarations,oa)){var s=a.length>1?_(a,a.length-1,1):void 0,c=i||k(a,0,r),l=E(a[0],r);67108864&r.flags||e.getEmitModuleResolutionKind(J)!==e.ModuleResolutionKind.NodeJs||!(l.indexOf("/node_modules/")>=0||e.isOhpm(J.packageManagerType)&&l.indexOf("/oh_modules/")>=0)||(r.encounteredError=!0,r.tracker.reportLikelyUnsafeImportRequiredError&&r.tracker.reportLikelyUnsafeImportRequiredError(l));var u=e.factory.createLiteralTypeNode(e.factory.createStringLiteral(l));if(r.tracker.trackExternalModuleSymbolOfImportTypeNode&&r.tracker.trackExternalModuleSymbolOfImportTypeNode(a[0]),r.approximateLength+=l.length+10,!s||e.isEntityName(s)){if(s)(m=e.isIdentifier(s)?s:s.right).typeArguments=void 0;return e.factory.createImportTypeNode(u,s,c,o)}var d=x(s),p=d.objectType.typeName;return e.factory.createIndexedAccessTypeNode(e.factory.createImportTypeNode(u,p,c,o),d.indexType)}var f=_(a,a.length-1,0);if(e.isIndexedAccessTypeNode(f))return f;if(o)return e.factory.createTypeQueryNode(f);var m,g=(m=e.isIdentifier(f)?f:f.right).typeArguments;return m.typeArguments=void 0,e.factory.createTypeReferenceNode(f,g);function _(t,n,a){var o,s=n===t.length-1?i:k(t,n,r),c=t[n],l=t[n-1];if(0===n)r.flags|=16777216,o=xa(c,r),r.approximateLength+=(o?o.length:0)+1,r.flags^=16777216;else if(l&&Si(l)){var u=Si(l);e.forEachEntry(u,(function(t,r){if(Oi(t,c)&&!ts(r)&&"export="!==r)return o=e.unescapeLeadingUnderscores(r),!0}))}if(o||(o=xa(c,r)),r.approximateLength+=o.length+1,!(16&r.flags)&&l&&ss(l)&&ss(l).get(c.escapedName)&&Oi(ss(l).get(c.escapedName),c)){var d=_(t,n-1,a);return e.isIndexedAccessTypeNode(d)?e.factory.createIndexedAccessTypeNode(d,e.factory.createLiteralTypeNode(e.factory.createStringLiteral(o))):e.factory.createIndexedAccessTypeNode(e.factory.createTypeReferenceNode(d,s),e.factory.createLiteralTypeNode(e.factory.createStringLiteral(o)))}var p=e.setEmitFlags(e.factory.createIdentifier(o,s),16777216);if(p.symbol=c,n>a){d=_(t,n-1,a);return e.isEntityName(d)?e.factory.createQualifiedName(d,p):e.Debug.fail("Impossible construct - an export of an indexed access cannot be reachable")}return p}}function D(e,t,r){var n=Fn(t.enclosingDeclaration,e,788968,void 0,e,!1);return!!n&&!(262144&n.flags&&n===r.symbol)}function w(t,r){var n;if(4&r.flags&&r.typeParameterNames){var i=r.typeParameterNames.get(Zl(t));if(i)return i}var a=T(t.symbol,r,788968,!0);if(!(78&a.kind))return e.factory.createIdentifier("(Missing type parameter)");if(4&r.flags){for(var o=a.escapedText,s=0,c=o;(null===(n=r.typeParameterNamesByText)||void 0===n?void 0:n.has(c))||D(c,r,t);)c=o+"_"+ ++s;c!==o&&(a=e.factory.createIdentifier(c,a.typeArguments)),(r.typeParameterNames||(r.typeParameterNames=new e.Map)).set(Zl(t),a),(r.typeParameterNamesByText||(r.typeParameterNamesByText=new e.Set)).add(a.escapedText)}return a}function T(t,r,n,i){var a=y(t,r,n);return!i||1===a.length||r.encounteredError||65536&r.flags||(r.encounteredError=!0),function t(n,i){var a=k(n,i,r),o=n[i];0===i&&(r.flags|=16777216);var s=xa(o,r);0===i&&(r.flags^=16777216);var c=e.setEmitFlags(e.factory.createIdentifier(s,a),16777216);return c.symbol=o,i>0?e.factory.createQualifiedName(t(n,i-1),c):c}(a,a.length-1)}function C(t,r,n){var i=y(t,r,n);return function t(n,i){var a=k(n,i,r),o=n[i];0===i&&(r.flags|=16777216);var s=xa(o,r);0===i&&(r.flags^=16777216);var c=s.charCodeAt(0);if(e.isSingleOrDoubleQuote(c)&&e.some(o.declarations,oa))return e.factory.createStringLiteral(E(o,r));var l=35===c?s.length>1&&e.isIdentifierStart(s.charCodeAt(1),V):e.isIdentifierStart(c,V);if(0===i||l){var u=e.setEmitFlags(e.factory.createIdentifier(s,a),16777216);return u.symbol=o,i>0?e.factory.createPropertyAccessExpression(t(n,i-1),u):u}91===c&&(c=(s=s.substring(1,s.length-1)).charCodeAt(0));var d=void 0;return e.isSingleOrDoubleQuote(c)?d=e.factory.createStringLiteral(s.substring(1,s.length-1).replace(/\\./g,(function(e){return e.substring(1)})),39===c):""+ +s===s&&(d=e.factory.createNumericLiteral(+s)),d||((d=e.setEmitFlags(e.factory.createIdentifier(s,a),16777216)).symbol=o),e.factory.createElementAccessExpression(t(n,i-1),d)}(i,i.length-1)}function A(t){var r=e.getNameOfDeclaration(t);return!!r&&e.isStringLiteral(r)}function N(t){var r=e.getNameOfDeclaration(t);return!!(r&&e.isStringLiteral(r)&&(r.singleQuote||!e.nodeIsSynthesized(r)&&e.startsWith(e.getTextOfNode(r,!1),"'")))}function P(t,r){var n=!!e.length(t.declarations)&&e.every(t.declarations,N),i=function(t,r,n){var i=Tn(t).nameType;if(i){if(384&i.flags){var a=""+i.value;return e.isIdentifierText(a,J.target)||R_(a)?R_(a)&&e.startsWith(a,"-")?e.factory.createComputedPropertyName(e.factory.createNumericLiteral(+a)):I(a):e.factory.createStringLiteral(a,!!n)}if(8192&i.flags)return e.factory.createComputedPropertyName(C(i.symbol,r,111551))}}(t,r,n);return i||(e.isKnownSymbol(t)?e.factory.createComputedPropertyName(e.factory.createPropertyAccessExpression(e.factory.createIdentifier("Symbol"),t.escapedName.substr(3))):I(e.unescapeLeadingUnderscores(t.escapedName),!!e.length(t.declarations)&&e.every(t.declarations,A),n))}function I(t,r,n){return e.isIdentifierText(t,J.target)?e.factory.createIdentifier(t):!r&&R_(t)&&+t>=0?e.factory.createNumericLiteral(+t):e.factory.createStringLiteral(t,!!n)}function F(t,r){return t.declarations&&e.find(t.declarations,(function(t){return!(!e.getEffectiveTypeAnnotationNode(t)||r&&!e.findAncestor(t,(function(e){return e===r})))}))}function M(t,r){return!(4&e.getObjectFlags(r))||!e.isTypeReferenceNode(t)||e.length(t.typeArguments)>=Nc(r.target.typeParameters)}function L(t,r,n,i,a,o){if(r!==we&&i){var c=F(n,i);if(c&&!e.isFunctionLikeDeclaration(c)){var l=e.getEffectiveTypeAnnotationNode(c);if(xd(l)===r&&M(l,r)){var u=B(t,l,a,o);if(u)return u}}}var d=t.flags;8192&r.flags&&r.symbol===n&&(!t.enclosingDeclaration||e.some(n.declarations,(function(r){return e.getSourceFileOfNode(r)===e.getSourceFileOfNode(t.enclosingDeclaration)})))&&(t.flags|=1048576);var p=s(r,t);return t.flags=d,p}function j(t,r,n){var i,a,o=!1,s=e.getFirstIdentifier(t);if(e.isInJSFile(t)&&(e.isExportsIdentifier(s)||e.isModuleExportsAccessExpression(s.parent)||e.isQualifiedName(s.parent)&&e.isModuleIdentifier(s.parent.left)&&e.isExportsIdentifier(s.parent.right)))return{introducesError:o=!0,node:t};var c=fi(s,67108863,!0,!0);if(c&&(0!==ra(c,r.enclosingDeclaration,67108863,!1).accessibility?o=!0:(null===(a=null===(i=r.tracker)||void 0===i?void 0:i.trackSymbol)||void 0===a||a.call(i,c,r.enclosingDeclaration,67108863),null==n||n(c)),e.isIdentifier(t))){var l=262144&c.flags?w(Jo(c),r):e.factory.cloneNode(t);return l.symbol=c,{introducesError:o,node:e.setEmitFlags(e.setOriginalNode(l,t),16777216)}}return{introducesError:o,node:t}}function B(r,i,a,o){n&&n.throwIfCancellationRequested&&n.throwIfCancellationRequested();var c=!1,l=e.getSourceFileOfNode(i),u=e.visitNode(i,(function n(i){if(e.isJSDocAllType(i)||313===i.kind)return e.factory.createKeywordTypeNode(129);if(e.isJSDocUnknownType(i))return e.factory.createKeywordTypeNode(153);if(e.isJSDocNullableType(i))return e.factory.createUnionTypeNode([e.visitNode(i.type,n),e.factory.createLiteralTypeNode(e.factory.createNull())]);if(e.isJSDocOptionalType(i))return e.factory.createUnionTypeNode([e.visitNode(i.type,n),e.factory.createKeywordTypeNode(151)]);if(e.isJSDocNonNullableType(i))return e.visitNode(i.type,n);if(e.isJSDocVariadicType(i))return e.factory.createArrayTypeNode(e.visitNode(i.type,n));if(e.isJSDocTypeLiteral(i))return e.factory.createTypeLiteralNode(e.map(i.jsDocPropertyTags,(function(t){var a=e.isIdentifier(t.name)?t.name:t.name.right,o=Na(xd(i),a.escapedText),c=o&&t.typeExpression&&xd(t.typeExpression.type)!==o?s(o,r):void 0;return e.factory.createPropertySignature(void 0,a,t.isBracketed||t.typeExpression&&e.isJSDocOptionalType(t.typeExpression.type)?e.factory.createToken(57):void 0,c||t.typeExpression&&e.visitNode(t.typeExpression.type,n)||e.factory.createKeywordTypeNode(129))})));if(e.isTypeReferenceNode(i)&&e.isIdentifier(i.typeName)&&""===i.typeName.escapedText)return e.setOriginalNode(e.factory.createKeywordTypeNode(129),i);if((e.isExpressionWithTypeArguments(i)||e.isTypeReferenceNode(i))&&e.isJSDocIndexSignature(i))return e.factory.createTypeLiteralNode([e.factory.createIndexSignature(void 0,void 0,[e.factory.createParameterDeclaration(void 0,void 0,void 0,"x",void 0,e.visitNode(i.typeArguments[0],n))],e.visitNode(i.typeArguments[1],n))]);if(e.isJSDocFunctionType(i)){var u;return e.isJSDocConstructSignature(i)?e.factory.createConstructorTypeNode(i.modifiers,e.visitNodes(i.typeParameters,n),e.mapDefined(i.parameters,(function(t,r){return t.name&&e.isIdentifier(t.name)&&"new"===t.name.escapedText?void(u=t.type):e.factory.createParameterDeclaration(void 0,void 0,g(t),_(t,r),t.questionToken,e.visitNode(t.type,n),void 0)})),e.visitNode(u||i.type,n)||e.factory.createKeywordTypeNode(129)):e.factory.createFunctionTypeNode(e.visitNodes(i.typeParameters,n),e.map(i.parameters,(function(t,r){return e.factory.createParameterDeclaration(void 0,void 0,g(t),_(t,r),t.questionToken,e.visitNode(t.type,n),void 0)})),e.visitNode(i.type,n)||e.factory.createKeywordTypeNode(129))}if(e.isTypeReferenceNode(i)&&e.isInJSDoc(i)&&(!M(i,xd(i))||xl(i)||ke===ml(fl(i),788968,!0)))return e.setOriginalNode(s(xd(i),r),i);if(e.isLiteralImportTypeNode(i)){var d=Cn(i).resolvedSymbol;return!e.isInJSDoc(i)||!d||(i.isTypeOf||788968&d.flags)&&e.length(i.typeArguments)>=Nc(Eo(d))?e.factory.updateImportTypeNode(i,e.factory.updateLiteralTypeNode(i.argument,function(n,i){if(o){if(r.tracker&&r.tracker.moduleResolverHost){var a=jE(n);if(a){var s={getCanonicalFileName:e.createGetCanonicalFileName(!!t.useCaseSensitiveFileNames),getCurrentDirectory:function(){return r.tracker.moduleResolverHost.getCurrentDirectory()},getCommonSourceDirectory:function(){return r.tracker.moduleResolverHost.getCommonSourceDirectory()}},c=e.getResolvedExternalModuleName(s,a);return e.factory.createStringLiteral(c)}}}else if(r.tracker&&r.tracker.trackExternalModuleSymbolOfImportTypeNode){var l=_i(i,i,void 0);l&&r.tracker.trackExternalModuleSymbolOfImportTypeNode(l)}return i}(i,i.argument.literal)),i.qualifier,e.visitNodes(i.typeArguments,n,e.isTypeNode),i.isTypeOf):e.setOriginalNode(s(xd(i),r),i)}if(e.isEntityName(i)||e.isEntityNameExpression(i)){var p=j(i,r,a),f=p.introducesError,m=p.node;if(c=c||f,m!==i)return m}l&&e.isTupleTypeNode(i)&&e.getLineAndCharacterOfPosition(l,i.pos).line===e.getLineAndCharacterOfPosition(l,i.end).line&&e.setEmitFlags(i,1);return e.visitEachChild(i,n,e.nullTransformationContext);function g(t){return t.dotDotDotToken||(t.type&&e.isJSDocVariadicType(t.type)?e.factory.createToken(25):void 0)}function _(t,r){return t.name&&e.isIdentifier(t.name)&&"this"===t.name.escapedText?"this":g(t)?"args":"arg"+r}}));if(!c)return u===i?e.setTextRange(e.factory.cloneNode(i),i):u}}(),ne=e.createSymbolTable(),ie=yn(4,"undefined");ie.declarations=[];var ae=yn(1536,"globalThis",8);ae.exports=ne,ae.declarations=[],ne.set(ae.escapedName,ae);var oe,se=yn(4,"arguments"),ce=yn(4,"require"),le={getNodeCount:function(){return e.sum(t.getSourceFiles(),"nodeCount")},getIdentifierCount:function(){return e.sum(t.getSourceFiles(),"identifierCount")},getSymbolCount:function(){return e.sum(t.getSourceFiles(),"symbolCount")+v},getTypeCatalog:function(){return w},getTypeCount:function(){return y},getInstantiationCount:function(){return k},getRelationCacheSizes:function(){return{assignable:an.size,identity:sn.size,subtype:rn.size,strictSubtype:nn.size}},isUndefinedSymbol:function(e){return e===ie},isArgumentsSymbol:function(e){return e===se},isUnknownSymbol:function(e){return e===ke},getMergedSymbol:Ci,getDiagnostics:Jx,getGlobalDiagnostics:function(){return Vx(),Qr.getGlobalDiagnostics()},getRecursionIdentity:Xp,getTypeOfSymbolAtLocation:function(t,r){var n=e.getParseTreeNode(r);return n?function(t,r){if(t=t.exportSymbol||t,78===r.kind&&(e.isRightSideOfQualifiedNameOrPropertyAccess(r)&&(r=r.parent),e.isExpressionNode(r)&&!e.isAssignmentTarget(r))){var n=ub(r);if(Ri(Cn(r).resolvedSymbol)===t)return n}return _o(t)}(t,n):we},getSymbolsOfParameterPropertyDeclaration:function(t,r){var n=e.getParseTreeNode(t,e.isParameter);return void 0===n?e.Debug.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):function(t,r){var n=t.parent,i=t.parent.parent,a=Nn(n.locals,r,111551),o=Nn(ss(i.symbol),r,111551);if(a&&o)return[a,o];return e.Debug.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}(n,e.escapeLeadingUnderscores(r))},getDeclaredTypeOfSymbol:Jo,getPropertiesOfType:Hs,getPropertyOfType:function(t,r){return gc(t,e.escapeLeadingUnderscores(r))},getPrivateIdentifierPropertyOfType:function(t,r,n){var i=e.getParseTreeNode(n);if(i){var a=Sh(e.escapeLeadingUnderscores(r),i);return a?Dh(t,a):void 0}},getTypeOfPropertyOfType:function(t,r){return Na(t,e.escapeLeadingUnderscores(r))},getIndexInfoOfType:bc,getSignaturesOfType:hc,getIndexTypeOfType:kc,getBaseTypes:Po,getBaseTypeOfLiteralType:mf,getWidenedType:Hf,getTypeFromTypeNode:function(t){var r=e.getParseTreeNode(t,e.isTypeNode);return r?xd(r):we},getParameterType:nv,getPromisedTypeOfPromise:zb,getAwaitedType:function(e){return qb(e)},getReturnTypeOfSignature:Bc,isNullableType:mh,getNullableType:Af,getNonNullableType:Pf,getNonOptionalType:Of,getTypeArguments:ll,typeToTypeNode:re.typeToTypeNode,indexInfoToIndexSignatureDeclaration:re.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:re.signatureToSignatureDeclaration,symbolToEntityName:re.symbolToEntityName,symbolToExpression:re.symbolToExpression,symbolToTypeParameterDeclarations:re.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:re.symbolToParameterDeclaration,typeParameterToDeclaration:re.typeParameterToDeclaration,getSymbolsInScope:function(t,r){var n=e.getParseTreeNode(t);return n?function(t,r){if(16777216&t.flags)return[];var n=e.createSymbolTable(),i=!1;return a(),n.delete("this"),Sc(n);function a(){for(;t;){switch(t.locals&&!An(t)&&s(t.locals,r),t.kind){case 300:if(!e.isExternalOrCommonJsModule(t))break;case 259:s(Ai(t).exports,2623475&r);break;case 258:s(Ai(t).exports,8&r);break;case 223:t.name&&o(t.symbol,r);case 254:case 256:i||s(ss(Ai(t)),788968&r);break;case 209:t.name&&o(t.symbol,r)}e.introducesArgumentsExoticObject(t)&&o(se,r),i=e.hasSyntacticModifier(t,32),t=t.parent}s(ne,r)}function o(t,r){if(e.getCombinedLocalAndExportSymbolFlags(t)&r){var i=t.escapedName;n.has(i)||n.set(i,t)}}function s(e,t){t&&e.forEach((function(e){o(e,t)}))}}(n,r):[]},getSymbolAtLocation:function(t){var r=e.getParseTreeNode(t);return r?Xx(r,!0):void 0},getShorthandAssignmentValueSymbol:function(t){var r=e.getParseTreeNode(t);return r?function(e){if(e&&292===e.kind)return fi(e.name,2208703);return}(r):void 0},getExportSpecifierLocalTargetSymbol:function(t){var r=e.getParseTreeNode(t,e.isExportSpecifier);return r?function(t){return e.isExportSpecifier(t)?t.parent.parent.moduleSpecifier?Qn(t.parent.parent,t):fi(t.propertyName||t.name,2998271):fi(t,2998271)}(r):void 0},getExportSymbolOfSymbol:function(e){return Ci(e.exportSymbol||e)},getTypeAtLocation:function(t){var r=e.getParseTreeNode(t);return r?Qx(r):we},tryGetTypeAtLocationWithoutCheck:function(t){var r=e.getParseTreeNode(t);return r?function(t){if(e.isSourceFile(t)&&!e.isExternalModule(t))return we;if(16777216&t.flags)return we;var r=e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments(t),n=r&&Oo(Ai(r.class));if(e.isPartOfTypeNode(t)){var i=xd(t);return n?ls(i,n.thisType):i}if(e.isExpressionNode(t))return eE(t,32);return Qx(t)}(r):we},getTypeOfAssignmentPattern:function(t){var r=e.getParseTreeNode(t,e.isAssignmentPattern);return r&&Zx(r)||we},getPropertySymbolOfDestructuringAssignment:function(t){var r=e.getParseTreeNode(t,e.isIdentifier);return r?function(t){var r=Zx(e.cast(t.parent.parent,e.isAssignmentPattern));return r&&gc(r,t.escapedText)}(r):void 0},signatureToString:function(t,r,n,i){return ua(t,e.getParseTreeNode(r),n,i)},typeToString:function(t,r,n){return da(t,e.getParseTreeNode(r),n)},symbolToString:function(t,r,n,i){return la(t,e.getParseTreeNode(r),n,i)},typePredicateToString:function(t,r,n){return ha(t,e.getParseTreeNode(r),n)},writeSignature:function(t,r,n,i,a){return ua(t,e.getParseTreeNode(r),n,i,a)},writeType:function(t,r,n,i){return da(t,e.getParseTreeNode(r),n,i)},writeSymbol:function(t,r,n,i,a){return la(t,e.getParseTreeNode(r),n,i,a)},writeTypePredicate:function(t,r,n,i){return ha(t,e.getParseTreeNode(r),n,i)},getAugmentedPropertiesOfType:nE,getRootSymbols:function t(r){var n=function(t){if(6&e.getCheckFlags(t))return e.mapDefined(Tn(t).containingType.types,(function(e){return gc(e,t.escapedName)}));if(33554432&t.flags){var r=t,n=r.leftSpread,i=r.rightSpread,a=r.syntheticOrigin;return n?[n,i]:a?[a]:e.singleElementArray(function(e){var t,r=e;for(;r=Tn(r).target;)t=r;return t}(t))}return}(r);return n?e.flatMap(n,t):[r]},getSymbolOfExpando:Ry,getContextualType:function(t,r){var n=e.getParseTreeNode(t,e.isExpression);if(n){var i=e.findAncestor(n,e.isCallLikeExpression),a=i&&Cn(i).resolvedSignature;if(4&r&&i){var o=n;do{Cn(o).skipDirectInference=!0,o=o.parent}while(o&&o!==i);Cn(i).resolvedSignature=void 0}var s=x_(n,r);if(4&r&&i){o=n;do{Cn(o).skipDirectInference=void 0,o=o.parent}while(o&&o!==i);Cn(i).resolvedSignature=a}return s}},getContextualTypeForObjectLiteralElement:function(t){var r=e.getParseTreeNode(t,e.isObjectLiteralElementLike);return r?m_(r):void 0},getContextualTypeForArgumentAtIndex:function(t,r){var n=e.getParseTreeNode(t,e.isCallLikeExpression);return n&&c_(n,r)},getContextualTypeForJsxAttribute:function(t){var r=e.getParseTreeNode(t,e.isJsxAttributeLike);return r&&h_(r)},isContextSensitive:Qd,getFullyQualifiedName:pi,tryGetResolvedSignatureWithoutCheck:function(e,t,r){return ue(e,t,r,32)},getResolvedSignature:function(e,t,r){return ue(e,t,r,0)},getResolvedSignatureForSignatureHelp:function(e,t,r){return ue(e,t,r,16)},getExpandedParameters:gs,hasEffectiveRestParameter:cv,getConstantValue:function(t){var r=e.getParseTreeNode(t,SE);return r?DE(r):void 0},isValidPropertyAccess:function(t,r){var n=e.getParseTreeNode(t,e.isPropertyAccessOrQualifiedNameOrImportTypeNode);return!!n&&function(e,t){switch(e.kind){case 202:return jh(e,106===e.expression.kind,t,Hf(fb(e.expression)));case 158:return jh(e,!1,t,Hf(fb(e.left)));case 196:return jh(e,!1,t,xd(e))}}(n,e.escapeLeadingUnderscores(r))},isValidPropertyAccessForCompletions:function(t,r,n){var i=e.getParseTreeNode(t,e.isPropertyAccessExpression);return!!i&&function(e,t,r){return jh(e,202===e.kind&&106===e.expression.kind,r.escapedName,t)}(i,r,n)},getSignatureFromDeclaration:function(t){var r=e.getParseTreeNode(t,e.isFunctionLike);return r?Ic(r):void 0},isImplementationOfOverload:function(t){var r=e.getParseTreeNode(t,e.isFunctionLike);return r?hE(r):void 0},getImmediateAliasedSymbol:j_,getAliasedSymbol:ai,getEmitResolver:function(e,t){return Jx(e,t),te},getExportsOfModule:xi,getExportsAndPropertiesOfModule:function(t){var r=xi(t),n=vi(t);n!==t&&e.addRange(r,Hs(_o(n)));return r},getSymbolWalker:e.createGetSymbolWalker((function(e){return qc(e)||Ee}),jc,Bc,Po,Us,_o,Am,vc,Ws,e.getFirstIdentifier,ll),getAmbientModules:function(){gt||(gt=[],ne.forEach((function(e,t){c.test(t)&>.push(e)})));return gt},getJsxIntrinsicTagNamesAt:function(t){var r=W_(N.IntrinsicElements,t);return r?Hs(r):e.emptyArray},isOptionalParameter:function(t){var r=e.getParseTreeNode(t,e.isParameter);return!!r&&Tc(r)},tryGetMemberInModuleExports:function(t,r){return Ei(e.escapeLeadingUnderscores(t),r)},tryGetMemberInModuleExportsAndProperties:function(t,r){return function(t,r){var n=Ei(t,r);if(n)return n;var i=vi(r);if(i===r)return;var a=_o(i);return 131068&a.flags||1&e.getObjectFlags(a)||uf(a)?void 0:gc(a,t)}(e.escapeLeadingUnderscores(t),r)},tryFindAmbientModuleWithoutAugmentations:function(e){return wc(e,!1)},getApparentType:ac,getUnionType:ou,isTypeAssignableTo:cp,createAnonymousType:Wi,createSignature:ds,createSymbol:yn,createIndexInfo:Qc,getAnyType:function(){return Ee},getStringType:function(){return Re},getNumberType:function(){return Me},createPromiseType:_v,createArrayType:jl,getElementTypeOfArrayType:of,getBooleanType:function(){return qe},getFalseType:function(e){return e?je:Be},getTrueType:function(e){return e?ze:Ue},getVoidType:function(){return Ve},getUndefinedType:function(){return Ne},getNullType:function(){return Fe},getESSymbolType:function(){return Je},getNeverType:function(){return He},getOptionalType:function(){return Ie},isSymbolAccessible:ra,isArrayType:rf,isTupleType:vf,isArrayLikeType:sf,isTypeInvalidDueToUnionDiscriminant:function(e,t){return t.properties.some((function(t){var r=t.name&&vu(t.name),n=r&&Zo(r)?is(r):void 0,i=void 0===n?void 0:Na(e,n);return!!i&&ff(i)&&!cp(Qx(t),i)}))},getAllPossiblePropertiesOfTypes:function(t){var r=ou(t);if(!(1048576&r.flags))return nE(r);for(var n=e.createSymbolTable(),i=0,a=t;i<a.length;i++)for(var o=0,s=nE(a[i]);o<s.length;o++){var c=s[o].escapedName;if(!n.has(c)){var l=sc(r,c);l&&n.set(c,l)}}return e.arrayFrom(n.values())},getSuggestedSymbolForNonexistentProperty:Ph,getSuggestionForNonexistentProperty:Fh,getSuggestedSymbolForNonexistentJSXAttribute:Ih,getSuggestedSymbolForNonexistentSymbol:function(t,r,n){return Oh(t,e.escapeLeadingUnderscores(r),n)},getSuggestionForNonexistentSymbol:function(t,r,n){return function(t,r,n){var i=Oh(t,r,n);return i&&e.symbolName(i)}(t,e.escapeLeadingUnderscores(r),n)},getSuggestedSymbolForNonexistentModule:Rh,getSuggestionForNonexistentExport:function(t,r){var n=Rh(t,r);return n&&e.symbolName(n)},getBaseConstraintOfType:Qs,getDefaultFromTypeParameter:function(e){return e&&262144&e.flags?nc(e):void 0},resolveName:function(t,r,n,i){return Fn(r,e.escapeLeadingUnderscores(t),n,void 0,void 0,!1,i)},getJsxNamespace:function(t){return e.unescapeLeadingUnderscores(un(t))},getJsxFragmentFactory:function(t){var r=LE(t);return r&&e.unescapeLeadingUnderscores(e.getFirstIdentifier(r).escapedText)},getAccessibleSymbolChain:Yi,getTypePredicateOfSignature:jc,resolveExternalModuleName:function(t){var r=e.getParseTreeNode(t,e.isExpression);return r&&gi(r,r,!0)},resolveExternalModuleSymbol:vi,tryGetThisTypeAt:function(t,r){var n=e.getParseTreeNode(t);return n&&Yg(n,r)},getTypeArgumentConstraint:function(t){var r=e.getParseTreeNode(t,e.isTypeNode);return r&&function(t){var r=e.tryCast(t.parent,e.isTypeReferenceType);if(!r)return;var n=Nb(r),i=Ws(n[r.typeArguments.indexOf(t)]);return i&&Wd(i,Td(n,Cb(r,n)))}(r)},getSuggestionDiagnostics:function(r,i){var o,s=e.getParseTreeNode(r,e.isSourceFile)||e.Debug.fail("Could not determine parsed source file.");if(e.skipTypeChecking(s,J,t)||s.isDeclarationFile&&J.needDoArkTsLinter)return e.emptyArray;try{return n=i,zx(s),e.Debug.assert(!!(1&Cn(s).flags)),o=e.addRange(o,Zr.getDiagnostics(s.fileName)),ek(qx(s),(function(t,r,n){e.containsParseError(t)||Ux(r,!!(8388608&t.flags))||(o||(o=[])).push(a(a({},n),{category:e.DiagnosticCategory.Suggestion}))})),o||e.emptyArray}finally{n=void 0}},runWithCancellationToken:function(e,t){try{return n=e,t(le)}finally{n=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:Eo,isDeclarationVisible:Ea};function ue(t,r,n,i){var a=e.getParseTreeNode(t,e.isCallLikeExpression);oe=n;var o=a?Iy(a,r,i):void 0;return oe=void 0,o}var de=new e.Map,pe=new e.Map,fe=new e.Map,me=new e.Map,ge=new e.Map,_e=new e.Map,he=new e.Map,ye=new e.Map,ve=[],be=new e.Map,ke=yn(4,"unknown"),xe=yn(0,"__resolving__"),Ee=zi(1,"any"),Se=zi(1,"any"),De=zi(1,"any"),we=zi(1,"error"),Te=zi(1,"any",524288),Ce=zi(1,"intrinsic"),Ae=zi(2,"unknown"),Ne=zi(32768,"undefined"),Pe=W?Ne:zi(32768,"undefined",524288),Ie=zi(32768,"undefined"),Fe=zi(65536,"null"),Oe=W?Fe:zi(65536,"null",524288),Re=zi(4,"string"),Me=zi(8,"number"),Le=zi(64,"bigint"),je=zi(512,"false"),Be=zi(512,"false"),ze=zi(512,"true"),Ue=zi(512,"true");ze.regularType=Ue,ze.freshType=ze,Ue.regularType=Ue,Ue.freshType=ze,je.regularType=Be,je.freshType=je,Be.regularType=Be,Be.freshType=je;var qe=Ui([Be,Ue]);Ui([Be,ze]),Ui([je,Ue]),Ui([je,ze]);var Je=zi(4096,"symbol"),Ve=zi(16384,"void"),He=zi(131072,"never"),Ke=zi(131072,"never"),We=zi(131072,"never",2097152),Ge=zi(131072,"never"),$e=zi(131072,"never"),Ye=zi(67108864,"object"),Xe=ou([Re,Me,Je]),Qe=Z?Re:Xe,Ze=ou([Me,Le]),et=ou([Re,Me,qe,Le,Fe,Ne]),tt=Nd((function(e){return 262144&e.flags?(t=e).constraint===Ae?t:t.restrictiveInstantiation||(t.restrictiveInstantiation=Ji(t.symbol),t.restrictiveInstantiation.constraint=Ae,t.restrictiveInstantiation):e;var t})),rt=Nd((function(e){return 262144&e.flags?De:e})),nt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),it=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0);it.objectFlags|=4096;var at=yn(2048,"__type");at.members=e.createSymbolTable();var ot=Wi(at,T,e.emptyArray,e.emptyArray,void 0,void 0),st=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0);st.instantiations=new e.Map;var ct=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0);ct.objectFlags|=2097152;var lt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),ut=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),dt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0),pt=Ji(),ft=Ji();ft.constraint=pt;var mt,gt,_t,ht,yt,vt,bt,kt,xt,Et,St,Dt,wt,Tt,Ct,At,Nt,Pt,It,Ft,Ot,Rt,Mt,Lt,jt,Bt,zt,Ut,qt,Jt,Vt,Ht,Kt,Wt,Gt,$t,Yt,Xt,Qt,Zt,er,tr,rr,nr,ir,ar,or,sr=Ji(),cr=Ac(1,"<<unresolved>>",0,Ee),lr=ds(void 0,void 0,void 0,e.emptyArray,Ee,void 0,0,0),ur=ds(void 0,void 0,void 0,e.emptyArray,we,void 0,0,0),dr=ds(void 0,void 0,void 0,e.emptyArray,Ee,void 0,0,0),pr=ds(void 0,void 0,void 0,e.emptyArray,Ke,void 0,0,0),fr=Qc(Re,!0),mr=new e.Map,gr={get yieldType(){return e.Debug.fail("Not supported")},get returnType(){return e.Debug.fail("Not supported")},get nextType(){return e.Debug.fail("Not supported")}},_r=Mk(Ee,Ee,Ee),hr=Mk(Ee,Ee,Ae),yr=Mk(He,Ee,Ne),vr={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:function(e){return Wt||(Wt=Al("AsyncIterator",3,e))||st},getGlobalIterableType:function(e){return Kt||(Kt=Al("AsyncIterable",1,e))||st},getGlobalIterableIteratorType:function(e){return Gt||(Gt=Al("AsyncIterableIterator",1,e))||st},getGlobalGeneratorType:function(e){return $t||($t=Al("AsyncGenerator",3,e))||st},resolveIterationType:qb,mustHaveANextMethodDiagnostic:e.Diagnostics.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:e.Diagnostics.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:e.Diagnostics.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},br={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:function(e){return Ut||(Ut=Al("Iterator",3,e))||st},getGlobalIterableType:Ol,getGlobalIterableIteratorType:function(e){return qt||(qt=Al("IterableIterator",1,e))||st},getGlobalGeneratorType:function(e){return Jt||(Jt=Al("Generator",3,e))||st},resolveIterationType:function(e,t){return e},mustHaveANextMethodDiagnostic:e.Diagnostics.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:e.Diagnostics.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:e.Diagnostics.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},kr=new e.Map,xr=!1,Er=new e.Map,Sr=0,Dr=0,wr=0,Tr=!1,Cr=0,Ar=hd(""),Nr=hd(0),Pr=hd({negative:!1,base10Value:"0"}),Ir=[],Fr=[],Or=[],Rr=0,Mr=10,Lr=[],jr=[],Br=[],zr=[],Ur=[],qr=[],Jr=[],Vr=[],Hr=[],Kr=[],Wr=[],Gr=[],$r=[],Yr=[],Xr=[],Qr=e.createDiagnosticCollection(),Zr=e.createDiagnosticCollection(),en=new e.Map(e.getEntries({string:Re,number:Me,bigint:Le,boolean:qe,symbol:Je,undefined:Ne})),tn=ou(e.arrayFrom(E.keys(),hd)),rn=new e.Map,nn=new e.Map,an=new e.Map,on=new e.Map,sn=new e.Map,cn=new e.Map,ln=e.createSymbolTable();return ln.set(ie.escapedName,ie),function(){for(var r=0,n=t.getSourceFiles();r<n.length;r++){var i=n[r];e.bindSourceFile(i,J)}var a;mt=new e.Map;for(var o=0,s=t.getSourceFiles();o<s.length;o++){if(!(i=s[o]).redirectInfo){if(!e.isExternalOrCommonJsModule(i)){var c=i.locals.get("globalThis");if(c)for(var l=0,u=c.declarations;l<u.length;l++){var d=u[l];Qr.add(e.createDiagnosticForNode(d,e.Diagnostics.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"))}Dn(ne,i.locals)}if(i.jsGlobalAugmentations&&Dn(ne,i.jsGlobalAugmentations),i.patternAmbientModules&&i.patternAmbientModules.length&&(_t=e.concatenate(_t,i.patternAmbientModules)),i.moduleAugmentations.length&&(a||(a=[])).push(i.moduleAugmentations),i.symbol&&i.symbol.globalExports)i.symbol.globalExports.forEach((function(e,t){ne.has(t)||ne.set(t,e)}))}}if(a)for(var p=0,f=a;p<f.length;p++)for(var m=0,g=f[p];m<g.length;m++){var _=g[m];e.isGlobalScopeAugmentation(_.parent)&&wn(_)}(function(t,r,n){r.forEach((function(r,i){var a=t.get(i);a?e.forEach(a.declarations,function(t,r){return function(n){return Qr.add(e.createDiagnosticForNode(n,r,t))}}(e.unescapeLeadingUnderscores(i),n)):t.set(i,r)}))})(ne,ln,e.Diagnostics.Declaration_name_conflicts_with_built_in_global_identifier_0),Tn(ie).type=Pe,Tn(se).type=Al("IArguments",0,!0),Tn(ke).type=we,Tn(ae).type=qi(16,ae),xt=Al("Array",1,!0),yt=Al("Object",0,!0),vt=Al("Function",0,!0),bt=$&&Al("CallableFunction",0,!0)||vt,kt=$&&Al("NewableFunction",0,!0)||vt,St=Al("String",0,!0),Dt=Al("Number",0,!0),wt=Al("Boolean",0,!0),Tt=Al("RegExp",0,!0),At=jl(Ee),(Nt=jl(Se))===nt&&(Nt=Wi(void 0,T,e.emptyArray,e.emptyArray,void 0,void 0));if(Et=Rl("ReadonlyArray",1)||xt,Pt=Et?Ml(Et,[Ee]):At,Ct=Rl("ThisType",1),a)for(var h=0,y=a;h<y.length;h++)for(var v=0,b=y[h];v<b.length;v++){_=b[v];e.isGlobalScopeAugmentation(_.parent)||wn(_)}mt.forEach((function(t){var r=t.firstFile,n=t.secondFile,i=t.conflictingSymbols;if(i.size<8)i.forEach((function(t,r){for(var n=t.isBlockScoped,i=t.firstFileLocations,a=t.secondFileLocations,o=n?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0,s=0,c=i;s<c.length;s++){Sn(c[s],o,r,a)}for(var l=0,u=a;l<u.length;l++){Sn(u[l],o,r,i)}}));else{var a=e.arrayFrom(i.keys()).join(", ");Qr.add(e.addRelatedInfo(e.createDiagnosticForNode(r,e.Diagnostics.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,a),e.createDiagnosticForNode(n,e.Diagnostics.Conflicts_are_in_this_file))),Qr.add(e.addRelatedInfo(e.createDiagnosticForNode(n,e.Diagnostics.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,a),e.createDiagnosticForNode(r,e.Diagnostics.Conflicts_are_in_this_file)))}})),mt=void 0}(),le;function un(t){if(t){var r=e.getSourceFileOfNode(t);if(r)if(e.isJsxOpeningFragment(t)){if(r.localJsxFragmentNamespace)return r.localJsxFragmentNamespace;var n=r.pragmas.get("jsxfrag");if(n){var i=e.isArray(n)?n[0]:n;if(r.localJsxFragmentFactory=e.parseIsolatedEntityName(i.arguments.factory,V),e.visitNode(r.localJsxFragmentFactory,s),r.localJsxFragmentFactory)return r.localJsxFragmentNamespace=e.getFirstIdentifier(r.localJsxFragmentFactory).escapedText}var a=LE(t);if(a)return r.localJsxFragmentFactory=a,r.localJsxFragmentNamespace=e.getFirstIdentifier(a).escapedText}else{if(r.localJsxNamespace)return r.localJsxNamespace;var o=r.pragmas.get("jsx");if(o){i=e.isArray(o)?o[0]:o;if(r.localJsxFactory=e.parseIsolatedEntityName(i.arguments.factory,V),e.visitNode(r.localJsxFactory,s),r.localJsxFactory)return r.localJsxNamespace=e.getFirstIdentifier(r.localJsxFactory).escapedText}}}return ir||(ir="React",J.jsxFactory?(ar=e.parseIsolatedEntityName(J.jsxFactory,V),e.visitNode(ar,s),ar&&(ir=e.getFirstIdentifier(ar).escapedText)):J.reactNamespace&&(ir=e.escapeLeadingUnderscores(J.reactNamespace))),ar||(ar=e.factory.createQualifiedName(e.factory.createIdentifier(e.unescapeLeadingUnderscores(ir)),"createElement")),ir;function s(t){return e.setTextRangePosEnd(t,-1,-1),e.visitEachChild(t,s,e.nullTransformationContext)}}function dn(e,t,r,n,i,a,o){var s=pn(t,r,n,i,a,o);return s.skippedOn=e,s}function pn(t,r,n,i,a,o){var s=t?e.createDiagnosticForNode(t,r,n,i,a,o):e.createCompilerDiagnostic(r,n,i,a,o);return Qr.add(s),s}function fn(t,r){t?Qr.add(r):Zr.add(a(a({},r),{category:e.DiagnosticCategory.Suggestion}))}function mn(t,r,n,i,a,o,s){if(r.pos<0||r.end<0){if(!t)return;var c=e.getSourceFileOfNode(r);fn(t,"message"in n?e.createFileDiagnostic(c,0,0,n,i,a,o,s):e.createDiagnosticForFileFromMessageChain(c,n))}else fn(t,"message"in n?e.createDiagnosticForNode(r,n,i,a,o,s):e.createDiagnosticForNodeFromMessageChain(r,n))}function gn(t,r,n,i,a,o,s){var c=pn(t,n,i,a,o,s);if(r){var l=e.createDiagnosticForNode(t,e.Diagnostics.Did_you_forget_to_use_await);e.addRelatedInfo(c,l)}return c}function _n(t,r){var n=Array.isArray(t)?e.forEach(t,e.getJSDocDeprecatedTag):e.getJSDocDeprecatedTag(t);return n&&e.addRelatedInfo(r,e.createDiagnosticForNode(n,e.Diagnostics.The_declaration_was_marked_as_deprecated_here)),Zr.add(r),r}function hn(t,r,n){return _n(r,e.createDiagnosticForNode(t,e.Diagnostics._0_is_deprecated,n))}function yn(e,t,r){v++;var n=new g(33554432|e,t);return n.checkFlags=r||0,n}function vn(e){var t=0;return 2&e&&(t|=111551),1&e&&(t|=111550),4&e&&(t|=0),8&e&&(t|=900095),16&e&&(t|=110991),32&e&&(t|=899503),64&e&&(t|=788872),256&e&&(t|=899327),128&e&&(t|=899967),512&e&&(t|=110735),8192&e&&(t|=103359),32768&e&&(t|=46015),65536&e&&(t|=78783),262144&e&&(t|=526824),524288&e&&(t|=788968),2097152&e&&(t|=2097152),t}function bn(e,t){t.mergeId||(t.mergeId=p,p++),Lr[t.mergeId]=e}function kn(t){var r=yn(t.flags,t.escapedName);return r.declarations=t.declarations?t.declarations.slice():[],r.parent=t.parent,t.valueDeclaration&&(r.valueDeclaration=t.valueDeclaration),t.constEnumOnlyModule&&(r.constEnumOnlyModule=!0),t.members&&(r.members=new e.Map(t.members)),t.exports&&(r.exports=new e.Map(t.exports)),bn(r,t),r}function xn(t,r,n){if(void 0===n&&(n=!1),!(t.flags&vn(r.flags))||67108864&(r.flags|t.flags)){if(r===t)return t;if(!(33554432&t.flags)){var i=ii(t);if(i===ke)return r;t=kn(i)}512&r.flags&&512&t.flags&&t.constEnumOnlyModule&&!r.constEnumOnlyModule&&(t.constEnumOnlyModule=!1),t.flags|=r.flags,r.valueDeclaration&&e.setValueDeclaration(t,r.valueDeclaration),e.addRange(t.declarations,r.declarations),r.members&&(t.members||(t.members=e.createSymbolTable()),Dn(t.members,r.members,n)),r.exports&&(t.exports||(t.exports=e.createSymbolTable()),Dn(t.exports,r.exports,n)),n||bn(t,r)}else if(1024&t.flags)t!==ae&&pn(e.getNameOfDeclaration(r.declarations[0]),e.Diagnostics.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,la(t));else{var a=!!(384&t.flags||384&r.flags),o=!!(2&t.flags||2&r.flags),s=a?e.Diagnostics.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:o?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0,c=r.declarations&&e.getSourceFileOfNode(r.declarations[0]),l=t.declarations&&e.getSourceFileOfNode(t.declarations[0]),u=la(r);if(c&&l&&mt&&!a&&c!==l){var d=-1===e.comparePaths(c.path,l.path)?c:l,p=d===c?l:c,f=e.getOrUpdate(mt,d.path+"|"+p.path,(function(){return{firstFile:d,secondFile:p,conflictingSymbols:new e.Map}})),m=e.getOrUpdate(f.conflictingSymbols,u,(function(){return{isBlockScoped:o,firstFileLocations:[],secondFileLocations:[]}}));g(m.firstFileLocations,r),g(m.secondFileLocations,t)}else En(r,s,u,t),En(t,s,u,r)}return t;function g(t,r){for(var n=0,i=r.declarations;n<i.length;n++){var a=i[n];e.pushIfUnique(t,a)}}}function En(t,r,n,i){e.forEach(t.declarations,(function(e){Sn(e,r,n,i.declarations)}))}function Sn(t,r,n,i){for(var a=(e.getExpandoInitializer(t,!1)?e.getNameOfExpando(t):e.getNameOfDeclaration(t))||t,o=function(t,r,n,i,a,o){var s=t?e.createDiagnosticForNode(t,r,n,i,a,o):e.createCompilerDiagnostic(r,n,i,a,o);return Qr.lookup(s)||(Qr.add(s),s)}(a,r,n),s=function(t){var r=(e.getExpandoInitializer(t,!1)?e.getNameOfExpando(t):e.getNameOfDeclaration(t))||t;if(r===a)return"continue";o.relatedInformation=o.relatedInformation||[];var i=e.createDiagnosticForNode(r,e.Diagnostics._0_was_also_declared_here,n),s=e.createDiagnosticForNode(r,e.Diagnostics.and_here);if(e.length(o.relatedInformation)>=5||e.some(o.relatedInformation,(function(t){return 0===e.compareDiagnostics(t,s)||0===e.compareDiagnostics(t,i)})))return"continue";e.addRelatedInfo(o,e.length(o.relatedInformation)?s:i)},c=0,l=i||e.emptyArray;c<l.length;c++){s(l[c])}}function Dn(e,t,r){void 0===r&&(r=!1),t.forEach((function(t,n){var i=e.get(n);e.set(n,i?xn(i,t,r):t)}))}function wn(t){var r,n,i=t.parent;if(i.symbol.declarations[0]===i)if(e.isGlobalScopeAugmentation(i))Dn(ne,i.symbol.exports);else{var a=_i(t,t,8388608&t.parent.parent.flags?void 0:e.Diagnostics.Invalid_module_name_in_augmentation_module_0_cannot_be_found,!0);if(!a)return;if(1920&(a=vi(a)).flags)if(e.some(_t,(function(e){return a===e.symbol}))){var o=xn(i.symbol,a,!0);ht||(ht=new e.Map),ht.set(t.text,o)}else{if((null===(r=a.exports)||void 0===r?void 0:r.get("__export"))&&(null===(n=i.symbol.exports)||void 0===n?void 0:n.size))for(var s=os(a,"resolvedExports"),c=0,l=e.arrayFrom(i.symbol.exports.entries());c<l.length;c++){var u=l[c],d=u[0],p=u[1];s.has(d)&&!a.exports.has(d)&&xn(s.get(d),p)}xn(a,i.symbol)}else pn(t,e.Diagnostics.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,t.text)}else e.Debug.assert(i.symbol.declarations.length>1)}function Tn(e){if(33554432&e.flags)return e;var t=R(e);return jr[t]||(jr[t]=new I)}function Cn(e){var t=O(e);return Br[t]||(Br[t]=new F)}function An(t){return 300===t.kind&&!e.isExternalOrCommonJsModule(t)}function Nn(r,n,i,a){if(i){var o=Ci(r.get(n));if(o){if(e.Debug.assert(0==(1&e.getCheckFlags(o)),"Should never get an instantiated symbol here."),!function(r,n){if(!n||!r.declarations||!r.declarations.length)return!0;var i=e.getEtsLibs(t),a=e.getSourceFileOfNode(n).fileName.trim();if(!a)return!0;var o=null===e.sys||void 0===e.sys?void 0:e.sys.resolvePath(a);return!(!(null==o?void 0:o.endsWith(".ets"))&&!i.includes(o)&&!r.declarations.filter((function(t){if(!e.getSourceFileOfNode(t).fileName)return!0;var r=null===e.sys||void 0===e.sys?void 0:e.sys.resolvePath(e.getSourceFileOfNode(t).fileName);return-1===i.indexOf(r)})).length)}(o,a))return;if(o.flags&i)return o;if(2097152&o.flags){var s=ai(o);if(s===ke||s.flags&i)return o}}}}function Pn(r,n){var i=e.getSourceFileOfNode(r),a=e.getSourceFileOfNode(n),o=e.getEnclosingBlockScopeContainer(r);if(i!==a){if(H&&(i.externalModuleIndicator||a.externalModuleIndicator)||!e.outFile(J)||Nm(n)||8388608&r.flags)return!0;if(l(n,r))return!0;var s=t.getSourceFiles();return s.indexOf(i)<=s.indexOf(a)}if(r.pos<=n.pos&&(!e.isPropertyDeclaration(r)||!e.isThisProperty(n.parent)||r.initializer||r.exclamationToken)){if(199===r.kind){var c=e.getAncestor(n,199);return c?e.findAncestor(c,e.isBindingElement)!==e.findAncestor(r,e.isBindingElement)||r.pos<c.pos:Pn(e.getAncestor(r,251),n)}return 251===r.kind?!function(t,r){switch(t.parent.parent.kind){case 234:case 239:case 241:if(qn(r,t,o))return!0}var n=t.parent.parent;return e.isForInOrOfStatement(n)&&qn(r,n.expression,o)}(r,n):e.isClassDeclaration(r)?!e.findAncestor(n,(function(t){return e.isComputedPropertyName(t)&&t.parent.parent===r})):e.isPropertyDeclaration(r)?!u(r,n,!1):!e.isParameterPropertyDeclaration(r,r.parent)||!(99===J.target&&J.useDefineForClassFields&&e.getContainingClass(r)===e.getContainingClass(n)&&l(n,r))}return!!(273===n.parent.kind||269===n.parent.kind&&n.parent.isExportEquals)||(!(269!==n.kind||!n.isExportEquals)||(!!(4194304&n.flags||Nm(n)||e.findAncestor(n,(function(t){return e.isInterfaceDeclaration(t)||e.isTypeAliasDeclaration(t)})))||!!l(n,r)&&(99!==J.target||!J.useDefineForClassFields||!e.getContainingClass(r)||!e.isPropertyDeclaration(r)&&!e.isParameterPropertyDeclaration(r,r.parent)||!u(r,n,!0))));function l(t,r){return!!e.findAncestor(t,(function(n){if(n===o)return"quit";if(e.isFunctionLike(n))return!0;if(n.parent&&164===n.parent.kind&&n.parent.initializer===n)if(e.hasSyntacticModifier(n.parent,32)){if(166===r.kind)return!0}else if(!(164===r.kind&&!e.hasSyntacticModifier(r,32))||e.getContainingClass(t)!==e.getContainingClass(r))return!0;return!1}))}function u(t,r,n){return!(r.end>t.end)&&void 0===e.findAncestor(r,(function(r){if(r===t)return"quit";switch(r.kind){case 210:return!0;case 164:return!n||!(e.isPropertyDeclaration(t)&&r.parent===t.parent||e.isParameterPropertyDeclaration(t,t.parent)&&r.parent===t.parent.parent)||"quit";case 232:switch(r.parent.kind){case 168:case 166:case 169:return!0;default:return!1}default:return!1}}))}}function In(t,r,n){var i=e.getEmitScriptTarget(J),a=r;if(e.isParameter(n)&&a.body&&t.valueDeclaration.pos>=a.body.pos&&t.valueDeclaration.end<=a.body.end&&i>=2){var o=Cn(a);return void 0===o.declarationRequiresScopeChange&&(o.declarationRequiresScopeChange=e.forEach(a.parameters,(function(e){return s(e.name)||!!e.initializer&&s(e.initializer)}))||!1),!o.declarationRequiresScopeChange}return!1;function s(t){switch(t.kind){case 210:case 209:case 253:case 167:return!1;case 166:case 168:case 169:case 291:return s(t.name);case 164:return e.hasStaticModifier(t)?i<99||!J.useDefineForClassFields:s(t.name);default:return e.isNullishCoalesce(t)||e.isOptionalChain(t)?i<7:e.isBindingElement(t)&&t.dotDotDotToken&&e.isObjectBindingPattern(t.parent)?i<4:!e.isTypeNode(t)&&(e.forEachChild(t,s)||!1)}}}function Fn(e,t,r,n,i,a,o,s){return void 0===o&&(o=!1),On(e,t,r,n,i,a,o,Nn,s)}function On(t,r,n,i,a,o,s,c,l){var u,d,p,f,m,g,_=t,h=!1,y=t,v=!1;e:for(;t;){if(t.locals&&!An(t)&&(u=c(t.locals,r,n))){var b=!0;if(e.isFunctionLike(t)&&d&&d!==t.body?(n&u.flags&788968&&314!==d.kind&&(b=!!(262144&u.flags)&&(d===t.type||161===d.kind||160===d.kind)),n&u.flags&3&&(In(u,t,d)?b=!1:1&u.flags&&(b=161===d.kind||d===t.type&&!!e.findAncestor(u.valueDeclaration,e.isParameter)))):185===t.kind&&(b=d===t.trueType),b)break e;u=void 0}switch(h=h||Rn(t,d),t.kind){case 300:if(!e.isExternalOrCommonJsModule(t))break;v=!0;case 259:var k=Ai(t)&&Ai(t).exports||T;if(300===t.kind||e.isModuleDeclaration(t)&&8388608&t.flags&&!e.isGlobalScopeAugmentation(t)){if(u=k.get("default")){var x=e.getLocalSymbolForExportDefault(u);if(x&&u.flags&n&&x.escapedName===r)break e;u=void 0}var E=k.get(r);if(E&&2097152===E.flags&&(e.getDeclarationOfKind(E,273)||e.getDeclarationOfKind(E,272)))break}if("default"!==r&&(u=c(k,r,2623475&n))){if(!e.isSourceFile(t)||!t.commonJsModuleIndicator||u.declarations.some(e.isJSDocTypeAlias))break e;u=void 0}break;case 258:if(u=c(Ai(t).exports,r,8&n))break e;break;case 164:if(!e.hasSyntacticModifier(t,32)){var S=Li(t.parent);S&&S.locals&&c(S.locals,r,111551&n)&&(f=t)}break;case 254:case 223:case 256:if(u=c(Ai(t).members||T,r,788968&n)){if(!jn(u,t)){u=void 0;break}if(d&&e.hasSyntacticModifier(d,32))return void pn(y,e.Diagnostics.Static_members_cannot_reference_class_type_parameters);break e}if(223===t.kind&&32&n){var D=t.name;if(D&&r===D.escapedText){u=t.symbol;break e}}break;case 225:if(d===t.expression&&94===t.parent.token){var w=t.parent.parent;if(e.isClassLike(w)&&(u=c(Ai(w).members,r,788968&n)))return void(i&&pn(y,e.Diagnostics.Base_class_expressions_cannot_reference_class_type_parameters))}break;case 159:if(g=t.parent.parent,(e.isClassLike(g)||256===g.kind)&&(u=c(Ai(g).members,r,788968&n)))return void pn(y,e.Diagnostics.A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type);break;case 210:if(J.target>=2)break;case 166:case 167:case 168:case 169:case 253:if(3&n&&"arguments"===r){u=se;break e}break;case 209:if(3&n&&"arguments"===r){u=se;break e}if(16&n){var C=t.name;if(C&&r===C.escapedText){u=t.symbol;break e}}break;case 162:t.parent&&161===t.parent.kind&&(t=t.parent),t.parent&&(e.isClassElement(t.parent)||254===t.parent.kind)&&(t=t.parent);break;case 334:case 327:case 328:(O=e.getJSDocRoot(t))&&(t=O.parent);break;case 161:d&&(d===t.initializer||d===t.name&&e.isBindingPattern(d))&&(m||(m=t));break;case 199:d&&(d===t.initializer||d===t.name&&e.isBindingPattern(d))&&e.isParameterDeclaration(t)&&!m&&(m=t);break;case 186:if(262144&n){var A=t.typeParameter.name;if(A&&r===A.escapedText){u=t.typeParameter.symbol;break e}}}Mn(t)&&(p=t),d=t,t=t.parent}if(!o||!u||p&&u===p.symbol||(u.isReferenced|=n),!u){if(d&&(e.Debug.assert(300===d.kind),d.commonJsModuleIndicator&&"exports"===r&&n&d.symbol.flags))return d.symbol;s||(u=c(ne,r,n,_))}if(!u&&_&&e.isInJSFile(_)&&_.parent&&e.isRequireCall(_.parent,!1))return ce;if(u){if(i){if(f&&(99!==J.target||!J.useDefineForClassFields)){var N=f.name;return void pn(y,e.Diagnostics.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,e.declarationNameToString(N),Ln(a))}if(y&&(2&n||(32&n||384&n)&&111551==(111551&n))){var P=Ri(u);(2&P.flags||32&P.flags||384&P.flags)&&function(t,r){if(e.Debug.assert(!!(2&t.flags||32&t.flags||384&t.flags)),67108881&t.flags&&32&t.flags)return;var n=e.find(t.declarations,(function(t){return e.isBlockOrCatchScoped(t)||e.isClassLike(t)||258===t.kind}));if(void 0===n)return e.Debug.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(8388608&n.flags||Pn(n,r))){var i=void 0,a=e.declarationNameToString(e.getNameOfDeclaration(n));2&t.flags?i=pn(r,e.Diagnostics.Block_scoped_variable_0_used_before_its_declaration,a):32&t.flags?i=pn(r,e.Diagnostics.Class_0_used_before_its_declaration,a):256&t.flags?i=pn(r,e.Diagnostics.Enum_0_used_before_its_declaration,a):(e.Debug.assert(!!(128&t.flags)),e.shouldPreserveConstEnums(J)&&(i=pn(r,e.Diagnostics.Enum_0_used_before_its_declaration,a))),i&&e.addRelatedInfo(i,e.createDiagnosticForNode(n,e.Diagnostics._0_is_declared_here,a))}}(P,y)}if(u&&v&&111551==(111551&n)&&!(4194304&_.flags)){var I=Ci(u);e.length(I.declarations)&&e.every(I.declarations,(function(t){return e.isNamespaceExportDeclaration(t)||e.isSourceFile(t)&&!!t.symbol.globalExports}))&&mn(!J.allowUmdGlobalAccess,y,e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,e.unescapeLeadingUnderscores(r))}if(u&&m&&!h&&111551==(111551&n)){var F=Ci(cs(u)),O=e.getRootDeclaration(m);F===Ai(m)?pn(y,e.Diagnostics.Parameter_0_cannot_reference_itself,e.declarationNameToString(m.name)):F.valueDeclaration&&F.valueDeclaration.pos>m.pos&&O.parent.locals&&c(O.parent.locals,F.escapedName,n)===F&&pn(y,e.Diagnostics.Parameter_0_cannot_reference_identifier_1_declared_after_it,e.declarationNameToString(m.name),e.declarationNameToString(y))}u&&y&&111551&n&&2097152&u.flags&&function(t,r,n){if(!e.isValidTypeOnlyAliasUseSite(n)){var i=ci(t);if(i){var a=e.typeOnlyDeclarationIsExport(i),o=a?e.Diagnostics._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:e.Diagnostics._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,s=a?e.Diagnostics._0_was_exported_here:e.Diagnostics._0_was_imported_here,c=e.unescapeLeadingUnderscores(r);e.addRelatedInfo(pn(n,o,c),e.createDiagnosticForNode(i,s,c))}}}(u,r,y)}return u}if(i&&!(y&&(function(t,r,n){if(!e.isIdentifier(t)||t.escapedText!==r||Kx(t)||Nm(t))return!1;var i=e.getThisContainer(t,!1),a=i;for(;a;){if(e.isClassLike(a.parent)){var o=Ai(a.parent);if(!o)break;if(gc(_o(o),r))return pn(t,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,Ln(n),la(o)),!0;if(a===i&&!e.hasSyntacticModifier(a,32))if(gc(Jo(o).thisType,r))return pn(t,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,Ln(n)),!0}a=a.parent}return!1}(y,r,a)||Bn(y)||function(t,r,n){var i=1920|(e.isInJSFile(t)?111551:0);if(n===i){var a=ii(Fn(t,r,788968&~i,void 0,void 0,!1)),o=t.parent;if(a){if(e.isQualifiedName(o)){e.Debug.assert(o.left===t,"Should only be resolving left side of qualified name as a namespace");var s=o.right.escapedText;if(gc(Jo(a),s))return pn(o,e.Diagnostics.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,e.unescapeLeadingUnderscores(r),e.unescapeLeadingUnderscores(s)),!0}return pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,e.unescapeLeadingUnderscores(r)),!0}}return!1}(y,r,n)||function(t,r){if(Un(r)&&273===t.parent.kind)return pn(t,e.Diagnostics.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,r),!0;return!1}(y,r)||function(t,r,n){if(111551&n){if(Un(r))return pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,e.unescapeLeadingUnderscores(r)),!0;var i=ii(Fn(t,r,788544,void 0,void 0,!1));if(i&&!(1024&i.flags)){var a=e.unescapeLeadingUnderscores(r);return!function(e){switch(e){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}(r)?!function(t,r){var n=e.findAncestor(t.parent,(function(t){return!e.isComputedPropertyName(t)&&!e.isPropertySignature(t)&&(e.isTypeLiteralNode(t)||"quit")}));if(n&&1===n.members.length){var i=Jo(r);return!!(1048576&i.flags)&&Lv(i,384,!0)}return!1}(t,i)?pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,a):pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,a,"K"===a?"P":"K"):pn(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later,a),!0}}return!1}(y,r,n)||function(t,r,n){if(111127&n){if(ii(Fn(t,r,1024,void 0,void 0,!1)))return pn(t,e.Diagnostics.Cannot_use_namespace_0_as_a_value,e.unescapeLeadingUnderscores(r)),!0}else if(788544&n){if(ii(Fn(t,r,1536,void 0,void 0,!1)))return pn(t,e.Diagnostics.Cannot_use_namespace_0_as_a_type,e.unescapeLeadingUnderscores(r)),!0}return!1}(y,r,n)||function(t,r,n){if(788584&n){var i=ii(Fn(t,r,111127,void 0,void 0,!1));if(i&&!(1920&i.flags))return pn(t,e.Diagnostics._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,e.unescapeLeadingUnderscores(r)),!0}return!1}(y,r,n)))){var R=void 0;if(l&&Rr<Mr)if((R=Oh(_,r,n))&&R.valueDeclaration&&e.isAmbientModule(R.valueDeclaration)&&e.isGlobalScopeAugmentation(R.valueDeclaration)&&(R=void 0),R){var M=la(R),L=pn(y,l,Ln(a),M);R.valueDeclaration&&e.addRelatedInfo(L,e.createDiagnosticForNode(R.valueDeclaration,e.Diagnostics._0_is_declared_here,M))}if(!R&&a){var j=function(t){for(var r=Ln(t),n=e.getScriptTargetFeatures(),i=e.getOwnKeys(n),a=0,o=i;a<o.length;a++){var s=o[a],c=e.getOwnKeys(n[s]);if(void 0!==c&&e.contains(c,r))return s}}(a);j?pn(y,i,Ln(a),j):pn(y,i,Ln(a))}Rr++}}function Rn(t,r){return 210!==t.kind&&209!==t.kind?e.isTypeQueryNode(t)||(e.isFunctionLikeDeclaration(t)||164===t.kind&&!e.hasSyntacticModifier(t,32))&&(!r||r!==t.name):(!r||r!==t.name)&&(!(!t.asteriskToken&&!e.hasSyntacticModifier(t,256))||!e.getImmediatelyInvokedFunctionExpression(t))}function Mn(e){switch(e.kind){case 253:case 254:case 256:case 258:case 257:case 259:return!0;default:return!1}}function Ln(t){return e.isString(t)?e.unescapeLeadingUnderscores(t):e.declarationNameToString(t)}function jn(t,r){for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(160===a.kind)if((e.isJSDocTemplateTag(a.parent)?e.getJSDocHost(a.parent):a.parent)===r)return!(e.isJSDocTemplateTag(a.parent)&&e.find(a.parent.parent.tags,e.isJSDocTypeAlias))}return!1}function Bn(t){var r=zn(t);return!(!r||!fi(r,64,!0))&&(pn(t,e.Diagnostics.Cannot_extend_an_interface_0_Did_you_mean_implements,e.getTextOfNode(r)),!0)}function zn(t){switch(t.kind){case 78:case 202:return t.parent?zn(t.parent):void 0;case 225:if(e.isEntityNameExpression(t.expression))return t.expression;default:return}}function Un(e){return"any"===e||"string"===e||"number"===e||"boolean"===e||"never"===e||"unknown"===e}function qn(t,r,n){return!!r&&!!e.findAncestor(t,(function(t){return t===n||e.isFunctionLike(t)?"quit":t===r}))}function Jn(e){switch(e.kind){case 263:return e;case 265:return e.parent;case 266:return e.parent.parent;case 268:return e.parent.parent.parent;default:return}}function Vn(t){return e.find(t.declarations,Hn)}function Hn(t){return 263===t.kind||262===t.kind||265===t.kind&&!!t.name||266===t.kind||272===t.kind||268===t.kind||273===t.kind||269===t.kind&&e.exportAssignmentIsAlias(t)||e.isBinaryExpression(t)&&2===e.getAssignmentDeclarationKind(t)&&e.exportAssignmentIsAlias(t)||e.isAccessExpression(t)&&e.isBinaryExpression(t.parent)&&t.parent.left===t&&62===t.parent.operatorToken.kind&&Kn(t.parent.right)||292===t.kind||291===t.kind&&Kn(t.initializer)||e.isRequireVariableDeclaration(t,!0)}function Kn(t){return e.isAliasableExpression(t)||e.isFunctionExpression(t)&&Fy(t)}function Wn(t,r){var n=Zn(t);if(n){var i=e.getLeftmostAccessExpression(n.expression).arguments[0];return e.isIdentifier(n.name)?ii(gc(Mc(i),n.name.escapedText)):void 0}if(e.isVariableDeclaration(t)||275===t.moduleReference.kind){var a=gi(t,e.getExternalModuleRequireArgument(t)||e.getExternalModuleImportEqualsDeclarationExpression(t)),o=vi(a);return oi(t,a,o,!1),o}var s=di(t.moduleReference,r);return function(t,r){if(oi(t,void 0,r,!1)&&!t.isTypeOnly){var n=ci(Ai(t)),i=e.typeOnlyDeclarationIsExport(n),a=i?e.Diagnostics.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:e.Diagnostics.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,o=i?e.Diagnostics._0_was_exported_here:e.Diagnostics._0_was_imported_here,s=e.unescapeLeadingUnderscores(n.name.escapedText);e.addRelatedInfo(pn(t.moduleReference,a),e.createDiagnosticForNode(n,o,s))}}(t,s),s}function Gn(e,t,r,n){var i=e.exports.get("export="),a=i?gc(_o(i),t):e.exports.get(t),o=ii(a,n);return oi(r,a,o,!1),o}function $n(t){return e.isExportAssignment(t)&&!t.isExportEquals||e.hasSyntacticModifier(t,512)||e.isExportSpecifier(t)}function Yn(t,r,n){if(!K)return!1;if(!t||t.isDeclarationFile){var i=Gn(r,"default",void 0,!0);return(!i||!e.some(i.declarations,$n))&&!Gn(r,e.escapeLeadingUnderscores("__esModule"),void 0,n)}return e.isSourceFileJS(t)?!t.externalModuleIndicator&&!Gn(r,e.escapeLeadingUnderscores("__esModule"),void 0,n):ki(r)}function Xn(t,r){var n=gi(t,t.parent.moduleSpecifier);if(n){var i=void 0;i=e.isShorthandAmbientModuleSymbol(n)?n:Gn(n,"default",t,r);var a=Yn(e.find(n.declarations,e.isSourceFile),n,r);if(i||a){if(a){var o=vi(n,r)||ii(n,r);return oi(t,n,o,!1),o}}else if(ki(n)){var s=H>=e.ModuleKind.ES2015?"allowSyntheticDefaultImports":"esModuleInterop",c=n.exports.get("export=").valueDeclaration,l=pn(t.name,e.Diagnostics.Module_0_can_only_be_default_imported_using_the_1_flag,la(n),s);e.addRelatedInfo(l,e.createDiagnosticForNode(c,e.Diagnostics.This_module_is_declared_with_using_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,s))}else!function(t,r){var n,i;if(null===(n=t.exports)||void 0===n?void 0:n.has(r.symbol.escapedName))pn(r.name,e.Diagnostics.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,la(t),la(r.symbol));else{var a=pn(r.name,e.Diagnostics.Module_0_has_no_default_export,la(t)),o=null===(i=t.exports)||void 0===i?void 0:i.get("__export");if(o){var s=e.find(o.declarations,(function(t){var r,n;return!!(e.isExportDeclaration(t)&&t.moduleSpecifier&&(null===(n=null===(r=gi(t,t.moduleSpecifier))||void 0===r?void 0:r.exports)||void 0===n?void 0:n.has("default")))}));s&&e.addRelatedInfo(a,e.createDiagnosticForNode(s,e.Diagnostics.export_Asterisk_does_not_re_export_a_default))}}}(n,t);return oi(t,i,void 0,!1),i}}function Qn(t,r,n){var a;void 0===n&&(n=!1);var o=e.getExternalModuleRequireArgument(t)||t.moduleSpecifier,s=gi(t,o),c=!e.isPropertyAccessExpression(r)&&r.propertyName||r.name;if(e.isIdentifier(c)){var l=bi(s,o,n,"default"===c.escapedText&&!(!J.allowSyntheticDefaultImports&&!J.esModuleInterop));if(l&&c.escapedText){if(e.isShorthandAmbientModuleSymbol(s))return s;var u=void 0;u=s&&s.exports&&s.exports.get("export=")?gc(_o(l),c.escapedText,!0):function(e,t){if(3&e.flags){var r=e.valueDeclaration.type;if(r)return ii(gc(xd(r),t))}}(l,c.escapedText),u=ii(u,n);var d=function(e,t,r,n){if(1536&e.flags){var i=Si(e).get(t.escapedText),a=ii(i,n);return oi(r,i,a,!1),a}}(l,c,r,n);if(void 0===d&&"default"===c.escapedText)Yn(e.find(s.declarations,e.isSourceFile),s,n)&&(d=vi(s,n)||ii(s,n));var p=d&&u&&d!==u?function(t,r){if(t===ke&&r===ke)return ke;if(790504&t.flags)return t;var n=yn(t.flags|r.flags,t.escapedName);return n.declarations=e.deduplicate(e.concatenate(t.declarations,r.declarations),e.equateValues),n.parent=t.parent||r.parent,t.valueDeclaration&&(n.valueDeclaration=t.valueDeclaration),r.members&&(n.members=new e.Map(r.members)),t.exports&&(n.exports=new e.Map(t.exports)),n}(u,d):d||u;if(!p){var f=pi(s,t),m=e.declarationNameToString(c),g=Rh(c,l);if(void 0!==g){var _=la(g),h=pn(c,e.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2,f,m,_);g.valueDeclaration&&e.addRelatedInfo(h,e.createDiagnosticForNode(g.valueDeclaration,e.Diagnostics._0_is_declared_here,_))}else(null===(a=s.exports)||void 0===a?void 0:a.has("default"))?pn(c,e.Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,f,m):function(t,r,n,a,o){var s,c=null===(s=a.valueDeclaration.locals)||void 0===s?void 0:s.get(r.escapedText),l=a.exports;if(c){var u=null==l?void 0:l.get("export=");if(u)Oi(u,c)?function(t,r,n,i){if(H>=e.ModuleKind.ES2015){pn(r,J.esModuleInterop?e.Diagnostics._0_can_only_be_imported_by_using_a_default_import:e.Diagnostics._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n)}else{if(e.isInJSFile(t))pn(r,J.esModuleInterop?e.Diagnostics._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:e.Diagnostics._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n);else pn(r,J.esModuleInterop?e.Diagnostics._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:e.Diagnostics._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import,n,n,i)}}(t,r,n,o):pn(r,e.Diagnostics.Module_0_has_no_exported_member_1,o,n);else{var d=l?e.find(Sc(l),(function(e){return!!Oi(e,c)})):void 0,p=d?pn(r,e.Diagnostics.Module_0_declares_1_locally_but_it_is_exported_as_2,o,n,la(d)):pn(r,e.Diagnostics.Module_0_declares_1_locally_but_it_is_not_exported,o,n);e.addRelatedInfo.apply(void 0,i([p],e.map(c.declarations,(function(t,r){return e.createDiagnosticForNode(t,0===r?e.Diagnostics._0_is_declared_here:e.Diagnostics.and_here,n)}))))}}else pn(r,e.Diagnostics.Module_0_has_no_exported_member_1,o,n)}(t,c,m,s,f)}return p}}}function Zn(t){if(e.isVariableDeclaration(t)&&t.initializer&&e.isPropertyAccessExpression(t.initializer))return t.initializer}function ei(e,t,r){var n=e.parent.parent.moduleSpecifier?Qn(e.parent.parent,e,r):fi(e.propertyName||e.name,t,!1,r);return oi(e,void 0,n,!1),n}function ti(t,r){if(e.isClassExpression(t))return $v(t).symbol;if(e.isEntityName(t)||e.isEntityNameExpression(t)){var n=fi(t,901119,!0,r);return n||($v(t),Cn(t).resolvedSymbol)}}function ri(t,r){switch(void 0===r&&(r=!1),t.kind){case 263:case 251:return Wn(t,r);case 265:return Xn(t,r);case 266:return function(e,t){var r=e.parent.parent.moduleSpecifier,n=gi(e,r),i=bi(n,r,t,!1);return oi(e,n,i,!1),i}(t,r);case 272:return function(e,t){var r=e.parent.moduleSpecifier,n=r&&gi(e,r),i=r&&bi(n,r,t,!1);return oi(e,n,i,!1),i}(t,r);case 268:case 199:return function(t,r){var n=e.isBindingElement(t)?e.getRootDeclaration(t):t.parent.parent.parent,i=Zn(n),a=Qn(n,i||t,r),o=t.propertyName||t.name;return i&&a&&e.isIdentifier(o)?ii(gc(_o(a),o.escapedText),r):(oi(t,void 0,a,!1),a)}(t,r);case 273:return ei(t,901119,r);case 269:case 218:return function(t,r){var n=ti(e.isExportAssignment(t)?t.expression:t.right,r);return oi(t,void 0,n,!1),n}(t,r);case 262:return function(e,t){var r=vi(e.parent.symbol,t);return oi(e,void 0,r,!1),r}(t,r);case 292:return fi(t.name,901119,!0,r);case 291:return function(e,t){return ti(e.initializer,t)}(t,r);case 203:case 202:return function(t,r){if(e.isBinaryExpression(t.parent)&&t.parent.left===t&&62===t.parent.operatorToken.kind)return ti(t.parent.right,r)}(t,r);default:return e.Debug.fail()}}function ni(e,t){return void 0===t&&(t=901119),!!e&&(2097152==(e.flags&(2097152|t))||!!(2097152&e.flags&&67108864&e.flags))}function ii(e,t){return!t&&ni(e)?ai(e):e}function ai(t){e.Debug.assert(0!=(2097152&t.flags),"Should only get Alias here.");var r=Tn(t);if(r.target)r.target===xe&&(r.target=ke);else{r.target=xe;var n=Vn(t);if(!n)return e.Debug.fail();var i=ri(n);r.target===xe?r.target=i||ke:pn(n,e.Diagnostics.Circular_definition_of_import_alias_0,la(t))}return r.target}function oi(t,r,n,i){if(!t||e.isPropertyAccessExpression(t))return!1;var a=Ai(t);if(e.isTypeOnlyImportOrExportDeclaration(t))return Tn(a).typeOnlyDeclaration=t,!0;var o=Tn(a);return si(o,r,i)||si(o,n,i)}function si(t,r,n){var i,a,o;if(r&&(void 0===t.typeOnlyDeclaration||n&&!1===t.typeOnlyDeclaration)){var s=null!==(a=null===(i=r.exports)||void 0===i?void 0:i.get("export="))&&void 0!==a?a:r,c=s.declarations&&e.find(s.declarations,e.isTypeOnlyImportOrExportDeclaration);t.typeOnlyDeclaration=null!==(o=null!=c?c:Tn(s).typeOnlyDeclaration)&&void 0!==o&&o}return!!t.typeOnlyDeclaration}function ci(e){if(2097152&e.flags)return Tn(e).typeOnlyDeclaration||void 0}function li(e){var t=Ai(e),r=ai(t);r&&((r===ke||111551&r.flags&&!gE(r)&&!ci(t))&&ui(t))}function ui(t){var r=Tn(t);if(!r.referenced){r.referenced=!0;var n=Vn(t);if(!n)return e.Debug.fail();if(e.isInternalModuleImportEqualsDeclaration(n)){var i=ii(t);(i===ke||111551&i.flags)&&$v(n.moduleReference)}}}function di(t,r){return 78===t.kind&&e.isRightSideOfQualifiedNameOrPropertyAccess(t)&&(t=t.parent),78===t.kind||158===t.parent.kind?fi(t,1920,!1,r):(e.Debug.assert(263===t.parent.kind),fi(t,901119,!1,r))}function pi(e,t){return e.parent?pi(e.parent,t)+"."+la(e):la(e,t,void 0,20)}function fi(t,r,n,i,a){if(!e.nodeIsMissing(t)){var o,s=1920|(e.isInJSFile(t)?111551&r:0);if(78===t.kind){var c=r===s||e.nodeIsSynthesized(t)?e.Diagnostics.Cannot_find_namespace_0:Cm(e.getFirstIdentifier(t)),l=e.isInJSFile(t)&&!e.nodeIsSynthesized(t)?function(t,r){if(bl(t.parent)){var n=function(t){if(e.findAncestor(t,(function(t){return e.isJSDocNode(t)||4194304&t.flags?e.isJSDocTypeAlias(t):"quit"})))return;var r=e.getJSDocHost(t);if(r&&e.isExpressionStatement(r)&&e.isBinaryExpression(r.expression)&&3===e.getAssignmentDeclarationKind(r.expression)){if(i=Ai(r.expression.left))return mi(i)}if(r&&(e.isObjectLiteralMethod(r)||e.isPropertyAssignment(r))&&e.isBinaryExpression(r.parent.parent)&&6===e.getAssignmentDeclarationKind(r.parent.parent)){if(i=Ai(r.parent.parent.left))return mi(i)}var n=e.getEffectiveJSDocHost(t);if(n&&e.isFunctionLike(n)){var i;return(i=Ai(n))&&i.valueDeclaration}}(t.parent);if(n)return Fn(n,t.escapedText,r,void 0,t,!0)}}(t,r):void 0;if(!(o=Ci(Fn(a||t,t.escapedText,r,n||l?void 0:c,t,!0))))return Ci(l)}else{if(158!==t.kind&&202!==t.kind)throw e.Debug.assertNever(t,"Unknown entity name kind.");var u=158===t.kind?t.left:t.expression,d=158===t.kind?t.right:t.name,p=fi(u,s,n,!1,a);if(!p||e.nodeIsMissing(d))return;if(p===ke)return p;if(e.isInJSFile(t)&&p.valueDeclaration&&e.isVariableDeclaration(p.valueDeclaration)&&p.valueDeclaration.initializer&&Ky(p.valueDeclaration.initializer)){var f=p.valueDeclaration.initializer.arguments[0],m=gi(f,f);if(m){var g=vi(m);g&&(p=g)}}if(!(o=Ci(Nn(Si(p),d.escapedText,r)))){if(!n){var _=pi(p),h=e.declarationNameToString(d),y=Rh(d,p);y?pn(d,e.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2,_,h,la(y)):pn(d,e.Diagnostics.Namespace_0_has_no_exported_member_1,_,h)}return}}return e.Debug.assert(0==(1&e.getCheckFlags(o)),"Should never get an instantiated symbol here."),!e.nodeIsSynthesized(t)&&e.isEntityName(t)&&(2097152&o.flags||269===t.parent.kind)&&oi(e.getAliasDeclarationFromName(t),o,void 0,!0),o.flags&r||i?o:ai(o)}}function mi(t){var r=t.parent.valueDeclaration;if(r)return(e.isAssignmentDeclaration(r)?e.getAssignedExpandoInitializer(r):e.hasOnlyExpressionInitializer(r)?e.getDeclaredExpandoInitializer(r):void 0)||r}function gi(t,r,n){var i=e.getEmitModuleResolutionKind(J)===e.ModuleResolutionKind.Classic?e.Diagnostics.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:e.Diagnostics.Cannot_find_module_0_or_its_corresponding_type_declarations;return _i(t,r,n?void 0:i)}function _i(t,r,n,i){return void 0===i&&(i=!1),e.isStringLiteralLike(r)?hi(t,r.text,n,r,i):void 0}function hi(r,n,i,a,o){(void 0===o&&(o=!1),e.startsWith(n,"@types/"))&&pn(a,h=e.Diagnostics.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,e.removePrefix(n,"@types/"),n);var s=-1!==n.lastIndexOf(".so");if(!s||e.isInETSFile(r)&&J.needDoArkTsLinter&&!J.isCompatibleVersion){var c=wc(n,!0);if(c)return c;var l=e.getSourceFileOfNode(r),u=e.getResolvedModule(l,n);if(J.needDoArkTsLinter&&l&&3===l.scriptKind&&u&&(".ets"===u.extension||".d.ets"===u.extension))pn(a,J.isCompatibleVersion?e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden:e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden,n);var d=u&&e.getResolutionDiagnostic(J,u),p=u&&!d&&t.getSourceFile(u.resolvedFileName);if(p)return p.symbol?(u.isExternalLibraryImport&&!e.resolutionExtensionIsTSOrJson(u.extension)&&yi(!1,a,u,n),Ci(p.symbol)):void(i&&pn(a,e.Diagnostics.File_0_is_not_a_module,p.fileName));if(_t){var f=e.findBestPatternMatch(_t,(function(e){return e.pattern}),n);if(f){var m=ht&&ht.get(n);return Ci(m?m:f.symbol)}}if(u&&!e.resolutionExtensionIsTSOrJson(u.extension)&&void 0===d||d===e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type)o?pn(a,h=e.Diagnostics.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented,n,u.resolvedFileName):yi(X&&!!i,a,u,n);else if(i){if(u){var g=t.getProjectReferenceRedirect(u.resolvedFileName);if(g)return void pn(a,e.Diagnostics.Output_file_0_has_not_been_built_from_source_file_1,g,u.resolvedFileName)}if(d)pn(a,d,n,u.resolvedFileName);else{var _=e.tryExtractTSExtension(n);if(_){var h=e.Diagnostics.An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead,y=e.removeExtension(n,_);e.getEmitModuleKind(J)>=e.ModuleKind.ES2015&&(y+=".js"),pn(a,h,_,y)}else if(!J.resolveJsonModule&&e.fileExtensionIs(n,".json")&&e.getEmitModuleResolutionKind(J)===e.ModuleResolutionKind.NodeJs&&e.hasJsonModuleEmitEnabled(J))pn(a,e.Diagnostics.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,n);else if(s){v=e.createDiagnosticForNode(a,e.Diagnostics.Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in_later_SDK_version_Please_make_sure_the_corresponding_d_ts_file_is_provided_and_the_napis_are_correctly_declared,n);Qr.add(v)}else pn(a,i,n)}}}else{var v=e.createDiagnosticForNode(a,e.Diagnostics.Currently_module_for_0_is_not_verified_If_you_re_importing_napi_its_verification_will_be_enabled_in_later_SDK_version_Please_make_sure_the_corresponding_d_ts_file_is_provided_and_the_napis_are_correctly_declared,n);Qr.add(v)}}function yi(t,r,n,i){var a,o=n.packageId,s=n.resolvedFileName,c=!e.isExternalModuleNameRelative(i)&&o?(a=o.name,m().has(e.getTypesPackageName(a))?e.chainDiagnosticMessages(void 0,e.Diagnostics.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,o.name,e.mangleScopedPackageName(o.name)):e.chainDiagnosticMessages(void 0,e.Diagnostics.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,i,e.mangleScopedPackageName(o.name))):void 0;mn(t,r,e.chainDiagnosticMessages(c,e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,i,s))}function vi(t,r){if(null==t?void 0:t.exports){var n=function(t,r){if(!t||t===ke||t===r||1===r.exports.size||2097152&t.flags)return t;var n=Tn(t);if(n.cjsExportMerged)return n.cjsExportMerged;var i=33554432&t.flags?t:kn(t);i.flags=512|i.flags,void 0===i.exports&&(i.exports=e.createSymbolTable());return r.exports.forEach((function(e,t){"export="!==t&&i.exports.set(t,i.exports.has(t)?xn(i.exports.get(t),e):e)})),Tn(i).cjsExportMerged=i,n.cjsExportMerged=i}(Ci(ii(t.exports.get("export="),r)),Ci(t));return Ci(n)||t}}function bi(t,r,n,i){var a=vi(t,n);if(!n&&a){if(!(i||1539&a.flags||e.getDeclarationOfKind(a,300))){var o=H>=e.ModuleKind.ES2015?"allowSyntheticDefaultImports":"esModuleInterop";return pn(r,e.Diagnostics.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,o),a}if(J.esModuleInterop){var s=r.parent;if(e.isImportDeclaration(s)&&e.getNamespaceDeclarationNode(s)||e.isImportCall(s)){var c=_o(a),l=_c(c,0);if(l&&l.length||(l=_c(c,1)),l&&l.length){var u=Hy(c,a,t),d=yn(a.flags,a.escapedName);d.declarations=a.declarations?a.declarations.slice():[],d.parent=a.parent,d.target=a,d.originatingImport=s,a.valueDeclaration&&(d.valueDeclaration=a.valueDeclaration),a.constEnumOnlyModule&&(d.constEnumOnlyModule=!0),a.members&&(d.members=new e.Map(a.members)),a.exports&&(d.exports=new e.Map(a.exports));var p=Us(u);return d.type=Wi(d,p.members,e.emptyArray,e.emptyArray,p.stringIndexInfo,p.numberIndexInfo),d}}}}return a}function ki(e){return void 0!==e.exports.get("export=")}function xi(e){return Sc(Di(e))}function Ei(e,t){var r=Di(t);if(r)return r.get(e)}function Si(e){return 6256&e.flags?os(e,"resolvedExports"):1536&e.flags?Di(e):e.exports||T}function Di(e){var t=Tn(e);return t.resolvedExports||(t.resolvedExports=Ti(e))}function wi(t,r,n,i){r&&r.forEach((function(r,a){if("default"!==a){var o=t.get(a);if(o){if(n&&i&&o&&ii(o)!==ii(r)){var s=n.get(a);s.exportsWithDuplicate?s.exportsWithDuplicate.push(i):s.exportsWithDuplicate=[i]}}else t.set(a,r),n&&i&&n.set(a,{specifierText:e.getTextOfNode(i.moduleSpecifier)})}}))}function Ti(t){var r=[];return function t(n){if(!(n&&n.exports&&e.pushIfUnique(r,n)))return;var i=new e.Map(n.exports),a=n.exports.get("__export");if(a){for(var o=e.createSymbolTable(),s=new e.Map,c=0,l=a.declarations;c<l.length;c++){var u=l[c],d=gi(u,u.moduleSpecifier);wi(o,t(d),s,u)}s.forEach((function(t,r){var n=t.exportsWithDuplicate;if("export="!==r&&n&&n.length&&!i.has(r))for(var a=0,o=n;a<o.length;a++){var c=o[a];Qr.add(e.createDiagnosticForNode(c,e.Diagnostics.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,s.get(r).specifierText,e.unescapeLeadingUnderscores(r)))}})),wi(i,o)}return i}(t=vi(t))||T}function Ci(e){var t;return e&&e.mergeId&&(t=Lr[e.mergeId])?t:e}function Ai(e){return Ci(e.symbol&&cs(e.symbol))}function Ni(e){return Ci(e.parent&&cs(e.parent))}function Pi(r,n,i){var a=Ni(r);if(a&&!(262144&r.flags)){var o=e.mapDefined(a.declarations,(function(e){return a&&Ii(e,a)})),s=n&&function(r,n){var i,a=e.getSourceFileOfNode(n),o=O(a),s=Tn(r);if(s.extendedContainersByFile&&(i=s.extendedContainersByFile.get(o)))return i;if(a&&a.imports){for(var c=0,l=a.imports;c<l.length;c++){var u=l[c];if(!e.nodeIsSynthesized(u)){var d=gi(n,u,!0);d&&Fi(d,r)&&(i=e.append(i,d))}}if(e.length(i))return(s.extendedContainersByFile||(s.extendedContainersByFile=new e.Map)).set(o,i),i}if(s.extendedContainers)return s.extendedContainers;for(var p=0,f=t.getSourceFiles();p<f.length;p++){var m=f[p];if(e.isExternalModule(m)){var g=Ai(m);Fi(g,r)&&(i=e.append(i,g))}}return s.extendedContainers=i||e.emptyArray}(r,n),c=function(t,r){var n=!!e.length(t.declarations)&&e.first(t.declarations);if(111551&r&&n&&n.parent&&e.isVariableDeclaration(n.parent)&&(e.isObjectLiteralExpression(n)&&n===n.parent.initializer||e.isTypeLiteralNode(n)&&n===n.parent.type))return Ai(n.parent)}(a,i);if(n&&Yi(a,n,1920,!1))return e.append(e.concatenate(e.concatenate([a],o),s),c);var l=e.append(e.append(o,a),c);return e.concatenate(l,s)}var u=e.mapDefined(r.declarations,(function(t){return!e.isAmbientModule(t)&&t.parent&&oa(t.parent)?Ai(t.parent):e.isClassExpression(t)&&e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind&&e.isAccessExpression(t.parent.left)&&e.isEntityNameExpression(t.parent.left.expression)?e.isModuleExportsAccessExpression(t.parent.left)||e.isExportsIdentifier(t.parent.left.expression)?Ai(e.getSourceFileOfNode(t)):($v(t.parent.left.expression),Cn(t.parent.left.expression).resolvedSymbol):void 0}));if(e.length(u))return e.mapDefined(u,(function(e){return Fi(e,r)?e:void 0}))}function Ii(e,t){var r=ia(e),n=r&&r.exports&&r.exports.get("export=");return n&&Oi(n,t)?r:void 0}function Fi(t,r){if(t===Ni(r))return r;var n=t.exports&&t.exports.get("export=");if(n&&Oi(n,r))return t;var i=Si(t),a=i.get(r.escapedName);return a&&Oi(a,r)?a:e.forEachEntry(i,(function(e){if(Oi(e,r))return e}))}function Oi(e,t){if(Ci(ii(Ci(e)))===Ci(ii(Ci(t))))return e}function Ri(e){return Ci(e&&0!=(1048576&e.flags)?e.exportSymbol:e)}function Mi(e){return!!(111551&e.flags||2097152&e.flags&&111551&ai(e).flags&&!ci(e))}function Li(t){for(var r=0,n=t.members;r<n.length;r++){var i=n[r];if(167===i.kind&&e.nodeIsPresent(i.body))return i}}function ji(e){var t=new _(le,e);return y++,t.id=y,w.push(t),t}function Bi(e){return new _(le,e)}function zi(e,t,r){void 0===r&&(r=0);var n=ji(e);return n.intrinsicName=t,n.objectFlags=r,n}function Ui(e){var t=ou(e);return t.flags|=16,t.intrinsicName="boolean",t}function qi(e,t){var r=ji(524288);return r.objectFlags=e,r.symbol=t,r.members=void 0,r.properties=void 0,r.callSignatures=void 0,r.constructSignatures=void 0,r.stringIndexInfo=void 0,r.numberIndexInfo=void 0,r}function Ji(e){var t=ji(262144);return e&&(t.symbol=e),t}function Vi(e){return 95===e.charCodeAt(0)&&95===e.charCodeAt(1)&&95!==e.charCodeAt(2)&&64!==e.charCodeAt(2)&&35!==e.charCodeAt(2)}function Hi(t){var r;return t.forEach((function(e,t){!Vi(t)&&Mi(e)&&(r||(r=[])).push(e)})),r||e.emptyArray}function Ki(t,r,n,i,a,o){var s=t;return s.members=r,s.properties=e.emptyArray,s.callSignatures=n,s.constructSignatures=i,s.stringIndexInfo=a,s.numberIndexInfo=o,r!==T&&(s.properties=Hi(r)),s}function Wi(e,t,r,n,i,a){return Ki(qi(16,e),t,r,n,i,a)}function Gi(t,r){for(var n,i=function(t){if(t.locals&&!An(t)&&(n=r(t.locals)))return{value:n};switch(t.kind){case 300:if(!e.isExternalOrCommonJsModule(t))break;case 259:var i=Ai(t);if(n=r((null==i?void 0:i.exports)||T))return{value:n};break;case 254:case 223:case 256:var a;if((Ai(t).members||T).forEach((function(t,r){788968&t.flags&&(a||(a=e.createSymbolTable())).set(r,t)})),a&&(n=r(a)))return{value:n}}},a=t;a;a=a.parent){var o=i(a);if("object"==typeof o)return o.value}return r(ne)}function $i(e){return 111551===e?111551:1920}function Yi(t,r,n,i,a){if(void 0===a&&(a=new e.Map),t&&!function(e){if(e.declarations&&e.declarations.length){for(var t=0,r=e.declarations;t<r.length;t++){switch(r[t].kind){case 164:case 166:case 168:case 169:continue;default:return!1}}return!0}return!1}(t)){var o=R(t),s=a.get(o);return s||a.set(o,s=[]),Gi(r,c)}function c(n,a){if(e.pushIfUnique(s,n)){var o=function(n,a){if(u(n.get(t.escapedName),void 0,a))return[t];var o=e.forEachEntry(n,(function(n){if(2097152&n.flags&&"export="!==n.escapedName&&"default"!==n.escapedName&&!(e.isUMDExportSymbol(n)&&r&&e.isExternalModule(e.getSourceFileOfNode(r)))&&(!i||e.some(n.declarations,e.isExternalModuleImportEqualsDeclaration))&&(a||!e.getDeclarationOfKind(n,273))){var o=d(n,ai(n),a);if(o)return o}if(n.escapedName===t.escapedName&&n.exportSymbol&&u(Ci(n.exportSymbol),void 0,a))return[t]}));return o||(n===ne?d(ae,ae,a):void 0)}(n,a);return s.pop(),o}}function l(e,t){return!Xi(e,r,t)||!!Yi(e.parent,r,$i(t),i,a)}function u(r,i,a){return(t===(i||r)||Ci(t)===Ci(i||r))&&!e.some(r.declarations,oa)&&(a||l(Ci(r),n))}function d(e,t,r){if(u(e,t,r))return[e];var i=Si(t),a=i&&c(i,!0);return a&&l(e,$i(n))?[e].concat(a):void 0}}function Xi(t,r,n){var i=!1;return Gi(r,(function(r){var a=Ci(r.get(t.escapedName));return!!a&&(a===t||!!((a=2097152&a.flags&&!e.getDeclarationOfKind(a,273)?ai(a):a).flags&n)&&(i=!0,!0))})),i}function Qi(e,t){return 0===na(e,t,788968,!1,!0).accessibility}function Zi(e,t){return 0===na(e,t,111551,!1,!0).accessibility}function ea(e,t,r){return 0===na(e,t,r,!1,!1).accessibility}function ta(t,r,n,i,a,o){if(e.length(t)){for(var s,c=!1,l=0,u=t;l<u.length;l++){var d=u[l],p=Yi(d,r,i,!1);if(p){s=d;var f=sa(p[0],a);if(f)return f}else if(o&&e.some(d.declarations,oa)){if(a){c=!0;continue}return{accessibility:0}}var m=ta(Pi(d,r,i),r,n,n===d?$i(i):i,a,o);if(m)return m}return c?{accessibility:0}:s?{accessibility:1,errorSymbolName:la(n,r,i),errorModuleName:s!==n?la(s,r,1920):void 0}:void 0}}function ra(e,t,r,n){return na(e,t,r,n,!0)}function na(t,r,n,i,a){if(t&&r){var o=ta([t],r,t,n,i,a);if(o)return o;var s=e.forEach(t.declarations,ia);if(s)if(s!==ia(r))return{accessibility:2,errorSymbolName:la(t,r,n),errorModuleName:la(s),errorNode:e.isInJSFile(r)?r:void 0};return{accessibility:1,errorSymbolName:la(t,r,n)}}return{accessibility:0}}function ia(t){var r=e.findAncestor(t,aa);return r&&Ai(r)}function aa(t){return e.isAmbientModule(t)||300===t.kind&&e.isExternalOrCommonJsModule(t)}function oa(t){return e.isModuleWithStringLiteralName(t)||300===t.kind&&e.isExternalOrCommonJsModule(t)}function sa(t,r){var n;if(e.every(e.filter(t.declarations,(function(e){return 78!==e.kind})),(function(r){var n,a;if(!Ea(r)){var o=Jn(r);return o&&!e.hasSyntacticModifier(o,1)&&Ea(o.parent)?i(r,o):e.isVariableDeclaration(r)&&e.isVariableStatement(r.parent.parent)&&!e.hasSyntacticModifier(r.parent.parent,1)&&Ea(r.parent.parent.parent)?i(r,r.parent.parent):e.isLateVisibilityPaintedStatement(r)&&!e.hasSyntacticModifier(r,1)&&Ea(r.parent)?i(r,r):!!(2097152&t.flags&&e.isBindingElement(r)&&e.isInJSFile(r)&&(null===(n=r.parent)||void 0===n?void 0:n.parent)&&e.isVariableDeclaration(r.parent.parent)&&(null===(a=r.parent.parent.parent)||void 0===a?void 0:a.parent)&&e.isVariableStatement(r.parent.parent.parent.parent)&&!e.hasSyntacticModifier(r.parent.parent.parent.parent,1)&&r.parent.parent.parent.parent.parent&&Ea(r.parent.parent.parent.parent.parent))&&i(r,r.parent.parent.parent.parent)}return!0})))return{accessibility:0,aliasesToMakeVisible:n};function i(t,i){return r&&(Cn(t).isVisible=!0,n=e.appendIfUnique(n,i)),!0}}function ca(t,r){var n;n=177===t.parent.kind||e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)||159===t.parent.kind?1160127:158===t.kind||202===t.kind||263===t.parent.kind?1920:788968;var i=e.getFirstIdentifier(t),a=Fn(r,i.escapedText,n,void 0,void 0,!1);return a&&262144&a.flags&&788968&n?{accessibility:0}:a&&sa(a,!0)||{accessibility:1,errorSymbolName:e.getTextOfNode(i),errorNode:i}}function la(t,r,n,i,a){void 0===i&&(i=4);var o=70221824;2&i&&(o|=128),1&i&&(o|=512),8&i&&(o|=16384),16&i&&(o|=134217728);var s=4&i?re.symbolToExpression:re.symbolToEntityName;return a?c(a).getText():e.usingSingleLineStringWriter(c);function c(i){var a=s(t,n,r,o),c=300===(null==r?void 0:r.kind)?e.createPrinter({removeComments:!0,neverAsciiEscape:!0}):e.createPrinter({removeComments:!0}),l=r&&e.getSourceFileOfNode(r);return c.writeNode(4,a,l,i),i}}function ua(t,r,n,i,a){return void 0===n&&(n=0),a?o(a).getText():e.usingSingleLineStringWriter(o);function o(a){var o;o=262144&n?1===i?176:175:1===i?171:170;var s=re.signatureToSignatureDeclaration(t,o,r,70222336|ga(n)),c=e.createPrinter({removeComments:!0,omitTrailingSemicolon:!0}),l=r&&e.getSourceFileOfNode(r);return c.writeNode(4,s,l,e.getTrailingSemicolonDeferringWriter(a)),a}}function da(t,r,n,i){void 0===n&&(n=1064960),void 0===i&&(i=e.createTextWriter(""));var a=J.noErrorTruncation||1&n,o=re.typeToTypeNode(t,r,70221824|ga(n)|(a?1:0),i);if(void 0===o)return e.Debug.fail("should always get typenode");var s=e.createPrinter({removeComments:!0}),c=r&&e.getSourceFileOfNode(r);s.writeNode(4,o,c,i);var l=i.getText(),u=a?2*e.noTruncationMaximumTruncationLength:2*e.defaultMaximumTruncationLength;return u&&l&&l.length>=u?l.substr(0,u-3)+"...":l}function pa(e,t){var r=ma(e.symbol)?da(e,e.symbol.valueDeclaration):da(e),n=ma(t.symbol)?da(t,t.symbol.valueDeclaration):da(t);return r===n&&(r=fa(e),n=fa(t)),[r,n]}function fa(e){return da(e,void 0,64)}function ma(t){return t&&t.valueDeclaration&&e.isExpression(t.valueDeclaration)&&!Qd(t.valueDeclaration)}function ga(e){return void 0===e&&(e=0),814775659&e}function _a(t){return!!(t.symbol&&32&t.symbol.flags&&(t===Oo(t.symbol)||1073741824&e.getObjectFlags(t)))}function ha(t,r,n,i){return void 0===n&&(n=16384),i?a(i).getText():e.usingSingleLineStringWriter(a);function a(i){var a=e.factory.createTypePredicateNode(2===t.kind||3===t.kind?e.factory.createToken(128):void 0,1===t.kind||3===t.kind?e.factory.createIdentifier(t.parameterName):e.factory.createThisTypeNode(),t.type&&re.typeToTypeNode(t.type,r,70222336|ga(n))),o=e.createPrinter({removeComments:!0}),s=r&&e.getSourceFileOfNode(r);return o.writeNode(4,a,s,i),i}}function ya(e){return 8===e?"private":16===e?"protected":"public"}function va(t){return t&&t.parent&&260===t.parent.kind&&e.isExternalModuleAugmentation(t.parent.parent)}function ba(t){return 300===t.kind||e.isAmbientModule(t)}function ka(t,r){var n=Tn(t).nameType;if(n){if(384&n.flags){var i=""+n.value;return e.isIdentifierText(i,J.target)||R_(i)?R_(i)&&e.startsWith(i,"-")?"["+i+"]":i:'"'+e.escapeString(i,34)+'"'}if(8192&n.flags)return"["+xa(n.symbol,r)+"]"}}function xa(t,r){if(r&&"default"===t.escapedName&&!(16384&r.flags)&&(!(16777216&r.flags)||!t.declarations||r.enclosingDeclaration&&e.findAncestor(t.declarations[0],ba)!==e.findAncestor(r.enclosingDeclaration,ba)))return"default";if(t.declarations&&t.declarations.length){var n=e.firstDefined(t.declarations,(function(t){return e.getNameOfDeclaration(t)?t:void 0})),i=n&&e.getNameOfDeclaration(n);if(n&&i){if(e.isCallExpression(n)&&e.isBindableObjectDefinePropertyCall(n))return e.symbolName(t);if(e.isComputedPropertyName(i)&&!(4096&e.getCheckFlags(t))){var a=Tn(t).nameType;if(a&&384&a.flags){var o=ka(t,r);if(void 0!==o)return o}}return e.declarationNameToString(i)}if(n||(n=t.declarations[0]),n.parent&&251===n.parent.kind)return e.declarationNameToString(n.parent.name);switch(n.kind){case 223:case 209:case 210:return!r||r.encounteredError||131072&r.flags||(r.encounteredError=!0),223===n.kind?"(Anonymous class)":"(Anonymous function)"}}var s=ka(t,r);return void 0!==s?s:e.symbolName(t)}function Ea(t){if(t){var r=Cn(t);return void 0===r.isVisible&&(r.isVisible=!!function(){switch(t.kind){case 327:case 334:case 328:return!!(t.parent&&t.parent.parent&&t.parent.parent.parent&&e.isSourceFile(t.parent.parent.parent));case 199:return Ea(t.parent.parent);case 251:if(e.isBindingPattern(t.name)&&!t.name.elements.length)return!1;case 259:case 254:case 255:case 256:case 257:case 253:case 258:case 263:if(e.isExternalModuleAugmentation(t))return!0;var r=Aa(t);return 1&e.getCombinedModifierFlags(t)||263!==t.kind&&300!==r.kind&&8388608&r.flags?Ea(r):An(r);case 164:case 163:case 168:case 169:case 166:case 165:if(e.hasEffectiveModifier(t,24))return!1;case 167:case 171:case 170:case 172:case 161:case 260:case 175:case 176:case 178:case 174:case 179:case 180:case 183:case 184:case 187:case 193:return Ea(t.parent);case 265:case 266:case 268:return!1;case 160:case 300:case 262:return!0;default:return!1}}()),r.isVisible}return!1}function Sa(t,r){var n,i,a;return t.parent&&269===t.parent.kind?n=Fn(t,t.escapedText,2998271,void 0,t,!1):273===t.parent.kind&&(n=ei(t.parent,2998271)),n&&((a=new e.Set).add(R(n)),function t(n){e.forEach(n,(function(n){var o=Jn(n)||n;if(r?Cn(n).isVisible=!0:(i=i||[],e.pushIfUnique(i,o)),e.isInternalModuleImportEqualsDeclaration(n)){var s=n.moduleReference,c=Fn(n,e.getFirstIdentifier(s).escapedText,901119,void 0,void 0,!1);c&&a&&e.tryAddToSet(a,R(c))&&t(c.declarations)}}))}(n.declarations)),i}function Da(e,t){var r=wa(e,t);if(r>=0){for(var n=Ir.length,i=r;i<n;i++)Fr[i]=!1;return!1}return Ir.push(e),Fr.push(!0),Or.push(t),!0}function wa(e,t){for(var r=Ir.length-1;r>=0;r--){if(Ta(Ir[r],Or[r]))return-1;if(Ir[r]===e&&Or[r]===t)return r}return-1}function Ta(t,r){switch(r){case 0:return!!Tn(t).type;case 5:return!!Cn(t).resolvedEnumType;case 2:return!!Tn(t).declaredType;case 1:return!!t.resolvedBaseConstructorType;case 3:return!!t.resolvedReturnType;case 4:return!!t.immediateBaseConstraint;case 6:return!!t.resolvedTypeArguments;case 7:return!!t.baseTypesResolved}return e.Debug.assertNever(r)}function Ca(){return Ir.pop(),Or.pop(),Fr.pop()}function Aa(t){return e.findAncestor(e.getRootDeclaration(t),(function(e){switch(e.kind){case 251:case 252:case 268:case 267:case 266:case 265:return!1;default:return!0}})).parent}function Na(e,t){var r=gc(e,t);return r?_o(r):void 0}function Pa(e){return e&&0!=(1&e.flags)}function Ia(e){var t=Ai(e);return t&&Tn(t).type||Ua(e,!1)}function Fa(t,r,n){if(131072&(t=ug(t,(function(e){return!(98304&e.flags)}))).flags)return nt;if(1048576&t.flags)return pg(t,(function(e){return Fa(e,r,n)}));var i=ou(e.map(r,vu));if(Ru(t)||Mu(i)){if(131072&i.flags)return t;var a=Zt||(Zt=Cl("Omit",524288,e.Diagnostics.Cannot_find_global_type_0));return a?pl(a,[t,i]):we}for(var o=e.createSymbolTable(),s=0,c=Hs(t);s<c.length;s++){var l=c[s];cp(bu(l,8576),i)||24&e.getDeclarationModifierFlagsFromSymbol(l)||!ud(l)||o.set(l.escapedName,dd(l,!1))}var u=bc(t,0),d=bc(t,1),p=Wi(n,o,e.emptyArray,e.emptyArray,u,d);return p.objectFlags|=131072,p}function Oa(e,t){var r=Ra(e);return r?Og(r,t):t}function Ra(t){var r=function(e){var t=e.parent.parent;switch(t.kind){case 199:case 291:return Ra(t);case 200:return Ra(e.parent);case 251:return t.initializer;case 218:return t.right}}(t);if(r&&r.flowNode){var n=function(e){var t=e.parent;if(199===e.kind&&197===t.kind)return Ma(e.propertyName||e.name);if(291===e.kind||292===e.kind)return Ma(e.name);return""+t.elements.indexOf(e)}(t);if(n){var i=e.setTextRange(e.parseNodeFactory.createStringLiteral(n),t),a=e.isLeftHandSideExpression(r)?r:e.parseNodeFactory.createParenthesizedExpression(r),o=e.setTextRange(e.parseNodeFactory.createElementAccessExpression(a,i),t);return e.setParent(i,o),e.setParent(o,t),a!==r&&e.setParent(a,o),o.flowNode=r.flowNode,o}}}function Ma(e){var t=vu(e);return 384&t.flags?""+t.value:void 0}function La(t){var r,n=t.parent,i=Ia(n.parent);if(!i||Pa(i))return i;if(W&&8388608&t.flags&&e.isParameterDeclaration(t)?i=Pf(i):!W||!n.parent.initializer||65536&Vm(eg(n.parent.initializer))||(i=Hm(i,524288)),197===n.kind)if(t.dotDotDotToken){if(2&(i=uc(i)).flags||!z_(i))return pn(t,e.Diagnostics.Rest_types_may_only_be_created_from_object_types),we;for(var a=[],o=0,s=n.elements;o<s.length;o++){var c=s[o];c.dotDotDotToken||a.push(c.propertyName||c.name)}r=Fa(i,a,t.symbol)}else{var l=t.propertyName||t.name;r=Oa(t,Ug(qu(i,p=vu(l),void 0,l,void 0,void 0,16),t.name))}else{var u=Fk(65|(t.dotDotDotToken?0:128),i,Ne,n),d=n.elements.indexOf(t);if(t.dotDotDotToken)r=lg(i,vf)?pg(i,(function(e){return $l(e,d)})):jl(u);else if(sf(i)){var p=hd(d),f=N_(t)?8:0;r=Oa(t,Ug(Vu(i,p,void 0,t.name,16|f)||we,t.name))}else r=u}return t.initializer?e.getEffectiveTypeAnnotationNode(e.walkUpBindingElementsAndPatterns(t))?!W||32768&wf(Yv(t))?r:Hm(r,524288):Xv(t,ou([Hm(r,524288),Yv(t)],2)):r}function ja(t){var r=e.getJSDocType(t);if(r)return xd(r)}function Ba(t){var r=e.skipParentheses(t);return 200===r.kind&&0===r.elements.length}function za(e,t){return void 0===t&&(t=!0),W&&t?Nf(e):e}function Ua(t,r){if(e.isVariableDeclaration(t)&&240===t.parent.parent.kind){var n=Eu(gh(fb(t.parent.parent.expression)));return 4456448&n.flags?Su(n):Re}if(e.isVariableDeclaration(t)&&241===t.parent.parent.kind)return Ik(t.parent.parent)||Ee;if(e.isBindingPattern(t.parent))return La(t);var i,a,o=r&&(e.isParameter(t)&&Dc(t)||Cc(t)||!e.isBindingElement(t)&&!e.isVariableDeclaration(t)&&!!t.questionToken),s=io(t);if(s)return za(s,o);if((X||e.isInJSFile(t))&&e.isVariableDeclaration(t)&&!e.isBindingPattern(t.name)&&!(1&e.getCombinedModifierFlags(t))&&!(8388608&t.flags)){if(!(2&e.getCombinedNodeFlags(t)||t.initializer&&(i=t.initializer,a=e.skipParentheses(i),104!==a.kind&&(78!==a.kind||Am(a)!==ie))))return Se;if(t.initializer&&Ba(t.initializer))return Nt}if(e.isParameter(t)){var c=t.parent;if(169===c.kind&&ns(c)){var l=e.getDeclarationOfKind(Ai(t.parent),168);if(l){var u=Ic(l),d=rS(c);return d&&t===d?(e.Debug.assert(!d.type),_o(u.thisParameter)):Bc(u)}}if(e.isInJSFile(t)){var p=e.getJSDocType(c);if(p&&e.isFunctionTypeNode(p)){var f=Ic(p),m=c.parameters.indexOf(t);return t.dotDotDotToken?av(f,m):nv(f,m)}}if(_="this"===t.symbol.escapedName?t_(c):r_(t))return za(_,o)}if(e.hasOnlyExpressionInitializer(t)&&t.initializer){if(e.isInJSFile(t)&&!e.isParameter(t)){var g=Ga(t,Ai(t),e.getDeclaredExpandoInitializer(t));if(g)return g}return za(_=Xv(t,Yv(t)),o)}if(e.isPropertyDeclaration(t)&&!e.hasStaticModifier(t)&&(X||e.isInJSFile(t))){var _,h=Li(t.parent);return(_=h?Ha(t.symbol,h):2&e.getEffectiveModifierFlags(t)?$p(t.symbol):void 0)&&za(_,o)}return e.isJsxAttribute(t)?ze:e.isBindingPattern(t.name)?eo(t.name,!1,!0):void 0}function qa(t){if(t.valueDeclaration&&e.isBinaryExpression(t.valueDeclaration)){var r=Tn(t);return void 0===r.isConstructorDeclaredProperty&&(r.isConstructorDeclaredProperty=!1,r.isConstructorDeclaredProperty=!!Va(t)&&e.every(t.declarations,(function(r){return e.isBinaryExpression(r)&&u_(r)&&(203!==r.left.kind||e.isStringOrNumericLiteralLike(r.left.argumentExpression))&&!$a(void 0,r,t,r)}))),r.isConstructorDeclaredProperty}return!1}function Ja(t){var r=t.valueDeclaration;return r&&e.isPropertyDeclaration(r)&&!e.getEffectiveTypeAnnotationNode(r)&&!r.initializer&&(X||e.isInJSFile(r))}function Va(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r],a=e.getThisContainer(i,!1);if(a&&(167===a.kind||Fy(a)))return a}}function Ha(t,r){var n=e.startsWith(t.escapedName,"__#")?e.factory.createPrivateIdentifier(t.escapedName.split("@")[1]):e.unescapeLeadingUnderscores(t.escapedName),i=e.factory.createPropertyAccessExpression(e.factory.createThis(),n);e.setParent(i.expression,i),e.setParent(i,r),i.flowNode=r.returnFlowNode;var a=Ka(i,t);return!X||a!==Se&&a!==Nt||pn(t.valueDeclaration,e.Diagnostics.Member_0_implicitly_has_an_1_type,la(t),da(a)),lg(a,mh)?void 0:bk(a)}function Ka(t,r){var n=r&&(!Ja(r)||2&e.getEffectiveModifierFlags(r.valueDeclaration))&&$p(r)||Ne;return Og(t,Se,n)}function Wa(t,r){var n,i=e.getAssignedExpandoInitializer(t.valueDeclaration);if(i){var a=e.getJSDocTypeTag(i);return a&&a.typeExpression?xd(a.typeExpression):Ga(t.valueDeclaration,t,i)||gf($v(i))}var o=!1,s=!1;if(qa(t)&&(n=Ha(t,Va(t))),!n){for(var c=void 0,l=void 0,u=0,d=t.declarations;u<d.length;u++){var p=d[u],f=e.isBinaryExpression(p)||e.isCallExpression(p)?p:e.isAccessExpression(p)?e.isBinaryExpression(p.parent)?p.parent:p:void 0;if(f){var m=e.isAccessExpression(f)?e.getAssignmentDeclarationPropertyAccessKind(f):e.getAssignmentDeclarationKind(f);(4===m||e.isBinaryExpression(f)&&u_(f,m))&&(Xa(f)?o=!0:s=!0),e.isCallExpression(f)||(c=$a(c,f,t,p)),c||(l||(l=[])).push(e.isBinaryExpression(f)||e.isCallExpression(f)?Ya(t,r,f,m):He)}}if(!(n=c)){if(!e.length(l))return we;var g=o?function(t,r){return e.Debug.assert(t.length===r.length),t.filter((function(t,n){var i=r[n],a=e.isBinaryExpression(i)?i:e.isBinaryExpression(i.parent)?i.parent:void 0;return a&&Xa(a)}))}(l,t.declarations):void 0;if(s){var _=$p(t);_&&((g||(g=[])).push(_),o=!0)}n=ou(e.some(g,(function(e){return!!(-98305&e.flags)}))?g:l,2)}}var h=Hf(za(n,s&&!o));return ug(h,(function(e){return!!(-98305&e.flags)}))===He?(Gf(t.valueDeclaration,Ee),Ee):h}function Ga(t,r,n){var i,a;if(e.isInJSFile(t)&&n&&e.isObjectLiteralExpression(n)&&!n.properties.length){for(var o=e.createSymbolTable();e.isBinaryExpression(t)||e.isPropertyAccessExpression(t);){var s=Ai(t);(null===(i=null==s?void 0:s.exports)||void 0===i?void 0:i.size)&&Dn(o,s.exports),t=e.isBinaryExpression(t)?t.parent:t.parent.parent}var c=Ai(t);(null===(a=null==c?void 0:c.exports)||void 0===a?void 0:a.size)&&Dn(o,c.exports);var l=Wi(r,o,e.emptyArray,e.emptyArray,void 0,void 0);return l.objectFlags|=16384,l}}function $a(t,r,n,i){var a=e.getEffectiveTypeAnnotationNode(r.parent);if(a){var o=Hf(xd(a));if(!t)return o;t===we||o===we||np(t,o)||xk(void 0,t,i,o)}if(n.parent){var s=e.getEffectiveTypeAnnotationNode(n.parent.valueDeclaration);if(s)return Na(xd(s),n.escapedName)}return t}function Ya(t,r,n,i){if(e.isCallExpression(n)){if(r)return _o(r);var a=$v(n.arguments[2]),o=Na(a,"value");if(o)return o;var s=Na(a,"get");if(s){var c=Qh(s);if(c)return Bc(c)}var l=Na(a,"set");if(l){var u=Qh(l);if(u)return dv(u)}return Ee}if(function(t,r){return e.isPropertyAccessExpression(t)&&108===t.expression.kind&&e.forEachChildRecursively(r,(function(e){return Im(t,e)}))}(n.left,n.right))return Ee;var d=r?_o(r):gf($v(n.right));if(524288&d.flags&&2===i&&"export="===t.escapedName){var p=Us(d),f=e.createSymbolTable();e.copyEntries(p.members,f);var m=f.size;r&&!r.exports&&(r.exports=e.createSymbolTable()),(r||t).exports.forEach((function(t,r){var n,i=f.get(r);if(i&&i!==t)if(111551&t.flags&&111551&i.flags){if(e.getSourceFileOfNode(t.valueDeclaration)!==e.getSourceFileOfNode(i.valueDeclaration)){var a=e.unescapeLeadingUnderscores(t.escapedName),o=(null===(n=e.tryCast(i.valueDeclaration,e.isNamedDeclaration))||void 0===n?void 0:n.name)||i.valueDeclaration;e.addRelatedInfo(pn(t.valueDeclaration,e.Diagnostics.Duplicate_identifier_0,a),e.createDiagnosticForNode(o,e.Diagnostics._0_was_also_declared_here,a)),e.addRelatedInfo(pn(o,e.Diagnostics.Duplicate_identifier_0,a),e.createDiagnosticForNode(t.valueDeclaration,e.Diagnostics._0_was_also_declared_here,a))}var s=yn(t.flags|i.flags,r);s.type=ou([_o(t),_o(i)]),s.valueDeclaration=i.valueDeclaration,s.declarations=e.concatenate(i.declarations,t.declarations),f.set(r,s)}else f.set(r,xn(t,i));else f.set(r,t)}));var g=Wi(m!==f.size?void 0:p.symbol,f,p.callSignatures,p.constructSignatures,p.stringIndexInfo,p.numberIndexInfo);return g.objectFlags|=16384&e.getObjectFlags(d),g.symbol&&32&g.symbol.flags&&d===Oo(g.symbol)&&(g.objectFlags|=1073741824),g}return cf(d)?(Gf(n,At),At):d}function Xa(t){var r=e.getThisContainer(t,!1);return 167===r.kind||253===r.kind||209===r.kind&&!e.isPrototypePropertyAssignment(r.parent)}function Qa(t,r,n){return t.initializer?za(Xv(t,Yv(t,e.isBindingPattern(t.name)?eo(t.name,!0,!1):Ae))):e.isBindingPattern(t.name)?eo(t.name,r,n):(n&&!no(t)&&Gf(t,Ee),r?Te:Ee)}function Za(t,r,n){var i,a=t.elements,o=e.lastOrUndefined(a),s=o&&199===o.kind&&o.dotDotDotToken?o:void 0;if(0===a.length||1===a.length&&s)return V>=2?(i=Ee,Ml(Ol(!0),[i])):At;var c=e.map(a,(function(t){return e.isOmittedExpression(t)?Ee:Qa(t,r,n)})),l=e.findLastIndex(a,(function(t){return!(t===s||e.isOmittedExpression(t)||N_(t))}),a.length-1)+1,u=Hl(c,e.map(a,(function(e,t){return e===s?4:t>=l?2:1})));return r&&((u=sl(u)).pattern=t,u.objectFlags|=1048576),u}function eo(t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),197===t.kind?function(t,r,n){var i,a=e.createSymbolTable(),o=1048704;e.forEach(t.elements,(function(e){var t=e.propertyName||e.name;if(e.dotDotDotToken)i=Qc(Ee,!1);else{var s=vu(t);if(Zo(s)){var c=is(s),l=yn(4|(e.initializer?16777216:0),c);l.type=Qa(e,r,n),l.bindingElement=e,a.set(l.escapedName,l)}else o|=512}}));var s=Wi(void 0,a,e.emptyArray,e.emptyArray,i,void 0);return s.objectFlags|=o,r&&(s.pattern=t,s.objectFlags|=1048576),s}(t,r,n):Za(t,r,n)}function to(e,t){return ro(Ua(e,!0),e,t)}function ro(t,r,n){return t?(n&&$f(r,t),8192&t.flags&&(e.isBindingElement(r)||!r.type)&&t.symbol!==Ai(r)&&(t=Je),Hf(t)):(t=e.isParameter(r)&&r.dotDotDotToken?At:Ee,n&&(no(r)||Gf(r,t)),t)}function no(t){var r=e.getRootDeclaration(t);return Rb(161===r.kind?r.parent:r)}function io(t){var r=e.getEffectiveTypeAnnotationNode(t);if(r)return xd(r)}function ao(t){var r=Tn(t);if(!r.type){var n=function(t){if(4194304&t.flags)return(r=Jo(Ni(t))).typeParameters?ol(r,e.map(r.typeParameters,(function(e){return Ee}))):r;var r;if(t===ce)return Ee;if(134217728&t.flags){var n=Ai(e.getSourceFileOfNode(t.valueDeclaration)),i=yn(n.flags,"exports");i.declarations=n.declarations?n.declarations.slice():[],i.parent=t,i.target=n,n.valueDeclaration&&(i.valueDeclaration=n.valueDeclaration),n.members&&(i.members=new e.Map(n.members)),n.exports&&(i.exports=new e.Map(n.exports));var a=e.createSymbolTable();return a.set("exports",i),Wi(t,a,e.emptyArray,e.emptyArray,void 0,void 0)}var o,s=t.valueDeclaration;if(e.isCatchClauseVariableDeclarationOrBindingElement(s)){var c=s;if(!c.type)return Ee;var l=Qx(c.type);return Pa(l)||l===Ae?l:we}if(e.isSourceFile(s)&&e.isJsonSourceFile(s))return s.statements.length?Hf(gf(fb(s.statements[0].expression))):nt;if(!Da(t,0))return 512&t.flags&&!(67108864&t.flags)?fo(t):go(t);if(269===s.kind)o=ro($v(s.expression),s);else if(e.isBinaryExpression(s)||e.isInJSFile(s)&&(e.isCallExpression(s)||(e.isPropertyAccessExpression(s)||e.isBindableStaticElementAccessExpression(s))&&e.isBinaryExpression(s.parent)))o=Wa(t);else if(e.isPropertyAccessExpression(s)||e.isElementAccessExpression(s)||e.isIdentifier(s)||e.isStringLiteralLike(s)||e.isNumericLiteral(s)||e.isClassDeclaration(s)||e.isFunctionDeclaration(s)||e.isMethodDeclaration(s)&&!e.isObjectLiteralMethod(s)||e.isMethodSignature(s)||e.isSourceFile(s)){if(9136&t.flags)return fo(t);o=e.isBinaryExpression(s.parent)?Wa(t):io(s)||Ee}else if(e.isPropertyAssignment(s))o=io(s)||tb(s);else if(e.isJsxAttribute(s))o=io(s)||J_(s);else if(e.isShorthandPropertyAssignment(s))o=io(s)||eb(s.name,0);else if(e.isObjectLiteralMethod(s))o=io(s)||rb(s,0);else if(e.isParameter(s)||e.isPropertyDeclaration(s)||e.isPropertySignature(s)||e.isVariableDeclaration(s)||e.isBindingElement(s)||e.isJSDocPropertyLikeTag(s))o=to(s,!0);else if(e.isEnumDeclaration(s))o=fo(t);else if(e.isEnumMember(s))o=mo(t);else{if(!e.isAccessor(s))return e.Debug.fail("Unhandled declaration kind! "+e.Debug.formatSyntaxKind(s.kind)+" for "+e.Debug.formatSymbol(t));o=uo(t)}if(!Ca())return 512&t.flags&&!(67108864&t.flags)?fo(t):go(t);return o}(t);r.type||(r.type=n)}return r.type}function oo(t){if(t)return 168===t.kind?e.getEffectiveReturnTypeNode(t):e.getEffectiveSetAccessorTypeAnnotationNode(t)}function so(e){var t=oo(e);return t&&xd(t)}function co(e){return Lc(Ic(e))}function lo(t){var r=Tn(t);return r.type||(r.type=function(t){if(!Da(t,0))return we;var r=uo(t);if(!Ca()){if(r=Ee,X)pn(e.getDeclarationOfKind(t,168),e.Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,la(t))}return r}(t))}function uo(t){var r=e.getDeclarationOfKind(t,168),n=e.getDeclarationOfKind(t,169);if(r&&e.isInJSFile(r)){var i=ja(r);if(i)return i}var a=so(r);if(a)return a;var o=so(n);return o||(r&&r.body?vv(r):(n?Rb(n)||mn(X,n,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,la(t)):(e.Debug.assert(!!r,"there must exist a getter as we are current checking either setter or getter in this function"),Rb(r)||mn(X,r,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,la(t))),Ee))}function po(t){var r=Ao(Oo(t));return 8650752&r.flags?r:2097152&r.flags?e.find(r.types,(function(e){return!!(8650752&e.flags)})):void 0}function fo(t){var r=Tn(t),n=r;if(!r.type){var i=t.valueDeclaration&&Ry(t.valueDeclaration,!1);if(i){var a=Oy(t,i);a&&(t=r=a)}n.type=r.type=function(t){var r=t.valueDeclaration;if(1536&t.flags&&e.isShorthandAmbientModuleSymbol(t))return Ee;if(r&&(218===r.kind||e.isAccessExpression(r)&&218===r.parent.kind))return Wa(t);if(512&t.flags&&r&&e.isSourceFile(r)&&r.commonJsModuleIndicator){var n=vi(t);if(n!==t){if(!Da(t,0))return we;var i=Ci(t.exports.get("export=")),a=Wa(i,i===n?void 0:n);return Ca()?a:go(t)}}var o=qi(16,t);if(32&t.flags){var s=po(t);return s?fu([o,s]):o}return W&&16777216&t.flags?Nf(o):o}(t)}return r.type}function mo(e){var t=Tn(e);return t.type||(t.type=Uo(e))}function go(t){var r=t.valueDeclaration;return e.getEffectiveTypeAnnotationNode(r)?(pn(t.valueDeclaration,e.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,la(t)),we):(X&&(161!==r.kind||r.initializer)&&pn(t.valueDeclaration,e.Diagnostics._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,la(t)),Ee)}function _o(t){var r=e.getCheckFlags(t);return 65536&r?function(t){var r=Tn(t);return r.type||(e.Debug.assertIsDefined(r.deferralParent),e.Debug.assertIsDefined(r.deferralConstituents),r.type=1048576&r.deferralParent.flags?ou(r.deferralConstituents):fu(r.deferralConstituents)),r.type}(t):1&r?function(e){var t=Tn(e);if(!t.type){if(!Da(e,0))return t.type=we;var r=Wd(_o(t.target),t.mapper);Ca()||(r=go(e)),t.type=r}return t.type}(t):262144&r?function(t){if(!t.type){var r=t.mappedType;if(!Da(t,0))return r.containsError=!0,we;var n=Wd(Fs(r.target||r),Md(r.mapper,Ns(r),t.keyType)),i=W&&16777216&t.flags&&!Rv(n,49152)?Nf(n):524288&t.checkFlags?Hm(n,524288):n;Ca()||(pn(d,e.Diagnostics.Type_of_property_0_circularly_references_itself_in_mapped_type_1,la(t),da(r)),i=we),t.type=i}return t.type}(t):8192&r?function(e){return um(e.propertyType,e.mappedType,e.constraintType)}(t):7&t.flags?ao(t):9136&t.flags?fo(t):8&t.flags?mo(t):98304&t.flags?lo(t):2097152&t.flags?function(e){var t=Tn(e);if(!t.type){var r=ai(e);t.type=111551&r.flags?_o(r):we}return t.type}(t):we}function ho(t,r){return void 0!==t&&void 0!==r&&0!=(4&e.getObjectFlags(t))&&t.target===r}function yo(t){return 4&e.getObjectFlags(t)?t.target:t}function vo(t,r){return function t(n){if(7&e.getObjectFlags(n)){var i=yo(n);return i===r||e.some(Po(i),t)}if(2097152&n.flags)return e.some(n.types,t);return!1}(t)}function bo(t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];t=e.appendIfUnique(t,qo(Ai(a)))}return t}function ko(t,r){for(;;){if((t=t.parent)&&e.isBinaryExpression(t)){var n=e.getAssignmentDeclarationKind(t);if(6===n||3===n){var i=Ai(t.left);i&&i.parent&&!e.findAncestor(i.parent.valueDeclaration,(function(e){return t===e}))&&(t=i.parent.valueDeclaration)}}if(!t)return;switch(t.kind){case 234:case 254:case 223:case 256:case 170:case 171:case 165:case 175:case 176:case 311:case 253:case 166:case 209:case 210:case 257:case 333:case 334:case 328:case 327:case 191:case 185:var a=ko(t,r);if(191===t.kind)return e.append(a,qo(Ai(t.typeParameter)));if(185===t.kind)return e.concatenate(a,Zu(t));if(234===t.kind&&!e.isInJSFile(t))break;var o=bo(a,e.getEffectiveTypeParameterDeclarations(t)),s=r&&(254===t.kind||223===t.kind||256===t.kind||Fy(t))&&Oo(Ai(t)).thisType;return s?e.append(o,s):o;case 329:var c=e.getParameterSymbolFromJSDoc(t);c&&(t=c.valueDeclaration)}}}function xo(t){var r=32&t.flags?t.valueDeclaration:e.getDeclarationOfKind(t,256);return e.Debug.assert(!!r,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),ko(r)}function Eo(t){for(var r,n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(256===a.kind||254===a.kind||223===a.kind||Fy(a)||e.isTypeAlias(a)){var o=a;r=bo(r,e.getEffectiveTypeParameterDeclarations(o))}}return r}function So(e){var t=hc(e,1);if(1===t.length){var r=t[0];if(!r.typeParameters&&1===r.parameters.length&&U(r)){var n=Qy(r.parameters[0]);return Pa(n)||of(n)===Ee}}return!1}function Do(e){if(hc(e,1).length>0)return!0;if(8650752&e.flags){var t=Qs(e);return!!t&&So(t)}return!1}function wo(t){return e.getEffectiveBaseTypeNode(t.symbol.valueDeclaration)}function To(t,r,n){var i=e.length(r),a=e.isInJSFile(n);return e.filter(hc(t,1),(function(t){return(a||i>=Nc(t.typeParameters))&&i<=e.length(t.typeParameters)}))}function Co(t,r,n){var i=To(t,r,n),a=e.map(r,xd);return e.sameMap(i,(function(t){return e.some(t.typeParameters)?Jc(t,a,e.isInJSFile(n)):t}))}function Ao(t){if(!t.resolvedBaseConstructorType){var r=t.symbol.valueDeclaration,n=e.getEffectiveBaseTypeNode(r),i=wo(t);if(!i)return t.resolvedBaseConstructorType=Ne;if(!Da(t,1))return we;var a=fb(i.expression);if(n&&i!==n&&(e.Debug.assert(!n.typeArguments),fb(n.expression)),2621440&a.flags&&Us(a),!Ca())return pn(t.symbol.valueDeclaration,e.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,la(t.symbol)),t.resolvedBaseConstructorType=we;if(!(1&a.flags||a===Oe||Do(a))){var o=pn(i.expression,e.Diagnostics.Type_0_is_not_a_constructor_function_type,da(a));if(262144&a.flags){var s=tl(a),c=Ae;if(s){var l=hc(s,1);l[0]&&(c=Bc(l[0]))}e.addRelatedInfo(o,e.createDiagnosticForNode(a.symbol.declarations[0],e.Diagnostics.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,la(a.symbol),da(c)))}return t.resolvedBaseConstructorType=we}t.resolvedBaseConstructorType=a}return t.resolvedBaseConstructorType}function No(t,r){pn(t,e.Diagnostics.Type_0_recursively_references_itself_as_a_base_type,da(r,void 0,2))}function Po(t){if(!t.baseTypesResolved){if(Da(t,7)&&(8&t.objectFlags?t.resolvedBaseTypes=[Io(t)]:96&t.symbol.flags?(32&t.symbol.flags&&function(t){t.resolvedBaseTypes=e.resolvingEmptyArray;var r=ac(Ao(t));if(!(2621441&r.flags))return t.resolvedBaseTypes=e.emptyArray;var n,i=wo(t),a=r.symbol?Jo(r.symbol):void 0;if(r.symbol&&32&r.symbol.flags&&function(e){var t=e.outerTypeParameters;if(t){var r=t.length-1,n=ll(e);return t[r].symbol!==n[r].symbol}return!0}(a))n=dl(i,r.symbol);else if(1&r.flags)n=r;else{var o=Co(r,i.typeArguments,i);if(!o.length)return pn(i.expression,e.Diagnostics.No_base_constructor_has_the_specified_number_of_type_arguments),t.resolvedBaseTypes=e.emptyArray;n=Bc(o[0])}if(n===we)return t.resolvedBaseTypes=e.emptyArray;var s=uc(n);if(!Fo(s)){var c=mc(void 0,n),l=e.chainDiagnosticMessages(c,e.Diagnostics.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,da(s));return Qr.add(e.createDiagnosticForNodeFromMessageChain(i.expression,l)),t.resolvedBaseTypes=e.emptyArray}if(t===s||vo(s,t))return pn(t.symbol.valueDeclaration,e.Diagnostics.Type_0_recursively_references_itself_as_a_base_type,da(t,void 0,2)),t.resolvedBaseTypes=e.emptyArray;t.resolvedBaseTypes===e.resolvingEmptyArray&&(t.members=void 0);t.resolvedBaseTypes=[s]}(t),64&t.symbol.flags&&function(t){t.resolvedBaseTypes=t.resolvedBaseTypes||e.emptyArray;for(var r=0,n=t.symbol.declarations;r<n.length;r++){var i=n[r];if(256===i.kind&&e.getInterfaceBaseTypeNodes(i))for(var a=0,o=e.getInterfaceBaseTypeNodes(i);a<o.length;a++){var s=o[a],c=uc(xd(s));c!==we&&(Fo(c)?t===c||vo(c,t)?No(i,t):t.resolvedBaseTypes===e.emptyArray?t.resolvedBaseTypes=[c]:t.resolvedBaseTypes.push(c):pn(s,e.Diagnostics.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}(t)):e.Debug.fail("type must be class or interface"),!Ca()))for(var r=0,n=t.symbol.declarations;r<n.length;r++){var i=n[r];254!==i.kind&&256!==i.kind||No(i,t)}t.baseTypesResolved=!0}return t.resolvedBaseTypes}function Io(t){return jl(ou(e.sameMap(t.typeParameters,(function(e,r){return 8&t.elementFlags[r]?qu(e,Me):e}))||e.emptyArray),t.readonly)}function Fo(t){if(262144&t.flags){var r=Qs(t);if(r)return Fo(r)}return!!(67633153&t.flags&&!zs(t)||2097152&t.flags&&e.every(t.types,Fo))}function Oo(t){var r,n,i,a,o,s=Tn(t),c=s;if(!s.declaredType){var l=32&t.flags?1:2,u=Oy(t,(r=t.valueDeclaration,i=r&&Ry(r,!0),a=null===(n=null==i?void 0:i.exports)||void 0===n?void 0:n.get("prototype"),(o=(null==a?void 0:a.valueDeclaration)&&function(t){if(!t.parent)return!1;for(var r=t.parent;r&&202===r.kind;)r=r.parent;if(r&&e.isBinaryExpression(r)&&e.isPrototypeAccess(r.left)&&62===r.operatorToken.kind){var n=e.getInitializerOfBinaryExpression(r);return e.isObjectLiteralExpression(n)&&n}}(a.valueDeclaration))?Ai(o):void 0));u&&(t=s=u);var d=c.declaredType=s.declaredType=qi(l,t),p=xo(t),f=Eo(t);(p||f||1===l||!function(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];if(256===i.kind){if(128&i.flags)return!1;var a=e.getInterfaceBaseTypeNodes(i);if(a)for(var o=0,s=a;o<s.length;o++){var c=s[o];if(e.isEntityNameExpression(c.expression)){var l=fi(c.expression,788968,!0);if(!l||!(64&l.flags)||Oo(l).thisType)return!1}}}}return!0}(t))&&(d.objectFlags|=4,d.typeParameters=e.concatenate(p,f),d.outerTypeParameters=p,d.localTypeParameters=f,d.instantiations=new e.Map,d.instantiations.set(nl(d.typeParameters),d),d.target=d,d.resolvedTypeArguments=d.typeParameters,d.thisType=Ji(t),d.thisType.isThisType=!0,d.thisType.constraint=d)}return s.declaredType}function Ro(t){var r=Tn(t);if(!r.declaredType){if(!Da(t,2))return we;var n=e.Debug.checkDefined(e.find(t.declarations,e.isTypeAlias),"Type alias symbol with no valid declaration found"),i=e.isJSDocTypeAlias(n)?n.typeExpression:n.type,a=i?xd(i):we;if(Ca()){var o=Eo(t);o&&(r.typeParameters=o,r.instantiations=new e.Map,r.instantiations.set(nl(o),a))}else a=we,pn(e.isNamedDeclaration(n)?n.name:n||n,e.Diagnostics.Type_alias_0_circularly_references_itself,la(t));r.declaredType=a}return r.declaredType}function Mo(t){return!!e.isStringLiteralLike(t)||218===t.kind&&(Mo(t.left)&&Mo(t.right))}function Lo(t){var r=t.initializer;if(!r)return!(8388608&t.flags);switch(r.kind){case 10:case 8:case 14:return!0;case 216:return 40===r.operator&&8===r.operand.kind;case 78:return e.nodeIsMissing(r)||!!Ai(t.parent).exports.get(r.escapedText);case 218:return Mo(r);default:return!1}}function jo(t){var r=Tn(t);if(void 0!==r.enumKind)return r.enumKind;for(var n=!1,i=0,a=t.declarations;i<a.length;i++){var o=a[i];if(258===o.kind)for(var s=0,c=o.members;s<c.length;s++){var l=c[s];if(l.initializer&&e.isStringLiteralLike(l.initializer))return r.enumKind=1;Lo(l)||(n=!0)}}return r.enumKind=n?0:1}function Bo(e){return 1024&e.flags&&!(1048576&e.flags)?Jo(Ni(e.symbol)):e}function zo(e){var t=Tn(e);if(t.declaredType)return t.declaredType;if(1===jo(e)){b++;for(var r=[],n=0,i=e.declarations;n<i.length;n++){var a=i[n];if(258===a.kind)for(var o=0,s=a.members;o<s.length;o++){var c=s[o],l=EE(c),u=md(hd(void 0!==l?l:0,b,Ai(c)));Tn(Ai(c)).declaredType=u,r.push(gd(u))}}if(r.length){var d=ou(r,1,e,void 0);return 1048576&d.flags&&(d.flags|=1024,d.symbol=e),t.declaredType=d}}var p=ji(32);return p.symbol=e,t.declaredType=p}function Uo(e){var t=Tn(e);if(!t.declaredType){var r=zo(Ni(e));t.declaredType||(t.declaredType=r)}return t.declaredType}function qo(e){var t=Tn(e);return t.declaredType||(t.declaredType=Ji(e))}function Jo(e){return Vo(e)||we}function Vo(e){return 96&e.flags?Oo(e):524288&e.flags?Ro(e):262144&e.flags?qo(e):384&e.flags?zo(e):8&e.flags?Uo(e):2097152&e.flags?function(e){var t=Tn(e);return t.declaredType||(t.declaredType=Jo(ai(e)))}(e):void 0}function Ho(e){switch(e.kind){case 129:case 153:case 148:case 145:case 156:case 132:case 149:case 146:case 114:case 151:case 142:case 192:return!0;case 179:return Ho(e.elementType);case 174:return!e.typeArguments||e.typeArguments.every(Ho)}return!1}function Ko(t){var r=e.getEffectiveConstraintOfTypeParameter(t);return!r||Ho(r)}function Wo(t){var r=e.getEffectiveTypeAnnotationNode(t);return r?Ho(r):!e.hasInitializer(t)}function Go(t){if(t.declarations&&1===t.declarations.length){var r=t.declarations[0];if(r)switch(r.kind){case 164:case 163:return Wo(r);case 166:case 165:case 167:case 168:case 169:return n=r,i=e.getEffectiveReturnTypeNode(n),a=e.getEffectiveTypeParameterDeclarations(n),(167===n.kind||!!i&&Ho(i))&&n.parameters.every(Wo)&&a.every(Ko)}}var n,i,a;return!1}function $o(t,r,n){for(var i=e.createSymbolTable(),a=0,o=t;a<o.length;a++){var s=o[a];i.set(s.escapedName,n&&Go(s)?s:Bd(s,r))}return i}function Yo(e,t){for(var r=0,n=t;r<n.length;r++){var i=n[r];e.has(i.escapedName)||Xo(i)||e.set(i.escapedName,i)}}function Xo(t){return!!t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration)&&e.hasSyntacticModifier(t.valueDeclaration,32)}function Qo(t){if(!t.declaredProperties){var r=t.symbol,n=ss(r);t.declaredProperties=Hi(n),t.declaredCallSignatures=e.emptyArray,t.declaredConstructSignatures=e.emptyArray,t.declaredCallSignatures=Rc(n.get("__call")),t.declaredConstructSignatures=Rc(n.get("__new")),t.declaredStringIndexInfo=Zc(r,0),t.declaredNumberIndexInfo=Zc(r,1)}return t}function Zo(e){return!!(8576&e.flags)}function es(t){if(!e.isComputedPropertyName(t)&&!e.isElementAccessExpression(t))return!1;var r=e.isComputedPropertyName(t)?t.expression:t.argumentExpression;return e.isEntityNameExpression(r)&&Zo(e.isComputedPropertyName(t)?M_(t):$v(r))}function ts(e){return 95===e.charCodeAt(0)&&95===e.charCodeAt(1)&&64===e.charCodeAt(2)}function rs(t){var r=e.getNameOfDeclaration(t);return!!r&&es(r)}function ns(t){return!e.hasDynamicName(t)||rs(t)}function is(t){return 8192&t.flags?t.escapedName:384&t.flags?e.escapeLeadingUnderscores(""+t.value):e.Debug.fail()}function as(t,r,n,i){e.Debug.assert(!!i.symbol,"The member is expected to have a symbol.");var a=Cn(i);if(!a.resolvedSymbol){a.resolvedSymbol=i.symbol;var o=e.isBinaryExpression(i)?i.left:i.name,s=e.isElementAccessExpression(o)?$v(o.argumentExpression):M_(o);if(Zo(s)){var c=is(s),l=i.symbol.flags,u=n.get(c);u||n.set(c,u=yn(0,c,4096));var d=r&&r.get(c);if(u.flags&vn(l)||d){var p=d?e.concatenate(d.declarations,u.declarations):u.declarations,f=!(8192&s.flags)&&e.unescapeLeadingUnderscores(c)||e.declarationNameToString(o);e.forEach(p,(function(t){return pn(e.getNameOfDeclaration(t)||t,e.Diagnostics.Property_0_was_also_declared_here,f)})),pn(o||i,e.Diagnostics.Duplicate_property_0,f),u=yn(0,c,4096)}return u.nameType=s,function(t,r,n){e.Debug.assert(!!(4096&e.getCheckFlags(t)),"Expected a late-bound symbol."),t.flags|=n,Tn(r.symbol).lateSymbol=t,t.declarations?t.declarations.push(r):t.declarations=[r],111551&n&&(t.valueDeclaration&&t.valueDeclaration.kind===r.kind||(t.valueDeclaration=r))}(u,i,l),u.parent?e.Debug.assert(u.parent===t,"Existing symbol parent should match new one"):u.parent=t,a.resolvedSymbol=u}}return a.resolvedSymbol}function os(t,r){var n=Tn(t);if(!n[r]){var i="resolvedExports"===r,a=i?1536&t.flags?Ti(t):t.exports:t.members;n[r]=a||T;for(var o=e.createSymbolTable(),s=0,c=t.declarations||e.emptyArray;s<c.length;s++){var l=c[s],u=e.getMembersOfDeclaration(l);if(u)for(var d=0,p=u;d<p.length;d++){var f=p[d];i===e.hasStaticModifier(f)&&rs(f)&&as(t,a,o,f)}}var m=t.assignmentDeclarationMembers;if(m)for(var g=0,_=e.arrayFrom(m.values());g<_.length;g++){f=_[g];var h=e.getAssignmentDeclarationKind(f);i===!(3===h||e.isBinaryExpression(f)&&u_(f,h)||9===h||6===h)&&rs(f)&&as(t,a,o,f)}n[r]=function(t,r){if(!(null==t?void 0:t.size))return r;if(!(null==r?void 0:r.size))return t;var n=e.createSymbolTable();return Dn(n,t),Dn(n,r),n}(a,o)||T}return n[r]}function ss(e){return 6256&e.flags?os(e,"resolvedMembers"):e.members||T}function cs(t){if(106500&t.flags&&"__computed"===t.escapedName){var r=Tn(t);if(!r.lateSymbol&&e.some(t.declarations,rs)){var n=Ci(t.parent);e.some(t.declarations,e.hasStaticModifier)?Si(n):ss(n)}return r.lateSymbol||(r.lateSymbol=t)}return t}function ls(t,r,n){if(4&e.getObjectFlags(t)){var i=t.target,a=ll(t);if(e.length(i.typeParameters)===e.length(a)){var o=ol(i,e.concatenate(a,[r||i.thisType]));return n?ac(o):o}}else if(2097152&t.flags){var s=e.sameMap(t.types,(function(e){return ls(e,r,n)}));return s!==t.types?fu(s):t}return n?ac(t):t}function us(t,r,n,i){var a,o,s,c,l,u;e.rangeEquals(n,i,0,n.length)?(o=r.symbol?ss(r.symbol):e.createSymbolTable(r.declaredProperties),s=r.declaredCallSignatures,c=r.declaredConstructSignatures,l=r.declaredStringIndexInfo,u=r.declaredNumberIndexInfo):(a=Td(n,i),o=$o(r.declaredProperties,a,1===n.length),s=wd(r.declaredCallSignatures,a),c=wd(r.declaredConstructSignatures,a),l=Xd(r.declaredStringIndexInfo,a),u=Xd(r.declaredNumberIndexInfo,a));var d=Po(r);if(d.length){r.symbol&&o===ss(r.symbol)&&(o=e.createSymbolTable(r.declaredProperties)),Ki(t,o,s,c,l,u);for(var p=e.lastOrUndefined(i),f=0,m=d;f<m.length;f++){var g=m[f],_=p?ls(Wd(g,a),p):g;Yo(o,Hs(_)),s=e.concatenate(s,hc(_,0)),c=e.concatenate(c,hc(_,1)),l||(l=_===Ee?Qc(Ee,!1):bc(_,0)),u=u||bc(_,1)}}Ki(t,o,s,c,l,u)}function ds(e,t,r,n,i,a,o,s){var c=new h(le,s);return c.declaration=e,c.typeParameters=t,c.parameters=n,c.thisParameter=r,c.resolvedReturnType=i,c.resolvedTypePredicate=a,c.minArgumentCount=o,c.resolvedMinArgumentCount=void 0,c.target=void 0,c.mapper=void 0,c.unionSignatures=void 0,c}function ps(e){var t=ds(e.declaration,e.typeParameters,e.thisParameter,e.parameters,void 0,void 0,e.minArgumentCount,39&e.flags);return t.target=e.target,t.mapper=e.mapper,t.unionSignatures=e.unionSignatures,t}function fs(e,t){var r=ps(e);return r.unionSignatures=t,r.target=void 0,r.mapper=void 0,r}function ms(t,r){if((24&t.flags)===r)return t;t.optionalCallSignatureCache||(t.optionalCallSignatureCache={});var n=8===r?"inner":"outer";return t.optionalCallSignatureCache[n]||(t.optionalCallSignatureCache[n]=function(t,r){e.Debug.assert(8===r||16===r,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");var n=ps(t);return n.flags|=r,n}(t,r))}function gs(t,r){if(U(t)){var n=t.parameters.length-1,i=_o(t.parameters[n]);if(vf(i))return[a(i,n)];if(!r&&1048576&i.flags&&e.every(i.types,vf))return e.map(i.types,(function(e){return a(e,n)}))}return[t.parameters];function a(r,n){var i=ll(r),a=r.target.labeledElementDeclarations,o=e.map(i,(function(e,i){var o=!!a&&Zy(a[i])||ev(t,n+i,r),s=r.target.elementFlags[i],c=yn(1,o,12&s?32768:2&s?16384:0);return c.type=4&s?jl(e):e,c}));return e.concatenate(t.parameters.slice(0,n),o)}}function _s(e,t,r,n,i){for(var a=0,o=e;a<o.length;a++){var s=o[a];if(ef(s,t,r,n,i,r?op:ip))return s}}function hs(t,r,n){if(r.typeParameters){if(n>0)return;for(var i=1;i<t.length;i++)if(!_s(t[i],r,!1,!1,!1))return;return[r]}var a;for(i=0;i<t.length;i++){var o=i===n?r:_s(t[i],r,!0,!1,!0);if(!o)return;a=e.appendIfUnique(a,o)}return a}function ys(t){for(var r,n,i=0;i<t.length;i++){if(0===t[i].length)return e.emptyArray;t[i].length>1&&(n=void 0===n?i:-1);for(var a=0,o=t[i];a<o.length;a++){var s=o[a];if(!r||!_s(r,s,!1,!1,!0)){var c=hs(t,s,i);if(c){var l=s;if(c.length>1){var u=s.thisParameter,d=e.forEach(c,(function(e){return e.thisParameter}));if(d)u=jf(d,fu(e.mapDefined(c,(function(e){return e.thisParameter&&_o(e.thisParameter)}))));(l=fs(s,c)).thisParameter=u}(r||(r=[])).push(l)}}}}if(!e.length(r)&&-1!==n){for(var p=t[void 0!==n?n:0],f=p.slice(),m=function(t){if(t!==p){var r=t[0];if(e.Debug.assert(!!r,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),f=r.typeParameters&&e.some(f,(function(e){return!!e.typeParameters&&!function(e,t){if(e.length!==t.length)return!1;for(var r=Td(t,e),n=0;n<e.length;n++){var i=e[n],a=t[n];if(i!==a&&!np(tl(i)||Ae,Wd(tl(a)||Ae,r)))return!1}return!0}(r.typeParameters,e.typeParameters)}))?void 0:e.map(f,(function(t){return function(t,r){var n,i=t.typeParameters||r.typeParameters;t.typeParameters&&r.typeParameters&&(n=Td(r.typeParameters,t.typeParameters));var a=t.declaration,o=function(e,t,r){for(var n=ov(e),i=ov(t),a=n>=i?e:t,o=a===e?t:e,s=a===e?n:i,c=cv(e)||cv(t),l=c&&!cv(a),u=new Array(s+(l?1:0)),d=0;d<s;d++){var p=iv(a,d);a===t&&(p=Wd(p,r));var f=iv(o,d)||Ae;o===t&&(f=Wd(f,r));var m=fu([p,f]),g=c&&!l&&d===s-1,_=d>=sv(a)&&d>=sv(o),h=d>=n?void 0:ev(e,d),y=d>=i?void 0:ev(t,d),v=yn(1|(_&&!g?16777216:0),(h===y?h:h?y?void 0:h:y)||"arg"+d);v.type=g?jl(m):m,u[d]=v}if(l){var b=yn(1,"args");b.type=jl(nv(o,s)),o===t&&(b.type=Wd(b.type,r)),u[s]=b}return u}(t,r,n),s=function(e,t,r){if(!e||!t)return e||t;var n=fu([_o(e),Wd(_o(t),r)]);return jf(e,n)}(t.thisParameter,r.thisParameter,n),c=Math.max(t.minArgumentCount,r.minArgumentCount),l=ds(a,i,s,o,void 0,void 0,c,39&(t.flags|r.flags));l.unionSignatures=e.concatenate(t.unionSignatures||[t],[r]),n&&(l.mapper=t.mapper&&t.unionSignatures?Fd(t.mapper,n):n);return l}(t,r)})),!f)return"break"}},g=0,_=t;g<_.length;g++){if("break"===m(_[g]))break}r=f}return r||e.emptyArray}function vs(e,t){for(var r=[],n=!1,i=0,a=e;i<a.length;i++){var o=bc(ac(a[i]),t);if(!o)return;r.push(o.type),n=n||o.isReadonly}return Qc(ou(r,2),n)}function bs(e,t){return e?t?fu([e,t]):e:t}function ks(e,t){return e?t?Qc(fu([e.type,t.type]),e.isReadonly&&t.isReadonly):e:t}function xs(e,t){return e&&t&&Qc(ou([e.type,t.type]),e.isReadonly||t.isReadonly)}function Es(t){var r=e.countWhere(t,(function(e){return hc(e,1).length>0})),n=e.map(t,So);if(r>0&&r===e.countWhere(n,(function(e){return e}))){var i=n.indexOf(!0);n[i]=!1}return n}function Ss(t){for(var r,n,i,a,o=t.types,s=Es(o),c=e.countWhere(s,(function(e){return e})),l=function(l){var u=t.types[l];if(!s[l]){var d=hc(u,1);d.length&&c>0&&(d=e.map(d,(function(e){var t=ps(e);return t.resolvedReturnType=function(e,t,r,n){for(var i=[],a=0;a<t.length;a++)a===n?i.push(e):r[a]&&i.push(Bc(hc(t[a],1)[0]));return fu(i)}(Bc(e),o,s,l),t}))),n=Ds(n,d)}r=Ds(r,hc(u,0)),i=ks(i,bc(u,0)),a=ks(a,bc(u,1))},u=0;u<o.length;u++)l(u);Ki(t,T,r||e.emptyArray,n||e.emptyArray,i,a)}function Ds(t,r){for(var n=function(r){t&&!e.every(t,(function(e){return!ef(e,r,!1,!1,!1,ip)}))||(t=e.append(t,r))},i=0,a=r;i<a.length;i++){n(a[i])}return t}function ws(t){var r=Ci(t.symbol);if(t.target)Ki(t,T,e.emptyArray,e.emptyArray,void 0,void 0),Ki(t,a=$o(qs(t.target),t.mapper,!1),n=wd(hc(t.target,0),t.mapper),i=wd(hc(t.target,1),t.mapper),o=Xd(bc(t.target,0),t.mapper),l=Xd(bc(t.target,1),t.mapper));else if(2048&r.flags){Ki(t,T,e.emptyArray,e.emptyArray,void 0,void 0);var n=Rc((a=ss(r)).get("__call")),i=Rc(a.get("__new"));Ki(t,a,n,i,o=Zc(r,0),l=Zc(r,1))}else{var a=T,o=void 0;if(r.exports&&(a=Si(r),r===ae)){var s=new e.Map;a.forEach((function(e){418&e.flags||s.set(e.escapedName,e)})),a=s}if(Ki(t,a,e.emptyArray,e.emptyArray,void 0,void 0),32&r.flags){var c=Ao(Oo(r));11272192&c.flags?Yo(a=e.createSymbolTable(Hi(a)),Hs(c)):c===Ee&&(o=Qc(Ee,!1))}var l=384&r.flags&&(32&Jo(r).flags||e.some(t.properties,(function(e){return!!(296&_o(e).flags)})))?fr:void 0;if(Ki(t,a,e.emptyArray,e.emptyArray,o,l),8208&r.flags&&(t.callSignatures=Rc(r)),32&r.flags){var u=Oo(r);i=r.members?Rc(r.members.get("__constructor")):e.emptyArray;16&r.flags&&(i=e.addRange(i.slice(),e.mapDefined(t.callSignatures,(function(e){return Fy(e.declaration)?ds(e.declaration,e.typeParameters,e.thisParameter,e.parameters,u,void 0,e.minArgumentCount,39&e.flags):void 0})))),i.length||(i=function(t){var r=hc(Ao(t),1),n=e.getClassLikeDeclarationOfSymbol(t.symbol),i=!!n&&e.hasSyntacticModifier(n,128);if(0===r.length)return[ds(void 0,t.localTypeParameters,void 0,e.emptyArray,t,void 0,0,i?4:0)];for(var a=wo(t),o=e.isInJSFile(a),s=Sl(a),c=e.length(s),l=[],u=0,d=r;u<d.length;u++){var p=d[u],f=Nc(p.typeParameters),m=e.length(p.typeParameters);if(o||c>=f&&c<=m){var g=m?Hc(p,Pc(s,p.typeParameters,f,o)):ps(p);g.typeParameters=t.localTypeParameters,g.resolvedReturnType=t,g.flags=i?4|g.flags:-5&g.flags,l.push(g)}}return l}(u)),t.constructSignatures=i}}}function Ts(t){if(4194304&t.flags){var r=ac(t.type);return bf(r)?Yl(r):Eu(r)}if(16777216&t.flags){if(t.root.isDistributive){var n=t.checkType,i=Ts(n);if(i!==n)return Kd(t,Rd(t.root.checkType,i,t.mapper))}return t}return 1048576&t.flags?pg(t,Ts):2097152&t.flags?fu(e.sameMap(t.types,Ts)):t}function Cs(t){return 4096&e.getCheckFlags(t)}function As(t){var r,n,i=e.createSymbolTable();Ki(t,T,e.emptyArray,e.emptyArray,void 0,void 0);var a=Ns(t),o=Ps(t),s=Is(t.target||t),c=Fs(t.target||t),l=ac(Ms(t)),u=Ls(t),d=Z?128:8576;if(Rs(t)){for(var p=0,f=Hs(l);p<f.length;p++){m(bu(f[p],d))}(1&l.flags||bc(l,0))&&m(Re),!Z&&bc(l,1)&&m(Me)}else cg(Ts(o),m);function m(e){cg(s?Wd(s,Md(t.mapper,a,e)):e,(function(o){return function(e,o){if(Zo(o)){var s=is(o),d=i.get(s);if(d)d.nameType=ou([d.nameType,o]),d.keyType=ou([d.keyType,e]);else{var p=Zo(e)?gc(l,is(e)):void 0,f=!!(4&u||!(8&u)&&p&&16777216&p.flags),m=!!(1&u||!(2&u)&&p&&Nv(p)),g=W&&!f&&p&&16777216&p.flags,_=yn(4|(f?16777216:0),s,262144|(p?Cs(p):0)|(m?8:0)|(g?524288:0));_.mappedType=t,_.nameType=o,_.keyType=e,p&&(_.syntheticOrigin=p,_.declarations=p.declarations),i.set(s,_)}}else if(45&o.flags){var h=Wd(c,Md(t.mapper,a,e));5&o.flags?r=Qc(r?ou([r.type,h]):h,!!(1&u)):n=Qc(n?ou([n.type,h]):h,!!(1&u))}}(e,o)}))}Ki(t,i,e.emptyArray,e.emptyArray,r,n)}function Ns(e){return e.typeParameter||(e.typeParameter=qo(Ai(e.declaration.typeParameter)))}function Ps(e){return e.constraintType||(e.constraintType=Ws(Ns(e))||we)}function Is(e){return e.declaration.nameType?e.nameType||(e.nameType=Wd(xd(e.declaration.nameType),e.mapper)):void 0}function Fs(e){return e.templateType||(e.templateType=e.declaration.type?Wd(za(xd(e.declaration.type),!!(4&Ls(e))),e.mapper):we)}function Os(t){return e.getEffectiveConstraintOfTypeParameter(t.declaration.typeParameter)}function Rs(e){var t=Os(e);return 189===t.kind&&139===t.operator}function Ms(e){if(!e.modifiersType)if(Rs(e))e.modifiersType=Wd(xd(Os(e).type),e.mapper);else{var t=Ps(Ku(e.declaration)),r=t&&262144&t.flags?Ws(t):t;e.modifiersType=r&&4194304&r.flags?Wd(r.type,e.mapper):Ae}return e.modifiersType}function Ls(e){var t=e.declaration;return(t.readonlyToken?40===t.readonlyToken.kind?2:1:0)|(t.questionToken?40===t.questionToken.kind?8:4:0)}function js(e){var t=Ls(e);return 8&t?-1:4&t?1:0}function Bs(e){var t=js(e),r=Ms(e);return t||(zs(r)?js(r):0)}function zs(t){return!!(32&e.getObjectFlags(t))&&Mu(Ps(t))}function Us(t){return t.members||(524288&t.flags?4&t.objectFlags?function(t){var r=Qo(t.target),n=e.concatenate(r.typeParameters,[r.thisType]),i=ll(t);us(t,r,n,i.length===n.length?i:e.concatenate(i,[t]))}(t):3&t.objectFlags?function(t){us(t,Qo(t),e.emptyArray,e.emptyArray)}(t):2048&t.objectFlags?function(t){for(var r=bc(t.source,0),n=Ls(t.mappedType),i=!(1&n),a=4&n?0:16777216,o=r&&Qc(um(r.type,t.mappedType,t.constraintType),i&&r.isReadonly),s=e.createSymbolTable(),c=0,l=Hs(t.source);c<l.length;c++){var u=l[c],d=8192|(i&&Nv(u)?8:0),p=yn(4|u.flags&a,u.escapedName,d);p.declarations=u.declarations,p.nameType=Tn(u).nameType,p.propertyType=_o(u),p.mappedType=t.mappedType,p.constraintType=t.constraintType,s.set(u.escapedName,p)}Ki(t,s,e.emptyArray,e.emptyArray,o,void 0)}(t):16&t.objectFlags?ws(t):32&t.objectFlags&&As(t):1048576&t.flags?function(t){var r=ys(e.map(t.types,(function(e){return e===vt?[ur]:hc(e,0)}))),n=ys(e.map(t.types,(function(e){return hc(e,1)}))),i=vs(t.types,0),a=vs(t.types,1);Ki(t,T,r,n,i,a)}(t):2097152&t.flags&&Ss(t)),t}function qs(t){return 524288&t.flags?Us(t).properties:e.emptyArray}function Js(e,t){if(524288&e.flags){var r=Us(e).members.get(t);if(r&&Mi(r))return r}}function Vs(t){if(!t.resolvedProperties){for(var r=e.createSymbolTable(),n=0,i=t.types;n<i.length;n++){for(var a=i[n],o=0,s=Hs(a);o<s.length;o++){var c=s[o];if(!r.has(c.escapedName)){var l=lc(t,c.escapedName);l&&r.set(c.escapedName,l)}}if(1048576&t.flags&&!bc(a,0)&&!bc(a,1))break}t.resolvedProperties=Hi(r)}return t.resolvedProperties}function Hs(e){return 3145728&(e=oc(e)).flags?Vs(e):qs(e)}function Ks(e){return 262144&e.flags?Ws(e):8388608&e.flags?function(e){return ec(e)?function(e){var t=Gs(e.indexType);if(t&&t!==e.indexType){var r=Vu(e.objectType,t,e.noUncheckedIndexedAccessCandidate);if(r)return r}var n=Gs(e.objectType);if(n&&n!==e.objectType)return Vu(n,e.indexType,e.noUncheckedIndexedAccessCandidate);return}(e):void 0}(e):16777216&e.flags?function(e){return ec(e)?Xs(e):void 0}(e):Qs(e)}function Ws(e){return ec(e)?tl(e):void 0}function Gs(e){var t=ju(e,!1);return t!==e?t:Ks(e)}function $s(e){if(!e.resolvedDefaultConstraint){var t=function(e){return e.resolvedInferredTrueType||(e.resolvedInferredTrueType=e.combinedMapper?Wd(xd(e.root.node.trueType),e.combinedMapper):Xu(e))}(e),r=Qu(e);e.resolvedDefaultConstraint=Pa(t)?r:Pa(r)?t:ou([t,r])}return e.resolvedDefaultConstraint}function Ys(e){if(e.root.isDistributive&&e.restrictiveInstantiation!==e){var t=ju(e.checkType,!1),r=t===e.checkType?Ks(t):t;if(r&&r!==e.checkType){var n=Kd(e,Rd(e.root.checkType,r,e.mapper));if(!(131072&n.flags))return n}}}function Xs(e){return Ys(e)||$s(e)}function Qs(e){if(464781312&e.flags){var t=tc(e);return t!==lt&&t!==ut?t:void 0}return 4194304&e.flags?Qe:void 0}function Zs(e){return Qs(e)||e}function ec(e){return tc(e)!==ut}function tc(t){if(t.resolvedBaseConstraint)return t.resolvedBaseConstraint;var r=[];return t.resolvedBaseConstraint=ls(n(t),t);function n(t){if(!t.immediateBaseConstraint){if(!Da(t,4))return ut;var n=void 0;if((r.length<10||r.length<50&&!Yp(t,r,r.length))&&(r.push(t),n=function(t){if(262144&t.flags){var r=tl(t);return t.isThisType||!r?r:i(r)}if(3145728&t.flags){for(var n=[],a=!1,o=0,s=u=t.types;o<s.length;o++){var c=s[o],l=i(c);l?(l!==c&&(a=!0),n.push(l)):a=!0}return a?1048576&t.flags&&n.length===u.length?ou(n):2097152&t.flags&&n.length?fu(n):void 0:t}if(4194304&t.flags)return Qe;if(134217728&t.flags){var u=t.types,d=e.mapDefined(u,i);return d.length===u.length?Du(t.texts,d):Re}if(268435456&t.flags){return(r=i(t.type))?Tu(t.symbol,r):Re}if(8388608&t.flags){var p=i(t.objectType),f=i(t.indexType),m=p&&f&&Vu(p,f,t.noUncheckedIndexedAccessCandidate);return m&&i(m)}if(16777216&t.flags){return(r=Xs(t))&&i(r)}if(33554432&t.flags)return i(t.substitute);return t}(ju(t,!1)),r.pop()),!Ca()){if(262144&t.flags){var a=el(t);if(a){var o=pn(a,e.Diagnostics.Type_parameter_0_has_a_circular_constraint,da(t));!d||e.isNodeDescendantOf(a,d)||e.isNodeDescendantOf(d,a)||e.addRelatedInfo(o,e.createDiagnosticForNode(d,e.Diagnostics.Circularity_originates_in_type_at_this_location))}}n=ut}t.immediateBaseConstraint=n||lt}return t.immediateBaseConstraint}function i(e){var t=n(e);return t!==lt&&t!==ut?t:void 0}}function rc(t){if(t.default)t.default===dt&&(t.default=ut);else if(t.target){var r=rc(t.target);t.default=r?Wd(r,t.mapper):lt}else{t.default=dt;var n=t.symbol&&e.forEach(t.symbol.declarations,(function(t){return e.isTypeParameterDeclaration(t)&&t.default})),i=n?xd(n):lt;t.default===dt&&(t.default=i)}return t.default}function nc(e){var t=rc(e);return t!==lt&&t!==ut?t:void 0}function ic(e){return e.resolvedApparentType||(e.resolvedApparentType=function(e){var t=Ud(e);if(t&&!e.declaration.nameType){var r=Ws(t);if(r&&(rf(r)||vf(r)))return Wd(e,Rd(t,r,e.mapper))}return e}(e))}function ac(t){var r,n=465829888&t.flags?Qs(t)||Ae:t;return 32&e.getObjectFlags(n)?ic(n):2097152&n.flags?function(e){return e.resolvedApparentType||(e.resolvedApparentType=ls(e,e,!0))}(n):402653316&n.flags?St:296&n.flags?Dt:2112&n.flags?(r=V>=7,er||(er=Al("BigInt",0,r))||nt):528&n.flags?wt:12288&n.flags?Pl(V>=2):67108864&n.flags?nt:4194304&n.flags?Qe:2&n.flags&&!W?nt:n}function oc(e){return uc(ac(uc(e)))}function sc(t,r,n){for(var i,a,o,s=1048576&t.flags,c=s?0:16777216,l=4,u=0,d=0,p=t.types;d<p.length;d++){if(!((D=ac(p[d]))===we||131072&D.flags)){var f=(S=gc(D,r,n))?e.getDeclarationModifierFlagsFromSymbol(S):0;if(S){if(s?c|=16777216&S.flags:c&=S.flags,i){if(S!==i){a||(a=new e.Map).set(R(i),i);var m=R(S);a.has(m)||a.set(m,S)}}else i=S;u|=(Nv(S)?8:0)|(24&f?0:256)|(16&f?512:0)|(8&f?1024:0)|(32&f?2048:0),uh(S)||(l=2)}else if(s){var g=!ts(r)&&(R_(r)&&bc(D,1)||bc(D,0));g?(u|=32|(g.isReadonly?8:0),o=e.append(o,vf(D)?xf(D)||Ne:g.type)):km(D)?(u|=32,o=e.append(o,Ne)):u|=16}}}if(i&&!(s&&(a||48&u)&&1536&u)){if(!(a||16&u||o))return i;for(var _,h,y,v,b=[],k=!1,x=0,E=a?e.arrayFrom(a.values()):[i];x<E.length;x++){var S=E[x];v?S.valueDeclaration&&S.valueDeclaration!==v&&(k=!0):v=S.valueDeclaration,_=e.addRange(_,S.declarations);var D=_o(S);h?D!==h&&(u|=64):(h=D,y=Tn(S).nameType),ff(D)&&(u|=128),131072&D.flags&&(u|=131072),b.push(D)}e.addRange(b,o);var w=yn(4|c,r,l|u);return w.containingType=t,!k&&v&&(w.valueDeclaration=v,v.symbol.parent&&(w.parent=v.symbol.parent)),w.declarations=_,w.nameType=y,b.length>2?(w.checkFlags|=65536,w.deferralParent=t,w.deferralConstituents=b):w.type=s?ou(b):fu(b),w}}function cc(t,r,n){var i,a,o=(null===(i=t.propertyCacheWithoutObjectFunctionPropertyAugment)||void 0===i?void 0:i.get(r))||!n?null===(a=t.propertyCache)||void 0===a?void 0:a.get(r):void 0;o||(o=sc(t,r,n))&&(n?t.propertyCacheWithoutObjectFunctionPropertyAugment||(t.propertyCacheWithoutObjectFunctionPropertyAugment=e.createSymbolTable()):t.propertyCache||(t.propertyCache=e.createSymbolTable())).set(r,o);return o}function lc(t,r,n){var i=cc(t,r,n);return!i||16&e.getCheckFlags(i)?void 0:i}function uc(t){return 1048576&t.flags&&268435456&t.objectFlags?t.resolvedReducedType||(t.resolvedReducedType=function(t){var r=e.sameMap(t.types,uc);if(r===t.types)return t;var n=ou(r);1048576&n.flags&&(n.resolvedReducedType=n);return n}(t)):2097152&t.flags?(268435456&t.objectFlags||(t.objectFlags|=268435456|(e.some(Vs(t),dc)?536870912:0)),536870912&t.objectFlags?He:t):t}function dc(e){return pc(e)||fc(e)}function pc(t){return!(16777216&t.flags||192!=(131264&e.getCheckFlags(t))||!(131072&_o(t).flags))}function fc(t){return!t.valueDeclaration&&!!(1024&e.getCheckFlags(t))}function mc(t,r){if(536870912&e.getObjectFlags(r)){var n=e.find(Vs(r),pc);if(n)return e.chainDiagnosticMessages(t,e.Diagnostics.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,da(r,void 0,536870912),la(n));var i=e.find(Vs(r),fc);if(i)return e.chainDiagnosticMessages(t,e.Diagnostics.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,da(r,void 0,536870912),la(i))}return t}function gc(e,t,r){if(524288&(e=oc(e)).flags){var n=Us(e),i=n.members.get(t);if(i&&Mi(i))return i;if(r)return;var a=n===ct?vt:n.callSignatures.length?bt:n.constructSignatures.length?kt:void 0;if(a){var o=Js(a,t);if(o)return o}return Js(yt,t)}if(3145728&e.flags)return lc(e,t,r)}function _c(t,r){if(3670016&t.flags){var n=Us(t);return 0===r?n.callSignatures:n.constructSignatures}return e.emptyArray}function hc(e,t){return _c(oc(e),t)}function yc(e,t){if(3670016&e.flags){var r=Us(e);return 0===t?r.stringIndexInfo:r.numberIndexInfo}}function vc(e,t){var r=yc(e,t);return r&&r.type}function bc(e,t){return yc(oc(e),t)}function kc(e,t){return vc(oc(e),t)}function xc(t,r){if(Lf(t)){for(var n=[],i=0,a=Hs(t);i<a.length;i++){var o=a[i];(0===r||R_(o.escapedName))&&n.push(_o(o))}if(0===r&&e.append(n,kc(t,1)),n.length)return ou(n)}}function Ec(t){for(var r,n=0,i=e.getEffectiveTypeParameterDeclarations(t);n<i.length;n++){var a=i[n];r=e.appendIfUnique(r,qo(a.symbol))}return r}function Sc(e){var t=[];return e.forEach((function(e,r){Vi(r)||t.push(e)})),t}function Dc(t){return e.isInJSFile(t)&&(t.type&&310===t.type.kind||e.getJSDocParameterTags(t).some((function(e){var t=e.isBracketed,r=e.typeExpression;return t||!!r&&310===r.type.kind})))}function wc(t,r){if(!e.isExternalModuleNameRelative(t)){var n=Nn(ne,'"'+t+'"',512);return n&&r?Ci(n):n}}function Tc(t){if(e.hasQuestionToken(t)||Cc(t)||Dc(t))return!0;if(t.initializer){var r=Ic(t.parent),n=t.parent.parameters.indexOf(t);return e.Debug.assert(n>=0),n>=sv(r,3)}var i=e.getImmediatelyInvokedFunctionExpression(t.parent);return!!i&&(!t.type&&!t.dotDotDotToken&&t.parent.parameters.indexOf(t)>=i.arguments.length)}function Cc(t){if(!e.isJSDocPropertyLikeTag(t))return!1;var r=t.isBracketed,n=t.typeExpression;return r||!!n&&310===n.type.kind}function Ac(e,t,r,n){return{kind:e,parameterName:t,parameterIndex:r,type:n}}function Nc(t){var r,n=0;if(t)for(var i=0;i<t.length;i++)(r=t[i]).symbol&&e.forEach(r.symbol.declarations,(function(t){return e.isTypeParameterDeclaration(t)&&t.default}))||(n=i+1);return n}function Pc(t,r,n,i){var a=e.length(r);if(!a)return[];var o=e.length(t);if(i||o>=n&&o<=a){for(var s=t?t.slice():[],c=o;c<a;c++)s[c]=we;var l=wm(i);for(c=o;c<a;c++){var u=nc(r[c]);i&&u&&(np(u,Ae)||np(u,nt))&&(u=Ee),s[c]=u?Wd(u,Td(r,s)):l}return s.length=r.length,s}return t&&t.slice()}function Ic(t){var r,n=Cn(t);if(!n.resolvedSignature){var i=[],a=0,o=0,s=void 0,c=!1,l=e.getImmediatelyInvokedFunctionExpression(t),u=e.isJSDocConstructSignature(t);!l&&e.isInJSFile(t)&&e.isValueSignatureDeclaration(t)&&!e.hasJSDocParameterTags(t)&&!e.getJSDocType(t)&&(a|=32);for(var d=u?1:0;d<t.parameters.length;d++){var p=t.parameters[d],f=p.symbol,m=e.isJSDocParameterTag(p)?p.typeExpression&&p.typeExpression.type:p.type;if(f&&4&f.flags&&!e.isBindingPattern(p.name))f=Fn(p,f.escapedName,111551,void 0,void 0,!1);0===d&&f&&"this"===f.escapedName?(c=!0,s=p.symbol):i.push(f),m&&192===m.kind&&(a|=2),Cc(p)||p.initializer||p.questionToken||p.dotDotDotToken||l&&i.length>l.arguments.length&&!m||Dc(p)||(o=i.length)}if((168===t.kind||169===t.kind)&&ns(t)&&(!c||!s)){var g=168===t.kind?169:168,_=e.getDeclarationOfKind(Ai(t),g);_&&(s=(r=rS(_))&&r.symbol)}var h=167===t.kind?Oo(Ci(t.parent.symbol)):void 0,y=h?h.localTypeParameters:Ec(t);(e.hasRestParameter(t)||e.isInJSFile(t)&&function(t,r){if(e.isJSDocSignature(t)||!Oc(t))return!1;var n=e.lastOrUndefined(t.parameters),i=n?e.getJSDocParameterTags(n):e.getJSDocTags(t).filter(e.isJSDocParameterTag),a=e.firstDefined(i,(function(t){return t.typeExpression&&e.isJSDocVariadicType(t.typeExpression.type)?t.typeExpression.type:void 0})),o=yn(3,"args",32768);o.type=a?jl(xd(a.type)):At,a&&r.pop();return r.push(o),!0}(t,i))&&(a|=1),(e.isConstructorTypeNode(t)&&e.hasSyntacticModifier(t,128)||e.isConstructorDeclaration(t)&&e.hasSyntacticModifier(t.parent,128))&&(a|=4),n.resolvedSignature=ds(t,y,s,i,void 0,void 0,o,a)}return n.resolvedSignature}function Fc(t){if(e.isInJSFile(t)&&e.isFunctionLikeDeclaration(t)){var r=e.getJSDocTypeTag(t),n=r&&r.typeExpression&&Qh(xd(r.typeExpression));return n&&Kc(n)}}function Oc(t){var r=Cn(t);return void 0===r.containsArgumentsReference&&(8192&r.flags?r.containsArgumentsReference=!0:r.containsArgumentsReference=function t(r){if(!r)return!1;switch(r.kind){case 78:return r.escapedText===se.escapedName&&Am(r)===se;case 164:case 166:case 168:case 169:return 159===r.name.kind&&t(r.name);case 202:case 203:return t(r.expression);default:return!e.nodeStartsNewLexicalEnvironment(r)&&!e.isPartOfTypeNode(r)&&!!e.forEachChild(r,t)}}(t.body)),r.containsArgumentsReference}function Rc(t){if(!t)return e.emptyArray;for(var r=[],n=0;n<t.declarations.length;n++){var i=t.declarations[n];if(e.isFunctionLike(i)){if(n>0&&i.body){var a=t.declarations[n-1];if(i.parent===a.parent&&i.kind===a.kind&&i.pos===a.end)continue}r.push(Ic(i))}}return r}function Mc(e){var t=gi(e,e);if(t){var r=vi(t);if(r)return _o(r)}return Ee}function Lc(e){if(e.thisParameter)return _o(e.thisParameter)}function jc(t){if(!t.resolvedTypePredicate){if(t.target){var r=jc(t.target);t.resolvedTypePredicate=r?(o=r,s=t.mapper,Ac(o.kind,o.parameterName,o.parameterIndex,Wd(o.type,s))):cr}else if(t.unionSignatures)t.resolvedTypePredicate=function(e){for(var t,r=[],n=0,i=e;n<i.length;n++){var a=jc(i[n]);if(a&&2!==a.kind&&3!==a.kind){if(t){if(!su(t,a))return}else t=a;r.push(a.type)}}if(!t)return;var o=ou(r);return Ac(t.kind,t.parameterName,t.parameterIndex,o)}(t.unionSignatures)||cr;else{var n=t.declaration&&e.getEffectiveReturnTypeNode(t.declaration),i=void 0;if(!n&&e.isInJSFile(t.declaration)){var a=Fc(t.declaration);a&&t!==a&&(i=jc(a))}t.resolvedTypePredicate=n&&e.isTypePredicateNode(n)?function(t,r){var n=t.parameterName,i=t.type&&xd(t.type);return 188===n.kind?Ac(t.assertsModifier?2:0,void 0,void 0,i):Ac(t.assertsModifier?3:1,n.escapedText,e.findIndex(r.parameters,(function(e){return e.escapedName===n.escapedText})),i)}(n,t):i||cr}e.Debug.assert(!!t.resolvedTypePredicate)}var o,s;return t.resolvedTypePredicate===cr?void 0:t.resolvedTypePredicate}function Bc(t){if(!t.resolvedReturnType){if(!Da(t,3))return we;var r=t.target?Wd(Bc(t.target),t.mapper):t.unionSignatures?Wd(ou(e.map(t.unionSignatures,Bc),2),t.mapper):zc(t.declaration)||(e.nodeIsMissing(t.declaration.body)?Ee:vv(t.declaration));if(8&t.flags?r=If(r):16&t.flags&&(r=Nf(r)),!Ca()){if(t.declaration){var n=e.getEffectiveReturnTypeNode(t.declaration);if(n)pn(n,e.Diagnostics.Return_type_annotation_circularly_references_itself);else if(X){var i=t.declaration,a=e.getNameOfDeclaration(i);a?pn(a,e.Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,e.declarationNameToString(a)):pn(i,e.Diagnostics.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}r=Ee}t.resolvedReturnType=r}return t.resolvedReturnType}function zc(t){if(167===t.kind)return Oo(Ci(t.parent.symbol));if(e.isJSDocConstructSignature(t))return xd(t.parameters[0].type);var r,n=e.getEffectiveReturnTypeNode(t);if(n)return xd(n);if(168===t.kind&&ns(t)){var i=e.isInJSFile(t)&&ja(t);if(i)return i;var a=so(e.getDeclarationOfKind(Ai(t),169));if(a)return a}return(r=Fc(t))&&Bc(r)}function Uc(e){return!e.resolvedReturnType&&wa(e,3)>=0}function qc(e){if(U(e)){var t=_o(e.parameters[e.parameters.length-1]),r=vf(t)?xf(t):t;return r&&kc(r,1)}}function Jc(e,t,r,n){var i=Vc(e,Pc(t,e.typeParameters,Nc(e.typeParameters),r));if(n){var a=Zh(Bc(i));if(a){var o=ps(a);o.typeParameters=n;var s=ps(i);return s.resolvedReturnType=$c(o),s}}return i}function Vc(t,r){var n=t.instantiations||(t.instantiations=new e.Map),i=nl(r),a=n.get(i);return a||n.set(i,a=Hc(t,r)),a}function Hc(e,t){return jd(e,function(e,t){return Td(e.typeParameters,t)}(e,t),!0)}function Kc(e){return e.typeParameters?e.erasedSignatureCache||(e.erasedSignatureCache=function(e){return jd(e,Id(e.typeParameters),!0)}(e)):e}function Wc(t){return t.typeParameters?t.canonicalSignatureCache||(t.canonicalSignatureCache=function(t){return Jc(t,e.map(t.typeParameters,(function(e){return e.target&&!Ws(e.target)?e.target:e})),e.isInJSFile(t.declaration))}(t)):t}function Gc(t){var r=t.typeParameters;if(r){var n=Id(r);return jd(t,Td(r,e.map(r,(function(e){return Wd(Qs(e),n)||Ae}))),!0)}return t}function $c(t){if(!t.isolatedSignatureType){var r=t.declaration?t.declaration.kind:0,n=167===r||171===r||176===r,i=qi(16);i.members=T,i.properties=e.emptyArray,i.callSignatures=n?e.emptyArray:[t],i.constructSignatures=n?[t]:e.emptyArray,t.isolatedSignatureType=i}return t.isolatedSignatureType}function Yc(e){return e.members.get("__index")}function Xc(t,r){var n=1===r?145:148,i=Yc(t);if(i)for(var a=0,o=i.declarations;a<o.length;a++){var s=o[a],c=e.cast(s,e.isIndexSignatureDeclaration);if(1===c.parameters.length){var l=c.parameters[0];if(l.type&&l.type.kind===n)return c}}}function Qc(e,t,r){return{type:e,isReadonly:t,declaration:r}}function Zc(t,r){var n=Xc(t,r);if(n)return Qc(n.type?xd(n.type):Ee,e.hasEffectiveModifier(n,64),n)}function el(t){return e.mapDefined(e.filter(t.symbol&&t.symbol.declarations,e.isTypeParameterDeclaration),e.getEffectiveConstraintOfTypeParameter)[0]}function tl(t){if(!t.constraint)if(t.target){var r=Ws(t.target);t.constraint=r?Wd(r,t.mapper):lt}else{var n=el(t);if(n){var i=xd(n);1&i.flags&&i!==we&&(i=191===n.parent.parent.kind?Qe:Ae),t.constraint=i}else t.constraint=function(t){var r;if(t.symbol)for(var n=0,i=t.symbol.declarations;n<i.length;n++){var a=i[n];if(186===a.parent.kind){var o=e.walkUpParenthesizedTypesAndGetParentAndChild(a.parent.parent),s=o[0],c=void 0===s?a.parent:s,l=o[1];if(174===l.kind){var u=l,d=Nb(u);if(d){var p=u.typeArguments.indexOf(c);if(p<d.length){var f=Ws(d[p]);if(f){var m=Wd(f,Td(d,Cb(u,d)));m!==t&&(r=e.append(r,m))}}}}else 161===l.kind&&l.dotDotDotToken||182===l.kind||193===l.kind&&l.dotDotDotToken?r=e.append(r,jl(Ae)):195===l.kind?r=e.append(r,Re):160===l.kind&&191===l.parent.kind&&(r=e.append(r,Qe))}}return r&&fu(r)}(t)||lt}return t.constraint===lt?void 0:t.constraint}function rl(t){var r=e.getDeclarationOfKind(t.symbol,160),n=e.isJSDocTemplateTag(r.parent)?e.getHostSignatureFromJSDoc(r.parent):r.parent;return n&&Ai(n)}function nl(e){var t="";if(e)for(var r=e.length,n=0;n<r;){for(var i=e[n].id,a=1;n+a<r&&e[n+a].id===i+a;)a++;t.length&&(t+=","),t+=i,a>1&&(t+=":"+a),n+=a}return t}function il(e,t){return e?"@"+R(e)+(t?":"+nl(t):""):""}function al(t,r){for(var n=0,i=0,a=t;i<a.length;i++){var o=a[i];o.flags&r||(n|=e.getObjectFlags(o))}return 3670016&n}function ol(e,t){var r=nl(t),n=e.instantiations.get(r);return n||(n=qi(4,e.symbol),e.instantiations.set(r,n),n.objectFlags|=t?al(t,0):0,n.target=e,n.resolvedTypeArguments=t),n}function sl(e){var t=ji(e.flags);return t.symbol=e.symbol,t.objectFlags=e.objectFlags,t.target=e.target,t.resolvedTypeArguments=e.resolvedTypeArguments,t}function cl(e,t,r,n,i){if(!n){var a=ad(n=id(t));i=r?Dd(a,r):a}var o=qi(4,e.symbol);return o.target=e,o.node=t,o.mapper=r,o.aliasSymbol=n,o.aliasTypeArguments=i,o}function ll(t){var r,n;if(!t.resolvedTypeArguments){if(!Da(t,6))return(null===(r=t.target.localTypeParameters)||void 0===r?void 0:r.map((function(){return we})))||e.emptyArray;var i=t.node,a=i?174===i.kind?e.concatenate(t.target.outerTypeParameters,Cb(i,t.target.localTypeParameters)):179===i.kind?[xd(i.elementType)]:e.map(i.elements,xd):e.emptyArray;Ca()?t.resolvedTypeArguments=t.mapper?Dd(a,t.mapper):a:(t.resolvedTypeArguments=(null===(n=t.target.localTypeParameters)||void 0===n?void 0:n.map((function(){return we})))||e.emptyArray,pn(t.node||d,t.target.symbol?e.Diagnostics.Type_arguments_for_0_circularly_reference_themselves:e.Diagnostics.Tuple_type_arguments_circularly_reference_themselves,t.target.symbol&&la(t.target.symbol)))}return t.resolvedTypeArguments}function ul(t){return e.length(t.target.typeParameters)}function dl(t,r){var n=Jo(Ci(r)),i=n.localTypeParameters;if(i){var a=e.length(t.typeArguments),o=Nc(i),s=e.isInJSFile(t);if(!(!X&&s)&&(a<o||a>i.length)){var c=s&&e.isExpressionWithTypeArguments(t)&&!e.isJSDocAugmentsTag(t.parent);if(pn(t,o===i.length?c?e.Diagnostics.Expected_0_type_arguments_provide_these_with_an_extends_tag:e.Diagnostics.Generic_type_0_requires_1_type_argument_s:c?e.Diagnostics.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:e.Diagnostics.Generic_type_0_requires_between_1_and_2_type_arguments,da(n,void 0,2),o,i.length),!s)return we}return 174===t.kind&&ql(t,e.length(t.typeArguments)!==i.length)?cl(n,t,void 0):ol(n,e.concatenate(n.outerTypeParameters,Pc(Sl(t),i,o,s)))}return kl(t,r)?n:we}function pl(t,r,n,i){var a=Jo(t);if(a===Ce&&P.has(t.escapedName)&&r&&1===r.length)return Tu(t,r[0]);var o=Tn(t),s=o.typeParameters,c=nl(r)+il(n,i),l=o.instantiations.get(c);return l||o.instantiations.set(c,l=Gd(a,Td(s,Pc(r,s,Nc(s),e.isInJSFile(t.valueDeclaration))),n,i)),l}function fl(t){switch(t.kind){case 174:return t.typeName;case 225:var r=t.expression;if(e.isEntityNameExpression(r))return r}}function ml(e,t,r){return e&&fi(e,t,r)||ke}function gl(t,r){if(r===ke)return we;if(96&(r=function(t){var r=t.valueDeclaration;if(r&&e.isInJSFile(r)&&!(524288&t.flags)&&!e.getExpandoInitializer(r,!1)){var n=e.isVariableDeclaration(r)?e.getDeclaredExpandoInitializer(r):e.getAssignedExpandoInitializer(r);if(n){var i=Ai(n);if(i)return Oy(i,t)}}}(r)||r).flags)return dl(t,r);if(524288&r.flags)return function(t,r){var n=Jo(r),i=Tn(r).typeParameters;if(i){var a=e.length(t.typeArguments),o=Nc(i);if(a<o||a>i.length)return pn(t,o===i.length?e.Diagnostics.Generic_type_0_requires_1_type_argument_s:e.Diagnostics.Generic_type_0_requires_between_1_and_2_type_arguments,la(r),o,i.length),we;var s=id(t);return pl(r,Sl(t),s,ad(s))}return kl(t,r)?n:we}(t,r);var n=Vo(r);if(n)return kl(t,r)?gd(n):we;if(111551&r.flags&&bl(t)){var i=function(e,t){var r=Cn(e);if(!r.resolvedJSDocType){var n=_o(t),i=n;if(t.valueDeclaration){var a=196===e.kind&&e.qualifier;n.symbol&&n.symbol!==t&&a&&(i=gl(e,n.symbol))}r.resolvedJSDocType=i}return r.resolvedJSDocType}(t,r);return i||(ml(fl(t),788968),_o(r))}return we}function _l(e,t){if(3&t.flags||t===e)return e;var r=Zl(e)+">"+Zl(t),n=ye.get(r);if(n)return n;var i=ji(33554432);return i.baseType=e,i.substitute=t,ye.set(r,i),i}function hl(e){return 180===e.kind&&1===e.elements.length}function yl(e,t,r){return hl(t)&&hl(r)?yl(e,t.elements[0],r.elements[0]):Wu(xd(t))===e?xd(r):void 0}function vl(t,r){for(var n;r&&!e.isStatement(r)&&314!==r.kind;){var i=r.parent;if(185===i.kind&&r===i.trueType){var a=yl(t,i.checkType,i.extendsType);a&&(n=e.append(n,a))}r=i}return n?_l(t,fu(e.append(n,t))):t}function bl(e){return!!(4194304&e.flags)&&(174===e.kind||196===e.kind)}function kl(t,r){return!t.typeArguments||(pn(t,e.Diagnostics.Type_0_is_not_generic,r?la(r):t.typeName?e.declarationNameToString(t.typeName):l),!1)}function xl(t){if(e.isIdentifier(t.typeName)){var r=t.typeArguments;switch(t.typeName.escapedText){case"String":return kl(t),Re;case"Number":return kl(t),Me;case"Boolean":return kl(t),qe;case"Void":return kl(t),Ve;case"Undefined":return kl(t),Ne;case"Null":return kl(t),Fe;case"Function":case"function":return kl(t),vt;case"array":return r&&r.length||X?void 0:At;case"promise":return r&&r.length||X?void 0:_v(Ee);case"Object":if(r&&2===r.length){if(e.isJSDocIndexSignature(t)){var n=xd(r[0]),i=Qc(xd(r[1]),!1);return Wi(void 0,T,e.emptyArray,e.emptyArray,n===Re?i:void 0,n===Me?i:void 0)}return Ee}return kl(t),X?void 0:Ee}}}function El(t){var r=Cn(t);if(!r.resolvedType){if(e.isConstTypeReference(t)&&e.isAssertionExpression(t.parent))return r.resolvedSymbol=ke,r.resolvedType=$v(t.parent.expression);var n=void 0,i=void 0,a=788968;bl(t)&&((i=xl(t))||((n=ml(fl(t),a,!0))===ke?n=ml(fl(t),900095):ml(fl(t),a),i=gl(t,n))),i||(i=gl(t,n=ml(fl(t),a))),r.resolvedSymbol=n,r.resolvedType=i}return r.resolvedType}function Sl(t){return e.map(t.typeArguments,xd)}function Dl(e){var t=Cn(e);return t.resolvedType||(t.resolvedType=gd(Hf(fb(e.exprName)))),t.resolvedType}function wl(t,r){function n(e){for(var t=0,r=e.declarations;t<r.length;t++){var n=r[t];switch(n.kind){case 254:case 256:case 258:return n}}}if(!t)return r?st:nt;var i=Jo(t);return 524288&i.flags?e.length(i.typeParameters)!==r?(pn(n(t),e.Diagnostics.Global_type_0_must_have_1_type_parameter_s,e.symbolName(t),r),r?st:nt):i:(pn(n(t),e.Diagnostics.Global_type_0_must_be_a_class_or_interface_type,e.symbolName(t)),r?st:nt)}function Tl(t,r){return Cl(t,111551,r?e.Diagnostics.Cannot_find_global_value_0:void 0)}function Cl(e,t,r){return Fn(void 0,e,t,r,e,!1)}function Al(t,r,n){var i=function(t,r){return Cl(t,788968,r?e.Diagnostics.Cannot_find_global_type_0:void 0)}(t,n);return i||n?wl(i,r):void 0}function Nl(e){return Ft||(Ft=Tl("Symbol",e))}function Pl(e){return Ot||(Ot=Al("Symbol",0,e))||nt}function Il(e){return Mt||(Mt=Al("Promise",1,e))||st}function Fl(e){return jt||(jt=Tl("Promise",e))}function Ol(e){return zt||(zt=Al("Iterable",1,e))||st}function Rl(e,t){void 0===t&&(t=0);var r=Cl(e,788968,void 0);return r&&wl(r,t)}function Ml(e,t){return e!==st?ol(e,t):nt}function Ll(e){return Ml(Rt||(Rt=Al("TypedPropertyDescriptor",1,!0))||st,[e])}function jl(e,t){return Ml(t?Et:xt,[e])}function Bl(e){switch(e.kind){case 181:return 2;case 182:return zl(e);case 193:return e.questionToken?2:e.dotDotDotToken?zl(e):1;default:return 1}}function zl(e){return kd(e.type)?4:8}function Ul(t){var r=function(t){return e.isTypeOperatorNode(t)&&143===t.operator}(t.parent);return kd(t)?r?Et:xt:Kl(e.map(t.elements,Bl),r,e.some(t.elements,(function(e){return 193!==e.kind}))?void 0:t.elements)}function ql(t,r){return!!id(t)||Jl(t)&&(179===t.kind?Vl(t.elementType):180===t.kind?e.some(t.elements,Vl):r||e.some(t.typeArguments,Vl))}function Jl(e){var t=e.parent;switch(t.kind){case 187:case 193:case 174:case 183:case 184:case 190:case 185:case 189:case 179:case 180:return Jl(t);case 257:return!0}return!1}function Vl(t){switch(t.kind){case 174:return bl(t)||!!(524288&ml(t.typeName,788968).flags);case 177:return!0;case 189:return 152!==t.operator&&Vl(t.type);case 187:case 181:case 193:case 310:case 308:case 309:case 304:return Vl(t.type);case 182:return 179!==t.type.kind||Vl(t.type.elementType);case 183:case 184:return e.some(t.types,Vl);case 190:return Vl(t.objectType)||Vl(t.indexType);case 185:return Vl(t.checkType)||Vl(t.extendsType)||Vl(t.trueType)||Vl(t.falseType)}return!1}function Hl(t,r,n,i){void 0===n&&(n=!1);var a=Kl(r||e.map(t,(function(e){return 1})),n,i);return a===st?nt:t.length?Wl(a,t):a}function Kl(t,r,n){if(1===t.length&&4&t[0])return r?Et:xt;var i=e.map(t,(function(e){return 1&e?"#":2&e?"?":4&e?".":"*"})).join()+(r?"R":"")+(n&&n.length?","+e.map(n,O).join(","):""),a=de.get(i);return a||de.set(i,a=function(t,r,n){var i,a=t.length,o=e.countWhere(t,(function(e){return!!(9&e)})),s=[],c=0;if(a){i=new Array(a);for(var l=0;l<a;l++){var u=i[l]=Ji(),d=t[l];if(!(12&(c|=d))){var p=yn(4|(2&d?16777216:0),""+l,r?8:0);p.tupleLabelDeclaration=null==n?void 0:n[l],p.type=u,s.push(p)}}}var f=s.length,m=yn(4,"length");if(12&c)m.type=Me;else{var g=[];for(l=o;l<=a;l++)g.push(hd(l));m.type=ou(g)}s.push(m);var _=qi(12);return _.typeParameters=i,_.outerTypeParameters=void 0,_.localTypeParameters=i,_.instantiations=new e.Map,_.instantiations.set(nl(_.typeParameters),_),_.target=_,_.resolvedTypeArguments=_.typeParameters,_.thisType=Ji(),_.thisType.isThisType=!0,_.thisType.constraint=_,_.declaredProperties=s,_.declaredCallSignatures=e.emptyArray,_.declaredConstructSignatures=e.emptyArray,_.declaredStringIndexInfo=void 0,_.declaredNumberIndexInfo=void 0,_.elementFlags=t,_.minLength=o,_.fixedLength=f,_.hasRestElement=!!(12&c),_.combinedFlags=c,_.readonly=r,_.labeledElementDeclarations=n,_}(t,r,n)),a}function Wl(e,t){return 8&e.objectFlags?Gl(e,t):ol(e,t)}function Gl(t,r){var n,i,a;if(!(14&t.combinedFlags))return ol(t,r);if(8&t.combinedFlags){var o=e.findIndex(r,(function(e,r){return!!(8&t.elementFlags[r]&&1179648&e.flags)}));if(o>=0)return gu(e.map(r,(function(e,r){return 8&t.elementFlags[r]?e:Ae})))?pg(r[o],(function(n){return Gl(t,e.replaceElement(r,o,n))})):we}for(var s=[],c=[],l=[],u=-1,p=-1,f=-1,m=function(o){var c=r[o],l=t.elementFlags[o];if(8&l)if(58982400&c.flags||zs(c))y(c,8,null===(n=t.labeledElementDeclarations)||void 0===n?void 0:n[o]);else if(vf(c)){var u=ll(c);if(u.length+s.length>=1e4)return pn(d,e.isPartOfTypeNode(d)?e.Diagnostics.Type_produces_a_tuple_type_that_is_too_large_to_represent:e.Diagnostics.Expression_produces_a_tuple_type_that_is_too_large_to_represent),{value:we};e.forEach(u,(function(e,t){var r;return y(e,c.target.elementFlags[t],null===(r=c.target.labeledElementDeclarations)||void 0===r?void 0:r[t])}))}else y(sf(c)&&kc(c,1)||we,4,null===(i=t.labeledElementDeclarations)||void 0===i?void 0:i[o]);else y(c,l,null===(a=t.labeledElementDeclarations)||void 0===a?void 0:a[o])},g=0;g<r.length;g++){var _=m(g);if("object"==typeof _)return _.value}for(g=0;g<u;g++)2&c[g]&&(c[g]=1);p>=0&&p<f&&(s[p]=ou(e.sameMap(s.slice(p,f+1),(function(e,t){return 8&c[p+t]?qu(e,Me):e}))),s.splice(p+1,f-p),c.splice(p+1,f-p),null==l||l.splice(p+1,f-p));var h=Kl(c,t.readonly,l);return h===st?nt:c.length?ol(h,s):h;function y(e,t,r){1&t&&(u=c.length),4&t&&p<0&&(p=c.length),6&t&&(f=c.length),s.push(e),c.push(t),l&&r?l.push(r):l=void 0}}function $l(t,r,n){void 0===n&&(n=0);var i=t.target,a=ul(t)-n;return r>i.fixedLength?function(e){var t=xf(e);return t&&jl(t)}(t)||Hl(e.emptyArray):Hl(ll(t).slice(r,a),i.elementFlags.slice(r,a),!1,i.labeledElementDeclarations&&i.labeledElementDeclarations.slice(r,a))}function Yl(t){return ou(e.append(e.arrayOf(t.target.fixedLength,(function(e){return hd(""+e)})),Eu(t.target.readonly?Et:xt)))}function Xl(t,r){var n=e.findIndex(t.elementFlags,(function(e){return!(e&r)}));return n>=0?n:t.elementFlags.length}function Ql(t,r){return t.elementFlags.length-e.findLastIndex(t.elementFlags,(function(e){return!(e&r)}))-1}function Zl(e){return e.id}function eu(t,r){return e.binarySearch(t,r,Zl,e.compareValues)>=0}function tu(t,r){var n=e.binarySearch(t,r,Zl,e.compareValues);return n<0&&(t.splice(~n,0,r),!0)}function ru(t,r,n){var i=n.flags;if(1048576&i)return nu(t,r|(function(e){return!!(1048576&e.flags&&(e.aliasSymbol||e.origin))}(n)?1048576:0),n.types);if(!(131072&i))if(r|=205258751&i,469499904&i&&(r|=262144),n===De&&(r|=8388608),!W&&98304&i)524288&e.getObjectFlags(n)||(r|=4194304);else{var a=t.length,o=a&&n.id>t[a-1].id?~a:e.binarySearch(t,n,Zl,e.compareValues);o<0&&t.splice(~o,0,n)}return r}function nu(e,t,r){for(var n=0,i=r;n<i.length;n++){t=ru(e,t,i[n])}return t}function iu(t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];if(1048576&a.flags){var o=a.origin;a.aliasSymbol||o&&!(1048576&o.flags)?e.pushIfUnique(t,a):o&&1048576&o.flags&&iu(t,o.types)}}}function au(e,t){var r=Bi(e);return r.types=t,r}function ou(t,r,n,i,a){if(void 0===r&&(r=1),0===t.length)return He;if(1===t.length)return t[0];var o=[],s=nu(o,0,t);if(0!==r){if(3&s)return 1&s?8388608&s?De:Ee:Ae;if(3&r&&((11136&s||16384&s&&32768&s)&&function(t,r,n){for(var i=t.length;i>0;){var a=t[--i],o=a.flags;(128&o&&4&r||256&o&&8&r||2048&o&&64&r||8192&o&&4096&r||n&&32768&o&&16384&r||_d(a)&&eu(t,a.regularType))&&e.orderedRemoveItemAt(t,i)}}(o,s,!!(2&r)),128&s&&134217728&s&&function(t){var r=e.filter(t,Ou);if(r.length)for(var n=t.length,i=function(){n--;var i=t[n];128&i.flags&&e.some(r,(function(e){return sp(i,e)}))&&e.orderedRemoveItemAt(t,n)};n>0;)i()}(o)),2&r&&!function(t,r){for(var n=r&&e.some(t,(function(e){return!!(524288&e.flags)&&!zs(e)&&Dp(Us(e))})),i=t.length,a=i,o=0;a>0;){var s=t[--a];if(n||469499904&s.flags)for(var c=0,l=t;c<l.length;c++){var u=l[c];if(s!==u){if(1e5===o&&o/(i-a)*i>1e6)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","removeSubtypes_DepthLimit",{typeIds:t.map((function(e){return e.id}))}),pn(d,e.Diagnostics.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1;if(o++,Pp(s,u,nn)&&(!(1&e.getObjectFlags(yo(s)))||!(1&e.getObjectFlags(yo(u)))||lp(s,u))){e.orderedRemoveItemAt(t,a);break}}}}return!0}(o,!!(524288&s)))return we;if(0===o.length)return 65536&s?4194304&s?Fe:Oe:32768&s?4194304&s?Ne:Pe:He}if(!a&&1048576&s){var c=[];iu(c,t);for(var l=[],u=function(t){e.some(c,(function(e){return eu(e.types,t)}))||l.push(t)},p=0,f=o;p<f.length;p++){u(f[p])}if(!n&&1===c.length&&0===l.length)return c[0];if(e.reduceLeft(c,(function(e,t){return e+t.types.length}),0)+l.length===o.length){for(var m=0,g=c;m<g.length;m++){tu(l,g[m])}a=au(1048576,l)}}return cu(o,(468598819&s?0:262144)|(2097152&s?268435456:0),n,i,a)}function su(e,t){return e.kind===t.kind&&e.parameterIndex===t.parameterIndex}function cu(e,t,r,n,i){if(0===e.length)return He;if(1===e.length)return e[0];var a=(i?1048576&i.flags?"|"+nl(i.types):2097152&i.flags?"&"+nl(i.types):"#"+i.type.id:nl(e))+il(r,n),o=pe.get(a);return o||(o=function(e,t,r,n){var i=ji(1048576);return i.objectFlags=al(e,98304),i.types=e,i.origin=n,i.aliasSymbol=t,i.aliasTypeArguments=r,i}(e,r,n,i),o.objectFlags|=t,pe.set(a,o)),o}function lu(e,t,r){var n=r.flags;return 2097152&n?uu(e,t,r.types):(Tp(r)?16777216&t||(t|=16777216,e.set(r.id.toString(),r)):(3&n?r===De&&(t|=8388608):!W&&98304&n||e.has(r.id.toString())||(109440&r.flags&&109440&t&&(t|=67108864),e.set(r.id.toString(),r)),t|=205258751&n),t)}function uu(e,t,r){for(var n=0,i=r;n<i.length;n++){t=lu(e,t,gd(i[n]))}return t}function du(e,t){for(var r=0,n=e;r<n.length;r++){var i=n[r];if(!eu(i.types,t)){var a=128&t.flags?Re:256&t.flags?Me:2048&t.flags?Le:8192&t.flags?Je:void 0;if(!a||!eu(i.types,a))return!1}}return!0}function pu(t,r){if(e.every(t,(function(t){return!!(1048576&t.flags)&&e.some(t.types,(function(e){return!!(e.flags&r)}))}))){for(var n=0;n<t.length;n++)t[n]=ug(t[n],(function(e){return!(e.flags&r)}));return!0}return!1}function fu(t,r,n){var i=new e.Map,a=uu(i,0,t),o=e.arrayFrom(i.values());if(131072&a||W&&98304&a&&84410368&a||67108864&a&&402783228&a||402653316&a&&67238776&a||296&a&&469891796&a||2112&a&&469889980&a||12288&a&&469879804&a||49152&a&&469842940&a)return He;if(134217728&a&&128&a&&function(t){for(var r=t.length,n=e.filter(t,(function(e){return!!(128&e.flags)}));r>0;){var i=t[--r];if(134217728&i.flags)for(var a=0,o=n;a<o.length;a++){if(sp(o[a],i)){e.orderedRemoveItemAt(t,r);break}if(Ou(i))return!0}}return!1}(o))return He;if(1&a)return 8388608&a?De:Ee;if(!W&&98304&a)return 32768&a?Ne:Fe;if((4&a&&128&a||8&a&&256&a||64&a&&2048&a||4096&a&&8192&a)&&function(t,r){for(var n=t.length;n>0;){var i=t[--n];(4&i.flags&&128&r||8&i.flags&&256&r||64&i.flags&&2048&r||4096&i.flags&&8192&r)&&e.orderedRemoveItemAt(t,n)}}(o,a),16777216&a&&524288&a&&e.orderedRemoveItemAt(o,e.findIndex(o,Tp)),0===o.length)return Ae;if(1===o.length)return o[0];var s=nl(o)+il(r,n),c=fe.get(s);if(!c){if(1048576&a)if(function(t){var r,n=e.findIndex(t,(function(t){return!!(262144&e.getObjectFlags(t))}));if(n<0)return!1;for(var i=n+1;i<t.length;){var a=t[i];262144&e.getObjectFlags(a)?((r||(r=[t[n]])).push(a),e.orderedRemoveItemAt(t,i)):i++}if(!r)return!1;for(var o=[],s=[],c=0,l=r;c<l.length;c++)for(var u=0,d=l[c].types;u<d.length;u++)tu(o,a=d[u])&&du(r,a)&&tu(s,a);return t[n]=cu(s,262144),!0}(o))c=fu(o,r,n);else if(pu(o,32768))c=ou([fu(o),Ne],1,r,n);else if(pu(o,65536))c=ou([fu(o),Fe],1,r,n);else{if(!gu(o))return we;var l=function(e){for(var t=mu(e),r=[],n=0;n<t;n++){for(var i=e.slice(),a=n,o=e.length-1;o>=0;o--)if(1048576&e[o].flags){var s=e[o].types,c=s.length;i[o]=s[a%c],a=Math.floor(a/c)}var l=fu(i);131072&l.flags||r.push(l)}return r}(o);c=ou(l,1,r,n,e.some(l,(function(e){return!!(2097152&e.flags)}))?au(2097152,o):void 0)}else c=function(e,t,r){var n=ji(2097152);return n.objectFlags=al(e,98304),n.types=e,n.aliasSymbol=t,n.aliasTypeArguments=r,n}(o,r,n);fe.set(s,c)}return c}function mu(t){return e.reduceLeft(t,(function(e,t){return 1048576&t.flags?e*t.types.length:131072&t.flags?0:e}),1)}function gu(t){var r=mu(t);return!(r>=1e5)||(null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","checkCrossProductUnion_DepthLimit",{typeIds:t.map((function(e){return e.id})),size:r}),pn(d,e.Diagnostics.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1)}function _u(e,t){var r=ji(4194304);return r.type=e,r.stringsOnly=t,r}function hu(e,t,r){return Wd(e,Md(t.mapper,Ns(t),r))}function yu(t){return!(!t||!(16777216&t.flags&&(!t.root.isDistributive||yu(t.checkType))||137363456&t.flags&&e.some(t.types,yu)||272629760&t.flags&&yu(t.type)||8388608&t.flags&&yu(t.indexType)||33554432&t.flags&&yu(t.substitute)))}function vu(t){return e.isPrivateIdentifier(t)?He:e.isIdentifier(t)?hd(e.unescapeLeadingUnderscores(t.escapedText)):gd(e.isComputedPropertyName(t)?M_(t):fb(t))}function bu(t,r){if(!(24&e.getDeclarationModifierFlagsFromSymbol(t))){var n=Tn(cs(t)).nameType;if(!n&&!e.isKnownSymbol(t))if("default"===t.escapedName)n=hd("default");else{var i=t.valueDeclaration&&e.getNameOfDeclaration(t.valueDeclaration);n=i&&vu(i)||hd(e.symbolName(t))}if(n&&n.flags&r)return n}return He}function ku(t,r,n){var i=n&&(7&e.getObjectFlags(t)||t.aliasSymbol)?function(e){var t=Bi(4194304);return t.type=e,t}(t):void 0;return ou(e.map(Hs(t),(function(e){return bu(e,r)})),1,void 0,void 0,i)}function xu(e){var t=bc(e,1);return t!==fr?t:void 0}function Eu(t,r,n){void 0===r&&(r=Z);var i=r===Z&&!n;return 1048576&(t=uc(t)).flags?fu(e.map(t.types,(function(e){return Eu(e,r,n)}))):2097152&t.flags?ou(e.map(t.types,(function(e){return Eu(e,r,n)}))):58982400&t.flags||bf(t)||zs(t)&&yu(Is(t))?function(e,t){return t?e.resolvedStringIndexType||(e.resolvedStringIndexType=_u(e,!0)):e.resolvedIndexType||(e.resolvedIndexType=_u(e,!1))}(t,r):32&e.getObjectFlags(t)?function(t,r){var n=ug(Ps(t),(function(e){return!(r&&5&e.flags)})),i=t.declaration.nameType&&xd(t.declaration.nameType),a=i&&lg(n,(function(e){return!!(131084&e.flags)}))&&Hs(ac(Ms(t)));return i?ou([pg(n,(function(e){return hu(i,t,e)})),pg(ou(e.map(a||e.emptyArray,(function(e){return bu(e,8576)}))),(function(e){return hu(i,t,e)}))]):n}(t,n):t===De?De:2&t.flags?He:131073&t.flags?Qe:r?!n&&bc(t,0)?Re:ku(t,128,i):!n&&bc(t,0)?ou([Re,Me,ku(t,8192,i)]):xu(t)?ou([Me,ku(t,8320,i)]):ku(t,8576,i)}function Su(t){if(Z)return t;var r=Qt||(Qt=Cl("Extract",524288,e.Diagnostics.Cannot_find_global_type_0));return r?pl(r,[t,Re]):Re}function Du(t,r){var n=e.findIndex(r,(function(e){return!!(1179648&e.flags)}));if(n>=0)return gu(r)?pg(r[n],(function(i){return Du(t,e.replaceElement(r,n,i))})):we;if(e.contains(r,De))return De;var i=[],a=[],o=t[0];if(!function e(t,r){for(var n=0;n<r.length;n++){var s=r[n];if(101248&s.flags)o+=wu(s)||"",o+=t[n+1];else if(134217728&s.flags){if(o+=s.texts[0],!e(s.texts,s.types))return!1;o+=t[n+1]}else{if(!Mu(s)&&!Fu(s))return!1;i.push(s),a.push(o),o=t[n+1]}}return!0}(t,r))return Re;if(0===i.length)return hd(o);if(a.push(o),e.every(a,(function(e){return""===e}))&&e.every(i,(function(e){return!!(4&e.flags)})))return Re;var s=nl(i)+"|"+e.map(a,(function(e){return e.length})).join(",")+"|"+a.join(""),c=_e.get(s);return c||_e.set(s,c=function(e,t){var r=ji(134217728);return r.texts=e,r.types=t,r}(a,i)),c}function wu(t){return 128&t.flags?t.value:256&t.flags?""+t.value:2048&t.flags?e.pseudoBigIntToString(t.value):512&t.flags?t.intrinsicName:65536&t.flags?"null":32768&t.flags?"undefined":void 0}function Tu(e,t){return 1179648&t.flags?pg(t,(function(t){return Tu(e,t)})):Mu(t)?function(e,t){var r=R(e)+","+Zl(t),n=he.get(r);n||he.set(r,n=function(e,t){var r=ji(268435456);return r.symbol=e,r.type=t,r}(e,t));return n}(e,t):128&t.flags?hd(function(e,t){switch(P.get(e.escapedName)){case 0:return t.toUpperCase();case 1:return t.toLowerCase();case 2:return t.charAt(0).toUpperCase()+t.slice(1);case 3:return t.charAt(0).toLowerCase()+t.slice(1)}return t}(e,t.value)):t}function Cu(t){if(X)return!1;if(16384&e.getObjectFlags(t))return!0;if(1048576&t.flags)return e.every(t.types,Cu);if(2097152&t.flags)return e.some(t.types,Cu);if(465829888&t.flags){var r=tc(t);return r!==t&&Cu(r)}return!1}function Au(t,r){var n=r&&203===r.kind?r:void 0;return Zo(t)?is(t):n&&qh(n.argumentExpression,t,!1)?e.getPropertyNameForKnownSymbolName(e.idText(n.argumentExpression.name)):r&&e.isPropertyName(r)?e.getPropertyNameForPropertyNameNode(r):void 0}function Nu(t,r){if(8208&r.flags){var n=e.findAncestor(t.parent,(function(t){return!e.isAccessExpression(t)}))||t.parent;return e.isCallLikeExpression(n)?e.isCallOrNewExpression(n)&&e.isIdentifier(t)&&zm(n,t):e.every(r.declarations,(function(t){return!e.isFunctionLike(t)||!!(134217728&e.getCombinedNodeFlags(t))}))}return!0}function Pu(t,r,n,i,a,o,s,c,l){var u,d=o&&203===o.kind?o:void 0,p=o&&e.isPrivateIdentifier(o)?void 0:Au(n,o);if(void 0!==p){var f=gc(r,p);if(f){if(l&&o&&134217728&lh(f)&&Nu(o,f))hn(null!==(u=null==d?void 0:d.argumentExpression)&&void 0!==u?u:e.isIndexedAccessTypeNode(o)?o.indexType:o,f.declarations,p);if(d){if(Lh(f,d,108===d.expression.kind),Pv(d,f,e.getAssignmentTargetKind(d)))return void pn(d.argumentExpression,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,la(f));if(4&s&&(Cn(o).resolvedSymbol=f),wh(d,f))return Se}var m=_o(f);return d&&1!==e.getAssignmentTargetKind(d)?Og(d,m):m}if(lg(r,vf)&&R_(p)&&+p>=0){if(o&&lg(r,(function(e){return!e.target.hasRestElement}))&&!(8&s)){var g=Iu(o);vf(r)?pn(g,e.Diagnostics.Tuple_type_0_of_length_1_has_no_element_at_index_2,da(r),ul(r),e.unescapeLeadingUnderscores(p)):pn(g,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.unescapeLeadingUnderscores(p),da(r))}return S(bc(r,1)),pg(r,(function(e){var t=xf(e)||Ne;return c?ou([t,Ne]):t}))}}if(!(98304&n.flags)&&Mv(n,402665900)){if(131073&r.flags)return r;var _=bc(r,0),h=Mv(n,296)&&bc(r,1)||_;if(h)return 1&s&&h===_?void(d&&pn(d,e.Diagnostics.Type_0_cannot_be_used_to_index_type_1,da(n),da(t))):o&&!Mv(n,12)?(pn(g=Iu(o),e.Diagnostics.Type_0_cannot_be_used_as_an_index_type,da(n)),c?ou([h.type,Ne]):h.type):(S(h),c?ou([h.type,Ne]):h.type);if(131072&n.flags)return He;if(Cu(r))return Ee;if(d&&!jv(r)){if(km(r)){if(X&&384&n.flags)return Qr.add(e.createDiagnosticForNode(d,e.Diagnostics.Property_0_does_not_exist_on_type_1,n.value,da(r))),Ne;if(12&n.flags){var y=e.map(r.properties,(function(e){return _o(e)}));return ou(e.append(y,Ne))}}if(r.symbol===ae&&void 0!==p&&ae.exports.has(p)&&418&ae.exports.get(p).flags)pn(d,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.unescapeLeadingUnderscores(p),da(r));else if(X&&!J.suppressImplicitAnyIndexErrors&&!a)if(void 0!==p&&Nh(p,r)){var v=da(r);pn(d,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,p,v,v+"["+e.getTextOfNode(d.argumentExpression)+"]")}else if(kc(r,1))pn(d.argumentExpression,e.Diagnostics.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{var b=void 0;if(void 0!==p&&(b=Fh(p,r)))void 0!==b&&pn(d.argumentExpression,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,p,da(r),b);else{var k=function(t,r,n){function i(e){var r=Js(t,e);if(r){var i=Qh(_o(r));return!!i&&sv(i)>=1&&cp(n,nv(i,0))}return!1}var a=e.isAssignmentTarget(r)?"set":"get";if(!i(a))return;var o=e.tryGetPropertyAccessOrIdentifierToString(r.expression);void 0===o?o=a:o+="."+a;return o}(r,d,n);if(void 0!==k)pn(d,e.Diagnostics.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,da(r),k);else{var x=void 0;if(1024&n.flags)x=e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_does_not_exist_on_type_1,"["+da(n)+"]",da(r));else if(8192&n.flags){var E=pi(n.symbol,d);x=e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_does_not_exist_on_type_1,"["+E+"]",da(r))}else 128&n.flags||256&n.flags?x=e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_does_not_exist_on_type_1,n.value,da(r)):12&n.flags&&(x=e.chainDiagnosticMessages(void 0,e.Diagnostics.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,da(n),da(r)));x=e.chainDiagnosticMessages(x,e.Diagnostics.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,da(i),da(r)),Qr.add(e.createDiagnosticForNodeFromMessageChain(d,x))}}}return}}if(Cu(r))return Ee;if(o){g=Iu(o);384&n.flags?pn(g,e.Diagnostics.Property_0_does_not_exist_on_type_1,""+n.value,da(r)):12&n.flags?pn(g,e.Diagnostics.Type_0_has_no_matching_index_signature_for_type_1,da(r),da(n)):pn(g,e.Diagnostics.Type_0_cannot_be_used_as_an_index_type,da(n))}return Pa(n)?n:void 0;function S(t){t&&t.isReadonly&&d&&(e.isAssignmentTarget(d)||e.isDeleteTarget(d))&&pn(d,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,da(r))}}function Iu(e){return 203===e.kind?e.argumentExpression:190===e.kind?e.indexType:159===e.kind?e.expression:e}function Fu(e){return-1!==et.types.indexOf(e)||!!(1&e.flags)}function Ou(t){return!!(134217728&t.flags)&&e.every(t.types,Fu)}function Ru(t){return 3145728&t.flags?(4194304&t.objectFlags||(t.objectFlags|=4194304|(e.some(t.types,Ru)?8388608:0)),!!(8388608&t.objectFlags)):!!(58982400&t.flags)||zs(t)||bf(t)}function Mu(t){return 3145728&t.flags?(16777216&t.objectFlags||(t.objectFlags|=16777216|(e.some(t.types,Mu)?33554432:0)),!!(33554432&t.objectFlags)):!!(465829888&t.flags)&&!Ou(t)}function Lu(e){return!!(262144&e.flags&&e.isThisType)}function ju(t,r){return 8388608&t.flags?function(t,r){var n=r?"simplifiedForWriting":"simplifiedForReading";if(t[n])return t[n]===ut?t:t[n];t[n]=ut;var i=ju(t.objectType,r),a=ju(t.indexType,r),o=function(t,r,n){if(1048576&r.flags){var i=e.map(r.types,(function(e){return ju(qu(t,e),n)}));return n?fu(i):ou(i)}}(i,a,r);if(o)return t[n]=o;if(!(465829888&a.flags)){var s=Bu(i,a,r);if(s)return t[n]=s}if(bf(i)&&296&a.flags){var c=Ef(i,8&a.flags?0:i.target.fixedLength,0,r);if(c)return t[n]=c}if(zs(i))return t[n]=pg(Uu(i,t.indexType),(function(e){return ju(e,r)}));return t[n]=t}(t,r):16777216&t.flags?function(e,t){var r=e.checkType,n=e.extendsType,i=Xu(e),a=Qu(e);if(131072&a.flags&&Wu(i)===Wu(r)){if(1&r.flags||cp(Yd(r),Yd(n)))return ju(i,t);if(zu(r,n))return He}else if(131072&i.flags&&Wu(a)===Wu(r)){if(!(1&r.flags)&&cp(Yd(r),Yd(n)))return He;if(1&r.flags||zu(r,n))return ju(a,t)}return e}(t,r):t}function Bu(t,r,n){if(3145728&t.flags){var i=e.map(t.types,(function(e){return ju(qu(e,r),n)}));return 2097152&t.flags||n?fu(i):ou(i)}}function zu(e,t){return!!(131072&ou([bs(e,t),He]).flags)}function Uu(e,t){var r=Td([Ns(e)],[t]),n=Fd(e.mapper,r);return Wd(Fs(e),n)}function qu(e,t,r,n,i,a,o){return void 0===o&&(o=0),Vu(e,t,r,n,o,i,a)||(n?we:Ae)}function Ju(e,t){return lg(e,(function(e){if(384&e.flags){var r=is(e);if(R_(r)){var n=+r;return n>=0&&n<t}}return!1}))}function Vu(e,t,r,n,i,a,o){if(void 0===i&&(i=0),e===De||t===De)return De;var s=r||!!J.noUncheckedIndexedAccess&&16==(18&i);if(!Cp(e)||98304&t.flags||!Mv(t,12)||(t=Re),Mu(t)||(n&&190!==n.kind?bf(e)&&!Ju(t,e.target.fixedLength):Ru(e)&&(!vf(e)||!Ju(t,e.target.fixedLength)))){if(3&e.flags)return e;var c=e.id+","+t.id+(s?"?":"")+il(a,o),l=ge.get(c);return l||ge.set(c,l=function(e,t,r,n,i){var a=ji(8388608);return a.objectType=e,a.indexType=t,a.aliasSymbol=r,a.aliasTypeArguments=n,a.noUncheckedIndexedAccessCandidate=i,a}(e,t,a,o,s)),l}var u=oc(e);if(1048576&t.flags&&!(16&t.flags)){for(var d=[],p=!1,f=0,m=t.types;f<m.length;f++){var g=Pu(e,u,m[f],t,p,n,i,s);if(g)d.push(g);else{if(!n)return;p=!0}}if(p)return;return 2&i?fu(d,a,o):ou(d,1,a,o)}return Pu(e,u,t,t,!1,n,4|i,s,!0)}function Hu(e){var t=Cn(e);if(!t.resolvedType){var r=xd(e.objectType),n=xd(e.indexType),i=id(e),a=qu(r,n,void 0,e,i,ad(i));t.resolvedType=8388608&a.flags&&a.objectType===r&&a.indexType===n?vl(a,e):a}return t.resolvedType}function Ku(e){var t=Cn(e);if(!t.resolvedType){var r=qi(32,e.symbol);r.declaration=e,r.aliasSymbol=id(e),r.aliasTypeArguments=ad(r.aliasSymbol),t.resolvedType=r,Ps(r)}return t.resolvedType}function Wu(e){return 33554432&e.flags?e.baseType:8388608&e.flags&&(33554432&e.objectType.flags||33554432&e.indexType.flags)?qu(Wu(e.objectType),Wu(e.indexType)):e}function Gu(t){return!t.isDistributive&&180===t.node.checkType.kind&&1===e.length(t.node.checkType.elements)&&180===t.node.extendsType.kind&&1===e.length(t.node.extendsType.elements)}function $u(e,t){return Gu(e)&&vf(t)?ll(t)[0]:t}function Yu(t,r,n,i){for(var a,o;;){var s=Gu(t),c=Wd($u(t,t.checkType),r),l=Ru(c)||Mu(c),u=Wd($u(t,t.extendsType),r);if(c===De||u===De)return De;var d=void 0;if(t.inferTypeParameters){var p=Qf(t.inferTypeParameters,void 0,0);l||ym(p.inferences,c,u,768),d=Od(r,p.mapper)}var f=d?Wd($u(t,t.extendsType),d):u;if(!l&&!Ru(f)&&!Mu(f)){if(!(3&f.flags)&&(1&c.flags&&!s||!cp($d(c),$d(f)))){1&c.flags&&!s&&(o||(o=[])).push(Wd(xd(t.node.trueType),d||r));var m=xd(t.node.falseType);if(16777216&m.flags){var g=m.root;if(g.node.parent===t.node&&(!g.isDistributive||g.checkType===t.checkType)){t=g;continue}}a=Wd(m,r);break}if(3&f.flags||cp(Yd(c),Yd(f))){a=Wd(xd(t.node.trueType),d||r);break}}(a=ji(16777216)).root=t,a.checkType=Wd(t.checkType,r),a.extendsType=Wd(t.extendsType,r),a.mapper=r,a.combinedMapper=d,a.aliasSymbol=n||t.aliasSymbol,a.aliasTypeArguments=n?i:Dd(t.aliasTypeArguments,r);break}return o?ou(e.append(o,a)):a}function Xu(e){return e.resolvedTrueType||(e.resolvedTrueType=Wd(xd(e.root.node.trueType),e.mapper))}function Qu(e){return e.resolvedFalseType||(e.resolvedFalseType=Wd(xd(e.root.node.falseType),e.mapper))}function Zu(t){var r;return t.locals&&t.locals.forEach((function(t){262144&t.flags&&(r=e.append(r,Jo(t)))})),r}function ed(t){return e.isIdentifier(t)?[t]:e.append(ed(t.left),t.right)}function td(t){var r=Cn(t);if(!r.resolvedType){if(t.isTypeOf&&t.typeArguments)return pn(t,e.Diagnostics.Type_arguments_cannot_be_used_here),r.resolvedSymbol=ke,r.resolvedType=we;if(!e.isLiteralImportTypeNode(t))return pn(t.argument,e.Diagnostics.String_literal_expected),r.resolvedSymbol=ke,r.resolvedType=we;var n=t.isTypeOf?111551:4194304&t.flags?900095:788968,i=gi(t,t.argument.literal);if(!i)return r.resolvedSymbol=ke,r.resolvedType=we;var a=vi(i,!1);if(e.nodeIsMissing(t.qualifier)){if(a.flags&n)r.resolvedType=rd(t,r,a,n);else pn(t,111551===n?e.Diagnostics.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:e.Diagnostics.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0,t.argument.literal.text),r.resolvedSymbol=ke,r.resolvedType=we}else{for(var o=ed(t.qualifier),s=a,c=void 0;c=o.shift();){var l=o.length?1920:n,u=Ci(ii(s)),d=t.isTypeOf?gc(_o(u),c.escapedText):Nn(Si(u),c.escapedText,l);if(!d)return pn(c,e.Diagnostics.Namespace_0_has_no_exported_member_1,pi(s),e.declarationNameToString(c)),r.resolvedType=we;Cn(c).resolvedSymbol=d,Cn(c.parent).resolvedSymbol=d,s=d}r.resolvedType=rd(t,r,s,n)}}return r.resolvedType}function rd(e,t,r,n){var i=ii(r);return t.resolvedSymbol=i,111551===n?_o(r):gl(e,i)}function nd(t){var r=Cn(t);if(!r.resolvedType){var n=id(t);if(0!==ss(t.symbol).size||n){var i=qi(16,t.symbol);i.aliasSymbol=n,i.aliasTypeArguments=ad(n),e.isJSDocTypeLiteral(t)&&t.isArrayType&&(i=jl(i)),r.resolvedType=i}else r.resolvedType=ot}return r.resolvedType}function id(t){for(var r=t.parent;e.isParenthesizedTypeNode(r)||e.isJSDocTypeExpression(r)||e.isTypeOperatorNode(r)&&143===r.operator;)r=r.parent;return e.isTypeAlias(r)?Ai(r):void 0}function ad(e){return e?Eo(e):void 0}function od(e){return!!(524288&e.flags)&&!zs(e)}function sd(e){return wp(e)||!!(474058748&e.flags)}function cd(t,r){if(e.every(t.types,sd))return e.find(t.types,wp)||nt;var n=e.find(t.types,(function(e){return!sd(e)}));if(n&&!(n&&e.find(t.types,(function(e){return e!==n&&!sd(e)}))))return function(t){for(var n=e.createSymbolTable(),i=0,a=Hs(t);i<a.length;i++){var o=a[i];if(24&e.getDeclarationModifierFlagsFromSymbol(o));else if(ud(o)){var s=65536&o.flags&&!(32768&o.flags),c=yn(16777220,o.escapedName,Cs(o)|(r?8:0));c.type=s?Ne:ou([_o(o),Ne]),c.declarations=o.declarations,c.nameType=Tn(o).nameType,c.syntheticOrigin=o,n.set(o.escapedName,c)}}var l=Wi(t.symbol,n,e.emptyArray,e.emptyArray,bc(t,0),bc(t,1));return l.objectFlags|=1048704,l}(n)}function ld(t,r,n,i,a){if(1&t.flags||1&r.flags)return Ee;if(2&t.flags||2&r.flags)return Ae;if(131072&t.flags)return r;if(131072&r.flags)return t;var o;if(1048576&t.flags)return(o=cd(t,a))?ld(o,r,n,i,a):gu([t,r])?pg(t,(function(e){return ld(e,r,n,i,a)})):we;if(1048576&r.flags)return(o=cd(r,a))?ld(t,o,n,i,a):gu([t,r])?pg(r,(function(e){return ld(t,e,n,i,a)})):we;if(473960444&r.flags)return t;if(Ru(t)||Ru(r)){if(wp(t))return r;if(2097152&t.flags){var s=t.types,c=s[s.length-1];if(od(c)&&od(r))return fu(e.concatenate(s.slice(0,s.length-1),[ld(c,r,n,i,a)]))}return fu([t,r])}var l,u,d=e.createSymbolTable(),p=new e.Set;t===nt?(l=bc(r,0),u=bc(r,1)):(l=xs(bc(t,0),bc(r,0)),u=xs(bc(t,1),bc(r,1)));for(var f=0,m=Hs(r);f<m.length;f++){var g=m[f];24&e.getDeclarationModifierFlagsFromSymbol(g)?p.add(g.escapedName):ud(g)&&d.set(g.escapedName,dd(g,a))}for(var _=0,h=Hs(t);_<h.length;_++){var y=h[_];if(!p.has(y.escapedName)&&ud(y))if(d.has(y.escapedName)){var v=_o(g=d.get(y.escapedName));if(16777216&g.flags){var b=e.concatenate(y.declarations,g.declarations),k=yn(4|16777216&y.flags,y.escapedName);k.type=ou([_o(y),Hm(v,524288)]),k.leftSpread=y,k.rightSpread=g,k.declarations=b,k.nameType=Tn(y).nameType,d.set(y.escapedName,k)}}else d.set(y.escapedName,dd(y,a))}var x=Wi(n,d,e.emptyArray,e.emptyArray,pd(l,a),pd(u,a));return x.objectFlags|=1049728|i,x}function ud(t){return!(e.some(t.declarations,e.isPrivateIdentifierPropertyDeclaration)||106496&t.flags&&t.declarations.some((function(t){return e.isClassLike(t.parent)})))}function dd(e,t){var r=65536&e.flags&&!(32768&e.flags);if(!r&&t===Nv(e))return e;var n=yn(4|16777216&e.flags,e.escapedName,Cs(e)|(t?8:0));return n.type=r?Ne:_o(e),n.declarations=e.declarations,n.nameType=Tn(e).nameType,n.syntheticOrigin=e,n}function pd(e,t){return e&&e.isReadonly!==t?Qc(e.type,t,e.declaration):e}function fd(e,t,r){var n=ji(e);return n.symbol=r,n.value=t,n}function md(e){if(2944&e.flags){if(!e.freshType){var t=fd(e.flags,e.value,e.symbol);t.regularType=e,t.freshType=t,e.freshType=t}return e.freshType}return e}function gd(e){return 2944&e.flags?e.regularType:1048576&e.flags?e.regularType||(e.regularType=pg(e,gd)):e}function _d(e){return!!(2944&e.flags)&&e.freshType===e}function hd(t,r,n){var i=(r||"")+("number"==typeof t?"#":"string"==typeof t?"@":"n")+("object"==typeof t?e.pseudoBigIntToString(t):t),a=me.get(i);if(!a){var o=("number"==typeof t?256:"string"==typeof t?128:2048)|(r?1024:0);me.set(i,a=fd(o,t,n)),a.regularType=a}return a}function yd(t){if(e.isValidESSymbolDeclaration(t)){var r=Ai(t),n=Tn(r);return n.uniqueESSymbolType||(n.uniqueESSymbolType=function(e){var t=ji(8192);return t.symbol=e,t.escapedName="__@"+t.symbol.escapedName+"@"+R(t.symbol),t}(r))}return Je}function vd(t){var r=Cn(t);return r.resolvedType||(r.resolvedType=function(t){var r=e.getThisContainer(t,!1),n=r&&r.parent;if(n&&(e.isClassLike(n)||256===n.kind)&&!e.hasSyntacticModifier(r,32)&&(!e.isConstructorDeclaration(r)||e.isNodeDescendantOf(t,r.body)))return Oo(Ai(n)).thisType;if(n&&e.isObjectLiteralExpression(n)&&e.isBinaryExpression(n.parent)&&6===e.getAssignmentDeclarationKind(n.parent))return Oo(Ai(n.parent.left).parent).thisType;var i=4194304&t.flags?e.getHostSignatureFromJSDoc(t):void 0;return i&&e.isFunctionExpression(i)&&e.isBinaryExpression(i.parent)&&3===e.getAssignmentDeclarationKind(i.parent)?Oo(Ai(i.parent.left).parent).thisType:Fy(r)&&e.isNodeDescendantOf(t,r.body)?Oo(Ai(r)).thisType:(pn(t,e.Diagnostics.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),we)}(t)),r.resolvedType}function bd(e){return xd(kd(e.type)||e.type)}function kd(e){switch(e.kind){case 187:return kd(e.type);case 180:if(1===e.elements.length&&(182===(e=e.elements[0]).kind||193===e.kind&&e.dotDotDotToken))return kd(e.type);break;case 179:return e.elementType}}function xd(e){return vl(Ed(e),e)}function Ed(t){switch(t.kind){case 129:case 306:case 307:return Ee;case 153:return Ae;case 148:return Re;case 145:return Me;case 156:return Le;case 132:return qe;case 149:return Je;case 114:return Ve;case 151:return Ne;case 104:return Fe;case 142:return He;case 146:return 131072&t.flags&&!X?Ee:Ye;case 137:return Ce;case 188:case 108:return vd(t);case 192:return function(e){if(104===e.literal.kind)return Fe;var t=Cn(e);return t.resolvedType||(t.resolvedType=gd(fb(e.literal))),t.resolvedType}(t);case 174:case 225:return El(t);case 173:return t.assertsModifier?Ve:qe;case 177:return Dl(t);case 179:case 180:return function(t){var r=Cn(t);if(!r.resolvedType){var n=Ul(t);if(n===st)r.resolvedType=nt;else if(180===t.kind&&e.some(t.elements,(function(e){return!!(8&Bl(e))}))||!ql(t)){var i=179===t.kind?[xd(t.elementType)]:e.map(t.elements,xd);r.resolvedType=Wl(n,i)}else r.resolvedType=180===t.kind&&0===t.elements.length?n:cl(n,t,void 0)}return r.resolvedType}(t);case 181:return function(e){var t=xd(e.type);return W?Nf(t):t}(t);case 183:return function(t){var r=Cn(t);if(!r.resolvedType){var n=id(t);r.resolvedType=ou(e.map(t.types,xd),1,n,ad(n))}return r.resolvedType}(t);case 184:return function(t){var r=Cn(t);if(!r.resolvedType){var n=id(t);r.resolvedType=fu(e.map(t.types,xd),n,ad(n))}return r.resolvedType}(t);case 308:return function(e){var t=xd(e.type);return W?Af(t,65536):t}(t);case 310:return za(xd(t.type));case 193:return function(e){var t=Cn(e);return t.resolvedType||(t.resolvedType=e.dotDotDotToken?bd(e):e.questionToken&&W?Nf(xd(e.type)):xd(e.type))}(t);case 187:case 309:case 304:return xd(t.type);case 182:return bd(t);case 312:return function(t){var r=xd(t.type),n=t.parent,i=t.parent.parent;if(e.isJSDocTypeExpression(t.parent)&&e.isJSDocParameterTag(i)){var a=e.getHostSignatureFromJSDoc(i);if(a){var o=e.lastOrUndefined(a.parameters),s=e.getParameterSymbolFromJSDoc(i);if(!o||s&&o.symbol===s&&e.isRestParameter(o))return jl(r)}}if(e.isParameter(n)&&e.isJSDocFunctionType(n.parent))return jl(r);return za(r)}(t);case 175:case 176:case 178:case 315:case 311:case 316:return nd(t);case 189:return function(t){var r=Cn(t);if(!r.resolvedType)switch(t.operator){case 139:r.resolvedType=Eu(xd(t.type));break;case 152:r.resolvedType=149===t.type.kind?yd(e.walkUpParenthesizedTypes(t.parent)):we;break;case 143:r.resolvedType=xd(t.type);break;default:throw e.Debug.assertNever(t.operator)}return r.resolvedType}(t);case 190:return Hu(t);case 191:return Ku(t);case 185:return function(t){var r=Cn(t);if(!r.resolvedType){var n=xd(t.checkType),i=id(t),a=ad(i),o=ko(t,!0),s=a?o:e.filter(o,(function(e){return zd(e,t)})),c={node:t,checkType:n,extendsType:xd(t.extendsType),isDistributive:!!(262144&n.flags),inferTypeParameters:Zu(t),outerTypeParameters:s,instantiations:void 0,aliasSymbol:i,aliasTypeArguments:a};r.resolvedType=Yu(c,void 0),s&&(c.instantiations=new e.Map,c.instantiations.set(nl(s),r.resolvedType))}return r.resolvedType}(t);case 186:return function(e){var t=Cn(e);return t.resolvedType||(t.resolvedType=qo(Ai(e.typeParameter))),t.resolvedType}(t);case 194:return function(t){var r=Cn(t);return r.resolvedType||(r.resolvedType=Du(i([t.head.text],e.map(t.templateSpans,(function(e){return e.literal.text}))),e.map(t.templateSpans,(function(e){return xd(e.type)})))),r.resolvedType}(t);case 196:return td(t);case 78:case 158:case 202:var r=Xx(t);return r?Jo(r):we;default:return we}}function Sd(e,t,r){if(e&&e.length)for(var n=0;n<e.length;n++){var i=e[n],a=r(i,t);if(i!==a){var o=0===n?[]:e.slice(0,n);for(o.push(a),n++;n<e.length;n++)o.push(r(e[n],t));return o}}return e}function Dd(e,t){return Sd(e,t,Wd)}function wd(e,t){return Sd(e,t,jd)}function Td(e,t){return 1===e.length?Ad(e[0],t?t[0]:Ee):function(e,t){return{kind:1,sources:e,targets:t}}(e,t)}function Cd(e,t){switch(t.kind){case 0:return e===t.source?t.target:e;case 1:for(var r=t.sources,n=t.targets,i=0;i<r.length;i++)if(e===r[i])return n?n[i]:Ee;return e;case 2:return t.func(e);case 3:case 4:var a=Cd(e,t.mapper1);return a!==e&&3===t.kind?Wd(a,t.mapper2):Cd(a,t.mapper2)}}function Ad(e,t){return{kind:0,source:e,target:t}}function Nd(e){return{kind:2,func:e}}function Pd(e,t,r){return{kind:e,mapper1:t,mapper2:r}}function Id(e){return Td(e,void 0)}function Fd(e,t){return e?Pd(3,e,t):t}function Od(e,t){return e?Pd(4,e,t):t}function Rd(e,t,r){return r?Pd(4,Ad(e,t),r):Ad(e,t)}function Md(e,t,r){return e?Pd(4,e,Ad(t,r)):Ad(t,r)}function Ld(e){var t=Ji(e.symbol);return t.target=e,t}function jd(t,r,n){var i;if(t.typeParameters&&!n){i=e.map(t.typeParameters,Ld),r=Fd(Td(t.typeParameters,i),r);for(var a=0,o=i;a<o.length;a++){o[a].mapper=r}}var s=ds(t.declaration,i,t.thisParameter&&Bd(t.thisParameter,r),Sd(t.parameters,r,Bd),void 0,void 0,t.minArgumentCount,39&t.flags);return s.target=t,s.mapper=r,s}function Bd(t,r){var n=Tn(t);if(n.type&&!am(n.type))return t;1&e.getCheckFlags(t)&&(t=n.target,r=Fd(n.mapper,r));var i=yn(t.flags,t.escapedName,1|53256&e.getCheckFlags(t));return i.declarations=t.declarations,i.parent=t.parent,i.target=t,i.mapper=r,t.valueDeclaration&&(i.valueDeclaration=t.valueDeclaration),n.nameType&&(i.nameType=n.nameType),i}function zd(t,r){if(t.symbol&&t.symbol.declarations&&1===t.symbol.declarations.length){for(var n=t.symbol.declarations[0].parent,i=r;i!==n;i=i.parent)if(!i||232===i.kind||185===i.kind&&e.forEachChild(i.extendsType,a))return!0;return!!e.forEachChild(r,a)}return!0;function a(r){switch(r.kind){case 188:return!!t.isThisType;case 78:return!t.isThisType&&e.isPartOfTypeNode(r)&&function(e){return!(158===e.kind||174===e.parent.kind&&e.parent.typeArguments&&e===e.parent.typeName||196===e.parent.kind&&e.parent.typeArguments&&e===e.parent.qualifier)}(r)&&Ed(r)===t;case 177:return!0}return!!e.forEachChild(r,a)}}function Ud(e){var t=Ps(e);if(4194304&t.flags){var r=Wu(t.type);if(262144&r.flags)return r}}function qd(t,r,n,i){var a=Ud(t);if(a){var o=Wd(a,r);if(a!==o)return fg(uc(o),(function(n){if(61603843&n.flags&&n!==De&&n!==we){if(!t.declaration.nameType){if(rf(n))return function(e,t,r){var n=Vd(t,Me,!0,r);return n===we?we:jl(n,Jd(nf(e),Ls(t)))}(n,t,Rd(a,n,r));if(bf(n))return function(t,r,n,i){var a=t.target.elementFlags,o=e.map(ll(t),(function(e,t){var o=8&a[t]?e:4&a[t]?jl(e):Hl([e],[a[t]]);return qd(r,Rd(n,o,i))})),s=Jd(t.target.readonly,Ls(r));return Hl(o,e.map(o,(function(e){return 8})),s)}(n,t,a,r);if(vf(n))return function(t,r,n){var i=t.target.elementFlags,a=e.map(ll(t),(function(e,t){return Vd(r,hd(""+t),!!(2&i[t]),n)})),o=Ls(r),s=4&o?e.map(i,(function(e){return 1&e?2:e})):8&o?e.map(i,(function(e){return 2&e?1:e})):i,c=Jd(t.target.readonly,o);return e.contains(a,we)?we:Hl(a,s,c,t.target.labeledElementDeclarations)}(n,t,Rd(a,n,r))}return Hd(t,Rd(a,n,r))}return n}),n,i)}return Wd(Ps(t),r)===De?De:Hd(t,r,n,i)}function Jd(e,t){return!!(1&t)||!(2&t)&&e}function Vd(e,t,r,n){var i=Md(n,Ns(e),t),a=Wd(Fs(e.target||e),i),o=Ls(e);return W&&4&o&&!Rv(a,49152)?Nf(a):W&&8&o&&r?Hm(a,524288):a}function Hd(e,t,r,n){var i=qi(64|e.objectFlags,e.symbol);if(32&e.objectFlags){i.declaration=e.declaration;var a=Ns(e),o=Ld(a);i.typeParameter=o,t=Fd(Ad(a,o),t),o.mapper=t}return i.target=e,i.mapper=t,i.aliasSymbol=r||e.aliasSymbol,i.aliasTypeArguments=r?n:Dd(e.aliasTypeArguments,t),i}function Kd(t,r,n,i){var a=t.root;if(a.outerTypeParameters){var o=e.map(a.outerTypeParameters,(function(e){return Cd(e,r)})),s=nl(o)+il(n,i),c=a.instantiations.get(s);if(!c)c=function(e,t,r,n){if(e.isDistributive){var i=e.checkType,a=Cd(i,t);if(i!==a&&1179648&a.flags)return fg(a,(function(r){return Yu(e,Rd(i,r,t))}),r,n)}return Yu(e,t,r,n)}(a,Td(a.outerTypeParameters,o),n,i),a.instantiations.set(s,c);return c}return t}function Wd(e,t){return e&&t?Gd(e,t,void 0,void 0):e}function Gd(t,r,n,i){if(!am(t))return t;if(50===D||x>=5e6)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","instantiateType_DepthLimit",{typeId:t.id,instantiationDepth:D,instantiationCount:x}),pn(d,e.Diagnostics.Type_instantiation_is_excessively_deep_and_possibly_infinite),we;k++,x++,D++;var a=function(t,r,n,i){var a=t.flags;if(262144&a)return Cd(t,r);if(524288&a){var o=t.objectFlags;if(52&o){if(4&o&&!t.node){var s=t.resolvedTypeArguments,c=Dd(s,r);return c!==s?Wl(t.target,c):t}return function(t,r,n,i){var a=4&t.objectFlags?t.node:t.symbol.declarations[0],o=Cn(a),s=4&t.objectFlags?o.resolvedType:64&t.objectFlags?t.target:t,c=o.outerTypeParameters;if(!c){var l=ko(a,!0);if(Fy(a)){var u=Ec(a);l=e.addRange(l,u)}c=l||e.emptyArray,c=(4&s.objectFlags||2048&s.symbol.flags)&&!s.aliasTypeArguments?e.filter(c,(function(e){return zd(e,a)})):c,o.outerTypeParameters=c}if(c.length){var d=Fd(t.mapper,r),p=e.map(c,(function(e){return Cd(e,d)})),f=n||t.aliasSymbol,m=n?i:Dd(t.aliasTypeArguments,r),g=nl(p)+il(f,m);s.instantiations||(s.instantiations=new e.Map,s.instantiations.set(nl(c)+il(s.aliasSymbol,s.aliasTypeArguments),s));var _=s.instantiations.get(g);if(!_){var h=Td(c,p);_=4&s.objectFlags?cl(t.target,t.node,h,f,m):32&s.objectFlags?qd(s,h,f,m):Hd(s,h,f,m),s.instantiations.set(g,_)}return _}return t}(t,r,n,i)}return t}if(3145728&a){var l=1048576&t.flags?t.origin:void 0,u=l&&3145728&l.flags?l.types:t.types,d=Dd(u,r);if(d===u&&n===t.aliasSymbol)return t;var p=n||t.aliasSymbol,f=n?i:Dd(t.aliasTypeArguments,r);return 2097152&a||l&&2097152&l.flags?fu(d,p,f):ou(d,1,p,f)}if(4194304&a)return Eu(Wd(t.type,r));if(134217728&a)return Du(t.texts,Dd(t.types,r));if(268435456&a)return Tu(t.symbol,Wd(t.type,r));if(8388608&a){p=n||t.aliasSymbol,f=n?i:Dd(t.aliasTypeArguments,r);return qu(Wd(t.objectType,r),Wd(t.indexType,r),t.noUncheckedIndexedAccessCandidate,void 0,p,f)}if(16777216&a)return Kd(t,Fd(t.mapper,r),n,i);if(33554432&a){var m=Wd(t.baseType,r);if(8650752&m.flags)return _l(m,Wd(t.substitute,r));var g=Wd(t.substitute,r);return 3&g.flags||cp(Yd(m),Yd(g))?m:g}return t}(t,r,n,i);return D--,a}function $d(e){return 262143&e.flags?e:e.permissiveInstantiation||(e.permissiveInstantiation=Wd(e,rt))}function Yd(e){return 262143&e.flags?e:(e.restrictiveInstantiation||(e.restrictiveInstantiation=Wd(e,tt),e.restrictiveInstantiation.restrictiveInstantiation=e.restrictiveInstantiation),e.restrictiveInstantiation)}function Xd(e,t){return e&&Qc(Wd(e.type,t),e.isReadonly,e.declaration)}function Qd(t){switch(e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t)),t.kind){case 209:case 210:case 166:case 253:return Zd(t);case 201:return e.some(t.properties,Qd);case 200:return e.some(t.elements,Qd);case 219:return Qd(t.whenTrue)||Qd(t.whenFalse);case 218:return(56===t.operatorToken.kind||60===t.operatorToken.kind)&&(Qd(t.left)||Qd(t.right));case 291:return Qd(t.initializer);case 208:return Qd(t.expression);case 284:return e.some(t.properties,Qd)||e.isJsxOpeningElement(t.parent)&&e.some(t.parent.parent.children,Qd);case 283:var r=t.initializer;return!!r&&Qd(r);case 286:var n=t.expression;return!!n&&Qd(n)}return!1}function Zd(t){return(!e.isFunctionDeclaration(t)||e.isInJSFile(t)&&!!ja(t))&&(ep(t)||function(t){return!t.typeParameters&&!e.getEffectiveReturnTypeNode(t)&&!!t.body&&232!==t.body.kind&&Qd(t.body)}(t))}function ep(t){if(!t.typeParameters){if(e.some(t.parameters,(function(t){return!e.getEffectiveTypeAnnotationNode(t)})))return!0;if(210!==t.kind){var r=e.firstOrUndefined(t.parameters);if(!r||!e.parameterIsThisKeyword(r))return!0}}return!1}function tp(t){return(e.isInJSFile(t)&&e.isFunctionDeclaration(t)||T_(t)||e.isObjectLiteralMethod(t))&&Zd(t)}function rp(t){if(524288&t.flags){var r=Us(t);if(r.constructSignatures.length||r.callSignatures.length){var n=qi(16,t.symbol);return n.members=r.members,n.properties=r.properties,n.callSignatures=e.emptyArray,n.constructSignatures=e.emptyArray,n}}else if(2097152&t.flags)return fu(e.map(t.types,rp));return t}function np(e,t){return Pp(e,t,sn)}function ip(e,t){return Pp(e,t,sn)?-1:0}function ap(e,t){return Pp(e,t,an)?-1:0}function op(e,t){return Pp(e,t,rn)?-1:0}function sp(e,t){return Pp(e,t,rn)}function cp(e,t){return Pp(e,t,an)}function lp(t,r){return 1048576&t.flags?e.every(t.types,(function(e){return lp(e,r)})):1048576&r.flags?e.some(r.types,(function(e){return lp(t,e)})):58982400&t.flags?lp(Qs(t)||Ae,r):r===yt?!!(67633152&t.flags):r===vt?!!(524288&t.flags)&&Jm(t):vo(t,yo(r))||rf(r)&&!nf(r)&&lp(t,Et)}function up(e,t){return Pp(e,t,on)}function dp(e,t){return up(e,t)||up(t,e)}function pp(e,t,r,n,i,a){return Op(e,t,an,r,n,i,a)}function fp(e,t,r,n,i,a){return mp(e,t,an,r,n,i,a,void 0)}function mp(e,t,r,n,i,a,o,s){return!!Pp(e,t,r)||(!n||!_p(i,e,t,r,a,o,s))&&Op(e,t,r,n,a,o,s)}function gp(t){return!!(16777216&t.flags||2097152&t.flags&&e.some(t.types,gp))}function _p(t,r,n,i,o,c,l){if(!t||gp(n))return!1;if(!Op(r,n,i,void 0)&&function(t,r,n,i,a,o,s){for(var c=hc(r,0),l=hc(r,1),u=0,d=[l,c];u<d.length;u++){var p=d[u];if(e.some(p,(function(e){var t=Bc(e);return!(131073&t.flags)&&Op(t,n,i,void 0)}))){var f=s||{};pp(r,n,t,a,o,f);var m=f.errors[f.errors.length-1];return e.addRelatedInfo(m,e.createDiagnosticForNode(t,p===l?e.Diagnostics.Did_you_mean_to_use_new_with_this_expression:e.Diagnostics.Did_you_mean_to_call_this_expression)),!0}}return!1}(t,r,n,i,o,c,l))return!0;switch(t.kind){case 286:case 208:return _p(t.expression,r,n,i,o,c,l);case 218:switch(t.operatorToken.kind){case 62:case 27:return _p(t.right,r,n,i,o,c,l)}break;case 201:return function(t,r,n,i,a,o){return!(131068&n.flags)&&vp(function(t){var r,n,i,a;return s(this,(function(o){switch(o.label){case 0:if(!e.length(t.properties))return[2];r=0,n=t.properties,o.label=1;case 1:if(!(r<n.length))return[3,8];if(i=n[r],e.isSpreadAssignment(i))return[3,7];if(!(a=bu(Ai(i),8576))||131072&a.flags)return[3,7];switch(i.kind){case 169:case 168:case 166:case 292:return[3,2];case 291:return[3,4]}return[3,6];case 2:return[4,{errorNode:i.name,innerExpression:void 0,nameType:a}];case 3:return o.sent(),[3,7];case 4:return[4,{errorNode:i.name,innerExpression:i.initializer,nameType:a,errorMessage:e.isComputedNonLiteralName(i.name)?e.Diagnostics.Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:void 0}];case 5:return o.sent(),[3,7];case 6:e.Debug.assertNever(i),o.label=7;case 7:return r++,[3,1];case 8:return[2]}}))}(t),r,n,i,a,o)}(t,r,n,i,c,l);case 200:return function(e,t,r,n,i,a){if(131068&r.flags)return!1;if(lf(t))return vp(kp(e,r),t,r,n,i,a);var o=e.contextualType;e.contextualType=r;try{var s=P_(e,1,!0);return e.contextualType=o,!!lf(s)&&vp(kp(e,r),s,r,n,i,a)}finally{e.contextualType=o}}(t,r,n,i,c,l);case 284:return function(t,r,n,i,o,c){var l,u=vp(function(t){var r,n,i;return s(this,(function(a){switch(a.label){case 0:if(!e.length(t.properties))return[2];r=0,n=t.properties,a.label=1;case 1:return r<n.length?(i=n[r],e.isJsxSpreadAttribute(i)?[3,3]:[4,{errorNode:i.name,innerExpression:i.initializer,nameType:hd(e.idText(i.name))}]):[3,4];case 2:a.sent(),a.label=3;case 3:return r++,[3,1];case 4:return[2]}}))}(t),r,n,i,o,c);if(e.isJsxOpeningElement(t.parent)&&e.isJsxElement(t.parent.parent)){var d=t.parent.parent,p=Q_(Y_(t)),f=void 0===p?"children":e.unescapeLeadingUnderscores(p),m=hd(f),g=qu(n,m),_=e.getSemanticJsxChildren(d.children);if(!e.length(_))return u;var h=e.length(_)>1,y=ug(g,uf),v=ug(g,(function(e){return!uf(e)}));if(h){if(y!==He){var b=Hl(V_(d,0)),k=function(t,r){var n,i,a,o,c;return s(this,(function(s){switch(s.label){case 0:if(!e.length(t.children))return[2];n=0,i=0,s.label=1;case 1:return i<t.children.length?(a=t.children[i],o=hd(i-n),(c=bp(a,o,r))?[4,c]:[3,3]):[3,5];case 2:return s.sent(),[3,4];case 3:n++,s.label=4;case 4:return i++,[3,1];case 5:return[2]}}))}(d,S);u=vp(k,b,y,i,o,c)||u}else if(!Pp(qu(r,m),g,i)){u=!0;var x=pn(d.openingElement.tagName,e.Diagnostics.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,f,da(g));c&&c.skipLogging&&(c.errors||(c.errors=[])).push(x)}}else if(v!==He){var E=bp(_[0],m,S);E&&(u=vp(function(){return s(this,(function(e){switch(e.label){case 0:return[4,E];case 1:return e.sent(),[2]}}))}(),r,n,i,o,c)||u)}else if(!Pp(qu(r,m),g,i)){u=!0;x=pn(d.openingElement.tagName,e.Diagnostics.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,f,da(g));c&&c.skipLogging&&(c.errors||(c.errors=[])).push(x)}}return u;function S(){if(!l){var r=e.getTextOfNode(t.parent.tagName),i=Q_(Y_(t)),o=void 0===i?"children":e.unescapeLeadingUnderscores(i),s=qu(n,hd(o)),c=e.Diagnostics._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;l=a(a({},c),{key:"!!ALREADY FORMATTED!!",message:e.formatMessage(void 0,c,r,o,da(s))})}return l}}(t,r,n,i,c,l);case 210:return function(t,r,n,i,a,o){if(e.isBlock(t.body))return!1;if(e.some(t.parameters,e.hasType))return!1;var s=Qh(r);if(!s)return!1;var c=hc(n,0);if(!e.length(c))return!1;var l=t.body,u=Bc(s),d=ou(e.map(c,Bc));if(!Op(u,d,i,void 0)){var p=l&&_p(l,u,d,i,void 0,a,o);if(p)return p;var f=o||{};if(Op(u,d,i,l,void 0,a,f),f.errors)return n.symbol&&e.length(n.symbol.declarations)&&e.addRelatedInfo(f.errors[f.errors.length-1],e.createDiagnosticForNode(n.symbol.declarations[0],e.Diagnostics.The_expected_type_comes_from_the_return_type_of_this_signature)),0==(2&e.getFunctionFlags(t))&&!Na(u,"then")&&Op(_v(u),d,i,void 0)&&e.addRelatedInfo(f.errors[f.errors.length-1],e.createDiagnosticForNode(t,e.Diagnostics.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}(t,r,n,i,c,l)}return!1}function hp(e,t,r){var n=Vu(t,r);if(n)return n;if(1048576&t.flags){var i=Mp(e,t);if(i)return Vu(i,r)}}function yp(e,t){e.contextualType=t;try{return eb(e,1,t)}finally{e.contextualType=void 0}}function vp(t,r,n,i,a,o){for(var s=!1,c=t.next();!c.done;c=t.next()){var l=c.value,u=l.errorNode,d=l.innerExpression,p=l.nameType,f=l.errorMessage,m=hp(r,n,p);if(m&&!(8388608&m.flags)){var g=Vu(r,p);if(g&&!Op(g,m,i,void 0))if(d&&_p(d,g,m,i,void 0,a,o))s=!0;else{var _=o||{},h=d?yp(d,g):g;if(Op(h,m,i,u,f,a,_)&&h!==g&&Op(g,m,i,u,f,a,_),_.errors){var y=_.errors[_.errors.length-1],v=Zo(p)?is(p):void 0,b=void 0!==v?gc(n,v):void 0,k=!1;if(!b){var x=Mv(p,296)&&bc(n,1)||bc(n,0)||void 0;x&&x.declaration&&!e.getSourceFileOfNode(x.declaration).hasNoDefaultLib&&(k=!0,e.addRelatedInfo(y,e.createDiagnosticForNode(x.declaration,e.Diagnostics.The_expected_type_comes_from_this_index_signature)))}if(!k&&(b&&e.length(b.declarations)||n.symbol&&e.length(n.symbol.declarations))){var E=b&&e.length(b.declarations)?b.declarations[0]:n.symbol.declarations[0];e.getSourceFileOfNode(E).hasNoDefaultLib||e.addRelatedInfo(y,e.createDiagnosticForNode(E,e.Diagnostics.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,!v||8192&p.flags?da(p):e.unescapeLeadingUnderscores(v),da(n)))}}s=!0}}}return s}function bp(t,r,n){switch(t.kind){case 286:return{errorNode:t,innerExpression:t.expression,nameType:r};case 11:if(t.containsOnlyTriviaWhiteSpaces)break;return{errorNode:t,innerExpression:void 0,nameType:r,errorMessage:n()};case 276:case 277:case 280:return{errorNode:t,innerExpression:t,nameType:r};default:return e.Debug.assertNever(t,"Found invalid jsx child")}}function kp(t,r){var n,i,a,o;return s(this,(function(s){switch(s.label){case 0:if(!(n=e.length(t.elements)))return[2];i=0,s.label=1;case 1:return i<n?lf(r)&&!gc(r,""+i)?[3,3]:(a=t.elements[i],e.isOmittedExpression(a)?[3,3]:(o=hd(i),[4,{errorNode:a,innerExpression:a,nameType:o}])):[3,4];case 2:s.sent(),s.label=3;case 3:return i++,[3,1];case 4:return[2]}}))}function xp(e,t,r,n,i){return Op(e,t,on,r,n,i)}function Ep(t,r,n,i,a,o,s,c){if(t===r)return-1;if(!(l=r).typeParameters&&(!l.thisParameter||Pa(Qy(l.thisParameter)))&&1===l.parameters.length&&U(l)&&(Qy(l.parameters[0])===At||Pa(Qy(l.parameters[0])))&&Pa(Bc(l)))return-1;var l,u=ov(r);if(!cv(r)&&(8&n?cv(t)||ov(t)>u:sv(t)>u))return 0;t.typeParameters&&t.typeParameters!==r.typeParameters&&(t=ty(t,r=Wc(r),void 0,s));var d=ov(t),p=uv(t),f=uv(r);if((p||f)&&Wd(p||f,c),p&&f&&d!==u)return 0;var m=r.declaration?r.declaration.kind:0,g=!(3&n)&&G&&166!==m&&165!==m&&167!==m,_=-1,h=Lc(t);if(h&&h!==Ve){var y=Lc(r);if(y){if(!(S=!g&&s(h,y,!1)||s(y,h,i)))return i&&a(e.Diagnostics.The_this_types_of_each_signature_are_incompatible),0;_&=S}}for(var v=p||f?Math.min(d,u):Math.max(d,u),b=p||f?v-1:-1,k=0;k<v;k++){var x=k===b?av(t,k):iv(t,k),E=k===b?av(r,k):iv(r,k);if(x&&E){var S,D=3&n?void 0:Qh(Pf(x)),w=3&n?void 0:Qh(Pf(E));if((S=D&&w&&!jc(D)&&!jc(w)&&(98304&wf(x))==(98304&wf(E))?Ep(w,D,8&n|(g?2:1),i,a,o,s,c):!(3&n)&&!g&&s(x,E,!1)||s(E,x,i))&&8&n&&k>=sv(t)&&k<sv(r)&&s(x,E,!1)&&(S=0),!S)return i&&a(e.Diagnostics.Types_of_parameters_0_and_1_are_incompatible,e.unescapeLeadingUnderscores(ev(t,k)),e.unescapeLeadingUnderscores(ev(r,k))),0;_&=S}}if(!(4&n)){var T=Uc(r)?Ee:r.declaration&&Fy(r.declaration)?Oo(Ci(r.declaration.symbol)):Bc(r);if(T===Ve)return _;var C=Uc(t)?Ee:t.declaration&&Fy(t.declaration)?Oo(Ci(t.declaration.symbol)):Bc(t),A=jc(r);if(A){var N=jc(t);if(N)_&=function(t,r,n,i,a){if(t.kind!==r.kind)return n&&(i(e.Diagnostics.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard),i(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,ha(t),ha(r))),0;if((1===t.kind||3===t.kind)&&t.parameterIndex!==r.parameterIndex)return n&&(i(e.Diagnostics.Parameter_0_is_not_in_the_same_position_as_parameter_1,t.parameterName,r.parameterName),i(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,ha(t),ha(r))),0;var o=t.type===r.type?-1:t.type&&r.type?a(t.type,r.type,n):0;0===o&&n&&i(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,ha(t),ha(r));return o}(N,A,i,a,s);else if(e.isIdentifierTypePredicate(A))return i&&a(e.Diagnostics.Signature_0_must_be_a_type_predicate,ua(t)),0}else!(_&=1&n&&s(T,C,!1)||s(C,T,i))&&i&&o&&o(C,T)}return _}function Sp(e,t){var r=Kc(e),n=Kc(t),i=Bc(r),a=Bc(n);return!(a!==Ve&&!Pp(a,i,an)&&!Pp(i,a,an))&&0!==Ep(r,n,!0?4:0,!1,void 0,void 0,ap,void 0)}function Dp(e){return e!==ct&&0===e.properties.length&&0===e.callSignatures.length&&0===e.constructSignatures.length&&!e.stringIndexInfo&&!e.numberIndexInfo}function wp(t){return 524288&t.flags?!zs(t)&&Dp(Us(t)):!!(67108864&t.flags)||(1048576&t.flags?e.some(t.types,wp):!!(2097152&t.flags)&&e.every(t.types,wp))}function Tp(t){return!!(16&e.getObjectFlags(t)&&(t.members&&Dp(t)||t.symbol&&2048&t.symbol.flags&&0===ss(t.symbol).size))}function Cp(t){return 524288&t.flags&&!zs(t)&&0===Hs(t).length&&bc(t,0)&&!bc(t,1)||3145728&t.flags&&e.every(t.types,Cp)||!1}function Ap(t,r,n){if(t===r)return!0;var i=R(t)+","+R(r),a=cn.get(i);if(void 0!==a&&(4&a||!(2&a)||!n))return!!(1&a);if(!(t.escapedName===r.escapedName&&256&t.flags&&256&r.flags))return cn.set(i,6),!1;for(var o=_o(r),s=0,c=Hs(_o(t));s<c.length;s++){var l=c[s];if(8&l.flags){var u=gc(o,l.escapedName);if(!(u&&8&u.flags))return n?(n(e.Diagnostics.Property_0_is_missing_in_type_1,e.symbolName(l),da(Jo(r),void 0,64)),cn.set(i,6)):cn.set(i,2),!1}}return cn.set(i,1),!0}function Np(e,t,r,n){var i=e.flags,a=t.flags;if(3&a||131072&i||e===De)return!0;if(131072&a)return!1;if(402653316&i&&4&a)return!0;if(128&i&&1024&i&&128&a&&!(1024&a)&&e.value===t.value)return!0;if(296&i&&8&a)return!0;if(256&i&&1024&i&&256&a&&!(1024&a)&&e.value===t.value)return!0;if(2112&i&&64&a)return!0;if(528&i&&16&a)return!0;if(12288&i&&4096&a)return!0;if(32&i&&32&a&&Ap(e.symbol,t.symbol,n))return!0;if(1024&i&&1024&a){if(1048576&i&&1048576&a&&Ap(e.symbol,t.symbol,n))return!0;if(2944&i&&2944&a&&e.value===t.value&&Ap(Ni(e.symbol),Ni(t.symbol),n))return!0}if(32768&i&&(!W||49152&a))return!0;if(65536&i&&(!W||65536&a))return!0;if(524288&i&&67108864&a)return!0;if(r===an||r===on){if(1&i)return!0;if(264&i&&!(1024&i)&&(32&a||256&a&&1024&a))return!0}return!1}function Pp(e,t,r){if(_d(e)&&(e=e.regularType),_d(t)&&(t=t.regularType),e===t)return!0;if(r!==sn){if(r===on&&!(131072&t.flags)&&Np(t,e,r)||Np(e,t,r))return!0}else if(!(3145728&e.flags||3145728&t.flags||e.flags===t.flags||469237760&e.flags))return!1;if(524288&e.flags&&524288&t.flags){var n=r.get(Kp(e,t,0,r));if(void 0!==n)return!!(1&n)}return!!(469499904&e.flags||469499904&t.flags)&&Op(e,t,r,void 0)}function Ip(t,r){return 4096&e.getObjectFlags(t)&&!U_(r.escapedName)}function Fp(t,r){for(;;){var n=_d(t)?t.regularType:4&e.getObjectFlags(t)&&t.node?ol(t.target,ll(t)):3145728&t.flags?uc(t):33554432&t.flags?r?t.baseType:t.substitute:25165824&t.flags?ju(t,r):t;if(n===t)break;t=n}return t}function Op(t,r,n,a,o,s,c){var u,p,f,m,g,_,h=0,y=0,v=0,b=!1,k=0,x=[],E=!1;e.Debug.assert(n!==sn||!a,"no error reporting in identity checking");var S=j(t,r,!!a,o);if(x.length&&O(),b){null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","checkTypeRelatedTo_DepthLimit",{sourceId:t.id,targetId:r.id,depth:y});var D=pn(a||d,e.Diagnostics.Excessive_stack_depth_comparing_types_0_and_1,da(t),da(r));c&&(c.errors||(c.errors=[])).push(D)}else if(u){if(s){var w=s();w&&(e.concatenateDiagnosticMessageChains(w,u),u=w)}var T=void 0;if(o&&a&&!S&&t.symbol){var C=Tn(t.symbol);if(C.originatingImport&&!e.isImportCall(C.originatingImport))if(Op(_o(C.target),r,n,void 0)){var A=e.createDiagnosticForNode(C.originatingImport,e.Diagnostics.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead);T=e.append(T,A)}}D=e.createDiagnosticForNodeFromMessageChain(a,u,T);p&&e.addRelatedInfo.apply(void 0,i([D],p)),c&&(c.errors||(c.errors=[])).push(D),c&&c.skipLogging||Qr.add(D)}return a&&c&&c.skipLogging&&0===S&&e.Debug.assert(!!c.errors,"missed opportunity to interact with error."),0!==S;function P(e){u=e.errorInfo,_=e.lastSkippedInfo,x=e.incompatibleStack,k=e.overrideNextErrorInfo,p=e.relatedInfo}function I(){return{errorInfo:u,lastSkippedInfo:_,incompatibleStack:x.slice(),overrideNextErrorInfo:k,relatedInfo:p?p.slice():void 0}}function F(e,t,r,n,i){k++,_=void 0,x.push([e,t,r,n,i])}function O(){var t=x;x=[];var r=_;if(_=void 0,1===t.length)return R.apply(void 0,t[0]),void(r&&M.apply(void 0,i([void 0],r)));for(var n="",a=[];t.length;){var o=t.pop(),s=o[0],c=o.slice(1);switch(s.code){case e.Diagnostics.Types_of_property_0_are_incompatible.code:0===n.indexOf("new ")&&(n="("+n+")");var l=""+c[0];n=0===n.length?""+l:e.isIdentifierText(l,J.target)?n+"."+l:"["===l[0]&&"]"===l[l.length-1]?""+n+l:n+"["+l+"]";break;case e.Diagnostics.Call_signature_return_types_0_and_1_are_incompatible.code:case e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible.code:case e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:if(0===n.length){var u=s;s.code===e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?u=e.Diagnostics.Call_signature_return_types_0_and_1_are_incompatible:s.code===e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(u=e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible),a.unshift([u,c[0],c[1]])}else{n=""+(s.code===e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible.code||s.code===e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"")+n+"("+(s.code===e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||s.code===e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...")+")"}break;default:return e.Debug.fail("Unhandled Diagnostic: "+s.code)}}n?R(")"===n[n.length-1]?e.Diagnostics.The_types_returned_by_0_are_incompatible_between_these_types:e.Diagnostics.The_types_of_0_are_incompatible_between_these_types,n):a.shift();for(var d=0,p=a;d<p.length;d++){var f=p[d],m=(s=f[0],c=f.slice(1),s.elidedInCompatabilityPyramid);s.elidedInCompatabilityPyramid=!1,R.apply(void 0,i([s],c)),s.elidedInCompatabilityPyramid=m}r&&M.apply(void 0,i([void 0],r))}function R(t,r,n,i,o){e.Debug.assert(!!a),x.length&&O(),t.elidedInCompatabilityPyramid||(u=e.chainDiagnosticMessages(u,t,r,n,i,o))}function M(t,r,i){x.length&&O();var a=pa(r,i),o=a[0],s=a[1],c=r,l=o;if(ff(r)&&!Rp(i)&&(c=mf(r),e.Debug.assert(!cp(c,i),"generalized source shouldn't be assignable"),l=fa(c)),262144&i.flags){var u=Qs(i),d=void 0;u&&(cp(c,u)||(d=cp(r,u)))?R(e.Diagnostics._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,d?o:l,s,da(u)):R(e.Diagnostics._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,s,l)}t||(t=n===on?e.Diagnostics.Type_0_is_not_comparable_to_type_1:o===s?e.Diagnostics.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:e.Diagnostics.Type_0_is_not_assignable_to_type_1),R(t,l,s)}function L(t,r,n){return vf(t)?t.target.readonly&&af(r)?(n&&R(e.Diagnostics.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,da(t),da(r)),!1):vf(r)||rf(r):nf(t)&&af(r)?(n&&R(e.Diagnostics.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,da(t),da(r)),!1):!vf(r)||rf(t)}function j(t,r,i,o,s){if(void 0===i&&(i=!1),void 0===s&&(s=0),524288&t.flags&&131068&r.flags)return Np(t,r,n,i?R:void 0)?-1:(D(t,r,0,!!(4096&e.getObjectFlags(t))),0);var c=Fp(t,!1),l=Fp(r,!0);if(c===l)return-1;if(n===sn)return function(e,t){var r=e.flags&t.flags;if(!(469237760&r))return 0;if(B(e,t),3145728&r){var n=z(e,t);return n&&(n&=z(t,e)),n}return H(e,t,!1,0)}(c,l);if(262144&c.flags&&Ks(c)===l)return-1;if(1048576&l.flags&&524288&c.flags&&l.types.length<=3&&Rv(l,98304)){var d=gg(l,-98305);if(!(1179648&d.flags)){if(c===d)return-1;l=d}}if(n===on&&!(131072&l.flags)&&Np(l,c,n)||Np(c,l,n,i?R:void 0))return-1;var p=!!(4096&e.getObjectFlags(c)),f=!(2&s)&&km(c)&&32768&e.getObjectFlags(c);if(f&&function(t,r,i){if(!sh(r)||!X&&16384&e.getObjectFlags(r))return!1;var o=!!(4096&e.getObjectFlags(t));if((n===an||n===on)&&(sg(yt,r)||!o&&wp(r)))return!1;var s,c=r;1048576&r.flags&&(c=yS(t,r,j)||function(e){if(Rv(e,67108864)){var t=ug(e,(function(e){return!(131068&e.flags)}));if(!(131072&t.flags))return t}return e}(r),s=1048576&c.flags?c.types:[c]);for(var l=function(r){if(function(e,t){return e.valueDeclaration&&t.valueDeclaration&&e.valueDeclaration.parent===t.valueDeclaration}(r,t.symbol)&&!Ip(t,r)){if(!oh(c,r.escapedName,o)){if(i){var n=ug(c,sh);if(!a)return{value:e.Debug.fail()};if(e.isJsxAttributes(a)||e.isJsxOpeningLikeElement(a)||e.isJsxOpeningLikeElement(a.parent)){r.valueDeclaration&&e.isJsxAttribute(r.valueDeclaration)&&e.getSourceFileOfNode(a)===e.getSourceFileOfNode(r.valueDeclaration.name)&&(a=r.valueDeclaration.name);var l=la(r),u=Ih(l,n);(p=u?la(u):void 0)?R(e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,l,da(n),p):R(e.Diagnostics.Property_0_does_not_exist_on_type_1,l,da(n))}else{var d=t.symbol&&e.firstOrUndefined(t.symbol.declarations),p=void 0;if(r.valueDeclaration&&e.findAncestor(r.valueDeclaration,(function(e){return e===d}))&&e.getSourceFileOfNode(d)===e.getSourceFileOfNode(a)){var f=r.valueDeclaration;e.Debug.assertNode(f,e.isObjectLiteralElementLike),a=f;var m=f.name;e.isIdentifier(m)&&(p=Fh(m,n))}void 0!==p?R(e.Diagnostics.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,la(r),da(n),p):R(e.Diagnostics.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,la(r),da(n))}}return{value:!0}}if(s&&!j(_o(r),function(t,r){var n=function(t,n){var i=3145728&(n=ac(n)).flags?lc(n,r):Js(n,r),a=i&&_o(i)||R_(r)&&kc(n,1)||kc(n,0)||Ne;return e.append(t,a)};return ou(e.reduceLeft(t,n,void 0)||e.emptyArray)}(s,r.escapedName),i))return i&&F(e.Diagnostics.Types_of_property_0_are_incompatible,la(r)),{value:!0}}},u=0,d=Hs(t);u<d.length;u++){var p=l(d[u]);if("object"==typeof p)return p.value}return!1}(c,l,i))return i&&M(o,c,r.aliasSymbol?r:l),0;var m=n!==on&&!(2&s)&&2752508&c.flags&&c!==yt&&2621440&l.flags&&jp(l)&&(Hs(c).length>0||iE(c));if(m&&!function(e,t,r){for(var n=0,i=Hs(e);n<i.length;n++){if(oh(t,i[n].escapedName,r))return!0}return!1}(c,l,p)){if(i){var g=da(t.aliasSymbol?t:c),h=da(r.aliasSymbol?r:l),y=hc(c,0),v=hc(c,1);y.length>0&&j(Bc(y[0]),l,!1)||v.length>0&&j(Bc(v[0]),l,!1)?R(e.Diagnostics.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,g,h):R(e.Diagnostics.Type_0_has_no_properties_in_common_with_type_1,g,h)}return 0}B(c,l);var b=0,x=I();if((3145728&c.flags||3145728&l.flags)&&(b=mg(c)*mg(l)>=4?H(c,l,i,8|s):K(c,l,i,8|s)),b||1048576&c.flags||!(469499904&c.flags||469499904&l.flags)||(b=H(c,l,i,s))&&P(x),!b&&2359296&c.flags){var S=function(t,r){for(var n,i=!1,a=0,o=t;a<o.length;a++)if(465829888&(u=o[a]).flags){for(var s=Ks(u);s&&21233664&s.flags;)s=Ks(s);s&&(n=e.append(n,s),r&&(n=e.append(n,u)))}else 469892092&u.flags&&(i=!0);if(n&&(r||i)){if(i)for(var c=0,l=t;c<l.length;c++){var u;469892092&(u=l[c]).flags&&(n=e.append(n,u))}return fu(n)}}(2097152&c.flags?c.types:[c],!!(1048576&l.flags));S&&(2097152&c.flags||1048576&l.flags)&&lg(S,(function(e){return e!==c}))&&(b=j(S,l,!1,void 0,s))&&P(x)}return b&&!E&&(2097152&l.flags&&(f||m)||od(l)&&!rf(l)&&!vf(l)&&2097152&c.flags&&3670016&ac(c).flags&&!e.some(c.types,(function(t){return!!(2097152&e.getObjectFlags(t))})))&&(E=!0,b&=H(c,l,i,4),E=!1),D(c,l,b,p),b;function D(n,s,c,l){if(!c&&i){n=t.aliasSymbol?t:n,s=r.aliasSymbol?r:s;var d=k>0;if(d&&k--,524288&n.flags&&524288&s.flags){var p=u;L(n,s,i),u!==p&&(d=!!u)}if(524288&n.flags&&131068&s.flags)!function(t,r){var n=ma(t.symbol)?da(t,t.symbol.valueDeclaration):da(t),i=ma(r.symbol)?da(r,r.symbol.valueDeclaration):da(r);(St===t&&Re===r||Dt===t&&Me===r||wt===t&&qe===r||Pl(!1)===t&&Je===r)&&R(e.Diagnostics._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,i,n)}(n,s);else if(n.symbol&&524288&n.flags&&yt===n)R(e.Diagnostics.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(l&&2097152&s.flags){var f=s.types,m=W_(N.IntrinsicAttributes,a),g=W_(N.IntrinsicClassAttributes,a);if(m!==we&&g!==we&&(e.contains(f,m)||e.contains(f,g)))return c}else u=mc(u,r);if(!o&&d)return _=[n,s],c;M(o,n,s)}}}function B(t,r){if(e.tracing&&3145728&t.flags&&3145728&r.flags){var n=t,i=r;if(n.objectFlags&i.objectFlags&262144)return;var o=n.types.length,s=i.types.length;o*s>1e6&&e.tracing.instant("checkTypes","traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:t.id,sourceSize:o,targetId:r.id,targetSize:s,pos:null==a?void 0:a.pos,end:null==a?void 0:a.end})}}function z(e,t){for(var r=-1,n=0,i=e.types;n<i.length;n++){var a=U(i[n],t,!1);if(!a)return 0;r&=a}return r}function U(e,t,r){var n=t.types;if(1048576&t.flags&&eu(n,e))return-1;for(var i=0,a=n;i<a.length;i++){var o=j(e,a[i],!1);if(o)return o}r&&j(e,Mp(e,t,j)||n[n.length-1],!0);return 0}function q(e,t,r,n){var i=e.types;if(1048576&e.flags&&eu(i,t))return-1;for(var a=i.length,o=0;o<a;o++){var s=j(i[o],t,r&&o===a-1,void 0,n);if(s)return s}return 0}function V(e,t,r,n){for(var i=-1,a=e.types,o=function(e,t){return 1048576&e.flags&&1048576&t.flags&&!(32768&e.types[0].flags)&&32768&t.types[0].flags?gg(t,-32769):t}(e,t),s=0;s<a.length;s++){var c=a[s];if(1048576&o.flags&&a.length>=o.types.length&&a.length%o.types.length==0){var l=j(c,o.types[s%o.types.length],!1,void 0,n);if(l){i&=l;continue}}var u=j(c,t,r,void 0,n);if(!u)return 0;i&=u}return i}function H(t,r,i,a){if(b)return 0;var o=Kp(t,r,a|(E?16:0),n),s=n.get(o);if(void 0!==s&&(!(i&&2&s)||4&s)){if(or){var c=24&s;8&c&&Wd(t,Nd(G)),16&c&&Wd(t,Nd($))}return 1&s?-1:0}if(f){for(var l=0;l<h;l++)if(o===f[l])return 3;if(100===y)return b=!0,0}else f=[],m=[],g=[];var u=h;f[h]=o,h++,m[y]=t,g[y]=r,y++;var d,p=v;1&v||!Yp(t,m,y)||(v|=1),2&v||!Yp(r,g,y)||(v|=2);var _=0;or&&(d=or,or=function(e){return _|=e?16:8,d(e)}),3===v&&(null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","recursiveTypeRelatedTo_DepthLimit",{sourceId:t.id,sourceIdStack:m.map((function(e){return e.id})),targetId:r.id,targetIdStack:g.map((function(e){return e.id})),depth:y}));var k=3!==v?K(t,r,i,a):3;if(or&&(or=d),v=p,y--,k){if(-1===k||0===y){if(-1===k||3===k)for(l=u;l<h;l++)n.set(f[l],1|_);h=u}}else n.set(o,2|(i?4:0)|_),h=u;return k}function K(t,r,i,a){null===e.tracing||void 0===e.tracing||e.tracing.push("checkTypes","structuredTypeRelatedTo",{sourceId:t.id,targetId:r.id});var o=function(t,r,i,a){if(4&a)return ee(t,r,i,void 0,0);if(8&a)return 1048576&t.flags?n===on?q(t,r,i&&!(131068&t.flags),-9&a):V(t,r,i&&!(131068&t.flags),-9&a):1048576&r.flags?U(Bf(t),r,i&&!(131068&t.flags)&&!(131068&r.flags)):2097152&r.flags?function(e,t,r,n){for(var i=-1,a=0,o=t.types;a<o.length;a++){var s=j(e,o[a],r,void 0,n);if(!s)return 0;i&=s}return i}(Bf(t),r,i,2):q(t,r,!1,1);var o,s,c=t.flags&r.flags;if(n===sn&&!(524288&c)){if(4194304&c)return j(t.type,r.type,!1);var l=0;return 8388608&c&&(l=j(t.objectType,r.objectType,!1))&&(l&=j(t.indexType,r.indexType,!1))||16777216&c&&t.root.isDistributive===r.root.isDistributive&&(l=j(t.checkType,r.checkType,!1))&&(l&=j(t.extendsType,r.extendsType,!1))&&(l&=j(Xu(t),Xu(r),!1))&&(l&=j(Qu(t),Qu(r),!1))?l:33554432&c?j(t.substitute,r.substitute,!1):0}var d=!1,p=I();if(17301504&t.flags&&t.aliasSymbol&&t.aliasTypeArguments&&t.aliasSymbol===r.aliasSymbol&&!t.aliasTypeArgumentsContainsMarker&&!r.aliasTypeArgumentsContainsMarker){if((J=zp(t.aliasSymbol))===e.emptyArray)return 1;if(void 0!==(H=re(t.aliasTypeArguments,r.aliasTypeArguments,J,a)))return H}if(kf(t)&&!t.target.readonly&&(o=j(ll(t)[0],r))||kf(r)&&(r.target.readonly||af(Qs(t)||t))&&(o=j(t,ll(r)[0])))return o;if(262144&r.flags){if(32&e.getObjectFlags(t)&&!t.declaration.nameType&&j(Eu(r),Ps(t))&&!(4&Ls(t))){var f=Fs(t),m=qu(r,Ns(t));if(o=j(f,m,i))return o}}else if(4194304&r.flags){var g=r.type;if(4194304&t.flags&&(o=j(g,t.type,!1)))return o;if(vf(g)){if(o=j(t,Yl(g),i))return o}else if((N=Gs(g))&&-1===j(t,Eu(N,r.stringsOnly),i))return-1}else if(8388608&r.flags){if(n===an||n===on){var _=r.objectType,h=r.indexType,y=Qs(_)||_,v=Qs(h)||h;if(!Ru(y)&&!Mu(v)){var b=2|(y!==_?1:0);if((N=Vu(y,v,r.noUncheckedIndexedAccessCandidate,void 0,b))&&(o=j(t,N,i)))return o}}}else if(zs(r)&&!r.declaration.nameType){var k=Fs(r),x=Ls(r);if(!(8&x)){if(8388608&k.flags&&k.objectType===t&&k.indexType===Ns(r))return-1;if(!zs(t)){var E=Ps(r),S=Eu(t,void 0,!0),D=4&x,w=D?bs(E,S):void 0;if(D?!(131072&w.flags):j(E,S)){f=Fs(r);var T=Ns(r),C=gg(f,-98305);if(8388608&C.flags&&C.indexType===T){if(o=j(t,C.objectType,i))return o}else{m=qu(t,w?fu([w,T]):T);if(o=j(m,f,i))return o}}s=u,P(p)}}}else if(134217728&r.flags&&128&t.flags&&Ou(r)){var A=hm(t,r);if(A&&e.every(A,(function(e,t){return _m(e,r.types[t])})))return-1}if(8650752&t.flags){if(8388608&t.flags&&8388608&r.flags){if((o=j(t.objectType,r.objectType,i))&&(o&=j(t.indexType,r.indexType,i)),o)return P(p),o}else if(!(N=Ks(t))||262144&t.flags&&1&N.flags){if(o=j(nt,gg(r,-67108865)))return P(p),o}else{if(o=j(N,r,!1,void 0,a))return P(p),o;if(o=j(ls(N,t),r,i,void 0,a))return P(p),o}}else if(4194304&t.flags){if(o=j(Qe,r,i))return P(p),o}else if(134217728&t.flags){if(134217728&r.flags&&t.texts.length===r.texts.length&&t.types.length===r.types.length&&e.every(t.texts,(function(e,t){return e===r.texts[t]}))&&e.every(Wd(t,Nd($)).types,(function(e,t){return!!(5&r.types[t].flags)||!!j(e,r.types[t],!1)})))return-1;if((N=Qs(t))&&N!==t&&(o=j(N,r,i)))return P(p),o}else if(268435456&t.flags){var N;if(268435456&r.flags&&t.symbol===r.symbol){if(o=j(t.type,r.type,i))return P(p),o}else if((N=Qs(t))&&(o=j(N,r,i)))return P(p),o}else if(16777216&t.flags){if(16777216&r.flags){var F=t.root.inferTypeParameters,O=t.extendsType,R=void 0;if(F){var M=Qf(F,void 0,0,j);ym(M.inferences,r.extendsType,O,768),O=Wd(O,M.mapper),R=M.mapper}if(np(O,r.extendsType)&&(j(t.checkType,r.checkType)||j(r.checkType,t.checkType))&&((o=j(Wd(Xu(t),R),Xu(r),i))&&(o&=j(Qu(t),Qu(r),i)),o))return P(p),o}else{var L=Ys(t);if(L&&(o=j(L,r,i)))return P(p),o}var B=$s(t);if(B&&(o=j(B,r,i)))return P(p),o}else{if(n!==rn&&n!==nn&&(Z=r,32&e.getObjectFlags(Z)&&4&Ls(Z))&&wp(t))return-1;if(zs(r))return zs(t)&&(o=function(e,t,r){var i=n===on||(n===sn?Ls(e)===Ls(t):Bs(e)<=Bs(t));if(i){var a;if(a=j(Ps(t),Wd(Ps(e),Nd(Bs(e)<0?G:$)),r)){var o=Td([Ns(e)],[Ns(t)]);if(Wd(Is(e),o)===Wd(Is(t),o))return a&j(Wd(Fs(e),o),Fs(t),r)}}return 0}(t,r,i))?(P(p),o):0;var z=!!(131068&t.flags);if(n!==sn)t=ac(t);else if(zs(t))return 0;if(4&e.getObjectFlags(t)&&4&e.getObjectFlags(r)&&t.target===r.target&&!(8192&e.getObjectFlags(t)||8192&e.getObjectFlags(r))){var J,H;if((J=qp(t.target))===e.emptyArray)return 1;if(void 0!==(H=re(ll(t),ll(r),J,a)))return H}else{if(nf(r)?rf(t)||vf(t):rf(r)&&vf(t)&&!t.target.readonly)return n!==sn?j(kc(t,1)||Ee,kc(r,1)||Ee,i):0;if((n===rn||n===nn)&&wp(r)&&32768&e.getObjectFlags(r)&&!wp(t))return 0}if(2621440&t.flags&&524288&r.flags){var K=i&&u===p.errorInfo&&!z;if((o=ee(t,r,K,void 0,a))&&(o&=te(t,r,0,K))&&(o&=te(t,r,1,K))&&(o&=oe(t,r,0,z,K,a))&&(o&=oe(t,r,1,z,K,a)),d&&o)u=s||u||p.errorInfo;else if(o)return o}if(2621440&t.flags&&1048576&r.flags){var Y=gg(r,36175872);if(1048576&Y.flags){var X=function(t,r){var i=Hs(t),a=jm(i,r);if(!a)return 0;for(var o=1,s=0,c=a;s<c.length;s++){if((o*=dg(_o(p=c[s])))>25)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","typeRelatedToDiscriminatedType_DepthLimit",{sourceId:t.id,targetId:r.id,numCombinations:o}),0}for(var l=new Array(a.length),u=new e.Set,d=0;d<a.length;d++){var p,f=_o(p=a[d]);l[d]=1048576&f.flags?f.types:[f],u.add(p.escapedName)}for(var m=e.cartesianProduct(l),g=[],_=function(i){var o=!1;e:for(var s=0,c=r.types;s<c.length;s++){for(var l=c[s],u=function(e){var o=a[e],s=gc(l,o.escapedName);return s?o===s?"continue":Q(t,r,o,s,(function(t){return i[e]}),!1,0,W||n===on)?void 0:"continue-outer":"continue-outer"},d=0;d<a.length;d++){if("continue-outer"===u(d))continue e}e.pushIfUnique(g,l,e.equateValues),o=!0}if(!o)return{value:0}},h=0,y=m;h<y.length;h++){var v=_(y[h]);if("object"==typeof v)return v.value}for(var b=-1,k=0,x=g;k<x.length;k++){var E=x[k];if((b&=ee(t,E,!1,u,0))&&(b&=te(t,E,0,!1))&&(b&=te(t,E,1,!1))&&(!(b&=oe(t,E,0,!1,!1,0))||vf(t)&&vf(E)||(b&=oe(t,E,1,!1,!1,0))),!b)return b}return b}(t,Y);if(X)return X}}}var Z;return 0;function re(t,r,a,c){if(o=function(t,r,i,a,o){if(void 0===t&&(t=e.emptyArray),void 0===r&&(r=e.emptyArray),void 0===i&&(i=e.emptyArray),t.length!==r.length&&n===sn)return 0;for(var s=t.length<=r.length?t.length:r.length,c=-1,l=0;l<s;l++){var u=l<i.length?i[l]:1,d=7&u;if(4!==d){var p=t[l],f=r[l],m=-1;if(8&u?m=n===sn?j(p,f,!1):ip(p,f):1===d?m=j(p,f,a,void 0,o):2===d?m=j(f,p,a,void 0,o):3===d?(m=j(f,p,!1))||(m=j(p,f,a,void 0,o)):(m=j(p,f,a,void 0,o))&&(m&=j(f,p,a,void 0,o)),!m)return 0;c&=m}}return c}(t,r,a,i,c))return o;if(e.some(a,(function(e){return!!(24&e)})))return s=void 0,void P(p);var l=r&&function(e,t){for(var r=0;r<t.length;r++)if(1==(7&t[r])&&16384&e[r].flags)return!0;return!1}(r,a);if(d=!l,a!==e.emptyArray&&!l){if(d&&(!i||!e.some(a,(function(e){return 0==(7&e)}))))return 0;s=u,P(p)}}}(t,r,i,a);return null===e.tracing||void 0===e.tracing||e.tracing.pop(),o}function G(e){return!or||e!==pt&&e!==ft&&e!==sr||or(!1),e}function $(e){return!or||e!==pt&&e!==ft&&e!==sr||or(!0),e}function Y(e,t){if(!t||0===e.length)return e;for(var r,n=0;n<e.length;n++)t.has(e[n].escapedName)?r||(r=e.slice(0,n)):r&&r.push(e[n]);return r||e}function Q(t,r,n,i,a,o,s,c){var l=e.getDeclarationModifierFlagsFromSymbol(n),u=e.getDeclarationModifierFlagsFromSymbol(i);if(8&l||8&u){if(n.valueDeclaration!==i.valueDeclaration)return o&&(8&l&&8&u?R(e.Diagnostics.Types_have_separate_declarations_of_a_private_property_0,la(i)):R(e.Diagnostics.Property_0_is_private_in_type_1_but_not_in_type_2,la(i),da(8&l?t:r),da(8&l?r:t))),0}else if(16&u){if(!function(t,r){return!Wp(r,(function(r){return!!(16&e.getDeclarationModifierFlagsFromSymbol(r))&&(n=t,i=Gp(r),!Wp(n,(function(e){var t=Gp(e);return!!t&&vo(t,i)})));var n,i}))}(n,i))return o&&R(e.Diagnostics.Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2,la(i),da(Gp(n)||t),da(Gp(i)||r)),0}else if(16&l)return o&&R(e.Diagnostics.Property_0_is_protected_in_type_1_but_public_in_type_2,la(i),da(t),da(r)),0;var d=function(t,r,n,i,a){var o=W&&!!(48&e.getCheckFlags(r)),s=n(t);if(65536&e.getCheckFlags(r)&&!Tn(r).type){var c=Tn(r);e.Debug.assertIsDefined(c.deferralParent),e.Debug.assertIsDefined(c.deferralConstituents);for(var l=!!(1048576&c.deferralParent.flags),u=l?0:-1,d=0,p=c.deferralConstituents;d<p.length;d++){var f=j(s,p[d],!1,void 0,l?0:2);if(l){if(f)return f}else{if(!f)return j(s,za(_o(r),o),i);u&=f}}return l&&!u&&o&&(u=j(s,Ne)),l&&!u&&i?j(s,za(_o(r),o),i):u}return j(s,za(_o(r),o),i,void 0,a)}(n,i,a,o,s);return d?c||!(16777216&n.flags)||16777216&i.flags?d:(o&&R(e.Diagnostics.Property_0_is_optional_in_type_1_but_required_in_type_2,la(i),da(t),da(r)),0):(o&&F(e.Diagnostics.Types_of_property_0_are_incompatible,la(i)),0)}function Z(t,r,n,a){var s=!1;if(n.valueDeclaration&&e.isNamedDeclaration(n.valueDeclaration)&&e.isPrivateIdentifier(n.valueDeclaration.name)&&t.symbol&&32&t.symbol.flags){var c=n.valueDeclaration.name.escapedText,d=e.getSymbolNameForPrivateIdentifier(t.symbol,c);if(d&&gc(t,d)){var f=e.factory.getDeclarationName(t.symbol.valueDeclaration),m=e.factory.getDeclarationName(r.symbol.valueDeclaration);return void R(e.Diagnostics.Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2,Ln(c),Ln(""===f.escapedText?l:f),Ln(""===m.escapedText?l:m))}}var g,_=e.arrayFrom(dm(t,r,a,!1));if((!o||o.code!==e.Diagnostics.Class_0_incorrectly_implements_interface_1.code&&o.code!==e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code)&&(s=!0),1===_.length){var h=la(n);R.apply(void 0,i([e.Diagnostics.Property_0_is_missing_in_type_1_but_required_in_type_2,h],pa(t,r))),e.length(n.declarations)&&(g=e.createDiagnosticForNode(n.declarations[0],e.Diagnostics._0_is_declared_here,h),e.Debug.assert(!!u),p?p.push(g):p=[g]),s&&u&&k++}else L(t,r,!1)&&(_.length>5?R(e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,da(t),da(r),e.map(_.slice(0,4),(function(e){return la(e)})).join(", "),_.length-4):R(e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,da(t),da(r),e.map(_,(function(e){return la(e)})).join(", ")),s&&u&&k++)}function ee(t,r,i,a,o){if(n===sn)return function(e,t,r){if(!(524288&e.flags&&524288&t.flags))return 0;var n=Y(qs(e),r),i=Y(qs(t),r);if(n.length!==i.length)return 0;for(var a=-1,o=0,s=n;o<s.length;o++){var c=s[o],l=Js(t,c.escapedName);if(!l)return 0;var u=Zp(c,l,j);if(!u)return 0;a&=u}return a}(t,r,a);var s=-1;if(vf(r)){if(rf(t)||vf(t)){if(!r.target.readonly&&(nf(t)||vf(t)&&t.target.readonly))return 0;var c=ul(t),l=ul(r),u=vf(t)?4&t.target.combinedFlags:4,d=4&r.target.combinedFlags,p=vf(t)?t.target.minLength:0,f=r.target.minLength;if(!u&&c<f)return i&&R(e.Diagnostics.Source_has_0_element_s_but_target_requires_1,c,f),0;if(!d&&l<p)return i&&R(e.Diagnostics.Source_has_0_element_s_but_target_allows_only_1,p,l),0;if(!d&&u)return i&&(p<f?R(e.Diagnostics.Target_requires_0_element_s_but_source_may_have_fewer,f):R(e.Diagnostics.Target_allows_only_0_element_s_but_source_may_have_more,l)),0;for(var m=ll(t),g=ll(r),_=Math.min(vf(t)?Xl(t.target,11):0,Xl(r.target,11)),h=Math.min(vf(t)?Ql(t.target,11):0,d?Ql(r.target,11):0),y=!!a,v=0;v<l;v++){var b=v<l-h?v:v+c-l,k=vf(t)&&(v<_||v>=l-h)?t.target.elementFlags[b]:4,x=r.target.elementFlags[v];if(8&x&&!(8&k))return i&&R(e.Diagnostics.Source_provides_no_match_for_variadic_element_at_position_0_in_target,v),0;if(8&k&&!(12&x))return i&&R(e.Diagnostics.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,b,v),0;if(1&x&&!(1&k))return i&&R(e.Diagnostics.Source_provides_no_match_for_required_element_at_position_0_in_target,v),0;if(!(y&&((12&k||12&x)&&(y=!1),y&&(null==a?void 0:a.has(""+v))))){var E=vf(t)?v<_||v>=l-h?m[b]:Ef(t,_,h)||He:m[0],S=g[v];if(!(B=j(E,8&k&&4&x?jl(S):S,i,void 0,o)))return i&&(v<_||v>=l-h||c-_-h==1?F(e.Diagnostics.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,b,v):F(e.Diagnostics.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,_,c-h-1,v)),0;s&=B}}return s}if(12&r.target.combinedFlags)return 0}var D=!(n!==rn&&n!==nn||km(t)||cf(t)||vf(t)),w=pm(t,r,D,!1);if(w)return i&&Z(t,r,w,D),0;if(km(r))for(var T=0,C=Y(Hs(t),a);T<C.length;T++){if(!Js(r,(O=C[T]).escapedName))if((E=_o(O))!==Ne&&E!==Pe&&E!==Ie)return i&&R(e.Diagnostics.Property_0_does_not_exist_on_type_1,la(O),da(r)),0}for(var A=Hs(r),N=vf(t)&&vf(r),P=0,I=Y(A,a);P<I.length;P++){var O,M=I[P],L=M.escapedName;if(!(4194304&M.flags)&&(!N||R_(L)||"length"===L))if((O=gc(t,L))&&O!==M){var B;if(!(B=Q(t,r,O,M,_o,i,o,n===on)))return 0;s&=B}}return s}function te(t,r,i,a){var o,s;if(n===sn)return function(e,t,r){var n=hc(e,r),i=hc(t,r);if(n.length!==i.length)return 0;for(var a=-1,o=0;o<n.length;o++){var s=ef(n[o],i[o],!1,!1,!1,j);if(!s)return 0;a&=s}return a}(t,r,i);if(r===ct||t===ct)return-1;var c=t.symbol&&Fy(t.symbol.valueDeclaration),l=r.symbol&&Fy(r.symbol.valueDeclaration),u=hc(t,c&&1===i?0:i),d=hc(r,l&&1===i?0:i);if(1===i&&u.length&&d.length){var p=!!(4&u[0].flags),f=!!(4&d[0].flags);if(p&&!f)return a&&R(e.Diagnostics.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!function(t,r,n){if(!t.declaration||!r.declaration)return!0;var i=e.getSelectedEffectiveModifierFlags(t.declaration,24),a=e.getSelectedEffectiveModifierFlags(r.declaration,24);if(8===a)return!0;if(16===a&&8!==i)return!0;if(16!==a&&!i)return!0;n&&R(e.Diagnostics.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,ya(i),ya(a));return!1}(u[0],d[0],a))return 0}var m=-1,g=I(),_=1===i?ne:re,h=e.getObjectFlags(t),y=e.getObjectFlags(r);if(64&h&&64&y&&t.symbol===r.symbol)for(var v=0;v<d.length;v++){if(!(N=ie(u[v],d[v],!0,a,_(u[v],d[v]))))return 0;m&=N}else if(1===u.length&&1===d.length){var b=n===on||!!J.noStrictGenericChecks,k=e.first(u),x=e.first(d);if(!(m=ie(k,x,b,a,_(k,x)))&&a&&1===i&&h&y&&(167===(null===(o=x.declaration)||void 0===o?void 0:o.kind)||167===(null===(s=k.declaration)||void 0===s?void 0:s.kind))){var E=function(e){return ua(e,void 0,262144,i)};return R(e.Diagnostics.Type_0_is_not_assignable_to_type_1,E(k),E(x)),R(e.Diagnostics.Types_of_construct_signatures_are_incompatible),m}}else e:for(var S=0,D=d;S<D.length;S++){for(var w=D[S],T=a,C=0,A=u;C<A.length;C++){var N,F=A[C];if(N=ie(F,w,!0,T,_(F,w))){m&=N,P(g);continue e}T=!1}return T&&R(e.Diagnostics.Type_0_provides_no_match_for_the_signature_1,da(t),ua(w,void 0,void 0,i)),0}return m}function re(t,r){return 0===t.parameters.length&&0===r.parameters.length?function(t,r){return F(e.Diagnostics.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,da(t),da(r))}:function(t,r){return F(e.Diagnostics.Call_signature_return_types_0_and_1_are_incompatible,da(t),da(r))}}function ne(t,r){return 0===t.parameters.length&&0===r.parameters.length?function(t,r){return F(e.Diagnostics.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,da(t),da(r))}:function(t,r){return F(e.Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible,da(t),da(r))}}function ie(e,t,r,i,a){return Ep(r?Kc(e):e,r?Kc(t):t,n===nn?8:0,i,R,a,j,Nd($))}function ae(t,r,n){var i=j(t,r,n);return!i&&n&&R(e.Diagnostics.Index_signatures_are_incompatible),i}function oe(t,r,i,a,o,s){if(n===sn)return function(e,t,r){var n=bc(t,r),i=bc(e,r);if(!i&&!n)return-1;if(i&&n&&i.isReadonly===n.isReadonly)return j(i.type,n.type);return 0}(t,r,i);var c=kc(r,i);if(!c||1&c.flags&&!a)return-1;if(zs(t))return kc(r,0)?j(Fs(t),c,o):0;var l=kc(t,i)||1===i&&kc(t,0);if(l)return ae(l,c,o);if(!(1&s)&&Lf(t)){var u=function(t,r,n,i){for(var a=-1,o=0,s=2097152&t.flags?Vs(t):qs(t);o<s.length;o++){var c=s[o];if(!Ip(t,c)){var l=Tn(c).nameType;if(!(l&&8192&l.flags)&&(0===n||R_(c.escapedName))){var u=_o(c),d=j(32768&u.flags||!(0===n&&16777216&c.flags)?u:Hm(u,524288),r,i);if(!d)return i&&R(e.Diagnostics.Property_0_is_incompatible_with_index_signature,la(c)),0;a&=d}}}return a}(t,c,i,o);if(u&&0===i){var d=kc(t,1);d&&(u&=ae(d,c,o))}return u}return o&&R(e.Diagnostics.Index_signature_is_missing_in_type_0,da(t)),0}}function Rp(t){if(16&t.flags)return!1;if(3145728&t.flags)return!!e.forEach(t.types,Rp);if(465829888&t.flags){var r=Ks(t);if(r&&r!==t)return Rp(r)}return pf(t)||!!(134217728&t.flags)}function Mp(t,r,n){return void 0===n&&(n=ap),yS(t,r,n,!0)||function(t,r){var n=e.getObjectFlags(t);if(20&n&&1048576&r.flags)return e.find(r.types,(function(r){if(524288&r.flags){var i=n&e.getObjectFlags(r);if(4&i)return t.target===r.target;if(16&i)return!!t.aliasSymbol&&t.aliasSymbol===r.aliasSymbol}return!1}))}(t,r)||function(t,r){if(128&e.getObjectFlags(t)&&cg(r,sf))return e.find(r.types,(function(e){return!sf(e)}))}(t,r)||function(t,r){var n=0,i=hc(t,n).length>0||hc(t,n=1).length>0;if(i)return e.find(r.types,(function(e){return hc(e,n).length>0}))}(t,r)||function(t,r){for(var n,i=0,a=0,o=r.types;a<o.length;a++){var s=o[a],c=fu([Eu(t),Eu(s)]);if(4194304&c.flags)n=s,i=1/0;else if(1048576&c.flags){var l=e.length(e.filter(c.types,pf));l>=i&&(n=s,i=l)}else pf(c)&&1>=i&&(n=s,i=1)}return n}(t,r)}function Lp(t,r,n,i,a){for(var o=t.types.map((function(e){})),s=0,c=r;s<c.length;s++){var l=c[s],u=l[0],d=l[1],p=cc(t,d);if(!(a&&p&&16&e.getCheckFlags(p)))for(var f=0,m=0,g=t.types;m<g.length;m++){var _=Na(g[m],d);_&&n(u(),_)?o[f]=void 0===o[f]||o[f]:o[f]=!1,f++}}var h=o.indexOf(!0);if(-1===h)return i;for(var y=o.indexOf(!0,h+1);-1!==y;){if(!np(t.types[h],t.types[y]))return i;y=o.indexOf(!0,y+1)}return t.types[h]}function jp(t){if(524288&t.flags){var r=Us(t);return 0===r.callSignatures.length&&0===r.constructSignatures.length&&!r.stringIndexInfo&&!r.numberIndexInfo&&r.properties.length>0&&e.every(r.properties,(function(e){return!!(16777216&e.flags)}))}return!!(2097152&t.flags)&&e.every(t.types,jp)}function Bp(t,r,n){var i=ol(t,e.map(t.typeParameters,(function(e){return e===r?n:e})));return i.objectFlags|=8192,i}function zp(e){var t=Tn(e);return Up(t.typeParameters,t,(function(r,n,i){var a=pl(e,Dd(t.typeParameters,Ad(n,i)));return a.aliasTypeArgumentsContainsMarker=!0,a}))}function Up(t,r,n){var i,a,o;void 0===t&&(t=e.emptyArray);var s=r.variances;if(!s){null===e.tracing||void 0===e.tracing||e.tracing.push("checkTypes","getVariancesWorker",{arity:t.length,id:null!==(o=null!==(i=r.id)&&void 0!==i?i:null===(a=r.declaredType)||void 0===a?void 0:a.id)&&void 0!==o?o:-1}),r.variances=e.emptyArray,s=[];for(var c=function(e){var t=!1,i=!1,a=or;or=function(e){return e?i=!0:t=!0};var o=n(r,e,pt),c=n(r,e,ft),l=(cp(c,o)?1:0)|(cp(o,c)?2:0);3===l&&cp(n(r,e,sr),o)&&(l=4),or=a,(t||i)&&(t&&(l|=8),i&&(l|=16)),s.push(l)},l=0,u=t;l<u.length;l++){c(u[l])}r.variances=s,null===e.tracing||void 0===e.tracing||e.tracing.pop()}return s}function qp(e){return e===xt||e===Et||8&e.objectFlags?C:Up(e.typeParameters,e,Bp)}function Jp(e){return 262144&e.flags&&!Ws(e)}function Vp(t){return function(t){return!!(4&e.getObjectFlags(t))&&!t.node}(t)&&e.some(ll(t),(function(e){return Jp(e)||Vp(e)}))}function Hp(e,t,r){void 0===r&&(r=0);for(var n=""+e.target.id,i=0,a=ll(e);i<a.length;i++){var o=a[i];if(Jp(o)){var s=t.indexOf(o);s<0&&(s=t.length,t.push(o)),n+="="+s}else r<4&&Vp(o)?n+="<"+Hp(o,t,r+1)+">":n+="-"+o.id}return n}function Kp(e,t,r,n){if(n===sn&&e.id>t.id){var i=e;e=t,t=i}var a=r?":"+r:"";if(Vp(e)&&Vp(t)){var o=[];return Hp(e,o)+","+Hp(t,o)+a}return e.id+","+t.id+a}function Wp(t,r){if(!(6&e.getCheckFlags(t)))return r(t);for(var n=0,i=t.containingType.types;n<i.length;n++){var a=gc(i[n],t.escapedName),o=a&&Wp(a,r);if(o)return o}}function Gp(e){return e.parent&&32&e.parent.flags?Jo(Ni(e)):void 0}function $p(e){var t=Gp(e),r=t&&Po(t)[0];return r&&Na(r,e.escapedName)}function Yp(e,t,r){if(r>=5){var n=Xp(e);if(n)for(var i=0,a=0;a<r;a++)if(Xp(t[a])===n&&++i>=5)return!0}return!1}function Xp(t){if(524288&t.flags&&!xm(t)){if(e.getObjectFlags(t)&&t.node)return t.node;if(t.symbol&&!(16&e.getObjectFlags(t)&&32&t.symbol.flags))return t.symbol;if(vf(t))return t.target}if(8388608&t.flags){do{t=t.objectType}while(8388608&t.flags);return t}if(16777216&t.flags)return t.root}function Qp(e,t){return 0!==Zp(e,t,ip)}function Zp(t,r,n){if(t===r)return-1;var i=24&e.getDeclarationModifierFlagsFromSymbol(t);if(i!==(24&e.getDeclarationModifierFlagsFromSymbol(r)))return 0;if(i){if(_x(t)!==_x(r))return 0}else if((16777216&t.flags)!=(16777216&r.flags))return 0;return Nv(t)!==Nv(r)?0:n(_o(t),_o(r))}function ef(t,r,n,i,a,o){if(t===r)return-1;if(!function(e,t,r){var n=ov(e),i=ov(t),a=sv(e),o=sv(t),s=cv(e),c=cv(t);return n===i&&a===o&&s===c||!!(r&&a<=o)}(t,r,n))return 0;if(e.length(t.typeParameters)!==e.length(r.typeParameters))return 0;if(r.typeParameters){for(var s=Td(t.typeParameters,r.typeParameters),c=0;c<r.typeParameters.length;c++){if(!((g=t.typeParameters[c])===(f=r.typeParameters[c])||o(Wd(tl(g),s)||Ae,tl(f)||Ae)&&o(Wd(nc(g),s)||Ae,nc(f)||Ae)))return 0}t=jd(t,s,!0)}var l=-1;if(!i){var u=Lc(t);if(u){var d=Lc(r);if(d){if(!(m=o(u,d)))return 0;l&=m}}}var p=ov(r);for(c=0;c<p;c++){var f,m,g=nv(t,c);if(!(m=o(f=nv(r,c),g)))return 0;l&=m}if(!a){var _=jc(t),h=jc(r);l&=_||h?function(e,t,r){return e&&t&&su(e,t)?e.type===t.type?-1:e.type&&t.type?r(e.type,t.type):0:0}(_,h,o):o(Bc(t),Bc(r))}return l}function tf(t){return function(e){for(var t,r=0,n=e;r<n.length;r++){var i=n[r],a=mf(i);if(t||(t=a),a===i||a!==t)return!1}return!0}(t)?ou(t):e.reduceLeft(t,(function(e,t){return sp(e,t)?t:e}))}function rf(t){return!!(4&e.getObjectFlags(t))&&(t.target===xt||t.target===Et)}function nf(t){return!!(4&e.getObjectFlags(t))&&t.target===Et}function af(e){return rf(e)&&!nf(e)||vf(e)&&!e.target.readonly}function of(e){return rf(e)?ll(e)[0]:void 0}function sf(e){return rf(e)||!(98304&e.flags)&&cp(e,Pt)}function cf(e){var t=rf(e)?ll(e)[0]:void 0;return t===Pe||t===Ge}function lf(e){return vf(e)||!!gc(e,"0")}function uf(e){return sf(e)||lf(e)}function df(e){return!(240512&e.flags)}function pf(e){return!!(109440&e.flags)}function ff(t){return!!(16&t.flags)||(1048576&t.flags?!!(1024&t.flags)||e.every(t.types,pf):pf(t))}function mf(e){return 1024&e.flags?Bo(e):128&e.flags?Re:256&e.flags?Me:2048&e.flags?Le:512&e.flags?qe:1048576&e.flags?pg(e,mf):e}function gf(e){return 1024&e.flags&&_d(e)?Bo(e):128&e.flags&&_d(e)?Re:256&e.flags&&_d(e)?Me:2048&e.flags&&_d(e)?Le:512&e.flags&&_d(e)?qe:1048576&e.flags?pg(e,gf):e}function _f(e){return 8192&e.flags?Je:1048576&e.flags?pg(e,_f):e}function hf(e,t){return Qv(e,t)||(e=_f(gf(e))),e}function yf(e,t,r,n){e&&pf(e)&&(e=hf(e,t?rx(r,t,n):void 0));return e}function vf(t){return!!(4&e.getObjectFlags(t)&&8&t.target.objectFlags)}function bf(e){return vf(e)&&!!(8&e.target.combinedFlags)}function kf(e){return bf(e)&&1===e.target.elementFlags.length}function xf(e){return Ef(e,e.target.fixedLength)}function Ef(e,t,r,n){void 0===r&&(r=0),void 0===n&&(n=!1);var i=ul(e)-r;if(t<i){for(var a=ll(e),o=[],s=t;s<i;s++){var c=a[s];o.push(8&e.target.elementFlags[s]?qu(c,Me):c)}return n?fu(o):ou(o)}}function Sf(e){return"0"===e.value.base10Value}function Df(e){for(var t=0,r=0,n=e;r<n.length;r++){t|=wf(n[r])}return t}function wf(e){return 1048576&e.flags?Df(e.types):128&e.flags?""===e.value?128:0:256&e.flags?0===e.value?256:0:2048&e.flags?Sf(e)?2048:0:512&e.flags?e===je||e===Be?512:0:117724&e.flags}function Tf(e){return 117632&wf(e)?ug(e,(function(e){return!(117632&wf(e))})):e}function Cf(e){return 4&e.flags?Ar:8&e.flags?Nr:64&e.flags?Pr:e===Be||e===je||114691&e.flags||128&e.flags&&""===e.value||256&e.flags&&0===e.value||2048&e.flags&&Sf(e)?e:He}function Af(e,t){var r=t&~e.flags&98304;return 0===r?e:ou(32768===r?[e,Ne]:65536===r?[e,Fe]:[e,Ne,Fe])}function Nf(t){return e.Debug.assert(W),32768&t.flags?t:ou([t,Ne])}function Pf(e){return W?function(e){return It||(It=Cl("NonNullable",524288,void 0)||ke),It!==ke?pl(It,[e]):Hm(e,2097152)}(e):e}function If(e){return W?ou([e,Ie]):e}function Ff(e){return e!==Ie}function Of(e){return W?ug(e,Ff):e}function Rf(t,r,n){return n?e.isOutermostOptionalChain(r)?Nf(t):If(t):t}function Mf(t,r){return e.isExpressionOfOptionalChainRoot(r)?Pf(t):e.isOptionalChain(r)?Of(t):t}function Lf(t){return 2097152&t.flags?e.every(t.types,Lf):!(!t.symbol||0==(7040&t.symbol.flags)||iE(t))||!!(2048&e.getObjectFlags(t)&&Lf(t.source))}function jf(t,r){var n=yn(t.flags,t.escapedName,8&e.getCheckFlags(t));n.declarations=t.declarations,n.parent=t.parent,n.type=r,n.target=t,t.valueDeclaration&&(n.valueDeclaration=t.valueDeclaration);var i=Tn(t).nameType;return i&&(n.nameType=i),n}function Bf(t){if(!(km(t)&&32768&e.getObjectFlags(t)))return t;var r=t.regularType;if(r)return r;var n=t,i=function(t,r){for(var n=e.createSymbolTable(),i=0,a=qs(t);i<a.length;i++){var o=a[i],s=_o(o),c=r(s);n.set(o.escapedName,c===s?o:jf(o,c))}return n}(t,Bf),a=Wi(n.symbol,i,n.callSignatures,n.constructSignatures,n.stringIndexInfo,n.numberIndexInfo);return a.flags=n.flags,a.objectFlags|=-32769&n.objectFlags,t.regularType=a,a}function zf(e,t,r){return{parent:e,propertyName:t,siblings:r,resolvedProperties:void 0}}function Uf(e){if(!e.siblings){for(var t=[],r=0,n=Uf(e.parent);r<n.length;r++){var i=n[r];if(km(i)){var a=Js(i,e.propertyName);a&&cg(_o(a),(function(e){t.push(e)}))}}e.siblings=t}return e.siblings}function qf(t){if(!t.resolvedProperties){for(var r=new e.Map,n=0,i=Uf(t);n<i.length;n++){var a=i[n];if(km(a)&&!(1024&e.getObjectFlags(a)))for(var o=0,s=Hs(a);o<s.length;o++){var c=s[o];r.set(c.escapedName,c)}}t.resolvedProperties=e.arrayFrom(r.values())}return t.resolvedProperties}function Jf(e,t){if(!(4&e.flags))return e;var r=_o(e),n=Kf(r,t&&zf(t,e.escapedName,void 0));return n===r?e:jf(e,n)}function Vf(e){var t=be.get(e.escapedName);if(t)return t;var r=jf(e,Ne);return r.flags|=16777216,be.set(e.escapedName,r),r}function Hf(e){return Kf(e,void 0)}function Kf(t,r){if(1572864&e.getObjectFlags(t)){if(void 0===r&&t.widened)return t.widened;var n=void 0;if(98305&t.flags)n=Ee;else if(km(t))n=function(t,r){for(var n=e.createSymbolTable(),i=0,a=qs(t);i<a.length;i++){var o=a[i];n.set(o.escapedName,Jf(o,r))}if(r)for(var s=0,c=qf(r);s<c.length;s++)o=c[s],n.has(o.escapedName)||n.set(o.escapedName,Vf(o));var l=bc(t,0),u=bc(t,1),d=Wi(t.symbol,n,e.emptyArray,e.emptyArray,l&&Qc(Hf(l.type),l.isReadonly),u&&Qc(Hf(u.type),u.isReadonly));return d.objectFlags|=2113536&e.getObjectFlags(t),d}(t,r);else if(1048576&t.flags){var i=r||zf(void 0,void 0,t.types),a=e.sameMap(t.types,(function(e){return 98304&e.flags?e:Kf(e,i)}));n=ou(a,e.some(a,wp)?2:1)}else 2097152&t.flags?n=fu(e.sameMap(t.types,Hf)):(rf(t)||vf(t))&&(n=ol(t.target,e.sameMap(ll(t),Hf)));return n&&void 0===r&&(t.widened=n),n||t}return t}function Wf(t){var r=!1;if(524288&e.getObjectFlags(t)){if(1048576&t.flags)if(e.some(t.types,wp))r=!0;else for(var n=0,i=t.types;n<i.length;n++){Wf(u=i[n])&&(r=!0)}if(rf(t)||vf(t))for(var a=0,o=ll(t);a<o.length;a++){Wf(u=o[a])&&(r=!0)}if(km(t))for(var s=0,c=qs(t);s<c.length;s++){var l=c[s],u=_o(l);524288&e.getObjectFlags(u)&&(Wf(u)||pn(l.valueDeclaration,e.Diagnostics.Object_literal_s_property_0_implicitly_has_an_1_type,la(l),da(Hf(u))),r=!0)}}return r}function Gf(t,r,n){var i=da(Hf(r));if(!e.isInJSFile(t)||e.isCheckJsEnabledForFile(e.getSourceFileOfNode(t),J)){var a;switch(t.kind){case 218:case 164:case 163:a=X?e.Diagnostics.Member_0_implicitly_has_an_1_type:e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 161:var o=t;if(e.isIdentifier(o.name)&&(e.isCallSignatureDeclaration(o.parent)||e.isMethodSignature(o.parent)||e.isFunctionTypeNode(o.parent))&&o.parent.parameters.indexOf(o)>-1&&(Fn(o,o.name.escapedText,788968,void 0,o.name.escapedText,!0)||o.name.originalKeywordKind&&e.isTypeNodeKind(o.name.originalKeywordKind))){var s="arg"+o.parent.parameters.indexOf(o);return void mn(X,t,e.Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,s,e.declarationNameToString(o.name))}a=t.dotDotDotToken?X?e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type:e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:X?e.Diagnostics.Parameter_0_implicitly_has_an_1_type:e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 199:if(a=e.Diagnostics.Binding_element_0_implicitly_has_an_1_type,!X)return;break;case 311:return void pn(t,e.Diagnostics.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,i);case 253:case 166:case 165:case 168:case 169:case 209:case 210:if(X&&!t.name)return void pn(t,3===n?e.Diagnostics.Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:e.Diagnostics.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,i);a=X?3===n?e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 191:return void(X&&pn(t,e.Diagnostics.Mapped_object_type_implicitly_has_an_any_template_type));default:a=X?e.Diagnostics.Variable_0_implicitly_has_an_1_type:e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}mn(X,t,a,e.declarationNameToString(e.getNameOfDeclaration(t)),i)}}function $f(t,n,i){!(r&&X&&524288&e.getObjectFlags(n))||i&&C_(t)||Wf(n)||Gf(t,n,i)}function Yf(e,t,r){var n=ov(e),i=ov(t),a=lv(e),o=lv(t),s=o?i-1:i,c=a?s:Math.min(n,s),l=Lc(e);if(l){var u=Lc(t);u&&r(l,u)}for(var d=0;d<c;d++)r(nv(e,d),nv(t,d));o&&r(av(e,c),o)}function Xf(e,t,r){var n=jc(e),i=jc(t);n&&i&&su(n,i)&&n.type&&i.type?r(n.type,i.type):r(Bc(e),Bc(t))}function Qf(e,t,r,n){return Zf(e.map(rm),t,r,n||ap)}function Zf(e,t,r,n){var i={inferences:e,signature:t,flags:r,compareTypes:n,mapper:Nd((function(e){return em(i,e,!0)})),nonFixingMapper:Nd((function(e){return em(i,e,!1)}))};return i}function em(e,t,r){for(var n=e.inferences,i=0;i<n.length;i++){var a=n[i];if(t===a.typeParameter)return r&&!a.isFixed&&(tm(n),a.isFixed=!0),Dm(e,i)}return t}function tm(e){for(var t=0,r=e;t<r.length;t++){var n=r[t];n.isFixed||(n.inferredType=void 0)}}function rm(e){return{typeParameter:e,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function nm(e){return{typeParameter:e.typeParameter,candidates:e.candidates&&e.candidates.slice(),contraCandidates:e.contraCandidates&&e.contraCandidates.slice(),inferredType:e.inferredType,priority:e.priority,topLevel:e.topLevel,isFixed:e.isFixed,impliedArity:e.impliedArity}}function im(e){return e&&e.mapper}function am(t){var r=e.getObjectFlags(t);if(67108864&r)return!!(134217728&r);var n=!!(465829888&t.flags||524288&t.flags&&!om(t)&&(4&r&&(t.node||e.forEach(ll(t),am))||16&r&&t.symbol&&14384&t.symbol.flags&&t.symbol.declarations||131104&r)||3145728&t.flags&&!(1024&t.flags)&&!om(t)&&e.some(t.types,am));return 3899393&t.flags&&(t.objectFlags|=67108864|(n?134217728:0)),n}function om(t){if(t.aliasSymbol&&!t.aliasTypeArguments){var r=e.getDeclarationOfKind(t.aliasSymbol,257);return!(!r||!e.findAncestor(r.parent,(function(e){return 300===e.kind||259!==e.kind&&"quit"})))}return!1}function sm(t,r){return!!(t===r||3145728&t.flags&&e.some(t.types,(function(e){return sm(e,r)}))||16777216&t.flags&&(Xu(t)===r||Qu(t)===r))}function cm(t,r,n){if(!xr){var i=t.id+","+r.id+","+n.id;if(kr.has(i))return kr.get(i);xr=!0;var a=function(t,r,n){if(!(bc(t,0)||0!==Hs(t).length&&lm(t)))return;if(rf(t))return jl(um(ll(t)[0],r,n),nf(t));if(vf(t)){return Hl(e.map(ll(t),(function(e){return um(e,r,n)})),4&Ls(r)?e.sameMap(t.target.elementFlags,(function(e){return 2&e?1:e})):t.target.elementFlags,t.target.readonly,t.target.labeledElementDeclarations)}var i=qi(2064,void 0);return i.source=t,i.mappedType=r,i.constraintType=n,i}(t,r,n);return xr=!1,kr.set(i,a),a}}function lm(t){return!(2097152&e.getObjectFlags(t))||km(t)&&e.some(Hs(t),(function(e){return lm(_o(e))}))||vf(t)&&e.some(ll(t),lm)}function um(e,t,r){var n=qu(r.type,Ns(t)),i=Fs(t),a=rm(n);return ym([a],e,i),fm(a)||Ae}function dm(t,r,n,i){var a,o,c,l,u,d,p;return s(this,(function(s){switch(s.label){case 0:a=Hs(r),o=0,c=a,s.label=1;case 1:return o<c.length?Xo(l=c[o])||!n&&(16777216&l.flags||48&e.getCheckFlags(l))?[3,5]:(u=gc(t,l.escapedName))?[3,3]:[4,l]:[3,6];case 2:return s.sent(),[3,5];case 3:return i&&109440&(d=_o(l)).flags?1&(p=_o(u)).flags||gd(p)===gd(d)?[3,5]:[4,l]:[3,5];case 4:s.sent(),s.label=5;case 5:return o++,[3,1];case 6:return[2]}}))}function pm(e,t,r,n){var i=dm(e,t,r,n).next();if(!i.done)return i.value}function fm(e){return e.candidates?ou(e.candidates,2):e.contraCandidates?fu(e.contraCandidates):void 0}function mm(e){return!!Cn(e).skipDirectInference}function gm(t){return!(!t.symbol||!e.some(t.symbol.declarations,mm))}function _m(t,r){if(1048576&r.flags)return!!cg(r,(function(e){return _m(t,e)}));switch(r){case Re:return!0;case Me:return""!==t.value&&isFinite(+t.value);case Le:return""!==t.value&&function(t){var r=e.createScanner(99,!1),n=!0;r.setOnError((function(){return n=!1})),r.setText(t+"n");var i=r.scan();40===i&&(i=r.scan());var a=r.getTokenFlags();return n&&9===i&&r.getTextPos()===t.length+1&&!(512&a)}(t.value);case ze:return"true"===t.value;case je:return"false"===t.value;case Ne:return"undefined"===t.value;case Fe:return"null"===t.value;default:return!!(1&r.flags)}}function hm(e,t){var r=e.value,n=t.texts,i=n.length-1,a=n[0],o=n[i];if(r.startsWith(a)&&r.slice(a.length).endsWith(o)){for(var s=[],c=r.slice(a.length,r.length-o.length),l=0,u=1;u<i;u++){var d=n[u],p=d.length>0?c.indexOf(d,l):l<c.length?l+1:-1;if(p<0)return;s.push(hd(c.slice(l,p))),l=p+d.length}return s.push(hd(c.slice(l))),s}}function ym(t,r,n,i,a){void 0===i&&(i=0),void 0===a&&(a=!1);var o,s,c,l,u=!1,d=1024,p=!0,f=0;function m(r,s){if(am(s)){if(r===De){var c=o;return o=r,m(s,s),void(o=c)}if(r.aliasSymbol&&r.aliasTypeArguments&&r.aliasSymbol===s.aliasSymbol)y(r.aliasTypeArguments,s.aliasTypeArguments,zp(r.aliasSymbol));else if(r===s&&3145728&r.flags)for(var l=0,f=r.types;l<f.length;l++){var v=f[l];m(v,v)}else{if(1048576&s.flags){var x=h(1048576&r.flags?r.types:[r],s.types,vm),D=h(x[0],x[1],bm),w=D[0];if(0===(C=D[1]).length)return;if(s=ou(C),0===w.length)return void g(r,s,1);r=ou(w)}else if(2097152&s.flags&&e.some(s.types,(function(e){return!!b(e)||zs(e)&&!!b(Ud(e)||He)}))){if(!(1048576&r.flags)){var T=h(2097152&r.flags?r.types:[r],s.types,np),C=(w=T[0],T[1]);if(0===w.length||0===C.length)return;r=fu(w),s=fu(C)}}else 41943040&s.flags&&(s=Wu(s));if(8650752&s.flags){if(2097152&e.getObjectFlags(r)||r===Te||r===Ke||64&i&&(r===Se||r===Nt)||gm(r))return;var A=b(s);if(A){if(!A.isFixed){if((void 0===A.priority||i<A.priority)&&(A.candidates=void 0,A.contraCandidates=void 0,A.topLevel=!0,A.priority=i),i===A.priority){var N=o||r;a&&!u?e.contains(A.contraCandidates,N)||(A.contraCandidates=e.append(A.contraCandidates,N),tm(t)):e.contains(A.candidates,N)||(A.candidates=e.append(A.candidates,N),tm(t))}!(64&i)&&262144&s.flags&&A.topLevel&&!sm(n,s)&&(A.topLevel=!1,tm(t))}return void(d=Math.min(d,i))}var P=ju(s,!1);if(P!==s)_(r,P,m);else if(8388608&s.flags){var I=ju(s.indexType,!1);if(465829888&I.flags){var F=Bu(ju(s.objectType,!1),I,!1);F&&F!==s&&_(r,F,m)}}}if(!(4&e.getObjectFlags(r)&&4&e.getObjectFlags(s)&&(r.target===s.target||rf(r)&&rf(s)))||r.node&&s.node)if(4194304&r.flags&&4194304&s.flags)a=!a,m(r.type,s.type),a=!a;else if((ff(r)||4&r.flags)&&4194304&s.flags){var O=function(t){var r=e.createSymbolTable();cg(t,(function(t){if(128&t.flags){var n=e.escapeLeadingUnderscores(t.value),i=yn(4,n);i.type=Ee,t.symbol&&(i.declarations=t.symbol.declarations,i.valueDeclaration=t.symbol.valueDeclaration),r.set(n,i)}}));var n=4&t.flags?Qc(nt,!1):void 0;return Wi(void 0,r,e.emptyArray,e.emptyArray,n,void 0)}(r);a=!a,g(O,s.type,128),a=!a}else if(8388608&r.flags&&8388608&s.flags)m(r.objectType,s.objectType),m(r.indexType,s.indexType);else if(268435456&r.flags&&268435456&s.flags)r.symbol===s.symbol&&m(r.type,s.type);else if(16777216&s.flags)_(r,s,E);else if(3145728&s.flags)k(r,s.types,s.flags);else if(1048576&r.flags)for(var R=0,M=r.types;R<M.length;R++){m(M[R],s)}else if(134217728&s.flags)!function(t,r){for(var n=128&t.flags?hm(t,r):134217728&t.flags&&e.arraysEqual(t.texts,r.texts)?t.types:void 0,i=r.types,a=0;a<i.length;a++)m(n?n[a]:He,i[a])}(r,s);else{if(r=uc(r),!(256&i&&467927040&r.flags)){var L=ac(r);if(L!==r&&p&&!(2621440&L.flags))return p=!1,m(L,s);r=L}2621440&r.flags&&_(r,s,S)}else y(ll(r),ll(s),qp(r.target))}}}function g(e,t,r){var n=i;i|=r,m(e,t),i=n}function _(t,r,n){var i=t.id+","+r.id,a=s&&s.get(i);if(void 0===a){(s||(s=new e.Map)).set(i,-1);var o=d;d=1024;var u=f,p=Xp(t)||t,m=Xp(r)||r;p&&e.contains(c,p)&&(f|=1),m&&e.contains(l,m)&&(f|=2),3!==f?(p&&(c||(c=[])).push(p),m&&(l||(l=[])).push(m),n(t,r),m&&l.pop(),p&&c.pop()):d=-1,f=u,s.set(i,d),d=Math.min(d,o)}else d=Math.min(d,a)}function h(t,r,n){for(var i,a,o=0,s=r;o<s.length;o++)for(var c=s[o],l=0,u=t;l<u.length;l++){var d=u[l];n(d,c)&&(m(d,c),i=e.appendIfUnique(i,d),a=e.appendIfUnique(a,c))}return[i?e.filter(t,(function(t){return!e.contains(i,t)})):t,a?e.filter(r,(function(t){return!e.contains(a,t)})):r]}function y(e,t,r){for(var n=e.length<t.length?e.length:t.length,i=0;i<n;i++)i<r.length&&2==(7&r[i])?v(e[i],t[i]):m(e[i],t[i])}function v(e,t){G||512&i?(a=!a,m(e,t),a=!a):m(e,t)}function b(e){if(8650752&e.flags)for(var r=0,n=t;r<n.length;r++){var i=n[r];if(e===i.typeParameter)return i}}function k(t,r,n){var a=0;if(1048576&n){for(var o=void 0,s=1048576&t.flags?t.types:[t],c=new Array(s.length),l=!1,u=0,p=r;u<p.length;u++){if(b(S=p[u]))o=S,a++;else for(var f=0;f<s.length;f++){var _=d;d=1024,m(s[f],S),d===i&&(c[f]=!0),l=l||-1===d,d=Math.min(d,_)}}if(0===a){var h=function(t){for(var r,n=0,i=t;n<i.length;n++){var a=i[n],o=2097152&a.flags&&e.find(a.types,(function(e){return!!b(e)}));if(!o||r&&o!==r)return;r=o}return r}(r);return void(h&&g(t,h,1))}if(1===a&&!l){var y=e.flatMap(s,(function(e,t){return c[t]?void 0:e}));if(y.length)return void m(ou(y),o)}}else for(var v=0,k=r;v<k.length;v++){b(S=k[v])?a++:m(t,S)}if(2097152&n?1===a:a>0)for(var x=0,E=r;x<E.length;x++){var S;b(S=E[x])&&g(t,S,1)}}function x(t,r,n){if(1048576&n.flags){for(var i=!1,a=0,o=n.types;a<o.length;a++){i=x(t,r,o[a])||i}return i}if(4194304&n.flags){var s=b(n.type);if(s&&!s.isFixed&&!gm(t)){var c=cm(t,r,n);c&&g(c,s.typeParameter,2097152&e.getObjectFlags(t)?8:4)}return!0}if(262144&n.flags){g(Eu(t),n,16);var l=Ks(n);if(l&&x(t,r,l))return!0;var u=e.map(Hs(t),_o),d=kc(t,0),p=xu(t),f=p&&p.type;return m(ou(e.append(e.append(u,d),f)),Fs(r)),!0}return!1}function E(e,t){if(16777216&e.flags)m(e.checkType,t.checkType),m(e.extendsType,t.extendsType),m(Xu(e),Xu(t)),m(Qu(e),Qu(t));else{var r=i;i|=a?32:0,k(e,[Xu(t),Qu(t)],t.flags),i=r}}function S(t,r){if(4&e.getObjectFlags(t)&&4&e.getObjectFlags(r)&&(t.target===r.target||rf(t)&&rf(r)))y(ll(t),ll(r),qp(t.target));else{if(zs(t)&&zs(r)){m(Ps(t),Ps(r)),m(Fs(t),Fs(r));var n=Is(t),i=Is(r);n&&i&&m(n,i)}var a,o;if(32&e.getObjectFlags(r)&&!r.declaration.nameType)if(x(t,r,Ps(r)))return;if(!function(e,t){return vf(e)&&vf(t)?function(e,t){return!(8&t.target.combinedFlags)&&t.target.minLength>e.target.minLength||!t.target.hasRestElement&&(e.target.hasRestElement||t.target.fixedLength<e.target.fixedLength)}(e,t):!!pm(e,t,!1,!0)&&!!pm(t,e,!1,!1)}(t,r)){if(rf(t)||vf(t)){if(vf(r)){var s=ul(t),c=ul(r),l=ll(r),u=r.target.elementFlags;if(vf(t)&&(o=r,ul(a=t)===ul(o)&&e.every(a.target.elementFlags,(function(e,t){return(12&e)==(12&o.target.elementFlags[t])})))){for(var d=0;d<c;d++)m(ll(t)[d],l[d]);return}var p=vf(t)?Math.min(t.target.fixedLength,r.target.fixedLength):0,f=Math.min(vf(t)?Ql(t.target,3):0,r.target.hasRestElement?Ql(r.target,3):0);for(d=0;d<p;d++)m(ll(t)[d],l[d]);if(!vf(t)||s-p-f==1&&4&t.target.elementFlags[p]){var _=ll(t)[p];for(d=p;d<c-f;d++)m(8&u[d]?jl(_):_,l[d])}else{var h=c-p-f;if(2===h&&u[p]&u[p+1]&8&&vf(t)){var v=b(l[p]);v&&void 0!==v.impliedArity&&(m($l(t,p,f+s-v.impliedArity),l[p]),m($l(t,p+v.impliedArity,f),l[p+1]))}else if(1===h&&8&u[p]){var k=2&r.target.elementFlags[c-1];g(vf(t)?$l(t,p,f):jl(ll(t)[0]),l[p],k?2:0)}else if(1===h&&4&u[p]){(_=vf(t)?Ef(t,p,f):ll(t)[0])&&m(_,l[p])}}for(d=0;d<f;d++)m(ll(t)[s-d-1],l[c-d-1]);return}if(rf(r))return void T(t,r)}!function(e,t){for(var r=qs(t),n=0,i=r;n<i.length;n++){var a=i[n],o=gc(e,a.escapedName);o&&m(_o(o),_o(a))}}(t,r),D(t,r,0),D(t,r,1),T(t,r)}}}function D(t,r,n){for(var i=hc(t,n),a=hc(r,n),o=i.length,s=a.length,c=o<s?o:s,l=!!(2097152&e.getObjectFlags(t)),u=0;u<c;u++)w(Gc(i[o-c+u]),Kc(a[s-c+u]),l)}function w(e,t,r){if(!r){var n=u,i=t.declaration?t.declaration.kind:0;u=u||166===i||165===i||167===i,Yf(e,t,v),u=n}Xf(e,t,m)}function T(e,t){var r=kc(t,0);r&&((n=kc(e,0)||xc(e,0))&&m(n,r));var n,i=kc(t,1);i&&((n=kc(e,1)||kc(e,0)||xc(e,1))&&m(n,i))}m(r,n)}function vm(e,t){return np(e,t)||!!(4&t.flags&&128&e.flags||8&t.flags&&256&e.flags)}function bm(e,t){return!!(524288&e.flags&&524288&t.flags&&e.symbol&&e.symbol===t.symbol||e.aliasSymbol&&e.aliasTypeArguments&&e.aliasSymbol===t.aliasSymbol)}function km(t){return!!(128&e.getObjectFlags(t))}function xm(t){return!!(65664&e.getObjectFlags(t))}function Em(t){return 208&t.priority?fu(t.contraCandidates):(r=t.contraCandidates,e.reduceLeft(r,(function(e,t){return sp(t,e)?t:e})));var r}function Sm(t,r){var n,i,a=function(t){if(t.length>1){var r=e.filter(t,xm);if(r.length){var n=ou(r,2);return e.concatenate(e.filter(t,(function(e){return!xm(e)})),[n])}}return t}(t.candidates),o=(n=t.typeParameter,!!(i=Ws(n))&&Rv(16777216&i.flags?$s(i):i,406978556)),s=!o&&t.topLevel&&(t.isFixed||!sm(Bc(r),t.typeParameter)),c=o?e.sameMap(a,gd):s?e.sameMap(a,gf):a;return Hf(208&t.priority?ou(c,2):function(t){if(!W)return tf(t);var r=e.filter(t,(function(e){return!(98304&e.flags)}));return r.length?Af(tf(r),98304&Df(t)):ou(t,2)}(c))}function Dm(t,r){var n=t.inferences[r];if(!n.inferredType){var i=void 0,a=t.signature;if(a){var o=n.candidates?Sm(n,a):void 0;if(n.contraCandidates){var s=Em(n);i=!o||131072&o.flags||!sp(o,s)?s:o}else if(o)i=o;else if(1&t.flags)i=Ke;else{var c=nc(n.typeParameter);c&&(i=Wd(c,Od(function(t,r){return Nd((function(n){return e.findIndex(t.inferences,(function(e){return e.typeParameter===n}))>=r?Ae:n}))}(t,r),t.nonFixingMapper)))}}else i=fm(n);n.inferredType=i||wm(!!(2&t.flags));var l=Ws(n.typeParameter);if(l){var u=Wd(l,t.nonFixingMapper);i&&t.compareTypes(i,ls(u,i))||(n.inferredType=i=u)}}return n.inferredType}function wm(e){return e?Ee:Ae}function Tm(e){for(var t=[],r=0;r<e.inferences.length;r++)t.push(Dm(e,r));return t}function Cm(t){switch(t.escapedText){case"document":case"console":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom;case"$":return J.types?e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery;case"describe":case"suite":case"it":case"test":return J.types?e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha;case"process":case"require":case"Buffer":case"module":return J.types?e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode;case"Map":case"Set":case"Promise":case"Symbol":case"WeakMap":case"WeakSet":case"Iterator":case"AsyncIterator":case"SharedArrayBuffer":case"Atomics":case"AsyncIterable":case"AsyncIterableIterator":case"AsyncGenerator":case"AsyncGeneratorFunction":case"BigInt":case"Reflect":case"BigInt64Array":case"BigUint64Array":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later;default:return 292===t.parent.kind?e.Diagnostics.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:e.Diagnostics.Cannot_find_name_0}}function Am(t){var r=Cn(t);return r.resolvedSymbol||(r.resolvedSymbol=!e.nodeIsMissing(t)&&Fn(t,t.escapedText,1160127,Cm(t),t,!e.isWriteOnlyAccess(t),!1,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1)||ke),r.resolvedSymbol}function Nm(t){return!!e.findAncestor(t,(function(e){return 177===e.kind||78!==e.kind&&158!==e.kind&&"quit"}))}function Pm(e,t,r,n){switch(e.kind){case 78:var i=Am(e);return i!==ke?(n?O(n):"-1")+"|"+Zl(t)+"|"+Zl(r)+"|"+(Bg(e)?"@":"")+R(i):void 0;case 108:return"0|"+(n?O(n):"-1")+"|"+Zl(t)+"|"+Zl(r);case 227:case 208:return Pm(e.expression,t,r,n);case 202:case 203:var a=Om(e);if(void 0!==a){var o=Pm(e.expression,t,r,n);return o&&o+"."+a}}}function Im(t,r){switch(r.kind){case 208:case 227:return Im(t,r.expression);case 218:return e.isAssignmentExpression(r)&&Im(t,r.left)||e.isBinaryExpression(r)&&27===r.operatorToken.kind&&Im(t,r.right)}switch(t.kind){case 78:case 79:return 78===r.kind&&Am(t)===Am(r)||(251===r.kind||199===r.kind)&&Ri(Am(t))===Ai(r);case 108:return 108===r.kind;case 106:return 106===r.kind;case 227:case 208:return Im(t.expression,r);case 202:case 203:return e.isAccessExpression(r)&&Om(t)===Om(r)&&Im(t.expression,r.expression);case 158:return e.isAccessExpression(r)&&t.right.escapedText===Om(r)&&Im(t.left,r.expression);case 218:return e.isBinaryExpression(t)&&27===t.operatorToken.kind&&Im(t.right,r)}return!1}function Fm(e,t){return Im(e,t)||218===t.kind&&55===t.operatorToken.kind&&(Fm(e,t.left)||Fm(e,t.right))}function Om(t){return 202===t.kind?t.name.escapedText:e.isStringOrNumericLiteralLike(t.argumentExpression)?e.escapeLeadingUnderscores(t.argumentExpression.text):void 0}function Rm(t,r){for(;e.isAccessExpression(t);)if(Im(t=t.expression,r))return!0;return!1}function Mm(t,r){for(;e.isOptionalChain(t);)if(Im(t=t.expression,r))return!0;return!1}function Lm(t,r){if(t&&1048576&t.flags){var n=cc(t,r);if(n&&2&e.getCheckFlags(n))return void 0===n.isDiscriminantProperty&&(n.isDiscriminantProperty=192==(192&n.checkFlags)&&!Rv(_o(n),465829888)),!!n.isDiscriminantProperty}return!1}function jm(e,t){for(var r,n=0,i=e;n<i.length;n++){var a=i[n];if(Lm(t,a.escapedName)){if(r){r.push(a);continue}r=[a]}}return r}function Bm(e,t){return Im(e,t)||Rm(e,t)}function zm(e,t){if(e.arguments)for(var r=0,n=e.arguments;r<n.length;r++){if(Bm(t,n[r]))return!0}return!(202!==e.expression.kind||!Bm(t,e.expression.expression))}function Um(e){return(!e.id||e.id<0)&&(e.id=f,f++),e.id}function qm(e,t){if(e!==t){if(131072&t.flags)return t;var r=ug(e,(function(e){return function(e,t){if(!(1048576&e.flags))return cp(e,t);for(var r=0,n=e.types;r<n.length;r++)if(cp(n[r],t))return!0;return!1}(t,e)}));if(512&t.flags&&_d(t)&&(r=pg(r,md)),cp(t,r))return r}return e}function Jm(e){var t=Us(e);return!!(t.callSignatures.length||t.constructSignatures.length||t.members.get("bind")&&sp(e,vt))}function Vm(t){var r=t.flags;if(4&r)return W?16317953:16776705;if(128&r){var n=""===t.value;return W?n?12123649:7929345:n?12582401:16776705}if(40&r)return W?16317698:16776450;if(256&r){var i=0===t.value;return W?i?12123394:7929090:i?12582146:16776450}if(64&r)return W?16317188:16775940;if(2048&r){i=Sf(t);return W?i?12122884:7928580:i?12581636:16775940}return 16&r?W?16316168:16774920:528&r?W?t===je||t===Be?12121864:7927560:t===je||t===Be?12580616:16774920:524288&r?16&e.getObjectFlags(t)&&wp(t)?W?16318463:16777215:Jm(t)?W?7880640:16728e3:W?7888800:16736160:49152&r?9830144:65536&r?9363232:12288&r?W?7925520:16772880:67108864&r?W?7888800:16736160:131072&r?0:465829888&r?Ou(t)?W?7929345:16776705:Vm(Qs(t)||Ae):3145728&r?function(e){for(var t=0,r=0,n=e;r<n.length;r++)t|=Vm(n[r]);return t}(t.types):16777215}function Hm(e,t){return ug(e,(function(e){return 0!=(Vm(e)&t)}))}function Km(e,t){if(t){var r=ub(t);return ou([Hm(e,524288),r])}return e}function Wm(e,t){var r=vu(t);if(!Zo(r))return we;var n=is(r);return Ug(Na(e,n),t)||R_(n)&&$m(kc(e,1))||$m(kc(e,0))||we}function Gm(e,t){return lg(e,lf)&&function(e,t){var r=Na(e,""+t);return r||(lg(e,vf)?pg(e,(function(e){return xf(e)||Ne})):void 0)}(e,t)||$m(Fk(65,e,Ne,void 0))||we}function $m(e){return e&&J.noUncheckedIndexedAccess?ou([e,Ne]):e}function Ym(e){return jl(Fk(65,e,Ne,void 0)||we)}function Xm(e){return 218===e.parent.kind&&e.parent.left===e||241===e.parent.kind&&e.parent.initializer===e}function Qm(e){return Wm(Zm(e.parent),e.name)}function Zm(e){var t=e.parent;switch(t.kind){case 240:return Re;case 241:return Ik(t)||we;case 218:return function(e){return 200===e.parent.kind&&Xm(e.parent)||291===e.parent.kind&&Xm(e.parent.parent)?Km(Zm(e),e.right):ub(e.right)}(t);case 212:return Ne;case 200:return function(e,t){return Gm(Zm(e),e.elements.indexOf(t))}(t,e);case 222:return function(e){return Ym(Zm(e.parent))}(t);case 291:return Qm(t);case 292:return function(e){return Km(Qm(e),e.objectAssignmentInitializer)}(t)}return we}function eg(e){return Cn(e).resolvedType||ub(e)}function tg(e){return 251===e.kind?function(e){return e.initializer?eg(e.initializer):240===e.parent.parent.kind?Re:241===e.parent.parent.kind&&Ik(e.parent.parent)||we}(e):function(e){var t=e.parent,r=tg(t.parent);return Km(197===t.kind?Wm(r,e.propertyName||e.name):e.dotDotDotToken?Ym(r):Gm(r,t.elements.indexOf(e)),e.initializer)}(e)}function rg(e){switch(e.kind){case 208:return rg(e.expression);case 218:switch(e.operatorToken.kind){case 62:case 74:case 75:case 76:return rg(e.left);case 27:return rg(e.right)}}return e}function ng(e){var t=e.parent;return 208===t.kind||218===t.kind&&62===t.operatorToken.kind&&t.left===e||218===t.kind&&27===t.operatorToken.kind&&t.right===e?ng(t):e}function ig(e){return 287===e.kind?gd(ub(e.expression)):He}function ag(e){var t=Cn(e);if(!t.switchTypes){t.switchTypes=[];for(var r=0,n=e.caseBlock.clauses;r<n.length;r++){var i=n[r];t.switchTypes.push(ig(i))}}return t.switchTypes}function og(t,r){for(var n=[],i=0,a=t.caseBlock.clauses;i<a.length;i++){var o=a[i];if(287===o.kind){if(e.isStringLiteralLike(o.expression)){n.push(o.expression.text);continue}return e.emptyArray}r&&n.push(void 0)}return n}function sg(e,t){return e===t||1048576&t.flags&&function(e,t){if(1048576&e.flags){for(var r=0,n=e.types;r<n.length;r++){var i=n[r];if(!eu(t.types,i))return!1}return!0}if(1024&e.flags&&Bo(e)===t)return!0;return eu(t.types,e)}(e,t)}function cg(t,r){return 1048576&t.flags?e.forEach(t.types,r):r(t)}function lg(t,r){return 1048576&t.flags?e.every(t.types,r):r(t)}function ug(t,r){if(1048576&t.flags){var n=t.types,i=e.filter(n,r);if(i===n)return t;var a=t.origin,o=void 0;if(a&&1048576&a.flags){var s=a.types,c=e.filter(s,(function(e){return!!(1048576&e.flags)||r(e)}));if(s.length-c.length==n.length-i.length){if(1===c.length)return c[0];o=au(1048576,c)}}return cu(i,t.objectFlags,void 0,void 0,o)}return 131072&t.flags||r(t)?t:He}function dg(e){return 1048576&e.flags?e.types.length:1}function pg(e,t,r){if(131072&e.flags)return e;if(!(1048576&e.flags))return t(e);for(var n,i=e.origin,a=!1,o=0,s=i&&1048576&i.flags?i.types:e.types;o<s.length;o++){var c=s[o],l=1048576&c.flags?pg(c,t,r):t(c);a||(a=c!==l),l&&(n?n.push(l):n=[l])}return a?n&&ou(n,r?0:1):e}function fg(t,r,n,i){return 1048576&t.flags&&n?ou(e.map(t.types,r),1,n,i):pg(t,r)}function mg(e){return 3145728&e.flags?e.types.length:1}function gg(e,t){return ug(e,(function(e){return 0!=(e.flags&t)}))}function _g(e,t){return sg(Re,e)&&Rv(t,128)||sg(Me,e)&&Rv(t,256)||sg(Le,e)&&Rv(t,2048)?pg(e,(function(e){return 4&e.flags?gg(t,132):8&e.flags?gg(t,264):64&e.flags?gg(t,2112):e})):e}function hg(e){return 0===e.flags}function yg(e){return 0===e.flags?e.type:e}function vg(e,t){return t?{flags:0,type:131072&e.flags?Ke:e}:e}function bg(e){return ve[e.id]||(ve[e.id]=function(e){var t=qi(256);return t.elementType=e,t}(e))}function kg(e,t){var r=Bf(mf(pb(t)));return sg(r,e.elementType)?e:bg(ou([e.elementType,r]))}function xg(e){return e.finalArrayType||(e.finalArrayType=131072&(t=e.elementType).flags?Nt:jl(1048576&t.flags?ou(t.types,2):t));var t}function Eg(t){return 256&e.getObjectFlags(t)?xg(t):t}function Sg(t){return 256&e.getObjectFlags(t)?t.elementType:He}function Dg(t){var r=ng(t),n=r.parent,i=e.isPropertyAccessExpression(n)&&("length"===n.name.escapedText||204===n.parent.kind&&e.isIdentifier(n.name)&&e.isPushOrUnshiftIdentifier(n.name)),a=203===n.kind&&n.expression===r&&218===n.parent.kind&&62===n.parent.operatorToken.kind&&n.parent.left===n&&!e.isAssignmentTarget(n.parent)&&Mv(ub(n.argumentExpression),296);return i||a}function wg(t,r){if(8752&t.flags)return _o(t);if(7&t.flags){if(262144&e.getCheckFlags(t)){var n=t.syntheticOrigin;if(n&&wg(n))return _o(t)}var i=t.valueDeclaration;if(i){if(function(t){return(251===t.kind||161===t.kind||164===t.kind||163===t.kind)&&!!e.getEffectiveTypeAnnotationNode(t)}(i))return _o(t);if(e.isVariableDeclaration(i)&&241===i.parent.parent.kind){var a=i.parent.parent,o=Tg(a.expression,void 0);if(o)return Fk(a.awaitModifier?15:13,o,Ne,void 0)}r&&e.addRelatedInfo(r,e.createDiagnosticForNode(i,e.Diagnostics._0_needs_an_explicit_type_annotation,la(t)))}}}function Tg(t,r){if(!(16777216&t.flags))switch(t.kind){case 78:var n=Ri(Am(t));return wg(2097152&n.flags?ai(n):n,r);case 108:return function(t){var r=e.getThisContainer(t,!1);if(e.isFunctionLike(r)){var n=Ic(r);if(n.thisParameter)return wg(n.thisParameter)}if(e.isClassLike(r.parent)){var i=Ai(r.parent);return e.hasSyntacticModifier(r,32)?_o(i):Jo(i).thisType}}(t);case 106:return Qg(t);case 202:var i=Tg(t.expression,r);if(i){var a=t.name,o=void 0;if(e.isPrivateIdentifier(a)){if(!i.symbol)return;o=gc(i,e.getSymbolNameForPrivateIdentifier(i.symbol,a.escapedText))}else o=gc(i,a.escapedText);return o&&wg(o,r)}return;case 208:return Tg(t.expression,r)}}function Cg(t){var r=Cn(t),n=r.effectsSignature;if(void 0===n){var i=void 0;235===t.parent.kind?i=Tg(t.expression,void 0):106!==t.expression.kind&&(i=e.isOptionalChain(t)?vh(Mf(fb(t.expression),t.expression),t.expression):fh(t.expression));var a=hc(i&&ac(i)||Ae,0),o=1!==a.length||a[0].typeParameters?e.some(a,Ag)?Iy(t):void 0:a[0];n=r.effectsSignature=o&&Ag(o)?o:ur}return n===ur?void 0:n}function Ag(e){return!!(jc(e)||e.declaration&&131072&(zc(e.declaration)||Ae).flags)}function Ng(e){var t=Ig(e,!1);return tr=e,rr=t,t}function Pg(t){var r=e.skipParentheses(t);return 95===r.kind||218===r.kind&&(55===r.operatorToken.kind&&(Pg(r.left)||Pg(r.right))||56===r.operatorToken.kind&&Pg(r.left)&&Pg(r.right))}function Ig(t,r){for(;;){if(t===tr)return rr;var n=t.flags;if(4096&n){if(!r){var i=Um(t),a=Kr[i];return void 0!==a?a:Kr[i]=Ig(t,!0)}r=!1}if(368&n)t=t.antecedent;else if(512&n){var o=Cg(t.node);if(o){var s=jc(o);if(s&&3===s.kind&&!s.type){var c=t.node.arguments[s.parameterIndex];if(c&&Pg(c))return!1}if(131072&Bc(o).flags)return!1}t=t.antecedent}else{if(4&n)return e.some(t.antecedents,(function(e){return Ig(e,!1)}));if(8&n){var l=t.antecedents;if(void 0===l||0===l.length)return!1;t=l[0]}else{if(!(128&n)){if(1024&n){tr=void 0;var u=t.target,d=u.antecedents;u.antecedents=t.antecedents;var p=Ig(t.antecedent,!1);return u.antecedents=d,p}return!(1&n)}if(t.clauseStart===t.clauseEnd&&Ev(t.switchStatement))return!1;t=t.antecedent}}}}function Fg(t,r){for(;;){var n=t.flags;if(4096&n){if(!r){var i=Um(t),a=Wr[i];return void 0!==a?a:Wr[i]=Fg(t,!0)}r=!1}if(496&n)t=t.antecedent;else if(512&n){if(106===t.node.expression.kind)return!0;t=t.antecedent}else{if(4&n)return e.every(t.antecedents,(function(e){return Fg(e,!1)}));if(!(8&n)){if(1024&n){var o=t.target,s=o.antecedents;o.antecedents=t.antecedents;var c=Fg(t.antecedent,!1);return o.antecedents=s,c}return!!(1&n)}t=t.antecedents[0]}}}function Og(t,r,n,i,a){var o;void 0===n&&(n=r);var s=!1,c=0;if(Tr)return we;if(!t.flowNode||!a&&!(536624127&r.flags))return r;Cr++;var l=wr,u=yg(f(t.flowNode));wr=l;var d=256&e.getObjectFlags(u)&&Dg(t)?Nt:Eg(u);return d===$e||t.parent&&227===t.parent.kind&&131072&Hm(d,2097152).flags?r:d;function p(){return s?o:(s=!0,o=Pm(t,r,n,i))}function f(a){if(2e3===c)return null===e.tracing||void 0===e.tracing||e.tracing.instant("checkTypes","getTypeAtFlowNode_DepthLimit",{flowId:a.id}),Tr=!0,o=t,s=e.findAncestor(o,e.isFunctionOrModuleBlock),u=e.getSourceFileOfNode(o),d=e.getSpanOfTokenAtPosition(u,s.statements.pos),Qr.add(e.createFileDiagnostic(u,d.start,d.length,e.Diagnostics.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis)),we;var o,s,u,d,p;for(c++;;){var m=a.flags;if(4096&m){for(var _=l;_<wr;_++)if(Vr[_]===a)return c--,Hr[_];p=a}var E=void 0;if(16&m){if(!(E=g(a))){a=a.antecedent;continue}}else if(512&m){if(!(E=h(a))){a=a.antecedent;continue}}else if(96&m)E=v(a);else if(128&m)E=b(a);else if(12&m){if(1===a.antecedents.length){a=a.antecedents[0];continue}E=4&m?k(a):x(a)}else if(256&m){if(!(E=y(a))){a=a.antecedent;continue}}else if(1024&m){var S=a.target,D=S.antecedents;S.antecedents=a.antecedents,E=f(a.antecedent),S.antecedents=D}else if(2&m){var w=a.node;if(w&&w!==i&&202!==t.kind&&203!==t.kind&&108!==t.kind){a=w.flowNode;continue}E=n}else E=bk(r);return p&&(Vr[wr]=p,Hr[wr]=E,wr++),c--,E}}function m(e){var r=e.node;return Ug(251===r.kind||199===r.kind?tg(r):Zm(r),t)}function g(n){var i=n.node;if(Im(t,i)){if(!Ng(n))return $e;if(2===e.getAssignmentTargetKind(i)){var a=f(n.antecedent);return vg(mf(yg(a)),hg(a))}if(r===Se||r===Nt){if(function(e){return 251===e.kind&&e.initializer&&Ba(e.initializer)||199!==e.kind&&218===e.parent.kind&&Ba(e.parent.right)}(i))return bg(He);var o=gf(m(n));return cp(o,r)?o:At}return 1048576&r.flags?qm(r,m(n)):r}if(Rm(t,i)){if(!Ng(n))return $e;if(e.isVariableDeclaration(i)&&(e.isInJSFile(i)||e.isVarConst(i))){var s=e.getDeclaredExpandoInitializer(i);if(s&&(209===s.kind||210===s.kind))return f(n.antecedent)}return r}if(e.isVariableDeclaration(i)&&240===i.parent.parent.kind&&Im(t,i.parent.parent.expression))return gh(yg(f(n.antecedent)))}function _(t,r){var n=e.skipParentheses(r);if(95===n.kind)return $e;if(218===n.kind){if(55===n.operatorToken.kind)return _(_(t,n.left),n.right);if(56===n.operatorToken.kind)return ou([_(t,n.left),_(t,n.right)])}return q(t,n,!0)}function h(e){var t=Cg(e.node);if(t){var r=jc(t);if(r&&(2===r.kind||3===r.kind)){var n=f(e.antecedent),i=Eg(yg(n)),a=r.type?U(i,r,e.node,!0):3===r.kind&&r.parameterIndex>=0&&r.parameterIndex<e.node.arguments.length?_(i,e.node.arguments[r.parameterIndex]):i;return a===i?n:vg(a,hg(n))}if(131072&Bc(t).flags)return $e}}function y(n){if(r===Se||r===Nt){var i=n.node,a=204===i.kind?i.expression.expression:i.left.expression;if(Im(t,rg(a))){var o=f(n.antecedent),s=yg(o);if(256&e.getObjectFlags(s)){var c=s;if(204===i.kind)for(var l=0,u=i.arguments;l<u.length;l++){c=kg(c,u[l])}else Mv(pb(i.left.argumentExpression),296)&&(c=kg(c,i.right));return c===s?o:vg(c,hg(o))}return o}}}function v(e){var t=f(e.antecedent),r=yg(t);if(131072&r.flags)return t;var n=0!=(32&e.flags),i=Eg(r),a=q(i,e.node,n);return a===i?t:vg(a,hg(t))}function b(r){var n=r.switchStatement.expression,i=f(r.antecedent),a=yg(i);return Im(t,n)?a=R(a,r.switchStatement,r.clauseStart,r.clauseEnd):213===n.kind&&Im(t,n.expression)?a=function(t,r,n,i){var a=og(r,!0);if(!a.length)return t;var o,s,c=e.findIndex(a,(function(e){return void 0===e})),l=n===i||c>=n&&c<i;if(c>-1){var u=a.filter((function(e){return void 0!==e})),d=c<n?n-1:n,p=c<i?i-1:i;o=u.slice(d,p),s=xv(d,p,u,l)}else o=a.slice(n,i),s=xv(n,i,a,l);if(l)return ug(t,(function(e){return(Vm(e)&s)===s}));var f=Hm(ou(o.map((function(e){return M(t,e)||t}))),s);return Hm(pg(t,L(f)),s)}(a,r.switchStatement,r.clauseStart,r.clauseEnd):(W&&(Mm(n,t)?a=O(a,r.switchStatement,r.clauseStart,r.clauseEnd,(function(e){return!(163840&e.flags)})):213===n.kind&&Mm(n.expression,t)&&(a=O(a,r.switchStatement,r.clauseStart,r.clauseEnd,(function(e){return!(131072&e.flags||128&e.flags&&"undefined"===e.value)})))),w(n,a)&&(a=T(a,n,(function(e){return R(e,r.switchStatement,r.clauseStart,r.clauseEnd)})))),vg(a,hg(i))}function k(t){for(var i,a=[],o=!1,s=!1,c=0,l=t.antecedents;c<l.length;c++){var u=l[c];if(!i&&128&u.flags&&u.clauseStart===u.clauseEnd)i=u;else{if((p=yg(d=f(u)))===r&&r===n)return p;e.pushIfUnique(a,p),sg(p,r)||(o=!0),hg(d)&&(s=!0)}}if(i){var d,p=yg(d=f(i));if(!e.contains(a,p)&&!Ev(i.switchStatement)){if(p===r&&r===n)return p;a.push(p),sg(p,r)||(o=!0),hg(d)&&(s=!0)}}return vg(D(a,o?2:1),s)}function x(t){var n=Um(t),i=zr[n]||(zr[n]=new e.Map),a=p();if(!a)return r;var o=i.get(a);if(o)return o;for(var s=Sr;s<Dr;s++)if(Ur[s]===t&&qr[s]===a&&Jr[s].length)return vg(D(Jr[s],1),!0);for(var c,l=[],u=!1,d=0,m=t.antecedents;d<m.length;d++){var g=m[d],_=void 0;if(c){Ur[Dr]=t,qr[Dr]=a,Jr[Dr]=l,Dr++;var h=nr;nr=void 0,_=f(g),nr=h,Dr--;var y=i.get(a);if(y)return y}else _=c=f(g);var v=yg(_);if(e.pushIfUnique(l,v),sg(v,r)||(u=!0),v===r)break}var b=D(l,u?2:1);return hg(c)?vg(b,!0):(i.set(a,b),b)}function D(t,n){if(function(t){for(var r=!1,n=0,i=t;n<i.length;n++){var a=i[n];if(!(131072&a.flags)){if(!(256&e.getObjectFlags(a)))return!1;r=!0}}return r}(t))return bg(ou(e.map(t,Sg)));var i=ou(e.sameMap(t,Eg),n);return i!==r&&i.flags&r.flags&1048576&&e.arraysEqual(i.types,r.types)?r:i}function w(n,i){var a=1048576&r.flags?r:i;if(!(1048576&a.flags&&e.isAccessExpression(n)))return!1;var o=Om(n);return void 0!==o&&(Im(t,n.expression)&&Lm(a,o))}function T(t,r,n){var i=Om(r);if(void 0===i)return t;var a=W&&Rv(t,98304)&&e.isOptionalChain(r),o=Na(a?Hm(t,2097152):t,i);if(!o)return t;var s=n(o=a?Nf(o):o);return ug(t,(function(e){var t=function(e,t){return Na(e,t)||R_(t)&&kc(e,1)||kc(e,0)||Ae}(e,i);return!(131072&t.flags)&&up(t,s)}))}function C(e,r,n){return Im(t,r)?Hm(e,n?4194304:8388608):(W&&n&&Mm(r,t)&&(e=Hm(e,2097152)),w(r,e)?T(e,r,(function(e){return Hm(e,n?4194304:8388608)})):e)}function A(t,r,n){if(1572864&t.flags||Lu(t)||2097152&t.flags&&e.every(t.types,(function(e){return e.symbol!==ae}))){var i=e.escapeLeadingUnderscores(r.text);return ug(t,(function(e){return function(e,t,r){if(bc(e,0))return!0;var n=gc(e,t);return n?!!(16777216&n.flags)||r:!r}(e,i,n)}))}return t}function N(r,n,i){switch(n.operatorToken.kind){case 62:case 74:case 75:case 76:return C(q(r,n.right,i),n.left,i);case 34:case 35:case 36:case 37:var a=n.operatorToken.kind,o=rg(n.left),s=rg(n.right);if(213===o.kind&&e.isStringLiteralLike(s))return F(r,o,a,s,i);if(213===s.kind&&e.isStringLiteralLike(o))return F(r,s,a,o,i);if(Im(t,o))return I(r,a,s,i);if(Im(t,s))return I(r,a,o,i);if(W&&(Mm(o,t)?r=P(r,a,s,i):Mm(s,t)&&(r=P(r,a,o,i))),w(o,r))return T(r,o,(function(e){return I(e,a,s,i)}));if(w(s,r))return T(r,s,(function(e){return I(e,a,o,i)}));if(j(o))return B(r,a,s,i);if(j(s))return B(r,a,o,i);break;case 102:return function(r,n,i){var a=rg(n.left);if(!Im(t,a))return i&&W&&Mm(a,t)?Hm(r,2097152):r;var o,s=ub(n.right);if(!lp(s,vt))return r;var c=gc(s,"prototype");if(c){var l=_o(c);Pa(l)||(o=l)}if(Pa(r)&&(o===yt||o===vt))return r;if(!o){var u=hc(s,1);o=u.length?ou(e.map(u,(function(e){return Bc(Kc(e))}))):nt}if(!i&&1048576&s.flags){if(!e.find(s.types,(function(e){return!Do(e)})))return r}return z(r,o,i,lp)}(r,n,i);case 101:var c=rg(n.right);if(e.isStringLiteralLike(n.left)&&Im(t,c))return A(r,n.left,i);break;case 27:return q(r,n.right,i)}return r}function P(e,t,r,n){var i=34===t||36===t,a=34===t||35===t?98304:32768,o=ub(r);return i!==n&&lg(o,(function(e){return!!(e.flags&a)}))||i===n&&lg(o,(function(e){return!(e.flags&(3|a))}))?Hm(e,2097152):e}function I(e,t,r,n){if(1&e.flags)return e;35!==t&&37!==t||(n=!n);var i=ub(r);if(2&e.flags&&n&&(36===t||37===t))return 67239932&i.flags?i:524288&i.flags?Ye:e;if(98304&i.flags)return W?Hm(e,34===t||35===t?n?262144:2097152:65536&i.flags?n?131072:1048576:n?65536:524288):e;if(n)return _g(ug(e,34===t?function(e){return dp(e,i)||(t=i,0!=(524&e.flags)&&0!=(28&t.flags));var t}:function(e){return dp(e,i)}),i);if(pf(i)){var a=gd(i);return ug(e,(function(e){return pf(e)?!dp(e,i):gd(e)!==a}))}return e}function F(e,r,n,i,a){35!==n&&37!==n||(a=!a);var o=rg(r.expression);if(!Im(t,o))return W&&Mm(o,t)&&a===("undefined"!==i.text)?Hm(e,2097152):e;if(1&e.flags&&"function"===i.text)return e;if(a&&2&e.flags&&"object"===i.text){if(218===r.parent.parent.kind){var s=r.parent.parent;if(55===s.operatorToken.kind&&s.right===r.parent&&Fm(t,s.left))return Ye}return ou([Ye,Fe])}var c=a?E.get(i.text)||128:S.get(i.text)||32768,l=M(e,i.text);return Hm(a&&l?pg(e,L(l)):e,c)}function O(t,r,n,i,a){return n!==i&&e.every(ag(r).slice(n,i),a)?Hm(t,2097152):t}function R(t,r,n,i){var a=ag(r);if(!a.length)return t;var o=a.slice(n,i),s=n===i||e.contains(o,He);if(2&t.flags&&!s){for(var c=void 0,l=0;l<o.length;l+=1){var u=o[l];if(67239932&u.flags)void 0!==c&&c.push(u);else{if(!(524288&u.flags))return t;void 0===c&&(c=o.slice(0,l)),c.push(Ye)}}return ou(void 0===c?o:c)}var d=ou(o),p=131072&d.flags?He:_g(ug(t,(function(e){return dp(d,e)})),d);if(!s)return p;var f=ug(t,(function(t){return!(pf(t)&&e.contains(a,gd(t)))}));return 131072&p.flags?f:ou([p,f])}function M(e,t){switch(t){case"function":return 1&e.flags?e:vt;case"object":return 2&e.flags?ou([Ye,Fe]):e;default:return en.get(t)}}function L(e){return function(t){if(sp(t,e))return t;if(sp(e,t))return e;if(465829888&t.flags){var r=Qs(t)||Ee;if(sp(e,r))return fu([t,e])}return t}}function j(r){return(e.isPropertyAccessExpression(r)&&"constructor"===e.idText(r.name)||e.isElementAccessExpression(r)&&e.isStringLiteralLike(r.argumentExpression)&&"constructor"===r.argumentExpression.text)&&Im(t,r.expression)}function B(t,r,n,i){if(i?34!==r&&36!==r:35!==r&&37!==r)return t;var a=ub(n);if(!wE(a)&&!Do(a))return t;var o=gc(a,"prototype");if(!o)return t;var s=_o(o),c=Pa(s)?void 0:s;return c&&c!==yt&&c!==vt?Pa(t)?c:ug(t,(function(t){return function(t,r){if(524288&t.flags&&1&e.getObjectFlags(t)||524288&r.flags&&1&e.getObjectFlags(r))return t.symbol===r.symbol;return sp(t,r)}(t,c)})):t}function z(e,t,r,n){if(!r)return ug(e,(function(e){return!n(e,t)}));if(1048576&e.flags){var i=ug(e,(function(e){return n(e,t)}));if(!(131072&i.flags))return i}return sp(t,e)?t:cp(e,t)?e:cp(t,e)?t:fu([e,t])}function U(r,n,i,a){if(n.type&&(!Pa(r)||n.type!==yt&&n.type!==vt)){var o=function(t,r){if(1===t.kind||3===t.kind)return r.arguments[t.parameterIndex];var n=e.skipParentheses(r.expression);return e.isAccessExpression(n)?e.skipParentheses(n.expression):void 0}(n,i);if(o){if(Im(t,o))return z(r,n.type,a,sp);if(W&&a&&Mm(o,t)&&!(65536&Vm(n.type))&&(r=Hm(r,2097152)),w(o,r))return T(r,o,(function(e){return z(e,n.type,a,sp)}))}}return r}function q(r,n,i){if(e.isExpressionOfOptionalChainRoot(n)||e.isBinaryExpression(n.parent)&&60===n.parent.operatorToken.kind&&n.parent.left===n)return function(e,r,n){if(Im(t,r))return Hm(e,n?2097152:262144);if(w(r,e))return T(e,r,(function(e){return Hm(e,n?2097152:262144)}));return e}(r,n,i);switch(n.kind){case 78:case 108:case 106:case 202:case 203:return C(r,n,i);case 204:return function(r,n,i){if(zm(n,t)){var a=i||!e.isCallChain(n)?Cg(n):void 0,o=a&&jc(a);if(o&&(0===o.kind||1===o.kind))return U(r,o,n,i)}return r}(r,n,i);case 208:case 227:return q(r,n.expression,i);case 218:return N(r,n,i);case 216:if(53===n.operator)return q(r,n.operand,!i)}return r}}function Rg(t){return e.findAncestor(t.parent,(function(t){return e.isFunctionLike(t)&&!e.getImmediatelyInvokedFunctionExpression(t)||260===t.kind||300===t.kind||164===t.kind}))}function Mg(t){var r,n=e.getRootDeclaration(t.valueDeclaration).parent,i=Cn(n);return 8388608&i.flags||(i.flags|=8388608,r=n,e.findAncestor(r.parent,(function(t){return e.isFunctionLike(t)&&!!(8388608&Cn(t).flags)}))||Lg(n)),t.isAssigned||!1}function Lg(t){if(78===t.kind){if(e.isAssignmentTarget(t)){var r=Am(t);r.valueDeclaration&&161===e.getRootDeclaration(r.valueDeclaration).kind&&(r.isAssigned=!0)}}else e.forEachChild(t,Lg)}function jg(e){return 3&e.flags&&0!=(2&lh(e))&&_o(e)!==Nt}function Bg(e){var t=e.parent;return 202===t.kind||204===t.kind&&t.expression===e||203===t.kind&&t.expression===e||199===t.kind&&t.name===e&&!!t.initializer}function zg(e){return 58982400&e.flags&&Rv(Qs(e)||Ae,98304)}function Ug(e,t){return e&&Bg(t)&&cg(e,zg)?pg(Hf(e),Zs):e}function qg(t){return!!e.findAncestor(t,(function(t){return t.parent&&e.isExportAssignment(t.parent)&&t.parent.expression===t&&e.isEntityNameExpression(t)}))}function Jg(t,r){if(ni(t,111551)&&!Nm(r)&&!ci(t)){var n=ai(t);111551&n.flags&&(J.isolatedModules||e.shouldPreserveConstEnums(J)&&qg(r)||!gE(n)?ui(t):function(e){var t=Tn(e);t.constEnumReferenced||(t.constEnumReferenced=!0)}(t))}}function Vg(r){var n=Am(r);if(n===ke)return we;if(function(r,n){if(r.virtual||!t.getTagNameNeededCheckByFile)return;var i=e.getSourceFileOfNode(r);if(!n||!n.valueDeclaration)return;var a=e.getSourceFileOfNode(n.valueDeclaration);if(!a)return;var o=t.getTagNameNeededCheckByFile(i.fileName,a.fileName);if(!o.needCheck)return;jy(n.getJsDocTags(),r,i,o.checkConfig)}(r,n),n===se){var i=e.getContainingFunction(r);return V<2&&(210===i.kind?pn(r,e.Diagnostics.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression):e.hasSyntacticModifier(i,256)&&pn(r,e.Diagnostics.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method)),Cn(i).flags|=8192,_o(n)}r.parent&&e.isPropertyAccessExpression(r.parent)&&r.parent.expression===r||Jg(n,r);var a=Ri(n),o=2097152&a.flags?ai(a):a;134217728&lh(o)&&Nu(r,o)&&hn(r,o.declarations,r.escapedText);var s=a.valueDeclaration;if(32&a.flags)if(254===s.kind&&e.nodeIsDecorated(s))for(i=e.getContainingClass(r);void 0!==i;){if(i===s&&i.name!==r){Cn(s).flags|=16777216,Cn(r).flags|=33554432;break}i=e.getContainingClass(i)}else if(223===s.kind)for(i=e.getThisContainer(r,!1);300!==i.kind;){if(i.parent===s){164===i.kind&&e.hasSyntacticModifier(i,32)&&(Cn(s).flags|=16777216,Cn(r).flags|=33554432);break}i=e.getThisContainer(i,!1)}!function(t,r){if(V>=2||0==(34&r.flags)||e.isSourceFile(r.valueDeclaration)||290===r.valueDeclaration.parent.kind)return;var n=e.getEnclosingBlockScopeContainer(r.valueDeclaration),i=function(t,r){return!!e.findAncestor(t,(function(t){return t===r?"quit":e.isFunctionLike(t)}))}(t.parent,n),a=n,o=!1;for(;a&&!e.nodeStartsNewLexicalEnvironment(a);){if(e.isIterationStatement(a,!1)){o=!0;break}a=a.parent}if(o){if(i){var s=!0;if(e.isForStatement(n))if((d=e.getAncestor(r.valueDeclaration,252))&&d.parent===n){var c=function(t,r){return e.findAncestor(t,(function(e){return e===r?"quit":e===r.initializer||e===r.condition||e===r.incrementor||e===r.statement}))}(t.parent,n);if(c){var l=Cn(c);l.flags|=131072;var u=l.capturedBlockScopeBindings||(l.capturedBlockScopeBindings=[]);e.pushIfUnique(u,r),c===n.initializer&&(s=!1)}}s&&(Cn(a).flags|=65536)}var d;if(e.isForStatement(n))(d=e.getAncestor(r.valueDeclaration,252))&&d.parent===n&&function(t,r){var n=t;for(;208===n.parent.kind;)n=n.parent;var i=!1;if(e.isAssignmentTarget(n))i=!0;else if(216===n.parent.kind||217===n.parent.kind){var a=n.parent;i=45===a.operator||46===a.operator}if(!i)return!1;return!!e.findAncestor(n,(function(e){return e===r?"quit":e===r.statement}))}(t,n)&&(Cn(r.valueDeclaration).flags|=4194304);Cn(r.valueDeclaration).flags|=524288}i&&(Cn(r.valueDeclaration).flags|=262144)}(r,n);var c=Ug(_o(a),r),l=e.getAssignmentTargetKind(r);if(l){if(!(3&a.flags||e.isInJSFile(r)&&512&a.flags))return pn(r,e.Diagnostics.Cannot_assign_to_0_because_it_is_not_a_variable,la(n)),we;if(Nv(a))return 3&a.flags?pn(r,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_constant,la(n)):pn(r,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,la(n)),we}var u=2097152&a.flags;if(3&a.flags){if(1===l)return c}else{if(!u)return c;s=e.find(n.declarations,B)}if(!s)return c;for(var d=161===e.getRootDeclaration(s).kind,p=Rg(s),f=Rg(r),m=f!==p,g=r.parent&&r.parent.parent&&e.isSpreadAssignment(r.parent)&&Xm(r.parent.parent),_=134217728&n.flags;f!==p&&(209===f.kind||210===f.kind||e.isObjectLiteralOrClassExpressionMethod(f))&&(jg(a)||d&&!Mg(a));)f=Rg(f);var h=d||u||m||g||_||e.isBindingElement(s)||c!==Se&&c!==Nt&&(!W||0!=(16387&c.flags)||Nm(r)||273===r.parent.kind)||227===r.parent.kind||251===s.kind&&s.exclamationToken||8388608&s.flags,y=h?d?function(e,t){if(Da(t.symbol,2)){var r=W&&161===t.kind&&t.initializer&&32768&wf(e)&&!(32768&wf(fb(t.initializer)));return Ca(),r?Hm(e,524288):e}return go(t.symbol),e}(c,s):c:c===Se||c===Nt?Ne:Nf(c),v=Og(r,c,y,f,!h);if(Dg(r)||c!==Se&&c!==Nt){if(!h&&!(32768&wf(c))&&32768&wf(v))return pn(r,e.Diagnostics.Variable_0_is_used_before_being_assigned,la(n)),c}else if(v===Se||v===Nt)return X&&(pn(e.getNameOfDeclaration(s),e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,la(n),da(v)),pn(r,e.Diagnostics.Variable_0_implicitly_has_an_1_type,la(n),da(v))),bk(v);return l?mf(v):v}function Hg(e,t){(Cn(e).flags|=2,164===t.kind||167===t.kind)?Cn(t.parent).flags|=4:Cn(t).flags|=4}function Kg(t){return e.isSuperCall(t)?t:e.isFunctionLike(t)?void 0:e.forEachChild(t,Kg)}function Wg(e){return Ao(Jo(Ai(e)))===Oe}function Gg(t,r,n){var i=r.parent;e.getClassExtendsHeritageElement(i)&&!Wg(i)&&t.flowNode&&!Fg(t.flowNode,!1)&&pn(t,n)}function $g(t){var r=e.getThisContainer(t,!0),n=!1;switch(167===r.kind&&Gg(t,r,e.Diagnostics.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class),210===r.kind&&(r=e.getThisContainer(r,!1),n=!0),r.kind){case 259:pn(t,e.Diagnostics.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 258:pn(t,e.Diagnostics.this_cannot_be_referenced_in_current_location);break;case 167:Xg(t,r)&&pn(t,e.Diagnostics.this_cannot_be_referenced_in_constructor_arguments);break;case 164:case 163:!e.hasSyntacticModifier(r,32)||99===J.target&&J.useDefineForClassFields||pn(t,e.Diagnostics.this_cannot_be_referenced_in_a_static_property_initializer);break;case 159:pn(t,e.Diagnostics.this_cannot_be_referenced_in_a_computed_property_name)}n&&V<2&&Hg(t,r);var i=Yg(t,!0,r);if(Q){var a=_o(ae);if(i===a&&n)pn(t,e.Diagnostics.The_containing_arrow_function_captures_the_global_value_of_this);else if(!i){var o=pn(t,e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!e.isSourceFile(r)){var s=Yg(r);s&&s!==a&&e.addRelatedInfo(o,e.createDiagnosticForNode(r,e.Diagnostics.An_outer_value_of_this_is_shadowed_by_this_container))}}}return i||Ee}function Yg(t,r,n){void 0===r&&(r=!0),void 0===n&&(n=e.getThisContainer(t,!1));var i=e.isInJSFile(t);if(e.isFunctionLike(n)&&(!i_(t)||e.getThisParameter(n))){var a=co(n)||i&&function(t){var r=e.getJSDocType(t);if(r&&311===r.kind){var n=r;if(n.parameters.length>0&&n.parameters[0].name&&"this"===n.parameters[0].name.escapedText)return xd(n.parameters[0].type)}var i=e.getJSDocThisTag(t);if(i&&i.typeExpression)return xd(i.typeExpression)}(n);if(!a){var o=function(t){if(209===t.kind&&e.isBinaryExpression(t.parent)&&3===e.getAssignmentDeclarationKind(t.parent))return t.parent.left.expression.expression;if(166===t.kind&&201===t.parent.kind&&e.isBinaryExpression(t.parent.parent)&&6===e.getAssignmentDeclarationKind(t.parent.parent))return t.parent.parent.left.expression;if(209===t.kind&&291===t.parent.kind&&201===t.parent.parent.kind&&e.isBinaryExpression(t.parent.parent.parent)&&6===e.getAssignmentDeclarationKind(t.parent.parent.parent))return t.parent.parent.parent.left.expression;if(209===t.kind&&e.isPropertyAssignment(t.parent)&&e.isIdentifier(t.parent.name)&&("value"===t.parent.name.escapedText||"get"===t.parent.name.escapedText||"set"===t.parent.name.escapedText)&&e.isObjectLiteralExpression(t.parent.parent)&&e.isCallExpression(t.parent.parent.parent)&&t.parent.parent.parent.arguments[2]===t.parent.parent&&9===e.getAssignmentDeclarationKind(t.parent.parent.parent))return t.parent.parent.parent.arguments[0].expression;if(e.isMethodDeclaration(t)&&e.isIdentifier(t.name)&&("value"===t.name.escapedText||"get"===t.name.escapedText||"set"===t.name.escapedText)&&e.isObjectLiteralExpression(t.parent)&&e.isCallExpression(t.parent.parent)&&t.parent.parent.arguments[2]===t.parent&&9===e.getAssignmentDeclarationKind(t.parent.parent))return t.parent.parent.arguments[0].expression}(n);if(i&&o){var s=fb(o).symbol;s&&s.members&&16&s.flags&&(a=Jo(s).thisType)}else Fy(n)&&(a=Jo(Ci(n.symbol)).thisType);a||(a=t_(n))}if(a)return Og(t,a)}if(e.isClassLike(n.parent)){var c=Ai(n.parent);return Og(t,e.hasSyntacticModifier(n,32)?_o(c):Jo(c).thisType)}if(e.isSourceFile(n)){if(n.commonJsModuleIndicator){var l=Ai(n);return l&&_o(l)}if(n.externalModuleIndicator)return Ne;if(r)return _o(ae)}}function Xg(t,r){return!!e.findAncestor(t,(function(t){return e.isFunctionLikeDeclaration(t)?"quit":161===t.kind&&t.parent===r}))}function Qg(t){var r=204===t.parent.kind&&t.parent.expression===t,n=e.getSuperContainer(t,!0),i=n,a=!1;if(!r)for(;i&&210===i.kind;)i=e.getSuperContainer(i,!0),a=V<2;var o=function(t){if(!t)return!1;if(r)return 167===t.kind;if(e.isClassLike(t.parent)||201===t.parent.kind)return e.hasSyntacticModifier(t,32)?166===t.kind||165===t.kind||168===t.kind||169===t.kind:166===t.kind||165===t.kind||168===t.kind||169===t.kind||164===t.kind||163===t.kind||167===t.kind;return!1}(i),s=0;if(!o){var c=e.findAncestor(t,(function(e){return e===i?"quit":159===e.kind}));return c&&159===c.kind?pn(t,e.Diagnostics.super_cannot_be_referenced_in_a_computed_property_name):r?pn(t,e.Diagnostics.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):i&&i.parent&&(e.isClassLike(i.parent)||201===i.parent.kind)?pn(t,e.Diagnostics.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class):pn(t,e.Diagnostics.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions),we}if(r||167!==n.kind||Gg(t,i,e.Diagnostics.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),s=e.hasSyntacticModifier(i,32)||r?512:256,Cn(t).flags|=s,166===i.kind&&e.hasSyntacticModifier(i,256)&&(e.isSuperProperty(t.parent)&&e.isAssignmentTarget(t.parent)?Cn(i).flags|=4096:Cn(i).flags|=2048),a&&Hg(t.parent,i),201===i.parent.kind)return V<2?(pn(t,e.Diagnostics.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),we):Ee;var l=i.parent;if(!e.getClassExtendsHeritageElement(l))return pn(t,e.Diagnostics.super_can_only_be_referenced_in_a_derived_class),we;var u=Jo(Ai(l)),d=u&&Po(u)[0];return d?167===i.kind&&Xg(t,i)?(pn(t,e.Diagnostics.super_cannot_be_referenced_in_constructor_arguments),we):512===s?Ao(u):ls(d,u.thisType):we}function Zg(t){return 4&e.getObjectFlags(t)&&t.target===Ct?ll(t)[0]:void 0}function e_(t){return pg(t,(function(t){return 2097152&t.flags?e.forEach(t.types,Zg):Zg(t)}))}function t_(t){if(210!==t.kind){if(tp(t)){var r=A_(t);if(r){var n=r.thisParameter;if(n)return _o(n)}}var i=e.isInJSFile(t);if(Q||i){var a=function(e){return 166!==e.kind&&168!==e.kind&&169!==e.kind||201!==e.parent.kind?209===e.kind&&291===e.parent.kind?e.parent.parent:void 0:e.parent}(t);if(a){for(var o=v_(a),s=a,c=o;c;){var l=e_(c);if(l)return Wd(l,im(E_(a)));if(291!==s.parent.kind)break;c=v_(s=s.parent.parent)}return Hf(o?Pf(o):$v(a))}var u=e.walkUpParenthesizedExpressions(t.parent);if(218===u.kind&&62===u.operatorToken.kind){var d=u.left;if(e.isAccessExpression(d)){var p=d.expression;if(i&&e.isIdentifier(p)){var f=e.getSourceFileOfNode(u);if(f.commonJsModuleIndicator&&Am(p)===f.symbol)return}return Hf($v(p))}}}}}function r_(t){var r=t.parent;if(tp(r)){var n=e.getImmediatelyInvokedFunctionExpression(r);if(n&&n.arguments){var i=dy(n),a=r.parameters.indexOf(t);if(t.dotDotDotToken)return ay(i,a,i.length,Ee,void 0,0);var o=Cn(n),s=o.resolvedSignature;o.resolvedSignature=lr;var c=a<i.length?gf(fb(i[a])):t.initializer?void 0:Pe;return o.resolvedSignature=s,c}var l=A_(r);if(l){var u=r.parameters.indexOf(t)-(e.getThisParameter(r)?1:0);return t.dotDotDotToken&&e.lastOrUndefined(r.parameters)===t?av(l,u):iv(l,u)}}}function n_(t){var r=e.getEffectiveTypeAnnotationNode(t);if(r)return xd(r);switch(t.kind){case 161:return r_(t);case 199:return function(t){var r=t.parent.parent,n=t.propertyName||t.name,i=n_(r)||199!==r.kind&&r.initializer&&Yv(r);if(!i||e.isBindingPattern(n)||e.isComputedNonLiteralName(n))return;if(198===r.name.kind){var a=e.indexOfNode(t.parent.elements,t);if(a<0)return;return g_(i,a)}var o=vu(n);if(Zo(o)){return Na(i,is(o))}}(t);case 164:if(e.hasSyntacticModifier(t,32))return function(t){var r=e.isExpression(t.parent)&&x_(t.parent);return r?p_(r,Ai(t).escapedName):void 0}(t)}}function i_(t){for(var r=!1;t.parent&&!e.isFunctionLike(t.parent);){if(e.isParameter(t.parent)&&(r||t.parent.initializer===t))return!0;e.isBindingElement(t.parent)&&t.parent.initializer===t&&(r=!0),t=t.parent}return!1}function a_(t,r){var n=!!(2&e.getFunctionFlags(r)),i=o_(r);if(i)return rx(t,i,n)||void 0}function o_(e){var t=zc(e);if(t)return t;var r=C_(e);return r&&!Uc(r)?Bc(r):void 0}function s_(e,t){var r=dy(e).indexOf(t);return-1===r?void 0:c_(e,r)}function c_(t,r){var n=Cn(t).resolvedSignature===dr?dr:Iy(t);return e.isJsxOpeningLikeElement(t)&&0===r?S_(n,t):nv(n,r)}function l_(t,r){var n=t.parent,i=n.left,a=n.operatorToken,o=n.right;switch(a.kind){case 62:case 75:case 74:case 76:return t===o?function(t){var r=e.getAssignmentDeclarationKind(t);switch(r){case 0:return ub(t.left);case 5:case 1:case 6:case 3:if(u_(t,r))return d_(t,r);if(t.left.symbol){var n=t.left.symbol.valueDeclaration;if(!n)return;var i=e.cast(t.left,e.isAccessExpression),a=e.getEffectiveTypeAnnotationNode(n);if(a)return xd(a);if(e.isIdentifier(i.expression)){var o=i.expression,s=Fn(o,o.escapedText,111551,void 0,o.escapedText,!0);if(s){var c=s.valueDeclaration&&e.getEffectiveTypeAnnotationNode(s.valueDeclaration);if(c){var l=e.getElementOrPropertyAccessName(i);if(void 0!==l)return p_(xd(c),l)}return}}return e.isInJSFile(n)?void 0:ub(t.left)}return ub(t.left);case 2:case 4:return d_(t,r);case 7:case 8:case 9:return e.Debug.fail("Does not apply");default:return e.Debug.assertNever(r)}}(n):void 0;case 56:case 60:var s=x_(n,r);return t===o&&(s&&s.pattern||!s&&!e.isDefaultedExpandoInitializer(n))?ub(i):s;case 55:case 27:return t===o?x_(n,r):void 0;default:return}}function u_(t,r){if(void 0===r&&(r=e.getAssignmentDeclarationKind(t)),4===r)return!0;if(!e.isInJSFile(t)||5!==r||!e.isIdentifier(t.left.expression))return!1;var n=t.left.expression.escapedText,i=Fn(t.left,n,111551,void 0,void 0,!0,!0);return e.isThisInitializedDeclaration(null==i?void 0:i.valueDeclaration)}function d_(t,r){if(!t.symbol)return ub(t.left);if(t.symbol.valueDeclaration){var n=e.getEffectiveTypeAnnotationNode(t.symbol.valueDeclaration);if(n){var i=xd(n);if(i)return i}}if(2!==r){var a=e.cast(t.left,e.isAccessExpression);if(e.isObjectLiteralMethod(e.getThisContainer(a.expression,!1))){var o=$g(a.expression),s=e.getElementOrPropertyAccessName(a);return void 0!==s&&p_(o,s)||void 0}}}function p_(t,r){return pg(t,(function(t){if(zs(t)){var n=Ps(t),i=Qs(n)||n,a=hd(e.unescapeLeadingUnderscores(r));if(cp(a,i))return Uu(t,a)}else if(3670016&t.flags){var o=gc(t,r);if(o)return c=o,262144&e.getCheckFlags(c)&&!c.type&&wa(c,0)>=0?void 0:_o(o);if(vf(t)){var s=xf(t);if(s&&R_(r)&&+r>=0)return s}return R_(r)&&f_(t,1)||f_(t,0)}var c}),!0)}function f_(e,t){return pg(e,(function(e){return vc(e,t)}),!0)}function m_(e,t){var r=v_(e.parent,t);if(r){if(ns(e)){var n=p_(r,Ai(e).escapedName);if(n)return n}return F_(e.name)&&f_(r,1)||f_(r,0)}}function g_(e,t){return e&&(p_(e,""+t)||pg(e,(function(e){return Ok(1,e,Ne,void 0,!1)}),!0))}function __(t){var r=t.parent;return e.isJsxAttributeLike(r)?x_(t):e.isJsxElement(r)?function(t,r){var n=v_(t.openingElement.tagName),i=Q_(Y_(t));if(n&&!Pa(n)&&i&&""!==i){var a=e.getSemanticJsxChildren(t.children),o=a.indexOf(r),s=p_(n,i);return s&&(1===a.length?s:pg(s,(function(e){return sf(e)?qu(e,hd(o)):e}),!0))}}(r,t):void 0}function h_(t){if(e.isJsxAttribute(t)){var r=v_(t.parent);if(!r||Pa(r))return;return p_(r,t.name.escapedText)}return x_(t.parent)}function y_(e){switch(e.kind){case 10:case 8:case 9:case 14:case 110:case 95:case 104:case 78:case 151:return!0;case 202:case 208:return y_(e.expression);case 286:return!e.expression||y_(e.expression)}return!1}function v_(t,r){var n=b_(e.isObjectLiteralMethod(t)?function(t,r){if(e.Debug.assert(e.isObjectLiteralMethod(t)),!(16777216&t.flags))return m_(t,r)}(t,r):x_(t,r),t,r);if(n&&!(r&&2&r&&8650752&n.flags)){var i=pg(n,ac,!0);if(1048576&i.flags){if(e.isObjectLiteralExpression(t))return function(t,r){return Lp(r,e.map(e.filter(t.properties,(function(e){return!!e.symbol&&291===e.kind&&y_(e.initializer)&&Lm(r,e.symbol.escapedName)})),(function(e){return[function(){return fb(e.initializer)},e.symbol.escapedName]})),cp,r)}(t,i);if(e.isJsxAttributes(t))return function(t,r){return Lp(r,e.map(e.filter(t.properties,(function(e){return!!e.symbol&&283===e.kind&&Lm(r,e.symbol.escapedName)&&(!e.initializer||y_(e.initializer))})),(function(e){return[e.initializer?function(){return fb(e.initializer)}:function(){return ze},e.symbol.escapedName]})),cp,r)}(t,i)}return i}}function b_(t,r,n){if(t&&Rv(t,465829888)){var i=E_(r);if(i&&e.some(i.inferences,ab)){if(n&&1&n)return k_(t,i.nonFixingMapper);if(i.returnMapper)return k_(t,i.returnMapper)}}return t}function k_(t,r){return 465829888&t.flags?Wd(t,r):1048576&t.flags?ou(e.map(t.types,(function(e){return k_(e,r)})),0):2097152&t.flags?fu(e.map(t.types,(function(e){return k_(e,r)}))):t}function x_(t,r){if(16777216&t.flags);else{if(t.contextualType)return t.contextualType;var n=t.parent;switch(n.kind){case 251:case 161:case 164:case 163:case 199:return function(t,r){var n=t.parent;if(e.hasInitializer(n)&&t===n.initializer){var i=n_(n);if(i)return i;if(!(8&r)&&e.isBindingPattern(n.name))return eo(n.name,!0,!1)}}(t,r);case 210:case 244:return function(t){var r=e.getContainingFunction(t);if(r){var n=o_(r);if(n){var i=e.getFunctionFlags(r);if(1&i){var a=zk(n,2&i?2:1,void 0);if(!a)return;n=a.returnType}if(2&i){var o=pg(n,qb);return o&&ou([o,hv(o)])}return n}}}(t);case 221:return function(t){var r=e.getContainingFunction(t);if(r){var n=e.getFunctionFlags(r),i=o_(r);if(i)return t.asteriskToken?i:rx(0,i,0!=(2&n))}}(n);case 215:return function(e,t){var r=x_(e,t);if(r){var n=qb(r);return n&&ou([n,hv(n)])}}(n,r);case 204:case 211:if(100===n.expression.kind)return Re;case 205:return s_(n,t);case 207:case 226:return e.isConstTypeReference(n.type)?function(e){return x_(e)}(n):xd(n.type);case 218:return l_(t,r);case 291:case 292:return m_(n,r);case 293:return v_(n.parent,r);case 200:var i=n;return g_(v_(i,r),e.indexOfNode(i.elements,t));case 219:return function(e,t){var r=e.parent;return e===r.whenTrue||e===r.whenFalse?x_(r,t):void 0}(t,r);case 230:return e.Debug.assert(220===n.parent.kind),function(e,t){if(206===e.parent.kind)return s_(e.parent,t)}(n.parent,t);case 208:var a=e.isInJSFile(n)?e.getJSDocTypeTag(n):void 0;return a?xd(a.typeExpression.type):x_(n,r);case 227:return x_(n,r);case 286:return __(n);case 283:case 285:return h_(n);case 278:case 277:return function(t,r){if(e.isJsxOpeningElement(t)&&t.parent.contextualType&&4!==r)return t.parent.contextualType;return c_(t,0)}(n,r)}}}function E_(t){var r=e.findAncestor(t,(function(e){return!!e.inferenceContext}));return r&&r.inferenceContext}function S_(t,r){return 0!==sy(r)?function(e,t){var r=pv(e,Ae);r=D_(t,Y_(t),r);var n=W_(N.IntrinsicAttributes,t);n!==we&&(r=bs(n,r));return r}(t,r):function(t,r){var n=Y_(r),i=(o=n,X_(N.ElementAttributesPropertyNameContainer,o)),a=void 0===i?pv(t,Ae):""===i?Bc(t):function(e,t){if(e.unionSignatures){for(var r=[],n=0,i=e.unionSignatures;n<i.length;n++){var a=Bc(i[n]);if(Pa(a))return a;var o=Na(a,t);if(!o)return;r.push(o)}return fu(r)}var s=Bc(e);return Pa(s)?s:Na(s,t)}(t,i);var o;if(!a)return i&&e.length(r.attributes.properties)&&pn(r,e.Diagnostics.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,e.unescapeLeadingUnderscores(i)),Ae;if(Pa(a=D_(r,n,a)))return a;var s=a,c=W_(N.IntrinsicClassAttributes,r);if(c!==we){var l=Eo(c.symbol),u=Bc(t);s=bs(l?ol(c,Pc([u],l,Nc(l),e.isInJSFile(r))):c,s)}var d=W_(N.IntrinsicAttributes,r);return d!==we&&(s=bs(d,s)),s}(t,r)}function D_(t,r,n){var i,a=(i=r)&&Nn(i.exports,N.LibraryManagedAttributes,788968);if(a){var o=Jo(a),s=function(e){if(q_(e.tagName))return $c(Ay(e,t=th(e)));var t,r=$v(e.tagName);return 128&r.flags?(t=eh(r,e))?$c(Ay(e,t)):we:r}(t);if(524288&a.flags){var c=Tn(a).typeParameters;if(e.length(c)>=2)return pl(a,Pc([s,n],c,2,e.isInJSFile(t)))}if(e.length(o.typeParameters)>=2)return ol(o,Pc([s,n],o.typeParameters,2,e.isInJSFile(t)))}return n}function w_(t,r){var n=hc(t,0);if(1===n.length){var i=n[0];if(!function(t,r){for(var n=0;n<r.parameters.length;n++){var i=r.parameters[n];if(i.initializer||i.questionToken||i.dotDotDotToken||Dc(i))break}r.parameters.length&&e.parameterIsThisKeyword(r.parameters[0])&&n--;return!cv(t)&&ov(t)<n}(i,r))return i}}function T_(e){return 209===e.kind||210===e.kind}function C_(t){return T_(t)||e.isObjectLiteralMethod(t)?A_(t):void 0}function A_(t){e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t));var r=Fc(t);if(r)return r;var n=v_(t,1);if(n){if(!(1048576&n.flags))return w_(n,t);for(var i,a=0,o=n.types;a<o.length;a++){var s=w_(o[a],t);if(s)if(i){if(!ef(i[0],s,!1,!0,!0,ip))return;i.push(s)}else i=[s]}return i?1===i.length?i[0]:fs(i[0],i):void 0}}function N_(e){return 199===e.kind&&!!e.initializer||218===e.kind&&62===e.operatorToken.kind}function P_(t,r,n){for(var i=t.elements,a=i.length,o=[],s=[],c=v_(t),l=e.isAssignmentTarget(t),u=Zv(t),d=0;d<a;d++){var p=i[d];if(222===p.kind){V<2&&BE(p,J.downlevelIteration?1536:1024);var f=fb(p.expression,r,n);if(sf(f))o.push(f),s.push(8);else if(l){var m=kc(f,1)||Ok(65,f,Ne,void 0,!1)||Ae;o.push(m),s.push(4)}else o.push(Fk(33,f,Ne,p.expression)),s.push(4)}else{var g=eb(p,r,g_(c,o.length),n);o.push(g),s.push(1)}}return l?Hl(o,s):n||u||c&&cg(c,lf)?I_(Hl(o,s,u)):I_(jl(o.length?ou(e.sameMap(o,(function(e,t){return 8&s[t]?Vu(e,Me)||Ee:e})),2):W?Ge:Pe,u))}function I_(t){if(!(4&e.getObjectFlags(t)))return t;var r=t.literalType;return r||((r=t.literalType=sl(t)).objectFlags|=1114112),r}function F_(e){switch(e.kind){case 159:return function(e){return Mv(M_(e),296)}(e);case 78:return R_(e.escapedText);case 8:case 10:return R_(e.text);default:return!1}}function O_(e){return"Infinity"===e||"-Infinity"===e||"NaN"===e}function R_(e){return(+e).toString()===e}function M_(t){var r=Cn(t.expression);return r.resolvedType||(r.resolvedType=fb(t.expression),98304&r.resolvedType.flags||!Mv(r.resolvedType,402665900)&&!cp(r.resolvedType,Xe)?pn(t,e.Diagnostics.A_computed_property_name_must_be_of_type_string_number_symbol_or_any):qh(t.expression,r.resolvedType,!0)),r.resolvedType}function L_(t,r,n,i){for(var a,o,s,c=[],l=r;l<n.length;l++)(0===i||(a=n[l],o=void 0,s=void 0,s=null===(o=a.declarations)||void 0===o?void 0:o[0],R_(a.escapedName)||s&&e.isNamedDeclaration(s)&&F_(s.name)))&&c.push(_o(n[l]));return Qc(c.length?ou(c,2):Ne,Zv(t))}function j_(t){e.Debug.assert(0!=(2097152&t.flags),"Should only get Alias here.");var r=Tn(t);if(!r.immediateTarget){var n=Vn(t);if(!n)return e.Debug.fail();r.immediateTarget=ri(n,!0)}return r.immediateTarget}function B_(t,r){var n=e.isAssignmentTarget(t);!function(t,r){for(var n=new e.Map,i=0,a=t.properties;i<a.length;i++){var o=a[i];if(293!==o.kind){var s=o.name;if(159===s.kind&&XE(s),292===o.kind&&!r&&o.objectAssignmentInitializer)return mS(o.equalsToken,e.Diagnostics.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern);if(79===s.kind)return mS(s,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies);if(o.modifiers)for(var c=0,l=o.modifiers;c<l.length;c++){var u=l[c];130===u.kind&&166===o.kind||mS(u,e.Diagnostics._0_modifier_cannot_be_used_here,e.getTextOfNode(u))}var d=void 0;switch(o.kind){case 292:eS(o.exclamationToken,e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context);case 291:ZE(o.questionToken,e.Diagnostics.An_object_member_cannot_be_declared_optional),8===s.kind&&hS(s),d=4;break;case 166:d=8;break;case 168:d=1;break;case 169:d=2;break;default:throw e.Debug.assertNever(o,"Unexpected syntax kind:"+o.kind)}if(!r){var p=e.getPropertyNameForPropertyNameNode(s);if(void 0===p)continue;var f=n.get(p);if(f)if(12&d&&12&f)mS(s,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(s));else{if(!(3&d&&3&f))return mS(s,e.Diagnostics.An_object_literal_cannot_have_property_and_accessor_with_the_same_name);if(3===f||d===f)return mS(s,e.Diagnostics.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);n.set(p,d|f)}else n.set(p,d)}}else if(r){var m=e.skipParentheses(o.expression);if(e.isArrayLiteralExpression(m)||e.isObjectLiteralExpression(m))return mS(o.expression,e.Diagnostics.A_rest_element_cannot_contain_a_binding_pattern)}}}(t,n);for(var i=W?e.createSymbolTable():void 0,a=e.createSymbolTable(),o=[],s=nt,c=v_(t),l=c&&c.pattern&&(197===c.pattern.kind||201===c.pattern.kind),u=Zv(t),d=u?8:0,p=e.isInJSFile(t)&&!e.isInJsonFile(t),f=e.getJSDocEnumTag(t),m=!c&&p&&!f,g=ee,_=!1,h=!1,y=!1,v=0,b=t.properties;v<b.length;v++){var k=b[v];k.name&&e.isComputedPropertyName(k.name)&&!e.isWellKnownSymbolSyntactically(k.name)&&M_(k.name)}for(var x=0,E=0,S=t.properties;E<S.length;E++){var D=S[E],w=Ai(D),T=D.name&&159===D.name.kind&&!e.isWellKnownSymbolSyntactically(D.name.expression)?M_(D.name):void 0;if(291===D.kind||292===D.kind||e.isObjectLiteralMethod(D)){var C=291===D.kind?tb(D,r):292===D.kind?eb(!n&&D.objectAssignmentInitializer?D.objectAssignmentInitializer:D.name,r):rb(D,r);if(p){var A=ja(D);A?(pp(C,A,D),C=A):f&&f.typeExpression&&pp(C,xd(f.typeExpression),D)}g|=3670016&e.getObjectFlags(C);var N=T&&Zo(T)?T:void 0,P=N?yn(4|w.flags,is(N),4096|d):yn(4|w.flags,w.escapedName,d);if(N&&(P.nameType=N),n)(291===D.kind&&N_(D.initializer)||292===D.kind&&D.objectAssignmentInitializer)&&(P.flags|=16777216);else if(l&&!(512&e.getObjectFlags(c))){var I=gc(c,w.escapedName);I?P.flags|=16777216&I.flags:J.suppressExcessPropertyErrors||bc(c,0)||pn(D.name,e.Diagnostics.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,la(w),da(c))}P.declarations=w.declarations,P.parent=w.parent,w.valueDeclaration&&(P.valueDeclaration=w.valueDeclaration),P.type=C,P.target=w,w=P,null==i||i.set(P.escapedName,P)}else{if(293===D.kind){if(V<2&&BE(D,2),o.length>0&&(s=ld(s,R(),t.symbol,g,u),o=[],a=e.createSymbolTable(),h=!1,y=!1),!z_(C=uc(fb(D.expression))))return pn(D,e.Diagnostics.Spread_types_may_only_be_created_from_object_types),we;i&&H_(C,i,D),s=ld(s,C,t.symbol,g,u),x=o.length;continue}e.Debug.assert(168===D.kind||169===D.kind),jx(D)}!T||8576&T.flags?a.set(w.escapedName,w):cp(T,Xe)&&(cp(T,Me)?y=!0:h=!0,n&&(_=!0)),o.push(w)}if(l&&293!==t.parent.kind)for(var F=0,O=Hs(c);F<O.length;F++){P=O[F];a.get(P.escapedName)||gc(s,P.escapedName)||(16777216&P.flags||pn(P.valueDeclaration||P.bindingElement,e.Diagnostics.Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value),a.set(P.escapedName,P),o.push(P))}return s!==nt?(o.length>0&&(s=ld(s,R(),t.symbol,g,u),o=[],a=e.createSymbolTable(),h=!1,y=!1),pg(s,(function(e){return e===nt?R():e}))):R();function R(){var r=h?L_(t,x,o,0):void 0,i=y?L_(t,x,o,1):void 0,s=Wi(t.symbol,a,e.emptyArray,e.emptyArray,r,i);return s.objectFlags|=1048704|g,m&&(s.objectFlags|=16384),_&&(s.objectFlags|=512),n&&(s.pattern=t),s}}function z_(t){if(465829888&t.flags){var r=Qs(t);if(void 0!==r)return z_(r)}return!!(126615553&t.flags||117632&wf(t)&&z_(Tf(t))||3145728&t.flags&&e.every(t.types,z_))}function U_(t){return!e.stringContains(t,"-")}function q_(t){return 78===t.kind&&e.isIntrinsicJsxName(t.escapedText)}function J_(e,t){return e.initializer?eb(e.initializer,t):ze}function V_(e,t){for(var r=[],n=0,i=e.children;n<i.length;n++){var a=i[n];if(11===a.kind)a.containsOnlyTriviaWhiteSpaces||r.push(Re);else{if(286===a.kind&&!a.expression)continue;r.push(eb(a,t))}}return r}function H_(t,r,n){for(var i=0,a=Hs(t);i<a.length;i++){var o=a[i],s=r.get(o.escapedName),c=_o(o);if(s&&!Rv(c,98304)&&!(Rv(c,3)&&16777216&o.flags)){var l=pn(s.valueDeclaration,e.Diagnostics._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,e.unescapeLeadingUnderscores(s.escapedName));e.addRelatedInfo(l,e.createDiagnosticForNode(n,e.Diagnostics.This_spread_always_overwrites_this_property))}}}function K_(t,r){return function(t,r){for(var n,i=t.attributes,a=W?e.createSymbolTable():void 0,o=e.createSymbolTable(),s=it,c=!1,l=!1,u=4096,d=Q_(Y_(t)),p=0,f=i.properties;p<f.length;p++){var m=f[p],g=m.symbol;if(e.isJsxAttribute(m)){var _=J_(m,r);u|=3670016&e.getObjectFlags(_);var h=yn(4|g.flags,g.escapedName);h.declarations=g.declarations,h.parent=g.parent,g.valueDeclaration&&(h.valueDeclaration=g.valueDeclaration),h.type=_,h.target=g,o.set(h.escapedName,h),null==a||a.set(h.escapedName,h),m.name.escapedText===d&&(l=!0)}else e.Debug.assert(285===m.kind),o.size>0&&(s=ld(s,S(),i.symbol,u,!1),o=e.createSymbolTable()),Pa(_=uc($v(m.expression,r)))&&(c=!0),z_(_)?(s=ld(s,_,i.symbol,u,!1),a&&H_(_,a,m)):n=n?fu([n,_]):_}c||o.size>0&&(s=ld(s,S(),i.symbol,u,!1));var y=276===t.parent.kind?t.parent:void 0;if(y&&y.openingElement===t&&y.children.length>0){var v=V_(y,r);if(!c&&d&&""!==d){l&&pn(i,e.Diagnostics._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,e.unescapeLeadingUnderscores(d));var b=v_(t.attributes),k=b&&p_(b,d),x=yn(4,d);x.type=1===v.length?v[0]:k&&cg(k,lf)?Hl(v):jl(ou(v)),x.valueDeclaration=e.factory.createPropertySignature(void 0,e.unescapeLeadingUnderscores(d),void 0,void 0),e.setParent(x.valueDeclaration,i),x.valueDeclaration.symbol=x;var E=e.createSymbolTable();E.set(d,x),s=ld(s,Wi(i.symbol,E,e.emptyArray,e.emptyArray,void 0,void 0),i.symbol,u,!1)}}return c?Ee:n&&s!==it?fu([n,s]):n||(s===it?S():s);function S(){u|=ee;var t=Wi(i.symbol,o,e.emptyArray,e.emptyArray,void 0,void 0);return t.objectFlags|=1048704|u,t}}(t.parent,r)}function W_(e,t){var r=Y_(t),n=r&&Si(r),i=n&&Nn(n,e,788968);return i?Jo(i):we}function G_(t){var r=Cn(t);if(!r.resolvedSymbol){var n=W_(N.IntrinsicElements,t);if(n!==we){if(!e.isIdentifier(t.tagName))return e.Debug.fail();var i=gc(n,t.tagName.escapedText);return i?(r.jsxFlags|=1,r.resolvedSymbol=i):kc(n,0)?(r.jsxFlags|=2,r.resolvedSymbol=n.symbol):(pn(t,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.idText(t.tagName),"JSX."+N.IntrinsicElements),r.resolvedSymbol=ke)}return X&&pn(t,e.Diagnostics.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,e.unescapeLeadingUnderscores(N.IntrinsicElements)),r.resolvedSymbol=ke}return r.resolvedSymbol}function $_(t){var r=t&&e.getSourceFileOfNode(t),n=r&&Cn(r);if(!n||!1!==n.jsxImplicitImportContainer){if(n&&n.jsxImplicitImportContainer)return n.jsxImplicitImportContainer;var i=e.getJSXRuntimeImport(e.getJSXImplicitImportBase(J,r),J);if(i){var a=hi(t,i,e.getEmitModuleResolutionKind(J)===e.ModuleResolutionKind.Classic?e.Diagnostics.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_node_or_to_add_aliases_to_the_paths_option:e.Diagnostics.Cannot_find_module_0_or_its_corresponding_type_declarations,t),o=a&&a!==ke?Ci(ii(a)):void 0;return n&&(n.jsxImplicitImportContainer=o||!1),o}}}function Y_(e){var t=e&&Cn(e);if(t&&t.jsxNamespace)return t.jsxNamespace;if(!t||!1!==t.jsxNamespace){var r=$_(e);if(!r||r===ke){var n=un(e);r=Fn(e,n,1920,void 0,n,!1)}if(r){var i=ii(Nn(Si(ii(r)),N.JSX,1920));if(i&&i!==ke)return t&&(t.jsxNamespace=i),i}t&&(t.jsxNamespace=!1)}var a=ii(Cl(N.JSX,1920,void 0));return a!==ke?a:void 0}function X_(t,r){var n=r&&Nn(r.exports,t,788968),i=n&&Jo(n),a=i&&Hs(i);if(a){if(0===a.length)return"";if(1===a.length)return a[0].escapedName;a.length>1&&pn(n.declarations[0],e.Diagnostics.The_global_type_JSX_0_may_not_have_more_than_one_property,e.unescapeLeadingUnderscores(t))}}function Q_(e){return X_(N.ElementChildrenAttributeNameContainer,e)}function Z_(t,r){if(4&t.flags)return[lr];if(128&t.flags){var n=eh(t,r);return n?[Ay(r,n)]:(pn(r,e.Diagnostics.Property_0_does_not_exist_on_type_1,t.value,"JSX."+N.IntrinsicElements),e.emptyArray)}var i=ac(t),a=hc(i,1);return 0===a.length&&(a=hc(i,0)),0===a.length&&1048576&i.flags&&(a=ys(e.map(i.types,(function(e){return Z_(e,r)})))),a}function eh(t,r){var n=W_(N.IntrinsicElements,r);if(n!==we){var i=t.value,a=gc(n,e.escapeLeadingUnderscores(i));if(a)return _o(a);var o=kc(n,0);return o||void 0}return Ee}function th(t){e.Debug.assert(q_(t.tagName));var r=Cn(t);if(!r.resolvedJsxElementAttributesType){var n=G_(t);return 1&r.jsxFlags?r.resolvedJsxElementAttributesType=_o(n):2&r.jsxFlags?r.resolvedJsxElementAttributesType=kc(Jo(n),0):r.resolvedJsxElementAttributesType=we}return r.resolvedJsxElementAttributesType}function rh(e){var t=W_(N.ElementClass,e);if(t!==we)return t}function nh(e){return W_(N.Element,e)}function ih(e){var t=nh(e);if(t)return ou([t,Fe])}function ah(t){var r,n=e.isJsxOpeningLikeElement(t);if(n&&function(t){WE(t,t.typeArguments);for(var r=new e.Map,n=0,i=t.attributes.properties;n<i.length;n++){var a=i[n];if(285!==a.kind){var o=a.name,s=a.initializer;if(r.get(o.escapedText))return mS(o,e.Diagnostics.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(r.set(o.escapedText,!0),s&&286===s.kind&&!s.expression)return mS(s,e.Diagnostics.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}}(t),r=t,0===(J.jsx||0)&&pn(r,e.Diagnostics.Cannot_use_JSX_unless_the_jsx_flag_is_provided),void 0===nh(r)&&X&&pn(r,e.Diagnostics.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist),!$_(t)){var i=Qr&&2===J.jsx?e.Diagnostics.Cannot_find_name_0:void 0,a=un(t),o=n?t.tagName:t,s=void 0;e.isJsxOpeningFragment(t)&&"null"===a||(s=Fn(o,a,111551,i,a,!0)),s&&(s.isReferenced=67108863,2097152&s.flags&&!ci(s)&&ui(s))}if(n){var c=t,l=Iy(c);Uy(l,t),function(t,r,n){if(1===t)(i=ih(n))&&Op(r,i,an,n.tagName,e.Diagnostics.Its_return_type_0_is_not_a_valid_JSX_element,o);else if(0===t)(a=rh(n))&&Op(r,a,an,n.tagName,e.Diagnostics.Its_instance_type_0_is_not_a_valid_JSX_element,o);else{var i=ih(n),a=rh(n);if(!i||!a)return;Op(r,ou([i,a]),an,n.tagName,e.Diagnostics.Its_element_type_0_is_not_a_valid_JSX_element,o)}function o(){var t=e.getTextOfNode(n.tagName);return e.chainDiagnosticMessages(void 0,e.Diagnostics._0_cannot_be_used_as_a_JSX_component,t)}}(sy(c),Bc(l),c)}}function oh(e,t,r){if(524288&e.flags){var n=Us(e);if(n.stringIndexInfo||n.numberIndexInfo&&R_(t)||Js(e,t)||r&&!U_(t))return!0}else if(3145728&e.flags&&sh(e))for(var i=0,a=e.types;i<a.length;i++){if(oh(a[i],t,r))return!0}return!1}function sh(t){return!!(524288&t.flags&&!(512&e.getObjectFlags(t))||67108864&t.flags||1048576&t.flags&&e.some(t.types,sh)||2097152&t.flags&&e.every(t.types,sh))}function ch(t,r){if(function(t){if(t.expression&&e.isCommaSequence(t.expression))mS(t.expression,e.Diagnostics.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}(t),t.expression){var n=fb(t.expression,r);return t.dotDotDotToken&&n!==Ee&&!rf(n)&&pn(t,e.Diagnostics.JSX_spread_child_must_be_an_array_type),n}return we}function lh(t){return t.valueDeclaration?e.getCombinedNodeFlags(t.valueDeclaration):0}function uh(t){if(8192&t.flags||4&e.getCheckFlags(t))return!0;if(e.isInJSFile(t.valueDeclaration)){var r=t.valueDeclaration.parent;return r&&e.isBinaryExpression(r)&&3===e.getAssignmentDeclarationKind(r)}}function dh(t,r,n,i){var a,o=e.getDeclarationModifierFlagsFromSymbol(i),s=158===t.kind?t.right:196===t.kind?t:t.name;if(r){if(V<2&&ph(i))return pn(s,e.Diagnostics.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(128&o)return pn(s,e.Diagnostics.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,la(i),da(Gp(i))),!1}if(128&o&&e.isThisProperty(t)&&ph(i)&&((a=e.getClassLikeDeclarationOfSymbol(Ni(i)))&&function(t){return!!e.findAncestor(t,(function(t){return!!(e.isConstructorDeclaration(t)&&e.nodeIsPresent(t.body)||e.isPropertyDeclaration(t))||!(!e.isClassLike(t)&&!e.isFunctionLikeDeclaration(t))&&"quit"}))}(t)))return pn(s,e.Diagnostics.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,la(i),e.getTextOfIdentifierOrLiteral(a.name)),!1;if(e.isPropertyAccessExpression(t)&&e.isPrivateIdentifier(t.name))return!!e.getContainingClass(t)||(pn(s,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),!1);if(!(24&o))return!0;if(8&o)return!!Gx(t,a=e.getClassLikeDeclarationOfSymbol(Ni(i)))||(pn(s,e.Diagnostics.Property_0_is_private_and_only_accessible_within_class_1,la(i),da(Gp(i))),!1);if(r)return!0;var c=Wx(t,(function(t){var r=Jo(Ai(t));return function(t,r){return Wp(r,(function(r){return!!(16&e.getDeclarationModifierFlagsFromSymbol(r))&&!vo(t,Gp(r))}))?void 0:t}(r,i)?r:void 0}));if(!c){var l=void 0;if(32&o||!(l=function(t){var r=e.getThisContainer(t,!1);return r&&e.isFunctionLike(r)?e.getThisParameter(r):void 0}(t))||!l.type)return pn(s,e.Diagnostics.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,la(i),da(Gp(i)||n)),!1;var u=xd(l.type);c=(262144&u.flags?Ws(u):u).target}return!!(32&o)||(262144&n.flags&&(n=n.isThisType?Ws(n):Qs(n)),!(!n||!vo(n,c))||(pn(s,e.Diagnostics.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1,la(i),da(c)),!1))}function ph(e){return!!Wp(e,(function(e){return!(8192&e.flags)}))}function fh(e,t){return vh(fb(e,t),e)}function mh(e){return!!(98304&(W?wf(e):e.flags))}function gh(e){return mh(e)?Pf(e):e}function _h(t,r){pn(t,32768&r?65536&r?e.Diagnostics.Object_is_possibly_null_or_undefined:e.Diagnostics.Object_is_possibly_undefined:e.Diagnostics.Object_is_possibly_null)}function hh(t,r){pn(t,32768&r?65536&r?e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_undefined:e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_null)}function yh(t,r,n){if(W&&2&t.flags)return pn(r,e.Diagnostics.Object_is_of_type_unknown),we;var i=98304&(W?wf(t):t.flags);if(i){n(r,i);var a=Pf(t);return 229376&a.flags?we:a}return t}function vh(e,t){return yh(e,t,_h)}function bh(t,r){var n=vh(t,r);return n!==we&&16384&n.flags&&pn(r,e.Diagnostics.Object_is_possibly_undefined),n}function kh(r,n){return 32!==n&&function(r){if(!t.getTagNameNeededCheckByFile)return;var n=e.getSourceFileOfNode(r),i=function(t){var r,n=t.name,i=fh(t.expression),a=e.getAssignmentTargetKind(t),o=ac(0!==a||Eh(t)?Hf(i):i);if(e.isPrivateIdentifier(n)){var s=Sh(n.escapedText,n);r=s?Dh(i,s):void 0}else if(!(r=gc(o,n.escapedText))){var c=e.getEtsComponentExpressionInnerExpressionStatementNode(t)||e.getRootEtsComponentInnerCallExpressionNode(t);c&&(r=function(t,r,n){var i,a,o,s,c,l=e.getSourceFileOfNode(t).locals;if(null==l?void 0:l.has(n.escapedText)){var u=null==l?void 0:l.get(n.escapedText),d=e.isIdentifier(r)?r.escapedText:e.isIdentifier(t.expression)?t.expression.escapedText:void 0;e.getEtsExtendDecoratorsComponentNames(null===(i=null==u?void 0:u.valueDeclaration)||void 0===i?void 0:i.decorators,J).find((function(e){return e===d}))&&(c=u),e.hasEtsStylesDecoratorNames(null===(a=null==u?void 0:u.valueDeclaration)||void 0===a?void 0:a.decorators,J)&&(c=u)}var p=null===(o=e.getContainingStruct(t))||void 0===o?void 0:o.symbol.members;if(null==p?void 0:p.has(n.escapedText)){var f=null==p?void 0:p.get(n.escapedText);e.hasEtsStylesDecoratorNames(null===(s=null==f?void 0:f.valueDeclaration)||void 0===s?void 0:s.decorators,J)&&(c=f)}return c}(t,c,n))}return r}(r);if(!i||!i.valueDeclaration)return;var a=e.getSourceFileOfNode(i.valueDeclaration);if(!a)return;var o=t.getTagNameNeededCheckByFile(n.fileName,a.fileName);if(!o.needCheck)return;e.isIdentifier(r.name)&&jy(i.getJsDocTags(),r.name,n,o.checkConfig)}(r),32&r.flags?function(e,t){var r=fb(e.expression,t),n=Mf(r,e.expression);return Rf(Th(e,e.expression,vh(n,e.expression),e.name),e,n!==r)}(r,n):Th(r,r.expression,fh(r.expression,n),r.name)}function xh(e){return Th(e,e.left,fh(e.left),e.right)}function Eh(t){for(;208===t.parent.kind;)t=t.parent;return e.isCallOrNewExpression(t.parent)&&t.parent.expression===t}function Sh(t,r){for(var n=e.getContainingClass(r);n;n=e.getContainingClass(n)){var i=n.symbol,a=e.getSymbolNameForPrivateIdentifier(i,t),o=i.members&&i.members.get(a)||i.exports&&i.exports.get(a);if(o)return o}}function Dh(e,t){return gc(e,t.escapedName)}function wh(t,r){return(qa(r)||e.isThisProperty(t)&&Ja(r))&&e.getThisContainer(t,!0)===Va(r)}function Th(r,n,i,a){var o,s,c,u,d=Cn(n).resolvedSymbol,p=e.getAssignmentTargetKind(r),f=ac(0!==p||Eh(r)?Hf(i):i);e.isPrivateIdentifier(a)&&BE(r,524288);var m,g,_=Pa(f)||f===Ke;if(e.isPrivateIdentifier(a)){var h=Sh(a.escapedText,a);if(_){if(h)return f;if(!e.getContainingClass(a))return mS(a,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),Ee}if(!(m=h?Dh(i,h):void 0)&&function(t,r,n){var i,a=Hs(t);a&&e.forEach(a,(function(t){var n=t.valueDeclaration;if(n&&e.isNamedDeclaration(n)&&e.isPrivateIdentifier(n.name)&&n.name.escapedText===r.escapedText)return i=t,!0}));var o=Ln(r);if(i){var s=i.valueDeclaration,c=e.getContainingClass(s);if(e.Debug.assert(!!c),n){var u=n.valueDeclaration,d=e.getContainingClass(u);if(e.Debug.assert(!!d),e.findAncestor(d,(function(e){return c===e}))){var p=pn(r,e.Diagnostics.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,o,da(t));return e.addRelatedInfo(p,e.createDiagnosticForNode(u,e.Diagnostics.The_shadowing_declaration_of_0_is_defined_here,o),e.createDiagnosticForNode(s,e.Diagnostics.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,o)),!0}}return pn(r,e.Diagnostics.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,o,Ln(c.name||l)),!0}return!1}(i,a,h))return we}else{if(_)return e.isIdentifier(n)&&d&&Jg(d,r),f;if(!(m=gc(f,a.escapedText))){var y=e.getEtsComponentExpressionInnerCallExpressionNode(r)||e.getRootEtsComponentInnerCallExpressionNode(r),v=e.getSourceFileOfNode(r).locals;if(y&&(null==v?void 0:v.has(a.escapedText))){var b=null==v?void 0:v.get(a.escapedText),k=78===y.expression.kind?y.expression.escapedText:void 0;e.getEtsExtendDecoratorComponentNames(null===(o=null==b?void 0:b.valueDeclaration)||void 0===o?void 0:o.decorators,J).find((function(e){return e===k}))&&(m=b),e.hasEtsStylesDecoratorNames(null===(s=null==b?void 0:b.valueDeclaration)||void 0===s?void 0:s.decorators,J)&&(m=b)}var x=null===(c=e.getContainingStruct(r))||void 0===c?void 0:c.symbol.members;if(y&&(null==x?void 0:x.has(a.escapedText))){var E=null==x?void 0:x.get(a.escapedText);e.hasEtsStylesDecoratorNames(null===(u=null==E?void 0:E.valueDeclaration)||void 0===u?void 0:u.decorators,J)&&(m=E)}}}if(e.isIdentifier(n)&&d&&(J.isolatedModules||!m||!gE(m)||e.shouldPreserveConstEnums(J)&&qg(r))&&Jg(d,r),m){if(134217728&lh(m)&&Nu(r,m)&&hn(a,m.declarations,a.escapedText),function(r,n,i){var a,o,s=r.valueDeclaration;if(!s||e.getSourceFileOfNode(n).isDeclarationFile)return;var c=e.idText(i);if(!function(t){return!!e.findAncestor(t,(function(t){switch(t.kind){case 164:return!0;case 291:case 166:case 168:case 169:case 293:case 159:case 230:case 286:case 283:case 284:case 285:case 278:case 225:case 289:return!1;default:return!e.isExpressionNode(t)&&"quit"}}))}(n)||e.isAccessExpression(n)&&e.isAccessExpression(n.expression)||Pn(s,i)||function(e){if(!(32&e.parent.flags))return!1;var t=_o(e.parent);for(;;){if(!(t=t.symbol&&Ah(t)))return!1;var r=gc(t,e.escapedName);if(r&&r.valueDeclaration)return!0}}(r))254!==s.kind||174===n.parent.kind||8388608&s.flags||Pn(s,i)||(o=pn(i,e.Diagnostics.Class_0_used_before_its_declaration,c));else{var l=!1;(null==r?void 0:r.valueDeclaration.decorators)&&(l=null===(a=t.getCompilerOptions().ets)||void 0===a?void 0:a.propertyDecorators.some((function(t){var n;return null===(n=null==r?void 0:r.valueDeclaration.decorators)||void 0===n?void 0:n.some((function(r){return!(!e.isIdentifier(r.expression)||t.name!==r.expression.escapedText.toString()||t.needInitialization)}))}))),l||(o=pn(i,e.Diagnostics.Property_0_is_used_before_its_initialization,c))}o&&e.addRelatedInfo(o,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_here,c))}(m,r,a),Lh(m,r,108===n.kind),Cn(r).resolvedSymbol=m,dh(r,106===n.kind,f,m),Pv(r,m,p))return pn(a,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,e.idText(a)),we;g=wh(r,m)?Se:Ug(_o(m),r)}else{var S=e.isPrivateIdentifier(a)||0!==p&&Ru(i)&&!Lu(i)?void 0:bc(f,0);if(!S||!S.type)return Cu(i)?Ee:i.symbol===ae?(ae.exports.has(a.escapedText)&&418&ae.exports.get(a.escapedText).flags?pn(a,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.unescapeLeadingUnderscores(a.escapedText),da(i)):X&&pn(a,e.Diagnostics.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature,da(i)),Ee):(a.escapedText&&!Bn(r)&&function(t,r){var n,i;if(!e.isPrivateIdentifier(t)&&1048576&r.flags&&!(131068&r.flags))for(var a=0,o=r.types;a<o.length;a++){var s=o[a];if(!gc(s,t.escapedText)&&!bc(s,0)){n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.declarationNameToString(t),da(s));break}}if(Nh(t.escapedText,r)){var c=e.declarationNameToString(t),l=da(r);n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,c,l,l+"."+c)}else{var u=zb(r);if(u&&gc(u,t.escapedText))n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.declarationNameToString(t),da(r)),i=e.createDiagnosticForNode(t,e.Diagnostics.Did_you_forget_to_use_await);else{var d=e.declarationNameToString(t),p=da(r),f=function(t,r){var n=ac(r).symbol;if(!n)return;for(var i=e.getScriptTargetFeatures(),a=e.getOwnKeys(i),o=0,s=a;o<s.length;o++){var c=s[o],l=i[c][e.symbolName(n)];if(void 0!==l&&e.contains(l,t))return c}}(d,r);if(void 0!==f)n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later,d,p,f);else{var m=Ph(t,r);if(void 0!==m){var g=e.symbolName(m);n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,d,p,g),i=m.valueDeclaration&&e.createDiagnosticForNode(m.valueDeclaration,e.Diagnostics._0_is_declared_here,g)}else n=e.chainDiagnosticMessages(mc(n,r),e.Diagnostics.Property_0_does_not_exist_on_type_1,d,p)}}}var _=e.createDiagnosticForNodeFromMessageChain(t,n);i&&e.addRelatedInfo(_,i);Qr.add(_)}(a,Lu(i)?f:i),we);S.isReadonly&&(e.isAssignmentTarget(r)||e.isDeleteTarget(r))&&pn(r,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,da(f)),g=J.noUncheckedIndexedAccess&&!e.isAssignmentTarget(r)?ou([S.type,Ne]):S.type,J.noPropertyAccessFromIndexSignature&&e.isPropertyAccessExpression(r)&&pn(a,e.Diagnostics.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0,e.unescapeLeadingUnderscores(a.escapedText))}return Ch(r,m,g,a)}function Ch(t,r,n,i){var a=e.getAssignmentTargetKind(t);if(1===a||r&&!(98311&r.flags)&&!(8192&r.flags&&1048576&n.flags))return n;if(n===Se)return Ka(t,r);var o=!1;if(W&&Y&&e.isAccessExpression(t)&&108===t.expression.kind){var s=r&&r.valueDeclaration;if(s&&hx(s)){var c=Rg(t);167!==c.kind||c.parent!==s.parent||8388608&s.flags||(o=!0)}}else W&&r&&r.valueDeclaration&&e.isPropertyAccessExpression(r.valueDeclaration)&&e.getAssignmentDeclarationPropertyAccessKind(r.valueDeclaration)&&Rg(t)===Rg(r.valueDeclaration)&&(o=!0);var l=Og(t,n,o?Nf(n):n);return o&&!(32768&wf(n))&&32768&wf(l)?(pn(i,e.Diagnostics.Property_0_is_used_before_being_assigned,la(r)),n):a?mf(l):l}function Ah(e){var t=Po(e);if(0!==t.length)return fu(t)}function Nh(t,r){var n=r.symbol&&gc(_o(r.symbol),t);return void 0!==n&&n.valueDeclaration&&e.hasSyntacticModifier(n.valueDeclaration,32)}function Ph(t,r){return Mh(e.isString(t)?t:e.idText(t),Hs(r),111551)}function Ih(t,r){var n=e.isString(t)?t:e.idText(t),i=Hs(r),a="for"===n?e.find(i,(function(t){return"htmlFor"===e.symbolName(t)})):"class"===n?e.find(i,(function(t){return"className"===e.symbolName(t)})):void 0;return null!=a?a:Mh(n,i,111551)}function Fh(t,r){var n=Ph(t,r);return n&&e.symbolName(n)}function Oh(t,r,n){e.Debug.assert(void 0!==r,"outername should always be defined");var i=On(t,r,n,void 0,r,!1,!1,(function(t,n,i,a){return e.Debug.assertEqual(r,n,"name should equal outerName"),Nn(t,n,i,a)||Mh(e.unescapeLeadingUnderscores(n),e.arrayFrom(t.values()),i)}));return i}function Rh(t,r){return r.exports&&Mh(e.idText(t),xi(r),2623475)}function Mh(t,r,n){return e.getSpellingSuggestion(t,r,(function(t){var r=e.symbolName(t);if(e.startsWith(r,'"'))return;if(t.flags&n)return r;if(2097152&t.flags){var i=function(e){if(Tn(e).target!==xe)return ai(e)}(t);if(i&&i.flags&n)return r}return}))}function Lh(t,r,n){var i=t&&106500&t.flags&&t.valueDeclaration;if(i){var a=e.hasEffectiveModifier(i,8),o=e.isNamedDeclaration(t.valueDeclaration)&&e.isPrivateIdentifier(t.valueDeclaration.name);if((a||o)&&(!r||!e.isWriteOnlyAccess(r)||65536&t.flags)){if(n){var s=e.findAncestor(r,e.isFunctionLikeDeclaration);if(s&&s.symbol===t)return}(1&e.getCheckFlags(t)?Tn(t).target:t).isReferenced=67108863}}}function jh(t,r,n,i){if(i===we||Pa(i))return!0;var a=gc(i,n);if(a){if(e.isPropertyAccessExpression(t)&&a.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(a.valueDeclaration)){var o=e.getContainingClass(a.valueDeclaration);return!e.isOptionalChain(t)&&!!e.findAncestor(t,(function(e){return e===o}))}return dh(t,r,i,a)}return e.isInJSFile(t)&&0!=(1048576&i.flags)&&i.types.some((function(e){return jh(t,r,n,e)}))}function Bh(t){var r=t.initializer;if(252===r.kind){var n=r.declarations[0];if(n&&!e.isBindingPattern(n.name))return Ai(n)}else if(78===r.kind)return Am(r)}function zh(e){return 32&e.flags?function(e){var t=fb(e.expression),r=Mf(t,e.expression);return Rf(Uh(e,vh(r,e.expression)),e,r!==t)}(e):Uh(e,fh(e.expression))}function Uh(t,r){var n=0!==e.getAssignmentTargetKind(t)||Eh(t)?Hf(r):r,i=t.argumentExpression,a=fb(i);if(n===we||n===Ke)return n;if(jv(n)&&!e.isStringLiteralLike(i))return pn(i,e.Diagnostics.A_const_enum_member_can_only_be_accessed_using_a_string_literal),we;var o=function(t){var r,n=e.skipParentheses(t);if(78===n.kind){var i=Am(n);if(3&i.flags)for(var a=t,o=t.parent;o;){if(240===o.kind&&a===o.statement&&Bh(o)===i&&kc(r=ub(o.expression),1)&&!kc(r,0))return!0;a=o,o=o.parent}}return!1}(i)?Me:a,s=Vu(n,o,void 0,t,16|(e.isAssignmentTarget(t)?2|(Ru(n)&&!Lu(n)?1:0):0))||we;return Fb(Ch(t,s.symbol,s,i),t)}function qh(t,r,n){if(r===we)return!1;if(!e.isWellKnownSymbolSyntactically(t))return!1;if(0==(12288&r.flags))return n&&pn(t,e.Diagnostics.A_computed_property_name_of_the_form_0_must_be_of_type_symbol,e.getTextOfNode(t)),!1;var i=t.expression,a=Am(i);if(!a)return!1;var o=Nl(!0);return!!o&&(a===o||(n&&pn(i,e.Diagnostics.Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object),!1))}function Jh(t){return e.isCallOrNewExpression(t)||e.isTaggedTemplateExpression(t)||e.isJsxOpeningLikeElement(t)}function Vh(t){return Jh(t)&&e.forEach(t.typeArguments,Mx),206===t.kind?fb(t.template):e.isJsxOpeningLikeElement(t)?fb(t.attributes):162!==t.kind&&e.forEach(t.arguments,(function(e){fb(e)})),lr}function Hh(e){return Vh(e),ur}function Kh(e){return!!e&&(222===e.kind||229===e.kind&&e.isSpread)}function Wh(t){return e.findIndex(t,Kh)}function Gh(e){return!!(16384&e.flags)}function $h(e){return!!(49155&e.flags)}function Yh(t,r,n,i){var a;void 0===i&&(i=!1);var o=!1,s=ov(n),c=sv(n);if(206===t.kind)if(a=r.length,220===t.template.kind){var l=e.last(t.template.templateSpans);o=e.nodeIsMissing(l.literal)||!!l.literal.isUnterminated}else{var u=t.template;e.Debug.assert(14===u.kind),o=!!u.isUnterminated}else if(162===t.kind)a=py(t,n);else if(e.isJsxOpeningLikeElement(t)){if(o=t.attributes.end===t.end)return!0;a=0===c?r.length:1,s=0===r.length?s:1,c=Math.min(c,1)}else{if(!t.arguments)return e.Debug.assert(205===t.kind),0===sv(n);a=i?r.length+1:r.length,o=t.arguments.end===t.end;var d=Wh(r);if(d>=0)return d>=sv(n)&&(cv(n)||d<ov(n))}if(!cv(n)&&a>s)return!1;if(o||a>=c)return!0;for(var p=a;p<c;p++){if(131072&ug(nv(n,p),e.isInJSFile(t)&&!W?$h:Gh).flags)return!1}return!0}function Xh(t,r,n){var i=n?1:e.length(t.typeParameters),a=n?1:Nc(t.typeParameters);return!e.some(r)||r.length>=a&&r.length<=i}function Qh(e){return ey(e,0,!1)}function Zh(e){return ey(e,0,!1)||ey(e,1,!1)}function ey(e,t,r){if(524288&e.flags){var n=Us(e);if(r||0===n.properties.length&&!n.stringIndexInfo&&!n.numberIndexInfo){if(0===t&&1===n.callSignatures.length&&0===n.constructSignatures.length)return n.callSignatures[0];if(1===t&&1===n.constructSignatures.length&&0===n.callSignatures.length)return n.constructSignatures[0]}}}function ty(t,r,n,i){var a=Qf(t.typeParameters,t,0,i),o=lv(r),s=n&&(o&&262144&o.flags?n.nonFixingMapper:n.mapper);return Yf(s?jd(r,s):r,t,(function(e,t){ym(a.inferences,e,t)})),n||Xf(r,t,(function(e,t){ym(a.inferences,e,t,64)})),Jc(t,Tm(a),e.isInJSFile(r.declaration))}function ry(t){if(!t)return Ve;var r=fb(t);return e.isOptionalChainRoot(t.parent)?Pf(r):e.isOptionalChain(t.parent)?Of(r):r}function ny(t,r,n,i,a){if(e.isJsxOpeningLikeElement(t))return function(e,t,r,n){var i=S_(t,e),a=Gv(e.attributes,i,n,r);return ym(n.inferences,a,i),Tm(n)}(t,r,i,a);if(162!==t.kind){var o=x_(t,e.every(r.typeParameters,(function(e){return!!nc(e)}))?8:0);if(o){var s=E_(t),c=im(function(t,r){return void 0===r&&(r=0),t&&Zf(e.map(t.inferences,nm),t.signature,t.flags|r,t.compareTypes)}(s,1)),l=Wd(o,c),u=Qh(l),d=u&&u.typeParameters?$c(Vc(u,u.typeParameters)):l,p=Bc(r);ym(a.inferences,d,p,64);var f=Qf(r.typeParameters,r,a.flags),m=Wd(o,s&&s.returnMapper);ym(f.inferences,m,p),a.returnMapper=e.some(f.inferences,ab)?im(function(t){var r=e.filter(t.inferences,ab);return r.length?Zf(e.map(r,nm),t.signature,t.flags,t.compareTypes):void 0}(f)):void 0}}var g=uv(r),_=g?Math.min(ov(r)-1,n.length):n.length;if(g&&262144&g.flags){var h=e.find(a.inferences,(function(e){return e.typeParameter===g}));h&&(h.impliedArity=e.findIndex(n,Kh,_)<0?n.length-_:void 0)}var y=Lc(r);if(y){var v=ly(t);ym(a.inferences,ry(v),y)}for(var b=0;b<_;b++){var k=n[b];if(224!==k.kind){var x=nv(r,b),E=Gv(k,x,a,i);ym(a.inferences,E,x)}}if(g){var S=ay(n,_,n.length,g,a,i);ym(a.inferences,S,g)}return Tm(a)}function iy(e){return 1048576&e.flags?pg(e,iy):1&e.flags||af(Qs(e)||e)?e:vf(e)?Hl(ll(e),e.target.elementFlags,!1,e.target.labeledElementDeclarations):Hl([e],[8])}function ay(t,r,n,i,a,o){if(r>=n-1&&Kh(d=t[n-1]))return iy(229===d.kind?d.type:Gv(d.expression,i,a,o));for(var s=[],c=[],l=[],u=r;u<n;u++){var d;if(Kh(d=t[u])){var p=229===d.kind?d.type:fb(d.expression);sf(p)?(s.push(p),c.push(8)):(s.push(Fk(33,p,Ne,222===d.kind?d.expression:d)),c.push(4))}else{var f=qu(i,hd(u-r)),m=Gv(d,f,a,o),g=Rv(f,406978556);s.push(g?gd(m):gf(m)),c.push(1)}229===d.kind&&d.tupleNameSource&&l.push(d.tupleNameSource)}return Hl(s,c,!1,e.length(l)===e.length(s)?l:void 0)}function oy(t,r,n,i){for(var a,o=e.isInJSFile(t.declaration),s=t.typeParameters,c=Pc(e.map(r,xd),s,Nc(s),o),l=0;l<r.length;l++){e.Debug.assert(void 0!==s[l],"Should not call checkTypeArguments with too many type arguments");var u=Ws(s[l]);if(u){var d=n&&i?function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1)}:void 0,p=i||e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1;a||(a=Td(s,c));var f=c[l];if(!pp(f,ls(Wd(u,a),f),n?r[l]:void 0,p,d))return}}return c}function sy(t){if(q_(t.tagName))return 2;var r=ac(fb(t.tagName));return e.length(hc(r,1))?0:e.length(hc(r,0))?1:2}function cy(t,r,n,i,a,o,s){var c={errors:void 0,skipLogging:!0};if(e.isJsxOpeningLikeElement(t))return function(t,r,n,i,a,o,s){var c=S_(r,t),l=Gv(t.attributes,c,void 0,i);return function(){var r;if($_(t))return!0;var n=e.isJsxOpeningElement(t)||e.isJsxSelfClosingElement(t)&&!q_(t.tagName)?fb(t.tagName):void 0;if(!n)return!0;var i=hc(n,0);if(!e.length(i))return!0;var o=ME(t);if(!o)return!0;var c=fi(o,111551,!0,!1,t);if(!c)return!0;var l=hc(_o(c),0);if(!e.length(l))return!0;for(var u=!1,d=0,p=0,f=l;p<f.length;p++){var m=hc(nv(f[p],0),0);if(e.length(m))for(var g=0,_=m;g<_.length;g++){var h=_[g];if(u=!0,cv(h))return!0;var y=ov(h);y>d&&(d=y)}}if(!u)return!0;for(var v=1/0,b=0,k=i;b<k.length;b++){var x=sv(k[b]);x<v&&(v=x)}if(v<=d)return!0;if(a){var E=e.createDiagnosticForNode(t.tagName,e.Diagnostics.Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3,e.entityNameToString(t.tagName),v,e.entityNameToString(o),d),S=null===(r=Xx(t.tagName))||void 0===r?void 0:r.valueDeclaration;S&&e.addRelatedInfo(E,e.createDiagnosticForNode(S,e.Diagnostics._0_is_declared_here,e.entityNameToString(t.tagName))),s&&s.skipLogging&&(s.errors||(s.errors=[])).push(E),s.skipLogging||Qr.add(E)}return!1}()&&mp(l,c,n,a?t.tagName:void 0,t.attributes,void 0,o,s)}(t,n,i,a,o,s,c)?void 0:(e.Debug.assert(!o||!!c.errors,"jsx should have errors when reporting errors"),c.errors||e.emptyArray);var l=Lc(n);if(l&&l!==Ve&&205!==t.kind){var u=ly(t),d=ry(u),p=o?u||t:void 0,f=e.Diagnostics.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1;if(!Op(d,l,i,p,f,s,c))return e.Debug.assert(!o||!!c.errors,"this parameter should have errors when reporting errors"),c.errors||e.emptyArray}for(var m=e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1,g=uv(n),_=g?Math.min(ov(n)-1,r.length):r.length,h=0;h<_;h++){var y=r[h];if(224!==y.kind){var v=nv(n,h),b=Gv(y,v,void 0,a),k=4&a?Bf(b):b;if(!mp(k,v,i,o?y:void 0,y,m,s,c))return e.Debug.assert(!o||!!c.errors,"parameter should have errors when reporting errors"),S(y,k,v),c.errors||e.emptyArray}}if(g){var x=ay(r,_,r.length,g,void 0,a),E=r.length-_;p=o?0===E?t:1===E?r[_]:e.setTextRangePosEnd(uy(t,x),r[_].pos,r[r.length-1].end):void 0;if(!Op(x,g,i,p,m,void 0,c))return e.Debug.assert(!o||!!c.errors,"rest parameter should have errors when reporting errors"),S(p,x,g),c.errors||e.emptyArray}return;function S(t,r,n){if(t&&o&&c.errors&&c.errors.length){if(Bb(n))return;var a=Bb(r);a&&Pp(a,n,i)&&e.addRelatedInfo(c.errors[0],e.createDiagnosticForNode(t,e.Diagnostics.Did_you_forget_to_use_await))}}}function ly(t){if(204===t.kind){var r=e.skipOuterExpressions(t.expression);if(e.isAccessExpression(r))return r.expression}}function uy(t,r,n,i){var a=e.parseNodeFactory.createSyntheticExpression(r,n,i);return e.setTextRange(a,t),e.setParent(a,t),a}function dy(t){if(206===t.kind){var r=t.template,n=[uy(r,Yt||(Yt=Al("TemplateStringsArray",0,!0))||nt)];return 220===r.kind&&e.forEach(r.templateSpans,(function(e){n.push(e.expression)})),n}if(162===t.kind)return function(t){var r=t.parent,n=t.expression;switch(r.kind){case 254:case 223:case 255:return[uy(n,_o(Ai(r)))];case 161:var i=r.parent;return[uy(n,167===r.parent.kind?_o(Ai(i)):we),uy(n,Ee),uy(n,Me)];case 164:case 166:case 168:case 169:var a=164!==r.kind&&0!==V;return[uy(n,tE(r)),uy(n,rE(r)),uy(n,a?Ll(Qx(r)):Ee)];case 253:if(e.isEtsFunctionDecorators(e.getNameOfDecorator(t),J)){var o=Ai(n);return o?[uy(n,_o(o))]:[]}return e.Debug.fail()}return e.Debug.fail()}(t);if(e.isJsxOpeningLikeElement(t))return t.attributes.properties.length>0||e.isJsxOpeningElement(t)&&t.parent.children.length>0?[t.attributes]:e.emptyArray;var i=t.arguments||e.emptyArray,a=Wh(i);if(a>=0){for(var o=i.slice(0,a),s=function(t){var r=i[t],n=222===r.kind&&(Dr?fb(r.expression):$v(r.expression));n&&vf(n)?e.forEach(ll(n),(function(e,t){var i,a=n.target.elementFlags[t],s=uy(r,4&a?jl(e):e,!!(12&a),null===(i=n.target.labeledElementDeclarations)||void 0===i?void 0:i[t]);o.push(s)})):o.push(r)},c=a;c<i.length;c++)s(c);return o}return i}function py(t,r){switch(t.parent.kind){case 254:case 223:case 255:return 1;case 164:return 2;case 166:case 168:case 169:return 0===V||r.parameters.length<=2?2:3;case 161:return 3;case 253:return e.isEtsFunctionDecorators(e.getNameOfDecorator(t),J)?e.isCallExpression(t.expression)?1:0:e.Debug.fail();default:return e.Debug.fail()}}function fy(t,r){var n,i,a=e.getSourceFileOfNode(t);if(e.isPropertyAccessExpression(t.expression)){var o=e.getErrorSpanForNode(a,t.expression.name);n=o.start,i=r?o.length:t.end-n}else{var s=e.getErrorSpanForNode(a,t.expression);n=s.start,i=r?s.length:t.end-n}return{start:n,length:i,sourceFile:a}}function my(t,r,n,i,a,o){if(e.isCallExpression(t)){var s=fy(t),c=s.sourceFile,l=s.start,u=s.length;return e.createFileDiagnostic(c,l,u,r,n,i,a,o)}return e.createDiagnosticForNode(t,r,n,i,a,o)}function gy(t,r,n){for(var i,a=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,s=Number.NEGATIVE_INFINITY,c=Number.POSITIVE_INFINITY,l=n.length,u=0,d=r;u<d.length;u++){var p=d[u],f=sv(p),m=ov(p);f<l&&f>s&&(s=f),l<m&&m<c&&(c=m),f<a&&(a=f,i=p),o=Math.max(o,m)}var g,_,h=e.some(r,cv),y=h?a:a<o?a+"-"+o:a,v=Wh(n)>-1;l<=o&&v&&l--;var b=h||v?h&&v?e.Diagnostics.Expected_at_least_0_arguments_but_got_1_or_more:h?e.Diagnostics.Expected_at_least_0_arguments_but_got_1:e.Diagnostics.Expected_0_arguments_but_got_1_or_more:1===y&&0===l&&function(t){if(!e.isCallExpression(t)||!e.isIdentifier(t.expression))return!1;var r=Fn(t.expression,t.expression.escapedText,111551,void 0,void 0,!1),n=null==r?void 0:r.valueDeclaration;if(!(n&&e.isParameter(n)&&T_(n.parent)&&e.isNewExpression(n.parent.parent)&&e.isIdentifier(n.parent.parent.expression)))return!1;var i=Fl(!1);return!!i&&Xx(n.parent.parent.expression,!0)===i}(t)?e.Diagnostics.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:e.Diagnostics.Expected_0_arguments_but_got_1;if(i&&sv(i)>l&&i.declaration){var k=i.declaration.parameters[i.thisParameter?l+1:l];k&&(_=e.createDiagnosticForNode(k,e.isBindingPattern(k.name)?e.Diagnostics.An_argument_matching_this_binding_pattern_was_not_provided:e.isRestParameter(k)?e.Diagnostics.Arguments_for_the_rest_parameter_0_were_not_provided:e.Diagnostics.An_argument_for_0_was_not_provided,k.name?e.isBindingPattern(k.name)?void 0:e.idText(e.getFirstIdentifier(k.name)):l))}if(a<l&&l<o)return my(t,e.Diagnostics.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments,l,s,c);if(!v&&l<a){var x=my(t,b,y,l);return _?e.addRelatedInfo(x,_):x}if(h||v){if(g=e.factory.createNodeArray(n),v&&l){var E=e.elementAt(n,Wh(n)+1)||void 0;g=e.factory.createNodeArray(n.slice(o>l&&E?n.indexOf(E):Math.min(o,n.length-1)))}}else g=e.factory.createNodeArray(n.slice(o));var S=e.first(g).pos,D=e.last(g).end;D===S&&D++,e.setTextRangePosEnd(g,S,D);var w=e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),g,b,y,l);return _?e.addRelatedInfo(w,_):w}function _y(t,n,a,o,s,c){var l,u,d=206===t.kind,p=162===t.kind,f=e.isJsxOpeningLikeElement(t),m=211===t.kind,g=!a&&r;p||(l=t.typeArguments,u=null==l?void 0:l.some((function(e){return e.virtual})),(d||f||106!==t.expression.kind)&&e.forEach(l,Mx),m&&32!==o&&Mx(t.body));var _=a||[];if(function(t,r,n){var i,a,o,s,c=0,l=-1;e.Debug.assert(!r.length);for(var u=0,d=t;u<d.length;u++){var p=d[u],f=p.declaration&&Ai(p.declaration),m=p.declaration&&p.declaration.parent;a&&f!==a?(o=c=r.length,i=m):i&&m===i?o+=1:(i=m,o=c),a=f,q(p)?(s=++l,c++):s=o,r.splice(s,0,n?ms(p,n):p)}}(n,_,s),!_.length)return g&&Qr.add(my(t,e.Diagnostics.Call_target_does_not_contain_any_signatures)),Hh(t);var h,y,v,b,k=dy(t),x=1===_.length&&!_[0].typeParameters,E=p||x||!e.some(k,Qd)?0:4,S=!!(16&o)&&204===t.kind&&t.arguments.hasTrailingComma;if(_.length>1&&(b=G(_,rn,x,S)),b||(b=G(_,an,x,S)),b)return b;if(g)if(h)if(1===h.length||h.length>3){var D,w=h[h.length-1];h.length>3&&(D=e.chainDiagnosticMessages(D,e.Diagnostics.The_last_overload_gave_the_following_error),D=e.chainDiagnosticMessages(D,e.Diagnostics.No_overload_matches_this_call));var T=cy(t,k,w,an,0,!0,(function(){return D}));if(T)for(var C=0,A=T;C<A.length;C++){var N=A[C];w.declaration&&h.length>3&&e.addRelatedInfo(N,e.createDiagnosticForNode(w.declaration,e.Diagnostics.The_last_overload_is_declared_here)),W(w,N),Qr.add(N)}else e.Debug.fail("No error for last overload signature")}else{for(var P=[],I=0,F=Number.MAX_VALUE,O=0,R=0,M=function(r){var n=cy(t,k,r,an,0,!0,(function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.Overload_0_of_1_2_gave_the_following_error,R+1,_.length,ua(r))}));n?(n.length<=F&&(F=n.length,O=R),I=Math.max(I,n.length),P.push(n)):e.Debug.fail("No error for 3 or fewer overload signatures"),R++},L=0,j=h;L<j.length;L++){M(j[L])}var B=I>1?P[O]:e.flatten(P);e.Debug.assert(B.length>0,"No errors reported for 3 or fewer overload signatures");var z=e.chainDiagnosticMessages(e.map(B,(function(e){return"string"==typeof e.messageText?e:e.messageText})),e.Diagnostics.No_overload_matches_this_call),J=i([],e.flatMap(B,(function(e){return e.relatedInformation}))),V=void 0;if(e.every(B,(function(e){return e.start===B[0].start&&e.length===B[0].length&&e.file===B[0].file}))){var H=B[0];V={file:H.file,start:H.start,length:H.length,code:z.code,category:z.category,messageText:z,relatedInformation:J}}else V=e.createDiagnosticForNodeFromMessageChain(t,z,J);W(h[0],V),Qr.add(V)}else if(y)Qr.add(gy(t,[y],k));else if(v)oy(v,t.typeArguments,!0,c);else{var K=e.filter(n,(function(e){return Xh(e,l,u)}));0===K.length?Qr.add(function(t,r,n){var i=n.length;if(1===r.length){var a=Nc((d=r[0]).typeParameters),o=e.length(d.typeParameters);return e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),n,e.Diagnostics.Expected_0_type_arguments_but_got_1,a<o?a+"-"+o:a,i)}for(var s=-1/0,c=1/0,l=0,u=r;l<u.length;l++){var d,p=Nc((d=u[l]).typeParameters);o=e.length(d.typeParameters),p>i?c=Math.min(c,p):o<i&&(s=Math.max(s,o))}return s!==-1/0&&c!==1/0?e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),n,e.Diagnostics.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments,i,s,c):e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),n,e.Diagnostics.Expected_0_type_arguments_but_got_1,s===-1/0?c:s,i)}(t,n,l)):p?c&&Qr.add(my(t,c)):Qr.add(gy(t,K,k))}return function(t,r,n,i){return e.Debug.assert(r.length>0),jx(t),i||1===r.length||r.some((function(e){return!!e.typeParameters}))?function(t,r,n){var i=function(e,t){for(var r=-1,n=-1,i=0;i<e.length;i++){var a=e[i],o=ov(a);if(cv(a)||o>=t)return i;o>n&&(n=o,r=i)}return r}(r,void 0===oe?n.length:oe),a=r[i],o=a.typeParameters;if(!o)return a;var s=Jh(t)?t.typeArguments:void 0,c=s?Hc(a,function(e,t,r){var n=e.map(Qx);for(;n.length>t.length;)n.pop();for(;n.length<t.length;)n.push(Ws(t[n.length])||wm(r));return n}(s,o,e.isInJSFile(t))):function(t,r,n,i){var a=Qf(r,n,e.isInJSFile(t)?2:0),o=ny(t,n,i,12,a);return Hc(n,o)}(t,o,a,n);return r[i]=c,c}(t,r,n):function(t){var r,n=e.mapDefined(t,(function(e){return e.thisParameter}));n.length&&(r=yy(n,n.map(Qy)));for(var i=e.minAndMax(t,hy),a=i.min,o=i.max,s=[],c=function(r){var n=e.mapDefined(t,(function(t){return U(t)?r<t.parameters.length-1?t.parameters[r]:e.last(t.parameters):r<t.parameters.length?t.parameters[r]:void 0}));e.Debug.assert(0!==n.length),s.push(yy(n,e.mapDefined(t,(function(e){return iv(e,r)}))))},l=0;l<o;l++)c(l);var u=e.mapDefined(t,(function(t){return U(t)?e.last(t.parameters):void 0})),d=0;if(0!==u.length){var p=jl(ou(e.mapDefined(t,qc),2));s.push(vy(u,p)),d|=1}t.some(q)&&(d|=2);return ds(t[0].declaration,void 0,r,s,fu(t.map(Bc)),void 0,a,d)}(r)}(t,_,k,!!a);function W(t,r){var n,i,a=h,o=y,s=v,c=(null===(i=null===(n=t.declaration)||void 0===n?void 0:n.symbol)||void 0===i?void 0:i.declarations)||e.emptyArray,l=c.length>1?e.find(c,(function(t){return e.isFunctionLikeDeclaration(t)&&e.nodeIsPresent(t.body)})):void 0;if(l){var u=Ic(l),d=!u.typeParameters;G([u],an,d)&&e.addRelatedInfo(r,e.createDiagnosticForNode(l,e.Diagnostics.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}h=a,y=o,v=s}function G(r,n,i,a){if(void 0===a&&(a=!1),h=void 0,y=void 0,v=void 0,i){var o=r[0];if(e.some(l)&&!u||!Yh(t,k,o,a))return;return cy(t,k,o,n,0,!1,void 0)?void(h=[o]):o}for(var s=0;s<r.length;s++){if(Xh(o=r[s],l,u)&&Yh(t,k,o,a)){var c=void 0,d=void 0;if(o.typeParameters){var p=void 0;if(e.some(l)){if(!(p=oy(o,l,!1))){v=o;continue}}else d=Qf(o.typeParameters,o,e.isInJSFile(t)?2:0),p=ny(t,o,k,8|E,d),E|=4&d.flags?8:0;if(c=Jc(o,p,e.isInJSFile(o.declaration),d&&d.inferredTypeParameters),uv(o)&&!Yh(t,k,c,a)){y=c;continue}}else c=o;if(!cy(t,k,c,n,E,!1,void 0)){if(E){if(E=0,d)if(c=Jc(o,p=ny(t,o,k,E,d),e.isInJSFile(o.declaration),d&&d.inferredTypeParameters),uv(o)&&!Yh(t,k,c,a)){y=c;continue}if(cy(t,k,c,n,E,!1,void 0)){(h||(h=[])).push(c);continue}}return r[s]=c,c}(h||(h=[])).push(c)}}}}function hy(e){var t=e.parameters.length;return U(e)?t-1:t}function yy(e,t){return vy(e,ou(t,2))}function vy(t,r){return jf(e.first(t),r)}function by(e){return!(!e.typeParameters||!wE(Bc(e)))}function ky(e,t,r,n){return Pa(e)||Pa(t)&&!!(262144&e.flags)||!r&&!n&&!(1179648&t.flags)&&cp(e,vt)}function xy(t,r,n){if(t.arguments&&V<1){var i=Wh(t.arguments);i>=0&&pn(t.arguments[i],e.Diagnostics.Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher)}var a=fh(t.expression);if(a===Ke)return pr;if((a=ac(a))===we)return Hh(t);if(Pa(a))return t.typeArguments&&pn(t,e.Diagnostics.Untyped_function_calls_may_not_accept_type_arguments),Vh(t);var o=hc(a,1);if(o.length){if(!function(t,r){if(!r||!r.declaration)return!0;var n=r.declaration,i=e.getSelectedEffectiveModifierFlags(n,24);if(!i||167!==n.kind)return!0;var a=e.getClassLikeDeclarationOfSymbol(n.parent.symbol),o=Jo(n.parent.symbol);if(!Gx(t,a)){var s=e.getContainingClass(t);if(s&&16&i){var c=Qx(s);if(Ey(n.parent.symbol,c))return!0}return 8&i&&pn(t,e.Diagnostics.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,da(o)),16&i&&pn(t,e.Diagnostics.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,da(o)),!1}return!0}(t,o[0]))return Hh(t);if(o.some((function(e){return 4&e.flags})))return pn(t,e.Diagnostics.Cannot_create_an_instance_of_an_abstract_class),Hh(t);var s=a.symbol&&e.getClassLikeDeclarationOfSymbol(a.symbol);return s&&e.hasSyntacticModifier(s,128)?(pn(t,e.Diagnostics.Cannot_create_an_instance_of_an_abstract_class),Hh(t)):_y(t,o,r,n,0)}var c=hc(a,0);if(c.length){var l=_y(t,c,r,n,0);return X||(l.declaration&&!Fy(l.declaration)&&Bc(l)!==Ve&&pn(t,e.Diagnostics.Only_a_void_function_can_be_called_with_the_new_keyword),Lc(l)===Ve&&pn(t,e.Diagnostics.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),l}return Dy(t.expression,a,1),Hh(t)}function Ey(t,r){var n=Po(r);if(!e.length(n))return!1;var i=n[0];if(2097152&i.flags){for(var a=Es(i.types),o=0,s=0,c=i.types;s<c.length;s++){var l=c[s];if(!a[o]&&3&e.getObjectFlags(l)){if(l.symbol===t)return!0;if(Ey(t,l))return!0}o++}return!1}return i.symbol===t||Ey(t,i)}function Sy(t,r,n){var i,a=0===n,o=qb(r),s=o&&hc(o,n).length>0;if(1048576&r.flags){for(var c=!1,l=0,u=r.types;l<u.length;l++){var d=u[l];if(0!==hc(d,n).length){if(c=!0,i)break}else if(i||(i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Type_0_has_no_call_signatures:e.Diagnostics.Type_0_has_no_construct_signatures,da(d)),i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Not_all_constituents_of_type_0_are_callable:e.Diagnostics.Not_all_constituents_of_type_0_are_constructable,da(r))),c)break}c||(i=e.chainDiagnosticMessages(void 0,a?e.Diagnostics.No_constituent_of_type_0_is_callable:e.Diagnostics.No_constituent_of_type_0_is_constructable,da(r))),i||(i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:e.Diagnostics.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,da(r)))}else i=e.chainDiagnosticMessages(i,a?e.Diagnostics.Type_0_has_no_call_signatures:e.Diagnostics.Type_0_has_no_construct_signatures,da(r));var p=a?e.Diagnostics.This_expression_is_not_callable:e.Diagnostics.This_expression_is_not_constructable;if(e.isCallExpression(t.parent)&&0===t.parent.arguments.length){var f=Cn(t).resolvedSymbol;f&&32768&f.flags&&(p=e.Diagnostics.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:e.chainDiagnosticMessages(i,p),relatedMessage:s?e.Diagnostics.Did_you_forget_to_use_await:void 0}}function Dy(t,r,n,i){var a=Sy(t,r,n),o=a.messageChain,s=a.relatedMessage,c=e.createDiagnosticForNodeFromMessageChain(t,o);if(s&&e.addRelatedInfo(c,e.createDiagnosticForNode(t,s)),e.isCallExpression(t.parent)){var l=fy(t.parent,!0),u=l.start,d=l.length;c.start=u,c.length=d}Qr.add(c),wy(r,n,i?e.addRelatedInfo(c,i):c)}function wy(t,r,n){if(t.symbol){var i=Tn(t.symbol).originatingImport;if(i&&!e.isImportCall(i)){var a=hc(_o(Tn(t.symbol).target),r);if(!a||!a.length)return;e.addRelatedInfo(n,e.createDiagnosticForNode(i,e.Diagnostics.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead))}}}function Ty(t){switch(t.parent.kind){case 254:case 223:case 255:return e.Diagnostics.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 161:return e.Diagnostics.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 164:return e.Diagnostics.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 166:case 168:case 169:return e.Diagnostics.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;case 253:var r=e.getNameOfDecorator(t);return e.isEtsFunctionDecorators(r,J)?e.Diagnostics.Unable_to_resolve_signature_of_function_decorator_when_decorators_are_not_valid:e.Debug.fail();default:return e.Debug.fail()}}function Cy(t,r,n){var i=fb(t.expression),a=ac(i);if(a===we)return Hh(t);var o,s,c=hc(a,0),l=hc(a,1).length;if(ky(i,a,c.length,l))return Vh(t);if(o=t,(s=c).length&&e.every(s,(function(e){return 0===e.minArgumentCount&&!U(e)&&e.parameters.length<py(o,e)}))){var u=e.getTextOfNode(t.expression,!1);return pn(t,e.Diagnostics._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,u),Hh(t)}var d=Ty(t);if(!c.length){var p=Sy(t.expression,a,0),f=e.chainDiagnosticMessages(p.messageChain,d),m=e.createDiagnosticForNodeFromMessageChain(t.expression,f);return p.relatedMessage&&e.addRelatedInfo(m,e.createDiagnosticForNode(t.expression,p.relatedMessage)),Qr.add(m),wy(a,0,m),Hh(t)}return _y(t,c,r,n,0,d)}function Ay(t,r){var n=Y_(t),i=n&&Si(n),a=i&&Nn(i,N.Element,788968),o=a&&re.symbolToEntityName(a,788968,t),s=e.factory.createFunctionTypeNode(void 0,[e.factory.createParameterDeclaration(void 0,void 0,void 0,"props",void 0,re.typeToTypeNode(r,t))],o?e.factory.createTypeReferenceNode(o,void 0):e.factory.createKeywordTypeNode(129)),c=yn(1,"props");return c.type=r,ds(s,void 0,void 0,[c],a?Jo(a):we,void 0,1,0)}function Ny(t,r,n){if(q_(t.tagName)){var i=th(t),a=Ay(t,i);return fp(Gv(t.attributes,S_(a,t),void 0,0),i,t.tagName,t.attributes),e.length(t.typeArguments)&&(e.forEach(t.typeArguments,Mx),Qr.add(e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),t.typeArguments,e.Diagnostics.Expected_0_type_arguments_but_got_1,0,e.length(t.typeArguments)))),a}var o=fb(t.tagName),s=ac(o);if(s===we)return Hh(t);var c=Z_(o,t);return ky(o,s,c.length,0)?Vh(t):0===c.length?(pn(t.tagName,e.Diagnostics.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,e.getTextOfNode(t.tagName)),Hh(t)):_y(t,c,r,n,0)}function Py(t,r,n){switch(t.kind){case 204:case 211:return function(t,r,n){var i,a;if(106===t.expression.kind){var o=Qg(t.expression);if(Pa(o)){for(var s=0,c=t.arguments;s<c.length;s++)fb(c[s]);return lr}if(o!==we){var l=e.getEffectiveBaseTypeNode(e.getContainingClass(t));if(l)return _y(t,Co(o,l.typeArguments,l),r,n,0)}return Vh(t)}var u=n;32!==n&&(u=void 0);var d=fb(t.expression,u);if(e.isCallChain(t)){var p=Mf(d,t.expression);a=p===d?0:e.isOutermostOptionalChain(t)?16:8,d=p}else a=0;if((d=yh(d,t.expression,hh))===Ke)return pr;var f=ac(d);if(f===we)return Hh(t);var m=hc(f,0),g=hc(f,1),_=g.length;if(ky(d,f,m.length,_))return d!==we&&t.typeArguments&&pn(t,e.Diagnostics.Untyped_function_calls_may_not_accept_type_arguments),Vh(t);var h=e.isCalledStructDeclaration(null===(i=f.symbol)||void 0===i?void 0:i.declarations);if(!m.length){if(_){if(h)return _y(t,g,r,n,0);pn(t,e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,da(d))}else{var y=void 0;if(1===t.arguments.length){var v=e.getSourceFileOfNode(t).text;e.isLineBreak(v.charCodeAt(e.skipTrivia(v,t.expression.end,!0)-1))&&(y=e.createDiagnosticForNode(t.expression,e.Diagnostics.Are_you_missing_a_semicolon))}Dy(t.expression,f,0,y)}return Hh(t)}return 8&n&&!t.typeArguments&&m.some(by)?(ib(t,n),dr):m.some((function(t){return e.isInJSFile(t.declaration)&&!!e.getJSDocClassTag(t.declaration)}))?(pn(t,e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,da(d)),Hh(t)):_y(t,m,r,n,a)}(t,r,n);case 205:return xy(t,r,n);case 206:return function(t,r,n){var i=fb(t.tag),a=ac(i);if(a===we)return Hh(t);var o=hc(a,0),s=hc(a,1).length;if(ky(i,a,o.length,s))return Vh(t);if(!o.length){if(e.isArrayLiteralExpression(t.parent)){var c=e.createDiagnosticForNode(t.tag,e.Diagnostics.It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked);return Qr.add(c),Hh(t)}return Dy(t.tag,a,0),Hh(t)}return _y(t,o,r,n,0)}(t,r,n);case 162:return Cy(t,r,n);case 278:case 277:return Ny(t,r,n)}throw e.Debug.assertNever(t,"Branch in 'resolveSignature' should be unreachable.")}function Iy(e,t,r){var n=Cn(e),i=n.resolvedSignature;if(i&&i!==dr&&!t)return i;n.resolvedSignature=dr;var a=Py(e,t,r||0);return a!==dr&&(n.resolvedSignature=Sr===Dr?a:i),a}function Fy(t){var r;if(!t||!e.isInJSFile(t))return!1;var n=e.isFunctionDeclaration(t)||e.isFunctionExpression(t)?t:e.isVariableDeclaration(t)&&t.initializer&&e.isFunctionExpression(t.initializer)?t.initializer:void 0;if(n){if(e.getJSDocClassTag(t))return!0;var i=Ai(n);return!!(null===(r=null==i?void 0:i.members)||void 0===r?void 0:r.size)}return!1}function Oy(t,r){var n,i;if(r){var a=Tn(r);if(!a.inferredClassSymbol||!a.inferredClassSymbol.has(R(t))){var o=e.isTransientSymbol(t)?t:kn(t);return o.exports=o.exports||e.createSymbolTable(),o.members=o.members||e.createSymbolTable(),o.flags|=32&r.flags,(null===(n=r.exports)||void 0===n?void 0:n.size)&&Dn(o.exports,r.exports),(null===(i=r.members)||void 0===i?void 0:i.size)&&Dn(o.members,r.members),(a.inferredClassSymbol||(a.inferredClassSymbol=new e.Map)).set(R(o),o),o}return a.inferredClassSymbol.get(R(t))}}function Ry(t,r){if(t.parent){var n,i;if(e.isVariableDeclaration(t.parent)&&t.parent.initializer===t){if(!(e.isInJSFile(t)||e.isVarConst(t.parent)&&e.isFunctionLikeDeclaration(t)))return;n=t.parent.name,i=t.parent}else if(e.isBinaryExpression(t.parent)){var a=t.parent,o=t.parent.operatorToken.kind;if(62!==o||!r&&a.right!==t){if(!(56!==o&&60!==o||(e.isVariableDeclaration(a.parent)&&a.parent.initializer===a?(n=a.parent.name,i=a.parent):e.isBinaryExpression(a.parent)&&62===a.parent.operatorToken.kind&&(r||a.parent.right===a)&&(i=n=a.parent.left),n&&e.isBindableStaticNameExpression(n)&&e.isSameEntityName(n,a.left))))return}else i=n=a.left}else r&&e.isFunctionDeclaration(t)&&(n=t.name,i=t);if(i&&n&&(r||e.getExpandoInitializer(t,e.isPrototypeAccess(n))))return Ai(i)}}function My(t,r){var n;WE(t,t.typeArguments)||GE(t.arguments);var i=Iy(t,void 0,r);if(i===dr)return We;if(Uy(i,t),106===t.expression.kind)return Ve;if(205===t.kind){var a=i.declaration;if(a&&167!==a.kind&&171!==a.kind&&176!==a.kind&&!e.isJSDocConstructSignature(a)&&!Fy(a))return X&&pn(t,e.Diagnostics.new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type),Ee}if(e.isInJSFile(t)&&Ky(t))return Mc(t.arguments[0]);var o=Bc(i);if(12288&o.flags&&Jy(t))return yd(e.walkUpParenthesizedExpressions(t.parent));if(204===t.kind&&!t.questionDotToken&&235===t.parent.kind&&16384&o.flags&&jc(i))if(e.isDottedName(t.expression)){if(!Cg(t)){var s=pn(t.expression,e.Diagnostics.Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation);Tg(t.expression,s)}}else pn(t.expression,e.Diagnostics.Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name);if(e.isInJSFile(t)){var c=Ry(t,!1);if(null===(n=null==c?void 0:c.exports)||void 0===n?void 0:n.size){var l=Wi(c,c.exports,e.emptyArray,e.emptyArray,void 0,void 0);return l.objectFlags|=16384,fu([o,l])}}return e.isInETSFile(t)&&e.isIdentifier(t.expression)&&!e.isNewExpression(t)&&function(t,r){var n,i=e.getTextOfPropertyName(t).toString();if(!(null===(n=r.ets)||void 0===n?void 0:n.components.some((function(e){return e===i}))))return!1;if(!r.etsLoaderPath)return!1;var a=e.resolvePath(r.etsLoaderPath,"declarations"),o=ii(Xx(t)),s=null==o?void 0:o.declarations;if(!s||1!==s.length)return!1;var c=e.getSourceFileOfNode(s[0]),l=null==c?void 0:c.fileName;return!!(null==l?void 0:l.startsWith(a))}(t.expression,J)&&!e.isInBuildOrPageTransitionContext(t,J)&&pn(t.expression,e.Diagnostics.UI_component_0_cannot_be_used_in_this_place,Ln(t.expression)),o}function Ly(r,n,i,a){var o,s,c,l,u,d=function(e,t){var r="";return e.forEach((function(e){e.name===t&&(r=e.text?e.text:"")})),r}(n,a.tagName);if(!(o=r,s=d,c=a.specifyCheckConditionFuncName,l=Rg(o),zy(o,s,l,u={hasIfChecked:!1},c),u.hasIfChecked)&&t.getExpressionCheckedResultsByFile){if(t.getExpressionCheckedResultsByFile(i.fileName,n).valid)return;var p=e.createDiagnosticForNodeInSourceFile(i,r,e.Diagnostics.The_statement_must_be_written_use_the_function_0_under_the_if_condition,a.specifyCheckConditionFuncName);p.messageText=a.message,Zr.add(p)}}function jy(e,t,r,n){n.forEach((function(n){var i=!1;e.forEach((function(a){a.name===n.tagName&&(i=!0,!n.tagNameShouldExisted&&n.needConditionCheck?Ly(t,e,r,n):n.tagNameShouldExisted||By(r,t,n))})),n.tagNameShouldExisted&&!i&&By(r,t,n)}))}function By(t,r,n){var i=e.createDiagnosticForNodeInSourceFile(t,r,e.Diagnostics.This_API_has_been_Special_Markings_exercise_caution_when_using_this_API);i.messageText=n.message.replace("{0}",""===r.getText()?r.text:r.getText()),i.category=n.type,Qr.add(i),Zr.add(i)}function zy(t,r,n,i,a){if(!i.hasIfChecked&&t.parent!==n){if(e.isIfStatement(t.parent)){if(e.isCallExpression(t.parent.expression)&&function(t,r,n){if(e.isIdentifier(t.expression)&&1===t.arguments.length&&t.expression.escapedText.toString()===r){var i=t.arguments[0];if(e.isStringLiteral(i)&&i.text.toString()===n)return!0}return!1}(t.parent.expression,a,r))return void(i.hasIfChecked=!0);zy(t.parent,r,n,i,a)}zy(t.parent,r,n,i,a)}}function Uy(t,r){if(t.declaration&&134217728&t.declaration.flags){var n=qy(r),i=e.tryGetPropertyAccessOrIdentifierToString(e.getInvokedExpression(r));a=n,o=t.declaration,s=i,c=ua(t),_n(o,s?e.createDiagnosticForNode(a,e.Diagnostics.The_signature_0_of_1_is_deprecated,c,s):e.createDiagnosticForNode(a,e.Diagnostics._0_is_deprecated,c))}var a,o,s,c}function qy(t){switch((t=e.skipParentheses(t)).kind){case 204:case 162:case 205:return qy(t.expression);case 206:return qy(t.tag);case 278:case 277:return qy(t.tagName);case 203:return t.argumentExpression;case 202:return t.name;case 174:var r=t;return e.isQualifiedName(r.typeName)?r.typeName.right:r;default:return t}}function Jy(t){if(!e.isCallExpression(t))return!1;var r=t.expression;if(e.isPropertyAccessExpression(r)&&"for"===r.name.escapedText&&(r=r.expression),!e.isIdentifier(r)||"Symbol"!==r.escapedText)return!1;var n=Nl(!1);return!!n&&n===Fn(r,"Symbol",111551,void 0,void 0,!1)}function Vy(t){if(GE(t.arguments)||function(t){if(H===e.ModuleKind.ES2015)return mS(t,e.Diagnostics.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_esnext_commonjs_amd_system_or_umd);if(t.typeArguments)return mS(t,e.Diagnostics.Dynamic_import_cannot_have_type_arguments);var r=t.arguments;if(1!==r.length)return mS(t,e.Diagnostics.Dynamic_import_must_have_one_specifier_as_an_argument);if(JE(r),e.isSpreadElement(r[0]))return mS(r[0],e.Diagnostics.Specifier_of_dynamic_import_cannot_be_spread_element)}(t),0===t.arguments.length)return yv(t,Ee);for(var r=t.arguments[0],n=$v(r),i=1;i<t.arguments.length;++i)$v(t.arguments[i]);(32768&n.flags||65536&n.flags||!cp(n,Re))&&pn(r,e.Diagnostics.Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0,da(n));var a=gi(t,r);if(a){var o=bi(a,r,!0,!1);if(o)return yv(t,Hy(_o(o),o,a))}return yv(t,Ee)}function Hy(t,r,n){if(K&&t&&t!==we){var i=t;if(!i.syntheticType)if(Yn(e.find(n.declarations,e.isSourceFile),n,!1)){var a=e.createSymbolTable(),o=yn(2097152,"default");o.parent=n,o.nameType=hd("default"),o.target=ii(r),a.set("default",o);var s=yn(2048,"__type"),c=Wi(s,a,e.emptyArray,e.emptyArray,void 0,void 0);s.type=c,i.syntheticType=z_(t)?ld(t,c,s,0,!1):c}else i.syntheticType=t;return i.syntheticType}return t}function Ky(t){if(!e.isRequireCall(t,!0))return!1;if(!e.isIdentifier(t.expression))return e.Debug.fail();var r=Fn(t.expression,t.expression.escapedText,111551,void 0,void 0,!0);if(r===ce)return!0;if(2097152&r.flags)return!1;var n=16&r.flags?253:3&r.flags?251:0;if(0!==n){var i=e.getDeclarationOfKind(r,n);return!!i&&!!(8388608&i.flags)}return!1}function Wy(t){(function(t){if(t.questionDotToken||32&t.flags)return mS(t.template,e.Diagnostics.Tagged_template_expressions_are_not_permitted_in_an_optional_chain);return!1})(t)||WE(t,t.typeArguments),V<2&&BE(t,262144);var r=Iy(t);return Uy(r,t),Bc(r)}function Gy(t){switch(t.kind){case 10:case 14:case 8:case 9:case 110:case 95:case 200:case 201:case 220:return!0;case 208:return Gy(t.expression);case 216:var r=t.operator,n=t.operand;return 40===r&&(8===n.kind||9===n.kind)||39===r&&8===n.kind;case 202:case 203:var i=t.expression;if(e.isIdentifier(i)){var a=Xx(i);return a&&2097152&a.flags&&(a=ai(a)),!!(a&&384&a.flags&&1===jo(a))}}return!1}function $y(t,n,i,a){var o=fb(i,a);if(e.isConstTypeReference(n))return Gy(i)||pn(i,e.Diagnostics.A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals),gd(o);Mx(n),o=Bf(mf(o));var s=xd(n);r&&s!==we&&(up(s,Hf(o))||xp(o,s,t,e.Diagnostics.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first));return s}function Yy(e){return 32&e.flags?function(e){var t=fb(e.expression),r=Mf(t,e.expression);return Rf(Pf(r),e,r!==t)}(e):Pf(fb(e.expression))}function Xy(t){return function(t){var r=t.name.escapedText;switch(t.keywordToken){case 103:if("target"!==r)return mS(t.name,e.Diagnostics._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,t.name.escapedText,e.tokenToString(t.keywordToken),"target");break;case 100:if("meta"!==r)mS(t.name,e.Diagnostics._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,t.name.escapedText,e.tokenToString(t.keywordToken),"meta")}}(t),103===t.keywordToken?function(t){var r=e.getNewTargetContainer(t);return r?167===r.kind?_o(Ai(r.parent)):_o(Ai(r)):(pn(t,e.Diagnostics.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),we)}(t):100===t.keywordToken?function(t){H!==e.ModuleKind.ES2020&&H!==e.ModuleKind.ESNext&&H!==e.ModuleKind.System&&pn(t,e.Diagnostics.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_esnext_or_system);var r=e.getSourceFileOfNode(t);return e.Debug.assert(!!(2097152&r.flags),"Containing file is missing import meta node flag."),e.Debug.assert(!!r.externalModuleIndicator,"Containing file should be a module."),"meta"===t.name.escapedText?function(){return Xt||(Xt=Al("ImportMeta",0,!0))||nt}():we}(t):e.Debug.assertNever(t.keywordToken)}function Qy(t){var r=_o(t);if(W){var n=t.valueDeclaration;if(n&&e.hasInitializer(n))return Nf(r)}return r}function Zy(t){return e.Debug.assert(e.isIdentifier(t.name)),t.name.escapedText}function ev(e,t,r){var n=e.parameters.length-(U(e)?1:0);if(t<n)return e.parameters[t].escapedName;var i=e.parameters[n]||ke,a=r||_o(i);if(vf(a)){var o=a.target.labeledElementDeclarations,s=t-n;return o&&Zy(o[s])||i.escapedName+"_"+s}return i.escapedName}function tv(t){return 193===t.kind||e.isParameter(t)&&t.name&&e.isIdentifier(t.name)}function rv(e,t){var r=e.parameters.length-(U(e)?1:0);if(t<r){var n=e.parameters[t].valueDeclaration;return n&&tv(n)?n:void 0}var i=e.parameters[r]||ke,a=_o(i);if(vf(a)){var o=a.target.labeledElementDeclarations;return o&&o[t-r]}return i.valueDeclaration&&tv(i.valueDeclaration)?i.valueDeclaration:void 0}function nv(e,t){return iv(e,t)||Ee}function iv(e,t){var r=e.parameters.length-(U(e)?1:0);if(t<r)return Qy(e.parameters[t]);if(U(e)){var n=_o(e.parameters[r]),i=t-r;if(!vf(n)||n.target.hasRestElement||i<n.target.fixedLength)return qu(n,hd(i))}}function av(t,r){var n=ov(t),i=sv(t),a=lv(t);if(a&&r>=n-1)return r===n-1?a:jl(qu(a,Me));for(var o=[],s=[],c=[],l=r;l<n;l++){!a||l<n-1?(o.push(nv(t,l)),s.push(l<i?1:2)):(o.push(a),s.push(8));var u=rv(t,l);u&&c.push(u)}return Hl(o,s,!1,e.length(c)===e.length(o)?c:void 0)}function ov(e){var t=e.parameters.length;if(U(e)){var r=_o(e.parameters[t-1]);if(vf(r))return t+r.target.fixedLength-(r.target.hasRestElement?0:1)}return t}function sv(t,r){var n=1&r,i=2&r;if(i||void 0===t.resolvedMinArgumentCount){var a=void 0;if(U(t)){var o=_o(t.parameters[t.parameters.length-1]);if(vf(o)){var s=e.findIndex(o.target.elementFlags,(function(e){return!(1&e)})),c=s<0?o.target.fixedLength:s;c>0&&(a=t.parameters.length-1+c)}}if(void 0===a){if(!n&&32&t.flags)return 0;a=t.minArgumentCount}if(i)return a;for(var l=a-1;l>=0;l--){if(131072&ug(nv(t,l),Gh).flags)break;a=l}t.resolvedMinArgumentCount=a}return t.resolvedMinArgumentCount}function cv(e){if(U(e)){var t=_o(e.parameters[e.parameters.length-1]);return!vf(t)||t.target.hasRestElement}return!1}function lv(e){if(U(e)){var t=_o(e.parameters[e.parameters.length-1]);if(!vf(t))return t;if(t.target.hasRestElement)return $l(t,t.target.fixedLength)}}function uv(e){var t=lv(e);return!t||rf(t)||Pa(t)||0!=(131072&uc(t).flags)?void 0:t}function dv(e){return pv(e,He)}function pv(e,t){return e.parameters.length>0?nv(e,0):t}function fv(t,r){(t.typeParameters=r.typeParameters,r.thisParameter)&&((!(a=t.thisParameter)||a.valueDeclaration&&!a.valueDeclaration.type)&&(a||(t.thisParameter=jf(r.thisParameter,void 0)),mv(t.thisParameter,_o(r.thisParameter))));for(var n=t.parameters.length-(U(t)?1:0),i=0;i<n;i++){var a=t.parameters[i];if(!e.getEffectiveTypeAnnotationNode(a.valueDeclaration))mv(a,iv(r,i))}if(U(t)){a=e.last(t.parameters);if(e.isTransientSymbol(a)||!e.getEffectiveTypeAnnotationNode(a.valueDeclaration))mv(a,av(r,n))}}function mv(e,t){var r=Tn(e);if(!r.type){var n=e.valueDeclaration;r.type=t||to(n,!0),78!==n.name.kind&&(r.type===Ae&&(r.type=eo(n.name)),gv(n.name))}}function gv(t){for(var r=0,n=t.elements;r<n.length;r++){var i=n[r];e.isOmittedExpression(i)||(78===i.name.kind?Tn(Ai(i)).type=La(i):gv(i.name))}}function _v(e){var t=Il(!0);return t!==st?ol(t,[e=qb(e)||Ae]):Ae}function hv(e){var t,r=(t=!0,Lt||(Lt=Al("PromiseLike",1,t))||st);return r!==st?ol(r,[e=qb(e)||Ae]):Ae}function yv(t,r){var n=_v(r);return n===Ae?(pn(t,e.isImportCall(t)?e.Diagnostics.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:e.Diagnostics.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),we):(Fl(!0)||pn(t,e.isImportCall(t)?e.Diagnostics.A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:e.Diagnostics.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option),n)}function vv(t,r){if(!t.body)return we;var n,i,a,o=e.getFunctionFlags(t),s=0!=(2&o),c=0!=(1&o),l=Ve;if(232!==t.body.kind)n=$v(t.body,r&&-9&r),s&&(n=Ub(n,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member));else if(c){var u=Dv(t,r);u?u.length>0&&(n=ou(u,2)):l=He;var d=function(t,r){var n=[],i=[],a=0!=(2&e.getFunctionFlags(t));return e.forEachYieldExpression(t.body,(function(t){var o,s=t.expression?fb(t.expression,r):Pe;if(e.pushIfUnique(n,kv(t,s,Ee,a)),t.asteriskToken){var c=zk(s,a?19:17,t.expression);o=c&&c.nextType}else o=x_(t);o&&e.pushIfUnique(i,o)})),{yieldTypes:n,nextTypes:i}}(t,r),p=d.yieldTypes,f=d.nextTypes;i=e.some(p)?ou(p,2):void 0,a=e.some(f)?fu(f):void 0}else{var m=Dv(t,r);if(!m)return 2&o?yv(t,He):He;if(0===m.length)return 2&o?yv(t,Ve):Ve;n=ou(m,2)}if(n||i||a){if(i&&$f(t,i,3),n&&$f(t,n,1),a&&$f(t,a,2),n&&pf(n)||i&&pf(i)||a&&pf(a)){var g=C_(t),_=g?g===Ic(t)?c?void 0:n:b_(Bc(g),t):void 0;c?(i=yf(i,_,0,s),n=yf(n,_,1,s),a=yf(a,_,2,s)):n=function(e,t,r){return e&&pf(e)&&(e=hf(e,t?r?zb(t):t:void 0)),e}(n,_,s)}i&&(i=Hf(i)),n&&(n=Hf(n)),a&&(a=Hf(a))}return c?bv(i||He,n||l,a||a_(2,t)||Ae,s):s?_v(n||l):n||l}function bv(e,t,r,n){var i=n?vr:br,a=i.getGlobalGeneratorType(!1);if(e=i.resolveIterationType(e,void 0)||Ae,t=i.resolveIterationType(t,void 0)||Ae,r=i.resolveIterationType(r,void 0)||Ae,a===st){var o=i.getGlobalIterableIteratorType(!1),s=o!==st?Vk(o,i):void 0,c=s?s.returnType:Ee,l=s?s.nextType:Ne;return cp(t,c)&&cp(l,r)?o!==st?Ml(o,[e]):(i.getGlobalIterableIteratorType(!0),nt):(i.getGlobalGeneratorType(!0),nt)}return Ml(a,[e,t,r])}function kv(t,r,n,i){var a=t.expression||t,o=t.asteriskToken?Fk(i?19:17,r,n,a):r;return i?qb(o,a,t.asteriskToken?e.Diagnostics.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:e.Diagnostics.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):o}function xv(e,t,r,n){var i=0;if(n){for(var a=t;a<r.length;a++)i|=S.get(r[a])||32768;for(a=e;a<t;a++)i&=~(S.get(r[a])||0);for(a=0;a<e;a++)i|=S.get(r[a])||32768}else{for(a=e;a<t;a++)i|=E.get(r[a])||128;for(a=0;a<e;a++)i&=~(E.get(r[a])||0)}return i}function Ev(t){var r=Cn(t);return void 0!==r.isExhaustive?r.isExhaustive:r.isExhaustive=function(t){if(213===t.expression.kind){var r=ub(t.expression.expression),n=xv(0,0,og(t,!1),!0),i=Qs(r)||r;return 3&i.flags?556800==(556800&n):!!(131072&ug(i,(function(e){return(Vm(e)&n)===n})).flags)}var a=ub(t.expression);if(!ff(a))return!1;var o=ag(t);if(!o.length||e.some(o,df))return!1;return s=pg(a,gd),c=o,1048576&s.flags?!e.forEach(s.types,(function(t){return!e.contains(c,t)})):e.contains(c,s);var s,c}(t)}function Sv(e){return e.endFlowNode&&Ng(e.endFlowNode)}function Dv(t,r){var n=e.getFunctionFlags(t),i=[],a=Sv(t),o=!1;if(e.forEachReturnStatement(t.body,(function(s){var c=s.expression;if(c){var l=$v(c,r&&-9&r);2&n&&(l=Ub(l,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)),131072&l.flags&&(o=!0),e.pushIfUnique(i,l)}else a=!0})),0!==i.length||a||!o&&!function(e){switch(e.kind){case 209:case 210:return!0;case 166:return 201===e.parent.kind;default:return!1}}(t))return!(W&&i.length&&a)||Fy(t)&&i.some((function(e){return e.symbol===t.symbol}))||e.pushIfUnique(i,Ne),i}function wv(t,n){var i,a,o,s;if(r){var c=e.getFunctionFlags(t),l=n&&ax(n,c);if(!l||!Rv(l,16385)){if(253===t.kind&&t.decorators&&void 0!==n){var u,d=e.getEtsExtendDecoratorComponentNames(t.decorators,J);if(0!==d.length)return null===(i=J.ets)||void 0===i||i.extend.components.forEach((function(t){var r=t.name,n=t.type;r===e.last(d)&&(u=n)})),(null===(a=null==n?void 0:n.symbol)||void 0===a?void 0:a.escapedName)===u?void 0:void pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.Should_not_add_return_type_to_the_function_that_is_annotated_by_Extend);if(e.getEtsStylesDecoratorComponentNames(t.decorators,J).length>0){var p=null===(o=J.ets)||void 0===o?void 0:o.styles.component.type;return(null===(s=null==n?void 0:n.symbol)||void 0===s?void 0:s.escapedName)===p?void 0:void pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.Should_not_add_return_type_to_the_function_that_is_annotated_by_Styles)}}if(165!==t.kind&&!e.nodeIsMissing(t.body)&&232===t.body.kind&&Sv(t)){var f=512&t.flags;if(l&&131072&l.flags)pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.A_function_returning_never_cannot_have_a_reachable_end_point);else if(!l||f||e.hasEtsStylesDecoratorNames(t.decorators,J)){if(l&&W&&!cp(Ne,l))pn(e.getEffectiveReturnTypeNode(t)||t,e.Diagnostics.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(J.noImplicitReturns){if(!l){if(!f)return;if(ox(t,Bc(Ic(t))))return}pn(e.getEffectiveReturnTypeNode(t)||t,e.Diagnostics.Not_all_code_paths_return_a_value)}}else pn(e.getEffectiveReturnTypeNode(t),e.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value)}}}}function Tv(t,r){if(e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t)),jx(t),r&&4&r&&Qd(t)){if(!e.getEffectiveReturnTypeNode(t)&&!ep(t)){var n=A_(t);if(n&&am(Bc(n))){var i=Cn(t);if(i.contextFreeType)return i.contextFreeType;var a=vv(t,r),o=ds(void 0,void 0,void 0,e.emptyArray,a,void 0,0,0),s=Wi(t.symbol,T,[o],e.emptyArray,void 0,void 0);return s.objectFlags|=2097152,i.contextFreeType=s}}return ct}return KE(t)||209!==t.kind||QE(t),function(t,r){var n=Cn(t);if(!(1024&n.flags)){var i=A_(t);if(!(1024&n.flags)){n.flags|=1024;var a=e.firstOrUndefined(hc(_o(Ai(t)),0));if(!a)return;if(Qd(t))if(i){var o=E_(t);r&&2&r&&function(t,r,n){for(var i=t.parameters.length-(U(t)?1:0),a=0;a<i;a++){var o=t.parameters[a].valueDeclaration;if(o.type){var s=e.getEffectiveTypeAnnotationNode(o);s&&ym(n.inferences,xd(s),nv(r,a))}}var c=lv(r);if(c&&262144&c.flags){fv(t,jd(r,n.nonFixingMapper));var l=ov(r)-1;ym(n.inferences,av(t,l),c)}}(a,i,o),fv(a,o?jd(i,o.mapper):i)}else!function(e){e.thisParameter&&mv(e.thisParameter);for(var t=0,r=e.parameters;t<r.length;t++)mv(r[t])}(a);if(i&&!zc(t)&&!a.resolvedReturnType){var s=vv(t,r);a.resolvedReturnType||(a.resolvedReturnType=s)}kb(t)}}}(t,r),_o(Ai(t))}function Cv(e,t,r,n){if(void 0===n&&(n=!1),!cp(t,Ze)){var i=n&&Bb(t);return gn(e,!!i&&cp(i,Ze),r),!1}return!0}function Av(t){if(!e.isCallExpression(t))return!1;if(!e.isBindableObjectDefinePropertyCall(t))return!1;var r=$v(t.arguments[2]);if(Na(r,"value")){var n=gc(r,"writable"),i=n&&_o(n);if(!i||i===je||i===Be)return!0;if(n&&n.valueDeclaration&&e.isPropertyAssignment(n.valueDeclaration)){var a=fb(n.valueDeclaration.initializer);if(a===je||a===Be)return!0}return!1}return!gc(r,"set")}function Nv(t){return!!(8&e.getCheckFlags(t)||4&t.flags&&64&e.getDeclarationModifierFlagsFromSymbol(t)||3&t.flags&&2&lh(t)||98304&t.flags&&!(65536&t.flags)||8&t.flags||e.some(t.declarations,Av))}function Pv(t,r,n){var i,a;if(0===n)return!1;if(Nv(r)){if(4&r.flags&&e.isAccessExpression(t)&&108===t.expression.kind){var o=e.getContainingFunction(t);if(!o||167!==o.kind&&!Fy(o))return!0;if(r.valueDeclaration){var s=e.isBinaryExpression(r.valueDeclaration),c=o.parent===r.valueDeclaration.parent,l=o===r.valueDeclaration.parent,u=s&&(null===(i=r.parent)||void 0===i?void 0:i.valueDeclaration)===o.parent,d=s&&(null===(a=r.parent)||void 0===a?void 0:a.valueDeclaration)===o;return!(c||l||u||d)}}return!0}if(e.isAccessExpression(t)){var p=e.skipParentheses(t.expression);if(78===p.kind){var f=Cn(p).resolvedSymbol;if(2097152&f.flags){var m=Vn(f);return!!m&&266===m.kind}}}return!1}function Iv(t,r,n){var i=e.skipOuterExpressions(t,7);return 78===i.kind||e.isAccessExpression(i)?!(32&i.flags)||(pn(t,n),!1):(pn(t,r),!1)}function Fv(t){fb(t.expression);var r=e.skipParentheses(t.expression);if(!e.isAccessExpression(r))return pn(r,e.Diagnostics.The_operand_of_a_delete_operator_must_be_a_property_reference),qe;e.isPropertyAccessExpression(r)&&e.isPrivateIdentifier(r.name)&&pn(r,e.Diagnostics.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);var n=Ri(Cn(r).resolvedSymbol);return n&&(Nv(n)&&pn(r,e.Diagnostics.The_operand_of_a_delete_operator_cannot_be_a_read_only_property),function(t,r){var n=131075;!W||r.flags&n||32768&wf(r)||pn(t,e.Diagnostics.The_operand_of_a_delete_operator_must_be_optional)}(r,_o(n))),qe}function Ov(e){return Rv(e,2112)?Mv(e,3)||Rv(e,296)?Ze:Le:Me}function Rv(e,t){if(e.flags&t)return!0;if(3145728&e.flags)for(var r=0,n=e.types;r<n.length;r++){if(Rv(n[r],t))return!0}return!1}function Mv(e,t,r){return!!(e.flags&t)||!(r&&114691&e.flags)&&(!!(296&t)&&cp(e,Me)||!!(2112&t)&&cp(e,Le)||!!(402653316&t)&&cp(e,Re)||!!(528&t)&&cp(e,qe)||!!(16384&t)&&cp(e,Ve)||!!(131072&t)&&cp(e,He)||!!(65536&t)&&cp(e,Fe)||!!(32768&t)&&cp(e,Ne)||!!(4096&t)&&cp(e,Je)||!!(67108864&t)&&cp(e,Ye))}function Lv(t,r,n){return 1048576&t.flags?e.every(t.types,(function(e){return Lv(e,r,n)})):Mv(t,r,n)}function jv(t){return!!(16&e.getObjectFlags(t))&&!!t.symbol&&Bv(t.symbol)}function Bv(e){return 0!=(128&e.flags)}function zv(t,r,n,i,a){void 0===a&&(a=!1);var o=t.properties,s=o[n];if(291===s.kind||292===s.kind){var c=s.name,l=vu(c);if(Zo(l)){var u=gc(r,is(l));u&&(Lh(u,s,a),dh(s,!1,r,u))}var d=Oa(s,qu(r,l,void 0,c,void 0,void 0,16));return qv(292===s.kind?s:s.initializer,d)}if(293===s.kind){if(!(n<o.length-1)){V<99&&BE(s,4);var p=[];if(i)for(var f=0,m=i;f<m.length;f++){var g=m[f];e.isSpreadAssignment(g)||p.push(g.name)}d=Fa(r,p,r.symbol);return JE(i,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),qv(s.expression,d)}pn(s,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern)}else pn(s,e.Diagnostics.Property_assignment_expected)}function Uv(t,r,n,i,a){var o=t.elements,s=o[n];if(224!==s.kind){if(222!==s.kind){var c=hd(n);if(sf(r)){var l=16|(N_(s)?8:0),u=Vu(r,c,void 0,uy(s,c),l)||we;return qv(s,Oa(s,N_(s)?Hm(u,524288):u),a)}return qv(s,i,a)}if(n<o.length-1)pn(s,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern);else{var d=s.expression;if(218!==d.kind||62!==d.operatorToken.kind)return JE(t.elements,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),qv(d,lg(r,vf)?pg(r,(function(e){return $l(e,n)})):jl(i),a);pn(d.operatorToken,e.Diagnostics.A_rest_element_cannot_have_an_initializer)}}}function qv(t,r,n,i){var a;if(292===t.kind){var o=t;o.objectAssignmentInitializer&&(!W||32768&wf(fb(o.objectAssignmentInitializer))||(r=Hm(r,524288)),function(e,t,r,n,i){var a,o=t.kind;if(62===o&&(201===e.kind||200===e.kind))return qv(e,fb(r,n),n,108===r.kind);a=55===o||56===o||60===o?Ak(e,n):fb(e,n);var s=fb(r,n);Wv(e,t,r,a,s,i)}(o.name,o.equalsToken,o.objectAssignmentInitializer,n)),a=t.name}else a=t;return 218===a.kind&&62===a.operatorToken.kind&&(Hv(a,n),a=a.left),201===a.kind?function(e,t,r){var n=e.properties;if(W&&0===n.length)return vh(t,e);for(var i=0;i<n.length;i++)zv(e,t,i,n,r);return t}(a,r,i):200===a.kind?function(e,t,r){var n=e.elements;V<2&&J.downlevelIteration&&BE(e,512);for(var i=Fk(193,t,Ne,e)||we,a=J.noUncheckedIndexedAccess?void 0:i,o=0;o<n.length;o++){var s=i;222===e.elements[o].kind&&(s=a=null!=a?a:Fk(65,t,Ne,e)||we),Uv(e,t,o,s,r)}return t}(a,r,n):function(t,r,n){var i=fb(t,n),a=293===t.parent.kind?e.Diagnostics.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:e.Diagnostics.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,o=293===t.parent.kind?e.Diagnostics.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:e.Diagnostics.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;Iv(t,a,o)&&fp(r,i,t,t);e.isPrivateIdentifierPropertyAccessExpression(t)&&BE(t.parent,1048576);return r}(a,r,n)}function Jv(t){switch((t=e.skipParentheses(t)).kind){case 78:case 10:case 13:case 206:case 220:case 14:case 8:case 9:case 110:case 95:case 104:case 151:case 209:case 223:case 210:case 200:case 201:case 213:case 227:case 277:case 276:return!0;case 219:return Jv(t.whenTrue)&&Jv(t.whenFalse);case 218:return!e.isAssignmentOperator(t.operatorToken.kind)&&(Jv(t.left)&&Jv(t.right));case 216:case 217:switch(t.operator){case 53:case 39:case 40:case 54:return!0}return!1;default:return!1}}function Vv(e,t){return 0!=(98304&t.flags)||up(e,t)}function Hv(t,r){for(var n,i={expr:[t],state:[0],leftType:[void 0]},a=0;a>=0;)switch(t=i.expr[a],i.state[a]){case 0:if(e.isInJSFile(t)&&e.getAssignedExpandoInitializer(t)){u(fb(t.right,r));break}if(Kv(t),62===(o=t.operatorToken.kind)&&(201===t.left.kind||200===t.left.kind)){u(qv(t.left,fb(t.right,r),r,108===t.right.kind));break}d(1),p(t.left);break;case 1:var o,s=n;if(i.leftType[a]=s,55===(o=t.operatorToken.kind)||56===o||60===o){if(55===o){var c=e.walkUpParenthesizedExpressions(t.parent);Tk(t.left,s,e.isIfStatement(c)?c.thenStatement:void 0)}Ck(s,t.left)}d(2),p(t.right);break;case 2:s=i.leftType[a];var l=n;u(Wv(t.left,t.operatorToken,t.right,s,l,t));break;default:return e.Debug.fail("Invalid state "+i.state[a]+" for checkBinaryExpression")}return n;function u(e){n=e,a--}function d(e){i.state[a]=e}function p(t){e.isBinaryExpression(t)?(a++,i.expr[a]=t,i.state[a]=0,i.leftType[a]=void 0):n=fb(t,r)}}function Kv(t){var r=t.left,n=t.operatorToken,i=t.right;60===n.kind&&(!e.isBinaryExpression(r)||56!==r.operatorToken.kind&&55!==r.operatorToken.kind||mS(r,e.Diagnostics._0_and_1_operations_cannot_be_mixed_without_parentheses,e.tokenToString(r.operatorToken.kind),e.tokenToString(n.kind)),!e.isBinaryExpression(i)||56!==i.operatorToken.kind&&55!==i.operatorToken.kind||mS(i,e.Diagnostics._0_and_1_operations_cannot_be_mixed_without_parentheses,e.tokenToString(i.operatorToken.kind),e.tokenToString(n.kind)))}function Wv(t,n,i,a,o,s){var c,l,u=n.kind;switch(u){case 41:case 42:case 65:case 66:case 43:case 67:case 44:case 68:case 40:case 64:case 47:case 69:case 48:case 70:case 49:case 71:case 51:case 73:case 52:case 77:case 50:case 72:if(a===Ke||o===Ke)return Ke;a=vh(a,t),o=vh(o,i);var d=void 0;if(528&a.flags&&528&o.flags&&void 0!==(d=function(e){switch(e){case 51:case 73:return 56;case 52:case 77:return 37;case 50:case 72:return 55;default:return}}(n.kind)))return pn(s||n,e.Diagnostics.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,e.tokenToString(n.kind),e.tokenToString(d)),Me;var p,f=Cv(t,a,e.Diagnostics.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),m=Cv(i,o,e.Diagnostics.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0);if(Mv(a,3)&&Mv(o,3)||!Rv(a,2112)&&!Rv(o,2112))p=Me;else if(S(a,o)){switch(u){case 49:case 71:C();break;case 42:case 66:V<3&&pn(s,e.Diagnostics.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}p=Le}else C(S),p=we;return f&&m&&w(p),p;case 39:case 63:if(a===Ke||o===Ke)return Ke;Mv(a,402653316)||Mv(o,402653316)||(a=vh(a,t),o=vh(o,i));var g=void 0;if(Mv(a,296,!0)&&Mv(o,296,!0)?g=Me:Mv(a,2112,!0)&&Mv(o,2112,!0)?g=Le:Mv(a,402653316,!0)||Mv(o,402653316,!0)?g=Re:(Pa(a)||Pa(o))&&(g=a===we||o===we?we:Ee),g&&!D(u))return g;if(!g){var _=402655727;return C((function(e,t){return Mv(e,_)&&Mv(t,_)})),Ee}return 63===u&&w(g),g;case 29:case 31:case 32:case 33:return D(u)&&(a=mf(vh(a,t)),o=mf(vh(o,i)),T((function(e,t){return up(e,t)||up(t,e)||cp(e,Ze)&&cp(t,Ze)}))),qe;case 34:case 35:case 36:case 37:return T((function(e,t){return Vv(e,t)||Vv(t,e)})),qe;case 102:return function(t,r,n,i){return n===Ke||i===Ke?Ke:(!Pa(n)&&Lv(n,131068)&&pn(t,e.Diagnostics.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),Pa(i)||iE(i)||sp(i,vt)||pn(r,e.Diagnostics.The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type),qe)}(t,i,a,o);case 101:return function(t,r,n,i){if(n===Ke||i===Ke)return Ke;n=vh(n,t),i=vh(i,r),Lv(n,402665900)||Mv(n,407109632)||pn(t,e.Diagnostics.The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol);var a=Ks(i);return(!Lv(i,126091264)||a&&(Mv(i,3145728)&&!Lv(a,126091264)||!Rv(a,126615552)))&&pn(r,e.Diagnostics.The_right_hand_side_of_an_in_expression_must_not_be_a_primitive),qe}(t,i,a,o);case 55:case 75:var h=4194304&Vm(a)?ou([(l=W?a:mf(o),pg(l,Cf)),o]):a;return 75===u&&w(o),h;case 56:case 74:var y=8388608&Vm(a)?ou([Tf(a),o],2):a;return 74===u&&w(o),y;case 60:case 76:var v=262144&Vm(a)?ou([Pf(a),o],2):a;return 76===u&&w(o),v;case 62:var b=e.isBinaryExpression(t.parent)?e.getAssignmentDeclarationKind(t.parent):0;return function(t,r){if(2===t)for(var n=0,i=qs(r);n<i.length;n++){var a=i[n],o=_o(a);if(o.symbol&&32&o.symbol.flags){var s=a.escapedName,c=Fn(a.valueDeclaration,s,788968,void 0,s,!1);c&&c.declarations.some(e.isJSDocTypedefTag)&&(En(c,e.Diagnostics.Duplicate_identifier_0,e.unescapeLeadingUnderscores(s),a),En(a,e.Diagnostics.Duplicate_identifier_0,e.unescapeLeadingUnderscores(s),c))}}}(b,o),function(r){var n;switch(r){case 2:return!0;case 1:case 5:case 6:case 3:case 4:var a=Ai(t),o=e.getAssignedExpandoInitializer(i);return!!o&&e.isObjectLiteralExpression(o)&&!!(null===(n=null==a?void 0:a.exports)||void 0===n?void 0:n.size);default:return!1}}(b)?(524288&o.flags&&(2===b||6===b||wp(o)||Jm(o)||1&e.getObjectFlags(o))||w(o),a):(w(o),Bf(o));case 27:if(!J.allowUnreachableCode&&Jv(t)&&(78!==(c=i).kind||"eval"!==c.escapedText)){var k=e.getSourceFileOfNode(t),x=k.text,E=e.skipTrivia(x,t.pos);k.parseDiagnostics.some((function(t){return t.code===e.Diagnostics.JSX_expressions_must_have_one_parent_element.code&&e.textSpanContainsPosition(t,E)}))||pn(t,e.Diagnostics.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return o;default:return e.Debug.fail()}function S(e,t){return Mv(e,2112)&&Mv(t,2112)}function D(r){var n=Rv(a,12288)?t:Rv(o,12288)?i:void 0;return!n||(pn(n,e.Diagnostics.The_0_operator_cannot_be_applied_to_type_symbol,e.tokenToString(r)),!1)}function w(n){r&&e.isAssignmentOperator(u)&&(!Iv(t,e.Diagnostics.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,e.Diagnostics.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)||e.isIdentifier(t)&&"exports"===e.unescapeLeadingUnderscores(t.escapedText)||fp(n,a,t,i))}function T(e){return!e(a,o)&&(C(e),!0)}function C(t){var r,i=!1,c=s||n;if(t){var l=qb(a),u=qb(o);i=!(l===a&&u===o)&&!(!l||!u)&&t(l,u)}var d=a,p=o;!i&&t&&(r=function(e,t,r){var n=e,i=t,a=mf(e),o=mf(t);r(a,o)||(n=a,i=o);return[n,i]}(a,o,t),d=r[0],p=r[1]);var f=pa(d,p),m=f[0],g=f[1];(function(t,r,i,a){var o;switch(n.kind){case 36:case 34:o="false";break;case 37:case 35:o="true"}if(o)return gn(t,r,e.Diagnostics.This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap,o,i,a);return})(c,i,m,g)||gn(c,i,e.Diagnostics.Operator_0_cannot_be_applied_to_types_1_and_2,e.tokenToString(n.kind),m,g)}}function Gv(t,r,n,i){var a=function(t){return 284!==t.kind||e.isJsxSelfClosingElement(t.parent)?t:t.parent.parent}(t),o=a.contextualType,s=a.inferenceContext;try{a.contextualType=r,a.inferenceContext=n;var c=fb(t,1|i|(n?2:0));return Rv(c,2944)&&Qv(c,b_(r,t))?gd(c):c}finally{a.contextualType=o,a.inferenceContext=s}}function $v(e,t){var r=Cn(e);if(!r.resolvedType){if(t&&0!==t)return fb(e,t);var n=Sr,i=nr;Sr=Dr,nr=void 0,r.resolvedType=fb(e,t),nr=i,Sr=n}return r.resolvedType}function Yv(t,r){var n=e.getEffectiveInitializer(t),i=db(n)||(r?Gv(n,r,void 0,0):$v(n));return e.isParameter(t)&&198===t.name.kind&&vf(i)&&!i.target.hasRestElement&&ul(i)<t.name.elements.length?function(t,r){for(var n=r.elements,i=ll(t).slice(),a=t.target.elementFlags.slice(),o=ul(t);o<n.length;o++){var s=n[o];(o<n.length-1||199!==s.kind||!s.dotDotDotToken)&&(i.push(!e.isOmittedExpression(s)&&N_(s)?Qa(s,!1,!1):Ee),a.push(2),e.isOmittedExpression(s)||N_(s)||Gf(s,Ee))}return Hl(i,a,t.target.readonly)}(i,t.name):i}function Xv(t,r){var n=2&e.getCombinedNodeFlags(t)||e.isDeclarationReadonly(t)?r:gf(r);if(e.isInJSFile(t)){if(98304&n.flags)return Gf(t,Ee),Ee;if(cf(n))return Gf(t,At),At}return n}function Qv(t,r){if(r){if(3145728&r.flags){var n=r.types;return e.some(n,(function(e){return Qv(t,e)}))}if(58982400&r.flags){var i=Qs(r)||Ae;return Rv(i,4)&&Rv(t,128)||Rv(i,8)&&Rv(t,256)||Rv(i,64)&&Rv(t,2048)||Rv(i,4096)&&Rv(t,8192)||Qv(t,i)}return!!(406847616&r.flags&&Rv(t,128)||256&r.flags&&Rv(t,256)||2048&r.flags&&Rv(t,2048)||512&r.flags&&Rv(t,512)||8192&r.flags&&Rv(t,8192))}return!1}function Zv(t){var r=t.parent;return e.isAssertionExpression(r)&&e.isConstTypeReference(r.type)||(e.isParenthesizedExpression(r)||e.isArrayLiteralExpression(r)||e.isSpreadElement(r))&&Zv(r)||(e.isPropertyAssignment(r)||e.isShorthandPropertyAssignment(r)||e.isTemplateSpan(r))&&Zv(r.parent)}function eb(t,r,n,i){var a=fb(t,r,i);return Zv(t)?gd(a):function(t){return 207===(t=e.skipParentheses(t)).kind||226===t.kind}(t)?a:hf(a,b_(2===arguments.length?x_(t):n,t))}function tb(e,t){return 159===e.name.kind&&M_(e.name),eb(e.initializer,t)}function rb(e,t){return iS(e),159===e.name.kind&&M_(e.name),nb(e,Tv(e,t),t)}function nb(t,r,n){if(n&&10&n){var i=ey(r,0,!0),a=ey(r,1,!0),o=i||a;if(o&&o.typeParameters){var s=v_(t,2);if(s){var c=ey(Pf(s),i?0:1,!1);if(c&&!c.typeParameters){if(8&n)return ib(t,n),ct;var l=E_(t),u=l.signature&&Bc(l.signature),d=u&&Zh(u);if(d&&!d.typeParameters&&!e.every(l.inferences,ab)){var p=function(t,r){for(var n,i,a=[],o=0,s=r;o<s.length;o++){var c=(f=s[o]).symbol.escapedName;if(ob(t.inferredTypeParameters,c)||ob(a,c)){var l=Ji(yn(262144,sb(e.concatenate(t.inferredTypeParameters,a),c)));l.target=f,n=e.append(n,f),i=e.append(i,l),a.push(l)}else a.push(f)}if(i)for(var u=Td(n,i),d=0,p=i;d<p.length;d++){var f;(f=p[d]).mapper=u}return a}(l,o.typeParameters),f=Vc(o,p),m=e.map(l.inferences,(function(e){return rm(e.typeParameter)}));if(Yf(f,c,(function(e,t){ym(m,e,t,0,!0)})),e.some(m,ab)&&(Xf(f,c,(function(e,t){ym(m,e,t)})),!function(e,t){for(var r=0;r<e.length;r++)if(ab(e[r])&&ab(t[r]))return!0;return!1}(l.inferences,m)))return function(e,t){for(var r=0;r<e.length;r++)!ab(e[r])&&ab(t[r])&&(e[r]=t[r])}(l.inferences,m),l.inferredTypeParameters=e.concatenate(l.inferredTypeParameters,p),$c(f)}return $c(ty(o,c,l))}}}}return r}function ib(e,t){2&t&&(E_(e).flags|=4)}function ab(e){return!(!e.candidates&&!e.contraCandidates)}function ob(t,r){return e.some(t,(function(e){return e.symbol.escapedName===r}))}function sb(e,t){for(var r=t.length;r>1&&t.charCodeAt(r-1)>=48&&t.charCodeAt(r-1)<=57;)r--;for(var n=t.slice(0,r),i=1;;i++){var a=n+i;if(!ob(e,a))return a}}function cb(e){var t=Qh(e);if(t&&!t.typeParameters)return Bc(t)}function lb(e){var t=fb(e.expression),r=Mf(t,e.expression),n=cb(t);return n&&Rf(n,e,r!==t)}function ub(t,r){var n=db(t);if(n)return n;if(67108864&t.flags&&nr){var i=nr[O(t)];if(i)return i}var a=Cr,o=fb(t,r);Cr!==a&&((nr||(nr=[]))[O(t)]=o,e.setNodeFlags(t,67108864|t.flags));return o}function db(t){var r=e.skipParentheses(t);if(!e.isCallExpression(r)||106===r.expression.kind||e.isRequireCall(r,!0)||Jy(r))if(!e.isEtsComponentExpression(r)||106===r.expression.kind||e.isRequireCall(r,!0)||Jy(r)){if(e.isAssertionExpression(r)&&!e.isConstTypeReference(r.type))return xd(r.type);if(8===t.kind||10===t.kind||110===t.kind||95===t.kind)return fb(t)}else{var n;if(n=e.isCallChain(r)?lb(r):cb(fh(r.expression,32)))return n}else if(n=e.isCallChain(r)?lb(r):cb(fh(r.expression,32)))return n}function pb(e){var t=Cn(e);if(t.contextFreeType)return t.contextFreeType;var r=e.contextualType;e.contextualType=Ee;try{return t.contextFreeType=fb(e,4)}finally{e.contextualType=r}}function fb(t,r,n){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkExpression",{kind:t.kind,pos:t.pos,end:t.end});var i=d;d=t,x=0;var a=nb(t,mb(t,r,n),r);return jv(a)&&function(t,r){var n=202===t.parent.kind&&t.parent.expression===t||203===t.parent.kind&&t.parent.expression===t||(78===t.kind||158===t.kind)&&$x(t)||177===t.parent.kind&&t.parent.exprName===t||273===t.parent.kind;n||pn(t,e.Diagnostics.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query);if(J.isolatedModules){e.Debug.assert(!!(128&r.symbol.flags)),8388608&r.symbol.valueDeclaration.flags&&pn(t,e.Diagnostics.Cannot_access_ambient_const_enums_when_the_isolatedModules_flag_is_provided)}}(t,a),d=i,null===e.tracing||void 0===e.tracing||e.tracing.pop(),a}function mb(t,i,a){var o=t.kind;if(n)switch(o){case 223:case 209:case 210:n.throwIfCancellationRequested()}switch(o){case 78:return Vg(t);case 108:return $g(t);case 106:return Qg(t);case 104:return Oe;case 14:case 10:return md(hd(t.text));case 8:return hS(t),md(hd(+t.text));case 9:return function(t){var r=e.isLiteralTypeNode(t.parent)||e.isPrefixUnaryExpression(t.parent)&&e.isLiteralTypeNode(t.parent.parent);if(!r&&V<7&&mS(t,e.Diagnostics.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))return!0}(t),md(function(t){return hd({negative:!1,base10Value:e.parsePseudoBigInt(t.text)})}(t));case 110:return ze;case 95:return je;case 220:return function(t){for(var r=[t.head.text],n=[],i=0,a=t.templateSpans;i<a.length;i++){var o=a[i],s=fb(o.expression);Rv(s,12288)&&pn(o.expression,e.Diagnostics.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),r.push(o.literal.text),n.push(cp(s,et)?s:Re)}return Zv(t)?Du(r,n):Re}(t);case 13:return Tt;case 200:return P_(t,i,a);case 201:return B_(t,i);case 202:return kh(t,i);case 158:return xh(t);case 203:return zh(t);case 204:if(100===t.expression.kind)return Vy(t);case 205:return My(t,i);case 211:var s=t;return s.body&&s.body.statements.length&&hb(s.body.statements,i),My(t,i);case 206:return Wy(t);case 208:return function(t,r){var n=e.isInJSFile(t)?e.getJSDocTypeTag(t):void 0;return n?$y(n,n.typeExpression.type,t.expression,r):fb(t.expression,r)}(t,i);case 223:return function(e){return mx(e),jx(e),_o(Ai(e))}(t);case 209:case 210:return Tv(t,i);case 213:return function(e){return fb(e.expression),tn}(t);case 207:case 226:return function(e){return $y(e,e.type,e.expression)}(t);case 227:return Yy(t);case 228:return Xy(t);case 212:return Fv(t);case 214:return function(e){return fb(e.expression),Pe}(t);case 215:return function(t){if(r){var n;if(!(32768&t.flags))if(e.isInTopLevelContext(t)){if(!dS(n=e.getSourceFileOfNode(t))){var i=void 0;if(!e.isEffectiveExternalModule(n,J)){i||(i=e.getSpanOfTokenAtPosition(n,t.pos));var a=e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module);Qr.add(a)}(H!==e.ModuleKind.ESNext&&H!==e.ModuleKind.System||V<4)&&(i=e.getSpanOfTokenAtPosition(n,t.pos),a=e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher),Qr.add(a))}}else if(!dS(n=e.getSourceFileOfNode(t))){i=e.getSpanOfTokenAtPosition(n,t.pos),a=e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules);var o=e.getContainingFunction(t);if(o&&167!==o.kind&&0==(2&e.getFunctionFlags(o))){var s=e.createDiagnosticForNode(o,e.Diagnostics.Did_you_mean_to_mark_this_function_as_async);e.addRelatedInfo(a,s)}Qr.add(a)}i_(t)&&pn(t,e.Diagnostics.await_expressions_cannot_be_used_in_a_parameter_initializer)}var c=fb(t.expression),l=Ub(c,t,e.Diagnostics.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return l!==c||l===we||3&c.flags||fn(!1,e.createDiagnosticForNode(t,e.Diagnostics.await_has_no_effect_on_the_type_of_this_expression)),l}(t);case 216:return function(t){var r=fb(t.operand);if(r===Ke)return Ke;switch(t.operand.kind){case 8:switch(t.operator){case 40:return md(hd(-t.operand.text));case 39:return md(hd(+t.operand.text))}break;case 9:if(40===t.operator)return md(hd({negative:!0,base10Value:e.parsePseudoBigInt(t.operand.text)}))}switch(t.operator){case 39:case 40:case 54:return vh(r,t.operand),Rv(r,12288)&&pn(t.operand,e.Diagnostics.The_0_operator_cannot_be_applied_to_type_symbol,e.tokenToString(t.operator)),39===t.operator?(Rv(r,2112)&&pn(t.operand,e.Diagnostics.Operator_0_cannot_be_applied_to_type_1,e.tokenToString(t.operator),da(mf(r))),Me):Ov(r);case 53:Ak(t.operand);var n=12582912&Vm(r);return 4194304===n?je:8388608===n?ze:qe;case 45:case 46:return Cv(t.operand,vh(r,t.operand),e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&Iv(t.operand,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),Ov(r)}return we}(t);case 217:return function(t){var r=fb(t.operand);return r===Ke?Ke:(Cv(t.operand,vh(r,t.operand),e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&Iv(t.operand,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),Ov(r))}(t);case 218:return Hv(t,i);case 219:return function(e,t){var r=Ak(e.condition);return Tk(e.condition,r,e.whenTrue),ou([fb(e.whenTrue,t),fb(e.whenFalse,t)],2)}(t,i);case 222:return function(e,t){return V<2&&BE(e,J.downlevelIteration?1536:1024),Fk(33,fb(e.expression,t),Ne,e.expression)}(t,i);case 224:return Pe;case 221:return function(t){r&&(8192&t.flags||pS(t,e.Diagnostics.A_yield_expression_is_only_allowed_in_a_generator_body),i_(t)&&pn(t,e.Diagnostics.yield_expressions_cannot_be_used_in_a_parameter_initializer));var n=e.getContainingFunction(t);if(!n)return Ee;var i=e.getFunctionFlags(n);if(!(1&i))return Ee;var a=0!=(2&i);t.asteriskToken&&(a&&V<99&&BE(t,26624),!a&&V<2&&J.downlevelIteration&&BE(t,256));var o=zc(n),s=o&&nx(o,a),c=s&&s.yieldType||Ee,l=s&&s.nextType||Ee,u=a?qb(l)||Ee:l,d=t.expression?fb(t.expression):Pe,p=kv(t,d,u,a);if(o&&p&&fp(p,c,t.expression||t,t.expression),t.asteriskToken)return Rk(a?19:17,1,d,t.expression)||Ee;if(o)return rx(2,o,a)||Ee;var f=a_(2,n);if(!f&&(f=Ee,r&&X&&!e.expressionResultIsUnused(t))){var m=x_(t);m&&!Pa(m)||pn(t,e.Diagnostics.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}return f}(t);case 229:return function(e){return e.isSpread?qu(e.type,Me):e.type}(t);case 286:return ch(t,i);case 276:case 277:return function(e,t){return jx(e),nh(e)||Ee}(t);case 280:return function(t){ah(t.openingFragment);var r=e.getSourceFileOfNode(t);return!e.getJSXTransformEnabled(J)||!J.jsxFactory&&!r.pragmas.has("jsx")||J.jsxFragmentFactory||r.pragmas.has("jsxfrag")||pn(t,J.jsxFactory?e.Diagnostics.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:e.Diagnostics.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),V_(t),nh(t)||Ee}(t);case 284:return K_(t,i);case 278:e.Debug.fail("Shouldn't ever directly check a JsxOpeningElement")}return we}function gb(t,r){_b(t,r),t.thenStatement&&e.isBlock(t.thenStatement)&&t.thenStatement.statements&&hb(t.thenStatement.statements,r),t.elseStatement&&(e.isIfStatement(t.elseStatement)&&gb(t.elseStatement,r),e.isBlock(t.elseStatement)&&t.elseStatement.statements&&hb(t.elseStatement.statements,r))}function _b(e,t){e.expression&&mb(e.expression,t),e.getChildren().forEach((function(e){return _b(e,t)}))}function hb(t,r){t.length&&t.forEach((function(t){e.isIfStatement(t)?gb(t,r):t.expression&&mb(t.expression,r)}))}function yb(t){t.expression&&pS(t.expression,e.Diagnostics.Type_expected),Mx(t.constraint),Mx(t.default);var n=qo(Ai(t));Qs(n),function(e){return rc(e)!==ut}(n)||pn(t.default,e.Diagnostics.Type_parameter_0_has_a_circular_default,da(n));var i=Ws(n),a=nc(n);i&&a&&pp(a,ls(Wd(i,Ad(n,a)),a),t.default,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1),r&&lx(t.name,e.Diagnostics.Type_parameter_name_cannot_be_0)}function vb(t){UE(t),kk(t);var r=e.getContainingFunction(t);e.hasSyntacticModifier(t,92)&&(167===r.kind&&e.nodeIsPresent(r.body)||pn(t,e.Diagnostics.A_parameter_property_is_only_allowed_in_a_constructor_implementation),167===r.kind&&e.isIdentifier(t.name)&&"constructor"===t.name.escapedText&&pn(t.name,e.Diagnostics.constructor_cannot_be_used_as_a_parameter_property_name)),t.questionToken&&e.isBindingPattern(t.name)&&r.body&&pn(t,e.Diagnostics.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),t.name&&e.isIdentifier(t.name)&&("this"===t.name.escapedText||"new"===t.name.escapedText)&&(0!==r.parameters.indexOf(t)&&pn(t,e.Diagnostics.A_0_parameter_must_be_the_first_parameter,t.name.escapedText),167!==r.kind&&171!==r.kind&&176!==r.kind||pn(t,e.Diagnostics.A_constructor_cannot_have_a_this_parameter),210===r.kind&&pn(t,e.Diagnostics.An_arrow_function_cannot_have_a_this_parameter),168!==r.kind&&169!==r.kind||pn(t,e.Diagnostics.get_and_set_accessors_cannot_declare_this_parameters)),!t.dotDotDotToken||e.isBindingPattern(t.name)||cp(uc(_o(t.symbol)),Pt)||pn(t,e.Diagnostics.A_rest_parameter_must_be_of_an_array_type)}function bb(t,r,n){for(var i=0,a=t.elements;i<a.length;i++){var o=a[i];if(!e.isOmittedExpression(o)){var s=o.name;if(78===s.kind&&s.escapedText===n)return pn(r,e.Diagnostics.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,n),!0;if((198===s.kind||197===s.kind)&&bb(s,r,n))return!0}}}function kb(t){172===t.kind?function(t){UE(t)||function(t){var r=t.parameters[0];if(1!==t.parameters.length)return mS(r?r.name:t,e.Diagnostics.An_index_signature_must_have_exactly_one_parameter);if(JE(t.parameters,e.Diagnostics.An_index_signature_cannot_have_a_trailing_comma),r.dotDotDotToken)return mS(r.dotDotDotToken,e.Diagnostics.An_index_signature_cannot_have_a_rest_parameter);if(e.hasEffectiveModifiers(r))return mS(r.name,e.Diagnostics.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(r.questionToken)return mS(r.questionToken,e.Diagnostics.An_index_signature_parameter_cannot_have_a_question_mark);if(r.initializer)return mS(r.name,e.Diagnostics.An_index_signature_parameter_cannot_have_an_initializer);if(!r.type)return mS(r.name,e.Diagnostics.An_index_signature_parameter_must_have_a_type_annotation);if(148!==r.type.kind&&145!==r.type.kind){var n=xd(r.type);return 4&n.flags||8&n.flags?mS(r.name,e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead,e.getTextOfNode(r.name),da(n),da(t.type?xd(t.type):Ee)):1048576&n.flags&&Lv(n,384,!0)?mS(r.name,e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead):mS(r.name,e.Diagnostics.An_index_signature_parameter_type_must_be_either_string_or_number)}if(!t.type)return mS(t,e.Diagnostics.An_index_signature_must_have_a_type_annotation)}(t)}(t):175!==t.kind&&253!==t.kind&&176!==t.kind&&170!==t.kind&&167!==t.kind&&171!==t.kind||KE(t);var n=e.getFunctionFlags(t);if(4&n||(3==(3&n)&&V<99&&BE(t,6144),2==(3&n)&&V<4&&BE(t,64),0!=(3&n)&&V<2&&BE(t,128)),ux(t.typeParameters),e.forEach(t.parameters,vb),t.type&&Mx(t.type),r){!function(t){if(V>=2||!e.hasRestParameter(t)||8388608&t.flags||e.nodeIsMissing(t.body))return;e.forEach(t.parameters,(function(t){t.name&&!e.isBindingPattern(t.name)&&t.name.escapedText===se.escapedName&&dn("noEmit",t,e.Diagnostics.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)}))}(t);var i=e.getEffectiveReturnTypeNode(t);if(X&&!i)switch(t.kind){case 171:pn(t,e.Diagnostics.Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break;case 170:pn(t,e.Diagnostics.Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type)}if(i){var a=e.getFunctionFlags(t);if(1==(5&a)){var o=xd(i);if(o===Ve)pn(i,e.Diagnostics.A_generator_cannot_have_a_void_type_annotation);else{var s=rx(0,o,0!=(2&a))||Ee;pp(bv(s,rx(1,o,0!=(2&a))||s,rx(2,o,0!=(2&a))||Ae,!!(2&a)),o,i)}}else 2==(3&a)&&function(t,r){var n=xd(r);if(V>=2){if(n===we)return;var i=Il(!0);if(i!==st&&!ho(n,i))return void pn(r,e.Diagnostics.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,da(qb(n)||Ve))}else{if(function(t){Hb(t&&e.getEntityNameFromTypeNode(t))}(r),n===we)return;var a=e.getEntityNameFromTypeNode(r);if(void 0===a)return void pn(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,da(n));var o=fi(a,111551,!0),s=o?_o(o):we;if(s===we)return void(78===a.kind&&"Promise"===a.escapedText&&yo(n)===Il(!1)?pn(r,e.Diagnostics.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):pn(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,e.entityNameToString(a)));var c=(d=!0,Bt||(Bt=Al("PromiseConstructorLike",0,d))||nt);if(c===nt)return void pn(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,e.entityNameToString(a));if(!pp(s,c,r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value))return;var l=a&&e.getFirstIdentifier(a),u=Nn(t.locals,l.escapedText,111551);if(u)return void pn(u.valueDeclaration,e.Diagnostics.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,e.idText(l),e.entityNameToString(a))}var d;Ub(n,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)}(t,i)}172!==t.kind&&311!==t.kind&&Zb(t)}}function xb(t){for(var r=new e.Map,n=0,i=t.members;n<i.length;n++){var a=i[n];if(163===a.kind){var o=void 0,s=a.name;switch(s.kind){case 10:case 8:o=s.text;break;case 78:o=e.idText(s);break;default:continue}r.get(o)?(pn(e.getNameOfDeclaration(a.symbol.valueDeclaration),e.Diagnostics.Duplicate_identifier_0,o),pn(a.name,e.Diagnostics.Duplicate_identifier_0,o)):r.set(o,!0)}}}function Eb(t){if(256===t.kind){var r=Ai(t);if(r.declarations.length>0&&r.declarations[0]!==t)return}var n=Yc(Ai(t));if(n)for(var i=!1,a=!1,o=0,s=n.declarations;o<s.length;o++){var c=s[o];if(1===c.parameters.length&&c.parameters[0].type)switch(c.parameters[0].type.kind){case 148:a?pn(c,e.Diagnostics.Duplicate_string_index_signature):a=!0;break;case 145:i?pn(c,e.Diagnostics.Duplicate_number_index_signature):i=!0}}}function Sb(t){if(UE(t)||function(t){if(e.isClassLike(t.parent)){if(e.isStringLiteral(t.name)&&"constructor"===t.name.text)return mS(t.name,e.Diagnostics.Classes_may_not_have_a_field_named_constructor);if(nS(t.name,e.Diagnostics.A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(V<2&&e.isPrivateIdentifier(t.name))return mS(t.name,e.Diagnostics.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher)}else if(256===t.parent.kind){if(nS(t.name,e.Diagnostics.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(t.initializer)return mS(t.initializer,e.Diagnostics.An_interface_property_cannot_have_an_initializer)}else if(178===t.parent.kind){if(nS(t.name,e.Diagnostics.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(t.initializer)return mS(t.initializer,e.Diagnostics.A_type_literal_property_cannot_have_an_initializer)}8388608&t.flags&&oS(t);if(e.isPropertyDeclaration(t)&&t.exclamationToken&&(!e.isClassLike(t.parent)||!t.type||t.initializer||8388608&t.flags||e.hasSyntacticModifier(t,160))){var r=t.initializer?e.Diagnostics.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:t.type?e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context:e.Diagnostics.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return mS(t.exclamationToken,r)}}(t)||XE(t.name),kk(t),e.isPrivateIdentifier(t.name)&&V<99)for(var r=e.getEnclosingBlockScopeContainer(t);r;r=e.getEnclosingBlockScopeContainer(r))Cn(r).flags|=67108864}function Db(t){if(!t.virtual){kb(t),function(t){var r=e.isInJSFile(t)?e.getJSDocTypeParameterDeclarations(t):void 0,n=t.typeParameters||r&&e.firstOrUndefined(r);if(n){var i=n.pos===n.end?n.pos:e.skipTrivia(e.getSourceFileOfNode(t).text,n.pos);return fS(t,i,n.end-i,e.Diagnostics.Type_parameters_cannot_appear_on_a_constructor_declaration)}}(t)||function(t){var r=e.getEffectiveReturnTypeNode(t);if(r)mS(r,e.Diagnostics.Type_annotation_cannot_appear_on_a_constructor_declaration)}(t),Mx(t.body);var n=Ai(t);if(t===e.getDeclarationOfKind(n,t.kind)&&Lb(n),!e.nodeIsMissing(t.body)&&r){var i=t.parent;if(e.getClassExtendsHeritageElement(i)){Hg(t.parent,i);var a=Wg(i),o=Kg(t.body);if(o){if(a&&pn(o,e.Diagnostics.A_constructor_cannot_contain_a_super_call_when_its_class_extends_null),(99!==J.target||!J.useDefineForClassFields)&&(e.some(t.parent.members,(function(t){return!!e.isPrivateIdentifierPropertyDeclaration(t)||164===t.kind&&!e.hasSyntacticModifier(t,32)&&!!t.initializer}))||e.some(t.parameters,(function(t){return e.hasSyntacticModifier(t,92)})))){for(var s=void 0,c=0,l=t.body.statements;c<l.length;c++){var u=l[c];if(235===u.kind&&e.isSuperCall(u.expression)){s=u;break}if(!e.isPrologueDirective(u))break}s||pn(t,e.Diagnostics.A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_properties_parameter_properties_or_private_identifiers)}}else a||pn(t,e.Diagnostics.Constructors_for_derived_classes_must_contain_a_super_call)}}}}function wb(t){if(r){if(KE(t)||function(t){if(!(8388608&t.flags)){if(V<1)return mS(t.name,e.Diagnostics.Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher);if(void 0===t.body&&!e.hasSyntacticModifier(t,128))return fS(t,t.end-1,1,e.Diagnostics._0_expected,"{")}if(t.body&&e.hasSyntacticModifier(t,128))return mS(t,e.Diagnostics.An_abstract_accessor_cannot_have_an_implementation);if(t.typeParameters)return mS(t.name,e.Diagnostics.An_accessor_cannot_have_type_parameters);if(!function(e){return rS(e)||e.parameters.length===(168===e.kind?0:1)}(t))return mS(t.name,168===t.kind?e.Diagnostics.A_get_accessor_cannot_have_parameters:e.Diagnostics.A_set_accessor_must_have_exactly_one_parameter);if(169===t.kind){if(t.type)return mS(t.name,e.Diagnostics.A_set_accessor_cannot_have_a_return_type_annotation);var r=e.Debug.checkDefined(e.getSetAccessorValueParameter(t),"Return value does not match parameter count assertion.");if(r.dotDotDotToken)return mS(r.dotDotDotToken,e.Diagnostics.A_set_accessor_cannot_have_rest_parameter);if(r.questionToken)return mS(r.questionToken,e.Diagnostics.A_set_accessor_cannot_have_an_optional_parameter);if(r.initializer)return mS(t.name,e.Diagnostics.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}(t)||XE(t.name),Yb(t),kb(t),168===t.kind&&!(8388608&t.flags)&&e.nodeIsPresent(t.body)&&256&t.flags&&(512&t.flags||pn(t.name,e.Diagnostics.A_get_accessor_must_return_a_value)),159===t.name.kind&&M_(t.name),e.isPrivateIdentifier(t.name)&&pn(t.name,e.Diagnostics.An_accessor_cannot_be_named_with_a_private_identifier),ns(t)){var n=168===t.kind?169:168,i=e.getDeclarationOfKind(Ai(t),n);if(i){var a=e.getEffectiveModifierFlags(t),o=e.getEffectiveModifierFlags(i);(28&a)!=(28&o)&&pn(t.name,e.Diagnostics.Getter_and_setter_accessors_do_not_agree_in_visibility),(128&a)!=(128&o)&&pn(t.name,e.Diagnostics.Accessors_must_both_be_abstract_or_non_abstract),Tb(t,i,so,e.Diagnostics.get_and_set_accessor_must_have_the_same_type),Tb(t,i,co,e.Diagnostics.get_and_set_accessor_must_have_the_same_this_type)}}var s=lo(Ai(t));168===t.kind&&wv(t,s)}Mx(t.body)}function Tb(e,t,r,n){var i=r(e),a=r(t);i&&a&&!np(i,a)&&pn(e,n)}function Cb(t,r){return Pc(e.map(t.typeArguments,xd),r,Nc(r),e.isInJSFile(t))}function Ab(t,r){for(var n,i,a=!0,o=0;o<r.length;o++){var s=Ws(r[o]);s&&(n||(i=Td(r,n=Cb(t,r))),a=a&&pp(n[o],Wd(s,i),t.typeArguments[o],e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1))}return a}function Nb(t){var r=El(t);if(r!==we){var n=Cn(t).resolvedSymbol;if(n)return 524288&n.flags&&Tn(n).typeParameters||(4&e.getObjectFlags(r)?r.target.localTypeParameters:void 0)}}function Pb(e){return e.fileName?e.fileName:Pb(e.parent)}function Ib(n){Pb(n),WE(n,n.typeArguments),174!==n.kind||void 0===n.typeName.jsdocDotPos||e.isInJSFile(n)||e.isInJSDoc(n)||fS(n,n.typeName.jsdocDotPos,1,e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments),e.forEach(n.typeArguments,Mx);var i=El(n);if(i!==we){if(n.typeArguments&&r){var a=Nb(n);a&&Ab(n,a)}var o=Cn(n).resolvedSymbol;o&&(t.getSymbolOfTypeReference&&t.getSymbolOfTypeReference(n,o),e.some(o.declarations,(function(e){return Hx(e)&&!!(134217728&e.flags)}))&&hn(qy(n),o.declarations,o.escapedName),32&i.flags&&8&o.flags&&pn(n,e.Diagnostics.Enum_type_0_has_members_with_initializers_that_are_not_literals,da(i)))}}function Fb(t,r){if(!(8388608&t.flags))return t;var n=t.objectType,i=t.indexType;if(cp(i,Eu(n,!1)))return 203===r.kind&&e.isAssignmentTarget(r)&&32&e.getObjectFlags(n)&&1&Ls(n)&&pn(r,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,da(n)),t;var a=ac(n);if(bc(a,1)&&Mv(i,296))return t;if(Ru(n)){var o=Au(i,r);if(o){var s=cg(a,(function(e){return gc(e,o)}));if(s&&24&e.getDeclarationModifierFlagsFromSymbol(s))return pn(r,e.Diagnostics.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,e.unescapeLeadingUnderscores(o)),we}}return pn(r,e.Diagnostics.Type_0_cannot_be_used_to_index_type_1,da(i),da(n)),we}function Ob(t){!function(t){if(152===t.operator){if(149!==t.type.kind)return mS(t.type,e.Diagnostics._0_expected,e.tokenToString(149));var r=e.walkUpParenthesizedTypes(t.parent);switch(e.isInJSFile(r)&&e.isJSDocTypeExpression(r)&&(r=r.parent,e.isJSDocTypeTag(r)&&(r=r.parent.parent)),r.kind){case 251:var n=r;if(78!==n.name.kind)return mS(t,e.Diagnostics.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!e.isVariableDeclarationInVariableStatement(n))return mS(t,e.Diagnostics.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(2&n.parent.flags))return mS(r.name,e.Diagnostics.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 164:if(!e.hasSyntacticModifier(r,32)||!e.hasEffectiveModifier(r,64))return mS(r.name,e.Diagnostics.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 163:if(!e.hasSyntacticModifier(r,64))return mS(r.name,e.Diagnostics.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:mS(t,e.Diagnostics.unique_symbol_types_are_not_allowed_here)}}else if(143===t.operator&&179!==t.type.kind&&180!==t.type.kind)pS(t,e.Diagnostics.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,e.tokenToString(149))}(t),Mx(t.type)}function Rb(t){return(e.hasEffectiveModifier(t,8)||e.isPrivateIdentifierPropertyDeclaration(t))&&!!(8388608&t.flags)}function Mb(t,r){var n=e.getCombinedModifierFlags(t);return 256!==t.parent.kind&&254!==t.parent.kind&&223!==t.parent.kind&&8388608&t.flags&&(2&n||e.isModuleBlock(t.parent)&&e.isModuleDeclaration(t.parent.parent)&&e.isGlobalScopeAugmentation(t.parent.parent)||(n|=1),n|=2),n&r}function Lb(t){if(r){for(var n,i,a,o=0,s=155,c=!1,l=!0,u=!1,d=t.declarations,p=0!=(16384&t.flags),f=!1,m=!1,g=!1,_=[],h=0,y=d;h<y.length;h++){var v=y[h],b=8388608&v.flags,k=v.parent&&(256===v.parent.kind||178===v.parent.kind)||b;if(k&&(a=void 0),254!==v.kind&&223!==v.kind||b||(g=!0),253===v.kind||166===v.kind||165===v.kind||167===v.kind){_.push(v);var x=Mb(v,155);o|=x,s&=x,c=c||e.hasQuestionToken(v),l=l&&e.hasQuestionToken(v);var E=e.nodeIsPresent(v.body);E&&n?p?m=!0:f=!0:(null==a?void 0:a.parent)===v.parent&&a.end!==v.pos&&N(a),E?n||(n=v):u=!0,a=v,k||(i=v)}}if(m&&e.forEach(_,(function(t){pn(t,e.Diagnostics.Multiple_constructor_implementations_are_not_allowed)})),f&&e.forEach(_,(function(t){pn(e.getNameOfDeclaration(t)||t,e.Diagnostics.Duplicate_function_implementation)})),g&&!p&&16&t.flags&&e.forEach(d,(function(r){Sn(r,e.Diagnostics.Duplicate_identifier_0,e.symbolName(t),d)})),!i||i.body||e.hasSyntacticModifier(i,128)||i.questionToken||N(i),u&&(function(t,r,n,i,a){if(0!=(i^a)){var o=Mb(A(t,r),n);e.forEach(t,(function(t){var r=Mb(t,n)^o;1&r?pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_exported_or_non_exported):2&r?pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_ambient_or_non_ambient):24&r?pn(e.getNameOfDeclaration(t)||t,e.Diagnostics.Overload_signatures_must_all_be_public_private_or_protected):128&r&&pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_abstract_or_non_abstract)}))}}(d,n,155,o,s),function(t,r,n,i){if(n!==i){var a=e.hasQuestionToken(A(t,r));e.forEach(t,(function(t){e.hasQuestionToken(t)!==a&&pn(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_optional_or_required)}))}}(d,n,c,l),n))for(var S=Rc(t),D=Ic(n),w=0,T=S;w<T.length;w++){var C=T[w];if(!Sp(D,C)){e.addRelatedInfo(pn(C.declaration,e.Diagnostics.This_overload_signature_is_not_compatible_with_its_implementation_signature),e.createDiagnosticForNode(n,e.Diagnostics.The_implementation_signature_is_declared_here));break}}}function A(e,t){return void 0!==t&&t.parent===e[0].parent?t:e[0]}function N(t){if(!t.name||!e.nodeIsMissing(t.name)){var r=!1,n=e.forEachChild(t.parent,(function(e){if(r)return e;r=e===t}));if(n&&n.pos===t.end&&n.kind===t.kind){var i=n.name||n,a=n.name;if(t.name&&a&&(e.isPrivateIdentifier(t.name)&&e.isPrivateIdentifier(a)&&t.name.escapedText===a.escapedText||e.isComputedPropertyName(t.name)&&e.isComputedPropertyName(a)||e.isPropertyNameLiteral(t.name)&&e.isPropertyNameLiteral(a)&&e.getEscapedTextOfIdentifierOrLiteral(t.name)===e.getEscapedTextOfIdentifierOrLiteral(a))){if((166===t.kind||165===t.kind)&&e.hasSyntacticModifier(t,32)!==e.hasSyntacticModifier(n,32))pn(i,e.hasSyntacticModifier(t,32)?e.Diagnostics.Function_overload_must_be_static:e.Diagnostics.Function_overload_must_not_be_static);return}if(e.nodeIsPresent(n.body))return void pn(i,e.Diagnostics.Function_implementation_name_must_be_0,e.declarationNameToString(t.name))}var o=t.name||t;p?pn(o,e.Diagnostics.Constructor_implementation_is_missing):e.hasSyntacticModifier(t,128)?pn(o,e.Diagnostics.All_declarations_of_an_abstract_method_must_be_consecutive):pn(o,e.Diagnostics.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}}}function jb(t){if(r){var n=t.localSymbol;if((n||(n=Ai(t)).exportSymbol)&&e.getDeclarationOfKind(n,t.kind)===t){for(var i=0,a=0,o=0,s=0,c=n.declarations;s<c.length;s++){var l=h(g=c[s]),u=Mb(g,513);1&u?512&u?o|=l:i|=l:a|=l}var d=i&a,p=o&(i|a);if(d||p)for(var f=0,m=n.declarations;f<m.length;f++){l=h(g=m[f]);var g,_=e.getNameOfDeclaration(g);l&p?pn(_,e.Diagnostics.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,e.declarationNameToString(_)):l&d&&pn(_,e.Diagnostics.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,e.declarationNameToString(_))}}}function h(t){var r=t;switch(r.kind){case 256:case 257:case 334:case 327:case 328:return 2;case 259:return e.isAmbientModule(r)||0!==e.getModuleInstanceState(r)?5:4;case 254:case 255:case 258:case 294:return 3;case 300:return 7;case 269:if(!e.isEntityNameExpression(r.expression))return 1;r=r.expression;case 263:case 266:case 265:var n=0,i=ai(Ai(r));return e.forEach(i.declarations,(function(e){n|=h(e)})),n;case 251:case 199:case 253:case 268:case 78:return 1;default:return e.Debug.failBadSyntaxKind(r)}}}function Bb(e,t,r,n){var i=zb(e,t);return i&&qb(i,t,r,n)}function zb(t,r){if(!Pa(t)){var n=t;if(n.promisedTypeOfPromise)return n.promisedTypeOfPromise;if(ho(t,Il(!1)))return n.promisedTypeOfPromise=ll(t)[0];var i=Na(t,"then");if(!Pa(i)){var a=i?hc(i,0):e.emptyArray;if(0!==a.length){var o=Hm(ou(e.map(a,dv)),2097152);if(!Pa(o)){var s=hc(o,0);if(0!==s.length)return n.promisedTypeOfPromise=ou(e.map(s,dv),2);r&&pn(r,e.Diagnostics.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback)}}else r&&pn(r,e.Diagnostics.A_promise_must_have_a_then_method)}}}function Ub(e,t,r,n){return qb(e,t,r,n)||we}function qb(e,t,r,n){if(Pa(e))return e;var i=e;return i.awaitedTypeOfType?i.awaitedTypeOfType:i.awaitedTypeOfType=pg(e,t?function(e){return Jb(e,t,r,n)}:Jb)}function Jb(t,r,n,i){var a=t;if(a.awaitedTypeOfType)return a.awaitedTypeOfType;var o=zb(t);if(o){if(t.id===o.id||Xr.lastIndexOf(o.id)>=0)return void(r&&pn(r,e.Diagnostics.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method));Xr.push(t.id);var s=qb(o,r,n,i);if(Xr.pop(),!s)return;return a.awaitedTypeOfType=s}if(!function(e){var t=Na(e,"then");return!!t&&hc(Hm(t,2097152),0).length>0}(t))return a.awaitedTypeOfType=t;if(r){if(!n)return e.Debug.fail();pn(r,n,i)}}function Vb(t){var r=Iy(t);Uy(r,t);var n=Bc(r);if(!(1&n.flags)){var i,a,o=Ty(t);switch(t.parent.kind){case 254:case 255:i=ou([_o(Ai(t.parent)),Ve]);break;case 161:i=Ve,a=e.chainDiagnosticMessages(void 0,e.Diagnostics.The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any);break;case 164:i=Ve,a=e.chainDiagnosticMessages(void 0,e.Diagnostics.The_return_type_of_a_property_decorator_function_must_be_either_void_or_any);break;case 166:case 168:case 169:i=ou([Ll(Qx(t.parent)),Ve]);break;default:return e.Debug.fail()}pp(n,i,t,o,(function(){return a}))}}function Hb(t){if(t){var r=e.getFirstIdentifier(t),n=2097152|(78===t.kind?788968:1920),i=Fn(r,r.escapedText,n,void 0,void 0,!0);i&&2097152&i.flags&&Mi(i)&&!gE(ai(i))&&!ci(i)&&ui(i)}}function Kb(t){var r=Wb(t);r&&e.isEntityName(r)&&Hb(r)}function Wb(e){if(e)switch(e.kind){case 184:case 183:return Gb(e.types);case 185:return Gb([e.trueType,e.falseType]);case 187:case 193:return Wb(e.type);case 174:return e.typeName}}function Gb(t){for(var r,n=0,i=t;n<i.length;n++){for(var a=i[n];187===a.kind||193===a.kind;)a=a.type;if(142!==a.kind&&(W||(192!==a.kind||104!==a.literal.kind)&&151!==a.kind)){var o=Wb(a);if(!o)return;if(r){if(!e.isIdentifier(r)||!e.isIdentifier(o)||r.escapedText!==o.escapedText)return}else r=o}}return r}function $b(t){var r=e.getEffectiveTypeAnnotationNode(t);return e.isRestParameter(t)?e.getRestParameterElementType(r):r}function Yb(t){if(t.decorators&&(t.decorators.forEach((function(t){t.expression&&e.isIdentifier(t.expression)&&Vg(t.expression)})),e.nodeCanBeDecorated(t,t.parent,t.parent.parent))){J.experimentalDecorators||pn(t,e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning);var r=t.decorators[0];if(BE(r,8),161===t.kind&&BE(r,32),J.emitDecoratorMetadata)switch(BE(r,16),t.kind){case 254:var n=e.getFirstConstructorWithBody(t);if(n)for(var i=0,a=n.parameters;i<a.length;i++){Kb($b(a[i]))}break;case 168:case 169:var o=168===t.kind?169:168,s=e.getDeclarationOfKind(Ai(t),o);Kb(oo(t)||s&&oo(s));break;case 166:for(var c=0,l=t.parameters;c<l.length;c++){Kb($b(l[c]))}Kb(e.getEffectiveReturnTypeNode(t));break;case 164:Kb(e.getEffectiveTypeAnnotationNode(t));break;case 161:Kb($b(t));for(var u=0,d=t.parent.parameters;u<d.length;u++){Kb($b(d[u]))}}e.forEach(t.decorators,Vb)}}function Xb(e){switch(e.kind){case 78:return e;case 202:return e.name;default:return}}function Qb(t){Yb(t),kb(t);var n=e.getFunctionFlags(t);if(t.name&&159===t.name.kind&&M_(t.name),ns(t)){var i=Ai(t),a=t.localSymbol||i,o=e.find(a.declarations,(function(e){return e.kind===t.kind&&!(131072&e.flags)}));t===o&&Lb(a),i.parent&&Lb(i)}var s=165===t.kind?void 0:t.body;if(Mx(s),wv(t,zc(t)),r&&!e.getEffectiveReturnTypeNode(t)&&(e.nodeIsMissing(s)&&!Rb(t)&&Gf(t,Ee),1&n&&e.nodeIsPresent(s)&&Bc(Ic(t))),e.isInJSFile(t)){var c=e.getJSDocTypeTag(t);c&&c.typeExpression&&!w_(xd(c.typeExpression),t)&&pn(c.typeExpression.type,e.Diagnostics.The_type_of_a_function_declaration_must_match_the_function_s_signature)}}function Zb(t){if(r){var n=e.getSourceFileOfNode(t),i=Er.get(n.path);i||(i=[],Er.set(n.path,i)),i.push(t)}}function ek(t,r){for(var n=0,i=t;n<i.length;n++){var a=i[n];switch(a.kind){case 254:case 223:case 255:nk(a,r),ak(a,r);break;case 300:case 259:case 232:case 261:case 239:case 240:case 241:uk(a,r);break;case 167:case 209:case 253:case 210:case 166:case 168:case 169:a.body&&uk(a,r),ak(a,r);break;case 165:case 170:case 171:case 175:case 176:case 257:case 256:ak(a,r);break;case 186:ik(a,r);break;default:e.Debug.assertNever(a,"Node should not have been registered for unused identifiers check")}}}function tk(t,r,n){var i=e.getNameOfDeclaration(t)||t,a=Hx(t)?e.Diagnostics._0_is_declared_but_never_used:e.Diagnostics._0_is_declared_but_its_value_is_never_read;n(t,0,e.createDiagnosticForNode(i,a,r))}function rk(t){return e.isIdentifier(t)&&95===e.idText(t).charCodeAt(0)}function nk(t,r){for(var n=0,i=t.members;n<i.length;n++){var a=i[n];switch(a.kind){case 166:case 164:case 168:case 169:if(169===a.kind&&32768&a.symbol.flags)break;var o=Ai(a);o.isReferenced||!(e.hasEffectiveModifier(a,8)||e.isNamedDeclaration(a)&&e.isPrivateIdentifier(a.name))||8388608&a.flags||r(a,0,e.createDiagnosticForNode(a.name,e.Diagnostics._0_is_declared_but_its_value_is_never_read,la(o)));break;case 167:for(var s=0,c=a.parameters;s<c.length;s++){var l=c[s];!l.symbol.isReferenced&&e.hasSyntacticModifier(l,8)&&r(l,0,e.createDiagnosticForNode(l.name,e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read,e.symbolName(l.symbol)))}break;case 172:case 231:break;default:e.Debug.fail()}}}function ik(t,r){var n=t.typeParameter;ok(n)&&r(t,1,e.createDiagnosticForNode(t,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.idText(n.name)))}function ak(t,r){if(e.last(Ai(t).declarations)===t)for(var n=e.getEffectiveTypeParameterDeclarations(t),i=new e.Set,a=0,o=n;a<o.length;a++){var s=o[a];if(ok(s)){var c=e.idText(s.name),l=s.parent;if(186!==l.kind&&l.typeParameters.every(ok)){if(e.tryAddToSet(i,l)){var u=e.getSourceFileOfNode(l),d=e.isJSDocTemplateTag(l)?e.rangeOfNode(l):e.rangeOfTypeParameters(u,l.typeParameters),p=1===l.typeParameters.length,f=p?e.Diagnostics._0_is_declared_but_its_value_is_never_read:e.Diagnostics.All_type_parameters_are_unused,m=p?c:void 0;r(s,1,e.createFileDiagnostic(u,d.pos,d.end-d.pos,f,m))}}else r(s,1,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_but_its_value_is_never_read,c))}}}function ok(e){return!(262144&Ci(e.symbol).isReferenced||rk(e.name))}function sk(e,t,r,n){var i=String(n(t)),a=e.get(i);a?a[1].push(r):e.set(i,[t,[r]])}function ck(t){return e.tryCast(e.getRootDeclaration(t),e.isParameter)}function lk(t){return e.isBindingElement(t)?e.isObjectBindingPattern(t.parent)?!(!t.propertyName||!rk(t.name)):rk(t.name):e.isAmbientModule(t)||(e.isVariableDeclaration(t)&&e.isForInOrOfStatement(t.parent.parent)||pk(t))&&rk(t.name)}function uk(t,r){var n=new e.Map,i=new e.Map,a=new e.Map;t.locals.forEach((function(t){var o;if(!(262144&t.flags?!(3&t.flags)||3&t.isReferenced:t.isReferenced||t.exportSymbol))for(var s=0,c=t.declarations;s<c.length;s++){var l=c[s];if(!lk(l))if(pk(l))sk(n,265===(o=l).kind?o:266===o.kind?o.parent:o.parent.parent,l,O);else if(e.isBindingElement(l)&&e.isObjectBindingPattern(l.parent)){l!==e.last(l.parent.elements)&&e.last(l.parent.elements).dotDotDotToken||sk(i,l.parent,l,O)}else if(e.isVariableDeclaration(l))sk(a,l.parent,l,O);else{var u=t.valueDeclaration&&ck(t.valueDeclaration),d=t.valueDeclaration&&e.getNameOfDeclaration(t.valueDeclaration);u&&d?e.isParameterPropertyDeclaration(u,u.parent)||e.parameterIsThisKeyword(u)||rk(d)||(e.isBindingElement(l)&&e.isArrayBindingPattern(l.parent)?sk(i,l.parent,l,O):r(u,1,e.createDiagnosticForNode(d,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.symbolName(t)))):tk(l,e.symbolName(t),r)}}})),n.forEach((function(t){var n=t[0],i=t[1],a=n.parent;if((n.name?1:0)+(n.namedBindings?266===n.namedBindings.kind?1:n.namedBindings.elements.length:0)===i.length)r(a,0,1===i.length?e.createDiagnosticForNode(a,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.idText(e.first(i).name)):e.createDiagnosticForNode(a,e.Diagnostics.All_imports_in_import_declaration_are_unused));else for(var o=0,s=i;o<s.length;o++){var c=s[o];tk(c,e.idText(c.name),r)}})),i.forEach((function(t){var n=t[0],i=t[1],o=ck(n.parent)?1:0;if(n.elements.length===i.length)1===i.length&&251===n.parent.kind&&252===n.parent.parent.kind?sk(a,n.parent.parent,n.parent,O):r(n,o,1===i.length?e.createDiagnosticForNode(n,e.Diagnostics._0_is_declared_but_its_value_is_never_read,dk(e.first(i).name)):e.createDiagnosticForNode(n,e.Diagnostics.All_destructured_elements_are_unused));else for(var s=0,c=i;s<c.length;s++){var l=c[s];r(l,o,e.createDiagnosticForNode(l,e.Diagnostics._0_is_declared_but_its_value_is_never_read,dk(l.name)))}})),a.forEach((function(t){var n=t[0],i=t[1];if(n.declarations.length===i.length)r(n,0,1===i.length?e.createDiagnosticForNode(e.first(i).name,e.Diagnostics._0_is_declared_but_its_value_is_never_read,dk(e.first(i).name)):e.createDiagnosticForNode(234===n.parent.kind?n.parent:n,e.Diagnostics.All_variables_are_unused));else for(var a=0,o=i;a<o.length;a++){var s=o[a];r(s,0,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_but_its_value_is_never_read,dk(s.name)))}}))}function dk(t){switch(t.kind){case 78:return e.idText(t);case 198:case 197:return dk(e.cast(e.first(t.elements),e.isBindingElement).name);default:return e.Debug.assertNever(t)}}function pk(e){return 265===e.kind||268===e.kind||266===e.kind}function fk(t){if(232===t.kind&&_S(t),e.isFunctionOrModuleBlock(t)){var r=Tr;e.forEach(t.statements,Mx),Tr=r}else e.forEach(t.statements,Mx);t.locals&&Zb(t)}function mk(t,r,n){if(!r||r.escapedText!==n)return!1;if(164===t.kind||163===t.kind||166===t.kind||165===t.kind||168===t.kind||169===t.kind)return!1;if(8388608&t.flags)return!1;var i=e.getRootDeclaration(t);return 161!==i.kind||!e.nodeIsMissing(i.parent.body)}function gk(t){e.findAncestor(t,(function(r){return!!(4&xE(r))&&(78!==t.kind?pn(e.getNameOfDeclaration(t),e.Diagnostics.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):pn(t,e.Diagnostics.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0)}))}function _k(t){e.findAncestor(t,(function(r){return!!(8&xE(r))&&(78!==t.kind?pn(e.getNameOfDeclaration(t),e.Diagnostics.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):pn(t,e.Diagnostics.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0)}))}function hk(t){67108864&xE(e.getEnclosingBlockScopeContainer(t))&&dn("noEmit",t,e.Diagnostics.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,"WeakMap")}function yk(t,r){if(!(H>=e.ModuleKind.ES2015)&&(mk(t,r,"require")||mk(t,r,"exports"))&&(!e.isModuleDeclaration(t)||1===e.getModuleInstanceState(t))){var n=Aa(t);300===n.kind&&e.isExternalOrCommonJsModule(n)&&dn("noEmit",r,e.Diagnostics.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,e.declarationNameToString(r),e.declarationNameToString(r))}}function vk(t,r){if(!(V>=4)&&mk(t,r,"Promise")&&(!e.isModuleDeclaration(t)||1===e.getModuleInstanceState(t))){var n=Aa(t);300===n.kind&&e.isExternalOrCommonJsModule(n)&&2048&n.flags&&dn("noEmit",r,e.Diagnostics.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,e.declarationNameToString(r),e.declarationNameToString(r))}}function bk(e){return e===Se?Ee:e===Nt?At:e}function kk(t){var r;if(Yb(t),e.isBindingElement(t)||Mx(t.type),t.name){if(159===t.name.kind&&(M_(t.name),t.initializer&&$v(t.initializer)),199===t.kind){197===t.parent.kind&&V<99&&BE(t,4),t.propertyName&&159===t.propertyName.kind&&M_(t.propertyName);var n=t.parent.parent,i=Ia(n),a=t.propertyName||t.name;if(i&&!e.isBindingPattern(a)){var o=vu(a);if(Zo(o)){var s=gc(i,is(o));s&&(Lh(s,void 0,!1),dh(n,!!n.initializer&&106===n.initializer.kind,i,s))}}}if(e.isBindingPattern(t.name)&&(198===t.name.kind&&V<2&&J.downlevelIteration&&BE(t,512),e.forEach(t.name.elements,Mx)),t.initializer&&e.isParameterDeclaration(t)&&e.nodeIsMissing(e.getContainingFunction(t).body))pn(t,e.Diagnostics.A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation);else if(e.isBindingPattern(t.name)){var c=t.initializer&&240!==t.parent.parent.kind,l=0===t.name.elements.length;if(c||l){var u=to(t);if(c){var d=$v(t.initializer);W&&l?bh(d,t):fp(d,to(t),t,t.initializer)}l&&(e.isArrayBindingPattern(t.name)?Fk(65,u,Ne,t):W&&bh(u,t))}}else{var p=Ai(t);if(2097152&p.flags&&e.isRequireVariableDeclaration(t,!0))Tx(t);else{var f=bk(_o(p));if(t===p.valueDeclaration){var m=e.getEffectiveInitializer(t);if(m)e.isInJSFile(t)&&e.isObjectLiteralExpression(m)&&(0===m.properties.length||e.isPrototypeAccess(t.name))&&!!(null===(r=p.exports)||void 0===r?void 0:r.size)||240===t.parent.parent.kind||fp($v(m),f,t,m,void 0);p.declarations.length>1&&e.some(p.declarations,(function(r){return r!==t&&e.isVariableLike(r)&&!Ek(r,t)}))&&pn(t.name,e.Diagnostics.All_declarations_of_0_must_have_identical_modifiers,e.declarationNameToString(t.name))}else{var g=bk(to(t));f===we||g===we||np(f,g)||67108864&p.flags||xk(p.valueDeclaration,f,t,g),t.initializer&&fp($v(t.initializer),g,t,t.initializer,void 0),Ek(t,p.valueDeclaration)||pn(t.name,e.Diagnostics.All_declarations_of_0_must_have_identical_modifiers,e.declarationNameToString(t.name))}164!==t.kind&&163!==t.kind&&(jb(t),251!==t.kind&&199!==t.kind||function(t){if(0==(3&e.getCombinedNodeFlags(t))&&!e.isParameterDeclaration(t)&&(251!==t.kind||t.initializer)){var r=Ai(t);if(1&r.flags){if(!e.isIdentifier(t.name))return e.Debug.fail();var n=Fn(t,t.name.escapedText,3,void 0,void 0,!1);if(n&&n!==r&&2&n.flags&&3&lh(n)){var i=e.getAncestor(n.valueDeclaration,252),a=234===i.parent.kind&&i.parent.parent?i.parent.parent:void 0;if(!a||!(232===a.kind&&e.isFunctionLike(a.parent)||260===a.kind||259===a.kind||300===a.kind)){var o=la(n);pn(t,e.Diagnostics.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,o,o)}}}}}(t),yk(t,t.name),vk(t,t.name),V<99&&mk(t,t.name,"WeakMap")&&Yr.push(t))}}}}function xk(t,r,n,i){var a=e.getNameOfDeclaration(n),o=164===n.kind||163===n.kind?e.Diagnostics.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:e.Diagnostics.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,s=e.declarationNameToString(a),c=pn(a,o,s,da(r),da(i));t&&e.addRelatedInfo(c,e.createDiagnosticForNode(t,e.Diagnostics._0_was_also_declared_here,s))}function Ek(t,r){if(161===t.kind&&251===r.kind||251===t.kind&&161===r.kind)return!0;if(e.hasQuestionToken(t)!==e.hasQuestionToken(r))return!1;return e.getSelectedEffectiveModifierFlags(t,504)===e.getSelectedEffectiveModifierFlags(r,504)}function Sk(t){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkVariableDeclaration",{kind:t.kind,pos:t.pos,end:t.end}),function(t){if(240!==t.parent.parent.kind&&241!==t.parent.parent.kind)if(8388608&t.flags)oS(t);else if(!t.initializer){if(e.isBindingPattern(t.name)&&!e.isBindingPattern(t.parent))return mS(t,e.Diagnostics.A_destructuring_declaration_must_have_an_initializer);if(e.isVarConst(t))return mS(t,e.Diagnostics.const_declarations_must_be_initialized)}if(t.exclamationToken&&(234!==t.parent.parent.kind||!t.type||t.initializer||8388608&t.flags)){var r=t.initializer?e.Diagnostics.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:t.type?e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context:e.Diagnostics.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return mS(t.exclamationToken,r)}var n=e.getEmitModuleKind(J);n<e.ModuleKind.ES2015&&n!==e.ModuleKind.System&&!(8388608&t.parent.parent.flags)&&e.hasSyntacticModifier(t.parent.parent,1)&&sS(t.name);var i=e.isLet(t)||e.isVarConst(t);i&&cS(t.name)}(t),kk(t),null===e.tracing||void 0===e.tracing||e.tracing.pop()}function Dk(t){return function(t){if(t.dotDotDotToken){var r=t.parent.elements;if(t!==e.last(r))return mS(t,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern);if(JE(r,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),t.propertyName)return mS(t.name,e.Diagnostics.A_rest_element_cannot_have_a_property_name)}if(t.dotDotDotToken&&t.initializer)fS(t,t.initializer.pos-1,1,e.Diagnostics.A_rest_element_cannot_have_an_initializer)}(t),kk(t)}function wk(t){UE(t)||lS(t.declarationList)||function(t){if(!uS(t.parent)){if(e.isLet(t.declarationList))return mS(t,e.Diagnostics.let_declarations_can_only_be_declared_inside_a_block);if(e.isVarConst(t.declarationList))mS(t,e.Diagnostics.const_declarations_can_only_be_declared_inside_a_block)}}(t),e.forEach(t.declarationList.declarations,Mx)}function Tk(t,r,n){if(W){var i=e.isBinaryExpression(t)?t.right:t,a=e.isIdentifier(i)?i:e.isPropertyAccessExpression(i)?i.name:e.isBinaryExpression(i)&&e.isIdentifier(i.right)?i.right:void 0,o=e.isPropertyAccessExpression(i)&&e.isAssertionExpression(e.skipParentheses(i.expression));if(a&&!o)if(!wf(r))if(0!==hc(r,0).length){var s=Xx(a);if(s){var c=e.isBinaryExpression(t.parent)&&function(t,r){for(;e.isBinaryExpression(t)&&55===t.operatorToken.kind;){if(e.forEachChild(t.right,(function t(n){if(e.isIdentifier(n)){var i=Xx(n);if(i&&i===r)return!0}return e.forEachChild(n,t)})))return!0;t=t.parent}return!1}(t.parent,s)||n&&function(t,r,n,i){return!!e.forEachChild(r,(function r(a){if(e.isIdentifier(a)){var o=Xx(a);if(o&&o===i){if(e.isIdentifier(t))return!0;for(var s=n.parent,c=a.parent;s&&c;){if(e.isIdentifier(s)&&e.isIdentifier(c)||108===s.kind&&108===c.kind)return Xx(s)===Xx(c);if(e.isPropertyAccessExpression(s)&&e.isPropertyAccessExpression(c)){if(Xx(s.name)!==Xx(c.name))return!1;c=c.expression,s=s.expression}else{if(!e.isCallExpression(s)||!e.isCallExpression(c))return!1;c=c.expression,s=s.expression}}}}return e.forEachChild(a,r)}))}(t,n,a,s);c||pn(i,e.Diagnostics.This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it_instead)}}}}function Ck(t,r){return 16384&t.flags&&pn(r,e.Diagnostics.An_expression_of_type_void_cannot_be_tested_for_truthiness),t}function Ak(e,t){return Ck(fb(e,t),e)}function Nk(t){tS(t);var r,n=gh(fb(t.expression));if(252===t.initializer.kind){var i=t.initializer.declarations[0];i&&e.isBindingPattern(i.name)&&pn(i.name,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern),Pk(t)}else{var a=t.initializer,o=fb(a);200===a.kind||201===a.kind?pn(a,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern):cp(131072&(r=Su(Eu(n))).flags?Re:r,o)?Iv(a,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access):pn(a,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any)}n!==He&&Mv(n,126091264)||pn(t.expression,e.Diagnostics.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0,da(n)),Mx(t.statement),t.locals&&Zb(t)}function Pk(e){var t=e.initializer;t.declarations.length>=1&&Sk(t.declarations[0])}function Ik(e){return Fk(e.awaitModifier?15:13,fh(e.expression),Ne,e.expression)}function Fk(e,t,r,n){return Pa(t)?t:Ok(e,t,r,n,!0)||Ee}function Ok(t,r,n,i,a){var o=0!=(2&t);if(r!==He){var s=V>=2,c=!s&&J.downlevelIteration,l=J.noUncheckedIndexedAccess&&!!(128&t);if(s||c||o){var u=zk(r,t,s?i:void 0);if(a&&u){var d=8&t?e.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:32&t?e.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:64&t?e.Diagnostics.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:16&t?e.Diagnostics.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;d&&pp(n,u.nextType,i,d)}if(u||s)return l?$m(u&&u.yieldType):u&&u.yieldType}var p=r,f=!1,m=!1;if(4&t){if(1048576&p.flags){var g=r.types,_=e.filter(g,(function(e){return!(402653316&e.flags)}));_!==g&&(p=ou(_,2))}else 402653316&p.flags&&(p=He);if((m=p!==r)&&(V<1&&i&&(pn(i,e.Diagnostics.Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher),f=!0),131072&p.flags))return l?$m(Re):Re}if(!sf(p)){if(i&&!f){var h=Rk(t,0,r,void 0),y=4&t&&!m?c?[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:h?[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators,!1]:[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type,!0]:c?[e.Diagnostics.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:h?[e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators,!1]:[e.Diagnostics.Type_0_is_not_an_array_type,!0],v=y[0];gn(i,y[1]&&!!Bb(p),v,da(p))}return m?l?$m(Re):Re:void 0}var b=kc(p,1);return m&&b?402653316&b.flags&&!J.noUncheckedIndexedAccess?Re:ou(l?[b,Re,Ne]:[b,Re],2):128&t?$m(b):b}Wk(i,r,o)}function Rk(e,t,r,n){if(!Pa(r)){var i=zk(r,e,n);return i&&i[z(t)]}}function Mk(e,t,r){if(void 0===e&&(e=He),void 0===t&&(t=He),void 0===r&&(r=Ae),67359327&e.flags&&180227&t.flags&&180227&r.flags){var n=nl([e,t,r]),i=mr.get(n);return i||(i={yieldType:e,returnType:t,nextType:r},mr.set(n,i)),i}return{yieldType:e,returnType:t,nextType:r}}function Lk(t){for(var r,n,i,a=0,o=t;a<o.length;a++){var s=o[a];if(void 0!==s&&s!==gr){if(s===_r)return _r;r=e.append(r,s.yieldType),n=e.append(n,s.returnType),i=e.append(i,s.nextType)}}return r||n||i?Mk(r&&ou(r),n&&ou(n),i&&fu(i)):gr}function jk(e,t){return e[t]}function Bk(e,t,r){return e[t]=r}function zk(t,r,n){if(Pa(t))return _r;if(!(1048576&t.flags)){var i=qk(t,r,n);return i===gr?void(n&&Wk(n,t,!!(2&r))):i}var a,o=2&r?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",s=jk(t,o);if(s)return s===gr?void 0:s;for(var c=0,l=t.types;c<l.length;c++){var u=qk(l[c],r,n);if(u===gr)return n&&Wk(n,t,!!(2&r)),void Bk(t,o,gr);a=e.append(a,u)}var d=a?Lk(a):gr;return Bk(t,o,d),d===gr?void 0:d}function Uk(e,t){if(e===gr)return gr;if(e===_r)return _r;var r=e.yieldType,n=e.returnType,i=e.nextType;return Mk(qb(r,t)||Ee,qb(n,t)||Ee,i)}function qk(e,t,r){if(Pa(e))return _r;var n;if(2&t&&(n=Jk(e,vr)||Hk(e,vr)))return n;if(1&t&&(n=Jk(e,br)||Hk(e,br))){if(!(2&t))return n;if(n!==gr)return Bk(e,"iterationTypesOfAsyncIterable",Uk(n,r))}if(2&t&&(n=Kk(e,vr,r))!==gr)return n;if(1&t&&(n=Kk(e,br,r))!==gr)return 2&t?Bk(e,"iterationTypesOfAsyncIterable",n?Uk(n,r):gr):n;return gr}function Jk(e,t){return jk(e,t.iterableCacheKey)}function Vk(e,t){var r=Jk(e,t)||Kk(e,t,void 0);return r===gr?yr:r}function Hk(e,t){var r;if(ho(e,r=t.getGlobalIterableType(!1))||ho(e,r=t.getGlobalIterableIteratorType(!1))){var n=ll(e)[0],i=Vk(r,t),a=i.returnType,o=i.nextType;return Bk(e,t.iterableCacheKey,Mk(n,a,o))}if(ho(e,t.getGlobalGeneratorType(!1))){var s=ll(e);n=s[0],a=s[1],o=s[2];return Bk(e,t.iterableCacheKey,Mk(n,a,o))}}function Kk(t,r,n){var i,a=gc(t,e.getPropertyNameForKnownSymbolName(r.iteratorSymbolName)),o=!a||16777216&a.flags?void 0:_o(a);if(Pa(o))return Bk(t,r.iterableCacheKey,_r);var s=o?hc(o,0):void 0;if(!e.some(s))return Bk(t,r.iterableCacheKey,gr);var c=null!==(i=Gk(fu(e.map(s,Bc)),r,n))&&void 0!==i?i:gr;return Bk(t,r.iterableCacheKey,c)}function Wk(t,r,n){var i=n?e.Diagnostics.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:e.Diagnostics.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator;gn(t,!!Bb(r),i,da(r))}function Gk(e,t,r){if(Pa(e))return _r;var n=$k(e,t)||function(e,t){var r=t.getGlobalIterableIteratorType(!1);if(ho(e,r)){var n=ll(e)[0],i=$k(r,t)||tx(r,t,void 0),a=i===gr?yr:i,o=a.returnType,s=a.nextType;return Bk(e,t.iteratorCacheKey,Mk(n,o,s))}if(ho(e,t.getGlobalIteratorType(!1))||ho(e,t.getGlobalGeneratorType(!1))){var c=ll(e);n=c[0],o=c[1],s=c[2];return Bk(e,t.iteratorCacheKey,Mk(n,o,s))}}(e,t)||tx(e,t,r);return n===gr?void 0:n}function $k(e,t){return jk(e,t.iteratorCacheKey)}function Yk(e,t){var r=Na(e,"done")||je;return cp(0===t?je:ze,r)}function Xk(e){return Yk(e,0)}function Qk(e){return Yk(e,1)}function Zk(e){if(Pa(e))return _r;var t,r=jk(e,"iterationTypesOfIteratorResult");if(r)return r;if(ho(e,(t=!1,Vt||(Vt=Al("IteratorYieldResult",1,t))||st)))return Bk(e,"iterationTypesOfIteratorResult",Mk(ll(e)[0],void 0,void 0));if(ho(e,function(e){return Ht||(Ht=Al("IteratorReturnResult",1,e))||st}(!1)))return Bk(e,"iterationTypesOfIteratorResult",Mk(void 0,ll(e)[0],void 0));var n=ug(e,Xk),i=n!==He?Na(n,"value"):void 0,a=ug(e,Qk),o=a!==He?Na(a,"value"):void 0;return Bk(e,"iterationTypesOfIteratorResult",i||o?Mk(i,o||Ve,void 0):gr)}function ex(t,r,n,i){var a,o,s,c,l=gc(t,n);if(l||"next"===n){var u=!l||"next"===n&&16777216&l.flags?void 0:"next"===n?_o(l):Hm(_o(l),2097152);if(Pa(u))return"next"===n?_r:hr;var d,p,f,m,g,_=u?hc(u,0):e.emptyArray;if(0===_.length){if(i)pn(i,"next"===n?r.mustHaveANextMethodDiagnostic:r.mustBeAMethodDiagnostic,n);return"next"===n?_r:void 0}if((null==u?void 0:u.symbol)&&1===_.length){var h=r.getGlobalGeneratorType(!1),y=r.getGlobalIteratorType(!1),v=(null===(o=null===(a=h.symbol)||void 0===a?void 0:a.members)||void 0===o?void 0:o.get(n))===u.symbol,b=!v&&(null===(c=null===(s=y.symbol)||void 0===s?void 0:s.members)||void 0===c?void 0:c.get(n))===u.symbol;if(v||b){var k=v?h:y,x=u.mapper;return Mk(Cd(k.typeParameters[0],x),Cd(k.typeParameters[1],x),"next"===n?Cd(k.typeParameters[2],x):void 0)}}for(var E=0,S=_;E<S.length;E++){var D=S[E];"throw"!==n&&e.some(D.parameters)&&(d=e.append(d,nv(D,0))),p=e.append(p,Bc(D))}if("throw"!==n){var w=d?ou(d):Ae;if("next"===n)m=w;else if("return"===n){var T=r.resolveIterationType(w,i)||Ee;f=e.append(f,T)}}var C=p?fu(p):He,A=Zk(r.resolveIterationType(C,i)||Ee);return A===gr?(i&&pn(i,r.mustHaveAValueDiagnostic,n),g=Ee,f=e.append(f,Ee)):(g=A.yieldType,f=e.append(f,A.returnType)),Mk(g,ou(f),m)}}function tx(e,t,r){var n=Lk([ex(e,t,"next",r),ex(e,t,"return",r),ex(e,t,"throw",r)]);return Bk(e,t.iteratorCacheKey,n)}function rx(e,t,r){if(!Pa(t)){var n=nx(t,r);return n&&n[z(e)]}}function nx(e,t){if(Pa(e))return _r;var r=t?vr:br;return zk(e,t?2:1,void 0)||Gk(e,r,void 0)}function ix(t){_S(t)||function(t){var r=t;for(;r;){if(e.isFunctionLike(r))return mS(t,e.Diagnostics.Jump_target_cannot_cross_function_boundary);switch(r.kind){case 247:if(t.label&&r.label.escapedText===t.label.escapedText)return!!(242===t.kind&&!e.isIterationStatement(r.statement,!0))&&mS(t,e.Diagnostics.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement);break;case 246:if(243===t.kind&&!t.label)return!1;break;default:if(e.isIterationStatement(r,!1)&&!t.label)return!1}r=r.parent}t.label?mS(t,243===t.kind?e.Diagnostics.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:e.Diagnostics.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):mS(t,243===t.kind?e.Diagnostics.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:e.Diagnostics.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement)}(t)}function ax(e,t){var r,n,i=!!(2&t);return!!(1&t)?null!==(r=rx(1,e,i))&&void 0!==r?r:we:i?null!==(n=qb(e))&&void 0!==n?n:we:e}function ox(t,r){var n=ax(r,e.getFunctionFlags(t));return!!n&&Rv(n,16387)}function sx(t){_S(t)||e.isIdentifier(t.expression)&&!t.expression.escapedText&&function(t,r,n,i,a){var o=e.getSourceFileOfNode(t);if(!dS(o)){var s=e.getSpanOfTokenAtPosition(o,t.pos);return Qr.add(e.createFileDiagnostic(o,e.textSpanEnd(s),0,r,n,i,a)),!0}}(t,e.Diagnostics.Line_break_not_permitted_here),t.expression&&fb(t.expression)}function cx(t){var r,n=Xc(t.symbol,1),i=Xc(t.symbol,0),a=kc(t,0),o=kc(t,1);if(a||o){e.forEach(qs(t),(function(e){var r=_o(e);f(e,r,t,i,a,0),f(e,r,t,n,o,1)}));var s=t.symbol.valueDeclaration;if(1&e.getObjectFlags(t)&&e.isClassLike(s))for(var c=0,l=s.members;c<l.length;c++){var u=l[c];if(!e.hasSyntacticModifier(u,32)&&!ns(u)){var d=Ai(u),p=_o(d);f(d,p,t,i,a,0),f(d,p,t,n,o,1)}}}a&&o&&(!(r=n||i)&&2&e.getObjectFlags(t)&&(r=e.forEach(Po(t),(function(e){return kc(e,0)&&kc(e,1)}))?void 0:t.symbol.declarations[0]));function f(t,r,n,i,a,o){if(a&&!e.isKnownSymbol(t)){var s=t.valueDeclaration,c=s&&e.getNameOfDeclaration(s);if((!c||!e.isPrivateIdentifier(c))&&(1!==o||(c?F_(c):R_(t.escapedName)))){var l;if(s&&c&&(218===s.kind||159===c.kind||t.parent===n.symbol))l=s;else if(i)l=i;else if(2&e.getObjectFlags(n)){l=e.forEach(Po(n),(function(e){return Js(e,t.escapedName)&&kc(e,o)}))?void 0:n.symbol.declarations[0]}if(l&&!cp(r,a))pn(l,0===o?e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_string_index_type_2:e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2,la(t),da(r),da(a))}}}r&&!cp(o,a)&&pn(r,e.Diagnostics.Numeric_index_type_0_is_not_assignable_to_string_index_type_1,da(o),da(a))}function lx(e,t){switch(e.escapedText){case"any":case"unknown":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":pn(e,t,e.escapedText)}}function ux(t){if(t)for(var n=!1,i=0;i<t.length;i++){var a=t[i];if(yb(a),r){a.default?(n=!0,dx(a.default,t,i)):n&&pn(a,e.Diagnostics.Required_type_parameters_may_not_follow_optional_type_parameters);for(var o=0;o<i;o++)t[o].symbol===a.symbol&&pn(a.name,e.Diagnostics.Duplicate_identifier_0,e.declarationNameToString(a.name))}}}function dx(t,r,n){!function t(i){if(174===i.kind){var a=El(i);if(262144&a.flags)for(var o=n;o<r.length;o++)a.symbol===Ai(r[o])&&pn(i,e.Diagnostics.Type_parameter_defaults_can_only_reference_previously_declared_type_parameters)}e.forEachChild(i,t)}(t)}function px(t){if(1!==t.declarations.length){var r=Tn(t);if(!r.typeParametersChecked){r.typeParametersChecked=!0;var n=function(t){return e.filter(t.declarations,(function(e){return 254===e.kind||256===e.kind}))}(t);if(n.length<=1)return;if(!function(t,r){for(var n=e.length(r),i=Nc(r),a=0,o=t;a<o.length;a++){var s=o[a],c=e.getEffectiveTypeParameterDeclarations(s),l=c.length;if(l<i||l>n)return!1;for(var u=0;u<l;u++){var d=c[u],p=r[u];if(d.name.escapedText!==p.symbol.escapedName)return!1;var f=e.getEffectiveConstraintOfTypeParameter(d),m=f&&xd(f),g=Ws(p);if(m&&g&&!np(m,g))return!1;var _=d.default&&xd(d.default),h=nc(p);if(_&&h&&!np(_,h))return!1}}return!0}(n,Jo(t).localTypeParameters))for(var i=la(t),a=0,o=n;a<o.length;a++){pn(o[a].name,e.Diagnostics.All_declarations_of_0_must_have_identical_type_parameters,i)}}}}function fx(r){r.name||e.hasSyntacticModifier(r,512)||pS(r,e.Diagnostics.A_struct_declaration_without_the_default_modifier_must_have_a_name),mx(r),function(r){var n;if(t.getCompilerOptions().ets&&r.name&&e.isIdentifier(r.name)){(null===(n=t.getCompilerOptions().ets)||void 0===n?void 0:n.components).includes(r.name.escapedText.toString())&&pn(r.name,e.Diagnostics.The_struct_name_cannot_contain_reserved_tag_name_Colon_0,r.name.escapedText.toString())}}(r),e.forEach(r.members,Mx),Zb(r)}function mx(t){var n;!function(t){var r=e.getSourceFileOfNode(t);(function(t){var r=!1,n=!1;if(!UE(t)&&t.heritageClauses)for(var i=0,a=t.heritageClauses;i<a.length;i++){var o=a[i];if(94===o.token){if(r)return pS(o,e.Diagnostics.extends_clause_already_seen);if(n)return pS(o,e.Diagnostics.extends_clause_must_precede_implements_clause);if(o.types.length>1)return pS(o.types[1],e.Diagnostics.Classes_can_only_extend_a_single_class);r=!0}else{if(e.Debug.assert(117===o.token),n)return pS(o,e.Diagnostics.implements_clause_already_seen);n=!0}$E(o)}})(t)||VE(t.typeParameters,r)}(t),Yb(t),t.name&&(lx(t.name,e.Diagnostics.Class_name_cannot_be_0),yk(t,t.name),vk(t,t.name),8388608&t.flags||(n=t.name,1===V&&"Object"===n.escapedText&&H<e.ModuleKind.ES2015&&pn(n,e.Diagnostics.Class_name_cannot_be_Object_when_targeting_ES5_with_module_0,e.ModuleKind[H]))),ux(e.getEffectiveTypeParameterDeclarations(t)),jb(t);var i=Ai(t),a=Jo(i),o=ls(a),s=_o(i);px(i),Lb(i),function(t){for(var r=new e.Map,n=new e.Map,i=new e.Map,a=0,o=t.members;a<o.length;a++){var s=o[a];if(167===s.kind)for(var c=0,l=s.parameters;c<l.length;c++){var u=l[c];e.isParameterPropertyDeclaration(u,s)&&!e.isBindingPattern(u.name)&&g(r,u.name,u.name.escapedText,3)}else{var d=e.hasSyntacticModifier(s,32),p=s.name;if(!p)return;var f=e.isPrivateIdentifier(p)?i:d?n:r,m=p&&e.getPropertyNameForPropertyNameNode(p);if(m)switch(s.kind){case 168:g(f,p,m,1);break;case 169:g(f,p,m,2);break;case 164:g(f,p,m,3);break;case 166:g(f,p,m,8)}}}function g(t,r,n,i){var a=t.get(n);a?8&a?8!==i&&pn(r,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(r)):a&i?pn(r,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(r)):t.set(n,a|i):t.set(n,i)}}(t),8388608&t.flags||function(t){for(var r=0,n=t.members;r<n.length;r++){var i=n[r],a=i.name;if(e.hasSyntacticModifier(i,32)&&a){var o=e.getPropertyNameForPropertyNameNode(a);switch(o){case"name":case"length":case"caller":case"arguments":case"prototype":pn(a,e.Diagnostics.Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1,o,xa(Ai(t)))}}}}(t);var c=e.getEffectiveBaseTypeNode(t);if(c){e.forEach(c.typeArguments,Mx),V<2&&BE(c.parent,1);var l=e.getClassExtendsHeritageElement(t);l&&l!==c&&fb(l.expression);var u=Po(a);if(u.length&&r){var d=u[0],p=Ao(a),f=ac(p);if(function(t,r){var n=hc(t,1);if(n.length){var i=n[0].declaration;if(i&&e.hasEffectiveModifier(i,8))Gx(r,e.getClassLikeDeclarationOfSymbol(t.symbol))||pn(r,e.Diagnostics.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,pi(t.symbol))}}(f,c),Mx(c.expression),e.some(c.typeArguments)){e.forEach(c.typeArguments,Mx);for(var m=0,g=To(f,c.typeArguments,c);m<g.length;m++){if(!Ab(c,g[m].typeParameters))break}}if(pp(o,x=ls(d,a.thisType),void 0)?pp(s,rp(f),t.name||t,e.Diagnostics.Class_static_side_0_incorrectly_extends_base_class_static_side_1):gx(t,o,x,e.Diagnostics.Class_0_incorrectly_extends_base_class_1),8650752&p.flags)if(So(s))hc(p,1).some((function(e){return 4&e.flags}))&&!e.hasSyntacticModifier(t,128)&&pn(t.name||t,e.Diagnostics.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract);else pn(t.name||t,e.Diagnostics.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any);if(!(f.symbol&&32&f.symbol.flags||8650752&p.flags)){var _=Co(f,c.typeArguments,c);e.forEach(_,(function(e){return!Fy(e.declaration)&&!np(Bc(e),d)}))&&pn(c.expression,e.Diagnostics.Base_constructors_must_all_have_the_same_return_type)}!function(t,r){var n=Hs(r);e:for(var i=0,a=n;i<a.length;i++){var o=a[i],s=_x(o);if(!(4194304&s.flags)){var c=Js(t,s.escapedName);if(c){var l=_x(c),u=e.getDeclarationModifierFlagsFromSymbol(s);if(e.Debug.assert(!!l,"derived should point to something, even if it is the base class' declaration."),l===s){var d=e.getClassLikeDeclarationOfSymbol(t.symbol);if(128&u&&(!d||!e.hasSyntacticModifier(d,128))){for(var p=0,f=Po(t);p<f.length;p++){var m=f[p];if(m!==r){var g=Js(m,s.escapedName),_=g&&_x(g);if(_&&_!==s)continue e}}223===d.kind?pn(d,e.Diagnostics.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,la(o),da(r)):pn(d,e.Diagnostics.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,da(t),la(o),da(r))}}else{var h=e.getDeclarationModifierFlagsFromSymbol(l);if(8&u||8&h)continue;var y=void 0,v=98308&s.flags,b=98308&l.flags;if(v&&b){if(128&u&&!(s.valueDeclaration&&e.isPropertyDeclaration(s.valueDeclaration)&&s.valueDeclaration.initializer)||s.valueDeclaration&&256===s.valueDeclaration.parent.kind||l.valueDeclaration&&e.isBinaryExpression(l.valueDeclaration))continue;var k=4!==v&&4===b;if(k||4===v&&4!==b){var x=k?e.Diagnostics._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:e.Diagnostics._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;pn(e.getNameOfDeclaration(l.valueDeclaration)||l.valueDeclaration,x,la(s),da(r),da(t))}else if(J.useDefineForClassFields){var E=e.find(l.declarations,(function(e){return 164===e.kind&&!e.initializer}));if(E&&!(33554432&l.flags)&&!(128&u)&&!(128&h)&&!l.declarations.some((function(e){return!!(8388608&e.flags)}))){var S=Li(e.getClassLikeDeclarationOfSymbol(t.symbol)),D=E.name;if(E.exclamationToken||!S||!e.isIdentifier(D)||!W||!yx(D,t,S)){var w=e.Diagnostics.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration;pn(e.getNameOfDeclaration(l.valueDeclaration)||l.valueDeclaration,w,la(s),da(r))}}}continue}if(uh(s)){if(uh(l)||4&l.flags)continue;e.Debug.assert(!!(98304&l.flags)),y=e.Diagnostics.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else y=98304&s.flags?e.Diagnostics.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:e.Diagnostics.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;pn(e.getNameOfDeclaration(l.valueDeclaration)||l.valueDeclaration,y,da(r),la(s),da(t))}}}}}(a,d)}}var h=e.getEffectiveImplementsTypeNodes(t);if(h)for(var y=0,v=h;y<v.length;y++){var b=v[y];if(e.isEntityNameExpression(b.expression)&&!e.isOptionalChain(b.expression)||pn(b.expression,e.Diagnostics.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),Ib(b),r){var k=uc(xd(b));if(k!==we)if(Fo(k)){var x,E=k.symbol&&32&k.symbol.flags?e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:e.Diagnostics.Class_0_incorrectly_implements_interface_1;pp(o,x=ls(k,a.thisType),void 0)||gx(t,o,x,E)}else pn(b,e.Diagnostics.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}r&&(cx(a),Eb(t),function(t){if(!W||!Y||8388608&t.flags)return;for(var r=Li(t),n=0,i=t.members;n<i.length;n++){var a=i[n];if(!(2&e.getEffectiveModifierFlags(a))&&hx(a)){var o=a.name;if(e.isIdentifier(o)||e.isPrivateIdentifier(o)){var s=_o(Ai(a));3&s.flags||32768&wf(s)||r&&yx(o,s,r)||pn(a.name,e.Diagnostics.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,e.declarationNameToString(o))}}}}(t))}function gx(t,r,n,i){for(var a=!1,o=function(t){if(e.hasStaticModifier(t))return"continue";var i=t.name&&Xx(t.name)||Xx(t);if(i){var o=gc(r,i.escapedName),s=gc(n,i.escapedName);if(o&&s){pp(_o(o),_o(s),t.name||t,void 0,(function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,la(i),da(r),da(n))}))||(a=!0)}}},s=0,c=t.members;s<c.length;s++){o(c[s])}a||pp(r,n,t.name||t,i)}function _x(t){return 1&e.getCheckFlags(t)?t.target:t}function hx(t){return 164===t.kind&&!e.hasSyntacticModifier(t,160)&&!t.exclamationToken&&!t.initializer}function yx(t,r,n){var i=e.factory.createPropertyAccessExpression(e.factory.createThis(),t);return e.setParent(i.expression,i),e.setParent(i,n),i.flowNode=n.returnFlowNode,!(32768&wf(Og(i,r,Nf(r))))}function vx(t){if(UE(t)||function(t){var r=!1;if(t.heritageClauses)for(var n=0,i=t.heritageClauses;n<i.length;n++){var a=i[n];if(94!==a.token)return e.Debug.assert(117===a.token),pS(a,e.Diagnostics.Interface_declaration_cannot_have_implements_clause);if(r)return pS(a,e.Diagnostics.extends_clause_already_seen);r=!0,$E(a)}}(t),ux(t.typeParameters),r){lx(t.name,e.Diagnostics.Interface_name_cannot_be_0),jb(t);var n=Ai(t);if(px(n),t===e.getDeclarationOfKind(n,256)){var i=Jo(n),a=ls(i);if(function(t,r){var n=Po(t);if(n.length<2)return!0;var i=new e.Map;e.forEach(Qo(t).declaredProperties,(function(e){i.set(e.escapedName,{prop:e,containingType:t})}));for(var a=!0,o=0,s=n;o<s.length;o++)for(var c=s[o],l=0,u=Hs(ls(c,t.thisType));l<u.length;l++){var d=u[l],p=i.get(d.escapedName);if(p){if(p.containingType!==t&&!Qp(p.prop,d)){a=!1;var f=da(p.containingType),m=da(c),g=e.chainDiagnosticMessages(void 0,e.Diagnostics.Named_property_0_of_types_1_and_2_are_not_identical,la(d),f,m);g=e.chainDiagnosticMessages(g,e.Diagnostics.Interface_0_cannot_simultaneously_extend_types_1_and_2,da(t),f,m),Qr.add(e.createDiagnosticForNodeFromMessageChain(r,g))}}else i.set(d.escapedName,{prop:d,containingType:c})}return a}(i,t.name)){for(var o=0,s=Po(i);o<s.length;o++){pp(a,ls(s[o],i.thisType),t.name,e.Diagnostics.Interface_0_incorrectly_extends_interface_1)}cx(i)}}xb(t)}e.forEach(e.getInterfaceBaseTypeNodes(t),(function(t){e.isEntityNameExpression(t.expression)&&!e.isOptionalChain(t.expression)||pn(t.expression,e.Diagnostics.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),Ib(t)})),e.forEach(t.members,Mx),r&&(Eb(t),Zb(t))}function bx(e){var t=Cn(e);if(!(16384&t.flags)){t.flags|=16384;for(var r=0,n=0,i=e.members;n<i.length;n++){var a=i[n],o=kx(a,r);Cn(a).enumMemberValue=o,r="number"==typeof o?o+1:void 0}}}function kx(t,r){if(e.isComputedNonLiteralName(t.name))pn(t.name,e.Diagnostics.Computed_property_names_are_not_allowed_in_enums);else{var n=e.getTextOfPropertyName(t.name);R_(n)&&!O_(n)&&pn(t.name,e.Diagnostics.An_enum_member_cannot_have_a_numeric_name)}return t.initializer?function(t){var r=jo(Ai(t.parent)),n=e.isEnumConst(t.parent),i=t.initializer,a=1!==r||Lo(t)?s(i):void 0;if(void 0!==a)n&&"number"==typeof a&&!isFinite(a)&&pn(i,isNaN(a)?e.Diagnostics.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:e.Diagnostics.const_enum_member_initializer_was_evaluated_to_a_non_finite_value);else{if(1===r)return pn(i,e.Diagnostics.Computed_values_are_not_permitted_in_an_enum_with_string_valued_members),0;if(n)pn(i,e.Diagnostics.const_enum_member_initializers_can_only_contain_literal_values_and_other_computed_enum_values);else if(8388608&t.parent.flags)pn(i,e.Diagnostics.In_ambient_enum_declarations_member_initializer_must_be_constant_expression);else{var o=fb(i);Mv(o,296)?pp(o,Jo(Ai(t.parent)),i,void 0):pn(i,e.Diagnostics.Only_numeric_enums_can_have_computed_members_but_this_expression_has_type_0_If_you_do_not_need_exhaustiveness_checks_consider_using_an_object_literal_instead,da(o))}}return a;function s(r){switch(r.kind){case 216:var n=s(r.operand);if("number"==typeof n)switch(r.operator){case 39:return n;case 40:return-n;case 54:return~n}break;case 218:var i=s(r.left),a=s(r.right);if("number"==typeof i&&"number"==typeof a)switch(r.operatorToken.kind){case 51:return i|a;case 50:return i&a;case 48:return i>>a;case 49:return i>>>a;case 47:return i<<a;case 52:return i^a;case 41:return i*a;case 43:return i/a;case 39:return i+a;case 40:return i-a;case 44:return i%a;case 42:return Math.pow(i,a)}else if("string"==typeof i&&"string"==typeof a&&39===r.operatorToken.kind)return i+a;break;case 10:case 14:return r.text;case 8:return hS(r),+r.text;case 208:return s(r.expression);case 78:var o=r;return O_(o.escapedText)?+o.escapedText:e.nodeIsMissing(r)?0:c(r,Ai(t.parent),o.escapedText);case 203:case 202:var l=r;if(xx(l)){var u=ub(l.expression);if(u.symbol&&384&u.symbol.flags){var d=void 0;return d=202===l.kind?l.name.escapedText:e.escapeLeadingUnderscores(e.cast(l.argumentExpression,e.isLiteralExpression).text),c(r,u.symbol,d)}}}}function c(r,n,i){var a=n.exports.get(i);if(a){var o=a.valueDeclaration;if(o!==t)return Pn(o,t)?EE(o):(pn(r,e.Diagnostics.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),0);pn(r,e.Diagnostics.Property_0_is_used_before_being_assigned,la(a))}}}(t):8388608&t.parent.flags&&!e.isEnumConst(t.parent)&&0===jo(Ai(t.parent))?void 0:void 0!==r?r:void pn(t.name,e.Diagnostics.Enum_member_must_have_initializer)}function xx(t){return 78===t.kind||202===t.kind&&xx(t.expression)||203===t.kind&&xx(t.expression)&&e.isStringLiteralLike(t.argumentExpression)}function Ex(t){e.isPrivateIdentifier(t.name)&&pn(t,e.Diagnostics.An_enum_member_cannot_be_named_with_a_private_identifier)}function Sx(t){if(r){var n=e.isGlobalScopeAugmentation(t),i=8388608&t.flags;n&&!i&&pn(t.name,e.Diagnostics.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);var a=e.isAmbientModule(t);if(Px(t,a?e.Diagnostics.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:e.Diagnostics.A_namespace_declaration_is_only_allowed_in_a_namespace_or_module))return;UE(t)||i||10!==t.name.kind||mS(t.name,e.Diagnostics.Only_ambient_modules_can_use_quoted_names),e.isIdentifier(t.name)&&(yk(t,t.name),vk(t,t.name)),jb(t);var o=Ai(t);if(512&o.flags&&!i&&o.declarations.length>1&&M(t,e.shouldPreserveConstEnums(J))){var s=function(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];if((254===i.kind||253===i.kind&&e.nodeIsPresent(i.body))&&!(8388608&i.flags))return i}}(o);s&&(e.getSourceFileOfNode(t)!==e.getSourceFileOfNode(s)?pn(t.name,e.Diagnostics.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):t.pos<s.pos&&pn(t.name,e.Diagnostics.A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged));var c=e.getDeclarationOfKind(o,254);c&&(d=t,p=c,f=e.getEnclosingBlockScopeContainer(d),m=e.getEnclosingBlockScopeContainer(p),An(f)?An(m):!An(m)&&f===m)&&(Cn(t).flags|=32768)}if(a)if(e.isExternalModuleAugmentation(t)){if((n||33554432&Ai(t).flags)&&t.body)for(var l=0,u=t.body.statements;l<u.length;l++){Dx(u[l],n)}}else An(t.parent)?n?pn(t.name,e.Diagnostics.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):e.isExternalModuleNameRelative(e.getTextOfIdentifierOrLiteral(t.name))&&pn(t.name,e.Diagnostics.Ambient_module_declaration_cannot_specify_relative_module_name):pn(t.name,n?e.Diagnostics.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:e.Diagnostics.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}var d,p,f,m;t.body&&(Mx(t.body),e.isGlobalScopeAugmentation(t)||Zb(t))}function Dx(t,r){switch(t.kind){case 234:for(var n=0,i=t.declarationList.declarations;n<i.length;n++){Dx(i[n],r)}break;case 269:case 270:pS(t,e.Diagnostics.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 263:case 264:pS(t,e.Diagnostics.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 199:case 251:var a=t.name;if(e.isBindingPattern(a)){for(var o=0,s=a.elements;o<s.length;o++){Dx(s[o],r)}break}case 254:case 258:case 253:case 256:case 259:case 257:if(r)return;var c=Ai(t);if(c){var l=!(33554432&c.flags);l||(l=!!c.parent&&e.isExternalModuleAugmentation(c.parent.declarations[0]))}}}function wx(t){var r=e.getExternalModuleName(t);if(!r||e.nodeIsMissing(r))return!1;if(!e.isStringLiteral(r))return pn(r,e.Diagnostics.String_literal_expected),!1;var n=260===t.parent.kind&&e.isAmbientModule(t.parent.parent);return 300===t.parent.kind||n?!(n&&e.isExternalModuleNameRelative(r.text)&&!va(t))||(pn(t,e.Diagnostics.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1):(pn(r,270===t.kind?e.Diagnostics.Export_declarations_are_not_permitted_in_a_namespace:e.Diagnostics.Import_declarations_in_a_namespace_cannot_reference_a_module),!1)}function Tx(t){var r,n=Ai(t),i=ai(n);if(i!==ke){var a=(1160127&(n=Ci(n.exportSymbol||n)).flags?111551:0)|(788968&n.flags?788968:0)|(1920&n.flags?1920:0);if(i.flags&a)pn(t,273===t.kind?e.Diagnostics.Export_declaration_conflicts_with_exported_declaration_of_0:e.Diagnostics.Import_declaration_conflicts_with_local_declaration_of_0,la(n));!J.isolatedModules||273!==t.kind||t.parent.parent.isTypeOnly||111551&i.flags||8388608&t.flags||pn(t,e.Diagnostics.Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type),e.isImportSpecifier(t)&&(null===(r=i.declarations)||void 0===r?void 0:r.every((function(t){return!!(134217728&e.getCombinedNodeFlags(t))})))&&hn(t.name,i.declarations,n.escapedName)}}function Cx(t){yk(t,t.name),vk(t,t.name),Tx(t),268===t.kind&&"default"===e.idText(t.propertyName||t.name)&&J.esModuleInterop&&H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&BE(t,131072)}function Ax(t){if(!Px(t,e.Diagnostics.An_import_declaration_can_only_be_used_in_a_namespace_or_module)&&(!UE(t)&&e.hasEffectiveModifiers(t)&&pS(t,e.Diagnostics.An_import_declaration_cannot_have_modifiers),wx(t))){var r=t.importClause;if(r&&!function(t){if(t.isTypeOnly&&t.name&&t.namedBindings)return mS(t,e.Diagnostics.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both);return!1}(r))if(r.name&&Cx(r),r.namedBindings)if(266===r.namedBindings.kind)Cx(r.namedBindings),H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&J.esModuleInterop&&BE(t,65536);else gi(t,t.moduleSpecifier)&&e.forEach(r.namedBindings.elements,Cx)}}function Nx(t){if(!Px(t,e.Diagnostics.An_export_declaration_can_only_be_used_in_a_module)&&(!UE(t)&&e.hasEffectiveModifiers(t)&&pS(t,e.Diagnostics.An_export_declaration_cannot_have_modifiers),t.moduleSpecifier&&t.exportClause&&e.isNamedExports(t.exportClause)&&e.length(t.exportClause.elements)&&0===V&&BE(t,2097152),function(t){var r,n=t.isTypeOnly&&271!==(null===(r=t.exportClause)||void 0===r?void 0:r.kind);n&&mS(t,e.Diagnostics.Only_named_exports_may_use_export_type)}(t),!t.moduleSpecifier||wx(t)))if(t.exportClause&&!e.isNamespaceExport(t.exportClause)){e.forEach(t.exportClause.elements,Ox);var r=260===t.parent.kind&&e.isAmbientModule(t.parent.parent),n=!r&&260===t.parent.kind&&!t.moduleSpecifier&&8388608&t.flags;300===t.parent.kind||r||n||pn(t,e.Diagnostics.Export_declarations_are_not_permitted_in_a_namespace)}else{var i=gi(t,t.moduleSpecifier);i&&ki(i)?pn(t.moduleSpecifier,e.Diagnostics.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,la(i)):t.exportClause&&Tx(t.exportClause),H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&(t.exportClause?J.esModuleInterop&&BE(t,65536):BE(t,32768))}}function Px(e,t){var r=300===e.parent.kind||260===e.parent.kind||259===e.parent.kind;return r||pS(e,t),!r}function Ix(t){return e.isImportDeclaration(t)&&t.importClause&&!t.importClause.isTypeOnly&&(r=t.importClause,e.forEachImportClauseDeclaration(r,(function(e){return!!Ai(e).isReferenced})))&&!_E(t.importClause,!0)&&!function(t){return e.forEachImportClauseDeclaration(t,(function(e){return!!Tn(Ai(e)).constEnumReferenced}))}(t.importClause);var r}function Fx(t){return e.isImportEqualsDeclaration(t)&&e.isExternalModuleReference(t.moduleReference)&&!t.isTypeOnly&&Ai(t).isReferenced&&!_E(t,!1)&&!Tn(Ai(t)).constEnumReferenced}function Ox(t){if(Tx(t),e.getEmitDeclarations(J)&&Sa(t.propertyName||t.name,!0),t.parent.parent.moduleSpecifier)J.esModuleInterop&&H!==e.ModuleKind.System&&H<e.ModuleKind.ES2015&&"default"===e.idText(t.propertyName||t.name)&&BE(t,131072);else{var r=t.propertyName||t.name,n=Fn(r,r.escapedText,2998271,void 0,void 0,!0);if(n&&(n===ie||n===ae||An(Aa(n.declarations[0]))))pn(r,e.Diagnostics.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,e.idText(r));else{li(t);var i=n&&(2097152&n.flags?ai(n):n);(!i||i===ke||111551&i.flags)&&$v(t.propertyName||t.name)}}}function Rx(t){var r=Ai(t),n=Tn(r);if(!n.exportsChecked){var i=r.exports.get("export=");if(i&&function(t){return e.forEachEntry(t.exports,(function(e,t){return"export="!==t}))}(r)){var a=Vn(i)||i.valueDeclaration;va(a)||e.isInJSFile(a)||pn(a,e.Diagnostics.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}var o=Di(r);o&&o.forEach((function(t,r){var n=t.declarations,i=t.flags;if("__export"!==r&&!(1984&i)){var a=e.countWhere(n,A);if(!(524288&i&&a<=2)&&a>1)for(var o=0,s=n;o<s.length;o++){var c=s[o];L(c)&&Qr.add(e.createDiagnosticForNode(c,e.Diagnostics.Cannot_redeclare_exported_variable_0,e.unescapeLeadingUnderscores(r)))}}})),n.exportsChecked=!0}}function Mx(t){if(t){var i=d;d=t,x=0,function(t){e.isInJSFile(t)&&e.forEach(t.jsDoc,(function(t){var r=t.tags;return e.forEach(r,Mx)}));var i=t.kind;if(n)switch(i){case 259:case 254:case 256:case 253:n.throwIfCancellationRequested()}i>=234&&i<=250&&t.flowNode&&!Ng(t.flowNode)&&mn(!1===J.allowUnreachableCode,t,e.Diagnostics.Unreachable_code_detected);switch(i){case 160:return yb(t);case 161:return vb(t);case 164:return Sb(t);case 163:return function(t){return e.isPrivateIdentifier(t.name)&&pn(t,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies),Sb(t)}(t);case 176:case 175:case 170:case 171:case 172:return kb(t);case 166:case 165:return function(t){iS(t)||XE(t.name),e.isPrivateIdentifier(t.name)&&pn(t,e.Diagnostics.A_method_cannot_be_named_with_a_private_identifier),Qb(t),e.hasSyntacticModifier(t,128)&&166===t.kind&&t.body&&pn(t,e.Diagnostics.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,e.declarationNameToString(t.name))}(t);case 167:return Db(t);case 168:case 169:return wb(t);case 174:return Ib(t);case 173:return function(t){var r=function(e){switch(e.parent.kind){case 210:case 170:case 253:case 209:case 175:case 166:case 165:var t=e.parent;if(e===t.type)return t}}(t);if(r){var n=Ic(r),i=jc(n);if(i){Mx(t.type);var a=t.parameterName;if(0===i.kind||2===i.kind)vd(a);else if(i.parameterIndex>=0)U(n)&&i.parameterIndex===n.parameters.length-1?pn(a,e.Diagnostics.A_type_predicate_cannot_reference_a_rest_parameter):i.type&&pp(i.type,_o(n.parameters[i.parameterIndex]),t.type,void 0,(function(){return e.chainDiagnosticMessages(void 0,e.Diagnostics.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type)}));else if(a){for(var o=!1,s=0,c=r.parameters;s<c.length;s++){var l=c[s].name;if(e.isBindingPattern(l)&&bb(l,a,i.parameterName)){o=!0;break}}o||pn(t.parameterName,e.Diagnostics.Cannot_find_parameter_0,i.parameterName)}}}else pn(t,e.Diagnostics.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods)}(t);case 177:return function(e){Dl(e)}(t);case 178:return function(t){e.forEach(t.members,Mx),r&&(cx(nd(t)),Eb(t),xb(t))}(t);case 179:return function(e){Mx(e.elementType)}(t);case 180:return function(t){for(var r=t.elements,n=!1,i=!1,a=e.some(r,e.isNamedTupleMember),o=0,s=r;o<s.length;o++){var c=s[o];if(193!==c.kind&&a){mS(c,e.Diagnostics.Tuple_members_must_all_have_names_or_all_not_have_names);break}var l=Bl(c);if(8&l){var u=xd(c.type);if(!sf(u)){pn(c,e.Diagnostics.A_rest_element_type_must_be_an_array_type);break}(rf(u)||vf(u)&&4&u.target.combinedFlags)&&(i=!0)}else if(4&l){if(i){mS(c,e.Diagnostics.A_rest_element_cannot_follow_another_rest_element);break}i=!0}else if(2&l){if(i){mS(c,e.Diagnostics.An_optional_element_cannot_follow_a_rest_element);break}n=!0}else if(n){mS(c,e.Diagnostics.A_required_element_cannot_follow_an_optional_element);break}}e.forEach(t.elements,Mx),xd(t)}(t);case 183:case 184:return function(t){e.forEach(t.types,Mx),xd(t)}(t);case 187:case 181:case 182:return Mx(t.type);case 188:return function(e){vd(e)}(t);case 189:return Ob(t);case 185:return function(t){e.forEachChild(t,Mx)}(t);case 186:return function(t){e.findAncestor(t,(function(e){return e.parent&&185===e.parent.kind&&e.parent.extendsType===e}))||mS(t,e.Diagnostics.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),Mx(t.typeParameter),Zb(t)}(t);case 194:return function(e){for(var t=0,r=e.templateSpans;t<r.length;t++){var n=r[t];Mx(n.type),pp(xd(n.type),et,n.type)}xd(e)}(t);case 196:return function(e){Mx(e.argument),xd(e)}(t);case 193:return function(t){t.dotDotDotToken&&t.questionToken&&mS(t,e.Diagnostics.A_tuple_member_cannot_be_both_optional_and_rest),181===t.type.kind&&mS(t.type,e.Diagnostics.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),182===t.type.kind&&mS(t.type,e.Diagnostics.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),Mx(t.type),xd(t)}(t);case 318:return function(t){var r=e.getEffectiveJSDocHost(t);if(r&&(e.isClassDeclaration(r)||e.isClassExpression(r))){var n=e.getJSDocTags(r).filter(e.isJSDocAugmentsTag);e.Debug.assert(n.length>0),n.length>1&&pn(n[1],e.Diagnostics.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);var i=Xb(t.class.expression),a=e.getClassExtendsHeritageElement(r);if(a){var o=Xb(a.expression);o&&i.escapedText!==o.escapedText&&pn(i,e.Diagnostics.JSDoc_0_1_does_not_match_the_extends_2_clause,e.idText(t.tagName),e.idText(i),e.idText(o))}}else pn(r,e.Diagnostics.JSDoc_0_is_not_attached_to_a_class,e.idText(t.tagName))}(t);case 319:return function(t){var r=e.getEffectiveJSDocHost(t);r&&(e.isClassDeclaration(r)||e.isClassExpression(r))||pn(r,e.Diagnostics.JSDoc_0_is_not_attached_to_a_class,e.idText(t.tagName))}(t);case 334:case 327:case 328:return function(t){t.typeExpression||pn(t.name,e.Diagnostics.JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags),t.name&&lx(t.name,e.Diagnostics.Type_alias_name_cannot_be_0),Mx(t.typeExpression)}(t);case 333:return function(e){Mx(e.constraint);for(var t=0,r=e.typeParameters;t<r.length;t++)Mx(r[t])}(t);case 332:return function(e){Mx(e.typeExpression)}(t);case 329:return function(t){if(Mx(t.typeExpression),!e.getParameterSymbolFromJSDoc(t)){var r=e.getHostSignatureFromJSDoc(t);if(r){var n=e.getJSDocTags(r).filter(e.isJSDocParameterTag).indexOf(t);if(n>-1&&n<r.parameters.length&&e.isBindingPattern(r.parameters[n].name))return;Oc(r)?e.findLast(e.getJSDocTags(r),e.isJSDocParameterTag)===t&&t.typeExpression&&t.typeExpression.type&&!rf(xd(t.typeExpression.type))&&pn(t.name,e.Diagnostics.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,e.idText(158===t.name.kind?t.name.right:t.name)):e.isQualifiedName(t.name)?pn(t.name,e.Diagnostics.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,e.entityNameToString(t.name),e.entityNameToString(t.name.left)):pn(t.name,e.Diagnostics.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,e.idText(t.name))}}}(t);case 336:return function(e){Mx(e.typeExpression)}(t);case 311:!function(t){!r||t.type||e.isJSDocConstructSignature(t)||Gf(t,Ee),kb(t)}(t);case 309:case 308:case 306:case 307:case 315:return Lx(t),void e.forEachChild(t,Mx);case 312:return void function(t){Lx(t),Mx(t.type);var r=t.parent;if(e.isParameter(r)&&e.isJSDocFunctionType(r.parent))return void(e.last(r.parent.parameters)!==r&&pn(t,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list));e.isJSDocTypeExpression(r)||pn(t,e.Diagnostics.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);var n=t.parent.parent;if(!e.isJSDocParameterTag(n))return void pn(t,e.Diagnostics.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);var i=e.getParameterSymbolFromJSDoc(n);if(!i)return;var a=e.getHostSignatureFromJSDoc(n);a&&e.last(a.parameters).symbol===i||pn(t,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list)}(t);case 304:return Mx(t.type);case 190:return function(e){Mx(e.objectType),Mx(e.indexType),Fb(Hu(e),e)}(t);case 191:return function(t){Mx(t.typeParameter),Mx(t.nameType),Mx(t.type),t.type||Gf(t,Ee);var r=Ku(t),n=Is(r);n?pp(n,Qe,t.nameType):pp(Ps(r),Qe,e.getEffectiveConstraintOfTypeParameter(t.typeParameter))}(t);case 253:return function(e){r&&(Qb(e),QE(e),yk(e,e.name),vk(e,e.name))}(t);case 232:case 260:return fk(t);case 234:return wk(t);case 235:return function(e){_S(e),fb(e.expression)}(t);case 236:return function(t){_S(t);var r=Ak(t.expression);Tk(t.expression,r,t.thenStatement),Mx(t.thenStatement),233===t.thenStatement.kind&&pn(t.thenStatement,e.Diagnostics.The_body_of_an_if_statement_cannot_be_the_empty_statement),Mx(t.elseStatement)}(t);case 237:return function(e){_S(e),Mx(e.statement),Ak(e.expression)}(t);case 238:return function(e){_S(e),Ak(e.expression),Mx(e.statement)}(t);case 239:return function(t){_S(t)||t.initializer&&252===t.initializer.kind&&lS(t.initializer),t.initializer&&(252===t.initializer.kind?e.forEach(t.initializer.declarations,Sk):fb(t.initializer)),t.condition&&Ak(t.condition),t.incrementor&&fb(t.incrementor),Mx(t.statement),t.locals&&Zb(t)}(t);case 240:return Nk(t);case 241:return function(t){if(tS(t),t.awaitModifier?2==(6&e.getFunctionFlags(e.getContainingFunction(t)))&&V<99&&BE(t,16384):J.downlevelIteration&&V<2&&BE(t,256),252===t.initializer.kind)Pk(t);else{var r=t.initializer,n=Ik(t);if(200===r.kind||201===r.kind)qv(r,n||we);else{var i=fb(r);Iv(r,e.Diagnostics.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access,e.Diagnostics.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access),n&&fp(n,i,r,t.expression)}}Mx(t.statement),t.locals&&Zb(t)}(t);case 242:case 243:return ix(t);case 244:return function(t){var r;if(!_S(t)){var n=e.getContainingFunction(t);if(n){var i=Bc(Ic(n)),a=e.getFunctionFlags(n);if(W||t.expression||131072&i.flags){var o=t.expression?$v(t.expression):Ne;if(169===n.kind)t.expression&&pn(t,e.Diagnostics.Setters_cannot_return_a_value);else if(167===n.kind)t.expression&&!fp(o,i,t,t.expression)&&pn(t,e.Diagnostics.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class);else if(zc(n)){var s=null!==(r=ax(i,a))&&void 0!==r?r:i,c=2&a?Ub(o,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):o;s&&fp(c,s,t,t.expression)}}else 167!==n.kind&&J.noImplicitReturns&&!ox(n,i)&&pn(t,e.Diagnostics.Not_all_code_paths_return_a_value)}else pS(t,e.Diagnostics.A_return_statement_can_only_be_used_within_a_function_body)}}(t);case 245:return function(t){_S(t)||32768&t.flags&&pS(t,e.Diagnostics.with_statements_are_not_allowed_in_an_async_function_block),fb(t.expression);var r=e.getSourceFileOfNode(t);if(!dS(r)){var n=e.getSpanOfTokenAtPosition(r,t.pos).start;fS(r,n,t.statement.pos-n,e.Diagnostics.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}(t);case 246:return function(t){var n;_S(t);var i=!1,a=fb(t.expression),o=ff(a);e.forEach(t.caseBlock.clauses,(function(t){if(288!==t.kind||i||(void 0===n?n=t:(mS(t,e.Diagnostics.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),i=!0)),r&&287===t.kind){var s=fb(t.expression),c=ff(s),l=a;c&&o||(s=c?mf(s):s,l=mf(a)),Vv(l,s)||xp(s,l,t.expression,void 0)}e.forEach(t.statements,Mx),J.noFallthroughCasesInSwitch&&t.fallthroughFlowNode&&Ng(t.fallthroughFlowNode)&&pn(t,e.Diagnostics.Fallthrough_case_in_switch)})),t.caseBlock.locals&&Zb(t.caseBlock)}(t);case 247:return function(t){_S(t)||e.findAncestor(t.parent,(function(r){return e.isFunctionLike(r)?"quit":247===r.kind&&r.label.escapedText===t.label.escapedText&&(mS(t.label,e.Diagnostics.Duplicate_label_0,e.getTextOfNode(t.label)),!0)})),Mx(t.statement)}(t);case 248:return sx(t);case 249:return function(t){_S(t),fk(t.tryBlock);var r=t.catchClause;if(r){if(r.variableDeclaration){var n=r.variableDeclaration;if(n.type){var i=Ua(n,!1);!i||3&i.flags||pS(n.type,e.Diagnostics.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(n.initializer)pS(n.initializer,e.Diagnostics.Catch_clause_variable_cannot_have_an_initializer);else{var a=r.block.locals;a&&e.forEachKey(r.locals,(function(t){var r=a.get(t);r&&0!=(2&r.flags)&&mS(r.valueDeclaration,e.Diagnostics.Cannot_redeclare_identifier_0_in_catch_clause,t)}))}}fk(r.block)}t.finallyBlock&&fk(t.finallyBlock)}(t);case 251:return Sk(t);case 199:return Dk(t);case 254:return function(t){t.name||e.hasSyntacticModifier(t,512)||pS(t,e.Diagnostics.A_class_declaration_without_the_default_modifier_must_have_a_name),mx(t),e.forEach(t.members,Mx),Zb(t)}(t);case 255:return fx(t);case 256:return vx(t);case 257:return function(t){UE(t),lx(t.name,e.Diagnostics.Type_alias_name_cannot_be_0),jb(t),ux(t.typeParameters),137===t.type.kind?P.has(t.name.escapedText)&&1===e.length(t.typeParameters)||pn(t.type,e.Diagnostics.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types):(Mx(t.type),Zb(t))}(t);case 258:return function(t){if(r){UE(t),lx(t.name,e.Diagnostics.Enum_name_cannot_be_0),yk(t,t.name),vk(t,t.name),jb(t),t.members.forEach(Ex),bx(t);var n=Ai(t);if(t===e.getDeclarationOfKind(n,t.kind)){if(n.declarations.length>1){var i=e.isEnumConst(t);e.forEach(n.declarations,(function(t){e.isEnumDeclaration(t)&&e.isEnumConst(t)!==i&&pn(e.getNameOfDeclaration(t),e.Diagnostics.Enum_declarations_must_all_be_const_or_non_const)}))}var a=!1;e.forEach(n.declarations,(function(t){if(258!==t.kind)return!1;var r=t;if(!r.members.length)return!1;var n=r.members[0];n.initializer||(a?pn(n.name,e.Diagnostics.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):a=!0)}))}}}(t);case 259:return Sx(t);case 264:return Ax(t);case 263:return function(t){if(!Px(t,e.Diagnostics.An_import_declaration_can_only_be_used_in_a_namespace_or_module)&&(UE(t),e.isInternalModuleImportEqualsDeclaration(t)||wx(t)))if(Cx(t),e.hasSyntacticModifier(t,1)&&li(t),275!==t.moduleReference.kind){var r=ai(Ai(t));if(r!==ke){if(111551&r.flags){var n=e.getFirstIdentifier(t.moduleReference);1920&fi(n,112575).flags||pn(n,e.Diagnostics.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,e.declarationNameToString(n))}788968&r.flags&&lx(t.name,e.Diagnostics.Import_name_cannot_be_0)}t.isTypeOnly&&mS(t,e.Diagnostics.An_import_alias_cannot_use_import_type)}else!(H>=e.ModuleKind.ES2015)||t.isTypeOnly||8388608&t.flags||mS(t,e.Diagnostics.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead)}(t);case 270:return Nx(t);case 269:return function(t){if(!Px(t,e.Diagnostics.An_export_assignment_can_only_be_used_in_a_module)){var r=300===t.parent.kind?t.parent:t.parent.parent;if(259!==r.kind||e.isAmbientModule(r)){if(!UE(t)&&e.hasEffectiveModifiers(t)&&pS(t,e.Diagnostics.An_export_assignment_cannot_have_modifiers),78===t.expression.kind){var n=t.expression,i=fi(n,67108863,!0,!0,t);if(i){Jg(i,n);var a=2097152&i.flags?ai(i):i;(a===ke||111551&a.flags)&&$v(t.expression)}else $v(t.expression);e.getEmitDeclarations(J)&&Sa(t.expression,!0)}else $v(t.expression);Rx(r),8388608&t.flags&&!e.isEntityNameExpression(t.expression)&&mS(t.expression,e.Diagnostics.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),!t.isExportEquals||8388608&t.flags||(H>=e.ModuleKind.ES2015?mS(t,e.Diagnostics.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):H===e.ModuleKind.System&&mS(t,e.Diagnostics.Export_assignment_is_not_supported_when_module_flag_is_system))}else t.isExportEquals?pn(t,e.Diagnostics.An_export_assignment_cannot_be_used_in_a_namespace):pn(t,e.Diagnostics.A_default_export_can_only_be_used_in_an_ECMAScript_style_module)}}(t);case 233:case 250:return void _S(t);case 274:(function(e){Yb(e)})(t)}}(t),d=i}}function Lx(t){e.isInJSFile(t)||mS(t,e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments)}function jx(t){var r=Cn(e.getSourceFileOfNode(t));if(!(1&r.flags)){r.deferredNodes=r.deferredNodes||new e.Map;var n=O(t);r.deferredNodes.set(n,t)}}function Bx(t){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkDeferredNode",{kind:t.kind,pos:t.pos,end:t.end});var r=d;switch(d=t,x=0,t.kind){case 204:case 205:case 206:case 162:case 278:Vh(t);break;case 209:case 210:case 166:case 165:!function(t){e.Debug.assert(166!==t.kind||e.isObjectLiteralMethod(t));var r=e.getFunctionFlags(t),n=zc(t);if(wv(t,n),t.body)if(e.getEffectiveReturnTypeNode(t)||Bc(Ic(t)),232===t.body.kind)Mx(t.body);else{var i=fb(t.body),a=n&&ax(n,r);a&&fp(2==(3&r)?Ub(i,t.body,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):i,a,t.body,t.body)}}(t);break;case 168:case 169:wb(t);break;case 223:!function(t){e.forEach(t.members,Mx),Zb(t)}(t);break;case 277:!function(e){ah(e)}(t);break;case 276:!function(e){ah(e.openingElement),q_(e.closingElement.tagName)?G_(e.closingElement):fb(e.closingElement.tagName),V_(e)}(t)}d=r,null===e.tracing||void 0===e.tracing||e.tracing.pop()}function zx(r){null===e.tracing||void 0===e.tracing||e.tracing.push("check","checkSourceFile",{path:r.path},!0),e.performance.mark("beforeCheck"),function(r){var n=Cn(r);if(!(1&n.flags)){if(e.skipTypeChecking(r,J,t))return;!function(t){!!(8388608&t.flags)&&function(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];if((e.isDeclaration(i)||234===i.kind)&&gS(i))return!0}}(t)}(r),e.clear(Gr),e.clear($r),e.clear(Yr),e.forEach(r.statements,Mx),Mx(r.endOfFileToken),function(e){var t=Cn(e);t.deferredNodes&&t.deferredNodes.forEach(Bx)}(r),e.isExternalOrCommonJsModule(r)&&Zb(r),r.isDeclarationFile||!J.noUnusedLocals&&!J.noUnusedParameters||ek(qx(r),(function(t,r,n){!e.containsParseError(t)&&Ux(r,!!(8388608&t.flags))&&Qr.add(n)})),2===J.importsNotUsedAsValues&&!r.isDeclarationFile&&e.isExternalModule(r)&&function(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];(Ix(i)||Fx(i))&&pn(i,e.Diagnostics.This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error)}}(r),e.isExternalOrCommonJsModule(r)&&Rx(r),Gr.length&&(e.forEach(Gr,gk),e.clear(Gr)),$r.length&&(e.forEach($r,_k),e.clear($r)),Yr.length&&(e.forEach(Yr,hk),e.clear(Yr)),n.flags|=1}}(r),e.performance.mark("afterCheck"),e.performance.measure("Check","beforeCheck","afterCheck"),null===e.tracing||void 0===e.tracing||e.tracing.pop()}function Ux(t,r){if(r)return!1;switch(t){case 0:return!!J.noUnusedLocals;case 1:return!!J.noUnusedParameters;default:return e.Debug.assertNever(t)}}function qx(t){return Er.get(t.path)||e.emptyArray}function Jx(r,i){try{return n=i,function(r){if(Vx(),r){var n=Qr.getGlobalDiagnostics(),i=n.length;zx(r);var a=Qr.getDiagnostics(r.fileName),o=Qr.getGlobalDiagnostics();if(o!==n){var s=e.relativeComplement(n,o,e.compareDiagnostics);return e.concatenate(s,a)}return 0===i&&o.length>0?e.concatenate(o,a):a}return e.forEach(t.getSourceFiles(),zx),Qr.getDiagnostics()}(r)}finally{n=void 0}}function Vx(){if(!r)throw new Error("Trying to get diagnostics from a type checker that does not produce them.")}function Hx(e){switch(e.kind){case 160:case 254:case 256:case 257:case 258:case 334:case 327:case 328:return!0;case 265:return e.isTypeOnly;case 268:case 273:return e.parent.parent.isTypeOnly;default:return!1}}function Kx(e){for(;158===e.parent.kind;)e=e.parent;return 174===e.parent.kind}function Wx(t,r){for(var n;(t=e.getContainingClass(t))&&!(n=r(t)););return n}function Gx(e,t){return!!Wx(e,(function(e){return e===t}))}function $x(e){return void 0!==function(e){for(;158===e.parent.kind;)e=e.parent;return 263===e.parent.kind?e.parent.moduleReference===e?e.parent:void 0:269===e.parent.kind&&e.parent.expression===e?e.parent:void 0}(e)}function Yx(t){if(e.isDeclarationName(t))return Ai(t.parent);if(e.isInJSFile(t)&&202===t.parent.kind&&t.parent===t.parent.parent.left&&!e.isPrivateIdentifier(t)){var r=function(t){switch(e.getAssignmentDeclarationKind(t.parent.parent)){case 1:case 3:return Ai(t.parent);case 4:case 2:case 5:return Ai(t.parent.parent)}}(t);if(r)return r}if(269===t.parent.kind&&e.isEntityNameExpression(t)){var n=fi(t,2998271,!0);if(n&&n!==ke)return n}else if(!e.isPropertyAccessExpression(t)&&!e.isPrivateIdentifier(t)&&$x(t)){var i=e.getAncestor(t,263);return e.Debug.assert(void 0!==i),di(t,!0)}if(!e.isPropertyAccessExpression(t)&&!e.isPrivateIdentifier(t)){var a=function(t){for(var r=t.parent;e.isQualifiedName(r);)t=r,r=r.parent;if(r&&196===r.kind&&r.qualifier===t)return r}(t);if(a){xd(a);var o=Cn(t).resolvedSymbol;return o===ke?void 0:o}}for(;e.isRightSideOfQualifiedNameOrPropertyAccess(t);)t=t.parent;if(function(e){for(;202===e.parent.kind;)e=e.parent;return 225===e.parent.kind}(t)){var s=0;225===t.parent.kind?(s=788968,e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)&&(s|=111551)):s=1920,s|=2097152;var c=e.isEntityNameExpression(t)?fi(t,s):void 0;if(c)return c}if(329===t.parent.kind)return e.getParameterSymbolFromJSDoc(t.parent);if(160===t.parent.kind&&333===t.parent.parent.kind){e.Debug.assert(!e.isInJSFile(t));var l=e.getTypeParameterFromJsDoc(t.parent);return l&&l.symbol}if(e.isExpressionNode(t)){if(e.nodeIsMissing(t))return;if(78===t.kind){if(e.isJSXTagName(t)&&q_(t)){var u=G_(t.parent);return u===ke?void 0:u}return fi(t,111551,!1,!0)}if(202===t.kind||158===t.kind){var d=Cn(t);return d.resolvedSymbol||(202===t.kind?kh(t):xh(t)),d.resolvedSymbol}}else{if(Kx(t))return fi(t,s=174===t.parent.kind?788968:1920,!1,!0);if(function(e){for(;158===e.parent.kind;)e=e.parent;for(;202===e.parent.kind;)e=e.parent;return 305===e.parent.kind}(t))return fi(t,s=901119,!1,!0,e.getHostSignatureFromJSDoc(t))}return 173===t.parent.kind?fi(t,1):void 0}function Xx(t,r){if(300===t.kind)return e.isExternalModule(t)?Ci(t.symbol):void 0;var n=t.parent,i=n.parent;if(!(16777216&t.flags)){if(j(t)){var a=Ai(n);return e.isImportOrExportSpecifier(t.parent)&&t.parent.propertyName===t?j_(a):a}if(e.isLiteralComputedPropertyDeclarationName(t))return Ai(n.parent);if(78===t.kind){if($x(t))return Yx(t);if(199===n.kind&&197===i.kind&&t===n.propertyName){var o=gc(Qx(i),t.escapedText);if(o)return o}}switch(t.kind){case 78:case 79:case 202:case 158:return Yx(t);case 108:var s=e.getThisContainer(t,!1);if(e.isFunctionLike(s)){var c=Ic(s);if(c.thisParameter)return c.thisParameter}if(e.isInExpressionContext(t))return fb(t).symbol;case 188:return vd(t).symbol;case 106:return fb(t).symbol;case 133:var l=t.parent;return l&&167===l.kind?l.parent.symbol:void 0;case 10:case 14:if(e.isExternalModuleImportEqualsDeclaration(t.parent.parent)&&e.getExternalModuleImportEqualsDeclarationExpression(t.parent.parent)===t||(264===t.parent.kind||270===t.parent.kind)&&t.parent.moduleSpecifier===t||e.isInJSFile(t)&&e.isRequireCall(t.parent,!1)||e.isImportCall(t.parent)||e.isLiteralTypeNode(t.parent)&&e.isLiteralImportTypeNode(t.parent.parent)&&t.parent.parent.argument===t.parent)return gi(t,t,r);if(e.isCallExpression(n)&&e.isBindableObjectDefinePropertyCall(n)&&n.arguments[1]===t)return Ai(n);case 8:var u=e.isElementAccessExpression(n)?n.argumentExpression===t?ub(n.expression):void 0:e.isLiteralTypeNode(n)&&e.isIndexedAccessTypeNode(i)?xd(i.objectType):void 0;return u&&gc(u,e.escapeLeadingUnderscores(t.text));case 88:case 98:case 38:case 83:return Ai(t.parent);case 196:return e.isLiteralImportTypeNode(t)?Xx(t.argument.literal,r):void 0;case 93:return e.isExportAssignment(t.parent)?e.Debug.checkDefined(t.parent.symbol):void 0;default:return}}}function Qx(t){if(e.isSourceFile(t)&&!e.isExternalModule(t))return we;if(16777216&t.flags)return we;var r,n,i=e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments(t),a=i&&Oo(Ai(i.class));if(e.isPartOfTypeNode(t)){var o=xd(t);return a?ls(o,a.thisType):o}if(e.isExpressionNode(t))return eE(t);if(a&&!i.isImplements){var s=e.firstOrUndefined(Po(a));return s?ls(s,a.thisType):we}if(Hx(t))return Jo(n=Ai(t));if(78===(r=t).kind&&Hx(r.parent)&&e.getNameOfDeclaration(r.parent)===r)return(n=Xx(t))?Jo(n):we;if(e.isDeclaration(t))return _o(n=Ai(t));if(j(t))return(n=Xx(t))?_o(n):we;if(e.isBindingPattern(t))return Ua(t.parent,!0)||we;if($x(t)&&(n=Xx(t))){var c=Jo(n);return c!==we?c:_o(n)}return we}function Zx(t){if(e.Debug.assert(201===t.kind||200===t.kind),241===t.parent.kind)return qv(t,Ik(t.parent)||we);if(218===t.parent.kind)return qv(t,ub(t.parent.right)||we);if(291===t.parent.kind){var r=e.cast(t.parent.parent,e.isObjectLiteralExpression);return zv(r,Zx(r)||we,e.indexOfNode(r.properties,t.parent))}var n=e.cast(t.parent,e.isArrayLiteralExpression),i=Zx(n)||we,a=Fk(65,i,Ne,t.parent)||we;return Uv(n,i,n.elements.indexOf(t),a)}function eE(t,r){return e.isRightSideOfQualifiedNameOrPropertyAccess(t)&&(t=t.parent),gd(ub(t,r))}function tE(t){var r=Ai(t.parent);return e.hasSyntacticModifier(t,32)?_o(r):Jo(r)}function rE(t){var r=t.name;switch(r.kind){case 78:return hd(e.idText(r));case 8:case 10:return hd(r.text);case 159:var n=M_(r);return Mv(n,12288)?n:Re;default:return e.Debug.fail("Unsupported property name.")}}function nE(t){t=ac(t);var r=e.createSymbolTable(Hs(t)),n=hc(t,0).length?bt:hc(t,1).length?kt:void 0;return n&&e.forEach(Hs(n),(function(e){r.has(e.escapedName)||r.set(e.escapedName,e)})),Hi(r)}function iE(t){return e.typeHasCallOrConstructSignatures(t,le)}function aE(t){if(e.isGeneratedIdentifier(t))return!1;var r=e.getParseTreeNode(t,e.isIdentifier);if(!r)return!1;var n=r.parent;return!!n&&(!((e.isPropertyAccessExpression(n)||e.isPropertyAssignment(n))&&n.name===r)&&IE(r)===se)}function oE(t){var r=gi(t.parent,t);if(!r||e.isShorthandAmbientModuleSymbol(r))return!0;var n=ki(r),i=Tn(r=vi(r));return void 0===i.exportsSomeValue&&(i.exportsSomeValue=n?!!(111551&r.flags):e.forEachEntry(Di(r),(function(e){return(e=ii(e))&&!!(111551&e.flags)}))),i.exportsSomeValue}function sE(t,r){var n=e.getParseTreeNode(t,e.isIdentifier);if(n){var i=IE(n,function(t){return e.isModuleOrEnumDeclaration(t.parent)&&t===t.parent.name}(n));if(i){if(1048576&i.flags){var a=Ci(i.exportSymbol);if(!r&&944&a.flags&&!(3&a.flags))return;i=a}var o=Ni(i);if(o){if(512&o.flags&&300===o.valueDeclaration.kind){var s=o.valueDeclaration;return s!==e.getSourceFileOfNode(n)?void 0:s}return e.findAncestor(n.parent,(function(t){return e.isModuleOrEnumDeclaration(t)&&Ai(t)===o}))}}}}function cE(t){if(t.generatedImportReference)return t.generatedImportReference;var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=IE(r);if(ni(n,111551)&&!ci(n))return Vn(n)}}function lE(t){if(418&t.flags&&!e.isSourceFile(t.valueDeclaration)){var r=Tn(t);if(void 0===r.isDeclarationWithCollidingName){var n=e.getEnclosingBlockScopeContainer(t.valueDeclaration);if(e.isStatementWithLocals(n)||function(t){return e.isBindingElement(t.valueDeclaration)&&290===e.walkUpBindingElementsAndPatterns(t.valueDeclaration).parent.kind}(t)){var i=Cn(t.valueDeclaration);if(Fn(n.parent,t.escapedName,111551,void 0,void 0,!1))r.isDeclarationWithCollidingName=!0;else if(262144&i.flags){var a=524288&i.flags,o=e.isIterationStatement(n,!1),s=232===n.kind&&e.isIterationStatement(n.parent,!1);r.isDeclarationWithCollidingName=!(e.isBlockScopedContainerTopLevel(n)||a&&(o||s))}else r.isDeclarationWithCollidingName=!1}}return r.isDeclarationWithCollidingName}return!1}function uE(t){if(!e.isGeneratedIdentifier(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=IE(r);if(n&&lE(n))return n.valueDeclaration}}}function dE(t){var r=e.getParseTreeNode(t,e.isDeclaration);if(r){var n=Ai(r);if(n)return lE(n)}return!1}function pE(t){switch(t.kind){case 263:return mE(Ai(t)||ke);case 265:case 266:case 268:case 273:var r=Ai(t)||ke;return mE(r)&&!ci(r);case 270:var n=t.exportClause;return!!n&&(e.isNamespaceExport(n)||e.some(n.elements,pE));case 269:return!t.expression||78!==t.expression.kind||mE(Ai(t)||ke)}return!1}function fE(t){var r=e.getParseTreeNode(t,e.isImportEqualsDeclaration);return!(void 0===r||300!==r.parent.kind||!e.isInternalModuleImportEqualsDeclaration(r))&&(mE(Ai(r))&&r.moduleReference&&!e.nodeIsMissing(r.moduleReference))}function mE(t){var r=ai(t);return r===ke||!!(111551&r.flags)&&(e.shouldPreserveConstEnums(J)||!gE(r))}function gE(e){return Bv(e)||!!e.constEnumOnlyModule}function _E(t,r){if(Hn(t)){var n=Ai(t),i=n&&Tn(n);if(null==i?void 0:i.referenced)return!0;var a=Tn(n).target;if(a&&1&e.getEffectiveModifierFlags(t)&&111551&a.flags&&(e.shouldPreserveConstEnums(J)||!gE(a)))return!0}return!!r&&!!e.forEachChild(t,(function(e){return _E(e,r)}))}function hE(t){if(e.nodeIsPresent(t.body)){if(e.isGetAccessor(t)||e.isSetAccessor(t))return!1;var r=Rc(Ai(t));return r.length>1||1===r.length&&r[0].declaration!==t}return!1}function yE(t){return!(!W||Tc(t)||e.isJSDocParameterTag(t)||!t.initializer||e.hasSyntacticModifier(t,92))}function vE(t){return W&&Tc(t)&&!t.initializer&&e.hasSyntacticModifier(t,92)}function bE(t){var r=e.getParseTreeNode(t,e.isFunctionDeclaration);if(!r)return!1;var n=Ai(r);return!!(n&&16&n.flags)&&!!e.forEachEntry(Si(n),(function(t){return 111551&t.flags&&t.valueDeclaration&&e.isPropertyAccessExpression(t.valueDeclaration)}))}function kE(t){var r=e.getParseTreeNode(t,e.isFunctionDeclaration);if(!r)return e.emptyArray;var n=Ai(r);return n&&Hs(_o(n))||e.emptyArray}function xE(e){return Cn(e).flags||0}function EE(e){return bx(e.parent),Cn(e).enumMemberValue}function SE(e){switch(e.kind){case 294:case 202:case 203:return!0}return!1}function DE(t){if(294===t.kind)return EE(t);var r=Cn(t).resolvedSymbol;if(r&&8&r.flags){var n=r.valueDeclaration;if(e.isEnumConst(n.parent))return EE(n)}}function wE(e){return!!(524288&e.flags)&&hc(e,0).length>0}function TE(t,r){var n,i=e.getParseTreeNode(t,e.isEntityName);if(!i)return e.TypeReferenceSerializationKind.Unknown;if(r&&!(r=e.getParseTreeNode(r)))return e.TypeReferenceSerializationKind.Unknown;var a=fi(i,111551,!0,!0,r),o=(null===(n=null==a?void 0:a.declarations)||void 0===n?void 0:n.every(e.isTypeOnlyImportOrExportDeclaration))||!1,s=a&&2097152&a.flags?ai(a):a,c=fi(i,788968,!0,!1,r);if(s&&s===c){var l=Fl(!1);if(l&&s===l)return e.TypeReferenceSerializationKind.Promise;var u=_o(s);if(u&&Do(u))return o?e.TypeReferenceSerializationKind.TypeWithCallSignature:e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue}if(!c)return o?e.TypeReferenceSerializationKind.ObjectType:e.TypeReferenceSerializationKind.Unknown;var d=Jo(c);return d===we?o?e.TypeReferenceSerializationKind.ObjectType:e.TypeReferenceSerializationKind.Unknown:3&d.flags?e.TypeReferenceSerializationKind.ObjectType:Mv(d,245760)?e.TypeReferenceSerializationKind.VoidNullableOrNeverType:Mv(d,528)?e.TypeReferenceSerializationKind.BooleanType:Mv(d,296)?e.TypeReferenceSerializationKind.NumberLikeType:Mv(d,2112)?e.TypeReferenceSerializationKind.BigIntLikeType:Mv(d,402653316)?e.TypeReferenceSerializationKind.StringLikeType:vf(d)?e.TypeReferenceSerializationKind.ArrayLikeType:Mv(d,12288)?e.TypeReferenceSerializationKind.ESSymbolType:wE(d)?e.TypeReferenceSerializationKind.TypeWithCallSignature:rf(d)?e.TypeReferenceSerializationKind.ArrayLikeType:e.TypeReferenceSerializationKind.ObjectType}function CE(t,r,n,i,a){var o=e.getParseTreeNode(t,e.isVariableLikeOrAccessor);if(!o)return e.factory.createToken(129);var s=Ai(o),c=!s||133120&s.flags?we:gf(_o(s));return 8192&c.flags&&c.symbol===s&&(n|=1048576),a&&(c=Nf(c)),re.typeToTypeNode(c,r,1024|n,i)}function AE(t,r,n,i){var a=e.getParseTreeNode(t,e.isFunctionLike);if(!a)return e.factory.createToken(129);var o=Ic(a);return re.typeToTypeNode(Bc(o),r,1024|n,i)}function NE(t,r,n,i){var a=e.getParseTreeNode(t,e.isExpression);if(!a)return e.factory.createToken(129);var o=Hf(eE(a));return re.typeToTypeNode(o,r,1024|n,i)}function PE(t){return ne.has(e.escapeLeadingUnderscores(t))}function IE(t,r){var n=Cn(t).resolvedSymbol;if(n)return n;var i=t;if(r){var a=t.parent;e.isDeclaration(a)&&t===a.name&&(i=Aa(a))}return Fn(i,t.escapedText,3257279,void 0,void 0,!0)}function FE(t){if(!e.isGeneratedIdentifier(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=IE(r);if(n)return Ri(n).valueDeclaration}}}function OE(t){return!!(e.isDeclarationReadonly(t)||e.isVariableDeclaration(t)&&e.isVarConst(t))&&_d(_o(Ai(t)))}function RE(t,r){return function(t,r,n){var i=1024&t.flags?re.symbolToExpression(t.symbol,111551,r,void 0,n):t===ze?e.factory.createTrue():t===je&&e.factory.createFalse();if(i)return i;var a=t.value;return"object"==typeof a?e.factory.createBigIntLiteral(a):"number"==typeof a?e.factory.createNumericLiteral(a):e.factory.createStringLiteral(a)}(_o(Ai(t)),t,r)}function ME(t){return t?(un(t),e.getSourceFileOfNode(t).localJsxFactory||ar):ar}function LE(t){if(t){var r=e.getSourceFileOfNode(t);if(r){if(r.localJsxFragmentFactory)return r.localJsxFragmentFactory;var n=r.pragmas.get("jsxfrag"),i=e.isArray(n)?n[0]:n;if(i)return r.localJsxFragmentFactory=e.parseIsolatedEntityName(i.arguments.factory,V),r.localJsxFragmentFactory}}if(J.jsxFragmentFactory)return e.parseIsolatedEntityName(J.jsxFragmentFactory,V)}function jE(t){var r=259===t.kind?e.tryCast(t.name,e.isStringLiteral):e.getExternalModuleName(t),n=_i(r,r,void 0);if(n)return e.getDeclarationOfKind(n,300)}function BE(t,r){if((o&r)!==r&&J.importHelpers){var n=e.getSourceFileOfNode(t);if(e.isEffectiveExternalModule(n,J)&&!(8388608&t.flags)){var i=function(t,r){u||(u=hi(t,e.externalHelpersModuleNameText,e.Diagnostics.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,r)||ke);return u}(n,t);if(i!==ke)for(var a=r&~o,s=1;s<=2097152;s<<=1)if(a&s){var c=zE(s);Nn(i.exports,e.escapeLeadingUnderscores(c),111551)||pn(t,e.Diagnostics.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,e.externalHelpersModuleNameText,c)}o|=r}}}function zE(t){switch(t){case 1:return"__extends";case 2:return"__assign";case 4:return"__rest";case 8:return"__decorate";case 16:return"__metadata";case 32:return"__param";case 64:return"__awaiter";case 128:return"__generator";case 256:return"__values";case 512:return"__read";case 1024:return"__spreadArray";case 2048:return"__await";case 4096:return"__asyncGenerator";case 8192:return"__asyncDelegator";case 16384:return"__asyncValues";case 32768:return"__exportStar";case 65536:return"__importStar";case 131072:return"__importDefault";case 262144:return"__makeTemplateObject";case 524288:return"__classPrivateFieldGet";case 1048576:return"__classPrivateFieldSet";case 2097152:return"__createBinding";default:return e.Debug.fail("Unrecognized helper")}}function UE(t){return function(t){if(!t.decorators)return!1;if(8===e.getSourceFileOfNode(t).scriptKind){if(e.isTokenInsideBuilder(t.decorators,J))return!1;var r=e.getEtsExtendDecoratorComponentNames(t.decorators,J);if(r.length){if(e.filterEtsExtendDecoratorComponentNamesByOptions(r,J).length)return!1;var n=e.getSourceFileOfNode(t),i=e.getSpanOfTokenAtPosition(n,t.pos);return Qr.add(e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.Decorator_name_must_be_one_of_ETS_Components)),!0}if(e.hasEtsStylesDecoratorNames(t.decorators,J))return!0}if(!e.nodeCanBeDecorated(t,t.parent,t.parent.parent,J))return 166!==t.kind||e.nodeIsPresent(t.body)?pS(t,e.Diagnostics.Decorators_are_not_valid_here):pS(t,e.Diagnostics.A_decorator_can_only_decorate_a_method_implementation_not_an_overload);if(168===t.kind||169===t.kind){var a=e.getAllAccessorDeclarations(t.parent.members,t);if(a.firstAccessor.decorators&&t===a.secondAccessor)return pS(t,e.Diagnostics.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}return!1}(t)||function(t){var r,n,i,a,o=function(t){return!!t.modifiers&&(function(t){switch(t.kind){case 168:case 169:case 167:case 164:case 163:case 166:case 165:case 172:case 259:case 264:case 263:case 270:case 269:case 209:case 210:case 161:return!1;default:if(260===t.parent.kind||300===t.parent.kind)return!1;switch(t.kind){case 253:return qE(t,130);case 254:case 176:return qE(t,126);case 256:case 234:case 257:return!0;case 258:return qE(t,85);default:e.Debug.fail()}}}(t)?pS(t,e.Diagnostics.Modifiers_cannot_appear_here):void 0)}(t);if(void 0!==o)return o;for(var s=0,c=0,l=t.modifiers;c<l.length;c++){var u=l[c];if(143!==u.kind){if(163===t.kind||165===t.kind)return mS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_type_member,e.tokenToString(u.kind));if(172===t.kind)return mS(u,e.Diagnostics._0_modifier_cannot_appear_on_an_index_signature,e.tokenToString(u.kind))}switch(u.kind){case 85:if(258!==t.kind)return mS(t,e.Diagnostics.A_class_member_cannot_have_the_0_keyword,e.tokenToString(85));break;case 123:case 122:case 121:var d=ya(e.modifierToFlag(u.kind));if(28&s)return mS(u,e.Diagnostics.Accessibility_modifier_already_seen);if(32&s)return mS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"static");if(64&s)return mS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"readonly");if(256&s)return mS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"async");if(260===t.parent.kind||300===t.parent.kind)return mS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_module_or_namespace_element,d);if(128&s)return 121===u.kind?mS(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,d,"abstract"):mS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,d,"abstract");if(e.isPrivateIdentifierPropertyDeclaration(t))return mS(u,e.Diagnostics.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);s|=e.modifierToFlag(u.kind);break;case 124:if(32&s)return mS(u,e.Diagnostics._0_modifier_already_seen,"static");if(64&s)return mS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"static","readonly");if(256&s)return mS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"static","async");if(260===t.parent.kind||300===t.parent.kind)return mS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(161===t.kind)return mS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"static");if(128&s)return mS(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(e.isPrivateIdentifierPropertyDeclaration(t))return mS(u,e.Diagnostics._0_modifier_cannot_be_used_with_a_private_identifier,"static");s|=32,r=u;break;case 143:if(64&s)return mS(u,e.Diagnostics._0_modifier_already_seen,"readonly");if(164!==t.kind&&163!==t.kind&&172!==t.kind&&161!==t.kind)return mS(u,e.Diagnostics.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);s|=64,a=u;break;case 93:if(1&s)return mS(u,e.Diagnostics._0_modifier_already_seen,"export");if(2&s)return mS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","declare");if(128&s)return mS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","abstract");if(256&s)return mS(u,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","async");if(e.isClassLike(t.parent))return mS(u,e.Diagnostics._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(161===t.kind)return mS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"export");s|=1;break;case 88:var p=300===t.parent.kind?t.parent:t.parent.parent;if(259===p.kind&&!e.isAmbientModule(p))return mS(u,e.Diagnostics.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);s|=512;break;case 134:if(2&s)return mS(u,e.Diagnostics._0_modifier_already_seen,"declare");if(256&s)return mS(u,e.Diagnostics._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(e.isClassLike(t.parent)&&!e.isPropertyDeclaration(t))return mS(u,e.Diagnostics._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(161===t.kind)return mS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"declare");if(8388608&t.parent.flags&&260===t.parent.kind)return mS(u,e.Diagnostics.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(e.isPrivateIdentifierPropertyDeclaration(t))return mS(u,e.Diagnostics._0_modifier_cannot_be_used_with_a_private_identifier,"declare");s|=2,n=u;break;case 126:if(128&s)return mS(u,e.Diagnostics._0_modifier_already_seen,"abstract");if(254!==t.kind&&176!==t.kind){if(166!==t.kind&&164!==t.kind&&168!==t.kind&&169!==t.kind)return mS(u,e.Diagnostics.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(254!==t.parent.kind||!e.hasSyntacticModifier(t.parent,128))return mS(u,e.Diagnostics.Abstract_methods_can_only_appear_within_an_abstract_class);if(32&s)return mS(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(8&s)return mS(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(256&s&&i)return mS(i,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"async","abstract")}if(e.isNamedDeclaration(t)&&79===t.name.kind)return mS(u,e.Diagnostics._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");s|=128;break;case 130:if(256&s)return mS(u,e.Diagnostics._0_modifier_already_seen,"async");if(2&s||8388608&t.parent.flags)return mS(u,e.Diagnostics._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(161===t.kind)return mS(u,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"async");if(128&s)return mS(u,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");s|=256,i=u}}if(167===t.kind)return 32&s?mS(r,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):128&s?mS(r,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"abstract"):256&s?mS(i,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!!(64&s)&&mS(a,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"readonly");if((264===t.kind||263===t.kind)&&2&s)return mS(n,e.Diagnostics.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare");if(161===t.kind&&92&s&&e.isBindingPattern(t.name))return mS(t,e.Diagnostics.A_parameter_property_may_not_be_declared_using_a_binding_pattern);if(161===t.kind&&92&s&&t.dotDotDotToken)return mS(t,e.Diagnostics.A_parameter_property_cannot_be_declared_using_a_rest_parameter);if(256&s)return function(t,r){switch(t.kind){case 166:case 253:case 209:case 210:return!1}return mS(r,e.Diagnostics._0_modifier_cannot_be_used_here,"async")}(t,i);return!1}(t)}function qE(e,t){return e.modifiers.length>1||e.modifiers[0].kind!==t}function JE(t,r){return void 0===r&&(r=e.Diagnostics.Trailing_comma_not_allowed),!(!t||!t.hasTrailingComma)&&fS(t[0],t.end-1,1,r)}function VE(t,r){if(t&&0===t.length){var n=t.pos-1;return fS(r,n,e.skipTrivia(r.text,t.end)+1-n,e.Diagnostics.Type_parameter_list_cannot_be_empty)}return!1}function HE(t){if(V>=3){var r=t.body&&e.isBlock(t.body)&&e.findUseStrictPrologue(t.body.statements);if(r){var n=(o=t.parameters,e.filter(o,(function(t){return!!t.initializer||e.isBindingPattern(t.name)||e.isRestParameter(t)})));if(e.length(n)){e.forEach(n,(function(t){e.addRelatedInfo(pn(t,e.Diagnostics.This_parameter_is_not_allowed_with_use_strict_directive),e.createDiagnosticForNode(r,e.Diagnostics.use_strict_directive_used_here))}));var a=n.map((function(t,r){return 0===r?e.createDiagnosticForNode(t,e.Diagnostics.Non_simple_parameter_declared_here):e.createDiagnosticForNode(t,e.Diagnostics.and_here)}));return e.addRelatedInfo.apply(void 0,i([pn(r,e.Diagnostics.use_strict_directive_cannot_be_used_with_non_simple_parameter_list)],a)),!0}}}var o;return!1}function KE(t){var r=e.getSourceFileOfNode(t);return UE(t)||VE(t.typeParameters,r)||function(t){for(var r=!1,n=t.length,i=0;i<n;i++){var a=t[i];if(a.dotDotDotToken){if(i!==n-1)return mS(a.dotDotDotToken,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list);if(8388608&a.flags||JE(t,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),a.questionToken)return mS(a.questionToken,e.Diagnostics.A_rest_parameter_cannot_be_optional);if(a.initializer)return mS(a.name,e.Diagnostics.A_rest_parameter_cannot_have_an_initializer)}else if(Tc(a)){if(r=!0,a.questionToken&&a.initializer)return mS(a.name,e.Diagnostics.Parameter_cannot_have_question_mark_and_initializer)}else if(r&&!a.initializer)return mS(a.name,e.Diagnostics.A_required_parameter_cannot_follow_an_optional_parameter)}}(t.parameters)||function(t,r){if(!e.isArrowFunction(t))return!1;var n=t.equalsGreaterThanToken,i=e.getLineAndCharacterOfPosition(r,n.pos).line,a=e.getLineAndCharacterOfPosition(r,n.end).line;return i!==a&&mS(n,e.Diagnostics.Line_terminator_not_permitted_before_arrow)}(t,r)||e.isFunctionLikeDeclaration(t)&&HE(t)}function WE(t,r){return JE(r)||function(t,r){if(r&&0===r.length){var n=e.getSourceFileOfNode(t),i=r.pos-1;return fS(n,i,e.skipTrivia(n.text,r.end)+1-i,e.Diagnostics.Type_argument_list_cannot_be_empty)}return!1}(t,r)}function GE(t){return function(t){if(t)for(var r=0,n=t;r<n.length;r++){var i=n[r];if(224===i.kind)return fS(i,i.pos,0,e.Diagnostics.Argument_expression_expected)}return!1}(t)}function $E(t){var r=t.types;if(JE(r))return!0;if(r&&0===r.length){var n=e.tokenToString(t.token);return fS(t,r.pos,0,e.Diagnostics._0_list_cannot_be_empty,n)}return e.some(r,YE)}function YE(e){return WE(e,e.typeArguments)}function XE(t){if(159!==t.kind)return!1;var r=t;return 218===r.expression.kind&&27===r.expression.operatorToken.kind&&mS(r.expression,e.Diagnostics.A_comma_expression_is_not_allowed_in_a_computed_property_name)}function QE(t){if(t.asteriskToken){if(e.Debug.assert(253===t.kind||209===t.kind||166===t.kind),8388608&t.flags)return mS(t.asteriskToken,e.Diagnostics.Generators_are_not_allowed_in_an_ambient_context);if(!t.body)return mS(t.asteriskToken,e.Diagnostics.An_overload_signature_cannot_be_declared_as_a_generator)}}function ZE(e,t){return!!e&&mS(e,t)}function eS(e,t){return!!e&&mS(e,t)}function tS(t){if(_S(t))return!0;if(241===t.kind&&t.awaitModifier&&!(32768&t.flags)){var r=e.getSourceFileOfNode(t);if(e.isInTopLevelContext(t))dS(r)||(e.isEffectiveExternalModule(r,J)||Qr.add(e.createDiagnosticForNode(t.awaitModifier,e.Diagnostics.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module)),(H!==e.ModuleKind.ESNext&&H!==e.ModuleKind.System||V<4)&&Qr.add(e.createDiagnosticForNode(t.awaitModifier,e.Diagnostics.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher)));else if(!dS(r)){var n=e.createDiagnosticForNode(t.awaitModifier,e.Diagnostics.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),i=e.getContainingFunction(t);if(i&&167!==i.kind){e.Debug.assert(0==(2&e.getFunctionFlags(i)),"Enclosing function should never be an async function.");var a=e.createDiagnosticForNode(i,e.Diagnostics.Did_you_mean_to_mark_this_function_as_async);e.addRelatedInfo(n,a)}return Qr.add(n),!0}return!1}if(252===t.initializer.kind){var o=t.initializer;if(!lS(o)){var s=o.declarations;if(!s.length)return!1;if(s.length>1){n=240===t.kind?e.Diagnostics.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:e.Diagnostics.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return pS(o.declarations[1],n)}var c=s[0];if(c.initializer){var n=240===t.kind?e.Diagnostics.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:e.Diagnostics.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return mS(c.name,n)}if(c.type)return mS(c,n=240===t.kind?e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:e.Diagnostics.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation)}}return!1}function rS(t){if(t.parameters.length===(168===t.kind?1:2))return e.getThisParameter(t)}function nS(t,r){if(function(t){return e.isDynamicName(t)&&!es(t)}(t))return mS(t,r)}function iS(t){if(KE(t))return!0;if(166===t.kind){if(201===t.parent.kind){if(t.modifiers&&(1!==t.modifiers.length||130!==e.first(t.modifiers).kind))return pS(t,e.Diagnostics.Modifiers_cannot_appear_here);if(ZE(t.questionToken,e.Diagnostics.An_object_member_cannot_be_declared_optional))return!0;if(eS(t.exclamationToken,e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(void 0===t.body)return fS(t,t.end-1,1,e.Diagnostics._0_expected,"{")}if(QE(t))return!0}if(e.isClassLike(t.parent)){if(8388608&t.flags)return nS(t.name,e.Diagnostics.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(166===t.kind&&!t.body)return nS(t.name,e.Diagnostics.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(256===t.parent.kind)return nS(t.name,e.Diagnostics.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(178===t.parent.kind)return nS(t.name,e.Diagnostics.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function aS(t){return e.isStringOrNumericLiteralLike(t)||216===t.kind&&40===t.operator&&8===t.operand.kind}function oS(t){var r,n=t.initializer;if(n){var i=!(aS(n)||function(t){if((e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)&&aS(t.argumentExpression))&&e.isEntityNameExpression(t.expression))return!!(1024&$v(t).flags)}(n)||110===n.kind||95===n.kind||(r=n,9===r.kind||216===r.kind&&40===r.operator&&9===r.operand.kind)),a=e.isDeclarationReadonly(t)||e.isVariableDeclaration(t)&&e.isVarConst(t);if(!a||t.type)return mS(n,e.Diagnostics.Initializers_are_not_allowed_in_ambient_contexts);if(i)return mS(n,e.Diagnostics.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference);if(!a||i)return mS(n,e.Diagnostics.Initializers_are_not_allowed_in_ambient_contexts)}}function sS(t){if(78===t.kind){if("__esModule"===e.idText(t))return function(t,r,n,i,a,o){if(!dS(e.getSourceFileOfNode(r)))return dn(t,r,n,i,a,o),!0;return!1}("noEmit",t,e.Diagnostics.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else for(var r=0,n=t.elements;r<n.length;r++){var i=n[r];if(!e.isOmittedExpression(i))return sS(i.name)}return!1}function cS(t){if(78===t.kind){if(119===t.originalKeywordKind)return mS(t,e.Diagnostics.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else for(var r=0,n=t.elements;r<n.length;r++){var i=n[r];e.isOmittedExpression(i)||cS(i.name)}return!1}function lS(t){var r=t.declarations;return!!JE(t.declarations)||!t.declarations.length&&fS(t,r.pos,r.end-r.pos,e.Diagnostics.Variable_declaration_list_cannot_be_empty)}function uS(e){switch(e.kind){case 236:case 237:case 238:case 245:case 239:case 240:case 241:return!1;case 247:return uS(e.parent)}return!0}function dS(e){return e.parseDiagnostics.length>0}function pS(t,r,n,i,a){var o=e.getSourceFileOfNode(t);if(!dS(o)){var s=e.getSpanOfTokenAtPosition(o,t.pos);return Qr.add(e.createFileDiagnostic(o,s.start,s.length,r,n,i,a)),!0}return!1}function fS(t,r,n,i,a,o,s){var c=e.getSourceFileOfNode(t);return!dS(c)&&(Qr.add(e.createFileDiagnostic(c,r,n,i,a,o,s)),!0)}function mS(t,r,n,i,a){return!dS(e.getSourceFileOfNode(t))&&(Qr.add(e.createDiagnosticForNode(t,r,n,i,a)),!0)}function gS(t){return 256!==t.kind&&257!==t.kind&&264!==t.kind&&263!==t.kind&&270!==t.kind&&269!==t.kind&&262!==t.kind&&!e.hasSyntacticModifier(t,515)&&pS(t,e.Diagnostics.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function _S(t){if(8388608&t.flags){if(!Cn(t).hasReportedStatementInAmbientContext&&(e.isFunctionLike(t.parent)||e.isAccessor(t.parent)))return Cn(t).hasReportedStatementInAmbientContext=pS(t,e.Diagnostics.An_implementation_cannot_be_declared_in_ambient_contexts);if(232===t.parent.kind||260===t.parent.kind||300===t.parent.kind){var r=Cn(t.parent);if(!r.hasReportedStatementInAmbientContext)return r.hasReportedStatementInAmbientContext=pS(t,e.Diagnostics.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function hS(t){if(32&t.numericLiteralFlags){var r=void 0;if(V>=1?r=e.Diagnostics.Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:e.isChildOfNodeWithKind(t,192)?r=e.Diagnostics.Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:e.isChildOfNodeWithKind(t,294)&&(r=e.Diagnostics.Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0),r){var n=e.isPrefixUnaryExpression(t.parent)&&40===t.parent.operator,i=(n?"-":"")+"0o"+t.text;return mS(n?t.parent:t,r,i)}}return function(t){if(16&t.numericLiteralFlags||t.text.length<=15||-1!==t.text.indexOf("."))return;var r=+e.getTextOfNode(t);if(r<=Math.pow(2,53)-1&&r+1>r)return;fn(!1,e.createDiagnosticForNode(t,e.Diagnostics.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}(t),!1}function yS(t,r,n,i){if(1048576&r.flags&&2621440&t.flags){var a=Hs(t);if(a){var o=jm(a,r);if(o)return Lp(r,e.map(o,(function(e){return[function(){return _o(e)},e.escapedName]})),n,void 0,i)}}}},function(e){e.JSX="JSX",e.IntrinsicElements="IntrinsicElements",e.ElementClass="ElementClass",e.ElementAttributesPropertyNameContainer="ElementAttributesProperty",e.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",e.Element="Element",e.IntrinsicAttributes="IntrinsicAttributes",e.IntrinsicClassAttributes="IntrinsicClassAttributes",e.LibraryManagedAttributes="LibraryManagedAttributes"}(N||(N={})),e.signatureHasRestParameter=U,e.signatureHasLiteralTypes=q}(d||(d={})),function(e){var t=e.or(e.isTypeNode,e.isTypeParameterDeclaration);function r(t,r,n,i){if(void 0===t||void 0===r)return t;var a,o=r(t);return o===t?t:void 0!==o?(a=e.isArray(o)?(i||c)(o):o,e.Debug.assertNode(a,n),a):void 0}function n(t,r,n,i,a){if(void 0===t||void 0===r)return t;var o,s,c=t.length;(void 0===i||i<0)&&(i=0),(void 0===a||a>c-i)&&(a=c-i);var l=-1,u=-1;(i>0||a<c)&&(o=[],s=t.hasTrailingComma&&i+a===c);for(var d=0;d<a;d++){var p=t[d+i],f=void 0!==p?r(p):void 0;if((void 0!==o||void 0===f||f!==p)&&(void 0===o&&(o=t.slice(0,d),s=t.hasTrailingComma,l=t.pos,u=t.end),f))if(e.isArray(f))for(var m=0,g=f;m<g.length;m++){var _=g[m];e.Debug.assertNode(_,n),o.push(_)}else e.Debug.assertNode(f,n),o.push(f)}if(o){var h=e.factory.createNodeArray(o,s);return e.setTextRangePosEnd(h,l,u),h}return t}function i(t,r,i,a,o,s){return void 0===s&&(s=n),i.startLexicalEnvironment(),t=s(t,r,e.isStatement,a),o&&(t=i.factory.ensureUseStrict(t)),e.factory.mergeLexicalEnvironment(t,i.endLexicalEnvironment())}function a(t,r,i,a){var s;return void 0===a&&(a=n),i.startLexicalEnvironment(),t&&(i.setLexicalEnvironmentFlags(1,!0),s=a(t,r,e.isParameterDeclaration),2&i.getLexicalEnvironmentFlags()&&e.getEmitScriptTarget(i.getCompilerOptions())>=2&&(s=function(t,r){for(var n,i=0;i<t.length;i++){var a=t[i],s=o(a,r);(n||s!==a)&&(n||(n=t.slice(0,i)),n[i]=s)}if(n)return e.setTextRange(r.factory.createNodeArray(n,t.hasTrailingComma),t);return t}(s,i)),i.setLexicalEnvironmentFlags(1,!1)),i.suspendLexicalEnvironment(),s}function o(t,r){return t.dotDotDotToken?t:e.isBindingPattern(t.name)?function(e,t){var r=t.factory;return t.addInitializationStatement(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(e.name,void 0,e.type,e.initializer?r.createConditionalExpression(r.createStrictEquality(r.getGeneratedNameForNode(e),r.createVoidZero()),void 0,e.initializer,void 0,r.getGeneratedNameForNode(e)):r.getGeneratedNameForNode(e))]))),r.updateParameterDeclaration(e,e.decorators,e.modifiers,e.dotDotDotToken,r.getGeneratedNameForNode(e),e.questionToken,e.type,void 0)}(t,r):t.initializer?function(t,r,n,i){var a=i.factory;return i.addInitializationStatement(a.createIfStatement(a.createTypeCheck(a.cloneNode(r),"undefined"),e.setEmitFlags(e.setTextRange(a.createBlock([a.createExpressionStatement(e.setEmitFlags(e.setTextRange(a.createAssignment(e.setEmitFlags(a.cloneNode(r),48),e.setEmitFlags(n,1584|e.getEmitFlags(n))),t),1536))]),t),1953))),a.updateParameterDeclaration(t,t.decorators,t.modifiers,t.dotDotDotToken,t.name,t.questionToken,t.type,void 0)}(t,t.name,t.initializer,r):t}function s(t,n,i,a){void 0===a&&(a=r),i.resumeLexicalEnvironment();var o=a(t,n,e.isConciseBody),s=i.endLexicalEnvironment();if(e.some(s)){if(!o)return i.factory.createBlock(s);var c=i.factory.converters.convertToFunctionBlock(o),l=e.factory.mergeLexicalEnvironment(c.statements,s);return i.factory.updateBlock(c,l)}return o}function c(t){return e.Debug.assert(t.length<=1,"Too many nodes written to output."),e.singleOrUndefined(t)}e.visitNode=r,e.visitNodes=n,e.visitLexicalEnvironment=i,e.visitParameterList=a,e.visitFunctionBody=s,e.visitEachChild=function(o,c,l,u,d,p){if(void 0===u&&(u=n),void 0===p&&(p=r),void 0!==o){var f=o.kind;if(f>0&&f<=157||188===f)return o;var m=l.factory;switch(f){case 78:return m.updateIdentifier(o,u(o.typeArguments,c,t));case 158:return m.updateQualifiedName(o,p(o.left,c,e.isEntityName),p(o.right,c,e.isIdentifier));case 159:return m.updateComputedPropertyName(o,p(o.expression,c,e.isExpression));case 160:return m.updateTypeParameterDeclaration(o,p(o.name,c,e.isIdentifier),p(o.constraint,c,e.isTypeNode),p(o.default,c,e.isTypeNode));case 161:return m.updateParameterDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.dotDotDotToken,d,e.isToken),p(o.name,c,e.isBindingName),p(o.questionToken,d,e.isToken),p(o.type,c,e.isTypeNode),p(o.initializer,c,e.isExpression));case 162:return m.updateDecorator(o,p(o.expression,c,e.isExpression));case 163:return m.updatePropertySignature(o,u(o.modifiers,c,e.isToken),p(o.name,c,e.isPropertyName),p(o.questionToken,d,e.isToken),p(o.type,c,e.isTypeNode));case 164:return m.updatePropertyDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),p(o.questionToken||o.exclamationToken,d,e.isToken),p(o.type,c,e.isTypeNode),p(o.initializer,c,e.isExpression));case 165:return m.updateMethodSignature(o,u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),p(o.questionToken,d,e.isToken),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 166:return m.updateMethodDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.asteriskToken,d,e.isToken),p(o.name,c,e.isPropertyName),p(o.questionToken,d,e.isToken),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 167:return m.updateConstructorDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),a(o.parameters,c,l,u),s(o.body,c,l,p));case 168:return m.updateGetAccessorDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 169:return m.updateSetAccessorDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isPropertyName),a(o.parameters,c,l,u),s(o.body,c,l,p));case 170:return m.updateCallSignature(o,u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 171:return m.updateConstructSignature(o,u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 172:return m.updateIndexSignature(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 173:return m.updateTypePredicateNode(o,p(o.assertsModifier,c),p(o.parameterName,c),p(o.type,c,e.isTypeNode));case 174:return m.updateTypeReferenceNode(o,p(o.typeName,c,e.isEntityName),u(o.typeArguments,c,e.isTypeNode));case 175:return m.updateFunctionTypeNode(o,u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 176:return m.updateConstructorTypeNode(o,u(o.modifiers,c,e.isModifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.parameters,c,e.isParameterDeclaration),p(o.type,c,e.isTypeNode));case 177:return m.updateTypeQueryNode(o,p(o.exprName,c,e.isEntityName));case 178:return m.updateTypeLiteralNode(o,u(o.members,c,e.isTypeElement));case 179:return m.updateArrayTypeNode(o,p(o.elementType,c,e.isTypeNode));case 180:return m.updateTupleTypeNode(o,u(o.elements,c,e.isTypeNode));case 181:return m.updateOptionalTypeNode(o,p(o.type,c,e.isTypeNode));case 182:return m.updateRestTypeNode(o,p(o.type,c,e.isTypeNode));case 183:return m.updateUnionTypeNode(o,u(o.types,c,e.isTypeNode));case 184:return m.updateIntersectionTypeNode(o,u(o.types,c,e.isTypeNode));case 185:return m.updateConditionalTypeNode(o,p(o.checkType,c,e.isTypeNode),p(o.extendsType,c,e.isTypeNode),p(o.trueType,c,e.isTypeNode),p(o.falseType,c,e.isTypeNode));case 186:return m.updateInferTypeNode(o,p(o.typeParameter,c,e.isTypeParameterDeclaration));case 196:return m.updateImportTypeNode(o,p(o.argument,c,e.isTypeNode),p(o.qualifier,c,e.isEntityName),n(o.typeArguments,c,e.isTypeNode),o.isTypeOf);case 193:return m.updateNamedTupleMember(o,r(o.dotDotDotToken,c,e.isToken),r(o.name,c,e.isIdentifier),r(o.questionToken,c,e.isToken),r(o.type,c,e.isTypeNode));case 187:return m.updateParenthesizedType(o,p(o.type,c,e.isTypeNode));case 189:return m.updateTypeOperatorNode(o,p(o.type,c,e.isTypeNode));case 190:return m.updateIndexedAccessTypeNode(o,p(o.objectType,c,e.isTypeNode),p(o.indexType,c,e.isTypeNode));case 191:return m.updateMappedTypeNode(o,p(o.readonlyToken,d,e.isToken),p(o.typeParameter,c,e.isTypeParameterDeclaration),p(o.nameType,c,e.isTypeNode),p(o.questionToken,d,e.isToken),p(o.type,c,e.isTypeNode));case 192:return m.updateLiteralTypeNode(o,p(o.literal,c,e.isExpression));case 194:return m.updateTemplateLiteralType(o,p(o.head,c,e.isTemplateHead),u(o.templateSpans,c,e.isTemplateLiteralTypeSpan));case 195:return m.updateTemplateLiteralTypeSpan(o,p(o.type,c,e.isTypeNode),p(o.literal,c,e.isTemplateMiddleOrTemplateTail));case 197:return m.updateObjectBindingPattern(o,u(o.elements,c,e.isBindingElement));case 198:return m.updateArrayBindingPattern(o,u(o.elements,c,e.isArrayBindingElement));case 199:return m.updateBindingElement(o,p(o.dotDotDotToken,d,e.isToken),p(o.propertyName,c,e.isPropertyName),p(o.name,c,e.isBindingName),p(o.initializer,c,e.isExpression));case 200:return m.updateArrayLiteralExpression(o,u(o.elements,c,e.isExpression));case 201:return m.updateObjectLiteralExpression(o,u(o.properties,c,e.isObjectLiteralElementLike));case 202:return 32&o.flags?m.updatePropertyAccessChain(o,p(o.expression,c,e.isExpression),p(o.questionDotToken,d,e.isToken),p(o.name,c,e.isIdentifier)):m.updatePropertyAccessExpression(o,p(o.expression,c,e.isExpression),p(o.name,c,e.isIdentifierOrPrivateIdentifier));case 203:return 32&o.flags?m.updateElementAccessChain(o,p(o.expression,c,e.isExpression),p(o.questionDotToken,d,e.isToken),p(o.argumentExpression,c,e.isExpression)):m.updateElementAccessExpression(o,p(o.expression,c,e.isExpression),p(o.argumentExpression,c,e.isExpression));case 204:return 32&o.flags?m.updateCallChain(o,p(o.expression,c,e.isExpression),p(o.questionDotToken,d,e.isToken),u(o.typeArguments,c,e.isTypeNode),u(o.arguments,c,e.isExpression)):m.updateCallExpression(o,p(o.expression,c,e.isExpression),u(o.typeArguments,c,e.isTypeNode),u(o.arguments,c,e.isExpression));case 205:return m.updateNewExpression(o,p(o.expression,c,e.isExpression),u(o.typeArguments,c,e.isTypeNode),u(o.arguments,c,e.isExpression));case 206:return m.updateTaggedTemplateExpression(o,p(o.tag,c,e.isExpression),n(o.typeArguments,c,e.isExpression),p(o.template,c,e.isTemplateLiteral));case 207:return m.updateTypeAssertion(o,p(o.type,c,e.isTypeNode),p(o.expression,c,e.isExpression));case 208:return m.updateParenthesizedExpression(o,p(o.expression,c,e.isExpression));case 209:return m.updateFunctionExpression(o,u(o.modifiers,c,e.isModifier),p(o.asteriskToken,d,e.isToken),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 210:return m.updateArrowFunction(o,u(o.modifiers,c,e.isModifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),p(o.equalsGreaterThanToken,d,e.isToken),s(o.body,c,l,p));case 212:return m.updateDeleteExpression(o,p(o.expression,c,e.isExpression));case 213:return m.updateTypeOfExpression(o,p(o.expression,c,e.isExpression));case 214:return m.updateVoidExpression(o,p(o.expression,c,e.isExpression));case 215:return m.updateAwaitExpression(o,p(o.expression,c,e.isExpression));case 216:return m.updatePrefixUnaryExpression(o,p(o.operand,c,e.isExpression));case 217:return m.updatePostfixUnaryExpression(o,p(o.operand,c,e.isExpression));case 218:return m.updateBinaryExpression(o,p(o.left,c,e.isExpression),p(o.operatorToken,d,e.isToken),p(o.right,c,e.isExpression));case 219:return m.updateConditionalExpression(o,p(o.condition,c,e.isExpression),p(o.questionToken,d,e.isToken),p(o.whenTrue,c,e.isExpression),p(o.colonToken,d,e.isToken),p(o.whenFalse,c,e.isExpression));case 220:return m.updateTemplateExpression(o,p(o.head,c,e.isTemplateHead),u(o.templateSpans,c,e.isTemplateSpan));case 221:return m.updateYieldExpression(o,p(o.asteriskToken,d,e.isToken),p(o.expression,c,e.isExpression));case 222:return m.updateSpreadElement(o,p(o.expression,c,e.isExpression));case 223:return m.updateClassExpression(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isClassElement));case 225:return m.updateExpressionWithTypeArguments(o,p(o.expression,c,e.isExpression),u(o.typeArguments,c,e.isTypeNode));case 226:return m.updateAsExpression(o,p(o.expression,c,e.isExpression),p(o.type,c,e.isTypeNode));case 227:return 32&o.flags?m.updateNonNullChain(o,p(o.expression,c,e.isExpression)):m.updateNonNullExpression(o,p(o.expression,c,e.isExpression));case 228:return m.updateMetaProperty(o,p(o.name,c,e.isIdentifier));case 230:return m.updateTemplateSpan(o,p(o.expression,c,e.isExpression),p(o.literal,c,e.isTemplateMiddleOrTemplateTail));case 232:return m.updateBlock(o,u(o.statements,c,e.isStatement));case 234:return m.updateVariableStatement(o,u(o.modifiers,c,e.isModifier),p(o.declarationList,c,e.isVariableDeclarationList));case 235:return m.updateExpressionStatement(o,p(o.expression,c,e.isExpression));case 236:return m.updateIfStatement(o,p(o.expression,c,e.isExpression),p(o.thenStatement,c,e.isStatement,m.liftToBlock),p(o.elseStatement,c,e.isStatement,m.liftToBlock));case 237:return m.updateDoStatement(o,p(o.statement,c,e.isStatement,m.liftToBlock),p(o.expression,c,e.isExpression));case 238:return m.updateWhileStatement(o,p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 239:return m.updateForStatement(o,p(o.initializer,c,e.isForInitializer),p(o.condition,c,e.isExpression),p(o.incrementor,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 240:return m.updateForInStatement(o,p(o.initializer,c,e.isForInitializer),p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 241:return m.updateForOfStatement(o,p(o.awaitModifier,d,e.isToken),p(o.initializer,c,e.isForInitializer),p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 242:return m.updateContinueStatement(o,p(o.label,c,e.isIdentifier));case 243:return m.updateBreakStatement(o,p(o.label,c,e.isIdentifier));case 244:return m.updateReturnStatement(o,p(o.expression,c,e.isExpression));case 245:return m.updateWithStatement(o,p(o.expression,c,e.isExpression),p(o.statement,c,e.isStatement,m.liftToBlock));case 246:return m.updateSwitchStatement(o,p(o.expression,c,e.isExpression),p(o.caseBlock,c,e.isCaseBlock));case 247:return m.updateLabeledStatement(o,p(o.label,c,e.isIdentifier),p(o.statement,c,e.isStatement,m.liftToBlock));case 248:return m.updateThrowStatement(o,p(o.expression,c,e.isExpression));case 249:return m.updateTryStatement(o,p(o.tryBlock,c,e.isBlock),p(o.catchClause,c,e.isCatchClause),p(o.finallyBlock,c,e.isBlock));case 251:return m.updateVariableDeclaration(o,p(o.name,c,e.isBindingName),p(o.exclamationToken,d,e.isToken),p(o.type,c,e.isTypeNode),p(o.initializer,c,e.isExpression));case 252:return m.updateVariableDeclarationList(o,u(o.declarations,c,e.isVariableDeclaration));case 253:return m.updateFunctionDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.asteriskToken,d,e.isToken),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),a(o.parameters,c,l,u),p(o.type,c,e.isTypeNode),s(o.body,c,l,p));case 254:return m.updateClassDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isClassElement));case 255:return m.updateStructDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isClassElement));case 256:return m.updateInterfaceDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),u(o.heritageClauses,c,e.isHeritageClause),u(o.members,c,e.isTypeElement));case 257:return m.updateTypeAliasDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.typeParameters,c,e.isTypeParameterDeclaration),p(o.type,c,e.isTypeNode));case 258:return m.updateEnumDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),u(o.members,c,e.isEnumMember));case 259:return m.updateModuleDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.name,c,e.isIdentifier),p(o.body,c,e.isModuleBody));case 260:return m.updateModuleBlock(o,u(o.statements,c,e.isStatement));case 261:return m.updateCaseBlock(o,u(o.clauses,c,e.isCaseOrDefaultClause));case 262:return m.updateNamespaceExportDeclaration(o,p(o.name,c,e.isIdentifier));case 263:return m.updateImportEqualsDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),o.isTypeOnly,p(o.name,c,e.isIdentifier),p(o.moduleReference,c,e.isModuleReference));case 264:return m.updateImportDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.importClause,c,e.isImportClause),p(o.moduleSpecifier,c,e.isExpression));case 265:return m.updateImportClause(o,o.isTypeOnly,p(o.name,c,e.isIdentifier),p(o.namedBindings,c,e.isNamedImportBindings));case 266:return m.updateNamespaceImport(o,p(o.name,c,e.isIdentifier));case 272:return m.updateNamespaceExport(o,p(o.name,c,e.isIdentifier));case 267:return m.updateNamedImports(o,u(o.elements,c,e.isImportSpecifier));case 268:return m.updateImportSpecifier(o,p(o.propertyName,c,e.isIdentifier),p(o.name,c,e.isIdentifier));case 269:return m.updateExportAssignment(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),p(o.expression,c,e.isExpression));case 270:return m.updateExportDeclaration(o,u(o.decorators,c,e.isDecorator),u(o.modifiers,c,e.isModifier),o.isTypeOnly,p(o.exportClause,c,e.isNamedExportBindings),p(o.moduleSpecifier,c,e.isExpression));case 271:return m.updateNamedExports(o,u(o.elements,c,e.isExportSpecifier));case 273:return m.updateExportSpecifier(o,p(o.propertyName,c,e.isIdentifier),p(o.name,c,e.isIdentifier));case 275:return m.updateExternalModuleReference(o,p(o.expression,c,e.isExpression));case 276:return m.updateJsxElement(o,p(o.openingElement,c,e.isJsxOpeningElement),u(o.children,c,e.isJsxChild),p(o.closingElement,c,e.isJsxClosingElement));case 277:return m.updateJsxSelfClosingElement(o,p(o.tagName,c,e.isJsxTagNameExpression),u(o.typeArguments,c,e.isTypeNode),p(o.attributes,c,e.isJsxAttributes));case 278:return m.updateJsxOpeningElement(o,p(o.tagName,c,e.isJsxTagNameExpression),u(o.typeArguments,c,e.isTypeNode),p(o.attributes,c,e.isJsxAttributes));case 279:return m.updateJsxClosingElement(o,p(o.tagName,c,e.isJsxTagNameExpression));case 280:return m.updateJsxFragment(o,p(o.openingFragment,c,e.isJsxOpeningFragment),u(o.children,c,e.isJsxChild),p(o.closingFragment,c,e.isJsxClosingFragment));case 283:return m.updateJsxAttribute(o,p(o.name,c,e.isIdentifier),p(o.initializer,c,e.isStringLiteralOrJsxExpression));case 284:return m.updateJsxAttributes(o,u(o.properties,c,e.isJsxAttributeLike));case 285:return m.updateJsxSpreadAttribute(o,p(o.expression,c,e.isExpression));case 286:return m.updateJsxExpression(o,p(o.expression,c,e.isExpression));case 287:return m.updateCaseClause(o,p(o.expression,c,e.isExpression),u(o.statements,c,e.isStatement));case 288:return m.updateDefaultClause(o,u(o.statements,c,e.isStatement));case 289:return m.updateHeritageClause(o,u(o.types,c,e.isExpressionWithTypeArguments));case 290:return m.updateCatchClause(o,p(o.variableDeclaration,c,e.isVariableDeclaration),p(o.block,c,e.isBlock));case 291:return m.updatePropertyAssignment(o,p(o.name,c,e.isPropertyName),p(o.initializer,c,e.isExpression));case 292:return m.updateShorthandPropertyAssignment(o,p(o.name,c,e.isIdentifier),p(o.objectAssignmentInitializer,c,e.isExpression));case 293:return m.updateSpreadAssignment(o,p(o.expression,c,e.isExpression));case 294:return m.updateEnumMember(o,p(o.name,c,e.isPropertyName),p(o.initializer,c,e.isExpression));case 300:return m.updateSourceFile(o,i(o.statements,c,l));case 339:return m.updatePartiallyEmittedExpression(o,p(o.expression,c,e.isExpression));case 340:return m.updateCommaListExpression(o,u(o.elements,c,e.isExpression));default:return o}}}}(d||(d={})),function(e){e.createSourceMapGenerator=function(t,r,n,i,o){var c,l,u=o.extendedDiagnostics?e.performance.createTimer("Source Map","beforeSourcemap","afterSourcemap"):e.performance.nullTimer,d=u.enter,p=u.exit,f=[],m=[],g=new e.Map,_=[],h="",y=0,v=0,b=0,k=0,x=0,E=0,S=!1,D=0,w=0,T=0,C=0,A=0,N=0,P=!1,I=!1,F=!1;return{getSources:function(){return f},addSource:O,setSourceContent:R,addName:M,addMapping:L,appendSourceMap:function(t,r,n,i,o,s){e.Debug.assert(t>=D,"generatedLine cannot backtrack"),e.Debug.assert(r>=0,"generatedCharacter cannot be negative"),d();for(var c,l=[],u=a(n.mappings),f=u.next();!f.done;f=u.next()){var m=f.value;if(s&&(m.generatedLine>s.line||m.generatedLine===s.line&&m.generatedCharacter>s.character))break;if(!o||!(m.generatedLine<o.line||o.line===m.generatedLine&&m.generatedCharacter<o.character)){var g=void 0,_=void 0,h=void 0,y=void 0;if(void 0!==m.sourceIndex){if(void 0===(g=l[m.sourceIndex])){var v=n.sources[m.sourceIndex],b=n.sourceRoot?e.combinePaths(n.sourceRoot,v):v,k=e.combinePaths(e.getDirectoryPath(i),b);l[m.sourceIndex]=g=O(k),n.sourcesContent&&"string"==typeof n.sourcesContent[m.sourceIndex]&&R(g,n.sourcesContent[m.sourceIndex])}_=m.sourceLine,h=m.sourceCharacter,n.names&&void 0!==m.nameIndex&&(c||(c=[]),void 0===(y=c[m.nameIndex])&&(c[m.nameIndex]=y=M(n.names[m.nameIndex])))}var x=m.generatedLine-(o?o.line:0),E=x+t,S=o&&o.line===m.generatedLine?m.generatedCharacter-o.character:m.generatedCharacter;L(E,0===x?S+r:S,g,_,h,y)}}p()},toJSON:B,toString:function(){return JSON.stringify(B())}};function O(r){d();var n=e.getRelativePathToDirectoryOrUrl(i,r,t.getCurrentDirectory(),t.getCanonicalFileName,!0),a=g.get(n);return void 0===a&&(a=m.length,m.push(n),f.push(r),g.set(n,a)),p(),a}function R(e,t){if(d(),null!==t){for(c||(c=[]);c.length<e;)c.push(null);c[e]=t}p()}function M(t){d(),l||(l=new e.Map);var r=l.get(t);return void 0===r&&(r=_.length,_.push(t),l.set(t,r)),p(),r}function L(t,r,n,i,a,o){e.Debug.assert(t>=D,"generatedLine cannot backtrack"),e.Debug.assert(r>=0,"generatedCharacter cannot be negative"),e.Debug.assert(void 0===n||n>=0,"sourceIndex cannot be negative"),e.Debug.assert(void 0===i||i>=0,"sourceLine cannot be negative"),e.Debug.assert(void 0===a||a>=0,"sourceCharacter cannot be negative"),d(),(function(e,t){return!P||D!==e||w!==t}(t,r)||function(e,t,r){return void 0!==e&&void 0!==t&&void 0!==r&&T===e&&(C>t||C===t&&A>r)}(n,i,a))&&(j(),D=t,w=r,I=!1,F=!1,P=!0),void 0!==n&&void 0!==i&&void 0!==a&&(T=n,C=i,A=a,I=!0,void 0!==o&&(N=o,F=!0)),p()}function j(){if(P&&(!S||y!==D||v!==w||b!==T||k!==C||x!==A||E!==N)){if(d(),y<D)do{h+=";",y++,v=0}while(y<D);else e.Debug.assertEqual(y,D,"generatedLine cannot backtrack"),S&&(h+=",");h+=s(w-v),v=w,I&&(h+=s(T-b),b=T,h+=s(C-k),k=C,h+=s(A-x),x=A,F&&(h+=s(N-E),E=N)),S=!0,p()}}function B(){return j(),{version:3,file:r,sourceRoot:n,sources:m,names:_,mappings:h,sourcesContent:c}}};var t=/^\/\/[@#] source[M]appingURL=(.+)\s*$/,r=/^\s*(\/\/[@#] .*)?$/;function n(e){return"string"==typeof e||null===e}function i(t){return null!==t&&"object"==typeof t&&3===t.version&&"string"==typeof t.file&&"string"==typeof t.mappings&&e.isArray(t.sources)&&e.every(t.sources,e.isString)&&(void 0===t.sourceRoot||null===t.sourceRoot||"string"==typeof t.sourceRoot)&&(void 0===t.sourcesContent||null===t.sourcesContent||e.isArray(t.sourcesContent)&&e.every(t.sourcesContent,n))&&(void 0===t.names||null===t.names||e.isArray(t.names)&&e.every(t.names,e.isString))}function a(e){var t,r=!1,n=0,i=0,a=0,o=0,s=0,c=0,l=0;return{get pos(){return n},get error(){return t},get state(){return u(!0,!0)},next:function(){for(;!r&&n<e.length;){var t=e.charCodeAt(n);if(59!==t){if(44!==t){var p=!1,h=!1;if(a+=_(),m())return d();if(a<0)return f("Invalid generatedCharacter found");if(!g()){if(p=!0,o+=_(),m())return d();if(o<0)return f("Invalid sourceIndex found");if(g())return f("Unsupported Format: No entries after sourceIndex");if(s+=_(),m())return d();if(s<0)return f("Invalid sourceLine found");if(g())return f("Unsupported Format: No entries after sourceLine");if(c+=_(),m())return d();if(c<0)return f("Invalid sourceCharacter found");if(!g()){if(h=!0,l+=_(),m())return d();if(l<0)return f("Invalid nameIndex found");if(!g())return f("Unsupported Error Format: Entries after nameIndex")}}return{value:u(p,h),done:r}}n++}else i++,a=0,n++}return d()}};function u(e,t){return{generatedLine:i,generatedCharacter:a,sourceIndex:e?o:void 0,sourceLine:e?s:void 0,sourceCharacter:e?c:void 0,nameIndex:t?l:void 0}}function d(){return r=!0,{value:void 0,done:!0}}function p(e){void 0===t&&(t=e)}function f(e){return p(e),d()}function m(){return void 0!==t}function g(){return n===e.length||44===e.charCodeAt(n)||59===e.charCodeAt(n)}function _(){for(var t,r=!0,i=0,a=0;r;n++){if(n>=e.length)return p("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;var o=(t=e.charCodeAt(n))>=65&&t<=90?t-65:t>=97&&t<=122?t-97+26:t>=48&&t<=57?t-48+52:43===t?62:47===t?63:-1;if(-1===o)return p("Invalid character in VLQ"),-1;r=0!=(32&o),a|=(31&o)<<i,i+=5}return 0==(1&a)?a>>=1:a=-(a>>=1),a}}function o(e){return void 0!==e.sourceIndex&&void 0!==e.sourceLine&&void 0!==e.sourceCharacter}function s(t){t<0?t=1+(-t<<1):t<<=1;var r,n="";do{var i=31&t;(t>>=5)>0&&(i|=32),n+=String.fromCharCode((r=i)>=0&&r<26?65+r:r>=26&&r<52?97+r-26:r>=52&&r<62?48+r-52:62===r?43:63===r?47:e.Debug.fail(r+": not a base64 value"))}while(t>0);return n}function c(e){return void 0!==e.sourceIndex&&void 0!==e.sourcePosition}function l(e,t){return e.generatedPosition===t.generatedPosition&&e.sourceIndex===t.sourceIndex&&e.sourcePosition===t.sourcePosition}function u(t,r){return e.Debug.assert(t.sourceIndex===r.sourceIndex),e.compareValues(t.sourcePosition,r.sourcePosition)}function d(t,r){return e.compareValues(t.generatedPosition,r.generatedPosition)}function p(e){return e.sourcePosition}function f(e){return e.generatedPosition}e.getLineInfo=function(e,t){return{getLineCount:function(){return t.length},getLineText:function(r){return e.substring(t[r],t[r+1])}}},e.tryGetSourceMappingURL=function(e){for(var n=e.getLineCount()-1;n>=0;n--){var i=e.getLineText(n),a=t.exec(i);if(a)return a[1];if(!i.match(r))break}},e.isRawSourceMap=i,e.tryParseRawSourceMap=function(e){try{var t=JSON.parse(e);if(i(t))return t}catch(e){}},e.decodeMappings=a,e.sameMapping=function(e,t){return e===t||e.generatedLine===t.generatedLine&&e.generatedCharacter===t.generatedCharacter&&e.sourceIndex===t.sourceIndex&&e.sourceLine===t.sourceLine&&e.sourceCharacter===t.sourceCharacter&&e.nameIndex===t.nameIndex},e.isSourceMapping=o,e.createDocumentPositionMapper=function(t,r,n){var i,s,m,g=e.getDirectoryPath(n),_=r.sourceRoot?e.getNormalizedAbsolutePath(r.sourceRoot,g):g,h=e.getNormalizedAbsolutePath(r.file,g),y=t.getSourceFileLike(h),v=r.sources.map((function(t){return e.getNormalizedAbsolutePath(t,_)})),b=new e.Map(v.map((function(e,r){return[t.getCanonicalFileName(e),r]})));return{getSourcePosition:function(t){var r=S();if(!e.some(r))return t;var n=e.binarySearchKey(r,t.pos,f,e.compareValues);n<0&&(n=~n);var i=r[n];if(void 0===i||!c(i))return t;return{fileName:v[i.sourceIndex],pos:i.sourcePosition}},getGeneratedPosition:function(r){var n=b.get(t.getCanonicalFileName(r.fileName));if(void 0===n)return r;var i=E(n);if(!e.some(i))return r;var a=e.binarySearchKey(i,r.pos,p,e.compareValues);a<0&&(a=~a);var o=i[a];if(void 0===o||o.sourceIndex!==n)return r;return{fileName:h,pos:o.generatedPosition}}};function k(n){var i,a,s=void 0!==y?e.getPositionOfLineAndCharacter(y,n.generatedLine,n.generatedCharacter,!0):-1;if(o(n)){var c=t.getSourceFileLike(v[n.sourceIndex]);i=r.sources[n.sourceIndex],a=void 0!==c?e.getPositionOfLineAndCharacter(c,n.sourceLine,n.sourceCharacter,!0):-1}return{generatedPosition:s,source:i,sourceIndex:n.sourceIndex,sourcePosition:a,nameIndex:n.nameIndex}}function x(){if(void 0===i){var n=a(r.mappings),o=e.arrayFrom(n,k);void 0!==n.error?(t.log&&t.log("Encountered error while decoding sourcemap: "+n.error),i=e.emptyArray):i=o}return i}function E(t){if(void 0===m){for(var r=[],n=0,i=x();n<i.length;n++){var a=i[n];if(c(a)){var o=r[a.sourceIndex];o||(r[a.sourceIndex]=o=[]),o.push(a)}}m=r.map((function(t){return e.sortAndDeduplicate(t,u,l)}))}return m[t]}function S(){if(void 0===s){for(var t=[],r=0,n=x();r<n.length;r++){var i=n[r];t.push(i)}s=e.sortAndDeduplicate(t,d,l)}return s}},e.identitySourceMapConsumer={getSourcePosition:e.identity,getGeneratedPosition:e.identity}}(d||(d={})),function(e){function t(t){return(t=e.getOriginalNode(t))?e.getNodeId(t):0}function r(e){return void 0!==e.propertyName&&"default"===e.propertyName.escapedText}function n(t){if(e.getNamespaceDeclarationNode(t))return!0;var n=t.importClause&&t.importClause.namedBindings;if(!n)return!1;if(!e.isNamedImports(n))return!1;for(var i=0,a=0,o=n.elements;a<o.length;a++){r(o[a])&&i++}return i>0&&i!==n.elements.length||!!(n.elements.length-i)&&e.isDefaultImport(t)}function i(t){return!n(t)&&(e.isDefaultImport(t)||!!t.importClause&&e.isNamedImports(t.importClause.namedBindings)&&function(t){return!!t&&!!e.isNamedImports(t)&&e.some(t.elements,r)}(t.importClause.namedBindings))}function a(t,r,n){if(e.isBindingPattern(t.name))for(var i=0,o=t.name.elements;i<o.length;i++){var s=o[i];e.isOmittedExpression(s)||(n=a(s,r,n))}else if(!e.isGeneratedIdentifier(t.name)){var c=e.idText(t.name);r.get(c)||(r.set(c,!0),n=e.append(n,t.name))}return n}function o(e,t,r){var n=e[t];return n?n.push(r):e[t]=n=[r],n}function s(t){return e.isStringLiteralLike(t)||8===t.kind||e.isKeyword(t.kind)||e.isIdentifier(t)}e.getOriginalNodeId=t,e.chainBundle=function(t,r){return function(n){return 300===n.kind?r(n):function(n){return t.factory.createBundle(e.map(n.sourceFiles,r),n.prepends)}(n)}},e.getExportNeedsImportStarHelper=function(t){return!!e.getNamespaceDeclarationNode(t)},e.getImportNeedsImportStarHelper=n,e.getImportNeedsImportDefaultHelper=i,e.collectExternalModuleInfo=function(r,s,c,l){for(var u,d,p=[],f=e.createMultiMap(),m=[],g=new e.Map,_=!1,h=!1,y=!1,v=!1,b=0,k=s.statements;b<k.length;b++){var x=k[b];switch(x.kind){case 264:p.push(x),!y&&n(x)&&(y=!0),!v&&i(x)&&(v=!0);break;case 263:275===x.moduleReference.kind&&p.push(x);break;case 270:if(x.moduleSpecifier)if(x.exportClause)if(p.push(x),e.isNamedExports(x.exportClause))C(x);else{var E=x.exportClause.name;g.get(e.idText(E))||(o(m,t(x),E),g.set(e.idText(E),!0),u=e.append(u,E)),y=!0}else p.push(x),h=!0;else C(x);break;case 269:x.isExportEquals&&!d&&(d=x);break;case 234:if(e.hasSyntacticModifier(x,1))for(var S=0,D=x.declarationList.declarations;S<D.length;S++){var w=D[S];u=a(w,g,u)}break;case 253:if(e.hasSyntacticModifier(x,1))if(e.hasSyntacticModifier(x,512))_||(o(m,t(x),r.factory.getDeclarationName(x)),_=!0);else{E=x.name;g.get(e.idText(E))||(o(m,t(x),E),g.set(e.idText(E),!0),u=e.append(u,E))}break;case 254:if(e.hasSyntacticModifier(x,1))if(e.hasSyntacticModifier(x,512))_||(o(m,t(x),r.factory.getDeclarationName(x)),_=!0);else(E=x.name)&&!g.get(e.idText(E))&&(o(m,t(x),E),g.set(e.idText(E),!0),u=e.append(u,E))}}var T=e.createExternalHelpersImportDeclarationIfNeeded(r.factory,r.getEmitHelperFactory(),s,l,h,y,v);return T&&p.unshift(T),{externalImports:p,exportSpecifiers:f,exportEquals:d,hasExportStarsToExportValues:h,exportedBindings:m,exportedNames:u,externalHelpersImportDeclaration:T};function C(r){for(var n=0,i=e.cast(r.exportClause,e.isNamedExports).elements;n<i.length;n++){var a=i[n];if(!g.get(e.idText(a.name))){var s=a.propertyName||a.name;r.moduleSpecifier||f.add(e.idText(s),a);var l=c.getReferencedImportDeclaration(s)||c.getReferencedValueDeclaration(s);l&&o(m,t(l),a.name),g.set(e.idText(a.name),!0),u=e.append(u,a.name)}}}},e.isSimpleCopiableExpression=s,e.isSimpleInlineableExpression=function(t){return!e.isIdentifier(t)&&s(t)||e.isWellKnownSymbolSyntactically(t)},e.isCompoundAssignment=function(e){return e>=63&&e<=77},e.getNonAssignmentOperatorForCompoundAssignment=function(e){switch(e){case 63:return 39;case 64:return 40;case 65:return 41;case 66:return 42;case 67:return 43;case 68:return 44;case 69:return 47;case 70:return 48;case 71:return 49;case 72:return 50;case 73:return 51;case 77:return 52;case 74:return 56;case 75:return 55;case 76:return 60}},e.addPrologueDirectivesAndInitialSuperCall=function(t,r,n,i){if(r.body){var a=r.body.statements,o=t.copyPrologue(a,n,!1,i);if(o===a.length)return o;var s=e.findIndex(a,(function(t){return e.isExpressionStatement(t)&&e.isSuperCall(t.expression)}),o);if(s>-1){for(var c=o;c<=s;c++)n.push(e.visitNode(a[c],i,e.isStatement));return s+1}return o}return 0},e.getProperties=function(t,r,n){return e.filter(t.members,(function(t){return function(t,r,n){return e.isPropertyDeclaration(t)&&(!!t.initializer||!r)&&e.hasStaticModifier(t)===n}(t,r,n)}))},e.isInitializedProperty=function(e){return 164===e.kind&&void 0!==e.initializer}}(d||(d={})),function(e){function t(r,n){var i=e.getTargetOfBindingOrAssignmentElement(r);return e.isBindingOrAssignmentPattern(i)?function(r,n){for(var i=e.getElementsOfBindingOrAssignmentPattern(r),a=0,o=i;a<o.length;a++){if(t(o[a],n))return!0}return!1}(i,n):!!e.isIdentifier(i)&&i.escapedText===n}function r(t){var n=e.tryGetPropertyNameOfBindingOrAssignmentElement(t);if(n&&e.isComputedPropertyName(n)&&!e.isLiteralExpression(n.expression))return!0;var i,a=e.getTargetOfBindingOrAssignmentElement(t);return!!a&&e.isBindingOrAssignmentPattern(a)&&(i=a,!!e.forEach(e.getElementsOfBindingOrAssignmentPattern(i),r))}function n(t,r,s,c,l){var u=e.getTargetOfBindingOrAssignmentElement(r);if(!l){var d=e.visitNode(e.getInitializerOfBindingOrAssignmentElement(r),t.visitor,e.isExpression);d?s?(s=function(e,t,r,n){return t=o(e,t,!0,n),e.context.factory.createConditionalExpression(e.context.factory.createTypeCheck(t,"undefined"),void 0,r,void 0,t)}(t,s,d,c),!e.isSimpleInlineableExpression(d)&&e.isBindingOrAssignmentPattern(u)&&(s=o(t,s,!0,c))):s=d:s||(s=t.context.factory.createVoidZero())}e.isObjectBindingOrAssignmentPattern(u)?function(t,r,i,s,c){var l,u,d=e.getElementsOfBindingOrAssignmentPattern(i),p=d.length;if(1!==p){s=o(t,s,!e.isDeclarationBindingElement(r)||0!==p,c)}for(var f=0;f<p;f++){var m=d[f];if(e.getRestIndicatorOfBindingOrAssignmentElement(m)){if(f===p-1){l&&(t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(l),s,c,i),l=void 0);_=t.context.getEmitHelperFactory().createRestHelper(s,d,u,i);n(t,m,_,m)}}else{var g=e.getPropertyNameOfBindingOrAssignmentElement(m);if(!(t.level>=1)||24576&m.transformFlags||24576&e.getTargetOfBindingOrAssignmentElement(m).transformFlags||e.isComputedPropertyName(g)){l&&(t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(l),s,c,i),l=void 0);var _=a(t,s,g);e.isComputedPropertyName(g)&&(u=e.append(u,_.argumentExpression)),n(t,m,_,m)}else l=e.append(l,e.visitNode(m,t.visitor))}}l&&t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(l),s,c,i)}(t,r,u,s,c):e.isArrayBindingOrAssignmentPattern(u)?function(t,r,a,s,c){var l,u,d=e.getElementsOfBindingOrAssignmentPattern(a),p=d.length;if(t.level<1&&t.downlevelIteration)s=o(t,e.setTextRange(t.context.getEmitHelperFactory().createReadHelper(s,p>0&&e.getRestIndicatorOfBindingOrAssignmentElement(d[p-1])?void 0:p),c),!1,c);else if(1!==p&&(t.level<1||0===p)||e.every(d,e.isOmittedExpression)){s=o(t,s,!e.isDeclarationBindingElement(r)||0!==p,c)}for(var f=0;f<p;f++){var m=d[f];if(t.level>=1)if(16384&m.transformFlags||t.hasTransformedPriorElement&&!i(m)){t.hasTransformedPriorElement=!0;var g=t.context.factory.createTempVariable(void 0);t.hoistTempVariables&&t.context.hoistVariableDeclaration(g),u=e.append(u,[g,m]),l=e.append(l,t.createArrayBindingOrAssignmentElement(g))}else l=e.append(l,m);else{if(e.isOmittedExpression(m))continue;if(e.getRestIndicatorOfBindingOrAssignmentElement(m)){if(f===p-1){_=t.context.factory.createArraySliceCall(s,f);n(t,m,_,m)}}else{var _=t.context.factory.createElementAccessExpression(s,f);n(t,m,_,m)}}}l&&t.emitBindingOrAssignment(t.createArrayBindingOrAssignmentPattern(l),s,c,a);if(u)for(var h=0,y=u;h<y.length;h++){var v=y[h],b=v[0];n(t,m=v[1],b,m)}}(t,r,u,s,c):t.emitBindingOrAssignment(u,s,c,r)}function i(t){var r=e.getTargetOfBindingOrAssignmentElement(t);if(!r||e.isOmittedExpression(r))return!0;var n=e.tryGetPropertyNameOfBindingOrAssignmentElement(t);if(n&&!e.isPropertyNameLiteral(n))return!1;var a=e.getInitializerOfBindingOrAssignmentElement(t);return!(a&&!e.isSimpleInlineableExpression(a))&&(e.isBindingOrAssignmentPattern(r)?e.every(e.getElementsOfBindingOrAssignmentPattern(r),i):e.isIdentifier(r))}function a(t,r,n){if(e.isComputedPropertyName(n)){var i=o(t,e.visitNode(n.expression,t.visitor),!1,n);return t.context.factory.createElementAccessExpression(r,i)}if(e.isStringOrNumericLiteralLike(n)){i=e.factory.cloneNode(n);return t.context.factory.createElementAccessExpression(r,i)}var a=t.context.factory.createIdentifier(e.idText(n));return t.context.factory.createPropertyAccessExpression(r,a)}function o(t,r,n,i){if(e.isIdentifier(r)&&n)return r;var a=t.context.factory.createTempVariable(void 0);return t.hoistTempVariables?(t.context.hoistVariableDeclaration(a),t.emitExpression(e.setTextRange(t.context.factory.createAssignment(a,r),i))):t.emitBindingOrAssignment(a,r,i,void 0),a}function s(e){return e}!function(e){e[e.All=0]="All",e[e.ObjectRest=1]="ObjectRest"}(e.FlattenLevel||(e.FlattenLevel={})),e.flattenDestructuringAssignment=function(i,a,c,l,u,d){var p,f,m=i;if(e.isDestructuringAssignment(i))for(p=i.right;e.isEmptyArrayLiteral(i.left)||e.isEmptyObjectLiteral(i.left);){if(!e.isDestructuringAssignment(p))return e.visitNode(p,a,e.isExpression);m=i=p,p=i.right}var g={context:c,level:l,downlevelIteration:!!c.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:_,emitBindingOrAssignment:function(t,r,n,i){e.Debug.assertNode(t,d?e.isIdentifier:e.isExpression);var o=d?d(t,r,n):e.setTextRange(c.factory.createAssignment(e.visitNode(t,a,e.isExpression),r),n);o.original=i,_(o)},createArrayBindingOrAssignmentPattern:function(t){return function(t,r){return t.createArrayLiteralExpression(e.map(r,t.converters.convertToArrayAssignmentElement))}(c.factory,t)},createObjectBindingOrAssignmentPattern:function(t){return function(t,r){return t.createObjectLiteralExpression(e.map(r,t.converters.convertToObjectAssignmentElement))}(c.factory,t)},createArrayBindingOrAssignmentElement:s,visitor:a};if(p&&(p=e.visitNode(p,a,e.isExpression),e.isIdentifier(p)&&t(i,p.escapedText)||r(i)?p=o(g,p,!1,m):u?p=o(g,p,!0,m):e.nodeIsSynthesized(i)&&(m=p)),n(g,i,p,m,e.isDestructuringAssignment(i)),p&&u){if(!e.some(f))return p;f.push(p)}return c.factory.inlineExpressions(f)||c.factory.createOmittedExpression();function _(t){f=e.append(f,t)}},e.flattenDestructuringBinding=function(i,a,s,c,l,u,d){var p;void 0===u&&(u=!1);var f=[],m=[],g={context:s,level:c,downlevelIteration:!!s.getCompilerOptions().downlevelIteration,hoistTempVariables:u,emitExpression:function(t){p=e.append(p,t)},emitBindingOrAssignment:C,createArrayBindingOrAssignmentPattern:function(t){return function(t,r){return e.Debug.assertEachNode(r,e.isArrayBindingElement),t.createArrayBindingPattern(r)}(s.factory,t)},createObjectBindingOrAssignmentPattern:function(t){return function(t,r){return e.Debug.assertEachNode(r,e.isBindingElement),t.createObjectBindingPattern(r)}(s.factory,t)},createArrayBindingOrAssignmentElement:function(e){return function(e,t){return e.createBindingElement(void 0,void 0,t)}(s.factory,e)},visitor:a};if(e.isVariableDeclaration(i)){var _=e.getInitializerOfBindingOrAssignmentElement(i);_&&(e.isIdentifier(_)&&t(i,_.escapedText)||r(i))&&(_=o(g,e.visitNode(_,g.visitor),!1,_),i=s.factory.updateVariableDeclaration(i,i.name,void 0,void 0,_))}if(n(g,i,l,i,d),p){var h=s.factory.createTempVariable(void 0);if(u){var y=s.factory.inlineExpressions(p);p=void 0,C(h,y,void 0,void 0)}else{s.hoistVariableDeclaration(h);var v=e.last(f);v.pendingExpressions=e.append(v.pendingExpressions,s.factory.createAssignment(h,v.value)),e.addRange(v.pendingExpressions,p),v.value=h}}for(var b=0,k=f;b<k.length;b++){var x=k[b],E=x.pendingExpressions,S=x.name,D=(y=x.value,x.location),w=x.original,T=s.factory.createVariableDeclaration(S,void 0,void 0,E?s.factory.inlineExpressions(e.append(E,y)):y);T.original=w,e.setTextRange(T,D),m.push(T)}return m;function C(t,r,n,i){e.Debug.assertNode(t,e.isBindingName),p&&(r=s.factory.inlineExpressions(e.append(p,r)),p=void 0),f.push({pendingExpressions:p,name:t,value:r,location:n,original:i})}}}(d||(d={})),function(e){var t;function r(t){return t.templateFlags?e.factory.createVoidZero():e.factory.createStringLiteral(t.text)}function n(t,r){var n=t.rawText;if(void 0===n){n=e.getSourceTextOfNodeFromSourceFile(r,t);var i=14===t.kind||17===t.kind;n=n.substring(1,n.length-(i?1:2))}return n=n.replace(/\r\n?/g,"\n"),e.setTextRange(e.factory.createStringLiteral(n),t)}!function(e){e[e.LiftRestriction=0]="LiftRestriction",e[e.All=1]="All"}(t=e.ProcessLevel||(e.ProcessLevel={})),e.processTaggedTemplateExpression=function(i,a,o,s,c,l){var u=e.visitNode(a.tag,o,e.isExpression),d=[void 0],p=[],f=[],m=a.template;if(l===t.LiftRestriction&&!e.hasInvalidEscape(m))return e.visitEachChild(a,o,i);if(e.isNoSubstitutionTemplateLiteral(m))p.push(r(m)),f.push(n(m,s));else{p.push(r(m.head)),f.push(n(m.head,s));for(var g=0,_=m.templateSpans;g<_.length;g++){var h=_[g];p.push(r(h.literal)),f.push(n(h.literal,s)),d.push(e.visitNode(h.expression,o,e.isExpression))}}var y=i.getEmitHelperFactory().createTemplateObjectHelper(e.factory.createArrayLiteralExpression(p),e.factory.createArrayLiteralExpression(f));if(e.isExternalModule(s)){var v=e.factory.createUniqueName("templateObject");c(v),d[0]=e.factory.createLogicalOr(v,e.factory.createAssignment(v,y))}else d[0]=y;return e.factory.createCallExpression(u,void 0,d)}}(d||(d={})),function(e){var t,r;!function(e){e[e.ClassAliases=1]="ClassAliases",e[e.NamespaceExports=2]="NamespaceExports",e[e.NonQualifiedEnumMembers=8]="NonQualifiedEnumMembers"}(t||(t={})),function(e){e[e.None=0]="None",e[e.HasStaticInitializedProperties=1]="HasStaticInitializedProperties",e[e.HasConstructorDecorators=2]="HasConstructorDecorators",e[e.HasMemberDecorators=4]="HasMemberDecorators",e[e.IsExportOfNamespace=8]="IsExportOfNamespace",e[e.IsNamedExternalExport=16]="IsNamedExternalExport",e[e.IsDefaultExternalExport=32]="IsDefaultExternalExport",e[e.IsDerivedClass=64]="IsDerivedClass",e[e.UseImmediatelyInvokedFunctionExpression=128]="UseImmediatelyInvokedFunctionExpression",e[e.HasAnyDecorators=6]="HasAnyDecorators",e[e.NeedsName=5]="NeedsName",e[e.MayNeedImmediatelyInvokedFunctionExpression=7]="MayNeedImmediatelyInvokedFunctionExpression",e[e.IsExported=56]="IsExported"}(r||(r={})),e.transformTypeScript=function(t){var r,n,i,a,o,s,c,l,u,d,p=t.factory,f=t.getEmitHelperFactory,m=t.startLexicalEnvironment,g=t.resumeLexicalEnvironment,_=t.endLexicalEnvironment,h=t.hoistVariableDeclaration,y=t.getEmitResolver(),v=t.getCompilerOptions(),b=e.getStrictOptionValue(v,"strictNullChecks"),k=e.getEmitScriptTarget(v),x=e.getEmitModuleKind(v),E=t.onEmitNode,S=t.onSubstituteNode;return t.onEmitNode=function(t,n,i){var a=d,o=r;e.isSourceFile(n)&&(r=n);2&l&&function(t){return 259===e.getOriginalNode(t).kind}(n)&&(d|=2);8&l&&function(t){return 258===e.getOriginalNode(t).kind}(n)&&(d|=8);E(t,n,i),d=a,r=o},t.onSubstituteNode=function(t,r){if(r=S(t,r),1===t)return function(t){switch(t.kind){case 78:return function(t){return function(t){if(1&l&&33554432&y.getNodeCheckFlags(t)){var r=y.getReferencedValueDeclaration(t);if(r){var n=u[r.id];if(n){var i=p.cloneNode(n);return e.setSourceMapRange(i,t),e.setCommentRange(i,t),i}}}return}(t)||ze(t)||t}(t);case 202:case 203:return function(e){return Ue(e)}(t)}return t}(r);if(e.isShorthandPropertyAssignment(r))return function(t){if(2&l){var r=t.name,n=ze(r);if(n){if(t.objectAssignmentInitializer){var i=p.createAssignment(n,t.objectAssignmentInitializer);return e.setTextRange(p.createPropertyAssignment(r,i),t)}return e.setTextRange(p.createPropertyAssignment(r,n),t)}}return t}(r);return r},t.enableSubstitution(202),t.enableSubstitution(203),function(t){if(301===t.kind)return function(t){return p.createBundle(t.sourceFiles.map(D),e.mapDefined(t.prepends,(function(t){return 303===t.kind?e.createUnparsedSourceFile(t,"js"):t})))}(t);return D(t)};function D(n){if(n.isDeclarationFile)return n;r=n;var i=w(n,L);return e.addEmitHelpers(i,t.readEmitHelpers()),r=void 0,i}function w(t,r){var n=a,i=o,l=s,u=c;!function(t){switch(t.kind){case 300:case 261:case 260:case 232:a=t,o=void 0,s=void 0;break;case 254:case 253:if(e.hasSyntacticModifier(t,2))break;t.name?be(t):e.Debug.assert(254===t.kind||e.hasSyntacticModifier(t,512)),e.isClassDeclaration(t)&&(o=t)}}(t);var d=r(t);return a!==n&&(s=l),a=n,o=i,c=u,d}function T(e){return w(e,C)}function C(e){return 1&e.transformFlags?M(e):e}function A(e){return w(e,N)}function N(r){switch(r.kind){case 264:case 263:case 269:case 270:return function(r){var n=e.getParseTreeNode(r);if(n!==r)return 1&r.transformFlags?e.visitEachChild(r,T,t):r;switch(r.kind){case 264:return function(t){if(!t.importClause)return t;if(t.importClause.isTypeOnly)return;var r=e.visitNode(t.importClause,De,e.isImportClause);return r||1===v.importsNotUsedAsValues||2===v.importsNotUsedAsValues?p.updateImportDeclaration(t,void 0,void 0,r,t.moduleSpecifier):void 0}(r);case 263:return Ne(r);case 269:return function(r){return y.isValueAliasDeclaration(r)?e.visitEachChild(r,T,t):void 0}(r);case 270:return function(t){if(t.isTypeOnly)return;if(!t.exportClause||e.isNamespaceExport(t.exportClause))return t;if(!y.isValueAliasDeclaration(t))return;var r=e.visitNode(t.exportClause,Ce,e.isNamedExportBindings);return r?p.updateExportDeclaration(t,void 0,void 0,t.isTypeOnly,r,t.moduleSpecifier):void 0}(r);default:e.Debug.fail("Unhandled ellided statement")}}(r);default:return C(r)}}function P(e){return w(e,I)}function I(t){if(270!==t.kind&&264!==t.kind&&265!==t.kind&&(263!==t.kind||275!==t.moduleReference.kind))return 1&t.transformFlags||e.hasSyntacticModifier(t,1)?M(t):t}function F(e){return w(e,O)}function O(t){switch(t.kind){case 167:return me(t);case 164:return fe(t);case 172:case 168:case 169:case 166:return C(t);case 231:return t;default:return e.Debug.failBadSyntaxKind(t)}}function R(t){if(!(2270&e.modifierToFlag(t.kind)||n&&93===t.kind))return t}function M(o){if(e.isStatement(o)&&e.hasSyntacticModifier(o,2))return p.createNotEmittedStatement(o);switch(o.kind){case 93:case 88:return n?void 0:o;case 123:case 121:case 122:case 126:case 85:case 134:case 143:case 179:case 180:case 181:case 182:case 178:case 173:case 160:case 129:case 153:case 132:case 148:case 145:case 142:case 114:case 149:case 176:case 175:case 177:case 174:case 183:case 184:case 185:case 187:case 188:case 189:case 190:case 191:case 192:case 172:case 162:case 257:case 262:return;case 164:return fe(o);case 167:return me(o);case 256:return p.createNotEmittedStatement(o);case 254:return function(i){if(!(z(i)||n&&e.hasSyntacticModifier(i,1)))return e.visitEachChild(i,T,t);var a=e.getProperties(i,!0,!0),o=function(t,r){var n=0;e.some(r)&&(n|=1);var i=e.getEffectiveBaseTypeNode(t);i&&104!==e.skipOuterExpressions(i.expression).kind&&(n|=64);(function(t){if(t.decorators&&t.decorators.length>0)return!0;var r=e.getFirstConstructorWithBody(t);if(r)return e.forEach(r.parameters,j);return!1})(t)&&(n|=2);e.childIsDecorated(t)&&(n|=4);Pe(t)?n|=8:!function(t){return Ie(t)&&e.hasSyntacticModifier(t,512)}(t)?Fe(t)&&(n|=16):n|=32;k<=1&&7&n&&(n|=128);return n}(i,a);128&o&&t.startLexicalEnvironment();var s=i.name||(5&o?p.getGeneratedNameForNode(i):void 0),c=2&o?function(r,n){var i=e.moveRangePastDecorators(r),a=function(r){if(16777216&y.getNodeCheckFlags(r)){0==(1&l)&&(l|=1,t.enableSubstitution(78),u=[]);var n=p.createUniqueName(r.name&&!e.isGeneratedIdentifier(r.name)?e.idText(r.name):"default");return u[e.getOriginalNodeId(r)]=n,h(n),n}}(r),o=p.getLocalName(r,!1,!0),s=e.visitNodes(r.heritageClauses,T,e.isHeritageClause),c=U(r),d=p.createClassExpression(void 0,void 0,n,void 0,s,c);e.setOriginalNode(d,r),e.setTextRange(d,i);var f=p.createVariableStatement(void 0,p.createVariableDeclarationList([p.createVariableDeclaration(o,void 0,void 0,a?p.createAssignment(a,d):d)],1));return e.setOriginalNode(f,r),e.setTextRange(f,i),e.setCommentRange(f,r),f}(i,s):function(t,r,n){var i=128&n?void 0:e.visitNodes(t.modifiers,R,e.isModifier),a=p.createClassDeclaration(void 0,i,r,void 0,e.visitNodes(t.heritageClauses,T,e.isHeritageClause),U(t)),o=e.getEmitFlags(t);1&n&&(o|=32);return e.setTextRange(a,t),e.setOriginalNode(a,t),e.setEmitFlags(a,o),a}(i,s,o),d=[c];if(W(d,i,!1),W(d,i,!0),function(t,r){var n=function(t){var r=function(t){var r=t.decorators,n=V(e.getFirstConstructorWithBody(t));if(!r&&!n)return;return{decorators:r,parameters:n}}(t),n=K(t,t,r);if(!n)return;var i=u&&u[e.getOriginalNodeId(t)],a=p.getLocalName(t,!1,!0),o=f().createDecorateHelper(n,a),s=p.createAssignment(a,i?p.createAssignment(i,o):o);return e.setEmitFlags(s,1536),e.setSourceMapRange(s,e.moveRangePastDecorators(t)),s}(r);n&&t.push(e.setOriginalNode(p.createExpressionStatement(n),r))}(d,i),128&o){var m=e.createTokenRange(e.skipTrivia(r.text,i.members.end),19),g=p.getInternalName(i),_=p.createPartiallyEmittedExpression(g);e.setTextRangeEnd(_,m.end),e.setEmitFlags(_,1536);var v=p.createReturnStatement(_);e.setTextRangePos(v,m.pos),e.setEmitFlags(v,1920),d.push(v),e.insertStatementsAfterStandardPrologue(d,t.endLexicalEnvironment());var b=p.createImmediatelyInvokedArrowFunction(d);e.setEmitFlags(b,33554432);var x=p.createVariableStatement(void 0,p.createVariableDeclarationList([p.createVariableDeclaration(p.getLocalName(i,!1,!1),void 0,void 0,b)]));e.setOriginalNode(x,i),e.setCommentRange(x,i),e.setSourceMapRange(x,e.moveRangePastDecorators(i)),e.startOnNewLine(x),d=[x]}8&o?Re(d,i):(128&o||2&o)&&(32&o?d.push(p.createExportDefault(p.getLocalName(i,!1,!0))):16&o&&d.push(p.createExternalModuleExport(p.getLocalName(i,!1,!0))));d.length>1&&(d.push(p.createEndOfDeclarationMarker(i)),e.setEmitFlags(c,4194304|e.getEmitFlags(c)));return e.singleOrMany(d)}(o);case 223:return function(r){if(!z(r))return e.visitEachChild(r,T,t);var n=p.createClassExpression(void 0,void 0,r.name,void 0,e.visitNodes(r.heritageClauses,T,e.isHeritageClause),U(r));return e.setOriginalNode(n,r),e.setTextRange(n,r),n}(o);case 289:return function(r){if(117===r.token)return;return e.visitEachChild(r,T,t)}(o);case 225:return function(t){return p.updateExpressionWithTypeArguments(t,e.visitNode(t.expression,T,e.isLeftHandSideExpression),void 0)}(o);case 166:return function(r){if(!pe(r))return;var n=p.updateMethodDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),r.asteriskToken,de(r),void 0,void 0,e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t));n!==r&&(e.setCommentRange(n,r),e.setSourceMapRange(n,e.moveRangePastDecorators(r)));return n}(o);case 168:return function(r){if(!_e(r))return;var n=p.updateGetAccessorDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),de(r),e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t)||p.createBlock([]));n!==r&&(e.setCommentRange(n,r),e.setSourceMapRange(n,e.moveRangePastDecorators(r)));return n}(o);case 169:return function(r){if(!_e(r))return;var n=p.updateSetAccessorDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),de(r),e.visitParameterList(r.parameters,T,t),e.visitFunctionBody(r.body,T,t)||p.createBlock([]));n!==r&&(e.setCommentRange(n,r),e.setSourceMapRange(n,e.moveRangePastDecorators(r)));return n}(o);case 253:return function(r){if(!pe(r))return p.createNotEmittedStatement(r);var n=p.updateFunctionDeclaration(r,void 0,e.visitNodes(r.modifiers,R,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t)||p.createBlock([]));if(Pe(r)){var i=[n];return Re(i,r),i}return n}(o);case 209:return function(r){if(!pe(r))return p.createOmittedExpression();var n=p.updateFunctionExpression(r,e.visitNodes(r.modifiers,R,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,T,t),void 0,e.visitFunctionBody(r.body,T,t)||p.createBlock([]));return n}(o);case 210:return function(r){var n=p.updateArrowFunction(r,e.visitNodes(r.modifiers,R,e.isModifier),void 0,e.visitParameterList(r.parameters,T,t),void 0,r.equalsGreaterThanToken,e.visitFunctionBody(r.body,T,t));return n}(o);case 161:return function(t){if(e.parameterIsThisKeyword(t))return;var r=p.updateParameterDeclaration(t,void 0,void 0,t.dotDotDotToken,e.visitNode(t.name,T,e.isBindingName),void 0,void 0,e.visitNode(t.initializer,T,e.isExpression));r!==t&&(e.setCommentRange(r,t),e.setTextRange(r,e.moveRangePastModifiers(t)),e.setSourceMapRange(r,e.moveRangePastModifiers(t)),e.setEmitFlags(r.name,32));return r}(o);case 208:return function(n){var i=e.skipOuterExpressions(n.expression,-7);if(e.isAssertionExpression(i)){var a=e.visitNode(n.expression,T,e.isExpression);return e.length(e.getLeadingCommentRangesOfNode(a,r))?p.updateParenthesizedExpression(n,a):p.createPartiallyEmittedExpression(a,n)}return e.visitEachChild(n,T,t)}(o);case 207:case 226:return function(t){var r=e.visitNode(t.expression,T,e.isExpression);return p.createPartiallyEmittedExpression(r,t)}(o);case 204:return function(t){return p.updateCallExpression(t,e.visitNode(t.expression,T,e.isExpression),void 0,e.visitNodes(t.arguments,T,e.isExpression))}(o);case 205:return function(t){return p.updateNewExpression(t,e.visitNode(t.expression,T,e.isExpression),void 0,e.visitNodes(t.arguments,T,e.isExpression))}(o);case 206:return function(t){return p.updateTaggedTemplateExpression(t,e.visitNode(t.tag,T,e.isExpression),void 0,e.visitNode(t.template,T,e.isExpression))}(o);case 227:return function(t){var r=e.visitNode(t.expression,T,e.isLeftHandSideExpression);return p.createPartiallyEmittedExpression(r,t)}(o);case 258:return function(t){if(!function(t){return!e.isEnumConst(t)||e.shouldPreserveConstEnums(v)}(t))return p.createNotEmittedStatement(t);var n=[],o=2,s=xe(n,t);s&&(x===e.ModuleKind.System&&a===r||(o|=512));var c=je(t),l=Be(t),u=e.hasSyntacticModifier(t,1)?p.getExternalModuleOrNamespaceExportName(i,t,!1,!0):p.getLocalName(t,!1,!0),d=p.createLogicalOr(u,p.createAssignment(u,p.createObjectLiteralExpression()));if(ve(t)){var f=p.getLocalName(t,!1,!0);d=p.createAssignment(f,d)}var g=p.createExpressionStatement(p.createCallExpression(p.createFunctionExpression(void 0,void 0,void 0,void 0,[p.createParameterDeclaration(void 0,void 0,void 0,c)],void 0,function(t,r){var n=i;i=r;var a=[];m();var o=e.map(t.members,ye);return e.insertStatementsAfterStandardPrologue(a,_()),e.addRange(a,o),i=n,p.createBlock(e.setTextRange(p.createNodeArray(a),t.members),!0)}(t,l)),void 0,[d]));e.setOriginalNode(g,t),s&&(e.setSyntheticLeadingComments(g,void 0),e.setSyntheticTrailingComments(g,void 0));return e.setTextRange(g,t),e.addEmitFlags(g,o),n.push(g),n.push(p.createEndOfDeclarationMarker(t)),n}(o);case 234:return function(r){if(Pe(r)){var n=e.getInitializedVariables(r.declarationList);if(0===n.length)return;return e.setTextRange(p.createExpressionStatement(p.inlineExpressions(e.map(n,he))),r)}return e.visitEachChild(r,T,t)}(o);case 251:return function(t){return p.updateVariableDeclaration(t,e.visitNode(t.name,T,e.isBindingName),void 0,void 0,e.visitNode(t.initializer,T,e.isExpression))}(o);case 259:return Ee(o);case 263:return Ne(o);case 277:return function(t){return p.updateJsxSelfClosingElement(t,e.visitNode(t.tagName,T,e.isJsxTagNameExpression),void 0,e.visitNode(t.attributes,T,e.isJsxAttributes))}(o);case 278:return function(t){return p.updateJsxOpeningElement(t,e.visitNode(t.tagName,T,e.isJsxTagNameExpression),void 0,e.visitNode(t.attributes,T,e.isJsxAttributes))}(o);default:return e.visitEachChild(o,T,t)}}function L(r){var n=e.getStrictOptionValue(v,"alwaysStrict")&&!(e.isExternalModule(r)&&x>=e.ModuleKind.ES2015)&&!e.isJsonSourceFile(r);return p.updateSourceFile(r,e.visitLexicalEnvironment(r.statements,A,t,0,n))}function j(e){return void 0!==e.decorators&&e.decorators.length>0}function B(e){return!!(2048&e.transformFlags)}function z(t){return e.some(t.decorators)||e.some(t.typeParameters)||e.some(t.heritageClauses,B)||e.some(t.members,B)}function U(t){var r=[],n=e.getFirstConstructorWithBody(t),i=n&&e.filter(n.parameters,(function(t){return e.isParameterPropertyDeclaration(t,n)}));if(i)for(var a=0,o=i;a<o.length;a++){var s=o[a];e.isIdentifier(s.name)&&r.push(e.setOriginalNode(p.createPropertyDeclaration(void 0,void 0,s.name,void 0,void 0,void 0),s))}return e.addRange(r,e.visitNodes(t.members,F,e.isClassElement)),e.setTextRange(p.createNodeArray(r),t.members)}function q(t,r){return e.filter(t.members,r?function(e){return J(e,!0,t)}:function(e){return J(e,!1,t)})}function J(t,r,n){return e.nodeOrChildIsDecorated(t,n)&&r===e.hasSyntacticModifier(t,32)}function V(t){var r;if(t)for(var n=t.parameters,i=n.length>0&&e.parameterIsThisKeyword(n[0]),a=i?1:0,o=i?n.length-1:n.length,s=0;s<o;s++){var c=n[s+a];(r||c.decorators)&&(r||(r=new Array(o)),r[s]=c.decorators)}return r}function H(t,r){switch(r.kind){case 168:case 169:return function(t,r){if(!r.body)return;var n=e.getAllAccessorDeclarations(t.members,r),i=n.firstAccessor,a=n.secondAccessor,o=n.setAccessor,s=i.decorators?i:a&&a.decorators?a:void 0;if(!s||r!==s)return;var c=s.decorators,l=V(o);if(!c&&!l)return;return{decorators:c,parameters:l}}(t,r);case 166:return function(e){if(!e.body)return;var t=e.decorators,r=V(e);if(!t&&!r)return;return{decorators:t,parameters:r}}(r);case 164:return function(e){var t=e.decorators;if(!t)return;return{decorators:t}}(r);default:return}}function K(t,r,n){if(n){var i=[];return e.addRange(i,e.map(n.decorators,$)),e.addRange(i,e.flatMap(n.parameters,Y)),function(e,t,r){(function(e,t,r){v.emitDecoratorMetadata&&(X(e)&&r.push(f().createMetadataHelper("design:type",ee(e))),Z(e)&&r.push(f().createMetadataHelper("design:paramtypes",te(e,t))),Q(e)&&r.push(f().createMetadataHelper("design:returntype",re(e))))})(e,t,r)}(t,r,i),i}}function W(t,r,n){e.addRange(t,e.map(function(e,t){for(var r,n=q(e,t),i=0,a=n;i<a.length;i++){var o=G(e,a[i]);o&&(r?r.push(o):r=[o])}return r}(r,n),Oe))}function G(t,r){var n=K(r,t,H(t,r));if(n){var i=function(t,r){return e.hasSyntacticModifier(r,32)?p.getDeclarationName(t):function(e){return p.createPropertyAccessExpression(p.getDeclarationName(e),"prototype")}(t)}(t,r),a=ue(r,!0),o=k>0?164===r.kind?p.createVoidZero():p.createNull():void 0,s=f().createDecorateHelper(n,i,a,o);return e.setTextRange(s,e.moveRangePastDecorators(r)),e.setEmitFlags(s,1536),s}}function $(t){return e.visitNode(t.expression,T,e.isExpression)}function Y(t,r){var n;if(t){n=[];for(var i=0,a=t;i<a.length;i++){var o=a[i],s=f().createParamHelper($(o),r);e.setTextRange(s,o.expression),e.setEmitFlags(s,1536),n.push(s)}}return n}function X(e){var t=e.kind;return 166===t||168===t||169===t||164===t}function Q(e){return 166===e.kind}function Z(t){switch(t.kind){case 254:case 223:return void 0!==e.getFirstConstructorWithBody(t);case 166:case 168:case 169:return!0}return!1}function ee(t){switch(t.kind){case 164:case 161:return ne(t.type);case 169:case 168:return ne(function(t){var r=y.getAllAccessorDeclarations(t);return r.setAccessor&&e.getSetAccessorTypeAnnotationNode(r.setAccessor)||r.getAccessor&&e.getEffectiveReturnTypeNode(r.getAccessor)}(t));case 254:case 223:case 166:return p.createIdentifier("Function");default:return p.createVoidZero()}}function te(t,r){var n=e.isClassLike(t)?e.getFirstConstructorWithBody(t):e.isFunctionLike(t)&&e.nodeIsPresent(t.body)?t:void 0,i=[];if(n)for(var a=function(t,r){if(r&&168===t.kind){var n=e.getAllAccessorDeclarations(r.members,t).setAccessor;if(n)return n.parameters}return t.parameters}(n,r),o=a.length,s=0;s<o;s++){var c=a[s];0===s&&e.isIdentifier(c.name)&&"this"===c.name.escapedText||(c.dotDotDotToken?i.push(ne(e.getRestParameterElementType(c.type))):i.push(ee(c)))}return p.createArrayLiteralExpression(i)}function re(t){return e.isFunctionLike(t)&&t.type?ne(t.type):e.isAsyncFunction(t)?p.createIdentifier("Promise"):p.createVoidZero()}function ne(t){if(void 0===t)return p.createIdentifier("Object");switch(t.kind){case 114:case 151:case 142:return p.createVoidZero();case 187:return ne(t.type);case 175:case 176:return p.createIdentifier("Function");case 179:case 180:return p.createIdentifier("Array");case 173:case 132:return p.createIdentifier("Boolean");case 148:return p.createIdentifier("String");case 146:return p.createIdentifier("Object");case 192:switch(t.literal.kind){case 10:case 14:return p.createIdentifier("String");case 216:case 8:return p.createIdentifier("Number");case 9:return le();case 110:case 95:return p.createIdentifier("Boolean");case 104:return p.createVoidZero();default:return e.Debug.failBadSyntaxKind(t.literal)}case 145:return p.createIdentifier("Number");case 156:return le();case 149:return k<2?ce():p.createIdentifier("Symbol");case 174:return function(t){var r=y.getTypeReferenceSerializationKind(t.typeName,o||a);switch(r){case e.TypeReferenceSerializationKind.Unknown:if(e.findAncestor(t,(function(t){return t.parent&&e.isConditionalTypeNode(t.parent)&&(t.parent.trueType===t||t.parent.falseType===t)})))return p.createIdentifier("Object");var n=oe(t.typeName),i=p.createTempVariable(h);return p.createConditionalExpression(p.createTypeCheck(p.createAssignment(i,n),"function"),void 0,i,void 0,p.createIdentifier("Object"));case e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue:return se(t.typeName);case e.TypeReferenceSerializationKind.VoidNullableOrNeverType:return p.createVoidZero();case e.TypeReferenceSerializationKind.BigIntLikeType:return le();case e.TypeReferenceSerializationKind.BooleanType:return p.createIdentifier("Boolean");case e.TypeReferenceSerializationKind.NumberLikeType:return p.createIdentifier("Number");case e.TypeReferenceSerializationKind.StringLikeType:return p.createIdentifier("String");case e.TypeReferenceSerializationKind.ArrayLikeType:return p.createIdentifier("Array");case e.TypeReferenceSerializationKind.ESSymbolType:return k<2?ce():p.createIdentifier("Symbol");case e.TypeReferenceSerializationKind.TypeWithCallSignature:return p.createIdentifier("Function");case e.TypeReferenceSerializationKind.Promise:return p.createIdentifier("Promise");case e.TypeReferenceSerializationKind.ObjectType:return p.createIdentifier("Object");default:return e.Debug.assertNever(r)}}(t);case 184:case 183:return ie(t.types);case 185:return ie([t.trueType,t.falseType]);case 189:if(143===t.operator)return ne(t.type);break;case 177:case 190:case 191:case 178:case 129:case 153:case 188:case 196:case 306:case 307:case 311:case 312:case 313:break;case 308:case 309:case 310:return ne(t.type);default:return e.Debug.failBadSyntaxKind(t)}return p.createIdentifier("Object")}function ie(t){for(var r,n=0,i=t;n<i.length;n++){for(var a=i[n];187===a.kind;)a=a.type;if(142!==a.kind&&(b||(192!==a.kind||104!==a.literal.kind)&&151!==a.kind)){var o=ne(a);if(e.isIdentifier(o)&&"Object"===o.escapedText)return o;if(r){if(!e.isIdentifier(r)||!e.isIdentifier(o)||r.escapedText!==o.escapedText)return p.createIdentifier("Object")}else r=o}}return r||p.createVoidZero()}function ae(e,t){return p.createLogicalAnd(p.createStrictInequality(p.createTypeOfExpression(e),p.createStringLiteral("undefined")),t)}function oe(e){if(78===e.kind){var t=se(e);return ae(t,t)}if(78===e.left.kind)return ae(se(e.left),se(e));var r=oe(e.left),n=p.createTempVariable(h);return p.createLogicalAnd(p.createLogicalAnd(r.left,p.createStrictInequality(p.createAssignment(n,r.right),p.createVoidZero())),p.createPropertyAccessExpression(n,e.right))}function se(t){switch(t.kind){case 78:var r=e.setParent(e.setTextRange(e.parseNodeFactory.cloneNode(t),t),t.parent);return r.original=void 0,e.setParent(r,e.getParseTreeNode(a)),r;case 158:return function(e){return p.createPropertyAccessExpression(se(e.left),e.right)}(t)}}function ce(){return p.createConditionalExpression(p.createTypeCheck(p.createIdentifier("Symbol"),"function"),void 0,p.createIdentifier("Symbol"),void 0,p.createIdentifier("Object"))}function le(){return k<99?p.createConditionalExpression(p.createTypeCheck(p.createIdentifier("BigInt"),"function"),void 0,p.createIdentifier("BigInt"),void 0,p.createIdentifier("Object")):p.createIdentifier("BigInt")}function ue(t,r){var n=t.name;return e.isPrivateIdentifier(n)?p.createIdentifier(""):e.isComputedPropertyName(n)?r&&!e.isSimpleInlineableExpression(n.expression)?p.getGeneratedNameForNode(n):n.expression:e.isIdentifier(n)?p.createStringLiteral(e.idText(n)):p.cloneNode(n)}function de(t){var r=t.name;if(e.isComputedPropertyName(r)&&(!e.hasStaticModifier(t)&&c||e.some(t.decorators))){var n=e.visitNode(r.expression,T,e.isExpression),i=e.skipPartiallyEmittedExpressions(n);if(!e.isSimpleInlineableExpression(i)){var a=p.getGeneratedNameForNode(r);return h(a),p.updateComputedPropertyName(r,p.createAssignment(a,n))}}return e.visitNode(r,T,e.isPropertyName)}function pe(t){return!e.nodeIsMissing(t.body)}function fe(t){if(!(8388608&t.flags||e.hasSyntacticModifier(t,128))){var r=p.updatePropertyDeclaration(t,void 0,e.visitNodes(t.modifiers,T,e.isModifier),de(t),void 0,void 0,e.visitNode(t.initializer,T));return r!==t&&(e.setCommentRange(r,t),e.setSourceMapRange(r,e.moveRangePastDecorators(t))),r}}function me(r){if(pe(r))return p.updateConstructorDeclaration(r,void 0,void 0,e.visitParameterList(r.parameters,T,t),function(r,n){var i=n&&e.filter(n.parameters,(function(t){return e.isParameterPropertyDeclaration(t,n)}));if(!e.some(i))return e.visitFunctionBody(r,T,t);var a=[],o=0;g(),o=e.addPrologueDirectivesAndInitialSuperCall(p,n,a,T),e.addRange(a,e.map(i,ge)),e.addRange(a,e.visitNodes(r.statements,T,e.isStatement,o)),a=p.mergeLexicalEnvironment(a,_());var s=p.createBlock(e.setTextRange(p.createNodeArray(a),r.statements),!0);return e.setTextRange(s,r),e.setOriginalNode(s,r),s}(r.body,r))}function ge(t){var r=t.name;if(e.isIdentifier(r)){var n=e.setParent(e.setTextRange(p.cloneNode(r),r),r.parent);e.setEmitFlags(n,1584);var i=e.setParent(e.setTextRange(p.cloneNode(r),r),r.parent);return e.setEmitFlags(i,1536),e.startOnNewLine(e.removeAllComments(e.setTextRange(e.setOriginalNode(p.createExpressionStatement(p.createAssignment(e.setTextRange(p.createPropertyAccessExpression(p.createThis(),n),t.name),i)),t),e.moveRangePos(t,-1))))}}function _e(t){return!(e.nodeIsMissing(t.body)&&e.hasSyntacticModifier(t,128))}function he(r){var n=r.name;return e.isBindingPattern(n)?e.flattenDestructuringAssignment(r,T,t,0,!1,Me):e.setTextRange(p.createAssignment(Le(n),e.visitNode(r.initializer,T,e.isExpression)),r)}function ye(r){var n=ue(r,!1),a=function(r){var n=y.getConstantValue(r);return void 0!==n?"string"==typeof n?p.createStringLiteral(n):p.createNumericLiteral(n):(0==(8&l)&&(l|=8,t.enableSubstitution(78)),r.initializer?e.visitNode(r.initializer,T,e.isExpression):p.createVoidZero())}(r),o=p.createAssignment(p.createElementAccessExpression(i,n),a),s=10===a.kind?o:p.createAssignment(p.createElementAccessExpression(i,o),n);return e.setTextRange(p.createExpressionStatement(e.setTextRange(s,r)),r)}function ve(t){return Pe(t)||Ie(t)&&x!==e.ModuleKind.ES2015&&x!==e.ModuleKind.ES2020&&x!==e.ModuleKind.ESNext&&x!==e.ModuleKind.System}function be(t){s||(s=new e.Map);var r=ke(t);s.has(r)||s.set(r,t)}function ke(t){return e.Debug.assertNode(t.name,e.isIdentifier),t.name.escapedText}function xe(t,r){var n=p.createVariableStatement(e.visitNodes(r.modifiers,R,e.isModifier),p.createVariableDeclarationList([p.createVariableDeclaration(p.getLocalName(r,!1,!0))],300===a.kind?0:1));if(e.setOriginalNode(n,r),be(r),function(e){if(s){var t=ke(e);return s.get(t)===e}return!0}(r))return 258===r.kind?e.setSourceMapRange(n.declarationList,r):e.setSourceMapRange(n,r),e.setCommentRange(n,r),e.addEmitFlags(n,4195328),t.push(n),!0;var i=p.createMergeDeclarationMarker(n);return e.setEmitFlags(i,4195840),t.push(i),!1}function Ee(o){if(!function(t){var r=e.getParseTreeNode(t,e.isModuleDeclaration);return!r||e.isInstantiatedModule(r,e.shouldPreserveConstEnums(v))}(o))return p.createNotEmittedStatement(o);e.Debug.assertNode(o.name,e.isIdentifier,"A TypeScript namespace should have an Identifier name."),0==(2&l)&&(l|=2,t.enableSubstitution(78),t.enableSubstitution(292),t.enableEmitNotification(259));var c=[],u=2,d=xe(c,o);d&&(x===e.ModuleKind.System&&a===r||(u|=512));var f=je(o),g=Be(o),h=e.hasSyntacticModifier(o,1)?p.getExternalModuleOrNamespaceExportName(i,o,!1,!0):p.getLocalName(o,!1,!0),y=p.createLogicalOr(h,p.createAssignment(h,p.createObjectLiteralExpression()));if(ve(o)){var b=p.getLocalName(o,!1,!0);y=p.createAssignment(b,y)}var k=p.createExpressionStatement(p.createCallExpression(p.createFunctionExpression(void 0,void 0,void 0,void 0,[p.createParameterDeclaration(void 0,void 0,void 0,f)],void 0,function(t,r){var a=i,o=n,c=s;i=r,n=t,s=void 0;var l,u,d=[];if(m(),t.body)if(260===t.body.kind)w(t.body,(function(t){return e.addRange(d,e.visitNodes(t.statements,P,e.isStatement))})),l=t.body.statements,u=t.body;else{var f=Ee(t.body);f&&(e.isArray(f)?e.addRange(d,f):d.push(f));var g=Se(t).body;l=e.moveRangePos(g.statements,-1)}e.insertStatementsAfterStandardPrologue(d,_()),i=a,n=o,s=c;var h=p.createBlock(e.setTextRange(p.createNodeArray(d),l),!0);e.setTextRange(h,u),t.body&&260===t.body.kind||e.setEmitFlags(h,1536|e.getEmitFlags(h));return h}(o,g)),void 0,[y]));return e.setOriginalNode(k,o),d&&(e.setSyntheticLeadingComments(k,void 0),e.setSyntheticTrailingComments(k,void 0)),e.setTextRange(k,o),e.addEmitFlags(k,u),c.push(k),c.push(p.createEndOfDeclarationMarker(o)),c}function Se(e){if(259===e.body.kind)return Se(e.body)||e.body}function De(t){if(!t.isTypeOnly){var r=y.isReferencedAliasDeclaration(t)?t.name:void 0,n=e.visitNode(t.namedBindings,we,e.isNamedImportBindings);return r||n?p.updateImportClause(t,!1,r,n):void 0}}function we(t){if(266===t.kind)return y.isReferencedAliasDeclaration(t)?t:void 0;var r=e.visitNodes(t.elements,Te,e.isImportSpecifier);return e.some(r)?p.updateNamedImports(t,r):void 0}function Te(e){return y.isReferencedAliasDeclaration(e)?e:void 0}function Ce(t){return e.isNamespaceExport(t)?function(t){return p.updateNamespaceExport(t,e.visitNode(t.name,T,e.isIdentifier))}(t):function(t){var r=e.visitNodes(t.elements,Ae,e.isExportSpecifier);return e.some(r)?p.updateNamedExports(t,r):void 0}(t)}function Ae(e){return y.isValueAliasDeclaration(e)?e:void 0}function Ne(n){if(!n.isTypeOnly){if(e.isExternalModuleImportEqualsDeclaration(n)){var a=y.isReferencedAliasDeclaration(n);return a||1!==v.importsNotUsedAsValues?a?e.visitEachChild(n,T,t):void 0:e.setOriginalNode(e.setTextRange(p.createImportDeclaration(void 0,void 0,void 0,n.moduleReference.expression),n),n)}if(function(t){return y.isReferencedAliasDeclaration(t)||!e.isExternalModule(r)&&y.isTopLevelValueImportEqualsWithEntityName(t)}(n)){var o,s,c,l=e.createExpressionFromEntityName(p,n.moduleReference);return e.setEmitFlags(l,3584),Fe(n)||!Pe(n)?e.setOriginalNode(e.setTextRange(p.createVariableStatement(e.visitNodes(n.modifiers,R,e.isModifier),p.createVariableDeclarationList([e.setOriginalNode(p.createVariableDeclaration(n.name,void 0,void 0,l),n)])),n),n):e.setOriginalNode((o=n.name,s=l,c=n,e.setTextRange(p.createExpressionStatement(p.createAssignment(p.getNamespaceMemberName(i,o,!1,!0),s)),c)),n)}}}function Pe(t){return void 0!==n&&e.hasSyntacticModifier(t,1)}function Ie(t){return void 0===n&&e.hasSyntacticModifier(t,1)}function Fe(t){return Ie(t)&&!e.hasSyntacticModifier(t,512)}function Oe(e){return p.createExpressionStatement(e)}function Re(t,r){var n=p.createAssignment(p.getExternalModuleOrNamespaceExportName(i,r,!1,!0),p.getLocalName(r));e.setSourceMapRange(n,e.createRange(r.name?r.name.pos:r.pos,r.end));var a=p.createExpressionStatement(n);e.setSourceMapRange(a,e.createRange(-1,r.end)),t.push(a)}function Me(t,r,n){return e.setTextRange(p.createAssignment(Le(t),r),n)}function Le(e){return p.getNamespaceMemberName(i,e,!1,!0)}function je(t){var r=p.getGeneratedNameForNode(t);return e.setSourceMapRange(r,t.name),r}function Be(e){return p.getGeneratedNameForNode(e)}function ze(t){if(l&d&&!e.isGeneratedIdentifier(t)&&!e.isLocalName(t)){var r=y.getReferencedExportContainer(t,!1);if(r&&300!==r.kind)if(2&d&&259===r.kind||8&d&&258===r.kind)return e.setTextRange(p.createPropertyAccessExpression(p.getGeneratedNameForNode(r),t),t)}}function Ue(t){var r=function(t){if(v.isolatedModules)return;return e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)?y.getConstantValue(t):void 0}(t);if(void 0!==r){e.setConstantValue(t,r);var n="string"==typeof r?p.createStringLiteral(r):p.createNumericLiteral(r);if(!v.removeComments){var i=e.getOriginalNode(t,e.isAccessExpression),a=e.isPropertyAccessExpression(i)?e.declarationNameToString(i.name):e.getTextOfNode(i.argumentExpression);e.addSyntheticTrailingComment(n,3," "+a+" ")}return n}return t}},e.transformTypeExportImportAndConstEnumInTypeScript=function(t){var r,n,i=t.getEmitResolver();return function(r){if(r.isDeclarationFile)return r;return e.factory.updateSourceFile(r,e.visitLexicalEnvironment(r.statements,a,t))};function a(s){switch(s.kind){case 264:return function(t){if(!t.importClause||t.importClause.isTypeOnly)return t;d();var n=[],i=e.visitNode(t.importClause,o,e.isImportClause);i&&n.push(e.factory.updateImportDeclaration(t,void 0,void 0,i,t.moduleSpecifier));for(var a=function(){var t,n=r.name;r.namespaceImport?t=r.namespaceImport:r.namedImports.length>0&&(t=e.factory.createNamedImports(r.namedImports));var i=[];void 0!==n&&i.push(e.factory.createImportClause(!0,n,void 0));void 0!==t&&i.push(e.factory.createImportClause(!0,void 0,t));return d(),i}(),s=0,c=a;s<c.length;s++){var l=c[s];n.push(e.factory.createImportDeclaration(void 0,void 0,l,t.moduleSpecifier))}return n.length>0?n:void 0}(s);case 263:return function(t){if(t.isTypeOnly)return t;if(e.isExternalModuleImportEqualsDeclaration(t)){return i.isReferencedAliasDeclaration(t)?t:i.isReferenced(t)?e.factory.updateImportEqualsDeclaration(t,t.decorators,t.modifiers,!0,t.name,t.moduleReference):void 0}return t}(s);case 270:return function(t){if(t.isTypeOnly||!t.exportClause||e.isNamespaceExport(t.exportClause))return t;p();var r=[],i=e.visitNode(t.exportClause,l,e.isNamedExportBindings);i&&r.push(e.factory.updateExportDeclaration(t,void 0,void 0,t.isTypeOnly,i,t.moduleSpecifier));var a=function(){var t;n.namedExports.length>0&&(t=e.factory.createNamedExports(n.namedExports));return p(),t}();a&&r.push(e.factory.createExportDeclaration(void 0,void 0,!0,a,t.moduleSpecifier));return r.length>0?r:void 0}(s);case 202:case 203:return function(r){var n=i.getConstantValue(r);if(void 0!==n){return"string"==typeof n?e.factory.createStringLiteral(n):e.factory.createNumericLiteral(n)}return e.visitEachChild(r,a,t)}(s);case 294:return function(r){var n=i.getConstantValue(r);if(void 0!==n){var o="string"==typeof n?e.factory.createStringLiteral(n):e.factory.createNumericLiteral(n);return e.factory.updateEnumMember(r,r.name,o)}return e.visitEachChild(r,a,t)}(s);default:return e.visitEachChild(s,a,t)}}function o(t){if(t.isTypeOnly)return t;var n;i.isReferencedAliasDeclaration(t)?n=t.name:i.isReferenced(t)&&function(e){r.name=e.name}(t);var a=e.visitNode(t.namedBindings,s,e.isNamedImportBindings);return n||a?e.factory.updateImportClause(t,!1,n,a):void 0}function s(t){if(266===t.kind)return i.isReferencedAliasDeclaration(t)?t:void(i.isReferenced(t)&&function(e){r.namespaceImport=e}(t));var n=e.visitNodes(t.elements,c,e.isImportSpecifier);return e.some(n)?e.factory.updateNamedImports(t,n):void 0}function c(e){if(i.isReferencedAliasDeclaration(e))return e;i.isReferenced(e)&&function(e){r.namedImports.push(e)}(e)}function l(t){var r=e.visitNodes(t.elements,u,e.isExportSpecifier);return e.some(r)?e.factory.updateNamedExports(t,r):void 0}function u(e){if(i.isValueAliasDeclaration(e))return e;!function(e){n.namedExports.push(e)}(e)}function d(){r={name:void 0,namespaceImport:void 0,namedImports:[]}}function p(){n={namedExports:[]}}}}(d||(d={})),function(e){var t,r;!function(e){e[e.ClassAliases=1]="ClassAliases"}(t||(t={})),function(e){e[e.InstanceField=0]="InstanceField"}(r||(r={})),e.transformClassFields=function(t){var r,n,a,o,s=t.factory,c=t.hoistVariableDeclaration,l=t.endLexicalEnvironment,u=t.resumeLexicalEnvironment,d=t.getEmitResolver(),p=t.getCompilerOptions(),f=e.getEmitScriptTarget(p),m=f<99,g=t.onSubstituteNode;t.onSubstituteNode=function(t,i){if(i=g(t,i),1===t)return function(t){if(78===t.kind)return function(t){return function(t){if(1&r&&33554432&d.getNodeCheckFlags(t)){var i=d.getReferencedValueDeclaration(t);if(i){var a=n[i.id];if(a){var o=s.cloneNode(a);return e.setSourceMapRange(o,t),e.setCommentRange(o,t),o}}}return}(t)||t}(t);return t}(i);return i};var _,h=[];return e.chainBundle(t,(function(r){var n=t.getCompilerOptions();if(r.isDeclarationFile||n.useDefineForClassFields&&99===n.target)return r;var i=e.visitEachChild(r,y,t);return e.addEmitHelpers(i,t.readEmitHelpers()),i}));function y(l){if(!(4194304&l.transformFlags))return l;switch(l.kind){case 223:case 254:return function(i){var l=a;a=void 0,m&&(h.push(_),_=void 0);var u=e.isClassDeclaration(i)?function(r){if(!e.forEach(r.members,w))return e.visitEachChild(r,y,t);var n=e.getEffectiveBaseTypeNode(r),i=!(!n||104===e.skipOuterExpressions(n.expression).kind),o=[s.updateClassDeclaration(r,void 0,r.modifiers,r.name,void 0,e.visitNodes(r.heritageClauses,y,e.isHeritageClause),T(r,i))];e.some(a)&&o.push(s.createExpressionStatement(s.inlineExpressions(a)));var c=e.getProperties(r,!0,!0);e.some(c)&&A(o,c,s.getInternalName(r));return o}(i):e.isClassExpression(i)?function(i){if(!e.forEach(i.members,w))return e.visitEachChild(i,y,t);var l=e.isClassDeclaration(e.getOriginalNode(i)),u=e.getProperties(i,!0,!0),p=e.getEffectiveBaseTypeNode(i),f=!(!p||104===e.skipOuterExpressions(p.expression).kind),m=s.updateClassExpression(i,e.visitNodes(i.decorators,y,e.isDecorator),i.modifiers,i.name,void 0,e.visitNodes(i.heritageClauses,y,e.isHeritageClause),T(i,f));if(e.some(u)||e.some(a)){if(l)return e.Debug.assertIsDefined(o,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),o&&a&&e.some(a)&&o.push(s.createExpressionStatement(s.inlineExpressions(a))),o&&e.some(u)&&A(o,u,s.getInternalName(i)),m;var g=[],_=16777216&d.getNodeCheckFlags(i),h=s.createTempVariable(c,!!_);if(_){0==(1&r)&&(r|=1,t.enableSubstitution(78),n=[]);var v=s.cloneNode(h);v.autoGenerateFlags&=-9,n[e.getOriginalNodeId(i)]=v}return e.setEmitFlags(m,65536|e.getEmitFlags(m)),g.push(e.startOnNewLine(s.createAssignment(h,m))),e.addRange(g,e.map(a,e.startOnNewLine)),e.addRange(g,function(t,r){for(var n=[],i=0,a=t;i<a.length;i++){var o=a[i],s=N(o,r);s&&(e.startOnNewLine(s),e.setSourceMapRange(s,e.moveRangePastModifiers(o)),e.setCommentRange(s,o),e.setOriginalNode(s,o),n.push(s))}return n}(u,h)),g.push(e.startOnNewLine(h)),s.inlineExpressions(g)}return m}(i):[];m&&(_=h.pop());return a=l,u}(l);case 164:return k(l);case 234:return function(r){var n=o;o=[];var a=e.visitEachChild(r,y,t),s=e.some(o)?i([a],o):a;return o=n,s}(l);case 202:return function(r){if(m&&e.isPrivateIdentifier(r.name)){var n=F(r.name);if(n)return e.setOriginalNode(x(n,r.expression),r)}return e.visitEachChild(r,y,t)}(l);case 216:return function(r){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.operand)){var n=45===r.operator?39:46===r.operator?40:void 0,i=void 0;if(n&&(i=F(r.operand.name))){var a=S(e.visitNode(r.operand.expression,y,e.isExpression)),o=a.readExpression,c=a.initializeExpression,l=s.createPrefixUnaryExpression(39,x(i,o));return e.setOriginalNode(D(i,c||o,s.createBinaryExpression(l,n,s.createNumericLiteral(1)),62),r)}}return e.visitEachChild(r,y,t)}(l);case 217:return E(l,!1);case 204:return function(r){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.expression)){var n=s.createCallBinding(r.expression,c,f),a=n.thisArg,o=n.target;return e.isCallChain(r)?s.updateCallChain(r,s.createPropertyAccessChain(e.visitNode(o,y),r.questionDotToken,"call"),void 0,void 0,i([e.visitNode(a,y,e.isExpression)],e.visitNodes(r.arguments,y,e.isExpression))):s.updateCallExpression(r,s.createPropertyAccessExpression(e.visitNode(o,y),"call"),void 0,i([e.visitNode(a,y,e.isExpression)],e.visitNodes(r.arguments,y,e.isExpression)))}return e.visitEachChild(r,y,t)}(l);case 218:return function(r){if(m){if(e.isDestructuringAssignment(r)){var n=a;a=void 0,r=s.updateBinaryExpression(r,e.visitNode(r.left,v),r.operatorToken,e.visitNode(r.right,y));var o=e.some(a)?s.inlineExpressions(e.compact(i(i([],a),[r]))):r;return a=n,o}if(e.isAssignmentExpression(r)&&e.isPrivateIdentifierPropertyAccessExpression(r.left)){var c=F(r.left.name);if(c)return e.setOriginalNode(D(c,r.left.expression,r.right,r.operatorToken.kind),r)}}return e.visitEachChild(r,y,t)}(l);case 79:return function(t){if(!m)return t;return e.setOriginalNode(s.createIdentifier(""),t)}(l);case 235:return function(r){if(e.isPostfixUnaryExpression(r.expression))return s.updateExpressionStatement(r,E(r.expression,!0));return e.visitEachChild(r,y,t)}(l);case 239:return function(r){if(r.incrementor&&e.isPostfixUnaryExpression(r.incrementor))return s.updateForStatement(r,e.visitNode(r.initializer,y,e.isForInitializer),e.visitNode(r.condition,y,e.isExpression),E(r.incrementor,!0),e.visitNode(r.statement,y,e.isStatement));return e.visitEachChild(r,y,t)}(l);case 206:return function(r){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.tag)){var n=s.createCallBinding(r.tag,c,f),i=n.thisArg,a=n.target;return s.updateTaggedTemplateExpression(r,s.createCallExpression(s.createPropertyAccessExpression(e.visitNode(a,y),"bind"),void 0,[e.visitNode(i,y,e.isExpression)]),void 0,e.visitNode(r.template,y,e.isTemplateLiteral))}return e.visitEachChild(r,y,t)}(l)}return e.visitEachChild(l,y,t)}function v(t){switch(t.kind){case 201:case 200:return function(t){return e.isArrayLiteralExpression(t)?s.updateArrayLiteralExpression(t,e.visitNodes(t.elements,R,e.isExpression)):s.updateObjectLiteralExpression(t,e.visitNodes(t.properties,M,e.isObjectLiteralElementLike))}(t);default:return y(t)}}function b(r){switch(r.kind){case 167:return;case 168:case 169:case 166:return e.visitEachChild(r,b,t);case 164:return k(r);case 159:return function(r){var n=e.visitEachChild(r,y,t);if(e.some(a)){var i=a;i.push(n.expression),a=[],n=s.updateComputedPropertyName(n,s.inlineExpressions(i))}return n}(r);case 231:return r;default:return y(r)}}function k(r){if(e.Debug.assert(!e.some(r.decorators)),!m&&e.isPrivateIdentifier(r.name))return s.updatePropertyDeclaration(r,void 0,e.visitNodes(r.modifiers,y,e.isModifier),r.name,void 0,void 0,void 0);var n=function(t,r){if(e.isComputedPropertyName(t)){var n=e.visitNode(t.expression,y,e.isExpression),i=e.skipPartiallyEmittedExpressions(n),a=e.isSimpleInlineableExpression(i);if(!(e.isAssignmentExpression(i)&&e.isGeneratedIdentifier(i.left))&&!a&&r){var o=s.getGeneratedNameForNode(t);return c(o),s.createAssignment(o,n)}return a||e.isIdentifier(i)?void 0:n}}(r.name,!!r.initializer||!!t.getCompilerOptions().useDefineForClassFields);n&&!e.isSimpleInlineableExpression(n)&&P().push(n)}function x(r,n){return n=e.visitNode(n,y,e.isExpression),0===r.placement?t.getEmitHelperFactory().createClassPrivateFieldGetHelper(e.nodeIsSynthesized(n)?n:s.cloneNode(n),r.weakMapName):e.Debug.fail("Unexpected private identifier placement")}function E(r,n){if(m&&e.isPrivateIdentifierPropertyAccessExpression(r.operand)){var i=45===r.operator?39:46===r.operator?40:void 0,a=void 0;if(i&&(a=F(r.operand.name))){var o=S(e.visitNode(r.operand.expression,y,e.isExpression)),l=o.readExpression,u=o.initializeExpression,d=s.createPrefixUnaryExpression(39,x(a,l)),p=n?void 0:s.createTempVariable(c);return e.setOriginalNode(s.inlineExpressions(e.compact([D(a,u||l,s.createBinaryExpression(p?s.createAssignment(p,d):d,i,s.createNumericLiteral(1)),62),p])),r)}}return e.visitEachChild(r,y,t)}function S(t){var r=e.nodeIsSynthesized(t)?t:s.cloneNode(t);if(e.isSimpleInlineableExpression(t))return{readExpression:r,initializeExpression:void 0};var n=s.createTempVariable(c);return{readExpression:n,initializeExpression:s.createAssignment(n,r)}}function D(r,n,i,a){return 0===r.placement?function(r,n,i,a){if(n=e.visitNode(n,y,e.isExpression),i=e.visitNode(i,y,e.isExpression),e.isCompoundAssignment(a)){var o=S(n),c=o.readExpression,l=o.initializeExpression;return t.getEmitHelperFactory().createClassPrivateFieldSetHelper(l||c,r.weakMapName,s.createBinaryExpression(t.getEmitHelperFactory().createClassPrivateFieldGetHelper(c,r.weakMapName),e.getNonAssignmentOperatorForCompoundAssignment(a),i))}return t.getEmitHelperFactory().createClassPrivateFieldSetHelper(n,r.weakMapName,i)}(r,n,i,a):e.Debug.fail("Unexpected private identifier placement")}function w(t){return e.isPropertyDeclaration(t)||m&&t.name&&e.isPrivateIdentifier(t.name)}function T(r,n){if(m)for(var i=0,a=r.members;i<a.length;i++){var o=a[i];e.isPrivateIdentifierPropertyDeclaration(o)&&I(o.name)}var c=[],d=function(r,n){var i=e.visitNode(e.getFirstConstructorWithBody(r),y,e.isConstructorDeclaration),a=r.members.filter(C);if(!e.some(a))return i;var o=e.visitParameterList(i?i.parameters:void 0,y,t),c=function(r,n,i){var a=t.getCompilerOptions().useDefineForClassFields,o=e.getProperties(r,!1,!1);a||(o=e.filter(o,(function(t){return!!t.initializer||e.isPrivateIdentifier(t.name)})));if(!n&&!e.some(o))return e.visitFunctionBody(void 0,y,t);u();var c=0,d=[];!n&&i&&d.push(s.createExpressionStatement(s.createCallExpression(s.createSuper(),void 0,[s.createSpreadElement(s.createIdentifier("arguments"))])));n&&(c=e.addPrologueDirectivesAndInitialSuperCall(s,n,d,y));if(null==n?void 0:n.body){var p=e.findIndex(n.body.statements,(function(t){return!e.isParameterPropertyDeclaration(e.getOriginalNode(t),n)}),c);-1===p&&(p=n.body.statements.length),p>c&&(a||e.addRange(d,e.visitNodes(n.body.statements,y,e.isStatement,c,p-c)),c=p)}A(d,o,s.createThis()),n&&e.addRange(d,e.visitNodes(n.body.statements,y,e.isStatement,c));return d=s.mergeLexicalEnvironment(d,l()),e.setTextRange(s.createBlock(e.setTextRange(s.createNodeArray(d),n?n.body.statements:r.members),!0),n?n.body:void 0)}(r,i,n);if(!c)return;return e.startOnNewLine(e.setOriginalNode(e.setTextRange(s.createConstructorDeclaration(void 0,void 0,null!=o?o:[],c),i||r),i))}(r,n);return d&&c.push(d),e.addRange(c,e.visitNodes(r.members,b,e.isClassElement)),e.setTextRange(s.createNodeArray(c),r.members)}function C(r){return!(!e.isPropertyDeclaration(r)||e.hasStaticModifier(r)||e.hasSyntacticModifier(e.getOriginalNode(r),128))&&(t.getCompilerOptions().useDefineForClassFields?f<99:e.isInitializedProperty(r)||m&&e.isPrivateIdentifierPropertyDeclaration(r))}function A(t,r,n){for(var i=0,a=r;i<a.length;i++){var o=a[i],c=N(o,n);if(c){var l=s.createExpressionStatement(c);e.setSourceMapRange(l,e.moveRangePastModifiers(o)),e.setCommentRange(l,o),e.setOriginalNode(l,o),t.push(l)}}}function N(r,n){var i,a=!t.getCompilerOptions().useDefineForClassFields,o=e.isComputedPropertyName(r.name)&&!e.isSimpleInlineableExpression(r.name.expression)?s.updateComputedPropertyName(r.name,s.getGeneratedNameForNode(r.name)):r.name;if(m&&e.isPrivateIdentifier(o)){var c=F(o);if(c){if(0===c.placement)return function(t,r,n){return e.factory.createCallExpression(e.factory.createPropertyAccessExpression(n,"set"),void 0,[t,r||e.factory.createVoidZero()])}(n,e.visitNode(r.initializer,y,e.isExpression),c.weakMapName)}else e.Debug.fail("Undeclared private name for property declaration.")}if((!e.isPrivateIdentifier(o)||r.initializer)&&(!e.isPrivateIdentifier(o)||r.initializer)){var l=e.getOriginalNode(r);if(!e.hasSyntacticModifier(l,128)){var u=r.initializer||a?null!==(i=e.visitNode(r.initializer,y,e.isExpression))&&void 0!==i?i:s.createVoidZero():e.isParameterPropertyDeclaration(l,l.parent)&&e.isIdentifier(o)?o:s.createVoidZero();if(a||e.isPrivateIdentifier(o)){var d=e.createMemberAccessForPropertyName(s,n,o,o);return s.createAssignment(d,u)}var p=e.isComputedPropertyName(o)?o.expression:e.isIdentifier(o)?s.createStringLiteral(e.unescapeLeadingUnderscores(o.escapedText)):o,f=s.createPropertyDescriptor({value:u,configurable:!0,writable:!0,enumerable:!0});return s.createObjectDefinePropertyCall(n,p,f)}}}function P(){return a||(a=[])}function I(t){var r=e.getTextOfPropertyName(t),n=s.createUniqueName("_"+r.substring(1),24);c(n),(_||(_=new e.Map)).set(t.escapedText,{placement:0,weakMapName:n}),P().push(s.createAssignment(n,s.createNewExpression(s.createIdentifier("WeakMap"),void 0,[])))}function F(e){if(_&&(r=_.get(e.escapedText)))return r;for(var t=h.length-1;t>=0;--t){var r,n=h[t];if(n)if(r=n.get(e.escapedText))return r}}function O(r){var n=s.getGeneratedNameForNode(r),i=F(r.name);if(!i)return e.visitEachChild(r,y,t);var a=r.expression;return(e.isThisProperty(r)||e.isSuperProperty(r)||!e.isSimpleCopiableExpression(r.expression))&&(a=s.createTempVariable(c,!0),P().push(s.createBinaryExpression(a,62,r.expression))),s.createPropertyAccessExpression(s.createParenthesizedExpression(s.createObjectLiteralExpression([s.createSetAccessorDeclaration(void 0,void 0,"value",[s.createParameterDeclaration(void 0,void 0,void 0,n,void 0,void 0,void 0)],s.createBlock([s.createExpressionStatement(D(i,a,n,62))]))])),"value")}function R(t){var r=e.getTargetOfBindingOrAssignmentElement(t);if(r&&e.isPrivateIdentifierPropertyAccessExpression(r)){var n=O(r);return e.isAssignmentExpression(t)?s.updateBinaryExpression(t,n,t.operatorToken,e.visitNode(t.right,y,e.isExpression)):e.isSpreadElement(t)?s.updateSpreadElement(t,n):n}return e.visitNode(t,v)}function M(t){if(e.isPropertyAssignment(t)){var r=e.getTargetOfBindingOrAssignmentElement(t);if(r&&e.isPrivateIdentifierPropertyAccessExpression(r)){var n=e.getInitializerOfBindingOrAssignmentElement(t),i=O(r);return s.updatePropertyAssignment(t,e.visitNode(t.name,y),n?s.createAssignment(i,e.visitNode(n,y)):i)}return s.updatePropertyAssignment(t,e.visitNode(t.name,y),e.visitNode(t.initializer,v))}return e.visitNode(t,y)}}}(d||(d={})),function(e){var t,r;function n(t,r,n,i){var a=0!=(4096&r.getNodeCheckFlags(n)),o=[];return i.forEach((function(r,n){var i=e.unescapeLeadingUnderscores(n),s=[];s.push(t.createPropertyAssignment("get",t.createArrowFunction(void 0,void 0,[],void 0,void 0,e.setEmitFlags(t.createPropertyAccessExpression(e.setEmitFlags(t.createSuper(),4),i),4)))),a&&s.push(t.createPropertyAssignment("set",t.createArrowFunction(void 0,void 0,[t.createParameterDeclaration(void 0,void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,t.createAssignment(e.setEmitFlags(t.createPropertyAccessExpression(e.setEmitFlags(t.createSuper(),4),i),4),t.createIdentifier("v"))))),o.push(t.createPropertyAssignment(i,t.createObjectLiteralExpression(s)))})),t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(t.createUniqueName("_super",48),void 0,void 0,t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"create"),void 0,[t.createNull(),t.createObjectLiteralExpression(o,!0)]))],2))}!function(e){e[e.AsyncMethodsWithSuper=1]="AsyncMethodsWithSuper"}(t||(t={})),function(e){e[e.NonTopLevel=1]="NonTopLevel",e[e.HasLexicalThis=2]="HasLexicalThis"}(r||(r={})),e.transformES2017=function(t){var r,a,o,s,c=t.factory,l=t.getEmitHelperFactory,u=t.resumeLexicalEnvironment,d=t.endLexicalEnvironment,p=t.hoistVariableDeclaration,f=t.getEmitResolver(),m=t.getCompilerOptions(),g=e.getEmitScriptTarget(m),_=0,h=[],y=0,v=t.onEmitNode,b=t.onSubstituteNode;return t.onEmitNode=function(t,n,i){if(1&r&&function(e){var t=e.kind;return 254===t||167===t||166===t||168===t||169===t}(n)){var a=6144&f.getNodeCheckFlags(n);if(a!==_){var o=_;return _=a,v(t,n,i),void(_=o)}}else if(r&&h[e.getNodeId(n)]){o=_;return _=0,v(t,n,i),void(_=o)}v(t,n,i)},t.onSubstituteNode=function(t,r){if(r=b(t,r),1===t&&_)return function(t){switch(t.kind){case 202:return z(t);case 203:return U(t);case 204:return function(t){var r=t.expression;if(e.isSuperProperty(r)){var n=e.isPropertyAccessExpression(r)?z(r):U(r);return c.createCallExpression(c.createPropertyAccessExpression(n,"call"),void 0,i([c.createThis()],t.arguments))}return t}(t)}return t}(r);return r},e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;k(1,!1),k(2,!e.isEffectiveStrictModeSourceFile(r,m));var n=e.visitEachChild(r,w,t);return e.addEmitHelpers(n,t.readEmitHelpers()),n}));function k(e,t){y=t?y|e:y&~e}function x(e){return 0!=(y&e)}function E(){return x(2)}function S(e,t,r){var n=e&~y;if(n){k(n,!0);var i=t(r);return k(n,!1),i}return t(r)}function D(r){return e.visitEachChild(r,w,t)}function w(r){if(0==(64&r.transformFlags))return r;switch(r.kind){case 130:return;case 215:return function(r){if(!x(1))return e.visitEachChild(r,w,t);return e.setOriginalNode(e.setTextRange(c.createYieldExpression(void 0,e.visitNode(r.expression,w,e.isExpression)),r),r)}(r);case 166:return S(3,C,r);case 253:return S(3,A,r);case 209:return S(3,N,r);case 210:return S(1,P,r);case 202:return o&&e.isPropertyAccessExpression(r)&&106===r.expression.kind&&o.add(r.name.escapedText),e.visitEachChild(r,w,t);case 203:return o&&106===r.expression.kind&&(s=!0),e.visitEachChild(r,w,t);case 168:case 169:case 167:case 254:case 223:return S(3,D,r);default:return e.visitEachChild(r,w,t)}}function T(r){if(e.isNodeWithPossibleHoistedDeclaration(r))switch(r.kind){case 234:return function(r){if(F(r.declarationList)){var n=O(r.declarationList,!1);return n?c.createExpressionStatement(n):void 0}return e.visitEachChild(r,w,t)}(r);case 239:return function(t){var r=t.initializer;return c.updateForStatement(t,F(r)?O(r,!1):e.visitNode(t.initializer,w,e.isForInitializer),e.visitNode(t.condition,w,e.isExpression),e.visitNode(t.incrementor,w,e.isExpression),e.visitNode(t.statement,T,e.isStatement,c.liftToBlock))}(r);case 240:return function(t){return c.updateForInStatement(t,F(t.initializer)?O(t.initializer,!0):e.visitNode(t.initializer,w,e.isForInitializer),e.visitNode(t.expression,w,e.isExpression),e.visitNode(t.statement,T,e.isStatement,c.liftToBlock))}(r);case 241:return function(t){return c.updateForOfStatement(t,e.visitNode(t.awaitModifier,w,e.isToken),F(t.initializer)?O(t.initializer,!0):e.visitNode(t.initializer,w,e.isForInitializer),e.visitNode(t.expression,w,e.isExpression),e.visitNode(t.statement,T,e.isStatement,c.liftToBlock))}(r);case 290:return function(r){var n,i=new e.Set;if(I(r.variableDeclaration,i),i.forEach((function(t,r){a.has(r)&&(n||(n=new e.Set(a)),n.delete(r))})),n){var o=a;a=n;var s=e.visitEachChild(r,T,t);return a=o,s}return e.visitEachChild(r,T,t)}(r);case 232:case 246:case 261:case 287:case 288:case 249:case 237:case 238:case 236:case 245:case 247:return e.visitEachChild(r,T,t);default:return e.Debug.assertNever(r,"Unhandled node.")}return w(r)}function C(r){return c.updateMethodDeclaration(r,void 0,e.visitNodes(r.modifiers,w,e.isModifier),r.asteriskToken,r.name,void 0,void 0,e.visitParameterList(r.parameters,w,t),void 0,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,w,t))}function A(r){return c.updateFunctionDeclaration(r,void 0,e.visitNodes(r.modifiers,w,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,w,t),void 0,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,w,t))}function N(r){return c.updateFunctionExpression(r,e.visitNodes(r.modifiers,w,e.isModifier),r.asteriskToken,r.name,void 0,e.visitParameterList(r.parameters,w,t),void 0,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,w,t))}function P(r){return c.updateArrowFunction(r,e.visitNodes(r.modifiers,w,e.isModifier),void 0,e.visitParameterList(r.parameters,w,t),void 0,r.equalsGreaterThanToken,2&e.getFunctionFlags(r)?j(r):e.visitFunctionBody(r.body,w,t))}function I(t,r){var n=t.name;if(e.isIdentifier(n))r.add(n.escapedText);else for(var i=0,a=n.elements;i<a.length;i++){var o=a[i];e.isOmittedExpression(o)||I(o,r)}}function F(t){return!!t&&e.isVariableDeclarationList(t)&&!(3&t.flags)&&t.declarations.some(L)}function O(t,r){!function(t){e.forEach(t.declarations,R)}(t);var n=e.getInitializedVariables(t);return 0===n.length?r?e.visitNode(c.converters.convertToAssignmentElementTarget(t.declarations[0].name),w,e.isExpression):void 0:c.inlineExpressions(e.map(n,M))}function R(t){var r=t.name;if(e.isIdentifier(r))p(r);else for(var n=0,i=r.elements;n<i.length;n++){var a=i[n];e.isOmittedExpression(a)||R(a)}}function M(t){var r=e.setSourceMapRange(c.createAssignment(c.converters.convertToAssignmentElementTarget(t.name),t.initializer),t);return e.visitNode(r,w,e.isExpression)}function L(t){var r=t.name;if(e.isIdentifier(r))return a.has(r.escapedText);for(var n=0,i=r.elements;n<i.length;n++){var o=i[n];if(!e.isOmittedExpression(o)&&L(o))return!0}return!1}function j(i){u();var p=e.getOriginalNode(i,e.isFunctionLike).type,m=g<2?function(t){var r=t&&e.getEntityNameFromTypeNode(t);if(r&&e.isEntityName(r)){var n=f.getTypeReferenceSerializationKind(r);if(n===e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue||n===e.TypeReferenceSerializationKind.Unknown)return r}return}(p):void 0,_=210===i.kind,y=0!=(8192&f.getNodeCheckFlags(i)),v=a;a=new e.Set;for(var b=0,k=i.parameters;b<k.length;b++){I(k[b],a)}var x,S=o,D=s;if(_||(o=new e.Set,s=!1),_){var T=l().createAwaiterHelper(E(),y,m,B(i.body)),C=d();if(e.some(C)){O=c.converters.convertToFunctionBlock(T);x=c.updateBlock(O,e.setTextRange(c.createNodeArray(e.concatenate(C,O.statements)),O.statements))}else x=T}else{var A=[],N=c.copyPrologue(i.body.statements,A,!1,w);A.push(c.createReturnStatement(l().createAwaiterHelper(E(),y,m,B(i.body,N)))),e.insertStatementsAfterStandardPrologue(A,d());var P=g>=2&&6144&f.getNodeCheckFlags(i);if(P&&(0==(1&r)&&(r|=1,t.enableSubstitution(204),t.enableSubstitution(202),t.enableSubstitution(203),t.enableEmitNotification(254),t.enableEmitNotification(166),t.enableEmitNotification(168),t.enableEmitNotification(169),t.enableEmitNotification(167),t.enableEmitNotification(234)),o.size)){var F=n(c,f,i,o);h[e.getNodeId(F)]=!0,e.insertStatementsAfterStandardPrologue(A,[F])}var O=c.createBlock(A,!0);e.setTextRange(O,i.body),P&&s&&(4096&f.getNodeCheckFlags(i)?e.addEmitHelper(O,e.advancedAsyncSuperHelper):2048&f.getNodeCheckFlags(i)&&e.addEmitHelper(O,e.asyncSuperHelper)),x=O}return a=v,_||(o=S,s=D),x}function B(t,r){return e.isBlock(t)?c.updateBlock(t,e.visitNodes(t.statements,T,e.isStatement,r)):c.converters.convertToFunctionBlock(e.visitNode(t,T,e.isConciseBody))}function z(t){return 106===t.expression.kind?e.setTextRange(c.createPropertyAccessExpression(c.createUniqueName("_super",48),t.name),t):t}function U(t){return 106===t.expression.kind?(r=t.argumentExpression,n=t,4096&_?e.setTextRange(c.createPropertyAccessExpression(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[r]),"value"),n):e.setTextRange(c.createCallExpression(c.createUniqueName("_superIndex",48),void 0,[r]),n)):t;var r,n}},e.createSuperAccessVariableStatement=n}(d||(d={})),function(e){var t,r;!function(e){e[e.AsyncMethodsWithSuper=1]="AsyncMethodsWithSuper"}(t||(t={})),function(e){e[e.None=0]="None",e[e.HasLexicalThis=1]="HasLexicalThis",e[e.IterationContainer=2]="IterationContainer",e[e.AncestorFactsMask=3]="AncestorFactsMask",e[e.SourceFileIncludes=1]="SourceFileIncludes",e[e.SourceFileExcludes=2]="SourceFileExcludes",e[e.StrictModeSourceFileIncludes=0]="StrictModeSourceFileIncludes",e[e.ClassOrFunctionIncludes=1]="ClassOrFunctionIncludes",e[e.ClassOrFunctionExcludes=2]="ClassOrFunctionExcludes",e[e.ArrowFunctionIncludes=0]="ArrowFunctionIncludes",e[e.ArrowFunctionExcludes=2]="ArrowFunctionExcludes",e[e.IterationStatementIncludes=2]="IterationStatementIncludes",e[e.IterationStatementExcludes=0]="IterationStatementExcludes"}(r||(r={})),e.transformES2018=function(t){var r=t.factory,n=t.getEmitHelperFactory,a=t.resumeLexicalEnvironment,o=t.endLexicalEnvironment,s=t.hoistVariableDeclaration,c=t.getEmitResolver(),l=t.getCompilerOptions(),u=e.getEmitScriptTarget(l),d=t.onEmitNode;t.onEmitNode=function(t,r,n){if(1&f&&function(e){var t=e.kind;return 254===t||167===t||166===t||168===t||169===t}(r)){var i=6144&c.getNodeCheckFlags(r);if(i!==b){var a=b;return b=i,d(t,r,n),void(b=a)}}else if(f&&x[e.getNodeId(r)]){a=b;return b=0,d(t,r,n),void(b=a)}d(t,r,n)};var p=t.onSubstituteNode;t.onSubstituteNode=function(t,n){if(n=p(t,n),1===t&&b)return function(t){switch(t.kind){case 202:return K(t);case 203:return W(t);case 204:return function(t){var n=t.expression;if(e.isSuperProperty(n)){var a=e.isPropertyAccessExpression(n)?K(n):W(n);return r.createCallExpression(r.createPropertyAccessExpression(a,"call"),void 0,i([r.createThis()],t.arguments))}return t}(t)}return t}(n);return n};var f,m,g,_,h,y,v=!1,b=0,k=0,x=[];return e.chainBundle(t,(function(n){if(n.isDeclarationFile)return n;g=n;var i=function(n){var i=E(2,e.isEffectiveStrictModeSourceFile(n,l)?0:1);v=!1;var a=e.visitEachChild(n,w,t),o=e.concatenate(a.statements,_&&[r.createVariableStatement(void 0,r.createVariableDeclarationList(_))]),s=r.updateSourceFile(a,e.setTextRange(r.createNodeArray(o),n.statements));return S(i),s}(n);return e.addEmitHelpers(i,t.readEmitHelpers()),g=void 0,_=void 0,i}));function E(e,t){var r=k;return k=3&(k&~e|t),r}function S(e){k=e}function D(t){_=e.append(_,r.createVariableDeclaration(t))}function w(e){return P(e,!1)}function T(e){return P(e,!0)}function C(e){if(130!==e.kind)return e}function A(e,t,r,n){if(function(e,t){return k!==(k&~e|t)}(r,n)){var i=E(r,n),a=e(t);return S(i),a}return e(t)}function N(r){return e.visitEachChild(r,w,t)}function P(a,o){if(0==(32&a.transformFlags))return a;switch(a.kind){case 215:return function(i){if(2&m&&1&m)return e.setOriginalNode(e.setTextRange(r.createYieldExpression(void 0,n().createAwaitHelper(e.visitNode(i.expression,w,e.isExpression))),i),i);return e.visitEachChild(i,w,t)}(a);case 221:return function(i){if(2&m&&1&m){if(i.asteriskToken){var a=e.visitNode(e.Debug.assertDefined(i.expression),w,e.isExpression);return e.setOriginalNode(e.setTextRange(r.createYieldExpression(void 0,n().createAwaitHelper(r.updateYieldExpression(i,i.asteriskToken,e.setTextRange(n().createAsyncDelegatorHelper(e.setTextRange(n().createAsyncValuesHelper(a),a)),a)))),i),i)}return e.setOriginalNode(e.setTextRange(r.createYieldExpression(void 0,R(i.expression?e.visitNode(i.expression,w,e.isExpression):r.createVoidZero())),i),i)}return e.visitEachChild(i,w,t)}(a);case 244:return function(n){if(2&m&&1&m)return r.updateReturnStatement(n,R(n.expression?e.visitNode(n.expression,w,e.isExpression):r.createVoidZero()));return e.visitEachChild(n,w,t)}(a);case 247:return function(n){if(2&m){var i=e.unwrapInnermostStatementOfLabel(n);return 241===i.kind&&i.awaitModifier?O(i,n):r.restoreEnclosingLabel(e.visitNode(i,w,e.isStatement,r.liftToBlock),n)}return e.visitEachChild(n,w,t)}(a);case 201:return function(i){if(16384&i.transformFlags){var a=function(t){for(var n,i=[],a=0,o=t;a<o.length;a++){var s=o[a];if(293===s.kind){n&&(i.push(r.createObjectLiteralExpression(n)),n=void 0);var c=s.expression;i.push(e.visitNode(c,w,e.isExpression))}else n=e.append(n,291===s.kind?r.createPropertyAssignment(s.name,e.visitNode(s.initializer,w,e.isExpression)):e.visitNode(s,w,e.isObjectLiteralElementLike))}n&&i.push(r.createObjectLiteralExpression(n));return i}(i.properties);a.length&&201!==a[0].kind&&a.unshift(r.createObjectLiteralExpression());var o=a[0];if(a.length>1){for(var s=1;s<a.length;s++)o=n().createAssignHelper([o,a[s]]);return o}return n().createAssignHelper(a)}return e.visitEachChild(i,w,t)}(a);case 218:return function(n,i){if(e.isDestructuringAssignment(n)&&16384&n.left.transformFlags)return e.flattenDestructuringAssignment(n,w,t,1,!i);if(27===n.operatorToken.kind)return r.updateBinaryExpression(n,e.visitNode(n.left,T,e.isExpression),n.operatorToken,e.visitNode(n.right,i?T:w,e.isExpression));return e.visitEachChild(n,w,t)}(a,o);case 340:return function(n,i){if(i)return e.visitEachChild(n,T,t);for(var a,o=0;o<n.elements.length;o++){var s=n.elements[o],c=e.visitNode(s,o<n.elements.length-1?T:w,e.isExpression);(a||c!==s)&&(a||(a=n.elements.slice(0,o)),a.push(c))}var l=a?e.setTextRange(r.createNodeArray(a),n.elements):n.elements;return r.updateCommaListExpression(n,l)}(a,o);case 290:return function(n){if(n.variableDeclaration&&e.isBindingPattern(n.variableDeclaration.name)&&16384&n.variableDeclaration.name.transformFlags){var a=r.getGeneratedNameForNode(n.variableDeclaration.name),o=r.updateVariableDeclaration(n.variableDeclaration,n.variableDeclaration.name,void 0,void 0,a),s=e.flattenDestructuringBinding(o,w,t,1),c=e.visitNode(n.block,w,e.isBlock);return e.some(s)&&(c=r.updateBlock(c,i([r.createVariableStatement(void 0,s)],c.statements))),r.updateCatchClause(n,r.updateVariableDeclaration(n.variableDeclaration,a,void 0,void 0,void 0),c)}return e.visitEachChild(n,w,t)}(a);case 234:return function(r){if(e.hasSyntacticModifier(r,1)){var n=v;v=!0;var i=e.visitEachChild(r,w,t);return v=n,i}return e.visitEachChild(r,w,t)}(a);case 251:return function(e){if(v){var t=v;v=!1;var r=I(e,!0);return v=t,r}return I(e,!1)}(a);case 237:case 238:case 240:return A(N,a,0,2);case 241:return O(a,void 0);case 239:return A(F,a,0,2);case 214:case 235:return function(r){return e.visitEachChild(r,T,t)}(a);case 167:return A(M,a,2,1);case 166:return A(B,a,2,1);case 168:return A(L,a,2,1);case 169:return A(j,a,2,1);case 253:return A(z,a,2,1);case 209:return A(q,a,2,1);case 210:return A(U,a,2,0);case 161:return function(n){if(16384&n.transformFlags)return r.updateParameterDeclaration(n,void 0,void 0,n.dotDotDotToken,r.getGeneratedNameForNode(n),void 0,void 0,e.visitNode(n.initializer,w,e.isExpression));return e.visitEachChild(n,w,t)}(a);case 208:return function(r,n){return e.visitEachChild(r,n?T:w,t)}(a,o);case 206:return function(r){return e.processTaggedTemplateExpression(t,r,w,g,D,e.ProcessLevel.LiftRestriction)}(a);case 202:return h&&e.isPropertyAccessExpression(a)&&106===a.expression.kind&&h.add(a.name.escapedText),e.visitEachChild(a,w,t);case 203:return h&&106===a.expression.kind&&(y=!0),e.visitEachChild(a,w,t);case 254:case 223:return A(N,a,2,1);default:return e.visitEachChild(a,w,t)}}function I(r,n){return e.isBindingPattern(r.name)&&16384&r.name.transformFlags?e.flattenDestructuringBinding(r,w,t,1,void 0,n):e.visitEachChild(r,w,t)}function F(t){return r.updateForStatement(t,e.visitNode(t.initializer,T,e.isForInitializer),e.visitNode(t.condition,w,e.isExpression),e.visitNode(t.incrementor,T,e.isExpression),e.visitNode(t.statement,w,e.isStatement))}function O(i,a){var o=E(0,2);16384&i.initializer.transformFlags&&(i=function(t){var n=e.skipParentheses(t.initializer);if(e.isVariableDeclarationList(n)||e.isAssignmentPattern(n)){var i=void 0,a=void 0,o=r.createTempVariable(void 0),s=[e.createForOfBindingStatement(r,n,o)];return e.isBlock(t.statement)?(e.addRange(s,t.statement.statements),i=t.statement,a=t.statement.statements):t.statement&&(e.append(s,t.statement),i=t.statement,a=t.statement),r.updateForOfStatement(t,t.awaitModifier,e.setTextRange(r.createVariableDeclarationList([e.setTextRange(r.createVariableDeclaration(o),t.initializer)],1),t.initializer),t.expression,e.setTextRange(r.createBlock(e.setTextRange(r.createNodeArray(s),a),!0),i))}return t}(i));var c=i.awaitModifier?function(t,i,a){var o=e.visitNode(t.expression,w,e.isExpression),c=e.isIdentifier(o)?r.getGeneratedNameForNode(o):r.createTempVariable(void 0),l=e.isIdentifier(o)?r.getGeneratedNameForNode(c):r.createTempVariable(void 0),u=r.createUniqueName("e"),d=r.getGeneratedNameForNode(u),p=r.createTempVariable(void 0),f=e.setTextRange(n().createAsyncValuesHelper(o),t.expression),m=r.createCallExpression(r.createPropertyAccessExpression(c,"next"),void 0,[]),g=r.createPropertyAccessExpression(l,"done"),_=r.createPropertyAccessExpression(l,"value"),h=r.createFunctionCallCall(p,c,[]);s(u),s(p);var y=2&a?r.inlineExpressions([r.createAssignment(u,r.createVoidZero()),f]):f,v=e.setEmitFlags(e.setTextRange(r.createForStatement(e.setEmitFlags(e.setTextRange(r.createVariableDeclarationList([e.setTextRange(r.createVariableDeclaration(c,void 0,void 0,y),t.expression),r.createVariableDeclaration(l)]),t.expression),2097152),r.createComma(r.createAssignment(l,R(m)),r.createLogicalNot(g)),void 0,function(t,n){var i,a,o=e.createForOfBindingStatement(r,t.initializer,n),s=[e.visitNode(o,w,e.isStatement)],c=e.visitNode(t.statement,w,e.isStatement);e.isBlock(c)?(e.addRange(s,c.statements),i=c,a=c.statements):s.push(c);return e.setEmitFlags(e.setTextRange(r.createBlock(e.setTextRange(r.createNodeArray(s),a),!0),i),432)}(t,_)),t),256);return r.createTryStatement(r.createBlock([r.restoreEnclosingLabel(v,i)]),r.createCatchClause(r.createVariableDeclaration(d),e.setEmitFlags(r.createBlock([r.createExpressionStatement(r.createAssignment(u,r.createObjectLiteralExpression([r.createPropertyAssignment("error",d)])))]),1)),r.createBlock([r.createTryStatement(r.createBlock([e.setEmitFlags(r.createIfStatement(r.createLogicalAnd(r.createLogicalAnd(l,r.createLogicalNot(g)),r.createAssignment(p,r.createPropertyAccessExpression(c,"return"))),r.createExpressionStatement(R(h))),1)]),void 0,e.setEmitFlags(r.createBlock([e.setEmitFlags(r.createIfStatement(u,r.createThrowStatement(r.createPropertyAccessExpression(u,"error"))),1)]),1))]))}(i,a,o):r.restoreEnclosingLabel(e.visitEachChild(i,w,t),a);return S(o),c}function R(e){return 1&m?r.createYieldExpression(void 0,n().createAwaitHelper(e)):r.createAwaitExpression(e)}function M(n){var i=m;m=0;var a=r.updateConstructorDeclaration(n,void 0,n.modifiers,e.visitParameterList(n.parameters,w,t),V(n));return m=i,a}function L(n){var i=m;m=0;var a=r.updateGetAccessorDeclaration(n,void 0,n.modifiers,e.visitNode(n.name,w,e.isPropertyName),e.visitParameterList(n.parameters,w,t),void 0,V(n));return m=i,a}function j(n){var i=m;m=0;var a=r.updateSetAccessorDeclaration(n,void 0,n.modifiers,e.visitNode(n.name,w,e.isPropertyName),e.visitParameterList(n.parameters,w,t),V(n));return m=i,a}function B(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateMethodDeclaration(n,void 0,1&m?e.visitNodes(n.modifiers,C,e.isModifier):n.modifiers,2&m?void 0:n.asteriskToken,e.visitNode(n.name,w,e.isPropertyName),e.visitNode(void 0,w,e.isToken),void 0,e.visitParameterList(n.parameters,w,t),void 0,2&m&&1&m?J(n):V(n));return m=i,a}function z(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateFunctionDeclaration(n,void 0,1&m?e.visitNodes(n.modifiers,C,e.isModifier):n.modifiers,2&m?void 0:n.asteriskToken,n.name,void 0,e.visitParameterList(n.parameters,w,t),void 0,2&m&&1&m?J(n):V(n));return m=i,a}function U(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateArrowFunction(n,n.modifiers,void 0,e.visitParameterList(n.parameters,w,t),void 0,n.equalsGreaterThanToken,V(n));return m=i,a}function q(n){var i=m;m=e.getFunctionFlags(n);var a=r.updateFunctionExpression(n,1&m?e.visitNodes(n.modifiers,C,e.isModifier):n.modifiers,2&m?void 0:n.asteriskToken,n.name,void 0,e.visitParameterList(n.parameters,w,t),void 0,2&m&&1&m?J(n):V(n));return m=i,a}function J(i){a();var s=[],l=r.copyPrologue(i.body.statements,s,!1,w);H(s,i);var d=h,p=y;h=new e.Set,y=!1;var m=r.createReturnStatement(n().createAsyncGeneratorHelper(r.createFunctionExpression(void 0,r.createToken(41),i.name&&r.getGeneratedNameForNode(i.name),void 0,[],void 0,r.updateBlock(i.body,e.visitLexicalEnvironment(i.body.statements,w,t,l))),!!(1&k))),g=u>=2&&6144&c.getNodeCheckFlags(i);if(g){0==(1&f)&&(f|=1,t.enableSubstitution(204),t.enableSubstitution(202),t.enableSubstitution(203),t.enableEmitNotification(254),t.enableEmitNotification(166),t.enableEmitNotification(168),t.enableEmitNotification(169),t.enableEmitNotification(167),t.enableEmitNotification(234));var _=e.createSuperAccessVariableStatement(r,c,i,h);x[e.getNodeId(_)]=!0,e.insertStatementsAfterStandardPrologue(s,[_])}s.push(m),e.insertStatementsAfterStandardPrologue(s,o());var v=r.updateBlock(i.body,s);return g&&y&&(4096&c.getNodeCheckFlags(i)?e.addEmitHelper(v,e.advancedAsyncSuperHelper):2048&c.getNodeCheckFlags(i)&&e.addEmitHelper(v,e.asyncSuperHelper)),h=d,y=p,v}function V(t){var n;a();var i=0,s=[],c=null!==(n=e.visitNode(t.body,w,e.isConciseBody))&&void 0!==n?n:r.createBlock([]);e.isBlock(c)&&(i=r.copyPrologue(c.statements,s,!1,w)),e.addRange(s,H(void 0,t));var l=o();if(i>0||e.some(s)||e.some(l)){var u=r.converters.convertToFunctionBlock(c,!0);return e.insertStatementsAfterStandardPrologue(s,l),e.addRange(s,u.statements.slice(i)),r.updateBlock(u,e.setTextRange(r.createNodeArray(s),u.statements))}return c}function H(n,i){for(var a=0,o=i.parameters;a<o.length;a++){var s=o[a];if(16384&s.transformFlags){var c=r.getGeneratedNameForNode(s),l=e.flattenDestructuringBinding(s,w,t,1,c,!1,!0);if(e.some(l)){var u=r.createVariableStatement(void 0,r.createVariableDeclarationList(l));e.setEmitFlags(u,1048576),n=e.append(n,u)}}}return n}function K(t){return 106===t.expression.kind?e.setTextRange(r.createPropertyAccessExpression(r.createUniqueName("_super",48),t.name),t):t}function W(t){return 106===t.expression.kind?(n=t.argumentExpression,i=t,4096&b?e.setTextRange(r.createPropertyAccessExpression(r.createCallExpression(r.createIdentifier("_superIndex"),void 0,[n]),"value"),i):e.setTextRange(r.createCallExpression(r.createIdentifier("_superIndex"),void 0,[n]),i)):t;var n,i}}}(d||(d={})),function(e){e.transformES2019=function(t){var r=t.factory;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,n,t)}));function n(i){return 0==(16&i.transformFlags)?i:290===i.kind?function(i){if(!i.variableDeclaration)return r.updateCatchClause(i,r.createVariableDeclaration(r.createTempVariable(void 0)),e.visitNode(i.block,n,e.isBlock));return e.visitEachChild(i,n,t)}(i):e.visitEachChild(i,n,t)}}}(d||(d={})),function(e){e.transformES2020=function(t){var r=t.factory,n=t.hoistVariableDeclaration;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,i,t)}));function i(c){if(0==(8&c.transformFlags))return c;switch(c.kind){case 202:case 203:case 204:if(32&c.flags){var l=o(c,!1,!1);return e.Debug.assertNotNode(l,e.isSyntheticReference),l}return e.visitEachChild(c,i,t);case 218:return 60===c.operatorToken.kind?function(t){var a=e.visitNode(t.left,i,e.isExpression),o=a;e.isSimpleCopiableExpression(a)||(o=r.createTempVariable(n),a=r.createAssignment(o,a));return e.setTextRange(r.createConditionalExpression(s(a,o),void 0,o,void 0,e.visitNode(t.right,i,e.isExpression)),t)}(c):e.visitEachChild(c,i,t);case 212:return function(t){return e.isOptionalChain(e.skipParentheses(t.expression))?e.setOriginalNode(a(t.expression,!1,!0),t):r.updateDeleteExpression(t,e.visitNode(t.expression,i,e.isExpression))}(c);default:return e.visitEachChild(c,i,t)}}function a(s,c,l){switch(s.kind){case 208:return function(t,n,i){var o=a(t.expression,n,i);return e.isSyntheticReference(o)?r.createSyntheticReferenceExpression(r.updateParenthesizedExpression(t,o.expression),o.thisArg):r.updateParenthesizedExpression(t,o)}(s,c,l);case 202:case 203:return function(t,a,s){if(e.isOptionalChain(t))return o(t,a,s);var c,l=e.visitNode(t.expression,i,e.isExpression);return e.Debug.assertNotNode(l,e.isSyntheticReference),a&&(e.isSimpleCopiableExpression(l)?c=l:(c=r.createTempVariable(n),l=r.createAssignment(c,l))),l=202===t.kind?r.updatePropertyAccessExpression(t,l,e.visitNode(t.name,i,e.isIdentifier)):r.updateElementAccessExpression(t,l,e.visitNode(t.argumentExpression,i,e.isExpression)),c?r.createSyntheticReferenceExpression(l,c):l}(s,c,l);case 204:return function(r,n){return e.isOptionalChain(r)?o(r,n,!1):e.visitEachChild(r,i,t)}(s,c);default:return e.visitNode(s,i,e.isExpression)}}function o(t,o,c){var l=function(t){e.Debug.assertNotNode(t,e.isNonNullChain);for(var r=[t];!t.questionDotToken&&!e.isTaggedTemplateExpression(t);)t=e.cast(e.skipPartiallyEmittedExpressions(t.expression),e.isOptionalChain),e.Debug.assertNotNode(t,e.isNonNullChain),r.unshift(t);return{expression:t.expression,chain:r}}(t),u=l.expression,d=l.chain,p=a(u,e.isCallChain(d[0]),!1),f=e.isSyntheticReference(p)?p.thisArg:void 0,m=e.isSyntheticReference(p)?p.expression:p,g=m;e.isSimpleCopiableExpression(m)||(g=r.createTempVariable(n),m=r.createAssignment(g,m));for(var _,h=g,y=0;y<d.length;y++){var v=d[y];switch(v.kind){case 202:case 203:y===d.length-1&&o&&(e.isSimpleCopiableExpression(h)?_=h:(_=r.createTempVariable(n),h=r.createAssignment(_,h))),h=202===v.kind?r.createPropertyAccessExpression(h,e.visitNode(v.name,i,e.isIdentifier)):r.createElementAccessExpression(h,e.visitNode(v.argumentExpression,i,e.isExpression));break;case 204:h=0===y&&f?r.createFunctionCallCall(h,106===f.kind?r.createThis():f,e.visitNodes(v.arguments,i,e.isExpression)):r.createCallExpression(h,void 0,e.visitNodes(v.arguments,i,e.isExpression))}e.setOriginalNode(h,v)}var b=c?r.createConditionalExpression(s(m,g,!0),void 0,r.createTrue(),void 0,r.createDeleteExpression(h)):r.createConditionalExpression(s(m,g,!0),void 0,r.createVoidZero(),void 0,h);return e.setTextRange(b,t),_?r.createSyntheticReferenceExpression(b,_):b}function s(e,t,n){return r.createBinaryExpression(r.createBinaryExpression(e,r.createToken(n?36:37),r.createNull()),r.createToken(n?56:55),r.createBinaryExpression(t,r.createToken(n?36:37),r.createVoidZero()))}}}(d||(d={})),function(e){e.transformESNext=function(t){var r=t.hoistVariableDeclaration,n=t.factory;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,i,t)}));function i(a){if(0==(4&a.transformFlags))return a;if(218===a.kind){var o=a;if(e.isLogicalOrCoalescingAssignmentExpression(o))return function(t){var a=t.operatorToken,o=e.getNonAssignmentOperatorForCompoundAssignment(a.kind),s=e.skipParentheses(e.visitNode(t.left,i,e.isLeftHandSideExpression)),c=s,l=e.skipParentheses(e.visitNode(t.right,i,e.isExpression));if(e.isAccessExpression(s)){var u=e.isSimpleCopiableExpression(s.expression),d=u?s.expression:n.createTempVariable(r),p=u?s.expression:n.createAssignment(d,s.expression);if(e.isPropertyAccessExpression(s))c=n.createPropertyAccessExpression(d,s.name),s=n.createPropertyAccessExpression(p,s.name);else{var f=e.isSimpleCopiableExpression(s.argumentExpression),m=f?s.argumentExpression:n.createTempVariable(r);c=n.createElementAccessExpression(d,m),s=n.createElementAccessExpression(p,f?s.argumentExpression:n.createAssignment(m,s.argumentExpression))}}return n.createBinaryExpression(s,o,n.createParenthesizedExpression(n.createAssignment(c,l)))}(o)}return e.visitEachChild(a,i,t)}}}(d||(d={})),function(e){e.transformJsx=function(r){var n,i,a=r.factory,o=r.getEmitHelperFactory,s=r.getCompilerOptions();return e.chainBundle(r,(function(t){if(t.isDeclarationFile)return t;n=t,(i={}).importSpecifier=e.getJSXImplicitImportBase(s,t);var o=e.visitEachChild(t,d,r);e.addEmitHelpers(o,r.readEmitHelpers());var c=o.statements;i.filenameDeclaration&&(c=e.insertStatementAfterCustomPrologue(c.slice(),a.createVariableStatement(void 0,a.createVariableDeclarationList([i.filenameDeclaration],2))));if(i.utilizedImplicitRuntimeImports)for(var l=0,u=e.arrayFrom(i.utilizedImplicitRuntimeImports.entries());l<u.length;l++){var p=u[l],f=p[0],m=p[1];if(e.isExternalModule(t)){var g=a.createImportDeclaration(void 0,void 0,a.createImportClause(!1,void 0,a.createNamedImports(e.arrayFrom(m.values()))),a.createStringLiteral(f));e.setParentRecursive(g,!1),c=e.insertStatementAfterCustomPrologue(c.slice(),g)}else if(e.isExternalOrCommonJsModule(t)){var _=a.createVariableStatement(void 0,a.createVariableDeclarationList([a.createVariableDeclaration(a.createObjectBindingPattern(e.map(e.arrayFrom(m.values()),(function(e){return a.createBindingElement(void 0,e.propertyName,e.name)}))),void 0,void 0,a.createCallExpression(a.createIdentifier("require"),void 0,[a.createStringLiteral(f)]))],2));e.setParentRecursive(_,!1),c=e.insertStatementAfterCustomPrologue(c.slice(),_)}}c!==o.statements&&(o=a.updateSourceFile(o,c));return i=void 0,o}));function c(){if(i.filenameDeclaration)return i.filenameDeclaration.name;var e=a.createVariableDeclaration(a.createUniqueName("_jsxFileName",48),void 0,void 0,a.createStringLiteral(n.fileName));return i.filenameDeclaration=e,i.filenameDeclaration.name}function l(e){var t=function(e){return 5===s.jsx?"jsxDEV":e>1?"jsxs":"jsx"}(e);return u(t)}function u(t){var r,n,o="createElement"===t?i.importSpecifier:e.getJSXRuntimeImport(i.importSpecifier,s),c=null===(n=null===(r=i.utilizedImplicitRuntimeImports)||void 0===r?void 0:r.get(o))||void 0===n?void 0:n.get(t);if(c)return c.name;i.utilizedImplicitRuntimeImports||(i.utilizedImplicitRuntimeImports=e.createMap());var l=i.utilizedImplicitRuntimeImports.get(o);l||(l=e.createMap(),i.utilizedImplicitRuntimeImports.set(o,l));var u=a.createUniqueName("_"+t,112),d=a.createImportSpecifier(a.createIdentifier(t),u);return u.generatedImportReference=d,l.set(t,d),u}function d(t){return 2&t.transformFlags?function(t){switch(t.kind){case 276:return m(t,!1);case 277:return g(t,!1);case 280:return _(t,!1);case 286:return A(t);default:return e.visitEachChild(t,d,r)}}(t):t}function p(t){switch(t.kind){case 11:return function(t){var r=function(t){for(var r,n=0,i=-1,a=0;a<t.length;a++){var o=t.charCodeAt(a);e.isLineBreak(o)?(-1!==n&&-1!==i&&(r=w(r,t.substr(n,i-n+1))),n=-1):e.isWhiteSpaceSingleLine(o)||(i=a,-1===n&&(n=a))}return-1!==n?w(r,t.substr(n)):r}(t.text);return void 0===r?void 0:a.createStringLiteral(r)}(t);case 286:return A(t);case 276:return m(t,!0);case 277:return g(t,!0);case 280:return _(t,!0);default:return e.Debug.failBadSyntaxKind(t)}}function f(t){return void 0===i.importSpecifier||function(t){for(var r=!1,n=0,i=t.attributes.properties;n<i.length;n++){var a=i[n];if(e.isJsxSpreadAttribute(a))r=!0;else if(r&&e.isJsxAttribute(a)&&"key"===a.name.escapedText)return!0}return!1}(t)}function m(e,t){return(f(e.openingElement)?b:y)(e.openingElement,e.children,t,e)}function g(e,t){return(f(e)?b:y)(e,void 0,t,e)}function _(e,t){return(void 0===i.importSpecifier?x:k)(e.openingFragment,e.children,t,e)}function h(t){var r=e.getSemanticJsxChildren(t);if(1===e.length(r)){var n=p(r[0]);return n&&a.createObjectLiteralExpression([a.createPropertyAssignment("children",n)])}var i=e.mapDefined(t,p);return i.length?a.createObjectLiteralExpression([a.createPropertyAssignment("children",a.createArrayLiteralExpression(i))]):void 0}function y(t,r,n,i){var s=C(t),c=e.find(t.attributes.properties,(function(t){return!!t.name&&e.isIdentifier(t.name)&&"key"===t.name.escapedText})),l=c?e.filter(t.attributes.properties,(function(e){return e!==c})):t.attributes.properties,u=[];if(l.length&&(u=e.flatten(e.spanMap(l,e.isJsxSpreadAttribute,(function(t,r){return r?e.map(t,E):a.createObjectLiteralExpression(e.map(t,S))}))),e.isJsxSpreadAttribute(l[0])&&u.unshift(a.createObjectLiteralExpression())),r&&r.length){var d=h(r);d&&u.push(d)}return v(s,0===u.length?a.createObjectLiteralExpression([]):e.singleOrUndefined(u)||o().createAssignHelper(u),c,e.length(e.getSemanticJsxChildren(r||e.emptyArray)),n,i)}function v(t,r,i,o,u,d){var p=[t,r,i?D(i.initializer):a.createVoidZero()];if(5===s.jsx){var f=e.getOriginalNode(n);if(f&&e.isSourceFile(f)){p.push(o>1?a.createTrue():a.createFalse());var m=e.getLineAndCharacterOfPosition(f,d.pos);p.push(a.createObjectLiteralExpression([a.createPropertyAssignment("fileName",c()),a.createPropertyAssignment("lineNumber",a.createNumericLiteral(m.line+1)),a.createPropertyAssignment("columnNumber",a.createNumericLiteral(m.character+1))])),p.push(a.createThis())}}var g=e.setTextRange(a.createCallExpression(l(o),void 0,p),d);return u&&e.startOnNewLine(g),g}function b(t,c,l,d){var f,m=C(t),g=t.attributes.properties;if(0===g.length)f=a.createNull();else{var _=e.flatten(e.spanMap(g,e.isJsxSpreadAttribute,(function(t,r){return r?e.map(t,E):a.createObjectLiteralExpression(e.map(t,S))})));e.isJsxSpreadAttribute(g[0])&&_.unshift(a.createObjectLiteralExpression()),(f=e.singleOrUndefined(_))||(f=o().createAssignHelper(_))}var h=void 0===i.importSpecifier?e.createJsxFactoryExpression(a,r.getEmitResolver().getJsxFactoryEntity(n),s.reactNamespace,t):u("createElement"),y=e.createExpressionForJsxElement(a,h,m,f,e.mapDefined(c,p),d);return l&&e.startOnNewLine(y),y}function k(t,r,n,i){var o;if(r&&r.length){var s=h(r);s&&(o=s)}return v(u("Fragment"),o||a.createObjectLiteralExpression([]),void 0,e.length(e.getSemanticJsxChildren(r)),n,i)}function x(t,i,o,c){var l=e.createExpressionForJsxFragment(a,r.getEmitResolver().getJsxFactoryEntity(n),r.getEmitResolver().getJsxFragmentFactoryEntity(n),s.reactNamespace,e.mapDefined(i,p),t,c);return o&&e.startOnNewLine(l),l}function E(t){return e.visitNode(t.expression,d,e.isExpression)}function S(t){var r=function(t){var r=t.name,n=e.idText(r);return/^[A-Za-z_]\w*$/.test(n)?r:a.createStringLiteral(n)}(t),n=D(t.initializer);return a.createPropertyAssignment(r,n)}function D(t){if(void 0===t)return a.createTrue();if(10===t.kind){var r=void 0!==t.singleQuote?t.singleQuote:!e.isStringDoubleQuoted(t,n),i=a.createStringLiteral((o=t.text,((s=T(o))===o?void 0:s)||t.text),r);return e.setTextRange(i,t)}return 286===t.kind?void 0===t.expression?a.createTrue():e.visitNode(t.expression,d,e.isExpression):e.Debug.failBadSyntaxKind(t);var o,s}function w(e,t){var r=T(t);return void 0===e?r:e+" "+r}function T(r){return r.replace(/&((#((\d+)|x([\da-fA-F]+)))|(\w+));/g,(function(r,n,i,a,o,s,c){if(o)return e.utf16EncodeAsString(parseInt(o,10));if(s)return e.utf16EncodeAsString(parseInt(s,16));var l=t.get(c);return l?e.utf16EncodeAsString(l):r}))}function C(t){if(276===t.kind)return C(t.openingElement);var r=t.tagName;return e.isIdentifier(r)&&e.isIntrinsicJsxName(r.escapedText)?a.createStringLiteral(e.idText(r)):e.createExpressionFromEntityName(a,r)}function A(t){return e.visitNode(t.expression,d,e.isExpression)}};var t=new e.Map(e.getEntries({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830}))}(d||(d={})),function(e){e.transformES2016=function(t){var r=t.factory,n=t.hoistVariableDeclaration;return e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;return e.visitEachChild(r,i,t)}));function i(a){return 0==(128&a.transformFlags)?a:218===a.kind?function(a){switch(a.operatorToken.kind){case 66:return function(t){var a,o,s=e.visitNode(t.left,i,e.isExpression),c=e.visitNode(t.right,i,e.isExpression);if(e.isElementAccessExpression(s)){var l=r.createTempVariable(n),u=r.createTempVariable(n);a=e.setTextRange(r.createElementAccessExpression(e.setTextRange(r.createAssignment(l,s.expression),s.expression),e.setTextRange(r.createAssignment(u,s.argumentExpression),s.argumentExpression)),s),o=e.setTextRange(r.createElementAccessExpression(l,u),s)}else if(e.isPropertyAccessExpression(s)){l=r.createTempVariable(n);a=e.setTextRange(r.createPropertyAccessExpression(e.setTextRange(r.createAssignment(l,s.expression),s.expression),s.name),s),o=e.setTextRange(r.createPropertyAccessExpression(l,s.name),s)}else a=s,o=s;return e.setTextRange(r.createAssignment(a,e.setTextRange(r.createGlobalMethodCall("Math","pow",[o,c]),t)),t)}(a);case 42:return function(t){var n=e.visitNode(t.left,i,e.isExpression),a=e.visitNode(t.right,i,e.isExpression);return e.setTextRange(r.createGlobalMethodCall("Math","pow",[n,a]),t)}(a);default:return e.visitEachChild(a,i,t)}}(a):e.visitEachChild(a,i,t)}}}(d||(d={})),function(e){var t,r,n,a,o;!function(e){e[e.CapturedThis=1]="CapturedThis",e[e.BlockScopedBindings=2]="BlockScopedBindings"}(t||(t={})),function(e){e[e.Body=1]="Body",e[e.Initializer=2]="Initializer"}(r||(r={})),function(e){e[e.ToOriginal=0]="ToOriginal",e[e.ToOutParameter=1]="ToOutParameter"}(n||(n={})),function(e){e[e.Break=2]="Break",e[e.Continue=4]="Continue",e[e.Return=8]="Return"}(a||(a={})),function(e){e[e.None=0]="None",e[e.Function=1]="Function",e[e.ArrowFunction=2]="ArrowFunction",e[e.AsyncFunctionBody=4]="AsyncFunctionBody",e[e.NonStaticClassElement=8]="NonStaticClassElement",e[e.CapturesThis=16]="CapturesThis",e[e.ExportedVariableStatement=32]="ExportedVariableStatement",e[e.TopLevel=64]="TopLevel",e[e.Block=128]="Block",e[e.IterationStatement=256]="IterationStatement",e[e.IterationStatementBlock=512]="IterationStatementBlock",e[e.IterationContainer=1024]="IterationContainer",e[e.ForStatement=2048]="ForStatement",e[e.ForInOrForOfStatement=4096]="ForInOrForOfStatement",e[e.ConstructorWithCapturedSuper=8192]="ConstructorWithCapturedSuper",e[e.AncestorFactsMask=16383]="AncestorFactsMask",e[e.BlockScopeIncludes=0]="BlockScopeIncludes",e[e.BlockScopeExcludes=7104]="BlockScopeExcludes",e[e.SourceFileIncludes=64]="SourceFileIncludes",e[e.SourceFileExcludes=8064]="SourceFileExcludes",e[e.FunctionIncludes=65]="FunctionIncludes",e[e.FunctionExcludes=16286]="FunctionExcludes",e[e.AsyncFunctionBodyIncludes=69]="AsyncFunctionBodyIncludes",e[e.AsyncFunctionBodyExcludes=16278]="AsyncFunctionBodyExcludes",e[e.ArrowFunctionIncludes=66]="ArrowFunctionIncludes",e[e.ArrowFunctionExcludes=15232]="ArrowFunctionExcludes",e[e.ConstructorIncludes=73]="ConstructorIncludes",e[e.ConstructorExcludes=16278]="ConstructorExcludes",e[e.DoOrWhileStatementIncludes=1280]="DoOrWhileStatementIncludes",e[e.DoOrWhileStatementExcludes=0]="DoOrWhileStatementExcludes",e[e.ForStatementIncludes=3328]="ForStatementIncludes",e[e.ForStatementExcludes=5056]="ForStatementExcludes",e[e.ForInOrForOfStatementIncludes=5376]="ForInOrForOfStatementIncludes",e[e.ForInOrForOfStatementExcludes=3008]="ForInOrForOfStatementExcludes",e[e.BlockIncludes=128]="BlockIncludes",e[e.BlockExcludes=6976]="BlockExcludes",e[e.IterationStatementBlockIncludes=512]="IterationStatementBlockIncludes",e[e.IterationStatementBlockExcludes=7104]="IterationStatementBlockExcludes",e[e.NewTarget=16384]="NewTarget",e[e.CapturedLexicalThis=32768]="CapturedLexicalThis",e[e.SubtreeFactsMask=-16384]="SubtreeFactsMask",e[e.ArrowFunctionSubtreeExcludes=0]="ArrowFunctionSubtreeExcludes",e[e.FunctionSubtreeExcludes=49152]="FunctionSubtreeExcludes"}(o||(o={})),e.transformES2015=function(t){var r,n,a,o,s,c,l=t.factory,u=t.getEmitHelperFactory,d=t.startLexicalEnvironment,p=t.resumeLexicalEnvironment,f=t.endLexicalEnvironment,m=t.hoistVariableDeclaration,g=t.getCompilerOptions(),_=t.getEmitResolver(),h=t.onSubstituteNode,y=t.onEmitNode;function v(t){o=e.append(o,l.createVariableDeclaration(t))}return t.onEmitNode=function(t,r,n){if(1&c&&e.isFunctionLike(r)){var i=b(16286,8&e.getEmitFlags(r)?81:65);return y(t,r,n),void k(i,0,0)}y(t,r,n)},t.onSubstituteNode=function(t,r){if(r=h(t,r),1===t)return function(t){switch(t.kind){case 78:return function(t){if(2&c&&!e.isInternalName(t)){var r=_.getReferencedDeclarationWithCollidingName(t);if(r&&(!e.isClassLike(r)||!function(t,r){var n=e.getParseTreeNode(r);if(!n||n===t||n.end<=t.pos||n.pos>=t.end)return!1;var i=e.getEnclosingBlockScopeContainer(t);for(;n;){if(n===i||n===t)return!1;if(e.isClassElement(n)&&n.parent===t)return!0;n=n.parent}return!1}(r,t)))return e.setTextRange(l.getGeneratedNameForNode(e.getNameOfDeclaration(r)),t)}return t}(t);case 108:return function(t){if(1&c&&16&a)return e.setTextRange(l.createUniqueName("_this",48),t);return t}(t)}return t}(r);if(e.isIdentifier(r))return function(t){if(2&c&&!e.isInternalName(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r&&function(e){switch(e.parent.kind){case 199:case 254:case 258:case 251:return e.parent.name===e&&_.isDeclarationWithCollidingName(e.parent)}return!1}(r))return e.setTextRange(l.getGeneratedNameForNode(r),t)}return t}(r);return r},e.chainBundle(t,(function(i){if(i.isDeclarationFile)return i;r=i,n=i.text;var s=function(t){var r=b(8064,64),n=[],i=[];d();var a=l.copyPrologue(t.statements,n,!1,S);e.addRange(i,e.visitNodes(t.statements,S,e.isStatement,a)),o&&i.push(l.createVariableStatement(void 0,l.createVariableDeclarationList(o)));return l.mergeLexicalEnvironment(n,f()),B(n,t),k(r,0,0),l.updateSourceFile(t,e.setTextRange(l.createNodeArray(e.concatenate(n,i)),t.statements))}(i);return e.addEmitHelpers(s,t.readEmitHelpers()),r=void 0,n=void 0,o=void 0,a=0,s}));function b(e,t){var r=a;return a=16383&(a&~e|t),r}function k(e,t,r){a=-16384&(a&~t|r)|e}function x(e){return 0!=(8192&a)&&244===e.kind&&!e.expression}function E(t){return 0!=(256&t.transformFlags)||void 0!==s||8192&a&&function(t){return 1048576&t.transformFlags&&(e.isReturnStatement(t)||e.isIfStatement(t)||e.isWithStatement(t)||e.isSwitchStatement(t)||e.isCaseBlock(t)||e.isCaseClause(t)||e.isDefaultClause(t)||e.isTryStatement(t)||e.isCatchClause(t)||e.isLabeledStatement(t)||e.isIterationStatement(t,!1)||e.isBlock(t))}(t)||e.isIterationStatement(t,!1)&&de(t)||0!=(33554432&e.getEmitFlags(t))}function S(e){return E(e)?T(e,!1):e}function D(e){return E(e)?T(e,!0):e}function w(e){return 106===e.kind?Ne(!0):S(e)}function T(n,o){switch(n.kind){case 124:return;case 254:return function(t){var r=l.createVariableDeclaration(l.getLocalName(t,!0),void 0,void 0,N(t));e.setOriginalNode(r,t);var n=[],i=l.createVariableStatement(void 0,l.createVariableDeclarationList([r]));if(e.setOriginalNode(i,t),e.setTextRange(i,t),e.startOnNewLine(i),n.push(i),e.hasSyntacticModifier(t,1)){var a=e.hasSyntacticModifier(t,512)?l.createExportDefault(l.getLocalName(t)):l.createExternalModuleExport(l.getLocalName(t));e.setOriginalNode(a,i),n.push(a)}var o=e.getEmitFlags(t);0==(4194304&o)&&(n.push(l.createEndOfDeclarationMarker(t)),e.setEmitFlags(i,4194304|o));return e.singleOrMany(n)}(n);case 223:return function(e){return N(e)}(n);case 161:return function(t){return t.dotDotDotToken?void 0:e.isBindingPattern(t.name)?e.setOriginalNode(e.setTextRange(l.createParameterDeclaration(void 0,void 0,void 0,l.getGeneratedNameForNode(t),void 0,void 0,void 0),t),t):t.initializer?e.setOriginalNode(e.setTextRange(l.createParameterDeclaration(void 0,void 0,void 0,t.name,void 0,void 0,void 0),t),t):t}(n);case 253:return function(r){var n=s;s=void 0;var i=b(16286,65),o=e.visitParameterList(r.parameters,S,t),c=W(r),u=16384&a?l.getLocalName(r):r.name;return k(i,49152,0),s=n,l.updateFunctionDeclaration(r,void 0,e.visitNodes(r.modifiers,S,e.isModifier),r.asteriskToken,u,void 0,o,void 0,c)}(n);case 210:return function(r){4096&r.transformFlags&&(a|=32768);var n=s;s=void 0;var i=b(15232,66),o=l.createFunctionExpression(void 0,void 0,void 0,void 0,e.visitParameterList(r.parameters,S,t),void 0,W(r));e.setTextRange(o,r),e.setOriginalNode(o,r),e.setEmitFlags(o,8),32768&a&&Ie();return k(i,0,0),s=n,o}(n);case 209:return function(r){var n=262144&e.getEmitFlags(r)?b(16278,69):b(16286,65),i=s;s=void 0;var o=e.visitParameterList(r.parameters,S,t),c=W(r),u=16384&a?l.getLocalName(r):r.name;return k(n,49152,0),s=i,l.updateFunctionExpression(r,void 0,r.asteriskToken,u,void 0,o,void 0,c)}(n);case 251:return Y(n);case 78:return A(n);case 252:return function(r){if(3&r.flags||131072&r.transformFlags){3&r.flags&&Pe();var n=e.flatMap(r.declarations,1&r.flags?$:Y),i=l.createVariableDeclarationList(n);return e.setOriginalNode(i,r),e.setTextRange(i,r),e.setCommentRange(i,r),131072&r.transformFlags&&(e.isBindingPattern(r.declarations[0].name)||e.isBindingPattern(e.last(r.declarations).name))&&e.setSourceMapRange(i,function(t){for(var r=-1,n=-1,i=0,a=t;i<a.length;i++){var o=a[i];r=-1===r?o.pos:-1===o.pos?r:Math.min(r,o.pos),n=Math.max(n,o.end)}return e.createRange(r,n)}(n)),i}return e.visitEachChild(r,S,t)}(n);case 246:return function(r){if(void 0!==s){var n=s.allowedNonLabeledJumps;s.allowedNonLabeledJumps|=2;var i=e.visitEachChild(r,S,t);return s.allowedNonLabeledJumps=n,i}return e.visitEachChild(r,S,t)}(n);case 261:return function(r){var n=b(7104,0),i=e.visitEachChild(r,S,t);return k(n,0,0),i}(n);case 232:return function(r,n){if(n)return e.visitEachChild(r,S,t);var i=256&a?b(7104,512):b(6976,128),o=e.visitEachChild(r,S,t);return k(i,0,0),o}(n,!1);case 243:case 242:return function(r){if(s){var n=243===r.kind?2:4;if(!(r.label&&s.labels&&s.labels.get(e.idText(r.label))||!r.label&&s.allowedNonLabeledJumps&n)){var i=void 0,a=r.label;a?243===r.kind?(i="break-"+a.escapedText,ye(s,!0,e.idText(a),i)):(i="continue-"+a.escapedText,ye(s,!1,e.idText(a),i)):243===r.kind?(s.nonLocalJumps|=2,i="break"):(s.nonLocalJumps|=4,i="continue");var o=l.createStringLiteral(i);if(s.loopOutParameters.length){for(var c=s.loopOutParameters,u=void 0,d=0;d<c.length;d++){var p=_e(c[d],1);u=0===d?p:l.createBinaryExpression(u,27,p)}o=l.createBinaryExpression(u,27,o)}return l.createReturnStatement(o)}}return e.visitEachChild(r,S,t)}(n);case 247:return function(t){s&&!s.labels&&(s.labels=new e.Map);var r=e.unwrapInnermostStatementOfLabel(t,s&&X);return e.isIterationStatement(r,!1)?function(e,t){switch(e.kind){case 237:case 238:return ee(e,t);case 239:return te(e,t);case 240:return re(e,t);case 241:return ne(e,t)}}(r,t):l.restoreEnclosingLabel(e.visitNode(r,S,e.isStatement,l.liftToBlock),t,s&&Q)}(n);case 237:case 238:return ee(n,void 0);case 239:return te(n,void 0);case 240:return re(n,void 0);case 241:return ne(n,void 0);case 235:case 214:return function(r){return e.visitEachChild(r,D,t)}(n);case 201:return function(r){for(var n=r.properties,i=-1,o=!1,s=0;s<n.length;s++){var c=n[s];if(262144&c.transformFlags&&4&a||(o=159===e.Debug.checkDefined(c.name).kind)){i=s;break}}if(i<0)return e.visitEachChild(r,S,t);var u=l.createTempVariable(m),d=[],p=l.createAssignment(u,e.setEmitFlags(l.createObjectLiteralExpression(e.visitNodes(n,S,e.isObjectLiteralElementLike,0,i),r.multiLine),o?65536:0));r.multiLine&&e.startOnNewLine(p);return d.push(p),function(t,r,n,i){for(var a=r.properties,o=a.length,s=i;s<o;s++){var c=a[s];switch(c.kind){case 168:case 169:var l=e.getAllAccessorDeclarations(r.properties,c);c===l.firstAccessor&&t.push(H(n,l,r,!!r.multiLine));break;case 166:t.push(Ee(c,n,r,r.multiLine));break;case 291:t.push(ke(c,n,r.multiLine));break;case 292:t.push(xe(c,n,r.multiLine));break;default:e.Debug.failBadSyntaxKind(r)}}}(d,r,u,i),d.push(r.multiLine?e.startOnNewLine(e.setParent(e.setTextRange(l.cloneNode(u),u),u.parent)):u),l.inlineExpressions(d)}(n);case 290:return function(r){var n,a=b(7104,0);if(e.Debug.assert(!!r.variableDeclaration,"Catch clause variable should always be present when downleveling ES2015."),e.isBindingPattern(r.variableDeclaration.name)){var o=l.createTempVariable(void 0),s=l.createVariableDeclaration(o);e.setTextRange(s,r.variableDeclaration);var c=e.flattenDestructuringBinding(r.variableDeclaration,S,t,0,o),u=l.createVariableDeclarationList(c);e.setTextRange(u,r.variableDeclaration);var d=l.createVariableStatement(void 0,u);n=l.updateCatchClause(r,s,(p=r.block,f=d,m=e.visitNodes(p.statements,S,e.isStatement),l.updateBlock(p,i([f],m))))}else n=e.visitEachChild(r,S,t);var p,f,m;return k(a,0,0),n}(n);case 292:return function(t){return e.setTextRange(l.createPropertyAssignment(t.name,A(l.cloneNode(t.name))),t)}(n);case 159:case 221:return function(r){return e.visitEachChild(r,S,t)}(n);case 200:return function(r){if(e.some(r.elements,e.isSpreadElement))return De(r.elements,!0,!!r.multiLine,!!r.elements.hasTrailingComma);return e.visitEachChild(r,S,t)}(n);case 204:return function(t){if(33554432&e.getEmitFlags(t))return function(t){var r=e.cast(e.cast(e.skipOuterExpressions(t.expression),e.isArrowFunction).body,e.isBlock),n=function(t){return e.isVariableStatement(t)&&!!e.first(t.declarationList.declarations).initializer},i=s;s=void 0;var a=e.visitNodes(r.statements,S,e.isStatement);s=i;var o=e.filter(a,n),c=e.filter(a,(function(e){return!n(e)})),u=e.cast(e.first(o),e.isVariableStatement).declarationList.declarations[0],d=e.skipOuterExpressions(u.initializer),p=e.tryCast(d,e.isAssignmentExpression),f=e.cast(p?e.skipOuterExpressions(p.right):d,e.isCallExpression),m=e.cast(e.skipOuterExpressions(f.expression),e.isFunctionExpression),g=m.body.statements,_=0,h=-1,y=[];if(p){var v=e.tryCast(g[_],e.isExpressionStatement);v&&(y.push(v),_++),y.push(g[_]),_++,y.push(l.createExpressionStatement(l.createAssignment(p.left,e.cast(u.name,e.isIdentifier))))}for(;!e.isReturnStatement(e.elementAt(g,h));)h--;e.addRange(y,g,_,h),h<-1&&e.addRange(y,g,h+1);return e.addRange(y,c),e.addRange(y,o,1),l.restoreOuterExpressions(t.expression,l.restoreOuterExpressions(u.initializer,l.restoreOuterExpressions(p&&p.right,l.updateCallExpression(f,l.restoreOuterExpressions(f.expression,l.updateFunctionExpression(m,void 0,void 0,void 0,void 0,m.parameters,void 0,l.updateBlock(m.body,y))),void 0,f.arguments))))}(t);var r=e.skipOuterExpressions(t.expression);if(106===r.kind||e.isSuperProperty(r)||e.some(t.arguments,e.isSpreadElement))return Se(t,!0);return l.updateCallExpression(t,e.visitNode(t.expression,w,e.isExpression),void 0,e.visitNodes(t.arguments,S,e.isExpression))}(n);case 205:return function(r){if(e.some(r.arguments,e.isSpreadElement)){var n=l.createCallBinding(l.createPropertyAccessExpression(r.expression,"bind"),m),a=n.target,o=n.thisArg;return l.createNewExpression(l.createFunctionApplyCall(e.visitNode(a,S,e.isExpression),o,De(l.createNodeArray(i([l.createVoidZero()],r.arguments)),!1,!1,!1)),void 0,[])}return e.visitEachChild(r,S,t)}(n);case 208:return function(r,n){return e.visitEachChild(r,n?D:S,t)}(n,o);case 218:return G(n,o);case 340:return function(r,n){if(n)return e.visitEachChild(r,D,t);for(var i,a=0;a<r.elements.length;a++){var o=r.elements[a],s=e.visitNode(o,a<r.elements.length-1?D:S,e.isExpression);(i||s!==o)&&(i||(i=r.elements.slice(0,a)),i.push(s))}var c=i?e.setTextRange(l.createNodeArray(i),r.elements):r.elements;return l.updateCommaListExpression(r,c)}(n,o);case 14:case 15:case 16:case 17:return function(t){return e.setTextRange(l.createStringLiteral(t.text),t)}(n);case 10:return function(t){if(t.hasExtendedUnicodeEscape)return e.setTextRange(l.createStringLiteral(t.text),t);return t}(n);case 8:return function(t){if(384&t.numericLiteralFlags)return e.setTextRange(l.createNumericLiteral(t.text),t);return t}(n);case 206:return function(n){return e.processTaggedTemplateExpression(t,n,S,r,v,e.ProcessLevel.All)}(n);case 220:return function(t){var r=[];(function(t,r){if(!function(t){return e.Debug.assert(0!==t.templateSpans.length),0!==t.head.text.length||0===t.templateSpans[0].literal.text.length}(r))return;t.push(l.createStringLiteral(r.head.text))})(r,t),function(t,r){for(var n=0,i=r.templateSpans;n<i.length;n++){var a=i[n];t.push(e.visitNode(a.expression,S,e.isExpression)),0!==a.literal.text.length&&t.push(l.createStringLiteral(a.literal.text))}}(r,t);var n=e.reduceLeft(r,l.createAdd);e.nodeIsSynthesized(n)&&e.setTextRange(n,t);return n}(n);case 222:return function(t){return e.visitNode(t.expression,S,e.isExpression)}(n);case 106:return Ne(!1);case 108:return function(e){2&a&&(a|=32768);if(s)return 2&a?(s.containsLexicalThis=!0,e):s.thisName||(s.thisName=l.createUniqueName("this"));return e}(n);case 228:return function(e){if(103===e.keywordToken&&"target"===e.name.escapedText)return a|=16384,l.createUniqueName("_newTarget",48);return e}(n);case 166:return function(t){e.Debug.assert(!e.isComputedPropertyName(t.name));var r=K(t,e.moveRangePos(t,-1),void 0,void 0);return e.setEmitFlags(r,512|e.getEmitFlags(r)),e.setTextRange(l.createPropertyAssignment(t.name,r),t)}(n);case 168:case 169:return function(r){e.Debug.assert(!e.isComputedPropertyName(r.name));var n=s;s=void 0;var i,a=b(16286,65),o=e.visitParameterList(r.parameters,S,t),c=W(r);i=168===r.kind?l.updateGetAccessorDeclaration(r,r.decorators,r.modifiers,r.name,o,r.type,c):l.updateSetAccessorDeclaration(r,r.decorators,r.modifiers,r.name,o,c);return k(a,49152,0),s=n,i}(n);case 234:return function(r){var n,i=b(0,e.hasSyntacticModifier(r,1)?32:0);if(s&&0==(3&r.declarationList.flags)&&!function(t){return 1===t.declarationList.declarations.length&&!!t.declarationList.declarations[0].initializer&&!!(33554432&e.getEmitFlags(t.declarationList.declarations[0].initializer))}(r)){for(var a=void 0,o=0,c=r.declarationList.declarations;o<c.length;o++){var u=c[o];if(fe(s,u),u.initializer){var d=void 0;e.isBindingPattern(u.name)?d=e.flattenDestructuringAssignment(u,S,t,0):(d=l.createBinaryExpression(u.name,62,e.visitNode(u.initializer,S,e.isExpression)),e.setTextRange(d,u)),a=e.append(a,d)}}n=a?e.setTextRange(l.createExpressionStatement(l.inlineExpressions(a)),r):void 0}else n=e.visitEachChild(r,S,t);return k(i,0,0),n}(n);case 244:return function(r){if(s)return s.nonLocalJumps|=8,x(r)&&(r=C(r)),l.createReturnStatement(l.createObjectLiteralExpression([l.createPropertyAssignment(l.createIdentifier("value"),r.expression?e.visitNode(r.expression,S,e.isExpression):l.createVoidZero())]));if(x(r))return C(r);return e.visitEachChild(r,S,t)}(n);default:return e.visitEachChild(n,S,t)}}function C(t){return e.setOriginalNode(l.createReturnStatement(l.createUniqueName("_this",48)),t)}function A(e){return s&&_.isArgumentsLocalBinding(e)?s.argumentsName||(s.argumentsName=l.createUniqueName("arguments")):e}function N(i){i.name&&Pe();var o=e.getClassExtendsHeritageElement(i),c=l.createFunctionExpression(void 0,void 0,void 0,void 0,o?[l.createParameterDeclaration(void 0,void 0,void 0,l.createUniqueName("_super",48))]:[],void 0,function(i,o){var c=[],m=l.getInternalName(i),g=e.isIdentifierANonContextualKeyword(m)?l.getGeneratedNameForNode(m):m;d(),function(t,r,n){n&&t.push(e.setTextRange(l.createExpressionStatement(u().createExtendsHelper(l.getInternalName(r))),n))}(c,i,o),function(r,n,i,o){var c=s;s=void 0;var u=b(16278,73),d=e.getFirstConstructorWithBody(n),m=function(t,r){if(!t||!r)return!1;if(e.some(t.parameters))return!1;var n=e.firstOrUndefined(t.body.statements);if(!n||!e.nodeIsSynthesized(n)||235!==n.kind)return!1;var i=n.expression;if(!e.nodeIsSynthesized(i)||204!==i.kind)return!1;var a=i.expression;if(!e.nodeIsSynthesized(a)||106!==a.kind)return!1;var o=e.singleOrUndefined(i.arguments);if(!o||!e.nodeIsSynthesized(o)||222!==o.kind)return!1;var s=o.expression;return e.isIdentifier(s)&&"arguments"===s.escapedText}(d,void 0!==o),g=l.createFunctionDeclaration(void 0,void 0,void 0,i,void 0,function(r,n){return e.visitParameterList(r&&!n?r.parameters:void 0,S,t)||[]}(d,m),void 0,function(t,r,n,i){var o=!!n&&104!==e.skipOuterExpressions(n.expression).kind;if(!t)return function(t,r){var n=[];p(),l.mergeLexicalEnvironment(n,f()),r&&n.push(l.createReturnStatement(F()));var i=l.createNodeArray(n);e.setTextRange(i,t.members);var a=l.createBlock(i,!0);return e.setTextRange(a,t),e.setEmitFlags(a,1536),a}(r,o);var s=[],c=[];p();var u,d=0;i||(d=l.copyStandardPrologue(t.body.statements,s,!1));R(c,t),j(c,t,i),i||(d=l.copyCustomPrologue(t.body.statements,c,d,S));if(i)u=F();else if(o&&d<t.body.statements.length){var m=t.body.statements[d];e.isExpressionStatement(m)&&e.isSuperCall(m.expression)&&(u=function(e){return Se(e,!1)}(m.expression))}u&&(a|=8192,d++);if(e.addRange(c,e.visitNodes(t.body.statements,S,e.isStatement,d)),l.mergeLexicalEnvironment(s,f()),U(s,t,!1),o)if(!u||d!==t.body.statements.length||4096&t.body.transformFlags)z(c,t,u||I()),P(t.body)||c.push(l.createReturnStatement(l.createUniqueName("_this",48)));else{var g=e.cast(e.cast(u,e.isBinaryExpression).left,e.isCallExpression),_=l.createReturnStatement(u);e.setCommentRange(_,e.getCommentRange(g)),e.setEmitFlags(g,1536),c.push(_)}else B(s,t);var h=l.createBlock(e.setTextRange(l.createNodeArray(e.concatenate(s,c)),t.body.statements),!0);return e.setTextRange(h,t.body),h}(d,n,o,m));e.setTextRange(g,d||n),o&&e.setEmitFlags(g,8);r.push(g),k(u,49152,0),s=c}(c,i,g,o),function(t,n){for(var i=0,a=n.members;i<a.length;i++){var o=a[i];switch(o.kind){case 231:t.push(q(o));break;case 166:t.push(J(Fe(n,o),o,n));break;case 168:case 169:var s=e.getAllAccessorDeclarations(n.members,o);o===s.firstAccessor&&t.push(V(Fe(n,o),s,n));break;case 167:break;default:e.Debug.failBadSyntaxKind(o,r&&r.fileName)}}}(c,i);var _=e.createTokenRange(e.skipTrivia(n,i.members.end),19),h=l.createPartiallyEmittedExpression(g);e.setTextRangeEnd(h,_.end),e.setEmitFlags(h,1536);var y=l.createReturnStatement(h);e.setTextRangePos(y,_.pos),e.setEmitFlags(y,1920),c.push(y),e.insertStatementsAfterStandardPrologue(c,f());var v=l.createBlock(e.setTextRange(l.createNodeArray(c),i.members),!0);return e.setEmitFlags(v,1536),v}(i,o));e.setEmitFlags(c,65536&e.getEmitFlags(i)|524288);var m=l.createPartiallyEmittedExpression(c);e.setTextRangeEnd(m,i.end),e.setEmitFlags(m,1536);var g=l.createPartiallyEmittedExpression(m);e.setTextRangeEnd(g,e.skipTrivia(n,i.pos)),e.setEmitFlags(g,1536);var _=l.createParenthesizedExpression(l.createCallExpression(g,void 0,o?[e.visitNode(o.expression,S,e.isExpression)]:[]));return e.addSyntheticLeadingComment(_,3,"* @class "),_}function P(t){if(244===t.kind)return!0;if(236===t.kind){var r=t;if(r.elseStatement)return P(r.thenStatement)&&P(r.elseStatement)}else if(232===t.kind){var n=e.lastOrUndefined(t.statements);if(n&&P(n))return!0}return!1}function I(){return e.setEmitFlags(l.createThis(),4)}function F(){return l.createLogicalOr(l.createLogicalAnd(l.createStrictInequality(l.createUniqueName("_super",48),l.createNull()),l.createFunctionApplyCall(l.createUniqueName("_super",48),I(),l.createIdentifier("arguments"))),I())}function O(t){return void 0!==t.initializer||e.isBindingPattern(t.name)}function R(t,r){if(!e.some(r.parameters,O))return!1;for(var n=!1,i=0,a=r.parameters;i<a.length;i++){var o=a[i],s=o.name,c=o.initializer;o.dotDotDotToken||(e.isBindingPattern(s)?n=M(t,o,s,c)||n:c&&(L(t,o,s,c),n=!0))}return n}function M(r,n,i,a){return i.elements.length>0?(e.insertStatementAfterCustomPrologue(r,e.setEmitFlags(l.createVariableStatement(void 0,l.createVariableDeclarationList(e.flattenDestructuringBinding(n,S,t,0,l.getGeneratedNameForNode(n)))),1048576)),!0):!!a&&(e.insertStatementAfterCustomPrologue(r,e.setEmitFlags(l.createExpressionStatement(l.createAssignment(l.getGeneratedNameForNode(n),e.visitNode(a,S,e.isExpression))),1048576)),!0)}function L(t,r,n,i){i=e.visitNode(i,S,e.isExpression);var a=l.createIfStatement(l.createTypeCheck(l.cloneNode(n),"undefined"),e.setEmitFlags(e.setTextRange(l.createBlock([l.createExpressionStatement(e.setEmitFlags(e.setTextRange(l.createAssignment(e.setEmitFlags(e.setParent(e.setTextRange(l.cloneNode(n),n),n.parent),48),e.setEmitFlags(i,1584|e.getEmitFlags(i))),r),1536))]),r),1953));e.startOnNewLine(a),e.setTextRange(a,r),e.setEmitFlags(a,1050528),e.insertStatementAfterCustomPrologue(t,a)}function j(r,n,i){var a=[],o=e.lastOrUndefined(n.parameters);if(!function(e,t){return!(!e||!e.dotDotDotToken||t)}(o,i))return!1;var s=78===o.name.kind?e.setParent(e.setTextRange(l.cloneNode(o.name),o.name),o.name.parent):l.createTempVariable(void 0);e.setEmitFlags(s,48);var c=78===o.name.kind?l.cloneNode(o.name):s,u=n.parameters.length-1,d=l.createLoopVariable();a.push(e.setEmitFlags(e.setTextRange(l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(s,void 0,void 0,l.createArrayLiteralExpression([]))])),o),1048576));var p=l.createForStatement(e.setTextRange(l.createVariableDeclarationList([l.createVariableDeclaration(d,void 0,void 0,l.createNumericLiteral(u))]),o),e.setTextRange(l.createLessThan(d,l.createPropertyAccessExpression(l.createIdentifier("arguments"),"length")),o),e.setTextRange(l.createPostfixIncrement(d),o),l.createBlock([e.startOnNewLine(e.setTextRange(l.createExpressionStatement(l.createAssignment(l.createElementAccessExpression(c,0===u?d:l.createSubtract(d,l.createNumericLiteral(u))),l.createElementAccessExpression(l.createIdentifier("arguments"),d))),o))]));return e.setEmitFlags(p,1048576),e.startOnNewLine(p),a.push(p),78!==o.name.kind&&a.push(e.setEmitFlags(e.setTextRange(l.createVariableStatement(void 0,l.createVariableDeclarationList(e.flattenDestructuringBinding(o,S,t,0,c))),o),1048576)),e.insertStatementsAfterCustomPrologue(r,a),!0}function B(e,t){return!!(32768&a&&210!==t.kind)&&(z(e,t,l.createThis()),!0)}function z(t,r,n){Ie();var i=l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(l.createUniqueName("_this",48),void 0,void 0,n)]));e.setEmitFlags(i,1050112),e.setSourceMapRange(i,r),e.insertStatementAfterCustomPrologue(t,i)}function U(t,r,n){if(16384&a){var i=void 0;switch(r.kind){case 210:return t;case 166:case 168:case 169:i=l.createVoidZero();break;case 167:i=l.createPropertyAccessExpression(e.setEmitFlags(l.createThis(),4),"constructor");break;case 253:case 209:i=l.createConditionalExpression(l.createLogicalAnd(e.setEmitFlags(l.createThis(),4),l.createBinaryExpression(e.setEmitFlags(l.createThis(),4),102,l.getLocalName(r))),void 0,l.createPropertyAccessExpression(e.setEmitFlags(l.createThis(),4),"constructor"),void 0,l.createVoidZero());break;default:return e.Debug.failBadSyntaxKind(r)}var o=l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(l.createUniqueName("_newTarget",48),void 0,void 0,i)]));e.setEmitFlags(o,1050112),n&&(t=t.slice()),e.insertStatementAfterCustomPrologue(t,o)}return t}function q(t){return e.setTextRange(l.createEmptyStatement(),t)}function J(r,n,i){var a,o=e.getCommentRange(n),s=e.getSourceMapRange(n),c=K(n,n,void 0,i),u=e.visitNode(n.name,S,e.isPropertyName);if(!e.isPrivateIdentifier(u)&&t.getCompilerOptions().useDefineForClassFields){var d=e.isComputedPropertyName(u)?u.expression:e.isIdentifier(u)?l.createStringLiteral(e.unescapeLeadingUnderscores(u.escapedText)):u;a=l.createObjectDefinePropertyCall(r,d,l.createPropertyDescriptor({value:c,enumerable:!1,writable:!0,configurable:!0}))}else{var p=e.createMemberAccessForPropertyName(l,r,u,n.name);a=l.createAssignment(p,c)}e.setEmitFlags(c,1536),e.setSourceMapRange(c,s);var f=e.setTextRange(l.createExpressionStatement(a),n);return e.setOriginalNode(f,n),e.setCommentRange(f,o),e.setEmitFlags(f,48),f}function V(t,r,n){var i=l.createExpressionStatement(H(t,r,n,!1));return e.setEmitFlags(i,1536),e.setSourceMapRange(i,e.getSourceMapRange(r.firstAccessor)),i}function H(t,r,n,i){var a=r.firstAccessor,o=r.getAccessor,s=r.setAccessor,c=e.setParent(e.setTextRange(l.cloneNode(t),t),t.parent);e.setEmitFlags(c,1568),e.setSourceMapRange(c,a.name);var u=e.visitNode(a.name,S,e.isPropertyName);if(e.isPrivateIdentifier(u))return e.Debug.failBadSyntaxKind(u,"Encountered unhandled private identifier while transforming ES2015.");var d=e.createExpressionForPropertyName(l,u);e.setEmitFlags(d,1552),e.setSourceMapRange(d,a.name);var p=[];if(o){var f=K(o,void 0,void 0,n);e.setSourceMapRange(f,e.getSourceMapRange(o)),e.setEmitFlags(f,512);var m=l.createPropertyAssignment("get",f);e.setCommentRange(m,e.getCommentRange(o)),p.push(m)}if(s){var g=K(s,void 0,void 0,n);e.setSourceMapRange(g,e.getSourceMapRange(s)),e.setEmitFlags(g,512);var _=l.createPropertyAssignment("set",g);e.setCommentRange(_,e.getCommentRange(s)),p.push(_)}p.push(l.createPropertyAssignment("enumerable",o||s?l.createFalse():l.createTrue()),l.createPropertyAssignment("configurable",l.createTrue()));var h=l.createCallExpression(l.createPropertyAccessExpression(l.createIdentifier("Object"),"defineProperty"),void 0,[c,d,l.createObjectLiteralExpression(p,!0)]);return i&&e.startOnNewLine(h),h}function K(r,n,i,o){var c=s;s=void 0;var u=o&&e.isClassLike(o)&&!e.hasSyntacticModifier(r,32)?b(16286,73):b(16286,65),d=e.visitParameterList(r.parameters,S,t),p=W(r);return 16384&a&&!i&&(253===r.kind||209===r.kind)&&(i=l.getGeneratedNameForNode(r)),k(u,49152,0),s=c,e.setOriginalNode(e.setTextRange(l.createFunctionExpression(void 0,r.asteriskToken,i,void 0,d,void 0,p),n),r)}function W(t){var n,i,a,o=!1,s=!1,c=[],u=[],d=t.body;if(p(),e.isBlock(d)&&(a=l.copyStandardPrologue(d.statements,c,!1),a=l.copyCustomPrologue(d.statements,u,a,S,e.isHoistedFunction),a=l.copyCustomPrologue(d.statements,u,a,S,e.isHoistedVariableStatement)),o=R(u,t)||o,o=j(u,t,!1)||o,e.isBlock(d))a=l.copyCustomPrologue(d.statements,u,a,S),n=d.statements,e.addRange(u,e.visitNodes(d.statements,S,e.isStatement,a)),!o&&d.multiLine&&(o=!0);else{e.Debug.assert(210===t.kind),n=e.moveRangeEnd(d,-1);var m=t.equalsGreaterThanToken;e.nodeIsSynthesized(m)||e.nodeIsSynthesized(d)||(e.rangeEndIsOnSameLineAsRangeStart(m,d,r)?s=!0:o=!0);var g=e.visitNode(d,S,e.isExpression),_=l.createReturnStatement(g);e.setTextRange(_,d),e.moveSyntheticComments(_,d),e.setEmitFlags(_,1440),u.push(_),i=d}if(l.mergeLexicalEnvironment(c,f()),U(c,t,!1),B(c,t),e.some(c)&&(o=!0),u.unshift.apply(u,c),e.isBlock(d)&&e.arrayIsEqualTo(u,d.statements))return d;var h=l.createBlock(e.setTextRange(l.createNodeArray(u),n),o);return e.setTextRange(h,t.body),!o&&s&&e.setEmitFlags(h,1),i&&e.setTokenSourceMapRange(h,19,i),e.setOriginalNode(h,t.body),h}function G(r,n){return e.isDestructuringAssignment(r)?e.flattenDestructuringAssignment(r,S,t,0,!n):27===r.operatorToken.kind?l.updateBinaryExpression(r,e.visitNode(r.left,D,e.isExpression),r.operatorToken,e.visitNode(r.right,n?D:S,e.isExpression)):e.visitEachChild(r,S,t)}function $(r){var n=r.name;return e.isBindingPattern(n)?Y(r):!r.initializer&&function(e){var t=_.getNodeCheckFlags(e),r=262144&t,n=524288&t;return!(0!=(64&a)||r&&n&&0!=(512&a))&&0==(4096&a)&&(!_.isDeclarationWithCollidingName(e)||n&&!r&&0==(6144&a))}(r)?l.updateVariableDeclaration(r,r.name,void 0,void 0,l.createVoidZero()):e.visitEachChild(r,S,t)}function Y(r){var n,i=b(32,0);return n=e.isBindingPattern(r.name)?e.flattenDestructuringBinding(r,S,t,0,void 0,0!=(32&i)):e.visitEachChild(r,S,t),k(i,0,0),n}function X(t){s.labels.set(e.idText(t.label),!0)}function Q(t){s.labels.set(e.idText(t.label),!1)}function Z(r,n,i,o,c){var u=b(r,n),p=function(r,n,i,o){if(!de(r)){var c=void 0;s&&(c=s.allowedNonLabeledJumps,s.allowedNonLabeledJumps=6);var u=o?o(r,n,void 0,i):l.restoreEnclosingLabel(e.isForStatement(r)?function(t){return l.updateForStatement(t,e.visitNode(t.initializer,D,e.isForInitializer),e.visitNode(t.condition,S,e.isExpression),e.visitNode(t.incrementor,D,e.isExpression),e.visitNode(t.statement,S,e.isStatement,l.liftToBlock))}(r):e.visitEachChild(r,S,t),n,s&&Q);return s&&(s.allowedNonLabeledJumps=c),u}var p=function(t){var r;switch(t.kind){case 239:case 240:case 241:var n=t.initializer;n&&252===n.kind&&(r=n)}var i=[],a=[];if(r&&3&e.getCombinedNodeFlags(r))for(var o=le(t),c=0,l=r.declarations;c<l.length;c++){be(t,l[c],i,a,o)}var u={loopParameters:i,loopOutParameters:a};s&&(s.argumentsName&&(u.argumentsName=s.argumentsName),s.thisName&&(u.thisName=s.thisName),s.hoistedLocalVariables&&(u.hoistedLocalVariables=s.hoistedLocalVariables));return u}(r),m=[],g=s;s=p;var _,h=le(r)?function(t,r){var n=l.createUniqueName("_loop_init"),i=0!=(262144&t.initializer.transformFlags),o=0;r.containsLexicalThis&&(o|=8);i&&4&a&&(o|=262144);var s=[];s.push(l.createVariableStatement(void 0,t.initializer)),he(r.loopOutParameters,2,1,s);var c=l.createVariableStatement(void 0,e.setEmitFlags(l.createVariableDeclarationList([l.createVariableDeclaration(n,void 0,void 0,e.setEmitFlags(l.createFunctionExpression(void 0,i?l.createToken(41):void 0,void 0,void 0,void 0,void 0,e.visitNode(l.createBlock(s,!0),S,e.isBlock)),o))]),2097152)),u=l.createVariableDeclarationList(e.map(r.loopOutParameters,ge));return{functionName:n,containsYield:i,functionDeclaration:c,part:u}}(r,p):void 0,y=pe(r)?function(t,r,n){var i=l.createUniqueName("_loop");d();var o=e.visitNode(t.statement,S,e.isStatement,l.liftToBlock),s=f(),c=[];(ue(t)||function(t){return e.isForStatement(t)&&!!t.incrementor&&ce(t.incrementor)}(t))&&(r.conditionVariable=l.createUniqueName("inc"),t.incrementor?c.push(l.createIfStatement(r.conditionVariable,l.createExpressionStatement(e.visitNode(t.incrementor,S,e.isExpression)),l.createExpressionStatement(l.createAssignment(r.conditionVariable,l.createTrue())))):c.push(l.createIfStatement(l.createLogicalNot(r.conditionVariable),l.createExpressionStatement(l.createAssignment(r.conditionVariable,l.createTrue())))),ue(t)&&c.push(l.createIfStatement(l.createPrefixUnaryExpression(53,e.visitNode(t.condition,S,e.isExpression)),e.visitNode(l.createBreakStatement(),S,e.isStatement))));e.isBlock(o)?e.addRange(c,o.statements):c.push(o);he(r.loopOutParameters,1,1,c),e.insertStatementsAfterStandardPrologue(c,s);var u=l.createBlock(c,!0);e.isBlock(o)&&e.setOriginalNode(u,o);var p=0!=(262144&t.statement.transformFlags),m=524288;r.containsLexicalThis&&(m|=8);p&&0!=(4&a)&&(m|=262144);var g=l.createVariableStatement(void 0,e.setEmitFlags(l.createVariableDeclarationList([l.createVariableDeclaration(i,void 0,void 0,e.setEmitFlags(l.createFunctionExpression(void 0,p?l.createToken(41):void 0,void 0,void 0,r.loopParameters,void 0,u),m))]),2097152)),_=function(t,r,n,i){var a=[],o=!(-5&r.nonLocalJumps||r.labeledNonLocalBreaks||r.labeledNonLocalContinues),s=l.createCallExpression(t,void 0,e.map(r.loopParameters,(function(e){return e.name}))),c=i?l.createYieldExpression(l.createToken(41),e.setEmitFlags(s,8388608)):s;if(o)a.push(l.createExpressionStatement(c)),he(r.loopOutParameters,1,0,a);else{var u=l.createUniqueName("state"),d=l.createVariableStatement(void 0,l.createVariableDeclarationList([l.createVariableDeclaration(u,void 0,void 0,c)]));if(a.push(d),he(r.loopOutParameters,1,0,a),8&r.nonLocalJumps){var p=void 0;n?(n.nonLocalJumps|=8,p=l.createReturnStatement(u)):p=l.createReturnStatement(l.createPropertyAccessExpression(u,"value")),a.push(l.createIfStatement(l.createTypeCheck(u,"object"),p))}if(2&r.nonLocalJumps&&a.push(l.createIfStatement(l.createStrictEquality(u,l.createStringLiteral("break")),l.createBreakStatement())),r.labeledNonLocalBreaks||r.labeledNonLocalContinues){var f=[];ve(r.labeledNonLocalBreaks,!0,u,n,f),ve(r.labeledNonLocalContinues,!1,u,n,f),a.push(l.createSwitchStatement(u,l.createCaseBlock(f)))}}return a}(i,r,n,p);return{functionName:i,containsYield:p,functionDeclaration:g,part:_}}(r,p,g):void 0;s=g,h&&m.push(h.functionDeclaration);y&&m.push(y.functionDeclaration);(function(e,t,r){var n;t.argumentsName&&(r?r.argumentsName=t.argumentsName:(n||(n=[])).push(l.createVariableDeclaration(t.argumentsName,void 0,void 0,l.createIdentifier("arguments"))));t.thisName&&(r?r.thisName=t.thisName:(n||(n=[])).push(l.createVariableDeclaration(t.thisName,void 0,void 0,l.createIdentifier("this"))));if(t.hoistedLocalVariables)if(r)r.hoistedLocalVariables=t.hoistedLocalVariables;else{n||(n=[]);for(var i=0,a=t.hoistedLocalVariables;i<a.length;i++){var o=a[i];n.push(l.createVariableDeclaration(o))}}if(t.loopOutParameters.length){n||(n=[]);for(var s=0,c=t.loopOutParameters;s<c.length;s++){var u=c[s];n.push(l.createVariableDeclaration(u.outParamName))}}t.conditionVariable&&(n||(n=[]),n.push(l.createVariableDeclaration(t.conditionVariable,void 0,void 0,l.createFalse())));n&&e.push(l.createVariableStatement(void 0,l.createVariableDeclarationList(n)))})(m,p,g),h&&m.push((v=h.functionName,b=h.containsYield,k=l.createCallExpression(v,void 0,[]),x=b?l.createYieldExpression(l.createToken(41),e.setEmitFlags(k,8388608)):k,l.createExpressionStatement(x)));var v,b,k,x;if(y)if(o)_=o(r,n,y.part,i);else{var E=me(r,h,l.createBlock(y.part,!0));_=l.restoreEnclosingLabel(E,n,s&&Q)}else{var w=me(r,h,e.visitNode(r.statement,S,e.isStatement,l.liftToBlock));_=l.restoreEnclosingLabel(w,n,s&&Q)}return m.push(_),m}(i,o,u,c);return k(u,0,0),p}function ee(e,t){return Z(0,1280,e,t)}function te(e,t){return Z(5056,3328,e,t)}function re(e,t){return Z(3008,5376,e,t)}function ne(e,t){return Z(3008,5376,e,t,g.downlevelIteration?se:oe)}function ie(r,n,i){var a=[],o=r.initializer;if(e.isVariableDeclarationList(o)){3&r.initializer.flags&&Pe();var s=e.firstOrUndefined(o.declarations);if(s&&e.isBindingPattern(s.name)){var c=e.flattenDestructuringBinding(s,S,t,0,n),u=e.setTextRange(l.createVariableDeclarationList(c),r.initializer);e.setOriginalNode(u,r.initializer),e.setSourceMapRange(u,e.createRange(c[0].pos,e.last(c).end)),a.push(l.createVariableStatement(void 0,u))}else a.push(e.setTextRange(l.createVariableStatement(void 0,e.setOriginalNode(e.setTextRange(l.createVariableDeclarationList([l.createVariableDeclaration(s?s.name:l.createTempVariable(void 0),void 0,void 0,n)]),e.moveRangePos(o,-1)),o)),e.moveRangeEnd(o,-1)))}else{var d=l.createAssignment(o,n);e.isDestructuringAssignment(d)?a.push(l.createExpressionStatement(G(d,!0))):(e.setTextRangeEnd(d,o.end),a.push(e.setTextRange(l.createExpressionStatement(e.visitNode(d,S,e.isExpression)),e.moveRangeEnd(o,-1))))}if(i)return ae(e.addRange(a,i));var p=e.visitNode(r.statement,S,e.isStatement,l.liftToBlock);return e.isBlock(p)?l.updateBlock(p,e.setTextRange(l.createNodeArray(e.concatenate(a,p.statements)),p.statements)):(a.push(p),ae(a))}function ae(t){return e.setEmitFlags(l.createBlock(l.createNodeArray(t),!0),432)}function oe(t,r,n){var i=e.visitNode(t.expression,S,e.isExpression),a=l.createLoopVariable(),o=e.isIdentifier(i)?l.getGeneratedNameForNode(i):l.createTempVariable(void 0);e.setEmitFlags(i,48|e.getEmitFlags(i));var c=e.setTextRange(l.createForStatement(e.setEmitFlags(e.setTextRange(l.createVariableDeclarationList([e.setTextRange(l.createVariableDeclaration(a,void 0,void 0,l.createNumericLiteral(0)),e.moveRangePos(t.expression,-1)),e.setTextRange(l.createVariableDeclaration(o,void 0,void 0,i),t.expression)]),t.expression),2097152),e.setTextRange(l.createLessThan(a,l.createPropertyAccessExpression(o,"length")),t.expression),e.setTextRange(l.createPostfixIncrement(a),t.expression),ie(t,l.createElementAccessExpression(o,a),n)),t);return e.setEmitFlags(c,256),e.setTextRange(c,t),l.restoreEnclosingLabel(c,r,s&&Q)}function se(t,r,n,i){var a=e.visitNode(t.expression,S,e.isExpression),o=e.isIdentifier(a)?l.getGeneratedNameForNode(a):l.createTempVariable(void 0),c=e.isIdentifier(a)?l.getGeneratedNameForNode(o):l.createTempVariable(void 0),d=l.createUniqueName("e"),p=l.getGeneratedNameForNode(d),f=l.createTempVariable(void 0),g=e.setTextRange(u().createValuesHelper(a),t.expression),_=l.createCallExpression(l.createPropertyAccessExpression(o,"next"),void 0,[]);m(d),m(f);var h=1024&i?l.inlineExpressions([l.createAssignment(d,l.createVoidZero()),g]):g,y=e.setEmitFlags(e.setTextRange(l.createForStatement(e.setEmitFlags(e.setTextRange(l.createVariableDeclarationList([e.setTextRange(l.createVariableDeclaration(o,void 0,void 0,h),t.expression),l.createVariableDeclaration(c,void 0,void 0,_)]),t.expression),2097152),l.createLogicalNot(l.createPropertyAccessExpression(c,"done")),l.createAssignment(c,_),ie(t,l.createPropertyAccessExpression(c,"value"),n)),t),256);return l.createTryStatement(l.createBlock([l.restoreEnclosingLabel(y,r,s&&Q)]),l.createCatchClause(l.createVariableDeclaration(p),e.setEmitFlags(l.createBlock([l.createExpressionStatement(l.createAssignment(d,l.createObjectLiteralExpression([l.createPropertyAssignment("error",p)])))]),1)),l.createBlock([l.createTryStatement(l.createBlock([e.setEmitFlags(l.createIfStatement(l.createLogicalAnd(l.createLogicalAnd(c,l.createLogicalNot(l.createPropertyAccessExpression(c,"done"))),l.createAssignment(f,l.createPropertyAccessExpression(o,"return"))),l.createExpressionStatement(l.createFunctionCallCall(f,o,[]))),1)]),void 0,e.setEmitFlags(l.createBlock([e.setEmitFlags(l.createIfStatement(d,l.createThrowStatement(l.createPropertyAccessExpression(d,"error"))),1)]),1))]))}function ce(e){return 0!=(131072&_.getNodeCheckFlags(e))}function le(t){return e.isForStatement(t)&&!!t.initializer&&ce(t.initializer)}function ue(t){return e.isForStatement(t)&&!!t.condition&&ce(t.condition)}function de(e){return pe(e)||le(e)}function pe(e){return 0!=(65536&_.getNodeCheckFlags(e))}function fe(t,r){t.hoistedLocalVariables||(t.hoistedLocalVariables=[]),function r(n){if(78===n.kind)t.hoistedLocalVariables.push(n);else for(var i=0,a=n.elements;i<a.length;i++){var o=a[i];e.isOmittedExpression(o)||r(o.name)}}(r.name)}function me(t,r,n){switch(t.kind){case 239:return function(t,r,n){var i=t.condition&&ce(t.condition),a=i||t.incrementor&&ce(t.incrementor);return l.updateForStatement(t,e.visitNode(r?r.part:t.initializer,D,e.isForInitializer),e.visitNode(i?void 0:t.condition,S,e.isExpression),e.visitNode(a?void 0:t.incrementor,D,e.isExpression),n)}(t,r,n);case 240:return function(t,r){return l.updateForInStatement(t,e.visitNode(t.initializer,S,e.isForInitializer),e.visitNode(t.expression,S,e.isExpression),r)}(t,n);case 241:return function(t,r){return l.updateForOfStatement(t,void 0,e.visitNode(t.initializer,S,e.isForInitializer),e.visitNode(t.expression,S,e.isExpression),r)}(t,n);case 237:return function(t,r){return l.updateDoStatement(t,r,e.visitNode(t.expression,S,e.isExpression))}(t,n);case 238:return function(t,r){return l.updateWhileStatement(t,e.visitNode(t.expression,S,e.isExpression),r)}(t,n);default:return e.Debug.failBadSyntaxKind(t,"IterationStatement expected")}}function ge(e){return l.createVariableDeclaration(e.originalName,void 0,void 0,e.outParamName)}function _e(e,t){var r=0===t?e.outParamName:e.originalName,n=0===t?e.originalName:e.outParamName;return l.createBinaryExpression(n,62,r)}function he(e,t,r,n){for(var i=0,a=e;i<a.length;i++){var o=a[i];o.flags&t&&n.push(l.createExpressionStatement(_e(o,r)))}}function ye(t,r,n,i){r?(t.labeledNonLocalBreaks||(t.labeledNonLocalBreaks=new e.Map),t.labeledNonLocalBreaks.set(n,i)):(t.labeledNonLocalContinues||(t.labeledNonLocalContinues=new e.Map),t.labeledNonLocalContinues.set(n,i))}function ve(e,t,r,n,i){e&&e.forEach((function(e,a){var o=[];if(!n||n.labels&&n.labels.get(a)){var s=l.createIdentifier(a);o.push(t?l.createBreakStatement(s):l.createContinueStatement(s))}else ye(n,t,a,e),o.push(l.createReturnStatement(r));i.push(l.createCaseClause(l.createStringLiteral(e),o))}))}function be(t,r,n,i,a){var o=r.name;if(e.isBindingPattern(o))for(var s=0,c=o.elements;s<c.length;s++){var u=c[s];e.isOmittedExpression(u)||be(t,u,n,i,a)}else{n.push(l.createParameterDeclaration(void 0,void 0,void 0,o));var d=_.getNodeCheckFlags(r);if(4194304&d||a){var p=l.createUniqueName("out_"+e.idText(o)),f=0;4194304&d&&(f|=1),e.isForStatement(t)&&t.initializer&&_.isBindingCapturedByNode(t.initializer,r)&&(f|=2),i.push({flags:f,originalName:o,outParamName:p})}}}function ke(t,r,n){var i=l.createAssignment(e.createMemberAccessForPropertyName(l,r,e.visitNode(t.name,S,e.isPropertyName)),e.visitNode(t.initializer,S,e.isExpression));return e.setTextRange(i,t),n&&e.startOnNewLine(i),i}function xe(t,r,n){var i=l.createAssignment(e.createMemberAccessForPropertyName(l,r,e.visitNode(t.name,S,e.isPropertyName)),l.cloneNode(t.name));return e.setTextRange(i,t),n&&e.startOnNewLine(i),i}function Ee(t,r,n,i){var a=l.createAssignment(e.createMemberAccessForPropertyName(l,r,e.visitNode(t.name,S,e.isPropertyName)),K(t,t,void 0,n));return e.setTextRange(a,t),i&&e.startOnNewLine(a),a}function Se(r,n){if(8192&r.transformFlags||106===r.expression.kind||e.isSuperProperty(e.skipOuterExpressions(r.expression))){var i=l.createCallBinding(r.expression,m),a=i.target,o=i.thisArg;106===r.expression.kind&&e.setEmitFlags(o,4);var s=void 0;if(s=8192&r.transformFlags?l.createFunctionApplyCall(e.visitNode(a,w,e.isExpression),106===r.expression.kind?o:e.visitNode(o,S,e.isExpression),De(r.arguments,!1,!1,!1)):e.setTextRange(l.createFunctionCallCall(e.visitNode(a,w,e.isExpression),106===r.expression.kind?o:e.visitNode(o,S,e.isExpression),e.visitNodes(r.arguments,S,e.isExpression)),r),106===r.expression.kind){var c=l.createLogicalOr(s,I());s=n?l.createAssignment(l.createUniqueName("_this",48),c):c}return e.setOriginalNode(s,r)}return e.visitEachChild(r,S,t)}function De(t,r,n,i){var a=t.length,o=e.flatten(e.spanMap(t,we,(function(e,t,r,o){return t(e,n,i&&o===a)})));if(1===o.length){var s=o[0];if(!r&&!g.downlevelIteration||e.isPackedArrayLiteral(s)||e.isCallToHelper(s,"___spreadArray"))return o[0]}for(var c=u(),d=e.isSpreadElement(t[0]),p=d?l.createArrayLiteralExpression():o[0],f=d?0:1;f<o.length;f++)p=c.createSpreadArrayHelper(p,g.downlevelIteration&&!e.isPackedArrayLiteral(o[f])?c.createReadHelper(o[f],void 0):o[f]);return p}function we(t){return e.isSpreadElement(t)?Te:Ce}function Te(t){return e.map(t,Ae)}function Ce(t,r,n){return l.createArrayLiteralExpression(e.visitNodes(l.createNodeArray(t,n),S,e.isExpression),r)}function Ae(t){return e.visitNode(t.expression,S,e.isExpression)}function Ne(e){return 8&a&&!e?l.createPropertyAccessExpression(l.createUniqueName("_super",48),"prototype"):l.createUniqueName("_super",48)}function Pe(){0==(2&c)&&(c|=2,t.enableSubstitution(78))}function Ie(){0==(1&c)&&(c|=1,t.enableSubstitution(108),t.enableEmitNotification(167),t.enableEmitNotification(166),t.enableEmitNotification(168),t.enableEmitNotification(169),t.enableEmitNotification(210),t.enableEmitNotification(209),t.enableEmitNotification(253))}function Fe(t,r){return e.hasSyntacticModifier(r,32)?l.getInternalName(t):l.createPropertyAccessExpression(l.getInternalName(t),"prototype")}}}(d||(d={})),function(e){e.transformES5=function(t){var r,n,i=t.factory,a=t.getCompilerOptions();1!==a.jsx&&3!==a.jsx||(r=t.onEmitNode,t.onEmitNode=function(t,i,a){switch(i.kind){case 278:case 279:case 277:var o=i.tagName;n[e.getOriginalNodeId(o)]=!0}r(t,i,a)},t.enableEmitNotification(278),t.enableEmitNotification(279),t.enableEmitNotification(277),n=[]);var o=t.onSubstituteNode;return t.onSubstituteNode=function(t,r){if(r.id&&n&&n[r.id])return o(t,r);if(r=o(t,r),e.isPropertyAccessExpression(r))return function(t){if(e.isPrivateIdentifier(t.name))return t;var r=s(t.name);if(r)return e.setTextRange(i.createElementAccessExpression(t.expression,r),t);return t}(r);if(e.isPropertyAssignment(r))return function(t){var r=e.isIdentifier(t.name)&&s(t.name);if(r)return i.updatePropertyAssignment(t,r,t.initializer);return t}(r);return r},t.enableSubstitution(202),t.enableSubstitution(291),e.chainBundle(t,(function(e){return e}));function s(t){var r=t.originalKeywordKind||(e.nodeIsSynthesized(t)?e.stringToToken(e.idText(t)):void 0);if(void 0!==r&&r>=80&&r<=116)return e.setTextRange(i.createStringLiteralFromNode(t),t)}}}(d||(d={})),function(e){var t,r,n,a,o;!function(e){e[e.Nop=0]="Nop",e[e.Statement=1]="Statement",e[e.Assign=2]="Assign",e[e.Break=3]="Break",e[e.BreakWhenTrue=4]="BreakWhenTrue",e[e.BreakWhenFalse=5]="BreakWhenFalse",e[e.Yield=6]="Yield",e[e.YieldStar=7]="YieldStar",e[e.Return=8]="Return",e[e.Throw=9]="Throw",e[e.Endfinally=10]="Endfinally"}(t||(t={})),function(e){e[e.Open=0]="Open",e[e.Close=1]="Close"}(r||(r={})),function(e){e[e.Exception=0]="Exception",e[e.With=1]="With",e[e.Switch=2]="Switch",e[e.Loop=3]="Loop",e[e.Labeled=4]="Labeled"}(n||(n={})),function(e){e[e.Try=0]="Try",e[e.Catch=1]="Catch",e[e.Finally=2]="Finally",e[e.Done=3]="Done"}(a||(a={})),function(e){e[e.Next=0]="Next",e[e.Throw=1]="Throw",e[e.Return=2]="Return",e[e.Break=3]="Break",e[e.Yield=4]="Yield",e[e.YieldStar=5]="YieldStar",e[e.Catch=6]="Catch",e[e.Endfinally=7]="Endfinally"}(o||(o={})),e.transformGenerators=function(t){var r,n,a,o,s,c,l,u,d,p,f=t.factory,m=t.getEmitHelperFactory,g=t.resumeLexicalEnvironment,_=t.endLexicalEnvironment,h=t.hoistFunctionDeclaration,y=t.hoistVariableDeclaration,v=t.getCompilerOptions(),b=e.getEmitScriptTarget(v),k=t.getEmitResolver(),x=t.onSubstituteNode;t.onSubstituteNode=function(t,i){if(i=x(t,i),1===t)return function(t){if(e.isIdentifier(t))return function(t){if(!e.isGeneratedIdentifier(t)&&r&&r.has(e.idText(t))){var i=e.getOriginalNode(t);if(e.isIdentifier(i)&&i.parent){var a=k.getReferencedValueDeclaration(i);if(a){var o=n[e.getOriginalNodeId(a)];if(o){var s=e.setParent(e.setTextRange(f.cloneNode(o),o),o.parent);return e.setSourceMapRange(s,t),e.setCommentRange(s,t),s}}}}return t}(t);return t}(i);return i};var E,S,D,w,T,C,A,N,P,I,F,O,R=1,M=0,L=0;return e.chainBundle(t,(function(r){if(r.isDeclarationFile||0==(512&r.transformFlags))return r;var n=e.visitEachChild(r,j,t);return e.addEmitHelpers(n,t.readEmitHelpers()),n}));function j(r){var n=r.transformFlags;return o?function(r){switch(r.kind){case 237:case 238:return function(r){return o?(oe(),r=e.visitEachChild(r,j,t),ce(),r):e.visitEachChild(r,j,t)}(r);case 246:return function(r){o&&re({kind:2,isScript:!0,breakLabel:-1});r=e.visitEachChild(r,j,t),o&&le();return r}(r);case 247:return function(r){o&&re({kind:4,isScript:!0,labelText:e.idText(r.label),breakLabel:-1});r=e.visitEachChild(r,j,t),o&&ue();return r}(r);default:return B(r)}}(r):a?B(r):e.isFunctionLikeDeclaration(r)&&r.asteriskToken?function(t){switch(t.kind){case 253:return z(t);case 209:return U(t);default:return e.Debug.failBadSyntaxKind(t)}}(r):512&n?e.visitEachChild(r,j,t):r}function B(r){switch(r.kind){case 253:return z(r);case 209:return U(r);case 168:case 169:return function(r){var n=a,i=o;return a=!1,o=!1,r=e.visitEachChild(r,j,t),a=n,o=i,r}(r);case 234:return function(t){if(262144&t.transformFlags)return void G(t.declarationList);if(1048576&e.getEmitFlags(t))return t;for(var r=0,n=t.declarationList.declarations;r<n.length;r++){var i=n[r];y(i.name)}var a=e.getInitializedVariables(t.declarationList);if(0===a.length)return;return e.setSourceMapRange(f.createExpressionStatement(f.inlineExpressions(e.map(a,$))),t)}(r);case 239:return function(r){o&&oe();var n=r.initializer;if(n&&e.isVariableDeclarationList(n)){for(var i=0,a=n.declarations;i<a.length;i++){var s=a[i];y(s.name)}var c=e.getInitializedVariables(n);r=f.updateForStatement(r,c.length>0?f.inlineExpressions(e.map(c,$)):void 0,e.visitNode(r.condition,j,e.isExpression),e.visitNode(r.incrementor,j,e.isExpression),e.visitNode(r.statement,j,e.isStatement,f.liftToBlock))}else r=e.visitEachChild(r,j,t);o&&ce();return r}(r);case 240:return function(r){o&&oe();var n=r.initializer;if(e.isVariableDeclarationList(n)){for(var i=0,a=n.declarations;i<a.length;i++){var s=a[i];y(s.name)}r=f.updateForInStatement(r,n.declarations[0].name,e.visitNode(r.expression,j,e.isExpression),e.visitNode(r.statement,j,e.isStatement,f.liftToBlock))}else r=e.visitEachChild(r,j,t);o&&ce();return r}(r);case 243:return function(r){if(o){var n=ge(r.label&&e.idText(r.label));if(n>0)return ve(n,r)}return e.visitEachChild(r,j,t)}(r);case 242:return function(r){if(o){var n=_e(r.label&&e.idText(r.label));if(n>0)return ve(n,r)}return e.visitEachChild(r,j,t)}(r);case 244:return function(t){return r=e.visitNode(t.expression,j,e.isExpression),n=t,e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression(r?[ye(2),r]:[ye(2)])),n);var r,n}(r);default:return 262144&r.transformFlags?function(r){switch(r.kind){case 218:return function(r){var n=e.getExpressionAssociativity(r);switch(n){case 0:return function(r){if(Y(r.right))return e.isLogicalOperator(r.operatorToken.kind)?function(t){var r=ee(),n=Z();xe(n,e.visitNode(t.left,j,e.isExpression),t.left),55===t.operatorToken.kind?De(r,n,t.left):Se(r,n,t.left);return xe(n,e.visitNode(t.right,j,e.isExpression),t.right),te(r),n}(r):27===r.operatorToken.kind?J(r):f.updateBinaryExpression(r,Q(e.visitNode(r.left,j,e.isExpression)),r.operatorToken,e.visitNode(r.right,j,e.isExpression));return e.visitEachChild(r,j,t)}(r);case 1:return function(r){var n=r.left,i=r.right;if(Y(i)){var a=void 0;switch(n.kind){case 202:a=f.updatePropertyAccessExpression(n,Q(e.visitNode(n.expression,j,e.isLeftHandSideExpression)),n.name);break;case 203:a=f.updateElementAccessExpression(n,Q(e.visitNode(n.expression,j,e.isLeftHandSideExpression)),Q(e.visitNode(n.argumentExpression,j,e.isExpression)));break;default:a=e.visitNode(n,j,e.isExpression)}var o=r.operatorToken.kind;return e.isCompoundAssignment(o)?e.setTextRange(f.createAssignment(a,e.setTextRange(f.createBinaryExpression(Q(a),e.getNonAssignmentOperatorForCompoundAssignment(o),e.visitNode(i,j,e.isExpression)),r)),r):f.updateBinaryExpression(r,a,r.operatorToken,e.visitNode(i,j,e.isExpression))}return e.visitEachChild(r,j,t)}(r);default:return e.Debug.assertNever(n)}}(r);case 340:return function(t){for(var r=[],n=0,i=t.elements;n<i.length;n++){var a=i[n];e.isBinaryExpression(a)&&27===a.operatorToken.kind?r.push(J(a)):(Y(a)&&r.length>0&&(we(1,[f.createExpressionStatement(f.inlineExpressions(r))]),r=[]),r.push(e.visitNode(a,j,e.isExpression)))}return f.inlineExpressions(r)}(r);case 219:return function(r){if(Y(r.whenTrue)||Y(r.whenFalse)){var n=ee(),i=ee(),a=Z();return De(n,e.visitNode(r.condition,j,e.isExpression),r.condition),xe(a,e.visitNode(r.whenTrue,j,e.isExpression),r.whenTrue),Ee(i),te(n),xe(a,e.visitNode(r.whenFalse,j,e.isExpression),r.whenFalse),te(i),a}return e.visitEachChild(r,j,t)}(r);case 221:return function(t){var r=ee(),n=e.visitNode(t.expression,j,e.isExpression);if(t.asteriskToken){!function(e,t){we(7,[e],t)}(0==(8388608&e.getEmitFlags(t.expression))?e.setTextRange(m().createValuesHelper(n),t):n,t)}else!function(e,t){we(6,[e],t)}(n,t);return te(r),function(t){return e.setTextRange(f.createCallExpression(f.createPropertyAccessExpression(w,"sent"),void 0,[]),t)}(t)}(r);case 200:return function(e){return V(e.elements,void 0,void 0,e.multiLine)}(r);case 201:return function(t){var r=t.properties,n=t.multiLine,i=X(r),a=Z();xe(a,f.createObjectLiteralExpression(e.visitNodes(r,j,e.isObjectLiteralElementLike,0,i),n));var o=e.reduceLeft(r,s,[],i);return o.push(n?e.startOnNewLine(e.setParent(e.setTextRange(f.cloneNode(a),a),a.parent)):a),f.inlineExpressions(o);function s(r,i){Y(i)&&r.length>0&&(ke(f.createExpressionStatement(f.inlineExpressions(r))),r=[]);var o=e.createExpressionForObjectLiteralElementLike(f,t,i,a),s=e.visitNode(o,j,e.isExpression);return s&&(n&&e.startOnNewLine(s),r.push(s)),r}}(r);case 203:return function(r){if(Y(r.argumentExpression))return f.updateElementAccessExpression(r,Q(e.visitNode(r.expression,j,e.isLeftHandSideExpression)),e.visitNode(r.argumentExpression,j,e.isExpression));return e.visitEachChild(r,j,t)}(r);case 204:return function(r){if(!e.isImportCall(r)&&e.forEach(r.arguments,Y)){var n=f.createCallBinding(r.expression,y,b,!0),i=n.target,a=n.thisArg;return e.setOriginalNode(e.setTextRange(f.createFunctionApplyCall(Q(e.visitNode(i,j,e.isLeftHandSideExpression)),a,V(r.arguments)),r),r)}return e.visitEachChild(r,j,t)}(r);case 205:return function(r){if(e.forEach(r.arguments,Y)){var n=f.createCallBinding(f.createPropertyAccessExpression(r.expression,"bind"),y),i=n.target,a=n.thisArg;return e.setOriginalNode(e.setTextRange(f.createNewExpression(f.createFunctionApplyCall(Q(e.visitNode(i,j,e.isExpression)),a,V(r.arguments,f.createVoidZero())),void 0,[]),r),r)}return e.visitEachChild(r,j,t)}(r);default:return e.visitEachChild(r,j,t)}}(r):1049088&r.transformFlags?e.visitEachChild(r,j,t):r}}function z(r){if(r.asteriskToken)r=e.setOriginalNode(e.setTextRange(f.createFunctionDeclaration(void 0,r.modifiers,void 0,r.name,void 0,e.visitParameterList(r.parameters,j,t),void 0,q(r.body)),r),r);else{var n=a,i=o;a=!1,o=!1,r=e.visitEachChild(r,j,t),a=n,o=i}return a?void h(r):r}function U(r){if(r.asteriskToken)r=e.setOriginalNode(e.setTextRange(f.createFunctionExpression(void 0,void 0,r.name,void 0,e.visitParameterList(r.parameters,j,t),void 0,q(r.body)),r),r);else{var n=a,i=o;a=!1,o=!1,r=e.visitEachChild(r,j,t),a=n,o=i}return r}function q(t){var r=[],n=a,i=o,m=s,h=c,y=l,v=u,b=d,k=p,x=R,T=E,C=S,A=D,N=w;a=!0,o=!1,s=void 0,c=void 0,l=void 0,u=void 0,d=void 0,p=void 0,R=1,E=void 0,S=void 0,D=void 0,w=f.createTempVariable(void 0),g();var P=f.copyPrologue(t.statements,r,!1,j);H(t.statements,P);var I=Te();return e.insertStatementsAfterStandardPrologue(r,_()),r.push(f.createReturnStatement(I)),a=n,o=i,s=m,c=h,l=y,u=v,d=b,p=k,R=x,E=T,S=C,D=A,w=N,e.setTextRange(f.createBlock(r,t.multiLine),t)}function J(t){var r=[];return n(t.left),n(t.right),f.inlineExpressions(r);function n(t){e.isBinaryExpression(t)&&27===t.operatorToken.kind?(n(t.left),n(t.right)):(Y(t)&&r.length>0&&(we(1,[f.createExpressionStatement(f.inlineExpressions(r))]),r=[]),r.push(e.visitNode(t,j,e.isExpression)))}}function V(t,r,n,a){var o,s=X(t);if(s>0){o=Z();var c=e.visitNodes(t,j,e.isExpression,0,s);xe(o,f.createArrayLiteralExpression(r?i([r],c):c)),r=void 0}var l=e.reduceLeft(t,(function(t,n){if(Y(n)&&t.length>0){var s=void 0!==o;o||(o=Z()),xe(o,s?f.createArrayConcatCall(o,[f.createArrayLiteralExpression(t,a)]):f.createArrayLiteralExpression(r?i([r],t):t,a)),r=void 0,t=[]}return t.push(e.visitNode(n,j,e.isExpression)),t}),[],s);return o?f.createArrayConcatCall(o,[f.createArrayLiteralExpression(l,a)]):e.setTextRange(f.createArrayLiteralExpression(r?i([r],l):l,a),n)}function H(e,t){void 0===t&&(t=0);for(var r=e.length,n=t;n<r;n++)W(e[n])}function K(t){e.isBlock(t)?H(t.statements):W(t)}function W(i){var a=o;o||(o=Y(i)),function(i){switch(i.kind){case 232:return function(t){Y(t)?H(t.statements):ke(e.visitNode(t,j,e.isStatement))}(i);case 235:return function(t){ke(e.visitNode(t,j,e.isStatement))}(i);case 236:return function(t){if(Y(t))if(Y(t.thenStatement)||Y(t.elseStatement)){var r=ee(),n=t.elseStatement?ee():void 0;De(t.elseStatement?n:r,e.visitNode(t.expression,j,e.isExpression),t.expression),K(t.thenStatement),t.elseStatement&&(Ee(r),te(n),K(t.elseStatement)),te(r)}else ke(e.visitNode(t,j,e.isStatement));else ke(e.visitNode(t,j,e.isStatement))}(i);case 237:return function(t){if(Y(t)){var r=ee(),n=ee();se(r),te(n),K(t.statement),te(r),Se(n,e.visitNode(t.expression,j,e.isExpression)),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 238:return function(t){if(Y(t)){var r=ee(),n=se(r);te(r),De(n,e.visitNode(t.expression,j,e.isExpression)),K(t.statement),Ee(r),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 239:return function(t){if(Y(t)){var r=ee(),n=ee(),i=se(n);if(t.initializer){var a=t.initializer;e.isVariableDeclarationList(a)?G(a):ke(e.setTextRange(f.createExpressionStatement(e.visitNode(a,j,e.isExpression)),a))}te(r),t.condition&&De(i,e.visitNode(t.condition,j,e.isExpression)),K(t.statement),te(n),t.incrementor&&ke(e.setTextRange(f.createExpressionStatement(e.visitNode(t.incrementor,j,e.isExpression)),t.incrementor)),Ee(r),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 240:return function(t){if(Y(t)){var r=Z(),n=Z(),i=f.createLoopVariable(),a=t.initializer;y(i),xe(r,f.createArrayLiteralExpression()),ke(f.createForInStatement(n,e.visitNode(t.expression,j,e.isExpression),f.createExpressionStatement(f.createCallExpression(f.createPropertyAccessExpression(r,"push"),void 0,[n])))),xe(i,f.createNumericLiteral(0));var o=ee(),s=ee(),c=se(s);te(o),De(c,f.createLessThan(i,f.createPropertyAccessExpression(r,"length")));var l=void 0;if(e.isVariableDeclarationList(a)){for(var u=0,d=a.declarations;u<d.length;u++){var p=d[u];y(p.name)}l=f.cloneNode(a.declarations[0].name)}else l=e.visitNode(a,j,e.isExpression),e.Debug.assert(e.isLeftHandSideExpression(l));xe(l,f.createElementAccessExpression(r,i)),K(t.statement),te(s),ke(f.createExpressionStatement(f.createPostfixIncrement(i))),Ee(o),ce()}else ke(e.visitNode(t,j,e.isStatement))}(i);case 242:return function(t){var r=_e(t.label?e.idText(t.label):void 0);r>0?Ee(r,t):ke(t)}(i);case 243:return function(t){var r=ge(t.label?e.idText(t.label):void 0);r>0?Ee(r,t):ke(t)}(i);case 244:return function(t){r=e.visitNode(t.expression,j,e.isExpression),n=t,we(8,[r],n);var r,n}(i);case 245:return function(t){Y(t)?(r=Q(e.visitNode(t.expression,j,e.isExpression)),n=ee(),i=ee(),te(n),re({kind:1,expression:r,startLabel:n,endLabel:i}),K(t.statement),e.Debug.assert(1===ae()),te(ne().endLabel)):ke(e.visitNode(t,j,e.isStatement));var r,n,i}(i);case 246:return function(t){if(Y(t.caseBlock)){for(var r=t.caseBlock,n=r.clauses.length,i=(re({kind:2,isScript:!1,breakLabel:m=ee()}),m),a=Q(e.visitNode(t.expression,j,e.isExpression)),o=[],s=-1,c=0;c<n;c++){var l=r.clauses[c];o.push(ee()),288===l.kind&&-1===s&&(s=c)}for(var u=0,d=[];u<n;){var p=0;for(c=u;c<n;c++){if(287===(l=r.clauses[c]).kind){if(Y(l.expression)&&d.length>0)break;d.push(f.createCaseClause(e.visitNode(l.expression,j,e.isExpression),[ve(o[c],l.expression)]))}else p++}d.length&&(ke(f.createSwitchStatement(a,f.createCaseBlock(d))),u+=d.length,d=[]),p>0&&(u+=p,p=0)}Ee(s>=0?o[s]:i);for(c=0;c<n;c++)te(o[c]),H(r.clauses[c].statements);le()}else ke(e.visitNode(t,j,e.isStatement));var m}(i);case 247:return function(t){Y(t)?(r=e.idText(t.label),n=ee(),re({kind:4,isScript:!1,labelText:r,breakLabel:n}),K(t.statement),ue()):ke(e.visitNode(t,j,e.isStatement));var r,n}(i);case 248:return function(t){var r;n=e.visitNode(null!==(r=t.expression)&&void 0!==r?r:f.createVoidZero(),j,e.isExpression),i=t,we(9,[n],i);var n,i}(i);case 249:return function(i){Y(i)?(a=ee(),o=ee(),te(a),re({kind:0,state:0,startLabel:a,endLabel:o}),be(),K(i.tryBlock),i.catchClause&&(!function(i){var a;if(e.Debug.assert(0===ae()),e.isGeneratedIdentifier(i.name))a=i.name,y(i.name);else{var o=e.idText(i.name);a=Z(o),r||(r=new e.Map,n=[],t.enableSubstitution(78)),r.set(o,!0),n[e.getOriginalNodeId(i)]=a}var s=ie();e.Debug.assert(s.state<1);var c=s.endLabel;Ee(c);var l=ee();te(l),s.state=1,s.catchVariable=a,s.catchLabel=l,xe(a,f.createCallExpression(f.createPropertyAccessExpression(w,"sent"),void 0,[])),be()}(i.catchClause.variableDeclaration),K(i.catchClause.block)),i.finallyBlock&&(!function(){e.Debug.assert(0===ae());var t=ie();e.Debug.assert(t.state<2);var r=t.endLabel;Ee(r);var n=ee();te(n),t.state=2,t.finallyLabel=n}(),K(i.finallyBlock)),function(){e.Debug.assert(0===ae());var t=ne(),r=t.state;r<2?Ee(t.endLabel):we(10);te(t.endLabel),be(),t.state=3}()):ke(e.visitEachChild(i,j,t));var a,o}(i);default:ke(e.visitNode(i,j,e.isStatement))}}(i),o=a}function G(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r],a=f.cloneNode(i.name);e.setCommentRange(a,i.name),y(a)}for(var o=e.getInitializedVariables(t),s=o.length,c=0,l=[];c<s;){for(var u=c;u<s;u++){if(Y((i=o[u]).initializer)&&l.length>0)break;l.push($(i))}l.length&&(ke(f.createExpressionStatement(f.inlineExpressions(l))),c+=l.length,l=[])}}function $(t){return e.setSourceMapRange(f.createAssignment(e.setSourceMapRange(f.cloneNode(t.name),t.name),e.visitNode(t.initializer,j,e.isExpression)),t)}function Y(e){return!!e&&0!=(262144&e.transformFlags)}function X(e){for(var t=e.length,r=0;r<t;r++)if(Y(e[r]))return r;return-1}function Q(t){if(e.isGeneratedIdentifier(t)||4096&e.getEmitFlags(t))return t;var r=f.createTempVariable(y);return xe(r,t,t),r}function Z(e){var t=e?f.createUniqueName(e):f.createTempVariable(void 0);return y(t),t}function ee(){d||(d=[]);var e=R;return R++,d[e]=-1,e}function te(t){e.Debug.assert(void 0!==d,"No labels were defined."),d[t]=E?E.length:0}function re(e){s||(s=[],l=[],c=[],u=[]);var t=l.length;return l[t]=0,c[t]=E?E.length:0,s[t]=e,u.push(e),t}function ne(){var t=ie();if(void 0===t)return e.Debug.fail("beginBlock was never called.");var r=l.length;return l[r]=1,c[r]=E?E.length:0,s[r]=t,u.pop(),t}function ie(){return e.lastOrUndefined(u)}function ae(){var e=ie();return e&&e.kind}function oe(){re({kind:3,isScript:!0,breakLabel:-1,continueLabel:-1})}function se(e){var t=ee();return re({kind:3,isScript:!1,breakLabel:t,continueLabel:e}),t}function ce(){e.Debug.assert(3===ae());var t=ne(),r=t.breakLabel;t.isScript||te(r)}function le(){e.Debug.assert(2===ae());var t=ne(),r=t.breakLabel;t.isScript||te(r)}function ue(){e.Debug.assert(4===ae());var t=ne();t.isScript||te(t.breakLabel)}function de(e){return 2===e.kind||3===e.kind}function pe(e){return 4===e.kind}function fe(e){return 3===e.kind}function me(e,t){for(var r=t;r>=0;r--){var n=u[r];if(!pe(n))break;if(n.labelText===e)return!0}return!1}function ge(e){if(u)if(e)for(var t=u.length-1;t>=0;t--){if(pe(r=u[t])&&r.labelText===e)return r.breakLabel;if(de(r)&&me(e,t-1))return r.breakLabel}else for(t=u.length-1;t>=0;t--){var r;if(de(r=u[t]))return r.breakLabel}return 0}function _e(e){if(u)if(e)for(var t=u.length-1;t>=0;t--){if(fe(r=u[t])&&me(e,t-1))return r.continueLabel}else for(t=u.length-1;t>=0;t--){var r;if(fe(r=u[t]))return r.continueLabel}return 0}function he(e){if(void 0!==e&&e>0){void 0===p&&(p=[]);var t=f.createNumericLiteral(-1);return void 0===p[e]?p[e]=[t]:p[e].push(t),t}return f.createOmittedExpression()}function ye(t){var r=f.createNumericLiteral(t);return e.addSyntheticTrailingComment(r,3,function(e){switch(e){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}(t)),r}function ve(t,r){return e.Debug.assertLessThan(0,t,"Invalid label"),e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),r)}function be(){we(0)}function ke(e){e?we(1,[e]):be()}function xe(e,t,r){we(2,[e,t],r)}function Ee(e,t){we(3,[e],t)}function Se(e,t,r){we(4,[e,t],r)}function De(e,t,r){we(5,[e,t],r)}function we(e,t,r){void 0===E&&(E=[],S=[],D=[]),void 0===d&&te(ee());var n=E.length;E[n]=e,S[n]=t,D[n]=r}function Te(){M=0,L=0,T=void 0,C=!1,A=!1,N=void 0,P=void 0,I=void 0,F=void 0,O=void 0;var t=function(){if(E){for(var t=0;t<E.length;t++)Pe(t);Ce(E.length)}else Ce(0);if(N){var r=f.createPropertyAccessExpression(w,"label"),n=f.createSwitchStatement(r,f.createCaseBlock(N));return[e.startOnNewLine(n)]}if(P)return P;return[]}();return m().createGeneratorHelper(e.setEmitFlags(f.createFunctionExpression(void 0,void 0,void 0,void 0,[f.createParameterDeclaration(void 0,void 0,void 0,w)],void 0,f.createBlock(t,t.length>0)),524288))}function Ce(e){(function(e){if(!A)return!0;if(!d||!p)return!1;for(var t=0;t<d.length;t++)if(d[t]===e&&p[t])return!0;return!1})(e)&&(Ne(e),O=void 0,Fe(void 0,void 0)),P&&N&&Ae(!1),function(){if(void 0!==p&&void 0!==T)for(var e=0;e<T.length;e++){var t=T[e];if(void 0!==t)for(var r=0,n=t;r<n.length;r++){var i=n[r],a=p[i];if(void 0!==a)for(var o=0,s=a;o<s.length;o++){s[o].text=String(e)}}}}()}function Ae(e){if(N||(N=[]),P){if(O)for(var t=O.length-1;t>=0;t--){var r=O[t];P=[f.createWithStatement(r.expression,f.createBlock(P))]}if(F){var n=F.startLabel,i=F.catchLabel,a=F.finallyLabel,o=F.endLabel;P.unshift(f.createExpressionStatement(f.createCallExpression(f.createPropertyAccessExpression(f.createPropertyAccessExpression(w,"trys"),"push"),void 0,[f.createArrayLiteralExpression([he(n),he(i),he(a),he(o)])]))),F=void 0}e&&P.push(f.createExpressionStatement(f.createAssignment(f.createPropertyAccessExpression(w,"label"),f.createNumericLiteral(L+1))))}N.push(f.createCaseClause(f.createNumericLiteral(L),P||[])),P=void 0}function Ne(e){if(d)for(var t=0;t<d.length;t++)d[t]===e&&(P&&(Ae(!C),C=!1,A=!1,L++),void 0===T&&(T=[]),void 0===T[L]?T[L]=[t]:T[L].push(t))}function Pe(t){if(Ne(t),function(e){if(s)for(;M<l.length&&c[M]<=e;M++){var t=s[M],r=l[M];switch(t.kind){case 0:0===r?(I||(I=[]),P||(P=[]),I.push(F),F=t):1===r&&(F=I.pop());break;case 1:0===r?(O||(O=[]),O.push(t)):1===r&&O.pop()}}}(t),!C){C=!1,A=!1;var r=E[t];if(0!==r){if(10===r)return C=!0,void Ie(f.createReturnStatement(f.createArrayLiteralExpression([ye(7)])));var n=S[t];if(1===r)return Ie(n[0]);var i,a,o,u=D[t];switch(r){case 2:return i=n[0],a=n[1],o=u,void Ie(e.setTextRange(f.createExpressionStatement(f.createAssignment(i,a)),o));case 3:return function(t,r){C=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),r),384))}(n[0],u);case 4:return function(t,r,n){Ie(e.setEmitFlags(f.createIfStatement(r,e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),n),384)),1))}(n[0],n[1],u);case 5:return function(t,r,n){Ie(e.setEmitFlags(f.createIfStatement(f.createLogicalNot(r),e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(3),he(t)])),n),384)),1))}(n[0],n[1],u);case 6:return function(t,r){C=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression(t?[ye(4),t]:[ye(4)])),r),384))}(n[0],u);case 7:return function(t,r){C=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression([ye(5),t])),r),384))}(n[0],u);case 8:return Fe(n[0],u);case 9:return function(t,r){C=!0,A=!0,Ie(e.setTextRange(f.createThrowStatement(t),r))}(n[0],u)}}}}function Ie(e){e&&(P?P.push(e):P=[e])}function Fe(t,r){C=!0,A=!0,Ie(e.setEmitFlags(e.setTextRange(f.createReturnStatement(f.createArrayLiteralExpression(t?[ye(2),t]:[ye(2)])),r),384))}}}(d||(d={})),function(e){e.transformModule=function(r){var n=r.factory,a=r.getEmitHelperFactory,o=r.startLexicalEnvironment,s=r.endLexicalEnvironment,c=r.hoistVariableDeclaration,l=r.getCompilerOptions(),u=r.getEmitResolver(),d=r.getEmitHost(),p=e.getEmitScriptTarget(l),f=e.getEmitModuleKind(l),m=r.onSubstituteNode,g=r.onEmitNode;r.onSubstituteNode=function(t,r){if((r=m(t,r)).id&&y[r.id])return r;if(1===t)return function(t){switch(t.kind){case 78:return Y(t);case 218:return function(t){if(e.isAssignmentOperator(t.operatorToken.kind)&&e.isIdentifier(t.left)&&!e.isGeneratedIdentifier(t.left)&&!e.isLocalName(t.left)&&!e.isDeclarationNameOfEnumOrNamespace(t.left)){var r=X(t.left);if(r){for(var n=t,i=0,a=r;i<a.length;i++){var o=a[i];y[e.getNodeId(n)]=!0,n=G(o,n,t)}return n}}return t}(t);case 217:case 216:return function(t){if((45===t.operator||46===t.operator)&&e.isIdentifier(t.operand)&&!e.isGeneratedIdentifier(t.operand)&&!e.isLocalName(t.operand)&&!e.isDeclarationNameOfEnumOrNamespace(t.operand)){var r=X(t.operand);if(r){for(var i=217===t.kind?e.setTextRange(n.createBinaryExpression(t.operand,n.createToken(45===t.operator?63:64),n.createNumericLiteral(1)),t):t,a=0,o=r;a<o.length;a++){var s=o[a];y[e.getNodeId(i)]=!0,i=n.createParenthesizedExpression(G(s,i))}return i}}return t}(t)}return t}(r);if(e.isShorthandPropertyAssignment(r))return function(t){var r=t.name,i=Y(r);if(i!==r){if(t.objectAssignmentInitializer){var a=n.createAssignment(i,t.objectAssignmentInitializer);return e.setTextRange(n.createPropertyAssignment(r,a),t)}return e.setTextRange(n.createPropertyAssignment(r,i),t)}return t}(r);return r},r.onEmitNode=function(t,r,n){300===r.kind?(_=r,h=b[e.getOriginalNodeId(_)],y=[],g(t,r,n),_=void 0,h=void 0,y=void 0):g(t,r,n)},r.enableSubstitution(78),r.enableSubstitution(218),r.enableSubstitution(216),r.enableSubstitution(217),r.enableSubstitution(292),r.enableEmitNotification(300);var _,h,y,v,b=[],k=[];return e.chainBundle(r,(function(t){if(t.isDeclarationFile||!(e.isEffectiveExternalModule(t,l)||2097152&t.transformFlags||e.isJsonSourceFile(t)&&e.hasJsonModuleEmitEnabled(l)&&e.outFile(l)))return t;_=t,h=e.collectExternalModuleInfo(r,t,u,l),b[e.getOriginalNodeId(t)]=h;var n=function(t){switch(t){case e.ModuleKind.AMD:return S;case e.ModuleKind.UMD:return D;default:return E}}(f),i=n(t);return _=void 0,h=void 0,v=!1,i}));function x(){return!(h.exportEquals||!e.isExternalModule(_))}function E(t){o();var i=[],a=e.getStrictOptionValue(l,"alwaysStrict")||!l.noImplicitUseStrict&&e.isExternalModule(_),c=n.copyPrologue(t.statements,i,a&&!e.isJsonSourceFile(t),N);if(x()&&e.append(i,W()),e.length(h.exportedNames))for(var u=0;u<h.exportedNames.length;u+=50)e.append(i,n.createExpressionStatement(e.reduceLeft(h.exportedNames.slice(u,u+50),(function(t,r){return n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.createIdentifier(e.idText(r))),t)}),n.createVoidZero())));e.append(i,e.visitNode(h.externalHelpersImportDeclaration,N,e.isStatement)),e.addRange(i,e.visitNodes(t.statements,N,e.isStatement,c)),A(i,!1),e.insertStatementsAfterStandardPrologue(i,s());var d=n.updateSourceFile(t,e.setTextRange(n.createNodeArray(i),t.statements));return e.addEmitHelpers(d,r.readEmitHelpers()),d}function S(t){var a=n.createIdentifier("define"),o=e.tryGetModuleNameFromFile(n,t,d,l),s=e.isJsonSourceFile(t)&&t,c=w(t,!0),u=c.aliasedModuleNames,p=c.unaliasedModuleNames,f=c.importAliasNames,m=n.updateSourceFile(t,e.setTextRange(n.createNodeArray([n.createExpressionStatement(n.createCallExpression(a,void 0,i(i([],o?[o]:[]),[n.createArrayLiteralExpression(s?e.emptyArray:i(i([n.createStringLiteral("require"),n.createStringLiteral("exports")],u),p)),s?s.statements.length?s.statements[0].expression:n.createObjectLiteralExpression():n.createFunctionExpression(void 0,void 0,void 0,void 0,i([n.createParameterDeclaration(void 0,void 0,void 0,"require"),n.createParameterDeclaration(void 0,void 0,void 0,"exports")],f),void 0,C(t))])))]),t.statements));return e.addEmitHelpers(m,r.readEmitHelpers()),m}function D(t){var a=w(t,!1),o=a.aliasedModuleNames,s=a.unaliasedModuleNames,c=a.importAliasNames,u=e.tryGetModuleNameFromFile(n,t,d,l),p=n.createFunctionExpression(void 0,void 0,void 0,void 0,[n.createParameterDeclaration(void 0,void 0,void 0,"factory")],void 0,e.setTextRange(n.createBlock([n.createIfStatement(n.createLogicalAnd(n.createTypeCheck(n.createIdentifier("module"),"object"),n.createTypeCheck(n.createPropertyAccessExpression(n.createIdentifier("module"),"exports"),"object")),n.createBlock([n.createVariableStatement(void 0,[n.createVariableDeclaration("v",void 0,void 0,n.createCallExpression(n.createIdentifier("factory"),void 0,[n.createIdentifier("require"),n.createIdentifier("exports")]))]),e.setEmitFlags(n.createIfStatement(n.createStrictInequality(n.createIdentifier("v"),n.createIdentifier("undefined")),n.createExpressionStatement(n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("module"),"exports"),n.createIdentifier("v")))),1)]),n.createIfStatement(n.createLogicalAnd(n.createTypeCheck(n.createIdentifier("define"),"function"),n.createPropertyAccessExpression(n.createIdentifier("define"),"amd")),n.createBlock([n.createExpressionStatement(n.createCallExpression(n.createIdentifier("define"),void 0,i(i([],u?[u]:[]),[n.createArrayLiteralExpression(i(i([n.createStringLiteral("require"),n.createStringLiteral("exports")],o),s)),n.createIdentifier("factory")])))])))],!0),void 0)),f=n.updateSourceFile(t,e.setTextRange(n.createNodeArray([n.createExpressionStatement(n.createCallExpression(p,void 0,[n.createFunctionExpression(void 0,void 0,void 0,void 0,i([n.createParameterDeclaration(void 0,void 0,void 0,"require"),n.createParameterDeclaration(void 0,void 0,void 0,"exports")],c),void 0,C(t))]))]),t.statements));return e.addEmitHelpers(f,r.readEmitHelpers()),f}function w(t,r){for(var i=[],a=[],o=[],s=0,c=t.amdDependencies;s<c.length;s++){var p=c[s];p.name?(i.push(n.createStringLiteral(p.path)),o.push(n.createParameterDeclaration(void 0,void 0,void 0,p.name))):a.push(n.createStringLiteral(p.path))}for(var f=0,m=h.externalImports;f<m.length;f++){var g=m[f],y=e.getExternalModuleNameLiteral(n,g,_,d,u,l),v=e.getLocalNameForExternalImport(n,g,_);y&&(r&&v?(e.setEmitFlags(v,4),i.push(y),o.push(n.createParameterDeclaration(void 0,void 0,void 0,v))):a.push(y))}return{aliasedModuleNames:i,unaliasedModuleNames:a,importAliasNames:o}}function T(t){if(!e.isImportEqualsDeclaration(t)&&!e.isExportDeclaration(t)&&e.getExternalModuleNameLiteral(n,t,_,d,u,l)){var r=e.getLocalNameForExternalImport(n,t,_),i=R(t,r);if(i!==r)return n.createExpressionStatement(n.createAssignment(r,i))}}function C(r){o();var i=[],a=n.copyPrologue(r.statements,i,!l.noImplicitUseStrict,N);x()&&e.append(i,W()),e.length(h.exportedNames)&&e.append(i,n.createExpressionStatement(e.reduceLeft(h.exportedNames,(function(t,r){return n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.createIdentifier(e.idText(r))),t)}),n.createVoidZero()))),e.append(i,e.visitNode(h.externalHelpersImportDeclaration,N,e.isStatement)),f===e.ModuleKind.AMD&&e.addRange(i,e.mapDefined(h.externalImports,T)),e.addRange(i,e.visitNodes(r.statements,N,e.isStatement,a)),A(i,!0),e.insertStatementsAfterStandardPrologue(i,s());var c=n.createBlock(i,!0);return v&&e.addEmitHelper(c,t),c}function A(t,r){if(h.exportEquals){var i=e.visitNode(h.exportEquals.expression,P);if(i)if(r){var a=n.createReturnStatement(i);e.setTextRange(a,h.exportEquals),e.setEmitFlags(a,1920),t.push(a)}else{a=n.createExpressionStatement(n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("module"),"exports"),i));e.setTextRange(a,h.exportEquals),e.setEmitFlags(a,1536),t.push(a)}}}function N(t){switch(t.kind){case 264:return function(t){var r,i=e.getNamespaceDeclarationNode(t);if(f!==e.ModuleKind.AMD){if(!t.importClause)return e.setOriginalNode(e.setTextRange(n.createExpressionStatement(M(t)),t),t);var a=[];i&&!e.isDefaultImport(t)?a.push(n.createVariableDeclaration(n.cloneNode(i.name),void 0,void 0,R(t,M(t)))):(a.push(n.createVariableDeclaration(n.getGeneratedNameForNode(t),void 0,void 0,R(t,M(t)))),i&&e.isDefaultImport(t)&&a.push(n.createVariableDeclaration(n.cloneNode(i.name),void 0,void 0,n.getGeneratedNameForNode(t)))),r=e.append(r,e.setOriginalNode(e.setTextRange(n.createVariableStatement(void 0,n.createVariableDeclarationList(a,p>=2?2:0)),t),t))}else i&&e.isDefaultImport(t)&&(r=e.append(r,n.createVariableStatement(void 0,n.createVariableDeclarationList([e.setOriginalNode(e.setTextRange(n.createVariableDeclaration(n.cloneNode(i.name),void 0,void 0,n.getGeneratedNameForNode(t)),t),t)],p>=2?2:0))));if(B(t)){var o=e.getOriginalNodeId(t);k[o]=z(k[o],t)}else r=z(r,t);return e.singleOrMany(r)}(t);case 263:return function(t){var r;e.Debug.assert(e.isExternalModuleImportEqualsDeclaration(t),"import= for internal module references should be handled in an earlier transformer."),f!==e.ModuleKind.AMD?r=e.hasSyntacticModifier(t,1)?e.append(r,e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(t.name,M(t))),t),t)):e.append(r,e.setOriginalNode(e.setTextRange(n.createVariableStatement(void 0,n.createVariableDeclarationList([n.createVariableDeclaration(n.cloneNode(t.name),void 0,void 0,M(t))],p>=2?2:0)),t),t)):e.hasSyntacticModifier(t,1)&&(r=e.append(r,e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(n.getExportName(t),n.getLocalName(t))),t),t)));if(B(t)){var i=e.getOriginalNodeId(t);k[i]=U(k[i],t)}else r=U(r,t);return e.singleOrMany(r)}(t);case 270:return function(t){if(!t.moduleSpecifier)return;var r=n.getGeneratedNameForNode(t);if(t.exportClause&&e.isNamedExports(t.exportClause)){var i=[];f!==e.ModuleKind.AMD&&i.push(e.setOriginalNode(e.setTextRange(n.createVariableStatement(void 0,n.createVariableDeclarationList([n.createVariableDeclaration(r,void 0,void 0,M(t))])),t),t));for(var o=0,s=t.exportClause.elements;o<s.length;o++){var c=s[o];if(0===p)i.push(e.setOriginalNode(e.setTextRange(n.createExpressionStatement(a().createCreateBindingHelper(r,n.createStringLiteralFromNode(c.propertyName||c.name),c.propertyName?n.createStringLiteralFromNode(c.name):void 0)),c),c));else{var u=!(!l.esModuleInterop||67108864&e.getEmitFlags(t)||"default"!==e.idText(c.propertyName||c.name)),d=n.createPropertyAccessExpression(u?a().createImportDefaultHelper(r):r,c.propertyName||c.name);i.push(e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(n.getExportName(c),d,void 0,!0)),c),c))}}return e.singleOrMany(i)}return t.exportClause?((i=[]).push(e.setOriginalNode(e.setTextRange(n.createExpressionStatement(G(n.cloneNode(t.exportClause.name),function(t,r){if(!l.esModuleInterop||67108864&e.getEmitFlags(t))return r;if(e.getExportNeedsImportStarHelper(t))return a().createImportStarHelper(r);return r}(t,f!==e.ModuleKind.AMD?M(t):e.isExportNamespaceAsDefaultDeclaration(t)?r:n.createIdentifier(e.idText(t.exportClause.name))))),t),t)),e.singleOrMany(i)):e.setOriginalNode(e.setTextRange(n.createExpressionStatement(a().createExportStarHelper(f!==e.ModuleKind.AMD?M(t):r)),t),t)}(t);case 269:return function(t){if(t.isExportEquals)return;var r,i=t.original;if(i&&B(i)){var a=e.getOriginalNodeId(t);k[a]=K(k[a],n.createIdentifier("default"),e.visitNode(t.expression,P),t,!0)}else r=K(r,n.createIdentifier("default"),e.visitNode(t.expression,P),t,!0);return e.singleOrMany(r)}(t);case 234:return function(t){var i,a,o;if(e.hasSyntacticModifier(t,1)){for(var s=void 0,c=!1,l=0,u=t.declarationList.declarations;l<u.length;l++){var d=u[l];if(e.isIdentifier(d.name)&&e.isLocalName(d.name))s||(s=e.visitNodes(t.modifiers,$,e.isModifier)),a=e.append(a,d);else if(d.initializer)if(!e.isBindingPattern(d.name)&&(e.isArrowFunction(d.initializer)||e.isFunctionExpression(d.initializer)||e.isClassExpression(d.initializer))){var p=n.createAssignment(e.setTextRange(n.createPropertyAccessExpression(n.createIdentifier("exports"),d.name),d.name),n.createIdentifier(e.getTextOfIdentifierOrLiteral(d.name))),f=n.createVariableDeclaration(d.name,d.exclamationToken,d.type,e.visitNode(d.initializer,P));a=e.append(a,f),o=e.append(o,p),c=!0}else o=e.append(o,j(d))}if(a&&(i=e.append(i,n.updateVariableStatement(t,s,n.updateVariableDeclarationList(t.declarationList,a)))),o){var m=e.setOriginalNode(e.setTextRange(n.createExpressionStatement(n.inlineExpressions(o)),t),t);c&&e.removeAllComments(m),i=e.append(i,m)}}else i=e.append(i,e.visitEachChild(t,P,r));if(B(t)){var g=e.getOriginalNodeId(t);k[g]=q(k[g],t)}else i=q(i,t);return e.singleOrMany(i)}(t);case 253:return function(t){var i;i=e.hasSyntacticModifier(t,1)?e.append(i,e.setOriginalNode(e.setTextRange(n.createFunctionDeclaration(void 0,e.visitNodes(t.modifiers,$,e.isModifier),t.asteriskToken,n.getDeclarationName(t,!0,!0),void 0,e.visitNodes(t.parameters,P),void 0,e.visitEachChild(t.body,P,r)),t),t)):e.append(i,e.visitEachChild(t,P,r));if(B(t)){var a=e.getOriginalNodeId(t);k[a]=V(k[a],t)}else i=V(i,t);return e.singleOrMany(i)}(t);case 254:return function(t){var i;i=e.hasSyntacticModifier(t,1)?e.append(i,e.setOriginalNode(e.setTextRange(n.createClassDeclaration(void 0,e.visitNodes(t.modifiers,$,e.isModifier),n.getDeclarationName(t,!0,!0),void 0,e.visitNodes(t.heritageClauses,P),e.visitNodes(t.members,P)),t),t)):e.append(i,e.visitEachChild(t,P,r));if(B(t)){var a=e.getOriginalNodeId(t);k[a]=V(k[a],t)}else i=V(i,t);return e.singleOrMany(i)}(t);case 341:return function(t){if(B(t)&&234===t.original.kind){var r=e.getOriginalNodeId(t);k[r]=q(k[r],t.original)}return t}(t);case 342:return function(t){var r=e.getOriginalNodeId(t),n=k[r];if(n)return delete k[r],e.append(n,t);return t}(t);default:return e.visitEachChild(t,P,r)}}function P(t){return 2097152&t.transformFlags||1024&t.transformFlags?e.isImportCall(t)?function(t){var r=e.getExternalModuleNameLiteral(n,t,_,d,u,l),i=e.visitNode(e.firstOrUndefined(t.arguments),P),a=!r||i&&e.isStringLiteral(i)&&i.text===r.text?i:r,o=!!(4096&t.transformFlags);switch(l.module){case e.ModuleKind.AMD:return F(a,o);case e.ModuleKind.UMD:return function(t,r){if(v=!0,e.isSimpleCopiableExpression(t)){var i=e.isGeneratedIdentifier(t)?t:e.isStringLiteral(t)?n.createStringLiteralFromNode(t):e.setEmitFlags(e.setTextRange(n.cloneNode(t),t),1536);return n.createConditionalExpression(n.createIdentifier("__syncRequire"),void 0,O(t,r),void 0,F(i,r))}var a=n.createTempVariable(c);return n.createComma(n.createAssignment(a,t),n.createConditionalExpression(n.createIdentifier("__syncRequire"),void 0,O(a,r),void 0,F(a,r)))}(null!=a?a:n.createVoidZero(),o);case e.ModuleKind.CommonJS:default:return O(a,o)}}(t):e.isDestructuringAssignment(t)?function(t){if(I(t.left))return e.flattenDestructuringAssignment(t,P,r,0,!1,L);return e.visitEachChild(t,P,r)}(t):e.visitEachChild(t,P,r):t}function I(t){if(e.isObjectLiteralExpression(t))for(var r=0,n=t.properties;r<n.length;r++){switch((o=n[r]).kind){case 291:if(I(o.initializer))return!0;break;case 292:if(I(o.name))return!0;break;case 293:if(I(o.expression))return!0;break;case 166:case 168:case 169:return!1;default:e.Debug.assertNever(o,"Unhandled object member kind")}}else if(e.isArrayLiteralExpression(t))for(var i=0,a=t.elements;i<a.length;i++){var o=a[i];if(e.isSpreadElement(o)){if(I(o.expression))return!0}else if(I(o))return!0}else if(e.isIdentifier(t))return e.length(X(t))>(e.isExportName(t)?1:0);return!1}function F(t,r){var i,o=n.createUniqueName("resolve"),s=n.createUniqueName("reject"),c=[n.createParameterDeclaration(void 0,void 0,void 0,o),n.createParameterDeclaration(void 0,void 0,void 0,s)],u=n.createBlock([n.createExpressionStatement(n.createCallExpression(n.createIdentifier("require"),void 0,[n.createArrayLiteralExpression([t||n.createOmittedExpression()]),o,s]))]);p>=2?i=n.createArrowFunction(void 0,void 0,c,void 0,void 0,u):(i=n.createFunctionExpression(void 0,void 0,void 0,void 0,c,void 0,u),r&&e.setEmitFlags(i,8));var d=n.createNewExpression(n.createIdentifier("Promise"),void 0,[i]);return l.esModuleInterop?n.createCallExpression(n.createPropertyAccessExpression(d,n.createIdentifier("then")),void 0,[a().createImportStarCallbackHelper()]):d}function O(t,r){var i,o=n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Promise"),"resolve"),void 0,[]),s=n.createCallExpression(n.createIdentifier("require"),void 0,t?[t]:[]);return l.esModuleInterop&&(s=a().createImportStarHelper(s)),p>=2?i=n.createArrowFunction(void 0,void 0,[],void 0,void 0,s):(i=n.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,n.createBlock([n.createReturnStatement(s)])),r&&e.setEmitFlags(i,8)),n.createCallExpression(n.createPropertyAccessExpression(o,"then"),void 0,[i])}function R(t,r){return!l.esModuleInterop||67108864&e.getEmitFlags(t)?r:e.getImportNeedsImportStarHelper(t)?a().createImportStarHelper(r):e.getImportNeedsImportDefaultHelper(t)?a().createImportDefaultHelper(r):r}function M(t){var r=e.getExternalModuleNameLiteral(n,t,_,d,u,l),i=[];return r&&i.push(r),n.createCallExpression(n.createIdentifier("require"),void 0,i)}function L(t,r,i){var a=X(t);if(a){for(var o=e.isExportName(t)?r:n.createAssignment(t,r),s=0,c=a;s<c.length;s++){var l=c[s];e.setEmitFlags(o,4),o=G(l,o,i)}return o}return n.createAssignment(t,r)}function j(t){return e.isBindingPattern(t.name)?e.flattenDestructuringAssignment(e.visitNode(t,P),void 0,r,0,!1,L):n.createAssignment(e.setTextRange(n.createPropertyAccessExpression(n.createIdentifier("exports"),t.name),t.name),t.initializer?e.visitNode(t.initializer,P):n.createVoidZero())}function B(t){return 0!=(4194304&e.getEmitFlags(t))}function z(e,t){if(h.exportEquals)return e;var r=t.importClause;if(!r)return e;r.name&&(e=H(e,r));var n=r.namedBindings;if(n)switch(n.kind){case 266:e=H(e,n);break;case 267:for(var i=0,a=n.elements;i<a.length;i++){e=H(e,a[i],!0)}}return e}function U(e,t){return h.exportEquals?e:H(e,t)}function q(e,t){if(h.exportEquals)return e;for(var r=0,n=t.declarationList.declarations;r<n.length;r++){e=J(e,n[r])}return e}function J(t,r){if(h.exportEquals)return t;if(e.isBindingPattern(r.name))for(var n=0,i=r.name.elements;n<i.length;n++){var a=i[n];e.isOmittedExpression(a)||(t=J(t,a))}else e.isGeneratedIdentifier(r.name)||(t=H(t,r));return t}function V(t,r){if(h.exportEquals)return t;e.hasSyntacticModifier(r,1)&&(t=K(t,e.hasSyntacticModifier(r,512)?n.createIdentifier("default"):n.getDeclarationName(r),n.getLocalName(r),r));return r.name&&(t=H(t,r)),t}function H(t,r,i){var a=n.getDeclarationName(r),o=h.exportSpecifiers.get(e.idText(a));if(o)for(var s=0,c=o;s<c.length;s++){var l=c[s];t=K(t,l.name,a,l.name,void 0,i)}return t}function K(t,r,i,a,o,s){return t=e.append(t,function(t,r,i,a,o){var s=e.setTextRange(n.createExpressionStatement(G(t,r,void 0,o)),i);e.startOnNewLine(s),a||e.setEmitFlags(s,1536);return s}(r,i,a,o,s)),t}function W(){var t;return t=0===p?n.createExpressionStatement(G(n.createIdentifier("__esModule"),n.createTrue())):n.createExpressionStatement(n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Object"),"defineProperty"),void 0,[n.createIdentifier("exports"),n.createStringLiteral("__esModule"),n.createObjectLiteralExpression([n.createPropertyAssignment("value",n.createTrue())])])),e.setEmitFlags(t,1048576),t}function G(t,r,i,a){return e.setTextRange(a&&0!==p?n.createCallExpression(n.createPropertyAccessExpression(n.createIdentifier("Object"),"defineProperty"),void 0,[n.createIdentifier("exports"),n.createStringLiteralFromNode(t),n.createObjectLiteralExpression([n.createPropertyAssignment("enumerable",n.createTrue()),n.createPropertyAssignment("get",n.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,n.createBlock([n.createReturnStatement(r)])))])]):n.createAssignment(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.cloneNode(t)),r),i)}function $(e){switch(e.kind){case 93:case 88:return}return e}function Y(t){var r,i;if(4096&e.getEmitFlags(t)){var a=e.getExternalHelpersModuleName(_);return a?n.createPropertyAccessExpression(a,t):t}if((!e.isGeneratedIdentifier(t)||64&t.autoGenerateFlags)&&!e.isLocalName(t)){var o=u.getReferencedExportContainer(t,e.isExportName(t));if(o&&300===o.kind)return e.setTextRange(n.createPropertyAccessExpression(n.createIdentifier("exports"),n.cloneNode(t)),t);var s=u.getReferencedImportDeclaration(t);if(s){if(e.isImportClause(s))return e.setTextRange(n.createPropertyAccessExpression(n.getGeneratedNameForNode(s.parent),n.createIdentifier("default")),t);if(e.isImportSpecifier(s)){var c=s.propertyName||s.name;return e.setTextRange(n.createPropertyAccessExpression(n.getGeneratedNameForNode((null===(i=null===(r=s.parent)||void 0===r?void 0:r.parent)||void 0===i?void 0:i.parent)||s),n.cloneNode(c)),t)}}}return t}function X(t){if(!e.isGeneratedIdentifier(t)){var r=u.getReferencedImportDeclaration(t)||u.getReferencedValueDeclaration(t);if(r)return h&&h.exportedBindings[e.getOriginalNodeId(r)]}}};var t={name:"typescript:dynamicimport-sync-require",scoped:!0,text:'\n var __syncRequire = typeof module === "object" && typeof module.exports === "object";'}}(d||(d={})),function(e){e.transformSystemModule=function(t){var r=t.factory,n=t.startLexicalEnvironment,i=t.endLexicalEnvironment,a=t.hoistVariableDeclaration,o=t.getCompilerOptions(),s=t.getEmitResolver(),c=t.getEmitHost(),l=t.onSubstituteNode,u=t.onEmitNode;t.onSubstituteNode=function(t,n){if(function(e){return h&&e.id&&h[e.id]}(n=l(t,n)))return n;if(1===t)return function(t){switch(t.kind){case 78:return function(t){var n,i;if(4096&e.getEmitFlags(t)){var a=e.getExternalHelpersModuleName(d);return a?r.createPropertyAccessExpression(a,t):t}if(!e.isGeneratedIdentifier(t)&&!e.isLocalName(t)){var o=s.getReferencedImportDeclaration(t);if(o){if(e.isImportClause(o))return e.setTextRange(r.createPropertyAccessExpression(r.getGeneratedNameForNode(o.parent),r.createIdentifier("default")),t);if(e.isImportSpecifier(o))return e.setTextRange(r.createPropertyAccessExpression(r.getGeneratedNameForNode((null===(i=null===(n=o.parent)||void 0===n?void 0:n.parent)||void 0===i?void 0:i.parent)||o),r.cloneNode(o.propertyName||o.name)),t)}}return t}(t);case 218:return function(t){if(e.isAssignmentOperator(t.operatorToken.kind)&&e.isIdentifier(t.left)&&!e.isGeneratedIdentifier(t.left)&&!e.isLocalName(t.left)&&!e.isDeclarationNameOfEnumOrNamespace(t.left)){var r=W(t.left);if(r){for(var n=t,i=0,a=r;i<a.length;i++){n=U(a[i],G(n))}return n}}return t}(t);case 216:case 217:return function(t){if((45===t.operator||46===t.operator)&&e.isIdentifier(t.operand)&&!e.isGeneratedIdentifier(t.operand)&&!e.isLocalName(t.operand)&&!e.isDeclarationNameOfEnumOrNamespace(t.operand)){var n=W(t.operand);if(n){for(var i=217===t.kind?e.setTextRange(r.createPrefixUnaryExpression(t.operator,t.operand),t):t,a=0,o=n;a<o.length;a++){i=U(o[a],G(i))}return 217===t.kind&&(i=45===t.operator?r.createSubtract(G(i),r.createNumericLiteral(1)):r.createAdd(G(i),r.createNumericLiteral(1))),i}}return t}(t);case 228:return function(t){if(e.isImportMeta(t))return r.createPropertyAccessExpression(m,r.createIdentifier("meta"));return t}(t)}return t}(n);if(4===t)return function(t){if(292===t.kind)return function(t){var n,i,a=t.name;if(!e.isGeneratedIdentifier(a)&&!e.isLocalName(a)){var o=s.getReferencedImportDeclaration(a);if(o){if(e.isImportClause(o))return e.setTextRange(r.createPropertyAssignment(r.cloneNode(a),r.createPropertyAccessExpression(r.getGeneratedNameForNode(o.parent),r.createIdentifier("default"))),t);if(e.isImportSpecifier(o))return e.setTextRange(r.createPropertyAssignment(r.cloneNode(a),r.createPropertyAccessExpression(r.getGeneratedNameForNode((null===(i=null===(n=o.parent)||void 0===n?void 0:n.parent)||void 0===i?void 0:i.parent)||o),r.cloneNode(o.propertyName||o.name))),t)}}return t}(t);return t}(n);return n},t.onEmitNode=function(t,r,n){if(300===r.kind){var i=e.getOriginalNodeId(r);d=r,p=y[i],f=b[i],h=k[i],m=x[i],h&&delete k[i],u(t,r,n),d=void 0,p=void 0,f=void 0,m=void 0,h=void 0}else u(t,r,n)},t.enableSubstitution(78),t.enableSubstitution(292),t.enableSubstitution(218),t.enableSubstitution(216),t.enableSubstitution(217),t.enableSubstitution(228),t.enableEmitNotification(300);var d,p,f,m,g,_,h,y=[],v=[],b=[],k=[],x=[];return e.chainBundle(t,(function(a){if(a.isDeclarationFile||!(e.isEffectiveExternalModule(a,o)||2097152&a.transformFlags))return a;var l=e.getOriginalNodeId(a);d=a,_=a,p=y[l]=e.collectExternalModuleInfo(t,a,s,o),f=r.createUniqueName("exports"),b[l]=f,m=x[l]=r.createUniqueName("context");var u=function(t){for(var n=new e.Map,i=[],a=0,l=t;a<l.length;a++){var u=l[a],p=e.getExternalModuleNameLiteral(r,u,d,c,s,o);if(p){var f=p.text,m=n.get(f);void 0!==m?i[m].externalImports.push(u):(n.set(f,i.length),i.push({name:p,externalImports:[u]}))}}return i}(p.externalImports),v=function(t,a){var s=[];n();var c=e.getStrictOptionValue(o,"alwaysStrict")||!o.noImplicitUseStrict&&e.isExternalModule(d),l=r.copyPrologue(t.statements,s,c,D);s.push(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration("__moduleName",void 0,void 0,r.createLogicalAnd(m,r.createPropertyAccessExpression(m,"id")))]))),e.visitNode(p.externalHelpersImportDeclaration,D,e.isStatement);var u=e.visitNodes(t.statements,D,e.isStatement,l);e.addRange(s,g),e.insertStatementsAfterStandardPrologue(s,i());var f=function(e){if(!p.hasExportStarsToExportValues)return;if(!p.exportedNames&&0===p.exportSpecifiers.size){for(var t=!1,n=0,i=p.externalImports;n<i.length;n++){var a=i[n];if(270===a.kind&&a.exportClause){t=!0;break}}if(!t){var o=E(void 0);return e.push(o),o.name}}var s=[];if(p.exportedNames)for(var c=0,l=p.exportedNames;c<l.length;c++){var u=l[c];"default"!==u.escapedText&&s.push(r.createPropertyAssignment(r.createStringLiteralFromNode(u),r.createTrue()))}var d=r.createUniqueName("exportedNames");e.push(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(d,void 0,void 0,r.createObjectLiteralExpression(s,!0))])));var f=E(d);return e.push(f),f.name}(s),_=524288&t.transformFlags?r.createModifiersFromModifierFlags(256):void 0,h=r.createObjectLiteralExpression([r.createPropertyAssignment("setters",S(f,a)),r.createPropertyAssignment("execute",r.createFunctionExpression(_,void 0,void 0,void 0,[],void 0,r.createBlock(u,!0)))],!0);return s.push(r.createReturnStatement(h)),r.createBlock(s,!0)}(a,u),w=r.createFunctionExpression(void 0,void 0,void 0,void 0,[r.createParameterDeclaration(void 0,void 0,void 0,f),r.createParameterDeclaration(void 0,void 0,void 0,m)],void 0,v),T=e.tryGetModuleNameFromFile(r,a,c,o),C=r.createArrayLiteralExpression(e.map(u,(function(e){return e.name}))),A=e.setEmitFlags(r.updateSourceFile(a,e.setTextRange(r.createNodeArray([r.createExpressionStatement(r.createCallExpression(r.createPropertyAccessExpression(r.createIdentifier("System"),"register"),void 0,T?[T,C,w]:[C,w]))]),a.statements)),1024);e.outFile(o)||e.moveEmitHelpers(A,v,(function(e){return!e.scoped}));h&&(k[l]=h,h=void 0);return d=void 0,p=void 0,f=void 0,m=void 0,g=void 0,_=void 0,A}));function E(t){var n=r.createUniqueName("exportStar"),i=r.createIdentifier("m"),a=r.createIdentifier("n"),o=r.createIdentifier("exports"),s=r.createStrictInequality(a,r.createStringLiteral("default"));return t&&(s=r.createLogicalAnd(s,r.createLogicalNot(r.createCallExpression(r.createPropertyAccessExpression(t,"hasOwnProperty"),void 0,[a])))),r.createFunctionDeclaration(void 0,void 0,void 0,n,void 0,[r.createParameterDeclaration(void 0,void 0,void 0,i)],void 0,r.createBlock([r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(o,void 0,void 0,r.createObjectLiteralExpression([]))])),r.createForInStatement(r.createVariableDeclarationList([r.createVariableDeclaration(a)]),i,r.createBlock([e.setEmitFlags(r.createIfStatement(s,r.createExpressionStatement(r.createAssignment(r.createElementAccessExpression(o,a),r.createElementAccessExpression(i,a)))),1)])),r.createExpressionStatement(r.createCallExpression(f,void 0,[o]))],!0))}function S(t,n){for(var i=[],a=0,o=n;a<o.length;a++){for(var s=o[a],c=e.forEach(s.externalImports,(function(t){return e.getLocalNameForExternalImport(r,t,d)})),l=c?r.getGeneratedNameForNode(c):r.createUniqueName(""),u=[],p=0,m=s.externalImports;p<m.length;p++){var g=m[p],_=e.getLocalNameForExternalImport(r,g,d);switch(g.kind){case 264:if(!g.importClause)break;case 263:e.Debug.assert(void 0!==_),u.push(r.createExpressionStatement(r.createAssignment(_,l)));break;case 270:if(e.Debug.assert(void 0!==_),g.exportClause)if(e.isNamedExports(g.exportClause)){for(var h=[],y=0,v=g.exportClause.elements;y<v.length;y++){var b=v[y];h.push(r.createPropertyAssignment(r.createStringLiteral(e.idText(b.name)),r.createElementAccessExpression(l,r.createStringLiteral(e.idText(b.propertyName||b.name)))))}u.push(r.createExpressionStatement(r.createCallExpression(f,void 0,[r.createObjectLiteralExpression(h,!0)])))}else u.push(r.createExpressionStatement(r.createCallExpression(f,void 0,[r.createStringLiteral(e.idText(g.exportClause.name)),l])));else u.push(r.createExpressionStatement(r.createCallExpression(t,void 0,[l])))}}i.push(r.createFunctionExpression(void 0,void 0,void 0,void 0,[r.createParameterDeclaration(void 0,void 0,void 0,l)],void 0,r.createBlock(u,!0)))}return r.createArrayLiteralExpression(i,!0)}function D(t){switch(t.kind){case 264:return function(t){var n;t.importClause&&a(e.getLocalNameForExternalImport(r,t,d));if(I(t)){var i=e.getOriginalNodeId(t);v[i]=F(v[i],t)}else n=F(n,t);return e.singleOrMany(n)}(t);case 263:return function(t){var n;if(e.Debug.assert(e.isExternalModuleImportEqualsDeclaration(t),"import= for internal module references should be handled in an earlier transformer."),a(e.getLocalNameForExternalImport(r,t,d)),I(t)){var i=e.getOriginalNodeId(t);v[i]=O(v[i],t)}else n=O(n,t);return e.singleOrMany(n)}(t);case 270:return function(t){return void e.Debug.assertIsDefined(t)}(t);case 269:return function(t){if(t.isExportEquals)return;var n=e.visitNode(t.expression,V,e.isExpression),i=t.original;if(!i||!I(i))return z(r.createIdentifier("default"),n,!0);var a=e.getOriginalNodeId(t);v[a]=B(v[a],r.createIdentifier("default"),n,!0)}(t);default:return q(t)}}function w(t){if(e.isBindingPattern(t.name))for(var n=0,i=t.name.elements;n<i.length;n++){var o=i[n];e.isOmittedExpression(o)||w(o)}else a(r.cloneNode(t.name))}function T(t){return 0==(2097152&e.getEmitFlags(t))&&(300===_.kind||0==(3&e.getOriginalNode(t).flags))}function C(r,n){var i=n?A:N;return e.isBindingPattern(r.name)?e.flattenDestructuringAssignment(r,V,t,0,!1,i):r.initializer?i(r.name,e.visitNode(r.initializer,V,e.isExpression)):r.name}function A(e,t,r){return P(e,t,r,!0)}function N(e,t,r){return P(e,t,r,!1)}function P(t,n,i,o){return a(r.cloneNode(t)),o?U(t,G(e.setTextRange(r.createAssignment(t,n),i))):G(e.setTextRange(r.createAssignment(t,n),i))}function I(t){return 0!=(4194304&e.getEmitFlags(t))}function F(e,t){if(p.exportEquals)return e;var r=t.importClause;if(!r)return e;r.name&&(e=j(e,r));var n=r.namedBindings;if(n)switch(n.kind){case 266:e=j(e,n);break;case 267:for(var i=0,a=n.elements;i<a.length;i++){e=j(e,a[i])}}return e}function O(e,t){return p.exportEquals?e:j(e,t)}function R(e,t,r){if(p.exportEquals)return e;for(var n=0,i=t.declarationList.declarations;n<i.length;n++){var a=i[n];(a.initializer||r)&&(e=M(e,a,r))}return e}function M(t,n,i){if(p.exportEquals)return t;if(e.isBindingPattern(n.name))for(var a=0,o=n.name.elements;a<o.length;a++){var s=o[a];e.isOmittedExpression(s)||(t=M(t,s,i))}else if(!e.isGeneratedIdentifier(n.name)){var c=void 0;i&&(t=B(t,n.name,r.getLocalName(n)),c=e.idText(n.name)),t=j(t,n,c)}return t}function L(t,n){if(p.exportEquals)return t;var i;if(e.hasSyntacticModifier(n,1)){var a=e.hasSyntacticModifier(n,512)?r.createStringLiteral("default"):n.name;t=B(t,a,r.getLocalName(n)),i=e.getTextOfIdentifierOrLiteral(a)}return n.name&&(t=j(t,n,i)),t}function j(t,n,i){if(p.exportEquals)return t;var a=r.getDeclarationName(n),o=p.exportSpecifiers.get(e.idText(a));if(o)for(var s=0,c=o;s<c.length;s++){var l=c[s];l.name.escapedText!==i&&(t=B(t,l.name,a))}return t}function B(t,r,n,i){return t=e.append(t,z(r,n,i))}function z(t,n,i){var a=r.createExpressionStatement(U(t,n));return e.startOnNewLine(a),i||e.setEmitFlags(a,1536),a}function U(t,n){var i=e.isIdentifier(t)?r.createStringLiteralFromNode(t):t;return e.setEmitFlags(n,1536|e.getEmitFlags(n)),e.setCommentRange(r.createCallExpression(f,void 0,[i,n]),n)}function q(n){switch(n.kind){case 234:return function(t){if(!T(t.declarationList))return e.visitNode(t,V,e.isStatement);for(var n,i,a=e.hasSyntacticModifier(t,1),o=I(t),s=0,c=t.declarationList.declarations;s<c.length;s++){var l=c[s];l.initializer?n=e.append(n,C(l,a&&!o)):w(l)}if(n&&(i=e.append(i,e.setTextRange(r.createExpressionStatement(r.inlineExpressions(n)),t))),o){var u=e.getOriginalNodeId(t);v[u]=R(v[u],t,a)}else i=R(i,t,!1);return e.singleOrMany(i)}(n);case 253:return function(n){if(g=e.hasSyntacticModifier(n,1)?e.append(g,r.updateFunctionDeclaration(n,n.decorators,e.visitNodes(n.modifiers,K,e.isModifier),n.asteriskToken,r.getDeclarationName(n,!0,!0),void 0,e.visitNodes(n.parameters,V,e.isParameterDeclaration),void 0,e.visitNode(n.body,V,e.isBlock))):e.append(g,e.visitEachChild(n,V,t)),I(n)){var i=e.getOriginalNodeId(n);v[i]=L(v[i],n)}else g=L(g,n)}(n);case 254:return function(t){var n,i=r.getLocalName(t);if(a(i),n=e.append(n,e.setTextRange(r.createExpressionStatement(r.createAssignment(i,e.setTextRange(r.createClassExpression(e.visitNodes(t.decorators,V,e.isDecorator),void 0,t.name,void 0,e.visitNodes(t.heritageClauses,V,e.isHeritageClause),e.visitNodes(t.members,V,e.isClassElement)),t))),t)),I(t)){var o=e.getOriginalNodeId(t);v[o]=L(v[o],t)}else n=L(n,t);return e.singleOrMany(n)}(n);case 239:return function(t){var n=_;return _=t,t=r.updateForStatement(t,t.initializer&&J(t.initializer),e.visitNode(t.condition,V,e.isExpression),e.visitNode(t.incrementor,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement)),_=n,t}(n);case 240:return function(t){var n=_;return _=t,t=r.updateForInStatement(t,J(t.initializer),e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock)),_=n,t}(n);case 241:return function(t){var n=_;return _=t,t=r.updateForOfStatement(t,t.awaitModifier,J(t.initializer),e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock)),_=n,t}(n);case 237:return function(t){return r.updateDoStatement(t,e.visitNode(t.statement,q,e.isStatement,r.liftToBlock),e.visitNode(t.expression,V,e.isExpression))}(n);case 238:return function(t){return r.updateWhileStatement(t,e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock))}(n);case 247:return function(t){return r.updateLabeledStatement(t,t.label,e.visitNode(t.statement,q,e.isStatement,r.liftToBlock))}(n);case 245:return function(t){return r.updateWithStatement(t,e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.statement,q,e.isStatement,r.liftToBlock))}(n);case 246:return function(t){return r.updateSwitchStatement(t,e.visitNode(t.expression,V,e.isExpression),e.visitNode(t.caseBlock,q,e.isCaseBlock))}(n);case 261:return function(t){var n=_;return _=t,t=r.updateCaseBlock(t,e.visitNodes(t.clauses,q,e.isCaseOrDefaultClause)),_=n,t}(n);case 287:return function(t){return r.updateCaseClause(t,e.visitNode(t.expression,V,e.isExpression),e.visitNodes(t.statements,q,e.isStatement))}(n);case 288:case 249:return function(r){return e.visitEachChild(r,q,t)}(n);case 290:return function(t){var n=_;return _=t,t=r.updateCatchClause(t,t.variableDeclaration,e.visitNode(t.block,q,e.isBlock)),_=n,t}(n);case 232:return function(r){var n=_;return _=r,r=e.visitEachChild(r,q,t),_=n,r}(n);case 341:return function(t){if(I(t)&&234===t.original.kind){var r=e.getOriginalNodeId(t),n=e.hasSyntacticModifier(t.original,1);v[r]=R(v[r],t.original,n)}return t}(n);case 342:return function(t){var r=e.getOriginalNodeId(t),n=v[r];if(n)return delete v[r],e.append(n,t);var i=e.getOriginalNode(t);return e.isModuleOrEnumDeclaration(i)?e.append(j(n,i),t):t}(n);default:return V(n)}}function J(n){if(function(t){return e.isVariableDeclarationList(t)&&T(t)}(n)){for(var i=void 0,a=0,o=n.declarations;a<o.length;a++){var s=o[a];i=e.append(i,C(s,!1)),s.initializer||w(s)}return i?r.inlineExpressions(i):r.createOmittedExpression()}return e.visitEachChild(n,q,t)}function V(n){return e.isDestructuringAssignment(n)?function(r){if(H(r.left))return e.flattenDestructuringAssignment(r,V,t,0,!0);return e.visitEachChild(r,V,t)}(n):e.isImportCall(n)?function(t){var n=e.getExternalModuleNameLiteral(r,t,d,c,s,o),i=e.visitNode(e.firstOrUndefined(t.arguments),V),a=!n||i&&e.isStringLiteral(i)&&i.text===n.text?i:n;return r.createCallExpression(r.createPropertyAccessExpression(m,r.createIdentifier("import")),void 0,a?[a]:[])}(n):1024&n.transformFlags||2097152&n.transformFlags?e.visitEachChild(n,V,t):n}function H(t){if(e.isAssignmentExpression(t,!0))return H(t.left);if(e.isSpreadElement(t))return H(t.expression);if(e.isObjectLiteralExpression(t))return e.some(t.properties,H);if(e.isArrayLiteralExpression(t))return e.some(t.elements,H);if(e.isShorthandPropertyAssignment(t))return H(t.name);if(e.isPropertyAssignment(t))return H(t.initializer);if(e.isIdentifier(t)){var r=s.getReferencedExportContainer(t);return void 0!==r&&300===r.kind}return!1}function K(e){switch(e.kind){case 93:case 88:return}return e}function W(t){var n;if(!e.isGeneratedIdentifier(t)){var i=s.getReferencedImportDeclaration(t)||s.getReferencedValueDeclaration(t);if(i){var a=s.getReferencedExportContainer(t,!1);a&&300===a.kind&&(n=e.append(n,r.getDeclarationName(i))),n=e.addRange(n,p&&p.exportedBindings[e.getOriginalNodeId(i)])}}return n}function G(t){return void 0===h&&(h=[]),h[e.getNodeId(t)]=!0,t}}}(d||(d={})),function(e){e.transformECMAScriptModule=function(t){var r,n=t.factory,a=t.getEmitHelperFactory,o=t.getCompilerOptions(),s=t.onEmitNode,c=t.onSubstituteNode;return t.onEmitNode=function(t,n,i){e.isSourceFile(n)?((e.isExternalModule(n)||o.isolatedModules)&&o.importHelpers&&(r=new e.Map),s(t,n,i),r=void 0):s(t,n,i)},t.onSubstituteNode=function(t,i){if(i=c(t,i),r&&e.isIdentifier(i)&&4096&e.getEmitFlags(i))return function(t){var i=e.idText(t),a=r.get(i);a||r.set(i,a=n.createUniqueName(i,48));return a}(i);return i},t.enableEmitNotification(300),t.enableSubstitution(78),e.chainBundle(t,(function(r){if(r.isDeclarationFile)return r;if(e.isExternalModule(r)||o.isolatedModules){var s=function(r){var i=e.createExternalHelpersImportDeclarationIfNeeded(n,a(),r,o);if(i){var s=[],c=n.copyPrologue(r.statements,s);return e.append(s,i),e.addRange(s,e.visitNodes(r.statements,l,e.isStatement,c)),n.updateSourceFile(r,e.setTextRange(n.createNodeArray(s),r.statements))}return e.visitEachChild(r,l,t)}(r);return!e.isExternalModule(r)||e.some(s.statements,e.isExternalModuleIndicator)?s:n.updateSourceFile(s,e.setTextRange(n.createNodeArray(i(i([],s.statements),[e.createEmptyExports(n)])),s.statements))}return r}));function l(t){switch(t.kind){case 263:return;case 269:return function(e){return e.isExportEquals?void 0:e}(t);case 270:return function(t){if(void 0!==o.module&&o.module>e.ModuleKind.ES2015)return t;if(!t.exportClause||!e.isNamespaceExport(t.exportClause)||!t.moduleSpecifier)return t;var r=t.exportClause.name,i=n.getGeneratedNameForNode(r),a=n.createImportDeclaration(void 0,void 0,n.createImportClause(!1,void 0,n.createNamespaceImport(i)),t.moduleSpecifier);e.setOriginalNode(a,t.exportClause);var s=e.isExportNamespaceAsDefaultDeclaration(t)?n.createExportDefault(i):n.createExportDeclaration(void 0,void 0,!1,n.createNamedExports([n.createExportSpecifier(i,r)]));return e.setOriginalNode(s,t),[a,s]}(t)}return t}}}(d||(d={})),function(e){function t(t){return e.isVariableDeclaration(t)||e.isPropertyDeclaration(t)||e.isPropertySignature(t)||e.isPropertyAccessExpression(t)||e.isBindingElement(t)||e.isConstructorDeclaration(t)?r:e.isSetAccessor(t)||e.isGetAccessor(t)?function(r){var n;n=169===t.kind?e.hasSyntacticModifier(t,32)?r.errorModuleName?e.Diagnostics.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:r.errorModuleName?e.Diagnostics.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:e.hasSyntacticModifier(t,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1;return{diagnosticMessage:n,errorNode:t.name,typeName:t.name}}:e.isConstructSignatureDeclaration(t)||e.isCallSignatureDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isFunctionDeclaration(t)||e.isIndexSignatureDeclaration(t)?function(r){var n;switch(t.kind){case 171:n=r.errorModuleName?e.Diagnostics.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 170:n=r.errorModuleName?e.Diagnostics.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 172:n=r.errorModuleName?e.Diagnostics.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 166:case 165:n=e.hasSyntacticModifier(t,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:254===t.parent.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:r.errorModuleName?e.Diagnostics.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 253:n=r.errorModuleName?2===r.accessibility?e.Diagnostics.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return e.Debug.fail("This is unknown kind for signature: "+t.kind)}return{diagnosticMessage:n,errorNode:t.name||t}}:e.isParameter(t)?e.isParameterPropertyDeclaration(t,t.parent)&&e.hasSyntacticModifier(t.parent,8)?r:function(r){var n=function(r){switch(t.parent.kind){case 167:return r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 171:case 176:return r.errorModuleName?e.Diagnostics.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 170:return r.errorModuleName?e.Diagnostics.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 172:return r.errorModuleName?e.Diagnostics.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 166:case 165:return e.hasSyntacticModifier(t.parent,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:254===t.parent.parent.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:r.errorModuleName?e.Diagnostics.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 253:case 175:return r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 169:case 168:return r.errorModuleName?2===r.accessibility?e.Diagnostics.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return e.Debug.fail("Unknown parent for parameter: "+e.SyntaxKind[t.parent.kind])}}(r);return void 0!==n?{diagnosticMessage:n,errorNode:t,typeName:t.name}:void 0}:e.isTypeParameterDeclaration(t)?function(){var r;switch(t.parent.kind){case 254:r=e.Diagnostics.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 256:r=e.Diagnostics.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 191:r=e.Diagnostics.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 176:case 171:r=e.Diagnostics.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 170:r=e.Diagnostics.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 166:case 165:r=e.hasSyntacticModifier(t.parent,32)?e.Diagnostics.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:254===t.parent.parent.kind?e.Diagnostics.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:e.Diagnostics.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 175:case 253:r=e.Diagnostics.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 257:r=e.Diagnostics.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return e.Debug.fail("This is unknown parent for type parameter: "+t.parent.kind)}return{diagnosticMessage:r,errorNode:t,typeName:t.name}}:e.isExpressionWithTypeArguments(t)?function(){var r;r=e.isClassDeclaration(t.parent.parent)?e.isHeritageClause(t.parent)&&117===t.parent.token?e.Diagnostics.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:t.parent.parent.name?e.Diagnostics.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:e.Diagnostics.extends_clause_of_exported_class_has_or_is_using_private_name_0:e.Diagnostics.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1;return{diagnosticMessage:r,errorNode:t,typeName:e.getNameOfDeclaration(t.parent.parent)}}:e.isImportEqualsDeclaration(t)?function(){return{diagnosticMessage:e.Diagnostics.Import_declaration_0_is_using_private_name_1,errorNode:t,typeName:t.name}}:e.isTypeAliasDeclaration(t)||e.isJSDocTypeAlias(t)?function(r){return{diagnosticMessage:r.errorModuleName?e.Diagnostics.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:e.Diagnostics.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:e.isJSDocTypeAlias(t)?e.Debug.checkDefined(t.typeExpression):t.type,typeName:e.isJSDocTypeAlias(t)?e.getNameOfDeclaration(t):t.name}}:e.Debug.assertNever(t,"Attempted to set a declaration diagnostic context for unhandled node kind: "+e.SyntaxKind[t.kind]);function r(r){var n=function(r){return 251===t.kind||199===t.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Exported_variable_0_has_or_is_using_private_name_1:164===t.kind||202===t.kind||163===t.kind||161===t.kind&&e.hasSyntacticModifier(t.parent,8)?e.hasSyntacticModifier(t,32)?r.errorModuleName?2===r.accessibility?e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:254===t.parent.kind||161===t.kind?r.errorModuleName?2===r.accessibility?e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_private_name_1:r.errorModuleName?e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_private_name_1:void 0}(r);return void 0!==n?{diagnosticMessage:n,errorNode:t,typeName:t.name}:void 0}}e.canProduceDiagnostics=function(t){return e.isVariableDeclaration(t)||e.isPropertyDeclaration(t)||e.isPropertySignature(t)||e.isBindingElement(t)||e.isSetAccessor(t)||e.isGetAccessor(t)||e.isConstructSignatureDeclaration(t)||e.isCallSignatureDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isFunctionDeclaration(t)||e.isParameter(t)||e.isTypeParameterDeclaration(t)||e.isExpressionWithTypeArguments(t)||e.isImportEqualsDeclaration(t)||e.isTypeAliasDeclaration(t)||e.isConstructorDeclaration(t)||e.isIndexSignatureDeclaration(t)||e.isPropertyAccessExpression(t)||e.isJSDocTypeAlias(t)},e.createGetSymbolAccessibilityDiagnosticForNodeName=function(r){return e.isSetAccessor(r)||e.isGetAccessor(r)?function(t){var n=function(t){return e.hasSyntacticModifier(r,32)?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:254===r.parent.kind?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_private_name_1:t.errorModuleName?e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_private_name_1}(t);return void 0!==n?{diagnosticMessage:n,errorNode:r,typeName:r.name}:void 0}:e.isMethodSignature(r)||e.isMethodDeclaration(r)?function(t){var n=function(t){return e.hasSyntacticModifier(r,32)?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:254===r.parent.kind?t.errorModuleName?2===t.accessibility?e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_private_name_1:t.errorModuleName?e.Diagnostics.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Method_0_of_exported_interface_has_or_is_using_private_name_1}(t);return void 0!==n?{diagnosticMessage:n,errorNode:r,typeName:r.name}:void 0}:t(r)},e.createGetSymbolAccessibilityDiagnosticForNode=t}(d||(d={})),function(e){function t(t,r){var n=r.text.substring(t.pos,t.end);return e.stringContains(n,"@internal")}function r(r,n){var i=e.getParseTreeNode(r);if(i&&161===i.kind){var a=i.parent.parameters.indexOf(i),o=a>0?i.parent.parameters[a-1]:void 0,s=n.text,c=o?e.concatenate(e.getTrailingCommentRanges(s,e.skipTrivia(s,o.end+1,!1,!0)),e.getLeadingCommentRanges(s,r.pos)):e.getTrailingCommentRanges(s,e.skipTrivia(s,r.pos,!1,!0));return c&&c.length&&t(e.last(c),n)}var l=i&&e.getLeadingCommentRangesOfNode(i,n);return!!e.forEach(l,(function(e){return t(e,n)}))}e.getDeclarationDiagnostics=function(t,r,n){var i=t.getCompilerOptions();return e.transformNodes(r,t,e.factory,i,n?[n]:e.filter(t.getSourceFiles(),e.isSourceFileNotJson),[o],!1).diagnostics},e.isInternalDeclaration=r;var n=531469;function o(t){var o,l,u,d,p,f,m,g,_,h,y,v,b=function(){return e.Debug.fail("Diagnostic emitted without context")},k=b,x=!0,E=!1,S=!1,D=!1,w=!1,T=t.factory,C=t.getEmitHost(),A={trackSymbol:function(e,t,r){if(262144&e.flags)return;R(N.isSymbolAccessible(e,t,r,!0)),O(N.getTypeReferenceDirectivesForSymbol(e,r))},reportInaccessibleThisError:function(){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,e.declarationNameToString(m),"this"))},reportInaccessibleUniqueSymbolError:function(){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,e.declarationNameToString(m),"unique symbol"))},reportCyclicStructureError:function(){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,e.declarationNameToString(m)))},reportPrivateInBaseOfClassExpression:function(r){(m||g)&&t.addDiagnostic(e.createDiagnosticForNode(m||g,e.Diagnostics.Property_0_of_exported_class_expression_may_not_be_private_or_protected,r))},reportLikelyUnsafeImportRequiredError:function(r){m&&t.addDiagnostic(e.createDiagnosticForNode(m,e.Diagnostics.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,e.declarationNameToString(m),r))},reportTruncationError:function(){(m||g)&&t.addDiagnostic(e.createDiagnosticForNode(m||g,e.Diagnostics.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))},moduleResolverHost:C,trackReferencedAmbientModule:function(t,r){var n=N.getTypeReferenceDirectivesForSymbol(r,67108863);if(e.length(n))return O(n);var i=e.getSourceFileOfNode(t);h.set(e.getOriginalNodeId(i),i)},trackExternalModuleSymbolOfImportTypeNode:function(e){E||(f||(f=[])).push(e)},reportNonlocalAugmentation:function(r,n,i){for(var a=e.find(n.declarations,(function(t){return e.getSourceFileOfNode(t)===r})),o=e.filter(i.declarations,(function(t){return e.getSourceFileOfNode(t)!==r})),s=0,c=o;s<c.length;s++){var l=c[s];t.addDiagnostic(e.addRelatedInfo(e.createDiagnosticForNode(l,e.Diagnostics.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),e.createDiagnosticForNode(a,e.Diagnostics.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}}},N=t.getEmitResolver(),P=t.getCompilerOptions(),I=P.noResolve,F=P.stripInternal;return function(r){if(300===r.kind&&r.isDeclarationFile)return r;if(301===r.kind){E=!0,h=new e.Map,y=new e.Map;var n=!1,s=T.createBundle(e.map(r.sourceFiles,(function(r){if(!r.isDeclarationFile){if(n=n||r.hasNoDefaultLib,_=r,o=r,u=void 0,p=!1,d=new e.Map,k=b,D=!1,w=!1,L(r,h),j(r,y),e.isExternalOrCommonJsModule(r)||e.isJsonSourceFile(r)){S=!1,x=!1;var i=e.isSourceFileJS(r)?T.createNodeArray(M(r,!0)):e.visitNodes(r.statements,re);return T.updateSourceFile(r,[T.createModuleDeclaration([],[T.createModifier(134)],T.createStringLiteral(e.getResolvedExternalModuleName(t.getEmitHost(),r)),T.createModuleBlock(e.setTextRange(T.createNodeArray(Z(i)),r.statements)))],!0,[],[],!1,[])}x=!0;var a=e.isSourceFileJS(r)?T.createNodeArray(M(r)):e.visitNodes(r.statements,re);return T.updateSourceFile(r,Z(a),!0,[],[],!1,[])}})),e.mapDefined(r.prepends,(function(t){if(303===t.kind){var r=e.createUnparsedSourceFile(t,"dts",F);return n=n||!!r.hasNoDefaultLib,L(r,h),O(r.typeReferenceDirectives),j(r,y),r}return t})));s.syntheticFileReferences=[],s.syntheticTypeReferences=U(),s.syntheticLibReferences=z(),s.hasNoDefaultLib=n;var c=e.getDirectoryPath(e.normalizeSlashes(e.getOutputPathsFor(r,C,!0).declarationFilePath)),m=J(s.syntheticFileReferences,c);return h.forEach(m),s}x=!0,D=!1,w=!1,o=r,_=r,k=b,E=!1,S=!1,p=!1,u=void 0,d=new e.Map,l=void 0,h=L(_,new e.Map),y=j(_,new e.Map);var g,A=[],N=e.getDirectoryPath(e.normalizeSlashes(e.getOutputPathsFor(r,C,!0).declarationFilePath)),I=J(A,N);if(e.isSourceFileJS(_))g=T.createNodeArray(M(r)),h.forEach(I),v=e.filter(g,e.isAnyImportSyntax);else{var R=e.visitNodes(r.statements,re);g=e.setTextRange(T.createNodeArray(Z(R)),r.statements),h.forEach(I),v=e.filter(g,e.isAnyImportSyntax),e.isExternalModule(r)&&(!S||D&&!w)&&(g=e.setTextRange(T.createNodeArray(i(i([],g),[e.createEmptyExports(T)])),g))}var B=T.updateSourceFile(r,g,!0,A,U(),r.hasNoDefaultLib,z());return B.exportedModulesFromDeclarationEmit=f,B;function z(){return e.map(e.arrayFrom(y.keys()),(function(e){return{fileName:e,pos:-1,end:-1}}))}function U(){return l?e.mapDefined(e.arrayFrom(l.keys()),q):[]}function q(t){if(v)for(var r=0,n=v;r<n.length;r++){var i=n[r];if(e.isImportEqualsDeclaration(i)&&e.isExternalModuleReference(i.moduleReference)){var a=i.moduleReference.expression;if(e.isStringLiteralLike(a)&&a.text===t)return}else if(e.isImportDeclaration(i)&&e.isStringLiteral(i.moduleSpecifier)&&i.moduleSpecifier.text===t)return}return{fileName:t,pos:-1,end:-1}}function J(t,n){return function(i){var o;if(i.isDeclarationFile)o=i.fileName;else{if(E&&e.contains(r.sourceFiles,i))return;var s=e.getOutputPathsFor(i,C,!0);o=s.declarationFilePath||s.jsFilePath||i.fileName}if(o){var c=e.moduleSpecifiers.getModuleSpecifier(a(a({},P),{baseUrl:P.baseUrl&&e.toPath(P.baseUrl,C.getCurrentDirectory(),C.getCanonicalFileName)}),_,e.toPath(n,C.getCurrentDirectory(),C.getCanonicalFileName),e.toPath(o,C.getCurrentDirectory(),C.getCanonicalFileName),C,void 0);if(!e.pathIsRelative(c))return void O([c]);var l=e.getRelativePathToDirectoryOrUrl(n,o,C.getCurrentDirectory(),C.getCanonicalFileName,!1);if(e.startsWith(l,"./")&&e.hasExtension(l)&&(l=l.substring(2)),function(t){return e.startsWith(t,"node_modules/")||e.pathContainsNodeModules(t)}(l)||e.isOhpm(P.packageManagerType)&&function(t){return e.startsWith(t,"oh_modules/")||e.pathContainsOHModules(t)}(l))return;t.push({pos:-1,end:-1,fileName:l})}}}};function O(t){if(t){l=l||new e.Set;for(var r=0,n=t;r<n.length;r++){var i=n[r];l.add(i)}}}function R(r){if(0===r.accessibility){if(r&&r.aliasesToMakeVisible)if(u)for(var n=0,i=r.aliasesToMakeVisible;n<i.length;n++){var a=i[n];e.pushIfUnique(u,a)}else u=r.aliasesToMakeVisible}else{var o=k(r);o&&(o.typeName?t.addDiagnostic(e.createDiagnosticForNode(r.errorNode||o.errorNode,o.diagnosticMessage,e.getTextOfNode(o.typeName),r.errorSymbolName,r.errorModuleName)):t.addDiagnostic(e.createDiagnosticForNode(r.errorNode||o.errorNode,o.diagnosticMessage,r.errorSymbolName,r.errorModuleName)))}}function M(t,r){var i=k;k=function(r){return r.errorNode&&e.canProduceDiagnostics(r.errorNode)?e.createGetSymbolAccessibilityDiagnosticForNode(r.errorNode)(r):{diagnosticMessage:r.errorModuleName?e.Diagnostics.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:e.Diagnostics.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:r.errorNode||t}};var a=N.getDeclarationStatementsForSourceFile(t,n,A,r);return k=i,a}function L(t,r){return I||!e.isUnparsedSource(t)&&e.isSourceFileJS(t)||e.forEach(t.referencedFiles,(function(n){var i=C.getSourceFileFromReference(t,n);i&&r.set(e.getOriginalNodeId(i),i)})),r}function j(t,r){return e.forEach(t.libReferenceDirectives,(function(t){C.getLibFileFromReference(t)&&r.set(e.toFileNameLowerCase(t.fileName),!0)})),r}function B(t){return 78===t.kind?t:198===t.kind?T.updateArrayBindingPattern(t,e.visitNodes(t.elements,r)):T.updateObjectBindingPattern(t,e.visitNodes(t.elements,r));function r(e){return 224===e.kind?e:T.updateBindingElement(e,e.dotDotDotToken,e.propertyName,B(e.name),U(e)?e.initializer:void 0)}}function z(t,r,n){var i;p||(i=k,k=e.createGetSymbolAccessibilityDiagnosticForNode(t));var a=T.updateParameterDeclaration(t,void 0,function(t,r,n){return e.factory.createModifiersFromModifierFlags(s(t,r,n))}(t,r),t.dotDotDotToken,B(t.name),N.isOptionalParameter(t)?t.questionToken||T.createToken(57):void 0,J(t,n||t.type,!0),q(t));return p||(k=i),a}function U(t){return function(t){switch(t.kind){case 164:case 163:return!e.hasEffectiveModifier(t,8);case 161:case 251:return!0}return!1}(t)&&N.isLiteralConstDeclaration(e.getParseTreeNode(t))}function q(t){if(U(t))return N.createLiteralConstValue(e.getParseTreeNode(t),A)}function J(t,r,i){if((i||!e.hasEffectiveModifier(t,8))&&!(U(t)||void 0!==r&&e.isTypeReferenceNode(r)&&r.typeName.virtual)){var a,s=161===t.kind&&(N.isRequiredInitializedParameter(t)||N.isOptionalUninitializedParameterProperty(t));return r&&!s?e.visitNode(r,ee):e.getParseTreeNode(t)?169===t.kind?T.createKeywordTypeNode(129):(m=t.name,p||(a=k,k=e.createGetSymbolAccessibilityDiagnosticForNode(t)),251===t.kind||199===t.kind?c(N.createTypeOfDeclaration(t,o,n,A)):161===t.kind||164===t.kind||163===t.kind?t.initializer?c(N.createTypeOfDeclaration(t,o,n,A,s)||N.createTypeOfExpression(t.initializer,o,n,A)):c(N.createTypeOfDeclaration(t,o,n,A,s)):c(N.createReturnTypeOfSignatureDeclaration(t,o,n,A))):r?e.visitNode(r,ee):T.createKeywordTypeNode(129)}function c(e){return m=void 0,p||(k=a),e||T.createKeywordTypeNode(129)}}function V(t){switch((t=e.getParseTreeNode(t)).kind){case 253:case 259:case 256:case 254:case 255:case 257:case 258:return!N.isDeclarationVisible(t);case 251:return!H(t);case 263:case 264:case 270:case 269:return!1}return!1}function H(t){return!e.isOmittedExpression(t)&&(e.isBindingPattern(t.name)?e.some(t.name.elements,H):N.isDeclarationVisible(t))}function K(t,r,n){if(!e.hasEffectiveModifier(t,8)){var i=e.map(r,(function(e){return z(e,n)}));if(i)return T.createNodeArray(i,r.hasTrailingComma)}}function W(t,r){var n;if(!r){var i=e.getThisParameter(t);i&&(n=[z(i)])}if(e.isSetAccessorDeclaration(t)){var a=void 0;if(!r){var o=e.getSetAccessorValueParameter(t);if(o)a=z(o,void 0,ue(t,N.getAllAccessorDeclarations(t)))}a||(a=T.createParameterDeclaration(void 0,void 0,void 0,"value")),n=e.append(n,a)}return T.createNodeArray(n||e.emptyArray)}function G(t,r){return e.hasEffectiveModifier(t,8)?void 0:e.visitNodes(r,ee)}function $(t){return e.isSourceFile(t)||e.isTypeAliasDeclaration(t)||e.isModuleDeclaration(t)||e.isClassDeclaration(t)||e.isStructDeclaration(t)||e.isInterfaceDeclaration(t)||e.isFunctionLike(t)||e.isIndexSignatureDeclaration(t)||e.isMappedTypeNode(t)}function Y(e,t){R(N.isEntityNameVisible(e,t)),O(N.getTypeReferenceDirectivesForEntityName(e))}function X(t,r){return e.hasJSDocNodes(t)&&e.hasJSDocNodes(r)&&(t.jsDoc=r.jsDoc),e.setCommentRange(t,e.getCommentRange(r))}function Q(r,n){if(n){if(S=S||259!==r.kind&&196!==r.kind,e.isStringLiteralLike(n))if(E){var i=e.getExternalModuleNameFromDeclaration(t.getEmitHost(),N,r);if(i)return T.createStringLiteral(i)}else{var a=N.getSymbolOfExternalModuleSpecifier(n);a&&(f||(f=[])).push(a)}return n}}function Z(t){for(;e.length(u);){var r=u.shift();if(!e.isLateVisibilityPaintedStatement(r))return e.Debug.fail("Late replaced statement was found which is not handled by the declaration transformer!: "+(e.SyntaxKind?e.SyntaxKind[r.kind]:r.kind));var n=x;x=r.parent&&e.isSourceFile(r.parent)&&!(e.isExternalModule(r.parent)&&E);var i=ie(r);x=n,d.set(e.getOriginalNodeId(r),i)}return e.visitNodes(t,(function(t){if(e.isLateVisibilityPaintedStatement(t)){var r=e.getOriginalNodeId(t);if(d.has(r)){var n=d.get(r);return d.delete(r),n&&((e.isArray(n)?e.some(n,e.needsScopeMarker):e.needsScopeMarker(n))&&(D=!0),e.isSourceFile(t.parent)&&(e.isArray(n)?e.some(n,e.isExternalModuleIndicator):e.isExternalModuleIndicator(n))&&(S=!0)),n}}return t}))}function ee(r){if(!oe(r)){if(e.isDeclaration(r)){if(V(r))return;if(e.hasDynamicName(r)&&!N.isLateBound(e.getParseTreeNode(r)))return}if(!(e.isFunctionLike(r)&&N.isImplementationOfOverload(r)||e.isSemicolonClassElement(r))){var n;$(r)&&(n=o,o=r);var i=k,a=e.canProduceDiagnostics(r),s=p,c=(178===r.kind||191===r.kind)&&257!==r.parent.kind;if((e.isMethodDeclaration(r)||e.isMethodSignature(r))&&e.hasEffectiveModifier(r,8)){if(r.symbol&&r.symbol.declarations&&r.symbol.declarations[0]!==r)return;return b(T.createPropertyDeclaration(void 0,ce(r),r.name,void 0,void 0,void 0))}if(a&&!p&&(k=e.createGetSymbolAccessibilityDiagnosticForNode(r)),e.isTypeQueryNode(r)&&Y(r.exprName,o),c&&(p=!0),function(e){switch(e.kind){case 171:case 167:case 166:case 168:case 169:case 164:case 163:case 165:case 170:case 172:case 251:case 160:case 225:case 174:case 185:case 175:case 176:case 196:return!0}return!1}(r))switch(r.kind){case 225:(e.isEntityName(r.expression)||e.isEntityNameExpression(r.expression))&&Y(r.expression,o);var l=e.visitEachChild(r,ee,t);return b(T.updateExpressionWithTypeArguments(l,l.expression,l.typeArguments));case 174:Y(r.typeName,o);l=e.visitEachChild(r,ee,t);return b(T.updateTypeReferenceNode(l,l.typeName,l.typeArguments));case 171:return b(T.updateConstructSignature(r,G(r,r.typeParameters),K(r,r.parameters),J(r,r.type)));case 167:return b(T.createConstructorDeclaration(void 0,ce(r),K(r,r.parameters,0),void 0));case 166:if(e.isPrivateIdentifier(r.name))return b(void 0);var u=void 0;return 255===r.parent.kind&&(u=le(r)),b(T.createMethodDeclaration(u,ce(r),void 0,r.name,r.questionToken,te(r)?void 0:G(r,r.typeParameters),K(r,r.parameters),J(r,r.type),void 0));case 168:if(e.isPrivateIdentifier(r.name))return b(void 0);var d=ue(r,N.getAllAccessorDeclarations(r));return b(T.updateGetAccessorDeclaration(r,void 0,ce(r),r.name,W(r,e.hasEffectiveModifier(r,8)),J(r,d),void 0));case 169:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updateSetAccessorDeclaration(r,void 0,ce(r),r.name,W(r,e.hasEffectiveModifier(r,8)),void 0));case 164:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updatePropertyDeclaration(r,255===r.parent.kind?le(r):void 0,ce(r),r.name,r.questionToken,J(r,r.type),q(r)));case 163:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updatePropertySignature(r,ce(r),r.name,r.questionToken,J(r,r.type)));case 165:return e.isPrivateIdentifier(r.name)?b(void 0):b(T.updateMethodSignature(r,ce(r),r.name,r.questionToken,G(r,r.typeParameters),K(r,r.parameters),J(r,r.type)));case 170:return b(T.updateCallSignature(r,G(r,r.typeParameters),K(r,r.parameters),J(r,r.type)));case 172:return b(T.updateIndexSignature(r,void 0,ce(r),K(r,r.parameters),e.visitNode(r.type,ee)||T.createKeywordTypeNode(129)));case 251:return e.isBindingPattern(r.name)?ae(r.name):(c=!0,p=!0,b(T.updateVariableDeclaration(r,r.name,void 0,J(r,r.type),q(r))));case 160:return function(t){return 166===t.parent.kind&&e.hasEffectiveModifier(t.parent,8)}(r)&&(r.default||r.constraint)?b(T.updateTypeParameterDeclaration(r,r.name,void 0,void 0)):b(e.visitEachChild(r,ee,t));case 185:var f=e.visitNode(r.checkType,ee),g=e.visitNode(r.extendsType,ee),h=o;o=r.trueType;var y=e.visitNode(r.trueType,ee);o=h;var v=e.visitNode(r.falseType,ee);return b(T.updateConditionalTypeNode(r,f,g,y,v));case 175:return b(T.updateFunctionTypeNode(r,e.visitNodes(r.typeParameters,ee),K(r,r.parameters),e.visitNode(r.type,ee)));case 176:return b(T.updateConstructorTypeNode(r,ce(r),e.visitNodes(r.typeParameters,ee),K(r,r.parameters),e.visitNode(r.type,ee)));case 196:return e.isLiteralImportTypeNode(r)?b(T.updateImportTypeNode(r,T.updateLiteralTypeNode(r.argument,Q(r,r.argument.literal)),r.qualifier,e.visitNodes(r.typeArguments,ee,e.isTypeNode),r.isTypeOf)):b(r);default:e.Debug.assertNever(r,"Attempted to process unhandled node kind: "+e.SyntaxKind[r.kind])}return e.isTupleTypeNode(r)&&e.getLineAndCharacterOfPosition(_,r.pos).line===e.getLineAndCharacterOfPosition(_,r.end).line&&e.setEmitFlags(r,1),b(e.visitEachChild(r,ee,t))}}function b(t){return t&&a&&e.hasDynamicName(r)&&function(t){var r;p||(r=k,k=e.createGetSymbolAccessibilityDiagnosticForNodeName(t));m=t.name,e.Debug.assert(N.isLateBound(e.getParseTreeNode(t)));var n=t;Y(n.name.expression,o),p||(k=r);m=void 0}(r),$(r)&&(o=n),a&&!p&&(k=i),c&&(p=s),t===r?t:t&&e.setOriginalNode(X(t,r),r)}}function te(t){var r;if(!(null===(r=C.getCompilerOptions().ets)||void 0===r?void 0:r.styles.component)||8!==e.getSourceFileOfNode(t).scriptKind)return!1;var n=t.decorators;if(void 0===n)return!1;for(var i=0,a=n;i<a.length;i++){var o=a[i];if(e.isIdentifier(o.expression)&&"Styles"===o.expression.escapedText.toString())return!0}return!1}function re(t){if(function(e){switch(e.kind){case 253:case 259:case 263:case 256:case 254:case 255:case 257:case 258:case 234:case 264:case 270:case 269:return!0}return!1}(t)&&!oe(t)){switch(t.kind){case 270:return e.isSourceFile(t.parent)&&(S=!0),w=!0,T.updateExportDeclaration(t,void 0,t.modifiers,t.isTypeOnly,t.exportClause,Q(t,t.moduleSpecifier));case 269:if(e.isSourceFile(t.parent)&&(S=!0),w=!0,78===t.expression.kind)return t;var r=T.createUniqueName("_default",16);k=function(){return{diagnosticMessage:e.Diagnostics.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:t}},g=t;var i=T.createVariableDeclaration(r,void 0,N.createTypeOfExpression(t.expression,t,n,A),void 0);return g=void 0,[T.createVariableStatement(x?[T.createModifier(134)]:[],T.createVariableDeclarationList([i],2)),T.updateExportAssignment(t,t.decorators,t.modifiers,r)]}var a=ie(t);return d.set(e.getOriginalNodeId(t),a),t}}function ne(t){if(e.isImportEqualsDeclaration(t)||e.hasEffectiveModifier(t,512)||!e.canHaveModifiers(t))return t;var r=T.createModifiersFromModifierFlags(11262&e.getEffectiveModifierFlags(t));return T.updateModifiers(t,r)}function ie(t){if(!oe(t)){switch(t.kind){case 263:return function(t){if(N.isDeclarationVisible(t)){if(275===t.moduleReference.kind){var r=e.getExternalModuleImportEqualsDeclarationExpression(t);return T.updateImportEqualsDeclaration(t,void 0,t.modifiers,t.isTypeOnly,t.name,T.updateExternalModuleReference(t.moduleReference,Q(t,r)))}var n=k;return k=e.createGetSymbolAccessibilityDiagnosticForNode(t),Y(t.moduleReference,o),k=n,t}}(t);case 264:return function(t){if(!t.importClause)return T.updateImportDeclaration(t,void 0,t.modifiers,t.importClause,Q(t,t.moduleSpecifier));var r=t.importClause&&t.importClause.name&&N.isDeclarationVisible(t.importClause)?t.importClause.name:void 0;if(!t.importClause.namedBindings)return r&&T.updateImportDeclaration(t,void 0,t.modifiers,T.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,void 0),Q(t,t.moduleSpecifier));if(266===t.importClause.namedBindings.kind){var n=N.isDeclarationVisible(t.importClause.namedBindings)?t.importClause.namedBindings:void 0;return r||n?T.updateImportDeclaration(t,void 0,t.modifiers,T.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,n),Q(t,t.moduleSpecifier)):void 0}var i=e.mapDefined(t.importClause.namedBindings.elements,(function(e){return N.isDeclarationVisible(e)?e:void 0}));return i&&i.length||r?T.updateImportDeclaration(t,void 0,t.modifiers,T.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,i&&i.length?T.updateNamedImports(t.importClause.namedBindings,i):void 0),Q(t,t.moduleSpecifier)):N.isImportRequiredByAugmentation(t)?T.updateImportDeclaration(t,void 0,t.modifiers,void 0,Q(t,t.moduleSpecifier)):void 0}(t)}if(!(e.isDeclaration(t)&&V(t)||e.isFunctionLike(t)&&N.isImplementationOfOverload(t))){var r;$(t)&&(r=o,o=t);var a=e.canProduceDiagnostics(t),s=k;a&&(k=e.createGetSymbolAccessibilityDiagnosticForNode(t));var c=x;switch(t.kind){case 257:return he(T.updateTypeAliasDeclaration(t,void 0,ce(t),t.name,e.visitNodes(t.typeParameters,ee,e.isTypeParameterDeclaration),e.visitNode(t.type,ee,e.isTypeNode)));case 256:return he(T.updateInterfaceDeclaration(t,void 0,ce(t),t.name,G(t,t.typeParameters),de(t.heritageClauses),e.visitNodes(t.members,ee)));case 253:var l=he(T.updateFunctionDeclaration(t,8===e.getSourceFileOfNode(t).scriptKind?le(t):void 0,ce(t),void 0,t.name,te(t)?void 0:G(t,t.typeParameters),K(t,t.parameters),J(t,t.type),void 0));if(l&&N.isExpandoFunctionDeclaration(t)){var u=N.getPropertiesOfContainerFunction(t),p=e.parseNodeFactory.createModuleDeclaration(void 0,void 0,l.name||T.createIdentifier("_default"),T.createModuleBlock([]),16);e.setParent(p,o),p.locals=e.createSymbolTable(u),p.symbol=u[0].parent;var f=[],_=e.mapDefined(u,(function(t){if(e.isPropertyAccessExpression(t.valueDeclaration)){k=e.createGetSymbolAccessibilityDiagnosticForNode(t.valueDeclaration);var r=N.createTypeOfDeclaration(t.valueDeclaration,p,n,A);k=s;var i=e.unescapeLeadingUnderscores(t.escapedName),a=e.isStringANonContextualKeyword(i),o=a?T.getGeneratedNameForNode(t.valueDeclaration):T.createIdentifier(i);a&&f.push([o,i]);var c=T.createVariableDeclaration(o,void 0,r,void 0);return T.createVariableStatement(a?void 0:[T.createToken(93)],T.createVariableDeclarationList([c]))}}));f.length?_.push(T.createExportDeclaration(void 0,void 0,!1,T.createNamedExports(e.map(f,(function(e){var t=e[0],r=e[1];return T.createExportSpecifier(t,r)}))))):_=e.mapDefined(_,(function(e){return T.updateModifiers(e,0)}));var h=T.createModuleDeclaration(void 0,ce(t),t.name,T.createModuleBlock(_),16);if(!e.hasEffectiveModifier(l,512))return[l,h];var y=T.createModifiersFromModifierFlags(-514&e.getEffectiveModifierFlags(l)|2),v=T.updateFunctionDeclaration(l,l.decorators,y,void 0,l.name,l.typeParameters,l.parameters,l.type,void 0),b=T.updateModuleDeclaration(h,void 0,y,h.name,h.body),E=T.createExportAssignment(void 0,void 0,!1,h.name);return e.isSourceFile(t.parent)&&(S=!0),w=!0,[v,b,E]}return l;case 259:x=!1;var C=t.body;if(C&&260===C.kind){var P=D,I=w;w=!1,D=!1;var F=Z(e.visitNodes(C.statements,re));8388608&t.flags&&(D=!1),e.isGlobalScopeAugmentation(t)||function(t){return e.some(t,se)}(F)||w||(F=D?T.createNodeArray(i(i([],F),[e.createEmptyExports(T)])):e.visitNodes(F,ne));var O=T.updateModuleBlock(C,F);x=c,D=P,w=I;var R=ce(t);return he(T.updateModuleDeclaration(t,void 0,R,e.isExternalModuleAugmentation(t)?Q(t,t.name):t.name,O))}x=c;R=ce(t);x=!1,e.visitNode(C,re);var M=e.getOriginalNodeId(C);O=d.get(M);return d.delete(M),he(T.updateModuleDeclaration(t,void 0,R,t.name,O));case 255:m=t.name,g=t;var L=le(t),j=(y=T.createNodeArray(ce(t)),G(t,t.typeParameters)),B=e.visitNodes(t.members,ee,void 0,1),z=T.createNodeArray(B);return he(T.updateStructDeclaration(t,L,y,t.name,j,void 0,z));case 254:m=t.name,g=t;y=T.createNodeArray(ce(t)),j=G(t,t.typeParameters);var U=e.getFirstConstructorWithBody(t),W=void 0;if(U){var ie=k;W=e.compact(e.flatMap(U.parameters,(function(t){if(e.hasSyntacticModifier(t,92)&&!oe(t))return k=e.createGetSymbolAccessibilityDiagnosticForNode(t),78===t.name.kind?X(T.createPropertyDeclaration(void 0,ce(t),t.name,t.questionToken,J(t,t.type),q(t)),t):function r(n){for(var i,a=0,o=n.elements;a<o.length;a++){var s=o[a];e.isOmittedExpression(s)||(e.isBindingPattern(s.name)&&(i=e.concatenate(i,r(s.name))),(i=i||[]).push(T.createPropertyDeclaration(void 0,ce(t),s.name,void 0,J(s,void 0),void 0)))}return i}(t.name)}))),k=ie}var ae=e.some(t.members,(function(t){return!!t.name&&e.isPrivateIdentifier(t.name)}))?[T.createPropertyDeclaration(void 0,void 0,T.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,ue=(B=e.concatenate(e.concatenate(ae,W),e.visitNodes(t.members,ee)),z=T.createNodeArray(B),e.getEffectiveBaseTypeNode(t));if(ue&&!e.isEntityNameExpression(ue.expression)&&104!==ue.expression.kind){var pe=t.name?e.unescapeLeadingUnderscores(t.name.escapedText):"default",fe=T.createUniqueName(pe+"_base",16);k=function(){return{diagnosticMessage:e.Diagnostics.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:ue,typeName:t.name}};var me=T.createVariableDeclaration(fe,void 0,N.createTypeOfExpression(ue.expression,t,n,A),void 0),ge=T.createVariableStatement(x?[T.createModifier(134)]:[],T.createVariableDeclarationList([me],2)),_e=T.createNodeArray(e.map(t.heritageClauses,(function(t){if(94===t.token){var r=k;k=e.createGetSymbolAccessibilityDiagnosticForNode(t.types[0]);var n=T.updateHeritageClause(t,e.map(t.types,(function(t){return T.updateExpressionWithTypeArguments(t,fe,e.visitNodes(t.typeArguments,ee))})));return k=r,n}return T.updateHeritageClause(t,e.visitNodes(T.createNodeArray(e.filter(t.types,(function(t){return e.isEntityNameExpression(t.expression)||104===t.expression.kind}))),ee))})));return[ge,he(T.updateClassDeclaration(t,8===e.getSourceFileOfNode(t).scriptKind?le(t):void 0,y,t.name,j,_e,z))]}_e=de(t.heritageClauses);return he(T.updateClassDeclaration(t,8===e.getSourceFileOfNode(t).scriptKind?le(t):void 0,y,t.name,j,_e,z));case 234:return he(function(t){if(!e.forEach(t.declarationList.declarations,H))return;var r=e.visitNodes(t.declarationList.declarations,ee);if(!e.length(r))return;return T.updateVariableStatement(t,T.createNodeArray(ce(t)),T.updateVariableDeclarationList(t.declarationList,r))}(t));case 258:return he(T.updateEnumDeclaration(t,void 0,T.createNodeArray(ce(t)),t.name,T.createNodeArray(e.mapDefined(t.members,(function(e){if(!oe(e)){var t=N.getConstantValue(e);return X(T.updateEnumMember(e,e.name,void 0!==t?"string"==typeof t?T.createStringLiteral(t):T.createNumericLiteral(t):void 0),e)}})))))}return e.Debug.assertNever(t,"Unhandled top-level node in declaration emit: "+e.SyntaxKind[t.kind])}}function he(n){return $(t)&&(o=r),a&&(k=s),259===t.kind&&(x=c),n===t?n:(g=void 0,m=void 0,n&&e.setOriginalNode(X(n,t),t))}}function ae(t){return e.flatten(e.mapDefined(t.elements,(function(t){return function(t){if(224===t.kind)return;if(t.name){if(!H(t))return;return e.isBindingPattern(t.name)?ae(t.name):T.createVariableDeclaration(t.name,void 0,J(t,void 0),void 0)}}(t)})))}function oe(e){return!!F&&!!e&&r(e,_)}function se(t){return e.isExportAssignment(t)||e.isExportDeclaration(t)}function ce(t){var r=e.getEffectiveModifierFlags(t),n=function(t){var r=11003,n=x&&!function(e){if(256===e.kind)return!0;return!1}(t)?2:0,i=300===t.parent.kind;(!i||E&&i&&e.isExternalModule(t.parent))&&(r^=2,n=0);return s(t,r,n)}(t);return r===n?t.modifiers:T.createModifiersFromModifierFlags(n)}function le(t){if(t.decorators)return T.createNodeArray(e.getEffectiveDecorators(t.decorators,C))}function ue(t,r){var n=c(t);return n||t===r.firstAccessor||(n=c(r.firstAccessor),k=e.createGetSymbolAccessibilityDiagnosticForNode(r.firstAccessor)),!n&&r.secondAccessor&&t!==r.secondAccessor&&(n=c(r.secondAccessor),k=e.createGetSymbolAccessibilityDiagnosticForNode(r.secondAccessor)),n}function de(t){return T.createNodeArray(e.filter(e.map(t,(function(t){return T.updateHeritageClause(t,e.visitNodes(T.createNodeArray(e.filter(t.types,(function(r){return e.isEntityNameExpression(r.expression)||94===t.token&&104===r.expression.kind}))),ee))})),(function(e){return e.types&&!!e.types.length})))}}function s(t,r,n){void 0===r&&(r=11259),void 0===n&&(n=0);var i=e.getEffectiveModifierFlags(t)&r|n;return 512&i&&!(1&i)&&(i^=1),512&i&&2&i&&(i^=2),i}function c(e){if(e)return 168===e.kind?e.type:e.parameters.length>0?e.parameters[0].type:void 0}e.transformDeclarations=o}(d||(d={})),function(e){var t,r;function n(t,r,n){if(n)return e.emptyArray;var i=e.getEmitScriptTarget(t),a=e.getEmitModuleKind(t),o=[];return e.addRange(o,r&&e.map(r.before,s)),o.push(e.transformTypeScript),o.push(e.transformClassFields),e.getJSXTransformEnabled(t)&&o.push(e.transformJsx),i<99&&o.push(e.transformESNext),i<7&&o.push(e.transformES2020),i<6&&o.push(e.transformES2019),i<5&&o.push(e.transformES2018),i<4&&o.push(e.transformES2017),i<3&&o.push(e.transformES2016),i<2&&(o.push(e.transformES2015),o.push(e.transformGenerators)),o.push(function(t){switch(t){case e.ModuleKind.ESNext:case e.ModuleKind.ES2020:case e.ModuleKind.ES2015:return e.transformECMAScriptModule;case e.ModuleKind.System:return e.transformSystemModule;default:return e.transformModule}}(a)),i<1&&o.push(e.transformES5),e.addRange(o,r&&e.map(r.after,s)),o}function a(t){var r=[];return r.push(e.transformDeclarations),e.addRange(r,t&&e.map(t.afterDeclarations,c)),r}function o(t,r){return function(n){var i=t(n);return"function"==typeof i?r(n,i):function(t){return function(r){return e.isBundle(r)?t.transformBundle(r):t.transformSourceFile(r)}}(i)}}function s(t){return o(t,e.chainBundle)}function c(e){return o(e,(function(e,t){return t}))}function l(e,t){return t}function u(e,t,r){r(e,t)}!function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Initialized=1]="Initialized",e[e.Completed=2]="Completed",e[e.Disposed=3]="Disposed"}(t||(t={})),function(e){e[e.Substitution=1]="Substitution",e[e.EmitNotifications=2]="EmitNotifications"}(r||(r={})),e.noTransformers={scriptTransformers:e.emptyArray,declarationTransformers:e.emptyArray},e.getTransformers=function(e,t,r){return{scriptTransformers:n(e,t,r),declarationTransformers:a(t)}},e.noEmitSubstitution=l,e.noEmitNotification=u,e.transformNodes=function(t,r,n,a,o,s,c){for(var d,p,f,m,g=new Array(344),_=0,h=[],y=[],v=[],b=[],k=0,x=!1,E=l,S=u,D=0,w=[],T={factory:n,getCompilerOptions:function(){return a},getEmitResolver:function(){return t},getEmitHost:function(){return r},getEmitHelperFactory:e.memoize((function(){return e.createEmitHelperFactory(T)})),startLexicalEnvironment:function(){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(!x,"Lexical environment is suspended."),h[k]=d,y[k]=p,v[k]=f,b[k]=_,k++,d=void 0,p=void 0,f=void 0,_=0},suspendLexicalEnvironment:function(){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(!x,"Lexical environment is already suspended."),x=!0},resumeLexicalEnvironment:function(){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(x,"Lexical environment is not suspended."),x=!1},endLexicalEnvironment:function(){var t;if(e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.Debug.assert(!x,"Lexical environment is suspended."),d||p||f){if(p&&(t=i([],p)),d){var r=n.createVariableStatement(void 0,n.createVariableDeclarationList(d));e.setEmitFlags(r,1048576),t?t.push(r):t=[r]}f&&(t=i(t?i([],t):[],f))}k--,d=h[k],p=y[k],f=v[k],_=b[k],0===k&&(h=[],y=[],v=[],b=[]);return t},setLexicalEnvironmentFlags:function(e,t){_=t?_|e:_&~e},getLexicalEnvironmentFlags:function(){return _},hoistVariableDeclaration:function(t){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed.");var r=e.setEmitFlags(n.createVariableDeclaration(t),64);d?d.push(r):d=[r];1&_&&(_|=2)},hoistFunctionDeclaration:function(t){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.setEmitFlags(t,1048576),p?p.push(t):p=[t]},addInitializationStatement:function(t){e.Debug.assert(D>0,"Cannot modify the lexical environment during initialization."),e.Debug.assert(D<2,"Cannot modify the lexical environment after transformation has completed."),e.setEmitFlags(t,1048576),f?f.push(t):f=[t]},requestEmitHelper:function t(r){if(e.Debug.assert(D>0,"Cannot modify the transformation context during initialization."),e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed."),e.Debug.assert(!r.scoped,"Cannot request a scoped emit helper."),r.dependencies)for(var n=0,i=r.dependencies;n<i.length;n++){var a=i[n];t(a)}m=e.append(m,r)},readEmitHelpers:function(){e.Debug.assert(D>0,"Cannot modify the transformation context during initialization."),e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed.");var t=m;return m=void 0,t},enableSubstitution:function(t){e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed."),g[t]|=1},enableEmitNotification:function(t){e.Debug.assert(D<2,"Cannot modify the transformation context after transformation has completed."),g[t]|=2},isSubstitutionEnabled:L,isEmitNotificationEnabled:j,get onSubstituteNode(){return E},set onSubstituteNode(t){e.Debug.assert(D<1,"Cannot modify transformation hooks after initialization has completed."),e.Debug.assert(void 0!==t,"Value must not be 'undefined'"),E=t},get onEmitNode(){return S},set onEmitNode(t){e.Debug.assert(D<1,"Cannot modify transformation hooks after initialization has completed."),e.Debug.assert(void 0!==t,"Value must not be 'undefined'"),S=t},addDiagnostic:function(e){w.push(e)}},C=0,A=o;C<A.length;C++){var N=A[C];e.disposeEmitNodes(e.getSourceFileOfNode(e.getParseTreeNode(N)))}e.performance.mark("beforeTransform");var P=s.map((function(e){return e(T)})),I=function(e){for(var t=0,r=P;t<r.length;t++){e=(0,r[t])(e)}return e};D=1;for(var F=[],O=0,R=o;O<R.length;O++){N=R[O];null===e.tracing||void 0===e.tracing||e.tracing.push("emit","transformNodes",300===N.kind?{path:N.path}:{kind:N.kind,pos:N.pos,end:N.end}),F.push((c?I:M)(N)),null===e.tracing||void 0===e.tracing||e.tracing.pop()}return D=2,e.performance.mark("afterTransform"),e.performance.measure("transformTime","beforeTransform","afterTransform"),{transformed:F,substituteNode:function(t,r){return e.Debug.assert(D<3,"Cannot substitute a node after the result is disposed."),r&&L(r)&&E(t,r)||r},emitNodeWithNotification:function(t,r,n){e.Debug.assert(D<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),r&&(j(r)?S(t,r,n):n(t,r))},isEmitNotificationEnabled:j,dispose:function(){if(D<3){for(var t=0,r=o;t<r.length;t++){var n=r[t];e.disposeEmitNodes(e.getSourceFileOfNode(e.getParseTreeNode(n)))}d=void 0,h=void 0,p=void 0,y=void 0,E=void 0,S=void 0,m=void 0,D=3}},diagnostics:w};function M(t){return!t||e.isSourceFile(t)&&t.isDeclarationFile?t:I(t)}function L(t){return 0!=(1&g[t.kind])&&0==(4&e.getEmitFlags(t))}function j(t){return 0!=(2&g[t.kind])||0!=(2&e.getEmitFlags(t))}},e.nullTransformationContext={get factory(){return e.factory},enableEmitNotification:e.noop,enableSubstitution:e.noop,endLexicalEnvironment:e.returnUndefined,getCompilerOptions:function(){return{}},getEmitHost:e.notImplemented,getEmitResolver:e.notImplemented,getEmitHelperFactory:e.notImplemented,setLexicalEnvironmentFlags:e.noop,getLexicalEnvironmentFlags:function(){return 0},hoistFunctionDeclaration:e.noop,hoistVariableDeclaration:e.noop,addInitializationStatement:e.noop,isEmitNotificationEnabled:e.notImplemented,isSubstitutionEnabled:e.notImplemented,onEmitNode:e.noop,onSubstituteNode:e.notImplemented,readEmitHelpers:e.notImplemented,requestEmitHelper:e.noop,resumeLexicalEnvironment:e.noop,startLexicalEnvironment:e.noop,suspendLexicalEnvironment:e.noop,addDiagnostic:e.noop}}(d||(d={})),function(e){var t,r,n=function(){var e=[];return e[1024]=["{","}"],e[2048]=["(",")"],e[4096]=["<",">"],e[8192]=["[","]"],e}(),a={pos:-1,end:-1};function o(t,r,n,i,a,o){void 0===i&&(i=!1);var c=e.isArray(n)?n:e.getSourceFilesToEmit(t,n,i),u=t.getCompilerOptions();if(e.outFile(u)){var d=t.getPrependNodes();if(c.length||d.length){var p=e.factory.createBundle(c,d);if(g=r(l(p,t,i),p))return g}}else{if(!a)for(var f=0,m=c;f<m.length;f++){var g,_=m[f];if(g=r(l(_,t,i),_))return g}if(o){var h=s(u);if(h)return r({buildInfoPath:h},void 0)}}}function s(t){var r=t.configFilePath;if(e.isIncrementalCompilation(t)){if(t.tsBuildInfoFile)return t.tsBuildInfoFile;var n,i=e.outFile(t);if(i)n=e.removeFileExtension(i);else{if(!r)return;var a=e.removeFileExtension(r);n=t.outDir?t.rootDir?e.resolvePath(t.outDir,e.getRelativePathFromDirectory(t.rootDir,a,!0)):e.combinePaths(t.outDir,e.getBaseFileName(a)):a}return n+".tsbuildinfo"}}function c(t,r){var n=e.outFile(t),i=t.emitDeclarationOnly?void 0:n,a=i&&u(i,t),o=r||e.getEmitDeclarations(t)?e.removeFileExtension(n)+".d.ts":void 0;return{jsFilePath:i,sourceMapFilePath:a,declarationFilePath:o,declarationMapPath:o&&e.getAreDeclarationMapsEnabled(t)?o+".map":void 0,buildInfoPath:s(t)}}function l(t,r,n){var i=r.getCompilerOptions();if(301===t.kind)return c(i,n);var a=e.getOwnEmitOutputFilePath(t.fileName,r,d(t,i)),o=e.isJsonSourceFile(t),s=o&&0===e.comparePaths(t.fileName,a,r.getCurrentDirectory(),!r.useCaseSensitiveFileNames()),l=i.emitDeclarationOnly||s?void 0:a,p=!l||e.isJsonSourceFile(t)?void 0:u(l,i),f=n||e.getEmitDeclarations(i)&&!o?e.getDeclarationEmitOutputFilePath(t.fileName,r):void 0;return{jsFilePath:l,sourceMapFilePath:p,declarationFilePath:f,declarationMapPath:f&&e.getAreDeclarationMapsEnabled(i)?f+".map":void 0,buildInfoPath:void 0}}function u(e,t){return t.sourceMap&&!t.inlineSourceMap?e+".map":void 0}function d(t,r){if(e.isJsonSourceFile(t))return".json";if(1===r.jsx)if(e.isSourceFileJS(t)){if(e.fileExtensionIs(t.fileName,".jsx"))return".jsx"}else if(1===t.languageVariant)return".jsx";return".js"}function p(t,r,n,i,a){return i?e.resolvePath(i,e.getRelativePathFromDirectory(a?a():v(r,n),t,n)):t}function f(t,r,n,i){return e.Debug.assert(!e.isDeclarationFileName(t)&&!e.fileExtensionIs(t,".json")),e.changeExtension(p(t,r,n,r.options.declarationDir||r.options.outDir,i),e.fileExtensionIs(t,".ets")?".d.ets":".d.ts")}function m(t,r,n,i){if(!r.options.emitDeclarationOnly){var a=e.fileExtensionIs(t,".json"),o=e.changeExtension(p(t,r,n,r.options.outDir,i),a?".json":1===r.options.jsx&&(e.fileExtensionIs(t,".tsx")||e.fileExtensionIs(t,".jsx"))?".jsx":".js");return a&&0===e.comparePaths(t,o,e.Debug.checkDefined(r.options.configFilePath),n)?void 0:o}}function g(){var t;return{addOutput:function(e){e&&(t||(t=[])).push(e)},getOutputs:function(){return t||e.emptyArray}}}function _(e,t){var r=c(e.options,!1),n=r.jsFilePath,i=r.sourceMapFilePath,a=r.declarationFilePath,o=r.declarationMapPath,s=r.buildInfoPath;t(n),t(i),t(a),t(o),t(s)}function h(t,r,n,i,a){if(!e.isDeclarationFileName(r)){var o=m(r,t,n,a);if(i(o),!e.fileExtensionIs(r,".json")&&(o&&t.options.sourceMap&&i(o+".map"),e.getEmitDeclarations(t.options))){var s=f(r,t,n,a);i(s),t.options.declarationMap&&i(s+".map")}}}function y(t,r,n,i,a){var o;return t.rootDir?(o=e.getNormalizedAbsolutePath(t.rootDir,n),null==a||a(t.rootDir)):t.composite&&t.configFilePath?(o=e.getDirectoryPath(e.normalizeSlashes(t.configFilePath)),null==a||a(o)):o=e.computeCommonSourceDirectoryOfFilenames(r(),n,i),o&&o[o.length-1]!==e.directorySeparator&&(o+=e.directorySeparator),o}function v(t,r){var n=t.options,i=t.fileNames;return y(n,(function(){return e.filter(i,(function(t){return!(n.noEmitForJsFiles&&e.fileExtensionIsOneOf(t,e.supportedJSExtensions)||e.isDeclarationFileName(t))}))}),e.getDirectoryPath(e.normalizeSlashes(e.Debug.checkDefined(n.configFilePath))),e.createGetCanonicalFileName(!r))}function b(t,r,n,i,a,s,c){var l,u,d=i.scriptTransformers,p=i.declarationTransformers,f=r.getCompilerOptions(),m=f.sourceMap||f.inlineSourceMap||e.getAreDeclarationMapsEnabled(f)?[]:void 0,g=f.listEmittedFiles?[]:void 0,_=e.createDiagnosticCollection(),h=e.getNewLineCharacter(f,(function(){return r.getNewLine()})),y=e.createTextWriter(h),v=e.performance.createTimer("printTime","beforePrint","afterPrint"),b=v.enter,x=v.exit,S=!1;return b(),o(r,(function(i,o){var s,m=i.jsFilePath,h=i.sourceMapFilePath,y=i.declarationFilePath,v=i.declarationMapPath,b=i.buildInfoPath;b&&o&&e.isBundle(o)&&(s=e.getDirectoryPath(e.getNormalizedAbsolutePath(b,r.getCurrentDirectory())),l={commonSourceDirectory:x(r.getCommonSourceDirectory()),sourceFiles:o.sourceFiles.map((function(t){return x(e.getNormalizedAbsolutePath(t.fileName,r.getCurrentDirectory()))}))});null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitJsFileOrBundle",{jsFilePath:m}),function(n,i,o,s){if(!n||a||!i)return;if(i&&r.isEmitBlocked(i)||f.noEmit)return void(S=!0);var c=e.transformNodes(t,r,e.factory,f,[n],d,!1),u=E({removeComments:f.removeComments,newLine:f.newLine,noEmitHelpers:f.noEmitHelpers,module:f.module,target:f.target,sourceMap:f.sourceMap,inlineSourceMap:f.inlineSourceMap,inlineSources:f.inlineSources,extendedDiagnostics:f.extendedDiagnostics,writeBundleFileInfo:!!l,relativeToBuildInfo:s},{hasGlobalName:t.hasGlobalName,onEmitNode:c.emitNodeWithNotification,isEmitNotificationEnabled:c.isEmitNotificationEnabled,substituteNode:c.substituteNode});e.Debug.assert(1===c.transformed.length,"Should only see one output from the transform"),w(i,o,c.transformed[0],u,f),c.dispose(),l&&(l.js=u.bundleFileInfo)}(o,m,h,x),null===e.tracing||void 0===e.tracing||e.tracing.pop(),null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitDeclarationFileOrBundle",{declarationFilePath:y}),function(n,i,o,s){if(!n)return;if(!i)return void((a||f.emitDeclarationOnly)&&(S=!0));var d=e.isSourceFile(n)?[n]:n.sourceFiles,m=c?d:e.filter(d,e.isSourceFileNotJson),g=e.outFile(f)?[e.factory.createBundle(m,e.isSourceFile(n)?void 0:n.prepends)]:m;a&&!e.getEmitDeclarations(f)&&m.forEach(D);var h=e.transformNodes(t,r,e.factory,f,g,p,!1);if(e.length(h.diagnostics))for(var y=0,v=h.diagnostics;y<v.length;y++){var b=v[y];_.add(b)}var k=E({removeComments:f.removeComments,newLine:f.newLine,noEmitHelpers:!0,module:f.module,target:f.target,sourceMap:f.sourceMap,inlineSourceMap:f.inlineSourceMap,extendedDiagnostics:f.extendedDiagnostics,onlyPrintJsDocStyle:!0,writeBundleFileInfo:!!l,recordInternalSection:!!l,relativeToBuildInfo:s},{hasGlobalName:t.hasGlobalName,onEmitNode:h.emitNodeWithNotification,isEmitNotificationEnabled:h.isEmitNotificationEnabled,substituteNode:h.substituteNode}),x=!!h.diagnostics&&!!h.diagnostics.length||!!r.isEmitBlocked(i)||!!f.noEmit;if(S=S||x,(!x||c)&&(e.Debug.assert(1===h.transformed.length,"Should only see one output from the decl transform"),w(i,o,h.transformed[0],k,{sourceMap:f.declarationMap,sourceRoot:f.sourceRoot,mapRoot:f.mapRoot,extendedDiagnostics:f.extendedDiagnostics}),c&&300===h.transformed[0].kind)){var T=h.transformed[0];u=T.exportedModulesFromDeclarationEmit}h.dispose(),l&&(l.dts=k.bundleFileInfo)}(o,y,v,x),null===e.tracing||void 0===e.tracing||e.tracing.pop(),null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitBuildInfo",{buildInfoPath:b}),function(t,i){if(!i||n||S)return;var a=r.getProgramBuildInfo();if(r.isEmitBlocked(i))return void(S=!0);var o=e.version;e.writeFile(r,_,i,k({bundle:t,program:a,version:o}),!1)}(l,b),null===e.tracing||void 0===e.tracing||e.tracing.pop(),!S&&g&&(a||(m&&g.push(m),h&&g.push(h),b&&g.push(b)),y&&g.push(y),v&&g.push(v));function x(t){return e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(s,t,r.getCanonicalFileName))}}),e.getSourceFilesToEmit(r,n,c),c,s,!n),x(),{emitSkipped:S,diagnostics:_.getDiagnostics(),emittedFiles:g,sourceMaps:m,exportedModulesFromDeclarationEmit:u};function D(r){e.isExportAssignment(r)?78===r.expression.kind&&t.collectLinkedAliases(r.expression,!0):e.isExportSpecifier(r)?t.collectLinkedAliases(r.propertyName||r.name,!0):e.forEachChild(r,D)}function w(t,n,i,a,o){var s,c=301===i.kind?i:void 0,l=300===i.kind?i:void 0,u=c?c.sourceFiles:[l];if(function(t,r){return(t.sourceMap||t.inlineSourceMap)&&(300!==r.kind||!e.fileExtensionIs(r.fileName,".json"))}(o,i)&&(s=e.createSourceMapGenerator(r,e.getBaseFileName(e.normalizeSlashes(t)),function(t){var r=e.normalizeSlashes(t.sourceRoot||"");return r?e.ensureTrailingDirectorySeparator(r):r}(o),function(t,n,i){if(t.sourceRoot)return r.getCommonSourceDirectory();if(t.mapRoot){var a=e.normalizeSlashes(t.mapRoot);return i&&(a=e.getDirectoryPath(e.getSourceFilePathInNewDir(i.fileName,r,a))),0===e.getRootLength(a)&&(a=e.combinePaths(r.getCommonSourceDirectory(),a)),a}return e.getDirectoryPath(e.normalizePath(n))}(o,t,l),o)),c?a.writeBundle(c,y,s):a.writeFile(l,y,s),s){m&&m.push({inputSourceFileNames:s.getSources(),sourceMap:s.toJSON()});var d=function(t,n,i,a,o){if(t.inlineSourceMap){var s=n.toString();return"data:application/json;base64,"+e.base64encode(e.sys,s)}var c=e.getBaseFileName(e.normalizeSlashes(e.Debug.checkDefined(a)));if(t.mapRoot){var l=e.normalizeSlashes(t.mapRoot);return o&&(l=e.getDirectoryPath(e.getSourceFilePathInNewDir(o.fileName,r,l))),0===e.getRootLength(l)?(l=e.combinePaths(r.getCommonSourceDirectory(),l),encodeURI(e.getRelativePathToDirectoryOrUrl(e.getDirectoryPath(e.normalizePath(i)),e.combinePaths(l,c),r.getCurrentDirectory(),r.getCanonicalFileName,!0))):encodeURI(e.combinePaths(l,c))}return encodeURI(c)}(o,s,t,n,l);if(d&&(y.isAtStartOfLine()||y.rawWrite(h),y.writeComment("//# sourceMappingURL="+d)),n){var p=s.toString();e.writeFile(r,_,n,p,!1,u)}}else y.writeLine();e.writeFile(r,_,t,y.getText(),!!f.emitBOM,u),y.clear()}}function k(e){return JSON.stringify(e,void 0,2)}function x(e){return JSON.parse(e)}function E(t,r){void 0===t&&(t={}),void 0===r&&(r={});var i,o,s,c,l,u,d,p,f,m,g,_,h,y,v,b,k,x,E,S=r.hasGlobalName,D=r.onEmitNode,w=void 0===D?e.noEmitNotification:D,T=r.isEmitNotificationEnabled,C=r.substituteNode,A=void 0===C?e.noEmitSubstitution:C,N=r.onBeforeEmitNodeArray,P=r.onAfterEmitNodeArray,I=r.onBeforeEmitToken,F=r.onAfterEmitToken,O=!!t.extendedDiagnostics,R=e.getNewLineCharacter(t),M=e.getEmitModuleKind(t),L=new e.Map,j=t.preserveSourceNewlines,B=function(e){m.write(e)},z=t.writeBundleFileInfo?{sections:[]}:void 0,U=z?e.Debug.checkDefined(t.relativeToBuildInfo):void 0,q=t.recordInternalSection,J=0,V="text",H=!0,K=-1,W=-1,G=-1,$=-1,Y=-1,X=!1,Q=!!t.removeComments,Z=e.performance.createTimerIf(O,"commentTime","beforeComment","afterComment"),ee=Z.enter,te=Z.exit;return ye(),{printNode:function(t,r,n){switch(t){case 0:e.Debug.assert(e.isSourceFile(r),"Expected a SourceFile node.");break;case 2:e.Debug.assert(e.isIdentifier(r),"Expected an Identifier node.");break;case 1:e.Debug.assert(e.isExpression(r),"Expected an Expression node.")}switch(r.kind){case 300:return ne(r);case 301:return re(r);case 302:return function(e,t){var r=m;he(t,void 0),ge(4,e,void 0),ye(),m=r}(r,fe()),me()}return ie(t,r,n,fe()),me()},printList:function(e,t,r){return ae(e,t,r,fe()),me()},printFile:ne,printBundle:re,writeNode:ie,writeList:ae,writeFile:pe,writeBundle:de,bundleFileInfo:z};function re(e){return de(e,fe(),void 0),me()}function ne(e){return pe(e,fe(),void 0),me()}function ie(e,t,r,n){var i=m;he(n,void 0),ge(e,t,r),ye(),m=i}function ae(e,t,r,n){var i=m;he(n,void 0),r&&_e(r),Et(a,t,e),ye(),m=i}function oe(){return m.getTextPosWithWriteLine?m.getTextPosWithWriteLine():m.getTextPos()}function se(t,r,n){var i=e.lastOrUndefined(z.sections);i&&i.kind===n?i.end=r:z.sections.push({pos:t,end:r,kind:n})}function ce(t){if(q&&z&&i&&(e.isDeclaration(t)||e.isVariableStatement(t))&&e.isInternalDeclaration(t,i)&&"internal"!==V){var r=V;return ue(m.getTextPos()),J=oe(),V="internal",r}}function le(e){e&&(ue(m.getTextPos()),J=oe(),V=e)}function ue(e){return J<e&&(se(J,e,V),!0)}function de(r,n,i){var a;_=!1;var o=m;he(n,i),ut(r),lt(r),Ne(r),function(t){at(!!t.hasNoDefaultLib,t.syntheticFileReferences||[],t.syntheticTypeReferences||[],t.syntheticLibReferences||[]);for(var r=0,n=t.prepends;r<n.length;r++){var i=n[r];if(e.isUnparsedSource(i)&&i.syntheticReferences)for(var a=0,o=i.syntheticReferences;a<o.length;a++){be(o[a]),Mt()}}}(r);for(var s=0,c=r.prepends;s<c.length;s++){var l=c[s];Mt();var u=m.getTextPos(),d=z&&z.sections;if(d&&(z.sections=[]),ge(4,l,void 0),z){var p=z.sections;z.sections=d,l.oldFileOfCurrentEmit?(a=z.sections).push.apply(a,p):(p.forEach((function(t){return e.Debug.assert(e.isBundleFileTextLike(t))})),z.sections.push({pos:u,end:m.getTextPos(),kind:"prepend",data:U(l.fileName),texts:p}))}}J=oe();for(var f=0,g=r.sourceFiles;f<g.length;f++){var h=g[f];ge(0,h,h)}if(z&&r.sourceFiles.length&&ue(m.getTextPos())){var y=function(t){for(var r,n=new e.Set,i=0;i<t.sourceFiles.length;i++){for(var a=t.sourceFiles[i],o=void 0,s=0,c=0,l=a.statements;c<l.length;c++){var u=l[c];if(!e.isPrologueDirective(u))break;n.has(u.expression.text)||(n.add(u.expression.text),(o||(o=[])).push({pos:u.pos,end:u.end,expression:{pos:u.expression.pos,end:u.expression.end,text:u.expression.text}}),s=s<u.end?u.end:s)}o&&(r||(r=[])).push({file:i,text:a.text.substring(0,s),directives:o})}return r}(r);y&&(z.sources||(z.sources={}),z.sources.prologues=y);var v=function(r){var n;if(M===e.ModuleKind.None||t.noEmitHelpers)return;for(var i=new e.Map,a=0,o=r.sourceFiles;a<o.length;a++){var s=o[a],c=void 0!==e.getExternalHelpersModuleName(s),l=Pe(s);if(l)for(var u=0,d=l;u<d.length;u++){var p=d[u];p.scoped||c||i.get(p.name)||(i.set(p.name,!0),(n||(n=[])).push(p.name))}}return n}(r);v&&(z.sources||(z.sources={}),z.sources.helpers=v)}ye(),m=o}function pe(e,t,r){_=!0;var n=m;he(t,r),ut(e),lt(e),ge(0,e,e),ye(),m=n}function fe(){return g||(g=e.createTextWriter(R))}function me(){var e=g.getText();return g.clear(),e}function ge(e,t,r){r&&_e(r),Se(e,t)}function _e(e){i=e,b=void 0,k=void 0,e&&zr(e)}function he(r,n){r&&t.omitTrailingSemicolon&&(r=e.getTrailingSemicolonDeferringWriter(r)),h=n,H=!(m=r)||!h}function ye(){o=[],s=[],c=new e.Set,l=[],u=0,d=[],i=void 0,b=void 0,k=void 0,x=void 0,E=void 0,he(void 0,void 0)}function ve(){return b||(b=e.getLineStarts(i))}function be(e){if(void 0!==e){var t=ce(e),r=Se(4,e);return le(t),r}}function ke(e){if(void 0!==e)return Se(2,e)}function xe(e){if(void 0!==e)return Se(1,e)}function Ee(t){return Se(e.isStringLiteral(t)?6:4,t)}function Se(t,r){var n=x,i=E,a=j;x=r,E=void 0,j&&134217728&e.getEmitFlags(r)&&(j=!1),De(0,t,r)(t,r),e.Debug.assert(x===r);var o=E;return x=n,E=i,j=a,o||r}function De(t,r,n){switch(t){case 0:if(w!==e.noEmitNotification&&(!T||T(n)))return Te;case 1:if(A!==e.noEmitSubstitution&&(E=A(r,n))!==n)return Ae;case 2:if(!Q&&300!==n.kind)return hr;case 3:if(!H&&300!==n.kind&&!e.isInJsonFile(n))return Mr;case 4:return Ce;default:return e.Debug.assertNever(t)}}function we(e,t,r){return De(e+1,t,r)}function Te(t,r){e.Debug.assert(x===r);var n=we(0,t,r);w(t,r,n),e.Debug.assert(x===r)}function Ce(t,r){if(e.Debug.assert(x===r||E===r),0===t)return function(t){Mt();var r=t.statements;if(kr){if(0===r.length||!e.isPrologueDirective(r[0])||e.nodeIsSynthesized(r[0]))return void kr(t,r,ot)}ot(t)}(e.cast(r,e.isSourceFile));if(2===t)return Oe(e.cast(r,e.isIdentifier));if(6===t)return Ie(e.cast(r,e.isStringLiteral),!0);if(3===t)return function(e){be(e.name),Ot(),Nt("in"),Ot(),be(e.constraint)}(e.cast(r,e.isTypeParameterDeclaration));if(5===t)return e.Debug.assertNode(r,e.isEmptyStatement),Le(!0);if(4===t){if(e.isKeyword(r.kind))return zt(r,Nt);switch(r.kind){case 15:case 16:case 17:return Ie(r,!1);case 302:case 296:return function(e){for(var t=0,r=e.texts;t<r.length;t++){var n=r[t];Mt(),be(n)}}(r);case 295:return Fe(r);case 297:case 298:return o=r,s=oe(),Fe(o),void(z&&se(s,m.getTextPos(),297===o.kind?"text":"internal"));case 299:return function(t){var r=oe();if(Fe(t),z){var n=e.clone(t.section);n.pos=r,n.end=m.getTextPos(),z.sections.push(n)}}(r);case 78:return Oe(r);case 79:return function(e){var t=e.symbol?Tt:B;t(rr(e,!1),e.symbol)}(r);case 158:return function(e){(function(e){78===e.kind?xe(e):be(e)})(e.left),Ct("."),be(e.right)}(r);case 159:return function(e){Ct("["),xe(e.expression),Ct("]")}(r);case 160:return function(e){be(e.name),e.constraint&&(Ot(),Nt("extends"),Ot(),be(e.constraint));e.default&&(Ot(),Pt("="),Ot(),be(e.default))}(r);case 161:return function(e){yt(e,e.decorators),pt(e,e.modifiers),be(e.dotDotDotToken),dt(e.name,It),be(e.questionToken),e.parent&&311===e.parent.kind&&!e.name?be(e.type):ft(e.type);mt(e.initializer,e.type?e.type.end:e.questionToken?e.questionToken.end:e.name?e.name.end:e.modifiers?e.modifiers.end:e.decorators?e.decorators.end:e.pos,e)}(r);case 162:return a=r,Ct("@"),void xe(a.expression);case 163:return function(e){yt(e,e.decorators),pt(e,e.modifiers),dt(e.name,Rt),be(e.questionToken),ft(e.type),At()}(r);case 164:return function(e){yt(e,e.decorators),pt(e,e.modifiers),be(e.name),be(e.questionToken),be(e.exclamationToken),ft(e.type),mt(e.initializer,e.type?e.type.end:e.questionToken?e.questionToken.end:e.name.end,e),At()}(r);case 165:return function(e){ir(e),yt(e,e.decorators),pt(e,e.modifiers),be(e.name),be(e.questionToken),bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type),At(),ar(e)}(r);case 166:return function(e){yt(e,e.decorators),pt(e,e.modifiers),be(e.asteriskToken),be(e.name),be(e.questionToken),Je(e,Ve)}(r);case 167:return function(e){pt(e,e.modifiers),Nt("constructor"),Je(e,Ve)}(r);case 168:case 169:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Nt(168===e.kind?"get":"set"),Ot(),be(e.name),Je(e,Ve)}(r);case 170:return function(e){ir(e),yt(e,e.decorators),pt(e,e.modifiers),bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type),At(),ar(e)}(r);case 171:return function(e){ir(e),yt(e,e.decorators),pt(e,e.modifiers),Nt("new"),Ot(),bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type),At(),ar(e)}(r);case 172:return function(e){yt(e,e.decorators),pt(e,e.modifiers),t=e,r=e.parameters,Et(t,r,8848),ft(e.type),At();var t,r}(r);case 195:return function(e){be(e.type),be(e.literal)}(r);case 173:return function(e){e.assertsModifier&&(be(e.assertsModifier),Ot());be(e.parameterName),e.type&&(Ot(),Nt("is"),Ot(),be(e.type))}(r);case 174:return function(e){be(e.typeName),vt(e,e.typeArguments)}(r);case 175:return function(e){ir(e),bt(e,e.typeParameters),xt(e,e.parameters),Ot(),Ct("=>"),Ot(),be(e.type),ar(e)}(r);case 311:return function(e){Nt("function"),kt(e,e.parameters),Ct(":"),be(e.type)}(r);case 176:return function(e){ir(e),pt(e,e.modifiers),Nt("new"),Ot(),bt(e,e.typeParameters),kt(e,e.parameters),Ot(),Ct("=>"),Ot(),be(e.type),ar(e)}(r);case 177:return function(e){Nt("typeof"),Ot(),be(e.exprName)}(r);case 178:return function(t){Ct("{");var r=1&e.getEmitFlags(t)?768:32897;Et(t,t.members,524288|r),Ct("}")}(r);case 179:return function(e){be(e.elementType),Ct("["),Ct("]")}(r);case 180:return function(t){ze(22,t.pos,Ct,t);var r=1&e.getEmitFlags(t)?528:657;Et(t,t.elements,524288|r),ze(23,t.elements.end,Ct,t)}(r);case 181:return function(e){be(e.type),Ct("?")}(r);case 183:return function(e){Et(e,e.types,516)}(r);case 184:return function(e){Et(e,e.types,520)}(r);case 185:return function(e){be(e.checkType),Ot(),Nt("extends"),Ot(),be(e.extendsType),Ot(),Ct("?"),Ot(),be(e.trueType),Ot(),Ct(":"),Ot(),be(e.falseType)}(r);case 186:return function(e){Nt("infer"),Ot(),be(e.typeParameter)}(r);case 187:return function(e){Ct("("),be(e.type),Ct(")")}(r);case 225:return function(e){xe(e.expression),vt(e,e.typeArguments)}(r);case 188:return void Nt("this");case 189:return function(e){Ut(e.operator,Nt),Ot(),be(e.type)}(r);case 190:return function(e){be(e.objectType),Ct("["),be(e.indexType),Ct("]")}(r);case 191:return function(t){var r=e.getEmitFlags(t);Ct("{"),1&r?Ot():(Mt(),Lt());t.readonlyToken&&(be(t.readonlyToken),143!==t.readonlyToken.kind&&Nt("readonly"),Ot());Ct("["),Se(3,t.typeParameter),t.nameType&&(Ot(),Nt("as"),Ot(),be(t.nameType));Ct("]"),t.questionToken&&(be(t.questionToken),57!==t.questionToken.kind&&Ct("?"));Ct(":"),Ot(),be(t.type),At(),1&r?Ot():(Mt(),jt());Ct("}")}(r);case 192:return function(e){xe(e.literal)}(r);case 194:return function(e){be(e.head),Et(e,e.templateSpans,262144)}(r);case 196:return function(e){e.isTypeOf&&(Nt("typeof"),Ot());Nt("import"),Ct("("),be(e.argument),Ct(")"),e.qualifier&&(Ct("."),be(e.qualifier));vt(e,e.typeArguments)}(r);case 306:return void Ct("*");case 307:return void Ct("?");case 308:return function(e){Ct("?"),be(e.type)}(r);case 309:return function(e){Ct("!"),be(e.type)}(r);case 310:return function(e){be(e.type),Ct("=")}(r);case 182:case 312:return function(e){Ct("..."),be(e.type)}(r);case 193:return function(e){be(e.dotDotDotToken),be(e.name),be(e.questionToken),ze(58,e.name.end,Ct,e),Ot(),be(e.type)}(r);case 197:return function(e){Ct("{"),Et(e,e.elements,525136),Ct("}")}(r);case 198:return function(e){Ct("["),Et(e,e.elements,524880),Ct("]")}(r);case 199:return function(e){be(e.dotDotDotToken),e.propertyName&&(be(e.propertyName),Ct(":"),Ot());be(e.name),mt(e.initializer,e.name.end,e)}(r);case 230:return function(e){xe(e.expression),be(e.literal)}(r);case 231:return void At();case 232:return function(e){Me(e,!e.multiLine&&er(e))}(r);case 234:return function(e){pt(e,e.modifiers),be(e.declarationList),At()}(r);case 233:return Le(!1);case 235:return function(t){xe(t.expression),(!e.isJsonSourceFile(i)||e.nodeIsSynthesized(t.expression))&&At()}(r);case 236:return function(e){var t=ze(99,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.thenStatement),e.elseStatement&&(qt(e,e.thenStatement,e.elseStatement),ze(91,e.thenStatement.end,Nt,e),236===e.elseStatement.kind?(Ot(),be(e.elseStatement)):ht(e,e.elseStatement))}(r);case 237:return function(t){ze(90,t.pos,Nt,t),ht(t,t.statement),e.isBlock(t.statement)&&!j?Ot():qt(t,t.statement,t.expression);je(t,t.statement.end),At()}(r);case 238:return function(e){je(e,e.pos),ht(e,e.statement)}(r);case 239:return function(e){var t=ze(97,e.pos,Nt,e);Ot();var r=ze(20,t,Ct,e);Be(e.initializer),r=ze(26,e.initializer?e.initializer.end:r,Ct,e),_t(e.condition),r=ze(26,e.condition?e.condition.end:r,Ct,e),_t(e.incrementor),ze(21,e.incrementor?e.incrementor.end:r,Ct,e),ht(e,e.statement)}(r);case 240:return function(e){var t=ze(97,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),Be(e.initializer),Ot(),ze(101,e.initializer.end,Nt,e),Ot(),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.statement)}(r);case 241:return function(e){var t=ze(97,e.pos,Nt,e);Ot(),function(e){e&&(be(e),Ot())}(e.awaitModifier),ze(20,t,Ct,e),Be(e.initializer),Ot(),ze(157,e.initializer.end,Nt,e),Ot(),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.statement)}(r);case 242:return function(e){ze(86,e.pos,Nt,e),gt(e.label),At()}(r);case 243:return function(e){ze(80,e.pos,Nt,e),gt(e.label),At()}(r);case 244:return function(e){ze(105,e.pos,Nt,e),_t(e.expression),At()}(r);case 245:return function(e){var t=ze(116,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e),ht(e,e.statement)}(r);case 246:return function(e){var t=ze(107,e.pos,Nt,e);Ot(),ze(20,t,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e),Ot(),be(e.caseBlock)}(r);case 247:return function(e){be(e.label),ze(58,e.label.end,Ct,e),Ot(),be(e.statement)}(r);case 248:return function(e){ze(109,e.pos,Nt,e),_t(e.expression),At()}(r);case 249:return function(e){ze(111,e.pos,Nt,e),Ot(),be(e.tryBlock),e.catchClause&&(qt(e,e.tryBlock,e.catchClause),be(e.catchClause));e.finallyBlock&&(qt(e,e.catchClause||e.tryBlock,e.finallyBlock),ze(96,(e.catchClause||e.tryBlock).end,Nt,e),Ot(),be(e.finallyBlock))}(r);case 250:return function(e){Bt(87,e.pos,Nt),At()}(r);case 251:return function(e){be(e.name),be(e.exclamationToken),ft(e.type),mt(e.initializer,e.type?e.type.end:e.name.end,e)}(r);case 252:return function(t){Nt(e.isLet(t)?"let":e.isVarConst(t)?"const":"var"),Ot(),Et(t,t.declarations,528)}(r);case 253:return function(e){Ue(e)}(r);case 254:case 255:return Ge(r);case 256:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Nt("interface"),Ot(),be(e.name),bt(e,e.typeParameters),Et(e,e.heritageClauses,512),Ot(),Ct("{"),Et(e,e.members,129),Ct("}")}(r);case 257:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Nt("type"),Ot(),be(e.name),bt(e,e.typeParameters),Ot(),Ct("="),Ot(),be(e.type),At()}(r);case 258:return function(e){pt(e,e.modifiers),Nt("enum"),Ot(),be(e.name),Ot(),Ct("{"),Et(e,e.members,145),Ct("}")}(r);case 259:return function(e){pt(e,e.modifiers),1024&~e.flags&&(Nt(16&e.flags?"namespace":"module"),Ot());be(e.name);var t=e.body;if(!t)return At();for(;259===t.kind;)Ct("."),be(t.name),t=t.body;Ot(),be(t)}(r);case 260:return function(t){ir(t),e.forEach(t.statements,sr),Me(t,er(t)),ar(t)}(r);case 261:return function(e){ze(18,e.pos,Ct,e),Et(e,e.clauses,129),ze(19,e.clauses.end,Ct,e,!0)}(r);case 262:return function(e){var t=ze(93,e.pos,Nt,e);Ot(),t=ze(127,t,Nt,e),Ot(),t=ze(141,t,Nt,e),Ot(),be(e.name),At()}(r);case 263:return function(e){pt(e,e.modifiers),ze(100,e.modifiers?e.modifiers.end:e.pos,Nt,e),Ot(),e.isTypeOnly&&(ze(150,e.pos,Nt,e),Ot());be(e.name),Ot(),ze(62,e.name.end,Ct,e),Ot(),function(e){78===e.kind?xe(e):be(e)}(e.moduleReference),At()}(r);case 264:return function(e){pt(e,e.modifiers),ze(100,e.modifiers?e.modifiers.end:e.pos,Nt,e),Ot(),e.importClause&&(be(e.importClause),Ot(),ze(154,e.importClause.end,Nt,e),Ot());xe(e.moduleSpecifier),At()}(r);case 265:return function(e){e.isTypeOnly&&(ze(150,e.pos,Nt,e),Ot());be(e.name),e.name&&e.namedBindings&&(ze(27,e.name.end,Ct,e),Ot());be(e.namedBindings)}(r);case 266:return function(e){var t=ze(41,e.pos,Ct,e);Ot(),ze(127,t,Nt,e),Ot(),be(e.name)}(r);case 272:return function(e){var t=ze(41,e.pos,Ct,e);Ot(),ze(127,t,Nt,e),Ot(),be(e.name)}(r);case 267:case 271:return function(e){Ye(e)}(r);case 268:case 273:return function(e){Xe(e)}(r);case 269:return function(e){var t=ze(93,e.pos,Nt,e);Ot(),e.isExportEquals?ze(62,t,Pt,e):ze(88,t,Nt,e);Ot(),xe(e.expression),At()}(r);case 270:return function(e){var t=ze(93,e.pos,Nt,e);Ot(),e.isTypeOnly&&(t=ze(150,t,Nt,e),Ot());e.exportClause?be(e.exportClause):t=ze(41,t,Ct,e);if(e.moduleSpecifier){Ot(),ze(154,e.exportClause?e.exportClause.end:t,Nt,e),Ot(),xe(e.moduleSpecifier)}At()}(r);case 274:return;case 275:return function(e){Nt("require"),Ct("("),xe(e.expression),Ct(")")}(r);case 11:return function(e){m.writeLiteral(e.text)}(r);case 278:case 281:return function(t){if(Ct("<"),e.isJsxOpeningElement(t)){var r=Yt(t.tagName,t);Qe(t.tagName),vt(t,t.typeArguments),t.attributes.properties&&t.attributes.properties.length>0&&Ot(),be(t.attributes),Xt(t.attributes,t),Ht(r)}Ct(">")}(r);case 279:case 282:return function(t){Ct("</"),e.isJsxClosingElement(t)&&Qe(t.tagName);Ct(">")}(r);case 283:return function(e){be(e.name),function(e,t,r,n){r&&(t(e),n(r))}("=",Ct,e.initializer,Ee)}(r);case 284:return function(e){Et(e,e.properties,262656)}(r);case 285:return function(e){Ct("{..."),xe(e.expression),Ct("}")}(r);case 286:return function(t){var r;if(t.expression||!Q&&!e.nodeIsSynthesized(t)&&function(t){return function(t){var r=!1;return e.forEachTrailingCommentRange((null==i?void 0:i.text)||"",t+1,(function(){return r=!0})),r}(t)||function(t){var r=!1;return e.forEachLeadingCommentRange((null==i?void 0:i.text)||"",t+1,(function(){return r=!0})),r}(t)}(t.pos)){var n=i&&!e.nodeIsSynthesized(t)&&e.getLineAndCharacterOfPosition(i,t.pos).line!==e.getLineAndCharacterOfPosition(i,t.end).line;n&&m.increaseIndent();var a=ze(18,t.pos,Ct,t);be(t.dotDotDotToken),xe(t.expression),ze(19,(null===(r=t.expression)||void 0===r?void 0:r.end)||a,Ct,t),n&&m.decreaseIndent()}}(r);case 287:return function(e){ze(81,e.pos,Nt,e),Ot(),xe(e.expression),Ze(e,e.statements,e.expression.end)}(r);case 288:return function(e){var t=ze(88,e.pos,Nt,e);Ze(e,e.statements,t)}(r);case 289:return function(e){Ot(),Ut(e.token,Nt),Ot(),Et(e,e.types,528)}(r);case 290:return function(e){var t=ze(82,e.pos,Nt,e);Ot(),e.variableDeclaration&&(ze(20,t,Ct,e),be(e.variableDeclaration),ze(21,e.variableDeclaration.end,Ct,e),Ot());be(e.block)}(r);case 291:return function(t){be(t.name),Ct(":"),Ot();var r=t.initializer;if(0==(512&e.getEmitFlags(r))){Ar(e.getCommentRange(r).pos)}xe(r)}(r);case 292:return function(e){be(e.name),e.objectAssignmentInitializer&&(Ot(),Ct("="),Ot(),xe(e.objectAssignmentInitializer))}(r);case 293:return function(e){e.expression&&(ze(25,e.pos,Ct,e),xe(e.expression))}(r);case 294:return function(e){be(e.name),mt(e.initializer,e.name.end,e)}(r);case 329:case 336:return function(e){rt(e.tagName),it(e.typeExpression),Ot(),e.isBracketed&&Ct("[");be(e.name),e.isBracketed&&Ct("]");nt(e.comment)}(r);case 330:case 332:case 331:case 328:return rt((n=r).tagName),it(n.typeExpression),void nt(n.comment);case 319:case 318:return function(e){rt(e.tagName),Ot(),Ct("{"),be(e.class),Ct("}"),nt(e.comment)}(r);case 333:return function(e){rt(e.tagName),it(e.constraint),Ot(),Et(e,e.typeParameters,528),nt(e.comment)}(r);case 334:return function(e){rt(e.tagName),e.typeExpression&&(304===e.typeExpression.kind?it(e.typeExpression):(Ot(),Ct("{"),B("Object"),e.typeExpression.isArrayType&&(Ct("["),Ct("]")),Ct("}")));e.fullName&&(Ot(),be(e.fullName));nt(e.comment),e.typeExpression&&315===e.typeExpression.kind&&et(e.typeExpression)}(r);case 327:return function(e){rt(e.tagName),e.name&&(Ot(),be(e.name));nt(e.comment),tt(e.typeExpression)}(r);case 316:return tt(r);case 315:return et(r);case 322:case 317:return function(e){rt(e.tagName),nt(e.comment)}(r);case 335:return function(e){rt(e.tagName),be(e.name),nt(e.comment)}(r);case 305:return function(e){Ot(),Ct("{"),be(e.name),Ct("}")}(r);case 314:return function(e){if(B("/**"),e.comment)for(var t=0,r=e.comment.split(/\r\n?|\n/g);t<r.length;t++){var n=r[t];Mt(),Ot(),Ct("*"),Ot(),B(n)}e.tags&&(1!==e.tags.length||332!==e.tags[0].kind||e.comment?Et(e,e.tags,33):(Ot(),be(e.tags[0])));Ot(),B("*/")}(r)}if(e.isExpression(r))t=1,A!==e.noEmitSubstitution&&(E=r=A(t,r));else if(e.isToken(r))return zt(r,Ct)}var n,a,o,s;if(1===t)switch(r.kind){case 8:case 9:return function(e){Ie(e,!1)}(r);case 10:case 13:case 14:return Ie(r,!1);case 78:return Oe(r);case 95:case 104:case 106:case 110:case 108:case 100:return void zt(r,Nt);case 200:return function(e){var t=e.elements,r=e.multiLine?65536:0;St(e,t,8914|r)}(r);case 201:return function(t){e.forEach(t.properties,cr);var r=65536&e.getEmitFlags(t);r&&Lt();var n=t.multiLine?65536:0,a=i.languageVersion>=1&&!e.isJsonSourceFile(i)?64:0;Et(t,t.properties,526226|a|n),r&&jt()}(r);case 202:return function(t){var r=e.cast(xe(t.expression),e.isExpression),n=t.questionDotToken||e.setTextRangePosEnd(e.factory.createToken(24),t.expression.end,t.name.pos),i=Zt(t,t.expression,n),a=Zt(t,n,t.name);Vt(i,!1),28===n.kind||!function(t){if(t=e.skipPartiallyEmittedExpressions(t),e.isNumericLiteral(t)){var r=nr(t,!0,!1);return!t.numericLiteralFlags&&!e.stringContains(r,e.tokenToString(24))}if(e.isAccessExpression(t)){var n=e.getConstantValue(t);return"number"==typeof n&&isFinite(n)&&Math.floor(n)===n}}(r)||m.hasTrailingComment()||m.hasTrailingWhitespace()||Ct(".");t.questionDotToken?be(n):ze(n.kind,t.expression.end,Ct,t);Vt(a,!1),be(t.name),Ht(i,a)}(r);case 203:return function(e){xe(e.expression),be(e.questionDotToken),ze(22,e.expression.end,Ct,e),xe(e.argumentExpression),ze(23,e.argumentExpression.end,Ct,e)}(r);case 204:return function(e){xe(e.expression),be(e.questionDotToken),vt(e,e.typeArguments),St(e,e.arguments,2576)}(r);case 205:return function(e){ze(103,e.pos,Nt,e),Ot(),xe(e.expression),vt(e,e.typeArguments),St(e,e.arguments,18960)}(r);case 206:return function(e){xe(e.tag),vt(e,e.typeArguments),Ot(),xe(e.template)}(r);case 207:return function(e){Ct("<"),be(e.type),Ct(">"),xe(e.expression)}(r);case 208:return function(e){var t=ze(20,e.pos,Ct,e),r=Yt(e.expression,e);xe(e.expression),Xt(e.expression,e),Ht(r),ze(21,e.expression?e.expression.end:t,Ct,e)}(r);case 209:return function(e){lr(e.name),Ue(e)}(r);case 210:return function(e){yt(e,e.decorators),pt(e,e.modifiers),Je(e,Re)}(r);case 212:return function(e){ze(89,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 213:return function(e){ze(112,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 214:return function(e){ze(114,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 215:return function(e){ze(131,e.pos,Nt,e),Ot(),xe(e.expression)}(r);case 216:return function(e){Ut(e.operator,Pt),function(e){var t=e.operand;return 216===t.kind&&(39===e.operator&&(39===t.operator||45===t.operator)||40===e.operator&&(40===t.operator||46===t.operator))}(e)&&Ot();xe(e.operand)}(r);case 217:return function(e){xe(e.operand),Ut(e.operator,Pt)}(r);case 218:return function(t){var r=[t],n=[0],i=0;for(;i>=0;)switch(t=r[i],n[i]){case 0:c(t.left);break;case 1:var a=27!==t.operatorToken.kind,o=Zt(t,t.left,t.operatorToken),s=Zt(t,t.operatorToken,t.right);Vt(o,a),Tr(t.operatorToken.pos),zt(t.operatorToken,101===t.operatorToken.kind?Nt:Pt),Ar(t.operatorToken.end,!0),Vt(s,!0),c(t.right);break;case 2:Ht(o=Zt(t,t.left,t.operatorToken),s=Zt(t,t.operatorToken,t.right)),i--;break;default:return e.Debug.fail("Invalid state "+n[i]+" for emitBinaryExpressionWorker")}function c(t){n[i]++;var a=x,o=E;x=t,E=void 0;var s=De(0,1,t);s===Ce&&e.isBinaryExpression(t)?(i++,n[i]=0,r[i]=t):s(1,t),e.Debug.assert(x===t),x=a,E=o}}(r);case 219:return function(e){var t=Zt(e,e.condition,e.questionToken),r=Zt(e,e.questionToken,e.whenTrue),n=Zt(e,e.whenTrue,e.colonToken),i=Zt(e,e.colonToken,e.whenFalse);xe(e.condition),Vt(t,!0),be(e.questionToken),Vt(r,!0),xe(e.whenTrue),Ht(t,r),Vt(n,!0),be(e.colonToken),Vt(i,!0),xe(e.whenFalse),Ht(n,i)}(r);case 220:return function(e){be(e.head),Et(e,e.templateSpans,262144)}(r);case 221:return function(e){ze(125,e.pos,Nt,e),be(e.asteriskToken),_t(e.expression)}(r);case 222:return function(e){ze(25,e.pos,Ct,e),xe(e.expression)}(r);case 223:return function(e){lr(e.name),$e(e)}(r);case 224:return;case 226:return function(e){xe(e.expression),e.type&&(Ot(),Nt("as"),Ot(),be(e.type))}(r);case 227:return function(e){xe(e.expression),Pt("!")}(r);case 228:return function(e){Bt(e.keywordToken,e.pos,Ct),Ct("."),be(e.name)}(r);case 276:return function(e){be(e.openingElement),Et(e,e.children,262144),be(e.closingElement)}(r);case 277:return function(e){Ct("<"),Qe(e.tagName),vt(e,e.typeArguments),Ot(),be(e.attributes),Ct("/>")}(r);case 280:return function(e){be(e.openingFragment),Et(e,e.children,262144),be(e.closingFragment)}(r);case 339:return function(e){xe(e.expression)}(r);case 340:return function(e){St(e,e.elements,528)}(r)}}function Ae(t,r){e.Debug.assert(x===r||E===r),we(1,t,r)(t,E),e.Debug.assert(x===r||E===r)}function Ne(r){var n=!1,a=301===r.kind?r:void 0;if(!a||M!==e.ModuleKind.None){for(var o=a?a.prepends.length:0,s=a?a.sourceFiles.length+o:1,c=0;c<s;c++){var l=a?c<o?a.prepends[c]:a.sourceFiles[c-o]:r,u=e.isSourceFile(l)?l:e.isUnparsedSource(l)?void 0:i,d=t.noEmitHelpers||!!u&&e.hasRecordedExternalHelpers(u),p=(e.isSourceFile(l)||e.isUnparsedSource(l))&&!_,f=e.isUnparsedSource(l)?l.helpers:Pe(l);if(f)for(var g=0,h=f;g<h.length;g++){var y=h[g];if(y.scoped){if(a)continue}else{if(d)continue;if(p){if(L.get(y.name))continue;L.set(y.name,!0)}}var v=oe();"string"==typeof y.text?Jt(y.text):Jt(y.text(_r)),z&&z.sections.push({pos:v,end:m.getTextPos(),kind:"emitHelpers",data:y.name}),n=!0}}return n}}function Pe(t){var r=e.getEmitHelpers(t);return r&&e.stableSort(r,e.compareEmitHelpers)}function Ie(r,n){var i,a=nr(r,t.neverAsciiEscape,n);!t.sourceMap&&!t.inlineSourceMap||10!==r.kind&&!e.isTemplateLiteralKind(r.kind)?function(e){m.writeStringLiteral(e)}(a):(i=a,m.writeLiteral(i))}function Fe(e){m.rawWrite(e.parent.text.substring(e.pos,e.end))}function Oe(e){(e.symbol?Tt:B)(rr(e,!1),e.symbol),Et(e,e.typeArguments,53776)}function Re(e){bt(e,e.typeParameters),xt(e,e.parameters),ft(e.type),Ot(),be(e.equalsGreaterThanToken)}function Me(t,r){ze(18,t.pos,Ct,t);var n=r||1&e.getEmitFlags(t)?768:129;Et(t,t.statements,n),ze(19,t.statements.end,Ct,t,!!(1&n))}function Le(e){e?Ct(";"):At()}function je(e,t){var r=ze(115,t,Nt,e);Ot(),ze(20,r,Ct,e),xe(e.expression),ze(21,e.expression.end,Ct,e)}function Be(e){void 0!==e&&(252===e.kind?be(e):xe(e))}function ze(t,r,n,a,o){var s=e.getParseTreeNode(a),c=s&&s.kind===a.kind,l=r;if(c&&i&&(r=e.skipTrivia(i.text,r)),c&&a.pos!==l){var u=o&&i&&!e.positionsAreOnSameLine(l,r,i);u&&Lt(),Tr(l),u&&jt()}if(r=Ut(t,n,r),c&&a.end!==r){var d=286===a.kind;Ar(r,!d,d)}return r}function Ue(e){yt(e,e.decorators),pt(e,e.modifiers),Nt("function"),be(e.asteriskToken),Ot(),ke(e.name),Je(e,Ve)}function qe(e,t){He(t)}function Je(t,r){var n=t.body;if(n)if(e.isBlock(n)){var i=65536&e.getEmitFlags(t);i&&Lt(),ir(t),e.forEach(t.parameters,sr),sr(t.body),r(t),w?w(4,n,qe):He(n),ar(t),i&&jt()}else r(t),Ot(),xe(n);else r(t),At()}function Ve(e){bt(e,e.typeParameters),kt(e,e.parameters),ft(e.type)}function He(t){Ot(),Ct("{"),Lt();var r=function(t){if(1&e.getEmitFlags(t))return!0;if(t.multiLine)return!1;if(!e.nodeIsSynthesized(t)&&!e.rangeIsOnSingleLine(t,i))return!1;if(Kt(t,t.statements,2)||Gt(t,t.statements,2))return!1;for(var r,n=0,a=t.statements;n<a.length;n++){var o=a[n];if(Wt(r,o,2)>0)return!1;r=o}return!0}(t)?Ke:We;kr?kr(t,t.statements,r):r(t),jt(),Bt(19,t.statements.end,Ct,t)}function Ke(e){We(e,!0)}function We(e,t){var r=st(e.statements),n=m.getTextPos();Ne(e),0===r&&n===m.getTextPos()&&t?(jt(),Et(e,e.statements,768),Lt()):Et(e,e.statements,1,r)}function Ge(e){$e(e)}function $e(t){e.forEach(t.members,cr),yt(t,t.decorators),pt(t,t.modifiers),e.isStructDeclaration(t)?Nt("struct"):Nt("class"),t.name&&(Ot(),ke(t.name));var r=65536&e.getEmitFlags(t);r&&Lt(),bt(t,t.typeParameters),Et(t,t.heritageClauses,0),Ot(),Ct("{"),Et(t,t.members,129),Ct("}"),r&&jt()}function Ye(e){Ct("{"),Et(e,e.elements,525136),Ct("}")}function Xe(e){e.propertyName&&(be(e.propertyName),Ot(),ze(127,e.propertyName.end,Nt,e),Ot()),be(e.name)}function Qe(e){78===e.kind?xe(e):be(e)}function Ze(t,r,n){var a=163969;1===r.length&&(e.nodeIsSynthesized(t)||e.nodeIsSynthesized(r[0])||e.rangeStartPositionsAreOnSameLine(t,r[0],i))?(Bt(58,n,Ct,t),Ot(),a&=-130):ze(58,n,Ct,t),Et(t,r,a)}function et(t){Et(t,e.factory.createNodeArray(t.jsDocPropertyTags),33)}function tt(t){t.typeParameters&&Et(t,e.factory.createNodeArray(t.typeParameters),33),t.parameters&&Et(t,e.factory.createNodeArray(t.parameters),33),t.type&&(Mt(),Ot(),Ct("*"),Ot(),be(t.type))}function rt(e){Ct("@"),be(e)}function nt(e){e&&(Ot(),B(e))}function it(e){e&&(Ot(),Ct("{"),be(e.type),Ct("}"))}function at(e,t,r,n){if(e){var a=m.getTextPos();Ft('/// <reference no-default-lib="true"/>'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"no-default-lib"}),Mt()}if(i&&i.moduleName&&(Ft('/// <amd-module name="'+i.moduleName+'" />'),Mt()),i&&i.amdDependencies)for(var o=0,s=i.amdDependencies;o<s.length;o++){var c=s[o];c.name?Ft('/// <amd-dependency name="'+c.name+'" path="'+c.path+'" />'):Ft('/// <amd-dependency path="'+c.path+'" />'),Mt()}for(var l=0,u=t;l<u.length;l++){var d=u[l];a=m.getTextPos();Ft('/// <reference path="'+d.fileName+'" />'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"reference",data:d.fileName}),Mt()}for(var p=0,f=r;p<f.length;p++){d=f[p],a=m.getTextPos();Ft('/// <reference types="'+d.fileName+'" />'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"type",data:d.fileName}),Mt()}for(var g=0,_=n;g<_.length;g++){d=_[g],a=m.getTextPos();Ft('/// <reference lib="'+d.fileName+'" />'),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"lib",data:d.fileName}),Mt()}}function ot(t){var r=t.statements;ir(t),e.forEach(t.statements,sr),Ne(t);var n=e.findIndex(r,(function(t){return!e.isPrologueDirective(t)}));!function(e){e.isDeclarationFile&&at(e.hasNoDefaultLib,e.referencedFiles,e.typeReferenceDirectives,e.libReferenceDirectives)}(t),Et(t,r,1,-1===n?r.length:n),ar(t)}function st(t,r,n,i){for(var a=!!r,o=0;o<t.length;o++){var s=t[o];if(!e.isPrologueDirective(s))return o;if(!n||!n.has(s.expression.text)){a&&(a=!1,_e(r)),Mt();var c=m.getTextPos();be(s),i&&z&&z.sections.push({pos:c,end:m.getTextPos(),kind:"prologue",data:s.expression.text}),n&&n.add(s.expression.text)}}return t.length}function ct(e,t){for(var r=0,n=e;r<n.length;r++){var i=n[r];if(!t.has(i.data)){Mt();var a=m.getTextPos();be(i),z&&z.sections.push({pos:a,end:m.getTextPos(),kind:"prologue",data:i.data}),t&&t.add(i.data)}}}function lt(t){if(e.isSourceFile(t))st(t.statements,t);else{for(var r=new e.Set,n=0,i=t.prepends;n<i.length;n++){ct(i[n].prologues,r)}for(var a=0,o=t.sourceFiles;a<o.length;a++){var s=o[a];st(s.statements,s,r,!0)}_e(void 0)}}function ut(t){if(e.isSourceFile(t)||e.isUnparsedSource(t)){var r=e.getShebang(t.text);if(r)return Ft(r),Mt(),!0}else{for(var n=0,i=t.prepends;n<i.length;n++){var a=i[n];if(e.Debug.assertNode(a,e.isUnparsedSource),ut(a))return!0}for(var o=0,s=t.sourceFiles;o<s.length;o++){if(ut(s[o]))return!0}}}function dt(e,t){if(e){var r=B;B=t,be(e),B=r}}function pt(e,t){t&&t.length&&(Et(e,t,262656),Ot())}function ft(e){e&&(Ct(":"),Ot(),be(e))}function mt(e,t,r){e&&(Ot(),ze(62,t,Pt,r),Ot(),xe(e))}function gt(e){e&&(Ot(),be(e))}function _t(e){e&&(Ot(),xe(e))}function ht(t,r){e.isBlock(r)||1&e.getEmitFlags(t)?(Ot(),be(r)):(Mt(),Lt(),e.isEmptyStatement(r)?Se(5,r):be(r),jt())}function yt(e,t){Et(e,t,2146305)}function vt(e,t){Et(e,t,53776)}function bt(t,r){if(e.isFunctionLike(t)&&t.typeArguments)return vt(t,t.typeArguments);Et(t,r,53776)}function kt(e,t){Et(e,t,2576)}function xt(t,r){!function(t,r){var n=e.singleOrUndefined(r);return n&&n.pos===t.pos&&e.isArrowFunction(t)&&!t.type&&!e.some(t.decorators)&&!e.some(t.modifiers)&&!e.some(t.typeParameters)&&!e.some(n.decorators)&&!e.some(n.modifiers)&&!n.dotDotDotToken&&!n.questionToken&&!n.type&&!n.initializer&&e.isIdentifier(n.name)}(t,r)?kt(t,r):Et(t,r,528)}function Et(e,t,r,n,i){wt(be,e,t,r,n,i)}function St(e,t,r,n,i){wt(xe,e,t,r,n,i)}function Dt(e){switch(60&e){case 0:break;case 16:Ct(",");break;case 4:Ot(),Ct("|");break;case 32:Ot(),Ct("*"),Ot();break;case 8:Ot(),Ct("&")}}function wt(t,r,a,o,s,c){void 0===s&&(s=0),void 0===c&&(c=a?a.length-s:0);var l=void 0===a;if(!(l&&16384&o)){var u=void 0===a||s>=a.length||0===c;if(u&&32768&o)return N&&N(a),void(P&&P(a));if(15360&o&&(Ct(function(e){return n[15360&e][0]}(o)),u&&!l&&Ar(a.pos,!0)),N&&N(a),u)!(1&o)||j&&e.rangeIsOnSingleLine(r,i)?256&o&&!(524288&o)&&Ot():Mt();else{var d=0==(262144&o),p=d,m=Kt(r,a,o);m?(Mt(m),p=!1):256&o&&Ot(),128&o&&Lt();for(var g=void 0,_=void 0,h=!1,y=0;y<c;y++){var v=a[s+y];if(32&o)Mt(),Dt(o);else if(g){60&o&&g.end!==r.end&&Tr(g.end),Dt(o),le(_);var b=Wt(g,v,o);b>0?(0==(131&o)&&(Lt(),h=!0),Mt(b),p=!1):g&&512&o&&Ot()}if(_=ce(v),p){if(Ar)Ar(e.getCommentRange(v).pos)}else p=d;f=v.pos,t(v),h&&(jt(),h=!1),g=v}var k=g?e.getEmitFlags(g):0,x=Q||!!(1024&k),E=(null==a?void 0:a.hasTrailingComma)&&64&o&&16&o;E&&(g&&!x?ze(27,g.end,Ct,g):Ct(",")),g&&r.end!==g.end&&60&o&&!x&&Tr(E&&(null==a?void 0:a.end)?a.end:g.end),128&o&&jt(),le(_);var S=Gt(r,a,o);S?Mt(S):2097408&o&&Ot()}P&&P(a),15360&o&&(u&&!l&&Tr(a.end),Ct(function(e){return n[15360&e][1]}(o)))}}function Tt(e,t){m.writeSymbol(e,t)}function Ct(e){m.writePunctuation(e)}function At(){m.writeTrailingSemicolon(";")}function Nt(e){m.writeKeyword(e)}function Pt(e){m.writeOperator(e)}function It(e){m.writeParameter(e)}function Ft(e){m.writeComment(e)}function Ot(){m.writeSpace(" ")}function Rt(e){m.writeProperty(e)}function Mt(e){void 0===e&&(e=1);for(var t=0;t<e;t++)m.writeLine(t>0)}function Lt(){m.increaseIndent()}function jt(){m.decreaseIndent()}function Bt(t,r,n,i){return H?Ut(t,n,r):function(t,r,n,i,a){if(H||t&&e.isInJsonFile(t))return a(r,n,i);var o=t&&t.emitNode,s=o&&o.flags||0,c=o&&o.tokenSourceMapRanges&&o.tokenSourceMapRanges[r],l=c&&c.source||y;i=Lr(l,c?c.pos:i),0==(128&s)&&i>=0&&Br(l,i);i=a(r,n,i),c&&(i=c.end);0==(256&s)&&i>=0&&Br(l,i);return i}(i,t,n,r,Ut)}function zt(t,r){I&&I(t),r(e.tokenToString(t.kind)),F&&F(t)}function Ut(t,r,n){var i=e.tokenToString(t);return r(i),n<0?n:n+i.length}function qt(t,r,n){if(1&e.getEmitFlags(t))Ot();else if(j){var i=Zt(t,r,n);i?Mt(i):Ot()}else Mt()}function Jt(t){for(var r=t.split(/\r\n?|\n/g),n=e.guessIndentation(r),i=0,a=r;i<a.length;i++){var o=a[i],s=n?o.slice(n):o;s.length&&(Mt(),B(s))}}function Vt(e,t){e?(Lt(),Mt(e)):t&&Ot()}function Ht(e,t){e&&jt(),t&&jt()}function Kt(t,r,n){if(2&n||j){if(65536&n)return 1;var a=r[0];if(void 0===a)return e.rangeIsOnSingleLine(t,i)?0:1;if(a.pos===f)return 0;if(11===a.kind)return 0;if(!(e.positionIsSynthesized(t.pos)||e.nodeIsSynthesized(a)||a.parent&&e.getOriginalNode(a.parent)!==e.getOriginalNode(t)))return j?$t((function(r){return e.getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter(a.pos,t.pos,i,r)})):e.rangeStartPositionsAreOnSameLine(t,a,i)?0:1;if(Qt(a,n))return 1}return 1&n?1:0}function Wt(t,r,n){if(2&n||j){if(void 0===t||void 0===r)return 0;if(11===r.kind)return 0;if(!e.nodeIsSynthesized(t)&&!e.nodeIsSynthesized(r)&&t.parent===r.parent)return j?$t((function(n){return e.getLinesBetweenRangeEndAndRangeStart(t,r,i,n)})):e.rangeEndIsOnSameLineAsRangeStart(t,r,i)?0:1;if(Qt(t,n)||Qt(r,n))return 1}else if(e.getStartsOnNewLine(r))return 1;return 1&n?1:0}function Gt(t,r,n){if(2&n||j){if(65536&n)return 1;var a=e.lastOrUndefined(r);if(void 0===a)return e.rangeIsOnSingleLine(t,i)?0:1;if(!(e.positionIsSynthesized(t.pos)||e.nodeIsSynthesized(a)||a.parent&&a.parent!==t)){if(j){var o=e.isNodeArray(r)&&!e.positionIsSynthesized(r.end)?r.end:a.end;return $t((function(r){return e.getLinesBetweenPositionAndNextNonWhitespaceCharacter(o,t.end,i,r)}))}return e.rangeEndPositionsAreOnSameLine(t,a,i)?0:1}if(Qt(a,n))return 1}return 1&n&&!(131072&n)?1:0}function $t(t){e.Debug.assert(!!j);var r=t(!0);return 0===r?t(!1):r}function Yt(e,t){var r=j&&Kt(t,[e],0);return r&&Vt(r,!1),!!r}function Xt(e,t){var r=j&&Gt(t,[e],0);r&&Mt(r)}function Qt(t,r){if(e.nodeIsSynthesized(t)){var n=e.getStartsOnNewLine(t);return void 0===n?0!=(65536&r):n}return 0!=(65536&r)}function Zt(t,r,n){return 131072&e.getEmitFlags(t)?0:(t=tr(t),r=tr(r),n=tr(n),e.getStartsOnNewLine(n)?1:e.nodeIsSynthesized(t)||e.nodeIsSynthesized(r)||e.nodeIsSynthesized(n)?0:j?$t((function(t){return e.getLinesBetweenRangeEndAndRangeStart(r,n,i,t)})):e.rangeEndIsOnSameLineAsRangeStart(r,n,i)?0:1)}function er(t){return 0===t.statements.length&&e.rangeEndIsOnSameLineAsRangeStart(t,t,i)}function tr(t){for(;208===t.kind&&e.nodeIsSynthesized(t);)t=t.expression;return t}function rr(t,r){return e.isGeneratedIdentifier(t)?ur(t):(e.isIdentifier(t)||e.isPrivateIdentifier(t))&&(e.nodeIsSynthesized(t)||!t.parent||!i||t.parent&&i&&e.getSourceFileOfNode(t)!==e.getOriginalNode(i))?e.idText(t):10===t.kind&&t.textSourceNode?rr(t.textSourceNode,r):!e.isLiteralExpression(t)||!e.nodeIsSynthesized(t)&&t.parent?e.getSourceTextOfNodeFromSourceFile(i,t,r):t.text}function nr(r,n,a){if(10===r.kind&&r.textSourceNode){var o=r.textSourceNode;if(e.isIdentifier(o)||e.isNumericLiteral(o)){var s=e.isNumericLiteral(o)?o.text:rr(o);return a?'"'+e.escapeJsxAttributeString(s)+'"':n||16777216&e.getEmitFlags(r)?'"'+e.escapeString(s)+'"':'"'+e.escapeNonAsciiString(s)+'"'}return nr(o,n,a)}var c=(n?1:0)|(a?2:0)|(t.terminateUnterminatedLiterals?4:0)|(t.target&&99===t.target?8:0);return e.getLiteralText(r,i,c)}function ir(t){t&&524288&e.getEmitFlags(t)||(l.push(u),u=0,d.push(p))}function ar(t){t&&524288&e.getEmitFlags(t)||(u=l.pop(),p=d.pop())}function or(t){p&&p!==e.lastOrUndefined(d)||(p=new e.Set),p.add(t)}function sr(t){if(t)switch(t.kind){case 232:case 287:case 288:e.forEach(t.statements,sr);break;case 247:case 245:case 237:case 238:sr(t.statement);break;case 236:sr(t.thenStatement),sr(t.elseStatement);break;case 239:case 241:case 240:sr(t.initializer),sr(t.statement);break;case 246:sr(t.caseBlock);break;case 261:e.forEach(t.clauses,sr);break;case 249:sr(t.tryBlock),sr(t.catchClause),sr(t.finallyBlock);break;case 290:sr(t.variableDeclaration),sr(t.block);break;case 234:sr(t.declarationList);break;case 252:e.forEach(t.declarations,sr);break;case 251:case 161:case 199:case 254:case 266:case 272:lr(t.name);break;case 253:lr(t.name),524288&e.getEmitFlags(t)&&(e.forEach(t.parameters,sr),sr(t.body));break;case 197:case 198:case 267:e.forEach(t.elements,sr);break;case 264:sr(t.importClause);break;case 265:lr(t.name),sr(t.namedBindings);break;case 268:lr(t.propertyName||t.name)}}function cr(e){if(e)switch(e.kind){case 291:case 292:case 164:case 166:case 168:case 169:lr(e.name)}}function lr(t){t&&(e.isGeneratedIdentifier(t)?ur(t):e.isBindingPattern(t)&&sr(t))}function ur(t){if(4==(7&t.autoGenerateFlags))return dr(function(t){var r=t.autoGenerateId,n=t,i=n.original;for(;i&&(n=i,!(e.isIdentifier(n)&&4&n.autoGenerateFlags&&n.autoGenerateId!==r));)i=n.original;return n}(t),t.autoGenerateFlags);var r=t.autoGenerateId;return s[r]||(s[r]=function(t){switch(7&t.autoGenerateFlags){case 1:return mr(0,!!(8&t.autoGenerateFlags));case 2:return mr(268435456,!!(8&t.autoGenerateFlags));case 3:return gr(e.idText(t),32&t.autoGenerateFlags?fr:pr,!!(16&t.autoGenerateFlags),!!(8&t.autoGenerateFlags))}return e.Debug.fail("Unsupported GeneratedIdentifierKind.")}(t))}function dr(t,r){var n=e.getNodeId(t);return o[n]||(o[n]=function(t,r){switch(t.kind){case 78:return gr(rr(t),pr,!!(16&r),!!(8&r));case 259:case 258:return function(t){var r=rr(t.name);return function(t,r){for(var n=r;e.isNodeDescendantOf(n,r);n=n.nextContainer)if(n.locals){var i=n.locals.get(e.escapeLeadingUnderscores(t));if(i&&3257279&i.flags)return!1}return!0}(r,t)?r:gr(r)}(t);case 264:case 270:return function(t){var r=e.getExternalModuleName(t);return gr(e.isStringLiteral(r)?e.makeIdentifierFromModuleName(r.text):"module")}(t);case 253:case 254:case 269:return gr("default");case 223:return gr("class");case 166:case 168:case 169:return function(t){if(e.isIdentifier(t.name))return dr(t.name);return mr(0)}(t);case 159:return mr(0,!0);default:return mr(0)}}(t,r))}function pr(e){return fr(e)&&!c.has(e)&&!(p&&p.has(e))}function fr(t){return!i||e.isFileLevelUniqueName(i,t,S)}function mr(e,t){if(e&&!(u&e)&&pr(r=268435456===e?"_i":"_n"))return u|=e,t&&or(r),r;for(;;){var r,n=268435455&u;if(u++,8!==n&&13!==n)if(pr(r=n<26?"_"+String.fromCharCode(97+n):"_"+(n-26)))return t&&or(r),r}}function gr(e,t,r,n){if(void 0===t&&(t=pr),r&&t(e))return n?or(e):c.add(e),e;95!==e.charCodeAt(e.length-1)&&(e+="_");for(var i=1;;){var a=e+i;if(t(a))return n?or(a):c.add(a),a;i++}}function _r(e){return gr(e,fr,!0)}function hr(t,r){e.Debug.assert(x===r||E===r),ee(),X=!1;var n=e.getEmitFlags(r),i=e.getCommentRange(r),a=i.pos,o=i.end,s=338!==r.kind,c=a<0||0!=(512&n)||11===r.kind,l=o<0||0!=(1024&n)||11===r.kind,u=G,d=$,p=Y;(a>0||o>0)&&a!==o&&(c||xr(a,s),(!c||a>=0&&0!=(512&n))&&(G=a),(!l||o>=0&&0!=(1024&n))&&($=o,252===r.kind&&(Y=o))),e.forEach(e.getSyntheticLeadingComments(r),yr),te();var f=we(2,t,r);2048&n?(Q=!0,f(t,r),Q=!1):f(t,r),ee(),e.forEach(e.getSyntheticTrailingComments(r),vr),(a>0||o>0)&&a!==o&&(G=u,$=d,Y=p,!l&&s&&function(e){Fr(e,Cr)}(o)),te(),e.Debug.assert(x===r||E===r)}function yr(e){(e.hasLeadingNewline||2===e.kind)&&m.writeLine(),br(e),e.hasTrailingNewLine||2===e.kind?m.writeLine():m.writeSpace(" ")}function vr(e){m.isAtStartOfLine()||m.writeSpace(" "),br(e),e.hasTrailingNewLine&&m.writeLine()}function br(t){var r=function(e){return 3===e.kind?"/*"+e.text+"*/":"//"+e.text}(t),n=3===t.kind?e.computeLineStarts(r):void 0;e.writeCommentRange(r,n,m,0,r.length,R)}function kr(t,r,n){ee();var a,o,s=r.pos,c=r.end,l=e.getEmitFlags(t),u=Q||c<0||0!=(1024&l);s<0||0!=(512&l)||(a=r,(o=e.emitDetachedComments(i.text,ve(),m,Or,a,R,Q))&&(k?k.push(o):k=[o])),te(),2048&l&&!Q?(Q=!0,n(t),Q=!1):n(t),ee(),u||(xr(r.end,!0),X&&!m.isAtStartOfLine()&&m.writeLine()),te()}function xr(e,t){X=!1,t?0===e&&(null==i?void 0:i.isDeclarationFile)?Ir(e,Sr):Ir(e,wr):0===e&&Ir(e,Er)}function Er(e,t,r,n,i){Rr(e,t)&&wr(e,t,r,n,i)}function Sr(e,t,r,n,i){Rr(e,t)||wr(e,t,r,n,i)}function Dr(r,n){return!t.onlyPrintJsDocStyle||(e.isJSDocLikeText(r,n)||e.isPinnedComment(r,n))}function wr(t,r,n,a,o){Dr(i.text,t)&&(X||(e.emitNewLineBeforeLeadingCommentOfPosition(ve(),m,o,t),X=!0),jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),a?m.writeLine():3===n&&m.writeSpace(" "))}function Tr(e){Q||-1===e||xr(e,!0)}function Cr(t,r,n,a){Dr(i.text,t)&&(m.isAtStartOfLine()||m.writeSpace(" "),jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),a&&m.writeLine())}function Ar(e,t,r){Q||(ee(),Fr(e,t?Cr:r?Nr:Pr),te())}function Nr(t,r,n){jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),2===n&&m.writeLine()}function Pr(t,r,n,a){jr(t),e.writeCommentRange(i.text,ve(),m,t,r,R),jr(r),a?m.writeLine():m.writeSpace(" ")}function Ir(t,r){!i||-1!==G&&t===G||(function(t){return void 0!==k&&e.last(k).nodePos===t}(t)?function(t){var r=e.last(k).detachedCommentEndPos;k.length-1?k.pop():k=void 0;e.forEachLeadingCommentRange(i.text,r,t,r)}(r):e.forEachLeadingCommentRange(i.text,t,r,t))}function Fr(t,r){i&&(-1===$||t!==$&&t!==Y)&&e.forEachTrailingCommentRange(i.text,t,r)}function Or(t,r,n,a,o,s){Dr(i.text,a)&&(jr(a),e.writeCommentRange(t,r,n,a,o,s),jr(o))}function Rr(t,r){return e.isRecognizedTripleSlashComment(i.text,t,r)}function Mr(t,r){e.Debug.assert(x===r||E===r);var n=we(3,t,r);if(e.isUnparsedSource(r)||e.isUnparsedPrepend(r))n(t,r);else if(e.isUnparsedNode(r)){var i=function(t){return void 0===t.parsedSourceMap&&void 0!==t.sourceMapText&&(t.parsedSourceMap=e.tryParseRawSourceMap(t.sourceMapText)||!1),t.parsedSourceMap||void 0}(r.parent);i&&h&&h.appendSourceMap(m.getLine(),m.getColumn(),i,r.parent.sourceMapPath,r.parent.getLineAndCharacterOfPosition(r.pos),r.parent.getLineAndCharacterOfPosition(r.end)),n(t,r)}else{var a=e.getSourceMapRange(r),o=a.pos,s=a.end,c=a.source,l=void 0===c?y:c,u=e.getEmitFlags(r);338!==r.kind&&0==(16&u)&&o>=0&&Br(l,Lr(l,o)),64&u?(H=!0,n(t,r),H=!1):n(t,r),338!==r.kind&&0==(32&u)&&s>=0&&Br(l,s)}e.Debug.assert(x===r||E===r)}function Lr(t,r){return t.skipTrivia?t.skipTrivia(r):e.skipTrivia(t.text,r)}function jr(t){if(!(H||e.positionIsSynthesized(t)||Ur(y))){var r=e.getLineAndCharacterOfPosition(y,t),n=r.line,i=r.character;h.addMapping(m.getLine(),m.getColumn(),K,n,i,void 0)}}function Br(e,t){if(e!==y){var r=y,n=K;zr(e),jr(t),function(e,t){y=e,K=t}(r,n)}else jr(t)}function zr(e){H||(y=e,e!==v?Ur(e)||(K=h.addSource(e.fileName),t.inlineSources&&h.setSourceContent(K,e.text),v=e,W=K):K=W)}function Ur(t){return e.fileExtensionIs(t.fileName,".json")}}e.isBuildInfoFile=function(t){return e.fileExtensionIs(t,".tsbuildinfo")},e.forEachEmittedFile=o,e.getTsBuildInfoEmitOutputFilePath=s,e.getOutputPathsForBundle=c,e.getOutputPathsFor=l,e.getOutputExtension=d,e.getOutputDeclarationFileName=f,e.getCommonSourceDirectory=y,e.getCommonSourceDirectoryOfConfig=v,e.getAllProjectOutputs=function(t,r){var n=g(),i=n.addOutput,a=n.getOutputs;if(e.outFile(t.options))_(t,i);else{for(var o=e.memoize((function(){return v(t,r)})),c=0,l=t.fileNames;c<l.length;c++){var u=l[c];h(t,u,r,i,o)}i(s(t.options))}return a()},e.getOutputFileNames=function(t,r,n){r=e.normalizePath(r),e.Debug.assert(e.contains(t.fileNames,r),"Expected fileName to be present in command line");var i=g(),a=i.addOutput,o=i.getOutputs;return e.outFile(t.options)?_(t,a):h(t,r,n,a),o()},e.getFirstProjectOutput=function(t,r){if(e.outFile(t.options)){var n=c(t.options,!1).jsFilePath;return e.Debug.checkDefined(n,"project "+t.options.configFilePath+" expected to have at least one output")}for(var i=e.memoize((function(){return v(t,r)})),a=0,o=t.fileNames;a<o.length;a++){var l=o[a];if(!e.isDeclarationFileName(l)){if(n=m(l,t,r,i))return n;if(!e.fileExtensionIs(l,".json")&&e.getEmitDeclarations(t.options))return f(l,t,r,i)}}var u=s(t.options);return u||e.Debug.fail("project "+t.options.configFilePath+" expected to have at least one output")},e.emitFiles=b,e.getBuildInfoText=k,e.getBuildInfo=x,e.notImplementedResolver={hasGlobalName:e.notImplemented,getReferencedExportContainer:e.notImplemented,getReferencedImportDeclaration:e.notImplemented,getReferencedDeclarationWithCollidingName:e.notImplemented,isDeclarationWithCollidingName:e.notImplemented,isValueAliasDeclaration:e.notImplemented,isReferencedAliasDeclaration:e.notImplemented,isReferenced:e.notImplemented,isTopLevelValueImportEqualsWithEntityName:e.notImplemented,getNodeCheckFlags:e.notImplemented,isDeclarationVisible:e.notImplemented,isLateBound:function(e){return!1},collectLinkedAliases:e.notImplemented,isImplementationOfOverload:e.notImplemented,isRequiredInitializedParameter:e.notImplemented,isOptionalUninitializedParameterProperty:e.notImplemented,isExpandoFunctionDeclaration:e.notImplemented,getPropertiesOfContainerFunction:e.notImplemented,createTypeOfDeclaration:e.notImplemented,createReturnTypeOfSignatureDeclaration:e.notImplemented,createTypeOfExpression:e.notImplemented,createLiteralConstValue:e.notImplemented,isSymbolAccessible:e.notImplemented,isEntityNameVisible:e.notImplemented,getConstantValue:e.notImplemented,getReferencedValueDeclaration:e.notImplemented,getTypeReferenceSerializationKind:e.notImplemented,isOptionalParameter:e.notImplemented,moduleExportsSomeValue:e.notImplemented,isArgumentsLocalBinding:e.notImplemented,getExternalModuleFileFromDeclaration:e.notImplemented,getTypeReferenceDirectivesForEntityName:e.notImplemented,getTypeReferenceDirectivesForSymbol:e.notImplemented,isLiteralConstDeclaration:e.notImplemented,getJsxFactoryEntity:e.notImplemented,getJsxFragmentFactoryEntity:e.notImplemented,getAllAccessorDeclarations:e.notImplemented,getSymbolOfExternalModuleSpecifier:e.notImplemented,isBindingCapturedByNode:e.notImplemented,getDeclarationStatementsForSourceFile:e.notImplemented,isImportRequiredByAugmentation:e.notImplemented},e.emitUsingBuildInfo=function(t,r,n,a){var o=c(t.options,!1),s=o.buildInfoPath,l=o.jsFilePath,u=o.sourceMapFilePath,d=o.declarationFilePath,p=o.declarationMapPath,f=r.readFile(e.Debug.checkDefined(s));if(!f)return s;var m=r.readFile(e.Debug.checkDefined(l));if(!m)return l;var g=u&&r.readFile(u);if(u&&!g||t.options.inlineSourceMap)return u||"inline sourcemap decoding";var _=d&&r.readFile(d);if(d&&!_)return d;var h=p&&r.readFile(p);if(p&&!h||t.options.inlineSourceMap)return p||"inline sourcemap decoding";var y=x(f);if(!y.bundle||!y.bundle.js||_&&!y.bundle.dts)return s;var v=e.getDirectoryPath(e.getNormalizedAbsolutePath(s,r.getCurrentDirectory())),E=e.createInputFiles(m,_,u,g,p,h,l,d,s,y,!0),S=[],D=e.createPrependNodes(t.projectReferences,n,(function(e){return r.readFile(e)})),w=function(t,r,n){var i,a=e.Debug.checkDefined(t.js),o=(null===(i=a.sources)||void 0===i?void 0:i.prologues)&&e.arrayToMap(a.sources.prologues,(function(e){return e.file}));return t.sourceFiles.map((function(t,i){var a,s,c=null==o?void 0:o.get(i),l=null==c?void 0:c.directives.map((function(t){var r=e.setTextRange(e.factory.createStringLiteral(t.expression.text),t.expression),n=e.setTextRange(e.factory.createExpressionStatement(r),t);return e.setParent(r,n),n})),u=e.factory.createToken(1),d=e.factory.createSourceFile(null!=l?l:[],u,0);return d.fileName=e.getRelativePathFromDirectory(n.getCurrentDirectory(),e.getNormalizedAbsolutePath(t,r),!n.useCaseSensitiveFileNames()),d.text=null!==(a=null==c?void 0:c.text)&&void 0!==a?a:"",e.setTextRangePosWidth(d,0,null!==(s=null==c?void 0:c.text.length)&&void 0!==s?s:0),e.setEachParent(d.statements,d),e.setTextRangePosWidth(u,d.end,0),e.setParent(u,d),d}))}(y.bundle,v,r),T={getPrependNodes:e.memoize((function(){return i(i([],D),[E])})),getCanonicalFileName:r.getCanonicalFileName,getCommonSourceDirectory:function(){return e.getNormalizedAbsolutePath(y.bundle.commonSourceDirectory,v)},getCompilerOptions:function(){return t.options},getCurrentDirectory:function(){return r.getCurrentDirectory()},getNewLine:function(){return r.getNewLine()},getSourceFile:e.returnUndefined,getSourceFileByPath:e.returnUndefined,getSourceFiles:function(){return w},getLibFileFromReference:e.notImplemented,isSourceFileFromExternalLibrary:e.returnFalse,getResolvedProjectReferenceToRedirect:e.returnUndefined,getProjectReferenceRedirect:e.returnUndefined,isSourceOfProjectReferenceRedirect:e.returnFalse,writeFile:function(t,r,n){switch(t){case l:if(m===r)return;break;case u:if(g===r)return;break;case s:var i=x(r);i.program=y.program;var a=y.bundle,o=a.js,c=a.dts,f=a.sourceFiles;return i.bundle.js.sources=o.sources,c&&(i.bundle.dts.sources=c.sources),i.bundle.sourceFiles=f,void S.push({name:t,text:k(i),writeByteOrderMark:n});case d:if(_===r)return;break;case p:if(h===r)return;break;default:e.Debug.fail("Unexpected path: "+t)}S.push({name:t,text:r,writeByteOrderMark:n})},isEmitBlocked:e.returnFalse,readFile:function(e){return r.readFile(e)},fileExists:function(e){return r.fileExists(e)},useCaseSensitiveFileNames:function(){return r.useCaseSensitiveFileNames()},getProgramBuildInfo:e.returnUndefined,getSourceFileFromReference:e.returnUndefined,redirectTargetsMap:e.createMultiMap(),getFileIncludeReasons:e.notImplemented};return b(e.notImplementedResolver,T,void 0,e.getTransformers(t.options,a)),S},function(e){e[e.Notification=0]="Notification",e[e.Substitution=1]="Substitution",e[e.Comments=2]="Comments",e[e.SourceMaps=3]="SourceMaps",e[e.Emit=4]="Emit"}(t||(t={})),e.createPrinter=E,function(e){e[e.Auto=0]="Auto",e[e.CountMask=268435455]="CountMask",e[e._i=268435456]="_i"}(r||(r={}))}(d||(d={})),function(e){var t;function r(e){e.watcher.close()}e.createCachedDirectoryStructureHost=function(t,r,n){if(t.getDirectories&&t.readDirectory){var i=new e.Map,a=e.createGetCanonicalFileName(n);return{useCaseSensitiveFileNames:n,fileExists:function(e){var r=c(o(e));return r&&p(r.files,l(e))||t.fileExists(e)},readFile:function(e,r){return t.readFile(e,r)},directoryExists:t.directoryExists&&function(r){var n=o(r);return i.has(e.ensureTrailingDirectorySeparator(n))||t.directoryExists(r)},getDirectories:function(e){var r=o(e),n=u(e,r);if(n)return n.directories.slice();return t.getDirectories(e)},readDirectory:function(i,a,s,c,l){var d=o(i),p=u(i,d);if(p)return e.matchFiles(i,a,s,c,n,r,l,(function(t){var r=o(t);if(r===d)return p;return u(t,r)||e.emptyFileSystemEntries}),m);return t.readDirectory(i,a,s,c,l)},createDirectory:t.createDirectory&&function(e){var r=c(o(e)),n=l(e);r&&f(r.directories,n,!0);t.createDirectory(e)},writeFile:t.writeFile&&function(e,r,n){var i=c(o(e));i&&g(i,l(e),!0);return t.writeFile(e,r,n)},addOrDeleteFileOrDirectory:function(e,r){if(s(r))return void _();var n=c(r);if(!n)return;if(!t.directoryExists)return void _();var i=l(e),a={fileExists:t.fileExists(r),directoryExists:t.directoryExists(r)};a.directoryExists||p(n.directories,i)?_():g(n,i,a.fileExists);return a},addOrDeleteFile:function(t,r,n){if(n===e.FileWatcherEventKind.Changed)return;var i=c(r);i&&g(i,l(t),n===e.FileWatcherEventKind.Created)},clearCache:_,realpath:t.realpath&&m}}function o(t){return e.toPath(t,r,a)}function s(t){return i.get(e.ensureTrailingDirectorySeparator(t))}function c(t){return s(e.getDirectoryPath(t))}function l(t){return e.getBaseFileName(e.normalizePath(t))}function u(r,n){var a=s(n=e.ensureTrailingDirectorySeparator(n));if(a)return a;try{return function(r,n){var a={files:e.map(t.readDirectory(r,void 0,void 0,["*.*"]),l)||[],directories:t.getDirectories(r)||[]};return i.set(e.ensureTrailingDirectorySeparator(n),a),a}(r,n)}catch(t){return void e.Debug.assert(!i.has(e.ensureTrailingDirectorySeparator(n)))}}function d(e,t){return a(e)===a(t)}function p(t,r){return e.some(t,(function(e){return d(e,r)}))}function f(t,r,n){if(p(t,r)){if(!n)return e.filterMutate(t,(function(e){return!d(e,r)}))}else if(n)return t.push(r)}function m(e){return t.realpath?t.realpath(e):e}function g(e,t,r){f(e.files,t,r)}function _(){i.clear()}},function(e){e[e.None=0]="None",e[e.Partial=1]="Partial",e[e.Full=2]="Full"}(e.ConfigFileProgramReloadLevel||(e.ConfigFileProgramReloadLevel={})),e.updateSharedExtendedConfigFileWatcher=function(t,r,n,i,a){var o,s=e.arrayToMap((null===(o=null==r?void 0:r.options.configFile)||void 0===o?void 0:o.extendedSourceFiles)||e.emptyArray,a);n.forEach((function(e,r){s.has(r)||(e.projects.delete(t),e.close())})),s.forEach((function(r,a){var o=n.get(a);o?o.projects.add(t):n.set(a,{projects:new e.Set([t]),fileWatcher:i(r,a),close:function(){var e=n.get(a);e&&0===e.projects.size&&(e.fileWatcher.close(),n.delete(a))}})}))},e.updateMissingFilePathsWatch=function(t,r,n){var i=t.getMissingFilePaths(),a=e.arrayToMap(i,e.identity,e.returnTrue);e.mutateMap(r,a,{createNewValue:n,onDeleteValue:e.closeFileWatcher})},e.updateWatchingWildcardDirectories=function(t,n,i){function a(e,t){return{watcher:i(e,t),flags:t}}e.mutateMap(t,n,{createNewValue:a,onDeleteValue:r,onExistingValue:function(e,r,n){if(e.flags===r)return;e.watcher.close(),t.set(n,a(n,r))}})},e.isIgnoredFileFromWildCardWatching=function(t){var r=t.watchedDirPath,n=t.fileOrDirectory,i=t.fileOrDirectoryPath,a=t.configFileName,o=t.options,s=t.program,c=t.extraFileExtensions,l=t.currentDirectory,u=t.useCaseSensitiveFileNames,d=t.writeLog,p=e.removeIgnoredPath(i);if(!p)return d("Project: "+a+" Detected ignored path: "+n),!0;if((i=p)===r)return!1;if(e.hasExtension(i)&&!e.isSupportedSourceFileName(n,o,c))return d("Project: "+a+" Detected file add/remove of non supported extension: "+n),!0;if(e.isExcludedFile(n,o.configFile.configFileSpecs,e.getNormalizedAbsolutePath(e.getDirectoryPath(a),l),u,l))return d("Project: "+a+" Detected excluded file: "+n),!0;if(!s)return!1;if(o.outFile||o.outDir)return!1;if(e.isDeclarationFileName(i)){if(o.declarationDir)return!1}else if(!e.fileExtensionIsOneOf(i,e.supportedJSExtensions))return!1;var f=e.removeFileExtension(i),m=function(e){return!!e.getState}(s)?s.getProgramOrUndefined():s;return!!(g(f+".ts")||g(f+".tsx")||g(f+".ets"))&&(d("Project: "+a+" Detected output file: "+n),!0);function g(e){return m?!!m.getSourceFileByPath(e):s.getState().fileInfos.has(e)}},e.isEmittedFileOfProgram=function(e,t){return!!e&&e.isEmittedFile(t)},function(e){e[e.None=0]="None",e[e.TriggerOnly=1]="TriggerOnly",e[e.Verbose=2]="Verbose"}(t=e.WatchLogLevel||(e.WatchLogLevel={})),e.getWatchFactory=function(r,n,a,o){e.setSysLog(n===t.Verbose?a:e.noop);var s={watchFile:function(e,t,n,i){return r.watchFile(e,t,n,i)},watchDirectory:function(e,t,n,i){return r.watchDirectory(e,t,0!=(1&n),i)}},c=n!==t.None?{watchFile:p("watchFile"),watchDirectory:p("watchDirectory")}:void 0,l=n===t.Verbose?{watchFile:function(e,t,r,n,i,s){a("FileWatcher:: Added:: "+f(e,r,n,i,s,o));var l=c.watchFile(e,t,r,n,i,s);return{close:function(){a("FileWatcher:: Close:: "+f(e,r,n,i,s,o)),l.close()}}},watchDirectory:function(t,r,n,i,s,l){var u="DirectoryWatcher:: Added:: "+f(t,n,i,s,l,o);a(u);var d=e.timestamp(),p=c.watchDirectory(t,r,n,i,s,l),m=e.timestamp()-d;return a("Elapsed:: "+m+"ms "+u),{close:function(){var r="DirectoryWatcher:: Close:: "+f(t,n,i,s,l,o);a(r);var c=e.timestamp();p.close();var u=e.timestamp()-c;a("Elapsed:: "+u+"ms "+r)}}}}:c||s,u=n===t.Verbose?function(e,t,r,n,i){return a("ExcludeWatcher:: Added:: "+f(e,t,r,n,i,o)),{close:function(){return a("ExcludeWatcher:: Close:: "+f(e,t,r,n,i,o))}}}:e.returnNoopFileWatcher;return{watchFile:d("watchFile"),watchDirectory:d("watchDirectory")};function d(t){return function(n,i,a,o,s,c){var d;return e.matchesExclude(n,"watchFile"===t?null==o?void 0:o.excludeFiles:null==o?void 0:o.excludeDirectories,"boolean"==typeof r.useCaseSensitiveFileNames?r.useCaseSensitiveFileNames:r.useCaseSensitiveFileNames(),(null===(d=r.getCurrentDirectory)||void 0===d?void 0:d.call(r))||"")?u(n,a,o,s,c):l[t].call(void 0,n,i,a,o,s,c)}}function p(t){return function(r,n,c,l,u,d){return s[t].call(void 0,r,(function(){for(var s=[],p=0;p<arguments.length;p++)s[p]=arguments[p];var m=("watchFile"===t?"FileWatcher":"DirectoryWatcher")+":: Triggered with "+s[0]+" "+(void 0!==s[1]?s[1]:"")+":: "+f(r,c,l,u,d,o);a(m);var g=e.timestamp();n.call.apply(n,i([void 0],s));var _=e.timestamp()-g;a("Elapsed:: "+_+"ms "+m)}),c,l,u,d)}}function f(e,t,r,n,i,a){return"WatchInfo: "+e+" "+t+" "+JSON.stringify(r)+" "+(a?a(n,i):void 0===i?n:n+" "+i)}},e.getFallbackOptions=function(t){var r=null==t?void 0:t.fallbackPolling;return{watchFile:void 0!==r?r:e.WatchFileKind.PriorityPollingInterval}},e.closeFileWatcherOf=r}(d||(d={})),function(e){function t(t,r){var n=e.getDirectoryPath(r),i=e.isRootedDiskPath(t)?t:e.combinePaths(n,t);return e.normalizePath(i)}function r(e,t){return n(e,t)}function n(t,r,n){void 0===n&&(n=e.sys);var i,a=new e.Map,o=e.createGetCanonicalFileName(n.useCaseSensitiveFileNames),s=e.maybeBind(n,n.createHash)||e.generateDjb2Hash;function c(){return e.getDirectoryPath(e.normalizePath(n.getExecutingFilePath()))}var l=e.getNewLineCharacter(t,(function(){return n.newLine})),u=n.realpath&&function(e){return n.realpath(e)},d={getSourceFile:function(n,i,a){var o;try{e.performance.mark("beforeIORead"),o=d.readFile(n),e.performance.mark("afterIORead"),e.performance.measure("I/O Read","beforeIORead","afterIORead")}catch(e){a&&a(e.message),o=""}return void 0!==o?e.createSourceFile(n,o,i,r,void 0,t):void 0},getDefaultLibLocation:c,getDefaultLibFileName:function(t){return e.combinePaths(c(),e.getDefaultLibFileName(t))},writeFile:function(r,o,c,l){try{e.performance.mark("beforeIOWrite"),e.writeFileEnsuringDirectories(r,o,c,(function(r,a,o){return function(r,a,o){if(!e.isWatchSet(t)||!n.getModifiedTime)return void n.writeFile(r,a,o);i||(i=new e.Map);var c=s(a),l=n.getModifiedTime(r);if(l){var u=i.get(r);if(u&&u.byteOrderMark===o&&u.hash===c&&u.mtime.getTime()===l.getTime())return}n.writeFile(r,a,o);var d=n.getModifiedTime(r)||e.missingFileModifiedTime;i.set(r,{hash:c,byteOrderMark:o,mtime:d})}(r,a,o)}),(function(e){return(d.createDirectory||n.createDirectory)(e)}),(function(e){return t=e,!!a.has(t)||!!(d.directoryExists||n.directoryExists)(t)&&(a.set(t,!0),!0);var t})),e.performance.mark("afterIOWrite"),e.performance.measure("I/O Write","beforeIOWrite","afterIOWrite")}catch(e){l&&l(e.message)}},getCurrentDirectory:e.memoize((function(){return n.getCurrentDirectory()})),useCaseSensitiveFileNames:function(){return n.useCaseSensitiveFileNames},getCanonicalFileName:o,getNewLine:function(){return l},fileExists:function(e){return n.fileExists(e)},readFile:function(e){return n.readFile(e)},trace:function(e){return n.write(e+l)},directoryExists:function(e){return n.directoryExists(e)},getEnvironmentVariable:function(e){return n.getEnvironmentVariable?n.getEnvironmentVariable(e):""},getDirectories:function(e){return n.getDirectories(e)},realpath:u,readDirectory:function(e,t,r,i,a){return n.readDirectory(e,t,r,i,a)},createDirectory:function(e){return n.createDirectory(e)},createHash:e.maybeBind(n,n.createHash)};return d}function a(t,r){var n=e.diagnosticCategoryName(t)+" TS"+t.code+": "+_(t.messageText,r.getNewLine())+r.getNewLine();if(t.file){var i=e.getLineAndCharacterOfPosition(t.file,t.start),a=i.line,o=i.character,s=t.file.fileName,c=e.convertToRelativePath(s,r.getCurrentDirectory(),(function(e){return r.getCanonicalFileName(e)}));return c+"("+(a+1)+","+(o+1)+"): "+n}return n}var o;e.findConfigFile=function(t,r,n){return void 0===n&&(n="tsconfig.json"),e.forEachAncestorDirectory(t,(function(t){var i=e.combinePaths(t,n);return r(i)?i:void 0}))},e.resolveTripleslashReference=t,e.computeCommonSourceDirectoryOfFilenames=function(t,r,n){var i;return e.forEach(t,(function(t){var a=e.getNormalizedPathComponents(t,r);if(a.pop(),i){for(var o=Math.min(i.length,a.length),s=0;s<o;s++)if(n(i[s])!==n(a[s])){if(0===s)return!0;i.length=s;break}a.length<i.length&&(i.length=a.length)}else i=a}))?"":i?e.getPathFromPathComponents(i):r},e.createCompilerHost=r,e.createCompilerHostWorker=n,e.changeCompilerHostLikeToUseCache=function(t,r,n){var i=t.readFile,a=t.fileExists,o=t.directoryExists,s=t.createDirectory,c=t.writeFile,l=new e.Map,u=new e.Map,d=new e.Map,p=new e.Map,f=function(e,r){var n=i.call(t,r);return l.set(e,void 0!==n&&n),n};t.readFile=function(n){var a=r(n),o=l.get(a);return void 0!==o?!1!==o?o:void 0:e.fileExtensionIs(n,".json")||e.isBuildInfoFile(n)?f(a,n):i.call(t,n)};var m=n?function(t,i,a,o){var s=r(t),c=p.get(s);if(c)return c;var l=n(t,i,a,o);return l&&(e.isDeclarationFileName(t)||e.fileExtensionIs(t,".json"))&&p.set(s,l),l}:void 0;return t.fileExists=function(e){var n=r(e),i=u.get(n);if(void 0!==i)return i;var o=a.call(t,e);return u.set(n,!!o),o},c&&(t.writeFile=function(e,n,i,a,o){var s=r(e);u.delete(s);var d=l.get(s);if(void 0!==d&&d!==n)l.delete(s),p.delete(s);else if(m){var f=p.get(s);f&&f.text!==n&&p.delete(s)}c.call(t,e,n,i,a,o)}),o&&s&&(t.directoryExists=function(e){var n=r(e),i=d.get(n);if(void 0!==i)return i;var a=o.call(t,e);return d.set(n,!!a),a},t.createDirectory=function(e){var n=r(e);d.delete(n),s.call(t,e)}),{originalReadFile:i,originalFileExists:a,originalDirectoryExists:o,originalCreateDirectory:s,originalWriteFile:c,getSourceFileWithCache:m,readFileWithCache:function(e){var t=r(e),n=l.get(t);return void 0!==n?!1!==n?n:void 0:f(t,e)}}},e.getPreEmitDiagnostics=function(t,r,n){var i;return i=e.addRange(i,t.getConfigFileParsingDiagnostics()),i=e.addRange(i,t.getOptionsDiagnostics(n)),i=e.addRange(i,t.getSyntacticDiagnostics(r,n)),i=e.addRange(i,t.getGlobalDiagnostics(n)),i=e.addRange(i,t.getSemanticDiagnostics(r,n)),e.getEmitDeclarations(t.getCompilerOptions())&&(i=e.addRange(i,t.getDeclarationDiagnostics(r,n))),e.sortAndDeduplicateDiagnostics(i||e.emptyArray)},e.formatDiagnostics=function(e,t){for(var r="",n=0,i=e;n<i.length;n++){r+=a(i[n],t)}return r},e.formatDiagnostic=a,function(e){e.Grey="",e.Red="",e.Yellow="",e.Blue="",e.Cyan=""}(o=e.ForegroundColorEscapeSequences||(e.ForegroundColorEscapeSequences={}));var s="",c=" ",l="",u="...",d=" ";function p(t){switch(t){case e.DiagnosticCategory.Error:return o.Red;case e.DiagnosticCategory.Warning:return o.Yellow;case e.DiagnosticCategory.Suggestion:return e.Debug.fail("Should never get an Info diagnostic on the command line.");case e.DiagnosticCategory.Message:return o.Blue}}function f(e,t){return t+e+l}function m(t,r,n,i,a,o){var d=e.getLineAndCharacterOfPosition(t,r),p=d.line,m=d.character,g=e.getLineAndCharacterOfPosition(t,r+n),_=g.line,h=g.character,y=e.getLineAndCharacterOfPosition(t,t.text.length).line,v=_-p>=4,b=(_+1+"").length;v&&(b=Math.max(u.length,b));for(var k="",x=p;x<=_;x++){k+=o.getNewLine(),v&&p+1<x&&x<_-1&&(k+=i+f(e.padLeft(u,b),s)+c+o.getNewLine(),x=_-1);var E=e.getPositionOfLineAndCharacter(t,x,0),S=x<y?e.getPositionOfLineAndCharacter(t,x+1,0):t.text.length,D=t.text.slice(E,S);if(D=(D=D.replace(/\s+$/g,"")).replace(/\t/g," "),k+=i+f(e.padLeft(x+1+"",b),s)+c,k+=D+o.getNewLine(),k+=i+f(e.padLeft("",b),s)+c,k+=a,x===p){var w=x===_?h:void 0;k+=D.slice(0,m).replace(/\S/g," "),k+=D.slice(m,w).replace(/./g,"~")}else k+=x===_?D.slice(0,h).replace(/./g,"~"):D.replace(/./g,"~");k+=l}return k}function g(t,r,n,i){void 0===i&&(i=f);var a=e.getLineAndCharacterOfPosition(t,r),s=a.line,c=a.character,l="";return l+=i(n?e.convertToRelativePath(t.fileName,n.getCurrentDirectory(),(function(e){return n.getCanonicalFileName(e)})):t.fileName,o.Cyan),l+=":",l+=i(""+(s+1),o.Yellow),l+=":",l+=i(""+(c+1),o.Yellow)}function _(t,r,n){if(void 0===n&&(n=0),e.isString(t))return t;if(void 0===t)return"";var i="";if(n){i+=r;for(var a=0;a<n;a++)i+=" "}if(i+=t.messageText,n++,t.next)for(var o=0,s=t.next;o<s.length;o++){i+=_(s[o],r,n)}return i}function h(t,r,n,i){if(0===t.length)return[];for(var a=[],o=new e.Map,s=0,c=t;s<c.length;s++){var l=c[s],u=void 0;o.has(l)?u=o.get(l):o.set(l,u=i(l,r,n)),a.push(u)}return a}function y(t,r,n,i){var a;return function t(r,o,s){if(i){var c=i(r,s);if(c)return c}return e.forEach(o,(function(r,i){if(!r||!(null==a?void 0:a.has(r.sourceFile.path))){var o=n(r,s,i);return o||!r?o:((a||(a=new e.Set)).add(r.sourceFile.path),t(r.commandLine.projectReferences,r.references,r))}}))}(t,r,void 0)}function v(t){switch(null==t?void 0:t.kind){case e.FileIncludeKind.Import:case e.FileIncludeKind.ReferenceFile:case e.FileIncludeKind.TypeReferenceDirective:case e.FileIncludeKind.LibReferenceDirective:return!0;default:return!1}}function b(e){return void 0!==e.pos}function k(t,r){var n,i,a,o,s,c,l,u,d,p,f=e.Debug.checkDefined(t(r.file)),m=r.kind,g=r.index;switch(m){case e.FileIncludeKind.Import:var _=A(f,g);if(p=null===(s=null===(o=f.resolvedModules)||void 0===o?void 0:o.get(_.text))||void 0===s?void 0:s.packageId,-1===_.pos)return{file:f,packageId:p,text:_.text};u=e.skipTrivia(f.text,_.pos),d=_.end;break;case e.FileIncludeKind.ReferenceFile:u=(n=f.referencedFiles[g]).pos,d=n.end;break;case e.FileIncludeKind.TypeReferenceDirective:u=(i=f.typeReferenceDirectives[g]).pos,d=i.end,p=null===(l=null===(c=f.resolvedTypeReferenceDirectiveNames)||void 0===c?void 0:c.get(e.toFileNameLowerCase(f.typeReferenceDirectives[g].fileName)))||void 0===l?void 0:l.packageId;break;case e.FileIncludeKind.LibReferenceDirective:u=(a=f.libReferenceDirectives[g]).pos,d=a.end;break;default:return e.Debug.assertNever(m)}return{file:f,pos:u,end:d,packageId:p}}function x(t,r,n,a){var o=t.getCompilerOptions();if(o.noEmit)return t.getSemanticDiagnostics(r,a),r||e.outFile(o)?e.emitSkippedWithNoDiagnostics:t.emitBuildInfo(n,a);if(o.noEmitOnError){var s=i(i(i(i([],t.getOptionsDiagnostics(a)),t.getSyntacticDiagnostics(r,a)),t.getGlobalDiagnostics(a)),t.getSemanticDiagnostics(r,a));if(0===s.length&&e.getEmitDeclarations(t.getCompilerOptions())&&(s=t.getDeclarationDiagnostics(void 0,a)),s.length){var c;if(!r&&!e.outFile(o)){var l=t.emitBuildInfo(n,a);l.diagnostics&&(s=i(i([],s),l.diagnostics)),c=l.emittedFiles}return{diagnostics:s,sourceMaps:void 0,emittedFiles:c,emitSkipped:!0}}}}function E(t,r){return e.filter(t,(function(e){return!e.skippedOn||!r[e.skippedOn]}))}function S(t,r){return void 0===r&&(r=t),{fileExists:function(e){return r.fileExists(e)},readDirectory:function(t,n,i,a,o){return e.Debug.assertIsDefined(r.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),r.readDirectory(t,n,i,a,o)},readFile:function(e){return r.readFile(e)},useCaseSensitiveFileNames:t.useCaseSensitiveFileNames(),getCurrentDirectory:function(){return t.getCurrentDirectory()},onUnRecoverableConfigFileDiagnostic:t.onUnRecoverableConfigFileDiagnostic||e.returnUndefined,trace:t.trace?function(e){return t.trace(e)}:void 0}}function D(t,r,n){if(!t)return e.emptyArray;for(var i,a=0;a<t.length;a++){var o=t[a],s=r(o,a);if(o.prepend&&s&&s.options){if(!e.outFile(s.options))continue;var c=e.getOutputPathsForBundle(s.options,!0),l=c.jsFilePath,u=c.sourceMapFilePath,d=c.declarationFilePath,p=c.declarationMapPath,f=c.buildInfoPath,m=e.createInputFiles(n,l,u,d,p,f);(i||(i=[])).push(m)}}return i||e.emptyArray}function w(t,r){var n=r||t;return e.resolveConfigFileProjectName(n.path)}function T(t,r){switch(r.extension){case".ts":case".d.ts":case".ets":case".d.ets":return;case".tsx":return n();case".jsx":return n()||i();case".js":return i();case".json":return t.resolveJsonModule?void 0:e.Diagnostics.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function n(){return t.jsx?void 0:e.Diagnostics.Module_0_was_resolved_to_1_but_jsx_is_not_set}function i(){return e.getAllowJSCompilerOption(t)||!e.getStrictOptionValue(t,"noImplicitAny")?void 0:e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}}function C(e){for(var t=e.imports,r=e.moduleAugmentations,n=t.map((function(e){return e.text})),i=0,a=r;i<a.length;i++){var o=a[i];10===o.kind&&n.push(o.text)}return n}function A(t,r){var n=t.imports,i=t.moduleAugmentations;if(r<n.length)return n[r];for(var a=n.length,o=0,s=i;o<s.length;o++){var c=s[o];if(10===c.kind){if(r===a)return c;a++}}e.Debug.fail("should never ask for module name at index higher than possible module name")}e.formatColorAndReset=f,e.formatLocation=g,e.formatDiagnosticsWithColorAndContext=function(t,r){for(var n="",i=0,a=t;i<a.length;i++){var s=a[i];if(s.file)n+=g(h=s.file,y=s.start,r),n+=" - ";if(n+=f(e.diagnosticCategoryName(s),p(s.category)),n+=f(" TS"+s.code+": ",o.Grey),n+=_(s.messageText,r.getNewLine()),s.file&&(n+=r.getNewLine(),n+=m(s.file,s.start,s.length,"",p(s.category),r)),s.relatedInformation){n+=r.getNewLine();for(var c=0,l=s.relatedInformation;c<l.length;c++){var u=l[c],h=u.file,y=u.start,v=u.length,b=u.messageText;h&&(n+=r.getNewLine(),n+=" "+g(h,y,r),n+=m(h,y,v,d,o.Cyan,r)),n+=r.getNewLine(),n+=d+_(b,r.getNewLine())}}n+=r.getNewLine()}return n},e.flattenDiagnosticMessageText=_,e.loadWithLocalCache=h,e.forEachResolvedProjectReference=function(e,t){return y(void 0,e,(function(e,r){return e&&t(e,r)}))},e.inferredTypesContainingFile="__inferred type names__.ts",e.isReferencedFile=v,e.isReferenceFileLocation=b,e.getReferencedFileLocation=k,e.isProgramUptoDate=function(t,r,n,i,a,o,s,c){if(!t||(null==s?void 0:s()))return!1;if(!e.arrayIsEqualTo(t.getRootFileNames(),r))return!1;var l;if(!e.arrayIsEqualTo(t.getProjectReferences(),c,(function(r,n,i){if(!e.projectReferenceIsEqualTo(r,n))return!1;return p(t.getResolvedProjectReferences()[i],r)})))return!1;if(t.getSourceFiles().some((function(e){return!d(e)||o(e.path)})))return!1;if(t.getMissingFilePaths().some(a))return!1;var u=t.getCompilerOptions();return!!e.compareDataObjects(u,n)&&(!u.configFile||!n.configFile||u.configFile.text===n.configFile.text);function d(e){return e.version===i(e.resolvedPath,e.fileName)}function p(t,r){return t?!!e.contains(l,t)||!!d(t.sourceFile)&&((l||(l=[])).push(t),!e.forEach(t.references,(function(e,r){return!p(e,t.commandLine.projectReferences[r])}))):!a(w(r))}},e.getConfigFileParsingDiagnostics=function(e){return e.options.configFile?i(i([],e.options.configFile.parseDiagnostics),e.errors):e.errors},e.createProgram=function(n,a,o,s,c){var l,u,d,p,f,m,g,_,A,N,P,I,F,O,R=e.isArray(n)?function(e,t,r,n,i){return{rootNames:e,options:t,host:r,oldProgram:n,configFileParsingDiagnostics:i}}(n,a,o,s,c):n,M=R.rootNames,L=R.options,j=R.configFileParsingDiagnostics,B=R.projectReferences,z=R.oldProgram,U=new e.Map,q=e.createMultiMap(),J={},V={},H=new e.Map,K="number"==typeof L.maxNodeModuleJsDepth?L.maxNodeModuleJsDepth:0,W=0,G=new e.Map,$=new e.Map;null===e.tracing||void 0===e.tracing||e.tracing.push("program","createProgram",{configFilePath:L.configFilePath,rootDir:L.rootDir},!0),e.performance.mark("beforeProgram");var Y,X,Q,Z,ee=R.host||r(L),te=S(ee),re=L.noLib,ne=e.memoize((function(){return ee.getDefaultLibFileName(L)})),ie=ee.getDefaultLibLocation?ee.getDefaultLibLocation():e.getDirectoryPath(ne()),ae=e.createDiagnosticCollection(),oe=ee.getCurrentDirectory(),se=e.getSupportedExtensions(L),ce=e.getSuppoertedExtensionsWithJsonIfResolveJsonModule(L,se),le=new e.Map,ue=ee.hasInvalidatedResolution||e.returnFalse;if(ee.resolveModuleNames)Q=function(t,r,n,i){return ee.resolveModuleNames(e.Debug.checkEachDefined(t),r,n,i,L).map((function(t){if(!t||void 0!==t.extension)return t;var r=e.clone(t);return r.extension=e.extensionFromPath(t.resolvedFileName),r}))};else{X=e.createModuleResolutionCache(oe,(function(e){return ee.getCanonicalFileName(e)}),L);var de=function(t,r,n){return e.resolveModuleName(t,r,L,ee,X,n).resolvedModule};Q=function(t,r,n,i){return h(e.Debug.checkEachDefined(t),r,i,de)}}if(ee.resolveTypeReferenceDirectives)Z=function(t,r,n){return ee.resolveTypeReferenceDirectives(e.Debug.checkEachDefined(t),r,n,L)};else{var pe=function(t,r,n){return e.resolveTypeReferenceDirective(t,r,L,ee,n).resolvedTypeReferenceDirective};Z=function(t,r,n){return h(e.Debug.checkEachDefined(t),r,n,pe)}}var fe,me,ge,_e,he,ye=new e.Map,ve=new e.Map,be=e.createMultiMap(),ke=new e.Map,xe=ee.useCaseSensitiveFileNames()?new e.Map:void 0,Ee=!!(null===(l=ee.useSourceOfProjectReferenceRedirect)||void 0===l?void 0:l.call(ee))&&!L.disableSourceOfProjectReferenceRedirect,Se=function(t){var r,n,i=t.compilerHost.fileExists,a=t.compilerHost.directoryExists,o=t.compilerHost.getDirectories,s=t.compilerHost.realpath;if(!t.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:e.noop,fileExists:l};t.compilerHost.fileExists=l,a&&(n=t.compilerHost.directoryExists=function(n){return a.call(t.compilerHost,n)?(p(n),!0):!!t.getResolvedProjectReferences()&&(r||(r=new e.Set,t.forEachResolvedProjectReference((function(n){var i=e.outFile(n.commandLine.options);if(i)r.add(e.getDirectoryPath(t.toPath(i)));else{var a=n.commandLine.options.declarationDir||n.commandLine.options.outDir;a&&r.add(t.toPath(a))}}))),f(n,!1))});o&&(t.compilerHost.getDirectories=function(e){return!t.getResolvedProjectReferences()||a&&a.call(t.compilerHost,e)?o.call(t.compilerHost,e):[]});s&&(t.compilerHost.realpath=function(e){var r;return(null===(r=t.getSymlinkCache().getSymlinkedFiles())||void 0===r?void 0:r.get(t.toPath(e)))||s.call(t.compilerHost,e)});return{onProgramCreateComplete:c,fileExists:l,directoryExists:n};function c(){t.compilerHost.fileExists=i,t.compilerHost.directoryExists=a,t.compilerHost.getDirectories=o}function l(r){return!!i.call(t.compilerHost,r)||!!t.getResolvedProjectReferences()&&(!!e.isDeclarationFileName(r)&&f(r,!0))}function u(r){var n=t.getSourceOfProjectReferenceRedirect(r);return void 0!==n?!e.isString(n)||i.call(t.compilerHost,n):void 0}function d(n){var i=t.toPath(n),a=""+i+e.directorySeparator;return e.forEachKey(r,(function(t){return i===t||e.startsWith(t,a)||e.startsWith(i,t+"/")}))}function p(r){var n,i;if(t.getResolvedProjectReferences()&&!e.containsIgnoredPath(r)){var a=e.isOhpm(null===(n=t.options)||void 0===n?void 0:n.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart;if(s&&e.stringContains(r,a)){var o=t.getSymlinkCache(),c=e.ensureTrailingDirectorySeparator(t.toPath(r));if(!(null===(i=o.getSymlinkedDirectories())||void 0===i?void 0:i.has(c))){var l,u=e.normalizePath(s.call(t.compilerHost,r));u!==r&&(l=e.ensureTrailingDirectorySeparator(t.toPath(u)))!==c?o.setSymlinkedDirectory(r,{real:e.ensureTrailingDirectorySeparator(u),realPath:l}):o.setSymlinkedDirectory(c,!1)}}}}function f(r,n){var i,a,o=n?function(e){return u(e)}:function(e){return d(e)},s=o(r);if(void 0!==s)return s;var c=t.getSymlinkCache(),l=c.getSymlinkedDirectories();if(!l)return!1;var p=t.toPath(r),f=e.isOhpm(null===(i=t.options)||void 0===i?void 0:i.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart;return!!e.stringContains(p,f)&&(!(!n||!(null===(a=c.getSymlinkedFiles())||void 0===a?void 0:a.has(p)))||(e.firstDefinedIterator(l.entries(),(function(i){var a=i[0],s=i[1];if(s&&e.startsWith(p,a)){var l=o(p.replace(a,s.realPath));if(n&&l){var u=e.getNormalizedAbsolutePath(r,t.compilerHost.getCurrentDirectory());c.setSymlinkedFile(p,""+s.real+u.replace(new RegExp(a,"i"),""))}return l}}))||!1))}}({compilerHost:ee,getSymlinkCache:ar,useSourceOfProjectReferenceRedirect:Ee,toPath:Ke,getResolvedProjectReferences:Ye,getSourceOfProjectReferenceRedirect:Ft,forEachResolvedProjectReference:It,options:a}),De=Se.onProgramCreateComplete,we=Se.fileExists,Te=Se.directoryExists;null===e.tracing||void 0===e.tracing||e.tracing.push("program","shouldProgramCreateNewSourceFiles",{hasOldProgram:!!z});var Ce,Ae=function(t,r){if(!t)return!1;var n=t.getCompilerOptions();return!!e.sourceFileAffectingCompilerOptions.some((function(t){return!e.isJsonEqual(e.getCompilerOptionValue(n,t),e.getCompilerOptionValue(r,t))}))}(z,L);if(null===e.tracing||void 0===e.tracing||e.tracing.pop(),null===e.tracing||void 0===e.tracing||e.tracing.push("program","tryReuseStructureFromOldProgram",{}),Ce=function(){var t;if(!z)return 0;var r=z.getCompilerOptions();if(e.changesAffectModuleResolution(r,L))return 0;var n=z.getRootFileNames();if(!e.arrayIsEqualTo(n,M))return 0;if(!e.arrayIsEqualTo(L.types,r.types))return 0;if(y(z.getProjectReferences(),z.getResolvedProjectReferences(),(function(e,t,r){var n=qt((t?t.commandLine.projectReferences:B)[r]);return e?!n||n.sourceFile!==e.sourceFile:void 0!==n}),(function(t,r){var n=r?Rt(r.sourceFile.path).commandLine.projectReferences:B;return!e.arrayIsEqualTo(t,n,e.projectReferenceIsEqualTo)})))return 0;B&&(me=B.map(qt));var i=[],a=[];if(Ce=2,z.getMissingFilePaths().some((function(e){return ee.fileExists(e)})))return 0;var o,s=z.getSourceFiles();!function(e){e[e.Exists=0]="Exists",e[e.Modified=1]="Modified"}(o||(o={}));for(var c=new e.Map,l=0,u=s;l<u.length;l++){var d=u[l];if(!(j=ee.getSourceFileByPath?ee.getSourceFileByPath(d.fileName,d.resolvedPath,L.target,void 0,Ae):ee.getSourceFile(d.fileName,L.target,void 0,Ae)))return 0;e.Debug.assert(!j.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");var p=void 0;if(d.redirectInfo){if(j!==d.redirectInfo.unredirected)return 0;p=!1,j=d}else if(z.redirectTargetsMap.has(d.path)){if(j!==d)return 0;p=!1}else p=j!==d;j.path=d.path,j.originalFileName=d.originalFileName,j.resolvedPath=d.resolvedPath,j.fileName=d.fileName;var f=z.sourceFileToPackageName.get(d.path);if(void 0!==f){var m=c.get(f),g=p?1:0;if(void 0!==m&&1===g||1===m)return 0;c.set(f,g)}if(p){if(!e.arrayIsEqualTo(d.libReferenceDirectives,j.libReferenceDirectives,ht))return 0;d.hasNoDefaultLib!==j.hasNoDefaultLib&&(Ce=1),e.arrayIsEqualTo(d.referencedFiles,j.referencedFiles,ht)||(Ce=1),bt(j),e.arrayIsEqualTo(d.imports,j.imports,yt)||(Ce=1),e.arrayIsEqualTo(d.moduleAugmentations,j.moduleAugmentations,yt)||(Ce=1),(3145728&d.flags)!=(3145728&j.flags)&&(Ce=1),e.arrayIsEqualTo(d.typeReferenceDirectives,j.typeReferenceDirectives,ht)||(Ce=1),a.push({oldFile:d,newFile:j})}else ue(d.path)&&(Ce=1,a.push({oldFile:d,newFile:j}));i.push(j)}if(2!==Ce)return Ce;for(var h=a.map((function(e){return e.oldFile})),v=0,b=s;v<b.length;v++){var k=b[v];if(!e.contains(h,k))for(var x=0,E=k.ambientModuleNames;x<E.length;x++){var S=E[x];U.set(S,k.fileName)}}for(var D=0,w=a;D<w.length;D++){var T=w[D],A=(d=T.oldFile,C(j=T.newFile)),N=Ge(A,j);e.hasChangesInResolutions(A,N,d.resolvedModules,e.moduleResolutionIsEqualTo)?(Ce=1,j.resolvedModules=e.zipToMap(A,N)):j.resolvedModules=d.resolvedModules;var P=e.map(j.typeReferenceDirectives,(function(t){return e.toFileNameLowerCase(t.fileName)})),I=qe(P,j);e.hasChangesInResolutions(P,I,d.resolvedTypeReferenceDirectiveNames,e.typeDirectiveIsEqualTo)?(Ce=1,j.resolvedTypeReferenceDirectiveNames=e.zipToMap(P,I)):j.resolvedTypeReferenceDirectiveNames=d.resolvedTypeReferenceDirectiveNames}if(2!==Ce)return Ce;if(null===(t=ee.hasChangedAutomaticTypeDirectiveNames)||void 0===t?void 0:t.call(ee))return 1;fe=z.getMissingFilePaths(),e.Debug.assert(i.length===z.getSourceFiles().length);for(var F=0,R=i;F<R.length;F++){var j=R[F];ke.set(j.path,j)}return z.getFilesByNameMap().forEach((function(e,t){e?e.path!==t?ke.set(t,ke.get(e.path)):z.isSourceFileFromExternalLibrary(e)&&$.set(e.path,!0):ke.set(t,e)})),_=i,q=z.getFileIncludeReasons(),O=z.getFileProcessingDiagnostics(),H=z.getResolvedTypeReferenceDirectives(),ve=z.sourceFileToPackageName,be=z.redirectTargetsMap,2}(),null===e.tracing||void 0===e.tracing||e.tracing.pop(),2!==Ce){m=[],g=[],B&&(me||(me=B.map(qt)),M.length&&(null==me||me.forEach((function(t,r){if(t){var n=e.outFile(t.commandLine.options);if(Ee){if(n||e.getEmitModuleKind(t.commandLine.options)===e.ModuleKind.None)for(var i=0,a=t.commandLine.fileNames;i<a.length;i++){Et(l=a[i],{kind:e.FileIncludeKind.SourceFromProjectReference,index:r})}}else if(n)Et(e.changeExtension(n,".d.ts"),{kind:e.FileIncludeKind.OutputFromProjectReference,index:r});else if(e.getEmitModuleKind(t.commandLine.options)===e.ModuleKind.None)for(var o=e.memoize((function(){return e.getCommonSourceDirectoryOfConfig(t.commandLine,!ee.useCaseSensitiveFileNames())})),s=0,c=t.commandLine.fileNames;s<c.length;s++){var l=c[s];e.isDeclarationFileName(l)||e.fileExtensionIs(l,".json")||Et(e.getOutputDeclarationFileName(l,t.commandLine,!ee.useCaseSensitiveFileNames(),o),{kind:e.FileIncludeKind.OutputFromProjectReference,index:r})}}})))),null===e.tracing||void 0===e.tracing||e.tracing.push("program","processRootFiles",{count:M.length}),e.forEach(M,(function(t,r){return _t(t,!1,!1,{kind:e.FileIncludeKind.RootFile,index:r})})),null===e.tracing||void 0===e.tracing||e.tracing.pop();var Ne=M.length?e.getAutomaticTypeDirectiveNames(L,ee):e.emptyArray;if(Ne.length){null===e.tracing||void 0===e.tracing||e.tracing.push("program","processTypeReferences",{count:Ne.length});for(var Pe=L.configFilePath?e.getDirectoryPath(L.configFilePath):ee.getCurrentDirectory(),Ie=qe(Ne,e.combinePaths(Pe,e.inferredTypesContainingFile)),Fe=0;Fe<Ne.length;Fe++)jt(Ne[Fe],Ie[Fe],{kind:e.FileIncludeKind.AutomaticTypeDirectiveFile,typeReference:Ne[Fe],packageId:null===(u=Ie[Fe])||void 0===u?void 0:u.packageId});null===e.tracing||void 0===e.tracing||e.tracing.pop()}if(M.length&&!re){var Oe=ne();if(!L.lib&&Oe)_t(Oe,!0,!1,{kind:e.FileIncludeKind.LibFile});else{e.forEach(L.lib,(function(t,r){_t(e.combinePaths(ie,t),!0,!1,{kind:e.FileIncludeKind.LibFile,index:r})}));var Re=null!==(p=null===(d=L.ets)||void 0===d?void 0:d.libs)&&void 0!==p?p:[];Re.length&&e.forEach(Re,(function(t){_t(e.combinePaths(t),!0,!1,{kind:e.FileIncludeKind.LibFile})}))}}fe=e.arrayFrom(e.mapDefinedIterator(ke.entries(),(function(e){var t=e[0];return void 0===e[1]?t:void 0}))),_=e.stableSort(m,(function(t,r){return e.compareValues(He(t),He(r))})).concat(g),m=void 0,g=void 0}if(e.Debug.assert(!!fe),z&&ee.onReleaseOldSourceFile){for(var Me=0,Le=z.getSourceFiles();Me<Le.length;Me++){var je=Le[Me],Be=nt(je.resolvedPath);(Ae||!Be||je.resolvedPath===je.path&&Be.resolvedPath!==je.path)&&ee.onReleaseOldSourceFile(je,z.getCompilerOptions(),!!nt(je.path))}z.forEachResolvedProjectReference((function(e){Rt(e.sourceFile.path)||ee.onReleaseOldSourceFile(e.sourceFile,z.getCompilerOptions(),!1)}))}z=void 0;var ze={getRootFileNames:function(){return M},getSourceFile:rt,getSourceFileByPath:nt,getSourceFiles:function(){return _},getMissingFilePaths:function(){return fe},getFilesByNameMap:function(){return ke},getCompilerOptions:function(){return L},getSyntacticDiagnostics:function(e,t){return it(e,ot,t)},getOptionsDiagnostics:function(){return e.sortAndDeduplicateDiagnostics(e.concatenate(ae.getGlobalDiagnostics(),function(){if(!L.configFile)return e.emptyArray;var t=ae.getDiagnostics(L.configFile.fileName);return It((function(r){t=e.concatenate(t,ae.getDiagnostics(r.sourceFile.fileName))})),t}()))},getGlobalDiagnostics:function(){return M.length?e.sortAndDeduplicateDiagnostics(Ze().getGlobalDiagnostics().slice()):e.emptyArray},getSemanticDiagnostics:function(e,t){return it(e,ct,t)},getCachedSemanticDiagnostics:function(e){var t;return e?null===(t=J.perFile)||void 0===t?void 0:t.get(e.path):J.allDiagnostics},getSuggestionDiagnostics:function(e,t){return st((function(){return Ze().getSuggestionDiagnostics(e,t)}))},getDeclarationDiagnostics:function(t,r){var n=ze.getCompilerOptions();return!t||e.outFile(n)?pt(t,r):it(t,gt,r)},getBindAndCheckDiagnostics:function(e,t){return lt(e,t)},getProgramDiagnostics:at,getTypeChecker:et,getEtsLibSFromProgram:function(){return e.getEtsLibs(ze)},getClassifiableNames:function(){var t;if(!F){et(),F=new e.Set;for(var r=0,n=_;r<n.length;r++){null===(t=n[r].classifiableNames)||void 0===t||t.forEach((function(e){return F.add(e)}))}}return F},getDiagnosticsProducingTypeChecker:Ze,getCommonSourceDirectory:We,emit:function(t,r,n,i,a,o){null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emit",{path:null==t?void 0:t.path},!0);var s=st((function(){return function(t,r,n,i,a,o,s){if(!s){var c=x(t,r,n,i);if(c)return c}var l=Ze().getEmitResolver(e.outFile(L)?void 0:r,i);e.performance.mark("beforeEmit");var u=e.emitFiles(l,$e(n),r,e.getTransformers(L,o,a),a,!1,s);return e.performance.mark("afterEmit"),e.performance.measure("Emit","beforeEmit","afterEmit"),u}(ze,t,r,n,i,a,o)}));return null===e.tracing||void 0===e.tracing||e.tracing.pop(),s},getCurrentDirectory:function(){return oe},getNodeCount:function(){return Ze().getNodeCount()},getIdentifierCount:function(){return Ze().getIdentifierCount()},getSymbolCount:function(){return Ze().getSymbolCount()},getTypeCatalog:function(){return Ze().getTypeCatalog()},getTypeCount:function(){return Ze().getTypeCount()},getInstantiationCount:function(){return Ze().getInstantiationCount()},getRelationCacheSizes:function(){return Ze().getRelationCacheSizes()},getFileProcessingDiagnostics:function(){return O},getResolvedTypeReferenceDirectives:function(){return H},isSourceFileFromExternalLibrary:Qe,isSourceFileDefaultLibrary:function(t){if(t.hasNoDefaultLib)return!0;if(!L.noLib)return!1;var r=ee.useCaseSensitiveFileNames()?e.equateStringsCaseSensitive:e.equateStringsCaseInsensitive;return L.lib?e.some(L.lib,(function(n){return r(t.fileName,e.combinePaths(ie,n))})):r(t.fileName,ne())},dropDiagnosticsProducingTypeChecker:function(){P=void 0},getSourceFileFromReference:function(e,r){return kt(t(r.fileName,e.fileName),rt)},getLibFileFromReference:function(t){var r=e.toFileNameLowerCase(t.fileName),n=e.libMap.get(r);if(n)return rt(e.combinePaths(ie,n))},sourceFileToPackageName:ve,redirectTargetsMap:be,isEmittedFile:function(t){if(L.noEmit)return!1;var r=Ke(t);if(nt(r))return!1;var n=e.outFile(L);if(n)return ir(r,n)||ir(r,e.removeFileExtension(n)+".d.ts");if(L.declarationDir&&e.containsPath(L.declarationDir,r,oe,!ee.useCaseSensitiveFileNames()))return!0;if(L.outDir)return e.containsPath(L.outDir,r,oe,!ee.useCaseSensitiveFileNames());if(e.fileExtensionIsOneOf(r,e.supportedJSExtensions)||e.isDeclarationFileName(r)){var i=e.removeFileExtension(r);return!!nt(i+".ts")||!!nt(i+".tsx")}return!1},getConfigFileParsingDiagnostics:function(){return j||e.emptyArray},getResolvedModuleWithFailedLookupLocationsFromCache:function(t,r){return X&&e.resolveModuleNameFromCache(t,r,X)},getProjectReferences:function(){return B},getResolvedProjectReferences:Ye,getProjectReferenceRedirect:Ct,getResolvedProjectReferenceToRedirect:Pt,getResolvedProjectReferenceByPath:Rt,forEachResolvedProjectReference:It,isSourceOfProjectReferenceRedirect:Ot,emitBuildInfo:function(t){e.Debug.assert(!e.outFile(L)),null===e.tracing||void 0===e.tracing||e.tracing.push("emit","emitBuildInfo",{},!0),e.performance.mark("beforeEmit");var r=e.emitFiles(e.notImplementedResolver,$e(t),void 0,e.noTransformers,!1,!0);return e.performance.mark("afterEmit"),e.performance.measure("Emit","beforeEmit","afterEmit"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),r},fileExists:we,directoryExists:Te,getSymlinkCache:ar,realpath:null===(f=ee.realpath)||void 0===f?void 0:f.bind(ee),useCaseSensitiveFileNames:function(){return ee.useCaseSensitiveFileNames()},getFileIncludeReasons:function(){return q},structureIsReused:Ce,getTagNameNeededCheckByFile:ee.getTagNameNeededCheckByFile,getExpressionCheckedResultsByFile:ee.getExpressionCheckedResultsByFile};return De(),null==O||O.forEach((function(t){switch(t.kind){case 1:return ae.add(Jt(t.file&&nt(t.file),t.fileProcessingReason,t.diagnostic,t.args||e.emptyArray));case 0:var r=k(nt,t.reason),n=r.file,a=r.pos,o=r.end;return ae.add(e.createFileDiagnostic.apply(void 0,i([n,e.Debug.checkDefined(a),e.Debug.checkDefined(o)-a,t.diagnostic],t.args||e.emptyArray)));default:e.Debug.assertNever(t)}})),function(){L.strictPropertyInitialization&&!e.getStrictOptionValue(L,"strictNullChecks")&&Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks");L.isolatedModules&&(L.out&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"out","isolatedModules"),L.outFile&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"outFile","isolatedModules"));L.inlineSourceMap&&(L.sourceMap&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap"),L.mapRoot&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap"));L.composite&&(!1===L.declaration&&Xt(e.Diagnostics.Composite_projects_may_not_disable_declaration_emit,"declaration"),!1===L.incremental&&Xt(e.Diagnostics.Composite_projects_may_not_disable_incremental_compilation,"declaration"));var t=e.outFile(L);L.tsBuildInfoFile?e.isIncrementalCompilation(L)||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"tsBuildInfoFile","incremental","composite"):!L.incremental||t||L.configFilePath||ae.add(e.createCompilerDiagnostic(e.Diagnostics.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified));if(function(){var t=L.suppressOutputPathCheck?void 0:e.getTsBuildInfoEmitOutputFilePath(L);y(B,me,(function(r,n,i){var a=(n?n.commandLine.projectReferences:B)[i],o=n&&n.sourceFile;if(r){var s=r.commandLine.options;if(!s.composite||s.noEmit)(n?n.commandLine.fileNames:M).length&&(s.composite||Zt(o,i,e.Diagnostics.Referenced_project_0_must_have_setting_composite_Colon_true,a.path),s.noEmit&&Zt(o,i,e.Diagnostics.Referenced_project_0_may_not_disable_emit,a.path));if(a.prepend){var c=e.outFile(s);c?ee.fileExists(c)||Zt(o,i,e.Diagnostics.Output_file_0_from_project_1_does_not_exist,c,a.path):Zt(o,i,e.Diagnostics.Cannot_prepend_project_0_because_it_does_not_have_outFile_set,a.path)}!n&&t&&t===e.getTsBuildInfoEmitOutputFilePath(s)&&(Zt(o,i,e.Diagnostics.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,t,a.path),le.set(Ke(t),!0))}else Zt(o,i,e.Diagnostics.File_0_not_found,a.path)}))}(),L.composite)for(var r=new e.Set(M.map(Ke)),n=0,i=_;n<i.length;n++){var a=i[n];e.sourceFileMayBeEmitted(a,ze)&&!r.has(a.path)&&Ht(a,e.Diagnostics.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,[a.fileName,L.configFilePath||""])}if(L.paths)for(var o in L.paths)if(e.hasProperty(L.paths,o))if(e.hasZeroOrOneAsteriskCharacter(o)||Wt(!0,o,e.Diagnostics.Pattern_0_can_have_at_most_one_Asterisk_character,o),e.isArray(L.paths[o])){var s=L.paths[o].length;0===s&&Wt(!1,o,e.Diagnostics.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,o);for(var c=0;c<s;c++){var l=L.paths[o][c],u=typeof l;"string"===u?(e.hasZeroOrOneAsteriskCharacter(l)||Kt(o,c,e.Diagnostics.Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character,l,o),L.baseUrl||e.pathIsRelative(l)||e.pathIsAbsolute(l)||Kt(o,c,e.Diagnostics.Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash)):Kt(o,c,e.Diagnostics.Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2,l,o,u)}}else Wt(!1,o,e.Diagnostics.Substitutions_for_pattern_0_should_be_an_array,o);L.sourceMap||L.inlineSourceMap||(L.inlineSources&&Xt(e.Diagnostics.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"inlineSources"),L.sourceRoot&&Xt(e.Diagnostics.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"sourceRoot"));L.out&&L.outFile&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"out","outFile");!L.mapRoot||L.sourceMap||L.declarationMap||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"mapRoot","sourceMap","declarationMap");L.declarationDir&&(e.getEmitDeclarations(L)||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationDir","declaration","composite"),t&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"declarationDir",L.out?"out":"outFile"));L.declarationMap&&!e.getEmitDeclarations(L)&&Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationMap","declaration","composite");L.lib&&L.noLib&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"lib","noLib");L.noImplicitUseStrict&&e.getStrictOptionValue(L,"alwaysStrict")&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"noImplicitUseStrict","alwaysStrict");var d=L.target||0,p=e.find(_,(function(t){return e.isExternalModule(t)&&!t.isDeclarationFile}));if(L.isolatedModules){L.module===e.ModuleKind.None&&d<2&&Xt(e.Diagnostics.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),!1===L.preserveConstEnums&&Xt(e.Diagnostics.Option_preserveConstEnums_cannot_be_disabled_when_isolatedModules_is_enabled,"preserveConstEnums","isolatedModules");var f=e.find(_,(function(t){return!e.isExternalModule(t)&&!e.isSourceFileJS(t)&&!t.isDeclarationFile&&6!==t.scriptKind}));if(f){var m=e.getErrorSpanForNode(f,f);ae.add(e.createFileDiagnostic(f,m.start,m.length,e.Diagnostics._0_cannot_be_compiled_under_isolatedModules_because_it_is_considered_a_global_script_file_Add_an_import_export_or_an_empty_export_statement_to_make_it_a_module,e.getBaseFileName(f.fileName)))}}else if(p&&d<2&&L.module===e.ModuleKind.None){m=e.getErrorSpanForNode(p,p.externalModuleIndicator);ae.add(e.createFileDiagnostic(p,m.start,m.length,e.Diagnostics.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(t&&!L.emitDeclarationOnly)if(L.module&&L.module!==e.ModuleKind.AMD&&L.module!==e.ModuleKind.System)Xt(e.Diagnostics.Only_amd_and_system_modules_are_supported_alongside_0,L.out?"out":"outFile","module");else if(void 0===L.module&&p){m=e.getErrorSpanForNode(p,p.externalModuleIndicator);ae.add(e.createFileDiagnostic(p,m.start,m.length,e.Diagnostics.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,L.out?"out":"outFile"))}L.resolveJsonModule&&(e.getEmitModuleResolutionKind(L)!==e.ModuleResolutionKind.NodeJs?Xt(e.Diagnostics.Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy,"resolveJsonModule"):e.hasJsonModuleEmitEnabled(L)||Xt(e.Diagnostics.Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext,"resolveJsonModule","module"));if(L.outDir||L.sourceRoot||L.mapRoot){var g=We();L.outDir&&""===g&&_.some((function(t){return e.getRootLength(t.fileName)>1}))&&Xt(e.Diagnostics.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}L.useDefineForClassFields&&0===d&&Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_target_is_ES3,"useDefineForClassFields");L.checkJs&&!e.getAllowJSCompilerOption(L)&&ae.add(e.createCompilerDiagnostic(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"));L.emitDeclarationOnly&&(e.getEmitDeclarations(L)||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite"),L.noEmit&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"emitDeclarationOnly","noEmit"));L.emitDecoratorMetadata&&!L.experimentalDecorators&&Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators");L.jsxFactory?(L.reactNamespace&&Xt(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),4!==L.jsx&&5!==L.jsx||Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",e.inverseJsxOptionMap.get(""+L.jsx)),e.parseIsolatedEntityName(L.jsxFactory,d)||Qt("jsxFactory",e.Diagnostics.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,L.jsxFactory)):L.reactNamespace&&!e.isIdentifierText(L.reactNamespace,d)&&Qt("reactNamespace",e.Diagnostics.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,L.reactNamespace);L.jsxFragmentFactory&&(L.jsxFactory||Xt(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),4!==L.jsx&&5!==L.jsx||Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",e.inverseJsxOptionMap.get(""+L.jsx)),e.parseIsolatedEntityName(L.jsxFragmentFactory,d)||Qt("jsxFragmentFactory",e.Diagnostics.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,L.jsxFragmentFactory));L.reactNamespace&&(4!==L.jsx&&5!==L.jsx||Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",e.inverseJsxOptionMap.get(""+L.jsx)));L.jsxImportSource&&2===L.jsx&&Xt(e.Diagnostics.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",e.inverseJsxOptionMap.get(""+L.jsx));if(!L.noEmit&&!L.suppressOutputPathCheck){var h=$e(),v=new e.Set;e.forEachEmittedFile(h,(function(e){L.emitDeclarationOnly||b(e.jsFilePath,v),b(e.declarationFilePath,v)}))}function b(t,r){if(t){var n=Ke(t);if(ke.has(n)){var i=void 0;L.configFilePath||(i=e.chainDiagnosticMessages(void 0,e.Diagnostics.Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig)),i=e.chainDiagnosticMessages(i,e.Diagnostics.Cannot_write_file_0_because_it_would_overwrite_input_file,t),nr(t,e.createCompilerDiagnosticFromMessageChain(i))}var a=ee.useCaseSensitiveFileNames()?n:e.toFileNameLowerCase(n);r.has(a)?nr(t,e.createCompilerDiagnostic(e.Diagnostics.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,t)):r.add(a)}}}(),e.performance.mark("afterProgram"),e.performance.measure("Program","beforeProgram","afterProgram"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),ze;function Ue(t,r,n){if(!t.length)return e.emptyArray;var i=e.getNormalizedAbsolutePath(r.originalFileName,oe),a=Je(r);null===e.tracing||void 0===e.tracing||e.tracing.push("program","resolveModuleNamesWorker",{containingFileName:i}),e.performance.mark("beforeResolveModule");var o=Q(t,i,n,a);return e.performance.mark("afterResolveModule"),e.performance.measure("ResolveModule","beforeResolveModule","afterResolveModule"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),o}function qe(t,r){if(!t.length)return[];var n=e.isString(r)?r:e.getNormalizedAbsolutePath(r.originalFileName,oe),i=e.isString(r)?void 0:Je(r);null===e.tracing||void 0===e.tracing||e.tracing.push("program","resolveTypeReferenceDirectiveNamesWorker",{containingFileName:n}),e.performance.mark("beforeResolveTypeReference");var a=Z(t,n,i);return e.performance.mark("afterResolveTypeReference"),e.performance.measure("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),null===e.tracing||void 0===e.tracing||e.tracing.pop(),a}function Je(t){var r=Pt(t.originalFileName);if(r||!e.isDeclarationFileName(t.originalFileName))return r;var n=Ve(t.originalFileName,t.path);if(n)return n;if(ee.realpath&&L.preserveSymlinks&&(e.stringContains(t.originalFileName,e.nodeModulesPathPart)||e.stringContains(t.originalFileName,e.ohModulesPathPart))){var i=ee.realpath(t.originalFileName),a=Ke(i);return a===t.path?void 0:Ve(i,a)}}function Ve(t,r){var n=Ft(t);return e.isString(n)?Pt(n):n?It((function(t){var n=e.outFile(t.commandLine.options);if(n)return Ke(n)===r?t:void 0})):void 0}function He(t){if(e.containsPath(ie,t.fileName,!1)){var r=e.getBaseFileName(t.fileName);if("lib.d.ts"===r||"lib.es6.d.ts"===r)return 0;var n=e.removeSuffix(e.removePrefix(r,"lib."),".d.ts"),i=e.libs.indexOf(n);if(-1!==i)return i+1}return e.libs.length+2}function Ke(t){return e.toPath(t,oe,zt)}function We(){if(void 0===N){var t=e.filter(_,(function(t){return e.sourceFileMayBeEmitted(t,ze)}));N=e.getCommonSourceDirectory(L,(function(){return e.mapDefined(t,(function(e){return e.isDeclarationFile?void 0:e.fileName}))}),oe,zt,(function(r){return function(t,r){for(var n=!0,i=ee.getCanonicalFileName(e.getNormalizedAbsolutePath(r,oe)),a=0,o=t;a<o.length;a++){var s=o[a];if(!s.isDeclarationFile)0!==ee.getCanonicalFileName(e.getNormalizedAbsolutePath(s.fileName,oe)).indexOf(i)&&(Ht(s,e.Diagnostics.File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files,[s.fileName,r]),n=!1)}return n}(t,r)}))}return N}function Ge(t,r){if(0===Ce&&!r.ambientModuleNames.length)return Ue(t,r,void 0);var n,i,a,o=z&&z.getSourceFile(r.fileName);if(o!==r&&r.resolvedModules){for(var s=[],c=0,l=t;c<l.length;c++){var u=l[c],d=r.resolvedModules.get(u);s.push(d)}return s}for(var p={},f=0;f<t.length;f++){u=t[f];if(r===o&&!ue(o.path)){var m=e.getResolvedModule(o,u);if(m){e.isTraceEnabled(L,ee)&&e.trace(ee,e.Diagnostics.Reusing_resolution_of_module_0_to_file_1_from_old_program,u,e.getNormalizedAbsolutePath(r.originalFileName,oe)),(i||(i=new Array(t.length)))[f]=m,(a||(a=[])).push(u);continue}}var g=!1;e.contains(r.ambientModuleNames,u)?(g=!0,e.isTraceEnabled(L,ee)&&e.trace(ee,e.Diagnostics.Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1,u,e.getNormalizedAbsolutePath(r.originalFileName,oe))):g=y(u),g?(i||(i=new Array(t.length)))[f]=p:(n||(n=[])).push(u)}var _=n&&n.length?Ue(n,r,a):e.emptyArray;if(!i)return e.Debug.assert(_.length===t.length),_;var h=0;for(f=0;f<i.length;f++)i[f]?i[f]===p&&(i[f]=void 0):(i[f]=_[h],h++);return e.Debug.assert(h===_.length),i;function y(t){var r=e.getResolvedModule(o,t),n=r&&z.getSourceFile(r.resolvedFileName);if(r&&n)return!1;var i=U.get(t);return!!i&&(e.isTraceEnabled(L,ee)&&e.trace(ee,e.Diagnostics.Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified,t,i),!0)}}function $e(t){return{getPrependNodes:Xe,getCanonicalFileName:zt,getCommonSourceDirectory:ze.getCommonSourceDirectory,getCompilerOptions:ze.getCompilerOptions,getCurrentDirectory:function(){return oe},getNewLine:function(){return ee.getNewLine()},getSourceFile:ze.getSourceFile,getSourceFileByPath:ze.getSourceFileByPath,getSourceFiles:ze.getSourceFiles,getLibFileFromReference:ze.getLibFileFromReference,isSourceFileFromExternalLibrary:Qe,getResolvedProjectReferenceToRedirect:Pt,getProjectReferenceRedirect:Ct,isSourceOfProjectReferenceRedirect:Ot,getSymlinkCache:ar,writeFile:t||function(e,t,r,n,i){return ee.writeFile(e,t,r,n,i)},isEmitBlocked:tt,readFile:function(e){return ee.readFile(e)},fileExists:function(t){var r=Ke(t);return!!nt(r)||!e.contains(fe,r)&&ee.fileExists(t)},useCaseSensitiveFileNames:function(){return ee.useCaseSensitiveFileNames()},getProgramBuildInfo:function(){return ze.getProgramBuildInfo&&ze.getProgramBuildInfo()},getSourceFileFromReference:function(e,t){return ze.getSourceFileFromReference(e,t)},redirectTargetsMap:be,getFileIncludeReasons:ze.getFileIncludeReasons}}function Ye(){return me}function Xe(){return D(B,(function(e,t){var r;return null===(r=me[t])||void 0===r?void 0:r.commandLine}),(function(e){var t=Ke(e),r=nt(t);return r?r.text:ke.has(t)?void 0:ee.readFile(t)}))}function Qe(e){return!!$.get(e.path)}function Ze(){return P||(P=e.createTypeChecker(ze,!0))}function et(){return I||(I=e.createTypeChecker(ze,!1))}function tt(e){return le.has(Ke(e))}function rt(e){return nt(Ke(e))}function nt(e){return ke.get(e)||void 0}function it(t,r,n){return t?r(t,n):e.sortAndDeduplicateDiagnostics(e.flatMap(ze.getSourceFiles(),(function(e){return n&&n.throwIfCancellationRequested(),r(e,n)})))}function at(t){var r;if(e.skipTypeChecking(t,L,ze)||t.isDeclarationFile&&L.needDoArkTsLinter)return e.emptyArray;var n=ae.getDiagnostics(t.fileName);return(null===(r=t.commentDirectives)||void 0===r?void 0:r.length)?dt(t,t.commentDirectives,n).diagnostics:n}function ot(t){return e.isSourceFileJS(t)?(t.additionalSyntacticDiagnostics||(t.additionalSyntacticDiagnostics=function(t){return st((function(){var r=[];return n(t,t),e.forEachChildRecursively(t,n,i),r;function n(t,n){switch(n.kind){case 161:case 164:case 166:if(n.questionToken===t)return r.push(s(t,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 165:case 167:case 168:case 169:case 209:case 253:case 210:case 251:if(n.type===t)return r.push(s(t,e.Diagnostics.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch(t.kind){case 265:if(t.isTypeOnly)return r.push(s(n,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 270:if(t.isTypeOnly)return r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 263:return r.push(s(t,e.Diagnostics.import_can_only_be_used_in_TypeScript_files)),"skip";case 269:if(t.isExportEquals)return r.push(s(t,e.Diagnostics.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 289:if(117===t.token)return r.push(s(t,e.Diagnostics.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 256:var i=e.tokenToString(118);return e.Debug.assertIsDefined(i),r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,i)),"skip";case 259:var a=16&t.flags?e.tokenToString(141):e.tokenToString(140);return e.Debug.assertIsDefined(a),r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,a)),"skip";case 257:return r.push(s(t,e.Diagnostics.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 258:var o=e.Debug.checkDefined(e.tokenToString(92));return r.push(s(t,e.Diagnostics._0_declarations_can_only_be_used_in_TypeScript_files,o)),"skip";case 227:return r.push(s(t,e.Diagnostics.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 226:return r.push(s(t.type,e.Diagnostics.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 207:e.Debug.fail()}}function i(t,n){switch(n.decorators!==t||L.experimentalDecorators||r.push(s(n,e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning)),n.kind){case 254:case 223:case 255:case 166:case 167:case 168:case 169:case 209:case 253:case 210:if(t===n.typeParameters)return r.push(o(t,e.Diagnostics.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 234:if(t===n.modifiers)return a(n.modifiers,234===n.kind),"skip";break;case 164:if(t===n.modifiers){for(var i=0,c=t;i<c.length;i++){var l=c[i];124!==l.kind&&r.push(s(l,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,e.tokenToString(l.kind)))}return"skip"}break;case 161:if(t===n.modifiers)return r.push(o(t,e.Diagnostics.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 204:case 205:case 225:case 277:case 278:case 206:if(t===n.typeArguments)return r.push(o(t,e.Diagnostics.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip"}}function a(t,n){for(var i=0,a=t;i<a.length;i++){var o=a[i];switch(o.kind){case 85:if(n)continue;case 123:case 121:case 122:case 143:case 134:case 126:r.push(s(o,e.Diagnostics.The_0_modifier_can_only_be_used_in_TypeScript_files,e.tokenToString(o.kind)))}}}function o(r,n,i,a,o){var s=r.pos;return e.createFileDiagnostic(t,s,r.end-s,n,i,a,o)}function s(r,n,i,a,o){return e.createDiagnosticForNodeInSourceFile(t,r,n,i,a,o)}}))}(t)),e.concatenate(t.additionalSyntacticDiagnostics,t.parseDiagnostics)):t.parseDiagnostics}function st(t){try{return t()}catch(t){throw t instanceof e.OperationCanceledException&&(I=void 0,P=void 0),t}}function ct(t,r){return e.concatenate(E(lt(t,r),L),at(t))}function lt(e,t){return mt(e,t,J,ut)}function ut(t,r){return st((function(){var n=!!L.needDoArkTsLinter;if(n&&(L.skipLibCheck=!1),e.skipTypeChecking(t,L,ze))return e.emptyArray;var i=Ze();e.Debug.assert(!!t.bindDiagnostics);var a=e.isCheckJsEnabledForFile(t,L),o=!(!!t.checkJsDirective&&!1===t.checkJsDirective.enabled)&&(3===t.scriptKind||4===t.scriptKind||5===t.scriptKind||a||7===t.scriptKind||8===t.scriptKind),s=o?t.bindDiagnostics:e.emptyArray,c=o?i.getDiagnostics(t,r):e.emptyArray;return function(t,r){for(var n,i=[],a=2;a<arguments.length;a++)i[a-2]=arguments[a];var o=e.flatten(i);if(!r||!(null===(n=t.commentDirectives)||void 0===n?void 0:n.length))return o;for(var s=dt(t,t.commentDirectives,o),c=s.diagnostics,l=s.directives,u=0,d=l.getUnusedExpectations();u<d.length;u++){var p=d[u];c.push(e.createDiagnosticForRange(t,p.range,e.Diagnostics.Unused_ts_expect_error_directive))}return c}(t,o,s,n?function(t){if(t){var r=t.filter((function(t){var r,n,i=t.messageText!==(L.isCompatibleVersion?e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_about_to_be_forbidden.message:e.Diagnostics.Importing_ArkTS_files_in_JS_and_TS_files_is_forbidden.message),a=void 0!==t.file&&-1!==e.normalizePath(t.file.fileName).indexOf("/oh_modules/");return!(3===(null===(r=t.file)||void 0===r?void 0:r.scriptKind)&&(null===(n=t.file)||void 0===n?void 0:n.isDeclarationFile)&&i||a)}));return r}return e.emptyArray}(c):c,a?t.jsDocDiagnostics:void 0)}))}function dt(t,r,n){var i=e.createCommentDirectivesMap(t,r),a=n.filter((function(t){return-1===function(t,r){var n=t.file,i=t.start;if(!n)return-1;var a=e.getLineStarts(n),o=e.computeLineAndCharacterOfPosition(a,i).line-1;for(;o>=0;){if(r.markUsed(o))return o;var s=n.text.slice(a[o],a[o+1]).trim();if(""!==s&&!/^(\s*)\/\/(.*)$/.test(s))return-1;o--}return-1}(t,i)}));return{diagnostics:a,directives:i}}function pt(e,t){return mt(e,t,V,ft)}function ft(t,r){return st((function(){var n=Ze().getEmitResolver(t,r);return e.getDeclarationDiagnostics($e(e.noop),n,t)||e.emptyArray}))}function mt(t,r,n,i){var a,o=t?null===(a=n.perFile)||void 0===a?void 0:a.get(t.path):n.allDiagnostics;if(o)return o;var s=i(t,r);return t?(n.perFile||(n.perFile=new e.Map)).set(t.path,s):n.allDiagnostics=s,s}function gt(e,t){return e.isDeclarationFile?[]:pt(e,t)}function _t(t,r,n,i){xt(e.normalizePath(t),r,n,void 0,i)}function ht(e,t){return e.fileName===t.fileName}function yt(e,t){return 78===e.kind?78===t.kind&&e.escapedText===t.escapedText:10===t.kind&&e.text===t.text}function vt(t,r){var n=e.factory.createStringLiteral(t),i=e.factory.createImportDeclaration(void 0,void 0,void 0,n);return e.addEmitFlags(i,67108864),e.setParent(n,i),e.setParent(i,r),n.flags&=-9,i.flags&=-9,n}function bt(t){if(!t.imports){var r,n,i,a=e.isSourceFileJS(t),o=e.isExternalModule(t);if((L.isolatedModules||o)&&!t.isDeclarationFile){L.importHelpers&&(r=[vt(e.externalHelpersModuleNameText,t)]);var s=e.getJSXRuntimeImport(e.getJSXImplicitImportBase(L,t),L);s&&(r||(r=[])).push(vt(s,t))}for(var c=0,l=t.statements;c<l.length;c++){u(l[c],!1)}return(1048576&t.flags||a)&&function(t){var n=/import|require/g;for(;null!==n.exec(t.text);){var i=d(t,n.lastIndex);a&&e.isRequireCall(i,!0)||e.isImportCall(i)&&1===i.arguments.length&&e.isStringLiteralLike(i.arguments[0])?r=e.append(r,i.arguments[0]):e.isLiteralImportTypeNode(i)&&(r=e.append(r,i.argument.literal))}}(t),t.imports=r||e.emptyArray,t.moduleAugmentations=n||e.emptyArray,void(t.ambientModuleNames=i||e.emptyArray)}function u(a,s){if(e.isAnyImportOrReExport(a)){var c=e.getExternalModuleName(a);!(c&&e.isStringLiteral(c)&&c.text)||s&&e.isExternalModuleNameRelative(c.text)||(r=e.append(r,c))}else if(e.isModuleDeclaration(a)&&e.isAmbientModule(a)&&(s||e.hasSyntacticModifier(a,2)||t.isDeclarationFile)){var l=e.getTextOfIdentifierOrLiteral(a.name);if(o||s&&!e.isExternalModuleNameRelative(l))(n||(n=[])).push(a.name);else if(!s){t.isDeclarationFile&&(i||(i=[])).push(l);var d=a.body;if(d)for(var p=0,f=d.statements;p<f.length;p++){u(f[p],!0)}}}}function d(t,r){for(var n=t,i=function(e){if(e.pos<=r&&(r<e.end||r===e.end&&1===e.kind))return e};;){var o=a&&e.hasJSDocNodes(n)&&e.forEach(n.jsDoc,i)||e.forEachChild(n,i);if(!o)return n;n=o}}}function kt(t,r,n,i){if(e.hasExtension(t)){var a=ee.getCanonicalFileName(t);if(!L.allowNonTsExtensions&&!e.forEach(ce,(function(t){return e.fileExtensionIs(a,t)}))&&!e.fileExtensionIs(a,".ets"))return void(n&&(e.hasJSFileExtension(a)?n(e.Diagnostics.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,t):n(e.Diagnostics.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,t,"'"+se.join("', '")+"'")));var o=r(t);if(n)if(o)v(i)&&a===ee.getCanonicalFileName(nt(i.file).fileName)&&n(e.Diagnostics.A_file_cannot_have_a_reference_to_itself);else{var s=Ct(t);s?n(e.Diagnostics.Output_file_0_has_not_been_built_from_source_file_1,s,t):n(e.Diagnostics.File_0_not_found,t)}return o}var c=L.allowNonTsExtensions&&r(t);if(c)return c;if(!n||!L.allowNonTsExtensions){var l=e.forEach(se,(function(e){return r(t+e)}));return n&&!l&&n(e.Diagnostics.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,t,"'"+se.join("', '")+"'"),l}n(e.Diagnostics.File_0_not_found,t)}function xt(e,t,r,n,i){kt(e,(function(e){return Dt(e,Ke(e),t,r,i,n)}),(function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return Vt(void 0,i,e,t)}),i)}function Et(e,t){return xt(e,!1,!1,void 0,t)}function St(t,r,n){!v(n)&&e.some(q.get(r.path),v)?Vt(r,n,e.Diagnostics.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[r.fileName,t]):Vt(r,n,e.Diagnostics.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[t,r.fileName])}function Dt(t,r,n,i,a,o){null===e.tracing||void 0===e.tracing||e.tracing.push("program","findSourceFile",{fileName:t,isDefaultLib:n||void 0,fileIncludeKind:e.FileIncludeKind[a.kind]});var s=function(t,r,n,i,a,o){if(Ee){var s=Ft(t),c=e.isOhpm(L.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart;if(!s&&ee.realpath&&L.preserveSymlinks&&e.isDeclarationFileName(t)&&e.stringContains(t,c)){var l=ee.realpath(t);l!==t&&(s=Ft(l))}if(s){var u=e.isString(s)?Dt(s,Ke(s),n,i,a,o):void 0;return u&&Tt(u,r,void 0),u}}var d,p=t;if(ke.has(r)){var f=ke.get(r);if(wt(f||void 0,a),f&&L.forceConsistentCasingInFileNames){var _=f.fileName;Ke(_)!==Ke(t)&&(t=Ct(t)||t),e.getNormalizedAbsolutePathWithoutRoot(_,oe)!==e.getNormalizedAbsolutePathWithoutRoot(t,oe)&&St(t,f,a)}return f&&$.get(f.path)&&0===W?($.set(f.path,!1),L.noResolve||(Mt(f,n),Lt(f)),L.noLib||Bt(f),G.set(f.path,!1),Ut(f)):f&&G.get(f.path)&&W<K&&(G.set(f.path,!1),Ut(f)),f||void 0}if(v(a)&&!Ee){var h=At(t);if(h){if(e.outFile(h.commandLine.options))return;var y=Nt(h,t);t=y,d=Ke(y)}}var b=ee.getSourceFile(t,L.target,(function(r){return Vt(void 0,a,e.Diagnostics.Cannot_read_file_0_Colon_1,[t,r])}),Ae);if(o){var k=e.packageIdToString(o),x=ye.get(k);if(x){var E=function(e,t,r,n,i,a){var o=Object.create(e);return o.fileName=r,o.path=n,o.resolvedPath=i,o.originalFileName=a,o.redirectInfo={redirectTarget:e,unredirected:t},$.set(n,W>0),Object.defineProperties(o,{id:{get:function(){return this.redirectInfo.redirectTarget.id},set:function(e){this.redirectInfo.redirectTarget.id=e}},symbol:{get:function(){return this.redirectInfo.redirectTarget.symbol},set:function(e){this.redirectInfo.redirectTarget.symbol=e}}}),o}(x,b,t,r,Ke(t),p);return be.add(x.path,t),Tt(E,r,d),wt(E,a),ve.set(r,o.name),g.push(E),E}b&&(ye.set(k,b),ve.set(r,o.name))}if(Tt(b,r,d),b){if($.set(r,W>0),b.fileName=t,b.path=r,b.resolvedPath=Ke(t),b.originalFileName=p,wt(b,a),ee.useCaseSensitiveFileNames()){var S=e.toFileNameLowerCase(r),D=xe.get(S);D?St(t,D,a):xe.set(S,b)}re=re||b.hasNoDefaultLib&&!i,L.noResolve||(Mt(b,n),Lt(b)),L.noLib||Bt(b),Ut(b),n?m.push(b):g.push(b)}return b}(t,r,n,i,a,o);return null===e.tracing||void 0===e.tracing||e.tracing.pop(),s}function wt(e,t){e&&q.add(e.path,t)}function Tt(e,t,r){r?(ke.set(r,e),ke.set(t,e||!1)):ke.set(t,e)}function Ct(e){var t=At(e);return t&&Nt(t,e)}function At(t){if(me&&me.length&&!e.isDeclarationFileName(t)&&!e.fileExtensionIs(t,".json"))return Pt(t)}function Nt(t,r){var n=e.outFile(t.commandLine.options);return n?e.changeExtension(n,".d.ts"):e.getOutputDeclarationFileName(r,t.commandLine,!ee.useCaseSensitiveFileNames())}function Pt(t){void 0===_e&&(_e=new e.Map,It((function(e){Ke(L.configFilePath)!==e.sourceFile.path&&e.commandLine.fileNames.forEach((function(t){return _e.set(Ke(t),e.sourceFile.path)}))})));var r=_e.get(Ke(t));return r&&Rt(r)}function It(t){return e.forEachResolvedProjectReference(me,t)}function Ft(t){if(e.isDeclarationFileName(t))return void 0===he&&(he=new e.Map,It((function(t){var r=e.outFile(t.commandLine.options);if(r){var n=e.changeExtension(r,".d.ts");he.set(Ke(n),!0)}else{var i=e.memoize((function(){return e.getCommonSourceDirectoryOfConfig(t.commandLine,!ee.useCaseSensitiveFileNames())}));e.forEach(t.commandLine.fileNames,(function(r){if(!e.isDeclarationFileName(r)&&!e.fileExtensionIs(r,".json")){var n=e.getOutputDeclarationFileName(r,t.commandLine,!ee.useCaseSensitiveFileNames(),i);he.set(Ke(n),r)}}))}}))),he.get(Ke(t))}function Ot(e){return Ee&&!!Pt(e)}function Rt(e){if(ge)return ge.get(e)||void 0}function Mt(r,n){e.forEach(r.referencedFiles,(function(i,a){xt(t(i.fileName,r.fileName),n,!1,void 0,{kind:e.FileIncludeKind.ReferenceFile,file:r.path,index:a})}))}function Lt(t){var r=e.map(t.typeReferenceDirectives,(function(t){return e.toFileNameLowerCase(t.fileName)}));if(r)for(var n=qe(r,t),i=0;i<r.length;i++){var a=t.typeReferenceDirectives[i],o=n[i],s=e.toFileNameLowerCase(a.fileName);e.setResolvedTypeReferenceDirective(t,s,o),jt(s,o,{kind:e.FileIncludeKind.TypeReferenceDirective,file:t.path,index:i})}}function jt(t,r,n){null===e.tracing||void 0===e.tracing||e.tracing.push("program","processTypeReferenceDirective",{directive:t,hasResolved:!!Ge,refKind:n.kind,refPath:v(n)?n.file:void 0}),function(t,r,n){var i=H.get(t);if(i&&i.primary)return;var a=!0;if(r){if(r.isExternalLibraryImport&&W++,r.primary)xt(r.resolvedFileName,!1,!1,r.packageId,n);else if(i){if(r.resolvedFileName!==i.resolvedFileName){var o=ee.readFile(r.resolvedFileName),s=rt(i.resolvedFileName);o!==s.text&&Vt(s,n,e.Diagnostics.Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict,[t,r.resolvedFileName,i.resolvedFileName])}a=!1}else xt(r.resolvedFileName,!1,!1,r.packageId,n);r.isExternalLibraryImport&&W--}else Vt(void 0,n,e.Diagnostics.Cannot_find_type_definition_file_for_0,[t]);a&&H.set(t,r)}(t,r,n),null===e.tracing||void 0===e.tracing||e.tracing.pop()}function Bt(t){e.forEach(t.libReferenceDirectives,(function(r,n){var i=e.toFileNameLowerCase(r.fileName),a=e.libMap.get(i);if(a)_t(e.combinePaths(ie,a),!0,!0,{kind:e.FileIncludeKind.LibReferenceDirective,file:t.path,index:n});else{var o=e.removeSuffix(e.removePrefix(i,"lib."),".d.ts"),s=e.getSpellingSuggestion(o,e.libs,e.identity),c=s?e.Diagnostics.Cannot_find_lib_definition_for_0_Did_you_mean_1:e.Diagnostics.Cannot_find_lib_definition_for_0;(O||(O=[])).push({kind:0,reason:{kind:e.FileIncludeKind.LibReferenceDirective,file:t.path,index:n},diagnostic:c,args:[i,s]})}}))}function zt(e){return ee.getCanonicalFileName(e)}function Ut(t){if(bt(t),t.imports.length||t.moduleAugmentations.length){var r=C(t),n=Ge(r,t);e.Debug.assert(n.length===r.length);for(var i=0;i<r.length;i++){var a=n[i];if(e.setResolvedModule(t,r[i],a),a){var o=a.isExternalLibraryImport,s=!e.resolutionExtensionIsTSOrJson(a.extension),c=o&&s,l=a.resolvedFileName;o&&W++;var u=c&&W>K,d=l&&!T(L,a)&&!L.noResolve&&i<t.imports.length&&!u&&!(s&&!e.getAllowJSCompilerOption(L))&&(e.isInJSFile(t.imports[i])||!(4194304&t.imports[i].flags));if(u)G.set(t.path,!0);else if(d){Dt(l,Ke(l),!1,!1,{kind:e.FileIncludeKind.Import,file:t.path,index:i},a.packageId)}o&&W--}}}else t.resolvedModules=void 0}function qt(t){ge||(ge=new e.Map);var r,n,i=w(t),a=Ke(i),o=ge.get(a);if(void 0!==o)return o||void 0;if(ee.getParsedCommandLine){if(!(r=ee.getParsedCommandLine(i)))return Tt(void 0,a,void 0),void ge.set(a,!1);n=e.Debug.checkDefined(r.options.configFile),e.Debug.assert(!n.path||n.path===a),Tt(n,a,void 0)}else{var s=e.getNormalizedAbsolutePath(e.getDirectoryPath(i),ee.getCurrentDirectory());if(Tt(n=ee.getSourceFile(i,100),a,void 0),void 0===n)return void ge.set(a,!1);r=e.parseJsonSourceFileConfigFileContent(n,te,s,void 0,i)}n.fileName=i,n.path=a,n.resolvedPath=a,n.originalFileName=i;var c={commandLine:r,sourceFile:n};return ge.set(a,c),r.projectReferences&&(c.references=r.projectReferences.map(qt)),c}function Jt(t,r,n,a){var o,s,c,l=v(r)?r:void 0;t&&(null===(o=q.get(t.path))||void 0===o||o.forEach(m)),r&&m(r),l&&1===(null==s?void 0:s.length)&&(s=void 0);var u=l&&k(nt,l),d=s&&e.chainDiagnosticMessages(s,e.Diagnostics.The_file_is_in_the_program_because_Colon),p=t&&e.explainIfFileIsRedirect(t),f=e.chainDiagnosticMessages.apply(void 0,i([p?d?i([d],p):p:d,n],a||e.emptyArray));return u&&b(u)?e.createFileDiagnosticFromMessageChain(u.file,u.pos,u.end-u.pos,f,c):e.createCompilerDiagnosticFromMessageChain(f,c);function m(t){(s||(s=[])).push(e.fileIncludeReasonToDiagnostics(ze,t)),!l&&v(t)?l=t:l!==t&&(c=e.append(c,function(t){if(v(t)){var r,n=k(nt,t);switch(t.kind){case e.FileIncludeKind.Import:r=e.Diagnostics.File_is_included_via_import_here;break;case e.FileIncludeKind.ReferenceFile:r=e.Diagnostics.File_is_included_via_reference_here;break;case e.FileIncludeKind.TypeReferenceDirective:r=e.Diagnostics.File_is_included_via_type_library_reference_here;break;case e.FileIncludeKind.LibReferenceDirective:r=e.Diagnostics.File_is_included_via_library_reference_here;break;default:e.Debug.assertNever(t)}return b(n)?e.createFileDiagnostic(n.file,n.pos,n.end-n.pos,r):void 0}if(!L.configFile)return;var i,a;switch(t.kind){case e.FileIncludeKind.RootFile:if(!L.configFile.configFileSpecs)return;var o=e.getNormalizedAbsolutePath(M[t.index],oe),s=e.getMatchedFileSpec(ze,o);if(s){i=e.getTsConfigPropArrayElementValue(L.configFile,"files",s),a=e.Diagnostics.File_is_matched_by_files_list_specified_here;break}var c=e.getMatchedIncludeSpec(ze,o);if(!c)return;i=e.getTsConfigPropArrayElementValue(L.configFile,"include",c),a=e.Diagnostics.File_is_matched_by_include_pattern_specified_here;break;case e.FileIncludeKind.SourceFromProjectReference:case e.FileIncludeKind.OutputFromProjectReference:var l=e.Debug.checkDefined(null==me?void 0:me[t.index]),u=y(B,me,(function(e,t,r){return e===l?{sourceFile:(null==t?void 0:t.sourceFile)||L.configFile,index:r}:void 0}));if(!u)return;var d=u.sourceFile,p=u.index,f=e.firstDefined(e.getTsConfigPropArray(d,"references"),(function(t){return e.isArrayLiteralExpression(t.initializer)?t.initializer:void 0}));return f&&f.elements.length>p?e.createDiagnosticForNodeInSourceFile(d,f.elements[p],t.kind===e.FileIncludeKind.OutputFromProjectReference?e.Diagnostics.File_is_output_from_referenced_project_specified_here:e.Diagnostics.File_is_source_from_referenced_project_specified_here):void 0;case e.FileIncludeKind.AutomaticTypeDirectiveFile:if(!L.types)return;i=Yt("types",t.typeReference),a=e.Diagnostics.File_is_entry_point_of_type_library_specified_here;break;case e.FileIncludeKind.LibFile:if(void 0!==t.index){i=Yt("lib",L.lib[t.index]),a=e.Diagnostics.File_is_library_specified_here;break}var m=e.forEachEntry(e.targetOptionDeclaration.type,(function(e,t){return e===L.target?t:void 0}));i=m?(g=m,(_=Gt("target"))&&e.firstDefined(_,(function(t){return e.isStringLiteral(t.initializer)&&t.initializer.text===g?t.initializer:void 0}))):void 0,a=e.Diagnostics.File_is_default_library_for_target_specified_here;break;default:e.Debug.assertNever(t)}var g,_;return i&&e.createDiagnosticForNodeInSourceFile(L.configFile,i,a)}(t))),t===r&&(r=void 0)}}function Vt(e,t,r,n){(O||(O=[])).push({kind:1,file:e&&e.path,fileProcessingReason:t,diagnostic:r,args:n})}function Ht(e,t,r){ae.add(Jt(e,void 0,t,r))}function Kt(t,r,n,i,a,o){for(var s=!0,c=0,l=$t();c<l.length;c++){var u=l[c];if(e.isObjectLiteralExpression(u.initializer))for(var d=0,p=e.getPropertyAssignment(u.initializer,t);d<p.length;d++){var f=p[d].initializer;e.isArrayLiteralExpression(f)&&f.elements.length>r&&(ae.add(e.createDiagnosticForNodeInSourceFile(L.configFile,f.elements[r],n,i,a,o)),s=!1)}}s&&ae.add(e.createCompilerDiagnostic(n,i,a,o))}function Wt(t,r,n,i){for(var a=!0,o=0,s=$t();o<s.length;o++){var c=s[o];e.isObjectLiteralExpression(c.initializer)&&rr(c.initializer,t,r,void 0,n,i)&&(a=!1)}a&&ae.add(e.createCompilerDiagnostic(n,i))}function Gt(t){var r=tr();return r&&e.getPropertyAssignment(r,t)}function $t(){return Gt("paths")||e.emptyArray}function Yt(t,r){var n=tr();return n&&e.getPropertyArrayElementValue(n,t,r)}function Xt(e,t,r,n){er(!0,t,r,e,t,r,n)}function Qt(e,t,r){er(!1,e,void 0,t,r)}function Zt(t,r,n,i,a){var o=e.firstDefined(e.getTsConfigPropArray(t||L.configFile,"references"),(function(t){return e.isArrayLiteralExpression(t.initializer)?t.initializer:void 0}));o&&o.elements.length>r?ae.add(e.createDiagnosticForNodeInSourceFile(t||L.configFile,o.elements[r],n,i,a)):ae.add(e.createCompilerDiagnostic(n,i,a))}function er(t,r,n,i,a,o,s){var c=tr();(!c||!rr(c,t,r,n,i,a,o,s))&&ae.add(e.createCompilerDiagnostic(i,a,o,s))}function tr(){if(void 0===Y){Y=!1;var t=e.getTsConfigObjectLiteralExpression(L.configFile);if(t)for(var r=0,n=e.getPropertyAssignment(t,"compilerOptions");r<n.length;r++){var i=n[r];if(e.isObjectLiteralExpression(i.initializer)){Y=i.initializer;break}}}return Y||void 0}function rr(t,r,n,i,a,o,s,c){for(var l=e.getPropertyAssignment(t,n,i),u=0,d=l;u<d.length;u++){var p=d[u];ae.add(e.createDiagnosticForNodeInSourceFile(L.configFile,r?p.name:p.initializer,a,o,s,c))}return!!l.length}function nr(e,t){le.set(Ke(e),!0),ae.add(t)}function ir(t,r){return 0===e.comparePaths(t,r,oe,!ee.useCaseSensitiveFileNames())}function ar(){return ee.getSymlinkCache?ee.getSymlinkCache():A||(A=e.discoverProbableSymlinks(_,zt,ee.getCurrentDirectory(),e.isOhpm(L.packageManagerType)))}},e.emitSkippedWithNoDiagnostics={diagnostics:e.emptyArray,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0},e.handleNoEmitOptions=x,e.filterSemanticDiagnotics=E,e.parseConfigHostFromCompilerHostLike=S,e.createPrependNodes=D,e.resolveProjectReferencePath=w,e.getResolutionDiagnostic=T,e.getModuleNameStringLiteralAt=A,e.getTypeExportImportAndConstEnumTransformer=function(t){return e.transformTypeExportImportAndConstEnumInTypeScript(t)},e.hasTsNoCheckOrTsIgnoreFlag=function(e){if(e.checkJsDirective&&!1===e.checkJsDirective.enabled)return!0;if(void 0!==e.commentDirectives)for(var t=0,r=e.commentDirectives;t<r.length;t++){if(1===r[t].type)return!0}return!1}}(d||(d={})),function(e){function t(e,t,r,n,i,a){var o=[],s=e.emit(t,(function(e,t,r){o.push({name:e,writeByteOrderMark:r,text:t})}),n,r,i,a),c=s.emitSkipped,l=s.diagnostics,u=s.exportedModulesFromDeclarationEmit;return{outputFiles:o,emitSkipped:c,diagnostics:l,exportedModulesFromDeclarationEmit:u}}e.getFileEmitOutput=t,function(r){function n(t){if(t.declarations&&t.declarations[0]){var r=e.getSourceFileOfNode(t.declarations[0]);return r&&r.resolvedPath}}function i(e,t){var r=e.getSymbolAtLocation(t);return r&&n(r)}function a(t,r,n,i){return e.toPath(t.getProjectReferenceRedirect(r)||r,n,i)}function o(t,r,n){var o;if(r.imports&&r.imports.length>0)for(var s=t.getTypeChecker(),c=0,l=r.imports;c<l.length;c++){var u=i(s,l[c]);u&&E(u)}var d=e.getDirectoryPath(r.resolvedPath);if(r.referencedFiles&&r.referencedFiles.length>0)for(var p=0,f=r.referencedFiles;p<f.length;p++){var m=f[p];E(a(t,m.fileName,d,n))}if(r.resolvedTypeReferenceDirectiveNames&&r.resolvedTypeReferenceDirectiveNames.forEach((function(e){if(e){var r=e.resolvedFileName;E(a(t,r,d,n))}})),r.moduleAugmentations.length){s=t.getTypeChecker();for(var g=0,_=r.moduleAugmentations;g<_.length;g++){var h=_[g];if(e.isStringLiteral(h)){var y=s.getSymbolAtLocation(h);y&&x(y)}}}for(var v=0,b=t.getTypeChecker().getAmbientModules();v<b.length;v++){var k=b[v];k.declarations.length>1&&x(k)}return o;function x(t){for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n],o=e.getSourceFileOfNode(a);o&&o!==r&&E(o.resolvedPath)}}function E(t){(o||(o=new e.Set)).add(t)}}function s(e,t){return t&&!t.referencedMap==!e}function c(e,t){t.forEach((function(t,r){return l(e,t,r)}))}function l(e,t,r){e.fileInfos.get(r).signature=t,e.hasCalledUpdateShapeSignature.add(r)}function u(r,i,a,o,s,c,l){if(e.Debug.assert(!!a),e.Debug.assert(!l||!!r.exportedModulesMap,"Compute visible to outside map only if visibleToOutsideReferencedMap present in the state"),r.hasCalledUpdateShapeSignature.has(a.resolvedPath)||o.has(a.resolvedPath))return!1;var u=r.fileInfos.get(a.resolvedPath);if(!u)return e.Debug.fail();var d,p=u.signature;if(a.isDeclarationFile){if(d=a.version,l&&d!==p){var f=r.referencedMap?r.referencedMap.get(a.resolvedPath):void 0;l.set(a.resolvedPath,f||!1)}}else{var m=t(i,a,!0,s,void 0,!0),g=m.outputFiles&&i.getCompilerOptions().declarationMap?m.outputFiles.length>1?m.outputFiles[1]:void 0:m.outputFiles.length>0?m.outputFiles[0]:void 0;g?(e.Debug.assert(e.isDeclarationFileName(g.name),"File extension for signature expected to be dts or dets",(function(){return"Found: "+e.getAnyExtensionFromPath(g.name)+" for "+g.name+":: All output files: "+JSON.stringify(m.outputFiles.map((function(e){return e.name})))})),d=(c||e.generateDjb2Hash)(g.text),l&&d!==p&&function(t,r,i){if(!r)return void i.set(t.resolvedPath,!1);var a;function o(t){t&&(a||(a=new e.Set),a.add(t))}r.forEach((function(e){return o(n(e))})),i.set(t.resolvedPath,a||!1)}(a,m.exportedModulesFromDeclarationEmit,l)):d=p}return o.set(a.resolvedPath,d),!p||d!==p}function d(t,r){if(!t.allFileNames){var n=r.getSourceFiles();t.allFileNames=n===e.emptyArray?e.emptyArray:n.map((function(e){return e.fileName}))}return t.allFileNames}function p(t,r){return e.arrayFrom(e.mapDefinedIterator(t.referencedMap.entries(),(function(e){var t=e[0];return e[1].has(r)?t:void 0})))}function f(t){return function(t){return e.some(t.moduleAugmentations,(function(t){return e.isGlobalScopeAugmentation(t.parent)}))}(t)||!e.isExternalModule(t)&&!function(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];if(!e.isModuleWithStringLiteralName(i))return!1}return!0}(t)}function m(t,r,n){if(t.allFilesExcludingDefaultLibraryFile)return t.allFilesExcludingDefaultLibraryFile;var i;n&&c(n);for(var a=0,o=r.getSourceFiles();a<o.length;a++){var s=o[a];s!==n&&c(s)}return t.allFilesExcludingDefaultLibraryFile=i||e.emptyArray,t.allFilesExcludingDefaultLibraryFile;function c(e){r.isSourceFileDefaultLibrary(e)||(i||(i=[])).push(e)}}function g(t,r,n){var i=r.getCompilerOptions();return i&&e.outFile(i)?[n]:m(t,r,n)}function _(t,r,n,i,a,o,s){if(f(n))return m(t,r,n);var c=r.getCompilerOptions();if(c&&(c.isolatedModules||e.outFile(c)))return[n];var l=new e.Map;l.set(n.resolvedPath,n);for(var d=p(t,n.resolvedPath);d.length>0;){var g=d.pop();if(!l.has(g)){var _=r.getSourceFileByPath(g);l.set(g,_),_&&u(t,r,_,i,a,o,s)&&d.push.apply(d,p(t,_.resolvedPath))}}return e.arrayFrom(e.mapDefinedIterator(l.values(),(function(e){return e})))}r.canReuseOldState=s,r.create=function(t,r,n){var i=new e.Map,a=t.getCompilerOptions().module!==e.ModuleKind.None?new e.Map:void 0,c=a?new e.Map:void 0,l=new e.Set,u=s(a,n);t.getTypeChecker();for(var d=0,p=t.getSourceFiles();d<p.length;d++){var m=p[d],g=e.Debug.checkDefined(m.version,"Program intended to be used with Builder should have source files with versions set"),_=u?n.fileInfos.get(m.resolvedPath):void 0;if(a){var h=o(t,m,r);if(h&&a.set(m.resolvedPath,h),u){var y=n.exportedModulesMap.get(m.resolvedPath);y&&c.set(m.resolvedPath,y)}}i.set(m.resolvedPath,{version:g,signature:_&&_.signature,affectsGlobalScope:f(m)})}return{fileInfos:i,referencedMap:a,exportedModulesMap:c,hasCalledUpdateShapeSignature:l}},r.releaseCache=function(e){e.allFilesExcludingDefaultLibraryFile=void 0,e.allFileNames=void 0},r.clone=function(t){return{fileInfos:new e.Map(t.fileInfos),referencedMap:t.referencedMap&&new e.Map(t.referencedMap),exportedModulesMap:t.exportedModulesMap&&new e.Map(t.exportedModulesMap),hasCalledUpdateShapeSignature:new e.Set(t.hasCalledUpdateShapeSignature)}},r.getFilesAffectedBy=function(t,r,n,i,a,o,s){var l=o||new e.Map,d=r.getSourceFileByPath(n);if(!d)return e.emptyArray;if(!u(t,r,d,l,i,a,s))return[d];var p=(t.referencedMap?_:g)(t,r,d,l,i,a,s);return o||c(t,l),p},r.updateSignaturesFromCache=c,r.updateSignatureOfFile=l,r.updateShapeSignature=u,r.updateExportedFilesMapFromCache=function(t,r){r&&(e.Debug.assert(!!t.exportedModulesMap),r.forEach((function(e,r){e?t.exportedModulesMap.set(r,e):t.exportedModulesMap.delete(r)})))},r.getAllDependencies=function(t,r,n){var i=r.getCompilerOptions();if(e.outFile(i))return d(t,r);if(!t.referencedMap||f(n))return d(t,r);for(var a=new e.Set,o=[n.resolvedPath];o.length;){var s=o.pop();if(!a.has(s)){a.add(s);var c=t.referencedMap.get(s);if(c)for(var l=c.keys(),u=l.next();!u.done;u=l.next())o.push(u.value)}}return e.arrayFrom(e.mapDefinedIterator(a.keys(),(function(e){var t,n;return null!==(n=null===(t=r.getSourceFileByPath(e))||void 0===t?void 0:t.fileName)&&void 0!==n?n:e})))},r.getReferencedByPaths=p,r.getAllFilesExcludingDefaultLibraryFile=m}(e.BuilderState||(e.BuilderState={}))}(d||(d={})),function(e){var t;function r(t,r,i){var a=e.BuilderState.create(t,r,i);a.program=t;var o=t.getCompilerOptions();a.compilerOptions=o,e.outFile(o)||(a.semanticDiagnosticsPerFile=new e.Map),a.changedFilesSet=new e.Set;var s=e.BuilderState.canReuseOldState(a.referencedMap,i),c=s?i.compilerOptions:void 0,l=s&&i.semanticDiagnosticsPerFile&&!!a.semanticDiagnosticsPerFile&&!e.compilerOptionsAffectSemanticDiagnostics(o,c);if(s){if(!i.currentChangedFilePath){var u=i.currentAffectedFilesSignatures;e.Debug.assert(!(i.affectedFiles||u&&u.size),"Cannot reuse if only few affected files of currentChangedFile were iterated")}var d=i.changedFilesSet;l&&e.Debug.assert(!d||!e.forEachKey(d,(function(e){return i.semanticDiagnosticsPerFile.has(e)})),"Semantic diagnostics shouldnt be available for changed files"),null==d||d.forEach((function(e){return a.changedFilesSet.add(e)})),!e.outFile(o)&&i.affectedFilesPendingEmit&&(a.affectedFilesPendingEmit=i.affectedFilesPendingEmit.slice(),a.affectedFilesPendingEmitKind=i.affectedFilesPendingEmitKind&&new e.Map(i.affectedFilesPendingEmitKind),a.affectedFilesPendingEmitIndex=i.affectedFilesPendingEmitIndex,a.seenAffectedFiles=new e.Set)}var p=a.referencedMap,f=s?i.referencedMap:void 0,m=l&&!o.skipLibCheck==!c.skipLibCheck,g=m&&!o.skipDefaultLibCheck==!c.skipDefaultLibCheck;return a.fileInfos.forEach((function(o,c){var u,d,_,h;if(!s||!(u=i.fileInfos.get(c))||u.version!==o.version||(_=d=p&&p.get(c),h=f&&f.get(c),_!==h&&(void 0===_||void 0===h||_.size!==h.size||e.forEachKey(_,(function(e){return!h.has(e)}))))||d&&e.forEachKey(d,(function(e){return!a.fileInfos.has(e)&&i.fileInfos.has(e)})))a.changedFilesSet.add(c);else if(l){var y=t.getSourceFileByPath(c);if(y.isDeclarationFile&&!m)return;if(y.hasNoDefaultLib&&!g)return;var v=i.semanticDiagnosticsPerFile.get(c);v&&(a.semanticDiagnosticsPerFile.set(c,i.hasReusableDiagnostic?function(t,r,i){if(!t.length)return e.emptyArray;var a=e.getDirectoryPath(e.getNormalizedAbsolutePath(e.getTsBuildInfoEmitOutputFilePath(r.getCompilerOptions()),r.getCurrentDirectory()));return t.map((function(e){var t=n(e,r,o);t.reportsUnnecessary=e.reportsUnnecessary,t.reportsDeprecated=e.reportDeprecated,t.source=e.source,t.skippedOn=e.skippedOn;var i=e.relatedInformation;return t.relatedInformation=i?i.length?i.map((function(e){return n(e,r,o)})):[]:void 0,t}));function o(t){return e.toPath(t,a,i)}}(v,t,r):v),a.semanticDiagnosticsFromOldState||(a.semanticDiagnosticsFromOldState=new e.Set),a.semanticDiagnosticsFromOldState.add(c))}})),s&&e.forEachEntry(i.fileInfos,(function(e,t){return e.affectsGlobalScope&&!a.fileInfos.has(t)}))?e.BuilderState.getAllFilesExcludingDefaultLibraryFile(a,t,void 0).forEach((function(e){return a.changedFilesSet.add(e.resolvedPath)})):c&&!e.outFile(o)&&e.compilerOptionsAffectEmit(o,c)&&(t.getSourceFiles().forEach((function(e){return b(a,e.resolvedPath,1)})),e.Debug.assert(!a.seenAffectedFiles||!a.seenAffectedFiles.size),a.seenAffectedFiles=a.seenAffectedFiles||new e.Set),a.buildInfoEmitPending=!!a.changedFilesSet.size,a}function n(e,t,r){var n=e.file;return a(a({},e),{file:n?t.getSourceFileByPath(r(n)):void 0})}function i(t,r){e.Debug.assert(!r||!t.affectedFiles||t.affectedFiles[t.affectedFilesIndex-1]!==r||!t.semanticDiagnosticsPerFile.has(r.resolvedPath))}function o(t,r,n){for(;;){var i=t.affectedFiles;if(i){for(var a=t.seenAffectedFiles,o=t.affectedFilesIndex;o<i.length;){var c=i[o];if(!a.has(c.resolvedPath))return t.affectedFilesIndex=o,s(t,c,r,n),c;o++}t.changedFilesSet.delete(t.currentChangedFilePath),t.currentChangedFilePath=void 0,e.BuilderState.updateSignaturesFromCache(t,t.currentAffectedFilesSignatures),t.currentAffectedFilesSignatures.clear(),e.BuilderState.updateExportedFilesMapFromCache(t,t.currentAffectedFilesExportedModulesMap),t.affectedFiles=void 0}var l=t.changedFilesSet.keys().next();if(l.done)return;var u=e.Debug.checkDefined(t.program),d=u.getCompilerOptions();if(e.outFile(d))return e.Debug.assert(!t.semanticDiagnosticsPerFile),u;t.currentAffectedFilesSignatures||(t.currentAffectedFilesSignatures=new e.Map),t.exportedModulesMap&&(t.currentAffectedFilesExportedModulesMap||(t.currentAffectedFilesExportedModulesMap=new e.Map)),t.affectedFiles=e.BuilderState.getFilesAffectedBy(t,u,l.value,r,n,t.currentAffectedFilesSignatures,t.currentAffectedFilesExportedModulesMap),t.currentChangedFilePath=l.value,t.affectedFilesIndex=0,t.seenAffectedFiles||(t.seenAffectedFiles=new e.Set)}}function s(t,r,n,i){if(c(t,r.resolvedPath),t.allFilesExcludingDefaultLibraryFile!==t.affectedFiles)t.compilerOptions.assumeChangesOnlyAffectDirectDependencies||function(t,r,n){if(!t.exportedModulesMap||!t.changedFilesSet.has(r.resolvedPath))return;if(!l(t,r.resolvedPath))return;if(t.compilerOptions.isolatedModules){var i=new e.Map;i.set(r.resolvedPath,!0);for(var a=e.BuilderState.getReferencedByPaths(t,r.resolvedPath);a.length>0;){var o=a.pop();if(!i.has(o))if(i.set(o,!0),n(t,o)&&l(t,o)){var s=e.Debug.checkDefined(t.program).getSourceFileByPath(o);a.push.apply(a,e.BuilderState.getReferencedByPaths(t,s.resolvedPath))}}}e.Debug.assert(!!t.currentAffectedFilesExportedModulesMap);var c=new e.Set;if(e.forEachEntry(t.currentAffectedFilesExportedModulesMap,(function(e,i){return e&&e.has(r.resolvedPath)&&u(t,i,c,n)})))return;e.forEachEntry(t.exportedModulesMap,(function(e,i){return!t.currentAffectedFilesExportedModulesMap.has(i)&&e.has(r.resolvedPath)&&u(t,i,c,n)}))}(t,r,(function(t,r){return function(t,r,n,i){if(c(t,r),!t.changedFilesSet.has(r)){var a=e.Debug.checkDefined(t.program),o=a.getSourceFileByPath(r);o&&(e.BuilderState.updateShapeSignature(t,a,o,e.Debug.checkDefined(t.currentAffectedFilesSignatures),n,i,t.currentAffectedFilesExportedModulesMap),e.getEmitDeclarations(t.compilerOptions)&&b(t,r,0))}return!1}(t,r,n,i)}));else if(!t.cleanedDiagnosticsOfLibFiles){t.cleanedDiagnosticsOfLibFiles=!0;var a=e.Debug.checkDefined(t.program),o=a.getCompilerOptions();e.forEach(a.getSourceFiles(),(function(r){return a.isSourceFileDefaultLibrary(r)&&!(e.skipTypeChecking(r,o,a)||r.isDeclarationFile&&o.needDoArkTsLinter)&&c(t,r.resolvedPath)}))}}function c(e,t){return!e.semanticDiagnosticsFromOldState||(e.semanticDiagnosticsFromOldState.delete(t),e.semanticDiagnosticsPerFile.delete(t),!e.semanticDiagnosticsFromOldState.size)}function l(t,r){return e.Debug.checkDefined(t.currentAffectedFilesSignatures).get(r)!==e.Debug.checkDefined(t.fileInfos.get(r)).signature}function u(t,r,n,i){return e.forEachEntry(t.referencedMap,(function(e,a){return e.has(r)&&d(t,a,n,i)}))}function d(t,r,n,i){return!!e.tryAddToSet(n,r)&&(!!i(t,r)||(e.Debug.assert(!!t.currentAffectedFilesExportedModulesMap),!!e.forEachEntry(t.currentAffectedFilesExportedModulesMap,(function(e,a){return e&&e.has(r)&&d(t,a,n,i)}))||(!!e.forEachEntry(t.exportedModulesMap,(function(e,a){return!t.currentAffectedFilesExportedModulesMap.has(a)&&e.has(r)&&d(t,a,n,i)}))||!!e.forEachEntry(t.referencedMap,(function(e,a){return e.has(r)&&!n.has(a)&&i(t,a)})))))}function p(t,r,n,i,a){a?t.buildInfoEmitPending=!1:r===t.program?(t.changedFilesSet.clear(),t.programEmitComplete=!0):(t.seenAffectedFiles.add(r.resolvedPath),void 0!==n&&(t.seenEmittedFiles||(t.seenEmittedFiles=new e.Map)).set(r.resolvedPath,n),i?(t.affectedFilesPendingEmitIndex++,t.buildInfoEmitPending=!0):t.affectedFilesIndex++)}function f(e,t,r){return p(e,r),{result:t,affected:r}}function m(e,t,r,n,i,a){return p(e,r,n,i,a),{result:t,affected:r}}function g(t,r,n){return e.concatenate(function(t,r,n){var i=r.resolvedPath;if(t.semanticDiagnosticsPerFile){var a=t.semanticDiagnosticsPerFile.get(i);if(a)return e.filterSemanticDiagnotics(a,t.compilerOptions)}var o=e.Debug.checkDefined(t.program).getBindAndCheckDiagnostics(r,n);t.semanticDiagnosticsPerFile&&t.semanticDiagnosticsPerFile.set(i,o);return e.filterSemanticDiagnotics(o,t.compilerOptions)}(t,r,n),e.Debug.checkDefined(t.program).getProgramDiagnostics(r))}function _(t,r){var n={},i=e.getOptionsNameMap().optionsNameMap;for(var a in t)e.hasProperty(t,a)&&(n[a]=h(i.get(a.toLowerCase()),t[a],r));return n.configFilePath&&(n.configFilePath=r(n.configFilePath)),n}function h(e,t,r){if(e)if("list"===e.type){var n=t;if(e.element.isFilePath&&n.length)return n.map(r)}else if(e.isFilePath)return r(t);return t}function y(t,r){return e.Debug.assert(!!t.length),t.map((function(e){var t=v(e,r);t.reportsUnnecessary=e.reportsUnnecessary,t.reportDeprecated=e.reportsDeprecated,t.source=e.source,t.skippedOn=e.skippedOn;var n=e.relatedInformation;return t.relatedInformation=n?n.length?n.map((function(e){return v(e,r)})):[]:void 0,t}))}function v(e,t){var r=e.file;return a(a({},e),{file:r?t(r.resolvedPath):void 0})}function b(t,r,n){t.affectedFilesPendingEmit||(t.affectedFilesPendingEmit=[]),t.affectedFilesPendingEmitKind||(t.affectedFilesPendingEmitKind=new e.Map);var i=t.affectedFilesPendingEmitKind.get(r);t.affectedFilesPendingEmit.push(r),t.affectedFilesPendingEmitKind.set(r,i||n),void 0===t.affectedFilesPendingEmitIndex&&(t.affectedFilesPendingEmitIndex=0)}function k(t,r){if(t){var n=new e.Map;for(var i in t)e.hasProperty(t,i)&&n.set(r(i),new e.Set(t[i].map(r)));return n}}function x(t,r){return{getState:e.notImplemented,backupState:e.noop,restoreState:e.noop,getProgram:n,getProgramOrUndefined:function(){return t.program},releaseProgram:function(){return t.program=void 0},getCompilerOptions:function(){return t.compilerOptions},getSourceFile:function(e){return n().getSourceFile(e)},getSourceFiles:function(){return n().getSourceFiles()},getOptionsDiagnostics:function(e){return n().getOptionsDiagnostics(e)},getGlobalDiagnostics:function(e){return n().getGlobalDiagnostics(e)},getConfigFileParsingDiagnostics:function(){return r},getSyntacticDiagnostics:function(e,t){return n().getSyntacticDiagnostics(e,t)},getDeclarationDiagnostics:function(e,t){return n().getDeclarationDiagnostics(e,t)},getSemanticDiagnostics:function(e,t){return n().getSemanticDiagnostics(e,t)},emit:function(e,t,r,i,a){return n().emit(e,t,r,i,a)},emitBuildInfo:function(e,t){return n().emitBuildInfo(e,t)},getAllDependencies:e.notImplemented,getCurrentDirectory:function(){return n().getCurrentDirectory()},close:e.noop};function n(){return e.Debug.checkDefined(t.program)}}!function(e){e[e.DtsOnly=0]="DtsOnly",e[e.Full=1]="Full"}(e.BuilderFileEmit||(e.BuilderFileEmit={})),function(e){e[e.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",e[e.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram"}(t=e.BuilderProgramKind||(e.BuilderProgramKind={})),e.getBuilderCreationParameters=function(t,r,n,i,a,o){var s,c,l;return void 0===t?(e.Debug.assert(void 0===r),s=n,l=i,e.Debug.assert(!!l),c=l.getProgram()):e.isArray(t)?(l=i,c=e.createProgram({rootNames:t,options:r,host:n,oldProgram:l&&l.getProgramOrUndefined(),configFileParsingDiagnostics:a,projectReferences:o}),s=n):(c=t,s=r,l=n,a=i),{host:s,newProgram:c,oldProgram:l,configFileParsingDiagnostics:a||e.emptyArray}},e.createBuilderProgram=function(n,a){var s=a.newProgram,c=a.host,l=a.oldProgram,u=a.configFileParsingDiagnostics,d=l&&l.getState();if(d&&s===d.program&&u===s.getConfigFileParsingDiagnostics())return s=void 0,d=void 0,l;var h,v=e.createGetCanonicalFileName(c.useCaseSensitiveFileNames()),k=e.maybeBind(c,c.createHash),E=r(s,v,d);s.getProgramBuildInfo=function(){return function(t,r){if(!e.outFile(t.compilerOptions)){var n=e.Debug.checkDefined(t.program).getCurrentDirectory(),i=e.getDirectoryPath(e.getNormalizedAbsolutePath(e.getTsBuildInfoEmitOutputFilePath(t.compilerOptions),n)),a={};t.fileInfos.forEach((function(e,r){var n=t.currentAffectedFilesSignatures&&t.currentAffectedFilesSignatures.get(r);a[w(r)]=void 0===n?e:{version:e.version,signature:n,affectsGlobalScope:e.affectsGlobalScope}}));var o={fileInfos:a,options:_(t.compilerOptions,(function(t){return w(e.getNormalizedAbsolutePath(t,n))}))};if(t.referencedMap){for(var s={},c=0,l=e.arrayFrom(t.referencedMap.keys()).sort(e.compareStringsCaseSensitive);c<l.length;c++)s[w(f=l[c])]=e.arrayFrom(t.referencedMap.get(f).keys(),w).sort(e.compareStringsCaseSensitive);o.referencedMap=s}if(t.exportedModulesMap){for(var u={},d=0,p=e.arrayFrom(t.exportedModulesMap.keys()).sort(e.compareStringsCaseSensitive);d<p.length;d++){var f=p[d],m=t.currentAffectedFilesExportedModulesMap&&t.currentAffectedFilesExportedModulesMap.get(f);void 0===m?u[w(f)]=e.arrayFrom(t.exportedModulesMap.get(f).keys(),w).sort(e.compareStringsCaseSensitive):m&&(u[w(f)]=e.arrayFrom(m.keys(),w).sort(e.compareStringsCaseSensitive))}o.exportedModulesMap=u}if(t.semanticDiagnosticsPerFile){for(var g=[],h=0,v=e.arrayFrom(t.semanticDiagnosticsPerFile.keys()).sort(e.compareStringsCaseSensitive);h<v.length;h++){f=v[h];var b=t.semanticDiagnosticsPerFile.get(f);g.push(b.length?[w(f),t.hasReusableDiagnostic?b:y(b,w)]:w(f))}o.semanticDiagnosticsPerFile=g}if(t.affectedFilesPendingEmit){for(var k=[],x=new e.Set,E=0,S=t.affectedFilesPendingEmit.slice(t.affectedFilesPendingEmitIndex).sort(e.compareStringsCaseSensitive);E<S.length;E++){var D=S[E];e.tryAddToSet(x,D)&&k.push([w(D),t.affectedFilesPendingEmitKind.get(D)])}o.affectedFilesPendingEmit=k}return o}function w(t){return e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(i,t,r))}}(E,v)},s=void 0,l=void 0,d=void 0;var S=x(E,u);return S.getState=function(){return E},S.backupState=function(){e.Debug.assert(void 0===h),h=function(t){var r=e.BuilderState.clone(t);return r.semanticDiagnosticsPerFile=t.semanticDiagnosticsPerFile&&new e.Map(t.semanticDiagnosticsPerFile),r.changedFilesSet=new e.Set(t.changedFilesSet),r.affectedFiles=t.affectedFiles,r.affectedFilesIndex=t.affectedFilesIndex,r.currentChangedFilePath=t.currentChangedFilePath,r.currentAffectedFilesSignatures=t.currentAffectedFilesSignatures&&new e.Map(t.currentAffectedFilesSignatures),r.currentAffectedFilesExportedModulesMap=t.currentAffectedFilesExportedModulesMap&&new e.Map(t.currentAffectedFilesExportedModulesMap),r.seenAffectedFiles=t.seenAffectedFiles&&new e.Set(t.seenAffectedFiles),r.cleanedDiagnosticsOfLibFiles=t.cleanedDiagnosticsOfLibFiles,r.semanticDiagnosticsFromOldState=t.semanticDiagnosticsFromOldState&&new e.Set(t.semanticDiagnosticsFromOldState),r.program=t.program,r.compilerOptions=t.compilerOptions,r.affectedFilesPendingEmit=t.affectedFilesPendingEmit&&t.affectedFilesPendingEmit.slice(),r.affectedFilesPendingEmitKind=t.affectedFilesPendingEmitKind&&new e.Map(t.affectedFilesPendingEmitKind),r.affectedFilesPendingEmitIndex=t.affectedFilesPendingEmitIndex,r.seenEmittedFiles=t.seenEmittedFiles&&new e.Map(t.seenEmittedFiles),r.programEmitComplete=t.programEmitComplete,r}(E)},S.restoreState=function(){E=e.Debug.checkDefined(h),h=void 0},S.getAllDependencies=function(t){return e.BuilderState.getAllDependencies(E,e.Debug.checkDefined(E.program),t)},S.getSemanticDiagnostics=function(t,r){i(E,t);var n,a=e.Debug.checkDefined(E.program).getCompilerOptions();if(e.outFile(a))return e.Debug.assert(!E.semanticDiagnosticsPerFile),e.Debug.checkDefined(E.program).getSemanticDiagnostics(t,r);if(t)return g(E,t,r);for(;w(r););for(var o=0,s=e.Debug.checkDefined(E.program).getSourceFiles();o<s.length;o++){var c=s[o];n=e.addRange(n,g(E,c,r))}return n||e.emptyArray},S.emit=function(r,a,o,s,l){var u,d,p,f=!1;n===t.EmitAndSemanticDiagnosticsBuilderProgram||r||e.outFile(E.compilerOptions)||E.compilerOptions.noEmit||!E.compilerOptions.noEmitOnError||(f=!0,u=E.affectedFilesPendingEmit&&E.affectedFilesPendingEmit.slice(),d=E.affectedFilesPendingEmitKind&&new e.Map(E.affectedFilesPendingEmitKind),p=E.affectedFilesPendingEmitIndex);n===t.EmitAndSemanticDiagnosticsBuilderProgram&&i(E,r);var m=e.handleNoEmitOptions(S,r,a,o);if(m)return m;f&&(E.affectedFilesPendingEmit=u,E.affectedFilesPendingEmitKind=d,E.affectedFilesPendingEmitIndex=p);if(!r&&n===t.EmitAndSemanticDiagnosticsBuilderProgram){for(var g=[],_=!1,h=void 0,y=[],v=void 0;v=D(a,o,s,l);)_=_||v.result.emitSkipped,h=e.addRange(h,v.result.diagnostics),y=e.addRange(y,v.result.emittedFiles),g=e.addRange(g,v.result.sourceMaps);return{emitSkipped:_,diagnostics:h||e.emptyArray,emittedFiles:y,sourceMaps:g}}return e.Debug.checkDefined(E.program).emit(r,a||e.maybeBind(c,c.writeFile),o,s,l)},S.releaseProgram=function(){!function(t){e.BuilderState.releaseCache(t),t.program=void 0}(E),h=void 0},n===t.SemanticDiagnosticsBuilderProgram?S.getSemanticDiagnosticsOfNextAffectedFile=w:n===t.EmitAndSemanticDiagnosticsBuilderProgram?(S.getSemanticDiagnosticsOfNextAffectedFile=w,S.emitNextAffectedFile=D,S.emitBuildInfo=function(t,r){if(E.buildInfoEmitPending){var n=e.Debug.checkDefined(E.program).emitBuildInfo(t||e.maybeBind(c,c.writeFile),r);return E.buildInfoEmitPending=!1,n}return e.emitSkippedWithNoDiagnostics}):e.notImplemented(),S;function D(t,r,n,i){var a=o(E,r,k),s=1,l=!1;if(!a)if(e.outFile(E.compilerOptions)){var u=e.Debug.checkDefined(E.program);if(E.programEmitComplete)return;a=u}else{var d=function(t){var r=t.affectedFilesPendingEmit;if(r){for(var n=t.seenEmittedFiles||(t.seenEmittedFiles=new e.Map),i=t.affectedFilesPendingEmitIndex;i<r.length;i++){var a=e.Debug.checkDefined(t.program).getSourceFileByPath(r[i]);if(a){var o=n.get(a.resolvedPath),s=e.Debug.checkDefined(e.Debug.checkDefined(t.affectedFilesPendingEmitKind).get(a.resolvedPath));if(void 0===o||o<s)return t.affectedFilesPendingEmitIndex=i,{affectedFile:a,emitKind:s}}}t.affectedFilesPendingEmit=void 0,t.affectedFilesPendingEmitKind=void 0,t.affectedFilesPendingEmitIndex=void 0}}(E);if(!d){if(!E.buildInfoEmitPending)return;var p=e.Debug.checkDefined(E.program);return m(E,p.emitBuildInfo(t||e.maybeBind(c,c.writeFile),r),p,1,!1,!0)}a=d.affectedFile,s=d.emitKind,l=!0}return m(E,e.Debug.checkDefined(E.program).emit(a===E.program?void 0:a,t||e.maybeBind(c,c.writeFile),r,n||0===s,i),a,s,l)}function w(e,r){for(;;){var i=o(E,e,k);if(!i)return;if(i===E.program)return f(E,E.program.getSemanticDiagnostics(void 0,e),i);if((n===t.EmitAndSemanticDiagnosticsBuilderProgram||E.compilerOptions.noEmit||E.compilerOptions.noEmitOnError)&&b(E,i.resolvedPath,1),!r||!r(i))return f(E,g(E,i,e),i);p(E,i)}}},e.createBuildProgramUsingProgramBuildInfo=function(t,r,n){var i=e.getDirectoryPath(e.getNormalizedAbsolutePath(r,n.getCurrentDirectory())),a=e.createGetCanonicalFileName(n.useCaseSensitiveFileNames()),o=new e.Map;for(var s in t.fileInfos)e.hasProperty(t.fileInfos,s)&&o.set(l(s),t.fileInfos[s]);var c={fileInfos:o,compilerOptions:e.convertToOptionsWithAbsolutePaths(t.options,(function(t){return e.getNormalizedAbsolutePath(t,i)})),referencedMap:k(t.referencedMap,l),exportedModulesMap:k(t.exportedModulesMap,l),semanticDiagnosticsPerFile:t.semanticDiagnosticsPerFile&&e.arrayToMap(t.semanticDiagnosticsPerFile,(function(t){return l(e.isString(t)?t:t[0])}),(function(t){return e.isString(t)?e.emptyArray:t[1]})),hasReusableDiagnostic:!0,affectedFilesPendingEmit:e.map(t.affectedFilesPendingEmit,(function(e){return l(e[0])})),affectedFilesPendingEmitKind:t.affectedFilesPendingEmit&&e.arrayToMap(t.affectedFilesPendingEmit,(function(e){return l(e[0])}),(function(e){return e[1]})),affectedFilesPendingEmitIndex:t.affectedFilesPendingEmit&&0};return{getState:function(){return c},backupState:e.noop,restoreState:e.noop,getProgram:e.notImplemented,getProgramOrUndefined:e.returnUndefined,releaseProgram:e.noop,getCompilerOptions:function(){return c.compilerOptions},getSourceFile:e.notImplemented,getSourceFiles:e.notImplemented,getOptionsDiagnostics:e.notImplemented,getGlobalDiagnostics:e.notImplemented,getConfigFileParsingDiagnostics:e.notImplemented,getSyntacticDiagnostics:e.notImplemented,getDeclarationDiagnostics:e.notImplemented,getSemanticDiagnostics:e.notImplemented,emit:e.notImplemented,getAllDependencies:e.notImplemented,getCurrentDirectory:e.notImplemented,emitNextAffectedFile:e.notImplemented,getSemanticDiagnosticsOfNextAffectedFile:e.notImplemented,emitBuildInfo:e.notImplemented,close:e.noop};function l(t){return e.toPath(t,i,a)}},e.createRedirectedBuilderProgram=x}(d||(d={})),function(e){e.createSemanticDiagnosticsBuilderProgram=function(t,r,n,i,a,o){return e.createBuilderProgram(e.BuilderProgramKind.SemanticDiagnosticsBuilderProgram,e.getBuilderCreationParameters(t,r,n,i,a,o))},e.createEmitAndSemanticDiagnosticsBuilderProgram=function(t,r,n,i,a,o){return e.createBuilderProgram(e.BuilderProgramKind.EmitAndSemanticDiagnosticsBuilderProgram,e.getBuilderCreationParameters(t,r,n,i,a,o))},e.createAbstractBuilder=function(t,r,n,i,a,o){var s=e.getBuilderCreationParameters(t,r,n,i,a,o),c=s.newProgram,l=s.configFileParsingDiagnostics;return e.createRedirectedBuilderProgram({program:c,compilerOptions:c.getCompilerOptions()},l)}}(d||(d={})),function(e){function t(t){return e.endsWith(t,"/node_modules/.staging")||e.endsWith(t,"/oh_modules/.staging")?e.removeSuffix(t,"/.staging"):e.some(e.ignoredPaths,(function(r){return e.stringContains(t,r)}))?void 0:t}function r(t){var r=e.getRootLength(t);if(t.length===r)return!1;var n=t.indexOf(e.directorySeparator,r);if(-1===n)return!1;var i=t.substring(r,n+1),a=r>1||47!==t.charCodeAt(0);if(a&&0!==t.search(/[a-zA-Z]:/)&&0===i.search(/[a-zA-z]\$\//)){if(-1===(n=t.indexOf(e.directorySeparator,n+1)))return!1;i=t.substring(r+i.length,n+1)}if(a&&0!==i.search(/users\//i))return!0;for(var o=n+1,s=2;s>0;s--)if(0===(o=t.indexOf(e.directorySeparator,o)+1))return!1;return!0}e.removeIgnoredPath=t,e.canWatchDirectory=r,e.createResolutionCache=function(n,i,a){var o,s,c,l=e.createMultiMap(),u=[],d=e.createMultiMap(),p=!1,f=[],m=[],g=[],_=e.memoize((function(){return n.getCurrentDirectory()})),h=n.getCachedDirectoryStructureHost(),y=new e.Map,v=e.createCacheWithRedirects(),b=e.createCacheWithRedirects(),k=e.createModuleResolutionCacheWithMaps(v,b,_(),n.getCanonicalFileName),x=new e.Map,E=e.createCacheWithRedirects(),S=n.getCompilationSettings().ets?[".ets",".ts",".tsx",".js",".jsx",".json"]:[".ts",".tsx",".js",".jsx",".json",".ets"],D=new e.Map,w=new e.Map,T=i&&e.removeTrailingDirectorySeparator(e.getNormalizedAbsolutePath(i,_())),C=T&&n.toPath(T),A=void 0!==C?C.split(e.directorySeparator).length:0,N=new e.Map;return{startRecordingFilesWithChangedResolutions:function(){o=[]},finishRecordingFilesWithChangedResolutions:function(){var e=o;return o=void 0,e},startCachingPerDirectoryResolution:R,finishCachingPerDirectoryResolution:function(){c=void 0,R(),w.forEach((function(e,t){0===e.refCount&&(w.delete(t),e.watcher.close())})),p=!1},resolveModuleNames:function(t,r,n,i){return L({names:t,containingFile:r,redirectedReference:i,cache:y,perDirectoryCacheWithRedirects:v,loader:M,getResolutionWithResolvedFileName:P,shouldRetryResolution:function(t){return!t.resolvedModule||!e.resolutionExtensionIsTSOrJson(t.resolvedModule.extension)},reusedNames:n,logChanges:a})},getResolvedModuleWithFailedLookupLocationsFromCache:function(e,t){var r=y.get(n.toPath(t));return r&&r.get(e)},resolveTypeReferenceDirectives:function(t,r,n){return L({names:t,containingFile:r,redirectedReference:n,cache:x,perDirectoryCacheWithRedirects:E,loader:e.resolveTypeReferenceDirective,getResolutionWithResolvedFileName:I,shouldRetryResolution:function(e){return void 0===e.resolvedTypeReferenceDirective}})},removeResolutionsFromProjectReferenceRedirects:function(t){if(!e.fileExtensionIs(t,".json"))return;var r=n.getCurrentProgram();if(!r)return;var i=r.getResolvedProjectReferenceByPath(t);if(!i)return;i.commandLine.fileNames.forEach((function(e){return X(n.toPath(e))}))},removeResolutionsOfFile:X,hasChangedAutomaticTypeDirectiveNames:function(){return p},invalidateResolutionOfFile:function(t){X(t);var r=p;Q(d.get(t),e.returnTrue)&&p&&!r&&n.onChangedAutomaticTypeDirectiveNames()},invalidateResolutionsOfFailedLookupLocations:ee,setFilesWithInvalidatedNonRelativeUnresolvedImports:function(t){e.Debug.assert(c===t||void 0===c),c=t},createHasInvalidatedResolution:function(t){if(ee(),t)return s=void 0,e.returnTrue;var r=s;return s=void 0,function(e){return!!r&&r.has(e)||O(e)}},isFileWithInvalidatedNonRelativeUnresolvedImports:O,updateTypeRootsWatch:function(){var t=n.getCompilationSettings();if(t.types)return void re();var r=e.getEffectiveTypeRoots(t,{directoryExists:ie,getCurrentDirectory:_});r?e.mutateMap(N,e.arrayToMap(r,(function(e){return n.toPath(e)})),{createNewValue:ne,onDeleteValue:e.closeFileWatcher}):re()},closeTypeRootsWatch:re,clear:function(){e.clearMap(w,e.closeFileWatcherOf),D.clear(),l.clear(),re(),y.clear(),x.clear(),d.clear(),u.length=0,f.length=0,m.length=0,g.length=0,R(),p=!1}};function P(e){return e.resolvedModule}function I(e){return e.resolvedTypeReferenceDirective}function F(t,r){return!(void 0===t||r.length<=t.length)&&(e.startsWith(r,t)&&r[t.length]===e.directorySeparator)}function O(e){if(!c)return!1;var t=c.get(e);return!!t&&!!t.length}function R(){v.clear(),b.clear(),E.clear(),l.forEach(H),l.clear()}function M(t,r,i,a,o){var s,c=e.resolveModuleName(t,r,i,a,k,o);if(!n.getGlobalCache)return c;var l=n.getGlobalCache();if(!(void 0===l||e.isExternalModuleNameRelative(t)||c.resolvedModule&&e.extensionIsTS(c.resolvedModule.extension))){var u=e.loadModuleFromGlobalCache(e.Debug.checkDefined(n.globalCacheResolutionModuleName)(t),n.projectName,i,a,l),d=u.resolvedModule,p=u.failedLookupLocations;if(d)return c.resolvedModule=d,(s=c.failedLookupLocations).push.apply(s,p),c}return c}function L(t){var r,i=t.names,a=t.containingFile,s=t.redirectedReference,c=t.cache,l=t.perDirectoryCacheWithRedirects,u=t.loader,d=t.getResolutionWithResolvedFileName,p=t.shouldRetryResolution,f=t.reusedNames,m=t.logChanges,g=n.toPath(a),_=c.get(g)||c.set(g,new e.Map).get(g),h=e.getDirectoryPath(g),y=l.getOrCreateMapOfCacheRedirects(s),v=y.get(h);v||(v=new e.Map,y.set(h,v));for(var b=[],k=n.getCompilationSettings(),x=m&&O(g),E=n.getCurrentProgram(),S=E&&E.getResolvedProjectReferenceToRedirect(a),D=S?!s||s.sourceFile.path!==S.sourceFile.path:!!s,w=new e.Map,T=0,C=i;T<C.length;T++){var A=C[T],N=_.get(A);if(!w.has(A)&&D||!N||N.isInvalidated||x&&!e.isExternalModuleNameRelative(A)&&p(N)){var P=N,I=v.get(A);I?N=I:(N=u(A,a,k,(null===(r=n.getCompilerHost)||void 0===r?void 0:r.call(n))||n,s),v.set(A,N)),_.set(A,N),J(A,N,g,d),P&&W(P,g,d),m&&o&&!F(P,N)&&(o.push(g),m=!1)}e.Debug.assert(void 0!==N&&!N.isInvalidated),w.set(A,!0),b.push(d(N))}return _.forEach((function(t,r){w.has(r)||e.contains(f,r)||(W(t,g,d),_.delete(r))})),b;function F(e,t){if(e===t)return!0;if(!e||!t)return!1;var r=d(e),n=d(t);return r===n||!(!r||!n)&&r.resolvedFileName===n.resolvedFileName}}function j(t){return e.endsWith(t,"/node_modules/@types")}function B(t){return e.endsWith(t,"/oh_modules/@types")}function z(t,r){if(F(C,r)){t=e.isRootedDiskPath(t)?e.normalizePath(t):e.getNormalizedAbsolutePath(t,_());var n=r.split(e.directorySeparator),i=t.split(e.directorySeparator);return e.Debug.assert(i.length===n.length,"FailedLookup: "+t+" failedLookupLocationPath: "+r),n.length>A+1?{dir:i.slice(0,A+1).join(e.directorySeparator),dirPath:n.slice(0,A+1).join(e.directorySeparator)}:{dir:T,dirPath:C,nonRecursive:!1}}return U(e.getDirectoryPath(e.getNormalizedAbsolutePath(t,_())),e.getDirectoryPath(r))}function U(t,i){for(var a=e.isOhpm(n.getCompilationSettings().packageManagerType);a?e.pathContainsOHModules(i):e.pathContainsNodeModules(i);)t=e.getDirectoryPath(t),i=e.getDirectoryPath(i);if(a?e.isOHModulesDirectory(i):e.isNodeModulesDirectory(i))return r(e.getDirectoryPath(i))?{dir:t,dirPath:i}:void 0;var o,s,c=!0;if(void 0!==C)for(;!F(i,C);){var l=e.getDirectoryPath(i);if(l===i)break;c=!1,o=i,s=t,i=l,t=e.getDirectoryPath(t)}return r(i)?{dir:s||t,dirPath:o||i,nonRecursive:c}:void 0}function q(t){return e.fileExtensionIsOneOf(t,S)}function J(t,r,i,a){if(r.refCount)r.refCount++,e.Debug.assertDefined(r.files);else{r.refCount=1,e.Debug.assert(0===e.length(r.files)),e.isExternalModuleNameRelative(t)?V(r):l.add(t,r);var o=a(r);o&&o.resolvedFileName&&d.add(n.toPath(o.resolvedFileName),r)}(r.files||(r.files=[])).push(i)}function V(t){e.Debug.assert(!!t.refCount);var r=t.failedLookupLocations;if(r.length){u.push(t);for(var i=!1,a=0,o=r;a<o.length;a++){var s=o[a],c=n.toPath(s),l=z(s,c);if(l){var d=l.dir,p=l.dirPath,f=l.nonRecursive;if(!q(c)){var m=D.get(c)||0;D.set(c,m+1)}p===C?(e.Debug.assert(!f),i=!0):K(d,p,f)}}i&&K(T,C,!0)}}function H(e,t){var r=n.getCurrentProgram();r&&r.getTypeChecker().tryFindAmbientModuleWithoutAugmentations(t)||e.forEach(V)}function K(t,r,n){var i=w.get(r);i?(e.Debug.assert(!!n==!!i.nonRecursive),i.refCount++):w.set(r,{watcher:$(t,r,n),refCount:1,nonRecursive:n})}function W(t,r,i){if(e.unorderedRemoveItem(e.Debug.assertDefined(t.files),r),t.refCount--,!t.refCount){var a=i(t);if(a&&a.resolvedFileName&&d.remove(n.toPath(a.resolvedFileName),t),e.unorderedRemoveItem(u,t)){for(var o=!1,s=0,c=t.failedLookupLocations;s<c.length;s++){var l=c[s],p=n.toPath(l),f=z(l,p);if(f){var m=f.dirPath,g=D.get(p);g&&(1===g?D.delete(p):(e.Debug.assert(g>1),D.set(p,g-1))),m===C?o=!0:G(m)}}o&&G(C)}}}function G(e){w.get(e).refCount--}function $(e,t,r){return n.watchDirectoryOfFailedLookupLocation(e,(function(e){var r=n.toPath(e);h&&h.addOrDeleteFileOrDirectory(e,r),Z(r,t===r)}),r?0:1)}function Y(e,t,r){var n=e.get(t);n&&(n.forEach((function(e){return W(e,t,r)})),e.delete(t))}function X(e){Y(y,e,P),Y(x,e,I)}function Q(t,r){if(!t)return!1;for(var n=!1,i=0,a=t;i<a.length;i++){var o=a[i];if(!o.isInvalidated&&r(o)){o.isInvalidated=n=!0;for(var c=0,l=e.Debug.assertDefined(o.files);c<l.length;c++){var u=l[c];(s||(s=new e.Set)).add(u),p=p||e.endsWith(u,e.inferredTypesContainingFile)}}}return n}function Z(r,i){if(i)g.push(r);else{var a=t(r);if(!a)return!1;if(r=a,n.fileIsOpen(r))return!1;var o=e.getDirectoryPath(r),s=e.isOhpm(n.getCompilationSettings().packageManagerType);if(j(r)||s&&B(r)||e.isNodeModulesDirectory(r)||j(o)||s&&B(o)||e.isNodeModulesDirectory(o))f.push(r),m.push(r);else{if(!q(r)&&!D.has(r))return!1;if(e.isEmittedFileOfProgram(n.getCurrentProgram(),r))return!1;f.push(r)}}n.scheduleInvalidateResolutionsOfFailedLookupLocations()}function ee(){if(!f.length&&!m.length&&!g.length)return!1;var e=Q(u,te);return f.length=0,m.length=0,g.length=0,e}function te(t){return t.failedLookupLocations.some((function(t){var r=n.toPath(t);return e.contains(f,r)||m.some((function(t){return e.startsWith(r,t)}))||g.some((function(e){return F(e,r)}))}))}function re(){e.clearMap(N,e.closeFileWatcher)}function ne(e,t){return n.watchTypeRootsDirectory(t,(function(r){var i=n.toPath(r);h&&h.addOrDeleteFileOrDirectory(r,i),p=!0,n.onChangedAutomaticTypeDirectiveNames();var a=function(e,t){if(F(C,t))return C;var r=U(e,t);return r&&w.has(r.dirPath)?r.dirPath:void 0}(t,e);a&&Z(i,a===i)}),1)}function ie(t){var i=e.getDirectoryPath(e.getDirectoryPath(t)),a=n.toPath(i);return a===C||r(a)}}}(d||(d={})),function(e){!function(t){var r,n;function a(t,r,n){var i=t.importModuleSpecifierPreference,a=t.importModuleSpecifierEnding;return{relativePreference:"relative"===i?0:"non-relative"===i?1:"project-relative"===i?3:2,ending:function(){switch(a){case"minimal":return 0;case"index":return 1;case"js":return 2;default:return function(t){var r=t.imports;return e.firstDefined(r,(function(t){var r=t.text;return e.pathIsRelative(r)?e.hasJSFileExtension(r):void 0}))||!1}(n)?2:e.getEmitModuleResolutionKind(r)!==e.ModuleResolutionKind.NodeJs?1:0}}()}}function o(t,r,n,i,a){var o=s(r,i),l=m(r,n,i,t.packageManagerType);return e.firstDefined(l,(function(e){return _(e,o,i,t)}))||c(n,o,t,i,a)}function s(t,r){return{getCanonicalFileName:e.createGetCanonicalFileName(!r.useCaseSensitiveFileNames||r.useCaseSensitiveFileNames()),importingSourceFileName:t,sourceDirectory:e.getDirectoryPath(t)}}function c(t,r,n,i,a){var o=a.ending,s=a.relativePreference,c=n.baseUrl,u=n.paths,d=n.rootDirs,f=r.sourceDirectory,m=r.getCanonicalFileName,_=d&&function(t,r,n,i,a,o){var s=h(r,t,i);if(void 0===s)return;var c=h(n,t,i),l=void 0!==c?e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(c,s,i)):s;return e.getEmitModuleResolutionKind(o)===e.ModuleResolutionKind.NodeJs?y(l,a,o):e.removeFileExtension(l)}(d,t,f,m,o,n)||y(e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(f,t,m)),o,n);if(!c&&!u||0===s)return _;var k=v(t,e.getPathsBasePath(n,i)||c,m);if(!k)return _;var x=y(k,o,n),E=u&&g(e.removeFileExtension(k),x,u),S=void 0===E&&void 0!==c?x:E;if(!S)return _;if(1===s)return S;if(3===s){var D=i.getCurrentDirectory(),w=e.toPath(t,D,m),T=e.startsWith(f,D),C=e.startsWith(w,D);if(T&&!C||!T&&C)return S;var A=n.packageManagerType,N=p(i,e.getDirectoryPath(w),A);return p(i,f,A)!==N?S:_}return 2!==s&&e.Debug.assertNever(s),b(S)||l(_)<l(S)?_:S}function l(t){for(var r=0,n=e.startsWith(t,"./")?2:0;n<t.length;n++)47===t.charCodeAt(n)&&r++;return r}function d(t,r){return e.compareBooleans(r.isRedirect,t.isRedirect)||e.compareNumberOfDirectorySeparators(t.path,r.path)}function p(t,r,n){return t.getNearestAncestorDirectoryWithPackageJson?t.getNearestAncestorDirectoryWithPackageJson(r):!!e.forEachAncestorDirectory(r,(function(r){return!!t.fileExists(e.combinePaths(r,e.getPackageJsonByPMType(n)))||void 0}))}function f(t,r,n,a,o,s){var c=e.hostGetCanonicalFileName(n),l=n.getCurrentDirectory(),u=n.isSourceOfProjectReferenceRedirect(r)?n.getProjectReferenceRedirect(r):void 0,d=e.toPath(r,l,c),p=n.redirectTargetsMap.get(d)||e.emptyArray,f=i(i(i([],u?[u]:e.emptyArray),[r]),p).map((function(t){return e.getNormalizedAbsolutePath(t,l)})),m=!e.every(f,e.containsIgnoredPath);if(!a){var g=e.forEach(f,(function(t){return!(m&&e.containsIgnoredPath(t))&&o(t,u===t)}));if(g)return g}var _=(n.getSymlinkCache?n.getSymlinkCache():e.discoverProbableSymlinks(n.getSourceFiles(),c,l,s)).getSymlinkedDirectoriesByRealpath(),h=e.getNormalizedAbsolutePath(r,l);return _&&e.forEachAncestorDirectory(e.getDirectoryPath(h),(function(r){var n=_.get(e.ensureTrailingDirectorySeparator(e.toPath(r,l,c)));if(n)return!e.startsWithDirectory(t,r,c)&&e.forEach(f,(function(t){if(e.startsWithDirectory(t,r,c))for(var i=e.getRelativePathFromDirectory(r,t,c),a=0,s=n;a<s.length;a++){var l=s[a],d=e.resolvePath(l,i),p=o(d,t===u);if(m=!0,p)return p}}))}))||(a?e.forEach(f,(function(t){return m&&e.containsIgnoredPath(t)?void 0:o(t,t===u)})):void 0)}function m(t,r,n,i){var a=n.getCurrentDirectory(),o=e.hostGetCanonicalFileName(n),s=new e.Map,c=!1;f(t,r,n,!0,(function(t,r){var n=e.isOhpm(i)?e.pathContainsOHModules(t):e.pathContainsNodeModules(t);s.set(t,{path:o(t),isRedirect:r,isInNodeModules:n}),c=c||n}),e.isOhpm(i));for(var l,u=[],p=function(t){var r,n=e.ensureTrailingDirectorySeparator(t);s.forEach((function(t,i){var a=t.path,o=t.isRedirect,c=t.isInNodeModules;e.startsWith(a,n)&&((r||(r=[])).push({path:i,isRedirect:o,isInNodeModules:c}),s.delete(i))})),r&&(r.length>1&&r.sort(d),u.push.apply(u,r));var i=e.getDirectoryPath(t);if(i===t)return l=t,"break";l=t=i},m=e.getDirectoryPath(e.toPath(t,a,o));0!==s.size;){var g=p(m);if(m=l,"break"===g)break}if(s.size){var _=e.arrayFrom(s.values());_.length>1&&_.sort(d),u.push.apply(u,_)}return u}function g(t,r,n){for(var i in n)for(var a=0,o=n[i];a<o.length;a++){var s=o[a],c=e.removeFileExtension(e.normalizePath(s)),l=c.indexOf("*");if(-1!==l){var u=c.substr(0,l),d=c.substr(l+1);if(r.length>=u.length+d.length&&e.startsWith(r,u)&&e.endsWith(r,d)||!d&&r===e.removeTrailingDirectorySeparator(u)){var p=r.substr(u.length,r.length-d.length);return i.replace("*",p)}}else if(c===r||c===t)return i}}function _(t,r,n,i,a){var o=t.path,s=t.isRedirect,c=r.getCanonicalFileName,l=r.sourceDirectory;if(n.fileExists&&n.readFile){var d=function(e,t){var r,n=0,i=0,a=0,o=0;!function(e){e[e.BeforeNodeModules=0]="BeforeNodeModules",e[e.NodeModules=1]="NodeModules",e[e.Scope=2]="Scope",e[e.PackageContent=3]="PackageContent"}(r||(r={}));var s=0,c=0,l=0;for(;c>=0;)switch(s=c,c=e.indexOf("/",s+1),l){case 0:e.indexOf(t,s)===s&&(n=s,i=c,l=1);break;case 1:case 2:1===l&&"@"===e.charAt(s+1)?l=2:(a=c,l=3);break;case 3:l=e.indexOf(t,s)===s?1:3}return o=s,l>1?{topLevelNodeModulesIndex:n,topLevelPackageNameIndex:i,packageRootIndex:a,fileNameIndex:o}:void 0}(o,e.isOhpm(i.packageManagerType)?e.ohModulesPathPart:e.nodeModulesPathPart);if(d){var p=o,f=!1;if(!a)for(var m=d.packageRootIndex,_=void 0;;){var h=D(m),v=h.moduleFileToTry,b=h.packageRootPath;if(b){p=b,f=!0;break}if(_||(_=v),-1===(m=o.indexOf(e.directorySeparator,m+1))){p=w(_);break}}if(!s||f){var k=n.getGlobalTypingsCacheLocation&&n.getGlobalTypingsCacheLocation(),x=c(p.substring(0,d.topLevelNodeModulesIndex));if(e.startsWith(l,x)||k&&e.startsWith(c(k),x)){var E=p.substring(d.topLevelPackageNameIndex+1),S=e.getPackageNameFromTypesPackageName(E);return e.getEmitModuleResolutionKind(i)!==e.ModuleResolutionKind.NodeJs&&S===E?void 0:S}}}}function D(t){var r=o.substring(0,t),a=e.combinePaths(r,e.getPackageJsonByPMType(i.packageManagerType)),s=o;if(n.fileExists(a)){var l=e.isOhpm(i.packageManagerType)?u.parse(n.readFile(a)):JSON.parse(n.readFile(a)),d=l.typesVersions?e.getPackageJsonTypesVersionsPaths(l.typesVersions):void 0;if(d){var p=o.slice(r.length+1),f=g(e.removeFileExtension(p),y(p,0,i),d.paths);void 0!==f&&(s=e.combinePaths(r,f))}var m=l.typings||l.types||l.main;if(e.isString(m)){var _=e.toPath(m,r,c);if(e.removeFileExtension(_)===e.removeFileExtension(c(s)))return{packageRootPath:r,moduleFileToTry:s}}}return{moduleFileToTry:s}}function w(t){var r=e.removeFileExtension(t);return"/index"!==c(r.substring(d.fileNameIndex))||function(t,r){if(!t.fileExists)return;for(var n=e.getSupportedExtensions({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]),i=0,a=n;i<a.length;i++){var o=r+a[i];if(t.fileExists(o))return o}}(n,r.substring(0,d.fileNameIndex))?r:r.substring(0,d.fileNameIndex)}}function h(t,r,n){return e.firstDefined(r,(function(e){var r=v(t,e,n);return b(r)?void 0:r}))}function y(t,r,n){if(e.fileExtensionIs(t,".json"))return t;var i=e.removeFileExtension(t);switch(r){case 0:return e.removeSuffix(i,"/index");case 1:return i;case 2:return i+function(t,r){var n=e.extensionFromPath(t);switch(n){case".ts":case".d.ts":case".ets":case".d.ets":return".js";case".tsx":return 1===r.jsx?".jsx":".js";case".js":case".jsx":case".json":return n;case".tsbuildinfo":return e.Debug.fail("Extension .tsbuildinfo is unsupported:: FileName:: "+t);default:return e.Debug.assertNever(n)}}(t,n);default:return e.Debug.assertNever(r)}}function v(t,r,n){var i=e.getRelativePathToDirectoryOrUrl(r,t,r,n,!1);return e.isRootedDiskPath(i)?void 0:i}function b(t){return e.startsWith(t,"..")}!function(e){e[e.Relative=0]="Relative",e[e.NonRelative=1]="NonRelative",e[e.Shortest=2]="Shortest",e[e.ExternalNonRelative=3]="ExternalNonRelative"}(r||(r={})),function(e){e[e.Minimal=0]="Minimal",e[e.Index=1]="Index",e[e.JsExtension=2]="JsExtension"}(n||(n={})),t.updateModuleSpecifier=function(t,r,n,i,a){var s=o(t,r,n,i,function(t,r){return{relativePreference:e.isExternalModuleNameRelative(r)?0:1,ending:e.hasJSFileExtension(r)?2:e.getEmitModuleResolutionKind(t)!==e.ModuleResolutionKind.NodeJs||e.endsWith(r,"index")?1:0}}(t,a));if(s!==a)return s},t.getModuleSpecifier=function(e,t,r,n,i,s){return void 0===s&&(s={}),o(e,r,n,i,a(s,e,t))},t.getModulesPackageName=function(t,r,n,i){var a=s(r,i),o=m(r,n,i,t.packageManagerType);return e.firstDefined(o,(function(e){return _(e,a,i,t,!0)}))},t.getModuleSpecifiers=function(t,r,n,i,o,l){var u=function(t,r){var n=e.find(t.declarations,(function(t){return e.isNonGlobalAmbientModule(t)&&(!e.isExternalModuleAugmentation(t)||!e.isExternalModuleNameRelative(e.getTextOfIdentifierOrLiteral(t.name)))}));if(n)return n.name.text;var i=e.mapDefined(t.declarations,(function(t){var n,i,a,o;if(e.isModuleDeclaration(t)){var s=u(t);if((null===(n=null==s?void 0:s.parent)||void 0===n?void 0:n.parent)&&e.isModuleBlock(s.parent)&&e.isAmbientModule(s.parent.parent)&&e.isSourceFile(s.parent.parent.parent)){var c=null===(o=null===(a=null===(i=s.parent.parent.symbol.exports)||void 0===i?void 0:i.get("export="))||void 0===a?void 0:a.valueDeclaration)||void 0===o?void 0:o.expression;if(c){var l=r.getSymbolAtLocation(c);if(l)if((2097152&(null==l?void 0:l.flags)?r.getAliasedSymbol(l):l)===t.symbol)return s.parent.parent}}}function u(e){for(;4&e.flags;)e=e.parent;return e}})),a=i[0];if(a)return a.name.text}(t,r);if(u)return[u];var d=s(i.path,o),p=e.getSourceFileOfNode(t.valueDeclaration||e.getNonAugmentationDeclaration(t)),f=m(i.path,p.originalFileName,o,n.packageManagerType),g=a(l,n,i),h=e.forEach(f,(function(t){return e.forEach(o.getFileIncludeReasons().get(e.toPath(t.path,o.getCurrentDirectory(),d.getCanonicalFileName)),(function(t){if(t.kind===e.FileIncludeKind.Import&&t.file===i.path){var r=e.getModuleNameStringLiteralAt(i,t.index).text;return 1===g.relativePreference&&e.pathIsRelative(r)?void 0:r}}))}));if(h)return[h];for(var y,v,b,k=e.some(f,(function(e){return e.isInNodeModules})),x=0,E=f;x<E.length;x++){var S=E[x],D=_(S,d,o,n);if(y=e.append(y,D),D&&S.isRedirect)return y;if(!D&&!S.isRedirect){var w=c(S.path,d,n,o,g);e.pathIsBareSpecifier(w)?v=e.append(v,w):k&&!S.isInNodeModules||(b=e.append(b,w))}}return(null==v?void 0:v.length)?v:(null==y?void 0:y.length)?y:e.Debug.checkDefined(b)},t.countPathComponents=l,t.forEachFileNameOfModule=f}(e.moduleSpecifiers||(e.moduleSpecifiers={}))}(d||(d={})),function(e){var t=e.sys?{getCurrentDirectory:function(){return e.sys.getCurrentDirectory()},getNewLine:function(){return e.sys.newLine},getCanonicalFileName:e.createGetCanonicalFileName(e.sys.useCaseSensitiveFileNames)}:void 0;function r(r,n){var i=r===e.sys?t:{getCurrentDirectory:function(){return r.getCurrentDirectory()},getNewLine:function(){return r.newLine},getCanonicalFileName:e.createGetCanonicalFileName(r.useCaseSensitiveFileNames)};if(!n)return function(t){return r.write(e.formatDiagnostic(t,i))};var a=new Array(1);return function(t){a[0]=t,r.write(e.formatDiagnosticsWithColorAndContext(a,i)+i.getNewLine()),a[0]=void 0}}function n(t,r,n){return!(!t.clearScreen||n.preserveWatchOutput||n.extendedDiagnostics||n.diagnostics||!e.contains(e.screenStartingMessageCodes,r.code))&&(t.clearScreen(),!0)}function a(e){return e.now?e.now().toLocaleTimeString("en-US",{timeZone:"UTC"}):(new Date).toLocaleTimeString()}function o(t,r){return r?function(r,i,o){n(t,r,o);var s="["+e.formatColorAndReset(a(t),e.ForegroundColorEscapeSequences.Grey)+"] ";s+=""+e.flattenDiagnosticMessageText(r.messageText,t.newLine)+(i+i),t.write(s)}:function(r,i,o){var s="";n(t,r,o)||(s+=i),s+=a(t)+" - ",s+=""+e.flattenDiagnosticMessageText(r.messageText,t.newLine)+function(t,r){return e.contains(e.screenStartingMessageCodes,t.code)?r+r:r}(r,i),t.write(s)}}function s(t){return e.countWhere(t,(function(t){return t.category===e.DiagnosticCategory.Error}))}function c(t){return 1===t?e.Diagnostics.Found_1_error_Watching_for_file_changes:e.Diagnostics.Found_0_errors_Watching_for_file_changes}function l(t,r){if(0===t)return"";var n=e.createCompilerDiagnostic(1===t?e.Diagnostics.Found_1_error:e.Diagnostics.Found_0_errors,t);return""+r+e.flattenDiagnosticMessageText(n.messageText,r)+r+r}function u(e){return!!e.getState}function d(t,r){var n=t.getCompilerOptions();n.explainFiles?p(u(t)?t.getProgram():t,r):(n.listFiles||n.listFilesOnly)&&e.forEach(t.getSourceFiles(),(function(e){r(e.fileName)}))}function p(t,r){for(var n,i,a=t.getFileIncludeReasons(),o=e.createGetCanonicalFileName(t.useCaseSensitiveFileNames()),s=function(r){return e.convertToRelativePath(r,t.getCurrentDirectory(),o)},c=0,l=t.getSourceFiles();c<l.length;c++){var u=l[c];r(""+h(u,s)),null===(n=a.get(u.path))||void 0===n||n.forEach((function(e){return r(" "+_(t,e,s).messageText)})),null===(i=f(u,s))||void 0===i||i.forEach((function(e){return r(" "+e.messageText)}))}}function f(t,r){var n;return t.path!==t.resolvedPath&&(n||(n=[])).push(e.chainDiagnosticMessages(void 0,e.Diagnostics.File_is_output_of_project_reference_source_0,h(t.originalFileName,r))),t.redirectInfo&&(n||(n=[])).push(e.chainDiagnosticMessages(void 0,e.Diagnostics.File_redirects_to_file_0,h(t.redirectInfo.redirectTarget,r))),n}function m(t,r){var n,i=t.getCompilerOptions().configFile;if(null===(n=null==i?void 0:i.configFileSpecs)||void 0===n?void 0:n.validatedFilesSpec){var a=e.createGetCanonicalFileName(t.useCaseSensitiveFileNames()),o=a(r),s=e.getDirectoryPath(e.getNormalizedAbsolutePath(i.fileName,t.getCurrentDirectory()));return e.find(i.configFileSpecs.validatedFilesSpec,(function(t){return a(e.getNormalizedAbsolutePath(t,s))===o}))}}function g(t,r){var n,i,a=t.getCompilerOptions().configFile;if(null===(n=null==a?void 0:a.configFileSpecs)||void 0===n?void 0:n.validatedIncludeSpecs){var o=e.fileExtensionIs(r,".json"),s=e.getDirectoryPath(e.getNormalizedAbsolutePath(a.fileName,t.getCurrentDirectory())),c=t.useCaseSensitiveFileNames();return e.find(null===(i=null==a?void 0:a.configFileSpecs)||void 0===i?void 0:i.validatedIncludeSpecs,(function(t){if(o&&!e.endsWith(t,".json"))return!1;var n=e.getPatternFromSpec(t,s,"files");return!!n&&e.getRegexFromPattern("("+n+")$",c).test(r)}))}}function _(t,r,n){var i,a,o=t.getCompilerOptions();if(e.isReferencedFile(r)){var s=e.getReferencedFileLocation((function(e){return t.getSourceFileByPath(e)}),r),c=e.isReferenceFileLocation(s)?s.file.text.substring(s.pos,s.end):'"'+s.text+'"',l=void 0;switch(e.Debug.assert(e.isReferenceFileLocation(s)||r.kind===e.FileIncludeKind.Import,"Only synthetic references are imports"),r.kind){case e.FileIncludeKind.Import:l=e.isReferenceFileLocation(s)?s.packageId?e.Diagnostics.Imported_via_0_from_file_1_with_packageId_2:e.Diagnostics.Imported_via_0_from_file_1:s.text===e.externalHelpersModuleNameText?s.packageId?e.Diagnostics.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:e.Diagnostics.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:s.packageId?e.Diagnostics.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:e.Diagnostics.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case e.FileIncludeKind.ReferenceFile:e.Debug.assert(!s.packageId),l=e.Diagnostics.Referenced_via_0_from_file_1;break;case e.FileIncludeKind.TypeReferenceDirective:l=s.packageId?e.Diagnostics.Type_library_referenced_via_0_from_file_1_with_packageId_2:e.Diagnostics.Type_library_referenced_via_0_from_file_1;break;case e.FileIncludeKind.LibReferenceDirective:e.Debug.assert(!s.packageId),l=e.Diagnostics.Library_referenced_via_0_from_file_1;break;default:e.Debug.assertNever(r)}return e.chainDiagnosticMessages(void 0,l,c,h(s.file,n),s.packageId&&e.packageIdToString(s.packageId))}switch(r.kind){case e.FileIncludeKind.RootFile:if(!(null===(i=o.configFile)||void 0===i?void 0:i.configFileSpecs))return e.chainDiagnosticMessages(void 0,e.Diagnostics.Root_file_specified_for_compilation);var u=e.getNormalizedAbsolutePath(t.getRootFileNames()[r.index],t.getCurrentDirectory());if(m(t,u))return e.chainDiagnosticMessages(void 0,e.Diagnostics.Part_of_files_list_in_tsconfig_json);var d=g(t,u);return d?e.chainDiagnosticMessages(void 0,e.Diagnostics.Matched_by_include_pattern_0_in_1,d,h(o.configFile,n)):e.chainDiagnosticMessages(void 0,e.Diagnostics.Root_file_specified_for_compilation);case e.FileIncludeKind.SourceFromProjectReference:case e.FileIncludeKind.OutputFromProjectReference:var p=r.kind===e.FileIncludeKind.OutputFromProjectReference,f=e.Debug.checkDefined(null===(a=t.getResolvedProjectReferences())||void 0===a?void 0:a[r.index]);return e.chainDiagnosticMessages(void 0,e.outFile(o)?p?e.Diagnostics.Output_from_referenced_project_0_included_because_1_specified:e.Diagnostics.Source_from_referenced_project_0_included_because_1_specified:p?e.Diagnostics.Output_from_referenced_project_0_included_because_module_is_specified_as_none:e.Diagnostics.Source_from_referenced_project_0_included_because_module_is_specified_as_none,h(f.sourceFile.fileName,n),o.outFile?"--outFile":"--out");case e.FileIncludeKind.AutomaticTypeDirectiveFile:return e.chainDiagnosticMessages(void 0,o.types?r.packageId?e.Diagnostics.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:e.Diagnostics.Entry_point_of_type_library_0_specified_in_compilerOptions:r.packageId?e.Diagnostics.Entry_point_for_implicit_type_library_0_with_packageId_1:e.Diagnostics.Entry_point_for_implicit_type_library_0,r.typeReference,r.packageId&&e.packageIdToString(r.packageId));case e.FileIncludeKind.LibFile:if(void 0!==r.index)return e.chainDiagnosticMessages(void 0,e.Diagnostics.Library_0_specified_in_compilerOptions,o.lib[r.index]);var _=e.forEachEntry(e.targetOptionDeclaration.type,(function(e,t){return e===o.target?t:void 0}));return e.chainDiagnosticMessages(void 0,_?e.Diagnostics.Default_library_for_target_0:e.Diagnostics.Default_library,_);default:e.Debug.assertNever(r)}}function h(t,r){var n=e.isString(t)?t:t.fileName;return r?r(n):n}function y(t,r,n,i,a,o,c,l){var u=!!t.getCompilerOptions().listFilesOnly,p=t.getConfigFileParsingDiagnostics().slice(),f=p.length;e.addRange(p,t.getSyntacticDiagnostics(void 0,o)),p.length===f&&(e.addRange(p,t.getOptionsDiagnostics(o)),u||(e.addRange(p,t.getGlobalDiagnostics(o)),p.length===f&&e.addRange(p,t.getSemanticDiagnostics(void 0,o))));var m=u?{emitSkipped:!0,diagnostics:e.emptyArray}:t.emit(void 0,a,o,c,l),g=m.emittedFiles,_=m.diagnostics;e.addRange(p,_);var h=e.sortAndDeduplicateDiagnostics(p);if(h.forEach(r),n){var y=t.getCurrentDirectory();e.forEach(g,(function(t){var r=e.getNormalizedAbsolutePath(t,y);n("TSFILE: "+r)})),d(t,n)}return i&&i(s(h)),{emitResult:m,diagnostics:h}}function v(t,r,n,i,a,o,s,c){var l=y(t,r,n,i,a,o,s,c),u=l.emitResult,d=l.diagnostics;return u.emitSkipped&&d.length>0?e.ExitStatus.DiagnosticsPresent_OutputsSkipped:d.length>0?e.ExitStatus.DiagnosticsPresent_OutputsGenerated:e.ExitStatus.Success}function b(t,r){return void 0===t&&(t=e.sys),{onWatchStatusChange:r||o(t),watchFile:e.maybeBind(t,t.watchFile)||e.returnNoopFileWatcher,watchDirectory:e.maybeBind(t,t.watchDirectory)||e.returnNoopFileWatcher,setTimeout:e.maybeBind(t,t.setTimeout)||e.noop,clearTimeout:e.maybeBind(t,t.clearTimeout)||e.noop}}function k(t,r){var n=e.memoize((function(){return e.getDirectoryPath(e.normalizePath(t.getExecutingFilePath()))}));return{useCaseSensitiveFileNames:function(){return t.useCaseSensitiveFileNames},getNewLine:function(){return t.newLine},getCurrentDirectory:e.memoize((function(){return t.getCurrentDirectory()})),getDefaultLibLocation:n,getDefaultLibFileName:function(t){return e.combinePaths(n(),e.getDefaultLibFileName(t))},fileExists:function(e){return t.fileExists(e)},readFile:function(e,r){return t.readFile(e,r)},directoryExists:function(e){return t.directoryExists(e)},getDirectories:function(e){return t.getDirectories(e)},readDirectory:function(e,r,n,i,a){return t.readDirectory(e,r,n,i,a)},realpath:e.maybeBind(t,t.realpath),getEnvironmentVariable:e.maybeBind(t,t.getEnvironmentVariable),trace:function(e){return t.write(e+t.newLine)},createDirectory:function(e){return t.createDirectory(e)},writeFile:function(e,r,n){return t.writeFile(e,r,n)},createHash:e.maybeBind(t,t.createHash),createProgram:r||e.createEmitAndSemanticDiagnosticsBuilderProgram}}function x(t,r,n,i){void 0===t&&(t=e.sys);var a=function(e){return t.write(e+t.newLine)},o=k(t,r);return e.copyProperties(o,b(t,i)),o.afterProgramCreate=function(r){var i=r.getCompilerOptions(),s=e.getNewLineCharacter(i,(function(){return t.newLine}));y(r,n,a,(function(t){return o.onWatchStatusChange(e.createCompilerDiagnostic(c(t),t),s,i,t)}))},o}function E(t,r,n){r(n),t.exit(e.ExitStatus.DiagnosticsPresent_OutputsSkipped)}e.createDiagnosticReporter=r,e.screenStartingMessageCodes=[e.Diagnostics.Starting_compilation_in_watch_mode.code,e.Diagnostics.File_change_detected_Starting_incremental_compilation.code],e.getLocaleTimeString=a,e.createWatchStatusReporter=o,e.parseConfigFileWithSystem=function(t,r,n,i,a){var o=i;o.onUnRecoverableConfigFileDiagnostic=function(e){return E(i,a,e)};var s=e.getParsedCommandLineOfConfigFile(t,r,o,void 0,n);return o.onUnRecoverableConfigFileDiagnostic=void 0,s},e.getErrorCountForSummary=s,e.getWatchErrorSummaryDiagnosticMessage=c,e.getErrorSummaryText=l,e.isBuilderProgram=u,e.listFiles=d,e.explainFiles=p,e.explainIfFileIsRedirect=f,e.getMatchedFileSpec=m,e.getMatchedIncludeSpec=g,e.fileIncludeReasonToDiagnostics=_,e.emitFilesAndReportErrors=y,e.emitFilesAndReportErrorsAndGetExitStatus=v,e.noopFileWatcher={close:e.noop},e.returnNoopFileWatcher=function(){return e.noopFileWatcher},e.createWatchHost=b,e.WatchType={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",TypeRoots:"Type roots"},e.createWatchFactory=function(t,r){var n=t.trace?r.extendedDiagnostics?e.WatchLogLevel.Verbose:r.diagnostics?e.WatchLogLevel.TriggerOnly:e.WatchLogLevel.None:e.WatchLogLevel.None,i=n!==e.WatchLogLevel.None?function(e){return t.trace(e)}:e.noop,a=e.getWatchFactory(t,n,i);return a.writeLog=i,a},e.createCompilerHostFromProgramHost=function(t,r,n){void 0===n&&(n=t);var i=t.useCaseSensitiveFileNames(),a=e.memoize((function(){return t.getNewLine()}));return{getSourceFile:function(n,i,a){var o,s=r();try{e.performance.mark("beforeIORead"),o=t.readFile(n,s.charset),e.performance.mark("afterIORead"),e.performance.measure("I/O Read","beforeIORead","afterIORead")}catch(e){a&&a(e.message),o=""}return void 0!==o?e.createSourceFile(n,o,i,void 0,void 0,s):void 0},getDefaultLibLocation:e.maybeBind(t,t.getDefaultLibLocation),getDefaultLibFileName:function(e){return t.getDefaultLibFileName(e)},writeFile:function(r,n,i,a){try{e.performance.mark("beforeIOWrite"),e.writeFileEnsuringDirectories(r,n,i,(function(e,r,n){return t.writeFile(e,r,n)}),(function(e){return t.createDirectory(e)}),(function(e){return t.directoryExists(e)})),e.performance.mark("afterIOWrite"),e.performance.measure("I/O Write","beforeIOWrite","afterIOWrite")}catch(e){a&&a(e.message)}},getCurrentDirectory:e.memoize((function(){return t.getCurrentDirectory()})),useCaseSensitiveFileNames:function(){return i},getCanonicalFileName:e.createGetCanonicalFileName(i),getNewLine:function(){return e.getNewLineCharacter(r(),a)},fileExists:function(e){return t.fileExists(e)},readFile:function(e){return t.readFile(e)},trace:e.maybeBind(t,t.trace),directoryExists:e.maybeBind(n,n.directoryExists),getDirectories:e.maybeBind(n,n.getDirectories),realpath:e.maybeBind(t,t.realpath),getEnvironmentVariable:e.maybeBind(t,t.getEnvironmentVariable)||function(){return""},createHash:e.maybeBind(t,t.createHash),readDirectory:e.maybeBind(t,t.readDirectory)}},e.setGetSourceFileAsHashVersioned=function(t,r){var n=t.getSourceFile,a=e.maybeBind(r,r.createHash)||e.generateDjb2Hash;t.getSourceFile=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];var o=n.call.apply(n,i([t],e));return o&&(o.version=a(o.text)),o}},e.createProgramHost=k,e.createWatchCompilerHostOfConfigFile=function(e){var t=e.configFileName,n=e.optionsToExtend,i=e.watchOptionsToExtend,a=e.extraFileExtensions,o=e.system,s=e.createProgram,c=e.reportDiagnostic,l=e.reportWatchStatus,u=c||r(o),d=x(o,s,u,l);return d.onUnRecoverableConfigFileDiagnostic=function(e){return E(o,u,e)},d.configFileName=t,d.optionsToExtend=n,d.watchOptionsToExtend=i,d.extraFileExtensions=a,d},e.createWatchCompilerHostOfFilesAndCompilerOptions=function(e){var t=e.rootFiles,n=e.options,i=e.watchOptions,a=e.projectReferences,o=e.system,s=e.createProgram,c=e.reportDiagnostic,l=e.reportWatchStatus,u=x(o,s,c||r(o),l);return u.rootFiles=t,u.options=n,u.watchOptions=i,u.projectReferences=a,u},e.performIncrementalCompilation=function(t){var n=t.system||e.sys,i=t.host||(t.host=e.createIncrementalCompilerHost(t.options,n)),a=e.createIncrementalProgram(t),o=v(a,t.reportDiagnostic||r(n),(function(e){return i.trace&&i.trace(e)}),t.reportErrorSummary||t.options.pretty?function(e){return n.write(l(e,n.newLine))}:void 0);return t.afterProgramEmitAndDiagnostics&&t.afterProgramEmitAndDiagnostics(a),o}}(d||(d={})),function(e){function t(t,r){if(!e.outFile(t)){var n=e.getTsBuildInfoEmitOutputFilePath(t);if(n){var i=r.readFile(n);if(i){var a=e.getBuildInfo(i);if(a.version===e.version&&a.program)return e.createBuildProgramUsingProgramBuildInfo(a.program,n,r)}}}}function r(t,r){void 0===r&&(r=e.sys);var n=e.createCompilerHostWorker(t,void 0,r);return n.createHash=e.maybeBind(r,r.createHash),e.setGetSourceFileAsHashVersioned(n,r),e.changeCompilerHostLikeToUseCache(n,(function(t){return e.toPath(t,n.getCurrentDirectory(),n.getCanonicalFileName)})),n}e.readBuilderProgram=t,e.createIncrementalCompilerHost=r,e.createIncrementalProgram=function(n){var i=n.rootNames,a=n.options,o=n.configFileParsingDiagnostics,s=n.projectReferences,c=n.host,l=n.createProgram;return c=c||r(a),(l=l||e.createEmitAndSemanticDiagnosticsBuilderProgram)(i,a,c,t(a,c),o,s)},e.createWatchCompilerHost=function(t,r,n,i,a,o,s,c){return e.isArray(t)?e.createWatchCompilerHostOfFilesAndCompilerOptions({rootFiles:t,options:r,watchOptions:c,projectReferences:s,system:n,createProgram:i,reportDiagnostic:a,reportWatchStatus:o}):e.createWatchCompilerHostOfConfigFile({configFileName:t,optionsToExtend:r,watchOptionsToExtend:s,extraFileExtensions:c,system:n,createProgram:i,reportDiagnostic:a,reportWatchStatus:o})},e.createWatchProgram=function(r){var n,a,o,s,c,l,u,d,p,f,m=new e.Map,g=!1,_=r.useCaseSensitiveFileNames(),h=r.getCurrentDirectory(),y=r.configFileName,v=r.optionsToExtend,b=void 0===v?{}:v,k=r.watchOptionsToExtend,x=r.extraFileExtensions,E=r.createProgram,S=r.rootFiles,D=r.options,w=r.watchOptions,T=r.projectReferences,C=!1,A=!1,N=void 0===y?void 0:e.createCachedDirectoryStructureHost(r,h,_),P=N||r,I=e.parseConfigHostFromCompilerHostLike(r,P),F=G();y&&r.configFileParsingResult&&(ue(r.configFileParsingResult),F=G()),te(e.Diagnostics.Starting_compilation_in_watch_mode),y&&!r.configFileParsingResult&&(F=e.getNewLineCharacter(b,(function(){return r.getNewLine()})),e.Debug.assert(!S),le(),F=G());var O,R=e.createWatchFactory(r,D),M=R.watchFile,L=R.watchDirectory,j=R.writeLog,B=e.createGetCanonicalFileName(_);j("Current directory: "+h+" CaseSensitiveFileNames: "+_),y&&(O=M(y,oe,e.PollingInterval.High,w,e.WatchType.ConfigFile));var z=e.createCompilerHostFromProgramHost(r,(function(){return D}),P);e.setGetSourceFileAsHashVersioned(z,r);var U=z.getSourceFile;z.getSourceFile=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return Q.apply(void 0,i([e,$(e)],t))},z.getSourceFileByPath=Q,z.getNewLine=function(){return F},z.fileExists=X,z.onReleaseOldSourceFile=function(e,t,r){var n=m.get(e.resolvedPath);void 0!==n&&(Y(n)?(d||(d=[])).push(e.path):n.sourceFile===e&&(n.fileWatcher&&n.fileWatcher.close(),m.delete(e.resolvedPath),r||q.removeResolutionsOfFile(e.path)))},z.toPath=$,z.getCompilationSettings=function(){return D},z.useSourceOfProjectReferenceRedirect=e.maybeBind(r,r.useSourceOfProjectReferenceRedirect),z.watchDirectoryOfFailedLookupLocation=function(t,r,n){return L(t,r,n,w,e.WatchType.FailedLookupLocations)},z.watchTypeRootsDirectory=function(t,r,n){return L(t,r,n,w,e.WatchType.TypeRoots)},z.getCachedDirectoryStructureHost=function(){return N},z.scheduleInvalidateResolutionsOfFailedLookupLocations=function(){if(!r.setTimeout||!r.clearTimeout)return q.invalidateResolutionsOfFailedLookupLocations();var e=ne();j("Scheduling invalidateFailedLookup"+(e?", Cancelled earlier one":"")),u=r.setTimeout(ie,250)},z.onInvalidatedResolution=ae,z.onChangedAutomaticTypeDirectiveNames=ae,z.fileIsOpen=e.returnFalse,z.getCurrentProgram=K,z.writeLog=j;var q=e.createResolutionCache(z,y?e.getDirectoryPath(e.getNormalizedAbsolutePath(y,h)):h,!1);z.resolveModuleNames=r.resolveModuleNames?function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.resolveModuleNames.apply(r,e)}:function(e,t,r,n){return q.resolveModuleNames(e,t,r,n)},z.resolveTypeReferenceDirectives=r.resolveTypeReferenceDirectives?function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return r.resolveTypeReferenceDirectives.apply(r,e)}:function(e,t,r){return q.resolveTypeReferenceDirectives(e,t,r)};var J=!!r.resolveModuleNames||!!r.resolveTypeReferenceDirectives;return n=t(D,z),W(),_e(),ye(),y?{getCurrentProgram:H,getProgram:ce,close:V}:{getCurrentProgram:H,getProgram:ce,updateRootFileNames:function(t){e.Debug.assert(!y,"Cannot update root file names with config file watch mode"),S=t,ae()},close:V};function V(){ne(),q.clear(),e.clearMap(m,(function(e){e&&e.fileWatcher&&(e.fileWatcher.close(),e.fileWatcher=void 0)})),O&&(O.close(),O=void 0),o&&(e.clearMap(o,e.closeFileWatcher),o=void 0),c&&(e.clearMap(c,e.closeFileWatcherOf),c=void 0),s&&(e.clearMap(s,e.closeFileWatcher),s=void 0)}function H(){return n}function K(){return n&&n.getProgramOrUndefined()}function W(){j("Synchronizing program"),ne();var t=H();g&&(F=G(),t&&e.changesAffectModuleResolution(t.getCompilerOptions(),D)&&q.clear());var i=q.createHasInvalidatedResolution(J);return e.isProgramUptoDate(K(),S,D,ee,X,i,re,T)?A&&(n=E(void 0,void 0,z,n,f,T),A=!1):function(t){j("CreatingProgramWith::"),j(" roots: "+JSON.stringify(S)),j(" options: "+JSON.stringify(D));var r=g||!K();g=!1,A=!1,q.startCachingPerDirectoryResolution(),z.hasInvalidatedResolution=t,z.hasChangedAutomaticTypeDirectiveNames=re,n=E(S,D,z,n,f,T),q.finishCachingPerDirectoryResolution(),e.updateMissingFilePathsWatch(n.getProgram(),s||(s=new e.Map),me),r&&q.updateTypeRootsWatch();if(d){for(var i=0,a=d;i<a.length;i++){var o=a[i];s.has(o)||m.delete(o)}d=void 0}}(i),r.afterProgramCreate&&t!==n&&r.afterProgramCreate(n),n}function G(){return e.getNewLineCharacter(D||b,(function(){return r.getNewLine()}))}function $(t){return e.toPath(t,h,B)}function Y(e){return"boolean"==typeof e}function X(e){var t=$(e);return!Y(m.get(t))&&P.fileExists(e)}function Q(t,r,n,i,a){var o=m.get(r);if(!Y(o)){if(void 0===o||a||function(e){return"boolean"==typeof e.version}(o)){var s=U(t,n,i);if(o)s?(o.sourceFile=s,o.version=s.version,o.fileWatcher||(o.fileWatcher=de(r,t,pe,e.PollingInterval.Low,w,e.WatchType.SourceFile))):(o.fileWatcher&&o.fileWatcher.close(),m.set(r,!1));else if(s){var c=de(r,t,pe,e.PollingInterval.Low,w,e.WatchType.SourceFile);m.set(r,{sourceFile:s,version:s.version,fileWatcher:c})}else m.set(r,!1);return s}return o.sourceFile}}function Z(e){var t=m.get(e);void 0!==t&&(Y(t)?m.set(e,{version:!1}):t.version=!1)}function ee(e){var t=m.get(e);return t&&t.version?t.version:void 0}function te(t){r.onWatchStatusChange&&r.onWatchStatusChange(e.createCompilerDiagnostic(t),F,D||b)}function re(){return q.hasChangedAutomaticTypeDirectiveNames()}function ne(){return!!u&&(r.clearTimeout(u),u=void 0,!0)}function ie(){u=void 0,q.invalidateResolutionsOfFailedLookupLocations()&&ae()}function ae(){r.setTimeout&&r.clearTimeout&&(l&&r.clearTimeout(l),j("Scheduling update"),l=r.setTimeout(se,250))}function oe(){e.Debug.assert(!!y),a=e.ConfigFileProgramReloadLevel.Full,ae()}function se(){l=void 0,te(e.Diagnostics.File_change_detected_Starting_incremental_compilation),ce()}function ce(){switch(a){case e.ConfigFileProgramReloadLevel.Partial:e.perfLogger.logStartUpdateProgram("PartialConfigReload"),function(){j("Reloading new file names and options"),S=e.getFileNamesFromConfigSpecs(D.configFile.configFileSpecs,e.getNormalizedAbsolutePath(e.getDirectoryPath(y),h),D,I,x),e.updateErrorForNoInputFiles(S,e.getNormalizedAbsolutePath(y,h),D.configFile.configFileSpecs,f,C)&&(A=!0);W()}();break;case e.ConfigFileProgramReloadLevel.Full:e.perfLogger.logStartUpdateProgram("FullConfigReload"),function(){j("Reloading config file: "+y),a=e.ConfigFileProgramReloadLevel.None,N&&N.clearCache();le(),g=!0,W(),_e(),ye()}();break;default:e.perfLogger.logStartUpdateProgram("SynchronizeProgram"),W()}return e.perfLogger.logStopUpdateProgram("Done"),H()}function le(){ue(e.getParsedCommandLineOfConfigFile(y,b,I,void 0,k,x))}function ue(t){S=t.fileNames,D=t.options,w=t.watchOptions,T=t.projectReferences,p=t.wildcardDirectories,f=e.getConfigFileParsingDiagnostics(t).slice(),C=e.canJsonReportNoInputFiles(t.raw),A=!0}function de(e,t,r,n,i,a){return M(t,(function(t,n){return r(t,n,e)}),n,i,a)}function pe(t,r,n){fe(t,n,r),r===e.FileWatcherEventKind.Deleted&&m.has(n)&&q.invalidateResolutionOfFile(n),q.removeResolutionsFromProjectReferenceRedirects(n),Z(n),ae()}function fe(e,t,r){N&&N.addOrDeleteFile(e,t,r)}function me(t){return de(t,t,ge,e.PollingInterval.Medium,w,e.WatchType.MissingFile)}function ge(t,r,n){fe(t,n,r),r===e.FileWatcherEventKind.Created&&s.has(n)&&(s.get(n).close(),s.delete(n),Z(n),ae())}function _e(){p?e.updateWatchingWildcardDirectories(c||(c=new e.Map),new e.Map(e.getEntries(p)),he):c&&e.clearMap(c,e.closeFileWatcherOf)}function he(t,r){return L(t,(function(r){e.Debug.assert(!!y);var n=$(r);N&&N.addOrDeleteFileOrDirectory(r,n),Z(n),e.isIgnoredFileFromWildCardWatching({watchedDirPath:$(t),fileOrDirectory:r,fileOrDirectoryPath:n,configFileName:y,extraFileExtensions:x,options:D,program:H(),currentDirectory:h,useCaseSensitiveFileNames:_,writeLog:j})||a!==e.ConfigFileProgramReloadLevel.Full&&(a=e.ConfigFileProgramReloadLevel.Partial,ae())}),r,w,e.WatchType.WildcardDirectory)}function ye(){var t;e.mutateMap(o||(o=new e.Map),e.arrayToMap((null===(t=D.configFile)||void 0===t?void 0:t.extendedSourceFiles)||e.emptyArray,$),{createNewValue:ve,onDeleteValue:e.closeFileWatcher})}function ve(t){return M(t,oe,e.PollingInterval.High,w,e.WatchType.ExtendedConfigFile)}}}(d||(d={})),function(e){!function(e){e[e.Unbuildable=0]="Unbuildable",e[e.UpToDate=1]="UpToDate",e[e.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",e[e.OutOfDateWithPrepend=3]="OutOfDateWithPrepend",e[e.OutputMissing=4]="OutputMissing",e[e.OutOfDateWithSelf=5]="OutOfDateWithSelf",e[e.OutOfDateWithUpstream=6]="OutOfDateWithUpstream",e[e.UpstreamOutOfDate=7]="UpstreamOutOfDate",e[e.UpstreamBlocked=8]="UpstreamBlocked",e[e.ComputingUpstream=9]="ComputingUpstream",e[e.TsVersionOutputOfDate=10]="TsVersionOutputOfDate",e[e.ContainerOnly=11]="ContainerOnly"}(e.UpToDateStatusType||(e.UpToDateStatusType={})),e.resolveConfigFileProjectName=function(t){return e.fileExtensionIs(t,".json")?t:e.combinePaths(t,"tsconfig.json")}}(d||(d={})),function(e){var t,r,n,a=new Date(-864e13),o=new Date(864e13);function s(t,r){return function(e,t,r){var n,i=e.get(t);return i||(n=r(),e.set(t,n)),i||n}(t,r,(function(){return new e.Map}))}function c(e,t){return t>e?t:e}function l(t){return e.fileExtensionIs(t,".d.ts")||e.fileExtensionIs(t,".d.ets")}function u(e){return!!e&&!!e.buildOrder}function d(e){return u(e)?e.buildOrder:e}function p(t,r){return function(n){var i=r?"["+e.formatColorAndReset(e.getLocaleTimeString(t),e.ForegroundColorEscapeSequences.Grey)+"] ":e.getLocaleTimeString(t)+" - ";i+=""+e.flattenDiagnosticMessageText(n.messageText,t.newLine)+(t.newLine+t.newLine),t.write(i)}}function f(t,r,n,i){var a=e.createProgramHost(t,r);return a.getModifiedTime=t.getModifiedTime?function(e){return t.getModifiedTime(e)}:e.returnUndefined,a.setModifiedTime=t.setModifiedTime?function(e,r){return t.setModifiedTime(e,r)}:e.noop,a.deleteFile=t.deleteFile?function(e){return t.deleteFile(e)}:e.noop,a.reportDiagnostic=n||e.createDiagnosticReporter(t),a.reportSolutionBuilderStatus=i||p(t),a.now=e.maybeBind(t,t.now),a}function m(t,r,n,i,a){var o,s,c=r,l=r,u=c.getCurrentDirectory(),d=e.createGetCanonicalFileName(c.useCaseSensitiveFileNames()),p=(o=i,s={},e.commonOptionsWithBuild.forEach((function(t){e.hasProperty(o,t.name)&&(s[t.name]=o[t.name])})),s),f=e.createCompilerHostFromProgramHost(c,(function(){return x.projectCompilerOptions}));e.setGetSourceFileAsHashVersioned(f,c),f.getParsedCommandLine=function(e){return y(x,e,_(x,e))},f.resolveModuleNames=e.maybeBind(c,c.resolveModuleNames),f.resolveTypeReferenceDirectives=e.maybeBind(c,c.resolveTypeReferenceDirectives);var m=f.resolveModuleNames?void 0:e.createModuleResolutionCache(u,d);if(!f.resolveModuleNames){var g=function(t,r,n){return e.resolveModuleName(t,r,x.projectCompilerOptions,f,m,n).resolvedModule};f.resolveModuleNames=function(t,r,n,i){return e.loadWithLocalCache(e.Debug.checkEachDefined(t),r,i,g)}}var h=e.createWatchFactory(l,i),v=h.watchFile,b=h.watchDirectory,k=h.writeLog,x={host:c,hostWithWatch:l,currentDirectory:u,getCanonicalFileName:d,parseConfigFileHost:e.parseConfigHostFromCompilerHostLike(c),write:e.maybeBind(c,c.trace),options:i,baseCompilerOptions:p,rootNames:n,baseWatchOptions:a,resolvedConfigFilePaths:new e.Map,configFileCache:new e.Map,projectStatus:new e.Map,buildInfoChecked:new e.Map,extendedConfigCache:new e.Map,builderPrograms:new e.Map,diagnostics:new e.Map,projectPendingBuild:new e.Map,projectErrorsReported:new e.Map,compilerHost:f,moduleResolutionCache:m,buildOrder:void 0,readFileWithCache:function(e){return c.readFile(e)},projectCompilerOptions:p,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:t,currentInvalidatedProject:void 0,watch:t,allWatchedWildcardDirectories:new e.Map,allWatchedInputFiles:new e.Map,allWatchedConfigFiles:new e.Map,allWatchedExtendedConfigFiles:new e.Map,timerToBuildInvalidatedProject:void 0,reportFileChangeDetected:!1,watchFile:v,watchDirectory:b,writeLog:k};return x}function g(t,r){return e.toPath(r,t.currentDirectory,t.getCanonicalFileName)}function _(e,t){var r=e.resolvedConfigFilePaths,n=r.get(t);if(void 0!==n)return n;var i=g(e,t);return r.set(t,i),i}function h(e){return!!e.options}function y(t,r,n){var i,a=t.configFileCache,o=a.get(n);if(o)return h(o)?o:void 0;var s,c=t.parseConfigFileHost,l=t.baseCompilerOptions,u=t.baseWatchOptions,d=t.extendedConfigCache,p=t.host;return p.getParsedCommandLine?(s=p.getParsedCommandLine(r))||(i=e.createCompilerDiagnostic(e.Diagnostics.File_0_not_found,r)):(c.onUnRecoverableConfigFileDiagnostic=function(e){return i=e},s=e.getParsedCommandLineOfConfigFile(r,l,c,d,u),c.onUnRecoverableConfigFileDiagnostic=e.noop),a.set(n,s||i),s}function v(t,r){return e.resolveConfigFileProjectName(e.resolvePath(t.currentDirectory,r))}function b(t,r){for(var n,i,a=new e.Map,o=new e.Map,s=[],c=0,l=r;c<l.length;c++){u(l[c])}return i?{buildOrder:n||e.emptyArray,circularDiagnostics:i}:n||e.emptyArray;function u(r,c){var l=_(t,r);if(!o.has(l))if(a.has(l))c||(i||(i=[])).push(e.createCompilerDiagnostic(e.Diagnostics.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,s.join("\r\n")));else{a.set(l,!0),s.push(r);var d=y(t,r,l);if(d&&d.projectReferences)for(var p=0,f=d.projectReferences;p<f.length;p++){var m=f[p];u(v(t,m.path),c||m.circular)}s.pop(),o.set(l,!0),(n||(n=[])).push(r)}}}function k(t){return t.buildOrder||function(t){var r=b(t,t.rootNames.map((function(e){return v(t,e)})));t.resolvedConfigFilePaths.clear();var n=new e.Map(d(r).map((function(e){return[_(t,e),!0]}))),i={onDeleteValue:e.noop};e.mutateMapSkippingNewValues(t.configFileCache,n,i),e.mutateMapSkippingNewValues(t.projectStatus,n,i),e.mutateMapSkippingNewValues(t.buildInfoChecked,n,i),e.mutateMapSkippingNewValues(t.builderPrograms,n,i),e.mutateMapSkippingNewValues(t.diagnostics,n,i),e.mutateMapSkippingNewValues(t.projectPendingBuild,n,i),e.mutateMapSkippingNewValues(t.projectErrorsReported,n,i),t.watch&&(e.mutateMapSkippingNewValues(t.allWatchedConfigFiles,n,{onDeleteValue:e.closeFileWatcher}),t.allWatchedExtendedConfigFiles.forEach((function(e){e.projects.forEach((function(t){n.has(t)||e.projects.delete(t)})),e.close()})),e.mutateMapSkippingNewValues(t.allWatchedWildcardDirectories,n,{onDeleteValue:function(t){return t.forEach(e.closeFileWatcherOf)}}),e.mutateMapSkippingNewValues(t.allWatchedInputFiles,n,{onDeleteValue:function(t){return t.forEach(e.closeFileWatcher)}}));return t.buildOrder=r}(t)}function x(t,r,n){var i=r&&v(t,r),a=k(t);if(u(a))return a;if(i){var o=_(t,i);if(-1===e.findIndex(a,(function(e){return _(t,e)===o})))return}var s=i?b(t,[i]):a;return e.Debug.assert(!u(s)),e.Debug.assert(!n||void 0!==i),e.Debug.assert(!n||s[s.length-1]===i),n?s.slice(0,s.length-1):s}function E(t){t.cache&&S(t);var r=t.compilerHost,n=t.host,a=t.readFileWithCache,o=r.getSourceFile,s=e.changeCompilerHostLikeToUseCache(n,(function(e){return g(t,e)}),(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return o.call.apply(o,i([r],e))})),c=s.originalReadFile,l=s.originalFileExists,u=s.originalDirectoryExists,d=s.originalCreateDirectory,p=s.originalWriteFile,f=s.getSourceFileWithCache,m=s.readFileWithCache;t.readFileWithCache=m,r.getSourceFile=f,t.cache={originalReadFile:c,originalFileExists:l,originalDirectoryExists:u,originalCreateDirectory:d,originalWriteFile:p,originalReadFileWithCache:a,originalGetSourceFile:o}}function S(e){if(e.cache){var t=e.cache,r=e.host,n=e.compilerHost,i=e.extendedConfigCache,a=e.moduleResolutionCache;r.readFile=t.originalReadFile,r.fileExists=t.originalFileExists,r.directoryExists=t.originalDirectoryExists,r.createDirectory=t.originalCreateDirectory,r.writeFile=t.originalWriteFile,n.getSourceFile=t.originalGetSourceFile,e.readFileWithCache=t.originalReadFileWithCache,i.clear(),a&&(a.directoryToModuleNameMap.clear(),a.moduleNameToDirectoryMap.clear()),e.cache=void 0}}function D(e,t){e.projectStatus.delete(t),e.diagnostics.delete(t)}function w(e,t,r){var n=e.projectPendingBuild,i=n.get(t);(void 0===i||i<r)&&n.set(t,r)}function T(t,r){t.allProjectBuildPending&&(t.allProjectBuildPending=!1,t.options.watch&&ee(t,e.Diagnostics.Starting_compilation_in_watch_mode),E(t),d(k(t)).forEach((function(r){return t.projectPendingBuild.set(_(t,r),e.ConfigFileProgramReloadLevel.None)})),r&&r.throwIfCancellationRequested())}function C(t,r){return t.projectPendingBuild.delete(r),t.currentInvalidatedProject=void 0,t.diagnostics.has(r)?e.ExitStatus.DiagnosticsPresent_OutputsSkipped:e.ExitStatus.Success}function A(e,t,n,i,a){var o=!0;return{kind:r.UpdateOutputFileStamps,project:t,projectPath:n,buildOrder:a,getCompilerOptions:function(){return i.options},getCurrentDirectory:function(){return e.currentDirectory},updateOutputFileStatmps:function(){B(e,i,n),o=!1},done:function(){return o&&B(e,i,n),C(e,n)}}}function N(s,u,d,p,f,m,h){var b,k,x,E=s===r.Build?n.CreateProgram:n.EmitBundle;return s===r.Build?{kind:s,project:d,projectPath:p,buildOrder:h,getCompilerOptions:function(){return m.options},getCurrentDirectory:function(){return u.currentDirectory},getBuilderProgram:function(){return D(e.identity)},getProgram:function(){return D((function(e){return e.getProgramOrUndefined()}))},getSourceFile:function(e){return D((function(t){return t.getSourceFile(e)}))},getSourceFiles:function(){return w((function(e){return e.getSourceFiles()}))},getOptionsDiagnostics:function(e){return w((function(t){return t.getOptionsDiagnostics(e)}))},getGlobalDiagnostics:function(e){return w((function(t){return t.getGlobalDiagnostics(e)}))},getConfigFileParsingDiagnostics:function(){return w((function(e){return e.getConfigFileParsingDiagnostics()}))},getSyntacticDiagnostics:function(e,t){return w((function(r){return r.getSyntacticDiagnostics(e,t)}))},getAllDependencies:function(e){return w((function(t){return t.getAllDependencies(e)}))},getSemanticDiagnostics:function(e,t){return w((function(r){return r.getSemanticDiagnostics(e,t)}))},getSemanticDiagnosticsOfNextAffectedFile:function(e,t){return D((function(r){return r.getSemanticDiagnosticsOfNextAffectedFile&&r.getSemanticDiagnosticsOfNextAffectedFile(e,t)}))},emit:function(e,t,r,i,a){return e||i?D((function(n){return n.emit(e,t,r,i,a)})):(q(n.SemanticDiagnostics,r),E===n.EmitBuildInfo?L(t,r):E===n.Emit?M(t,r,a):void 0)},done:S}:{kind:s,project:d,projectPath:p,buildOrder:h,getCompilerOptions:function(){return m.options},getCurrentDirectory:function(){return u.currentDirectory},emit:function(e,t){return E!==n.EmitBundle?x:U(e,t)},done:S};function S(e,t,r){return q(n.Done,e,t,r),C(u,p)}function D(e){return q(n.CreateProgram),b&&e(b)}function w(t){return D(t)||e.emptyArray}function T(){if(e.Debug.assert(void 0===b),u.options.dry)return Z(u,e.Diagnostics.A_non_dry_build_would_build_project_0,d),k=t.Success,void(E=n.QueueReferencingProjects);if(u.options.verbose&&Z(u,e.Diagnostics.Building_project_0,d),0===m.fileNames.length)return re(u,p,e.getConfigFileParsingDiagnostics(m)),k=t.None,void(E=n.QueueReferencingProjects);var r=u.host,i=u.compilerHost;u.projectCompilerOptions=m.options,function(t,r,n){if(!t.moduleResolutionCache)return;var i=t.moduleResolutionCache,a=g(t,r);if(0===i.directoryToModuleNameMap.redirectsMap.size)e.Debug.assert(0===i.moduleNameToDirectoryMap.redirectsMap.size),i.directoryToModuleNameMap.redirectsMap.set(a,i.directoryToModuleNameMap.ownMap),i.moduleNameToDirectoryMap.redirectsMap.set(a,i.moduleNameToDirectoryMap.ownMap);else{e.Debug.assert(i.moduleNameToDirectoryMap.redirectsMap.size>0);var o={sourceFile:n.options.configFile,commandLine:n};i.directoryToModuleNameMap.setOwnMap(i.directoryToModuleNameMap.getOrCreateMapOfCacheRedirects(o)),i.moduleNameToDirectoryMap.setOwnMap(i.moduleNameToDirectoryMap.getOrCreateMapOfCacheRedirects(o))}i.directoryToModuleNameMap.setOwnOptions(n.options),i.moduleNameToDirectoryMap.setOwnOptions(n.options)}(u,d,m),b=r.createProgram(m.fileNames,m.options,i,function(t,r,n){var i=t.options,a=t.builderPrograms,o=t.compilerHost;if(i.force)return;var s=a.get(r);return s||e.readBuilderProgram(n.options,o)}(u,p,m),e.getConfigFileParsingDiagnostics(m),m.projectReferences),u.watch&&u.builderPrograms.set(p,b),E++}function A(e,t,r){var n;e.length?(n=R(u,p,b,m,e,t,r),k=n.buildResult,E=n.step):E++}function P(r){e.Debug.assertIsDefined(b),A(i(i(i(i([],b.getConfigFileParsingDiagnostics()),b.getOptionsDiagnostics(r)),b.getGlobalDiagnostics(r)),b.getSyntacticDiagnostics(void 0,r)),t.SyntaxErrors,"Syntactic")}function I(r){A(e.Debug.checkDefined(b).getSemanticDiagnostics(void 0,r),t.TypeErrors,"Semantic")}function M(r,i,o){var s,d;e.Debug.assertIsDefined(b),e.Debug.assert(E===n.Emit),b.backupState();var f=[],_=e.emitFilesAndReportErrors(b,(function(e){return(d||(d=[])).push(e)}),void 0,void 0,(function(e,t,r){return f.push({name:e,text:t,writeByteOrderMark:r})}),i,!1,o).emitResult;if(d)return b.restoreState(),s=R(u,p,b,m,d,t.DeclarationEmitErrors,"Declaration file"),k=s.buildResult,E=s.step,{emitSkipped:!0,diagnostics:_.diagnostics};var h=u.host,y=u.compilerHost,v=t.DeclarationOutputUnchanged,x=a,S=!1,D=e.createDiagnosticCollection(),w=new e.Map;return f.forEach((function(n){var i,a=n.name,o=n.text,s=n.writeByteOrderMark;!S&&l(a)&&(h.fileExists(a)&&u.readFileWithCache(a)===o?i=h.getModifiedTime(a):(v&=~t.DeclarationOutputUnchanged,S=!0)),w.set(g(u,a),a),e.writeFile(r?{writeFile:r}:y,D,a,o,s),void 0!==i&&(x=c(i,x))})),B(D,w,x,S,f.length?f[0].name:e.getFirstProjectOutput(m,!h.useCaseSensitiveFileNames()),v),_}function L(r,a){e.Debug.assertIsDefined(b),e.Debug.assert(E===n.EmitBuildInfo);var o=b.emitBuildInfo(r,a);return o.diagnostics.length&&(te(u,o.diagnostics),u.diagnostics.set(p,i(i([],u.diagnostics.get(p)),o.diagnostics)),k=t.EmitErrors&k),o.emittedFiles&&u.write&&o.emittedFiles.forEach((function(e){return F(u,m,e)})),O(u,b,m),E=n.QueueReferencingProjects,o}function B(r,i,a,s,c,l){var d,f=r.getDiagnostics();if(f.length)return d=R(u,p,b,m,f,t.EmitErrors,"Emit"),k=d.buildResult,E=d.step,f;u.write&&i.forEach((function(e){return F(u,m,e)}));var g=j(u,m,a,e.Diagnostics.Updating_unchanged_output_timestamps_of_project_0,i);return u.diagnostics.delete(p),u.projectStatus.set(p,{type:e.UpToDateStatusType.UpToDate,newestDeclarationFileContentChangedTime:s?o:g,oldestOutputFileName:c}),O(u,b,m),E=n.QueueReferencingProjects,k=l,f}function U(i,o){if(e.Debug.assert(s===r.UpdateBundle),u.options.dry)return Z(u,e.Diagnostics.A_non_dry_build_would_update_output_of_project_0,d),k=t.Success,void(E=n.QueueReferencingProjects);u.options.verbose&&Z(u,e.Diagnostics.Updating_output_of_project_0,d);var c=u.compilerHost;u.projectCompilerOptions=m.options;var l=e.emitUsingBuildInfo(m,c,(function(e){var t=v(u,e.path);return y(u,t,_(u,t))}),o);if(e.isString(l))return Z(u,e.Diagnostics.Cannot_update_output_of_project_0_because_there_was_error_reading_file_1,d,Q(u,l)),E=n.BuildInvalidatedProjectOfBundle,x=N(r.Build,u,d,p,f,m,h);e.Debug.assert(!!l.length);var b=e.createDiagnosticCollection(),S=new e.Map;return l.forEach((function(t){var r=t.name,n=t.text,a=t.writeByteOrderMark;S.set(g(u,r),r),e.writeFile(i?{writeFile:i}:c,b,r,n,a)})),{emitSkipped:!1,diagnostics:B(b,S,a,!1,l[0].name,t.DeclarationOutputUnchanged)}}function q(t,r,i,a){for(;E<=t&&E<n.Done;){var o=E;switch(E){case n.CreateProgram:T();break;case n.SyntaxDiagnostics:P(r);break;case n.SemanticDiagnostics:I(r);break;case n.Emit:M(i,r,a);break;case n.EmitBuildInfo:L(i,r);break;case n.EmitBundle:U(i,a);break;case n.BuildInvalidatedProjectOfBundle:e.Debug.checkDefined(x).done(r),E=n.Done;break;case n.QueueReferencingProjects:z(u,d,p,f,m,h,e.Debug.checkDefined(k)),E++;break;case n.Done:default:e.assertType(E)}e.Debug.assert(E>o)}}}function P(t,r,n){var i=t.options;return!(r.type===e.UpToDateStatusType.OutOfDateWithPrepend&&!i.force)||(0===n.fileNames.length||!!e.getConfigFileParsingDiagnostics(n).length||!e.isIncrementalCompilation(n.options))}function I(t,n,i){if(t.projectPendingBuild.size&&!u(n)){if(t.currentInvalidatedProject)return e.arrayIsEqualTo(t.currentInvalidatedProject.buildOrder,n)?t.currentInvalidatedProject:void 0;for(var a=t.options,o=t.projectPendingBuild,s=0;s<n.length;s++){var c=n[s],l=_(t,c),d=t.projectPendingBuild.get(l);if(void 0!==d){i&&(i=!1,ae(t,n));var p=y(t,c,l);if(p){d===e.ConfigFileProgramReloadLevel.Full?(W(t,c,l,p),G(t,l,p),$(t,c,l,p),Y(t,c,l,p)):d===e.ConfigFileProgramReloadLevel.Partial&&(p.fileNames=e.getFileNamesFromConfigSpecs(p.options.configFile.configFileSpecs,e.getDirectoryPath(c),p.options,t.parseConfigFileHost),e.updateErrorForNoInputFiles(p.fileNames,c,p.options.configFile.configFileSpecs,p.errors,e.canJsonReportNoInputFiles(p.raw)),Y(t,c,l,p));var f=L(t,p,l);if(oe(t,c,f),!a.force){if(f.type===e.UpToDateStatusType.UpToDate){re(t,l,e.getConfigFileParsingDiagnostics(p)),o.delete(l),a.dry&&Z(t,e.Diagnostics.Project_0_is_up_to_date,c);continue}if(f.type===e.UpToDateStatusType.UpToDateWithUpstreamTypes)return re(t,l,e.getConfigFileParsingDiagnostics(p)),A(t,c,l,p,n)}if(f.type!==e.UpToDateStatusType.UpstreamBlocked){if(f.type!==e.UpToDateStatusType.ContainerOnly)return N(P(t,f,p)?r.Build:r.UpdateBundle,t,c,l,s,p,n);re(t,l,e.getConfigFileParsingDiagnostics(p)),o.delete(l)}else re(t,l,e.getConfigFileParsingDiagnostics(p)),o.delete(l),a.verbose&&Z(t,f.upstreamProjectBlocked?e.Diagnostics.Skipping_build_of_project_0_because_its_dependency_1_was_not_built:e.Diagnostics.Skipping_build_of_project_0_because_its_dependency_1_has_errors,c,f.upstreamProjectName)}else ne(t,l),o.delete(l)}}}}function F(e,t,r){var n=e.write;n&&t.options.listEmittedFiles&&n("TSFILE: "+r)}function O(t,r,n){r?(r&&t.write&&e.listFiles(r,t.write),t.host.afterProgramEmitAndDiagnostics&&t.host.afterProgramEmitAndDiagnostics(r),r.releaseProgram()):t.host.afterEmitBundle&&t.host.afterEmitBundle(n),t.projectCompilerOptions=t.baseCompilerOptions}function R(r,i,a,o,s,c,l){var u=!(c&t.SyntaxErrors)&&a&&!e.outFile(a.getCompilerOptions());return re(r,i,s),r.projectStatus.set(i,{type:e.UpToDateStatusType.Unbuildable,reason:l+" errors"}),u?{buildResult:c,step:n.EmitBuildInfo}:(O(r,a,o),{buildResult:c,step:n.QueueReferencingProjects})}function M(t,r,n,i){if(n<(t.host.getModifiedTime(r)||e.missingFileModifiedTime))return{type:e.UpToDateStatusType.OutOfDateWithSelf,outOfDateOutputFileName:i,newerInputFileName:r}}function L(t,r,n){if(void 0===r)return{type:e.UpToDateStatusType.Unbuildable,reason:"File deleted mid-build"};var i=t.projectStatus.get(n);if(void 0!==i)return i;var s=function(t,r,n){for(var i=void 0,s=a,u=t.host,d=0,p=r.fileNames;d<p.length;d++){var f=p[d];if(!u.fileExists(f))return{type:e.UpToDateStatusType.Unbuildable,reason:f+" does not exist"};var m=u.getModifiedTime(f)||e.missingFileModifiedTime;m>s&&(i=f,s=m)}if(!r.fileNames.length&&!e.canJsonReportNoInputFiles(r.raw))return{type:e.UpToDateStatusType.ContainerOnly};for(var g,h=e.getAllProjectOutputs(r,!u.useCaseSensitiveFileNames()),v="(none)",b=o,k="(none)",x=a,E=a,S=!1,D=0,w=h;D<w.length;D++){var T=w[D];if(!u.fileExists(T)){g=T;break}var C=u.getModifiedTime(T)||e.missingFileModifiedTime;if(C<b&&(b=C,v=T),C<s){S=!0;break}C>x&&(x=C,k=T),l(T)&&(E=c(E,u.getModifiedTime(T)||e.missingFileModifiedTime))}var A,N=!1,P=!1;if(r.projectReferences){t.projectStatus.set(n,{type:e.UpToDateStatusType.ComputingUpstream});for(var I=0,F=r.projectReferences;I<F.length;I++){var O=F[I];P=P||!!O.prepend;var R=e.resolveProjectReferencePath(O),j=_(t,R),B=L(t,y(t,R,j),j);if(B.type!==e.UpToDateStatusType.ComputingUpstream&&B.type!==e.UpToDateStatusType.ContainerOnly){if(B.type===e.UpToDateStatusType.Unbuildable||B.type===e.UpToDateStatusType.UpstreamBlocked)return{type:e.UpToDateStatusType.UpstreamBlocked,upstreamProjectName:O.path,upstreamProjectBlocked:B.type===e.UpToDateStatusType.UpstreamBlocked};if(B.type!==e.UpToDateStatusType.UpToDate)return{type:e.UpToDateStatusType.UpstreamOutOfDate,upstreamProjectName:O.path};if(!g){if(B.newestInputFileTime&&B.newestInputFileTime<=b)continue;if(B.newestDeclarationFileContentChangedTime&&B.newestDeclarationFileContentChangedTime<=b){N=!0,A=O.path;continue}return e.Debug.assert(void 0!==v,"Should have an oldest output filename here"),{type:e.UpToDateStatusType.OutOfDateWithUpstream,outOfDateOutputFileName:v,newerProjectName:O.path}}}}}if(void 0!==g)return{type:e.UpToDateStatusType.OutputMissing,missingOutputFileName:g};if(S)return{type:e.UpToDateStatusType.OutOfDateWithSelf,outOfDateOutputFileName:v,newerInputFileName:i};var z=M(t,r.options.configFilePath,b,v);if(z)return z;var U=e.forEach(r.options.configFile.extendedSourceFiles||e.emptyArray,(function(e){return M(t,e,b,v)}));if(U)return U;if(!t.buildInfoChecked.has(n)){t.buildInfoChecked.set(n,!0);var q=e.getTsBuildInfoEmitOutputFilePath(r.options);if(q){var J=t.readFileWithCache(q),V=J&&e.getBuildInfo(J);if(V&&(V.bundle||V.program)&&V.version!==e.version)return{type:e.UpToDateStatusType.TsVersionOutputOfDate,version:V.version}}}return P&&N?{type:e.UpToDateStatusType.OutOfDateWithPrepend,outOfDateOutputFileName:v,newerProjectName:A}:{type:N?e.UpToDateStatusType.UpToDateWithUpstreamTypes:e.UpToDateStatusType.UpToDate,newestDeclarationFileContentChangedTime:E,newestInputFileTime:s,newestOutputFileTime:x,newestInputFileName:i,newestOutputFileName:k,oldestOutputFileName:v}}(t,r,n);return t.projectStatus.set(n,s),s}function j(t,r,n,i,a){var o=t.host,s=e.getAllProjectOutputs(r,!o.useCaseSensitiveFileNames());if(!a||s.length!==a.size)for(var u=!!t.options.verbose,d=o.now?o.now():new Date,p=0,f=s;p<f.length;p++){var m=f[p];a&&a.has(g(t,m))||(u&&(u=!1,Z(t,i,r.options.configFilePath)),l(m)&&(n=c(n,o.getModifiedTime(m)||e.missingFileModifiedTime)),o.setModifiedTime(m,d))}return n}function B(t,r,n){if(t.options.dry)return Z(t,e.Diagnostics.A_non_dry_build_would_update_timestamps_for_output_of_project_0,r.options.configFilePath);var i=j(t,r,a,e.Diagnostics.Updating_output_timestamps_of_project_0);t.projectStatus.set(n,{type:e.UpToDateStatusType.UpToDate,newestDeclarationFileContentChangedTime:i,oldestOutputFileName:e.getFirstProjectOutput(r,!t.host.useCaseSensitiveFileNames())})}function z(r,n,i,a,o,s,c){if(!(c&t.AnyErrors)&&o.options.composite)for(var l=a+1;l<s.length;l++){var u=s[l],d=_(r,u);if(!r.projectPendingBuild.has(d)){var p=y(r,u,d);if(p&&p.projectReferences)for(var f=0,m=p.projectReferences;f<m.length;f++){var g=m[f];if(_(r,v(r,g.path))===i){var h=r.projectStatus.get(d);if(h)switch(h.type){case e.UpToDateStatusType.UpToDate:if(c&t.DeclarationOutputUnchanged){g.prepend?r.projectStatus.set(d,{type:e.UpToDateStatusType.OutOfDateWithPrepend,outOfDateOutputFileName:h.oldestOutputFileName,newerProjectName:n}):h.type=e.UpToDateStatusType.UpToDateWithUpstreamTypes;break}case e.UpToDateStatusType.UpToDateWithUpstreamTypes:case e.UpToDateStatusType.OutOfDateWithPrepend:c&t.DeclarationOutputUnchanged||r.projectStatus.set(d,{type:e.UpToDateStatusType.OutOfDateWithUpstream,outOfDateOutputFileName:h.type===e.UpToDateStatusType.OutOfDateWithPrepend?h.outOfDateOutputFileName:h.oldestOutputFileName,newerProjectName:n});break;case e.UpToDateStatusType.UpstreamBlocked:_(r,v(r,h.upstreamProjectName))===i&&D(r,d)}w(r,d,e.ConfigFileProgramReloadLevel.None);break}}}}}function U(t,r,n,i){var a=x(t,r,i);if(!a)return e.ExitStatus.InvalidProject_OutputsSkipped;T(t,n);for(var o=!0,s=0;;){var c=I(t,a,o);if(!c)break;o=!1,c.done(n),t.diagnostics.has(c.projectPath)||s++}return S(t),ie(t,a),function(e,t){if(!e.watchAllProjectsPending)return;e.watchAllProjectsPending=!1;for(var r=0,n=d(t);r<n.length;r++){var i=n[r],a=_(e,i),o=y(e,i,a);W(e,i,a,o),G(e,a,o),o&&($(e,i,a,o),Y(e,i,a,o))}}(t,a),u(a)?e.ExitStatus.ProjectReferenceCycle_OutputsSkipped:a.some((function(e){return t.diagnostics.has(_(t,e))}))?s?e.ExitStatus.DiagnosticsPresent_OutputsGenerated:e.ExitStatus.DiagnosticsPresent_OutputsSkipped:e.ExitStatus.Success}function q(t,r,n){var i=x(t,r,n);if(!i)return e.ExitStatus.InvalidProject_OutputsSkipped;if(u(i))return te(t,i.circularDiagnostics),e.ExitStatus.ProjectReferenceCycle_OutputsSkipped;for(var a=t.options,o=t.host,s=a.dry?[]:void 0,c=0,l=i;c<l.length;c++){var d=l[c],p=_(t,d),f=y(t,d,p);if(void 0!==f)for(var m=0,g=e.getAllProjectOutputs(f,!o.useCaseSensitiveFileNames());m<g.length;m++){var h=g[m];o.fileExists(h)&&(s?s.push(h):(o.deleteFile(h),J(t,p,e.ConfigFileProgramReloadLevel.None)))}else ne(t,p)}return s&&Z(t,e.Diagnostics.A_non_dry_build_would_delete_the_following_files_Colon_0,s.map((function(e){return"\r\n * "+e})).join("")),e.ExitStatus.Success}function J(t,r,n){t.host.getParsedCommandLine&&n===e.ConfigFileProgramReloadLevel.Partial&&(n=e.ConfigFileProgramReloadLevel.Full),n===e.ConfigFileProgramReloadLevel.Full&&(t.configFileCache.delete(r),t.buildOrder=void 0),t.needsSummary=!0,D(t,r),w(t,r,n),E(t)}function V(e,t,r){e.reportFileChangeDetected=!0,J(e,t,r),H(e)}function H(e){var t=e.hostWithWatch;t.setTimeout&&t.clearTimeout&&(e.timerToBuildInvalidatedProject&&t.clearTimeout(e.timerToBuildInvalidatedProject),e.timerToBuildInvalidatedProject=t.setTimeout(K,250,e))}function K(t){t.timerToBuildInvalidatedProject=void 0,t.reportFileChangeDetected&&(t.reportFileChangeDetected=!1,t.projectErrorsReported.clear(),ee(t,e.Diagnostics.File_change_detected_Starting_incremental_compilation));var r=k(t),n=I(t,r,!1);n&&(n.done(),t.projectPendingBuild.size)?t.watch&&!t.timerToBuildInvalidatedProject&&H(t):(S(t),ie(t,r))}function W(t,r,n,i){t.watch&&!t.allWatchedConfigFiles.has(n)&&t.allWatchedConfigFiles.set(n,t.watchFile(r,(function(){V(t,n,e.ConfigFileProgramReloadLevel.Full)}),e.PollingInterval.High,null==i?void 0:i.watchOptions,e.WatchType.ConfigFile,r))}function G(t,r,n){e.updateSharedExtendedConfigFileWatcher(r,n,t.allWatchedExtendedConfigFiles,(function(r,i){return t.watchFile(r,(function(){var r;return null===(r=t.allWatchedExtendedConfigFiles.get(i))||void 0===r?void 0:r.projects.forEach((function(r){return V(t,r,e.ConfigFileProgramReloadLevel.Full)}))}),e.PollingInterval.High,null==n?void 0:n.watchOptions,e.WatchType.ExtendedConfigFile)}),(function(e){return g(t,e)}))}function $(t,r,n,i){t.watch&&e.updateWatchingWildcardDirectories(s(t.allWatchedWildcardDirectories,n),new e.Map(e.getEntries(i.wildcardDirectories)),(function(a,o){return t.watchDirectory(a,(function(o){e.isIgnoredFileFromWildCardWatching({watchedDirPath:g(t,a),fileOrDirectory:o,fileOrDirectoryPath:g(t,o),configFileName:r,currentDirectory:t.currentDirectory,options:i.options,program:t.builderPrograms.get(n),useCaseSensitiveFileNames:t.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:function(e){return t.writeLog(e)}})||V(t,n,e.ConfigFileProgramReloadLevel.Partial)}),o,null==i?void 0:i.watchOptions,e.WatchType.WildcardDirectory,r)}))}function Y(t,r,n,i){t.watch&&e.mutateMap(s(t.allWatchedInputFiles,n),e.arrayToMap(i.fileNames,(function(e){return g(t,e)})),{createNewValue:function(a,o){return t.watchFile(o,(function(){return V(t,n,e.ConfigFileProgramReloadLevel.None)}),e.PollingInterval.Low,null==i?void 0:i.watchOptions,e.WatchType.SourceFile,r)},onDeleteValue:e.closeFileWatcher})}function X(t,r,n,i,a){var o=m(t,r,n,i,a);return{build:function(e,t){return U(o,e,t)},clean:function(e){return q(o,e)},buildReferences:function(e,t){return U(o,e,t,!0)},cleanReferences:function(e){return q(o,e,!0)},getNextInvalidatedProject:function(e){return T(o,e),I(o,k(o),!1)},getBuildOrder:function(){return k(o)},getUpToDateStatusOfProject:function(e){var t=v(o,e),r=_(o,t);return L(o,y(o,t,r),r)},invalidateProject:function(t,r){return J(o,t,r||e.ConfigFileProgramReloadLevel.None)},buildNextInvalidatedProject:function(){return K(o)},getAllParsedConfigs:function(){return e.arrayFrom(e.mapDefinedIterator(o.configFileCache.values(),(function(e){return h(e)?e:void 0})))},close:function(){return function(t){e.clearMap(t.allWatchedConfigFiles,e.closeFileWatcher),e.clearMap(t.allWatchedExtendedConfigFiles,(function(e){e.projects.clear(),e.close()})),e.clearMap(t.allWatchedWildcardDirectories,(function(t){return e.clearMap(t,e.closeFileWatcherOf)})),e.clearMap(t.allWatchedInputFiles,(function(t){return e.clearMap(t,e.closeFileWatcher)}))}(o)}}}function Q(t,r){return e.convertToRelativePath(r,t.currentDirectory,(function(e){return t.getCanonicalFileName(e)}))}function Z(t,r){for(var n=[],a=2;a<arguments.length;a++)n[a-2]=arguments[a];t.host.reportSolutionBuilderStatus(e.createCompilerDiagnostic.apply(void 0,i([r],n)))}function ee(t,r){for(var n,a,o=[],s=2;s<arguments.length;s++)o[s-2]=arguments[s];null===(a=(n=t.hostWithWatch).onWatchStatusChange)||void 0===a||a.call(n,e.createCompilerDiagnostic.apply(void 0,i([r],o)),t.host.getNewLine(),t.baseCompilerOptions)}function te(e,t){var r=e.host;t.forEach((function(e){return r.reportDiagnostic(e)}))}function re(e,t,r){te(e,r),e.projectErrorsReported.set(t,!0),r.length&&e.diagnostics.set(t,r)}function ne(e,t){re(e,t,[e.configFileCache.get(t)])}function ie(t,r){if(t.needsSummary){t.needsSummary=!1;var n=t.watch||!!t.host.reportErrorSummary,i=t.diagnostics,a=0;u(r)?(ae(t,r.buildOrder),te(t,r.circularDiagnostics),n&&(a+=e.getErrorCountForSummary(r.circularDiagnostics))):(r.forEach((function(r){var n=_(t,r);t.projectErrorsReported.has(n)||te(t,i.get(n)||e.emptyArray)})),n&&i.forEach((function(t){return a+=e.getErrorCountForSummary(t)}))),t.watch?ee(t,e.getWatchErrorSummaryDiagnosticMessage(a),a):t.host.reportErrorSummary&&t.host.reportErrorSummary(a)}}function ae(t,r){t.options.verbose&&Z(t,e.Diagnostics.Projects_in_this_build_Colon_0,r.map((function(e){return"\r\n * "+Q(t,e)})).join(""))}function oe(t,r,n){t.options.verbose&&function(t,r,n){switch(n.type){case e.UpToDateStatusType.OutOfDateWithSelf:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2,Q(t,r),Q(t,n.outOfDateOutputFileName),Q(t,n.newerInputFileName));case e.UpToDateStatusType.OutOfDateWithUpstream:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2,Q(t,r),Q(t,n.outOfDateOutputFileName),Q(t,n.newerProjectName));case e.UpToDateStatusType.OutputMissing:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_output_file_1_does_not_exist,Q(t,r),Q(t,n.missingOutputFileName));case e.UpToDateStatusType.UpToDate:if(void 0!==n.newestInputFileTime)return Z(t,e.Diagnostics.Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2,Q(t,r),Q(t,n.newestInputFileName||""),Q(t,n.oldestOutputFileName||""));break;case e.UpToDateStatusType.OutOfDateWithPrepend:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed,Q(t,r),Q(t,n.newerProjectName));case e.UpToDateStatusType.UpToDateWithUpstreamTypes:return Z(t,e.Diagnostics.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,Q(t,r));case e.UpToDateStatusType.UpstreamOutOfDate:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,Q(t,r),Q(t,n.upstreamProjectName));case e.UpToDateStatusType.UpstreamBlocked:return Z(t,n.upstreamProjectBlocked?e.Diagnostics.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:e.Diagnostics.Project_0_can_t_be_built_because_its_dependency_1_has_errors,Q(t,r),Q(t,n.upstreamProjectName));case e.UpToDateStatusType.Unbuildable:return Z(t,e.Diagnostics.Failed_to_parse_file_0_Colon_1,Q(t,r),n.reason);case e.UpToDateStatusType.TsVersionOutputOfDate:return Z(t,e.Diagnostics.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,Q(t,r),n.version,e.version);case e.UpToDateStatusType.ContainerOnly:case e.UpToDateStatusType.ComputingUpstream:break;default:e.assertType(n)}}(t,r,n)}!function(e){e[e.None=0]="None",e[e.Success=1]="Success",e[e.DeclarationOutputUnchanged=2]="DeclarationOutputUnchanged",e[e.ConfigFileErrors=4]="ConfigFileErrors",e[e.SyntaxErrors=8]="SyntaxErrors",e[e.TypeErrors=16]="TypeErrors",e[e.DeclarationEmitErrors=32]="DeclarationEmitErrors",e[e.EmitErrors=64]="EmitErrors",e[e.AnyErrors=124]="AnyErrors"}(t||(t={})),e.isCircularBuildOrder=u,e.getBuildOrderFromAnyBuildOrder=d,e.createBuilderStatusReporter=p,e.createSolutionBuilderHost=function(t,r,n,i,a){void 0===t&&(t=e.sys);var o=f(t,r,n,i);return o.reportErrorSummary=a,o},e.createSolutionBuilderWithWatchHost=function(t,r,n,i,a){void 0===t&&(t=e.sys);var o=f(t,r,n,i),s=e.createWatchHost(t,a);return e.copyProperties(o,s),o},e.createSolutionBuilder=function(e,t,r){return X(!1,e,t,r)},e.createSolutionBuilderWithWatch=function(e,t,r,n){return X(!0,e,t,r,n)},function(e){e[e.Build=0]="Build",e[e.UpdateBundle=1]="UpdateBundle",e[e.UpdateOutputFileStamps=2]="UpdateOutputFileStamps"}(r=e.InvalidatedProjectKind||(e.InvalidatedProjectKind={})),function(e){e[e.CreateProgram=0]="CreateProgram",e[e.SyntaxDiagnostics=1]="SyntaxDiagnostics",e[e.SemanticDiagnostics=2]="SemanticDiagnostics",e[e.Emit=3]="Emit",e[e.EmitBundle=4]="EmitBundle",e[e.EmitBuildInfo=5]="EmitBuildInfo",e[e.BuildInvalidatedProjectOfBundle=6]="BuildInvalidatedProjectOfBundle",e[e.QueueReferencingProjects=7]="QueueReferencingProjects",e[e.Done=8]="Done"}(n||(n={}))}(d||(d={})),function(e){!function(t){t.ActionSet="action::set",t.ActionInvalidate="action::invalidate",t.ActionPackageInstalled="action::packageInstalled",t.EventTypesRegistry="event::typesRegistry",t.EventBeginInstallTypes="event::beginInstallTypes",t.EventEndInstallTypes="event::endInstallTypes",t.EventInitializationFailed="event::initializationFailed",function(e){e.GlobalCacheLocation="--globalTypingsCacheLocation",e.LogFile="--logFile",e.EnableTelemetry="--enableTelemetry",e.TypingSafeListLocation="--typingSafeListLocation",e.TypesMapLocation="--typesMapLocation",e.NpmLocation="--npmLocation",e.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"}(t.Arguments||(t.Arguments={})),t.hasArgument=function(t){return e.sys.args.indexOf(t)>=0},t.findArgument=function(t){var r=e.sys.args.indexOf(t);return r>=0&&r<e.sys.args.length-1?e.sys.args[r+1]:void 0},t.nowString=function(){var t=new Date;return e.padLeft(t.getHours().toString(),2,"0")+":"+e.padLeft(t.getMinutes().toString(),2,"0")+":"+e.padLeft(t.getSeconds().toString(),2,"0")+"."+e.padLeft(t.getMilliseconds().toString(),3,"0")}}(e.server||(e.server={}))}(d||(d={})),function(e){!function(t){function r(t,r){return new e.Version(e.getProperty(r,"ts"+e.versionMajorMinor)||e.getProperty(r,"latest")).compareTo(t.version)<=0}function n(e){return t.nodeCoreModules.has(e)?"node":e}t.isTypingUpToDate=r,t.nodeCoreModuleList=["assert","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","dns","domain","events","fs","http","https","http2","inspector","net","os","path","perf_hooks","process","punycode","querystring","readline","repl","stream","string_decoder","timers","tls","tty","url","util","v8","vm","zlib"],t.nodeCoreModules=new e.Set(t.nodeCoreModuleList),t.nonRelativeModuleNameForTypingCache=n,t.loadSafeList=function(t,r){var n=e.readConfigFile(r,(function(e){return t.readFile(e)}));return new e.Map(e.getEntries(n.config))},t.loadTypesMap=function(t,r){var n=e.readConfigFile(r,(function(e){return t.readFile(e)}));if(n.config)return new e.Map(e.getEntries(n.config.simpleMap))},t.discoverTypings=function(t,i,a,o,s,c,l,u,d){if(!l||!l.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};var p=new e.Map;a=e.mapDefined(a,(function(t){var r=e.normalizePath(t);if(e.hasJSFileExtension(r))return r}));var f=[];l.include&&E(l.include,"Explicitly included types");var m=l.exclude||[],g=new e.Set(a.map(e.getDirectoryPath));g.add(o),g.forEach((function(t){S(e.combinePaths(t,"package.json"),f),S(e.combinePaths(t,"bower.json"),f),D(e.combinePaths(t,"bower_components"),f),D(e.combinePaths(t,"node_modules"),f)})),l.disableFilenameBasedTypeAcquisition||function(t){var r=e.mapDefined(t,(function(t){if(e.hasJSFileExtension(t)){var r=e.removeFileExtension(e.getBaseFileName(t.toLowerCase())),n=e.removeMinAndVersionNumbers(r);return s.get(n)}}));r.length&&E(r,"Inferred typings from file names");var n=e.some(t,(function(t){return e.fileExtensionIs(t,".jsx")}));n&&(i&&i("Inferred 'react' typings due to presence of '.jsx' extension"),x("react"))}(a),u&&E(e.deduplicate(u.map(n),e.equateStringsCaseSensitive,e.compareStringsCaseSensitive),"Inferred typings from unresolved imports"),c.forEach((function(e,t){var n=d.get(t);p.has(t)&&void 0===p.get(t)&&void 0!==n&&r(e,n)&&p.set(t,e.typingLocation)}));for(var _=0,h=m;_<h.length;_++){var y=h[_];p.delete(y)&&i&&i("Typing for "+y+" is in exclude list, will be ignored.")}var v=[],b=[];p.forEach((function(e,t){void 0!==e?b.push(e):v.push(t)}));var k={cachedTypingPaths:b,newTypingNames:v,filesToWatch:f};return i&&i("Result: "+JSON.stringify(k)),k;function x(e){p.has(e)||p.set(e,void 0)}function E(t,r){i&&i(r+": "+JSON.stringify(t)),e.forEach(t,x)}function S(r,n){if(t.fileExists(r)){n.push(r);var i=e.readConfigFile(r,(function(e){return t.readFile(e)})).config;E(e.flatMap([i.dependencies,i.devDependencies,i.optionalDependencies,i.peerDependencies],e.getOwnKeys),"Typing names in '"+r+"' dependencies")}}function D(r,n){if(n.push(r),t.directoryExists(r)){var a=t.readDirectory(r,[".json"],void 0,void 0,2);i&&i("Searching for typing names in "+r+"; all files: "+JSON.stringify(a));for(var o=[],s=0,c=a;s<c.length;s++){var l=c[s],u=e.normalizePath(l),d=e.getBaseFileName(u);if("package.json"===d||"bower.json"===d){var f=e.readConfigFile(u,(function(e){return t.readFile(e)})).config;if(("package.json"!==d||!f._requiredBy||0!==e.filter(f._requiredBy,(function(e){return"#"===e[0]||"/"===e})).length)&&f.name){var m=f.types||f.typings;if(m){var g=e.getNormalizedAbsolutePath(m,e.getDirectoryPath(u));i&&i(" Package '"+f.name+"' provides its own types."),p.set(f.name,g)}else o.push(f.name)}}}E(o," Found package names")}}},function(e){e[e.Ok=0]="Ok",e[e.EmptyName=1]="EmptyName",e[e.NameTooLong=2]="NameTooLong",e[e.NameStartsWithDot=3]="NameStartsWithDot",e[e.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",e[e.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters"}(t.NameValidationResult||(t.NameValidationResult={}));var i=214;function a(e,t){if(!e)return 1;if(e.length>i)return 2;if(46===e.charCodeAt(0))return 3;if(95===e.charCodeAt(0))return 4;if(t){var r=/^@([^/]+)\/([^/]+)$/.exec(e);if(r){var n=a(r[1],!1);if(0!==n)return{name:r[1],isScopeName:!0,result:n};var o=a(r[2],!1);return 0!==o?{name:r[2],isScopeName:!1,result:o}:0}}return encodeURIComponent(e)!==e?5:0}function o(t,r,n,a){var o=a?"Scope":"Package";switch(r){case 1:return"'"+t+"':: "+o+" name '"+n+"' cannot be empty";case 2:return"'"+t+"':: "+o+" name '"+n+"' should be less than "+i+" characters";case 3:return"'"+t+"':: "+o+" name '"+n+"' cannot start with '.'";case 4:return"'"+t+"':: "+o+" name '"+n+"' cannot start with '_'";case 5:return"'"+t+"':: "+o+" name '"+n+"' contains non URI safe characters";case 0:return e.Debug.fail();default:throw e.Debug.assertNever(r)}}t.validatePackageName=function(e){return a(e,!0)},t.renderPackageNameValidationFailure=function(e,t){return"object"==typeof e?o(t,e.result,e.name,e.isScopeName):o(t,e,t,!1)}}(e.JsTyping||(e.JsTyping={}))}(d||(d={})),function(e){var t,r;function n(e){return{indentSize:4,tabSize:4,newLineCharacter:e||"\n",convertTabsToSpaces:!0,indentStyle:t.Smart,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:r.Ignore,trimTrailingWhitespace:!0}}!function(e){var t=function(){function e(e){this.text=e}return e.prototype.getText=function(e,t){return 0===e&&t===this.text.length?this.text:this.text.substring(e,t)},e.prototype.getLength=function(){return this.text.length},e.prototype.getChangeRange=function(){},e}();e.fromString=function(e){return new t(e)}}(e.ScriptSnapshot||(e.ScriptSnapshot={})),function(e){e[e.Dependencies=1]="Dependencies",e[e.DevDependencies=2]="DevDependencies",e[e.PeerDependencies=4]="PeerDependencies",e[e.OptionalDependencies=8]="OptionalDependencies",e[e.All=15]="All"}(e.PackageJsonDependencyGroup||(e.PackageJsonDependencyGroup={})),function(e){e[e.Off=0]="Off",e[e.On=1]="On",e[e.Auto=2]="Auto"}(e.PackageJsonAutoImportPreference||(e.PackageJsonAutoImportPreference={})),function(e){e[e.Semantic=0]="Semantic",e[e.PartialSemantic=1]="PartialSemantic",e[e.Syntactic=2]="Syntactic"}(e.LanguageServiceMode||(e.LanguageServiceMode={})),e.emptyOptions={},function(e){e.Original="original",e.TwentyTwenty="2020"}(e.SemanticClassificationFormat||(e.SemanticClassificationFormat={})),function(e){e.none="none",e.definition="definition",e.reference="reference",e.writtenReference="writtenReference"}(e.HighlightSpanKind||(e.HighlightSpanKind={})),function(e){e[e.None=0]="None",e[e.Block=1]="Block",e[e.Smart=2]="Smart"}(t=e.IndentStyle||(e.IndentStyle={})),function(e){e.Ignore="ignore",e.Insert="insert",e.Remove="remove"}(r=e.SemicolonPreference||(e.SemicolonPreference={})),e.getDefaultFormatCodeSettings=n,e.testFormatSettings=n("\n"),function(e){e[e.aliasName=0]="aliasName",e[e.className=1]="className",e[e.enumName=2]="enumName",e[e.fieldName=3]="fieldName",e[e.interfaceName=4]="interfaceName",e[e.keyword=5]="keyword",e[e.lineBreak=6]="lineBreak",e[e.numericLiteral=7]="numericLiteral",e[e.stringLiteral=8]="stringLiteral",e[e.localName=9]="localName",e[e.methodName=10]="methodName",e[e.moduleName=11]="moduleName",e[e.operator=12]="operator",e[e.parameterName=13]="parameterName",e[e.propertyName=14]="propertyName",e[e.punctuation=15]="punctuation",e[e.space=16]="space",e[e.text=17]="text",e[e.typeParameterName=18]="typeParameterName",e[e.enumMemberName=19]="enumMemberName",e[e.functionName=20]="functionName",e[e.regularExpressionLiteral=21]="regularExpressionLiteral"}(e.SymbolDisplayPartKind||(e.SymbolDisplayPartKind={})),function(e){e.Comment="comment",e.Region="region",e.Code="code",e.Imports="imports"}(e.OutliningSpanKind||(e.OutliningSpanKind={})),function(e){e[e.JavaScript=0]="JavaScript",e[e.SourceMap=1]="SourceMap",e[e.Declaration=2]="Declaration"}(e.OutputFileType||(e.OutputFileType={})),function(e){e[e.None=0]="None",e[e.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",e[e.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",e[e.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",e[e.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",e[e.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",e[e.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition"}(e.EndOfLineState||(e.EndOfLineState={})),function(e){e[e.Punctuation=0]="Punctuation",e[e.Keyword=1]="Keyword",e[e.Operator=2]="Operator",e[e.Comment=3]="Comment",e[e.Whitespace=4]="Whitespace",e[e.Identifier=5]="Identifier",e[e.NumberLiteral=6]="NumberLiteral",e[e.BigIntLiteral=7]="BigIntLiteral",e[e.StringLiteral=8]="StringLiteral",e[e.RegExpLiteral=9]="RegExpLiteral"}(e.TokenClass||(e.TokenClass={})),function(e){e.unknown="",e.warning="warning",e.keyword="keyword",e.scriptElement="script",e.moduleElement="module",e.classElement="class",e.localClassElement="local class",e.structElement="struct",e.interfaceElement="interface",e.typeElement="type",e.enumElement="enum",e.enumMemberElement="enum member",e.variableElement="var",e.localVariableElement="local var",e.functionElement="function",e.localFunctionElement="local function",e.memberFunctionElement="method",e.memberGetAccessorElement="getter",e.memberSetAccessorElement="setter",e.memberVariableElement="property",e.constructorImplementationElement="constructor",e.callSignatureElement="call",e.indexSignatureElement="index",e.constructSignatureElement="construct",e.parameterElement="parameter",e.typeParameterElement="type parameter",e.primitiveType="primitive type",e.label="label",e.alias="alias",e.constElement="const",e.letElement="let",e.directory="directory",e.externalModuleName="external module name",e.jsxAttribute="JSX attribute",e.string="string"}(e.ScriptElementKind||(e.ScriptElementKind={})),function(e){e.none="",e.publicMemberModifier="public",e.privateMemberModifier="private",e.protectedMemberModifier="protected",e.exportedModifier="export",e.ambientModifier="declare",e.staticModifier="static",e.abstractModifier="abstract",e.optionalModifier="optional",e.deprecatedModifier="deprecated",e.dtsModifier=".d.ts",e.tsModifier=".ts",e.tsxModifier=".tsx",e.jsModifier=".js",e.jsxModifier=".jsx",e.jsonModifier=".json",e.etsModifier=".ets",e.detsModifier=".d.ets"}(e.ScriptElementKindModifier||(e.ScriptElementKindModifier={})),function(e){e.comment="comment",e.identifier="identifier",e.keyword="keyword",e.numericLiteral="number",e.bigintLiteral="bigint",e.operator="operator",e.stringLiteral="string",e.whiteSpace="whitespace",e.text="text",e.punctuation="punctuation",e.className="class name",e.enumName="enum name",e.interfaceName="interface name",e.moduleName="module name",e.typeParameterName="type parameter name",e.typeAliasName="type alias name",e.parameterName="parameter name",e.docCommentTagName="doc comment tag name",e.jsxOpenTagName="jsx open tag name",e.jsxCloseTagName="jsx close tag name",e.jsxSelfClosingTagName="jsx self closing tag name",e.jsxAttribute="jsx attribute",e.jsxText="jsx text",e.jsxAttributeStringLiteralValue="jsx attribute string literal value"}(e.ClassificationTypeNames||(e.ClassificationTypeNames={})),function(e){e[e.comment=1]="comment",e[e.identifier=2]="identifier",e[e.keyword=3]="keyword",e[e.numericLiteral=4]="numericLiteral",e[e.operator=5]="operator",e[e.stringLiteral=6]="stringLiteral",e[e.regularExpressionLiteral=7]="regularExpressionLiteral",e[e.whiteSpace=8]="whiteSpace",e[e.text=9]="text",e[e.punctuation=10]="punctuation",e[e.className=11]="className",e[e.enumName=12]="enumName",e[e.interfaceName=13]="interfaceName",e[e.moduleName=14]="moduleName",e[e.typeParameterName=15]="typeParameterName",e[e.typeAliasName=16]="typeAliasName",e[e.parameterName=17]="parameterName",e[e.docCommentTagName=18]="docCommentTagName",e[e.jsxOpenTagName=19]="jsxOpenTagName",e[e.jsxCloseTagName=20]="jsxCloseTagName",e[e.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",e[e.jsxAttribute=22]="jsxAttribute",e[e.jsxText=23]="jsxText",e[e.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",e[e.bigintLiteral=25]="bigintLiteral"}(e.ClassificationType||(e.ClassificationType={}))}(d||(d={})),function(e){function t(t){switch(t.kind){case 251:return e.isInJSFile(t)&&e.getJSDocEnumTag(t)?7:1;case 161:case 199:case 164:case 163:case 291:case 292:case 166:case 165:case 167:case 168:case 169:case 253:case 209:case 210:case 290:case 283:return 1;case 160:case 256:case 257:case 178:return 2;case 334:return void 0===t.name?3:2;case 294:case 254:case 255:return 3;case 259:return e.isAmbientModule(t)||1===e.getModuleInstanceState(t)?5:4;case 258:case 267:case 268:case 263:case 264:case 269:case 270:return 7;case 300:return 5}return 7}function r(t){for(;158===t.parent.kind;)t=t.parent;return e.isInternalModuleImportEqualsDeclaration(t.parent)&&t.parent.moduleReference===t}function n(e){return e.expression}function i(e){return e.tag}function o(e){return e.tagName}function s(t,r,n,i,a){var o=i?l(t):c(t);return a&&(o=e.skipOuterExpressions(o)),!!o&&!!o.parent&&r(o.parent)&&n(o.parent)===o}function c(e){return p(e)?e.parent:e}function l(e){return p(e)||f(e)?e.parent:e}function u(t){var r;return e.isIdentifier(t)&&(null===(r=e.tryCast(t.parent,e.isBreakOrContinueStatement))||void 0===r?void 0:r.label)===t}function d(t){var r;return e.isIdentifier(t)&&(null===(r=e.tryCast(t.parent,e.isLabeledStatement))||void 0===r?void 0:r.label)===t}function p(t){var r;return(null===(r=e.tryCast(t.parent,e.isPropertyAccessExpression))||void 0===r?void 0:r.name)===t}function f(t){var r;return(null===(r=e.tryCast(t.parent,e.isElementAccessExpression))||void 0===r?void 0:r.argumentExpression)===t}e.scanner=e.createScanner(99,!0),function(e){e[e.None=0]="None",e[e.Value=1]="Value",e[e.Type=2]="Type",e[e.Namespace=4]="Namespace",e[e.All=7]="All"}(e.SemanticMeaning||(e.SemanticMeaning={})),e.getMeaningFromDeclaration=t,e.getMeaningFromLocation=function(n){return 300===(n=P(n)).kind?1:269===n.parent.kind||275===n.parent.kind||268===n.parent.kind||265===n.parent.kind||e.isImportEqualsDeclaration(n.parent)&&n===n.parent.name?7:r(n)?function(t){var r=158===t.kind?t:e.isQualifiedName(t.parent)&&t.parent.right===t?t.parent:void 0;return r&&263===r.parent.kind?7:4}(n):e.isDeclarationName(n)?t(n.parent):e.isEntityName(n)&&e.isJSDocNameReference(n.parent)?7:function(t){e.isRightSideOfQualifiedNameOrPropertyAccess(t)&&(t=t.parent);switch(t.kind){case 108:return!e.isExpressionNode(t);case 188:return!0}switch(t.parent.kind){case 174:return!0;case 196:return!t.parent.isTypeOf;case 225:return!e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)}return!1}(n)?2:function(e){return function(e){var t=e,r=!0;if(158===t.parent.kind){for(;t.parent&&158===t.parent.kind;)t=t.parent;r=t.right===e}return 174===t.parent.kind&&!r}(e)||function(e){var t=e,r=!0;if(202===t.parent.kind){for(;t.parent&&202===t.parent.kind;)t=t.parent;r=t.name===e}if(!r&&225===t.parent.kind&&289===t.parent.parent.kind){var n=t.parent.parent.parent;return(254===n.kind||255===n.kind)&&117===t.parent.parent.token||256===n.kind&&94===t.parent.parent.token}return!1}(e)}(n)?4:e.isTypeParameterDeclaration(n.parent)?(e.Debug.assert(e.isJSDocTemplateTag(n.parent.parent)),2):e.isLiteralTypeNode(n.parent)?3:1},e.isInRightSideOfInternalImportEqualsDeclaration=r,e.isCallExpressionTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isCallExpression,n,r,i)},e.isNewExpressionTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isNewExpression,n,r,i)},e.isCallOrNewExpressionTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isCallOrNewExpression,n,r,i)},e.isTaggedTemplateTag=function(t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),s(t,e.isTaggedTemplateExpression,i,r,n)},e.isDecoratorTarget=function(t,r,i){return void 0===r&&(r=!1),void 0===i&&(i=!1),s(t,e.isDecorator,n,r,i)},e.isJsxOpeningLikeElementTagName=function(t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),s(t,e.isJsxOpeningLikeElement,o,r,n)},e.climbPastPropertyAccess=c,e.climbPastPropertyOrElementAccess=l,e.getTargetLabel=function(e,t){for(;e;){if(247===e.kind&&e.label.escapedText===t)return e.label;e=e.parent}},e.hasPropertyAccessExpressionWithName=function(t,r){return!!e.isPropertyAccessExpression(t.expression)&&t.expression.name.text===r},e.isJumpStatementTarget=u,e.isLabelOfLabeledStatement=d,e.isLabelName=function(e){return d(e)||u(e)},e.isTagName=function(t){var r;return(null===(r=e.tryCast(t.parent,e.isJSDocTag))||void 0===r?void 0:r.tagName)===t},e.isRightSideOfQualifiedName=function(t){var r;return(null===(r=e.tryCast(t.parent,e.isQualifiedName))||void 0===r?void 0:r.right)===t},e.isRightSideOfPropertyAccess=p,e.isArgumentExpressionOfElementAccess=f,e.isNameOfModuleDeclaration=function(t){var r;return(null===(r=e.tryCast(t.parent,e.isModuleDeclaration))||void 0===r?void 0:r.name)===t},e.isNameOfFunctionDeclaration=function(t){var r;return e.isIdentifier(t)&&(null===(r=e.tryCast(t.parent,e.isFunctionLike))||void 0===r?void 0:r.name)===t},e.isLiteralNameOfPropertyDeclarationOrIndexAccess=function(t){switch(t.parent.kind){case 164:case 163:case 291:case 294:case 166:case 165:case 168:case 169:case 259:return e.getNameOfDeclaration(t.parent)===t;case 203:return t.parent.argumentExpression===t;case 159:return!0;case 192:return 190===t.parent.parent.kind;default:return!1}},e.isExpressionOfExternalModuleImportEqualsDeclaration=function(t){return e.isExternalModuleImportEqualsDeclaration(t.parent.parent)&&e.getExternalModuleImportEqualsDeclarationExpression(t.parent.parent)===t},e.getContainerNode=function(t){for(e.isJSDocTypeAlias(t)&&(t=t.parent.parent);;){if(!(t=t.parent))return;switch(t.kind){case 300:case 166:case 165:case 253:case 209:case 168:case 169:case 254:case 255:case 256:case 258:case 259:return t}}},e.getNodeKind=function t(r){switch(r.kind){case 300:return e.isExternalModule(r)?"module":"script";case 259:return"module";case 254:case 223:return"class";case 255:return"struct";case 256:return"interface";case 257:case 327:case 334:return"type";case 258:return"enum";case 251:return c(r);case 199:return c(e.getRootDeclaration(r));case 210:case 253:case 209:return"function";case 168:return"getter";case 169:return"setter";case 166:case 165:return"method";case 291:var n=r.initializer;return e.isFunctionLike(n)?"method":"property";case 164:case 163:case 292:case 293:return"property";case 172:return"index";case 171:return"construct";case 170:return"call";case 167:return"constructor";case 160:return"type parameter";case 294:return"enum member";case 161:return e.hasSyntacticModifier(r,92)?"property":"parameter";case 263:case 268:case 273:case 266:case 272:return"alias";case 218:var i=e.getAssignmentDeclarationKind(r),a=r.right;switch(i){case 7:case 8:case 9:case 0:return"";case 1:case 2:var o=t(a);return""===o?"const":o;case 3:case 5:return e.isFunctionExpression(a)?"method":"property";case 4:return"property";case 6:return"local class";default:return e.assertType(i),""}case 78:return e.isImportClause(r.parent)?"alias":"";case 269:var s=t(r.expression);return""===s?"const":s;default:return""}function c(t){return e.isVarConst(t)?"const":e.isLet(t)?"let":"var"}},e.isThis=function(t){switch(t.kind){case 108:return!0;case 78:return e.identifierIsThisKeyword(t)&&161===t.parent.kind;default:return!1}};var m=/^\/\/\/\s*</;function g(e,t){return h(e.pos,e.end,t)}function _(e,t){return e.pos<t&&t<e.end}function h(e,t,r){return e<=r.pos&&t>=r.end}function y(e,t,r,n){return Math.max(e,r)<Math.min(t,n)}function v(t,r){if(void 0===t||e.nodeIsMissing(t))return!1;switch(t.kind){case 254:case 255:case 256:case 258:case 201:case 197:case 178:case 232:case 260:case 261:case 267:case 271:return b(t,19,r);case 290:return v(t.block,r);case 205:if(!t.arguments)return!0;case 204:case 208:case 187:return b(t,21,r);case 175:case 176:return v(t.type,r);case 167:case 168:case 169:case 253:case 209:case 166:case 165:case 171:case 170:case 210:return t.body?v(t.body,r):t.type?v(t.type,r):k(t,21,r);case 259:return!!t.body&&v(t.body,r);case 236:return t.elseStatement?v(t.elseStatement,r):v(t.thenStatement,r);case 235:return v(t.expression,r)||k(t,26,r);case 200:case 198:case 203:case 159:case 180:return b(t,23,r);case 172:return t.type?v(t.type,r):k(t,23,r);case 287:case 288:return!1;case 239:case 240:case 241:case 238:return v(t.statement,r);case 237:return k(t,115,r)?b(t,21,r):v(t.statement,r);case 177:return v(t.exprName,r);case 213:case 212:case 214:case 221:case 222:return v(t.expression,r);case 206:return v(t.template,r);case 220:return v(e.lastOrUndefined(t.templateSpans),r);case 230:return e.nodeIsPresent(t.literal);case 270:case 264:return e.nodeIsPresent(t.moduleSpecifier);case 216:return v(t.operand,r);case 218:return v(t.right,r);case 219:return v(t.whenFalse,r);default:return!0}}function b(t,r,n){var i=t.getChildren(n);if(i.length){var a=e.last(i);if(a.kind===r)return!0;if(26===a.kind&&1!==i.length)return i[i.length-2].kind===r}return!1}function k(e,t,r){return!!x(e,t,r)}function x(t,r,n){return e.find(t.getChildren(n),(function(e){return e.kind===r}))}function E(t){var r=e.find(t.parent.getChildren(),(function(r){return e.isSyntaxList(r)&&g(r,t)}));return e.Debug.assert(!r||e.contains(r.getChildren(),t)),r}function S(e){return 88===e.kind}function D(e){return 83===e.kind}function w(e){return 98===e.kind}function T(t,r){if(!r)switch(t.kind){case 254:case 223:case 255:return function(t){if(e.isNamedDeclaration(t))return t.name;if(e.isClassDeclaration(t)||e.isStructDeclaration(t)){var r=e.find(t.modifiers,S);if(r)return r}if(e.isClassExpression(t)){var n=e.find(t.getChildren(),D);if(n)return n}}(t);case 253:case 209:return function(t){if(e.isNamedDeclaration(t))return t.name;if(e.isFunctionDeclaration(t)){var r=e.find(t.modifiers,S);if(r)return r}if(e.isFunctionExpression(t)){var n=e.find(t.getChildren(),w);if(n)return n}}(t)}if(e.isNamedDeclaration(t))return t.name}function C(t,r){if(t.importClause){if(t.importClause.name&&t.importClause.namedBindings)return;if(t.importClause.name)return t.importClause.name;if(t.importClause.namedBindings){if(e.isNamedImports(t.importClause.namedBindings)){var n=e.singleOrUndefined(t.importClause.namedBindings.elements);if(!n)return;return n.name}if(e.isNamespaceImport(t.importClause.namedBindings))return t.importClause.namedBindings.name}}if(!r)return t.moduleSpecifier}function A(t,r){if(t.exportClause){if(e.isNamedExports(t.exportClause)){if(!e.singleOrUndefined(t.exportClause.elements))return;return t.exportClause.elements[0].name}if(e.isNamespaceExport(t.exportClause))return t.exportClause.name}if(!r)return t.moduleSpecifier}function N(t,r){var n=t.parent;if((e.isModifier(t)&&(r||88!==t.kind)?e.contains(n.modifiers,t):83===t.kind?e.isClassDeclaration(n)||e.isClassExpression(t):98===t.kind?e.isFunctionDeclaration(n)||e.isFunctionExpression(t):118===t.kind?e.isInterfaceDeclaration(n):92===t.kind?e.isEnumDeclaration(n):150===t.kind?e.isTypeAliasDeclaration(n):141===t.kind||140===t.kind?e.isModuleDeclaration(n):100===t.kind?e.isImportEqualsDeclaration(n):135===t.kind?e.isGetAccessorDeclaration(n):147===t.kind&&e.isSetAccessorDeclaration(n))&&(a=T(n,r)))return a;if((113===t.kind||85===t.kind||119===t.kind)&&e.isVariableDeclarationList(n)&&1===n.declarations.length){var i=n.declarations[0];if(e.isIdentifier(i.name))return i.name}if(150===t.kind){if(e.isImportClause(n)&&n.isTypeOnly)if(a=C(n.parent,r))return a;if(e.isExportDeclaration(n)&&n.isTypeOnly)if(a=A(n,r))return a}if(127===t.kind){if(e.isImportSpecifier(n)&&n.propertyName||e.isExportSpecifier(n)&&n.propertyName||e.isNamespaceImport(n)||e.isNamespaceExport(n))return n.name;if(e.isExportDeclaration(n)&&n.exportClause&&e.isNamespaceExport(n.exportClause))return n.exportClause.name}if(100===t.kind&&e.isImportDeclaration(n)&&(a=C(n,r)))return a;if(93===t.kind){if(e.isExportDeclaration(n))if(a=A(n,r))return a;if(e.isExportAssignment(n))return e.skipOuterExpressions(n.expression)}if(144===t.kind&&e.isExternalModuleReference(n))return n.expression;if(154===t.kind&&(e.isImportDeclaration(n)||e.isExportDeclaration(n))&&n.moduleSpecifier)return n.moduleSpecifier;if((94===t.kind||117===t.kind)&&e.isHeritageClause(n)&&n.token===t.kind){var a=function(e){if(1===e.types.length)return e.types[0].expression}(n);if(a)return a}if(94===t.kind){if(e.isTypeParameterDeclaration(n)&&n.constraint&&e.isTypeReferenceNode(n.constraint))return n.constraint.typeName;if(e.isConditionalTypeNode(n)&&e.isTypeReferenceNode(n.extendsType))return n.extendsType.typeName}if(136===t.kind&&e.isInferTypeNode(n))return n.typeParameter.name;if(101===t.kind&&e.isTypeParameterDeclaration(n)&&e.isMappedTypeNode(n.parent))return n.name;if(139===t.kind&&e.isTypeOperatorNode(n)&&139===n.operator&&e.isTypeReferenceNode(n.type))return n.type.typeName;if(143===t.kind&&e.isTypeOperatorNode(n)&&143===n.operator&&e.isArrayTypeNode(n.type)&&e.isTypeReferenceNode(n.type.elementType))return n.type.elementType.typeName;if(!r){if((103===t.kind&&e.isNewExpression(n)||114===t.kind&&e.isVoidExpression(n)||112===t.kind&&e.isTypeOfExpression(n)||131===t.kind&&e.isAwaitExpression(n)||125===t.kind&&e.isYieldExpression(n)||89===t.kind&&e.isDeleteExpression(n))&&n.expression)return e.skipOuterExpressions(n.expression);if((101===t.kind||102===t.kind)&&e.isBinaryExpression(n)&&n.operatorToken===t)return e.skipOuterExpressions(n.right);if(127===t.kind&&e.isAsExpression(n)&&e.isTypeReferenceNode(n.type))return n.type.typeName;if(101===t.kind&&e.isForInStatement(n)||157===t.kind&&e.isForOfStatement(n))return e.skipOuterExpressions(n.expression)}return t}function P(e){return N(e,!1)}function I(e,t,r){return O(e,t,!1,r,!1)}function F(e,t){return O(e,t,!0,void 0,!1)}function O(e,t,r,n,i){var a=e;e:for(;;){for(var o=0,s=a.getChildren(e);o<s.length;o++){var c=s[o];if((r?c.getFullStart():c.getStart(e,!0))>t)break;var l=c.getEnd();if(t<l||t===l&&(1===c.kind||i)){a=c;continue e}if(n&&l===t){var u=M(t,e,c);if(u&&n(u))return u}}return a}}function R(t,r,n){return function r(i){if(e.isToken(i)&&i.pos===t.end)return i;return e.firstDefined(i.getChildren(n),(function(e){return(e.pos<=t.pos&&e.end>t.end||e.pos===t.end)&&K(e,n)?r(e):void 0}))}(r)}function M(t,r,n,i){var a=function a(o){if(L(o)&&1!==o.kind)return o;var s=o.getChildren(r),c=e.binarySearchKey(s,t,(function(e,t){return t}),(function(e,r){return t<s[e].end?!s[e-1]||t>=s[e-1].end?0:1:-1}));if(c>=0&&s[c]){var l=s[c];if(t<l.end){if(l.getStart(r,!i)>=t||!K(l,r)||z(l)){var u=B(s,c,r);return u&&j(u,r)}return a(l)}}e.Debug.assert(void 0!==n||300===o.kind||1===o.kind||e.isJSDocCommentContainingNode(o));var d=B(s,s.length,r);return d&&j(d,r)}(n||r);return e.Debug.assert(!(a&&z(a))),a}function L(t){return e.isToken(t)&&!z(t)}function j(e,t){if(L(e))return e;var r=e.getChildren(t);if(0===r.length)return e;var n=B(r,r.length,t);return n&&j(n,t)}function B(t,r,n){for(var i=r-1;i>=0;i--){if(z(t[i]))e.Debug.assert(i>0,"`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(K(t[i],n))return t[i]}}function z(t){return e.isJsxText(t)&&t.containsOnlyTriviaWhiteSpaces}function U(t,r,n){var i=e.tokenToString(t.kind),a=e.tokenToString(r),o=t.getFullStart(),s=n.text.lastIndexOf(a,o);if(-1!==s){if(n.text.lastIndexOf(i,o-1)<s){var c=M(s+1,n);if(c&&c.kind===r)return c}for(var l=t.kind,u=0;;){var d=M(t.getFullStart(),n);if(!d)return;if((t=d).kind===r){if(0===u)return t;u--}else t.kind===l&&u++}}}function q(e,t,r){return t?e.getNonNullableType():r?e.getNonOptionalType():e}function J(t,r,n){var i=n.getTypeAtLocation(t);return e.isOptionalChain(t.parent)&&(i=q(i,e.isOptionalChainRoot(t.parent),!0)),(e.isNewExpression(t.parent)?i.getConstructSignatures():i.getCallSignatures()).filter((function(e){return!!e.typeParameters&&e.typeParameters.length>=r}))}function V(t,r){if(-1!==r.text.lastIndexOf("<",t?t.pos:r.text.length))for(var n=t,i=0,a=0;n;){switch(n.kind){case 29:if((n=M(n.getFullStart(),r))&&28===n.kind&&(n=M(n.getFullStart(),r)),!n||!e.isIdentifier(n))return;if(!i)return e.isDeclarationName(n)?void 0:{called:n,nTypeArguments:a};i--;break;case 49:i=3;break;case 48:i=2;break;case 31:i++;break;case 19:if(!(n=U(n,18,r)))return;break;case 21:if(!(n=U(n,20,r)))return;break;case 23:if(!(n=U(n,22,r)))return;break;case 27:a++;break;case 38:case 78:case 10:case 8:case 9:case 110:case 95:case 112:case 94:case 139:case 24:case 51:case 57:case 58:break;default:if(e.isTypeNode(n))break;return}n=M(n.getFullStart(),r)}}function H(t,r,n){return e.formatting.getRangeOfEnclosingComment(t,r,void 0,n)}function K(e,t){return 1===e.kind?!!e.jsDoc:0!==e.getWidth(t)}function W(e,t,r){var n=H(e,t,void 0);return!!n&&r===m.test(e.text.substring(n.pos,n.end))}function G(t,r,n){return e.createTextSpanFromBounds(t.getStart(r),(n||t).getEnd())}function $(t){if(!t.isUnterminated)return e.createTextSpanFromBounds(t.getStart()+1,t.getEnd()-1)}function Y(e,t){return{span:e,newText:t}}function X(e){return 150===e.kind}function Q(t,r){return{fileExists:function(e){return t.fileExists(e)},getCurrentDirectory:function(){return r.getCurrentDirectory()},readFile:e.maybeBind(r,r.readFile),useCaseSensitiveFileNames:e.maybeBind(r,r.useCaseSensitiveFileNames),getSymlinkCache:e.maybeBind(r,r.getSymlinkCache)||t.getSymlinkCache,getGlobalTypingsCacheLocation:e.maybeBind(r,r.getGlobalTypingsCacheLocation),getSourceFiles:function(){return t.getSourceFiles()},redirectTargetsMap:t.redirectTargetsMap,getProjectReferenceRedirect:function(e){return t.getProjectReferenceRedirect(e)},isSourceOfProjectReferenceRedirect:function(e){return t.isSourceOfProjectReferenceRedirect(e)},getNearestAncestorDirectoryWithPackageJson:e.maybeBind(r,r.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:function(){return t.getFileIncludeReasons()}}}function Z(e,t){return a(a({},Q(e,t)),{getCommonSourceDirectory:function(){return e.getCommonSourceDirectory()}})}function ee(t,r,n,i,a){return e.factory.createImportDeclaration(void 0,void 0,t||r?e.factory.createImportClause(!!a,t,r&&r.length?e.factory.createNamedImports(r):void 0):void 0,"string"==typeof n?te(n,i):n)}function te(t,r){return e.factory.createStringLiteral(t,0===r)}function re(t,r){return e.isStringDoubleQuoted(t,r)?1:0}function ne(t,r){if(r.quotePreference&&"auto"!==r.quotePreference)return"single"===r.quotePreference?0:1;var n=t.imports&&e.find(t.imports,(function(t){return e.isStringLiteral(t)&&!e.nodeIsSynthesized(t.parent)}));return n?re(n,t):1}function ie(t){return"default"!==t.escapedName?t.escapedName:e.firstDefined(t.declarations,(function(t){var r=e.getNameOfDeclaration(t);return r&&78===r.kind?r.escapedText:void 0}))}function ae(t,r,n){return e.textSpanContainsPosition(t,r.getStart(n))&&r.getEnd()<=e.textSpanEnd(t)}function oe(e,t){return!!e&&!!t&&e.start===t.start&&e.length===t.length}function se(e){return e.declarations&&e.declarations.length>0&&161===e.declarations[0].kind}e.getLineStartPositionForPosition=function(t,r){return e.getLineStarts(r)[r.getLineAndCharacterOfPosition(t).line]},e.rangeContainsRange=g,e.rangeContainsRangeExclusive=function(e,t){return _(e,t.pos)&&_(e,t.end)},e.rangeContainsPosition=function(e,t){return e.pos<=t&&t<=e.end},e.rangeContainsPositionExclusive=_,e.startEndContainsRange=h,e.rangeContainsStartEnd=function(e,t,r){return e.pos<=t&&e.end>=r},e.rangeOverlapsWithStartEnd=function(e,t,r){return y(e.pos,e.end,t,r)},e.nodeOverlapsWithStartEnd=function(e,t,r,n){return y(e.getStart(t),e.end,r,n)},e.startEndOverlapsWithStartEnd=y,e.positionBelongsToNode=function(t,r,n){return e.Debug.assert(t.pos<=r),r<t.end||!v(t,n)},e.findListItemInfo=function(t){var r=E(t);if(r){var n=r.getChildren();return{listItemIndex:e.indexOfNode(n,t),list:r}}},e.hasChildOfKind=k,e.findChildOfKind=x,e.findContainingList=E,e.getContextualTypeOrAncestorTypeNodeType=function(t,r){var n=r.getContextualType(t);if(n)return n;var i=function(t){var r;return e.findAncestor(t,(function(t){return e.isTypeNode(t)&&(r=t),!e.isQualifiedName(t.parent)&&!e.isTypeNode(t.parent)&&!e.isTypeElement(t.parent)})),r}(t);return i&&r.getTypeAtLocation(i)},e.getAdjustedReferenceLocation=P,e.getAdjustedRenameLocation=function(e){return N(e,!0)},e.getTouchingPropertyName=function(t,r){return I(t,r,(function(t){return e.isPropertyNameLiteral(t)||e.isKeyword(t.kind)||e.isPrivateIdentifier(t)}))},e.getTouchingToken=I,e.getTokenAtPosition=F,e.findTokenOnLeftOfPosition=function(t,r){var n=F(t,r);return e.isToken(n)&&r>n.getStart(t)&&r<n.getEnd()?n:M(r,t)},e.findNextToken=R,e.findPrecedingToken=M,e.isInString=function(t,r,n){if(void 0===n&&(n=M(r,t)),n&&e.isStringTextContainingNode(n)){var i=n.getStart(t),a=n.getEnd();if(i<r&&r<a)return!0;if(r===a)return!!n.isUnterminated}return!1},e.isInsideJsxElementOrAttribute=function(e,t){var r=F(e,t);return!!r&&(11===r.kind||(29===r.kind&&11===r.parent.kind||(29===r.kind&&286===r.parent.kind||(!(!r||19!==r.kind||286!==r.parent.kind)||29===r.kind&&279===r.parent.kind))))},e.isInTemplateString=function(t,r){var n=F(t,r);return e.isTemplateLiteralKind(n.kind)&&r>n.getStart(t)},e.isInJSXText=function(t,r){var n=F(t,r);return!!e.isJsxText(n)||(!(18!==n.kind||!e.isJsxExpression(n.parent)||!e.isJsxElement(n.parent.parent))||!(29!==n.kind||!e.isJsxOpeningLikeElement(n.parent)||!e.isJsxElement(n.parent.parent)))},e.isInsideJsxElement=function(e,t){return function(r){for(;r;)if(r.kind>=277&&r.kind<=286||11===r.kind||29===r.kind||31===r.kind||78===r.kind||19===r.kind||18===r.kind||43===r.kind)r=r.parent;else{if(276!==r.kind)return!1;if(t>r.getStart(e))return!0;r=r.parent}return!1}(F(e,t))},e.findPrecedingMatchingToken=U,e.removeOptionality=q,e.isPossiblyTypeArgumentPosition=function t(r,n,i){var a=V(r,n);return void 0!==a&&(e.isPartOfTypeNode(a.called)||0!==J(a.called,a.nTypeArguments,i).length||t(a.called,n,i))},e.getPossibleGenericSignatures=J,e.getPossibleTypeArgumentsInfo=V,e.isInComment=H,e.hasDocComment=function(t,r){var n=F(t,r);return!!e.findAncestor(n,e.isJSDoc)},e.getNodeModifiers=function(t,r){void 0===r&&(r=0);var n=[],i=e.isDeclaration(t)?e.getCombinedNodeFlagsAlwaysIncludeJSDoc(t)&~r:0;return 8&i&&n.push("private"),16&i&&n.push("protected"),4&i&&n.push("public"),32&i&&n.push("static"),128&i&&n.push("abstract"),1&i&&n.push("export"),8192&i&&n.push("deprecated"),8388608&t.flags&&n.push("declare"),269===t.kind&&n.push("export"),n.length>0?n.join(","):""},e.getTypeArgumentOrTypeParameterList=function(t){return 174===t.kind||204===t.kind?t.typeArguments:e.isFunctionLike(t)||254===t.kind||256===t.kind?t.typeParameters:void 0},e.isComment=function(e){return 2===e||3===e},e.isStringOrRegularExpressionOrTemplateLiteral=function(t){return!(10!==t&&13!==t&&!e.isTemplateLiteralKind(t))},e.isPunctuation=function(e){return 18<=e&&e<=77},e.isInsideTemplateLiteral=function(t,r,n){return e.isTemplateLiteralKind(t.kind)&&t.getStart(n)<r&&r<t.end||!!t.isUnterminated&&r===t.end},e.isAccessibilityModifier=function(e){switch(e){case 123:case 121:case 122:return!0}return!1},e.cloneCompilerOptions=function(t){var r=e.clone(t);return e.setConfigFileInOptions(r,t&&t.configFile),r},e.isArrayLiteralOrObjectLiteralDestructuringPattern=function e(t){if(200===t.kind||201===t.kind){if(218===t.parent.kind&&t.parent.left===t&&62===t.parent.operatorToken.kind)return!0;if(241===t.parent.kind&&t.parent.initializer===t)return!0;if(e(291===t.parent.kind?t.parent.parent:t.parent))return!0}return!1},e.isInReferenceComment=function(e,t){return W(e,t,!0)},e.isInNonReferenceComment=function(e,t){return W(e,t,!1)},e.getReplacementSpanForContextToken=function(e){if(e)switch(e.kind){case 10:case 14:return $(e);default:return G(e)}},e.createTextSpanFromNode=G,e.createTextSpanFromStringLiteralLikeContent=$,e.createTextRangeFromNode=function(t,r){return e.createRange(t.getStart(r),t.end)},e.createTextSpanFromRange=function(t){return e.createTextSpanFromBounds(t.pos,t.end)},e.createTextRangeFromSpan=function(t){return e.createRange(t.start,t.start+t.length)},e.createTextChangeFromStartLength=function(t,r,n){return Y(e.createTextSpan(t,r),n)},e.createTextChange=Y,e.typeKeywords=[129,128,156,132,95,136,139,142,104,145,146,143,148,149,110,114,151,152,153],e.isTypeKeyword=function(t){return e.contains(e.typeKeywords,t)},e.isTypeKeywordToken=X,e.isExternalModuleSymbol=function(e){return!!(1536&e.flags)&&34===e.name.charCodeAt(0)},e.nodeSeenTracker=function(){var t=[];return function(r){var n=e.getNodeId(r);return!t[n]&&(t[n]=!0)}},e.getSnapshotText=function(e){return e.getText(0,e.getLength())},e.repeatString=function(e,t){for(var r="",n=0;n<t;n++)r+=e;return r},e.skipConstraint=function(e){return e.isTypeParameter()&&e.getConstraint()||e},e.getNameFromPropertyName=function(t){return 159===t.kind?e.isStringOrNumericLiteralLike(t.expression)?t.expression.text:void 0:e.isPrivateIdentifier(t)?e.idText(t):e.getTextOfIdentifierOrLiteral(t)},e.programContainsModules=function(e){return e.getSourceFiles().some((function(t){return!(t.isDeclarationFile||e.isSourceFileFromExternalLibrary(t)||!t.externalModuleIndicator&&!t.commonJsModuleIndicator)}))},e.programContainsEs6Modules=function(e){return e.getSourceFiles().some((function(t){return!t.isDeclarationFile&&!e.isSourceFileFromExternalLibrary(t)&&!!t.externalModuleIndicator}))},e.compilerOptionsIndicateEs6Modules=function(e){return!!e.module||e.target>=2||!!e.noEmit},e.createModuleSpecifierResolutionHost=Q,e.getModuleSpecifierResolverHost=Z,e.makeImportIfNecessary=function(e,t,r,n){return e||t&&t.length?ee(e,t,r,n):void 0},e.makeImport=ee,e.makeStringLiteral=te,function(e){e[e.Single=0]="Single",e[e.Double=1]="Double"}(e.QuotePreference||(e.QuotePreference={})),e.quotePreferenceFromString=re,e.getQuotePreference=ne,e.getQuoteFromPreference=function(t){switch(t){case 0:return"'";case 1:return'"';default:return e.Debug.assertNever(t)}},e.symbolNameNoDefault=function(t){var r=ie(t);return void 0===r?void 0:e.unescapeLeadingUnderscores(r)},e.symbolEscapedNameNoDefault=ie,e.isObjectBindingElementWithoutPropertyName=function(t){return e.isBindingElement(t)&&e.isObjectBindingPattern(t.parent)&&e.isIdentifier(t.name)&&!t.propertyName},e.getPropertySymbolFromBindingElement=function(e,t){var r=e.getTypeAtLocation(t.parent);return r&&e.getPropertyOfType(r,t.name.text)},e.getParentNodeInSpan=function(t,r,n){if(t)for(;t.parent;){if(e.isSourceFile(t.parent)||!ae(n,t.parent,r))return t;t=t.parent}},e.findModifier=function(t,r){return t.modifiers&&e.find(t.modifiers,(function(e){return e.kind===r}))},e.insertImports=function(t,r,n,i){var a=234===(e.isArray(n)?n[0]:n).kind?e.isRequireVariableStatement:e.isAnyImportSyntax,o=e.filter(r.statements,a),s=e.isArray(n)?e.stableSort(n,e.OrganizeImports.compareImportsOrRequireStatements):[n];if(o.length)if(o&&e.OrganizeImports.importsAreSorted(o))for(var c=0,l=s;c<l.length;c++){var u=l[c],d=e.OrganizeImports.getImportDeclarationInsertionIndex(o,u);if(0===d){var p=o[0]===r.statements[0]?{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude}:{};t.insertNodeBefore(r,o[0],u,!1,p)}else{var f=o[d-1];t.insertNodeAfter(r,f,u)}}else{var m=e.lastOrUndefined(o);m?t.insertNodesAfter(r,m,s):t.insertNodesAtTopOfFile(r,s,i)}else t.insertNodesAtTopOfFile(r,s,i)},e.getTypeKeywordOfTypeOnlyImport=function(t,r){return e.Debug.assert(t.isTypeOnly),e.cast(t.getChildAt(0,r),X)},e.textSpansEqual=oe,e.documentSpansEqual=function(e,t){return e.fileName===t.fileName&&oe(e.textSpan,t.textSpan)},e.forEachUnique=function(e,t){if(e)for(var r=0;r<e.length;r++)if(e.indexOf(e[r])===r){var n=t(e[r],r);if(n)return n}},e.isTextWhiteSpaceLike=function(t,r,n){for(var i=r;i<n;i++)if(!e.isWhiteSpaceLike(t.charCodeAt(i)))return!1;return!0},e.isFirstDeclarationOfSymbolParameter=se;var ce=function(){var t,r,n,i,a=10*e.defaultMaximumTruncationLength;l();var o=function(t){return c(t,e.SymbolDisplayPartKind.text)};return{displayParts:function(){var r=t.length&&t[t.length-1].text;return i>a&&r&&"..."!==r&&(e.isWhiteSpaceLike(r.charCodeAt(r.length-1))||t.push(ue(" ",e.SymbolDisplayPartKind.space)),t.push(ue("...",e.SymbolDisplayPartKind.punctuation))),t},writeKeyword:function(t){return c(t,e.SymbolDisplayPartKind.keyword)},writeOperator:function(t){return c(t,e.SymbolDisplayPartKind.operator)},writePunctuation:function(t){return c(t,e.SymbolDisplayPartKind.punctuation)},writeTrailingSemicolon:function(t){return c(t,e.SymbolDisplayPartKind.punctuation)},writeSpace:function(t){return c(t,e.SymbolDisplayPartKind.space)},writeStringLiteral:function(t){return c(t,e.SymbolDisplayPartKind.stringLiteral)},writeParameter:function(t){return c(t,e.SymbolDisplayPartKind.parameterName)},writeProperty:function(t){return c(t,e.SymbolDisplayPartKind.propertyName)},writeLiteral:function(t){return c(t,e.SymbolDisplayPartKind.stringLiteral)},writeSymbol:function(e,r){if(i>a)return;s(),i+=e.length,t.push(le(e,r))},writeLine:function(){if(i>a)return;i+=1,t.push(fe()),r=!0},write:o,writeComment:o,getText:function(){return""},getTextPos:function(){return 0},getColumn:function(){return 0},getLine:function(){return 0},isAtStartOfLine:function(){return!1},hasTrailingWhitespace:function(){return!1},hasTrailingComment:function(){return!1},rawWrite:e.notImplemented,getIndent:function(){return n},increaseIndent:function(){n++},decreaseIndent:function(){n--},clear:l,trackSymbol:e.noop,reportInaccessibleThisError:e.noop,reportInaccessibleUniqueSymbolError:e.noop,reportPrivateInBaseOfClassExpression:e.noop};function s(){if(!(i>a)&&r){var o=e.getIndentString(n);o&&(i+=o.length,t.push(ue(o,e.SymbolDisplayPartKind.space))),r=!1}}function c(e,r){i>a||(s(),i+=e.length,t.push(ue(e,r)))}function l(){t=[],r=!0,n=0,i=0}}();function le(t,r){return ue(t,function(t){var r=t.flags;if(3&r)return se(t)?e.SymbolDisplayPartKind.parameterName:e.SymbolDisplayPartKind.localName;if(4&r)return e.SymbolDisplayPartKind.propertyName;if(32768&r)return e.SymbolDisplayPartKind.propertyName;if(65536&r)return e.SymbolDisplayPartKind.propertyName;if(8&r)return e.SymbolDisplayPartKind.enumMemberName;if(16&r)return e.SymbolDisplayPartKind.functionName;if(32&r)return e.SymbolDisplayPartKind.className;if(64&r)return e.SymbolDisplayPartKind.interfaceName;if(384&r)return e.SymbolDisplayPartKind.enumName;if(1536&r)return e.SymbolDisplayPartKind.moduleName;if(8192&r)return e.SymbolDisplayPartKind.methodName;if(262144&r)return e.SymbolDisplayPartKind.typeParameterName;if(524288&r)return e.SymbolDisplayPartKind.aliasName;if(2097152&r)return e.SymbolDisplayPartKind.aliasName;return e.SymbolDisplayPartKind.text}(r))}function ue(t,r){return{text:t,kind:e.SymbolDisplayPartKind[r]}}function de(t){return ue(e.tokenToString(t),e.SymbolDisplayPartKind.keyword)}function pe(t){return ue(t,e.SymbolDisplayPartKind.text)}e.symbolPart=le,e.displayPart=ue,e.spacePart=function(){return ue(" ",e.SymbolDisplayPartKind.space)},e.keywordPart=de,e.punctuationPart=function(t){return ue(e.tokenToString(t),e.SymbolDisplayPartKind.punctuation)},e.operatorPart=function(t){return ue(e.tokenToString(t),e.SymbolDisplayPartKind.operator)},e.textOrKeywordPart=function(t){var r=e.stringToToken(t);return void 0===r?pe(t):de(r)},e.textPart=pe;function fe(){return ue("\n",e.SymbolDisplayPartKind.lineBreak)}function me(e){try{return e(ce),ce.displayParts()}finally{ce.clear()}}function ge(e){return 0!=(33554432&e.flags)}function _e(e){return 0!=(2097152&e.flags)}function he(e,t){void 0===t&&(t=!0);var r=e&&ve(e);return r&&!t&&be(r),r}function ye(t,r,n){var i=n(t);return i?e.setOriginalNode(i,t):i=ve(t,n),i&&!r&&be(i),i}function ve(t,r){var n=r?e.visitEachChild(t,(function(e){return ye(e,!0,r)}),e.nullTransformationContext):e.visitEachChild(t,he,e.nullTransformationContext);if(n===t){var i=e.isStringLiteral(t)?e.setOriginalNode(e.factory.createStringLiteralFromNode(t),t):e.isNumericLiteral(t)?e.setOriginalNode(e.factory.createNumericLiteral(t.text,t.numericLiteralFlags),t):e.factory.cloneNode(t);return e.setTextRange(i,t)}return n.parent=void 0,n}function be(e){ke(e),xe(e)}function ke(e){Ee(e,512,Se)}function xe(t){Ee(t,1024,e.getLastChild)}function Ee(t,r,n){e.addEmitFlags(t,r);var i=n(t);i&&Ee(i,r,n)}function Se(e){return e.forEachChild((function(e){return e}))}function De(t,r,n,i,a){e.forEachLeadingCommentRange(n.text,t.pos,Ce(r,n,i,a,e.addSyntheticLeadingComment))}function we(t,r,n,i,a){e.forEachTrailingCommentRange(n.text,t.end,Ce(r,n,i,a,e.addSyntheticTrailingComment))}function Te(t,r,n,i,a){e.forEachTrailingCommentRange(n.text,t.pos,Ce(r,n,i,a,e.addSyntheticLeadingComment))}function Ce(e,t,r,n,i){return function(a,o,s,c){3===s?(a+=2,o-=2):a+=2,i(e,r||s,t.text.slice(a,o),void 0!==n?n:c)}}function Ae(t,r){if(e.startsWith(t,r))return 0;var n=t.indexOf(" "+r);return-1===n&&(n=t.indexOf("."+r)),-1===n&&(n=t.indexOf('"'+r)),-1===n?-1:n+1}function Ne(e){switch(e){case 36:case 34:case 37:case 35:return!0;default:return!1}}function Pe(e,t){return t.getTypeAtLocation(e.parent.parent.expression)}function Ie(e){return 170===e||171===e||172===e||163===e||165===e}function Fe(e){return 253===e||167===e||166===e||168===e||169===e}function Oe(e){return 259===e}function Re(e){return 234===e||235===e||237===e||242===e||243===e||244===e||248===e||250===e||164===e||257===e||264===e||263===e||270===e||262===e||269===e}function Me(e,t){return je(e,e.fileExists,t)}function Le(e){try{return e()}catch(e){return}}function je(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return Le((function(){return t&&t.apply(e,r)}))}function Be(t,r){if(r.readFile){var n=function(e){try{return JSON.parse(e)}catch(e){return}}(r.readFile(t)||""),i={};if(n)for(var o=0,s=["dependencies","devDependencies","optionalDependencies","peerDependencies"];o<s.length;o++){var c=s[o],l=n[c];if(l){var u=new e.Map;for(var d in l)u.set(d,l[d]);i[c]=u}}var p=[[1,i.dependencies],[2,i.devDependencies],[8,i.optionalDependencies],[4,i.peerDependencies]];return a(a({},i),{parseable:!!n,fileName:t,get:f,has:function(e,t){return!!f(e,t)}})}function f(e,t){void 0===t&&(t=15);for(var r=0,n=p;r<n.length;r++){var i=n[r],a=i[0],o=i[1];if(o&&t&a){var s=o.get(e);if(void 0!==s)return s}}}}function ze(e){return void 0!==e.file&&void 0!==e.start&&void 0!==e.length}function Ue(t){var r=t.getSourceFile();return!(!r.externalModuleIndicator&&!r.commonJsModuleIndicator)&&(e.isInJSFile(t)||!e.findAncestor(t,e.isGlobalScopeAugmentation))}e.getNewLineOrDefaultFromHost=function(e,t){var r;return(null==t?void 0:t.newLineCharacter)||(null===(r=e.getNewLine)||void 0===r?void 0:r.call(e))||"\r\n"},e.lineBreakPart=fe,e.mapToDisplayParts=me,e.typeToDisplayParts=function(e,t,r,n){return void 0===n&&(n=0),me((function(i){e.writeType(t,r,17408|n,i)}))},e.symbolToDisplayParts=function(e,t,r,n,i){return void 0===i&&(i=0),me((function(a){e.writeSymbol(t,r,n,8|i,a)}))},e.signatureToDisplayParts=function(e,t,r,n){return void 0===n&&(n=0),n|=25632,me((function(i){e.writeSignature(t,r,n,void 0,i)}))},e.isImportOrExportSpecifierName=function(t){return!!t.parent&&e.isImportOrExportSpecifier(t.parent)&&t.parent.propertyName===t},e.getScriptKind=function(t,r){return e.ensureScriptKind(t,r.getScriptKind&&r.getScriptKind(t))},e.getSymbolTarget=function(t,r){for(var n=t;_e(n)||ge(n)&&n.target;)n=ge(n)&&n.target?n.target:e.skipAlias(n,r);return n},e.getUniqueSymbolId=function(t,r){return e.getSymbolId(e.skipAlias(t,r))},e.getFirstNonSpaceCharacterPosition=function(t,r){for(;e.isWhiteSpaceLike(t.charCodeAt(r));)r+=1;return r},e.getPrecedingNonSpaceCharacterPosition=function(t,r){for(;r>-1&&e.isWhiteSpaceSingleLine(t.charCodeAt(r));)r-=1;return r+1},e.getSynthesizedDeepClone=he,e.getSynthesizedDeepCloneWithReplacements=ye,e.getSynthesizedDeepClones=function(t,r){return void 0===r&&(r=!0),t&&e.factory.createNodeArray(t.map((function(e){return he(e,r)})),t.hasTrailingComma)},e.getSynthesizedDeepClonesWithReplacements=function(t,r,n){return e.factory.createNodeArray(t.map((function(e){return ye(e,r,n)})),t.hasTrailingComma)},e.suppressLeadingAndTrailingTrivia=be,e.suppressLeadingTrivia=ke,e.suppressTrailingTrivia=xe,e.copyComments=function(e,t){var r=e.getSourceFile();!function(e,t){for(var r=e.getFullStart(),n=e.getStart(),i=r;i<n;i++)if(10===t.charCodeAt(i))return!0;return!1}(e,r.text)?Te(e,t,r):De(e,t,r),we(e,t,r)},e.getUniqueName=function(t,r){for(var n=t,i=1;!e.isFileLevelUniqueName(r,n);i++)n=t+"_"+i;return n},e.getRenameLocation=function(t,r,n,i){for(var a=0,o=-1,s=0,c=t;s<c.length;s++){var l=c[s],u=l.fileName,d=l.textChanges;e.Debug.assert(u===r);for(var p=0,f=d;p<f.length;p++){var m=f[p],g=m.span,_=m.newText,h=Ae(_,n);if(-1!==h&&(o=g.start+a+h,!i))return o;a+=_.length-g.length}}return e.Debug.assert(i),e.Debug.assert(o>=0),o},e.copyLeadingComments=De,e.copyTrailingComments=we,e.copyTrailingAsLeadingComments=Te,e.needsParentheses=function(t){return e.isBinaryExpression(t)&&27===t.operatorToken.kind||e.isObjectLiteralExpression(t)},e.getContextualTypeFromParent=function(e,t){var r=e.parent;switch(r.kind){case 205:return t.getContextualType(r);case 218:var n=r,i=n.left,a=n.operatorToken,o=n.right;return Ne(a.kind)?t.getTypeAtLocation(e===o?i:o):t.getContextualType(e);case 287:return r.expression===e?Pe(r,t):void 0;default:return t.getContextualType(e)}},e.quote=function(t,r,n){var i=ne(t,r),a=JSON.stringify(n);return 0===i?"'"+e.stripQuotes(a).replace(/'/g,"\\'").replace(/\\"/g,'"')+"'":a},e.isEqualityOperatorKind=Ne,e.isStringLiteralOrTemplate=function(e){switch(e.kind){case 10:case 14:case 220:case 206:return!0;default:return!1}},e.hasIndexSignature=function(e){return!!e.getStringIndexType()||!!e.getNumberIndexType()},e.getSwitchedType=Pe,e.ANONYMOUS="anonymous function",e.getTypeNodeIfAccessible=function(e,t,r,n){var i=r.getTypeChecker(),a=!0,o=function(){a=!1},s=i.typeToTypeNode(e,t,1,{trackSymbol:function(e,t,r){a=a&&0===i.isSymbolAccessible(e,t,r,!1).accessibility},reportInaccessibleThisError:o,reportPrivateInBaseOfClassExpression:o,reportInaccessibleUniqueSymbolError:o,moduleResolverHost:Z(r,n)});return a?s:void 0},e.syntaxRequiresTrailingCommaOrSemicolonOrASI=Ie,e.syntaxRequiresTrailingFunctionBlockOrSemicolonOrASI=Fe,e.syntaxRequiresTrailingModuleBlockOrSemicolonOrASI=Oe,e.syntaxRequiresTrailingSemicolonOrASI=Re,e.syntaxMayBeASICandidate=e.or(Ie,Fe,Oe,Re),e.positionIsASICandidate=function(t,r,n){var i=e.findAncestor(r,(function(r){return r.end!==t?"quit":e.syntaxMayBeASICandidate(r.kind)}));return!!i&&function(t,r){var n=t.getLastToken(r);if(n&&26===n.kind)return!1;if(Ie(t.kind)){if(n&&27===n.kind)return!1}else if(Oe(t.kind)){if((i=e.last(t.getChildren(r)))&&e.isModuleBlock(i))return!1}else if(Fe(t.kind)){var i;if((i=e.last(t.getChildren(r)))&&e.isFunctionBlock(i))return!1}else if(!Re(t.kind))return!1;if(237===t.kind)return!0;var a=R(t,e.findAncestor(t,(function(e){return!e.parent})),r);return!a||19===a.kind||r.getLineAndCharacterOfPosition(t.getEnd()).line!==r.getLineAndCharacterOfPosition(a.getStart(r)).line}(i,n)},e.probablyUsesSemicolons=function(t){var r=0,n=0;return e.forEachChild(t,(function i(a){if(Re(a.kind)){var o=a.getLastToken(t);o&&26===o.kind?r++:n++}return r+n>=5||e.forEachChild(a,i)})),0===r&&n<=1||r/n>.2},e.tryGetDirectories=function(e,t){return je(e,e.getDirectories,t)||[]},e.tryReadDirectory=function(t,r,n,i,a){return je(t,t.readDirectory,r,n,i,a)||e.emptyArray},e.tryFileExists=Me,e.tryDirectoryExists=function(t,r){return Le((function(){return e.directoryProbablyExists(r,t)}))||!1},e.tryAndIgnoreErrors=Le,e.tryIOAndConsumeErrors=je,e.findPackageJsons=function(t,r,n){var i=[];return e.forEachAncestorDirectory(t,(function(t){if(t===n)return!0;var a=e.combinePaths(t,e.getPackageJsonByPMType(r.getCompilationSettings().packageManagerType));Me(r,a)&&i.push(a)})),i},e.findPackageJson=function(t,r){var n;return e.forEachAncestorDirectory(t,(function(t){var i=e.getModuleByPMType(r.getCompilationSettings().packageManagerType),a=e.getPackageJsonByPMType(r.getCompilationSettings().packageManagerType);return t===i||(!!(n=e.findConfigFile(t,(function(e){return Me(r,e)}),a))||void 0)})),n},e.getPackageJsonsVisibleToFile=function(t,r){if(!r.fileExists)return[];var n=[];return e.forEachAncestorDirectory(e.getDirectoryPath(t),(function(t){var i=e.combinePaths(t,e.getPackageJsonByPMType(r.getCompilationSettings().packageManagerType));if(r.fileExists(i)){var a=Be(i,r);a&&n.push(a)}})),n},e.createPackageJsonInfo=Be,e.consumesNodeCoreModules=function(t){return e.some(t.imports,(function(t){var r=t.text;return e.JsTyping.nodeCoreModules.has(r)}))},e.isInsideNodeModules=function(t){return e.contains(e.getPathComponents(t),"node_modules")},e.isDiagnosticWithLocation=ze,e.findDiagnosticForNode=function(t,r){var n=G(t),i=e.binarySearchKey(r,n,e.identity,e.compareTextSpans);if(i>=0){var a=r[i];return e.Debug.assertEqual(a.file,t.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),e.cast(a,ze)}},e.getDiagnosticsWithinSpan=function(t,r){var n,i=e.binarySearchKey(r,t.start,(function(e){return e.start}),e.compareValues);for(i<0&&(i=~i);(null===(n=r[i-1])||void 0===n?void 0:n.start)===t.start;)i--;for(var a=[],o=e.textSpanEnd(t);;){var s=e.tryCast(r[i],ze);if(!s||s.start>o)break;e.textSpanContainsTextSpan(t,s)&&a.push(s),i++}return a},e.getRefactorContextSpan=function(t){var r=t.startPosition,n=t.endPosition;return e.createTextSpanFromBounds(r,void 0===n?r:n)},e.mapOneOrMany=function(t,r,n){return void 0===n&&(n=e.identity),t?e.isArray(t)?n(e.map(t,r)):r(t,0):void 0},e.firstOrOnly=function(t){return e.isArray(t)?e.first(t):t},e.getNameForExportedSymbol=function(t,r){return 33554432&t.flags||"export="!==t.escapedName&&"default"!==t.escapedName?t.name:e.firstDefined(t.declarations,(function(t){var r;return e.isExportAssignment(t)?null===(r=e.tryCast(e.skipOuterExpressions(t.expression),e.isIdentifier))||void 0===r?void 0:r.text:void 0}))||e.codefix.moduleSymbolToValidIdentifier(function(t){var r;return e.Debug.checkDefined(t.parent,"Symbol parent was undefined. Flags: "+e.Debug.formatSymbolFlags(t.flags)+". Declarations: "+(null===(r=t.declarations)||void 0===r?void 0:r.map((function(t){var r=e.Debug.formatSyntaxKind(t.kind),n=e.isInJSFile(t),i=t.expression;return(n?"[JS]":"")+r+(i?" (expression: "+e.Debug.formatSyntaxKind(i.kind)+")":"")})).join(", "))+".")}(t),r)},e.stringContainsAt=function(e,t,r){var n=t.length;if(n+r>e.length)return!1;for(var i=0;i<n;i++)if(t.charCodeAt(i)!==e.charCodeAt(i+r))return!1;return!0},e.startsWithUnderscore=function(e){return 95===e.charCodeAt(0)},e.isGlobalDeclaration=function(e){return!Ue(e)},e.isNonGlobalDeclaration=Ue,e.isVirtualConstructor=function(t,r,n){var i=t.symbolToString(r),a=e.SymbolDisplay.getSymbolKind(t,r,n);return!(!n.virtual||"__constructor"!==i||"constructor"!==a)}}(d||(d={})),function(e){e.createClassifier=function(){var o=e.createScanner(99,!1);function s(i,s,c){var l=0,u=0,d=[],p=function(t){switch(t){case 3:return{prefix:'"\\\n'};case 2:return{prefix:"'\\\n"};case 1:return{prefix:"/*\n"};case 4:return{prefix:"`\n"};case 5:return{prefix:"}\n",pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return e.Debug.assertNever(t)}}(s),f=p.prefix,m=p.pushTemplate;i=f+i;var g=f.length;m&&d.push(15),o.setText(i);var _=0,h=[],y=0;do{l=o.scan(),e.isTrivia(l)||(k(),u=l);var v=o.getTextPos();if(n(o.getTokenPos(),v,g,a(l),h),v>=i.length){var b=r(o,l,e.lastOrUndefined(d));void 0!==b&&(_=b)}}while(1!==l);function k(){switch(l){case 43:case 67:t[u]||13!==o.reScanSlashToken()||(l=13);break;case 29:78===u&&y++;break;case 31:y>0&&y--;break;case 129:case 148:case 145:case 132:case 149:y>0&&!c&&(l=78);break;case 15:d.push(l);break;case 18:d.length>0&&d.push(l);break;case 19:if(d.length>0){var r=e.lastOrUndefined(d);15===r?17===(l=o.reScanTemplateToken(!1))?d.pop():e.Debug.assertEqual(l,16,"Should have been a template middle."):(e.Debug.assertEqual(r,18,"Should have been an open brace"),d.pop())}break;default:if(!e.isKeyword(l))break;(24===u||e.isKeyword(u)&&e.isKeyword(l)&&!function(t,r){if(!e.isAccessibilityModifier(t))return!0;switch(r){case 135:case 147:case 133:case 124:return!0;default:return!1}}(u,l))&&(l=78)}}return{endOfLineState:_,spans:h}}return{getClassificationsForLine:function(t,r,n){return function(t,r){for(var n=[],a=t.spans,o=0,s=0;s<a.length;s+=3){var c=a[s],l=a[s+1],u=a[s+2];if(o>=0){var d=c-o;d>0&&n.push({length:d,classification:e.TokenClass.Whitespace})}n.push({length:l,classification:i(u)}),o=c+l}var p=r.length-o;p>0&&n.push({length:p,classification:e.TokenClass.Whitespace});return{entries:n,finalLexState:t.endOfLineState}}(s(t,r,n),t)},getEncodedLexicalClassifications:s}};var t=e.arrayToNumericMap([78,10,8,9,13,108,45,46,21,23,19,110,95],(function(e){return e}),(function(){return!0}));function r(t,r,n){switch(r){case 10:if(!t.isUnterminated())return;for(var i=t.getTokenText(),a=i.length-1,o=0;92===i.charCodeAt(a-o);)o++;if(0==(1&o))return;return 34===i.charCodeAt(0)?3:2;case 3:return t.isUnterminated()?1:void 0;default:if(e.isTemplateLiteralKind(r)){if(!t.isUnterminated())return;switch(r){case 17:return 5;case 14:return 4;default:return e.Debug.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+r)}}return 15===n?6:void 0}}function n(e,t,r,n,i){if(8!==n){0===e&&r>0&&(e+=r);var a=t-e;a>0&&i.push(e-r,a,n)}}function i(t){switch(t){case 1:return e.TokenClass.Comment;case 3:return e.TokenClass.Keyword;case 4:return e.TokenClass.NumberLiteral;case 25:return e.TokenClass.BigIntLiteral;case 5:return e.TokenClass.Operator;case 6:return e.TokenClass.StringLiteral;case 8:return e.TokenClass.Whitespace;case 10:return e.TokenClass.Punctuation;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return e.TokenClass.Identifier;default:return}}function a(t){if(e.isKeyword(t))return 3;if(function(e){switch(e){case 41:case 43:case 44:case 39:case 40:case 47:case 48:case 49:case 29:case 31:case 32:case 33:case 102:case 101:case 127:case 34:case 35:case 36:case 37:case 50:case 52:case 51:case 55:case 56:case 73:case 72:case 77:case 69:case 70:case 71:case 63:case 64:case 65:case 67:case 68:case 62:case 27:case 60:case 74:case 75:case 76:return!0;default:return!1}}(t)||function(e){switch(e){case 39:case 40:case 54:case 53:case 45:case 46:return!0;default:return!1}}(t))return 5;if(t>=18&&t<=77)return 10;switch(t){case 8:return 4;case 9:return 25;case 10:return 6;case 13:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;default:return e.isTemplateLiteralKind(t)?6:2}}function o(e,t){switch(t){case 259:case 254:case 256:case 253:case 223:case 209:case 210:e.throwIfCancellationRequested()}}function s(t,r,n,i,a){var s=[];return n.forEachChild((function l(u){if(u&&e.textSpanIntersectsWith(a,u.pos,u.getFullWidth())){if(o(r,u.kind),e.isIdentifier(u)&&!e.nodeIsMissing(u)&&i.has(u.escapedText)){var d=t.getSymbolAtLocation(u),p=d&&c(d,e.getMeaningFromLocation(u),t);p&&function(t,r,n){var i=r-t;e.Debug.assert(i>0,"Classification had non-positive length of "+i),s.push(t),s.push(i),s.push(n)}(u.getStart(n),u.getEnd(),p)}u.forEachChild(l)}})),{spans:s,endOfLineState:0}}function c(t,r,n){var i=t.getFlags();return 0==(2885600&i)?void 0:32&i?11:384&i?12:524288&i?16:1536&i?4&r||1&r&&function(t){return e.some(t.declarations,(function(t){return e.isModuleDeclaration(t)&&1===e.getModuleInstanceState(t)}))}(t)?14:void 0:2097152&i?c(n.getAliasedSymbol(t),r,n):2&r?64&i?13:262144&i?15:void 0:void 0}function l(e){switch(e){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function u(t){e.Debug.assert(t.spans.length%3==0);for(var r=t.spans,n=[],i=0;i<r.length;i+=3)n.push({textSpan:e.createTextSpan(r[i],r[i+1]),classificationType:l(r[i+2])});return n}function d(t,r,n){var i=n.start,a=n.length,s=e.createScanner(99,!1,r.languageVariant,r.text),c=e.createScanner(99,!1,r.languageVariant,r.text),l=[];return y(r),{spans:l,endOfLineState:0};function u(e,t,r){l.push(e),l.push(t),l.push(r)}function d(t,n,i,a){if(3===n){var o=e.parseIsolatedJSDocComment(r.text,i,a);if(o&&o.jsDoc)return e.setParent(o.jsDoc,t),void function(e){var t=e.pos;if(e.tags)for(var r=0,n=e.tags;r<n.length;r++){var i=n[r];switch(i.pos!==t&&p(t,i.pos-t),u(i.pos,1,10),u(i.tagName.pos,i.tagName.end-i.tagName.pos,18),t=i.tagName.end,i.kind){case 329:a(i);break;case 333:f(i),t=i.end;break;case 332:case 330:y(i.typeExpression),t=i.end}}t!==e.end&&p(t,e.end-t);return;function a(e){e.isNameFirst&&(p(t,e.name.pos-t),u(e.name.pos,e.name.end-e.name.pos,17),t=e.name.end),e.typeExpression&&(p(t,e.typeExpression.pos-t),y(e.typeExpression),t=e.typeExpression.end),e.isNameFirst||(p(t,e.name.pos-t),u(e.name.pos,e.name.end-e.name.pos,17),t=e.name.end)}}(o.jsDoc)}else if(2===n&&function(t,n){var i=/^(\/\/\/\s*)(<)(?:(\S+)((?:[^/]|\/[^>])*)(\/>)?)?/im,a=/(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/gim,o=r.text.substr(t,n),s=i.exec(o);if(!s)return!1;if(!s[3]||!(s[3]in e.commentPragmas))return!1;var c=t;p(c,s[1].length),u(c+=s[1].length,s[2].length,10),u(c+=s[2].length,s[3].length,21),c+=s[3].length;var l=s[4],d=c;for(;;){var f=a.exec(l);if(!f)break;var m=c+f.index;m>d&&(p(d,m-d),d=m),u(d,f[1].length,22),d+=f[1].length,f[2].length&&(p(d,f[2].length),d+=f[2].length),u(d,f[3].length,5),d+=f[3].length,f[4].length&&(p(d,f[4].length),d+=f[4].length),u(d,f[5].length,24),d+=f[5].length}(c+=s[4].length)>d&&p(d,c-d);s[5]&&(u(c,s[5].length,10),c+=s[5].length);var g=t+n;c<g&&p(c,g-c);return!0}(i,a))return;p(i,a)}function p(e,t){u(e,t,1)}function f(e){for(var t=0,r=e.getChildren();t<r.length;t++){y(r[t])}}function m(t,r,n){var i;for(i=r;i<n&&!e.isLineBreak(t.charCodeAt(i));i++);for(u(r,i-r,1),c.setTextPos(i);c.getTextPos()<n;)g()}function g(){var e=c.getTextPos(),t=c.scan(),r=c.getTextPos(),n=h(t);n&&u(e,r-e,n)}function _(t){if(e.isJSDoc(t))return!0;if(e.nodeIsMissing(t))return!0;var n=function(e){switch(e.parent&&e.parent.kind){case 278:if(e.parent.tagName===e)return 19;break;case 279:if(e.parent.tagName===e)return 20;break;case 277:if(e.parent.tagName===e)return 21;break;case 283:if(e.parent.name===e)return 22}return}(t);if(!e.isToken(t)&&11!==t.kind&&void 0===n)return!1;var i=11===t.kind?t.pos:function(t){for(s.setTextPos(t.pos);;){var n=s.getTextPos();if(!e.couldStartTrivia(r.text,n))return n;var i=s.scan(),a=s.getTextPos(),o=a-n;if(!e.isTrivia(i))return n;switch(i){case 4:case 5:continue;case 2:case 3:d(t,i,n,o),s.setTextPos(a);continue;case 7:var c=r.text,l=c.charCodeAt(n);if(60===l||62===l){u(n,o,1);continue}e.Debug.assert(124===l||61===l),m(c,n,a);break;case 6:break;default:e.Debug.assertNever(i)}}}(t),a=t.end-i;if(e.Debug.assert(a>=0),a>0){var o=n||h(t.kind,t);o&&u(i,a,o)}return!0}function h(t,r){if(e.isKeyword(t))return 3;if((29===t||31===t)&&r&&e.getTypeArgumentOrTypeParameterList(r.parent))return 10;if(e.isPunctuation(t)){if(r){var n=r.parent;if(62===t&&(251===n.kind||164===n.kind||161===n.kind||283===n.kind))return 5;if(218===n.kind||216===n.kind||217===n.kind||219===n.kind)return 5}return 10}if(8===t)return 4;if(9===t)return 25;if(10===t)return r&&283===r.parent.kind?24:6;if(13===t)return 6;if(e.isTemplateLiteralKind(t))return 6;if(11===t)return 23;if(78===t){if(r)switch(r.parent.kind){case 254:return r.parent.name===r?11:void 0;case 160:return r.parent.name===r?15:void 0;case 256:return r.parent.name===r?13:void 0;case 258:return r.parent.name===r?12:void 0;case 259:return r.parent.name===r?14:void 0;case 161:return r.parent.name===r?e.isThisIdentifier(r)?3:17:void 0}return 2}}function y(n){if(n&&e.decodedTextSpanIntersectsWith(i,a,n.pos,n.getFullWidth())){o(t,n.kind);for(var s=0,c=n.getChildren(r);s<c.length;s++){var l=c[s];_(l)||y(l)}}}}e.getSemanticClassifications=function(e,t,r,n,i){return u(s(e,t,r,n,i))},e.getEncodedSemanticClassifications=s,e.getSyntacticClassifications=function(e,t,r){return u(d(e,t,r))},e.getEncodedSyntacticClassifications=d}(d||(d={})),function(e){!function(t){!function(t){function r(e,t,r,i){return{spans:n(e,r,i,t),endOfLineState:0}}function n(t,r,n,s){var c=[];return t&&r&&function(t,r,n,s,c){var l=t.getTypeChecker(),u=!1;function d(p){switch(p.kind){case 259:case 254:case 256:case 253:case 223:case 209:case 210:c.throwIfCancellationRequested()}if(p&&e.textSpanIntersectsWith(n,p.pos,p.getFullWidth())&&0!==p.getFullWidth()){var f=u;if((e.isJsxElement(p)||e.isJsxSelfClosingElement(p))&&(u=!0),e.isJsxExpression(p)&&(u=!1),e.isIdentifier(p)&&!u&&!function(t){var r=t.parent;return r&&(e.isImportClause(r)||e.isImportSpecifier(r)||e.isNamespaceImport(r))}(p)){var m=l.getSymbolAtLocation(p);if(m){2097152&m.flags&&(m=l.getAliasedSymbol(m));var g=function(t,r){var n=t.getFlags();if(32&n)return 0;if(384&n)return 1;if(524288&n)return 5;if(64&n){if(2&r)return 2}else if(262144&n)return 4;var a=t.valueDeclaration||t.declarations&&t.declarations[0];a&&e.isBindingElement(a)&&(a=i(a));return a&&o.get(a.kind)}(m,e.getMeaningFromLocation(p));if(void 0!==g){var _=0;if(p.parent)(e.isBindingElement(p.parent)||o.get(p.parent.kind)===g)&&p.parent.name===p&&(_=1);6===g&&a(p)&&(g=9),g=function(t,r,n){if(7===n||9===n||6===n){var i=t.getTypeAtLocation(r);if(i){var o=function(e){return e(i)||i.isUnion()&&i.types.some(e)};if(6!==n&&o((function(e){return e.getConstructSignatures().length>0})))return 0;if(o((function(e){return e.getCallSignatures().length>0}))&&!o((function(e){return e.getProperties().length>0}))||function(t){for(;a(t);)t=t.parent;return e.isCallExpression(t.parent)&&t.parent.expression===t}(r))return 9===n?11:10}}return n}(l,p,g);var h=m.valueDeclaration;if(h){var y=e.getCombinedModifierFlags(h),v=e.getCombinedNodeFlags(h);32&y&&(_|=2),256&y&&(_|=4),0!==g&&2!==g&&(64&y||2&v||8&m.getFlags())&&(_|=8),7!==g&&10!==g||!function(t,r){e.isBindingElement(t)&&(t=i(t));if(e.isVariableDeclaration(t))return(!e.isSourceFile(t.parent.parent.parent)||e.isCatchClause(t.parent))&&t.getSourceFile()===r;if(e.isFunctionDeclaration(t))return!e.isSourceFile(t.parent)&&t.getSourceFile()===r;return!1}(h,r)||(_|=32),t.isSourceFileDefaultLibrary(h.getSourceFile())&&(_|=16)}else m.declarations&&m.declarations.some((function(e){return t.isSourceFileDefaultLibrary(e.getSourceFile())}))&&(_|=16);s(p,g,_)}}}p.virtual||(e.forEachChild(p,d),u=f)}}d(r)}(t,r,n,(function(e,t,n){c.push(e.getStart(r),e.getWidth(r),(t+1<<8)+n)}),s),c}function i(t){for(;;){if(!e.isBindingElement(t.parent.parent))return t.parent.parent;t=t.parent.parent}}function a(t){return e.isQualifiedName(t.parent)&&t.parent.right===t||e.isPropertyAccessExpression(t.parent)&&t.parent.name===t}!function(e){e[e.typeOffset=8]="typeOffset",e[e.modifierMask=255]="modifierMask"}(t.TokenEncodingConsts||(t.TokenEncodingConsts={})),function(e){e[e.class=0]="class",e[e.enum=1]="enum",e[e.interface=2]="interface",e[e.namespace=3]="namespace",e[e.typeParameter=4]="typeParameter",e[e.type=5]="type",e[e.parameter=6]="parameter",e[e.variable=7]="variable",e[e.enumMember=8]="enumMember",e[e.property=9]="property",e[e.function=10]="function",e[e.member=11]="member"}(t.TokenType||(t.TokenType={})),function(e){e[e.declaration=0]="declaration",e[e.static=1]="static",e[e.async=2]="async",e[e.readonly=3]="readonly",e[e.defaultLibrary=4]="defaultLibrary",e[e.local=5]="local"}(t.TokenModifier||(t.TokenModifier={})),t.getSemanticClassifications=function(t,n,i,a){var o=r(t,n,i,a);e.Debug.assert(o.spans.length%3==0);for(var s=o.spans,c=[],l=0;l<s.length;l+=3)c.push({textSpan:e.createTextSpan(s[l],s[l+1]),classificationType:s[l+2]});return c},t.getEncodedSemanticClassifications=r;var o=new e.Map([[251,7],[161,6],[164,9],[259,3],[258,1],[294,8],[254,0],[166,11],[253,10],[209,10],[165,11],[168,9],[169,9],[163,9],[256,2],[257,5],[160,4],[291,9],[292,9]])}(t.v2020||(t.v2020={}))}(e.classifier||(e.classifier={}))}(d||(d={})),function(e){!function(t){!function(r){function n(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:e.map((function(e){var r=e.name,n=e.kind,i=e.span;return{name:r,kind:n,kindModifiers:a(e.extension),sortText:t.SortText.LocationPriority,replacementSpan:i}}))}}function a(t){switch(t){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case".tsbuildinfo":return e.Debug.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";case".d.ets":return".d.ets";case".ets":return".ets";default:return e.Debug.assertNever(t)}}var o;function s(r,n,i,a,o,s){var d,p,f=c(n.parent);switch(f.kind){case 192:var g=c(f.parent);switch(g.kind){case 174:var _=g,h=e.findAncestor(f,(function(e){return e.parent===_}));return h?{kind:2,types:u(a.getTypeArgumentConstraint(h)),isNewIdentifier:!1}:void 0;case 190:var y=g,v=y.indexType,b=y.objectType;if(!e.rangeContainsPosition(v,i))return;return l(a.getTypeFromTypeNode(b));case 196:return{kind:0,paths:m(r,n,o,s,a)};case 183:if(!e.isTypeReferenceNode(g.parent))return;var k=(d=g,p=f,e.mapDefined(d.types,(function(t){return t!==p&&e.isLiteralTypeNode(t)&&e.isStringLiteral(t.literal)?t.literal.text:void 0})));return{kind:2,types:u(a.getTypeArgumentConstraint(g)).filter((function(t){return!e.contains(k,t.value)})),isNewIdentifier:!1};default:return}case 291:return e.isObjectLiteralExpression(f.parent)&&f.name===n?function(r,n){var i=r.getContextualType(n);if(!i)return;var a=r.getContextualType(n,4);return{kind:1,symbols:t.getPropertiesForObjectExpression(i,a,n,r),hasIndexSignature:e.hasIndexSignature(i)}}(a,f.parent):w();case 203:var x=f,E=x.expression,S=x.argumentExpression;return n===e.skipParentheses(S)?l(a.getTypeAtLocation(E)):void 0;case 204:case 205:if(!e.isRequireCall(f,!1)&&!e.isImportCall(f)){var D=e.SignatureHelp.getArgumentInfoForCompletions(n,i,r);return D?function(t,r){var n=!1,i=new e.Map,a=[];r.getResolvedSignature(t.invocation,a,t.argumentCount);var o=e.flatMap(a,(function(a){if(e.signatureHasRestParameter(a)||!(t.argumentCount>a.parameters.length)){var o=r.getParameterType(a,t.argumentIndex);return n=n||!!(4&o.flags),u(o,i)}}));return{kind:2,types:o,isNewIdentifier:n}}(D,a):w()}case 264:case 270:case 275:return{kind:0,paths:m(r,n,o,s,a)};default:return w()}function w(){return{kind:2,types:u(e.getContextualTypeFromParent(n,a)),isNewIdentifier:!1}}}function c(t){switch(t.kind){case 187:return e.walkUpParenthesizedTypes(t);case 208:return e.walkUpParenthesizedExpressions(t);default:return t}}function l(t){return t&&{kind:1,symbols:e.filter(t.getApparentProperties(),(function(t){return!(t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration))})),hasIndexSignature:e.hasIndexSignature(t)}}function u(t,r){return void 0===r&&(r=new e.Map),t?(t=e.skipConstraint(t)).isUnion()?e.flatMap(t.types,(function(e){return u(e,r)})):!t.isStringLiteral()||1024&t.flags||!e.addToSeen(r,t.value)?e.emptyArray:[t]:e.emptyArray}function d(e,t,r){return{name:e,kind:t,extension:r}}function p(e){return d(e,"directory",void 0)}function f(t,r,n){var i=function(t,r){var n=Math.max(t.lastIndexOf(e.directorySeparator),t.lastIndexOf(e.altDirectorySeparator)),i=-1!==n?n+1:0,a=t.length-i;return 0===a||e.isIdentifierText(t.substr(i,a),99)?void 0:e.createTextSpan(r+i,a)}(t,r),a=0===t.length?void 0:e.createTextSpan(r,t.length);return n.map((function(t){var r=t.name,n=t.kind,o=t.extension;return-1!==Math.max(r.indexOf(e.directorySeparator),r.indexOf(e.altDirectorySeparator))?{name:r,kind:n,extension:o,span:a}:{name:r,kind:n,extension:o,span:i}}))}function m(t,r,n,a,o){return f(r.text,r.getStart(t)+1,function(t,r,n,a,o){var s=e.normalizeSlashes(r.text),c=t.path,l=e.getDirectoryPath(c);return function(e){if(e&&e.length>=2&&46===e.charCodeAt(0)){var t=e.length>=3&&46===e.charCodeAt(1)?2:1,r=e.charCodeAt(t);return 47===r||92===r}return!1}(s)||!n.baseUrl&&(e.isRootedDiskPath(s)||e.isUrl(s))?function(t,r,n,a,o){var s=g(n);return n.rootDirs?function(t,r,n,a,o,s,c){var l=o.project||s.getCurrentDirectory(),u=!(s.useCaseSensitiveFileNames&&s.useCaseSensitiveFileNames()),d=function(t,r,n,a){t=t.map((function(t){return e.normalizePath(e.isRootedDiskPath(t)?t:e.combinePaths(r,t))}));var o=e.firstDefined(t,(function(t){return e.containsPath(t,n,r,a)?n.substr(t.length):void 0}));return e.deduplicate(i(i([],t.map((function(t){return e.combinePaths(t,o)}))),[n]),e.equateStringsCaseSensitive,e.compareStringsCaseSensitive)}(t,l,n,u);return e.flatMap(d,(function(e){return h(r,e,a,s,c)}))}(n.rootDirs,t,r,s,n,a,o):h(t,r,s,a,o)}(s,l,n,a,c):function(t,r,n,i,a){var o=n.baseUrl,s=n.paths,c=[],l=g(n);if(o){var u=n.project||i.getCurrentDirectory(),p=e.normalizePath(e.combinePaths(u,o));h(t,p,l,i,void 0,c),s&&y(c,t,p,l.extensions,s,i)}for(var f=v(t),m=0,_=function(t,r,n){var i=n.getAmbientModules().map((function(t){return e.stripQuotes(t.name)})).filter((function(r){return e.startsWith(r,t)}));if(void 0!==r){var a=e.ensureTrailingDirectorySeparator(r);return i.map((function(t){return e.removePrefix(t,a)}))}return i}(t,f,a);m<_.length;m++){var b=_[m];c.push(d(b,"external module name",void 0))}if(k(i,n,r,f,l,c),e.getEmitModuleResolutionKind(n)===e.ModuleResolutionKind.NodeJs){var x=!1;if(void 0===f)for(var S=function(e){c.some((function(t){return t.name===e}))||(x=!0,c.push(d(e,"external module name",void 0)))},D=0,w=function(t,r){if(!t.readFile||!t.fileExists)return e.emptyArray;for(var n=[],i=0,a=e.findPackageJsons(r,t);i<a.length;i++)for(var o=a[i],s=e.readJson(o,t),c=0,l=E;c<l.length;c++){var u=s[l[c]];if(u)for(var d in u)u.hasOwnProperty(d)&&!e.startsWith(d,"@types/")&&n.push(d)}return n}(i,r);D<w.length;D++){S(w[D])}x||e.forEachAncestorDirectory(r,(function(r){var n=e.combinePaths(r,e.getModuleByPMType(i.getCompilationSettings().packageManagerType));e.tryDirectoryExists(i,n)&&h(t,n,l,i,void 0,c)}))}return c}(s,l,n,a,o)}(t,r,n,a,o))}function g(e,t){return void 0===t&&(t=!1),{extensions:_(e),includeExtensions:t}}function _(t){var r=e.getSupportedExtensions(t);return t.resolveJsonModule&&e.getEmitModuleResolutionKind(t)===e.ModuleResolutionKind.NodeJs?r.concat(".json"):r}function h(t,r,n,i,a,o){var s=n.extensions,c=n.includeExtensions;void 0===o&&(o=[]),void 0===t&&(t=""),t=e.normalizeSlashes(t),e.hasTrailingDirectorySeparator(t)||(t=e.getDirectoryPath(t)),""===t&&(t="."+e.directorySeparator),t=e.ensureTrailingDirectorySeparator(t);var l=e.resolvePath(r,t),u=e.hasTrailingDirectorySeparator(l)?l:e.getDirectoryPath(l),f=!(i.useCaseSensitiveFileNames&&i.useCaseSensitiveFileNames());if(!e.tryDirectoryExists(i,u))return o;var m=e.tryReadDirectory(i,u,s,void 0,["./*"]);if(m){for(var g=new e.Map,_=0,h=m;_<h.length;_++){var v=h[_];if(v=e.normalizePath(v),!a||0!==e.comparePaths(v,a,r,f)){var b=c||e.fileExtensionIs(v,".json")?e.getBaseFileName(v):e.removeFileExtension(e.getBaseFileName(v));g.set(b,e.tryGetExtensionFromPath(v))}}g.forEach((function(e,t){o.push(d(t,"script",e))}))}var k=e.tryGetDirectories(i,u);if(k)for(var x=0,E=k;x<E.length;x++){var S=E[x],D=e.getBaseFileName(e.normalizePath(S));"@types"!==D&&o.push(p(D))}var w=e.findPackageJson(u,i);if(w){var T=e.readJson(w,i).typesVersions;if("object"==typeof T){var C=e.getPackageJsonTypesVersionsPaths(T),A=C&&C.paths,N=l.slice(e.ensureTrailingDirectorySeparator(u).length);A&&y(o,N,u,s,A,i)}}return o}function y(t,r,n,i,a,o){for(var s in a)if(e.hasProperty(a,s)){var c=a[s];if(c)for(var l=function(e,r,n){t.some((function(t){return t.name===e}))||t.push(d(e,r,n))},u=0,p=b(s,c,r,n,i,o);u<p.length;u++){var f=p[u];l(f.name,f.kind,f.extension)}}}function v(t){return S(t)?e.hasTrailingDirectorySeparator(t)?t:e.getDirectoryPath(t):void 0}function b(t,r,n,a,o,s){if(!e.endsWith(t,"*"))return e.stringContains(t,"*")?e.emptyArray:u(t);var c=t.slice(0,t.length-1),l=e.tryRemovePrefix(n,c);return void 0===l?u(c):e.flatMap(r,(function(t){return function(t,r,n,a,o){if(!o.readDirectory)return;var s=e.hasZeroOrOneAsteriskCharacter(n)?e.tryParsePattern(n):void 0;if(!s)return;var c=e.resolvePath(s.prefix),l=e.hasTrailingDirectorySeparator(s.prefix)?c:e.getDirectoryPath(c),u=e.hasTrailingDirectorySeparator(s.prefix)?"":e.getBaseFileName(c),f=S(t),m=f?e.hasTrailingDirectorySeparator(t)?t:e.getDirectoryPath(t):void 0,g=f?e.combinePaths(l,u+m):l,_=e.normalizePath(s.suffix),h=e.normalizePath(e.combinePaths(r,g)),y=f?h:e.ensureTrailingDirectorySeparator(h)+u,v=_?"**/*":"./*",b=e.mapDefined(e.tryReadDirectory(o,h,a,void 0,[v]),(function(t){var r=e.tryGetExtensionFromPath(t),n=x(t);return void 0===n?void 0:d(e.removeFileExtension(n),"script",r)})),k=e.mapDefined(e.tryGetDirectories(o,h).map((function(t){return e.combinePaths(h,t)})),(function(e){var t=x(e);return void 0===t?void 0:p(t)}));return i(i([],b),k);function x(t){var r,n,i,a=(r=e.normalizePath(t),n=y,i=_,e.startsWith(r,n)&&e.endsWith(r,i)?r.slice(n.length,r.length-i.length):void 0);return void 0===a?void 0:function(t){return t[0]===e.directorySeparator?t.slice(1):t}(a)}}(l,a,t,o,s)}));function u(t){return e.startsWith(t,n)?[p(t)]:e.emptyArray}}function k(t,r,n,i,a,o){void 0===o&&(o=[]);for(var s=new e.Map,c=0,l=e.tryAndIgnoreErrors((function(){return e.getEffectiveTypeRoots(r,t)}))||e.emptyArray;c<l.length;c++){m(l[c])}for(var u=0,p=e.findPackageJsons(n,t);u<p.length;u++){var f=p[u];m(e.combinePaths(e.getDirectoryPath(f),e.isOhpm(r.packageManagerType)?"oh_modules/@types":"node_modules/@types"))}return o;function m(n){if(e.tryDirectoryExists(t,n))for(var c=0,l=e.tryGetDirectories(t,n);c<l.length;c++){var u=l[c],p=e.unmangleScopedPackageName(u);if(!r.types||e.contains(r.types,p))if(void 0===i)s.has(p)||(o.push(d(p,"external module name",void 0)),s.set(p,!0));else{var f=e.combinePaths(n,u),m=e.tryRemoveDirectoryPrefix(i,p,e.hostGetCanonicalFileName(t));void 0!==m&&h(m,f,a,t,void 0,o)}}}}r.getStringLiteralCompletions=function(r,i,a,o,c,l,u,d){if(e.isInReferenceComment(r,i)){var p=function(t,r,n,i){var a=e.getTokenAtPosition(t,r),o=e.getLeadingCommentRanges(t.text,a.pos),s=o&&e.find(o,(function(e){return r>=e.pos&&r<=e.end}));if(!s)return;var c=t.text.slice(s.pos,r),l=x.exec(c);if(!l)return;var u=l[1],d=l[2],p=l[3],m=e.getDirectoryPath(t.path),_="path"===d?h(p,m,g(n,!0),i,t.path):"types"===d?k(i,n,m,v(p),g(n)):e.Debug.fail();return f(p,s.pos+u.length,_)}(r,i,c,l);return p&&n(p)}if(e.isInString(r,i,a)){if(!a||!e.isStringLiteralLike(a))return;return function(r,i,a,o,s,c){if(void 0===r)return;var l=e.createTextSpanFromStringLiteralLikeContent(i);switch(r.kind){case 0:return n(r.paths);case 1:var u=[];return t.getCompletionEntriesFromSymbols(r.symbols,u,i,a,a,o,99,s,4,c),{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:r.hasIndexSignature,optionalReplacementSpan:l,entries:u};case 2:u=r.types.map((function(r){return{name:r.value,kindModifiers:"",kind:"string",sortText:t.SortText.LocationPriority,replacementSpan:e.getReplacementSpanForContextToken(i)}}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:r.isNewIdentifier,optionalReplacementSpan:l,entries:u};default:return e.Debug.assertNever(r)}}(p=s(r,a,i,o,c,l),a,r,o,u,d)}},r.getStringLiteralCompletionDetails=function(r,n,i,o,c,l,u,d){if(o&&e.isStringLiteralLike(o)){var p=s(n,o,i,c,l,u);return p&&function(r,n,i,o,s,c){switch(i.kind){case 0:return(l=e.find(i.paths,(function(e){return e.name===r})))&&t.createCompletionDetails(r,a(l.extension),l.kind,[e.textPart(r)]);case 1:var l;return(l=e.find(i.symbols,(function(e){return e.name===r})))&&t.createCompletionDetailsForSymbol(l,s,o,n,c);case 2:return e.find(i.types,(function(e){return e.value===r}))?t.createCompletionDetails(r,"","type",[e.textPart(r)]):void 0;default:return e.Debug.assertNever(i)}}(r,o,p,n,c,d)}},function(e){e[e.Paths=0]="Paths",e[e.Properties=1]="Properties",e[e.Types=2]="Types"}(o||(o={}));var x=/^(\/\/\/\s*<reference\s+(path|types)\s*=\s*(?:'|"))([^\3"]*)$/,E=["dependencies","devDependencies","peerDependencies","optionalDependencies"];function S(t){return e.stringContains(t,e.directorySeparator)}}(t.StringCompletions||(t.StringCompletions={}))}(e.Completions||(e.Completions={}))}(d||(d={})),function(e){!function(t){var r,n,i,a,o,s;function c(e){return!!(e&&4&e.kind)}function l(e){return c(e)&&!!e.isFromPackageJson}function u(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:e}}function d(t){return 78===(null==t?void 0:t.kind)?e.createTextSpanFromNode(t):void 0}function p(t,r){return e.isSourceFileJS(t)&&!e.isCheckJsEnabledForFile(t,r)}function f(e){switch(e){case 0:case 3:case 2:return!0;default:return!1}}function m(t,r,n){return"object"==typeof n?e.pseudoBigIntToString(n)+"n":e.isString(n)?e.quote(t,r,n):JSON.stringify(n)}function g(e,t,n){return{name:m(e,t,n),kind:"string",kindModifiers:"",sortText:r.LocationPriority}}function _(t,r,n,i,a,o,s,u,d,p,f,m,g){var _,b=e.getReplacementSpanForContextToken(n),k=d&&function(e){return!!(16&e.kind)}(d),x=d&&function(e){return!!(2&e.kind)}(d)||u;if(d&&function(e){return!!(1&e.kind)}(d))_=u?"this"+(k?"?.":"")+"["+h(a,g,s)+"]":"this"+(k?"?.":".")+s;else if((x||k)&&f){_=x?u?"["+h(a,g,s)+"]":"["+s+"]":s,(k||f.questionDotToken)&&(_="?."+_);var E=e.findChildOfKind(f,24,a)||e.findChildOfKind(f,28,a);if(!E)return;var S=e.startsWith(s,f.name.text)?f.name.end:E.end;b=e.createTextSpanFromBounds(E.getStart(a),S)}if(m&&(void 0===_&&(_=s),_="{"+_+"}","boolean"!=typeof m&&(b=e.createTextSpanFromNode(m,a))),d&&function(e){return!!(8&e.kind)}(d)&&f){void 0===_&&(_=s);var D=e.findPrecedingToken(f.pos,a),w="";D&&e.positionIsASICandidate(D.end,D.parent,a)&&(w=";"),w+="(await "+f.expression.getText()+")",_=u?""+w+_:w+(k?"?.":".")+_,b=e.createTextSpanFromBounds(f.getStart(a),f.end)}if(void 0===_||g.includeCompletionsWithInsertText)return{name:s,kind:e.SymbolDisplay.getSymbolKind(o,t,i),kindModifiers:e.SymbolDisplay.getSymbolModifiers(o,t),sortText:r,source:v(d),hasAction:d&&c(d)||void 0,isRecommended:y(t,p,o)||void 0,insertText:_,replacementSpan:b,isPackageJsonImport:l(d)||void 0}}function h(t,r,n){return/^\d+$/.test(n)?n:e.quote(t,r,n)}function y(e,t,r){return e===t||!!(1048576&e.flags)&&r.getExportSymbolOfSymbol(e)===t}function v(t){return c(t)?e.stripQuotes(t.moduleSymbol.name):1===(null==t?void 0:t.kind)?n.ThisProperty:void 0}function b(t,n,i,a,o,s,c,l,u,d,p,f,m,g,h,y){for(var v=e.timestamp(),b=new e.Map,k=0,x=t;k<x.length;k++){var E=x[k],S=h?h[e.getSymbolId(E)]:void 0,D=T(E,c,S,u,!!f);if(D){var w=D.name,C=D.needsConvertPropertyAccess;if(!b.get(w)){var A=_(E,y&&y[e.getSymbolId(E)]||r.LocationPriority,i,a,o,s,w,C,S,g,p,m,d);if(A){var N=!(S||void 0===E.parent&&!e.some(E.declarations,(function(e){return e.getSourceFile()===a.getSourceFile()})));if(b.set(w,N),E.getJsDocTags().length>0&&(A.jsDoc=E.getJsDocTags()),E.declarations){var P=e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(s,E,o,a,a,7);A.displayParts=P.displayParts}n.push(A)}}}}return l("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(e.timestamp()-v)),{has:function(e){return b.has(e)},add:function(e){return b.set(e,!0)}}}function k(t,r,n,i,a,o,s){var c=t.getCompilerOptions(),l=w(t,r,n,p(n,c),i,{includeCompletionsForModuleExports:!0,includeCompletionsWithInsertText:!0},a,o);if(!l)return{type:"none"};if(0!==l.kind)return{type:"request",request:l};var u=l.symbols,d=l.literals,f=l.location,g=l.completionKind,_=l.symbolToOriginInfoMap,h=l.previousToken,y=l.isJsxInitializer,b=l.isTypeOnlyLocation,k=e.find(d,(function(e){return m(n,s,e)===a.name}));return void 0!==k?{type:"literal",literal:k}:e.firstDefined(u,(function(t){var r=_[e.getSymbolId(t)],n=T(t,c.target,r,g,l.isJsxIdentifierExpected);return n&&n.name===a.name&&v(r)===a.source?{type:"symbol",symbol:t,location:f,symbolToOriginInfoMap:_,previousToken:h,isJsxInitializer:y,isTypeOnlyLocation:b}:void 0}))||{type:"none"}}function x(t,r,n){return S(t,"",r,[e.displayPart(t,n)])}function E(t,r,n,i,a,o,s){var c=r.runWithCancellationToken(a,(function(r){return e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(r,t,n,i,i,7)})),l=c.displayParts,u=c.documentation,d=c.symbolKind,p=c.tags;return S(t.name,e.SymbolDisplay.getSymbolModifiers(r,t),d,l,u,p,o,s)}function S(e,t,r,n,i,a,o,s){return{name:e,kindModifiers:t,kind:r,displayParts:n,documentation:i,tags:a,codeActions:o,source:s}}function D(t,r,n){var i=n.getAccessibleSymbolChain(t,r,67108863,!1);return i?e.first(i):t.parent&&(function(e){return e.declarations.some((function(e){return 300===e.kind}))}(t.parent)?t:D(t.parent,r,n))}function w(t,n,i,a,o,s,c,l){var u,d=8===i.scriptKind,p=t.getTypeChecker(),f=t.getCompilerOptions(),m=e.timestamp(),g=e.getTokenAtPosition(i,o);n("getCompletionData: Get current token: "+(e.timestamp()-m)),m=e.timestamp();var _=e.isInComment(i,o,g);n("getCompletionData: Is inside comment: "+(e.timestamp()-m));var h=!1,y=!1;if(_){if(e.hasDocComment(i,o)){if(64===i.text.charCodeAt(o-1))return{kind:1};var v=e.getLineStartPositionForPosition(o,i);if(!/[^\*|\s(/)]/.test(i.text.substring(v,o)))return{kind:2}}var b=function(t,r){var n=e.findAncestor(t,e.isJSDoc);return n&&n.tags&&(e.rangeContainsPosition(n,r)?e.findLast(n.tags,(function(e){return e.pos<r})):void 0)}(g,o);if(b){if(b.tagName.pos<=o&&o<=b.tagName.end)return{kind:1};if(function(e){switch(e.kind){case 329:case 336:case 330:case 332:case 334:return!0;default:return!1}}(b)&&b.typeExpression&&304===b.typeExpression.kind&&((g=e.getTokenAtPosition(i,o))&&(e.isDeclarationName(g)||336===g.parent.kind&&g.parent.name===g)||(h=he(b.typeExpression))),!h&&e.isJSDocParameterTag(b)&&(e.nodeIsMissing(b.name)||b.name.pos<=o&&o<=b.name.end))return{kind:3,tag:b}}if(!h)return void n("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.")}m=e.timestamp();var k=e.findPrecedingToken(o,i,void 0);n("getCompletionData: Get previous token 1: "+(e.timestamp()-m));var x=k;if(x&&o<=x.end&&(e.isIdentifierOrPrivateIdentifier(x)||e.isKeyword(x.kind))){var E=e.timestamp();x=e.findPrecedingToken(x.getFullStart(),i,void 0),n("getCompletionData: Get previous token 2: "+(e.timestamp()-E))}var S,w=g,T=!1,C=!1,A=!1,N=!1,F=!1,B=!1,z=e.getTouchingPropertyName(i,o);if(x){if(function(t){var r=e.timestamp(),a=function(t){return(e.isRegularExpressionLiteral(t)||e.isStringTextContainingNode(t))&&(e.rangeContainsPositionExclusive(e.createTextRangeFromSpan(e.createTextSpanFromNode(t)),o)||o===t.end&&(!!t.isUnterminated||e.isRegularExpressionLiteral(t)))}(t)||function(t){var r=t.parent,n=r.kind;switch(t.kind){case 27:return 251===n||function(t){return 252===t.parent.kind&&!e.isPossiblyTypeArgumentPosition(t,i,p)}(t)||234===n||258===n||fe(n)||256===n||198===n||257===n||e.isClassLike(r)&&!!r.typeParameters&&r.typeParameters.end>=t.pos;case 24:case 22:return 198===n;case 58:return 199===n;case 20:return 290===n||fe(n);case 18:return 258===n;case 29:return 254===n||223===n||256===n||257===n||e.isFunctionLikeKind(n);case 124:return 164===n&&!e.isClassLike(r.parent);case 25:return 161===n||!!r.parent&&198===r.parent.kind;case 123:case 121:case 122:return 161===n&&!e.isConstructorDeclaration(r.parent);case 127:return 268===n||273===n||266===n;case 135:case 147:return!L(t);case 83:case 84:case 92:case 118:case 98:case 113:case 100:case 119:case 85:case 136:case 150:return!0;case 41:return e.isFunctionLike(t.parent)&&!e.isMethodDeclaration(t.parent)}if(I(O(t))&&L(t))return!1;if(pe(t)&&(!e.isIdentifier(t)||e.isParameterPropertyModifier(O(t))||he(t)))return!1;switch(O(t)){case 126:case 83:case 84:case 85:case 134:case 92:case 98:case 118:case 119:case 121:case 122:case 123:case 124:case 113:return!0;case 130:return e.isPropertyDeclaration(t.parent)}return e.isDeclarationName(t)&&!e.isShorthandPropertyAssignment(t.parent)&&!e.isJsxAttribute(t.parent)&&!(e.isClassLike(t.parent)&&(t!==k||o>k.end))}(t)||function(e){if(8===e.kind){var t=e.getFullText();return"."===t.charAt(t.length-1)}return!1}(t)||function(e){if(11===e.kind)return!0;if(31===e.kind&&e.parent){if(278===e.parent.kind)return 278!==z.parent.kind;if(279===e.parent.kind||277===e.parent.kind)return!!e.parent.parent&&276===e.parent.parent.kind}return!1}(t);return n("getCompletionsAtPosition: isCompletionListBlocker: "+(e.timestamp()-r)),a}(x))return void n("Returning an empty list because completion was requested in an invalid position.");var U=x.parent;if(24===x.kind||28===x.kind)switch(T=24===x.kind,C=28===x.kind,U.kind){case 202:if(w=(S=U).expression,(e.isCallExpression(w)||e.isFunctionLike(w)||e.isEtsComponentExpression(w))&&w.end===x.pos&&w.getChildCount(i)&&21!==e.last(w.getChildren(i)).kind&&!w.getLastToken(i))return;if(w.virtual&&20===(null===(u=e.findPrecedingToken(w.pos,i))||void 0===u?void 0:u.kind))return;break;case 158:w=U.left;break;case 259:w=U.name;break;case 196:case 228:w=U;break;default:return}else if(1===i.languageVariant){if(U&&202===U.kind&&(x=U,U=U.parent),g.parent===z)switch(g.kind){case 31:276!==g.parent.kind&&278!==g.parent.kind||(z=g);break;case 43:277===g.parent.kind&&(z=g)}switch(U.kind){case 279:43===x.kind&&(N=!0,z=x);break;case 218:if(!j(U))break;case 277:case 276:case 278:B=!0,29===x.kind&&(A=!0,z=x);break;case 286:19===k.kind&&31===g.kind&&(B=!0);break;case 283:if(U.initializer===k&&k.end<o){B=!0;break}switch(k.kind){case 62:F=!0;break;case 78:B=!0,U!==k.parent&&!U.initializer&&e.findChildOfKind(U,62,i)&&(F=k)}}}}var q=e.timestamp(),J=5,V=!1,H=!1,K=0,W=[],G=[],$=[],Y=l.getImportSuggestionsCache&&l.getImportSuggestionsCache(),X=le();if(T||C)!function(){J=2;var t=e.isLiteralImportTypeNode(w),r=h||t&&!w.isTypeOf||e.isPartOfTypeNode(w.parent)||e.isPossiblyTypeArgumentPosition(x,i,p),n=e.isInRightSideOfInternalImportEqualsDeclaration(w);if(e.isEntityName(w)||t||e.isPropertyAccessExpression(w)){var a=e.isModuleDeclaration(w.parent);a&&(V=!0);var o=p.getSymbolAtLocation(w);if(o&&1920&(o=e.skipAlias(o,p)).flags){var c=p.getExportsOfModule(o);e.Debug.assertEachIsDefined(c,"getExportsOfModule() should all be defined");for(var l=function(e){return p.isValidPropertyAccess(t?w:w.parent,e.name)},u=function(e){return ue(e)},d=a?function(e){return!!(1920&e.flags)&&!e.declarations.every((function(e){return e.parent===w.parent}))}:n?function(e){return u(e)||l(e)}:r?u:l,f=0,m=c;f<m.length;f++){var g=m[f];d(g)&&W.push(g)}if(!r&&o.declarations&&o.declarations.some((function(e){return 300!==e.kind&&259!==e.kind&&258!==e.kind}))){var _=!1;if((v=p.getTypeOfSymbolAtLocation(o,w).getNonOptionalType()).isNullableType())((b=T&&!C&&!1!==s.includeAutomaticOptionalChainCompletions)||C)&&(v=v.getNonNullableType(),b&&(_=!0));ae(v,!!(32768&w.flags),_)}return}}if(e.isMetaProperty(w)&&(103===w.keywordToken||100===w.keywordToken)&&x===w.getChildAt(1)){var y=103===w.keywordToken?"target":"meta";return void W.push(p.createSymbol(4,e.escapeLeadingUnderscores(y)))}if(!r){var v,b;_=!1;if((v=p.tryGetTypeAtLocationWithoutCheck(w).getNonOptionalType()).isNullableType())((b=T&&!C&&!1!==s.includeAutomaticOptionalChainCompletions)||C)&&(v=v.getNonNullableType(),b&&(_=!0));ae(v,!!(32768&w.flags),_)}}();else if(A){var Q=p.getJsxIntrinsicTagNamesAt(z);e.Debug.assertEachIsDefined(Q,"getJsxIntrinsicTagNames() should all be defined"),ce(),W=Q.concat(W),J=3,K=0}else if(N){var Z=x.parent.parent.openingElement.tagName,ee=p.getSymbolAtLocation(Z);ee&&(W=[ee]),J=3,K=0}else if(!ce())return;var te=t.getEtsLibSFromProgram();W=W.filter((function(t){var r;return!t.declarations||!t.declarations.length||(null!==(r=t.declarations)&&void 0!==r?r:[]).filter((function(t){if(!t.getSourceFile().fileName)return!0;var r=e.sys.resolvePath(t.getSourceFile().fileName);return!(!d&&-1!==te.indexOf(r))})).length})),n("getCompletionData: Semantic work: "+(e.timestamp()-q));var re=k&&function(t,r,n,i){var a=t.parent;switch(t.kind){case 78:return e.getContextualTypeFromParent(t,i);case 62:switch(a.kind){case 251:return i.getContextualType(a.initializer);case 218:return i.getTypeAtLocation(a.left);case 283:return i.getContextualTypeForJsxAttribute(a);default:return}case 103:return i.getContextualType(a);case 81:return e.getSwitchedType(e.cast(a,e.isCaseClause),i);case 18:return e.isJsxExpression(a)&&276!==a.parent.kind?i.getContextualTypeForJsxAttribute(a.parent):void 0;default:var o=e.SignatureHelp.getArgumentInfoForCompletions(t,r,n);return o?i.getContextualTypeForArgumentAtIndex(o.invocation,o.argumentIndex+(27===t.kind?1:0)):e.isEqualityOperatorKind(t.kind)&&e.isBinaryExpression(a)&&e.isEqualityOperatorKind(a.operatorToken.kind)?i.getTypeAtLocation(a.left):i.getContextualType(t)}}(k,o,i,p),ne=e.mapDefined(re&&(re.isUnion()?re.types:[re]),(function(e){return e.isLiteral()?e.value:void 0})),ie=k&&re&&function(t,r,n){return e.firstDefined(r&&(r.isUnion()?r.types:[r]),(function(r){var i=r&&r.symbol;return i&&424&i.flags&&!e.isAbstractConstructorSymbol(i)?D(i,t,n):void 0}))}(k,re,p);return{kind:0,symbols:W,completionKind:J,isInSnippetScope:y,propertyAccessToConvert:S,isNewIdentifierLocation:V,location:z,keywordFilters:K,literals:ne,symbolToOriginInfoMap:G,recommendedCompletion:ie,previousToken:k,isJsxInitializer:F,insideJsDocTagTypeExpression:h,symbolToSortTextMap:$,isTypeOnlyLocation:X,isJsxIdentifierExpected:B};function ae(t,r,n){V=!!t.getStringIndexType(),C&&e.some(t.getCallSignatures())&&(V=!0);var i=196===w.kind?w:w.parent;if(a)W.push.apply(W,e.filter(M(t,p),(function(e){return p.isValidPropertyAccessForCompletions(i,t,e)})));else{for(var o=t.getApparentProperties(),c=0,l=o;c<l.length;c++){var u=l[c];p.isValidPropertyAccessForCompletions(i,t,u)&&oe(u,!1,n)}if(o.length){var d=e.getEtsComponentExpressionInnerCallExpressionNode(w)||e.getRootEtsComponentInnerCallExpressionNode(w);d&&(function(t,r){var n=e.getSourceFileOfNode(t).locals;if(!n)return;var i=78===t.expression.kind?t.expression.escapedText:void 0,a=new e.Map;n.forEach((function(t){var r;e.getEtsExtendDecoratorComponentNames(null===(r=t.valueDeclaration)||void 0===r?void 0:r.decorators,f).forEach((function(e){a.has(e)?a.get(e).push(t):a.set(e,[t])}))})),i&&a.has(i)&&a.get(i).forEach((function(e){oe(e,!1,r)}))}(d,n),function(t,r){var n,i,a=e.getSourceFileOfNode(t).locals;if(!a)return;var o=e.isIdentifier(t.expression)?t.expression.escapedText:void 0,s=new e.Map;a.forEach((function(t){var r;e.hasEtsStylesDecoratorNames(null===(r=t.valueDeclaration)||void 0===r?void 0:r.decorators,f)&&(s.has(t.escapedName)?s.get(t.escapedName).push(t):s.set(t.escapedName,[t]))})),null===(i=null===(n=e.getContainingStruct(t))||void 0===n?void 0:n.symbol.members)||void 0===i||i.forEach((function(t){var r;e.hasEtsStylesDecoratorNames(null===(r=t.valueDeclaration)||void 0===r?void 0:r.decorators,f)&&(s.has(t.escapedName)?s.get(t.escapedName).push(t):s.set(t.escapedName,[t]))})),o&&s.size>0&&s.forEach((function(e){e.forEach((function(e){oe(e,!1,r)}))}))}(d,n))}}if(r&&s.includeCompletionsWithInsertText){var m=p.getPromisedTypeOfPromise(t);if(m)for(var g=0,_=m.getApparentProperties();g<_.length;g++){u=_[g];p.isValidPropertyAccessForCompletions(i,m,u)&&oe(u,!0,n)}}}function oe(t,n,i){var a=e.firstDefined(t.declarations,(function(t){return e.tryCast(e.getNameOfDeclaration(t),e.isComputedPropertyName)}));if(a){var o=se(a.expression),c=o&&p.getSymbolAtLocation(o),l=c&&D(c,x,p);if(l&&!G[e.getSymbolId(l)]){W.push(l);var u=l.parent;G[e.getSymbolId(l)]=u&&e.isExternalModuleSymbol(u)?{kind:m(6),moduleSymbol:u,isDefaultExport:!1}:{kind:m(2)}}else s.includeCompletionsWithInsertText&&(f(t),d(t),W.push(t))}else f(t),d(t),W.push(t);function d(t){(function(t){return!!(t.valueDeclaration&&32&e.getEffectiveModifierFlags(t.valueDeclaration)&&e.isClassLike(t.valueDeclaration.parent))})(t)&&($[e.getSymbolId(t)]=r.LocalDeclarationPriority)}function f(t){s.includeCompletionsWithInsertText&&(n&&!G[e.getSymbolId(t)]?G[e.getSymbolId(t)]={kind:m(8)}:i&&(G[e.getSymbolId(t)]={kind:16}))}function m(e){return i?16|e:e}}function se(t){return e.isIdentifier(t)?t:e.isPropertyAccessExpression(t)?se(t.expression):void 0}function ce(){var a=function(){var t,r,n=function(t){if(t){var r=t.parent;switch(t.kind){case 18:case 27:if(e.isObjectLiteralExpression(r)||e.isObjectBindingPattern(r))return r;break;case 41:return e.isMethodDeclaration(r)?e.tryCast(r.parent,e.isObjectLiteralExpression):void 0;case 78:return"async"===t.text&&e.isShorthandPropertyAssignment(t.parent)?t.parent.parent:void 0}}return}(x);if(!n)return 0;if(J=0,201===n.kind){var i=function(t,r){var n=r.getContextualType(t);if(n)return n;if(e.isBinaryExpression(t.parent)&&62===t.parent.operatorToken.kind)return r.getTypeAtLocation(t.parent);return}(n,p);if(void 0===i)return 16777216&n.flags?2:(H=!0,0);var a=p.getContextualType(n,4),o=(a||i).getStringIndexType(),s=(a||i).getNumberIndexType();if(V=!!o||!!s,t=R(i,a,n,p),r=n.properties,0===t.length&&!s)return H=!0,0}else{e.Debug.assert(197===n.kind),V=!1;var c=e.getRootDeclaration(n.parent);if(!e.isVariableLike(c))return e.Debug.fail("Root declaration is not variable-like.");var l=e.hasInitializer(c)||e.hasType(c)||241===c.parent.parent.kind;if(l||161!==c.kind||(e.isExpression(c.parent)?l=!!p.getContextualType(c.parent):166!==c.parent.kind&&169!==c.parent.kind||(l=e.isExpression(c.parent.parent)&&!!p.getContextualType(c.parent.parent))),l){var u=p.getTypeAtLocation(n);if(!u)return 2;var d=e.getContainingClass(n);t=p.getPropertiesOfType(u).filter((function(t){return!(24&e.getDeclarationModifierFlagsFromSymbol(t))||d&&e.contains(u.symbol.declarations,d)})),r=n.elements}}t&&t.length>0&&(W=function(t,r){if(0===r.length)return t;for(var n=new e.Set,i=new e.Set,a=0,o=r;a<o.length;a++){var s=o[a];if((291===s.kind||292===s.kind||199===s.kind||166===s.kind||168===s.kind||169===s.kind||293===s.kind)&&!he(s)){var c=void 0;if(e.isSpreadAssignment(s))me(s,n);else if(e.isBindingElement(s)&&s.propertyName)78===s.propertyName.kind&&(c=s.propertyName.escapedText);else{var l=e.getNameOfDeclaration(s);c=l&&e.isPropertyNameLiteral(l)?e.getEscapedTextOfIdentifierOrLiteral(l):void 0}void 0!==c&&i.add(c)}}var u=t.filter((function(e){return!i.has(e.escapedName)}));return _e(n,u),u}(t,e.Debug.checkDefined(r)));return ge(),1}()||function(){var t=!x||18!==x.kind&&27!==x.kind?void 0:e.tryCast(x.parent,e.isNamedImportsOrExports);if(!t)return 0;var r=(267===t.kind?t.parent.parent:t.parent).moduleSpecifier;if(!r)return 267===t.kind?2:0;var n=p.getSymbolAtLocation(r);if(!n)return 2;J=3,V=!1;var i=p.getExportsAndPropertiesOfModule(n),a=new e.Set(t.elements.filter((function(e){return!he(e)})).map((function(e){return(e.propertyName||e.name).escapedText})));return W=i.filter((function(e){return"default"!==e.escapedName&&!a.has(e.escapedName)})),1}()||function(){var t,n=!x||18!==x.kind&&27!==x.kind?void 0:e.tryCast(x.parent,e.isNamedExports);if(!n)return 0;var i=e.findAncestor(n,e.or(e.isSourceFile,e.isModuleDeclaration));return J=5,V=!1,null===(t=i.locals)||void 0===t||t.forEach((function(t,n){var a,o;W.push(t),(null===(o=null===(a=i.symbol)||void 0===a?void 0:a.exports)||void 0===o?void 0:o.has(n))&&($[e.getSymbolId(t)]=r.OptionalMember)})),1}()||(function(t){if(t){var r=t.parent;switch(t.kind){case 20:case 27:return e.isConstructorDeclaration(t.parent)?t.parent:void 0;default:if(pe(t))return r.parent}}}(x)?(J=5,V=!0,K=4,1):0)||function(){var t=function(t,r,n,i){switch(n.kind){case 337:return e.tryCast(n.parent,e.isObjectTypeDeclaration);case 1:var a=e.tryCast(e.lastOrUndefined(e.cast(n.parent,e.isSourceFile).statements),e.isObjectTypeDeclaration);if(a&&!e.findChildOfKind(a,19,t))return a;break;case 78:if(e.isPropertyDeclaration(n.parent)&&n.parent.initializer===n)return;if(L(n))return e.findAncestor(n,e.isObjectTypeDeclaration)}if(!r)return;switch(r.kind){case 62:return;case 26:case 19:return L(n)&&n.parent.name===n?n.parent.parent:e.tryCast(n,e.isObjectTypeDeclaration);case 18:case 27:return e.tryCast(r.parent,e.isObjectTypeDeclaration);default:if(!L(r))return e.getLineAndCharacterOfPosition(t,r.getEnd()).line!==e.getLineAndCharacterOfPosition(t,i).line&&e.isObjectTypeDeclaration(n)?n:void 0;var o=e.isClassLike(r.parent.parent)?I:P;return o(r.kind)||41===r.kind||e.isIdentifier(r)&&o(e.stringToToken(r.text))?r.parent.parent:void 0}}(i,x,z,o);if(!t)return 0;if(J=3,V=!0,K=41===x.kind?0:e.isClassLike(t)?2:3,!e.isClassLike(t))return 1;var r=26===x.kind?x.parent.parent:x.parent,n=e.isClassElement(r)?e.getEffectiveModifierFlags(r):0;if(78===x.kind&&!he(x))switch(x.getText()){case"private":n|=8;break;case"static":n|=32}if(!(8&n)){var a=e.flatMap(e.getAllSuperTypeNodes(t),(function(e){var r=p.getTypeAtLocation(e);return 32&n?(null==r?void 0:r.symbol)&&p.getPropertiesOfType(p.getTypeOfSymbolAtLocation(r.symbol,t)):r&&p.getPropertiesOfType(r)}));W=function(t,r,n){for(var i=new e.Set,a=0,o=r;a<o.length;a++){var s=o[a];if((164===s.kind||166===s.kind||168===s.kind||169===s.kind)&&(!he(s)&&!e.hasEffectiveModifier(s,8)&&e.hasEffectiveModifier(s,32)===!!(32&n))){var c=e.getPropertyNameForPropertyNameNode(s.name);c&&i.add(c)}}return t.filter((function(t){return!(i.has(t.escapedName)||!t.declarations||8&e.getDeclarationModifierFlagsFromSymbol(t)||t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration))}))}(a,t.members,n)}return 1}()||function(){var t=function(t){if(t){var r=t.parent;switch(t.kind){case 31:case 30:case 43:case 78:case 202:case 284:case 283:case 285:if(r&&(277===r.kind||278===r.kind)){if(31===t.kind){var n=e.findPrecedingToken(t.pos,i,void 0);if(!r.typeArguments||n&&43===n.kind)break}return r}if(283===r.kind)return r.parent.parent;break;case 10:if(r&&(283===r.kind||285===r.kind))return r.parent.parent;break;case 19:if(r&&286===r.kind&&r.parent&&283===r.parent.kind)return r.parent.parent.parent;if(r&&285===r.kind)return r.parent.parent}}return}(x),r=t&&p.getContextualType(t.attributes);if(!r)return 0;var n=t&&p.getContextualType(t.attributes,4);return W=function(t,r){for(var n=new e.Set,i=new e.Set,a=0,o=r;a<o.length;a++){var s=o[a];he(s)||(283===s.kind?n.add(s.name.escapedText):e.isJsxSpreadAttribute(s)&&me(s,i))}var c=t.filter((function(e){return!n.has(e.escapedName)}));return _e(i,c),c}(R(r,n,t.attributes,p),t.attributes.properties),ge(),J=3,V=!1,1}()||(function(){K=function(t){if(t){var r,n=e.findAncestor(t.parent,(function(t){return e.isClassLike(t)?"quit":!(!e.isFunctionLikeDeclaration(t)||r!==t.body)||(r=t,!1)}));return n&&n}}(x)?5:1,J=1,V=function(){if(x){var e=x.parent.kind;switch(O(x)){case 27:return 204===e||167===e||205===e||200===e||218===e||175===e||201===e;case 20:return 204===e||167===e||205===e||208===e||187===e;case 22:return 200===e||172===e||159===e;case 140:case 141:return!0;case 24:return 259===e;case 18:return 254===e||255===e||201===e;case 62:return 251===e||218===e;case 15:return 220===e;case 16:return 230===e;case 123:case 121:case 122:return 164===e}}return!1}(),k!==x&&e.Debug.assert(!!k,"Expected 'contextToken' to be defined when different from 'previousToken'.");var a=k!==x?k.getStart():o,u=function(t,r,n){var i=t;for(;i&&!e.positionBelongsToNode(i,r,n);)i=i.parent;return i}(x,a,i)||i;y=function(t){switch(t.kind){case 300:case 220:case 286:case 232:return!0;default:return e.isStatement(t)}}(u);var d=2887656|(X?0:111551);W=p.getSymbolsInScope(u,d),e.Debug.assertEachIsDefined(W,"getSymbolsInScope() should all be defined");for(var m=0,g=W;m<g.length;m++){var _=g[m];p.isArgumentsSymbol(_)||e.some(_.declarations,(function(e){return e.getSourceFile()===i}))||($[e.getSymbolId(_)]=r.GlobalsOrKeywords)}if(s.includeCompletionsWithInsertText&&300!==u.kind){var h=p.tryGetThisTypeAt(u,!1);if(h&&!function(e,t,r){var n=r.resolveName("self",void 0,111551,!1);if(n&&r.getTypeOfSymbolAtLocation(n,t)===e)return!0;var i=r.resolveName("global",void 0,111551,!1);if(i&&r.getTypeOfSymbolAtLocation(i,t)===e)return!0;var a=r.resolveName("globalThis",void 0,111551,!1);if(a&&r.getTypeOfSymbolAtLocation(a,t)===e)return!0;return!1}(h,i,p))for(var v=0,b=M(h,p);v<b.length;v++){_=b[v];G[e.getSymbolId(_)]={kind:1},W.push(_),$[e.getSymbolId(_)]=r.SuggestedClassMembers}}if(!H&&!!s.includeCompletionsForModuleExports&&(!(!i.externalModuleIndicator&&!i.commonJsModuleIndicator)||!!e.compilerOptionsIndicateEs6Modules(t.getCompilerOptions())||e.programContainsModules(t))){var E=k&&e.isIdentifier(k)?k.text.toLowerCase():"",S=function(r,a){var o=Y&&Y.get(i.fileName,p,c&&a.getProjectVersion?a.getProjectVersion():void 0);if(o)return n("getSymbolsFromOtherSourceFileExports: Using cached list"),o;var s=e.timestamp();n("getSymbolsFromOtherSourceFileExports: Recomputing list"+(c?" for details entry":""));var l=new e.Map,u=new e.Map,d=new e.Map,f=new e.Map,m=[],g=new e.Map;return e.codefix.forEachExternalModuleToImportFrom(t,a,i,!c,!0,(function(t,r,n,i){if(!c||!c.source||e.stripQuotes(t.name)===c.source){var a=n.getTypeChecker(),o=a.resolveExternalModuleSymbol(t);if(e.addToSeen(l,e.getSymbolId(o))){o!==t&&e.every(o.declarations,e.isNonGlobalDeclaration)&&_(o,t,i,!0);for(var s=0,p=a.getExportsAndPropertiesOfModule(t);s<p.length;s++){var m=p[s],h=e.getSymbolId(m).toString();if(e.addToSeen(u,h)&&!e.some(m.declarations,(function(t){return e.isExportSpecifier(t)&&!!t.propertyName&&e.isIdentifierANonContextualKeyword(t.name)}))){var y=a.getMergedSymbol(m.parent)!==o;if(y||e.some(m.declarations,(function(t){return e.isExportSpecifier(t)&&!t.propertyName&&!!t.parent.parent.moduleSpecifier}))){var v=y?m:de(m);if(!v)continue;var b=e.getSymbolId(v).toString();g.has(b)||d.has(b)?e.addToSeen(d,h):(f.set(b,{alias:m,moduleSymbol:t,isFromPackageJson:i}),d.set(h,!0))}else f.delete(h),_(m,t,i,!1)}}}}})),f.forEach((function(e){return _(e.alias,e.moduleSymbol,e.isFromPackageJson,!1)})),n("getSymbolsFromOtherSourceFileExports: "+(e.timestamp()-s)),m;function _(t,n,i,a){var o="default"===t.escapedName;if(o&&(t=e.getLocalSymbolForExportDefault(t)||t),!p.isUndefinedSymbol(t)){e.addToSeen(g,e.getSymbolId(t));var s={kind:4,moduleSymbol:n,isDefaultExport:o,isFromPackageJson:i};m.push({symbol:t,symbolName:e.getNameForExportedSymbol(t,r),origin:s,skipFilter:a})}}}(t.getCompilerOptions().target,l);!c&&Y&&Y.set(i.fileName,S,l.getProjectVersion&&l.getProjectVersion()),S.forEach((function(t){var n=t.symbol,i=t.symbolName,a=t.skipFilter,o=t.origin;if(c){if(c.source&&e.stripQuotes(o.moduleSymbol.name)!==c.source)return}else if(!a&&!function(e,t){if(0===t.length)return!0;for(var r=0,n=0;n<e.length;n++)if(e.charCodeAt(n)===t.charCodeAt(r)&&++r===t.length)return!0;return!1}(i.toLowerCase(),E))return;var s=e.getSymbolId(n);W.push(n),G[s]=o,$[s]=r.AutoImportSuggestions}))}!function(t){var n=le();n&&(K=x&&e.isAssertionExpression(x.parent)?6:7);var a=function(t){var r=e.findAncestor(t,(function(t){return e.isFunctionBlock(t)||function(t){return t.parent&&e.isArrowFunction(t.parent)&&t.parent.body===t}(t)||e.isBindingPattern(t)?"quit":e.isVariableDeclaration(t)}));return r}(z);e.filterMutate(t,(function(t){if(!e.isSourceFile(z)){if(e.isExportAssignment(z.parent))return!0;if(a&&t.valueDeclaration===a)return!1;var o=e.skipAlias(t,p);if(i.externalModuleIndicator&&!f.allowUmdGlobalAccess&&$[e.getSymbolId(t)]===r.GlobalsOrKeywords&&$[e.getSymbolId(o)]===r.AutoImportSuggestions)return!1;if(t=o,e.isInRightSideOfInternalImportEqualsDeclaration(z))return!!(1920&t.flags);if(n)return ue(t)}return!!(111551&e.getCombinedLocalAndExportSymbolFlags(t))}))}(W)}(),1);return 1===a}function le(){return h||!function(t){return t&&112===t.kind&&(177===t.parent.kind||e.isTypeOfExpression(t.parent))}(x)&&(e.isPossiblyTypeArgumentPosition(x,i,p)||e.isPartOfTypeNode(z)||function(t){if(t){var r=t.parent.kind;switch(t.kind){case 58:return 164===r||163===r||161===r||251===r||e.isFunctionLikeKind(r);case 62:return 257===r;case 127:return 226===r;case 29:return 174===r||207===r;case 94:return 160===r}}return!1}(x))}function ue(t,r){void 0===r&&(r=new e.Map);var n=e.skipAlias(t.exportSymbol||t,p);return!!(788968&n.flags)||!!(1536&n.flags)&&e.addToSeen(r,e.getSymbolId(n))&&p.getExportsOfModule(n).some((function(e){return ue(e,r)}))}function de(t){return function(e,t,r){var n=t;for(;2097152&n.flags&&(n=e.getImmediateAliasedSymbol(n));)if(r(n))return n}(p,t,(function(t){return e.some(t.declarations,(function(t){return e.isExportSpecifier(t)||!!t.localSymbol}))}))}function pe(t){return!!t.parent&&e.isParameter(t.parent)&&e.isConstructorDeclaration(t.parent.parent)&&(e.isParameterPropertyModifier(t.kind)||e.isDeclarationName(t))}function fe(t){return e.isFunctionLikeKind(t)&&167!==t}function me(e,t){var r=e.expression,n=p.getSymbolAtLocation(r),i=n&&p.getTypeOfSymbolAtLocation(n,r),a=i&&i.properties;a&&a.forEach((function(e){t.add(e.name)}))}function ge(){W.forEach((function(t){16777216&t.flags&&($[e.getSymbolId(t)]=$[e.getSymbolId(t)]||r.OptionalMember)}))}function _e(t,n){if(0!==t.size)for(var i=0,a=n;i<a.length;i++){var o=a[i];t.has(o.name)&&($[e.getSymbolId(o)]=r.MemberDeclaredBySpreadAssignment)}}function he(e){return e.getStart(i)<=o&&o<=e.getEnd()}}function T(t,r,n,i,a){var o=c(n)?e.getNameForExportedSymbol(t,r):t.name;if(!(void 0===o||1536&t.flags&&e.isSingleOrDoubleQuote(o.charCodeAt(0))||e.isKnownSymbol(t))){var s={name:o,needsConvertPropertyAccess:!1};if(e.isIdentifierText(o,r,a?1:0)||t.valueDeclaration&&e.isPrivateIdentifierPropertyDeclaration(t.valueDeclaration))return s;switch(i){case 3:return;case 0:return{name:JSON.stringify(o),needsConvertPropertyAccess:!1};case 2:case 1:return 32===o.charCodeAt(0)?void 0:{name:o,needsConvertPropertyAccess:!0};case 5:case 4:return s;default:e.Debug.assertNever(i)}}}!function(e){e.LocalDeclarationPriority="0",e.LocationPriority="1",e.OptionalMember="2",e.MemberDeclaredBySpreadAssignment="3",e.SuggestedClassMembers="4",e.GlobalsOrKeywords="5",e.AutoImportSuggestions="6",e.JavascriptIdentifiers="7"}(r=t.SortText||(t.SortText={})),function(e){e.ThisProperty="ThisProperty/"}(n=t.CompletionSource||(t.CompletionSource={})),function(e){e[e.ThisType=1]="ThisType",e[e.SymbolMember=2]="SymbolMember",e[e.Export=4]="Export",e[e.Promise=8]="Promise",e[e.Nullable=16]="Nullable",e[e.SymbolMemberNoExport=2]="SymbolMemberNoExport",e[e.SymbolMemberExport=6]="SymbolMemberExport"}(i||(i={})),function(e){e[e.None=0]="None",e[e.All=1]="All",e[e.ClassElementKeywords=2]="ClassElementKeywords",e[e.InterfaceElementKeywords=3]="InterfaceElementKeywords",e[e.ConstructorParameterKeywords=4]="ConstructorParameterKeywords",e[e.FunctionLikeBodyKeywords=5]="FunctionLikeBodyKeywords",e[e.TypeAssertionKeywords=6]="TypeAssertionKeywords",e[e.TypeKeywords=7]="TypeKeywords",e[e.Last=7]="Last"}(a||(a={})),function(e){e[e.Continue=0]="Continue",e[e.Success=1]="Success",e[e.Fail=2]="Fail"}(o||(o={})),t.createImportSuggestionsForFileCache=function(){var t,r,n;return{isEmpty:function(){return!t},clear:function(){t=void 0,n=void 0,r=void 0},set:function(e,i,a){t=i,n=e,a&&(r=a)},get:function(i,a,o){if(i===n)return o?r===o?t:void 0:(e.forEach(t,(function(e){var t,r,n;(null===(t=e.symbol.declarations)||void 0===t?void 0:t.length)&&(e.symbol=a.getMergedSymbol(e.origin.isDefaultExport&&null!==(r=e.symbol.declarations[0].localSymbol)&&void 0!==r?r:e.symbol.declarations[0].symbol)),(null===(n=e.origin.moduleSymbol.declarations)||void 0===n?void 0:n.length)&&(e.origin.moduleSymbol=a.getMergedSymbol(e.origin.moduleSymbol.declarations[0].symbol))})),t)}}},t.getCompletionsAtPosition=function(n,i,a,o,s,c,l){var m=i.getTypeChecker(),_=i.getCompilerOptions(),h=e.findPrecedingToken(s,o);if(!l||e.isInString(o,s,h)||function(t,r,n,i){switch(r){case".":case"@":return!0;case'"':case"'":case"`":return!!n&&e.isStringLiteralOrTemplate(n)&&i===n.getStart(t)+1;case"#":return!!n&&e.isPrivateIdentifier(n)&&!!e.getContainingClass(n);case"<":return!!n&&29===n.kind&&(!e.isBinaryExpression(n.parent)||j(n.parent));case"/":return!!n&&(e.isStringLiteralLike(n)?!!e.tryGetImportFromModuleSpecifier(n):43===n.kind&&e.isJsxClosingElement(n.parent));default:return e.Debug.assertNever(r)}}(o,l,h,s)){var y=t.StringCompletions.getStringLiteralCompletions(o,s,h,m,_,n,a,c);if(y)return y;if(h&&e.isBreakOrContinueStatement(h.parent)&&(80===h.kind||86===h.kind||78===h.kind))return function(t){var n=function(t){var n=[],i=new e.Map,a=t;for(;a&&!e.isFunctionLike(a);){if(e.isLabeledStatement(a)){var o=a.label.text;i.has(o)||(i.set(o,!0),n.push({name:o,kindModifiers:"",kind:"label",sortText:r.LocationPriority}))}a=a.parent}return n}(t);if(n.length)return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:n}}(h.parent);var v=w(i,a,o,p(o,_),s,c,void 0,n);if(v)switch(v.kind){case 0:return function(t,n,i,a,o,s){var c=o.symbols,l=o.completionKind,u=o.isInSnippetScope,m=o.isNewIdentifierLocation,_=o.location,h=o.propertyAccessToConvert,y=o.keywordFilters,v=o.literals,k=o.symbolToOriginInfoMap,x=o.recommendedCompletion,E=o.isJsxInitializer,S=o.insideJsDocTagTypeExpression,D=o.symbolToSortTextMap;if(_&&_.parent&&e.isJsxClosingElement(_.parent)){var w=_.parent.parent.openingElement.tagName,T=!!e.findChildOfKind(_.parent,31,t),A={name:w.getFullText(t)+(T?"":">"),kind:"class",kindModifiers:void 0,sortText:r.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:d(_),entries:[A]}}var P=[];if(p(t,i)){var I=b(c,P,void 0,_,t,n,i.target,a,l,s,h,o.isJsxIdentifierExpected,E,x,k,D);!function(t,n,i,a,o){e.getNameTable(t).forEach((function(t,s){if(t!==n){var c=e.unescapeLeadingUnderscores(s);!i.has(c)&&e.isIdentifierText(c,a)&&(i.add(c),o.push({name:c,kind:"warning",kindModifiers:"",sortText:r.JavascriptIdentifiers,isFromUncheckedFile:!0}))}}))}(t,_.pos,I,i.target,P)}else{if(!(m||c&&0!==c.length||0!==y))return;b(c,P,void 0,_,t,n,i.target,a,l,s,h,o.isJsxIdentifierExpected,E,x,k,D)}if(0!==y)for(var F=new e.Set(P.map((function(e){return e.name}))),O=0,R=function(t,r){if(!r)return N(t);var n=t+7+1;return C[n]||(C[n]=N(t).filter((function(t){return!function(e){switch(e){case 126:case 129:case 156:case 132:case 134:case 92:case 155:case 117:case 136:case 118:case 138:case 139:case 140:case 141:case 142:case 145:case 146:case 121:case 122:case 123:case 143:case 148:case 149:case 150:case 152:case 153:return!0;default:return!1}}(e.stringToToken(t.name))})))}(y,!S&&e.isSourceFileJS(t));O<R.length;O++){var M=R[O];F.has(M.name)||P.push(M)}for(var L=0,j=v;L<j.length;L++){var B=j[L];P.push(g(t,s,B))}return{isGlobalCompletion:u,isMemberCompletion:f(l),isNewIdentifierLocation:m,optionalReplacementSpan:d(_),entries:P}}(o,m,_,a,v,c);case 1:return u(e.JsDoc.getJSDocTagNameCompletions());case 2:return u(e.JsDoc.getJSDocTagCompletions());case 3:return u(e.JsDoc.getJSDocParameterNameCompletions(v.tag));default:return e.Debug.assertNever(v)}}},t.getCompletionEntriesFromSymbols=b,t.getCompletionEntryDetails=function(r,n,i,a,o,s,l,u,d){var p=r.getTypeChecker(),f=r.getCompilerOptions(),g=o.name,_=e.findPrecedingToken(a,i);if(e.isInString(i,a,_))return t.StringCompletions.getStringLiteralCompletionDetails(g,i,a,_,p,f,s,d);var h=k(r,n,i,a,o,s,u);switch(h.type){case"request":var y=h.request;switch(y.kind){case 1:return e.JsDoc.getJSDocTagNameCompletionDetails(g);case 2:return e.JsDoc.getJSDocTagCompletionDetails(g);case 3:return e.JsDoc.getJSDocParameterNameCompletionDetails(g);default:return e.Debug.assertNever(y)}case"symbol":var v=h.symbol,b=h.location,S=function(t,r,n,i,a,o,s,l,u,d,p){var f=t[e.getSymbolId(r)];if(!f||!c(f))return{codeActions:void 0,sourceDisplay:void 0};var m=f.moduleSymbol,g=i.getMergedSymbol(e.skipAlias(r.exportSymbol||r,i)),_=e.codefix.getImportCompletionAction(g,m,s,e.getNameForExportedSymbol(r,o.target),a,n,d,u&&e.isIdentifier(u)?u.getStart(s):l,p),h=_.moduleSpecifier,y=_.codeAction;return{sourceDisplay:[e.textPart(h)],codeActions:[y]}}(h.symbolToOriginInfoMap,v,r,p,s,f,i,a,h.previousToken,l,u);return E(v,p,i,b,d,S.codeActions,S.sourceDisplay);case"literal":var D=h.literal;return x(m(i,u,D),"string","string"==typeof D?e.SymbolDisplayPartKind.stringLiteral:e.SymbolDisplayPartKind.numericLiteral);case"none":return A().some((function(e){return e.name===g}))?x(g,"keyword",e.SymbolDisplayPartKind.keyword):void 0;default:e.Debug.assertNever(h)}},t.createCompletionDetailsForSymbol=E,t.createCompletionDetails=S,t.getCompletionEntrySymbol=function(e,t,r,n,i,a,o){var s=k(e,t,r,n,i,a,o);return"symbol"===s.type?s.symbol:void 0},function(e){e[e.Data=0]="Data",e[e.JsDocTagName=1]="JsDocTagName",e[e.JsDocTag=2]="JsDocTag",e[e.JsDocParameterName=3]="JsDocParameterName"}(s||(s={})),function(e){e[e.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",e[e.Global=1]="Global",e[e.PropertyAccess=2]="PropertyAccess",e[e.MemberLike=3]="MemberLike",e[e.String=4]="String",e[e.None=5]="None"}(t.CompletionKind||(t.CompletionKind={}));var C=[],A=e.memoize((function(){for(var t=[],n=80;n<=157;n++)t.push({name:e.tokenToString(n),kind:"keyword",kindModifiers:"",sortText:r.GlobalsOrKeywords});return t}));function N(t){return C[t]||(C[t]=A().filter((function(r){var n=e.stringToToken(r.name);switch(t){case 0:return!1;case 1:return F(n)||134===n||140===n||150===n||141===n||e.isTypeKeyword(n)&&151!==n;case 5:return F(n);case 2:return I(n);case 3:return P(n);case 4:return e.isParameterPropertyModifier(n);case 6:return e.isTypeKeyword(n)||85===n;case 7:return e.isTypeKeyword(n);default:return e.Debug.assertNever(t)}})))}function P(e){return 143===e}function I(t){switch(t){case 126:case 133:case 135:case 147:case 130:case 134:return!0;default:return e.isClassMemberModifier(t)}}function F(t){return 130===t||131===t||127===t||!e.isContextualKeyword(t)&&!I(t)}function O(t){return e.isIdentifier(t)?t.originalKeywordKind||0:t.kind}function R(t,r,n,i){var a=r&&r!==t,o=!a||3&r.flags?t:i.getUnionType([t,r]),s=o.isUnion()?i.getAllPossiblePropertiesOfTypes(o.types.filter((function(t){return!(131068&t.flags||i.isArrayLikeType(t)||e.typeHasCallOrConstructSignatures(t,i)||i.isTypeInvalidDueToUnionDiscriminant(t,n))}))):o.getApparentProperties();return a?s.filter((function(t){return e.some(t.declarations,(function(e){return e.parent!==n}))})):s}function M(t,r){return t.isUnion()?e.Debug.checkEachDefined(r.getAllPossiblePropertiesOfTypes(t.types),"getAllPossiblePropertiesOfTypes() should all be defined"):e.Debug.checkEachDefined(t.getApparentProperties(),"getApparentProperties() should all be defined")}function L(t){return t.parent&&e.isClassOrTypeElement(t.parent)&&e.isObjectTypeDeclaration(t.parent.parent)}function j(t){var r=t.left;return e.nodeIsMissing(r)}t.getPropertiesForObjectExpression=R}(e.Completions||(e.Completions={}))}(d||(d={})),function(e){!function(t){function r(t,r){return{fileName:r.fileName,textSpan:e.createTextSpanFromNode(t,r),kind:"none"}}function n(t){return e.isThrowStatement(t)?[t]:e.isTryStatement(t)?e.concatenate(t.catchClause?n(t.catchClause):t.tryBlock&&n(t.tryBlock),t.finallyBlock&&n(t.finallyBlock)):e.isFunctionLike(t)?void 0:o(t,n)}function a(t){return e.isBreakOrContinueStatement(t)?[t]:e.isFunctionLike(t)?void 0:o(t,a)}function o(t,r){var n=[];return t.forEachChild((function(t){var i=r(t);void 0!==i&&n.push.apply(n,e.toArray(i))})),n}function s(e,t){var r=c(t);return!!r&&r===e}function c(t){return e.findAncestor(t,(function(r){switch(r.kind){case 246:if(242===t.kind)return!1;case 239:case 240:case 241:case 238:case 237:return!t.label||function(t,r){return!!e.findAncestor(t.parent,(function(t){return e.isLabeledStatement(t)?t.label.escapedText===r:"quit"}))}(r,t.label.escapedText);default:return e.isFunctionLike(r)&&"quit"}}))}function l(t,r){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];return!(!r||!e.contains(n,r.kind))&&(t.push(r),!0)}function u(t){var r=[];if(l(r,t.getFirstToken(),97,115,90)&&237===t.kind)for(var n=t.getChildren(),i=n.length-1;i>=0&&!l(r,n[i],115);i--);return e.forEach(a(t.statement),(function(e){s(t,e)&&l(r,e.getFirstToken(),80,86)})),r}function d(e){var t=c(e);if(t)switch(t.kind){case 239:case 240:case 241:case 237:case 238:return u(t);case 246:return p(t)}}function p(t){var r=[];return l(r,t.getFirstToken(),107),e.forEach(t.caseBlock.clauses,(function(n){l(r,n.getFirstToken(),81,88),e.forEach(a(n),(function(e){s(t,e)&&l(r,e.getFirstToken(),80)}))})),r}function f(t,r){var n=[];(l(n,t.getFirstToken(),111),t.catchClause&&l(n,t.catchClause.getFirstToken(),82),t.finallyBlock)&&l(n,e.findChildOfKind(t,96,r),96);return n}function m(t,r){var i=function(t){for(var r=t;r.parent;){var n=r.parent;if(e.isFunctionBlock(n)||300===n.kind)return n;if(e.isTryStatement(n)&&n.tryBlock===r&&n.catchClause)return r;r=n}}(t);if(i){var a=[];return e.forEach(n(i),(function(t){a.push(e.findChildOfKind(t,109,r))})),e.isFunctionBlock(i)&&e.forEachReturnStatement(i,(function(t){a.push(e.findChildOfKind(t,105,r))})),a}}function g(t,r){var i=e.getContainingFunction(t);if(i){var a=[];return e.forEachReturnStatement(e.cast(i.body,e.isBlock),(function(t){a.push(e.findChildOfKind(t,105,r))})),e.forEach(n(i.body),(function(t){a.push(e.findChildOfKind(t,109,r))})),a}}function _(t){var r=e.getContainingFunction(t);if(r){var n=[];return r.modifiers&&r.modifiers.forEach((function(e){l(n,e,130)})),e.forEachChild(r,(function(t){h(t,(function(t){e.isAwaitExpression(t)&&l(n,t.getFirstToken(),131)}))})),n}}function h(t,r){r(t),e.isFunctionLike(t)||e.isClassLike(t)||e.isInterfaceDeclaration(t)||e.isModuleDeclaration(t)||e.isTypeAliasDeclaration(t)||e.isTypeNode(t)||e.forEachChild(t,(function(e){return h(e,r)}))}t.getDocumentHighlights=function(t,n,a,o,s){var c=e.getTouchingPropertyName(a,o);if(c.parent&&(e.isJsxOpeningElement(c.parent)&&c.parent.tagName===c||e.isJsxClosingElement(c.parent))){var y=c.parent.parent,v=[y.openingElement,y.closingElement].map((function(e){return r(e.tagName,a)}));return[{fileName:a.fileName,highlightSpans:v}]}return function(t,r,n,i,a){var o=new e.Set(a.map((function(e){return e.fileName}))),s=e.FindAllReferences.getReferenceEntriesForNode(t,r,n,a,i,void 0,o);if(!s)return;var c=e.arrayToMultiMap(s.map(e.FindAllReferences.toHighlightSpan),(function(e){return e.fileName}),(function(e){return e.span}));return e.arrayFrom(c.entries(),(function(t){var r=t[0],i=t[1];if(!o.has(r)){e.Debug.assert(n.redirectTargetsMap.has(r));var s=n.getSourceFile(r);r=e.find(a,(function(e){return!!e.redirectInfo&&e.redirectInfo.redirectTarget===s})).fileName,e.Debug.assert(o.has(r))}return{fileName:r,highlightSpans:i}}))}(o,c,t,n,s)||function(t,n){var a=function(t,n){switch(t.kind){case 99:case 91:return e.isIfStatement(t.parent)?function(t,n){for(var i=function(t,r){var n=[];for(;e.isIfStatement(t.parent)&&t.parent.elseStatement===t;)t=t.parent;for(;;){var i=t.getChildren(r);l(n,i[0],99);for(var a=i.length-1;a>=0&&!l(n,i[a],91);a--);if(!t.elseStatement||!e.isIfStatement(t.elseStatement))break;t=t.elseStatement}return n}(t,n),a=[],o=0;o<i.length;o++){if(91===i[o].kind&&o<i.length-1){for(var s=i[o],c=i[o+1],u=!0,d=c.getStart(n)-1;d>=s.end;d--)if(!e.isWhiteSpaceSingleLine(n.text.charCodeAt(d))){u=!1;break}if(u){a.push({fileName:n.fileName,textSpan:e.createTextSpanFromBounds(s.getStart(),c.end),kind:"reference"}),o++;continue}}a.push(r(i[o],n))}return a}(t.parent,n):void 0;case 105:return c(t.parent,e.isReturnStatement,g);case 109:return c(t.parent,e.isThrowStatement,m);case 111:case 82:case 96:return c(82===t.kind?t.parent.parent:t.parent,e.isTryStatement,f);case 107:return c(t.parent,e.isSwitchStatement,p);case 81:case 88:return e.isDefaultClause(t.parent)||e.isCaseClause(t.parent)?c(t.parent.parent.parent,e.isSwitchStatement,p):void 0;case 80:case 86:return c(t.parent,e.isBreakOrContinueStatement,d);case 97:case 115:case 90:return c(t.parent,(function(t){return e.isIterationStatement(t,!0)}),u);case 133:return s(e.isConstructorDeclaration,[133]);case 135:case 147:return s(e.isAccessor,[135,147]);case 131:return c(t.parent,e.isAwaitExpression,_);case 130:return y(_(t));case 125:return y(function(t){var r=e.getContainingFunction(t);if(!r)return;var n=[];return e.forEachChild(r,(function(t){h(t,(function(t){e.isYieldExpression(t)&&l(n,t.getFirstToken(),125)}))})),n}(t));default:return e.isModifierKind(t.kind)&&(e.isDeclaration(t.parent)||e.isVariableStatement(t.parent))?y((a=t.kind,o=t.parent,e.mapDefined(function(t,r){var n=t.parent;switch(n.kind){case 260:case 300:case 232:case 287:case 288:return 128&r&&e.isClassDeclaration(t)?i(i([],t.members),[t]):n.statements;case 167:case 166:case 253:return i(i([],n.parameters),e.isClassLike(n.parent)?n.parent.members:[]);case 254:case 223:case 255:case 256:case 178:var a=n.members;if(92&r){var o=e.find(n.members,e.isConstructorDeclaration);if(o)return i(i([],a),o.parameters)}else if(128&r)return i(i([],a),[n]);return a;case 201:return;default:e.Debug.assertNever(n,"Invalid container kind.")}}(o,e.modifierToFlag(a)),(function(t){return e.findModifier(t,a)})))):void 0}var a,o;function s(r,i){return c(t.parent,r,(function(t){return e.mapDefined(t.symbol.declarations,(function(t){return r(t)?e.find(t.getChildren(n),(function(t){return e.contains(i,t.kind)})):void 0}))}))}function c(e,t,r){return t(e)?y(r(e,n)):void 0}function y(e){return e&&e.map((function(e){return r(e,n)}))}}(t,n);return a&&[{fileName:n.fileName,highlightSpans:a}]}(c,a)}}(e.DocumentHighlights||(e.DocumentHighlights={}))}(d||(d={})),function(e){function t(t,n,i){void 0===n&&(n="");var a=new e.Map,o=e.createGetCanonicalFileName(!!t);function s(e,t,r,n,i,a,o){return l(e,t,r,n,i,a,!0,o)}function c(e,t,r,n,i,a,o){return l(e,t,r,n,i,a,!1,o)}function l(t,r,n,o,s,c,l,u){var d=e.getOrUpdate(a,o,(function(){return new e.Map})),p=d.get(r),f=6===u?100:n.target||1;!p&&i&&((m=i.getDocument(o,r))&&(e.Debug.assert(l),p={sourceFile:m,languageServiceRefCount:0},d.set(r,p)));if(p)p.sourceFile.version!==c&&(p.sourceFile=e.updateLanguageServiceSourceFile(p.sourceFile,s,c,s.getChangeRange(p.sourceFile.scriptSnapshot),void 0,n),i&&i.setDocument(o,r,p.sourceFile)),l&&p.languageServiceRefCount++;else{var m=e.createLanguageServiceSourceFile(t,s,f,c,!1,u,n);i&&i.setDocument(o,r,m),p={sourceFile:m,languageServiceRefCount:1},d.set(r,p)}return e.Debug.assert(0!==p.languageServiceRefCount),p.sourceFile}function u(t,r){var n=e.Debug.checkDefined(a.get(r)),i=n.get(t);i.languageServiceRefCount--,e.Debug.assert(i.languageServiceRefCount>=0),0===i.languageServiceRefCount&&n.delete(t)}return{acquireDocument:function(t,i,a,c,l){return s(t,e.toPath(t,n,o),i,r(i),a,c,l)},acquireDocumentWithKey:s,updateDocument:function(t,i,a,s,l){return c(t,e.toPath(t,n,o),i,r(i),a,s,l)},updateDocumentWithKey:c,releaseDocument:function(t,i){return u(e.toPath(t,n,o),r(i))},releaseDocumentWithKey:u,getLanguageServiceRefCounts:function(t){return e.arrayFrom(a.entries(),(function(e){var r=e[0],n=e[1].get(t);return[r,n&&n.languageServiceRefCount]}))},reportStats:function(){var t=e.arrayFrom(a.keys()).filter((function(e){return e&&"_"===e.charAt(0)})).map((function(e){var t=a.get(e),r=[];return t.forEach((function(e,t){r.push({name:t,refCount:e.languageServiceRefCount})})),r.sort((function(e,t){return t.refCount-e.refCount})),{bucket:e,sourceFiles:r}}));return JSON.stringify(t,void 0,2)},getKeyForCompilationSettings:r}}function r(t){return e.sourceFileAffectingCompilerOptions.map((function(r){return e.getCompilerOptionValue(t,r)})).join("|")}e.createDocumentRegistry=function(e,r){return t(e,r)},e.createDocumentRegistryInternal=t}(d||(d={})),function(e){!function(t){function r(t,r){return e.forEach(300===t.kind?t.statements:t.body.statements,(function(t){return r(t)||c(t)&&e.forEach(t.body&&t.body.statements,r)}))}function n(t,n){if(t.externalModuleIndicator||void 0!==t.imports)for(var i=0,a=t.imports;i<a.length;i++){var o=a[i];n(e.importFromModuleSpecifier(o),o)}else r(t,(function(t){switch(t.kind){case 270:case 264:(r=t).moduleSpecifier&&e.isStringLiteral(r.moduleSpecifier)&&n(r,r.moduleSpecifier);break;case 263:var r;l(r=t)&&n(r,r.moduleReference.expression)}}))}function i(t,r,n){var i=t.parent;if(i){var a=n.getMergedSymbol(i);return e.isExternalModuleSymbol(a)?{exportingModuleSymbol:a,exportKind:r}:void 0}}function o(e,t){return t.getMergedSymbol(s(e).symbol)}function s(t){if(204===t.kind)return t.getSourceFile();var r=t.parent;return 300===r.kind?r:(e.Debug.assert(260===r.kind),e.cast(r.parent,c))}function c(e){return 259===e.kind&&10===e.name.kind}function l(e){return 275===e.moduleReference.kind&&10===e.moduleReference.expression.kind}t.createImportTracker=function(t,i,u,d){var p=function(t,r,i){for(var a=new e.Map,o=0,s=t;o<s.length;o++){var c=s[o];i&&i.throwIfCancellationRequested(),n(c,(function(t,n){var i=r.getSymbolAtLocation(n);if(i){var o=e.getSymbolId(i).toString(),s=a.get(o);s||a.set(o,s=[]),s.push(t)}}))}return a}(t,u,d);return function(n,f,m){var g=function(t,n,i,a,l,u){var d=a.exportingModuleSymbol,p=a.exportKind,f=e.nodeSeenTracker(),m=e.nodeSeenTracker(),g=[],_=!!d.globalExports,h=_?void 0:[];return v(d),{directImports:g,indirectUsers:y()};function y(){if(_)return t;for(var r=0,i=d.declarations;r<i.length;r++){var a=i[r];e.isExternalModuleAugmentation(a)&&n.has(a.getSourceFile().fileName)&&E(a)}return h.map(e.getSourceFileOfNode)}function v(t){var r=S(t);if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n];if(f(a))switch(u&&u.throwIfCancellationRequested(),a.kind){case 204:if(e.isImportCall(a)){b(a);break}if(!_){var c=a.parent;if(2===p&&251===c.kind){var d=c.name;if(78===d.kind){g.push(d);break}}}break;case 78:break;case 263:x(a,a.name,e.hasSyntacticModifier(a,1),!1);break;case 264:g.push(a);var m=a.importClause&&a.importClause.namedBindings;m&&266===m.kind?x(a,m.name,!1,!0):!_&&e.isDefaultImport(a)&&E(s(a));break;case 270:a.exportClause?272===a.exportClause.kind?E(s(a),!0):g.push(a):v(o(a,l));break;case 196:a.isTypeOf&&!a.qualifier&&k(a)&&E(a.getSourceFile(),!0),g.push(a);break;default:e.Debug.failBadSyntaxKind(a,"Unexpected import kind.")}}}function b(t){E(e.findAncestor(t,c)||t.getSourceFile(),!!k(t,!0))}function k(t,r){return void 0===r&&(r=!1),e.findAncestor(t,(function(t){return r&&c(t)?"quit":e.some(t.modifiers,(function(e){return 93===e.kind}))}))}function x(t,n,i,a){if(2===p)a||g.push(t);else if(!_){var o=s(t);e.Debug.assert(300===o.kind||259===o.kind),i||function(t,n,i){var a=i.getSymbolAtLocation(n);return!!r(t,(function(t){if(e.isExportDeclaration(t)){var r=t.exportClause;return!t.moduleSpecifier&&r&&e.isNamedExports(r)&&r.elements.some((function(e){return i.getExportSpecifierLocalTargetSymbol(e)===a}))}}))}(o,n,l)?E(o,!0):E(o)}}function E(t,r){if(void 0===r&&(r=!1),e.Debug.assert(!_),m(t)&&(h.push(t),r)){var n=l.getMergedSymbol(t.symbol);if(n){e.Debug.assert(!!(1536&n.flags));var i=S(n);if(i)for(var a=0,o=i;a<o.length;a++){var c=o[a];e.isImportTypeNode(c)||E(s(c),!0)}}}}function S(t){return i.get(e.getSymbolId(t).toString())}}(t,i,p,f,u,d),_=g.directImports,h=g.indirectUsers;return a({indirectUsers:h},function(t,r,n,i,a){var o=[],s=[];function c(e,t){o.push([e,t])}if(t)for(var u=0,d=t;u<d.length;u++){p(d[u])}return{importSearches:o,singleReferences:s};function p(t){if(263!==t.kind)if(78!==t.kind)if(196!==t.kind){if(10===t.moduleSpecifier.kind)if(270!==t.kind){var o=t.importClause||{name:void 0,namedBindings:void 0},u=o.name,d=o.namedBindings;if(d)switch(d.kind){case 266:f(d.name);break;case 267:0!==n&&1!==n||m(d);break;default:e.Debug.assertNever(d)}if(u&&(1===n||2===n)&&(!a||u.escapedText===e.symbolEscapedNameNoDefault(r)))c(u,i.getSymbolAtLocation(u))}else t.exportClause&&e.isNamedExports(t.exportClause)&&m(t.exportClause)}else if(t.qualifier){var p=e.getFirstIdentifier(t.qualifier);p.escapedText===e.symbolName(r)&&s.push(p)}else 2===n&&s.push(t.argument.literal);else f(t);else l(t)&&f(t.name)}function f(e){2!==n||a&&!g(e.escapedText)||c(e,i.getSymbolAtLocation(e))}function m(e){if(e)for(var t=0,n=e.elements;t<n.length;t++){var o=n[t],l=o.name,u=o.propertyName;if(g((u||l).escapedText))if(u)s.push(u),a&&l.escapedText!==r.escapedName||c(l,i.getSymbolAtLocation(l));else c(l,273===o.kind&&o.propertyName?i.getExportSpecifierLocalTargetSymbol(o):i.getSymbolAtLocation(l))}}function g(e){return e===r.escapedName||0!==n&&"default"===e}}(_,n,f.exportKind,u,m))}},function(e){e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.ExportEquals=2]="ExportEquals"}(t.ExportKind||(t.ExportKind={})),function(e){e[e.Import=0]="Import",e[e.Export=1]="Export"}(t.ImportExport||(t.ImportExport={})),t.findModuleReferences=function(e,t,r){for(var i=[],a=e.getTypeChecker(),o=0,s=t;o<s.length;o++){var c=s[o],l=r.valueDeclaration;if(300===l.kind){for(var u=0,d=c.referencedFiles;u<d.length;u++){var p=d[u];e.getSourceFileFromReference(c,p)===l&&i.push({kind:"reference",referencingFile:c,ref:p})}for(var f=0,m=c.typeReferenceDirectives;f<m.length;f++){p=m[f];var g=e.getResolvedTypeReferenceDirectives().get(p.fileName);void 0!==g&&g.resolvedFileName===l.fileName&&i.push({kind:"reference",referencingFile:c,ref:p})}}n(c,(function(e,t){a.getSymbolAtLocation(t)===r&&i.push({kind:"import",literal:t})}))}return i},t.getImportOrExportSymbol=function(t,r,n,a){return a?o():o()||function(){if(!function(t){var r=t.parent;switch(r.kind){case 263:return r.name===t&&l(r);case 268:return!r.propertyName;case 265:case 266:return e.Debug.assert(r.name===t),!0;case 199:return e.isInJSFile(t)&&e.isRequireVariableDeclaration(r,!0);default:return!1}}(t))return;var i=n.getImmediateAliasedSymbol(r);if(!i)return;i=function(t,r){if(t.declarations)for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(e.isExportSpecifier(a)&&!a.propertyName&&!a.parent.parent.moduleSpecifier)return r.getExportSpecifierLocalTargetSymbol(a);if(e.isPropertyAccessExpression(a)&&e.isModuleExportsAccessExpression(a.expression)&&!e.isPrivateIdentifier(a.name))return r.getExportSpecifierLocalTargetSymbol(a.name);if(e.isShorthandPropertyAssignment(a)&&e.isBinaryExpression(a.parent.parent)&&2===e.getAssignmentDeclarationKind(a.parent.parent))return r.getExportSpecifierLocalTargetSymbol(a.name)}return t}(i,n),"export="===i.escapedName&&(i=function(t,r){if(2097152&t.flags)return e.Debug.checkDefined(r.getImmediateAliasedSymbol(t));var n=t.valueDeclaration;if(e.isExportAssignment(n))return e.Debug.checkDefined(n.expression.symbol);if(e.isBinaryExpression(n))return e.Debug.checkDefined(n.right.symbol);if(e.isSourceFile(n))return e.Debug.checkDefined(n.symbol);return e.Debug.fail()}(i,n));var a=e.symbolEscapedNameNoDefault(i);if(void 0===a||"default"===a||a===r.escapedName)return{kind:0,symbol:i}}();function o(){var i=t.parent,o=i.parent;if(r.exportSymbol)return 202===i.kind?r.declarations.some((function(e){return e===i}))&&e.isBinaryExpression(o)?d(o,!1):void 0:s(r.exportSymbol,c(i));var l=function(t,r){var n=e.isVariableDeclaration(t)?t:e.isBindingElement(t)?e.walkUpBindingElementsAndPatterns(t):void 0;return n?t.name!==r||e.isCatchClause(n.parent)?void 0:e.isVariableStatement(n.parent.parent)?n.parent.parent:void 0:t}(i,t);if(l&&e.hasSyntacticModifier(l,1)){if(e.isImportEqualsDeclaration(l)&&l.moduleReference===t){if(a)return;return{kind:0,symbol:n.getSymbolAtLocation(l.name)}}return s(r,c(l))}if(e.isNamespaceExport(i))return s(r,0);if(e.isExportAssignment(i))return u(i);if(e.isExportAssignment(o))return u(o);if(e.isBinaryExpression(i))return d(i,!0);if(e.isBinaryExpression(o))return d(o,!0);if(e.isJSDocTypedefTag(i))return s(r,0);function u(t){var n=e.Debug.checkDefined(t.symbol.parent,"Expected export symbol to have a parent"),i=t.isExportEquals?2:1;return{kind:1,symbol:r,exportInfo:{exportingModuleSymbol:n,exportKind:i}}}function d(t,i){var a;switch(e.getAssignmentDeclarationKind(t)){case 1:a=0;break;case 2:a=2;break;default:return}var o=i?n.getSymbolAtLocation(e.getNameOfAccessExpression(e.cast(t.left,e.isAccessExpression))):r;return o&&s(o,a)}}function s(e,t){var r=i(e,t,n);return r&&{kind:1,symbol:e,exportInfo:r}}function c(t){return e.hasSyntacticModifier(t,512)?1:0}},t.getExportInfo=i}(e.FindAllReferences||(e.FindAllReferences={}))}(d||(d={})),function(e){!function(t){var r;function n(e,t){return void 0===t&&(t=1),{kind:t,node:e.name||e,context:s(e)}}function o(e){return e&&void 0===e.kind}function s(t){if(e.isDeclaration(t))return c(t);if(t.parent){if(!e.isDeclaration(t.parent)&&!e.isExportAssignment(t.parent)){if(e.isInJSFile(t)){var r=e.isBinaryExpression(t.parent)?t.parent:e.isAccessExpression(t.parent)&&e.isBinaryExpression(t.parent.parent)&&t.parent.parent.left===t.parent?t.parent.parent:void 0;if(r&&0!==e.getAssignmentDeclarationKind(r))return c(r)}if(e.isJsxOpeningElement(t.parent)||e.isJsxClosingElement(t.parent))return t.parent.parent;if(e.isJsxSelfClosingElement(t.parent)||e.isLabeledStatement(t.parent)||e.isBreakOrContinueStatement(t.parent))return t.parent;if(e.isStringLiteralLike(t)){var n=e.tryGetImportFromModuleSpecifier(t);if(n){var i=e.findAncestor(n,(function(t){return e.isDeclaration(t)||e.isStatement(t)||e.isJSDocTag(t)}));return e.isDeclaration(i)?c(i):i}}var a=e.findAncestor(t,e.isComputedPropertyName);return a?c(a.parent):void 0}return t.parent.name===t||e.isConstructorDeclaration(t.parent)||e.isExportAssignment(t.parent)||(e.isImportOrExportSpecifier(t.parent)||e.isBindingElement(t.parent))&&t.parent.propertyName===t||88===t.kind&&e.hasSyntacticModifier(t.parent,513)?c(t.parent):void 0}}function c(t){if(t)switch(t.kind){case 251:return e.isVariableDeclarationList(t.parent)&&1===t.parent.declarations.length?e.isVariableStatement(t.parent.parent)?t.parent.parent:e.isForInOrOfStatement(t.parent.parent)?c(t.parent.parent):t.parent:t;case 199:return c(t.parent.parent);case 268:return t.parent.parent.parent;case 273:case 266:return t.parent.parent;case 265:case 272:return t.parent;case 218:return e.isExpressionStatement(t.parent)?t.parent:t;case 241:case 240:return{start:t.initializer,end:t.expression};case 291:case 292:return e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)?c(e.findAncestor(t.parent,(function(t){return e.isBinaryExpression(t)||e.isForInOrOfStatement(t)}))):t;default:return t}}function l(e,t,r){if(r){var n=o(r)?h(r.start,t,r.end):h(r,t);return n.start!==e.start||n.length!==e.length?{contextSpan:n}:void 0}}function u(t,i,a,o,s){if(300!==o.kind){var c=t.getTypeChecker();if(292===o.parent.kind){var l=[];return r.getReferenceEntriesForShorthandPropertyAssignment(o,c,(function(e){return l.push(n(e))})),l}if(106===o.kind||e.isSuperProperty(o.parent)){var u=c.getSymbolAtLocation(o);return u.valueDeclaration&&[n(u.valueDeclaration)]}return d(s,o,t,a,i,{implementations:!0,use:1})}}function d(t,n,i,a,o,s,c){return void 0===s&&(s={}),void 0===c&&(c=new e.Set(a.map((function(e){return e.fileName})))),p(r.getReferencedSymbolsForNode(t,n,i,a,o,s,c))}function p(t){return t&&e.flatMap(t,(function(e){return e.references}))}function f(t){var r=t.getSourceFile();return{sourceFile:r,textSpan:h(e.isComputedPropertyName(t)?t.expression:t,r)}}function m(t,n,i){var a=r.getIntersectingMeaningFromDeclarations(i,t),o=t.declarations&&e.firstOrUndefined(t.declarations)||i,s=e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(n,t,o.getSourceFile(),o,o,a);return{displayParts:s.displayParts,kind:s.symbolKind}}function g(e){var t=_(e);if(0===e.kind)return a(a({},t),{isWriteAccess:!1,isDefinition:!1});var r=e.kind,n=e.node;return a(a({},t),{isWriteAccess:v(n),isDefinition:b(n),isInString:2===r||void 0})}function _(e){if(0===e.kind)return{textSpan:e.textSpan,fileName:e.fileName};var t=e.node.getSourceFile(),r=h(e.node,t);return a({textSpan:r,fileName:t.fileName},l(r,t,e.context))}function h(t,r,n){var i=t.getStart(r),a=(n||t).getEnd();return e.isStringLiteralLike(t)&&(e.Debug.assert(void 0===n),i+=1,a-=1),e.createTextSpanFromBounds(i,a)}function y(e){return 0===e.kind?e.textSpan:h(e.node,e.node.getSourceFile())}function v(t){var r=e.getDeclarationFromName(t);return!!r&&function(t){if(8388608&t.flags)return!0;switch(t.kind){case 218:case 199:case 254:case 223:case 255:case 88:case 258:case 294:case 273:case 265:case 263:case 268:case 256:case 327:case 334:case 283:case 259:case 262:case 266:case 272:case 161:case 292:case 257:case 160:return!0;case 291:return!e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent);case 253:case 209:case 167:case 166:case 168:case 169:return!!t.body;case 251:case 164:return!!t.initializer||e.isCatchClause(t.parent);case 165:case 163:case 336:case 329:return!1;default:return e.Debug.failBadSyntaxKind(t)}}(r)||88===t.kind||e.isWriteAccess(t)}function b(t){return 88===t.kind||!!e.getDeclarationFromName(t)||e.isLiteralComputedPropertyDeclarationName(t)||133===t.kind&&e.isConstructorDeclaration(t.parent)}!function(e){e[e.Symbol=0]="Symbol",e[e.Label=1]="Label",e[e.Keyword=2]="Keyword",e[e.This=3]="This",e[e.String=4]="String",e[e.TripleSlashReference=5]="TripleSlashReference"}(t.DefinitionKind||(t.DefinitionKind={})),function(e){e[e.Span=0]="Span",e[e.Node=1]="Node",e[e.StringLiteral=2]="StringLiteral",e[e.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",e[e.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal"}(t.EntryKind||(t.EntryKind={})),t.nodeEntry=n,t.isContextWithStartAndEndNode=o,t.getContextNode=c,t.toContextSpan=l,function(e){e[e.Other=0]="Other",e[e.References=1]="References",e[e.Rename=2]="Rename"}(t.FindReferencesUse||(t.FindReferencesUse={})),t.findReferencedSymbols=function(t,n,i,o,s){var u=e.getTouchingPropertyName(o,s),d=r.getReferencedSymbolsForNode(s,u,t,i,n,{use:1}),p=t.getTypeChecker();return d&&d.length?e.mapDefined(d,(function(t){var r=t.definition,i=t.references;return r&&{definition:p.runWithCancellationToken(n,(function(t){return function(t,r,n){var i=function(){switch(t.type){case 0:var i=m(g=t.symbol,r,n),o=i.displayParts,s=i.kind,l=o.map((function(e){return e.text})).join(""),u=g.declarations&&e.firstOrUndefined(g.declarations),d=u?e.getNameOfDeclaration(u)||u:n;return a(a({},f(d)),{name:l,kind:s,displayParts:o,context:c(u)});case 1:d=t.node;return a(a({},f(d)),{name:d.text,kind:"label",displayParts:[e.displayPart(d.text,e.SymbolDisplayPartKind.text)]});case 2:d=t.node;var p=e.tokenToString(d.kind);return a(a({},f(d)),{name:p,kind:"keyword",displayParts:[{text:p,kind:"keyword"}]});case 3:d=t.node;var g,_=(g=r.getSymbolAtLocation(d))&&e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(r,g,d.getSourceFile(),e.getContainerNode(d),d).displayParts||[e.textPart("this")];return a(a({},f(d)),{name:"this",kind:"var",displayParts:_});case 4:d=t.node;return a(a({},f(d)),{name:d.text,kind:"var",displayParts:[e.displayPart(e.getTextOfNode(d),e.SymbolDisplayPartKind.stringLiteral)]});case 5:return{textSpan:e.createTextSpanFromRange(t.reference),sourceFile:t.file,name:t.reference.fileName,kind:"string",displayParts:[e.displayPart('"'+t.reference.fileName+'"',e.SymbolDisplayPartKind.stringLiteral)]};default:return e.Debug.assertNever(t)}}(),o=i.sourceFile,s=i.textSpan,u=i.name,d=i.kind,p=i.displayParts,g=i.context;return a({containerKind:"",containerName:"",fileName:o.fileName,kind:d,name:u,textSpan:s,displayParts:p},l(s,o,g))}(r,t,u)})),references:i.map(g)}})):void 0},t.getImplementationsAtPosition=function(t,r,n,o,s){var c,l=e.getTouchingPropertyName(o,s),d=u(t,r,n,l,s);if(202===l.parent.kind||199===l.parent.kind||203===l.parent.kind||106===l.kind)c=d&&i([],d);else for(var p=d&&i([],d),f=new e.Map;p&&p.length;){var g=p.shift();if(e.addToSeen(f,e.getNodeId(g.node))){c=e.append(c,g);var h=u(t,r,n,g.node,g.node.pos);h&&p.push.apply(p,h)}}var y=t.getTypeChecker();return e.map(c,(function(t){return function(t,r){var n=_(t);if(0!==t.kind){var i=t.node;return a(a({},n),function(t,r){var n=r.getSymbolAtLocation(e.isDeclaration(t)&&t.name?t.name:t);return n?m(n,r,t):201===t.kind?{kind:"interface",displayParts:[e.punctuationPart(20),e.textPart("object literal"),e.punctuationPart(21)]}:223===t.kind?{kind:"local class",displayParts:[e.punctuationPart(20),e.textPart("anonymous local class"),e.punctuationPart(21)]}:{kind:e.getNodeKind(t),displayParts:[]}}(i,r))}return a(a({},n),{kind:"",displayParts:[]})}(t,y)}))},t.findReferenceOrRenameEntries=function(t,n,i,a,o,s,c){return e.map(p(r.getReferencedSymbolsForNode(o,a,t,i,n,s)),(function(e){return c(e,a,t.getTypeChecker())}))},t.getReferenceEntriesForNode=d,t.toRenameLocation=function(t,r,n,i){return a(a({},_(t)),i&&function(t,r,n){if(0!==t.kind&&e.isIdentifier(r)){var i=t.node,a=t.kind,o=i.parent,s=r.text,c=e.isShorthandPropertyAssignment(o);if(c||e.isObjectBindingElementWithoutPropertyName(o)&&o.name===i&&void 0===o.dotDotDotToken){var l={prefixText:s+": "},u={suffixText:": "+s};if(3===a)return l;if(4===a)return u;if(c){var d=o.parent;return e.isObjectLiteralExpression(d)&&e.isBinaryExpression(d.parent)&&e.isModuleExportsAccessExpression(d.parent.left)?l:u}return l}if(e.isImportSpecifier(o)&&!o.propertyName){var p=e.isExportSpecifier(r.parent)?n.getExportSpecifierLocalTargetSymbol(r.parent):n.getSymbolAtLocation(r);return e.contains(p.declarations,o)?{prefixText:s+" as "}:e.emptyOptions}if(e.isExportSpecifier(o)&&!o.propertyName)return r===t.node||n.getSymbolAtLocation(r)===n.getSymbolAtLocation(t.node)?{prefixText:s+" as "}:{suffixText:" as "+s}}return e.emptyOptions}(t,r,n))},t.toReferenceEntry=g,t.toHighlightSpan=function(e){var t=_(e);if(0===e.kind)return{fileName:t.fileName,span:{textSpan:t.textSpan,kind:"reference"}};var r=v(e.node),n=a({textSpan:t.textSpan,kind:r?"writtenReference":"reference",isInString:2===e.kind||void 0},t.contextSpan&&{contextSpan:t.contextSpan});return{fileName:t.fileName,span:n}},t.getTextSpanOfEntry=y,function(r){function i(t,r,n){for(var i,a=0,o=r.get(t.path)||e.emptyArray;a<o.length;a++){var s=o[a];if(e.isReferencedFile(s)){var c=n.getSourceFileByPath(s.file),l=e.getReferencedFileLocation(n.getSourceFileByPath,s);e.isReferenceFileLocation(l)&&(i=e.append(i,{kind:0,fileName:c.fileName,textSpan:e.createTextSpanFromRange(l)}))}}return i}function a(t,r,n){if(t.parent&&e.isNamespaceExportDeclaration(t.parent)){var i=n.getAliasedSymbol(r),a=n.getMergedSymbol(i);if(i!==a)return a}}function o(t,r,n,i,a,o){var c=1536&t.flags&&t.declarations&&e.find(t.declarations,e.isSourceFile);if(c){var u=t.exports.get("export="),p=l(r,t,!!u,n,o);if(!u||!o.has(c.fileName))return p;var f=r.getTypeChecker();return s(r,p,d(t=e.skipAlias(u,f),void 0,n,o,f,i,a))}}function s(t){for(var r,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];for(var a=0,o=n;a<o.length;a++){var s=o[a];if(s&&s.length)if(r)for(var l=function(n){if(!n.definition||0!==n.definition.type)return r.push(n),"continue";var i=n.definition.symbol,a=e.findIndex(r,(function(e){return!!e.definition&&0===e.definition.type&&e.definition.symbol===i}));if(-1===a)return r.push(n),"continue";var o=r[a];r[a]={definition:o.definition,references:o.references.concat(n.references).sort((function(r,n){var i=c(t,r),a=c(t,n);if(i!==a)return e.compareValues(i,a);var o=y(r),s=y(n);return o.start!==s.start?e.compareValues(o.start,s.start):e.compareValues(o.length,s.length)}))}},u=0,d=s;u<d.length;u++){l(d[u])}else r=s}return r}function c(e,t){var r=0===t.kind?e.getSourceFile(t.fileName):t.node.getSourceFile();return e.getSourceFiles().indexOf(r)}function l(r,i,a,o,s){e.Debug.assert(!!i.valueDeclaration);var c=e.mapDefined(t.findModuleReferences(r,o,i),(function(t){if("import"===t.kind){var r=t.literal.parent;if(e.isLiteralTypeNode(r)){var i=e.cast(r.parent,e.isImportTypeNode);if(a&&!i.qualifier)return}return n(t.literal)}return{kind:0,fileName:t.referencingFile.fileName,textSpan:e.createTextSpanFromRange(t.ref)}}));if(i.declarations)for(var l=0,u=i.declarations;l<u.length;l++){switch((m=u[l]).kind){case 300:break;case 259:s.has(m.getSourceFile().fileName)&&c.push(n(m.name));break;default:e.Debug.assert(!!(33554432&i.flags),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}}var d=i.exports.get("export=");if(d)for(var p=0,f=d.declarations;p<f.length;p++){var m,g=(m=f[p]).getSourceFile();if(s.has(g.fileName)){var _=e.isBinaryExpression(m)&&e.isPropertyAccessExpression(m.left)?m.left.expression:e.isExportAssignment(m)?e.Debug.checkDefined(e.findChildOfKind(m,93,g)):e.getNameOfDeclaration(m)||m;c.push(n(_))}}return c.length?[{definition:{type:0,symbol:i},references:c}]:e.emptyArray}function u(t){return 143===t.kind&&e.isTypeOperatorNode(t.parent)&&143===t.parent.operator}function d(t,r,n,i,a,o,s){var c=r&&function(t,r,n,i){var a=r.parent;if(e.isExportSpecifier(a)&&i)return A(r,t,a,n);return e.firstDefined(t.declarations,(function(i){if(!i.parent){if(33554432&t.flags)return;e.Debug.fail("Unexpected symbol at "+e.Debug.formatSyntaxKind(r.kind)+": "+e.Debug.formatSymbol(t))}return e.isTypeLiteralNode(i.parent)&&e.isUnionTypeNode(i.parent.parent)?n.getPropertyOfType(n.getTypeFromTypeNode(i.parent.parent),t.name):void 0}))}(t,r,a,!q(s))||t,l=r?B(r,c):7,u=[],d=new m(n,i,r?function(t){switch(t.kind){case 167:case 133:return 1;case 78:if(e.isClassLike(t.parent))return e.Debug.assert(t.parent.name===t),2;default:return 0}}(r):0,a,o,l,s,u),f=q(s)?e.find(c.declarations,e.isExportSpecifier):void 0;if(f)C(f.name,c,f,d.createSearch(r,t,void 0),d,!0,!0);else if(r&&88===r.kind)N(r,c,d),g(r,c,{exportingModuleSymbol:e.Debug.checkDefined(c.parent,"Expected export symbol to have a parent"),exportKind:1},d);else{var _=d.createSearch(r,c,void 0,{allSearchSymbols:r?M(c,r,a,2===s.use,!!s.providePrefixAndSuffixTextForRename,!!s.implementations):[c]});p(c,d,_)}return u}function p(t,r,n){var i=function(t){var r=t.declarations,n=t.flags,i=t.parent,a=t.valueDeclaration;if(a&&(209===a.kind||223===a.kind))return a;if(!r)return;if(8196&n){var o=e.find(r,(function(t){return e.hasEffectiveModifier(t,8)||e.isPrivateIdentifierPropertyDeclaration(t)}));return o?e.getAncestor(o,254):void 0}if(r.some(e.isObjectBindingElementWithoutPropertyName))return;var s,c=i&&!(262144&t.flags);if(c&&(!e.isExternalModuleSymbol(i)||i.globalExports))return;for(var l=0,u=r;l<u.length;l++){var d=u[l],p=e.getContainerNode(d);if(s&&s!==p)return;if(!p||300===p.kind&&!e.isExternalOrCommonJsModule(p))return;if(s=p,e.isFunctionExpression(s))for(var f=void 0;f=e.getNextJSDocCommentLocation(s);)s=f}return c?s.getSourceFile():s}(t);if(i)D(i,i.getSourceFile(),n,r,!(e.isSourceFile(i)&&!e.contains(r.sourceFiles,i)));else for(var a=0,o=r.sourceFiles;a<o.length;a++){var s=o[a];r.cancellationToken.throwIfCancellationRequested(),v(s,n,r)}}var f;r.getReferencedSymbolsForNode=function(t,r,c,p,f,m,g){var _,h;if(void 0===m&&(m={}),void 0===g&&(g=new e.Set(p.map((function(e){return e.fileName})))),1===m.use?r=e.getAdjustedReferenceLocation(r):2===m.use&&(r=e.getAdjustedRenameLocation(r)),e.isSourceFile(r)){var y=e.GoToDefinition.getReferenceAtPosition(r,t,c);if(!y)return;var v=c.getTypeChecker().getMergedSymbol(y.file.symbol);if(v)return l(c,v,!1,p,g);if(!(C=c.getFileIncludeReasons()))return;return[{definition:{type:5,reference:y.reference,file:r},references:i(y.file,C,c)||e.emptyArray}]}if(!m.implementations){var b=function(t,r,i){if(e.isTypeKeyword(t.kind)){if(114===t.kind&&e.isVoidExpression(t.parent))return;if(143===t.kind&&!u(t))return;return function(t,r,i,a){var o=e.flatMap(t,(function(t){return i.throwIfCancellationRequested(),e.mapDefined(k(t,e.tokenToString(r),t),(function(e){if(e.kind===r&&(!a||a(e)))return n(e)}))}));return o.length?[{definition:{type:2,node:o[0].node},references:o}]:void 0}(r,t.kind,i,143===t.kind?u:void 0)}if(e.isJumpStatementTarget(t)){var a=e.getTargetLabel(t.parent,t.text);return a&&E(a.parent,a)}if(e.isLabelOfLabeledStatement(t))return E(t.parent,t);if(e.isThis(t))return function(t,r,i){var a=e.getThisContainer(t,!1),o=32;switch(a.kind){case 166:case 165:if(e.isObjectLiteralMethod(a))break;case 164:case 163:case 167:case 168:case 169:o&=e.getSyntacticModifierFlags(a),a=a.parent;break;case 300:if(e.isExternalModule(a)||R(t))return;case 253:case 209:break;default:return}var s=e.flatMap(300===a.kind?r:[a.getSourceFile()],(function(t){return i.throwIfCancellationRequested(),k(t,"this",e.isSourceFile(a)?t:a).filter((function(t){if(!e.isThis(t))return!1;var r=e.getThisContainer(t,!1);switch(a.kind){case 209:case 253:return a.symbol===r.symbol;case 166:case 165:return e.isObjectLiteralMethod(a)&&a.symbol===r.symbol;case 223:case 254:case 255:return r.parent&&a.symbol===r.parent.symbol&&(32&e.getSyntacticModifierFlags(r))===o;case 300:return 300===r.kind&&!e.isExternalModule(r)&&!R(t)}}))})).map((function(e){return n(e)})),c=e.firstDefined(s,(function(t){return e.isParameter(t.node.parent)?t.node:void 0}));return[{definition:{type:3,node:c||t},references:s}]}(t,r,i);if(106===t.kind)return function(t){var r=e.getSuperContainer(t,!1);if(!r)return;var i=32;switch(r.kind){case 164:case 163:case 166:case 165:case 167:case 168:case 169:i&=e.getSyntacticModifierFlags(r),r=r.parent;break;default:return}var a=r.getSourceFile(),o=e.mapDefined(k(a,"super",r),(function(t){if(106===t.kind){var a=e.getSuperContainer(t,!1);return a&&(32&e.getSyntacticModifierFlags(a))===i&&a.parent.symbol===r.symbol?n(t):void 0}}));return[{definition:{type:0,symbol:r.symbol},references:o}]}(t);return}(r,p,f);if(b)return b}var x=c.getTypeChecker(),S=x.getSymbolAtLocation(e.isConstructorDeclaration(r)&&r.parent.name||r);if(S){if("export="===S.escapedName)return l(c,S.parent,!1,p,g);var D=o(S,c,p,f,m,g);if(D&&!(33554432&S.flags))return D;var w=a(r,S,x),T=w&&o(w,c,p,f,m,g);return s(c,D,d(S,r,p,g,x,f,m),T)}if(!m.implementations&&e.isStringLiteralLike(r)){if(e.isRequireCall(r.parent,!0)||e.isExternalModuleReference(r.parent)||e.isImportDeclaration(r.parent)||e.isImportCall(r.parent)){var C=c.getFileIncludeReasons(),A=null===(h=null===(_=r.getSourceFile().resolvedModules)||void 0===_?void 0:_.get(r.text))||void 0===h?void 0:h.resolvedFileName,N=A?c.getSourceFile(A):void 0;if(N)return[{definition:{type:4,node:r},references:i(N,C,c)||e.emptyArray}]}return function(t,r,i,a){var o=e.getContextualTypeOrAncestorTypeNodeType(t,i),s=e.flatMap(r,(function(r){return a.throwIfCancellationRequested(),e.mapDefined(k(r,t.text),(function(r){if(e.isStringLiteralLike(r)&&r.text===t.text){if(!o)return n(r,2);var a=e.getContextualTypeOrAncestorTypeNodeType(r,i);if(o!==i.getStringType()&&o===a)return n(r,2)}}))}));return[{definition:{type:4,node:t},references:s}]}(r,p,x,f)}},r.getReferencesForFileName=function(t,r,n,a){var o,s;void 0===a&&(a=new e.Set(n.map((function(e){return e.fileName}))));var c=null===(o=r.getSourceFile(t))||void 0===o?void 0:o.symbol;if(c)return(null===(s=l(r,c,!1,n,a)[0])||void 0===s?void 0:s.references)||e.emptyArray;var u=r.getFileIncludeReasons(),d=r.getSourceFile(t);return d&&u&&i(d,u,r)||e.emptyArray},function(e){e[e.None=0]="None",e[e.Constructor=1]="Constructor",e[e.Class=2]="Class"}(f||(f={}));var m=function(){function r(t,r,n,i,a,o,s,c){this.sourceFiles=t,this.sourceFilesSet=r,this.specialSearchKind=n,this.checker=i,this.cancellationToken=a,this.searchMeaning=o,this.options=s,this.result=c,this.inheritsFromCache=new e.Map,this.markSeenContainingTypeReference=e.nodeSeenTracker(),this.markSeenReExportRHS=e.nodeSeenTracker(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}return r.prototype.includesSourceFile=function(e){return this.sourceFilesSet.has(e.fileName)},r.prototype.getImportSearches=function(e,r){return this.importTracker||(this.importTracker=t.createImportTracker(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(e,r,2===this.options.use)},r.prototype.createSearch=function(t,r,n,i){void 0===i&&(i={});var a=i.text,o=void 0===a?e.stripQuotes(e.symbolName(e.getLocalSymbolForExportDefault(r)||function(t){if(33555968&t.flags){var r=t.declarations&&e.find(t.declarations,(function(t){return!e.isSourceFile(t)&&!e.isModuleDeclaration(t)}));return r&&r.symbol}}(r)||r)):a,s=i.allSearchSymbols,c=void 0===s?[r]:s,l=e.escapeLeadingUnderscores(o),u=this.options.implementations&&t?function(t,r,n){var i=e.isRightSideOfPropertyAccess(t)?t.parent:void 0,a=i&&n.getTypeAtLocation(i.expression),o=e.mapDefined(a&&(a.isUnionOrIntersection()?a.types:a.symbol===r.parent?void 0:[a]),(function(e){return e.symbol&&96&e.symbol.flags?e.symbol:void 0}));return 0===o.length?void 0:o}(t,r,this.checker):void 0;return{symbol:r,comingFrom:n,text:o,escapedText:l,parents:u,allSearchSymbols:c,includes:function(t){return e.contains(c,t)}}},r.prototype.referenceAdder=function(t){var r=e.getSymbolId(t),i=this.symbolIdToReferences[r];return i||(i=this.symbolIdToReferences[r]=[],this.result.push({definition:{type:0,symbol:t},references:i})),function(e,t){return i.push(n(e,t))}},r.prototype.addStringOrCommentReference=function(e,t){this.result.push({definition:void 0,references:[{kind:0,fileName:e,textSpan:t}]})},r.prototype.markSearchedSymbols=function(t,r){for(var n=e.getNodeId(t),i=this.sourceFileToSeenSymbols[n]||(this.sourceFileToSeenSymbols[n]=new e.Set),a=!1,o=0,s=r;o<s.length;o++){var c=s[o];a=e.tryAddToSet(i,e.getSymbolId(c))||a}return a},r}();function g(e,t,r,n){var i=n.getImportSearches(t,r),a=i.importSearches,o=i.singleReferences,s=i.indirectUsers;if(o.length)for(var c=n.referenceAdder(t),l=0,u=o;l<u.length;l++){var d=u[l];_(d,n)&&c(d)}for(var p=0,f=a;p<f.length;p++){var m=f[p],g=m[0],h=m[1];S(g.getSourceFile(),n.createSearch(g,h,1),n)}if(s.length){var y=void 0;switch(r.exportKind){case 0:y=n.createSearch(e,t,1);break;case 1:y=2===n.options.use?void 0:n.createSearch(e,t,1,{text:"default"})}if(y)for(var b=0,k=s;b<k.length;b++){v(k[b],y,n)}}}function _(t,r){return!!w(t,r)&&(2!==r.options.use||!!e.isIdentifier(t)&&!(e.isImportOrExportSpecifier(t.parent)&&"default"===t.escapedText))}function h(e,t){if(e.declarations)for(var r=0,n=e.declarations;r<n.length;r++){var i=n[r],a=i.getSourceFile();S(a,t.createSearch(i,e,0),t,t.includesSourceFile(a))}}function v(t,r,n){void 0!==e.getNameTable(t).get(r.escapedText)&&S(t,r,n)}function b(t,r,n,i,a){void 0===a&&(a=n);var o=e.isParameterPropertyDeclaration(t.parent,t.parent.parent)?e.first(r.getSymbolsOfParameterPropertyDeclaration(t.parent,t.text)):r.getSymbolAtLocation(t);if(o)for(var s=0,c=k(n,o.name,a);s<c.length;s++){var l=c[s];if(e.isIdentifier(l)&&l!==t&&l.escapedText===t.escapedText){var u=r.getSymbolAtLocation(l);if(u===o||r.getShorthandAssignmentValueSymbol(l.parent)===o||e.isExportSpecifier(l.parent)&&A(l,u,l.parent,r)===o){var d=i(l);if(d)return d}}}}function k(t,r,n){return void 0===n&&(n=t),x(t,r,n).map((function(r){return e.getTouchingPropertyName(t,r)}))}function x(t,r,n){void 0===n&&(n=t);var i=[];if(!r||!r.length)return i;for(var a=t.text,o=a.length,s=r.length,c=a.indexOf(r,n.pos);c>=0&&!(c>n.end);){var l=c+s;0!==c&&e.isIdentifierPart(a.charCodeAt(c-1),99)||l!==o&&e.isIdentifierPart(a.charCodeAt(l),99)||i.push(c),c=a.indexOf(r,c+s+1)}return i}function E(t,r){var i=t.getSourceFile(),a=r.text,o=e.mapDefined(k(i,a,t),(function(t){return t===r||e.isJumpStatementTarget(t)&&e.getTargetLabel(t,a)===r?n(t):void 0}));return[{definition:{type:1,node:r},references:o}]}function S(e,t,r,n){return void 0===n&&(n=!0),r.cancellationToken.throwIfCancellationRequested(),D(e,e,t,r,n)}function D(e,t,r,n,i){if(n.markSearchedSymbols(t,r.allSearchSymbols))for(var a=0,o=x(t,r.text,e);a<o.length;a++){T(t,o[a],r,n,i)}}function w(t,r){return!!(e.getMeaningFromLocation(t)&r.searchMeaning)}function T(r,n,i,a,o){var s=e.getTouchingPropertyName(r,n);if(function(t,r){switch(t.kind){case 79:case 78:return t.text.length===r.length;case 14:case 10:var n=t;return(e.isLiteralNameOfPropertyDeclarationOrIndexAccess(n)||e.isNameOfModuleDeclaration(t)||e.isExpressionOfExternalModuleImportEqualsDeclaration(t)||e.isCallExpression(t.parent)&&e.isBindableObjectDefinePropertyCall(t.parent)&&t.parent.arguments[1]===t)&&n.text.length===r.length;case 8:return e.isLiteralNameOfPropertyDeclarationOrIndexAccess(t)&&t.text.length===r.length;case 88:return 7===r.length;default:return!1}}(s,i.text)){if(w(s,a)){var c=a.checker.getSymbolAtLocation(s);if(c){var l=s.parent;if(!e.isImportSpecifier(l)||l.propertyName!==s){if(e.isExportSpecifier(l))return e.Debug.assert(78===s.kind),void C(s,c,l,i,a,o);var u=function(t,r,n,i){var a=i.checker;return L(r,n,a,!1,2!==i.options.use||!!i.options.providePrefixAndSuffixTextForRename,(function(n,i,a,o){return a&&j(r)!==j(a)&&(a=void 0),t.includes(a||i||n)?{symbol:!i||6&e.getCheckFlags(n)?n:i,kind:o}:void 0}),(function(e){return!(t.parents&&!t.parents.some((function(t){return O(e.parent,t,i.inheritsFromCache,a)})))}))}(i,c,s,a);if(u){switch(a.specialSearchKind){case 0:o&&N(s,u,a);break;case 1:!function(t,r,n,i){e.isNewExpressionTarget(t)&&N(t,n.symbol,i);var a=function(){return i.referenceAdder(n.symbol)};if(e.isClassLike(t.parent))e.Debug.assert(88===t.kind||t.parent.name===t),function(t,r,n){var i=P(t);if(i&&i.declarations)for(var a=0,o=i.declarations;a<o.length;a++){var s=o[a],c=e.findChildOfKind(s,133,r);e.Debug.assert(167===s.kind&&!!c),n(c)}t.exports&&t.exports.forEach((function(t){var r=t.valueDeclaration;if(r&&166===r.kind){var i=r.body;i&&U(i,108,(function(t){e.isNewExpressionTarget(t)&&n(t)}))}}))}(n.symbol,r,a());else{var o=(s=t,e.tryGetClassExtendingExpressionWithTypeArguments(e.climbPastPropertyAccess(s).parent));o&&(function(t,r){var n=P(t.symbol);if(!n||!n.declarations)return;for(var i=0,a=n.declarations;i<a.length;i++){var o=a[i];e.Debug.assert(167===o.kind);var s=o.body;s&&U(s,106,(function(t){e.isCallExpressionTarget(t)&&r(t)}))}}(o,a()),function(e,t){if(function(e){return!!P(e.symbol)}(e))return;var r=e.symbol,n=t.createSearch(void 0,r,void 0);p(r,t,n)}(o,i))}var s}(s,r,i,a);break;case 2:!function(t,r,n){N(t,r.symbol,n);var i=t.parent;if(2===n.options.use||!e.isClassLike(i))return;e.Debug.assert(i.name===t);for(var a=n.referenceAdder(r.symbol),o=0,s=i.members;o<s.length;o++){var c=s[o];e.isMethodOrAccessor(c)&&e.hasSyntacticModifier(c,32)&&(c.body&&c.body.forEachChild((function t(r){108===r.kind?a(r):e.isFunctionLike(r)||e.isClassLike(r)||r.forEachChild(t)})))}}(s,i,a);break;default:e.Debug.assertNever(a.specialSearchKind)}!function(e,r,n,i){var a=t.getImportOrExportSymbol(e,r,i.checker,1===n.comingFrom);if(!a)return;var o=a.symbol;0===a.kind?q(i.options)||h(o,i):g(e,o,a.exportInfo,i)}(s,c,i,a)}else!function(t,r,n){var i=t.flags,a=t.valueDeclaration,o=n.checker.getShorthandAssignmentValueSymbol(a),s=a&&e.getNameOfDeclaration(a);33554432&i||!s||!r.includes(o)||N(s,o,n)}(c,i,a)}}}}else!a.options.implementations&&(a.options.findInStrings&&e.isInString(r,n)||a.options.findInComments&&e.isInNonReferenceComment(r,n))&&a.addStringOrCommentReference(r.fileName,e.createTextSpan(n,i.text.length))}function C(r,n,i,a,o,s,c){e.Debug.assert(!c||!!o.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");var l=i.parent,u=i.propertyName,d=i.name,p=l.parent,f=A(r,n,i,o.checker);if(c||a.includes(f)){if(u?r===u?(p.moduleSpecifier||b(),s&&2!==o.options.use&&o.markSeenReExportRHS(d)&&N(d,e.Debug.checkDefined(i.symbol),o)):o.markSeenReExportRHS(r)&&b():2===o.options.use&&"default"===d.escapedText||b(),!q(o.options)||c){var m=88===r.originalKeywordKind||88===i.name.originalKeywordKind?1:0,_=e.Debug.checkDefined(i.symbol),y=t.getExportInfo(_,m,o.checker);y&&g(r,_,y,o)}if(1!==a.comingFrom&&p.moduleSpecifier&&!u&&!q(o.options)){var v=o.checker.getExportSpecifierLocalTargetSymbol(i);v&&h(v,o)}}function b(){s&&N(r,f,o)}}function A(t,r,n,i){return function(t,r){var n=r.parent,i=r.propertyName,a=r.name;return e.Debug.assert(i===t||a===t),i?i===t:!n.parent.moduleSpecifier}(t,n)&&i.getExportSpecifierLocalTargetSymbol(n)||r}function N(t,r,n){var i="kind"in r?r:{kind:void 0,symbol:r},a=i.kind,o=i.symbol,s=n.referenceAdder(o);n.options.implementations?function(t,r,n){if(e.isDeclarationName(t)&&(i=t.parent,8388608&i.flags?!e.isInterfaceDeclaration(i)&&!e.isTypeAliasDeclaration(i):e.isVariableLike(i)?e.hasInitializer(i):e.isFunctionLikeDeclaration(i)?i.body:e.isClassLike(i)||e.isModuleOrEnumDeclaration(i)))return void r(t);var i;if(78!==t.kind)return;292===t.parent.kind&&z(t,n.checker,r);var a=I(t);if(a)return void r(a);var o=e.findAncestor(t,(function(t){return!e.isQualifiedName(t.parent)&&!e.isTypeNode(t.parent)&&!e.isTypeElement(t.parent)})),s=o.parent;if(e.hasType(s)&&s.type===o&&n.markSeenContainingTypeReference(s))if(e.hasInitializer(s))l(s.initializer);else if(e.isFunctionLike(s)&&s.body){var c=s.body;232===c.kind?e.forEachReturnStatement(c,(function(e){e.expression&&l(e.expression)})):l(c)}else e.isAssertionExpression(s)&&l(s.expression);function l(e){F(e)&&r(e)}}(t,s,n):s(t,a)}function P(e){return e.members&&e.members.get("__constructor")}function I(t){return e.isIdentifier(t)||e.isPropertyAccessExpression(t)?I(t.parent):e.isExpressionWithTypeArguments(t)?e.tryCast(t.parent.parent,e.isClassLike):void 0}function F(e){switch(e.kind){case 208:return F(e.expression);case 210:case 209:case 201:case 223:case 200:return!0;default:return!1}}function O(t,r,n,i){if(t===r)return!0;var a=e.getSymbolId(t)+","+e.getSymbolId(r),o=n.get(a);if(void 0!==o)return o;n.set(a,!1);var s=!!t.declarations&&t.declarations.some((function(t){return e.getAllSuperTypeNodes(t).some((function(e){var t=i.getTypeAtLocation(e);return!!t&&!!t.symbol&&O(t.symbol,r,n,i)}))}));return n.set(a,s),s}function R(e){return 78===e.kind&&161===e.parent.kind&&e.parent.name===e}function M(e,t,r,n,i,a){var o=[];return L(e,t,r,n,!(n&&i),(function(t,r,n){n&&j(e)!==j(n)&&(n=void 0),o.push(n||r||t)}),(function(){return!a})),o}function L(t,r,n,i,o,s,c){var l=e.getContainingObjectLiteralElement(r);if(l){var u=n.getShorthandAssignmentValueSymbol(r.parent);if(u&&i)return s(u,void 0,void 0,3);var d=n.getContextualType(l.parent),p=d&&e.firstDefined(e.getPropertySymbolsFromContextualType(l,n,d,!0),(function(e){return S(e,4)}));if(p)return p;var f=function(t,r){return e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent.parent)?r.getPropertySymbolOfDestructuringAssignment(t):void 0}(r,n),m=f&&s(f,void 0,void 0,4);if(m)return m;var g=u&&s(u,void 0,void 0,3);if(g)return g}var _=a(r,t,n);if(_){var h=s(_,void 0,void 0,1);if(h)return h}var y=S(t);if(y)return y;if(t.valueDeclaration&&e.isParameterPropertyDeclaration(t.valueDeclaration,t.valueDeclaration.parent)){var v=n.getSymbolsOfParameterPropertyDeclaration(e.cast(t.valueDeclaration,e.isParameter),t.name);return e.Debug.assert(2===v.length&&!!(1&v[0].flags)&&!!(4&v[1].flags)),S(1&t.flags?v[1]:v[0])}var b=e.getDeclarationOfKind(t,273);if(!i||b&&!b.propertyName){var k=b&&n.getExportSpecifierLocalTargetSymbol(b);if(k){var x=s(k,void 0,void 0,1);if(x)return x}}if(!i){var E=void 0;return(E=o?e.isObjectBindingElementWithoutPropertyName(r.parent)?e.getPropertySymbolFromBindingElement(n,r.parent):void 0:D(t,n))&&S(E,4)}if(e.Debug.assert(i),o)return(E=D(t,n))&&S(E,4);function S(t,r){return e.firstDefined(n.getRootSymbols(t),(function(i){return s(t,i,void 0,r)||(i.parent&&96&i.parent.flags&&c(i)?function(t,r,n,i){var a=new e.Map;return o(t);function o(t){if(96&t.flags&&e.addToSeen(a,e.getSymbolId(t)))return e.firstDefined(t.declarations,(function(t){return e.firstDefined(e.getAllSuperTypeNodes(t),(function(t){var a=n.getTypeAtLocation(t),s=a&&a.symbol&&n.getPropertyOfType(a,r);return a&&s&&(e.firstDefined(n.getRootSymbols(s),i)||o(a.symbol))}))}))}}(i.parent,i.name,n,(function(e){return s(t,i,e,r)})):void 0)}))}function D(t,r){var n=e.getDeclarationOfKind(t,199);if(n&&e.isObjectBindingElementWithoutPropertyName(n))return e.getPropertySymbolFromBindingElement(r,n)}}function j(t){return!!t.valueDeclaration&&!!(32&e.getEffectiveModifierFlags(t.valueDeclaration))}function B(t,r){var n=e.getMeaningFromLocation(t),i=r.declarations;if(i){var a=void 0;do{a=n;for(var o=0,s=i;o<s.length;o++){var c=s[o],l=e.getMeaningFromDeclaration(c);l&n&&(n|=l)}}while(n!==a)}return n}function z(t,r,n){var i=r.getSymbolAtLocation(t),a=r.getShorthandAssignmentValueSymbol(i.valueDeclaration);if(a)for(var o=0,s=a.getDeclarations();o<s.length;o++){var c=s[o];1&e.getMeaningFromDeclaration(c)&&n(c)}}function U(t,r,n){e.forEachChild(t,(function(e){e.kind===r&&n(e),U(e,r,n)}))}function q(e){return 2===e.use&&e.providePrefixAndSuffixTextForRename}r.eachExportReference=function(r,n,i,a,o,s,c,l){for(var u=t.createImportTracker(r,new e.Set(r.map((function(e){return e.fileName}))),n,i)(a,{exportKind:c?1:0,exportingModuleSymbol:o},!1),d=u.importSearches,p=u.indirectUsers,f=0,m=d;f<m.length;f++){l(m[f][0])}for(var g=0,_=p;g<_.length;g++)for(var h=0,y=k(_[g],c?"default":s);h<y.length;h++){var v=y[h];e.isIdentifier(v)&&!e.isImportOrExportSpecifier(v.parent)&&n.getSymbolAtLocation(v)===a&&l(v)}},r.isSymbolReferencedInFile=function(e,t,r,n){return void 0===n&&(n=r),b(e,t,r,(function(){return!0}),n)||!1},r.eachSymbolReferenceInFile=b,r.someSignatureUsage=function(t,r,n,i){if(!t.name||!e.isIdentifier(t.name))return!1;for(var a=e.Debug.checkDefined(n.getSymbolAtLocation(t.name)),o=0,s=r;o<s.length;o++)for(var c=0,l=k(s[o],a.name);c<l.length;c++){var u=l[c];if(e.isIdentifier(u)&&u!==t.name&&u.escapedText===t.name.escapedText){var d=e.climbPastPropertyAccess(u),p=e.isCallExpression(d.parent)&&d.parent.expression===d?d.parent:void 0,f=n.getSymbolAtLocation(u);if(f&&n.getRootSymbols(f).some((function(e){return e===a}))&&i(u,p))return!0}}return!1},r.getIntersectingMeaningFromDeclarations=B,r.getReferenceEntriesForShorthandPropertyAssignment=z}(r=t.Core||(t.Core={}))}(e.FindAllReferences||(e.FindAllReferences={}))}(d||(d={})),function(e){!function(t){function r(t){return(e.isFunctionExpression(t)||e.isArrowFunction(t)||e.isClassExpression(t))&&e.isVariableDeclaration(t.parent)&&t===t.parent.initializer&&e.isIdentifier(t.parent.name)&&!!(2&e.getCombinedNodeFlags(t.parent))}function n(t){return e.isSourceFile(t)||e.isModuleDeclaration(t)||e.isFunctionDeclaration(t)||e.isFunctionExpression(t)||e.isClassDeclaration(t)||e.isClassExpression(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isGetAccessorDeclaration(t)||e.isSetAccessorDeclaration(t)}function i(t){return e.isSourceFile(t)||e.isModuleDeclaration(t)&&e.isIdentifier(t.name)||e.isFunctionDeclaration(t)||e.isClassDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isGetAccessorDeclaration(t)||e.isSetAccessorDeclaration(t)||function(t){return(e.isFunctionExpression(t)||e.isClassExpression(t))&&e.isNamedDeclaration(t)}(t)||r(t)}function a(t){return e.isSourceFile(t)?t:e.isNamedDeclaration(t)?t.name:r(t)?t.parent.name:e.Debug.checkDefined(t.modifiers&&e.find(t.modifiers,o))}function o(e){return 88===e.kind}function s(e,t){var r=a(t);return r&&e.getSymbolAtLocation(r)}function c(t,r){if(r.body)return r;if(e.isConstructorDeclaration(r))return e.getFirstConstructorWithBody(r.parent);if(e.isFunctionDeclaration(r)||e.isMethodDeclaration(r)){var n=s(t,r);return n&&n.valueDeclaration&&e.isFunctionLikeDeclaration(n.valueDeclaration)&&n.valueDeclaration.body?n.valueDeclaration:void 0}return r}function l(t,r){var n,a=s(t,r);if(a&&a.declarations){var o=e.indicesOf(a.declarations),c=e.map(a.declarations,(function(e){return{file:e.getSourceFile().fileName,pos:e.pos}}));o.sort((function(t,r){return e.compareStringsCaseSensitive(c[t].file,c[r].file)||c[t].pos-c[r].pos}));for(var l=void 0,u=0,d=e.map(o,(function(e){return a.declarations[e]}));u<d.length;u++){var p=d[u];i(p)&&(l&&l.parent===p.parent&&l.end===p.pos||(n=e.append(n,p)),l=p)}}return n}function u(t,r){var n,i,a;return e.isFunctionLikeDeclaration(r)?null!==(i=null!==(n=c(t,r))&&void 0!==n?n:l(t,r))&&void 0!==i?i:r:null!==(a=l(t,r))&&void 0!==a?a:r}function d(t,a){for(var o=t.getTypeChecker(),s=!1;;){if(i(a))return u(o,a);var c;if(n(a))return(c=e.findAncestor(a,i))&&u(o,c);if(e.isDeclarationName(a))return i(a.parent)?u(o,a.parent):n(a.parent)?(c=e.findAncestor(a.parent,i))&&u(o,c):e.isVariableDeclaration(a.parent)&&a.parent.initializer&&r(a.parent.initializer)?a.parent.initializer:void 0;if(e.isConstructorDeclaration(a))return i(a.parent)?a.parent:void 0;if(e.isVariableDeclaration(a)&&a.initializer&&r(a.initializer))return a.initializer;if(!s){var l=o.getSymbolAtLocation(a);if(l&&(2097152&l.flags&&(l=o.getAliasedSymbol(l)),l.valueDeclaration)){s=!0,a=l.valueDeclaration;continue}}return}}function p(t,n){var i=n.getSourceFile(),a=function(t,n){if(e.isSourceFile(n))return{text:n.fileName,pos:0,end:0};if((e.isFunctionDeclaration(n)||e.isClassDeclaration(n))&&!e.isNamedDeclaration(n)){var i=n.modifiers&&e.find(n.modifiers,o);if(i)return{text:"default",pos:i.getStart(),end:i.getEnd()}}var a=r(n)?n.parent.name:e.Debug.checkDefined(e.getNameOfDeclaration(n),"Expected call hierarchy item to have a name"),s=e.isIdentifier(a)?e.idText(a):e.isStringOrNumericLiteralLike(a)?a.text:e.isComputedPropertyName(a)&&e.isStringOrNumericLiteralLike(a.expression)?a.expression.text:void 0;if(void 0===s){var c=t.getTypeChecker(),l=c.getSymbolAtLocation(a);l&&(s=c.symbolToString(l,n))}if(void 0===s){var u=e.createPrinter({removeComments:!0,omitTrailingSemicolon:!0});s=e.usingSingleLineStringWriter((function(e){return u.writeNode(4,n,n.getSourceFile(),e)}))}return{text:s,pos:a.getStart(),end:a.getEnd()}}(t,n),s=function(t){var n,i;if(r(t))return e.isModuleBlock(t.parent.parent.parent.parent)&&e.isIdentifier(t.parent.parent.parent.parent.parent.name)?t.parent.parent.parent.parent.parent.name.getText():void 0;switch(t.kind){case 168:case 169:case 166:return 201===t.parent.kind?null===(n=e.getAssignedName(t.parent))||void 0===n?void 0:n.getText():null===(i=e.getNameOfDeclaration(t.parent))||void 0===i?void 0:i.getText();case 253:case 254:case 255:case 259:if(e.isModuleBlock(t.parent)&&e.isIdentifier(t.parent.parent.name))return t.parent.parent.name.getText()}}(n),c=e.getNodeKind(n),l=e.getNodeModifiers(n),u=e.createTextSpanFromBounds(e.skipTrivia(i.text,n.getFullStart(),!1,!0),n.getEnd()),d=e.createTextSpanFromBounds(a.pos,a.end);return{file:i.fileName,kind:c,kindModifiers:l,name:a.text,containerName:s,span:u,selectionSpan:d}}function f(e){return void 0!==e}function m(t){if(1===t.kind){var r=t.node;if(e.isCallOrNewExpressionTarget(r,!0,!0)||e.isTaggedTemplateTag(r,!0,!0)||e.isDecoratorTarget(r,!0,!0)||e.isJsxOpeningLikeElementTagName(r,!0,!0)||e.isRightSideOfPropertyAccess(r)||e.isArgumentExpressionOfElementAccess(r)){var n=r.getSourceFile();return{declaration:e.findAncestor(r,i)||n,range:e.createTextRangeFromNode(r,n)}}}}function g(t){return e.getNodeId(t.declaration)}function _(t,r){var n=[],a=function(t,r){function n(n){var i=e.isTaggedTemplateExpression(n)?n.tag:e.isJsxOpeningLikeElement(n)?n.tagName:e.isAccessExpression(n)?n:n.expression,a=d(t,i);if(a){var o=e.createTextRangeFromNode(i,n.getSourceFile());if(e.isArray(a))for(var s=0,c=a;s<c.length;s++){var l=c[s];r.push({declaration:l,range:o})}else r.push({declaration:a,range:o})}}return function t(r){if(r&&!(8388608&r.flags))if(i(r)){if(e.isClassLike(r))for(var a=0,o=r.members;a<o.length;a++){var s=o[a];s.name&&e.isComputedPropertyName(s.name)&&t(s.name.expression)}}else{switch(r.kind){case 78:case 263:case 264:case 270:case 256:case 257:return;case 207:case 226:return void t(r.expression);case 251:case 161:return t(r.name),void t(r.initializer);case 204:case 205:return n(r),t(r.expression),void e.forEach(r.arguments,t);case 206:return n(r),t(r.tag),void t(r.template);case 278:case 277:return n(r),t(r.tagName),void t(r.attributes);case 162:return n(r),void t(r.expression);case 202:case 203:n(r),e.forEachChild(r,t)}e.isPartOfTypeNode(r)||e.forEachChild(r,t)}}}(t,n);switch(r.kind){case 300:!function(t,r){e.forEach(t.statements,r)}(r,a);break;case 259:!function(t,r){!e.hasSyntacticModifier(t,2)&&t.body&&e.isModuleBlock(t.body)&&e.forEach(t.body.statements,r)}(r,a);break;case 253:case 209:case 210:case 166:case 168:case 169:!function(t,r,n){var i=c(t,r);i&&(e.forEach(i.parameters,n),n(i.body))}(t.getTypeChecker(),r,a);break;case 254:case 223:case 255:!function(t,r){e.forEach(t.decorators,r);var n=e.getClassExtendsHeritageElement(t);n&&r(n.expression);for(var i=0,a=t.members;i<a.length;i++){var o=a[i];e.forEach(o.decorators,r),e.isPropertyDeclaration(o)?r(o.initializer):e.isConstructorDeclaration(o)&&o.body&&(e.forEach(o.parameters,r),r(o.body))}}(r,a);break;default:e.Debug.assertNever(r)}return n}t.resolveCallHierarchyDeclaration=d,t.createCallHierarchyItem=p,t.getIncomingCalls=function(t,r,n){if(e.isSourceFile(r)||e.isModuleDeclaration(r))return[];var i=a(r),o=e.filter(e.FindAllReferences.findReferenceOrRenameEntries(t,n,t.getSourceFiles(),i,0,{use:1},m),f);return o?e.group(o,g,(function(r){return function(t,r){return n=p(t,r[0].declaration),i=e.map(r,(function(t){return e.createTextSpanFromRange(t.range)})),{from:n,fromSpans:i};var n,i}(t,r)})):[]},t.getOutgoingCalls=function(t,r){return 8388608&r.flags||e.isMethodSignature(r)?[]:e.group(_(t,r),g,(function(r){return function(t,r){return n=p(t,r[0].declaration),i=e.map(r,(function(t){return e.createTextSpanFromRange(t.range)})),{to:n,fromSpans:i};var n,i}(t,r)}))}}(e.CallHierarchy||(e.CallHierarchy={}))}(d||(d={})),function(e){function t(t,n,i,a){var o=i(t);return function(t){var s=a&&a.tryGetSourcePosition({fileName:t,pos:0}),c=function(t){if(i(t)===o)return n;var r=e.tryRemoveDirectoryPrefix(t,o,i);return void 0===r?void 0:n+"/"+r}(s?s.fileName:t);return s?void 0===c?void 0:function(t,n,i,a){var o=e.getRelativePathFromFile(t,n,a);return r(e.getDirectoryPath(i),o)}(s.fileName,c,t,i):c}}function r(t,r){return e.ensurePathIsNonModuleName(function(t,r){return e.normalizePath(e.combinePaths(t,r))}(t,r))}function n(t,r,n,i,a){if(r){if(r.resolvedModule){var o=l(r.resolvedModule.resolvedFileName);if(o)return o}var s=e.forEach(r.failedLookupLocations,(function(t){var r=n(t);return r&&e.find(i,(function(e){return e.fileName===r}))?c(t):void 0}))||e.pathIsRelative(t.text)&&e.forEach(r.failedLookupLocations,c);return s||r.resolvedModule&&{newFileName:r.resolvedModule.resolvedFileName,updated:!1}}function c(t){return e.endsWith(t,e.isOhpm(a)?"/oh-package.json5":"/package.json")?void 0:l(t)}function l(e){var t=n(e);return t&&{newFileName:t,updated:!0}}}function i(t,r){return e.createRange(t.getStart(r)+1,t.end-1)}function a(t,r){if(e.isObjectLiteralExpression(t))for(var n=0,i=t.properties;n<i.length;n++){var a=i[n];e.isPropertyAssignment(a)&&e.isStringLiteral(a.name)&&r(a,a.name.text)}}e.getEditsForFileRename=function(o,s,c,l,u,d,p){var f=e.hostUsesCaseSensitiveFileNames(l),m=e.createGetCanonicalFileName(f),g=t(s,c,m,p),_=t(c,s,m,p);return e.textChanges.ChangeTracker.with({host:l,formatContext:u,preferences:d},(function(t){!function(t,n,o,s,c,l,u){var d=t.getCompilerOptions().configFile;if(!d)return;var p=e.getDirectoryPath(d.fileName),f=e.getTsConfigObjectLiteralExpression(d);if(!f)return;function m(t){for(var r=!1,n=0,i=e.isArrayLiteralExpression(t.initializer)?t.initializer.elements:[t.initializer];n<i.length;n++){r=g(i[n])||r}return r}function g(t){if(!e.isStringLiteral(t))return!1;var a=r(p,t.text),s=o(a);return void 0!==s&&(n.replaceRangeWithText(d,i(t,d),_(s)),!0)}function _(t){return e.getRelativePathFromDirectory(p,t,!u)}a(f,(function(t,r){switch(r){case"files":case"include":case"exclude":if(!m(t)&&"include"===r&&e.isArrayLiteralExpression(t.initializer)){var i=e.mapDefined(t.initializer.elements,(function(t){return e.isStringLiteral(t)?t.text:void 0})),o=e.getFileMatcherPatterns(p,[],i,u,l);e.getRegexFromPattern(e.Debug.checkDefined(o.includeFilePattern),u).test(s)&&!e.getRegexFromPattern(e.Debug.checkDefined(o.includeFilePattern),u).test(c)&&n.insertNodeAfter(d,e.last(t.initializer.elements),e.factory.createStringLiteral(_(c)))}break;case"compilerOptions":a(t.initializer,(function(t,r){var n=e.getOptionFromName(r);n&&(n.isFilePath||"list"===n.type&&n.element.isFilePath)?m(t):"paths"===r&&a(t.initializer,(function(t){if(e.isArrayLiteralExpression(t.initializer))for(var r=0,n=t.initializer.elements;r<n.length;r++){g(n[r])}}))}))}}))}(o,t,g,s,c,l.getCurrentDirectory(),f),function(t,a,o,s,c,l){for(var u=t.getSourceFiles(),d=function(d){var p=o(d.fileName),f=null!=p?p:d.fileName,m=e.getDirectoryPath(f),g=s(d.fileName),_=g||d.fileName,h=e.getDirectoryPath(_),y=void 0!==p||void 0!==g;!function(t,r,n,a){for(var o=0,s=t.referencedFiles||e.emptyArray;o<s.length;o++){var c=s[o];void 0!==(d=n(c.fileName))&&d!==t.text.slice(c.pos,c.end)&&r.replaceRangeWithText(t,c,d)}for(var l=0,u=t.imports;l<u.length;l++){var d,p=u[l];void 0!==(d=a(p))&&d!==p.text&&r.replaceRangeWithText(t,i(p,t),d)}}(d,a,(function(t){if(e.pathIsRelative(t)){var n=r(h,t),i=o(n);return void 0===i?void 0:e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(m,i,l))}}),(function(r){var i=t.getTypeChecker().getSymbolAtLocation(r);if(!i||!i.declarations.some((function(t){return e.isAmbientModule(t)}))){var a=void 0!==g?n(r,e.resolveModuleName(r.text,_,t.getCompilerOptions(),c),o,u,t.getCompilerOptions().packageManagerType):function(t,r,i,a,o,s){if(t){var c=e.find(t.declarations,e.isSourceFile).fileName,l=s(c);return void 0===l?{newFileName:c,updated:!1}:{newFileName:l,updated:!0}}return n(r,o.resolveModuleNames?o.getResolvedModuleWithFailedLookupLocationsFromCache&&o.getResolvedModuleWithFailedLookupLocationsFromCache(r.text,i.fileName):a.getResolvedModuleWithFailedLookupLocationsFromCache(r.text,i.fileName),s,a.getSourceFiles(),a.getCompilerOptions().packageManagerType)}(i,r,d,t,c,o);return void 0!==a&&(a.updated||y&&e.pathIsRelative(r.text))?e.moduleSpecifiers.updateModuleSpecifier(t.getCompilerOptions(),l(f),a.newFileName,e.createModuleSpecifierResolutionHost(t,c),r.text):void 0}}))},p=0,f=u;p<f.length;p++){d(f[p])}}(o,t,g,_,l,m)}))},e.getPathUpdater=t}(d||(d={})),function(e){!function(t){function r(t,r,a){var o,d,p,f=n(r,a,t);if(f)return[(d=f.reference.fileName,p=f.file.fileName,{fileName:p,textSpan:e.createTextSpanFromBounds(0,0),kind:"script",name:d,containerName:void 0,containerKind:void 0})];var m=e.getTouchingPropertyName(r,a);if(m!==r){var g=m.parent,_=t.getTypeChecker();if(e.isJumpStatementTarget(m)){var h=e.getTargetLabel(m.parent,m.text);return h?[l(_,h,"label",m.text,void 0)]:void 0}var y=function(t,r){var n=r.getSymbolAtLocation(t);if(n&&2097152&n.flags&&function(t,r){if(78!==t.kind)return!1;if(t.parent===r)return!0;switch(r.kind){case 265:case 263:return!0;case 268:return 267===r.parent.kind;case 199:case 251:return e.isInJSFile(r)&&e.isRequireVariableDeclaration(r,!0);default:return!1}}(t,n.declarations[0])){var i=r.getAliasedSymbol(n);if(i.declarations)return i}return n}(m,_);if(!y)return function(t,r){if(!e.isPropertyAccessExpression(t.parent)||t.parent.name!==t)return;var n=r.getTypeAtLocation(t.parent.expression);return e.mapDefined(n.isUnionOrIntersection()?n.types:[n],(function(e){var t=r.getIndexInfoOfType(e,0);return t&&t.declaration&&u(r,t.declaration)}))}(m,_);if(204===g.kind||211===g.kind&&e.isCalledStructDeclaration(y.getDeclarations())){var v=y.getDeclarations();if((null==v?void 0:v.length)&&255===v[0].kind)return s(_,y,m)}var b=function(t,r){var n=function(t){var r=e.findAncestor(t,(function(t){return!e.isRightSideOfPropertyAccess(t)})),n=null==r?void 0:r.parent;return n&&e.isCallLikeExpression(n)&&e.getInvokedExpression(n)===r?n:void 0}(r),i=n&&t.getResolvedSignature(n);return e.tryCast(i&&i.declaration,(function(t){return e.isFunctionLike(t)&&!e.isFunctionTypeNode(t)}))}(_,m),k=t.getCompilerOptions();if(b&&(!e.isJsxOpeningLikeElement(m.parent)||!function(e){switch(e.kind){case 167:case 176:case 171:return!0;default:return!1}}(b))&&!e.isVirtualConstructor(_,b.symbol,b)){var x=u(_,b);if(_.getRootSymbols(y).some((function(t){return function(t,r){return t===r.symbol||t===r.symbol.parent||e.isAssignmentExpression(r.parent)||!e.isCallLikeExpression(r.parent)&&t===r.parent.symbol}(t,b)})))return[x];if(e.isIdentifier(m)&&e.isNewExpression(g)&&(null===(o=k.ets)||void 0===o?void 0:o.components.some((function(e){return e===m.escapedText.toString()}))))return[x];var E=s(_,y,m,b)||e.emptyArray;return e.isIdentifier(m)&&e.isEtsComponentExpression(g)?i([],E):106===m.kind?i([x],E):i(i([],E),[x])}if(292===m.parent.kind){var S=_.getShorthandAssignmentValueSymbol(y.valueDeclaration);return S?S.declarations.map((function(e){return c(e,_,S,m)})):[]}if(e.isPropertyName(m)&&e.isBindingElement(g)&&e.isObjectBindingPattern(g.parent)&&m===(g.propertyName||g.name)){var D=e.getNameFromPropertyName(m),w=_.getTypeAtLocation(g.parent);return void 0===D?e.emptyArray:e.flatMap(w.isUnion()?w.types:[w],(function(e){var t=e.getProperty(D);return t&&s(_,t,m)}))}var T=e.getContainingObjectLiteralElement(m);if(T){var C=T&&_.getContextualType(T.parent);if(C)return e.flatMap(e.getPropertySymbolsFromContextualType(T,_,C,!1),(function(e){return s(_,e,m)}))}return s(_,y,m)}}function n(e,t,r){var n=d(e.referencedFiles,t);if(n)return(o=r.getSourceFileFromReference(e,n))&&{reference:n,file:o};var i=d(e.typeReferenceDirectives,t);if(i){var a=r.getResolvedTypeReferenceDirectives().get(i.fileName);return(o=a&&r.getSourceFile(a.resolvedFileName))&&{reference:i,file:o}}var o,s=d(e.libReferenceDirectives,t);return s?(o=r.getLibFileFromReference(s))&&{reference:s,file:o}:void 0}function o(t,r,n){return e.flatMap(!t.isUnion()||32&t.flags?[t]:t.types,(function(e){return e.symbol&&s(r,e.symbol,n)}))}function s(t,r,n,i){var a=e.filter(r.declarations,(function(t){return t!==i&&(!e.isAssignmentDeclaration(t)||t===r.valueDeclaration)}))||void 0;return function(){if(32&r.flags&&!(19&r.flags)&&(e.isNewExpressionTarget(n)||133===n.kind)){return o((e.find(a,e.isClassLike)||e.Debug.fail("Expected declaration to have at least one class-like declaration")).members,!0)}}()||(e.isCallOrNewExpressionTarget(n)||e.isNameOfFunctionDeclaration(n)?o(a,!1):void 0)||e.map(a,(function(e){return c(e,t,r,n)}));function o(i,a){if(i){var o=i.filter(a?e.isConstructorDeclaration:e.isFunctionLike),s=o.filter((function(e){return!!e.body}));return o.length?0!==s.length?s.map((function(e){return c(e,t,r,n)})):[c(e.last(o),t,r,n)]:void 0}}}function c(t,r,n,i){var a=r.symbolToString(n),o=e.SymbolDisplay.getSymbolKind(r,n,i),s=n.parent?r.symbolToString(n.parent,i):"";return l(r,t,o,a,s)}function l(t,r,n,i,o){var s=e.getNameOfDeclaration(r)||r,c=s.getSourceFile(),l=e.createTextSpanFromNode(s,c);return a(a({fileName:c.fileName,textSpan:l,kind:n,name:i,containerKind:void 0,containerName:o},e.FindAllReferences.toContextSpan(l,c,e.FindAllReferences.getContextNode(r))),{isLocal:!t.isDeclarationVisible(r)})}function u(e,t){return c(t,e,t.symbol,t)}function d(t,r){return e.find(t,(function(t){return e.textRangeContainsPositionInclusive(t,r)}))}t.getDefinitionAtPosition=r,t.getReferenceAtPosition=n,t.getTypeDefinitionAtPosition=function(t,r,n){var i=e.getTouchingPropertyName(r,n);if(i!==r){var a=t.getSymbolAtLocation(i);if(a){var s=t.getTypeOfSymbolAtLocation(a,i),c=function(t,r,n){if(r.symbol===t||t.valueDeclaration&&r.symbol&&e.isVariableDeclaration(t.valueDeclaration)&&t.valueDeclaration.initializer===r.symbol.valueDeclaration){var i=r.getCallSignatures();if(1===i.length)return n.getReturnTypeOfSignature(e.first(i))}return}(a,s,t),l=c&&o(c,t,i);return l&&0!==l.length?l:o(s,t,i)}}},t.getDefinitionAndBoundSpan=function(t,n,i){var a=r(t,n,i);if(a&&0!==a.length){var o=d(n.referencedFiles,i)||d(n.typeReferenceDirectives,i)||d(n.libReferenceDirectives,i);if(o)return{definitions:a,textSpan:e.createTextSpanFromRange(o)};var s=e.getTouchingPropertyName(n,i);return{definitions:a,textSpan:e.createTextSpan(s.getStart(),s.getWidth())}}},t.findReferenceInPosition=d}(e.GoToDefinition||(e.GoToDefinition={}))}(d||(d={})),function(e){!function(t){var r,n,i=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","inheritdoc","inner","instance","interface","kind","lends","license","listens","member","memberof","method","mixes","module","name","namespace","override","package","param","private","property","protected","public","readonly","requires","returns","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"];function a(e){var t=e.comment;switch(e.kind){case 319:case 318:return n(e.class);case 333:return i(e.typeParameters.map((function(e){return e.getText()})).join(", "));case 332:return n(e.typeExpression);case 334:case 327:case 336:case 329:case 335:var r=e.name;return r?n(r):t;default:return t}function n(e){return i(e.getText())}function i(e){return void 0===t?e:e+" "+t}}function o(t){return{name:t,kind:"",kindModifiers:"",displayParts:[e.textPart(t)],documentation:e.emptyArray,tags:void 0,codeActions:void 0}}function s(t,r){switch(t.kind){case 253:case 209:case 166:case 167:case 165:case 210:var n=t;return{commentOwner:t,parameters:n.parameters,hasReturn:c(n,r)};case 291:return s(t.initializer,r);case 254:case 255:case 256:case 163:case 258:case 294:case 257:return{commentOwner:t};case 234:var i=t.declarationList.declarations,a=1===i.length&&i[0].initializer?function(t){for(;208===t.kind;)t=t.expression;switch(t.kind){case 209:case 210:return t;case 223:return e.find(t.members,e.isConstructorDeclaration)}}(i[0].initializer):void 0;return a?{commentOwner:t,parameters:a.parameters,hasReturn:c(a,r)}:{commentOwner:t};case 300:return"quit";case 259:return 259===t.parent.kind?void 0:{commentOwner:t};case 235:return s(t.expression,r);case 218:var o=t;return 0===e.getAssignmentDeclarationKind(o)?"quit":e.isFunctionLike(o.right)?{commentOwner:t,parameters:o.right.parameters,hasReturn:c(o.right,r)}:{commentOwner:t};case 164:var l=t.initializer;if(l&&(e.isFunctionExpression(l)||e.isArrowFunction(l)))return{commentOwner:t,parameters:l.parameters,hasReturn:c(l,r)}}}function c(t,r){return!!(null==r?void 0:r.generateReturnInDocTemplate)&&(e.isArrowFunction(t)&&e.isExpression(t.body)||e.isFunctionLikeDeclaration(t)&&t.body&&e.isBlock(t.body)&&!!e.forEachReturnStatement(t.body,(function(e){return e})))}t.getJsDocCommentsFromDeclarations=function(t){var r=[];return e.forEachUnique(t,(function(t){for(var n=0,i=function(t){switch(t.kind){case 329:case 336:return[t];case 327:case 334:return[t,t.parent];default:return e.getJSDocCommentsAndTags(t)}}(t);n<i.length;n++){var a=i[n].comment;void 0!==a&&e.pushIfUnique(r,a)}})),e.intersperse(e.map(r,e.textPart),e.lineBreakPart())},t.getJsDocTagsFromDeclarations=function(t){var r=[];return e.forEachUnique(t,(function(t){for(var n=0,i=e.getJSDocTags(t);n<i.length;n++){var o=i[n];r.push({name:o.tagName.text,text:a(o)})}})),r},t.getJSDocTagNameCompletions=function(){return r||(r=e.map(i,(function(t){return{name:t,kind:"keyword",kindModifiers:"",sortText:e.Completions.SortText.LocationPriority}})))},t.getJSDocTagNameCompletionDetails=o,t.getJSDocTagCompletions=function(){return n||(n=e.map(i,(function(t){return{name:"@"+t,kind:"keyword",kindModifiers:"",sortText:e.Completions.SortText.LocationPriority}})))},t.getJSDocTagCompletionDetails=o,t.getJSDocParameterNameCompletions=function(t){if(!e.isIdentifier(t.name))return e.emptyArray;var r=t.name.text,n=t.parent,i=n.parent;return e.isFunctionLike(i)?e.mapDefined(i.parameters,(function(i){if(e.isIdentifier(i.name)){var a=i.name.text;if(!n.tags.some((function(r){return r!==t&&e.isJSDocParameterTag(r)&&e.isIdentifier(r.name)&&r.name.escapedText===a}))&&(void 0===r||e.startsWith(a,r)))return{name:a,kind:"parameter",kindModifiers:"",sortText:e.Completions.SortText.LocationPriority}}})):[]},t.getJSDocParameterNameCompletionDetails=function(t){return{name:t,kind:"parameter",kindModifiers:"",displayParts:[e.textPart(t)],documentation:e.emptyArray,tags:void 0,codeActions:void 0}},t.getDocCommentTemplateAtPosition=function(t,r,n,i){var a=e.getTokenAtPosition(r,n),o=e.findAncestor(a,e.isJSDoc);if(!o||void 0===o.comment&&!e.length(o.tags)){var c=a.getStart(r);if(o||!(c<n)){var l=function(t,r){return e.forEachAncestor(t,(function(e){return s(e,r)}))}(a,i);if(l){var u=l.commentOwner,d=l.parameters,p=l.hasReturn;if(!(u.getStart(r)<n)){var f=function(t,r){for(var n=t.text,i=e.getLineStartPositionForPosition(r,t),a=i;a<=r&&e.isWhiteSpaceSingleLine(n.charCodeAt(a));a++);return n.slice(i,a)}(r,n),m=e.hasJSFileExtension(r.fileName),g=(d?function(e,t,r,n){return e.map((function(e,i){var a=e.name,o=e.dotDotDotToken,s=78===a.kind?a.text:"param"+i;return r+" * @param "+(t?o?"{...any} ":"{any} ":"")+s+n})).join("")}(d||[],m,f,t):"")+(p?function(e,t){return e+" * @returns"+t}(f,t):"");if(g){var _="/**"+t+f+" * ";return{newText:_+t+g+f+" */"+(c===n?t+f:""),caretOffset:_.length}}return{newText:"/** */",caretOffset:3}}}}}}}(e.JsDoc||(e.JsDoc={}))}(d||(d={})),function(e){!function(t){function r(e,t){switch(e.kind){case 265:case 268:case 263:var r=t.getSymbolAtLocation(e.name),n=t.getAliasedSymbol(r);return r.escapedName!==n.escapedName;default:return!0}}function n(t,r){var n=e.getNameOfDeclaration(t);return!!n&&(a(n,r)||159===n.kind&&i(n.expression,r))}function i(t,r){return a(t,r)||e.isPropertyAccessExpression(t)&&(r.push(t.name.text),!0)&&i(t.expression,r)}function a(t,r){return e.isPropertyNameLiteral(t)&&(r.push(e.getTextOfIdentifierOrLiteral(t)),!0)}function o(t){var r=[],a=e.getNameOfDeclaration(t);if(a&&159===a.kind&&!i(a.expression,r))return e.emptyArray;r.shift();for(var o=e.getContainerNode(t);o;){if(!n(o,r))return e.emptyArray;o=e.getContainerNode(o)}return r.reverse()}function s(t,r){return e.compareValues(t.matchKind,r.matchKind)||e.compareStringsCaseSensitiveUI(t.name,r.name)}function c(t){var r=t.declaration,n=e.getContainerNode(r),i=n&&e.getNameOfDeclaration(n);return{name:t.name,kind:e.getNodeKind(r),kindModifiers:e.getNodeModifiers(r),matchKind:e.PatternMatchKind[t.matchKind],isCaseSensitive:t.isCaseSensitive,fileName:t.fileName,textSpan:e.createTextSpanFromNode(r),containerName:i?i.text:"",containerKind:i?e.getNodeKind(n):""}}t.getNavigateToItems=function(t,n,i,a,l,u){var d=e.createPatternMatcher(a);if(!d)return e.emptyArray;for(var p=[],f=function(e){if(i.throwIfCancellationRequested(),u&&e.isDeclarationFile)return"continue";e.getNamedDeclarations().forEach((function(t,i){!function(e,t,n,i,a,s){var c=e.getMatchForLastSegmentOfPattern(t);if(!c)return;for(var l=0,u=n;l<u.length;l++){var d=u[l];if(r(d,i))if(e.patternContainsDots){var p=e.getFullMatch(o(d),t);p&&s.push({name:t,fileName:a,matchKind:p.kind,isCaseSensitive:p.isCaseSensitive,declaration:d})}else s.push({name:t,fileName:a,matchKind:c.kind,isCaseSensitive:c.isCaseSensitive,declaration:d})}}(d,i,t,n,e.fileName,p)}))},m=0,g=t;m<g.length;m++){f(g[m])}return p.sort(s),(void 0===l?p:p.slice(0,l)).map(c)}}(e.NavigateTo||(e.NavigateTo={}))}(d||(d={})),function(e){!function(t){var r,n,i,o,s,c=/\s+/g,l=150,u=[],d=[],p=[];function f(){i=void 0,n=void 0,u=[],o=void 0,p=[]}function m(e){return G(e.getText(i))}function g(e){return e.node.kind}function _(e,t){e.children?e.children.push(t):e.children=[t]}function h(t){e.Debug.assert(!u.length);var r={node:t,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};o=r;for(var n=0,i=t.statements;n<i.length;n++){T(i[n])}return S(),e.Debug.assert(!o&&!u.length),r}function y(e,t){_(o,v(e,t))}function v(t,r){return{node:t,name:r||(e.isDeclaration(t)||e.isExpression(t)?e.getNameOfDeclaration(t):void 0),additionalNodes:void 0,parent:o,children:void 0,indent:o.indent+1}}function b(t){s||(s=new e.Map),s.set(t,!0)}function k(e){for(var t=0;t<e;t++)S()}function x(t,r){for(var n=[];!e.isPropertyNameLiteral(r);){var i=e.getNameOrArgument(r),a=e.getElementOrPropertyAccessName(r);r=r.expression,"prototype"===a||e.isPrivateIdentifier(i)||n.push(i)}n.push(r);for(var o=n.length-1;o>0;o--){E(t,i=n[o])}return[n.length-1,n[0]]}function E(e,t){var r=v(e,t);_(o,r),u.push(o),d.push(s),s=void 0,o=r}function S(){o.children&&(C(o.children,o),O(o.children)),o=u.pop(),s=d.pop()}function D(e,t,r){E(e,r),T(t),S()}function w(t){t.initializer&&function(e){switch(e.kind){case 210:case 209:case 223:return!0;default:return!1}}(t.initializer)?(E(t),e.forEachChild(t.initializer,T),S()):D(t,t.initializer)}function T(t){var r;if(n.throwIfCancellationRequested(),t&&!e.isToken(t))switch(t.kind){case 167:var i=t;D(i,i.body);for(var a=0,o=i.parameters;a<o.length;a++){var c=o[a];e.isParameterPropertyDeclaration(c,i)&&y(c)}break;case 166:case 168:case 169:case 165:e.hasDynamicName(t)||D(t,t.body);break;case 164:e.hasDynamicName(t)||w(t);break;case 163:e.hasDynamicName(t)||y(t);break;case 265:var l=t;l.name&&y(l.name);var u=l.namedBindings;if(u)if(266===u.kind)y(u);else for(var d=0,p=u.elements;d<p.length;d++){y(p[d])}break;case 292:D(t,t.name);break;case 293:var f=t.expression;e.isIdentifier(f)?y(t,f):y(t);break;case 199:case 291:case 251:var m=t;e.isBindingPattern(m.name)?T(m.name):w(m);break;case 253:var g=t.name;g&&e.isIdentifier(g)&&b(g.text),D(t,t.body);break;case 210:case 209:D(t,t.body);break;case 258:E(t);for(var _=0,h=t.members;_<h.length;_++){J(A=h[_])||y(A)}S();break;case 254:case 223:case 255:case 256:E(t);for(var v=0,C=t.members;v<C.length;v++){var A;T(A=C[v])}S();break;case 259:D(t,q(t).body);break;case 269:var N=t.expression;(m=e.isObjectLiteralExpression(N)||e.isCallExpression(N)?N:e.isArrowFunction(N)||e.isFunctionExpression(N)?N.body:void 0)?(E(t),T(m),S()):y(t);break;case 273:case 263:case 172:case 170:case 171:case 257:y(t);break;case 204:case 218:var P=e.getAssignmentDeclarationKind(t);switch(P){case 1:case 2:return void D(t,t.right);case 6:case 3:var I=(B=t).left,F=3===P?I.expression:I,O=0,R=void 0;return e.isIdentifier(F.expression)?(b(F.expression.text),R=F.expression):(O=(r=x(B,F.expression))[0],R=r[1]),6===P?e.isObjectLiteralExpression(B.right)&&B.right.properties.length>0&&(E(B,R),e.forEachChild(B.right,T),S()):e.isFunctionExpression(B.right)||e.isArrowFunction(B.right)?D(t,B.right,R):(E(B,R),D(t,B.right,I.name),S()),void k(O);case 7:case 9:var M=t,L=(R=7===P?M.arguments[0]:M.arguments[0].expression,M.arguments[1]),j=x(t,R);O=j[0];return E(t,j[1]),E(t,e.setTextRange(e.factory.createIdentifier(L.text),L)),T(t.arguments[2]),S(),S(),void k(O);case 5:var B,z=(I=(B=t).left).expression;if(e.isIdentifier(z)&&"prototype"!==e.getElementOrPropertyAccessName(I)&&s&&s.has(z.text))return void(e.isFunctionExpression(B.right)||e.isArrowFunction(B.right)?D(t,B.right,z):e.isBindableStaticAccessExpression(I)&&(E(B,z),D(B.left,B.right,e.getNameOrArgument(I)),S()));break;case 4:case 0:case 8:break;default:e.Debug.assertNever(P)}default:e.hasJSDocNodes(t)&&e.forEach(t.jsDoc,(function(t){e.forEach(t.tags,(function(t){e.isJSDocTypeAlias(t)&&y(t)}))})),e.forEachChild(t,T)}}function C(t,r){var n=new e.Map;e.filterMutate(t,(function(t,i){var a=t.name||e.getNameOfDeclaration(t.node),o=a&&m(a);if(!o)return!0;var s=n.get(o);if(!s)return n.set(o,t),!0;if(s instanceof Array){for(var c=0,l=s;c<l.length;c++){var u;if(N(u=l[c],t,i,r))return!1}return s.push(t),!0}return!N(u=s,t,i,r)&&(n.set(o,[u,t]),!0)}))}t.getNavigationBarItems=function(t,r){n=r,i=t;try{return e.map(function(e){var t=[];function r(e){if(n(e)&&(t.push(e),e.children))for(var i=0,a=e.children;i<a.length;i++){r(a[i])}}return r(e),t;function n(e){if(e.children)return!0;switch(g(e)){case 254:case 223:case 255:case 258:case 256:case 259:case 300:case 257:case 334:case 327:return!0;case 210:case 253:case 209:return t(e);default:return!1}function t(e){if(!e.node.body)return!1;switch(g(e.parent)){case 260:case 300:case 166:case 167:return!0;default:return!1}}}}(h(t)),B)}finally{f()}},t.getNavigationTree=function(e,t){n=t,i=e;try{return j(h(e))}finally{f()}};var A=((r={})[5]=!0,r[3]=!0,r[7]=!0,r[9]=!0,r[0]=!1,r[1]=!1,r[2]=!1,r[8]=!1,r[6]=!0,r[4]=!1,r);function N(t,r,n,i){return!!function(t,r,n,i){function o(t){return e.isFunctionExpression(t)||e.isFunctionDeclaration(t)||e.isVariableDeclaration(t)}var s=e.isBinaryExpression(r.node)||e.isCallExpression(r.node)?e.getAssignmentDeclarationKind(r.node):0,c=e.isBinaryExpression(t.node)||e.isCallExpression(t.node)?e.getAssignmentDeclarationKind(t.node):0;if(A[s]&&A[c]||o(t.node)&&A[s]||o(r.node)&&A[c]||e.isClassDeclaration(t.node)&&P(t.node)&&A[s]||e.isClassDeclaration(r.node)&&A[c]||e.isClassDeclaration(t.node)&&P(t.node)&&o(r.node)||e.isClassDeclaration(r.node)&&o(t.node)&&P(t.node)){var l=t.additionalNodes&&e.lastOrUndefined(t.additionalNodes)||t.node;if(!e.isClassDeclaration(t.node)&&!e.isClassDeclaration(r.node)||o(t.node)||o(r.node)){var u=o(t.node)?t.node:o(r.node)?r.node:void 0;if(void 0!==u){var d=v(e.setTextRange(e.factory.createConstructorDeclaration(void 0,void 0,[],void 0),u));d.indent=t.indent+1,d.children=t.node===u?t.children:r.children,t.children=t.node===u?e.concatenate([d],r.children||[r]):e.concatenate(t.children||[a({},t)],[d])}else(t.children||r.children)&&(t.children=e.concatenate(t.children||[a({},t)],r.children||[r]),t.children&&(C(t.children,t),O(t.children)));l=t.node=e.setTextRange(e.factory.createClassDeclaration(void 0,void 0,t.name||e.factory.createIdentifier("__class__"),void 0,void 0,[]),t.node)}else t.children=e.concatenate(t.children,r.children),t.children&&C(t.children,t);var p=r.node;return i.children[n-1].node.end===l.end?e.setTextRange(l,{pos:l.pos,end:p.end}):(t.additionalNodes||(t.additionalNodes=[]),t.additionalNodes.push(e.setTextRange(e.factory.createClassDeclaration(void 0,void 0,t.name||e.factory.createIdentifier("__class__"),void 0,void 0,[]),r.node))),!0}return 0!==s}(t,r,n,i)||!!function(t,r,n){if(t.kind!==r.kind||t.parent!==r.parent&&(!I(t,n)||!I(r,n)))return!1;switch(t.kind){case 164:case 166:case 168:case 169:return e.hasSyntacticModifier(t,32)===e.hasSyntacticModifier(r,32);case 259:return F(t,r);default:return!0}}(t.node,r.node,i)&&(function(t,r){var n;t.additionalNodes=t.additionalNodes||[],t.additionalNodes.push(r.node),r.additionalNodes&&(n=t.additionalNodes).push.apply(n,r.additionalNodes);t.children=e.concatenate(t.children,r.children),t.children&&(C(t.children,t),O(t.children))}(t,r),!0)}function P(e){return!!(8&e.flags)}function I(t,r){var n=e.isModuleBlock(t.parent)?t.parent.parent:t.parent;return n===r.node||e.contains(r.additionalNodes,n)}function F(e,t){return e.body.kind===t.body.kind&&(259!==e.body.kind||F(e.body,t.body))}function O(e){e.sort(R)}function R(t,r){return e.compareStringsCaseSensitiveUI(M(t.node),M(r.node))||e.compareValues(g(t),g(r))}function M(t){if(259===t.kind)return U(t);var r=e.getNameOfDeclaration(t);if(r&&e.isPropertyName(r)){var n=e.getPropertyNameForPropertyNameNode(r);return n&&e.unescapeLeadingUnderscores(n)}switch(t.kind){case 209:case 210:case 223:return K(t);default:return}}function L(t,r){if(259===t.kind)return G(U(t));if(r){var n=e.isIdentifier(r)?r.text:e.isElementAccessExpression(r)?"["+m(r.argumentExpression)+"]":m(r);if(n.length>0)return G(n)}switch(t.kind){case 300:var i=t;return e.isExternalModule(i)?'"'+e.escapeString(e.getBaseFileName(e.removeFileExtension(e.normalizePath(i.fileName))))+'"':"<global>";case 269:return e.isExportAssignment(t)&&t.isExportEquals?"export=":"default";case 210:case 253:case 209:case 254:case 223:case 255:return 512&e.getSyntacticModifierFlags(t)?"default":K(t);case 167:return"constructor";case 171:return"new()";case 170:return"()";case 172:return"[]";default:return"<unknown>"}}function j(t){return{text:L(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:H(t.node),spans:z(t),nameSpan:t.name&&V(t.name),childItems:e.map(t.children,j)}}function B(t){return{text:L(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:H(t.node),spans:z(t),childItems:e.map(t.children,(function(t){return{text:L(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:e.getNodeModifiers(t.node),spans:z(t),childItems:p,indent:0,bolded:!1,grayed:!1}}))||p,indent:t.indent,bolded:!1,grayed:!1}}function z(e){var t=[V(e.node)];if(e.additionalNodes)for(var r=0,n=e.additionalNodes;r<n.length;r++){var i=n[r];t.push(V(i))}return t}function U(t){if(e.isAmbientModule(t))return e.getTextOfNode(t.name);for(var r=[e.getTextOfIdentifierOrLiteral(t.name)];t.body&&259===t.body.kind;)t=t.body,r.push(e.getTextOfIdentifierOrLiteral(t.name));return r.join(".")}function q(t){return t.body&&e.isModuleDeclaration(t.body)?q(t.body):t}function J(e){return!e.name||159===e.name.kind}function V(t){return 300===t.kind?e.createTextSpanFromRange(t):e.createTextSpanFromNode(t,i)}function H(t){return t.parent&&251===t.parent.kind&&(t=t.parent),e.getNodeModifiers(t)}function K(t){var r=t.parent;if(t.name&&e.getFullWidth(t.name)>0)return G(e.declarationNameToString(t.name));if(e.isVariableDeclaration(r))return G(e.declarationNameToString(r.name));if(e.isBinaryExpression(r)&&62===r.operatorToken.kind)return m(r.left).replace(c,"");if(e.isPropertyAssignment(r))return m(r.name);if(512&e.getSyntacticModifierFlags(t))return"default";if(e.isClassLike(t))return"<class>";if(e.isCallExpression(r)){var n=W(r.expression);if(void 0!==n)return(n=G(n)).length>l?n+" callback":n+"("+G(e.mapDefined(r.arguments,(function(t){return e.isStringLiteralLike(t)?t.getText(i):void 0})).join(", "))+") callback"}return"<function>"}function W(t){if(e.isIdentifier(t))return t.text;if(e.isPropertyAccessExpression(t)){var r=W(t.expression),n=t.name.text;return void 0===r?n:r+"."+n}}function G(e){return(e=e.length>l?e.substring(0,l)+"...":e).replace(/\\?(\r?\n|\r|\u2028|\u2029)/g,"")}}(e.NavigationBar||(e.NavigationBar={}))}(d||(d={})),function(e){!function(t){function r(t,r){var n=e.isStringLiteral(r)&&r.text;return e.isString(n)&&e.some(t.moduleAugmentations,(function(t){return e.isStringLiteral(t)&&t.text===n}))}function n(t){return void 0!==t&&e.isStringLiteralLike(t)?t.text:void 0}function i(t){var r;if(0===t.length)return t;var n=function(t){for(var r,n={defaultImports:[],namespaceImports:[],namedImports:[]},i={defaultImports:[],namespaceImports:[],namedImports:[]},a=0,o=t;a<o.length;a++){var s=o[a];if(void 0!==s.importClause){var c=s.importClause.isTypeOnly?n:i,l=s.importClause,u=l.name,d=l.namedBindings;u&&c.defaultImports.push(s),d&&(e.isNamespaceImport(d)?c.namespaceImports.push(s):c.namedImports.push(s))}else r=r||s}return{importWithoutClause:r,typeOnlyImports:n,regularImports:i}}(t),i=n.importWithoutClause,a=n.typeOnlyImports,c=n.regularImports,l=[];i&&l.push(i);for(var d=0,p=[c,a];d<p.length;d++){var f=p[d],m=f===a,g=f.defaultImports,_=f.namespaceImports,h=f.namedImports;if(m||1!==g.length||1!==_.length||0!==h.length){for(var y=0,v=e.stableSort(_,(function(e,t){return u(e.importClause.namedBindings.name,t.importClause.namedBindings.name)}));y<v.length;y++){var b=v[y];l.push(o(b,void 0,b.importClause.namedBindings))}if(0!==g.length||0!==h.length){var k=void 0,x=[];if(1===g.length)k=g[0].importClause.name;else for(var E=0,S=g;E<S.length;E++){C=S[E];x.push(e.factory.createImportSpecifier(e.factory.createIdentifier("default"),C.importClause.name))}x.push.apply(x,e.flatMap(h,(function(e){return e.importClause.namedBindings.elements})));var D=s(x),w=g.length>0?g[0]:h[0],T=0===D.length?k?void 0:e.factory.createNamedImports(e.emptyArray):0===h.length?e.factory.createNamedImports(D):e.factory.updateNamedImports(h[0].importClause.namedBindings,D);m&&k&&T?(l.push(o(w,k,void 0)),l.push(o(null!==(r=h[0])&&void 0!==r?r:w,void 0,T))):l.push(o(w,k,T))}}else{var C=g[0];l.push(o(C,C.importClause.name,_[0].importClause.namedBindings))}}return l}function a(t){if(0===t.length)return t;var r=function(e){for(var t,r=[],n=[],i=0,a=e;i<a.length;i++){var o=a[i];void 0===o.exportClause?t=t||o:o.isTypeOnly?n.push(o):r.push(o)}return{exportWithoutClause:t,namedExports:r,typeOnlyExports:n}}(t),n=r.exportWithoutClause,i=r.namedExports,a=r.typeOnlyExports,o=[];n&&o.push(n);for(var c=0,l=[i,a];c<l.length;c++){var u=l[c];if(0!==u.length){var d=[];d.push.apply(d,e.flatMap(u,(function(t){return t.exportClause&&e.isNamedExports(t.exportClause)?t.exportClause.elements:e.emptyArray})));var p=s(d),f=u[0];o.push(e.factory.updateExportDeclaration(f,f.decorators,f.modifiers,f.isTypeOnly,f.exportClause&&(e.isNamedExports(f.exportClause)?e.factory.updateNamedExports(f.exportClause,p):e.factory.updateNamespaceExport(f.exportClause,f.exportClause.name)),f.moduleSpecifier))}}return o}function o(t,r,n){return e.factory.updateImportDeclaration(t,t.decorators,t.modifiers,e.factory.updateImportClause(t.importClause,t.importClause.isTypeOnly,r,n),t.moduleSpecifier)}function s(t){return e.stableSort(t,c)}function c(e,t){return u(e.propertyName||e.name,t.propertyName||t.name)||u(e.name,t.name)}function l(t,r){var i=void 0===t?void 0:n(t),a=void 0===r?void 0:n(r);return e.compareBooleans(void 0===i,void 0===a)||e.compareBooleans(e.isExternalModuleNameRelative(i),e.isExternalModuleNameRelative(a))||e.compareStringsCaseInsensitive(i,a)}function u(t,r){return e.compareStringsCaseInsensitive(t.text,r.text)}function d(t){var r;switch(t.kind){case 263:return null===(r=e.tryCast(t.moduleReference,e.isExternalModuleReference))||void 0===r?void 0:r.expression;case 264:return t.moduleSpecifier;case 234:return t.declarationList.declarations[0].initializer.arguments[0]}}function p(t,r){return l(d(t),d(r))||function(t,r){return e.compareValues(f(t),f(r))}(t,r)}function f(e){var t;switch(e.kind){case 264:return e.importClause?e.importClause.isTypeOnly?1:266===(null===(t=e.importClause.namedBindings)||void 0===t?void 0:t.kind)?2:e.importClause.name?3:4:0;case 263:return 5;case 234:return 6}}t.organizeImports=function(t,s,c,u,d){var f=e.textChanges.ChangeTracker.fromContext({host:c,formatContext:s,preferences:d}),m=function(n){return e.stableSort(i(function(t,n,i){for(var a=i.getTypeChecker(),s=a.getJsxNamespace(n),c=a.getJsxFragmentFactory(n),l=!!(2&n.transformFlags),u=[],d=0,p=t;d<p.length;d++){var f=p[d],m=f.importClause,g=f.moduleSpecifier;if(m){var _=m.name,h=m.namedBindings;if(_&&!v(_)&&(_=void 0),h)if(e.isNamespaceImport(h))v(h.name)||(h=void 0);else{var y=h.elements.filter((function(e){return v(e.name)}));y.length<h.elements.length&&(h=y.length?e.factory.updateNamedImports(h,y):void 0)}_||h?u.push(o(f,_,h)):r(n,g)&&(n.isDeclarationFile?u.push(e.factory.createImportDeclaration(f.decorators,f.modifiers,void 0,g)):u.push(f))}else u.push(f)}return u;function v(t){return l&&(t.text===s||c&&t.text===c)||e.FindAllReferences.Core.isSymbolReferencedInFile(t,a,n)}}(n,t,u)),(function(e,t){return p(e,t)}))};y(t.statements.filter(e.isImportDeclaration),m),y(t.statements.filter(e.isExportDeclaration),a);for(var g=0,_=t.statements.filter(e.isAmbientModule);g<_.length;g++){var h=_[g];if(h.body)y(h.body.statements.filter(e.isImportDeclaration),m),y(h.body.statements.filter(e.isExportDeclaration),a)}return f.getChanges();function y(r,i){if(0!==e.length(r)){e.suppressLeadingTrivia(r[0]);var a=e.group(r,(function(e){return n(e.moduleSpecifier)})),o=e.stableSort(a,(function(e,t){return l(e[0].moduleSpecifier,t[0].moduleSpecifier)})),u=e.flatMap(o,(function(e){return n(e[0].moduleSpecifier)?i(e):e}));0===u.length?f.delete(t,r[0]):f.replaceNodeWithNodes(t,r[0],u,{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Include,suffix:e.getNewLineOrDefaultFromHost(c,s.options)});for(var d=1;d<r.length;d++)f.deleteNode(t,r[d])}}},t.coalesceImports=i,t.coalesceExports=a,t.compareImportOrExportSpecifiers=c,t.compareModuleSpecifiers=l,t.importsAreSorted=function(t){return e.arrayIsSorted(t,p)},t.importSpecifiersAreSorted=function(t){return e.arrayIsSorted(t,c)},t.getImportDeclarationInsertionIndex=function(t,r){var n=e.binarySearch(t,r,e.identity,p);return n<0?~n:n},t.getImportSpecifierInsertionIndex=function(t,r){var n=e.binarySearch(t,r,e.identity,c);return n<0?~n:n},t.compareImportsOrRequireStatements=p}(e.OrganizeImports||(e.OrganizeImports={}))}(d||(d={})),function(e){!function(t){t.collectElements=function(t,r){var l=[];return function(t,r,n){var l=40,u=0,d=i(i([],t.statements),[t.endOfFileToken]),p=d.length;for(;u<p;){for(;u<p&&!e.isAnyImportSyntax(d[u]);)g(d[u]),u++;if(u===p)break;for(var f=u;u<p&&e.isAnyImportSyntax(d[u]);)a(d[u],t,r,n),u++;var m=u-1;m!==f&&n.push(o(e.findChildOfKind(d[f],100,t).getStart(t),d[m].getEnd(),"imports"))}function g(i){var u;if(0!==l){r.throwIfCancellationRequested(),(e.isDeclaration(i)||e.isVariableStatement(i)||1===i.kind)&&a(i,t,r,n),e.isFunctionLike(i)&&e.isBinaryExpression(i.parent)&&e.isPropertyAccessExpression(i.parent.left)&&a(i.parent.left,t,r,n);var d=function(t,r){switch(t.kind){case 232:if(e.isFunctionLike(t.parent))return function(t,r,n){var i=function(t,r,n){if(e.isNodeArrayMultiLine(t.parameters,n)){var i=e.findChildOfKind(t,20,n);if(i)return i}return e.findChildOfKind(r,18,n)}(t,r,n),a=e.findChildOfKind(r,19,n);return i&&a&&s(i,a,t,n,210!==t.kind)}(t.parent,t,r);switch(t.parent.kind){case 237:case 240:case 241:case 239:case 236:case 238:case 245:case 290:return g(t.parent);case 249:var n=t.parent;if(n.tryBlock===t)return g(t.parent);if(n.finallyBlock===t){var i=e.findChildOfKind(n,96,r);if(i)return g(i)}default:return c(e.createTextSpanFromNode(t,r),"code")}case 260:return g(t.parent);case 254:case 223:case 255:case 256:case 258:case 261:case 178:case 197:return g(t);case 180:return g(t,!1,!e.isTupleTypeNode(t.parent),22);case 287:case 288:return _(t.statements);case 201:return m(t);case 200:return m(t,22);case 276:return u(t);case 280:return d(t);case 277:case 278:return p(t.attributes);case 220:case 14:return f(t);case 198:return g(t,!1,!e.isBindingElement(t.parent),22);case 210:return l(t);case 204:return a(t)}function a(t){if(t.arguments.length){var n=e.findChildOfKind(t,20,r),i=e.findChildOfKind(t,21,r);if(n&&i&&!e.positionsAreOnSameLine(n.pos,i.pos,r))return s(n,i,t,r,!1,!0)}}function l(t){if(!e.isBlock(t.body)&&!e.positionsAreOnSameLine(t.body.getFullStart(),t.body.getEnd(),r))return c(e.createTextSpanFromBounds(t.body.getFullStart(),t.body.getEnd()),"code",e.createTextSpanFromNode(t))}function u(t){var n=e.createTextSpanFromBounds(t.openingElement.getStart(r),t.closingElement.getEnd()),i=t.openingElement.tagName.getText(r);return c(n,"code",n,!1,"<"+i+">...</"+i+">")}function d(t){var n=e.createTextSpanFromBounds(t.openingFragment.getStart(r),t.closingFragment.getEnd());return c(n,"code",n,!1,"<>...</>")}function p(e){if(0!==e.properties.length)return o(e.getStart(r),e.getEnd(),"code")}function f(e){if(14!==e.kind||0!==e.text.length)return o(e.getStart(r),e.getEnd(),"code")}function m(t,r){return void 0===r&&(r=18),g(t,!1,!e.isArrayLiteralExpression(t.parent)&&!e.isCallExpression(t.parent),r)}function g(n,i,a,o,c){void 0===i&&(i=!1),void 0===a&&(a=!0),void 0===o&&(o=18),void 0===c&&(c=18===o?19:23);var l=e.findChildOfKind(t,o,r),u=e.findChildOfKind(t,c,r);return l&&u&&s(l,u,n,r,i,a)}function _(t){return t.length?c(e.createTextSpanFromRange(t),"code"):void 0}}(i,t);d&&n.push(d),l--,e.isCallExpression(i)?(l++,g(i.expression),l--,i.arguments.forEach(g),null===(u=i.typeArguments)||void 0===u||u.forEach(g)):e.isIfStatement(i)&&i.elseStatement&&e.isIfStatement(i.elseStatement)?(g(i.expression),g(i.thenStatement),l++,g(i.elseStatement),l--):i.forEachChild(g),l++}}}(t,r,l),function(t,r){for(var i=[],a=t.getLineStarts(),o=0,s=a;o<s.length;o++){var l=s[o],u=t.getLineEndOfPosition(l),d=n(t.text.substring(l,u));if(d&&!e.isInComment(t,l))if(d[1]){var p=i.pop();p&&(p.textSpan.length=u-p.textSpan.start,p.hintSpan.length=u-p.textSpan.start,r.push(p))}else{var f=e.createTextSpanFromBounds(t.text.indexOf("//",l),u);i.push(c(f,"region",f,!1,d[2]||"#region"))}}}(t,l),l.sort((function(e,t){return e.textSpan.start-t.textSpan.start}))};var r=/^\s*\/\/\s*#(end)?region(?:\s+(.*))?(?:\r)?$/;function n(e){return r.exec(e)}function a(t,r,i,a){var s=e.getLeadingCommentRangesOfNode(t,r);if(s){for(var c=-1,l=-1,u=0,d=r.getFullText(),p=0,f=s;p<f.length;p++){var m=f[p],g=m.kind,_=m.pos,h=m.end;switch(i.throwIfCancellationRequested(),g){case 2:if(n(d.slice(_,h))){y(),u=0;break}0===u&&(c=_),l=h,u++;break;case 3:y(),a.push(o(_,h,"comment")),u=0;break;default:e.Debug.assertNever(g)}}y()}function y(){u>1&&a.push(o(c,l,"comment"))}}function o(t,r,n){return c(e.createTextSpanFromBounds(t,r),n)}function s(t,r,n,i,a,o){return void 0===a&&(a=!1),void 0===o&&(o=!0),c(e.createTextSpanFromBounds(o?t.getFullStart():t.getStart(i),r.getEnd()),"code",e.createTextSpanFromNode(n,i),a)}function c(e,t,r,n,i){return void 0===r&&(r=e),void 0===n&&(n=!1),void 0===i&&(i="..."),{textSpan:e,kind:t,hintSpan:r,bannerText:i,autoCollapse:n}}}(e.OutliningElementsCollector||(e.OutliningElementsCollector={}))}(d||(d={})),function(e){var t;function r(e,t){return{kind:e,isCaseSensitive:t}}function n(e,t){var r=t.get(e);return r||t.set(e,r=y(e)),r}function i(i,a,o){var s=function(e,t){for(var r=e.length-t.length,n=function(r){if(D(t,(function(t,n){return p(e.charCodeAt(n+r))===t})))return{value:r}},i=0;i<=r;i++){var a=n(i);if("object"==typeof a)return a.value}return-1}(i,a.textLowerCase);if(0===s)return r(a.text.length===i.length?t.exact:t.prefix,e.startsWith(i,a.text));if(a.isLowerCase){if(-1===s)return;for(var d=0,f=n(i,o);d<f.length;d++){var m=f[d];if(c(i,m,a.text,!0))return r(t.substring,c(i,m,a.text,!1))}if(a.text.length<i.length&&u(i.charCodeAt(s)))return r(t.substring,!1)}else{if(i.indexOf(a.text)>0)return r(t.substring,!0);if(a.characterSpans.length>0){var g=n(i,o),_=!!l(i,g,a,!1)||!l(i,g,a,!0)&&void 0;if(void 0!==_)return r(t.camelCase,_)}}}function a(e,t,r){if(D(t.totalTextChunk.text,(function(e){return 32!==e&&42!==e}))){var n=i(e,t.totalTextChunk,r);if(n)return n}for(var a,s=0,c=t.subWordTextChunks;s<c.length;s++){a=o(a,i(e,c[s],r))}return a}function o(t,r){return e.min(t,r,s)}function s(t,r){return void 0===t?1:void 0===r?-1:e.compareValues(t.kind,r.kind)||e.compareBooleans(!t.isCaseSensitive,!r.isCaseSensitive)}function c(e,t,r,n,i){return void 0===i&&(i={start:0,length:r.length}),i.length<=t.length&&S(0,i.length,(function(a){return function(e,t,r){return r?p(e)===p(t):e===t}(r.charCodeAt(i.start+a),e.charCodeAt(t.start+a),n)}))}function l(t,r,n,i){for(var a,o,s=n.characterSpans,l=0,d=0;;){if(d===s.length)return!0;if(l===r.length)return!1;for(var p=r[l],f=!1;d<s.length;d++){var m=s[d];if(f&&(!u(n.text.charCodeAt(s[d-1].start))||!u(n.text.charCodeAt(s[d].start))))break;if(!c(t,p,n.text,i,m))break;f=!0,a=void 0===a?l:a,o=void 0===o||o,p=e.createTextSpan(p.start+m.length,p.length-m.length)}f||void 0===o||(o=!1),l++}}function u(t){if(t>=65&&t<=90)return!0;if(t<127||!e.isUnicodeIdentifierStart(t,99))return!1;var r=String.fromCharCode(t);return r===r.toUpperCase()}function d(t){if(t>=97&&t<=122)return!0;if(t<127||!e.isUnicodeIdentifierStart(t,99))return!1;var r=String.fromCharCode(t);return r===r.toLowerCase()}function p(e){return e>=65&&e<=90?e-65+97:e<127?e:String.fromCharCode(e).toLowerCase().charCodeAt(0)}function f(e){return e>=48&&e<=57}function m(e){return u(e)||d(e)||f(e)||95===e||36===e}function g(e){for(var t=[],r=0,n=0,i=0;i<e.length;i++){m(e.charCodeAt(i))?(0===n&&(r=i),n++):n>0&&(t.push(_(e.substr(r,n))),n=0)}return n>0&&t.push(_(e.substr(r,n))),t}function _(e){var t=e.toLowerCase();return{text:e,textLowerCase:t,isLowerCase:e===t,characterSpans:h(e)}}function h(e){return v(e,!1)}function y(e){return v(e,!0)}function v(t,r){for(var n=[],i=0,a=1;a<t.length;a++){var o=f(t.charCodeAt(a-1)),s=f(t.charCodeAt(a)),c=E(t,r,a),l=r&&x(t,a,i);(b(t.charCodeAt(a-1))||b(t.charCodeAt(a))||o!==s||c||l)&&(k(t,i,a)||n.push(e.createTextSpan(i,a-i)),i=a)}return k(t,i,t.length)||n.push(e.createTextSpan(i,t.length-i)),n}function b(e){switch(e){case 33:case 34:case 35:case 37:case 38:case 39:case 40:case 41:case 42:case 44:case 45:case 46:case 47:case 58:case 59:case 63:case 64:case 91:case 92:case 93:case 95:case 123:case 125:return!0}return!1}function k(e,t,r){return D(e,(function(e){return b(e)&&95!==e}),t,r)}function x(e,t,r){return t!==r&&t+1<e.length&&u(e.charCodeAt(t))&&d(e.charCodeAt(t+1))&&D(e,u,r,t)}function E(e,t,r){var n=u(e.charCodeAt(r-1));return u(e.charCodeAt(r))&&(!t||!n)}function S(e,t,r){for(var n=e;n<t;n++)if(!r(n))return!1;return!0}function D(e,t,r,n){return void 0===r&&(r=0),void 0===n&&(n=e.length),S(r,n,(function(r){return t(e.charCodeAt(r),r)}))}!function(e){e[e.exact=0]="exact",e[e.prefix=1]="prefix",e[e.substring=2]="substring",e[e.camelCase=3]="camelCase"}(t=e.PatternMatchKind||(e.PatternMatchKind={})),e.createPatternMatcher=function(t){var r=new e.Map,n=t.trim().split(".").map((function(e){return{totalTextChunk:_(t=e.trim()),subWordTextChunks:g(t)};var t}));if(!n.some((function(e){return!e.subWordTextChunks.length})))return{getFullMatch:function(t,i){return function(t,r,n,i){var s,c=a(r,e.last(n),i);if(!c)return;if(n.length-1>t.length)return;for(var l=n.length-2,u=t.length-1;l>=0;l-=1,u-=1)s=o(s,a(t[u],n[l],i));return s}(t,i,n,r)},getMatchForLastSegmentOfPattern:function(t){return a(t,e.last(n),r)},patternContainsDots:n.length>1}},e.breakIntoCharacterSpans=h,e.breakIntoWordSpans=y}(d||(d={})),function(e){e.preProcessFile=function(t,r,n){void 0===r&&(r=!0),void 0===n&&(n=!1);var i,a,o,s={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},c=[],l=0,u=!1;function d(){return a=o,18===(o=e.scanner.scan())?l++:19===o&&l--,o}function p(){var t=e.scanner.getTokenValue(),r=e.scanner.getTokenPos();return{fileName:t,pos:r,end:r+t.length}}function f(){c.push(p()),m()}function m(){0===l&&(u=!0)}function g(){var t=e.scanner.getToken();return 134===t&&(140===(t=d())&&10===(t=d())&&(i||(i=[]),i.push({ref:p(),depth:l})),!0)}function _(){if(24===a)return!1;var t=e.scanner.getToken();if(100===t){if(20===(t=d())){if(10===(t=d())||14===t)return f(),!0}else{if(10===t)return f(),!0;if(150===t){var r=e.scanner.lookAhead((function(){var t=e.scanner.scan();return 154!==t&&(41===t||18===t||78===t||e.isKeyword(t))}));r&&(t=d())}if(78===t||e.isKeyword(t))if(154===(t=d())){if(10===(t=d()))return f(),!0}else if(62===t){if(y(!0))return!0}else{if(27!==t)return!0;t=d()}if(18===t){for(t=d();19!==t&&1!==t;)t=d();19===t&&154===(t=d())&&10===(t=d())&&f()}else 41===t&&127===(t=d())&&(78===(t=d())||e.isKeyword(t))&&154===(t=d())&&10===(t=d())&&f()}return!0}return!1}function h(){var t=e.scanner.getToken();if(93===t){if(m(),150===(t=d())){var r=e.scanner.lookAhead((function(){var t=e.scanner.scan();return 41===t||18===t}));r&&(t=d())}if(18===t){for(t=d();19!==t&&1!==t;)t=d();19===t&&154===(t=d())&&10===(t=d())&&f()}else if(41===t)154===(t=d())&&10===(t=d())&&f();else if(100===t){if(150===(t=d())){r=e.scanner.lookAhead((function(){var t=e.scanner.scan();return 78===t||e.isKeyword(t)}));r&&(t=d())}if((78===t||e.isKeyword(t))&&62===(t=d())&&y(!0))return!0}return!0}return!1}function y(t,r){void 0===r&&(r=!1);var n=t?d():e.scanner.getToken();return 144===n&&(20===(n=d())&&(10===(n=d())||r&&14===n)&&f(),!0)}function v(){var t=e.scanner.getToken();if(78===t&&"define"===e.scanner.getTokenValue()){if(20!==(t=d()))return!0;if(10===(t=d())||14===t){if(27!==(t=d()))return!0;t=d()}if(22!==t)return!0;for(t=d();23!==t&&1!==t;)10!==t&&14!==t||f(),t=d();return!0}return!1}if(r&&function(){for(e.scanner.setText(t),d();1!==e.scanner.getToken();)g()||_()||h()||n&&(y(!1,!0)||v())||d();e.scanner.setText(void 0)}(),e.processCommentPragmas(s,t),e.processPragmasIntoFields(s,e.noop),u){if(i)for(var b=0,k=i;b<k.length;b++){var x=k[b];c.push(x.ref)}return{referencedFiles:s.referencedFiles,typeReferenceDirectives:s.typeReferenceDirectives,libReferenceDirectives:s.libReferenceDirectives,importedFiles:c,isLibFile:!!s.hasNoDefaultLib,ambientExternalModules:void 0}}var E=void 0;if(i)for(var S=0,D=i;S<D.length;S++){0===(x=D[S]).depth?(E||(E=[]),E.push(x.ref.fileName)):c.push(x.ref)}return{referencedFiles:s.referencedFiles,typeReferenceDirectives:s.typeReferenceDirectives,libReferenceDirectives:s.libReferenceDirectives,importedFiles:c,isLibFile:!!s.hasNoDefaultLib,ambientExternalModules:E}}}(d||(d={})),function(e){!function(t){function r(e,t,r,n,a,o){return{canRename:!0,fileToRename:void 0,kind:r,displayName:e,fullDisplayName:t,kindModifiers:n,triggerSpan:i(a,o)}}function n(t){return{canRename:!1,localizedErrorMessage:e.getLocaleSpecificMessage(t)}}function i(t,r){var n=t.getStart(r),i=t.getWidth(r);return e.isStringLiteralLike(t)&&(n+=1,i-=2),e.createTextSpan(n,i)}t.getRenameInfo=function(t,i,a,o){var s=e.getAdjustedRenameLocation(e.getTouchingPropertyName(i,a));if(function(t){switch(t.kind){case 78:case 79:case 10:case 14:case 108:return!0;case 8:return e.isLiteralNameOfPropertyDeclarationOrIndexAccess(t);default:return!1}}(s)){var c=function(t,i,a,o,s){var c=i.getSymbolAtLocation(t);if(!c){if(e.isStringLiteralLike(t)){var l=e.getContextualTypeOrAncestorTypeNodeType(t,i);if(l&&(128&l.flags||1048576&l.flags&&e.every(l.types,(function(e){return!!(128&e.flags)}))))return r(t.text,t.text,"string","",t,a)}else if(e.isLabelName(t)){var u=e.getTextOfNode(t);return r(u,u,"label","",t,a)}return}var d=c.declarations;if(!d||0===d.length)return;if(d.some(o))return n(e.Diagnostics.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(e.isIdentifier(t)&&88===t.originalKeywordKind&&c.parent&&1536&c.parent.flags)return;if(e.isStringLiteralLike(t)&&e.tryGetImportFromModuleSpecifier(t))return s&&s.allowRenameOfImportPath?function(t,r,i){if(!e.isExternalModuleNameRelative(t.text))return n(e.Diagnostics.You_cannot_rename_a_module_via_a_global_import);var a=e.find(i.declarations,e.isSourceFile);if(!a)return;var o=e.endsWith(t.text,"/index")||e.endsWith(t.text,"/index.js")?void 0:e.tryRemoveSuffix(e.removeFileExtension(a.fileName),"/index"),s=void 0===o?a.fileName:o,c=void 0===o?"module":"directory",l=t.text.lastIndexOf("/")+1,u=e.createTextSpan(t.getStart(r)+1+l,t.text.length-l);return{canRename:!0,fileToRename:s,kind:c,displayName:s,fullDisplayName:s,kindModifiers:"",triggerSpan:u}}(t,a,c):void 0;var p=e.SymbolDisplay.getSymbolKind(i,c,t),f=e.isImportOrExportSpecifierName(t)||e.isStringOrNumericLiteralLike(t)&&159===t.parent.kind?e.stripQuotes(e.getTextOfIdentifierOrLiteral(t)):void 0,m=f||i.symbolToString(c),g=f||i.getFullyQualifiedName(c);return r(m,g,p,e.SymbolDisplay.getSymbolModifiers(i,c),t,a)}(s,t.getTypeChecker(),i,(function(e){return t.isSourceFileDefaultLibrary(e.getSourceFile())}),o);if(c)return c}return n(e.Diagnostics.You_cannot_rename_this_element)}}(e.Rename||(e.Rename={}))}(d||(d={})),function(e){!function(t){function r(t,r,n){return e.Debug.assert(n.pos<=r),r<n.end||n.getEnd()===r&&e.getTouchingPropertyName(t,r).pos<n.end}t.getSmartSelectionRange=function(t,n){var o,s,c,d={textSpan:e.createTextSpanFromBounds(n.getFullStart(),n.getEnd())},p=n;e:for(;;){var f=i(p);if(!f.length)break;for(var m=0;m<f.length;m++){var g=f[m-1],_=f[m],h=f[m+1];if(e.getTokenPosOfNode(_,n,!0)>t)break e;if(r(n,t,_)){if(e.isBlock(_)||e.isTemplateSpan(_)||e.isTemplateHead(_)||e.isTemplateTail(_)||g&&e.isTemplateHead(g)||e.isVariableDeclarationList(_)&&e.isVariableStatement(p)||e.isSyntaxList(_)&&e.isVariableDeclarationList(p)||e.isVariableDeclaration(_)&&e.isSyntaxList(p)&&1===f.length||e.isJSDocTypeExpression(_)||e.isJSDocSignature(_)||e.isJSDocTypeLiteral(_)){p=_;break}if(e.isTemplateSpan(p)&&h&&e.isTemplateMiddleOrTemplateTail(h))k(_.getFullStart()-2,h.getStart()+1);var y=e.isSyntaxList(_)&&(c=void 0,18===(c=(s=g)&&s.kind)||22===c||20===c||278===c)&&l(h)&&!e.positionsAreOnSameLine(g.getStart(),h.getStart(),n),v=y?g.getEnd():_.getStart(),b=y?h.getStart():u(n,_);e.hasJSDocNodes(_)&&(null===(o=_.jsDoc)||void 0===o?void 0:o.length)&&k(e.first(_.jsDoc).getStart(),b),k(v,b),(e.isStringLiteral(_)||e.isTemplateLiteral(_))&&k(v+1,b-1),p=_;break}if(m===f.length-1)break e}}return d;function k(r,n){if(r!==n){var i=e.createTextSpanFromBounds(r,n);(!d||!e.textSpansEqual(i,d.textSpan)&&e.textSpanIntersectsWithPosition(i,t))&&(d=a({textSpan:i},d&&{parent:d}))}}};var n=e.or(e.isImportDeclaration,e.isImportEqualsDeclaration);function i(t){if(e.isSourceFile(t))return o(t.getChildAt(0).getChildren(),n);if(e.isMappedTypeNode(t)){var r=t.getChildren(),i=r[0],a=r.slice(1),l=e.Debug.checkDefined(a.pop());e.Debug.assertEqual(i.kind,18),e.Debug.assertEqual(l.kind,19);var u=o(a,(function(e){return e===t.readonlyToken||143===e.kind||e===t.questionToken||57===e.kind})),d=o(u,(function(e){var t=e.kind;return 22===t||160===t||23===t}));return[i,c(s(d,(function(e){return 58===e.kind}))),l]}if(e.isPropertySignature(t))return s(a=o(t.getChildren(),(function(r){return r===t.name||e.contains(t.modifiers,r)})),(function(e){return 58===e.kind}));if(e.isParameter(t)){var p=o(t.getChildren(),(function(e){return e===t.dotDotDotToken||e===t.name}));return s(o(p,(function(e){return e===p[0]||e===t.questionToken})),(function(e){return 62===e.kind}))}return e.isBindingElement(t)?s(t.getChildren(),(function(e){return 62===e.kind})):t.getChildren()}function o(e,t){for(var r,n=[],i=0,a=e;i<a.length;i++){var o=a[i];t(o)?(r=r||[]).push(o):(r&&(n.push(c(r)),r=void 0),n.push(o))}return r&&n.push(c(r)),n}function s(t,r,n){if(void 0===n&&(n=!0),t.length<2)return t;var i=e.findIndex(t,r);if(-1===i)return t;var a=t.slice(0,i),o=t[i],s=e.last(t),l=n&&26===s.kind,u=t.slice(i+1,l?t.length-1:void 0),d=e.compact([a.length?c(a):void 0,o,u.length?c(u):void 0]);return l?d.concat(s):d}function c(t){return e.Debug.assertGreaterThanOrEqual(t.length,1),e.setTextRangePosEnd(e.parseNodeFactory.createSyntaxList(t),t[0].pos,e.last(t).end)}function l(e){var t=e&&e.kind;return 19===t||23===t||21===t||279===t}function u(e,t){switch(t.kind){case 329:case 327:case 336:case 334:case 331:return e.getLineEndOfPosition(t.getStart());default:return t.getEnd()}}}(e.SmartSelectionRange||(e.SmartSelectionRange={}))}(d||(d={})),function(e){!function(t){var r,n;function a(t,r,n){for(var i=t.getFullStart(),a=t.parent;a;){var o=e.findPrecedingToken(i,r,a,!0);if(o)return e.rangeContainsRange(n,o);a=a.parent}return e.Debug.fail("Could not find preceding token")}function o(t,r){var n=function(t,r){if(29===t.kind||20===t.kind)return{list:m(t.parent,t,r),argumentIndex:0};var n=e.findContainingList(t);return n&&{list:n,argumentIndex:d(n,t)}}(t,r);if(n){var i=n.list,a=n.argumentIndex,o=function(t){var r=t.getChildren(),n=e.countWhere(r,(function(e){return 27!==e.kind}));r.length>0&&27===e.last(r).kind&&n++;return n}(i);0!==a&&e.Debug.assertLessThan(a,o);var s=function(t,r){var n=t.getFullStart(),i=e.skipTrivia(r.text,t.getEnd(),!1);return e.createTextSpan(n,i-n)}(i,r);return{list:i,argumentIndex:a,argumentCount:o,argumentsSpan:s}}}function s(t,r,n){var i=t.parent;if(e.isCallOrNewExpression(i)){var a=i,s=o(t,n);if(!s)return;var c=s.list,l=s.argumentIndex,u=s.argumentCount,d=s.argumentsSpan;return{isTypeParameterList:!!i.typeArguments&&i.typeArguments.pos===c.pos,invocation:{kind:0,node:a},argumentsSpan:d,argumentIndex:l,argumentCount:u}}if(e.isNoSubstitutionTemplateLiteral(t)&&e.isTaggedTemplateExpression(i))return e.isInsideTemplateLiteral(t,r,n)?p(i,0,n):void 0;if(e.isTemplateHead(t)&&206===i.parent.kind){var f=i,m=f.parent;return e.Debug.assert(220===f.kind),p(m,l=e.isInsideTemplateLiteral(t,r,n)?0:1,n)}if(e.isTemplateSpan(i)&&e.isTaggedTemplateExpression(i.parent.parent)){var g=i;m=i.parent.parent;if(e.isTemplateTail(t)&&!e.isInsideTemplateLiteral(t,r,n))return;l=function(t,r,n,i){if(e.Debug.assert(n>=r.getStart(),"Assumed 'position' could not occur before node."),e.isTemplateLiteralToken(r))return e.isInsideTemplateLiteral(r,n,i)?0:t+2;return t+1}(g.parent.templateSpans.indexOf(g),t,r,n);return p(m,l,n)}if(e.isJsxOpeningLikeElement(i)){var _=i.attributes.pos,h=e.skipTrivia(n.text,i.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:i},argumentsSpan:e.createTextSpan(_,h-_),argumentIndex:0,argumentCount:1}}var y=e.getPossibleTypeArgumentsInfo(t,n);if(y){var v=y.called,b=y.nTypeArguments;return{isTypeParameterList:!0,invocation:a={kind:1,called:v},argumentsSpan:d=e.createTextSpanFromBounds(v.getStart(n),t.end),argumentIndex:b,argumentCount:b+1}}}function c(t){return e.isBinaryExpression(t.parent)?c(t.parent):t}function l(t){return e.isBinaryExpression(t.left)?l(t.left)+1:2}function u(t){return"__type"===t.name&&e.firstDefined(t.declarations,(function(t){return e.isFunctionTypeNode(t)?t.parent.symbol:void 0}))||t}function d(e,t){for(var r=0,n=0,i=e.getChildren();n<i.length;n++){var a=i[n];if(a===t)break;27!==a.kind&&r++}return r}function p(t,r,n){var i=e.isNoSubstitutionTemplateLiteral(t.template)?1:t.template.templateSpans.length+1;return 0!==r&&e.Debug.assertLessThan(r,i),{isTypeParameterList:!1,invocation:{kind:0,node:t},argumentsSpan:f(t,n),argumentIndex:r,argumentCount:i}}function f(t,r){var n=t.template,i=n.getStart(),a=n.getEnd();220===n.kind&&(0===e.last(n.templateSpans).literal.getFullWidth()&&(a=e.skipTrivia(r.text,a,!1)));return e.createTextSpan(i,a-i)}function m(t,r,n){var i=t.getChildren(n),a=i.indexOf(r);return e.Debug.assert(a>=0&&i.length>a+1),i[a+1]}function g(t){return 0===t.kind?e.getInvokedExpression(t.node):t.called}function _(e){return 0===e.kind?e.node:1===e.kind?e.called:e.node}!function(e){e[e.Call=0]="Call",e[e.TypeArgs=1]="TypeArgs",e[e.Contextual=2]="Contextual"}(r||(r={})),t.getSignatureHelpItems=function(t,r,n,i,d){var p=t.getTypeChecker(),f=e.findTokenOnLeftOfPosition(r,n);if(f){var m=!!i&&"characterTyped"===i.kind;if(!m||!e.isInString(r,n,f)&&!e.isInComment(r,n)){var h=!!i&&"invoked"===i.kind,b=function(t,r,n,i,a){for(var d=function(t){e.Debug.assert(e.rangeContainsRange(t.parent,t),"Not a subspan",(function(){return"Child: "+e.Debug.formatSyntaxKind(t.kind)+", parent: "+e.Debug.formatSyntaxKind(t.parent.kind)}));var a=function(t,r,n,i){return function(t,r,n,i){var a=function(t,r,n){if(20!==t.kind&&27!==t.kind)return;var i=t.parent;switch(i.kind){case 208:case 166:case 209:case 210:var a=o(t,r);if(!a)return;var s=a.argumentIndex,u=a.argumentCount,d=a.argumentsSpan,p=e.isMethodDeclaration(i)?n.getContextualTypeForObjectLiteralElement(i):n.getContextualType(i);return p&&{contextualType:p,argumentIndex:s,argumentCount:u,argumentsSpan:d};case 218:var f=c(i),m=n.getContextualType(f),g=20===t.kind?0:l(i)-1,_=l(f);return m&&{contextualType:m,argumentIndex:g,argumentCount:_,argumentsSpan:e.createTextSpanFromNode(i)};default:return}}(t,n,i);if(!a)return;var s=a.contextualType,d=a.argumentIndex,p=a.argumentCount,f=a.argumentsSpan,m=s.getNonNullableType(),g=m.getCallSignatures();if(1!==g.length)return;var _={kind:2,signature:e.first(g),node:t,symbol:u(m.symbol)};return{isTypeParameterList:!1,invocation:_,argumentsSpan:f,argumentIndex:d,argumentCount:p}}(t,0,n,i)||s(t,r,n)}(t,r,n,i);if(a)return{value:a}},p=t;!e.isSourceFile(p)&&(a||!e.isBlock(p));p=p.parent){var f=d(p);if("object"==typeof f)return f.value}return}(f,n,r,p,h);if(b){d.throwIfCancellationRequested();var k=function(t,r,n,i,o){var s=t.invocation,c=t.argumentCount;switch(s.kind){case 0:if(o&&!function(t,r,n){if(!e.isCallOrNewExpression(r))return!1;var i=r.getChildren(n);switch(t.kind){case 20:return e.contains(i,t);case 27:var o=e.findContainingList(t);return!!o&&e.contains(i,o);case 29:return a(t,n,r.expression);default:return!1}}(i,s.node,n))return;var l=[],u=r.getResolvedSignatureForSignatureHelp(s.node,l,c);return 0===l.length?void 0:{kind:0,candidates:l,resolvedSignature:u};case 1:var d=s.called;if(o&&!a(i,n,e.isIdentifier(d)?d.parent:d))return;if(0!==(l=e.getPossibleGenericSignatures(d,c,r)).length)return{kind:0,candidates:l,resolvedSignature:e.first(l)};var p=r.getSymbolAtLocation(d);return p&&{kind:1,symbol:p};case 2:return{kind:0,candidates:[s.signature],resolvedSignature:s.signature};default:return e.Debug.assertNever(s)}}(b,p,r,f,m);return d.throwIfCancellationRequested(),k?p.runWithCancellationToken(d,(function(e){return 0===k.kind?y(k.candidates,k.resolvedSignature,b,r,e):function(e,t,r,n){var i=t.argumentCount,a=t.argumentsSpan,o=t.invocation,s=t.argumentIndex,c=n.getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(e);if(!c)return;var l=[v(e,c,n,_(o),r)];return{items:l,applicableSpan:a,selectedItemIndex:0,argumentIndex:s,argumentCount:i}}(k.symbol,b,r,e)})):e.isSourceFileJS(r)?function(t,r,n){if(2===t.invocation.kind)return;var i=g(t.invocation),a=e.isPropertyAccessExpression(i)?i.name.text:void 0,o=r.getTypeChecker();return void 0===a?void 0:e.firstDefined(r.getSourceFiles(),(function(r){return e.firstDefined(r.getNamedDeclarations().get(a),(function(e){var i=e.symbol&&o.getTypeOfSymbolAtLocation(e.symbol,e),a=i&&i.getCallSignatures();if(a&&a.length)return o.runWithCancellationToken(n,(function(e){return y(a,a[0],t,r,e,!0)}))}))}))}(b,t,d):void 0}}}},function(e){e[e.Candidate=0]="Candidate",e[e.Type=1]="Type"}(n||(n={})),t.getArgumentInfoForCompletions=function(e,t,r){var n=s(e,t,r);return!n||n.isTypeParameterList||0!==n.invocation.kind?void 0:{invocation:n.invocation.node,argumentCount:n.argumentCount,argumentIndex:n.argumentIndex}};var h=70246400;function y(t,r,n,a,o,s){var c,l=n.isTypeParameterList,u=n.argumentCount,d=n.argumentsSpan,p=n.invocation,f=n.argumentIndex,m=_(p),h=2===p.kind?p.symbol:o.getSymbolAtLocation(g(p))||s&&(null===(c=r.declaration)||void 0===c?void 0:c.symbol),y=h?e.symbolToDisplayParts(o,h,s?a:void 0,void 0):e.emptyArray,v=e.map(t,(function(t){return function(t,r,n,a,o,s){var c=(n?k:x)(t,a,o,s);return e.map(c,(function(n){var s=n.isVariadic,c=n.parameters,l=n.prefix,u=n.suffix,d=i(i([],r),l),p=i(i([],u),function(t,r,n){return e.mapToDisplayParts((function(e){e.writePunctuation(":"),e.writeSpace(" ");var i=n.getTypePredicateOfSignature(t);i?n.writeTypePredicate(i,r,void 0,e):n.writeType(n.getReturnTypeOfSignature(t),r,void 0,e)}))}(t,o,a)),f=t.getDocumentationComment(a),m=t.getJsDocTags();return{isVariadic:s,prefixDisplayParts:d,suffixDisplayParts:p,separatorDisplayParts:b,parameters:c,documentation:f,tags:m}}))}(t,y,l,o,m,a)}));0!==f&&e.Debug.assertLessThan(f,u);for(var E=0,S=0,D=0;D<v.length;D++){var w=v[D];if(t[D]===r&&(E=S,w.length>1))for(var T=0,C=0,A=w;C<A.length;C++){var N=A[C];if(N.isVariadic||N.parameters.length>=u){E=S+T;break}T++}S+=w.length}e.Debug.assert(-1!==E);var P={items:e.flatMapToMutable(v,e.identity),applicableSpan:d,selectedItemIndex:E,argumentIndex:f,argumentCount:u},I=P.items[E];if(I.isVariadic){var F=e.findIndex(I.parameters,(function(e){return!!e.isRest}));-1<F&&F<I.parameters.length-1?P.argumentIndex=I.parameters.length:P.argumentIndex=Math.min(P.argumentIndex,I.parameters.length-1)}return P}function v(t,r,n,a,o){var s=e.symbolToDisplayParts(n,t),c=e.createPrinter({removeComments:!0}),l=r.map((function(e){return E(e,n,a,o,c)})),u=t.getDocumentationComment(n),d=t.getJsDocTags();return{isVariadic:!1,prefixDisplayParts:i(i([],s),[e.punctuationPart(29)]),suffixDisplayParts:[e.punctuationPart(31)],separatorDisplayParts:b,parameters:l,documentation:u,tags:d}}var b=[e.punctuationPart(27),e.spacePart()];function k(t,r,n,a){var o=(t.target||t).typeParameters,s=e.createPrinter({removeComments:!0}),c=(o||e.emptyArray).map((function(e){return E(e,r,n,a,s)})),l=t.thisParameter?[r.symbolToParameterDeclaration(t.thisParameter,n,h)]:[];return r.getExpandedParameters(t).map((function(t){var o=e.factory.createNodeArray(i(i([],l),e.map(t,(function(e){return r.symbolToParameterDeclaration(e,n,h)})))),u=e.mapToDisplayParts((function(e){s.writeList(2576,o,a,e)}));return{isVariadic:!1,parameters:c,prefix:[e.punctuationPart(29)],suffix:i([e.punctuationPart(31)],u)}}))}function x(t,r,n,a){var o=r.hasEffectiveRestParameter(t),s=e.createPrinter({removeComments:!0}),c=e.mapToDisplayParts((function(i){if(t.typeParameters&&t.typeParameters.length){var o=e.factory.createNodeArray(t.typeParameters.map((function(e){return r.typeParameterToDeclaration(e,n,h)})));s.writeList(53776,o,a,i)}})),l=r.getExpandedParameters(t);return l.map((function(t){return{isVariadic:o&&(1===l.length||!!(32768&t[t.length-1].checkFlags)),parameters:t.map((function(t){return function(t,r,n,i,a){var o=e.mapToDisplayParts((function(e){var o=r.symbolToParameterDeclaration(t,n,h);a.writeNode(4,o,i,e)})),s=r.isOptionalParameter(t.valueDeclaration),c=!!(32768&t.checkFlags);return{name:t.name,documentation:t.getDocumentationComment(r),displayParts:o,isOptional:s,isRest:c}}(t,r,n,a,s)})),prefix:i(i([],c),[e.punctuationPart(20)]),suffix:[e.punctuationPart(21)]}}))}function E(t,r,n,i,a){var o=e.mapToDisplayParts((function(e){var o=r.typeParameterToDeclaration(t,n,h);a.writeNode(4,o,i,e)}));return{name:t.symbol.name,documentation:t.symbol.getDocumentationComment(r),displayParts:o,isOptional:!1,isRest:!1}}}(e.SignatureHelp||(e.SignatureHelp={}))}(d||(d={})),function(e){var t=/^data:(?:application\/json(?:;charset=[uU][tT][fF]-8);base64,([A-Za-z0-9+\/=]+)$)?/;function r(t,r,n){var i=e.tryParseRawSourceMap(r);if(i&&i.sources&&i.file&&i.mappings&&(!i.sourcesContent||!i.sourcesContent.some(e.isString)))return e.createDocumentPositionMapper(t,i,n)}e.getSourceMapper=function(t){var r=e.createGetCanonicalFileName(t.useCaseSensitiveFileNames()),n=t.getCurrentDirectory(),i=new e.Map,a=new e.Map;return{tryGetSourcePosition:function t(r){if(!e.isDeclarationFileName(r.fileName))return;if(!c(r.fileName))return;var n=s(r.fileName).getSourcePosition(r);return n&&n!==r?t(n)||n:void 0},tryGetGeneratedPosition:function(i){if(e.isDeclarationFileName(i.fileName))return;var a=c(i.fileName);if(!a)return;var o=t.getProgram();if(o.isSourceOfProjectReferenceRedirect(a.fileName))return;var l=o.getCompilerOptions(),u=e.outFile(l),d=u?e.removeFileExtension(u)+".d.ts":e.getDeclarationEmitOutputFilePathWorker(i.fileName,o.getCompilerOptions(),n,o.getCommonSourceDirectory(),r);if(void 0===d)return;var p=s(d,i.fileName).getGeneratedPosition(i);return p===i?void 0:p},toLineColumnOffset:function(e,t){return u(e).getLineAndCharacterOfPosition(t)},clearCache:function(){i.clear(),a.clear()}};function o(t){return e.toPath(t,n,r)}function s(n,i){var s,c=o(n),l=a.get(c);if(l)return l;if(t.getDocumentPositionMapper)s=t.getDocumentPositionMapper(n,i);else if(t.readFile){var d=u(n);s=d&&e.getDocumentPositionMapper({getSourceFileLike:u,getCanonicalFileName:r,log:function(e){return t.log(e)}},n,e.getLineInfo(d.text,e.getLineStarts(d)),(function(e){return!t.fileExists||t.fileExists(e)?t.readFile(e):void 0}))}return a.set(c,s||e.identitySourceMapConsumer),s||e.identitySourceMapConsumer}function c(e){var r=t.getProgram();if(r){var n=o(e),i=r.getSourceFileByPath(n);return i&&i.resolvedPath===n?i:void 0}}function l(r){var n=o(r),a=i.get(n);if(void 0!==a)return a||void 0;if(t.readFile&&(!t.fileExists||t.fileExists(n))){var s=t.readFile(n),c=!!s&&function(t,r){return{text:t,lineMap:r,getLineAndCharacterOfPosition:function(t){return e.computeLineAndCharacterOfPosition(e.getLineStarts(this),t)}}}(s);return i.set(n,c),c||void 0}i.set(n,!1)}function u(e){return t.getSourceFileLike?t.getSourceFileLike(e):c(e)||l(e)}},e.getDocumentPositionMapper=function(n,i,a,o){var s=e.tryGetSourceMappingURL(a);if(s){var c=t.exec(s);if(c){if(c[1]){var l=c[1];return r(n,e.base64decode(e.sys,l),i)}s=void 0}}var u=[];s&&u.push(s),u.push(i+".map");for(var d=s&&e.getNormalizedAbsolutePath(s,e.getDirectoryPath(i)),p=0,f=u;p<f.length;p++){var m=f[p],g=e.getNormalizedAbsolutePath(m,e.getDirectoryPath(i)),_=o(g,d);if(e.isString(_))return r(n,_,g);if(void 0!==_)return _||void 0}}}(d||(d={})),function(e){var t=new e.Map;function r(t){return e.isPropertyAccessExpression(t)?r(t.expression):t}function n(t){switch(t.kind){case 264:var r=t.importClause,n=t.moduleSpecifier;return r&&!r.name&&r.namedBindings&&266===r.namedBindings.kind&&e.isStringLiteral(n)?r.namedBindings.name:void 0;case 263:return t.name;default:return}}function i(t,r){return e.isReturnStatement(t)&&!!t.expression&&a(t.expression,r)}function a(t,r){if(!o(t)||!t.arguments.every((function(e){return s(e,r)})))return!1;for(var n=t.expression;o(n)||e.isPropertyAccessExpression(n);){if(e.isCallExpression(n)&&!n.arguments.every((function(e){return s(e,r)})))return!1;n=n.expression}return!0}function o(t){return e.isCallExpression(t)&&(e.hasPropertyAccessExpressionWithName(t,"then")&&function(t){return!(t.arguments.length>2)&&(t.arguments.length<2||e.some(t.arguments,(function(t){return 104===t.kind||e.isIdentifier(t)&&"undefined"===t.text})))}(t)||e.hasPropertyAccessExpressionWithName(t,"catch"))}function s(r,n){switch(r.kind){case 253:case 209:case 210:t.set(c(r),!0);case 104:return!0;case 78:case 202:var i=n.getSymbolAtLocation(r);return!!i&&(n.isUndefinedSymbol(i)||e.some(e.skipAlias(i,n).declarations,(function(t){return e.isFunctionLike(t)||e.hasInitializer(t)&&!!t.initializer&&e.isFunctionLike(t.initializer)})));default:return!1}}function c(e){return e.pos.toString()+":"+e.end.toString()}e.computeSuggestionDiagnostics=function(a,o,s){o.getSemanticDiagnostics(a,s);var l,u=[],d=o.getTypeChecker();a.commonJsModuleIndicator&&(e.programContainsEs6Modules(o)||e.compilerOptionsIndicateEs6Modules(o.getCompilerOptions()))&&function(t){return t.statements.some((function(t){switch(t.kind){case 234:return t.declarationList.declarations.some((function(t){return!!t.initializer&&e.isRequireCall(r(t.initializer),!0)}));case 235:var n=t.expression;if(!e.isBinaryExpression(n))return e.isRequireCall(n,!0);var i=e.getAssignmentDeclarationKind(n);return 1===i||2===i;default:return!1}}))}(a)&&u.push(e.createDiagnosticForNode((l=a.commonJsModuleIndicator,e.isBinaryExpression(l)?l.left:l),e.Diagnostics.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module));var p=e.isSourceFileJS(a);if(t.clear(),function r(n){if(p)(function(t,r){var n,i,a,o;if(209===t.kind){if(e.isVariableDeclaration(t.parent)&&(null===(n=t.symbol.members)||void 0===n?void 0:n.size))return!0;var s=r.getSymbolOfExpando(t,!1);return!(!s||!(null===(i=s.exports)||void 0===i?void 0:i.size)&&!(null===(a=s.members)||void 0===a?void 0:a.size))}if(253===t.kind)return!!(null===(o=t.symbol.members)||void 0===o?void 0:o.size);return!1})(n,d)&&u.push(e.createDiagnosticForNode(e.isVariableDeclaration(n.parent)?n.parent.name:n,e.Diagnostics.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(e.isVariableStatement(n)&&n.parent===a&&2&n.declarationList.flags&&1===n.declarationList.declarations.length){var o=n.declarationList.declarations[0].initializer;o&&e.isRequireCall(o,!0)&&u.push(e.createDiagnosticForNode(o,e.Diagnostics.require_call_may_be_converted_to_an_import))}e.codefix.parameterShouldGetTypeFromJSDoc(n)&&u.push(e.createDiagnosticForNode(n.name||n,e.Diagnostics.JSDoc_types_may_be_moved_to_TypeScript_types))}e.isFunctionLikeDeclaration(n)&&function(r,n,a){(function(t,r){return!e.isAsyncFunction(t)&&t.body&&e.isBlock(t.body)&&function(t,r){return!!e.forEachReturnStatement(t,(function(e){return i(e,r)}))}(t.body,r)&&function(e,t){var r=t.getTypeAtLocation(e),n=t.getSignaturesOfType(r,0),i=n.length?t.getReturnTypeOfSignature(n[0]):void 0;return!!i&&!!t.getPromisedTypeOfPromise(i)}(t,r)})(r,n)&&!t.has(c(r))&&a.push(e.createDiagnosticForNode(!r.name&&e.isVariableDeclaration(r.parent)&&e.isIdentifier(r.parent.name)?r.parent.name:r,e.Diagnostics.This_may_be_converted_to_an_async_function))}(n,d,u);n.forEachChild(r)}(a),e.getAllowSyntheticDefaultImports(o.getCompilerOptions()))for(var f=0,m=a.imports;f<m.length;f++){var g=m[f],_=n(e.importFromModuleSpecifier(g));if(_){var h=e.getResolvedModule(a,g.text),y=h&&o.getSourceFile(h.resolvedFileName);y&&y.externalModuleIndicator&&e.isExportAssignment(y.externalModuleIndicator)&&y.externalModuleIndicator.isExportEquals&&u.push(e.createDiagnosticForNode(_,e.Diagnostics.Import_may_be_converted_to_a_default_import))}}return e.addRange(u,a.bindSuggestionDiagnostics),e.addRange(u,o.getSuggestionDiagnostics(a,s)),u.sort((function(e,t){return e.start-t.start}))},e.isReturnStatementWithFixablePromiseHandler=i,e.isFixablePromiseHandler=a}(d||(d={})),function(e){!function(t){var r=70246400;function n(t,r,n){var a=i(t,r,n);if(""!==a)return a;var o=e.getCombinedLocalAndExportSymbolFlags(r);return 32&o?e.getDeclarationOfKind(r,223)?"local class":"class":384&o?"enum":524288&o?"type":64&o?"interface":262144&o?"type parameter":8&o?"enum member":2097152&o?"alias":1536&o?"module":a}function i(t,r,n){var i=t.getRootSymbols(r);if(1===i.length&&8192&e.first(i).flags&&0!==t.getTypeOfSymbolAtLocation(r,n).getNonNullableType().getCallSignatures().length)return"method";if(t.isUndefinedSymbol(r))return"var";if(t.isArgumentsSymbol(r))return"local var";if(108===n.kind&&e.isExpression(n))return"parameter";var a=e.getCombinedLocalAndExportSymbolFlags(r);if(3&a)return e.isFirstDeclarationOfSymbolParameter(r)?"parameter":r.valueDeclaration&&e.isVarConst(r.valueDeclaration)?"const":e.forEach(r.declarations,e.isLet)?"let":s(r)?"local var":"var";if(16&a)return s(r)?"local function":"function";if(32768&a)return"getter";if(65536&a)return"setter";if(8192&a)return"method";if(16384&a)return"constructor";if(4&a){if(33554432&a&&6&r.checkFlags){var o=e.forEach(t.getRootSymbols(r),(function(e){if(98311&e.getFlags())return"property"}));return o||(t.getTypeOfSymbolAtLocation(r,n).getCallSignatures().length?"method":"property")}switch(n.parent&&n.parent.kind){case 278:case 276:case 277:return 78===n.kind?"property":"JSX attribute";case 283:return"JSX attribute";default:return"property"}}return""}function a(t){return!!(8192&e.getCombinedNodeFlagsAlwaysIncludeJSDoc(t))}function o(t){if(t.declarations&&t.declarations.length){var r=t.declarations,n=r[0],i=r.slice(1),o=e.length(i)&&a(n)&&e.some(i,(function(e){return!a(e)}))?8192:0,s=e.getNodeModifiers(n,o);if(s)return s.split(",")}return[]}function s(t){return!t.parent&&e.forEach(t.declarations,(function(t){if(209===t.kind)return!0;if(251!==t.kind&&253!==t.kind)return!1;for(var r=t.parent;!e.isFunctionBlock(r);r=r.parent)if(300===r.kind||260===r.kind)return!1;return!0}))}t.getSymbolKind=n,t.getSymbolModifiers=function(t,r){if(!r)return"";var n=new e.Set(o(r));if(2097152&r.flags){var i=t.getAliasedSymbol(r);i!==r&&e.forEach(o(i),(function(e){n.add(e)}))}return 16777216&r.flags&&n.add("optional"),n.size>0?e.arrayFrom(n.values()).join(","):""},t.getSymbolDisplayPartsDocumentationAndSymbolKind=function t(a,o,s,c,l,u,d){void 0===u&&(u=e.getMeaningFromLocation(l));var p,f,m,g,_=[],h=[],y=[],v=e.getCombinedLocalAndExportSymbolFlags(o),b=1&u?i(a,o,l):"",k=!1,x=108===l.kind&&e.isInExpressionContext(l),E=!1;if(108===l.kind&&!x)return{displayParts:[e.keywordPart(108)],documentation:[],symbolKind:"primitive type",tags:void 0};if(""!==b||32&v||2097152&v){"getter"!==b&&"setter"!==b||(b="property");var S=void 0;if(p=x?a.getTypeAtLocation(l):a.getTypeOfSymbolAtLocation(o.exportSymbol||o,l),l.parent&&202===l.parent.kind){var D=l.parent.name;(D===l||D&&0===D.getFullWidth())&&(l=l.parent)}var w=void 0;if(e.isCallOrNewExpression(l)?w=l:(e.isCallExpressionTarget(l)||e.isNewExpressionTarget(l)||l.parent&&(e.isJsxOpeningLikeElement(l.parent)||e.isTaggedTemplateExpression(l.parent))&&e.isFunctionLike(o.valueDeclaration))&&(w=l.parent),w){S=a.tryGetResolvedSignatureWithoutCheck(w);var T=205===w.kind||e.isCallExpression(w)&&106===w.expression.kind,C=T?p.getConstructSignatures():p.getCallSignatures();if(e.contains(C,S.target)||e.contains(C,S)||(S=C.length?C[0]:void 0),S){switch(T&&32&v?(b="constructor",X(p.symbol,b)):2097152&v?(Q(b="alias"),_.push(e.spacePart()),T&&(4&S.flags&&(_.push(e.keywordPart(126)),_.push(e.spacePart())),_.push(e.keywordPart(103)),_.push(e.spacePart())),Y(o)):X(o,b),b){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":_.push(e.punctuationPart(58)),_.push(e.spacePart()),16&e.getObjectFlags(p)||!p.symbol||(e.addRange(_,e.symbolToDisplayParts(a,p.symbol,c,void 0,5)),_.push(e.lineBreakPart())),T&&(4&S.flags&&(_.push(e.keywordPart(126)),_.push(e.spacePart())),_.push(e.keywordPart(103)),_.push(e.spacePart())),Z(S,C,262144);break;default:Z(S,C)}k=!0,E=C.length>1}}else if(e.isNameOfFunctionDeclaration(l)&&!(98304&v)||133===l.kind&&167===l.parent.kind){var A=l.parent,N=o.declarations&&e.find(o.declarations,(function(e){return e===(133===l.kind?A.parent:A)}));if(N){C=167===A.kind?p.getNonNullableType().getConstructSignatures():p.getNonNullableType().getCallSignatures();S=a.isImplementationOfOverload(A)?C[0]:a.getSignatureFromDeclaration(A),167===A.kind?(b="constructor",X(p.symbol,b)):X(170!==A.kind||2048&p.symbol.flags||4096&p.symbol.flags?o:p.symbol,b),Z(S,C),k=!0,E=C.length>1}}}if(32&v&&!k&&!x&&(G(),e.getDeclarationOfKind(o,223)?Q("local class"):e.getDeclarationOfKind(o,255)?_.push(e.keywordPart(84)):_.push(e.keywordPart(83)),_.push(e.spacePart()),Y(o),ee(o,s)),64&v&&2&u&&(W(),_.push(e.keywordPart(118)),_.push(e.spacePart()),Y(o),ee(o,s)),524288&v&&2&u&&(W(),_.push(e.keywordPart(150)),_.push(e.spacePart()),Y(o),ee(o,s),_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),e.addRange(_,e.typeToDisplayParts(a,a.getDeclaredTypeOfSymbol(o),c,8388608))),384&v&&(W(),e.some(o.declarations,(function(t){return e.isEnumDeclaration(t)&&e.isEnumConst(t)}))&&(_.push(e.keywordPart(85)),_.push(e.spacePart())),_.push(e.keywordPart(92)),_.push(e.spacePart()),Y(o)),1536&v&&!x){W();var P=(V=e.getDeclarationOfKind(o,259))&&V.name&&78===V.name.kind;_.push(e.keywordPart(P?141:140)),_.push(e.spacePart()),Y(o)}if(262144&v&&2&u)if(W(),_.push(e.punctuationPart(20)),_.push(e.textPart("type parameter")),_.push(e.punctuationPart(21)),_.push(e.spacePart()),Y(o),o.parent)$(),Y(o.parent,c),ee(o.parent,c);else{var I=e.getDeclarationOfKind(o,160);if(void 0===I)return e.Debug.fail();if(V=I.parent)if(e.isFunctionLikeKind(V.kind)){$();S=a.getSignatureFromDeclaration(V);171===V.kind?(_.push(e.keywordPart(103)),_.push(e.spacePart())):170!==V.kind&&V.name&&Y(V.symbol),e.addRange(_,e.signatureToDisplayParts(a,S,s,32))}else 257===V.kind&&($(),_.push(e.keywordPart(150)),_.push(e.spacePart()),Y(V.symbol),ee(V.symbol,s))}if(8&v&&(b="enum member",X(o,"enum member"),294===(V=o.declarations[0]).kind)){var F=a.getConstantValue(V);void 0!==F&&(_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),_.push(e.displayPart(e.getTextOfConstantValue(F),"number"==typeof F?e.SymbolDisplayPartKind.numericLiteral:e.SymbolDisplayPartKind.stringLiteral)))}if(2097152&o.flags){if(W(),!k){var O=a.getAliasedSymbol(o);if(O!==o&&O.declarations&&O.declarations.length>0){var R=O.declarations[0],M=e.getNameOfDeclaration(R);if(M){var L=e.isModuleWithStringLiteralName(R)&&e.hasSyntacticModifier(R,2),j="default"!==o.name&&!L,B=t(a,O,e.getSourceFileOfNode(R),R,M,u,j?o:O);_.push.apply(_,B.displayParts),_.push(e.lineBreakPart()),m=B.documentation,g=B.tags}else m=O.getContextualDocumentationComment(R,a),g=O.getJsDocTags()}}switch(o.declarations[0].kind){case 262:_.push(e.keywordPart(93)),_.push(e.spacePart()),_.push(e.keywordPart(141));break;case 269:_.push(e.keywordPart(93)),_.push(e.spacePart()),_.push(e.keywordPart(o.declarations[0].isExportEquals?62:88));break;case 273:_.push(e.keywordPart(93));break;default:_.push(e.keywordPart(100))}_.push(e.spacePart()),Y(o),e.forEach(o.declarations,(function(t){if(263===t.kind){var r=t;if(e.isExternalModuleImportEqualsDeclaration(r))_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),_.push(e.keywordPart(144)),_.push(e.punctuationPart(20)),_.push(e.displayPart(e.getTextOfNode(e.getExternalModuleImportEqualsDeclarationExpression(r)),e.SymbolDisplayPartKind.stringLiteral)),_.push(e.punctuationPart(21));else{var n=a.getSymbolAtLocation(r.moduleReference);n&&(_.push(e.spacePart()),_.push(e.operatorPart(62)),_.push(e.spacePart()),Y(n,c))}return!0}}))}if(!k)if(""!==b){if(p)if(x?(W(),_.push(e.keywordPart(108))):X(o,b),"property"===b||"JSX attribute"===b||3&v||"local var"===b||x){if(_.push(e.punctuationPart(58)),_.push(e.spacePart()),p.symbol&&262144&p.symbol.flags){var z=e.mapToDisplayParts((function(t){var n=a.typeParameterToDeclaration(p,c,r);K().writeNode(4,n,e.getSourceFileOfNode(e.getParseTreeNode(c)),t)}));e.addRange(_,z)}else e.addRange(_,e.typeToDisplayParts(a,p,c));if(o.target&&o.target.tupleLabelDeclaration){var U=o.target.tupleLabelDeclaration;e.Debug.assertNode(U.name,e.isIdentifier),_.push(e.spacePart()),_.push(e.punctuationPart(20)),_.push(e.textPart(e.idText(U.name))),_.push(e.punctuationPart(21))}}else if(16&v||8192&v||16384&v||131072&v||98304&v||"method"===b){(C=p.getNonNullableType().getCallSignatures()).length&&(Z(C[0],C),E=C.length>1)}}else b=n(a,o,l);if(0!==h.length||E||(h=o.getContextualDocumentationComment(c,a)),0===h.length&&4&v&&o.parent&&e.forEach(o.parent.declarations,(function(e){return 300===e.kind})))for(var q=0,J=o.declarations;q<J.length;q++){var V;if((V=J[q]).parent&&218===V.parent.kind){var H=a.getSymbolAtLocation(V.parent.right);if(H&&(h=H.getDocumentationComment(a),y=H.getJsDocTags(),h.length>0))break}}return 0!==y.length||E||(y=o.getJsDocTags()),0===h.length&&m&&(h=m),0===y.length&&g&&(y=g),{displayParts:_,documentation:h,symbolKind:b,tags:0===y.length?void 0:y};function K(){return f||(f=e.createPrinter({removeComments:!0})),f}function W(){_.length&&_.push(e.lineBreakPart()),G()}function G(){d&&(Q("alias"),_.push(e.spacePart()))}function $(){_.push(e.spacePart()),_.push(e.keywordPart(101)),_.push(e.spacePart())}function Y(t,r){d&&t===o&&(t=d);var n=e.symbolToDisplayParts(a,t,r||s,void 0,7);e.addRange(_,n),16777216&o.flags&&_.push(e.punctuationPart(57))}function X(t,r){W(),r&&(Q(r),t&&!e.some(t.declarations,(function(t){return e.isArrowFunction(t)||(e.isFunctionExpression(t)||e.isClassExpression(t))&&!t.name}))&&(_.push(e.spacePart()),Y(t)))}function Q(t){switch(t){case"var":case"function":case"let":case"const":case"constructor":return void _.push(e.textOrKeywordPart(t));default:return _.push(e.punctuationPart(20)),_.push(e.textOrKeywordPart(t)),void _.push(e.punctuationPart(21))}}function Z(t,r,n){void 0===n&&(n=0),e.addRange(_,e.signatureToDisplayParts(a,t,c,32|n)),r.length>1&&(_.push(e.spacePart()),_.push(e.punctuationPart(20)),_.push(e.operatorPart(39)),_.push(e.displayPart((r.length-1).toString(),e.SymbolDisplayPartKind.numericLiteral)),_.push(e.spacePart()),_.push(e.textPart(2===r.length?"overload":"overloads")),_.push(e.punctuationPart(21))),h=t.getDocumentationComment(a),y=t.getJsDocTags(),r.length>1&&0===h.length&&0===y.length&&(h=r[0].getDocumentationComment(a),y=r[0].getJsDocTags())}function ee(t,n){var i=e.mapToDisplayParts((function(i){var o=a.symbolToTypeParameterDeclarations(t,n,r);K().writeList(53776,o,e.getSourceFileOfNode(e.getParseTreeNode(n)),i)}));e.addRange(_,i)}}}(e.SymbolDisplay||(e.SymbolDisplay={}))}(d||(d={})),function(e){function t(t,r){var i=[],a=r.compilerOptions?n(r.compilerOptions,i):{},o=e.getDefaultCompilerOptions();for(var s in o)e.hasProperty(o,s)&&void 0===a[s]&&(a[s]=o[s]);for(var c=0,l=e.transpileOptionValueCompilerOptions;c<l.length;c++){var u=l[c];a[u.name]=u.transpileOptionValue}a.suppressOutputPathCheck=!0,a.allowNonTsExtensions=!0;var d=r.fileName||(r.compilerOptions&&r.compilerOptions.jsx?"module.tsx":"module.ts"),p=e.ensureScriptKind(d,void 0),f=e.createSourceFile(d,t,a.target,void 0,p,a);r.moduleName&&(f.moduleName=r.moduleName),r.renamedDependencies&&(f.renamedDependencies=new e.Map(e.getEntries(r.renamedDependencies)));var m,g,_=e.getNewLineCharacter(a),h={getSourceFile:function(t){return t===e.normalizePath(d)?f:void 0},writeFile:function(t,r){e.fileExtensionIs(t,".map")?(e.Debug.assertEqual(g,void 0,"Unexpected multiple source map outputs, file:",t),g=r):(e.Debug.assertEqual(m,void 0,"Unexpected multiple outputs, file:",t),m=r)},getDefaultLibFileName:function(){return"lib.d.ts"},useCaseSensitiveFileNames:function(){return!1},getCanonicalFileName:function(e){return e},getCurrentDirectory:function(){return""},getNewLine:function(){return _},fileExists:function(e){return e===d},readFile:function(){return""},directoryExists:function(){return!0},getDirectories:function(){return[]}},y=e.createProgram([d],a,h);return r.reportDiagnostics&&(e.addRange(i,y.getSyntacticDiagnostics(f)),e.addRange(i,y.getOptionsDiagnostics())),y.emit(void 0,void 0,void 0,void 0,r.transformers),void 0===m?e.Debug.fail("Output generation failed"):{outputText:m,diagnostics:i,sourceMapText:g}}var r;function n(t,n){r=r||e.filter(e.optionDeclarations,(function(t){return"object"==typeof t.type&&!e.forEachEntry(t.type,(function(e){return"number"!=typeof e}))})),t=e.cloneCompilerOptions(t);for(var i=function(r){if(!e.hasProperty(t,r.name))return"continue";var i=t[r.name];e.isString(i)?t[r.name]=e.parseCustomTypeOption(r,i,n):e.forEachEntry(r.type,(function(e){return e===i}))||n.push(e.createCompilerDiagnosticForInvalidCustomType(r))},a=0,o=r;a<o.length;a++){i(o[a])}return t}e.transpileModule=t,e.transpile=function(r,n,i,a,o){var s=t(r,{compilerOptions:n,fileName:i,reportDiagnostics:!!a,moduleName:o});return e.addRange(a,s.diagnostics),s.outputText},e.fixupCompilerOptions=n}(d||(d={})),function(e){!function(t){!function(e){e[e.FormatDocument=0]="FormatDocument",e[e.FormatSelection=1]="FormatSelection",e[e.FormatOnEnter=2]="FormatOnEnter",e[e.FormatOnSemicolon=3]="FormatOnSemicolon",e[e.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",e[e.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace"}(t.FormattingRequestKind||(t.FormattingRequestKind={}));var r=function(){function t(e,t,r){this.sourceFile=e,this.formattingRequestKind=t,this.options=r}return t.prototype.updateContext=function(t,r,n,i,a){this.currentTokenSpan=e.Debug.checkDefined(t),this.currentTokenParent=e.Debug.checkDefined(r),this.nextTokenSpan=e.Debug.checkDefined(n),this.nextTokenParent=e.Debug.checkDefined(i),this.contextNode=e.Debug.checkDefined(a),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0},t.prototype.ContextNodeAllOnSameLine=function(){return void 0===this.contextNodeAllOnSameLine&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine},t.prototype.NextNodeAllOnSameLine=function(){return void 0===this.nextNodeAllOnSameLine&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine},t.prototype.TokensAreOnSameLine=function(){if(void 0===this.tokensAreOnSameLine){var e=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,t=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=e===t}return this.tokensAreOnSameLine},t.prototype.ContextNodeBlockIsOnOneLine=function(){return void 0===this.contextNodeBlockIsOnOneLine&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine},t.prototype.NextNodeBlockIsOnOneLine=function(){return void 0===this.nextNodeBlockIsOnOneLine&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine},t.prototype.NodeIsOnOneLine=function(e){return this.sourceFile.getLineAndCharacterOfPosition(e.getStart(this.sourceFile)).line===this.sourceFile.getLineAndCharacterOfPosition(e.getEnd()).line},t.prototype.BlockIsOnOneLine=function(t){var r=e.findChildOfKind(t,18,this.sourceFile),n=e.findChildOfKind(t,19,this.sourceFile);return!(!r||!n)&&this.sourceFile.getLineAndCharacterOfPosition(r.getEnd()).line===this.sourceFile.getLineAndCharacterOfPosition(n.getStart(this.sourceFile)).line},t}();t.FormattingContext=r}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){var r,n=e.createScanner(99,!1,0),i=e.createScanner(99,!1,1);!function(e){e[e.Scan=0]="Scan",e[e.RescanGreaterThanToken=1]="RescanGreaterThanToken",e[e.RescanSlashToken=2]="RescanSlashToken",e[e.RescanTemplateToken=3]="RescanTemplateToken",e[e.RescanJsxIdentifier=4]="RescanJsxIdentifier",e[e.RescanJsxText=5]="RescanJsxText",e[e.RescanJsxAttributeValue=6]="RescanJsxAttributeValue"}(r||(r={})),t.getFormattingScanner=function(r,a,o,s,c){var l=1===a?i:n;l.setText(r),l.setTextPos(o);var u,d,p,f,m,g=!0,_=c({advance:function(){m=void 0,l.getStartPos()!==o?g=!!d&&4===e.last(d).kind:l.scan();u=void 0,d=void 0;var t=l.getStartPos();for(;t<s;){var r=l.getToken();if(!e.isTrivia(r))break;l.scan();var n={pos:t,end:l.getStartPos(),kind:r};t=l.getStartPos(),u=e.append(u,n)}p=l.getStartPos()},readTokenInfo:function(r){e.Debug.assert(h());var n=function(e){switch(e.kind){case 33:case 70:case 71:case 49:case 48:return!0}return!1}(r)?1:(a=r,13===a.kind?2:function(e){return 16===e.kind||17===e.kind}(r)?3:function(t){if(t.parent)switch(t.parent.kind){case 283:case 278:case 279:case 277:return e.isKeyword(t.kind)||78===t.kind}return!1}(r)?4:function(t){if(e.isJsxText(t)){var r=e.findAncestor(t.parent,(function(t){return e.isJsxElement(t)}));return!!r&&!e.isParenthesizedExpression(r.parent)}return!1}(r)?5:(i=r,i.parent&&e.isJsxAttribute(i.parent)&&i.parent.initializer===i?6:0));var i;var a;if(m&&n===f)return v(m,r);l.getStartPos()!==p&&(e.Debug.assert(void 0!==m),l.setTextPos(p),l.scan());var o=function(t,r){var n=l.getToken();switch(f=0,r){case 1:if(31===n){f=1;var i=l.reScanGreaterToken();return e.Debug.assert(t.kind===i),i}break;case 2:if(43===(a=n)||67===a){f=2;i=l.reScanSlashToken();return e.Debug.assert(t.kind===i),i}break;case 3:if(19===n)return f=3,l.reScanTemplateToken(!1);break;case 4:return f=4,l.scanJsxIdentifier();case 5:return f=5,l.reScanJsxToken();case 6:return f=6,l.reScanJsxAttributeValue();case 0:break;default:e.Debug.assertNever(r)}var a;return n}(r,n),c=t.createTextRangeWithKind(l.getStartPos(),l.getTextPos(),o);d&&(d=void 0);for(;l.getStartPos()<s&&(o=l.scan(),e.isTrivia(o));){var g=t.createTextRangeWithKind(l.getStartPos(),l.getTextPos(),o);if(d||(d=[]),d.push(g),4===o){l.scan();break}}return v(m={leadingTrivia:u,trailingTrivia:d,token:c},r)},readEOFTokenRange:function(){return e.Debug.assert(y()),t.createTextRangeWithKind(l.getStartPos(),l.getTextPos(),1)},isOnToken:h,isOnEOF:y,getCurrentLeadingTrivia:function(){return u},lastTrailingTriviaWasNewLine:function(){return g},skipToEndOf:function(e){l.setTextPos(e.end),p=l.getStartPos(),f=void 0,m=void 0,g=!1,u=void 0,d=void 0},skipToStartOf:function(e){l.setTextPos(e.pos),p=l.getStartPos(),f=void 0,m=void 0,g=!1,u=void 0,d=void 0}});return m=void 0,l.setText(void 0),_;function h(){var t=m?m.token.kind:l.getToken();return(m?m.token.pos:l.getStartPos())<s&&1!==t&&!e.isTrivia(t)}function y(){return 1===(m?m.token.kind:l.getToken())}function v(t,r){return e.isToken(r)&&t.token.kind!==r.kind&&(t.token.kind=r.kind),t}}}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){t.anyContext=e.emptyArray,function(e){e[e.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",e[e.StopProcessingTokenActions=2]="StopProcessingTokenActions",e[e.InsertSpace=4]="InsertSpace",e[e.InsertNewLine=8]="InsertNewLine",e[e.DeleteSpace=16]="DeleteSpace",e[e.DeleteToken=32]="DeleteToken",e[e.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",e[e.StopAction=3]="StopAction",e[e.ModifySpaceAction=28]="ModifySpaceAction",e[e.ModifyTokenAction=96]="ModifyTokenAction"}(t.RuleAction||(t.RuleAction={})),function(e){e[e.None=0]="None",e[e.CanDeleteNewLines=1]="CanDeleteNewLines"}(t.RuleFlags||(t.RuleFlags={}))}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){function r(e,t,r,n,i,o){return void 0===o&&(o=0),{leftTokenRange:a(t),rightTokenRange:a(r),rule:{debugName:e,context:n,action:i,flags:o}}}function n(e){return{tokens:e,isSpecific:!0}}function a(t){return"number"==typeof t?n([t]):e.isArray(t)?n(t):t}function o(t,r,i){void 0===i&&(i=[]);for(var a=[],o=t;o<=r;o++)e.contains(i,o)||a.push(o);return n(a)}function s(e,t){return function(r){return r.options&&r.options[e]===t}}function c(e){return function(t){return t.options&&t.options.hasOwnProperty(e)&&!!t.options[e]}}function l(e){return function(t){return t.options&&t.options.hasOwnProperty(e)&&!t.options[e]}}function u(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!t.options[e]}}function d(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!t.options[e]||t.TokensAreOnSameLine()}}function p(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!!t.options[e]}}function f(e){return 239===e.contextNode.kind}function m(e){return!f(e)}function g(e){switch(e.contextNode.kind){case 218:return 27!==e.contextNode.operatorToken.kind;case 219:case 185:case 226:case 273:case 268:case 173:case 183:case 184:return!0;case 199:case 257:case 263:case 251:case 161:case 294:case 164:case 163:return 62===e.currentTokenSpan.kind||62===e.nextTokenSpan.kind;case 240:case 160:return 101===e.currentTokenSpan.kind||101===e.nextTokenSpan.kind||62===e.currentTokenSpan.kind||62===e.nextTokenSpan.kind;case 241:return 157===e.currentTokenSpan.kind||157===e.nextTokenSpan.kind}return!1}function _(e){return!g(e)}function h(e){return!y(e)}function y(t){var r=t.contextNode.kind;return 164===r||163===r||161===r||251===r||e.isFunctionLikeKind(r)}function v(e){return 219===e.contextNode.kind||185===e.contextNode.kind}function b(e){return e.TokensAreOnSameLine()||D(e)}function k(e){return 197===e.contextNode.kind||191===e.contextNode.kind||function(e){return S(e)&&(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}(e)}function x(e){return D(e)&&!(e.NextNodeAllOnSameLine()||e.NextNodeBlockIsOnOneLine())}function E(e){return S(e)&&!(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}function S(e){return w(e.contextNode)}function D(e){return w(e.nextTokenParent)}function w(e){if(P(e))return!0;switch(e.kind){case 232:case 261:case 201:case 260:return!0}return!1}function T(e){switch(e.contextNode.kind){case 253:case 166:case 165:case 168:case 169:case 170:case 209:case 167:case 210:case 256:return!0}return!1}function C(e){return!T(e)}function A(e){return 253===e.contextNode.kind||209===e.contextNode.kind}function N(e){return P(e.contextNode)}function P(e){switch(e.kind){case 254:case 255:case 223:case 256:case 258:case 178:case 259:case 270:case 271:case 264:case 267:return!0}return!1}function I(e){switch(e.currentTokenParent.kind){case 254:case 255:case 259:case 258:case 290:case 260:case 246:return!0;case 232:var t=e.currentTokenParent.parent;if(!t||210!==t.kind&&209!==t.kind)return!0}return!1}function F(e){switch(e.contextNode.kind){case 236:case 246:case 239:case 240:case 241:case 238:case 249:case 237:case 245:case 290:return!0;default:return!1}}function O(e){return 201===e.contextNode.kind}function R(e){return function(e){return 204===e.contextNode.kind}(e)||function(e){return 205===e.contextNode.kind}(e)}function M(e){return 27!==e.currentTokenSpan.kind}function L(e){return 23!==e.nextTokenSpan.kind}function j(e){return 21!==e.nextTokenSpan.kind}function B(e){return 210===e.contextNode.kind}function z(e){return 196===e.contextNode.kind}function U(e){return e.TokensAreOnSameLine()&&11!==e.contextNode.kind}function q(e){return 11!==e.contextNode.kind}function J(e){return 276!==e.contextNode.kind&&280!==e.contextNode.kind}function V(e){return 286===e.contextNode.kind||285===e.contextNode.kind}function H(e){return 283===e.nextTokenParent.kind}function K(e){return 283===e.contextNode.kind}function W(e){return 277===e.contextNode.kind}function G(e){return!T(e)&&!D(e)}function $(e){return e.TokensAreOnSameLine()&&!!e.contextNode.decorators&&Y(e.currentTokenParent)&&!Y(e.nextTokenParent)}function Y(t){for(;e.isExpressionNode(t);)t=t.parent;return 162===t.kind}function X(e){return 252===e.currentTokenParent.kind&&e.currentTokenParent.getStart(e.sourceFile)===e.currentTokenSpan.pos}function Q(e){return 2!==e.formattingRequestKind}function Z(e){return 259===e.contextNode.kind}function ee(e){return 178===e.contextNode.kind}function te(e){return 171===e.contextNode.kind}function re(e,t){if(29!==e.kind&&31!==e.kind)return!1;switch(t.kind){case 174:case 207:case 257:case 254:case 223:case 255:case 256:case 253:case 209:case 210:case 166:case 165:case 170:case 171:case 204:case 205:case 225:return!0;default:return!1}}function ne(e){return re(e.currentTokenSpan,e.currentTokenParent)||re(e.nextTokenSpan,e.nextTokenParent)}function ie(e){return 207===e.contextNode.kind}function ae(e){return 114===e.currentTokenSpan.kind&&214===e.currentTokenParent.kind}function oe(e){return 221===e.contextNode.kind&&void 0!==e.contextNode.expression}function se(e){return 227===e.contextNode.kind}function ce(e){return!function(e){switch(e.contextNode.kind){case 236:case 239:case 240:case 241:case 237:case 238:return!0;default:return!1}}(e)}function le(t){var r=t.nextTokenSpan.kind,n=t.nextTokenSpan.pos;if(e.isTrivia(r)){var i=t.nextTokenParent===t.currentTokenParent?e.findNextToken(t.currentTokenParent,e.findAncestor(t.currentTokenParent,(function(e){return!e.parent})),t.sourceFile):t.nextTokenParent.getFirstToken(t.sourceFile);if(!i)return!0;r=i.kind,n=i.getStart(t.sourceFile)}return t.sourceFile.getLineAndCharacterOfPosition(t.currentTokenSpan.pos).line===t.sourceFile.getLineAndCharacterOfPosition(n).line?19===r||1===r:231!==r&&26!==r&&(256===t.contextNode.kind||257===t.contextNode.kind?!e.isPropertySignature(t.currentTokenParent)||!!t.currentTokenParent.type||20!==r:e.isPropertyDeclaration(t.currentTokenParent)?!t.currentTokenParent.initializer:239!==t.currentTokenParent.kind&&233!==t.currentTokenParent.kind&&231!==t.currentTokenParent.kind&&22!==r&&20!==r&&39!==r&&40!==r&&43!==r&&13!==r&&27!==r&&220!==r&&15!==r&&14!==r&&24!==r)}function ue(t){return e.positionIsASICandidate(t.currentTokenSpan.end,t.currentTokenParent,t.sourceFile)}t.getAllRules=function(){for(var a=[],S=0;S<=157;S++)1!==S&&a.push(S);function w(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return{tokens:a.filter((function(t){return!e.some((function(e){return e===t}))})),isSpecific:!1}}var P={tokens:a,isSpecific:!1},Y=n(i(i([],a),[3])),re=n(i(i([],a),[1])),de=o(80,157),pe=o(29,77),fe=[101,102,157,127,138],me=i([78],e.typeKeywords),ge=Y,_e=n([78,3,83,84,93,100]),he=n([21,3,90,111,96,91]),ye=[r("IgnoreBeforeComment",P,[2,3],t.anyContext,1),r("IgnoreAfterLineComment",2,P,t.anyContext,1),r("NotSpaceBeforeColon",P,58,[U,_,h],16),r("SpaceAfterColon",58,P,[U,_],4),r("NoSpaceBeforeQuestionMark",P,57,[U,_,h],16),r("SpaceAfterQuestionMarkInConditionalOperator",57,P,[U,v],4),r("NoSpaceAfterQuestionMark",57,P,[U],16),r("NoSpaceBeforeDot",P,[24,28],[U],16),r("NoSpaceAfterDot",[24,28],P,[U],16),r("NoSpaceBetweenImportParenInImportType",100,20,[U,z],16),r("NoSpaceAfterUnaryPrefixOperator",[45,46,54,53],[8,9,78,20,22,18,108,103],[U,_],16),r("NoSpaceAfterUnaryPreincrementOperator",45,[78,20,108,103],[U],16),r("NoSpaceAfterUnaryPredecrementOperator",46,[78,20,108,103],[U],16),r("NoSpaceBeforeUnaryPostincrementOperator",[78,21,23,103],45,[U,ce],16),r("NoSpaceBeforeUnaryPostdecrementOperator",[78,21,23,103],46,[U,ce],16),r("SpaceAfterPostincrementWhenFollowedByAdd",45,39,[U,g],4),r("SpaceAfterAddWhenFollowedByUnaryPlus",39,39,[U,g],4),r("SpaceAfterAddWhenFollowedByPreincrement",39,45,[U,g],4),r("SpaceAfterPostdecrementWhenFollowedBySubtract",46,40,[U,g],4),r("SpaceAfterSubtractWhenFollowedByUnaryMinus",40,40,[U,g],4),r("SpaceAfterSubtractWhenFollowedByPredecrement",40,46,[U,g],4),r("NoSpaceAfterCloseBrace",19,[27,26],[U],16),r("NewLineBeforeCloseBraceInBlockContext",Y,19,[E],8),r("SpaceAfterCloseBrace",19,w(21),[U,I],4),r("SpaceBetweenCloseBraceAndElse",19,91,[U],4),r("SpaceBetweenCloseBraceAndWhile",19,115,[U],4),r("NoSpaceBetweenEmptyBraceBrackets",18,19,[U,O],16),r("SpaceAfterConditionalClosingParen",21,22,[F],4),r("NoSpaceBetweenFunctionKeywordAndStar",98,41,[A],16),r("SpaceAfterStarInGeneratorDeclaration",41,78,[A],4),r("SpaceAfterFunctionInFuncDecl",98,P,[T],4),r("NewLineAfterOpenBraceInBlockContext",18,P,[E],8),r("SpaceAfterGetSetInMember",[135,147],78,[T],4),r("NoSpaceBetweenYieldKeywordAndStar",125,41,[U,oe],16),r("SpaceBetweenYieldOrYieldStarAndOperand",[125,41],P,[U,oe],4),r("NoSpaceBetweenReturnAndSemicolon",105,26,[U],16),r("SpaceAfterCertainKeywords",[113,109,103,89,105,112,131],P,[U],4),r("SpaceAfterLetConstInVariableDeclaration",[119,85],P,[U,X],4),r("NoSpaceBeforeOpenParenInFuncCall",P,20,[U,R,M],16),r("SpaceBeforeBinaryKeywordOperator",P,fe,[U,g],4),r("SpaceAfterBinaryKeywordOperator",fe,P,[U,g],4),r("SpaceAfterVoidOperator",114,P,[U,ae],4),r("SpaceBetweenAsyncAndOpenParen",130,20,[B,U],4),r("SpaceBetweenAsyncAndFunctionKeyword",130,[98,78],[U],4),r("NoSpaceBetweenTagAndTemplateString",[78,21],[14,15],[U],16),r("SpaceBeforeJsxAttribute",P,78,[H,U],4),r("SpaceBeforeSlashInJsxOpeningElement",P,43,[W,U],4),r("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",43,31,[W,U],16),r("NoSpaceBeforeEqualInJsxAttribute",P,62,[K,U],16),r("NoSpaceAfterEqualInJsxAttribute",62,P,[K,U],16),r("NoSpaceAfterModuleImport",[140,144],20,[U],16),r("SpaceAfterCertainTypeScriptKeywords",[126,83,84,134,88,92,93,94,135,117,100,118,140,141,121,123,122,143,147,124,150,154,139,136],P,[U],4),r("SpaceBeforeCertainTypeScriptKeywords",P,[94,117,154],[U],4),r("SpaceAfterModuleName",10,18,[Z],4),r("SpaceBeforeArrow",P,38,[U],4),r("SpaceAfterArrow",38,P,[U],4),r("NoSpaceAfterEllipsis",25,78,[U],16),r("NoSpaceAfterOptionalParameters",57,[21,27],[U,_],16),r("NoSpaceBetweenEmptyInterfaceBraceBrackets",18,19,[U,ee],16),r("NoSpaceBeforeOpenAngularBracket",me,29,[U,ne],16),r("NoSpaceBetweenCloseParenAndAngularBracket",21,29,[U,ne],16),r("NoSpaceAfterOpenAngularBracket",29,P,[U,ne],16),r("NoSpaceBeforeCloseAngularBracket",P,31,[U,ne],16),r("NoSpaceAfterCloseAngularBracket",31,[20,22,31,27],[U,ne,C],16),r("SpaceBeforeAt",[21,78],59,[U],4),r("NoSpaceAfterAt",59,P,[U],16),r("SpaceAfterDecorator",P,[126,78,93,88,83,84,124,123,121,122,135,147,22,41],[$],4),r("NoSpaceBeforeNonNullAssertionOperator",P,53,[U,se],16),r("NoSpaceAfterNewKeywordOnConstructorSignature",103,20,[U,te],16),r("SpaceLessThanAndNonJSXTypeAnnotation",29,29,[U],4)],ve=[r("SpaceAfterConstructor",133,20,[c("insertSpaceAfterConstructor"),U],4),r("NoSpaceAfterConstructor",133,20,[u("insertSpaceAfterConstructor"),U],16),r("SpaceAfterComma",27,P,[c("insertSpaceAfterCommaDelimiter"),U,J,L,j],4),r("NoSpaceAfterComma",27,P,[u("insertSpaceAfterCommaDelimiter"),U,J],16),r("SpaceAfterAnonymousFunctionKeyword",[98,41],20,[c("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),T],4),r("NoSpaceAfterAnonymousFunctionKeyword",[98,41],20,[u("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),T],16),r("SpaceAfterKeywordInControl",de,20,[c("insertSpaceAfterKeywordsInControlFlowStatements"),F],4),r("NoSpaceAfterKeywordInControl",de,20,[u("insertSpaceAfterKeywordsInControlFlowStatements"),F],16),r("SpaceAfterOpenParen",20,P,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],4),r("SpaceBeforeCloseParen",P,21,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],4),r("SpaceBetweenOpenParens",20,20,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],4),r("NoSpaceBetweenParens",20,21,[U],16),r("NoSpaceAfterOpenParen",20,P,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],16),r("NoSpaceBeforeCloseParen",P,21,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),U],16),r("SpaceAfterOpenBracket",22,P,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],4),r("SpaceBeforeCloseBracket",P,23,[c("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],4),r("NoSpaceBetweenBrackets",22,23,[U],16),r("NoSpaceAfterOpenBracket",22,P,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],16),r("NoSpaceBeforeCloseBracket",P,23,[u("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),U],16),r("SpaceAfterOpenBrace",18,P,[p("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),k],4),r("SpaceBeforeCloseBrace",P,19,[p("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),k],4),r("NoSpaceBetweenEmptyBraceBrackets",18,19,[U,O],16),r("NoSpaceAfterOpenBrace",18,P,[l("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),U],16),r("NoSpaceBeforeCloseBrace",P,19,[l("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),U],16),r("SpaceBetweenEmptyBraceBrackets",18,19,[c("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),r("NoSpaceBetweenEmptyBraceBrackets",18,19,[l("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),U],16),r("SpaceAfterTemplateHeadAndMiddle",[15,16],P,[c("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),q],4,1),r("SpaceBeforeTemplateMiddleAndTail",P,[16,17],[c("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),U],4),r("NoSpaceAfterTemplateHeadAndMiddle",[15,16],P,[u("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),q],16,1),r("NoSpaceBeforeTemplateMiddleAndTail",P,[16,17],[u("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),U],16),r("SpaceAfterOpenBraceInJsxExpression",18,P,[c("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],4),r("SpaceBeforeCloseBraceInJsxExpression",P,19,[c("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],4),r("NoSpaceAfterOpenBraceInJsxExpression",18,P,[u("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],16),r("NoSpaceBeforeCloseBraceInJsxExpression",P,19,[u("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),U,V],16),r("SpaceAfterSemicolonInFor",26,P,[c("insertSpaceAfterSemicolonInForStatements"),U,f],4),r("NoSpaceAfterSemicolonInFor",26,P,[u("insertSpaceAfterSemicolonInForStatements"),U,f],16),r("SpaceBeforeBinaryOperator",P,pe,[c("insertSpaceBeforeAndAfterBinaryOperators"),U,g],4),r("SpaceAfterBinaryOperator",pe,P,[c("insertSpaceBeforeAndAfterBinaryOperators"),U,g],4),r("NoSpaceBeforeBinaryOperator",P,pe,[u("insertSpaceBeforeAndAfterBinaryOperators"),U,g],16),r("NoSpaceAfterBinaryOperator",pe,P,[u("insertSpaceBeforeAndAfterBinaryOperators"),U,g],16),r("SpaceBeforeOpenParenInFuncDecl",P,20,[c("insertSpaceBeforeFunctionParenthesis"),U,T],4),r("NoSpaceBeforeOpenParenInFuncDecl",P,20,[u("insertSpaceBeforeFunctionParenthesis"),U,T],16),r("NewLineBeforeOpenBraceInControl",he,18,[c("placeOpenBraceOnNewLineForControlBlocks"),F,x],8,1),r("NewLineBeforeOpenBraceInFunction",ge,18,[c("placeOpenBraceOnNewLineForFunctions"),T,x],8,1),r("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",_e,18,[c("placeOpenBraceOnNewLineForFunctions"),N,x],8,1),r("SpaceAfterTypeAssertion",31,P,[c("insertSpaceAfterTypeAssertion"),U,ie],4),r("NoSpaceAfterTypeAssertion",31,P,[u("insertSpaceAfterTypeAssertion"),U,ie],16),r("SpaceBeforeTypeAnnotation",P,[57,58],[c("insertSpaceBeforeTypeAnnotation"),U,y],4),r("NoSpaceBeforeTypeAnnotation",P,[57,58],[u("insertSpaceBeforeTypeAnnotation"),U,y],16),r("NoOptionalSemicolon",26,re,[s("semicolons",e.SemicolonPreference.Remove),le],32),r("OptionalSemicolon",P,re,[s("semicolons",e.SemicolonPreference.Insert),ue],64)],be=[r("NoSpaceBeforeSemicolon",P,26,[U],16),r("SpaceBeforeOpenBraceInControl",he,18,[d("placeOpenBraceOnNewLineForControlBlocks"),F,Q,b],4,1),r("SpaceBeforeOpenBraceInFunction",ge,18,[d("placeOpenBraceOnNewLineForFunctions"),T,D,Q,b],4,1),r("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",_e,18,[d("placeOpenBraceOnNewLineForFunctions"),N,Q,b],4,1),r("NoSpaceBeforeComma",P,27,[U],16),r("NoSpaceBeforeOpenBracket",w(130,81),22,[U],16),r("NoSpaceAfterCloseBracket",23,P,[U,G],16),r("SpaceAfterSemicolon",26,P,[U],4),r("SpaceBetweenForAndAwaitKeyword",97,131,[U],4),r("SpaceBetweenStatements",[21,90,91,81],P,[U,J,m],4),r("SpaceAfterTryCatchFinally",[111,82,96],18,[U],4)];return i(i(i([],ye),ve),be)}}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){var r;function n(){var n,o;return void 0===r&&(n=t.getAllRules(),o=function(e){for(var t=new Array(l*l),r=new Array(t.length),n=0,i=e;n<i.length;n++)for(var o=i[n],s=o.leftTokenRange.isSpecific&&o.rightTokenRange.isSpecific,c=0,d=o.leftTokenRange.tokens;c<d.length;c++)for(var p=d[c],f=0,m=o.rightTokenRange.tokens;f<m.length;f++){var g=a(p,m[f]),_=t[g];void 0===_&&(_=t[g]=[]),u(_,o.rule,s,r,g)}return t}(n),r=function(t){var r=o[a(t.currentTokenSpan.kind,t.nextTokenSpan.kind)];if(r){for(var n=[],s=0,c=0,l=r;c<l.length;c++){var u=l[c],d=~i(s);u.action&d&&e.every(u.context,(function(e){return e(t)}))&&(n.push(u),s|=u.action)}if(n.length)return n}}),r}function i(e){var t=0;return 1&e&&(t|=28),2&e&&(t|=96),28&e&&(t|=28),96&e&&(t|=96),t}function a(t,r){return e.Debug.assert(t<=157&&r<=157,"Must compute formatting context from tokens"),t*l+r}t.getFormatContext=function(e,t){return{options:e,getRules:n(),host:t}};var o,s=5,c=31,l=158;function u(r,n,i,a,l){var u,d,p,f=3&n.action?i?o.StopRulesSpecific:o.StopRulesAny:n.context!==t.anyContext?i?o.ContextRulesSpecific:o.ContextRulesAny:i?o.NoContextRulesSpecific:o.NoContextRulesAny,m=a[l]||0;r.splice(function(e,t){for(var r=0,n=0;n<=t;n+=s)r+=e&c,e>>=s;return r}(m,f),0,n),a[l]=(p=1+((u=m)>>(d=f)&c),e.Debug.assert((p&c)===p,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),u&~(c<<d)|p<<d)}!function(e){e[e.StopRulesSpecific=0]="StopRulesSpecific",e[e.StopRulesAny=1*s]="StopRulesAny",e[e.ContextRulesSpecific=2*s]="ContextRulesSpecific",e[e.ContextRulesAny=3*s]="ContextRulesAny",e[e.NoContextRulesSpecific=4*s]="NoContextRulesSpecific",e[e.NoContextRulesAny=5*s]="NoContextRulesAny"}(o||(o={}))}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){var r,n,i,a,o;function s(t,r,n){var i=e.findPrecedingToken(t,n);return i&&i.kind===r&&t===i.getEnd()?i:void 0}function c(e){for(var t=e;t&&t.parent&&t.parent.end===e.end&&!l(t.parent,t);)t=t.parent;return t}function l(t,r){switch(t.kind){case 254:case 255:case 256:return e.rangeContainsRange(t.members,r);case 259:var n=t.body;return!!n&&260===n.kind&&e.rangeContainsRange(n.statements,r);case 300:case 232:case 260:return e.rangeContainsRange(t.statements,r);case 290:return e.rangeContainsRange(t.block.statements,r)}return!1}function u(t,r,n,i){return t?d({pos:e.getLineStartPositionForPosition(t.getStart(r),r),end:t.end},r,n,i):[]}function d(r,n,i,a){var o=function(t,r){return function n(i){var a=e.forEachChild(i,(function(n){return e.startEndContainsRange(n.getStart(r),n.end,t)&&n}));if(a){var o=n(a);if(o)return o}return i}(r)}(r,n);return t.getFormattingScanner(n.text,n.languageVariant,function(t,r,n){var i=t.getStart(n);if(i===r.pos&&t.end===r.end)return i;var a=e.findPrecedingToken(r.pos,n);return a?a.end>=r.pos?t.pos:a.end:t.pos}(o,r,n),r.end,(function(s){return p(r,o,t.SmartIndenter.getIndentationForNode(o,r,n,i.options),function(e,r,n){for(var i,a=-1;e;){var o=n.getLineAndCharacterOfPosition(e.getStart(n)).line;if(-1!==a&&o!==a)break;if(t.SmartIndenter.shouldIndentChildNode(r,e,i,n))return r.indentSize;a=o,i=e,e=e.parent}return 0}(o,i.options,n),s,i,a,function(t,r){if(!t.length)return a;var n=t.filter((function(t){return e.rangeOverlapsWithStartEnd(r,t.start,t.start+t.length)})).sort((function(e,t){return e.start-t.start}));if(!n.length)return a;var i=0;return function(t){for(;;){if(i>=n.length)return!1;var r=n[i];if(t.end<=r.start)return!1;if(e.startEndOverlapsWithStartEnd(t.pos,t.end,r.start,r.start+r.length))return!0;i++}};function a(){return!1}}(n.parseDiagnostics,r),n)}))}function p(r,n,i,a,o,s,c,l,u){var d,p,m,g,_=s.options,h=s.getRules,y=s.host,v=new t.FormattingContext(u,c,_),b=-1,k=[];if(o.advance(),o.isOnToken()){var x=u.getLineAndCharacterOfPosition(n.getStart(u)).line,E=x;n.decorators&&(E=u.getLineAndCharacterOfPosition(e.getNonDecoratorTokenPosOfNode(n,u)).line),function n(i,a,s,c,f,h){if(!e.rangeOverlapsWithStartEnd(r,i.getStart(u),i.getEnd()))return;var y=w(i,s,f,h),v=a;e.forEachChild(i,(function(e){E(e,-1,i,y,s,c,!1)}),(function(e){S(e,i,s,y)}));for(;o.isOnToken();){var k=o.readTokenInfo(i);if(k.token.end>i.end)break;11!==i.kind?D(k,i,y,i):o.advance()}if(!i.parent&&o.isOnEOF()){var x=o.readEOFTokenRange();x.end<=i.end&&d&&N(x,u.getLineAndCharacterOfPosition(x.pos).line,i,d,m,p,a,y)}function E(a,s,c,l,d,p,f,m){var h=a.getStart(u),y=u.getLineAndCharacterOfPosition(h).line,k=y;a.decorators&&(k=u.getLineAndCharacterOfPosition(e.getNonDecoratorTokenPosOfNode(a,u)).line);var x=-1;if(f&&e.rangeContainsRange(r,c)&&(x=function(r,n,i,a,o){if(e.rangeOverlapsWithStartEnd(a,r,n)||e.rangeContainsStartEnd(a,r,n)){if(-1!==o)return o}else{var s=u.getLineAndCharacterOfPosition(r).line,c=e.getLineStartPositionForPosition(r,u),l=t.SmartIndenter.findFirstNonWhitespaceColumn(c,r,u,_);if(s!==i||r===l){var d=t.SmartIndenter.getBaseIndentation(_);return d>l?d:l}}return-1}(h,a.end,d,r,s),-1!==x&&(s=x)),!e.rangeOverlapsWithStartEnd(r,a.pos,a.end))return a.end<r.pos&&o.skipToEndOf(a),s;if(0===a.getFullWidth())return s;for(;o.isOnToken();){if((E=o.readTokenInfo(i)).token.end>h){E.token.pos>h&&o.skipToStartOf(a);break}D(E,i,l,i)}if(!o.isOnToken())return s;if(e.isToken(a)){var E=o.readTokenInfo(a);if(11!==a.kind)return e.Debug.assert(E.token.end===a.end,"Token end is child end"),D(E,i,l,a),s}var S=162===a.kind?y:p,w=function(e,r,n,i,a,o){var s=t.SmartIndenter.shouldIndentChildNode(_,e)?_.indentSize:0;return o===r?{indentation:r===g?b:a.getIndentation(),delta:Math.min(_.indentSize,a.getDelta(e)+s)}:-1===n?20===e.kind&&r===g?{indentation:b,delta:a.getDelta(e)}:t.SmartIndenter.childStartsOnTheSameLineWithElseInIfStatement(i,e,r,u)||t.SmartIndenter.childIsUnindentedBranchOfConditionalExpression(i,e,r,u)||t.SmartIndenter.argumentStartsOnSameLineAsPreviousArgument(i,e,r,u)?{indentation:a.getIndentation(),delta:s}:{indentation:a.getIndentation()+a.getDelta(e),delta:s}:{indentation:n,delta:s}}(a,y,x,i,l,S);if(n(a,v,y,k,w.indentation,w.delta),11===a.kind){var T={pos:a.getStart(),end:a.getEnd()};if(T.pos!==T.end){var C=c.getChildren(u),A=C[e.findIndex(C,(function(e){return e.pos===a.pos}))-1];if(A&&u.getLineAndCharacterOfPosition(T.end).line!==u.getLineAndCharacterOfPosition(A.end).line){var N=u.getLineAndCharacterOfPosition(T.pos).line===u.getLineAndCharacterOfPosition(A.end).line;I(T,w.indentation,N,!1,!0)}}}return v=i,m&&200===c.kind&&-1===s&&(s=w.indentation),s}function S(r,n,a,s){e.Debug.assert(e.isNodeArray(r));var c=function(e,t){switch(e.kind){case 167:case 253:case 209:case 166:case 165:case 210:if(e.typeParameters===t)return 29;if(e.parameters===t)return 20;break;case 204:case 205:if(e.typeArguments===t)return 29;if(e.arguments===t)return 20;break;case 174:if(e.typeArguments===t)return 29;break;case 178:return 18}return 0}(n,r),l=s,d=a;if(0!==c)for(;o.isOnToken();){if((y=o.readTokenInfo(n)).token.end>r.pos)break;if(y.token.kind===c){d=u.getLineAndCharacterOfPosition(y.token.pos).line,D(y,n,s,n);var p=void 0;if(-1!==b)p=b;else{var f=e.getLineStartPositionForPosition(y.token.pos,u);p=t.SmartIndenter.findFirstNonWhitespaceColumn(f,y.token.pos,u,_)}l=w(n,a,p,_.indentSize)}else D(y,n,s,n)}for(var m=-1,g=0;g<r.length;g++){m=E(r[g],m,i,l,d,d,!0,0===g)}var h=function(e){switch(e){case 20:return 21;case 29:return 31;case 18:return 19}return 0}(c);if(0!==h&&o.isOnToken()){var y;if(27===(y=o.readTokenInfo(n)).token.kind&&e.isCallLikeExpression(n))d!==u.getLineAndCharacterOfPosition(y.token.pos).line&&(o.advance(),y=o.isOnToken()?o.readTokenInfo(n):void 0);y&&y.token.kind===h&&e.rangeContainsRange(n,y.token)&&D(y,n,l,n,!0)}}function D(t,n,i,a,s){e.Debug.assert(e.rangeContainsRange(n,t.token));var c=o.lastTrailingTriviaWasNewLine(),p=!1;t.leadingTrivia&&C(t.leadingTrivia,n,v,i);var f=0,m=e.rangeContainsRange(r,t.token),_=u.getLineAndCharacterOfPosition(t.token.pos);if(m){var h=l(t.token),y=d;if(f=A(t.token,_,n,v,i),!h)if(0===f){var k=y&&u.getLineAndCharacterOfPosition(y.end).line;p=c&&_.line!==k}else p=1===f}if(t.trailingTrivia&&C(t.trailingTrivia,n,v,i),p){var x=m&&!l(t.token)?i.getIndentationForToken(_.line,t.token.kind,a,!!s):-1,E=!0;if(t.leadingTrivia){var S=i.getIndentationForComment(t.token.kind,x,a);E=T(t.leadingTrivia,S,E,(function(e){return P(e.pos,S,!1)}))}-1!==x&&E&&(P(t.token.pos,x,1===f),g=_.line,b=x)}o.advance(),v=n}}(n,n,x,E,i,a)}if(!o.isOnToken()){var S=t.SmartIndenter.nodeWillIndentChild(_,n,void 0,u,!1)?i+_.indentSize:i,D=o.getCurrentLeadingTrivia();D&&T(D,S,!1,(function(e){return A(e,u.getLineAndCharacterOfPosition(e.pos),n,n,void 0)}))}return!1!==_.trimTrailingWhitespace&&function(){var e=d?d.end:r.pos,t=u.getLineAndCharacterOfPosition(e).line,n=u.getLineAndCharacterOfPosition(r.end).line;F(t,n+1,d)}(),k;function w(r,n,i,a){return{getIndentationForComment:function(e,t,r){switch(e){case 19:case 23:case 21:return i+o(r)}return-1!==t?t:i},getIndentationForToken:function(t,a,s,c){return!c&&function(t,i,a){switch(i){case 18:case 19:case 21:case 91:case 115:case 59:return!1;case 43:case 31:switch(a.kind){case 278:case 279:case 277:case 225:return!1}break;case 22:case 23:if(191!==a.kind)return!1}return n!==t&&!(r.decorators&&i===function(t){if(t.modifiers&&t.modifiers.length)return t.modifiers[0].kind;switch(t.kind){case 254:return 83;case 255:return 84;case 256:return 118;case 253:return 98;case 258:return 258;case 168:return 135;case 169:return 147;case 166:if(t.asteriskToken)return 41;case 164:case 161:var r=e.getNameOfDeclaration(t);if(r)return r.kind}}(r))}(t,a,s)?i+o(s):i},getIndentation:function(){return i},getDelta:o,recomputeIndentation:function(e,n){t.SmartIndenter.shouldIndentChildNode(_,n,r,u)&&(i+=e?_.indentSize:-_.indentSize,a=t.SmartIndenter.shouldIndentChildNode(_,r)?_.indentSize:0)}};function o(e){return t.SmartIndenter.nodeWillIndentChild(_,r,e,u,!0)?a:0}}function T(t,n,i,a){for(var o=0,s=t;o<s.length;o++){var c=s[o],l=e.rangeContainsRange(r,c);switch(c.kind){case 3:l&&I(c,n,!i),i=!1;break;case 2:i&&l&&a(c),i=!1;break;case 4:i=!0}}return i}function C(t,n,i,a){for(var o=0,s=t;o<s.length;o++){var c=s[o];if(e.isComment(c.kind)&&e.rangeContainsRange(r,c))A(c,u.getLineAndCharacterOfPosition(c.pos),n,i,a)}}function A(e,t,n,i,a){var o=0;l(e)||(d?o=N(e,t.line,n,d,m,p,i,a):F(u.getLineAndCharacterOfPosition(r.pos).line,t.line));return d=e,p=n,m=t.line,o}function N(t,r,n,i,a,o,s,c){v.updateContext(i,o,t,n,s);var l=h(v),d=!1!==v.options.trimTrailingWhitespace,p=0;return l?e.forEachRight(l,(function(o){switch(p=function(t,r,n,i,a){var o=a!==n;switch(t.action){case 1:return 0;case 16:if(r.end!==i.pos)return R(r.end,i.pos-r.end),o?2:0;break;case 32:R(r.pos,r.end-r.pos);break;case 8:if(1!==t.flags&&n!==a)return 0;if(1!==a-n)return M(r.end,i.pos-r.end,e.getNewLineOrDefaultFromHost(y,_)),o?0:1;break;case 4:if(1!==t.flags&&n!==a)return 0;if(1!==i.pos-r.end||32!==u.text.charCodeAt(r.end))return M(r.end,i.pos-r.end," "),o?2:0;break;case 64:s=r.end,(c=";")&&k.push(e.createTextChangeFromStartLength(s,0,c))}var s,c;return 0}(o,i,a,t,r),p){case 2:n.getStart(u)===t.pos&&c.recomputeIndentation(!1,s);break;case 1:n.getStart(u)===t.pos&&c.recomputeIndentation(!0,s);break;default:e.Debug.assert(0===p)}d=d&&!(16&o.action)&&1!==o.flags})):d=d&&1!==t.kind,r!==a&&d&&F(a,r,i),p}function P(t,r,n){var i=f(r,_);if(n)M(t,0,i);else{var a=u.getLineAndCharacterOfPosition(t),o=e.getStartPositionOfLine(a.line,u);(r!==function(e,t){for(var r=0,n=0;n<t;n++)9===u.text.charCodeAt(e+n)?r+=_.tabSize-r%_.tabSize:r++;return r}(o,a.character)||function(e,t){return e!==u.text.substr(t,e.length)}(i,o))&&M(o,a.character,i)}}function I(r,n,i,a,o){void 0===a&&(a=!0);var s=u.getLineAndCharacterOfPosition(r.pos).line,c=u.getLineAndCharacterOfPosition(r.end).line;if(s!==c){for(var l=[],d=r.pos,p=s;p<c;p++){var m=e.getEndLinePosition(p,u);l.push({pos:d,end:m}),d=e.getStartPositionOfLine(p+1,u)}if(a&&l.push({pos:d,end:r.end}),0!==l.length){var g=e.getStartPositionOfLine(s,u),h=t.SmartIndenter.findFirstNonWhitespaceCharacterAndColumn(g,l[0].pos,u,_),y=0;i&&(y=1,s++);for(var v=n-h.column,b=y;b<l.length;b++,s++){var k=e.getStartPositionOfLine(s,u),x=0===b?h:t.SmartIndenter.findFirstNonWhitespaceCharacterAndColumn(l[b].pos,l[b].end,u,_);if(o){if(e.isLineBreak(u.text.charCodeAt(e.getStartPositionOfLine(s,u))))continue;v=n-x.column}var E=x.column+v;if(E>0){var S=f(E,_);M(k,x.character,S)}else R(k,x.character)}}}else i||P(r.pos,n,!1)}function F(t,r,n){for(var i=t;i<r;i++){var a=e.getStartPositionOfLine(i,u),o=e.getEndLinePosition(i,u);if(!(n&&(e.isComment(n.kind)||e.isStringOrRegularExpressionOrTemplateLiteral(n.kind))&&n.pos<=o&&n.end>o)){var s=O(a,o);-1!==s&&(e.Debug.assert(s===a||!e.isWhiteSpaceSingleLine(u.text.charCodeAt(s-1))),R(s,o+1-s))}}}function O(t,r){for(var n=r;n>=t&&e.isWhiteSpaceSingleLine(u.text.charCodeAt(n));)n--;return n!==r?n+1:-1}function R(t,r){r&&k.push(e.createTextChangeFromStartLength(t,r,""))}function M(t,r,n){(r||n)&&k.push(e.createTextChangeFromStartLength(t,r,n))}}function f(t,r){if((!i||i.tabSize!==r.tabSize||i.indentSize!==r.indentSize)&&(i={tabSize:r.tabSize,indentSize:r.indentSize},a=o=void 0),r.convertTabsToSpaces){var n=void 0,s=Math.floor(t/r.indentSize),c=t%r.indentSize;return o||(o=[]),void 0===o[s]?(n=e.repeatString(" ",r.indentSize*s),o[s]=n):n=o[s],c?n+e.repeatString(" ",c):n}var l=Math.floor(t/r.tabSize),u=t-l*r.tabSize,d=void 0;return a||(a=[]),void 0===a[l]?a[l]=d=e.repeatString("\t",l):d=a[l],u?d+e.repeatString(" ",u):d}t.createTextRangeWithKind=function(t,r,n){var i={pos:t,end:r,kind:n};return e.Debug.isDebugging&&Object.defineProperty(i,"__debugKind",{get:function(){return e.Debug.formatSyntaxKind(n)}}),i},function(e){e[e.Unknown=-1]="Unknown"}(r||(r={})),t.formatOnEnter=function(t,r,n){var i=r.getLineAndCharacterOfPosition(t).line;if(0===i)return[];for(var a=e.getEndLinePosition(i,r);e.isWhiteSpaceSingleLine(r.text.charCodeAt(a));)a--;return e.isLineBreak(r.text.charCodeAt(a))&&a--,d({pos:e.getStartPositionOfLine(i-1,r),end:a+1},r,n,2)},t.formatOnSemicolon=function(e,t,r){return u(c(s(e,26,t)),t,r,3)},t.formatOnOpeningCurly=function(t,r,n){var i=s(t,18,r);if(!i)return[];var a=c(i.parent);return d({pos:e.getLineStartPositionForPosition(a.getStart(r),r),end:t},r,n,4)},t.formatOnClosingCurly=function(e,t,r){return u(c(s(e,19,t)),t,r,5)},t.formatDocument=function(e,t){return d({pos:0,end:e.text.length},e,t,0)},t.formatSelection=function(t,r,n,i){return d({pos:e.getLineStartPositionForPosition(t,n),end:r},n,i,1)},t.formatNodeGivenIndentation=function(e,r,n,i,a,o){var s={pos:0,end:r.text.length};return t.getFormattingScanner(r.text,n,s.pos,s.end,(function(t){return p(s,e,i,a,t,o,1,(function(e){return!1}),r)}))},function(e){e[e.None=0]="None",e[e.LineAdded=1]="LineAdded",e[e.LineRemoved=2]="LineRemoved"}(n||(n={})),t.getRangeOfEnclosingComment=function(t,r,n,i){void 0===i&&(i=e.getTokenAtPosition(t,r));var a=e.findAncestor(i,e.isJSDoc);if(a&&(i=a.parent),!(i.getStart(t)<=r&&r<i.getEnd())){var o=(n=null===n?void 0:void 0===n?e.findPrecedingToken(r,t):n)&&e.getTrailingCommentRanges(t.text,n.end),s=e.getLeadingCommentRangesOfNode(i,t),c=e.concatenate(o,s);return c&&e.find(c,(function(n){return e.rangeContainsPositionExclusive(n,r)||r===n.end&&(2===n.kind||r===t.getFullWidth())}))}},t.getIndentationString=f}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){!function(r){var n,i;function a(e){return e.baseIndentSize||0}function o(e,t,r,n,i,o,l){for(var m,g=e.parent;g;){var h=!0;if(r){var y=e.getStart(i);h=y<r.pos||y>r.end}var v=s(g,e,i),b=v.line===t.line||p(g,e,t.line,i);if(h){var k=null===(m=f(e,i))||void 0===m?void 0:m[0],E=_(e,i,l,!!k&&u(k,i).line>v.line);if(-1!==E)return E+n;if(-1!==(E=c(e,g,t,b,i,l)))return E+n}x(l,g,e,i,o)&&!b&&(n+=l.indentSize);var S=d(g,e,t.line,i);g=(e=g).parent,t=S?i.getLineAndCharacterOfPosition(e.getStart(i)):v}return n+a(l)}function s(e,t,r){var n=f(t,r),i=n?n.pos:e.getStart(r);return r.getLineAndCharacterOfPosition(i)}function c(t,r,n,i,a,o){return(e.isDeclaration(t)||e.isStatementButNotDeclaration(t))&&(300===r.kind||!i)?y(n,a,o):-1}function l(t,r,n,i){var a=e.findNextToken(t,r,i);return a?18===a.kind?1:19===a.kind&&n===u(a,i).line?2:0:0}function u(e,t){return t.getLineAndCharacterOfPosition(e.getStart(t))}function d(t,r,n,i){if(!e.isCallExpression(t)||!e.contains(t.arguments,r))return!1;var a=t.expression.getEnd();return e.getLineAndCharacterOfPosition(i,a).line===n}function p(t,r,n,i){if(236===t.kind&&t.elseStatement===r){var a=e.findChildOfKind(t,91,i);return e.Debug.assert(void 0!==a),u(a,i).line===n}return!1}function f(e,t){return e.parent&&m(e.getStart(t),e.getEnd(),e.parent,t)}function m(t,r,n,i){switch(n.kind){case 174:return a(n.typeArguments);case 201:return a(n.properties);case 200:case 267:case 271:case 197:case 198:return a(n.elements);case 178:return a(n.members);case 253:case 209:case 210:case 166:case 165:case 170:case 167:case 176:case 171:return a(n.typeParameters)||a(n.parameters);case 254:case 223:case 255:case 256:case 257:case 333:return a(n.typeParameters);case 205:case 204:return a(n.typeArguments)||a(n.arguments);case 252:return a(n.declarations)}function a(a){return a&&e.rangeContainsStartEnd(function(e,t,r){for(var n=e.getChildren(r),i=1;i<n.length-1;i++)if(n[i].pos===t.pos&&n[i].end===t.end)return{pos:n[i-1].end,end:n[i+1].getStart(r)};return t}(n,a,i),t,r)?a:void 0}}function g(e,t,r){return e?y(t.getLineAndCharacterOfPosition(e.pos),t,r):-1}function _(e,t,r,n){if(e.parent&&252===e.parent.kind)return-1;var i=f(e,t);if(i){var a=i.indexOf(e);if(-1!==a){var o=h(i,a,t,r);if(-1!==o)return o}return g(i,t,r)+(n?r.indentSize:0)}return-1}function h(t,r,n,i){e.Debug.assert(r>=0&&r<t.length);for(var a=u(t[r],n),o=r-1;o>=0;o--)if(27!==t[o].kind){if(n.getLineAndCharacterOfPosition(t[o].end).line!==a.line)return y(a,n,i);a=u(t[o],n)}return-1}function y(e,t,r){var n=t.getPositionOfLineAndCharacter(e.line,0);return b(n,n+e.character,t,r)}function v(t,r,n,i){for(var a=0,o=0,s=t;s<r;s++){var c=n.text.charCodeAt(s);if(!e.isWhiteSpaceSingleLine(c))break;9===c?o+=i.tabSize+o%i.tabSize:o++,a++}return{column:o,character:a}}function b(e,t,r,n){return v(e,t,r,n).column}function k(e,t,r,n,i){var a=r?r.kind:0;switch(t.kind){case 235:case 254:case 223:case 255:case 256:case 258:case 257:case 200:case 232:case 260:case 201:case 178:case 191:case 180:case 261:case 288:case 287:case 208:case 202:case 204:case 205:case 234:case 269:case 244:case 219:case 198:case 197:case 278:case 281:case 277:case 286:case 165:case 170:case 171:case 161:case 175:case 176:case 187:case 206:case 215:case 271:case 267:case 273:case 268:case 164:return!0;case 251:case 291:case 218:if(!e.indentMultiLineObjectLiteralBeginningOnBlankLine&&n&&201===a)return E(n,r);if(218!==t.kind)return!0;break;case 237:case 238:case 240:case 241:case 239:case 236:case 253:case 209:case 166:case 167:case 168:case 169:return 232!==a;case 210:return n&&208===a?E(n,r):232!==a;case 270:return 271!==a;case 264:return 265!==a||!!r.namedBindings&&267!==r.namedBindings.kind;case 276:return 279!==a;case 280:return 282!==a;case 184:case 183:if(178===a||180===a)return!1}return i}function x(e,t,r,n,i){return void 0===i&&(i=!1),k(e,t,r,n,!1)&&!(i&&r&&function(e,t){switch(e){case 244:case 248:case 242:case 243:return 232!==t.kind;default:return!1}}(r.kind,t))}function E(t,r){var n=e.skipTrivia(t.text,r.pos);return t.getLineAndCharacterOfPosition(n).line===t.getLineAndCharacterOfPosition(r.end).line}!function(e){e[e.Unknown=-1]="Unknown"}(n||(n={})),r.getIndentation=function(r,n,i,s){if(void 0===s&&(s=!1),r>n.text.length)return a(i);if(i.indentStyle===e.IndentStyle.None)return 0;var c=e.findPrecedingToken(r,n,void 0,!0),d=t.getRangeOfEnclosingComment(n,r,c||null);if(d&&3===d.kind)return function(t,r,n,i){var a=e.getLineAndCharacterOfPosition(t,r).line-1,o=e.getLineAndCharacterOfPosition(t,i.pos).line;if(e.Debug.assert(o>=0),a<=o)return b(e.getStartPositionOfLine(o,t),r,t,n);var s=e.getStartPositionOfLine(a,t),c=v(s,r,t,n),l=c.column,u=c.character;if(0===l)return l;var d=t.text.charCodeAt(s+u);return 42===d?l-1:l}(n,r,i,d);if(!c)return a(i);if(e.isStringOrRegularExpressionOrTemplateLiteral(c.kind)&&c.getStart(n)<=r&&r<c.end)return 0;var p=n.getLineAndCharacterOfPosition(r).line;if(i.indentStyle===e.IndentStyle.Block)return function(t,r,n){var i=r;for(;i>0;){var a=t.text.charCodeAt(i);if(!e.isWhiteSpaceLike(a))break;i--}var o=e.getLineStartPositionForPosition(i,t);return b(o,i,t,n)}(n,r,i);if(27===c.kind&&218!==c.parent.kind){var f=function(t,r,n){var i=e.findListItemInfo(t);return i&&i.listItemIndex>0?h(i.list.getChildren(),i.listItemIndex-1,r,n):-1}(c,n,i);if(-1!==f)return f}var y=function(e,t,r){return t&&m(e,e,t,r)}(r,c.parent,n);return y&&!e.rangeContainsRange(y,c)?g(y,n,i)+i.indentSize:function(t,r,n,i,s,c){var d,p=n;for(;p;){if(e.positionBelongsToNode(p,r,t)&&x(c,p,d,t,!0)){var f=u(p,t),m=l(n,p,i,t);return o(p,f,void 0,0!==m?s&&2===m?c.indentSize:0:i!==f.line?c.indentSize:0,t,!0,c)}var g=_(p,t,c,!0);if(-1!==g)return g;d=p,p=p.parent}return a(c)}(n,r,c,p,s,i)},r.getIndentationForNode=function(e,t,r,n){var i=r.getLineAndCharacterOfPosition(e.getStart(r));return o(e,i,t,0,r,!1,n)},r.getBaseIndentation=a,function(e){e[e.Unknown=0]="Unknown",e[e.OpenBrace=1]="OpenBrace",e[e.CloseBrace=2]="CloseBrace"}(i||(i={})),r.isArgumentAndStartLineOverlapsExpressionBeingCalled=d,r.childStartsOnTheSameLineWithElseInIfStatement=p,r.childIsUnindentedBranchOfConditionalExpression=function(t,r,n,i){if(e.isConditionalExpression(t)&&(r===t.whenTrue||r===t.whenFalse)){var a=e.getLineAndCharacterOfPosition(i,t.condition.end).line;if(r===t.whenTrue)return n===a;var o=u(t.whenTrue,i).line,s=e.getLineAndCharacterOfPosition(i,t.whenTrue.end).line;return a===o&&s===n}return!1},r.argumentStartsOnSameLineAsPreviousArgument=function(t,r,n,i){if(e.isCallOrNewExpression(t)){if(!t.arguments)return!1;var a=e.find(t.arguments,(function(e){return e.pos===r.pos}));if(!a)return!1;var o=t.arguments.indexOf(a);if(0===o)return!1;var s=t.arguments[o-1];if(n===e.getLineAndCharacterOfPosition(i,s.getEnd()).line)return!0}return!1},r.getContainingList=f,r.findFirstNonWhitespaceCharacterAndColumn=v,r.findFirstNonWhitespaceColumn=b,r.nodeWillIndentChild=k,r.shouldIndentChildNode=x}(t.SmartIndenter||(t.SmartIndenter={}))}(e.formatting||(e.formatting={}))}(d||(d={})),function(e){!function(t){function r(t){var r=t.__pos;return e.Debug.assert("number"==typeof r),r}function n(t,r){e.Debug.assert("number"==typeof r),t.__pos=r}function o(t){var r=t.__end;return e.Debug.assert("number"==typeof r),r}function s(t,r){e.Debug.assert("number"==typeof r),t.__end=r}var c,l;function u(t,r){return e.skipTrivia(t,r,!1,!0)}!function(e){e[e.Exclude=0]="Exclude",e[e.IncludeAll=1]="IncludeAll",e[e.JSDoc=2]="JSDoc",e[e.StartLine=3]="StartLine"}(c=t.LeadingTriviaOption||(t.LeadingTriviaOption={})),function(e){e[e.Exclude=0]="Exclude",e[e.ExcludeWhitespace=1]="ExcludeWhitespace",e[e.Include=2]="Include"}(l=t.TrailingTriviaOption||(t.TrailingTriviaOption={}));var d,p={leadingTriviaOption:c.Exclude,trailingTriviaOption:l.Exclude};function f(e,t,r,n){return{pos:m(e,t,n),end:g(e,r,n)}}function m(t,r,n){var i=n.leadingTriviaOption;if(i===c.Exclude)return r.getStart(t);if(i===c.StartLine)return e.getLineStartPositionForPosition(r.getStart(t),t);if(i===c.JSDoc){var a=e.getJSDocCommentRanges(r,t.text);if(null==a?void 0:a.length)return e.getLineStartPositionForPosition(a[0].pos,t)}var o=r.getFullStart(),s=r.getStart(t);if(o===s)return s;var l=e.getLineStartPositionForPosition(o,t);if(e.getLineStartPositionForPosition(s,t)===l)return i===c.IncludeAll?o:s;var d=o>0?1:0,p=e.getStartPositionOfLine(e.getLineOfLocalPosition(t,l)+d,t);return p=u(t.text,p),e.getStartPositionOfLine(e.getLineOfLocalPosition(t,p),t)}function g(t,r,n){var i,a=r.end,o=n.trailingTriviaOption;if(o===l.Exclude)return a;if(o===l.ExcludeWhitespace){var s=e.concatenate(e.getTrailingCommentRanges(t.text,a),e.getLeadingCommentRanges(t.text,a)),c=null===(i=null==s?void 0:s[s.length-1])||void 0===i?void 0:i.end;return c||a}var u=e.skipTrivia(t.text,a,!0);return u===a||o!==l.Include&&!e.isLineBreak(t.text.charCodeAt(u-1))?a:u}function _(e,t){return!!t&&!!e.parent&&(27===t.kind||26===t.kind&&201===e.parent.kind)}!function(e){e[e.Remove=0]="Remove",e[e.ReplaceWithSingleNode=1]="ReplaceWithSingleNode",e[e.ReplaceWithMultipleNodes=2]="ReplaceWithMultipleNodes",e[e.Text=3]="Text"}(d||(d={})),t.isThisTypeAnnotatable=function(t){return e.isFunctionExpression(t)||e.isFunctionDeclaration(t)};var h,y,v=function(){function t(t,r){this.newLineCharacter=t,this.formatContext=r,this.changes=[],this.newFiles=[],this.classesWithNodesInsertedAtStart=new e.Map,this.deletedNodes=[]}return t.fromContext=function(r){return new t(e.getNewLineOrDefaultFromHost(r.host,r.formatContext.options),r.formatContext)},t.with=function(e,r){var n=t.fromContext(e);return r(n),n.getChanges()},t.prototype.pushRaw=function(t,r){e.Debug.assertEqual(t.fileName,r.fileName);for(var n=0,i=r.textChanges;n<i.length;n++){var a=i[n];this.changes.push({kind:d.Text,sourceFile:t,text:a.newText,range:e.createTextRangeFromSpan(a.span)})}},t.prototype.deleteRange=function(e,t){this.changes.push({kind:d.Remove,sourceFile:e,range:t})},t.prototype.delete=function(e,t){this.deletedNodes.push({sourceFile:e,node:t})},t.prototype.deleteNode=function(e,t,r){void 0===r&&(r={leadingTriviaOption:c.IncludeAll}),this.deleteRange(e,f(e,t,t,r))},t.prototype.deleteModifier=function(t,r){this.deleteRange(t,{pos:r.getStart(t),end:e.skipTrivia(t.text,r.end,!0)})},t.prototype.deleteNodeRange=function(e,t,r,n){void 0===n&&(n={leadingTriviaOption:c.IncludeAll});var i=m(e,t,n),a=g(e,r,n);this.deleteRange(e,{pos:i,end:a})},t.prototype.deleteNodeRangeExcludingEnd=function(e,t,r,n){void 0===n&&(n={leadingTriviaOption:c.IncludeAll});var i=m(e,t,n),a=void 0===r?e.text.length:m(e,r,n);this.deleteRange(e,{pos:i,end:a})},t.prototype.replaceRange=function(e,t,r,n){void 0===n&&(n={}),this.changes.push({kind:d.ReplaceWithSingleNode,sourceFile:e,range:t,options:n,node:r})},t.prototype.replaceNode=function(e,t,r,n){void 0===n&&(n=p),this.replaceRange(e,f(e,t,t,n),r,n)},t.prototype.replaceNodeRange=function(e,t,r,n,i){void 0===i&&(i=p),this.replaceRange(e,f(e,t,r,i),n,i)},t.prototype.replaceRangeWithNodes=function(e,t,r,n){void 0===n&&(n={}),this.changes.push({kind:d.ReplaceWithMultipleNodes,sourceFile:e,range:t,options:n,nodes:r})},t.prototype.replaceNodeWithNodes=function(e,t,r,n){void 0===n&&(n=p),this.replaceRangeWithNodes(e,f(e,t,t,n),r,n)},t.prototype.replaceNodeWithText=function(e,t,r){this.replaceRangeWithText(e,f(e,t,t,p),r)},t.prototype.replaceNodeRangeWithNodes=function(e,t,r,n,i){void 0===i&&(i=p),this.replaceRangeWithNodes(e,f(e,t,r,i),n,i)},t.prototype.nextCommaToken=function(t,r){var n=e.findNextToken(r,r.parent,t);return n&&27===n.kind?n:void 0},t.prototype.replacePropertyAssignment=function(e,t,r){var n=this.nextCommaToken(e,t)?"":","+this.newLineCharacter;this.replaceNode(e,t,r,{suffix:n})},t.prototype.insertNodeAt=function(t,r,n,i){void 0===i&&(i={}),this.replaceRange(t,e.createRange(r),n,i)},t.prototype.insertNodesAt=function(t,r,n,i){void 0===i&&(i={}),this.replaceRangeWithNodes(t,e.createRange(r),n,i)},t.prototype.insertNodeAtTopOfFile=function(e,t,r){this.insertAtTopOfFile(e,t,r)},t.prototype.insertNodesAtTopOfFile=function(e,t,r){this.insertAtTopOfFile(e,t,r)},t.prototype.insertAtTopOfFile=function(t,r,n){var i=function(t){for(var r,n=0,i=t.statements;n<i.length;n++){var a=i[n];if(!e.isPrologueDirective(a))break;r=a}var o=0,s=t.text;if(r)return o=r.end,g(),o;var c=e.getShebang(s);void 0!==c&&(o=c.length,g());var l,u,d=e.getLeadingCommentRanges(s,o);if(!d)return o;for(var p=0,f=d;p<f.length;p++){var m=f[p];if(3===m.kind){if(e.isPinnedComment(s,m.pos)){l={range:m,pinnedOrTripleSlash:!0};continue}}else if(e.isRecognizedTripleSlashComment(s,m.pos,m.end)){l={range:m,pinnedOrTripleSlash:!0};continue}if(l){if(l.pinnedOrTripleSlash)break;if(t.getLineAndCharacterOfPosition(m.pos).line>=t.getLineAndCharacterOfPosition(l.range.end).line+2)break}if(t.statements.length)if(void 0===u&&(u=t.getLineAndCharacterOfPosition(t.statements[0].getStart()).line),u<t.getLineAndCharacterOfPosition(m.end).line+2)break;l={range:m,pinnedOrTripleSlash:!1}}l&&(o=l.range.end,g());return o;function g(){if(o<s.length){var t=s.charCodeAt(o);e.isLineBreak(t)&&++o<s.length&&13===t&&10===s.charCodeAt(o)&&o++}}}(t),a={prefix:0===i?void 0:this.newLineCharacter,suffix:(e.isLineBreak(t.text.charCodeAt(i))?"":this.newLineCharacter)+(n?this.newLineCharacter:"")};e.isArray(r)?this.insertNodesAt(t,i,r,a):this.insertNodeAt(t,i,r,a)},t.prototype.insertFirstParameter=function(t,r,n){var i=e.firstOrUndefined(r);i?this.insertNodeBefore(t,i,n):this.insertNodeAt(t,r.pos,n)},t.prototype.insertNodeBefore=function(e,t,r,n,i){void 0===n&&(n=!1),void 0===i&&(i={}),this.insertNodeAt(e,m(e,t,i),r,this.getOptionsForInsertNodeBefore(t,r,n))},t.prototype.insertModifierAt=function(t,r,n,i){void 0===i&&(i={}),this.insertNodeAt(t,r,e.factory.createToken(n),i)},t.prototype.insertModifierBefore=function(e,t,r){return this.insertModifierAt(e,r.getStart(e),t,{suffix:" "})},t.prototype.insertCommentBeforeLine=function(t,r,n,i){var a=e.getStartPositionOfLine(r,t),o=e.getFirstNonSpaceCharacterPosition(t.text,a),s=D(t,o),c=e.getTouchingToken(t,s?o:n),l=t.text.slice(a,o),u=(s?"":this.newLineCharacter)+"//"+i+this.newLineCharacter+l;this.insertText(t,c.getStart(t),u)},t.prototype.insertJsdocCommentBefore=function(t,r,n){var i=r.getStart(t);if(r.jsDoc)for(var a=0,o=r.jsDoc;a<o.length;a++){var s=o[a];this.deleteRange(t,{pos:e.getLineStartPositionForPosition(s.getStart(t),t),end:g(t,s,{})})}var c=e.getPrecedingNonSpaceCharacterPosition(t.text,i-1),l=t.text.slice(c,i);this.insertNodeAt(t,i,n,{preserveLeadingWhitespace:!1,suffix:this.newLineCharacter+l})},t.prototype.replaceRangeWithText=function(e,t,r){this.changes.push({kind:d.Text,sourceFile:e,range:t,text:r})},t.prototype.insertText=function(t,r,n){this.replaceRangeWithText(t,e.createRange(r),n)},t.prototype.tryInsertTypeAnnotation=function(t,r,n){var i,a;if(e.isFunctionLike(r)){if(!(a=e.findChildOfKind(r,21,t))){if(!e.isArrowFunction(r))return!1;a=e.first(r.parameters)}}else a=null!==(i=251===r.kind?r.exclamationToken:r.questionToken)&&void 0!==i?i:r.name;return this.insertNodeAt(t,a.end,n,{prefix:": "}),!0},t.prototype.tryInsertThisTypeAnnotation=function(t,r,n){var i=e.findChildOfKind(r,20,t).getStart(t)+1,a=r.parameters.length?", ":"";this.insertNodeAt(t,i,n,{prefix:"this: ",suffix:a})},t.prototype.insertTypeParameters=function(t,r,n){var i=(e.findChildOfKind(r,20,t)||e.first(r.parameters)).getStart(t);this.insertNodesAt(t,i,n,{prefix:"<",suffix:">",joiner:", "})},t.prototype.getOptionsForInsertNodeBefore=function(t,r,n){return e.isStatement(t)||e.isClassElement(t)?{suffix:n?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:e.isVariableDeclaration(t)?{suffix:", "}:e.isParameter(t)?e.isParameter(r)?{suffix:", "}:{}:e.isStringLiteral(t)&&e.isImportDeclaration(t.parent)||e.isNamedImports(t)?{suffix:", "}:e.isImportSpecifier(t)?{suffix:","+(n?this.newLineCharacter:" ")}:e.Debug.failBadSyntaxKind(t)},t.prototype.insertNodeAtConstructorStart=function(t,r,n){var a=e.firstOrUndefined(r.body.statements);a&&r.body.multiLine?this.insertNodeBefore(t,a,n):this.replaceConstructorBody(t,r,i([n],r.body.statements))},t.prototype.insertNodeAtConstructorEnd=function(t,r,n){var a=e.lastOrUndefined(r.body.statements);a&&r.body.multiLine?this.insertNodeAfter(t,a,n):this.replaceConstructorBody(t,r,i(i([],r.body.statements),[n]))},t.prototype.replaceConstructorBody=function(t,r,n){this.replaceNode(t,r.body,e.factory.createBlock(n,!0))},t.prototype.insertNodeAtEndOfScope=function(t,r,n){var i=m(t,r.getLastToken(),{});this.insertNodeAt(t,i,n,{prefix:e.isLineBreak(t.text.charCodeAt(r.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})},t.prototype.insertNodeAtClassStart=function(e,t,r){this.insertNodeAtStartWorker(e,t,r)},t.prototype.insertNodeAtObjectStart=function(e,t,r){this.insertNodeAtStartWorker(e,t,r)},t.prototype.insertNodeAtStartWorker=function(e,t,r){var n,i=null!==(n=this.guessIndentationFromExistingMembers(e,t))&&void 0!==n?n:this.computeIndentationForNewMember(e,t);this.insertNodeAt(e,k(t).pos,r,this.getInsertNodeAtStartInsertOptions(e,t,i))},t.prototype.guessIndentationFromExistingMembers=function(t,r){for(var n,i=r,a=0,o=k(r);a<o.length;a++){var s=o[a];if(e.rangeStartPositionsAreOnSameLine(i,s,t))return;var c=s.getStart(t),l=e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(e.getLineStartPositionForPosition(c,t),c,t,this.formatContext.options);if(void 0===n)n=l;else if(l!==n)return;i=s}return n},t.prototype.computeIndentationForNewMember=function(t,r){var n,i=r.getStart(t);return e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(e.getLineStartPositionForPosition(i,t),i,t,this.formatContext.options)+(null!==(n=this.formatContext.options.indentSize)&&void 0!==n?n:4)},t.prototype.getInsertNodeAtStartInsertOptions=function(t,r,n){var i=0===k(r).length,a=e.addToSeen(this.classesWithNodesInsertedAtStart,e.getNodeId(r),{node:r,sourceFile:t}),o=e.isObjectLiteralExpression(r)&&(!e.isJsonSourceFile(t)||!i);return{indentation:n,prefix:(e.isObjectLiteralExpression(r)&&e.isJsonSourceFile(t)&&i&&!a?",":"")+this.newLineCharacter,suffix:o?",":""}},t.prototype.insertNodeAfterComma=function(e,t,r){var n=this.insertNodeAfterWorker(e,this.nextCommaToken(e,t)||t,r);this.insertNodeAt(e,n,r,this.getInsertNodeAfterOptions(e,t))},t.prototype.insertNodeAfter=function(e,t,r){var n=this.insertNodeAfterWorker(e,t,r);this.insertNodeAt(e,n,r,this.getInsertNodeAfterOptions(e,t))},t.prototype.insertNodeAtEndOfList=function(e,t,r){this.insertNodeAt(e,t.end,r,{prefix:", "})},t.prototype.insertNodesAfter=function(t,r,n){var i=this.insertNodeAfterWorker(t,r,e.first(n));this.insertNodesAt(t,i,n,this.getInsertNodeAfterOptions(t,r))},t.prototype.insertNodeAfterWorker=function(t,r,n){var i,a;return i=r,a=n,((e.isPropertySignature(i)||e.isPropertyDeclaration(i))&&e.isClassOrTypeElement(a)&&159===a.name.kind||e.isStatementButNotDeclaration(i)&&e.isStatementButNotDeclaration(a))&&59!==t.text.charCodeAt(r.end-1)&&this.replaceRange(t,e.createRange(r.end),e.factory.createToken(26)),g(t,r,{})},t.prototype.getInsertNodeAfterOptions=function(t,r){var n=this.getInsertNodeAfterOptionsWorker(r);return a(a({},n),{prefix:r.end===t.end&&e.isStatement(r)?n.prefix?"\n"+n.prefix:"\n":n.prefix})},t.prototype.getInsertNodeAfterOptionsWorker=function(t){switch(t.kind){case 254:case 255:case 259:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 251:case 10:case 78:return{prefix:", "};case 291:return{suffix:","+this.newLineCharacter};case 93:return{prefix:" "};case 161:return{};default:return e.Debug.assert(e.isStatement(t)||e.isClassOrTypeElement(t)),{suffix:this.newLineCharacter}}},t.prototype.insertName=function(t,r,n){if(e.Debug.assert(!r.name),210===r.kind){var i=e.findChildOfKind(r,38,t),a=e.findChildOfKind(r,20,t);a?(this.insertNodesAt(t,a.getStart(t),[e.factory.createToken(98),e.factory.createIdentifier(n)],{joiner:" "}),w(this,t,i)):(this.insertText(t,e.first(r.parameters).getStart(t),"function "+n+"("),this.replaceRange(t,i,e.factory.createToken(21))),232!==r.body.kind&&(this.insertNodesAt(t,r.body.getStart(t),[e.factory.createToken(18),e.factory.createToken(105)],{joiner:" ",suffix:" "}),this.insertNodesAt(t,r.body.end,[e.factory.createToken(26),e.factory.createToken(19)],{joiner:" "}))}else{var o=e.findChildOfKind(r,209===r.kind?98:83,t).end;this.insertNodeAt(t,o,e.factory.createIdentifier(n),{prefix:" "})}},t.prototype.insertExportModifier=function(e,t){this.insertText(e,t.getStart(e),"export ")},t.prototype.insertNodeInListAfter=function(t,r,n,i){if(void 0===i&&(i=e.formatting.SmartIndenter.getContainingList(r,t)),i){var a=e.indexOfNode(i,r);if(!(a<0)){var o=r.getEnd();if(a!==i.length-1){var s=e.getTokenAtPosition(t,r.end);if(s&&_(r,s)){var c=e.getLineAndCharacterOfPosition(t,u(t.text,i[a+1].getFullStart())),l=e.getLineAndCharacterOfPosition(t,s.end),d=void 0,p=void 0;l.line===c.line?(p=s.end,d=function(e){for(var t="",r=0;r<e;r++)t+=" ";return t}(c.character-l.character)):p=e.getStartPositionOfLine(c.line,t);var f=""+e.tokenToString(s.kind)+t.text.substring(s.end,i[a+1].getStart(t));this.replaceRange(t,e.createRange(p,i[a+1].getStart(t)),n,{prefix:d,suffix:f})}}else{var m=r.getStart(t),g=e.getLineStartPositionForPosition(m,t),h=void 0,y=!1;if(1===i.length)h=27;else{var v=e.findPrecedingToken(r.pos,t);h=_(r,v)?v.kind:27,y=e.getLineStartPositionForPosition(i[a-1].getStart(t),t)!==g}if(function(t,r){for(var n=r;n<t.length;){var i=t.charCodeAt(n);if(!e.isWhiteSpaceSingleLine(i))return 47===i;n++}return!1}(t.text,r.end)&&(y=!0),y){this.replaceRange(t,e.createRange(o),e.factory.createToken(h));for(var b=e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(g,m,t,this.formatContext.options),k=e.skipTrivia(t.text,o,!0,!1);k!==o&&e.isLineBreak(t.text.charCodeAt(k-1));)k--;this.replaceRange(t,e.createRange(k),n,{indentation:b,prefix:this.newLineCharacter})}else this.replaceRange(t,e.createRange(o),n,{prefix:e.tokenToString(h)+" "})}}}else e.Debug.fail("node is not a list element")},t.prototype.parenthesizeExpression=function(t,r){this.replaceRange(t,e.rangeOfNode(r),e.factory.createParenthesizedExpression(r))},t.prototype.finishClassesWithNodesInsertedAtStart=function(){var t=this;this.classesWithNodesInsertedAtStart.forEach((function(r){var n=r.node,i=r.sourceFile,a=function(t,r){var n=e.findChildOfKind(t,18,r),i=e.findChildOfKind(t,19,r);return[null==n?void 0:n.end,null==i?void 0:i.end]}(n,i),o=a[0],s=a[1];if(void 0!==o&&void 0!==s){var c=0===k(n).length,l=e.positionsAreOnSameLine(o,s,i);c&&l&&o!==s-1&&t.deleteRange(i,e.createRange(o,s-1)),l&&t.insertText(i,s-1,t.newLineCharacter)}}))},t.prototype.finishDeleteDeclarations=function(){for(var t=this,r=new e.Set,n=function(t,n){i.deletedNodes.some((function(r){return r.sourceFile===t&&e.rangeContainsRangeExclusive(r.node,n)}))||(e.isArray(n)?i.deleteRange(t,e.rangeOfTypeParameters(t,n)):y.deleteDeclaration(i,r,t,n))},i=this,a=0,o=this.deletedNodes;a<o.length;a++){var s=o[a];n(s.sourceFile,s.node)}r.forEach((function(n){var i=n.getSourceFile(),a=e.formatting.SmartIndenter.getContainingList(n,i);if(n===e.last(a)){var o=e.findLastIndex(a,(function(e){return!r.has(e)}),a.length-2);-1!==o&&t.deleteRange(i,{pos:a[o].end,end:b(i,a[o+1])})}}))},t.prototype.getChanges=function(e){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();for(var t=h.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,e),r=0,n=this.newFiles;r<n.length;r++){var i=n[r],a=i.oldFile,o=i.fileName,s=i.statements;t.push(h.newFileChanges(a,o,s,this.newLineCharacter,this.formatContext))}return t},t.prototype.createNewFile=function(e,t,r){this.newFiles.push({oldFile:e,fileName:t,statements:r})},t}();function b(t,r){return e.skipTrivia(t.text,m(t,r,{leadingTriviaOption:c.IncludeAll}),!1,!0)}function k(t){return e.isObjectLiteralExpression(t)?t.properties:t.members}function x(t,r){for(var n=r.length-1;n>=0;n--){var i=r[n],a=i.span,o=i.newText;t=""+t.substring(0,a.start)+o+t.substring(e.textSpanEnd(a))}return t}function E(t){var n=e.visitEachChild(t,E,e.nullTransformationContext,S,E),i=e.nodeIsSynthesized(n)?n:Object.create(n);return e.setTextRangePosEnd(i,r(t),o(t)),i}function S(t,n,i,a,s){var c=e.visitNodes(t,n,i,a,s);if(!c)return c;var l=c===t?e.factory.createNodeArray(c.slice(0)):c;return e.setTextRangePosEnd(l,r(t),o(t)),l}function D(t,r){return!(e.isInComment(t,r)||e.isInString(t,r)||e.isInTemplateString(t,r)||e.isInJSXText(t,r))}function w(e,t,r,n){void 0===n&&(n={leadingTriviaOption:c.IncludeAll});var i=m(t,r,n),a=g(t,r,n);e.deleteRange(t,{pos:i,end:a})}function T(t,r,n,i){var a=e.Debug.checkDefined(e.formatting.SmartIndenter.getContainingList(i,n)),o=e.indexOfNode(a,i);e.Debug.assert(-1!==o),1!==a.length?(e.Debug.assert(!r.has(i),"Deleting a node twice"),r.add(i),t.deleteRange(n,{pos:b(n,i),end:o===a.length-1?g(n,i,{}):b(n,a[o+1])})):w(t,n,i)}t.ChangeTracker=v,t.getNewFileText=function(e,t,r,n){return h.newFileChangesWorker(void 0,t,e,r,n)},function(t){function r(t,r,n,a,o){var s=n.map((function(e){return 4===e?"":i(e,t,a).text})).join(a),c=e.createSourceFile("any file name",s,99,!0,r);return x(s,e.formatting.formatDocument(c,o))+a}function i(t,r,i){var a=function(t){var r=0,i=e.createTextWriter(t),a=function(e,t,i){t&&n(t,r),i(e,t),t&&s(t,r)},o=function(e){e&&n(e,r)},c=function(e){e&&s(e,r)};function l(t,n){if(n||!function(t){return e.skipTrivia(t,0)===t.length}(t)){r=i.getTextPos();for(var a=0;e.isWhiteSpaceLike(t.charCodeAt(t.length-a-1));)a++;r-=a}}function u(e){i.write(e),l(e,!1)}function d(e){i.writeComment(e)}function p(e){i.writeKeyword(e),l(e,!1)}function f(e){i.writeOperator(e),l(e,!1)}function m(e){i.writePunctuation(e),l(e,!1)}function g(e){i.writeTrailingSemicolon(e),l(e,!1)}function _(e){i.writeParameter(e),l(e,!1)}function h(e){i.writeProperty(e),l(e,!1)}function y(e){i.writeSpace(e),l(e,!1)}function v(e){i.writeStringLiteral(e),l(e,!1)}function b(e,t){i.writeSymbol(e,t),l(e,!1)}function k(e){i.writeLine(e)}function x(){i.increaseIndent()}function E(){i.decreaseIndent()}function S(){return i.getText()}function D(e){i.rawWrite(e),l(e,!1)}function w(e){i.writeLiteral(e),l(e,!0)}function T(){return i.getTextPos()}function C(){return i.getLine()}function A(){return i.getColumn()}function N(){return i.getIndent()}function P(){return i.isAtStartOfLine()}function I(){i.clear(),r=0}return{onEmitNode:a,onBeforeEmitNodeArray:function(e){e&&n(e,r)},onAfterEmitNodeArray:function(e){e&&s(e,r)},onBeforeEmitToken:o,onAfterEmitToken:c,write:u,writeComment:d,writeKeyword:p,writeOperator:f,writePunctuation:m,writeTrailingSemicolon:g,writeParameter:_,writeProperty:h,writeSpace:y,writeStringLiteral:v,writeSymbol:b,writeLine:k,increaseIndent:x,decreaseIndent:E,getText:S,rawWrite:D,writeLiteral:w,getTextPos:T,getLine:C,getColumn:A,getIndent:N,isAtStartOfLine:P,hasTrailingComment:function(){return i.hasTrailingComment()},hasTrailingWhitespace:function(){return i.hasTrailingWhitespace()},clear:I}}(i),o="\n"===i?1:0;return e.createPrinter({newLine:o,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},a).writeNode(4,t,r,a),{text:a.getText(),node:E(t)}}t.getTextChangesFromChanges=function(t,r,n,o){return e.mapDefined(e.group(t,(function(e){return e.sourceFile.path})),(function(t){for(var s=t[0].sourceFile,c=e.stableSort(t,(function(e,t){return e.range.pos-t.range.pos||e.range.end-t.range.end})),l=function(t){e.Debug.assert(c[t].range.end<=c[t+1].range.pos,"Changes overlap",(function(){return JSON.stringify(c[t].range)+" and "+JSON.stringify(c[t+1].range)}))},u=0;u<c.length-1;u++)l(u);var p=e.mapDefined(c,(function(t){var c=e.createTextSpanFromRange(t.range),l=function(t,r,n,o,s){if(t.kind===d.Remove)return"";if(t.kind===d.Text)return t.text;var c=t.options,l=void 0===c?{}:c,u=t.range.pos,p=function(t){return function(t,r,n,o,s,c,l){var u=o.indentation,d=o.prefix,p=o.delta,f=i(t,r,s),m=f.node,g=f.text;l&&l(m,g);var _=function(t,r){var n=t.options,i=!n.semicolons||n.semicolons===e.SemicolonPreference.Ignore,o=n.semicolons===e.SemicolonPreference.Remove||i&&!e.probablyUsesSemicolons(r);return a(a({},n),{semicolons:o?e.SemicolonPreference.Remove:e.SemicolonPreference.Ignore})}(c,r),h=void 0!==u?u:e.formatting.SmartIndenter.getIndentation(n,r,_,d===s||e.getLineStartPositionForPosition(n,r)===n);void 0===p&&(p=e.formatting.SmartIndenter.shouldIndentChildNode(_,t)&&_.indentSize||0);var y={text:g,getLineAndCharacterOfPosition:function(t){return e.getLineAndCharacterOfPosition(this,t)}},v=e.formatting.formatNodeGivenIndentation(m,y,r.languageVariant,h,p,a(a({},c),{options:_}));return x(g,v)}(t,r,u,l,n,o,s)},f=t.kind===d.ReplaceWithMultipleNodes?t.nodes.map((function(t){return e.removeSuffix(p(t),n)})).join(t.options.joiner||n):p(t.node),m=l.preserveLeadingWhitespace||void 0!==l.indentation||e.getLineStartPositionForPosition(u,r)===u?f:f.replace(/^\s+/,"");return(l.prefix||"")+m+(!l.suffix||e.endsWith(m,l.suffix)?"":l.suffix)}(t,s,r,n,o);if(c.length!==l.length||!e.stringContainsAt(s.text,l,c.start))return e.createTextChange(c,l)}));return p.length>0?{fileName:s.fileName,textChanges:p}:void 0}))},t.newFileChanges=function(t,n,i,a,o){var s=r(t,e.getScriptKindFromFileName(n),i,a,o);return{fileName:n,textChanges:[e.createTextChange(e.createTextSpan(0,0),s)],isNewFile:!0}},t.newFileChangesWorker=r,t.getNonformattedText=i}(h||(h={})),t.applyChanges=x,t.isValidLocationToAddComment=D,function(t){function r(t,r,n){if(n.parent.name){var i=e.Debug.checkDefined(e.getTokenAtPosition(r,n.pos-1));t.deleteRange(r,{pos:i.getStart(r),end:n.end})}else{w(t,r,e.getAncestor(n,264))}}t.deleteDeclaration=function(t,n,i,a){switch(a.kind){case 161:var o=a.parent;e.isArrowFunction(o)&&1===o.parameters.length&&!e.findChildOfKind(o,20,i)?t.replaceNodeWithText(i,a,"()"):T(t,n,i,a);break;case 264:case 263:w(t,i,a,{leadingTriviaOption:i.imports.length&&a===e.first(i.imports).parent||a===e.find(i.statements,e.isAnyImportSyntax)?c.Exclude:e.hasJSDocNodes(a)?c.JSDoc:c.StartLine});break;case 199:var s=a.parent;198===s.kind&&a!==e.last(s.elements)?w(t,i,a):T(t,n,i,a);break;case 251:!function(t,r,n,i){var a=i.parent;if(290===a.kind)return void t.deleteNodeRange(n,e.findChildOfKind(a,20,n),e.findChildOfKind(a,21,n));if(1!==a.declarations.length)return void T(t,r,n,i);var o=a.parent;switch(o.kind){case 241:case 240:t.replaceNode(n,i,e.factory.createObjectLiteralExpression());break;case 239:w(t,n,a);break;case 234:w(t,n,o,{leadingTriviaOption:e.hasJSDocNodes(o)?c.JSDoc:c.StartLine});break;default:e.Debug.assertNever(o)}}(t,n,i,a);break;case 160:T(t,n,i,a);break;case 268:var u=a.parent;1===u.elements.length?r(t,i,u):T(t,n,i,a);break;case 266:r(t,i,a);break;case 26:w(t,i,a,{trailingTriviaOption:l.Exclude});break;case 98:w(t,i,a,{leadingTriviaOption:c.Exclude});break;case 254:case 255:case 253:w(t,i,a,{leadingTriviaOption:e.hasJSDocNodes(a)?c.JSDoc:c.StartLine});break;default:e.isImportClause(a.parent)&&a.parent.name===a?function(t,r,n){if(n.namedBindings){var i=n.name.getStart(r),a=e.getTokenAtPosition(r,n.name.end);if(a&&27===a.kind){var o=e.skipTrivia(r.text,a.end,!1,!0);t.deleteRange(r,{pos:i,end:o})}else w(t,r,n.name)}else w(t,r,n.parent)}(t,i,a.parent):e.isCallExpression(a.parent)&&e.contains(a.parent.arguments,a)?T(t,n,i,a):w(t,i,a)}}}(y||(y={})),t.deleteNode=w}(e.textChanges||(e.textChanges={}))}(d||(d={})),function(e){!function(t){var r=e.createMultiMap(),n=new e.Map;function o(t){return e.isArray(t)?e.formatStringFromArgs(e.getLocaleSpecificMessage(t[0]),t.slice(1)):e.getLocaleSpecificMessage(t)}function s(e,t,r,n,i,a){return{fixName:e,description:t,changes:r,fixId:n,fixAllDescription:i,commands:a?[a]:void 0}}function l(e,t){return{changes:e,commands:t}}function u(t,r,n){for(var i=0,a=d(t);i<a.length;i++){var o=a[i];e.contains(r,o.code)&&n(o)}}function d(t){var r=t.program,n=t.sourceFile,a=t.cancellationToken;return i(i(i([],r.getSemanticDiagnostics(n,a)),r.getSyntacticDiagnostics(n,a)),e.computeSuggestionDiagnostics(n,r,a))}t.createCodeFixActionWithoutFixAll=function(e,t,r){return s(e,o(r),t,void 0,void 0)},t.createCodeFixAction=function(e,t,r,n,i,a){return s(e,o(r),t,n,o(i),a)},t.registerCodeFix=function(t){for(var i=0,a=t.errorCodes;i<a.length;i++){var o=a[i];r.add(String(o),t)}if(t.fixIds)for(var s=0,c=t.fixIds;s<c.length;s++){var l=c[s];e.Debug.assert(!n.has(l)),n.set(l,t)}},t.getSupportedErrorCodes=function(){return e.arrayFrom(r.keys())},t.getFixes=function(t){var n=d(t),i=r.get(String(t.errorCode));return e.flatMap(i,(function(r){return e.map(r.getCodeActions(t),function(t,r){for(var n=t.errorCodes,i=0,o=0,s=r;o<s.length;o++){var l=s[o];if(e.contains(n,l.code)&&i++,i>1)break}var u=i<2;return function(e){var t=e.fixId,r=e.fixAllDescription,n=c(e,["fixId","fixAllDescription"]);return u?n:a(a({},n),{fixId:t,fixAllDescription:r})}}(r,n))}))},t.getAllFixes=function(t){return n.get(e.cast(t.fixId,e.isString)).getAllCodeActions(t)},t.createCombinedCodeActions=l,t.createFileTextChanges=function(e,t){return{fileName:e,textChanges:t}},t.codeFixAll=function(t,r,n){var i=[];return l(e.textChanges.ChangeTracker.with(t,(function(e){return u(t,r,(function(t){return n(e,t,i)}))})),0===i.length?void 0:i)},t.eachDiagnostic=u}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){var t,r;t=e.refactor||(e.refactor={}),r=new e.Map,t.registerRefactor=function(e,t){r.set(e,t)},t.getApplicableRefactors=function(n){return e.arrayFrom(e.flatMapIterator(r.values(),(function(e){var r;return n.cancellationToken&&n.cancellationToken.isCancellationRequested()||!(null===(r=e.kinds)||void 0===r?void 0:r.some((function(e){return t.refactorKindBeginsWith(e,n.kind)})))?void 0:e.getAvailableActions(n)})))},t.getEditsForRefactor=function(e,t,n){var i=r.get(t);return i&&i.getEditsForAction(e,n)}}(d||(d={})),function(e){!function(t){var r="addConvertToUnknownForNonOverlappingTypes",n=[e.Diagnostics.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n),a=e.Debug.checkDefined(e.findAncestor(i,(function(t){return e.isAsExpression(t)||e.isTypeAssertionExpression(t)})),"Expected to find an assertion expression"),o=e.isAsExpression(a)?e.factory.createAsExpression(a.expression,e.factory.createKeywordTypeNode(153)):e.factory.createTypeAssertion(e.factory.createKeywordTypeNode(153),a.expression);t.replaceNode(r,a.expression,o)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Add_unknown_conversion_for_non_overlapping_types,r,e.Diagnostics.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){t.registerCodeFix({errorCodes:[e.Diagnostics.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,e.Diagnostics.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code],getCodeActions:function(r){var n=r.sourceFile,i=e.textChanges.ChangeTracker.with(r,(function(t){var r=e.factory.createExportDeclaration(void 0,void 0,!1,e.factory.createNamedExports([]),void 0);t.insertNodeAtEndOfScope(n,n,r)}));return[t.createCodeFixActionWithoutFixAll("addEmptyExportDeclaration",i,e.Diagnostics.Add_export_to_make_this_file_into_a_module)]}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingAsync",n=[e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code,e.Diagnostics.Type_0_is_not_comparable_to_type_1.code];function i(n,i,a,o){var s=a((function(t){return function(t,r,n,i){if(i&&i.has(e.getNodeId(n)))return;null==i||i.add(e.getNodeId(n));var a=e.factory.updateModifiers(e.getSynthesizedDeepClone(n,!0),e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(256|e.getSyntacticModifierFlags(n))));t.replaceNode(r,n,a)}(t,n.sourceFile,i,o)}));return t.createCodeFixAction(r,s,e.Diagnostics.Add_async_modifier_to_containing_function,r,e.Diagnostics.Add_all_missing_async_modifiers)}function a(t,r){if(r){var n=e.getTokenAtPosition(t,r.start);return e.findAncestor(n,(function(n){return n.getStart(t)<r.start||n.getEnd()>e.textSpanEnd(r)?"quit":(e.isArrowFunction(n)||e.isMethodDeclaration(n)||e.isFunctionExpression(n)||e.isFunctionDeclaration(n))&&e.textSpansEqual(r,e.createTextSpanFromNode(n,t))}))}}t.registerCodeFix({fixIds:[r],errorCodes:n,getCodeActions:function(t){var r=t.sourceFile,n=t.errorCode,o=t.cancellationToken,s=t.program,c=t.span,l=e.find(s.getDiagnosticsProducingTypeChecker().getDiagnostics(r,o),function(t,r){return function(n){var i=n.start,a=n.length,o=n.relatedInformation,s=n.code;return e.isNumber(i)&&e.isNumber(a)&&e.textSpansEqual({start:i,length:a},t)&&s===r&&!!o&&e.some(o,(function(t){return t.code===e.Diagnostics.Did_you_mean_to_mark_this_function_as_async.code}))}}(c,n)),u=a(r,l&&l.relatedInformation&&e.find(l.relatedInformation,(function(t){return t.code===e.Diagnostics.Did_you_mean_to_mark_this_function_as_async.code})));if(u){return[i(t,u,(function(r){return e.textChanges.ChangeTracker.with(t,r)}))]}},getAllCodeActions:function(r){var o=r.sourceFile,s=new e.Set;return t.codeFixAll(r,n,(function(t,n){var c=n.relatedInformation&&e.find(n.relatedInformation,(function(t){return t.code===e.Diagnostics.Did_you_mean_to_mark_this_function_as_async.code})),l=a(o,c);if(l){return i(r,l,(function(e){return e(t),[]}),s)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingAwait",n=e.Diagnostics.Property_0_does_not_exist_on_type_1.code,a=[e.Diagnostics.This_expression_is_not_callable.code,e.Diagnostics.This_expression_is_not_constructable.code],o=i([e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,e.Diagnostics.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,e.Diagnostics.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,e.Diagnostics.Operator_0_cannot_be_applied_to_type_1.code,e.Diagnostics.Operator_0_cannot_be_applied_to_types_1_and_2.code,e.Diagnostics.This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap.code,e.Diagnostics.Type_0_is_not_an_array_type.code,e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type.code,e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators.code,e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,e.Diagnostics.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,e.Diagnostics.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,e.Diagnostics.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,n],a);function s(r,n,i,a,s,c){var l=r.sourceFile,p=r.program,f=r.cancellationToken,m=function(t,r,n,i,a){var s=function(t,r){if(e.isPropertyAccessExpression(t.parent)&&e.isIdentifier(t.parent.expression))return{identifiers:[t.parent.expression],isCompleteFix:!0};if(e.isIdentifier(t))return{identifiers:[t],isCompleteFix:!0};if(e.isBinaryExpression(t)){for(var n=void 0,i=!0,a=0,o=[t.left,t.right];a<o.length;a++){var s=o[a],c=r.getTypeAtLocation(s);if(r.getPromisedTypeOfPromise(c)){if(!e.isIdentifier(s)){i=!1;continue}(n||(n=[])).push(s)}}return n&&{identifiers:n,isCompleteFix:i}}}(t,a);if(!s)return;for(var c,l=s.isCompleteFix,d=function(t){var s=a.getSymbolAtLocation(t);if(!s)return"continue";var d=e.tryCast(s.valueDeclaration,e.isVariableDeclaration),p=d&&e.tryCast(d.name,e.isIdentifier),f=e.getAncestor(d,234);if(!d||!f||d.type||!d.initializer||f.getSourceFile()!==r||e.hasSyntacticModifier(f,1)||!p||!u(d.initializer))return l=!1,"continue";var m=i.getSemanticDiagnostics(r,n),g=e.FindAllReferences.Core.eachSymbolReferenceInFile(p,a,r,(function(n){return t!==n&&!function(t,r,n,i){var a=e.isPropertyAccessExpression(t.parent)?t.parent.name:e.isBinaryExpression(t.parent)?t.parent:t,s=e.find(r,(function(e){return e.start===a.getStart(n)&&e.start+e.length===a.getEnd()}));return s&&e.contains(o,s.code)||1&i.getTypeAtLocation(a).flags}(n,m,r,a)}));if(g)return l=!1,"continue";(c||(c=[])).push({expression:d.initializer,declarationSymbol:s})},p=0,f=s.identifiers;p<f.length;p++){d(f[p])}return c&&{initializers:c,needsSecondPassForFixAll:!l}}(n,l,f,p,a);if(m){var g=s((function(t){e.forEach(m.initializers,(function(e){var r=e.expression;return d(t,i,l,a,r,c)})),c&&m.needsSecondPassForFixAll&&d(t,i,l,a,n,c)}));return t.createCodeFixActionWithoutFixAll("addMissingAwaitToInitializer",g,1===m.initializers.length?[e.Diagnostics.Add_await_to_initializer_for_0,m.initializers[0].declarationSymbol.name]:e.Diagnostics.Add_await_to_initializers)}}function c(n,i,a,o,s,c){var l=s((function(e){return d(e,a,n.sourceFile,o,i,c)}));return t.createCodeFixAction(r,l,e.Diagnostics.Add_await,r,e.Diagnostics.Fix_all_expressions_possibly_missing_await)}function l(t,r,n,i,a){var o=e.getTokenAtPosition(t,n.start),s=e.findAncestor(o,(function(r){return r.getStart(t)<n.start||r.getEnd()>e.textSpanEnd(n)?"quit":e.isExpression(r)&&e.textSpansEqual(n,e.createTextSpanFromNode(r,t))}));return s&&function(t,r,n,i,a){var o=a.getDiagnosticsProducingTypeChecker().getDiagnostics(t,i);return e.some(o,(function(t){var i=t.start,a=t.length,o=t.relatedInformation,s=t.code;return e.isNumber(i)&&e.isNumber(a)&&e.textSpansEqual({start:i,length:a},n)&&s===r&&!!o&&e.some(o,(function(t){return t.code===e.Diagnostics.Did_you_forget_to_use_await.code}))}))}(t,r,n,i,a)&&u(s)?s:void 0}function u(t){return 32768&t.kind||!!e.findAncestor(t,(function(t){return t.parent&&e.isArrowFunction(t.parent)&&t.parent.body===t||e.isBlock(t)&&(253===t.parent.kind||209===t.parent.kind||210===t.parent.kind||166===t.parent.kind)}))}function d(t,r,i,o,s,c){if(e.isBinaryExpression(s))for(var l=0,u=[s.left,s.right];l<u.length;l++){var d=u[l];if(c&&e.isIdentifier(d))if((g=o.getSymbolAtLocation(d))&&c.has(e.getSymbolId(g)))continue;var f=o.getTypeAtLocation(d),m=o.getPromisedTypeOfPromise(f)?e.factory.createAwaitExpression(d):d;t.replaceNode(i,d,m)}else if(r===n&&e.isPropertyAccessExpression(s.parent)){if(c&&e.isIdentifier(s.parent.expression))if((g=o.getSymbolAtLocation(s.parent.expression))&&c.has(e.getSymbolId(g)))return;t.replaceNode(i,s.parent.expression,e.factory.createParenthesizedExpression(e.factory.createAwaitExpression(s.parent.expression))),p(t,s.parent.expression,i)}else if(e.contains(a,r)&&e.isCallOrNewExpression(s.parent)){if(c&&e.isIdentifier(s))if((g=o.getSymbolAtLocation(s))&&c.has(e.getSymbolId(g)))return;t.replaceNode(i,s,e.factory.createParenthesizedExpression(e.factory.createAwaitExpression(s))),p(t,s,i)}else{var g;if(c&&e.isVariableDeclaration(s.parent)&&e.isIdentifier(s.parent.name))if((g=o.getSymbolAtLocation(s.parent.name))&&!e.tryAddToSet(c,e.getSymbolId(g)))return;t.replaceNode(i,s,e.factory.createAwaitExpression(s))}}function p(t,r,n){var i=e.findPrecedingToken(r.pos,n);i&&e.positionIsASICandidate(i.end,i.parent,n)&&t.insertText(n,r.getStart(n),";")}t.registerCodeFix({fixIds:[r],errorCodes:o,getCodeActions:function(t){var r=t.sourceFile,n=t.errorCode,i=l(r,n,t.span,t.cancellationToken,t.program);if(i){var a=t.program.getTypeChecker(),o=function(r){return e.textChanges.ChangeTracker.with(t,r)};return e.compact([s(t,i,n,a,o),c(t,i,n,a,o)])}},getAllCodeActions:function(r){var n=r.sourceFile,i=r.program,a=r.cancellationToken,u=r.program.getTypeChecker(),d=new e.Set;return t.codeFixAll(r,o,(function(e,t){var o=l(n,t.code,t,a,i);if(o){var p=function(t){return t(e),[]};return s(r,o,t.code,u,p,d)||c(r,o,t.code,u,p,d)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingConst",n=[e.Diagnostics.Cannot_find_name_0.code,e.Diagnostics.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code];function i(t,r,n,i,s){var c=e.getTokenAtPosition(r,n),l=e.findAncestor(c,(function(t){return e.isForInOrOfStatement(t.parent)?t.parent.initializer===t:!function(e){switch(e.kind){case 78:case 200:case 201:case 291:case 292:return!0;default:return!1}}(t)&&"quit"}));if(l)return a(t,l,r,s);var u=c.parent;if(e.isBinaryExpression(u)&&62===u.operatorToken.kind&&e.isExpressionStatement(u.parent))return a(t,c,r,s);if(e.isArrayLiteralExpression(u)){var d=i.getTypeChecker();if(!e.every(u.elements,(function(t){return function(t,r){var n=e.isIdentifier(t)?t:e.isAssignmentExpression(t,!0)&&e.isIdentifier(t.left)?t.left:void 0;return!!n&&!r.getSymbolAtLocation(n)}(t,d)})))return;return a(t,u,r,s)}var p=e.findAncestor(c,(function(t){return!!e.isExpressionStatement(t.parent)||!function(e){switch(e.kind){case 78:case 218:case 27:return!0;default:return!1}}(t)&&"quit"}));if(p){if(!o(p,i.getTypeChecker()))return;return a(t,p,r,s)}}function a(t,r,n,i){i&&!e.tryAddToSet(i,r)||t.insertModifierBefore(n,85,r)}function o(t,r){return!!e.isBinaryExpression(t)&&(27===t.operatorToken.kind?e.every([t.left,t.right],(function(e){return o(e,r)})):62===t.operatorToken.kind&&e.isIdentifier(t.left)&&!r.getSymbolAtLocation(t.left))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start,n.program)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Add_const_to_unresolved_variable,r,e.Diagnostics.Add_const_to_all_unresolved_variables)]},fixIds:[r],getAllCodeActions:function(r){var a=new e.Set;return t.codeFixAll(r,n,(function(e,t){return i(e,t.file,t.start,r.program,a)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingDeclareProperty",n=[e.Diagnostics.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration.code];function i(t,r,n,i){var a=e.getTokenAtPosition(r,n);if(e.isIdentifier(a)){var o=a.parent;164!==o.kind||i&&!e.tryAddToSet(i,o)||t.insertModifierBefore(r,134,o)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Prefix_with_declare,r,e.Diagnostics.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[r],getAllCodeActions:function(r){var a=new e.Set;return t.codeFixAll(r,n,(function(e,t){return i(e,t.file,t.start,a)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingInvocationForDecorator",n=[e.Diagnostics._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n),a=e.findAncestor(i,e.isDecorator);e.Debug.assert(!!a,"Expected position to be owned by a decorator.");var o=e.factory.createCallExpression(a.expression,void 0,void 0);t.replaceNode(r,a.expression,o)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Call_decorator_expression,r,e.Diagnostics.Add_to_all_uncalled_decorators)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addNameToNamelessParameter",n=[e.Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n);if(!e.isIdentifier(i))return e.Debug.fail("add-name-to-nameless-parameter operates on identifiers, but got a "+e.Debug.formatSyntaxKind(i.kind));var a=i.parent;if(!e.isParameter(a))return e.Debug.fail("Tried to add a parameter name to a non-parameter: "+e.Debug.formatSyntaxKind(i.kind));var o=a.parent.parameters.indexOf(a);e.Debug.assert(!a.type,"Tried to add a parameter name to a parameter that already had one."),e.Debug.assert(o>-1,"Parameter not found in parent parameter list.");var s=e.factory.createParameterDeclaration(void 0,a.modifiers,a.dotDotDotToken,"arg"+o,a.questionToken,e.factory.createTypeReferenceNode(i,void 0),a.initializer);t.replaceNode(r,i,s)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Add_parameter_name,r,e.Diagnostics.Add_names_to_all_parameters_without_names)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="annotateWithTypeFromJSDoc",n=[e.Diagnostics.JSDoc_types_may_be_moved_to_TypeScript_types.code];function i(t,r){var n=e.getTokenAtPosition(t,r);return e.tryCast(e.isParameter(n.parent)?n.parent.parent:n.parent,a)}function a(t){return function(t){return e.isFunctionLikeDeclaration(t)||251===t.kind||163===t.kind||164===t.kind}(t)&&o(t)}function o(t){return e.isFunctionLikeDeclaration(t)?t.parameters.some(o)||!t.type&&!!e.getJSDocReturnType(t):!t.type&&!!e.getJSDocType(t)}function s(t,r,n){if(e.isFunctionLikeDeclaration(n)&&(e.getJSDocReturnType(n)||n.parameters.some((function(t){return!!e.getJSDocType(t)})))){if(!n.typeParameters){var i=e.getJSDocTypeParameterDeclarations(n);i.length&&t.insertTypeParameters(r,n,i)}var a=e.isArrowFunction(n)&&!e.findChildOfKind(n,20,r);a&&t.insertNodeBefore(r,e.first(n.parameters),e.factory.createToken(20));for(var o=0,s=n.parameters;o<s.length;o++){var l=s[o];if(!l.type){var u=e.getJSDocType(l);u&&t.tryInsertTypeAnnotation(r,l,c(u))}}if(a&&t.insertNodeAfter(r,e.last(n.parameters),e.factory.createToken(21)),!n.type){var d=e.getJSDocReturnType(n);d&&t.tryInsertTypeAnnotation(r,n,c(d))}}else{var p=e.Debug.checkDefined(e.getJSDocType(n),"A JSDocType for this declaration should exist");e.Debug.assert(!n.type,"The JSDocType decl should have a type"),t.tryInsertTypeAnnotation(r,n,c(p))}}function c(t){switch(t.kind){case 306:case 307:return e.factory.createTypeReferenceNode("any",e.emptyArray);case 310:return function(t){return e.factory.createUnionTypeNode([e.visitNode(t.type,c),e.factory.createTypeReferenceNode("undefined",e.emptyArray)])}(t);case 309:return c(t.type);case 308:return function(t){return e.factory.createUnionTypeNode([e.visitNode(t.type,c),e.factory.createTypeReferenceNode("null",e.emptyArray)])}(t);case 312:return function(t){return e.factory.createArrayTypeNode(e.visitNode(t.type,c))}(t);case 311:return function(t){var r;return e.factory.createFunctionTypeNode(e.emptyArray,t.parameters.map(l),null!==(r=t.type)&&void 0!==r?r:e.factory.createKeywordTypeNode(129))}(t);case 174:return function(t){var r=t.typeName,n=t.typeArguments;if(e.isIdentifier(t.typeName)){if(e.isJSDocIndexSignature(t))return function(t){var r=e.factory.createParameterDeclaration(void 0,void 0,void 0,145===t.typeArguments[0].kind?"n":"s",void 0,e.factory.createTypeReferenceNode(145===t.typeArguments[0].kind?"number":"string",[]),void 0),n=e.factory.createTypeLiteralNode([e.factory.createIndexSignature(void 0,void 0,[r],t.typeArguments[1])]);return e.setEmitFlags(n,1),n}(t);var i=t.typeName.text;switch(t.typeName.text){case"String":case"Boolean":case"Object":case"Number":i=i.toLowerCase();break;case"array":case"date":case"promise":i=i[0].toUpperCase()+i.slice(1)}r=e.factory.createIdentifier(i),n="Array"!==i&&"Promise"!==i||t.typeArguments?e.visitNodes(t.typeArguments,c):e.factory.createNodeArray([e.factory.createTypeReferenceNode("any",e.emptyArray)])}return e.factory.createTypeReferenceNode(r,n)}(t);default:var r=e.visitEachChild(t,c,e.nullTransformationContext);return e.setEmitFlags(r,1),r}}function l(t){var r=t.parent.parameters.indexOf(t),n=312===t.type.kind&&r===t.parent.parameters.length-1,i=t.name||(n?"rest":"arg"+r),a=n?e.factory.createToken(25):t.dotDotDotToken;return e.factory.createParameterDeclaration(t.decorators,t.modifiers,a,i,t.questionToken,e.visitNode(t.type,c),t.initializer)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=i(n.sourceFile,n.span.start);if(a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return s(e,n.sourceFile,a)}));return[t.createCodeFixAction(r,o,e.Diagnostics.Annotate_with_type_from_JSDoc,r,e.Diagnostics.Annotate_everything_with_types_from_JSDoc)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&s(e,t.file,r)}))}}),t.parameterShouldGetTypeFromJSDoc=a}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="convertFunctionToEs6Class",n=[e.Diagnostics.This_constructor_function_may_be_converted_to_a_class_declaration.code];function i(t,r,n,i,s,c){var l=i.getSymbolAtLocation(e.getTokenAtPosition(r,n));if(l&&19&l.flags){var u=l.valueDeclaration;if(e.isFunctionDeclaration(u))t.replaceNode(r,u,function(t){var r=f(l);t.body&&r.unshift(e.factory.createConstructorDeclaration(void 0,void 0,t.parameters,t.body));var n=a(t,93);return e.factory.createClassDeclaration(void 0,n,t.name,void 0,void 0,r)}(u));else if(e.isVariableDeclaration(u)){var d=function(t){var r=t.initializer;if(!r||!e.isFunctionExpression(r)||!e.isIdentifier(t.name))return;var n=f(t.symbol);r.body&&n.unshift(e.factory.createConstructorDeclaration(void 0,void 0,r.parameters,r.body));var i=a(t.parent.parent,93);return e.factory.createClassDeclaration(void 0,i,t.name,void 0,void 0,n)}(u);if(!d)return;var p=u.parent.parent;e.isVariableDeclarationList(u.parent)&&u.parent.declarations.length>1?(t.delete(r,u),t.insertNodeAfter(r,p,d)):t.replaceNode(r,p,d)}}function f(n){var i=[];return n.members&&n.members.forEach((function(e,n){if("constructor"!==n){var a=l(e,void 0);a&&i.push.apply(i,a)}else t.delete(r,e.valueDeclaration.parent)})),n.exports&&n.exports.forEach((function(t){if("prototype"===t.name){var r=t.declarations[0];if(1===t.declarations.length&&e.isPropertyAccessExpression(r)&&e.isBinaryExpression(r.parent)&&62===r.parent.operatorToken.kind&&e.isObjectLiteralExpression(r.parent.right))(n=l(r.parent.right.symbol,void 0))&&i.push.apply(i,n)}else{var n;(n=l(t,[e.factory.createToken(124)]))&&i.push.apply(i,n)}})),i;function l(n,i){var l=[];if(!(8192&n.flags||4096&n.flags))return l;var u,d,p=n.valueDeclaration,f=p.parent,m=f.right;if(u=p,d=m,!(e.isAccessExpression(u)?e.isPropertyAccessExpression(u)&&o(u)||e.isFunctionLike(d):e.every(u.properties,(function(t){return!!(e.isMethodDeclaration(t)||e.isGetOrSetAccessorDeclaration(t)||e.isPropertyAssignment(t)&&e.isFunctionExpression(t.initializer)&&t.name||o(t))}))))return l;var g=f.parent&&235===f.parent.kind?f.parent:f;if(t.delete(r,g),!m)return l.push(e.factory.createPropertyDeclaration([],i,n.name,void 0,void 0,void 0)),l;if(e.isAccessExpression(p)&&(e.isFunctionExpression(m)||e.isArrowFunction(m))){var _=e.getQuotePreference(r,s),h=function(t,r,n){if(e.isPropertyAccessExpression(t))return t.name;var i=t.argumentExpression;if(e.isNumericLiteral(i))return i;if(e.isStringLiteralLike(i))return e.isIdentifierText(i.text,r.target)?e.factory.createIdentifier(i.text):e.isNoSubstitutionTemplateLiteral(i)?e.factory.createStringLiteral(i.text,0===n):i;return}(p,c,_);return h?v(l,m,h):l}if(e.isObjectLiteralExpression(m))return e.flatMap(m.properties,(function(t){return e.isMethodDeclaration(t)||e.isGetOrSetAccessorDeclaration(t)?l.concat(t):e.isPropertyAssignment(t)&&e.isFunctionExpression(t.initializer)?v(l,t.initializer,t.name):o(t)?l:[]}));if(e.isSourceFileJS(r))return l;if(!e.isPropertyAccessExpression(p))return l;var y=e.factory.createPropertyDeclaration(void 0,i,p.name,void 0,void 0,m);return e.copyLeadingComments(f.parent,y,r),l.push(y),l;function v(t,n,o){return e.isFunctionExpression(n)?function(t,n,o){var s=e.concatenate(i,a(n,130)),c=e.factory.createMethodDeclaration(void 0,s,void 0,o,void 0,void 0,n.parameters,void 0,n.body);return e.copyLeadingComments(f,c,r),t.concat(c)}(t,n,o):function(t,n,o){var s,c=n.body;s=232===c.kind?c:e.factory.createBlock([e.factory.createReturnStatement(c)]);var l=e.concatenate(i,a(n,130)),u=e.factory.createMethodDeclaration(void 0,l,void 0,o,void 0,void 0,n.parameters,void 0,s);return e.copyLeadingComments(f,u,r),t.concat(u)}(t,n,o)}}}}function a(t,r){return e.filter(t.modifiers,(function(e){return e.kind===r}))}function o(t){return!!t.name&&!(!e.isIdentifier(t.name)||"constructor"!==t.name.text)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start,n.program.getTypeChecker(),n.preferences,n.program.getCompilerOptions())}));return[t.createCodeFixAction(r,a,e.Diagnostics.Convert_function_to_an_ES2015_class,r,e.Diagnostics.Convert_all_constructor_functions_to_classes)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return i(t,r.file,r.start,e.program.getTypeChecker(),e.preferences,e.program.getCompilerOptions())}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r,n="convertToAsyncFunction",a=[e.Diagnostics.This_may_be_converted_to_an_async_function.code],o=!0;function s(t,r,n,i){var a,o=e.getTokenAtPosition(r,n);if(a=e.isIdentifier(o)&&e.isVariableDeclaration(o.parent)&&o.parent.initializer&&e.isFunctionLikeDeclaration(o.parent.initializer)?o.parent.initializer:e.tryCast(e.getContainingFunction(e.getTokenAtPosition(r,n)),e.isFunctionLikeDeclaration)){var s=new e.Map,d=e.isInJSFile(a),f=function(t,r){if(!t.body)return new e.Set;var n=new e.Set;return e.forEachChild(t.body,(function t(i){c(i,r,"then")?(n.add(e.getNodeId(i)),e.forEach(i.arguments,t)):c(i,r,"catch")?(n.add(e.getNodeId(i)),e.forEachChild(i,t)):l(i,r)?n.add(e.getNodeId(i)):e.forEachChild(i,t)})),n}(a,i),m=function(t,r,n){var i=new e.Map,a=e.createMultiMap();return e.forEachChild(t,(function t(o){if(e.isIdentifier(o)){var s=r.getSymbolAtLocation(o);if(s){var c=h(r.getTypeAtLocation(o),r),l=e.getSymbolId(s).toString();if(!c||e.isParameter(o.parent)||e.isFunctionLikeDeclaration(o.parent)||n.has(l)){if(o.parent&&(e.isParameter(o.parent)||e.isVariableDeclaration(o.parent)||e.isBindingElement(o.parent))){var d=o.text,p=a.get(d);if(p&&p.some((function(e){return e!==s}))){var f=u(o,a);i.set(l,f.identifier),n.set(l,f),a.add(d,s)}else{var m=e.getSynthesizedDeepClone(o);n.set(l,x(m)),a.add(d,s)}}}else{var g=e.firstOrUndefined(c.parameters),_=g&&e.isParameter(g.valueDeclaration)&&e.tryCast(g.valueDeclaration.name,e.isIdentifier)||e.factory.createUniqueName("result",16),y=u(_,a);n.set(l,y),a.add(_.text,s)}}}else e.forEachChild(o,t)})),e.getSynthesizedDeepCloneWithReplacements(t,!0,(function(t){if(e.isBindingElement(t)&&e.isIdentifier(t.name)&&e.isObjectBindingPattern(t.parent)){if((a=(n=r.getSymbolAtLocation(t.name))&&i.get(String(e.getSymbolId(n))))&&a.text!==(t.name||t.propertyName).getText())return e.factory.createBindingElement(t.dotDotDotToken,t.propertyName||t.name,a,t.initializer)}else if(e.isIdentifier(t)){var n,a;if(a=(n=r.getSymbolAtLocation(t))&&i.get(String(e.getSymbolId(n))))return e.factory.createIdentifier(a.text)}}))}(a,i,s),g=m.body&&e.isBlock(m.body)?function(t,r){var n=[];return e.forEachReturnStatement(t,(function(t){e.isReturnStatementWithFixablePromiseHandler(t,r)&&n.push(t)})),n}(m.body,i):e.emptyArray,_={checker:i,synthNamesMap:s,setOfExpressionsToReturn:f,isInJSFile:d};if(g.length){var y=a.modifiers?a.modifiers.end:a.decorators?e.skipTrivia(r.text,a.decorators.end):a.getStart(r),v=a.modifiers?{prefix:" "}:{suffix:" "};t.insertModifierAt(r,y,130,v);for(var b=function(n){e.forEachChild(n,(function i(a){if(e.isCallExpression(a)){var o=p(a,_);t.replaceNodeWithNodes(r,n,o)}else e.isFunctionLike(a)||e.forEachChild(a,i)}))},k=0,E=g;k<E.length;k++){b(E[k])}}}}function c(t,r,n){if(!e.isCallExpression(t))return!1;var i=e.hasPropertyAccessExpressionWithName(t,n)&&r.getTypeAtLocation(t);return!(!i||!r.getPromisedTypeOfPromise(i))}function l(t,r){return!!e.isExpression(t)&&!!r.getPromisedTypeOfPromise(r.getTypeAtLocation(t))}function u(t,r){var n=(r.get(t.text)||e.emptyArray).length;return x(0===n?t:e.factory.createIdentifier(t.text+"_"+n))}function d(){return o=!1,e.emptyArray}function p(t,r,n){if(c(t,r.checker,"then"))return 0===t.arguments.length?d():function(t,r,n){var i=t.arguments,a=i[0],o=i[1],s=v(a,r),c=g(a,n,s,t,r);if(o){var l=v(o,r),u=e.factory.createBlock(p(t.expression,r,s).concat(c)),d=g(o,n,l,t,r),f=l?E(l)?l.identifier.text:l.bindingPattern:"e",m=e.factory.createVariableDeclaration(f),_=e.factory.createCatchClause(m,e.factory.createBlock(d));return[e.factory.createTryStatement(u,_,void 0)]}return p(t.expression,r,s).concat(c)}(t,r,n);if(c(t,r.checker,"catch"))return function(t,r,n){var i,a=e.singleOrUndefined(t.arguments),o=a?v(a,r):void 0;n&&!S(t,r)&&(E(n)?(i=n,r.synthNamesMap.forEach((function(t,i){if(t.identifier.text===n.identifier.text){var a=function(t){var r=e.factory.createUniqueName(t.identifier.text,16);return x(r)}(n);r.synthNamesMap.set(i,a)}}))):i=x(e.factory.createUniqueName("result",16),n.types),i.hasBeenDeclared=!0);var s,c,l=e.factory.createBlock(p(t.expression,r,i)),u=a?g(a,i,o,t,r):e.emptyArray,d=o?E(o)?o.identifier.text:o.bindingPattern:"e",f=e.factory.createVariableDeclaration(d),m=e.factory.createCatchClause(f,e.factory.createBlock(u));if(i&&!S(t,r)){c=e.getSynthesizedDeepClone(i.identifier);var _=i.types,h=r.checker.getUnionType(_,2),y=r.isInJSFile?void 0:r.checker.typeToTypeNode(h,void 0,void 0),b=[e.factory.createVariableDeclaration(c,void 0,y)];s=e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList(b,1))}var k=e.factory.createTryStatement(l,m,void 0),D=n&&c&&(w=n,1===w.kind)&&e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.getSynthesizedDeepClone(n.bindingPattern),void 0,void 0,c)],2));var w;return e.compact([s,k,D])}(t,r,n);if(e.isPropertyAccessExpression(t))return p(t.expression,r,n);var i=r.checker.getTypeAtLocation(t);return i&&r.checker.getPromisedTypeOfPromise(i)?(e.Debug.assertNode(t.original.parent,e.isPropertyAccessExpression),function(t,r,n){if(S(t,r))return[e.factory.createReturnStatement(e.getSynthesizedDeepClone(t))];return f(n,e.factory.createAwaitExpression(t),void 0)}(t,r,n)):d()}function f(t,r,n){return!t||b(t)?[e.factory.createExpressionStatement(r)]:E(t)&&t.hasBeenDeclared?[e.factory.createExpressionStatement(e.factory.createAssignment(e.getSynthesizedDeepClone(t.identifier),r))]:[e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.getSynthesizedDeepClone(k(t)),void 0,n,r)],2))]}function m(t,r){if(r&&t){var n=e.factory.createUniqueName("result",16);return i(i([],f(x(n),t,r)),[e.factory.createReturnStatement(n)])}return[e.factory.createReturnStatement(t)]}function g(t,r,n,i,a){var o,s,c,u,p;switch(t.kind){case 104:break;case 202:case 78:if(!n)break;var g=e.factory.createCallExpression(e.getSynthesizedDeepClone(t),void 0,E(n)?[n.identifier]:[]);if(S(i,a))return m(g,null===(o=i.typeArguments)||void 0===o?void 0:o[0]);var v=a.checker.getTypeAtLocation(t),b=a.checker.getSignaturesOfType(v,0);if(!b.length)return d();var x=b[0].getReturnType(),D=f(r,e.factory.createAwaitExpression(g),null===(s=i.typeArguments)||void 0===s?void 0:s[0]);return r&&r.types.push(x),D;case 209:case 210:var w=t.body,T=null===(c=h(a.checker.getTypeAtLocation(t),a.checker))||void 0===c?void 0:c.getReturnType();if(e.isBlock(w)){for(var C=[],A=!1,N=0,P=w.statements;N<P.length;N++){var I=P[N];if(e.isReturnStatement(I))if(A=!0,e.isReturnStatementWithFixablePromiseHandler(I,a.checker))C=C.concat(y(a,[I],r));else{var F=T&&I.expression?_(a.checker,T,I.expression):I.expression;C.push.apply(C,m(F,null===(u=i.typeArguments)||void 0===u?void 0:u[0]))}else C.push(I)}return S(i,a)?C.map((function(t){return e.getSynthesizedDeepClone(t)})):function(t,r,n,i){for(var a=[],o=0,s=t;o<s.length;o++){var c=s[o];if(e.isReturnStatement(c)){if(c.expression){var u=l(c.expression,n.checker)?e.factory.createAwaitExpression(c.expression):c.expression;void 0===r?a.push(e.factory.createExpressionStatement(u)):a.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(k(r),void 0,void 0,u)],2)))}}else a.push(e.getSynthesizedDeepClone(c))}i||void 0===r||a.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(k(r),void 0,void 0,e.factory.createIdentifier("undefined"))],2)));return a}(C,r,a,A)}var O=y(a,e.isFixablePromiseHandler(w,a.checker)?[e.factory.createReturnStatement(w)]:e.emptyArray,r);if(O.length>0)return O;if(T){F=_(a.checker,T,w);if(S(i,a))return m(F,null===(p=i.typeArguments)||void 0===p?void 0:p[0]);var R=f(r,F,void 0);return r&&r.types.push(T),R}return d();default:return d()}return e.emptyArray}function _(t,r,n){var i=e.getSynthesizedDeepClone(n);return t.getPromisedTypeOfPromise(r)?e.factory.createAwaitExpression(i):i}function h(t,r){var n=r.getSignaturesOfType(t,0);return e.lastOrUndefined(n)}function y(t,r,n){for(var i=[],a=0,o=r;a<o.length;a++){var s=o[a];e.forEachChild(s,(function r(a){if(e.isCallExpression(a)){var o=p(a,t,n);if((i=i.concat(o)).length>0)return}else e.isFunctionLike(a)||e.forEachChild(a,r)}))}return i}function v(t,r){var n,i=[];e.isFunctionLikeDeclaration(t)?t.parameters.length>0&&(n=function t(r){if(e.isIdentifier(r))return a(r);var n=e.flatMap(r.elements,(function(r){return e.isOmittedExpression(r)?[]:[t(r.name)]}));return function(t,r,n){void 0===r&&(r=e.emptyArray);void 0===n&&(n=[]);return{kind:1,bindingPattern:t,elements:r,types:n}}(r,n)}(t.parameters[0].name)):e.isIdentifier(t)?n=a(t):e.isPropertyAccessExpression(t)&&e.isIdentifier(t.name)&&(n=a(t.name));if(n&&(!("identifier"in n)||"undefined"!==n.identifier.text))return n;function a(t){var n,a=function(e){return e.symbol?e.symbol:r.checker.getSymbolAtLocation(e)}((n=t).original?n.original:n);return a&&r.synthNamesMap.get(e.getSymbolId(a).toString())||x(t,i)}}function b(t){return!t||(E(t)?!t.identifier.text:e.every(t.elements,b))}function k(e){return E(e)?e.identifier:e.bindingPattern}function x(e,t){return void 0===t&&(t=[]),{kind:0,identifier:e,types:t,hasBeenDeclared:!1}}function E(e){return 0===e.kind}function S(t,r){return!!t.original&&r.setOfExpressionsToReturn.has(e.getNodeId(t.original))}t.registerCodeFix({errorCodes:a,getCodeActions:function(r){o=!0;var i=e.textChanges.ChangeTracker.with(r,(function(e){return s(e,r.sourceFile,r.span.start,r.program.getTypeChecker())}));return o?[t.createCodeFixAction(n,i,e.Diagnostics.Convert_to_async_function,n,e.Diagnostics.Convert_all_to_async_functions)]:[]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,a,(function(t,r){return s(t,r.file,r.start,e.program.getTypeChecker())}))}}),function(e){e[e.Identifier=0]="Identifier",e[e.BindingPattern=1]="BindingPattern"}(r||(r={}))}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){function r(t,r,n,i){for(var a=0,o=t.imports;a<o.length;a++){var s=o[a],c=e.getResolvedModule(t,s.text);if(c&&c.resolvedFileName===r.fileName){var l=e.importFromModuleSpecifier(s);switch(l.kind){case 263:n.replaceNode(t,l,e.makeImport(l.name,void 0,s,i));break;case 204:e.isRequireCall(l,!1)&&n.replaceNode(t,l,e.factory.createPropertyAccessExpression(e.getSynthesizedDeepClone(l),"default"))}}}}function n(t,r){t.forEachChild((function n(i){if(e.isPropertyAccessExpression(i)&&e.isExportsOrModuleExportsOrAlias(t,i.expression)&&e.isIdentifier(i.name)){var a=i.parent;r(i,e.isBinaryExpression(a)&&a.left===i&&62===a.operatorToken.kind)}i.forEachChild(n)}))}function i(t,r,n,i,l,u,d,f,m){switch(r.kind){case 234:return a(t,r,i,n,l,u,m),!1;case 235:var h=r.expression;switch(h.kind){case 204:return e.isRequireCall(h,!0)&&i.replaceNode(t,r,e.makeImport(void 0,void 0,h.arguments[0],m)),!1;case 218:return 62===h.operatorToken.kind&&function(t,r,n,i,a,l){var u=n.left,d=n.right;if(!e.isPropertyAccessExpression(u))return!1;if(e.isExportsOrModuleExportsOrAlias(t,u)){if(!e.isExportsOrModuleExportsOrAlias(t,d)){var f=e.isObjectLiteralExpression(d)?function(t,r){var n=e.mapAllOrFail(t.properties,(function(t){switch(t.kind){case 168:case 169:case 292:case 293:return;case 291:return e.isIdentifier(t.name)?function(t,r,n){var i=[e.factory.createToken(93)];switch(r.kind){case 209:var a=r.name;if(a&&a.text!==t)return o();case 210:return p(t,i,r,n);case 223:return function(t,r,n,i){return e.factory.createClassDeclaration(e.getSynthesizedDeepClones(n.decorators),e.concatenate(r,e.getSynthesizedDeepClones(n.modifiers)),t,e.getSynthesizedDeepClones(n.typeParameters),e.getSynthesizedDeepClones(n.heritageClauses),c(n.members,i))}(t,i,r,n);default:return o()}function o(){return g(i,e.factory.createIdentifier(t),c(r,n))}}(t.name.text,t.initializer,r):void 0;case 166:return e.isIdentifier(t.name)?p(t.name.text,[e.factory.createToken(93)],t,r):void 0;default:e.Debug.assertNever(t,"Convert to ES6 got invalid prop kind "+t.kind)}}));return n&&[n,!1]}(d,l):e.isRequireCall(d,!0)?function(t,r){var n=t.text,i=r.getSymbolAtLocation(t),a=i?i.exports:e.emptyMap;return a.has("export=")?[[s(n)],!0]:a.has("default")?a.size>1?[[o(n),s(n)],!0]:[[s(n)],!0]:[[o(n)],!1]}(d.arguments[0],r):void 0;return f?(i.replaceNodeWithNodes(t,n.parent,f[0]),f[1]):(i.replaceRangeWithText(t,e.createRange(u.getStart(t),d.pos),"export default"),!0)}i.delete(t,n.parent)}else e.isExportsOrModuleExportsOrAlias(t,u.expression)&&function(t,r,n,i){var a=r.left.name.text,o=i.get(a);if(void 0!==o){var s=[g(void 0,o,r.right),_([e.factory.createExportSpecifier(o,a)])];n.replaceNodeWithNodes(t,r.parent,s)}else!function(t,r,n){var i=t.left,a=t.right,o=t.parent,s=i.name.text;if(!(e.isFunctionExpression(a)||e.isArrowFunction(a)||e.isClassExpression(a))||a.name&&a.name.text!==s)n.replaceNodeRangeWithNodes(r,i.expression,e.findChildOfKind(i,24,r),[e.factory.createToken(93),e.factory.createToken(85)],{joiner:" ",suffix:" "});else{n.replaceRange(r,{pos:i.getStart(r),end:a.getStart(r)},e.factory.createToken(93),{suffix:" "}),a.name||n.insertName(r,a,s);var c=e.findChildOfKind(o,26,r);c&&n.delete(r,c)}}(r,t,n)}(t,n,i,a);return!1}(t,n,h,i,d,f)}default:return!1}}function a(r,n,i,a,o,s,c){var u,d=n.declarationList,p=!1,_=e.map(d.declarations,(function(n){var i=n.name,u=n.initializer;if(u){if(e.isExportsOrModuleExportsOrAlias(r,u))return p=!0,h([]);if(e.isRequireCall(u,!0))return p=!0,function(r,n,i,a,o,s){switch(r.kind){case 197:var c=e.mapAllOrFail(r.elements,(function(t){return t.dotDotDotToken||t.initializer||t.propertyName&&!e.isIdentifier(t.propertyName)||!e.isIdentifier(t.name)?void 0:m(t.propertyName&&t.propertyName.text,t.name.text)}));if(c)return h([e.makeImport(void 0,c,n,s)]);case 198:var u=l(t.moduleSpecifierToValidIdentifier(n.text,o),a);return h([e.makeImport(e.factory.createIdentifier(u),void 0,n,s),g(void 0,e.getSynthesizedDeepClone(r),e.factory.createIdentifier(u))]);case 78:return function(t,r,n,i,a){for(var o,s=n.getSymbolAtLocation(t),c=new e.Map,u=!1,d=0,p=i.original.get(t.text);d<p.length;d++){var f=p[d];if(n.getSymbolAtLocation(f)===s&&f!==t){var m=f.parent;if(e.isPropertyAccessExpression(m)){var g=m.expression,_=m.name.text;e.Debug.assert(g===f,"Didn't expect expression === use");var y=c.get(_);void 0===y&&(y=l(_,i),c.set(_,y)),(null!=o?o:o=new e.Map).set(m,e.factory.createIdentifier(y))}else u=!0}}var v=0===c.size?void 0:e.arrayFrom(e.mapIterator(c.entries(),(function(t){var r=t[0],n=t[1];return e.factory.createImportSpecifier(r===n?void 0:e.factory.createIdentifier(r),e.factory.createIdentifier(n))})));v||(u=!0);return h([e.makeImport(u?e.getSynthesizedDeepClone(t):void 0,v,r,a)],o)}(r,n,i,a,s);default:return e.Debug.assertNever(r,"Convert to ES6 module got invalid name kind "+r.kind)}}(i,u.arguments[0],a,o,s,c);if(e.isPropertyAccessExpression(u)&&e.isRequireCall(u.expression,!0))return p=!0,function(t,r,n,i,a){switch(t.kind){case 197:case 198:var o=l(r,i);return h([f(o,r,n,a),g(void 0,t,e.factory.createIdentifier(o))]);case 78:return h([f(t.text,r,n,a)]);default:return e.Debug.assertNever(t,"Convert to ES6 module got invalid syntax form "+t.kind)}}(i,u.name.text,u.expression.arguments[0],o,c)}return h([e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([n],d.flags))])}));if(p)return i.replaceNodeWithNodes(r,n,e.flatMap(_,(function(e){return e.newImports}))),e.forEach(_,(function(t){t.useSitesToUnqualify&&e.copyEntries(t.useSitesToUnqualify,null!=u?u:u=new e.Map)})),u}function o(e){return _(void 0,e)}function s(t){return _([e.factory.createExportSpecifier(void 0,"default")],t)}function c(t,r){return r&&e.some(e.arrayFrom(r.keys()),(function(r){return e.rangeContainsRange(t,r)}))?e.isArray(t)?e.getSynthesizedDeepClonesWithReplacements(t,!0,n):e.getSynthesizedDeepCloneWithReplacements(t,!0,n):t;function n(e){if(202===e.kind){var t=r.get(e);return r.delete(e),t}}}function l(e,t){for(;t.original.has(e)||t.additional.has(e);)e="_"+e;return t.additional.add(e),e}function u(t){var r=e.createMultiMap();return d(t,(function(e){return r.add(e.text,e)})),r}function d(t,r){e.isIdentifier(t)&&function(e){var t=e.parent;switch(t.kind){case 202:return t.name!==e;case 199:case 268:return t.propertyName!==e;default:return!0}}(t)&&r(t),t.forEachChild((function(e){return d(e,r)}))}function p(t,r,n,i){return e.factory.createFunctionDeclaration(e.getSynthesizedDeepClones(n.decorators),e.concatenate(r,e.getSynthesizedDeepClones(n.modifiers)),e.getSynthesizedDeepClone(n.asteriskToken),t,e.getSynthesizedDeepClones(n.typeParameters),e.getSynthesizedDeepClones(n.parameters),e.getSynthesizedDeepClone(n.type),e.factory.converters.convertToFunctionBlock(c(n.body,i)))}function f(t,r,n,i){return"default"===r?e.makeImport(e.factory.createIdentifier(t),void 0,n,i):e.makeImport(void 0,[m(r,t)],n,i)}function m(t,r){return e.factory.createImportSpecifier(void 0!==t&&t!==r?e.factory.createIdentifier(t):void 0,e.factory.createIdentifier(r))}function g(t,r,n){return e.factory.createVariableStatement(t,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(r,void 0,void 0,n)],2))}function _(t,r){return e.factory.createExportDeclaration(void 0,void 0,!1,t&&e.factory.createNamedExports(t),void 0===r?void 0:e.factory.createStringLiteral(r))}function h(e,t){return{newImports:e,useSitesToUnqualify:t}}t.registerCodeFix({errorCodes:[e.Diagnostics.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module.code],getCodeActions:function(o){var s=o.sourceFile,c=o.program,d=o.preferences,p=e.textChanges.ChangeTracker.with(o,(function(t){var o=function(t,r,o,s,c){var d={original:u(t),additional:new e.Set},p=function(t,r,i){var a=new e.Map;return n(t,(function(t){var n=t.name,o=n.text,s=n.originalKeywordKind;!a.has(o)&&(void 0!==s&&e.isNonContextualKeyword(s)||r.resolveName(o,t,111551,!0))&&a.set(o,l("_"+o,i))})),a}(t,r,d);!function(t,r,i){n(t,(function(n,a){if(!a){var o=n.name.text;i.replaceNode(t,n,e.factory.createIdentifier(r.get(o)||o))}}))}(t,p,o);for(var f,m=!1,g=0,_=e.filter(t.statements,e.isVariableStatement);g<_.length;g++){var h=_[g],y=a(t,h,o,r,d,s,c);y&&e.copyEntries(y,null!=f?f:f=new e.Map)}for(var v=0,b=e.filter(t.statements,(function(t){return!e.isVariableStatement(t)}));v<b.length;v++){h=b[v];var k=i(t,h,r,o,d,s,p,f,c);m=m||k}return null==f||f.forEach((function(e,r){o.replaceNode(t,r,e)})),m}(s,c.getTypeChecker(),t,c.getCompilerOptions().target,e.getQuotePreference(s,d));if(o)for(var p=0,f=c.getSourceFiles();p<f.length;p++){var m=f[p];r(m,s,t,e.getQuotePreference(m,d))}}));return[t.createCodeFixActionWithoutFixAll("convertToEs6Module",p,e.Diagnostics.Convert_to_ES6_module)]}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="correctQualifiedNameToIndexedAccessType",n=[e.Diagnostics.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code];function i(t,r){var n=e.findAncestor(e.getTokenAtPosition(t,r),e.isQualifiedName);return e.Debug.assert(!!n,"Expected position to be owned by a qualified name."),e.isIdentifier(n.left)?n:void 0}function a(t,r,n){var i=n.right.text,a=e.factory.createIndexedAccessTypeNode(e.factory.createTypeReferenceNode(n.left,void 0),e.factory.createLiteralTypeNode(e.factory.createStringLiteral(i)));t.replaceNode(r,n,a)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=i(n.sourceFile,n.span.start);if(o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,n.sourceFile,o)})),c=o.left.text+'["'+o.right.text+'"]';return[t.createCodeFixAction(r,s,[e.Diagnostics.Rewrite_as_the_indexed_access_type_0,c],r,e.Diagnostics.Rewrite_all_as_indexed_access_types)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&a(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.Re_exporting_a_type_when_the_isolatedModules_flag_is_provided_requires_using_export_type.code],n="convertToTypeOnlyExport";function i(t,r){return e.tryCast(e.getTokenAtPosition(r,t.start).parent,e.isExportSpecifier)}function a(t,n,i){if(n){var a=n.parent,o=a.parent,s=function(t,n){var i=t.parent;if(1===i.elements.length)return i.elements;var a=e.getDiagnosticsWithinSpan(e.createTextSpanFromNode(i),n.program.getSemanticDiagnostics(n.sourceFile,n.cancellationToken));return e.filter(i.elements,(function(n){var i;return n===t||(null===(i=e.findDiagnosticForNode(n,a))||void 0===i?void 0:i.code)===r[0]}))}(n,i);if(s.length===a.elements.length)t.insertModifierBefore(i.sourceFile,150,a);else{var c=e.factory.updateExportDeclaration(o,o.decorators,o.modifiers,!1,e.factory.updateNamedExports(a,e.filter(a.elements,(function(t){return!e.contains(s,t)}))),o.moduleSpecifier),l=e.factory.createExportDeclaration(void 0,void 0,!0,e.factory.createNamedExports(s),o.moduleSpecifier);t.replaceNode(i.sourceFile,o,c,{leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Exclude}),t.insertNodeAfter(i.sourceFile,o,l)}}}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var o=e.textChanges.ChangeTracker.with(r,(function(e){return a(e,i(r.span,r.sourceFile),r)}));if(o.length)return[t.createCodeFixAction(n,o,e.Diagnostics.Convert_to_type_only_export,n,e.Diagnostics.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[n],getAllCodeActions:function(n){var o=new e.Map;return t.codeFixAll(n,r,(function(t,r){var s=i(r,n.sourceFile);s&&e.addToSeen(o,e.getNodeId(s.parent.parent))&&a(t,s,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error.code],n="convertToTypeOnlyImport";function i(t,r){return e.tryCast(e.getTokenAtPosition(r,t.start).parent,e.isImportDeclaration)}function a(t,r,n){if(null==r?void 0:r.importClause){var i=r.importClause;t.insertText(n.sourceFile,r.getStart()+6," type"),i.name&&i.namedBindings&&(t.deleteNodeRangeExcludingEnd(n.sourceFile,i.name,r.importClause.namedBindings),t.insertNodeBefore(n.sourceFile,r,e.factory.updateImportDeclaration(r,void 0,void 0,e.factory.createImportClause(!0,i.name,void 0),r.moduleSpecifier)))}}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var o=e.textChanges.ChangeTracker.with(r,(function(e){a(e,i(r.span,r.sourceFile),r)}));if(o.length)return[t.createCodeFixAction(n,o,e.Diagnostics.Convert_to_type_only_import,n,e.Diagnostics.Convert_all_imports_not_used_as_a_value_to_type_only_imports)]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,r,(function(t,r){a(t,i(r,e.sourceFile),e)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="convertLiteralTypeToMappedType",n=[e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code];function i(t,r){var n=e.getTokenAtPosition(t,r);if(e.isIdentifier(n)){var i=e.cast(n.parent.parent,e.isPropertySignature),a=n.getText(t);return{container:e.cast(i.parent,e.isTypeLiteralNode),typeNode:i.type,constraint:a,name:"K"===a?"P":"K"}}}function a(t,r,n){var i=n.container,a=n.typeNode,o=n.constraint,s=n.name;t.replaceNode(r,i,e.factory.createMappedTypeNode(void 0,e.factory.createTypeParameterDeclaration(s,e.factory.createTypeReferenceNode(o)),void 0,void 0,a))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start);if(c){var l=c.name,u=c.constraint,d=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,d,[e.Diagnostics.Convert_0_to_1_in_0,u,l],r,e.Diagnostics.Convert_all_type_literals_to_mapped_type)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&a(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.Class_0_incorrectly_implements_interface_1.code,e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],n="fixClassIncorrectlyImplementsInterface";function i(t,r){return e.Debug.checkDefined(e.getContainingClass(e.getTokenAtPosition(t,r)),"There should be a containing class")}function a(t){return!(t.valueDeclaration&&8&e.getEffectiveModifierFlags(t.valueDeclaration))}function o(r,n,i,o,s,c){var l=r.program.getTypeChecker(),u=function(t,r){var n=e.getEffectiveBaseTypeNode(t);if(!n)return e.createSymbolTable();var i=r.getTypeAtLocation(n),o=r.getPropertiesOfType(i);return e.createSymbolTable(o.filter(a))}(o,l),d=l.getTypeAtLocation(n),p=l.getPropertiesOfType(d).filter(e.and(a,(function(e){return!u.has(e.escapedName)}))),f=l.getTypeAtLocation(o),m=e.find(o.members,(function(t){return e.isConstructorDeclaration(t)}));f.getNumberIndexType()||_(d,1),f.getStringIndexType()||_(d,0);var g=t.createImportAdder(i,r.program,c,r.host);function _(e,n){var a=l.getIndexInfoOfType(e,n);a&&h(i,o,l.indexInfoToIndexSignatureDeclaration(a,n,o,void 0,t.getNoopSymbolTrackerWithResolver(r)))}function h(e,t,r){m?s.insertNodeAfter(e,m,r):s.insertNodeAtClassStart(e,t,r)}t.createMissingMemberNodes(o,p,i,r,c,g,(function(e){return h(i,o,e)})),g.writeFixes(s)}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var a=r.sourceFile,s=r.span,c=i(a,s.start);return e.mapDefined(e.getEffectiveImplementsTypeNodes(c),(function(i){var s=e.textChanges.ChangeTracker.with(r,(function(e){return o(r,i,a,c,e,r.preferences)}));return 0===s.length?void 0:t.createCodeFixAction(n,s,[e.Diagnostics.Implement_interface_0,i.getText(a)],n,e.Diagnostics.Implement_all_unimplemented_interfaces)}))},fixIds:[n],getAllCodeActions:function(n){var a=new e.Map;return t.codeFixAll(n,r,(function(t,r){var s=i(r.file,r.start);if(e.addToSeen(a,e.getNodeId(s)))for(var c=0,l=e.getEffectiveImplementsTypeNodes(s);c<l.length;c++){var u=l[c];o(n,u,r.file,s,t,n.preferences)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){t.importFixName="import";var r,n,o="fixMissingImport",s=[e.Diagnostics.Cannot_find_name_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,e.Diagnostics.Cannot_find_namespace_0.code,e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code];function l(t,r,n,i,a){var o=r.getCompilerOptions(),s=[],l=[],d=new e.Map,f=new e.Map;return{addImportFromDiagnostic:function(e,t){var r=h(t,e.code,e.start,n);if(!r||!r.fixes.length)return;m(r)},addImportFromExportedSymbol:function(s,c){var l=e.Debug.checkDefined(s.parent),d=e.getNameForExportedSymbol(s,e.getEmitScriptTarget(o)),f=r.getTypeChecker(),_=f.getMergedSymbol(e.skipAlias(s,f)),h=p(t,_,l,d,a,r,n),y=!!c&&2===o.importsNotUsedAsValues,v=g(t,r);m({fixes:[u(t,h,l,d,r,void 0,y,v,a,i)],symbolName:d})},writeFixes:function(r){for(var n,a=e.getQuotePreference(t,i),o=0,u=s;o<u.length;o++){var p=u[o];w(r,t,p)}for(var m=0,g=l;m<g.length;m++){p=g[m];T(r,t,p,a)}d.forEach((function(e){var n=e.importClauseOrBindingPattern,i=e.defaultImport,a=e.namedImports,o=e.canUseTypeOnlyImport;D(r,t,n,i,a,o)})),f.forEach((function(t,r){var i=t.useRequire,o=c(t,["useRequire"]),s=i?N:A;n=e.combine(n,s(r,a,o))})),n&&e.insertImports(r,t,n,!0)}};function m(t){var r=t.fixes,n=t.symbolName,i=e.first(r);switch(i.kind){case 0:s.push(i);break;case 1:l.push(i);break;case 2:var a=i.importClauseOrBindingPattern,o=i.importKind,c=i.canUseTypeOnlyImport,u=String(e.getNodeId(a));(p=d.get(u))||d.set(u,p={importClauseOrBindingPattern:a,defaultImport:void 0,namedImports:[],canUseTypeOnlyImport:c}),0===o?e.pushIfUnique(p.namedImports,n):(e.Debug.assert(void 0===p.defaultImport||p.defaultImport===n,"(Add to Existing) Default import should be missing or match symbolName"),p.defaultImport=n);break;case 3:var p,m=i.moduleSpecifier,g=(o=i.importKind,i.useRequire),_=i.typeOnly;switch((p=f.get(m))?p.typeOnly=p.typeOnly&&_:f.set(m,p={namedImports:[],namespaceLikeImport:void 0,typeOnly:_,useRequire:g}),o){case 1:e.Debug.assert(void 0===p.defaultImport||p.defaultImport===n,"(Add new) Default import should be missing or match symbolName"),p.defaultImport=n;break;case 0:e.pushIfUnique(p.namedImports||(p.namedImports=[]),n);break;case 3:case 2:e.Debug.assert(void 0===p.namespaceLikeImport||p.namespaceLikeImport.name===n,"Namespacelike import shoudl be missing or match symbolName"),p.namespaceLikeImport={importKind:o,name:n}}break;default:e.Debug.assertNever(i,"fix wasn't never - got kind "+i.kind)}}}function u(t,r,n,i,a,o,s,c,l,u){return e.Debug.assert(r.some((function(e){return e.moduleSymbol===n})),"Some exportInfo should match the specified moduleSymbol"),y(m(r,i,o,s,c,a,t,l,u),t,a,l)}function d(t,r,n,i,a){var o,s,c=i.getCompilerOptions(),l=d(i.getTypeChecker());if(l)return l;var u=null===(s=null===(o=a.getPackageJsonAutoImportProvider)||void 0===o?void 0:o.call(a))||void 0===s?void 0:s.getTypeChecker();return e.Debug.checkDefined(u&&d(u),"Could not find symbol in specified module for code actions");function d(i){var a=k(n,r,i,c);if(a&&e.skipAlias(a.symbol,i)===t)return{moduleSymbol:r,importKind:a.kind,exportedSymbolIsTypeOnly:f(t,i)};var o=i.tryGetMemberInModuleExportsAndProperties(t.name,r);return o&&e.skipAlias(o,i)===t?{moduleSymbol:r,importKind:0,exportedSymbolIsTypeOnly:f(t,i)}:void 0}}function p(t,r,n,i,a,o,s){var c=[],l=o.getCompilerOptions();return F(o,a,t,!1,s,(function(a,o,s){var u=s.getTypeChecker();if(!o||a===n||!e.startsWith(t.fileName,e.getDirectoryPath(o.fileName))){var d=k(t,a,u,l);!d||d.name!==i&&R(a,l.target)!==i||e.skipAlias(d.symbol,u)!==r||c.push({moduleSymbol:a,importKind:d.kind,exportedSymbolIsTypeOnly:f(d.symbol,u)});for(var p=0,m=u.getExportsAndPropertiesOfModule(a);p<m.length;p++){var g=m[p];g.name===i&&e.skipAlias(g,u)===r&&c.push({moduleSymbol:a,importKind:0,exportedSymbolIsTypeOnly:f(g,u)})}}})),c}function f(t,r){return!(111551&e.skipAlias(t,r).flags)}function m(t,r,n,a,o,s,c,l,u){var d=s.getTypeChecker(),p=e.flatMap(t,(function(t){return function(t,r,n){var i=t.moduleSymbol,a=t.importKind;return t.exportedSymbolIsTypeOnly&&e.isSourceFileJS(n)?e.emptyArray:e.mapDefined(n.imports,(function(t){var n=e.importFromModuleSpecifier(t);return e.isRequireVariableDeclaration(n.parent,!0)?r.resolveExternalModuleName(t)===i?{declaration:n.parent,importKind:a}:void 0:(264===n.kind||263===n.kind)&&r.getSymbolAtLocation(t)===i?{declaration:n,importKind:a}:void 0}))}(t,d,c)})),f=void 0===n?void 0:function(t,r,n,i){return e.firstDefined(t,(function(t){var a=t.declaration,o=function(t){var r,n,i;switch(t.kind){case 251:return null===(r=e.tryCast(t.name,e.isIdentifier))||void 0===r?void 0:r.text;case 263:return t.name.text;case 264:return null===(i=e.tryCast(null===(n=t.importClause)||void 0===n?void 0:n.namedBindings,e.isNamespaceImport))||void 0===i?void 0:i.name.text;default:return e.Debug.assertNever(t)}}(a);if(o){var s=function(t,r){var n;switch(t.kind){case 251:return r.resolveExternalModuleName(t.initializer.arguments[0]);case 263:return r.getAliasedSymbol(t.symbol);case 264:var i=e.tryCast(null===(n=t.importClause)||void 0===n?void 0:n.namedBindings,e.isNamespaceImport);return i&&r.getAliasedSymbol(i.symbol);default:return e.Debug.assertNever(t)}}(a,i);if(s&&s.exports.has(e.escapeLeadingUnderscores(r)))return{kind:0,namespacePrefix:o,position:n}}}))}(p,r,n,d),m=function(t,r){return e.firstDefined(t,(function(e){var t=e.declaration,n=e.importKind;if(263!==t.kind){if(251===t.kind)return 0!==n&&1!==n||197!==t.name.kind?void 0:{kind:2,importClauseOrBindingPattern:t.name,importKind:n,moduleSpecifier:t.initializer.arguments[0].text,canUseTypeOnlyImport:!1};var i=t.importClause;if(i){var a=i.name,o=i.namedBindings;return 1===n&&!a||0===n&&(!o||267===o.kind)?{kind:2,importClauseOrBindingPattern:i,importKind:n,moduleSpecifier:t.moduleSpecifier.getText(),canUseTypeOnlyImport:r}:void 0}}}))}(p,void 0!==n&&function(t,r){return e.isValidTypeOnlyAliasUseSite(e.getTokenAtPosition(t,r))}(c,n)),g=m?[m]:function(t,r,n,i,a,o,s,c,l){var u=e.firstDefined(r,(function(t){return function(t,r,n){var i=t.declaration,a=t.importKind,o=264===i.kind?i.moduleSpecifier:251===i.kind?i.initializer.arguments[0]:275===i.moduleReference.kind?i.moduleReference.expression:void 0;return o&&e.isStringLiteral(o)?{kind:3,moduleSpecifier:o.text,importKind:a,typeOnly:r,useRequire:n}:void 0}(t,o,s)}));return u?[u]:_(n,i,a,o,s,t,c,l)}(t,p,s,c,n,a,o,l,u);return i(i([],f?[f]:e.emptyArray),g)}function g(t,r){if(!e.isSourceFileJS(t))return!1;if(t.commonJsModuleIndicator&&!t.externalModuleIndicator)return!0;if(t.externalModuleIndicator&&!t.commonJsModuleIndicator)return!1;var n=r.getCompilerOptions();if(n.configFile)return e.getEmitModuleKind(n)<e.ModuleKind.ES2015;for(var i=0,a=r.getSourceFiles();i<a.length;i++){var o=a[i];if(o!==t&&e.isSourceFileJS(o)&&!r.isSourceFileFromExternalLibrary(o)){if(o.commonJsModuleIndicator&&!o.externalModuleIndicator)return!0;if(o.externalModuleIndicator&&!o.commonJsModuleIndicator)return!1}}return!0}function _(t,r,n,i,a,o,s,c){var l=e.isSourceFileJS(r),u=t.getCompilerOptions();return e.flatMap(o,(function(o){var d=o.moduleSymbol,p=o.importKind,f=o.exportedSymbolIsTypeOnly;return e.moduleSpecifiers.getModuleSpecifiers(d,t.getTypeChecker(),u,r,e.createModuleSpecifierResolutionHost(t,s),c).map((function(t){return f&&l?{kind:1,moduleSpecifier:t,position:e.Debug.checkDefined(n,"position should be defined")}:{kind:3,moduleSpecifier:t,importKind:p,useRequire:a,typeOnly:i}}))}))}function h(t,r,n,i){var o,s,c,l,u,d=e.getTokenAtPosition(t.sourceFile,n),p=r===e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code?function(t,r){var n=t.sourceFile,i=t.program,a=t.host,o=t.preferences,s=i.getTypeChecker(),c=function(t,r){var n=e.isIdentifier(t)?r.getSymbolAtLocation(t):void 0;if(e.isUMDExportSymbol(n))return n;var i=t.parent;return e.isJsxOpeningLikeElement(i)&&i.tagName===t||e.isJsxOpeningFragment(i)?e.tryCast(r.resolveName(r.getJsxNamespace(i),e.isJsxOpeningLikeElement(i)?t:i,111551,!1),e.isUMDExportSymbol):void 0}(r,s);if(!c)return;var l=s.getAliasedSymbol(c),u=c.name,d=[{moduleSymbol:l,importKind:b(n,i.getCompilerOptions()),exportedSymbolIsTypeOnly:!1}],p=g(n,i);return{fixes:m(d,u,e.isIdentifier(r)?r.getStart(n):void 0,!1,p,i,n,a,o),symbolName:u}}(t,d):e.isIdentifier(d)?function(t,r,n){var i=t.sourceFile,a=t.program,o=t.cancellationToken,s=t.host,c=t.preferences,l=a.getTypeChecker(),u=function(t,r,n){var i=n.parent;if((e.isJsxOpeningLikeElement(i)||e.isJsxClosingElement(i))&&i.tagName===n){var a=r.getJsxNamespace(t);if(e.isIntrinsicJsxName(n.text)||!r.resolveName(a,i,111551,!0))return a}return n.text}(i,l,r);e.Debug.assert("default"!==u,"'default' isn't a legal identifier and couldn't occur here");var d=2===a.getCompilerOptions().importsNotUsedAsValues&&e.isValidTypeOnlyAliasUseSite(r),p=g(i,a),_=function(t,r,n,i,a,o,s){var c=e.createMultiMap();function l(t,r,n,i){c.add(e.getUniqueSymbolId(r,i).toString(),{moduleSymbol:t,importKind:n,exportedSymbolIsTypeOnly:f(r,i)})}return F(a,s,i,!0,o,(function(e,a,o){var s=o.getTypeChecker();n.throwIfCancellationRequested();var c=o.getCompilerOptions(),u=k(i,e,s,c);u&&(u.name===t||R(e,c.target)===t)&&I(u.symbolForMeaning,r)&&l(e,u.symbol,u.kind,s);var d=s.tryGetMemberInModuleExportsAndProperties(t,e);d&&I(d,r)&&l(e,d,0,s)})),c}(u,e.getMeaningFromLocation(r),o,i,a,n,s),h=e.arrayFrom(e.flatMapIterator(_.entries(),(function(e){e[0];return m(e[1],u,r.getStart(i),d,p,a,i,s,c)})));return{fixes:h,symbolName:u}}(t,d,i):void 0;return p&&a(a({},p),{fixes:(o=p.fixes,s=t.sourceFile,c=t.program,l=t.host,u=L(s,c,l).allowsImportingSpecifier,e.sort(o,(function(t,r){return e.compareValues(t.kind,r.kind)||v(t,r,u)})))})}function y(e,t,r,n){if(0===e[0].kind||2===e[0].kind)return e[0];var i=L(t,r,n).allowsImportingSpecifier;return e.reduce((function(e,t){return-1===v(t,e,i)?t:e}))}function v(t,r,n){return 0!==t.kind&&0!==r.kind?e.compareBooleans(n(t.moduleSpecifier),n(r.moduleSpecifier))||e.compareNumberOfDirectorySeparators(t.moduleSpecifier,r.moduleSpecifier):0}function b(t,r){if(e.getAllowSyntheticDefaultImports(r))return 1;var n=e.getEmitModuleKind(r);switch(n){case e.ModuleKind.AMD:case e.ModuleKind.CommonJS:case e.ModuleKind.UMD:return e.isInJSFile(t)&&e.isExternalModule(t)?2:3;case e.ModuleKind.System:case e.ModuleKind.ES2015:case e.ModuleKind.ES2020:case e.ModuleKind.ESNext:case e.ModuleKind.None:return 2;default:return e.Debug.assertNever(n,"Unexpected moduleKind "+n)}}function k(e,t,r,n){var i=function(e,t,r,n){var i=r.tryGetMemberInModuleExports("default",t);if(i)return{symbol:i,kind:1};var a=r.resolveExternalModuleSymbol(t);return a===t?void 0:{symbol:a,kind:x(e,n)}}(e,t,r,n);if(i){var o=i.symbol,s=i.kind,c=E(o,r,n);return c&&a({symbol:o,kind:s},c)}}function x(t,r){var n=e.getAllowSyntheticDefaultImports(r);if(e.getEmitModuleKind(r)>=e.ModuleKind.ES2015)return n?1:2;if(e.isInJSFile(t))return e.isExternalModule(t)?1:3;for(var i=0,a=t.statements;i<a.length;i++){var o=a[i];if(e.isImportEqualsDeclaration(o))return 3}return n?1:3}function E(t,r,n){var i=e.getLocalSymbolForExportDefault(t);if(i)return{symbolForMeaning:i,name:i.name};var a,o=(a=t).declarations&&e.firstDefined(a.declarations,(function(t){var r;return e.isExportAssignment(t)?null===(r=e.tryCast(e.skipOuterExpressions(t.expression),e.isIdentifier))||void 0===r?void 0:r.text:e.isExportSpecifier(t)?(e.Debug.assert("default"===t.name.text,"Expected the specifier to be a default export"),t.propertyName&&t.propertyName.text):void 0}));if(void 0!==o)return{symbolForMeaning:t,name:o};if(2097152&t.flags){var s=r.getImmediateAliasedSymbol(t);if(s&&s.parent)return E(s,r,n)}return"default"!==t.escapedName&&"export="!==t.escapedName?{symbolForMeaning:t,name:t.getName()}:{symbolForMeaning:t,name:e.getNameForExportedSymbol(t,n.target)}}function S(r,n,i,a,s){var c,l=e.textChanges.ChangeTracker.with(r,(function(t){c=function(t,r,n,i,a){switch(i.kind){case 0:return w(t,r,i),[e.Diagnostics.Change_0_to_1,n,i.namespacePrefix+"."+n];case 1:return T(t,r,i,a),[e.Diagnostics.Change_0_to_1,n,C(i.moduleSpecifier,a)+n];case 2:var o=i.importClauseOrBindingPattern,s=i.importKind,c=i.canUseTypeOnlyImport,l=i.moduleSpecifier;D(t,r,o,1===s?n:void 0,0===s?[n]:e.emptyArray,c);var u=e.stripQuotes(l);return[1===s?e.Diagnostics.Add_default_import_0_to_existing_import_declaration_from_1:e.Diagnostics.Add_0_to_existing_import_declaration_from_1,n,u];case 3:s=i.importKind,l=i.moduleSpecifier;var d=i.typeOnly,p=i.useRequire?N:A,f=1===s?{defaultImport:n,typeOnly:d}:0===s?{namedImports:[n],typeOnly:d}:{namespaceLikeImport:{importKind:s,name:n},typeOnly:d};return e.insertImports(t,r,p(l,a,f),!0),[1===s?e.Diagnostics.Import_default_0_from_module_1:e.Diagnostics.Import_0_from_module_1,n,l];default:return e.Debug.assertNever(i,"Unexpected fix kind "+i.kind)}}(t,n,i,a,s)}));return t.createCodeFixAction(t.importFixName,l,c,o,e.Diagnostics.Add_all_missing_imports)}function D(t,r,n,i,a,o){if(197!==n.kind){var s=!o&&n.isTypeOnly;if(i&&(e.Debug.assert(!n.name,"Cannot add a default import to an import clause that already has one"),t.insertNodeAt(r,n.getStart(r),e.factory.createIdentifier(i),{suffix:", "})),a.length){var c=n.namedBindings&&e.cast(n.namedBindings,e.isNamedImports).elements,l=e.stableSort(a.map((function(t){return e.factory.createImportSpecifier(void 0,e.factory.createIdentifier(t))})),e.OrganizeImports.compareImportOrExportSpecifiers);if((null==c?void 0:c.length)&&e.OrganizeImports.importSpecifiersAreSorted(c))for(var u=0,d=l;u<d.length;u++){var p=d[u],f=e.OrganizeImports.getImportSpecifierInsertionIndex(c,p),m=n.namedBindings.elements[f-1];m?t.insertNodeInListAfter(r,m,p):t.insertNodeBefore(r,c[0],p,!e.positionsAreOnSameLine(c[0].getStart(),n.parent.getStart(),r))}else if(null==c?void 0:c.length)for(var g=0,_=l;g<_.length;g++){p=_[g];t.insertNodeInListAfter(r,e.last(c),p,c)}else if(l.length){var h=e.factory.createNamedImports(l);n.namedBindings?t.replaceNode(r,n.namedBindings,h):t.insertNodeAfter(r,e.Debug.checkDefined(n.name,"Import clause must have either named imports or a default import"),h)}}s&&t.delete(r,e.getTypeKeywordOfTypeOnlyImport(n,r))}else{i&&b(n,i,"default");for(var y=0,v=a;y<v.length;y++){b(n,v[y],void 0)}}function b(n,i,a){var o=e.factory.createBindingElement(void 0,a,i);n.elements.length?t.insertNodeInListAfter(r,e.last(n.elements),o):t.replaceNode(r,n,e.factory.createObjectBindingPattern([o]))}}function w(e,t,r){var n=r.namespacePrefix,i=r.position;e.insertText(t,i,n+".")}function T(e,t,r,n){var i=r.moduleSpecifier,a=r.position;e.insertText(t,a,C(i,n))}function C(t,r){var n=e.getQuoteFromPreference(r);return"import("+n+t+n+")."}function A(t,r,n){var i,a,o,s=e.makeStringLiteral(t,r);(void 0!==n.defaultImport||(null===(i=n.namedImports)||void 0===i?void 0:i.length))&&(o=e.combine(o,e.makeImport(void 0===n.defaultImport?void 0:e.factory.createIdentifier(n.defaultImport),null===(a=n.namedImports)||void 0===a?void 0:a.map((function(t){return e.factory.createImportSpecifier(void 0,e.factory.createIdentifier(t))})),t,r,n.typeOnly)));var c=n.namespaceLikeImport,l=n.typeOnly;if(c){var u=3===c.importKind?e.factory.createImportEqualsDeclaration(void 0,void 0,l,e.factory.createIdentifier(c.name),e.factory.createExternalModuleReference(s)):e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(l,void 0,e.factory.createNamespaceImport(e.factory.createIdentifier(c.name))),s);o=e.combine(o,u)}return e.Debug.checkDefined(o)}function N(t,r,n){var i,a,o,s=e.makeStringLiteral(t,r);if(n.defaultImport||(null===(i=n.namedImports)||void 0===i?void 0:i.length)){var c=(null===(a=n.namedImports)||void 0===a?void 0:a.map((function(t){return e.factory.createBindingElement(void 0,void 0,t)})))||[];n.defaultImport&&c.unshift(e.factory.createBindingElement(void 0,"default",n.defaultImport));var l=P(e.factory.createObjectBindingPattern(c),s);o=e.combine(o,l)}if(n.namespaceLikeImport){l=P(n.namespaceLikeImport.name,s);o=e.combine(o,l)}return e.Debug.checkDefined(o)}function P(t,r){return e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration("string"==typeof t?e.factory.createIdentifier(t):t,void 0,void 0,e.factory.createCallExpression(e.factory.createIdentifier("require"),void 0,[r]))],2))}function I(t,r){var n=t.declarations;return e.some(n,(function(t){return!!(e.getMeaningFromDeclaration(t)&r)}))}function F(t,r,n,i,a,o){var s,c;O(t,r,n,i,(function(e,r){return o(e,r,t,!1)}));var l=a&&(null===(s=r.getPackageJsonAutoImportProvider)||void 0===s?void 0:s.call(r));if(l){var u=e.timestamp();O(l,r,n,i,(function(e,t){return o(e,t,l,!0)})),null===(c=r.log)||void 0===c||c.call(r,"forEachExternalModuleToImportFrom autoImportProvider: "+(e.timestamp()-u))}}function O(t,r,n,i,a){var o,s=0,c=e.createModuleSpecifierResolutionHost(t,r),l=i&&L(n,t,r,c);!function(t,r,n){for(var i=0,a=t.getAmbientModules();i<a.length;i++){n(a[i],void 0)}for(var o=0,s=r;o<s.length;o++){var c=s[o];e.isExternalOrCommonJsModule(c)&&n(t.getMergedSymbol(c.symbol),c)}}(t.getTypeChecker(),t.getSourceFiles(),(function(r,i){void 0===i?!l||l.allowsImportingAmbientModule(r)?a(r,i):l&&s++:i&&i!==n&&function(t,r,n,i){var a,o=e.isOhpm(t.getCompilerOptions().packageManagerType),s=e.hostGetCanonicalFileName(i),c=null===(a=i.getGlobalTypingsCacheLocation)||void 0===a?void 0:a.call(i);return!!e.moduleSpecifiers.forEachFileNameOfModule(r.fileName,n.fileName,i,!1,(function(i){var a=t.getSourceFile(i);return(a===n||!a)&&function(t,r,n,i,a){var o=e.forEachAncestorDirectory(r,(function(t){return"node_modules"===e.getBaseFileName(t)||a&&"oh_modules"===e.getBaseFileName(t)?t:void 0})),s=o&&e.getDirectoryPath(n(o));return void 0===s||e.startsWith(n(t),s)||!!i&&e.startsWith(n(i),s)}(r.fileName,i,s,c,o)}),o)}(t,n,i,c)&&(!l||l.allowsImportingSourceFile(i)?a(r,i):l&&s++)})),null===(o=r.log)||void 0===o||o.call(r,"forEachExternalModuleToImportFrom: filtered out "+s+" modules by package.json or oh-package.json5 contents")}function R(t,r){return M(e.removeFileExtension(e.stripQuotes(t.name)),r)}function M(t,r){var n=e.getBaseFileName(e.removeSuffix(t,"/index")),i="",a=!0,o=n.charCodeAt(0);e.isIdentifierStart(o,r)?i+=String.fromCharCode(o):a=!1;for(var s=1;s<n.length;s++){var c=n.charCodeAt(s),l=e.isIdentifierPart(c,r);if(l){var u=String.fromCharCode(c);a||(u=u.toUpperCase()),i+=u}a=l}return e.isStringANonContextualKeyword(i)?"_"+i:i||"_"}function L(t,r,n,i){void 0===i&&(i=e.createModuleSpecifierResolutionHost(r,n));var a,o=(n.getPackageJsonsVisibleToFile&&n.getPackageJsonsVisibleToFile(t.fileName)||e.getPackageJsonsVisibleToFile(t.fileName,n)).filter((function(e){return e.parseable}));return{allowsImportingAmbientModule:function(t){if(!o.length)return!0;var r=l(t.valueDeclaration.getSourceFile().fileName);if(void 0===r)return!0;var n=e.stripQuotes(t.getName());if(c(n))return!0;return s(r)||s(n)},allowsImportingSourceFile:function(e){if(!o.length)return!0;var t=l(e.fileName);if(!t)return!0;return s(t)},allowsImportingSpecifier:function(t){if(!o.length||c(t))return!0;if(e.pathIsRelative(t)||e.isRootedDiskPath(t))return!0;return s(t)},moduleSpecifierResolutionHost:i};function s(t){for(var r=u(t),n=0,i=o;n<i.length;n++){var a=i[n];if(a.has(r)||a.has(e.getTypesPackageName(r)))return!0}return!1}function c(r){return!!(e.isSourceFileJS(t)&&e.JsTyping.nodeCoreModules.has(r)&&(void 0===a&&(a=e.consumesNodeCoreModules(t)),a))}function l(r){if(e.stringContains(r,"node_modules")||e.stringContains(r,"oh_modules")){var a=e.moduleSpecifiers.getModulesPackageName(n.getCompilationSettings(),t.path,r,i);if(a)return e.pathIsRelative(a)||e.isRootedDiskPath(a)?void 0:u(a)}}function u(t){var r=e.getPathComponents(e.getPackageNameFromTypesPackageName(t)).slice(1);return e.startsWith(r[0],"@")?r[0]+"/"+r[1]:r[0]}}t.registerCodeFix({errorCodes:s,getCodeActions:function(t){var r=t.errorCode,n=t.preferences,i=t.sourceFile,a=t.span,o=h(t,r,a.start,!0);if(o){var s=o.fixes,c=o.symbolName,l=e.getQuotePreference(i,n);return s.map((function(e){return S(t,i,c,e,l)}))}},fixIds:[o],getAllCodeActions:function(r){var n=l(r.sourceFile,r.program,!0,r.preferences,r.host);return t.eachDiagnostic(r,s,(function(e){return n.addImportFromDiagnostic(e,r)})),t.createCombinedCodeActions(e.textChanges.ChangeTracker.with(r,n.writeFixes))}}),t.createImportAdder=function(e,t,r,n){return l(e,t,!1,r,n)},function(e){e[e.UseNamespace=0]="UseNamespace",e[e.ImportType=1]="ImportType",e[e.AddToExisting=2]="AddToExisting",e[e.AddNew=3]="AddNew"}(r||(r={})),function(e){e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.Namespace=2]="Namespace",e[e.CommonJS=3]="CommonJS"}(n||(n={})),t.getImportCompletionAction=function(t,r,n,i,a,o,s,c,l){var f,m,h,v,b=o.getCompilerOptions(),k=e.pathIsBareSpecifier(e.stripQuotes(r.name))?[d(t,r,n,o,a)]:p(n,t,r,i,a,o,!0),x=g(n,o),E=2===b.importsNotUsedAsValues&&!e.isSourceFileJS(n)&&e.isValidTypeOnlyAliasUseSite(e.getTokenAtPosition(n,c)),D=y(_(o,n,c,E,x,k,a,l),n,o,a).moduleSpecifier,w=u(n,k,r,i,o,c,E,x,a,l);return{moduleSpecifier:D,codeAction:(f=S({host:a,formatContext:s,preferences:l},n,i,w,e.getQuotePreference(n,l)),m=f.description,h=f.changes,v=f.commands,{description:m,changes:h,commands:v})}},t.forEachExternalModuleToImportFrom=F,t.moduleSymbolToValidIdentifier=R,t.moduleSpecifierToValidIdentifier=M}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixNoPropertyAccessFromIndexSignature",n=[e.Diagnostics.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code];function i(t,r,n,i){var a=e.getQuotePreference(r,i),o=e.factory.createStringLiteral(n.name.text,0===a);t.replaceNode(r,n,e.isPropertyAccessChain(n)?e.factory.createElementAccessChain(n.expression,n.questionDotToken,o):e.factory.createElementAccessExpression(n.expression,o))}function a(t,r){return e.cast(e.getTokenAtPosition(t,r).parent,e.isPropertyAccessExpression)}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=n.preferences,l=a(o,s.start),u=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,l,c)}));return[t.createCodeFixAction(r,u,[e.Diagnostics.Use_element_access_for_0,l.name.text],r,e.Diagnostics.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return i(t,r.file,a(r.file,r.start),e.preferences)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixImplicitThis",n=[e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];function i(t,r,n,i){var a=e.getTokenAtPosition(r,n);e.Debug.assert(108===a.kind);var o=e.getThisContainer(a,!1);if((e.isFunctionDeclaration(o)||e.isFunctionExpression(o))&&!e.isSourceFile(e.getThisContainer(o,!1))){var s=e.Debug.assertDefined(e.findChildOfKind(o,98,r)),c=o.name,l=e.Debug.assertDefined(o.body);if(e.isFunctionExpression(o)){if(c&&e.FindAllReferences.Core.isSymbolReferencedInFile(c,i,r,l))return;return t.delete(r,s),c&&t.delete(r,c),t.insertText(r,l.pos," =>"),[e.Diagnostics.Convert_function_expression_0_to_arrow_function,c?c.text:e.ANONYMOUS]}return t.replaceNode(r,s,e.factory.createToken(85)),t.insertText(r,c.end," = "),t.insertText(r,l.pos," =>"),[e.Diagnostics.Convert_function_declaration_0_to_arrow_function,c.text]}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a,o=n.sourceFile,s=n.program,c=n.span,l=e.textChanges.ChangeTracker.with(n,(function(e){a=i(e,o,c.start,s.getTypeChecker())}));return a?[t.createCodeFixAction(r,l,a,r,e.Diagnostics.Fix_all_implicit_this_errors)]:e.emptyArray},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){i(t,r.file,r.start,e.program.getTypeChecker())}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixIncorrectNamedTupleSyntax",n=[e.Diagnostics.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,e.Diagnostics.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.span,o=function(t,r){var n=e.getTokenAtPosition(t,r);return e.findAncestor(n,(function(e){return 193===e.kind}))}(i,a.start),s=e.textChanges.ChangeTracker.with(n,(function(t){return function(t,r,n){if(!n)return;var i=n.type,a=!1,o=!1;for(;181===i.kind||182===i.kind||187===i.kind;)181===i.kind?a=!0:182===i.kind&&(o=!0),i=i.type;var s=e.factory.updateNamedTupleMember(n,n.dotDotDotToken||(o?e.factory.createToken(25):void 0),n.name,n.questionToken||(a?e.factory.createToken(57):void 0),i);if(s===n)return;t.replaceNode(r,n,s)}(t,i,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Move_labeled_tuple_element_modifiers_to_labels,r,e.Diagnostics.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[r]})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixSpelling",n=[e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,e.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2.code,e.Diagnostics.No_overload_matches_this_call.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code];function i(t,r,n,i){var a=e.getTokenAtPosition(t,r),o=a.parent;if(i!==e.Diagnostics.No_overload_matches_this_call.code&&i!==e.Diagnostics.Type_0_is_not_assignable_to_type_1.code||e.isJsxAttribute(o)){var s,c=n.program.getTypeChecker();if(e.isPropertyAccessExpression(o)&&o.name===a){e.Debug.assert(e.isIdentifierOrPrivateIdentifier(a),"Expected an identifier for spelling (property access)");var l=c.getTypeAtLocation(o.expression);32&o.flags&&(l=c.getNonNullableType(l)),s=c.getSuggestedSymbolForNonexistentProperty(a,l)}else if(e.isQualifiedName(o)&&o.right===a){var u=c.getSymbolAtLocation(o.left);u&&1536&u.flags&&(s=c.getSuggestedSymbolForNonexistentModule(o.right,u))}else if(e.isImportSpecifier(o)&&o.name===a){e.Debug.assertNode(a,e.isIdentifier,"Expected an identifier for spelling (import)");var d=function(t,r,n){if(!n||!e.isStringLiteralLike(n.moduleSpecifier))return;var i=e.getResolvedModule(t,n.moduleSpecifier.text);return i?r.program.getSourceFile(i.resolvedFileName):void 0}(t,n,e.findAncestor(a,e.isImportDeclaration));d&&d.symbol&&(s=c.getSuggestedSymbolForNonexistentModule(a,d.symbol))}else if(e.isJsxAttribute(o)&&o.name===a){e.Debug.assertNode(a,e.isIdentifier,"Expected an identifier for JSX attribute");var p=e.findAncestor(a,e.isJsxOpeningLikeElement),f=c.getContextualTypeForArgumentAtIndex(p,0);s=c.getSuggestedSymbolForNonexistentJSXAttribute(a,f)}else{var m=e.getMeaningFromLocation(a),g=e.getTextOfNode(a);e.Debug.assert(void 0!==g,"name should be defined"),s=c.getSuggestedSymbolForNonexistentSymbol(a,g,function(e){var t=0;4&e&&(t|=1920);2&e&&(t|=788968);1&e&&(t|=111551);return t}(m))}return void 0===s?void 0:{node:a,suggestedSymbol:s}}}function a(t,r,n,i,a){var o=e.symbolName(i);if(!e.isIdentifierText(o,a)&&e.isPropertyAccessExpression(n.parent)){var s=i.valueDeclaration;e.isNamedDeclaration(s)&&e.isPrivateIdentifier(s.name)?t.replaceNode(r,n,e.factory.createIdentifier(o)):t.replaceNode(r,n.parent,e.factory.createElementAccessExpression(n.parent.expression,e.factory.createStringLiteral(o)))}else t.replaceNode(r,n,e.factory.createIdentifier(o))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.errorCode,c=i(o,n.span.start,n,s);if(c){var l=c.node,u=c.suggestedSymbol,d=n.host.getCompilationSettings().target,p=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,l,u,d)}));return[t.createCodeFixAction("spelling",p,[e.Diagnostics.Change_spelling_to_0,e.symbolName(u)],r,e.Diagnostics.Fix_all_detected_spelling_errors)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,r.start,e,r.code),o=e.host.getCompilationSettings().target;n&&a(t,e.sourceFile,n.node,n.suggestedSymbol,o)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r,n="returnValueCorrect",i="fixAddReturnStatement",a="fixRemoveBracesFromArrowFunctionBody",o="fixWrapTheBlockWithParen",s=[e.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code,e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code];function c(t,r,n){var i=t.createSymbol(4,r.escapedText);i.type=t.getTypeAtLocation(n);var a=e.createSymbolTable([i]);return t.createAnonymousType(void 0,a,[],[],void 0,void 0)}function l(t,n,i,a){if(n.body&&e.isBlock(n.body)&&1===e.length(n.body.statements)){var o=e.first(n.body.statements);if(e.isExpressionStatement(o)&&u(t,n,t.getTypeAtLocation(o.expression),i,a))return{declaration:n,kind:r.MissingReturnStatement,expression:o.expression,statement:o,commentSource:o.expression};if(e.isLabeledStatement(o)&&e.isExpressionStatement(o.statement)){var s=e.factory.createObjectLiteralExpression([e.factory.createPropertyAssignment(o.label,o.statement.expression)]);if(u(t,n,c(t,o.label,o.statement.expression),i,a))return e.isArrowFunction(n)?{declaration:n,kind:r.MissingParentheses,expression:s,statement:o,commentSource:o.statement.expression}:{declaration:n,kind:r.MissingReturnStatement,expression:s,statement:o,commentSource:o.statement.expression}}else if(e.isBlock(o)&&1===e.length(o.statements)){var l=e.first(o.statements);if(e.isLabeledStatement(l)&&e.isExpressionStatement(l.statement)){s=e.factory.createObjectLiteralExpression([e.factory.createPropertyAssignment(l.label,l.statement.expression)]);if(u(t,n,c(t,l.label,l.statement.expression),i,a))return{declaration:n,kind:r.MissingReturnStatement,expression:s,statement:o,commentSource:l}}}}}function u(t,r,n,i,a){if(a){var o=t.getSignatureFromDeclaration(r);if(o){e.hasSyntacticModifier(r,256)&&(n=t.createPromiseType(n));var s=t.createSignature(r,o.typeParameters,o.thisParameter,o.parameters,n,void 0,o.minArgumentCount,o.flags);n=t.createAnonymousType(void 0,e.createSymbolTable(),[s],[],void 0,void 0)}else n=t.getAnyType()}return t.isTypeAssignableTo(n,i)}function d(t,r,n,i){var a=e.getTokenAtPosition(r,n);if(a.parent){var o=e.findAncestor(a.parent,e.isFunctionLikeDeclaration);switch(i){case e.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value.code:if(!(o&&o.body&&o.type&&e.rangeContainsRange(o.type,a)))return;return l(t,o,t.getTypeFromTypeNode(o.type),!1);case e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!o||!e.isCallExpression(o.parent)||!o.body)return;var s=o.parent.arguments.indexOf(o),c=t.getContextualTypeForArgumentAtIndex(o.parent,s);if(!c)return;return l(t,o,c,!0);case e.Diagnostics.Type_0_is_not_assignable_to_type_1.code:if(!e.isDeclarationName(a)||!e.isVariableLike(a.parent)&&!e.isJsxAttribute(a.parent))return;var u=function(t){switch(t.kind){case 251:case 161:case 199:case 164:case 291:return t.initializer;case 283:return t.initializer&&(e.isJsxExpression(t.initializer)?t.initializer.expression:void 0);case 292:case 163:case 294:case 336:case 329:return}}(a.parent);if(!u||!e.isFunctionLikeDeclaration(u)||!u.body)return;return l(t,u,t.getTypeAtLocation(a.parent),!0)}}}function p(t,r,n,i){e.suppressLeadingAndTrailingTrivia(n);var a=e.probablyUsesSemicolons(r);t.replaceNode(r,i,e.factory.createReturnStatement(n),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Exclude,suffix:a?";":void 0})}function f(t,r,n,i,a,o){var s=o||e.needsParentheses(i)?e.factory.createParenthesizedExpression(i):i;e.suppressLeadingAndTrailingTrivia(a),e.copyComments(a,s),t.replaceNode(r,n.body,s)}function m(t,r,n,i){t.replaceNode(r,n.body,e.factory.createParenthesizedExpression(i))}function g(r,a,o){var s=e.textChanges.ChangeTracker.with(r,(function(e){return p(e,r.sourceFile,a,o)}));return t.createCodeFixAction(n,s,e.Diagnostics.Add_a_return_statement,i,e.Diagnostics.Add_all_missing_return_statement)}function _(r,i,a){var s=e.textChanges.ChangeTracker.with(r,(function(e){return m(e,r.sourceFile,i,a)}));return t.createCodeFixAction(n,s,e.Diagnostics.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,o,e.Diagnostics.Wrap_all_object_literal_with_parentheses)}!function(e){e[e.MissingReturnStatement=0]="MissingReturnStatement",e[e.MissingParentheses=1]="MissingParentheses"}(r||(r={})),t.registerCodeFix({errorCodes:s,fixIds:[i,a,o],getCodeActions:function(i){var o=i.program,s=i.sourceFile,c=i.span.start,l=i.errorCode,u=d(o.getTypeChecker(),s,c,l);if(u)return u.kind===r.MissingReturnStatement?e.append([g(i,u.expression,u.statement)],e.isArrowFunction(u.declaration)?function(r,i,o,s){var c=e.textChanges.ChangeTracker.with(r,(function(e){return f(e,r.sourceFile,i,o,s,!1)}));return t.createCodeFixAction(n,c,e.Diagnostics.Remove_braces_from_arrow_function_body,a,e.Diagnostics.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}(i,u.declaration,u.expression,u.commentSource):void 0):[_(i,u.declaration,u.expression)]},getAllCodeActions:function(r){return t.codeFixAll(r,s,(function(t,n){var s=d(r.program.getTypeChecker(),n.file,n.start,n.code);if(s)switch(r.fixId){case i:p(t,n.file,s.expression,s.statement);break;case a:if(!e.isArrowFunction(s.declaration))return;f(t,n.file,s.declaration,s.expression,s.commentSource,!1);break;case o:if(!e.isArrowFunction(s.declaration))return;m(t,n.file,s.declaration,s.expression);break;default:e.Debug.fail(JSON.stringify(r.fixId))}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r,n="fixMissingMember",i="fixMissingFunctionDeclaration",a=[e.Diagnostics.Property_0_does_not_exist_on_type_1.code,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,e.Diagnostics.Property_0_is_missing_in_type_1_but_required_in_type_2.code,e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,e.Diagnostics.Cannot_find_name_0.code];function o(t,r,n,i){var a=e.getTokenAtPosition(t,r);if(e.isIdentifier(a)||e.isPrivateIdentifier(a)){var o=a.parent;if(e.isIdentifier(a)&&e.isCallExpression(o))return{kind:2,token:a,call:o,sourceFile:t,modifierFlags:0,parentDeclaration:t};if(e.isPropertyAccessExpression(o)){var s=e.skipConstraint(n.getTypeAtLocation(o.expression)),c=s.symbol;if(c&&c.declarations){if(e.isIdentifier(a)&&e.isCallExpression(o.parent)){var l=e.find(c.declarations,e.isModuleDeclaration),u=null==l?void 0:l.getSourceFile();if(l&&u&&!i.isSourceFileFromExternalLibrary(u))return{kind:2,token:a,call:o.parent,sourceFile:t,modifierFlags:1,parentDeclaration:l};var d=e.find(c.declarations,e.isSourceFile);if(t.commonJsModuleIndicator)return;if(d&&!i.isSourceFileFromExternalLibrary(d))return{kind:2,token:a,call:o.parent,sourceFile:d,modifierFlags:1,parentDeclaration:d}}var p=e.find(c.declarations,e.isClassLike);if(p||!e.isPrivateIdentifier(a)){var f=p||e.find(c.declarations,e.isInterfaceDeclaration);if(f&&!i.isSourceFileFromExternalLibrary(f.getSourceFile())){var m=(s.target||s)!==n.getDeclaredTypeOfSymbol(c);if(m&&(e.isPrivateIdentifier(a)||e.isInterfaceDeclaration(f)))return;var g=f.getSourceFile(),_=(m?32:0)|(e.startsWithUnderscore(a.text)?8:0),h=e.isSourceFileJS(g);return{kind:1,token:a,call:e.tryCast(o.parent,e.isCallExpression),modifierFlags:_,parentDeclaration:f,declSourceFile:g,isJSFile:h}}var y=e.find(c.declarations,e.isEnumDeclaration);return!y||e.isPrivateIdentifier(a)||i.isSourceFileFromExternalLibrary(y.getSourceFile())?void 0:{kind:0,token:a,parentDeclaration:y}}}}}}function s(t,r,n,i,a){var o=i.text;if(a){if(223===n.kind)return;var s=n.name.getText(),l=c(e.factory.createIdentifier(s),o);t.insertNodeAfter(r,n,l)}else if(e.isPrivateIdentifier(i)){var u=e.factory.createPropertyDeclaration(void 0,void 0,o,void 0,void 0,void 0),p=d(n);p?t.insertNodeAfter(r,p,u):t.insertNodeAtClassStart(r,n,u)}else{var f=e.getFirstConstructorWithBody(n);if(!f)return;var m=c(e.factory.createThis(),o);t.insertNodeAtConstructorEnd(r,f,m)}}function c(t,r){return e.factory.createExpressionStatement(e.factory.createAssignment(e.factory.createPropertyAccessExpression(t,r),e.factory.createIdentifier("undefined")))}function l(t,r,n){var i;if(218===n.parent.parent.kind){var a=n.parent.parent,o=n.parent===a.left?a.right:a.left,s=t.getWidenedType(t.getBaseTypeOfLiteralType(t.getTypeAtLocation(o)));i=t.typeToTypeNode(s,r,void 0)}else{var c=t.getContextualType(n.parent);i=c?t.typeToTypeNode(c,void 0,void 0):void 0}return i||e.factory.createKeywordTypeNode(129)}function u(t,r,n,i,a,o){var s=e.factory.createPropertyDeclaration(void 0,o?e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(o)):void 0,i,void 0,a,void 0),c=d(n);c?t.insertNodeAfter(r,c,s):t.insertNodeAtClassStart(r,n,s)}function d(t){for(var r,n=0,i=t.members;n<i.length;n++){var a=i[n];if(!e.isPropertyDeclaration(a))break;r=a}return r}function p(r,n,i,a,o,s,c){var l=t.createImportAdder(c,r.program,r.preferences,r.host),u=t.createSignatureDeclarationFromCallExpression(166,r,l,i,a,o,s),d=e.findAncestor(i,(function(t){return e.isMethodDeclaration(t)||e.isConstructorDeclaration(t)}));d&&d.parent===s?n.insertNodeAfter(c,d,u):n.insertNodeAtClassStart(c,s,u),l.writeFixes(n)}function f(t,r,n){var i=n.token,a=n.parentDeclaration,o=e.some(a.members,(function(e){var t=r.getTypeAtLocation(e);return!!(t&&402653316&t.flags)})),s=e.factory.createEnumMember(i,o?e.factory.createStringLiteral(i.text):void 0);t.replaceNode(a.getSourceFile(),a,e.factory.updateEnumDeclaration(a,a.decorators,a.modifiers,a.name,e.concatenate(a.members,e.singleElementArray(s))),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Exclude})}function m(r,n,i){var a=t.createImportAdder(n.sourceFile,n.program,n.preferences,n.host),o=t.createSignatureDeclarationFromCallExpression(253,n,a,i.call,e.idText(i.token),i.modifierFlags,i.parentDeclaration);r.insertNodeAtEndOfScope(i.sourceFile,i.parentDeclaration,o)}t.registerCodeFix({errorCodes:a,getCodeActions:function(r){var a=r.program.getTypeChecker(),c=o(r.sourceFile,r.span.start,a,r.program);if(c){if(2===c.kind){var d=e.textChanges.ChangeTracker.with(r,(function(e){return m(e,r,c)}));return[t.createCodeFixAction(i,d,[e.Diagnostics.Add_missing_function_declaration_0,c.token.text],i,e.Diagnostics.Add_all_missing_function_declarations)]}if(0===c.kind){d=e.textChanges.ChangeTracker.with(r,(function(e){return f(e,r.program.getTypeChecker(),c)}));return[t.createCodeFixAction(n,d,[e.Diagnostics.Add_missing_enum_member_0,c.token.text],n,e.Diagnostics.Add_all_missing_members)]}return e.concatenate(function(r,i){var a=i.parentDeclaration,o=i.declSourceFile,s=i.modifierFlags,c=i.token,l=i.call;if(void 0===l)return;if(e.isPrivateIdentifier(c))return;var u=c.text,d=function(t){return e.textChanges.ChangeTracker.with(r,(function(e){return p(r,e,l,c,t,a,o)}))},f=[t.createCodeFixAction(n,d(32&s),[32&s?e.Diagnostics.Declare_static_method_0:e.Diagnostics.Declare_method_0,u],n,e.Diagnostics.Add_all_missing_members)];8&s&&f.unshift(t.createCodeFixActionWithoutFixAll(n,d(8),[e.Diagnostics.Declare_private_method_0,u]));return f}(r,c),function(r,i){return i.isJSFile?e.singleElementArray(function(r,i){var a=i.parentDeclaration,o=i.declSourceFile,c=i.modifierFlags,l=i.token;if(e.isInterfaceDeclaration(a))return;var u=e.textChanges.ChangeTracker.with(r,(function(e){return s(e,o,a,l,!!(32&c))}));if(0===u.length)return;var d=32&c?e.Diagnostics.Initialize_static_property_0:e.isPrivateIdentifier(l)?e.Diagnostics.Declare_a_private_field_named_0:e.Diagnostics.Initialize_property_0_in_the_constructor;return t.createCodeFixAction(n,u,[d,l.text],n,e.Diagnostics.Add_all_missing_members)}(r,i)):function(r,i){var a=i.parentDeclaration,o=i.declSourceFile,s=i.modifierFlags,c=i.token,d=c.text,p=32&s,f=l(r.program.getTypeChecker(),a,c),m=function(t){return e.textChanges.ChangeTracker.with(r,(function(e){return u(e,o,a,d,f,t)}))},g=[t.createCodeFixAction(n,m(32&s),[p?e.Diagnostics.Declare_static_property_0:e.Diagnostics.Declare_property_0,d],n,e.Diagnostics.Add_all_missing_members)];if(p||e.isPrivateIdentifier(c))return g;8&s&&g.unshift(t.createCodeFixActionWithoutFixAll(n,m(8),[e.Diagnostics.Declare_private_property_0,d]));return g.push(function(r,i,a,o,s){var c=e.factory.createKeywordTypeNode(148),l=e.factory.createParameterDeclaration(void 0,void 0,void 0,"x",void 0,c,void 0),u=e.factory.createIndexSignature(void 0,void 0,[l],s),d=e.textChanges.ChangeTracker.with(r,(function(e){return e.insertNodeAtClassStart(i,a,u)}));return t.createCodeFixActionWithoutFixAll(n,d,[e.Diagnostics.Add_index_signature_for_property_0,o])}(r,o,a,c.text,f)),g}(r,i)}(r,c))}},fixIds:[n,i],getAllCodeActions:function(r){var n=r.program,c=r.fixId,d=n.getTypeChecker(),g=new e.Map,_=new e.Map;return t.createCombinedCodeActions(e.textChanges.ChangeTracker.with(r,(function(h){t.eachDiagnostic(r,a,(function(t){var n=o(t.file,t.start,d,r.program);if(n&&e.addToSeen(g,e.getNodeId(n.parentDeclaration)+"#"+n.token.text))if(c===i)2===n.kind&&m(h,r,n);else if(0===n.kind&&f(h,d,n),1===n.kind){var a=n.parentDeclaration,s=n.token,l=e.getOrUpdate(_,a,(function(){return[]}));l.some((function(e){return e.token.text===s.text}))||l.push(n)}})),_.forEach((function(i,a){for(var o=t.getAllSupers(a,d),c=function(t){if(o.some((function(e){var r=_.get(e);return!!r&&r.some((function(e){return e.token.text===t.token.text}))})))return"continue";var i=t.parentDeclaration,a=t.declSourceFile,c=t.modifierFlags,d=t.token,f=t.call,m=t.isJSFile;if(f&&!e.isPrivateIdentifier(d))p(r,h,f,d,32&c,i,a);else if(m&&!e.isInterfaceDeclaration(i))s(h,a,i,d,!!(32&c));else{var g=l(n.getTypeChecker(),i,d);u(h,a,i,d.text,g,32&c)}},f=0,m=i;f<m.length;f++){c(m[f])}}))})))}}),function(e){e[e.Enum=0]="Enum",e[e.ClassOrInterface=1]="ClassOrInterface",e[e.Function=2]="Function"}(r||(r={}))}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addMissingNewOperator",n=[e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code];function i(t,r,n){var i=e.cast(function(t,r){var n=e.getTokenAtPosition(t,r.start),i=e.textSpanEnd(r);for(;n.end<i;)n=n.parent;return n}(r,n),e.isCallExpression),a=e.factory.createNewExpression(i.expression,i.typeArguments,i.arguments);t.replaceNode(r,i,a)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=n.sourceFile,o=n.span,s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,a,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Add_missing_new_operator_to_call,r,e.Diagnostics.Add_missing_new_operator_to_all_calls)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return i(t,e.sourceFile,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="installTypesPackage",n=e.Diagnostics.Cannot_find_module_0_or_its_corresponding_type_declarations.code,i=[n,e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type.code];function a(e,t){return{type:"install package",file:e,packageName:t}}function o(t,r){var n=e.cast(e.getTokenAtPosition(t,r),e.isStringLiteral).text,i=e.parsePackageName(n).packageName;return e.isExternalModuleNameRelative(i)?void 0:i}function s(t,r,i){var a;return i===n?e.JsTyping.nodeCoreModules.has(t)?"@types/node":void 0:(null===(a=r.isKnownTypesPackageName)||void 0===a?void 0:a.call(r,t))?e.getTypesPackageName(t):void 0}t.registerCodeFix({errorCodes:i,getCodeActions:function(n){var i=n.host,c=n.sourceFile,l=o(c,n.span.start);if(void 0!==l){var u=s(l,i,n.errorCode);return void 0===u?[]:[t.createCodeFixAction("fixCannotFindModule",[],[e.Diagnostics.Install_0,u],r,e.Diagnostics.Install_all_missing_types_packages,a(c.fileName,u))]}},fixIds:[r],getAllCodeActions:function(n){return t.codeFixAll(n,i,(function(t,i,c){var l=o(i.file,i.start);if(void 0!==l)if(n.fixId===r){var u=s(l,n.host,i.code);u&&c.push(a(i.file.fileName,u))}else e.Debug.fail("Bad fixId: "+n.fixId)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,e.Diagnostics.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code],n="fixClassDoesntImplementInheritedAbstractMember";function i(t,r){var n=e.getTokenAtPosition(t,r);return e.cast(n.parent,e.isClassLike)}function a(r,n,i,a,s){var c=e.getEffectiveBaseTypeNode(r),l=i.program.getTypeChecker(),u=l.getTypeAtLocation(c),d=l.getPropertiesOfType(u).filter(o),p=t.createImportAdder(n,i.program,s,i.host);t.createMissingMemberNodes(r,d,n,i,s,p,(function(e){return a.insertNodeAtClassStart(n,r,e)})),p.writeFixes(a)}function o(t){var r=e.getSyntacticModifierFlags(e.first(t.getDeclarations()));return!(8&r||!(128&r))}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var o=r.sourceFile,s=r.span,c=e.textChanges.ChangeTracker.with(r,(function(e){return a(i(o,s.start),o,r,e,r.preferences)}));return 0===c.length?void 0:[t.createCodeFixAction(n,c,e.Diagnostics.Implement_inherited_abstract_class,n,e.Diagnostics.Implement_all_inherited_abstract_classes)]},fixIds:[n],getAllCodeActions:function(n){var o=new e.Map;return t.codeFixAll(n,r,(function(t,r){var s=i(r.file,r.start);e.addToSeen(o,e.getNodeId(s))&&a(s,n.sourceFile,n,t,n.preferences)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="classSuperMustPrecedeThisAccess",n=[e.Diagnostics.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];function i(e,t,r,n){e.insertNodeAtConstructorStart(t,r,n),e.delete(t,n)}function a(t,r){var n=e.getTokenAtPosition(t,r);if(108===n.kind){var i=e.getContainingFunction(n),a=o(i.body);return a&&!a.expression.arguments.some((function(t){return e.isPropertyAccessExpression(t)&&t.expression===n}))?{constructor:i,superCall:a}:void 0}}function o(t){return e.isExpressionStatement(t)&&e.isSuperCall(t.expression)?t:e.isFunctionLike(t)?void 0:e.forEachChild(t,o)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=a(o,s.start);if(c){var l=c.constructor,u=c.superCall,d=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,o,l,u)}));return[t.createCodeFixAction(r,d,e.Diagnostics.Make_super_call_the_first_statement_in_the_constructor,r,e.Diagnostics.Make_all_super_calls_the_first_statement_in_their_constructor)]}},fixIds:[r],getAllCodeActions:function(r){var o=r.sourceFile,s=new e.Map;return t.codeFixAll(r,n,(function(t,r){var n=a(r.file,r.start);if(n){var c=n.constructor,l=n.superCall;e.addToSeen(s,e.getNodeId(c.parent))&&i(t,o,c,l)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="constructorForDerivedNeedSuperCall",n=[e.Diagnostics.Constructors_for_derived_classes_must_contain_a_super_call.code];function i(t,r){var n=e.getTokenAtPosition(t,r);return e.Debug.assert(e.isConstructorDeclaration(n.parent),"token should be at the constructor declaration"),n.parent}function a(t,r,n){var i=e.factory.createExpressionStatement(e.factory.createCallExpression(e.factory.createSuper(),void 0,e.emptyArray));t.insertNodeAtConstructorStart(r,n,i)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start),l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Add_missing_super_call,r,e.Diagnostics.Add_all_missing_super_calls)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return a(t,e.sourceFile,i(r.file,r.start))}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="enableExperimentalDecorators",n=[e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_in_your_tsconfig_or_jsconfig_to_remove_this_warning.code];function i(r,n){t.setJsonCompilerOptionValue(r,n,"experimentalDecorators",e.factory.createTrue())}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=n.program.getCompilerOptions().configFile;if(void 0!==a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,a)}));return[t.createCodeFixActionWithoutFixAll(r,o,e.Diagnostics.Enable_the_experimentalDecorators_option_in_your_configuration_file)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t){var r=e.program.getCompilerOptions().configFile;void 0!==r&&i(t,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixEnableJsxFlag",n=[e.Diagnostics.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code];function i(r,n){t.setJsonCompilerOptionValue(r,n,"jsx",e.factory.createStringLiteral("react"))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=n.program.getCompilerOptions().configFile;if(void 0!==a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,a)}));return[t.createCodeFixActionWithoutFixAll(r,o,e.Diagnostics.Enable_the_jsx_flag_in_your_configuration_file)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t){var r=e.program.getCompilerOptions().configFile;void 0!==r&&i(t,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){t.registerCodeFix({errorCodes:[e.Diagnostics.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher.code,e.Diagnostics.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_esnext_or_system_and_the_target_option_is_set_to_es2017_or_higher.code],getCodeActions:function(r){var n=r.program.getCompilerOptions(),i=n.configFile;if(void 0!==i){var a=[],o=e.getEmitModuleKind(n);if(o>=e.ModuleKind.ES2015&&o<e.ModuleKind.ESNext){var s=e.textChanges.ChangeTracker.with(r,(function(r){t.setJsonCompilerOptionValue(r,i,"module",e.factory.createStringLiteral("esnext"))}));a.push(t.createCodeFixActionWithoutFixAll("fixModuleOption",s,[e.Diagnostics.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}var c=e.getEmitScriptTarget(n);if(c<4||c>99){s=e.textChanges.ChangeTracker.with(r,(function(r){if(e.getTsConfigObjectLiteralExpression(i)){var n=[["target",e.factory.createStringLiteral("es2017")]];o===e.ModuleKind.CommonJS&&n.push(["module",e.factory.createStringLiteral("commonjs")]),t.setJsonCompilerOptionValues(r,i,n)}}));a.push(t.createCodeFixActionWithoutFixAll("fixTargetOption",s,[e.Diagnostics.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return a.length?a:void 0}}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixPropertyAssignment",n=[e.Diagnostics.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code];function i(t,r,n){t.replaceNode(r,n,e.factory.createPropertyAssignment(n.name,n.objectAssignmentInitializer))}function a(t,r){return e.cast(e.getTokenAtPosition(t,r).parent,e.isShorthandPropertyAssignment)}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=a(n.sourceFile,n.span.start),s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,o)}));return[t.createCodeFixAction(r,s,[e.Diagnostics.Change_0_to_1,"=",":"],r,[e.Diagnostics.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,a(t.file,t.start))}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="extendsInterfaceBecomesImplements",n=[e.Diagnostics.Cannot_extend_an_interface_0_Did_you_mean_implements.code];function i(t,r){var n=e.getTokenAtPosition(t,r),i=e.getContainingClass(n).heritageClauses,a=i[0].getFirstToken();return 94===a.kind?{extendsToken:a,heritageClauses:i}:void 0}function a(t,r,n,i){if(t.replaceNode(r,n,e.factory.createToken(117)),2===i.length&&94===i[0].token&&117===i[1].token){var a=i[1].getFirstToken(),o=a.getFullStart();t.replaceRange(r,{pos:o,end:o},e.factory.createToken(27));for(var s=r.text,c=a.end;c<s.length&&e.isWhiteSpaceSingleLine(s.charCodeAt(c));)c++;t.deleteRange(r,{pos:a.getStart(),end:c})}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=i(o,n.span.start);if(s){var c=s.extendsToken,l=s.heritageClauses,u=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c,l)}));return[t.createCodeFixAction(r,u,e.Diagnostics.Change_extends_to_implements,r,e.Diagnostics.Change_all_extended_interfaces_to_implements)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=i(t.file,t.start);r&&a(e,t.file,r.extendsToken,r.heritageClauses)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="forgottenThisPropertyAccess",n=e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,i=[e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies.code,n];function a(t,r,i){var a=e.getTokenAtPosition(t,r);if(e.isIdentifier(a))return{node:a,className:i===n?e.getContainingClass(a).name.text:void 0}}function o(t,r,n){var i=n.node,a=n.className;e.suppressLeadingAndTrailingTrivia(i),t.replaceNode(r,i,e.factory.createPropertyAccessExpression(a?e.factory.createIdentifier(a):e.factory.createThis(),i))}t.registerCodeFix({errorCodes:i,getCodeActions:function(n){var i=n.sourceFile,s=a(i,n.span.start,n.errorCode);if(s){var c=e.textChanges.ChangeTracker.with(n,(function(e){return o(e,i,s)}));return[t.createCodeFixAction(r,c,[e.Diagnostics.Add_0_to_unresolved_variable,s.className||"this"],r,e.Diagnostics.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,i,(function(t,r){var n=a(r.file,r.start,r.code);n&&o(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixInvalidJsxCharacters_expression",n="fixInvalidJsxCharacters_htmlEntity",i=[e.Diagnostics.Unexpected_token_Did_you_mean_or_gt.code,e.Diagnostics.Unexpected_token_Did_you_mean_or_rbrace.code];t.registerCodeFix({errorCodes:i,fixIds:[r,n],getCodeActions:function(i){var a=i.sourceFile,s=i.preferences,c=i.span,l=e.textChanges.ChangeTracker.with(i,(function(e){return o(e,s,a,c.start,!1)})),u=e.textChanges.ChangeTracker.with(i,(function(e){return o(e,s,a,c.start,!0)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Wrap_invalid_character_in_an_expression_container,r,e.Diagnostics.Wrap_all_invalid_characters_in_an_expression_container),t.createCodeFixAction(n,u,e.Diagnostics.Convert_invalid_character_to_its_html_entity_code,n,e.Diagnostics.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions:function(e){return t.codeFixAll(e,i,(function(t,r){return o(t,e.preferences,r.file,r.start,e.fixId===n)}))}});var a={">":">","}":"}"};function o(t,r,n,i,o){var s=n.getText()[i];if(function(t){return e.hasProperty(a,t)}(s)){var c=o?a[s]:"{"+e.quote(n,r,s)+"}";t.replaceRangeWithText(n,{pos:i,end:i+1},c)}}}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="unusedIdentifier",n="unusedIdentifier_prefix",i="unusedIdentifier_delete",a="unusedIdentifier_deleteImports",o="unusedIdentifier_infer",s=[e.Diagnostics._0_is_declared_but_its_value_is_never_read.code,e.Diagnostics._0_is_declared_but_never_used.code,e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read.code,e.Diagnostics.All_imports_in_import_declaration_are_unused.code,e.Diagnostics.All_destructured_elements_are_unused.code,e.Diagnostics.All_variables_are_unused.code,e.Diagnostics.All_type_parameters_are_unused.code];function c(t,r,n){t.replaceNode(r,n.parent,e.factory.createKeywordTypeNode(153))}function l(n,a){return t.createCodeFixAction(r,n,a,i,e.Diagnostics.Delete_all_unused_declarations)}function u(t,r,n){t.delete(r,e.Debug.checkDefined(e.cast(n.parent,e.isDeclarationWithTypeParameterChildren).typeParameters,"The type parameter to delete should exist"))}function d(e){return 100===e.kind||78===e.kind&&(268===e.parent.kind||265===e.parent.kind)}function p(t){return 100===t.kind?e.tryCast(t.parent,e.isImportDeclaration):void 0}function f(t,r){return e.isVariableDeclarationList(r.parent)&&e.first(r.parent.getChildren(t))===r}function m(e,t,r){e.delete(t,234===r.parent.kind?r.parent:r)}function g(t,r,n,i){r!==e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read.code&&(136===i.kind&&(i=e.cast(i.parent,e.isInferTypeNode).typeParameter.name),e.isIdentifier(i)&&function(e){switch(e.parent.kind){case 161:case 160:return!0;case 251:switch(e.parent.parent.parent.kind){case 241:case 240:return!0}}return!1}(i)&&(t.replaceNode(n,i,e.factory.createIdentifier("_"+i.text)),e.isParameter(i.parent)&&e.getJSDocParameterTags(i.parent).forEach((function(r){e.isIdentifier(r.name)&&t.replaceNode(n,r.name,e.factory.createIdentifier("_"+r.name.text))}))))}function _(t,r,n,i,a,o,s,c){!function(t,r,n,i,a,o,s,c){var l=t.parent;e.isParameter(l)?function(t,r,n,i,a,o,s,c){void 0===c&&(c=!1);(function(t,r,n,i,a,o,s){var c=n.parent;switch(c.kind){case 166:case 167:var l=c.parameters.indexOf(n),u=e.isMethodDeclaration(c)?c.name:c,d=e.FindAllReferences.Core.getReferencedSymbolsForNode(c.pos,u,a,i,o);if(d)for(var p=0,f=d;p<f.length;p++)for(var m=0,g=f[p].references;m<g.length;m++){var _=g[m];if(1===_.kind){var h=e.isSuperKeyword(_.node)&&e.isCallExpression(_.node.parent)&&_.node.parent.arguments.length>l,v=e.isPropertyAccessExpression(_.node.parent)&&e.isSuperKeyword(_.node.parent.expression)&&e.isCallExpression(_.node.parent.parent)&&_.node.parent.parent.arguments.length>l,b=(e.isMethodDeclaration(_.node.parent)||e.isMethodSignature(_.node.parent))&&_.node.parent!==n.parent&&_.node.parent.parameters.length>l;if(h||v||b)return!1}}return!0;case 253:return!c.name||!function(t,r,n){return!!e.FindAllReferences.Core.eachSymbolReferenceInFile(n,t,r,(function(t){return e.isIdentifier(t)&&e.isCallExpression(t.parent)&&t.parent.arguments.indexOf(t)>=0}))}(t,r,c.name)||y(c,n,s);case 209:case 210:return y(c,n,s);case 169:return!1;default:return e.Debug.failBadSyntaxKind(c)}})(i,r,n,a,o,s,c)&&(n.modifiers&&n.modifiers.length>0&&(!e.isIdentifier(n.name)||e.FindAllReferences.Core.isSymbolReferencedInFile(n.name,i,r))?n.modifiers.forEach((function(e){return t.deleteModifier(r,e)})):!n.initializer&&h(n,i,a)&&t.delete(r,n))}(r,n,l,i,a,o,s,c):c&&e.isIdentifier(t)&&e.FindAllReferences.Core.isSymbolReferencedInFile(t,i,n)||r.delete(n,e.isImportClause(l)?t:e.isComputedPropertyName(l)?l.parent:l)}(r,n,t,i,a,o,s,c),e.isIdentifier(r)&&e.FindAllReferences.Core.eachSymbolReferenceInFile(r,i,t,(function(r){var i;e.isPropertyAccessExpression(r.parent)&&r.parent.name===r&&(r=r.parent),!c&&(i=r,(e.isBinaryExpression(i.parent)&&i.parent.left===i||(e.isPostfixUnaryExpression(i.parent)||e.isPrefixUnaryExpression(i.parent))&&i.parent.operand===i)&&e.isExpressionStatement(i.parent.parent))&&n.delete(t,r.parent.parent)}))}function h(t,r,n){var i=t.parent.parameters.indexOf(t);return!e.FindAllReferences.Core.someSignatureUsage(t.parent,n,r,(function(e,t){return!t||t.arguments.length>i}))}function y(t,r,n){var i=t.parameters,a=i.indexOf(r);return e.Debug.assert(-1!==a,"The parameter should already be in the list"),n?i.slice(a+1).every((function(t){return e.isIdentifier(t.name)&&!t.symbol.isReferenced})):a===i.length-1}t.registerCodeFix({errorCodes:s,getCodeActions:function(i){var s=i.errorCode,h=i.sourceFile,y=i.program,v=i.cancellationToken,b=y.getTypeChecker(),k=y.getSourceFiles(),x=e.getTokenAtPosition(h,i.span.start);if(e.isJSDocTemplateTag(x))return[l(e.textChanges.ChangeTracker.with(i,(function(e){return e.delete(h,x)})),e.Diagnostics.Remove_template_tag)];if(29===x.kind)return[l(S=e.textChanges.ChangeTracker.with(i,(function(e){return u(e,h,x)})),e.Diagnostics.Remove_type_parameters)];var E=p(x);if(E){var S=e.textChanges.ChangeTracker.with(i,(function(e){return e.delete(h,E)}));return[t.createCodeFixAction(r,S,[e.Diagnostics.Remove_import_from_0,e.showModuleSpecifier(E)],a,e.Diagnostics.Delete_all_unused_imports)]}if(d(x)&&(A=e.textChanges.ChangeTracker.with(i,(function(e){return _(h,x,e,b,k,y,v,!1)}))).length)return[t.createCodeFixAction(r,A,[e.Diagnostics.Remove_unused_declaration_for_Colon_0,x.getText(h)],a,e.Diagnostics.Delete_all_unused_imports)];if(e.isObjectBindingPattern(x.parent)||e.isArrayBindingPattern(x.parent)){if(e.isParameter(x.parent.parent)){var D=x.parent.elements,w=[D.length>1?e.Diagnostics.Remove_unused_declarations_for_Colon_0:e.Diagnostics.Remove_unused_declaration_for_Colon_0,e.map(D,(function(e){return e.getText(h)})).join(", ")];return[l(e.textChanges.ChangeTracker.with(i,(function(t){return function(t,r,n){e.forEach(n.elements,(function(e){return t.delete(r,e)}))}(t,h,x.parent)})),w)]}return[l(e.textChanges.ChangeTracker.with(i,(function(e){return e.delete(h,x.parent.parent)})),e.Diagnostics.Remove_unused_destructuring_declaration)]}if(f(h,x))return[l(e.textChanges.ChangeTracker.with(i,(function(e){return m(e,h,x.parent)})),e.Diagnostics.Remove_variable_statement)];var T=[];if(136===x.kind){S=e.textChanges.ChangeTracker.with(i,(function(e){return c(e,h,x)}));var C=e.cast(x.parent,e.isInferTypeNode).typeParameter.name.text;T.push(t.createCodeFixAction(r,S,[e.Diagnostics.Replace_infer_0_with_unknown,C],o,e.Diagnostics.Replace_all_unused_infer_with_unknown))}else{var A;if((A=e.textChanges.ChangeTracker.with(i,(function(e){return _(h,x,e,b,k,y,v,!1)}))).length){C=e.isComputedPropertyName(x.parent)?x.parent:x;T.push(l(A,[e.Diagnostics.Remove_unused_declaration_for_Colon_0,C.getText(h)]))}}var N=e.textChanges.ChangeTracker.with(i,(function(e){return g(e,s,h,x)}));return N.length&&T.push(t.createCodeFixAction(r,N,[e.Diagnostics.Prefix_0_with_an_underscore,x.getText(h)],n,e.Diagnostics.Prefix_all_unused_declarations_with_where_possible)),T},fixIds:[n,i,a,o],getAllCodeActions:function(r){var l=r.sourceFile,y=r.program,v=r.cancellationToken,b=y.getTypeChecker(),k=y.getSourceFiles();return t.codeFixAll(r,s,(function(t,s){var x=e.getTokenAtPosition(l,s.start);switch(r.fixId){case n:g(t,s.code,l,x);break;case a:var E=p(x);E?t.delete(l,E):d(x)&&_(l,x,t,b,k,y,v,!0);break;case i:if(136===x.kind||d(x))break;if(e.isJSDocTemplateTag(x))t.delete(l,x);else if(29===x.kind)u(t,l,x);else if(e.isObjectBindingPattern(x.parent)){if(x.parent.parent.initializer)break;e.isParameter(x.parent.parent)&&!h(x.parent.parent,b,k)||t.delete(l,x.parent.parent)}else{if(e.isArrayBindingPattern(x.parent.parent)&&x.parent.parent.parent.initializer)break;f(l,x)?m(t,l,x.parent):_(l,x,t,b,k,y,v,!0)}break;case o:136===x.kind&&c(t,l,x);break;default:e.Debug.fail(JSON.stringify(r.fixId))}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixUnreachableCode",n=[e.Diagnostics.Unreachable_code_detected.code];function i(t,r,n,i,a){var o=e.getTokenAtPosition(r,n),s=e.findAncestor(o,e.isStatement);if(s.getStart(r)!==o.getStart(r)){var c=JSON.stringify({statementKind:e.Debug.formatSyntaxKind(s.kind),tokenKind:e.Debug.formatSyntaxKind(o.kind),errorCode:a,start:n,length:i});e.Debug.fail("Token and statement should start at the same point. "+c)}var l=(e.isBlock(s.parent)?s.parent:s).parent;if(!e.isBlock(s.parent)||s===e.first(s.parent.statements))switch(l.kind){case 236:if(l.elseStatement){if(e.isBlock(s.parent))break;return void t.replaceNode(r,s,e.factory.createBlock(e.emptyArray))}case 238:case 239:return void t.delete(r,l)}if(e.isBlock(s.parent)){var u=n+i,d=e.Debug.checkDefined(function(e,t){for(var r,n=0,i=e;n<i.length;n++){var a=i[n];if(!t(a))break;r=a}return r}(e.sliceAfter(s.parent.statements,s),(function(e){return e.pos<u})),"Some statement should be last");t.deleteNodeRange(r,s,d)}else t.delete(r,s)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start,n.span.length,n.errorCode)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Remove_unreachable_code,r,e.Diagnostics.Remove_all_unreachable_code)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start,t.length,t.code)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixUnusedLabel",n=[e.Diagnostics.Unused_label.code];function i(t,r,n){var i=e.getTokenAtPosition(r,n),a=e.cast(i.parent,e.isLabeledStatement),o=i.getStart(r),s=a.statement.getStart(r),c=e.positionsAreOnSameLine(o,s,r)?s:e.skipTrivia(r.text,e.findChildOfKind(a,58,r).end,!0);t.deleteRange(r,{pos:o,end:c})}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span.start)}));return[t.createCodeFixAction(r,a,e.Diagnostics.Remove_unused_label,r,e.Diagnostics.Remove_all_unused_labels)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t.start)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixJSDocTypes_plain",n="fixJSDocTypes_nullable",i=[e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments.code];function a(e,t,r,n,i){e.replaceNode(t,r,i.typeToTypeNode(n,r,void 0))}function o(t,r,n){var i=e.findAncestor(e.getTokenAtPosition(t,r),s),a=i&&i.type;return a&&{typeNode:a,type:n.getTypeFromTypeNode(a)}}function s(e){switch(e.kind){case 226:case 170:case 171:case 253:case 168:case 172:case 191:case 166:case 165:case 161:case 164:case 163:case 169:case 257:case 207:case 251:return!0;default:return!1}}t.registerCodeFix({errorCodes:i,getCodeActions:function(i){var s=i.sourceFile,c=i.program.getTypeChecker(),l=o(s,i.span.start,c);if(l){var u=l.typeNode,d=l.type,p=u.getText(s),f=[m(d,r,e.Diagnostics.Change_all_jsdoc_style_types_to_TypeScript)];return 308===u.kind&&f.push(m(c.getNullableType(d,32768),n,e.Diagnostics.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),f}function m(r,n,o){var l=e.textChanges.ChangeTracker.with(i,(function(e){return a(e,s,u,r,c)}));return t.createCodeFixAction("jdocTypes",l,[e.Diagnostics.Change_0_to_1,p,c.typeToString(r)],n,o)}},fixIds:[r,n],getAllCodeActions:function(e){var r=e.fixId,s=e.program,c=e.sourceFile,l=s.getTypeChecker();return t.codeFixAll(e,i,(function(e,t){var i=o(t.file,t.start,l);if(i){var s=i.typeNode,u=i.type,d=308===s.kind&&r===n?l.getNullableType(u,32768):u;a(e,c,s,d,l)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixMissingCallParentheses",n=[e.Diagnostics.This_condition_will_always_return_true_since_the_function_is_always_defined_Did_you_mean_to_call_it_instead.code];function i(e,t,r){e.replaceNodeWithText(t,r,r.text+"()")}function a(t,r){var n=e.getTokenAtPosition(t,r);if(e.isPropertyAccessExpression(n.parent)){for(var i=n.parent;e.isPropertyAccessExpression(i.parent);)i=i.parent;return i.name}if(e.isIdentifier(n))return n}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=a(n.sourceFile,n.span.start);if(o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Add_missing_call_parentheses,r,e.Diagnostics.Add_all_missing_call_parentheses)]}},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=a(t.file,t.start);r&&i(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixAwaitInSyncFunction",n=[e.Diagnostics.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,e.Diagnostics.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code];function i(t,r){var n=e.getTokenAtPosition(t,r),i=e.getContainingFunction(n);if(i){var a,o;switch(i.kind){case 166:a=i.name;break;case 253:case 209:a=e.findChildOfKind(i,98,t);break;case 210:a=e.findChildOfKind(i,20,t)||e.first(i.parameters);break;default:return}return a&&{insertBefore:a,returnType:(o=i,o.type?o.type:e.isVariableDeclaration(o.parent)&&o.parent.type&&e.isFunctionTypeNode(o.parent.type)?o.parent.type.type:void 0)}}}function a(t,r,n){var i=n.insertBefore,a=n.returnType;if(a){var o=e.getEntityNameFromTypeNode(a);o&&78===o.kind&&"Promise"===o.text||t.replaceNode(r,a,e.factory.createTypeReferenceNode("Promise",e.factory.createNodeArray([a])))}t.insertModifierBefore(r,130,i)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start);if(c){var l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Add_async_modifier_to_containing_function,r,e.Diagnostics.Add_all_missing_async_modifiers)]}},fixIds:[r],getAllCodeActions:function(r){var o=new e.Map;return t.codeFixAll(r,n,(function(t,n){var s=i(n.file,n.start);s&&e.addToSeen(o,e.getNodeId(s.insertBefore))&&a(t,r.sourceFile,s)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,e.Diagnostics._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],n="fixPropertyOverrideAccessor";function i(r,n,i,a,o){var s,c;if(a===e.Diagnostics._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)s=n,c=n+i;else if(a===e.Diagnostics._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){var l=o.program.getTypeChecker(),u=e.getTokenAtPosition(r,n).parent;e.Debug.assert(e.isAccessor(u),"error span of fixPropertyOverrideAccessor should only be on an accessor");var d=u.parent;e.Debug.assert(e.isClassLike(d),"erroneous accessors should only be inside classes");var p=e.singleOrUndefined(t.getAllSupers(d,l));if(!p)return[];var f=e.unescapeLeadingUnderscores(e.getTextOfPropertyName(u.name)),m=l.getPropertyOfType(l.getTypeAtLocation(p),f);if(!m||!m.valueDeclaration)return[];s=m.valueDeclaration.pos,c=m.valueDeclaration.end,r=e.getSourceFileOfNode(m.valueDeclaration)}else e.Debug.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+a);return t.generateAccessorFromProperty(r,o.program,s,c,o,e.Diagnostics.Generate_get_and_set_accessors.message)}t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var a=i(r.sourceFile,r.span.start,r.span.length,r.errorCode,r);if(a)return[t.createCodeFixAction(n,a,e.Diagnostics.Generate_get_and_set_accessors,n,e.Diagnostics.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,r,(function(t,r){var n=i(r.file,r.start,r.length,r.code,e);if(n)for(var a=0,o=n;a<o.length;a++){var s=o[a];t.pushRaw(e.sourceFile,s)}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="inferFromUsage",n=[e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,e.Diagnostics.Variable_0_implicitly_has_an_1_type.code,e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code,e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,e.Diagnostics.Member_0_implicitly_has_an_1_type.code,e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code];function a(t,r){switch(t){case e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code:case e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.isSetAccessorDeclaration(e.getContainingFunction(r))?e.Diagnostics.Infer_type_of_0_from_usage:e.Diagnostics.Infer_parameter_types_from_usage;case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code:case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Infer_parameter_types_from_usage;case e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return e.Diagnostics.Infer_this_type_of_0_from_usage;default:return e.Diagnostics.Infer_type_of_0_from_usage}}function o(r,n,i,a,o,p,_,h,y){if(e.isParameterPropertyModifier(i.kind)||78===i.kind||25===i.kind||108===i.kind){var v=i.parent,b=t.createImportAdder(n,o,y,h);switch(a=function(t){switch(t){case e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Variable_0_implicitly_has_an_1_type.code;case e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code;case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code;case e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Member_0_implicitly_has_an_1_type.code}return t}(a)){case e.Diagnostics.Member_0_implicitly_has_an_1_type.code:case e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(e.isVariableDeclaration(v)&&_(v)||e.isPropertyDeclaration(v)||e.isPropertySignature(v))return s(r,b,n,v,o,h,p),b.writeFixes(r),v;if(e.isPropertyAccessExpression(v)){var k=f(v.name,o,p),x=e.getTypeNodeIfAccessible(k,v,o,h);if(x){var E=e.factory.createJSDocTypeTag(void 0,e.factory.createJSDocTypeExpression(x),"");d(r,n,e.cast(v.parent.parent,e.isExpressionStatement),[E])}return b.writeFixes(r),v}return;case e.Diagnostics.Variable_0_implicitly_has_an_1_type.code:var S=o.getTypeChecker().getSymbolAtLocation(i);return S&&S.valueDeclaration&&e.isVariableDeclaration(S.valueDeclaration)&&_(S.valueDeclaration)?(s(r,b,n,S.valueDeclaration,o,h,p),b.writeFixes(r),S.valueDeclaration):void 0}var D=e.getContainingFunction(i);if(void 0!==D){var w;switch(a){case e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code:if(e.isSetAccessorDeclaration(D)){c(r,b,n,D,o,h,p),w=D;break}case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code:if(_(D)){var T=e.cast(v,e.isParameter);!function(t,r,n,i,a,o,s,c){if(!e.isIdentifier(i.name))return;var d=function(t,r,n,i){var a=m(t,r,n,i);return a&&g(n,a,i).parameters(t)||t.parameters.map((function(t){return{declaration:t,type:e.isIdentifier(t.name)?f(t.name,n,i):n.getTypeChecker().getAnyType()}}))}(a,n,o,c);if(e.Debug.assert(a.parameters.length===d.length,"Parameter count and inference count should match"),e.isInJSFile(a))u(t,n,d,o,s);else{var p=e.isArrowFunction(a)&&!e.findChildOfKind(a,20,n);p&&t.insertNodeBefore(n,e.first(a.parameters),e.factory.createToken(20));for(var _=0,h=d;_<h.length;_++){var y=h[_],v=y.declaration,b=y.type;!v||v.type||v.initializer||l(t,r,n,v,b,o,s)}p&&t.insertNodeAfter(n,e.last(a.parameters),e.factory.createToken(21))}}(r,b,n,T,D,o,h,p),w=T}break;case e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:e.isGetAccessorDeclaration(D)&&e.isIdentifier(D.name)&&(l(r,b,n,D,f(D.name,o,p),o,h),w=D);break;case e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:e.isSetAccessorDeclaration(D)&&(c(r,b,n,D,o,h,p),w=D);break;case e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:e.textChanges.isThisTypeAnnotatable(D)&&_(D)&&(!function(t,r,n,i,a,o){var s=m(n,r,i,o);if(!s||!s.length)return;var c=g(i,s,o).thisParameter(),l=e.getTypeNodeIfAccessible(c,n,i,a);if(!l)return;e.isInJSFile(n)?function(t,r,n,i){d(t,r,n,[e.factory.createJSDocThisTag(void 0,e.factory.createJSDocTypeExpression(i))])}(t,r,n,l):t.tryInsertThisTypeAnnotation(r,n,l)}(r,n,D,o,h,p),w=D);break;default:return e.Debug.fail(String(a))}return b.writeFixes(r),w}}}function s(t,r,n,i,a,o,s){e.isIdentifier(i.name)&&l(t,r,n,i,f(i.name,a,s),a,o)}function c(t,r,n,i,a,o,s){var c=e.firstOrUndefined(i.parameters);if(c&&e.isIdentifier(i.name)&&e.isIdentifier(c.name)){var d=f(i.name,a,s);d===a.getTypeChecker().getAnyType()&&(d=f(c.name,a,s)),e.isInJSFile(i)?u(t,n,[{declaration:c,type:d}],a,o):l(t,r,n,c,d,a,o)}}function l(r,n,i,a,o,s,c){var l=e.getTypeNodeIfAccessible(o,a,s,c);if(l)if(e.isInJSFile(i)&&163!==a.kind){var u=e.isVariableDeclaration(a)?e.tryCast(a.parent.parent,e.isVariableStatement):a;if(!u)return;var p=e.factory.createJSDocTypeExpression(l);d(r,i,u,[e.isGetAccessorDeclaration(a)?e.factory.createJSDocReturnTag(void 0,p,""):e.factory.createJSDocTypeTag(void 0,p,"")])}else(function(r,n,i,a,o,s){var c=t.tryGetAutoImportableReferenceFromTypeNode(r,s);if(c&&a.tryInsertTypeAnnotation(i,n,c.typeNode))return e.forEach(c.symbols,(function(e){return o.addImportFromExportedSymbol(e,!0)})),!0;return!1})(l,a,i,r,n,e.getEmitScriptTarget(s.getCompilerOptions()))||r.tryInsertTypeAnnotation(i,a,l)}function u(t,r,n,i,a){var o=n.length&&n[0].declaration.parent;if(o){var s=e.mapDefined(n,(function(t){var r=t.declaration;if(!r.initializer&&!e.getJSDocType(r)&&e.isIdentifier(r.name)){var n=t.type&&e.getTypeNodeIfAccessible(t.type,r,i,a);if(n){var o=e.factory.cloneNode(r.name);return e.setEmitFlags(o,3584),{name:e.factory.cloneNode(r.name),param:r,isOptional:!!t.isOptional,typeNode:n}}}}));if(s.length)if(e.isArrowFunction(o)||e.isFunctionExpression(o)){var c=e.isArrowFunction(o)&&!e.findChildOfKind(o,20,r);c&&t.insertNodeBefore(r,e.first(o.parameters),e.factory.createToken(20)),e.forEach(s,(function(n){var i=n.typeNode,a=n.param,o=e.factory.createJSDocTypeTag(void 0,e.factory.createJSDocTypeExpression(i)),s=e.factory.createJSDocComment(void 0,[o]);t.insertNodeAt(r,a.getStart(r),s,{suffix:" "})})),c&&t.insertNodeAfter(r,e.last(o.parameters),e.factory.createToken(21))}else{var l=e.map(s,(function(t){var r=t.name,n=t.typeNode,i=t.isOptional;return e.factory.createJSDocParameterTag(void 0,r,!!i,e.factory.createJSDocTypeExpression(n),!1,"")}));d(t,r,o,l)}}}function d(t,r,n,a){var o=e.mapDefined(n.jsDoc,(function(e){return e.comment})),s=e.flatMapToMutable(n.jsDoc,(function(e){return e.tags})),c=a.filter((function(t){return!s||!s.some((function(r,n){var i=function(t,r){if(t.kind!==r.kind)return;switch(t.kind){case 329:var n=t,i=r;return e.isIdentifier(n.name)&&e.isIdentifier(i.name)&&n.name.escapedText===i.name.escapedText?e.factory.createJSDocParameterTag(void 0,i.name,!1,i.typeExpression,i.isNameFirst,n.comment):void 0;case 330:return e.factory.createJSDocReturnTag(void 0,r.typeExpression,t.comment)}}(r,t);return i&&(s[n]=i),!!i}))})),l=e.factory.createJSDocComment(o.join("\n"),e.factory.createNodeArray(i(i([],s||e.emptyArray),c))),u=210===n.kind?function(e){if(164===e.parent.kind)return e.parent;return e.parent.parent}(n):n;u.jsDoc=n.jsDoc,u.jsDocCache=n.jsDocCache,t.insertJsdocCommentBefore(r,u,l)}function p(t,r,n){return e.mapDefined(e.FindAllReferences.getReferenceEntriesForNode(-1,t,r,r.getSourceFiles(),n),(function(t){return 0!==t.kind?e.tryCast(t.node,e.isIdentifier):void 0}))}function f(e,t,r){return g(t,p(e,t,r),r).single()}function m(t,r,n,i){var a;switch(t.kind){case 167:a=e.findChildOfKind(t,133,r);break;case 210:case 209:var o=t.parent;a=(e.isVariableDeclaration(o)||e.isPropertyDeclaration(o))&&e.isIdentifier(o.name)?o.name:t.name;break;case 253:case 166:case 165:a=t.name}if(a)return p(a,n,i)}function g(t,r,n){var a=t.getTypeChecker(),o={string:function(){return a.getStringType()},number:function(){return a.getNumberType()},Array:function(e){return a.createArrayType(e)},Promise:function(e){return a.createPromiseType(e)}},s=[a.getStringType(),a.getNumberType(),a.createArrayType(a.getAnyType()),a.createPromiseType(a.getAnyType())];return{single:function(){return g(u(r))},parameters:function(o){if(0===r.length||!o.parameters)return;for(var s=c(),l=0,f=r;l<f.length;l++){var m=f[l];n.throwIfCancellationRequested(),d(m,s)}var _=i(i([],s.constructs||[]),s.calls||[]);return o.parameters.map((function(r,i){for(var s=[],c=e.isRestParameter(r),l=!1,d=0,f=_;d<f.length;d++){var m=f[d];if(m.argumentTypes.length<=i)l=e.isInJSFile(o),s.push(a.getUndefinedType());else if(c)for(var h=i;h<m.argumentTypes.length;h++)s.push(a.getBaseTypeOfLiteralType(m.argumentTypes[h]));else s.push(a.getBaseTypeOfLiteralType(m.argumentTypes[i]))}if(e.isIdentifier(r.name)){var y=u(p(r.name,t,n));s.push.apply(s,c?e.mapDefined(y,a.getElementTypeOfArrayType):y)}var v=g(s);return{type:c?a.createArrayType(v):v,isOptional:l&&!c,declaration:r}}))},thisParameter:function(){for(var t=c(),i=0,a=r;i<a.length;i++){var o=a[i];n.throwIfCancellationRequested(),d(o,t)}return g(t.candidateThisTypes||e.emptyArray)}};function c(){return{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}}function l(t){for(var r=new e.Map,n=0,i=t;n<i.length;n++){var a=i[n];a.properties&&a.properties.forEach((function(e,t){r.has(t)||r.set(t,[]),r.get(t).push(e)}))}var o=new e.Map;return r.forEach((function(e,t){o.set(t,l(e))})),{isNumber:t.some((function(e){return e.isNumber})),isString:t.some((function(e){return e.isString})),isNumberOrString:t.some((function(e){return e.isNumberOrString})),candidateTypes:e.flatMap(t,(function(e){return e.candidateTypes})),properties:o,calls:e.flatMap(t,(function(e){return e.calls})),constructs:e.flatMap(t,(function(e){return e.constructs})),numberIndex:e.forEach(t,(function(e){return e.numberIndex})),stringIndex:e.forEach(t,(function(e){return e.stringIndex})),candidateThisTypes:e.flatMap(t,(function(e){return e.candidateThisTypes})),inferredTypes:void 0}}function u(e){for(var t={isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0},r=0,i=e;r<i.length;r++){var a=i[r];n.throwIfCancellationRequested(),d(a,t)}return _(t)}function d(t,r){for(;e.isRightSideOfQualifiedNameOrPropertyAccess(t);)t=t.parent;switch(t.parent.kind){case 235:!function(t,r){v(r,e.isCallExpression(t)?a.getVoidType():a.getAnyType())}(t,r);break;case 217:r.isNumber=!0;break;case 216:!function(e,t){switch(e.operator){case 45:case 46:case 40:case 54:t.isNumber=!0;break;case 39:t.isNumberOrString=!0}}(t.parent,r);break;case 218:!function(t,r,n){switch(r.operatorToken.kind){case 42:case 41:case 43:case 44:case 47:case 48:case 49:case 50:case 51:case 52:case 64:case 66:case 65:case 67:case 68:case 72:case 73:case 77:case 69:case 71:case 70:case 40:case 29:case 32:case 31:case 33:var i=a.getTypeAtLocation(r.left===t?r.right:r.left);1056&i.flags?v(n,i):n.isNumber=!0;break;case 63:case 39:var o=a.getTypeAtLocation(r.left===t?r.right:r.left);1056&o.flags?v(n,o):296&o.flags?n.isNumber=!0:402653316&o.flags?n.isString=!0:1&o.flags||(n.isNumberOrString=!0);break;case 62:case 34:case 36:case 37:case 35:v(n,a.getTypeAtLocation(r.left===t?r.right:r.left));break;case 101:t===r.left&&(n.isString=!0);break;case 56:case 60:t!==r.left||251!==t.parent.parent.kind&&!e.isAssignmentExpression(t.parent.parent,!0)||v(n,a.getTypeAtLocation(r.right))}}(t,t.parent,r);break;case 287:case 288:!function(e,t){v(t,a.getTypeAtLocation(e.parent.parent.expression))}(t.parent,r);break;case 204:case 205:t.parent.expression===t?function(e,t){var r={argumentTypes:[],return_:{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}};if(e.arguments)for(var n=0,i=e.arguments;n<i.length;n++){var o=i[n];r.argumentTypes.push(a.getTypeAtLocation(o))}d(e,r.return_),204===e.kind?(t.calls||(t.calls=[])).push(r):(t.constructs||(t.constructs=[])).push(r)}(t.parent,r):f(t,r);break;case 202:!function(t,r){var n=e.escapeLeadingUnderscores(t.name.text);r.properties||(r.properties=new e.Map);var i=r.properties.get(n)||{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};d(t,i),r.properties.set(n,i)}(t.parent,r);break;case 203:!function(e,t,r){if(t===e.argumentExpression)return void(r.isNumberOrString=!0);var n=a.getTypeAtLocation(e.argumentExpression),i={isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0};d(e,i),296&n.flags?r.numberIndex=i:r.stringIndex=i}(t.parent,t,r);break;case 291:case 292:!function(t,r){var n=e.isVariableDeclaration(t.parent.parent)?t.parent.parent:t.parent;b(r,a.getTypeAtLocation(n))}(t.parent,r);break;case 164:!function(e,t){b(t,a.getTypeAtLocation(e.parent))}(t.parent,r);break;case 251:var n=t.parent,i=n.name,o=n.initializer;if(t===i){o&&v(r,a.getTypeAtLocation(o));break}default:return f(t,r)}}function f(t,r){e.isExpressionNode(t)&&v(r,a.getContextualType(t))}function m(e){return g(_(e))}function g(t){if(!t.length)return a.getAnyType();var r=a.getUnionType([a.getStringType(),a.getNumberType()]),n=function(t,r){for(var n=[],i=0,a=t;i<a.length;i++)for(var o=a[i],s=0,c=r;s<c.length;s++){var l=c[s],u=l.high,d=l.low;u(o)&&(e.Debug.assert(!d(o),"Priority can't have both low and high"),n.push(d))}return t.filter((function(e){return n.every((function(t){return!t(e)}))}))}(t,[{high:function(e){return e===a.getStringType()||e===a.getNumberType()},low:function(e){return e===r}},{high:function(e){return!(16385&e.flags)},low:function(e){return!!(16385&e.flags)}},{high:function(t){return!(114689&t.flags||16&e.getObjectFlags(t))},low:function(t){return!!(16&e.getObjectFlags(t))}}]),i=n.filter((function(t){return 16&e.getObjectFlags(t)}));return i.length&&(n=n.filter((function(t){return!(16&e.getObjectFlags(t))}))).push(function(t){if(1===t.length)return t[0];for(var r=[],n=[],i=[],o=[],s=!1,c=!1,l=e.createMultiMap(),u=0,d=t;u<d.length;u++){for(var p=d[u],f=0,m=a.getPropertiesOfType(p);f<m.length;f++){var g=m[f];l.add(g.name,a.getTypeOfSymbolAtLocation(g,g.valueDeclaration))}r.push.apply(r,a.getSignaturesOfType(p,0)),n.push.apply(n,a.getSignaturesOfType(p,1)),p.stringIndexInfo&&(i.push(p.stringIndexInfo.type),s=s||p.stringIndexInfo.isReadonly),p.numberIndexInfo&&(o.push(p.numberIndexInfo.type),c=c||p.numberIndexInfo.isReadonly)}var _=e.mapEntries(l,(function(e,r){var n=r.length<t.length?16777216:0,i=a.createSymbol(4|n,e);return i.type=a.getUnionType(r),[e,i]}));return a.createAnonymousType(t[0].symbol,_,r,n,i.length?a.createIndexInfo(a.getUnionType(i),s):void 0,o.length?a.createIndexInfo(a.getUnionType(o),c):void 0)}(i)),a.getWidenedType(a.getUnionType(n.map(a.getBaseTypeOfLiteralType),2))}function _(t){var r,n,i,c=[];return t.isNumber&&c.push(a.getNumberType()),t.isString&&c.push(a.getStringType()),t.isNumberOrString&&c.push(a.getUnionType([a.getStringType(),a.getNumberType()])),t.numberIndex&&c.push(a.createArrayType(m(t.numberIndex))),((null===(r=t.properties)||void 0===r?void 0:r.size)||(null===(n=t.calls)||void 0===n?void 0:n.length)||(null===(i=t.constructs)||void 0===i?void 0:i.length)||t.stringIndex)&&c.push(function(t){var r=new e.Map;t.properties&&t.properties.forEach((function(e,t){var n=a.createSymbol(4,t);n.type=m(e),r.set(t,n)}));var n=t.calls?[y(t.calls)]:[],i=t.constructs?[y(t.constructs)]:[],o=t.stringIndex&&a.createIndexInfo(m(t.stringIndex),!1);return a.createAnonymousType(void 0,r,n,i,o,void 0)}(t)),c.push.apply(c,(t.candidateTypes||[]).map((function(e){return a.getBaseTypeOfLiteralType(e)}))),c.push.apply(c,function(t){if(!t.properties||!t.properties.size)return[];var r=s.filter((function(r){return function(t,r){return!!r.properties&&!e.forEachEntry(r.properties,(function(r,n){var i,o=a.getTypeOfPropertyOfType(t,n);return!o||(r.calls?!a.getSignaturesOfType(o,0).length||!a.isTypeAssignableTo(o,(i=r.calls,a.createAnonymousType(void 0,e.createSymbolTable(),[y(i)],e.emptyArray,void 0,void 0))):!a.isTypeAssignableTo(o,m(r)))}))}(r,t)}));if(0<r.length&&r.length<3)return r.map((function(r){return function(t,r){if(!(4&e.getObjectFlags(t)&&r.properties))return t;var n=t.target,i=e.singleOrUndefined(n.typeParameters);if(!i)return t;var s=[];return r.properties.forEach((function(t,r){var o=a.getTypeOfPropertyOfType(n,r);e.Debug.assert(!!o,"generic should have all the properties of its reference."),s.push.apply(s,h(o,m(t),i))})),o[t.symbol.escapedName](g(s))}(r,t)}));return[]}(t)),c}function h(t,r,n){if(t===n)return[r];if(3145728&t.flags)return e.flatMap(t.types,(function(e){return h(e,r,n)}));if(4&e.getObjectFlags(t)&&4&e.getObjectFlags(r)){var i=a.getTypeArguments(t),o=a.getTypeArguments(r),s=[];if(i&&o)for(var c=0;c<i.length;c++)o[c]&&s.push.apply(s,h(i[c],o[c],n));return s}var l=a.getSignaturesOfType(t,0),u=a.getSignaturesOfType(r,0);return 1===l.length&&1===u.length?function(t,r,n){for(var i=[],o=0;o<t.parameters.length;o++){var s=t.parameters[o],c=r.parameters[o],l=t.declaration&&e.isRestParameter(t.declaration.parameters[o]);if(!c)break;var u=a.getTypeOfSymbolAtLocation(s,s.valueDeclaration),d=l&&a.getElementTypeOfArrayType(u);d&&(u=d);var p=c.type||a.getTypeOfSymbolAtLocation(c,c.valueDeclaration);i.push.apply(i,h(u,p,n))}var f=a.getReturnTypeOfSignature(t),m=a.getReturnTypeOfSignature(r);return i.push.apply(i,h(f,m,n)),i}(l[0],u[0],n):[]}function y(t){for(var r=[],n=Math.max.apply(Math,t.map((function(e){return e.argumentTypes.length}))),i=function(n){var i=a.createSymbol(1,e.escapeLeadingUnderscores("arg"+n));i.type=g(t.map((function(e){return e.argumentTypes[n]||a.getUndefinedType()}))),t.some((function(e){return void 0===e.argumentTypes[n]}))&&(i.flags|=16777216),r.push(i)},o=0;o<n;o++)i(o);var s=m(l(t.map((function(e){return e.return_}))));return a.createSignature(void 0,void 0,void 0,r,s,void 0,n,0)}function v(e,t){!t||1&t.flags||131072&t.flags||(e.candidateTypes||(e.candidateTypes=[])).push(t)}function b(e,t){!t||1&t.flags||131072&t.flags||(e.candidateThisTypes||(e.candidateThisTypes=[])).push(t)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i,s=n.sourceFile,c=n.program,l=n.span.start,u=n.errorCode,d=n.cancellationToken,p=n.host,f=n.preferences,m=e.getTokenAtPosition(s,l),g=e.textChanges.ChangeTracker.with(n,(function(t){i=o(t,s,m,u,c,d,e.returnTrue,p,f)})),_=i&&e.getNameOfDeclaration(i);return _&&0!==g.length?[t.createCodeFixAction(r,g,[a(u,m),_.getText(s)],r,e.Diagnostics.Infer_all_types_from_usage)]:void 0},fixIds:[r],getAllCodeActions:function(r){var i=r.sourceFile,a=r.program,s=r.cancellationToken,c=r.host,l=r.preferences,u=e.nodeSeenTracker();return t.codeFixAll(r,n,(function(t,r){o(t,i,e.getTokenAtPosition(r.file,r.start),r.code,a,s,u,c,l)}))}}),t.addJSDocTags=d}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixReturnTypeInAsyncFunction",n=[e.Diagnostics.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code];function i(t,r,n){if(!e.isInJSFile(t)){var i=e.getTokenAtPosition(t,n),a=e.findAncestor(i,e.isFunctionLikeDeclaration),o=null==a?void 0:a.type;if(o){var s=r.getTypeFromTypeNode(o),c=r.getAwaitedType(s)||r.getVoidType(),l=r.typeToTypeNode(c,o,void 0);return l?{returnTypeNode:o,returnType:s,promisedTypeNode:l,promisedType:c}:void 0}}}function a(t,r,n,i){t.replaceNode(r,n,e.factory.createTypeReferenceNode("Promise",[i]))}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var o=n.sourceFile,s=n.program,c=n.span,l=s.getTypeChecker(),u=i(o,s.getTypeChecker(),c.start);if(u){var d=u.returnTypeNode,p=u.returnType,f=u.promisedTypeNode,m=u.promisedType,g=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,d,f)}));return[t.createCodeFixAction(r,g,[e.Diagnostics.Replace_0_with_Promise_1,l.typeToString(p),l.typeToString(m)],r,e.Diagnostics.Fix_all_incorrect_return_type_of_an_async_functions)]}},getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,e.program.getTypeChecker(),r.start);n&&a(t,r.file,n.returnTypeNode,n.promisedTypeNode)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="disableJsDiagnostics",n="disableJsDiagnostics",i=e.mapDefined(Object.keys(e.Diagnostics),(function(t){var r=e.Diagnostics[t];return r.category===e.DiagnosticCategory.Error?r.code:void 0}));function a(t,r,n,i){var a=e.getLineAndCharacterOfPosition(r,n).line;i&&!e.tryAddToSet(i,a)||t.insertCommentBeforeLine(r,a,n," @ts-ignore")}t.registerCodeFix({errorCodes:i,getCodeActions:function(i){var o=i.sourceFile,s=i.program,c=i.span,l=i.host,u=i.formatContext;if(e.isInJSFile(o)&&e.isCheckJsEnabledForFile(o,s.getCompilerOptions())){var d=o.checkJsDirective?"":e.getNewLineOrDefaultFromHost(l,u.options),p=[t.createCodeFixActionWithoutFixAll(r,[t.createFileTextChanges(o.fileName,[e.createTextChange(o.checkJsDirective?e.createTextSpanFromBounds(o.checkJsDirective.pos,o.checkJsDirective.end):e.createTextSpan(0,0),"// @ts-nocheck"+d)])],e.Diagnostics.Disable_checking_for_this_file)];return e.textChanges.isValidLocationToAddComment(o,c.start)&&p.unshift(t.createCodeFixAction(r,e.textChanges.ChangeTracker.with(i,(function(e){return a(e,o,c.start)})),e.Diagnostics.Ignore_this_error_message,n,e.Diagnostics.Add_ts_ignore_to_all_error_messages)),p}},fixIds:[n],getAllCodeActions:function(r){var n=new e.Set;return t.codeFixAll(r,i,(function(t,r){e.textChanges.isValidLocationToAddComment(r.file,r.start)&&a(t,r.file,r.start,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){function r(t){return{trackSymbol:e.noop,moduleResolverHost:e.getModuleSpecifierResolverHost(t.program,t.host)}}function n(t,n,i,s,c,l,u){var p=t.getDeclarations();if(p&&p.length){var m=s.program.getTypeChecker(),g=e.getEmitScriptTarget(s.program.getCompilerOptions()),_=p[0],h=e.getSynthesizedDeepClone(e.getNameOfDeclaration(_),!1),y=function(t){if(4&t)return e.factory.createToken(123);if(16&t)return e.factory.createToken(122);return}(e.getEffectiveModifierFlags(_)),v=y?e.factory.createNodeArray([y]):void 0,b=m.getWidenedType(m.getTypeOfSymbolAtLocation(t,n)),k=!!(16777216&t.flags),x=!!(8388608&n.flags),E=e.getQuotePreference(i,c);switch(_.kind){case 163:case 164:var S=0===E?268435456:void 0,D=m.typeToTypeNode(b,n,S,r(s));if(l)(w=d(D,g))&&(D=w.typeNode,f(l,w.symbols));u(e.factory.createPropertyDeclaration(void 0,v,h,k?e.factory.createToken(57):void 0,D,void 0));break;case 168:case 169:var w,T=m.typeToTypeNode(b,n,void 0,r(s)),C=e.getAllAccessorDeclarations(p,_),A=C.secondAccessor?[C.firstAccessor,C.secondAccessor]:[C.firstAccessor];if(l)(w=d(T,g))&&(T=w.typeNode,f(l,w.symbols));for(var N=0,P=A;N<P.length;N++){var I=P[N];if(e.isGetAccessorDeclaration(I))u(e.factory.createGetAccessorDeclaration(void 0,v,h,e.emptyArray,T,x?void 0:o(E)));else{e.Debug.assertNode(I,e.isSetAccessorDeclaration,"The counterpart to a getter should be a setter");var F=e.getSetAccessorValueParameter(I),O=F&&e.isIdentifier(F.name)?e.idText(F.name):void 0;u(e.factory.createSetAccessorDeclaration(void 0,v,h,a(1,[O],[T],1,!1),x?void 0:o(E)))}}break;case 165:case 166:var R=m.getSignaturesOfType(b,0);if(!e.some(R))break;if(1===p.length){e.Debug.assert(1===R.length,"One declaration implies one signature"),j(E,R[0],v,h,x?void 0:o(E));break}for(var M=0,L=R;M<L.length;M++){j(E,L[M],e.getSynthesizedDeepClones(v,!1),e.getSynthesizedDeepClone(h,!1))}if(!x)if(p.length>R.length)j(E,m.getSignatureFromDeclaration(p[p.length-1]),v,h,o(E));else e.Debug.assert(p.length===R.length,"Declarations and signatures should match count"),u(function(t,r,n,i,s){for(var c=t[0],l=t[0].minArgumentCount,u=!1,d=0,p=t;d<p.length;d++){var f=p[d];l=Math.min(f.minArgumentCount,l),e.signatureHasRestParameter(f)&&(u=!0),f.parameters.length>=c.parameters.length&&(!e.signatureHasRestParameter(f)||e.signatureHasRestParameter(c))&&(c=f)}var m=c.parameters.length-(e.signatureHasRestParameter(c)?1:0),g=c.parameters.map((function(e){return e.name})),_=a(m,g,void 0,l,!1);if(u){var h=e.factory.createArrayTypeNode(e.factory.createKeywordTypeNode(129)),y=e.factory.createParameterDeclaration(void 0,void 0,e.factory.createToken(25),g[m]||"rest",m>=l?e.factory.createToken(57):void 0,h,void 0);_.push(y)}return function(t,r,n,i,a,s,c){return e.factory.createMethodDeclaration(void 0,t,void 0,r,n?e.factory.createToken(57):void 0,i,a,s,o(c))}(i,r,n,void 0,_,void 0,s)}(R,h,k,v,E))}}function j(t,i,a,o,c){var p=function(t,n,i,a,o,s,c,l,u){var p=t.program,m=p.getTypeChecker(),g=e.getEmitScriptTarget(p.getCompilerOptions()),_=1073742081|(0===n?268435456:0),h=m.signatureToSignatureDeclaration(i,166,a,_,r(t));if(!h)return;var y=h.typeParameters,v=h.parameters,b=h.type;if(u){if(y){var k=e.sameMap(y,(function(t){var r,n=t.constraint,i=t.default;n&&((r=d(n,g))&&(n=r.typeNode,f(u,r.symbols)));i&&((r=d(i,g))&&(i=r.typeNode,f(u,r.symbols)));return e.factory.updateTypeParameterDeclaration(t,t.name,n,i)}));y!==k&&(y=e.setTextRange(e.factory.createNodeArray(k,y.hasTrailingComma),y))}var x=e.sameMap(v,(function(t){var r=d(t.type,g),n=t.type;return r&&(n=r.typeNode,f(u,r.symbols)),e.factory.updateParameterDeclaration(t,t.decorators,t.modifiers,t.dotDotDotToken,t.name,t.questionToken,n,t.initializer)}));if(v!==x&&(v=e.setTextRange(e.factory.createNodeArray(x,v.hasTrailingComma),v)),b){var E=d(b,g);E&&(b=E.typeNode,f(u,E.symbols))}}return e.factory.updateMethodDeclaration(h,void 0,o,h.asteriskToken,s,c?e.factory.createToken(57):void 0,y,v,b,l)}(s,t,i,n,a,o,k,c,l);p&&u(p)}}function i(t,r,n,i,a,o,s){var c=t.typeToTypeNode(n,i,o,s);if(c&&e.isImportTypeNode(c)){var l=d(c,a);if(l)return f(r,l.symbols),l.typeNode}return c}function a(t,r,n,i,a){for(var o=[],s=0;s<t;s++){var c=e.factory.createParameterDeclaration(void 0,void 0,void 0,r&&r[s]||"arg"+s,void 0!==i&&s>=i?e.factory.createToken(57):void 0,a?void 0:n&&n[s]||e.factory.createKeywordTypeNode(129),void 0);o.push(c)}return o}function o(t){return s(e.Diagnostics.Method_not_implemented.message,t)}function s(t,r){return e.factory.createBlock([e.factory.createThrowStatement(e.factory.createNewExpression(e.factory.createIdentifier("Error"),void 0,[e.factory.createStringLiteral(t,0===r)]))],!0)}function c(t,r,n){var i=e.getTsConfigObjectLiteralExpression(r);if(i){var a=u(i,"compilerOptions");if(void 0!==a){var o=a.initializer;if(e.isObjectLiteralExpression(o))for(var s=0,c=n;s<c.length;s++){var d=c[s],p=d[0],f=d[1],m=u(o,p);void 0===m?t.insertNodeAtObjectStart(r,o,l(p,f)):t.replaceNode(r,m.initializer,f)}}else t.insertNodeAtObjectStart(r,i,l("compilerOptions",e.factory.createObjectLiteralExpression(n.map((function(e){return l(e[0],e[1])})),!0)))}}function l(t,r){return e.factory.createPropertyAssignment(e.factory.createStringLiteral(t),r)}function u(t,r){return e.find(t.properties,(function(t){return e.isPropertyAssignment(t)&&!!t.name&&e.isStringLiteral(t.name)&&t.name.text===r}))}function d(t,r){var n,i=e.visitNode(t,(function t(i){var a;if(e.isLiteralImportTypeNode(i)&&i.qualifier){var o=e.getFirstIdentifier(i.qualifier),s=e.getNameForExportedSymbol(o.symbol,r),c=s!==o.text?p(i.qualifier,e.factory.createIdentifier(s)):i.qualifier;n=e.append(n,o.symbol);var l=null===(a=i.typeArguments)||void 0===a?void 0:a.map(t);return e.factory.createTypeReferenceNode(c,l)}return e.visitEachChild(i,t,e.nullTransformationContext)}));if(n&&i)return{typeNode:i,symbols:n}}function p(t,r){return 78===t.kind?r:e.factory.createQualifiedName(p(t.left,r),t.right)}function f(e,t){t.forEach((function(t){return e.addImportFromExportedSymbol(t,!0)}))}t.createMissingMemberNodes=function(e,t,r,i,a,o,s){for(var c=e.symbol.members,l=0,u=t;l<u.length;l++){var d=u[l];c.has(d.escapedName)||n(d,e,r,i,a,o,s)}},t.getNoopSymbolTrackerWithResolver=r,t.createSignatureDeclarationFromCallExpression=function(t,n,c,l,u,d,p){var f=e.getQuotePreference(n.sourceFile,n.preferences),m=e.getEmitScriptTarget(n.program.getCompilerOptions()),g=r(n),_=n.program.getTypeChecker(),h=e.isInJSFile(p),y=l.typeArguments,v=l.arguments,b=l.parent,k=h?void 0:_.getContextualType(l),x=e.map(v,(function(t){return e.isIdentifier(t)?t.text:e.isPropertyAccessExpression(t)&&e.isIdentifier(t.name)?t.name.text:void 0})),E=h?[]:e.map(v,(function(e){return i(_,c,_.getBaseTypeOfLiteralType(_.getTypeAtLocation(e)),p,m,void 0,g)})),S=d?e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(d)):void 0,D=e.isYieldExpression(b)?e.factory.createToken(41):void 0,w=h||void 0===y?void 0:e.map(y,(function(t,r){return e.factory.createTypeParameterDeclaration(84+y.length-1<=90?String.fromCharCode(84+r):"T"+r)})),T=a(v.length,x,E,void 0,h),C=h||void 0===k?void 0:_.typeToTypeNode(k,p,void 0,g);return 166===t?e.factory.createMethodDeclaration(void 0,S,D,u,void 0,w,T,C,e.isInterfaceDeclaration(p)?void 0:o(f)):e.factory.createFunctionDeclaration(void 0,S,D,u,w,T,C,s(e.Diagnostics.Function_not_implemented.message,f))},t.typeToAutoImportableTypeNode=i,t.createStubbedBody=s,t.setJsonCompilerOptionValues=c,t.setJsonCompilerOptionValue=function(e,t,r,n){c(e,t,[[r,n]])},t.createJsonPropertyAssignment=l,t.findJsonProperty=u,t.tryGetAutoImportableReferenceFromTypeNode=d,t.importSymbols=f}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){function r(t){return e.isParameterPropertyDeclaration(t,t.parent)||e.isPropertyDeclaration(t)||e.isPropertyAssignment(t)}function n(t,r){return e.isIdentifier(r)?e.factory.createIdentifier(t):e.factory.createStringLiteral(t)}function a(t,r,n){var i=r?n.name:e.factory.createThis();return e.isIdentifier(t)?e.factory.createPropertyAccessExpression(i,t):e.factory.createElementAccessExpression(i,e.factory.createStringLiteralFromNode(t))}function o(t){return t?e.factory.createNodeArray(e.factory.createModifiersFromModifierFlags(t)):void 0}function s(t,i,a,o,s){void 0===s&&(s=!0);var c=e.getTokenAtPosition(t,a),u=a===o&&s,d=e.findAncestor(c.parent,r);if(!d||!e.nodeOverlapsWithStartEnd(d.name,t,a,o)&&!u)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_property_for_which_to_generate_accessor)};if(!function(t){return e.isIdentifier(t)||e.isStringLiteral(t)}(d.name))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Name_is_not_valid)};if(124!=(124|e.getEffectiveModifierFlags(d)))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Can_only_convert_property_with_modifier)};var p=d.name.text,f=e.startsWithUnderscore(p),m=n(f?p:e.getUniqueName("_"+p,t),d.name),g=n(f?e.getUniqueName(p.substring(1),t):p,d.name);return{isStatic:e.hasStaticModifier(d),isReadonly:e.hasEffectiveReadonlyModifier(d),type:l(d,i),container:161===d.kind?d.parent.parent:d.parent,originalName:d.name.text,declaration:d,fieldName:m,accessorName:g,renameAccessor:f}}function c(t,r,n,i,a){e.isParameterPropertyDeclaration(i,i.parent)?t.insertNodeAtClassStart(r,a,n):e.isPropertyAssignment(i)?t.insertNodeAfterComma(r,i,n):t.insertNodeAfter(r,i,n)}function l(t,r){var n=e.getTypeAnnotationNode(t);if(e.isPropertyDeclaration(t)&&n&&t.questionToken){var a=r.getTypeChecker(),o=a.getTypeFromTypeNode(n);if(!a.isTypeAssignableTo(a.getUndefinedType(),o)){var s=e.isUnionTypeNode(n)?n.types:[n];return e.factory.createUnionTypeNode(i(i([],s),[e.factory.createKeywordTypeNode(151)]))}}return n}t.generateAccessorFromProperty=function(t,r,n,i,l,u){var d=s(t,r,n,i);if(d&&!e.refactor.isRefactorErrorInfo(d)){var p,f,m=e.textChanges.ChangeTracker.fromContext(l),g=d.isStatic,_=d.isReadonly,h=d.fieldName,y=d.accessorName,v=d.originalName,b=d.type,k=d.container,x=d.declaration;if(e.suppressLeadingAndTrailingTrivia(h),e.suppressLeadingAndTrailingTrivia(y),e.suppressLeadingAndTrailingTrivia(x),e.suppressLeadingAndTrailingTrivia(k),e.isClassLike(k)){var E=e.getEffectiveModifierFlags(x);if(e.isSourceFileJS(t)){var S=o(E);p=S,f=S}else p=o(function(e){e&=-65,e&=-9,16&e||(e|=4);return e}(E)),f=o(function(e){return e&=-5,e&=-17,e|=8,e}(E))}!function(t,r,n,i,a,o){e.isPropertyDeclaration(n)?function(t,r,n,i,a,o){var s=e.factory.updatePropertyDeclaration(n,n.decorators,o,a,n.questionToken||n.exclamationToken,i,n.initializer);t.replaceNode(r,n,s)}(t,r,n,i,a,o):e.isPropertyAssignment(n)?function(t,r,n,i){var a=e.factory.updatePropertyAssignment(n,i,n.initializer);t.replacePropertyAssignment(r,n,a)}(t,r,n,a):t.replaceNode(r,n,e.factory.updateParameterDeclaration(n,n.decorators,o,n.dotDotDotToken,e.cast(a,e.isIdentifier),n.questionToken,n.type,n.initializer))}(m,t,x,b,h,f);var D=function(t,r,n,i,o,s){return e.factory.createGetAccessorDeclaration(void 0,i,r,void 0,n,e.factory.createBlock([e.factory.createReturnStatement(a(t,o,s))],!0))}(h,y,b,p,g,k);if(e.suppressLeadingAndTrailingTrivia(D),c(m,t,D,x,k),_){var w=e.getFirstConstructorWithBody(k);w&&function(t,r,n,i,a){if(!n.body)return;n.body.forEachChild((function n(o){e.isElementAccessExpression(o)&&108===o.expression.kind&&e.isStringLiteral(o.argumentExpression)&&o.argumentExpression.text===a&&e.isWriteAccess(o)&&t.replaceNode(r,o.argumentExpression,e.factory.createStringLiteral(i)),e.isPropertyAccessExpression(o)&&108===o.expression.kind&&o.name.text===a&&e.isWriteAccess(o)&&t.replaceNode(r,o.name,e.factory.createIdentifier(i)),e.isFunctionLike(o)||e.isClassLike(o)||o.forEachChild(n)}))}(m,t,w,h.text,v)}else{var T=function(t,r,n,i,o,s){return e.factory.createSetAccessorDeclaration(void 0,i,r,[e.factory.createParameterDeclaration(void 0,void 0,void 0,e.factory.createIdentifier("value"),void 0,n)],e.factory.createBlock([e.factory.createExpressionStatement(e.factory.createAssignment(a(t,o,s),e.factory.createIdentifier("value")))],!0))}(h,y,b,p,g,k);e.suppressLeadingAndTrailingTrivia(T),c(m,t,T,x,k)}return m.getChanges()}},t.getAccessorConvertiblePropertyAtPosition=s,t.getAllSupers=function(t,r){for(var n=[];t;){var i=e.getClassExtendsHeritageElement(t),a=i&&r.getSymbolAtLocation(i.expression);if(!a)break;var o=2097152&a.flags?r.getAliasedSymbol(a):a,s=e.find(o.declarations,e.isClassLike);if(!s)break;n.push(s),t=s}return n}}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="invalidImportSyntax";function n(n,i,a,o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return e.replaceNode(i,a,o)}));return t.createCodeFixActionWithoutFixAll(r,s,[e.Diagnostics.Replace_import_with_0,s[0].textChanges[0].newText])}function i(i,a){var o=i.program.getTypeChecker().getTypeAtLocation(a);if(!o.symbol||!o.symbol.originatingImport)return[];var s=[],c=o.symbol.originatingImport;if(e.isImportCall(c)||e.addRange(s,function(t,r){var i=e.getSourceFileOfNode(r),a=e.getNamespaceDeclarationNode(r),o=t.program.getCompilerOptions(),s=[];return s.push(n(t,i,r,e.makeImport(a.name,void 0,r.moduleSpecifier,e.getQuotePreference(i,t.preferences)))),e.getEmitModuleKind(o)===e.ModuleKind.CommonJS&&s.push(n(t,i,r,e.factory.createImportEqualsDeclaration(void 0,void 0,!1,a.name,e.factory.createExternalModuleReference(r.moduleSpecifier)))),s}(i,c)),e.isExpression(a)&&(!e.isNamedDeclaration(a.parent)||a.parent.name!==a)){var l=i.sourceFile,u=e.textChanges.ChangeTracker.with(i,(function(t){return t.replaceNode(l,a,e.factory.createPropertyAccessExpression(a,"default"),{})}));s.push(t.createCodeFixActionWithoutFixAll(r,u,e.Diagnostics.Use_synthetic_default_member))}return s}t.registerCodeFix({errorCodes:[e.Diagnostics.This_expression_is_not_callable.code,e.Diagnostics.This_expression_is_not_constructable.code],getCodeActions:function(t){var r=t.sourceFile,n=e.Diagnostics.This_expression_is_not_callable.code===t.errorCode?204:205,a=e.findAncestor(e.getTokenAtPosition(r,t.span.start),(function(e){return e.kind===n}));if(!a)return[];var o=a.expression;return i(t,o)}}),t.registerCodeFix({errorCodes:[e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,e.Diagnostics.Type_predicate_0_is_not_assignable_to_1.code,e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_string_index_type_2.code,e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2.code,e.Diagnostics.Numeric_index_type_0_is_not_assignable_to_string_index_type_1.code,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_type_2.code,e.Diagnostics.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,e.Diagnostics.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:function(t){var r=t.sourceFile,n=e.findAncestor(e.getTokenAtPosition(r,t.span.start),(function(e){return e.getStart()===t.span.start&&e.getEnd()===t.span.start+t.span.length}));if(!n)return[];return i(t,n)}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="strictClassInitialization",n="addMissingPropertyDefiniteAssignmentAssertions",i="addMissingPropertyUndefinedType",a="addMissingPropertyInitializer",o=[e.Diagnostics.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];function s(t,r){var n=e.getTokenAtPosition(t,r);return e.isIdentifier(n)?e.cast(n.parent,e.isPropertyDeclaration):void 0}function c(i,a){var o=e.textChanges.ChangeTracker.with(i,(function(e){return l(e,i.sourceFile,a)}));return t.createCodeFixAction(r,o,[e.Diagnostics.Add_definite_assignment_assertion_to_property_0,a.getText()],n,e.Diagnostics.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function l(t,r,n){var i=e.factory.updatePropertyDeclaration(n,n.decorators,n.modifiers,n.name,e.factory.createToken(53),n.type,n.initializer);t.replaceNode(r,n,i)}function u(n,a){var o=e.textChanges.ChangeTracker.with(n,(function(e){return d(e,n.sourceFile,a)}));return t.createCodeFixAction(r,o,[e.Diagnostics.Add_undefined_type_to_property_0,a.name.getText()],i,e.Diagnostics.Add_undefined_type_to_all_uninitialized_properties)}function d(t,r,n){var i=e.factory.createKeywordTypeNode(151),a=n.type,o=e.isUnionTypeNode(a)?a.types.concat(i):[a,i];t.replaceNode(r,a,e.factory.createUnionTypeNode(o))}function p(t,r,n,i){var a=e.factory.updatePropertyDeclaration(n,n.decorators,n.modifiers,n.name,n.questionToken,n.type,i);t.replaceNode(r,n,a)}function f(e,t){return m(e,e.getTypeFromTypeNode(t.type))}function m(t,r){if(512&r.flags)return r===t.getFalseType()||r===t.getFalseType(!0)?e.factory.createFalse():e.factory.createTrue();if(r.isStringLiteral())return e.factory.createStringLiteral(r.value);if(r.isNumberLiteral())return e.factory.createNumericLiteral(r.value);if(2048&r.flags)return e.factory.createBigIntLiteral(r.value);if(r.isUnion())return e.firstDefined(r.types,(function(e){return m(t,e)}));if(r.isClass()){var n=e.getClassLikeDeclarationOfSymbol(r.symbol);if(!n||e.hasSyntacticModifier(n,128))return;var i=e.getFirstConstructorWithBody(n);if(i&&i.parameters.length)return;return e.factory.createNewExpression(e.factory.createIdentifier(r.symbol.name),void 0,void 0)}return t.isArrayLikeType(r)?e.factory.createArrayLiteralExpression():void 0}t.registerCodeFix({errorCodes:o,getCodeActions:function(n){var i=s(n.sourceFile,n.span.start);if(i){var o=[u(n,i),c(n,i)];return e.append(o,function(n,i){var o=n.program.getTypeChecker(),s=f(o,i);if(!s)return;var c=e.textChanges.ChangeTracker.with(n,(function(e){return p(e,n.sourceFile,i,s)}));return t.createCodeFixAction(r,c,[e.Diagnostics.Add_initializer_to_property_0,i.name.getText()],a,e.Diagnostics.Add_initializers_to_all_uninitialized_properties)}(n,i)),o}},fixIds:[n,i,a],getAllCodeActions:function(r){return t.codeFixAll(r,o,(function(t,o){var c=s(o.file,o.start);if(c)switch(r.fixId){case n:l(t,o.file,c);break;case i:d(t,o.file,c);break;case a:var u=f(r.program.getTypeChecker(),c);if(!u)return;p(t,o.file,c,u);break;default:e.Debug.fail(JSON.stringify(r.fixId))}}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="requireInTs",n=[e.Diagnostics.require_call_may_be_converted_to_an_import.code];function i(t,r,n){var i=n.allowSyntheticDefaults,a=n.defaultImportName,o=n.namedImports,s=n.statement,c=n.required;t.replaceNode(r,s,a&&!i?e.factory.createImportEqualsDeclaration(void 0,void 0,!1,a,e.factory.createExternalModuleReference(c)):e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,a,o),c))}function a(t,r,n){var i=e.getTokenAtPosition(t,n).parent;if(!e.isRequireCall(i,!0))throw e.Debug.failBadSyntaxKind(i);var a=e.cast(i.parent,e.isVariableDeclaration),o=e.tryCast(a.name,e.isIdentifier),s=e.isObjectBindingPattern(a.name)?function(t){for(var r=[],n=0,i=t.elements;n<i.length;n++){var a=i[n];if(!e.isIdentifier(a.name)||a.initializer)return;r.push(e.factory.createImportSpecifier(e.tryCast(a.propertyName,e.isIdentifier),a.name))}if(r.length)return e.factory.createNamedImports(r)}(a.name):void 0;if(o||s)return{allowSyntheticDefaults:e.getAllowSyntheticDefaultImports(r.getCompilerOptions()),defaultImportName:o,namedImports:s,statement:e.cast(a.parent.parent,e.isVariableStatement),required:e.first(i.arguments)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=a(n.sourceFile,n.program,n.span.start);if(o){var s=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,o)}));return[t.createCodeFixAction(r,s,e.Diagnostics.Convert_require_to_import,r,e.Diagnostics.Convert_all_require_to_import)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=a(r.file,e.program,r.start);n&&i(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="useDefaultImport",n=[e.Diagnostics.Import_may_be_converted_to_a_default_import.code];function i(t,r){var n=e.getTokenAtPosition(t,r);if(e.isIdentifier(n)){var i=n.parent;if(e.isImportEqualsDeclaration(i)&&e.isExternalModuleReference(i.moduleReference))return{importNode:i,name:n,moduleSpecifier:i.moduleReference.expression};if(e.isNamespaceImport(i)){var a=i.parent.parent;return{importNode:a,name:n,moduleSpecifier:a.moduleSpecifier}}}}function a(t,r,n,i){t.replaceNode(r,n.importNode,e.makeImport(n.name,void 0,n.moduleSpecifier,e.getQuotePreference(r,i)))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span.start,c=i(o,s);if(c){var l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c,n.preferences)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Convert_to_default_import,r,e.Diagnostics.Convert_all_to_default_imports)]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,r.start);n&&a(t,r.file,n,e.preferences)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="useBigintLiteral",n=[e.Diagnostics.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code];function i(t,r,n){var i=e.tryCast(e.getTokenAtPosition(r,n.start),e.isNumericLiteral);if(i){var a=i.getText(r)+"n";t.replaceNode(r,i,e.factory.createBigIntLiteral(a))}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Convert_to_a_bigint_numeric_literal,r,e.Diagnostics.Convert_all_to_bigint_numeric_literals)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixAddModuleReferTypeMissingTypeof",n=[e.Diagnostics.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];function i(t,r){var n=e.getTokenAtPosition(t,r);return e.Debug.assert(100===n.kind,"This token should be an ImportKeyword"),e.Debug.assert(196===n.parent.kind,"Token parent should be an ImportType"),n.parent}function a(t,r,n){var i=e.factory.updateImportTypeNode(n,n.argument,n.qualifier,n.typeArguments,!0);t.replaceNode(r,n,i)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=n.span,c=i(o,s.start),l=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,c)}));return[t.createCodeFixAction(r,l,e.Diagnostics.Add_missing_typeof,r,e.Diagnostics.Add_missing_typeof)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){return a(t,e.sourceFile,i(r.file,r.start))}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="wrapJsxInFragment",n=[e.Diagnostics.JSX_expressions_must_have_one_parent_element.code];function i(t,r){var n=e.getTokenAtPosition(t,r).parent.parent;if((e.isBinaryExpression(n)||(n=n.parent,e.isBinaryExpression(n)))&&e.nodeIsMissing(n.operatorToken))return n}function a(t,r,n){var i=function(t){var r=[],n=t;for(;;){if(e.isBinaryExpression(n)&&e.nodeIsMissing(n.operatorToken)&&27===n.operatorToken.kind){if(r.push(n.left),e.isJsxChild(n.right))return r.push(n.right),r;if(e.isBinaryExpression(n.right)){n=n.right;continue}return}return}}(n);i&&t.replaceNode(r,n,e.factory.createJsxFragment(e.factory.createJsxOpeningFragment(),i,e.factory.createJsxJsxClosingFragment()))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.program.getCompilerOptions().jsx;if(2===o||3===o){var s=n.sourceFile,c=n.span,l=i(s,c.start);if(l){var u=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,s,l)}));return[t.createCodeFixAction(r,u,e.Diagnostics.Wrap_in_JSX_fragment,r,e.Diagnostics.Wrap_all_unparented_JSX_in_JSX_fragment)]}}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(e.sourceFile,r.start);n&&a(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixConvertToMappedObjectType",n=[e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead.code];function a(t,r){var n=e.getTokenAtPosition(t,r),i=e.cast(n.parent.parent,e.isIndexSignatureDeclaration);if(!e.isClassDeclaration(i.parent))return{indexSignature:i,container:e.isInterfaceDeclaration(i.parent)?i.parent:e.cast(i.parent.parent,e.isTypeAliasDeclaration)}}function o(t,r,n){var a,o,s=n.indexSignature,c=n.container,l=(e.isInterfaceDeclaration(c)?c.members:c.type.members).filter((function(t){return!e.isIndexSignatureDeclaration(t)})),u=e.first(s.parameters),d=e.factory.createTypeParameterDeclaration(e.cast(u.name,e.isIdentifier),u.type),p=e.factory.createMappedTypeNode(e.hasEffectiveReadonlyModifier(s)?e.factory.createModifier(143):void 0,d,void 0,s.questionToken,s.type),f=e.factory.createIntersectionTypeNode(i(i(i([],e.getAllSuperTypeNodes(c)),[p]),l.length?[e.factory.createTypeLiteralNode(l)]:e.emptyArray));t.replaceNode(r,c,(a=c,o=f,e.factory.createTypeAliasDeclaration(a.decorators,a.modifiers,a.name,a.typeParameters,o)))}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,s=n.span,c=a(i,s.start);if(c){var l=e.textChanges.ChangeTracker.with(n,(function(e){return o(e,i,c)})),u=e.idText(c.container.name);return[t.createCodeFixAction(r,l,[e.Diagnostics.Convert_0_to_mapped_object_type,u],r,[e.Diagnostics.Convert_0_to_mapped_object_type,u])]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){var r=a(t.file,t.start);r&&o(e,t.file,r)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="removeAccidentalCallParentheses",n=[e.Diagnostics.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=e.findAncestor(e.getTokenAtPosition(n.sourceFile,n.span.start),e.isCallExpression);if(i){var a=e.textChanges.ChangeTracker.with(n,(function(e){e.deleteRange(n.sourceFile,{pos:i.expression.end,end:i.end})}));return[t.createCodeFixActionWithoutFixAll(r,a,e.Diagnostics.Remove_parentheses)]}},fixIds:[r]})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="removeUnnecessaryAwait",n=[e.Diagnostics.await_has_no_effect_on_the_type_of_this_expression.code];function i(t,r,n){var i=e.tryCast(e.getTokenAtPosition(r,n.start),(function(e){return 131===e.kind})),a=i&&e.tryCast(i.parent,e.isAwaitExpression);if(a){var o=a;if(e.isParenthesizedExpression(a.parent)){var s=e.getLeftmostExpression(a.expression,!1);if(e.isIdentifier(s)){var c=e.findPrecedingToken(a.parent.pos,r);c&&103!==c.kind&&(o=a.parent)}}t.replaceNode(r,o,a.expression)}}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span)}));if(a.length>0)return[t.createCodeFixAction(r,a,e.Diagnostics.Remove_unnecessary_await,r,e.Diagnostics.Remove_all_unnecessary_uses_of_await)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(e,t){return i(e,t.file,t)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r=[e.Diagnostics.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],n="splitTypeOnlyImport";function i(t,r){return e.findAncestor(e.getTokenAtPosition(t,r.start),e.isImportDeclaration)}function a(t,r,n){if(r){var i=e.Debug.checkDefined(r.importClause);t.replaceNode(n.sourceFile,r,e.factory.updateImportDeclaration(r,r.decorators,r.modifiers,e.factory.updateImportClause(i,i.isTypeOnly,i.name,void 0),r.moduleSpecifier)),t.insertNodeAfter(n.sourceFile,r,e.factory.createImportDeclaration(void 0,void 0,e.factory.updateImportClause(i,i.isTypeOnly,void 0,i.namedBindings),r.moduleSpecifier))}}t.registerCodeFix({errorCodes:r,fixIds:[n],getCodeActions:function(r){var o=e.textChanges.ChangeTracker.with(r,(function(e){return a(e,i(r.sourceFile,r.span),r)}));if(o.length)return[t.createCodeFixAction(n,o,e.Diagnostics.Split_into_two_separate_import_declarations,n,e.Diagnostics.Split_all_invalid_type_only_imports)]},getAllCodeActions:function(e){return t.codeFixAll(e,r,(function(t,r){a(t,i(e.sourceFile,r),e)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixConvertConstToLet",n=[e.Diagnostics.Cannot_assign_to_0_because_it_is_a_constant.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.span,o=n.program,s=function(t,r,n){var i=e.getTokenAtPosition(t,r),a=n.getTypeChecker(),o=a.getSymbolAtLocation(i);if(o)return o.valueDeclaration.parent.parent}(i,a.start,o),c=e.textChanges.ChangeTracker.with(n,(function(e){return function(e,t,r){if(!r)return;var n=r.getStart();e.replaceRangeWithText(t,{pos:n,end:n+5},"let")}(e,i,s)}));return[t.createCodeFixAction(r,c,e.Diagnostics.Convert_const_to_let,r,e.Diagnostics.Convert_const_to_let)]},fixIds:[r]})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="fixExpectedComma",n=[e.Diagnostics._0_expected.code];function i(t,r,n){var i=e.getTokenAtPosition(t,r);return 26===i.kind&&i.parent&&(e.isObjectLiteralExpression(i.parent)||e.isArrayLiteralExpression(i.parent))?{node:i}:void 0}function a(t,r,n){var i=n.node,a=e.factory.createToken(27);t.replaceNode(r,i,a)}t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var o=n.sourceFile,s=i(o,n.span.start,n.errorCode);if(s){var c=e.textChanges.ChangeTracker.with(n,(function(e){return a(e,o,s)}));return[t.createCodeFixAction(r,c,[e.Diagnostics.Change_0_to_1,";",","],r,[e.Diagnostics.Change_0_to_1,";",","])]}},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,(function(t,r){var n=i(r.file,r.start,r.code);n&&a(t,e.sourceFile,n)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="addVoidToPromise",n=[e.Diagnostics.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code];function i(t,r,n,i,a){var o=e.getTokenAtPosition(r,n.start);if(e.isIdentifier(o)&&e.isCallExpression(o.parent)&&o.parent.expression===o&&0===o.parent.arguments.length){var s=i.getTypeChecker(),c=s.getSymbolAtLocation(o),l=null==c?void 0:c.valueDeclaration;if(l&&e.isParameter(l)&&e.isNewExpression(l.parent.parent)&&!(null==a?void 0:a.has(l))){null==a||a.add(l);var u=function(t){var r;if(!e.isInJSFile(t))return t.typeArguments;if(e.isParenthesizedExpression(t.parent)){var n=null===(r=e.getJSDocTypeTag(t.parent))||void 0===r?void 0:r.typeExpression.type;if(n&&e.isTypeReferenceNode(n)&&e.isIdentifier(n.typeName)&&"Promise"===e.idText(n.typeName))return n.typeArguments}}(l.parent.parent);if(e.some(u)){var d=u[0],p=!e.isUnionTypeNode(d)&&!e.isParenthesizedTypeNode(d)&&e.isParenthesizedTypeNode(e.factory.createUnionTypeNode([d,e.factory.createKeywordTypeNode(114)]).types[0]);p&&t.insertText(r,d.pos,"("),t.insertText(r,d.end,p?") | void":" | void")}else{var f=s.getResolvedSignature(o.parent),m=null==f?void 0:f.parameters[0],g=m&&s.getTypeOfSymbolAtLocation(m,l.parent.parent);e.isInJSFile(l)?(!g||3&g.flags)&&(t.insertText(r,l.parent.parent.end,")"),t.insertText(r,e.skipTrivia(r.text,l.parent.parent.pos),"/** @type {Promise<void>} */(")):(!g||2&g.flags)&&t.insertText(r,l.parent.parent.expression.end,"<void>")}}}}t.registerCodeFix({errorCodes:n,fixIds:[r],getCodeActions:function(n){var a=e.textChanges.ChangeTracker.with(n,(function(e){return i(e,n.sourceFile,n.span,n.program)}));if(a.length>0)return[t.createCodeFixAction("addVoidToPromise",a,e.Diagnostics.Add_void_to_Promise_resolved_without_a_value,r,e.Diagnostics.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions:function(r){return t.codeFixAll(r,n,(function(t,n){return i(t,n.file,n,r.program,new e.Set)}))}})}(e.codefix||(e.codefix={}))}(d||(d={})),function(e){!function(t){var r="Convert export",n={name:"Convert default export to named export",description:e.Diagnostics.Convert_default_export_to_named_export.message,kind:"refactor.rewrite.export.named"},i={name:"Convert named export to default export",description:e.Diagnostics.Convert_named_export_to_default_export.message,kind:"refactor.rewrite.export.default"};function o(t,r){void 0===r&&(r=!0);var n=t.file,i=e.getRefactorContextSpan(t),a=e.getTokenAtPosition(n,i.start),o=a.parent&&1&e.getSyntacticModifierFlags(a.parent)&&r?a.parent:e.getParentNodeInSpan(a,n,i);if(!(o&&(e.isSourceFile(o.parent)||e.isModuleBlock(o.parent)&&e.isAmbientModule(o.parent.parent))))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_export_statement)};var s=e.isSourceFile(o.parent)?o.parent.symbol:o.parent.parent.symbol,c=e.getSyntacticModifierFlags(o),l=!!(512&c);if(!(1&c)||!l&&s.exports.has("default"))return{error:e.getLocaleSpecificMessage(e.Diagnostics.This_file_already_has_a_default_export)};switch(o.kind){case 253:case 254:case 256:case 258:case 257:case 259:var u=o;return u.name&&e.isIdentifier(u.name)?{exportNode:u,exportName:u.name,wasDefault:l,exportingModuleSymbol:s}:void 0;case 234:var d=o;if(!(2&d.declarationList.flags)||1!==d.declarationList.declarations.length)return;var p=e.first(d.declarationList.declarations);if(!p.initializer)return;return e.Debug.assert(!l,"Can't have a default flag here"),e.isIdentifier(p.name)?{exportNode:d,exportName:p.name,wasDefault:l,exportingModuleSymbol:s}:void 0;default:return}}function s(t,r){return e.factory.createImportSpecifier(t===r?void 0:e.factory.createIdentifier(t),e.factory.createIdentifier(r))}t.registerRefactor(r,{kinds:[n.kind,i.kind],getAvailableActions:function(s){var c=o(s,"invoked"===s.triggerReason);if(!c)return e.emptyArray;if(!t.isRefactorErrorInfo(c)){var l=c.wasDefault?n:i;return[{name:r,description:l.description,actions:[l]}]}return s.preferences.provideRefactorNotApplicableReason?[{name:r,description:e.Diagnostics.Convert_default_export_to_named_export.message,actions:[a(a({},n),{notApplicableReason:c.error}),a(a({},i),{notApplicableReason:c.error})]}]:e.emptyArray},getEditsForAction:function(r,a){e.Debug.assert(a===n.name||a===i.name,"Unexpected action name");var c=o(r);e.Debug.assert(c&&!t.isRefactorErrorInfo(c),"Expected applicable refactor info");var l=e.textChanges.ChangeTracker.with(r,(function(t){return function(t,r,n,i,a){(function(t,r,n,i){var a=r.wasDefault,o=r.exportNode,s=r.exportName;if(a)n.delete(t,e.Debug.checkDefined(e.findModifier(o,88),"Should find a default keyword in modifier list"));else{var c=e.Debug.checkDefined(e.findModifier(o,93),"Should find an export keyword in modifier list");switch(o.kind){case 253:case 254:case 256:n.insertNodeAfter(t,c,e.factory.createToken(88));break;case 234:var l=e.first(o.declarationList.declarations);if(!e.FindAllReferences.Core.isSymbolReferencedInFile(s,i,t)&&!l.type){n.replaceNode(t,o,e.factory.createExportDefault(e.Debug.checkDefined(l.initializer,"Initializer was previously known to be present")));break}case 258:case 257:case 259:n.deleteModifier(t,c),n.insertNodeAfter(t,o,e.factory.createExportDefault(e.factory.createIdentifier(s.text)));break;default:e.Debug.assertNever(o,"Unexpected exportNode kind "+o.kind)}}})(t,n,i,r.getTypeChecker()),function(t,r,n,i){var a=r.wasDefault,o=r.exportName,c=r.exportingModuleSymbol,l=t.getTypeChecker(),u=e.Debug.checkDefined(l.getSymbolAtLocation(o),"Export name should resolve to a symbol");e.FindAllReferences.Core.eachExportReference(t.getSourceFiles(),l,i,u,c,o.text,a,(function(t){var r=t.getSourceFile();a?function(t,r,n,i){var a=r.parent;switch(a.kind){case 202:n.replaceNode(t,r,e.factory.createIdentifier(i));break;case 268:case 273:var o=a;n.replaceNode(t,o,s(i,o.name.text));break;case 265:var c=a;e.Debug.assert(c.name===r,"Import clause name should match provided ref");o=s(i,r.text);var l=c.namedBindings;if(l)if(266===l.kind){n.deleteRange(t,{pos:r.getStart(t),end:l.getStart(t)});var u=e.isStringLiteral(c.parent.moduleSpecifier)?e.quotePreferenceFromString(c.parent.moduleSpecifier,t):1,d=e.makeImport(void 0,[s(i,r.text)],c.parent.moduleSpecifier,u);n.insertNodeAfter(t,c.parent,d)}else n.delete(t,r),n.insertNodeAtEndOfList(t,l.elements,o);else n.replaceNode(t,r,e.factory.createNamedImports([o]));break;default:e.Debug.failBadSyntaxKind(a)}}(r,t,n,o.text):function(t,r,n){var i=r.parent;switch(i.kind){case 202:n.replaceNode(t,r,e.factory.createIdentifier("default"));break;case 268:var a=e.factory.createIdentifier(i.name.text);1===i.parent.elements.length?n.replaceNode(t,i.parent,a):(n.delete(t,i),n.insertNodeBefore(t,i.parent,a));break;case 273:n.replaceNode(t,i,(o="default",s=i.name.text,e.factory.createExportSpecifier(o===s?void 0:e.factory.createIdentifier(o),e.factory.createIdentifier(s))));break;default:e.Debug.assertNever(i,"Unexpected parent kind "+i.kind)}var o,s}(r,t,n)}))}(r,n,i,a)}(r.file,r.program,c,t,r.cancellationToken)}));return{edits:l,renameFilename:void 0,renameLocation:void 0}}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r="Convert import",n={name:"Convert namespace import to named imports",description:e.Diagnostics.Convert_namespace_import_to_named_imports.message,kind:"refactor.rewrite.import.named"},i={name:"Convert named imports to namespace import",description:e.Diagnostics.Convert_named_imports_to_namespace_import.message,kind:"refactor.rewrite.import.namespace"};function o(t,r){void 0===r&&(r=!0);var n=t.file,i=e.getRefactorContextSpan(t),a=e.getTokenAtPosition(n,i.start),o=r?e.findAncestor(a,e.isImportDeclaration):e.getParentNodeInSpan(a,n,i);if(!o||!e.isImportDeclaration(o))return{error:"Selection is not an import declaration."};if(!(o.getEnd()<i.start+i.length)){var s=o.importClause;return s?s.namedBindings?s.namedBindings:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_namespace_import_or_named_imports)}:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_import_clause)}}}function s(t){return e.isPropertyAccessExpression(t)?t.name:t.right}function c(t,r,n){return e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,r,n&&n.length?e.factory.createNamedImports(n):void 0),t.moduleSpecifier)}t.registerRefactor(r,{kinds:[n.kind,i.kind],getAvailableActions:function(s){var c=o(s,"invoked"===s.triggerReason);if(!c)return e.emptyArray;if(!t.isRefactorErrorInfo(c)){var l=266===c.kind?n:i;return[{name:r,description:l.description,actions:[l]}]}return s.preferences.provideRefactorNotApplicableReason?[{name:r,description:n.description,actions:[a(a({},n),{notApplicableReason:c.error})]},{name:r,description:i.description,actions:[a(a({},i),{notApplicableReason:c.error})]}]:e.emptyArray},getEditsForAction:function(r,a){e.Debug.assert(a===n.name||a===i.name,"Unexpected action name");var l=o(r);return e.Debug.assert(l&&!t.isRefactorErrorInfo(l),"Expected applicable refactor info"),{edits:e.textChanges.ChangeTracker.with(r,(function(t){return n=r.file,i=r.program,a=t,o=l,u=i.getTypeChecker(),void(266===o.kind?function(t,r,n,i,a){var o=!1,l=[],u=new e.Map;e.FindAllReferences.Core.eachSymbolReferenceInFile(i.name,r,t,(function(t){if(e.isPropertyAccessOrQualifiedName(t.parent)){var n=s(t.parent).text;r.resolveName(n,t,67108863,!0)&&u.set(n,!0),e.Debug.assert(function(t){return e.isPropertyAccessExpression(t)?t.expression:t.left}(t.parent)===t,"Parent expression should match id"),l.push(t.parent)}else o=!0}));for(var d=new e.Map,p=0,f=l;p<f.length;p++){var m=f[p],g=s(m).text,_=d.get(g);void 0===_&&d.set(g,_=u.has(g)?e.getUniqueName(g,t):g),n.replaceNode(t,m,e.factory.createIdentifier(_))}var h=[];d.forEach((function(t,r){h.push(e.factory.createImportSpecifier(t===r?void 0:e.factory.createIdentifier(r),e.factory.createIdentifier(t)))}));var y=i.parent.parent;o&&!a?n.insertNodeAfter(t,y,c(y,void 0,h)):n.replaceNode(t,y,c(y,o?e.factory.createIdentifier(i.name.text):void 0,h))}(n,u,a,o,e.getAllowSyntheticDefaultImports(i.getCompilerOptions())):function(t,r,n,i){for(var a=i.parent.parent,o=a.moduleSpecifier,s=o&&e.isStringLiteral(o)?e.codefix.moduleSpecifierToValidIdentifier(o.text,99):"module",l=i.elements.some((function(n){return e.FindAllReferences.Core.eachSymbolReferenceInFile(n.name,r,t,(function(e){return!!r.resolveName(s,e,67108863,!0)}))||!1})),u=l?e.getUniqueName(s,t):s,d=[],p=function(i){var a=(i.propertyName||i.name).text;e.FindAllReferences.Core.eachSymbolReferenceInFile(i.name,r,t,(function(r){var o=e.factory.createPropertyAccessExpression(e.factory.createIdentifier(u),a);e.isShorthandPropertyAssignment(r.parent)?n.replaceNode(t,r.parent,e.factory.createPropertyAssignment(r.text,o)):e.isExportSpecifier(r.parent)&&!r.parent.propertyName?d.some((function(e){return e.name===i.name}))||d.push(e.factory.createImportSpecifier(i.propertyName&&e.factory.createIdentifier(i.propertyName.text),e.factory.createIdentifier(i.name.text))):n.replaceNode(t,r,o)}))},f=0,m=i.elements;f<m.length;f++)p(m[f]);n.replaceNode(t,i,e.factory.createNamespaceImport(e.factory.createIdentifier(u))),d.length&&n.insertNodeAfter(t,i.parent.parent,c(a,void 0,d))}(n,u,a,o));var n,i,a,o,u})),renameFilename:void 0,renameLocation:void 0}}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Convert to optional chain expression",i=e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_optional_chain_expression),o={name:n,description:i,kind:"refactor.rewrite.expression.optionalChain"};function s(t){return e.isBinaryExpression(t)||e.isConditionalExpression(t)}function c(t){return s(t)||function(t){return e.isExpressionStatement(t)||e.isReturnStatement(t)||e.isVariableStatement(t)}(t)}function l(t,r){void 0===r&&(r=!0);var n=t.file,i=t.program,a=e.getRefactorContextSpan(t),o=0===a.length;if(!o||r){var l=e.getTokenAtPosition(n,a.start),p=e.findTokenOnLeftOfPosition(n,a.start+a.length),m=e.createTextSpanFromBounds(l.pos,p&&p.end>=l.pos?p.getEnd():l.getEnd()),g=o?function(e){for(;e.parent;){if(c(e)&&!c(e.parent))return e;e=e.parent}return}(l):function(e,t){for(;e.parent;){if(c(e)&&0!==t.length&&e.end>=t.start+t.length)return e;e=e.parent}return}(l,m),_=g&&c(g)?function(t){if(s(t))return t;if(e.isVariableStatement(t)){var r=e.getSingleVariableOfVariableStatement(t),n=null==r?void 0:r.initializer;return n&&s(n)?n:void 0}return t.expression&&s(t.expression)?t.expression:void 0}(g):void 0;if(!_)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_convertible_access_expression)};var h=i.getTypeChecker();return e.isConditionalExpression(_)?function(t,r){var n=t.condition,i=f(t.whenTrue);if(!i||r.isNullableType(r.getTypeAtLocation(i)))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_convertible_access_expression)};if((e.isPropertyAccessExpression(n)||e.isIdentifier(n))&&d(n,i.expression))return{finalExpression:i,occurrences:[n],expression:t};if(e.isBinaryExpression(n)){var a=u(i.expression,n);return a?{finalExpression:i,occurrences:a,expression:t}:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_matching_access_expressions)}}}(_,h):function(t){if(55!==t.operatorToken.kind)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Can_only_convert_logical_AND_access_chains)};var r=f(t.right);if(!r)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_convertible_access_expression)};var n=u(r.expression,t.left);return n?{finalExpression:r,occurrences:n,expression:t}:{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_matching_access_expressions)}}(_)}}function u(t,r){for(var n=[];e.isBinaryExpression(r)&&55===r.operatorToken.kind;){var i=d(e.skipParentheses(t),e.skipParentheses(r.right));if(!i)break;n.push(i),t=i,r=r.left}var a=d(t,r);return a&&n.push(a),n.length>0?n:void 0}function d(t,r){if(e.isIdentifier(r)||e.isPropertyAccessExpression(r)||e.isElementAccessExpression(r))return function(t,r){for(;(e.isCallExpression(t)||e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t))&&p(t)!==p(r);)t=t.expression;for(;e.isPropertyAccessExpression(t)&&e.isPropertyAccessExpression(r)||e.isElementAccessExpression(t)&&e.isElementAccessExpression(r);){if(p(t)!==p(r))return!1;t=t.expression,r=r.expression}return e.isIdentifier(t)&&e.isIdentifier(r)&&t.getText()===r.getText()}(t,r)?r:void 0}function p(t){return e.isIdentifier(t)||e.isStringOrNumericLiteralLike(t)?t.getText():e.isPropertyAccessExpression(t)?p(t.name):e.isElementAccessExpression(t)?p(t.argumentExpression):void 0}function f(t){return t=e.skipParentheses(t),e.isBinaryExpression(t)?f(t.left):(e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)||e.isCallExpression(t))&&!e.isOptionalChain(t)?t:void 0}function m(t,r,n){if(e.isPropertyAccessExpression(r)||e.isElementAccessExpression(r)||e.isCallExpression(r)){var i=m(t,r.expression,n),a=n.length>0?n[n.length-1]:void 0,o=(null==a?void 0:a.getText())===r.expression.getText();if(o&&n.pop(),e.isCallExpression(r))return o?e.factory.createCallChain(i,e.factory.createToken(28),r.typeArguments,r.arguments):e.factory.createCallChain(i,r.questionDotToken,r.typeArguments,r.arguments);if(e.isPropertyAccessExpression(r))return o?e.factory.createPropertyAccessChain(i,e.factory.createToken(28),r.name):e.factory.createPropertyAccessChain(i,r.questionDotToken,r.name);if(e.isElementAccessExpression(r))return o?e.factory.createElementAccessChain(i,e.factory.createToken(28),r.argumentExpression):e.factory.createElementAccessChain(i,r.questionDotToken,r.argumentExpression)}return r}t.registerRefactor(n,{kinds:[o.kind],getAvailableActions:function(r){var s=l(r,"invoked"===r.triggerReason);if(!s)return e.emptyArray;if(!t.isRefactorErrorInfo(s))return[{name:n,description:i,actions:[o]}];if(r.preferences.provideRefactorNotApplicableReason)return[{name:n,description:i,actions:[a(a({},o),{notApplicableReason:s.error})]}];return e.emptyArray},getEditsForAction:function(r,n){var i=l(r);return e.Debug.assert(i&&!t.isRefactorErrorInfo(i),"Expected applicable refactor info"),{edits:e.textChanges.ChangeTracker.with(r,(function(t){return function(t,r,n,i,a){var o=i.finalExpression,s=i.occurrences,c=i.expression,l=s[s.length-1],u=m(r,o,s);u&&(e.isPropertyAccessExpression(u)||e.isElementAccessExpression(u)||e.isCallExpression(u))&&(e.isBinaryExpression(c)?n.replaceNodeRange(t,l,o,u):e.isConditionalExpression(c)&&n.replaceNode(t,c,e.factory.createBinaryExpression(u,e.factory.createToken(60),c.whenFalse)))}(r.file,r.program.getTypeChecker(),t,i)})),renameFilename:void 0,renameLocation:void 0}}})}(t.convertToOptionalChainExpression||(t.convertToOptionalChainExpression={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Convert overload list to single signature",i=e.Diagnostics.Convert_overload_list_to_single_signature.message,a={name:n,description:i,kind:"refactor.rewrite.function.overloadList"};function o(e){switch(e.kind){case 165:case 166:case 170:case 167:case 171:case 253:return!0}return!1}function s(t,r,n){var i=e.getTokenAtPosition(t,r),a=e.findAncestor(i,o);if(a){var s=n.getTypeChecker(),c=a.symbol;if(c){var l=c.declarations;if(!(e.length(l)<=1)&&e.every(l,(function(r){return e.getSourceFileOfNode(r)===t}))&&o(l[0])){var u=l[0].kind;if(e.every(l,(function(e){return e.kind===u}))){var d=l;if(!e.some(d,(function(t){return!!t.typeParameters||e.some(t.parameters,(function(t){return!!t.decorators||!!t.modifiers||!e.isIdentifier(t.name)}))}))){var p=e.mapDefined(d,(function(e){return s.getSignatureFromDeclaration(e)}));if(e.length(p)===e.length(l)){var f=s.getReturnTypeOfSignature(p[0]);if(e.every(p,(function(e){return s.getReturnTypeOfSignature(e)===f})))return d}}}}}}}t.registerRefactor(n,{kinds:[a.kind],getEditsForAction:function(t){var r=t.file,n=t.startPosition,i=t.program,a=s(r,n,i);if(!a)return;var o=i.getTypeChecker(),c=a[a.length-1],l=c;switch(c.kind){case 165:l=e.factory.updateMethodSignature(c,c.modifiers,c.name,c.questionToken,c.typeParameters,d(a),c.type);break;case 166:l=e.factory.updateMethodDeclaration(c,c.decorators,c.modifiers,c.asteriskToken,c.name,c.questionToken,c.typeParameters,d(a),c.type,c.body);break;case 170:l=e.factory.updateCallSignature(c,c.typeParameters,d(a),c.type);break;case 167:l=e.factory.updateConstructorDeclaration(c,c.decorators,c.modifiers,d(a),c.body);break;case 171:l=e.factory.updateConstructSignature(c,c.typeParameters,d(a),c.type);break;case 253:l=e.factory.updateFunctionDeclaration(c,c.decorators,c.modifiers,c.asteriskToken,c.name,c.typeParameters,d(a),c.type,c.body);break;default:return e.Debug.failBadSyntaxKind(c,"Unhandled signature kind in overload list conversion refactoring")}if(l===c)return;var u=e.textChanges.ChangeTracker.with(t,(function(e){e.replaceNodeRange(r,a[0],a[a.length-1],l)}));return{renameFilename:void 0,renameLocation:void 0,edits:u};function d(t){var r=t[t.length-1];return e.isFunctionLikeDeclaration(r)&&r.body&&(t=t.slice(0,t.length-1)),e.factory.createNodeArray([e.factory.createParameterDeclaration(void 0,void 0,e.factory.createToken(25),"args",void 0,e.factory.createUnionTypeNode(e.map(t,p)))])}function p(t){var r=e.map(t.parameters,f);return e.setEmitFlags(e.factory.createTupleTypeNode(r),e.some(r,(function(t){return!!e.length(e.getSyntheticLeadingComments(t))}))?0:1)}function f(t){e.Debug.assert(e.isIdentifier(t.name));var r=e.setTextRange(e.factory.createNamedTupleMember(t.dotDotDotToken,t.name,t.questionToken,t.type||e.factory.createKeywordTypeNode(129)),t),n=t.symbol&&t.symbol.getDocumentationComment(o);if(n){var i=e.displayPartsToString(n);i.length&&e.setSyntheticLeadingComments(r,[{text:"*\n"+i.split("\n").map((function(e){return" * "+e})).join("\n")+"\n ",kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return r}},getAvailableActions:function(t){var r=t.file,o=t.startPosition,c=t.program;return s(r,o,c)?[{name:n,description:i,actions:[a]}]:e.emptyArray}})}(t.addOrRemoveBracesToArrowFunction||(t.addOrRemoveBracesToArrowFunction={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n,i,o,s,c="Extract Symbol",l={name:"Extract Constant",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_constant),kind:"refactor.extract.constant"},u={name:"Extract Function",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_function),kind:"refactor.extract.function"};function d(r){var n=r.kind,i=f(r.file,e.getRefactorContextSpan(r),"invoked"===r.triggerReason),o=i.targetRange;if(void 0===o){if(!i.errors||0===i.errors.length||!r.preferences.provideRefactorNotApplicableReason)return e.emptyArray;var s=[];return t.refactorKindBeginsWith(u.kind,n)&&s.push({name:c,description:u.description,actions:[a(a({},u),{notApplicableReason:A(i.errors)})]}),t.refactorKindBeginsWith(l.kind,n)&&s.push({name:c,description:l.description,actions:[a(a({},l),{notApplicableReason:A(i.errors)})]}),s}var d=function(t,r){var n=_(t,r),i=n.scopes,a=n.readsAndWrites,o=a.functionErrorsPerScope,s=a.constantErrorsPerScope,c=i.map((function(t,r){var n,i,a=function(t){return e.isFunctionLikeDeclaration(t)?"inner function":e.isClassLike(t)?"method":"function"}(t),c=function(t){return e.isClassLike(t)?"readonly field":"constant"}(t),l=e.isFunctionLikeDeclaration(t)?function(t){switch(t.kind){case 167:return"constructor";case 209:case 253:return t.name?"function '"+t.name.text+"'":e.ANONYMOUS;case 210:return"arrow function";case 166:return"method '"+t.name.getText()+"'";case 168:return"'get "+t.name.getText()+"'";case 169:return"'set "+t.name.getText()+"'";default:throw e.Debug.assertNever(t,"Unexpected scope kind "+t.kind)}}(t):e.isClassLike(t)?function(e){return 254===e.kind?e.name?"class '"+e.name.text+"'":"anonymous class declaration":e.name?"class expression '"+e.name.text+"'":"anonymous class expression"}(t):function(e){return 260===e.kind?"namespace '"+e.parent.name.getText()+"'":e.externalModuleIndicator?0:1}(t);return 1===l?(n=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[a,"global"]),i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[c,"global"])):0===l?(n=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[a,"module"]),i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[c,"module"])):(n=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1),[a,l]),i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1),[c,l])),0!==r||e.isClassLike(t)||(i=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_enclosing_scope),[c])),{functionExtraction:{description:n,errors:o[r]},constantExtraction:{description:i,errors:s[r]}}}));return c}(o,r);if(void 0===d)return e.emptyArray;for(var p,m,g=[],h=new e.Map,y=[],v=new e.Map,b=0,k=0,x=d;k<x.length;k++){var E=x[k],S=E.functionExtraction,D=E.constantExtraction,w=S.description;if(t.refactorKindBeginsWith(u.kind,n)&&(0===S.errors.length?h.has(w)||(h.set(w,!0),g.push({description:w,name:"function_scope_"+b,kind:u.kind})):p||(p={description:w,name:"function_scope_"+b,notApplicableReason:A(S.errors),kind:u.kind})),t.refactorKindBeginsWith(l.kind,n))if(0===D.errors.length){var T=D.description;v.has(T)||(v.set(T,!0),y.push({description:T,name:"constant_scope_"+b,kind:l.kind}))}else m||(m={description:w,name:"constant_scope_"+b,notApplicableReason:A(D.errors),kind:l.kind});b++}var C=[];return g.length?C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_function),actions:g}):r.preferences.provideRefactorNotApplicableReason&&p&&C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_function),actions:[p]}),y.length?C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_constant),actions:y}):r.preferences.provideRefactorNotApplicableReason&&m&&C.push({name:c,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_constant),actions:[m]}),C.length?C:e.emptyArray;function A(e){var t=e[0].messageText;return"string"!=typeof t&&(t=t.messageText),t}}function p(t,r){var n=f(t.file,e.getRefactorContextSpan(t)).targetRange,a=/^function_scope_(\d+)$/.exec(r);if(a){var o=+a[1];return e.Debug.assert(isFinite(o),"Expected to parse a finite number from the function scope index"),function(t,r,n){var a=_(t,r),o=a.scopes,s=a.readsAndWrites,c=s.target,l=s.usagesPerScope,u=s.functionErrorsPerScope,d=s.exposedVariableDeclarations;return e.Debug.assert(!u[n].length,"The extraction went missing? How?"),r.cancellationToken.throwIfCancellationRequested(),function(t,r,n,a,o,s){var c,l,u=n.usages,d=n.typeParameterUsages,p=n.substitutions,f=s.program.getTypeChecker(),m=e.getEmitScriptTarget(s.program.getCompilerOptions()),g=e.codefix.createImportAdder(s.file,s.program,s.preferences,s.host),_=r.getSourceFile(),k=e.getUniqueName(e.isClassLike(r)?"newMethod":"newFunction",_),x=e.isInJSFile(r),S=e.factory.createIdentifier(k),D=[],w=[];u.forEach((function(t,n){var i;if(!x){var a=f.getTypeOfSymbolAtLocation(t.symbol,t.node);a=f.getBaseTypeOfLiteralType(a),i=e.codefix.typeToAutoImportableTypeNode(f,g,a,r,m,1)}var o=e.factory.createParameterDeclaration(void 0,void 0,void 0,n,void 0,i);D.push(o),2===t.usage&&(l||(l=[])).push(t),w.push(e.factory.createIdentifier(n))}));var T=e.arrayFrom(d.values()).map((function(e){return{type:e,declaration:h(e)}})).sort(y),C=0===T.length?void 0:T.map((function(e){return e.declaration})),A=void 0!==C?C.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)})):void 0;if(e.isExpression(t)&&!x){var N=f.getContextualType(t);c=f.typeToTypeNode(N,r,1)}var P,I=function(t,r,n,i,a){var o,s=void 0!==n||r.length>0;if(e.isBlock(t)&&!s&&0===i.size)return{body:e.factory.createBlock(t.statements,!0),returnValueProperty:void 0};var c=!1,l=e.factory.createNodeArray(e.isBlock(t)?t.statements.slice(0):[e.isStatement(t)?t:e.factory.createReturnStatement(t)]);if(s||i.size){var u=e.visitNodes(l,p).slice();if(s&&!a&&e.isStatement(t)){var d=v(r,n);1===d.length?u.push(e.factory.createReturnStatement(d[0].name)):u.push(e.factory.createReturnStatement(e.factory.createObjectLiteralExpression(d)))}return{body:e.factory.createBlock(u,!0),returnValueProperty:o}}return{body:e.factory.createBlock(l,!0),returnValueProperty:void 0};function p(t){if(!c&&e.isReturnStatement(t)&&s){var a=v(r,n);return t.expression&&(o||(o="__return"),a.unshift(e.factory.createPropertyAssignment(o,e.visitNode(t.expression,p)))),1===a.length?e.factory.createReturnStatement(a[0].name):e.factory.createReturnStatement(e.factory.createObjectLiteralExpression(a))}var l=c;c=c||e.isFunctionLikeDeclaration(t)||e.isClassLike(t);var u=i.get(e.getNodeId(t).toString()),d=u?e.getSynthesizedDeepClone(u):e.visitEachChild(t,p,e.nullTransformationContext);return c=l,d}}(t,a,l,p,!!(o.facts&i.HasReturn)),F=I.body,O=I.returnValueProperty;if(e.suppressLeadingAndTrailingTrivia(F),e.isClassLike(r)){var R=x?[]:[e.factory.createModifier(121)];o.facts&i.InStaticRegion&&R.push(e.factory.createModifier(124)),o.facts&i.IsAsyncFunction&&R.push(e.factory.createModifier(130)),P=e.factory.createMethodDeclaration(void 0,R.length?R:void 0,o.facts&i.IsGenerator?e.factory.createToken(41):void 0,S,void 0,C,D,c,F)}else P=e.factory.createFunctionDeclaration(void 0,o.facts&i.IsAsyncFunction?[e.factory.createToken(130)]:void 0,o.facts&i.IsGenerator?e.factory.createToken(41):void 0,S,C,D,c,F);var M=e.textChanges.ChangeTracker.fromContext(s),L=function(t,r){return e.find(function(t){if(e.isFunctionLikeDeclaration(t)){var r=t.body;if(e.isBlock(r))return r.statements}else{if(e.isModuleBlock(t)||e.isSourceFile(t))return t.statements;if(e.isClassLike(t))return t.members;e.assertType(t)}return e.emptyArray}(r),(function(r){return r.pos>=t&&e.isFunctionLikeDeclaration(r)&&!e.isConstructorDeclaration(r)}))}((b(o.range)?e.last(o.range):o.range).end,r);L?M.insertNodeBefore(s.file,L,P,!0):M.insertNodeAtEndOfScope(s.file,r,P);g.writeFixes(M);var j=[],B=function(t,r,n){var a=e.factory.createIdentifier(n);if(e.isClassLike(t)){var o=r.facts&i.InStaticRegion?e.factory.createIdentifier(t.name.text):e.factory.createThis();return e.factory.createPropertyAccessExpression(o,a)}return a}(r,o,k),z=e.factory.createCallExpression(B,A,w);o.facts&i.IsGenerator&&(z=e.factory.createYieldExpression(e.factory.createToken(41),z));o.facts&i.IsAsyncFunction&&(z=e.factory.createAwaitExpression(z));E(t)&&(z=e.factory.createJsxExpression(void 0,z));if(a.length&&!l)if(e.Debug.assert(!O,"Expected no returnValueProperty"),e.Debug.assert(!(o.facts&i.HasReturn),"Expected RangeFacts.HasReturn flag to be unset"),1===a.length){var U=a[0];j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.getSynthesizedDeepClone(U.name),void 0,e.getSynthesizedDeepClone(U.type),z)],U.parent.flags)))}else{for(var q=[],J=[],V=a[0].parent.flags,H=!1,K=0,W=a;K<W.length;K++){U=W[K];q.push(e.factory.createBindingElement(void 0,void 0,e.getSynthesizedDeepClone(U.name)));var G=f.typeToTypeNode(f.getBaseTypeOfLiteralType(f.getTypeAtLocation(U)),r,1);J.push(e.factory.createPropertySignature(void 0,U.symbol.name,void 0,G)),H=H||void 0!==U.type,V&=U.parent.flags}var $=H?e.factory.createTypeLiteralNode(J):void 0;$&&e.setEmitFlags($,1),j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(e.factory.createObjectBindingPattern(q),void 0,$,z)],V)))}else if(a.length||l){if(a.length)for(var Y=0,X=a;Y<X.length;Y++){var Q=(U=X[Y]).parent.flags;2&Q&&(Q=-3&Q|1),j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(U.symbol.name,void 0,ne(U.type))],Q)))}O&&j.push(e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(O,void 0,ne(c))],1)));var Z=v(a,l);O&&Z.unshift(e.factory.createShorthandPropertyAssignment(O)),1===Z.length?(e.Debug.assert(!O,"Shouldn't have returnValueProperty here"),j.push(e.factory.createExpressionStatement(e.factory.createAssignment(Z[0].name,z))),o.facts&i.HasReturn&&j.push(e.factory.createReturnStatement())):(j.push(e.factory.createExpressionStatement(e.factory.createAssignment(e.factory.createObjectLiteralExpression(Z),z))),O&&j.push(e.factory.createReturnStatement(e.factory.createIdentifier(O))))}else o.facts&i.HasReturn?j.push(e.factory.createReturnStatement(z)):b(o.range)?j.push(e.factory.createExpressionStatement(z)):j.push(z);b(o.range)?M.replaceNodeRangeWithNodes(s.file,e.first(o.range),e.last(o.range),j):M.replaceNodeWithNodes(s.file,o.range,j);var ee=M.getChanges(),te=(b(o.range)?e.first(o.range):o.range).getSourceFile().fileName,re=e.getRenameLocation(ee,te,k,!1);return{renameFilename:te,renameLocation:re,edits:ee};function ne(t){if(void 0!==t){for(var r=e.getSynthesizedDeepClone(t),n=r;e.isParenthesizedTypeNode(n);)n=n.type;return e.isUnionTypeNode(n)&&e.find(n.types,(function(e){return 151===e.kind}))?r:e.factory.createUnionTypeNode([r,e.factory.createKeywordTypeNode(151)])}}}(c,o[n],l[n],d,t,r)}(n,t,o)}var s=/^constant_scope_(\d+)$/.exec(r);if(s){o=+s[1];return e.Debug.assert(isFinite(o),"Expected to parse a finite number from the constant scope index"),function(t,r,n){var a=_(t,r),o=a.scopes,s=a.readsAndWrites,c=s.target,l=s.usagesPerScope,u=s.constantErrorsPerScope,d=s.exposedVariableDeclarations;return e.Debug.assert(!u[n].length,"The extraction went missing? How?"),e.Debug.assert(0===d.length,"Extract constant accepted a range containing a variable declaration?"),r.cancellationToken.throwIfCancellationRequested(),function(t,r,n,a,o){var s,c=n.substitutions,l=o.program.getTypeChecker(),u=r.getSourceFile(),d=e.getUniqueName(e.isClassLike(r)?"newProperty":"newLocal",u),p=e.isInJSFile(r),f=p||!l.isContextSensitive(t)?void 0:l.typeToTypeNode(l.getContextualType(t),r,1),m=function(t,r){return r.size?n(t):t;function n(t){var i=r.get(e.getNodeId(t).toString());return i?e.getSynthesizedDeepClone(i):e.visitEachChild(t,n,e.nullTransformationContext)}}(t,c);s=A(f,m),f=s.variableType,m=s.initializer,e.suppressLeadingAndTrailingTrivia(m);var _=e.textChanges.ChangeTracker.fromContext(o);if(e.isClassLike(r)){e.Debug.assert(!p,"Cannot extract to a JS class");var h=[];h.push(e.factory.createModifier(121)),a&i.InStaticRegion&&h.push(e.factory.createModifier(124)),h.push(e.factory.createModifier(143));var y=e.factory.createPropertyDeclaration(void 0,h,d,void 0,f,m),v=e.factory.createPropertyAccessExpression(a&i.InStaticRegion?e.factory.createIdentifier(r.name.getText()):e.factory.createThis(),e.factory.createIdentifier(d));E(t)&&(v=e.factory.createJsxExpression(void 0,v));var b=function(t,r){var n,i=r.members;e.Debug.assert(i.length>0,"Found no members");for(var a=!0,o=0,s=i;o<s.length;o++){var c=s[o];if(c.pos>t)return n||i[0];if(a&&!e.isPropertyDeclaration(c)){if(void 0!==n)return c;a=!1}n=c}return void 0===n?e.Debug.fail():n}(t.pos,r);_.insertNodeBefore(o.file,b,y,!0),_.replaceNode(o.file,t,v)}else{var k=e.factory.createVariableDeclaration(d,void 0,f,m),S=function(t,r){var n;for(;void 0!==t&&t!==r;){if(e.isVariableDeclaration(t)&&t.initializer===n&&e.isVariableDeclarationList(t.parent)&&t.parent.declarations.length>1)return t;n=t,t=t.parent}}(t,r);if(S){_.insertNodeBefore(o.file,S,k);v=e.factory.createIdentifier(d);_.replaceNode(o.file,t,v)}else if(235===t.parent.kind&&r===e.findAncestor(t,g)){var D=e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([k],2));_.replaceNode(o.file,t.parent,D)}else{D=e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([k],2)),b=function(t,r){var n;e.Debug.assert(!e.isClassLike(r));for(var i=t;i!==r;i=i.parent)g(i)&&(n=i);for(i=(n||t).parent;;i=i.parent){if(x(i)){for(var a=void 0,o=0,s=i.statements;o<s.length;o++){var c=s[o];if(c.pos>t.pos)break;a=c}return!a&&e.isCaseClause(i)?(e.Debug.assert(e.isSwitchStatement(i.parent.parent),"Grandparent isn't a switch statement"),i.parent.parent):e.Debug.checkDefined(a,"prevStatement failed to get set")}e.Debug.assert(i!==r,"Didn't encounter a block-like before encountering scope")}}(t,r);if(0===b.pos?_.insertNodeAtTopOfFile(o.file,D,!1):_.insertNodeBefore(o.file,b,D,!1),235===t.parent.kind)_.delete(o.file,t.parent);else{v=e.factory.createIdentifier(d);E(t)&&(v=e.factory.createJsxExpression(void 0,v)),_.replaceNode(o.file,t,v)}}}var w=_.getChanges(),T=t.getSourceFile().fileName,C=e.getRenameLocation(w,T,d,!0);return{renameFilename:T,renameLocation:C,edits:w};function A(n,i){if(void 0===n)return{variableType:n,initializer:i};if(!e.isFunctionExpression(i)&&!e.isArrowFunction(i)||i.typeParameters)return{variableType:n,initializer:i};var a=l.getTypeAtLocation(t),o=e.singleOrUndefined(l.getSignaturesOfType(a,0));if(!o)return{variableType:n,initializer:i};if(o.getTypeParameters())return{variableType:n,initializer:i};for(var s=[],c=!1,u=0,d=i.parameters;u<d.length;u++){var p=d[u];if(p.type)s.push(p);else{var f=l.getTypeAtLocation(p);f===l.getAnyType()&&(c=!0),s.push(e.factory.updateParameterDeclaration(p,p.decorators,p.modifiers,p.dotDotDotToken,p.name,p.questionToken,p.type||l.typeToTypeNode(f,r,1),p.initializer))}}if(c)return{variableType:n,initializer:i};if(n=void 0,e.isArrowFunction(i))i=e.factory.updateArrowFunction(i,t.modifiers,i.typeParameters,s,i.type||l.typeToTypeNode(o.getReturnType(),r,1),i.equalsGreaterThanToken,i.body);else{if(o&&o.thisParameter){var m=e.firstOrUndefined(s);if(!m||e.isIdentifier(m.name)&&"this"!==m.name.escapedText){var g=l.getTypeOfSymbolAtLocation(o.thisParameter,t);s.splice(0,0,e.factory.createParameterDeclaration(void 0,void 0,void 0,"this",void 0,l.typeToTypeNode(g,r,1)))}}i=e.factory.updateFunctionExpression(i,t.modifiers,i.asteriskToken,i.name,i.typeParameters,s,i.type||l.typeToTypeNode(o.getReturnType(),r,1),i.body)}return{variableType:n,initializer:i}}}(e.isExpression(c)?c:c.statements[0].expression,o[n],l[n],t.facts,r)}(n,t,o)}e.Debug.fail("Unrecognized action name")}function f(t,r,a){void 0===a&&(a=!0);var o=r.length;if(0===o&&!a)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractEmpty)]};var s=0===o&&a,c=e.getTokenAtPosition(t,r.start),l=s?function(t){return e.findAncestor(t,(function(t){return t.parent&&k(t)&&!e.isBinaryExpression(t.parent)}))}(c):e.getParentNodeInSpan(c,t,r),u=e.findTokenOnLeftOfPosition(t,e.textSpanEnd(r)),d=s?l:e.getParentNodeInSpan(u,t,r),p=[],f=i.None;if(!l||!d)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};if(l.parent!==d.parent)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};if(l!==d){if(!x(l.parent))return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};for(var g=[],_=0,h=l.parent.statements;_<h.length;_++){var y=h[_];if(y===l||g.length){var v=S(y);if(v)return{errors:v};g.push(y)}if(y===d)break}return g.length?{targetRange:{range:g,facts:f,declarations:p}}:{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]}}if(e.isJSDoc(l))return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractJSDoc)]};if(e.isReturnStatement(l)&&!l.expression)return{errors:[e.createFileDiagnostic(t,r.start,o,n.cannotExtractRange)]};var b=function(t){if(e.isReturnStatement(t)){if(t.expression)return t.expression}else if(e.isVariableStatement(t)){for(var r=0,n=void 0,i=0,a=t.declarationList.declarations;i<a.length;i++){var o=a[i];o.initializer&&(r++,n=o.initializer)}if(1===r)return n}else if(e.isVariableDeclaration(t)&&t.initializer)return t.initializer;return t}(l),E=function(t){if(e.isIdentifier(e.isExpressionStatement(t)?t.expression:t))return[e.createDiagnosticForNode(t,n.cannotExtractIdentifier)];return}(b)||S(b);return E?{errors:E}:{targetRange:{range:m(b),facts:f,declarations:p}};function S(t){var a;if(function(e){e[e.None=0]="None",e[e.Break=1]="Break",e[e.Continue=2]="Continue",e[e.Return=4]="Return"}(a||(a={})),e.Debug.assert(t.pos<=t.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),e.Debug.assert(!e.positionIsSynthesized(t.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!(e.isStatement(t)||e.isExpressionNode(t)&&k(t)))return[e.createDiagnosticForNode(t,n.statementOrExpressionExpected)];if(8388608&t.flags)return[e.createDiagnosticForNode(t,n.cannotExtractAmbientBlock)];var o,s=e.getContainingClass(t);s&&function(t,r){for(var n=t;n!==r;){if(164===n.kind){e.hasSyntacticModifier(n,32)&&(f|=i.InStaticRegion);break}if(161===n.kind){167===e.getContainingFunction(n).kind&&(f|=i.InStaticRegion);break}166===n.kind&&e.hasSyntacticModifier(n,32)&&(f|=i.InStaticRegion),n=n.parent}}(t,s);var c,l=4;return function t(a){if(o)return!0;if(e.isDeclaration(a)){var s=251===a.kind?a.parent.parent:a;if(e.hasSyntacticModifier(s,1))return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractExportedEntity)),!0;p.push(a.symbol)}switch(a.kind){case 264:return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractImport)),!0;case 269:return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractExportedEntity)),!0;case 106:if(204===a.parent.kind){var u=e.getContainingClass(a);if(u.pos<r.start||u.end>=r.start+r.length)return(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractSuper)),!0}else f|=i.UsesThis;break;case 210:e.forEachChild(a,(function t(r){if(e.isThis(r))f|=i.UsesThis;else{if(e.isClassLike(r)||e.isFunctionLike(r)&&!e.isArrowFunction(r))return!1;e.forEachChild(r,t)}}));case 254:case 253:e.isSourceFile(a.parent)&&void 0===a.parent.externalModuleIndicator&&(o||(o=[])).push(e.createDiagnosticForNode(a,n.functionWillNotBeVisibleInTheNewScope));case 223:case 209:case 166:case 167:case 168:case 169:return!1}var d=l;switch(a.kind){case 236:case 249:l=0;break;case 232:a.parent&&249===a.parent.kind&&a.parent.finallyBlock===a&&(l=4);break;case 288:case 287:l|=1;break;default:e.isIterationStatement(a,!1)&&(l|=3)}switch(a.kind){case 188:case 108:f|=i.UsesThis;break;case 247:var m=a.label;(c||(c=[])).push(m.escapedText),e.forEachChild(a,t),c.pop();break;case 243:case 242:(m=a.label)?e.contains(c,m.escapedText)||(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):l&(243===a.kind?1:2)||(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break;case 215:f|=i.IsAsyncFunction;break;case 221:f|=i.IsGenerator;break;case 244:4&l?f|=i.HasReturn:(o||(o=[])).push(e.createDiagnosticForNode(a,n.cannotExtractRangeContainingConditionalReturnStatement));break;default:e.forEachChild(a,t)}l=d}(t),o}}function m(t){return e.isStatement(t)?[t]:e.isExpressionNode(t)?e.isExpressionStatement(t.parent)?[t.parent]:t:void 0}function g(t){return e.isFunctionLikeDeclaration(t)||e.isSourceFile(t)||e.isModuleBlock(t)||e.isClassLike(t)}function _(t,r){var a=r.file,o=function(t){var r=b(t.range)?e.first(t.range):t.range;if(t.facts&i.UsesThis){var n=e.getContainingClass(r);if(n){var a=e.findAncestor(r,e.isFunctionLikeDeclaration);return a?[a,n]:[n]}}for(var o=[];;)if(161===(r=r.parent).kind&&(r=e.findAncestor(r,(function(t){return e.isFunctionLikeDeclaration(t)})).parent),g(r)&&(o.push(r),300===r.kind))return o}(t),s=function(t,r){return b(t.range)?{pos:e.first(t.range).getStart(r),end:e.last(t.range).getEnd()}:t.range}(t,a),c=function(t,r,a,o,s,c){var l,u,d=new e.Map,p=[],f=[],m=[],g=[],_=[],h=new e.Map,y=[],v=b(t.range)?1===t.range.length&&e.isExpressionStatement(t.range[0])?t.range[0].expression:void 0:t.range;if(void 0===v){var k=t.range,x=e.first(k).getStart(),E=e.last(k).end;u=e.createFileDiagnostic(o,x,E-x,n.expressionExpected)}else 147456&s.getTypeAtLocation(v).flags&&(u=e.createDiagnosticForNode(v,n.uselessConstantType));for(var S=0,D=r;S<D.length;S++){var w=D[S];p.push({usages:new e.Map,typeParameterUsages:new e.Map,substitutions:new e.Map}),f.push(new e.Map),m.push(e.isFunctionLikeDeclaration(w)&&253!==w.kind?[e.createDiagnosticForNode(w,n.cannotExtractToOtherFunctionLike)]:[]);var T=[];u&&T.push(u),e.isClassLike(w)&&e.isInJSFile(w)&&T.push(e.createDiagnosticForNode(w,n.cannotExtractToJSClass)),e.isArrowFunction(w)&&!e.isBlock(w.body)&&T.push(e.createDiagnosticForNode(w,n.cannotExtractToExpressionArrowFunction)),g.push(T)}var C=new e.Map,A=b(t.range)?e.factory.createBlock(t.range):t.range,N=b(t.range)?e.first(t.range):t.range,P=q(N);if(V(A),P&&!b(t.range)){J(s.getContextualType(t.range))}if(d.size>0){for(var I=new e.Map,F=0,O=N;void 0!==O&&F<r.length;O=O.parent)if(O===r[F]&&(I.forEach((function(e,t){p[F].typeParameterUsages.set(t,e)})),F++),e.isDeclarationWithTypeParameters(O))for(var R=0,M=e.getEffectiveTypeParameterDeclarations(O);R<M.length;R++){var L=M[R],j=s.getTypeAtLocation(L);d.has(j.id.toString())&&I.set(j.id.toString(),j)}e.Debug.assert(F===r.length,"Should have iterated all scopes")}if(_.length){var B=e.isBlockScope(r[0],r[0].parent)?r[0]:e.getEnclosingBlockScopeContainer(r[0]);e.forEachChild(B,W)}for(var z=function(r){var i=p[r];if(r>0&&(i.usages.size>0||i.typeParameterUsages.size>0)){var a=b(t.range)?t.range[0]:t.range;g[r].push(e.createDiagnosticForNode(a,n.cannotAccessVariablesFromNestedScopes))}var o,s=!1;if(p[r].usages.forEach((function(t){2===t.usage&&(s=!0,106500&t.symbol.flags&&t.symbol.valueDeclaration&&e.hasEffectiveModifier(t.symbol.valueDeclaration,64)&&(o=t.symbol.valueDeclaration))})),e.Debug.assert(b(t.range)||0===y.length,"No variable declarations expected if something was extracted"),s&&!b(t.range)){var c=e.createDiagnosticForNode(t.range,n.cannotWriteInExpression);m[r].push(c),g[r].push(c)}else if(o&&r>0){c=e.createDiagnosticForNode(o,n.cannotExtractReadonlyPropertyInitializerOutsideConstructor);m[r].push(c),g[r].push(c)}else if(l){c=e.createDiagnosticForNode(l,n.cannotExtractExportedEntity);m[r].push(c),g[r].push(c)}},U=0;U<r.length;U++)z(U);return{target:A,usagesPerScope:p,functionErrorsPerScope:m,constantErrorsPerScope:g,exposedVariableDeclarations:y};function q(t){return!!e.findAncestor(t,(function(t){return e.isDeclarationWithTypeParameters(t)&&0!==e.getEffectiveTypeParameterDeclarations(t).length}))}function J(e){for(var t=0,r=s.getSymbolWalker((function(){return c.throwIfCancellationRequested(),!0})).walkType(e).visitedTypes;t<r.length;t++){var n=r[t];n.isTypeParameter()&&d.set(n.id.toString(),n)}}function V(t,r){(void 0===r&&(r=1),P)&&J(s.getTypeAtLocation(t));if(e.isDeclaration(t)&&t.symbol&&_.push(t),e.isAssignmentExpression(t))V(t.left,2),V(t.right);else if(e.isUnaryExpressionWithWrite(t))V(t.operand,2);else if(e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t))e.forEachChild(t,V);else if(e.isIdentifier(t)){if(!t.parent)return;if(e.isQualifiedName(t.parent)&&t!==t.parent.left)return;if(e.isPropertyAccessExpression(t.parent)&&t!==t.parent.expression)return;H(t,r,e.isPartOfTypeNode(t))}else e.forEachChild(t,V)}function H(t,n,i){var a=K(t,n,i);if(a)for(var o=0;o<r.length;o++){var s=f[o].get(a);s&&p[o].substitutions.set(e.getNodeId(t).toString(),s)}}function K(c,l,u){var d=G(c);if(d){var _=e.getSymbolId(d).toString(),h=C.get(_);if(h&&h>=l)return _;if(C.set(_,l),h){for(var y=0,v=p;y<v.length;y++){var b=v[y];b.usages.get(c.text)&&b.usages.set(c.text,{usage:l,symbol:d,node:c})}return _}var k=d.getDeclarations(),x=k&&e.find(k,(function(e){return e.getSourceFile()===o}));if(x&&!e.rangeContainsStartEnd(a,x.getStart(),x.end)){if(t.facts&i.IsGenerator&&2===l){for(var E=e.createDiagnosticForNode(c,n.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators),S=0,D=m;S<D.length;S++){D[S].push(E)}for(var w=0,T=g;w<T.length;w++){T[w].push(E)}}for(var A=0;A<r.length;A++){var N=r[A];if(s.resolveName(d.name,N,d.flags,!1)!==d&&!f[A].has(_)){var P=$(d.exportSymbol||d,N,u);if(P)f[A].set(_,P);else if(u){if(!(262144&d.flags)){E=e.createDiagnosticForNode(c,n.typeWillNotBeVisibleInTheNewScope);m[A].push(E),g[A].push(E)}}else p[A].usages.set(c.text,{usage:l,symbol:d,node:c})}}return _}}}function W(r){if(!(r===t.range||b(t.range)&&t.range.indexOf(r)>=0)){var n=e.isIdentifier(r)?G(r):s.getSymbolAtLocation(r);if(n){var i=e.find(_,(function(e){return e.symbol===n}));if(i)if(e.isVariableDeclaration(i)){var a=i.symbol.id.toString();h.has(a)||(y.push(i),h.set(a,!0))}else l=l||i}e.forEachChild(r,W)}}function G(t){return t.parent&&e.isShorthandPropertyAssignment(t.parent)&&t.parent.name===t?s.getShorthandAssignmentValueSymbol(t.parent):s.getSymbolAtLocation(t)}function $(t,r,n){if(t){var i=t.getDeclarations();if(i&&i.some((function(e){return e.parent===r})))return e.factory.createIdentifier(t.name);var a=$(t.parent,r,n);if(void 0!==a)return n?e.factory.createQualifiedName(a,e.factory.createIdentifier(t.name)):e.factory.createPropertyAccessExpression(a,t.name)}}}(t,o,s,a,r.program.getTypeChecker(),r.cancellationToken);return{scopes:o,readsAndWrites:c}}function h(e){var t,r=e.symbol;if(r&&r.declarations)for(var n=0,i=r.declarations;n<i.length;n++){var a=i[n];(void 0===t||a.pos<t.pos)&&(t=a)}return t}function y(t,r){var n=t.type,i=t.declaration,a=r.type,o=r.declaration;return e.compareProperties(i,o,"pos",e.compareValues)||e.compareStringsCaseSensitive(n.symbol?n.symbol.getName():"",a.symbol?a.symbol.getName():"")||e.compareValues(n.id,a.id)}function v(t,r){var n=e.map(t,(function(t){return e.factory.createShorthandPropertyAssignment(t.symbol.name)})),i=e.map(r,(function(t){return e.factory.createShorthandPropertyAssignment(t.symbol.name)}));return void 0===n?i:void 0===i?n:n.concat(i)}function b(t){return e.isArray(t)}function k(e){var t=e.parent;if(294===t.kind)return!1;switch(e.kind){case 10:return 264!==t.kind&&268!==t.kind;case 222:case 197:case 199:return!1;case 78:return 199!==t.kind&&268!==t.kind&&273!==t.kind}return!0}function x(e){switch(e.kind){case 232:case 300:case 260:case 287:return!0;default:return!1}}function E(t){return(e.isJsxElement(t)||e.isJsxSelfClosingElement(t)||e.isJsxFragment(t))&&e.isJsxElement(t.parent)}t.registerRefactor(c,{kinds:[l.kind,u.kind],getAvailableActions:d,getEditsForAction:p}),r.getAvailableActions=d,r.getEditsForAction=p,function(t){function r(t){return{message:t,code:0,category:e.DiagnosticCategory.Message,key:t}}t.cannotExtractRange=r("Cannot extract range."),t.cannotExtractImport=r("Cannot extract import statement."),t.cannotExtractSuper=r("Cannot extract super call."),t.cannotExtractJSDoc=r("Cannot extract JSDoc."),t.cannotExtractEmpty=r("Cannot extract empty range."),t.expressionExpected=r("expression expected."),t.uselessConstantType=r("No reason to extract constant of type."),t.statementOrExpressionExpected=r("Statement or expression expected."),t.cannotExtractRangeContainingConditionalBreakOrContinueStatements=r("Cannot extract range containing conditional break or continue statements."),t.cannotExtractRangeContainingConditionalReturnStatement=r("Cannot extract range containing conditional return statement."),t.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=r("Cannot extract range containing labeled break or continue with target outside of the range."),t.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=r("Cannot extract range containing writes to references located outside of the target range in generators."),t.typeWillNotBeVisibleInTheNewScope=r("Type will not visible in the new scope."),t.functionWillNotBeVisibleInTheNewScope=r("Function will not visible in the new scope."),t.cannotExtractIdentifier=r("Select more than a single identifier."),t.cannotExtractExportedEntity=r("Cannot extract exported declaration"),t.cannotWriteInExpression=r("Cannot write back side-effects when extracting an expression"),t.cannotExtractReadonlyPropertyInitializerOutsideConstructor=r("Cannot move initialization of read-only class property outside of the constructor"),t.cannotExtractAmbientBlock=r("Cannot extract code from ambient contexts"),t.cannotAccessVariablesFromNestedScopes=r("Cannot access variables from nested scopes"),t.cannotExtractToOtherFunctionLike=r("Cannot extract method to a function-like scope that is not a function"),t.cannotExtractToJSClass=r("Cannot extract constant to a class scope in JS"),t.cannotExtractToExpressionArrowFunction=r("Cannot extract constant to an arrow function without a block")}(n=r.Messages||(r.Messages={})),function(e){e[e.None=0]="None",e[e.HasReturn=1]="HasReturn",e[e.IsGenerator=2]="IsGenerator",e[e.IsAsyncFunction=4]="IsAsyncFunction",e[e.UsesThis=8]="UsesThis",e[e.InStaticRegion=16]="InStaticRegion"}(i||(i={})),r.getRangeToExtract=f,function(e){e[e.Module=0]="Module",e[e.Global=1]="Global"}(o||(o={})),function(e){e[e.Read=1]="Read",e[e.Write=2]="Write"}(s||(s={}))}(t.extractSymbol||(t.extractSymbol={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r="Extract type",n={name:"Extract to type alias",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_type_alias),kind:"refactor.extract.type"},i={name:"Extract to interface",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_interface),kind:"refactor.extract.interface"},o={name:"Extract to typedef",description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_typedef),kind:"refactor.extract.typedef"};function s(t,r){void 0===r&&(r=!0);var n=t.file,i=t.startPosition,a=e.isSourceFileJS(n),o=e.getTokenAtPosition(n,i),s=e.createTextRangeFromSpan(e.getRefactorContextSpan(t)),u=s.pos===s.end&&r,d=e.findAncestor(o,(function(t){return t.parent&&e.isTypeNode(t)&&!l(s,t.parent,n)&&(u||e.nodeOverlapsWithStartEnd(o,n,s.pos,s.end))}));if(!d||!e.isTypeNode(d))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Selection_is_not_a_valid_type_node)};var p=t.program.getTypeChecker(),f=e.Debug.checkDefined(e.findAncestor(d,e.isStatement),"Should find a statement"),m=function(t,r,n,i){var a=[];return o(r)?void 0:a;function o(s){if(e.isTypeReferenceNode(s)){if(e.isIdentifier(s.typeName)&&(p=t.resolveName(s.typeName.text,s.typeName,262144,!0))){var c=e.cast(e.first(p.declarations),e.isTypeParameterDeclaration);l(n,c,i)&&!l(r,c,i)&&e.pushIfUnique(a,c)}}else if(e.isInferTypeNode(s)){var u=e.findAncestor(s,(function(t){return e.isConditionalTypeNode(t)&&l(t.extendsType,s,i)}));if(!u||!l(r,u,i))return!0}else if(e.isTypePredicateNode(s)||e.isThisTypeNode(s)){var d=e.findAncestor(s.parent,e.isFunctionLike);if(d&&d.type&&l(d.type,s,i)&&!l(r,d,i))return!0}else if(e.isTypeQueryNode(s)){var p;if(e.isIdentifier(s.exprName)){if((p=t.resolveName(s.exprName.text,s.exprName,111551,!1))&&l(n,p.valueDeclaration,i)&&!l(r,p.valueDeclaration,i))return!0}else if(e.isThisIdentifier(s.exprName.left)&&!l(r,s.parent,i))return!0}return i&&e.isTupleTypeNode(s)&&e.getLineAndCharacterOfPosition(i,s.pos).line===e.getLineAndCharacterOfPosition(i,s.end).line&&e.setEmitFlags(s,1),e.forEachChild(s,o)}}(p,d,f,n);return m?{isJS:a,selection:d,firstStatement:f,typeParameters:m,typeElements:c(p,d)}:{error:e.getLocaleSpecificMessage(e.Diagnostics.No_type_could_be_extracted_from_this_type_node)}}function c(t,r){if(r){if(e.isIntersectionTypeNode(r)){for(var n=[],i=new e.Map,a=0,o=r.types;a<o.length;a++){var s=c(t,o[a]);if(!s||!s.every((function(t){return t.name&&e.addToSeen(i,e.getNameFromPropertyName(t.name))})))return;e.addRange(n,s)}return n}return e.isParenthesizedTypeNode(r)?c(t,r.type):e.isTypeLiteralNode(r)?r.members:void 0}}function l(t,r,n){return e.rangeContainsStartEnd(t,e.skipTrivia(n.text,r.pos),r.end)}t.registerRefactor(r,{kinds:[n.kind,i.kind,o.kind],getAvailableActions:function(c){var l=s(c,"invoked"===c.triggerReason);return l?t.isRefactorErrorInfo(l)?c.preferences.provideRefactorNotApplicableReason?[{name:r,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_type),actions:[a(a({},o),{notApplicableReason:l.error}),a(a({},n),{notApplicableReason:l.error}),a(a({},i),{notApplicableReason:l.error})]}]:e.emptyArray:[{name:r,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_type),actions:l.isJS?[o]:e.append([n],l.typeElements&&i)}]:e.emptyArray},getEditsForAction:function(r,a){var c=r.file,l=s(r);e.Debug.assert(l&&!t.isRefactorErrorInfo(l),"Expected to find a range to extract");var u=e.getUniqueName("NewType",c),d=e.textChanges.ChangeTracker.with(r,(function(t){switch(a){case n.name:return e.Debug.assert(!l.isJS,"Invalid actionName/JS combo"),function(t,r,n,i){var a=i.firstStatement,o=i.selection,s=i.typeParameters,c=e.factory.createTypeAliasDeclaration(void 0,void 0,n,s.map((function(t){return e.factory.updateTypeParameterDeclaration(t,t.name,t.constraint,void 0)})),o);t.insertNodeBefore(r,a,e.ignoreSourceNewlines(c),!0),t.replaceNode(r,o,e.factory.createTypeReferenceNode(n,s.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)}))),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.ExcludeWhitespace})}(t,c,u,l);case o.name:return e.Debug.assert(l.isJS,"Invalid actionName/JS combo"),function(t,r,n,i){var a=i.firstStatement,o=i.selection,s=i.typeParameters,c=e.factory.createJSDocTypedefTag(e.factory.createIdentifier("typedef"),e.factory.createJSDocTypeExpression(o),e.factory.createIdentifier(n)),l=[];e.forEach(s,(function(t){var r=e.getEffectiveConstraintOfTypeParameter(t),n=e.factory.createTypeParameterDeclaration(t.name),i=e.factory.createJSDocTemplateTag(e.factory.createIdentifier("template"),r&&e.cast(r,e.isJSDocTypeExpression),[n]);l.push(i)})),t.insertNodeBefore(r,a,e.factory.createJSDocComment(void 0,e.factory.createNodeArray(e.concatenate(l,[c]))),!0),t.replaceNode(r,o,e.factory.createTypeReferenceNode(n,s.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)}))))}(t,c,u,l);case i.name:return e.Debug.assert(!l.isJS&&!!l.typeElements,"Invalid actionName/JS combo"),function(t,r,n,i){var a,o=i.firstStatement,s=i.selection,c=i.typeParameters,l=i.typeElements,u=e.factory.createInterfaceDeclaration(void 0,void 0,n,c,void 0,l);e.setTextRange(u,null===(a=l[0])||void 0===a?void 0:a.parent),t.insertNodeBefore(r,o,e.ignoreSourceNewlines(u),!0),t.replaceNode(r,s,e.factory.createTypeReferenceNode(n,c.map((function(t){return e.factory.createTypeReferenceNode(t.name,void 0)}))),{leadingTriviaOption:e.textChanges.LeadingTriviaOption.Exclude,trailingTriviaOption:e.textChanges.TrailingTriviaOption.ExcludeWhitespace})}(t,c,u,l);default:e.Debug.fail("Unexpected action name")}})),p=c.fileName;return{edits:d,renameFilename:p,renameLocation:e.getRenameLocation(d,p,u,!1)}}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r,n,i;t.generateGetAccessorAndSetAccessor||(t.generateGetAccessorAndSetAccessor={}),r="Generate 'get' and 'set' accessors",n=e.Diagnostics.Generate_get_and_set_accessors.message,i={name:r,description:n,kind:"refactor.rewrite.property.generateAccessors"},t.registerRefactor(r,{kinds:[i.kind],getEditsForAction:function(r,n){if(r.endPosition){var i=e.codefix.getAccessorConvertiblePropertyAtPosition(r.file,r.program,r.startPosition,r.endPosition);e.Debug.assert(i&&!t.isRefactorErrorInfo(i),"Expected applicable refactor info");var a=e.codefix.generateAccessorFromProperty(r.file,r.program,r.startPosition,r.endPosition,r,n);if(a){var o=r.file.fileName,s=i.renameAccessor?i.accessorName:i.fieldName;return{renameFilename:o,renameLocation:(e.isIdentifier(s)?0:-1)+e.getRenameLocation(a,o,s.text,e.isParameter(i.declaration)),edits:a}}}},getAvailableActions:function(o){if(!o.endPosition)return e.emptyArray;var s=e.codefix.getAccessorConvertiblePropertyAtPosition(o.file,o.program,o.startPosition,o.endPosition,"invoked"===o.triggerReason);return s?t.isRefactorErrorInfo(s)?o.preferences.provideRefactorNotApplicableReason?[{name:r,description:n,actions:[a(a({},i),{notApplicableReason:s.error})]}]:e.emptyArray:[{name:r,description:n,actions:[i]}]:e.emptyArray}})}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(e){e.isRefactorErrorInfo=function(e){return void 0!==e.error},e.refactorKindBeginsWith=function(e,t){return!t||e.substr(0,t.length)===t}}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){var r="Move to a new file",n=e.getLocaleSpecificMessage(e.Diagnostics.Move_to_a_new_file),o={name:r,description:n,kind:"refactor.move.newFile"};function s(t){var r=function(t){var r=t.file,n=e.createTextRangeFromSpan(e.getRefactorContextSpan(t)),i=r.statements,a=e.findIndex(i,(function(e){return e.end>n.pos}));if(-1!==a){var o=i[a];if(e.isNamedDeclaration(o)&&o.name&&e.rangeContainsRange(o.name,n))return{toMove:[i[a]],afterLast:i[a+1]};if(!(n.pos>o.getStart(r))){var s=e.findIndex(i,(function(e){return e.end>n.end}),a);if(-1===s||!(0===s||i[s].getStart(r)<n.end))return{toMove:i.slice(a,-1===s?i.length:s),afterLast:-1===s?void 0:i[s]}}}}(t);if(void 0!==r){var n=[],i=[],a=r.toMove,o=r.afterLast;return e.getRangesWhere(a,c,(function(e,t){for(var r=e;r<t;r++)n.push(a[r]);i.push({first:a[e],afterLast:o})})),0===n.length?void 0:{all:n,ranges:i}}}function c(t){return!function(t){switch(t.kind){case 264:return!0;case 263:return!e.hasSyntacticModifier(t,1);case 234:return t.declarationList.declarations.every((function(t){return!!t.initializer&&e.isRequireCall(t.initializer,!0)}));default:return!1}}(t)&&!e.isPrologueDirective(t)}function l(e,t,r){for(var n=0,i=t;n<i.length;n++){var a=i[n],o=a.first,s=a.afterLast;r.deleteNodeRangeExcludingEnd(e,o,s)}}function u(e){return 264===e.kind?e.moduleSpecifier:263===e.kind?e.moduleReference.expression:e.initializer.arguments[0]}function d(t,r){if(e.isImportDeclaration(t))e.isStringLiteral(t.moduleSpecifier)&&r(t);else if(e.isImportEqualsDeclaration(t))e.isExternalModuleReference(t.moduleReference)&&e.isStringLiteralLike(t.moduleReference.expression)&&r(t);else if(e.isVariableStatement(t))for(var n=0,i=t.declarationList.declarations;n<i.length;n++){var a=i[n];a.initializer&&e.isRequireCall(a.initializer,!0)&&r(a)}}function p(t,r,n,i,a){if(n=e.ensurePathIsNonModuleName(n),i){var o=r.map((function(t){return e.factory.createImportSpecifier(void 0,e.factory.createIdentifier(t))}));return e.makeImportIfNecessary(t,o,n,a)}e.Debug.assert(!t,"No default import should exist");var s=r.map((function(t){return e.factory.createBindingElement(void 0,void 0,t)}));return s.length?f(e.factory.createObjectBindingPattern(s),void 0,m(e.factory.createStringLiteral(n))):void 0}function f(t,r,n,i){return void 0===i&&(i=2),e.factory.createVariableStatement(void 0,e.factory.createVariableDeclarationList([e.factory.createVariableDeclaration(t,void 0,r,n)],i))}function m(t){return e.factory.createCallExpression(e.factory.createIdentifier("require"),void 0,[t])}function g(t,r,n,i){switch(r.kind){case 264:!function(t,r,n,i){if(!r.importClause)return;var a=r.importClause,o=a.name,s=a.namedBindings,c=!o||i(o),l=!s||(266===s.kind?i(s.name):0!==s.elements.length&&s.elements.every((function(e){return i(e.name)})));if(c&&l)n.delete(t,r);else if(o&&c&&n.delete(t,o),s)if(l)n.replaceNode(t,r.importClause,e.factory.updateImportClause(r.importClause,r.importClause.isTypeOnly,o,void 0));else if(267===s.kind)for(var u=0,d=s.elements;u<d.length;u++){var p=d[u];i(p.name)&&n.delete(t,p)}}(t,r,n,i);break;case 263:i(r.name)&&n.delete(t,r);break;case 251:!function(t,r,n,i){var a=r.name;switch(a.kind){case 78:i(a)&&n.delete(t,a);break;case 198:break;case 197:if(a.elements.every((function(t){return e.isIdentifier(t.name)&&i(t.name)})))n.delete(t,e.isVariableDeclarationList(r.parent)&&1===r.parent.declarations.length?r.parent.parent:r);else for(var o=0,s=a.elements;o<s.length;o++){var c=s[o];e.isIdentifier(c.name)&&i(c.name)&&n.delete(t,c.name)}}}(t,r,n,i);break;default:e.Debug.assertNever(r,"Unexpected import decl kind "+r.kind)}}function _(t){switch(t.kind){case 263:case 268:case 265:case 266:return!0;case 251:return h(t);case 199:return e.isVariableDeclaration(t.parent.parent)&&h(t.parent.parent);default:return!1}}function h(t){return e.isSourceFile(t.parent.parent.parent)&&!!t.initializer&&e.isRequireCall(t.initializer,!0)}function y(t,r,n){switch(t.kind){case 264:var i=t.importClause;if(!i)return;var a=i.name&&n(i.name)?i.name:void 0,o=i.namedBindings&&function(t,r){if(266===t.kind)return r(t.name)?t:void 0;var n=t.elements.filter((function(e){return r(e.name)}));return n.length?e.factory.createNamedImports(n):void 0}(i.namedBindings,n);return a||o?e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,a,o),r):void 0;case 263:return n(t.name)?t:void 0;case 251:var s=function(t,r){switch(t.kind){case 78:return r(t)?t:void 0;case 198:return t;case 197:var n=t.elements.filter((function(t){return t.propertyName||!e.isIdentifier(t.name)||r(t.name)}));return n.length?e.factory.createObjectBindingPattern(n):void 0}}(t.name,n);return s?f(s,t.type,m(r),t.parent.flags):void 0;default:return e.Debug.assertNever(t,"Unexpected import kind "+t.kind)}}function v(t,r,n){t.forEachChild((function t(i){if(e.isIdentifier(i)&&!e.isDeclarationName(i)){var a=r.getSymbolAtLocation(i);a&&n(a)}else i.forEachChild(t)}))}t.registerRefactor(r,{kinds:[o.kind],getAvailableActions:function(t){var i=s(t);return t.preferences.allowTextChangesInNewFiles&&i?[{name:r,description:n,actions:[o]}]:t.preferences.provideRefactorNotApplicableReason?[{name:r,description:n,actions:[a(a({},o),{notApplicableReason:e.getLocaleSpecificMessage(e.Diagnostics.Selection_is_not_a_valid_statement_or_statements)})]}]:e.emptyArray},getEditsForAction:function(t,n){e.Debug.assert(n===r,"Wrong refactor invoked");var a=e.Debug.checkDefined(s(t));return{edits:e.textChanges.ChangeTracker.with(t,(function(r){return n=t.file,o=t.program,s=a,c=r,f=t.host,h=t.preferences,D=o.getTypeChecker(),F=function(t,r,n){var i=new b,a=new b,o=new b,s=e.find(r,(function(e){return!!(2&e.transformFlags)})),c=E(s);c&&a.add(c);for(var l=0,u=r;l<u.length;l++)S(y=u[l],(function(t){i.add(e.Debug.checkDefined(e.isExpressionStatement(t)?n.getSymbolAtLocation(t.expression.left):t.symbol,"Need a symbol here"))}));for(var d=0,p=r;d<p.length;d++)v(y=p[d],n,(function(e){if(e.declarations)for(var r=0,n=e.declarations;r<n.length;r++){var s=n[r];_(s)?a.add(e):k(s)&&x(s)===t&&!i.has(e)&&o.add(e)}}));for(var f=a.clone(),m=new b,g=0,h=t.statements;g<h.length;g++){var y=h[g];e.contains(r,y)||(c&&2&y.transformFlags&&f.delete(c),v(y,n,(function(e){i.has(e)&&m.add(e),f.delete(e)})))}return{movedSymbols:i,newFileImportsFromOldFile:o,oldFileImportsFromNewFile:m,oldImportsNeededByNewFile:a,unusedImportsFromOldFile:f};function E(t){if(void 0!==t){var r=n.getJsxNamespace(t),i=n.resolveName(r,t,1920,!0);return i&&e.some(i.declarations,_)?i:void 0}}}(n,s.all,D),O=e.getDirectoryPath(n.fileName),R=e.extensionFromPath(n.fileName),M=function(t,r,n,i){for(var a=t,o=1;;o++){var s=e.combinePaths(n,a+r);if(!i.fileExists(s))return a;a=t+"."+o}}(F.movedSymbols.forEachEntry(e.symbolNameNoDefault)||"newFile",R,O,f),L=M+R,c.createNewFile(n,e.combinePaths(O,L),function(t,r,n,a,o,s,c){var f=o.getTypeChecker(),_=e.takeWhile(t.statements,e.isPrologueDirective);if(!t.externalModuleIndicator&&!t.commonJsModuleIndicator)return l(t,a.ranges,n),i(i([],_),a.all);var h=!!t.externalModuleIndicator,v=e.getQuotePreference(t,c),b=function(t,r,n,i){var a,o=[];return t.forEach((function(t){"default"===t.escapedName?a=e.factory.createIdentifier(e.symbolNameNoDefault(t)):o.push(t.name)})),p(a,o,r,n,i)}(r.oldFileImportsFromNewFile,s,h,v);b&&e.insertImports(n,t,b,!0),function(t,r,n,i,a){for(var o=0,s=t.statements;o<s.length;o++){var c=s[o];e.contains(r,c)||d(c,(function(e){return g(t,e,n,(function(e){return i.has(a.getSymbolAtLocation(e))}))}))}}(t,a.all,n,r.unusedImportsFromOldFile,f),l(t,a.ranges,n),function(t,r,n,i,a){for(var o=r.getTypeChecker(),s=function(r){if(r===n)return"continue";for(var s=function(s){d(s,(function(c){if(o.getSymbolAtLocation(u(c))===n.symbol){var l=function(t){var r=e.isBindingElement(t.parent)?e.getPropertySymbolFromBindingElement(o,t.parent):e.skipAlias(o.getSymbolAtLocation(t),o);return!!r&&i.has(r)};g(r,c,t,l);var d=e.combinePaths(e.getDirectoryPath(u(c).text),a),p=y(c,e.factory.createStringLiteral(d),l);p&&t.insertNodeAfter(r,s,p);var f=function(t){switch(t.kind){case 264:return t.importClause&&t.importClause.namedBindings&&266===t.importClause.namedBindings.kind?t.importClause.namedBindings.name:void 0;case 263:return t.name;case 251:return e.tryCast(t.name,e.isIdentifier);default:return e.Debug.assertNever(t,"Unexpected node kind "+t.kind)}}(c);f&&function(t,r,n,i,a,o,s,c){var l=e.codefix.moduleSpecifierToValidIdentifier(a,99),u=!1,d=[];if(e.FindAllReferences.Core.eachSymbolReferenceInFile(s,n,r,(function(t){e.isPropertyAccessExpression(t.parent)&&(u=u||!!n.resolveName(l,t,67108863,!0),i.has(n.getSymbolAtLocation(t.parent.name))&&d.push(t))})),d.length){for(var p=u?e.getUniqueName(l,r):l,f=0,g=d;f<g.length;f++){var _=g[f];t.replaceNode(r,_,e.factory.createIdentifier(p))}t.insertNodeAfter(r,c,function(t,r,n){var i=e.factory.createIdentifier(r),a=e.factory.createStringLiteral(n);switch(t.kind){case 264:return e.factory.createImportDeclaration(void 0,void 0,e.factory.createImportClause(!1,void 0,e.factory.createNamespaceImport(i)),a);case 263:return e.factory.createImportEqualsDeclaration(void 0,void 0,!1,i,e.factory.createExternalModuleReference(a));case 251:return e.factory.createVariableDeclaration(i,void 0,void 0,m(a));default:return e.Debug.assertNever(t,"Unexpected node kind "+t.kind)}}(c,a,o))}}(t,r,o,i,a,d,f,c)}}))},c=0,l=r.statements;c<l.length;c++)s(l[c])},c=0,l=r.getSourceFiles();c<l.length;c++)s(l[c])}(n,o,t,r.movedSymbols,s);var x=function(t,r,n,i,a,o,s){for(var c,l=[],f=0,m=t.statements;f<m.length;f++)d(m[f],(function(t){e.append(l,y(t,u(t),(function(e){return r.has(a.getSymbolAtLocation(e))})))}));var g=[],_=e.nodeSeenTracker();return n.forEach((function(r){for(var n=0,a=r.declarations;n<a.length;n++){var s=a[n];if(k(s)){var l=w(s);if(l){var u=T(s);_(u)&&C(t,u,i,o),e.hasSyntacticModifier(s,512)?c=l:g.push(l.text)}}}})),e.append(l,p(c,g,e.removeFileExtension(e.getBaseFileName(t.fileName)),o,s)),l}(t,r.oldImportsNeededByNewFile,r.newFileImportsFromOldFile,n,f,h,v),D=function(t,r,n,a){return e.flatMap(r,(function(r){if(s=r,e.Debug.assert(e.isSourceFile(s.parent),"Node parent should be a SourceFile"),(E(s)||e.isVariableStatement(s))&&!A(t,r,a)&&S(r,(function(t){return n.has(e.Debug.checkDefined(t.symbol))}))){var o=function(e,t){return t?[N(e)]:function(e){return i([e],P(e).map(I))}(e)}(r,a);if(o)return o}var s;return r}))}(t,a.all,r.oldFileImportsFromNewFile,h);return x.length&&D.length?i(i(i(i([],_),x),[4]),D):i(i(i([],_),x),D)}(n,F,c,s,o,M,h)),void function(t,r,n,i,a){var o=t.getCompilerOptions().configFile;if(o){var s=e.normalizePath(e.combinePaths(n,"..",i)),c=e.getRelativePathFromFile(o.fileName,s,a),l=o.statements[0]&&e.tryCast(o.statements[0].expression,e.isObjectLiteralExpression),u=l&&e.find(l.properties,(function(t){return e.isPropertyAssignment(t)&&e.isStringLiteral(t.name)&&"files"===t.name.text}));u&&e.isArrayLiteralExpression(u.initializer)&&r.insertNodeInListAfter(o,e.last(u.initializer.elements),e.factory.createStringLiteral(c),u.initializer.elements)}}(o,c,n.fileName,L,e.hostGetCanonicalFileName(f));var n,o,s,c,f,h,D,F,O,R,M,L})),renameFilename:void 0,renameLocation:void 0}}});var b=function(){function t(){this.map=new e.Map}return t.prototype.add=function(t){this.map.set(String(e.getSymbolId(t)),t)},t.prototype.has=function(t){return this.map.has(String(e.getSymbolId(t)))},t.prototype.delete=function(t){this.map.delete(String(e.getSymbolId(t)))},t.prototype.forEach=function(e){this.map.forEach(e)},t.prototype.forEachEntry=function(t){return e.forEachEntry(this.map,t)},t.prototype.clone=function(){var r=new t;return e.copyEntries(this.map,r.map),r},t}();function k(t){return E(t)&&e.isSourceFile(t.parent)||e.isVariableDeclaration(t)&&e.isSourceFile(t.parent.parent.parent)}function x(t){return e.isVariableDeclaration(t)?t.parent.parent.parent:t.parent}function E(e){switch(e.kind){case 253:case 254:case 259:case 258:case 257:case 256:case 263:return!0;default:return!1}}function S(t,r){switch(t.kind){case 253:case 254:case 259:case 258:case 257:case 256:case 263:return r(t);case 234:return e.firstDefined(t.declarationList.declarations,(function(e){return D(e.name,r)}));case 235:var n=t.expression;return e.isBinaryExpression(n)&&1===e.getAssignmentDeclarationKind(n)?r(t):void 0}}function D(t,r){switch(t.kind){case 78:return r(e.cast(t.parent,(function(t){return e.isVariableDeclaration(t)||e.isBindingElement(t)})));case 198:case 197:return e.firstDefined(t.elements,(function(t){return e.isOmittedExpression(t)?void 0:D(t.name,r)}));default:return e.Debug.assertNever(t,"Unexpected name kind "+t.kind)}}function w(t){return e.isExpressionStatement(t)?e.tryCast(t.expression.left.name,e.isIdentifier):e.tryCast(t.name,e.isIdentifier)}function T(t){switch(t.kind){case 251:return t.parent.parent;case 199:return T(e.cast(t.parent.parent,(function(t){return e.isVariableDeclaration(t)||e.isBindingElement(t)})));default:return t}}function C(t,r,n,i){if(!A(t,r,i))if(i)e.isExpressionStatement(r)||n.insertExportModifier(t,r);else{var a=P(r);0!==a.length&&n.insertNodesAfter(t,r,a.map(I))}}function A(t,r,n){return n?!e.isExpressionStatement(r)&&e.hasSyntacticModifier(r,1):P(r).some((function(r){return t.symbol.exports.has(e.escapeLeadingUnderscores(r))}))}function N(t){var r=e.concatenate([e.factory.createModifier(93)],t.modifiers);switch(t.kind){case 253:return e.factory.updateFunctionDeclaration(t,t.decorators,r,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body);case 254:return e.factory.updateClassDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members);case 234:return e.factory.updateVariableStatement(t,r,t.declarationList);case 259:return e.factory.updateModuleDeclaration(t,t.decorators,r,t.name,t.body);case 258:return e.factory.updateEnumDeclaration(t,t.decorators,r,t.name,t.members);case 257:return e.factory.updateTypeAliasDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.type);case 256:return e.factory.updateInterfaceDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members);case 263:return e.factory.updateImportEqualsDeclaration(t,t.decorators,r,t.isTypeOnly,t.name,t.moduleReference);case 235:return e.Debug.fail();default:return e.Debug.assertNever(t,"Unexpected declaration kind "+t.kind)}}function P(t){switch(t.kind){case 253:case 254:return[t.name.text];case 234:return e.mapDefined(t.declarationList.declarations,(function(t){return e.isIdentifier(t.name)?t.name.text:void 0}));case 259:case 258:case 257:case 256:case 263:return e.emptyArray;case 235:return e.Debug.fail("Can't export an ExpressionStatement");default:return e.Debug.assertNever(t,"Unexpected decl kind "+t.kind)}}function I(t){return e.factory.createExpressionStatement(e.factory.createBinaryExpression(e.factory.createPropertyAccessExpression(e.factory.createIdentifier("exports"),e.factory.createIdentifier(t)),62,e.factory.createIdentifier(t)))}}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Add or remove braces in an arrow function",i=e.Diagnostics.Add_or_remove_braces_in_an_arrow_function.message,o={name:"Add braces to arrow function",description:e.Diagnostics.Add_braces_to_arrow_function.message,kind:"refactor.rewrite.arrow.braces.add"},s={name:"Remove braces from arrow function",description:e.Diagnostics.Remove_braces_from_arrow_function.message,kind:"refactor.rewrite.arrow.braces.remove"};function c(r,n,i,a){void 0===i&&(i=!0);var c=e.getTokenAtPosition(r,n),l=e.getContainingFunction(c);if(!l)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_find_a_containing_arrow_function)};if(!e.isArrowFunction(l))return{error:e.getLocaleSpecificMessage(e.Diagnostics.Containing_function_is_not_an_arrow_function)};if(e.rangeContainsRange(l,c)&&(!e.rangeContainsRange(l.body,c)||i)){if(t.refactorKindBeginsWith(o.kind,a)&&e.isExpression(l.body))return{func:l,addBraces:!0,expression:l.body};if(t.refactorKindBeginsWith(s.kind,a)&&e.isBlock(l.body)&&1===l.body.statements.length){var u=e.first(l.body.statements);if(e.isReturnStatement(u))return{func:l,addBraces:!1,expression:u.expression,returnStatement:u}}}}t.registerRefactor(n,{kinds:[s.kind],getEditsForAction:function(r,n){var i=r.file,a=r.startPosition,l=c(i,a);e.Debug.assert(l&&!t.isRefactorErrorInfo(l),"Expected applicable refactor info");var u,d=l.expression,p=l.returnStatement,f=l.func;if(n===o.name){var m=e.factory.createReturnStatement(d);u=e.factory.createBlock([m],!0),e.suppressLeadingAndTrailingTrivia(u),e.copyLeadingComments(d,m,i,3,!0)}else if(n===s.name&&p){var g=d||e.factory.createVoidZero();u=e.needsParentheses(g)?e.factory.createParenthesizedExpression(g):g,e.suppressLeadingAndTrailingTrivia(u),e.copyTrailingAsLeadingComments(p,u,i,3,!1),e.copyLeadingComments(p,u,i,3,!1),e.copyTrailingComments(p,u,i,3,!1)}else e.Debug.fail("invalid action");var _=e.textChanges.ChangeTracker.with(r,(function(e){e.replaceNode(i,f.body,u)}));return{renameFilename:void 0,renameLocation:void 0,edits:_}},getAvailableActions:function(r){var l=r.file,u=r.startPosition,d=r.triggerReason,p=c(l,u,"invoked"===d);if(!p)return e.emptyArray;if(!t.isRefactorErrorInfo(p))return[{name:n,description:i,actions:[p.addBraces?o:s]}];if(r.preferences.provideRefactorNotApplicableReason)return[{name:n,description:i,actions:[a(a({},o),{notApplicableReason:p.error}),a(a({},s),{notApplicableReason:p.error})]}];return e.emptyArray}})}(t.addOrRemoveBracesToArrowFunction||(t.addOrRemoveBracesToArrowFunction={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Convert parameters to destructured object",a=2,o=e.getLocaleSpecificMessage(e.Diagnostics.Convert_parameters_to_destructured_object),s={name:n,description:o,kind:"refactor.rewrite.parameters.toDestructured"};function c(t,r){var n=e.getContainingObjectLiteralElement(t);if(n){var i=r.getContextualTypeForObjectLiteralElement(n),a=null==i?void 0:i.getSymbol();if(a&&!(6&e.getCheckFlags(a)))return a}}function l(t){var r=t.node;return e.isImportSpecifier(r.parent)||e.isImportClause(r.parent)||e.isImportEqualsDeclaration(r.parent)||e.isNamespaceImport(r.parent)||e.isExportSpecifier(r.parent)||e.isExportAssignment(r.parent)?r:void 0}function u(t){if(e.isDeclaration(t.node.parent))return t.node}function d(t){if(t.node.parent){var r=t.node,n=r.parent;switch(n.kind){case 204:case 205:var i=e.tryCast(n,e.isCallOrNewExpression);if(i&&i.expression===r)return i;break;case 202:var a=e.tryCast(n,e.isPropertyAccessExpression);if(a&&a.parent&&a.name===r){var o=e.tryCast(a.parent,e.isCallOrNewExpression);if(o&&o.expression===a)return o}break;case 203:var s=e.tryCast(n,e.isElementAccessExpression);if(s&&s.parent&&s.argumentExpression===r){var c=e.tryCast(s.parent,e.isCallOrNewExpression);if(c&&c.expression===s)return c}}}}function p(t){if(t.node.parent){var r=t.node,n=r.parent;switch(n.kind){case 202:var i=e.tryCast(n,e.isPropertyAccessExpression);if(i&&i.expression===r)return i;break;case 203:var a=e.tryCast(n,e.isElementAccessExpression);if(a&&a.expression===r)return a}}}function f(t){var r=t.node;if(2===e.getMeaningFromLocation(r)||e.isExpressionWithTypeArgumentsInClassExtendsClause(r.parent))return r}function m(t,r,n){var i=e.getTouchingToken(t,r),o=e.getContainingFunctionDeclaration(i);if(!function(t){var r=e.findAncestor(t,e.isJSDocNode);if(r){var n=e.findAncestor(r,(function(t){return!e.isJSDocNode(t)}));return!!n&&e.isFunctionLikeDeclaration(n)}return!1}(i))return!(o&&function(t,r){if(!function(t,r){return function(e){if(v(e))return e.length-1;return e.length}(t)>=a&&e.every(t,(function(t){return function(t,r){if(e.isRestParameter(t)){var n=r.getTypeAtLocation(t);if(!r.isArrayType(n)&&!r.isTupleType(n))return!1}return!t.modifiers&&!t.decorators&&e.isIdentifier(t.name)}(t,r)}))}(t.parameters,r))return!1;switch(t.kind){case 253:return h(t)&&_(t,r);case 166:if(e.isObjectLiteralExpression(t.parent)){var n=c(t.name,r);return 1===(null==n?void 0:n.declarations.length)&&_(t,r)}return _(t,r);case 167:return e.isClassDeclaration(t.parent)?h(t.parent)&&_(t,r):y(t.parent.parent)&&_(t,r);case 209:case 210:return y(t.parent)}return!1}(o,n)&&e.rangeContainsRange(o,i))||o.body&&e.rangeContainsRange(o.body,i)?void 0:o}function g(t){return e.isMethodSignature(t)&&(e.isInterfaceDeclaration(t.parent)||e.isTypeLiteralNode(t.parent))}function _(e,t){return!!e.body&&!t.isImplementationOfOverload(e)}function h(t){return!!t.name||!!e.findModifier(t,88)}function y(t){return e.isVariableDeclaration(t)&&e.isVarConst(t)&&e.isIdentifier(t.name)&&!t.type}function v(t){return t.length>0&&e.isThis(t[0].name)}function b(t){return v(t)&&(t=e.factory.createNodeArray(t.slice(1),t.hasTrailingComma)),t}function k(t,r){var n=b(t.parameters),i=e.isRestParameter(e.last(n)),a=i?r.slice(0,n.length-1):r,o=e.map(a,(function(t,r){var i,a,o=E(n[r]),s=(i=o,a=t,e.isIdentifier(a)&&e.getTextOfIdentifierOrLiteral(a)===i?e.factory.createShorthandPropertyAssignment(i):e.factory.createPropertyAssignment(i,a));return e.suppressLeadingAndTrailingTrivia(s.name),e.isPropertyAssignment(s)&&e.suppressLeadingAndTrailingTrivia(s.initializer),e.copyComments(t,s),s}));if(i&&r.length>=n.length){var s=r.slice(n.length-1),c=e.factory.createPropertyAssignment(E(e.last(n)),e.factory.createArrayLiteralExpression(s));o.push(c)}return e.factory.createObjectLiteralExpression(o,!1)}function x(t,r,n){var i,a,o,s=r.getTypeChecker(),c=b(t.parameters),l=e.map(c,(function(t){var r=e.factory.createBindingElement(void 0,void 0,E(t),e.isRestParameter(t)&&_(t)?e.factory.createArrayLiteralExpression():t.initializer);e.suppressLeadingAndTrailingTrivia(r),t.initializer&&r.initializer&&e.copyComments(t.initializer,r.initializer);return r})),u=e.factory.createObjectBindingPattern(l),d=(i=c,a=e.map(i,g),e.addEmitFlags(e.factory.createTypeLiteralNode(a),1));e.every(c,_)&&(o=e.factory.createObjectLiteralExpression());var p=e.factory.createParameterDeclaration(void 0,void 0,void 0,u,void 0,d,o);if(v(t.parameters)){var f=t.parameters[0],m=e.factory.createParameterDeclaration(void 0,void 0,void 0,f.name,void 0,f.type);return e.suppressLeadingAndTrailingTrivia(m.name),e.copyComments(f.name,m.name),f.type&&(e.suppressLeadingAndTrailingTrivia(m.type),e.copyComments(f.type,m.type)),e.factory.createNodeArray([m,p])}return e.factory.createNodeArray([p]);function g(t){var i,a,o=t.type;o||!t.initializer&&!e.isRestParameter(t)||(i=t,a=s.getTypeAtLocation(i),o=e.getTypeNodeIfAccessible(a,i,r,n));var c=e.factory.createPropertySignature(void 0,E(t),_(t)?e.factory.createToken(57):t.questionToken,o);return e.suppressLeadingAndTrailingTrivia(c),e.copyComments(t.name,c.name),t.type&&c.type&&e.copyComments(t.type,c.type),c}function _(t){if(e.isRestParameter(t)){var r=s.getTypeAtLocation(t);return!s.isTupleType(r)}return s.isOptionalParameter(t)}}function E(t){return e.getTextOfIdentifierOrLiteral(t.name)}t.registerRefactor(n,{kinds:[s.kind],getEditsForAction:function(t,r){e.Debug.assert(r===n,"Unexpected action name");var a=t.file,o=t.startPosition,s=t.program,_=t.cancellationToken,h=t.host,y=m(a,o,s.getTypeChecker());if(!y||!_)return;var v=function(t,r,n){var a=function(t){switch(t.kind){case 253:return t.name?[t.name]:[e.Debug.checkDefined(e.findModifier(t,88),"Nameless function declaration should be a default export")];case 166:return[t.name];case 167:var r=e.Debug.checkDefined(e.findChildOfKind(t,133,t.getSourceFile()),"Constructor declaration should have constructor keyword");return 223===t.parent.kind?[t.parent.parent.name,r]:[r];case 210:return[t.parent.name];case 209:return t.name?[t.name,t.parent.name]:[t.parent.name];default:return e.Debug.assertNever(t,"Unexpected function declaration kind "+t.kind)}}(t),o=e.isConstructorDeclaration(t)?function(t){switch(t.parent.kind){case 254:var r=t.parent;return r.name?[r.name]:[e.Debug.checkDefined(e.findModifier(r,88),"Nameless class declaration should be a default export")];case 223:var n=t.parent,i=t.parent.parent,a=n.name;return a?[a,i.name]:[i.name]}}(t):[],s=e.deduplicate(i(i([],a),o),e.equateValues),m=r.getTypeChecker(),_=e.flatMap(s,(function(t){return e.FindAllReferences.getReferenceEntriesForNode(-1,t,r,r.getSourceFiles(),n)})),h=y(_);e.every(h.declarations,(function(t){return e.contains(s,t)}))||(h.valid=!1);return h;function y(r){for(var n={accessExpressions:[],typeUsages:[]},i={functionCalls:[],declarations:[],classReferences:n,valid:!0},s=e.map(a,v),_=e.map(o,v),h=e.isConstructorDeclaration(t),y=e.map(a,(function(e){return c(e,m)})),b=0,k=r;b<k.length;b++){var x=k[b];if(0!==x.kind){if(e.contains(y,v(x.node))){if(g(x.node.parent)){i.signature=x.node.parent;continue}if(S=d(x)){i.functionCalls.push(S);continue}}var E=c(x.node,m);if(E&&e.contains(y,E))if(D=u(x)){i.declarations.push(D);continue}if(e.contains(s,v(x.node))||e.isNewExpressionTarget(x.node)){var S;if(l(x))continue;if(D=u(x)){i.declarations.push(D);continue}if(S=d(x)){i.functionCalls.push(S);continue}}if(h&&e.contains(_,v(x.node))){var D;if(l(x))continue;if(D=u(x)){i.declarations.push(D);continue}var w=p(x);if(w){n.accessExpressions.push(w);continue}if(e.isClassDeclaration(t.parent)){var T=f(x);if(T){n.typeUsages.push(T);continue}}}i.valid=!1}else i.valid=!1}return i}function v(t){var r=m.getSymbolAtLocation(t);return r&&e.getSymbolTarget(r,m)}}(y,s,_);if(v.valid){var b=e.textChanges.ChangeTracker.with(t,(function(t){return function(t,r,n,i,a,o){var s=o.signature,c=e.map(x(a,r,n),(function(t){return e.getSynthesizedDeepClone(t)}));if(s){m(s,e.map(x(s,r,n),(function(t){return e.getSynthesizedDeepClone(t)})))}m(a,c);for(var l=e.sortAndDeduplicate(o.functionCalls,(function(t,r){return e.compareValues(t.pos,r.pos)})),u=0,d=l;u<d.length;u++){var p=d[u];if(p.arguments&&p.arguments.length){var f=e.getSynthesizedDeepClone(k(a,p.arguments),!0);i.replaceNodeRange(e.getSourceFileOfNode(p),e.first(p.arguments),e.last(p.arguments),f,{leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Include})}}function m(r,n){i.replaceNodeRangeWithNodes(t,e.first(r.parameters),e.last(r.parameters),n,{joiner:", ",indentation:0,leadingTriviaOption:e.textChanges.LeadingTriviaOption.IncludeAll,trailingTriviaOption:e.textChanges.TrailingTriviaOption.Include})}}(a,s,h,t,y,v)}));return{renameFilename:void 0,renameLocation:void 0,edits:b}}return{edits:[]}},getAvailableActions:function(t){var r=t.file,i=t.startPosition;return e.isSourceFileJS(r)?e.emptyArray:m(r,i,t.program.getTypeChecker())?[{name:n,description:o,actions:[s]}]:e.emptyArray}})}(t.convertParamsToDestructuredObject||(t.convertParamsToDestructuredObject={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Convert to template string",i=e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_template_string),o={name:n,description:i,kind:"refactor.rewrite.string"};function s(t,r){var n=e.getTokenAtPosition(t,r),i=l(n);return!u(i)&&e.isParenthesizedExpression(i.parent)&&e.isBinaryExpression(i.parent.parent)?i.parent.parent:n}function c(t,r){var n=l(r),i=t.file,a=function(t,r){var n=t.nodes,i=t.operators,a=p(i,r),o=f(n,r,a),s=m(0,n),c=s[0],l=s[1],u=s[2];if(c===n.length){var d=e.factory.createNoSubstitutionTemplateLiteral(l);return o(u,d),d}var _=[],h=e.factory.createTemplateHead(l);o(u,h);for(var y,v=function(t){var r=function(t){e.isParenthesizedExpression(t)&&(g(t),t=t.expression);return t}(n[t]);a(t,r);var i=m(t+1,n),s=i[0],c=i[1],l=i[2],u=(t=s-1)===n.length-1;if(e.isTemplateExpression(r)){var d=e.map(r.templateSpans,(function(t,n){g(t);var i=r.templateSpans[n+1],a=t.literal.text+(i?"":c);return e.factory.createTemplateSpan(t.expression,u?e.factory.createTemplateTail(a):e.factory.createTemplateMiddle(a))}));_.push.apply(_,d)}else{var p=u?e.factory.createTemplateTail(c):e.factory.createTemplateMiddle(c);o(l,p),_.push(e.factory.createTemplateSpan(r,p))}y=t},b=c;b<n.length;b++)v(b),b=y;return e.factory.createTemplateExpression(h,_)}(d(n),i),o=e.getTrailingCommentRanges(i.text,n.end);if(o){var s=o[o.length-1],c={pos:o[0].pos,end:s.end};return e.textChanges.ChangeTracker.with(t,(function(e){e.deleteRange(i,c),e.replaceNode(i,n,a)}))}return e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(i,n,a)}))}function l(t){return e.findAncestor(t.parent,(function(t){switch(t.kind){case 202:case 203:return!1;case 220:case 218:return!(e.isBinaryExpression(t.parent)&&(r=t.parent,62!==r.operatorToken.kind));default:return"quit"}var r}))||t}function u(e){var t=d(e),r=t.containsString,n=t.areOperatorsValid;return r&&n}function d(t){if(e.isBinaryExpression(t)){var r=d(t.left),n=r.nodes,i=r.operators,a=r.containsString,o=r.areOperatorsValid;if(!a&&!e.isStringLiteral(t.right)&&!e.isTemplateExpression(t.right))return{nodes:[t],operators:[],containsString:!1,areOperatorsValid:!0};var s=39===t.operatorToken.kind,c=o&&s;return n.push(t.right),i.push(t.operatorToken),{nodes:n,operators:i,containsString:!0,areOperatorsValid:c}}return{nodes:[t],operators:[],containsString:e.isStringLiteral(t),areOperatorsValid:!0}}t.registerRefactor(n,{kinds:[o.kind],getEditsForAction:function(t,r){var n=t.file,a=t.startPosition,o=s(n,a);if(r===i)return{edits:c(t,o)};return e.Debug.fail("invalid action")},getAvailableActions:function(t){var r=t.file,c=t.startPosition,d=l(s(r,c)),p={name:n,description:i,actions:[]};if(e.isBinaryExpression(d)&&u(d))return p.actions.push(o),[p];if(t.preferences.provideRefactorNotApplicableReason)return p.actions.push(a(a({},o),{notApplicableReason:e.getLocaleSpecificMessage(e.Diagnostics.Can_only_convert_string_concatenation)})),[p];return e.emptyArray}});var p=function(t,r){return function(n,i){n<t.length&&e.copyTrailingComments(t[n],i,r,3,!1)}},f=function(t,r,n){return function(i,a){for(;i.length>0;){var o=i.shift();e.copyTrailingComments(t[o],a,r,3,!1),n(o,a)}}};function m(t,r){for(var n=[],i="";t<r.length;){var a=r[t];if(!e.isStringLiteralLike(a)){if(e.isTemplateExpression(a)){i+=a.head.text;break}break}i+=a.text,n.push(t),t++}return[t,i,n]}function g(t){var r=t.getSourceFile();e.copyTrailingComments(t,t.expression,r,3,!1),e.copyTrailingAsLeadingComments(t.expression,t.expression,r,3,!1)}}(t.convertStringOrTemplateLiteral||(t.convertStringOrTemplateLiteral={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Convert arrow function or function expression",i=e.getLocaleSpecificMessage(e.Diagnostics.Convert_arrow_function_or_function_expression),o={name:"Convert to anonymous function",description:e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},s={name:"Convert to named function",description:e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_named_function),kind:"refactor.rewrite.function.named"},c={name:"Convert to arrow function",description:e.getLocaleSpecificMessage(e.Diagnostics.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"};function l(t){var r=!1;return t.forEachChild((function t(n){e.isThis(n)?r=!0:e.isClassLike(n)||e.isFunctionDeclaration(n)||e.isFunctionExpression(n)||e.forEachChild(n,t)})),r}function u(t,r,n){var i=e.getTokenAtPosition(t,r),a=n.getTypeChecker(),o=function(t,r,n){if(!function(t){return e.isVariableDeclaration(t)||e.isVariableDeclarationList(t)&&1===t.declarations.length}(n))return;var i=(e.isVariableDeclaration(n)?n:e.first(n.declarations)).initializer;if(i&&(e.isArrowFunction(i)||e.isFunctionExpression(i)&&!p(t,r,i)))return i;return}(t,a,i.parent);if(o&&!l(o.body))return{selectedVariableDeclaration:!0,func:o};var s=e.getContainingFunction(i);if(s&&(e.isFunctionExpression(s)||e.isArrowFunction(s))&&!e.rangeContainsRange(s.body,i)&&!l(s.body)){if(e.isFunctionExpression(s)&&p(t,a,s))return;return{selectedVariableDeclaration:!1,func:s}}}function d(t){return e.isExpression(t)?e.factory.createBlock([e.factory.createReturnStatement(t)],!0):t}function p(t,r,n){return!!n.name&&e.FindAllReferences.Core.isSymbolReferencedInFile(n.name,r,t)}t.registerRefactor(n,{kinds:[o.kind,s.kind,c.kind],getEditsForAction:function(t,r){var n=t.file,i=t.startPosition,a=t.program,l=u(n,i,a);if(!l)return;var p=l.func,f=[];switch(r){case o.name:f.push.apply(f,function(t,r){var n=t.file,i=d(r.body),a=e.factory.createFunctionExpression(r.modifiers,r.asteriskToken,void 0,r.typeParameters,r.parameters,r.type,i);return e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(n,r,a)}))}(t,p));break;case s.name:var m=function(t){var r=t.parent;if(!e.isVariableDeclaration(r)||!e.isVariableDeclarationInVariableStatement(r))return;var n=r.parent,i=n.parent;return e.isVariableDeclarationList(n)&&e.isVariableStatement(i)&&e.isIdentifier(r.name)?{variableDeclaration:r,variableDeclarationList:n,statement:i,name:r.name}:void 0}(p);if(!m)return;f.push.apply(f,function(t,r,n){var i=t.file,a=d(r.body),o=n.variableDeclaration,s=n.variableDeclarationList,c=n.statement,l=n.name;e.suppressLeadingTrivia(c);var u=e.factory.createFunctionDeclaration(r.decorators,c.modifiers,r.asteriskToken,l,r.typeParameters,r.parameters,r.type,a);return 1===s.declarations.length?e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(i,c,u)})):e.textChanges.ChangeTracker.with(t,(function(e){e.delete(i,o),e.insertNodeAfter(i,c,u)}))}(t,p,m));break;case c.name:if(!e.isFunctionExpression(p))return;f.push.apply(f,function(t,r){var n,i=t.file,a=r.body.statements,o=a[0];!function(t,r){return 1===t.statements.length&&e.isReturnStatement(r)&&!!r.expression}(r.body,o)?n=r.body:(n=o.expression,e.suppressLeadingAndTrailingTrivia(n),e.copyComments(o,n));var s=e.factory.createArrowFunction(r.modifiers,r.typeParameters,r.parameters,r.type,e.factory.createToken(38),n);return e.textChanges.ChangeTracker.with(t,(function(e){return e.replaceNode(i,r,s)}))}(t,p));break;default:return e.Debug.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:f}},getAvailableActions:function(r){var l=r.file,d=r.startPosition,p=r.program,f=r.kind,m=u(l,d,p);if(!m)return e.emptyArray;var g=m.selectedVariableDeclaration,_=m.func,h=[],y=[];if(t.refactorKindBeginsWith(s.kind,f)){(v=g||e.isArrowFunction(_)&&e.isVariableDeclaration(_.parent)?void 0:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_convert_to_named_function))?y.push(a(a({},s),{notApplicableReason:v})):h.push(s)}if(t.refactorKindBeginsWith(o.kind,f)){(v=!g&&e.isArrowFunction(_)?void 0:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_convert_to_anonymous_function))?y.push(a(a({},o),{notApplicableReason:v})):h.push(o)}if(t.refactorKindBeginsWith(c.kind,f)){var v;(v=e.isFunctionExpression(_)?void 0:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_convert_to_arrow_function))?y.push(a(a({},c),{notApplicableReason:v})):h.push(c)}return[{name:n,description:i,actions:0===h.length&&r.preferences.provideRefactorNotApplicableReason?y:h}]}})}(t.convertArrowFunctionOrFunctionExpression||(t.convertArrowFunctionOrFunctionExpression={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){!function(t){!function(r){var n="Infer function return type",i=e.Diagnostics.Infer_function_return_type.message,o={name:n,description:i,kind:"refactor.rewrite.function.returnType"};function s(r){if(!e.isInJSFile(r.file)&&t.refactorKindBeginsWith(o.kind,r.kind)){var n=e.getTokenAtPosition(r.file,r.startPosition),i=e.findAncestor(n,c);if(!i||!i.body||i.type)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Return_type_must_be_inferred_from_a_function)};var a=r.program.getTypeChecker(),s=function(t,r){if(t.isImplementationOfOverload(r)){var n=t.getTypeAtLocation(r).getCallSignatures();if(n.length>1)return t.getUnionType(e.mapDefined(n,(function(e){return e.getReturnType()})))}var i=t.getSignatureFromDeclaration(r);if(i)return t.getReturnTypeOfSignature(i)}(a,i);if(!s)return{error:e.getLocaleSpecificMessage(e.Diagnostics.Could_not_determine_function_return_type)};var l=a.typeToTypeNode(s,i,1);return l?{declaration:i,returnTypeNode:l}:void 0}}function c(e){switch(e.kind){case 253:case 209:case 210:case 166:return!0;default:return!1}}t.registerRefactor(n,{kinds:[o.kind],getEditsForAction:function(r){var n=s(r);if(n&&!t.isRefactorErrorInfo(n)){return{renameFilename:void 0,renameLocation:void 0,edits:e.textChanges.ChangeTracker.with(r,(function(e){return e.tryInsertTypeAnnotation(r.file,n.declaration,n.returnTypeNode)}))}}return},getAvailableActions:function(r){var c=s(r);if(!c)return e.emptyArray;if(!t.isRefactorErrorInfo(c))return[{name:n,description:i,actions:[o]}];if(r.preferences.provideRefactorNotApplicableReason)return[{name:n,description:i,actions:[a(a({},o),{notApplicableReason:c.error})]}];return e.emptyArray}})}(t.inferFunctionReturnType||(t.inferFunctionReturnType={}))}(e.refactor||(e.refactor={}))}(d||(d={})),function(e){function t(t,n,i,a){var o=e.isNodeKind(t)?new r(t,n,i):78===t?new u(78,n,i):79===t?new d(79,n,i):new c(t,n,i);return o.parent=a,o.flags=1099100160&a.flags,o}e.servicesVersion="0.8";var r=function(){function r(e,t,r){this.pos=t,this.end=r,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.kind=e}return r.prototype.assertHasRealPosition=function(t){e.Debug.assert(!e.positionIsSynthesized(this.pos)&&!e.positionIsSynthesized(this.end),t||"Node must have a real position for this operation")},r.prototype.getSourceFile=function(){return e.getSourceFileOfNode(this)},r.prototype.getStart=function(t,r){return this.assertHasRealPosition(),e.getTokenPosOfNode(this,t,r)},r.prototype.getFullStart=function(){return this.assertHasRealPosition(),this.pos},r.prototype.getEnd=function(){return this.assertHasRealPosition(),this.end},r.prototype.getWidth=function(e){return this.assertHasRealPosition(),this.getEnd()-this.getStart(e)},r.prototype.getFullWidth=function(){return this.assertHasRealPosition(),this.end-this.pos},r.prototype.getLeadingTriviaWidth=function(e){return this.assertHasRealPosition(),this.getStart(e)-this.pos},r.prototype.getFullText=function(e){return this.assertHasRealPosition(),(e||this.getSourceFile()).text.substring(this.pos,this.end)},r.prototype.getText=function(e){return this.assertHasRealPosition(),e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())},r.prototype.getChildCount=function(e){return this.getChildren(e).length},r.prototype.getChildAt=function(e,t){return this.getChildren(t)[e]},r.prototype.getChildren=function(r){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),this._children||(this._children=function(r,i){if(!e.isNodeKind(r.kind))return e.emptyArray;var a=[];if(e.isJSDocCommentContainingNode(r))return r.forEachChild((function(e){a.push(e)})),a;var o=i?i.fileName:r.getSourceFile().fileName;o&&8===e.getScriptKindFromFileName(o)&&e.scanner.setEtsContext(!0);e.scanner.setText((i||r.getSourceFile()).text);var s=r.pos,c=function(e){n(a,s,e.pos,r),a.push(e),s=e.end},l=function(e){n(a,s,e.pos,r),a.push(function(e,r){var i=t(337,e.pos,e.end,r);i._children=[];for(var a=e.pos,o=0,s=e;o<s.length;o++){var c=s[o];c.virtual||(n(i._children,a,c.pos,r),i._children.push(c),a=c.end)}return n(i._children,a,e.end,r),i}(e,r)),s=e.end};return e.forEach(r.jsDoc,c),s=r.pos,r.forEachChild(c,l),n(a,s,r.end,r),e.scanner.setText(void 0),e.scanner.setEtsContext(!1),a}(this,r))},r.prototype.getFirstToken=function(t){this.assertHasRealPosition();var r=this.getChildren(t);if(r.length){var n=e.find(r,(function(e){return e.kind<304||e.kind>336}));return n.kind<158?n:n.getFirstToken(t)}},r.prototype.getLastToken=function(t){this.assertHasRealPosition();var r=this.getChildren(t),n=e.lastOrUndefined(r);if(n)return n.kind<158?n:n.getLastToken(t)},r.prototype.forEachChild=function(t,r){return e.forEachChild(this,t,r)},r}();function n(r,n,i,a){if(!a.virtual)for(e.scanner.setTextPos(n);n<i;){var o=e.scanner.scan(),s=e.scanner.getTextPos();if(s<=i&&(78===o&&e.Debug.fail("Did not expect "+e.Debug.formatSyntaxKind(a.kind)+" to have an Identifier in its trivia"),r.push(t(o,n,s,a))),n=s,1===o)break}}var o=function(){function t(e,t){this.pos=e,this.end=t,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0}return t.prototype.getSourceFile=function(){return e.getSourceFileOfNode(this)},t.prototype.getStart=function(t,r){return e.getTokenPosOfNode(this,t,r)},t.prototype.getFullStart=function(){return this.pos},t.prototype.getEnd=function(){return this.end},t.prototype.getWidth=function(e){return this.getEnd()-this.getStart(e)},t.prototype.getFullWidth=function(){return this.end-this.pos},t.prototype.getLeadingTriviaWidth=function(e){return this.getStart(e)-this.pos},t.prototype.getFullText=function(e){return(e||this.getSourceFile()).text.substring(this.pos,this.end)},t.prototype.getText=function(e){return e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())},t.prototype.getChildCount=function(){return 0},t.prototype.getChildAt=function(){},t.prototype.getChildren=function(){return 1===this.kind&&this.jsDoc||e.emptyArray},t.prototype.getFirstToken=function(){},t.prototype.getLastToken=function(){},t.prototype.forEachChild=function(){},t}(),s=function(){function t(e,t){this.flags=e,this.escapedName=t}return t.prototype.getFlags=function(){return this.flags},Object.defineProperty(t.prototype,"name",{get:function(){return e.symbolName(this)},enumerable:!1,configurable:!0}),t.prototype.getEscapedName=function(){return this.escapedName},t.prototype.getName=function(){return this.name},t.prototype.getDeclarations=function(){return this.declarations},t.prototype.getDocumentationComment=function(t){if(!this.documentationComment)if(this.documentationComment=e.emptyArray,!this.declarations&&this.target&&this.target.tupleLabelDeclaration){var r=this.target.tupleLabelDeclaration;this.documentationComment=g([r],t)}else this.documentationComment=g(this.declarations,t);return this.documentationComment},t.prototype.getContextualDocumentationComment=function(t,r){switch(null==t?void 0:t.kind){case 168:return this.contextualGetAccessorDocumentationComment||(this.contextualGetAccessorDocumentationComment=e.emptyArray,this.contextualGetAccessorDocumentationComment=g(e.filter(this.declarations,e.isGetAccessor),r)),this.contextualGetAccessorDocumentationComment;case 169:return this.contextualSetAccessorDocumentationComment||(this.contextualSetAccessorDocumentationComment=e.emptyArray,this.contextualSetAccessorDocumentationComment=g(e.filter(this.declarations,e.isSetAccessor),r)),this.contextualSetAccessorDocumentationComment;default:return this.getDocumentationComment(r)}},t.prototype.getJsDocTags=function(){return void 0===this.tags&&(this.tags=e.JsDoc.getJsDocTagsFromDeclarations(this.declarations)),this.tags},t}(),c=function(e){function t(t,r,n){var i=e.call(this,r,n)||this;return i.kind=t,i}return l(t,e),t}(o),u=function(t){function r(e,r,n){var i=t.call(this,r,n)||this;return i.kind=78,i}return l(r,t),Object.defineProperty(r.prototype,"text",{get:function(){return e.idText(this)},enumerable:!1,configurable:!0}),r}(o);u.prototype.kind=78;var d=function(t){function r(e,r,n){return t.call(this,r,n)||this}return l(r,t),Object.defineProperty(r.prototype,"text",{get:function(){return e.idText(this)},enumerable:!1,configurable:!0}),r}(o);d.prototype.kind=79;var p=function(){function t(e,t){this.checker=e,this.flags=t}return t.prototype.getFlags=function(){return this.flags},t.prototype.getSymbol=function(){return this.symbol},t.prototype.getProperties=function(){return this.checker.getPropertiesOfType(this)},t.prototype.getProperty=function(e){return this.checker.getPropertyOfType(this,e)},t.prototype.getApparentProperties=function(){return this.checker.getAugmentedPropertiesOfType(this)},t.prototype.getCallSignatures=function(){return this.checker.getSignaturesOfType(this,0)},t.prototype.getConstructSignatures=function(){return this.checker.getSignaturesOfType(this,1)},t.prototype.getStringIndexType=function(){return this.checker.getIndexTypeOfType(this,0)},t.prototype.getNumberIndexType=function(){return this.checker.getIndexTypeOfType(this,1)},t.prototype.getBaseTypes=function(){return this.isClassOrInterface()?this.checker.getBaseTypes(this):void 0},t.prototype.isNullableType=function(){return this.checker.isNullableType(this)},t.prototype.getNonNullableType=function(){return this.checker.getNonNullableType(this)},t.prototype.getNonOptionalType=function(){return this.checker.getNonOptionalType(this)},t.prototype.getConstraint=function(){return this.checker.getBaseConstraintOfType(this)},t.prototype.getDefault=function(){return this.checker.getDefaultFromTypeParameter(this)},t.prototype.isUnion=function(){return!!(1048576&this.flags)},t.prototype.isIntersection=function(){return!!(2097152&this.flags)},t.prototype.isUnionOrIntersection=function(){return!!(3145728&this.flags)},t.prototype.isLiteral=function(){return!!(384&this.flags)},t.prototype.isStringLiteral=function(){return!!(128&this.flags)},t.prototype.isNumberLiteral=function(){return!!(256&this.flags)},t.prototype.isTypeParameter=function(){return!!(262144&this.flags)},t.prototype.isClassOrInterface=function(){return!!(3&e.getObjectFlags(this))},t.prototype.isClass=function(){return!!(1&e.getObjectFlags(this))},Object.defineProperty(t.prototype,"typeArguments",{get:function(){if(4&e.getObjectFlags(this))return this.checker.getTypeArguments(this)},enumerable:!1,configurable:!0}),t}(),f=function(){function t(e,t){this.checker=e,this.flags=t}return t.prototype.getDeclaration=function(){return this.declaration},t.prototype.getTypeParameters=function(){return this.typeParameters},t.prototype.getParameters=function(){return this.parameters},t.prototype.getReturnType=function(){return this.checker.getReturnTypeOfSignature(this)},t.prototype.getDocumentationComment=function(){return this.documentationComment||(this.documentationComment=g(e.singleElementArray(this.declaration),this.checker))},t.prototype.getJsDocTags=function(){return void 0===this.jsDocTags&&(this.jsDocTags=this.declaration?function(t,r){var n=e.JsDoc.getJsDocTagsFromDeclarations(t);(0===n.length||t.some(m))&&e.forEachUnique(t,(function(e){var t=_(r,e,(function(e){return e.getJsDocTags()}));t&&(n=i(i([],t),n))}));return n}([this.declaration],this.checker):[]),this.jsDocTags},t}();function m(t){return e.getJSDocTags(t).some((function(e){return"inheritDoc"===e.tagName.text}))}function g(t,r){if(!t)return e.emptyArray;var n=e.JsDoc.getJsDocCommentsFromDeclarations(t);return r&&(0===n.length||t.some(m))&&e.forEachUnique(t,(function(t){var i=_(r,t,(function(e){return e.getDocumentationComment(r)}));i&&(n=0===n.length?i.slice():i.concat(e.lineBreakPart(),n))})),n}function _(t,r,n){return e.firstDefined(r.parent?e.getAllSuperTypeNodes(r.parent):e.emptyArray,(function(e){var i=t.getPropertyOfType(t.getTypeAtLocation(e),r.symbol.name);return i?n(i):void 0}))}var h=function(t){function r(e,r,n){var i=t.call(this,e,r,n)||this;return i.kind=300,i}return l(r,t),r.prototype.update=function(t,r){return e.updateSourceFile(this,t,r)},r.prototype.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(this,t)},r.prototype.getLineStarts=function(){return e.getLineStarts(this)},r.prototype.getPositionOfLineAndCharacter=function(t,r,n){return e.computePositionOfLineAndCharacter(e.getLineStarts(this),t,r,this.text,n)},r.prototype.getLineEndOfPosition=function(e){var t,r=this.getLineAndCharacterOfPosition(e).line,n=this.getLineStarts();r+1>=n.length&&(t=this.getEnd()),t||(t=n[r+1]-1);var i=this.getFullText();return"\n"===i[t]&&"\r"===i[t-1]?t-1:t},r.prototype.getNamedDeclarations=function(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations},r.prototype.computeNamedDeclarations=function(){var t=e.createMultiMap();return this.forEachChild((function i(a){switch(a.kind){case 253:case 209:case 166:case 165:var o=a,s=n(o);if(s){var c=function(e){var r=t.get(e);r||t.set(e,r=[]);return r}(s),l=e.lastOrUndefined(c);l&&o.parent===l.parent&&o.symbol===l.symbol?o.body&&!l.body&&(c[c.length-1]=o):c.push(o)}e.forEachChild(a,i);break;case 254:case 223:case 255:case 256:case 257:case 258:case 259:case 263:case 273:case 268:case 265:case 266:case 168:case 169:case 178:r(a),e.forEachChild(a,i);break;case 161:if(!e.hasSyntacticModifier(a,92))break;case 251:case 199:var u=a;if(e.isBindingPattern(u.name)){e.forEachChild(u.name,i);break}u.initializer&&i(u.initializer);case 294:case 164:case 163:r(a);break;case 270:var d=a;d.exportClause&&(e.isNamedExports(d.exportClause)?e.forEach(d.exportClause.elements,i):i(d.exportClause.name));break;case 264:var p=a.importClause;p&&(p.name&&r(p.name),p.namedBindings&&(266===p.namedBindings.kind?r(p.namedBindings):e.forEach(p.namedBindings.elements,i)));break;case 218:0!==e.getAssignmentDeclarationKind(a)&&r(a);default:e.forEachChild(a,i)}})),t;function r(e){var r=n(e);r&&t.add(r,e)}function n(t){var r=e.getNonAssignedNameOfDeclaration(t);return r&&(e.isComputedPropertyName(r)&&e.isPropertyAccessExpression(r.expression)?r.expression.name.text:e.isPropertyName(r)?e.getNameFromPropertyName(r):void 0)}},r}(r),y=function(){function t(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r}return t.prototype.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(this,t)},t}();function v(t){var r=!0;for(var n in t)if(e.hasProperty(t,n)&&!b(n)){r=!1;break}if(r)return t;var i={};for(var n in t){if(e.hasProperty(t,n))i[b(n)?n:n.charAt(0).toLowerCase()+n.substr(1)]=t[n]}return i}function b(e){return!e.length||e.charAt(0)===e.charAt(0).toLowerCase()}function k(){return{target:1,jsx:1}}e.toEditorSettings=v,e.displayPartsToString=function(t){return t?e.map(t,(function(e){return e.text})).join(""):""},e.getDefaultCompilerOptions=k,e.getSupportedCodeFixes=function(){return e.codefix.getSupportedErrorCodes()};var x=function(){function t(t,r){this.host=t,this.currentDirectory=t.getCurrentDirectory(),this.fileNameToEntry=new e.Map;for(var n=0,i=t.getScriptFileNames();n<i.length;n++){var a=i[n];this.createEntry(a,e.toPath(a,this.currentDirectory,r))}this._compilationSettings=t.getCompilationSettings()||{target:1,jsx:1}}return t.prototype.compilationSettings=function(){return this._compilationSettings},t.prototype.getProjectReferences=function(){return this.host.getProjectReferences&&this.host.getProjectReferences()},t.prototype.createEntry=function(t,r){var n,i=this.host.getScriptSnapshot(t);return n=i?{hostFileName:t,version:this.host.getScriptVersion(t),scriptSnapshot:i,scriptKind:e.getScriptKind(t,this.host)}:t,this.fileNameToEntry.set(r,n),n},t.prototype.getEntryByPath=function(e){return this.fileNameToEntry.get(e)},t.prototype.getHostFileInformation=function(t){var r=this.fileNameToEntry.get(t);return e.isString(r)?void 0:r},t.prototype.getOrCreateEntryByPath=function(t,r){var n=this.getEntryByPath(r)||this.createEntry(t,r);return e.isString(n)?void 0:n},t.prototype.getRootFileNames=function(){var t=[];return this.fileNameToEntry.forEach((function(r){e.isString(r)?t.push(r):t.push(r.hostFileName)})),t},t.prototype.getScriptSnapshot=function(e){var t=this.getHostFileInformation(e);return t&&t.scriptSnapshot},t}(),E=function(){function t(e){this.host=e}return t.prototype.getCurrentSourceFile=function(t){var r=this.host.getScriptSnapshot(t);if(!r)throw new Error("Could not find file: '"+t+"'.");var n,i=e.getScriptKind(t,this.host),a=this.host.getScriptVersion(t);if(this.currentFileName!==t)n=D(t,r,99,a,!0,i,this.host.getCompilationSettings());else if(this.currentFileVersion!==a){var o=r.getChangeRange(this.currentFileScriptSnapshot);n=w(this.currentSourceFile,r,a,o,void 0,this.host.getCompilationSettings())}return n&&(this.currentFileVersion=a,this.currentFileName=t,this.currentFileScriptSnapshot=r,this.currentSourceFile=n),this.currentSourceFile},t}();function S(e,t,r){e.version=r,e.scriptSnapshot=t}function D(t,r,n,i,a,o,s){var c=e.createSourceFile(t,e.getSnapshotText(r),n,a,o,s);return S(c,r,i),c}function w(t,r,n,i,a,o){if(i&&n!==t.version){var s=void 0,c=0!==i.span.start?t.text.substr(0,i.span.start):"",l=e.textSpanEnd(i.span)!==t.text.length?t.text.substr(e.textSpanEnd(i.span)):"";if(0===i.newLength)s=c&&l?c+l:c||l;else{var u=r.getText(i.span.start,i.span.start+i.newLength);s=c&&l?c+u+l:c?c+u:u+l}var d=e.updateSourceFile(t,s,i,a,o);return S(d,r,n),d.nameTable=void 0,t!==d&&t.scriptSnapshot&&(t.scriptSnapshot.dispose&&t.scriptSnapshot.dispose(),t.scriptSnapshot=void 0),d}return D(t.fileName,r,t.languageVersion,n,!0,t.scriptKind,o)}e.createLanguageServiceSourceFile=D,e.updateLanguageServiceSourceFile=w;var T={isCancellationRequested:e.returnFalse,throwIfCancellationRequested:e.noop},C=function(){function t(e){this.cancellationToken=e}return t.prototype.isCancellationRequested=function(){return this.cancellationToken.isCancellationRequested()},t.prototype.throwIfCancellationRequested=function(){if(this.isCancellationRequested())throw null===e.tracing||void 0===e.tracing||e.tracing.instant("session","cancellationThrown",{kind:"CancellationTokenObject"}),new e.OperationCanceledException},t}(),A=function(){function t(e,t){void 0===t&&(t=20),this.hostCancellationToken=e,this.throttleWaitMilliseconds=t,this.lastCancellationCheckTime=0}return t.prototype.isCancellationRequested=function(){var t=e.timestamp();return Math.abs(t-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds&&(this.lastCancellationCheckTime=t,this.hostCancellationToken.isCancellationRequested())},t.prototype.throwIfCancellationRequested=function(){if(this.isCancellationRequested())throw null===e.tracing||void 0===e.tracing||e.tracing.instant("session","cancellationThrown",{kind:"ThrottledCancellationToken"}),new e.OperationCanceledException},t}();e.ThrottledCancellationToken=A;var N=["getSyntacticDiagnostics","getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls"],P=i(i([],N),["getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getOccurrencesAtPosition","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors"]);function I(t){var r=function(t){switch(t.kind){case 10:case 14:case 8:if(159===t.parent.kind)return e.isObjectLiteralElement(t.parent.parent)?t.parent.parent:void 0;case 78:return!e.isObjectLiteralElement(t.parent)||201!==t.parent.parent.kind&&284!==t.parent.parent.kind||t.parent.name!==t?void 0:t.parent}return}(t);return r&&(e.isObjectLiteralExpression(r.parent)||e.isJsxAttributes(r.parent))?r:void 0}function F(t,r,n,i){var a=e.getNameFromPropertyName(t.name);if(!a)return e.emptyArray;if(!n.isUnion())return(o=n.getProperty(a))?[o]:e.emptyArray;var o,s=e.mapDefined(n.types,(function(n){return(e.isObjectLiteralExpression(t.parent)||e.isJsxAttributes(t.parent))&&r.isTypeInvalidDueToUnionDiscriminant(n,t.parent)?void 0:n.getProperty(a)}));if(i&&(0===s.length||s.length===n.types.length)&&(o=n.getProperty(a)))return[o];return 0===s.length?e.mapDefined(n.types,(function(e){return e.getProperty(a)})):s}e.createLanguageService=function(t,r,n){var o,s;void 0===r&&(r=e.createDocumentRegistry(t.useCaseSensitiveFileNames&&t.useCaseSensitiveFileNames(),t.getCurrentDirectory())),s=void 0===n?e.LanguageServiceMode.Semantic:"boolean"==typeof n?n?e.LanguageServiceMode.Syntactic:e.LanguageServiceMode.Semantic:n;var c,l,u=new E(t),d=0,p=t.getCancellationToken?new C(t.getCancellationToken()):T,f=t.getCurrentDirectory();function m(e){t.log&&t.log(e)}!e.localizedDiagnosticMessages&&t.getLocalizedDiagnosticMessages&&e.setLocalizedDiagnosticMessages(t.getLocalizedDiagnosticMessages());var g=e.hostUsesCaseSensitiveFileNames(t),_=e.createGetCanonicalFileName(g),h=e.getSourceMapper({useCaseSensitiveFileNames:function(){return g},getCurrentDirectory:function(){return f},getProgram:k,fileExists:e.maybeBind(t,t.fileExists),readFile:e.maybeBind(t,t.readFile),getDocumentPositionMapper:e.maybeBind(t,t.getDocumentPositionMapper),getSourceFileLike:e.maybeBind(t,t.getSourceFileLike),log:m});function y(e){var t=c.getSourceFile(e);if(!t){var r=new Error("Could not find source file: '"+e+"'.");throw r.ProgramFiles=c.getSourceFiles().map((function(e){return e.fileName})),r}return t}function b(){var n,i;if(e.Debug.assert(s!==e.LanguageServiceMode.Syntactic),t.getProjectVersion){var a=t.getProjectVersion();if(a){if(l===a&&!(null===(n=t.hasChangedAutomaticTypeDirectiveNames)||void 0===n?void 0:n.call(t)))return;l=a}}var o=t.getTypeRootsVersion?t.getTypeRootsVersion():0;d!==o&&(m("TypeRoots version has changed; provide new program"),c=void 0,d=o);var u=new x(t,_),y=u.getRootFileNames(),v=t.hasInvalidatedResolution||e.returnFalse,b=e.maybeBind(t,t.hasChangedAutomaticTypeDirectiveNames),k=u.getProjectReferences();if(!e.isProgramUptoDate(c,y,u.compilationSettings(),(function(e,r){return t.getScriptVersion(r)}),T,v,b,k)){var E=u.compilationSettings(),S={getSourceFile:function(t,r,n,i){return C(t,e.toPath(t,f,_),r,n,i)},getSourceFileByPath:C,getCancellationToken:function(){return p},getCanonicalFileName:_,useCaseSensitiveFileNames:function(){return g},getNewLine:function(){return e.getNewLineCharacter(E,(function(){return e.getNewLineOrDefaultFromHost(t)}))},getDefaultLibFileName:function(e){return t.getDefaultLibFileName(e)},writeFile:e.noop,getCurrentDirectory:function(){return f},fileExists:T,readFile:function(r){var n=e.toPath(r,f,_),i=u&&u.getEntryByPath(n);if(i)return e.isString(i)?void 0:e.getSnapshotText(i.scriptSnapshot);return t.readFile&&t.readFile(r)},getSymlinkCache:e.maybeBind(t,t.getSymlinkCache),realpath:e.maybeBind(t,t.realpath),directoryExists:function(r){return e.directoryProbablyExists(r,t)},getDirectories:function(e){return t.getDirectories?t.getDirectories(e):[]},readDirectory:function(r,n,i,a,o){return e.Debug.checkDefined(t.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),t.readDirectory(r,n,i,a,o)},onReleaseOldSourceFile:function(e,t){var n=r.getKeyForCompilationSettings(t);r.releaseDocumentWithKey(e.resolvedPath,n)},hasInvalidatedResolution:v,hasChangedAutomaticTypeDirectiveNames:b,trace:e.maybeBind(t,t.trace),resolveModuleNames:e.maybeBind(t,t.resolveModuleNames),resolveTypeReferenceDirectives:e.maybeBind(t,t.resolveTypeReferenceDirectives),useSourceOfProjectReferenceRedirect:e.maybeBind(t,t.useSourceOfProjectReferenceRedirect),getTagNameNeededCheckByFile:e.maybeBind(t,t.getTagNameNeededCheckByFile),getExpressionCheckedResultsByFile:e.maybeBind(t,t.getExpressionCheckedResultsByFile)};null===(i=t.setCompilerHost)||void 0===i||i.call(t,S);var D=r.getKeyForCompilationSettings(E),w={rootNames:y,options:E,host:S,oldProgram:c,projectReferences:k};return c=e.createProgram(w),u=void 0,h.clearCache(),void c.getTypeChecker()}function T(r){var n=e.toPath(r,f,_),i=u&&u.getEntryByPath(n);return i?!e.isString(i):!!t.fileExists&&t.fileExists(r)}function C(t,n,i,a,o){e.Debug.assert(void 0!==u,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");var s=u&&u.getOrCreateEntryByPath(t,n);if(s){if(!o){var l=c&&c.getSourceFileByPath(n);if(l)return e.Debug.assertEqual(s.scriptKind,l.scriptKind,"Registered script kind should match new script kind."),r.updateDocumentWithKey(t,n,E,D,s.scriptSnapshot,s.version,s.scriptKind)}return r.acquireDocumentWithKey(t,n,E,D,s.scriptSnapshot,s.version,s.scriptKind)}}}function k(){if(s!==e.LanguageServiceMode.Syntactic)return b(),c;e.Debug.assert(void 0===c)}function S(t,r,n){var i=e.normalizePath(t);e.Debug.assert(n.some((function(t){return e.normalizePath(t)===i}))),b();var a=e.mapDefined(n,(function(e){return c.getSourceFile(e)})),o=y(t);return e.DocumentHighlights.getDocumentHighlights(c,p,o,r,a)}function D(t,r,n,i){b();var a=n&&2===n.use?c.getSourceFiles().filter((function(e){return!c.isSourceFileDefaultLibrary(e)})):c.getSourceFiles();return e.FindAllReferences.findReferenceOrRenameEntries(c,p,a,t,r,n,i)}function w(r){var n=e.getScriptKind(r,t);return 3===n||4===n}var A=new e.Map(e.getEntries(((o={})[18]=19,o[20]=21,o[22]=23,o[31]=29,o)));function O(r){var n;return e.Debug.assertEqual(r.type,"install package"),t.installPackage?t.installPackage({fileName:(n=r.file,e.toPath(n,f,_)),packageName:r.packageName}):Promise.reject("Host does not implement `installPackage`")}function R(e,t){return{lineStarts:e.getLineStarts(),firstLine:e.getLineAndCharacterOfPosition(t.pos).line,lastLine:e.getLineAndCharacterOfPosition(t.end).line}}function M(t,r,n){for(var i=u.getCurrentSourceFile(t),a=[],o=R(i,r),s=o.lineStarts,c=o.firstLine,l=o.lastLine,d=n||!1,p=Number.MAX_VALUE,f=new e.Map,m=new RegExp(/\S/),g=e.isInsideJsxElement(i,s[c]),_=g?"{/*":"//",h=c;h<=l;h++){var y=i.text.substring(s[h],i.getLineEndOfPosition(s[h])),v=m.exec(y);v&&(p=Math.min(p,v.index),f.set(h.toString(),v.index),y.substr(v.index,_.length)!==_&&(d=void 0===n||n))}for(h=c;h<=l;h++)if(c===l||s[h]!==r.end){var b=f.get(h.toString());void 0!==b&&(g?a.push.apply(a,L(t,{pos:s[h]+p,end:i.getLineEndOfPosition(s[h])},d,g)):d?a.push({newText:_,span:{length:0,start:s[h]+p}}):i.text.substr(s[h]+b,_.length)===_&&a.push({newText:"",span:{length:_.length,start:s[h]+b}}))}return a}function L(t,r,n,i){for(var a,o=u.getCurrentSourceFile(t),s=[],c=o.text,l=!1,d=n||!1,p=[],f=r.pos,m=void 0!==i?i:e.isInsideJsxElement(o,f),g=m?"{/*":"/*",_=m?"*/}":"*/",h=m?"\\{\\/\\*":"\\/\\*",y=m?"\\*\\/\\}":"\\*\\/";f<=r.end;){var v=c.substr(f,g.length)===g?g.length:0,b=e.isInComment(o,f+v);if(b)m&&(b.pos--,b.end++),p.push(b.pos),3===b.kind&&p.push(b.end),l=!0,f=b.end+1;else{var k=c.substring(f,r.end).search("("+h+")|("+y+")");d=void 0!==n?n:d||!e.isTextWhiteSpaceLike(c,f,-1===k?r.end:f+k),f=-1===k?r.end+1:f+k+_.length}}if(d||!l){2!==(null===(a=e.isInComment(o,r.pos))||void 0===a?void 0:a.kind)&&e.insertSorted(p,r.pos,e.compareValues),e.insertSorted(p,r.end,e.compareValues);var x=p[0];c.substr(x,g.length)!==g&&s.push({newText:g,span:{length:0,start:x}});for(var E=1;E<p.length-1;E++)c.substr(p[E]-_.length,_.length)!==_&&s.push({newText:_,span:{length:0,start:p[E]}}),c.substr(p[E],g.length)!==g&&s.push({newText:g,span:{length:0,start:p[E]}});s.length%2!=0&&s.push({newText:_,span:{length:0,start:p[p.length-1]}})}else for(var S=0,D=p;S<D.length;S++){var w=D[S],T=w-_.length>0?w-_.length:0;v=c.substr(T,_.length)===_?_.length:0;s.push({newText:"",span:{length:g.length,start:w-v}})}return s}function j(t){var r=t.openingElement,n=t.closingElement,i=t.parent;return!e.tagNamesAreEquivalent(r.tagName,n.tagName)||e.isJsxElement(i)&&e.tagNamesAreEquivalent(r.tagName,i.openingElement.tagName)&&j(i)}function B(r,n,i,a,o,s){var c="number"==typeof n?[n,void 0]:[n.pos,n.end];return{file:r,startPosition:c[0],endPosition:c[1],program:k(),host:t,formatContext:e.formatting.getFormatContext(a,t),cancellationToken:p,preferences:i,triggerReason:o,kind:s}}A.forEach((function(e,t){return A.set(e.toString(),Number(t))}));var z={dispose:function(){if(c){var n=r.getKeyForCompilationSettings(c.getCompilerOptions());e.forEach(c.getSourceFiles(),(function(e){return r.releaseDocumentWithKey(e.resolvedPath,n)})),c=void 0}t=void 0},cleanupSemanticCache:function(){c=void 0},getSyntacticDiagnostics:function(e){return b(),c.getSyntacticDiagnostics(y(e),p).slice()},getSemanticDiagnostics:function(t){b();var r=y(t),n=c.getSemanticDiagnostics(r,p);if(!e.getEmitDeclarations(c.getCompilerOptions()))return n.slice();var a=c.getDeclarationDiagnostics(r,p);return i(i([],n),a)},getSuggestionDiagnostics:function(t){return b(),e.computeSuggestionDiagnostics(y(t),c,p)},getCompilerOptionsDiagnostics:function(){return b(),i(i([],c.getOptionsDiagnostics(p)),c.getGlobalDiagnostics(p))},getSyntacticClassifications:function(t,r){return e.getSyntacticClassifications(p,u.getCurrentSourceFile(t),r)},getSemanticClassifications:function(t,r,n){return w(t)?(b(),"2020"===(n||"original")?e.classifier.v2020.getSemanticClassifications(c,p,y(t),r):e.getSemanticClassifications(c.getTypeChecker(),p,y(t),c.getClassifiableNames(),r)):[]},getEncodedSyntacticClassifications:function(t,r){return e.getEncodedSyntacticClassifications(p,u.getCurrentSourceFile(t),r)},getEncodedSemanticClassifications:function(t,r,n){return w(t)?(b(),"original"===(n||"original")?e.getEncodedSemanticClassifications(c.getTypeChecker(),p,y(t),c.getClassifiableNames(),r):e.classifier.v2020.getEncodedSemanticClassifications(c,p,y(t),r)):{spans:[],endOfLineState:0}},getCompletionsAtPosition:function(r,n,i){void 0===i&&(i=e.emptyOptions);var o=a(a({},e.identity(i)),{includeCompletionsForModuleExports:i.includeCompletionsForModuleExports||i.includeExternalModuleExports,includeCompletionsWithInsertText:i.includeCompletionsWithInsertText||i.includeInsertTextCompletions});return b(),e.Completions.getCompletionsAtPosition(t,c,m,y(r),n,o,i.triggerCharacter)},getCompletionEntryDetails:function(r,n,i,a,o,s){return void 0===s&&(s=e.emptyOptions),b(),e.Completions.getCompletionEntryDetails(c,m,y(r),n,{name:i,source:o},t,a&&e.formatting.getFormatContext(a,t),s,p)},getCompletionEntrySymbol:function(r,n,i,a,o){return void 0===o&&(o=e.emptyOptions),b(),e.Completions.getCompletionEntrySymbol(c,m,y(r),n,{name:i,source:a},t,o)},getSignatureHelpItems:function(t,r,n){var i=(void 0===n?e.emptyOptions:n).triggerReason;b();var a=y(t);return e.SignatureHelp.getSignatureHelpItems(c,a,r,i,p)},getQuickInfoAtPosition:function(t,r){b();var n=y(t),i=e.getTouchingPropertyName(n,r);if(i!==n){var a=c.getTypeChecker(),o=function(t){if(e.isNewExpression(t.parent)&&t.pos===t.parent.pos)return t.parent.expression;return t}(i),s=function(t,r){var n=I(t);if(n){var i=r.getContextualType(n.parent),a=i&&F(n,r,i,!1);if(a&&1===a.length)return e.first(a)}return r.getSymbolAtLocation(t)}(o,a);if(!s||a.isUnknownSymbol(s)){var l=function(t,r,n){switch(r.kind){case 78:return!e.isLabelName(r)&&!e.isTagName(r);case 202:case 158:return!e.isInComment(t,n);case 108:case 188:case 106:return!0;default:return!1}}(n,o,r)?a.getTypeAtLocation(o):void 0;return l&&{kind:"",kindModifiers:"",textSpan:e.createTextSpanFromNode(o,n),displayParts:a.runWithCancellationToken(p,(function(t){return e.typeToDisplayParts(t,l,e.getContainerNode(o))})),documentation:l.symbol?l.symbol.getDocumentationComment(a):void 0,tags:l.symbol?l.symbol.getJsDocTags():void 0}}var u=a.runWithCancellationToken(p,(function(t){return e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(t,s,n,e.getContainerNode(o),o)})),d=u.symbolKind,f=u.displayParts,m=u.documentation,g=u.tags;return{kind:d,kindModifiers:e.SymbolDisplay.getSymbolModifiers(a,s),textSpan:e.createTextSpanFromNode(o,n),displayParts:f,documentation:m,tags:g}}},getDefinitionAtPosition:function(t,r){return b(),e.GoToDefinition.getDefinitionAtPosition(c,y(t),r)},getDefinitionAndBoundSpan:function(t,r){return b(),e.GoToDefinition.getDefinitionAndBoundSpan(c,y(t),r)},getImplementationAtPosition:function(t,r){return b(),e.FindAllReferences.getImplementationsAtPosition(c,p,c.getSourceFiles(),y(t),r)},getTypeDefinitionAtPosition:function(t,r){return b(),e.GoToDefinition.getTypeDefinitionAtPosition(c.getTypeChecker(),y(t),r)},getReferencesAtPosition:function(t,r){return b(),D(e.getTouchingPropertyName(y(t),r),r,{use:1},e.FindAllReferences.toReferenceEntry)},findReferences:function(t,r){return b(),e.FindAllReferences.findReferencedSymbols(c,p,c.getSourceFiles(),y(t),r)},getFileReferences:function(t){return b(),e.FindAllReferences.Core.getReferencesForFileName(t,c,c.getSourceFiles()).map(e.FindAllReferences.toReferenceEntry)},getOccurrencesAtPosition:function(t,r){return e.flatMap(S(t,r,[t]),(function(e){return e.highlightSpans.map((function(t){return a(a({fileName:e.fileName,textSpan:t.textSpan,isWriteAccess:"writtenReference"===t.kind,isDefinition:!1},t.isInString&&{isInString:!0}),t.contextSpan&&{contextSpan:t.contextSpan})}))}))},getDocumentHighlights:S,getNameOrDottedNameSpan:function(t,r,n){var i=u.getCurrentSourceFile(t),a=e.getTouchingPropertyName(i,r);if(a!==i){switch(a.kind){case 202:case 158:case 10:case 95:case 110:case 104:case 106:case 108:case 188:case 78:break;default:return}for(var o=a;;)if(e.isRightSideOfPropertyAccess(o)||e.isRightSideOfQualifiedName(o))o=o.parent;else{if(!e.isNameOfModuleDeclaration(o))break;if(259!==o.parent.parent.kind||o.parent.parent.body!==o.parent)break;o=o.parent.parent.name}return e.createTextSpanFromBounds(o.getStart(),a.getEnd())}},getBreakpointStatementAtPosition:function(t,r){var n=u.getCurrentSourceFile(t);return e.BreakpointResolver.spanInSourceFileAtLocation(n,r)},getNavigateToItems:function(t,r,n,i){void 0===i&&(i=!1),b();var a=n?[y(n)]:c.getSourceFiles();return e.NavigateTo.getNavigateToItems(a,c.getTypeChecker(),p,t,r,i)},getRenameInfo:function(t,r,n){return b(),e.Rename.getRenameInfo(c,y(t),r,n)},getSmartSelectionRange:function(t,r){return e.SmartSelectionRange.getSmartSelectionRange(r,u.getCurrentSourceFile(t))},findRenameLocations:function(t,r,n,i,o){b();var s=y(t),c=e.getAdjustedRenameLocation(e.getTouchingPropertyName(s,r));if(e.isIdentifier(c)&&(e.isJsxOpeningElement(c.parent)||e.isJsxClosingElement(c.parent))&&e.isIntrinsicJsxName(c.escapedText)){var l=c.parent.parent;return[l.openingElement,l.closingElement].map((function(t){var r=e.createTextSpanFromNode(t.tagName,s);return a({fileName:s.fileName,textSpan:r},e.FindAllReferences.toContextSpan(r,s,t.parent))}))}return D(c,r,{findInStrings:n,findInComments:i,providePrefixAndSuffixTextForRename:o,use:2},(function(t,r,n){return e.FindAllReferences.toRenameLocation(t,r,n,o||!1)}))},getNavigationBarItems:function(t){return e.NavigationBar.getNavigationBarItems(u.getCurrentSourceFile(t),p)},getNavigationTree:function(t){return e.NavigationBar.getNavigationTree(u.getCurrentSourceFile(t),p)},getOutliningSpans:function(t){var r=u.getCurrentSourceFile(t);return e.OutliningElementsCollector.collectElements(r,p)},getTodoComments:function(t,r){b();var n=y(t);p.throwIfCancellationRequested();var i,a,o=n.text,s=[];if(r.length>0&&(a=n.fileName,!e.stringContains(a,"/node_modules/"))&&!function(t){return e.stringContains(t,"/oh_modules/")}(n.fileName))for(var c=function(){var t="("+/(?:^(?:\s|\*)*)/.source+"|"+/(?:\/\/+\s*)/.source+"|"+/(?:\/\*+\s*)/.source+")",n="(?:"+e.map(r,(function(e){return"("+(e.text.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")+")")})).join("|")+")",i=t+"("+n+/(?:.*?)/.source+")"+/(?:$|\*\/)/.source;return new RegExp(i,"gim")}(),l=void 0;l=c.exec(o);){p.throwIfCancellationRequested();e.Debug.assert(l.length===r.length+3);var u=l[1],d=l.index+u.length;if(e.isInComment(n,d)){for(var f=void 0,m=0;m<r.length;m++)l[m+3]&&(f=r[m]);if(void 0===f)return e.Debug.fail();if(!((i=o.charCodeAt(d+f.text.length))>=97&&i<=122||i>=65&&i<=90||i>=48&&i<=57)){var g=l[2];s.push({descriptor:f,message:g,position:d})}}}return s},getBraceMatchingAtPosition:function(t,r){var n=u.getCurrentSourceFile(t),i=e.getTouchingToken(n,r),a=i.getStart(n)===r?A.get(i.kind.toString()):void 0,o=a&&e.findChildOfKind(i.parent,a,n);return o?[e.createTextSpanFromNode(i,n),e.createTextSpanFromNode(o,n)].sort((function(e,t){return e.start-t.start})):e.emptyArray},getIndentationAtPosition:function(t,r,n){var i=e.timestamp(),a=v(n),o=u.getCurrentSourceFile(t);m("getIndentationAtPosition: getCurrentSourceFile: "+(e.timestamp()-i)),i=e.timestamp();var s=e.formatting.SmartIndenter.getIndentation(r,o,a);return m("getIndentationAtPosition: computeIndentation : "+(e.timestamp()-i)),s},getFormattingEditsForRange:function(r,n,i,a){var o=u.getCurrentSourceFile(r);return e.formatting.formatSelection(n,i,o,e.formatting.getFormatContext(v(a),t))},getFormattingEditsForDocument:function(r,n){return e.formatting.formatDocument(u.getCurrentSourceFile(r),e.formatting.getFormatContext(v(n),t))},getFormattingEditsAfterKeystroke:function(r,n,i,a){var o=u.getCurrentSourceFile(r),s=e.formatting.getFormatContext(v(a),t);if(!e.isInComment(o,n))switch(i){case"{":return e.formatting.formatOnOpeningCurly(n,o,s);case"}":return e.formatting.formatOnClosingCurly(n,o,s);case";":return e.formatting.formatOnSemicolon(n,o,s);case"\n":return e.formatting.formatOnEnter(n,o,s)}return[]},getDocCommentTemplateAtPosition:function(r,n,i){return e.JsDoc.getDocCommentTemplateAtPosition(e.getNewLineOrDefaultFromHost(t),u.getCurrentSourceFile(r),n,i)},isValidBraceCompletionAtPosition:function(t,r,n){if(60===n)return!1;var i=u.getCurrentSourceFile(t);if(e.isInString(i,r))return!1;if(e.isInsideJsxElementOrAttribute(i,r))return 123===n;if(e.isInTemplateString(i,r))return!1;switch(n){case 39:case 34:case 96:return!e.isInComment(i,r)}return!0},getJsxClosingTagAtPosition:function(t,r){var n=u.getCurrentSourceFile(t),i=e.findPrecedingToken(r,n);if(i){var a=31===i.kind&&e.isJsxOpeningElement(i.parent)?i.parent.parent:e.isJsxText(i)?i.parent:void 0;return a&&j(a)?{newText:"</"+a.openingElement.tagName.getText(n)+">"}:void 0}},getSpanOfEnclosingComment:function(t,r,n){var i=u.getCurrentSourceFile(t),a=e.formatting.getRangeOfEnclosingComment(i,r);return!a||n&&3!==a.kind?void 0:e.createTextSpanFromRange(a)},getCodeFixesAtPosition:function(r,n,i,a,o,s){void 0===s&&(s=e.emptyOptions),b();var l=y(r),u=e.createTextSpanFromBounds(n,i),d=e.formatting.getFormatContext(o,t);return e.flatMap(e.deduplicate(a,e.equateValues,e.compareValues),(function(r){return p.throwIfCancellationRequested(),e.codefix.getFixes({errorCode:r,sourceFile:l,span:u,program:c,host:t,cancellationToken:p,formatContext:d,preferences:s})}))},getCombinedCodeFix:function(r,n,i,a){void 0===a&&(a=e.emptyOptions),b(),e.Debug.assert("file"===r.type);var o=y(r.fileName),s=e.formatting.getFormatContext(i,t);return e.codefix.getAllFixes({fixId:n,sourceFile:o,program:c,host:t,cancellationToken:p,formatContext:s,preferences:a})},applyCodeActionCommand:function(t,r){var n="string"==typeof t?r:t;return e.isArray(n)?Promise.all(n.map((function(e){return O(e)}))):O(n)},organizeImports:function(r,n,i){void 0===i&&(i=e.emptyOptions),b(),e.Debug.assert("file"===r.type);var a=y(r.fileName),o=e.formatting.getFormatContext(n,t);return e.OrganizeImports.organizeImports(a,o,t,c,i)},getEditsForFileRename:function(r,n,i,a){return void 0===a&&(a=e.emptyOptions),e.getEditsForFileRename(k(),r,n,t,e.formatting.getFormatContext(i,t),a,h)},getEmitOutput:function(r,n,i){b();var a=y(r),o=t.getCustomTransformers&&t.getCustomTransformers();return e.getFileEmitOutput(c,a,!!n,p,o,i)},getNonBoundSourceFile:function(e){return u.getCurrentSourceFile(e)},getProgram:k,getAutoImportProvider:function(){var e;return null===(e=t.getPackageJsonAutoImportProvider)||void 0===e?void 0:e.call(t)},getApplicableRefactors:function(t,r,n,i,a){void 0===n&&(n=e.emptyOptions),b();var o=y(t);return e.refactor.getApplicableRefactors(B(o,r,n,e.emptyOptions,i,a))},getEditsForRefactor:function(t,r,n,i,a,o){void 0===o&&(o=e.emptyOptions),b();var s=y(t);return e.refactor.getEditsForRefactor(B(s,n,o,r),i,a)},toLineColumnOffset:h.toLineColumnOffset,getSourceMapper:function(){return h},clearSourceMapperCache:function(){return h.clearCache()},prepareCallHierarchy:function(t,r){b();var n=e.CallHierarchy.resolveCallHierarchyDeclaration(c,e.getTouchingPropertyName(y(t),r));return n&&e.mapOneOrMany(n,(function(t){return e.CallHierarchy.createCallHierarchyItem(c,t)}))},provideCallHierarchyIncomingCalls:function(t,r){b();var n=y(t),i=e.firstOrOnly(e.CallHierarchy.resolveCallHierarchyDeclaration(c,0===r?n:e.getTouchingPropertyName(n,r)));return i?e.CallHierarchy.getIncomingCalls(c,i,p):[]},provideCallHierarchyOutgoingCalls:function(t,r){b();var n=y(t),i=e.firstOrOnly(e.CallHierarchy.resolveCallHierarchyDeclaration(c,0===r?n:e.getTouchingPropertyName(n,r)));return i?e.CallHierarchy.getOutgoingCalls(c,i):[]},toggleLineComment:M,toggleMultilineComment:L,commentSelection:function(e,t){var r=R(u.getCurrentSourceFile(e),t);return r.firstLine===r.lastLine&&t.pos!==t.end?L(e,t,!0):M(e,t,!0)},uncommentSelection:function(t,r){var n=u.getCurrentSourceFile(t),i=[],a=r.pos,o=r.end;a===o&&(o+=e.isInsideJsxElement(n,a)?2:1);for(var s=a;s<=o;s++){var c=e.isInComment(n,s);if(c){switch(c.kind){case 2:i.push.apply(i,M(t,{end:c.end,pos:c.pos+1},!1));break;case 3:i.push.apply(i,L(t,{end:c.end,pos:c.pos+1},!1))}s=c.end+1}}return i}};switch(s){case e.LanguageServiceMode.Semantic:break;case e.LanguageServiceMode.PartialSemantic:N.forEach((function(e){return z[e]=function(){throw new Error("LanguageService Operation: "+e+" not allowed in LanguageServiceMode.PartialSemantic")}}));break;case e.LanguageServiceMode.Syntactic:P.forEach((function(e){return z[e]=function(){throw new Error("LanguageService Operation: "+e+" not allowed in LanguageServiceMode.Syntactic")}}));break;default:e.Debug.assertNever(s)}return z},e.getNameTable=function(t){return t.nameTable||function(t){var r=t.nameTable=new e.Map;t.forEachChild((function t(n){if(e.isIdentifier(n)&&!e.isTagName(n)&&n.escapedText||e.isStringOrNumericLiteralLike(n)&&function(t){return e.isDeclarationName(t)||275===t.parent.kind||function(e){return e&&e.parent&&203===e.parent.kind&&e.parent.argumentExpression===e}(t)||e.isLiteralComputedPropertyDeclarationName(t)}(n)){var i=e.getEscapedTextOfIdentifierOrLiteral(n);r.set(i,void 0===r.get(i)?n.pos:-1)}else if(e.isPrivateIdentifier(n)){i=n.escapedText;r.set(i,void 0===r.get(i)?n.pos:-1)}if(e.forEachChild(n,t),e.hasJSDocNodes(n))for(var a=0,o=n.jsDoc;a<o.length;a++){var s=o[a];e.forEachChild(s,t)}}))}(t),t.nameTable},e.getContainingObjectLiteralElement=I,e.getPropertySymbolsFromContextualType=F,e.getDefaultLibFilePath=function(t){return __dirname+e.directorySeparator+e.getDefaultLibFileName(t)},e.setObjectAllocator({getNodeConstructor:function(){return r},getTokenConstructor:function(){return c},getIdentifierConstructor:function(){return u},getPrivateIdentifierConstructor:function(){return d},getSourceFileConstructor:function(){return h},getSymbolConstructor:function(){return s},getTypeConstructor:function(){return p},getSignatureConstructor:function(){return f},getSourceMapSourceConstructor:function(){return y}})}(d||(d={})),function(e){!function(t){t.spanInSourceFileAtLocation=function(t,r){if(!t.isDeclarationFile){var n=e.getTokenAtPosition(t,r),i=t.getLineAndCharacterOfPosition(r).line;if(t.getLineAndCharacterOfPosition(n.getStart(t)).line>i){var a=e.findPrecedingToken(n.pos,t);if(!a||t.getLineAndCharacterOfPosition(a.getEnd()).line!==i)return;n=a}if(!(8388608&n.flags))return d(n)}function o(r,n){var i=r.decorators?e.skipTrivia(t.text,r.decorators.end):r.getStart(t);return e.createTextSpanFromBounds(i,(n||r).getEnd())}function s(r,n){return o(r,e.findNextToken(n,n.parent,t))}function c(e,r){return e&&i===t.getLineAndCharacterOfPosition(e.getStart(t)).line?d(e):d(r)}function l(r){return d(e.findPrecedingToken(r.pos,t))}function u(r){return d(e.findNextToken(r,r.parent,t))}function d(r){if(r){var n=r.parent;switch(r.kind){case 234:return y(r.declarationList.declarations[0]);case 251:case 164:case 163:return y(r);case 161:return function t(r){if(e.isBindingPattern(r.name))return x(r.name);if(function(t){return!!t.initializer||void 0!==t.dotDotDotToken||e.hasSyntacticModifier(t,12)}(r))return o(r);var n=r.parent,i=n.parameters.indexOf(r);return e.Debug.assert(-1!==i),0!==i?t(n.parameters[i-1]):d(n.body)}(r);case 253:case 166:case 165:case 168:case 169:case 167:case 209:case 210:return function(e){if(!e.body)return;if(v(e))return o(e);return d(e.body)}(r);case 232:if(e.isFunctionBlock(r))return function(e){var t=e.statements.length?e.statements[0]:e.getLastToken();if(v(e.parent))return c(e.parent,t);return d(t)}(r);case 260:return b(r);case 290:return b(r.block);case 235:return o(r.expression);case 244:return o(r.getChildAt(0),r.expression);case 238:return s(r,r.expression);case 237:return d(r.statement);case 250:return o(r.getChildAt(0));case 236:return s(r,r.expression);case 247:return d(r.statement);case 243:case 242:return o(r.getChildAt(0),r.label);case 239:return function(e){if(e.initializer)return k(e);if(e.condition)return o(e.condition);if(e.incrementor)return o(e.incrementor)}(r);case 240:return s(r,r.expression);case 241:return k(r);case 246:return s(r,r.expression);case 287:case 288:return d(r.statements[0]);case 249:return b(r.tryBlock);case 248:case 269:return o(r,r.expression);case 263:return o(r,r.moduleReference);case 264:case 270:return o(r,r.moduleSpecifier);case 259:if(1!==e.getModuleInstanceState(r))return;case 254:case 258:case 294:case 199:return o(r);case 245:return d(r.statement);case 162:return _=n.decorators,e.createTextSpanFromBounds(e.skipTrivia(t.text,_.pos),_.end);case 197:case 198:return x(r);case 256:case 257:return;case 26:case 1:return c(e.findPrecedingToken(r.pos,t));case 27:return l(r);case 18:return function(r){switch(r.parent.kind){case 258:var n=r.parent;return c(e.findPrecedingToken(r.pos,t,r.parent),n.members.length?n.members[0]:n.getLastToken(t));case 254:var i=r.parent;return c(e.findPrecedingToken(r.pos,t,r.parent),i.members.length?i.members[0]:i.getLastToken(t));case 261:return c(r.parent.parent,r.parent.clauses[0])}return d(r.parent)}(r);case 19:return function(t){switch(t.parent.kind){case 260:if(1!==e.getModuleInstanceState(t.parent.parent))return;case 258:case 254:return o(t);case 232:if(e.isFunctionBlock(t.parent))return o(t);case 290:return d(e.lastOrUndefined(t.parent.statements));case 261:var r=t.parent,n=e.lastOrUndefined(r.clauses);return n?d(e.lastOrUndefined(n.statements)):void 0;case 197:var i=t.parent;return d(e.lastOrUndefined(i.elements)||i);default:if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)){var a=t.parent;return o(e.lastOrUndefined(a.properties)||a)}return d(t.parent)}}(r);case 23:return function(t){if(198===t.parent.kind){var r=t.parent;return o(e.lastOrUndefined(r.elements)||r)}if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)){var n=t.parent;return o(e.lastOrUndefined(n.elements)||n)}return d(t.parent)}(r);case 20:return function(e){if(237===e.parent.kind||204===e.parent.kind||205===e.parent.kind)return l(e);if(208===e.parent.kind)return u(e);return d(e.parent)}(r);case 21:return function(e){switch(e.parent.kind){case 209:case 253:case 210:case 166:case 165:case 168:case 169:case 167:case 238:case 237:case 239:case 241:case 204:case 205:case 208:return l(e);default:return d(e.parent)}}(r);case 58:return function(t){if(e.isFunctionLike(t.parent)||291===t.parent.kind||161===t.parent.kind)return l(t);return d(t.parent)}(r);case 31:case 29:return function(e){if(207===e.parent.kind)return u(e);return d(e.parent)}(r);case 115:return function(e){if(237===e.parent.kind)return s(e,e.parent.expression);return d(e.parent)}(r);case 91:case 82:case 96:return u(r);case 157:return function(e){if(241===e.parent.kind)return u(e);return d(e.parent)}(r);default:if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(r))return E(r);if((78===r.kind||222===r.kind||291===r.kind||292===r.kind)&&e.isArrayLiteralOrObjectLiteralDestructuringPattern(n))return o(r);if(218===r.kind){var i=r,a=i.left,p=i.operatorToken;if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(a))return E(a);if(62===p.kind&&e.isArrayLiteralOrObjectLiteralDestructuringPattern(r.parent))return o(r);if(27===p.kind)return d(a)}if(e.isExpressionNode(r))switch(n.kind){case 237:return l(r);case 162:return d(r.parent);case 239:case 241:return o(r);case 218:if(27===r.parent.operatorToken.kind)return o(r);break;case 210:if(r.parent.body===r)return o(r)}switch(r.parent.kind){case 291:if(r.parent.name===r&&!e.isArrayLiteralOrObjectLiteralDestructuringPattern(r.parent.parent))return d(r.parent.initializer);break;case 207:if(r.parent.type===r)return u(r.parent.type);break;case 251:case 161:var f=r.parent,m=f.initializer,g=f.type;if(m===r||g===r||e.isAssignmentOperator(r.kind))return l(r);break;case 218:a=r.parent.left;if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(a)&&r!==a)return l(r);break;default:if(e.isFunctionLike(r.parent)&&r.parent.type===r)return l(r)}return d(r.parent)}}var _;function h(r){return e.isVariableDeclarationList(r.parent)&&r.parent.declarations[0]===r?o(e.findPrecedingToken(r.pos,t,r.parent),r):o(r)}function y(r){if(240===r.parent.parent.kind)return d(r.parent.parent);var n=r.parent;return e.isBindingPattern(r.name)?x(r.name):r.initializer||e.hasSyntacticModifier(r,1)||241===n.parent.kind?h(r):e.isVariableDeclarationList(r.parent)&&r.parent.declarations[0]!==r?d(e.findPrecedingToken(r.pos,t,r.parent)):void 0}function v(t){return e.hasSyntacticModifier(t,1)||254===t.parent.kind&&167!==t.kind}function b(r){switch(r.parent.kind){case 259:if(1!==e.getModuleInstanceState(r.parent))return;case 238:case 236:case 240:return c(r.parent,r.statements[0]);case 239:case 241:return c(e.findPrecedingToken(r.pos,t,r.parent),r.statements[0])}return d(r.statements[0])}function k(e){if(252!==e.initializer.kind)return d(e.initializer);var t=e.initializer;return t.declarations.length>0?d(t.declarations[0]):void 0}function x(t){var r=e.forEach(t.elements,(function(e){return 224!==e.kind?e:void 0}));return r?d(r):199===t.parent.kind?o(t.parent):h(t.parent)}function E(t){e.Debug.assert(198!==t.kind&&197!==t.kind);var r=200===t.kind?t.elements:t.properties,n=e.forEach(r,(function(e){return 224!==e.kind?e:void 0}));return n?d(n):o(218===t.parent.kind?t.parent:t)}}}}(e.BreakpointResolver||(e.BreakpointResolver={}))}(d||(d={})),function(e){e.transform=function(t,r,n){var i=[];n=e.fixupCompilerOptions(n,i);var a=e.isArray(t)?t:[t],o=e.transformNodes(void 0,void 0,e.factory,n,a,r,!0);return o.diagnostics=e.concatenate(o.diagnostics,i),o}}(d||(d={}));var d,p=function(){return this}();!function(e){function t(e,t){e&&e.log("*INTERNAL ERROR* - Exception in typescript services: "+t.message)}var r=function(){function t(e){this.scriptSnapshotShim=e}return t.prototype.getText=function(e,t){return this.scriptSnapshotShim.getText(e,t)},t.prototype.getLength=function(){return this.scriptSnapshotShim.getLength()},t.prototype.getChangeRange=function(t){var r=t,n=this.scriptSnapshotShim.getChangeRange(r.scriptSnapshotShim);if(null===n)return null;var i=JSON.parse(n);return e.createTextChangeRange(e.createTextSpan(i.span.start,i.span.length),i.newLength)},t.prototype.dispose=function(){"dispose"in this.scriptSnapshotShim&&this.scriptSnapshotShim.dispose()},t}(),n=function(){function t(t){var r=this;this.shimHost=t,this.loggingEnabled=!1,this.tracingEnabled=!1,"getModuleResolutionsForFile"in this.shimHost&&(this.resolveModuleNames=function(t,n){var i=JSON.parse(r.shimHost.getModuleResolutionsForFile(n));return e.map(t,(function(t){var r=e.getProperty(i,t);return r?{resolvedFileName:r,extension:e.extensionFromPath(r),isExternalLibraryImport:!1}:void 0}))}),"directoryExists"in this.shimHost&&(this.directoryExists=function(e){return r.shimHost.directoryExists(e)}),"getTypeReferenceDirectiveResolutionsForFile"in this.shimHost&&(this.resolveTypeReferenceDirectives=function(t,n){var i=JSON.parse(r.shimHost.getTypeReferenceDirectiveResolutionsForFile(n));return e.map(t,(function(t){return e.getProperty(i,t)}))})}return t.prototype.log=function(e){this.loggingEnabled&&this.shimHost.log(e)},t.prototype.trace=function(e){this.tracingEnabled&&this.shimHost.trace(e)},t.prototype.error=function(e){this.shimHost.error(e)},t.prototype.getProjectVersion=function(){if(this.shimHost.getProjectVersion)return this.shimHost.getProjectVersion()},t.prototype.getTypeRootsVersion=function(){return this.shimHost.getTypeRootsVersion?this.shimHost.getTypeRootsVersion():0},t.prototype.useCaseSensitiveFileNames=function(){return!!this.shimHost.useCaseSensitiveFileNames&&this.shimHost.useCaseSensitiveFileNames()},t.prototype.getCompilationSettings=function(){var e=this.shimHost.getCompilationSettings();if(null===e||""===e)throw Error("LanguageServiceShimHostAdapter.getCompilationSettings: empty compilationSettings");var t=JSON.parse(e);return t.allowNonTsExtensions=!0,t},t.prototype.getScriptFileNames=function(){var e=this.shimHost.getScriptFileNames();return JSON.parse(e)},t.prototype.getScriptSnapshot=function(e){var t=this.shimHost.getScriptSnapshot(e);return t&&new r(t)},t.prototype.getScriptKind=function(e){return"getScriptKind"in this.shimHost?this.shimHost.getScriptKind(e):0},t.prototype.getScriptVersion=function(e){return this.shimHost.getScriptVersion(e)},t.prototype.getLocalizedDiagnosticMessages=function(){var e=this.shimHost.getLocalizedDiagnosticMessages();if(null===e||""===e)return null;try{return JSON.parse(e)}catch(e){return this.log(e.description||"diagnosticMessages.generated.json has invalid JSON format"),null}},t.prototype.getCancellationToken=function(){var t=this.shimHost.getCancellationToken();return new e.ThrottledCancellationToken(t)},t.prototype.getCurrentDirectory=function(){return this.shimHost.getCurrentDirectory()},t.prototype.getDirectories=function(e){return JSON.parse(this.shimHost.getDirectories(e))},t.prototype.getDefaultLibFileName=function(e){return this.shimHost.getDefaultLibFileName(JSON.stringify(e))},t.prototype.readDirectory=function(t,r,n,i,a){var o=e.getFileMatcherPatterns(t,n,i,this.shimHost.useCaseSensitiveFileNames(),this.shimHost.getCurrentDirectory());return JSON.parse(this.shimHost.readDirectory(t,JSON.stringify(r),JSON.stringify(o.basePaths),o.excludePattern,o.includeFilePattern,o.includeDirectoryPattern,a))},t.prototype.readFile=function(e,t){return this.shimHost.readFile(e,t)},t.prototype.fileExists=function(e){return this.shimHost.fileExists(e)},t}();e.LanguageServiceShimHostAdapter=n;var o=function(){function t(e){var t=this;this.shimHost=e,this.useCaseSensitiveFileNames=!!this.shimHost.useCaseSensitiveFileNames&&this.shimHost.useCaseSensitiveFileNames(),"directoryExists"in this.shimHost?this.directoryExists=function(e){return t.shimHost.directoryExists(e)}:this.directoryExists=void 0,"realpath"in this.shimHost?this.realpath=function(e){return t.shimHost.realpath(e)}:this.realpath=void 0}return t.prototype.readDirectory=function(t,r,n,i,a){var o=e.getFileMatcherPatterns(t,n,i,this.shimHost.useCaseSensitiveFileNames(),this.shimHost.getCurrentDirectory());return JSON.parse(this.shimHost.readDirectory(t,JSON.stringify(r),JSON.stringify(o.basePaths),o.excludePattern,o.includeFilePattern,o.includeDirectoryPattern,a))},t.prototype.fileExists=function(e){return this.shimHost.fileExists(e)},t.prototype.readFile=function(e){return this.shimHost.readFile(e)},t.prototype.getDirectories=function(e){return JSON.parse(this.shimHost.getDirectories(e))},t}();function s(e,t,r,n){return u(e,t,!0,r,n)}function u(r,n,i,a,o){try{var s=function(t,r,n,i){var a;i&&(t.log(r),a=e.timestamp());var o=n();if(i){var s=e.timestamp();if(t.log(r+" completed in "+(s-a)+" msec"),e.isString(o)){var c=o;c.length>128&&(c=c.substring(0,128)+"..."),t.log(" result.length="+c.length+", result='"+JSON.stringify(c)+"'")}}return o}(r,n,a,o);return i?JSON.stringify({result:s}):s}catch(i){return i instanceof e.OperationCanceledException?JSON.stringify({canceled:!0}):(t(r,i),i.description=n,JSON.stringify({error:i}))}}e.CoreServicesShimHostAdapter=o;var d=function(){function e(e){this.factory=e,e.registerShim(this)}return e.prototype.dispose=function(e){this.factory.unregisterShim(this)},e}();function f(t,r){return t.map((function(t){return function(t,r){return{message:e.flattenDiagnosticMessageText(t.messageText,r),start:t.start,length:t.length,category:e.diagnosticCategoryName(t),code:t.code,reportsUnnecessary:t.reportsUnnecessary,reportsDeprecated:t.reportsDeprecated}}(t,r)}))}e.realizeDiagnostics=f;var m=function(t){function r(e,r,n){var i=t.call(this,e)||this;return i.host=r,i.languageService=n,i.logPerformance=!1,i.logger=i.host,i}return l(r,t),r.prototype.forwardJSONCall=function(e,t){return s(this.logger,e,t,this.logPerformance)},r.prototype.dispose=function(e){this.logger.log("dispose()"),this.languageService.dispose(),this.languageService=null,p&&p.CollectGarbage&&(p.CollectGarbage(),this.logger.log("CollectGarbage()")),this.logger=null,t.prototype.dispose.call(this,e)},r.prototype.refresh=function(e){this.forwardJSONCall("refresh("+e+")",(function(){return null}))},r.prototype.cleanupSemanticCache=function(){var e=this;this.forwardJSONCall("cleanupSemanticCache()",(function(){return e.languageService.cleanupSemanticCache(),null}))},r.prototype.realizeDiagnostics=function(t){return f(t,e.getNewLineOrDefaultFromHost(this.host))},r.prototype.getSyntacticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getSyntacticClassifications('"+t+"', "+r+", "+n+")",(function(){return i.languageService.getSyntacticClassifications(t,e.createTextSpan(r,n))}))},r.prototype.getSemanticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getSemanticClassifications('"+t+"', "+r+", "+n+")",(function(){return i.languageService.getSemanticClassifications(t,e.createTextSpan(r,n))}))},r.prototype.getEncodedSyntacticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getEncodedSyntacticClassifications('"+t+"', "+r+", "+n+")",(function(){return g(i.languageService.getEncodedSyntacticClassifications(t,e.createTextSpan(r,n)))}))},r.prototype.getEncodedSemanticClassifications=function(t,r,n){var i=this;return this.forwardJSONCall("getEncodedSemanticClassifications('"+t+"', "+r+", "+n+")",(function(){return g(i.languageService.getEncodedSemanticClassifications(t,e.createTextSpan(r,n)))}))},r.prototype.getSyntacticDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSyntacticDiagnostics('"+e+"')",(function(){var r=t.languageService.getSyntacticDiagnostics(e);return t.realizeDiagnostics(r)}))},r.prototype.getSemanticDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSemanticDiagnostics('"+e+"')",(function(){var r=t.languageService.getSemanticDiagnostics(e);return t.realizeDiagnostics(r)}))},r.prototype.getSuggestionDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSuggestionDiagnostics('"+e+"')",(function(){return t.realizeDiagnostics(t.languageService.getSuggestionDiagnostics(e))}))},r.prototype.getCompilerOptionsDiagnostics=function(){var e=this;return this.forwardJSONCall("getCompilerOptionsDiagnostics()",(function(){var t=e.languageService.getCompilerOptionsDiagnostics();return e.realizeDiagnostics(t)}))},r.prototype.getQuickInfoAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getQuickInfoAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getQuickInfoAtPosition(e,t)}))},r.prototype.getNameOrDottedNameSpan=function(e,t,r){var n=this;return this.forwardJSONCall("getNameOrDottedNameSpan('"+e+"', "+t+", "+r+")",(function(){return n.languageService.getNameOrDottedNameSpan(e,t,r)}))},r.prototype.getBreakpointStatementAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getBreakpointStatementAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getBreakpointStatementAtPosition(e,t)}))},r.prototype.getSignatureHelpItems=function(e,t,r){var n=this;return this.forwardJSONCall("getSignatureHelpItems('"+e+"', "+t+")",(function(){return n.languageService.getSignatureHelpItems(e,t,r)}))},r.prototype.getDefinitionAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getDefinitionAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getDefinitionAtPosition(e,t)}))},r.prototype.getDefinitionAndBoundSpan=function(e,t){var r=this;return this.forwardJSONCall("getDefinitionAndBoundSpan('"+e+"', "+t+")",(function(){return r.languageService.getDefinitionAndBoundSpan(e,t)}))},r.prototype.getTypeDefinitionAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getTypeDefinitionAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getTypeDefinitionAtPosition(e,t)}))},r.prototype.getImplementationAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getImplementationAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getImplementationAtPosition(e,t)}))},r.prototype.getRenameInfo=function(e,t,r){var n=this;return this.forwardJSONCall("getRenameInfo('"+e+"', "+t+")",(function(){return n.languageService.getRenameInfo(e,t,r)}))},r.prototype.getSmartSelectionRange=function(e,t){var r=this;return this.forwardJSONCall("getSmartSelectionRange('"+e+"', "+t+")",(function(){return r.languageService.getSmartSelectionRange(e,t)}))},r.prototype.findRenameLocations=function(e,t,r,n,i){var a=this;return this.forwardJSONCall("findRenameLocations('"+e+"', "+t+", "+r+", "+n+", "+i+")",(function(){return a.languageService.findRenameLocations(e,t,r,n,i)}))},r.prototype.getBraceMatchingAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getBraceMatchingAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getBraceMatchingAtPosition(e,t)}))},r.prototype.isValidBraceCompletionAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("isValidBraceCompletionAtPosition('"+e+"', "+t+", "+r+")",(function(){return n.languageService.isValidBraceCompletionAtPosition(e,t,r)}))},r.prototype.getSpanOfEnclosingComment=function(e,t,r){var n=this;return this.forwardJSONCall("getSpanOfEnclosingComment('"+e+"', "+t+")",(function(){return n.languageService.getSpanOfEnclosingComment(e,t,r)}))},r.prototype.getIndentationAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getIndentationAtPosition('"+e+"', "+t+")",(function(){var i=JSON.parse(r);return n.languageService.getIndentationAtPosition(e,t,i)}))},r.prototype.getReferencesAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getReferencesAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getReferencesAtPosition(e,t)}))},r.prototype.findReferences=function(e,t){var r=this;return this.forwardJSONCall("findReferences('"+e+"', "+t+")",(function(){return r.languageService.findReferences(e,t)}))},r.prototype.getFileReferences=function(e){var t=this;return this.forwardJSONCall("getFileReferences('"+e+")",(function(){return t.languageService.getFileReferences(e)}))},r.prototype.getOccurrencesAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getOccurrencesAtPosition('"+e+"', "+t+")",(function(){return r.languageService.getOccurrencesAtPosition(e,t)}))},r.prototype.getDocumentHighlights=function(t,r,n){var i=this;return this.forwardJSONCall("getDocumentHighlights('"+t+"', "+r+")",(function(){var a=i.languageService.getDocumentHighlights(t,r,JSON.parse(n)),o=e.toFileNameLowerCase(e.normalizeSlashes(t));return e.filter(a,(function(t){return e.toFileNameLowerCase(e.normalizeSlashes(t.fileName))===o}))}))},r.prototype.getCompletionsAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getCompletionsAtPosition('"+e+"', "+t+", "+r+")",(function(){return n.languageService.getCompletionsAtPosition(e,t,r)}))},r.prototype.getCompletionEntryDetails=function(e,t,r,n,i,a){var o=this;return this.forwardJSONCall("getCompletionEntryDetails('"+e+"', "+t+", '"+r+"')",(function(){var s=void 0===n?void 0:JSON.parse(n);return o.languageService.getCompletionEntryDetails(e,t,r,s,i,a)}))},r.prototype.getFormattingEditsForRange=function(e,t,r,n){var i=this;return this.forwardJSONCall("getFormattingEditsForRange('"+e+"', "+t+", "+r+")",(function(){var a=JSON.parse(n);return i.languageService.getFormattingEditsForRange(e,t,r,a)}))},r.prototype.getFormattingEditsForDocument=function(e,t){var r=this;return this.forwardJSONCall("getFormattingEditsForDocument('"+e+"')",(function(){var n=JSON.parse(t);return r.languageService.getFormattingEditsForDocument(e,n)}))},r.prototype.getFormattingEditsAfterKeystroke=function(e,t,r,n){var i=this;return this.forwardJSONCall("getFormattingEditsAfterKeystroke('"+e+"', "+t+", '"+r+"')",(function(){var a=JSON.parse(n);return i.languageService.getFormattingEditsAfterKeystroke(e,t,r,a)}))},r.prototype.getDocCommentTemplateAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getDocCommentTemplateAtPosition('"+e+"', "+t+")",(function(){return n.languageService.getDocCommentTemplateAtPosition(e,t,r)}))},r.prototype.getNavigateToItems=function(e,t,r){var n=this;return this.forwardJSONCall("getNavigateToItems('"+e+"', "+t+", "+r+")",(function(){return n.languageService.getNavigateToItems(e,t,r)}))},r.prototype.getNavigationBarItems=function(e){var t=this;return this.forwardJSONCall("getNavigationBarItems('"+e+"')",(function(){return t.languageService.getNavigationBarItems(e)}))},r.prototype.getNavigationTree=function(e){var t=this;return this.forwardJSONCall("getNavigationTree('"+e+"')",(function(){return t.languageService.getNavigationTree(e)}))},r.prototype.getOutliningSpans=function(e){var t=this;return this.forwardJSONCall("getOutliningSpans('"+e+"')",(function(){return t.languageService.getOutliningSpans(e)}))},r.prototype.getTodoComments=function(e,t){var r=this;return this.forwardJSONCall("getTodoComments('"+e+"')",(function(){return r.languageService.getTodoComments(e,JSON.parse(t))}))},r.prototype.prepareCallHierarchy=function(e,t){var r=this;return this.forwardJSONCall("prepareCallHierarchy('"+e+"', "+t+")",(function(){return r.languageService.prepareCallHierarchy(e,t)}))},r.prototype.provideCallHierarchyIncomingCalls=function(e,t){var r=this;return this.forwardJSONCall("provideCallHierarchyIncomingCalls('"+e+"', "+t+")",(function(){return r.languageService.provideCallHierarchyIncomingCalls(e,t)}))},r.prototype.provideCallHierarchyOutgoingCalls=function(e,t){var r=this;return this.forwardJSONCall("provideCallHierarchyOutgoingCalls('"+e+"', "+t+")",(function(){return r.languageService.provideCallHierarchyOutgoingCalls(e,t)}))},r.prototype.getEmitOutput=function(e){var t=this;return this.forwardJSONCall("getEmitOutput('"+e+"')",(function(){var r=t.languageService.getEmitOutput(e),n=r.diagnostics,i=c(r,["diagnostics"]);return a(a({},i),{diagnostics:t.realizeDiagnostics(n)})}))},r.prototype.getEmitOutputObject=function(e){var t=this;return u(this.logger,"getEmitOutput('"+e+"')",!1,(function(){return t.languageService.getEmitOutput(e)}),this.logPerformance)},r.prototype.toggleLineComment=function(e,t){var r=this;return this.forwardJSONCall("toggleLineComment('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.toggleLineComment(e,t)}))},r.prototype.toggleMultilineComment=function(e,t){var r=this;return this.forwardJSONCall("toggleMultilineComment('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.toggleMultilineComment(e,t)}))},r.prototype.commentSelection=function(e,t){var r=this;return this.forwardJSONCall("commentSelection('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.commentSelection(e,t)}))},r.prototype.uncommentSelection=function(e,t){var r=this;return this.forwardJSONCall("uncommentSelection('"+e+"', '"+JSON.stringify(t)+"')",(function(){return r.languageService.uncommentSelection(e,t)}))},r}(d);function g(e){return{spans:e.spans.join(","),endOfLineState:e.endOfLineState}}var _=function(t){function r(r,n){var i=t.call(this,r)||this;return i.logger=n,i.logPerformance=!1,i.classifier=e.createClassifier(),i}return l(r,t),r.prototype.getEncodedLexicalClassifications=function(e,t,r){var n=this;return void 0===r&&(r=!1),s(this.logger,"getEncodedLexicalClassifications",(function(){return g(n.classifier.getEncodedLexicalClassifications(e,t,r))}),this.logPerformance)},r.prototype.getClassificationsForLine=function(e,t,r){void 0===r&&(r=!1);for(var n=this.classifier.getClassificationsForLine(e,t,r),i="",a=0,o=n.entries;a<o.length;a++){var s=o[a];i+=s.length+"\n",i+=s.classification+"\n"}return i+=n.finalLexState},r}(d),h=function(t){function r(e,r,n){var i=t.call(this,e)||this;return i.logger=r,i.host=n,i.logPerformance=!1,i}return l(r,t),r.prototype.forwardJSONCall=function(e,t){return s(this.logger,e,t,this.logPerformance)},r.prototype.resolveModuleName=function(t,r,n){var i=this;return this.forwardJSONCall("resolveModuleName('"+t+"')",(function(){var a=JSON.parse(n),o=e.resolveModuleName(r,e.normalizeSlashes(t),a,i.host),s=o.resolvedModule?o.resolvedModule.resolvedFileName:void 0;return o.resolvedModule&&".ts"!==o.resolvedModule.extension&&".tsx"!==o.resolvedModule.extension&&".d.ts"!==o.resolvedModule.extension&&".ets"!==o.resolvedModule.extension&&".d.ets"!==o.resolvedModule.extension&&(s=void 0),{resolvedFileName:s,failedLookupLocations:o.failedLookupLocations}}))},r.prototype.resolveTypeReferenceDirective=function(t,r,n){var i=this;return this.forwardJSONCall("resolveTypeReferenceDirective("+t+")",(function(){var a=JSON.parse(n),o=e.resolveTypeReferenceDirective(r,e.normalizeSlashes(t),a,i.host);return{resolvedFileName:o.resolvedTypeReferenceDirective?o.resolvedTypeReferenceDirective.resolvedFileName:void 0,primary:!o.resolvedTypeReferenceDirective||o.resolvedTypeReferenceDirective.primary,failedLookupLocations:o.failedLookupLocations}}))},r.prototype.getPreProcessedFileInfo=function(t,r){var n=this;return this.forwardJSONCall("getPreProcessedFileInfo('"+t+"')",(function(){var t=e.preProcessFile(e.getSnapshotText(r),!0,!0);return{referencedFiles:n.convertFileReferences(t.referencedFiles),importedFiles:n.convertFileReferences(t.importedFiles),ambientExternalModules:t.ambientExternalModules,isLibFile:t.isLibFile,typeReferenceDirectives:n.convertFileReferences(t.typeReferenceDirectives),libReferenceDirectives:n.convertFileReferences(t.libReferenceDirectives)}}))},r.prototype.getAutomaticTypeDirectiveNames=function(t){var r=this;return this.forwardJSONCall("getAutomaticTypeDirectiveNames('"+t+"')",(function(){var n=JSON.parse(t);return e.getAutomaticTypeDirectiveNames(n,r.host)}))},r.prototype.convertFileReferences=function(t){if(t){for(var r=[],n=0,i=t;n<i.length;n++){var a=i[n];r.push({path:e.normalizeSlashes(a.fileName),position:a.pos,length:a.end-a.pos})}return r}},r.prototype.getTSConfigFileInfo=function(t,r){var n=this;return this.forwardJSONCall("getTSConfigFileInfo('"+t+"')",(function(){var a=e.parseJsonText(t,e.getSnapshotText(r)),o=e.normalizeSlashes(t),s=e.parseJsonSourceFileConfigFileContent(a,n.host,e.getDirectoryPath(o),{},o);return{options:s.options,typeAcquisition:s.typeAcquisition,files:s.fileNames,raw:s.raw,errors:f(i(i([],a.parseDiagnostics),s.errors),"\r\n")}}))},r.prototype.getDefaultCompilationSettings=function(){return this.forwardJSONCall("getDefaultCompilationSettings()",(function(){return e.getDefaultCompilerOptions()}))},r.prototype.discoverTypings=function(t){var r=this,n=e.createGetCanonicalFileName(!1);return this.forwardJSONCall("discoverTypings()",(function(){var i=JSON.parse(t);return void 0===r.safeList&&(r.safeList=e.JsTyping.loadSafeList(r.host,e.toPath(i.safeListPath,i.safeListPath,n))),e.JsTyping.discoverTypings(r.host,(function(e){return r.logger.log(e)}),i.fileNames,e.toPath(i.projectRootPath,i.projectRootPath,n),r.safeList,i.packageNameToTypingLocation,i.typeAcquisition,i.unresolvedImports,i.typesRegistry)}))},r}(d),y=function(){function r(){this._shims=[]}return r.prototype.getServicesVersion=function(){return e.servicesVersion},r.prototype.createLanguageServiceShim=function(r){try{void 0===this.documentRegistry&&(this.documentRegistry=e.createDocumentRegistry(r.useCaseSensitiveFileNames&&r.useCaseSensitiveFileNames(),r.getCurrentDirectory()));var i=new n(r),a=e.createLanguageService(i,this.documentRegistry,!1);return new m(this,r,a)}catch(e){throw t(r,e),e}},r.prototype.createClassifierShim=function(e){try{return new _(this,e)}catch(r){throw t(e,r),r}},r.prototype.createCoreServicesShim=function(e){try{var r=new o(e);return new h(this,e,r)}catch(r){throw t(e,r),r}},r.prototype.close=function(){e.clear(this._shims),this.documentRegistry=void 0},r.prototype.registerShim=function(e){this._shims.push(e)},r.prototype.unregisterShim=function(e){for(var t=0;t<this._shims.length;t++)if(this._shims[t]===e)return void delete this._shims[t];throw new Error("Invalid operation")},r}();e.TypeScriptServicesFactory=y}(d||(d={})),function(){if("object"!=typeof globalThis)try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:!0}),__magic__.globalThis=__magic__,"undefined"==typeof globalThis&&(window.globalThis=window),delete Object.prototype.__magic__}catch(e){window.globalThis=window}}(),("undefined"==typeof process||process.browser)&&(globalThis.TypeScript=globalThis.TypeScript||{},globalThis.TypeScript.Services=globalThis.TypeScript.Services||{},globalThis.TypeScript.Services.TypeScriptServicesFactory=d.TypeScriptServicesFactory,globalThis.toolsVersion=d.versionMajorMinor),e.exports&&(e.exports=d),function(e){var t={since:"4.0",warnAfter:"4.1",message:"Use the appropriate method on 'ts.factory' or the 'factory' supplied by your transformation context instead."};e.createNodeArray=e.Debug.deprecate(e.factory.createNodeArray,t),e.createNumericLiteral=e.Debug.deprecate(e.factory.createNumericLiteral,t),e.createBigIntLiteral=e.Debug.deprecate(e.factory.createBigIntLiteral,t),e.createStringLiteral=e.Debug.deprecate(e.factory.createStringLiteral,t),e.createStringLiteralFromNode=e.Debug.deprecate(e.factory.createStringLiteralFromNode,t),e.createRegularExpressionLiteral=e.Debug.deprecate(e.factory.createRegularExpressionLiteral,t),e.createLoopVariable=e.Debug.deprecate(e.factory.createLoopVariable,t),e.createUniqueName=e.Debug.deprecate(e.factory.createUniqueName,t),e.createPrivateIdentifier=e.Debug.deprecate(e.factory.createPrivateIdentifier,t),e.createSuper=e.Debug.deprecate(e.factory.createSuper,t),e.createThis=e.Debug.deprecate(e.factory.createThis,t),e.createNull=e.Debug.deprecate(e.factory.createNull,t),e.createTrue=e.Debug.deprecate(e.factory.createTrue,t),e.createFalse=e.Debug.deprecate(e.factory.createFalse,t),e.createModifier=e.Debug.deprecate(e.factory.createModifier,t),e.createModifiersFromModifierFlags=e.Debug.deprecate(e.factory.createModifiersFromModifierFlags,t),e.createQualifiedName=e.Debug.deprecate(e.factory.createQualifiedName,t),e.updateQualifiedName=e.Debug.deprecate(e.factory.updateQualifiedName,t),e.createComputedPropertyName=e.Debug.deprecate(e.factory.createComputedPropertyName,t),e.updateComputedPropertyName=e.Debug.deprecate(e.factory.updateComputedPropertyName,t),e.createTypeParameterDeclaration=e.Debug.deprecate(e.factory.createTypeParameterDeclaration,t),e.updateTypeParameterDeclaration=e.Debug.deprecate(e.factory.updateTypeParameterDeclaration,t),e.createParameter=e.Debug.deprecate(e.factory.createParameterDeclaration,t),e.updateParameter=e.Debug.deprecate(e.factory.updateParameterDeclaration,t),e.createDecorator=e.Debug.deprecate(e.factory.createDecorator,t),e.updateDecorator=e.Debug.deprecate(e.factory.updateDecorator,t),e.createProperty=e.Debug.deprecate(e.factory.createPropertyDeclaration,t),e.updateProperty=e.Debug.deprecate(e.factory.updatePropertyDeclaration,t),e.createMethod=e.Debug.deprecate(e.factory.createMethodDeclaration,t),e.updateMethod=e.Debug.deprecate(e.factory.updateMethodDeclaration,t),e.createConstructor=e.Debug.deprecate(e.factory.createConstructorDeclaration,t),e.updateConstructor=e.Debug.deprecate(e.factory.updateConstructorDeclaration,t),e.createGetAccessor=e.Debug.deprecate(e.factory.createGetAccessorDeclaration,t),e.updateGetAccessor=e.Debug.deprecate(e.factory.updateGetAccessorDeclaration,t),e.createSetAccessor=e.Debug.deprecate(e.factory.createSetAccessorDeclaration,t),e.updateSetAccessor=e.Debug.deprecate(e.factory.updateSetAccessorDeclaration,t),e.createCallSignature=e.Debug.deprecate(e.factory.createCallSignature,t),e.updateCallSignature=e.Debug.deprecate(e.factory.updateCallSignature,t),e.createConstructSignature=e.Debug.deprecate(e.factory.createConstructSignature,t),e.updateConstructSignature=e.Debug.deprecate(e.factory.updateConstructSignature,t),e.updateIndexSignature=e.Debug.deprecate(e.factory.updateIndexSignature,t),e.createKeywordTypeNode=e.Debug.deprecate(e.factory.createKeywordTypeNode,t),e.createTypePredicateNodeWithModifier=e.Debug.deprecate(e.factory.createTypePredicateNode,t),e.updateTypePredicateNodeWithModifier=e.Debug.deprecate(e.factory.updateTypePredicateNode,t),e.createTypeReferenceNode=e.Debug.deprecate(e.factory.createTypeReferenceNode,t),e.updateTypeReferenceNode=e.Debug.deprecate(e.factory.updateTypeReferenceNode,t),e.createFunctionTypeNode=e.Debug.deprecate(e.factory.createFunctionTypeNode,t),e.updateFunctionTypeNode=e.Debug.deprecate(e.factory.updateFunctionTypeNode,t),e.createConstructorTypeNode=e.Debug.deprecate((function(t,r,n){return e.factory.createConstructorTypeNode(void 0,t,r,n)}),t),e.updateConstructorTypeNode=e.Debug.deprecate((function(t,r,n,i){return e.factory.updateConstructorTypeNode(t,t.modifiers,r,n,i)}),t),e.createTypeQueryNode=e.Debug.deprecate(e.factory.createTypeQueryNode,t),e.updateTypeQueryNode=e.Debug.deprecate(e.factory.updateTypeQueryNode,t),e.createTypeLiteralNode=e.Debug.deprecate(e.factory.createTypeLiteralNode,t),e.updateTypeLiteralNode=e.Debug.deprecate(e.factory.updateTypeLiteralNode,t),e.createArrayTypeNode=e.Debug.deprecate(e.factory.createArrayTypeNode,t),e.updateArrayTypeNode=e.Debug.deprecate(e.factory.updateArrayTypeNode,t),e.createTupleTypeNode=e.Debug.deprecate(e.factory.createTupleTypeNode,t),e.updateTupleTypeNode=e.Debug.deprecate(e.factory.updateTupleTypeNode,t),e.createOptionalTypeNode=e.Debug.deprecate(e.factory.createOptionalTypeNode,t),e.updateOptionalTypeNode=e.Debug.deprecate(e.factory.updateOptionalTypeNode,t),e.createRestTypeNode=e.Debug.deprecate(e.factory.createRestTypeNode,t),e.updateRestTypeNode=e.Debug.deprecate(e.factory.updateRestTypeNode,t),e.createUnionTypeNode=e.Debug.deprecate(e.factory.createUnionTypeNode,t),e.updateUnionTypeNode=e.Debug.deprecate(e.factory.updateUnionTypeNode,t),e.createIntersectionTypeNode=e.Debug.deprecate(e.factory.createIntersectionTypeNode,t),e.updateIntersectionTypeNode=e.Debug.deprecate(e.factory.updateIntersectionTypeNode,t),e.createConditionalTypeNode=e.Debug.deprecate(e.factory.createConditionalTypeNode,t),e.updateConditionalTypeNode=e.Debug.deprecate(e.factory.updateConditionalTypeNode,t),e.createInferTypeNode=e.Debug.deprecate(e.factory.createInferTypeNode,t),e.updateInferTypeNode=e.Debug.deprecate(e.factory.updateInferTypeNode,t),e.createImportTypeNode=e.Debug.deprecate(e.factory.createImportTypeNode,t),e.updateImportTypeNode=e.Debug.deprecate(e.factory.updateImportTypeNode,t),e.createParenthesizedType=e.Debug.deprecate(e.factory.createParenthesizedType,t),e.updateParenthesizedType=e.Debug.deprecate(e.factory.updateParenthesizedType,t),e.createThisTypeNode=e.Debug.deprecate(e.factory.createThisTypeNode,t),e.updateTypeOperatorNode=e.Debug.deprecate(e.factory.updateTypeOperatorNode,t),e.createIndexedAccessTypeNode=e.Debug.deprecate(e.factory.createIndexedAccessTypeNode,t),e.updateIndexedAccessTypeNode=e.Debug.deprecate(e.factory.updateIndexedAccessTypeNode,t),e.createMappedTypeNode=e.Debug.deprecate(e.factory.createMappedTypeNode,t),e.updateMappedTypeNode=e.Debug.deprecate(e.factory.updateMappedTypeNode,t),e.createLiteralTypeNode=e.Debug.deprecate(e.factory.createLiteralTypeNode,t),e.updateLiteralTypeNode=e.Debug.deprecate(e.factory.updateLiteralTypeNode,t),e.createObjectBindingPattern=e.Debug.deprecate(e.factory.createObjectBindingPattern,t),e.updateObjectBindingPattern=e.Debug.deprecate(e.factory.updateObjectBindingPattern,t),e.createArrayBindingPattern=e.Debug.deprecate(e.factory.createArrayBindingPattern,t),e.updateArrayBindingPattern=e.Debug.deprecate(e.factory.updateArrayBindingPattern,t),e.createBindingElement=e.Debug.deprecate(e.factory.createBindingElement,t),e.updateBindingElement=e.Debug.deprecate(e.factory.updateBindingElement,t),e.createArrayLiteral=e.Debug.deprecate(e.factory.createArrayLiteralExpression,t),e.updateArrayLiteral=e.Debug.deprecate(e.factory.updateArrayLiteralExpression,t),e.createObjectLiteral=e.Debug.deprecate(e.factory.createObjectLiteralExpression,t),e.updateObjectLiteral=e.Debug.deprecate(e.factory.updateObjectLiteralExpression,t),e.createPropertyAccess=e.Debug.deprecate(e.factory.createPropertyAccessExpression,t),e.updatePropertyAccess=e.Debug.deprecate(e.factory.updatePropertyAccessExpression,t),e.createPropertyAccessChain=e.Debug.deprecate(e.factory.createPropertyAccessChain,t),e.updatePropertyAccessChain=e.Debug.deprecate(e.factory.updatePropertyAccessChain,t),e.createElementAccess=e.Debug.deprecate(e.factory.createElementAccessExpression,t),e.updateElementAccess=e.Debug.deprecate(e.factory.updateElementAccessExpression,t),e.createElementAccessChain=e.Debug.deprecate(e.factory.createElementAccessChain,t),e.updateElementAccessChain=e.Debug.deprecate(e.factory.updateElementAccessChain,t),e.createCall=e.Debug.deprecate(e.factory.createCallExpression,t),e.updateCall=e.Debug.deprecate(e.factory.updateCallExpression,t),e.createCallChain=e.Debug.deprecate(e.factory.createCallChain,t),e.updateCallChain=e.Debug.deprecate(e.factory.updateCallChain,t),e.createNew=e.Debug.deprecate(e.factory.createNewExpression,t),e.updateNew=e.Debug.deprecate(e.factory.updateNewExpression,t),e.createTypeAssertion=e.Debug.deprecate(e.factory.createTypeAssertion,t),e.updateTypeAssertion=e.Debug.deprecate(e.factory.updateTypeAssertion,t),e.createParen=e.Debug.deprecate(e.factory.createParenthesizedExpression,t),e.updateParen=e.Debug.deprecate(e.factory.updateParenthesizedExpression,t),e.createFunctionExpression=e.Debug.deprecate(e.factory.createFunctionExpression,t),e.updateFunctionExpression=e.Debug.deprecate(e.factory.updateFunctionExpression,t),e.createDelete=e.Debug.deprecate(e.factory.createDeleteExpression,t),e.updateDelete=e.Debug.deprecate(e.factory.updateDeleteExpression,t),e.createTypeOf=e.Debug.deprecate(e.factory.createTypeOfExpression,t),e.updateTypeOf=e.Debug.deprecate(e.factory.updateTypeOfExpression,t),e.createVoid=e.Debug.deprecate(e.factory.createVoidExpression,t),e.updateVoid=e.Debug.deprecate(e.factory.updateVoidExpression,t),e.createAwait=e.Debug.deprecate(e.factory.createAwaitExpression,t),e.updateAwait=e.Debug.deprecate(e.factory.updateAwaitExpression,t),e.createPrefix=e.Debug.deprecate(e.factory.createPrefixUnaryExpression,t),e.updatePrefix=e.Debug.deprecate(e.factory.updatePrefixUnaryExpression,t),e.createPostfix=e.Debug.deprecate(e.factory.createPostfixUnaryExpression,t),e.updatePostfix=e.Debug.deprecate(e.factory.updatePostfixUnaryExpression,t),e.createBinary=e.Debug.deprecate(e.factory.createBinaryExpression,t),e.updateConditional=e.Debug.deprecate(e.factory.updateConditionalExpression,t),e.createTemplateExpression=e.Debug.deprecate(e.factory.createTemplateExpression,t),e.updateTemplateExpression=e.Debug.deprecate(e.factory.updateTemplateExpression,t),e.createTemplateHead=e.Debug.deprecate(e.factory.createTemplateHead,t),e.createTemplateMiddle=e.Debug.deprecate(e.factory.createTemplateMiddle,t),e.createTemplateTail=e.Debug.deprecate(e.factory.createTemplateTail,t),e.createNoSubstitutionTemplateLiteral=e.Debug.deprecate(e.factory.createNoSubstitutionTemplateLiteral,t),e.updateYield=e.Debug.deprecate(e.factory.updateYieldExpression,t),e.createSpread=e.Debug.deprecate(e.factory.createSpreadElement,t),e.updateSpread=e.Debug.deprecate(e.factory.updateSpreadElement,t),e.createOmittedExpression=e.Debug.deprecate(e.factory.createOmittedExpression,t),e.createAsExpression=e.Debug.deprecate(e.factory.createAsExpression,t),e.updateAsExpression=e.Debug.deprecate(e.factory.updateAsExpression,t),e.createNonNullExpression=e.Debug.deprecate(e.factory.createNonNullExpression,t),e.updateNonNullExpression=e.Debug.deprecate(e.factory.updateNonNullExpression,t),e.createNonNullChain=e.Debug.deprecate(e.factory.createNonNullChain,t),e.updateNonNullChain=e.Debug.deprecate(e.factory.updateNonNullChain,t),e.createMetaProperty=e.Debug.deprecate(e.factory.createMetaProperty,t),e.updateMetaProperty=e.Debug.deprecate(e.factory.updateMetaProperty,t),e.createTemplateSpan=e.Debug.deprecate(e.factory.createTemplateSpan,t),e.updateTemplateSpan=e.Debug.deprecate(e.factory.updateTemplateSpan,t),e.createSemicolonClassElement=e.Debug.deprecate(e.factory.createSemicolonClassElement,t),e.createBlock=e.Debug.deprecate(e.factory.createBlock,t),e.updateBlock=e.Debug.deprecate(e.factory.updateBlock,t),e.createVariableStatement=e.Debug.deprecate(e.factory.createVariableStatement,t),e.updateVariableStatement=e.Debug.deprecate(e.factory.updateVariableStatement,t),e.createEmptyStatement=e.Debug.deprecate(e.factory.createEmptyStatement,t),e.createExpressionStatement=e.Debug.deprecate(e.factory.createExpressionStatement,t),e.updateExpressionStatement=e.Debug.deprecate(e.factory.updateExpressionStatement,t),e.createStatement=e.Debug.deprecate(e.factory.createExpressionStatement,t),e.updateStatement=e.Debug.deprecate(e.factory.updateExpressionStatement,t),e.createIf=e.Debug.deprecate(e.factory.createIfStatement,t),e.updateIf=e.Debug.deprecate(e.factory.updateIfStatement,t),e.createDo=e.Debug.deprecate(e.factory.createDoStatement,t),e.updateDo=e.Debug.deprecate(e.factory.updateDoStatement,t),e.createWhile=e.Debug.deprecate(e.factory.createWhileStatement,t),e.updateWhile=e.Debug.deprecate(e.factory.updateWhileStatement,t),e.createFor=e.Debug.deprecate(e.factory.createForStatement,t),e.updateFor=e.Debug.deprecate(e.factory.updateForStatement,t),e.createForIn=e.Debug.deprecate(e.factory.createForInStatement,t),e.updateForIn=e.Debug.deprecate(e.factory.updateForInStatement,t),e.createForOf=e.Debug.deprecate(e.factory.createForOfStatement,t),e.updateForOf=e.Debug.deprecate(e.factory.updateForOfStatement,t),e.createContinue=e.Debug.deprecate(e.factory.createContinueStatement,t),e.updateContinue=e.Debug.deprecate(e.factory.updateContinueStatement,t),e.createBreak=e.Debug.deprecate(e.factory.createBreakStatement,t),e.updateBreak=e.Debug.deprecate(e.factory.updateBreakStatement,t),e.createReturn=e.Debug.deprecate(e.factory.createReturnStatement,t),e.updateReturn=e.Debug.deprecate(e.factory.updateReturnStatement,t),e.createWith=e.Debug.deprecate(e.factory.createWithStatement,t),e.updateWith=e.Debug.deprecate(e.factory.updateWithStatement,t),e.createSwitch=e.Debug.deprecate(e.factory.createSwitchStatement,t),e.updateSwitch=e.Debug.deprecate(e.factory.updateSwitchStatement,t),e.createLabel=e.Debug.deprecate(e.factory.createLabeledStatement,t),e.updateLabel=e.Debug.deprecate(e.factory.updateLabeledStatement,t),e.createThrow=e.Debug.deprecate(e.factory.createThrowStatement,t),e.updateThrow=e.Debug.deprecate(e.factory.updateThrowStatement,t),e.createTry=e.Debug.deprecate(e.factory.createTryStatement,t),e.updateTry=e.Debug.deprecate(e.factory.updateTryStatement,t),e.createDebuggerStatement=e.Debug.deprecate(e.factory.createDebuggerStatement,t),e.createVariableDeclarationList=e.Debug.deprecate(e.factory.createVariableDeclarationList,t),e.updateVariableDeclarationList=e.Debug.deprecate(e.factory.updateVariableDeclarationList,t),e.createFunctionDeclaration=e.Debug.deprecate(e.factory.createFunctionDeclaration,t),e.updateFunctionDeclaration=e.Debug.deprecate(e.factory.updateFunctionDeclaration,t),e.createClassDeclaration=e.Debug.deprecate(e.factory.createClassDeclaration,t),e.updateClassDeclaration=e.Debug.deprecate(e.factory.updateClassDeclaration,t),e.createInterfaceDeclaration=e.Debug.deprecate(e.factory.createInterfaceDeclaration,t),e.updateInterfaceDeclaration=e.Debug.deprecate(e.factory.updateInterfaceDeclaration,t),e.createTypeAliasDeclaration=e.Debug.deprecate(e.factory.createTypeAliasDeclaration,t),e.updateTypeAliasDeclaration=e.Debug.deprecate(e.factory.updateTypeAliasDeclaration,t),e.createEnumDeclaration=e.Debug.deprecate(e.factory.createEnumDeclaration,t),e.updateEnumDeclaration=e.Debug.deprecate(e.factory.updateEnumDeclaration,t),e.createModuleDeclaration=e.Debug.deprecate(e.factory.createModuleDeclaration,t),e.updateModuleDeclaration=e.Debug.deprecate(e.factory.updateModuleDeclaration,t),e.createModuleBlock=e.Debug.deprecate(e.factory.createModuleBlock,t),e.updateModuleBlock=e.Debug.deprecate(e.factory.updateModuleBlock,t),e.createCaseBlock=e.Debug.deprecate(e.factory.createCaseBlock,t),e.updateCaseBlock=e.Debug.deprecate(e.factory.updateCaseBlock,t),e.createNamespaceExportDeclaration=e.Debug.deprecate(e.factory.createNamespaceExportDeclaration,t),e.updateNamespaceExportDeclaration=e.Debug.deprecate(e.factory.updateNamespaceExportDeclaration,t),e.createImportEqualsDeclaration=e.Debug.deprecate(e.factory.createImportEqualsDeclaration,t),e.updateImportEqualsDeclaration=e.Debug.deprecate(e.factory.updateImportEqualsDeclaration,t),e.createImportDeclaration=e.Debug.deprecate(e.factory.createImportDeclaration,t),e.updateImportDeclaration=e.Debug.deprecate(e.factory.updateImportDeclaration,t),e.createNamespaceImport=e.Debug.deprecate(e.factory.createNamespaceImport,t),e.updateNamespaceImport=e.Debug.deprecate(e.factory.updateNamespaceImport,t),e.createNamedImports=e.Debug.deprecate(e.factory.createNamedImports,t),e.updateNamedImports=e.Debug.deprecate(e.factory.updateNamedImports,t),e.createImportSpecifier=e.Debug.deprecate(e.factory.createImportSpecifier,t),e.updateImportSpecifier=e.Debug.deprecate(e.factory.updateImportSpecifier,t),e.createExportAssignment=e.Debug.deprecate(e.factory.createExportAssignment,t),e.updateExportAssignment=e.Debug.deprecate(e.factory.updateExportAssignment,t),e.createNamedExports=e.Debug.deprecate(e.factory.createNamedExports,t),e.updateNamedExports=e.Debug.deprecate(e.factory.updateNamedExports,t),e.createExportSpecifier=e.Debug.deprecate(e.factory.createExportSpecifier,t),e.updateExportSpecifier=e.Debug.deprecate(e.factory.updateExportSpecifier,t),e.createExternalModuleReference=e.Debug.deprecate(e.factory.createExternalModuleReference,t),e.updateExternalModuleReference=e.Debug.deprecate(e.factory.updateExternalModuleReference,t),e.createJSDocTypeExpression=e.Debug.deprecate(e.factory.createJSDocTypeExpression,t),e.createJSDocTypeTag=e.Debug.deprecate(e.factory.createJSDocTypeTag,t),e.createJSDocReturnTag=e.Debug.deprecate(e.factory.createJSDocReturnTag,t),e.createJSDocThisTag=e.Debug.deprecate(e.factory.createJSDocThisTag,t),e.createJSDocComment=e.Debug.deprecate(e.factory.createJSDocComment,t),e.createJSDocParameterTag=e.Debug.deprecate(e.factory.createJSDocParameterTag,t),e.createJSDocClassTag=e.Debug.deprecate(e.factory.createJSDocClassTag,t),e.createJSDocAugmentsTag=e.Debug.deprecate(e.factory.createJSDocAugmentsTag,t),e.createJSDocEnumTag=e.Debug.deprecate(e.factory.createJSDocEnumTag,t),e.createJSDocTemplateTag=e.Debug.deprecate(e.factory.createJSDocTemplateTag,t),e.createJSDocTypedefTag=e.Debug.deprecate(e.factory.createJSDocTypedefTag,t),e.createJSDocCallbackTag=e.Debug.deprecate(e.factory.createJSDocCallbackTag,t),e.createJSDocSignature=e.Debug.deprecate(e.factory.createJSDocSignature,t),e.createJSDocPropertyTag=e.Debug.deprecate(e.factory.createJSDocPropertyTag,t),e.createJSDocTypeLiteral=e.Debug.deprecate(e.factory.createJSDocTypeLiteral,t),e.createJSDocImplementsTag=e.Debug.deprecate(e.factory.createJSDocImplementsTag,t),e.createJSDocAuthorTag=e.Debug.deprecate(e.factory.createJSDocAuthorTag,t),e.createJSDocPublicTag=e.Debug.deprecate(e.factory.createJSDocPublicTag,t),e.createJSDocPrivateTag=e.Debug.deprecate(e.factory.createJSDocPrivateTag,t),e.createJSDocProtectedTag=e.Debug.deprecate(e.factory.createJSDocProtectedTag,t),e.createJSDocReadonlyTag=e.Debug.deprecate(e.factory.createJSDocReadonlyTag,t),e.createJSDocTag=e.Debug.deprecate(e.factory.createJSDocUnknownTag,t),e.createJsxElement=e.Debug.deprecate(e.factory.createJsxElement,t),e.updateJsxElement=e.Debug.deprecate(e.factory.updateJsxElement,t),e.createJsxSelfClosingElement=e.Debug.deprecate(e.factory.createJsxSelfClosingElement,t),e.updateJsxSelfClosingElement=e.Debug.deprecate(e.factory.updateJsxSelfClosingElement,t),e.createJsxOpeningElement=e.Debug.deprecate(e.factory.createJsxOpeningElement,t),e.updateJsxOpeningElement=e.Debug.deprecate(e.factory.updateJsxOpeningElement,t),e.createJsxClosingElement=e.Debug.deprecate(e.factory.createJsxClosingElement,t),e.updateJsxClosingElement=e.Debug.deprecate(e.factory.updateJsxClosingElement,t),e.createJsxFragment=e.Debug.deprecate(e.factory.createJsxFragment,t),e.createJsxText=e.Debug.deprecate(e.factory.createJsxText,t),e.updateJsxText=e.Debug.deprecate(e.factory.updateJsxText,t),e.createJsxOpeningFragment=e.Debug.deprecate(e.factory.createJsxOpeningFragment,t),e.createJsxJsxClosingFragment=e.Debug.deprecate(e.factory.createJsxJsxClosingFragment,t),e.updateJsxFragment=e.Debug.deprecate(e.factory.updateJsxFragment,t),e.createJsxAttribute=e.Debug.deprecate(e.factory.createJsxAttribute,t),e.updateJsxAttribute=e.Debug.deprecate(e.factory.updateJsxAttribute,t),e.createJsxAttributes=e.Debug.deprecate(e.factory.createJsxAttributes,t),e.updateJsxAttributes=e.Debug.deprecate(e.factory.updateJsxAttributes,t),e.createJsxSpreadAttribute=e.Debug.deprecate(e.factory.createJsxSpreadAttribute,t),e.updateJsxSpreadAttribute=e.Debug.deprecate(e.factory.updateJsxSpreadAttribute,t),e.createJsxExpression=e.Debug.deprecate(e.factory.createJsxExpression,t),e.updateJsxExpression=e.Debug.deprecate(e.factory.updateJsxExpression,t),e.createCaseClause=e.Debug.deprecate(e.factory.createCaseClause,t),e.updateCaseClause=e.Debug.deprecate(e.factory.updateCaseClause,t),e.createDefaultClause=e.Debug.deprecate(e.factory.createDefaultClause,t),e.updateDefaultClause=e.Debug.deprecate(e.factory.updateDefaultClause,t),e.createHeritageClause=e.Debug.deprecate(e.factory.createHeritageClause,t),e.updateHeritageClause=e.Debug.deprecate(e.factory.updateHeritageClause,t),e.createCatchClause=e.Debug.deprecate(e.factory.createCatchClause,t),e.updateCatchClause=e.Debug.deprecate(e.factory.updateCatchClause,t),e.createPropertyAssignment=e.Debug.deprecate(e.factory.createPropertyAssignment,t),e.updatePropertyAssignment=e.Debug.deprecate(e.factory.updatePropertyAssignment,t),e.createShorthandPropertyAssignment=e.Debug.deprecate(e.factory.createShorthandPropertyAssignment,t),e.updateShorthandPropertyAssignment=e.Debug.deprecate(e.factory.updateShorthandPropertyAssignment,t),e.createSpreadAssignment=e.Debug.deprecate(e.factory.createSpreadAssignment,t),e.updateSpreadAssignment=e.Debug.deprecate(e.factory.updateSpreadAssignment,t),e.createEnumMember=e.Debug.deprecate(e.factory.createEnumMember,t),e.updateEnumMember=e.Debug.deprecate(e.factory.updateEnumMember,t),e.updateSourceFileNode=e.Debug.deprecate(e.factory.updateSourceFile,t),e.createNotEmittedStatement=e.Debug.deprecate(e.factory.createNotEmittedStatement,t),e.createPartiallyEmittedExpression=e.Debug.deprecate(e.factory.createPartiallyEmittedExpression,t),e.updatePartiallyEmittedExpression=e.Debug.deprecate(e.factory.updatePartiallyEmittedExpression,t),e.createCommaList=e.Debug.deprecate(e.factory.createCommaListExpression,t),e.updateCommaList=e.Debug.deprecate(e.factory.updateCommaListExpression,t),e.createBundle=e.Debug.deprecate(e.factory.createBundle,t),e.updateBundle=e.Debug.deprecate(e.factory.updateBundle,t),e.createImmediatelyInvokedFunctionExpression=e.Debug.deprecate(e.factory.createImmediatelyInvokedFunctionExpression,t),e.createImmediatelyInvokedArrowFunction=e.Debug.deprecate(e.factory.createImmediatelyInvokedArrowFunction,t),e.createVoidZero=e.Debug.deprecate(e.factory.createVoidZero,t),e.createExportDefault=e.Debug.deprecate(e.factory.createExportDefault,t),e.createExternalModuleExport=e.Debug.deprecate(e.factory.createExternalModuleExport,t),e.createNamespaceExport=e.Debug.deprecate(e.factory.createNamespaceExport,t),e.updateNamespaceExport=e.Debug.deprecate(e.factory.updateNamespaceExport,t),e.createToken=e.Debug.deprecate((function(t){return e.factory.createToken(t)}),t),e.createIdentifier=e.Debug.deprecate((function(t){return e.factory.createIdentifier(t,void 0,void 0)}),t),e.createTempVariable=e.Debug.deprecate((function(t){return e.factory.createTempVariable(t,void 0)}),t),e.getGeneratedNameForNode=e.Debug.deprecate((function(t){return e.factory.getGeneratedNameForNode(t,void 0)}),t),e.createOptimisticUniqueName=e.Debug.deprecate((function(t){return e.factory.createUniqueName(t,16)}),t),e.createFileLevelUniqueName=e.Debug.deprecate((function(t){return e.factory.createUniqueName(t,48)}),t),e.createIndexSignature=e.Debug.deprecate((function(t,r,n,i){return e.factory.createIndexSignature(t,r,n,i)}),t),e.createTypePredicateNode=e.Debug.deprecate((function(t,r){return e.factory.createTypePredicateNode(void 0,t,r)}),t),e.updateTypePredicateNode=e.Debug.deprecate((function(t,r,n){return e.factory.updateTypePredicateNode(t,void 0,r,n)}),t),e.createLiteral=e.Debug.deprecate((function(t){return"number"==typeof t?e.factory.createNumericLiteral(t):"object"==typeof t&&"base10Value"in t?e.factory.createBigIntLiteral(t):"boolean"==typeof t?t?e.factory.createTrue():e.factory.createFalse():"string"==typeof t?e.factory.createStringLiteral(t,void 0):e.factory.createStringLiteralFromNode(t)}),{since:"4.0",warnAfter:"4.1",message:"Use `factory.createStringLiteral`, `factory.createStringLiteralFromNode`, `factory.createNumericLiteral`, `factory.createBigIntLiteral`, `factory.createTrue`, `factory.createFalse`, or the factory supplied by your transformation context instead."}),e.createMethodSignature=e.Debug.deprecate((function(t,r,n,i,a){return e.factory.createMethodSignature(void 0,i,a,t,r,n)}),t),e.updateMethodSignature=e.Debug.deprecate((function(t,r,n,i,a,o){return e.factory.updateMethodSignature(t,t.modifiers,a,o,r,n,i)}),t),e.createTypeOperatorNode=e.Debug.deprecate((function(t,r){var n;return r?n=t:(r=t,n=139),e.factory.createTypeOperatorNode(n,r)}),t),e.createTaggedTemplate=e.Debug.deprecate((function(t,r,n){var i;return n?i=r:n=r,e.factory.createTaggedTemplateExpression(t,i,n)}),t),e.updateTaggedTemplate=e.Debug.deprecate((function(t,r,n,i){var a;return i?a=n:i=n,e.factory.updateTaggedTemplateExpression(t,r,a,i)}),t),e.updateBinary=e.Debug.deprecate((function(t,r,n,i){return void 0===i&&(i=t.operatorToken),"number"==typeof i&&(i=i===t.operatorToken.kind?t.operatorToken:e.factory.createToken(i)),e.factory.updateBinaryExpression(t,r,i,n)}),t),e.createConditional=e.Debug.deprecate((function(t,r,n,i,a){return 5===arguments.length?e.factory.createConditionalExpression(t,r,n,i,a):3===arguments.length?e.factory.createConditionalExpression(t,e.factory.createToken(57),r,e.factory.createToken(58),n):e.Debug.fail("Argument count mismatch")}),t),e.createYield=e.Debug.deprecate((function(t,r){var n;return r?n=t:r=t,e.factory.createYieldExpression(n,r)}),t),e.createClassExpression=e.Debug.deprecate((function(t,r,n,i,a){return e.factory.createClassExpression(void 0,t,r,n,i,a)}),t),e.updateClassExpression=e.Debug.deprecate((function(t,r,n,i,a,o){return e.factory.updateClassExpression(t,void 0,r,n,i,a,o)}),t),e.createPropertySignature=e.Debug.deprecate((function(t,r,n,i,a){var o=e.factory.createPropertySignature(t,r,n,i);return o.initializer=a,o}),t),e.updatePropertySignature=e.Debug.deprecate((function(t,r,n,i,a,o){var s=e.factory.updatePropertySignature(t,r,n,i,a);return t.initializer!==o&&(s===t&&(s=e.factory.cloneNode(t)),s.initializer=o),s}),t),e.createExpressionWithTypeArguments=e.Debug.deprecate((function(t,r){return e.factory.createExpressionWithTypeArguments(r,t)}),t),e.updateExpressionWithTypeArguments=e.Debug.deprecate((function(t,r,n){return e.factory.updateExpressionWithTypeArguments(t,n,r)}),t),e.createArrowFunction=e.Debug.deprecate((function(t,r,n,i,a,o){return 6===arguments.length?e.factory.createArrowFunction(t,r,n,i,a,o):5===arguments.length?e.factory.createArrowFunction(t,r,n,i,void 0,a):e.Debug.fail("Argument count mismatch")}),t),e.updateArrowFunction=e.Debug.deprecate((function(t,r,n,i,a,o,s){return 7===arguments.length?e.factory.updateArrowFunction(t,r,n,i,a,o,s):6===arguments.length?e.factory.updateArrowFunction(t,r,n,i,a,t.equalsGreaterThanToken,o):e.Debug.fail("Argument count mismatch")}),t),e.createVariableDeclaration=e.Debug.deprecate((function(t,r,n,i){return 4===arguments.length?e.factory.createVariableDeclaration(t,r,n,i):arguments.length>=1&&arguments.length<=3?e.factory.createVariableDeclaration(t,void 0,r,n):e.Debug.fail("Argument count mismatch")}),t),e.updateVariableDeclaration=e.Debug.deprecate((function(t,r,n,i,a){return 5===arguments.length?e.factory.updateVariableDeclaration(t,r,n,i,a):4===arguments.length?e.factory.updateVariableDeclaration(t,r,t.exclamationToken,n,i):e.Debug.fail("Argument count mismatch")}),t),e.createImportClause=e.Debug.deprecate((function(t,r,n){return void 0===n&&(n=!1),e.factory.createImportClause(n,t,r)}),t),e.updateImportClause=e.Debug.deprecate((function(t,r,n,i){return e.factory.updateImportClause(t,i,r,n)}),t),e.createExportDeclaration=e.Debug.deprecate((function(t,r,n,i,a){return void 0===a&&(a=!1),e.factory.createExportDeclaration(t,r,a,n,i)}),t),e.updateExportDeclaration=e.Debug.deprecate((function(t,r,n,i,a,o){return e.factory.updateExportDeclaration(t,r,n,o,i,a)}),t),e.createJSDocParamTag=e.Debug.deprecate((function(t,r,n,i){return e.factory.createJSDocParameterTag(void 0,t,r,n,!1,i)}),t),e.createComma=e.Debug.deprecate((function(t,r){return e.factory.createComma(t,r)}),t),e.createLessThan=e.Debug.deprecate((function(t,r){return e.factory.createLessThan(t,r)}),t),e.createAssignment=e.Debug.deprecate((function(t,r){return e.factory.createAssignment(t,r)}),t),e.createStrictEquality=e.Debug.deprecate((function(t,r){return e.factory.createStrictEquality(t,r)}),t),e.createStrictInequality=e.Debug.deprecate((function(t,r){return e.factory.createStrictInequality(t,r)}),t),e.createAdd=e.Debug.deprecate((function(t,r){return e.factory.createAdd(t,r)}),t),e.createSubtract=e.Debug.deprecate((function(t,r){return e.factory.createSubtract(t,r)}),t),e.createLogicalAnd=e.Debug.deprecate((function(t,r){return e.factory.createLogicalAnd(t,r)}),t),e.createLogicalOr=e.Debug.deprecate((function(t,r){return e.factory.createLogicalOr(t,r)}),t),e.createPostfixIncrement=e.Debug.deprecate((function(t){return e.factory.createPostfixIncrement(t)}),t),e.createLogicalNot=e.Debug.deprecate((function(t){return e.factory.createLogicalNot(t)}),t),e.createNode=e.Debug.deprecate((function(t,r,n){return void 0===r&&(r=0),void 0===n&&(n=0),e.setTextRangePosEnd(300===t?e.parseBaseNodeFactory.createBaseSourceFileNode(t):78===t?e.parseBaseNodeFactory.createBaseIdentifierNode(t):79===t?e.parseBaseNodeFactory.createBasePrivateIdentifierNode(t):e.isNodeKind(t)?e.parseBaseNodeFactory.createBaseNode(t):e.parseBaseNodeFactory.createBaseTokenNode(t),r,n)}),{since:"4.0",warnAfter:"4.1",message:"Use an appropriate `factory` method instead."}),e.getMutableClone=e.Debug.deprecate((function(t){var r=e.factory.cloneNode(t);return e.setTextRange(r,t),e.setParent(r,t.parent),r}),{since:"4.0",warnAfter:"4.1",message:"Use an appropriate `factory.update...` method instead, use `setCommentRange` or `setSourceMapRange`, and avoid setting `parent`."}),e.isTypeAssertion=e.Debug.deprecate((function(e){return 207===e.kind}),{since:"4.0",warnAfter:"4.1",message:"Use `isTypeAssertionExpression` instead."})}(d||(d={})),function(e){e.cookBookMsg=[],e.cookBookTag=[];for(var t=0;t<=151;t++)e.cookBookMsg[t]="";e.cookBookTag[1]="Objects with property names that are not identifiers are not supported (arkts-identifiers-as-prop-names)",e.cookBookTag[2]='"Symbol()" API is not supported (arkts-no-symbol)',e.cookBookTag[3]='Private "#" identifiers are not supported (arkts-no-private-identifiers)',e.cookBookTag[4]="Use unique names for types and namespaces. (arkts-unique-names)",e.cookBookTag[5]='Use "let" instead of "var" (arkts-no-var)',e.cookBookTag[6]="",e.cookBookTag[7]="",e.cookBookTag[8]='Use explicit types instead of "any", "unknown" (arkts-no-any-unknown)',e.cookBookTag[9]="",e.cookBookTag[10]="",e.cookBookTag[11]="",e.cookBookTag[12]="",e.cookBookTag[13]="",e.cookBookTag[14]='Use "class" instead of a type with call signature (arkts-no-call-signatures)',e.cookBookTag[15]='Use "class" instead of a type with constructor signature (arkts-no-ctor-signatures-type)',e.cookBookTag[16]="Only one static block is supported (arkts-no-multiple-static-blocks)",e.cookBookTag[17]="Indexed signatures are not supported (arkts-no-indexed-signatures)",e.cookBookTag[18]="",e.cookBookTag[19]="Use inheritance instead of intersection types (arkts-no-intersection-types)",e.cookBookTag[20]="",e.cookBookTag[21]='Type notation using "this" is not supported (arkts-no-typing-with-this)',e.cookBookTag[22]="Conditional types are not supported (arkts-no-conditional-types)",e.cookBookTag[23]="",e.cookBookTag[24]="",e.cookBookTag[25]='Declaring fields in "constructor" is not supported (arkts-no-ctor-prop-decls)',e.cookBookTag[26]="",e.cookBookTag[27]="Construct signatures are not supported in interfaces (arkts-no-ctor-signatures-iface)",e.cookBookTag[28]="Indexed access types are not supported (arkts-no-aliases-by-index)",e.cookBookTag[29]="Indexed access is not supported for fields (arkts-no-props-by-index)",e.cookBookTag[30]="Structural typing is not supported (arkts-no-structural-typing)",e.cookBookTag[31]="",e.cookBookTag[32]="",e.cookBookTag[33]="",e.cookBookTag[34]="Type inference in case of generic function calls is limited (arkts-no-inferred-generic-params)",e.cookBookTag[35]="",e.cookBookTag[36]="",e.cookBookTag[37]="RegExp literals are not supported (arkts-no-regexp-literals)",e.cookBookTag[38]="Object literal must correspond to some explicitly declared class or interface (arkts-no-untyped-obj-literals)",e.cookBookTag[39]="",e.cookBookTag[40]="Object literals cannot be used as type declarations (arkts-no-obj-literals-as-types)",e.cookBookTag[41]="",e.cookBookTag[42]="",e.cookBookTag[43]="Array literals must contain elements of only inferrable types (arkts-no-noninferrable-arr-literals)",e.cookBookTag[44]="",e.cookBookTag[45]="",e.cookBookTag[46]="Use arrow functions instead of function expressions (arkts-no-func-expressions)",e.cookBookTag[47]="",e.cookBookTag[48]="",e.cookBookTag[49]="Use generic functions instead of generic arrow functions (arkts-no-generic-lambdas)",e.cookBookTag[50]="Class literals are not supported (arkts-no-class-literals)",e.cookBookTag[51]='Classes cannot be specified in "implements" clause (arkts-implements-only-iface)',e.cookBookTag[52]="Reassigning object methods is not supported (arkts-no-method-reassignment)",e.cookBookTag[53]='Only "as T" syntax is supported for type casts (arkts-as-casts)',e.cookBookTag[54]="JSX expressions are not supported (arkts-no-jsx)",e.cookBookTag[55]='Unary operators "+", "-" and "~" work only on numbers (arkts-no-polymorphic-unops)',e.cookBookTag[56]="",e.cookBookTag[57]="",e.cookBookTag[58]="",e.cookBookTag[59]='"delete" operator is not supported (arkts-no-delete)',e.cookBookTag[60]='"typeof" operator is allowed only in expression contexts (arkts-no-type-query)',e.cookBookTag[61]="",e.cookBookTag[62]="",e.cookBookTag[63]="",e.cookBookTag[64]="",e.cookBookTag[65]='"instanceof" operator is partially supported (arkts-instanceof-ref-types)',e.cookBookTag[66]='"in" operator is not supported (arkts-no-in)',e.cookBookTag[67]="",e.cookBookTag[68]="",e.cookBookTag[69]="Destructuring assignment is not supported (arkts-no-destruct-assignment)",e.cookBookTag[70]="",e.cookBookTag[71]='The comma operator "," is supported only in "for" loops (arkts-no-comma-outside-loops)',e.cookBookTag[72]="",e.cookBookTag[73]="",e.cookBookTag[74]="Destructuring variable declarations are not supported (arkts-no-destruct-decls)",e.cookBookTag[75]="",e.cookBookTag[76]="",e.cookBookTag[77]="",e.cookBookTag[78]="",e.cookBookTag[79]="Type annotation in catch clause is not supported (arkts-no-types-in-catch)",e.cookBookTag[80]='"for .. in" is not supported (arkts-no-for-in)',e.cookBookTag[81]="",e.cookBookTag[82]="",e.cookBookTag[83]="Mapped type expression is not supported (arkts-no-mapped-types)",e.cookBookTag[84]='"with" statement is not supported (arkts-no-with)',e.cookBookTag[85]="",e.cookBookTag[86]="",e.cookBookTag[87]='"throw" statements cannot accept values of arbitrary types (arkts-limited-throw)',e.cookBookTag[88]="",e.cookBookTag[89]="",e.cookBookTag[90]="Function return type inference is limited (arkts-no-implicit-return-types)",e.cookBookTag[91]="Destructuring parameter declarations are not supported (arkts-no-destruct-params)",e.cookBookTag[92]="Nested functions are not supported (arkts-no-nested-funcs)",e.cookBookTag[93]='Using "this" inside stand-alone functions is not supported (arkts-no-standalone-this)',e.cookBookTag[94]="Generator functions are not supported (arkts-no-generators)",e.cookBookTag[95]="",e.cookBookTag[96]='Type guarding is supported with "instanceof" and "as" (arkts-no-is)',e.cookBookTag[97]="",e.cookBookTag[98]="",e.cookBookTag[99]="It is possible to spread only arrays or classes derived from arrays into the rest parameter or array literals (arkts-no-spread)",e.cookBookTag[100]="",e.cookBookTag[101]="",e.cookBookTag[102]="Interface can not extend interfaces with the same method (arkts-no-extend-same-prop)",e.cookBookTag[103]="Declaration merging is not supported (arkts-no-decl-merging)",e.cookBookTag[104]="Interfaces cannot extend classes (arkts-extends-only-class)",e.cookBookTag[105]="",e.cookBookTag[106]="Constructor function type is not supported (arkts-no-ctor-signatures-funcs)",e.cookBookTag[107]="",e.cookBookTag[108]="",e.cookBookTag[109]="",e.cookBookTag[110]="",e.cookBookTag[111]="Enumeration members can be initialized only with compile time expressions of the same type (arkts-no-enum-mixed-types)",e.cookBookTag[112]="",e.cookBookTag[113]='"enum" declaration merging is not supported (arkts-no-enum-merging)',e.cookBookTag[114]="Namespaces cannot be used as objects (arkts-no-ns-as-obj)",e.cookBookTag[115]="",e.cookBookTag[116]="Non-declaration statements in namespaces are not supported (single semicolons are considered as empty non-delcaration statements) (arkts-no-ns-statements)",e.cookBookTag[117]="",e.cookBookTag[118]="Special import type declarations are not supported (arkts-no-special-imports)",e.cookBookTag[119]="Importing a module for side-effects only is not supported (arkts-no-side-effects-imports)",e.cookBookTag[120]='"import default as ..." is not supported (arkts-no-import-default-as)',e.cookBookTag[121]='"require" and "import" assignment are not supported (arkts-no-require)',e.cookBookTag[122]="",e.cookBookTag[123]="",e.cookBookTag[124]="",e.cookBookTag[125]="",e.cookBookTag[126]='"export = ..." assignment is not supported (arkts-no-export-assignment)',e.cookBookTag[127]='Special "export type" declarations are not supported (arkts-no-special-exports)',e.cookBookTag[128]="Ambient module declaration is not supported (arkts-no-ambient-decls)",e.cookBookTag[129]="Wildcards in module names are not supported (arkts-no-module-wildcards)",e.cookBookTag[130]="Universal module definitions (UMD) are not supported (arkts-no-umd)",e.cookBookTag[131]="",e.cookBookTag[132]='"new.target" is not supported (arkts-no-new-target)',e.cookBookTag[133]="",e.cookBookTag[134]="Definite assignment assertions are not supported (arkts-no-definite-assignment)",e.cookBookTag[135]="",e.cookBookTag[136]="Prototype assignment is not supported (arkts-no-prototype-assignment)",e.cookBookTag[137]='"globalThis" is not supported (arkts-no-globalthis)',e.cookBookTag[138]="Some of utility types are not supported (arkts-no-utility-types)",e.cookBookTag[139]="Declaring properties on functions is not supported (arkts-no-func-props)",e.cookBookTag[140]='"Function.apply", "Function.bind", "Function.call" are not supported (arkts-no-func-apply-bind-call)',e.cookBookTag[141]="",e.cookBookTag[142]='"as const" assertions are not supported (arkts-no-as-const)',e.cookBookTag[143]="Import assertions are not supported (arkts-no-import-assertions)",e.cookBookTag[144]="Usage of standard library is restricted (arkts-limited-stdlib)",e.cookBookTag[145]="Strict type checking is enforced (arkts-strict-typing)",e.cookBookTag[146]="Switching off type checks with in-place comments is not allowed (arkts-strict-typing-required)",e.cookBookTag[147]="No dependencies on TypeScript code are currently allowed (arkts-no-ts-deps)",e.cookBookTag[148]="No decorators except ArkUI decorators are currently allowed (arkts-no-decorators-except-arkui)",e.cookBookTag[149]="Classes cannot be used as objects (arkts-no-classes-as-obj)",e.cookBookTag[150]='"import" statements after other statements are not allowed (arkts-no-misplaced-imports)',e.cookBookTag[151]='Usage of "ESObject" type is restricted (arkts-limited-esobj)'}(d||(d={})),function(e){!function(e){e.TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE=2322,e.TYPE_UNKNOWN_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE=/^Type '(.*)\bunknown\b(.*)' is not assignable to type '.*'\.$/,e.TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE=/^Type 'null' is not assignable to type '.*'\.$/,e.TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE=/^Type 'undefined' is not assignable to type '.*'\.$/,e.ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE=2345,e.ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE=/^Argument of type 'null' is not assignable to parameter of type '.*'\.$/,e.ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE=/^Argument of type 'undefined' is not assignable to parameter of type '.*'\.$/,e.NO_OVERLOAD_MATCHES_THIS_CALL_ERROR_CODE=2769;var t=function(){function t(e){this.inLibCall=!1,this.filteredDiagnosticMessages=[],this.filteredDiagnosticMessages=e}return t.prototype.configure=function(e,t){this.inLibCall=e,this.diagnosticMessages=t},t.prototype.checkMessageText=function(t){return!this.inLibCall||!(t.match(e.ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE)||t.match(e.ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE)||t.match(e.TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE)||t.match(e.TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))},t.prototype.checkMessageChain=function(t){if(t.code==e.TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE){if(t.messageText.match(e.TYPE_UNKNOWN_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))return!1;if(this.inLibCall&&t.messageText.match(e.TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))return!1;if(this.inLibCall&&t.messageText.match(e.TYPE_NULL_IS_NOT_ASSIGNABLE_TO_TYPE_1_RE))return!1}if(t.code==e.ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE){if(this.inLibCall&&t.messageText.match(e.ARGUMENT_OF_TYPE_UNDEFINED_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE))return!1;if(this.inLibCall&&t.messageText.match(e.ARGUMENT_OF_TYPE_NULL_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_RE))return!1}return null==t.next||this.checkMessageChain(t.next[0])},t.prototype.checkFilteredDiagnosticMessages=function(e){if(0==this.filteredDiagnosticMessages.length)return!0;if("string"!=typeof e&&this.filteredDiagnosticMessages.includes(e))return!1;for(var t=0,r=this.filteredDiagnosticMessages;t<r.length;t++){var n=r[t];if("string"!=typeof e){for(var i=e,a=n;i;){if(!a)return!0;if(i.code!=a.code)return!0;if(i.messageText!=a.messageText)return!0;i=i.next?i.next[0]:void 0,a=a.next?a.next[0]:void 0}return!1}if(e==n.messageText)return!1}return!0},t.prototype.checkDiagnosticMessage=function(e){return!!this.diagnosticMessages&&(!(this.inLibCall&&!this.checkFilteredDiagnosticMessages(e))&&("string"==typeof e?this.checkMessageText(e):!!this.checkMessageChain(e)||(this.diagnosticMessages.push(e),!1)))},t}();e.LibraryTypeCallDiagnosticChecker=t}(e.LibraryTypeCallDiagnosticCheckerNamespace||(e.LibraryTypeCallDiagnosticCheckerNamespace={}))}(d||(d={})),function(e){!function(e){var t;!function(e){e[e.AnyType=0]="AnyType",e[e.SymbolType=1]="SymbolType",e[e.ObjectLiteralNoContextType=2]="ObjectLiteralNoContextType",e[e.ArrayLiteralNoContextType=3]="ArrayLiteralNoContextType",e[e.ComputedPropertyName=4]="ComputedPropertyName",e[e.LiteralAsPropertyName=5]="LiteralAsPropertyName",e[e.TypeQuery=6]="TypeQuery",e[e.RegexLiteral=7]="RegexLiteral",e[e.IsOperator=8]="IsOperator",e[e.DestructuringParameter=9]="DestructuringParameter",e[e.YieldExpression=10]="YieldExpression",e[e.InterfaceMerging=11]="InterfaceMerging",e[e.EnumMerging=12]="EnumMerging",e[e.InterfaceExtendsClass=13]="InterfaceExtendsClass",e[e.IndexMember=14]="IndexMember",e[e.WithStatement=15]="WithStatement",e[e.ThrowStatement=16]="ThrowStatement",e[e.IndexedAccessType=17]="IndexedAccessType",e[e.UnknownType=18]="UnknownType",e[e.ForInStatement=19]="ForInStatement",e[e.InOperator=20]="InOperator",e[e.ImportFromPath=21]="ImportFromPath",e[e.FunctionExpression=22]="FunctionExpression",e[e.IntersectionType=23]="IntersectionType",e[e.ObjectTypeLiteral=24]="ObjectTypeLiteral",e[e.CommaOperator=25]="CommaOperator",e[e.LimitedReturnTypeInference=26]="LimitedReturnTypeInference",e[e.LambdaWithTypeParameters=27]="LambdaWithTypeParameters",e[e.ClassExpression=28]="ClassExpression",e[e.DestructuringAssignment=29]="DestructuringAssignment",e[e.DestructuringDeclaration=30]="DestructuringDeclaration",e[e.VarDeclaration=31]="VarDeclaration",e[e.CatchWithUnsupportedType=32]="CatchWithUnsupportedType",e[e.DeleteOperator=33]="DeleteOperator",e[e.DeclWithDuplicateName=34]="DeclWithDuplicateName",e[e.UnaryArithmNotNumber=35]="UnaryArithmNotNumber",e[e.ConstructorType=36]="ConstructorType",e[e.ConstructorIface=37]="ConstructorIface",e[e.ConstructorFuncs=38]="ConstructorFuncs",e[e.CallSignature=39]="CallSignature",e[e.TypeAssertion=40]="TypeAssertion",e[e.PrivateIdentifier=41]="PrivateIdentifier",e[e.LocalFunction=42]="LocalFunction",e[e.ConditionalType=43]="ConditionalType",e[e.MappedType=44]="MappedType",e[e.NamespaceAsObject=45]="NamespaceAsObject",e[e.ClassAsObject=46]="ClassAsObject",e[e.NonDeclarationInNamespace=47]="NonDeclarationInNamespace",e[e.GeneratorFunction=48]="GeneratorFunction",e[e.FunctionContainsThis=49]="FunctionContainsThis",e[e.PropertyAccessByIndex=50]="PropertyAccessByIndex",e[e.JsxElement=51]="JsxElement",e[e.EnumMemberNonConstInit=52]="EnumMemberNonConstInit",e[e.ImplementsClass=53]="ImplementsClass",e[e.NoUndefinedPropAccess=54]="NoUndefinedPropAccess",e[e.MultipleStaticBlocks=55]="MultipleStaticBlocks",e[e.ThisType=56]="ThisType",e[e.IntefaceExtendDifProps=57]="IntefaceExtendDifProps",e[e.StructuralIdentity=58]="StructuralIdentity",e[e.DefaultImport=59]="DefaultImport",e[e.ExportAssignment=60]="ExportAssignment",e[e.ImportAssignment=61]="ImportAssignment",e[e.GenericCallNoTypeArgs=62]="GenericCallNoTypeArgs",e[e.ParameterProperties=63]="ParameterProperties",e[e.InstanceofUnsupported=64]="InstanceofUnsupported",e[e.ShorthandAmbientModuleDecl=65]="ShorthandAmbientModuleDecl",e[e.WildcardsInModuleName=66]="WildcardsInModuleName",e[e.UMDModuleDefinition=67]="UMDModuleDefinition",e[e.NewTarget=68]="NewTarget",e[e.DefiniteAssignment=69]="DefiniteAssignment",e[e.Prototype=70]="Prototype",e[e.GlobalThis=71]="GlobalThis",e[e.UtilityType=72]="UtilityType",e[e.PropertyDeclOnFunction=73]="PropertyDeclOnFunction",e[e.FunctionApplyBindCall=74]="FunctionApplyBindCall",e[e.ConstAssertion=75]="ConstAssertion",e[e.ImportAssertion=76]="ImportAssertion",e[e.SpreadOperator=77]="SpreadOperator",e[e.LimitedStdLibApi=78]="LimitedStdLibApi",e[e.ErrorSuppression=79]="ErrorSuppression",e[e.StrictDiagnostic=80]="StrictDiagnostic",e[e.UnsupportedDecorators=81]="UnsupportedDecorators",e[e.ImportAfterStatement=82]="ImportAfterStatement",e[e.EsObjectType=83]="EsObjectType",e[e.LAST_ID=84]="LAST_ID"}(t=e.FaultID||(e.FaultID={}));var r=function(){this.cookBookRef="-1"};e.FaultAttributs=r,e.faultsAttrs=[],e.faultsAttrs[t.LiteralAsPropertyName]={migratable:!0,cookBookRef:"1"},e.faultsAttrs[t.ComputedPropertyName]={cookBookRef:"1"},e.faultsAttrs[t.SymbolType]={cookBookRef:"2"},e.faultsAttrs[t.PrivateIdentifier]={migratable:!0,cookBookRef:"3"},e.faultsAttrs[t.DeclWithDuplicateName]={migratable:!0,cookBookRef:"4"},e.faultsAttrs[t.VarDeclaration]={migratable:!0,cookBookRef:"5"},e.faultsAttrs[t.AnyType]={cookBookRef:"8"},e.faultsAttrs[t.UnknownType]={cookBookRef:"8"},e.faultsAttrs[t.CallSignature]={cookBookRef:"14"},e.faultsAttrs[t.ConstructorType]={cookBookRef:"15"},e.faultsAttrs[t.MultipleStaticBlocks]={cookBookRef:"16"},e.faultsAttrs[t.IndexMember]={cookBookRef:"17"},e.faultsAttrs[t.IntersectionType]={cookBookRef:"19"},e.faultsAttrs[t.ThisType]={cookBookRef:"21"},e.faultsAttrs[t.ConditionalType]={cookBookRef:"22"},e.faultsAttrs[t.ParameterProperties]={migratable:!0,cookBookRef:"25"},e.faultsAttrs[t.ConstructorIface]={cookBookRef:"27"},e.faultsAttrs[t.IndexedAccessType]={cookBookRef:"28"},e.faultsAttrs[t.PropertyAccessByIndex]={migratable:!0,cookBookRef:"29"},e.faultsAttrs[t.StructuralIdentity]={cookBookRef:"30"},e.faultsAttrs[t.GenericCallNoTypeArgs]={cookBookRef:"34"},e.faultsAttrs[t.RegexLiteral]={cookBookRef:"37"},e.faultsAttrs[t.ObjectLiteralNoContextType]={cookBookRef:"38"},e.faultsAttrs[t.ObjectTypeLiteral]={cookBookRef:"40"},e.faultsAttrs[t.ArrayLiteralNoContextType]={cookBookRef:"43"},e.faultsAttrs[t.FunctionExpression]={migratable:!0,cookBookRef:"46"},e.faultsAttrs[t.LambdaWithTypeParameters]={migratable:!0,cookBookRef:"49"},e.faultsAttrs[t.ClassExpression]={migratable:!0,cookBookRef:"50"},e.faultsAttrs[t.ImplementsClass]={cookBookRef:"51"},e.faultsAttrs[t.NoUndefinedPropAccess]={cookBookRef:"52"},e.faultsAttrs[t.TypeAssertion]={migratable:!0,cookBookRef:"53"},e.faultsAttrs[t.JsxElement]={cookBookRef:"54"},e.faultsAttrs[t.UnaryArithmNotNumber]={cookBookRef:"55"},e.faultsAttrs[t.DeleteOperator]={cookBookRef:"59"},e.faultsAttrs[t.TypeQuery]={cookBookRef:"60"},e.faultsAttrs[t.InstanceofUnsupported]={cookBookRef:"65"},e.faultsAttrs[t.InOperator]={cookBookRef:"66"},e.faultsAttrs[t.DestructuringAssignment]={migratable:!0,cookBookRef:"69"},e.faultsAttrs[t.CommaOperator]={cookBookRef:"71"},e.faultsAttrs[t.DestructuringDeclaration]={migratable:!0,cookBookRef:"74"},e.faultsAttrs[t.CatchWithUnsupportedType]={migratable:!0,cookBookRef:"79"},e.faultsAttrs[t.ForInStatement]={cookBookRef:"80"},e.faultsAttrs[t.MappedType]={cookBookRef:"83"},e.faultsAttrs[t.WithStatement]={cookBookRef:"84"},e.faultsAttrs[t.ThrowStatement]={migratable:!0,cookBookRef:"87"},e.faultsAttrs[t.LimitedReturnTypeInference]={migratable:!0,cookBookRef:"90"},e.faultsAttrs[t.DestructuringParameter]={cookBookRef:"91"},e.faultsAttrs[t.LocalFunction]={migratable:!0,cookBookRef:"92"},e.faultsAttrs[t.FunctionContainsThis]={cookBookRef:"93"},e.faultsAttrs[t.GeneratorFunction]={cookBookRef:"94"},e.faultsAttrs[t.YieldExpression]={cookBookRef:"94"},e.faultsAttrs[t.IsOperator]={cookBookRef:"96"},e.faultsAttrs[t.SpreadOperator]={cookBookRef:"99"},e.faultsAttrs[t.IntefaceExtendDifProps]={cookBookRef:"102"},e.faultsAttrs[t.InterfaceMerging]={cookBookRef:"103"},e.faultsAttrs[t.InterfaceExtendsClass]={cookBookRef:"104"},e.faultsAttrs[t.ConstructorFuncs]={cookBookRef:"106"},e.faultsAttrs[t.EnumMemberNonConstInit]={cookBookRef:"111"},e.faultsAttrs[t.EnumMerging]={cookBookRef:"113"},e.faultsAttrs[t.NamespaceAsObject]={cookBookRef:"114"},e.faultsAttrs[t.NonDeclarationInNamespace]={cookBookRef:"116"},e.faultsAttrs[t.ImportFromPath]={cookBookRef:"119"},e.faultsAttrs[t.DefaultImport]={migratable:!0,cookBookRef:"120"},e.faultsAttrs[t.ImportAssignment]={cookBookRef:"121"},e.faultsAttrs[t.ExportAssignment]={cookBookRef:"126"},e.faultsAttrs[t.ShorthandAmbientModuleDecl]={cookBookRef:"128"},e.faultsAttrs[t.WildcardsInModuleName]={cookBookRef:"129"},e.faultsAttrs[t.UMDModuleDefinition]={cookBookRef:"130"},e.faultsAttrs[t.NewTarget]={cookBookRef:"132"},e.faultsAttrs[t.DefiniteAssignment]={warning:!0,cookBookRef:"134"},e.faultsAttrs[t.Prototype]={cookBookRef:"136"},e.faultsAttrs[t.GlobalThis]={cookBookRef:"137"},e.faultsAttrs[t.UtilityType]={cookBookRef:"138"},e.faultsAttrs[t.PropertyDeclOnFunction]={cookBookRef:"139"},e.faultsAttrs[t.FunctionApplyBindCall]={cookBookRef:"140"},e.faultsAttrs[t.ConstAssertion]={cookBookRef:"142"},e.faultsAttrs[t.ImportAssertion]={cookBookRef:"143"},e.faultsAttrs[t.LimitedStdLibApi]={cookBookRef:"144"},e.faultsAttrs[t.StrictDiagnostic]={cookBookRef:"145"},e.faultsAttrs[t.ErrorSuppression]={cookBookRef:"146"},e.faultsAttrs[t.UnsupportedDecorators]={warning:!0,cookBookRef:"148"},e.faultsAttrs[t.ClassAsObject]={cookBookRef:"149"},e.faultsAttrs[t.ImportAfterStatement]={cookBookRef:"150"},e.faultsAttrs[t.EsObjectType]={warning:!0,cookBookRef:"151"}}(e.Problems||(e.Problems={}))}(d||(d={})),function(e){!function(t){var r;t.PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE=2564,t.NON_INITIALIZABLE_PROPERTY_DECORATORS=["Link","Consume","ObjectLink","Prop","BuilderParam"],t.NON_INITIALIZABLE_PROPERTY_ClASS_DECORATORS=["CustomDialog"],t.LIMITED_STANDARD_UTILITY_TYPES=["Awaited","Pick","Omit","Exclude","Extract","NonNullable","Parameters","ConstructorParameters","ReturnType","InstanceType","ThisParameterType","OmitThisParameter","ThisType","Uppercase","Lowercase","Capitalize","Uncapitalize"],t.ALLOWED_STD_SYMBOL_API=["iterator"],function(e){e[e.WARNING=1]="WARNING",e[e.ERROR=2]="ERROR"}(t.ProblemSeverity||(t.ProblemSeverity={})),t.ARKTS_IGNORE_DIRS=["node_modules","oh_modules","build",".preview"],t.ARKTS_IGNORE_FILES=["hvigorfile.ts"],t.setTypeChecker=function(e){r=e};var n=!1;function i(e){return e.kind>=62&&e.kind<=77}function a(r){return!(void 0===r||!e.isTypeReferenceNode(r))&&t.TYPED_ARRAYS.includes(s(r.typeName))}function o(t,r){return!(void 0===t||!e.isTypeReferenceNode(t))&&s(t.typeName)===r}function s(t){return e.isIdentifier(t)?t.escapedText.toString():s(t.left)+s(t.right)}function c(e){if(e.isUnion()){for(var t=0,r=e.types;t<r.length;t++){if(0==(296&r[t].flags))return!1}return!0}return 0!=(296&e.getFlags())}function l(e){return 0!=(4&e.getFlags())}function u(e,t){var r=0!=(67108864&e.flags);if(!p(e)||!e.isUnion()||r)return!1;for(var n=0,i=e.types;n<i.length;n++){if(0==(i[n].flags&t))return!1}return!0}function d(e,t){var r=0!=(67108864&e.flags);return!(!f(e)||r)&&0!=(e.flags&t)}function p(e){return e.symbol&&0!=(384&e.symbol.flags)}function f(e){return e.symbol&&0!=(8&e.symbol.flags)}function m(e,t){if(!e)return!1;for(var r=0,n=e;r<n.length;r++){if(n[r].kind===t)return!0}return!1}function g(e){return 0!=(2097152&e.getFlags())?r.getAliasedSymbol(e):e}t.setTestMode=function(e){n=e},t.getStartPos=function(e){return 2===e.kind||3===e.kind?e.pos:e.getStart()},t.getEndPos=function(e){return 2===e.kind||3===e.kind?e.end:e.getEnd()},t.isAssignmentOperator=i,t.isTypedArray=a,t.isType=o,t.entityNameToString=s,t.isNumberType=c,t.isBooleanType=function(e){return 0!=(528&e.getFlags())},t.isStringLikeType=function(e){if(e.isUnion()){for(var t=0,r=e.types;t<r.length;t++){if(0==(402653316&r[t].flags))return!1}return!0}return 0!=(402653316&e.getFlags())},t.isStringType=l,t.isPrimitiveEnumType=u,t.isPrimitiveEnumMemberType=d,t.unwrapParenthesizedType=function(t){for(;e.isParenthesizedTypeNode(t);)t=t.type;return t},t.findParentIf=function(e){for(var t=e.parent;t;){if(236===t.kind)return t;t=t.parent}return null},t.isDestructuringAssignmentLHS=function(t){for(var r=t.parent,n=t;r;){if(e.isBinaryExpression(r)&&i(r.operatorToken)&&r.left===n)return!0;if((e.isForStatement(r)||e.isForInStatement(r)||e.isForOfStatement(r))&&r.initializer&&r.initializer===n)return!0;n=r,r=r.parent}return!1},t.isEnumType=p,t.isEnumMemberType=f,t.isObjectLiteralType=function(e){return e.symbol&&0!=(4096&e.symbol.flags)},t.isNumberLikeType=function(e){return 0!=(296&e.getFlags())},t.hasModifier=m,t.unwrapParenthesized=function(t){for(var r=t;e.isParenthesizedExpression(r);)r=r.expression;return r},t.followIfAliased=g;var _,h=new e.Map;function y(e){var t=h,n=t.get(e);if(void 0!==n)return null!==n?n:void 0;var i=r.getSymbolAtLocation(e);if(void 0!==i)return i=g(i),t.set(e,i),i;t.set(e,null)}function v(e){return M(e)||258===e||254===e||256===e||257===e}function b(e){var t=e.getFlags();return 0!=(16&t)||0!=(512&t)||0!=(8&t)||0!=(256&t)}function k(e){var t,r,n;return E(e)&&1===(null===(t=e.typeArguments)||void 0===t?void 0:t.length)&&1===(null===(r=e.target.typeParameters)||void 0===r?void 0:r.length)&&"Array"===(null===(n=e.getSymbol())||void 0===n?void 0:n.getName())}function x(t,n){E(t)&&t.target!==t&&(t=t.target);var i=r.typeToTypeNode(t,void 0,0);if(n===_.Array&&(k(t)||a(i)))return!0;if(n!==_.Array&&o(i,n.toString()))return!0;if(!t.symbol||!t.symbol.declarations)return!1;for(var s=0,c=t.symbol.declarations;s<c.length;s++){var l=c[s];if((e.isClassDeclaration(l)||e.isInterfaceDeclaration(l))&&l.heritageClauses)for(var u=0,d=l.heritageClauses;u<d.length;u++){if(F(d[u].types,n))return!0}}return!1}function E(e){return 0!=(524288&e.getFlags())&&0!=(4&e.objectFlags)}function S(e){return 0!=(1&e.getFlags())}function D(e){return!!e.flags&&(0!=(1&e.flags)||0!=(2&e.flags)||0!=(2097152&e.flags))}function w(e){if(e&&e.declarations&&e.declarations.length>0)return e.declarations[0]}function T(t){if(e.isParenthesizedExpression(t)||e.isAsExpression(t)&&145===t.type.kind)return T(t.expression);switch(t.kind){case 216:return function(e){return t=e.operator,(39===t||40===t||54===t)&&T(e.operand);var t}(t);case 208:case 218:return function(e){return t=e.operatorToken,(41===t.kind||43===t.kind||44===t.kind||40===t.kind||39===t.kind||47===t.kind||48===t.kind||56===t.kind||49===t.kind||50===t.kind||52===t.kind||51===t.kind||55===t.kind)&&T(e.left)&&T(e.right);var t}(t);case 219:return function(e){return T(e.whenTrue)&&T(e.whenFalse)}(t);case 78:return function(t){var n=r.getSymbolAtLocation(t),i=w(n);return!!i&&(function(t){return e.isVariableDeclaration(t)&&e.isVariableDeclarationList(t.parent)}(i)&&C(i.parent)||294===i.kind)}(t);case 8:case 10:return!0;case 202:var n=t;if(A(n))return!0;var i=r.getSymbolAtLocation(n.expression);if(!i)return!1;var a=i.getDeclarations();return!(!a||1!==a.length)&&e.isEnumDeclaration(a[0]);default:return!1}}function C(t){return!!(2&e.getCombinedNodeFlags(t))}function A(e){var t=8===e.kind?Number(e.getText()):r.getConstantValue(e);return void 0!==t&&"number"==typeof t}function N(e){var t=r.getConstantValue(e);return void 0!==t&&"string"==typeof t}function P(t,r){if(E(t)&&t.target!==t&&(t=t.target),E(r)&&r.target!==r&&(r=r.target),t===r||O(r))return!0;if(!t.symbol||!t.symbol.declarations)return!1;for(var n=0,i=t.symbol.declarations;n<i.length;n++){var a=i[n];if((e.isClassDeclaration(a)||e.isInterfaceDeclaration(a))&&a.heritageClauses)for(var o=0,s=a.heritageClauses;o<s.length;o++){var c=s[o],l=!t.isClass()||94!==c.token;if(I(c.types,r,l))return!0}}return!1}function I(e,t,n){for(var i=0,a=e;i<a.length;i++){var o=a[i],s=r.getTypeAtLocation(o);if(E(s)&&s.target!==s&&(s=s.target),s&&s.isClass()!==n&&P(s,t))return!0}return!1}function F(e,t){for(var n=0,i=e;n<i.length;n++){var a=i[n],o=r.getTypeAtLocation(a);if(E(o)&&o.target!==o&&(o=o.target),o&&x(o,t))return!0}return!1}function O(e){if(!e)return!1;if(e.symbol&&e.isClassOrInterface()&&"Object"===e.symbol.name)return!0;var t=r.typeToTypeNode(e,void 0,void 0);return void 0!==t&&146===t.kind}function R(t){return!!t&&(void 0!==(t=H(t))&&t.isClassOrInterface()&&function(e){if(void 0===e.symbol.members)return!0;var t=!1,r=!1;return e.symbol.members.forEach((function(e){0!=(16384&e.flags)&&(t=!0,void 0!==e.declarations&&e.declarations.length>0&&0===e.declarations[0].parameters.length)&&(r=!0)})),!t||r}(t)&&!function(t){if(void 0===t.symbol.members)return!1;var r=!1;return t.symbol.members.forEach((function(t){void 0!==t.declarations&&t.declarations.length>0&&e.isPropertyDeclaration(t.declarations[0])&&m(t.declarations[0].modifiers,143)&&(r=!0)})),r}(t)&&!function(e){return!!(e.isClass()&&e.symbol.declarations&&e.symbol.declarations.length>0&&m(e.symbol.declarations[0].modifiers,126))}(t))}function M(e){return 255===e}function L(e){return M(e.kind)}function j(e){var t=r.getPropertiesOfType(e);if(null==t?void 0:t.length)for(var n=0,i=t;n<i.length;n++){if(8192&i[n].getFlags())return!0}return!1}function B(e,t){var n=r.getPropertiesOfType(e);if(n.length)for(var i=0,a=n;i<a.length;i++){var o=a[i];if(o.name===t)return o}}function z(e){return e.isUnion()?e.getNonNullableType():e}function U(t,n){if(void 0===t)return!1;var i=z(t);if(S(i)||ee(i))return!0;if(function(t,n){if(ne(t)||b(t)){var i=e.isCallExpression(n)?de(n):r.getSymbolAtLocation(n);if(i&&te(i))return!0}return!1}(i,n))return!0;if(Y(i)&&e.isObjectLiteralExpression(n))return function(t){for(var r=0,n=t.properties;r<n.length;r++){var i=n[r];if(!i.name||!e.isStringLiteral(i.name)&&!e.isNumericLiteral(i.name))return!1}return!0}(n);if(X(i)||Q(i)||Z(i)){if(!i.aliasTypeArguments||1!==i.aliasTypeArguments.length)return!1;i=i.aliasTypeArguments[0]}var a=z(r.getTypeAtLocation(n));if(a.isUnion()){for(var o=!0,s=0,c=a.types;s<c.length;s++){var l=c[s];o&&(o=q(t,l))}return o}if(t.isUnion())for(var u=0,d=t.types;u<d.length;u++){if(U(l=d[u],n))return!0}return e.isObjectLiteralExpression(n)?function(t,r){if(e.isObjectLiteralExpression(r))return R(t)&&!j(t)&&K(t,r);return!1}(i,n):q(t,a)}function q(e,t){if(t.isUnion()){for(var n=!0,i=0,a=t.types;i<a.length;i++){var o=a[i];n&&(n=q(e,o))}return n}if(e.isUnion())for(var s=0,p=e.types;s<p.length;s++){if(q(o=p[s],t))return!0}var f=!!(32768&t.flags),m=!!(65536&t.flags);return!(!f&&!m)||(!(!S(e)&&!ee(e))||(!!function(e,t){var r=u(t,256)||d(t,256),n=u(t,128)||d(t,128);return c(e)&&r||l(e)&&n}(e=r.getBaseTypeOfLiteralType(e),t=r.getBaseTypeOfLiteralType(t))||(!!function(e,t){return(V(e)||J(e))&&(V(t)||J(t))}(e,t)||(e===t||P(t,H(e))))))}function J(e){var t=e.getCallSignatures();return t&&t.length>0}function V(e){var t=e.getSymbol();return t&&"Function"===t.getName()&&G(t)}function H(e){return 524288&e.getFlags()&&4&e.objectFlags?e.target:e}function K(t,n){for(var i,a=0,o=n.properties;a<o.length;a++){var s=o[a];if(e.isPropertyAssignment(s)){var c=s,l=B(t,c.name.getText());if(!l||!(null===(i=l.declarations)||void 0===i?void 0:i.length))return!1;if(!U(r.getTypeOfSymbolAtLocation(l,l.declarations[0]),c.initializer))return!1}}return!0}function W(e){var t=r.getFullyQualifiedName(e),n=t.lastIndexOf(".");return-1===n?void 0:t.substring(0,n)}function G(e){var t=W(e);return!t||"global"===t}function $(e,t){if(e)return e.find((function(e){return e.kind===t}))}function Y(e){if(e.aliasSymbol){var t=e.target;if(t){var r=t.aliasSymbol;return!!r&&"Record"===r.getName()&&G(r)}}return!1}function X(e){var t=e.aliasSymbol;return!!t&&"Partial"===t.getName()&&G(t)}function Q(e){var t=e.aliasSymbol;return!!t&&"Required"===t.getName()&&G(t)}function Z(e){var t=e.aliasSymbol;return!!t&&"Readonly"===t.getName()&&G(t)}function ee(e){var t,r=e.getNonNullableType();if(r.isUnion()){for(var n=0,i=r.types;n<i.length;n++){if(!ee(i[n]))return!1}return!0}return te(null!==(t=r.aliasSymbol)&&void 0!==t?t:r.getSymbol())}function te(r){if(r&&r.declarations&&r.declarations.length>0){var i=r.declarations[0].getSourceFile();if(!i)return!1;var a=i.fileName,o=e.getAnyExtensionFromPath(a),s=t.ARKTS_IGNORE_DIRS.some((function(t){return re(e.normalizePath(a),t)}))||t.ARKTS_IGNORE_FILES.some((function(t){return e.getBaseFileName(a)===t})),c=".ets"===o,l=".ts"===o&&!i.isDeclarationFile;return!((c||l&&n)&&!s)&&!t.STANDARD_LIBRARIES.includes(e.getBaseFileName(i.fileName).toLowerCase())}return!1}function re(t,r){for(var n=0,i=e.getPathComponents(t);n<i.length;n++){if(i[n]===r)return!0}return!1}function ne(e){var t;return ie(null!==(t=e.aliasSymbol)&&void 0!==t?t:e.getSymbol())}function ie(r){if(r&&r.declarations&&r.declarations.length>0){var n=r.declarations[0].getSourceFile();return n&&t.STANDARD_LIBRARIES.includes(e.getBaseFileName(n.fileName).toLowerCase())}return!1}function ae(e){return!!(67108864&e.flags)}function oe(e){if(void 0===e)return!1;if((e=e.getNonNullableType()).isUnion()){for(var t=0,r=e.types;t<r.length;t++){var n=oe(r[t]);if(n||void 0===n)return n}return!1}return!!ee(e)||!!(ne(e)||ae(e)||S(e))&&void 0}function se(r){return e.isTypeReferenceNode(r)&&e.isIdentifier(r.typeName)&&r.typeName.text===t.ES_OBJECT}function ce(e){var t=y(e);if(void 0!==t)return le(t)}function le(t){var r=w(t);if(r&&e.isVariableDeclaration(r))return r.type}function ue(e){if(e.isUnionOrIntersection()){for(var t=0,r=e.types;t<r.length;t++){if(ue(r[t]))return!0}return!1}return 0!=(524288&e.flags)&&0!=(16&e.objectFlags)}function de(e){var t=r.getResolvedSignature(e),n=null==t?void 0:t.getDeclaration();if(n&&n.name)return r.getSymbolAtLocation(n.name)}t.trueSymbolAtLocation=y,t.isTypeDeclSyntaxKind=v,t.symbolHasDuplicateName=function(e,t){var r=null==e?void 0:e.getDeclarations();if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n].kind,o=v(a)&&259===t||v(t)&&259===a;if(78!==a&&a!==t&&!o)return!0}return!1},t.isReferenceType=function(e){var t=e.getFlags();return 0!=(58982400&t)||0!=(524288&t)||0!=(16&t)||0!=(32&t)||0!=(67108864&t)||0!=(8&t)||0!=(4&t)},t.isPrimitiveType=b,t.isTypeSymbol=function(e){return!(!e||!e.flags||0==(32&e.flags)&&0==(64&e.flags))},t.isGenericArrayType=k,t.isDerivedFrom=x,t.isTypeReference=E,t.isNullType=function(t){return e.isLiteralTypeNode(t)&&104===t.literal.kind},t.isThisOrSuperExpr=function(e){return 108===e.kind||106===e.kind},t.isPrototypeSymbol=function(e){return!!e&&!!e.flags&&0!=(4194304&e.flags)},t.isFunctionSymbol=function(e){return!!e&&!!e.flags&&0!=(16&e.flags)},t.isInterfaceType=function(e){return!!e&&!!e.symbol&&!!e.symbol.flags&&0!=(64&e.symbol.flags)},t.isAnyType=S,t.isUnknownType=function(e){return 0!=(2&e.getFlags())},t.isUnsupportedType=D,t.isUnsupportedUnionType=function(e){return!!e.isUnion()&&!(t=e,r=t.types,2===r.length&&(0!=(65536&r[0].flags)||0!=(65536&r[1].flags))||function(e){var t=e.types;return 1048592===e.flags&&2===t.length&&512===t[0].flags&&512===t[1].flags}(e));var t,r},t.isFunctionOrMethod=function(e){return!!e&&(0!=(16&e.flags)||0!=(8192&e.flags))},t.isMethodAssignment=function(e){return!!e&&0!=(8192&e.flags)&&0!=(67108864&e.flags)},t.getDeclaration=w,t.isValidEnumMemberInit=function(e){return!!A(e.parent)||(!!N(e.parent)||T(e))},t.isCompileTimeExpression=T,t.isConst=C,t.isNumberConstantValue=A,t.isIntegerConstantValue=function(e){var t=8===e.kind?Number(e.getText()):r.getConstantValue(e);return void 0!==t&&"number"==typeof t&&t.toFixed(0)===t.toString()},t.isStringConstantValue=N,t.relatedByInheritanceOrIdentical=P,t.needToDeduceStructuralIdentity=function(e,t,r){if(void 0===r&&(r=!1),ee(t))return!1;var n=t.isClassOrInterface()&&e.isClassOrInterface()&&!P(e,t);return r&&n&&(n=!P(t,e)),n},t.hasPredecessor=function(e,t){for(var r=e.parent;void 0!==r;){if(t(r))return!0;r=r.parent}return!1},t.processParentTypes=I,t.processParentTypesCheck=F,t.isObjectType=O,t.logTscDiagnostic=function(t,r){t.forEach((function(t){var n=e.flattenDiagnosticMessageText(t.messageText,"\n");if(t.file&&t.start){var i=e.getLineAndCharacterOfPosition(t.file,t.start),a=i.line,o=i.character;n=t.file.fileName+" ("+(a+1)+", "+(o+1)+"): "+n}r(n)}))},t.encodeProblemInfo=function(e){return e.problem+"%"+e.start+"%"+e.end},t.decodeAutofixInfo=function(e){var t=e.split("%");return{problemID:t[0],start:Number.parseInt(t[1]),end:Number.parseInt(t[2])}},t.isCallToFunctionWithOmittedReturnType=function(t){if(e.isCallExpression(t)){var n=r.getResolvedSignature(t);if(n){var i=n.getDeclaration();if(!i||!i.type)return!0}}return!1},t.validateObjectLiteralType=R,t.isStructDeclarationKind=M,t.isStructDeclaration=L,t.isStructObjectInitializer=function(t){if(e.isCallLikeExpression(t.parent)){var n=r.getResolvedSignature(t.parent),i=null==n?void 0:n.declaration;return!!i&&e.isConstructorDeclaration(i)&&L(i.parent)}return!1},t.hasMethods=j,t.isExpressionAssignableToType=U,t.isLiteralType=function(e){return e.isLiteral()||0!=(512&e.flags)},t.validateFields=K,t.isSupportedType=function t(r){if(e.isParenthesizedTypeNode(r))return t(r.type);if(e.isArrayTypeNode(r))return t(r.elementType);if(e.isTypeReferenceNode(r)&&r.typeArguments){for(var n=0,i=r.typeArguments;n<i.length;n++){if(!t(i[n]))return!1}return!0}if(e.isUnionTypeNode(r)){for(var a=0,o=r.types;a<o.length;a++){if(!t(o[a]))return!1}return!0}if(e.isTupleTypeNode(r)){for(var s=0,c=r.elements;s<c.length;s++){var l=c[s];if(e.isTypeNode(l)&&!t(l))return!1;if(e.isNamedTupleMember(l)&&!t(l.type))return!1}return!0}return!e.isTypeLiteralNode(r)&&!e.isTypeQueryNode(r)&&!e.isIntersectionTypeNode(r)&&(129!==(u=r.kind)&&153!==u&&149!==u&&190!==u&&185!==u&&191!==u&&186!==u);var u},t.isStruct=function(e){if(!e.declarations)return!1;for(var t=0,r=e.declarations;t<r.length;t++){if(L(r[t]))return!0}return!1},t.getDecorators=function(t){if(t.decorators)return e.filter(t.decorators,e.isDecorator)},function(e){e[e.Array=0]="Array",e.String="String",e.Set="Set",e.Map="Map",e.Error="Error"}(_=t.CheckType||(t.CheckType={})),t.ES_OBJECT="ESObject",t.LIMITED_STD_GLOBAL_FUNC=["eval"],t.LIMITED_STD_OBJECT_API=["__proto__","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__","assign","create","defineProperties","defineProperty","freeze","fromEntries","getOwnPropertyDescriptor","getOwnPropertyDescriptors","getOwnPropertySymbols","getPrototypeOf","hasOwnProperty","is","isExtensible","isFrozen","isPrototypeOf","isSealed","preventExtensions","propertyIsEnumerable","seal","setPrototypeOf"],t.LIMITED_STD_REFLECT_API=["apply","construct","defineProperty","deleteProperty","getOwnPropertyDescriptor","getPrototypeOf","isExtensible","preventExtensions","setPrototypeOf"],t.LIMITED_STD_PROXYHANDLER_API=["apply","construct","defineProperty","deleteProperty","get","getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"],t.ARKUI_DECORATORS=["AnimatableExtend","Builder","BuilderParam","Component","Concurrent","Consume","CustomDialog","Entry","Extend","Link","LocalStorageLink","LocalStorageProp","ObjectLink","Observed","Preview","Prop","Provide","Reusable","State","StorageLink","StorageProp","Styles","Watch"],t.FUNCTION_HAS_NO_RETURN_ERROR_CODE=2366,t.NON_RETURN_FUNCTION_DECORATORS=["AnimatableExtend","Builder","Extend","Styles"],t.STANDARD_LIBRARIES=["lib.dom.d.ts","lib.dom.iterable.d.ts","lib.webworker.d.ts","lib.webworker.importscripd.ts","lib.webworker.iterable.d.ts","lib.scripthost.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","lib.es5.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.sharedmemory.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.es2023.array.d.ts"],t.TYPED_ARRAYS=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"],t.getParentSymbolName=W,t.isGlobalSymbol=G,t.isSymbolAPI=function(e){var t=W(e),r=t||e.escapedName;return"Symbol"===r||"SymbolConstructor"===r},t.isStdSymbol=function(t){return"Symbol"===e.TypeScriptLinter.tsTypeChecker.getFullyQualifiedName(t)&&G(t)},t.isSymbolIterator=function(e){var t=e.name,r=W(e);return("Symbol"===r||"SymbolConstructor"===r)&&"iterator"===t},t.isDefaultImport=function(e){var t;return"default"===(null===(t=null==e?void 0:e.propertyName)||void 0===t?void 0:t.text)},t.hasAccessModifier=function(e){var t=e.modifiers;return!!t&&(m(t,123)||m(t,122)||m(t,121))},t.getModifier=$,t.getAccessModifier=function(e){var t,r;return null!==(r=null!==(t=$(e,123))&&void 0!==t?t:$(e,122))&&void 0!==r?r:$(e,121)},t.isStdRecordType=Y,t.isStdPartialType=X,t.isStdRequiredType=Q,t.isStdReadonlyType=Z,t.isLibraryType=ee,t.hasLibraryType=function(e){return ee(r.getTypeAtLocation(e))},t.isLibrarySymbol=te,t.pathContainsDirectory=re,t.getScriptKind=function(t){var r=t.fileName;switch(e.getAnyExtensionFromPath(r).toLowerCase()){case".js":return 1;case".jsx":return 2;case".ts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}},t.isStdLibraryType=ne,t.isStdLibrarySymbol=ie,t.isIntrinsicObjectType=ae,t.isDynamicType=oe,t.isDynamicLiteralInitializer=function(t){if(!e.isObjectLiteralExpression(t)&&!e.isArrayLiteralExpression(t))return!1;for(var n=t;e.isObjectLiteralExpression(n)||e.isArrayLiteralExpression(n);){var i=r.getContextualType(n);if(void 0!==i){var a=oe(i);if(void 0!==a)return a}n=n.parent,e.isPropertyAssignment(n)&&(n=n.parent)}if(e.isCallExpression(n)){var o=n;if(S(l=r.getTypeAtLocation(o.expression)))return!0;var s=l.symbol;if(te(s))return!0;if(e.isPropertyAccessExpression(o.expression)&&(s=r.getSymbolAtLocation(o.expression.expression))&&2097152&s.getFlags()&&te(s=r.getAliasedSymbol(s)))return!0}if(e.isBinaryExpression(n)){var c=n;if(e.isPropertyAccessExpression(c.left)){var l,u=c.left;return te((l=r.getTypeAtLocation(u.expression)).symbol)}}return!1},t.isEsObjectType=se,t.isInsideBlock=function(t){for(var r=t.parent;r;){if(e.isBlock(r))return!0;r=r.parent}return!1},t.isEsObjectPossiblyAllowed=function(t){return e.isVariableDeclaration(t.parent)},t.isValueAssignableToESObject=function(t){if(e.isArrayLiteralExpression(t)||e.isObjectLiteralExpression(t))return!1;var r=e.TypeScriptLinter.tsTypeChecker.getTypeAtLocation(t);return D(r)||ue(r)},t.getVariableDeclarationTypeNode=ce,t.getSymbolDeclarationTypeNode=le,t.hasEsObjectType=function(e){var t=ce(e);return void 0!==t&&se(t)},t.symbolHasEsObjectType=function(e){var t=le(e);return void 0!==t&&se(t)},t.isEsObjectSymbol=function(r){var n=w(r);return!!n&&e.isTypeAliasDeclaration(n)&&n.name.escapedText===t.ES_OBJECT&&129===n.type.kind},t.isAnonymousType=ue,t.getSymbolOfCallExpression=de,t.typeIsRecursive=function e(t,n){if(void 0===n&&(n=void 0),void 0===n)n=t;else{if(n===t)return!0;if(n.aliasSymbol)return!1}if(n.isUnion())for(var i=0,a=n.types;i<a.length;i++){if(e(t,a[i]))return!0}if(524288&n.flags&&4&n.objectFlags){var o=r.getTypeArguments(n);if(o)for(var s=0,c=o;s<c.length;s++){if(e(t,c[s]))return!0}}return!1}}(e.Utils||(e.Utils={}))}(d||(d={})),function(e){!function(t){var r=e.Problems.FaultID;t.AUTOFIX_ALL={problemID:"",start:-1,end:-1};var n=[r.LiteralAsPropertyName,r.PropertyAccessByIndex];t.autofixInfo=[],t.shouldAutofix=function(e,i){return!n.includes(i)&&(0!==t.autofixInfo.length&&(1===t.autofixInfo.length&&t.autofixInfo[0]===t.AUTOFIX_ALL||-1!==t.autofixInfo.findIndex((function(t){return t.start===e.getStart()&&t.end===e.getEnd()&&t.problemID===r[i]}))))};var i=e.createPrinter({omitTrailingSemicolon:!1,removeComments:!1});function a(e){return"__"+e.getText()}function o(e){var t=e.getText();return t.substring(1,t.length-1)}t.fixLiteralAsPropertyName=function(t){if(e.isPropertyDeclaration(t)||e.isPropertyAssignment(t)){var r=t.name,n=8===(i=r).kind?a(i):10===i.kind?o(i):"";if(n)return[{replacementText:n,start:r.getStart(),end:r.getEnd()}]}var i},t.fixPropertyAccessByIndex=function(t){if(e.isElementAccessExpression(t)){var r=t,n=8===(i=r.argumentExpression).kind?a(i):10===i.kind?o(i):"";if(n)return[{replacementText:r.expression.getText()+"."+n,start:r.getStart(),end:r.getEnd()}]}var i},t.fixFunctionExpression=function(t,r,n){void 0===r&&(r=t.parameters),void 0===n&&(n=t.type);var a=e.factory.createArrowFunction(void 0,void 0,r,n,e.factory.createToken(38),t.body),o=i.printNode(4,a,t.getSourceFile());return{start:t.getStart(),end:t.getEnd(),replacementText:o}},t.fixReturnType=function(t,r){var n=": "+i.printNode(4,r,t.getSourceFile()),a=function(t){if(t.body)for(var r=e.isArrowFunction(t)?t.equalsGreaterThanToken.getStart():t.body.getStart(),n=t.getChildren(),i=n.length-1;i>=0;i--){var a=n[i];if(21===a.kind&&a.getEnd()<r)return a.getEnd()}return-1}(t);return{start:a,end:a,replacementText:n}},t.fixCtorParameterProperties=function(t,r){for(var n=[],a=t.getStart(),o=[{start:a,end:a,replacementText:""}],s=0;s<t.parameters.length;s++){var c=t.parameters[s];if(e.isIdentifier(c.name)&&e.Utils.hasAccessModifier(c)){var l=e.factory.createIdentifier(c.name.text),u=e.factory.createPropertyDeclaration(void 0,c.modifiers,l,void 0,r[s],void 0),d=i.printNode(4,u,t.getSourceFile())+"\n";o[0].replacementText+=d;var p=e.factory.createParameterDeclaration(void 0,void 0,void 0,c.name,c.questionToken,c.type,c.initializer),f=i.printNode(4,p,t.getSourceFile());o.push({start:c.getStart(),end:c.getEnd(),replacementText:f}),n.push(e.factory.createExpressionStatement(e.factory.createAssignment(e.factory.createPropertyAccessExpression(e.factory.createThis(),l),l)))}}if(t.body){var m=e.factory.createBlock(n.concat(t.body.statements),!0),g=i.printNode(4,m,t.getSourceFile());o.push({start:t.body.getStart(),end:t.body.getEnd(),replacementText:g})}return o}}(e.Autofixer||(e.Autofixer={}))}(d||(d={})),function(e){var t=e.Problems.FaultID,r=function(){function r(){}return r.initStatic=function(){r.nodeDesc[t.AnyType]='"any" type',r.nodeDesc[t.SymbolType]='"symbol" type',r.nodeDesc[t.ObjectLiteralNoContextType]="Object literals with no context Class or Interface type",r.nodeDesc[t.ArrayLiteralNoContextType]="Array literals with no context Array type",r.nodeDesc[t.ComputedPropertyName]="Computed properties",r.nodeDesc[t.LiteralAsPropertyName]="String or integer literal as property name",r.nodeDesc[t.TypeQuery]='"typeof" operations',r.nodeDesc[t.RegexLiteral]="regex literals",r.nodeDesc[t.IsOperator]='"is" operations',r.nodeDesc[t.DestructuringParameter]="destructuring parameters",r.nodeDesc[t.YieldExpression]='"yield" operations',r.nodeDesc[t.InterfaceMerging]="merging interfaces",r.nodeDesc[t.EnumMerging]="merging enums",r.nodeDesc[t.InterfaceExtendsClass]="interfaces inherited from classes",r.nodeDesc[t.IndexMember]="index members",r.nodeDesc[t.WithStatement]='"with" statements',r.nodeDesc[t.ThrowStatement]='"throw" statements with expression of wrong type',r.nodeDesc[t.IndexedAccessType]="Indexed access type",r.nodeDesc[t.UnknownType]='"unknown" type',r.nodeDesc[t.ForInStatement]='"for-In" statements',r.nodeDesc[t.InOperator]='"in" operations',r.nodeDesc[t.ImportFromPath]="imports from path",r.nodeDesc[t.FunctionExpression]="function expressions",r.nodeDesc[t.IntersectionType]="intersection types and type literals",r.nodeDesc[t.ObjectTypeLiteral]="Object type literals",r.nodeDesc[t.CommaOperator]="comma operator",r.nodeDesc[t.LimitedReturnTypeInference]="Functions with limited return type inference",r.nodeDesc[t.LambdaWithTypeParameters]="Lambda function with type parameters",r.nodeDesc[t.ClassExpression]="Class expressions",r.nodeDesc[t.DestructuringAssignment]="Destructuring assignments",r.nodeDesc[t.DestructuringDeclaration]="Destructuring variable declarations",r.nodeDesc[t.VarDeclaration]='"var" declarations',r.nodeDesc[t.CatchWithUnsupportedType]='"catch" clause with unsupported exception type',r.nodeDesc[t.DeleteOperator]='"delete" operations',r.nodeDesc[t.DeclWithDuplicateName]="Declarations with duplicate name",r.nodeDesc[t.UnaryArithmNotNumber]="Unary arithmetics with not-numeric values",r.nodeDesc[t.ConstructorType]="Constructor type",r.nodeDesc[t.ConstructorFuncs]="Constructor function type is not supported",r.nodeDesc[t.ConstructorIface]="Construct signatures are not supported in interfaces",r.nodeDesc[t.CallSignature]="Call signatures",r.nodeDesc[t.TypeAssertion]="Type assertion expressions",r.nodeDesc[t.PrivateIdentifier]='Private identifiers (with "#" prefix)',r.nodeDesc[t.LocalFunction]="Local function declarations",r.nodeDesc[t.ConditionalType]="Conditional type",r.nodeDesc[t.MappedType]="Mapped type",r.nodeDesc[t.NamespaceAsObject]="Namespaces used as objects",r.nodeDesc[t.ClassAsObject]="Class used as object",r.nodeDesc[t.NonDeclarationInNamespace]="Non-declaration statements in namespaces",r.nodeDesc[t.GeneratorFunction]="Generator functions",r.nodeDesc[t.FunctionContainsThis]='Functions containing "this"',r.nodeDesc[t.PropertyAccessByIndex]="property access by index",r.nodeDesc[t.JsxElement]="JSX Elements",r.nodeDesc[t.EnumMemberNonConstInit]="Enum members with non-constant initializer",r.nodeDesc[t.ImplementsClass]='Class type mentioned in "implements" clause',r.nodeDesc[t.NoUndefinedPropAccess]="Access to undefined field",r.nodeDesc[t.MultipleStaticBlocks]="Multiple static blocks",r.nodeDesc[t.ThisType]='"this" type',r.nodeDesc[t.IntefaceExtendDifProps]="Extends same properties with different types",r.nodeDesc[t.StructuralIdentity]="Use of type structural identity",r.nodeDesc[t.DefaultImport]="Default import declarations",r.nodeDesc[t.ExportAssignment]="Export assignments (export = ..)",r.nodeDesc[t.ImportAssignment]="Import assignments (import = ..)",r.nodeDesc[t.GenericCallNoTypeArgs]="Generic calls without type arguments",r.nodeDesc[t.ParameterProperties]="Parameter properties in constructor",r.nodeDesc[t.InstanceofUnsupported]='Left-hand side of "instanceof" is wrong',r.nodeDesc[t.ShorthandAmbientModuleDecl]="Shorthand ambient module declaration",r.nodeDesc[t.WildcardsInModuleName]="Wildcards in module name",r.nodeDesc[t.UMDModuleDefinition]="UMD module definition",r.nodeDesc[t.NewTarget]='"new.target" meta-property',r.nodeDesc[t.DefiniteAssignment]="Definite assignment assertion",r.nodeDesc[t.Prototype]="Prototype assignment",r.nodeDesc[t.GlobalThis]="Use of globalThis",r.nodeDesc[t.UtilityType]="Standard Utility types",r.nodeDesc[t.PropertyDeclOnFunction]="Property declaration on function",r.nodeDesc[t.FunctionApplyBindCall]="Invoking methods of function objects",r.nodeDesc[t.ConstAssertion]='"as const" assertion',r.nodeDesc[t.ImportAssertion]="Import assertion",r.nodeDesc[t.SpreadOperator]="Spread operation",r.nodeDesc[t.LimitedStdLibApi]="Limited standard library API",r.nodeDesc[t.ErrorSuppression]="Error suppression annotation",r.nodeDesc[t.StrictDiagnostic]="Strict diagnostic",r.nodeDesc[t.UnsupportedDecorators]="Unsupported decorators",r.nodeDesc[t.ImportAfterStatement]="Import declaration after other declaration or statement",r.nodeDesc[t.EsObjectType]='Restricted "ESObject" type'},r.nodeDesc=[],r.tsSyntaxKindNames=[],r.terminalTokens=new e.Set([18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,60,57,58,59,61,62,63,64,65,66,67,68,69,70,71,72,73,77,1,2,3,4,5,6,7]),r.incrementOnlyTokens=new e.Map([[129,t.AnyType],[149,t.SymbolType],[188,t.ThisType],[177,t.TypeQuery],[212,t.DeleteOperator],[13,t.RegexLiteral],[173,t.IsOperator],[221,t.YieldExpression],[172,t.IndexMember],[245,t.WithStatement],[190,t.IndexedAccessType],[153,t.UnknownType],[101,t.InOperator],[170,t.CallSignature],[184,t.IntersectionType],[178,t.ObjectTypeLiteral],[176,t.ConstructorFuncs],[79,t.PrivateIdentifier],[185,t.ConditionalType],[191,t.MappedType],[276,t.JsxElement],[277,t.JsxElement],[263,t.ImportAssignment],[262,t.UMDModuleDefinition]]),r}();e.LinterConfig=r}(d||(d={})),function(e){var t=e.Problems.FaultID,r=e.Problems.faultsAttrs,n=e.perfLogger,i=e.LibraryTypeCallDiagnosticCheckerNamespace.ARGUMENT_OF_TYPE_0_IS_NOT_ASSIGNABLE_TO_PARAMETER_OF_TYPE_1_ERROR_CODE,a=e.LibraryTypeCallDiagnosticCheckerNamespace.TYPE_0_IS_NOT_ASSIGNABLE_TO_TYPE_1_ERROR_CODE,o=e.LibraryTypeCallDiagnosticCheckerNamespace.NO_OVERLOAD_MATCHES_THIS_CALL_ERROR_CODE,s=e.LibraryTypeCallDiagnosticCheckerNamespace.LibraryTypeCallDiagnosticChecker,c=function(){function c(t,r,n){this.sourceFile=t,this.tscStrictDiagnostics=n,this.handlersMap=new e.Map([[201,this.handleObjectLiteralExpression],[200,this.handleArrayLiteralExpression],[161,this.handleParameter],[258,this.handleEnumDeclaration],[256,this.handleInterfaceDeclaration],[248,this.handleThrowStatement],[265,this.handleImportClause],[239,this.handleForStatement],[240,this.handleForInStatement],[241,this.handleForOfStatement],[264,this.handleImportDeclaration],[202,this.handlePropertyAccessExpression],[164,this.handlePropertyAssignmentOrDeclaration],[291,this.handlePropertyAssignmentOrDeclaration],[209,this.handleFunctionExpression],[210,this.handleArrowFunction],[223,this.handleClassExpression],[290,this.handleCatchClause],[253,this.handleFunctionDeclaration],[216,this.handlePrefixUnaryExpression],[218,this.handleBinaryExpression],[252,this.handleVariableDeclarationList],[251,this.handleVariableDeclaration],[254,this.handleClassDeclaration],[259,this.handleModuleDeclaration],[257,this.handleTypeAliasDeclaration],[268,this.handleImportSpecifier],[266,this.handleNamespaceImport],[207,this.handleTypeAssertionExpression],[166,this.handleMethodDeclaration],[78,this.handleIdentifier],[203,this.handleElementAccessExpression],[294,this.handleEnumMember],[174,this.handleTypeReference],[269,this.handleExportAssignment],[204,this.handleCallExpression],[228,this.handleMetaProperty],[205,this.handleNewExpression],[226,this.handleAsExpression],[222,this.handleSpreadOp],[293,this.handleSpreadOp],[168,this.handleGetAccessor],[169,this.handleSetAccessor],[171,this.handleConstructSignature],[225,this.handleExpressionWithTypeArguments],[159,this.handleComputedPropertyName]]),this.validatedTypesSet=new e.Set,c.tsTypeChecker=r.getTypeChecker(),this.currentErrorLine=0,this.currentWarningLine=0,this.staticBlocks=new e.Set,this.libraryTypeCallDiagnosticChecker=new s(c.filteredDiagnosticMessages)}return c.initGlobals=function(){c.filteredDiagnosticMessages=[]},c.initStatic=function(){c.strictMode=!0,c.logTscErrors=!1,c.warningsAsErrors=!1,c.lintEtsOnly=!0,c.totalVisitedNodes=0,c.nodeCounters=[],c.lineCounters=[],c.totalErrorLines=0,c.totalWarningLines=0,c.errorLineNumbersString="",c.warningLineNumbersString="",e.Autofixer.autofixInfo.length=0;for(var r=0;r<t.LAST_ID;r++)c.nodeCounters[r]=0,c.lineCounters[r]=0;c.problemsInfos=[]},c.prototype.incrementCounters=function(i,a,o,s){if(void 0===o&&(o=!1),c.strictMode||!r[a].migratable){var l=e.Utils.getStartPos(i),u=e.Utils.getEndPos(i);c.nodeCounters[a]++;var d=this.sourceFile.getLineAndCharacterOfPosition(l),p=d.line,f=d.character;++p,++f;var m=e.LinterConfig.nodeDesc[a],g="unknown",_=r[a]?Number(r[a].cookBookRef):0,h=e.cookBookTag[_],y=e.Utils.ProblemSeverity.ERROR;r[a]&&r[a].warning&&(y=e.Utils.ProblemSeverity.WARNING);var v={line:p,column:f,start:l,end:u,type:g,severity:y,problem:t[a],suggest:_>0?e.cookBookMsg[_]:"",rule:_>0&&""!==h?h:m||g,ruleTag:_,autofixable:o,autofix:s};c.problemsInfos.push(v),c.reportDiagnostics||n.logEvent("Warning: "+this.sourceFile.fileName+" ("+p+", "+f+"): "+(m||g)),c.lineCounters[a]++,r[a].warning?p!==this.currentWarningLine&&(this.currentWarningLine=p,++c.totalWarningLines,c.warningLineNumbersString+=p+", "):p!==this.currentErrorLine&&(this.currentErrorLine=p,++c.totalErrorLines,c.errorLineNumbersString+=p+", ")}},c.prototype.visitTSNode=function(t){var r=this;!function t(n){if(null===n||null===n.kind)return;if(c.totalVisitedNodes++,e.isStructDeclaration(n))return void r.handleStructDeclaration(n);if(r.handleComments(n),e.LinterConfig.terminalTokens.has(n.kind))return;var i=e.LinterConfig.incrementOnlyTokens.get(n.kind);if(void 0!==i)r.incrementCounters(n,i);else{var a=r.handlersMap.get(n.kind);void 0!==a&&a.call(r,n)}e.forEachChild(n,t)}(t)},c.prototype.countInterfaceExtendsDifferentPropertyTypes=function(e,r,n,i){if(i){var a=i.getText(),o=r.get(n);o?o!==a&&this.incrementCounters(e,t.IntefaceExtendDifProps):r.set(n,a)}},c.prototype.countDeclarationsWithDuplicateName=function(r,n,i){var a=c.tsTypeChecker.getSymbolAtLocation(r);a&&e.Utils.symbolHasDuplicateName(a,null!=i?i:n.kind)&&this.incrementCounters(n,t.DeclWithDuplicateName)},c.prototype.countClassMembersWithDuplicateName=function(r){for(var n=0,i=r.members;n<i.length;n++){var a=i[n];if(a.name&&(e.isIdentifier(a.name)||e.isPrivateIdentifier(a.name)))for(var o=0,s=r.members;o<s.length;o++){var c=s[o];if(a!==c&&(c.name&&(e.isIdentifier(c.name)||e.isPrivateIdentifier(c.name)))){if(e.isIdentifier(a.name)&&e.isPrivateIdentifier(c.name)&&a.name.text===c.name.text.substring(1)){this.incrementCounters(a,t.DeclWithDuplicateName);break}if(e.isPrivateIdentifier(a.name)&&e.isIdentifier(c.name)&&a.name.text.substring(1)===c.name.text){this.incrementCounters(a,t.DeclWithDuplicateName);break}}}}},c.prototype.functionContainsThis=function(t){var r=!1;return function t(n){r||(108!==n.kind?e.isClassDeclaration(n)||e.isClassExpression(n)||e.isModuleDeclaration(n)||e.isFunctionDeclaration(n)||e.isFunctionExpression(n)||n.forEachChild(t):r=!0)}(t),r},c.prototype.isPrototypePropertyAccess=function(t,r,n,i){if(!e.isIdentifier(t.name)||"prototype"!==t.name.text)return!1;for(var a=t;a&&e.isPropertyAccessExpression(a);){var o=e.Utils.trueSymbolAtLocation(a.expression);if(e.Utils.isLibrarySymbol(o))return!1;a=a.expression}if(e.isIdentifier(a)&&"prototype"!==a.text){var s=c.tsTypeChecker.getTypeAtLocation(a);if(e.Utils.isAnyType(s))return!1}if(e.Utils.isPrototypeSymbol(r))return!0;if(e.Utils.isTypeSymbol(n)||e.Utils.isFunctionSymbol(n))return!0;var l=c.tsTypeChecker.typeToTypeNode(i,void 0,0);return l&&e.isFunctionTypeNode(l)||e.Utils.isAnyType(i)},c.prototype.interfaceInheritanceLint=function(r,n){for(var i=0,a=n;i<a.length;i++){var o=a[i];if(94===o.token)for(var s=new e.Map,l=0,u=o.types;l<u.length;l++){var d=u[l],p=c.tsTypeChecker.getTypeAtLocation(d.expression);p.isClass()?this.incrementCounters(r,t.InterfaceExtendsClass):p.isClassOrInterface()&&this.lintForInterfaceExtendsDifferentPorpertyTypes(r,p,s)}}},c.prototype.lintForInterfaceExtendsDifferentPorpertyTypes=function(e,t,r){for(var n=0,i=t.getProperties();n<i.length;n++){var a=i[n];if(a.declarations){var o=a.declarations[0];(165===o.kind||166===o.kind||164===o.kind||163===o.kind)&&this.countInterfaceExtendsDifferentPropertyTypes(e,r,a.name,o.type)}}},c.prototype.handleObjectLiteralExpression=function(r){var n=r;if(!e.Utils.isDestructuringAssignmentLHS(n)){var i=c.tsTypeChecker.getContextualType(n);e.Utils.isStructObjectInitializer(n)||e.Utils.isDynamicLiteralInitializer(n)||e.Utils.isExpressionAssignableToType(i,n)||this.incrementCounters(r,t.ObjectLiteralNoContextType)}},c.prototype.handleArrayLiteralExpression=function(r){if(!e.Utils.isDestructuringAssignmentLHS(r)){for(var n=r,i=!1,a=0,o=n.elements;a<o.length;a++){var s=o[a];if(201===s.kind){var l=c.tsTypeChecker.getContextualType(s);if(!e.Utils.isDynamicLiteralInitializer(n)&&!e.Utils.isExpressionAssignableToType(l,s)){i=!0;break}}}i&&this.incrementCounters(r,t.ArrayLiteralNoContextType)}},c.prototype.handleParameter=function(r){var n=r;(e.isArrayBindingPattern(n.name)||e.isObjectBindingPattern(n.name))&&this.incrementCounters(r,t.DestructuringParameter);var i=n.modifiers;i&&(e.Utils.hasModifier(i,123)||e.Utils.hasModifier(i,122)||e.Utils.hasModifier(i,143)||e.Utils.hasModifier(i,121))&&this.incrementCounters(r,t.ParameterProperties),this.handleDecorators(n.decorators),this.handleDeclarationInferredType(n)},c.prototype.handleEnumDeclaration=function(r){var n=r;this.countDeclarationsWithDuplicateName(n.name,n);var i=e.Utils.trueSymbolAtLocation(n.name);if(i){var a=i.getDeclarations();if(a){for(var o=0,s=0,c=a;s<c.length;s++){258===c[s].kind&&o++}o>1&&this.incrementCounters(r,t.EnumMerging)}}},c.prototype.handleInterfaceDeclaration=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.name),a=i?i.getDeclarations():null;if(a){for(var o=0,s=0,c=a;s<c.length;s++){256===c[s].kind&&o++}o>1&&this.incrementCounters(r,t.InterfaceMerging)}n.heritageClauses&&this.interfaceInheritanceLint(r,n.heritageClauses),this.countDeclarationsWithDuplicateName(n.name,n)},c.prototype.handleThrowStatement=function(r){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n.expression);i.isClassOrInterface()&&e.Utils.isDerivedFrom(i,e.Utils.CheckType.Error)||this.incrementCounters(r,t.ThrowStatement)},c.prototype.handleForStatement=function(r){var n=r.initializer;n&&(e.isArrayLiteralExpression(n)||e.isObjectLiteralExpression(n))&&this.incrementCounters(n,t.DestructuringAssignment)},c.prototype.handleForInStatement=function(r){var n=r.initializer;(e.isArrayLiteralExpression(n)||e.isObjectLiteralExpression(n))&&this.incrementCounters(n,t.DestructuringAssignment),this.incrementCounters(r,t.ForInStatement)},c.prototype.handleForOfStatement=function(r){var n=r.initializer;(e.isArrayLiteralExpression(n)||e.isObjectLiteralExpression(n))&&this.incrementCounters(n,t.DestructuringAssignment)},c.prototype.handleImportDeclaration=function(r){for(var n=r,i=0,a=n.parent.statements;i<a.length;i++){var o=a[i];if(o===n)break;if(!e.isImportDeclaration(o)){this.incrementCounters(r,t.ImportAfterStatement);break}}10===n.moduleSpecifier.kind&&(n.importClause||this.incrementCounters(r,t.ImportFromPath))},c.prototype.handlePropertyAccessExpression=function(r){if(!e.isCallExpression(r.parent)||r!=r.parent.expression){var n=r,i=e.Utils.trueSymbolAtLocation(n),a=e.Utils.trueSymbolAtLocation(n.expression),o=c.tsTypeChecker.getTypeAtLocation(n.expression);this.isPrototypePropertyAccess(n,i,a,o)&&this.incrementCounters(n.name,t.Prototype),i&&e.Utils.isSymbolAPI(i)&&!e.Utils.ALLOWED_STD_SYMBOL_API.includes(i.getName())&&this.incrementCounters(n,t.SymbolType),a&&e.Utils.symbolHasEsObjectType(a)&&this.incrementCounters(n,t.EsObjectType)}},c.prototype.handlePropertyAssignmentOrDeclaration=function(r){var n,i=r.name;if(i&&(8===i.kind||10===i.kind)){var a=!1,o=!1;if(e.isPropertyAssignment(r)){var s=c.tsTypeChecker.getContextualType(r.parent);s&&(a=e.Utils.isStdRecordType(s),o=e.Utils.isLibraryType(s)||e.Utils.isDynamicLiteralInitializer(r.parent))}if(!a&&!o){var l=e.Autofixer.fixLiteralAsPropertyName(r),u=void 0!==l;e.Autofixer.shouldAutofix(r,t.LiteralAsPropertyName)||(l=void 0),this.incrementCounters(r,t.LiteralAsPropertyName,u,l)}}if(e.isPropertyDeclaration(r)){var d=r.decorators;this.handleDecorators(d),this.filterOutDecoratorsDiagnostics(d,e.Utils.NON_INITIALIZABLE_PROPERTY_DECORATORS,{begin:i.getStart(),end:i.getStart()},e.Utils.PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE);var p=r.parent.decorators,f=null===(n=r.type)||void 0===n?void 0:n.getText();this.filterOutDecoratorsDiagnostics(p,e.Utils.NON_INITIALIZABLE_PROPERTY_ClASS_DECORATORS,{begin:i.getStart(),end:i.getStart()},e.Utils.PROPERTY_HAS_NO_INITIALIZER_ERROR_CODE,f),this.handleDeclarationInferredType(r),this.handleDefiniteAssignmentAssertion(r)}},c.prototype.filterOutDecoratorsDiagnostics=function(t,r,n,i,a){if(this.tscStrictDiagnostics&&this.sourceFile&&(null==t?void 0:t.some((function(t){var n="";return e.isIdentifier(t.expression)?n=t.expression.text:e.isCallExpression(t.expression)&&e.isIdentifier(t.expression.expression)&&(n=t.expression.expression.text),r.includes(e.Utils.NON_INITIALIZABLE_PROPERTY_ClASS_DECORATORS[0])?r.includes(n)&&"CustomDialogController"===a:r.includes(n)})))){var o=e.normalizePath(this.sourceFile.fileName),s=this.tscStrictDiagnostics.get(o);if(s){var c=s.filter((function(e){return e.code!==i||(void 0===e.start||(e.start<n.begin||e.start>n.end))}));this.tscStrictDiagnostics.set(o,c)}}},c.prototype.checkInRange=function(e,t){for(var r=0;r<e.length;r++)if(t>=e[r].begin&&t<e[r].end)return!1;return!0},c.prototype.filterStrictDiagnostics=function(t,r){if(!this.tscStrictDiagnostics||!this.sourceFile)return!1;var n=e.normalizePath(this.sourceFile.fileName),i=this.tscStrictDiagnostics.get(n);if(!i)return!1;var a=function(e){var n=t[e.code];return!n||(!(void 0!==e.start&&!n(e.start))||r.checkDiagnosticMessage(e.messageText))};return!i.every(a)&&(this.tscStrictDiagnostics.set(n,i.filter(a)),!0)},c.prototype.handleFunctionExpression=function(r){var n,i=r,a=void 0!==i.asteriskToken,o=this.functionContainsThis(i.body),s=e.Utils.hasPredecessor(i,e.isClassLike)||e.Utils.hasPredecessor(i,e.isInterfaceDeclaration),c=void 0!==i.typeParameters&&i.typeParameters.length>0,l=this.handleMissingReturnType(i),u=l[0],d=l[1],p=!(c||a||o||u);p&&e.Autofixer.shouldAutofix(r,t.FunctionExpression)&&(n=[e.Autofixer.fixFunctionExpression(i,i.parameters,d)]),this.incrementCounters(r,t.FunctionExpression,p,n),c&&this.incrementCounters(i,t.LambdaWithTypeParameters),a&&this.incrementCounters(i,t.GeneratorFunction),o&&!s&&this.incrementCounters(i,t.FunctionContainsThis),u&&this.incrementCounters(i,t.LimitedReturnTypeInference)},c.prototype.handleArrowFunction=function(r){var n=r,i=this.functionContainsThis(n.body),a=e.Utils.hasPredecessor(n,e.isClassLike)||e.Utils.hasPredecessor(n,e.isInterfaceDeclaration);i&&!a&&this.incrementCounters(n,t.FunctionContainsThis);var o=c.tsTypeChecker.getContextualType(n);o&&e.Utils.isLibraryType(o)||(n.type||this.handleMissingReturnType(n),n.typeParameters&&n.typeParameters.length>0&&this.incrementCounters(r,t.LambdaWithTypeParameters))},c.prototype.handleClassExpression=function(e){this.incrementCounters(e,t.ClassExpression)},c.prototype.handleFunctionDeclaration=function(r){var n=r;n.type||this.handleMissingReturnType(n),n.name&&this.countDeclarationsWithDuplicateName(n.name,n),n.body&&this.functionContainsThis(n.body)&&this.incrementCounters(r,t.FunctionContainsThis),e.isSourceFile(n.parent)||e.isModuleBlock(n.parent)||this.incrementCounters(n,t.LocalFunction),n.asteriskToken&&this.incrementCounters(r,t.GeneratorFunction)},c.prototype.handleMissingReturnType=function(r){if(!r.body)return[!1,void 0];var n,i,a=!1,o=e.isFunctionExpression(r),s=this.hasLimitedTypeInferenceFromReturnExpr(r.body),l=c.tsTypeChecker.getSignatureFromDeclaration(r);if(l){var u=c.tsTypeChecker.getReturnTypeOfSignature(l);!u||e.Utils.isUnsupportedType(u)?s=!0:s&&(a=!!(i=c.tsTypeChecker.typeToTypeNode(u,r,0)),!o&&i&&e.Autofixer.shouldAutofix(r,t.LimitedReturnTypeInference)&&(n=[e.Autofixer.fixReturnType(r,i)]))}return s&&!o&&this.incrementCounters(r,t.LimitedReturnTypeInference,a,n),[s&&!i,i]},c.prototype.hasLimitedTypeInferenceFromReturnExpr=function(t){var r=!1;if(e.isBlock(t))!function t(n){r||(e.isReturnStatement(n)&&n.expression&&e.Utils.isCallToFunctionWithOmittedReturnType(e.Utils.unwrapParenthesized(n.expression))?r=!0:e.isFunctionDeclaration(n)||e.isFunctionExpression(n)||e.isMethodDeclaration(n)||e.isAccessor(n)||e.isArrowFunction(n)||n.forEachChild(t))}(t);else{var n=e.Utils.unwrapParenthesized(t);r=e.Utils.isCallToFunctionWithOmittedReturnType(n)}return r},c.prototype.handlePrefixUnaryExpression=function(r){var n=r,i=n.operator;39!==i&&40!==i&&54!==i||(2344&c.tsTypeChecker.getTypeAtLocation(n.operand).getFlags()&&(54!==i||8!==n.operand.kind||e.Utils.isIntegerConstantValue(n.operand))||this.incrementCounters(r,t.UnaryArithmNotNumber))},c.prototype.handleBinaryExpression=function(r){var n=r,i=n.left,a=n.right;if(e.Utils.isAssignmentOperator(n.operatorToken)&&((e.isObjectLiteralExpression(i)||e.isArrayLiteralExpression(i))&&this.incrementCounters(r,t.DestructuringAssignment),e.isPropertyAccessExpression(i))){var o=e.Utils.trueSymbolAtLocation(i),s=e.Utils.trueSymbolAtLocation(i.expression);o&&8192&o.flags&&this.incrementCounters(i,t.NoUndefinedPropAccess),e.Utils.isMethodAssignment(o)&&s&&0!=(16&s.flags)&&this.incrementCounters(i,t.PropertyDeclOnFunction)}var l=c.tsTypeChecker.getTypeAtLocation(i),u=c.tsTypeChecker.getTypeAtLocation(a);if(39===n.operatorToken.kind)if(e.Utils.isEnumMemberType(l)&&e.Utils.isEnumMemberType(u)){if(296&l.flags&&296&u.getFlags()||402653316&l.flags&&402653316&u.getFlags())return}else{if(e.Utils.isNumberType(l)&&e.Utils.isNumberType(u))return;if(e.Utils.isStringLikeType(l)||e.Utils.isStringLikeType(u))return}else if(50===n.operatorToken.kind||51===n.operatorToken.kind||52===n.operatorToken.kind||47===n.operatorToken.kind||48===n.operatorToken.kind||49===n.operatorToken.kind){if(!e.Utils.isNumberType(l)||!e.Utils.isNumberType(u)||8===i.kind&&!e.Utils.isIntegerConstantValue(i)||8===a.kind&&!e.Utils.isIntegerConstantValue(a))return}else if(27===n.operatorToken.kind){for(var d=n,p=d.parent;p&&218===p.kind;)p=(d=p).parent;if(p&&239===p.kind){var f=p;if(d===f.initializer||d===f.incrementor)return}this.incrementCounters(r,t.CommaOperator)}else if(102===n.operatorToken.kind){var m=e.Utils.unwrapParenthesized(n.left),g=e.Utils.trueSymbolAtLocation(m);if(108===i.kind)return;(e.Utils.isPrimitiveType(l)||e.isTypeNode(m)||e.Utils.isTypeSymbol(g))&&this.incrementCounters(r,t.InstanceofUnsupported)}else if(62===n.operatorToken.kind){e.Utils.needToDeduceStructuralIdentity(u,l)&&this.incrementCounters(n,t.StructuralIdentity);var _=e.Utils.getVariableDeclarationTypeNode(i);this.handleEsObjectAssignment(n,_,a)}},c.prototype.handleVariableDeclarationList=function(r){3&e.getCombinedNodeFlags(r)||this.incrementCounters(r,t.VarDeclaration)},c.prototype.handleVariableDeclaration=function(r){var n=this,i=r;(e.isArrayBindingPattern(i.name)||e.isObjectBindingPattern(i.name))&&this.incrementCounters(r,t.DestructuringDeclaration);var a=function(t){if(e.isIdentifier(t))n.countDeclarationsWithDuplicateName(t,t,t.parent.kind);else for(var r=0,i=t.elements;r<i.length;r++){var o=i[r];e.isOmittedExpression(o)||a(o.name)}};if(a(i.name),i.type&&i.initializer){var o=i.initializer,s=c.tsTypeChecker.getTypeAtLocation(i.type),l=c.tsTypeChecker.getTypeAtLocation(o);e.Utils.needToDeduceStructuralIdentity(l,s)&&this.incrementCounters(i,t.StructuralIdentity)}this.handleEsObjectDelaration(i),this.handleDeclarationInferredType(i),this.handleDefiniteAssignmentAssertion(i)},c.prototype.handleEsObjectDelaration=function(r){var n=!!r.type&&e.Utils.isEsObjectType(r.type),i=r.initializer&&e.Utils.getVariableDeclarationTypeNode(r.initializer),a=!!i&&e.Utils.isEsObjectType(i),o=e.Utils.isInsideBlock(r);!n&&!a||o?r.initializer&&this.handleEsObjectAssignment(r,r.type,r.initializer):this.incrementCounters(r,t.EsObjectType)},c.prototype.handleEsObjectAssignment=function(r,n,i){var a=!!n,o=!!n&&e.Utils.isEsObjectType(n),s=e.Utils.getVariableDeclarationTypeNode(i),c=!!s&&e.Utils.isEsObjectType(s);(a&&!o&&c||o&&!e.Utils.isValueAssignableToESObject(i))&&this.incrementCounters(r,t.EsObjectType)},c.prototype.handleCatchClause=function(e){var r=e;r.variableDeclaration&&r.variableDeclaration.type&&this.incrementCounters(e,t.CatchWithUnsupportedType)},c.prototype.handleClassDeclaration=function(e){var r=this,n=e;this.staticBlocks.clear(),n.name&&this.countDeclarationsWithDuplicateName(n.name,n),this.countClassMembersWithDuplicateName(n);var i=function(e){for(var n=0,i=e.types;n<i.length;n++){var a=i[n];c.tsTypeChecker.getTypeAtLocation(a.expression).isClass()&&117===e.token&&r.incrementCounters(a,t.ImplementsClass)}};if(n.heritageClauses)for(var a=0,o=n.heritageClauses;a<o.length;a++){var s=o[a];s&&i(s)}this.handleDecorators(n.decorators)},c.prototype.handleModuleDeclaration=function(r){var n=r;this.countDeclarationsWithDuplicateName(n.name,n);var i=n.body,a=n.modifiers;if(i&&e.isModuleBlock(i))for(var o=0,s=i.statements;o<s.length;o++){var c=s[o];switch(c.kind){case 234:case 253:case 254:case 256:case 257:case 258:case 270:case 259:break;default:this.incrementCounters(c,t.NonDeclarationInNamespace)}}16&n.flags||!e.Utils.hasModifier(a,134)||this.incrementCounters(n,t.ShorthandAmbientModuleDecl),e.isStringLiteral(n.name)&&n.name.text.includes("*")&&this.incrementCounters(n,t.WildcardsInModuleName)},c.prototype.handleTypeAliasDeclaration=function(e){var t=e;this.countDeclarationsWithDuplicateName(t.name,t)},c.prototype.handleImportClause=function(r){var n=r;if(n.name&&this.countDeclarationsWithDuplicateName(n.name,n),n.namedBindings&&e.isNamedImports(n.namedBindings)){for(var i=[],a=void 0,o=0,s=n.namedBindings.elements;o<s.length;o++){var c=s[o];e.Utils.isDefaultImport(c)?a=c:i.push(c)}if(a){this.incrementCounters(a,t.DefaultImport,!0,void 0)}}},c.prototype.handleImportSpecifier=function(e){var t=e;this.countDeclarationsWithDuplicateName(t.name,t)},c.prototype.handleNamespaceImport=function(e){var t=e;this.countDeclarationsWithDuplicateName(t.name,t)},c.prototype.handleTypeAssertionExpression=function(e){var r=e;"const"===r.type.getText()?this.incrementCounters(r,t.ConstAssertion):this.incrementCounters(e,t.TypeAssertion)},c.prototype.handleMethodDeclaration=function(r){var n,i,a=r,o=this.functionContainsThis(a),s=!1;if(a.modifiers)for(var c=0,l=a.modifiers;c<l.length;c++){if(124===l[c].kind){s=!0;break}}s&&o&&this.incrementCounters(r,t.FunctionContainsThis),a.type||this.handleMissingReturnType(a),a.asteriskToken&&this.incrementCounters(r,t.GeneratorFunction),this.handleDecorators(a.decorators),this.filterOutDecoratorsDiagnostics(e.Utils.getDecorators(a),e.Utils.NON_RETURN_FUNCTION_DECORATORS,{begin:a.parameters.end,end:null!==(i=null===(n=a.body)||void 0===n?void 0:n.getStart())&&void 0!==i?i:a.parameters.end},e.Utils.FUNCTION_HAS_NO_RETURN_ERROR_CODE)},c.prototype.handleIdentifier=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n);i&&(0!=(1536&i.flags)&&0!=(33554432&i.flags)&&"globalThis"===n.text?this.incrementCounters(r,t.GlobalThis):this.handleRestrictedValues(n,i))},c.prototype.isAllowedClassValueContext=function(t){for(var r=t;e.isPropertyAccessExpression(r.parent)||e.isQualifiedName(r.parent);)r=r.parent;if(e.isPropertyAssignment(r.parent)&&e.isObjectLiteralExpression(r.parent.parent)&&(r=r.parent.parent),e.isArrowFunction(r.parent)&&r.parent.body===r&&(r=r.parent),e.isCallExpression(r.parent)||e.isNewExpression(r.parent)){var n=r.parent.expression,i=e.Utils.isAnyType(c.tsTypeChecker.getTypeAtLocation(n))||e.Utils.hasLibraryType(n);if(n!==r&&i)return!0}return!1},c.prototype.handleRestrictedValues=function(r,n){0!=(512&n.flags)&&n&&e.Utils.symbolHasDuplicateName(n,259)||0!=(928&n.flags)&&!e.Utils.isStruct(n)&&this.identiferUseInValueContext(r,n)&&(0!=(32&n.flags)&&this.isAllowedClassValueContext(r)||(512&n.flags?this.incrementCounters(r,t.NamespaceAsObject):this.incrementCounters(r,t.ClassAsObject)))},c.prototype.identiferUseInValueContext=function(t,r){for(var n=t;e.isPropertyAccessExpression(n.parent)||e.isQualifiedName(n.parent);)n=n.parent;var i=n.parent;return!(e.isTypeNode(i)&&!e.isTypeOfExpression(i)||this.isEnumPropAccess(t,r,i)||e.isExpressionWithTypeArguments(i)||e.isExportAssignment(i)||e.isExportSpecifier(i)||e.isMetaProperty(i)||e.isImportClause(i)||e.isClassLike(i)||e.isInterfaceDeclaration(i)||e.isModuleDeclaration(i)||e.isEnumDeclaration(i)||e.isNamespaceImport(i)||e.isImportSpecifier(i)||e.isImportEqualsDeclaration(i)||e.isQualifiedName(n)&&t!==n.right||e.isPropertyAccessExpression(n)&&t!==n.name||e.isNewExpression(n.parent)&&n===n.parent.expression||e.isBinaryExpression(n.parent)&&102===n.parent.operatorToken.kind)},c.prototype.isEnumPropAccess=function(t,r,n){return e.isElementAccessExpression(n)&&!!(384&r.flags)&&(n.expression==t||e.isPropertyAccessExpression(n.expression)&&n.expression.name==t)},c.prototype.handleElementAccessExpression=function(r){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n.expression),a=c.tsTypeChecker.typeToTypeNode(i,void 0,0),o=e.Utils.isDerivedFrom(i,e.Utils.CheckType.Array),s=i.isClassOrInterface()&&!e.Utils.isGenericArrayType(i)&&!o,l=e.Utils.isThisOrSuperExpr(n.expression)&&!o;if(!e.Utils.isLibraryType(i)&&!e.Utils.isTypedArray(a)&&(s||e.Utils.isObjectLiteralType(i)||l)){var u=e.Autofixer.fixPropertyAccessByIndex(r),d=void 0!==u;e.Autofixer.shouldAutofix(r,t.PropertyAccessByIndex)||(u=void 0),this.incrementCounters(r,t.PropertyAccessByIndex,d,u)}e.Utils.hasEsObjectType(n.expression)&&this.incrementCounters(r,t.EsObjectType)},c.prototype.handleEnumMember=function(r){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n),a=c.tsTypeChecker.getConstantValue(n);n.initializer&&!e.Utils.isValidEnumMemberInit(n.initializer)&&this.incrementCounters(r,t.EnumMemberNonConstInit);var o=n.parent.members[0],s=c.tsTypeChecker.getTypeAtLocation(o),l=c.tsTypeChecker.getConstantValue(o);void 0!==a&&"string"==typeof a&&void 0!==l&&"string"==typeof l||void 0!==a&&"number"==typeof a&&void 0!==l&&"number"==typeof l||s!==i&&this.incrementCounters(r,t.EnumMemberNonConstInit)},c.prototype.handleExportAssignment=function(e){e.isExportEquals&&this.incrementCounters(e,t.ExportAssignment)},c.prototype.handleCallExpression=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.expression),a=c.tsTypeChecker.getTypeAtLocation(n.expression),o=c.tsTypeChecker.getResolvedSignature(n);this.handleImportCall(n),this.handleRequireCall(n),void 0!==i&&(this.handleStdlibAPICall(n,i),this.handleFunctionApplyBindPropCall(n,i),e.Utils.symbolHasEsObjectType(i)&&this.incrementCounters(n,t.EsObjectType)),void 0!==o&&(e.Utils.isLibrarySymbol(i)||this.handleGenericCallWithNoTypeArgs(n,o),this.handleStructIdentAndUndefinedInArgs(n,o)),this.handleLibraryTypeCall(n,a),e.isPropertyAccessExpression(n.expression)&&e.Utils.hasEsObjectType(n.expression.expression)&&this.incrementCounters(r,t.EsObjectType)},c.prototype.handleImportCall=function(r){if(100===r.expression.kind){var n=r.arguments;if(n.length>1&&e.isObjectLiteralExpression(n[1]))for(var i=0,a=n[1].properties;i<a.length;i++){var o=a[i];if((e.isPropertyAssignment(o)||e.isShorthandPropertyAssignment(o))&&"assert"===o.name.getText()){this.incrementCounters(o,t.ImportAssertion);break}}}},c.prototype.handleRequireCall=function(r){if(e.isIdentifier(r.expression)&&"require"===r.expression.text&&e.isVariableDeclaration(r.parent)){var n=c.tsTypeChecker.getTypeAtLocation(r.expression);e.Utils.isInterfaceType(n)&&"NodeRequire"===n.symbol.name&&this.incrementCounters(r.parent,t.ImportAssignment)}},c.prototype.handleGenericCallWithNoTypeArgs=function(r,n){var i,a,o=e.isNewExpression(r)?167:253,s=c.tsTypeChecker.signatureToSignatureDeclaration(n,o,void 0,70221856);if(null==s?void 0:s.typeArguments)for(var l=s.typeArguments,u=null!==(a=null===(i=r.typeArguments)||void 0===i?void 0:i.length)&&void 0!==a?a:0;u<l.length;++u){if(153==l[u].kind){this.incrementCounters(r,t.GenericCallNoTypeArgs);break}}},c.prototype.handleFunctionApplyBindPropCall=function(e,r){var n=c.tsTypeChecker.getFullyQualifiedName(r);c.listApplyBindCallApis.includes(n)&&this.incrementCounters(e,t.FunctionApplyBindCall)},c.prototype.handleStructIdentAndUndefinedInArgs=function(r,n){if(r.arguments)for(var i=0;i<r.arguments.length;++i){var a=r.arguments[i],o=c.tsTypeChecker.getTypeAtLocation(a);if(o){var s=i<n.parameters.length?i:n.parameters.length-1,l=n.parameters[s];if(l){var u=l.valueDeclaration;if(u&&e.isParameter(u)){var d=c.tsTypeChecker.getTypeOfSymbolAtLocation(l,u);if(u.dotDotDotToken&&e.Utils.isGenericArrayType(d)&&d.typeArguments&&(d=d.typeArguments[0]),!d)continue;e.Utils.needToDeduceStructuralIdentity(o,d)&&this.incrementCounters(a,t.StructuralIdentity)}}}}},c.prototype.handleStdlibAPICall=function(r,n){var i=n.getName(),a=e.Utils.getParentSymbolName(n);if(void 0!==a){var o=c.LimitedApis.get(a);void 0===o||null!==o.arr&&!o.arr.includes(i)||this.incrementCounters(r,o.fault)}else{if(e.Utils.LIMITED_STD_GLOBAL_FUNC.includes(i))return void this.incrementCounters(r,t.LimitedStdLibApi);var s=n.escapedName;"Symbol"!==s&&"SymbolConstructor"!==s||this.incrementCounters(r,t.SymbolType)}},c.prototype.findNonFilteringRangesFunctionCalls=function(t){for(var r=[],n=0,i=t.arguments;n<i.length;n++){var a=i[n];if(e.isArrowFunction(a)){var o=a;r.push({begin:o.body.pos,end:o.body.end})}else e.isCallExpression(a)&&r.push({begin:a.arguments.pos,end:a.arguments.end})}return r},c.prototype.handleLibraryTypeCall=function(t,r){var n,s=this,l=e.Utils.isLibraryType(r),u=[];this.libraryTypeCallDiagnosticChecker.configure(l,u);var d=this.findNonFilteringRangesFunctionCalls(t),p=[];if(0!==d.length){var f=d.length;p.push({begin:t.arguments.pos,end:d[0].begin}),p.push({begin:d[f-1].end,end:t.arguments.end});for(var m=0;m<f-1;m++)p.push({begin:d[m].end,end:d[m+1].begin})}else p.push({begin:t.arguments.pos,end:t.arguments.end});this.filterStrictDiagnostics(((n={})[i]=function(e){return s.checkInRange([{begin:t.pos,end:t.end}],e)},n[o]=function(e){return s.checkInRange([{begin:t.pos,end:t.end}],e)},n[a]=function(e){return s.checkInRange(p,e)},n),this.libraryTypeCallDiagnosticChecker);for(var g=0,_=u;g<_.length;g++){var h=_[g];c.filteredDiagnosticMessages.push(h)}},c.prototype.handleNewExpression=function(e){var t=e,r=c.tsTypeChecker.getResolvedSignature(t);void 0!==r&&(this.handleStructIdentAndUndefinedInArgs(t,r),this.handleGenericCallWithNoTypeArgs(t,r))},c.prototype.handleAsExpression=function(r){var n,i,a=r;"const"===a.type.getText()&&this.incrementCounters(r,t.ConstAssertion);var o=c.tsTypeChecker.getTypeAtLocation(a.type).getNonNullableType(),s=c.tsTypeChecker.getTypeAtLocation(a.expression).getNonNullableType();e.Utils.needToDeduceStructuralIdentity(s,o,!0)&&this.incrementCounters(a,t.StructuralIdentity),(e.Utils.isNumberType(s)&&"Number"===(null===(n=o.getSymbol())||void 0===n?void 0:n.getName())||e.Utils.isBooleanType(s)&&"Boolean"===(null===(i=o.getSymbol())||void 0===i?void 0:i.getName()))&&this.incrementCounters(r,t.TypeAssertion)},c.prototype.handleTypeReference=function(r){var n=r,i=e.Utils.isEsObjectType(n),a=e.Utils.isEsObjectPossiblyAllowed(n);if(!i||a){var o=e.Utils.entityNameToString(n.typeName);if(e.Utils.LIMITED_STANDARD_UTILITY_TYPES.includes(o))this.incrementCounters(r,t.UtilityType);else{var s="Partial"===e.Utils.entityNameToString(n.typeName),l=!!n.typeArguments&&1===n.typeArguments.length,u=!!n.typeArguments&&l&&n.typeArguments[0],d=u&&c.tsTypeChecker.getTypeFromTypeNode(u);s&&d&&!d.isClassOrInterface()&&this.incrementCounters(r,t.UtilityType)}}else this.incrementCounters(r,t.EsObjectType)},c.prototype.handleMetaProperty=function(e){"target"===e.name.text&&this.incrementCounters(e,t.NewTarget)},c.prototype.handleStructDeclaration=function(t){var r=this;t.forEachChild((function(t){e.isConstructorDeclaration(t)||r.visitTSNode(t)}))},c.prototype.handleSpreadOp=function(r){if(e.isSpreadElement(r)){var n=r,i=c.tsTypeChecker.getTypeAtLocation(n.expression);if(i){var a=c.tsTypeChecker.typeToTypeNode(i,void 0,0);if(void 0!==a&&(e.isCallLikeExpression(r.parent)||e.isArrayLiteralExpression(r.parent))&&(e.isArrayTypeNode(a)||e.Utils.isTypedArray(a)||e.Utils.isDerivedFrom(i,e.Utils.CheckType.Array)))return}}this.incrementCounters(r,t.SpreadOperator)},c.prototype.handleConstructSignature=function(e){switch(e.parent.kind){case 178:this.incrementCounters(e,t.ConstructorType);break;case 256:this.incrementCounters(e,t.ConstructorIface);break;default:return}},c.prototype.handleComments=function(t){var r=t.getSourceFile().getFullText(),n=t.parent;if(!n||n.getFullStart()!==t.getFullStart()){var i=e.getLeadingCommentRanges(r,t.getFullStart());if(i)for(var a=0,o=i;a<o.length;a++){var s=o[a];this.checkErrorSuppressingAnnotation(s,r)}}if(!n||n.getEnd()!==t.getEnd()){var c=e.getTrailingCommentRanges(r,t.getEnd());if(c)for(var l=0,u=c;l<u.length;l++){s=u[l];this.checkErrorSuppressingAnnotation(s,r)}}},c.prototype.handleExpressionWithTypeArguments=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.expression);i&&e.Utils.isEsObjectSymbol(i)&&this.incrementCounters(n,t.EsObjectType)},c.prototype.handleComputedPropertyName=function(r){var n=r,i=e.Utils.trueSymbolAtLocation(n.expression);i&&e.Utils.isSymbolIterator(i)||this.incrementCounters(r,t.ComputedPropertyName)},c.prototype.checkErrorSuppressingAnnotation=function(e,r){var n=3===e.kind?r.slice(e.pos+2,e.end-2):r.slice(e.pos+2,e.end);if(!n.endsWith("\n")){var i=n.trim();(i.startsWith("@ts-ignore")||i.startsWith("@ts-nocheck")||i.startsWith("@ts-expect-error"))&&this.incrementCounters(e,t.ErrorSuppression)}},c.prototype.handleDecorators=function(r){if(r)for(var n=0,i=r;n<i.length;n++){var a=i[n],o="";e.isIdentifier(a.expression)?o=a.expression.text:e.isCallExpression(a.expression)&&e.isIdentifier(a.expression.expression)&&(o=a.expression.expression.text),e.Utils.ARKUI_DECORATORS.includes(o)||this.incrementCounters(a,t.UnsupportedDecorators)}},c.prototype.handleGetAccessor=function(e){this.handleDecorators(e.decorators)},c.prototype.handleSetAccessor=function(e){this.handleDecorators(e.decorators)},c.prototype.handleDeclarationInferredType=function(t){if(!(t.type||e.isCatchClause(t.parent)||e.isArrayBindingPattern(t.name)||e.isObjectBindingPattern(t.name))){var r=c.tsTypeChecker.getTypeAtLocation(t);r&&this.validateDeclInferredType(r,t)}},c.prototype.handleDefiniteAssignmentAssertion=function(e){void 0!==e.exclamationToken&&this.incrementCounters(e,t.DefiniteAssignment)},c.prototype.checkAnyOrUnknownChildNode=function(e){if(129===e.kind||153===e.kind)return!0;for(var t=0,r=e.getChildren();t<r.length;t++){var n=r[t];if(this.checkAnyOrUnknownChildNode(n))return!0}return!1},c.prototype.handleInferredObjectreference=function(e,t){var r=c.tsTypeChecker.getTypeArguments(e);if(r&&!this.checkAnyOrUnknownChildNode(t))for(var n=0,i=r;n<i.length;n++){var a=i[n];this.validateDeclInferredType(a,t)}},c.prototype.validateDeclInferredType=function(r,n){if(void 0===r.aliasSymbol){var i=524288&r.flags,a=4&r.objectFlags;if(i&&a)this.handleInferredObjectreference(r,n);else if(!this.validatedTypesSet.has(r)){if(r.isUnion()){this.validatedTypesSet.add(r);for(var o=0,s=r.types;o<s.length;o++){var c=s[o];this.validateDeclInferredType(c,n)}}e.Utils.isAnyType(r)?this.incrementCounters(n,t.AnyType):e.Utils.isUnknownType(r)&&this.incrementCounters(n,t.UnknownType)}}},c.prototype.lint=function(){this.visitTSNode(this.sourceFile)},c.reportDiagnostics=!0,c.problemsInfos=[],c.filteredDiagnosticMessages=[],c.listApplyBindCallApis=["Function.apply","Function.call","Function.bind","CallableFunction.apply","CallableFunction.call","CallableFunction.bind"],c.LimitedApis=new e.Map([["global",{arr:e.Utils.LIMITED_STD_GLOBAL_FUNC,fault:t.LimitedStdLibApi}],["Object",{arr:e.Utils.LIMITED_STD_OBJECT_API,fault:t.LimitedStdLibApi}],["ObjectConstructor",{arr:e.Utils.LIMITED_STD_OBJECT_API,fault:t.LimitedStdLibApi}],["Reflect",{arr:e.Utils.LIMITED_STD_REFLECT_API,fault:t.LimitedStdLibApi}],["ProxyHandler",{arr:e.Utils.LIMITED_STD_PROXYHANDLER_API,fault:t.LimitedStdLibApi}],["Symbol",{arr:null,fault:t.SymbolType}],["SymbolConstructor",{arr:null,fault:t.SymbolType}]]),c}();e.TypeScriptLinter=c}(d||(d={})),function(e){var t=function(){function t(t,i){var o=function(t,n){var i=a({},t.getCompilerOptions()),o=function(e){var t=r(),n=!1;return Object.keys(t).forEach((function(t){n=n||!!e[t]})),n}(i),s=r(!o),c=function(t,r,n,i){var a=function(e,t,r,n){var i={rootNames:e,host:r,options:t};n&&(i.options=Object.assign(i.options,n));return i.options.allowJs=!0,i.options.checkJs=!0,i}(t,r,n,i),o=e.createProgram(a);return o}(t.getRootFileNames(),i,n,s);return{strict:o?t:c,nonStrict:o?c:t,wasStrict:o}}(t,i),s=o.strict,c=o.nonStrict,l=o.wasStrict;this.diagnosticsExtractor=new n(s,c),this.wasStrict=l}return t.prototype.getOriginalProgram=function(){return this.wasStrict?this.diagnosticsExtractor.strictProgram:this.diagnosticsExtractor.nonStrictProgram},t.prototype.getStrictProgram=function(){return this.diagnosticsExtractor.strictProgram},t.prototype.getStrictDiagnostics=function(e){return this.diagnosticsExtractor.getStrictDiagnostics(e)},t}();function r(e){return void 0===e&&(e=!0),{strictNullChecks:e,strictFunctionTypes:e,strictPropertyInitialization:e,noImplicitReturns:e}}e.TSCCompiledProgram=t;var n=function(){function t(e,t){this.strictProgram=e,this.nonStrictProgram=t}return t.prototype.getStrictDiagnostics=function(t){var r=i(this.strictProgram,t).filter((function(e){return!(0===e.length&&0===e.start)})),n=i(this.nonStrictProgram,t).reduce((function(e,t){var r=o(t);return r&&e.add(r),e}),new e.Set);return r.filter((function(e){var t=o(e);return t&&!n.has(t)}))},t}();function i(e,t){var r=e.getSourceFile(t);return e.getSemanticDiagnostics(r).concat(e.getSyntacticDiagnostics(r)).filter((function(e){return e.file===r}))}function o(e){if(void 0!==e.start&&void 0!==e.length)return e.code+"%"+e.start+"%"+e.length}}(d||(d={})),function(e){function t(t,r){var n,i,a,o,s,c,l=r.severity===e.Utils.ProblemSeverity.ERROR?e.DiagnosticCategory.Error:e.DiagnosticCategory.Warning;return n=l,i=-1,a=t,o=r.start,s=r.end-r.start+1,c=r.rule,{category:n,code:i,file:a,start:o,length:s,messageText:c}}e.translateDiag=t,e.runArkTSLinter=function(r,n,i){var a;e.TypeScriptLinter.errorLineNumbersString="",e.TypeScriptLinter.warningLineNumbersString="";var o=[];e.LinterConfig.initStatic();var s=new e.TSCCompiledProgram(r,n),c=s.getStrictProgram(),l=[];i?l.push(i):l=c.getSourceFiles();var u=function(t,r){var n=new e.Map;return r.forEach((function(r){var i=t.getStrictDiagnostics(r.fileName);0!==i.length&&n.set(e.normalizePath(r.fileName),i)})),n}(s,l);e.TypeScriptLinter.initGlobals();for(var d=function(r){if(e.TypeScriptLinter.initStatic(),e.TypeScriptLinter.lintEtsOnly&&8!==r.scriptKind)return"continue";var n=new e.TypeScriptLinter(r,c,u);e.Utils.setTypeChecker(e.TypeScriptLinter.tsTypeChecker),n.lint();var i=null!==(a=u.get(r.fileName))&&void 0!==a?a:[];e.TypeScriptLinter.problemsInfos.forEach((function(e){return i.push(t(r,e))})),o.push.apply(o,i)},p=0,f=l;p<f.length;p++){d(f[p])}return o}}(d||(d={}))},13411:e=>{function t(e){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}t.keys=()=>[],t.resolve=t,t.id=13411,e.exports=t},3948:(e,t,r)=>{var n=r(14300).Buffer;void 0===n.from&&(n.from=function(e,t,r){return new n(e,t,r)},n.alloc=n.from),e.exports=n},27588:(e,t,r)=>{var n=r(93786),i=r(12781),a=r(3948);i.Writable&&i.Writable.prototype.destroy||(i=r(80037)),e.exports=function(e){return new n((function(t,r){var n=[],o=i.Transform().on("finish",(function(){t(a.concat(n))})).on("error",r);o._transform=function(e,t,r){n.push(e),r()},e.on("error",r).pipe(o)}))}},49037:(e,t,r)=>{var n,i=r(24736),a=r(12781);function o(e,t){return n||function(){var e,t,r;for(n=[],t=0;t<256;t++){for(e=t,r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>=1;n[t]=e>>>0}}(),e.charCodeAt&&(e=e.charCodeAt(0)),i(t).shiftRight(8).and(16777215).xor(n[i(t).xor(e).and(255)]).value}function s(){if(!(this instanceof s))return new s;this.key0=305419896,this.key1=591751049,this.key2=878082192}a.Writable&&a.Writable.prototype.destroy||(a=r(80037)),s.prototype.update=function(e){this.key0=o(e,this.key0),this.key1=i(this.key0).and(255).and(4294967295).add(this.key1),this.key1=i(this.key1).multiply(134775813).add(1).and(4294967295).value,this.key2=o(i(this.key1).shiftRight(24).and(255),this.key2)},s.prototype.decryptByte=function(e){var t=i(this.key2).or(2);return e^=i(t).multiply(i(1^t)).shiftRight(8).and(255),this.update(e),e},s.prototype.stream=function(){var e=a.Transform(),t=this;return e._transform=function(e,r,n){for(var i=0;i<e.length;i++)e[i]=t.decryptByte(e[i]);this.push(e),n()},e},e.exports=s},20778:(e,t,r)=>{var n=r(12781),i=r(73837);function a(){if(!(this instanceof a))return new a;n.Transform.call(this)}n.Writable&&n.Writable.prototype.destroy||(n=r(80037)),i.inherits(a,n.Transform),a.prototype._transform=function(e,t,r){r()},e.exports=a},60851:(e,t,r)=>{var n=r(67740),i=r(3617),a=r(96696),o=r(93786),s=r(27588),c=r(80693),l=r(3948),u=r(71017),d=r(98052).Writer,p=r(1955),f=l.alloc(4);f.writeUInt32LE(101010256,0),e.exports=function(e,t){var r,l,m,g,_=i(),h=i(),y=t&&t.tailSize||80;return t&&t.crx&&(l=function(e){var t=e.stream(0).pipe(i());return t.pull(4).then((function(e){var r;if(875721283===e.readUInt32LE(0))return t.pull(12).then((function(e){r=n.parse(e).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars})).then((function(){return t.pull(r.pubKeyLength+r.signatureLength)})).then((function(e){return r.publicKey=e.slice(0,r.pubKeyLength),r.signature=e.slice(r.pubKeyLength),r.size=16+r.pubKeyLength+r.signatureLength,r}))}))}(e)),e.size().then((function(t){return r=t,e.stream(Math.max(0,t-y)).on("error",(function(e){_.emit("error",e)})).pipe(_),_.pull(f)})).then((function(){return o.props({directory:_.pull(22),crxHeader:l})})).then((function(t){var a=t.directory;if(m=t.crxHeader&&t.crxHeader.size||0,65535==(g=n.parse(a).word32lu("signature").word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars).numberOfRecords||65535==g.numberOfRecords||4294967295==g.offsetToStartOfCentralDirectory){const t=20,a=r-(y-_.match+t),o=i();return e.stream(a).pipe(o),o.pull(t).then((function(t){return function(e,t){var r=n.parse(t).word32lu("signature").word32lu("diskNumber").word64lu("offsetToStartOfCentralDirectory").word32lu("numberOfDisks").vars;if(117853008!=r.signature)throw new Error("invalid zip64 end of central dir locator signature (0x07064b50): 0x"+r.signature.toString(16));var a=i();return e.stream(r.offsetToStartOfCentralDirectory).pipe(a),a.pull(56)}(e,t)})).then((function(e){g=function(e){var t=n.parse(e).word32lu("signature").word64lu("sizeOfCentralDirectory").word16lu("version").word16lu("versionsNeededToExtract").word32lu("diskNumber").word32lu("diskStart").word64lu("numberOfRecordsOnDisk").word64lu("numberOfRecords").word64lu("sizeOfCentralDirectory").word64lu("offsetToStartOfCentralDirectory").vars;if(101075792!=t.signature)throw new Error("invalid zip64 end of central dir locator signature (0x06064b50): 0x0"+t.signature.toString(16));return t}(e)}))}g.offsetToStartOfCentralDirectory+=m})).then((function(){if(g.commentLength)return _.pull(g.commentLength).then((function(e){g.comment=e.toString("utf8")}))})).then((function(){return e.stream(g.offsetToStartOfCentralDirectory).pipe(h),g.extract=function(e){if(!e||!e.path)throw new Error("PATH_MISSING");return e.path=u.resolve(u.normalize(e.path)),g.files.then((function(t){return o.map(t,(function(t){if("Directory"!=t.type){var r=u.join(e.path,t.path);if(0==r.indexOf(e.path)){var n=e.getWriter?e.getWriter({path:r}):d({path:r});return new o((function(r,i){t.stream(e.password).on("error",i).pipe(n).on("close",r).on("error",i)}))}}}),{concurrency:e.concurrency>1?e.concurrency:1})}))},g.files=o.mapSeries(Array(g.numberOfRecords),(function(){return h.pull(46).then((function(t){var r=n.parse(t).word32lu("signature").word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars;return r.offsetToLocalFileHeader+=m,r.lastModifiedDateTime=p(r.lastModifiedDate,r.lastModifiedTime),h.pull(r.fileNameLength).then((function(e){return r.pathBuffer=e,r.path=e.toString("utf8"),r.isUnicode=0!=(2048&r.flags),h.pull(r.extraFieldLength)})).then((function(e){return r.extra=c(e,r),h.pull(r.fileCommentLength)})).then((function(t){return r.comment=t,r.type=0===r.uncompressedSize&&/[\/\\]$/.test(r.path)?"Directory":"File",r.stream=function(t){return a(e,r.offsetToLocalFileHeader,t,r)},r.buffer=function(e){return s(r.stream(e))},r}))}))})),o.props(g)}))}},13838:(e,t,r)=>{var n=r(20077),i=r(93786),a=r(60851),o=r(12781);o.Writable&&o.Writable.prototype.destroy||(o=r(80037)),e.exports={buffer:function(e,t){return a({stream:function(t,r){var n=o.PassThrough();return n.end(e.slice(t,r)),n},size:function(){return i.resolve(e.length)}},t)},file:function(e,t){return a({stream:function(t,r){return n.createReadStream(e,{start:t,end:r&&t+r})},size:function(){return new i((function(t,r){n.stat(e,(function(e,n){e?r(e):t(n.size)}))}))}},t)},url:function(e,t,r){if("string"==typeof t&&(t={url:t}),!t.url)throw"URL missing";t.headers=t.headers||{};var n={stream:function(r,n){var i=Object.create(t);return i.headers=Object.create(t.headers),i.headers.range="bytes="+r+"-"+(n||""),e(i)},size:function(){return new i((function(r,n){var i=e(t);i.on("response",(function(e){i.abort(),e.headers["content-length"]?r(e.headers["content-length"]):n(new Error("Missing content length header"))})).on("error",n)}))}};return a(n,r)},s3:function(e,t,r){return a({size:function(){return new i((function(r,n){e.headObject(t,(function(e,t){e?n(e):r(t.ContentLength)}))}))},stream:function(r,n){var i={};for(var a in t)i[a]=t[a];return i.Range="bytes="+r+"-"+(n||""),e.getObject(i).createReadStream()}},r)},custom:function(e,t){return a(e,t)}}},96696:(e,t,r)=>{var n=r(93786),i=r(49037),a=r(3617),o=r(12781),s=r(67740),c=r(59796),l=r(80693),u=r(3948),d=r(1955);o.Writable&&o.Writable.prototype.destroy||(o=r(80037)),e.exports=function(e,t,r,p){var f=a(),m=o.PassThrough(),g=e.stream(t);return g.pipe(f).on("error",(function(e){m.emit("error",e)})),m.vars=f.pull(30).then((function(e){var t=s.parse(e).word32lu("signature").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars;return t.lastModifiedDateTime=d(t.lastModifiedDate,t.lastModifiedTime),f.pull(t.fileNameLength).then((function(e){return t.fileName=e.toString("utf8"),f.pull(t.extraFieldLength)})).then((function(e){var a;return t.extra=l(e,t),p&&p.compressedSize&&(t=p),1&t.flags&&(a=f.pull(12).then((function(e){if(!r)throw new Error("MISSING_PASSWORD");var n=i();String(r).split("").forEach((function(e){n.update(e)}));for(var a=0;a<e.length;a++)e[a]=n.decryptByte(e[a]);t.decrypt=n,t.compressedSize-=12;var o=8&t.flags?t.lastModifiedTime>>8&255:t.crc32>>24&255;if(e[11]!==o)throw new Error("BAD_PASSWORD");return t}))),n.resolve(a).then((function(){return m.emit("vars",t),t}))}))})),m.vars.then((function(e){var t,r=!(8&e.flags)||e.compressedSize>0,n=e.compressionMethod?c.createInflateRaw():o.PassThrough();r?(m.size=e.uncompressedSize,t=e.compressedSize):(t=u.alloc(4)).writeUInt32LE(134695760,0);var i=f.stream(t);e.decrypt&&(i=i.pipe(e.decrypt.stream())),i.pipe(n).on("error",(function(e){m.emit("error",e)})).pipe(m).on("finish",(function(){g.destroy?g.destroy():g.abort?g.abort():g.close?g.close():g.push?g.push():console.log("warning - unable to close stream")}))})).catch((function(e){m.emit("error",e)})),m}},3617:(e,t,r)=>{var n=r(12781),i=r(93786),a=r(73837),o=r(3948);function s(){if(!(this instanceof s))return new s;n.Duplex.call(this,{decodeStrings:!1,objectMode:!0}),this.buffer=o.from("");var e=this;e.on("finish",(function(){e.finished=!0,e.emit("chunk",!1)}))}n.Writable&&n.Writable.prototype.destroy||(n=r(80037)),a.inherits(s,n.Duplex),s.prototype._write=function(e,t,r){this.buffer=o.concat([this.buffer,e]),this.cb=r,this.emit("chunk")},s.prototype.stream=function(e,t){var r,i=n.PassThrough(),a=this;function o(){if("function"==typeof a.cb){var e=a.cb;return a.cb=void 0,e()}}function s(){var n;if(a.buffer&&a.buffer.length){if("number"==typeof e)n=a.buffer.slice(0,e),a.buffer=a.buffer.slice(e),e-=n.length,r=!e;else{var c=a.buffer.indexOf(e);if(-1!==c)a.match=c,t&&(c+=e.length),n=a.buffer.slice(0,c),a.buffer=a.buffer.slice(c),r=!0;else{var l=a.buffer.length-e.length;l<=0?o():(n=a.buffer.slice(0,l),a.buffer=a.buffer.slice(l))}}n&&i.write(n,(function(){(0===a.buffer.length||e.length&&a.buffer.length<=e.length)&&o()}))}if(r)a.removeListener("chunk",s),i.end();else if(a.finished)return a.removeListener("chunk",s),void a.emit("error",new Error("FILE_ENDED"))}return a.on("chunk",s),s(),i},s.prototype.pull=function(e,t){if(0===e)return i.resolve("");if(!isNaN(e)&&this.buffer.length>e){var r=this.buffer.slice(0,e);return this.buffer=this.buffer.slice(e),i.resolve(r)}var a,s,c=o.from(""),l=this,u=n.Transform();return u._transform=function(e,t,r){c=o.concat([c,e]),r()},new i((function(r,n){if(a=n,s=function(e){l.__emittedError=e,n(e)},l.finished)return n(new Error("FILE_ENDED"));l.once("error",s),l.stream(e,t).on("error",n).pipe(u).on("finish",(function(){r(c)})).on("error",n)})).finally((function(){l.removeListener("error",a),l.removeListener("error",s)}))},s.prototype._read=function(){},e.exports=s},88355:(e,t,r)=>{e.exports=function(e){e.path=a.resolve(a.normalize(e.path));var t=new n(e),r=new o.Writable({objectMode:!0});r._write=function(t,r,n){if("Directory"==t.type)return n();var o=a.join(e.path,t.path);if(0!=o.indexOf(e.path))return n();const s=e.getWriter?e.getWriter({path:o}):i({path:o});t.pipe(s).on("error",n).on("close",n)};var l=s(t,r);return t.once("crx-header",(function(e){l.crxHeader=e})),t.pipe(r).on("finish",(function(){l.emit("close")})),l.promise=function(){return new c((function(e,t){l.on("close",e),l.on("error",t)}))},l};var n=r(94908),i=r(98052).Writer,a=r(71017),o=r(12781),s=r(94422),c=r(93786)},94908:(e,t,r)=>{var n=r(73837),i=r(59796),a=r(12781),o=r(67740),s=r(93786),c=r(3617),l=r(20778),u=r(27588),d=r(80693),p=r(3948),f=r(1955);a.Writable&&a.Writable.prototype.destroy||(a=r(80037));var m=p.alloc(4);function g(e){if(!(this instanceof g))return new g(e);var t=this;t._opts=e||{verbose:!1},c.call(t,t._opts),t.on("finish",(function(){t.emit("end"),t.emit("close")})),t._readRecord().catch((function(e){t.__emittedError&&t.__emittedError===e||t.emit("error",e)}))}m.writeUInt32LE(101010256,0),n.inherits(g,c),g.prototype._readRecord=function(){var e=this;return e.pull(4).then((function(t){if(0!==t.length){var r=t.readUInt32LE(0);if(875721283===r)return e._readCrxHeader();if(67324752===r)return e._readFile();if(33639248===r)return e.reachedCD=!0,e._readCentralDirectoryFileHeader();if(101010256===r)return e._readEndOfCentralDirectoryRecord();if(e.reachedCD){return e.pull(m,!0).then((function(){return e._readEndOfCentralDirectoryRecord()}))}e.emit("error",new Error("invalid signature: 0x"+r.toString(16)))}}))},g.prototype._readCrxHeader=function(){var e=this;return e.pull(12).then((function(t){return e.crxHeader=o.parse(t).word32lu("version").word32lu("pubKeyLength").word32lu("signatureLength").vars,e.pull(e.crxHeader.pubKeyLength+e.crxHeader.signatureLength)})).then((function(t){return e.crxHeader.publicKey=t.slice(0,e.crxHeader.pubKeyLength),e.crxHeader.signature=t.slice(e.crxHeader.pubKeyLength),e.emit("crx-header",e.crxHeader),e._readRecord()}))},g.prototype._readFile=function(){var e=this;return e.pull(26).then((function(t){var r=o.parse(t).word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").vars;return r.lastModifiedDateTime=f(r.lastModifiedDate,r.lastModifiedTime),e.crxHeader&&(r.crxHeader=e.crxHeader),e.pull(r.fileNameLength).then((function(t){var n=t.toString("utf8"),o=a.PassThrough(),c=!1;return o.autodrain=function(){c=!0;var e=o.pipe(l());return e.promise=function(){return new s((function(t,r){e.on("finish",t),e.on("error",r)}))},e},o.buffer=function(){return u(o)},o.path=n,o.props={},o.props.path=n,o.props.pathBuffer=t,o.props.flags={isUnicode:0!=(2048&r.flags)},o.type=0===r.uncompressedSize&&/[\/\\]$/.test(n)?"Directory":"File",e._opts.verbose&&("Directory"===o.type?console.log(" creating:",n):"File"===o.type&&(0===r.compressionMethod?console.log(" extracting:",n):console.log(" inflating:",n))),e.pull(r.extraFieldLength).then((function(t){var l=d(t,r);o.vars=r,o.extra=l,e._opts.forceStream?e.push(o):(e.emit("entry",o),(e._readableState.pipesCount||e._readableState.pipes&&e._readableState.pipes.length)&&e.push(o)),e._opts.verbose&&console.log({filename:n,vars:r,extra:l});var u,f=!(8&r.flags)||r.compressedSize>0;o.__autodraining=c;var m=r.compressionMethod&&!c?i.createInflateRaw():a.PassThrough();return f?(o.size=r.uncompressedSize,u=r.compressedSize):(u=p.alloc(4)).writeUInt32LE(134695760,0),new s((function(t,r){e.stream(u).pipe(m).on("error",(function(t){e.emit("error",t)})).pipe(o).on("finish",(function(){return f?e._readRecord().then(t).catch(r):e._processDataDescriptor(o).then(t).catch(r)}))}))}))}))}))},g.prototype._processDataDescriptor=function(e){var t=this;return t.pull(16).then((function(r){var n=o.parse(r).word32lu("dataDescriptorSignature").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").vars;return e.size=n.uncompressedSize,t._readRecord()}))},g.prototype._readCentralDirectoryFileHeader=function(){var e=this;return e.pull(42).then((function(t){var r=o.parse(t).word16lu("versionMadeBy").word16lu("versionsNeededToExtract").word16lu("flags").word16lu("compressionMethod").word16lu("lastModifiedTime").word16lu("lastModifiedDate").word32lu("crc32").word32lu("compressedSize").word32lu("uncompressedSize").word16lu("fileNameLength").word16lu("extraFieldLength").word16lu("fileCommentLength").word16lu("diskNumber").word16lu("internalFileAttributes").word32lu("externalFileAttributes").word32lu("offsetToLocalFileHeader").vars;return e.pull(r.fileNameLength).then((function(t){return r.fileName=t.toString("utf8"),e.pull(r.extraFieldLength)})).then((function(t){return e.pull(r.fileCommentLength)})).then((function(t){return e._readRecord()}))}))},g.prototype._readEndOfCentralDirectoryRecord=function(){var e=this;return e.pull(18).then((function(t){var r=o.parse(t).word16lu("diskNumber").word16lu("diskStart").word16lu("numberOfRecordsOnDisk").word16lu("numberOfRecords").word32lu("sizeOfCentralDirectory").word32lu("offsetToStartOfCentralDirectory").word16lu("commentLength").vars;return e.pull(r.commentLength).then((function(t){t=t.toString("utf8"),e.end(),e.push(null)}))}))},g.prototype.promise=function(){var e=this;return new s((function(t,r){e.on("finish",t),e.on("error",r)}))},e.exports=g},1955:e=>{e.exports=function(e,t){const r=31&e,n=e>>5&15,i=1980+(e>>9&127),a=t?2*(31&t):0,o=t?t>>5&63:0,s=t?t>>11:0;return new Date(Date.UTC(i,n-1,r,s,o,a))}},80693:(e,t,r)=>{var n=r(67740);e.exports=function(e,t){for(var r;!r&&e&&e.length;){var i=n.parse(e).word16lu("signature").word16lu("partsize").word64lu("uncompressedSize").word64lu("compressedSize").word64lu("offset").word64lu("disknum").vars;1===i.signature?r=i:e=e.slice(i.partsize+4)}return r=r||{},4294967295===t.compressedSize&&(t.compressedSize=r.compressedSize),4294967295===t.uncompressedSize&&(t.uncompressedSize=r.uncompressedSize),4294967295===t.offsetToLocalFileHeader&&(t.offsetToLocalFileHeader=r.offset),r}},30456:(e,t,r)=>{var n=r(12781),i=r(94908),a=r(94422),o=r(27588);n.Writable&&n.Writable.prototype.destroy||(n=r(80037)),e.exports=function(e,t){var r,s=n.PassThrough({objectMode:!0}),c=n.PassThrough(),l=n.Transform({objectMode:!0}),u=e instanceof RegExp?e:e&&new RegExp(e);l._transform=function(e,t,n){if(r||u&&!u.exec(e.path))return e.autodrain(),n();r=!0,d.emit("entry",e),e.on("error",(function(e){c.emit("error",e)})),e.pipe(c).on("error",(function(e){n(e)})).on("finish",(function(e){n(null,e)}))},s.pipe(i(t)).on("error",(function(e){c.emit("error",e)})).pipe(l).on("error",Object).on("finish",(function(){r?c.end():c.emit("error",new Error("PATTERN_NOT_FOUND"))}));var d=a(s,c);return d.buffer=function(){return o(c)},d}},25229:(e,t,r)=>{"use strict";var n=r(88212),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=d;var a=Object.create(r(16497));a.inherits=r(94378);var o=r(40297),s=r(81361);a.inherits(d,o);for(var c=i(s.prototype),l=0;l<c.length;l++){var u=c[l];d.prototype[u]||(d.prototype[u]=s.prototype[u])}function d(e){if(!(this instanceof d))return new d(e);o.call(this,e),s.call(this,e),e&&!1===e.readable&&(this.readable=!1),e&&!1===e.writable&&(this.writable=!1),this.allowHalfOpen=!0,e&&!1===e.allowHalfOpen&&(this.allowHalfOpen=!1),this.once("end",p)}function p(){this.allowHalfOpen||this._writableState.ended||n.nextTick(f,this)}function f(e){e.end()}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(d.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed&&this._writableState.destroyed)},set:function(e){void 0!==this._readableState&&void 0!==this._writableState&&(this._readableState.destroyed=e,this._writableState.destroyed=e)}}),d.prototype._destroy=function(e,t){this.push(null),this.end(),n.nextTick(t,e)}},19554:(e,t,r)=>{"use strict";e.exports=a;var n=r(39365),i=Object.create(r(16497));function a(e){if(!(this instanceof a))return new a(e);n.call(this,e)}i.inherits=r(94378),i.inherits(a,n),a.prototype._transform=function(e,t,r){r(null,e)}},40297:(e,t,r)=>{"use strict";var n=r(88212);e.exports=y;var i,a=r(5826);y.ReadableState=h;r(82361).EventEmitter;var o=function(e,t){return e.listeners(t).length},s=r(67248),c=r(89509).Buffer,l=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var u=Object.create(r(16497));u.inherits=r(94378);var d=r(73837),p=void 0;p=d&&d.debuglog?d.debuglog("stream"):function(){};var f,m=r(14470),g=r(976);u.inherits(y,s);var _=["error","close","destroy","pause","resume"];function h(e,t){e=e||{};var n=t instanceof(i=i||r(25229));this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode);var a=e.highWaterMark,o=e.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=a||0===a?a:n&&(o||0===o)?o:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(f||(f=r(32553).s),this.decoder=new f(e.encoding),this.encoding=e.encoding)}function y(e){if(i=i||r(25229),!(this instanceof y))return new y(e);this._readableState=new h(e,this),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),s.call(this)}function v(e,t,r,n,i){var a,o=e._readableState;null===t?(o.reading=!1,function(e,t){if(t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,E(e)}(e,o)):(i||(a=function(e,t){var r;n=t,c.isBuffer(n)||n instanceof l||"string"==typeof t||void 0===t||e.objectMode||(r=new TypeError("Invalid non-string/buffer chunk"));var n;return r}(o,t)),a?e.emit("error",a):o.objectMode||t&&t.length>0?("string"==typeof t||o.objectMode||Object.getPrototypeOf(t)===c.prototype||(t=function(e){return c.from(e)}(t)),n?o.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):b(e,o,t,!0):o.ended?e.emit("error",new Error("stream.push() after EOF")):(o.reading=!1,o.decoder&&!r?(t=o.decoder.write(t),o.objectMode||0!==t.length?b(e,o,t,!1):D(e,o)):b(e,o,t,!1))):n||(o.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.length<e.highWaterMark||0===e.length)}(o)}function b(e,t,r,n){t.flowing&&0===t.length&&!t.sync?(e.emit("data",r),e.read(0)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&E(e)),D(e,t)}Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._readableState&&this._readableState.destroyed},set:function(e){this._readableState&&(this._readableState.destroyed=e)}}),y.prototype.destroy=g.destroy,y.prototype._undestroy=g.undestroy,y.prototype._destroy=function(e,t){this.push(null),t(e)},y.prototype.push=function(e,t){var r,n=this._readableState;return n.objectMode?r=!0:"string"==typeof e&&((t=t||n.defaultEncoding)!==n.encoding&&(e=c.from(e,t),t=""),r=!0),v(this,e,t,!1,r)},y.prototype.unshift=function(e){return v(this,e,null,!0,!1)},y.prototype.isPaused=function(){return!1===this._readableState.flowing},y.prototype.setEncoding=function(e){return f||(f=r(32553).s),this._readableState.decoder=new f(e),this._readableState.encoding=e,this};var k=8388608;function x(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:e!=e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=function(e){return e>=k?e=k:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function E(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(p("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?n.nextTick(S,e):S(e))}function S(e){p("emit readable"),e.emit("readable"),A(e)}function D(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(w,e,t))}function w(e,t){for(var r=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length<t.highWaterMark&&(p("maybeReadMore read 0"),e.read(0),r!==t.length);)r=t.length;t.readingMore=!1}function T(e){p("readable nexttick read 0"),e.read(0)}function C(e,t){t.reading||(p("resume read 0"),e.read(0)),t.resumeScheduled=!1,t.awaitDrain=0,e.emit("resume"),A(e),t.flowing&&!t.reading&&e.read(0)}function A(e){var t=e._readableState;for(p("flow",t.flowing);t.flowing&&null!==e.read(););}function N(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):r=function(e,t,r){var n;e<t.head.data.length?(n=t.head.data.slice(0,e),t.head.data=t.head.data.slice(e)):n=e===t.head.data.length?t.shift():r?function(e,t){var r=t.head,n=1,i=r.data;e-=i.length;for(;r=r.next;){var a=r.data,o=e>a.length?a.length:e;if(o===a.length?i+=a:i+=a.slice(0,e),0===(e-=o)){o===a.length?(++n,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=a.slice(o));break}++n}return t.length-=n,i}(e,t):function(e,t){var r=c.allocUnsafe(e),n=t.head,i=1;n.data.copy(r),e-=n.data.length;for(;n=n.next;){var a=n.data,o=e>a.length?a.length:e;if(a.copy(r,r.length-e,0,o),0===(e-=o)){o===a.length?(++i,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=a.slice(o));break}++i}return t.length-=i,r}(e,t);return n}(e,t.buffer,t.decoder),r);var r}function P(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,n.nextTick(I,t,e))}function I(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function F(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}y.prototype.read=function(e){p("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&(t.length>=t.highWaterMark||t.ended))return p("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?P(this):E(this),null;if(0===(e=x(e,t))&&t.ended)return 0===t.length&&P(this),null;var n,i=t.needReadable;return p("need readable",i),(0===t.length||t.length-e<t.highWaterMark)&&p("length less than watermark",i=!0),t.ended||t.reading?p("reading or ended",i=!1):i&&(p("do read"),t.reading=!0,t.sync=!0,0===t.length&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=x(r,t))),null===(n=e>0?N(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&P(this)),null!==n&&this.emit("data",n),n},y.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},y.prototype.pipe=function(e,t){var r=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,p("pipe count=%d opts=%j",i.pipesCount,t);var s=(!t||!1!==t.end)&&e!==process.stdout&&e!==process.stderr?l:y;function c(t,n){p("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,p("cleanup"),e.removeListener("close",_),e.removeListener("finish",h),e.removeListener("drain",u),e.removeListener("error",g),e.removeListener("unpipe",c),r.removeListener("end",l),r.removeListener("end",y),r.removeListener("data",m),d=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function l(){p("onend"),e.end()}i.endEmitted?n.nextTick(s):r.once("end",s),e.on("unpipe",c);var u=function(e){return function(){var t=e._readableState;p("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,A(e))}}(r);e.on("drain",u);var d=!1;var f=!1;function m(t){p("ondata"),f=!1,!1!==e.write(t)||f||((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==F(i.pipes,e))&&!d&&(p("false write response, pause",i.awaitDrain),i.awaitDrain++,f=!0),r.pause())}function g(t){p("onerror",t),y(),e.removeListener("error",g),0===o(e,"error")&&e.emit("error",t)}function _(){e.removeListener("finish",h),y()}function h(){p("onfinish"),e.removeListener("close",_),y()}function y(){p("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",g),e.once("close",_),e.once("finish",h),e.emit("pipe",r),i.flowing||(p("pipe resume"),r.resume()),e},y.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=F(t.pipes,e);return-1===o||(t.pipes.splice(o,1),t.pipesCount-=1,1===t.pipesCount&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r)),this},y.prototype.on=function(e,t){var r=s.prototype.on.call(this,e,t);if("data"===e)!1!==this._readableState.flowing&&this.resume();else if("readable"===e){var i=this._readableState;i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.emittedReadable=!1,i.reading?i.length&&E(this):n.nextTick(T,this))}return r},y.prototype.addListener=y.prototype.on,y.prototype.resume=function(){var e=this._readableState;return e.flowing||(p("resume"),e.flowing=!0,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(C,e,t))}(this,e)),this},y.prototype.pause=function(){return p("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(p("pause"),this._readableState.flowing=!1,this.emit("pause")),this},y.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(p("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(p("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i)||(r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var a=0;a<_.length;a++)e.on(_[a],this.emit.bind(this,_[a]));return this._read=function(t){p("wrapped _read",t),n&&(n=!1,e.resume())},this},Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),y._fromList=N},39365:(e,t,r)=>{"use strict";e.exports=o;var n=r(25229),i=Object.create(r(16497));function a(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(!n)return this.emit("error",new Error("write callback called multiple times"));r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function o(e){if(!(this instanceof o))return new o(e);n.call(this,e),this._transformState={afterTransform:a.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",s)}function s(){var e=this;"function"==typeof this._flush?this._flush((function(t,r){c(e,t,r)})):c(this,null,null)}function c(e,t,r){if(t)return e.emit("error",t);if(null!=r&&e.push(r),e._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(e._transformState.transforming)throw new Error("Calling transform done when still transforming");return e.push(null)}i.inherits=r(94378),i.inherits(o,n),o.prototype.push=function(e,t){return this._transformState.needTransform=!1,n.prototype.push.call(this,e,t)},o.prototype._transform=function(e,t,r){throw new Error("_transform() is not implemented")},o.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}},o.prototype._read=function(e){var t=this._transformState;null!==t.writechunk&&t.writecb&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0},o.prototype._destroy=function(e,t){var r=this;n.prototype._destroy.call(this,e,(function(e){t(e),r.emit("close")}))}},81361:(e,t,r)=>{"use strict";var n=r(88212);function i(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=_;var a,o=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:n.nextTick;_.WritableState=g;var s=Object.create(r(16497));s.inherits=r(94378);var c={deprecate:r(41159)},l=r(67248),u=r(89509).Buffer,d=("undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,f=r(976);function m(){}function g(e,t){a=a||r(25229),e=e||{};var s=t instanceof a;this.objectMode=!!e.objectMode,s&&(this.objectMode=this.objectMode||!!e.writableObjectMode);var c=e.highWaterMark,l=e.writableHighWaterMark,u=this.objectMode?16:16384;this.highWaterMark=c||0===c?c:s&&(l||0===l)?l:u,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var d=!1===e.decodeStrings;this.decodeStrings=!d,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,i=r.sync,a=r.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,i,a){--t.pendingcb,r?(n.nextTick(a,i),n.nextTick(x,e,t),e._writableState.errorEmitted=!0,e.emit("error",i)):(a(i),e._writableState.errorEmitted=!0,e.emit("error",i),x(e,t))}(e,r,i,t,a);else{var s=b(r);s||r.corked||r.bufferProcessing||!r.bufferedRequest||v(e,r),i?o(y,e,r,s,a):y(e,r,s,a)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function _(e){if(a=a||r(25229),!(p.call(_,this)||this instanceof a))return new _(e);this._writableState=new g(e,this),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),l.call(this)}function h(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function y(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),x(e,t)}function v(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,a=new Array(n),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,h(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new i(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(h(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function b(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function k(e,t){e._final((function(r){t.pendingcb--,r&&e.emit("error",r),t.prefinished=!0,e.emit("prefinish"),x(e,t)}))}function x(e,t){var r=b(t);return r&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,n.nextTick(k,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),r}s.inherits(_,l),g.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(g.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(_,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===_&&(e&&e._writableState instanceof g)}})):p=function(e){return e instanceof this},_.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},_.prototype.write=function(e,t,r){var i,a=this._writableState,o=!1,s=!a.objectMode&&(i=e,u.isBuffer(i)||i instanceof d);return s&&!u.isBuffer(e)&&(e=function(e){return u.from(e)}(e)),"function"==typeof t&&(r=t,t=null),s?t="buffer":t||(t=a.defaultEncoding),"function"!=typeof r&&(r=m),a.ended?function(e,t){var r=new Error("write after end");e.emit("error",r),n.nextTick(t,r)}(this,r):(s||function(e,t,r,i){var a=!0,o=!1;return null===r?o=new TypeError("May not write null values to stream"):"string"==typeof r||void 0===r||t.objectMode||(o=new TypeError("Invalid non-string/buffer chunk")),o&&(e.emit("error",o),n.nextTick(i,o),a=!1),a}(this,a,e,r))&&(a.pendingcb++,o=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=u.from(t,r));return t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var c=t.length<t.highWaterMark;c||(t.needDrain=!0);if(t.writing||t.corked){var l=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},l?l.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else h(e,t,!1,s,n,i,a);return c}(this,a,s,e,t,r)),o},_.prototype.cork=function(){this._writableState.corked++},_.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,e.writing||e.corked||e.bufferProcessing||!e.bufferedRequest||v(this,e))},_.prototype.setDefaultEncoding=function(e){if("string"==typeof e&&(e=e.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((e+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(_.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),_.prototype._write=function(e,t,r){r(new Error("_write() is not implemented"))},_.prototype._writev=null,_.prototype.end=function(e,t,r){var i=this._writableState;"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),i.corked&&(i.corked=1,this.uncork()),i.ending||function(e,t,r){t.ending=!0,x(e,t),r&&(t.finished?n.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,i,r)},Object.defineProperty(_.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),_.prototype.destroy=f.destroy,_.prototype._undestroy=f.undestroy,_.prototype._destroy=function(e,t){this.end(),t(e)}},14470:(e,t,r)=>{"use strict";var n=r(89509).Buffer,i=r(73837);e.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r},e.prototype.concat=function(e){if(0===this.length)return n.alloc(0);for(var t,r,i,a=n.allocUnsafe(e>>>0),o=this.head,s=0;o;)t=o.data,r=a,i=s,t.copy(r,i),s+=o.data.length,o=o.next;return a},e}(),i&&i.inspect&&i.inspect.custom&&(e.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},976:(e,t,r)=>{"use strict";var n=r(88212);function i(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,a=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return a||o?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(i,this,e)):n.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted||(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},67248:(e,t,r)=>{e.exports=r(12781)},80037:(e,t,r)=>{var n=r(12781);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n,(t=e.exports=n.Readable).Readable=n.Readable,t.Writable=n.Writable,t.Duplex=n.Duplex,t.Transform=n.Transform,t.PassThrough=n.PassThrough,t.Stream=n):((t=e.exports=r(40297)).Stream=n||t,t.Readable=t,t.Writable=r(81361),t.Duplex=r(25229),t.Transform=r(39365),t.PassThrough=r(19554))},40984:(e,t,r)=>{"use strict";r(1441),r(67800),r(24889),t.Parse=r(94908),t.ParseOne=r(30456),t.Extract=r(88355),t.Open=r(13838)},41159:(e,t,r)=>{e.exports=r(73837).deprecate},42277:(e,t,r)=>{"use strict";r.r(t),r.d(t,{NIL:()=>x,parse:()=>h,stringify:()=>d,v1:()=>_,v3:()=>v,v4:()=>b,v5:()=>k,validate:()=>l,version:()=>E});var n=r(6113),i=r.n(n);const a=new Uint8Array(256);let o=a.length;function s(){return o>a.length-16&&(i().randomFillSync(a),o=0),a.slice(o,o+=16)}const c=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;const l=function(e){return"string"==typeof e&&c.test(e)},u=[];for(let e=0;e<256;++e)u.push((e+256).toString(16).substr(1));const d=function(e,t=0){const r=(u[e[t+0]]+u[e[t+1]]+u[e[t+2]]+u[e[t+3]]+"-"+u[e[t+4]]+u[e[t+5]]+"-"+u[e[t+6]]+u[e[t+7]]+"-"+u[e[t+8]]+u[e[t+9]]+"-"+u[e[t+10]]+u[e[t+11]]+u[e[t+12]]+u[e[t+13]]+u[e[t+14]]+u[e[t+15]]).toLowerCase();if(!l(r))throw TypeError("Stringified UUID is invalid");return r};let p,f,m=0,g=0;const _=function(e,t,r){let n=t&&r||0;const i=t||new Array(16);let a=(e=e||{}).node||p,o=void 0!==e.clockseq?e.clockseq:f;if(null==a||null==o){const t=e.random||(e.rng||s)();null==a&&(a=p=[1|t[0],t[1],t[2],t[3],t[4],t[5]]),null==o&&(o=f=16383&(t[6]<<8|t[7]))}let c=void 0!==e.msecs?e.msecs:Date.now(),l=void 0!==e.nsecs?e.nsecs:g+1;const u=c-m+(l-g)/1e4;if(u<0&&void 0===e.clockseq&&(o=o+1&16383),(u<0||c>m)&&void 0===e.nsecs&&(l=0),l>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");m=c,g=l,f=o,c+=122192928e5;const _=(1e4*(268435455&c)+l)%4294967296;i[n++]=_>>>24&255,i[n++]=_>>>16&255,i[n++]=_>>>8&255,i[n++]=255&_;const h=c/4294967296*1e4&268435455;i[n++]=h>>>8&255,i[n++]=255&h,i[n++]=h>>>24&15|16,i[n++]=h>>>16&255,i[n++]=o>>>8|128,i[n++]=255&o;for(let e=0;e<6;++e)i[n+e]=a[e];return t||d(i)};const h=function(e){if(!l(e))throw TypeError("Invalid UUID");let t;const r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=255&t,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=255&t,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=255&t,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=255&t,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=255&t,r};function y(e,t,r){function n(e,n,i,a){if("string"==typeof e&&(e=function(e){e=unescape(encodeURIComponent(e));const t=[];for(let r=0;r<e.length;++r)t.push(e.charCodeAt(r));return t}(e)),"string"==typeof n&&(n=h(n)),16!==n.length)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let o=new Uint8Array(16+e.length);if(o.set(n),o.set(e,n.length),o=r(o),o[6]=15&o[6]|t,o[8]=63&o[8]|128,i){a=a||0;for(let e=0;e<16;++e)i[a+e]=o[e];return i}return d(o)}try{n.name=e}catch(e){}return n.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",n.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",n}const v=y("v3",48,(function(e){return Array.isArray(e)?e=Buffer.from(e):"string"==typeof e&&(e=Buffer.from(e,"utf8")),i().createHash("md5").update(e).digest()}));const b=function(e,t,r){const n=(e=e||{}).random||(e.rng||s)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,t){r=r||0;for(let e=0;e<16;++e)t[r+e]=n[e];return t}return d(n)};const k=y("v5",80,(function(e){return Array.isArray(e)?e=Buffer.from(e):"string"==typeof e&&(e=Buffer.from(e,"utf8")),i().createHash("sha1").update(e).digest()})),x="00000000-0000-0000-0000-000000000000";const E=function(e){if(!l(e))throw TypeError("Invalid UUID");return parseInt(e.substr(14,1),16)}},52479:e=>{e.exports=function e(t,r){if(t&&r)return e(t)(r);if("function"!=typeof t)throw new TypeError("need wrapper function");return Object.keys(t).forEach((function(e){n[e]=t[e]})),n;function n(){for(var e=new Array(arguments.length),r=0;r<e.length;r++)e[r]=arguments[r];var n=t.apply(this,e),i=e[e.length-1];return"function"==typeof n&&n!==i&&Object.keys(i).forEach((function(e){n[e]=i[e]})),n}}},83347:(e,t)=>{"use strict"; -/** - * Character classes and associated utilities for the 5th edition of XML 1.0. - * - * @author Louis-Dominique Dubeau - * @license MIT - * @copyright Louis-Dominique Dubeau - */Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR="\t\n\r -퟿-�𐀀-􏿿",t.S=" \t\r\n",t.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NAME_CHAR="-"+t.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.CHAR_RE=new RegExp("^["+t.CHAR+"]$","u"),t.S_RE=new RegExp("^["+t.S+"]+$","u"),t.NAME_START_CHAR_RE=new RegExp("^["+t.NAME_START_CHAR+"]$","u"),t.NAME_CHAR_RE=new RegExp("^["+t.NAME_CHAR+"]$","u"),t.NAME_RE=new RegExp("^["+t.NAME_START_CHAR+"]["+t.NAME_CHAR+"]*$","u"),t.NMTOKEN_RE=new RegExp("^["+t.NAME_CHAR+"]+$","u");function r(e){return e>=65&&e<=90||e>=97&&e<=122||58===e||95===e||8204===e||8205===e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}t.S_LIST=[32,10,13,9],t.isChar=function(e){return e>=32&&e<=55295||10===e||13===e||9===e||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isS=function(e){return 32===e||10===e||13===e||9===e},t.isNameStartChar=r,t.isNameChar=function(e){return r(e)||e>=48&&e<=57||45===e||46===e||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},95285:(e,t)=>{"use strict"; -/** - * Character classes and associated utilities for the 2nd edition of XML 1.1. - * - * @author Louis-Dominique Dubeau - * @license MIT - * @copyright Louis-Dominique Dubeau - */Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR="-퟿-�𐀀-􏿿",t.RESTRICTED_CHAR="-\b\v\f--„†-Ÿ",t.S=" \t\r\n",t.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NAME_CHAR="-"+t.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.CHAR_RE=new RegExp("^["+t.CHAR+"]$","u"),t.RESTRICTED_CHAR_RE=new RegExp("^["+t.RESTRICTED_CHAR+"]$","u"),t.S_RE=new RegExp("^["+t.S+"]+$","u"),t.NAME_START_CHAR_RE=new RegExp("^["+t.NAME_START_CHAR+"]$","u"),t.NAME_CHAR_RE=new RegExp("^["+t.NAME_CHAR+"]$","u"),t.NAME_RE=new RegExp("^["+t.NAME_START_CHAR+"]["+t.NAME_CHAR+"]*$","u"),t.NMTOKEN_RE=new RegExp("^["+t.NAME_CHAR+"]+$","u");function r(e){return e>=65&&e<=90||e>=97&&e<=122||58===e||95===e||8204===e||8205===e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}t.S_LIST=[32,10,13,9],t.isChar=function(e){return e>=1&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isRestrictedChar=function(e){return e>=1&&e<=8||11===e||12===e||e>=14&&e<=31||e>=127&&e<=132||e>=134&&e<=159},t.isCharAndNotRestricted=function(e){return 9===e||10===e||13===e||e>31&&e<127||133===e||e>159&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isS=function(e){return 32===e||10===e||13===e||9===e},t.isNameStartChar=r,t.isNameChar=function(e){return r(e)||e>=48&&e<=57||45===e||46===e||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},87046:(e,t)=>{"use strict"; -/** - * Character class utilities for XML NS 1.0 edition 3. - * - * @author Louis-Dominique Dubeau - * @license MIT - * @copyright Louis-Dominique Dubeau - */function r(e){return e>=65&&e<=90||95===e||e>=97&&e<=122||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8204&&e<=8205||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}Object.defineProperty(t,"__esModule",{value:!0}),t.NC_NAME_START_CHAR="A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NC_NAME_CHAR="-"+t.NC_NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.NC_NAME_START_CHAR_RE=new RegExp("^["+t.NC_NAME_START_CHAR+"]$","u"),t.NC_NAME_CHAR_RE=new RegExp("^["+t.NC_NAME_CHAR+"]$","u"),t.NC_NAME_RE=new RegExp("^["+t.NC_NAME_START_CHAR+"]["+t.NC_NAME_CHAR+"]*$","u"),t.isNCNameStartChar=r,t.isNCNameChar=function(e){return r(e)||45===e||46===e||e>=48&&e<=57||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},39491:e=>{"use strict";e.exports=require("assert")},14300:e=>{"use strict";e.exports=require("buffer")},32081:e=>{"use strict";e.exports=require("child_process")},22057:e=>{"use strict";e.exports=require("constants")},6113:e=>{"use strict";e.exports=require("crypto")},82361:e=>{"use strict";e.exports=require("events")},57147:e=>{"use strict";e.exports=require("fs")},31405:e=>{"use strict";e.exports=require("inspector")},22037:e=>{"use strict";e.exports=require("os")},71017:e=>{"use strict";e.exports=require("path")},4074:e=>{"use strict";e.exports=require("perf_hooks")},77282:e=>{"use strict";e.exports=require("process")},12781:e=>{"use strict";e.exports=require("stream")},71576:e=>{"use strict";e.exports=require("string_decoder")},73837:e=>{"use strict";e.exports=require("util")},59796:e=>{"use strict";e.exports=require("zlib")},27461:(e,t,r)=>{const{Argument:n}=r(78998),{Command:i}=r(75282),{CommanderError:a,InvalidArgumentError:o}=r(48056),{Help:s}=r(78917),{Option:c}=r(95790);(t=e.exports=new i).program=t,t.Argument=n,t.Command=i,t.CommanderError=a,t.Help=s,t.InvalidArgumentError=o,t.InvalidOptionArgumentError=o,t.Option=c},78998:(e,t,r)=>{const{InvalidArgumentError:n}=r(48056);t.Argument=class{constructor(e,t){switch(this.description=t||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e}this._name.length>3&&"..."===this._name.slice(-3)&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_concatValue(e,t){return t!==this.defaultValue&&Array.isArray(t)?t.concat(e):[e]}default(e,t){return this.defaultValue=e,this.defaultValueDescription=t,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(e,t)=>{if(!this.argChoices.includes(e))throw new n(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(e,t):e},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}},t.humanReadableArgName=function(e){const t=e.name()+(!0===e.variadic?"...":"");return e.required?"<"+t+">":"["+t+"]"}},75282:(e,t,r)=>{const n=r(82361).EventEmitter,i=r(32081),a=r(71017),o=r(57147),s=r(77282),{Argument:c,humanReadableArgName:l}=r(78998),{CommanderError:u}=r(48056),{Help:d}=r(78917),{Option:p,splitOptionFlags:f,DualOptions:m}=r(95790),{suggestSimilar:g}=r(31812);class _ extends n{constructor(e){super(),this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!0,this._args=[],this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=e||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._outputConfiguration={writeOut:e=>s.stdout.write(e),writeErr:e=>s.stderr.write(e),getOutHelpWidth:()=>s.stdout.isTTY?s.stdout.columns:void 0,getErrHelpWidth:()=>s.stderr.isTTY?s.stderr.columns:void 0,outputError:(e,t)=>t(e)},this._hidden=!1,this._hasHelpOption=!0,this._helpFlags="-h, --help",this._helpDescription="display help for command",this._helpShortFlag="-h",this._helpLongFlag="--help",this._addImplicitHelpCommand=void 0,this._helpCommandName="help",this._helpCommandnameAndArgs="help [command]",this._helpCommandDescription="display help for command",this._helpConfiguration={}}copyInheritedSettings(e){return this._outputConfiguration=e._outputConfiguration,this._hasHelpOption=e._hasHelpOption,this._helpFlags=e._helpFlags,this._helpDescription=e._helpDescription,this._helpShortFlag=e._helpShortFlag,this._helpLongFlag=e._helpLongFlag,this._helpCommandName=e._helpCommandName,this._helpCommandnameAndArgs=e._helpCommandnameAndArgs,this._helpCommandDescription=e._helpCommandDescription,this._helpConfiguration=e._helpConfiguration,this._exitCallback=e._exitCallback,this._storeOptionsAsProperties=e._storeOptionsAsProperties,this._combineFlagAndOptionalValue=e._combineFlagAndOptionalValue,this._allowExcessArguments=e._allowExcessArguments,this._enablePositionalOptions=e._enablePositionalOptions,this._showHelpAfterError=e._showHelpAfterError,this._showSuggestionAfterError=e._showSuggestionAfterError,this}command(e,t,r){let n=t,i=r;"object"==typeof n&&null!==n&&(i=n,n=null),i=i||{};const[,a,o]=e.match(/([^ ]+) *(.*)/),s=this.createCommand(a);return n&&(s.description(n),s._executableHandler=!0),i.isDefault&&(this._defaultCommandName=s._name),s._hidden=!(!i.noHelp&&!i.hidden),s._executableFile=i.executableFile||null,o&&s.arguments(o),this.commands.push(s),s.parent=this,s.copyInheritedSettings(this),n?this:s}createCommand(e){return new _(e)}createHelp(){return Object.assign(new d,this.configureHelp())}configureHelp(e){return void 0===e?this._helpConfiguration:(this._helpConfiguration=e,this)}configureOutput(e){return void 0===e?this._outputConfiguration:(Object.assign(this._outputConfiguration,e),this)}showHelpAfterError(e=!0){return"string"!=typeof e&&(e=!!e),this._showHelpAfterError=e,this}showSuggestionAfterError(e=!0){return this._showSuggestionAfterError=!!e,this}addCommand(e,t){if(!e._name)throw new Error("Command passed to .addCommand() must have a name\n- specify the name in Command constructor or using .name()");return(t=t||{}).isDefault&&(this._defaultCommandName=e._name),(t.noHelp||t.hidden)&&(e._hidden=!0),this.commands.push(e),e.parent=this,this}createArgument(e,t){return new c(e,t)}argument(e,t,r,n){const i=this.createArgument(e,t);return"function"==typeof r?i.default(n).argParser(r):i.default(r),this.addArgument(i),this}arguments(e){return e.split(/ +/).forEach((e=>{this.argument(e)})),this}addArgument(e){const t=this._args.slice(-1)[0];if(t&&t.variadic)throw new Error(`only the last argument can be variadic '${t.name()}'`);if(e.required&&void 0!==e.defaultValue&&void 0===e.parseArg)throw new Error(`a default value for a required argument is never used: '${e.name()}'`);return this._args.push(e),this}addHelpCommand(e,t){return!1===e?this._addImplicitHelpCommand=!1:(this._addImplicitHelpCommand=!0,"string"==typeof e&&(this._helpCommandName=e.split(" ")[0],this._helpCommandnameAndArgs=e),this._helpCommandDescription=t||this._helpCommandDescription),this}_hasImplicitHelpCommand(){return void 0===this._addImplicitHelpCommand?this.commands.length&&!this._actionHandler&&!this._findCommand("help"):this._addImplicitHelpCommand}hook(e,t){const r=["preSubcommand","preAction","postAction"];if(!r.includes(e))throw new Error(`Unexpected value for event passed to hook : '${e}'.\nExpecting one of '${r.join("', '")}'`);return this._lifeCycleHooks[e]?this._lifeCycleHooks[e].push(t):this._lifeCycleHooks[e]=[t],this}exitOverride(e){return this._exitCallback=e||(e=>{if("commander.executeSubCommandAsync"!==e.code)throw e}),this}_exit(e,t,r){this._exitCallback&&this._exitCallback(new u(e,t,r)),s.exit(e)}action(e){return this._actionHandler=t=>{const r=this._args.length,n=t.slice(0,r);return this._storeOptionsAsProperties?n[r]=this:n[r]=this.opts(),n.push(this),e.apply(this,n)},this}createOption(e,t){return new p(e,t)}addOption(e){const t=e.name(),r=e.attributeName();if(e.negate){const t=e.long.replace(/^--no-/,"--");this._findOption(t)||this.setOptionValueWithSource(r,void 0===e.defaultValue||e.defaultValue,"default")}else void 0!==e.defaultValue&&this.setOptionValueWithSource(r,e.defaultValue,"default");this.options.push(e);const n=(t,n,i)=>{null==t&&void 0!==e.presetArg&&(t=e.presetArg);const a=this.getOptionValue(r);if(null!==t&&e.parseArg)try{t=e.parseArg(t,a)}catch(e){if("commander.invalidArgument"===e.code){const t=`${n} ${e.message}`;this.error(t,{exitCode:e.exitCode,code:e.code})}throw e}else null!==t&&e.variadic&&(t=e._concatValue(t,a));null==t&&(t=!e.negate&&(!(!e.isBoolean()&&!e.optional)||"")),this.setOptionValueWithSource(r,t,i)};return this.on("option:"+t,(t=>{const r=`error: option '${e.flags}' argument '${t}' is invalid.`;n(t,r,"cli")})),e.envVar&&this.on("optionEnv:"+t,(t=>{const r=`error: option '${e.flags}' value '${t}' from env '${e.envVar}' is invalid.`;n(t,r,"env")})),this}_optionEx(e,t,r,n,i){if("object"==typeof t&&t instanceof p)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");const a=this.createOption(t,r);if(a.makeOptionMandatory(!!e.mandatory),"function"==typeof n)a.default(i).argParser(n);else if(n instanceof RegExp){const e=n;n=(t,r)=>{const n=e.exec(t);return n?n[0]:r},a.default(i).argParser(n)}else a.default(n);return this.addOption(a)}option(e,t,r,n){return this._optionEx({},e,t,r,n)}requiredOption(e,t,r,n){return this._optionEx({mandatory:!0},e,t,r,n)}combineFlagAndOptionalValue(e=!0){return this._combineFlagAndOptionalValue=!!e,this}allowUnknownOption(e=!0){return this._allowUnknownOption=!!e,this}allowExcessArguments(e=!0){return this._allowExcessArguments=!!e,this}enablePositionalOptions(e=!0){return this._enablePositionalOptions=!!e,this}passThroughOptions(e=!0){if(this._passThroughOptions=!!e,this.parent&&e&&!this.parent._enablePositionalOptions)throw new Error("passThroughOptions can not be used without turning on enablePositionalOptions for parent command(s)");return this}storeOptionsAsProperties(e=!0){if(this._storeOptionsAsProperties=!!e,this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");return this}getOptionValue(e){return this._storeOptionsAsProperties?this[e]:this._optionValues[e]}setOptionValue(e,t){return this.setOptionValueWithSource(e,t,void 0)}setOptionValueWithSource(e,t,r){return this._storeOptionsAsProperties?this[e]=t:this._optionValues[e]=t,this._optionValueSources[e]=r,this}getOptionValueSource(e){return this._optionValueSources[e]}getOptionValueSourceWithGlobals(e){let t;return v(this).forEach((r=>{void 0!==r.getOptionValueSource(e)&&(t=r.getOptionValueSource(e))})),t}_prepareUserArgs(e,t){if(void 0!==e&&!Array.isArray(e))throw new Error("first parameter to parse must be array or undefined");let r;switch(t=t||{},void 0===e&&(e=s.argv,s.versions&&s.versions.electron&&(t.from="electron")),this.rawArgs=e.slice(),t.from){case void 0:case"node":this._scriptPath=e[1],r=e.slice(2);break;case"electron":s.defaultApp?(this._scriptPath=e[1],r=e.slice(2)):r=e.slice(1);break;case"user":r=e.slice(0);break;default:throw new Error(`unexpected parse option { from: '${t.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",r}parse(e,t){const r=this._prepareUserArgs(e,t);return this._parseCommand([],r),this}async parseAsync(e,t){const r=this._prepareUserArgs(e,t);return await this._parseCommand([],r),this}_executeSubCommand(e,t){t=t.slice();let r=!1;const n=[".js",".ts",".tsx",".mjs",".cjs"];function c(e,t){const r=a.resolve(e,t);if(o.existsSync(r))return r;if(n.includes(a.extname(t)))return;const i=n.find((e=>o.existsSync(`${r}${e}`)));return i?`${r}${i}`:void 0}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let l,d=e._executableFile||`${this._name}-${e._name}`,p=this._executableDir||"";if(this._scriptPath){let e;try{e=o.realpathSync(this._scriptPath)}catch(t){e=this._scriptPath}p=a.resolve(a.dirname(e),p)}if(p){let t=c(p,d);if(!t&&!e._executableFile&&this._scriptPath){const r=a.basename(this._scriptPath,a.extname(this._scriptPath));r!==this._name&&(t=c(p,`${r}-${e._name}`))}d=t||d}if(r=n.includes(a.extname(d)),"win32"!==s.platform?r?(t.unshift(d),t=y(s.execArgv).concat(t),l=i.spawn(s.argv[0],t,{stdio:"inherit"})):l=i.spawn(d,t,{stdio:"inherit"}):(t.unshift(d),t=y(s.execArgv).concat(t),l=i.spawn(s.execPath,t,{stdio:"inherit"})),!l.killed){["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach((e=>{s.on(e,(()=>{!1===l.killed&&null===l.exitCode&&l.kill(e)}))}))}const f=this._exitCallback;f?l.on("close",(()=>{f(new u(s.exitCode||0,"commander.executeSubCommandAsync","(close)"))})):l.on("close",s.exit.bind(s)),l.on("error",(t=>{if("ENOENT"===t.code){const t=p?`searched for local subcommand relative to directory '${p}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",r=`'${d}' does not exist\n - if '${e._name}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead\n - if the default executable name is not suitable, use the executableFile option to supply a custom name or path\n - ${t}`;throw new Error(r)}if("EACCES"===t.code)throw new Error(`'${d}' not executable`);if(f){const e=new u(1,"commander.executeSubCommandAsync","(error)");e.nestedError=t,f(e)}else s.exit(1)})),this.runningCommand=l}_dispatchSubcommand(e,t,r){const n=this._findCommand(e);let i;return n||this.help({error:!0}),i=this._chainOrCallSubCommandHook(i,n,"preSubcommand"),i=this._chainOrCall(i,(()=>{if(!n._executableHandler)return n._parseCommand(t,r);this._executeSubCommand(n,t.concat(r))})),i}_checkNumberOfArguments(){this._args.forEach(((e,t)=>{e.required&&null==this.args[t]&&this.missingArgument(e.name())})),this._args.length>0&&this._args[this._args.length-1].variadic||this.args.length>this._args.length&&this._excessArguments(this.args)}_processArguments(){const e=(e,t,r)=>{let n=t;if(null!==t&&e.parseArg)try{n=e.parseArg(t,r)}catch(r){if("commander.invalidArgument"===r.code){const n=`error: command-argument value '${t}' is invalid for argument '${e.name()}'. ${r.message}`;this.error(n,{exitCode:r.exitCode,code:r.code})}throw r}return n};this._checkNumberOfArguments();const t=[];this._args.forEach(((r,n)=>{let i=r.defaultValue;r.variadic?n<this.args.length?(i=this.args.slice(n),r.parseArg&&(i=i.reduce(((t,n)=>e(r,n,t)),r.defaultValue))):void 0===i&&(i=[]):n<this.args.length&&(i=this.args[n],r.parseArg&&(i=e(r,i,r.defaultValue))),t[n]=i})),this.processedArgs=t}_chainOrCall(e,t){return e&&e.then&&"function"==typeof e.then?e.then((()=>t())):t()}_chainOrCallHooks(e,t){let r=e;const n=[];return v(this).reverse().filter((e=>void 0!==e._lifeCycleHooks[t])).forEach((e=>{e._lifeCycleHooks[t].forEach((t=>{n.push({hookedCommand:e,callback:t})}))})),"postAction"===t&&n.reverse(),n.forEach((e=>{r=this._chainOrCall(r,(()=>e.callback(e.hookedCommand,this)))})),r}_chainOrCallSubCommandHook(e,t,r){let n=e;return void 0!==this._lifeCycleHooks[r]&&this._lifeCycleHooks[r].forEach((e=>{n=this._chainOrCall(n,(()=>e(this,t)))})),n}_parseCommand(e,t){const r=this.parseOptions(t);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(r.operands),t=r.unknown,this.args=e.concat(t),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),t);if(this._hasImplicitHelpCommand()&&e[0]===this._helpCommandName)return 1===e.length&&this.help(),this._dispatchSubcommand(e[1],[],[this._helpLongFlag]);if(this._defaultCommandName)return h(this,t),this._dispatchSubcommand(this._defaultCommandName,e,t);!this.commands.length||0!==this.args.length||this._actionHandler||this._defaultCommandName||this.help({error:!0}),h(this,r.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();const n=()=>{r.unknown.length>0&&this.unknownOption(r.unknown[0])},i=`command:${this.name()}`;if(this._actionHandler){let r;return n(),this._processArguments(),r=this._chainOrCallHooks(r,"preAction"),r=this._chainOrCall(r,(()=>this._actionHandler(this.processedArgs))),this.parent&&(r=this._chainOrCall(r,(()=>{this.parent.emit(i,e,t)}))),r=this._chainOrCallHooks(r,"postAction"),r}if(this.parent&&this.parent.listenerCount(i))n(),this._processArguments(),this.parent.emit(i,e,t);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,t);this.listenerCount("command:*")?this.emit("command:*",e,t):this.commands.length?this.unknownCommand():(n(),this._processArguments())}else this.commands.length?(n(),this.help({error:!0})):(n(),this._processArguments())}_findCommand(e){if(e)return this.commands.find((t=>t._name===e||t._aliases.includes(e)))}_findOption(e){return this.options.find((t=>t.is(e)))}_checkForMissingMandatoryOptions(){for(let e=this;e;e=e.parent)e.options.forEach((t=>{t.mandatory&&void 0===e.getOptionValue(t.attributeName())&&e.missingMandatoryOptionValue(t)}))}_checkForConflictingLocalOptions(){const e=this.options.filter((e=>{const t=e.attributeName();return void 0!==this.getOptionValue(t)&&"default"!==this.getOptionValueSource(t)}));e.filter((e=>e.conflictsWith.length>0)).forEach((t=>{const r=e.find((e=>t.conflictsWith.includes(e.attributeName())));r&&this._conflictingOption(t,r)}))}_checkForConflictingOptions(){for(let e=this;e;e=e.parent)e._checkForConflictingLocalOptions()}parseOptions(e){const t=[],r=[];let n=t;const i=e.slice();function a(e){return e.length>1&&"-"===e[0]}let o=null;for(;i.length;){const e=i.shift();if("--"===e){n===r&&n.push(e),n.push(...i);break}if(!o||a(e)){if(o=null,a(e)){const t=this._findOption(e);if(t){if(t.required){const e=i.shift();void 0===e&&this.optionMissingArgument(t),this.emit(`option:${t.name()}`,e)}else if(t.optional){let e=null;i.length>0&&!a(i[0])&&(e=i.shift()),this.emit(`option:${t.name()}`,e)}else this.emit(`option:${t.name()}`);o=t.variadic?t:null;continue}}if(e.length>2&&"-"===e[0]&&"-"!==e[1]){const t=this._findOption(`-${e[1]}`);if(t){t.required||t.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${t.name()}`,e.slice(2)):(this.emit(`option:${t.name()}`),i.unshift(`-${e.slice(2)}`));continue}}if(/^--[^=]+=/.test(e)){const t=e.indexOf("="),r=this._findOption(e.slice(0,t));if(r&&(r.required||r.optional)){this.emit(`option:${r.name()}`,e.slice(t+1));continue}}if(a(e)&&(n=r),(this._enablePositionalOptions||this._passThroughOptions)&&0===t.length&&0===r.length){if(this._findCommand(e)){t.push(e),i.length>0&&r.push(...i);break}if(e===this._helpCommandName&&this._hasImplicitHelpCommand()){t.push(e),i.length>0&&t.push(...i);break}if(this._defaultCommandName){r.push(e),i.length>0&&r.push(...i);break}}if(this._passThroughOptions){n.push(e),i.length>0&&n.push(...i);break}n.push(e)}else this.emit(`option:${o.name()}`,e)}return{operands:t,unknown:r}}opts(){if(this._storeOptionsAsProperties){const e={},t=this.options.length;for(let r=0;r<t;r++){const t=this.options[r].attributeName();e[t]=t===this._versionOptionName?this._version:this[t]}return e}return this._optionValues}optsWithGlobals(){return v(this).reduce(((e,t)=>Object.assign(e,t.opts())),{})}error(e,t){this._outputConfiguration.outputError(`${e}\n`,this._outputConfiguration.writeErr),"string"==typeof this._showHelpAfterError?this._outputConfiguration.writeErr(`${this._showHelpAfterError}\n`):this._showHelpAfterError&&(this._outputConfiguration.writeErr("\n"),this.outputHelp({error:!0}));const r=t||{},n=r.exitCode||1,i=r.code||"commander.error";this._exit(n,i,e)}_parseOptionsEnv(){this.options.forEach((e=>{if(e.envVar&&e.envVar in s.env){const t=e.attributeName();(void 0===this.getOptionValue(t)||["default","config","env"].includes(this.getOptionValueSource(t)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,s.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}}))}_parseOptionsImplied(){const e=new m(this.options),t=e=>void 0!==this.getOptionValue(e)&&!["default","implied"].includes(this.getOptionValueSource(e));this.options.filter((r=>void 0!==r.implied&&t(r.attributeName())&&e.valueFromOption(this.getOptionValue(r.attributeName()),r))).forEach((e=>{Object.keys(e.implied).filter((e=>!t(e))).forEach((t=>{this.setOptionValueWithSource(t,e.implied[t],"implied")}))}))}missingArgument(e){const t=`error: missing required argument '${e}'`;this.error(t,{code:"commander.missingArgument"})}optionMissingArgument(e){const t=`error: option '${e.flags}' argument missing`;this.error(t,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){const t=`error: required option '${e.flags}' not specified`;this.error(t,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,t){const r=e=>{const t=e.attributeName(),r=this.getOptionValue(t),n=this.options.find((e=>e.negate&&t===e.attributeName())),i=this.options.find((e=>!e.negate&&t===e.attributeName()));return n&&(void 0===n.presetArg&&!1===r||void 0!==n.presetArg&&r===n.presetArg)?n:i||e},n=e=>{const t=r(e),n=t.attributeName();return"env"===this.getOptionValueSource(n)?`environment variable '${t.envVar}'`:`option '${t.flags}'`},i=`error: ${n(e)} cannot be used with ${n(t)}`;this.error(i,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let t="";if(e.startsWith("--")&&this._showSuggestionAfterError){let r=[],n=this;do{const e=n.createHelp().visibleOptions(n).filter((e=>e.long)).map((e=>e.long));r=r.concat(e),n=n.parent}while(n&&!n._enablePositionalOptions);t=g(e,r)}const r=`error: unknown option '${e}'${t}`;this.error(r,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;const t=this._args.length,r=1===t?"":"s",n=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${t} argument${r} but got ${e.length}.`;this.error(n,{code:"commander.excessArguments"})}unknownCommand(){const e=this.args[0];let t="";if(this._showSuggestionAfterError){const r=[];this.createHelp().visibleCommands(this).forEach((e=>{r.push(e.name()),e.alias()&&r.push(e.alias())})),t=g(e,r)}const r=`error: unknown command '${e}'${t}`;this.error(r,{code:"commander.unknownCommand"})}version(e,t,r){if(void 0===e)return this._version;this._version=e,t=t||"-V, --version",r=r||"output the version number";const n=this.createOption(t,r);return this._versionOptionName=n.attributeName(),this.options.push(n),this.on("option:"+n.name(),(()=>{this._outputConfiguration.writeOut(`${e}\n`),this._exit(0,"commander.version",e)})),this}description(e,t){return void 0===e&&void 0===t?this._description:(this._description=e,t&&(this._argsDescription=t),this)}summary(e){return void 0===e?this._summary:(this._summary=e,this)}alias(e){if(void 0===e)return this._aliases[0];let t=this;if(0!==this.commands.length&&this.commands[this.commands.length-1]._executableHandler&&(t=this.commands[this.commands.length-1]),e===t._name)throw new Error("Command alias can't be the same as its name");return t._aliases.push(e),this}aliases(e){return void 0===e?this._aliases:(e.forEach((e=>this.alias(e))),this)}usage(e){if(void 0===e){if(this._usage)return this._usage;const e=this._args.map((e=>l(e)));return[].concat(this.options.length||this._hasHelpOption?"[options]":[],this.commands.length?"[command]":[],this._args.length?e:[]).join(" ")}return this._usage=e,this}name(e){return void 0===e?this._name:(this._name=e,this)}nameFromFilename(e){return this._name=a.basename(e,a.extname(e)),this}executableDir(e){return void 0===e?this._executableDir:(this._executableDir=e,this)}helpInformation(e){const t=this.createHelp();return void 0===t.helpWidth&&(t.helpWidth=e&&e.error?this._outputConfiguration.getErrHelpWidth():this._outputConfiguration.getOutHelpWidth()),t.formatHelp(this,t)}_getHelpContext(e){const t={error:!!(e=e||{}).error};let r;return r=t.error?e=>this._outputConfiguration.writeErr(e):e=>this._outputConfiguration.writeOut(e),t.write=e.write||r,t.command=this,t}outputHelp(e){let t;"function"==typeof e&&(t=e,e=void 0);const r=this._getHelpContext(e);v(this).reverse().forEach((e=>e.emit("beforeAllHelp",r))),this.emit("beforeHelp",r);let n=this.helpInformation(r);if(t&&(n=t(n),"string"!=typeof n&&!Buffer.isBuffer(n)))throw new Error("outputHelp callback must return a string or a Buffer");r.write(n),this.emit(this._helpLongFlag),this.emit("afterHelp",r),v(this).forEach((e=>e.emit("afterAllHelp",r)))}helpOption(e,t){if("boolean"==typeof e)return this._hasHelpOption=e,this;this._helpFlags=e||this._helpFlags,this._helpDescription=t||this._helpDescription;const r=f(this._helpFlags);return this._helpShortFlag=r.shortFlag,this._helpLongFlag=r.longFlag,this}help(e){this.outputHelp(e);let t=s.exitCode||0;0===t&&e&&"function"!=typeof e&&e.error&&(t=1),this._exit(t,"commander.help","(outputHelp)")}addHelpText(e,t){const r=["beforeAll","before","after","afterAll"];if(!r.includes(e))throw new Error(`Unexpected value for position to addHelpText.\nExpecting one of '${r.join("', '")}'`);const n=`${e}Help`;return this.on(n,(e=>{let r;r="function"==typeof t?t({error:e.error,command:e.command}):t,r&&e.write(`${r}\n`)})),this}}function h(e,t){e._hasHelpOption&&t.find((t=>t===e._helpLongFlag||t===e._helpShortFlag))&&(e.outputHelp(),e._exit(0,"commander.helpDisplayed","(outputHelp)"))}function y(e){return e.map((e=>{if(!e.startsWith("--inspect"))return e;let t,r,n="127.0.0.1",i="9229";return null!==(r=e.match(/^(--inspect(-brk)?)$/))?t=r[1]:null!==(r=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))?(t=r[1],/^\d+$/.test(r[3])?i=r[3]:n=r[3]):null!==(r=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))&&(t=r[1],n=r[3],i=r[4]),t&&"0"!==i?`${t}=${n}:${parseInt(i)+1}`:e}))}function v(e){const t=[];for(let r=e;r;r=r.parent)t.push(r);return t}t.Command=_},48056:(e,t)=>{class r extends Error{constructor(e,t,r){super(r),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=t,this.exitCode=e,this.nestedError=void 0}}t.CommanderError=r,t.InvalidArgumentError=class extends r{constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}},78917:(e,t,r)=>{const{humanReadableArgName:n}=r(78998);t.Help=class{constructor(){this.helpWidth=void 0,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}visibleCommands(e){const t=e.commands.filter((e=>!e._hidden));if(e._hasImplicitHelpCommand()){const[,r,n]=e._helpCommandnameAndArgs.match(/([^ ]+) *(.*)/),i=e.createCommand(r).helpOption(!1);i.description(e._helpCommandDescription),n&&i.arguments(n),t.push(i)}return this.sortSubcommands&&t.sort(((e,t)=>e.name().localeCompare(t.name()))),t}compareOptions(e,t){const r=e=>e.short?e.short.replace(/^-/,""):e.long.replace(/^--/,"");return r(e).localeCompare(r(t))}visibleOptions(e){const t=e.options.filter((e=>!e.hidden)),r=e._hasHelpOption&&e._helpShortFlag&&!e._findOption(e._helpShortFlag),n=e._hasHelpOption&&!e._findOption(e._helpLongFlag);if(r||n){let i;i=r?n?e.createOption(e._helpFlags,e._helpDescription):e.createOption(e._helpShortFlag,e._helpDescription):e.createOption(e._helpLongFlag,e._helpDescription),t.push(i)}return this.sortOptions&&t.sort(this.compareOptions),t}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];const t=[];for(let r=e.parent;r;r=r.parent){const e=r.options.filter((e=>!e.hidden));t.push(...e)}return this.sortOptions&&t.sort(this.compareOptions),t}visibleArguments(e){return e._argsDescription&&e._args.forEach((t=>{t.description=t.description||e._argsDescription[t.name()]||""})),e._args.find((e=>e.description))?e._args:[]}subcommandTerm(e){const t=e._args.map((e=>n(e))).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(t?" "+t:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,t){return t.visibleCommands(e).reduce(((e,r)=>Math.max(e,t.subcommandTerm(r).length)),0)}longestOptionTermLength(e,t){return t.visibleOptions(e).reduce(((e,r)=>Math.max(e,t.optionTerm(r).length)),0)}longestGlobalOptionTermLength(e,t){return t.visibleGlobalOptions(e).reduce(((e,r)=>Math.max(e,t.optionTerm(r).length)),0)}longestArgumentTermLength(e,t){return t.visibleArguments(e).reduce(((e,r)=>Math.max(e,t.argumentTerm(r).length)),0)}commandUsage(e){let t=e._name;e._aliases[0]&&(t=t+"|"+e._aliases[0]);let r="";for(let t=e.parent;t;t=t.parent)r=t.name()+" "+r;return r+t+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){const t=[];if(e.argChoices&&t.push(`choices: ${e.argChoices.map((e=>JSON.stringify(e))).join(", ")}`),void 0!==e.defaultValue){(e.required||e.optional||e.isBoolean()&&"boolean"==typeof e.defaultValue)&&t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`)}return void 0!==e.presetArg&&e.optional&&t.push(`preset: ${JSON.stringify(e.presetArg)}`),void 0!==e.envVar&&t.push(`env: ${e.envVar}`),t.length>0?`${e.description} (${t.join(", ")})`:e.description}argumentDescription(e){const t=[];if(e.argChoices&&t.push(`choices: ${e.argChoices.map((e=>JSON.stringify(e))).join(", ")}`),void 0!==e.defaultValue&&t.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),t.length>0){const r=`(${t.join(", ")})`;return e.description?`${e.description} ${r}`:r}return e.description}formatHelp(e,t){const r=t.padWidth(e,t),n=t.helpWidth||80;function i(e,i){if(i){const a=`${e.padEnd(r+2)}${i}`;return t.wrap(a,n-2,r+2)}return e}function a(e){return e.join("\n").replace(/^/gm," ".repeat(2))}let o=[`Usage: ${t.commandUsage(e)}`,""];const s=t.commandDescription(e);s.length>0&&(o=o.concat([s,""]));const c=t.visibleArguments(e).map((e=>i(t.argumentTerm(e),t.argumentDescription(e))));c.length>0&&(o=o.concat(["Arguments:",a(c),""]));const l=t.visibleOptions(e).map((e=>i(t.optionTerm(e),t.optionDescription(e))));if(l.length>0&&(o=o.concat(["Options:",a(l),""])),this.showGlobalOptions){const r=t.visibleGlobalOptions(e).map((e=>i(t.optionTerm(e),t.optionDescription(e))));r.length>0&&(o=o.concat(["Global Options:",a(r),""]))}const u=t.visibleCommands(e).map((e=>i(t.subcommandTerm(e),t.subcommandDescription(e))));return u.length>0&&(o=o.concat(["Commands:",a(u),""])),o.join("\n")}padWidth(e,t){return Math.max(t.longestOptionTermLength(e,t),t.longestGlobalOptionTermLength(e,t),t.longestSubcommandTermLength(e,t),t.longestArgumentTermLength(e,t))}wrap(e,t,r,n=40){if(e.match(/[\n]\s+/))return e;const i=t-r;if(i<n)return e;const a=e.slice(0,r),o=e.slice(r),s=" ".repeat(r),c=new RegExp(".{1,"+(i-1)+"}([\\s​]|$)|[^\\s​]+?([\\s​]|$)","g");return a+(o.match(c)||[]).map(((e,t)=>("\n"===e.slice(-1)&&(e=e.slice(0,e.length-1)),(t>0?s:"")+e.trimRight()))).join("\n")}}},95790:(e,t,r)=>{const{InvalidArgumentError:n}=r(48056);function i(e){let t,r;const n=e.split(/[ |,]+/);return n.length>1&&!/^[[<]/.test(n[1])&&(t=n.shift()),r=n.shift(),!t&&/^-[^-]$/.test(r)&&(t=r,r=void 0),{shortFlag:t,longFlag:r}}t.Option=class{constructor(e,t){this.flags=e,this.description=t||"",this.required=e.includes("<"),this.optional=e.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(e),this.mandatory=!1;const r=i(e);this.short=r.shortFlag,this.long=r.longFlag,this.negate=!1,this.long&&(this.negate=this.long.startsWith("--no-")),this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0}default(e,t){return this.defaultValue=e,this.defaultValueDescription=t,this}preset(e){return this.presetArg=e,this}conflicts(e){return this.conflictsWith=this.conflictsWith.concat(e),this}implies(e){return this.implied=Object.assign(this.implied||{},e),this}env(e){return this.envVar=e,this}argParser(e){return this.parseArg=e,this}makeOptionMandatory(e=!0){return this.mandatory=!!e,this}hideHelp(e=!0){return this.hidden=!!e,this}_concatValue(e,t){return t!==this.defaultValue&&Array.isArray(t)?t.concat(e):[e]}choices(e){return this.argChoices=e.slice(),this.parseArg=(e,t)=>{if(!this.argChoices.includes(e))throw new n(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(e,t):e},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return this.name().replace(/^no-/,"").split("-").reduce(((e,t)=>e+t[0].toUpperCase()+t.slice(1)))}is(e){return this.short===e||this.long===e}isBoolean(){return!this.required&&!this.optional&&!this.negate}},t.splitOptionFlags=i,t.DualOptions=class{constructor(e){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,e.forEach((e=>{e.negate?this.negativeOptions.set(e.attributeName(),e):this.positiveOptions.set(e.attributeName(),e)})),this.negativeOptions.forEach(((e,t)=>{this.positiveOptions.has(t)&&this.dualOptions.add(t)}))}valueFromOption(e,t){const r=t.attributeName();if(!this.dualOptions.has(r))return!0;const n=this.negativeOptions.get(r).presetArg,i=void 0!==n&&n;return t.negate===(i===e)}}},31812:(e,t)=>{const r=3;t.suggestSimilar=function(e,t){if(!t||0===t.length)return"";t=Array.from(new Set(t));const n=e.startsWith("--");n&&(e=e.slice(2),t=t.map((e=>e.slice(2))));let i=[],a=r;return t.forEach((t=>{if(t.length<=1)return;const n=function(e,t){if(Math.abs(e.length-t.length)>r)return Math.max(e.length,t.length);const n=[];for(let t=0;t<=e.length;t++)n[t]=[t];for(let e=0;e<=t.length;e++)n[0][e]=e;for(let r=1;r<=t.length;r++)for(let i=1;i<=e.length;i++){let a=1;a=e[i-1]===t[r-1]?0:1,n[i][r]=Math.min(n[i-1][r]+1,n[i][r-1]+1,n[i-1][r-1]+a),i>1&&r>1&&e[i-1]===t[r-2]&&e[i-2]===t[r-1]&&(n[i][r]=Math.min(n[i][r],n[i-2][r-2]+1))}return n[e.length][t.length]}(e,t),o=Math.max(e.length,t.length);(o-n)/o>.4&&(n<a?(a=n,i=[t]):n===a&&i.push(t))})),i.sort(((e,t)=>e.localeCompare(t))),n&&(i=i.map((e=>`--${e}`))),i.length>1?`\n(Did you mean one of ${i.join(", ")}?)`:1===i.length?`\n(Did you mean ${i[0]}?)`:""}},88658:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.util=t.tokenizers=t.transforms=t.inspect=t.stringify=t.parse=void 0;const a=r(74289),o=r(48915),s=r(85439),c=r(78369),l=r(59234),u=r(96216),d=r(60721),p=r(65629),f=r(47519),m=r(58314),g=r(94681);i(r(99808),t),t.parse=function(e,t={}){return(0,a.default)(t)(e)},t.stringify=(0,u.default)();var _=r(44033);Object.defineProperty(t,"inspect",{enumerable:!0,get:function(){return _.default}}),t.transforms={flow:m.flow,align:d.default,indent:p.default,crlf:f.default},t.tokenizers={tag:c.default,type:l.default,name:s.default,description:o.default},t.util={rewireSpecs:g.rewireSpecs,rewireSource:g.rewireSource,seedBlock:g.seedBlock,seedTokens:g.seedTokens}},6402:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=/^@\S+/;t.default=function({fence:e="```"}={}){const t=function(e){return"string"==typeof e?t=>t.split(e).length%2==0:e}(e),n=(e,r)=>t(e)?!r:r;return function(e){const t=[[]];let i=!1;for(const a of e)r.test(a.tokens.description)&&!i?t.push([a]):t[t.length-1].push(a),i=n(a.tokens.description,i);return t}}},74289:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(99808),i=r(94681),a=r(6402),o=r(54650),s=r(94517),c=r(78369),l=r(59234),u=r(85439),d=r(48915);t.default=function({startLine:e=0,fence:t="```",spacing:r="compact",markers:p=n.Markers,tokenizers:f=[(0,c.default)(),(0,l.default)(r),(0,u.default)(),(0,d.default)(r)]}={}){if(e<0||e%1>0)throw new Error("Invalid startLine");const m=(0,o.default)({startLine:e,markers:p}),g=(0,a.default)({fence:t}),_=(0,s.default)({tokenizers:f}),h=(0,d.getJoiner)(r);return function(e){const t=[];for(const r of(0,i.splitLines)(e)){const e=m(r);if(null===e)continue;const n=g(e),i=n.slice(1).map(_);t.push({description:h(n[0],p),tags:i,source:e,problems:i.reduce(((e,t)=>e.concat(t.problems)),[])})}return t}}},54650:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(99808),i=r(94681);t.default=function({startLine:e=0,markers:t=n.Markers}={}){let r=null,a=e;return function(e){let n=e;const o=(0,i.seedTokens)();if([o.lineEnd,n]=(0,i.splitCR)(n),[o.start,n]=(0,i.splitSpace)(n),null===r&&n.startsWith(t.start)&&!n.startsWith(t.nostart)&&(r=[],o.delimiter=n.slice(0,t.start.length),n=n.slice(t.start.length),[o.postDelimiter,n]=(0,i.splitSpace)(n)),null===r)return a++,null;const s=n.trimRight().endsWith(t.end);if(""===o.delimiter&&n.startsWith(t.delim)&&!n.startsWith(t.end)&&(o.delimiter=t.delim,n=n.slice(t.delim.length),[o.postDelimiter,n]=(0,i.splitSpace)(n)),s){const e=n.trimRight();o.end=n.slice(e.length-t.end.length),n=e.slice(0,-t.end.length)}if(o.description=n,r.push({number:a,source:e,tokens:o}),a++,s){const e=r.slice();return r=null,e}return null}}},94517:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(94681);t.default=function({tokenizers:e}){return function(t){var r;let i=(0,n.seedSpec)({source:t});for(const t of e)if(i=t(i),null===(r=i.problems[i.problems.length-1])||void 0===r?void 0:r.critical)break;return i}}},48915:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getJoiner=void 0;const n=r(99808);function i(e){return"compact"===e?a:"preserve"===e?c:e}function a(e,t=n.Markers){return e.map((({tokens:{description:e}})=>e.trim())).filter((e=>""!==e)).join(" ")}t.default=function(e="compact",t=n.Markers){const r=i(e);return e=>(e.description=r(e.source,t),e)},t.getJoiner=i;const o=(e,{tokens:t},r)=>""===t.type?e:r,s=({tokens:e})=>(""===e.delimiter?e.start:e.postDelimiter.slice(1))+e.description;function c(e,t=n.Markers){if(0===e.length)return"";""===e[0].tokens.description&&e[0].tokens.delimiter===t.start&&(e=e.slice(1));const r=e[e.length-1];return void 0!==r&&""===r.tokens.description&&r.tokens.end.endsWith(t.end)&&(e=e.slice(0,-1)),(e=e.slice(e.reduce(o,0))).map(s).join("\n")}},85439:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(94681);t.default=function(){const e=(e,{tokens:t},r)=>""===t.type?e:r;return t=>{const{tokens:r}=t.source[t.source.reduce(e,0)],i=r.description.trimLeft(),a=i.split('"');if(a.length>1&&""===a[0]&&a.length%2==1)return t.name=a[1],r.name=`"${a[1]}"`,[r.postName,r.description]=(0,n.splitSpace)(i.slice(r.name.length)),t;let o,s=0,c="",l=!1;for(const e of i){if(0===s&&(0,n.isSpace)(e))break;"["===e&&s++,"]"===e&&s--,c+=e}if(0!==s)return t.problems.push({code:"spec:name:unpaired-brackets",message:"unpaired brackets",line:t.source[0].number,critical:!0}),t;const u=c;if("["===c[0]&&"]"===c[c.length-1]){l=!0,c=c.slice(1,-1);const e=c.split("=");if(c=e[0].trim(),void 0!==e[1]&&(o=e.slice(1).join("=").trim()),""===c)return t.problems.push({code:"spec:name:empty-name",message:"empty name",line:t.source[0].number,critical:!0}),t;if(""===o)return t.problems.push({code:"spec:name:empty-default",message:"empty default value",line:t.source[0].number,critical:!0}),t;if(!((d=o)&&d.startsWith('"')&&d.endsWith('"'))&&/=(?!>)/.test(o))return t.problems.push({code:"spec:name:invalid-default",message:"invalid default value syntax",line:t.source[0].number,critical:!0}),t}var d;return t.optional=l,t.name=c,r.name=u,void 0!==o&&(t.default=o),[r.postName,r.description]=(0,n.splitSpace)(i.slice(r.name.length)),t}}},78369:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return e=>{const{tokens:t}=e.source[0],r=t.description.match(/\s*(@(\S+))(\s*)/);return null===r?(e.problems.push({code:"spec:tag:prefix",message:'tag should start with "@" symbol',line:e.source[0].number,critical:!0}),e):(t.tag=r[1],t.postTag=r[3],t.description=t.description.slice(r[0].length),e.tag=r[2],e)}}},59234:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(94681);t.default=function(e="compact"){const t=function(e){return"compact"===e?e=>e.map(i).join(""):"preserve"===e?e=>e.join("\n"):e}(e);return e=>{let r=0,i=[];for(const[t,{tokens:n}]of e.source.entries()){let a="";if(0===t&&"{"!==n.description[0])return e;for(const e of n.description)if("{"===e&&r++,"}"===e&&r--,a+=e,0===r)break;if(i.push([n,a]),0===r)break}if(0!==r)return e.problems.push({code:"spec:type:unpaired-curlies",message:"unpaired curlies",line:e.source[0].number,critical:!0}),e;const a=[],o=i[0][0].postDelimiter.length;for(const[e,[t,r]]of i.entries())t.type=r,e>0&&(t.type=t.postDelimiter.slice(o)+r,t.postDelimiter=t.postDelimiter.slice(0,o)),[t.postType,t.description]=(0,n.splitSpace)(t.description.slice(r.length)),a.push(t.type);return a[0]=a[0].slice(1),a[a.length-1]=a[a.length-1].slice(0,-1),e.type=t(a),e}};const i=e=>e.trim()},99808:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Markers=void 0,function(e){e.start="/**",e.nostart="/***",e.delim="*",e.end="*/"}(t.Markers||(t.Markers={}))},96216:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return e=>e.source.map((({tokens:e})=>function(e){return e.start+e.delimiter+e.postDelimiter+e.tag+e.postTag+e.type+e.postType+e.name+e.postName+e.description+e.end+e.lineEnd}(e))).join("\n")}},44033:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(94681),i={line:0,start:0,delimiter:0,postDelimiter:0,tag:0,postTag:0,name:0,postName:0,type:0,postType:0,description:0,end:0,lineEnd:0},a={lineEnd:"CR"},o=Object.keys(i),s=e=>(0,n.isSpace)(e)?`{${e.length}}`:e,c=e=>"|"+e.join("|")+"|",l=(e,t)=>Object.keys(t).map((r=>s(t[r]).padEnd(e[r])));t.default=function({source:e}){var t,r;if(0===e.length)return"";const n=Object.assign({},i);for(const e of o)n[e]=(null!==(t=a[e])&&void 0!==t?t:e).length;for(const{number:t,tokens:r}of e){n.line=Math.max(n.line,t.toString().length);for(const e in r)n[e]=Math.max(n[e],s(r[e]).length)}const u=[[],[]];for(const e of o)u[0].push((null!==(r=a[e])&&void 0!==r?r:e).padEnd(n[e]));for(const e of o)u[1].push("-".padEnd(n[e],"-"));for(const{number:t,tokens:r}of e){const e=t.toString().padStart(n.line);u.push([e,...l(n,r)])}return u.map(c).join("\n")}},60721:function(e,t,r){"use strict";var n=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r};Object.defineProperty(t,"__esModule",{value:!0});const i=r(99808),a=r(94681),o={start:0,tag:0,type:0,name:0},s=e=>"".padStart(e," ");t.default=function(e=i.Markers){let t,r=!1;function c(n){const i=Object.assign({},n.tokens);""!==i.tag&&(r=!0);const a=""===i.tag&&""===i.name&&""===i.type&&""===i.description;if(i.end===e.end&&a)return i.start=s(t.start+1),Object.assign(Object.assign({},n),{tokens:i});switch(i.delimiter){case e.start:i.start=s(t.start);break;case e.delim:i.start=s(t.start+1);break;default:i.delimiter="",i.start=s(t.start+2)}if(!r)return i.postDelimiter=""===i.description?"":" ",Object.assign(Object.assign({},n),{tokens:i});const o={delim:!1,tag:!1,type:!1,name:!1};return""===i.description&&(o.name=!0,i.postName="",""===i.name&&(o.type=!0,i.postType="",""===i.type&&(o.tag=!0,i.postTag="",""===i.tag&&(o.delim=!0)))),i.postDelimiter=o.delim?"":" ",o.tag||(i.postTag=s(t.tag-i.tag.length+1)),o.type||(i.postType=s(t.type-i.type.length+1)),o.name||(i.postName=s(t.name-i.name.length+1)),Object.assign(Object.assign({},n),{tokens:i})}return r=>{var{source:s}=r,l=n(r,["source"]);return t=s.reduce(((e=i.Markers)=>(t,{tokens:r})=>({start:r.delimiter===e.start?r.start.length:t.start,tag:Math.max(t.tag,r.tag.length),type:Math.max(t.type,r.type.length),name:Math.max(t.name,r.name.length)}))(e),Object.assign({},o)),(0,a.rewireSource)(Object.assign(Object.assign({},l),{source:s.map(c)}))}}},47519:function(e,t,r){"use strict";var n=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r};Object.defineProperty(t,"__esModule",{value:!0});const i=r(94681);t.default=function(e){function t(t){return Object.assign(Object.assign({},t),{tokens:Object.assign(Object.assign({},t.tokens),{lineEnd:"LF"===e?"":"\r"})})}return e=>{var{source:r}=e,a=n(e,["source"]);return(0,i.rewireSource)(Object.assign(Object.assign({},a),{source:r.map(t)}))}}},65629:function(e,t,r){"use strict";var n=this&&this.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r};Object.defineProperty(t,"__esModule",{value:!0});const i=r(94681);t.default=function(e){let t;const r=r=>{if(void 0===t){const n=e-r.length;t=n>0?(e=>{const t="".padStart(e," ");return e=>e+t})(n):(e=>t=>t.slice(e))(-n)}return t(r)},a=e=>Object.assign(Object.assign({},e),{tokens:Object.assign(Object.assign({},e.tokens),{start:r(e.tokens.start)})});return e=>{var{source:t}=e,r=n(e,["source"]);return(0,i.rewireSource)(Object.assign(Object.assign({},r),{source:t.map(a)}))}}},58314:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.flow=void 0,t.flow=function(...e){return t=>e.reduce(((e,t)=>t(e)),t)}},94681:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.rewireSpecs=t.rewireSource=t.seedTokens=t.seedSpec=t.seedBlock=t.splitLines=t.splitSpace=t.splitCR=t.hasCR=t.isSpace=void 0,t.isSpace=function(e){return/^\s+$/.test(e)},t.hasCR=function(e){return/\r$/.test(e)},t.splitCR=function(e){const t=e.match(/\r+$/);return null==t?["",e]:[e.slice(-t[0].length),e.slice(0,-t[0].length)]},t.splitSpace=function(e){const t=e.match(/^\s+/);return null==t?["",e]:[e.slice(0,t[0].length),e.slice(t[0].length)]},t.splitLines=function(e){return e.split(/\n/)},t.seedBlock=function(e={}){return Object.assign({description:"",tags:[],source:[],problems:[]},e)},t.seedSpec=function(e={}){return Object.assign({tag:"",name:"",type:"",optional:!1,description:"",problems:[],source:[]},e)},t.seedTokens=function(e={}){return Object.assign({start:"",delimiter:"",postDelimiter:"",tag:"",postTag:"",name:"",postName:"",type:"",postType:"",description:"",end:"",lineEnd:""},e)},t.rewireSource=function(e){const t=e.source.reduce(((e,t)=>e.set(t.number,t)),new Map);for(const r of e.tags)r.source=r.source.map((e=>t.get(e.number)));return e},t.rewireSpecs=function(e){const t=e.tags.reduce(((e,t)=>t.source.reduce(((e,t)=>e.set(t.number,t)),e)),new Map);return e.source=e.source.map((e=>t.get(e.number)||e)),e}},1641:(e,t,r)=>{"use strict";function n(e,...t){return(...r)=>e(...t,...r)}function i(e){return function(...t){var r=t.pop();return e.call(this,t,r)}}r.r(t),r.d(t,{all:()=>ge,allLimit:()=>_e,allSeries:()=>he,any:()=>rt,anyLimit:()=>nt,anySeries:()=>it,apply:()=>n,applyEach:()=>P,applyEachSeries:()=>O,asyncify:()=>d,auto:()=>L,autoInject:()=>q,cargo:()=>K,cargoQueue:()=>W,compose:()=>Y,concat:()=>Z,concatLimit:()=>Q,concatSeries:()=>ee,constant:()=>te,default:()=>_t,detect:()=>ne,detectLimit:()=>ie,detectSeries:()=>ae,dir:()=>se,doDuring:()=>ce,doUntil:()=>le,doWhilst:()=>ce,during:()=>ft,each:()=>de,eachLimit:()=>pe,eachOf:()=>A,eachOfLimit:()=>w,eachOfSeries:()=>I,eachSeries:()=>fe,ensureAsync:()=>me,every:()=>ge,everyLimit:()=>_e,everySeries:()=>he,filter:()=>ke,filterLimit:()=>xe,filterSeries:()=>Ee,find:()=>ne,findLimit:()=>ie,findSeries:()=>ae,flatMap:()=>Z,flatMapLimit:()=>Q,flatMapSeries:()=>ee,foldl:()=>G,foldr:()=>Je,forEach:()=>de,forEachLimit:()=>pe,forEachOf:()=>A,forEachOfLimit:()=>w,forEachOfSeries:()=>I,forEachSeries:()=>fe,forever:()=>Se,groupBy:()=>we,groupByLimit:()=>De,groupBySeries:()=>Te,inject:()=>G,log:()=>Ce,map:()=>N,mapLimit:()=>X,mapSeries:()=>F,mapValues:()=>Ne,mapValuesLimit:()=>Ae,mapValuesSeries:()=>Pe,memoize:()=>Ie,nextTick:()=>Fe,parallel:()=>Re,parallelLimit:()=>Me,priorityQueue:()=>Ue,queue:()=>Le,race:()=>qe,reduce:()=>G,reduceRight:()=>Je,reflect:()=>Ve,reflectAll:()=>He,reject:()=>We,rejectLimit:()=>Ge,rejectSeries:()=>$e,retry:()=>Ze,retryable:()=>et,select:()=>ke,selectLimit:()=>xe,selectSeries:()=>Ee,seq:()=>$,series:()=>tt,setImmediate:()=>u,some:()=>rt,someLimit:()=>nt,someSeries:()=>it,sortBy:()=>at,timeout:()=>ot,times:()=>ct,timesLimit:()=>st,timesSeries:()=>lt,transform:()=>ut,tryEach:()=>dt,unmemoize:()=>pt,until:()=>mt,waterfall:()=>gt,whilst:()=>ft,wrapSync:()=>d});var a="function"==typeof queueMicrotask&&queueMicrotask,o="function"==typeof setImmediate&&setImmediate,s="object"==typeof process&&"function"==typeof process.nextTick;function c(e){setTimeout(e,0)}function l(e){return(t,...r)=>e((()=>t(...r)))}var u=l(a?queueMicrotask:o?setImmediate:s?process.nextTick:c);function d(e){return m(e)?function(...t){const r=t.pop();return p(e.apply(this,t),r)}:i((function(t,r){var n;try{n=e.apply(this,t)}catch(e){return r(e)}if(n&&"function"==typeof n.then)return p(n,r);r(null,n)}))}function p(e,t){return e.then((e=>{f(t,null,e)}),(e=>{f(t,e&&(e instanceof Error||e.message)?e:new Error(e))}))}function f(e,t,r){try{e(t,r)}catch(e){u((e=>{throw e}),e)}}function m(e){return"AsyncFunction"===e[Symbol.toStringTag]}function g(e){if("function"!=typeof e)throw new Error("expected a function");return m(e)?d(e):e}function _(e,t){if(t||(t=e.length),!t)throw new Error("arity is undefined");return function(...r){return"function"==typeof r[t-1]?e.apply(this,r):new Promise(((n,i)=>{r[t-1]=(e,...t)=>{if(e)return i(e);n(t.length>1?t:t[0])},e.apply(this,r)}))}}function h(e){return function(t,...r){return _((function(n){var i=this;return e(t,((e,t)=>{g(e).apply(i,r.concat(t))}),n)}))}}function y(e,t,r,n){t=t||[];var i=[],a=0,o=g(r);return e(t,((e,t,r)=>{var n=a++;o(e,((e,t)=>{i[n]=t,r(e)}))}),(e=>{n(e,i)}))}function v(e){return e&&"number"==typeof e.length&&e.length>=0&&e.length%1==0}var b={};function k(e){function t(...t){if(null!==e){var r=e;e=null,r.apply(this,t)}}return Object.assign(t,e),t}function x(e){if(v(e))return function(e){var t=-1,r=e.length;return function(){return++t<r?{value:e[t],key:t}:null}}(e);var t,r,n,i,a=function(e){return e[Symbol.iterator]&&e[Symbol.iterator]()}(e);return a?function(e){var t=-1;return function(){var r=e.next();return r.done?null:(t++,{value:r.value,key:t})}}(a):(r=(t=e)?Object.keys(t):[],n=-1,i=r.length,function e(){var a=r[++n];return"__proto__"===a?e():n<i?{value:t[a],key:a}:null})}function E(e){return function(...t){if(null===e)throw new Error("Callback was already called.");var r=e;e=null,r.apply(this,t)}}function S(e,t,r,n){let i=!1,a=!1,o=!1,s=0,c=0;function l(){s>=t||o||i||(o=!0,e.next().then((({value:e,done:t})=>{if(!a&&!i){if(o=!1,t)return i=!0,void(s<=0&&n(null));s++,r(e,c,u),c++,l()}})).catch(d))}function u(e,t){if(s-=1,!a)return e?d(e):!1===e?(i=!0,void(a=!0)):t===b||i&&s<=0?(i=!0,n(null)):void l()}function d(e){a||(o=!1,i=!0,n(e))}l()}var D=e=>(t,r,n)=>{if(n=k(n),e<=0)throw new RangeError("concurrency limit cannot be less than 1");if(!t)return n(null);if("AsyncGenerator"===t[Symbol.toStringTag])return S(t,e,r,n);if(function(e){return"function"==typeof e[Symbol.asyncIterator]}(t))return S(t[Symbol.asyncIterator](),e,r,n);var i=x(t),a=!1,o=!1,s=0,c=!1;function l(e,t){if(!o)if(s-=1,e)a=!0,n(e);else if(!1===e)a=!0,o=!0;else{if(t===b||a&&s<=0)return a=!0,n(null);c||u()}}function u(){for(c=!0;s<e&&!a;){var t=i();if(null===t)return a=!0,void(s<=0&&n(null));s+=1,r(t.value,t.key,E(l))}c=!1}u()};var w=_((function(e,t,r,n){return D(t)(e,g(r),n)}),4);function T(e,t,r){r=k(r);var n=0,i=0,{length:a}=e,o=!1;function s(e,t){!1===e&&(o=!0),!0!==o&&(e?r(e):++i!==a&&t!==b||r(null))}for(0===a&&r(null);n<a;n++)t(e[n],n,E(s))}function C(e,t,r){return w(e,1/0,t,r)}var A=_((function(e,t,r){return(v(e)?T:C)(e,g(t),r)}),3);var N=_((function(e,t,r){return y(A,e,t,r)}),3),P=h(N);var I=_((function(e,t,r){return w(e,1,t,r)}),3);var F=_((function(e,t,r){return y(I,e,t,r)}),3),O=h(F);const R=Symbol("promiseCallback");function M(){let e,t;function r(r,...n){if(r)return t(r);e(n.length>1?n:n[0])}return r[R]=new Promise(((r,n)=>{e=r,t=n})),r}function L(e,t,r){"number"!=typeof t&&(r=t,t=null),r=k(r||M());var n=Object.keys(e).length;if(!n)return r(null);t||(t=n);var i={},a=0,o=!1,s=!1,c=Object.create(null),l=[],u=[],d={};function p(e,t){l.push((()=>function(e,t){if(s)return;var n=E(((t,...n)=>{if(a--,!1!==t)if(n.length<2&&([n]=n),t){var l={};if(Object.keys(i).forEach((e=>{l[e]=i[e]})),l[e]=n,s=!0,c=Object.create(null),o)return;r(t,l)}else i[e]=n,(c[e]||[]).forEach((e=>e())),f();else o=!0}));a++;var l=g(t[t.length-1]);t.length>1?l(i,n):l(n)}(e,t)))}function f(){if(!o){if(0===l.length&&0===a)return r(null,i);for(;l.length&&a<t;){l.shift()()}}}function m(t){var r=[];return Object.keys(e).forEach((n=>{const i=e[n];Array.isArray(i)&&i.indexOf(t)>=0&&r.push(n)})),r}return Object.keys(e).forEach((t=>{var r=e[t];if(!Array.isArray(r))return p(t,[r]),void u.push(t);var n=r.slice(0,r.length-1),i=n.length;if(0===i)return p(t,r),void u.push(t);d[t]=i,n.forEach((a=>{if(!e[a])throw new Error("async.auto task `"+t+"` has a non-existent dependency `"+a+"` in "+n.join(", "));!function(e,t){var r=c[e];r||(r=c[e]=[]);r.push(t)}(a,(()=>{0===--i&&p(t,r)}))}))})),function(){var e=0;for(;u.length;)e++,m(u.pop()).forEach((e=>{0==--d[e]&&u.push(e)}));if(e!==n)throw new Error("async.auto cannot execute tasks due to a recursive dependency")}(),f(),r[R]}var j=/^(?:async\s+)?(?:function)?\s*\w*\s*\(\s*([^)]+)\s*\)(?:\s*{)/,B=/^(?:async\s+)?\(?\s*([^)=]+)\s*\)?(?:\s*=>)/,z=/,/,U=/(=.+)?(\s*)$/;function q(e,t){var r={};return Object.keys(e).forEach((t=>{var n,i=e[t],a=m(i),o=!a&&1===i.length||a&&0===i.length;if(Array.isArray(i))n=[...i],i=n.pop(),r[t]=n.concat(n.length>0?s:i);else if(o)r[t]=i;else{if(n=function(e){const t=function(e){let t="",r=0,n=e.indexOf("*/");for(;r<e.length;)if("/"===e[r]&&"/"===e[r+1]){let t=e.indexOf("\n",r);r=-1===t?e.length:t}else if(-1!==n&&"/"===e[r]&&"*"===e[r+1]){let i=e.indexOf("*/",r);-1!==i?(r=i+2,n=e.indexOf("*/",r)):(t+=e[r],r++)}else t+=e[r],r++;return t}(e.toString());let r=t.match(j);if(r||(r=t.match(B)),!r)throw new Error("could not parse args in autoInject\nSource:\n"+t);let[,n]=r;return n.replace(/\s/g,"").split(z).map((e=>e.replace(U,"").trim()))}(i),0===i.length&&!a&&0===n.length)throw new Error("autoInject task functions require explicit parameters.");a||n.pop(),r[t]=n.concat(s)}function s(e,t){var r=n.map((t=>e[t]));r.push(t),g(i)(...r)}})),L(r,t)}class J{constructor(){this.head=this.tail=null,this.length=0}removeLink(e){return e.prev?e.prev.next=e.next:this.head=e.next,e.next?e.next.prev=e.prev:this.tail=e.prev,e.prev=e.next=null,this.length-=1,e}empty(){for(;this.head;)this.shift();return this}insertAfter(e,t){t.prev=e,t.next=e.next,e.next?e.next.prev=t:this.tail=t,e.next=t,this.length+=1}insertBefore(e,t){t.prev=e.prev,t.next=e,e.prev?e.prev.next=t:this.head=t,e.prev=t,this.length+=1}unshift(e){this.head?this.insertBefore(this.head,e):V(this,e)}push(e){this.tail?this.insertAfter(this.tail,e):V(this,e)}shift(){return this.head&&this.removeLink(this.head)}pop(){return this.tail&&this.removeLink(this.tail)}toArray(){return[...this]}*[Symbol.iterator](){for(var e=this.head;e;)yield e.data,e=e.next}remove(e){for(var t=this.head;t;){var{next:r}=t;e(t)&&this.removeLink(t),t=r}return this}}function V(e,t){e.length=1,e.head=e.tail=t}function H(e,t,r){if(null==t)t=1;else if(0===t)throw new RangeError("Concurrency must not be zero");var n=g(e),i=0,a=[];const o={error:[],drain:[],saturated:[],unsaturated:[],empty:[]};function s(e,t){return e?t?void(o[e]=o[e].filter((e=>e!==t))):o[e]=[]:Object.keys(o).forEach((e=>o[e]=[]))}function c(e,...t){o[e].forEach((e=>e(...t)))}var l=!1;function d(e,t,r,n){if(null!=n&&"function"!=typeof n)throw new Error("task callback must be a function");var i,a;function o(e,...t){return e?r?a(e):i():t.length<=1?i(t[0]):void i(t)}h.started=!0;var s=h._createTaskItem(e,r?o:n||o);if(t?h._tasks.unshift(s):h._tasks.push(s),l||(l=!0,u((()=>{l=!1,h.process()}))),r||!n)return new Promise(((e,t)=>{i=e,a=t}))}function p(e){return function(t,...r){i-=1;for(var n=0,o=e.length;n<o;n++){var s=e[n],l=a.indexOf(s);0===l?a.shift():l>0&&a.splice(l,1),s.callback(t,...r),null!=t&&c("error",t,s.data)}i<=h.concurrency-h.buffer&&c("unsaturated"),h.idle()&&c("drain"),h.process()}}function f(e){return!(0!==e.length||!h.idle())&&(u((()=>c("drain"))),!0)}const m=e=>t=>{if(!t)return new Promise(((t,r)=>{!function(e,t){const r=(...n)=>{s(e,r),t(...n)};o[e].push(r)}(e,((e,n)=>{if(e)return r(e);t(n)}))}));s(e),function(e,t){o[e].push(t)}(e,t)};var _=!1,h={_tasks:new J,_createTaskItem:(e,t)=>({data:e,callback:t}),*[Symbol.iterator](){yield*h._tasks[Symbol.iterator]()},concurrency:t,payload:r,buffer:t/4,started:!1,paused:!1,push(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!1,!1,t)))}return d(e,!1,!1,t)},pushAsync(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!1,!0,t)))}return d(e,!1,!0,t)},kill(){s(),h._tasks.empty()},unshift(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!0,!1,t)))}return d(e,!0,!1,t)},unshiftAsync(e,t){if(Array.isArray(e)){if(f(e))return;return e.map((e=>d(e,!0,!0,t)))}return d(e,!0,!0,t)},remove(e){h._tasks.remove(e)},process(){if(!_){for(_=!0;!h.paused&&i<h.concurrency&&h._tasks.length;){var e=[],t=[],r=h._tasks.length;h.payload&&(r=Math.min(r,h.payload));for(var o=0;o<r;o++){var s=h._tasks.shift();e.push(s),a.push(s),t.push(s.data)}i+=1,0===h._tasks.length&&c("empty"),i===h.concurrency&&c("saturated");var l=E(p(e));n(t,l)}_=!1}},length:()=>h._tasks.length,running:()=>i,workersList:()=>a,idle:()=>h._tasks.length+i===0,pause(){h.paused=!0},resume(){!1!==h.paused&&(h.paused=!1,u(h.process))}};return Object.defineProperties(h,{saturated:{writable:!1,value:m("saturated")},unsaturated:{writable:!1,value:m("unsaturated")},empty:{writable:!1,value:m("empty")},drain:{writable:!1,value:m("drain")},error:{writable:!1,value:m("error")}}),h}function K(e,t){return H(e,1,t)}function W(e,t,r){return H(e,t,r)}var G=_((function(e,t,r,n){n=k(n);var i=g(r);return I(e,((e,r,n)=>{i(t,e,((e,r)=>{t=r,n(e)}))}),(e=>n(e,t)))}),4);function $(...e){var t=e.map(g);return function(...e){var r=this,n=e[e.length-1];return"function"==typeof n?e.pop():n=M(),G(t,e,((e,t,n)=>{t.apply(r,e.concat(((e,...t)=>{n(e,t)})))}),((e,t)=>n(e,...t))),n[R]}}function Y(...e){return $(...e.reverse())}var X=_((function(e,t,r,n){return y(D(t),e,r,n)}),4);var Q=_((function(e,t,r,n){var i=g(r);return X(e,t,((e,t)=>{i(e,((e,...r)=>e?t(e):t(e,r)))}),((e,t)=>{for(var r=[],i=0;i<t.length;i++)t[i]&&(r=r.concat(...t[i]));return n(e,r)}))}),4);var Z=_((function(e,t,r){return Q(e,1/0,t,r)}),3);var ee=_((function(e,t,r){return Q(e,1,t,r)}),3);function te(...e){return function(...t){return t.pop()(null,...e)}}function re(e,t){return(r,n,i,a)=>{var o,s=!1;const c=g(i);r(n,((r,n,i)=>{c(r,((n,a)=>n||!1===n?i(n):e(a)&&!o?(s=!0,o=t(!0,r),i(null,b)):void i()))}),(e=>{if(e)return a(e);a(null,s?o:t(!1))}))}}var ne=_((function(e,t,r){return re((e=>e),((e,t)=>t))(A,e,t,r)}),3);var ie=_((function(e,t,r,n){return re((e=>e),((e,t)=>t))(D(t),e,r,n)}),4);var ae=_((function(e,t,r){return re((e=>e),((e,t)=>t))(D(1),e,t,r)}),3);function oe(e){return(t,...r)=>g(t)(...r,((t,...r)=>{"object"==typeof console&&(t?console.error&&console.error(t):console[e]&&r.forEach((t=>console[e](t))))}))}var se=oe("dir");var ce=_((function(e,t,r){r=E(r);var n,i=g(e),a=g(t);function o(e,...t){if(e)return r(e);!1!==e&&(n=t,a(...t,s))}function s(e,t){return e?r(e):!1!==e?t?void i(o):r(null,...n):void 0}return s(null,!0)}),3);function le(e,t,r){const n=g(t);return ce(e,((...e)=>{const t=e.pop();n(...e,((e,r)=>t(e,!r)))}),r)}function ue(e){return(t,r,n)=>e(t,n)}var de=_((function(e,t,r){return A(e,ue(g(t)),r)}),3);var pe=_((function(e,t,r,n){return D(t)(e,ue(g(r)),n)}),4);var fe=_((function(e,t,r){return pe(e,1,t,r)}),3);function me(e){return m(e)?e:function(...t){var r=t.pop(),n=!0;t.push(((...e)=>{n?u((()=>r(...e))):r(...e)})),e.apply(this,t),n=!1}}var ge=_((function(e,t,r){return re((e=>!e),(e=>!e))(A,e,t,r)}),3);var _e=_((function(e,t,r,n){return re((e=>!e),(e=>!e))(D(t),e,r,n)}),4);var he=_((function(e,t,r){return re((e=>!e),(e=>!e))(I,e,t,r)}),3);function ye(e,t,r,n){var i=new Array(t.length);e(t,((e,t,n)=>{r(e,((e,r)=>{i[t]=!!r,n(e)}))}),(e=>{if(e)return n(e);for(var r=[],a=0;a<t.length;a++)i[a]&&r.push(t[a]);n(null,r)}))}function ve(e,t,r,n){var i=[];e(t,((e,t,n)=>{r(e,((r,a)=>{if(r)return n(r);a&&i.push({index:t,value:e}),n(r)}))}),(e=>{if(e)return n(e);n(null,i.sort(((e,t)=>e.index-t.index)).map((e=>e.value)))}))}function be(e,t,r,n){return(v(t)?ye:ve)(e,t,g(r),n)}var ke=_((function(e,t,r){return be(A,e,t,r)}),3);var xe=_((function(e,t,r,n){return be(D(t),e,r,n)}),4);var Ee=_((function(e,t,r){return be(I,e,t,r)}),3);var Se=_((function(e,t){var r=E(t),n=g(me(e));return function e(t){if(t)return r(t);!1!==t&&n(e)}()}),2);var De=_((function(e,t,r,n){var i=g(r);return X(e,t,((e,t)=>{i(e,((r,n)=>r?t(r):t(r,{key:n,val:e})))}),((e,t)=>{for(var r={},{hasOwnProperty:i}=Object.prototype,a=0;a<t.length;a++)if(t[a]){var{key:o}=t[a],{val:s}=t[a];i.call(r,o)?r[o].push(s):r[o]=[s]}return n(e,r)}))}),4);function we(e,t,r){return De(e,1/0,t,r)}function Te(e,t,r){return De(e,1,t,r)}var Ce=oe("log");var Ae=_((function(e,t,r,n){n=k(n);var i={},a=g(r);return D(t)(e,((e,t,r)=>{a(e,t,((e,n)=>{if(e)return r(e);i[t]=n,r(e)}))}),(e=>n(e,i)))}),4);function Ne(e,t,r){return Ae(e,1/0,t,r)}function Pe(e,t,r){return Ae(e,1,t,r)}function Ie(e,t=(e=>e)){var r=Object.create(null),n=Object.create(null),a=g(e),o=i(((e,i)=>{var o=t(...e);o in r?u((()=>i(null,...r[o]))):o in n?n[o].push(i):(n[o]=[i],a(...e,((e,...t)=>{e||(r[o]=t);var i=n[o];delete n[o];for(var a=0,s=i.length;a<s;a++)i[a](e,...t)})))}));return o.memo=r,o.unmemoized=e,o}var Fe=l(s?process.nextTick:o?setImmediate:c),Oe=_(((e,t,r)=>{var n=v(t)?[]:{};e(t,((e,t,r)=>{g(e)(((e,...i)=>{i.length<2&&([i]=i),n[t]=i,r(e)}))}),(e=>r(e,n)))}),3);function Re(e,t){return Oe(A,e,t)}function Me(e,t,r){return Oe(D(t),e,r)}function Le(e,t){var r=g(e);return H(((e,t)=>{r(e[0],t)}),t,1)}class je{constructor(){this.heap=[],this.pushCount=Number.MIN_SAFE_INTEGER}get length(){return this.heap.length}empty(){return this.heap=[],this}percUp(e){let t;for(;e>0&&ze(this.heap[e],this.heap[t=Be(e)]);){let r=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=r,e=t}}percDown(e){let t;for(;(t=1+(e<<1))<this.heap.length&&(t+1<this.heap.length&&ze(this.heap[t+1],this.heap[t])&&(t+=1),!ze(this.heap[e],this.heap[t]));){let r=this.heap[e];this.heap[e]=this.heap[t],this.heap[t]=r,e=t}}push(e){e.pushCount=++this.pushCount,this.heap.push(e),this.percUp(this.heap.length-1)}unshift(e){return this.heap.push(e)}shift(){let[e]=this.heap;return this.heap[0]=this.heap[this.heap.length-1],this.heap.pop(),this.percDown(0),e}toArray(){return[...this]}*[Symbol.iterator](){for(let e=0;e<this.heap.length;e++)yield this.heap[e].data}remove(e){let t=0;for(let r=0;r<this.heap.length;r++)e(this.heap[r])||(this.heap[t]=this.heap[r],t++);this.heap.splice(t);for(let e=Be(this.heap.length-1);e>=0;e--)this.percDown(e);return this}}function Be(e){return(e+1>>1)-1}function ze(e,t){return e.priority!==t.priority?e.priority<t.priority:e.pushCount<t.pushCount}function Ue(e,t){var r=Le(e,t),{push:n,pushAsync:i}=r;function a(e,t){return Array.isArray(e)?e.map((e=>({data:e,priority:t}))):{data:e,priority:t}}return r._tasks=new je,r._createTaskItem=({data:e,priority:t},r)=>({data:e,priority:t,callback:r}),r.push=function(e,t=0,r){return n(a(e,t),r)},r.pushAsync=function(e,t=0,r){return i(a(e,t),r)},delete r.unshift,delete r.unshiftAsync,r}var qe=_((function(e,t){if(t=k(t),!Array.isArray(e))return t(new TypeError("First argument to race must be an array of functions"));if(!e.length)return t();for(var r=0,n=e.length;r<n;r++)g(e[r])(t)}),2);function Je(e,t,r,n){var i=[...e].reverse();return G(i,t,r,n)}function Ve(e){var t=g(e);return i((function(e,r){return e.push(((e,...t)=>{let n={};if(e&&(n.error=e),t.length>0){var i=t;t.length<=1&&([i]=t),n.value=i}r(null,n)})),t.apply(this,e)}))}function He(e){var t;return Array.isArray(e)?t=e.map(Ve):(t={},Object.keys(e).forEach((r=>{t[r]=Ve.call(this,e[r])}))),t}function Ke(e,t,r,n){const i=g(r);return be(e,t,((e,t)=>{i(e,((e,r)=>{t(e,!r)}))}),n)}var We=_((function(e,t,r){return Ke(A,e,t,r)}),3);var Ge=_((function(e,t,r,n){return Ke(D(t),e,r,n)}),4);var $e=_((function(e,t,r){return Ke(I,e,t,r)}),3);function Ye(e){return function(){return e}}const Xe=5,Qe=0;function Ze(e,t,r){var n={times:Xe,intervalFunc:Ye(Qe)};if(arguments.length<3&&"function"==typeof e?(r=t||M(),t=e):(!function(e,t){if("object"==typeof t)e.times=+t.times||Xe,e.intervalFunc="function"==typeof t.interval?t.interval:Ye(+t.interval||Qe),e.errorFilter=t.errorFilter;else{if("number"!=typeof t&&"string"!=typeof t)throw new Error("Invalid arguments for async.retry");e.times=+t||Xe}}(n,e),r=r||M()),"function"!=typeof t)throw new Error("Invalid arguments for async.retry");var i=g(t),a=1;return function e(){i(((t,...i)=>{!1!==t&&(t&&a++<n.times&&("function"!=typeof n.errorFilter||n.errorFilter(t))?setTimeout(e,n.intervalFunc(a-1)):r(t,...i))}))}(),r[R]}function et(e,t){t||(t=e,e=null);let r=e&&e.arity||t.length;m(t)&&(r+=1);var n=g(t);return i(((t,i)=>{function a(e){n(...t,e)}return(t.length<r-1||null==i)&&(t.push(i),i=M()),e?Ze(e,a,i):Ze(a,i),i[R]}))}function tt(e,t){return Oe(I,e,t)}var rt=_((function(e,t,r){return re(Boolean,(e=>e))(A,e,t,r)}),3);var nt=_((function(e,t,r,n){return re(Boolean,(e=>e))(D(t),e,r,n)}),4);var it=_((function(e,t,r){return re(Boolean,(e=>e))(I,e,t,r)}),3);var at=_((function(e,t,r){var n=g(t);return N(e,((e,t)=>{n(e,((r,n)=>{if(r)return t(r);t(r,{value:e,criteria:n})}))}),((e,t)=>{if(e)return r(e);r(null,t.sort(i).map((e=>e.value)))}));function i(e,t){var r=e.criteria,n=t.criteria;return r<n?-1:r>n?1:0}}),3);function ot(e,t,r){var n=g(e);return i(((i,a)=>{var o,s=!1;i.push(((...e)=>{s||(a(...e),clearTimeout(o))})),o=setTimeout((function(){var t=e.name||"anonymous",n=new Error('Callback function "'+t+'" timed out.');n.code="ETIMEDOUT",r&&(n.info=r),s=!0,a(n)}),t),n(...i)}))}function st(e,t,r,n){var i=g(r);return X(function(e){for(var t=Array(e);e--;)t[e]=e;return t}(e),t,i,n)}function ct(e,t,r){return st(e,1/0,t,r)}function lt(e,t,r){return st(e,1,t,r)}function ut(e,t,r,n){arguments.length<=3&&"function"==typeof t&&(n=r,r=t,t=Array.isArray(e)?[]:{}),n=k(n||M());var i=g(r);return A(e,((e,r,n)=>{i(t,e,r,n)}),(e=>n(e,t))),n[R]}var dt=_((function(e,t){var r,n=null;return fe(e,((e,t)=>{g(e)(((e,...i)=>{if(!1===e)return t(e);i.length<2?[r]=i:r=i,n=e,t(e?null:{})}))}),(()=>t(n,r)))}));function pt(e){return(...t)=>(e.unmemoized||e)(...t)}var ft=_((function(e,t,r){r=E(r);var n=g(t),i=g(e),a=[];function o(e,...t){if(e)return r(e);a=t,!1!==e&&i(s)}function s(e,t){return e?r(e):!1!==e?t?void n(o):r(null,...a):void 0}return i(s)}),3);function mt(e,t,r){const n=g(e);return ft((e=>n(((t,r)=>e(t,!r)))),t,r)}var gt=_((function(e,t){if(t=k(t),!Array.isArray(e))return t(new Error("First argument to waterfall must be an array of functions"));if(!e.length)return t();var r=0;function n(t){g(e[r++])(...t,E(i))}function i(i,...a){if(!1!==i)return i||r===e.length?t(i,...a):void n(a)}n([])})),_t={apply:n,applyEach:P,applyEachSeries:O,asyncify:d,auto:L,autoInject:q,cargo:K,cargoQueue:W,compose:Y,concat:Z,concatLimit:Q,concatSeries:ee,constant:te,detect:ne,detectLimit:ie,detectSeries:ae,dir:se,doUntil:le,doWhilst:ce,each:de,eachLimit:pe,eachOf:A,eachOfLimit:w,eachOfSeries:I,eachSeries:fe,ensureAsync:me,every:ge,everyLimit:_e,everySeries:he,filter:ke,filterLimit:xe,filterSeries:Ee,forever:Se,groupBy:we,groupByLimit:De,groupBySeries:Te,log:Ce,map:N,mapLimit:X,mapSeries:F,mapValues:Ne,mapValuesLimit:Ae,mapValuesSeries:Pe,memoize:Ie,nextTick:Fe,parallel:Re,parallelLimit:Me,priorityQueue:Ue,queue:Le,race:qe,reduce:G,reduceRight:Je,reflect:Ve,reflectAll:He,reject:We,rejectLimit:Ge,rejectSeries:$e,retry:Ze,retryable:et,seq:$,series:tt,setImmediate:u,some:rt,someLimit:nt,someSeries:it,sortBy:at,timeout:ot,times:ct,timesLimit:st,timesSeries:lt,transform:ut,tryEach:dt,unmemoize:pt,until:mt,waterfall:gt,whilst:ft,all:ge,allLimit:_e,allSeries:he,any:rt,anyLimit:nt,anySeries:it,find:ne,findLimit:ie,findSeries:ae,flatMap:Z,flatMapLimit:Q,flatMapSeries:ee,forEach:de,forEachSeries:fe,forEachLimit:pe,forEachOf:A,forEachOfSeries:I,forEachOfLimit:w,inject:G,foldl:G,foldr:Je,select:ke,selectLimit:xe,selectSeries:Ee,wrapSync:d,during:ft,doDuring:ce}},15876:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>M});var n={Space_Separator:/[\u1680\u2000-\u200A\u202F\u205F\u3000]/,ID_Start:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\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\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\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-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\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]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/,ID_Continue:/[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\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\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\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\u09FC\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\u0AF9-\u0AFF\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\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\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\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\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-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\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-\u191E\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\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\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\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-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\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-\uFE2F\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]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/},i={isSpaceSeparator:e=>"string"==typeof e&&n.Space_Separator.test(e),isIdStartChar:e=>"string"==typeof e&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||"$"===e||"_"===e||n.ID_Start.test(e)),isIdContinueChar:e=>"string"==typeof e&&(e>="a"&&e<="z"||e>="A"&&e<="Z"||e>="0"&&e<="9"||"$"===e||"_"===e||"‌"===e||"‍"===e||n.ID_Continue.test(e)),isDigit:e=>"string"==typeof e&&/[0-9]/.test(e),isHexDigit:e=>"string"==typeof e&&/[0-9A-Fa-f]/.test(e)};let a,o,s,c,l,u,d,p,f;function m(e,t,r){const n=e[t];if(null!=n&&"object"==typeof n)if(Array.isArray(n))for(let e=0;e<n.length;e++){const t=String(e),i=m(n,t,r);void 0===i?delete n[t]:Object.defineProperty(n,t,{value:i,writable:!0,enumerable:!0,configurable:!0})}else for(const e in n){const t=m(n,e,r);void 0===t?delete n[e]:Object.defineProperty(n,e,{value:t,writable:!0,enumerable:!0,configurable:!0})}return r.call(e,t,n)}let g,_,h,y,v;function b(){for(g="default",_="",h=!1,y=1;;){v=k();const e=E[g]();if(e)return e}}function k(){if(a[c])return String.fromCodePoint(a.codePointAt(c))}function x(){const e=k();return"\n"===e?(l++,u=0):e?u+=e.length:u++,e&&(c+=e.length),e}const E={default(){switch(v){case"\t":case"\v":case"\f":case" ":case" ":case"\ufeff":case"\n":case"\r":case"\u2028":case"\u2029":return void x();case"/":return x(),void(g="comment");case void 0:return x(),S("eof")}if(!i.isSpaceSeparator(v))return E[o]();x()},comment(){switch(v){case"*":return x(),void(g="multiLineComment");case"/":return x(),void(g="singleLineComment")}throw N(x())},multiLineComment(){switch(v){case"*":return x(),void(g="multiLineCommentAsterisk");case void 0:throw N(x())}x()},multiLineCommentAsterisk(){switch(v){case"*":return void x();case"/":return x(),void(g="default");case void 0:throw N(x())}x(),g="multiLineComment"},singleLineComment(){switch(v){case"\n":case"\r":case"\u2028":case"\u2029":return x(),void(g="default");case void 0:return x(),S("eof")}x()},value(){switch(v){case"{":case"[":return S("punctuator",x());case"n":return x(),D("ull"),S("null",null);case"t":return x(),D("rue"),S("boolean",!0);case"f":return x(),D("alse"),S("boolean",!1);case"-":case"+":return"-"===x()&&(y=-1),void(g="sign");case".":return _=x(),void(g="decimalPointLeading");case"0":return _=x(),void(g="zero");case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return _=x(),void(g="decimalInteger");case"I":return x(),D("nfinity"),S("numeric",1/0);case"N":return x(),D("aN"),S("numeric",NaN);case'"':case"'":return h='"'===x(),_="",void(g="string")}throw N(x())},identifierNameStartEscape(){if("u"!==v)throw N(x());x();const e=w();switch(e){case"$":case"_":break;default:if(!i.isIdStartChar(e))throw I()}_+=e,g="identifierName"},identifierName(){switch(v){case"$":case"_":case"‌":case"‍":return void(_+=x());case"\\":return x(),void(g="identifierNameEscape")}if(!i.isIdContinueChar(v))return S("identifier",_);_+=x()},identifierNameEscape(){if("u"!==v)throw N(x());x();const e=w();switch(e){case"$":case"_":case"‌":case"‍":break;default:if(!i.isIdContinueChar(e))throw I()}_+=e,g="identifierName"},sign(){switch(v){case".":return _=x(),void(g="decimalPointLeading");case"0":return _=x(),void(g="zero");case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return _=x(),void(g="decimalInteger");case"I":return x(),D("nfinity"),S("numeric",y*(1/0));case"N":return x(),D("aN"),S("numeric",NaN)}throw N(x())},zero(){switch(v){case".":return _+=x(),void(g="decimalPoint");case"e":case"E":return _+=x(),void(g="decimalExponent");case"x":case"X":return _+=x(),void(g="hexadecimal")}return S("numeric",0*y)},decimalInteger(){switch(v){case".":return _+=x(),void(g="decimalPoint");case"e":case"E":return _+=x(),void(g="decimalExponent")}if(!i.isDigit(v))return S("numeric",y*Number(_));_+=x()},decimalPointLeading(){if(i.isDigit(v))return _+=x(),void(g="decimalFraction");throw N(x())},decimalPoint(){switch(v){case"e":case"E":return _+=x(),void(g="decimalExponent")}return i.isDigit(v)?(_+=x(),void(g="decimalFraction")):S("numeric",y*Number(_))},decimalFraction(){switch(v){case"e":case"E":return _+=x(),void(g="decimalExponent")}if(!i.isDigit(v))return S("numeric",y*Number(_));_+=x()},decimalExponent(){switch(v){case"+":case"-":return _+=x(),void(g="decimalExponentSign")}if(i.isDigit(v))return _+=x(),void(g="decimalExponentInteger");throw N(x())},decimalExponentSign(){if(i.isDigit(v))return _+=x(),void(g="decimalExponentInteger");throw N(x())},decimalExponentInteger(){if(!i.isDigit(v))return S("numeric",y*Number(_));_+=x()},hexadecimal(){if(i.isHexDigit(v))return _+=x(),void(g="hexadecimalInteger");throw N(x())},hexadecimalInteger(){if(!i.isHexDigit(v))return S("numeric",y*Number(_));_+=x()},string(){switch(v){case"\\":return x(),void(_+=function(){switch(k()){case"b":return x(),"\b";case"f":return x(),"\f";case"n":return x(),"\n";case"r":return x(),"\r";case"t":return x(),"\t";case"v":return x(),"\v";case"0":if(x(),i.isDigit(k()))throw N(x());return"\0";case"x":return x(),function(){let e="",t=k();if(!i.isHexDigit(t))throw N(x());if(e+=x(),t=k(),!i.isHexDigit(t))throw N(x());return e+=x(),String.fromCodePoint(parseInt(e,16))}();case"u":return x(),w();case"\n":case"\u2028":case"\u2029":return x(),"";case"\r":return x(),"\n"===k()&&x(),"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case void 0:throw N(x())}return x()}());case'"':return h?(x(),S("string",_)):void(_+=x());case"'":return h?void(_+=x()):(x(),S("string",_));case"\n":case"\r":throw N(x());case"\u2028":case"\u2029":!function(e){console.warn(`JSON5: '${F(e)}' in strings is not valid ECMAScript; consider escaping`)}(v);break;case void 0:throw N(x())}_+=x()},start(){switch(v){case"{":case"[":return S("punctuator",x())}g="value"},beforePropertyName(){switch(v){case"$":case"_":return _=x(),void(g="identifierName");case"\\":return x(),void(g="identifierNameStartEscape");case"}":return S("punctuator",x());case'"':case"'":return h='"'===x(),void(g="string")}if(i.isIdStartChar(v))return _+=x(),void(g="identifierName");throw N(x())},afterPropertyName(){if(":"===v)return S("punctuator",x());throw N(x())},beforePropertyValue(){g="value"},afterPropertyValue(){switch(v){case",":case"}":return S("punctuator",x())}throw N(x())},beforeArrayValue(){if("]"===v)return S("punctuator",x());g="value"},afterArrayValue(){switch(v){case",":case"]":return S("punctuator",x())}throw N(x())},end(){throw N(x())}};function S(e,t){return{type:e,value:t,line:l,column:u}}function D(e){for(const t of e){if(k()!==t)throw N(x());x()}}function w(){let e="",t=4;for(;t-- >0;){const t=k();if(!i.isHexDigit(t))throw N(x());e+=x()}return String.fromCodePoint(parseInt(e,16))}const T={start(){if("eof"===d.type)throw P();C()},beforePropertyName(){switch(d.type){case"identifier":case"string":return p=d.value,void(o="afterPropertyName");case"punctuator":return void A();case"eof":throw P()}},afterPropertyName(){if("eof"===d.type)throw P();o="beforePropertyValue"},beforePropertyValue(){if("eof"===d.type)throw P();C()},beforeArrayValue(){if("eof"===d.type)throw P();"punctuator"!==d.type||"]"!==d.value?C():A()},afterPropertyValue(){if("eof"===d.type)throw P();switch(d.value){case",":return void(o="beforePropertyName");case"}":A()}},afterArrayValue(){if("eof"===d.type)throw P();switch(d.value){case",":return void(o="beforeArrayValue");case"]":A()}},end(){}};function C(){let e;switch(d.type){case"punctuator":switch(d.value){case"{":e={};break;case"[":e=[]}break;case"null":case"boolean":case"numeric":case"string":e=d.value}if(void 0===f)f=e;else{const t=s[s.length-1];Array.isArray(t)?t.push(e):Object.defineProperty(t,p,{value:e,writable:!0,enumerable:!0,configurable:!0})}if(null!==e&&"object"==typeof e)s.push(e),o=Array.isArray(e)?"beforeArrayValue":"beforePropertyName";else{const e=s[s.length-1];o=null==e?"end":Array.isArray(e)?"afterArrayValue":"afterPropertyValue"}}function A(){s.pop();const e=s[s.length-1];o=null==e?"end":Array.isArray(e)?"afterArrayValue":"afterPropertyValue"}function N(e){return O(void 0===e?`JSON5: invalid end of input at ${l}:${u}`:`JSON5: invalid character '${F(e)}' at ${l}:${u}`)}function P(){return O(`JSON5: invalid end of input at ${l}:${u}`)}function I(){return u-=5,O(`JSON5: invalid identifier character at ${l}:${u}`)}function F(e){const t={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};if(t[e])return t[e];if(e<" "){const t=e.charCodeAt(0).toString(16);return"\\x"+("00"+t).substring(t.length)}return e}function O(e){const t=new SyntaxError(e);return t.lineNumber=l,t.columnNumber=u,t}const R={parse:function(e,t){a=String(e),o="start",s=[],c=0,l=1,u=0,d=void 0,p=void 0,f=void 0;do{d=b(),T[o]()}while("eof"!==d.type);return"function"==typeof t?m({"":f},"",t):f},stringify:function(e,t,r){const n=[];let a,o,s,c="",l="";if(null==t||"object"!=typeof t||Array.isArray(t)||(r=t.space,s=t.quote,t=t.replacer),"function"==typeof t)o=t;else if(Array.isArray(t)){a=[];for(const e of t){let t;"string"==typeof e?t=e:("number"==typeof e||e instanceof String||e instanceof Number)&&(t=String(e)),void 0!==t&&a.indexOf(t)<0&&a.push(t)}}return r instanceof Number?r=Number(r):r instanceof String&&(r=String(r)),"number"==typeof r?r>0&&(r=Math.min(10,Math.floor(r)),l=" ".substr(0,r)):"string"==typeof r&&(l=r.substr(0,10)),u("",{"":e});function u(e,t){let r=t[e];switch(null!=r&&("function"==typeof r.toJSON5?r=r.toJSON5(e):"function"==typeof r.toJSON&&(r=r.toJSON(e))),o&&(r=o.call(t,e,r)),r instanceof Number?r=Number(r):r instanceof String?r=String(r):r instanceof Boolean&&(r=r.valueOf()),r){case null:return"null";case!0:return"true";case!1:return"false"}return"string"==typeof r?d(r):"number"==typeof r?String(r):"object"==typeof r?Array.isArray(r)?function(e){if(n.indexOf(e)>=0)throw TypeError("Converting circular structure to JSON5");n.push(e);let t=c;c+=l;let r,i=[];for(let t=0;t<e.length;t++){const r=u(String(t),e);i.push(void 0!==r?r:"null")}if(0===i.length)r="[]";else if(""===l){r="["+i.join(",")+"]"}else{let e=",\n"+c,n=i.join(e);r="[\n"+c+n+",\n"+t+"]"}return n.pop(),c=t,r}(r):function(e){if(n.indexOf(e)>=0)throw TypeError("Converting circular structure to JSON5");n.push(e);let t=c;c+=l;let r,i=a||Object.keys(e),o=[];for(const t of i){const r=u(t,e);if(void 0!==r){let e=p(t)+":";""!==l&&(e+=" "),e+=r,o.push(e)}}if(0===o.length)r="{}";else{let e;if(""===l)e=o.join(","),r="{"+e+"}";else{let n=",\n"+c;e=o.join(n),r="{\n"+c+e+",\n"+t+"}"}}return n.pop(),c=t,r}(r):void 0}function d(e){const t={"'":.1,'"':.2},r={"'":"\\'",'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\v","\0":"\\0","\u2028":"\\u2028","\u2029":"\\u2029"};let n="";for(let a=0;a<e.length;a++){const o=e[a];switch(o){case"'":case'"':t[o]++,n+=o;continue;case"\0":if(i.isDigit(e[a+1])){n+="\\x00";continue}}if(r[o])n+=r[o];else if(o<" "){let e=o.charCodeAt(0).toString(16);n+="\\x"+("00"+e).substring(e.length)}else n+=o}const a=s||Object.keys(t).reduce(((e,r)=>t[e]<t[r]?e:r));return n=n.replace(new RegExp(a,"g"),r[a]),a+n+a}function p(e){if(0===e.length)return d(e);const t=String.fromCodePoint(e.codePointAt(0));if(!i.isIdStartChar(t))return d(e);for(let r=t.length;r<e.length;r++)if(!i.isIdContinueChar(String.fromCodePoint(e.codePointAt(r))))return d(e);return e}}};const M=R},44209:e=>{"use strict";e.exports=JSON.parse('{"kitData":[{"filePath":"@internal/component/ets/ability_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/action_sheet.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/alert_dialog.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/alphabet_indexer.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/animator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/badge.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/blank.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/calendar.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/calendar_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/canvas.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/checkbox.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/checkboxgroup.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/circle.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/column.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/column_split.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/common.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/common_ts_ets_api.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/container_span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/context_menu.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/counter.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/custom_dialog_controller.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/data_panel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/date_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/divider.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/effect_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/ellipse.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/embedded_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/enums.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/flex.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/flow_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/folder_stack.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/form_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/form_link.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/for_each.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/gauge.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/gesture.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/gridItem.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid_col.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid_container.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/grid_row.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/hyperlink.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image_animator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image_common.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/image_span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/inspector.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/lazy_for_each.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/line.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/list.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/list_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/list_item_group.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/loading_progress.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/location_button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/marquee.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/matrix2d.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/media_cached_image.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/menu.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/menu_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/menu_item_group.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/navigation.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/navigator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/nav_destination.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/nav_router.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/node_container.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/page_transition.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/panel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/particle.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/paste_button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/path.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/pattern_lock.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/plugin_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/polygon.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/polyline.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/progress.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/qrcode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/radio.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rating.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rect.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/refresh.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/relative_container.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/remote_window.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rich_editor.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/rich_text.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/root_scene.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/row.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/row_split.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/save_button.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/screen.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/scroll.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/scroll_bar.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/search.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/security_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/select.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/shape.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/sidebar.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/slider.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/stack.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/state_management.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/stepper.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/stepper_item.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/styled_string.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/swiper.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/symbolglyph.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/symbol_span.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/tabs.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/tab_content.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_area.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_clock.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_common.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_input.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/text_timer.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/time_picker.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/toggle.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/ui_extension_component.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/units.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/video.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/water_flow.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/web.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@internal/component/ets/window_scene.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/xcomponent.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/ets/global.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/ets/global.d.ts","kitName":"ArkUI","subSystem":"公共基础类库"},{"filePath":"@internal/ets/lifecycle.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.ability.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.dataUriUtils.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.errorCode.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.featureAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.particleAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.ability.particleAbility.d.ts","kitName":"AbilityKit","subSystem":"资源调度"},{"filePath":"@ohos.ability.wantConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.abilityAccessCtrl.d.ts","kitName":"AbilityKit","subSystem":"安全基础能力"},{"filePath":"@ohos.accessibility.config.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.accessibility.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.accessibility.GesturePath.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.accessibility.GesturePoint.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.account.appAccount.d.ts","kitName":"BasicServicesKit","subSystem":"账号"},{"filePath":"@ohos.account.distributedAccount.d.ts","kitName":"BasicServicesKit","subSystem":"账号"},{"filePath":"@ohos.account.osAccount.d.ts","kitName":"BasicServicesKit","subSystem":"账号"},{"filePath":"@ohos.advertising.AdComponent.d.ets","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.advertising.AdsServiceExtensionAbility.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.advertising.AutoAdComponent.d.ets","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.advertising.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.ai.intelligentVoice.d.ts","kitName":"MindSporeLiteKit","subSystem":"AI业务"},{"filePath":"@ohos.ai.mindSporeLite.d.ts","kitName":"MindSporeLiteKit","subSystem":"AI业务"},{"filePath":"@ohos.animation.windowAnimationManager.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.animator.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.app.ability.Ability.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AbilityConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.abilityDelegatorRegistry.d.ts","kitName":"TestKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AbilityLifecycleCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.abilityManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AbilityStage.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ActionExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ApplicationStateChangeCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.appManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.appRecovery.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AtomicServiceOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.AutoFillExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.autoFillManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.autoStartupManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ChildProcess.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.childProcessManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.common.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.Configuration.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ConfigurationConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.contextConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.dataUriUtils.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.dialogRequest.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.dialogSession.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.DriverExtensionAbility.d.ts","kitName":"DriverDevelopmentKit","subSystem":"驱动"},{"filePath":"@ohos.app.ability.EmbeddableUIAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.EmbeddedUIExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.EnvironmentCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.errorManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.insightIntent.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.InsightIntentContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.insightIntentDriver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.InsightIntentExecutor.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.MediaControlExtensionAbility.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.app.ability.missionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.OpenLinkOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.PrintExtensionAbility.d.ts","kitName":"BasicServicesKit","subSystem":"打印"},{"filePath":"@ohos.app.ability.quickFixManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ServiceExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.ShareExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.StartOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UIAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UIExtensionAbility.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UIExtensionContentSession.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.UserAuthExtensionAbility.d.ts","kitName":"UserAuthenticationKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.VpnExtensionAbility.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.Want.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.wantAgent.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.ability.wantConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupListener.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.businessAbilityRouter.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formAgent.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formBindingData.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.FormExtensionAbility.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formHost.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formInfo.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formObserver.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.app.form.formProvider.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.abilityDelegatorRegistry.d.ts","kitName":"TestKit","subSystem":"元能力"},{"filePath":"@ohos.application.abilityManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.AccessibilityExtensionAbility.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"@ohos.application.appManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.BackupExtensionAbility.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.application.Configuration.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.ConfigurationConstant.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.DataShareExtensionAbility.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.application.formBindingData.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formError.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formHost.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formInfo.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.formProvider.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"@ohos.application.missionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.StaticSubscriberExtensionAbility.d.ts","kitName":"BasicServicesKit","subSystem":"元能力"},{"filePath":"@ohos.application.StaticSubscriberExtensionContext.d.ts","kitName":"BasicServicesKit","subSystem":"元能力"},{"filePath":"@ohos.application.testRunner.d.ts","kitName":"TestKit","subSystem":"元能力"},{"filePath":"@ohos.application.uriPermissionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.Want.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.application.WindowExtensionAbility.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.arkui.advanced.Chip.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ChipGroup.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ComposeListItem.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ComposeTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Counter.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Dialog.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.EditableTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ExceptionPrompt.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Filter.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.GridObjectSortComponent.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.Popup.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ProgressButton.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SegmentButton.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SelectionMenu.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SelectTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SplitLayout.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SubHeader.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.SwipeRefresher.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.TabTitleBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.ToolBar.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.advanced.TreeView.d.ets","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.componentSnapshot.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.componentUtils.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.dragController.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.drawableDescriptor.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.inspector.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.observer.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.performanceMonitor.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.shape.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.UIContext.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.arkui.UIContext.d.ts","kitName":"ArkUI","subSystem":"元能力"},{"filePath":"@ohos.arkui.uiExtension.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.backgroundTaskManager.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.base.d.ts","kitName":"BasicServicesKit","subSystem":"SDK"},{"filePath":"@ohos.batteryInfo.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.batteryStatistics.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.bluetooth.a2dp.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.access.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.baseProfile.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.ble.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.connection.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.constant.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.hfp.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.hid.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.map.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.pan.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.pbap.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.socket.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetooth.wearDetection.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.bluetoothManager.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@ohos.brightness.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.buffer.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.bundle.appControl.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.bundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.bundleMonitor.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.bundleResourceManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.defaultAppManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.distributedBundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.freeInstall.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.innerBundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.installer.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.launcherBundleManager.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundle.overlay.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.bundleState.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.bytrace.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.calendarManager.d.ts","kitName":"CalendarKit","subSystem":"应用"},{"filePath":"@ohos.charger.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.commonEventManager.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"@ohos.configPolicy.d.ts","kitName":"BasicServicesKit","subSystem":"定制"},{"filePath":"@ohos.connectedTag.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.contact.d.ts","kitName":"ContactsKit","subSystem":"应用"},{"filePath":"@ohos.continuation.continuationManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.convertxml.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.cooperate.d.ts","kitName":"DistributedServiceKit","subSystem":"综合传感处理平台"},{"filePath":"@ohos.curves.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.data.cloudData.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.cloudExtension.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.commonType.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.dataAbility.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.dataShare.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.dataSharePredicates.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.DataShareResultSet.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.distributedData.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.distributedDataObject.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.distributedKVStore.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.preferences.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.rdb.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.relationalStore.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.storage.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.unifiedDataChannel.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.uniformDataStruct.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.uniformTypeDescriptor.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.data.ValuesBucket.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@ohos.deviceAttest.d.ts","kitName":"BasicServicesKit","subSystem":"XTS"},{"filePath":"@ohos.deviceInfo.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@ohos.deviceStatus.dragInteraction.d.ts","kitName":"ArkUI","subSystem":"综合传感处理平台"},{"filePath":"@ohos.display.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.display.d.ts","kitName":"ArkUI","subSystem":"窗口"},{"filePath":"@ohos.distributedBundle.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@ohos.distributedDeviceManager.d.ts","kitName":"DistributedServiceKit","subSystem":"分布式硬件"},{"filePath":"@ohos.distributedHardware.deviceManager.d.ts","kitName":"DistributedServiceKit","subSystem":"分布式硬件"},{"filePath":"@ohos.distributedHardware.hardwareManager.d.ts","kitName":"DistributedServiceKit","subSystem":"分布式硬件"},{"filePath":"@ohos.distributedMissionManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.dlpPermission.d.ts","kitName":"DataLossPreventionKit","subSystem":"安全基础能力"},{"filePath":"@ohos.document.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.driver.deviceManager.d.ts","kitName":"DriverDevelopmentKit","subSystem":"驱动"},{"filePath":"@ohos.effectKit.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.enterprise.accountManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.adminManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.applicationManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.bluetoothManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.browser.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.bundleManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.dateTimeManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.deviceControl.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.deviceInfo.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.deviceSettings.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.EnterpriseAdminExtensionAbility.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.locationManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.networkManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.restrictions.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.securityManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.systemManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.usbManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.enterprise.wifiManager.d.ts","kitName":"MDMKit","subSystem":"定制"},{"filePath":"@ohos.events.emitter.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"@ohos.faultLogger.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.file.backup.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.cloudSync.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.cloudSyncManager.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.environment.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fileAccess.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fileExtensionInfo.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fileuri.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.fs.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.hash.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.photoAccessHelper.d.ts","kitName":"MediaLibraryKit","subSystem":"文件管理"},{"filePath":"@ohos.file.PhotoPickerComponent.d.ets","kitName":"MediaLibraryKit","subSystem":"文件管理"},{"filePath":"@ohos.file.picker.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.recent.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.securityLabel.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.statvfs.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.storageStatistics.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.trash.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.file.volumeManager.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.fileio.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.filemanagement.userFileManager.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.fileshare.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.font.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.geolocation.d.ts","kitName":"LocationKit","subSystem":"位置服务"},{"filePath":"@ohos.geoLocationManager.d.ts","kitName":"LocationKit","subSystem":"位置服务"},{"filePath":"@ohos.graphics.colorSpaceManager.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.graphics.displaySync.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.graphics.hdrCapability.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.hiAppEvent.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hichecker.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hidebug.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hilog.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiSysEvent.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiTraceChain.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiTraceMeter.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.hiviewdfx.hiAppEvent.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.i18n.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"@ohos.identifier.oaid.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"@ohos.inputMethod.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.inputMethod.Panel.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.inputMethodEngine.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.InputMethodExtensionAbility.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.InputMethodExtensionContext.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.inputMethodList.d.ets","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.InputMethodSubtype.d.ts","kitName":"IMEKit","subSystem":"输入法"},{"filePath":"@ohos.intl.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"@ohos.logLibrary.d.ts","kitName":"PerformanceAnalysisKit","subSystem":"DFX"},{"filePath":"@ohos.matrix4.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.measure.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.mediaquery.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.multimedia.audio.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.audioHaptic.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avCastPicker.d.ets","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avCastPickerParam.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avsession.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.avVolumePanel.d.ets","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.camera.d.ts","kitName":"CameraKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.cameraPicker.d.ts","kitName":"CameraKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.drm.d.ts","kitName":"DrmKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.image.d.ts","kitName":"ImageKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.media.d.ts","kitName":"MediaKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.mediaLibrary.d.ts","kitName":"MediaLibraryKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimedia.systemSoundManager.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@ohos.multimodalInput.gestureEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputConsumer.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputDevice.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputDeviceCooperate.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputEventClient.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.inputMonitor.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.intentionCode.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.keyCode.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.keyEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.mouseEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.pointer.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.shortKey.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.touchEvent.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.multimodalInput.infraredEmitter.d.ts","kitName":"InputKit","subSystem":"多模输入"},{"filePath":"@ohos.net.connection.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.connection.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.ethernet.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.http.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.mdns.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.networkSecurity.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.policy.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.sharing.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.socket.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.net.statistics.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.vpn.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.vpn.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"@ohos.net.vpnExtension.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.vpnExtension.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"@ohos.net.webSocket.d.ts","kitName":"NetworkKit","subSystem":"网络管理·"},{"filePath":"@ohos.net.webSocket.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@ohos.nfc.cardEmulation.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.nfc.controller.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.nfc.tag.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.notificationManager.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@ohos.notificationSubscribe.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@ohos.pasteboard.d.ts","kitName":"BasicServicesKit","subSystem":"剪贴板"},{"filePath":"@ohos.PiPWindow.d.ts","kitName":"ArkUI","subSystem":"窗口"},{"filePath":"@ohos.pluginComponent.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.power.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.print.d.ts","kitName":"BasicServicesKit","subSystem":"打印"},{"filePath":"@ohos.privacyManager.d.ts","kitName":"AbilityKit","subSystem":"安全基础能力"},{"filePath":"@ohos.process.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.prompt.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.promptAction.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.reminderAgent.d.ts","kitName":"BackgroundTasksKit","subSystem":"事件通知"},{"filePath":"@ohos.reminderAgentManager.d.ts","kitName":"BackgroundTasksKit","subSystem":"事件通知"},{"filePath":"@ohos.request.d.ts","kitName":"BasicServicesKit","subSystem":"上传下载"},{"filePath":"@ohos.resourceManager.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"@ohos.resourceschedule.backgroundTaskManager.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.deviceStandby.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.systemload.d.ts","kitName":"BasicServicesKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.usageStatistics.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.resourceschedule.workScheduler.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.router.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.rpc.d.ts","kitName":"IPCKit","subSystem":"基础通信"},{"filePath":"@ohos.runningLock.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.screen.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.screenLock.d.ts","kitName":"BasicServicesKit","subSystem":"主题"},{"filePath":"@ohos.screenshot.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.secureElement.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.security.asset.d.ts","kitName":"Asset Store Kit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.cert.d.ts","kitName":"DeviceCertificateKit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.certManager.d.ts","kitName":"DeviceCertificateKit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.cryptoFramework.d.ts","kitName":"CryptoArchitectureKit","subSystem":"安全基础能力"},{"filePath":"@ohos.security.huks.d.ts","kitName":"UniversalKeystoreKit","subSystem":"安全基础能力"},{"filePath":"@ohos.sensor.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"@ohos.settings.d.ts","kitName":"BasicServicesKit","subSystem":"应用"},{"filePath":"@ohos.statfs.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@ohos.stationary.d.ts","kitName":"MultimodalAwarenessKit","subSystem":"综合传感处理平台"},{"filePath":"@ohos.systemCapability.d.ts","kitName":"BasicServicesKit","subSystem":"研发工具链"},{"filePath":"@ohos.systemDateTime.d.ts","kitName":"BasicServicesKit","subSystem":"时间时区"},{"filePath":"@ohos.systemparameter.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@ohos.systemParameterEnhance.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@ohos.systemTime.d.ts","kitName":"BasicServicesKit","subSystem":"时间时区"},{"filePath":"@ohos.systemTimer.d.ts","kitName":"BasicServicesKit","subSystem":"时间时区"},{"filePath":"@ohos.taskpool.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.telephony.call.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.call.d.ts","kitName":"TelephonyKit","subSystem":"应用"},{"filePath":"@ohos.telephony.data.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.observer.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.radio.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.sim.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.sms.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.telephony.vcard.d.ts","kitName":"TelephonyKit","subSystem":"电话服务"},{"filePath":"@ohos.thermal.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@ohos.uiAppearance.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.uiExtensionHost.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.UiTest.d.ts","kitName":"TestKit","subSystem":"测试框架"},{"filePath":"@ohos.update.d.ts","kitName":"BasicServicesKit","subSystem":"升级服务"},{"filePath":"@ohos.uri.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.url.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.usb.d.ts","kitName":"BasicServicesKit","subSystem":"USB服务"},{"filePath":"@ohos.usbManager.d.ts","kitName":"BasicServicesKit","subSystem":"USB服务"},{"filePath":"@ohos.userIAM.faceAuth.d.ts","kitName":"UserAuthenticationKit","subSystem":"用户IAM"},{"filePath":"@ohos.userIAM.userAuth.d.ts","kitName":"UserAuthenticationKit","subSystem":"用户IAM"},{"filePath":"@ohos.userIAM.userAuthIcon.d.ets","kitName":"UserAuthenticationKit","subSystem":"用户IAM"},{"filePath":"@ohos.util.ArrayList.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Deque.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.HashMap.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.HashSet.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.json.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.LightWeightMap.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.LightWeightSet.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.LinkedList.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.List.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.PlainArray.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Queue.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Stack.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.TreeMap.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.TreeSet.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.util.Vector.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.vibrator.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"@ohos.wallpaper.d.ts","kitName":"BasicServicesKit","subSystem":"主题"},{"filePath":"@ohos.WallpaperExtensionAbility.d.ts","kitName":"BasicServicesKit","subSystem":"主题"},{"filePath":"@ohos.wantAgent.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.web.netErrorList.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@ohos.web.webview.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@ohos.wifi.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiext.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiManager.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiManagerExt.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"@ohos.wifiManagerExt.d.ts","kitName":"ConnectivityKit","subSystem":"元能力"},{"filePath":"@ohos.window.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"@ohos.window.d.ts","kitName":"ArkUI","subSystem":"窗口"},{"filePath":"@ohos.worker.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.WorkSchedulerExtensionAbility.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"@ohos.xml.d.ts","kitName":"ArkTS","subSystem":"公共基础类库"},{"filePath":"@ohos.zlib.d.ts","kitName":"BasicServicesKit","subSystem":"包管理"},{"filePath":"@system.app.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.battery.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@system.bluetooth.d.ts","kitName":"ConnectivityKit","subSystem":"蓝牙"},{"filePath":"@system.brightness.d.ts","kitName":"BasicServicesKit","subSystem":"电源服务"},{"filePath":"@system.cipher.d.ts","kitName":"CryptoArchitectureKit","subSystem":"安全基础能力"},{"filePath":"@system.configuration.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.device.d.ts","kitName":"BasicServicesKit","subSystem":"启动恢复"},{"filePath":"@system.file.d.ts","kitName":"CoreFileKit","subSystem":"文件管理"},{"filePath":"@system.geolocation.d.ts","kitName":"LocationKit","subSystem":"位置服务"},{"filePath":"@system.mediaquery.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.notification.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@system.package.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"@system.prompt.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.request.d.ts","kitName":"BasicServicesKit","subSystem":"上传下载"},{"filePath":"@system.router.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@system.sensor.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"@system.storage.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"@system.vibrator.d.ts","kitName":"SensorServiceKit","subSystem":"泛sensor服务"},{"filePath":"ability/abilityResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/connectOptions.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/dataAbilityHelper.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/dataAbilityOperation.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/dataAbilityResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/startAbilityParameter.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"ability/want.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"advertising/advertisement.d.ts","kitName":"AdsKit","subSystem":"广告服务"},{"filePath":"app/appVersionInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"app/context.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"app/processInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityDelegator.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/abilityDelegatorArgs.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityFirstFrameStateData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityForegroundStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityMonitor.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityRunningInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStageContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStageMonitor.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStateData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AccessibilityExtensionContext.d.ts","kitName":"AccessibilityKit","subSystem":"无障碍软件服务"},{"filePath":"application/AppForegroundStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ApplicationContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ApplicationStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AppStateData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillRect.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillRequest.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoFillType.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoStartupCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AutoStartupInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/BaseContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/BusinessAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/Context.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinuableInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinueCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinueDeviceInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ContinueMissionInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/DriverExtensionContext.d.ts","kitName":"DriverDevelopmentKit","subSystem":"驱动"},{"filePath":"application/EmbeddableUIAbilityContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ErrorObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/EventHub.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ExtensionRunningInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/FormExtensionContext.d.ts","kitName":"FormKit","subSystem":"元能力"},{"filePath":"application/LoopObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MediaControlExtensionContext.d.ts","kitName":"AVSessionKit","subSystem":"OS媒体软件"},{"filePath":"application/MissionCallbacks.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionDeviceInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionListener.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionParameter.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/MissionSnapshot.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/PageNodeInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ProcessData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ProcessInformation.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ProcessRunningInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ServiceExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/shellCmdResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/UIAbilityContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/UIExtensionContext.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/ViewData.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/VpnExtensionContext.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"application/WorkSchedulerExtensionContext.d.ts","kitName":"BackgroundTasksKit","subSystem":"资源调度"},{"filePath":"arkui/AlphabetIndexerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/BlankModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/BuilderNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ButtonModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CalendarPickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CheckboxGroupModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CheckboxModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ColumnModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ColumnSplitModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CommonModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ComponentContent.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/CounterModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/DataPanelModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/DatePickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/DividerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/FormComponentModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/FrameNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GaugeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/Graphics.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridColModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/GridRowModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/HyperlinkModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ImageAnimatorModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ImageModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ImageSpanModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/LineModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ListItemGroupModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ListItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ListModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/LoadingProgressModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/MarqueeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/MenuItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/MenuModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavDestinationModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavigationModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavigatorModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NavRouterModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/NodeController.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PanelModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PathModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PatternLockModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PolygonModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/PolylineModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ProgressModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/QRCodeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RadioModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RatingModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RectModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RenderNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RichEditorModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RowModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/RowSplitModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ScrollModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SearchModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SelectModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ShapeModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SideBarContainerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SliderModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SpanModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/StackModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/StepperItemModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/SwiperModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TabsModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextAreaModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextClockModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextInputModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextPickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TextTimerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/TimePickerModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/ToggleModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/VideoModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/WaterFlowModifier.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"arkui/XComponentNode.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"bundle/abilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/applicationInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/bundleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/bundleInstaller.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/bundleStatusCallback.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/customizeData.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/elementName.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/hapModuleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/launcherAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/moduleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/PermissionDef.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/remoteAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundle/shortcutInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/AbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ApplicationInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/AppProvisionInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/BundleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/BundlePackInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/BundleResourceInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/DispatchInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ElementName.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ExtensionAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/HapModuleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/LauncherAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/LauncherAbilityResourceInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/Metadata.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/OverlayModuleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/PermissionDef.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/RecoverableApplicationInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/RemoteAbilityInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/SharedBundleInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"bundleManager/ShortcutInfo.d.ts","kitName":"AbilityKit","subSystem":"包管理"},{"filePath":"common/full/canvaspattern.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/console.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/dom.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/featureability.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/global.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/full/viewmodel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/console.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/featureability.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/global.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"common/lite/viewmodel.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"commonEvent/commonEventData.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"commonEvent/commonEventPublishData.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"commonEvent/commonEventSubscribeInfo.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"commonEvent/commonEventSubscriber.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"continuation/continuationExtraParams.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"continuation/continuationResult.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"data/rdb/resultSet.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"global/rawFileDescriptor.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"global/resource.d.ts","kitName":"LocalizationKit","subSystem":"全球化"},{"filePath":"multimedia/soundPool.d.ts","kitName":"MediaKit","subSystem":"OS媒体软件"},{"filePath":"notification/notificationActionButton.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/NotificationCommonDef.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationContent.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationContent.d.ts","kitName":"NotificationKit","subSystem":"安全基础能力"},{"filePath":"notification/notificationFlags.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationRequest.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSlot.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSorting.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSortingMap.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSubscribeInfo.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationSubscriber.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationTemplate.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"notification/notificationUserInput.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"security/PermissionRequestResult.d.ts","kitName":"AbilityKit","subSystem":"安全基础能力"},{"filePath":"tag/nfctech.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"tag/tagSession.d.ts","kitName":"ConnectivityKit","subSystem":"基础通信"},{"filePath":"wantAgent/triggerInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@internal/component/ets/component3d.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/styled_string.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@internal/component/ets/web.d.ts","kitName":"ArkWeb","subSystem":"web"},{"filePath":"@ohos.app.appstartup.StartupConfig.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupConfigEntry.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupListener.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.startupManager.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.app.appstartup.StartupTask.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.arkui.shape.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"@ohos.commonEvent.d.ts","kitName":"BasicServicesKit","subSystem":"事件通知"},{"filePath":"@ohos.graphics.common2D.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.graphics.drawing.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"@ohos.notification.d.ts","kitName":"NotificationKit","subSystem":"事件通知"},{"filePath":"@ohos.security.securityGuard.d.ts","kitName":"securityGuardKit","subSystem":"安全基础能力"},{"filePath":"@system.fetch.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"@system.network.d.ts","kitName":"NetworkKit","subSystem":"基础通信"},{"filePath":"application/VpnExtensionContext.d.ts","kitName":"NetworkKit","subSystem":"元能力"},{"filePath":"application/WindowExtensionContext.d.ts","kitName":"ArkUI","subSystem":"窗口管理"},{"filePath":"arkui/AttributeUpdater.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"data/rdb/resultSet.d.ts","kitName":"ArkData","subSystem":"分布式数据管理"},{"filePath":"multimedia/ringtonePlayer.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"multimedia/systemTonePlayer.d.ts","kitName":"AudioKit","subSystem":"OS媒体软件"},{"filePath":"@internal/component/ets/repeat.d.ts","kitName":"ArkUI","subSystem":"ArkUI开发框架"},{"filePath":"application/AbilityFirstFrameStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityStartCallback.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"application/AbilityFirstFrameStateObserver.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"@ohos.graphics.text.d.ts","kitName":"ArkGraphics2D","subSystem":"图形图像"},{"filePath":"wantAgent/wantAgentInfo.d.ts","kitName":"AbilityKit","subSystem":"元能力"},{"filePath":"permissions.d.ts","kitName":"NA","subSystem":"NA"}]}')},41429:e=>{"use strict";e.exports=JSON.parse('{"compileOnSave":false,"compilerOptions":{"ets":{"render":{"method":["build","pageTransition"],"decorator":"Builder"},"components":["AbilityComponent","AlphabetIndexer","Animator","Badge","Blank","Button","Calendar","CalendarPicker","Camera","Canvas","Checkbox","CheckboxGroup","Circle","ColorPicker","ColorPickerDialog","Column","ColumnSplit","Component3D","Counter","DataPanel","DatePicker","Divider","Ellipse","Flex","FormComponent","Gauge","GeometryView","Grid","GridItem","GridContainer","Hyperlink","Image","ImageAnimator","LazyVGridLayout","Line","List","ListItem","ListItemGroup","LoadingProgress","Marquee","Menu","MenuItem","MenuItemGroup","Navigation","Navigator","Option","PageTransitionEnter","PageTransitionExit","Panel","Particle","Path","PatternLock","Piece","PluginComponent","Polygon","Polyline","Progress","QRCode","Radio","Rating","Rect","Refresh","RelativeContainer","RemoteWindow","Row","RowSplit","RichText","Scroll","ScrollBar","Search","Section","Select","Shape","Sheet","SideBarContainer","Slider","Span","Stack","Stepper","StepperItem","Swiper","TabContent","Tabs","Text","TextPicker","TextClock","TextArea","TextInput","TextTimer","TimePicker","Toggle","Video","Web","XComponent","GridRow","GridCol"],"extend":{"decorator":"Extend","components":[{"name":"AbilityComponent","type":"AbilityComponentAttribute","instance":"AbilityComponentInstance"},{"name":"AlphabetIndexer","type":"AlphabetIndexerAttribute","instance":"AlphabetIndexerInstance"},{"name":"Animator","type":"AnimatorAttribute","instance":"AnimatorInstance"},{"name":"Badge","type":"BadgeAttribute","instance":"BadgeInstance"},{"name":"Blank","type":"BlankAttribute","instance":"BlankInstance"},{"name":"Button","type":"ButtonAttribute","instance":"ButtonInstance"},{"name":"Calendar","type":"CalendarAttribute","instance":"CalendarInstance"},{"name":"CalendarPicker","type":"CalendarPickerAttribute","instance":"CalendarPickerInstance"},{"name":"Camera","type":"CameraAttribute","instance":"CameraInstance"},{"name":"Canvas","type":"CanvasAttribute","instance":"CanvasInstance"},{"name":"Checkbox","type":"CheckboxAttribute","instance":"CheckboxInstance"},{"name":"CheckboxGroup","type":"CheckboxGroupAttribute","instance":"CheckboxGroupInstance"},{"name":"Circle","type":"CircleAttribute","instance":"CircleInstance"},{"name":"ColorPicker","type":"ColorPickerAttribute","instance":"ColorPickerInstance"},{"name":"ColorPickerDialog","type":"ColorPickerDialogAttribute","instance":"ColorPickerDialogInstance"},{"name":"Column","type":"ColumnAttribute","instance":"ColumnInstance"},{"name":"ColumnSplit","type":"ColumnSplitAttribute","instance":"ColumnSplitInstance"},{"name":"Component3D","type":"Component3DAttribute","instance":"Component3DInstance"},{"name":"Counter","type":"CounterAttribute","instance":"CounterInstance"},{"name":"DataPanel","type":"DataPanelAttribute","instance":"DataPanelInstance"},{"name":"DatePicker","type":"DatePickerAttribute","instance":"DatePickerInstance"},{"name":"Divider","type":"DividerAttribute","instance":"DividerInstance"},{"name":"Ellipse","type":"EllipseAttribute","instance":"EllipseInstance"},{"name":"Flex","type":"FlexAttribute","instance":"FlexInstance"},{"name":"FormComponent","type":"FormComponentAttribute","instance":"FormComponentInstance"},{"name":"Gauge","type":"GaugeAttribute","instance":"GaugeInstance"},{"name":"GeometryView","type":"GeometryViewAttribute","instance":"GeometryViewInstance"},{"name":"Grid","type":"GridAttribute","instance":"GridInstance"},{"name":"GridItem","type":"GridItemAttribute","instance":"GridItemInstance"},{"name":"GridContainer","type":"GridContainerAttribute","instance":"GridContainerInstance"},{"name":"Hyperlink","type":"HyperlinkAttribute","instance":"HyperlinkInstance"},{"name":"Image","type":"ImageAttribute","instance":"ImageInstance"},{"name":"ImageAnimator","type":"ImageAnimatorAttribute","instance":"ImageAnimatorInstance"},{"name":"LazyVGridLayout","type":"LazyVGridLayoutAttribute","instance":"LazyVGridLayoutInstance"},{"name":"Line","type":"LineAttribute","instance":"LineInstance"},{"name":"List","type":"ListAttribute","instance":"ListInstance"},{"name":"ListItem","type":"ListItemAttribute","instance":"ListItemInstance"},{"name":"ListItemGroup","type":"ListItemGroupAttribute","instance":"ListItemGroupInstance"},{"name":"LoadingProgress","type":"LoadingProgressAttribute","instance":"LoadingProgressInstance"},{"name":"Marquee","type":"MarqueeAttribute","instance":"MarqueeInstance"},{"name":"Menu","type":"MenuAttribute","instance":"MenuInstance"},{"name":"MenuItem","type":"MenuItemAttribute","instance":"MenuItemInstance"},{"name":"MenuItemGroup","type":"MenuItemGroupAttribute","instance":"MenuItemGroupInstance"},{"name":"Navigation","type":"NavigationAttribute","instance":"NavigationInstance"},{"name":"Navigator","type":"NavigatorAttribute","instance":"NavigatorInstance"},{"name":"Option","type":"OptionAttribute","instance":"OptionInstance"},{"name":"PageTransitionEnter","type":"PageTransitionEnterAttribute","instance":"PageTransitionEnterInstance"},{"name":"PageTransitionExit","type":"PageTransitionExitAttribute","instance":"PageTransitionExitInstance"},{"name":"Panel","type":"PanelAttribute","instance":"PanelInstance"},{"name":"Particle","type":"ParticleAttribute","instance":"ParticleInstance"},{"name":"Path","type":"PathAttribute","instance":"PathInstance"},{"name":"PatternLock","type":"PatternLockAttribute","instance":"PatternLockInstance"},{"name":"Piece","type":"PieceAttribute","instance":"PieceInstance"},{"name":"PluginComponent","type":"PluginComponentAttribute","instance":"PluginComponentInstance"},{"name":"Polygon","type":"PolygonAttribute","instance":"PolygonInstance"},{"name":"Polyline","type":"PolylineAttribute","instance":"PolylineInstance"},{"name":"Progress","type":"ProgressAttribute","instance":"ProgressInstance"},{"name":"QRCode","type":"QRCodeAttribute","instance":"QRCodeInstance"},{"name":"Radio","type":"RadioAttribute","instance":"RadioInstance"},{"name":"Rating","type":"RatingAttribute","instance":"RatingInstance"},{"name":"Rect","type":"RectAttribute","instance":"RectInstance"},{"name":"RelativeContainer","type":"RelativeContainerAttribute","instance":"RelativeContainerInstance"},{"name":"Refresh","type":"RefreshAttribute","instance":"RefreshInstance"},{"name":"RemoteWindow","type":"RemoteWindowAttribute","instance":"RemoteWindowInstance"},{"name":"Row","type":"RowAttribute","instance":"RowInstance"},{"name":"RowSplit","type":"RowSplitAttribute","instance":"RowSplitInstance"},{"name":"RichText","type":"RichTextAttribute","instance":"RichTextInstance"},{"name":"Scroll","type":"ScrollAttribute","instance":"ScrollInstance"},{"name":"ScrollBar","type":"ScrollBarAttribute","instance":"ScrollBarInstance"},{"name":"Search","type":"SearchAttribute","instance":"SearchInstance"},{"name":"Section","type":"SectionAttribute","instance":"SectionInstance"},{"name":"Select","type":"SelectAttribute","instance":"SelectInstance"},{"name":"Shape","type":"ShapeAttribute","instance":"ShapeInstance"},{"name":"Sheet","type":"SheetAttribute","instance":"SheetInstance"},{"name":"SideBarContainer","type":"SideBarContainerAttribute","instance":"SideBarContainerInstance"},{"name":"Slider","type":"SliderAttribute","instance":"SliderInstance"},{"name":"Span","type":"SpanAttribute","instance":"SpanInstance"},{"name":"Stack","type":"StackAttribute","instance":"StackInstance"},{"name":"Stepper","type":"StepperAttribute","instance":"StepperInstance"},{"name":"StepperItem","type":"StepperItemAttribute","instance":"StepperItemInstance"},{"name":"Swiper","type":"SwiperAttribute","instance":"SwiperInstance"},{"name":"TabContent","type":"TabContentAttribute","instance":"TabContentInstance"},{"name":"Tabs","type":"TabsAttribute","instance":"TabsInstance"},{"name":"Text","type":"TextAttribute","instance":"TextInstance"},{"name":"TextPicker","type":"TextPickerAttribute","instance":"TextPickerInstance"},{"name":"TextClock","type":"TextClockAttribute","instance":"TextClockInstance"},{"name":"TextArea","type":"TextAreaAttribute","instance":"TextAreaInstance"},{"name":"TextInput","type":"TextInputAttribute","instance":"TextInputInstance"},{"name":"TextTimer","type":"TextTimerAttribute","instance":"TextTimerInstance"},{"name":"TimePicker","type":"TimePickerAttribute","instance":"TimePickerInstance"},{"name":"Toggle","type":"ToggleAttribute","instance":"ToggleInstance"},{"name":"Video","type":"VideoAttribute","instance":"VideoInstance"},{"name":"Web","type":"WebAttribute","instance":"WebInstance"},{"name":"XComponent","type":"XComponentAttribute","instance":"XComponentInstance"},{"name":"GridRow","type":"GridRowAttribute","instance":"GridRowInterface"},{"name":"GridCol","type":"GridColAttribute","instance":"GridColInterface"}]},"styles":{"decorator":"Styles","component":{"name":"Common","type":"T","instance":"CommonInstance"},"property":"stateStyles"},"customComponent":"CustomComponent","propertyDecorators":[],"emitDecorators":[],"libs":[]},"allowJs":false,"allowSyntheticDefaultImports":true,"esModuleInterop":true,"importsNotUsedAsValues":"preserve","noImplicitAny":false,"noUnusedLocals":false,"noUnusedParameters":false,"experimentalDecorators":true,"moduleResolution":"node","resolveJsonModule":true,"skipLibCheck":true,"sourceMap":true,"module":"commonjs","target":"es2017","types":[],"typeRoots":[],"lib":["es2020"],"alwaysStrict":true},"exclude":["node_modules"]}')},55172:e=>{"use strict";e.exports=JSON.parse('{"DOC":{"API_DOC_ATOMICSERVICE_01":"JSDoc label order error, please adjust the order of [atomicservice] labels.","API_DOC_ATOMICSERVICE_02":"The validity verification of the JSDoc tag failed. The [atomicservice] tag is not allowed to be reused, please delete the extra tags.","API_DOC_ATOMICSERVICE_03":"It was detected that there is a following label [atomicservice] in the current file, but the parent nodes without this label.","API_DOC_CONSTANT_01":"JSDoc label order error, please adjust the order of [constant] labels.","API_DOC_CONSTANT_02":"JSDoc label validity verification failed. The [constant] label is not allowed. Please check the label usage method.","API_DOC_CONSTANT_03":"JSDoc tag validity verification failed. Please confirm if the [constant] tag is missing.","API_DOC_CONSTANT_04":"The validity verification of the JSDoc tag failed. The [constant] tag is not allowed to be reused, please delete the extra tags.","API_DOC_CROSSPLATFORM_01":"JSDoc label order error, please adjust the order of [crossplatform] labels.","API_DOC_CROSSPLATFORM_02":"The validity verification of the JSDoc tag failed. The [crossplatform] tag is not allowed to be reused, please delete the extra tags.","API_DOC_CROSSPLATFORM_03":"It was detected that there is an inheritable label [crossplatform] in the current file, but there are child nodes without this label.","API_DOC_DEFAULT_01":"The [default] tag value is incorrect. Please supplement the default value.","API_DOC_DEFAULT_02":"JSDoc label order error, please adjust the order of [default] labels.","API_DOC_DEFAULT_03":"JSDoc label validity verification failed. The [default] label is not allowed. Please check the label usage method.","API_DOC_DEFAULT_04":"The validity verification of the JSDoc tag failed. The [default] tag is not allowed to be reused, please delete the extra tags.","API_DOC_DEPRECATED_01":"The [deprecated] tag value is incorrect. Please check the usage method.","API_DOC_DEPRECATED_02":"JSDoc label order error, please adjust the order of [deprecated] labels.","API_DOC_DEPRECATED_03":"It was detected that there is an inheritable label [deprecated] in the current file, but there are child nodes without this label.","API_DOC_DEPRECATED_04":"The validity verification of the JSDoc tag failed. The [deprecated] tag is not allowed to be reused, please delete the extra tags.","API_DOC_ENUM_01":"The [enum] tag type is incorrect. Please check if the tag type is { string } or { number }.","API_DOC_ENUM_02":"JSDoc label order error, please adjust the order of [enum] labels.","API_DOC_ENUM_03":"JSDoc label validity verification failed. The [enum] label is not allowed. Please check the label usage method.","API_DOC_ENUM_04":"JSDoc tag validity verification failed. Please confirm if the [enum] tag is missing.","API_DOC_ENUM_05":"The validity verification of the JSDoc tag failed. The [enum] tag is not allowed to be reused, please delete the extra tags.","API_DOC_EXAMPLE_01":"JSDoc label order error, please adjust the order of [example] labels.","API_DOC_EXAMPLE_02":"The validity verification of the JSDoc tag failed. The [example] tag is not allowed to be reused, please delete the extra tags.","API_DOC_EXTENDS_01":"The [extends] tag value is incorrect. Please check if the tag value matches the inherited class name.","API_DOC_EXTENDS_02":"JSDoc label order error, please adjust the order of [extends] labels.","API_DOC_EXTENDS_03":"JSDoc label validity verification failed. The [extends] label is not allowed. Please check the label usage method.","API_DOC_EXTENDS_04":"JSDoc tag validity verification failed. Please confirm if the [extends] tag is missing.","API_DOC_EXTENDS_05":"The validity verification of the JSDoc tag failed. The [extends] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FAMODELONLY_01":"JSDoc label order error, please adjust the order of [famodelonly] labels.","API_DOC_FAMODELONLY_02":"The validity verification of the JSDoc tag failed. The [famodelonly] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FAMODELONLY_03":"It was detected that there is an inheritable label [famodelonly] in the current file, but there are child nodes without this label.","API_DOC_FIRES_01":"JSDoc label order error, please adjust the order of [fires] labels.","API_DOC_FIRES_02":"The validity verification of the JSDoc tag failed. The [fires] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FORM_01":"JSDoc label order error, please adjust the order of [form] labels.","API_DOC_FORM_02":"The validity verification of the JSDoc tag failed. The [form] tag is not allowed to be reused, please delete the extra tags.","API_DOC_FORM_03":"It was detected that there is a following label [form] in the current file, but the parent nodes without this label.","API_DOC_IMPLEMENTS_01":"JSDoc label order error, please adjust the order of [implements] labels.","API_DOC_IMPLEMENTS_02":"JSDoc label validity verification failed. The [implements] label is not allowed. Please check the label usage method.","API_DOC_IMPLEMENTS_03":"JSDoc tag validity verification failed. Please confirm if the [implements] tag is missing.","API_DOC_IMPLEMENTS_04":"The validity verification of the JSDoc tag failed. The [implements] tag is not allowed to be reused, please delete the extra tags.","API_DOC_IMPLEMENTS_05":"The [implements] tag value is incorrect. Please check if the tag value matches the inherited class name.","API_DOC_INTERFACE_04":"JSDoc label order error, please adjust the order of [interface] labels.","API_DOC_INTERFACE_05":"The validity verification of the JSDoc tag failed. The [interface] tag is not allowed to be reused, please delete the extra tags.","API_DOC_NAMESPACE_01":"The [namespace] tag value is incorrect. Please check if it matches the namespace name.","API_DOC_NAMESPACE_02":"JSDoc label order error, please adjust the order of [namespace] labels.","API_DOC_NAMESPACE_03":"JSDoc tag validity verification failed. Please confirm if the [namespace] tag is missing.","API_DOC_NAMESPACE_04":"JSDoc label validity verification failed. The [namespace] label is not allowed. Please check the label usage method.","API_DOC_NAMESPACE_05":"The validity verification of the JSDoc tag failed. The [namespace] tag is not allowed to be reused, please delete the extra tags.","API_DOC_PARAM_01":"The type of the [1] [param] tag is incorrect. Please check if it matches the type of the [1] parameter.","API_DOC_PARAM_02":"The value of the [1] [param] tag is incorrect. Please check if it matches the [1] parameter name.","API_DOC_PARAM_03":"JSDoc tag validity verification failed.There are [1] redundant [param]. Please check if the tag should be deleted.","API_DOC_PARAM_04":"JSDoc tag validity verification failed. Please confirm if the [param] tag is missing.","API_DOC_PARAM_05":"JSDoc label validity verification failed. The [param] label is not allowed. Please check the label usage method.","API_DOC_PARAM_06":"JSDoc label order error, please adjust the order of [param] labels.","API_DOC_PERMISSION_01":"The [permission] tag value is incorrect. Please check if the permission field has been configured or update the configuration file.","API_DOC_PERMISSION_02":"JSDoc label order error, please adjust the order of [permission] labels.","API_DOC_PERMISSION_03":"JSDoc label validity verification failed. The [permission] label is not allowed. Please check the label usage method.","API_DOC_PERMISSION_04":"The validity verification of the JSDoc tag failed. The [permission] tag is not allowed to be reused, please delete the extra tags.","API_DOC_PERMISSION_05":"JSDoc tag validity verification failed. Please confirm if the [permission] tag is missing.","API_DOC_READONLY_01":"JSDoc label order error, please adjust the order of [readonly] labels.","API_DOC_READONLY_02":"JSDoc label validity verification failed. The [readonly] label is not allowed. Please check the label usage method.","API_DOC_READONLY_03":"The validity verification of the JSDoc tag failed. The [readonly] tag is not allowed to be reused, please delete the extra tags.","API_DOC_READONLY_04":"JSDoc tag validity verification failed. Please confirm if the [readonly] tag is missing.","API_DOC_RETURNS_01":"The [returns] tag was used incorrectly. The returns tag should not be used when the return type is void.","API_DOC_RETURNS_02":"The [returns] tag type is incorrect. Please check if the tag type is consistent with the return type.","API_DOC_RETURNS_03":"JSDoc label order error, please adjust the order of [returns] labels.","API_DOC_RETURNS_04":"JSDoc tag validity verification failed. Please confirm if the [returns] tag is missing.","API_DOC_RETURNS_05":"The validity verification of the JSDoc tag failed. The [returns] tag is not allowed to be reused, please delete the extra tags.","API_DOC_RETURNS_06":"JSDoc label validity verification failed. The [returns] label is not allowed. Please check the label usage method.","API_DOC_SINCE_01":"The [since] tag value is incorrect. Please check if the tag value is a numerical value.","API_DOC_SINCE_02":"JSDoc label order error, please adjust the order of [since] labels.","API_DOC_SINCE_03":"JSDoc tag validity verification failed. Please confirm if the [since] tag is missing.","API_DOC_SINCE_04":"The validity verification of the JSDoc tag failed. The [since] tag is not allowed to be reused, please delete the extra tags.","API_DOC_SINCE_05":"The [since] value is greater than the latest version number.","API_DOC_SINCE_06":"The [since] value for different jsdoc should not be the same.","API_DOC_SINCE_07":"The [since] value is greater than the latest version number.The [since] value for different jsdoc should not be the same.","API_DOC_SINCE_08":"The [since] tag value is incorrect. Please check if the tag value is a numerical value.The [since] value for different jsdoc should not be the same.","API_DOC_STAGEMODELONLY_01":"It was detected that there is an inheritable label [stagemodelonly] in the current file, but there are child nodes without this label.","API_DOC_STAGEMODELONLY_02":"JSDoc label order error, please adjust the order of [stagemodelonly] labels.","API_DOC_STAGEMODELONLY_03":"The validity verification of the JSDoc tag failed. The [stagemodelonly] tag is not allowed to be reused, please delete the extra tags.","API_DOC_STATIC_01":"JSDoc label order error, please adjust the order of [static] labels.","API_DOC_STATIC_02":"The validity verification of the JSDoc tag failed. The [static] tag is not allowed to be reused, please delete the extra tags.","API_DOC_STRUCT_01":"The [struct] tag value is incorrect. Please check if it matches the struct name.","API_DOC_STRUCT_02":"JSDoc label order error, please adjust the order of [struct] labels.","API_DOC_STRUCT_03":"JSDoc label validity verification failed. The [struct] label is not allowed. Please check the label usage method.","API_DOC_STRUCT_04":"JSDoc tag validity verification failed. Please confirm if the [struct] tag is missing.","API_DOC_STRUCT_05":"The validity verification of the JSDoc tag failed. The [struct] tag is not allowed to be reused, please delete the extra tags.","API_DOC_SYSCAP_01":"The [syscap] tag value is incorrect. Please check if the syscap field is configured.","API_DOC_SYSCAP_02":"JSDoc label order error, please adjust the order of [syscap] labels.","API_DOC_SYSCAP_03":"JSDoc tag validity verification failed. Please confirm if the [syscap] tag is missing.","API_DOC_SYSCAP_04":"The validity verification of the JSDoc tag failed. The [syscap] tag is not allowed to be reused, please delete the extra tags.","API_DOC_SYSTEMAPI_01":"JSDoc label order error, please adjust the order of [systemapi] labels.","API_DOC_SYSTEMAPI_02":"It was detected that there is an inheritable label [systemapi] in the current file, but there are child nodes without this label.","API_DOC_SYSTEMAPI_03":"The validity verification of the JSDoc tag failed. The [systemapi] tag is not allowed to be reused, please delete the extra tags.","API_DOC_TEST_01":"JSDoc label order error, please adjust the order of [test] labels.","API_DOC_TEST_02":"It was detected that there is an inheritable label [test] in the current file, but there are child nodes without this label.","API_DOC_TEST_03":"The validity verification of the JSDoc tag failed. The [test] tag is not allowed to be reused, please delete the extra tags.","API_DOC_THROWS_01":"The type of the [1] [throws] tag is incorrect. Please check if the tag value is a numerical value.","API_DOC_THROWS_02":"The type of the [1] [throws] tag is incorrect. Please fill in [BusinessError].","API_DOC_THROWS_03":"JSDoc label order error, please adjust the order of [throws] labels.","API_DOC_THROWS_04":"JSDoc label validity verification failed. The [throws] label is not allowed. Please check the label usage method.","API_DOC_THROWS_05":"JSDoc tag validity verification failed. Please confirm if the [throws 1] tag is missing.","API_DOC_THROWS_07":"JSDoc label validity verification failed. The [throws 1] label is not allowed. Please check the label usage method.","API_DOC_THROWS_08":"The validity verification of the JSDoc tag failed. The [throws] tag is not allowed to be reused, please delete the extra tags.","API_DOC_THROWS_09":"The generic error code does not contain the current error code.","API_DOC_THROWS_10":"The description of the [1 throws] is incorrect. please fix it according to the specification.","API_DOC_THROWS_11":"The type of the [1] [throws] tag is incorrect. Please fill in [BusinessError].The description of the [1 throws] is incorrect. please fix it according to the specification.","API_DOC_TYPE_01":"The [type] tag type is incorrect. Please check if the type matches the attribute type.","API_DOC_TYPE_02":"JSDoc label order error, please adjust the order of [type] labels.","API_DOC_TYPE_03":"JSDoc label validity verification failed. The [type] label is not allowed. Please check the label usage method.","API_DOC_TYPE_04":"JSDoc tag validity verification failed. Please confirm if the [type] tag is missing.","API_DOC_TYPE_05":"The validity verification of the JSDoc tag failed. The [type] tag is not allowed to be reused, please delete the extra tags.","API_DOC_TYPEDEF_01":"The [typedef] tag value is incorrect. Please check if it matches the interface name or type content.","API_DOC_TYPEDEF_02":"JSDoc label order error, please adjust the order of [typedef] labels.","API_DOC_TYPEDEF_03":"JSDoc label validity verification failed. The [typedef] label is not allowed. Please check the label usage method.","API_DOC_TYPEDEF_04":"JSDoc tag validity verification failed. Please confirm if the [typedef] tag is missing.","API_DOC_TYPEDEF_05":"The validity verification of the JSDoc tag failed. The [typedef] tag is not allowed to be reused, please delete the extra tags.","API_DOC_USEINSTEAD_01":"The [useinstead] tag value is incorrect. Please check the usage method.","API_DOC_USEINSTEAD_02":"JSDoc label order error, please adjust the order of [useinstead] labels.","API_DOC_USEINSTEAD_03":"JSDoc label validity verification failed. The [useinstead] label is not allowed. Please check the label usage method.","API_DOC_USEINSTEAD_04":"The validity verification of the JSDoc tag failed. The [useinstead] tag is not allowed to be reused, please delete the extra tags.","API_DOC_GLOBAL_01":"JSDoc tag validity verification failed. Please confirm if the [file] tag is missing.","API_DOC_GLOBAL_02":"JSDoc tag validity verification failed. Please confirm if the [kit] tag is missing.","API_DOC_JSDOC_01":"Jsdoc needs to be added to the current API.","API_DOC_JSDOC_02":"JSDoc tag validity verification failed. Please confirm if the [since] tag is missing.JSDoc tag validity verification failed. Please confirm if the [syscap] tag is missing.","API_DOC_JSDOC_03":"Jsdoc has chinese.","API_DOC_UNKNOW_DECORATOR_01":"The [XXXX] tag does not exist. Please use a valid JSDoc tag.","API_DOC_JSDOC_04":"The [systemapi] and [atomicservice] cannot exist in the same doc."},"DEFINE":{"API_DEFINE_UNALLOWABLE_01":"Illegal [any] keyword used in the API.","API_DEFINE_UNALLOWABLE_02":"Illegal [this] keyword used in the API.","API_DEFINE_UNALLOWABLE_03":"Illegal [unknown] keyword used in the API.","API_DEFINE_NAME_01":"Prohibited word in [XXXX]:{option}.The word allowed is [XXXX].","API_DEFINE_NAME_02":"Prohibited word in [XXXX]:{ability} in the [XXXX] file.","API_DEFINE_SPELLING_01":"{XXXX}. please confirm whether it needs to be corrected to a common word.","API_DEFINE_EVENT_01":"The event name should be string.","API_DEFINE_EVENT_02":"The event name cannot be Null value.","API_DEFINE_EVENT_03":"The callback parameter of off function should be optional.","API_DEFINE_EVENT_04":"The off functions of one single event should have at least one callback parameter, and the callback parameter should be the last parameter.","API_DEFINE_EVENT_05":"The on and off event subscription methods do not appear in pair.","API_DEFINE_EVENT_06":"The event subscription methods should has at least one parameter.","API_DEFINE_EVENT_07":"Please check if the changed API version number is 10.","API_DEFINE_EVENT_08":"The event name should be named by small hump. (Received [XXXX]).","API_DEFINE_HUMP_01":"This API file should be named by large hump.","API_DEFINE_HUMP_02":"This API file should be named by small hump.","API_DEFINE_HUMP_03":"This name [XXXX] should be named by large hump.","API_DEFINE_HUMP_04":"This name [XXXX] should be named by small hump.","API_DEFINE_HUMP_05":"This name [XXXX] should be named by all uppercase.","API_DEFINE_ANONYMOUS_FUNCTION_01":"Anonymous functions or anonymous object that are not allowed are used in this api."},"CHANEGE":{"API_CHANGE_INCOMPATIBLE_01":"Forbid changes: Cannot change from public API to system API.","API_CHANGE_INCOMPATIBLE_02":"Forbid changes: Cannot reduce or permission or increase and permission.","API_CHANGE_INCOMPATIBLE_03":"Forbid changes: Cannot change permission value,cannot judge the range change.","API_CHANGE_INCOMPATIBLE_04":"Forbid changes: The number of error codes cannot be increased from 1 to multiple error codes.","API_CHANGE_INCOMPATIBLE_05":"Forbid changes: Cannot change the error code value.","API_CHANGE_INCOMPATIBLE_06":"Forbid changes: The card application cannot be changed from supported to not supported.","API_CHANGE_INCOMPATIBLE_07":"Forbid changes: Crossplatform cannot be changed from supported to not supported.","API_CHANGE_INCOMPATIBLE_08":"Forbid changes: API cannot be deleted.","API_CHANGE_INCOMPATIBLE_09":"Forbid changes: Cannot change from FAModelOnly to StageModelOnly.","API_CHANGE_INCOMPATIBLE_10":"Forbid changes: Cannot change from StageModelOnly to FAModelOnly.","API_CHANGE_INCOMPATIBLE_11":"Forbid changes: Cannot change from nothing to StageModelOnly.","API_CHANGE_INCOMPATIBLE_12":"Forbid changes: Cannot change from nothing to FAModelOnly.","API_CHANGE_INCOMPATIBLE_13":"Forbid changes: The function return value type cannot be extended.","API_CHANGE_INCOMPATIBLE_14":"Forbid changes: The function return value type cannot be reduced.","API_CHANGE_INCOMPATIBLE_15":"Forbid changes: Cannot change function return value type.","API_CHANGE_INCOMPATIBLE_16":"Forbid changes: Cannot change function param position.","API_CHANGE_INCOMPATIBLE_17":"Forbid changes: Cannot add function required param.","API_CHANGE_INCOMPATIBLE_18":"Forbid changes: Cannot delete function param.","API_CHANGE_INCOMPATIBLE_19":"Forbid changes: Cannot change form unrequired param to required param.","API_CHANGE_INCOMPATIBLE_20":"Forbid changes: Cannot change function param type.","API_CHANGE_INCOMPATIBLE_21":"Forbid changes: The function param type range is cannot be reduced.","API_CHANGE_INCOMPATIBLE_22":"Forbid changes: Read-only properties cannot be changed from optional to required.","API_CHANGE_INCOMPATIBLE_23":"Forbid changes: Writable properties cannot be changed from required to optional.","API_CHANGE_INCOMPATIBLE_24":"Forbid changes: Writable properties cannot be changed from optional to required.","API_CHANGE_INCOMPATIBLE_25":"Forbid changes: Cannot change property type.","API_CHANGE_INCOMPATIBLE_26":"Forbid changes: Cannot Expand the range of readonly property types.","API_CHANGE_INCOMPATIBLE_27":"Forbid changes: Cannot Expand the range of writable property types.","API_CHANGE_INCOMPATIBLE_28":"Forbid changes: Cannot reduce the range of writable property types.","API_CHANGE_INCOMPATIBLE_29":"Forbid changes: Decorator cannot be deleted.","API_CHANGE_INCOMPATIBLE_30":"Forbid changes: Cannot change constant value.","API_CHANGE_INCOMPATIBLE_31":"Forbid changes: Cannot change custom type value.","API_CHANGE_INCOMPATIBLE_32":"Forbid changes: Cannot expand the range of custom type.","API_CHANGE_INCOMPATIBLE_33":"Forbid changes: Cannot reduce the range of custom type.","API_CHANGE_INCOMPATIBLE_34":"Forbid changes: Cannot change Enumeration assignment.","API_CHANGE_INCOMPATIBLE_35":"Forbid changes: Historical JSDoc cannot be changed.","API_CHANGE_INCOMPATIBLE_36":"Forbid changes: API changes must add a new section of JSDoc.","API_CHANGE_INCOMPATIBLE_37":"Forbid changes: Cannot change from atomicservice to NA.","API_CHANGE_INCOMPATIBLE_38":"Forbid changes: Cannot change from NA to syscap.","API_CHANGE_INCOMPATIBLE_39":"Forbid changes: Cannot change from syscap to NA.","API_CHANGE_INCOMPATIBLE_40":"Forbid changes: Cannot change syscap value.","API_CHANGE_INCOMPATIBLE_41":"Forbid changes: Cannot add new property to interface API."}}')},42979:e=>{"use strict";e.exports=JSON.parse('{"ApiCheckVersion":13,"ApiMaxVersion":13}')},93289:e=>{"use strict";e.exports=JSON.parse('{"dictionariesArr":["a","aa","aaa","aaaa","aaaaa","aab","aac","aachen","aad","aapl","aapt","aar","aardvark","aaren","aarhus","aarika","aaron","ab","aba","aback","abacus","abaft","abagael","abagail","abalone","abandon","abandoned","abandoner","abandonment","abase","abasement","abaser","abash","abashed","abashment","abate","abated","abatement","abater","abattoir","abb","abba","abbe","abbess","abbey","abbi","abbie","abbot","abbott","abbr","abbrev","abbreviate","abbreviated","abbreviates","abbreviating","abbreviation","abby","abbye","abc","abcd","abcde","abcdef","abcdefghijklmnopqrstuvwxyz","abd","abdel","abdicate","abdication","abdomen","abdominal","abduct","abduction","abductor","abdul","abe","abeam","abel","abelard","abelson","aberdeen","abernathy","aberrant","aberration","aberrational","abet","abetted","abetting","abettor","abeu","abey","abeyance","abeyant","abhor","abhorred","abhorrence","abhorrent","abhorrer","abhorring","abi","abidance","abide","abider","abiding","abidjan","abie","abigael","abigail","abigale","abilene","abilities","ability","abject","abjection","abjectness","abjuration","abjuratory","abjure","abjurer","ablate","ablation","ablative","ablaze","able","abler","ables","ablest","abloom","ablution","abm","abnegate","abnegation","abner","abnormal","abnormality","abo","aboard","abode","abolish","abolisher","abolishment","abolition","abolitionism","abolitionist","abominable","abominably","abominate","abomination","aboriginal","aborigine","aborning","abort","aborted","aborting","abortion","abortionist","abortive","abortiveness","abound","about","above","aboveboard","aboveground","abra","abracadabra","abrade","abrader","abraham","abrahan","abram","abramo","abramson","abran","abrasion","abrasive","abrasiveness","abreaction","abreast","abridge","abridged","abridger","abridgment","abroad","abrogate","abrogation","abrogator","abrupt","abruptness","abs","abscess","abscissa","abscission","abscond","absconder","abseil","absence","absent","absentee","absenteeism","absentia","absentminded","absentmindedness","absinthe","abslistview","absolute","absolutely","absoluteness","absolution","absolutism","absolutist","absolve","absolver","absorb","absorbed","absorbency","absorbent","absorber","absorbing","absorption","absorptive","absorptivity","abspath","abstain","abstainer","abstemious","abstemiousness","abstention","abstinence","abstinent","abstract","abstractapplicationcontext","abstractautowirecapablebeanfactory","abstractbeanfactory","abstractchannelhandlercontext","abstracted","abstractedness","abstracter","abstracthttp","abstraction","abstractionism","abstractionist","abstractions","abstractness","abstractor","abstractplainsocketimpl","abstractprotocol","abstruse","abstruseness","absurd","absurdity","absurdness","abuja","abundance","abundant","abuse","abused","abuser","abuses","abusing","abusive","abusiveness","abut","abutment","abutted","abutter","abutting","abuzz","abysmal","abyss","abyssal","abyssinia","abyssinian","ac","acacia","academe","academia","academic","academical","academician","academicianship","academy","acadia","acanthus","acapulco","acc","accdb","accede","accelerate","accelerated","accelerating","acceleration","accelerator","accelerometer","accent","accented","accentual","accentuate","accentuation","accept","acceptability","acceptable","acceptableness","acceptably","acceptance","acceptant","acceptation","accepted","accepter","accepting","acceptor","accepts","acces","access","accesscontroller","accessed","accesses","accessibility","accessible","accessibly","accessing","accession","accesslogvalve","accessor","accessories","accessors","accessory","accesstoken","accidence","accident","accidental","accidentally","accidentalness","acclaim","acclaimer","acclamation","acclimate","acclimation","acclimatisation","acclimatise","acclimatization","acclimatize","acclimatized","acclimatizes","acclivity","accolade","accommodate","accommodated","accommodating","accommodation","accommodative","accommodativeness","accompanied","accompanier","accompaniment","accompanist","accompany","accomplice","accomplish","accomplished","accomplisher","accomplishing","accomplishment","accord","accordance","accordant","accorder","according","accordingly","accordion","accordionist","accost","account","accountability","accountable","accountableness","accountably","accountancy","accountant","accounted","accountid","accounting","accountname","accountnumber","accounts","accounttype","accouter","accouterment","accouterments","accoutrement","accra","accredit","accreditation","accredited","accretion","accrual","accrue","acct","acculturate","acculturation","accumsan","accumulate","accumulated","accumulation","accumulative","accumulativeness","accumulator","accuracy","accurate","accurately","accurateness","accursed","accursedness","accusal","accusation","accusative","accusatory","accuse","accused","accuser","accusing","accustom","accustomed","accustomedness","acd","ace","aced","acerbate","acerbic","acerbically","acerbity","acetaminophen","acetate","acetic","acetone","acetonic","acetylene","acevedo","acf","achaean","ache","achebe","ached","achene","achernar","aches","acheson","achievable","achieve","achieved","achievement","achievements","achiever","achieving","achilles","aching","achive","achoo","achromatic","achy","acid","acidic","acidification","acidify","acidity","acidness","acidoses","acidosis","acidulous","acing","ack","ackerman","acknowledge","acknowledgeable","acknowledged","acknowledgedly","acknowledger","acknowledgment","acl","aclass","aclu","acm","acme","acne","acolyte","aconcagua","aconite","acorn","acosta","acoustic","acoustical","acoustician","acoustics","acquaint","acquaintance","acquaintanceship","acquainted","acquiesce","acquiescence","acquiescent","acquirable","acquire","acquired","acquirement","acquiring","acquisition","acquisitive","acquisitiveness","acquit","acquittal","acquittance","acquitted","acquitter","acquitting","acre","acreage","acrid","acridity","acridness","acrimonious","acrimoniousness","acrimony","acrobat","acrobatic","acrobatically","acrobatics","acronym","acrophobia","acropolis","across","acrostic","acrux","acrylate","acrylic","acs","act","acta","actaeon","acth","acting","actinic","actinide","actinium","actinometer","action","actionbar","actionbaractivity","actionbardrawertoggle","actionbarsherlock","actionbarsize","actionbutton","actioncontroller","actionevent","actionlink","actionlistener","actionname","actionpack","actionperformed","actionresult","actions","actionscript","actionview","activate","activated","activatedroute","activating","activation","activator","active","activeadmin","activecell","activedocument","actively","activemodel","activemq","activeness","activerecord","actives","activesheet","activesupport","activewindow","activeworkbook","activex","activexobject","activism","activist","activities","activity","activitycompat","activityindicator","activitymanager","activitythread","acton","actor","actors","actress","acts","actual","actuality","actualization","actualize","actualizes","actually","actualwidth","actuarial","actuary","actuate","actuation","actuator","acuity","acumen","acupressure","acupuncture","acupuncturist","acute","acuteness","acyclic","acyclically","acyclovir","ad","ada","adage","adagio","adah","adair","adaline","adam","adamant","adamo","adamson","adan","adana","adapt","adaptability","adaptable","adaptation","adapted","adaptedness","adapter","adapters","adapterview","adapting","adaption","adaptive","adaptively","adaptiveness","adaptivity","adaptor","adara","adata","adb","adc","add","adda","addaction","addactionlistener","addall","addams","addattribute","addbutton","addcell","addchild","addclass","addcolumn","addcomponent","adddays","added","addelement","addend","addenda","addendum","adder","addevent","addeventlistener","addflags","addgesturerecognizer","addgroup","addhandler","addheader","addi","addia","addict","addiction","addictive","addie","addin","adding","addison","additem","addition","additional","additionally","additions","additive","additivity","addle","addlistener","addmarker","addobject","addobserver","addon","addons","addproperty","addr","addrange","address","addressability","addressable","addressbook","addressed","addressee","addresser","addresses","addressid","addressing","addressline","addressof","addressograph","addrow","adds","addslashes","addsubview","addtab","addtarget","addtextchangedlistener","addto","addtobackstack","addtype","adduce","adducer","adduct","adduction","adductor","adduser","addvalue","addview","addwidget","addwithvalue","addy","ade","adecoder","adel","adela","adelaida","adelaide","adelbert","adele","adelheid","adelice","adelina","adelind","adeline","adella","adelle","aden","adena","adenauer","adenine","adenoid","adenoidal","adept","adeptness","adequacy","adequate","adequateness","adey","adf","adfs","adham","adhara","adhere","adherence","adherent","adherer","adhesion","adhesive","adhesiveness","adi","adiabatic","adiabatically","adiana","adidas","adieu","adina","adipiscing","adipisicing","adipose","adirondack","adis","adj","adjacency","adjacent","adjectival","adjective","adjoin","adjoint","adjourn","adjournment","adjudge","adjudicate","adjudication","adjudicator","adjudicatory","adjunct","adjuration","adjure","adjust","adjustable","adjustably","adjusted","adjuster","adjusting","adjustive","adjustment","adjustments","adjustor","adjutant","adkins","adlai","adler","adm","adman","admen","admin","adminhtml","administer","administrable","administrate","administration","administrative","administrator","administrators","administratrix","admins","admirable","admirableness","admirably","admiral","admiralty","admiration","admire","admirer","admiring","admissibility","admissible","admissibly","admission","admit","admittance","admitted","admittedly","admitting","admix","admixture","admob","admonish","admonisher","admonishing","admonishment","admonition","admonitory","ado","adobe","adodb","adolescence","adolescent","adolf","adolfo","adolph","adolphe","adolpho","adolphus","adonis","adopt","adopted","adopter","adoption","adoptive","adopts","adora","adorable","adorableness","adorably","adoration","adore","adoree","adorer","adoring","adorn","adorne","adorned","adornment","adp","adr","adrea","adrenal","adrenalin","adrenaline","adrequest","adress","adresse","adria","adrian","adriana","adriane","adrianna","adrianne","adriano","adriatic","adrien","adriena","adrienne","adrift","adroit","adroitness","ads","adsense","adsorb","adsorbate","adsorbent","adsorption","adsorptive","adt","adulate","adulation","adulator","adulatory","adult","adulterant","adulterate","adulterated","adulteration","adulterer","adulteress","adulterous","adultery","adulthood","adultness","adults","adumbrate","adumbration","adumbrative","adv","advance","advanced","advancement","advancer","advances","advantage","advantageous","advantageousness","advantages","advent","adventist","adventitious","adventitiousness","adventive","adventure","adventurer","adventuresome","adventuress","adventurous","adventurousness","adverb","adverbial","adversarial","adversary","adverse","adverseness","adversity","advert","advertise","advertised","advertisement","advertiser","advertisers","advertising","advertorial","advice","advices","adview","advil","advisability","advisable","advisableness","advisably","advise","advised","advisedly","advisee","advisement","adviser","advisor","advisory","advocacy","advocate","advocation","advt","adwords","adz","adze","ae","aegean","aegis","aelfric","aenean","aeneas","aeneid","aeolian","aeolus","aeon","aerate","aeration","aerator","aerial","aerialist","aerie","aeriel","aeriela","aeriell","aeroacoustic","aerobatic","aerobic","aerobically","aerodrome","aerodynamic","aerodynamically","aerodynamics","aeronautic","aeronautical","aeronautics","aerosol","aerosolize","aerospace","aes","aeschylus","aesculapius","aesop","aesthete","aesthetic","aesthetically","aestheticism","aesthetics","aether","aetiology","af","afaik","afar","afb","afc","afd","afdc","aff","affability","affable","affably","affair","affect","affectation","affected","affectedness","affecter","affecting","affection","affectionate","affectioned","affectioning","affective","affects","afferent","affiance","affidavit","affiliate","affiliated","affiliation","affine","affinity","affirm","affirmation","affirmative","affix","afflatus","afflict","affliction","afflictive","affluence","affluent","afford","affordable","afforest","afforestation","afforested","afforesting","afforests","affray","affricate","affrication","affricative","affright","affront","afghan","afghani","afghanistan","aficionado","afield","afire","aflame","afloat","aflutter","afnetworking","afoot","afore","aforementioned","aforesaid","aforethought","afoul","afr","afraid","afresh","africa","african","afrikaans","afrikaner","afro","afrocentric","afrocentrism","aft","after","afterbirth","afterbirths","afterburner","aftercare","aftereffect","afterglow","afterimage","afterlife","afterlives","aftermath","aftermaths","aftermost","afternoon","afters","aftershave","aftershock","aftertaste","aftertextchanged","afterthought","afterward","afterwards","afterworld","afton","ag","agace","again","against","agamemnon","agapae","agape","agar","agassiz","agata","agate","agatha","agathe","agave","age","aged","agedness","ageism","ageist","ageless","agelessness","agencies","agency","agenda","agent","agented","agenting","agentive","agents","ageratum","ages","agg","aggi","aggie","agglomerate","agglomeration","agglutinate","agglutination","agglutinin","aggrandize","aggrandizement","aggravate","aggravating","aggravation","aggregate","aggregated","aggregately","aggregateness","aggregates","aggregation","aggregations","aggregative","aggregator","aggression","aggressive","aggressively","aggressiveness","aggressor","aggrieve","aggrieved","aggy","aghast","agile","agility","agitate","agitated","agitation","agitator","agitprop","aglaia","agleam","aglitter","aglow","agna","agnella","agnes","agnese","agnesse","agneta","agnew","agni","agnola","agnostic","agnosticism","ago","agog","agonize","agonized","agonizedly","agonizing","agony","agoraphobia","agoraphobic","agosto","agra","agrarian","agrarianism","agree","agreeable","agreeableness","agreeably","agreed","agreeing","agreement","agreements","agreer","agretha","agribusiness","agricola","agricultural","agriculturalist","agriculture","agriculturist","agrippa","agrippina","agrochemicals","agronomic","agronomist","agronomy","aground","aguascalientes","ague","aguie","aguilar","aguinaldo","aguirre","aguistin","aguste","agustin","ah","aha","ahab","aharon","ahead","ahem","ahmad","ahmadabad","ahmed","ahoy","ahriman","ai","aid","aida","aidan","aide","aided","aider","aids","aigneis","aigrette","aiken","ail","aila","ailbert","aile","ailee","aileen","ailene","aileron","ailey","aili","ailina","ailment","ailsun","ailyn","aim","aime","aimed","aimee","aimer","aimil","aiming","aimless","aimlessness","aims","ain","aindrea","ainslee","ainsley","ainslie","ainu","air","airbag","airbase","airbnb","airborne","airbrush","airbus","aircraft","aircrew","airdrop","airdropped","airdropping","airedale","aires","airfare","airfield","airflow","airfoil","airframe","airfreight","airhead","airily","airiness","airing","airless","airlessness","airlift","airline","airliner","airlock","airmail","airman","airmass","airmen","airpark","airplane","airplay","airport","airship","airsick","airsickness","airspace","airspeed","airstrip","airtight","airtightness","airtime","airwaves","airway","airworthiness","airworthy","airy","aisha","aisle","aitch","aj","ajar","ajax","ajaxoptions","ajay","ajp","ak","aka","akbar","akihito","akim","akimbo","akin","akita","akka","akkad","akron","aksel","al","ala","alabama","alabaman","alabamian","alabaster","alack","alacrity","aladdin","alain","alaine","alair","alameda","alamo","alamofire","alamogordo","alan","alana","alanah","aland","alane","alanine","alanna","alano","alanson","alar","alard","alaric","alarm","alarming","alarmist","alarmmanager","alarms","alas","alasdair","alaska","alaskan","alastair","alasteir","alaster","alayne","alb","alba","albacore","albania","albanian","albany","albatross","albedo","albee","albeit","alberich","alberik","alberio","albert","alberta","albertan","albertina","albertine","alberto","albie","albigensian","albina","albinism","albino","albion","albireo","albrecht","album","albumen","albumin","albuminous","albums","albuquerque","alcatraz","alcestis","alchemical","alchemist","alchemy","alcibiades","alcmena","alcoa","alcohol","alcoholic","alcoholically","alcoholism","alcott","alcove","alcuin","alcyone","aldan","aldebaran","aldehyde","alden","alder","alderamin","alderman","aldermen","alderwoman","alderwomen","aldin","aldis","aldo","aldon","aldous","aldric","aldrich","aldridge","aldrin","aldus","aldwin","ale","aleatory","alec","alecia","aleck","aleda","alee","aleece","aleen","alehouse","aleichem","alejandra","alejandrina","alejandro","alejoa","aleksandr","alembert","alembic","alena","alene","aleph","aleppo","aler","alert","alertcontroller","alertdialog","alerted","alertness","alerts","alertview","alessandra","alessandro","aleta","alethea","aleut","aleutian","alewife","alewives","alex","alexa","alexander","alexandr","alexandra","alexandre","alexandria","alexandrian","alexandrina","alexandro","alexei","alexi","alexia","alexina","alexine","alexio","alf","alfa","alfalfa","alfi","alfie","alfons","alfonse","alfonso","alfonzo","alford","alfred","alfreda","alfredo","alfresco","alfy","alg","alga","algae","algaecide","algal","algebra","algebraic","algebraical","algebraist","algenib","alger","algeria","algerian","algernon","algieba","algiers","alginate","algo","algol","algonquian","algonquin","algorithm","algorithmic","algorithmically","algorithms","alhambra","alhena","ali","alia","alias","aliased","aliases","aliasing","alibi","alic","alica","alice","alicea","alicia","alick","alida","alidia","alie","alien","alienable","alienate","alienation","alienist","alighieri","alight","align","aligned","aligner","alignleft","alignment","alignparentbottom","alignparentleft","alignparentright","alignparentstart","alignparenttop","alika","alike","alikee","alikeness","aliment","alimentary","alimony","alina","aline","alinement","alioth","aliqua","aliquam","aliquet","aliquip","aliquot","alisa","alisander","alisha","alison","alissa","alist","alistair","alister","alisun","alive","aliveness","alix","aliyah","aliyahs","aliza","alkaid","alkali","alkalies","alkaline","alkalinity","alkalize","alkaloid","alkyd","alkyl","all","alla","allah","allahabad","allan","allard","allay","allayne","alldata","alleen","allegation","allege","alleged","allegheny","allegiance","allegiant","allegoric","allegorical","allegoricalness","allegorist","allegory","allegra","allegretto","allegri","allegro","allele","alleluia","allemande","allen","allendale","allende","allene","allentown","allergen","allergenic","allergic","allergically","allergist","allergy","alleviate","alleviation","alleviator","alley","alleyn","alleyway","allhallows","alli","alliance","allianora","allie","allier","allies","alligator","allin","allina","allison","allissa","allister","allistir","alliterate","alliteration","alliterative","allix","alloc","allocable","allocatable","allocate","allocated","allocates","allocating","allocation","allocations","allocative","allocator","allophone","allophonic","allot","allotment","allotments","allotrope","allotropic","allots","allotted","allotter","allotting","allover","allow","allowable","allowableness","allowably","allowance","allowbackup","allowed","allowfullscreen","allowget","allowing","allowoverride","allows","alloy","alloyed","allspice","allstate","allsun","allude","allure","allurement","alluring","allusion","allusive","allusiveness","alluvial","alluvions","alluvium","allx","ally","allyce","allyn","allys","allyson","alma","almach","almaden","almagest","almanac","almaty","almeda","almeria","almeta","almightiness","almighty","almira","almire","almond","almoner","almost","alms","almshouse","almsman","alnico","alnilam","alnitak","aloe","aloft","aloha","aloin","aloise","aloisia","alon","alone","aloneness","along","alongshore","alongside","alonso","alonzo","aloof","aloofness","alot","aloud","aloysia","aloysius","alp","alpaca","alpert","alpha","alphabet","alphabetic","alphabetical","alphabetically","alphabetization","alphabetize","alphabetizer","alphabets","alphanumeric","alphanumerical","alphard","alphecca","alpheratz","alphonse","alphonso","alpine","alps","already","alric","alright","alsace","alsatian","also","alsop","alston","alt","alta","altai","altaic","altair","altar","altarpiece","alter","alterable","alteration","altercate","altercation","altered","altering","alternate","alternately","alternation","alternative","alternatively","alternativeness","alternatives","alternator","althea","although","altimeter","altiplano","altitude","alto","altogether","alton","altos","altruism","altruist","altruistic","altruistically","alu","aludra","aluin","aluino","alum","alumina","aluminum","alumna","alumnae","alumni","alumnus","alundum","alva","alvan","alvarado","alvarez","alvaro","alveolar","alveoli","alveolus","alvera","alverta","alvie","alvin","alvina","alvinia","alvira","alvis","alvy","alway","always","alwin","alwyn","alyce","alyda","alyosha","alys","alysa","alyse","alysia","alyson","alyss","alyssa","alzheimer","am","ama","amabel","amabelle","amadeus","amado","amain","amalea","amalee","amaleta","amalgam","amalgamate","amalgamation","amalia","amalie","amalita","amalle","amanda","amandi","amandie","amandy","amanuenses","amanuensis","amara","amaranth","amaranths","amaretto","amargo","amarillo","amaryllis","amass","amasser","amata","amateur","amateurish","amateurishness","amateurism","amati","amatory","amaze","amazed","amazement","amazing","amazon","amazonaws","amazonian","amazons","ambassador","ambassadorial","ambassadorship","ambassadress","amber","ambergris","amberly","ambiance","ambidexterity","ambidextrous","ambience","ambient","ambiguity","ambiguous","ambiguously","ambiguousness","ambit","ambition","ambitious","ambitiousness","ambivalence","ambivalent","amble","ambler","ambros","ambrose","ambrosi","ambrosia","ambrosial","ambrosio","ambrosius","ambulance","ambulant","ambulate","ambulation","ambulatory","ambur","ambuscade","ambuscader","ambush","ambusher","amby","amcharts","amd","amdahl","ame","ameba","amelia","amelie","amelina","ameline","ameliorate","amelioration","amelita","amen","amenability","amenably","amend","amended","amender","amendment","amends","amenhotep","amenity","amenorrhea","amer","amerada","amerasian","amerce","amercement","america","american","americana","americanism","americanization","americanize","americanized","americans","americium","amerigo","amerind","amerindian","amery","ameslan","amet","amethyst","amethystine","amharic","amherst","ami","amiability","amiable","amiableness","amiably","amicability","amicable","amicableness","amicably","amid","amide","amidships","amidst","amie","amiga","amigo","amii","amil","amines","amino","aminobenzoic","amir","amish","amiss","amitie","amity","ammamaria","amman","ammerman","ammeter","ammo","ammonia","ammoniac","ammonium","ammunition","amnesia","amnesiac","amnesic","amnesty","amniocenteses","amniocentesis","amnion","amniotic","amoco","amoeba","amoebic","amoeboid","amok","among","amongst","amontillado","amoral","amorality","amorous","amorousness","amorphous","amorphousness","amortization","amortize","amortized","amory","amos","amount","amounts","amour","amp","amparo","amperage","ampere","ampersand","ampex","amphetamine","amphibian","amphibious","amphibiousness","amphibology","amphitheater","amphora","amphorae","ample","ampleness","amplification","amplifier","amplify","amplitude","ampoule","ampule","amputate","amputation","amputee","amqp","amritsar","ams","amsterdam","amt","amtrak","amuck","amulet","amundsen","amur","amuse","amused","amusement","amuser","amusing","amusingness","amway","amy","amye","amyl","amylase","amz","amzn","an","ana","anabal","anabaptist","anabel","anabella","anabelle","anabolic","anabolism","anachronism","anachronistic","anachronistically","anacin","anaconda","anacreon","anaerobe","anaerobic","anaerobically","anaglyph","anagram","anagrammatic","anagrammatically","anagrammed","anagramming","anaheim","anal","analects","analgesia","analgesic","analiese","analise","anallese","anallise","analog","analogical","analogize","analogous","analogousness","analogue","analogy","analysand","analyse","analyses","analysis","analyst","analytic","analytical","analyticity","analytics","analyzable","analyze","analyzed","analyzer","analyzing","anamorphic","ananias","anapaest","anapest","anapestic","anaphora","anaphoric","anaphorically","anaplasmosis","anarchic","anarchical","anarchism","anarchist","anarchistic","anarchy","anastasia","anastasie","anastassia","anastigmatic","anastomoses","anastomosis","anastomotic","anathema","anathematize","anatol","anatola","anatole","anatolia","anatolian","anatollo","anatomic","anatomical","anatomist","anatomize","anatomy","anaxagoras","ancell","ancestor","ancestors","ancestortype","ancestral","ancestress","ancestry","anchor","anchorage","anchored","anchorite","anchoritism","anchorman","anchormen","anchorpane","anchorpeople","anchorperson","anchors","anchorwoman","anchorwomen","anchovy","ancient","ancientness","ancillary","and","andalso","andalusia","andalusian","andaman","andante","andean","andee","andeee","anderea","anders","andersen","anderson","andes","andi","andie","andiron","andonis","andorra","andover","andra","andre","andrea","andreana","andree","andrei","andrej","andrew","andrey","andria","andriana","andriette","andris","androgen","androgenic","androgynous","androgyny","andromache","andromeda","andropov","andros","andrus","andy","anecdotal","anecdote","anechoic","anemia","anemic","anemically","anemometer","anemometry","anemone","anent","aneroid","anestassia","anesthesia","anesthesiologist","anesthesiology","anesthetic","anesthetically","anesthetist","anesthetization","anesthetize","anesthetizer","anet","anett","anetta","anette","aneurysm","anew","ang","angara","ange","angel","angela","angele","angeleno","angeles","angelfish","angeli","angelia","angelic","angelica","angelical","angelico","angelika","angelina","angeline","angelique","angelita","angelle","angelo","angelou","anger","angevin","angie","angil","angina","angiography","angioplasty","angiosperm","angkor","angle","angler","angles","angleworm","anglia","anglican","anglicanism","anglicism","anglicization","anglicize","angling","anglo","anglophile","anglophilia","anglophobe","anglophobia","angola","angolan","angora","angrily","angriness","angry","angst","angstrom","anguilla","anguish","angular","angularfire","angularity","angularjs","angus","angy","anheuser","anhydride","anhydrite","anhydrous","ania","aniakchak","anibal","anica","aniline","anim","animadversion","animadvert","animal","animalcule","animals","animate","animated","animatedly","animately","animateness","animates","animatewithduration","animating","animation","animations","animator","animism","animist","animistic","animized","animosity","animus","anion","anionic","anise","aniseed","aniseikonic","anisette","anisotropic","anisotropy","anissa","anita","anitra","anjanette","anjela","ankara","ankh","ankhs","ankle","anklebone","anklet","ann","anna","annabal","annabel","annabela","annabell","annabella","annabelle","annadiana","annadiane","annal","annalee","annaliese","annalise","annalist","annamaria","annamarie","annapolis","annapurna","anne","anneal","annealer","annecorinne","annelid","anneliese","annelise","annemarie","annetta","annette","annex","annexation","annexe","anni","annice","annie","annihilate","annihilation","annihilator","annissa","anniversary","annmaria","annmarie","annnora","annora","annotate","annotated","annotation","annotations","annotator","announce","announced","announcement","announcements","announcer","annoy","annoyance","annoyed","annoyer","annoying","annual","annualized","annuitant","annuity","annul","annular","annuli","annulled","annulling","annulment","annulus","annum","annunciate","annunciation","annunciator","anny","anode","anodic","anodize","anodyne","anoint","anointer","anointment","anomalous","anomalousness","anomaly","anomic","anomie","anon","anonfun","anonymity","anonymous","anonymousness","anopheles","anorak","anorectic","anorexia","anorexic","another","anouilh","ans","ansel","ansell","anselm","anselma","anselmo","anshan","ansi","ansible","ansley","anson","anstice","answer","answerable","answered","answerer","answering","answers","ant","antacid","antaeus","antagonism","antagonist","antagonistic","antagonistically","antagonize","antagonized","antagonizing","antananarivo","antarctic","antarctica","antares","ante","anteater","antebellum","antecedence","antecedent","antechamber","antedate","antediluvian","anteing","antelope","antenatal","antenna","antennae","anterior","anteroom","anthe","anthea","anthem","anther","anthia","anthiathia","anthill","anthologist","anthologize","anthology","anthony","anthraces","anthracite","anthrax","anthropic","anthropocentric","anthropogenic","anthropoid","anthropological","anthropologist","anthropology","anthropometric","anthropometry","anthropomorphic","anthropomorphically","anthropomorphism","anthropomorphizing","anthropomorphous","anti","antiabortion","antiabortionist","antiaircraft","antibacterial","antibiotic","antibody","antic","anticancer","antichrist","anticipate","anticipated","anticipation","anticipative","anticipatory","anticked","anticking","anticlerical","anticlimactic","anticlimactically","anticlimax","anticline","anticlockwise","anticoagulant","anticoagulation","anticommunism","anticommunist","anticompetitive","anticyclone","anticyclonic","antidemocratic","antidepressant","antidisestablishmentarianism","antidote","antietam","antifascist","antiformant","antifreeze","antifundamentalist","antigen","antigenic","antigenicity","antigone","antigua","antihero","antiheroes","antihistamine","antihistorical","antiknock","antilabor","antillean","antilles","antilogarithm","antilogs","antimacassar","antimalarial","antimatter","antimicrobial","antimissile","antimony","antin","anting","antinomian","antinomy","antinuclear","antioch","antioxidant","antiparticle","antipas","antipasti","antipasto","antipathetic","antipathy","antipersonnel","antiperspirant","antiphon","antiphonal","antipodal","antipode","antipodean","antipodes","antipollution","antipoverty","antiquarian","antiquarianism","antiquary","antiquate","antiquation","antique","antiquity","antiredeposition","antiresonance","antiresonator","antisemitic","antisemitism","antisepses","antisepsis","antiseptic","antiseptically","antiserum","antislavery","antisocial","antispasmodic","antisubmarine","antisymmetric","antisymmetry","antitank","antitheses","antithesis","antithetic","antithetical","antithyroid","antitoxin","antitrust","antivenin","antiviral","antivivisectionist","antiwar","antler","antlr","antmatchers","antofagasta","antoine","antoinette","anton","antone","antonella","antonetta","antoni","antonia","antonie","antonietta","antonin","antonina","antonino","antoninus","antonio","antonius","antonovics","antony","antonym","antonymous","antral","antsy","antwan","antwerp","anubis","anus","anvil","anxiety","anxious","anxiousness","any","anya","anybody","anyhow","anymore","anyobject","anyone","anyplace","anything","anytime","anyway","anyways","anywhere","anywise","ao","aol","aop","aorta","aortic","aot","ap","apace","apache","apalachicola","apart","apartheid","apartment","apartness","apathetic","apathetically","apathy","apatite","apb","apc","ape","aped","apelike","apennines","aper","aperiodic","aperiodically","aperiodicity","aperitif","aperture","apex","aphasia","aphasic","aphelia","aphelion","aphid","aphonic","aphorism","aphoristic","aphoristically","aphrodisiac","aphrodite","api","apia","apiarist","apiary","apical","apices","apiclient","apicontroller","apidocs","apiece","apikey","apis","apiservice","apish","apishness","apiurl","apiversion","apk","apl","aplenty","aplomb","apns","apo","apocalypse","apocalyptic","apocrypha","apocryphal","apocryphalness","apogee","apolar","apolitical","apollinaire","apollo","apollonian","apologetic","apologetically","apologetics","apologia","apologies","apologist","apologize","apologizer","apologizes","apologizing","apology","apoplectic","apoplexy","apos","apostasy","apostate","apostatize","apostle","apostleship","apostolic","apostrophe","apostrophized","apothecary","apothegm","apotheoses","apotheosis","apotheosized","apotheosizes","apotheosizing","app","appalachia","appalachian","appall","appalling","appaloosa","appanage","apparatus","apparel","apparency","apparent","apparently","apparentness","apparition","appbar","appbarlayout","appbundle","appcelerator","appclassloader","appcompat","appcompatactivity","appcomponent","appconfig","appcontext","appcontroller","appdata","appdelegate","appdomain","appeal","appealer","appealing","appear","appearance","appeared","appearer","appearing","appears","appease","appeased","appeasement","appeaser","appellant","appellate","appellation","appellative","append","appendage","appendchild","appenddata","appendectomy","appended","appender","appendices","appendicitis","appending","appendix","appendline","appends","appendtext","appendto","appengine","appertain","appetite","appetizer","appetizing","appia","appian","appid","appium","appkit","applaud","applauder","applause","apple","applecart","applejack","apples","applesauce","applescript","appleseed","applet","appleton","applewebkit","appliance","applicabilities","applicability","applicable","applicably","applicant","applicants","applicate","application","applicationcontext","applicationcontroller","applicationdbcontext","applicationdispatcher","applicationfilterchain","applicationid","applicationname","applicationrecord","applications","applicationuser","applicative","applicator","applied","applier","applies","appliqu","appliqud","apply","applybindings","applying","appmodule","appname","appoint","appointee","appointer","appointive","appointment","appointments","appolonia","appomattox","apportion","apportionment","appose","apposite","appositeness","apposition","appositive","appraisal","appraise","appraised","appraisees","appraiser","appraises","appraising","appreciable","appreciably","appreciate","appreciated","appreciation","appreciative","appreciativeness","appreciator","appreciatory","apprehend","apprehender","apprehensible","apprehension","apprehensive","apprehensiveness","apprentice","apprenticeship","apprise","apprizer","apprizingly","apprizings","approach","approachability","approachable","approacher","approaches","approaching","approbate","approbation","appropriable","appropriate","appropriated","appropriately","appropriateness","appropriation","appropriator","approval","approve","approved","approver","approving","approx","approximate","approximately","approximation","approximative","apps","appserver","appsettings","appspot","appstore","apptheme","appurtenance","appurtenant","appwidgetmanager","apr","apricot","april","aprilette","apron","apropos","aps","apse","apsis","apt","aptana","apter","aptest","aptitude","aptness","apuleius","aq","aqua","aquaculture","aqualung","aquamarine","aquanaut","aquaplane","aquarium","aquarius","aquatic","aquatically","aquavit","aqueduct","aqueous","aquiculture","aquifer","aquila","aquiline","aquinas","aquino","aquitaine","ar","ara","arab","arabel","arabela","arabele","arabella","arabelle","arabesque","arabia","arabian","arabic","arability","arabist","arable","araby","araceli","arachnid","arachnoid","arachnophobia","arafat","araguaya","aral","araldo","aramaic","aramco","arange","arapaho","arapahoe","arapahoes","ararat","araucanian","arawak","arawakan","arb","arbiter","arbitrage","arbitrager","arbitrageur","arbitrament","arbitrarily","arbitrariness","arbitrary","arbitrate","arbitration","arbitrator","arbor","arboreal","arbores","arboretum","arborvitae","arbutus","arc","arcade","arcadia","arcadian","arcana","arcane","arcgis","arch","archaeological","archaeologist","archaic","archaically","archaimbaud","archaism","archaist","archaize","archaizer","archambault","archangel","archbishop","archbishopric","archdeacon","archdiocesan","archdiocese","archduchess","archduke","archean","archenemy","archeologist","archeology","archer","archery","archetypal","archetype","archfiend","archfool","archibald","archibaldo","archibold","archie","archiepiscopal","archimedes","arching","archipelago","architect","architectonic","architectonics","architectural","architecture","architectures","architrave","archival","archive","archived","archives","archivist","archness","archway","archy","arclike","arco","arcsine","arctangent","arctic","arcturus","arcu","arda","ardabil","ardath","ardeen","ardelia","ardelis","ardella","ardelle","arden","ardency","ardene","ardenia","ardent","ardine","ardis","ardisj","ardith","ardor","ardra","arduino","arduous","arduousness","ardyce","ardys","ardyth","are","area","areal","areas","areawide","areequal","arel","aren","arena","arenaceous","arequipa","ares","aretha","arg","argb","argc","argent","argentina","argentine","argentinean","argentinian","arginine","argmax","argo","argon","argonaut","argonne","argosy","argot","argparse","args","arguable","arguably","argue","arguer","arguing","argument","argumentation","argumentative","argumentativeness","argumentexception","argumentnullexception","arguments","argus","argv","argyle","ari","aria","ariadne","arial","ariana","arianism","arianist","arid","aridatha","aridity","aridness","arie","ariel","ariela","ariella","arielle","aries","aright","arin","ario","ariosto","arise","arisen","arises","aristarchus","aristides","aristocracy","aristocrat","aristocratic","aristocratically","aristophanes","aristotelean","aristotelian","aristotle","arithmetic","arithmetical","arithmetician","arithmetize","arius","ariz","arizona","arizonan","arizonian","arjuna","ark","ark","arkansan","arkansas","arkhangelsk","arkwright","arlan","arlana","arlee","arleen","arlen","arlena","arlene","arleta","arlette","arley","arleyne","arlie","arliene","arlin","arlina","arlinda","arline","arlington","arluene","arly","arlyn","arlyne","arm","armada","armadillo","armageddon","armagnac","armament","arman","armand","armando","armata","armature","armband","armchair","armco","armeabi","armed","armenia","armenian","armer","armful","armhole","armin","arming","arminius","armistice","armless","armlet","armload","armonk","armor","armored","armorer","armorial","armory","armour","armpit","armrest","arms","armstrong","armv","army","arn","arnaldo","arne","arneb","arney","arnhem","arni","arnie","arno","arnold","arnoldo","arnuad","arnulfo","arny","aroma","aromatherapist","aromatherapy","aromatic","aromatically","aromaticity","aromaticness","aron","arose","around","arousal","arouse","aroused","arp","arpa","arpanet","arpeggio","arquillian","arr","arrack","arragon","arraign","arraignment","arrange","arrangeable","arranged","arrangement","arranger","arranges","arranging","arrant","arras","array","arrayadapter","arraybuffer","arraycollection","arraycopy","arrayer","arrayindexoutofboundsexception","arraylist","arrays","arraysize","arraywithobjects","arrear","arrest","arrestee","arrester","arresting","arrestor","arrhenius","arrhythmia","arrhythmic","arrhythmical","arri","arrival","arrive","arrived","arriver","arrives","arrogance","arrogant","arrogate","arrogation","arron","arrow","arrowhead","arrowroot","arrows","arroyo","arsenal","arsenate","arsenic","arsenide","arsine","arson","arsonist","art","artair","artaxerxes","arte","artefact","artemas","artemis","artemus","arterial","arteriolar","arteriole","arterioscleroses","arteriosclerosis","artery","artesian","artful","artfulness","arther","arthritic","arthritides","arthritis","arthrogram","arthropod","arthroscope","arthroscopic","arthur","arthurian","artichoke","article","articleid","articles","articulable","articular","articulate","articulated","articulately","articulateness","articulates","articulation","articulator","articulatory","artie","artifact","artifactid","artifactory","artifacts","artifice","artificer","artificial","artificiality","artificialness","artillerist","artillery","artilleryman","artillerymen","artiness","artisan","artist","artiste","artistic","artistically","artistry","artists","artless","artlessness","arts","artsy","artur","arturo","artus","artwork","arty","aruba","arum","arv","arvie","arvin","arvy","ary","aryan","aryn","as","asa","asama","asap","asarray","asax","asbestos","asc","ascella","ascend","ascendancy","ascendant","ascender","ascending","ascension","ascent","ascertain","ascertainment","ascetic","ascetically","asceticism","ascii","ascot","ascribe","ascription","ascriptive","ascx","asd","asdf","ase","asenumerable","aseptic","aseptically","asexual","asexuality","asf","asgard","ash","ashame","ashamed","ashanti","ashbey","ashby","ashcan","ashely","asher","asheville","ashia","ashien","ashil","ashkenazim","ashkhabad","ashla","ashlan","ashland","ashlar","ashlee","ashleigh","ashlen","ashley","ashli","ashlie","ashlin","ashly","ashman","ashmolean","ashore","ashram","ashton","ashtray","ashurbanipal","ashx","ashy","asia","asian","asiatic","aside","asilomar","asimov","asin","asinine","asininity","asio","ask","askance","asked","asker","askew","asking","asks","asl","aslant","asleep","aslist","asm","asmara","asmx","asn","asocial","asoka","asp","asparagus","aspartame","aspca","aspect","aspectj","aspects","aspell","aspen","asper","asperity","aspersion","asphalt","asphodel","asphyxia","asphyxiate","asphyxiation","aspic","aspidiske","aspidistra","aspirant","aspirate","aspiration","aspirational","aspirator","aspire","aspirer","aspirin","asplenium","aspnet","aspnetcore","aspx","asquith","ass","assad","assail","assailable","assailant","assam","assamese","assassin","assassinate","assassination","assault","assaulter","assaultive","assay","assayer","assemblage","assemble","assembled","assembler","assemblies","assembly","assemblyidentity","assemblyman","assemblymen","assemblyname","assemblywoman","assemblywomen","assent","assert","assertequals","asserter","assertion","assertional","assertionerror","assertions","assertive","assertiveness","asserts","assertthat","asserttrue","assess","assessed","assesses","assessment","assessor","asset","assetmanager","assets","asseverate","asseveration","asshole","assiduity","assiduous","assiduousness","assign","assignable","assignation","assigned","assignee","assigner","assigning","assignment","assignments","assignor","assigns","assimilate","assimilation","assimilationist","assisi","assist","assistance","assistant","assistantship","assisted","assister","assize","assn","assoc","associable","associate","associated","associateship","association","associational","associations","associative","associativity","associator","assonance","assonant","assort","assorter","assortment","asst","assuage","assuaged","assumability","assume","assumed","assumer","assumes","assuming","assumption","assumptions","assumptive","assurance","assure","assured","assuredness","assurer","assuring","assyria","assyrian","assyriology","ast","astaire","astarte","astatine","astc","aster","asteria","asterisk","asterisked","astern","asteroid","asteroidal","asthma","asthmatic","astigmatic","astigmatism","astir","aston","astonish","astonishing","astonishment","astor","astoria","astound","astounding","astra","astraddle","astrakhan","astral","astray","astrid","astride","astring","astringency","astringent","astrix","astrolabe","astrologer","astrological","astrologist","astrology","astronaut","astronautic","astronautical","astronautics","astronomer","astronomic","astronomical","astronomy","astrophysical","astrophysicist","astrophysics","astroturf","asturias","astute","astuteness","astype","asuncin","asunder","asus","aswan","aswell","asylum","asymmetric","asymmetrical","asymmetry","asymptomatic","asymptomatically","asymptote","asymptotic","asymptotically","async","asynccallback","asynchronism","asynchronous","asynchronously","asynchrony","asyncio","asyncresult","asynctask","at","atacama","atahualpa","atalanta","atan","atari","atatrk","atavism","atavist","atavistic","ataxia","ataxic","ate","atelier","atemporal","athabasca","athabascan","athabaska","athabaskan","atheism","atheist","atheistic","athena","athene","athenian","athens","atheroscleroses","atherosclerosis","athirst","athlete","athletic","athletically","athleticism","athletics","athwart","atilt","atindex","atkins","atkinson","atl","atlanta","atlante","atlantes","atlantic","atlantis","atlas","atlassian","atleast","atm","atman","atmosphere","atmospheric","atmospherically","atoi","atoll","atom","atomic","atomically","atomicity","atomics","atomistic","atomization","atomize","atomizer","atoms","atonal","atonality","atone","atonement","atop","atp","atreus","atria","atrial","atrium","atrocious","atrociousness","atrocity","atrophic","atrophy","atropine","atropos","ats","att","attach","attached","attacher","attachevent","attaching","attachment","attachments","attack","attacker","attacks","attain","attainabilities","attainability","attainable","attainableness","attainably","attainder","attained","attainer","attainment","attar","attempt","attempted","attempter","attempting","attempts","attend","attendance","attendant","attended","attendee","attendees","attender","attention","attentional","attentionality","attentive","attentiveness","attenuate","attenuated","attenuation","attenuator","attest","attestation","attested","attester","attic","attica","attila","attire","attitude","attitudinal","attitudinize","attlee","attn","attorney","attr","attract","attractant","attraction","attractive","attractiveness","attractivenesses","attractor","attrib","attributable","attribute","attributed","attributeerror","attributename","attributer","attributes","attributeset","attributevalue","attribution","attributional","attributive","attrition","attrs","atts","attucks","attune","atty","atv","atwitter","atwood","atypical","au","aube","auberge","aubergine","auberon","aubert","auberta","aubine","aubree","aubrette","aubrey","aubrie","aubry","auburn","auc","auckland","auction","auctioneer","auctor","aud","audacious","audaciousness","audacity","auden","audi","audibility","audible","audibles","audibly","audie","audience","audio","audiobook","audioformat","audiogram","audiological","audiologist","audiology","audiomanager","audiometer","audiometric","audiometry","audiophile","audioplayer","audiotape","audiovisual","audit","audited","audition","auditor","auditorium","auditory","audra","audre","audrey","audrie","audry","audrye","audubon","audy","auerbach","aug","augean","auger","aught","augie","augment","augmentation","augmentative","augmenter","augue","augur","augury","august","augusta","augustan","auguste","augustin","augustina","augustine","augustinian","augustness","augusto","augustus","augy","auk","aundrea","aunt","auntie","aunty","aura","aural","aurea","aurel","aurelea","aurelia","aurelie","aurelio","aurelius","aureole","aureomycin","auria","auric","auricle","auricular","aurie","auriga","aurilia","aurlie","auroora","aurora","auroral","aurore","aurthur","auschwitz","auscultate","auscultation","auspice","auspicious","auspiciousness","auspiciousnesses","aussie","austen","austere","austereness","austerity","austin","austina","austine","austral","australasia","australasian","australes","australia","australian","australis","australites","australoid","australopithecus","austria","austrian","austronesian","aut","aute","auth","authentic","authentically","authenticate","authenticated","authenticating","authentication","authenticationmanager","authenticator","authenticatorbase","authenticity","author","authoress","authorial","authoritarian","authoritarianism","authoritative","authoritativeness","authorities","authority","authorization","authorize","authorized","authorizer","authorizes","authors","authorship","authservice","authtoken","autism","autistic","auto","autobahn","autobiographer","autobiographic","autobiographical","autobiography","autoclave","autocollimator","autocommit","autocomplete","autocompletetextview","autoconfigure","autocorrelate","autocorrelation","autocracy","autocrat","autocratic","autocratically","autodesk","autodial","autodidact","autoeventwireup","autofac","autofill","autofilter","autofluorescence","autofocus","autogeneratecolumns","autograph","autographs","autoignition","autoimmune","autoimmunity","autoincrement","autolayout","autoload","autoloader","automagically","automaker","automapper","automata","automate","automated","automatic","automatically","automating","automation","automatism","automatize","automaton","automobile","automorphism","automotive","autonavigator","autonomic","autonomous","autonomy","autopilot","autoplay","autopostback","autoprefixer","autopsy","autoregressive","autorelease","autorepeat","autosize","autostart","autosuggestibility","autotransformer","autowire","autowired","autowiredannotationbeanpostprocessor","autoworker","autumn","autumnal","aux","auxiliary","auxin","av","ava","avail","availability","available","availableness","availably","availing","avalanche","avalon","avant","avarice","avaricious","avariciousness","avast","avatar","avaudioplayer","avaunt","avc","avd","avdp","ave","aveline","avenge","avenged","avenger","aventine","aventino","avenue","average","averages","averell","averil","averill","avernus","averred","averrer","averring","averroes","avers","averse","averseness","aversion","avert","avery","averyl","aves","avesta","avfoundation","avg","avi","avian","aviary","aviate","aviation","aviator","aviatrices","aviatrix","avicenna","avictor","avid","avidity","avie","avigdor","avignon","avila","avionic","avionics","avior","avis","avitaminoses","avitaminosis","aviv","aviva","avivah","avocado","avocation","avocational","avogadro","avoid","avoidable","avoidably","avoidance","avoided","avoider","avoiding","avoids","avoirdupois","avon","avouch","avow","avowal","avowed","avower","avplayer","avr","avram","avril","avrit","avro","avrom","avuncular","avx","aw","awacs","await","awaiting","awake","awakefromnib","awaken","awakened","awakener","awakening","award","awarder","aware","awareness","awash","away","awe","aweigh","awesome","awesomeness","awestruck","awful","awfuller","awfullest","awfulness","awhile","awk","awkward","awkwardness","awl","awn","awning","awoke","awoken","awol","awry","aws","awt","ax","axd","axe","axehead","axel","axeman","axes","axial","axillary","axiological","axiology","axiom","axiomatic","axiomatically","axiomatization","axiomatize","axion","axios","axis","axle","axletree","axolotl","axon","ay","ayah","ayahs","ayala","ayatollah","ayatollahs","aye","ayers","aylmar","aylmer","aymara","aymer","ayn","az","azalea","azania","azazel","azerbaijan","azimuth","azimuthal","azimuths","azores","azov","azt","aztec","aztecan","azure","azurewebsites","b","ba","baa","baal","bab","babar","babara","babb","babbage","babbette","babbie","babbitt","babble","babbler","babcock","babe","babel","babette","babita","babka","baboon","babushka","baby","babyhood","babyish","babylon","babylonia","babylonian","babysat","babysit","babysitter","babysitting","bac","bacall","bacardi","baccalaureate","baccarat","bacchanal","bacchanalia","bacchanalian","bacchic","bacchus","bach","bachelor","bachelorhood","bacillary","bacilli","bacillus","back","backache","backarrow","backbench","backbencher","backbit","backbite","backbiter","backbitten","backboard","backbone","backbreaking","backbutton","backchaining","backcloth","backcolor","backdate","backdrop","backdropped","backdropping","backed","backend","backends","backer","backfield","backfill","backfire","backgammon","background","backgroundcolor","backgroundimage","backgrounds","backgroundworker","backhand","backhanded","backhander","backhoe","backing","backlash","backless","backlog","backlogged","backlogging","backorder","backpack","backpacker","backpedal","backplane","backplate","backrest","backscatter","backseat","backside","backslapper","backslapping","backslash","backslashes","backslid","backslide","backslider","backspace","backspin","backstabber","backstabbing","backstage","backstair","backstitch","backstop","backstopped","backstopping","backstreet","backstretch","backstroke","backtalk","backticks","backtrace","backtrack","backtracking","backup","backups","backus","backward","backwardness","backwards","backwash","backwater","backwood","backwoodsman","backwoodsmen","backyard","bacon","baconer","bacteria","bacterial","bactericidal","bactericide","bacteriologic","bacteriological","bacteriologist","bacteriology","bacterium","bactria","bad","badder","baddest","baddie","bade","baden","badge","badger","badinage","badland","badlands","badlogic","badly","badman","badmen","badminton","badmouth","badmouths","badness","badrequest","baedeker","baez","baffin","baffle","bafflement","baffler","baffling","bag","bagatelle","bagel","bagful","baggage","baggageman","baggagemen","bagged","bagger","baggily","bagginess","bagging","baggy","baghdad","bagpipe","bagpiper","bagrodia","bags","baguette","baguio","bah","baha","bahama","bahamanian","bahamian","bahia","bahrain","bahs","baikal","bail","bailey","bailie","bailiff","bailiwick","baillie","bailout","bailsman","bailsmen","baily","baird","bairn","bait","baiter","baize","baja","bak","bake","baked","bakehouse","bakelite","baker","bakersfield","bakery","bakeshop","baking","baklava","baksheesh","baku","bakunin","bal","balaclava","balalaika","balance","balanced","balancedness","balancer","balanchine","balancing","balboa","balcony","bald","balder","balderdash","baldfaced","baldness","baldric","balduin","baldwin","baldy","bale","balearic","baleen","baleful","balefuller","balefullest","balefulness","baler","balfour","bali","balinese","balk","balkan","balkanization","balkanize","balker","balkhash","balkiness","balky","ball","ballad","ballade","balladeer","balladry","ballard","ballast","ballcock","baller","ballerina","ballet","balletic","ballfields","ballgame","ballistic","ballistics","balloon","balloonist","ballot","balloter","ballpark","ballplayer","ballpoint","ballroom","balls","ballsy","ballyhoo","balm","balminess","balmy","baloney","balsa","balsam","balsamic","balthazar","baltic","baltimore","baluchistan","baluster","balustrade","balzac","bam","bamako","bamberger","bambi","bambie","bamboo","bamboozle","bamby","ban","banach","banal","banality","banana","bananas","bancroft","band","bandage","bandager","bandanna","bandbox","bandeau","bandeaux","bander","banding","bandit","banditry","bandmaster","bandoleer","bandpass","bands","bandsman","bandsmen","bandstand","bandstop","bandung","bandwagon","bandwidth","bandwidths","bandy","bane","baneful","banefuller","banefullest","bang","bangalore","banger","bangkok","bangladesh","bangladeshi","bangle","bangor","bangui","bani","banish","banisher","banishment","banister","banjarmasin","banjo","banjoist","banjul","bank","bankaccount","bankbook","bankcard","banker","banking","banknote","bankroll","bankrupt","bankruptcy","banks","banky","banned","banneker","banner","banners","banning","bannister","bannock","banns","banquet","banqueter","banquette","bans","banshee","bantam","bantamweight","banter","banterer","bantering","banting","bantu","banyan","banzai","baobab","baos","baotou","baptism","baptismal","baptist","baptiste","baptistery","baptistry","baptize","baptized","baptizer","baptizes","bar","barabbas","barb","barbabas","barbabra","barbadian","barbados","barbara","barbaraanne","barbarella","barbarian","barbarianism","barbaric","barbarically","barbarism","barbarity","barbarize","barbarossa","barbarous","barbarousness","barbary","barbe","barbecue","barbed","barbee","barbel","barbell","barbeque","barber","barbered","barberry","barbershop","barbette","barbey","barbi","barbie","barbital","barbiturate","barbour","barbra","barbuda","barbwire","barby","barcarole","barcelona","barchart","barclay","barcode","bard","barde","bardeen","bardic","bare","bareback","barefaced","barefacedness","barefoot","barehanded","bareheaded","barelegged","barely","bareness","barents","barf","barfly","bargain","bargainer","barge","bargeman","bargemen","bargepole","barhop","barhopped","barhopping","bari","baritone","barium","bark","barked","barkeep","barkeeper","barker","barkley","barks","barley","barleycorn","barlow","barmaid","barman","barmen","barn","barnabas","barnabe","barnaby","barnacle","barnard","barnaul","barnebas","barnes","barnett","barney","barnful","barnhard","barnie","barnsful","barnstorm","barnstormer","barnum","barny","barnyard","baroda","barometer","barometric","barometrically","baron","baronage","baroness","baronet","baronetcy","baronial","barony","baroque","barplot","barque","barquisimeto","barr","barrack","barracker","barracuda","barrage","barranquilla","barre","barred","barrel","barren","barrenness","barrera","barret","barrett","barrette","barri","barricade","barrie","barrier","barriers","barring","barrio","barrister","barron","barroom","barrow","barry","barrymore","bars","barstool","barstow","bart","bartel","bartend","bartender","barter","barterer","barth","barthel","bartholdi","bartholemy","bartholomeo","bartholomeus","bartholomew","bartie","bartk","bartlet","bartlett","bartolemo","bartolomeo","barton","bartram","barty","bary","barycenter","barycentre","barycentric","baryon","baryram","baryshnikov","bas","basal","basalt","basaltic","bascom","base","baseadapter","baseaddress","baseball","baseband","baseboard","baseclass","basecontroller","based","basedir","basel","baseless","baseline","basely","baseman","basemen","basement","basename","baseness","basepath","baseplate","bases","basetting","basetype","baseurl","bash","bashful","bashfulness","basho","bashrc","basia","basic","basically","basicdbobject","basichttpbinding","basicnamevaluepair","basics","basie","basil","basilar","basile","basilica","basilio","basilisk","basilius","basin","basinful","basis","bask","basket","basketball","basketry","basketwork","basophilic","basque","basra","bass","basset","basseterre","bassett","bassinet","bassist","basso","bassoon","bassoonist","basswood","bast","bastard","bastardization","bastardize","bastardized","bastardy","baste","baster","bastian","bastien","bastille","basting","bastion","basutoland","bat","bataan","batavia","batch","batches","batchsize","bate","bated","bater","bates","bath","bathe","bather","bathetic","bathhouse","bathmat","batholomew","bathos","bathrobe","bathroom","baths","bathsheba","bathtub","bathwater","bathyscaphe","bathysphere","batik","batista","batiste","batman","batmen","baton","batsheva","batsman","batsmen","battalion","batted","batten","batter","batteries","battery","batting","battle","battledore","battledress","battlefield","battlefront","battleground","battlement","battler","battleship","batty","batu","batwings","bauble","baud","baudelaire","baudoin","baudouin","bauer","bauhaus","baulk","bausch","bauxite","bavaria","bavarian","bawd","bawdily","bawdiness","bawdy","bawl","bawler","bax","baxie","baxter","baxy","bay","bayamon","bayard","bayberry","bayda","bayer","bayes","bayesian","baylor","bayonet","bayonne","bayou","bayreuth","baz","bazaar","bazel","bazillion","bazooka","bb","bbb","bbbb","bbc","bbl","bbox","bbq","bbs","bc","bcc","bcd","bcp","bcrypt","bd","bdd","bdist","bdrm","be","bea","beach","beachcomber","beachhead","beachwear","beacon","beacons","bead","beading","beadle","beadsman","beadworker","beady","beagle","beak","beaker","beale","bealle","beam","bean","beanbag","beancreationexception","beanie","beanpole","beans","beanstalk","beanutils","bear","bearable","bearably","beard","bearded","beardless","beardmore","beardsley","bearer","bearing","bearish","bearishness","bearlike","bearnaise","bearnard","bearskin","beasley","beast","beasties","beastings","beastliness","beastly","beat","beatable","beatably","beaten","beater","beatific","beatifically","beatification","beatify","beating","beatitude","beatlemania","beatles","beatnik","beatrice","beatrisa","beatrix","beatriz","beats","beau","beauchamps","beaufort","beaujolais","beaumarchais","beaumont","beauregard","beaut","beauteous","beauteousness","beautician","beautification","beautifier","beautiful","beautifully","beautifulness","beautifulsoup","beautify","beauty","beauvoir","beaux","beaver","beaverton","bebe","bebop","becalm","became","because","becca","bechtel","beck","becka","becker","becket","beckett","becki","beckie","beckon","becky","becloud","become","becomes","becoming","becquerel","bed","bedaub","bedazzle","bedazzlement","bedbug","bedchamber","bedclothes","bedded","bedder","bedding","bede","bedeck","bedevil","bedevilment","bedfast","bedfellow","bedford","bedim","bedimmed","bedimming","bedizen","bedlam","bedlinen","bedmaker","bedmate","bedouin","bedpan","bedpost","bedraggle","bedridden","bedrock","bedroll","bedroom","bedsheets","bedside","bedsit","bedsitter","bedsore","bedspread","bedspring","bedstead","bedstraw","bedtime","bee","beebe","beebread","beech","beecher","beechnut","beechwood","beef","beefburger","beefcake","beefiness","beefsteak","beefy","beehive","beekeeper","beekeeping","beeline","beelzebub","been","beep","beeper","beer","beerbohm","beermat","beery","beeswax","beet","beethoven","beetle","beeton","beetroot","beeves","befall","befell","befit","befitted","befitting","befog","befogged","befogging","before","beforeeach","beforehand","beforesend","befoul","befriend","befuddle","befuddlement","beg","began","beget","begetting","beggar","beggarliness","beggarly","beggary","begged","begging","begin","beginform","begining","begininvoke","beginner","beginners","beginning","beginpath","begins","begintransaction","begone","begonia","begot","begotten","begrime","begrudge","begrudging","beguile","beguilement","beguiler","beguiling","beguine","begum","begun","behalf","behalves","behan","behave","behaves","behaving","behavior","behavioral","behaviorism","behaviorist","behavioristic","behaviors","behaviorsubject","behaviour","behead","beheld","behemoth","behemoths","behest","behind","behindhand","behold","beholder","behoofs","behoove","behooving","behring","beiderbecke","beige","beijing","beilul","being","beirut","beitris","bejewel","bekesy","bekki","bel","bela","belabor","belarus","belate","belated","belatedness","belau","belay","belch","beleaguer","belem","belfast","belfry","belg","belgian","belgium","belgrade","belia","belicia","belie","belief","beliefs","belier","believability","believable","believably","believe","believed","believer","believes","believing","belinda","belita","belittle","belittlement","belittler","belize","bell","bella","belladonna","bellamy","bellanca","bellatrix","bellboy","belle","belled","belletrist","belletristic","belleville","bellflower","bellhop","bellicose","bellicoseness","bellicosity","belligerence","belligerency","belligerent","bellina","belling","bellini","bellman","bellmen","bellovin","bellow","bellows","bells","bellwether","bellwood","belly","bellyache","bellyacher","bellybutton","bellyful","bellyfull","belmont","belmopan","beloit","belong","belonging","belongs","belongsto","belongstomany","belorussia","belorussian","belove","beloved","below","belshazzar","belt","belted","belting","belton","beltran","beltsville","beltway","beluga","belushi","belva","belvedere","belvia","bely","beman","bemire","bemoan","bemuse","bemused","bemusement","ben","benacerraf","benares","bench","bencher","benchmark","benchmarking","benchmarks","bend","bended","bender","bendick","bendicty","bendite","bendix","beneath","benedetta","benedetto","benedick","benedict","benedicta","benedictine","benediction","benedicto","benedictory","benedikt","benedikta","benefaction","benefactor","benefactress","benefice","beneficence","beneficent","beneficial","beneficialness","beneficiary","benefit","benefiter","benefits","benelux","benet","benetta","benetton","benevolence","benevolent","benevolentness","bengal","bengali","benghazi","bengt","beniamino","benighted","benightedness","benign","benignant","benignity","benin","beninese","benita","benito","benjamen","benjamin","benji","benjie","benjy","benn","bennett","benni","bennie","bennington","benny","benoit","benoite","benson","bent","bentham","bentlee","bentley","benton","bents","bentwood","benumb","benyamin","benz","benzedrine","benzene","benzine","beograd","beowulf","bequeath","bequeaths","bequest","ber","berate","berber","bereave","bereavement","bereft","berenice","beret","berg","bergen","berger","bergerac","berget","berglund","bergman","bergson","bergsten","bergstrom","beribbon","beriberi","bering","beringer","berk","berke","berkeley","berkelium","berkie","berkley","berkly","berkowitz","berkshire","berky","berle","berlin","berliner","berlioz","berlitz","berm","berman","bermuda","bermudan","bermudian","bern","berna","bernadene","bernadette","bernadina","bernadine","bernard","bernardina","bernardine","bernardino","bernardo","bernarr","bernays","bernbach","berne","bernelle","bernese","bernete","bernetta","bernette","bernhard","bernhardt","berni","bernice","bernie","berniece","bernini","bernita","bernoulli","bernstein","berny","berra","berri","berrie","berry","berrylike","berserk","berserker","bert","berta","berte","berth","bertha","berthe","berths","berti","bertie","bertillon","bertina","bertine","berton","bertram","bertrand","bertrando","berty","beryl","beryle","beryllium","berzelius","bes","beseech","beseecher","beseeching","beseem","beset","besetting","beside","besides","besiege","besieger","besmear","besmirch","besom","besot","besotted","besotting","besought","bespangle","bespatter","bespeak","bespectacled","bespoke","bespoken","bess","bessel","bessemer","bessie","bessy","best","bestial","bestiality","bestiary","bestir","bestirred","bestirring","bestow","bestowal","bestrew","bestrewn","bestridden","bestride","bestrode","bestseller","bestselling","bestubble","bet","beta","betake","betaken","betatron","betcha","betel","betelgeuse","beth","bethanne","bethany","bethe","bethel","bethena","bethesda","bethina","bethink","bethlehem","bethought","bethune","betide","betimes","betoken","betook","betray","betrayal","betrayer","betroth","betrothal","betrothed","betroths","betsey","betsy","betta","bette","betteann","betteanne","better","betterment","betti","bettie","bettina","bettine","betting","bettor","betty","bettye","between","betweenness","betwixt","beulah","bev","bevan","bevel","beverage","beverie","beverlee","beverley","beverlie","beverly","bevin","bevon","bevvy","bevy","bewail","beware","bewhisker","bewigged","bewilder","bewildered","bewildering","bewilderment","bewitch","bewitching","bewitchment","bey","beyond","bezel","bezier","bf","bfs","bg","bgcolor","bgr","bh","bhopal","bhutan","bhutanese","bhutto","bi","bialystok","bianca","bianco","bianka","biannual","bias","biased","biases","biathlon","biaxial","bib","bibbed","bibbie","bibbing","bibby","bibbye","bibendum","bibi","bible","biblical","biblicists","bibliographer","bibliographic","bibliographical","bibliography","bibliophile","bibulous","bicameral","bicameralism","bicarb","bicarbonate","bicentenary","bicentennial","bicep","biceps","bichromate","bicker","bickerer","bickering","biconcave","biconnected","biconvex","bicuspid","bicycle","bicycler","bicyclist","bid","biddable","bidden","bidder","biddie","bidding","biddle","biddy","bide","bider","bidet","bidget","bidiagonal","bidirectional","bids","biennial","biennium","bienville","bier","bierce","bifocal","bifurcate","bifurcation","big","bigamist","bigamous","bigamy","bigdecimal","bigelow","bigfoot","bigged","bigger","biggest","biggie","bigging","biggish","bighead","bighearted","bigheartedness","bighorn","bight","bigint","biginteger","bigmouth","bigmouths","bigness","bigot","bigoted","bigotry","bigquery","bigwig","biharmonic","bijection","bijective","bijou","bijoux","bike","biker","bikini","biko","bil","bilabial","bilateral","bilateralness","bilayer","bilbao","bilberry","bilbo","bile","bilge","bili","biliary","bilinear","bilingual","bilingualism","bilious","biliousness","bilk","bilker","bill","billboard","biller","billet","billfold","billi","billiard","billie","billing","billings","billingsgate","billion","billionaire","billions","billionths","billow","billowy","billposters","bills","billy","billye","bimbo","bimetallic","bimetallism","bimini","bimodal","bimolecular","bimonthly","bin","binaries","binary","binaural","bind","bindable","binded","binder","bindery","binding","bindingcontext","bindingflags","bindingness","bindingredirect","bindingresult","bindings","bindingsource","bindle","bindparam","binds","bindvalue","bindweed","bing","binge","bingham","binghamton","bingo","bini","bink","binky","binnacle","binned","binni","binnie","binning","binny","binocular","binodal","binomial","bins","bintray","binuclear","bio","biochemical","biochemist","biochemistry","biodegradability","biodegradable","biodiversity","bioengineering","bioethics","biofeedback","biog","biograph","biographer","biographic","biographical","biography","bioko","biol","biologic","biological","biologist","biology","biomass","biomedical","biomedicine","biometric","biometrics","biometry","biomolecule","biomorph","bionic","bionically","bionics","biophysic","biophysical","biophysicist","biophysics","biopic","biopsy","biorhythm","bios","bioscience","biosphere","biostatistic","biosynthesized","biotechnological","biotechnologist","biotechnology","biotic","biotin","bipartisan","bipartisanship","bipartite","bipartition","biped","bipedal","biplane","bipolar","bipolarity","biracial","birch","bird","birdbath","birdbaths","birdbrain","birdcage","birder","birdhouse","birdie","birdieing","birdlike","birdlime","birds","birdseed","birdseye","birdsong","birdtables","birdwatch","birefringence","birefringent","biretta","birgit","birgitta","birk","birkenstock","birmingham","biro","biron","birt","birth","birthdate","birthday","birthmark","birthplace","birthrate","birthright","births","birthstone","bis","biscay","biscayne","biscuit","bisect","bisection","bisector","biserial","bisexual","bisexuality","bishkek","bishop","bishopric","bismarck","bismark","bismuth","bismuths","bison","bisque","bissau","bistable","bistate","bistro","bisyllabic","bit","bitblt","bitbucket","bitch","bitchily","bitchiness","bitchy","bitcoin","bitcoins","bitconverter","bite","biter","biting","bitmap","bitmapdata","bitmapdrawable","bitmapfactory","bitmapimage","bitmaps","bitnami","bitnet","bitrate","bits","bitser","bitset","bitted","bitten","bitter","bittern","bitterness","bitternut","bitterroot","bittersweet","bitting","bitty","bitumen","bituminous","bitwise","bivalent","bivalve","bivariate","bivouac","bivouacked","bivouacking","biweekly","biyearly","biz","bizarre","bizarreness","bizet","biztalk","bizzes","bj","bjorn","bk","bl","bla","blab","blabbed","blabber","blabbermouth","blabbermouths","blabbing","blabla","blablabla","black","blackamoor","blackball","blackberry","blackbird","blackbirder","blackboard","blackbody","blackburn","blackcolor","blackcurrant","blacken","blackener","blackfeet","blackfoot","blackguard","blackhead","blacking","blackish","blackjack","blackleg","blacklist","blackmail","blackmailer","blackman","blackmer","blackness","blackout","blackpool","blacksmith","blacksmiths","blacksnake","blackspot","blackstone","blackthorn","blacktop","blacktopped","blacktopping","blackwell","bladder","bladdernut","bladderwort","blade","blah","blahblah","blahs","blaine","blair","blaire","blake","blakelee","blakeley","blakey","blame","blameless","blamelessness","blamer","blameworthiness","blameworthy","blanc","blanca","blanch","blancha","blanchard","blanche","blancher","blancmange","bland","blandish","blandishment","blandit","blandness","blane","blank","blankenship","blanket","blanketing","blankness","blanks","blanton","blantyre","blare","blarney","blas","blaspheme","blasphemer","blasphemous","blasphemousness","blasphemy","blast","blaster","blasting","blastoff","blatancy","blatant","blather","blatting","blatz","blavatsky","blayne","blaze","blazer","blazing","blazon","blazoner","bldg","ble","bleach","bleached","bleacher","bleak","bleakness","blear","blearily","bleariness","bleary","bleat","bleater","bleed","bleeder","bleeker","bleep","blemish","blemished","blench","blend","blender","blenheim","bless","blessed","blessedness","blessing","blevins","blew","bligh","blight","blighter","blimey","blimp","blind","blinded","blinder","blindfold","blinding","blindly","blindness","blindside","blink","blinker","blinking","blinks","blinni","blinnie","blinny","blintz","blintze","blip","blipped","blipping","bliss","blisse","blissful","blissfulness","blister","blistering","blistery","blit","blithe","blitheness","blither","blithesome","blitz","blitzkrieg","blizzard","blk","bloat","bloater","blob","blobbed","blobbing","blobs","bloc","bloch","block","blockade","blockader","blockage","blockbuster","blockbusting","blockchain","blocked","blocker","blockhead","blockhouse","blocking","blockjunit","blockquote","blocks","blocksize","blocky","bloemfontein","blog","blogger","blogging","bloginfo","blogpost","blogs","blogspot","bloke","blomberg","blomquist","blond","blonde","blondell","blondelle","blondie","blondish","blondness","blondy","blood","bloodbath","bloodbaths","bloodcurdling","bloodhound","bloodied","bloodiness","bloodless","bloodlessness","bloodletting","bloodline","bloodmobile","bloodroot","bloodshed","bloodshot","bloodsport","bloodstain","bloodstock","bloodstone","bloodstream","bloodsucker","bloodsucking","bloodthirstily","bloodthirstiness","bloodthirsty","bloodworm","bloody","bloodymindedness","bloom","bloomer","bloomfield","bloomington","bloop","blooper","blossom","blossomy","blot","blotch","blotchy","blotted","blotter","blotting","blotto","blouse","blow","blower","blowfish","blowfly","blowgun","blowing","blown","blowout","blowpipe","blowtorch","blowup","blowy","blowzy","blt","blubber","blubbery","blucher","bludgeon","blue","blueback","bluebeard","bluebell","blueberry","bluebill","bluebird","bluebonnet","bluebook","bluebottle","bluebush","bluefish","bluegill","bluegrass","blueing","blueish","bluejacket","bluejeans","bluemix","blueness","bluenose","bluepoint","blueprint","bluer","bluest","bluestocking","bluesy","bluet","bluetooth","bluetoothadapter","bluetoothdevice","bluff","bluffer","bluffness","bluing","bluish","bluishness","blum","blumenthal","blunder","blunderbuss","blunderer","blundering","blunt","bluntness","blur","blurb","blurred","blurriness","blurring","blurry","blurt","blush","blusher","blushing","bluster","blusterer","blustering","blusterous","blustery","blvd","blythe","bm","bmi","bmp","bmw","bn","bo","boa","boar","board","boarded","boarder","boardgames","boarding","boardinghouse","boardroom","boards","boardwalk","boast","boaster","boastful","boastfulness","boat","boatclubs","boater","boathouse","boating","boatload","boatman","boatmen","boatswain","boatyard","bob","bobbe","bobbed","bobbee","bobbette","bobbi","bobbie","bobbin","bobbing","bobbitt","bobble","bobbsey","bobby","bobbye","bobbysoxer","bobcat","bobette","bobina","bobine","bobinette","bobolink","bobrow","bobs","bobsled","bobsledded","bobsledder","bobsledding","bobsleigh","bobsleighs","bobtail","bobwhite","boca","boccaccio","boccie","bock","bockwurst","bod","bode","bodega","bodenheim","bodhidharma","bodhisattva","bodice","bodied","bodies","bodiless","bodily","boding","bodkin","body","bodybuilder","bodybuilding","bodyguard","bodying","bodyparser","bodysuit","bodyweight","bodywork","boeing","boeotia","boeotian","boer","bog","bogart","bogartian","bogey","bogeyman","bogeymen","bogged","bogging","boggle","boggling","boggy","bogie","bogot","bogus","bogy","bogyman","bogymen","boheme","bohemia","bohemian","bohemianism","bohr","boigie","boil","boiled","boiler","boilermaker","boilerplate","boils","bois","boise","boisterous","boisterousness","bokeh","bola","bold","boldface","boldness","bole","bolero","boleyn","bolivar","bolivares","bolivia","bolivian","boll","bollard","bollix","bolo","bologna","bolometer","boloney","bolshevik","bolshevism","bolshevist","bolshevistic","bolshoi","bolster","bolsterer","bolt","bolted","bolter","bolton","bolts","boltzmann","bolus","bom","bomb","bombard","bombardier","bombardment","bombast","bombastic","bombastically","bombay","bomber","bombproof","bombshell","bona","bonanza","bonaparte","bonaventure","bonbon","bond","bondage","bonder","bondholder","bondie","bondman","bondmen","bondon","bonds","bondsman","bondsmen","bondwoman","bondwomen","bondy","bone","boned","bonehead","boneless","boner","bones","bonfire","bong","bongo","bonham","bonhomie","boniface","boniness","bonita","bonito","bonjour","bonkers","bonn","bonnee","bonner","bonnet","bonneted","bonneville","bonni","bonnibelle","bonnie","bonny","bonsai","bontempo","bonus","bony","bonzes","boo","boob","booby","boodle","boogeyman","boogie","boogieing","boohoo","book","bookbind","bookbinder","bookbindery","bookbinding","bookcase","booked","bookend","booker","bookid","bookie","booking","bookings","bookish","bookishness","bookkeep","bookkeeper","bookkeeping","booklet","bookmaker","bookmaking","bookmark","bookmarks","bookmobile","bookplate","books","bookseller","bookshelf","bookshelves","bookshop","bookstall","bookstore","bookwork","bookworm","bool","boole","boolean","booleanfield","booleans","boom","boomer","boomerang","boomtown","boon","boondocks","boondoggle","boondoggler","boone","boonie","boonies","boony","boor","boorish","boorishness","boost","booster","boosterism","boot","bootblack","boote","bootee","booth","boothe","booths","bootie","booting","bootlaces","bootle","bootleg","bootlegged","bootlegger","bootlegging","bootless","bootloader","bootply","bootprints","bootstrap","bootstrapcdn","bootstrapped","bootstrapper","bootstrapping","booty","booze","boozer","boozy","bop","bopped","bopping","borate","borax","bord","bordeaux","bordello","borden","border","borderbrush","bordercolor","bordered","borderer","borderfactory","borderland","borderlayout","borderline","borderpane","borderradius","borders","borderstyle","borderthickness","borderwidth","bordie","bordon","bordy","bore","borealis","boreas","bored","boredom","boreholes","borer","borg","borges","borgia","boric","boring","boris","bork","born","borne","borneo","borodin","boron","borosilicate","borough","boroughs","borroughs","borrow","borrowed","borrower","borrowing","borscht","borstal","boru","borzoi","bos","bosch","bose","bosh","bosnia","bosnian","bosom","bosomy","boson","bosporus","boss","bossily","bossiness","bossism","bossy","bostitch","boston","bostonian","bosun","boswell","bot","botanic","botanical","botanist","botany","botch","botcher","botes","botfly","both","bother","bothered","bothersome","bothy","boto","bots","botswana","botticelli","bottle","bottleneck","bottler","bottom","bottomless","bottomlessness","bottommost","botulin","botulinus","botulism","boucher","boudoir","bouffant","bougainvillea","bough","boughs","bought","bouillabaisse","bouillon","boulder","boulevard","bounce","bouncer","bouncily","bouncing","bouncy","bouncycastle","bound","boundaries","boundary","bounded","boundedness","bounden","bounder","bounders","boundfield","bounding","boundingbox","boundless","boundlessness","bounds","bounteous","bounteousness","bountiful","bountifulness","bounty","bouquet","bourbaki","bourbon","bourgeois","bourgeoisie","bourke","bourne","bournemouth","bout","boutique","boutonnire","bouvier","bovary","bovine","bow","bowditch","bowdlerization","bowdlerize","bowed","bowel","bowell","bowen","bower","bowers","bowery","bowes","bowie","bowing","bowl","bowlder","bowleg","bowlegged","bowler","bowlful","bowline","bowling","bowman","bowmen","bows","bowser","bowsprit","bowstring","bowwow","box","boxcar","boxed","boxer","boxes","boxful","boxing","boxlayout","boxlike","boxplot","boxtops","boxwood","boxy","boy","boyce","boycey","boycie","boycott","boycotter","boyd","boyer","boyfriend","boyhood","boyish","boyishness","boyle","boys","boyscout","boysenberry","bozo","bp","bpi","bpm","bps","bq","br","bra","brace","braced","bracelet","bracer","braces","brachia","brachium","bracken","bracket","bracketed","bracketing","brackets","brackish","brackishness","bract","brad","bradan","bradawl","bradbury","bradburys","bradded","bradding","braddock","brade","braden","bradford","bradley","bradly","bradney","bradshaw","bradstreet","brady","brae","brag","bragg","braggadocio","braggart","bragged","bragger","braggest","bragging","brahe","brahma","brahman","brahmanism","brahmaputra","brahmin","brahms","braid","braider","braiding","braille","brain","brainard","braincell","brainchild","brainchildren","braininess","brainless","brainlessness","brainpower","brainstorm","brainstorming","brainteaser","brainteasing","braintree","brainwash","brainwasher","brainwashing","brainwave","brainy","braise","brake","brakeman","brakemen","bram","bramble","brambling","brambly","brampton","bran","brana","branch","branched","branches","branching","branchlike","branchville","brand","brandais","brande","brandea","branded","brandeis","brandel","branden","brandenburg","brander","brandi","brandice","brandie","branding","brandise","brandish","brando","brandon","brands","brandt","brandtr","brandy","brandyn","brandywine","braniff","branned","branning","brannon","brant","brantley","braque","brash","brashness","brasilia","brass","brasserie","brassiere","brassily","brassiness","brassy","brat","bratislava","brattain","bratty","bratwurst","braun","bravado","bravadoes","brave","braveness","bravery","bravest","bravo","bravura","brawl","brawler","brawn","brawniness","brawny","bray","brayer","braze","brazen","brazenness","brazer","brazier","brazil","brazilian","brazos","brazzaville","breach","breacher","bread","breadbasket","breadboard","breadbox","breadcrumb","breadcrumbs","breadfruit","breadline","breadth","breadths","breadwinner","break","breakable","breakables","breakage","breakaway","breakdown","breaker","breakfast","breakfaster","breakfront","breaking","breakneck","breakout","breakpoint","breakpoints","breaks","breakthrough","breakthroughs","breakup","breakwater","bream","breanne","brear","breast","breastbone","breastfed","breastfeed","breasting","breastplate","breaststroke","breastwork","breath","breathable","breathalyser","breathalyzer","breathe","breather","breathing","breathless","breathlessness","breaths","breathtaking","breathy","brecht","breckenridge","bred","bredes","bree","breech","breeching","breed","breeder","breeding","breeds","breena","breeze","breezeway","breezily","breeziness","breezy","bremen","bremsstrahlung","bren","brena","brenda","brendan","brenden","brendin","brendis","brendon","brenn","brenna","brennan","brennen","brenner","brent","brenton","bresenham","brest","bret","brethren","breton","brett","breve","brevet","brevetted","brevetting","breviary","brevity","brew","brewer","brewery","brewing","brewpub","brewster","brezhnev","bria","brian","briana","brianna","brianne","briano","briant","briar","bribe","briber","bribery","brice","brick","brickbat","bricklayer","bricklaying","brickmason","brickwork","brickyard","bridal","bridalveil","bride","bridegroom","bridesmaid","bridewell","bridge","bridgeable","bridged","bridgehead","bridgeport","bridger","bridges","bridget","bridgetown","bridgett","bridgette","bridgewater","bridgework","bridging","bridgman","bridie","bridle","bridled","bridleway","brie","brief","briefcase","briefed","briefing","briefly","briefness","briefs","brien","brier","brietta","brig","brigade","brigadier","brigadoon","brigand","brigandage","brigantine","brigg","brigham","bright","brighten","brightener","brightness","brighton","brigid","brigida","brigit","brigitta","brigitte","brilliance","brilliancy","brilliant","brilliantine","brilliantness","brillo","brillouin","brim","brimful","brimless","brimmed","brimming","brimstone","brina","brindisi","brindle","brine","briner","briney","bring","bringer","bringing","brings","brininess","brink","brinkley","brinkmanship","brinn","brinna","briny","brioche","brion","briquet","briquette","brisbane","brisk","brisket","briskness","bristle","bristly","bristol","brit","brita","britain","britannia","britannic","britannica","britches","briticism","british","britisher","britishly","britney","britni","briton","britt","britta","brittan","brittaney","brittani","brittany","britte","britten","britteny","brittle","brittleness","brittne","brittney","brittni","brnaba","brnaby","brno","bro","broach","broacher","broad","broadband","broadcast","broadcaster","broadcasting","broadcastreceiver","broadcasts","broadcloth","broadcloths","broaden","broader","broadleaved","broadloom","broadminded","broadness","broadsheet","broadside","broadsword","broadway","brobdingnag","brobdingnagian","brocade","broccoli","brochette","brochure","brock","brockie","brocky","brod","broddie","broddy","broderic","broderick","brodie","brody","brogan","broglie","brogue","broil","broiler","brok","broke","broken","brokenhearted","brokenness","broker","brokerage","brokers","bromide","bromidic","bromine","bron","bronc","bronchi","bronchial","bronchiolar","bronchiole","bronchiolitis","bronchitic","bronchitis","broncho","bronchus","bronco","broncobuster","bronnie","bronny","bronson","bronte","brontosaur","brontosaurus","bronx","bronze","bronzed","bronzing","brooch","brood","brooder","broodiness","brooding","broodmare","broody","brook","brookdale","brooke","brookfield","brookhaven","brooklet","brooklyn","brookmont","brookside","broom","broomstick","bros","brose","broth","brothel","brother","brotherhood","brotherliness","brotherly","broths","brougham","brought","brouhaha","brow","browbeat","brown","browne","brownell","brownian","brownie","browning","brownish","brownness","brownout","brownstone","brownsville","brows","browse","browser","browserify","browsermodule","browsername","browsers","browsing","brr","brubeck","bruce","brucellosis","brucie","bruckner","bruegel","brueghel","bruin","bruis","bruise","bruised","bruiser","bruit","brumidi","brummel","brunch","brunei","brunelleschi","brunet","brunette","brunhilda","brunhilde","bruno","brunswick","brunt","brush","brusher","brushes","brushfire","brushlike","brushoff","brushwood","brushwork","brushy","brusque","brusqueness","brussels","brutal","brutality","brutalization","brutalize","brutalized","brutalizes","brute","brutish","brutishness","brutus","bruxelles","bryan","bryana","bryant","bryanty","bryce","bryn","bryna","brynn","brynna","brynne","brynner","bryon","brzezinski","bs","bsa","bsd","bson","bss","bst","bstr","bt","btc","btn","btnsave","btnsubmit","btree","btu","btw","bu","bub","bubble","bubblegum","bubbler","bubbles","bubbling","bubbly","buber","bubo","buboes","bubonic","buccaneer","buchanan","bucharest","buchenwald","buchwald","buck","buckaroo","buckboard","bucker","bucket","bucketful","bucketname","buckets","buckeye","buckhorn","buckie","buckingham","buckle","buckled","buckler","buckles","buckley","buckling","buckner","buckram","bucksaw","buckshot","buckskin","buckteeth","bucktooth","buckwheat","bucky","bucolic","bucolically","bud","budapest","budd","budded","buddha","buddhism","buddhist","buddie","budding","buddy","budge","budgerigar","budget","budgetary","budgeter","budgie","budging","budweiser","buehring","buena","buf","buff","buffalo","buffaloes","buffer","buffered","bufferedimage","bufferedinputstream","bufferedoutputstream","bufferedreader","bufferedwriter","bufferer","buffering","buffers","buffersize","buffet","bufflehead","buffoon","buffoonery","buffoonish","buffy","buford","bufsize","bug","bugaboo","bugatti","bugbear","bugeyed","bugged","bugger","buggered","buggering","buggery","bugging","buggy","bugle","bugler","bugs","bugzilla","buick","build","buildconfig","buildcontext","builddir","builder","builders","building","buildings","buildpack","builds","buildscript","buildtoolsversion","buildtypes","buildup","built","builtin","builtins","buiron","bujumbura","bukhara","bukharin","bukkit","bulawayo","bulb","bulba","bulblet","bulbous","bulfinch","bulganin","bulgaria","bulgarian","bulge","bulgy","bulimarexia","bulimia","bulimic","bulk","bulkhead","bulkiness","bulky","bull","bulldog","bulldogged","bulldogger","bulldogging","bulldoze","bulldozer","bullet","bulletin","bulletproof","bullets","bullfight","bullfighter","bullfighting","bullfinch","bullfrog","bullhead","bullheaded","bullheadedness","bullhide","bullhorn","bullied","bullion","bullish","bullishness","bullock","bullpen","bullring","bullseye","bullshit","bullshitted","bullshitter","bullshitting","bullwhackers","bullwinkle","bully","bullyboy","bullying","bulrush","bultmann","bulwark","bum","bumble","bumblebee","bumbler","bumbling","bumbry","bummed","bummer","bummest","bumming","bump","bumper","bumpiness","bumpkin","bumppo","bumptious","bumptiousness","bumpy","bun","bunch","bunche","bunchy","bunco","buncombe","bundestag","bundle","bundled","bundler","bundles","bundling","bundy","bung","bungalow","bungee","bunghole","bungle","bungler","bungling","bunin","bunion","bunk","bunker","bunkhouse","bunkmate","bunko","bunkum","bunni","bunnie","bunny","bunsen","bunt","bunting","bunyan","buoy","buoyancy","buoyant","bur","burbank","burble","burbler","burbs","burch","burden","burdensome","burdensomeness","burdock","bureau","bureaucracy","bureaucrat","bureaucratic","bureaucratically","bureaucratization","bureaucratize","burg","burgeon","burger","burgess","burgh","burgher","burghs","burglar","burglarize","burglarproof","burglary","burgle","burgomaster","burgoyne","burgundian","burgundy","burial","buried","burier","burk","burke","burl","burlap","burler","burlesque","burlesquer","burley","burlie","burliness","burlingame","burlington","burly","burma","burmese","burn","burnable","burnaby","burnard","burne","burned","burner","burnett","burning","burnish","burnisher","burnoose","burnout","burns","burnside","burnt","burp","burr","burris","burrito","burro","burroughs","burrow","burrower","bursa","bursae","bursar","bursary","bursitis","burst","burster","burt","burtie","burton","burty","burundi","burundian","bury","bus","busboy","busby","busch","buses","busgirl","bush","bushel","bushido","bushiness","bushing","bushland","bushman","bushmaster","bushmen","bushnell","bushwhack","bushwhacker","bushwhacking","bushy","busily","business","businesses","businesslike","businessman","businessmen","businesspeople","businessperson","businesswoman","businesswomen","busk","busker","buskin","buss","bust","bustard","buster","bustle","bustling","busty","busy","busybody","busyness","busywork","but","butane","butch","butcher","butcherer","butchery","butene","butler","butt","butte","butted","butter","butterball","buttercup","buttered","butterfat","butterfield","butterfingered","butterfingers","butterfly","butterknife","buttermilk","butternut","butterscotch","buttery","butting","buttock","button","buttoner","buttonhole","buttonholer","buttons","buttonweed","buttonwood","buttress","butyl","butyrate","buuel","buxom","buxomness","buxtehude","buy","buyback","buyer","buyers","buying","buyout","buys","buzz","buzzard","buzzer","buzzword","buzzy","bv","bw","bx","bxs","by","bye","byelaw","byelorussia","byers","bygone","byid","bylaw","byline","byliner","byob","bypass","bypath","bypaths","byplay","byproduct","byram","byran","byrann","byrd","byre","byref","byrle","byrne","byroad","byrom","byron","byronic","byronism","bystander","byte","bytearray","bytearrayinputstream","bytearrayoutputstream","bytebuffer","bytecode","bytes","bytesread","bytestring","byval","byway","byword","byzantine","byzantium","bz","c","ca","cab","cabal","cabala","caballed","caballero","caballing","cabana","cabaret","cabbage","cabbed","cabbing","cabby","cabdriver","caber","cabernet","cabin","cabinet","cabinetmaker","cabinetmaking","cabinetry","cabinetwork","cable","cablecast","cablegram","cabochon","caboodle","caboose","cabot","cabrera","cabrini","cabriolet","cabstand","cacao","cacciatore","cache","cached","cachepot","caches","cachet","caching","cacilia","cacilie","cackle","cackler","cackly","cacm","cacophonist","cacophonous","cacophony","cacti","cactus","cad","cadaver","cadaverous","caddish","caddishness","caddric","caddy","cadence","cadenced","cadencing","cadent","cadenza","cadet","cadette","cadge","cadger","cadillac","cadiz","cadmium","cadre","caducei","caduceus","caedmon","caesar","caesura","caf","cafe","cafeteria","caffe","caffeine","caftan","cage","caged","cager","cagey","cagier","cagiest","cagily","caginess","cagney","cahokia","cahoot","cahra","cai","caiaphas","caiman","cain","caine","cairistiona","cairn","cairo","caisson","caitiff","caitlin","caitrin","cajole","cajolement","cajoler","cajolery","cajun","cake","cakephp","cakewalk","cal","calabash","calaboose","calais","calamari","calamine","calamitous","calamitousness","calamity","calayer","calc","calcareous","calcareousness","calciferous","calcification","calcify","calcimine","calcine","calcite","calcium","calcomp","calculability","calculable","calculate","calculated","calculates","calculating","calculatingly","calculation","calculations","calculative","calculator","calculi","calculus","calcutta","calder","caldera","calderon","caldron","caldwell","cale","caleb","caledonia","calendar","calendars","calender","calf","calfskin","calgary","calhoun","cali","caliban","caliber","calibrate","calibrated","calibrater","calibrating","calibration","calibrator","calibri","calico","calicoes","calida","calif","california","californian","californium","caligula","caliper","caliph","caliphate","caliphs","calisthenic","calisthenics","call","calla","callable","callactivityoncreate","callaghan","callahan","callao","callback","callbacks","callean","called","callee","caller","callers","calley","calli","callida","callie","calligraph","calligrapher","calligraphic","calligraphist","calligraphy","calling","callingconvention","calliope","callisthenics","callisto","calloc","callosity","callous","callousness","callout","callow","callowness","calls","callsite","callus","cally","calm","calming","calmness","caloocan","caloric","calorie","calories","calorific","calorimeter","calorimetric","calorimetry","caltech","calumet","calumniate","calumniation","calumniator","calumnious","calumny","calv","calvary","calve","calvert","calves","calvin","calvinism","calvinist","calvinistic","calyces","calypso","calyx","cam","camacho","camala","camaraderie","camber","cambial","cambium","cambodia","cambodian","cambrian","cambric","cambridge","camcorder","camden","came","camel","camelcase","camelhair","camella","camellia","camelopardalis","camelot","camembert","cameo","camera","camerae","cameraman","cameramen","cameras","cameraupdatefactory","camerawoman","camerawomen","cameron","cameroon","cameroonian","camey","cami","camila","camile","camilla","camille","camino","camion","camisole","cammed","cammi","cammie","cammy","camoens","camomile","camouflage","camouflager","camp","campaign","campaigner","campaigns","campanile","campanological","campanologist","campanology","campbell","campbellsport","camper","campesinos","campest","campfire","campground","camphor","campinas","camping","campos","campsite","campus","campy","camry","camshaft","camus","can","canaan","canaanite","canactivate","canad","canada","canadian","canadianism","canal","canaletto","canalization","canalize","canap","canard","canaries","canary","canasta","canaveral","canberra","cancan","cancel","cancelate","cancelbuttontitle","canceled","canceler","cancellation","cancellationtoken","cancelled","cancer","cancerous","cancun","candace","candelabra","candelabrum","candi","candice","candid","candida","candidacy","candidate","candidates","candidature","candide","candidly","candidness","candie","candle","candlelight","candlelit","candlepower","candler","candlestick","candlewick","candor","candra","candy","cane","canebrake","caner","canexecute","canine","caning","canis","canister","caniuse","canker","cankerous","cannabis","canned","cannelloni","canner","cannery","cannes","cannibal","cannibalism","cannibalistic","cannibalization","cannibalize","cannily","canniness","canninesses","canning","cannister","cannon","cannonade","cannonball","cannot","canny","canoe","canoeist","canoga","canon","canonic","canonical","canonicalization","canonicalize","canonist","canonization","canonize","canonized","canopus","canopy","canst","cant","cantabile","cantabrigian","cantaloupe","cantankerous","cantankerousness","cantata","canted","canteen","canter","canterbury","cantered","cantering","canticle","cantilever","canto","canton","cantonal","cantonese","cantonment","cantor","cantrell","cants","cantu","canute","canvas","canvasback","canvass","canvasser","canyon","cap","capabilities","capability","capable","capableness","capabler","capablest","capably","capacious","capaciousness","capacitance","capacitate","capacitive","capacitor","capacity","caparison","cape","capek","capella","caper","capeskin","capet","capetown","caph","capillarity","capillary","capistrano","capita","capital","capitalism","capitalist","capitalistic","capitalistically","capitalization","capitalize","capitalized","capitalizer","capitalizes","capitan","capitation","capitol","capitoline","capitulate","capitulation","caplet","capo","capon","capone","capote","capped","capping","cappuccino","cappy","capra","capri","caprice","capricious","capriciousness","capricorn","caps","capsicum","capsize","capstan","capstone","capsular","capsule","capsulize","capt","captain","captaincy","captcha","caption","captions","captious","captiousness","captivate","captivation","captivator","captive","captivity","captor","capture","captured","capturer","captures","capturing","capulet","caputo","capybara","car","cara","caracalla","caracas","caracul","carafe","caralie","caramel","caramelize","carapace","carapaxes","carat","caravaggio","caravan","caravaner","caravansary","caravanserai","caravel","caraway","carbide","carbine","carbohydrate","carbolic","carboloy","carbon","carbonaceous","carbonate","carbonation","carbondale","carbone","carbonic","carboniferous","carbonization","carbonize","carbonizer","carbonizes","carbonyl","carborundum","carboy","carbuncle","carbuncular","carburetor","carburetter","carburettor","carcase","carcass","carce","carcinogen","carcinogenic","carcinogenicity","carcinoma","card","cardamom","cardboard","cardenas","carder","cardholders","cardiac","cardiff","cardigan","cardin","cardinal","cardinality","carding","cardiod","cardiogram","cardiograph","cardiographs","cardioid","cardiologist","cardiology","cardiomegaly","cardiopulmonary","cardiovascular","cards","cardsharp","cardview","care","cared","careen","career","careerism","careerist","careers","carefree","careful","carefuller","carefullest","carefully","carefulness","caregiver","careless","carelessness","caren","carena","carer","cares","caresa","caress","caressa","caresse","caresser","caressing","caressive","caret","caretaker","careworn","carey","carfare","cargo","cargoes","carhop","carhopped","carhopping","cari","caria","carib","caribbean","caribou","caricature","caricaturisation","caricaturist","caricaturization","carid","carie","caries","caril","carillon","carillonned","carillonning","carilyn","carin","carina","carine","caring","cariotta","carious","carissa","carita","caritta","carjack","carl","carla","carlee","carleen","carlen","carlene","carleton","carletonian","carley","carlie","carlin","carlina","carline","carling","carlita","carlo","carload","carlota","carlotta","carlsbad","carlson","carlton","carly","carlye","carlyle","carlyn","carlynn","carlynne","carma","carmel","carmela","carmelia","carmelina","carmelita","carmella","carmelle","carmelo","carmen","carmencita","carmichael","carmina","carmine","carmita","carmon","carnage","carnal","carnality","carnap","carnation","carnegie","carnelian","carney","carnival","carnivore","carnivorous","carnivorousness","carnot","carny","caro","carob","carol","carola","carolan","carolann","carole","carolee","caroler","carolin","carolina","caroline","carolingian","carolinian","caroljean","carolus","carolyn","carolyne","carolynn","carom","caron","carotene","carotid","carousal","carouse","carousel","carouser","carp","carpal","carpathian","carpel","carpenter","carpentering","carpentry","carper","carpet","carpetbag","carpetbagged","carpetbagger","carpetbagging","carpeting","carpi","carping","carpool","carport","carpus","carr","carrageen","carree","carrel","carri","carriage","carriageway","carrie","carried","carrier","carriers","carrierwave","carries","carrillo","carrion","carrissa","carrol","carroll","carrot","carroty","carrousel","carry","carryall","carrying","carryout","carryover","cars","carsick","carsickness","carson","cart","cartage","carte","cartel","carter","cartesian","carthage","carthaginian","carthorse","cartier","cartilage","cartilaginous","cartload","cartographer","cartographic","cartography","carton","cartoon","cartoonist","cartridge","cartwheel","cartwright","carty","caruso","carve","carven","carver","carving","cary","caryatid","caryl","caryn","cas","casaba","casablanca","casals","casandra","casanova","casar","casbah","cascade","cascades","cascadetype","cascading","cascara","case","casebook","cased","caseharden","casein","caseload","casement","cases","casework","caseworker","casey","cash","cashbook","cashew","cashier","cashless","cashmere","casi","casie","casing","casino","cask","casket","caspar","casper","caspian","cass","cassandra","cassandre","cassandry","cassatt","cassaundra","cassava","casserole","cassette","cassey","cassi","cassia","cassie","cassino","cassiopeia","cassite","cassius","cassock","cassondra","cassowary","cassy","cast","castaneda","castanet","castaway","caste","casted","castellated","caster","castigate","castigation","castigator","castile","castillo","casting","castle","castoff","castor","castrate","castration","castries","castro","casts","casual","casualness","casualty","casuist","casuistic","casuistry","cat","cataclysm","cataclysmal","cataclysmic","catacomb","catafalque","catalan","catalepsy","cataleptic","catalina","catalog","cataloger","catalogue","catalonia","catalpa","catalysis","catalyst","catalytic","catalytically","catalyze","catamaran","catapult","cataract","catarina","catarrh","catarrhs","catastrophe","catastrophic","catastrophically","catatonia","catatonic","catawba","catbird","catboat","catcall","catch","catchable","catchall","catcher","catches","catching","catchment","catchpenny","catchphrase","catchup","catchword","catchy","cate","catechism","catechist","catechize","catecholamine","categoria","categoric","categorical","categorie","categories","categorization","categorize","categorized","category","categoryid","categoryinfo","categoryname","catenate","catenation","cater","catercorner","caterer","caterina","catering","caterpillar","caterwaul","catfish","catgut","catha","catharina","catharine","catharses","catharsis","cathartic","cathay","cathe","cathedral","cathee","cather","catherin","catherina","catherine","catheter","catheterize","cathi","cathie","cathleen","cathlene","cathode","cathodic","catholic","catholicism","catholicity","cathrin","cathrine","cathryn","cathy","cathyleen","cati","catid","catie","catiline","catina","cation","cationic","catkin","catlaina","catlee","catlike","catlin","catnap","catnapped","catnapping","catnip","cato","catrina","catriona","cats","catskill","catsup","catt","cattail","catted","cattery","cattily","cattiness","catting","cattle","cattleman","cattlemen","catty","catullus","catv","catwalk","caty","caucasian","caucasoid","caucasus","cauchy","caucus","caudal","caught","cauldron","cauliflower","caulk","caulker","causal","causality","causate","causation","causative","cause","caused","causeless","causer","causerie","causes","causeway","causing","caustic","caustically","causticity","cauterization","cauterize","cauterized","caution","cautionary","cautioner","cautious","cautiousness","cavalcade","cavalier","cavalierness","cavalry","cavalryman","cavalrymen","cave","caveat","caveats","caveatted","caveatting","caveman","cavemen","cavendish","caver","cavern","cavernous","caviar","cavil","caviler","caving","cavity","cavort","cavour","caw","caxton","cay","caye","cayenne","cayla","cayman","cayuga","cayuse","caz","cazzie","cb","cbc","cbind","cbs","cc","ccc","cccccc","cchaddie","ccp","cctv","ccu","cd","cdata","cdate","cdb","cdc","cde","cdecl","cdef","cdf","cdh","cdi","cdn","cdnjs","cdr","cds","cdt","ce","cease","ceasefire","ceaseless","ceaselessness","ceasing","ceausescu","cebu","cebuano","ceca","cecal","cece","cecelia","cecil","cecile","ceciley","cecilia","cecilio","cecilius","cecilla","cecily","cecum","ced","cedar","cede","ceded","ceder","cedes","cedilla","ceding","cedric","cef","ceil","ceilidh","ceiling","cel","celandine","celanese","cele","celebes","celebrant","celebrate","celebrated","celebratedness","celebration","celebrator","celebratory","celebrity","celene","celerity","celery","celesta","celeste","celestia","celestial","celestina","celestine","celestyn","celestyna","celia","celibacy","celibate","celie","celina","celinda","celine","celinka","celisse","celka","cell","cellar","cellarer","celle","cellforrowat","cellforrowatindexpath","cellidentifier","cellini","cellist","cello","cellophane","cellpadding","cellphone","cells","cellspacing","celltemplate","cellular","cellulite","celluloid","cellulose","cellvalue","celsius","celt","celtic","cement","cementa","cementer","cementum","cemetery","cenobite","cenobitic","cenotaph","cenotaphs","cenozoic","censer","censor","censored","censorial","censorious","censoriousness","censorship","censure","censurer","census","cent","centaur","centaurus","centavo","centenarian","centenary","centennial","center","centerboard","centered","centerer","centerfold","centerhorizontal","centering","centerline","centerpiece","centers","centervertical","centerx","centery","centigrade","centigram","centiliter","centime","centimeter","centipede","centos","central","centralia","centralism","centralist","centrality","centralization","centralize","centralized","centralizer","centralizes","centre","centrefold","centrex","centric","centrifugal","centrifugate","centrifugation","centrifuge","centripetal","centrist","centroid","cents","centuries","centurion","century","ceo","cephalic","cepheid","cepheus","cer","ceramic","ceramicist","ceramist","cerate","cerberus","cereal","cerebellar","cerebellum","cerebra","cerebral","cerebrate","cerebration","cerebrum","cerement","ceremonial","ceremonious","ceremoniousness","ceremony","cerenkov","ceres","cerf","cerise","cerium","cermet","cern","cerr","cert","certain","certainer","certainest","certainly","certainty","certifiable","certifiably","certificate","certificates","certification","certified","certifier","certify","certiorari","certitude","certs","cerulean","cervantes","cervical","cervices","cervix","cesar","cesare","cesarean","cesaro","cesium","cessation","cession","cessna","cesspit","cesspool","cest","cesya","cet","cetacean","cetera","cetus","cex","ceylon","ceylonese","cezanne","cf","cfc","cfg","cfif","cflags","cfm","cfo","cfoutput","cfset","cg","cgal","cgcolor","cgfloat","cgi","cgimage","cglib","cgpoint","cgpointmake","cgrect","cgrectmake","cgsize","cgsizemake","ch","chablis","chad","chadd","chaddie","chaddy","chadian","chadwick","chafe","chafer","chaff","chaffer","chafferer","chaffey","chaffinch","chagall","chagrin","chai","chaim","chain","chained","chaining","chainlike","chains","chainsaw","chair","chairlady","chairlift","chairman","chairmanship","chairmen","chairperson","chairwoman","chairwomen","chaise","chalcedony","chaldea","chaldean","chalet","chalice","chalk","chalkboard","chalkiness","chalkline","chalky","challenge","challenged","challenger","challenges","challenging","challis","chalmers","chamber","chamberer","chamberlain","chambermaid","chamberpot","chambers","chambray","chameleon","chamfer","chammy","chamois","chamomile","champ","champagne","champaign","champion","championship","champlain","chan","chance","chanced","chancel","chancellery","chancellor","chancellorship","chancellorsville","chancery","chances","chancey","chanciness","chancing","chancre","chancy","chanda","chandal","chandelier","chandigarh","chandler","chandra","chandragupta","chandrasekhar","chandy","chane","chanel","chaney","chang","changchun","change","changeabilities","changeability","changeable","changeableness","changeably","changed","changeless","changeling","changelog","changeover","changer","changes","changeset","changing","changsha","channa","channel","channeler","channelid","channeling","channelization","channelize","channellings","channels","channing","chanson","chant","chantal","chantalle","chanter","chanteuse","chantey","chanticleer","chantilly","chantry","chanty","chanukah","chao","chaos","chaotic","chaotically","chap","chaparral","chapbook","chapeau","chapel","chaperon","chaperonage","chaperone","chaperoned","chaplain","chaplaincy","chaplet","chaplin","chapman","chappaquiddick","chapped","chapping","chapter","chapters","char","chara","charabanc","character","characterful","characteristic","characteristically","characteristics","characterizable","characterization","characterize","characterized","characterizer","characterless","characters","charade","chararray","charat","charbroil","charcoal","charcode","charcodeat","chard","chardonnay","charfield","charge","chargeable","chargeableness","charged","charger","chargers","charges","charging","charil","charily","charin","charindex","chariness","chariot","charioteer","charis","charisma","charismata","charismatic","charismatically","charissa","charisse","charita","charitable","charitableness","charitablenesses","charitably","charity","charla","charlady","charlatan","charlatanism","charlatanry","charlean","charleen","charlemagne","charlena","charlene","charles","charleston","charley","charlie","charline","charlot","charlotta","charlotte","charlottesville","charlottetown","charlton","charm","charmain","charmaine","charmane","charmer","charmian","charmin","charmine","charming","charmion","charmless","charo","charolais","charon","charred","charring","chars","charsequence","charset","chart","chartdata","charted","charter","chartered","charterer","charting","chartist","chartres","chartreuse","chartroom","charts","charwoman","charwomen","chary","charybdis","charyl","chas","chase","chaser","chasing","chasity","chasm","chassis","chaste","chastely","chasten","chasteness","chastise","chastisement","chastiser","chastity","chasuble","chat","chateaubriand","chateaus","chats","chattahoochee","chattanooga","chatted","chattel","chatter","chatterbox","chatterer","chatterley","chatterton","chattily","chattiness","chatting","chatty","chaucer","chauffeur","chaunce","chauncey","chautauqua","chauvinism","chauvinist","chauvinistic","chauvinistically","chavez","chaw","chayefsky","chdir","che","cheap","cheapen","cheaper","cheapest","cheapish","cheapness","cheapskate","cheat","cheater","cheating","chechen","chechnya","check","checkable","checkbook","checkbox","checkboxes","checkboxlist","checked","checker","checkerboard","checkin","checking","checklist","checkmark","checkmate","checkoff","checkout","checkpoint","checkroom","checks","checkselfpermission","checkstyle","checksum","checksummed","checksumming","checkup","cheddar","cheek","cheekbone","cheekily","cheekiness","cheeky","cheep","cheer","cheerer","cheerful","cheerfuller","cheerfullest","cheerfulness","cheerily","cheeriness","cheerio","cheerios","cheerleader","cheerless","cheerlessness","cheers","cheery","cheese","cheeseburger","cheesecake","cheesecloth","cheesecloths","cheeseparing","cheesiness","cheesy","cheetah","cheetahs","cheeto","cheever","chef","cheffed","cheffing","chekhov","chelate","chelation","chelsae","chelsea","chelsey","chelsie","chelsy","chelyabinsk","chem","chemic","chemical","chemiluminescence","chemiluminescent","chemise","chemist","chemistry","chemotherapeutic","chemotherapy","chemurgy","chen","cheng","chengdu","chenille","cheops","cher","chere","cherey","cheri","cherianne","cherice","cherida","cherie","cherilyn","cherilynn","cherin","cherise","cherish","cherisher","cheriton","cherlyn","chernenko","chernobyl","cherokee","cheroot","cherri","cherrita","cherry","cherrypy","chert","cherub","cherubic","cherubim","chervil","chery","cherye","cheryl","chesapeake","cheshire","cheslie","chess","chessboard","chessman","chessmen","chest","chester","chesterfield","chesterton","chestful","chestnut","cheston","chesty","chet","chev","chevalier","cheviot","chevrolet","chevron","chevy","chew","chewer","chewiness","chewy","cheyenne","chg","chge","chi","chiang","chianti","chiaroscuro","chiarra","chiba","chic","chicago","chicagoan","chicana","chicane","chicanery","chicano","chichi","chick","chickadee","chickasaw","chicken","chickenfeed","chickenhearted","chickenpox","chickie","chickpea","chickweed","chicky","chicle","chicness","chico","chicory","chide","chiding","chief","chiefdom","chieftain","chiffon","chiffonier","chigger","chignon","chihuahua","chilblain","child","childbearing","childbirth","childbirths","childcare","childes","childhood","childish","childishness","childitem","childless","childlessness","childlike","childlikeness","childminders","childnode","childnodes","childposition","childprocess","childproof","childrearing","children","childs","chile","chilean","chili","chilies","chill","chiller","chilli","chilliness","chilling","chillness","chilly","chilton","chimaera","chimaerical","chimborazo","chime","chimer","chimera","chimeric","chimerical","chimiques","chimney","chimp","chimpanzee","chimu","chin","china","chinaman","chinamen","chinatown","chinchilla","chine","chinese","ching","chink","chinless","chinned","chinner","chinning","chino","chinook","chinstrap","chintz","chintzy","chip","chipboard","chipewyan","chipmunk","chipped","chippendale","chipper","chippewa","chipping","chips","chiquia","chiquita","chiral","chirico","chirography","chiropodist","chiropody","chiropractic","chiropractor","chirp","chirpy","chirrup","chisel","chiseler","chisholm","chisinau","chit","chitchat","chitchatted","chitchatting","chitin","chitinous","chittagong","chitterlings","chivalric","chivalrous","chivalrously","chivalrousness","chivalry","chive","chivvy","chivying","chk","chlamydia","chlamydiae","chlo","chloe","chloette","chloral","chlorate","chlordane","chloride","chlorinate","chlorinated","chlorinates","chlorination","chlorine","chloris","chlorofluorocarbon","chloroform","chlorophyll","chloroplast","chloroquine","chm","chmod","chock","chockablock","chocoholic","chocolate","chocolaty","choctaw","choice","choiceness","choices","choir","choirboy","choirmaster","choke","chokeberry","chokecherry","choker","chokes","choking","choler","cholera","choleric","cholesterol","choline","cholinesterase","chomp","chomsky","chongqing","choose","chooser","chooses","choosiness","choosing","choosy","chop","chophouse","chopin","chopped","chopper","choppily","choppiness","chopping","choppy","chopstick","choral","chorale","chord","chordal","chordata","chordate","chording","chore","chorea","choreograph","choreographer","choreographic","choreographically","choreographs","choreography","chorines","chorion","chorister","choroid","chortle","chortler","chorus","chose","chosen","chou","chow","chowder","chown","chr","chretien","chris","chrism","chrissake","chrisse","chrissie","chrissy","christ","christa","christabel","christabella","christal","christalle","christan","christchurch","christean","christel","christen","christendom","christened","christening","christensen","christenson","christi","christian","christiana","christiane","christianity","christianize","christiano","christians","christiansen","christie","christin","christina","christine","christlike","christmas","christmastide","christmastime","christoffel","christoffer","christoforo","christoper","christoph","christophe","christopher","christophorus","christos","christy","christye","christyna","chrisy","chroma","chromate","chromatic","chromatically","chromaticism","chromaticness","chromatics","chromatin","chromatogram","chromatograph","chromatographic","chromatography","chromic","chromite","chromium","chromosomal","chromosome","chromosphere","chronic","chronically","chronicle","chronicled","chronicler","chrono","chronograph","chronographs","chronography","chronological","chronologist","chronology","chronometer","chronometric","chrotoem","chrysa","chrysalids","chrysalis","chrysanthemum","chrysler","chrysostom","chrystal","chryste","chrystel","chteau","chteaux","chtelaine","chub","chubbiness","chubby","chucho","chuck","chuckhole","chuckle","chuckling","chuff","chug","chugged","chugging","chukchi","chukka","chum","chumash","chummed","chummily","chumminess","chumming","chummy","chump","chumping","chung","chungking","chunk","chunked","chunkiness","chunks","chunksize","chunky","chuntering","church","churchgoer","churchgoing","churchill","churchillian","churchliness","churchly","churchman","churchmen","churchwarden","churchwoman","churchwomen","churchyard","churl","churlish","churlishness","churn","churner","churning","chute","chutney","chutzpa","chutzpah","chutzpahs","chuvash","chyme","ci","cia","ciao","cicada","cicatrice","cicatrix","cicely","cicero","cicerone","ciceroni","ciceronian","cicily","cid","cider","ciel","cigar","cigarette","cigarillo","cilantro","cilia","ciliate","ciliately","cilium","cilka","cin","cinch","cinchona","cincinnati","cincture","cinda","cindee","cindelyn","cinder","cinderella","cindi","cindie","cindra","cindy","cine","cinema","cinematic","cinematographer","cinematographic","cinematography","cinerama","cinnabar","cinnamon","cint","cipher","ciphered","ciphers","ciphertext","cir","circa","circadian","circe","circle","circler","circles","circlet","circuit","circuital","circuitous","circuitousness","circuitry","circuity","circulant","circular","circularity","circularize","circularness","circulate","circulation","circulations","circulative","circulatory","circumcise","circumcised","circumciser","circumcision","circumference","circumferential","circumflex","circumlocution","circumlocutory","circumnavigate","circumnavigation","circumnavigational","circumpolar","circumscribe","circumscription","circumspect","circumspection","circumsphere","circumstance","circumstances","circumstantial","circumvent","circumvention","circus","cirillo","cirilo","ciro","cirque","cirrhoses","cirrhosis","cirrhotic","cirri","cirrus","cis","cisco","cissiee","cissy","cistern","cit","citadel","citation","citations","cite","cited","citibank","cities","citified","citizen","citizenry","citizens","citizenship","citrate","citric","citroen","citron","citronella","citrus","city","cityid","cityname","cityscape","citywide","civet","civic","civics","civil","civilian","civility","civilization","civilizational","civilize","civilized","civilizedness","civilizer","civilizes","civvies","cj","cjs","ck","ckeditor","cl","clack","clad","cladding","clads","claiborn","claiborne","claim","claimable","claimant","claimed","claimer","claiming","claims","clair","claire","clairol","clairvoyance","clairvoyant","clam","clambake","clamber","clamberer","clammed","clammily","clamminess","clamming","clammy","clamor","clamorer","clamorous","clamorousness","clamp","clampdown","clamper","clamshell","clan","clancy","clandestine","clandestineness","clang","clanger","clangor","clangorous","clank","clanking","clannish","clannishness","clansman","clansmen","clap","clapboard","clapeyron","clapped","clapper","clapping","clapton","claptrap","claque","clara","clarabelle","clarance","clare","claremont","clarence","clarendon","claresta","claret","clareta","claretta","clarette","clarey","clari","claribel","clarice","clarie","clarification","clarifier","clarify","clarinda","clarine","clarinet","clarinetist","clarinettist","clarion","clarissa","clarisse","clarita","clarities","clarity","clark","clarke","clarridge","clary","clash","clasher","clasp","clasped","clasper","class","classa","classb","classcastexception","classer","classes","classic","classical","classicism","classicist","classics","classid","classifiable","classification","classificatory","classified","classifier","classify","classiness","classless","classlist","classloader","classmate","classmethod","classname","classnotfoundexception","classpath","classroom","classrunner","classwork","classworlds","classy","clat","clatter","clatterer","clattering","clattery","claude","claudell","claudelle","claudetta","claudette","claudia","claudian","claudianus","claudie","claudina","claudine","claudio","claudius","claus","clausal","clause","clausen","clauses","clausewitz","clausius","claustrophobia","claustrophobic","clave","clavichord","clavicle","clavier","claw","clawer","clay","clayborn","clayborne","claybourne","clayey","clayier","clayiest","claymore","clayson","clayton","clazz","clea","clean","cleanable","cleaned","cleaner","cleanest","cleaning","cleanliness","cleanly","cleanness","cleans","cleanse","cleanser","cleanup","clear","clearance","clearcolor","clearcut","cleared","clearer","clearfix","clearheaded","clearheadedness","clearing","clearinghouse","clearinterval","clearly","clearness","clearrect","clears","cleartimeout","clearwater","clearway","cleat","cleavage","cleave","cleaver","cleavland","clef","cleft","clem","clematis","clemence","clemenceau","clemency","clement","clemente","clementia","clementina","clementine","clementius","clements","clemmie","clemmy","clemons","clemson","clench","clenches","clenching","cleo","cleon","cleopatra","clerc","clerestory","clergy","clergyman","clergymen","clergywoman","clergywomen","cleric","clerical","clericalism","clerissa","clerk","clerkship","cletis","cletus","cleve","cleveland","clever","cleverness","clevey","clevie","clevis","clew","clf","cli","cliburn","clich","clichd","click","clickable","clicked","clicker","clickhandler","clicking","clickonce","clicks","client","clientcontext","cliente","clientheight","clientid","clientle","clientname","clients","clientsecret","clientsocket","clientwidth","clientx","clienty","cliff","cliffhanger","cliffhanging","clifford","clifton","clim","climacteric","climactic","climate","climatic","climatically","climatological","climatologist","climatology","climax","climb","climbable","climbdown","climbed","climber","clime","clinch","clincher","clinching","cline","cling","clinger","clinging","clingy","clinic","clinical","clinician","clinit","clink","clinker","clinometer","clint","clinton","clio","cliometric","cliometrician","clip","clipboard","clipped","clipper","clipping","clips","clique","cliquey","cliquier","cliquiest","cliquish","cliquishness","clitoral","clitorides","clitoris","clive","clj","clk","cllocation","cllocationcoordinate","cllocationmanager","clo","cloaca","cloacae","cloak","cloakroom","clob","clobber","cloche","clock","clocker","clockmaker","clocks","clockwatcher","clockwise","clockwork","clod","clodded","clodding","cloddish","cloddishness","clodhopper","cloe","clog","clogged","clogging","cloisonn","cloisonnes","cloister","cloistral","clojure","clomp","clonal","clone","cloned","clones","cloning","clonk","clop","clopped","clopping","cloris","close","closed","closefisted","closehandle","closely","closemouthed","closeness","closeout","closer","closers","closes","closest","closet","closeup","closing","closure","closured","closures","closuring","clot","cloth","clothbound","clothe","clothes","clothesbrush","clotheshorse","clothesline","clothesman","clothesmen","clothespin","clothier","clothing","clotho","cloths","clotilda","clotted","clotting","cloture","cloud","cloudburst","clouded","cloudera","cloudflare","cloudformation","cloudfront","cloudiness","cloudless","cloudlessness","clouds","cloudscape","cloudwatch","cloudy","clout","clove","cloven","clover","cloverleaf","clovis","clown","clownish","clownishness","cloy","cloying","clr","cls","clsid","club","clubbed","clubbing","clubfeet","clubfoot","clubhouse","clubroom","clubs","cluck","clue","clueless","clues","cluj","clump","clumpy","clumsily","clumsiness","clumsy","clung","clunk","clunky","cluster","clustered","clustering","clusters","clutch","clutter","cluttered","cly","clyde","clydesdale","clytemnestra","clyve","clywd","cm","cmake","cmakefiles","cmakelists","cmap","cmath","cmd","cmdlet","cmdline","cmds","cmos","cmp","cms","cmu","cn","cname","cnf","cnidarian","cnn","cns","cnt","co","coach","coacher","coachman","coachmen","coachwork","coadjutor","coagulable","coagulant","coagulate","coagulation","coagulator","coal","coaler","coalesce","coalescence","coalescent","coalface","coalfield","coalition","coalitionist","coalminers","coarse","coarsen","coarseness","coast","coastal","coaster","coastguard","coastline","coat","coated","coates","coating","coattail","coattest","coauthor","coax","coaxer","coaxial","coaxing","cob","cobain","cobalt","cobb","cobbed","cobbie","cobbing","cobble","cobbler","cobblestone","cobby","coble","cobol","cobra","cobweb","cobwebbed","cobwebbing","cobwebby","coca","cocaine","cocci","coccus","coccyges","coccyx","cochabamba","cochin","cochineal","cochise","cochlea","cochleae","cochlear","cochran","cock","cockade","cockamamie","cockatoo","cockatrice","cockcrow","cocker","cockerel","cockeye","cockeyed","cockfight","cockfighting","cockily","cockiness","cockle","cocklebur","cockleshell","cockney","cockpit","cockroach","cockscomb","cockshies","cocksucker","cocksure","cocktail","cocky","coco","cocoa","cocoapods","coconut","cocoon","cocos","cocteau","cod","coda","codded","codding","coddle","coddler","code","codebase","codebehind","codebook","codebreak","codec","codecs","coded","codee","codegen","codehaus","codeigniter","codeine","codemirror","codename","codepad","codepen","codependency","codependent","codeplex","codeproject","coder","coders","codes","codesandbox","codetermine","codeword","codex","codfish","codger","codi","codices","codicil","codie","codification","codifier","codify","codigo","coding","codling","codpiece","cody","coed","coedited","coediting","coeditor","coedits","coeducation","coeducational","coef","coeff","coefficient","coefficients","coelenterate","coequal","coerce","coercer","coercible","coercion","coercive","coerciveness","coeval","coexist","coexistence","coexistent","coextensive","cofactor","coffee","coffeecake","coffeecup","coffeehouse","coffeemaker","coffeepot","coffeescript","coffer","cofferdam","coffey","coffin","coffman","cog","cogency","cogent","cogged","cogging","cogitate","cogitation","cogitator","cognac","cognate","cognation","cognition","cognitional","cognitive","cognito","cognizable","cognizance","cognizances","cognizant","cognomen","cognoscente","cognoscenti","cogwheel","cohabit","cohabitant","cohabitation","cohabitational","cohan","coheir","cohen","cohere","coherence","coherencies","coherency","coherent","coherer","cohesion","cohesive","cohesiveness","cohn","coho","cohoes","cohort","coif","coiffed","coiffing","coiffure","coil","coimbatore","coin","coinage","coincide","coincidence","coincident","coincidental","coined","coiner","coins","coinsurance","cointon","cointreau","coital","coitus","coke","col","cola","colan","colander","colas","colatitude","colb","colbert","colby","cold","coldblooded","coldfusion","coldish","coldness","cole","coleen","coleman","colene","coleridge","coleslaw","colet","coletta","colette","coleus","colfax","colgate","colic","colicky","coliform","colin","coliru","coliseum","colitis","coll","collaborate","collaboration","collaborative","collaborator","collage","collagen","collapse","collapsed","collapsibility","collapsible","collapsing","collar","collarbone","collard","collarless","collate","collated","collateral","collation","collator","colleague","colleagues","collect","collected","collectedness","collectible","collecting","collection","collections","collectionview","collective","collectivism","collectivist","collectivity","collectivization","collectivize","collector","collectors","collects","colleen","college","colleges","collegiality","collegian","collegiate","collen","collete","collette","collide","collider","collie","collier","colliery","collimate","collimated","collimates","collimating","collimation","collimator","collin","colline","collinear","collinearity","collision","collisional","collisions","collocate","collocation","colloid","colloidal","colloq","colloquial","colloquialism","colloquies","colloquium","colloquy","collude","collusion","collusive","colly","collying","colman","colname","colnames","colo","cologne","colombia","colombian","colombo","colon","colonel","colonelcy","colonial","colonialism","colonialist","colonist","colonization","colonize","colonized","colonizer","colonizes","colonnade","colons","colony","colophon","color","coloraccent","coloradan","colorado","coloradoan","colorant","coloration","coloratura","colorbar","colorblind","colorblindness","colorbox","colored","colorer","colorfast","colorfastness","colorful","colorfulness","colorimeter","colorimetry","colorindex","coloring","colorization","colorize","colorizing","colorless","colorlessness","colormap","colorprimary","colorprimarydark","colors","colorspace","colorwithred","colossal","colosseum","colossi","colossus","colostomy","colostrum","colour","colours","cols","colspan","colt","colter","coltish","coltishness","coltrane","columbia","columbian","columbine","columbus","column","columna","columnar","columncount","columndefinition","columndefinitions","columnindex","columnist","columnize","columnname","columnnames","columns","columnspan","columnwidth","colver","com","coma","comae","comaker","comanche","comatose","comb","combat","combatant","combative","combativeness","combed","comber","combination","combinational","combinations","combinator","combinatorial","combinatoric","combine","combined","combiner","combines","combining","combo","combobox","comboboxitem","combs","combusted","combustibility","combustible","combustion","combustive","comcast","comdex","comdr","come","comeback","comedian","comedic","comedienne","comedown","comedy","comeliness","comely","comer","comes","comestible","comet","cometary","cometh","comeuppance","comfit","comfort","comfortability","comfortable","comfortableness","comfortably","comforted","comforter","comforting","comfy","comic","comical","comicality","cominform","coming","comity","comm","comma","command","commandant","commandargument","commandbutton","commandeer","commander","commanding","commandline","commandlink","commandment","commandname","commando","commandparameter","commandrunnerimpl","commands","commandtext","commandtype","commas","commemorate","commemoration","commemorative","commemorator","commence","commencement","commencer","commend","commendably","commendation","commendatory","commender","commensurable","commensurate","commensurates","commensuration","comment","commentary","commentate","commentator","commented","commenter","commenting","comments","commerce","commercial","commercialism","commercialization","commercialize","commie","commingle","commiserate","commiseration","commissar","commissariat","commissary","commission","commissioner","commit","commitment","commits","committable","committal","committals","committed","committee","committeeman","committeemen","committeewoman","committeewomen","committing","commode","commodes","commodious","commodiousness","commodity","commodo","commodore","common","commonality","commonalty","commondatakinds","commoner","commonjs","commonly","commonness","commonplace","commonplaceness","commons","commonsense","commonweal","commonwealth","commonwealths","commotion","communal","communality","commune","communicability","communicable","communicably","communicant","communicate","communicates","communicating","communication","communicational","communications","communicative","communicativeness","communicator","communion","communique","communism","communist","communistic","communitarian","communities","community","communize","commutable","commutate","commutation","commutative","commutativity","commutator","commute","commuter","comoros","comp","compact","compaction","compactness","compactor","companies","companion","companionable","companionableness","companionably","companionship","companionway","company","companyid","companyname","compaq","comparabilities","comparability","comparable","comparableness","comparably","comparative","comparativeness","comparator","compare","compared","comparer","compares","compareto","comparing","comparison","comparisons","compartment","compartmental","compartmentalization","compartmentalize","compass","compassion","compassionate","compassionateness","compat","compatibility","compatible","compatibleness","compatibly","compatriot","compeer","compel","compellable","compelled","compelling","compendious","compendium","compensable","compensate","compensated","compensation","compensator","compensatory","compete","competence","competency","competent","competing","competition","competitive","competitiveness","competitor","competitors","compilable","compilation","compile","compiled","compiler","compilers","compilerservices","compiles","compilesdkversion","compiling","complacence","complacency","complacent","complain","complainant","complainer","complaining","complains","complaint","complaints","complaisance","complaisant","complected","complement","complementariness","complementarity","complementary","complementation","complementer","completablefuture","complete","completed","completely","completeness","completer","completes","completing","completion","completionhandler","complex","complexion","complexional","complexity","complexness","complextype","compliance","compliant","complicate","complicated","complicatedness","complication","complicator","complicit","complicity","complier","compliment","complimentary","complimenter","comply","component","componentdidmount","componentinfo","componentmodel","componentname","components","componentscan","componentwillmount","comport","comportment","compose","composed","composedness","composer","composers","composite","composition","compositional","compositions","compositor","compost","composure","compote","compound","compoundbutton","compounded","compounder","comprehend","comprehending","comprehensibility","comprehensible","comprehensibleness","comprehensibly","comprehension","comprehensions","comprehensive","comprehensiveness","compress","compressed","compressformat","compressibility","compressible","compressing","compression","compressional","compressive","compressor","comprise","compromise","compromised","compromiser","compromising","compton","comptroller","compulsion","compulsive","compulsiveness","compulsivity","compulsorily","compulsory","compunction","compuserve","computability","computable","computably","computation","computational","computations","compute","computed","computer","computerese","computerization","computerize","computername","computers","computes","computing","comrade","comradely","comradeship","comte","con","conakry","conan","conant","concat","concatenate","concatenated","concatenating","concatenation","concave","concaveness","conceal","concealed","concealer","concealing","concealment","conceded","conceit","conceited","conceitedness","conceivable","conceivably","conceive","conceiver","concentrate","concentration","concentrator","concentrically","concepcin","concept","conception","conceptional","concepts","conceptual","conceptuality","conceptualization","conceptualizations","conceptualize","conceptualizing","conceptually","concern","concerned","concerning","concerns","concert","concerted","concertina","concertize","concertmaster","concerto","concession","concessionaire","concessional","concessionary","concetta","concettina","conch","conchita","conchs","concierge","conciliar","conciliate","conciliation","conciliator","conciliatory","concise","conciseness","concision","conclave","conclude","concluder","conclusion","conclusions","conclusive","conclusiveness","concoct","concocter","concoction","concomitant","concord","concordance","concordant","concordat","concorde","concordia","concourse","concrete","concreteness","concretion","concubinage","concubine","concupiscence","concupiscent","concur","concurrence","concurrency","concurrent","concurrenthashmap","concurrently","concuss","concussion","cond","conda","condemn","condemnate","condemnation","condemnatory","condemner","condensate","condensation","condense","condensed","condenser","condensible","condescend","condescending","condescension","condign","condiment","condimentum","condition","conditional","conditionally","conditionals","conditioned","conditioner","conditioning","conditions","condo","condole","condolence","condom","condominium","condone","condoner","condor","condorcet","conduce","conducive","conduciveness","conduct","conductance","conductibility","conductible","conduction","conductive","conductivity","conductor","conductress","conduit","coneflower","conestoga","coney","conf","confab","confabbed","confabbing","confabulate","confabulation","confect","confection","confectioner","confectionery","confectionist","confederacy","confederate","confer","conferee","conference","conferences","conferrable","conferral","conferred","conferrer","conferring","confessed","confession","confessional","confessor","confetti","confidant","confidante","confide","confidence","confident","confidential","confidentiality","confidentialness","confider","confiding","config","configchanges","configfile","configs","configsections","configurable","configuration","configurationmanager","configurations","configure","configured","configureservices","configuring","confine","confined","confinement","confiner","confirm","confirmation","confirmatory","confirmed","confirmedness","confirmpassword","confirms","confiscate","confiscation","confiscator","confiscatory","conflagration","conflate","conflation","conflict","conflicting","conflicts","confluence","confluent","conform","conformable","conformal","conformance","conformational","conformer","conforming","conformism","conformist","conformities","conformity","conforms","confound","confounded","confront","confrontation","confrontational","confronter","confrre","confucian","confucianism","confucius","confuse","confused","confusedness","confuses","confusing","confusion","confutation","confute","confuter","cong","conga","congeal","congealment","congenial","congeniality","conger","congeries","congest","congestion","conglomerate","conglomeration","congo","congolese","congrats","congratulate","congratulation","congratulations","congratulatory","congregate","congregation","congregational","congregationalism","congregationalist","congress","congressional","congressman","congressmen","congresspeople","congressperson","congresswoman","congresswomen","congreve","congruence","congruences","congruency","congruent","congruential","congruity","congruous","congruousness","congue","conic","conical","conicalness","conics","conifer","coniferous","conjectural","conjecture","conjecturer","conjoint","conjugacy","conjugal","conjugate","conjugation","conjunct","conjunction","conjunctiva","conjunctive","conjunctivitis","conjuration","conjure","conjurer","conjuring","conk","conker","conley","conman","conn","connect","connected","connectedly","connectedness","connectible","connecticut","connecting","connection","connectionfactory","connectionhandler","connectionimpl","connectionless","connectionmanager","connectionpool","connectionresult","connections","connectionstring","connectionstrings","connective","connectivity","connectivitymanager","connector","connectors","connects","connelly","conner","connery","connexion","conney","conni","connie","conniption","connivance","connive","conniver","connoisseur","connor","connotative","connstring","connubial","conny","conquer","conquerable","conquered","conqueror","conquers","conquest","conquistador","conrad","conrade","conrado","conrail","conroy","cons","consalve","consanguineous","consanguinity","conscienceless","conscientious","conscientiousness","conscionable","conscious","consciousness","conscription","consecrate","consecrated","consecrates","consecrating","consecration","consectetur","consecutive","consecutiveness","consensus","consent","consenter","consenting","consequat","consequence","consequences","consequent","consequential","consequentiality","consequentialness","consequently","conservancy","conservation","conservationism","conservationist","conservatism","conservative","conservativeness","conservator","conservatory","consider","considerable","considerables","considerably","considerate","considerateness","consideration","considerations","considered","considerer","considering","considers","consign","consignee","consignment","consist","consistence","consistency","consistent","consistently","consisting","consistory","consists","consolable","consolata","consolation","consolatory","console","consoleapplication","consoled","consoler","consolidate","consolidated","consolidates","consolidation","consolidator","consoling","consomm","consonance","consonances","consonant","consonantal","consortia","consortium","conspectus","conspicuous","conspicuousness","conspiracy","conspirator","conspiratorial","const","constable","constabulary","constance","constancia","constancy","constant","constanta","constantia","constantin","constantina","constantine","constantino","constantinople","constantly","constants","constellation","consternate","consternation","constexpr","constipate","constipation","constituency","constituent","constitute","constituted","constitutes","constituting","constitution","constitutional","constitutionality","constitutionally","constitutive","constr","constrain","constrained","constrainedly","constraint","constraintbottom","constraintend","constraintlayout","constraints","constraintstart","constrainttop","constrict","constriction","constrictor","construable","construct","constructed","constructibility","constructible","constructing","construction","constructional","constructionist","constructions","constructive","constructiveness","constructor","constructorresolver","constructors","constructs","construe","consuela","consuelo","consul","consular","consulate","consulship","consult","consultancy","consultant","consultation","consultative","consulted","consulter","consulting","consumable","consume","consumed","consumer","consumerism","consumerist","consumers","consumes","consuming","consummate","consummated","consumption","consumptive","cont","contact","contacted","contactform","contactid","contacting","contactlist","contactname","contacts","contactscontract","contagion","contagious","contagiousness","contain","contained","container","containerbase","containerization","containerize","containers","containerview","containing","containment","contains","containskey","contaminant","contaminate","contaminated","contaminates","contaminating","contamination","contaminative","contaminator","contd","contemn","contemplate","contemplation","contemplative","contemplativeness","contemporaneity","contemporaneous","contemporaneousness","contempt","contemptible","contemptibleness","contemptibly","contemptuous","contemptuousness","content","contentcontrol","contentdescription","contented","contenteditable","contentedly","contentedness","contention","contentious","contentiousness","contentlength","contently","contentment","contentmode","contentoffset","contentpage","contentpane","contentplaceholder","contentpresenter","contentprovider","contentresolver","contents","contentsize","contenttemplate","contenttype","contentvalues","contentview","contentwindow","conterminous","contest","contestable","contestant","contested","context","contextcompat","contexthandler","contextloader","contextloaderlistener","contextmenu","contextpath","contexts","contextual","contextualize","contiguity","contiguous","contiguousness","continence","continent","continental","continents","contingency","contingent","continua","continuable","continual","continually","continuance","continuant","continuation","continue","continued","continuer","continues","continuewith","continuing","continuity","continuous","continuously","continuousness","continuum","contort","contortion","contortionist","contour","contours","contra","contraband","contrabass","contraception","contraceptive","contract","contractible","contractile","contractor","contracts","contractual","contradict","contradiction","contradictorily","contradictoriness","contradictory","contradistinction","contraflow","contrail","contraindicate","contraindication","contralto","contrapositive","contraption","contrapuntal","contrariety","contrarily","contrariness","contrariwise","contrary","contrast","contrasting","contrastive","contravene","contravener","contravention","contreras","contretemps","contrib","contribute","contributed","contributing","contribution","contributions","contributive","contributor","contributorily","contributors","contributory","contrite","contriteness","contrition","contrivance","contrive","contrived","contriver","control","controlid","controllability","controllable","controllably","controlled","controller","controllercontext","controllername","controllers","controlling","controls","controltemplate","controltovalidate","controversial","controversialists","controversy","controvert","controvertible","contumacious","contumacy","contumelious","contumely","contuse","contusion","conundrum","conurbation","conv","convalesce","convalescence","convalescent","convallis","convect","convection","convectional","convector","convene","convener","convenience","convenient","conveniently","conventicle","convention","conventional","conventionalism","conventionalist","conventionality","conventionalize","conventions","convergence","convergent","conversant","conversation","conversational","conversationalist","conversations","conversazione","converse","conversion","conversioning","conversions","convert","converted","converter","converters","convertibility","convertible","convertibleness","converting","converts","convertto","convertview","convex","convexity","convey","conveyance","conveyancer","conveyancing","conveyor","convict","conviction","convince","convinced","convincer","convincing","convincingness","convivial","conviviality","convoke","convolute","convoluted","convolution","convolve","convolved","convolves","convolving","convoy","convulse","convulsion","convulsive","convulsiveness","conway","cony","coo","cook","cookbook","cooke","cooked","cooker","cookery","cookie","cookiecontainer","cookies","cooking","cookout","cooks","cookware","cooky","cool","coolant","cooled","cooler","cooley","coolheaded","coolidge","coolie","coolness","coon","coonskin","coop","cooper","cooperage","cooperate","cooperation","cooperative","cooperativeness","cooperator","coord","coordinate","coordinated","coordinateness","coordinates","coordination","coordinator","coordinatorlayout","coords","coors","coot","cootie","cop","copay","cope","copeland","copenhagen","coper","copernican","copernicus","copied","copier","copies","copilot","coping","copious","copiousness","coplanar","copland","copley","copolymer","copora","copped","copper","copperfield","copperhead","copperplate","coppersmith","coppersmiths","coppery","coppice","copping","coppola","copra","coprolite","coprophagous","cops","copse","copter","coptic","copula","copulate","copulation","copulative","copy","copybook","copycat","copycatted","copycatting","copying","copyist","copyright","copyrighter","copyto","copywriter","coquetry","coquette","coquettish","cor","cora","corabel","corabella","corabelle","coracle","coral","coralie","coraline","coralline","coralyn","corba","corbel","corbet","corbett","corbie","corbin","corby","cord","corda","cordage","corded","cordelia","cordelie","cordell","corder","cordey","cordi","cordial","cordiality","cordialness","cordie","cordillera","cordilleras","cording","cordite","cordless","cordoba","cordon","cordova","cordovan","cordula","corduroy","cordy","core","cored","coredata","coreen","corefoundation","corella","corenda","corene","corer","cores","corespondent","coretta","corette","corey","corfu","corgi","cori","coriander","corie","corilla","corina","corine","coring","corinna","corinne","corinth","corinthian","corinthians","coriolanus","coriolis","coriss","corissa","cork","corked","corker","corks","corkscrew","corliss","corly","corm","cormack","cormorant","corn","cornall","cornball","cornbread","corncob","corncrake","cornea","corneal","corneille","cornela","cornelia","cornelius","cornell","cornelle","corner","cornerradius","corners","cornerstone","cornet","corney","cornfield","cornflake","cornflour","cornflower","cornice","cornie","cornily","corniness","cornish","cornmeal","cornrow","cornstalk","cornstarch","cornucopia","cornwall","cornwallis","corny","corolla","corollary","corona","coronado","coronal","coronary","coronate","coronation","coroner","coronet","corot","coroutine","coroutines","corp","corpora","corporal","corporate","corporately","corporation","corporations","corporatism","corporatist","corporeal","corporeality","corporealness","corps","corpse","corpsman","corpsmen","corpulence","corpulent","corpulentness","corpus","corpuscle","corpuscular","corr","corral","corralled","corralling","correct","correctable","corrected","correcting","correction","correctional","corrections","corrective","correctly","correctness","corrector","correggio","correlate","correlated","correlation","correlative","correna","correspond","correspondence","correspondent","corresponding","corresponds","correy","corri","corrianne","corridor","corrie","corrigenda","corrigendum","corrigible","corrina","corrine","corrinne","corroborate","corroborated","corroboration","corroborative","corroborator","corroboratory","corrode","corrodible","corrosion","corrosive","corrosiveness","corrugate","corrugation","corrupt","corrupted","corrupter","corruptibility","corruptible","corruption","corruptions","corruptive","corruptness","corry","cors","corsage","corsair","corset","corsica","corsican","cort","cortes","cortex","cortez","cortge","cortical","cortices","corticosteroid","cortie","cortisone","cortland","cortney","corty","corundum","coruscate","coruscation","corvallis","corvette","corvus","cory","cos","cosby","cosetta","cosette","cosign","cosignatory","cosily","cosimo","cosine","cosiness","cosme","cosmetic","cosmetically","cosmetician","cosmetologist","cosmetology","cosmic","cosmical","cosmo","cosmogonist","cosmogony","cosmological","cosmologist","cosmology","cosmonaut","cosmopolitan","cosmopolitanism","cosmos","cosponsor","cossack","cosset","cost","costa","costanza","costar","costarred","costarring","costello","costive","costiveness","costless","costliness","costly","costner","costs","costume","costumer","cot","cotangent","cote","coterie","coterminous","cotillion","cotonou","cotopaxi","cottage","cottager","cottar","cotted","cotter","cotton","cottonmouth","cottonmouths","cottonseed","cottontail","cottonwood","cottony","cotyledon","couch","couchbase","couchdb","couching","cougar","cough","cougher","coughs","could","couldn","couldnt","coule","coulomb","council","councilman","councilmen","councilor","councilperson","councilwoman","councilwomen","counsel","counsellings","counselor","count","countability","countable","countably","countdown","countdowntimer","counted","countenance","countenancer","counter","counteract","counteraction","counterargument","counterattack","counterbalance","counterclaim","counterclockwise","counterculture","countercyclical","counterespionage","counterexample","counterfeit","counterfeiter","counterflow","counterfoil","counterforce","counterinsurgency","counterintelligence","counterintuitive","counterman","countermand","countermeasure","countermen","counteroffensive","counteroffer","counterpane","counterpart","counterpoint","counterpoise","counterproductive","counterproposal","counterrevolution","counterrevolutionary","counters","countersign","countersignature","countersink","counterspy","counterstrike","countersunk","countertenor","countervail","counterweight","countess","countif","counting","countless","countries","countrify","country","countrycode","countryid","countryman","countrymen","countryname","countryside","countrywide","countrywoman","countrywomen","counts","county","coup","coupe","couperin","couple","coupled","coupler","couplers","couples","couplet","coupling","coupon","coupons","courage","courageous","courageously","courageousness","courages","courbet","courgette","courier","course","courseid","coursename","courser","courses","coursework","coursing","court","courtenay","courteous","courteousness","courteousnesses","courtesan","courtesied","courtesy","courtesying","courthouse","courtier","courtliness","courtly","courtnay","courtney","courtroom","courts","courtship","courtyard","couscous","cousin","cousinly","cousteau","cout","couture","couturier","cov","covalent","covariance","covariant","covariate","covary","cove","coven","covenant","covenanted","covenanter","covent","coventry","cover","coverable","coverage","coverall","covered","coverer","covering","coverlet","covers","coversheet","covert","covertness","covet","coveter","coveting","covetous","covetousness","covey","covington","cow","coward","cowardice","cowardliness","cowardly","cowbell","cowbird","cowboy","cowcatcher","cowed","cower","cowering","cowgirl","cowhand","cowherd","cowhide","cowl","cowley","cowlick","cowling","cowman","cowmen","coworker","cowper","cowpoke","cowpony","cowpox","cowpunch","cowpuncher","cowrie","cowshed","cowslip","cox","coxcomb","coxswain","coy","coyer","coyest","coyly","coyness","coyote","coyoteadapter","coypu","cozen","cozenage","cozily","coziness","cozmo","cozumel","cozy","cp","cpa","cpan","cpanel","cpd","cpi","cpl","cplusplus","cpo","cpp","cppreference","cpr","cps","cpt","cpu","cpus","cpython","cq","cql","cr","crab","crabapple","crabbe","crabbed","crabbedness","crabber","crabbily","crabbiness","crabbing","crabby","crabgrass","crablike","crack","crackable","crackdown","cracker","crackerjack","crackle","crackling","crackly","crackpot","crackup","cradle","cradler","cradling","craft","craftily","craftiness","craftsman","craftsmanship","craftsmen","craftspeople","craftspersons","craftswoman","craftswomen","crafty","crag","craggie","cragginess","craggy","craig","craigslist","cram","cramer","crammed","crammer","cramming","cramp","cramper","crampon","cran","cranach","cranberry","crandall","crane","cranelike","cranford","cranial","cranium","crank","crankcase","crankily","crankiness","crankshaft","cranky","cranmer","cranny","cranston","crap","crape","crapped","crappie","crapping","crappy","crapshooter","cras","crash","crashed","crasher","crashes","crashing","crashlytics","crass","crassness","crate","crater","cravat","cravatted","cravatting","crave","craven","cravenness","craver","craving","craw","crawdad","crawfish","crawford","crawl","crawler","crawling","crawlspace","crawlway","crawly","cray","crayfish","crayola","crayon","craze","crazily","craziness","crazy","crc","crche","creak","creakily","creakiness","creaky","cream","creamer","creamery","creamily","creaminess","creamy","crease","creased","creases","creasing","creat","create","createbean","createbitmap","createchooser","createclass","createcommand","createconnection","createcriteria","created","createdat","createdate","createdby","createddate","createdon","createelement","createfile","createinstance","createmap","createobject","createobjecturl","createparallelgroup","createquery","creates","createserver","createstatement","createtable","createtextnode","createuser","createview","creating","creation","creationdate","creationism","creationist","creative","creativeness","creativities","creativity","creator","creators","creature","creatureliness","creaturely","cred","credence","credent","credential","credentials","credenza","credibility","credible","credibly","credit","creditability","creditable","creditableness","creditably","credited","creditor","credits","creditworthiness","credo","creds","credulity","credulous","credulousness","cree","creed","creedal","creeds","creek","creekside","creel","creep","creeper","creepily","creepiness","creepy","cref","creigh","creight","creighton","cremate","cremation","crematoria","crematorium","crematory","creme","crenelate","crenelation","creole","creon","creosote","crepe","crept","crescendo","crescendoed","crescendoing","crescent","cress","crest","crestfallen","crestfallenness","cresting","crestless","crestview","cretaceous","cretaceously","cretan","crete","cretin","cretinism","cretinous","cretonne","crevasse","crevice","crew","crewel","crewelwork","crewman","crewmen","crib","cribbage","cribbed","cribber","cribbing","crichton","crick","cricket","cricketer","cried","crier","cries","crime","crimea","crimean","crimes","criminal","criminality","criminalization","criminalize","criminologist","criminology","crimp","crimper","crimson","crin","cringe","cringer","crinkle","crinkly","crinoline","cripple","crippler","crippling","cris","crisco","crises","crisis","crisp","crisper","crispiness","crispness","crispy","criss","crisscross","crissie","crissy","crista","cristabel","cristal","cristen","cristi","cristian","cristiano","cristie","cristin","cristina","cristine","cristionna","cristobal","cristy","crit","criteria","criterion","critic","critical","criticality","critically","criticalness","criticism","criticize","criticized","criticizer","criticizes","criticizing","criticizingly","critique","critter","crlf","crm","croak","croaker","croaky","croat","croatia","croatian","croce","crochet","crocheter","crock","crockery","crockett","crockpot","crocodile","crocus","croesus","croft","crofter","croissant","croix","cromwell","cromwellian","cron","crone","cronin","cronjob","cronkite","crontab","cronus","crony","crook","crooked","crookedness","crookes","crookneck","croon","crooner","crop","cropland","cropped","cropper","cropping","croquet","croquette","crosby","crosier","cross","crossarm","crossbar","crossbarred","crossbarring","crossbeam","crossbones","crossbow","crossbowman","crossbowmen","crossbred","crossbreed","crosscheck","crosscurrent","crosscut","crosscutting","crossdomain","crossed","crosses","crossfire","crosshatch","crossing","crossness","crossorigin","crossover","crosspatch","crosspiece","crosspoint","crossproduct","crossroad","crossroads","crosstalk","crosstown","crosswalk","crossway","crosswind","crosswise","crossword","crotch","crotchet","crotchetiness","crotchety","crotchless","croton","crouch","croup","croupier","croupy","crow","crowbait","crowbar","crowbarred","crowbarring","crowd","crowded","crowdedness","crowfeet","crowfoot","crowley","crown","crowned","crowner","crozier","crs","crt","crucial","crucible","crucifiable","crucifix","crucifixion","cruciform","crucify","crud","crudded","crudding","cruddy","crude","crudeness","crudits","crudity","cruel","cruelness","cruelty","cruet","cruft","crufty","cruikshank","cruise","cruiser","cruller","crumb","crumble","crumbliness","crumbly","crumby","crumminess","crummy","crump","crumpet","crumple","crunch","crunchiness","crunchy","crupper","crusade","crusader","cruse","crush","crushable","crusher","crushing","crushproof","crusoe","crust","crustacean","crustal","crustily","crustiness","crusty","crutch","crux","cruz","cry","crybaby","cryogenic","cryogenics","cryostat","cryosurgery","crypt","cryptanalysis","cryptanalyst","cryptanalytic","cryptic","cryptically","crypto","cryptogram","cryptographer","cryptographic","cryptographically","cryptography","cryptologic","cryptological","cryptologist","cryptology","cryptozoic","crysta","crystal","crystalline","crystallite","crystallization","crystallize","crystallized","crystallizes","crystallizing","crystallographer","crystallographic","crystallography","crystie","cs","csc","cse","csharp","cshtml","csp","csproj","csr","csrf","csrftoken","css","cssclass","cssmenu","cssref","cssselector","cst","cstdlib","cstr","cstring","csv","csvfile","ct","cte","cthrine","ctime","ctl","ctn","ctor","ctp","ctr","ctrl","cts","ctx","ctype","ctypes","cu","cub","cuba","cuban","cubbed","cubbing","cubbyhole","cube","cuber","cubes","cubic","cubical","cubicle","cubism","cubist","cubit","cuboid","cuchulain","cuckold","cuckoldry","cuckoo","cucumber","cud","cuda","cuddle","cuddly","cudgel","cue","cuff","cuisinart","cuisine","culbertson","culinary","cull","cullan","cullen","cullender","culler","culley","cullie","cullin","cully","culminate","culmination","culotte","culpa","culpability","culpable","culpableness","culpably","culprit","cult","cultism","cultist","cultivable","cultivate","cultivated","cultivation","cultivator","cultural","culture","cultured","cultureinfo","cultures","culver","culvert","cum","cumber","cumberland","cumbersome","cumbersomeness","cumbrous","cumin","cummerbund","cummings","cumquat","cumsum","cumulate","cumulation","cumulative","cumuli","cumulonimbi","cumulonimbus","cumulus","cunard","cuneiform","cunnilingus","cunning","cunningham","cunningness","cunt","cup","cupboard","cupcake","cupertino","cupful","cupid","cupidinously","cupidity","cupola","cupped","cupping","cupric","cuprous","cur","curability","curabitur","curable","curableness","curably","curacao","curacy","curare","curate","curative","curator","curatorial","curb","curbing","curbside","curbstone","curcio","curd","curdate","curdle","cure","cured","curer","curettage","curfew","curfs","curia","curiae","curie","curio","curiosity","curious","curiousness","curitiba","curium","curl","curler","curlew","curlicue","curliness","curling","curlopt","curly","curlycue","curmudgeon","curr","curran","currant","curred","currencies","currency","current","currentculture","currentdate","currentdb","currentdevice","currentdomain","currentindex","currentitem","currentline","currentlocation","currently","currentness","currentnode","currentpage","currentposition","currentrow","currentstate","currenttarget","currentthread","currenttime","currenttimemillis","currentuser","currentvalue","currentversion","currey","curricle","curricula","curricular","curriculum","currie","currier","curring","curry","currycomb","curs","curse","cursed","cursedness","curses","cursive","cursiveness","cursives","cursor","cursorily","cursoriness","cursors","cursory","cursus","curt","curtail","curtailer","curtailment","curtain","curtice","curtis","curtness","curtsey","curtsy","curvaceous","curvaceousness","curvature","curve","curved","curves","curvilinear","curvilinearity","curving","curvy","cus","cushion","cushman","cushy","cusp","cuspid","cuspidor","cuss","cussed","cussedness","cusses","cussing","cust","custard","custer","custid","custodial","custodian","custodianship","custody","custom","customadapter","customarily","customariness","customary","customcell","customer","customerid","customername","customers","customhouse","customizable","customization","customize","customized","customizing","customview","cut","cutaneous","cutaway","cutback","cute","cuteness","cutesy","cuticle","cutlass","cutler","cutlery","cutlet","cutoff","cutout","cuts","cutter","cutthroat","cutting","cuttle","cuttlebone","cuttlefish","cutup","cutworm","cuvier","cuzco","cv","cvs","cvtcolor","cw","cwd","cwiki","cwt","cx","cxf","cxx","cxxflags","cy","cyan","cyanamid","cyanate","cyanic","cyanide","cyanogen","cyb","cybele","cybernetic","cybernetics","cyberpunk","cyberspace","cybil","cybill","cyborg","cyclades","cyclamen","cycle","cycler","cycles","cycleway","cyclic","cyclical","cycling","cyclist","cyclohexanol","cycloid","cycloidal","cyclometer","cyclone","cyclonic","cyclopean","cyclopedia","cyclopes","cyclops","cyclotron","cyder","cygnet","cygnus","cygwin","cyl","cylinder","cylindric","cylindrical","cymbal","cymbalist","cymbre","cynde","cyndi","cyndia","cyndie","cyndy","cynic","cynical","cynicism","cynosure","cynthea","cynthia","cynthie","cynthy","cypher","cypreses","cypress","cyprian","cypriot","cyprus","cyrano","cyril","cyrill","cyrille","cyrillic","cyrillus","cyrus","cyst","cystic","cython","cytochemistry","cytologist","cytology","cytolysis","cytoplasm","cytoplasmic","cytosine","cytotoxic","cz","czar","czarevitch","czarina","czarism","czarist","czarship","czech","czechoslovak","czechoslovakia","czechoslovakian","czechs","czerniak","czerny","d","da","dab","dabbed","dabber","dabbing","dabble","dabbler","dac","dacca","dace","dacey","dacha","dachau","dachshund","dacia","dacie","dacron","dactyl","dactylic","dacy","dad","dada","dadaism","dadaist","daddy","dade","dado","dadoes","dados","daedalus","dael","daemon","daemoncommandexecution","daemonic","daffi","daffie","daffiness","daffodil","daffy","daft","daftness","dag","dagger","dagmar","dagny","dagscheduler","daguerre","daguerreotype","dagwood","dahl","dahlia","dahomey","daile","dailiness","daily","daimler","daintily","daintiness","dainty","daiquiri","dairy","dairying","dairyland","dairymaid","dairyman","dairymen","dairywoman","dairywomen","dais","daisey","daisi","daisie","daisy","dakar","dakota","dakotan","dal","dale","dalenna","daleth","daley","dalhousie","dali","dalia","dalian","dalila","dall","dallas","dalli","dalliance","dallier","dallon","dally","dalmatia","dalmatian","daloris","dalston","dalt","dalton","dalvik","dalvikvm","daly","dam","damage","damageable","damaged","damager","damaging","damara","damaris","damascus","damask","dame","damian","damiano","damien","damion","damita","dammed","damming","dammit","damn","damnably","damnation","damned","damnedest","damning","damocles","damon","damp","damped","dampen","dampener","damper","damping","dampness","damsel","damselfly","damson","dan","dana","danbury","dance","dancelike","dancer","dandelion","dander","dandify","dandily","dandle","dandruff","dandy","dane","danelaw","danell","danella","danette","dang","danger","dangerfield","dangerous","dangerousness","dangle","dangler","dangling","dani","dania","danial","danica","danice","danie","daniel","daniela","daniele","daniella","danielle","danielson","danika","danila","danish","danit","danita","dank","dankness","danna","dannel","danni","dannie","danny","dannye","danseuse","dante","danton","danube","danubian","danville","danya","danyelle","danyette","danzig","dao","daphene","daphna","daphne","dapibus","dapper","dapperness","dapple","dar","dara","darb","darbee","darbie","darby","darcee","darcey","darci","darcie","darcy","darda","dardanelles","dare","daredevil","daredevilry","dareen","darell","darelle","daren","darer","daresay","dari","daria","darice","darill","darin","daring","daringness","dario","darius","darjeeling","dark","darken","darkener","darker","darkish","darkly","darkness","darkroom","darla","darleen","darlene","darline","darling","darlingness","darlington","darlleen","darn","darnall","darned","darnell","darner","darning","daron","darpa","darrel","darrell","darrelle","darren","darrick","darrin","darrow","darryl","darsey","darsie","dart","dartboard","darter","darth","dartmouth","darvon","darwin","darwinian","darwinism","darwinist","darya","daryl","daryle","daryn","das","dash","dasha","dashboard","dashed","dasher","dashes","dashiki","dashing","dasi","dasie","dask","dastard","dastardliness","dastardly","dasya","dat","data","dataaccess","dataadapter","dataannotations","dataarray","database","databaseerror","databasehelper","databasename","databasereference","databases","databind","databinding","datacenter","datacolumn","datacontext","datacontract","datafield","datafile","dataflow","dataframe","dataframes","datagram","datagrid","datagridtemplatecolumn","datagridtextcolumn","datagridview","dataindex","datainputstream","dataitem","datalist","datamation","datamedia","datamember","datamodel","datanode","datanucleus","dataobject","dataoutputstream","datapoint","datapoints","dataprovider","datareader","datarow","datas","dataservice","dataset","datasets","datasheet","datasnapshot","datasource","datasourceid","datasources","datastax","datastore","datastream","datastring","datatable","datatables","datatemplate","datatextfield","datatransfer","datatrigger","datatype","datatypes","dataurl","datausingencoding","datavaluefield","dataview","date","dateadd","datecreated","dated","datediff","datedly","datedness","datefield","dateformat","dateformatter","datefrom","dateless","dateline","dateofbirth","datepart","datepicker","datepickerdialog","dater","daterange","dates","datestr","datestring","datetime","datetimefield","datetimeformat","datetimeformatter","datetimeoffset","datetimepicker","dateto","dateutil","datevalue","datha","dating","dative","datos","datsun","datum","daub","dauber","daugherty","daughter","daumier","daune","daunt","daunted","daunting","dauntless","dauntlessness","dauphin","dav","davao","dave","daveen","daven","davenport","daveta","davey","david","davida","davidde","davide","davidson","davie","davin","davina","davine","davinich","davis","davit","davita","davon","davy","dawdle","dawdler","dawes","dawn","dawna","dawson","day","daybed","daybreak","daycare","daydream","daydreamer","dayle","daylight","dayna","dayofmonth","dayofweek","days","daysack","daytime","dayton","daze","dazed","dazzle","dazzler","dazzling","db","dba","dbadapter","dbc","dbconn","dbconnect","dbconnection","dbcontext","dbcp","dbd","dbf","dbg","dbh","dbhelper","dbhost","dbi","dbl","dbms","dbname","dbnull","dbo","dbpath","dbpedia","dbs","dbset","dbtype","dbus","dbuser","dbutante","dc","dcc","dcollet","dcolletage","dct","dd","ddd","dddd","ddene","ddf","ddl","dds","ddt","de","deacon","deaconess","deactivate","dead","deadbeat","deadbolt","deaden","deadener","deadening","deadhead","deadline","deadliness","deadlock","deadly","deadness","deadpan","deadpanned","deadpanner","deadpanning","deadwood","deaf","deafen","deafening","deafness","deal","dealer","dealership","dealing","dealloc","deallocate","deallocated","deallocator","deals","dealt","dean","deana","deandre","deane","deanery","deann","deanna","deanne","deanship","dear","dearborn","dearness","dearth","dearths","deary","deassign","death","deathbed","deathblow","deathless","deathlike","deathly","deaths","deathtrap","deathward","deathwatch","deb","debacle","debar","debark","debarkation","debarment","debarring","debaser","debatable","debate","debater","debauch","debauched","debauchedness","debauchee","debaucher","debauchery","debbi","debbie","debby","debee","debenture","debera","debi","debian","debilitate","debilitation","debility","debit","debonair","debonairness","debor","debora","deborah","debouch","debounce","debra","debrief","debris","debt","debtor","debug","debugged","debugger","debugging","debussy","debut","dec","decade","decadency","decadent","decades","decaf","decaffeinate","decagon","decal","decalogue","decamp","decampment","decapitate","decapitator","decathlon","decatur","decay","decca","deccan","decease","decedent","deceit","deceitful","deceitfulness","deceive","deceived","deceiver","deceives","deceiving","deceivingly","decelerate","deceleration","decelerator","december","decency","decennial","decent","deception","deceptive","deceptiveness","decertify","dechlorinate","decibel","decidability","decidable","decide","decided","decidedness","decides","deciding","deciduous","deciduousness","decile","deciliter","decimal","decimalformat","decimals","decimate","decimation","decimeter","decipher","decipherable","decipherer","decision","decisional","decisioned","decisioning","decisions","decisive","decisiveness","deck","deckchair","decker","deckhand","decking","decl","declamation","declamatory","declarable","declaration","declarations","declarative","declarator","declaratory","declare","declared","declarer","declares","declaring","declension","declination","decline","decliner","declivity","declspec","decltype","decnet","deco","decode","decoded","decodefile","decoder","decoderesource","decodestream","decoding","decolletes","decolorising","decomposability","decomposable","decompose","decomposition","decompress","decongestant","deconstruction","deconvolution","decor","decorate","decorated","decorates","decorating","decoration","decorative","decorativeness","decorator","decorators","decorous","decorousness","decorticate","decortication","decorum","decorview","decoupage","decouple","decoy","decrease","decreases","decreasing","decree","decreeing","decrement","decremental","decrepit","decrepitude","decriminalization","decriminalize","decry","decrypt","decrypted","decryption","decstation","decsystem","dectape","decustomised","dede","dedekind","dedicate","dedicated","dedication","dedicative","dedicator","dedicatory","dedie","dedra","deduce","deducible","deduct","deductibility","deductible","deduction","deductive","dee","deeann","deeanne","deed","deeded","deedee","deeding","deejay","deem","deemphasis","deena","deep","deepcopy","deepen","deeper","deepish","deeply","deepness","deer","deerdre","deere","deerskin","deerstalker","deerstalking","deeyn","def","deface","defacement","defaecate","defalcate","defalcation","defamation","defamatory","defame","defamer","default","defaultactioninvocation","defaultbuildoperationexecutor","defaultcenter","defaultconfig","defaultdict","defaulter","defaultfilterchain","defaulthttpclient","defaulting","defaultlistablebeanfactory","defaultmanager","defaultmaven","defaults","defaultsingletonbeanregistry","defaulttablemodel","defaultvalue","defaultview","defeat","defeated","defeater","defeatism","defeatist","defeats","defecate","defecation","defect","defection","defective","defectiveness","defector","defend","defendant","defended","defenestrate","defense","defenseless","defenselessness","defenses","defensibility","defensible","defensibly","defensive","defensiveness","defer","deference","deferent","deferential","deferrable","deferral","deferred","deferrer","deferring","deffer","defiance","defiant","defibrillator","deficiency","deficient","deficit","defier","defile","defilement","definable","definably","define","defineclass","defined","defineproperty","definer","defines","defining","definite","definitely","definiteness","definition","definitional","definitions","definitive","definitiveness","defis","deflate","deflation","deflationary","deflect","deflected","deflection","deflector","defn","defocus","defocussing","defoe","defog","defogger","defoliant","defoliator","deform","deformational","deformed","deformity","defraud","defrauder","defrayal","defrost","defroster","defs","deft","deftness","defun","defunct","defy","defying","deg","degas","degassing","degauss","degeneracy","degenerate","degenerateness","degrade","degraded","degradedness","degrading","degrease","degree","degrees","degum","dehlia","dehumanize","dehydrator","deice","deicer","deictic","deidre","deification","deify","deign","deimos","deina","deirdre","deist","deistic","deity","deja","deject","dejected","dejectedness","dejection","dejesus","dekalb","dekastere","del","dela","delacroix","delacruz","delainey","delaney","delano","delaware","delawarean","delay","delayed","delayer","delays","delbert","delcina","delcine","delectable","delectableness","delectably","delectation","delegable","delegate","delegated","delegates","delegatingconstructoraccessorimpl","delegatingfilterproxy","delegatingmethodaccessorimpl","delegation","deleon","delete","deleted","deleterious","deleteriousness","deletes","deleting","deletion","delfs","delft","delftware","delgado","delhi","deli","delia","deliberate","deliberately","deliberateness","deliberative","deliberativeness","delibes","delicacy","delicate","delicateness","delicatenesses","delicates","delicatessen","delicious","deliciousness","delicti","delighted","delightedness","delightful","delightfulness","delila","delilah","delilahs","delim","delimited","delimiter","delimiters","delims","delinda","delineate","delineation","delinquency","delinquent","deliquesce","deliquescent","delirious","deliriousness","delirium","delius","deliver","deliverable","deliverables","deliverance","delivered","deliverer","delivering","delivers","delivery","deliverymen","dell","della","dellwood","delly","delmar","delmarva","delmer","delmonico","delmor","delmore","delora","delores","deloria","deloris","delphi","delphic","delphine","delphinia","delphinium","delphinus","delta","deltatime","deltax","deltay","deltoid","delude","deluder","deluding","deluge","delusion","delusional","delusive","delusiveness","deluxe","delve","delver","dem","demagnify","demagogic","demagogue","demagoguery","demagogy","demand","demander","demanding","demandingly","demands","demarcate","demarcation","demavend","demean","demeanor","demented","dementedness","dementia","demerol","demesne","demeter","demetra","demetre","demetri","demetria","demetrius","demigod","demijohn","demimondaine","demimonde","demineralization","deming","demise","demit","demitasse","demitted","demitting","demo","democracy","democrat","democratic","democratically","democratization","democratize","democratizes","democritus","demographer","demographic","demographical","demography","demolish","demolisher","demolition","demon","demonetization","demoniac","demoniacal","demonic","demonology","demonstrable","demonstrableness","demonstrably","demonstrate","demonstrated","demonstrates","demonstrating","demonstration","demonstrative","demonstrativeness","demonstrativenesses","demonstratives","demonstrator","demoralization","demoralizer","demoralizing","demorgan","demos","demosthenes","demote","demotic","demott","demount","dempsey","demulcent","demultiplex","demur","demure","demureness","demurral","demurred","demurrer","demurring","demythologization","demythologize","den","dena","dendrite","dene","deneb","denebola","deneen","deng","dengue","deni","deniable","denial","denice","denied","denier","denigrate","denigration","denim","denise","denizen","denmark","denna","denned","dennet","denney","denni","dennie","denning","dennison","denny","denominate","denominational","denominator","denote","denotes","denouement","denounce","denouncement","denouncer","dens","dense","densely","denseness","densitometer","densitometric","densitometry","density","dent","dental","dentifrice","dentin","dentine","dentist","dentistry","dentition","denture","denuclearize","denudation","denude","denuder","denunciate","denunciation","denver","deny","denying","denys","denyse","deodorant","deodorization","deodorize","deodorizer","deon","deonne","deoxyribonucleic","dep","depart","department","departmental","departmentalization","departmentalize","departmentid","departments","departure","depend","dependability","dependable","dependableness","dependably","dependant","dependence","dependencies","dependency","dependencyobject","dependencyproperty","dependent","dependentassembly","depending","depends","dependson","depict","depicted","depicter","depiction","depilatory","deplete","depletion","deplorable","deplorableness","deplorably","deplore","deplorer","deploring","deploy","deployable","deployed","deployer","deploying","deployment","deployments","depolarize","deponent","deport","deportation","deportee","deportment","depose","deposit","depositary","deposition","depositor","depository","depot","deprave","depraved","depravedness","depraver","depravity","deprecate","deprecated","deprecating","deprecation","deprecatory","depreciable","depreciate","depreciating","depreciation","depreciative","depress","depressant","depressible","depression","depressive","depressor","deprive","deps","dept","depth","depths","deputation","depute","deputize","deputy","deque","dequeue","dequeuereusablecell","dequeuereusablecellwithidentifier","der","derail","derailment","derange","derangement","derby","derbyshire","dereference","dereferencing","derek","derelict","dereliction","derick","deride","deriding","derision","derisive","derisiveness","derisory","derivable","derivate","derivation","derivative","derivativeness","derivatives","derive","derived","deriveddata","derives","deriving","derk","dermal","dermatitides","dermatitis","dermatological","dermatologist","dermatology","dermis","dermot","derogate","derogation","derogatorily","derogatory","derrek","derrick","derrida","derrik","derril","derringer","derrire","derron","derry","dervish","derward","derwin","des","desalinate","desalination","desalinization","desalinize","desalt","desc","descant","descartes","descend","descendant","descendants","descended","descendent","descender","descending","descends","descent","descr","describable","describe","described","describes","describing","description","descriptions","descriptive","descriptiveness","descriptor","descriptors","descry","desdemona","desecrate","desecrater","desecration","deselect","deserialization","deserialize","deserialized","deserializeobject","deserializer","deserializing","desert","deserter","desertification","desertion","deserunt","deserve","deserved","deservedness","deserves","deserving","desi","desiccant","desiccate","desiccation","desiccator","desiderata","desideratum","design","designable","designate","designated","designation","designational","designator","designed","designer","designers","designing","designs","desirabilia","desirability","desirable","desirableness","desirably","desirae","desire","desired","desiredcapabilities","desiree","desirer","desiri","desirous","desirousness","desist","desk","desktop","desktops","desmond","desmund","desolate","desolateness","desolater","desolating","desolation","desorption","despair","despairer","despairing","desperado","desperadoes","desperate","desperateness","desperation","despicable","despicably","despise","despiser","despite","despoil","despoilment","despond","despondence","despondency","despondent","despotic","despotically","despotism","dessert","dessicate","dest","destdir","destinate","destination","destinations","destinationviewcontroller","destine","destiny","destitute","destituteness","destitution","destroy","destroyed","destroyer","destroying","destroys","destruct","destructibility","destructible","destruction","destructive","destructiveness","destructor","destructors","destructuring","desuetude","desultorily","desultoriness","desultory","det","detach","detached","detachedness","detacher","detachment","detail","detailed","detailedness","details","detailview","detailviewcontroller","detain","detainee","detainer","detainment","detect","detectability","detectable","detectably","detected","detecting","detection","detective","detector","detects","detentes","detention","deter","detergency","detergent","deteriorate","deterioration","determent","determinability","determinable","determinableness","determinacy","determinant","determinate","determinateness","determination","determinative","determinativeness","determine","determined","determinedly","determinedness","determiner","determines","determining","determinism","deterministic","deterministically","deterred","deterrence","deterrent","deterring","deters","detersive","detestable","detestableness","detestably","detestation","dethrone","dethronement","detonable","detonate","detonated","detonation","detonator","detour","detox","detoxification","detoxify","detract","detractive","detribalize","detriment","detrimental","detritus","detroit","deuce","deuced","deus","deuterium","deuteron","deuteronomy","deutsch","dev","deva","devan","devanagari","devastate","devastating","devastation","devastator","devcenter","devdependencies","devel","develop","developed","developer","developerguide","developers","developerworks","developing","development","developmental","devexpress","devi","deviance","deviancy","deviant","deviate","deviated","deviating","deviation","device","deviceid","devicename","devices","devil","devilish","devilishness","devilment","devilry","deviltry","devin","devina","devinne","devious","deviousness","devise","deviser","devkit","devland","devlen","devlin","devoice","devolution","devolve","devon","devondra","devonian","devonna","devonne","devonshire","devops","devora","devote","devoted","devotee","devotion","devotional","devour","devourer","devout","devoutness","devs","devtools","devy","dew","dewain","dewar","dewayne","dewberry","dewclaw","dewdrop","dewey","dewie","dewiness","dewitt","dewlap","dewy","dex","dexedrine","dexes","dexter","dexterity","dexterous","dexterousness","dextrose","df","dfa","dfd","dff","dfs","dg","dgv","dh","dhaka","dhaulagiri","dhcp","dhe","dhoti","dhow","di","dia","diabase","diabetes","diabetic","diabolic","diabolical","diabolicalness","diabolism","diachronic","diacritic","diacritical","diadem","diaereses","diaeresis","diag","diaghilev","diagnometer","diagnosable","diagnose","diagnosed","diagnosis","diagnostic","diagnostically","diagnostician","diagnostics","diagonal","diagonalize","diagram","diagrammable","diagrammatic","diagrammaticality","diagrammatically","diagrammed","diagrammer","diagramming","diagrams","diahann","dial","dialect","dialectal","dialectic","dialectical","dialed","dialer","dialing","dialog","dialogflow","dialogfragment","dialogged","dialogging","dialoginterface","dialogresult","dialogs","dialogue","dials","dialysis","dialyzed","dialyzes","diam","diamagnetic","diameter","diametric","diametrical","diamond","diamondback","diamonds","dian","diana","diandra","diane","dianemarie","diann","dianna","dianne","diannne","diapason","diaper","diaphanous","diaphanousness","diaphragm","diaphragmatic","diarist","diarmid","diarrhea","diarrheal","diary","diaspora","diastase","diastole","diastolic","diathermy","diathesis","diatom","diatomic","diatonic","diatribe","diaz","dibble","dibs","dic","dicaprio","dice","dicer","dicey","dichloride","dichotomization","dichotomize","dichotomous","dichotomy","dicier","diciest","dicing","dick","dickens","dickensian","dicker","dickerson","dickey","dickie","dickier","dickiest","dickinson","dickson","dicky","dicotyledon","dicotyledonous","dict","dicta","dictaphone","dictate","dictation","dictator","dictatorial","dictatorialness","dictatorship","diction","dictionaries","dictionary","dicts","dictum","did","didactic","didactically","didactics","diddle","diddler","diderot","didfinishlaunchingwithoptions","didi","didn","didnt","dido","didoes","didreceivememorywarning","didselectrowatindexpath","didst","die","died","diefenbaker","diego","dieing","dielectric","diem","diena","dierdre","diereses","dieresis","dies","diesel","diet","dietary","dieter","dietetic","dietetics","diethylaminoethyl","diethylstilbestrol","dietitian","dietrich","dietz","dif","diff","differ","difference","differences","different","differentiability","differentiable","differential","differentiate","differentiated","differentiation","differentiator","differently","differentness","differing","differs","difficile","difficult","difficulties","difficulty","diffidence","diffident","diffract","diffraction","diffractometer","diffs","diffuse","diffuseness","diffuser","diffusible","diffusion","diffusional","diffusive","diffusiveness","diffusivity","dig","digerati","digest","digested","digester","digestibility","digestible","digestifs","digestion","digestive","digg","digger","digging","digit","digital","digitalis","digitalization","digitalized","digitalizes","digitalizing","digitalocean","digitalwrite","digitization","digitize","digitizer","digits","dignified","dignify","dignissim","dignitary","dignity","digram","digraph","digraphs","digress","digression","digressive","digressiveness","dihedral","dijit","dijkstra","dijon","dike","diker","diktat","dilan","dilapidate","dilapidation","dilatation","dilate","dilated","dilation","dilator","dilatoriness","dilatory","dilbert","dilemma","dilettante","dilettantish","dilettantism","diligence","diligent","diligentness","dilithium","dill","dillard","dillie","dilling","dillinger","dillis","dillon","dilly","dillydally","dilogarithm","diluent","dilute","diluted","diluteness","dilution","dim","dimaggio","dime","dimen","dimension","dimensional","dimensionality","dimensionless","dimensions","dimer","dimethyl","dimethylglyoxime","diminish","diminished","diminuendo","diminution","diminutive","diminutiveness","dimitri","dimitry","dimity","dimmed","dimmer","dimmest","dimming","dimness","dimorphism","dimple","dimply","dims","dimwit","dimwitted","din","dina","dinah","dinar","dine","diner","dinette","ding","dingbat","dinghy","dingily","dinginess","dingle","dingo","dingoes","dingus","dingy","dinky","dinned","dinner","dinnertime","dinnerware","dinnie","dinning","dinny","dino","dinosaur","dint","diocesan","diocese","diocletian","diode","diogenes","dion","dione","dionis","dionisio","dionne","dionysian","dionysus","diophantine","diopter","dior","diorama","dioxalate","dioxide","dioxin","dip","diphtheria","diphthong","diplexers","diploid","diploma","diplomacy","diplomat","diplomata","diplomatic","diplomatically","diplomatics","diplomatist","dipodic","dipody","dipole","dipped","dipper","dipping","dippy","dipsomania","dipsomaniac","dipstick","dipterous","diptych","diptychs","dir","dirac","dire","direct","directcast","directed","direction","directional","directionality","directions","directive","directives","directivity","directly","directness","director","directorate","directorial","directories","directorship","directory","directoryentry","directoryinfo","directrix","directs","directx","direful","direness","dirge","dirichlet","dirigible","dirk","dirname","dirndl","dirpath","dirs","dirt","dirtily","dirtiness","dirty","dis","disable","disabled","disablement","disabler","disables","disabling","disabuse","disadvantage","disadvantaged","disadvantages","disagree","disagreeable","disallow","disambiguate","disappear","disappeared","disappearing","disappears","disappointed","disappointing","disarming","disarrange","disaster","disastrous","disband","disbandment","disbar","disbarment","disbarring","disbelieving","disbursal","disburse","disbursement","disburser","disc","discard","discarded","discern","discerner","discernibility","discernible","discernibly","discerning","discernment","discharged","disciple","discipleship","disciplinarian","disciplinary","discipline","disciplined","discipliner","disciplines","disciplining","disclaimer","disclosed","disclosure","disco","discography","discolor","discolored","discoloreds","discombobulate","discomfit","discomfiture","discommode","disconcerting","disconnect","disconnected","disconnectedness","disconnecter","disconsolate","discord","discordance","discordant","discorporate","discotheque","discount","discourage","discouraged","discouragement","discouraging","discover","discoverable","discovered","discoverer","discovering","discovery","discreet","discreetly","discreetness","discrepancy","discrepant","discrete","discreteness","discreteobjectkeyframe","discretion","discretionary","discretization","discretized","discriminable","discriminant","discriminate","discriminated","discriminating","discrimination","discriminator","discriminatory","discursiveness","discus","discuss","discussant","discussed","discusser","discusses","discussing","discussion","discussions","disdain","disdainful","disdainfulness","disease","disembowel","disembowelment","disengage","disfigure","disfigurement","disfranchise","disfranchisement","disgorge","disgrace","disgracer","disgruntle","disgruntlement","disguise","disguised","disguiser","disgust","disgusted","disgustful","disgusting","dish","dishabille","disharmonious","dishcloth","dishcloths","dishevel","dishevelment","dishonest","dishonored","dishpan","dishrag","dishtowel","dishwasher","dishwater","disillusion","disillusionment","disinfectant","disinherit","disinterested","disinterestedness","disinvest","disjoin","disjointedness","disjunct","disjunctive","disk","diskette","disks","dislike","dislodge","dislodgement","dismal","dismalness","dismantle","dismantlement","dismay","dismayed","dismaying","dismember","dismemberment","dismiss","dismissed","dismissive","dismissviewcontrolleranimated","disney","disneyland","disoblige","disorder","disordered","disorderedness","disorderliness","disorderly","disorganize","disorganized","disp","disparage","disparagement","disparager","disparaging","disparate","disparateness","dispatch","dispatched","dispatcher","dispatcherservlet","dispatchevent","dispatcheventimpl","dispatching","dispatchmessage","dispatchqueue","dispatchtouchevent","dispel","dispelled","dispelling","dispensable","dispensary","dispensate","dispensation","dispense","dispenser","dispersal","dispersant","disperse","dispersed","disperser","dispersible","dispersion","dispersive","dispersiveness","dispirit","displace","display","displayalerts","displayclass","displayed","displayfor","displaying","displaymetrics","displayname","displays","displease","displeased","displeasure","disport","disposable","disposal","dispose","disposed","disposing","disposition","dispositional","disproportional","disproportionate","disproportionation","disprove","disputable","disputably","disputant","disputation","disputatious","dispute","disputed","disputer","disquiet","disquieting","disquisition","disqus","disraeli","disregard","disregardful","disrepair","disreputable","disreputableness","disrepute","disrespect","disrupt","disrupted","disrupter","disruption","disruptive","disruptor","dissatisfy","dissect","dissed","dissemble","dissembler","disseminate","dissemination","dissension","dissent","dissenter","dissertation","disservice","disses","dissever","dissidence","dissident","dissimilar","dissing","dissipate","dissipated","dissipatedly","dissipatedness","dissipater","dissipation","dissociable","dissociate","dissociated","dissociation","dissociative","dissoluble","dissolute","dissoluteness","dissolve","dissolved","dissonance","dissonant","dissuade","dissuader","dissuasive","dist","distaff","distal","distance","distances","distant","distantness","distaste","distemper","distend","distension","distention","distillate","distillation","distillery","distinct","distincter","distinctest","distinction","distinctive","distinctiveness","distinctness","distinguish","distinguishable","distinguishably","distinguished","distinguisher","distort","distorted","distorter","distortion","distract","distracted","distractedness","distracting","distrait","distraught","distress","distressful","distressing","distribute","distributed","distributer","distributing","distribution","distributional","distributions","distributive","distributiveness","distributivity","distributor","distributorship","district","distro","distrust","disturb","disturbance","disturbed","disturber","disturbing","distutils","disulfide","disuse","disyllable","dita","ditch","ditcher","dither","ditsy","ditto","ditty","ditz","ditzel","diuresis","diuretic","diurnal","div","diva","divalent","divan","dive","dived","diver","diverge","divergence","divergent","diverse","diverseness","diversification","diversifier","diversify","diversion","diversionary","diversity","divert","diverticulitis","divertimento","divest","divestiture","divestment","divid","dividable","divide","divided","dividend","divider","dividing","divination","divine","diviner","divinity","divisibility","divisible","division","divisional","divisions","divisive","divisiveness","divisor","divorce","divorcement","divot","divs","divulge","divvy","dix","dixie","dixiecrat","dixieland","dixon","dizzily","dizziness","dizzy","dizzying","dj","djakarta","django","djangoproject","djava","djellaba","djellabah","djibouti","dk","dl","dlg","dlib","dll","dllexport","dllimport","dlls","dlopen","dm","dma","dmd","dmg","dmitri","dml","dmod","dms","dmz","dn","dna","dname","dnepr","dnepropetrovsk","dnieper","dniester","dniren","dnn","dns","do","doa","doable","dob","dobbin","doberman","dobro","doc","docent","docid","docile","docility","dock","docker","dockerfile","docket","dockland","dockpanel","dockside","dockworker","dockyard","docmd","docreatebean","docs","doctor","doctoral","doctorate","doctorow","doctors","doctrinaire","doctrinal","doctrine","doctype","docudrama","document","documentary","documentation","documentbuilder","documentbuilderfactory","documented","documentelement","documentid","documentroot","documents","documentsdirectory","docusign","docx","dod","dodder","dode","dodecahedra","dodecahedral","dodecahedron","dodge","dodgem","dodger","dodgson","dodi","dodie","dodington","dodo","dodoma","dodson","dody","doe","doer","does","doeskin","doesn","doesnt","doevents","doexecute","doff","dofilter","dofilterinternal","dog","dogcart","dogcatcher","doge","dogeared","doget","dogetbean","dogfight","dogfish","dogfought","dogged","doggedness","doggerel","dogging","doggone","doggy","doghouse","dogie","dogleg","doglegged","doglegging","dogma","dogmatic","dogmatically","dogmatics","dogmatism","dogmatist","dogs","dogsbody","dogtooth","dogtown","dogtrot","dogtrotted","dogtrotting","dogwood","dogy","doh","doha","doi","doily","doinbackground","doing","doit","dojo","dolby","doldrum","doldrums","dole","doled","doleful","dolefuller","dolefullest","dolefulness","doles","dolf","doling","doll","dollar","dollars","dolley","dolli","dollie","dollop","dolly","dolmen","dolomite","dolomitic","dolor","dolore","dolores","dolorita","dolorous","dolph","dolphin","dolt","doltish","doltishness","dom","domain","domainname","domains","domcontentloaded","domdocument","dome","domelement","domenic","domenico","domeniga","domesday","domestic","domestically","domesticate","domesticated","domestication","domesticity","domicile","domiciliary","dominance","dominant","dominate","domination","dominator","dominatrices","dominatrix","domineer","domineering","domineeringness","dominga","domingo","dominguez","domini","dominic","dominica","dominican","dominick","dominik","dominion","dominique","domino","dominoes","domitian","dompdf","don","dona","donahue","donal","donald","donaldson","donall","donalt","donate","donatello","donation","donations","donative","donaugh","donavon","done","donec","donella","donelle","donetsk","donetta","dong","dongle","donia","donica","donielle","donizetti","donkey","donn","donna","donnamarie","donne","donned","donnell","donnelly","donner","donni","donnie","donning","donnish","donnishness","donny","donnybrook","donor","donovan","dont","donut","donutted","donutting","doodad","doodle","doodlebug","doodler","doohickey","dooley","doolittle","doom","doomsday","doonesbury","door","doorbell","doorhandles","doorkeep","doorkeeper","doorknob","doorman","doormat","doormen","doornail","doorplate","doors","doorstep","doorstepped","doorstepping","doorstop","doorway","dooryard","dopa","dopamine","dopant","dope","doper","dopey","dopier","dopiest","dopiness","dopost","doppler","doprivileged","dor","dora","dorado","doralia","doralin","doralyn","doralynn","doralynne","dorcas","dorchester","doreen","dorelia","dorella","dorelle","dorena","dorene","doretta","dorette","dorey","dori","doria","dorian","doric","dorice","dorie","dorine","dorisa","dorise","dorita","dork","dorky","dorm","dormancy","dormant","dormer","dormice","dormitory","dormouse","doro","dorolice","dorolisa","dorotea","doroteya","dorothea","dorothee","dorothy","dorree","dorri","dorrie","dorry","dorsal","dorsey","dorthea","dorthy","dortmund","dory","dos","dosage","dose","dosi","dosimeter","dosimetry","dosomething","dossier","dost","dostart","dostoevsky","dostuff","dot","dotage","dotard","dote","doter","doti","doting","dotnet","dotnetfiddle","dots","dotson","dotted","dotti","dottie","dottiness","dotting","dotty","douala","douay","double","doubleanimation","doubled","doubleday","doubleheader","doubleness","doubler","doubles","doublespeak","doublet","doublethink","doubleton","doublevalue","doubling","doubloon","doubly","doubt","doubted","doubter","doubtful","doubtfulness","doubting","doubtless","doubtlessness","doubts","douche","doug","dough","dougherty","doughs","doughty","doughy","dougie","douglas","douglass","dougy","dour","dourness","douro","douse","douser","dov","dove","dovecote","dover","dovetail","dovish","dow","dowager","dowdily","dowdiness","dowdy","dowel","dower","down","downbeat","downcase","downcast","downdraft","downer","downey","downfall","downgrade","downhearted","downheartedness","downhill","downland","download","downloadable","downloaded","downloader","downloadfile","downloading","downloadmanager","downloads","downloadurl","downpipes","downplay","downpour","downrange","downright","downrightness","downriver","downs","downscale","downside","downsides","downsize","downslope","downspout","downstage","downstairs","downstate","downstream","downswing","downtime","downto","downtown","downtowner","downtrend","downtrodden","downturn","downvote","downvoted","downvotes","downward","downwardness","downwind","downy","dowork","dowry","dowse","dowser","doxology","doxygen","doy","doyen","doyenne","doyle","doz","doze","dozen","dozens","dozenths","dozer","dozy","dp","dpi","dpkg","dplyr","dps","dpt","dq","dr","drab","drabbed","drabber","drabbest","drabbing","drabness","drachma","draco","draconian","dracula","draft","draftee","drafter","draftily","draftiness","drafting","draftsman","draftsmanship","draftsmen","draftsperson","draftswoman","draftswomen","drafty","drag","draggable","dragged","dragger","dragging","draggy","dragnet","dragon","dragonfly","dragonhead","dragoon","drailleur","drain","drainage","drainboard","drained","drainer","drainpipe","drake","dram","drama","dramamine","dramatic","dramatical","dramatically","dramatics","dramatist","dramatization","dramatize","dramatized","dramatizer","dramaturgy","drambuie","drammed","dramming","drank","drano","drape","draper","drapery","drastic","drastically","drat","dratted","dratting","dravidian","draw","drawable","drawables","drawback","drawbacks","drawbitmap","drawbridge","drawchart","drawer","drawerlayout","drawimage","drawing","drawl","drawler","drawline","drawling","drawly","drawn","drawnly","drawnness","drawrect","draws","drawstring","drawtext","dray","dre","dread","dreadful","dreadfulness","dreadlocks","dreadnought","dream","dreamboat","dreamed","dreamer","dreamily","dreaminess","dreaming","dreamland","dreamless","dreamlessness","dreamlike","dreamweaver","dreamworld","dreamy","drear","drearily","dreariness","dreary","dreddy","dredge","dredger","dredi","dreg","dreiser","drench","drencher","drer","dresden","dress","dressage","dressed","dresser","dresses","dressiness","dressing","dressmaker","dressmaking","dressy","drew","drexel","dreyfus","dreyfuss","drib","dribble","dribbler","driblet","dried","drier","drift","drifter","drifting","driftwood","drill","driller","drilling","drillmaster","drink","drinkable","drinker","drinking","drinks","drip","dripped","dripping","drippy","drive","drivel","driveler","driven","driver","driverclassname","drivermanager","drivers","drives","driveway","driving","drizzle","drizzling","drizzly","drm","drogue","droid","droll","drollery","drollness","drolly","dromedary","drona","drone","droning","drool","drools","droop","droopiness","drooping","droopy","drop","dropbox","dropboxusercontent","dropdown","dropdownlist","dropdownlistfor","dropdowns","drophead","dropkick","droplet","dropout","droppable","dropped","dropper","dropping","drops","dropsical","dropsy","dropzone","drosophila","dross","drought","drove","drover","drown","drowner","drowse","drowsily","drowsiness","drowsy","dru","drub","drubbed","drubber","drubbing","druci","drucie","drucill","drucy","drud","drudge","drudger","drudgery","drudging","drug","drugged","druggie","drugging","druggist","drugi","drugless","drugs","drugstore","druid","druidism","drum","drumbeat","drumhead","drumlin","drummed","drummer","drumming","drummond","drumstick","drunk","drunkard","drunken","drunkenness","drupal","drupe","drury","drusi","drusie","drusilla","drusy","druthers","drv","drwxr","dry","dryad","dryden","dryer","dryish","dryness","drys","drystone","drywall","ds","dsa","dsc","dshabill","dshubba","dsl","dsn","dsp","dss","dsseldorf","dst","dt","dtd","dte","dtente","dtm","dto","dtp","dts","dtype","dtypes","du","dual","dualism","dualist","dualistic","duality","duane","dub","dubai","dubbed","dubber","dubbin","dubbing","dubcek","dubhe","dubiety","dubious","dubiousness","dublin","dubrovnik","dubuque","ducal","ducat","duce","duchamp","duchess","duchy","duck","duckbill","ducker","duckling","duckpins","duckpond","duckweed","ducky","duct","ducted","ductile","ductility","ducting","ductless","ducts","ductwork","dud","dudder","dude","dudgeon","dudley","due","duedate","duel","duelist","dueness","duenna","duet","duetted","duetting","duff","duffel","duffer","duffie","duffy","dug","dugald","dugout","duh","dui","duis","duisburg","duke","dukedom","dukey","dukie","duky","dulce","dulcea","dulcet","dulci","dulcia","dulciana","dulcie","dulcify","dulcimer","dulcine","dulcinea","dulcy","dull","dullard","dulles","dullness","dully","dulness","dulsea","duluth","duly","dumas","dumb","dumbbell","dumbfound","dumbness","dumbo","dumbstruck","dumbwaiter","dumdum","dummies","dummy","dumont","dump","dumped","dumper","dumpiness","dumping","dumpling","dumps","dumpster","dumpty","dumpy","dun","dunant","dunbar","dunc","duncan","dunce","dundee","dunderhead","dune","dunedin","dung","dungaree","dungeon","dunghill","dunham","dunk","dunker","dunkirk","dunlap","dunn","dunne","dunned","dunner","dunnest","dunning","dunno","dunstan","duo","duodecimal","duodena","duodenal","duodenum","duologue","duopolist","duopoly","dup","dupe","duper","dupion","duple","duplex","duplexer","duplicability","duplicable","duplicate","duplicated","duplicates","duplicating","duplication","duplicative","duplicator","duplicitous","duplicity","dupont","dur","durability","durable","durableness","durably","duracell","duran","durance","durand","durant","durante","duration","durational","durban","duress","durex","durham","during","durkee","durkheim","durocher","durst","durum","durward","duse","dusenberg","dusenbury","dushanbe","dusk","duskiness","dusky","dust","dustbin","dustcart","dustcover","duster","dustily","dustin","dustiness","dusting","dustless","dustman","dustmen","dustpan","dusty","dutch","dutchman","dutchmen","dutchwoman","dutchwomen","duteous","dutiable","dutiful","dutifulness","duty","duvalier","duvet","duxes","dv","dvd","dvina","dvork","dw","dwain","dwarf","dwarfish","dwarfism","dwayne","dweeb","dwell","dweller","dwelling","dwelt","dwi","dwight","dwindle","dword","dx","dximagetransform","dy","dyad","dyadic","dyan","dyana","dyane","dyann","dyanna","dyanne","dybbuk","dybbukim","dye","dyed","dyeing","dyer","dyes","dyestuff","dying","dyke","dylan","dyld","dylib","dyn","dyna","dynah","dynamic","dynamical","dynamically","dynamicresource","dynamics","dynamism","dynamite","dynamiter","dynamized","dynamo","dynamodb","dynastic","dynasty","dyne","dyno","dysentery","dysfunction","dysfunctional","dyslectic","dyslexia","dyslexic","dyslexically","dyspepsia","dyspeptic","dysprosium","dystopia","dystrophy","dz","dzerzhinsky","e","ea","each","eachelle","eada","eadie","eadith","eadmund","eager","eagerness","eagle","eaglet","eakins","eal","ealasaid","eamon","ean","eap","ear","earache","eardrum","earful","earhart","earing","earl","earldom","earle","earlene","earlie","earlier","earliest","earline","earliness","earlobe","early","earmark","earmuff","earn","earned","earner","earnest","earnestine","earnestness","earning","earnings","earp","earphone","earpieces","earplug","earring","earshot","earsplitting","earth","eartha","earthbound","earthed","earthenware","earthiness","earthliness","earthling","earthly","earthmen","earthmover","earthmoving","earthquake","earths","earthshaking","earthward","earthwork","earthworm","earthy","earvin","earwax","earwig","earwigged","earwigging","ease","eased","easel","easement","easer","eases","easier","easies","easiest","easily","easiness","easing","east","eastbound","easter","easterly","eastern","easterner","easternmost","easthampton","easting","eastland","eastman","eastward","eastwick","eastwood","easy","easygoing","easygoingness","eat","eatable","eatables","eaten","eater","eatery","eating","eaton","eave","eavesdrop","eavesdropped","eavesdropper","eavesdropping","eax","eb","eba","ebay","ebb","ebba","ebcdic","eben","ebeneezer","ebeneser","ebenezer","eberhard","eberto","ebola","ebonee","ebonics","ebony","ebook","ebp","ebro","ebs","ebullience","ebullient","ebullition","ebx","ec","ecb","ecc","eccentric","eccentrically","eccentricity","eccl","eccles","ecclesiastes","ecclesiastic","ecclesiastical","ecdh","ecdhe","ecdsa","ecg","echelon","echinoderm","echo","echoed","echoes","echoic","echoing","echolocation","eclectic","eclectically","eclecticism","eclipse","eclipselink","ecliptic","eclogue","ecma","ecmascript","eco","ecocide","ecol","ecole","ecologic","ecological","ecologist","ecology","ecommerce","econ","econometric","econometrica","econometricians","econometrics","economic","economical","economics","economist","economization","economize","economizer","economizing","economy","ecosystem","ecru","ecs","ecstasy","ecstatic","ecstatically","ect","ectoplasm","ecuador","ecuadoran","ecuadorean","ecuadorian","ecumenic","ecumenical","ecumenicism","ecumenicist","ecumenics","ecumenism","ecumenist","ecx","eczema","ed","eda","edam","edan","edd","edda","eddi","eddie","eddy","ede","edee","edeline","edelweiss","edema","edematous","eden","edgar","edgard","edgardo","edge","edgeless","edger","edgerton","edges","edgewater","edgewise","edgewood","edgily","edginess","edging","edgy","edi","edibility","edible","edibleness","edict","edie","edification","edifice","edifier","edify","edifying","edik","edin","edinburgh","edison","edit","edita","editable","edited","edith","editha","edithe","editing","edition","editions","edititemtemplate","editor","editorfor","editorial","editorialist","editorialize","editorializer","editors","editorship","edits","edittext","ediva","edlin","edm","edmon","edmond","edmonton","edmund","edmx","edna","edouard","edp","eds","edsel","edsger","edt","edu","eduard","eduardo","educ","educability","educable","educate","educated","education","educational","educationalists","educationists","educative","educator","educe","eduction","eduino","edutainment","edvard","edward","edwardian","edwardo","edwin","edwina","edx","edy","edyth","edythe","ee","eec","eee","eeg","eek","eel","eelgrass","eeo","eeoc","eerie","eerily","eeriness","eeyore","ef","eff","efface","effaceable","effacement","effacer","effect","effective","effectively","effectiveness","effectives","effector","effects","effectual","effectualness","effectuate","effectuation","effeminacy","effeminate","effendi","efferent","effervesce","effervescence","effervescent","effete","effeteness","efficacious","efficaciousness","efficacy","efficiency","efficient","efficiently","effie","effigy","effloresce","efflorescence","efflorescent","effluence","effluent","effluvia","effluvium","efflux","effluxion","effort","effortless","effortlessness","efforts","effrontery","effulgence","effulgent","effuse","effusion","effusive","effusiveness","efl","efrain","efrem","efren","eft","eg","ega","egad","egalitarian","egalitarianism","egalitarians","egan","egbert","egerton","egestas","eget","egg","eggbeater","eggcup","egger","egghead","eggheaded","eggnog","eggplant","eggs","eggshell","egis","egl","eglantine","ego","egocentric","egocentrically","egocentricity","egoism","egoist","egoistic","egoistical","egomania","egomaniac","egon","egor","egotism","egotist","egotistic","egotistical","egregious","egregiousness","egrep","egress","egret","egypt","egyptian","egyptology","eh","ehcache","ehrlich","ei","eichmann","eid","eider","eiderdown","eidetic","eiffel","eigen","eigenfunction","eigenstate","eigenvalue","eigenvector","eight","eighteen","eighteenths","eightfold","eighth","eighths","eightieths","eightpence","eighty","eileen","eilis","eimile","einstein","einsteinian","einsteinium","eire","eirena","eisenhower","eisenstein","eisner","eisteddfod","either","eiusmod","ej","ejabberd","ejaculate","ejaculation","ejaculatory","ejb","eject","ejecta","ejection","ejector","ejs","ekaterina","ekberg","eke","eked","ekg","ekstrom","el","elaborate","elaborateness","elaboration","elaborators","elaina","elaine","elana","eland","elane","elanor","elans","elapse","elapsed","elapsedtime","elastic","elastically","elasticated","elasticbeanstalk","elasticity","elasticize","elasticsearch","elastodynamics","elastomer","elate","elated","elatedness","elater","elation","elayne","elb","elba","elbe","elbert","elberta","elbertina","elbertine","elbow","elbowroom","elbrus","elden","elder","elderberry","elderflower","elderliness","elderly","eldest","eldin","eldon","eldorado","eldredge","eldridge","ele","eleanor","eleanora","eleanore","eleazar","elect","electable","elected","election","electioneer","elective","electiveness","elector","electoral","electorate","electra","electress","electric","electrical","electricalness","electrician","electricity","electrification","electrifier","electrify","electro","electrocardiogram","electrocardiograph","electrocardiographs","electrocardiography","electrochemical","electrocute","electrocution","electrode","electrodynamic","electrodynamics","electroencephalogram","electroencephalograph","electroencephalographic","electroencephalographs","electroencephalography","electrologist","electroluminescent","electrolysis","electrolyte","electrolytic","electrolytically","electrolyze","electromagnet","electromagnetic","electromagnetically","electromagnetism","electromechanical","electromechanics","electromotive","electromyograph","electromyographic","electromyographically","electromyography","electron","electronegative","electronic","electronically","electronics","electrophoresis","electrophorus","electroplate","electroscope","electroscopic","electroshock","electrostatic","electrostatics","electrotherapist","electrotype","electroweak","eleemosynary","eleen","elegance","elegant","elegiac","elegiacal","elegy","eleifend","elem","element","elemental","elementarily","elementariness","elementary","elementat","elementid","elementname","elementref","elements","elementtree","elementtype","elementum","elems","elena","elene","eleni","elenore","eleonora","eleonore","elephant","elephantiases","elephantiasis","elephantine","elev","elevate","elevated","elevation","elevator","eleven","elevens","elevenths","elf","elfie","elfin","elfish","elfreda","elfrida","elfrieda","elga","elgar","eli","elia","elianora","elianore","elicia","elicit","elicitation","elide","elie","elif","eligibility","eligible","elihu","elijah","eliminate","eliminated","eliminates","eliminating","elimination","eliminator","elinor","elinore","eliot","elisa","elisabet","elisabeth","elisabetta","elise","eliseo","elisha","elision","elissa","elit","elita","elite","elitism","elitist","elixir","eliza","elizabet","elizabeth","elizabethan","elk","elka","elke","elkhart","ell","ella","elladine","ellary","elle","ellen","ellene","ellerey","ellery","ellesmere","ellette","elli","ellie","ellington","elliot","elliott","ellipse","ellipsis","ellipsoid","ellipsoidal","ellipsometer","ellipsometry","elliptic","elliptical","ellipticity","ellison","ellissa","ellswerth","ellsworth","ellwood","elly","ellyn","ellynn","elm","elma","elmah","elmer","elmhurst","elmira","elmo","elmore","elmsford","elna","elnar","elnath","elnora","elnore","elocution","elocutionary","elocutionist","elodea","elohim","eloisa","eloise","elongate","elongation","elonore","elope","elopement","eloper","eloquence","eloquent","elora","eloy","elroy","els","elsa","elsbeth","else","elseif","elset","elsewhere","elsey","elsi","elsie","elsif","elsinore","elspeth","elston","elsworth","elsy","elt","eltanin","elton","eluate","elucidate","elucidation","elude","elusive","elusiveness","elute","elution","elva","elven","elver","elvera","elves","elvia","elvin","elvina","elvira","elvis","elvish","elvyn","elwin","elwira","elwood","elwyn","ely","elyn","elyse","elysees","elysha","elysia","elysian","elysium","elyssa","em","ema","emaciate","emaciation","emacs","email","emailaddress","emailid","emails","emalee","emalia","emanate","emanation","emancipate","emancipation","emancipator","emanuel","emanuele","emasculate","emasculation","embalm","embalmer","embank","embankment","embarcadero","embargo","embargoes","embark","embarkation","embarrass","embarrassed","embarrassedly","embarrassing","embarrassment","embassy","embattle","embed","embeddable","embedded","embedder","embedding","embellish","embellished","embellisher","embellishment","ember","emberjs","embezzle","embezzlement","embezzler","embitter","embitterment","emblazon","emblazonment","emblem","emblematic","embodier","embodiment","embody","embolden","embolism","embosom","emboss","embosser","embouchure","embower","embrace","embraceable","embracer","embracing","embrasure","embrittle","embrocation","embroider","embroiderer","embroidery","embroil","embroilment","embryo","embryologist","embryology","embryonic","emcee","emceeing","emelda","emelen","emelia","emelina","emeline","emelita","emelyne","emend","emendation","emera","emerald","emerge","emergence","emergency","emergent","emerita","emeritae","emeriti","emeritus","emerson","emery","emetic","emf","emigrant","emigrate","emigration","emil","emile","emilee","emili","emilia","emilie","emiline","emilio","emily","eminence","eminent","emir","emirate","emissary","emission","emissivity","emit","emits","emittance","emitted","emitter","emitting","emlen","emlyn","emlynn","emlynne","emma","emmalee","emmaline","emmalyn","emmalynn","emmalynne","emmanuel","emmeline","emmerich","emmery","emmet","emmett","emmey","emmi","emmie","emmit","emmott","emmy","emmye","emogene","emoji","emollient","emolument","emory","emote","emotion","emotional","emotionalism","emotionality","emotionalize","emotionless","emotive","emp","empaneled","empaneling","empath","empathetic","empathetical","empathic","empathize","empathy","emperor","emphases","emphasis","emphasize","emphatic","emphatically","emphysema","emphysematous","empid","empire","empiric","empirical","empiricism","empiricist","emplace","emplacement","employ","employability","employable","employed","employee","employeeid","employeename","employees","employer","employers","employment","empname","empno","emporium","empower","empowerment","empress","emptier","emptily","emptiness","empty","empyrean","emr","ems","emt","emu","emulate","emulated","emulation","emulative","emulator","emulators","emulsification","emulsifier","emulsify","emulsion","emyle","emylee","en","enable","enabled","enabledelayedexpansion","enableevents","enabler","enables","enabling","enact","enactment","ename","enamel","enameler","enamelware","enamor","enc","encamp","encampment","encapsulate","encapsulated","encapsulation","encase","encasement","encephalitic","encephalitides","encephalitis","encephalographic","encephalopathy","enchain","enchant","enchanter","enchanting","enchantment","enchantress","enchilada","encipher","encipherer","encircle","encirclement","encl","enclave","enclose","enclosed","enclosing","enclosure","encode","encoded","encoder","encodes","encodeuricomponent","encoding","encodings","encomium","encompass","encore","encounter","encountered","encountering","encounters","encourage","encouraged","encouragement","encourager","encouraging","encroach","encroacher","encroachment","encrust","encrustation","encrypt","encrypted","encrypting","encryption","enctype","encumber","encumbered","encumbrance","encumbrancer","ency","encyclical","encyclopaedia","encyclopedia","encyclopedic","encyst","encystment","end","endanger","endangerment","endblock","enddate","endear","endearing","endearment","endeavor","endeavored","endeavorer","ended","endemic","endemically","endemicity","ender","endfor","endforeach","endgame","endian","endicott","endif","endindex","ending","endings","endive","endl","endless","endlessness","endmost","endnote","endocrine","endocrinologist","endocrinology","endogamous","endogamy","endogenous","endomorphism","endorse","endorsement","endorser","endoscope","endoscopic","endoscopy","endosperm","endothelial","endothermic","endow","endowment","endpoint","endpoints","endregion","ends","endswith","endtime","endue","endungeoned","endurable","endurably","endurance","endure","enduring","enduringness","endways","endwhile","endymion","ene","enema","enemies","enemy","energetic","energetically","energetics","energize","energized","energizer","energy","enervate","enervation","enfeeble","enfeeblement","enfilade","enfold","enforce","enforceability","enforceable","enforced","enforcement","enforcer","enforcible","enforcing","enfranchise","enfranchisement","enfranchiser","eng","engage","engagement","engaging","engel","engelbert","engender","engine","engineer","engineering","engineers","engines","england","englebert","englewood","english","englishman","englishmen","englishwoman","englishwomen","engorge","engorgement","engracia","engram","engrave","engraver","engraving","engross","engrossed","engrosser","engrossing","engrossment","engulf","engulfment","enhance","enhanceable","enhanced","enhancement","enhancer","enharmonic","enid","enif","enigma","enigmatic","enigmatically","enim","eniwetok","enjambement","enjambment","enjoin","enjoinder","enjoy","enjoyability","enjoyable","enjoyableness","enjoyably","enjoyed","enjoyment","enkidu","enlarge","enlargeable","enlargement","enlarger","enlighten","enlightened","enlightening","enlightenment","enlist","enlistee","enlister","enlistment","enliven","enlivenment","enmesh","enmeshment","enmity","ennis","ennoble","ennoblement","ennobler","ennui","enoch","enoent","enormity","enormous","enormousness","enos","enough","enoughs","enplane","enqueue","enquirer","enquiringly","enquiry","enrage","enrapture","enrica","enrich","enricher","enrichetta","enrichment","enrico","enrika","enrique","enriqueta","enrobed","enroll","enrollee","enrollment","ens","ensconce","ensemble","enshrine","enshrinement","enshroud","ensign","ensilage","enslave","enslavement","enslaver","ensnare","ensnarement","ensolite","ensue","ensure","ensurer","ensures","ensuring","ent","entail","entailer","entailment","entangle","entanglement","entangler","entente","enter","entered","enterer","entering","enteritides","enteritis","enterprise","enterpriser","enterprising","enters","entertain","entertainer","entertaining","entertainment","enthalpy","enthrall","enthrallment","enthrone","enthronement","enthuse","enthusiasm","enthusiast","enthusiastic","enthusiastically","entice","enticement","enticing","entire","entirely","entirerow","entirety","entities","entitle","entitled","entitlement","entity","entityframework","entityframeworkcore","entityid","entitymanager","entitymanagerfactory","entityname","entitystate","entitytype","entomb","entombment","entomological","entomologist","entomology","entourage","entr","entrails","entrain","entrainer","entrance","entrancement","entranceway","entrancing","entrant","entrap","entrapment","entrapped","entrapping","entre","entreat","entreating","entreaty","entrench","entrenchment","entrepreneur","entrepreneurial","entrepreneurs","entrepreneurship","entries","entropic","entropy","entrust","entry","entrypoint","entryset","entryway","entwine","enum","enumerable","enumerate","enumerated","enumerates","enumerating","enumeration","enumerative","enumerator","enums","enunciable","enunciate","enunciated","enunciation","enureses","enuresis","env","envelop","envelope","enveloper","envelopment","envenom","enviable","enviableness","enviably","envied","envier","envious","enviousness","environ","environment","environmental","environmentalism","environmentalist","environments","envisage","envision","envoy","envs","envy","envying","enzymatic","enzymatically","enzyme","enzymology","eo","eocene","eoe","eof","eohippus","eol","eolanda","eolande","eolian","eon","eos","eot","ep","epa","epaulet","ephedrine","ephemera","ephemeral","ephemerids","ephemeris","ephesian","ephesians","ephesus","ephraim","ephrayim","ephrem","epi","epic","epically","epicenter","epictetus","epicure","epicurean","epicurus","epicycle","epicyclic","epicyclical","epicycloid","epidemic","epidemically","epidemiological","epidemiologist","epidemiology","epidermal","epidermic","epidermis","epidural","epigenetic","epiglottis","epigram","epigrammatic","epigraph","epigrapher","epigraphs","epigraphy","epilepsy","epileptic","epilogue","epimethius","epinephrine","epiphany","epiphenomena","episcopacy","episcopal","episcopalian","episcopate","episode","episodes","episodic","episodically","epistemic","epistemological","epistemology","epistle","epistolary","epistolatory","epitaph","epitaphs","epitaxial","epitaxy","epithelial","epithelium","epithet","epitome","epitomize","epitomized","epitomizer","epoch","epochal","epochs","epoll","eponymous","epoxy","eps","epsg","epsilon","epsom","epstein","eq","equ","equability","equable","equableness","equably","equal","equaling","equality","equalization","equalize","equalized","equalizer","equalizes","equally","equals","equalsignorecase","equalto","equanimity","equate","equation","equations","equator","equatorial","equerry","equestrian","equestrianism","equestrienne","equiangular","equidistant","equilateral","equilibrate","equilibration","equilibrium","equine","equinoctial","equinox","equip","equipage","equipartition","equipment","equipoise","equipotent","equipped","equipping","equiproportional","equiproportionality","equiproportionate","equitable","equitableness","equitably","equitation","equity","equiv","equivalence","equivalent","equivalents","equivocal","equivocalness","equivocate","equivocation","equivocator","equuleus","er","era","eradicable","eradicate","eradication","eradicator","eran","eras","erase","erased","eraser","erasion","erasmus","erastus","erasure","erat","erato","eratosthenes","erb","erbium","erda","ere","erebus","erect","erectile","erection","erectness","erector","erek","erelong","eremite","erena","erg","ergo","ergodic","ergodicity","ergonomic","ergonomically","ergonomics","ergophobia","ergosterol","ergot","erhard","erhart","eric","erica","erich","ericha","erick","ericka","erickson","ericson","ericsson","eridanus","erie","erik","erika","erikson","erin","erina","erinn","erinna","eris","eritrea","erl","erlang","erlenmeyer","erma","ermanno","ermengarde","ermentrude","ermin","ermina","ermine","erminia","erminie","erna","ernaline","ernest","ernesta","ernestine","ernesto","ernestus","ernie","ernst","erny","erode","erodible","erogenous","eros","erosible","erosion","erosional","erosive","erosiveness","erotic","erotica","erotically","eroticism","erp","err","errancy","errand","errant","errantry","errata","erratic","erratically","erratum","errick","erring","errmode","errmsg","errno","errol","erroll","erroneous","erroneousness","error","errorcode","errordocument","errorhandler","errorlevel","errorlistener","errorlog","errormessage","errormsg","errorreportvalve","errors","errorthrown","ersatz","erse","erskine","erst","erstwhile","ertha","eruct","eructation","erudite","erudition","erupt","eruption","eruptive","erv","ervin","erwin","eryn","erysipelas","erythrocyte","es","esau","esb","esc","escadrille","escalate","escalation","escalator","escallop","escapable","escapade","escape","escaped","escapee","escapement","escaper","escapes","escaping","escapism","escapist","escapology","escarole","escarpment","eschatology","escher","escherichia","eschew","escondido","escort","escritoire","escrow","escudo","escutcheon","esdras","ese","esi","eskimo","esl","eslint","esma","esmaria","esmark","esme","esmeralda","esophageal","esophagi","esophagus","esoteric","esoterica","esoterically","esp","espadrille","espagnol","espalier","especial","especially","esperanto","esperanza","espinoza","espionage","esplanade","esposito","espousal","espouse","espouser","espresso","esprit","espy","esq","esquire","esra","esri","essa","essay","essayer","essayist","esse","essen","essence","essene","essential","essentialist","essentially","essentialness","essentials","essequibo","essex","essie","essy","est","esta","establish","established","establisher","establishing","establishment","estado","estate","esteban","esteem","estel","estela","estele","estell","estella","estelle","ester","esterhzy","estes","estevan","esther","esthete","esthetic","esthetically","esthetics","estimable","estimableness","estimate","estimated","estimates","estimating","estimation","estimator","estonia","estonian","estoppal","estrada","estrange","estrangement","estranger","estrella","estrellita","estrogen","estrous","estrus","estuarine","estuary","et","eta","etag","etan","etc","etcetera","etch","etcher","etching","etd","eternal","eternalness","eternity","eth","ethan","ethane","ethanol","ethe","ethel","ethelbert","ethelda","ethelin","ethelind","etheline","ethelred","ethelyn","ether","ethereal","etherealness","etherized","ethernet","ethic","ethical","ethically","ethicalness","ethicist","ethiopia","ethiopian","ethnic","ethnically","ethnicity","ethnocentric","ethnocentrism","ethnographers","ethnographic","ethnography","ethnological","ethnologist","ethnology","ethnomethodology","ethological","ethologist","ethology","ethos","ethyl","ethylene","etiam","etienne","etiologic","etiological","etiology","etiquette","etl","etna","etree","etruria","etruscan","etta","etti","ettie","ettore","etty","etymological","etymologist","etymology","eu","eucalypti","eucalyptus","eucharist","eucharistic","euchre","euclid","euclidean","eudora","euell","eugen","eugene","eugenia","eugenic","eugenically","eugenicist","eugenics","eugenie","eugenio","eugenius","eugine","euismod","eula","eulalie","euler","eulerian","eulogist","eulogistic","eulogize","eulogized","eulogizer","eulogy","eumenides","eunice","eunuch","eunuchs","euphemia","euphemism","euphemist","euphemistic","euphemistically","euphonious","euphonium","euphony","euphoria","euphoric","euphorically","euphrates","eur","eurasia","eurasian","eureka","euripides","euro","eurodollar","europa","europe","european","europeanization","europeanized","europium","eurydice","eustace","eustachian","eustacia","eutectic","euterpe","euthanasia","euthenics","ev","eva","evacuate","evacuation","evacuee","evade","evader","eval","evaleen","evaluable","evaluate","evaluated","evaluates","evaluating","evaluation","evaluational","evaluative","evaluator","evan","evanescence","evanescent","evangelia","evangelic","evangelical","evangelicalism","evangelin","evangelina","evangeline","evangelism","evangelist","evangelistic","evangelize","evania","evanne","evanston","evansville","evaporate","evaporation","evaporative","evaporator","evasion","evasive","evasiveness","eve","eveleen","evelin","evelina","eveline","evelyn","even","evened","evener","evenhanded","evening","evenki","evenly","evenness","evens","evensong","event","eventargs","eventbus","eventdata","eventdate","eventdispatchthread","eventemitter","eventful","eventfulness","eventhandler","eventid","eventide","eventlistener","eventlog","eventname","eventqueue","events","eventtrigger","eventtype","eventual","eventuality","eventually","eventuate","ever","everard","eveready","evered","everest","everett","everette","everglade","everglades","evergreen","everhart","everlasting","everlastingness","everliving","evermore","evernote","everready","every","everybody","everyday","everydayness","everyman","everyone","everyplace","everything","everytime","everywhere","eves","evey","evict","eviction","evidence","evident","evidential","evie","evil","evildoer","evildoing","evilness","evin","evince","eviscerate","evisceration","evita","evocable","evocate","evocation","evocative","evocativeness","evoke","evolute","evolution","evolutionarily","evolutionary","evolutionist","evolve","evolved","evonne","evp","evt","evvie","evvy","evy","evyn","ew","ewan","eward","ewart","ewe","ewell","ewen","ewer","ewing","ex","exacerbate","exacerbation","exact","exacter","exacting","exactingness","exaction","exactitude","exactly","exactness","exaggerate","exaggerated","exaggeration","exaggerative","exaggerator","exalt","exaltation","exalted","exalter","exam","examen","examination","examine","examined","examinees","examiner","examines","examining","example","exampled","examples","exams","exasperate","exasperated","exasperating","exasperation","exc","excalibur","excavate","excavation","excavator","excedrin","exceed","exceeded","exceeder","exceeding","exceeds","excel","excelled","excellence","excellency","excellent","excelling","excelsior","except","exception","exceptionable","exceptional","exceptionalness","exceptionhandler","exceptions","excerpt","excerpter","excess","excessive","excessiveness","exchange","exchangeable","exchanger","exchanges","exchequer","excise","excision","excitability","excitable","excitableness","excitably","excitation","excitatory","excite","excited","excitement","exciter","exciting","excitingly","exciton","exclaim","exclaimer","exclamation","exclamatory","exclude","excluded","excluder","excludes","excluding","exclusion","exclusionary","exclusioner","exclusions","exclusive","exclusively","exclusiveness","exclusivity","excommunicate","excommunication","excoriate","excoriation","excrement","excremental","excrescence","excrescent","excreta","excrete","excreter","excretion","excretory","excruciate","excruciating","excruciation","exculpate","exculpation","exculpatory","excursion","excursionist","excursive","excursiveness","excursus","excusable","excusableness","excusably","excuse","excused","excuser","exe","exec","execrable","execrableness","execrably","execrate","execration","execsql","executable","executables","execute","executeactionstaskexecuter","executed","executenonquery","executequery","executer","executereader","executes","executescalar","executescript","executesql","executeupdate","executing","execution","executional","executioncontext","executioner","executionexception","executions","executive","executor","executors","executorservice","executrices","executrix","exegeses","exegesis","exegete","exegetic","exegetical","exemplar","exemplariness","exemplary","exemple","exemplification","exemplifier","exemplify","exempt","exemption","exercise","exerciser","exercises","exercitation","exert","exertion","exeter","exeunt","exhalation","exhale","exhaust","exhausted","exhauster","exhaustible","exhausting","exhaustion","exhaustive","exhaustiveness","exhibit","exhibition","exhibitioner","exhibitionism","exhibitionist","exhibitor","exhilarate","exhilarating","exhilaration","exhort","exhortation","exhorter","exhumation","exhume","exhumer","exif","exigence","exigency","exigent","exiguity","exiguous","exile","exist","existed","existence","existent","existential","existentialism","existentialist","existentialistic","existents","existing","exists","exit","exitcode","exited","exiting","exits","exobiology","exocrine","exodus","exogamous","exogamy","exogenous","exonerate","exoneration","exorbitance","exorbitant","exorcise","exorcism","exorcist","exorcizer","exoskeleton","exosphere","exothermic","exothermically","exotic","exotica","exotically","exoticism","exoticness","exp","expand","expandability","expandable","expandablelistview","expanded","expander","expanding","expands","expanse","expansible","expansion","expansionary","expansionism","expansionist","expansive","expansiveness","expatiate","expatiation","expatriate","expatriation","expect","expectancy","expectant","expectation","expectational","expectations","expected","expectedconditions","expecting","expectorant","expectorate","expectoration","expects","expedience","expediency","expedient","expedients","expedite","expediter","expedition","expeditionary","expeditious","expeditiousness","expeditor","expel","expellable","expelled","expelling","expend","expendable","expended","expender","expenditure","expense","expenses","expensive","expensiveness","experience","experienced","experiences","experiencing","experiential","experiment","experimental","experimentalism","experimentalist","experimentation","experimented","experimenter","experimenting","experiments","expert","experted","experting","expertise","expertize","expertness","expertnesses","experts","expiable","expiate","expiation","expiatory","expiration","expire","expired","expires","expiresbytype","expiry","explain","explainable","explained","explainer","explaining","explains","explanation","explanations","explanatory","expletive","explicable","explicate","explication","explicative","explicit","explicitly","explicitness","explode","exploded","exploder","exploit","exploitation","exploitative","exploited","exploiter","exploration","exploratory","explore","explored","explorer","exploring","explosion","explosive","explosiveness","expo","exponent","exponential","exponentiate","exponentiation","export","exportability","exportable","exportation","exported","exporter","exporting","exports","expos","expose","exposed","exposer","exposes","exposing","exposit","exposition","expositor","expository","expostulate","expostulation","exposure","expound","expounder","expr","express","expressed","expresser","expressibility","expressible","expressibly","expression","expressionism","expressionist","expressionistic","expressionless","expressions","expressive","expressiveness","expressjs","expressway","expropriate","expropriation","expropriator","expulsion","expunge","expunger","expurgate","expurgated","expurgation","exquisite","exquisiteness","ext","extant","extemporaneous","extemporaneousness","extempore","extemporization","extemporize","extemporizer","extend","extendability","extended","extendedly","extendedness","extender","extendibility","extendibles","extending","extends","extensibility","extensible","extension","extensional","extensions","extensive","extensively","extensiveness","extensor","extent","extenuate","extenuation","exterior","exterminate","extermination","exterminator","extern","external","externalities","externalization","externalize","externally","externals","extinct","extinction","extinguish","extinguishable","extinguisher","extirpate","extirpation","extjs","extol","extolled","extoller","extolling","extort","extorter","extortion","extortionate","extortioner","extortionist","extra","extracellular","extract","extracted","extracting","extraction","extractive","extractor","extracts","extracurricular","extradite","extradition","extragalactic","extralegal","extramarital","extramural","extraneous","extraneousness","extraordinarily","extraordinariness","extraordinary","extrapolate","extrapolation","extras","extrasensory","extraterrestrial","extraterritorial","extraterritoriality","extravagance","extravagant","extravaganza","extravehicular","extravert","extrema","extremal","extreme","extremely","extremeness","extremism","extremist","extremity","extricable","extricate","extrication","extrinsic","extrinsically","extroversion","extrovert","extrude","extruder","extrusion","extrusive","exuberance","exuberant","exudate","exudation","exude","exult","exultant","exultation","exulting","exurb","exurban","exurbanite","exurbia","exxon","ey","eyck","eyde","eydie","eye","eyeball","eyebrow","eyed","eyedropper","eyeful","eyeglass","eyelash","eyeless","eyelet","eyelid","eyeliner","eyeopener","eyeopening","eyepiece","eyer","eyes","eyeshadow","eyesight","eyesore","eyestrain","eyeteeth","eyetooth","eyewash","eyewitness","eyre","eyrie","eysenck","ez","ezechiel","ezekiel","ezequiel","eziechiele","ezmeralda","ezra","ezri","f","f0_","fa","faa","fab","fabe","faber","faberg","fabian","fabiano","fabien","fabio","fable","fabler","fabric","fabricate","fabrication","fabricator","fabulists","fabulous","fabulousness","fac","facade","facades","face","facebook","facecloth","facecloths","faced","faceless","facelets","faceplate","facer","faces","facescontext","facet","facetious","facetiousness","facets","facial","facile","facileness","facilisis","facilitate","facilitation","facilitator","facilitatory","facilities","facility","facing","facsimile","facsimileing","fact","faction","factional","factionalism","factious","factiousness","factitious","facto","factoid","factor","factorial","factories","factoring","factorisable","factorization","factorize","factors","factory","factorygirl","factotum","facts","factual","factuality","factualness","faculty","fad","faddish","faddist","fade","faded","fadedly","fadein","fadeout","fader","fades","fadeto","fading","fae","faence","faerie","faeroe","faery","fafnir","fag","fagged","fagging","faggoting","fagin","fagot","fagoting","fahd","fahrenheit","fail","failed","failing","faille","failover","fails","failsafe","failure","failures","fain","faina","faint","fainter","fainthearted","faintness","fair","fairbanks","fairchild","faired","fairfax","fairfield","fairgoer","fairground","fairing","fairish","fairleigh","fairless","fairlie","fairly","fairmont","fairness","fairport","fairs","fairview","fairway","fairy","fairyland","fairytale","faisal","faisalabad","faith","faithed","faithful","faithfulness","faithfuls","faithing","faithless","faithlessness","faiths","fajitas","fake","faker","fakir","falafel","falcon","falconer","falconry","falito","falk","falkland","falkner","fall","fallacious","fallaciousness","fallacy","fallback","faller","fallibility","fallible","fallibleness","fallibly","falling","falloff","fallon","fallopian","fallout","fallow","fallowness","falls","false","falsehood","falseness","falsetto","falsie","falsifiability","falsifiable","falsification","falsifier","falsify","falsity","falstaff","falter","falterer","faltering","falwell","fame","famed","fames","familial","familiar","familiarity","familiarization","familiarize","familiarized","familiarizer","familiarizing","familiarly","familiarness","families","family","famine","faming","famish","famous","famously","famousness","fan","fanatic","fanatical","fanaticalness","fanaticism","fanchette","fanchon","fancie","fancied","fancier","fanciest","fanciful","fancifulness","fancily","fanciness","fancy","fancybox","fancying","fancywork","fandango","fanechka","fanfare","fanfold","fang","fangled","fania","fanlight","fanned","fanni","fannie","fanning","fanny","fanout","fans","fantail","fantasia","fantasist","fantasize","fantastic","fantastical","fantasy","fanya","fanzine","faq","faqs","far","fara","farad","faraday","farah","farand","faraway","farber","farce","farcical","fare","farer","farewell","farfetchedness","fargo","farica","farina","farinaceous","farkas","farlay","farlee","farleigh","farley","farlie","farly","farm","farmer","farmhand","farmhouse","farming","farmington","farmland","farmstead","farmworker","farmyard","faro","farr","farra","farrago","farragoes","farragut","farrah","farrakhan","farrand","farrel","farrell","farrier","farris","farrow","farseeing","farsighted","farsightedness","fart","farther","farthermost","farthest","farthing","fas","fascia","fascicle","fasciculate","fasciculation","fascinate","fascinating","fascination","fascism","fascist","fascistic","fashion","fashionable","fashionableness","fashionably","fashioner","fassbinder","fast","fasta","fastback","fastball","fastcgi","fasten","fastener","fastening","faster","fasterxml","fastest","fastidious","fastidiousness","fastness","fat","fatal","fatalism","fatalist","fatalistic","fatalistically","fatality","fatback","fate","fateful","fatefulness","fates","fathead","fatheaded","father","fathered","fatherhood","fatherland","fatherless","fatherliness","fatherly","fathom","fathomable","fathomless","fatigue","fatigued","fatiguing","fatima","fatness","fatso","fatted","fatten","fattener","fatter","fattest","fattiness","fatting","fatty","fatuity","fatuous","fatuousness","fatwa","faucet","faucibus","faulkner","faulknerian","fault","faultfinder","faultfinding","faultily","faultiness","faultless","faultlessness","faults","faulty","faun","fauna","faunie","fauntleroy","faust","faustian","faustina","faustine","faustino","faustus","fauvism","fav","favicon","favor","favorable","favorableness","favorably","favored","favoredness","favorer","favoring","favorings","favorite","favorites","favoritism","favors","favour","favourite","fawkes","fawn","fawne","fawner","fawnia","fawning","fax","fay","faydra","faye","fayette","fayetteville","fayina","fayre","fayth","faythe","faze","fb","fbi","fc","fcc","fclose","fcm","fcntl","fct","fd","fda","fdic","fdr","fds","fe","fealty","fear","fearful","fearfuller","fearfullest","fearfulness","fearless","fearlessness","fearsome","fearsomeness","feasibility","feasible","feasibleness","feasibly","feast","feaster","feat","feater","feather","featherbed","featherbedding","featherbrain","feathered","feathering","featherless","featherlight","featherman","feathertop","featherweight","feathery","feats","feature","featured","featureless","features","feb","febrile","february","fecal","feces","fecha","feckless","fecklessness","fecund","fecundability","fecundate","fecundation","fecundity","fed","federal","federalism","federalist","federalization","federalize","federate","federated","federation","federative","federica","federico","fedex","fedora","feds","fee","feeble","feebleness","feebly","feed","feedback","feedbag","feeder","feeding","feedlot","feeds","feedstock","feedstuffs","feeing","feel","feeler","feeling","feelingly","feelingness","feelings","feels","fees","feet","feign","feigned","feigner","feint","feisty","felder","feldman","feldspar","felecia","felic","felicdad","felice","felicia","felicio","felicitate","felicitation","felicitous","felicitousness","felicity","felicle","felike","feliks","feline","felipa","felipe","felis","felisha","felita","felix","feliza","felizio","fell","fella","fellatio","felled","feller","felling","fellini","fellness","fellow","fellowman","fellowmen","fellowship","fellowshipped","fellowshipping","felon","felonious","feloniousness","felony","felt","felting","fem","female","femaleness","feminine","feminineness","femininity","feminism","feminist","femme","femoral","femur","fen","fence","fenced","fencepost","fencer","fencing","fend","fender","fenelia","fenestration","fenian","fenland","fennel","fenwick","feodor","feodora","feof","fer","feral","ferber","ferd","ferdie","ferdinand","ferdinanda","ferdinande","ferdinando","ferdy","fergus","ferguson","ferlinghetti","fermat","ferment","fermentation","fermented","fermenter","fermenting","fermentum","fermi","fermion","fermium","fern","fernanda","fernande","fernandez","fernandina","fernando","ferne","fernery","ferny","ferocious","ferociousness","ferocity","ferrari","ferraro","ferreira","ferrel","ferrell","ferrer","ferret","ferreter","ferric","ferris","ferrite","ferro","ferroelectric","ferromagnet","ferromagnetic","ferrous","ferrule","ferry","ferryboat","ferryman","ferrymen","fertile","fertileness","fertility","fertilization","fertilize","fertilized","fertilizer","fertilizes","ferule","fervency","fervent","fervid","fervidness","fervor","fess","fest","festal","fester","festival","festive","festiveness","festivity","festoon","feta","fetal","fetch","fetchall","fetchdata","fetched","fetchedresultscontroller","fetcher","fetches","fetching","fetchrequest","fetchtype","feted","fetich","fetid","fetidness","feting","fetish","fetishism","fetishist","fetishistic","fetlock","fetter","fettle","fettling","fettuccine","fetus","feud","feudal","feudalism","feudalistic","feudatory","feugiat","fever","feverish","feverishness","few","fewer","fewness","fey","feynman","fez","fezzes","ff","ffa","ffb","ffc","ffd","ffe","fff","ffff","ffffff","ffffffff","ffi","fflush","ffmpeg","fft","fftw","fg","fgetc","fgets","fh","fha","fi","fianc","fiance","fiann","fianna","fiasco","fiascoes","fiat","fib","fibbed","fibber","fibbing","fiber","fiberboard","fiberfill","fiberglas","fiberglass","fibonacci","fibril","fibrillate","fibrillation","fibrin","fibroblast","fibroid","fibroses","fibrosis","fibrous","fibrousness","fibula","fibulae","fibular","fica","fices","fiche","fichte","fichu","fickle","fickleness","ficos","fiction","fictional","fictionalization","fictionalize","fictitious","fictitiousness","fictive","ficus","fid","fiddle","fiddler","fiddlestick","fiddling","fiddly","fide","fidel","fidela","fidelia","fidelio","fidelity","fidget","fidgety","fido","fidole","fiducial","fiduciary","fie","fief","fiefdom","field","fielded","fielder","fieldid","fielding","fieldname","fieldnames","fields","fieldset","fieldstone","fieldtype","fieldvalue","fieldwork","fieldworker","fiend","fiendish","fiendishness","fierce","fierceness","fierily","fieriness","fiery","fies","fiesta","fife","fifer","fifi","fifine","fifo","fifteen","fifteenths","fifth","fifths","fiftieths","fifty","fig","figaro","figcaption","figged","figging","fight","fightback","fighter","fighting","figment","figsize","figueroa","figural","figuration","figurative","figurativeness","figure","figured","figurehead","figurer","figures","figurine","figuring","fiji","fijian","fil","filament","filamentary","filamentous","filbert","filberte","filberto","filch","file","fileaccess","filechooser","filecontent","filed","filedata","filedialog","fileextension","fileformat","filehandle","fileid","fileinfo","fileinput","fileinputstream","filelist","filemanager","filemode","filename","filenames","fileno","filenotfoundexception","fileoutputstream","filepath","filer","filereader","files","fileset","filesize","filesmatch","filestream","filesystem","filesystemobject","filesystems","filet","filetree","filetype","fileupload","fileurl","fileurlwithpath","fileutils","filewriter","filia","filial","filibuster","filibusterer","filide","filigree","filigreeing","filing","filings","filip","filipino","filippa","filippo","fill","fillcolor","filled","filler","fillet","filleting","filling","fillip","fillmore","fillna","fillrect","fills","fillstyle","filly","film","filmdom","filmer","filminess","filming","filmmaker","filmore","films","filmstrip","filmy","filofax","filter","filterable","filterchain","filterchainproxy","filtercontext","filtered","filterer","filtering","filters","filth","filthily","filthiness","filths","filthy","filtrate","filtrated","filtrates","filtrating","filtration","fin","fina","finagle","finagler","final","finale","finalist","finality","finalization","finalize","finally","finalname","finance","financed","finances","financial","financier","financing","finch","find","findable","findall","findbugs","findbyid","findclass","findcontrol","findelement","findelements","finder","findfragmentbyid","finding","findings","findlay","findley","findone","finds","findstr","findviewbyid","fine","finely","fineness","finery","finespun","finesse","finger","fingerboard","fingerer","fingering","fingerless","fingerling","fingernail","fingerprint","fingers","fingertip","finial","finical","finickiness","finicky","fining","finis","finish","finished","finisher","finishes","finishing","finite","finitely","finiteness","fink","finland","finlay","finley","finn","finnbogadottir","finned","finnegan","finner","finning","finnish","finny","fiona","fionna","fionnula","fiord","fiorello","fiorenze","fiori","fir","fire","firearm","fireball","firebase","firebaseauth","firebasedatabase","firebird","fireboat","firebomb","firebox","firebrand","firebreak","firebrick","firebug","firecracker","fired","firedamp","fireevent","firefight","firefly","firefox","firefoxdriver","fireguard","firehouse","firelight","fireman","firemen","fireplace","fireplug","firepower","fireproof","firer","fires","firesafe","fireside","firestone","firestore","firestorm","firetrap","firetruck","firewall","firewalls","firewater","firewood","firework","firing","firkin","firm","firmament","firmer","firmest","firmly","firmness","firms","firmware","firring","first","firstborn","firstchild","firsthand","firstly","firstname","firstordefault","firth","firths","fis","fiscal","fischbein","fischer","fish","fishbowl","fishcake","fisher","fisherman","fishermen","fishery","fishhook","fishily","fishiness","fishing","fishkill","fishmeal","fishmonger","fishnet","fishpond","fishtail","fishtanks","fishwife","fishwives","fishy","fisk","fiske","fissile","fission","fissionable","fissure","fist","fistfight","fistful","fisticuff","fistula","fistulous","fit","fitch","fitchburg","fitful","fitfulness","fitments","fitness","fits","fitssystemwindows","fitted","fitter","fittest","fitting","fittingly","fittingness","fittings","fitz","fitzgerald","fitzpatrick","fitzroy","five","fivefold","fiver","fix","fixable","fixate","fixatifs","fixation","fixative","fixed","fixedness","fixer","fixes","fixing","fixity","fixture","fixtures","fizeau","fizz","fizzer","fizzle","fizzy","fjord","fjs","fk","fl","fla","flab","flabbergast","flabbergasting","flabbily","flabbiness","flabby","flaccid","flaccidity","flack","flag","flagella","flagellate","flagellation","flagellum","flagged","flagging","flaggingly","flagman","flagmen","flagon","flagpole","flagrance","flagrancy","flagrant","flags","flagship","flagstaff","flagstone","flail","flair","flak","flake","flaker","flakiness","flaky","flam","flamb","flambeing","flambes","flamboyance","flamboyancy","flamboyant","flame","flamen","flamenco","flameproof","flamer","flamethrower","flaming","flamingo","flammability","flammable","flan","flanagan","flanders","flange","flank","flanker","flannel","flannelet","flannelette","flap","flapjack","flapped","flapper","flapping","flaps","flare","flareup","flaring","flash","flashback","flashbulb","flashcard","flashcube","flasher","flashgun","flashily","flashiness","flashing","flashlight","flashy","flask","flat","flatbed","flatboat","flatcar","flatfeet","flatfish","flatfoot","flathead","flatiron","flatland","flatmap","flatmate","flatness","flatt","flatted","flatten","flattened","flattener","flatter","flatterer","flattering","flattery","flattest","flatting","flattish","flattop","flatulence","flatulent","flatus","flatware","flatworm","flaubert","flaunt","flaunting","flautist","flavor","flavored","flavorer","flavorful","flavoring","flavorless","flavors","flavorsome","flaw","flawed","flawless","flawlessly","flawlessness","flaws","flax","flaxseed","flay","flayer","fld","flea","fleabag","fleabites","fleawort","fleck","fledermaus","fledge","fledged","fledgling","flee","fleece","fleecer","fleeciness","fleecy","fleeing","fleet","fleeting","fleetingly","fleetingness","fleetness","fleischer","fleischman","fleisher","flem","fleming","flemish","flemished","flemishing","flemming","flesh","flesher","fleshiness","fleshless","fleshly","fleshpot","fleshy","fletch","fletcher","fletching","fleur","fleurette","flew","flews","flex","flexbox","flexed","flexibility","flexible","flexibly","flexitime","flexslider","flextime","flexural","flexure","flibbertigibbet","flick","flicker","flickering","flickery","flickr","flier","flight","flightiness","flightless","flightpath","flights","flighty","flimflam","flimflammed","flimflamming","flimsily","flimsiness","flimsy","flin","flinch","flincher","flinching","fling","flinger","flink","flinn","flint","flintiness","flintless","flintlock","flintstones","flinty","flip","flipflop","flippable","flippancy","flippant","flipped","flipper","flippest","flipping","flirt","flirtation","flirtatious","flirtatiousness","flit","flitted","flitting","flo","float","floated","floater","floating","floatingactionbutton","floats","floatvalue","floaty","flocculate","flocculation","flock","floe","flog","flogged","flogger","flogging","flood","floodgate","floodlight","floodlit","floodplain","floodwater","floor","floorboard","floorer","flooring","floorspace","floorwalker","floozy","flop","flophouse","flopped","flopper","floppily","floppiness","flopping","floppy","flor","flora","floral","florance","flore","florella","florence","florencia","florentia","florentine","florenza","florescence","florescent","floret","florette","flori","floria","florian","florid","florida","floridan","floridian","floridness","florie","florin","florina","florinda","florine","florist","florri","florrie","florry","flory","floss","flossi","flossie","flossy","flot","flotation","flotilla","flotsam","flounce","flouncing","flouncy","flounder","flour","flourish","flourisher","flourishing","floury","flout","flouter","flow","flowchart","flowed","flower","flowerbed","flowerer","floweriness","flowerless","flowerpot","flowers","flowery","flowing","flowlayout","flown","flows","flowstone","floyd","flss","flt","flu","flub","flubbed","flubbing","fluctuate","fluctuation","flue","fluency","fluent","fluently","fluff","fluffiness","fluffy","fluid","fluidity","fluidized","fluidness","fluidpage","fluke","fluky","flume","flummox","flung","flunk","flunkey","flunky","fluoresce","fluorescence","fluorescent","fluoridate","fluoridation","fluoride","fluorimetric","fluorinated","fluorine","fluorite","fluorocarbon","fluoroscope","fluoroscopic","flurry","flush","flushed","flushing","flushness","fluster","flute","fluter","fluting","flutist","flutter","flutterer","fluttery","flux","fluxed","fluxes","fluxing","flv","fly","flyaway","flyblown","flyby","flybys","flycatcher","flyer","flying","flyleaf","flyleaves","flynn","flyover","flypaper","flysheet","flyspeck","flyswatter","flyway","flyweight","flywheel","fm","fmap","fmt","fn","fname","fnma","fno","fnr","fo","foal","foam","foaminess","foamy","fob","fobbed","fobbing","focal","focally","foch","foci","focus","focusable","focused","focuser","focuses","focusing","fodder","foe","foetid","fofl","fog","fogbound","fogged","foggily","fogginess","fogging","foggy","foghorn","fogs","fogy","fogyish","foible","foil","foist","fokker","fol","fold","foldaway","folded","folder","foldername","folderpath","folders","folding","foldout","foldr","folds","foley","foliage","foliate","foliation","folio","folk","folklike","folklore","folkloric","folklorist","folks","folksiness","folksinger","folksinging","folksong","folksy","folktale","folkway","foll","follicle","follicular","follow","followed","follower","followers","following","follows","followsymlinks","followup","folly","folsom","fomalhaut","foment","fomentation","fomenter","fond","fonda","fondant","fondle","fondler","fondness","fondue","fons","fonsie","font","fontaine","fontainebleau","fontana","fontanel","fontanelle","fontawesome","fontfamily","fontname","fonts","fontsize","fontstyle","fontweight","fontwithname","fonz","fonzie","foo","foobar","food","foodie","foods","foodstuff","fool","foolery","foolhardily","foolhardiness","foolhardy","foolish","foolishness","foolproof","foolscap","foos","foot","footage","football","footbridge","foote","footer","footfall","foothill","foothold","footing","footless","footlights","footling","footlocker","footloose","footman","footmarks","footmen","footnote","footpad","footpath","footpaths","footplate","footprint","footrace","footrest","footsie","footsore","footstep","footstool","footwear","footwork","fop","fopen","fopped","foppery","fopping","foppish","foppishness","for","forage","forager","forall","foray","forayer","forbade","forbear","forbearance","forbearer","forbes","forbid","forbidden","forbidding","forbiddingness","forbore","forborne","force","forced","forcefield","forceful","forcefulness","forceps","forcer","forces","forcible","forcibleness","forcibly","forcing","forcontrolevents","ford","fordable","fordham","fore","foreach","forearm","forebear","forebode","foreboding","forebodingness","forecast","forecaster","forecastle","foreclose","foreclosure","forecolor","forecourt","foredoom","forefather","forefeet","forefinger","forefoot","forefront","foregoer","foregoing","foregone","foregos","foreground","foregroundcolor","forehand","forehead","foreign","foreigner","foreignkey","foreignness","foreknew","foreknow","foreknowledge","foreknown","foreleg","forelimb","forelock","foreman","foremast","foremen","foremost","forename","forenoon","forensic","forensically","forensics","foreordain","forepart","forepaws","forepeople","foreperson","foreplay","forequarter","forerunner","foresail","foresaw","foresee","foreseeable","foreseeing","foreseen","foreseer","foreshadow","foreshore","foreshorten","foresight","foresighted","foresightedness","foreskin","forest","forestall","forestaller","forestallment","forestation","forestations","forester","forestland","forestry","foretaste","foretell","foreteller","forethought","foretold","forever","forevermore","forewarn","forewarner","forewent","forewoman","forewomen","foreword","forfeit","forfeiter","forfeiture","forfend","forgather","forgave","forge","forged","forger","forgery","forges","forget","forgetful","forgetfulness","forgettable","forgettably","forgetting","forging","forgivable","forgivably","forgive","forgiven","forgiveness","forgiver","forgiving","forgivingly","forgivingness","forgo","forgoer","forgoes","forgone","forgot","forgotten","forhttpheaderfield","forindexpath","fork","forked","forkey","forkful","forking","forklift","forks","forlorn","forlornness","form","formability","formal","formaldehyde","formalin","formalism","formalist","formalistic","formality","formalization","formalize","formalized","formalizer","formalizes","formally","formalness","formals","formant","format","formatdate","formate","formation","formative","formatively","formativeness","formats","formatted","formatter","formatters","formatting","formbuilder","formcontrol","formcontrolname","formdata","formed","former","formerly","formfitting","formgroup","formic","formica","formid","formidable","formidableness","formidably","forming","formless","formlessness","formmethod","formname","formosa","formosan","forms","formsauthentication","formset","formula","formulaic","formular","formulas","formulate","formulated","formulation","formulator","forname","fornicate","fornication","fornicator","forrest","forrester","forroot","forsake","forsaken","forsook","forsooth","forstate","forster","forswear","forswore","forsworn","forsythia","fort","fortaleza","forte","forth","forthcome","forthcoming","forthright","forthrightness","forthwith","fortieths","fortification","fortified","fortifier","fortify","fortiori","fortissimo","fortitude","fortnight","fortnightly","fortran","fortress","fortuitous","fortuitousness","fortuity","fortunate","fortunately","fortunateness","fortune","fortuneteller","fortunetelling","forty","forum","forums","forward","forwarded","forwarder","forwarding","forwardness","forwards","forwent","fos","foss","fossil","fossiliferous","fossilization","fossilize","fossilized","foster","fosterer","foto","foucault","fought","foul","foulard","foulmouth","foulness","fouls","found","foundation","foundational","founded","founder","founders","founding","foundling","foundry","founds","fount","fountain","fountainhead","four","fourfold","fourier","fourpence","fourpenny","fourposter","fourscore","foursome","foursquare","fourteen","fourteener","fourteenths","fourth","fourths","fout","fovea","fowl","fowler","fowling","fox","foxfire","foxglove","foxhall","foxhole","foxhound","foxily","foxiness","foxing","foxtail","foxtrot","foxtrotted","foxtrotting","foxy","foyer","fp","fpga","fpic","fpm","fpo","fprintf","fps","fq","fql","fr","frac","fracas","fractal","fraction","fractional","fractionate","fractionation","fractioned","fractioning","fractions","fractious","fractiousness","fracture","frag","fragile","fragility","fragment","fragmentactivity","fragmentarily","fragmentariness","fragmentary","fragmentation","fragmentmanager","fragmentmanagerimpl","fragmentpageradapter","fragments","fragmenttransaction","fragonard","fragrance","fragrant","frail","frailness","frailty","frame","frameborder","framebuffer","framed","framelayout","framer","framerate","frames","framework","frameworkelement","frameworkmethod","frameworks","frameworkservlet","framing","fran","franc","francaise","france","francene","francesca","francesco","franchise","franchisee","franchiser","franchot","francie","francine","francis","francisca","franciscan","francisco","franciska","franciskus","francium","franck","francklin","francklyn","franco","francois","francoise","francophone","francyne","frangibility","frangible","frank","frankel","frankenstein","franker","frankford","frankfort","frankfurt","frankfurter","frankie","frankincense","frankish","franklin","frankly","franklyn","frankness","franky","franni","frannie","franny","fransisco","frantic","frantically","franticness","frants","franz","franzen","frapp","frappeed","frappeing","frappes","frasco","fraser","frasier","frasquito","frat","fraternal","fraternity","fraternization","fraternize","fraternizer","fraternizing","fratricidal","fratricide","frau","fraud","fraudsters","fraudulence","fraudulent","fraught","fraulein","fray","frayda","frayne","fraze","frazer","frazier","frazzle","fread","freak","freakish","freakishness","freaky","freckle","freckly","fred","freda","freddi","freddie","freddy","fredek","fredelia","frederic","frederica","frederich","frederick","fredericka","frederico","fredericton","frederigo","frederik","frederique","fredholm","fredi","fredia","fredra","fredric","fredrick","fredrickson","fredrika","free","freebase","freebie","freeboot","freebooter","freeborn","freebsd","freed","freedman","freedmen","freedom","freehand","freehanded","freehold","freeholder","freeing","freelance","freeland","freeload","freeloader","freely","freeman","freemarker","freemason","freemasonry","freemen","freemon","freeness","freeport","freestanding","freestone","freestyle","freethinker","freethinking","freetown","freetype","freeway","freewheel","freewheeler","freewheeling","freewill","freezable","freeze","freezer","freezes","freezing","freida","freight","freighter","fremont","french","frenchman","frenchmen","frenchwoman","frenchwomen","frenetic","frenetically","frenzied","frenzy","freon","freq","frequencies","frequency","frequent","frequented","frequenter","frequentest","frequenting","frequently","frequentness","frequents","fresco","frescoes","fresh","freshen","freshener","fresher","freshest","freshet","freshly","freshman","freshmen","freshness","freshwater","fresnel","fresno","fret","fretboard","fretful","fretfulness","fretsaw","fretted","fretting","fretwork","freud","freudian","frey","freya","fri","friable","friableness","friar","friary","fricassee","fricasseeing","frication","fricative","frick","friction","frictional","frictionless","friday","fridge","fried","frieda","friedan","friedcake","friederike","friedman","friedrich","friedrick","friend","friendless","friendlessness","friendlies","friendlily","friendliness","friendly","friends","friendship","frier","fries","frieze","frig","frigate","frigga","frigged","frigging","fright","frighten","frightening","frightful","frightfulness","frigid","frigidaire","frigidity","frigidness","frill","frilly","fringe","fringilla","frippery","frisbee","frisco","frisian","frisk","frisker","friskily","friskiness","frisky","frisson","frito","fritter","fritterer","fritz","frivolity","frivolous","frivolousness","frizz","frizzle","frizzly","frizzy","frm","fro","frobisher","frock","frocking","frog","frogged","frogging","frogman","frogmarched","frogmen","froissart","frolic","frolicked","frolicker","frolicking","frolicsome","from","frombody","fromcharcode","fromdate","fromfile","fromhtml","fromimage","fromjson","fromm","fromseconds","fromstring","frond","front","frontage","frontal","frontenac","frontend","frontier","frontiersman","frontiersmen","frontispiece","frontrunner","frontward","frosh","frost","frostbelt","frostbit","frostbite","frostbiting","frostbitten","frosted","frosteds","frostily","frostiness","frosting","frosty","froth","frothiness","froths","frothy","froufrou","froward","frowardness","frown","frowner","frowning","frowzily","frowziness","frowzy","froze","frozen","frozenness","fructify","fructose","fruehauf","frugal","frugality","fruit","fruitcake","fruiter","fruiterer","fruitful","fruitfuller","fruitfullest","fruitfulness","fruitiness","fruition","fruitless","fruitlessness","fruits","fruity","frump","frumpish","frumpy","frunze","frustrate","frustrated","frustrater","frustrating","frustration","frustum","fry","frye","fryer","fs","fscanf","fseek","fsharp","fslic","fso","fst","fstream","ft","ftc","fte","ftp","ftpclient","fu","fuchs","fuchsia","fuck","fucker","fucking","fud","fuddle","fudge","fuel","fueler","fuentes","fugal","fugger","fugiat","fugitive","fugitiveness","fugue","fuhrer","fuji","fujitsu","fujiyama","fukuoka","fulani","fulbright","fulcrum","fulfill","fulfilled","fulfiller","fulfillment","full","fullback","fullcalendar","fuller","fullerton","fullish","fullname","fullness","fullpath","fullscreen","fullstops","fulltext","fullword","fully","fulminate","fulmination","fulness","fulsome","fulsomeness","fulton","fulvia","fumble","fumbler","fumbling","fume","fumigant","fumigate","fumigation","fumigator","fuming","fumy","fun","funafuti","func","funcs","function","functional","functionalism","functionalist","functionalities","functionality","functionally","functionary","functioning","functionname","functions","functools","functor","fund","fundamental","fundamentalism","fundamentalist","fundamentally","fundamentals","funded","fundholders","fundholding","funding","funds","fundy","funeral","funerary","funereal","funfair","fungal","fungi","fungible","fungicidal","fungicide","fungoid","fungous","fungus","funicular","funk","funkiness","funky","funned","funnel","funner","funnest","funnily","funniness","funning","funny","fur","furbelow","furbish","furbisher","furious","furiousness","furl","furlong","furlough","furloughs","furn","furnace","furnish","furnished","furnisher","furnishing","furniture","furor","furore","furred","furrier","furriness","furring","furrow","furry","further","furtherance","furtherer","furthermore","furthermost","furthest","furtive","furtiveness","fury","furze","fusce","fuse","fusebox","fusee","fuselage","fushun","fusibility","fusible","fusiform","fusilier","fusillade","fusion","fuss","fussbudget","fusser","fussily","fussiness","fusspot","fussy","fustian","fustiness","fusty","fut","futile","futileness","futility","futon","future","futures","futuretask","futurism","futurist","futuristic","futurity","futurologist","futurology","futz","fuze","fuzhou","fuzz","fuzzbuster","fuzzily","fuzziness","fuzzy","fv","fw","fwd","fwiw","fwlink","fwrite","fwww","fwy","fx","fxml","fxmlloader","fy","fyi","g","ga","gab","gabardine","gabbed","gabbey","gabbi","gabbie","gabbiness","gabbing","gabble","gabby","gabe","gaberdine","gabey","gabfest","gabi","gabie","gable","gabon","gabonese","gaborone","gabriel","gabriela","gabriele","gabriell","gabriella","gabrielle","gabriellia","gabriello","gabrila","gaby","gac","gacrux","gad","gadabout","gadded","gadder","gadding","gadfly","gadget","gadgetry","gadolinium","gadsden","gae","gaea","gael","gaelan","gaelic","gaff","gaffe","gaffer","gag","gaga","gagarin","gage","gager","gagged","gagging","gaggle","gagwriter","gaiety","gail","gaile","gaily","gain","gained","gainer","gaines","gainesville","gainful","gainfulness","gaining","gainly","gains","gainsaid","gainsay","gainsayer","gainsborough","gait","gaiter","gaithersburg","gal","gala","galactic","galahad","galapagos","galatea","galatia","galatians","galaxy","galbraith","galbreath","gale","galen","galena","galenite","galibi","galilean","galilee","galileo","galina","gall","gallagher","gallant","gallanted","gallanting","gallantry","gallants","gallard","gallbladder","gallegos","galleon","galleria","galleries","gallery","galley","gallic","gallicism","gallimaufry","galling","gallium","gallivant","gallon","gallonage","gallop","galloper","galloway","gallows","gallstone","gallup","galois","galoot","galore","galosh","galsworthy","galumph","galumphs","galvan","galvani","galvanic","galvanism","galvanization","galvanize","galvanometer","galvanometric","galven","galveston","galvin","gama","gamaliel","gambia","gambian","gambit","gamble","gambler","gambol","game","gamecock","gameid","gamekeeper","gameness","gameobject","games","gamescene","gamesmanship","gamesmen","gamest","gamestate","gamester","gamete","gametic","gametime","gamin","gamine","gaminess","gaming","gamma","gammon","gamow","gamut","gamy","gan","gander","gandhi","gandhian","gang","gangbusters","ganger","ganges","gangland","ganglia","gangling","ganglion","ganglionic","gangplank","gangrene","gangrenous","gangster","gangtok","gangway","gannet","gannie","gannon","ganny","gantlet","gantry","ganymede","gao","gaol","gaoler","gap","gape","gaper","gapi","gaping","gapped","gapping","gaps","gaq","gar","garage","garald","garb","garbage","garbageman","garbanzo","garble","garbler","garbo","garcia","gard","garden","gardener","gardenia","gardening","gardie","gardiner","gardner","gardy","gare","garek","gareth","garey","garfield","garfish","garfunkel","gargantua","gargantuan","gargle","gargoyle","garibaldi","garik","garish","garishness","garland","garlic","garlicked","garlicking","garlicky","garment","garner","garnet","garnett","garnette","garnish","garnishee","garnisheeing","garnishment","garold","garon","garote","garotte","garrard","garred","garrek","garret","garreth","garrett","garrick","garrik","garring","garrison","garrot","garrote","garroter","garrott","garrotte","garrulity","garrulous","garrulousness","garry","garter","garth","garv","garvey","garvin","garvy","garwin","garwood","gary","garza","gas","gasbag","gascony","gaseous","gaseousness","gases","gash","gasification","gasifier","gasify","gasket","gaslight","gasohol","gasoline","gasometer","gasp","gaspar","gaspard","gasparo","gasper","gasping","gassed","gasser","gasset","gassiness","gassing","gassy","gaston","gastric","gastritides","gastritis","gastroenteritides","gastroenteritis","gastrointestinal","gastronome","gastronomic","gastronomical","gastronomy","gastropod","gasworks","gate","gateau","gateaux","gatecrash","gatehouse","gatekeeper","gatepost","gates","gateway","gather","gathered","gatherer","gathering","gathers","gatlinburg","gatling","gator","gatorade","gatsby","gatt","gatun","gauche","gaucheness","gaucherie","gaucho","gaudily","gaudiness","gaudy","gauge","gaugeable","gauger","gauguin","gaul","gaulish","gaulle","gaultiero","gaunt","gauntlet","gauntley","gauntness","gauss","gausses","gaussian","gautama","gauthier","gautier","gauze","gauziness","gauzy","gav","gavan","gave","gavel","gaven","gavin","gavotte","gavra","gavrielle","gawain","gawen","gawk","gawkily","gawkiness","gawky","gay","gaye","gayel","gayelord","gayety","gayla","gayle","gayleen","gaylene","gayler","gaylor","gaylord","gayness","gaynor","gaza","gaze","gazebo","gazelle","gazer","gazette","gazetteer","gaziantep","gazillion","gazpacho","gb","gbc","gbp","gc","gca","gcc","gcd","gcloud","gcm","gcp","gcs","gd","gdal","gdansk","gdata","gdb","gdel","gdi","gdk","gdp","gdx","ge","gear","gearalt","gearard","gearbox","gearing","gearshift","gearstick","gearwheel","geary","gecko","geckodriver","ged","gee","geegaw","geeing","geek","geeky","geese","geest","geezer","gehenna","gehrig","geiger","geigy","geisha","gel","gelatin","gelatinous","gelatinousness","gelcap","geld","gelding","gelid","gelignite","gelled","gelling","gelya","gem","gemfile","gemini","gemlike","gemma","gemmed","gemming","gemological","gemologist","gemology","gems","gemstone","gen","gena","genaro","gendarme","gender","genderless","gene","genealogical","genealogist","genealogy","genera","general","generalissimo","generalist","generality","generalizable","generalization","generalize","generalized","generalizer","generally","generalness","generalship","generate","generated","generatedvalue","generates","generating","generation","generational","generations","generationtype","generative","generator","generators","generic","generically","generics","generosity","generous","generously","generousness","genes","genesco","genesis","genet","genetic","genetically","geneticist","genetics","geneva","genevieve","genevra","genghis","genia","genial","geniality","genially","genialness","genie","genies","genii","genital","genitalia","genitals","genitive","genitourinary","genius","genna","genni","gennie","gennifer","genny","geno","genoa","genocidal","genocide","genome","genotype","genovera","genre","genres","gent","genteel","genteelness","gentian","gentile","gentility","gentle","gentlefolk","gentleman","gentlemanliness","gentlemanly","gentlemen","gentleness","gentlewoman","gentlewomen","gently","gentrification","gentrify","gentry","genuflect","genuflection","genuine","genuinely","genuineness","genus","genvieve","genymotion","geo","geocentric","geocentrically","geocentricism","geochemical","geochemistry","geochronology","geocode","geocoder","geocoding","geode","geodesic","geodesy","geodetic","geoff","geoffrey","geoffry","geog","geographer","geographic","geographical","geography","geoip","geojson","geolocation","geologic","geological","geologist","geology","geom","geomagnetic","geomagnetically","geomagnetism","geometer","geometric","geometrical","geometrician","geometry","geomorphological","geomorphology","geophysical","geophysicist","geophysics","geopoint","geopolitic","geopolitical","geopolitics","georas","geordie","georg","george","georgeanna","georgeanne","georgena","georgeta","georgetown","georgetta","georgette","georgi","georgia","georgian","georgiana","georgianna","georgianne","georgie","georgina","georgine","georgy","geostationary","geosynchronous","geosyncline","geothermal","geothermic","ger","gerald","geralda","geraldine","geranium","gerard","gerardo","gerber","gerbil","gerda","gerek","gerhard","gerhardine","gerhardt","geri","gerianna","gerianne","geriatric","geriatrics","gerick","gerik","geritol","gerladina","germ","germain","germaine","german","germana","germane","germania","germanic","germanium","germanized","germantown","germany","germayne","germen","germicidal","germicide","germinal","germinate","germinated","germination","germinative","gerome","geronimo","gerontocracy","gerontological","gerontologist","gerontology","gerrard","gerri","gerrie","gerrilee","gerrit","gerry","gerrymander","gershwin","gert","gerta","gerti","gertie","gertrud","gertruda","gertrude","gertrudis","gerty","gerund","gerundive","gery","gestalt","gestapo","gestate","gestation","gestational","gesticulate","gesticulation","gesticulative","gestural","gesture","gesturedetector","gesturerecognizer","gestures","gesundheit","get","getabsolutepath","getaccesstoken","getaction","getactionbar","getactivesheet","getactivespreadsheet","getactivity","getaddress","getaddrinfo","getage","getall","getapplication","getapplicationcontext","getarguments","getassets","getasync","getattr","getattribute","getaway","getbasecontext","getbean","getbody","getboolean","getbootstrap","getboundingclientrect","getbounds","getbroadcast","getbyid","getbytes","getcell","getch","getchar","getchild","getchildat","getchildren","getclass","getclassloader","getcode","getcollection","getcolor","getcolumn","getcolumnindex","getcomponent","getconnection","getcontent","getcontentpane","getcontentresolver","getcontext","getcount","getcurrentinstance","getcurrentposition","getcurrentsession","getcurrentuser","getcwd","getdata","getdate","getday","getdefault","getdefaultproguardfile","getdefaultsharedpreferences","getdescription","getdouble","getdrawable","getelement","getelementbyid","getelementsbyclassname","getelementsbyname","getelementsbytagname","getemail","getentity","getenumerator","getenv","getexternalstoragedirectory","getextras","getfield","getfile","getfilename","getfiles","getfirstname","getfragmentmanager","getfullyear","gethashcode","getheight","gethours","gethsemane","getid","getimage","getindex","getinfo","getinputstream","getinstance","getint","getintent","getitem","getitemcount","getitemid","getitems","getjson","getjsonarray","getjsonobject","getkey","getkeycode","getlasterror","getlatitude","getlayoutinflater","getlayoutparams","getlength","getline","getlist","getlocation","getlogger","getlong","getlongitude","getmap","getmenuinflater","getmessage","getmethod","getminutes","getmodel","getmonth","getname","getnext","getnumber","getobject","getopt","getoutputstream","getpackagemanager","getpackagename","getpage","getparameter","getparameters","getparent","getpassword","getpath","getpid","getpixel","getposition","getpreferredsize","getprice","getproperties","getproperty","getquery","getrange","getreadabledatabase","getreference","getrepository","getrequest","getresource","getresourceasstream","getresources","getresponse","getresponsecode","getresponsestream","getresult","getresultlist","getrow","getruntime","gets","getscript","getselecteditem","getselection","getservice","getsession","getsettings","getsharedpreferences","getsheetbyname","getsimplename","getsingleton","getsize","getsource","getstate","getstatus","getstream","getstring","getstringextra","getsupportactionbar","getsupportfragmentmanager","getsystemservice","gettable","gettag","getter","getters","gettext","gettime","gettimeinmillis","getting","gettitle","gettoken","gettransaction","getty","gettype","gettysburg","getup","geturl","getuser","getuserid","getusername","getusers","getvalue","getvalues","getview","getwidth","getwindow","getwritabledatabase","getwriter","getx","gety","gevent","gewgaw","gewrztraminer","geyser","gf","gfortran","gfx","gg","ggplot","gh","ghana","ghanaian","ghanian","ghastliness","ghastly","ghat","ghats","ghc","ghci","ghent","gherardo","gherkin","ghetto","ghettoize","ghi","ghibelline","ghost","ghostlike","ghostliness","ghostly","ghostscript","ghostwrite","ghostwritten","ghostwrote","ghoul","ghoulish","ghoulishness","ghq","ghz","gi","giacinta","giacobo","giacometti","giacomo","giacopo","gian","giana","gianina","gianna","gianni","giannini","giant","giantess","giantkiller","giauque","giavani","gib","gibb","gibber","gibberish","gibbet","gibbie","gibbon","gibbous","gibbousness","gibby","gibe","giber","giblet","gibraltar","gibson","gid","giddap","giddily","giddiness","giddings","giddy","gide","gideon","gielgud","gienah","gif","giff","giffard","giffer","giffie","gifford","giffy","gift","gifted","giftedness","gig","gigabyte","gigacycle","gigahertz","gigantic","gigantically","giganticness","gigavolt","gigawatt","gigged","gigging","giggle","giggler","giggling","giggly","gigi","gigo","gigolo","gil","gila","gilbert","gilberta","gilberte","gilbertina","gilbertine","gilberto","gilbertson","gilburt","gilchrist","gild","gilda","gilder","gilding","gilead","gilemette","giles","gilgamesh","gilkson","gill","gillan","gilles","gillespie","gillette","gilli","gilliam","gillian","gillie","gilligan","gilly","gilmore","gilt","gimbaled","gimbals","gimbel","gimcrack","gimcrackery","gimlet","gimme","gimmick","gimmickry","gimmicky","gimp","gimpy","gin","gina","ginelle","ginevra","ginger","gingerbread","gingerliness","gingerly","gingersnap","gingery","gingham","gingivitis","gingrich","ginkgo","ginkgoes","ginmill","ginned","ginni","ginnie","ginnifer","ginning","ginny","gino","ginsberg","ginsburg","ginseng","gioconda","giordano","giorgi","giorgia","giorgio","giorgione","giotto","giovanna","giovanni","gipsy","giraffe","giralda","giraldo","giraud","giraudoux","gird","girded","girder","girdle","girdler","girl","girlfriend","girlhood","girlie","girlish","girlishness","girls","giro","girt","girth","girths","gis","gisela","giselbert","gisele","gisella","giselle","gish","gist","git","github","githubusercontent","gitignore","gitlab","giuditta","giulia","giuliano","giulietta","giulio","giuseppe","giustina","giustino","giusto","give","giveaway","giveback","given","givenname","giver","gives","giving","giza","gizela","gizmo","gizzard","gk","gl","glac","glacial","glaciate","glaciation","glacier","glaciological","glaciologist","glaciology","glad","gladded","gladden","gladder","gladdest","gladding","gladdy","glade","gladi","gladiator","gladiatorial","gladiola","gladioli","gladiolus","gladly","gladness","gladsome","gladstone","gladys","glamor","glamorization","glamorize","glamorizer","glamorous","glamorousness","glance","glancing","gland","glanders","glandes","glandular","glans","glare","glaring","glaringness","glaser","glasgow","glasnost","glass","glassblower","glassblowing","glassfish","glassful","glasshouse","glassily","glassiness","glassless","glassware","glasswort","glassy","glastonbury","glaswegian","glaucoma","glaucous","glaze","glazed","glazer","glazier","glazing","glbindbuffer","glbindtexture","glclear","glcolor","gleam","glean","gleaner","gleaning","gleason","gleda","glee","gleed","gleeful","gleefulness","gleeing","glen","glenable","glenda","glendale","glenden","glendon","glenine","glenn","glenna","glennie","glennis","gles","glew","glfloat","glfw","glib","glibber","glibbest","glibc","glibness","glide","glider","glim","glimmer","glimmering","glimpse","glimpser","glint","glissandi","glissando","glisten","glister","glitch","glitter","glittering","glittery","glitz","glitzy","glm","glmatrixmode","gloaming","gloat","gloater","gloating","glob","global","globalism","globalist","globalization","globally","globals","globe","globetrotter","globular","globularity","globularness","globule","globulin","glockenspiel","glommed","gloom","gloomily","gloominess","gloomy","glop","glopped","glopping","gloppy","glori","gloria","gloriana","gloriane","glorification","glorifier","glorify","glorious","gloriousness","glory","gloss","glossary","glossily","glossiness","glossolalia","glossy","glottal","glottalization","glottis","gloucester","glove","gloveless","glover","glow","glower","glowing","glowworm","glsl","gltexparameteri","glucose","glue","glued","gluer","gluey","gluier","gluiest","gluint","glum","glummer","glummest","glumness","gluon","glut","glutamate","gluten","glutenous","glutinous","glutinousness","glutted","glutting","glutton","gluttonous","gluttony","glvertex","glyceride","glycerin","glycerinate","glycerine","glycerol","glycerolized","glycine","glycogen","glycol","glyn","glynda","glynis","glynn","glynnis","glyph","glyphicon","glyphs","gm","gmap","gmaps","gmp","gms","gmt","gn","gnarl","gnash","gnat","gnaw","gnawer","gnawing","gneiss","gnni","gnome","gnomelike","gnomic","gnomish","gnomonic","gnostic","gnosticism","gnp","gnu","gnuplot","go","goa","goad","goal","goalie","goalkeeper","goalkeeping","goalless","goalmouth","goalpost","goals","goalscorer","goalscoring","goaltender","goat","goatee","goatherd","goatskin","gob","goback","gobbed","gobbet","gobbing","gobble","gobbledegook","gobbledygook","gobbler","gobi","goblet","goblin","god","godaddy","godard","godart","godchild","godchildren","goddammit","goddamn","goddard","goddart","goddaughter","godded","goddess","godding","godfather","godforsaken","godfree","godfrey","godfry","godhead","godhood","godiva","godless","godlessness","godlike","godlikeness","godliness","godly","godmother","godot","godparent","godsend","godson","godspeed","godthaab","godunov","godwin","godzilla","goebbels","goer","goering","goes","goethals","goethe","gofer","goff","gog","goggle","goggler","gogh","gogol","goiania","going","goiter","golan","golang","golconda","gold","golda","goldarina","goldberg","goldbrick","goldbricker","golden","goldenness","goldenrod","goldenseal","goldfinch","goldfish","goldi","goldia","goldie","goldilocks","goldina","golding","goldman","goldmine","goldsmith","goldsmiths","goldstein","goldwater","goldwyn","goldy","goleta","golf","golfer","golgotha","goliath","goliaths","golly","gomez","gomorrah","gompers","gonad","gonadal","gondola","gondolier","gondwanaland","gone","goner","gong","gonion","gonna","gonorrhea","gonorrheal","gonzales","gonzalez","gonzalo","goo","goober","good","goodbye","goodhearted","goodie","goodish","goodly","goodman","goodness","goodnight","goodrich","goods","goodwill","goodwin","goody","goodyear","gooey","goof","goofiness","goofy","goog","googling","gooier","gooiest","gook","goon","goop","goos","goose","gooseberry","goosebumps","gop","gopath","gopher","goran","goraud","gorbachev","gordan","gorden","gordian","gordie","gordimer","gordon","gordy","gore","goren","gorey","gorgas","gorge","gorged","gorgeous","gorgeousness","gorger","gorges","gorging","gorgon","gorgonzola","gorham","gorilla","gorily","goriness","goring","gorky","gormandize","gormandizer","gormless","gorp","gorse","gory","gos","gosh","goshawk","gosling","gospel","gospeler","gossamer","gossip","gossipy","got","gotcha","goth","gotham","gothart","gothic","gothicism","goths","goto","gotta","gotten","gottfried","goucher","gouda","gouge","gouger","goulash","gould","gounod","gourd","gourde","gourmand","gourmet","gout","gouty","gov","govern","governable","governance","governed","governess","governing","government","governmental","governments","governor","governorship","govt","gown","goya","gp","gpa","gpg","gpio","gpl","gpo","gps","gpss","gpu","gpus","gr","grab","grabbed","grabber","grabbing","grabs","gracchus","grace","graceful","gracefuller","gracefullest","gracefully","gracefulness","graceland","graceless","gracelessness","gracia","gracie","graciela","gracious","graciousness","grackle","grad","gradate","gradation","grade","graded","gradeigh","gradely","grader","grades","gradey","gradient","gradients","gradientstop","gradle","gradlew","gradual","gradualism","gradualist","gradually","gradualness","graduand","graduate","graduation","grady","graehme","graeme","graff","graffias","graffiti","graffito","graft","grafter","grafting","grafton","graham","grahame","graig","grail","grails","grain","grained","grainer","graininess","graining","grainy","gram","grammar","grammarian","grammatic","grammatical","grammaticality","grammaticalness","gramme","grammy","gramophone","grampians","grampus","gran","granada","granary","grand","grandam","grandaunt","grandchild","grandchildren","granddad","granddaddy","granddaughter","grandee","grandeur","grandfather","grandiloquence","grandiloquent","grandiose","grandiosity","grandkid","grandma","grandmaster","grandmother","grandnephew","grandness","grandniece","grandpa","grandparent","grandson","grandstand","grandstander","granduncle","grange","granger","granite","granitic","grannie","granny","granola","grant","granted","grantee","granter","grantham","granthem","grantley","grantor","grantresults","grants","grantsmanship","granular","granularity","granulate","granulation","granule","granulocytic","granville","grape","grapefruit","grapeshot","grapevine","graph","grapheme","graphic","graphical","graphicness","graphics","graphite","graphologist","graphology","graphql","graphs","graphviz","grapnel","grapple","grappler","grappling","grasp","grasper","grasping","graspingness","grass","grasshopper","grassland","grassroots","grassy","grata","grate","grateful","gratefuller","gratefullest","gratefulness","grater","grates","gratia","gratiana","graticule","gratification","gratified","gratify","gratifying","grating","gratis","gratitude","gratuitous","gratuitousness","gratuity","gravamen","grave","gravedigger","gravel","graven","graveness","graver","graves","graveside","gravestone","graveyard","gravid","gravida","gravidness","gravimeter","gravimetric","gravitas","gravitate","gravitation","gravitational","graviton","gravity","gravy","gray","graybeard","grayce","grayish","grayness","grayscale","grayson","graze","grazer","grazia","grazing","grease","greasepaint","greaseproof","greaser","greasily","greasiness","greasy","great","greatcoat","greaten","greater","greatest","greathearted","greatly","greatness","grebe","grecian","greece","greed","greedily","greediness","greeds","greedy","greek","greeley","green","greenback","greenbelt","greenberg","greenblatt","greenbriar","greene","greenery","greenfeld","greenfield","greenfly","greengage","greengrocer","greengrocery","greenhorn","greenhouse","greening","greenish","greenland","greenmail","greenness","greenpeace","greenroom","greensboro","greensleeves","greensville","greensward","greentree","greenville","greenwich","greenwood","greer","greet","greeter","greeting","greetings","greets","greg","gregarious","gregariousness","gregg","greggory","gregoire","gregoor","gregor","gregorian","gregoriancalendar","gregorio","gregorius","gregory","gremlin","grenada","grenade","grenadian","grenadier","grenadine","grenadines","grendel","grenier","grenoble","grenville","grep","grepcode","grepl","gresham","greta","gretal","gretchen","grete","gretel","grethel","gretna","gretta","gretzky","grew","grey","greybeard","greyhound","greyness","grid","gridbagconstraints","gridbaglayout","griddata","gridded","griddle","griddlecake","gridiron","gridlayout","gridlock","gridpane","grids","gridview","gridviewcolumn","gridviewrow","gridx","gridy","grief","grieg","grier","grievance","grieve","griever","grieving","grievous","grievousness","griff","griffie","griffin","griffith","griffon","griffy","grill","grille","griller","grillwork","grim","grimace","grimacer","grimaldi","grime","grimes","griminess","grimm","grimmer","grimmest","grimness","grimy","grin","grinch","grind","grinder","grinding","grindstone","gringo","grinned","grinner","grinning","grip","gripe","griper","grippe","gripper","gripping","gris","griselda","grisliness","grisly","grissel","grist","gristle","gristliness","gristly","gristmill","griswold","grit","gritted","gritter","grittiness","gritting","gritty","griz","grizzle","grizzling","grizzly","grnewald","groan","groaner","groat","grocer","grocery","grog","groggily","grogginess","groggy","groin","grok","grokked","grokking","grommet","gromyko","groofs","groom","groomer","groomsman","groomsmen","groot","groove","groover","groovy","grope","groper","gropius","grosbeak","grosgrain","gross","grosset","grossman","grossness","grosvenor","grosz","grotesque","grotesqueness","grotius","groton","grotto","grottoes","grouch","grouchily","grouchiness","grouchy","ground","groundbreaking","grounded","grounder","groundhog","groundless","groundlessness","groundnut","groundsheet","groundskeepers","groundsman","groundswell","groundwater","groundwork","group","groupbox","groupby","grouped","grouper","groupid","groupie","grouping","grouplayout","groupname","groupon","groupposition","groups","grouse","grouser","grout","grouter","grove","grovel","groveler","grovelike","groveling","grover","grow","grower","growing","growingly","growl","growler","growling","growly","grown","grownup","grows","growth","growths","grp","grpc","grub","grubbed","grubber","grubbily","grubbiness","grubbing","grubby","grubstake","grudge","grudger","grudging","gruel","grueling","gruesome","gruesomeness","gruff","gruffness","grumble","grumbler","grumbling","grumman","grump","grumpily","grumpiness","grumpy","grundy","grunge","grungy","grunion","grunt","grunter","grus","grusky","gruyeres","gruyre","gryphon","gs","gsa","gsl","gsm","gson","gsp","gst","gstatic","gstreamer","gsub","gt","gte","gteborg","gtest","gtk","gtm","gu","guacamole","guadalajara","guadalcanal","guadalquivir","guadalupe","guadeloupe","guallatiri","gualterio","guam","guamanian","guangzhou","guanine","guano","guantanamo","guarani","guarantee","guaranteed","guaranteeing","guarantees","guarantor","guaranty","guard","guarded","guardedness","guarder","guardhouse","guardia","guardian","guardianship","guardrail","guardroom","guards","guardsman","guardsmen","guarnieri","guatemala","guatemalan","guava","guayaquil","gubernatorial","gucci","gudgeon","guelph","guendolen","guenevere","guenna","guenther","guernsey","guerra","guerrero","guerrilla","guess","guessable","guessed","guesser","guesses","guessing","guesstimate","guesswork","guest","guests","guevara","guff","guffaw","guggenheim","guglielma","guglielmo","guhleman","gui","guiana","guice","guid","guidance","guide","guidebook","guided","guideline","guidelines","guidepost","guider","guides","guido","guids","guilbert","guild","guilder","guildhall","guile","guileful","guileless","guilelessness","guillaume","guillema","guillemette","guillemot","guillermo","guillotine","guilt","guiltily","guiltiness","guiltless","guiltlessness","guilty","guinea","guinean","guinevere","guinna","guinness","guise","guitar","guitarist","guiyang","guizot","gujarat","gujarati","gujranwala","gulag","gulch","gulden","gulf","gull","gullah","gullet","gulley","gullibility","gullible","gulliver","gully","gulp","gum","gumbo","gumboil","gumboots","gumdrop","gummed","gumminess","gumming","gummy","gumption","gumshoe","gumshoeing","gumtree","gun","gunar","gunboat","gunderson","gunfight","gunfighter","gunfire","gunflint","gunfought","gunicorn","gunilla","gunk","gunky","gunman","gunmen","gunmetal","gunnar","gunned","gunnel","gunner","gunnery","gunning","gunny","gunnysack","gunpoint","gunpowder","gunrunner","gunrunning","guns","gunship","gunshot","gunsling","gunslinger","gunsmith","gunsmiths","guntar","gunter","gunther","gunwale","guofeng","guppy","gupta","gurgle","gurkha","gurney","guru","gus","gusella","gush","gusher","gushy","guss","gusset","gussi","gussie","gussy","gust","gusta","gustaf","gustafson","gustatory","gustav","gustave","gustavo","gustavus","gusted","gusti","gustie","gustily","gustiness","gusting","gusto","gustoes","gusts","gusty","gut","gutenberg","guthrey","guthrie","guthry","gutierrez","gutless","gutlessness","guts","gutser","gutsiness","gutsy","gutted","gutter","guttering","guttersnipe","gutting","guttural","gutturalness","gutty","guy","guyana","guyanese","guys","guzman","guzzle","guzzler","gv","gw","gwalior","gwen","gwendolen","gwendolin","gwendoline","gwendolyn","gweneth","gwenette","gwenneth","gwenni","gwennie","gwenny","gwenora","gwenore","gwt","gwyn","gwyneth","gwynne","gx","gy","gym","gymkhana","gymnasia","gymnasium","gymnast","gymnastic","gymnastically","gymnastics","gymnosperm","gynecologic","gynecological","gynecologist","gynecology","gyp","gypped","gypper","gypping","gypsite","gypster","gypsum","gypsy","gyrate","gyration","gyrator","gyrfalcon","gyro","gyrocompass","gyroscope","gyroscopic","gyve","gz","gzip","h","ha","haag","haas","habakkuk","habeas","haber","haberdasher","haberdashery","haberman","habib","habiliment","habit","habitability","habitable","habitableness","habitant","habitat","habitation","habitations","habits","habitu","habitual","habitualness","habituate","habituation","hacienda","hack","hackage","hacked","hacker","hackers","hackett","hacking","hackle","hackler","hackney","hacks","hacksaw","hackwork","hacky","had","hadamard","hadar","haddad","haddock","hades","hadj","hadji","hadlee","hadleigh","hadley","hadn","hadoop","hadria","hadrian","hadron","hadst","haemoglobin","haemophilia","haemorrhage","hafiz","hafnium","haft","hag","hagan","hagar","hagen","hager","haggai","haggard","haggardness","hagged","hagging","haggis","haggish","haggle","haggler","hagiographa","hagiographer","hagiography","hagstrom","hague","haha","hahn","hahnium","haifa","haiku","hail","hailee","hailer","hailey","hailstone","hailstorm","haily","haiphong","hair","hairball","hairbreadth","hairbreadths","hairbrush","haircare","haircloth","haircloths","haircut","haircutting","hairdo","hairdresser","hairdressing","hairdryer","hairiness","hairless","hairlessness","hairlike","hairline","hairnet","hairpiece","hairpin","hairsbreadth","hairsbreadths","hairsplitter","hairsplitting","hairspray","hairspring","hairstyle","hairstylist","hairy","haiti","haitian","hajj","hajjes","hajji","hake","hakeem","hakim","hakka","hakluyt","hal","halal","halalled","halalling","halberd","halcyon","haldane","hale","haleakala","haleigh","haler","halest","halette","haley","half","halfback","halfbreed","halfhearted","halfheartedness","halfpence","halfpenny","halfpennyworth","halftime","halftone","halfway","halfword","hali","halibut","halide","halie","halifax","halimeda","halite","halitoses","halitosis","hall","hallelujah","hallelujahs","halley","halli","halliard","hallie","hallinan","hallmark","hallo","halloo","hallow","halloween","hallowing","hallows","hallsy","hallucinate","hallucination","hallucinatory","hallucinogen","hallucinogenic","hallway","hally","halo","halocarbon","halogen","halogenated","halon","halpern","halsey","halsy","halt","halter","halting","halve","halves","halyard","ham","hamal","haman","hamburg","hamburger","hamcrest","hamel","hamey","hamhung","hamid","hamil","hamilcar","hamilton","hamiltonian","hamish","hamitic","haml","hamlen","hamlet","hamlin","hammad","hammarskjold","hammed","hammer","hammerer","hammerhead","hammering","hammerless","hammerlock","hammerstein","hammertoe","hammett","hamming","hammock","hammond","hammurabi","hammy","hamnet","hamper","hampered","hampshire","hampton","hamster","hamstring","hamstrung","hamsun","han","hana","hanan","hancock","hand","handbag","handbagged","handbagging","handball","handbarrow","handbasin","handbill","handbook","handbrake","handcar","handcart","handclasp","handcraft","handcuff","handcuffs","handed","handedness","handel","hander","handful","handgun","handhold","handicap","handicapped","handicapper","handicapping","handicraft","handicraftsman","handicraftsmen","handily","handiness","handiwork","handkerchief","handle","handleable","handlebar","handlebars","handlecallback","handlechange","handleclick","handled","handleerror","handlelaunchactivity","handlemessage","handlenonsuccessanddebuggernotification","handler","handlerequest","handlers","handles","handless","handlesubmit","handling","handmade","handmaid","handmaiden","handout","handover","handpick","handrail","hands","handsaw","handset","handshake","handshaker","handshaking","handsome","handsomely","handsomeness","handspike","handspring","handstand","handwork","handwoven","handwrite","handwriting","handwritten","handy","handyman","handymen","haney","hang","hangar","hangdog","hanged","hanger","hanging","hangman","hangmen","hangnail","hangout","hangover","hangs","hangul","hangup","hangzhou","hank","hankel","hanker","hankerer","hankering","hankie","hanky","hanna","hannah","hanni","hannibal","hannie","hanny","hanoi","hanover","hanoverian","hans","hansel","hansen","hansiain","hansom","hanson","hanuka","hanukkah","hanukkahs","hap","hapgood","haphazard","haphazardness","hapless","haplessness","haploid","happed","happen","happened","happening","happens","happenstance","happily","happiness","happing","happy","haproxy","hapsburg","harald","harangue","haranguer","harare","harass","harasser","harassment","harbert","harbin","harbinger","harbor","harborer","harcourt","hard","hardback","hardball","hardboard","hardboiled","hardbound","hardcode","hardcoded","hardcoding","hardcore","hardcover","harden","hardened","hardener","hardening","harder","hardest","hardhat","hardheaded","hardheadedness","hardhearted","hardheartedness","hardihood","hardily","hardin","hardiness","harding","hardliner","hardly","hardness","hardscrabble","hardshell","hardship","hardstand","hardtack","hardtop","hardware","hardwire","hardwood","hardworking","hardy","hare","harebell","harebrained","harelip","harelipped","harem","hargreaves","hark","harlan","harland","harlem","harlen","harlene","harlequin","harley","harli","harlie","harlin","harlot","harlotry","harlow","harm","harman","harmed","harmer","harmful","harmfulness","harmless","harmlessness","harmon","harmonia","harmonic","harmonica","harmonically","harmonics","harmonie","harmonious","harmoniousness","harmonium","harmonization","harmonizations","harmonize","harmonized","harmonizer","harmonizes","harmony","harness","harnessed","harnesser","harnesses","harold","haroun","harp","harper","harping","harpist","harpoon","harpooner","harpsichord","harpsichordist","harpy","harrell","harri","harridan","harrie","harrier","harriet","harriett","harrietta","harriette","harrington","harriot","harriott","harrisburg","harrison","harrisonburg","harrow","harrower","harrumph","harry","harsh","harshen","harshness","hart","harte","hartford","hartley","hartline","hartman","hartwell","harv","harvard","harvest","harvested","harvester","harvestman","harvey","harwell","harwilll","has","hasattr","hasbro","hasclass","hasfocus","hash","hashcode","hashed","hasheem","hasher","hashes","hashim","hashing","hashish","hashlib","hashmap","hashset","hashtable","hashtag","hashtags","hasidim","haskel","haskell","haskins","haslett","hasmany","hasn","hasnext","hasone","hasownproperty","hasp","hassle","hassock","hast","haste","hasten","hastener","hastie","hastily","hastiness","hastings","hasty","hasvalue","hat","hatch","hatchback","hatcheck","hatched","hatcher","hatchery","hatchet","hatching","hatchure","hatchway","hate","hateful","hatefulness","hater","hatfield","hathaway","hatless","hatred","hatstands","hatted","hatter","hatteras","hatti","hattie","hatting","hatty","hauberk","haugen","haughtily","haughtiness","haughty","haul","haulage","hauler","haunch","haunt","haunter","haunting","hauptmann","hausa","hausdorff","hauser","hauteur","havana","havarti","have","havel","haven","havent","haver","haversack","having","havoc","havocked","havocking","haw","hawaii","hawaiian","hawk","hawker","hawking","hawkins","hawkish","hawkishness","hawley","haws","hawser","hawthorn","hawthorne","hay","haycock","hayden","haydn","haydon","hayes","hayfield","hayley","hayloft","haymow","haynes","hayrick","hayride","hayseed","haystack","haywain","hayward","haywire","haywood","hayyim","hazard","hazardous","hazardousness","haze","hazel","hazelcast","hazelnut","hazer","hazily","haziness","hazing","hazlett","hazlitt","hazy","hb","hbase","hbm","hbo","hbox","hbs","hc","hd","hdc","hdd","hdf","hdfs","hdpi","hdqrs","hdr","hdtv","he","head","headache","headaches","headband","headboard","headcount","headdress","header","headers","headerstyle","headertemplate","headertext","headerview","headfirst","headgear","headhunt","headhunter","headhunting","headily","headiness","heading","headings","headlamp","headland","headless","headlessness","headlight","headline","headliner","headlines","headlock","headlong","headman","headmaster","headmastership","headmen","headmistress","headphone","headpiece","headpin","headquarter","headrest","headroom","heads","headscarf","headset","headship","headshrinker","headsman","headsmen","headstall","headstand","headstock","headstone","headstrong","headwaiter","headwall","headwater","headway","headwind","headword","heady","heal","healed","healer","heall","health","healthcare","healthful","healthfully","healthfulness","healthily","healthiness","healths","healthy","heap","hear","heard","hearer","hearing","hearken","hears","hearsay","hearse","hearst","heart","heartache","heartbeat","heartbreak","heartbreaking","heartbroke","heartbroken","heartburn","heartburning","hearted","hearten","heartening","heartfelt","hearth","hearthrug","hearths","hearthstone","heartily","heartiness","heartland","heartless","heartlessness","heartrending","hearts","heartsick","heartsickness","heartstrings","heartthrob","heartwarming","heartwood","hearty","heat","heated","heatedly","heater","heath","heathen","heathendom","heathenish","heathenism","heather","heathery","heathkit","heathland","heathman","heaths","heatmap","heatproof","heats","heatstroke","heatwave","heave","heaven","heavenliness","heavenly","heavenward","heaver","heaves","heavily","heaviness","heaviside","heavy","heavyhearted","heavyset","heavyweight","heb","hebe","hebephrenic","hebert","hebraic","hebraism","hebrew","hebrides","hecate","hecatomb","heck","heckle","heckler","hectare","hectic","hectically","hectogram","hectometer","hector","hecuba","heda","hedda","heddi","heddie","hedge","hedgehog","hedgehop","hedgehopped","hedgehopping","hedger","hedgerow","hedging","hedi","hedonism","hedonist","hedonistic","hedvig","hedvige","hedwig","hedwiga","hedy","heed","heeded","heedful","heedfulness","heeding","heedless","heedlessness","heehaw","heel","heeler","heeling","heelless","heep","hefner","heft","heftily","heftiness","hefty","hegel","hegelian","hegemonic","hegemony","hegira","heida","heidegger","heidelberg","heidi","heidie","heifer","heifetz","height","heighten","heights","heimlich","heindrick","heine","heineken","heinlein","heinous","heinousness","heinrich","heinrick","heinrik","heinz","heinze","heir","heiress","heirloom","heisenberg","heiser","heist","heister","hejira","helaina","helaine","held","helen","helena","helene","helenka","helga","helge","helical","helices","helicon","helicopter","heliocentric","heliography","heliopolis","helios","heliosphere","heliotrope","heliport","helium","helix","hell","hellbender","hellbent","hellcat","hellebore","hellene","hellenic","hellenism","hellenist","hellenistic","hellenization","hellenize","heller","hellespont","hellfire","hellhole","helli","hellion","hellish","hellishness","hellman","hello","helloworld","helluva","helm","helmed","helmet","helmholtz","helming","helms","helmsman","helmsmen","helmut","helot","help","helped","helper","helpers","helpful","helpfulness","helping","helpless","helplessness","helpline","helpmate","helpmeet","helps","helsa","helsinki","helve","helvetian","helvetica","helvetius","helyn","hem","hematite","hematologic","hematological","hematologist","hematology","heme","hemingway","hemisphere","hemispheric","hemispherical","hemline","hemlock","hemmed","hemmer","hemming","hemoglobin","hemolytic","hemophilia","hemophiliac","hemorrhage","hemorrhagic","hemorrhoid","hemostat","hemp","hemstitch","hen","hence","henceforth","henceforward","hench","henchman","henchmen","henderson","hendrerit","hendrick","hendrickson","hendrik","hendrika","hendrix","henge","henka","henley","henna","hennessey","henning","henpeck","henri","henrie","henrieta","henrietta","henriette","henrik","henry","henryetta","hensley","henson","hep","heparin","hepatic","hepatitides","hepatitis","hepburn","hephaestus","hephzibah","hepper","heppest","hepplewhite","heptagon","heptagonal","heptane","heptathlon","her","hera","heracles","heraclitus","herald","heralded","heraldic","heraldry","herb","herbaceous","herbage","herbal","herbalism","herbalist","herbart","herbert","herbicidal","herbicide","herbie","herbivore","herbivorous","herby","herc","herculaneum","hercule","herculean","herculie","herd","herder","herdsman","herdsmen","here","hereabout","hereafter","hereby","hereditary","heredity","hereford","herein","hereinafter","hereof","hereon","heres","heresy","heretic","heretical","hereto","heretofore","hereunder","hereunto","hereupon","herewith","heriberto","heritable","heritage","heritor","herkimer","herman","hermann","hermaphrodite","hermaphroditic","hermaphroditus","hermeneutic","hermeneutics","hermes","hermetic","hermetical","hermia","hermie","hermina","hermine","herminia","hermione","hermit","hermitage","hermite","hermitian","hermon","hermosa","hermosillo","hermy","hernandez","hernando","hernia","hernial","herniate","hero","herod","herodotus","heroes","heroic","heroically","heroics","heroin","heroine","heroism","heroku","herokuapp","herold","heron","herpes","herpetologist","herpetology","herr","herrera","herrick","herring","herringbone","herrington","hersch","herschel","herself","hersey","hersh","hershel","hershey","herta","hertha","hertz","hertzog","hertzsprung","herve","hervey","herzegovina","herzl","hes","hesiod","hesitance","hesitancy","hesitant","hesitantly","hesitate","hesitater","hesitating","hesitation","hesperus","hess","hesse","hessian","hester","hesther","hestia","heston","heterodox","heterodoxy","heterodyne","heterogamous","heterogamy","heterogeneity","heterogeneous","heterogeneousness","heterosexual","heterosexuality","heterostructure","heterozygous","hetti","hettie","hetty","heublein","heuristic","heuristically","heusen","heuser","hew","hewe","hewer","hewet","hewett","hewie","hewitt","hewlett","hex","hexachloride","hexadecimal","hexafluoride","hexagon","hexagonal","hexagram","hexameter","hexer","hey","heyday","heyerdahl","heywood","hezekiah","hf","hg","hgt","hgwy","hh","hhh","hhs","hi","hialeah","hiatus","hiawatha","hibachi","hibernate","hibernation","hibernator","hibernia","hibernian","hibiscus","hiccup","hick","hickey","hickman","hickok","hickory","hicks","hid","hidden","hiddenfield","hiddenfor","hide","hideaway","hidebound","hideous","hideousness","hideout","hider","hides","hiding","hie","hieing","hierarchal","hierarchic","hierarchical","hierarchy","hieratic","hieroglyph","hieroglyphic","hieroglyphics","hieroglyphs","hieronymus","hifalutin","higashiosaka","higgins","high","highball","highborn","highboy","highbrow","highchair","highcharts","higher","highest","highfalutin","highfield","highgui","highhanded","highhandedness","highish","highland","highlander","highlands","highlight","highlighted","highlighting","highlights","highly","highness","highpoint","highroad","highs","highscore","hight","hightail","highway","highwayman","highwaymen","hijack","hijacker","hike","hiker","hilario","hilarious","hilariousness","hilarity","hilarius","hilary","hilbert","hilda","hildagard","hildagarde","hilde","hildebrand","hildegaard","hildegarde","hildy","hill","hillard","hillary","hillbilly","hillcrest","hillel","hiller","hillery","hilliard","hilliary","hillie","hillier","hilliness","hillman","hillmen","hillock","hillsboro","hillsdale","hillside","hilltop","hillwalking","hilly","hillyer","hilt","hilton","him","himalaya","himalayan","himmler","himself","hinayana","hind","hinda","hindemith","hindenburg","hinder","hindered","hinderer","hindi","hindmost","hindquarter","hindrance","hindsight","hindu","hinduism","hindustan","hindustani","hines","hinge","hinger","hinkle","hinsdale","hinstance","hint","hinter","hinterland","hinton","hints","hinze","hip","hipbone","hipness","hipparchus","hipped","hipper","hippest","hippie","hipping","hippo","hippocrates","hippocratic","hippodrome","hippopotamus","hippy","hipster","hiragana","hiram","hire","hired","hireling","hirer","hirey","hiring","hirohito","hiroshi","hiroshima","hirsch","hirsute","hirsuteness","his","hispanic","hispaniola","hiss","hisser","hissing","hist","histamine","histidine","histochemic","histochemical","histochemistry","histogram","histological","histologist","histology","historian","historic","historical","historically","historicalness","historicism","historicist","historicity","historiographer","historiography","history","histrionic","histrionically","histrionics","hit","hitachi","hitch","hitchcock","hitcher","hitchhike","hither","hitherto","hitler","hitless","hits","hittable","hitter","hitting","hittite","hiv","hive","hk","hkey","hklm","hl","hloise","hls","hm","hmac","hmm","hmo","hmong","hms","hn","ho","hoar","hoard","hoarder","hoarding","hoarfrost","hoariness","hoarse","hoarseness","hoary","hoax","hoaxer","hob","hobard","hobart","hobbed","hobbes","hobbies","hobbing","hobbit","hobble","hobbler","hobbs","hobby","hobbyhorse","hobbyist","hobday","hobey","hobgoblin","hobie","hobnail","hobnob","hobnobbed","hobnobbing","hobo","hoboken","hoc","hock","hocker","hockey","hockney","hockshop","hod","hodge","hodgepodge","hodgkin","hoe","hoebart","hoecake","hoedown","hoeing","hoer","hoff","hoffa","hoffman","hofstadter","hog","hogan","hogarth","hogback","hogged","hogger","hogging","hoggish","hogshead","hogtie","hogtying","hogwash","hohenlohe","hohenstaufen","hohenzollern","hohhot","hoist","hoister","hoke","hokey","hokier","hokiest","hokkaido","hokum","hokusai","holbein","holbrook","holcomb","hold","holdall","holden","holder","holders","holding","holdout","holdover","holds","holdup","hole","holes","holey","holiday","holidaymaker","holidays","holier","holiness","holistic","holistically","holland","hollandaise","hollander","holler","hollerith","holley","holli","hollie","hollister","hollow","holloway","hollowness","hollowware","holly","hollyanne","hollyhock","hollywood","holm","holman","holmes","holmium","holo","holocaust","holocene","hologram","holograph","holographic","holographs","holography","holst","holstein","holster","holt","holy","holyoke","holystone","holzman","hom","homage","homager","hombre","homburg","home","homebody","homebound","homeboy","homebrew","homebuilder","homebuilding","homebuilt","homecoming","homecontroller","homegrown","homeland","homeless","homelessness","homelike","homeliness","homely","homemade","homemake","homemaker","homemaking","homeomorph","homeomorphic","homeomorphism","homeopath","homeopathic","homeopaths","homeopathy","homeostases","homeostasis","homeostatic","homeowner","homeownership","homepage","homer","homere","homeric","homerists","homeroom","homerus","homes","homeschooling","homescreen","homesick","homesickness","homespun","homestead","homesteader","homestretch","hometown","homeward","homework","homeworker","homey","homeyness","homicidal","homicide","homier","homiest","homiletic","homily","hominess","homing","hominid","hominy","homo","homogamy","homogenate","homogeneity","homogeneous","homogenization","homogenize","homogenizer","homograph","homographs","homological","homologous","homologue","homology","homomorphic","homomorphism","homonym","homophobia","homophobic","homophone","homopolymers","homosexual","homosexuality","homotopy","homozygous","hon","honcho","honda","hondo","honduran","honduras","hone","honecker","honest","honestly","honesty","honey","honeybee","honeycomb","honeydew","honeylocust","honeymoon","honeymooner","honeysuckle","honeywell","hong","honiara","honk","honker","honky","honolulu","honor","honorable","honorableness","honorables","honorablies","honorably","honorarily","honorarium","honorary","honored","honoree","honorer","honoria","honorific","honors","honshu","hooch","hood","hooded","hoodedness","hoodlum","hoodoo","hoodwink","hoodwinker","hooey","hoof","hoofer","hoofmark","hook","hookah","hookahs","hooke","hooked","hookedness","hooker","hookey","hooking","hooks","hookup","hookworm","hooky","hooligan","hooliganism","hoop","hooper","hoopla","hooray","hoosegow","hoosier","hoot","hootch","hootenanny","hooter","hoover","hooves","hop","hope","hoped","hopeful","hopefully","hopefulness","hopeless","hopelessness","hoper","hopes","hopewell","hopi","hoping","hopkins","hopkinsian","hopped","hopper","hopping","hoppled","hopples","hopscotch","horace","horacio","horatia","horatio","horatius","horde","horehound","horizon","horizontal","horizontalalign","horizontalalignment","horizontalcontentalignment","horizontally","horizontalscrollview","hormel","hormonal","hormone","hormuz","horn","hornbeam","hornblende","hornblower","horne","horned","hornedness","hornet","horniness","hornless","hornlike","hornpipe","horny","horologic","horological","horologist","horology","horoscope","horowitz","horrendous","horrible","horribleness","horribly","horrid","horridness","horrific","horrifically","horrify","horrifying","horror","hors","horse","horseback","horsedom","horseflesh","horsefly","horsehair","horsehide","horselaugh","horselaughs","horseless","horselike","horsely","horseman","horsemanship","horsemen","horseplay","horseplayer","horsepower","horseradish","horseshoe","horseshoeing","horseshoer","horsetail","horsewhip","horsewhipped","horsewhipping","horsewoman","horsewomen","horsey","horsier","horsiest","horsing","horst","hort","hortatory","horten","hortense","hortensia","horticultural","horticulture","horticulturist","horton","horus","hos","hosanna","hose","hosea","hosepipe","hosier","hosiery","hosp","hospice","hospitable","hospitably","hospital","hospitality","hospitalization","hospitalize","host","hostage","hostconfig","hosted","hostel","hosteler","hostelry","hostess","hostile","hostility","hosting","hostler","hostname","hosts","hot","hotbed","hotblooded","hotbox","hotcake","hotchpotch","hotel","hotelier","hotelman","hotels","hotfoot","hothead","hotheaded","hotheadedness","hothouse","hotmail","hotness","hotplate","hotpot","hotrod","hotshot","hotspot","hotted","hottentot","hotter","hottest","hotting","houdaille","houdini","hough","hound","hounder","hounding","hour","hourglass","houri","hourly","hours","house","houseboat","housebound","houseboy","housebreak","housebreaker","housebreaking","housebroke","housebroken","housebuilding","houseclean","housecleaning","housecoat","housefly","houseful","household","householder","househusband","housekeep","housekeeper","housekeeping","houselights","housemaid","houseman","housemen","housemother","housemoving","houseparent","houseplant","houser","houses","housetop","housewares","housewarming","housewife","housewifeliness","housewifely","housewives","housework","houseworker","housing","housman","houston","houyhnhnm","hov","hove","hovel","hover","hovercraft","hovered","hoverer","hovering","hovers","how","howard","howbeit","howdah","howdahs","howdy","howe","howell","however","howey","howie","howitzer","howl","howler","howrah","howsoever","howto","hoy","hoyden","hoydenish","hoyle","hoyt","hp","hpa","hpp","hq","hql","hr","href","hresult","hrh","hrothgar","hrs","hs","hsl","hsqldb","hst","hsv","ht","htaccess","htc","htdocs","hth","htm","html","htmlattributes","htmldocument","htmlelement","htmlentities","htmlhelper","htmlspecialchars","htmlstring","htmltextwriter","htmlunit","htons","hts","http","httpapplication","httpbackend","httpclient","httpcomponents","httpconnection","httpcontext","httpd","httpentity","httpget","httphandler","httpheader","httpheaders","httplib","httpmethod","httponly","httppost","httpprovider","httprequest","httprequestmessage","httpresponse","httpresponsemessage","httpresponseredirect","httpruntime","https","httpsecurity","httpserver","httpservlet","httpservletrequest","httpservletresponse","httpsession","httpstatus","httpstatuscode","httpurlconnection","httputility","httpwebrequest","httpwebresponse","hu","huang","huarache","huawei","hub","hubba","hubbard","hubble","hubbub","hubby","hubcap","hube","huber","hubert","huberto","hubey","hubie","hubris","hubs","huck","huckleberry","huckster","hud","huddersfield","huddle","huddler","hudson","hue","huerta","huey","huff","huffily","huffiness","huffman","huffy","hug","huge","hugely","hugeness","hugged","hugger","hugging","huggins","hugh","hughie","hugibert","hugo","huguenot","hugues","huh","huhs","hui","huitzilopitchli","hula","hulda","hulk","hull","hullabaloo","huller","hulling","hullo","hum","human","humane","humaneness","humaner","humanest","humanism","humanist","humanistic","humanitarian","humanitarianism","humanity","humanization","humanize","humanized","humanizer","humanizes","humanizing","humankind","humanness","humannesses","humanoid","humans","humbert","humberto","humble","humbleness","humbly","humboldt","humbug","humbugged","humbugging","humdinger","humdrum","hume","humeral","humeri","humerus","humfrey","humfrid","humfried","humid","humidification","humidifier","humidify","humidistat","humidity","humidor","humiliate","humiliating","humiliation","humility","hummed","hummel","hummer","humming","hummingbird","hummock","hummocky","hummus","humongous","humor","humored","humorist","humorless","humorlessness","humorous","humorousness","hump","humpback","humph","humphrey","humphs","humpty","humus","humvee","hun","hunch","hunchback","hundred","hundredfold","hundreds","hundredths","hundredweight","hunfredo","hung","hungarian","hungary","hunger","hungover","hungrily","hungriness","hungry","hunk","hunker","hunky","hunt","hunter","hunting","huntington","huntlee","huntley","huntress","huntsman","huntsmen","huntsville","hurdle","hurdler","hurl","hurlee","hurleigh","hurler","hurley","hurling","huron","hurray","hurricane","hurried","hurriedness","hurry","hurst","hurt","hurter","hurtful","hurtfulness","hurting","hurtle","hurts","hurwitz","hus","husain","husband","husbander","husbandman","husbandmen","husbandry","husein","hush","husk","husker","huskily","huskiness","husking","husky","hussar","hussein","husserl","hussy","hustings","hustle","hustler","huston","hut","hutch","hutchins","hutchinson","hutchison","hutted","hutting","hutton","hutu","huxley","huygens","huzzah","huzzahs","hv","hw","hwnd","hwy","hx","hy","hyacinth","hyacintha","hyacinthe","hyacinthia","hyacinthie","hyacinths","hyades","hyaena","hyannis","hyatt","hybrid","hybridism","hybridization","hybridize","hyde","hyderabad","hydra","hydrangea","hydrant","hydrate","hydration","hydraulic","hydraulically","hydraulicked","hydraulicking","hydraulics","hydrazine","hydride","hydro","hydrocarbon","hydrocephali","hydrocephalus","hydrochemistry","hydrochloric","hydrochloride","hydrodynamic","hydrodynamical","hydrodynamics","hydroelectric","hydroelectrically","hydroelectricity","hydrofluoric","hydrofoil","hydrogen","hydrogenate","hydrogenation","hydrogenations","hydrogenous","hydrological","hydrologist","hydrology","hydrolysis","hydrolyze","hydrolyzed","hydromagnetic","hydromechanics","hydrometer","hydrometry","hydrophilic","hydrophobia","hydrophobic","hydrophone","hydroplane","hydroponic","hydroponics","hydrosphere","hydrostatic","hydrostatics","hydrotherapy","hydrothermal","hydrous","hydroxide","hydroxy","hydroxyl","hydroxylate","hydroxyzine","hyena","hygiene","hygienic","hygienically","hygienics","hygienist","hygrometer","hygroscopic","hying","hyman","hymen","hymeneal","hymie","hymn","hymnal","hymnbook","hynda","hype","hyper","hyperactive","hyperactivity","hyperbola","hyperbole","hyperbolic","hyperbolically","hyperboloid","hyperboloidal","hypercellularity","hypercritical","hypercube","hyperemia","hyperemic","hyperfine","hypergamous","hypergamy","hyperglycemia","hyperinflation","hyperion","hyperledger","hyperlink","hyperlinks","hypermarket","hypermedia","hyperplane","hyperplasia","hypersensitive","hypersensitiveness","hypersensitivity","hypersonic","hyperspace","hypersphere","hypertension","hypertensive","hypertext","hyperthyroid","hyperthyroidism","hypertrophy","hypervelocity","hyperventilate","hyperventilation","hyphen","hyphenate","hyphenated","hyphenation","hyphens","hypnoses","hypnosis","hypnotherapy","hypnotic","hypnotically","hypnotism","hypnotist","hypnotize","hypo","hypoactive","hypoallergenic","hypocellularity","hypochondria","hypochondriac","hypocrisy","hypocrite","hypocritical","hypodermic","hypoglycemia","hypoglycemic","hypophyseal","hypophysectomized","hypotenuse","hypothalami","hypothalamic","hypothalamically","hypothalamus","hypothermia","hypotheses","hypothesis","hypothesize","hypothesizer","hypothetic","hypothetical","hypothyroid","hypothyroidism","hypoxia","hyssop","hysterectomy","hysteresis","hysteria","hysteric","hysterical","hyundai","hz","i","ia","iaccoca","iactionresult","iago","iain","iam","iamb","iambi","iambic","iambus","ian","ianthe","iasyncresult","ib","ibaction","ibadan","ibb","ibbie","ibby","iberia","iberian","ibero","ibex","ibid","ibidem","ibinder","ibis","ibm","ibo","iboutlet","ibrahim","ibsen","ibuprofen","ic","icarus","icbm","icc","ice","iceberg","iceboat","icebound","icebox","icebreaker","icecap","iceland","icelander","icelandic","iceman","icemen","icepack","icepick","ichabod","ichneumon","ichthyologist","ichthyology","icicle","icily","iciness","icing","icky","icloud","icmp","ico","icollection","icommand","icon","iconic","iconoclasm","iconoclast","iconoclastic","iconography","icons","iconv","icosahedra","icosahedral","icosahedron","ics","ictus","icu","icy","id","ida","idaho","idahoan","idahoes","idalia","idalina","idaline","idc","ide","idea","ideal","idealism","idealist","idealistic","idealistically","idealization","idealize","idealized","idealizer","ideally","idealogical","ideas","ideate","ideation","idell","idelle","idem","idempotent","ident","identical","identicalness","identifiability","identifiable","identifiably","identification","identified","identifier","identifiers","identifies","identify","identifying","identities","identity","identitymodel","identityserver","ideogram","ideograph","ideographic","ideographs","ideological","ideologist","ideologue","ideology","ideone","ides","idette","idf","idictionary","idiocy","idiolect","idiom","idiomatic","idiomatically","idiopathic","idiosyncrasy","idiosyncratic","idiosyncratically","idiot","idiotic","idiotically","idisposable","idl","idle","idleness","idler","idol","idolater","idolatress","idolatrous","idolatry","idolization","idolize","idolized","idolizer","idp","ids","idt","iduser","idx","idyll","idyllic","idyllically","ie","ieee","ienumerable","ienumerator","ietf","ieyasu","if","iface","ifdef","ifelse","iferror","iffiness","iffy","ifmodule","ifndef","ifni","ifnull","ifoo","iframe","iframes","ifs","ifstream","ig","iggie","iggy","igloo","ignace","ignacio","ignacius","ignatius","ignaz","ignazio","igneous","ignitable","ignite","igniter","ignition","ignoble","ignobleness","ignobly","ignominious","ignominy","ignorable","ignoramus","ignorance","ignorant","ignorantness","ignore","ignorecase","ignored","ignorer","ignores","ignoring","igor","igraph","iguana","iguassu","ih","ii","iid","iif","iii","iirc","iis","ij","ijsselmeer","ik","ike","ikey","ikhnaton","ikon","il","ila","ilaire","ilario","ilea","ileana","ileane","ileitides","ileitis","ilene","ileum","ilia","iliac","iliad","ilise","ilist","ilium","ilk","ilka","ill","illa","illegal","illegalaccessexception","illegalargumentexception","illegality","illegalstateexception","illegibility","illegible","illegibly","illegitimacy","illegitimate","illiberal","illiberality","illicit","illicitness","illimitable","illimitableness","illinois","illinoisan","illiquid","illiteracy","illiterate","illiterateness","illness","illogic","illogical","illogicality","illogicalness","illume","illuminate","illuminati","illuminating","illuminatingly","illumination","illumine","illus","illusion","illusionary","illusionist","illusive","illusiveness","illusoriness","illusory","illustrate","illustrated","illustrates","illustration","illustrative","illustrator","illustrious","illustriousness","illy","iloc","ilogger","ilona","ilsa","ilse","ilysa","ilyse","ilyssa","ilyushin","im","imag","image","imageadapter","imagearray","imagebutton","imagedata","imagefield","imagefile","imageformat","imageicon","imageid","imageio","imagelist","imageloader","imagemagick","imagen","imagename","imagenamed","imagepath","imagepicker","imagery","images","imageshack","imagesize","imagesource","imageuri","imageurl","imageview","imagewidth","imagick","imaginable","imaginableness","imaginably","imaginariness","imaginary","imagination","imaginative","imaginativeness","imagine","imagined","imaginer","imaging","imago","imagoes","imam","imap","imbalance","imbecile","imbecilic","imbecility","imbibe","imbiber","imbrication","imbrium","imbroglio","imbruing","imbue","imdb","ime","imei","imelda","imessage","imf","img","imgdata","imgproc","imgs","imgur","imgurl","imgview","imho","imitable","imitate","imitation","imitative","imitativeness","imitator","imm","immaculate","immaculateness","immanence","immanency","immanent","immanuel","immaterial","immateriality","immaterialness","immature","immatureness","immaturity","immeasurable","immeasurableness","immeasurably","immediacy","immediate","immediately","immediateness","immemorial","immense","immenseness","immensity","immerse","immersible","immersion","immigrant","immigrate","immigration","imminence","imminent","imminentness","immobile","immobility","immobilization","immobilize","immoderate","immoderateness","immoderation","immodest","immodesty","immolate","immolation","immoral","immorality","immortal","immortality","immortalize","immortalized","immovability","immovable","immovableness","immovably","immune","immunity","immunization","immunize","immunoassay","immunodeficiency","immunodeficient","immunologic","immunological","immunologist","immunology","immure","immutability","immutable","immutableness","immutably","imnsho","imo","imogen","imogene","imojean","imp","impact","impaction","impactor","impair","impaired","impairer","impairment","impala","impale","impalement","impaler","impalpable","impalpably","impanel","impart","impartation","impartial","impartiality","impassable","impassableness","impassably","impasse","impassibility","impassible","impassibly","impassion","impassioned","impassive","impassiveness","impassivity","impasto","impatience","impatiens","impatient","impeach","impeachable","impeacher","impeachment","impeccability","impeccable","impeccably","impecunious","impecuniousness","imped","impedance","impede","impeded","impeder","impediment","impedimenta","impel","impelled","impeller","impelling","impend","impenetrability","impenetrable","impenetrableness","impenetrably","impenitence","impenitent","imperative","imperativeness","imperceivable","imperceptibility","imperceptible","imperceptibly","imperceptive","imperdiet","imperf","imperfect","imperfectability","imperfection","imperfectness","imperial","imperialism","imperialist","imperialistic","imperialistically","imperil","imperilment","imperious","imperiousness","imperishable","imperishableness","imperishably","impermanence","impermanent","impermeability","impermeable","impermeableness","impermeably","impermissible","impersonal","impersonality","impersonalized","impersonate","impersonation","impersonator","impertinence","impertinent","imperturbability","imperturbable","imperturbably","impervious","imperviousness","impetigo","impetuosity","impetuous","impetuousness","impetus","impiety","imping","impinge","impingement","impious","impiousness","impish","impishness","impl","implacability","implacable","implacableness","implacably","implant","implantation","implanter","implausibility","implausible","implausibly","implement","implementability","implementable","implementation","implementations","implemented","implementer","implementing","implementor","implements","implicant","implicate","implication","implications","implicative","implicit","implicitly","implicitness","implied","implies","implode","implore","imploring","implosion","implosive","imply","implying","impolite","impoliteness","impolitic","impoliticness","imponderable","imponderableness","import","importance","important","importantly","importation","imported","importer","importerror","importing","importlib","imports","importunate","importunateness","importune","importuner","importunity","imposable","impose","imposer","imposing","imposingly","imposition","impossibility","impossible","impossibleness","impossibly","impost","imposter","impostor","imposture","impotence","impotency","impotent","impound","impoundments","impoverish","impoverisher","impoverishment","impracticable","impracticableness","impracticably","impractical","impracticality","impracticalness","imprecate","imprecation","imprecise","impreciseness","imprecision","impregnability","impregnable","impregnableness","impregnably","impregnate","impregnation","impresario","impress","impressed","impresser","impressibility","impressible","impression","impressionability","impressionable","impressionableness","impressionism","impressionist","impressionistic","impressions","impressive","impressiveness","impressment","imprimatur","imprint","imprinter","imprinting","imprison","imprisonment","improbability","improbable","improbableness","improbably","impromptu","improper","improperness","impropitious","impropriety","improve","improved","improvement","improvements","improver","improves","improvidence","improvident","improving","improvisation","improvisational","improvisatory","improvise","improviser","imprudence","imprudent","impudence","impudent","impugn","impugner","impulse","impulsion","impulsive","impulsiveness","impunity","impure","impureness","impurity","imputation","impute","imread","imshow","imus","in","ina","inaccessible","inaccurate","inaction","inactive","inadequate","inadvertence","inadvertent","inalienability","inalienably","inalterable","inalterableness","inamorata","inane","inanimate","inanimateness","inanity","inappeasable","inappropriate","inarray","inarticulate","inasmuch","inaugural","inaugurate","inauguration","inauthenticity","inbound","inbox","inbred","inbreed","inbuilt","inc","inca","incalculableness","incalculably","incandescence","incandescent","incant","incantation","incantatory","incapable","incapacitate","incapacitation","incarcerate","incarceration","incarnadine","incarnate","incarnation","incase","incendiary","incense","incentive","incentively","incentives","incept","inception","inceptive","inceptor","incessant","incest","incestuous","incestuousness","inch","inches","inchoate","inchon","inchworm","incidence","incident","incidental","incidentally","incidents","incididunt","incinerate","incineration","incinerator","incipience","incipiency","incipient","incise","incision","incisive","incisiveness","incisor","incite","incitement","inciter","incl","inclination","incline","inclined","incliner","inclining","include","included","includes","including","inclusion","inclusive","inclusiveness","incognito","incoherency","income","incoming","incommode","incommunicado","incomparable","incompatible","incompetent","incomplete","inconceivability","inconceivable","inconceivableness","incondensable","incongruousness","inconsiderable","inconsiderableness","inconsistence","inconsistent","inconsolable","inconsolableness","inconsolably","incontestability","incontestably","incontrovertibly","inconvenience","inconvenient","inconvertibility","inconvertible","incorporable","incorporate","incorporated","incorrect","incorrectly","incorrigibility","incorrigible","incorrigibleness","incorrigibly","incorruptible","incorruptibly","incr","increase","increased","increaser","increases","increasing","increasingly","incredible","incredibleness","incredibly","increment","incremental","incrementation","incremented","incrementing","increments","incriminate","incrimination","incriminatory","incrustation","incubate","incubation","incubator","incubus","inculcate","inculcation","inculpate","incumbency","incumbent","incunabula","incunabulum","incurable","incurious","incursion","ind","indebted","indebtedness","indeed","indefatigable","indefatigableness","indefatigably","indefeasible","indefeasibly","indefinable","indefinableness","indefinite","indefinitely","indelible","indelibly","indemnification","indemnify","indemnity","indent","indentation","indented","indenter","indention","indenture","independence","independent","independently","indescribable","indescribableness","indescribably","indestructible","indestructibleness","indestructibly","indeterminably","indeterminacy","indeterminate","indeterminism","index","indexation","indexed","indexeddb","indexer","indexerror","indexes","indexing","indexof","indexpath","india","indian","indiana","indianan","indianapolis","indianian","indicant","indicate","indicated","indicates","indicating","indication","indicative","indicator","indicators","indices","indict","indicter","indictment","indifference","indigence","indigenous","indigenousness","indigent","indigestible","indignant","indignation","indigo","indira","indirect","indirection","indirectly","indiscreet","indiscriminate","indiscriminateness","indispensability","indispensable","indispensableness","indispensably","indisputable","indisputableness","indissoluble","indissolubleness","indissolubly","indistinguishable","indistinguishableness","indite","indium","individual","individualism","individualist","individualistic","individualistically","individuality","individualization","individualize","individualized","individualizer","individualizes","individualizing","individually","individuals","individuate","individuation","indivisible","indivisibleness","indivisibly","indochina","indochinese","indoctrinate","indoctrination","indoctrinator","indolence","indolent","indomitable","indomitableness","indomitably","indonesia","indonesian","indoor","indore","indra","indubitable","indubitableness","indubitably","induce","induced","inducement","inducer","inducible","induct","inductance","inductee","induction","inductive","inductiveness","inductor","indulge","indulgence","indulgent","indulger","indus","industrial","industrialism","industrialist","industrialization","industrialize","industrialized","industries","industrious","industriousness","industry","indx","indy","inebriate","inebriation","inedible","ineducable","ineffability","ineffable","ineffableness","ineffably","inefficient","inelastic","ineligibly","ineluctable","ineluctably","inept","ineptitude","ineptness","inequality","inequivalent","inerrant","inert","inertia","inertial","inertness","ines","inescapably","inesita","inessa","inestimably","inet","inetaddress","inetpub","inevitability","inevitable","inevitableness","inevitably","inexact","inexhaustible","inexhaustibleness","inexhaustibly","inexorability","inexorable","inexorableness","inexorably","inexpedience","inexplicable","inexplicableness","inexplicably","inexplicit","inexpressibility","inexpressible","inexpressibleness","inextricably","inez","inf","infamous","infamy","infancy","infant","infanticide","infantile","infantry","infantryman","infantrymen","infarct","infarction","infatuate","infatuation","infauna","infect","infected","infecter","infection","infectious","infectiousness","infective","infer","inference","inferential","inferior","inferiority","infernal","inferno","inferred","inferring","infertile","infest","infestation","infester","infidel","infighting","infile","infill","infiltrate","infiltrator","infinispan","infinite","infinitely","infinitesimal","infinitival","infinitive","infinitude","infinitum","infinity","infirmary","infirmity","infix","inflammable","inflammableness","inflammation","inflammatory","inflatable","inflate","inflated","inflateexception","inflater","inflating","inflation","inflationary","inflect","inflection","inflectional","inflexible","inflexibleness","inflexion","inflict","inflicter","infliction","inflow","influence","influenced","influencer","influent","influential","influenza","info","infobox","infocenter","infomercial","inform","informatica","informatics","information","informational","informations","informative","informativeness","informatory","informed","informer","infos","infotainment","infowindow","infra","infrared","infrasonic","infrastructural","infrastructure","infrequence","infringe","infringement","infringer","infuriate","infuriating","infuriation","infuse","infuser","infusible","infusibleness","ing","inga","ingaberg","ingaborg","ingamar","ingar","inge","ingeberg","ingeborg","ingelbert","ingemar","ingenious","ingeniousness","ingenuity","ingenuous","ingenuousness","inger","ingersoll","ingest","ingestible","ingestion","inglebert","inglenook","inglewood","inglis","ingmar","ingnue","ingoing","ingot","ingra","ingrained","ingram","ingrate","ingratiate","ingratiating","ingratiation","ingredient","ingredients","ingres","ingress","ingression","ingrid","ingrim","ingrown","inguinal","ingunna","inhabit","inhabitable","inhabitance","inhabited","inhabiter","inhalant","inhalation","inhalator","inhale","inhere","inherent","inherently","inherit","inheritable","inheritableness","inheritance","inherited","inheriting","inheritor","inheritress","inheritrix","inherits","inhibit","inhibited","inhibiter","inhibition","inhibitor","inhibitory","inhomogeneous","inhospitable","inhospitableness","inhospitality","ini","inigo","inimical","inimitable","inimitableness","inimitably","inion","iniquitous","iniquitousness","iniquity","init","initandlisten","initial","initialcontext","initialer","initialisation","initialise","initialised","initializable","initialization","initializations","initialize","initializecomponent","initialized","initializer","initializers","initializes","initializing","initially","initials","initialstate","initiate","initiated","initiates","initiating","initiation","initiative","initiator","initiatory","initmap","initwithdata","initwithframe","initwithnibname","initwithstyle","initwithtitle","inject","injectable","injected","injecting","injection","injections","injector","injunctive","injure","injured","injurer","injurious","injuriousness","ink","inkblot","inker","inkiness","inkling","inkscape","inkstand","inkwell","inky","inland","inlander","inlay","inletting","inline","inlined","inlining","inly","inmost","inn","inna","innards","innate","innateness","inner","innerexception","innerheight","innerhtml","innermost","innersole","innerspring","innertext","innervate","innervation","innerwidth","inning","innis","innkeeper","innocence","innocent","innocuous","innocuousness","innodb","innovate","innovation","innovative","innovator","innovatory","innsbruck","innuendo","innumerability","innumerable","innumerableness","innumerably","innumerate","inoculate","inoculation","inoculative","inode","inoffensive","inonu","inopportune","inopportuneness","inorder","inordinate","inordinateness","inorganic","inotifypropertychanged","inout","inp","inpatient","inplace","input","inputarray","inputbox","inputdata","inputfield","inputfile","inputid","inputline","inputmethodmanager","inputs","inputstream","inputstreamreader","inputstring","inputted","inputtext","inputting","inputtype","inputvalue","inquire","inquirer","inquiring","inquiry","inquisition","inquisitional","inquisitive","inquisitiveness","inquisitor","inquisitorial","inri","inrush","ins","insalubrious","insamplesize","insane","insanitary","insatiability","insatiable","insatiableness","insatiably","inscribe","inscription","inscrutability","inscrutable","inscrutableness","inscrutably","inseam","insecticidal","insecticide","insectivore","insectivorous","insecure","insecureness","inseminate","insemination","insensate","insensateness","insensible","insensitive","insentient","inseparable","insert","insertafter","insertbefore","insertcell","inserted","inserter","inserting","insertion","inserts","inset","insets","insetting","inshore","inside","insider","insidious","insidiousness","insight","insightful","insights","insigne","insignia","insignificant","insinuate","insinuating","insinuation","insinuator","insipid","insipidity","insist","insistence","insistent","insisting","insociable","insofar","insole","insolence","insolent","insoluble","insolubleness","insolubly","insomnia","insomniac","insomuch","insouciance","insouciant","inspect","inspecting","inspection","inspective","inspector","inspectorate","inspiration","inspirational","inspire","inspired","inspirer","inspiring","inspirit","inst","instagram","install","installable","installation","installations","installed","installer","installers","installing","installment","installs","instance","instanceid","instanceof","instances","instant","instantaneous","instantaneousness","instantiate","instantiated","instantiates","instantiateviewcontrollerwithidentifier","instantiating","instantiation","instantly","instate","instead","instigate","instigation","instigator","instillation","instinct","instinctive","instinctual","institute","instituter","institutes","institution","institutional","institutionalism","institutionalist","institutionalization","institutionalize","institutions","institutor","instr","instream","instruct","instructed","instruction","instructional","instructions","instructive","instructiveness","instructor","instrument","instrumental","instrumentalist","instrumentality","instrumentation","instruments","insubordinate","insubstantial","insufferable","insufferably","insufficient","insular","insularity","insulate","insulated","insulation","insulator","insulin","insult","insulter","insulting","insuperable","insuperably","insupportable","insupportableness","insurance","insure","insured","insurer","insurgence","insurgency","insurgent","insurmountably","insurrection","insurrectionist","int","intact","intactness","intaglio","intake","intangible","intarray","integer","integerfield","integers","integrability","integrable","integral","integrand","integrate","integrated","integrates","integrating","integration","integrative","integrator","integrity","integument","intel","intellect","intellective","intellectual","intellectualism","intellectuality","intellectualize","intellectualness","intelligence","intelligencer","intelligent","intelligentsia","intelligibilities","intelligibility","intelligible","intelligibleness","intelligibly","intellij","intellisense","intelsat","intemperate","intend","intendant","intended","intendedness","intender","intensification","intensifier","intensify","intensional","intensity","intensive","intensiveness","intent","intentfilter","intention","intentional","intentionality","intentionally","intentions","intentness","intents","intentservice","inter","interact","interacting","interaction","interactions","interactive","interactively","interactivity","interacts","interaxial","interbank","interbred","interbreed","intercalate","intercalation","intercase","intercaste","intercede","interceder","intercensal","intercept","interception","interceptor","interceptors","intercession","intercessor","intercessory","interchange","interchangeability","interchangeable","interchangeableness","interchangeably","interchanger","intercity","interclass","intercohort","intercollegiate","intercom","intercommunicate","intercommunication","interconnect","interconnected","interconnectedness","interconnection","interconnectivity","intercontinental","interconversion","intercorrelated","intercourse","interdata","interdenominational","interdepartmental","interdependence","interdependency","interdependent","interdict","interdiction","interdisciplinary","interdum","interest","interested","interesting","interestingly","interestingness","interests","interface","interfaces","interfacing","interfaith","interfere","interference","interferer","interfering","interferometer","interferometric","interferometry","interferon","interfile","intergalactic","intergeneration","intergenerational","interglacial","intergovernmental","intergroup","interim","interindex","interindustry","interior","interj","interject","interjection","interjectional","interlace","interlard","interlayer","interleave","interleukin","interlibrary","interline","interlinear","interlingua","interlingual","interlining","interlink","interlisp","interlobular","interlock","interlocker","interlocutor","interlocutory","interlope","interloper","interlude","intermarriage","intermarry","intermediary","intermediate","intermediateness","intermediates","intermediation","interment","intermeshed","intermetrics","intermezzi","intermezzo","interminably","intermingle","intermission","intermittent","intermix","intermodule","intermolecular","intern","internal","internaldofilter","internalization","internalize","internally","internals","international","internationale","internationalism","internationalist","internationality","internationalization","internationalize","interne","internecine","internee","internet","internetwork","internist","internment","internship","internuclear","interocular","interoffice","interop","interoperability","interopservices","interp","interpenetrates","interpersonal","interplanetary","interplay","interpol","interpolate","interpolated","interpolation","interpose","interposer","interposition","interpret","interpretable","interpretation","interpretative","interpreted","interpreter","interpreting","interpretive","interpretor","interprets","interprocess","interprocessor","interquartile","interracial","interred","interregional","interregnum","interrelate","interrelated","interrelatedness","interrelation","interrelationship","interring","interrogate","interrogation","interrogative","interrogator","interrogatory","interrupt","interrupted","interruptedexception","interrupter","interruptibility","interruptible","interruption","interrupts","interscholastic","intersect","intersection","intersects","intersession","interspecies","intersperse","interspersion","interstage","interstate","interstellar","interstice","interstitial","intersurvey","intertask","intertwine","interurban","interval","intervals","intervene","intervener","intervenor","intervention","interventionism","interventionist","interview","interviewed","interviewee","interviewer","interviewing","interviews","intervocalic","interweave","interwove","interwoven","intestacy","intestinal","intestine","inti","intifada","intimacy","intimal","intimate","intimateness","intimater","intimation","intimidate","intimidating","intimidation","intl","into","intolerable","intolerableness","intolerant","intonate","intonation","intoxicant","intoxicate","intoxicated","intoxication","intptr","intra","intracellular","intracity","intraclass","intracohort","intractability","intractable","intractableness","intradepartmental","intrafamily","intragenerational","intraindustry","intraline","intrametropolitan","intramural","intramuscular","intranasal","intranet","intransigence","intransigent","intransitive","intraoffice","intraprocess","intrapulmonary","intraregional","intrasectoral","intrastate","intratissue","intrauterine","intravenous","intrepid","intrepidity","intrepidness","intricacy","intricate","intricateness","intrigue","intriguer","intriguing","intrinsic","intrinsically","intro","introduce","introduced","introducer","introduces","introducing","introduction","introductory","introit","introject","introspect","introspection","introspective","introspectiveness","introversion","introvert","intrude","intruder","intrusion","intrusive","intrusiveness","ints","intubate","intubation","intuit","intuition","intuitionist","intuitive","intuitiveness","intval","intvalue","inuit","inundate","inundation","inure","inv","invade","invader","invalid","invalidate","invalidated","invalidism","invalidoperationexception","invariable","invariant","invariantculture","invasion","invasive","invective","invectiveness","inveigh","inveigher","inveighs","inveigle","inveigler","invent","invented","invention","inventive","inventiveness","inventor","inventory","inverness","inverse","inversion","invert","inverted","inverter","invertible","invest","invested","investigate","investigating","investigation","investigator","investigatory","investing","investiture","investment","investments","investor","investors","inveteracy","inveterate","inviability","invidious","invidiousness","invigilate","invigilator","invigorate","invigorating","invigoration","invigorations","invincibility","invincible","invincibleness","invincibly","inviolability","inviolably","inviolate","inviolateness","inviscid","invisible","invisibleness","invitation","invitational","invite","invited","invitee","inviter","inviting","invocable","invocablehandlermethod","invocate","invocation","invocations","invocationtargetexception","invoice","invoices","invoke","invoked","invokelater","invokemethod","invokenative","invoker","invokes","invoking","involuntariness","involuntary","involute","involution","involutorial","involve","involved","involvedly","involvement","involver","involves","involving","invulnerability","invulnerableness","inward","inwardness","io","ioc","ioctl","iodate","iodation","iodide","iodinate","iodine","iodize","ioe","ioerror","ioexception","iolande","iolanthe","ion","iona","ionesco","ionian","ionic","ionicframework","ionization","ionize","ionized","ionizer","ionizes","ionizing","ionosphere","ionospheric","iorgo","iormina","ios","iosep","iostream","iot","iota","iou","ioutils","iowa","iowan","ip","ipa","ipad","ipaddress","ipc","ipecac","ipendpoint","iphigenia","iphone","iphoneos","iphones","iphonesimulator","ipn","ipo","ipod","ips","ipso","ipsum","ipswich","iptables","ipv","ipython","iq","iqbal","iqueryable","iquitos","ir","ira","iran","iranian","iraq","iraqi","irascibility","irascible","irascibly","irate","irateness","irb","irc","ire","ireful","ireland","irena","irene","irenic","irepository","irides","iridescence","iridescent","iridium","irids","irina","iris","irish","irishman","irishmen","irishwoman","irishwomen","irita","irk","irksome","irksomeness","irkutsk","irma","iron","ironclad","ironer","ironic","ironical","ironicalness","ironing","ironmonger","ironmongery","ironpython","ironside","ironstone","ironware","ironwood","ironwork","ironworker","irony","iroquoian","iroquois","irow","irq","irradiate","irradiation","irrational","irrationality","irrationalness","irrawaddy","irreclaimable","irreconcilability","irreconcilable","irreconcilableness","irreconcilably","irrecoverable","irrecoverableness","irrecoverably","irredeemable","irredeemably","irredentism","irredentist","irreducibility","irreducible","irreducibly","irreflexive","irrefutable","irrefutably","irregardless","irregular","irregularity","irrelevance","irrelevancy","irrelevant","irreligious","irremediable","irremediableness","irremediably","irremovable","irreparable","irreparableness","irreparably","irreplaceable","irrepressible","irrepressibly","irreproachable","irreproachableness","irreproachably","irreproducibility","irreproducible","irresistibility","irresistible","irresistibleness","irresistibly","irresolute","irresoluteness","irresolution","irresolvable","irrespective","irresponsibility","irresponsible","irresponsibleness","irresponsibly","irretrievable","irretrievably","irreverence","irreverent","irreversible","irreversibly","irrevocable","irrevocableness","irrevocably","irrigable","irrigate","irrigation","irritability","irritable","irritableness","irritably","irritant","irritate","irritated","irritating","irritation","irrupt","irruption","irs","irtish","irv","irvin","irvine","irving","irwin","irwinn","is","isa","isaac","isaak","isabel","isabelita","isabella","isabelle","isac","isacco","isactive","isadmin","isador","isadora","isadore","isahella","isaiah","isak","isarray","isassignablefrom","isauthenticated","isbn","iscariot","ischecked","isconnected","isdeleted","isdigit","isdirectory","iseabal","isempty","isenabled","isequal","isequaltostring","iserror","iservice","isexpanded","isfahan","isfile","ish","isherwood","ishidden","ishim","ishmael","ishtar","isiah","isiahi","isidor","isidora","isidore","isidoro","isidro","isin","isinglass","isinstance","isis","iskindofclass","isl","islam","islamabad","islamic","island","islander","islandia","islands","isle","islet","isloading","isloggedin","ism","ismael","ismatch","isn","isnan","isnt","isnull","isnullorempty","isnullorwhitespace","isnumber","isnumeric","iso","isobar","isobaric","isobel","isochronal","isochronous","isocline","isocyanate","isodate","isodine","isolate","isolated","isolation","isolationism","isolationist","isolationistic","isolator","isolde","isomer","isomeric","isomerism","isometric","isometrically","isometrics","isomorph","isomorphic","isomorphically","isomorphism","isopen","isoperimetrical","isopleth","isopleths","isosceles","isostatic","isotherm","isothermal","isotonic","isotope","isotopic","isotropic","isotropically","isotropy","isp","ispahan","ispell","isplaying","ispostback","isprime","isr","israel","israeli","israelite","isreadonly","isrequired","isrunning","iss","issac","isselected","isset","issi","issiah","issie","issuable","issuance","issuant","issue","issuecomment","issued","issuer","issues","issuing","issy","ist","istanbul","isthmian","isthmus","istream","istrue","istvan","isuzu","isvalid","isvisible","it","itaipu","ital","italian","italianate","italic","italicization","italicize","italicized","italy","itasca","itch","itchiness","itchy","itcorp","itel","item","itemarray","itemcode","itemcontainerstyle","itemcount","itemgetter","itemgroup","itemid","itemization","itemize","itemized","itemizer","itemizes","itemlabel","itemlist","itemname","itemprop","items","itemscontrol","itemspanel","itemspaneltemplate","itemssource","itemstyle","itemtemplate","itemtype","itemvalue","itemview","iter","iterable","iterate","iterated","iterates","iterating","iteration","iterations","iterative","iterator","iterators","iteritems","itertools","itext","itextpdf","itextsharp","ithaca","ithacan","itinerant","itinerary","itm","ito","itr","its","itself","itt","itunes","iu","iud","iv","iva","ivan","ivanhoe","ivar","ive","iver","ivett","ivette","ivie","ivonne","ivor","ivory","ivs","ivy","iw","iwc","ix","iy","izaak","izabel","izak","izanagi","izanami","izhevsk","izmir","izvestia","izzy","j","ja","jab","jabbed","jabber","jabberer","jabbing","jabez","jablonsky","jabot","jacaranda","jacenta","jacinda","jacinta","jacintha","jacinthe","jack","jackal","jackass","jackboot","jackdaw","jackelyn","jacket","jacketed","jackhammer","jacki","jackie","jackknife","jackknives","jacklin","jacklyn","jackman","jackpot","jackquelin","jackqueline","jackrabbit","jackson","jacksonian","jacksonville","jackstraw","jacky","jaclin","jaclyn","jacob","jacobean","jacobi","jacobian","jacobin","jacobite","jacobo","jacobs","jacobsen","jacobson","jacobus","jacoby","jacoco","jacquard","jacquelin","jacqueline","jacquelyn","jacquelynn","jacquenetta","jacquenette","jacques","jacquetta","jacquette","jacqui","jacquie","jacuzzi","jacynth","jada","jade","jaded","jadedness","jadeite","jae","jaeger","jag","jagged","jaggedness","jagger","jaggers","jagging","jaguar","jail","jailbird","jailbreak","jailer","jaime","jaimie","jain","jaine","jainism","jaipur","jakarta","jake","jakie","jakob","jalapeo","jalopy","jalousie","jam","jamaal","jamaica","jamaican","jamal","jamar","jamb","jambalaya","jamboree","jame","jamel","james","jameson","jamestown","jamesy","jamey","jami","jamie","jamil","jamill","jamima","jamison","jammal","jammed","jammie","jamming","jan","jana","janacek","janaya","janaye","jandy","jane","janean","janeczka","janeen","janeiro","janek","janel","janela","janell","janella","janelle","janene","janenna","janessa","janesville","janet","janeta","janetta","janette","janeva","janey","jangle","jangler","jangly","jania","janice","janie","janifer","janina","janine","janis","janissary","janith","janitor","janitorial","janka","janna","jannel","jannelle","jannie","janos","janot","jansen","jansenist","january","janus","jany","japan","japanese","japanned","japanner","japanning","jape","japura","jaquelin","jaquelyn","jaquenetta","jaquenette","jaquith","jar","jarad","jard","jardinire","jareb","jared","jarful","jargon","jarib","jarid","jarlsberg","jarrad","jarray","jarred","jarret","jarrett","jarrid","jarring","jarrod","jars","jarvis","jase","jasen","jasmin","jasmina","jasmine","jason","jasper","jasperreports","jastrow","jasun","jato","jaundice","jaundiced","jaunt","jauntily","jauntiness","jaunty","java","javac","javadoc","javadocs","javaee","javafx","javamail","javanese","javascript","javascripts","javascriptserializer","javase","javassist","javax","javelin","javier","jaw","jawbone","jawbreaker","jawline","jax","jaxartes","jaxb","jaxbcontext","jaxrs","jaxws","jay","jayapura","jaybird","jaycee","jaye","jayme","jaymee","jaymie","jayne","jaynell","jayson","jaywalk","jaywalker","jazmin","jazz","jazziness","jazzmen","jazzy","jb","jboss","jbutton","jc","jcenter","jcheckbox","jcombobox","jcomponent","jcp","jcr","jcs","jct","jd","jdavie","jdbc","jdbctemplate","jdialog","jdk","jdt","je","jealous","jealousness","jealousy","jean","jeana","jeane","jeanelle","jeanette","jeanie","jeanine","jeanna","jeanne","jeannette","jeannie","jeannine","jecho","jed","jedd","jeddy","jedediah","jedi","jedidiah","jee","jeep","jeer","jeerer","jeering","jeeves","jeez","jeff","jefferey","jefferson","jeffersonian","jeffery","jeffie","jeffrey","jeffry","jeffy","jehad","jehanna","jehoshaphat","jehovah","jehu","jejuna","jejune","jejuneness","jejunum","jekyll","jelene","jell","jello","jelly","jellybean","jellyfish","jellying","jellylike","jellyroll","jemie","jemima","jemimah","jemmie","jemmy","jen","jena","jenda","jenelle","jeni","jenica","jeniece","jenifer","jeniffer","jenilee","jenine","jenkins","jenn","jenna","jennee","jenner","jennet","jennette","jenni","jennica","jennie","jennifer","jennilee","jennine","jennings","jenny","jeno","jens","jensen","jeopard","jeopardize","jeopardy","jephthah","jerad","jerald","jeralee","jeramey","jeramie","jere","jereme","jeremiad","jeremiah","jeremiahs","jeremias","jeremie","jeremy","jeri","jericho","jerk","jerker","jerkily","jerkin","jerkiness","jerkwater","jerky","jermain","jermaine","jermayne","jeroboam","jerold","jerome","jeromy","jerri","jerrie","jerrilee","jerrilyn","jerrine","jerrod","jerrold","jerrome","jerry","jerrybuilt","jerrylee","jersey","jerusalem","jervis","jes","jess","jessa","jessalin","jessalyn","jessamine","jessamyn","jesse","jessee","jesselyn","jessey","jessi","jessica","jessie","jessika","jessy","jest","jester","jesting","jesuit","jesus","jet","jetbrains","jeth","jethro","jetliner","jetport","jetsam","jetted","jetting","jettison","jetty","jew","jewel","jeweler","jewelery","jewell","jewelle","jewelled","jewellery","jewelry","jewess","jewish","jewishness","jewry","jezebel","jf","jfilechooser","jfk","jframe","jg","jhipster","jib","jibbed","jibbing","jibe","jid","jidda","jiff","jiffy","jig","jigged","jigger","jigging","jiggle","jiggly","jigsaw","jihad","jilin","jill","jillana","jillane","jillayne","jilleen","jillene","jilli","jillian","jillie","jilly","jilt","jilter","jim","jimenez","jimmie","jimmy","jimsonweed","jinan","jingle","jingler","jingly","jingo","jingoism","jingoist","jingoistic","jinja","jinn","jinnah","jinni","jinny","jinrikisha","jinx","jioendpoint","jira","jit","jitney","jitter","jitterbug","jitterbugged","jitterbugger","jitterbugging","jittery","jiujitsu","jivaro","jive","jj","jk","jkl","jks","jl","jlabel","jlist","jls","jm","jmenu","jmenuitem","jmeter","jmp","jms","jmx","jna","jndi","jni","jnienv","jnlp","jo","joachim","joan","joana","joane","joanie","joann","joanna","joanne","joaquin","job","jobbed","jobber","jobbery","jobbing","jobey","jobholder","jobi","jobid","jobie","jobina","jobj","jobject","jobless","joblessness","jobname","jobrel","jobs","jobtitle","joby","jobye","jobyna","jocasta","jocelin","joceline","jocelyn","jocelyne","jock","jockey","jocko","jockstrap","jocose","jocoseness","jocosity","jocular","jocularity","jocund","jocundity","joda","jodee","jodhpurs","jodi","jodie","jody","joe","joeann","joel","joela","joelie","joell","joella","joelle","joellen","joelly","joellyn","joelynn","joesph","joete","joey","jog","jogged","jogger","jogging","joggle","joggler","jogjakarta","johan","johann","johanna","johannah","johannes","johannesburg","johansen","johanson","john","johna","johnath","johnathan","johnathon","johnette","johnie","johnna","johnnie","johnny","johnnycake","johns","johnsen","johnson","johnston","johnstown","johny","joice","join","joincolumn","joincolumns","joined","joiner","joinery","joining","joins","joint","jointable","jointed","jointedness","jointer","jointly","jointures","joist","jojo","joke","joker","jokes","jokey","jokier","jokiest","jokily","joking","jolee","joleen","jolene","joletta","joli","jolie","joliet","joline","jolla","jollification","jollily","jolliness","jollity","jolly","jolson","jolt","jolter","joly","jolyn","jolynn","jon","jonah","jonahs","jonas","jonathan","jonathon","jone","jonell","jones","joni","jonie","jonquil","jonson","joomla","jooq","joplin","joptionpane","jordain","jordan","jordana","jordanian","jordanna","jordon","jorey","jorgan","jorge","jorgensen","jorgenson","jori","jorie","jorrie","jorry","jory","joscelin","jose","josee","josef","josefa","josefina","joseito","joseph","josepha","josephina","josephine","josephs","josephson","josephus","josey","josh","josher","joshia","joshua","joshuah","josi","josiah","josias","josie","joss","josselyn","jostle","josue","josy","jot","jotted","jotter","jotting","joule","jounce","jouncy","jourdain","jourdan","journal","journalese","journalism","journalist","journalistic","journalize","journalized","journalizer","journey","journeyer","journeyman","journeymen","joust","jouster","jovanovich","jove","jovial","joviality","jovian","jowl","jowly","joy","joya","joyan","joyann","joyce","joycean","joycelin","joye","joyful","joyfuller","joyfullest","joyfulness","joyless","joylessness","joyner","joyous","joyousness","joyridden","joyride","joyrode","joystick","jozef","jp","jpa","jpanel","jpeg","jpg","jpn","jq","jqgrid","jqm","jqplot","jquery","jquerymobile","jqueryui","jqxhr","jr","jradiobutton","jre","jruby","js","jsandye","jsbin","jsch","jscript","jscrollpane","jsessionid","jsf","jsfiddle","jshint","json","jsonarray","jsonb","jsonconvert","jsondata","jsonexception","jsonobj","jsonobject","jsonobjectwithdata","jsonp","jsonparser","jsonpath","jsonproperty","jsonreader","jsonrequestbehavior","jsonresponse","jsonresult","jsonserializer","jsonstr","jsonstring","jsoup","jsp","jspservlet","jsr","jsref","jstl","jstree","jsx","jt","jta","jtable","jtc","jtextarea","jtextfield","juan","juana","juanita","juarez","jubal","jubilant","jubilate","jubilation","jubilee","jud","judah","judaic","judaical","judaism","judas","judd","juddered","juddering","jude","judea","judge","judgement","judger","judgeship","judging","judgment","judgmental","judi","judicable","judicatory","judicature","judicial","judiciary","judicious","judiciousness","judie","judith","juditha","judo","judon","judson","judy","judye","jug","jugate","jugful","jugged","juggernaut","jugging","juggle","juggler","jugglery","jugular","juice","juicer","juicily","juiciness","juicy","juieta","jujitsu","juju","jujube","jujutsu","juke","jukebox","jul","jule","julee","julep","juli","julia","julian","juliana","juliane","juliann","julianna","julianne","julie","julienne","juliet","julieta","julietta","juliette","julina","juline","julio","julissa","julita","julius","july","julys","jumble","jumbo","jumbotron","jump","jumped","jumper","jumpily","jumpiness","jumping","jumps","jumpsuit","jumpy","jun","junco","junction","juncture","june","juneau","junette","jung","jungfrau","jungian","jungle","junia","junie","junina","junior","juniority","juniper","junit","junk","junker","junkerdom","junket","junketeer","junkie","junkyard","juno","junta","jupiter","jupyter","jurassic","juridic","juridical","juried","jurisdiction","jurisdictional","jurisprudence","jurisprudent","jurisprudential","jurist","juristic","juror","jurua","jury","jurying","juryman","jurymen","jurywoman","jurywomen","just","justed","justen","juster","justest","justice","justiciable","justifiability","justifiable","justifiably","justification","justified","justifier","justify","justin","justina","justine","justing","justinian","justinn","justino","justis","justness","justo","justs","justus","jut","jute","jutish","jutland","jutted","jutting","juvenal","juvenile","juxtapose","juxtaposition","jv","jvm","jvms","jw","jwt","jyoti","jython","k","ka","kaaba","kabob","kaboom","kabuki","kabul","kacey","kacie","kacy","kaddish","kaela","kaffeeklatch","kaffeeklatsch","kafka","kafkaesque","kaftan","kagoshima","kahaleel","kahlil","kahlua","kahn","kai","kaia","kaifeng","kaila","kaile","kailey","kain","kaine","kaiser","kaitlin","kaitlyn","kaitlynn","kaja","kajar","kakalina","kala","kalahari","kalamazoo","kalashnikov","kalb","kale","kaleb","kaleena","kaleidescope","kaleidoscope","kaleidoscopic","kaleidoscopically","kalgoorlie","kali","kalie","kalil","kalila","kalina","kalinda","kalindi","kalle","kalli","kally","kalmyk","kalvin","kama","kamchatka","kamehameha","kameko","kamikaze","kamila","kamilah","kamillah","kampala","kampuchea","kan","kanchenjunga","kandace","kandahar","kandinsky","kandy","kane","kangaroo","kania","kankakee","kannada","kano","kanpur","kansan","kansas","kant","kantian","kanya","kaohsiung","kaolin","kaolinite","kaplan","kapok","kaposi","kappa","kaput","kara","karachi","karaf","karaganda","karakorum","karakul","karalee","karalynn","karamazov","karaoke","karat","karate","kare","karee","kareem","karel","karen","karena","karenina","kari","karia","karie","karil","karilynn","karim","karin","karina","karine","kariotta","karisa","karissa","karita","karl","karla","karlan","karlee","karleen","karlen","karlene","karlie","karlik","karlis","karloff","karlotta","karlotte","karly","karlyn","karma","karmen","karmic","karna","karney","karo","karol","karola","karole","karolina","karoline","karoly","karon","karp","karrah","karrie","karroo","karry","kart","kary","karyl","karylin","karyn","kasai","kasey","kashmir","kaspar","kasparov","kasper","kass","kassandra","kassey","kassi","kassia","kassie","kat","kata","katakana","katalin","kate","katee","katelyn","katerina","katerine","katey","kath","katha","katharina","katharine","katharyn","kathe","katherina","katherine","katheryn","kathi","kathiawar","kathie","kathleen","kathlin","kathmandu","kathrine","kathryn","kathryne","kathy","kathye","kati","katie","katina","katine","katinka","katleen","katlin","katmai","katmandu","katowice","katrina","katrine","katrinka","katti","kattie","katuscha","katusha","katy","katya","katydid","katz","kauai","kauffman","kaufman","kaunas","kaunda","kawabata","kawasaki","kay","kayak","kaycee","kaye","kayla","kayle","kaylee","kayley","kaylil","kaylyn","kayne","kayo","kazakh","kazakhstan","kazan","kazantzakis","kazoo","kb","kbd","kc","kcal","kd","kde","ke","kean","keane","kearney","keary","keaton","keats","kebab","keck","keefe","keefer","keegan","keel","keelby","keeley","keelhaul","keelia","keely","keen","keenan","keene","keener","keening","keenness","keep","keepalive","keeper","keeping","keeps","keepsake","keewatin","keg","kegged","kegging","keillor","keir","keisha","keith","kelbee","kelby","kelcey","kelci","kelcie","kelcy","kele","kelila","kellby","kellen","keller","kelley","kelli","kellia","kellie","kellina","kellogg","kellsie","kelly","kellyann","kelp","kelsey","kelsi","kelsy","kelt","kelvin","kelwin","kemerovo","kemp","kempis","ken","kendal","kendall","kendell","kendo","kendra","kendre","kendrick","kenilworth","kenmore","kenn","kenna","kennan","kennecott","kenned","kennedy","kennel","kenneth","kennett","kennie","kenning","kennith","kenny","keno","kenon","kenosha","kensington","kent","kenton","kentuckian","kentucky","kenya","kenyan","kenyatta","kenyon","keogh","keokuk","kepi","kepler","kept","ker","keras","keratin","kerberos","kerbside","kerby","kerchief","kerensky","keri","keriann","kerianne","kerk","kermie","kermit","kermy","kern","kerned","kernel","kernels","kerning","kerosene","kerouac","kerr","kerri","kerrie","kerrill","kerrin","kerry","kerstin","kerwin","kerwinn","kesley","keslie","kessia","kessiah","kessler","kestrel","ketch","ketchup","ketone","ketosis","kettering","ketti","kettie","kettle","kettledrum","kettleful","ketty","kev","kevan","keven","kevin","kevina","kevlar","kevon","kevorkian","kevyn","kewaskum","kewaunee","kewpie","key","keyboard","keyboardist","keyboards","keychain","keyclick","keycloak","keycode","keydown","keyed","keyerror","keyevent","keyframes","keyhole","keyname","keynes","keynesian","keynote","keynoter","keypad","keypair","keypath","keypoints","keypress","keypressed","keypunch","keypuncher","keyring","keys","keyset","keyspace","keystone","keystore","keystroke","keystrokes","keytime","keytool","keyup","keyvalue","keyvaluepair","keyword","keywords","kf","kg","kgb","kh","khabarovsk","khachaturian","khaki","khalid","khalil","khan","kharkov","khartoum","khayyam","khmer","khoisan","khomeini","khorana","khrushchev","khtml","khufu","khulna","khwarizmi","khyber","khz","ki","kia","kiah","kial","kib","kibana","kibble","kibbutz","kibbutzim","kibitz","kibitzer","kibosh","kick","kickapoo","kickback","kickball","kicker","kickoff","kicks","kickstand","kickstarter","kicky","kid","kidd","kidded","kidder","kiddie","kidding","kiddish","kiddo","kiddy","kiddying","kidless","kidnap","kidnaper","kidnaping","kidnapped","kidnapper","kidnapping","kidney","kids","kidskin","kieffer","kiel","kielbasa","kielbasi","kiele","kienan","kier","kierkegaard","kiersten","kieth","kiev","kigali","kikelia","kikuyu","kilauea","kile","kiley","kilian","kilimanjaro","kill","killdeer","killebrew","killed","killer","killian","killie","killing","killjoy","kills","killy","kiln","kilo","kilobaud","kilobit","kilobuck","kilobyte","kilocycle","kilogauss","kilogram","kilohertz","kilohm","kilojoule","kiloliter","kilometer","kiloton","kilovolt","kilowatt","kiloword","kilt","kilter","kim","kimball","kimbell","kimberlee","kimberley","kimberli","kimberly","kimberlyn","kimble","kimbra","kimmi","kimmie","kimmy","kimono","kin","kincaid","kind","kinda","kinder","kindergarten","kindergrtner","kindhearted","kindheartedness","kindle","kindler","kindliness","kindling","kindly","kindness","kindred","kinds","kine","kinect","kinematic","kinematics","kinesics","kinesthesis","kinesthetic","kinesthetically","kinetic","kinetically","kinetics","kinfolk","king","kingbird","kingdom","kingfisher","kinglet","kingliness","kingly","kingpin","kingsbury","kingship","kingsley","kingsly","kingston","kingstown","kingwood","kink","kinkily","kinkiness","kinky","kinna","kinney","kinnickinnic","kinnie","kinny","kinsey","kinsfolk","kinshasa","kinshasha","kinship","kinsley","kinsman","kinsmen","kinswoman","kinswomen","kiosk","kiowa","kip","kipling","kipp","kippar","kipped","kipper","kippie","kipping","kippy","kira","kirbee","kirbie","kirby","kirchhoff","kirchner","kirchoff","kirghistan","kirghiz","kirghizia","kiri","kiribati","kirinyaga","kirk","kirkland","kirkpatrick","kirkwood","kirov","kirsch","kirsten","kirsteni","kirsti","kirstin","kirstyn","kisangani","kishinev","kismet","kiss","kissee","kisser","kissiah","kissie","kissinger","kit","kitakyushu","kitbag","kitchen","kitchener","kitchenette","kitchenware","kite","kiter","kith","kiths","kitkat","kits","kitsch","kitschy","kitted","kitten","kittenish","kittenishness","kitti","kittie","kitting","kittiwakes","kitty","kivy","kiwanis","kiwi","kiwifruit","kizzee","kizzie","kk","kkk","kl","klan","klansman","klara","klarika","klarrisa","klass","klaus","klaxon","klee","kleenex","klein","kleinrock","klemens","klement","kleon","kleptomania","kleptomaniac","kliment","kline","klingon","klondike","kludge","kludger","kludgey","klutz","klutziness","klutzy","klux","klystron","km","kmeans","kml","kn","knack","knacker","knackwurst","knapp","knapsack","knauer","knave","knavery","knavish","knead","kneader","knee","kneecap","kneecapped","kneecapping","kneeing","kneel","kneeler","kneepad","knell","knelt","knesset","knew","kngwarreye","knick","knickerbocker","knickknack","knievel","knife","knight","knighthood","knightliness","knightly","knish","knit","knitr","knits","knitted","knitter","knitting","knitwear","knives","knob","knobbly","knobby","knobeloch","knock","knockabout","knockdown","knocker","knockoff","knockout","knockoutjs","knockwurst","knoll","knopf","knossos","knot","knothole","knotted","knottiness","knotting","knotty","know","knowable","knower","knowhow","knowing","knowingly","knowings","knowledge","knowledgeable","knowledgeableness","knowledgeably","knowledgecenter","knowles","known","knows","knox","knoxville","knuckle","knuckleball","knuckleduster","knucklehead","knudsen","knudson","knurl","knuth","knutsen","knutson","ko","koala","kobayashi","kobe","koch","kochab","kodak","kodaly","kodiak","koenig","koenigsberg","koenraad","koestler","kohinoor","kohl","kohler","kohlrabi","kohlrabies","kola","kolyma","kommunizma","kong","kongo","konrad","konstance","konstantin","konstantine","konstanze","koo","kook","kookaburra","kookiness","kooky","koontz","kopeck","koppers","kora","koral","koralle","koran","koranic","kordula","kore","korea","korean","korella","koren","koressa","korey","kori","korie","kornberg","korney","korrie","korry","kort","kory","korzybski","kosciusko","kosher","kossuth","kosygin","kotlin","kovacs","kowalewski","kowalski","kowloon","kowtow","kp","kph","kr","kraal","kraemer","kraft","krakatau","krakatoa","krakow","kramer","krasnodar","krasnoyarsk","krause","kraut","krebs","kremlin","kremlinologist","kremlinology","kresge","krieger","kriegspiel","krill","kringle","kris","krisha","krishna","krishnah","krispin","krissie","krissy","krista","kristal","kristan","kriste","kristel","kristen","kristi","kristian","kristie","kristien","kristin","kristina","kristine","kristo","kristofer","kristoffer","kristofor","kristoforo","kristopher","kristy","kristyn","krna","krnur","kroc","kroger","krone","kronecker","kronor","kropotkin","krueger","kruger","krugerrand","krupp","kruse","krypton","krysta","krystal","krystalle","krystle","krystyna","ks","ksh","kt","ku","kube","kubectl","kubelet","kubernetes","kublai","kubrick","kuchen","kudos","kudzu","kuenning","kuhn","kuibyshev","kumar","kumquat","kunming","kuomintang","kurd","kurdish","kurdistan","kurosawa","kurt","kurtis","kurtosis","kusch","kuwait","kuwaiti","kuznets","kuznetsk","kv","kvetch","kvp","kw","kwakiutl","kwangchow","kwangju","kwanzaa","kwargs","kwh","kx","ky","kyla","kyle","kylen","kylie","kylila","kylynn","kym","kynthia","kyoto","kyrgyzstan","kyrstin","kyushu","l","la","lab","laban","label","labeled","labeler","labelfor","labelled","labelledby","labellings","labels","labia","labial","labile","labiodental","labium","labor","laboratory","labore","labored","laboredness","laborer","laboring","laborings","laborious","laboriousness","laboris","laborsaving","laborum","labrador","labradorean","labs","laburnum","labyrinth","labyrinthine","labyrinths","lac","lace","laced","lacee","lacer","lacerate","laceration","laces","lacewing","lacey","lachesis","lachrymal","lachrymose","lacie","lacing","lacinia","lack","lackadaisic","lackadaisical","lackawanna","lacker","lackey","lacking","lackluster","lacks","laconic","laconically","lacquer","lacquerer","lacrosse","lactate","lactation","lactational","lacteal","lactic","lactose","lacuna","lacunae","lacus","lacy","lad","ladder","laddie","lade","laded","laden","ladened","ladening","lading","ladle","ladoga","ladonna","lady","ladybird","ladybug","ladyfinger","ladylike","ladylove","ladyship","laetitia","laetrile","lafayette","lafitte","lag","lager","laggard","laggardness","lagged","lagging","lagniappe","lagoon","lagos","lagrange","lagrangian","laguerre","laguna","lahore","laid","laidlaw","lain","laina","lainey","lair","laird","laissez","laity","laius","lake","lakehurst","lakeisha","laker","lakeside","lakewood","lakisha","lakshmi","lallygag","lallygagged","lallygagging","lalo","lam","lama","lamaism","lamar","lamarck","lamasery","lamaze","lamb","lambada","lambaste","lambda","lambdas","lambency","lambent","lambert","lambkin","lamborghini","lambskin","lambswool","lame","lamebrain","lamed","lameness","lament","lamentable","lamentableness","lamentably","lamentation","lamented","lamina","laminae","laminar","laminate","lamination","lammed","lammer","lamming","lammond","lamond","lamont","lamp","lampblack","lamplight","lamplighter","lampoon","lampooner","lamport","lamppost","lamprey","lampshade","lan","lana","lanae","lanai","lancashire","lancaster","lance","lancelot","lancer","lancet","land","landau","lander","landfall","landfill","landforms","landhold","landholder","landing","landis","landlady","landless","landlines","landlocked","landlord","landlubber","landmark","landmass","landon","landowner","landownership","landowning","landry","lands","landsat","landscape","landscaper","landslid","landslide","landslip","landsman","landsmen","landsteiner","landward","landwehr","lane","lanette","laney","lang","lange","langeland","langerhans","langford","langland","langley","langmuir","langsdon","langston","language","languages","languid","languidness","languish","languisher","languishing","languor","languorous","lani","lanie","lanita","lank","lankiness","lankness","lanky","lanna","lanni","lannie","lanny","lanolin","lansing","lantern","lanthanide","lanthanum","lanyard","lanzhou","lao","laocoon","laoreet","laotian","lap","lapack","lapboard","lapdog","lapel","lapidary","lapin","laplace","lapland","lapp","lapped","lappet","lapping","lapply","laps","lapse","lapsed","lapser","lapses","lapsing","laptop","laptops","lapwing","lara","laraine","laramie","laravel","larboard","larcenist","larcenous","larceny","larch","lard","larder","lardner","lardy","laredo","large","largehearted","largely","largemouth","largeness","larger","largess","largest","largish","largo","lari","lariat","larina","larine","larisa","larissa","lark","larker","larkspur","larousse","larry","lars","larsen","larson","larva","larvae","larval","laryngeal","larynges","laryngitides","laryngitis","larynx","laryssa","las","lasagna","lasagne","lascaux","lascivious","lasciviousness","lase","laser","lash","lashed","lasher","lashing","lass","lassa","lassen","lassie","lassitude","lasso","lassoer","last","laster","lastindex","lastindexof","lasting","lastingness","lastly","lastmodified","lastname","lastrow","laszlo","lat","latasha","latashia","latch","latching","latchkey","late","latecomer","lated","lately","latency","lateness","latent","later","lateral","lateralization","lateran","latest","latex","lath","lathe","lather","latherer","lathery","lathing","lathrop","laths","latia","latices","latin","latina","latinate","latino","latish","latisha","latitude","latitudinal","latitudinarian","latitudinary","latlng","latonya","latoya","latrena","latrina","latrine","latrobe","latte","latter","lattice","latticework","latticing","lattimer","latvia","latvian","laud","laudably","laudanum","laudatory","lauder","lauderdale","lauds","laue","laugh","laughable","laughableness","laughably","laugher","laughing","laughingstock","laughs","laughter","laughton","launce","launch","launched","launcher","launches","launching","launchoptions","launchpad","launder","laundered","launderer","launderette","laundress","laundrette","laundromat","laundry","laundryman","laundrymen","laundrywoman","laundrywomen","laura","lauraine","laural","lauralee","laurasia","laure","laureate","laureateship","lauree","laureen","laurel","laurella","lauren","laurena","laurence","laurene","laurent","laurentian","lauretta","laurette","lauri","laurianne","laurice","laurie","lauritz","lauryn","lausanne","lava","lavage","laval","lavaliere","lavatory","lave","lavena","lavender","lavern","laverna","laverne","lavina","lavinia","lavinie","lavish","lavishness","lavoisier","lavonne","law","lawanda","lawbreaker","lawbreaking","lawford","lawful","lawfulness","lawgiver","lawgiving","lawless","lawlessness","lawmaker","lawmaking","lawman","lawmen","lawn","lawnmower","lawrence","lawrenceville","lawrencium","lawry","laws","lawson","lawsuit","lawton","lawyer","lawyers","lax","laxative","laxativeness","laxer","laxes","laxity","laxness","lay","layabout","layamon","layaway","layer","layered","layering","layers","layette","layla","layman","laymen","layne","layney","layoff","layout","layoutinflater","layoutmanager","layoutparams","layouts","layoutsubviews","layover","laypeople","layperson","lays","layton","layup","laywoman","laywomen","lazar","lazare","lazaro","lazarus","laze","lazily","laziness","lazuli","lazy","lazybones","lb","lbj","lbl","lbound","lbs","lc","lcd","lcm","lcom","ld","lda","ldap","ldc","ldflags","ldr","le","lea","leach","leachate","lead","leadbelly","leaded","leaden","leadenness","leader","leaderboard","leaderless","leaders","leadership","leading","leads","leadsman","leadsmen","leaf","leafage","leafhopper","leafiness","leafless","leaflet","leafstalk","leafy","league","leaguer","leah","leak","leakage","leaked","leaker","leakey","leakiness","leaking","leaks","leaky","lean","leander","leandra","leaner","leaning","leann","leanna","leanne","leanness","leanor","leanora","leap","leaper","leapfrog","leapfrogged","leapfrogging","lear","learn","learned","learnedly","learnedness","learner","learning","learns","learnt","leary","leas","lease","leaseback","leasehold","leaseholder","leaser","leash","leasing","least","leastwise","leather","leatherette","leathern","leatherneck","leathery","leave","leaven","leavened","leavening","leavenworth","leaver","leaves","leaving","lebanese","lebanon","lebbie","lebensraum","lebesgue","leblanc","lecher","lecherous","lecherousness","lechery","lecithin","lectern","lecture","lecturer","lectures","lectureship","lectus","led","leda","lederberg","ledge","ledger","lee","leeann","leeanne","leech","leeds","leek","leela","leelah","leeland","leena","leer","leeriness","leering","leery","leesa","leese","leeuwenhoek","leeward","leeway","left","leftism","leftist","leftmost","leftover","leftward","lefty","leg","legacy","legal","legalese","legalism","legalistic","legality","legalization","legalize","legalized","legally","legate","legatee","legation","legato","legend","legendarily","legendary","legendre","leger","legerdemain","legged","legginess","legging","leggy","leghorn","legibility","legible","legibly","legion","legionary","legionnaire","legislate","legislation","legislative","legislator","legislature","legit","legitimacy","legitimate","legitimation","legitimatize","legitimization","legitimize","legless","legman","legmen","lego","legra","legree","legroom","legs","legstraps","legume","leguminous","legwork","lehigh","lehman","lei","leia","leibniz","leicester","leiden","leif","leigh","leigha","leighton","leila","leilah","leipzig","leisha","leisure","leisureliness","leisurely","leisurewear","leitmotif","leitmotiv","lek","lela","lelah","leland","lelia","lem","lemaitre","lemar","lemke","lemma","lemme","lemmie","lemming","lemmy","lemon","lemonade","lemony","lemuel","lemur","lemuria","len","lena","lenard","lenci","lend","lender","lenee","lenette","lenght","length","lengthen","lengthener","lengthily","lengthiness","lengths","lengthwise","lengthy","lenience","leniency","lenient","lenin","leningrad","leninism","leninist","lenitive","lenka","lenna","lennard","lennie","lennon","lenny","leno","lenoir","lenora","lenore","lenovo","lens","lent","lenticular","lentil","lento","leo","leodora","leoine","leola","leoline","leon","leona","leonanie","leonard","leonardo","leoncavallo","leone","leonel","leonelle","leonerd","leonhard","leonid","leonidas","leonie","leonine","leonor","leonora","leonore","leontine","leontyne","leopard","leopardess","leopardskin","leopold","leopoldo","leopoldville","leora","leotard","leper","lepidus","lepke","leprechaun","leprosy","leprous","lepta","lepton","lepus","lerner","leroi","leroy","les","lesa","lesbian","lesbianism","leshia","lesion","lesley","lesli","leslie","lesly","lesotho","less","lessee","lessen","lesseps","lesser","lesses","lessie","lessing","lesson","lessons","lessor","lest","lester","lesya","let","leta","letdown","letha","lethal","lethality","lethargic","lethargically","lethargy","lethe","lethia","leticia","letisha","letitia","letizia","lets","letsencrypt","letta","letter","letterbox","lettered","letterer","letterhead","lettering","letterman","lettermen","letterpress","letters","letti","lettie","letting","lettuce","letty","letup","leukemia","leukemic","leukocyte","leupold","lev","levant","levee","leveeing","level","leveled","leveler","levelheaded","levelheadedness","leveling","levelness","levels","levenshtein","lever","leverage","levesque","levey","levi","leviathan","levier","levin","levine","levitate","levitation","leviticus","levitt","levity","levon","levy","lew","lewd","lewdness","lewellyn","lewes","lewie","lewinsky","lewis","lewiss","lex","lexeme","lexer","lexi","lexical","lexicographer","lexicographic","lexicographical","lexicography","lexicon","lexie","lexine","lexington","lexus","lexy","leyden","leyla","lezley","lezlie","lf","lfs","lft","lg","lh","lhasa","lhotse","lhs","li","lia","liability","liable","liaise","liaison","liam","lian","liana","liane","lianna","lianne","liar","lib","libation","libbed","libbey","libbi","libbie","libbing","libboost","libby","libc","libcore","libcurl","libdispatch","libel","libeler","libelous","liberace","liberal","liberalism","liberality","liberalization","liberalize","liberalized","liberalizer","liberalness","liberate","liberation","liberationists","liberator","liberia","liberian","libero","libertarian","libertarianism","libertine","liberty","libexec","libgcc","libgdx","libidinal","libidinous","libidinousness","libido","libopencv","libpng","libra","librarian","libraries","library","libretoes","libretos","librettist","libretto","libreville","librium","libs","libstdc","libsystem","libusb","libx","libxml","libya","libyan","lice","licence","license","licensed","licensee","licenser","licenses","licensing","licensor","licentiate","licentious","licentiousness","licha","lichee","lichen","lichtenstein","lichter","licit","lick","licked","licker","lickerish","licking","licorice","lid","lida","lidded","lidding","lidia","lidless","lido","lie","lieberman","liebfraumilch","liechtenstein","lied","lief","liefs","liege","lien","lier","lies","liesa","lieu","lieut","lieutenancy","lieutenant","life","lifeblood","lifeboat","lifebuoy","lifecycle","lifecyclebase","lifeforms","lifeguard","lifeless","lifelessness","lifelike","lifelikeness","lifeline","lifelong","lifer","liferay","lifesaver","lifesaving","lifespan","lifestyle","lifetaking","lifetime","lifework","lifo","lift","lifter","lifting","liftoff","ligament","ligand","ligate","ligation","ligature","light","lightblue","lightbox","lighted","lighten","lightener","lightening","lighter","lightered","lightering","lighters","lightest","lightface","lightgray","lightheaded","lighthearted","lightheartedness","lighthouse","lighting","lightly","lightness","lightning","lightproof","lights","lightship","lightweight","ligneous","lignite","lignum","ligula","likability","likable","likableness","like","likeability","liked","likelihood","likely","liken","likeness","liker","likes","likest","likewise","liking","lil","lila","lilac","lilah","lilia","lilian","liliana","liliane","lilith","liliuokalani","lilla","lille","lilli","lillian","lillie","lilliput","lilliputian","lilllie","lilly","lilongwe","lilt","lilting","lily","lilyan","lim","lima","limb","limbaugh","limber","limbered","limberness","limbers","limbic","limbless","limbo","limburger","lime","limeade","limekiln","limelight","limerick","limestone","limit","limitability","limitably","limitation","limitations","limited","limitedly","limitedness","limiter","limiting","limitless","limitlessness","limits","limn","limo","limoges","limousine","limp","limper","limpet","limpid","limpidity","limpidness","limpness","limpopo","limy","lin","lina","linage","linalg","linc","linchpin","lincoln","lind","linda","lindberg","lindbergh","linden","lindholm","lindi","lindie","lindon","lindquist","lindsay","lindsey","lindstrom","lindsy","lindy","line","linea","lineage","lineal","lineament","linear","lineargradientbrush","linearity","linearize","linearlayout","linearlayoutmanager","linebacker","linechart","linecolor","lined","linefeed","linell","lineman","linemen","linen","lineno","linenumber","liner","lines","linesman","linesmen","linestyle","linet","lineto","linette","lineup","linewidth","ling","linger","lingerer","lingerie","lingering","lingo","lingoes","lingua","lingual","linguine","linguini","linguist","linguistic","linguistically","linguistics","liniment","lining","link","linkable","linkage","linkbutton","linked","linkedhashmap","linkedin","linkedlist","linker","linkid","linking","links","linkup","linn","linnaeus","linnea","linnell","linnet","linnie","lino","linode","linoel","linoleum","linotype","linq","linseed","linspace","lint","lintel","linter","linton","linty","linus","linux","linwood","linzy","lion","lionel","lionello","lioness","lionhearted","lionization","lionize","lionizer","lip","lipase","lipid","liposuction","lipped","lipper","lippi","lipping","lippmann","lippy","lipread","lipschitz","lipscomb","lipstick","lipton","liq","liquefaction","liquefier","liquefy","liqueur","liquibase","liquid","liquidate","liquidation","liquidator","liquidity","liquidize","liquidizer","liquidness","liquor","liquorice","liquorish","lira","lire","lis","lisa","lisabeth","lisbeth","lisbon","lise","lisetta","lisette","lisha","lishe","lisle","lisp","lisper","liss","lissa","lissajous","lissi","lissie","lissome","lissomeness","lissomness","lissy","list","lista","listactivity","listadapter","listb","listbox","listboxitem","listdata","listdir","liste","listed","listen","listener","listeners","listening","listens","lister","listerine","listfiles","listfragment","listid","listing","listings","listitem","listitems","listless","listlessness","listnode","liston","lists","listview","listviewitem","liszt","lit","lita","litany","litchi","lite","liter","literacy","literal","literalism","literalistic","literally","literalness","literals","literariness","literary","literate","literati","literation","literature","lithe","litheness","lithesome","lithium","lithograph","lithographer","lithographic","lithographically","lithographs","lithography","lithology","lithosphere","lithospheric","lithuania","lithuanian","litigant","litigate","litigation","litigator","litigious","litigiousness","litmus","litotes","litter","litterbug","little","littleneck","littleness","littleton","litton","littoral","littrateur","liturgic","liturgical","liturgics","liturgist","liturgy","liuka","liv","liva","livability","livable","livableness","livably","live","lived","livedata","livelihood","liveliness","livelong","lively","liven","liveness","liver","liveried","liverish","livermore","liverpool","liverpudlian","liverwort","liverwurst","livery","liveryman","liverymen","lives","livestock","livia","livid","lividness","living","livingness","livingston","livingstone","livonia","livvie","livvy","livvyy","livy","liz","liza","lizabeth","lizard","lizbeth","lizette","lizzie","lizzy","ljava","ljubljana","lk","ll","llama","llano","llb","llc","lld","lldb","llewellyn","lloyd","llvm","llywellyn","lm","ln","lname","lng","lnk","lo","load","loadable","loadclass","loaddata","loaded","loader","loaders","loadfile","loadhtml","loadimage","loading","loadlibrary","loadmodule","loads","loadstar","loadstone","loadurl","loadxml","loaf","loafer","loam","loamy","loan","loaner","loaning","loans","loansharking","loanword","loath","loathe","loather","loathing","loathness","loathsome","loathsomeness","loaves","lob","lobachevsky","lobar","lobbed","lobber","lobbing","lobby","lobbyist","lobe","lobortis","lobotomist","lobotomize","lobotomy","lobster","lobular","lobularity","lobule","loc","local","localcontainerentitymanagerfactorybean","localdate","localdatetime","localdb","locale","locales","localhost","localisms","locality","localization","localize","localized","localizeddescription","localizer","localizes","locally","localname","locals","localstorage","localtime","locatable","locate","located","locater","locating","location","locational","locationid","locationlistener","locationmanager","locationprovider","locationrequest","locations","locative","locator","loch","lochinvar","lochs","loci","lock","lockable","locke","lockean","locked","locker","locket","lockhart","lockheed","lockian","locking","lockjaw","locknut","lockout","locks","locksmith","locksmithing","locksmiths","lockstep","lockup","lockwood","loco","locomotion","locomotive","locomotor","locomotory","locoweed","locus","locust","locution","lodash","lode","lodestar","lodestone","lodge","lodged","lodgepole","lodger","lodges","lodging","lodgment","lodovico","lodowick","lodz","loeb","loella","loewe","loewi","loft","lofter","loftily","loftiness","lofty","log","logan","loganberry","logarithm","logarithmic","logarithmically","logback","logbook","logcat","loge","logfile","logged","loggedin","logger","loggerfactory","loggerhead","loggers","loggia","logging","logic","logical","logicality","logically","logicalness","logician","login","loginactivity","loginbutton","logincontroller","loginform","loginpage","logins","loginurl","loginview","logion","logistic","logistical","logits","logjam","loglevel","logmanager","logo","logon","logos","logotype","logout","logrolling","logs","logstash","logy","lohengrin","loin","loincloth","loincloths","loire","lois","loise","loiter","loiterer","loki","lol","lola","loleta","lolita","loll","loller","lollipop","lolly","lomb","lombard","lombardi","lombardy","lombok","lome","lon","lona","london","londonderry","londoner","lone","lonee","loneliness","lonely","loneness","loner","lonesome","lonesomeness","long","longboat","longbow","longed","longeing","longer","longest","longevity","longfellow","longhair","longhand","longhorn","longing","longish","longitude","longitudinal","longness","longs","longshoreman","longshoremen","longsighted","longstanding","longstreet","longsword","longterm","longtime","longueuil","longueur","longways","longword","loni","lonna","lonnard","lonni","lonnie","lonny","loofah","loofahs","look","lookahead","lookalike","lookat","lookbehind","looked","looker","looking","lookout","looks","lookup","lookups","loom","looming","loomis","loon","loony","loop","loopback","looped","looper","loophole","looping","loops","loopy","loose","loosed","looseleaf","loosely","loosen","loosener","looseness","looses","loosing","loot","looter","lop","lope","loper","lopez","lopped","lopper","lopping","lopsided","lopsidedness","loquacious","loquaciousness","loquacity","lora","lorain","loraine","loralee","loralie","loralyn","lorant","lord","lording","lordliness","lordly","lordship","lore","loree","loreen","lorelei","lorelle","lorem","lorempixel","loren","lorena","lorene","lorentz","lorentzian","lorenz","lorenza","lorenzo","loretta","lorette","lorgnette","lori","loria","lorianna","lorianne","lorie","lorilee","lorilyn","lorin","lorinda","lorine","loris","lorita","lorn","lorna","lorne","lorraine","lorrayne","lorre","lorri","lorrie","lorrin","lorry","lorryload","lory","los","lose","loser","loses","losing","loss","lossage","losses","lossless","lossy","lost","lot","lothaire","lothario","lotion","lots","lott","lotta","lotte","lotted","lotter","lottery","lotti","lottie","lotting","lotto","lotty","lotus","lou","loud","louden","loudhailer","loudly","loudmouth","loudmouths","loudness","loudspeaker","loudspeaking","louella","louie","louis","louisa","louise","louisette","louisiana","louisianan","louisianian","louisville","lounge","lounger","lour","lourdes","louse","lousewort","lousily","lousiness","lousy","lout","loutish","loutishness","loutitia","louver","louvre","lovable","lovableness","lovably","love","lovebird","lovechild","lovecraft","loved","lovejoy","lovelace","loveland","loveless","lovelessness","lovelies","loveliness","lovelinesses","lovell","lovelorn","lovelornness","lovely","lovemaking","lover","lovesick","lovestruck","loving","lovingly","lovingness","low","lowborn","lowboy","lowbrow","lowdown","lowe","lowell","lower","lowercase","lowermost","lowery","lowest","lowish","lowland","lowlands","lowlife","lowlight","lowliness","lowly","lowness","lowrance","lox","loy","loyal","loyaler","loyalest","loyalism","loyalist","loyalty","loyang","loyd","loydie","loyola","lozenge","lp","lparam","lpg","lpn","lq","lr","lrow","ls","lsb","lsd","lst","lstm","lt","ltd","lte","ltr","ltrim","lts","lu","lua","luanda","luann","luau","lubber","lubbock","lube","lubricant","lubricate","lubrication","lubricator","lubricious","lubricity","lubumbashi","luca","lucais","luce","lucene","lucent","lucerne","lucho","luci","lucia","lucian","luciana","luciano","lucid","lucidity","lucidness","lucie","lucien","lucienne","lucifer","lucila","lucile","lucilia","lucille","lucina","lucinda","lucine","lucio","lucita","lucite","lucius","luck","luckier","luckily","luckiness","luckless","lucknow","lucky","lucrative","lucrativeness","lucre","lucretia","lucretius","luctus","lucubrate","lucubration","lucy","luddite","ludhiana","ludicrous","ludicrousness","ludlow","ludmilla","ludo","ludovico","ludovika","ludvig","ludwig","luella","luelle","luff","lufthansa","luftwaffe","lug","luge","luger","luggage","lugged","lugger","lugging","lugosi","lugsail","lugubrious","lugubriousness","luigi","luis","luisa","luise","lukas","luke","lukewarm","lukewarmness","lula","lulita","lull","lullaby","lulu","lumbago","lumbar","lumber","lumberer","lumbering","lumberjack","lumberman","lumbermen","lumberyard","lumen","luminance","luminary","luminescence","luminescent","luminosity","luminous","luminousness","lumire","lummox","lump","lumper","lumpiness","lumpish","lumpishness","lumpy","luna","lunacy","lunar","lunary","lunate","lunatic","lunation","lunch","luncheon","luncheonette","luncher","lunchpack","lunchroom","lunchtime","lund","lundberg","lundquist","lune","lung","lunge","lunger","lungfish","lungful","lunkhead","lupe","lupine","lupus","lura","lurch","lurcher","lure","lurer","lurette","lurex","luria","lurid","luridness","lurk","lurker","lurleen","lurlene","lurline","lusa","lusaka","luscious","lusciousness","lush","lushness","lusitania","lust","luster","lustering","lusterless","lustful","lustfulness","lustily","lustiness","lustrous","lustrousness","lusty","lutanist","lute","lutenist","lutero","lutetium","luther","lutheran","lutheranism","luting","lutz","luxe","luxembourg","luxembourgian","luxemburg","luxuriance","luxuriant","luxuriate","luxuriation","luxurious","luxuriousness","luxury","luz","luzon","lv","lvalue","lvl","lw","lwjgl","lwp","lx","lxml","ly","lyallpur","lyceum","lychee","lycopodium","lycra","lycurgus","lyda","lydia","lydian","lydie","lydon","lye","lyell","lying","lyle","lyly","lyman","lyme","lymph","lymphatic","lymphocyte","lymphoid","lymphoma","lymphs","lyn","lynch","lynchburg","lyncher","lynching","lynda","lynde","lyndel","lyndell","lyndon","lyndsay","lyndsey","lyndsie","lyndy","lynea","lynelle","lynett","lynette","lynn","lynna","lynne","lynnea","lynnell","lynnelle","lynnet","lynnett","lynnette","lynsey","lynx","lyon","lyra","lyre","lyrebird","lyric","lyrical","lyricalness","lyricism","lyricist","lyrics","lysenko","lysine","lysistrata","lysol","lyssa","lyx","lz","m","ma","maalox","maana","mab","mabel","mabelle","mable","mac","macabre","macadam","macadamize","macao","macaque","macaroni","macaroon","macarthur","macaulay","macaw","macbeth","macbook","maccabees","maccabeus","macdonald","macdraw","mace","macedon","macedonia","macedonian","macer","macerate","maceration","macgregor","mach","machete","machiavelli","machiavellian","machinate","machination","machine","machinelike","machinery","machines","machinist","machismo","macho","machs","macias","macintosh","mack","mackenzie","mackerel","mackinac","mackinaw","mackintosh","macleish","macmillan","macon","macos","macosx","macpaint","macports","macram","macro","macrobiotic","macrobiotics","macrocosm","macrodynamic","macroeconomic","macroeconomics","macromolecular","macromolecule","macron","macrophage","macros","macroscopic","macroscopically","macrosimulation","macrosocioeconomic","macs","mactivity","macy","mad","mada","madagascan","madagascar","madalena","madalyn","madam","madame","madapter","madcap","maddalena","madded","madden","maddening","madder","maddest","maddi","maddie","madding","maddox","maddy","made","madeira","madel","madelaine","madeleine","madelena","madelene","madelin","madelina","madeline","madella","madelle","madelon","madelyn","mademoiselle","madge","madhouse","madhya","madison","madlen","madlin","madman","madmen","madness","madonna","madras","madrid","madrigal","madsen","madurai","madwoman","madwomen","mady","mae","maecenas","maegan","maelstrom","maestro","maeterlinck","mafia","mafiosi","mafioso","mag","magazine","magda","magdaia","magdalen","magdalena","magdalene","mage","magellan","magellanic","magenta","magento","magged","maggee","maggi","maggie","magging","maggot","maggoty","maggy","magi","magic","magical","magically","magician","magick","magicked","magicking","magill","maginot","magisterial","magistracy","magistrate","magma","magna","magnanimity","magnanimosity","magnanimous","magnate","magnesia","magnesite","magnesium","magnet","magnetic","magnetically","magnetics","magnetism","magnetite","magnetizable","magnetization","magnetize","magnetized","magneto","magnetodynamics","magnetohydrodynamical","magnetohydrodynamics","magnetometer","magnetosphere","magnetron","magnification","magnificence","magnificent","magnified","magnify","magniloquence","magniloquent","magnitogorsk","magnitude","magnolia","magnum","magnuson","magog","magoo","magpie","magritte","magruder","magsaysay","maguire","magus","magyar","mahabharata","mahala","mahalia","maharajah","maharajahs","maharanee","maharani","maharashtra","maharishi","mahatma","mahavira","mahayana","mahayanist","mahdi","mahfouz","mahican","mahjong","mahler","mahmoud","mahmud","mahogany","mahomet","mahout","mai","maia","maible","maid","maiden","maidenhair","maidenhead","maidenhood","maidenly","maidservant","maier","maiga","maighdiln","maigret","mail","mailaddress","mailbag","mailbox","mailchimp","mailer","mailgun","mailing","mailitem","maillol","maillot","mailman","mailmen","mailmessage","mails","mailto","maim","maiman","maimed","maimedness","maimer","maimonides","main","mainactivity","mainapp","mainbrace","mainbundle","mainclass","maincontent","maincontroller","mainctrl","maine","mainer","mainform","mainframe","mainland","mainlander","mainlayout","mainline","mainliner","mainloop","mainly","mainmast","mainmenu","mainpage","mainpanel","mains","mainsail","mainscreen","mainspring","mainstay","mainstream","maintain","maintainability","maintainable","maintained","maintainer","maintaining","maintains","maintenance","mainthread","maintop","mainview","mainviewcontroller","mainviewmodel","mainwindow","maiolica","mair","maire","maisey","maisie","maison","maisonette","maitilde","maize","maj","maje","majestic","majestically","majesty","majolica","major","majorca","majordomo","majorette","majority","majuro","makable","makarios","make","makefile","makefiles","makeover","maker","makers","makes","makeshift","maketext","makeup","making","mal","mala","malabar","malabo","malacca","malachi","malachite","maladapt","maladjust","maladjustment","maladministration","maladroit","maladroitness","malady","malagasy","malaise","malamud","malamute","malanie","malaprop","malapropism","malaria","malarial","malarious","malarkey","malathion","malawi","malawian","malay","malaya","malayalam","malayan","malaysia","malaysian","malchy","malcolm","malcontent","malcontented","malcontentedness","maldive","maldivian","maldonado","male","maledict","malediction","malefaction","malefactor","malefic","maleficence","maleficent","malena","maleness","malesuada","malevolence","malevolencies","malevolent","malfeasance","malfeasant","malformation","malformed","malformedurlexception","malfunction","mali","malia","malian","malibu","malice","malicious","maliciousness","malign","malignancy","malignant","malignity","malina","malinda","malinde","malinger","malingerer","malinowski","malissa","malissia","mall","mallard","mallarm","malleability","malleable","malleableness","mallet","mallissa","malloc","mallorie","mallory","mallow","malnourished","malnutrition","malocclusion","malodorous","malone","malorie","malory","malposed","malpractice","malraux","malt","malta","malted","maltese","malthus","malthusian","malting","maltose","maltreat","maltreatment","malty","malva","malvin","malvina","malware","malynda","mama","mamba","mambo","mame","mamet","mamie","mamma","mammal","mammalian","mammary","mammogram","mammography","mammon","mammoth","mammoths","mammy","mamore","mamp","man","manacle","manage","manageability","manageable","manageableness","managed","managedbean","managedobjectcontext","management","manager","manageress","managerial","managers","managership","manages","managing","managua","manama","mananas","manasseh","manatee","manaus","manchester","manchu","manchuria","manchurian","mancini","manciple","mancunian","manda","mandala","mandalay","mandamus","mandarin","mandate","mandatory","mandel","mandela","mandelbrot","mandi","mandible","mandibular","mandie","mandingo","mandolin","mandrake","mandrel","mandrill","mandy","mane","manet","maneuver","maneuverability","maneuverer","manfred","manful","manganese","mange","manger","manginess","mangle","mangler","mango","mangoes","mangrove","mangy","manhandle","manhattan","manhole","manhood","manhunt","mani","mania","maniac","maniacal","manic","manically","manichean","manicure","manicurist","manifest","manifestation","manifesto","manifests","manifold","manifolder","manifoldness","manikin","manila","manilla","manioc","manipulability","manipulable","manipulate","manipulated","manipulating","manipulation","manipulations","manipulative","manipulator","manipulatory","manitoba","manitoulin","manitowoc","mankind","mankowski","manley","manlike","manliness","manly","mann","manna","manned","mannequin","manner","mannered","mannerism","mannerist","mannerliness","mannerly","mannheim","mannie","mannikin","manning","mannish","mannishness","manny","mano","manolo","manometer","manon","manor","manorial","manpower","manqu","mans","mansard","manse","manservant","mansfield","mansion","manslaughter","manson","manta","mantegna","mantel","mantelpiece","mantes","mantilla","mantis","mantissa","mantle","mantling","mantra","mantrap","manual","manually","manuals","manuel","manuela","manufacture","manufacturer","manufacturers","manufacturing","manumission","manumit","manumitted","manumitting","manure","manuscript","manville","manx","many","manya","manytomany","manytomanyfield","manytoone","mao","maoism","maoist","maori","map","mapbox","mapdispatchtoprops","mapfragment","mapi","maple","maplecrest","mapmaker","mapoptions","mappable","mappath","mapped","mappedby","mapper","mappers","mapping","mappings","mapplethorpe","mapred","mapreduce","maproute","maps","mapstatetoprops","maptypeid","maputo","mapview","mar","mara","marabel","marabou","marabout","maraca","maracaibo","maraschino","marat","marathi","marathon","marathoner","maraud","marauder","marble","marbleize","marbler","marbling","marc","marceau","marcel","marcela","marcelia","marcelino","marcella","marcelle","marcellina","marcelline","marcello","marcellus","marcelo","march","marchall","marchelle","marcher","marchioness","marci","marcia","marciano","marcie","marcile","marcille","marco","marconi","marcotte","marcus","marcy","mardi","marduk","mare","mareah","maren","marena","maressa","marga","margalit","margalo","margaret","margareta","margarete","margaretha","margarethe","margaretta","margarette","margarine","margarita","margarito","margaux","marge","margeaux","margery","marget","margette","margi","margie","margin","marginal","marginalia","marginality","marginalization","marginalize","marginbottom","marginend","marginleft","marginright","margins","marginstart","margintop","margit","margo","margot","margret","margrethe","marguerite","margy","mari","maria","mariachi","mariadb","mariam","marian","mariana","mariann","marianna","marianne","mariano","maribel","maribelle","maribeth","marice","maricela","maridel","marie","marieann","mariejeanne","mariel","mariele","marielle","mariellen","marietta","mariette","marigold","marijn","marijo","marijuana","marika","marilee","marilin","marillin","marilyn","marimba","marin","marina","marinade","marinara","marinate","marination","marine","mariner","marinna","marino","mario","marion","marionette","mariquilla","marisa","mariska","marisol","marissa","marita","maritain","marital","maritime","maritsa","maritza","mariupol","marius","mariya","marj","marja","marje","marji","marjie","marjoram","marjorie","marjory","marjy","mark","markab","markdown","marked","markedly","marker","markeroptions","markers","market","marketa","marketability","marketable","marketeer","marketer","marketing","marketplace","markets","markham","marking","markism","markka","markkaa","marklogic","markos","markov","markovian","markovitz","marks","marksman","marksmanship","marksmen","markup","markus","marl","marla","marlane","marlboro","marlborough","marleah","marlee","marleen","marlena","marlene","marley","marlie","marlin","marline","marlinespike","marlo","marlon","marlow","marlowe","marlyn","marmaduke","marmalade","marmara","marmoreal","marmoset","marmot","marna","marne","marney","marni","marnia","marnie","maroon","marque","marquee","marquesas","marquess","marquetry","marquette","marquez","marquis","marquise","marquisette","marquita","marrakesh","marred","marriage","marriageability","marriageable","married","marrilee","marring","marriott","marris","marrissa","marrow","marrowbone","marry","mars","marseillaise","marseille","marseilles","marsh","marsha","marshal","marshalas","marshall","marshalled","marshaller","marshalling","marshallings","marshiness","marshland","marshmallow","marshy","marsiella","marsupial","mart","marta","martainn","martel","martelle","marten","martguerita","martha","marthe","marthena","marti","martial","martian","martica","martie","martin","martina","martinet","martinez","martingale","martini","martinique","martino","martinson","martita","marty","martyn","martynne","martyr","martyrdom","marv","marva","marve","marvel","marvell","marvelous","marven","marvin","marwin","marx","marxian","marxism","marxist","mary","marya","maryann","maryanna","maryanne","marybelle","marybeth","maryellen","maryjane","maryjo","maryl","maryland","marylee","marylin","marylinda","marylou","marylynne","maryrose","marys","marysa","marzipan","mas","masada","masai","masaryk","masc","mascagni","mascara","mascot","masculine","masculineness","masculinity","masefield","maser","maseru","mash","masha","mashhad","mask","masked","masker","masking","masks","masochism","masochist","masochistic","masochistically","mason","masonic","masonite","masonry","masque","masquer","masquerade","masquerader","mass","massa","massachusetts","massacre","massage","massager","massasoit","massenet","masseur","masseuse","massey","massif","massimiliano","massimo","massing","massive","massively","massiveness","massless","mast","mastectomy","master","masterclass","mastered","masterful","masterfulness","masterliness","masterly","mastermind","masterpage","masterpiece","masters","mastership","masterstroke","masterwork","mastery","masthead","mastic","masticate","mastication","mastiff","mastodon","mastoid","masturbate","masturbation","masturbatory","mat","mata","matador","match","matchable","matchbook","matchbox","matchcase","matched","matcher","matchers","matches","matching","matchless","matchlock","matchmake","matchmaker","matchmaking","matchplay","matchstick","matchwood","mate","mated","matelda","mateo","mater","material","materialism","materialist","materialistic","materialistically","materiality","materialization","materialize","materialized","materializer","materializes","materializing","materialness","materials","maternal","maternity","mates","math","mathe","mathematic","mathematica","mathematical","mathematically","mathematician","mathematics","mathematik","mather","mathew","mathewson","mathian","mathias","mathieu","mathilda","mathilde","mathis","mathjax","maths","mathworks","matias","matilda","matilde","matine","mating","matins","matisse","matlab","matmul","matplotlib","matriarch","matriarchal","matriarchs","matriarchy","matrices","matricidal","matricide","matriculate","matriculation","matriel","matrimonial","matrimony","matrix","matron","matsumoto","matt","matte","mattel","matteo","matter","matterhorn","matters","matthaeus","mattheus","matthew","matthias","matthieu","matthiew","matthus","matti","mattias","mattie","matting","mattins","mattis","mattock","mattress","matty","maturate","maturation","maturational","mature","matureness","maturer","maturity","matzo","matzot","maud","maude","maudie","maudlin","maugham","maui","maul","mauler","maunder","maupassant","maura","maure","maureen","maureene","maurene","mauriac","maurice","mauricio","maurie","maurine","mauris","maurise","maurita","mauritania","mauritanian","mauritian","mauritius","maurits","maurizia","maurizio","mauro","maurois","maury","mauser","mausoleum","mauve","maven","mavencentral","mavencli","maverick","mavin","mavis","mavra","maw","mawkish","mawkishness","mawr","max","maxcdn","maxdate","maxdepth","maxheight","maxi","maxie","maxilla","maxillae","maxillary","maxim","maxima","maximal","maximality","maximilian","maximilianus","maximilien","maximization","maximize","maximized","maximizer","maximo","maximum","maxine","maxlen","maxlength","maxlines","maxoccurs","maxsize","maxtor","maxvalue","maxwell","maxwellian","maxwidth","maxx","maxy","may","maya","mayan","maybe","maybelle","mayday","maye","mayer","mayest","mayfair","mayflower","mayfly","mayhap","mayhem","mayn","maynard","mayne","maynord","mayo","mayonnaise","mayor","mayoral","mayoralty","mayoress","mayorship","maypole","mayra","mayst","mazama","mazarin","mazatlan","mazda","maze","mazed","mazedness","mazurka","mazzini","mb","mba","mbabane","mbini","mbostock","mbp","mbuilder","mc","mcadam","mcallister","mcamera","mcbride","mccabe","mccain","mccall","mccarthy","mccarthyism","mccartney","mccarty","mccauley","mcclain","mcclellan","mcclure","mccluskey","mcconnell","mccormick","mccoy","mccracken","mccray","mccullough","mcdaniel","mcdermott","mcdonald","mcdonnell","mcdougall","mcdowell","mce","mcelhaney","mcenroe","mcfadden","mcfarland","mcgee","mcgill","mcgovern","mcgowan","mcgrath","mcgraw","mcgregor","mcguffey","mcguire","mci","mcintosh","mcintyre","mckay","mckee","mckenzie","mckesson","mckinley","mckinney","mcknight","mclanahan","mclaughlin","mclean","mcleod","mcluhan","mcmahon","mcmartin","mcmillan","mcnamara","mcnaughton","mcneil","mcontext","mcpherson","mcrypt","mcursor","md","mdash","mdata","mdb","mdc","mdf","mdi","mdl","mdm","mdn","mdpi","mdrawerlayout","mdse","mdt","me","mead","meade","meadow","meadowland","meadowlark","meadows","meadowsweet","meagan","meager","meagerness","meaghan","meagres","meal","mealiness","meals","mealtime","mealy","mealybug","mealymouthed","mean","meander","meaneing","meanie","meaning","meaningful","meaningfulness","meaningless","meaninglessness","meanings","meanness","means","meant","meantime","meanwhile","meany","meara","meas","measle","measles","measly","measurable","measurably","measure","measured","measureless","measurement","measurements","measurer","measures","measurespec","measuring","meat","meataxe","meatball","meatiness","meatless","meatloaf","meatloaves","meatpacking","meaty","mecca","mechanic","mechanical","mechanics","mechanism","mechanisms","mechanist","mechanistic","mechanistically","mechanization","mechanize","mechanized","mechanizer","mechanizes","mechanochemically","mechelle","med","medal","medalist","medallion","medan","meddle","meddlesome","medea","medellin","medfield","media","mediaelement","mediaeval","medial","medials","median","mediaplayer","mediarecorder","mediastore","mediate","mediateness","mediation","mediator","mediatype","mediawiki","medic","medicaid","medical","medicament","medicare","medicate","medication","medici","medicinal","medicine","medico","medieval","medievalist","medina","mediocre","mediocrity","meditate","meditation","meditative","meditativeness","mediterranean","medium","mediumistic","medley","medulla","medusa","meed","meek","meekness","meerschaum","meet","meeter","meeting","meetinghouse","meetings","meets","meetup","mef","meg","mega","megabit","megabuck","megabyte","megacycle","megadeath","megadeaths","megahertz","megalith","megalithic","megaliths","megalomania","megalomaniac","megalopolis","megan","megaphone","megaton","megavolt","megawatt","megaword","megen","meggi","meggie","meggy","meghan","meghann","megohm","mehetabel","mei","meier","meighen","meiji","meioses","meiosis","meiotic","meir","meister","meistersinger","mejia","mekong","mel","mela","melamie","melamine","melancholia","melancholic","melancholy","melanesia","melanesian","melange","melania","melanie","melanin","melanoma","melantha","melany","melba","melbourne","melcher","melchior","meld","melendez","melesa","melessa","melicent","melina","melinda","melinde","meliorate","melioration","melisa","melisande","melisandra","melisenda","melisent","melissa","melisse","melita","melitta","mella","melli","mellicent","mellie","mellifluous","mellifluousness","mellisa","mellisent","mellon","melloney","mellow","mellowness","melly","melodee","melodic","melodically","melodie","melodious","melodiousness","melodrama","melodramatic","melodramatically","melody","melon","melonie","melony","melosa","melpomene","melt","meltdown","melter","melting","melton","melva","melville","melvin","melvyn","mem","member","membered","memberid","members","membership","memberships","membrane","membranous","memcache","memcached","memcpy","memento","memling","memo","memoir","memorabilia","memorability","memorable","memorableness","memorably","memorandum","memorial","memorialize","memorialized","memoriam","memorization","memorize","memorized","memorizer","memorizes","memory","memoryless","memorystream","memphis","memset","men","menace","menacing","menage","menagerie","menander","menarche","menard","mencius","mencken","mend","mendacious","mendaciousness","mendacity","mendel","mendeleev","mendelevium","mendelian","mendelssohn","mender","mendez","mendicancy","mendicant","mendie","mending","mendocino","mendoza","mendy","menelaus","menes","menfolk","menhaden","menial","meningeal","meninges","meningitides","meningitis","meninx","menisci","meniscus","menkalinan","menkar","menkent","menlo","mennonite","menominee","menopausal","menopause","menorah","menorahs","menotti","mens","mensa","mensch","menservants","menstrual","menstruate","menstruation","mensurable","mensuration","menswear","mental","mentalist","mentality","menthol","mentholated","mention","mentionable","mentioned","mentioner","mentioning","mentions","mentor","menu","menubar","menuhin","menuinflater","menuitem","menuitems","menus","menzies","meow","mephistopheles","mer","merak","mercado","mercantile","mercator","mercedes","mercenariness","mercenary","mercer","mercerize","merchandise","merchandiser","merchant","merchantability","merchantman","merchantmen","merci","mercie","merciful","mercifully","mercifulness","merciless","mercilessness","merck","mercurial","mercuric","mercury","mercy","mere","meredeth","meredith","meredithe","merell","merely","meretricious","meretriciousness","merganser","merge","merged","merger","merges","mergesort","merging","meridel","meridian","meridional","meridith","meriel","merilee","merill","merilyn","meringue","merino","meris","merissa","merit","merited","meritocracy","meritocratic","meritocrats","meritorious","meritoriousness","meriwether","merl","merla","merle","merlin","merlina","merline","mermaid","merman","mermen","merna","merola","meromorphic","merralee","merrel","merriam","merrick","merridie","merrie","merrielle","merrile","merrilee","merrili","merrill","merrily","merrimac","merrimack","merriment","merriness","merritt","merry","merrymaker","merrymaking","mersey","merton","merv","mervin","merwin","merwyn","meryl","mes","mesa","mesabi","mescal","mescaline","mesdames","mesdemoiselles","mesh","meshed","meshgrid","mesmeric","mesmerism","mesmerize","mesmerized","mesmerizer","mesolithic","mesomorph","mesomorphs","meson","mesopotamia","mesopotamian","mesos","mesosphere","mesozoic","mesquite","mess","message","messagebox","messageboxbuttons","messageboxicon","messagedigest","messageid","messagequeue","messages","messagetype","messaging","messed","messeigneurs","messenger","messerschmidt","messes","messiaen","messiah","messiahs","messianic","messieurs","messily","messiness","messing","messmate","messrs","messy","mestizo","met","meta","metabolic","metabolically","metabolism","metabolite","metabolize","metacarpal","metacarpi","metacarpus","metacircular","metacircularity","metaclass","metacpan","metadata","metal","metalanguage","metalization","metalized","metallic","metalliferous","metallings","metallography","metalloid","metallurgic","metallurgical","metallurgist","metallurgy","metalsmith","metalwork","metalworking","metamathematical","metamorphic","metamorphism","metamorphose","metamorphosis","metaphor","metaphoric","metaphorical","metaphosphate","metaphysic","metaphysical","metastability","metastable","metastases","metastasis","metastasize","metastatic","metastore","metatarsal","metatarsi","metatarsus","metatheses","metathesis","metathesized","metathesizes","metathesizing","metavariable","mete","metempsychoses","metempsychosis","meteor","meteoric","meteorically","meteorite","meteoritic","meteoritics","meteoroid","meteorologic","meteorological","meteorologist","meteorology","meter","meters","meth","methadone","methane","methanol","methinks","methionine","method","methodandargscaller","methodical","methodicalness","methodinfo","methodism","methodist","methodname","methodological","methodologists","methodology","methods","methought","methuen","methuselah","methuselahs","methyl","methylated","methylene","meticulous","meticulousness","metonymy","metrecal","metric","metrical","metricate","metricize","metrics","metro","metronome","metropolis","metropolitan","metropolitanization","mets","metternich","mettle","mettlesome","metus","metzler","meuse","mew","mewl","mews","mex","mexicali","mexican","mexico","meyer","meyerbeer","mezzanine","mezzo","mf","mfa","mfc","mfg","mfr","mg","mgm","mgmt","mgr","mh","mhandler","mhz","mi","mia","miami","miaplacidus","miasma","miasmal","mib","mic","mica","micaela","micah","mice","micelles","mich","michael","michaela","michaelangelo","michaelina","michaeline","michaella","michaelmas","michaelson","michail","michal","michale","micheal","micheil","michel","michelangelo","michele","michelin","michelina","micheline","michell","michelle","michelson","michigan","michigander","michiganite","mick","mickelson","mickey","micki","mickie","micky","micmac","micra","micro","microamp","microanalysis","microanalytic","microbe","microbial","microbicidal","microbicide","microbiological","microbiologist","microbiology","microbrewery","microchemistry","microchip","microcircuit","microcode","microcomputer","microcosm","microcosmic","microdensitometer","microdot","microeconomic","microeconomics","microelectronic","microelectronics","microfiber","microfiche","microfilm","microfossils","micrography","microgroove","microhydrodynamics","microinstruction","microjoule","microlevel","microlight","micromanage","micromanagement","micrometeorite","micrometeoritic","micrometer","micron","micronesia","micronesian","microorganism","microphone","microport","microprocessing","microprocessor","microprogram","microprogrammed","microprogramming","micros","microscope","microscopic","microscopical","microscopy","microsecond","microseconds","microservice","microservices","microsimulation","microsoft","microsomal","microstore","microsurgery","microsystems","microtime","microvax","microvaxes","microvolt","microwave","microwaveable","microword","mid","midair","midas","midband","midday","midden","middest","middle","middlebrow","middlebury","middleman","middlemen","middlemost","middlename","middlesex","middleton","middletown","middleware","middleweight","middling","middy","mideast","mideastern","midfield","midge","midget","midi","midland","midlife","midlives","midmorn","midmost","midnight","midpoint","midrange","midrib","midriff","midscale","midsection","midship","midshipman","midshipmen","midspan","midst","midstream","midsummer","midterm","midtown","midway","midweek","midwest","midwestern","midwesterner","midwicket","midwife","midwifery","midwinter","midwives","midyear","mien","miff","mig","might","mightily","mightiness","mightn","mighty","mignon","mignonette","mignonne","migr","migraine","migrant","migrate","migrated","migrating","migration","migrations","migrative","migratory","miguel","miguela","miguelita","mikado","mikael","mikaela","mike","mikel","mikey","mikhail","mikkel","mikol","mikoyan","mil","milady","milagros","milan","milanese","milch","mild","mildew","mildness","mildred","mildrid","mile","mileage","milena","milepost","miler","miles","milestone","milford","milicent","milieu","milissent","militancy","militant","militantness","militarily","militarism","militarist","militaristic","militarization","militarize","military","militate","militia","militiaman","militiamen","milk","milka","milken","milker","milkiness","milkmaid","milkman","milkmen","milkshake","milksop","milkweed","milky","mill","millage","millard","millay","millenarian","millenarianism","millennial","millennialism","millennium","millepede","miller","millet","milli","milliamp","milliampere","milliard","millibar","millicent","millidegree","millie","milligram","millijoule","millikan","milliliter","millimeter","milliner","millinery","milling","million","millionaire","millions","millionth","millionths","millipede","millis","millisecond","milliseconds","millisent","millivolt","millivoltmeter","milliwatt","millpond","millrace","millstone","millstream","millwright","milly","milne","milo","milquetoast","milt","miltiades","miltie","milton","miltonic","miltown","milty","milwaukee","milzie","mimd","mime","mimemessage","mimeograph","mimeographs","mimer","mimesis","mimetic","mimetically","mimetype","mimi","mimic","mimicked","mimicker","mimicking","mimicry","mimosa","min","mina","minaret","minatory","mince","mincemeat","mincer","mincing","mind","minda","mindanao","mindate","mindbogglingly","minded","minder","mindful","mindfully","mindfulness","mindless","mindlessness","mindoro","minds","mindset","mindy","mine","minecraft","minefield","miner","mineral","mineralization","mineralized","mineralogical","mineralogist","mineralogy","minerva","mineshaft","minestrone","minesweeper","minetta","minette","mineworkers","minflater","ming","mingle","mingus","mingw","minheight","mini","miniature","miniaturist","miniaturization","miniaturize","minibike","minibus","minicab","minicam","minicomputer","miniconda","minidress","minified","minify","minifyenabled","minim","minima","minimal","minimalism","minimalist","minimalistic","minimality","minimax","minimization","minimize","minimized","minimizer","minimum","mining","minion","miniseries","miniskirt","minister","ministerial","ministrant","ministration","ministry","minivan","miniver","mink","minke","minlength","minn","minna","minnaminnie","minne","minneapolis","minnesinger","minnesota","minnesotan","minni","minnie","minnnie","minnow","minny","minoan","minoccurs","minolta","minor","minority","minos","minot","minotaur","minoxidil","mins","minsdkversion","minsk","minsky","minster","minstrel","minstrelsy","mint","minta","mintage","mintaka","minter","minty","minuend","minuet","minuit","minus","minuscule","minute","minuteman","minutemen","minuteness","minutes","minutia","minutiae","minvalue","minwidth","minx","miny","miocene","mipmap","mips","miquela","mir","mira","mirabeau","mirabel","mirabella","mirabelle","mirach","miracle","miraculous","miraculousness","mirage","miran","miranda","mire","mireielle","mireille","mirella","mirelle","mirfak","miriam","mirilla","mirna","miro","mirror","mirrors","mirth","mirthful","mirthfulness","mirthless","mirthlessness","mirths","mirv","miry","mirzam","mis","misaddress","misadventure","misalign","misalignment","misalliance","misanalysed","misanthrope","misanthropic","misanthropically","misanthropist","misanthropy","misapplier","misapply","misapprehend","misapprehension","misappropriate","misbegotten","misbehave","misbehaver","misbehavior","misbrand","misc","miscalculate","miscalculation","miscall","miscarriage","miscarry","miscast","miscegenation","miscellanea","miscellaneous","miscellany","mischa","mischance","mischief","mischievous","mischievousness","miscibility","miscible","misclassification","misclassified","misclassifying","miscode","miscommunicate","miscomprehended","misconceive","misconception","misconduct","misconfiguration","misconstruction","misconstrue","miscopying","miscount","miscreant","miscue","misdeal","misdealt","misdeed","misdemeanant","misdemeanor","misdiagnose","misdid","misdirect","misdirection","misdirector","misdo","misdoes","misdone","miser","miserable","miserableness","miserably","miserliness","miserly","misery","mises","misfeasance","misfeature","misfield","misfile","misfire","misfit","misfitted","misfitting","misfortune","misgauge","misgiving","misgovern","misgovernment","misguidance","misguide","misguided","misguidedness","misguider","misha","mishandle","mishap","mishapped","mishapping","mishear","misheard","mishitting","mishmash","misidentification","misidentify","misinform","misinformation","misinterpret","misinterpretation","misinterpreter","misjudge","misjudging","misjudgment","miskito","mislabel","mislaid","mislay","mislead","misleader","misleading","misled","mismanage","mismanagement","mismatch","misname","misnomer","misogamist","misogamy","misogynist","misogynistic","misogynous","misogyny","misperceive","misplace","misplacement","misplay","mispositioned","misprint","misprision","mispronounce","mispronunciation","misquotation","misquote","misread","misreader","misrelated","misremember","misreport","misrepresent","misrepresentation","misrepresenter","misroute","misrule","miss","missal","missed","misses","misshape","misshapen","misshapenness","missie","missile","missilery","missing","mission","missionary","missioned","missioner","missioning","missis","mississauga","mississippi","mississippian","missive","missoula","missouri","missourian","misspeak","misspecification","misspecified","misspell","misspelling","misspend","misspent","misspoke","misspoken","misstate","misstatement","misstater","misstep","misstepped","misstepping","missus","missy","mist","mistakable","mistake","mistaken","mistaker","mistakes","mistaking","mistassini","mister","misti","mistily","mistime","mistiness","mistletoe","mistook","mistral","mistranslated","mistranslates","mistranslating","mistranslation","mistreat","mistreatment","mistress","mistrial","mistrust","mistruster","mistrustful","misty","mistype","misunderstand","misunderstander","misunderstanding","misunderstood","misuse","misuser","miswritten","mit","mitch","mitchael","mitchel","mitchell","mite","miter","miterer","mitford","mithra","mithridates","mitigate","mitigated","mitigation","mitoses","mitosis","mitotic","mitre","mitsubishi","mitt","mitten","mitterrand","mitty","mitzi","mitzvahs","mix","mixable","mixed","mixer","mixin","mixing","mixins","mixture","mizar","mizzen","mizzenmast","mj","mk","mkdir","mkdirs","mkl","mkmapview","mks","mktime","mkyong","ml","mle","mlist","mlistener","mlle","mm","mmap","mme","mmm","mmmm","mms","mmsc","mn","mname","mnchhausen","mnemonic","mnemonically","mnemonics","mnemosyne","mnist","mno","mnt","mo","moan","moat","mob","mobbed","mobber","mobbing","mobcap","mobil","mobile","mobility","mobilizable","mobilization","mobilize","mobilized","mobilizer","mobilizes","mobster","mobutu","moc","moccasin","mocha","mock","mocked","mockers","mockery","mocking","mockingbird","mockito","mocks","mod","modal","modality","modals","mode","model","modeladmin","modelandview","modelattribute","modelbuilder","modeled","modeler","modelform","modeling","modelitem","modelling","modelname","models","modelserializer","modelstate","modelversion","modelview","modem","moderate","moderated","moderateness","moderation","moderator","modern","modernism","modernist","modernistic","modernity","modernization","modernize","modernized","modernizer","modernizes","modernizr","modernness","modes","modest","modesta","modestia","modestine","modesto","modesty","modicum","modifiability","modifiable","modifiableness","modification","modifications","modified","modifier","modifiers","modifies","modify","modifying","modigliani","modish","modishness","mods","modula","modular","modularity","modularization","modularize","modulate","modulation","modulator","module","moduleid","modulename","modules","moduli","modulo","modulus","modus","moe","moen","mogadiscio","mogadishu","mogul","mohair","mohamed","mohammad","mohammed","mohammedan","mohammedanism","mohandas","mohandis","mohawk","mohegan","mohican","moho","mohorovicic","mohr","moiety","moil","moina","moines","moira","moire","moise","moiseyev","moishe","moist","moisten","moistener","moistness","moisture","moisturize","mojave","mojo","mojoexecutor","molal","molar","molarity","molasses","mold","moldavia","moldavian","moldboard","molder","moldiness","molding","moldova","moldy","mole","molecular","molecularity","molecule","molehill","moleskin","molest","molestation","molested","molester","molestie","moliere","molina","moline","moll","mollee","molli","mollie","mollification","mollify","mollis","mollusc","mollusk","molly","mollycoddle","mollycoddler","molnar","moloch","molokai","molotov","molt","molter","moluccas","molybdenite","molybdenum","mom","mombasa","moment","momenta","momentarily","momentariness","momentary","momentjs","momentous","momentousness","moments","momentum","momma","mommy","mon","mona","monaco","monad","monadic","monads","monah","monarch","monarchic","monarchical","monarchism","monarchist","monarchistic","monarchs","monarchy","monash","monastery","monastic","monastical","monasticism","monaural","mondale","monday","mondrian","monegasque","monera","monet","monetarily","monetarism","monetarist","monetary","monetization","monetize","money","moneybag","moneychangers","moneyer","moneylender","moneymaker","moneymaking","monfort","monger","mongo","mongoclient","mongod","mongodb","mongoid","mongol","mongolia","mongolian","mongolic","mongolism","mongoloid","mongoose","mongrel","monica","monies","monika","moniker","monique","monism","monist","monition","monitor","monitored","monitoring","monitors","monitory","monk","monkey","monkeyshine","monkish","monkshood","monmouth","mono","monobehaviour","monochromatic","monochromator","monochrome","monocle","monoclinic","monoclonal","monocotyledon","monocotyledonous","monocular","monodevelop","monodic","monodist","monody","monogamist","monogamous","monogamy","monogram","monogrammed","monogramming","monograph","monographs","monolingual","monolingualism","monolith","monolithic","monolithically","monoliths","monologist","monologue","monomania","monomaniac","monomaniacal","monomer","monomeric","monomial","monongahela","mononuclear","mononucleoses","mononucleosis","monophonic","monoplane","monopole","monopolist","monopolistic","monopolization","monopolize","monopolized","monopolizes","monopoly","monorail","monospace","monostable","monosyllabic","monosyllable","monotheism","monotheist","monotheistic","monotone","monotonic","monotonically","monotonicity","monotonous","monotonousness","monotony","monotouch","monovalent","monoxide","monro","monroe","monrovia","monsanto","monseigneur","monsieur","monsignor","monsignori","monsoon","monsoonal","monster","monstrance","monstrosity","monstrous","monstrousness","mont","montage","montague","montaigne","montana","montanan","montcalm","montclair","monte","montenegrin","montenegro","monterey","monterrey","montesquieu","montessori","monteverdi","montevideo","montezuma","montgomery","month","monthly","months","monti","monticello","montmartre","montoya","montpelier","montrachet","montreal","montserrat","monty","monument","monumental","monumentality","moo","mooch","mood","moodily","moodiness","moodle","moody","moog","moon","moonbeam","mooney","moonless","moonlight","moonlighting","moonlit","moonscape","moonshine","moonshiner","moonshot","moonstone","moonstruck","moonwalk","moor","moore","mooring","moorish","moorland","moose","moot","mootools","mop","mope","moped","moper","mopey","mopier","mopiest","mopish","mopped","moppet","mopping","moq","mora","moraine","moral","morale","morales","moralist","moralistic","moralistically","morality","moralization","moralize","moralled","moraller","moralling","moran","morass","moratorium","moravia","moravian","moray","morbi","morbid","morbidity","morbidness","mord","mordancy","mordant","mordecai","mordred","mordy","more","moreen","morehouse","morel","moreland","morena","moreno","moreover","morey","morgan","morgana","morganica","morganne","morgen","morgue","morgun","moria","moriarty","moribund","moribundity","morie","morin","morion","morison","morissa","morita","moritz","morlee","morley","morly","mormon","mormonism","morn","morna","morning","moro","moroccan","morocco","moron","moroni","moronic","moronically","morose","moroseness","morph","morpheme","morphemic","morpheus","morphia","morphine","morphism","morphologic","morphological","morphology","morphophonemic","morphophonemics","morphs","morrie","morris","morrison","morristown","morrow","morry","morse","morsel","mort","mortal","mortality","mortar","mortarboard","mortbay","morten","mortgage","mortgageable","mortgagee","mortgagor","mortice","mortician","mortie","mortification","mortified","mortifier","mortify","mortimer","mortise","morton","mortuary","morty","mos","mosaic","mosaicked","mosaicking","moscone","moscow","mose","moseley","moselle","moser","mosey","moshe","moslem","mosley","mosque","mosquito","mosquitoes","moss","mossback","mossberg","mossy","most","mostly","mosul","mot","mote","motel","motet","moth","mothball","mother","motherboard","motherfucker","motherfucking","motherhood","mothering","motherland","motherless","motherliness","motherly","moths","motif","motile","motility","motion","motional","motioner","motionevent","motionless","motionlessness","motions","motivate","motivated","motivation","motivational","motivator","motive","motiveless","motley","motlier","motliest","motocross","motor","motorbike","motorboat","motorcade","motorcar","motorcycle","motorcyclist","motoring","motorist","motorization","motorize","motorized","motorman","motormen","motormouth","motormouths","motorola","motorway","motown","mott","mottle","mottler","motto","mottoes","moue","moulder","moult","mound","mount","mountable","mountain","mountaineer","mountaineering","mountainous","mountainousness","mountainside","mountaintop","mountbatten","mountebank","mounted","mounter","mountie","mounties","mounting","mounts","mourn","mourner","mournful","mournfuller","mournfullest","mournfulness","mourning","mouse","mousedown","mouseenter","mouseevent","mouseeventargs","mouseleave","mousemove","mouseout","mouseover","mouser","mousetrap","mousetrapped","mousetrapping","mouseup","mousewheel","mousex","mousey","mousiness","mousing","mousse","moussorgsky","mousy","mouth","mouthe","mouthful","mouthiness","mouthorgan","mouthpiece","mouths","mouthwash","mouthwatering","mouthy","mouton","mov","movable","movableness","move","moved","movement","movements","movenext","mover","moves","moveto","movetofirst","movetonext","movie","movieclip","moviegoer","movieid","movies","moving","movl","movq","mow","mower","mowgli","mowing","moxie","moyer","moyna","moyra","moz","mozambican","mozambique","mozart","mozelle","mozes","mozilla","mozzarella","mp","mpaint","mpdf","mpeg","mpg","mph","mpi","mpl","mplayer","mq","mqtt","mr","mrecyclerview","mri","mrs","ms","msb","msbuild","msc","mscorlib","msdn","mse","msec","msft","msg","msgbox","msgid","msgr","msgs","msi","msie","msil","msmq","mso","msp","mssql","mst","msvc","msw","msxml","msys","mt","mtcars","mtg","mtge","mtier","mtime","mts","mtu","mtv","mu","muawiya","mubarak","much","muchness","mucilage","mucilaginous","muck","mucker","muckrake","muckraker","mucky","mucosa","mucous","mucus","mud","mudded","muddily","muddiness","mudding","muddle","muddlehead","muddleheaded","muddler","muddy","mudflat","mudguard","mudlarks","mudroom","mudslide","mudsling","mudslinger","mudslinging","mueller","muenster","muesli","muezzin","muff","muffin","muffle","muffler","mufi","mufinella","mufti","mug","mugabe","mugged","mugger","mugginess","mugging","muggy","mugshot","mugwump","muhammad","muhammadan","muhammadanism","muir","muire","mukden","mukluk","mul","mulatto","mulattoes","mulberry","mulch","mulct","mulder","mule","muleskinner","mulesoft","muleteer","mulish","mulishness","mull","mullah","mullahs","mullein","mullen","muller","mullet","mulligan","mulligatawny","mullikan","mullins","mullion","mult","multan","multer","multi","multibus","multicast","multicellular","multichannel","multicollinearity","multicolor","multicolumn","multicomponent","multicomputer","multics","multicultural","multiculturalism","multidex","multidimensional","multidimensionality","multidisciplinary","multifaceted","multifamily","multifarious","multifariousness","multifigure","multiform","multifunction","multiindex","multilateral","multilayer","multilevel","multiline","multilingual","multilingualism","multimap","multimedia","multimegaton","multimeter","multimillionaire","multinational","multinomial","multipart","multiphase","multiple","multiples","multiplet","multiplex","multiplexor","multipliable","multiplicand","multiplication","multiplicative","multiplicity","multiplied","multiplier","multiply","multiplying","multiprocess","multiprocessing","multiprocessor","multiprogram","multiprogrammed","multiprogramming","multipurpose","multiracial","multiselect","multistage","multistory","multisyllabic","multitasking","multithreaded","multithreading","multitude","multitudinous","multitudinousness","multiuser","multivalent","multivalued","multivariate","multiversity","multiviews","multivitamin","mum","mumble","mumbler","mumbletypeg","mumford","mummed","mummer","mummery","mummification","mummify","mumming","mummy","mumps","mun","munch","muncher","munchies","muncie","mundane","mundt","munge","munich","municipal","municipality","munificence","munificent","munition","munmro","munoz","munro","munroe","munsey","munson","munster","muon","muong","muppet","mural","muralist","murasaki","murat","murchison","murcia","murder","murderer","murderess","murderous","murderousness","murdoch","murdock","mureil","murial","muriatic","muriel","murielle","murillo","murk","murkily","murkiness","murky","murmansk","murmur","murmurer","murmuring","murmurous","murphy","murrain","murray","murrow","murrumbidgee","murry","murvyn","mus","muscat","muscatel","muscle","musclebound","muscovite","muscovy","muscular","muscularity","musculature","muse","muser","musette","museum","mush","musher","mushiness","mushroom","mushy","musial","music","musical","musicale","musicality","musicals","musician","musicianship","musicked","musicking","musicological","musicologist","musicology","musing","musk","muskeg","muskegon","muskellunge","musket","musketeer","musketry","muskie","muskiness","muskmelon","muskox","muskrat","musky","muslim","muslin","muss","mussel","mussolini","mussorgsky","mussy","must","mustache","mustachio","mustang","mustard","muster","mustily","mustiness","mustn","musty","mut","mutability","mutable","mutableness","mutably","mutagen","mutant","mutate","mutating","mutation","mutational","mutations","mutator","mute","muted","muteness","mutex","mutilate","mutilation","mutilator","mutineer","mutinous","mutiny","mutsuhito","mutt","mutter","mutterer","mutton","muttonchops","mutual","mutuality","mutually","muumuu","mux","muzak","muzo","muzzle","muzzled","muzzler","mv","mvc","mview","mviewpager","mvn","mvnrepository","mvp","mvvm","mvvmcross","mw","mwebview","mx","mxml","my","myaction","myactivity","myadapter","myanmar","myapp","myapplication","myarr","myarray","mybase","mybatis","mybean","mybutton","myca","mycah","mycanvas","mycarousel","mycell","mycenae","mycenaean","mychal","mychart","myclass","mycollection","mycologist","mycology","mycommand","mycompany","mycomponent","myconnection","mycontext","mycontrol","mycontroller","myctrl","mydata","mydatabase","mydate","mydb","mydf","mydict","mydir","mydiv","mydomain","myelement","myelitides","myelitis","myemail","myentity","myenum","myer","myers","myevent","myfaces","myfield","myfile","myfolder","myform","myfragment","myframe","myfunc","myfunction","mygrid","myhost","myid","myimage","myinput","myint","myintent","myinterface","myisam","myitem","myjson","mykey","mylabel","mylar","myles","mylib","mylist","mylo","mymap","mymethod","mymodal","mymodel","mymodule","myna","myname","mynamespace","mynheer","mynumber","myobj","myobject","myocardial","myocardium","myopia","myopic","myopically","myoptions","mypackage","mypage","mypanel","mypassword","mypath","myplugin","myprogram","myproject","myproperty","myra","myrah","myranda","myrange","myrdal","myreader","myriad","myriam","myrilla","myrle","myrlene","myrmidon","myrna","myron","myrow","myrrh","myrrhs","myrta","myrtia","myrtice","myrtie","myrtle","myrvyn","myrwyn","mys","myscript","myselect","myself","myserver","myservice","mysite","mysore","mysql","mysqlclient","mysqlcommand","mysqlconnection","mysqld","mysqldb","mysqldump","mysqli","mysqlio","myst","mysterious","mysteriousness","mystery","mystic","mystical","mysticism","mystification","mystifier","mystify","mystifying","mystique","mystr","mystring","mystruct","mytable","mytask","mytest","mytext","myth","mythic","mythical","mythographer","mythography","mythological","mythologist","mythologize","mythology","mythread","myths","mytimer","mytype","myurl","myuser","myusername","myval","myvalue","myvar","myvariable","myvector","myview","myviewcontroller","myviewholder","myviewmodel","mywebsite","mywebview","mywindow","mz","n","na","naacp","naam","nab","nabbed","nabbing","nabble","nabisco","nabob","nabokov","nacelle","nacho","nacl","nacre","nacreous","nada","nadean","nadeen","nader","nadia","nadine","nadir","nadiya","nady","nadya","nae","nag","nagasaki","nagged","nagger","nagging","nagios","nagoya","nagpur","nagy","nahuatl","nahum","naiad","naifs","nail","nailbrush","nailer","naipaul","nair","nairobi","naismith","naive","naivet","naivety","nakamura","nakayama","naked","nakedness","nakoma","nalani","nam","nama","namath","name","nameable","named","namedrop","namedropping","nameerror","nameless","namelist","namely","namenode","nameof","nameplate","namer","names","namesake","namespace","namespaces","namevaluepair","namevaluepairs","namibia","namibian","naming","nan","nana","nanak","nananne","nance","nancee","nancey","nanchang","nanci","nancie","nancy","nanete","nanette","nani","nanice","nanine","nanjing","nanking","nannette","nanni","nannie","nanny","nano","nanometer","nanon","nanook","nanosecond","nanoseconds","nanotime","nansen","nantes","nantucket","naoma","naomi","nap","napalm","nape","naphtali","naphtha","naphthalene","napier","napkin","naples","napless","napoleon","napoleonic","napped","napper","nappie","napping","nappy","nara","narbonne","narc","narcissism","narcissist","narcissistic","narcissus","narcoleptic","narcoses","narcosis","narcotic","narcotization","narcotize","nari","nariko","nark","narmada","narragansett","narrate","narration","narrative","narratology","narrator","narrow","narrowed","narrowing","narrowness","narwhal","nary","nas","nasa","nasal","nasality","nasalization","nasalize","nascence","nascent","nasdaq","nash","nashua","nashville","nasm","nassau","nasser","nastily","nastiness","nasturtium","nasty","nat","nata","natal","natala","natale","natalee","natalia","natalie","natalina","nataline","natalist","natality","natalya","nataniel","natasha","natassia","natch","natchez","nate","nathalia","nathalie","nathan","nathanael","nathanial","nathaniel","nathanil","nation","national","nationalism","nationalist","nationalistic","nationalistically","nationality","nationalization","nationalize","nationalized","nationalizer","nationhood","nations","nationwide","native","nativeconstructoraccessorimpl","nativeelement","natively","nativemethodaccessorimpl","nativeness","nativescript","nativestart","natividad","nativity","natka","natl","nato","natter","nattily","nattiness","natty","natural","naturalism","naturalist","naturalistic","naturalization","naturalize","naturalized","naturally","naturalness","naturals","nature","naturist","naugahyde","naught","naughtily","naughtiness","naughty","naur","nauru","nausea","nauseate","nauseating","nauseous","nauseousness","nautical","nautilus","nav","navaho","navajo","navajoes","naval","navarro","navbar","navcontroller","nave","navel","navigability","navigable","navigableness","navigate","navigated","navigates","navigating","navigation","navigational","navigationbar","navigationcontroller","navigationitem","navigationview","navigator","navona","navratilova","navvy","navy","nay","naysayer","nazarene","nazareth","nazi","nazism","nb","nba","nbc","nbr","nbs","nbsp","nc","ncaa","ncc","nchar","nco","ncol","ncols","ncr","ncurses","nd","ndarray","ndb","ndjamena","ndk","ne","neal","neala","neale","neall","nealon","nealson","nealy","neanderthal","neap","neapolitan","near","nearby","nearest","nearly","nearness","nearside","nearsighted","nearsightedness","neat","neaten","neath","neatness","neb","nebr","nebraska","nebraskan","nebuchadnezzar","nebula","nebulae","nebular","nebulous","nebulousness","nec","necessaries","necessarily","necessary","necessitate","necessitation","necessitous","necessity","neck","neckband","neckerchief","necking","necklace","neckline","necktie","necrology","necromancer","necromancy","necromantic","necrophilia","necrophiliac","necropolis","necropsy","necroses","necrosis","necrotic","nectar","nectarine","nectarous","nectary","ned","neda","nedda","neddie","neddy","nedi","need","needed","needer","needful","needham","neediness","needing","needle","needlecraft","needlepoint","needless","needlessness","needlewoman","needlewomen","needlework","needn","needs","needy","neel","neely","nefarious","nefariousness","nefen","nefertiti","neg","negate","negated","negater","negation","negative","negativeness","negativism","negativity","negator","negev","neglect","neglecter","neglectful","neglectfulness","negligee","negligence","negligent","negligibility","negligible","negligibly","negotiability","negotiable","negotiant","negotiate","negotiation","negotiator","negress","negritude","negro","negroes","negroid","nehemiah","nehru","neigh","neighbor","neighbored","neighborer","neighborhood","neighborliness","neighborlinesses","neighborly","neighbors","neighbours","neighs","neil","neila","neile","neill","neilla","neille","neither","nelda","nelia","nelie","nell","nelle","nelli","nellie","nelly","nels","nelsen","nelson","nematic","nematode","nembutal","nemeses","nemesis","nenter","neo","neoclassic","neoclassical","neoclassicism","neocolonialism","neocortex","neodymium","neogene","neolithic","neologism","neomycin","neon","neonatal","neonate","neophyte","neoplasm","neoplastic","neoprene","nepal","nepalese","nepali","nepenthe","nephew","nephrite","nephritic","nephritides","nephritis","nepotism","nepotist","neptune","neptunium","neque","nerd","nerdy","nereid","nerf","nerissa","nerita","nero","neron","nert","nerta","nerte","nerti","nertie","nerty","neruda","nerve","nerveless","nervelessness","nerviness","nerving","nervous","nervousness","nervy","nessa","nessi","nessie","nessy","nest","nesta","nested","nestedscrollview","nester","nesting","nestle","nestler","nestling","nestor","nestorius","net","netball","netbeans","netflix","netframework","nether","netherlander","netherlands","nethermost","netherworld","netscape","netstat","nett","netta","netti","nettie","netting","nettle","nettlesome","netty","network","networkcredential","networkinfo","networking","networks","networkstream","networkx","netzahualcoyotl","neue","neumann","neural","neuralgia","neuralgic","neurasthenia","neurasthenic","neuritic","neuritides","neuritis","neuroanatomy","neurobiology","neurological","neurologist","neurology","neuromuscular","neuron","neuronal","neurone","neurons","neuropathology","neurophysiology","neuropsychiatric","neuroses","neurosis","neurosurgeon","neurosurgery","neurotic","neurotically","neurotransmitter","neut","neuter","neutral","neutralise","neutralism","neutralist","neutrality","neutralization","neutralize","neutralized","neutrino","neutron","nev","neva","nevada","nevadan","nevadian","never","nevermore","nevertheless","nevi","nevil","nevile","neville","nevin","nevis","nevsa","nevsky","nevus","new","newark","newarr","newarray","newbie","newborn","newbury","newburyport","newcastle","newcomer","newdata","newdate","newdiv","newed","newel","newell","newer","newest","newfangled","newfile","newfound","newfoundland","newfoundlander","newguid","newheight","newid","newimage","newinstance","newish","newitem","newline","newlines","newlist","newly","newlywed","newman","newname","newness","newnode","newobj","newobject","newpage","newpassword","newpath","newport","newrelic","newrow","news","newsagent","newsboy","newscast","newscaster","newscasting","newsdealer","newsed","newses","newsflash","newsgirl","newsgroup","newsing","newsize","newsletter","newsman","newsmen","newspaper","newspaperman","newspapermen","newspaperwoman","newspaperwomen","newsprint","newsreader","newsreel","newsroom","newsstand","newstate","newstr","newstring","newsweek","newsweekly","newswire","newswoman","newswomen","newsworthiness","newsworthy","newsy","newt","newtab","newtext","newton","newtonian","newtonsoft","newurl","newuser","newval","newvalue","newversion","newwidth","newx","nexis","next","nextdouble","nextint","nextline","nextpage","nextprops","nexttoken","nextval","nexus","neysa","nf","nfc","nfl","nfs","ng","ngaliema","ngclass","ngfor","ngif","nginx","ngmodel","ngmodule","ngoninit","ngram","ngroute","ngstrm","nguyen","ngx","nh","nhibernate","nhl","ni","niacin","niagara","nial","niall","niamey","nib","nibbed","nibbing","nibble","nibbler","nibelung","nibh","nic","nicaean","nicaragua","nicaraguan","niccolo","nice","nicely","nicene","niceness","nicer","nicety","niche","nichol","nicholas","nichole","nicholle","nicholson","nick","nickel","nickelodeon","nicker","nickey","nicki","nickie","nicklaus","nicknack","nickname","nicknamer","nicko","nickola","nickolai","nickolaus","nicky","nico","nicobar","nicodemus","nicol","nicola","nicolai","nicole","nicolea","nicolette","nicoli","nicolina","nicoline","nicolle","nicosia","nicotine","nid","niebuhr","niece","niel","niels","nielsen","nielson","nietzsche","nieves","nifi","nifty","nigel","niger","nigeria","nigerian","nigerien","niggard","niggardliness","niggardly","nigger","niggle","niggler","niggling","nigh","nighs","night","nightcap","nightclothes","nightclub","nightclubbed","nightclubbing","nightdress","nightfall","nightgown","nighthawk","nightie","nightingale","nightlife","nightlong","nightly","nightmare","nightmarish","nights","nightshade","nightshirt","nightspot","nightstand","nightstick","nighttime","nightwear","nighty","nih","nihilism","nihilist","nihilistic","nijinsky","nikaniki","nike","niki","nikita","nikki","nikkie","nikko","niko","nikola","nikolai","nikolaos","nikolaus","nikolayev","nikoletta","nikolia","nikolos","nikon","nil","nilclass","nile","nilled","nilling","nilpotent","nils","nilsen","nilson","nilsson","nimbi","nimble","nimbleness","nimbly","nimbus","nimby","nimitz","nimrod","nina","nincompoop","nine","ninefold","ninepence","ninepin","ninepins","nineteen","nineteenths","ninetieths","ninetta","ninette","ninety","nineveh","ninja","ninject","ninnetta","ninnette","ninny","ninon","nintendo","ninth","ninths","nio","niobe","niobium","nioendpoint","nip","nipped","nipper","nippiness","nipping","nipple","nippon","nipponese","nippy","nirenberg","nirvana","nisei","nisi","nisl","nissa","nissan","nisse","nissie","nissy","nit","nita","niter","nitpick","nitrate","nitration","nitric","nitride","nitriding","nitrification","nitrite","nitrocellulose","nitrogen","nitrogenous","nitroglycerin","nitrous","nitwit","niven","nix","nixer","nixie","nixon","nj","nk","nkrumah","nl","nlog","nlp","nlrb","nls","nltk","nm","nmap","nn","no","noaa","noach","noactionbar","noah","noak","noam","noami","nob","nobe","nobel","nobelist","nobelium","nobie","nobility","noble","nobleman","noblemen","nobleness","noblesse","noblewoman","noblewomen","nobody","noby","noclassdeffounderror","noconflict","nocount","nocturnal","nocturne","nod","nodal","nodded","nodding","noddle","noddy","node","nodeid","nodejs","nodelist","nodemon","nodename","nodes","nodetype","nodevalue","nodoz","nodular","nodule","noe","noel","noelani","noell","noella","noelle","noellyn","noelyn","noemi","noes","noexcept","nofollow","noggin","nohow","nohup","noise","noiseless","noiselessness","noisemake","noisemaker","noisily","noisiness","noisome","noisy","nokia","nokogiri","nola","nolan","nolana","noland","nolie","noll","nollie","nolly","nolock","nom","nomad","nomadic","nombre","nome","nomenclature","nomethoderror","nomi","nominal","nominalized","nominally","nominals","nominate","nomination","nominative","nominator","nominee","non","nona","nonabrasive","nonabsorbent","nonacademic","nonacceptance","nonacid","nonactive","nonadaptive","nonaddictive","nonadhesive","nonadjacent","nonadjustable","nonadministrative","nonage","nonagenarian","nonaggression","nonagricultural","nonah","nonalcoholic","nonaligned","nonalignment","nonallergic","nonappearance","nonassignable","nonathletic","nonatomic","nonattendance","nonautomotive","nonavailability","nonbasic","nonbeliever","nonbelligerent","nonblocking","nonbreakable","nonburnable","nonbusiness","noncaloric","noncancerous","noncarbohydrate","nonce","nonchalance","nonchalant","nonchargeable","nonclerical","nonclinical","noncollectable","noncom","noncombatant","noncombustible","noncommercial","noncommissioned","noncommittal","noncommunicable","noncompeting","noncompetitive","noncompliance","noncomplying","noncomprehending","nonconducting","nonconductor","nonconforming","nonconformist","nonconformity","nonconsecutive","nonconservative","nonconstructive","noncontagious","noncontiguous","noncontinuous","noncontributing","noncontributory","noncontroversial","nonconvertible","noncooperation","noncorroding","noncorrosive","noncredit","noncriminal","noncritical","noncrystalline","noncumulative","noncustodial","noncyclic","nondairy","nondecreasing","nondeductible","nondelivery","nondemocratic","nondenominational","nondepartmental","nondepreciating","nondescript","nondestructive","nondetachable","nondeterminacy","nondeterminate","nondeterminism","nondeterministic","nondeterministically","nondisciplinary","nondisclosure","nondiscrimination","nondiscriminatory","nondramatic","nondrinker","nondrying","nondurable","none","noneconomic","noneducational","noneffective","nonelastic","nonelectric","nonelectrical","nonemergency","nonempty","nonenforceable","nonentity","nonequivalence","nonequivalent","nones","nonessential","nonesuch","nonetheless","nonetype","nonevent","nonexchangeable","nonexclusive","nonexempt","nonexistence","nonexistent","nonexplosive","nonextensible","nonfactual","nonfading","nonfat","nonfatal","nonfattening","nonferrous","nonfiction","nonfictional","nonflammable","nonflowering","nonfluctuating","nonflying","nonfood","nonfreezing","nonfunctional","nongovernmental","nongranular","nonhazardous","nonhereditary","nonhuman","noni","nonidentical","nonie","noninclusive","nonindependent","nonindustrial","noninfectious","noninflammatory","noninflationary","noninflected","nonintellectual","noninteracting","noninterchangeable","noninterference","nonintervention","nonintoxicating","nonintuitive","noninvasive","nonionic","nonirritating","nonjudgmental","nonjudicial","nonlegal","nonlethal","nonlinear","nonlinearity","nonlinguistic","nonliterary","nonliving","nonlocal","nonmagical","nonmagnetic","nonmalignant","nonmember","nonmetal","nonmetallic","nonmigratory","nonmilitant","nonmilitary","nonna","nonnah","nonnarcotic","nonnative","nonnegative","nonnegotiable","nonnuclear","nonnull","nonnumerical","nonobjective","nonobligatory","nonobservance","nonobservant","nonoccupational","nonoccurence","nonofficial","nonogenarian","nonoperational","nonoperative","nonorthogonal","nonorthogonality","nonparallel","nonparametric","nonpareil","nonparticipant","nonparticipating","nonpartisan","nonpaying","nonpayment","nonperformance","nonperforming","nonperishable","nonperson","nonperturbing","nonphysical","nonplus","nonplussed","nonplussing","nonpoisonous","nonpolitical","nonpolluting","nonporous","nonpracticing","nonprejudicial","nonprescription","nonprocedural","nonproductive","nonprofessional","nonprofit","nonprogrammable","nonprogrammer","nonproliferation","nonpublic","nonpunishable","nonracial","nonradioactive","nonrandom","nonreactive","nonreciprocal","nonreciprocating","nonrecognition","nonrecoverable","nonrecurring","nonredeemable","nonreducing","nonrefillable","nonrefundable","nonreligious","nonrenewable","nonrepresentational","nonresident","nonresidential","nonresidual","nonresistance","nonresistant","nonrespondent","nonresponse","nonrestrictive","nonreturnable","nonrhythmic","nonrigid","nonsalaried","nonscheduled","nonscientific","nonscoring","nonseasonal","nonsectarian","nonsecular","nonsegregated","nonsense","nonsensical","nonsensicalness","nonsensitive","nonsexist","nonsexual","nonsingular","nonskid","nonslip","nonsmoker","nonsmoking","nonsocial","nonspeaking","nonspecialist","nonspecializing","nonspecific","nonspiritual","nonstaining","nonstandard","nonstarter","nonstick","nonstop","nonstrategic","nonstriking","nonstructural","nonsuccessive","nonsupervisory","nonsupport","nonsurgical","nonsustaining","nonsympathizer","nontarnishable","nontaxable","nontechnical","nontenured","nonterminal","nonterminating","nontermination","nontheatrical","nonthinking","nonthreatening","nontoxic","nontraditional","nontransferable","nontransparent","nontrivial","nontropical","nonuniform","nonunion","nonuser","nonvenomous","nonverbal","nonveteran","nonviable","nonviolence","nonviolent","nonvirulent","nonvocal","nonvocational","nonvolatile","nonvolunteer","nonvoter","nonvoting","nonwhite","nonworking","nonyielding","nonzero","noob","noodle","nook","noon","noonday","nooning","noontide","noontime","noop","noose","nop","nope","nor","nora","norad","noradrenalin","noradrenaline","norah","norbert","norberto","norbie","norby","nordhoff","nordic","nordstrom","norean","noredirect","noreen","noreferrer","norene","norfolk","norina","norine","norm","norma","normal","normalcy","normality","normalization","normalizations","normalize","normalized","normalizes","normally","normals","norman","normand","normandy","normative","normativeness","normie","normy","norplant","norri","norrie","norristown","norry","norse","norseman","norsemen","north","northampton","northbound","northeast","northeaster","northeastern","northeastward","norther","northerly","northern","northerner","northernmost","northfield","northing","northland","northmen","northrop","northrup","norths","northumberland","northward","northwest","northwester","northwestern","northwestward","norton","norw","norwalk","norway","norwegian","norwich","nos","noscript","nose","nosebag","nosebleed","nosecone","nosed","nosedive","nosegay","nosferatu","nosh","nosily","nosiness","nosing","nosql","nostalgia","nostalgic","nostalgically","nostradamus","nostrand","nostril","nostrud","nostrum","nosuchelementexception","nosuchmethoderror","nosy","not","notability","notable","notableness","notably","notarial","notarization","notarize","notary","notate","notation","notational","notative","notch","note","notebook","notebooks","noted","notedness","notempty","notepad","notepaper","notes","noteworthiness","noteworthy","notfound","nothing","nothingness","notice","noticeable","noticeably","noticeboard","noticed","notices","noticing","notif","notifiable","notification","notificationcompat","notificationmanager","notifications","notified","notifier","notify","notifydatasetchanged","notifypropertychanged","notimplementedexception","noting","notion","notional","notnull","notoriety","notorious","notoriousness","notre","nottingham","notwithstanding","nouakchott","nougat","noumea","noun","nourish","nourished","nourisher","nourishment","nous","nouveau","nouvelle","nov","nova","novae","novak","novalidate","novel","novelette","novelia","novelist","novelization","novelize","novell","novella","novelty","november","novena","novene","novgorod","novice","novitiate","novocain","novocaine","novokuznetsk","novosibirsk","now","nowadays","noway","nowell","nowhere","nowise","nowrap","noxious","noxiousness","noyce","noyes","nozzle","np","npe","npm","npmjs","npos","nr","nra","nroff","nrow","nrows","ns","nsa","nsarray","nsattributedstring","nsbundle","nscalendar","nscoder","nsdata","nsdate","nsdateformatter","nsdictionary","nsdocumentdirectory","nsentitydescription","nserror","nservicebus","nsf","nsfetchedresultscontroller","nsfetchrequest","nsfilemanager","nsindexpath","nsinteger","nsjsonserialization","nslayoutconstraint","nslog","nsmakerange","nsmanagedobject","nsmanagedobjectcontext","nsmutablearray","nsmutabledata","nsmutabledictionary","nsmutablestring","nsmutableurlrequest","nsnotification","nsnotificationcenter","nsnumber","nsobject","nsoperationqueue","nspredicate","nsrange","nssearchpathfordirectoriesindomains","nsset","nssortdescriptor","nsstring","nstimeinterval","nstimer","nsuinteger","nsurl","nsurlconnection","nsurlrequest","nsurlsession","nsuserdefaults","nsuserdomainmask","nsutf","nsvalue","nsview","nsxmlparser","nt","ntdll","nth","ntlm","ntp","nu","nuance","nub","nubbin","nubby","nubia","nubian","nubile","nuclear","nuclease","nucleate","nucleated","nucleation","nuclei","nucleic","nucleoli","nucleolus","nucleon","nucleotide","nucleus","nuclide","nude","nudely","nudeness","nudest","nudge","nudger","nudism","nudist","nudity","nugatory","nugent","nuget","nugget","nuisance","nuke","nukualofa","nul","null","nulla","nullable","nullam","nullif","nullification","nullifier","nullify","nullity","nullpointerexception","nullptr","nullreferenceexception","nulls","num","numb","numba","number","numbered","numberer","numberformat","numberformatexception","numbering","numberless","numberofrowsinsection","numberplate","numbers","numberwithint","numbing","numbness","numbskull","numel","numerable","numeracy","numeral","numerate","numerates","numeration","numerator","numeric","numerical","numero","numerological","numerologist","numerology","numerous","numerousness","numinous","numismatic","numismatics","numismatist","numpy","numrows","nums","numskull","nun","nunavut","nunc","nuncio","nunez","nunit","nunki","nunnery","nuptial","nuremberg","nureyev","nurse","nursemaid","nurser","nursery","nurseryman","nurserymen","nursling","nurture","nurturer","nus","nut","nutate","nutation","nutch","nutcrack","nutcracker","nuthatch","nutmeat","nutmeg","nutmegged","nutmegging","nutpick","nutrasweet","nutria","nutrient","nutriment","nutrition","nutritional","nutritionist","nutritious","nutritiousness","nutritive","nuts","nutshell","nutted","nuttiness","nutting","nutty","nuzzle","nv","nvarchar","nvidia","nvl","nvm","nw","nwt","nx","ny","nyasa","nyc","nydia","nye","nyerere","nylon","nymph","nymphet","nympholepsy","nymphomania","nymphomaniac","nymphs","nyquist","nyse","nyssa","nytimes","nz","o","oa","oaf","oafish","oafishness","oahu","oak","oakland","oakley","oakmont","oakum","oakwood","oar","oarlock","oarsman","oarsmen","oarswoman","oarswomen","oas","oases","oasis","oat","oatcake","oater","oates","oath","oaths","oatmeal","oauth","oaxaca","ob","obadiah","obadias","obama","obbligato","obduracy","obdurate","obdurateness","obed","obediah","obedience","obedient","obeisance","obeisant","obelisk","oberlin","oberon","obese","obesity","obey","obeyer","obfuscate","obfuscated","obfuscation","obfuscatory","obi","obidiah","obie","obit","obituary","obj","objc","object","objectanimationusingkeyframes","objectatindex","objectclass","objectcontext","objectforkey","objectid","objectify","objectinputstream","objection","objectionable","objectionableness","objectionably","objective","objectiveness","objectivity","objectmapper","objectname","objector","objectoutputstream","objects","objecttype","objphpexcel","objs","objurgate","objurgation","oblate","oblation","obligate","obligation","obligational","obligatorily","obligatory","oblige","obliged","obliger","obliges","obliging","obligingness","oblique","obliqueness","obliquity","obliterate","obliteration","obliterative","oblivion","oblivious","obliviousness","oblong","oblongness","obloquies","obloquy","obnoxious","obnoxiousness","oboe","oboist","obos","obs","obscene","obscenity","obscurantism","obscurantist","obscuration","obscure","obscureness","obscurity","obsequies","obsequious","obsequiousness","obsequy","observability","observable","observablearray","observablecollection","observablelist","observables","observably","observance","observant","observantly","observants","observation","observational","observations","observatory","observe","observed","observer","observers","observing","obsess","obsession","obsessional","obsessive","obsessiveness","obsidian","obsolesce","obsolescence","obsolescent","obsolete","obsoleteness","obstacle","obstetric","obstetrical","obstetrician","obstetrics","obstinacy","obstinate","obstinateness","obstreperous","obstreperousness","obstruct","obstructed","obstructer","obstruction","obstructionism","obstructionist","obstructive","obstructiveness","obtain","obtainable","obtainably","obtained","obtaining","obtainment","obtains","obtrude","obtruder","obtrusion","obtrusive","obtrusiveness","obtuse","obtuseness","obverse","obviate","obvious","obviously","obviousness","oby","oc","ocaml","ocarina","occ","occam","occasion","occasional","occasionally","occasions","occident","occidental","occipital","occlude","occlusion","occlusive","occult","occulter","occultism","occupancy","occupant","occupation","occupational","occupied","occupier","occupies","occupy","occur","occured","occurence","occurences","occuring","occurred","occurrence","occurrences","occurring","occurs","ocean","oceanfront","oceangoing","oceania","oceanic","oceanographer","oceanographic","oceanography","oceanology","oceanside","oceanus","ocelot","ocher","ochoa","oci","ocks","oconomowoc","ocr","oct","octagon","octagonal","octahedral","octahedron","octal","octane","octant","octave","octavia","octavian","octavio","octavius","octavo","octennial","octet","octile","octillion","october","octogenarian","octopus","octoroon","ocular","oculist","od","odalisque","odata","odbc","odd","oddball","oddity","oddly","oddment","oddness","odds","ode","odele","odelia","odelinda","odell","odella","odelle","oder","oderberg","odessa","odets","odetta","odette","odey","odie","odilia","odille","odin","odio","odious","odiousness","odis","odium","odo","odom","odometer","odoo","odor","odoriferous","odorless","odorous","ods","ody","odysseus","odyssey","oe","oed","oedipal","oedipus","oem","oems","oenology","oenophile","oersted","oesophagi","oeuvre","of","ofcourse","ofelia","ofella","off","offal","offbeat","offcuts","offenbach","offend","offender","offending","offense","offensive","offensively","offensiveness","offer","offered","offerer","offering","offers","offertory","offhand","offhanded","offhandedness","office","officeholder","officemate","officer","officership","offices","officia","official","officialdom","officialism","officially","officiant","officiate","officiation","officiator","officio","officious","officiousness","offing","offish","offline","offload","offprint","offramp","offs","offset","offsetheight","offsets","offsetting","offsettop","offsetwidth","offsetx","offsety","offshoot","offshore","offside","offspring","offstage","offtrack","ofilia","ofs","ofstream","oft","often","oftentimes","ofttimes","oftype","og","ogbomosho","ogdan","ogden","ogdon","ogg","ogilvy","ogive","ogle","oglethorpe","ogre","ogreish","ogress","oh","ohio","ohioan","ohm","ohmic","ohmmeter","oho","ohos","ohs","ohsa","oi","oid","oil","oilcloth","oilcloths","oiler","oilfield","oiliness","oilman","oilmen","oilseed","oilskin","oily","oink","ointment","oise","oj","ojibwa","ok","okamoto","okapi","okay","okayama","okeechobee","okefenokee","okhotsk","okhttp","okhttpclient","okinawa","okinawan","okla","oklahoma","oklahoman","okra","oks","oktoberfest","ol","ola","olaf","olag","olav","old","olden","oldenburg","older","oldest","oldfield","oldie","oldish","oldness","oldsmobile","oldster","olduvai","oldvalue","oldversion","ole","oleaginous","oleander","oledb","oledbcommand","oledbconnection","oledbdataadapter","olefin","oleg","olen","olenek","olenka","olenolin","oleo","oleomargarine","oles","olfactory","olga","olia","oligarch","oligarchic","oligarchical","oligarchs","oligarchy","oligocene","oligopolistic","oligopoly","olimpia","olin","olive","oliver","olivero","olivette","olivetti","olivia","olivie","olivier","oliviero","oliy","ollie","olly","olmec","olmsted","olsen","olson","olva","olvan","olwen","olympe","olympia","olympiad","olympian","olympic","olympie","olympus","om","omaha","oman","omar","ombudsman","ombudsmen","omdurman","omega","omelet","omelette","omen","omero","omg","omicron","ominous","ominousness","omission","omit","omitted","omitting","omni","omniauth","omnibus","omnipotence","omnipotent","omnipresence","omnipresent","omniscience","omniscient","omnivore","omnivorous","omnivorousness","omp","oms","omsk","on","onactivitycreated","onactivityresult","onanism","onassis","onattach","onbackpressed","onbeforeunload","onbindviewholder","onblur","oncancelled","once","onceperrequestfilter","oncer","onchange","oncheckedchanged","onclick","onclicklistener","onclientclick","onclose","oncogene","oncologist","oncology","oncoming","oncomplete","oncompleted","onconfigurationchanged","oncreate","oncreateoptionsmenu","oncreateview","oncreateviewholder","ondatachange","ondelete","ondestroy","ondraw","ondrea","one","oneal","onedrive","onega","onegin","oneida","oneness","oner","onerous","onerousness","onerror","ones","oneself","onetime","onetomany","onetoone","oneupmanship","oneway","onfailure","onfocus","onfre","onfroi","ongoing","onida","oninit","onion","onionskin","onitemclick","onitemclicklistener","onitemselected","onitemselectedlistener","onkeydown","onkeypress","onkeyup","onlayout","online","onlinedocs","onlinepubs","onload","onlocationchanged","onlooker","onlooking","only","onmeasure","onmessage","onmodelcreating","onmousedown","onmouseout","onmouseover","onnext","ono","onofredo","onomatopoeia","onomatopoeic","onomatopoetic","onondaga","onopen","onoptionsitemselected","onpause","onpostexecute","onpreexecute","onpress","onprogressupdate","onpropertychanged","onreadystatechange","onreceive","onresponse","onresume","onrush","ons","onsager","onsaveinstancestate","onscroll","onselect","onset","onsetting","onshore","onside","onslaught","onstart","onstartcommand","onstop","onsubmit","onsuccess","ont","ontarian","ontario","ontextchanged","onto","ontogeny","ontological","ontology","ontouch","ontouchevent","ontouchlistener","onupdate","onupgrade","onus","onward","onwards","onyx","oo","oodles","ooh","oohs","oolitic","oom","oona","ooo","oop","oops","oort","oos","ooze","oozie","oozy","op","opacity","opal","opalescence","opalescent","opalina","opaline","opaque","opaqueness","opcode","opcodes","ope","opec","opel","open","openapi","opencart","opencast","opencl","openconnection","opencv","opendatabase","opendir","opened","opener","openerp","openfile","openfiledialog","opengl","opengroup","openhanded","openhandedness","openhearted","openid","opening","openjdk","openjpa","openlayers","openmp","openness","openoffice.org","openpyxl","openqa","opens","opensession","openshift","opensource","openssh","openssl","openstack","openstream","openstreetmap","opensymphony","openurl","openwork","openxml","openxmlformats","opera","operable","operand","operandi","operands","operant","operate","operates","operatic","operatically","operating","operation","operational","operationalization","operationalize","operationcontract","operations","operative","operatively","operativeness","operatives","operator","operators","operetta","ophelia","ophelie","ophiuchus","ophthalmic","ophthalmologist","ophthalmology","opiate","opine","opinion","opinionated","opinionatedness","opinions","opioid","opium","opossum","opp","oppenheimer","opponent","opportune","opportunism","opportunist","opportunistic","opportunistically","opportunities","opportunity","oppose","opposed","opposer","opposite","oppositeness","opposition","oppositional","oppress","oppression","oppressive","oppressiveness","oppressor","opprobrious","opprobrium","oprah","ops","opt","opted","optgroup","opthalmic","opthalmologic","opthalmology","optic","optical","optician","optics","optima","optimal","optimality","optimisation","optimise","optimised","optimism","optimist","optimistic","optimistically","optimization","optimizations","optimize","optimized","optimizer","optimizes","optimizing","optimum","option","optional","optionality","optionally","options","optoelectronic","optometric","optometrist","optometry","opts","opulence","opulent","opus","oq","or","ora","oracle","oracular","oral","oralee","oralia","oralie","oralla","oralle","oran","orange","orangeade","orangery","oranges","orangutan","oranjestad","orate","oration","orator","oratorical","oratorio","oratory","orazio","orb","orbadiah","orbicular","orbiculares","orbit","orbital","orchard","orchestra","orchestral","orchestrate","orchestrater","orchestration","orchestrator","orchid","orci","ord","ordain","ordainer","ordainment","ordeal","order","orderby","orderbydescending","orderdate","ordered","ordereddict","orderer","orderid","ordering","orderitem","orderless","orderliness","orderly","ordernumber","orders","ordinal","ordinance","ordinarily","ordinariness","ordinary","ordinate","ordinated","ordinates","ordinating","ordination","ordnance","ordovician","ordure","ore","oreg","oregano","oregon","oregonian","orel","orelee","orelia","orelie","orella","orelle","orelse","oren","oreo","orestes","org","organ","organdie","organdy","organelle","organic","organically","organisation","organism","organismic","organist","organizable","organization","organizational","organizations","organize","organized","organizer","organizes","organizing","organometallic","organza","orgasm","orgasmic","orgiastic","orgy","oriana","oriel","orient","orientable","oriental","orientate","orientated","orientates","orientation","orientations","oriented","orienteering","orienter","orifice","orig","origami","origin","original","originality","originally","originate","originated","origination","originative","originator","origins","orin","orinoco","oriole","orion","orison","oriya","orizaba","orkney","orlan","orland","orlando","orleans","orlick","orlon","orly","orm","ormlite","ormolu","ornament","ornamental","ornamentation","ornare","ornate","ornateness","orneriness","ornery","ornithological","ornithologist","ornithology","orographic","orography","orono","orotund","orotundity","orphan","orphanage","orphanhood","orpheus","orphic","orr","orran","orren","orrin","orris","ors","orsa","orsola","orson","ortega","ortensia","orthodontia","orthodontic","orthodontics","orthodontist","orthodox","orthodoxies","orthodoxly","orthodoxy","orthogonal","orthogonality","orthogonalization","orthogonalized","orthographic","orthographically","orthography","orthonormal","orthopedic","orthopedics","orthopedist","orthophosphate","orthorhombic","ortiz","orton","orv","orval","orville","orwell","orwellian","os","osage","osaka","osbert","osborn","osborne","osbourn","osbourne","oscar","osceola","oscillate","oscillation","oscillator","oscillatory","oscilloscope","osculate","osculation","osgi","osgood","osha","oshawa","oshkosh","osier","osiris","oslo","osm","osman","osmium","osmond","osmoses","osmosis","osmotic","osmund","osprey","oss","osseous","ossie","ossification","ossify","ostensible","ostensibly","ostentation","ostentatious","ostentatiousness","osteoarthritides","osteoarthritis","osteology","osteopath","osteopathic","osteopaths","osteopathy","osteoporoses","osteoporosis","ostracise","ostracism","ostracize","ostrander","ostream","ostrich","ostrogoth","ostwald","osvaldo","oswald","oswell","osx","ot","otb","otc","otes","otf","otha","othelia","othella","othello","other","otherbuttontitles","otherness","others","otherwise","otherworld","otherworldly","othilia","othilie","otho","otiose","otis","otoh","otp","ottawa","otter","ottilie","otto","ottoman","ou","ouagadougou","oubliette","ouch","ought","oughtn","ouija","ounce","ouput","our","ours","ourself","ourselves","oust","ouster","out","outage","outargue","outback","outbalance","outbid","outbidding","outboard","outboast","outbound","outbreak","outbroke","outbroken","outbuilding","outburst","outcast","outclass","outcome","outcomes","outcrop","outcropped","outcropping","outcry","outdated","outdid","outdir","outdistance","outdo","outdoes","outdone","outdoor","outdoorsy","outdraw","outdrawn","outdrew","outer","outerheight","outerhtml","outermost","outerwear","outface","outfall","outfield","outfielder","outfight","outfile","outfit","outfitted","outfitter","outfitting","outflank","outflow","outfought","outfox","outgeneraled","outgo","outgoes","outgoing","outgrew","outgrip","outgrow","outgrown","outgrowth","outgrowths","outguess","outhit","outhitting","outhouse","outing","outlaid","outland","outlander","outlandish","outlandishness","outlast","outlaw","outlawry","outlay","outlet","outlets","outliers","outline","outlined","outlive","outlook","outlying","outmaneuver","outmatch","outmigration","outmoded","outness","outnumber","outofmemoryerror","outpaced","outpatient","outperform","outplacement","outplay","outpoint","outpost","outpour","outpouring","outproduce","output","outputdirectory","outputfile","outputlabel","outputpath","outputs","outputstream","outputstreamwriter","outputted","outputtext","outputting","outr","outrace","outrage","outrageous","outrageousness","outran","outrank","outreach","outrider","outrigger","outright","outrun","outrunning","outs","outscore","outsell","outset","outsetting","outshine","outshone","outshout","outside","outsider","outsize","outskirt","outsmart","outsold","outsource","outspend","outspent","outspoke","outspoken","outspokenness","outspread","outstanding","outstate","outstation","outstay","outstream","outstretch","outstrip","outstripped","outstripping","outtake","outvote","outward","outwardness","outwear","outweigh","outweighs","outwit","outwitted","outwitting","outwore","outwork","outworn","ouzo","ov","ova","oval","ovalness","ovarian","ovary","ovate","ovation","oven","ovenbird","over","overabundance","overabundant","overachieve","overact","overage","overaggressive","overall","overallocation","overambitious","overanxious","overarching","overarm","overate","overattentive","overawe","overbalance","overbear","overbearing","overbearingness","overbid","overbidding","overbite","overblown","overboard","overbold","overbook","overbore","overborne","overbought","overbuild","overbuilt","overburden","overburdening","overbuy","overcame","overcapacity","overcapitalize","overcareful","overcast","overcasting","overcautious","overcerebral","overcharge","overcloud","overcoat","overcoating","overcome","overcomer","overcommitment","overcompensate","overcompensation","overcomplexity","overcomplicated","overconfidence","overconfident","overconscientious","overconsumption","overcook","overcooled","overcorrection","overcritical","overcrowd","overcurious","overdecorate","overdependent","overdetermined","overdevelop","overdid","overdo","overdoes","overdone","overdose","overdraft","overdraw","overdrawn","overdress","overdrew","overdrive","overdriven","overdrove","overdub","overdubbed","overdubbing","overdue","overeager","overeagerness","overeat","overeater","overeducated","overemotional","overemphases","overemphasis","overemphasize","overenthusiastic","overestimate","overestimation","overexcite","overexercise","overexert","overexertion","overexploitation","overexploited","overexpose","overexposure","overextend","overextension","overfall","overfed","overfeed","overfill","overfishing","overflew","overflight","overflow","overflown","overflows","overfly","overfond","overfull","overgeneralize","overgenerous","overgraze","overgrew","overground","overgrow","overgrown","overgrowth","overgrowths","overhand","overhang","overhasty","overhaul","overhead","overhear","overheard","overhearer","overheat","overhung","overincredulous","overindulge","overindulgence","overindulgent","overinflated","overjoy","overkill","overladed","overladen","overlaid","overlain","overland","overlap","overlapped","overlapping","overlaps","overlarge","overlay","overlays","overleaf","overlie","overload","overloaded","overloading","overloads","overlong","overlook","overlooked","overlooking","overlord","overloud","overly","overmanning","overmaster","overmatching","overmodest","overmuch","overnice","overnight","overoptimism","overoptimistic","overpaid","overparticular","overpass","overpay","overpayment","overplay","overpopulate","overpopulation","overpopulous","overpower","overpowering","overpraise","overprecise","overpressure","overprice","overprint","overproduce","overproduction","overprotect","overprotection","overqualified","overran","overrate","overreach","overreact","overreaction","overred","overrefined","overrepresented","overridden","override","overriden","overrider","overrides","overriding","overripe","overrode","overrule","overrun","overrunning","oversample","oversaturate","oversaw","oversea","oversee","overseeing","overseen","overseer","oversell","oversensitive","oversensitiveness","oversensitivity","oversexed","overshadow","overshoe","overshoot","overshot","oversight","oversimple","oversimplification","oversimplify","oversize","oversleep","overslept","oversoft","oversoftness","oversold","overspecialization","overspecialize","overspend","overspent","overspill","overspread","overstaffed","overstate","overstatement","overstay","overstep","overstepped","overstepping","overstimulate","overstock","overstraining","overstressed","overstretch","overstrict","overstrike","overstrung","overstuffed","oversubscribe","oversubtle","oversupply","oversuspicious","overt","overtake","overtaken","overtax","overthrew","overthrow","overthrown","overtightened","overtime","overtire","overtone","overtook","overture","overturn","overuse","overvalue","overview","overweening","overweight","overwhelm","overwhelming","overwinter","overwork","overwrap","overwrite","overwrites","overwriting","overwritten","overwrote","overwrought","overzealous","overzealousness","ovid","oviduct","oviform","oviparous","ovoid","ovular","ovulate","ovulatory","ovule","ovum","ow","owasp","owe","owen","owin","owl","owlet","owlish","owlishness","own","owned","owner","ownerid","owners","ownership","owning","owns","ox","oxalate","oxalic","oxaloacetic","oxblood","oxbow","oxcart","oxen","oxford","oxidant","oxidate","oxidation","oxidative","oxide","oxidization","oxidize","oxidized","oxidizer","oxidizes","oxnard","oxonian","oxtail","oxus","oxyacetylene","oxygen","oxygenate","oxygenation","oxyhydroxides","oxymora","oxymoron","oyster","oystering","oz","ozark","ozone","ozymandias","ozzie","ozzy","p","pa","pablo","pablum","pabst","pabulum","pac","pace","pacemaker","pacer","pacesetter","pacesetting","pacheco","pachyderm","pachysandra","pacific","pacifically","pacification","pacifier","pacifism","pacifist","pacifistic","pacify","pack","package","packaged","packagemanager","packagename","packager","packages","packaging","packard","packed","packer","packet","packets","packhorse","packing","packinghouse","packs","packsaddle","packston","packwood","paco","pacorro","pact","pad","padang","padded","paddie","padding","paddingbottom","paddingleft","paddingright","paddingtop","paddle","paddler","paddock","paddy","padget","padgett","padilla","padlock","padraic","padraig","padre","padrewski","padriac","padx","pady","paean","paediatrician","paediatrics","paedophilia","paella","paeony","pagan","paganini","paganism","page","pageable","pageant","pageantry","pageboy","pagecount","paged","pageful","pageid","pageindex","pagename","pagenum","pagenumber","pager","pageradapter","pages","pagesize","pagetitle","pageview","pageviewcontroller","pagex","pagey","paginate","pagination","paginator","paging","paglia","pagoda","pahlavi","paid","paige","pail","pailful","pain","paine","painful","painfuller","painfullest","painfulness","painkiller","painkilling","painless","painlessness","painstaking","paint","paintbox","paintbrush","paintcomponent","painted","painter","painterly","painting","paintwork","pair","paired","pairing","pairs","pairwise","paisley","pajama","pakistan","pakistani","pal","palace","paladin","palaeolithic","palaeontologists","palaeontology","palanquin","palatability","palatable","palatableness","palatal","palatalization","palatalize","palate","palatial","palatinate","palatine","palaver","pale","paleface","palembang","paleness","paleocene","paleogene","paleographer","paleography","paleolithic","paleontologist","paleontology","paleozoic","palermo","palestine","palestinian","palestrina","palette","paley","palfrey","palimony","palimpsest","palindrome","palindromic","paling","palisade","palisades","palish","pall","palladio","palladium","pallbearer","pallet","palletized","palliate","palliation","palliative","pallid","pallidness","pallor","palm","palmate","palmer","palmerston","palmetto","palmist","palmistry","palmolive","palmtop","palmy","palmyra","palo","paloma","palomar","palomino","palpable","palpably","palpate","palpation","palpitate","palpitation","palsy","paltriness","paltry","paludal","pam","pamela","pamelina","pamella","pamirs","pammi","pammie","pammy","pampas","pamper","pamperer","pampers","pamphlet","pamphleteer","pan","panacea","panache","panama","panamanian","pancake","panchito","pancho","panchromatic","pancreas","pancreatic","panda","pandas","pandemic","pandemonium","pander","pandoc","pandora","pane","panegyric","panel","panelgrid","panelgroup","paneling","panelist","panelization","panelized","panels","panes","pang","pangaea","pangolin","panhandle","panic","panicked","panicking","panicky","panier","panjandrum","pankhurst","panmunjom","panned","pannier","panning","panoply","panorama","panoramic","panpipes","pansie","pansy","pant","pantagruel","pantaloon","pantaloons","pantheism","pantheist","pantheistic","pantheon","panther","pantie","pantiled","pantograph","pantomime","pantomimic","pantomimist","pantry","pantsuit","pantyhose","pantyliner","pantywaist","panza","paola","paoli","paolina","paolo","pap","papa","papacy","papagena","papageno","papal","paparazzi","papaw","papaya","paper","paperback","paperboard","paperboy","paperclip","paperer","papergirl","paperhanger","paperhanging","paperiness","paperless","papers","paperweight","paperwork","papery","papilla","papillae","papillary","papist","papoose","pappas","papped","papping","pappy","paprika","papyri","papyrus","paquito","par","para","parable","parabola","parabolic","paraboloid","paraboloidal","paracelsus","paracetamol","parachute","parachuter","parachutist","paraclete","parade","parader","paradigm","paradigmatic","paradisaic","paradisaical","paradise","paradox","paradoxic","paradoxical","paradoxicalness","paraffin","paragon","paragraph","paragrapher","paragraphs","paraguay","paraguayan","parakeet","paralegal","paralinguistic","parallax","parallel","paralleled","parallelepiped","parallelism","parallelization","parallelize","parallelogram","paralysis","paralytic","paralytically","paralyze","paralyzed","paralyzedly","paralyzer","paralyzing","paralyzingly","param","paramagnet","paramagnetic","paramaribo","paramecia","paramecium","paramedic","paramedical","parameter","parameterization","parameterize","parameterized","parameterless","parametername","parameters","parametric","parametrically","parametrization","parametrize","paramiko","paramilitary","paramname","paramount","paramour","params","paramus","paran","paranoia","paranoiac","paranoid","paranormal","parapet","paraphernalia","paraphrase","paraphraser","paraplegia","paraplegic","paraprofessional","parapsychologist","parapsychology","paraquat","parasite","parasitic","parasitically","parasitism","parasitologist","parasitology","parasol","parasympathetic","parathion","parathyroid","paratroop","paratrooper","paratyphoid","parboil","parc","parcel","parcelable","parceled","parceling","parch","parcheesi","parchment","pardon","pardonable","pardonableness","pardonably","pardoner","pare","paregoric","parens","parent","parentage","parental","parentelement","parenteral","parentheses","parenthesis","parenthesize","parenthetic","parenthetical","parenthood","parentid","parentnode","parentrunner","parents","pares","paresis","pareto","parfait","pariah","pariahs","pariatur","parietal","parimutuel","paring","paris","parish","parishioner","parisian","parity","park","parka","parke","parker","parkersburg","parkhouse","parking","parkinson","parkish","parkland","parklike","parkman","parkway","parlance","parlay","parley","parliament","parliamentarian","parliamentary","parlor","parlous","parm","parmesan","parmigiana","parnassus","parnell","parochial","parochialism","parochiality","parodied","parodist","parody","parole","parolee","paroxysm","paroxysmal","parquet","parquetry","parr","parrakeet","parred","parricidal","parricide","parring","parrish","parrnell","parrot","parrotlike","parry","pars","parse","parsec","parsecolor","parsed","parsedouble","parsee","parseexact","parseexception","parsefloat","parseint","parsejson","parseobject","parser","parsers","parses","parsifal","parsimonious","parsimony","parsing","parsley","parsnip","parson","parsonage","parsons","part","partake","partaken","partaker","parter","parterre","parthenogeneses","parthenogenesis","parthenon","parthia","partial","partiality","partially","partials","partialview","participant","participants","participate","participation","participator","participatory","participial","participle","particle","particleboard","particles","particolored","particular","particularistic","particularity","particularization","particularize","particularly","particulate","parties","parting","partisan","partisanship","partition","partitioned","partitioner","partitioning","partitions","partitive","partizan","partly","partner","partners","partnership","partnumber","partook","partridge","parts","parturition","partway","party","parvenu","pas","pasadena","pascal","pascale","paschal","pasha","paso","pasquale","pass","passably","passage","passageway","passaic","passband","passbook","passed","passel","passenger","passengers","passer","passerby","passersby","passes","passim","passing","passion","passionate","passionated","passionateness","passionates","passionating","passioned","passionflower","passioning","passionless","passivated","passive","passiveness","passivity","passkey","passmark","passover","passphrase","passport","passwd","password","passwords","past","pasta","paste","pastebin","pasteboard","pasted","pastel","pastern","pasternak","pastespecial","pasteup","pasteur","pasteurization","pasteurize","pasteurized","pasteurizer","pastiche","pastille","pastime","pastiness","pasting","pastor","pastoral","pastoralization","pastorate","pastrami","pastry","pasts","pasturage","pasture","pasturer","pasty","pat","patagonia","patagonian","patch","patched","patcher","patches","patchily","patchiness","patching","patchwork","patchy","pate","patel","patella","patellae","paten","patent","patentee","patents","pater","paterfamilias","paternal","paternalism","paternalist","paternalistic","paternity","paternoster","paterson","path","pathetic","pathetically","pathfinder","pathforresource","pathinfo","pathless","pathname","pathogen","pathogenesis","pathogenic","pathologic","pathological","pathologist","pathology","pathos","paths","pathvariable","pathway","patience","patient","patientid","patients","patin","patina","patine","patio","patna","patois","paton","patresfamilias","patriarch","patriarchal","patriarchate","patriarchs","patriarchy","patric","patrica","patrice","patricia","patrician","patricide","patricio","patrick","patrimonial","patrimony","patriot","patriotic","patriotically","patriotism","patristic","patrizia","patrizio","patrizius","patrol","patrolled","patrolling","patrolman","patrolmen","patrolwoman","patrolwomen","patron","patronage","patroness","patronization","patronize","patronized","patronizer","patronizes","patronizing","patronymic","patronymically","patroon","patsy","patted","patten","patter","patterer","pattern","patternlayout","patternless","patterns","patterson","patti","pattie","pattin","patting","patton","patty","paucity","paul","paula","paule","pauletta","paulette","pauli","paulie","paulina","pauline","pauling","paulita","paulo","paulsen","paulson","paulus","pauly","paunch","paunchiness","paunchy","pauper","pauperism","pauperize","pause","paused","pauses","pavarotti","pave","paved","pavel","pavement","paver","paves","pavia","pavilion","paving","pavla","pavlov","pavlova","pavlovian","paw","pawl","pawn","pawnbroker","pawnbroking","pawnee","pawner","pawnshop","pawpaw","pawtucket","pax","paxes","paxon","paxton","pay","payable","payback","paycheck","payday","payed","payee","payer","paying","payload","paymaster","payment","payments","payne","payoff","payola","payout","paypal","payroll","pays","payslip","payson","payton","paz","pb","pbkdf","pbs","pbx","pc","pca","pcap","pcb","pch","pci","pcl","pcm","pcp","pcre","pcs","pct","pd","pdata","pdb","pdf","pdfbox","pdfreader","pdfs","pdfwriter","pdialog","pdo","pdoexception","pdp","pdq","pdt","pe","pea","peabody","peace","peaceable","peaceableness","peaceably","peaceful","peacefuller","peacefullest","peacefulness","peacekeeping","peacemaker","peacemaking","peacetime","peach","peachtree","peachy","peacock","peadar","peafowl","peahen","peak","peaked","peakiness","peaks","peaky","peal","peale","pealed","peals","peanut","pear","pearce","pearl","pearla","pearle","pearler","pearlie","pearline","pearly","pearson","peartrees","peary","peasant","peasanthood","peasantry","peashooter","peat","peats","peaty","pebble","pebbling","pebbly","pebrook","pecan","peccadillo","peccadilloes","peccary","pechora","peck","pecker","peckinpah","pecl","pecos","pectic","pectin","pectoral","peculate","peculator","peculiar","peculiarity","pecuniary","pedagogic","pedagogical","pedagogics","pedagogue","pedagogy","pedal","pedant","pedantic","pedantically","pedantry","peddle","peddler","peder","pederast","pederasty","pedestal","pedestrian","pedestrianization","pedestrianize","pediatric","pediatrician","pedicab","pedicure","pedicurist","pedigree","pediment","pedlar","pedometer","pedophile","pedophilia","pedro","peduncle","pee","peeing","peek","peekaboo","peel","peeler","peeling","peen","peep","peeper","peephole","peepshow","peepy","peer","peerage","peeress","peerless","peerlessness","peers","peeve","peevers","peevish","peevishness","peewee","peg","pegasus","pegboard","pegeen","pegged","peggi","peggie","pegging","peggy","pei","peignoir","peiping","peirce","pejoration","pejorative","peke","pekinese","peking","pekingese","pekoe","pelagic","pele","pelee","pelf","pelham","pelican","pellagra","pellentesque","pellet","pellucid","peloponnese","pelt","pelter","pelvic","pelvis","pem","pembroke","pemmican","pen","pena","penal","penalization","penalize","penalized","penalty","penance","pence","penchant","pencil","pend","pendant","pendent","penderecki","pending","pendingintent","pendleton","pendulous","pendulum","penelopa","penelope","penetrability","penetrable","penetrate","penetrating","penetration","penetrative","penetrativeness","penetrator","penguin","penicillin","penile","peninsula","peninsular","penis","penitence","penitent","penitential","penitentiary","penknife","penknives","penlight","penman","penmanship","penmen","penn","penna","pennant","penned","penney","penni","pennie","penniless","penning","pennington","pennis","pennon","pennsylvania","pennsylvanian","penny","pennyweight","pennyworth","penologist","penology","penrod","pens","pensacola","pension","pensioner","pensive","pensiveness","pent","pentacle","pentagon","pentagonal","pentagram","pentaho","pentameter","pentateuch","pentathlete","pentathlon","pentatonic","pentecost","pentecostal","pentecostalism","penthouse","pentium","penuche","penultimate","penumbra","penumbrae","penurious","penuriousness","penury","peon","peonage","peony","people","peoples","peoria","pep","pepe","pepi","pepillo","pepin","pepita","pepito","pepped","pepper","peppercorn","pepperer","peppergrass","peppermint","pepperoni","peppery","peppiness","pepping","peppy","peps","pepsi","pepsico","pepsin","peptic","peptidase","peptide","peptizing","pepys","pequot","per","peradventure","perambulate","perambulation","perambulator","perc","percale","perceivably","perceive","perceived","perceiver","percent","percentage","percentages","percentile","percept","perceptible","perceptibly","perception","perceptional","perceptive","perceptiveness","perceptual","perceval","perch","perchance","perchlorate","perchlorination","percipience","percipient","percival","percolate","percolation","percolator","percuss","percussion","percussionist","percussive","percussiveness","percutaneous","percy","perdition","perdurable","peregrinate","peregrination","peregrine","perelman","peremptorily","peremptory","perennial","perestroika","perez","perf","perfect","perfecta","perfecter","perfectibility","perfectible","perfection","perfectionism","perfectionist","perfective","perfectiveness","perfectly","perfectness","perfidious","perfidiousness","perfidy","perforate","perforated","perforation","perforce","perform","performance","performant","performclick","performcreate","performed","performer","performing","performlaunchactivity","performs","performseguewithidentifier","performselector","perfume","perfumer","perfumery","perfunctorily","perfunctoriness","perfunctory","perfused","perfusion","pergamon","pergola","perhaps","peri","peria","pericardia","pericardium","perice","periclean","pericles","perigee","perihelia","perihelion","peril","perilla","perilous","perilousness","perimeter","perinatal","perinea","perineum","period","periodic","periodical","periodically","periodicity","periodontal","periodontics","periodontist","periods","peripatetic","peripheral","periphery","periphrases","periphrasis","periphrastic","periscope","perish","perishable","perishing","peristalses","peristalsis","peristaltic","peristyle","peritoneal","peritoneum","peritonitis","periwig","periwigged","periwigging","periwinkle","perjure","perjurer","perjury","perk","perkily","perkin","perkiness","perky","perl","perla","perldoc","perle","perm","permafrost","permalink","permalloy","permanence","permanency","permanent","permanently","permanentness","permeability","permeable","permeableness","permeate","permian","permissibility","permissible","permissibleness","permissibly","permission","permissions","permissive","permissiveness","permit","permitall","permits","permitted","permitting","perms","permutation","permutations","permute","pernell","pernicious","perniciousness","pernod","peron","peroration","perot","peroxidase","peroxide","perpend","perpendicular","perpendicularity","perpetrate","perpetration","perpetrator","perpetual","perpetuate","perpetuation","perpetuity","perplex","perplexed","perplexity","perquisite","perren","perri","perrine","perror","perry","persecute","persecution","persecutor","persecutory","perseid","persephone","perseus","perseverance","persevere","persevering","pershing","persia","persian","persiflage","persimmon","persis","persist","persisted","persistence","persistent","persisting","persists","persnickety","person","persona","personable","personableness","personae","personage","personal","personality","personalization","personalize","personalized","personally","personalty","personid","personification","personifier","personify","personname","personnel","persons","perspective","perspex","perspicacious","perspicaciousness","perspicacity","perspicuity","perspicuous","perspicuousness","perspiration","perspire","persuade","persuaded","persuader","persuasion","persuasive","persuasively","persuasiveness","pert","pertain","perth","pertinacious","pertinaciousness","pertinacity","pertinence","pertinent","pertness","perturb","perturbation","perturbed","pertussis","peru","peruke","perusal","peruse","peruser","peruvian","pervade","pervasion","pervasive","pervasiveness","perverse","perverseness","perversion","perversity","pervert","perverted","perverter","perviousness","peseta","peshawar","peskily","peskiness","pesky","peso","pessimal","pessimism","pessimist","pessimistic","pessimistically","pest","pester","pesticide","pestiferous","pestilence","pestilent","pestilential","pestle","pesto","pet","peta","petal","petard","petcock","pete","peter","peters","petersburg","petersen","peterson","peterus","petey","pethidine","petiole","petite","petiteness","petition","petitioner","petitions","petits","petkiewicz","petr","petra","petrarch","petrel","petri","petrifaction","petrify","petrina","petrochemical","petrodollar","petroglyph","petrol","petrolatum","petroleum","petrolled","petrolling","petrologist","petrology","petronella","petronia","petronilla","petronille","pets","petted","petter","pettibone","petticoat","pettifog","pettifogged","pettifogger","pettifogging","pettily","pettiness","petting","pettis","pettish","pettishness","petty","petulance","petulant","petunia","peugeot","pew","pewaukee","pewee","pewit","pewter","peyote","peyter","peyton","pf","pfc","pfennig","pfizer","pfobject","pfuser","pfx","pg","pgp","pgsql","ph","phaedra","phaethon","phaeton","phage","phagocyte","phaidra","phalanger","phalanges","phalanx","phalli","phallic","phallus","phanerozoic","phantasm","phantasmagoria","phantasmal","phantasy","phantom","phantomjs","phar","pharaoh","pharaohs","pharetra","pharisaic","pharisaical","pharisee","pharmaceutic","pharmaceutical","pharmaceutics","pharmacist","pharmacological","pharmacologist","pharmacology","pharmacopoeia","pharmacy","pharyngeal","pharynges","pharyngitides","pharyngitis","pharynx","phase","phasellus","phaseout","phases","phd","pheasant","phebe","phedra","phekda","phelia","phelps","phenacetin","phenobarbital","phenol","phenolic","phenolphthalein","phenomena","phenomenal","phenomenological","phenomenology","phenomenon","phenotype","phenyl","phenylalanine","pheromone","phew","phi","phial","phialled","phialling","phidias","phil","philadelphia","philander","philanderer","philanthropic","philanthropically","philanthropist","philanthropy","philatelic","philatelist","philately","philbert","philco","philharmonic","philip","philipa","philippa","philippe","philippians","philippic","philippine","philis","philistine","philistinism","phillida","phillie","phillip","phillipa","phillipe","phillipp","phillis","philly","philodendron","philological","philologist","philology","philomena","philosopher","philosophic","philosophical","philosophize","philosophized","philosophizer","philosophizes","philosophy","philter","philtre","phineas","phip","phipps","phlebitides","phlebitis","phlegm","phlegmatic","phlegmatically","phloem","phlox","phobia","phobic","phobos","phoebe","phoenicia","phoenician","phoenix","phone","phonegap","phoneme","phonemic","phonemically","phonemics","phonenumber","phones","phonetic","phonetically","phonetician","phonetics","phonewindow","phonic","phonically","phonics","phoniness","phonograph","phonographer","phonographic","phonographs","phonologic","phonological","phonologist","phonology","phonon","phony","phooey","phosphatase","phosphate","phosphide","phosphine","phosphor","phosphoresce","phosphorescence","phosphorescent","phosphoric","phosphorous","phosphorus","photo","photocell","photochemical","photochemistry","photocopier","photocopy","photoelectric","photoelectrically","photoelectronic","photoelectrons","photoengrave","photoengraver","photoengraving","photofinishing","photogenic","photogenically","photograph","photographer","photographic","photographically","photographs","photography","photojournalism","photojournalist","photoluminescence","photolysis","photolytic","photometer","photometric","photometrically","photometry","photomicrograph","photomicrography","photomultiplier","photon","photorealism","photos","photosensitive","photoshop","photosphere","photostat","photostatic","photostatted","photostatting","photosyntheses","photosynthesis","photosynthesize","photosynthetic","phototypesetter","phototypesetting","php","phpexcel","phpinfo","phpmailer","phpmyadmin","phpstorm","phpunit","phrasal","phrase","phrasebook","phrasemaking","phraseology","phrases","phrasing","phrenological","phrenologist","phrenology","phtml","phyla","phylactery","phylae","phylis","phyllida","phyllis","phyllys","phylogeny","phylum","phylys","phys","physic","physical","physicality","physically","physician","physicist","physicked","physicking","physics","physicsbody","physiochemical","physiognomy","physiography","physiologic","physiological","physiologist","physiology","physiotherapist","physiotherapy","physique","phytoplankton","pi","pia","piaf","piaget","pianism","pianissimo","pianist","pianistic","piano","pianoforte","pianola","piaster","piata","piazza","pibroch","pibrochs","pic","pica","picador","picaresque","picasso","picayune","piccadilly","piccalilli","piccolo","pick","pickaback","pickax","pickaxe","picked","picker","pickerel","pickering","pickerview","picket","picketer","pickett","pickford","picking","pickle","pickman","pickoff","pickpocket","picks","pickup","pickwick","picky","picnic","picnicked","picnicker","picnicking","picofarad","picojoule","picoseconds","picot","pics","pict","pictograph","pictographs","pictorial","pictorialness","picture","picturebox","pictures","picturesque","picturesqueness","pid","piddle","piddly","pidgin","pids","pie","piebald","piece","piecemeal","piecer","pieces","piecewise","piecework","pieceworker","piechart","piedmont","pieing","pier","pierce","piercer","piercing","pierette","pierre","pierrette","pierrot","pierson","pieter","pietra","pietrek","pietro","piety","piezoelectric","piezoelectricity","piffle","pig","pigeon","pigeonhole","pigged","piggery","pigging","piggish","piggishness","piggy","piggyback","pigheaded","pigheadedness","piglet","pigment","pigmentation","pigmy","pigpen","pigroot","pigskin","pigsty","pigswill","pigtail","pike","piker","pikestaff","pil","pilaf","pilaster","pilate","pilau","pilchard","pilcomayo","pile","pileup","pilfer","pilferage","pilferer","pilgrim","pilgrimage","piling","pill","pillage","pillar","pillbox","pillion","pillory","pillow","pillowcase","pillowslip","pills","pillsbury","pilot","pilothouse","piloting","pimento","pimiento","pimp","pimpernel","pimple","pimplike","pimply","pin","pinafore","pinatubo","pinball","pincas","pincer","pinch","pinchas","pincher","pincus","pincushion","pindar","pine","pineapple","pined","pinehurst","pines","pinfeather","ping","pinhead","pinheaded","pinhole","pining","pinion","pink","pinkerton","pinkeye","pinkie","pinkish","pinkness","pinko","pinky","pinnacle","pinnate","pinned","pinning","pinocchio","pinochet","pinochle","pinpoint","pinprick","pins","pinsetter","pinsky","pinstripe","pint","pintail","pinter","pinterest","pinto","pinup","pinvoke","pinwheel","piny","pinyin","pion","pioneer","piotr","pious","piousness","pip","pipe","pipeline","pipelines","piper","pipermail","pipes","pipestone","pipet","pipette","pipework","piping","pipit","pippa","pipped","pippin","pipping","pippo","pippy","pipsqueak","piquancy","piquant","piquantness","pique","piracy","piraeus","pirandello","piranha","pirate","piratical","pirogi","pirogies","pirouette","pis","pisa","piscatorial","pisces","pisistratus","pismire","piss","pissaro","pistachio","piste","pistil","pistillate","pistol","pistole","pistoleers","piston","pit","pita","pitapat","pitapatted","pitapatting","pitcairn","pitch","pitchblende","pitcher","pitchfork","pitching","pitchman","pitchmen","pitchstone","piteous","piteousness","pitfall","pitfalls","pith","pithily","pithiness","piths","pithy","pitiable","pitiableness","pitiably","pitier","pitiful","pitifuller","pitifullest","pitifulness","pitiless","pitilessness","pitman","pitney","piton","pitt","pittance","pitted","pitting","pittman","pittsburgh","pittsfield","pittston","pituitary","pity","pitying","pius","pivot","pivotal","pivoting","pivottable","pix","pixel","pixelformat","pixels","pixie","pixiness","pixmap","pizarro","pizazz","pizza","pizzeria","pizzicati","pizzicato","pj","pk","pkcs","pkey","pkg","pkgs","pkt","pkwy","pl","placard","placate","placatory","place","placeable","placebo","placed","placehold","placeholder","placeholders","placekick","placeless","placemark","placement","placenta","placental","placer","placerat","places","placid","placidity","placidness","placing","placket","plagiarism","plagiarist","plagiarize","plagiary","plague","plagued","plaguer","plaice","plaid","plain","plainclothes","plainclothesman","plainclothesmen","plainfield","plainness","plainsman","plainsmen","plainsocketimpl","plainsong","plainspoken","plaint","plaintext","plaintiff","plaintive","plaintiveness","plainview","plait","plaiting","plan","planar","planarity","planck","plane","planeload","planer","planes","planet","planetarium","planetary","planetesimal","planetoid","planets","plangency","plangent","plank","planking","plankton","planned","planner","planning","plano","planoconcave","planoconvex","plans","plant","plantagenet","plantain","plantar","plantation","planter","planting","plantlike","plants","plaque","plash","plasm","plasma","plasmid","plaster","plasterboard","plasterer","plastering","plasterwork","plastic","plastically","plasticine","plasticity","plasticize","plat","plate","plateau","plateful","platelet","platen","plater","platform","platforms","plath","plating","platinize","platinum","platitude","platitudinous","plato","platonic","platonism","platonist","platoon","platte","platted","platter","platteville","platting","platy","platypus","platys","plaudit","plausibility","plausible","plausibly","plautus","play","playability","playable","playact","playacting","playback","playbill","playbook","playboy","played","player","playerid","playername","players","playfellow","playframework","playful","playfulness","playgirl","playgoer","playground","playgroup","playhouse","playing","playlist","playlists","playmate","playoff","playpen","playroom","plays","playsound","playtex","plaything","playtime","playwright","playwriting","plaza","plea","plead","pleader","pleading","pleas","pleasant","pleasanter","pleasantest","pleasantness","pleasantry","please","pleased","pleaser","pleases","pleasing","pleasingness","pleasurable","pleasurableness","pleasurably","pleasure","pleasureful","pleasures","pleat","pleater","plebe","plebeian","plebiscite","plectra","plectrum","pledge","pledger","pleiads","pleistocene","plenary","plenipotentiary","plenitude","plenteous","plenteousness","plentiful","plentifulness","plenty","plenum","pleonasm","plethora","pleura","pleurae","pleural","pleurisy","plexiglas","plexus","pliability","pliable","pliableness","pliancy","pliant","pliantness","plication","plier","plight","plimsolls","plink","plinker","plinth","plinths","pliny","pliocene","plist","plnkr","plo","plod","plodded","plodder","plodding","plone","plop","plopped","plopping","plosive","plot","plotly","plots","plotted","plotter","plotting","plover","plow","plowed","plower","plowman","plowmen","plowshare","ploy","plpgsql","pls","plt","pluck","plucker","pluckily","pluckiness","plucky","plug","pluggable","plugged","plugging","plughole","plugin","plugins","plum","plumage","plumb","plumbago","plumbed","plumber","plumbing","plume","plummer","plummest","plummet","plummy","plump","plumper","plumpness","plumy","plunder","plunge","plunger","plunk","plunker","pluperfect","plural","pluralism","pluralist","pluralistic","plurality","pluralization","pluralize","pluralizer","plus","plush","plushness","plushy","plussed","plussing","plutarch","pluto","plutocracy","plutocrat","plutocratic","plutonium","pluvial","ply","plymouth","plyr","plywood","plz","pm","pmd","pms","pn","pname","pneumatic","pneumatically","pneumatics","pneumonia","png","po","poach","poacher","poc","pocahontas","pock","pocket","pocketbook","pocketful","pocketing","pocketknife","pocketknives","pockmark","poco","pocono","pocoo","pod","podcast","podded","podding","podge","podgorica","podiatrist","podiatry","podium","pods","podunk","poe","poem","poesy","poet","poetaster","poetess","poetic","poetical","poetically","poeticalness","poetics","poetry","pogo","pogrom","poi","poignancy","poignant","poincar","poinciana","poindexter","poinsettia","point","pointblank","pointed","pointedness","pointer","pointers","pointf","pointillism","pointillist","pointing","pointless","pointlessness","points","pointy","pois","poise","poison","poisoner","poisoning","poisonous","poisson","pojo","poke","pokemon","poker","pokerface","poky","pol","poland","polanski","polar","polarimeter","polarimetry","polaris","polariscope","polarity","polarization","polarize","polarized","polarizes","polarizing","polarogram","polarograph","polarography","polaroid","pole","polecat","polemic","polemical","polemicist","polemics","poler","polestar","poleward","police","policeman","policemen","policewoman","policewomen","policies","policy","policyholder","policymaker","policymaking","polio","poliomyelitides","poliomyelitis","polis","polish","polished","polisher","politburo","polite","politeness","politesse","politic","political","politically","politician","politicians","politicization","politicize","politicked","politicking","politico","politics","polity","polk","polka","poll","pollack","pollard","polled","pollen","pollinate","pollination","pollinator","polling","polliwog","pollock","polls","pollster","pollutant","pollute","polluted","polluter","pollution","pollux","polly","pollyanna","pollywog","polo","polonaise","polonium","poltergeist","poltroon","poly","polyandrous","polyandry","polyatomic","polybutene","polycarbonate","polychemicals","polyclinic","polycrystalline","polyelectrolytes","polyester","polyether","polyethylene","polyfill","polyfills","polygamist","polygamous","polygamy","polyglot","polygon","polygonal","polygons","polygraph","polygraphs","polygynous","polyhedral","polyhedron","polyhymnia","polyisobutylene","polyisocyanates","polyline","polymath","polymaths","polymer","polymerase","polymeric","polymerization","polymerize","polymorph","polymorphic","polymorphism","polymyositis","polynesia","polynesian","polynomial","polyp","polyphemus","polyphonic","polyphony","polyphosphate","polypropylene","polystyrene","polysyllabic","polysyllable","polytechnic","polytheism","polytheist","polytheistic","polythene","polytonal","polytopes","polyunsaturated","polyurethane","polyvinyl","pom","pomade","pomander","pomegranate","pomerania","pomeranian","pommel","pomona","pomp","pompadour","pompano","pompeian","pompeii","pompey","pompom","pompon","pomposity","pompous","pompousness","ponce","ponchartrain","poncho","pond","ponder","ponderer","ponderous","ponderousness","pone","pong","pongee","poniard","pons","pontchartrain","pontiac","pontianak","pontiff","pontifical","pontificate","pontoon","pony","ponytail","pooch","poodle","poof","pooh","poohs","pool","poole","pooling","poolroom","pools","poolside","poona","poop","poor","poorboy","poorhouse","poorly","poorness","pop","popcorn","pope","popek","popen","popeye","popgun","popinjay","poplar","poplin","popocatepetl","popover","poppa","popped","popper","poppet","popping","poppins","poppy","poppycock","poppyseed","pops","popsicle","populace","popular","popularism","popularity","popularization","popularize","popularized","popularizer","popularizes","popularizing","populate","populated","populates","populating","population","populism","populist","populous","populousness","popup","popupmenu","popups","popupwindow","por","porcelain","porch","porcine","porcupine","pore","porfirio","porgy","poring","pork","porker","porky","porn","porno","pornographer","pornographic","pornographically","pornography","porosity","porous","porousness","porphyritic","porphyry","porpoise","porridge","porrima","porringer","porsche","port","porta","portability","portable","portables","portably","portage","portaged","portaging","portal","portamento","portcullis","porte","ported","portend","portent","portentous","portentousness","porter","porterage","porterhouse","portfolio","porthole","portia","portico","porticoes","portie","porting","portion","portions","portire","portland","portlet","portliness","portly","portmanteau","portrait","portraitist","portraiture","portray","portrayal","portrayer","ports","portsmouth","porttitor","portugal","portuguese","portulaca","porty","pos","pose","posed","poseidon","poser","poses","poseur","posh","posing","posit","positifs","position","positionable","positional","positioned","positioning","positions","positive","positiveness","positives","positivism","positivist","positivity","positron","posix","posixct","posner","poss","posse","possess","possessed","possession","possessional","possessive","possessiveness","possessor","possibilities","possibility","possible","possibly","possum","post","postage","postal","postalcode","postback","postbag","postbox","postcard","postcode","postcondition","postconsonantal","postconstruct","postcss","postdata","postdate","postdelayed","postdoctoral","posted","poster","posterior","posteriori","posterity","posters","postfields","postfix","postgis","postgraduate","postgres","postgresql","posthaste","posthumous","posthumousness","posthypnotic","postid","postilion","postimg","postindustrial","posting","postlude","postman","postmarital","postmark","postmaster","postmen","postmeridian","postmessage","postmeta","postmistress","postmodern","postmodernist","postmortem","postnasal","postnatal","postoperative","postorder","postpaid","postpartum","postpone","postponement","postpositions","postprandial","posts","postscript","postsecondary","postulate","postulation","postural","posture","posturer","postvocalic","postwar","posuere","posx","posy","pot","potability","potable","potableness","potage","potash","potassium","potato","potatoes","potbelly","potboil","potboiler","potemkin","potency","potent","potentate","potential","potentiality","potentially","potentiating","potentiometer","potful","pothead","pother","potherb","potholder","pothole","potholing","pothook","potion","potlatch","potluck","potomac","potpie","potpourri","potsdam","potsherd","potshot","pottage","pottawatomie","potted","potter","pottery","potting","potts","potty","pouch","poughkeepsie","poul","poulterer","poultice","poultry","pounce","pound","poundage","pounder","pounds","pour","pourer","poussin","pout","pouter","poverty","pow","powder","powderpuff","powdery","powell","power","powerboat","powered","powerful","powerfulness","powerhouse","powerless","powerlessness","powermanager","powermock","powerpoint","powers","powershell","powhatan","powwow","pox","poznan","pp","ppa","ppc","ppm","ppp","ppr","pprint","pps","ppt","pq","pqr","pr","practicability","practicable","practicably","practical","practicality","practically","practicalness","practice","practiced","practicer","practices","practicing","practicum","practise","practitioner","pradesh","prado","praesent","praetor","praetorian","pragma","pragmatic","pragmatical","pragmatics","pragmatism","pragmatist","prague","praia","prairie","praise","praiser","praiseworthiness","praiseworthy","praising","prakrit","praline","pram","prance","prancer","prancing","prank","prankster","praseodymium","pratchett","prate","prater","pratfall","prating","pratt","prattle","prattler","prattling","prattville","pravda","prawn","praxes","praxis","praxiteles","pray","prayer","prayerbook","prayerful","prayerfulness","prc","prcis","prd","pre","preach","preacher","preaching","preachment","preachy","preadolescence","preakness","preallocate","preallocation","preallocator","preamble","preamp","preamplifier","prearrange","prearrangement","preassign","preauthorize","prebendary","prebuilt","precambrian","precancel","precancerous","precarious","precariousness","precaution","precautionary","precede","preceded","precedence","precedent","precedented","preceding","precept","preceptive","preceptor","precess","precession","precinct","preciosity","precious","preciousness","precipice","precipitable","precipitant","precipitate","precipitateness","precipitation","precipitous","precipitousness","precise","precisely","preciseness","precision","preclude","preclusion","precocious","precociousness","precocity","precode","precognition","precognitive","precollege","precolonial","precompile","precompiled","precomputed","preconceive","preconception","precondition","preconscious","precook","precursor","precursory","precut","pred","predate","predation","predator","predatory","predecease","predecessor","predeclared","predecline","predefine","predefined","predefinition","predesignate","predestination","predestine","predetermination","predetermine","predeterminer","predicable","predicament","predicate","predicates","predicatewithformat","predication","predicator","predict","predictability","predictable","predictably","predicted","prediction","predictions","predictive","predictor","predigest","predilect","predilection","predispose","predisposition","predoctoral","predominance","predominant","predominate","predomination","preexisting","preemie","preeminence","preeminent","preemployment","preempt","preemption","preemptive","preemptor","preen","preener","preexist","preexistence","preexistent","pref","prefab","prefabbed","prefabbing","prefabricate","prefabrication","preface","prefacer","prefatory","prefect","prefecture","prefer","preferable","preferableness","preferably","preference","preferencemanager","preferences","preferential","preferment","preferred","preferring","prefetch","prefheight","prefiguration","prefigure","prefix","prefixed","prefixes","preflight","preform","prefs","prefwidth","preg","pregnancy","pregnant","preheat","prehensile","prehistoric","prehistorical","prehistory","preindustrial","preinitialize","preinterview","preisolated","prejudge","prejudger","prejudgment","prejudice","prejudiced","prejudicial","prekindergarten","prelacy","prelate","preliminarily","preliminary","preliterate","preload","preloaded","preloader","prelude","preluder","premarital","premarket","premature","prematureness","prematurity","premed","premedical","premeditate","premeditated","premeditation","premenstrual","premier","premiere","premiership","preminger","premise","premiss","premium","premix","premolar","premonition","premonitory","pren","prenatal","prent","prentice","prenticed","prenticing","prentiss","prenuptial","preoccupation","preoccupy","preoperative","preordain","prep","prepackage","prepaid","preparation","preparative","preparatory","prepare","prepared","preparedly","preparedness","preparedstatement","prepareforsegue","preparestatement","preparing","prepay","prepayment","prepend","prepender","prepends","preplanned","preponderance","preponderant","preponderate","preposition","prepositional","prepossess","prepossessing","prepossession","preposterous","preposterousness","prepped","prepping","preppy","preprepared","preprint","preprocess","preprocessed","preprocessing","preprocessor","preproduction","preprogrammed","prepubescence","prepubescent","prepublication","prepuce","prequel","preradiation","prerecord","preregister","preregistration","prerequisite","prerequisites","prerogative","pres","presage","presager","presbyopia","presbyter","presbyterian","presbyterianism","presbytery","preschool","prescience","prescient","prescott","prescribe","prescribed","prescriber","prescript","prescription","prescriptive","preselect","preselected","preselecteduris","presence","present","presentable","presentableness","presentably","presentation","presentational","presentations","presented","presenter","presentiment","presenting","presentment","presentmodalviewcontroller","presents","presentviewcontroller","preservation","preservationist","preservative","preserve","preserved","preserver","preserves","preserving","preset","presets","presetting","preshrank","preshrink","preshrunk","preside","presidency","president","presidential","presider","presidia","presidium","presley","presoaks","presort","press","pressed","presser","presses","pressing","pressingly","pressman","pressmen","pressure","pressurization","pressurize","pressurized","prestashop","prestidigitate","prestidigitation","prestidigitator","prestidigitatorial","prestige","prestigious","presto","preston","presumably","presume","presumer","presuming","presumption","presumptive","presumptuous","presumptuousness","presuppose","presupposition","pretax","preteen","pretend","pretended","pretender","pretending","pretense","pretension","pretentious","pretentiousness","preterit","preterite","preternatural","pretest","pretext","pretium","pretoria","pretreated","pretreatment","pretrial","prettier","prettify","prettily","prettiness","pretty","prettyprint","pretzel","prev","prevail","prevailing","prevalence","prevalent","prevaricate","prevaricator","prevent","preventable","preventably","preventative","preventdefault","prevented","preventer","preventing","prevention","preventive","preventiveness","prevents","preview","previous","previously","prevision","prevstate","prewar","prexes","prey","preyer","pri","priam","priapic","pribilof","price","priced","priceless","pricer","prices","pricey","pricier","priciest","pricing","prick","pricker","pricking","prickle","prickliness","prickly","pride","prideful","prier","priest","priestess","priesthood","priestley","priestliness","priestly","prig","prigged","prigging","priggish","priggishness","prim","primacy","primal","primarily","primary","primarykey","primarystage","primate","prime","primed","primefaces","primely","primeness","primer","primes","primeval","priming","primitive","primitiveness","primitives","primitivism","primmed","primmer","primmest","primming","primness","primogenitor","primogeniture","primordial","primp","primrose","prince","princedom","princeliness","princely","princess","princeton","principal","principality","principe","principia","principle","principled","principles","print","printable","printably","printed","printer","printers","printf","printing","println","printmake","printmaker","printmaking","printout","prints","printstacktrace","printstream","printwriter","prinz","prio","prior","prioress","priori","priorities","prioritize","priority","priory","pris","prisca","priscella","priscilla","prise","prised","prism","prismatic","prison","prisoner","prissie","prissily","prissiness","prissy","pristine","prithee","priv","privacy","private","privateer","privatekey","privateness","privation","privative","privatization","privatize","privet","privilege","privileged","privileges","privily","privy","prize","prized","prizefight","prizefighter","prizefighting","prizewinner","prizewinning","prj","prntscr","pro","proactive","prob","probabilist","probabilistic","probabilistically","probabilities","probability","probable","probably","probate","probated","probates","probating","probation","probational","probationary","probationer","probative","probe","prober","probity","problem","problematic","problematical","problems","proboscis","proc","procaine","procedural","procedure","procedures","proceed","proceeder","proceeding","proceeds","process","processbuilder","processdata","processed","processes","processid","processing","procession","processional","processname","processor","processors","processrequest","processstartinfo","proclamation","proclivity","proconsular","procrastinate","procrastination","procrastinator","procreational","procreatory","procrustean","procrustes","procs","proctor","proctorial","procurable","procure","procurement","procyon","prod","prodded","prodding","prodid","prodigal","prodigality","prodigious","prodigiousness","prodigy","produce","produced","producer","producers","produces","producible","producing","product","productcode","productid","production","productive","productively","productiveness","productivities","productivity","productize","productlist","productname","products","producttype","prof","profanation","profane","profaneness","profanity","professed","profession","professional","professionalism","professionalize","professionals","professor","professorial","professors","professorship","proffer","proficiency","proficient","profile","profiler","profiles","profiling","profit","profitability","profitable","profitableness","profitably","profiteer","profiterole","profitless","profits","profligacy","profligate","proforma","profound","profoundity","profoundness","profundity","profuse","profuseness","prog","progenitor","progeny","progesterone","progid","prognathous","prognoses","prognosis","prognostic","prognosticate","prognostication","prognosticator","program","programatically","programdata","programed","programing","programm","programmability","programmable","programmatic","programmatically","programme","programmed","programmer","programmers","programming","programmings","programs","progress","progressbar","progressdialog","progression","progressive","progressiveness","progressivism","proguard","proguardfiles","prohibit","prohibited","prohibiter","prohibition","prohibitionist","prohibitive","prohibitiveness","prohibitory","proin","proj","project","projected","projectid","projectile","projection","projectionist","projections","projective","projectname","projector","projects","prokofieff","prokofiev","prolegomena","proletarian","proletarianization","proletarianized","proletariat","proliferate","proliferation","prolific","prolifically","prolix","prolixity","prolog","prologize","prologue","prologuize","prolong","prolongate","prolongation","prolonger","promenade","promenader","promethean","prometheus","promethium","prominence","prominent","promiscuity","promiscuous","promiscuousness","promise","promised","promises","promising","promissory","promo","promontory","promote","promoted","promoter","promotion","promotions","promotive","promotiveness","prompt","prompted","prompter","prompting","promptitude","promptness","prompts","promulgate","promulgation","promulgator","pron","prone","proneness","prong","pronghorn","pronominalization","pronominalize","pronounce","pronounceable","pronounced","pronouncedly","pronouncement","pronouncer","pronto","pronunciation","proof","proofed","proofer","proofing","proofread","proofreader","prop","propaganda","propagandist","propagandistic","propagandize","propagate","propagated","propagation","propagator","propel","propellant","propelled","propeller","propelling","propensity","proper","properly","properness","propertied","properties","property","propertychanged","propertychangedeventargs","propertychangedeventhandler","propertygroup","propertyinfo","propertyname","propertytype","propertyvalue","prophecy","prophesier","prophesy","prophet","prophetess","prophetic","prophetical","prophylactic","prophylaxes","prophylaxis","propinquity","propionate","propitiate","propitiatory","propitious","propitiousness","propname","proponent","proportion","proportional","proportionality","proportionate","proportioner","proportionment","proposal","proposals","propose","proposed","proposition","propped","propping","proprietary","proprietor","proprietorial","proprietorship","proprietress","propriety","proprioception","proprioceptive","props","proptypes","propulsion","propulsive","propylene","prorogation","prorogue","pros","prosaic","prosaically","proscenium","prosciutti","prosciutto","proscription","proscriptive","prose","prosecute","prosecution","prosecutor","proselyte","proselytism","proselytize","proser","proserpine","prosodic","prosody","prospect","prospection","prospective","prospectiveness","prospector","prospectus","prosper","prosperity","prosperous","prosperousness","prostate","prostheses","prosthesis","prosthetic","prosthetics","prostitute","prostitution","prostrate","prostration","prosy","prot","protactinium","protagonist","protagoras","protean","protease","protect","protected","protecting","protection","protectiondomain","protectionism","protectionist","protective","protectiveness","protector","protectorate","protein","proteolysis","proteolytic","proterozoic","protest","protestant","protestantism","protestation","protesting","proteus","protg","protges","proto","protobuf","protocol","protocols","protoplasm","protoplasmic","prototype","prototypes","prototypic","prototypical","protozoa","protozoan","protozoic","protozoon","protract","protractor","protrude","protrusile","protrusion","protrusive","protuberance","protuberant","proud","proudhon","proust","prov","provabilities","provability","provable","provableness","provably","prove","proved","proven","provenal","provenance","provencals","provence","provender","provenience","provenly","prover","proverb","proverbial","proverbs","proves","provide","provided","providence","provident","providential","provider","providername","providers","provides","providing","province","provincial","provincialism","proving","provision","provisional","provisioner","provisioning","proviso","provo","provocateur","provocative","provocativeness","provoke","provoked","provoking","provolone","provost","prow","prowess","prowl","prowler","proxies","proximal","proximate","proximateness","proximity","proxmire","proxy","prozac","prto","pru","prude","prudence","prudent","prudential","prudery","prudi","prudish","prudishness","prudy","prue","pruitt","prune","pruner","prurience","prurient","prussia","prussian","prussic","prut","pry","pryce","pryer","prying","ps","psalm","psalmist","psalms","psalter","psaltery","psd","psephologist","pseudo","pseudocode","pseudonym","pseudonymous","pseudopod","pseudoscience","pshaw","psi","psittacoses","psittacosis","psoriases","psoriasis","psql","psr","psst","pst","pstmt","psych","psyche","psychedelic","psychedelically","psychiatric","psychiatrist","psychiatry","psychic","psychical","psycho","psychoacoustic","psychoacoustics","psychoactive","psychoanalysis","psychoanalyst","psychoanalytic","psychoanalytical","psychoanalyze","psychobabble","psychobiology","psychocultural","psychodrama","psychogenic","psychokinesis","psycholinguistic","psycholinguistics","psycholinguists","psychological","psychologist","psychology","psychometric","psychometrics","psychometry","psychoneuroses","psychoneurosis","psychopath","psychopathic","psychopathology","psychopaths","psychopathy","psychophysic","psychophysical","psychophysics","psychophysiology","psychos","psychosis","psychosocial","psychosomatic","psychosomatics","psychotherapeutic","psychotherapist","psychotherapy","psychotic","psychotically","psychotropic","psychs","psycopg","pt","pta","ptah","ptain","ptarmigan","pterodactyl","pthread","pthreads","pto","ptolemaic","ptolemaists","ptolemy","ptomaine","ptr","pts","pu","pub","pubbed","pubbing","pubdate","pubertal","puberty","pubes","pubescence","pubescent","pubic","pubis","public","publican","publication","publications","publicist","publicity","publicize","publicized","publickey","publickeytoken","publicly","publicness","publics","publish","publishable","published","publisher","publishers","publishes","publishing","pubnub","pubs","pubsub","puccini","puce","puck","pucker","puckett","puckish","puckishness","pudding","puddle","puddler","puddling","puddly","pudenda","pudendum","pudginess","pudgy","puebla","pueblo","puerile","puerility","puerperal","puers","puerto","puff","puffball","puffer","puffery","puffin","puffiness","puffy","pug","puget","pugged","pugging","pugh","pugilism","pugilist","pugilistic","pugnacious","pugnaciousness","pugnacity","puissant","puke","pukka","pulaski","pulchritude","pulchritudinous","pule","pulitzer","pull","pullback","pulled","pullet","pulley","pulling","pullman","pullout","pullover","pulls","pulmonary","pulp","pulpiness","pulpit","pulpwood","pulpy","pulsar","pulsate","pulsation","pulse","pulser","pulverable","pulverization","pulverize","pulverized","pulverizer","pulverizes","pulvinar","puma","pumice","pummel","pump","pumpernickel","pumping","pumpkin","pun","punch","punchbowl","punched","puncheon","puncher","punchline","punchy","punctilio","punctilious","punctiliousness","punctual","punctualities","punctuality","punctualness","punctuate","punctuation","punctuational","puncture","pundit","punditry","pungency","pungent","punic","puniness","punish","punished","punisher","punishment","punitive","punitiveness","punjab","punjabi","punk","punky","punned","punning","punster","punt","punter","puny","pup","pupa","pupae","pupal","pupate","pupil","pupillage","pupped","puppet","puppeteer","puppetry","pupping","puppy","puppyish","purblind","purcell","purchasable","purchase","purchased","purchaser","purchases","purchasing","purdah","purdahs","purdue","pure","purebred","puree","pureeing","purely","pureness","purgation","purgative","purgatorial","purgatory","purge","purger","purify","purim","purina","purine","purism","purist","puristic","puritan","puritanic","puritanical","puritanism","purity","purl","purlieu","purloin","purloiner","purple","purplish","purport","purported","purpose","purposeful","purposefulness","purposeless","purposelessness","purposes","purposive","purposiveness","purr","purring","purse","purser","pursuance","pursuant","pursue","pursuer","pursuit","purulence","purulent","purus","purvey","purveyance","purveyor","purview","pus","pusan","pusey","push","pushbutton","pushcart","pushchair","pushdown","pushed","pusher","pushes","pushily","pushiness","pushing","pushkin","pushover","pushstate","pushtu","pushviewcontroller","pushy","pusillanimity","pusillanimous","puss","pussy","pussycat","pussyfoot","pustular","pustule","put","putative","putchar","putextra","putin","putint","putnam","putnem","putout","putrefaction","putrefactive","putrefy","putrescence","putrescent","putrid","putridity","putridness","puts","putsch","putstring","putstrln","putt","putted","puttee","putter","putting","putty","puttying","puzzle","puzzled","puzzlement","puzzler","pv","pvc","pvt","pw","pwd","px","py","pyc","pycharm","pycharmprojects","pydata","pydev","pygame","pygmalion","pygmy","pyhrric","pyinstaller","pyknotic","pylab","pyle","pylon","pylori","pyloric","pylorus","pym","pymongo","pynchon","pyobject","pyodbc","pyongyang","pyorrhea","pyotr","pypi","pyplot","pypy","pyqt","pyramid","pyramidal","pyre","pyrenees","pyrex","pyridine","pyrimidine","pyrite","pyroelectric","pyroelectricity","pyrolysis","pyrolyze","pyromania","pyromaniac","pyrometer","pyrometry","pyrophosphate","pyrotechnic","pyrotechnical","pyrotechnics","pyroxene","pyroxenite","pyrrhic","pyside","pyspark","pytest","pythagoras","pythagorean","pythias","python","pythonic","pythonpath","pytorch","pyx","q","qa","qaddafi","qantas","qapplication","qatar","qb","qc","qdebug","qed","qemu","qi","qid","qimage","qingdao","qiqihar","ql","qlabel","qlineedit","qlist","qm","qmainwindow","qmake","qml","qmodelindex","qn","qname","qobject","qom","qos","qp","qpushbutton","qq","qr","qrcode","qry","qs","qsa","qsort","qstring","qt","qtcore","qtgui","qthread","qtquick","qtwidgets","qty","qu","qua","quaalude","quack","quackery","quackish","quad","quadded","quadding","quadrangle","quadrangular","quadrant","quadraphonic","quadrapole","quadratic","quadratical","quadrature","quadrennial","quadrennium","quadric","quadriceps","quadrilateral","quadrille","quadrillion","quadripartite","quadriplegia","quadriplegic","quadrivia","quadrivium","quadruped","quadrupedal","quadruple","quadruplet","quadruplicate","quadruply","quadrupole","quadword","quaff","quaffer","quagmire","quahog","quail","quaint","quaintness","quake","quaker","quakeress","quakerism","quaky","qualification","qualified","qualifier","qualifiers","qualify","qualitative","quality","qualm","qualmish","quam","quandary","quangos","quanta","quantico","quantifiable","quantified","quantifier","quantify","quantile","quantitative","quantitativeness","quantities","quantity","quantization","quantize","quantizer","quantum","quarantine","quark","quarrel","quarreler","quarrellings","quarrelsome","quarrelsomeness","quarrier","quarry","quarryman","quarrymen","quart","quarter","quarterback","quarterdeck","quarterer","quarterfinal","quartering","quarterly","quartermaster","quarters","quarterstaff","quarterstaves","quartet","quartic","quartile","quarto","quartz","quartzcore","quartzite","quasar","quash","quasi","quasilinear","quasimodo","quaternary","quaternion","quatrain","quaver","quavering","quavery","quay","quayle","quayside","que","queasily","queasiness","queasy","quebec","quechua","queen","queenie","queenly","queensland","queer","queerness","quell","queller","quench","quenchable","quenched","quencher","quenchless","quent","quentin","querida","queried","queries","quern","querulous","querulousness","query","querybuilder","querying","queryselector","queryselectorall","queryset","querystring","ques","quest","quested","quester","questing","question","questionable","questionableness","questionably","questioned","questioner","questionid","questioning","questionnaire","questions","quests","quetzalcoatl","queue","queued","queuer","queues","queuing","quezon","qui","quibble","quibbler","quiche","quick","quickbooks","quicken","quicker","quickest","quickie","quicklime","quickly","quickness","quicksand","quicksilver","quicksort","quickstart","quickstep","quid","quiesce","quiescence","quiescent","quiet","quieted","quieten","quieter","quieting","quietly","quietness","quiets","quietude","quietus","quill","quillan","quilt","quilter","quilting","quince","quincentenary","quincey","quincy","quinine","quinlan","quinn","quinquennial","quinsy","quint","quinta","quintana","quintessence","quintessential","quintet","quintic","quintile","quintilian","quintilla","quintillion","quintillionth","quintin","quintina","quinton","quintuple","quintuplet","quintus","quip","quipped","quipper","quipping","quipster","quire","quired","quires","quirinal","quiring","quirk","quirkiness","quirks","quirksmode","quirky","quirt","quis","quisling","quisque","quit","quitclaim","quite","quito","quittance","quitter","quitting","quiver","quivering","quivery","quixote","quixotic","quixotically","quixotism","quiz","quizzed","quizzer","quizzes","quizzical","quizzing","quo","quoin","quoit","quondam","quonset","quora","quorate","quorum","quot","quota","quotability","quotation","quote","quoted","quotename","quoter","quotes","quotidian","quotient","quoting","qux","qvariant","qvboxlayout","qw","qwerty","qwertys","qwidget","qx","r","ra","rab","rabat","rabbet","rabbi","rabbinate","rabbinic","rabbinical","rabbit","rabbiter","rabbitmq","rabble","rabbler","rabelais","rabelaisian","rabi","rabid","rabidness","rabies","rabin","rabis","raccoon","race","racecourse","racegoers","racehorse","raceme","racer","races","racetrack","raceway","rachael","rachel","rachele","rachelle","rachmaninoff","racial","racialism","racialist","racily","racine","raciness","racism","racist","rack","racket","racketeer","rackety","rackspace","raconteur","racoon","racquet","racquetball","racy","rad","radar","radarscope","radcliffe","radded","radder","raddest","raddie","radding","raddy","radial","radian","radiance","radians","radiant","radiate","radiation","radiative","radiator","radical","radicalism","radicalization","radicalize","radicalness","radices","radii","radio","radioactive","radioactivity","radioastronomical","radioastronomy","radiobutton","radiobuttons","radiocarbon","radiochemical","radiochemistry","radiogalaxy","radiogram","radiographer","radiographic","radiography","radiogroup","radioisotope","radiologic","radiological","radiologist","radiology","radioman","radiomen","radiometer","radiometric","radiometry","radionics","radionuclide","radiopasteurization","radiophone","radiophysics","radios","radioscopy","radiosonde","radiosterilization","radiosterilized","radiotelegraph","radiotelegraphs","radiotelegraphy","radiotelephone","radiotherapist","radiotherapy","radish","radium","radius","radix","radon","rads","rae","raeann","raf","rafa","rafael","rafaela","rafaelia","rafaelita","rafaellle","rafaello","rafe","raff","raffaello","raffarty","rafferty","raffia","raffish","raffishness","raffle","rafi","raft","rafter","rag","raga","ragamuffin","ragbag","rage","ragged","raggedness","raggedy","ragging","raging","raglan","ragnar","ragnark","ragout","ragtag","ragtime","ragweed","ragwort","rah","rahal","rahel","rahs","raid","raider","rail","railbird","railer","railhead","railing","raillery","railroad","railroader","railroading","rails","railscasts","railsinstaller","railties","railway","railwaymen","raiment","raimondo","raimund","raimundo","rain","raina","rainbow","raincloud","raincoat","raindrop","raine","rainer","rainfall","rainforest","rainier","rainless","rainmaker","rainmaking","rainproof","rainstorm","rainwater","rainy","raise","raised","raisepropertychanged","raiser","raises","raisin","raising","raj","rajah","rajahs","rajive","rake","rakel","raker","rakish","rakishness","raleigh","ralf","ralina","rally","ralph","ralston","ram","rama","ramada","ramadan","ramakrishna","raman","ramayana","ramble","rambler","rambling","rambo","rambunctious","rambunctiousness","ramekin","ramie","ramification","ramify","ramirez","ramiro","ramjet","rammed","ramming","ramo","ramon","ramona","ramonda","ramp","rampage","rampancy","rampant","rampart","ramrod","ramrodded","ramrodding","rams","ramsay","ramses","ramsey","ramshackle","ran","rana","rance","rancell","ranch","rancher","rancho","rancid","rancidity","rancidness","rancor","rancorous","rand","randa","randal","randall","randee","randell","randene","randi","randie","randiness","randint","randn","randolf","randolph","random","randomization","randomize","randomly","randomness","randomnumber","randrange","randy","ranee","rang","range","ranged","rangeland","ranger","ranges","ranginess","ranging","rangoon","rangy","rani","rania","ranice","ranier","ranique","rank","ranked","ranker","rankin","rankine","ranking","rankle","rankness","ranks","ranna","ransack","ransacker","ransell","ransom","ransomer","rant","ranter","ranting","raoul","rap","rapacious","rapaciousness","rapacity","rape","rapeseed","raphael","raphaela","rapid","rapidity","rapidly","rapidness","rapier","rapine","rapist","rapped","rappel","rappelled","rappelling","rapper","rapping","rapport","rapporteur","rapprochement","rapscallion","rapt","raptness","rapture","rapturous","rapturousness","rapunzel","raquel","raquela","rar","rare","rarebit","rarefaction","rarefy","rarely","rareness","rarity","rasalgethi","rasalhague","rascal","rash","rasher","rashness","rasia","rasla","rasmussen","rasp","raspberry","raspberrypi","rasper","rasping","rasputin","raspy","rastaban","rastafarian","raster","rastus","rat","ratchet","rate","rateable","rated","ratepayer","rater","rates","ratfor","rather","rathskeller","ratifier","ratify","rating","ratings","ratio","ratiocinate","ratiocination","ration","rational","rationale","rationalism","rationalist","rationalistic","rationality","rationalization","rationalize","rationalizer","rationalness","ratios","ratliff","ratlike","ratline","rattail","rattan","ratted","ratter","ratting","rattle","rattlebrain","rattlesnake","rattletrap","rattling","rattly","rattrap","ratty","raucous","raucousness","raul","raunchily","raunchiness","raunchy","ravage","ravager","rave","ravel","raveling","raven","ravenous","raver","ravi","ravid","ravine","ravioli","ravish","ravisher","ravishing","ravishment","raviv","raw","rawalpindi","rawboned","rawdata","rawhide","rawley","rawlings","rawlins","rawlinson","rawness","rawquery","rawson","rawvalue","rax","ray","rayburn","raychel","raye","rayleigh","raymond","raymondville","raymund","raymundo","rayna","raynard","raynell","rayner","raynor","rayon","rayshell","raytheon","raywenderlich","raze","razer","razor","razorback","razorblades","razz","razzmatazz","rb","rbenv","rbi","rbind","rbp","rbx","rc","rca","rcp","rcpp","rcpt","rcs","rcx","rd","rda","rdata","rdbms","rdd","rdf","rdfs","rdi","rdoc","rdp","rdr","rds","rdx","re","rea","reabbreviate","reach","reachability","reachable","reachably","reached","reacher","reaches","reaching","reacquisition","react","reactant","reactdom","reacted","reaction","reactionary","reactive","reactivex","reactivity","reactjs","reactor","read","readability","readable","readably","readalllines","readalltext","readdata","readdir","readdress","reade","reader","readers","readership","readfile","readfilesync","readied","readies","readily","readiness","readinesses","reading","readings","readint","readkey","readline","readlines","readme","readobject","readonly","readopt","readout","reads","readstring","readthedocs","readtoend","readvalue","readwrite","ready","readying","readystate","reagan","reagen","real","realise","realised","realism","realisms","realist","realistic","realistically","reality","realizability","realizable","realizableness","realizably","realization","realize","realized","realizer","realizes","realizing","realloc","really","realm","realness","realpath","realpolitik","realtime","realtor","realty","ream","reamer","reamonn","reanimate","reap","reaper","reappraise","rear","rearguard","rearmost","rearrange","rearward","reason","reasonable","reasonableness","reasonably","reasoner","reasoning","reasonless","reasons","reassess","reassign","reassuringly","reattach","reawakening","reba","rebase","rebate","rebbecca","rebe","rebeca","rebecca","rebecka","rebeka","rebekah","rebekkah","rebel","rebeller","rebellion","rebellious","rebelliousness","rebid","rebidding","rebind","rebirth","reboil","rebook","reboot","rebound","rebroadcast","rebuild","rebuilding","rebuilt","rebuke","rebuking","rebus","rebuttal","rebutting","rec","recalcitrance","recalcitrant","recalculate","recalibrate","recall","recant","recantation","recap","recappable","recapping","recaptcha","recast","recd","recede","receipt","receivable","receive","received","receiver","receivers","receivership","receives","receiving","recency","recension","recent","recently","recentness","receptacle","reception","receptionist","receptive","receptiveness","receptivity","receptor","recess","recessional","recessionary","recessive","recessiveness","rechargeable","recheck","recherch","recherches","recidivism","recidivist","recieve","recieved","recife","recipe","recipes","recipiency","recipient","recipients","reciprocal","reciprocate","reciprocation","reciprocity","recital","recitalist","recitative","recite","reciter","recked","recking","reckless","recklessness","reckon","reckoner","reckoning","reclaim","reclamation","recline","recliner","recluse","reclusion","recode","recognise","recognition","recognizability","recognizable","recognizably","recognize","recognized","recognizedly","recognizer","recognizes","recognizing","recognizingly","recoilless","recoinage","recolor","recombinant","recombine","recommend","recommendation","recommendations","recommended","recommends","recompense","recompile","recompute","reconcile","reconciled","reconciler","recondite","reconditeness","reconfigurability","reconfigure","reconnaissance","reconnect","reconnoiter","reconquer","reconsecrate","reconstitute","reconstruct","reconstructed","reconstruction","reconsult","recontact","recontaminate","recontribute","recook","recopy","record","recorded","recorder","recordid","recording","records","recordset","recourse","recover","recoverability","recoverable","recovery","recreant","recreate","recreated","recreating","recreational","recriminate","recrimination","recriminatory","recross","recrudesce","recrudescence","recrudescent","recruit","recruiter","recruitment","recrystallize","rect","recta","rectal","rectangle","rectangles","rectangular","rectifiable","rectification","rectifier","rectify","rectilinear","rectitude","recto","rector","rectory","rects","rectum","recumbent","recuperate","recuperation","recur","recurrence","recurrent","recurring","recurse","recursion","recursive","recursively","recusant","recuse","recv","recyclable","recycle","recycled","recycler","recyclerview","recycling","red","redact","redacted","redaction","redactor","redbird","redbreast","redbrick","redbud","redcap","redcoat","redcolor","redcurrant","redd","redden","redder","reddest","redding","reddish","reddit","redeclaration","redecorate","redeem","redeemable","redeemed","redeemer","redefine","redemption","redemptioner","redemptive","redeposit","redesign","redetermination","redford","redgrave","redhat","redhead","redhook","redial","redim","redirect","redirected","redirecting","redirection","redirects","redirectto","redirecttoaction","redis","redlining","redmine","redmond","redneck","redness","redo","redolence","redolent","redondo","redouble","redoubtably","redound","redraw","redshift","redskin","redstone","reduce","reduced","reducer","reducers","reduces","reducibility","reducible","reducibly","reducing","reduct","reduction","reductionism","reductionist","redundancy","redundant","redux","redwood","redye","redyeing","ree","reeba","reebok","reece","reecho","reed","reediness","reeding","reedville","reedy","reef","reefer","reek","reeker","reel","reeler","reena","reenforcement","reentrant","reese","reestimate","reeta","reeva","reeve","reeves","reexamine","ref","refactor","refactored","refactoring","refection","refectory","refer","referee","refereed","refereeing","reference","referenced","referencedcolumnname","referenceerror","references","referencing","referendum","referent","referential","referentiality","referer","referral","referred","referrer","referring","refers","reffed","reffing","refid","refile","refinance","refine","refined","refinement","refinish","refit","reflect","reflectance","reflected","reflection","reflectional","reflective","reflectivemethodinvocation","reflectiveness","reflectivity","reflector","reflects","reflex","reflexion","reflexive","reflexiveness","reflexivity","reflooring","refluent","reflux","refman","refocus","refold","reforestation","reforge","reform","reformat","reformatory","reformed","reformer","reformism","reformist","refract","refractive","refractiveness","refractometer","refractoriness","refractory","refrain","refresh","refreshed","refreshes","refreshing","refreshment","refrigerant","refrigerate","refrigerated","refrigeration","refrigerator","refrozen","refry","refs","refuge","refugee","refugio","refulgence","refulgent","refund","refunder","refurbish","refurbishment","refusal","refuse","refused","refuser","refuses","refutation","refute","refuter","reg","regal","regale","regalement","regalia","regan","regard","regarding","regardless","regards","regather","regatta","regen","regency","regeneracy","regenerate","regenerately","regenerateness","regex","regexes","regexoptions","regexp","regexr","reggae","reggi","reggie","reggy","regicide","regime","regimen","regiment","regimental","regimentation","regina","reginae","reginald","reginauld","regine","region","regional","regionalism","regions","regis","register","registered","registering","registerreceiver","registers","registertype","registrable","registrant","registrar","registration","registrations","registry","regnant","regor","regress","regression","regressive","regressiveness","regressors","regret","regretful","regretfulness","regrettable","regrettably","regretted","regretting","reground","regroup","regrow","regular","regularexpressions","regularity","regularization","regularize","regularly","regulate","regulated","regulation","regulations","regulative","regulator","regulatory","regulus","regurgitate","regurgitation","rehab","rehabbed","rehabbing","rehabilitate","rehabilitation","rehang","rehear","rehears","rehearsal","rehearse","rehearsed","rehearser","reheat","reheating","rehnquist","rehydrate","reich","reichenberg","reichstag","reichstags","reid","reidar","reider","reign","reiko","reilly","reimburse","reimbursement","rein","reina","reinald","reinaldo","reindeer","reindex","reine","reinforce","reinforced","reinforcement","reinforcer","reinhard","reinhardt","reinhold","reinold","reinstall","reinstalled","reinstalling","reinstate","reinstatement","reinsurance","reinterpret","reinvent","reinwald","reissue","reit","reiterative","reject","rejected","rejecter","rejecting","rejection","rejector","rejigger","rejoice","rejoicing","rejoinder","rejuvenate","rejuvenatory","rel","relapse","relate","related","relatedby","relatedly","relatedness","relater","relates","relating","relation","relational","relations","relationship","relationships","relative","relativelayout","relatively","relativeness","relativepath","relativesource","relativism","relativist","relativistic","relativistically","relativity","relator","relax","relaxant","relaxation","relaxed","relaxedness","relaxing","relay","relaycommand","relearn","releasable","release","released","releases","releasing","relent","relenting","relentless","relentlessness","relevance","relevancy","relevant","reliability","reliable","reliables","reliably","reliance","reliant","relic","relicense","relict","relief","relies","relieve","relieved","relievedly","reliever","religion","religionists","religiosity","religious","religiousness","relink","relinquish","relinquishment","reliquary","relish","relive","reload","reloaddata","reloaded","reloading","reloads","relocate","relu","reluctance","reluctant","rely","relying","rem","remade","remain","remainder","remained","remaining","remains","remake","remand","remap","remapping","remark","remarkable","remarkableness","remarkably","remarked","remarks","remarque","rematch","rembrandt","remeasure","remediable","remediableness","remedy","remember","remembered","rememberer","remembering","rememberme","remembrance","remembrancer","remind","reminded","reminder","reminders","reminds","remington","reminisce","reminiscence","reminiscent","remiss","remissness","remit","remittance","remitted","remitting","remnant","remodel","remolding","remonstrant","remonstrate","remonstration","remonstrative","remorse","remorseful","remorsefulness","remorseless","remorselessness","remote","remotely","remotemessage","remoteness","remotes","remotetestrunner","remoteviews","remotewebdriver","remoting","remoulds","removal","remove","removeall","removeat","removeattr","removechild","removeclass","removed","removeeventlistener","removefromsuperview","removeitem","removes","removing","remunerate","remunerated","remuneration","remunerative","remunerativeness","remus","remy","ren","rena","renado","renae","renaissance","renal","renaldo","rename","renamed","renaming","renard","renascence","renata","renate","renato","renaturation","renaud","renault","rend","render","rendered","renderer","renderers","rendering","renders","rendertransform","rendezvous","rendition","rene","renee","renegade","renege","reneger","renell","renelle","renew","renewal","renewer","renie","rennet","rennie","rennin","reno","renoir","renounce","renouncement","renouncer","renovate","renovation","renovator","renown","rensselaer","rent","rental","rentaller","renter","renumber","renumeration","renunciate","renunciation","renville","reoccupy","reopen","reorder","reordering","reorganized","rep","repack","repaint","repair","repairable","repairer","repairman","repairmen","repairs","repaper","reparable","reparation","repartee","reparteeing","repartition","repast","repatriate","repave","repeal","repealer","repeat","repeatability","repeatable","repeatably","repeated","repeatedly","repeater","repeating","repeats","repel","repelled","repellent","repelling","repent","repentance","repentant","repertoire","repertory","repetition","repetitions","repetitious","repetitiousness","repetitive","repetitiveness","repine","repiner","repl","replace","replaceall","replaced","replacement","replacements","replaces","replacewith","replacing","replay","replayed","replenish","replenishment","replete","repleteness","repletion","replica","replicas","replicate","replicated","replication","replicator","replied","replies","replug","reply","repo","reponse","repopulate","report","reported","reportelement","reporter","reporting","reportorial","reports","reportviewer","repos","repose","reposeful","repositories","repository","repr","reprehend","reprehenderit","reprehensibility","reprehensible","reprehensibleness","reprehensibly","reprehension","represent","representable","representation","representational","representations","representative","representativeness","representativity","represented","representing","represents","repress","repression","repressive","repressiveness","reprieve","reprimand","reprint","reprisal","reproach","reproacher","reproachful","reproachfulness","reproaching","reprobate","reprocess","reproduce","reproduced","reproducibility","reproducible","reproducibly","reproductive","reproof","reprove","reproving","reps","reptile","reptilian","republic","republican","republicanism","republish","repudiate","repudiation","repudiator","repugnance","repugnant","repulse","repulsion","repulsive","repulsiveness","reputability","reputably","reputation","repute","reputed","reputing","req","request","requestanimationframe","requestbody","requestcode","requestcontext","requestdata","requested","requestfocus","requesthandler","requestid","requesting","requestlocationupdates","requestmapping","requestmappinghandleradapter","requestmethod","requestoptions","requestparam","requestpermissions","requestqueue","requests","requesturl","requestwithurl","requiem","require","required","requiredfieldvalidator","requirejs","requirement","requirements","requires","requiring","requisite","requisiteness","requisition","requisitioner","requital","requite","requited","requiter","reread","rerecord","rerouteing","rerun","rerunning","res","resample","rescale","rescind","rescission","rescue","reseal","research","researched","researchers","researching","reselect","resemblant","resemble","resend","resent","resentful","resentfulness","resentment","reserpine","reservation","reservations","reserve","reserved","reservedness","reservednesses","reservist","reservoir","reset","resets","resetting","resettle","reshape","resharper","reshipping","reshow","reshuffle","resid","reside","residence","residency","resident","residential","resider","resides","residua","residual","residuary","residue","residuum","resignation","resigned","resignfirstresponder","resilience","resiliency","resilient","resin","resinlike","resinous","resiny","resist","resistance","resistant","resistantly","resistants","resisted","resistible","resistibly","resisting","resistive","resistiveness","resistivity","resistless","resistor","resizable","resize","resized","resizes","resizing","resold","resole","resoluble","resolute","resoluteness","resolution","resolutions","resolvability","resolvable","resolve","resolved","resolvent","resolver","resolvers","resolves","resolving","resonance","resonant","resonate","resonator","resorption","resort","resound","resource","resourcebundle","resourcedictionary","resourceful","resourcefulness","resourceid","resourcemanager","resourcename","resources","resourcetype","resp","respect","respectability","respectable","respectably","respected","respectful","respectfulness","respecting","respective","respectively","respectiveness","respects","respell","respiration","respirator","respiratory","resplendence","resplendent","respond","responded","respondent","responder","responding","responds","respondstoselector","response","responsebody","responsecode","responsedata","responseentity","responsejson","responseobject","responser","responses","responsestring","responsetext","responsetype","responsibilities","responsibility","responsible","responsibleness","responsibly","responsive","responsiveness","respray","resque","rest","restapi","restart","restarted","restarting","restarts","restate","restaurant","restaurants","restaurateur","restclient","restcontroller","resteasy","rested","rester","restful","restfuller","restfullest","restfulness","restitution","restive","restiveness","restkit","restless","restlessness","restlet","restorability","restoration","restorative","restore","restored","restorer","restoring","restrained","restraint","restrict","restricted","restricting","restriction","restrictions","restrictive","restrictively","restrictiveness","restrictives","restroom","restructurability","restructure","rests","resttemplate","restudy","restyle","resubstitute","result","resultado","resultant","resultarray","resultcode","resulted","resulting","resultlist","results","resultset","resume","resumes","resumption","resurface","resurgence","resurgent","resurrect","resurrection","resurvey","resuscitate","resuscitation","resuscitator","resx","ret","reta","retail","retailer","retain","retained","retainer","retaining","retains","retake","retaliate","retaliation","retaliatory","retard","retardant","retardation","retarder","retch","retention","retentive","retentiveness","retentivity","retest","retha","rethink","rethought","reticence","reticent","reticle","reticular","reticulate","reticulation","reticule","reticulum","retina","retinal","retinue","retire","retiredness","retiree","retirement","retiring","retort","retract","retractile","retrench","retrenchment","retributed","retribution","retributive","retries","retrieval","retrieve","retrieved","retriever","retrieves","retrieving","retrive","retro","retroactive","retrofire","retrofit","retrofitted","retrofitting","retroflection","retroflex","retroflexion","retrogradations","retrograde","retrogress","retrogression","retrogressive","retrorocket","retrospect","retrospection","retrospective","retrovirus","retrovision","retry","retrying","retsina","return","returnable","returned","returnee","returning","returns","returntransfer","returntype","returnurl","returnvalue","retval","retype","reub","reube","reuben","reunion","reusable","reuse","reused","reuseidentifier","reusing","reuters","reuther","reutilization","reuven","rev","reva","revalidate","revanchist","reveal","revealed","revealing","revealingly","reveals","reveille","revel","revelation","revelatory","revelry","revenge","revenger","revenue","revenuer","reverberant","reverberate","reverberation","revere","reverence","reverencer","reverend","reverent","reverential","reverie","revers","reversal","reverse","reversed","reverser","reversibility","reversible","reversibly","reversing","reversion","reversioner","revert","reverter","revertible","revet","revetment","review","reviewed","reviewer","reviewing","reviews","revile","revilement","reviler","revise","revised","revision","revisionary","revisionism","revisionist","revisions","revitalize","revival","revivalism","revivalist","revive","reviver","revivification","revivify","revkah","revlon","revocable","revoke","revolt","revolter","revolting","revolution","revolutionariness","revolutionary","revolutionist","revolutionize","revolutionizer","revolve","revolver","revue","revulsion","revved","revving","reward","rewarded","rewarding","rewards","rewarm","reweave","rewedding","reweigh","rewind","rewire","rework","rewrite","rewritebase","rewritecond","rewriteengine","rewriterule","rewrites","rewriting","rewritten","rex","rexes","rextester","rey","reyes","reykjavik","reyna","reynaldo","reynard","reynold","rezone","rf","rfc","rfd","rg","rgb","rgba","rh","rhapsodic","rhapsodical","rhapsodize","rhapsody","rhea","rheba","rhee","rheims","rheinholdt","rhel","rhenish","rhenium","rheology","rheostat","rhesus","rheta","rhetoric","rhetorical","rhetorician","rhett","rhetta","rheum","rheumatic","rheumatically","rheumatics","rheumatism","rheumatoid","rheumy","rhiamon","rhianna","rhiannon","rhianon","rhine","rhineland","rhinelander","rhinestone","rhinitides","rhinitis","rhino","rhinoceros","rhinotracheitis","rhizome","rho","rhoda","rhodes","rhodesia","rhodesian","rhodia","rhodie","rhodium","rhododendron","rhodolite","rhodonite","rhody","rhombic","rhomboid","rhomboidal","rhombus","rhona","rhoncus","rhonda","rhone","rhs","rhubarb","rhyme","rhymester","rhys","rhythm","rhythmic","rhythmical","rhythmics","ri","rial","riane","riannon","rianon","rib","ribald","ribaldry","ribbed","ribbentrop","ribber","ribbing","ribbon","ribcage","riboflavin","ribonucleic","ribosomal","ribosome","ric","rica","rican","ricard","ricardo","ricca","riccardo","rice","ricer","rich","richard","richardo","richardson","richart","richelieu","richen","richey","richfaces","richfield","richie","richland","richmond","richmound","richness","richter","richtextbox","richthofen","richy","rici","rick","rickard","rickenbacker","rickenbaugh","rickert","rickets","rickety","rickey","ricki","rickie","rickover","rickrack","rickshaw","ricky","rico","ricochet","ricoriki","ricotta","rid","riddance","ridden","ridding","riddle","ride","rider","riderless","ridership","ridge","ridgefield","ridgepole","ridgway","ridgy","ridicule","ridiculer","ridiculous","ridiculously","ridiculousness","riding","riemann","riesling","rife","riff","riffle","riffraff","rifle","rifled","rifleman","riflemen","rifler","rifling","rift","rig","riga","rigamarole","rigatoni","rigel","rigged","rigger","rigging","riggs","right","righteous","righteousness","righteousnesses","rightful","rightfulness","rightism","rightist","rightmost","rightness","rights","rightsize","rightward","rigid","rigidbody","rigidify","rigidity","rigidness","rigmarole","rigoberto","rigoletto","rigor","rigorous","rigorousness","rik","riki","rikki","rile","riley","rilke","rill","rim","rimbaud","rime","rimer","rimless","rimmed","rimming","rina","rinaldo","rind","rinehart","rinflate","ring","ringer","ringing","ringleader","ringlet","ringlike","ringling","ringmaster","ringo","rings","ringside","ringworm","rink","rinse","rio","riobard","riordan","riot","rioter","riotous","riotousness","rip","riparian","ripcord","ripe","ripen","ripened","ripeness","ripenesses","riper","ripest","ripley","ripoff","riposte","ripped","ripper","ripping","ripple","rippler","ripply","ripsaw","riptide","risa","risc","rise","risen","riser","risibility","risible","rising","risk","risker","riskily","riskiness","risks","risky","risotto","risqu","rissole","risus","rita","ritalin","ritchie","rite","ritter","ritual","ritualism","ritualistic","ritualistically","ritualized","ritz","ritzy","riv","riva","rival","rivaled","rivalee","rivalry","rive","river","rivera","riverbank","riverbed","riverboat","riverfront","riverine","rivers","riverside","riverview","rivet","riveter","riveting","rivi","riviera","rivkah","rivulet","rivy","riyadh","riyal","rj","rk","rl","rm","rmi","rms","rn","rna","rnd","rng","rnn","rnorm","ro","roach","road","roadbed","roadblock","roadhouse","roadie","roadkill","roadmap","roadrunner","roads","roadshow","roadside","roadsigns","roadster","roadsweepers","roadway","roadwork","roadworthy","roam","roaming","roan","roana","roanna","roanne","roanoke","roar","roarer","roaring","roarke","roast","roaster","rob","robb","robbed","robber","robbert","robbery","robbi","robbie","robbin","robbing","robby","robbyn","robe","robena","robenia","robers","roberson","robert","roberta","roberto","robertson","robeson","robespierre","robin","robina","robinet","robinett","robinetta","robinette","robinia","robinson","robinsonville","robles","robolectric","robot","robotic","robotism","robotize","roboto","robots","robson","robt","robust","robustness","roby","robyn","roc","rocco","roch","rocha","rochambeau","roche","rochell","rochella","rochelle","rochester","rochette","rock","rockabilly","rockabye","rockaway","rockbound","rockefeller","rocker","rocket","rocketry","rockey","rockfall","rockford","rockie","rockiness","rockland","rockne","rocks","rockville","rockwell","rocky","rococo","rod","roda","rodd","rodded","roddenberry","rodder","roddie","rodding","roddy","rode","rodent","rodeo","roderic","roderich","roderick","roderigo","rodge","rodger","rodi","rodie","rodin","rodina","rodney","rodolfo","rodolph","rodolphe","rodrick","rodrigo","rodriguez","rodrique","rodriquez","roe","roebuck","roentgen","rofl","rog","rogelio","roger","rogerio","roget","rogue","rogued","roguery","rogues","roguing","roguish","roguishness","roi","roil","roister","roisterer","rojas","roland","rolando","roldan","role","roleid","rolename","roles","roley","rolf","rolfe","roll","rolland","rollback","rolled","roller","rollerblade","rollerskating","rollick","rollicking","rollie","rollin","rolling","rollo","rollover","rolls","rollup","rolodex","rolph","rolvaag","rom","roma","romain","romaine","roman","romance","romancer","romanesque","romania","romanian","romano","romanov","romans","romansh","romantic","romantically","romanticism","romanticist","romanticize","romany","rome","romeo","romero","rommel","romney","romola","romona","romonda","romp","romper","romulus","romy","ron","rona","ronald","ronalda","ronda","rondo","ronica","ronna","ronni","ronnica","ronnie","ronny","ronstadt","rontgen","roo","roobbie","rood","roof","roofer","roofgarden","roofing","roofless","rooftop","rook","rookery","rookie","room","roomer","roomette","roomful","roomid","roominess","roommate","rooms","roomy","rooney","roosevelt","rooseveltian","roost","rooster","root","rootdir","rooted","rooter","rootless","rootlessness","rootlet","rootnode","rootobject","rootproject","roots","rootscope","rootstock","rootview","rootviewcontroller","rope","roper","roping","roquefort","roquemore","ror","rora","rori","rorie","rorke","rorschach","rory","ros","rosa","rosabel","rosabella","rosabelle","rosaleen","rosales","rosalia","rosalie","rosalind","rosalinda","rosalinde","rosaline","rosalyn","rosalynd","rosamond","rosamund","rosana","rosanna","rosanne","rosario","rosary","rosco","roscoe","rose","roseann","roseanna","roseanne","roseate","roseau","rosebud","rosebush","rosecrans","roseland","roselia","roselin","roseline","rosella","roselle","rosemaria","rosemarie","rosemary","rosemonde","rosen","rosenberg","rosenblum","rosendo","rosene","rosenthal","rosenzweig","rosetta","rosette","rosewater","rosewood","roshelle","rosicrucian","rosie","rosily","rosin","rosina","rosiness","rosita","roslyn","rosmunda","ross","rossetti","rossi","rossie","rossini","rossy","rostand","roster","rostov","rostra","rostrum","roswell","rosy","rot","rota","rotarian","rotary","rotate","rotated","rotates","rotatex","rotatey","rotating","rotation","rotational","rotations","rotative","rotator","rotatory","rotc","rote","rotgut","roth","rothschild","rotisserie","rotogravure","rotor","rototill","rotted","rotten","rottenness","rotter","rotterdam","rotting","rotund","rotunda","rotundity","rotundness","rou","rouault","rouge","rough","roughage","roughen","rougher","roughhouse","roughish","roughly","roughneck","roughness","roughs","roughshod","roulette","round","roundabout","rounded","roundedness","roundelay","roundels","rounder","roundhead","roundheaded","roundheadedness","roundhouse","rounding","roundish","roundness","roundoff","rounds","roundup","roundworm","rourke","rouse","rouser","rousseau","roust","roustabout","rout","route","routed","routedata","routedeventargs","routeparams","routeprovider","router","routerlink","routermodule","routers","routes","routine","routines","routing","routinize","rouvin","rove","rover","roving","row","rowan","rowboat","rowcount","rowdata","rowdatabound","rowdefinition","rowdefinitions","rowdily","rowdiness","rowdy","rowdyism","rowe","rowel","rowen","rowena","rower","rowheight","rowid","rowindex","rowland","rowley","rownames","rowney","rownum","rownumber","rows","rowspan","rowtype","rowview","roxana","roxane","roxanna","roxanne","roxi","roxie","roxine","roxy","roy","royal","royalist","royall","royalty","royce","roz","rozalie","rozalin","rozamond","rozanna","rozanne","roze","rozele","rozella","rozelle","rozina","rp","rpath","rpc","rpi","rpm","rps","rpt","rpy","rq","rr","rriocard","rs","rsa","rsfsr","rsi","rsp","rspec","rss","rssi","rst","rstrip","rstudio","rsv","rsvp","rsx","rsync","rt","rtc","rte","rtf","rtfm","rtl","rtmp","rtp","rtrim","rtsp","ru","rub","rubaiyat","rubato","rubbed","rubber","rubberize","rubberneck","rubbery","rubbing","rubbish","rubbishy","rubble","rubdown","rube","rubella","ruben","rubetta","rubi","rubia","rubicon","rubicund","rubidium","rubie","rubies","rubik","rubin","rubina","rubinstein","ruble","rubout","rubric","ruby","rubygems","rubyonrails","ruchbah","ruck","rucksack","ruckus","ruction","rudd","rudder","rudderless","ruddie","ruddiness","ruddy","rude","rudeness","rudie","rudiger","rudiment","rudimentariness","rudimentary","rudolf","rudolfo","rudolph","rudy","rudyard","rue","rueful","ruefulness","rufe","ruff","ruffian","ruffle","ruffled","ruffler","ruffly","rufus","rug","rugby","rugged","ruggedness","ruggiero","rugging","ruhr","ruin","ruination","ruiner","ruinous","ruinousness","ruiz","rule","rulebook","ruled","ruler","rules","ruling","rum","rumania","rumanian","rumba","rumble","rumbler","rumbustious","rumen","rumford","ruminant","ruminate","ruminative","rummage","rummager","rummel","rummer","rummest","rummy","rumor","rumored","rumorer","rumormonger","rump","rumpelstiltskin","rumple","rumply","rumpus","run","runabout","runaround","runat","runaway","rundown","rune","rung","runge","runic","runif","runlet","runnable","runnel","runner","runners","running","runny","runnymede","runoff","runonuithread","runs","runserver","runt","runtask","runtime","runtimeerror","runtimeexception","runtimes","runtiness","runty","runway","runwith","runworker","runyon","rupee","rupert","ruperta","ruperto","rupiah","rupiahs","ruppert","ruprecht","rupture","rural","rurality","rurik","ruse","rush","rushdie","rusher","rushes","rushing","rushmore","rushy","rusk","ruskin","russ","russel","russell","russet","russetting","russia","russian","russo","rust","rustbelt","rustic","rustically","rusticate","rustication","rusticity","rustie","rustin","rustiness","rustle","rustler","rustproof","rusty","rut","rutabaga","rutger","ruth","ruthann","ruthanne","ruthe","ruthenium","rutherford","rutherfordium","ruthi","ruthie","ruthless","ruthlessness","ruthy","rutland","rutledge","rutrum","rutted","rutter","ruttger","rutting","rutty","ruy","rv","rvalue","rvm","rvs","rw","rwanda","rwandan","rwy","rx","rxjava","rxjs","ry","ryan","ryann","rycca","rydberg","ryder","rye","ryley","ryon","ryukyu","ryun","rz","s","sa","saab","saar","saas","saba","sabbath","sabbaths","sabbatical","saber","sabered","sabik","sabin","sabina","sabine","sable","sabot","sabotage","saboteur","sabra","sabrina","sac","sacajawea","saccharides","saccharin","saccharine","sacco","sacerdotal","sacha","sachem","sachet","sachs","sack","sackcloth","sackcloths","sacker","sackful","sacking","sacra","sacral","sacrament","sacramental","sacramento","sacred","sacredness","sacrifice","sacrificer","sacrificial","sacrilege","sacrilegious","sacristan","sacristy","sacroiliac","sacrosanct","sacrosanctness","sacrum","sad","sada","sadat","saddam","sadden","sadder","saddest","saddle","saddlebag","saddler","sadducee","sade","sadella","sades","sadie","sadism","sadist","sadistic","sadistically","sadly","sadness","sadomasochism","sadomasochist","sadomasochistic","sadr","sadye","safari","safe","safeguard","safekeeping","safely","safeness","safer","safes","safest","safety","safflower","saffron","sag","saga","sagacious","sagaciousness","sagacity","sagan","sage","sagebrush","sagged","sagger","sagging","saggy","saginaw","sagittarius","sagittis","sago","saguaro","sahara","saharan","sahel","sahib","said","saidee","saids","saigon","sail","sailboard","sailboat","sailcloth","sailcloths","sailer","sailfish","sailing","sailor","sailplane","sails","saint","sainthood","saintlike","saintliness","saintly","saiph","saith","saiths","sakai","sake","saker","sakhalin","sakharov","saki","sal","salaam","salable","salacious","salaciousness","salacity","salad","saladin","salado","salaidh","salamander","salami","salaries","salary","salas","salazar","sale","saleability","saleem","salem","salerno","sales","salesclerk","salesforce","salesgirl","saleslady","salesman","salesmanship","salesmen","salespeople","salesperson","salesroom","saleswoman","saleswomen","salience","saliency","salient","salim","salina","saline","salinger","salinity","salisbury","salish","saliva","salivary","salivate","salivation","salk","salle","sallee","salli","sallie","sallow","sallowness","sallust","sally","sallyann","sallyanne","salmon","salmonella","salmonellae","saloma","salome","salomi","salomo","salomon","salomone","salon","salonika","saloon","saloonkeeper","salsa","salsify","salt","saltcellar","salted","salter","saltine","saltiness","saltness","salton","saltpeter","salts","saltshaker","saltwater","salty","salubrious","salubriousness","salubrity","salutariness","salutary","salutation","salutatory","salute","saluter","salvador","salvadoran","salvadorian","salvage","salvageable","salvager","salvation","salvatore","salve","salver","salvidor","salvo","salween","salyut","salz","sam","samaccountname","samantha","samara","samaria","samaritan","samarium","samarkand","samba","same","sameness","saml","sammie","sammy","samoa","samoan","samoset","samovar","samoyed","samp","sampan","sample","sampled","sampler","samples","sampling","sampson","samson","samsonite","samsung","samuel","samuele","samuelson","samurai","san","sana","sanatorium","sanborn","sance","sanchez","sancho","sanctification","sanctifier","sanctify","sanctimonious","sanctimoniousness","sanctimony","sanction","sanctioned","sanctity","sanctuary","sanctum","sand","sandal","sandalwood","sandbag","sandbagged","sandbagging","sandbank","sandbar","sandblast","sandblaster","sandbox","sandburg","sandcastle","sande","sander","sanderling","sanderson","sandhill","sandhog","sandi","sandia","sandie","sandiness","sandinista","sandlot","sandlotter","sandman","sandmen","sandor","sandoval","sandpaper","sandpile","sandpiper","sandpit","sandra","sandro","sandstone","sandstorm","sandusky","sandwich","sandy","sandye","sane","saned","saneness","sanes","sanford","sanforized","sang","sanger","sangfroid","sangria","sanguinary","sanguine","sanguined","sanguinely","sanguineness","sanguineous","sanguines","sanguining","sanhedrin","saning","sanitarian","sanitarium","sanitary","sanitate","sanitation","sanitize","sanitizer","sanity","sank","sankara","sans","sanserif","sanskrit","sanskritic","sanskritize","sanson","sansone","santa","santana","santayana","santeria","santiago","santo","sap","sapien","sapience","sapient","sapless","sapling","sapped","sapper","sapphira","sapphire","sappho","sappiness","sapping","sapply","sapporo","sappy","saprophyte","saprophytic","sapsucker","sapwood","sara","saraann","saracen","saragossa","sarah","sarajane","sarajevo","saran","sarape","sarasota","saratoga","saratov","sarawak","sarcasm","sarcastic","sarcastically","sarcoma","sarcophagi","sarcophagus","sardine","sardinia","sardonic","sardonically","saree","sarena","sarene","sarette","sargasso","sarge","sargent","sargon","sari","sarina","sarine","sarita","sarnoff","sarong","saroyan","sarsaparilla","sarto","sartorial","sartorius","sartre","sas","sascha","sase","sash","sasha","sashay","sashenka","sask","saskatchewan","saskatoon","sasl","sass","sassafras","sassoon","sassy","sat","satan","satanic","satanical","satanism","satanist","satchel","sate","sateen","satellite","satiable","satiate","satiation","satiety","satin","satinwood","satiny","satire","satiric","satirical","satirist","satirize","satirizes","satisfaction","satisfactorily","satisfactoriness","satisfactory","satisfiability","satisfiable","satisfied","satisfier","satisfies","satisfy","satisfying","satisfyingly","satori","satrap","saturate","saturated","saturater","saturates","saturation","saturday","saturn","saturnalia","saturnine","satyanarayanan","satyr","satyriases","satyriasis","satyric","sauce","saucepan","saucer","saucily","sauciness","saucy","saud","saudi","saudra","sauerkraut","saukville","saul","sault","sauna","sauncho","saunder","saunderson","saundra","saunter","saurian","sauropod","sausage","saussure","saut","sauternes","sauveur","savage","savageness","savagery","savanna","savannah","savant","save","saveas","savechanges","saved","savedata","savedinstancestate","savefig","savefile","saveloy","saver","saves","savina","saving","savings","savior","saviour","savonarola","savor","savored","savorer","savorier","savoriest","savoriness","savoring","savoringly","savory","savoy","savoyard","savvy","saw","sawbones","sawbuck","sawdust","sawer","sawfly","sawhorse","sawmill","sawtooth","sawyer","sawyere","sax","saxe","saxifrage","saxon","saxony","saxophone","saxophonist","saxton","say","sayer","sayest","sayhello","saying","sayre","says","sb","sba","sbin","sbt","sc","scab","scabbard","scabbed","scabbiness","scabbing","scabby","scabies","scabrous","scabrousness","scad","scaffold","scaffolding","scala","scalability","scalable","scalar","scalatest","scalawag","scald","scale","scaled","scalefactor","scaleless","scalene","scaler","scales","scaletype","scalex","scaley","scaliness","scaling","scallion","scallop","scalloper","scalloping","scalp","scalpel","scalper","scalping","scaly","scam","scammed","scamming","scamp","scamper","scampi","scan","scandal","scandalize","scandalized","scandalmonger","scandalous","scandalousness","scandinavia","scandinavian","scandium","scanf","scanned","scanner","scanning","scans","scansion","scant","scantest","scantily","scantiness","scantly","scantness","scanty","scape","scapegoat","scapegrace","scapula","scapulae","scapular","scar","scarab","scaramouch","scarborough","scarce","scarceness","scarcity","scare","scarecrow","scared","scaremonger","scaremongering","scarer","scarf","scarface","scarification","scarify","scarily","scariness","scarlatina","scarlatti","scarlet","scarlett","scarp","scarred","scarring","scarves","scary","scat","scathe","scathed","scathing","scatological","scatology","scatted","scatter","scatterbrain","scatterer","scattergun","scattering","scatting","scavenge","scavenger","sccs","sce","scelerisque","scenario","scenarios","scenarist","scene","scenery","scenes","scenic","scenically","scent","scented","scentless","scents","scepter","scepters","sceptically","sch","schaefer","schaeffer","schafer","schaffner","schantz","schapiro","scheat","sched","schedar","schedule","scheduled","scheduledthreadpoolexecutor","scheduler","schedulers","schedules","scheduling","scheherazade","scheherezade","schelling","schema","schemalocation","schemas","schemata","schematic","schematically","scheme","schemer","schemes","schemta","schenectady","scherzo","schick","schiller","schilling","schism","schismatic","schist","schizo","schizoid","schizomycetes","schizophrenia","schizophrenic","schizophrenically","schlemiel","schlep","schlepped","schlepping","schlesinger","schliemann","schlitz","schlock","schlocky","schloss","schmaltz","schmaltzy","schmidt","schmitt","schmo","schmoes","schmooze","schmuck","schnabel","schnapps","schnauzer","schneider","schnitzel","schnook","schnoz","schnozzle","schoenberg","schofield","scholar","scholarship","scholastic","scholastically","school","schoolbag","schoolbook","schoolboy","schoolchild","schoolchildren","schooldays","schooled","schoolfellow","schoolfriend","schoolgirl","schoolgirlish","schoolhouse","schooling","schoolmarm","schoolmarmish","schoolmaster","schoolmate","schoolmistress","schoolroom","schools","schoolteacher","schoolwork","schoolyard","schooner","schopenhauer","schottky","schrdinger","schrieffer","schroeder","schroedinger","schubert","schultz","schulz","schumacher","schuman","schumann","schuss","schussboomer","schuster","schuyler","schuylkill","schwa","schwab","schwartz","schwartzkopf","schwarzenegger","schweitzer","schweppes","schwinger","schwinn","sci","sciatic","sciatica","science","scientific","scientifically","scientist","scientists","scientology","scikit","scimitar","scintilla","scintillate","scintillation","scintillator","scion","scipio","scipy","scissor","scissors","scleroses","sclerosis","sclerotic","scm","scoff","scoffer","scofflaw","scold","scolder","scolioses","scoliosis","scollop","sconce","scone","scons","scoop","scooper","scoot","scooter","scope","scoped","scopes","scoping","scops","scorbutic","scorch","scorcher","scorching","score","scoreboard","scorecard","scored","scorekeeper","scoreless","scoreline","scores","scoring","scorn","scorner","scornful","scornfulness","scorpio","scorpion","scorpius","scorsese","scot","scotch","scotchgard","scotchman","scotchmen","scotchs","scotchwoman","scotchwomen","scotia","scotian","scotland","scotsman","scotsmen","scotswoman","scotswomen","scott","scotti","scottie","scottish","scottsdale","scotty","scoundrel","scour","scourer","scourge","scourger","scouring","scout","scouter","scouting","scoutmaster","scow","scowl","scowler","scp","scr","scrabble","scrabbler","scrag","scragged","scragging","scraggly","scraggy","scram","scramble","scrambler","scrammed","scramming","scranton","scrap","scrapbook","scrape","scraped","scraper","scrapheap","scraping","scrapped","scrapper","scrapping","scrappy","scrapy","scrapyard","scratch","scratched","scratcher","scratches","scratchily","scratchiness","scratchy","scrawl","scrawler","scrawly","scrawniness","scrawny","scream","screamer","screaming","scree","screech","screecher","screechy","screed","screen","screencast","screened","screenheight","screening","screenorientation","screenplay","screens","screenshot","screenshots","screensize","screenupdating","screenwidth","screenwriter","screw","screwball","screwdriver","screwed","screwer","screwiness","screwup","screwworm","screwy","scriabin","scribal","scribble","scribbler","scribe","scriber","scribner","scrim","scrimmage","scrimmager","scrimp","scrimshaw","scrip","scripps","script","scriptblock","scripted","scripting","scriptmanager","scriptreference","scripts","scriptural","scripture","scriptwriter","scriptwriting","scriven","scrivener","scrod","scrofula","scrofulous","scroll","scrollable","scrollbar","scrollbars","scrolled","scroller","scrollheight","scrolling","scrollleft","scrollpane","scrolls","scrollto","scrolltop","scrollview","scrollviewer","scrooge","scrota","scrotal","scrotum","scrounge","scroungy","scrub","scrubbed","scrubber","scrubbing","scrubby","scruff","scruffily","scruffiness","scruffy","scruggs","scrum","scrummage","scrumptious","scrunch","scrunchy","scruple","scrupulosity","scrupulous","scrupulousness","scrutable","scrutinize","scrutinized","scrutinizer","scrutinizing","scrutinizingly","scrutiny","scsi","scss","scuba","scud","scudded","scudding","scuff","scuffle","scull","sculler","scullery","sculley","scullion","sculpt","sculptor","sculptress","sculptural","sculpture","scum","scumbag","scummed","scumming","scummy","scupper","scurf","scurfy","scurrility","scurrilous","scurrilousness","scurry","scurvily","scurviness","scurvy","scutcheon","scuttle","scuttlebutt","scuzzy","scylla","scythe","scythia","sd","sda","sdate","sdcard","sdf","sdi","sdk","sdks","sdl","sdp","se","sea","seabed","seabird","seaboard","seaborg","seaborn","seaborne","seabrook","seacoast","seafare","seafarer","seafood","seafront","seagate","seagoing","seagram","seagull","seahorse","seal","sealant","sealed","sealer","seals","sealskin","seam","seamail","seaman","seamanship","seamer","seaminess","seamless","seamlessly","seamlessness","seams","seamstress","seamus","seamy","sean","seana","seaplane","seaport","seaquake","seaquarium","sear","search","searchable","searchbar","searchbox","searchcontroller","searched","searcher","searches","searchform","searching","searchlight","searchquery","searchresult","searchresults","searchstring","searchterm","searchtext","searchview","searing","sears","seascape","seashell","seashore","seasick","seasickness","seaside","season","seasonable","seasonableness","seasonably","seasonal","seasonality","seasoned","seasoner","seasoning","seat","seatbelt","seated","seater","seating","seato","seats","seattle","seawall","seaward","seawater","seaway","seaweed","seaworthiness","seaworthinesses","seaworthy","sebaceous","sebastian","sebastiano","sebastien","seborrhea","sec","secant","secede","secession","secessionist","seclude","secluded","secludedness","seclusion","seclusive","seconal","second","secondarily","secondary","seconder","secondhand","secondly","seconds","secondviewcontroller","secrecy","secret","secretarial","secretariat","secretary","secretaryship","secrete","secretion","secretive","secretiveness","secretkey","secretory","secrets","secs","sect","sectarian","sectarianism","sectary","section","sectional","sectionalism","sectionalized","sectioned","sectioning","sections","sector","sectoral","sectored","sectoring","sectors","sects","secular","secularism","secularist","secularity","secularization","secularize","secularized","secure","secured","securely","securerandom","securing","security","securityexception","secy","sed","sedan","sedate","sedateness","sedation","sedative","sedentary","seder","sedge","sedgwick","sedgy","sediment","sedimentary","sedimentation","sedition","seditious","seditiousness","seduce","seducer","seduction","seductive","seductiveness","seductress","sedulous","see","seebeck","seed","seedbed","seedcase","seeded","seeder","seediness","seeding","seedless","seedling","seedpod","seeds","seedy","seeing","seeings","seek","seekbar","seeker","seeking","seeley","seem","seemed","seeming","seemingly","seemliness","seemly","seems","seen","seep","seepage","seer","seersucker","sees","seesaw","seethe","seg","segfault","segment","segmental","segmentation","segmented","segments","segovia","segre","segregant","segregate","segregated","segregation","segregationist","segregative","segue","segueing","segundo","seidel","seigneur","seignior","seiko","seine","seiner","seinfeld","seismic","seismically","seismograph","seismographer","seismographic","seismographs","seismography","seismologic","seismological","seismologist","seismology","seismometer","seize","seizer","seizin","seizing","seizor","seizure","seka","sel","sela","selassie","selby","seldom","select","selectable","selectall","selectbox","selectcommand","selected","selecteddate","selectedimage","selectedindex","selectedindexchanged","selecteditem","selecteditems","selectedrow","selectedvalue","selecting","selectinput","selection","selectional","selectionchanged","selectionmode","selections","selectionstart","selectitem","selective","selectively","selectiveness","selectivity","selectlist","selectlistitem","selectman","selectmany","selectmen","selectness","selectnodes","selectonemenu","selector","selectors","selectric","selects","selectsinglenode","selena","selenate","selene","selenite","selenium","seleniumhq","selenographer","selenography","selestina","seleucid","seleucus","self","selfish","selfishness","selfless","selflessness","selfness","selfridge","selfsame","selfsameness","selia","selie","selig","selim","selina","selinda","seline","selinux","seljuk","selkirk","sell","sella","selle","seller","sellers","selling","sellout","sells","selma","seltzer","selvage","selves","selznick","sem","semantic","semantical","semantically","semanticist","semantics","semaphore","semarang","semblance","semen","semester","semi","semiannual","semiarid","semiautomated","semiautomatic","semicircle","semicircular","semicolon","semicolons","semiconductor","semiconscious","semidefinite","semidetached","semidrying","semifinal","semifinalist","semilogarithmic","semimonthly","seminal","seminar","seminarian","seminary","seminole","semiofficial","semiotic","semioticians","semiotics","semipermanent","semipermeable","semiprecious","semiprivate","semiprofessional","semipublic","semiquantitative","semiramis","semiretired","semisecret","semiskilled","semisolid","semistructured","semisweet","semite","semitic","semitone","semitrailer","semitrance","semitransparent","semitropical","semivowel","semiweekly","semiyearly","semolina","semper","sempiternal","sempstress","semtex","semver","sen","sena","senate","senator","senatorial","sencha","send","sendai","senddata","sendemail","sender","senderid","sendevent","sendfile","sendgrid","sending","sendkeys","sendmail","sendmessage","sendrequest","sends","sendto","seneca","senegal","senegalese","senescence","senescent","senile","senility","senior","seniority","senna","sennacherib","sennett","senor","senora","senorita","sens","sensate","sensately","sensation","sensational","sensationalism","sensationalist","sensationalize","sense","senseless","senselessness","sensibility","sensible","sensibleness","sensibly","sensitive","sensitiveness","sensitives","sensitivity","sensitization","sensitize","sensitized","sensitizers","sensor","sensormanager","sensors","sensory","sensual","sensualist","sensuality","sensuous","sensuousness","sensurround","sent","sentence","sentences","sentential","sententious","sentience","sentient","sentiment","sentimental","sentimentalism","sentimentalist","sentimentality","sentimentalization","sentimentalize","sentimentalizes","sentinel","sentry","seo","seora","seoul","sep","sepal","separability","separable","separableness","separably","separate","separated","separately","separateness","separates","separating","separation","separatism","separatist","separator","separators","seperate","seperated","sephardi","sephira","sepia","sepoy","sepses","sepsis","sept","septa","septate","september","septennial","septet","septic","septicemia","septicemic","septillion","septuagenarian","septuagint","septum","sepulcher","sepulchers","sepulchral","seq","seqnum","sequel","sequelize","sequence","sequenced","sequencer","sequences","sequent","sequential","sequentiality","sequentialize","sequentially","sequester","sequestrate","sequestration","sequin","sequitur","sequoia","sequoya","ser","sera","serafin","seraglio","serape","seraph","seraphic","seraphically","seraphim","seraphs","serb","serbia","serbian","serbo","sere","serena","serenade","serenader","serendipitous","serendipity","serene","sereneness","serengeti","serenity","serf","serfdom","serge","sergeant","sergei","sergent","sergio","serial","serializable","serialization","serialize","serialized","serializedname","serializeobject","serializer","serializers","serializing","serialnumber","serialport","serialversionuid","serie","series","serif","serigraph","serigraphs","serious","seriously","seriousness","sermon","sermonize","serological","serology","serons","serous","serpens","serpent","serpentine","serra","serrano","serrate","serration","serried","serum","serv","servant","serve","served","server","serverfault","serverless","servername","servers","serverside","serversocket","serves","service","serviceability","serviceable","serviceableness","servicebehaviors","serviced","servicehost","serviceid","serviceman","servicemen","servicemodel","servicename","serviceprovider","services","servicestack","servicetype","servicewoman","servicewomen","serviette","servile","servilely","servileness","serviles","servility","serving","servitor","servitude","servlet","servletcontainer","servletcontext","servletexception","servlethandler","servlets","servo","servomechanism","servomotor","ses","sesame","sesquicentennial","sess","sessile","session","sessionfactory","sessionid","sessionimpl","sessions","sessionstate","sessionstorage","set","setaccessible","setaction","setactive","setadapter","setarguments","setattr","setattribute","setback","setbackground","setbackgroundcolor","setbackgroundimage","setbackgroundresource","setborder","setbounds","setcancelable","setcapability","setcellvalue","setcenter","setchecked","setcolor","setcontent","setcontenttext","setcontenttype","setcontentview","setcookie","setdata","setdatasource","setdate","setdateformat","setdefault","setdefaultcloseoperation","setdelegate","setdescription","setdt","setduration","seteditable","setenabled","setentity","setenv","seterror","setfill","setflags","setfont","setforeground","setframe","setgeometry","seth","setheader","seticon","setid","setimage","setimagebitmap","setimageresource","setint","setinterval","setitem","setitems","setjavascriptenabled","setlasterror","setlayout","setlayoutmanager","setlayoutparams","setlength","setlevel","setlistadapter","setlocal","setlocale","setlocation","setlocationrelativeto","setmap","setmessage","setmodel","setname","setnegativebutton","setobject","setobjectname","seton","setonclicklistener","setonitemclicklistener","setontouchlistener","setopt","setosa","setpadding","setparameter","setpassword","setposition","setpositivebutton","setpreferredsize","setprogress","setproperty","setq","setrequestheader","setrequestmethod","setrequestproperty","setresult","sets","setscene","setscrew","setselected","setselection","setsize","setstate","setstatus","setstring","setstyle","setsupportactionbar","sett","settable","settag","settee","setter","setters","settext","settextcolor","settextsize","settime","settimeout","setting","settings","settitle","settle","settled","settlement","settler","settling","settype","settypeface","setup","setups","setuptools","setupui","seturl","setusername","setvalue","setvalues","setview","setvisibility","setvisible","setw","setwidth","setx","sety","seumas","seurat","seuss","sevastopol","seven","sevenfold","sevenpence","seventeen","seventeenths","sevenths","seventieths","seventy","sever","several","severalfold","severalty","severance","severe","severed","severeness","severing","severity","severn","severs","severus","seville","sew","sewage","seward","sewer","sewerage","sewing","sewn","sex","sexagenarian","sexily","sexiness","sexism","sexist","sexless","sexologist","sexology","sexpot","sextans","sextant","sextet","sextillion","sexton","sextuple","sextuplet","sexual","sexuality","sexualized","sexy","seychelles","seyfert","seymour","sf","sfml","sftp","sg","sgt","sh","sha","shabbily","shabbiness","shabby","shack","shackle","shackler","shackleton","shad","shade","shaded","shadeless","shader","shaders","shadily","shadiness","shading","shadow","shadowbox","shadower","shadowiness","shadows","shadowy","shady","shae","shafer","shaffer","shaft","shafting","shag","shagged","shagginess","shagging","shaggy","shah","shahs","shaina","shaine","shakable","shakably","shake","shakeable","shakedown","shaken","shakeout","shaker","shakespeare","shakespearean","shakespearian","shakeup","shakily","shakiness","shaking","shaky","shale","shall","shallot","shallow","shallowness","shalna","shalne","shalom","shalt","sham","shaman","shamanic","shamble","shambles","shame","shamefaced","shameful","shamefulness","shameless","shamelessness","shammed","shammer","shamming","shammy","shampoo","shampooer","shamrock","shamus","shan","shana","shanan","shanda","shandee","shandeigh","shandie","shandra","shandy","shane","shanghai","shanghaiing","shani","shanie","shank","shanna","shannah","shannan","shannen","shannon","shanon","shanta","shantee","shantis","shantung","shanty","shantytown","shape","shaped","shapeless","shapelessness","shapeliness","shapely","shaper","shapes","shapiro","shara","sharable","sharai","shard","shards","share","shareable","sharecrop","sharecropped","sharecropper","sharecropping","shared","sharedapplication","sharedinstance","sharedpreferences","shareholder","shareholding","sharepoint","sharer","shares","shareware","shari","sharia","sharing","sharity","shark","sharkskin","sharl","sharla","sharleen","sharlene","sharline","sharon","sharona","sharp","sharpe","sharpen","sharpened","sharpener","sharper","sharpie","sharpness","sharpshoot","sharpshooter","sharpshooting","sharpy","sharron","sharyl","shasta","shat","shatter","shattering","shatterproof","shaughn","shaula","shaun","shauna","shave","shaved","shaver","shavian","shaving","shavuot","shaw","shawano","shawl","shawn","shawna","shawnee","shay","shayla","shaylah","shaylyn","shaylynn","shayna","shayne","shcharansky","she","shea","sheaf","shear","shearer","sheath","sheathe","sheather","sheathing","sheaths","sheave","sheaves","sheba","shebang","shebeli","sheboygan","shed","shedding","shedir","sheds","sheela","sheelagh","sheelah","sheen","sheena","sheeny","sheep","sheepdog","sheepfold","sheepherder","sheepish","sheepishness","sheepskin","sheer","sheeree","sheerness","sheet","sheeting","sheetlike","sheetname","sheetrock","sheets","sheff","sheffie","sheffield","sheffielder","sheffy","sheik","sheikdom","sheikh","sheila","sheilah","shekel","shel","shela","shelagh","shelba","shelbi","shelby","shelden","sheldon","shelf","shelia","shell","shellac","shellacked","shellacking","shelled","shelley","shellfire","shellfish","shelli","shellie","shells","shelly","shelter","sheltered","shelterer","shelton","shelve","shelver","shelves","shelving","shem","shena","shenandoah","shenanigan","shenyang","sheol","shep","shepard","shepherd","shepherdess","sheppard","shepperd","sher","sheratan","sheraton","sherbet","sherd","sheree","sheri","sheridan","sherie","sheriff","sherill","sherilyn","sherline","sherlock","sherlocke","sherm","sherman","shermie","shermy","sherpa","sherri","sherrie","sherry","sherwin","sherwood","sherwynd","sherye","sheryl","shetland","shevardnadze","shew","shewn","shh","shi","shiatsu","shibboleth","shibboleths","shield","shielded","shielder","shields","shift","shifted","shiftily","shiftiness","shifting","shiftless","shiftlessness","shifts","shifty","shiite","shijiazhuang","shikoku","shill","shillelagh","shillelaghs","shilling","shillong","shiloh","shim","shimmed","shimmer","shimmery","shimming","shimmy","shin","shina","shinbone","shindig","shine","shiner","shingle","shingler","shinguard","shininess","shining","shinned","shinning","shinny","shinsplints","shinto","shintoism","shintoist","shiny","shinyapp","ship","shipboard","shipborne","shipbuild","shipbuilder","shipload","shipman","shipmate","shipmen","shipment","shipowner","shippable","shipped","shipper","shipping","ships","shipshape","shipwreck","shipwright","shipyard","shir","shiraz","shire","shirk","shirker","shirl","shirlee","shirleen","shirlene","shirley","shirline","shiro","shirr","shirt","shirtfront","shirting","shirtless","shirtmake","shirtmaker","shirts","shirtsleeve","shirttail","shirtwaist","shit","shitting","shitty","shiv","shiva","shiver","shiverer","shivery","shivved","shivving","shlemiel","shm","shmuel","shoal","shoat","shock","shocker","shocking","shockley","shockproof","shod","shoddily","shoddiness","shoddy","shoe","shoehorn","shoeing","shoelace","shoemake","shoemaker","shoer","shoes","shoeshine","shoestring","shoetree","shogun","shogunate","shoji","sholom","shone","shoo","shoofly","shook","shoot","shooter","shooting","shootout","shop","shopify","shopkeep","shopkeeper","shoplift","shoplifter","shoplifting","shoppe","shopped","shopper","shopping","shops","shoptalk","shopworn","shore","shorebird","shoreline","shorewood","shoring","short","shortage","shortbread","shortcake","shortchange","shortcode","shortcoming","shortcrust","shortcut","shortcuts","shortcutting","shorten","shortened","shortener","shortening","shorter","shortest","shortfall","shorthand","shorthorn","shortie","shortish","shortlist","shortly","shortname","shortness","shortsighted","shortsightedness","shortstop","shortwave","shorty","shoshana","shoshanna","shoshone","shostakovitch","shot","shotgun","shotgunned","shotgunner","shotgunning","shots","shotted","shotting","should","shoulder","shouldn","shout","shove","shovel","shoveler","shovelful","shover","show","showasaction","showbiz","showbizzes","showboat","showcase","showdialog","showdown","showed","shower","showery","showgirl","showily","showiness","showing","showinputdialog","showman","showmanship","showmen","showmessage","showmessagedialog","shown","showoff","showpiece","showplace","showroom","shows","showthread","showy","shp","shpt","shrank","shrapnel","shred","shredded","shredder","shredding","shreveport","shrew","shrewd","shrewdness","shrewish","shrewishness","shriek","shrieker","shrift","shrike","shrill","shrillness","shrilly","shrimp","shrine","shrink","shrinkage","shrinker","shrinking","shrive","shrivel","shriven","shropshire","shroud","shrub","shrubbed","shrubbery","shrubbing","shrubby","shrug","shrugged","shrugging","shrunk","sht","shtick","shtml","shu","shuck","shucker","shucks","shudder","shuddery","shuffle","shuffleboard","shuffled","shuffles","shuffling","shulman","shun","shunned","shunning","shunt","shunter","shurlock","shurlocke","shurwood","shush","shut","shutdown","shuteye","shutil","shutoff","shutout","shutter","shutterbug","shuttering","shutting","shuttle","shuttlecock","shy","shyer","shyest","shylock","shylockian","shyness","shyster","si","siam","siamese","sian","siana","sianna","sib","sibbie","sibby","sibeal","sibel","sibelius","sibella","sibelle","siberia","siberian","sibilance","sibilancy","sibilant","sibilla","sibley","sibling","siblings","sibyl","sibylla","sibylle","sibylline","sic","sicilian","siciliana","sicily","sick","sickbay","sickbed","sicken","sickener","sickening","sicker","sickie","sickish","sickle","sickliness","sickly","sickness","sicko","sickout","sickroom","sid","side","sidearm","sideband","sidebar","sideboard","sideburns","sidecar","sided","sidedness","sidekick","sidekiq","sidelight","sideline","sidelong","sideman","sidemen","sidenav","sidepiece","sider","sidereal","sides","sidesaddle","sideshow","sidesplitting","sidestep","sidestepped","sidestepping","sidestroke","sideswipe","sidetrack","sidewalk","sidewall","sidewards","sideway","sidewinder","siding","sidle","sidnee","sidney","sidoney","sidonia","sidonnie","sids","siege","siegel","siegfried","sieglinda","siegmund","siemens","siena","sienna","sierpinski","sierra","siesta","sieve","siffre","sift","sifted","sifter","sig","sigfrid","sigfried","siggraph","sigh","sigher","sighs","sight","sighted","sighter","sighting","sightless","sightliness","sightly","sightread","sightsee","sightseeing","sigint","sigismond","sigismondo","sigismund","sigismundo","sigma","sigmoid","sigmund","sign","signal","signaled","signaler","signaling","signalization","signalize","signally","signalman","signalmen","signalr","signals","signatory","signature","signatures","signboard","signed","signer","signet","significance","significant","significantly","signification","signify","signin","signing","signor","signora","signore","signori","signories","signorina","signorine","signout","signpost","signs","signup","sigrid","sigsegv","sigurd","sigvard","sihanouk","sikh","sikhism","sikhs","sikkim","sikkimese","sikorsky","silage","silas","sile","sileas","siled","silence","silencer","silent","silently","silentness","silesia","silhouette","silica","silicate","siliceous","silicide","silicon","silicone","silicoses","silicosis","silk","silken","silkily","silkiness","silkscreen","silkworm","silky","sill","silliness","silly","silo","silt","siltation","siltstone","silty","silurian","silva","silvain","silvan","silvana","silvano","silvanus","silver","silverer","silverfish","silverlight","silverman","silversmith","silversmiths","silverstein","silverware","silvery","silvester","silvia","silvie","silvio","sim","simd","simenon","simeon","simian","similar","similarity","similarly","simile","similiar","similitude","simla","simmer","simmonds","simmons","simmonsville","simms","simon","simona","simone","simonette","simonize","simonne","simony","simpatico","simper","simple","simpleadapter","simplecursoradapter","simpledateformat","simpleminded","simpleness","simpler","simplest","simpleton","simpletype","simplex","simplexml","simplexmlelement","simplicity","simplification","simplified","simplifies","simplify","simplifying","simplistic","simplistically","simply","simpson","simula","simulacrum","simulate","simulated","simulating","simulation","simulative","simulator","simulcast","simultaneity","simultaneous","simultaneously","simultaneousness","sin","sinai","sinatra","since","sincere","sincereness","sincerer","sincerest","sincerity","sinclair","sinclare","sindbad","sindee","sindhi","sine","sinecure","sinecurist","sinew","sinewy","sinful","sinfulness","sing","singapore","singaporean","singborg","singe","singeing","singer","singing","single","singlehanded","singleline","singleness","singleordefault","singlet","singleton","singletons","singletree","singsong","singular","singularity","singularization","sinhalese","sinister","sinisterness","sinistral","sink","sinkable","sinker","sinkhole","sinkiang","sinking","sinks","sinless","sinlessness","sinned","sinner","sinning","sinon","sint","sinter","sinuosity","sinuous","sinuousities","sinuousness","sinus","sinusitis","sinusoid","sinusoidal","siobhan","sioux","siouxie","sip","siphon","siphons","sipped","sipper","sipping","sir","sire","sired","siren","sires","siring","sirius","sirloin","sirocco","sirred","sirring","sirup","sis","sisal","sisely","sisile","sissie","sissified","sissy","sister","sisterhood","sisterliness","sisterly","sistine","sisyphean","sisyphus","sit","sitar","sitarist","sitcom","site","sitecore","siteid","sitemap","sitename","sitepoint","sites","sits","sitter","sitting","situ","situate","situation","situational","situationist","situations","situs","siusan","siva","siward","six","sixfold","sixgun","sixpence","sixpenny","sixshooter","sixteen","sixteenths","sixth","sixths","sixtieths","sixty","sizable","sizableness","size","sized","sizeof","sizer","sizes","sizing","sizzle","sizzler","sj","sjaelland","sk","ska","skaction","skat","skate","skateboard","skater","skedaddle","skeet","skein","skeletal","skeleton","skell","skelly","skeptic","skeptical","skepticism","sketch","sketchbook","sketcher","sketchily","sketchiness","sketchpad","sketchy","skew","skewer","skewing","skewness","ski","skid","skidded","skidding","skiff","skiing","skilfully","skill","skilled","skillet","skillful","skillfulness","skillfulnesses","skilling","skills","skim","skimmed","skimmer","skimming","skimp","skimpily","skimpiness","skimpy","skin","skincare","skindive","skinflint","skinhead","skinless","skinned","skinner","skinniness","skinning","skinny","skins","skintight","skip","skipp","skipped","skipper","skippie","skipping","skippy","skips","skipton","skirmish","skirmisher","skirt","skirter","skirting","skit","skitter","skittish","skittishness","skittle","skivvy","sklearn","skoal","skopje","skspritenode","sku","skulduggery","skulk","skulker","skull","skullcap","skullduggery","skunk","skview","sky","skycap","skydiver","skydiving","skye","skyhook","skyjack","skyjacker","skylab","skylar","skylark","skylarker","skyler","skylight","skyline","skype","skyrocket","skyscrape","skyscraper","skyward","skywave","skyway","skywriter","skywriting","sl","slab","slabbed","slabbing","slack","slacken","slacker","slackness","slade","slag","slagged","slagging","slain","slake","slaked","slalom","slam","slammed","slammer","slamming","slander","slanderous","slanderousness","slang","slangy","slant","slanting","slantwise","slap","slapdash","slaphappy","slapped","slapper","slapping","slapstick","slash","slashes","slashing","slat","slate","slater","slather","slating","slatted","slattern","slatting","slaughter","slaughterer","slaughterhouse","slav","slave","slaveholder","slaver","slavery","slaves","slavic","slavish","slavishness","slavonic","slaw","slay","sleaze","sleazily","sleaziness","sleazy","sled","sledded","sledder","sledding","sledge","sledgehammer","sleek","sleekness","sleep","sleeper","sleepily","sleepiness","sleeping","sleepless","sleeplessness","sleepover","sleepwalk","sleepwalker","sleepwear","sleepy","sleepyhead","sleet","sleety","sleeve","sleeveless","sleeving","sleigh","sleighs","sleight","sleken","slender","slenderize","slenderness","slept","slesinger","sleuth","sleuths","slew","slf","slice","sliced","slicer","slices","slicing","slick","slicker","slickness","slid","slide","slidedown","slider","sliders","slides","slideshow","slidetoggle","slideup","sliding","slight","slighter","slighting","slightly","slightness","slim","slime","sliminess","slimline","slimmed","slimmer","slimmest","slimming","slimness","slimy","sling","slings","slingshot","slink","slinky","slip","slipcase","slipcover","slipknot","slippage","slipped","slipper","slipperiness","slippery","slipping","slipshod","slipstream","slipway","slit","slither","slithery","slitted","slitter","slitting","sliver","slivery","sln","sloan","sloane","slob","slobber","slobbery","slocum","sloe","slog","slogan","sloganeer","slogged","slogging","sloop","slop","slope","sloped","slopped","sloppily","sloppiness","slopping","sloppy","slosh","slot","sloth","slothful","slothfulness","sloths","slots","slotted","slotting","slouch","sloucher","slouchy","slough","sloughs","slovak","slovakia","slovakian","sloven","slovene","slovenia","slovenian","slovenliness","slovenly","slow","slowcoaches","slowdown","slower","slowing","slowish","slowly","slowness","slowpoke","slows","slr","sludge","sludgy","slue","slug","sluggard","slugged","slugger","slugging","sluggish","sluggishness","sluice","slum","slumber","slumberer","slumberous","slumlord","slummed","slummer","slumming","slummy","slump","slung","slunk","slur","slurp","slurred","slurried","slurring","slurry","slurrying","slush","slushiness","slushy","slut","sluttish","slutty","sly","slyness","sm","smack","smacker","small","smaller","smallest","smallholders","smallholding","smallint","smallish","smallness","smallpox","smalltalk","smalltime","smallwood","smarmy","smart","smarten","smarter","smartness","smartphone","smartphones","smarty","smartypants","smash","smasher","smashing","smashup","smattering","smb","smear","smearer","smeary","smell","smeller","smelliness","smelly","smelt","smelter","smetana","smidgen","smilax","smile","smiley","smilies","smiling","smirch","smirk","smirnoff","smite","smiter","smith","smithereens","smithfield","smiths","smithson","smithsonian","smithtown","smithy","smitten","smitty","smock","smocking","smog","smoggy","smoke","smokehouse","smokeless","smoker","smokescreen","smokestack","smokey","smokiness","smoking","smoky","smolder","smoldering","smolensk","smollett","smooch","smooth","smoothen","smoother","smoothie","smoothing","smoothly","smoothness","smooths","smote","smother","smp","smrgsbord","sms","smsa","smsmanager","smth","smtp","smtpclient","smucker","smudge","smudginess","smudgy","smug","smugged","smugger","smuggest","smugging","smuggle","smuggler","smugness","smut","smuts","smutted","smuttiness","smutting","smutty","smyrna","sn","snack","snackbar","snaffle","snafu","snag","snagged","snagging","snail","snake","snakebird","snakebite","snakelike","snakeroot","snaky","sname","snap","snapback","snapdragon","snapped","snapper","snappily","snappiness","snapping","snappish","snappishness","snappy","snapshot","snapshots","snapshotted","snapshotting","snare","snarer","snarf","snarl","snarler","snarling","snarly","snatch","snatcher","snazzily","snazzy","snd","snead","sneak","sneaker","sneakily","sneakiness","sneaking","sneaky","sneed","sneer","sneerer","sneering","sneeze","snell","snick","snicker","snide","snideness","snider","sniff","sniffer","sniffle","sniffler","sniffles","snifter","snigger","snip","snipe","sniper","snipped","snipper","snippet","snippets","snipping","snippy","snit","snitch","snivel","sniveler","snmp","sno","snob","snobbery","snobbish","snobbishness","snobby","snodgrass","snood","snook","snooker","snoop","snooper","snoopy","snoot","snootily","snootiness","snooty","snooze","snore","snorkel","snort","snorter","snot","snotted","snottily","snottiness","snotting","snotty","snout","snow","snowball","snowbank","snowbelt","snowbird","snowblower","snowboard","snowbound","snowcapped","snowden","snowdrift","snowdrop","snowfall","snowfield","snowflake","snowily","snowiness","snowman","snowmen","snowmobile","snowplough","snowploughs","snowplow","snowshed","snowshoe","snowshoeing","snowshoer","snowstorm","snowsuit","snowy","snprintf","sns","snub","snubbed","snubber","snubbing","snuff","snuffbox","snuffer","snuffle","snuffler","snuffly","snug","snugged","snugger","snuggest","snugging","snuggle","snuggly","snugness","snyder","so","soa","soak","soaker","soap","soapaction","soapbox","soapclient","soapenv","soapiness","soapobject","soapstone","soapsud","soapui","soapy","soar","soarer","soaring","sob","sobbed","sobbing","sober","soberer","soberness","sobriety","sobriquet","soc","soccer","sociabilities","sociability","sociable","sociably","social","socialism","socialist","socialistic","socialite","sociality","socialization","socialize","socialized","socializer","socially","societal","society","socio","sociobiology","sociocultural","sociodemographic","socioeconomic","socioeconomically","sociolinguistics","sociological","sociologist","sociology","sociometric","sociometry","sociopath","sociopaths","sock","sockaddr","socket","socketexception","socketio","socketprocessor","sockets","sockfd","socks","socorro","socrates","socratic","sod","soda","sodales","sodded","sodden","soddenness","sodding","soddy","sodium","sodom","sodomite","sodomize","sodomy","soever","sofa","sofia","sofie","soft","softball","softbound","soften","softener","softhearted","softie","softlayer","softmax","softness","software","softwood","softy","soggily","sogginess","soggy","soho","soign","soil","soiled","soire","sojourn","sol","solace","solacer","solar","solaria","solaris","solarium","sold","solder","soldier","soldiery","sole","solecism","soled","solely","solemn","solemness","solemnify","solemnity","solemnization","solemnize","solemnness","solenoid","soler","soles","solicit","solicitation","solicited","solicitor","solicitous","solicitousness","solicitude","solid","solidarity","solidcolorbrush","solidi","solidification","solidify","solidity","solidness","solidus","soliloquies","soliloquize","soliloquy","soling","solipsism","solipsist","solis","solitaire","solitary","solitude","sollie","solly","solo","soloist","solomon","solon","soloviev","solr","solstice","solubility","soluble","solute","solution","solutions","solvable","solvating","solve","solved","solvency","solvent","solvently","solver","solves","solving","solzhenitsyn","som","soma","somali","somalia","somalian","somatic","somber","somberness","sombre","sombrero","some","somebody","someclass","somedata","someday","somefile","somefunc","somefunction","somehow","someid","somemethod","somename","someobject","someone","someplace","someproperty","somersault","somerset","somersetted","somersetting","somerville","somestring","sometable","sometext","something","somethingelse","sometime","sometimes","sometype","someurl","somevalue","somevar","someway","somewhat","somewhere","somme","sommelier","somnambulism","somnambulist","somnolence","somnolent","somoza","somthing","son","sonar","sonarqube","sonata","sonatina","sonatype","sondheim","sondra","sonenberg","song","songbag","songbird","songbook","songfest","songful","songfulness","songhai","songhua","songs","songster","songstress","songwriter","songwriting","sonia","sonic","sonja","sonnet","sonni","sonnie","sonnnie","sonny","sonoma","sonora","sonority","sonorous","sonorousness","sontag","sonuvabitch","sony","sonya","soon","sooner","soonish","soot","sooth","soothe","soother","soothing","soothingness","sooths","soothsay","soothsayer","sooty","sop","sophey","sophi","sophia","sophie","sophism","sophist","sophister","sophistic","sophistical","sophisticate","sophisticated","sophisticatedly","sophistication","sophistry","sophoclean","sophocles","sophomore","sophomoric","sophronia","soporific","soporifically","sopped","sopping","soppy","soprano","sopwith","sorbet","sorbonne","sorcerer","sorceress","sorcery","sorcha","sordid","sordidness","sore","sorehead","soreness","sorensen","sorenson","sorghum","sorority","sorrel","sorrentine","sorrily","sorriness","sorrow","sorrower","sorrowful","sorrowfulness","sorry","sort","sorta","sortable","sortby","sorted","sortedlist","sorter","sortexpression","sortie","sortieing","sorting","sortorder","sorts","sos","sosa","sosanna","sot","soto","sottish","sou","soubriquet","souffl","sough","soughs","sought","soul","soulful","soulfulness","soulless","sound","soundboard","soundcloud","sounder","sounders","soundest","sounding","soundings","soundless","soundly","soundness","soundproof","soundproofing","sounds","soundtrack","soup","souphanouvong","soupon","soupy","sour","source","sourcecode","sourced","sourceencoding","sourcefile","sourceforge","sourceid","sourceless","sourcemap","sourcepath","sources","sourcetype","sourcing","sourdough","sourdoughs","sourish","sourness","sourpuss","sous","sousa","sousaphone","souse","south","southampton","southbound","southeast","southeaster","southeastern","southeastward","souther","southerly","southern","southerner","southernisms","southernmost","southey","southfield","southing","southland","southpaw","souths","southward","southwest","southwester","southwestern","southwestward","souvenir","sovereign","sovereignty","soviet","sow","sowbelly","sowens","sower","soweto","sown","sox","soy","soybean","soyinka","soyuz","sp","spa","spaatz","space","spacecraft","spaced","spaceflight","spaceman","spacemen","spaceport","spacer","spaces","spaceship","spacesuit","spacewalk","spacewar","spacewoman","spacewomen","spacey","spacial","spacier","spaciest","spaciness","spacing","spacious","spaciousness","spackle","spade","spadeful","spader","spadework","spadices","spadix","spafford","spaghetti","spahn","spain","spake","spalding","spam","span","spandex","spandrels","spangle","spanglish","spaniard","spaniel","spanielled","spanielling","spanish","spank","spanker","spanking","spanned","spanner","spanning","spans","spar","sparc","sparcstation","spare","spareness","sparer","spareribs","sparing","spark","sparkconf","sparkcontext","sparker","sparkle","sparkler","sparkman","sparks","sparksession","sparksubmit","sparky","sparling","sparql","sparred","sparrer","sparring","sparrow","spars","sparse","sparseness","sparsity","sparta","spartacus","spartan","spasm","spasmodic","spasmodically","spastic","spat","spate","spathe","spatial","spatiality","spatted","spatter","spatterdock","spatting","spatula","spavin","spawn","spawned","spawner","spawning","spay","spca","speak","speakable","speakeasy","speaker","speakers","speakership","speaking","speaks","spear","spearer","spearfish","spearhead","spearmint","spears","spec","special","specialcells","specialism","specialist","specialization","specialize","specialized","specializing","specially","specialty","specie","species","specif","specifiability","specifiable","specifiably","specific","specifically","specification","specifications","specificity","specifics","specified","specifier","specifies","specify","specifying","specimen","specious","speciousness","speck","speckle","specs","spectacle","spectacular","spectator","specter","spectra","spectral","spectralness","spectrogram","spectrograph","spectrographically","spectrography","spectrometer","spectrometric","spectrometry","spectrophotometer","spectrophotometric","spectrophotometry","spectroscope","spectroscopic","spectroscopically","spectroscopy","spectrum","specular","specularity","speculate","speculation","speculative","speculator","sped","speech","speechless","speechlessness","speed","speedboat","speedboating","speeder","speedily","speediness","speedometer","speeds","speedster","speedup","speedway","speedwell","speedy","speer","speleological","speleologist","speleology","spell","spellbind","spellbinder","spellbound","spelldown","spelled","speller","spelling","spells","spelunker","spelunking","spence","spencer","spencerian","spend","spender","spending","spends","spendthrift","spengler","spenglerian","spense","spenser","spenserian","spent","sperm","spermatophyte","spermatozoa","spermatozoon","spermicidal","spermicide","sperry","spew","spewer","spf","sphagnum","sphere","spheric","spherical","spherics","spheroid","spheroidal","spherule","sphincter","sphinx","spi","spic","spica","spice","spicebush","spicily","spiciness","spicule","spicy","spider","spiderweb","spiderwort","spidery","spiegel","spiel","spielberg","spier","spiffy","spigot","spike","spiker","spikiness","spiky","spill","spillage","spillane","spillover","spillway","spin","spinach","spinal","spindle","spindly","spine","spineless","spinelessness","spinet","spininess","spinnability","spinnaker","spinner","spinneret","spinning","spinoza","spinster","spinsterhood","spinsterish","spiny","spiracle","spiraea","spiral","spire","spirea","spirit","spirited","spiritedness","spiritless","spirits","spiritual","spiritualism","spiritualist","spiritualistic","spirituality","spirituous","spiro","spirochete","spiry","spit","spitball","spite","spiteful","spitefuller","spitefullest","spitefulness","spitfire","spits","spitted","spitting","spittle","spittoon","spitz","spl","splash","splashdown","splasher","splashily","splashiness","splashscreen","splashy","splat","splatted","splatter","splatting","splay","splayfeet","splayfoot","spleen","splendid","splendidness","splendor","splendorous","splenetic","splice","splicer","spline","splint","splinter","splintery","split","splits","splittable","splitted","splitter","splitting","splodge","splotch","splotchy","splurge","splutter","splutterer","spock","spoil","spoilables","spoilage","spoiled","spoiler","spoilsport","spokane","spoke","spoken","spokeshave","spokesman","spokesmen","spokespeople","spokesperson","spokeswoman","spokeswomen","spoliation","sponge","spongecake","sponger","sponginess","spongy","sponsor","sponsorship","spontaneity","spontaneous","spontaneousness","spoof","spook","spookiness","spooky","spool","spoon","spoonbill","spoonerism","spoonful","spoor","sporadic","sporadically","spore","sporran","sport","sportiness","sporting","sportive","sportiveness","sports","sportscast","sportsman","sportsmanlike","sportsmanship","sportsmen","sportswear","sportswoman","sportswomen","sportswriter","sporty","sposato","spot","spotify","spotless","spotlessness","spotlight","spotlit","spots","spotted","spotter","spottily","spottiness","spotting","spotty","spousal","spouse","spout","spouter","sprain","sprang","sprat","sprawl","spray","sprayed","sprayer","sprays","spread","spreadeagled","spreader","spreadsheet","spreadsheetapp","spreadsheets","spree","spreeing","sprig","sprigged","sprigging","sprightliness","sprightly","spring","springapplication","springboard","springbok","springboot","springbootapplication","springeing","springer","springfield","springframework","springily","springiness","springing","springjunit","springlike","springsource","springsteen","springtime","springy","sprinkle","sprinkler","sprinkling","sprint","sprintf","sprite","spritebatch","spritekit","sprites","spritz","sprocket","sprocketed","sprockets","sproul","sprout","spruce","spruceness","sprue","sprung","spry","spryness","spss","spud","spudded","spudding","spuds","spume","spumone","spumoni","spumy","spun","spunk","spunky","spur","spurge","spurious","spuriousness","spurn","spurred","spurring","spurt","sputa","sputnik","sputter","sputum","spy","spyder","spyglass","sq","sql","sqlalchemy","sqlclient","sqlcmd","sqlcommand","sqlconnection","sqlcontext","sqldataadapter","sqldatareader","sqldatasource","sqldbtype","sqlerror","sqlexception","sqlexpress","sqlfiddle","sqlite","sqliteconnection","sqlitedatabase","sqliteopenhelper","sqlparameter","sqlplus","sqlquery","sqlserver","sqlsrv","sqlstate","sqoop","sqq","sqrt","sqs","squab","squabbed","squabber","squabbest","squabbing","squabble","squabbler","squad","squadded","squadding","squadron","squalid","squalidness","squall","squaller","squally","squalor","squamous","squander","squanto","square","squared","squareness","squarer","squares","squaresville","squareup","squarish","squash","squashiness","squashy","squat","squatness","squatted","squatter","squattest","squatting","squaw","squawk","squawker","squeak","squeaker","squeakily","squeakiness","squeaky","squeal","squealer","squeamish","squeamishness","squeegee","squeegeeing","squeeze","squeezer","squelch","squelcher","squelchy","squib","squibb","squibbed","squibbing","squid","squidded","squidding","squiggle","squiggly","squint","squinter","squinting","squire","squirehood","squirm","squirmy","squirrel","squirt","squirter","squish","squishy","sr","srand","src","srcdir","srcdirs","sref","srinagar","sro","srv","ss","ssa","sscanf","ssd","sse","ssh","sshd","ssid","ssis","ssl","sslcontext","sslsocketimpl","sslv","ssms","ssn","sso","ssrs","sss","sst","sstream","ssw","st","sta","stab","stabbed","stabber","stabbing","stability","stabilizability","stabilization","stabilize","stabilizer","stable","stableman","stablemate","stablemen","stableness","stabler","stables","stablest","stabling","stably","staccato","stace","stacee","stacey","staci","stacia","stacie","stack","stackable","stackblitz","stacked","stacker","stackexchange","stacking","stacklayout","stackoverflow","stackpane","stackpanel","stacks","stacktrace","stacy","stadia","stadias","stadium","stael","stafani","staff","staffard","staffer","stafford","staffordshire","staffroom","staford","stag","stage","stagecoach","stagecraft","staged","stagehand","stager","stages","stagestruck","stagflation","stagged","stagger","staggerer","staggering","staggers","stagging","staginess","staging","stagnancy","stagnant","stagnate","stagnation","stagy","stahl","staid","staidness","stain","stained","stainer","stainless","stair","staircase","stairway","stairwell","stake","stakeholder","stakeout","stalactite","stalag","stalagmite","stale","stalemate","staleness","staley","stalin","stalingrad","stalinist","stalk","stalker","stall","stalled","stallholders","stallion","stallone","stalls","stalwart","stalwartness","stamen","stamford","stamina","staminate","stammer","stammerer","stammering","stamp","stamped","stampede","stampeder","stamper","stan","stance","stanch","stancher","stanchion","stand","standalone","standard","standardcontext","standardcontextvalve","standardenginevalve","standardhost","standardhostvalve","standardization","standardize","standardized","standardizer","standardizes","standards","standarduserdefaults","standardwrapper","standardwrappervalve","standby","standbys","standee","standford","standing","standish","standoff","standoffish","standout","standpipe","standpoint","stands","standstill","stanfield","stanford","stanislas","stanislaus","stanislavsky","stanislaw","stank","stanleigh","stanley","stanly","stannic","stannous","stanton","stanwood","stanza","staph","staphs","staphylococcal","staphylococci","staphylococcus","staple","stapled","stapler","stapleton","star","starboard","starch","starchily","starchiness","starchy","stardom","stardust","stare","starfish","stargate","stargaze","staring","stark","starkey","starkness","starla","starlene","starless","starlet","starlight","starlin","starling","starlit","starr","starred","starring","starry","stars","starship","starstruck","start","startactivity","startactivityforresult","startangle","startanimation","startdate","started","starter","starters","startid","startindex","startinfo","starting","startinternal","startle","startling","startnew","startpoint","startpos","startrow","starts","startservice","startstop","startswith","starttime","starttls","startup","startups","startx","starty","starvation","starve","starveling","starver","stash","stasis","stat","state","statecraft","stated","stateful","statehood","statehouse","stateid","stateless","statelessness","stateliness","stately","statement","statements","staten","statename","stateparams","stateprovider","stater","stateroom","states","stateside","statesman","statesmanlike","statesmanship","statesmen","stateswoman","stateswomen","statewide","static","statical","statically","staticfiles","staticmethod","staticresource","statics","statictext","stating","station","stationarity","stationary","stationer","stationery","stationmaster","stations","statistic","statistical","statistician","statistics","statler","stator","stats","statuary","statue","statuesque","statuette","stature","status","statusbar","statuscode","statuses","statusid","statustext","statute","statutorily","statutory","stauffer","staunch","staunchness","stave","stavro","stay","stayed","stayer","staying","stays","std","stdafx","stdcall","stdclass","stderr","stdin","stdint","stdio","stdlib","stdout","stdtypes","ste","stead","steadfast","steadfastness","steadily","steadiness","steading","steady","steak","steakhouse","steal","stealer","stealing","stealth","stealthily","stealthiness","stealths","stealthy","steam","steamboat","steamer","steamfitter","steamfitting","steamily","steaminess","steamroll","steamroller","steamship","steamy","stearn","stearne","steed","steel","steele","steeliness","steelmaker","steelwork","steelworker","steely","steelyard","steen","steep","steepen","steeper","steeple","steeplebush","steeplechase","steeplejack","steepness","steer","steerage","steerer","steersman","steersmen","steeves","stefa","stefan","stefania","stefanie","stefano","steffane","steffen","steffi","steffie","stegosauri","stegosaurus","stein","steinbeck","steinberg","steinem","steiner","steinmetz","steinway","stella","stellar","stellated","stem","stemless","stemmed","stemming","stemware","stench","stencil","stenciler","stencillings","stendhal","stendler","stengel","steno","stenographer","stenographic","stenography","stenotype","stentorian","step","stepbrother","stepchild","stepchildren","stepdaughter","stepfather","stepha","stephan","stephana","stephani","stephanie","stephannie","stephanus","stephen","stephenie","stephenson","stephi","stephie","stephine","stepladder","stepmother","stepparent","steppe","stepper","stepping","steppingstone","steps","stepsister","stepson","stepwise","stereo","stereographic","stereography","stereophonic","stereoscope","stereoscopic","stereoscopically","stereoscopy","stereotype","stereotypic","stereotypical","sterile","sterility","sterilization","sterilize","sterilized","sterilizes","sterling","sterlingness","stern","sternal","sternberg","sterne","sternness","sterno","sternum","steroid","steroidal","stertorous","stesha","stet","stethoscope","stetson","stetted","stetting","steuben","stevana","steve","stevedore","steven","stevena","stevenson","stevie","stevy","stew","steward","stewardess","stewardship","stewart","stg","sth","stick","sticker","stickily","stickiness","sticking","stickle","stickleback","stickler","stickpin","sticks","stickup","sticky","stieglitz","stiff","stiffen","stiffness","stifle","stifler","stifling","stigma","stigmata","stigmatic","stigmatization","stigmatizations","stigmatize","stigmatized","stile","stiletto","still","stillbirth","stillbirths","stillborn","stiller","stillest","stillman","stillmann","stillness","stillwell","stilt","stilted","stilton","stimson","stimulant","stimulate","stimulated","stimulation","stimulative","stimulator","stimulatory","stimuli","stimulus","stine","sting","stinger","stingily","stinginess","stinging","stingray","stingy","stink","stinkbug","stinker","stinking","stinkpot","stinky","stint","stinter","stinting","stipend","stipendiary","stipple","stippler","stipulate","stipulation","stir","stirling","stirred","stirrer","stirring","stirrup","stitch","stitcher","stitchery","stitching","stl","stm","stmt","stoat","stochastic","stochastically","stochasticity","stock","stockade","stockbreeder","stockbroker","stockbroking","stocker","stockhausen","stockholder","stockholm","stockily","stockiness","stockinet","stockinette","stocking","stockist","stockpile","stockpiler","stockpot","stockroom","stocks","stocktaking","stockton","stocky","stockyard","stoddard","stodge","stodgily","stodginess","stodgy","stogy","stoic","stoical","stoichiometric","stoichiometry","stoicism","stoke","stoker","stokes","stol","stole","stolen","stolid","stolidity","stolidness","stolon","stomach","stomachache","stomacher","stomachs","stomp","stone","stonecutter","stonehenge","stoneless","stonemason","stoner","stonewall","stoneware","stonewashed","stonework","stonewort","stonily","stoniness","stony","stood","stooge","stool","stoop","stop","stopcock","stopgap","stoplight","stopover","stoppable","stoppage","stoppard","stopped","stopper","stopping","stopple","stoppropagation","stops","stopwatch","stopwords","storage","store","stored","storedprocedure","storefront","storehouse","storeid","storekeep","storekeeper","storeroom","stores","stories","storing","stork","storm","stormbound","stormer","stormi","stormie","stormily","storminess","stormtroopers","stormy","story","storyboard","storyboards","storybook","storyline","storyteller","storytelling","stouffer","stoup","stout","stouten","stouthearted","stoutness","stove","stovepipe","stover","stow","stowage","stowaway","stowe","str","strabo","strace","straddle","straddler","stradivari","stradivarius","strafe","strafer","straggle","straggly","straight","straightaway","straightedge","straighten","straightener","straightforward","straightforwardness","straightjacket","straightness","straightway","strain","strained","strainer","straining","strains","strait","straiten","straitjacket","straitlaced","straitness","strand","stranded","strange","strangely","strangeness","stranger","strangle","stranglehold","strangles","strangulate","strangulation","strap","strapless","strapped","strapping","strasbourg","strata","stratagem","strategic","strategical","strategics","strategies","strategist","strategy","stratford","strati","stratification","stratified","stratify","stratigraphic","stratigraphical","stratigraphy","stratosphere","stratospheric","stratospherically","stratum","stratus","strauss","stravinsky","straw","strawberry","strawflower","stray","strayer","strcat","strcmp","strcpy","strdup","streak","streaker","streaky","stream","streamed","streamer","streaming","streamline","streamreader","streams","streamwriter","street","streetcar","streetlight","streets","streetwalker","streetwise","streisand","strength","strengthen","strengthener","strengths","strenuous","strenuousness","strep","streptococcal","streptococci","streptococcus","streptomycin","strerror","stress","stressed","stressful","stretch","stretchability","stretchable","stretched","stretcher","stretchy","strew","strewn","strftime","stria","striae","striate","striated","striation","stricken","strickland","strict","stricter","strictest","strictly","strictmode","strictness","stricture","stridden","stride","stridency","strident","strider","strides","strife","strike","strikebreak","strikebreaker","strikebreaking","strikeout","striker","strikes","striking","strindberg","string","stringarray","stringbuffer","stringbuilder","stringbyappendingpathcomponent","stringcomparison","stringed","stringencoding","stringency","stringent","stringer","stringformat","stringify","stringiness","stringing","stringio","stringlength","stringlist","stringproperty","stringr","stringreader","stringrequest","strings","stringsasfactors","stringsplitoptions","stringstream","stringtokenizer","stringtype","stringutils","stringvalue","stringvar","stringwithformat","stringwriter","stringy","strip","stripe","striped","striper","stripling","stripped","stripper","stripping","strips","stripslashes","striptease","stripteaser","stripy","strive","striven","striver","strlen","strncpy","strobe","stroboscope","stroboscopic","strode","stroke","strokecolor","strokewidth","stroking","stroll","stroller","strom","stromberg","stromboli","strong","strongbow","strongbox","stronger","strongheart","stronghold","strongish","strongly","strongman","strongmen","strongroom","strontium","strop","strophe","strophic","stropped","stropping","strove","strpos","strptime","strs","strsplit","strsql","strstr","strtok","strtolower","strtotime","struck","struct","structfield","structs","structural","structuralism","structuralist","structure","structured","structureless","structures","structuring","strudel","struggle","struggled","struggler","struggling","strum","strummed","strumming","strumpet","strung","strut","struts","strutted","strutter","strutting","strychnine","sts","stu","stuart","stub","stubbed","stubbing","stubble","stubblefield","stubbly","stubborn","stubbornness","stubby","stubs","stucco","stuccoes","stuck","stud","studbook","studded","studding","studebaker","student","studentid","studentname","students","studentship","studied","studiedness","studier","studies","studio","studios","studious","studiousness","study","studying","stuff","stuffily","stuffiness","stuffing","stuffs","stuffy","stultify","stumble","stumbled","stumbling","stump","stumpage","stumped","stumper","stumpy","stun","stung","stunk","stunned","stunner","stunning","stunt","stunted","stupefaction","stupefy","stupendous","stupendousness","stupid","stupidity","stupidness","stupor","sturdily","sturdiness","sturdy","sturgeon","sturm","stutter","stuttgart","stuyvesant","sty","stygian","style","styleable","styleclass","styled","styles","stylesheet","stylesheets","styleurls","styli","styling","stylish","stylishness","stylist","stylistic","stylistically","stylites","stylization","stylize","stylos","stylus","stymie","stymieing","stymy","styptic","styrene","styrofoam","styx","su","suable","suarez","suasion","suave","suaveness","suavity","sub","subaltern","subarctic","subareas","subarray","subaru","subassembly","subatomic","subbasement","subbed","subbing","subbranch","subcaste","subcat","subcategories","subcategorizing","subcategory","subchain","subclass","subclasses","subclassifications","subclassing","subclauses","subcommand","subcommittee","subcompact","subcomponent","subcomputation","subconcept","subconscious","subconsciousness","subconstituent","subcontinent","subcontinental","subcontract","subcontractor","subcultural","subculture","subcutaneous","subdir","subdirectories","subdirectory","subdistrict","subdivide","subdivision","subdomain","subdomains","subdue","subdued","subduer","subexpression","subfamily","subfield","subfile","subfolder","subfolders","subform","subfreezing","subgoal","subgraph","subgraphs","subgroup","subharmonic","subhead","subheading","subhuman","subindex","subinterval","subitem","subitems","subj","subject","subjection","subjective","subjectiveness","subjectivist","subjectivity","subjects","subjoin","subjugate","subjugation","subjunctive","subkey","sublayer","sublease","sublet","subletting","sublimate","sublimation","sublime","sublimeness","sublimer","subliminal","sublimity","sublist","subliterary","sublunary","submachine","submarginal","submarine","submariner","submenu","submerge","submergence","submerse","submersible","submersion","submicroscopic","submission","submissions","submissive","submissiveness","submit","submitbutton","submitform","submits","submittable","submittal","submitted","submitter","submitting","submode","submodule","submodules","subnational","subnet","subnetwork","subnormal","suboptimal","suborbital","suborder","subordinate","subordinately","subordinates","subordination","subordinator","suborn","subornation","subpage","subparagraph","subpart","subplot","subplots","subpoena","subpopulation","subproblem","subprocess","subprofessional","subprogram","subproject","subproof","subqueries","subquery","subquestion","subrange","subregion","subregional","subreport","subrogation","subroutine","subs","subsample","subschema","subscribe","subscribed","subscriber","subscribers","subscribing","subscript","subscripted","subscription","subscriptions","subsection","subsegment","subsentence","subsequence","subsequent","subsequently","subservience","subservient","subset","subsets","subside","subsidence","subsidiarity","subsidiary","subsidization","subsidize","subsidized","subsidizer","subsidy","subsist","subsistence","subsistent","subsocietal","subsoil","subsonic","subspace","subspecies","substance","substandard","substantial","substantially","substantialness","substantiate","substantiated","substantiation","substantive","substantiveness","substantivity","substation","substerilization","substitutability","substitute","substituted","substitution","substitutionary","substitutive","substr","substrata","substrate","substratum","substring","substrings","substructure","subsume","subsurface","subsystem","subtable","subtask","subteen","subtenancy","subtenant","subtend","subterfuge","subterranean","subtest","subtext","subtitle","subtle","subtleness","subtlety","subtly","subtopic","subtotal","subtract","subtracter","subtracting","subtraction","subtrahend","subtree","subtropic","subtropical","subtype","subunit","suburb","suburban","suburbanite","suburbanization","suburbanized","suburbanizing","suburbia","subvention","subversion","subversive","subversiveness","subvert","subverter","subview","subviews","subway","subzero","succ","succeed","succeeded","succeeder","succeeds","succesfully","success","successful","successfull","successfully","successfulness","succession","successive","successiveness","successor","successorship","succinct","succinctness","succor","succored","succorer","succotash","succubus","succulence","succulency","succulent","succumb","such","suchlike","suck","sucker","suckle","suckling","sucks","sucre","sucrose","suction","sud","sudan","sudanese","sudanic","sudden","suddenly","suddenness","sudetenland","sudo","sudoku","suds","sudsy","sue","sued","suede","suellen","suer","suet","suetonius","suety","suez","suffer","sufferance","sufferer","suffering","suffice","sufficiency","sufficient","sufficiently","suffix","suffixation","suffixed","suffixes","suffocate","suffocating","suffolk","suffragan","suffrage","suffragette","suffragist","suffuse","suffusion","sufi","sufism","sugar","sugarcane","sugarcoat","sugarless","sugarplum","sugary","suggest","suggested","suggester","suggestibility","suggestible","suggesting","suggestion","suggestions","suggestive","suggestiveness","suggests","sugillate","suharto","sui","suicidal","suicide","suit","suitability","suitable","suitableness","suitably","suitcase","suite","suited","suites","suiting","suitor","suits","sukarno","sukey","suki","sukiyaki","sukkot","sukkoth","sula","sulawesi","suleiman","sulfa","sulfaquinoxaline","sulfate","sulfide","sulfite","sulfonamide","sulfur","sulfuric","sulfurous","sulfurousness","sulk","sulkily","sulkiness","sulky","sulla","sullen","sullenness","sullied","sullivan","sully","sulphate","sulphide","sulphuric","sultan","sultana","sultanate","sultrily","sultriness","sultry","sulzberger","sum","sumac","sumach","sumatra","sumatran","sumer","sumeria","sumerian","summability","summable","summand","summarily","summarise","summarization","summarize","summarized","summarizer","summary","summation","summed","summer","summerdale","summerhouse","summertime","summery","summing","summit","summitry","summon","summoner","summons","sumner","sumo","sump","sumptuous","sumptuousness","sums","sumter","sun","sunbaked","sunbath","sunbathe","sunbather","sunbathing","sunbaths","sunbeam","sunbelt","sunblock","sunbonnet","sunburn","sunburst","suncream","sundae","sundanese","sundas","sunday","sunder","sundial","sundown","sundowner","sundris","sundry","sunfish","sunflower","sung","sunglass","sunk","sunlamp","sunless","sunlight","sunlit","sunned","sunni","sunniness","sunning","sunnite","sunny","sunnyvale","sunrise","sunroof","sunscreen","sunset","sunsetting","sunshade","sunshine","sunshiny","sunspot","sunstroke","sunt","suntan","suntanned","suntanning","sunup","sup","super","superabundance","superabundant","superannuate","superannuation","superb","superbness","supercargo","supercargoes","supercharge","supercharger","supercilious","superciliousness","supercity","superclass","supercomputer","supercomputing","superconcept","superconducting","superconductivity","superconductor","supercooled","supercooling","supercritical","superdense","superego","supererogation","supererogatory","superficial","superficiality","superfine","superfix","superfluity","superfluous","superfluousness","superheat","superhero","superheroes","superhighway","superhuman","superhumanness","superimpose","superimposition","superintend","superintendence","superintendency","superintendent","superior","superiority","superlative","superlativeness","superlunary","supermachine","superman","supermarket","supermen","supermodel","supermom","supernal","supernatant","supernatural","supernaturalism","supernaturalness","supernormal","supernova","supernovae","supernumerary","superordinate","superpose","superposition","superpower","superpredicate","supersaturate","supersaturation","superscribe","superscript","superscription","supersede","superseder","supersensitive","supersensitiveness","superset","supersonic","supersonically","supersonics","superstar","superstition","superstitious","superstore","superstructural","superstructure","supertanker","supertitle","superuser","supervene","supervention","superview","supervise","supervised","supervision","supervisor","supervisory","superwoman","superwomen","supine","supineness","supp","supper","suppl","supplant","supplanter","supple","supplement","supplemental","supplementary","supplementation","supplementer","suppleness","suppliant","supplicant","supplicate","supplication","supplied","supplier","suppliers","supplies","supply","supplying","support","supportability","supportable","supported","supporter","supporting","supportive","supportmapfragment","supports","suppose","supposed","supposedly","supposing","supposition","suppository","suppress","suppressant","suppressed","suppressible","suppression","suppressive","suppresslint","suppressor","suppresswarnings","suppurate","suppuration","supra","supranational","supranationalism","suprasegmental","supremacist","supremacy","supremal","supreme","supremeness","supremo","supt","surabaya","surat","surcease","surcharge","surcingle","surd","sure","sured","surefire","surefooted","surely","sureness","surer","surest","surety","surf","surface","surfaced","surfaceholder","surfacer","surfaces","surfaceview","surfacing","surfactant","surfboard","surfeit","surfer","surfing","surge","surged","surgeon","surgery","surges","surgical","surinam","suriname","surinamese","surliness","surly","surmise","surmiser","surmount","surmountable","surname","surpass","surpassed","surpassing","surplice","surplus","surplussed","surplussing","surprise","surprised","surpriser","surprising","surprisingly","surreal","surrealism","surrealist","surrealistic","surrealistically","surreality","surrender","surrenderer","surreptitious","surreptitiousness","surrey","surrogacy","surrogate","surrogation","surround","surrounded","surrounding","surtax","surveillance","surveillant","survey","surveyed","surveying","surveyor","surveys","survivability","survivable","survival","survivalist","survive","survived","survivor","survivorship","surya","sus","susan","susana","susanetta","susann","susanna","susannah","susanne","susceptibilities","susceptibility","susceptible","suscipit","susette","sushi","susi","susie","suspect","suspected","suspecter","suspecting","suspend","suspended","suspender","suspendisse","suspense","suspenseful","suspension","suspensive","suspensor","suspicion","suspicious","suspiciousness","susquehanna","sussex","sustain","sustainability","sustainable","sustainer","sustainment","sustenance","susy","sutherlan","sutherland","sutler","sutton","suture","suv","suva","suwanee","suzann","suzanna","suzanne","suzerain","suzerainty","suzette","suzhou","suzi","suzie","suzuki","suzy","sv","svalbard","svc","svelte","sven","svend","svengali","sverdlovsk","svetlana","svg","svm","svn","sw","swab","swabbed","swabbing","swabby","swabian","swaddle","swag","swagged","swagger","swagging","swahili","swain","swak","swallow","swallower","swallowtail","swam","swami","swamp","swamper","swampland","swampy","swan","swanee","swank","swankily","swankiness","swanky","swanlike","swanned","swanning","swansea","swanson","swap","swappable","swapped","swapper","swapping","swaps","sward","swarm","swarmer","swart","swarthiness","swarthmore","swarthy","swartz","swash","swashbuckler","swashbuckling","swastika","swat","swatch","swath","swathe","swather","swaths","swatted","swatter","swatting","sway","swayback","swayer","swazi","swaziland","swear","swearer","swearword","sweat","sweatband","sweater","sweatily","sweatiness","sweatpants","sweatshirt","sweatshop","sweaty","swed","swede","sweden","swedenborg","swedish","sweeney","sweep","sweeper","sweeping","sweepingness","sweeps","sweepstake","sweepstakes","sweet","sweetbread","sweetbrier","sweetcorn","sweeten","sweetened","sweetener","sweetening","sweetheart","sweetie","sweeting","sweetish","sweetmeat","sweetness","sweetshop","swell","swellhead","swelling","swelter","sweltering","swen","swenson","swept","sweptback","swerve","swerving","swf","swi","swift","swifter","swiftness","swig","swigged","swigging","swill","swim","swimmer","swimming","swimsuit","swinburne","swindle","swindler","swine","swineherd","swing","swingeing","swinger","swinging","swingutilities","swingworker","swingy","swinish","swinishness","swink","swipe","swiper","swiperefreshlayout","swiping","swirl","swirling","swirly","swish","swishy","swiss","switch","switchback","switchblade","switchboard","switched","switcher","switches","switchgear","switching","switchman","switchmap","switchmen","switchover","switz","switzer","switzerland","swivel","swizzle","swob","swollen","swoon","swooning","swoop","swoosh","swop","sword","swordfish","swordplay","swordplayer","swordsman","swordsmanship","swordsmen","swordtail","swore","sworn","swot","swt","swum","swung","sx","sy","sybarite","sybaritic","sybase","sybil","sybila","sybilla","sybille","sybyl","sycamore","sycophancy","sycophant","sycophantic","sycophantically","syd","sydel","sydelle","sydney","sykes","sylas","syllabi","syllabic","syllabicate","syllabication","syllabicity","syllabification","syllabify","syllable","syllabub","syllabus","syllabusss","syllogism","syllogistic","sylow","sylph","sylphic","sylphlike","sylphs","sylvan","sylvania","sylvester","sylvia","sylvie","sym","syman","symbiont","symbioses","symbiosis","symbiotic","symbol","symbolic","symbolical","symbolics","symbolism","symbolist","symbolization","symbolize","symbolized","symbolizes","symbols","symfony","symington","symlink","symlinks","symmetric","symmetrical","symmetrically","symmetricalness","symmetrization","symmetrizing","symmetry","symon","sympathetic","sympathetically","sympathize","sympathized","sympathizer","sympathizing","sympathy","symphonic","symphonists","symphony","symposium","symptom","symptomatic","symptomatically","symptomatology","symptoms","sympy","syn","synagogal","synagogue","synapse","synaptic","sync","synced","synchronism","synchronization","synchronize","synchronized","synchronizer","synchronous","synchronously","synchronousness","synchrony","synchrotron","syncing","syncopate","syncopation","syncope","syndic","syndicalist","syndicate","syndrome","synergism","synergistic","synergy","synfuel","synge","synod","synonym","synonymic","synonymous","synonyms","synonymy","synopses","synopsis","synopsized","synopsizes","synopsizing","synoptic","syntactic","syntactical","syntactically","syntactics","syntax","syntaxerror","syntheses","synthesis","synthesize","synthesized","synthesizer","synthesizes","synthetic","synthetically","syphilis","syphilitic","syphilized","syphilizing","syracuse","syria","syriac","syrian","syringe","syrup","syrupy","sys","sysadmin","syscall","syscap","sysdate","syslog","system","systematic","systematical","systematics","systematization","systematize","systematized","systematizer","systematizing","systemctl","systemd","systemic","systemically","systemization","systemjs","systems","systole","systolic","syswow","sz","szilard","szymborska","t","ta","tab","tabasco","tabatha","tabb","tabbar","tabbarcontroller","tabbatha","tabbed","tabbi","tabbie","tabbing","tabbitha","tabbouleh","tabboulehs","tabby","tabcontent","tabcontrol","taber","tabernacle","tabhost","tabid","tabina","tabindex","tabitem","tabitha","tabla","tablayout","table","tablea","tableau","tableaux","tableb","tablecell","tablecloth","tablecloths","tablecolumn","tabledata","tableid","tableland","tablelayout","tablemodel","tablename","tablerow","tables","tablesorter","tablespace","tablespoon","tablespoonful","tablet","tabletop","tablets","tableview","tableviewcontroller","tableware","tabling","tabloid","taboo","tabor","tabpanel","tabriz","tabs","tabula","tabular","tabulate","tabulation","tabulator","tabview","tac","tachometer","tachometry","tachycardia","tachyon","tacit","tacitness","taciturn","taciturnity","tacitus","tack","tacker","tackiness","tackle","tackler","tackling","tacky","taco","tacoma","tact","tactful","tactfulness","tactic","tactical","tactician","tactile","tactility","tactless","tactlessness","tactual","tad","tadd","taddeo","taddeusz","tadeas","tadeo","tades","tadio","tadpole","tadzhikistan","tadzhikstan","taegu","taejon","taffeta","taffrail","taffy","taft","tag","tagalog","tagged","tagger","tagging","tagid","taglib","tagname","tagore","tags","tagus","tahiti","tahitian","tahoe","tahoma","taichung","taiga","tail","tailback","tailcoat","tailer","tailgate","tailgater","tailing","tailless","taillessness","taillight","tailor","tailpipe","tailspin","tailwind","tainan","taine","taint","tainted","taipei","tait","taite","taiwan","taiwanese","taiyuan","tajikistan","take","takeaway","taken","takeoff","takeout","takeover","taker","takes","taking","taklamakan","talbert","talbot","talc","talcked","talcking","talcum","tale","talebearer","talent","talented","talentless","taler","tali","talia","taliesin","talion","talisman","talismanic","talk","talkative","talkativeness","talked","talker","talkie","talking","talks","talky","tall","talladega","tallahassee","tallahatchie","tallahoosa","tallboy","tallchief","talley","talleyrand","tallia","tallie","tallinn","tallish","tallness","tallou","tallow","tallowy","tallulah","tally","tallyho","talmud","talmudic","talmudist","talon","talus","talya","talyah","tam","tamable","tamale","tamar","tamara","tamarack","tamarah","tamarind","tamarra","tamas","tambourine","tame","tamed","tameka","tameness","tamera","tamerlane","tami","tamika","tamiko","tamil","tamma","tammany","tammara","tammi","tammie","tammy","tamp","tampa","tampax","tamper","tampered","tamperer","tampon","tamqrah","tamra","tan","tana","tanager","tanaka","tananarive","tanbark","tancred","tandem","tandi","tandie","tandoori","tandy","taney","tang","tanganyika","tangelo","tangency","tangent","tangential","tangerine","tangibility","tangible","tangibleness","tangibly","tangier","tangle","tango","tangshan","tangy","tanhya","tani","tania","tanisha","tanitansy","tank","tankard","tanker","tankful","tann","tanned","tannenbaum","tanner","tannery","tannest","tanney","tannhuser","tannie","tannin","tanning","tanny","tansy","tantalization","tantalize","tantalized","tantalizing","tantalizingly","tantalizingness","tantalum","tantalus","tantamount","tantra","tantrum","tanya","tanzania","tanzanian","tao","taoism","taoist","tap","tapdance","tape","taped","tapeline","taper","taperer","tapestry","tapeworm","tapioca","tapir","tapped","tapper","tappet","tapping","taproom","taproot","taps","tar","tara","tarah","tarantella","tarantula","tarawa","tarazed","tarbell","tardily","tardiness","tardy","tare","target","targeted","targetentity","targetframework","targeting","targetname","targetnamespace","targetpath","targetproperty","targets","targetsdkversion","targettype","tariff","tarim","tarkington","tarmac","tarmacked","tarmacking","tarn","tarnish","tarnished","taro","tarot","tarp","tarpapered","tarpaulin","tarpon","tarra","tarragon","tarrah","tarrance","tarred","tarring","tarry","tarrytown","tarsal","tarsi","tarsus","tart","tartan","tartar","tartaric","tartary","tartness","tartuffe","taryn","tarzan","tasha","tashkent","tasia","task","taskawaiter","taskbar","tasked","taskgraph","taskid","tasklist","taskmaster","taskmistress","taskname","tasks","taskthread","tasmania","tasmanian","tass","tassel","tassellings","taste","tasted","tasteful","tastefulness","tasteless","tastelessness","taster","tastes","tastily","tastiness","tasting","tasty","tat","tatami","tatar","tate","tater","tatiana","tatiania","tatted","tatter","tatterdemalion","tattered","tatting","tattle","tattler","tattletale","tattoo","tattooer","tattooist","tatty","tatum","tau","taught","taunt","taunter","taunting","taupe","taurus","taut","tauten","tautness","tautological","tautologous","tautology","tavern","taverner","tawdrily","tawdriness","tawdry","tawney","tawny","tawnya","tawsha","tax","taxable","taxably","taxation","taxed","taxes","taxi","taxicab","taxidermist","taxidermy","taximeter","taxing","taxiway","taxonomic","taxonomically","taxonomist","taxonomy","taxpayer","taxpaying","taylor","tb","tba","tbilisi","tbl","tbn","tbody","tbs","tbsp","tc","tchaikovsky","tchar","tcl","tcp","tcpclient","tcpdf","tcs","td","tdd","tds","te","tea","teabag","teacake","teacart","teach","teachable","teacher","teachers","teaching","teacloth","teacup","teacupful","teador","teahouse","teak","teakettle","teakwood","teal","tealeaves","team","teamcity","teamid","teammate","teamname","teams","teamster","teamwork","teapot","tear","tearaway","teardown","teardrop","tearer","tearful","tearfulness","teargas","teargassed","teargassing","tearjerker","tearoom","teary","teas","teasdale","tease","teasel","teaser","teashop","teasing","teaspoon","teaspoonful","teat","teatime","tech","techcrunch","technet","technetium","technetwork","technical","technicality","technically","technicalness","technician","technicolor","technion","technique","techniques","technocracy","technocrat","technocratic","technological","technologies","technologist","technology","technophobia","technophobic","technotes","techs","tectonic","tectonically","tectonics","tecumseh","ted","tedd","tedda","teddi","teddie","teddy","tedi","tedie","tedious","tediousness","tedium","tedman","tedmund","tedra","tee","teeing","teem","teeming","teemingness","teen","teena","teenage","teenager","teeny","teenybopper","teepee","teeshirt","teeter","teeth","teethe","teether","teething","teethmarks","teetotal","teetotaler","teetotalism","tefl","teflon","tegucigalpa","teheran","tehran","teirtza","tektite","tektronix","tel","telecast","telecommunicate","telecommunication","telecommute","telecoms","teleconference","teledyne","telefunken","telegenic","telegram","telegrammed","telegramming","telegraph","telegraphic","telegraphically","telegraphist","telegraphs","telegraphy","telekineses","telekinesis","telekinetic","telemachus","telemann","telemarketer","telemarketing","telemeter","telemetric","telemetry","teleological","teleology","telepathic","telepathically","telepathy","telephone","telephonic","telephonist","telephony","telephonymanager","telephoto","telephotography","teleprinter","teleprocessing","teleprompter","telerik","telescope","telescopic","telescopically","teletext","telethon","teletype","teletypewriter","televangelism","televangelist","televise","television","televisor","televisual","telex","tell","teller","telling","tells","telltale","tellurium","tellus","telly","telnet","telomeric","telugu","tem","temblor","temerity","temp","temparray","tempdata","tempdb","tempe","temper","tempera","temperament","temperamental","temperance","temperate","temperately","temperateness","temperature","tempered","tempering","tempers","tempest","tempestuous","tempestuousness","tempfile","template","templatebinding","templated","templatefield","templates","templateurl","templating","temple","templeman","templeton","templist","tempo","tempoes","tempor","temporal","temporarily","temporariness","temporarinesses","temporary","temporize","temporizer","temporizing","temporizings","temps","tempt","temptable","temptation","tempted","tempter","tempting","temptress","tempura","tempuri","tempus","ten","tenabilities","tenability","tenable","tenableness","tenably","tenacious","tenaciousness","tenacity","tenancy","tenant","tenanted","tenantid","tenantry","tench","tend","tended","tendency","tendentious","tendentiousness","tender","tendered","tenderer","tenderest","tenderfoot","tenderhearted","tenderheartedness","tendering","tenderize","tenderizer","tenderloin","tenderly","tenderness","tending","tendinitis","tendon","tendril","tends","tenebrous","tenement","tenet","tenex","tenfold","tenn","tenneco","tenner","tennessean","tennessee","tenney","tennis","tennyson","tenochtitlan","tenon","tenor","tenpin","tens","tense","tenseness","tensile","tension","tensional","tensionless","tensions","tensity","tensor","tensorflow","tensorial","tensors","tenspot","tent","tentacle","tentative","tentativeness","tented","tenter","tenterhook","tenth","tenths","tenting","tentity","tenuity","tenuous","tenuousness","tenure","teodoor","teodor","teodora","teodorico","teodoro","tepee","tepid","tepidity","tepidness","tequila","tera","teradata","teratogenic","teratology","terbium","tercel","tercentenary","tercentennial","terence","terencio","teresa","terese","tereshkova","teresina","teresita","teressa","teri","teriann","terkel","term","termagant","termcap","termer","terminable","terminableness","terminal","terminals","terminate","terminated","terminates","terminating","termination","terminative","terminator","termini","terminological","terminology","terminus","termite","terms","tern","ternary","terpsichore","terpsichorean","terr","terra","terrace","terracing","terracotta","terraform","terrain","terramycin","terran","terrance","terrapin","terrarium","terrazzo","terre","terrel","terrell","terrence","terrestrial","terri","terrible","terribleness","terribly","terrie","terrier","terrific","terrifically","terrify","terrifying","terrijo","terrill","terrine","territorial","territoriality","territory","terror","terrorism","terrorist","terroristic","terrorize","terrorized","terrorizer","terry","terrycloth","terrye","terse","terseness","tersina","tertian","tertiary","terza","tesl","tesla","tesol","tess","tessa","tessellate","tessellation","tesseract","tesseral","tessi","tessie","tessy","test","testability","testable","testament","testamentary","testapp","testate","testator","testatrices","testatrix","testbed","testcard","testcase","testclass","testcompile","testcontroller","testdata","testdb","teste","tested","tester","testers","testes","testfile","testicle","testicular","testid","testifier","testify","testily","testimonial","testimony","testiness","testing","testis","testlist","testmethod","testname","testng","testobject","testosterone","testrunner","tests","testservice","teststring","testsuite","testtable","testuser","testy","tetanus","tetchy","tether","tethered","tethys","tetons","tetra","tetrachloride","tetracycline","tetrafluoride","tetragonal","tetrahalides","tetrahedral","tetrahedron","tetrameron","tetrameter","tetrasodium","tetravalent","teuton","teutonic","tex","texaco","texan","texas","texcoord","text","textalign","textalignment","textappearance","textappearancemedium","textarea","textblock","textbook","textbox","textboxes","textboxfor","textchanged","textcolor","textcontent","textedit","textelement","textfield","textfieldexpression","textfields","textfile","textile","textinput","textinputlayout","textlabel","textmate","texto","textron","texts","textsize","textstatus","textstyle","texttospeech","textual","textural","texture","textured","textures","textutils","textview","textviews","textwatcher","textwrapping","textwriter","tf","tfoot","tform","tfs","tg","tgt","tgz","th","thacher","thackeray","thad","thaddeus","thaddus","thadeus","thai","thailand","thain","thaine","thalami","thalamus","thales","thalia","thalidomide","thallium","thallophyte","thames","than","thane","thanh","thank","thanker","thankful","thankfuller","thankfullest","thankfulness","thankless","thanklessness","thanks","thanksgiving","thankyou","thant","thanx","thar","that","thatch","thatcher","thatching","thats","thaumaturge","thaw","thaxter","thayer","thayne","thc","the","thea","thead","theadora","theano","theater","theatergoer","theatergoing","theatric","theatrical","theatricality","theatrics","thebault","thebes","theda","thedate","thedric","thedrick","thee","theeing","theform","theft","theiler","their","theirs","theism","theist","theistic","thekla","thelist","thelma","them","themas","thematic","thematically","thematics","theme","themeoverlay","themeresource","themes","themistocles","themselves","then","thence","thenceforth","thenceforward","thenreturn","theo","theobald","theocracy","theocratic","theocritus","theodolite","theodor","theodora","theodore","theodoric","theodosia","theodosian","theodosius","theologian","theological","theologists","theology","theorem","theoretic","theoretical","theoretically","theoretician","theoretics","theories","theorist","theorization","theorize","theory","theosophic","theosophical","theosophist","theosophy","therapeutic","therapeutically","therapeutics","therapist","therapy","theravada","there","thereabout","thereafter","thereat","thereby","therefor","therefore","therefrom","therein","thereof","thereon","theres","theresa","therese","theresina","theresita","theressa","thereto","theretofore","thereunder","thereunto","thereupon","therewith","therine","therm","thermal","thermionic","thermionics","thermistor","thermo","thermocouple","thermodynamic","thermodynamical","thermodynamics","thermoelastic","thermoelectric","thermoformed","thermoforming","thermogravimetric","thermoluminescence","thermometer","thermometric","thermometry","thermonuclear","thermopile","thermoplastic","thermopower","thermos","thermosetting","thermostable","thermostat","thermostatic","thermostatically","thermostatics","thermostatted","thermostatting","theron","thesauri","thesaurus","these","theseus","thesis","thespian","thespis","thessalonian","thessalonki","thessaly","theta","thevalue","thew","they","thia","thiamine","thibaud","thibaut","thick","thicken","thickener","thickening","thicket","thickheaded","thickish","thickness","thickset","thief","thiensville","thieu","thieve","thievery","thievish","thievishness","thigh","thighbone","thighs","thimble","thimbleful","thimbu","thimphu","thin","thine","thing","thingamabob","thingamajig","things","thingy","think","thinkable","thinkableness","thinkably","thinker","thinking","thinkingly","thinks","thinned","thinner","thinness","thinnest","thinning","thinnish","thiocyanate","thiouracil","third","thirst","thirster","thirstily","thirstiness","thirsty","thirteen","thirteenths","thirtieths","thirty","this","thiscall","thistle","thistledown","thisworkbook","thither","tho","thole","thom","thoma","thomas","thomasa","thomasin","thomasina","thomasine","thomism","thomistic","thompson","thomson","thong","thor","thoracic","thorax","thorazine","thoreau","thoriate","thorin","thorium","thorn","thornburg","thorndike","thornie","thorniness","thornton","thorny","thorough","thoroughbred","thoroughfare","thoroughgoing","thoroughly","thoroughness","thorpe","thorstein","thorsten","thorvald","those","thoth","thou","though","thought","thoughtful","thoughtfully","thoughtfulness","thoughtless","thoughtlessness","thoughts","thousand","thousandfold","thousands","thousandths","thr","thrace","thracian","thrall","thralldom","thrash","thrasher","thrashing","thread","threadbare","threaded","threader","threadid","threadidx","threading","threadlike","threadlocal","threadpool","threadpoolexecutor","threads","threadstart","thready","threat","threaten","threatener","threatening","three","threefold","threepence","threepenny","threescore","threesome","threeten","threnody","thresh","thresher","threshold","threw","thrice","thrift","thriftily","thriftiness","thriftless","thrifty","thrill","thriller","thrilling","thrive","thriver","thriving","throat","throatily","throatiness","throaty","throb","throbbed","throbbing","throe","throeing","thrombi","thromboses","thrombosis","thrombotic","thrombus","throne","throneberry","throng","throttle","throttler","through","throughout","throughput","throughway","throw","throwable","throwaway","throwback","thrower","throwing","thrown","throwout","throws","thru","thrum","thrummed","thrumming","thrush","thrust","thruster","thruway","thu","thucydides","thud","thudded","thudding","thug","thuggee","thuggery","thuggish","thule","thulium","thumb","thumbnail","thumbnails","thumbs","thumbscrew","thumbtack","thump","thunder","thunderbird","thunderbolt","thunderclap","thundercloud","thunderer","thunderhead","thundering","thunderous","thundershower","thunderstorm","thunderstruck","thundery","thunk","thur","thurber","thurman","thursday","thurstan","thurston","thus","thwack","thwacker","thwart","thwarter","thx","thy","thyme","thymeleaf","thymine","thymus","thyratron","thyristor","thyroglobulin","thyroid","thyroidal","thyronine","thyrotoxic","thyrotrophic","thyrotrophin","thyrotropic","thyrotropin","thyroxine","thyself","ti","tia","tianjin","tiara","tibble","tiber","tiberius","tibet","tibetan","tibia","tibiae","tibial","tibold","tiburon","tic","tick","ticker","ticket","tickets","ticking","tickle","tickler","ticklish","ticklishness","ticks","ticktacktoe","ticktock","ticonderoga","tid","tidal","tidbit","tiddlywinks","tide","tideland","tidewater","tideway","tidily","tidiness","tidy","tidying","tidyr","tidyverse","tie","tieback","tiebold","tiebout","tiebreaker","tieck","tied","tiena","tienanmen","tientsin","tier","tierney","tiertza","ties","tif","tiff","tiffani","tiffanie","tiffany","tiffi","tiffie","tiffy","tiger","tigerish","tight","tighten","tightener","tightfisted","tightly","tightness","tightrope","tightwad","tigress","tigris","tijuana","tike","til","tilda","tilde","tildi","tildie","tildy","tile","tiled","tiler","tiles","tiling","till","tillable","tillage","tiller","tillich","tillie","tillman","tilly","tilt","tilth","tim","timber","timbering","timberland","timberline","timbre","timbrel","timbuktu","time","timebase","timed","timedelta","timediff","timeframe","timeinterval","timeit","timekeeper","timekeeping","timeless","timelessness","timeline","timeliness","timely","timeout","timeouts","timepicker","timepiece","timer","timers","timertask","times","timescale","timeseries","timeserver","timeserving","timeshare","timesheet","timespan","timestamp","timestamped","timestamps","timetable","timeunit","timeworn","timex","timezone","timezones","timi","timid","timidity","timidness","timing","timings","timmi","timmie","timmy","timofei","timon","timorous","timorousness","timoteo","timothea","timothee","timotheus","timothy","timpani","timpanist","timur","tin","tina","tincidunt","tincture","tinder","tinderbox","tine","tinfoil","ting","tinge","tingeing","tingle","tingling","tingly","tinily","tininess","tinker","tinkertoy","tinkle","tinkling","tinkly","tinned","tinner","tinnily","tinniness","tinning","tinnitus","tinny","tinplate","tinsel","tinseltown","tinsmith","tinsmiths","tint","tintcolor","tinter","tintinnabulation","tintoretto","tintype","tinware","tiny","tinyint","tinymce","tinypic","tioga","tip","tiphani","tiphanie","tiphany","tipi","tipo","tipoff","tippecanoe","tipped","tipper","tipperary","tippet","tipping","tipple","tippler","tippy","tips","tipsily","tipsiness","tipster","tipsy","tiptoe","tiptoeing","tiptop","tirade","tirana","tirane","tire","tired","tireder","tiredest","tiredness","tireless","tirelessness","tires","tiresias","tiresome","tiresomeness","tiring","tiro","tirol","tirolean","tirrell","tis","tish","tisha","tissue","tit","titan","titanate","titania","titanic","titanically","titanium","titbit","titel","titer","tithe","tither","tithing","titian","titicaca","titillate","titillating","titillation","titivate","titivation","title","titlebar","titled","titleholder","titlelabel","titles","titling","titmice","titmouse","tito","titrate","titration","titted","titter","titting","tittle","titular","titulo","titus","tizzy","tj","tk","tkey","tkinter","tko","tl","tlaloc","tlc","tld","tldr","tlingit","tls","tlsv","tm","tmodel","tmp","tmpdir","tmpl","tmux","tn","tnpk","tns","tnt","to","toad","toadstool","toady","toadyism","toarray","toast","toaster","toastmaster","toastmistress","toasty","tobacco","tobacconist","tobaggon","tobago","tobase","tobe","tobey","tobi","tobiah","tobias","tobie","tobin","tobit","tobject","toboggan","tobottomof","toby","tobye","tobytearray","toc","tocantins","toccata","tochararray","tocqueville","tocsin","tod","todataurl","todate","todatetime","today","todays","todd","toddie","toddle","toddler","toddy","todictionary","todo","todolist","todos","todouble","toe","toecap","toeclip","toefl","toehold","toeing","toenail","toendof","toequal","toffee","tofixed","tofu","tog","toga","toge","together","togetherness","togged","togging","toggle","togglebutton","toggleclass","toggled","toggler","toggles","toggling","togo","togolese","toiboid","toil","toilet","toiletry","toilette","toilsome","toilsomeness","toinette","toint","toitem","tojo","tojson","tok","tokamak","tokay","toke","token","tokenism","tokenize","tokenized","tokenizer","tokens","tokugawa","tokyo","tokyoite","toland","told","tole","toledo","toleftof","tolerability","tolerable","tolerably","tolerance","tolerant","tolerate","toleration","tolist","tolkien","toll","tollbooth","tollbooths","tolley","tollgate","tollhouse","tollway","tolower","tolowercase","tolstoy","toluene","tolyatti","tom","toma","tomahawk","tomasina","tomasine","tomaso","tomato","tomatoes","tomb","tombaugh","tombigbee","tomblike","tombola","tomboy","tomboyish","tombstone","tomcat","tomcatted","tomcatting","tome","tomfool","tomfoolery","tomi","tomkin","tomlin","tommed","tommi","tommie","tomming","tommy","tomographic","tomography","tomorrow","tompkins","tomsk","tomtit","ton","tonal","tonality","tone","tonearm","toneless","tonelessness","toner","tong","tonga","tongan","tongue","tongueless","tonguing","toni","tonia","tonic","tonie","tonight","tonio","tonk","tonnage","tonne","tonnie","tons","tonsil","tonsillectomy","tonsillitis","tonsorial","tonsure","tonto","tony","tonya","tonye","too","toodle","took","tool","toolbar","toolbox","toolchain","toolchains","tooler","tooling","toolkit","toolkits","toolmake","toolmaker","toolmaking","tools","toolset","toolsmith","tooltip","tooltips","toomey","toot","tooter","tooth","toothache","toothbrush","toothily","toothless","toothmarks","toothpaste","toothpick","tooths","toothsome","toothy","tootle","toots","tootsie","tootsy","top","topaz","topbar","topcoat","topdressing","topeka","toper","topflight","topgallant","topiary","topic","topical","topicality","topics","topknot","topleft","topless","toplevel","topmast","topmost","topnav","topnotch","topocentric","topographer","topographic","topographical","topography","topological","topologist","topology","topped","topper","topping","topple","topsail","topside","topsoil","topspin","topsy","toque","tor","torah","torahs","torch","torchbearer","torchlight","tore","toreador","torey","tori","torie","torightof","torin","torment","tormenting","tormentor","torn","tornado","tornadoes","toroid","toroidal","toronto","torpedo","torpedoes","torpid","torpidity","torpor","torque","torquemada","torr","torrance","torre","torrence","torrens","torrent","torrential","torrey","torricelli","torrid","torridity","torridness","torrie","torrin","torry","tors","torsi","torsion","torsional","torsions","torso","tort","torte","tortellini","torten","tortilla","tortoise","tortoiseshell","tortoisesvn","tortola","tortoni","tortor","tortuga","tortuous","tortuousness","torture","torturous","torus","tory","tos","tosca","toscanini","toshiba","toss","tossup","tostartof","tostring","tot","totable","total","totalamount","totalcount","totaler","totalistic","totalitarian","totalitarianism","totality","totalizator","totalizing","totally","totalprice","totals","totaltime","tote","totem","totemic","toter","toting","toto","totopof","totted","totter","totterer","tottering","totting","toucan","touch","touchable","touchableopacity","touchdown","touched","toucher","touches","touchesbegan","touchily","touchiness","touching","touchline","touchscreen","touchstart","touchstone","touchy","tough","toughen","toughener","toughness","toughs","toulouse","toupee","toupper","touppercase","tour","toured","tourer","touring","tourism","tourist","touristic","touristy","tourmaline","tournament","tourney","tourniquet","tours","tousle","tout","touter","tova","tove","tow","toward","towardliness","towardly","towards","towboat","towel","towelette","toweling","tower","towering","towhead","towhee","towline","town","towner","townes","towney","townhouse","townie","townley","townsend","townsfolk","township","townsman","townsmen","townspeople","townswoman","townswomen","towny","towpath","towpaths","towrope","towsley","toxemia","toxic","toxicity","toxicological","toxicologist","toxicology","toxin","toy","toyer","toymaker","toynbee","toyoda","toyota","toys","toyshop","tp","tpl","tq","tr","trac","trace","traceability","traceable","traceableness","traceback","traced","tracee","traceless","tracepoint","tracer","tracery","traces","tracey","trachea","tracheae","tracheal","tracheotomy","traci","tracie","tracing","track","trackage","trackball","trackbed","tracked","tracker","tracking","trackless","tracks","tracksuit","tract","tractability","tractable","tractably","tractarians","traction","tractive","tractor","tracts","tracy","trade","trademark","tradeoff","trader","trades","tradesman","tradesmen","tradespeople","tradespersons","tradeswoman","tradeswomen","trading","tradition","traditional","traditionalism","traditionalist","traditionalistic","traditionalized","traditionally","traduce","traefik","trafalgar","traffic","trafficked","trafficker","trafficking","tragedian","tragedienne","tragedy","tragic","tragically","tragicomedy","tragicomic","trail","trailblazer","trailblazing","trailer","trailing","trails","trailside","train","trainable","trained","trainee","traineeships","trainer","training","trainman","trainmen","trains","trainspotter","traipse","trait","traitor","traitorous","traits","trajan","trajectory","tram","trammed","trammel","trammeled","tramming","tramp","trample","trampler","trampoline","tramway","tran","trance","tranche","tranquil","tranquility","tranquilize","tranquilized","tranquilizer","tranquilizes","tranquilizing","tranquillize","tranquillizer","tranquilness","trans","transact","transaction","transactional","transactionid","transactionmanager","transactions","transactionscope","transactor","transalpine","transaminase","transatlantic","transcaucasia","transceiver","transcend","transcendence","transcendent","transcendental","transcendentalism","transcendentalist","transclude","transconductance","transcontinental","transcribe","transcriber","transcript","transcription","transcultural","transducer","transduction","transect","transept","transfer","transferability","transferal","transferee","transference","transferor","transferral","transferred","transferrer","transferring","transfers","transfiguration","transfigure","transfinite","transfix","transform","transformation","transformational","transformations","transformed","transformer","transformers","transforming","transforms","transfuse","transfusion","transgress","transgression","transgressor","transience","transiency","transient","transistor","transistorize","transit","transite","transition","transitional","transitions","transitive","transitiveness","transitivenesses","transitivity","transitoriness","transitory","transl","translatability","translatable","translate","translated","translates","translatesautoresizingmaskintoconstraints","translatex","translatey","translatez","translating","translation","translational","translations","translator","transliterate","translucence","translucency","translucent","transmigrate","transmissible","transmission","transmissive","transmit","transmittable","transmittal","transmittance","transmitted","transmitter","transmitting","transmogrification","transmogrify","transmutation","transmute","transnational","transoceanic","transom","transonic","transpacific","transparency","transparent","transparentness","transpiration","transpire","transplant","transplantation","transpolar","transponder","transport","transportability","transportable","transportation","transports","transpose","transposed","transposition","transputer","transsexual","transsexualism","transship","transshipment","transshipped","transshipping","transubstantiation","transvaal","transversal","transverse","transvestism","transvestite","transvestitism","transylvania","trap","trapdoor","trapeze","trapezium","trapezoid","trapezoidal","trappable","trapped","trapper","trapping","trappist","trapshooting","trash","trashcan","trashiness","trashy","trastevere","trauma","traumatic","traumatically","traumatize","travail","travel","traveled","traveler","traveling","travelog","travelogue","traver","traversal","traverse","traverser","traversing","travertine","travesty","travis","travus","trawl","trawler","tray","treacherous","treacherousness","treachery","treacle","treacly","tread","treader","treadle","treadmill","treadwell","treas","treason","treasonous","treasure","treasurer","treasurership","treasury","treat","treatable","treated","treater","treating","treatise","treatment","treats","treaty","treble","treblinka","tree","treeing","treeless","treelike","treemap","treenode","trees","treeset","treetop","treeview","treeviewitem","trefoil","trefor","trek","trekked","trekker","trekkie","trekking","trellis","tremain","tremaine","trematode","tremayne","tremble","trembler","trembles","trembly","tremendous","tremendousness","tremolo","tremor","tremulous","tremulousness","trench","trenchancy","trenchant","trencher","trencherman","trenchermen","trend","trendily","trendiness","trends","trendy","trenna","trent","trenton","trepanned","trepidation","tresa","trescha","trespass","trespasser","tress","tressa","tressed","tresses","tressing","trestle","tresult","trev","trevar","trevelyan","trever","trevino","trevor","trey","tri","triable","triableness","triad","triadic","triage","trial","trialization","trialled","trialling","trials","triamcinolone","triangle","triangles","triangulable","triangular","triangularization","triangulate","triangulation","triangulum","trianon","triassic","triathlon","triatomic","tribal","tribalism","tribe","tribesman","tribesmen","tribeswoman","tribeswomen","tribulate","tribulation","tribunal","tribune","tributary","tribute","trice","tricentennial","triceps","triceratops","trichina","trichinae","trichinoses","trichinosis","trichloroacetic","trichloroethane","trichotomy","trichromatic","tricia","trick","trickery","trickily","trickiness","trickle","tricks","trickster","tricky","tricolor","tricycle","trident","tridiagonal","trie","tried","triennial","trier","tries","trieste","triffid","trifle","trifler","trifluoride","trifocals","trig","trigged","trigger","triggered","triggering","triggers","triggest","trigging","triglyceride","trigonal","trigonometric","trigonometrical","trigonometry","trigram","trihedral","trike","trilateral","trilby","trilingual","trill","trillion","trillionth","trillionths","trillium","trilobite","trilogy","trim","trimaran","trimble","trimer","trimester","trimmed","trimmer","trimmest","trimming","trimness","trimodal","trimonthly","trimurti","trina","trinidad","trinitarian","trinitrotoluene","trinity","trinket","trinketer","trio","triode","trioxide","trip","tripartite","tripartition","tripe","triphenylarsine","triphenylphosphine","triphenylstibine","triphosphopyridine","triple","triplet","triplex","triplicate","triplication","triply","tripod","tripodal","tripoli","tripolyphosphate","tripos","tripp","trippe","tripped","tripper","tripping","trips","triptych","triptychs","tripwire","trireme","tris","trisect","trisection","trisector","trish","trisha","trisodium","trista","tristam","tristan","tristate","tristique","trisyllable","trite","tritely","triteness","tritium","triton","triumph","triumphal","triumphalism","triumphant","triumphs","triumvir","triumvirate","triune","trivalent","trivet","trivia","trivial","triviality","trivialization","trivialize","trivially","trivium","trix","trixi","trixie","trixy","trobriand","trochaic","trochee","trod","trodden","trodes","troff","troglodyte","troika","trojan","troll","trolled","trolley","trolleybus","trolling","trollish","trollop","trollope","trolly","trombone","trombonist","tromp","trondheim","troop","trooper","troopship","trope","tropez","trophic","trophy","tropic","tropical","tropism","tropocollagen","troposphere","tropospheric","trot","troth","troths","trotsky","trotted","trotter","trotting","troubadour","trouble","troubled","troublemaker","troubler","troubles","troubleshoot","troubleshooter","troubleshooting","troubleshot","troublesome","troublesomeness","trough","troughs","trounce","trouncer","troupe","trouper","trouser","trousseau","trousseaux","trout","troutman","trove","trow","trowel","troweler","troy","troyes","trstram","truancy","truant","truce","truck","truckee","trucker","trucking","truckle","truckload","truculence","truculent","truda","trude","trudeau","trudey","trudge","trudi","trudie","trudy","true","truelove","trueman","trueness","truer","truest","truetype","truffle","truism","trujillo","trula","truly","trumaine","truman","trumann","trumbull","trump","trumpery","trumpet","trumpeter","trunc","truncate","truncated","truncation","truncheon","trundle","trundler","trunk","trunnion","truss","trusser","trussing","trust","trusted","trustee","trusteeing","trusteeship","truster","trustful","trustfulness","trustiness","trusting","trusts","truststore","trustworthier","trustworthiest","trustworthiness","trustworthy","trusty","truth","truthful","truthfulness","truths","truthy","trw","trx","try","tryed","trygetvalue","trying","tryout","tryparse","trypsin","tryst","ts","tsa","tsarevich","tsarina","tsarism","tsarist","tsc","tsconfig","tsetse","tsimshian","tsiolkovsky","tsitsihar","tslint","tsource","tsp","tspan","tsql","tst","tsunami","tsunematsu","tsv","tswana","tsx","tt","ttf","ttk","ttl","tts","ttt","tty","ttys","tu","tuamotu","tuareg","tub","tuba","tubae","tubal","tubbed","tubbing","tubby","tube","tubeless","tuber","tubercle","tubercular","tuberculin","tuberculoses","tuberculosis","tuberculous","tuberose","tuberous","tubing","tubman","tubular","tubule","tuck","tucker","tuckie","tucky","tucson","tucuman","tude","tudor","tue","tuesday","tuft","tufter","tufting","tug","tugboat","tugged","tugging","tuition","tulane","tularemia","tulip","tull","tulle","tulley","tully","tulsa","tum","tumble","tumbledown","tumbler","tumbleweed","tumblr","tumbrel","tumescence","tumescent","tumid","tumidity","tummy","tumor","tumorous","tums","tumult","tumultuous","tumultuousness","tumulus","tun","tuna","tunable","tunableness","tundra","tune","tuned","tuneful","tunefulness","tuneless","tuner","tuneup","tung","tungstate","tungsten","tungus","tunguska","tunic","tuning","tunis","tunisia","tunisian","tunned","tunnel","tunneler","tunning","tunny","tup","tupelo","tupi","tuple","tuples","tuppence","tupperware","tupungato","turban","turbid","turbidity","turbinate","turbine","turbo","turbocharged","turbocharger","turbofan","turbojet","turbolinks","turboprop","turbot","turbulence","turbulent","turd","tureen","turf","turfy","turgenev","turgid","turgidity","turgidness","turin","turing","turk","turkestan","turkey","turkic","turkish","turkmenistan","turmeric","turmoil","turn","turnabout","turnaround","turnbuckle","turncoat","turned","turner","turning","turnip","turnkey","turnoff","turnout","turnover","turnpike","turnround","turns","turnstile","turnstone","turntable","turpentine","turpin","turpis","turpitude","turquoise","turret","turtle","turtleback","turtledove","turtleneck","turtles","turves","turvy","tuscaloosa","tuscan","tuscany","tuscarora","tuscon","tush","tusk","tuskegee","tusker","tussle","tussock","tussocky","tussuad","tut","tutankhamen","tutelage","tutelary","tutor","tutored","tutorial","tutorials","tutorialspoint","tutorship","tutsi","tutsplus","tutted","tutti","tutting","tuttle","tutu","tuvalu","tux","tuxedo","tv","tva","tvalue","tvs","tw","twa","twaddle","twaddler","twain","twang","twangy","twas","tweak","tweaked","tweaking","tweaks","twee","tweed","tweediness","tweedledee","tweedledum","tweedy","tween","tweepy","tweet","tweeter","tweets","tweeze","tweezer","twelfth","twelfths","twelve","twelvemonth","twelvemonths","twentieths","twenty","twerp","twice","twiddle","twiddler","twiddly","twig","twigged","twigging","twiggy","twila","twilight","twilio","twilit","twill","twin","twine","twiner","twinge","twinkie","twinkle","twinkler","twinkling","twinkly","twinned","twinning","twirl","twirler","twirling","twirly","twist","twisted","twister","twists","twisty","twit","twitch","twitchy","twitted","twitter","twitterer","twittery","twitting","twixt","two","twofer","twofold","twopence","twopenny","twosome","twoway","twp","twx","twyla","tx","txn","txt","txtbox","txtname","txtusername","ty","tybalt","tybi","tybie","tycoon","tye","tyeing","tying","tyke","tylenol","tyler","tymon","tymothy","tympani","tympanist","tympanum","tynan","tyndale","tyndall","tyne","typ","type","typeahead","typecast","typed","typedarray","typedef","typeerror","typeface","typeid","typeless","typename","typeof","types","typesafe","typescript","typeset","typesetter","typesetting","typewrite","typewriter","typewriting","typewritten","typewrote","typhoid","typhon","typhoon","typhus","typical","typicality","typically","typicalness","typification","typify","typing","typings","typist","typo","typographer","typographic","typographical","typography","typological","typology","typos","tyrannic","tyrannical","tyrannicalness","tyrannicide","tyrannize","tyrannizer","tyrannizing","tyrannosaur","tyrannosaurus","tyrannous","tyranny","tyrant","tyree","tyreo","tyro","tyrol","tyrolean","tyrone","tyrosine","tyrus","tyson","tz","tzar","tzarina","tzeltal","tzinfo","u","ua","uac","uar","uart","uaw","ub","ubangi","uber","ubiquitous","ubiquity","ubound","ubuntu","uc","ucayali","uccello","uchar","uci","ucla","ud","udale","udall","udder","udell","udf","udp","ue","uf","ufa","ufo","ufologist","ufology","ug","uganda","ugandan","ugh","ughs","uglification","uglify","ugliness","uglis","ugly","ugo","uh","uhf","ui","uialertaction","uialertcontroller","uialertview","uiapplication","uibarbuttonitem","uibezierpath","uibutton","uicollectionview","uicollectionviewcell","uicolor","uicomponent","uicontrol","uicontroleventtouchupinside","uicontrolstatenormal","uid","uidevice","uielement","uievent","uifont","uighur","uigraphicsgetcurrentcontext","uigraphicsgetimagefromcurrentimagecontext","uiimage","uiimagepickercontroller","uiimageview","uikit","uilabel","uimanager","uinavigationbar","uinavigationcontroller","uint","uipickerview","uiscreen","uiscrollview","uisearchbar","uistoryboard","uistoryboardsegue","uiswing","uitabbarcontroller","uitableview","uitableviewcell","uitableviewcontroller","uitableviewdatasource","uitableviewdelegate","uitapgesturerecognizer","uitextfield","uitextview","uitouch","uiview","uiviewcontroller","uiwebview","uiwindow","uix","ujungpandang","uk","ukase","ukraine","ukrainian","ukulele","ul","ula","ulberto","ulcer","ulcerate","ulceration","ulcerous","ulick","ulises","ulla","ullamco","ullamcorper","ullman","ulna","ulnae","ulnar","ulong","ulric","ulrica","ulrich","ulrick","ulrika","ulrikaumeko","ulrike","ulster","ult","ulterior","ultimas","ultimate","ultimately","ultimateness","ultimatum","ultimo","ultra","ultracentrifugally","ultracentrifugation","ultracentrifuge","ultraconservative","ultrafast","ultrahigh","ultralight","ultramarine","ultramodern","ultramontane","ultrashort","ultrasonic","ultrasonically","ultrasonics","ultrasound","ultrastructure","ultrasuede","ultraviolet","ultrices","ultricies","ultrix","ululate","ululation","ulyanovsk","ulysses","um","umbel","umber","umberto","umbilical","umbilici","umbilicus","umbra","umbraco","umbrage","umbrageous","umbrella","umbriel","umd","umeko","umiak","uml","umlaut","ump","umpire","umpteen","un","una","unabated","unable","unabridged","unacceptability","unacceptable","unaccepted","unaccommodating","unaccountability","unaccustomed","unadapted","unadulterated","unadventurous","unalienability","unalterable","unalterableness","unalterably","unambiguity","unambiguous","unambitious","uname","unamused","unanimity","unanimous","unanticipated","unapologetic","unapologizing","unappeasable","unappeasably","unappreciative","unary","unassailable","unassailableness","unassertive","unassuming","unassumingness","unauthorized","unavailable","unavailing","unaware","unbalanced","unbar","unbarring","unbecoming","unbeknown","unbelieving","unbiased","unbid","unbind","unblessed","unblinking","unbodied","unbolt","unbound","unbounded","unbreakability","unbred","unbroken","unbuckle","unbudging","unburnt","unc","uncap","uncapping","uncatalogued","uncaught","uncauterized","unceasing","uncelebrated","uncertain","unchallengeable","unchanged","unchanging","unchangingness","uncharacteristic","uncharismatic","unchastity","uncheck","unchecked","unchristian","uncial","uncivilized","unclassified","uncle","unclear","unclouded","uncodable","uncollected","uncolored","uncoloredness","uncombable","uncomfortable","uncomment","uncommon","uncommunicative","uncompetitive","uncomplicated","uncomprehending","uncompressed","uncompromisable","unconcern","unconcerned","unconfirmed","unconfused","unconscionable","unconscionableness","unconscionably","unconstitutional","unconsumed","uncontentious","uncontrollability","unconvertible","uncool","uncooperative","uncork","uncouple","uncouth","uncouthness","uncreate","uncritical","uncross","uncrowded","unction","unctions","unctuous","unctuousness","uncustomary","uncut","und","undated","undaunted","undeceive","undecided","undeclared","undedicated","undef","undefinability","undefined","undefinedness","undelete","undeliverability","undeniable","undeniableness","undeniably","undependable","under","underachieve","underachiever","underact","underadjusting","underage","underarm","underbedding","underbelly","underbid","underbidding","underbracing","underbrush","undercarriage","undercharge","underclass","underclassman","underclassmen","underclothes","underclothing","undercoat","undercoating","underconsumption","undercooked","undercount","undercover","undercurrent","undercut","undercutting","underdeveloped","underdevelopment","underdog","underdone","undereducated","underemphasis","underemployed","underemployment","underenumerated","underenumeration","underestimate","underexploited","underexpose","underexposure","underfed","underfeed","underfloor","underflow","underfoot","underfund","underfur","undergarment","undergirding","undergo","undergoes","undergone","undergrad","undergraduate","underground","undergrowth","undergrowths","underhand","underhanded","underhandedness","underheat","underinvestment","underlaid","underlain","underlay","underlie","underline","underling","underlip","underloaded","underly","underlying","undermanned","undermentioned","undermine","undermost","underneath","underneaths","undernourished","undernourishment","underpaid","underpants","underpart","underpass","underpay","underpayment","underperformed","underpin","underpinned","underpinning","underplay","underpopulated","underpopulation","underpowered","underpricing","underprivileged","underproduction","underrate","underregistration","underreported","underreporting","underrepresentation","underrepresented","underscore","underscores","undersea","undersealed","undersecretary","undersell","undersexed","undershirt","undershoot","undershorts","undershot","underside","undersign","undersigned","undersized","undersizes","undersizing","underskirt","undersold","underspecification","underspecified","underspend","understaffed","understand","understandability","understandable","understandably","understanding","understands","understate","understatement","understocked","understood","understrength","understructure","understudy","undertake","undertaken","undertaker","undertaking","underthings","undertone","undertook","undertow","underused","underusing","underutilization","underutilized","undervaluation","undervalue","underwater","underway","underwear","underweight","underwent","underwhelm","underwood","underworld","underwrite","underwriter","underwritten","underwrote","undeserving","undesigned","undesirable","undeviating","undialyzed","undiplomatic","undiscerning","undiscriminating","undo","undocumented","undoubted","undramatic","undramatized","undress","undrinkability","undrinkable","undroppable","undue","undulant","undulate","undulation","unearth","unearthliness","unearthly","unease","uneconomic","uneducated","unemployed","unemployment","unencroachable","unending","unendurable","unenergized","unenforced","unenterprising","unescape","unesco","unethical","uneulogized","unexacting","unexceptionably","unexcited","unexpected","unexpectedly","unexpectedness","unfading","unfailing","unfailingness","unfair","unfamiliar","unfashionable","unfathomably","unfavored","unfeeling","unfeigned","unfelt","unfeminine","unfertile","unfetchable","unfinished","unflagging","unflappability","unflappable","unflappably","unflinching","unfold","unfoldment","unforced","unforgeable","unfortunate","unfortunately","unfossilized","unfraternizing","unfrozen","unfulfillable","unfunny","unfussy","ungainliness","ungainly","ungava","ungenerous","ungentle","unglamorous","ungrammaticality","ungrudging","unguent","ungulate","unhandled","unharmonious","unharness","unhistorical","unholy","unhook","unhydrolyzed","unhygienic","uni","unibus","unicameral","unicef","unicellular","unicode","unicorn","unicycle","unicyclist","unideal","unidimensional","unidiomatic","unidirectional","unidirectionality","unidolized","unifiable","unification","unified","unifier","unifilar","uniform","uniformity","uniformness","unify","unilateral","unilateralism","unilateralist","unimodal","unimpeachably","unimportance","unimportant","unimpressive","unindustrialized","uninhibited","uninitialized","uninominal","uninstall","uninstalled","uninstalling","uninsured","unintellectual","unintended","uninteresting","uninterrupted","uninterruptedness","unintuitive","uninviting","union","unionism","unionist","unionize","unions","uniplus","unipolar","uniprocessor","uniq","uniqid","unique","uniqueid","uniqueidentifier","uniquely","uniqueness","uniroyal","unisex","unisoft","unison","unistd","unisys","unit","unitarian","unitarianism","unitary","unite","united","uniter","unitize","unitofwork","unitprice","units","unittest","unity","unityengine","univ","univac","univalent","univalve","univariate","universal","universalism","universalistic","universality","universalize","universalizer","universally","universe","universities","university","unix","unixtime","unjam","unkempt","unkind","unkink","unknightly","unknowable","unknowing","unknown","unknownhostexception","unlabored","unlace","unlearn","unless","unlike","unlikeable","unlikeliness","unlikely","unlimber","unlimited","unlink","unlist","unlit","unliterary","unload","unloaded","unlock","unlocked","unloose","unlucky","unmagnetized","unmanageably","unmanaged","unmanagedtype","unmannered","unmarshal","unmarshaller","unmask","unmeaning","unmeasured","unmeetable","unmelodious","unmemorable","unmemorialized","unmentionable","unmerciful","unmeritorious","unmethodical","unmineralized","unmissable","unmistakably","unmitigated","unmnemonic","unmobilized","unmoral","unmount","unmovable","unmoving","unnamed","unnaturalness","unnavigable","unnecessarily","unnecessary","unneeded","unnerving","unnest","uno","unobliging","unobtrusive","unoffensive","unofficial","unordered","unorganized","unorthodox","unpack","unpacked","unpacking","unpaintable","unpalatability","unpalatable","unpartizan","unpatronizing","unpeople","unperceptive","unperson","unperturbed","unphysical","unpick","unpicturesque","unpinning","unpkg","unpleasing","unploughed","unpolarized","unpopular","unpractical","unprecedented","unpredictable","unpreemphasized","unpremeditated","unpretentiousness","unprincipled","unproblematic","unproductive","unpropitious","unprovable","unproven","unprovocative","unpunctual","unqualified","unquestionable","unraisable","unravellings","unreachable","unread","unreadability","unreadable","unreal","unrealizable","unreasonable","unreasoning","unreceptive","unrecognized","unrecordable","unreflective","unregister","unrelated","unrelenting","unreliable","unremitting","unrepeatability","unrepeated","unrepentant","unreported","unrepresentative","unreproducible","unresolved","unresponsive","unrest","unrestrained","unrewarding","unriddle","unripe","unromantic","unruliness","unruly","unsafe","unsaleable","unsanitary","unsavored","unsavoriness","unseal","unsearchable","unseasonal","unseeing","unseen","unselected","unselfconscious","unselfconsciousness","unselfishness","unsellable","unsentimental","unserialize","unset","unsettled","unsettledness","unsettling","unshapely","unshaven","unshift","unshorn","unsighted","unsightliness","unsigned","unskilful","unsociability","unsociable","unsocial","unsorted","unsound","unspeakably","unspecific","unspecified","unspectacular","unspoilt","unspoke","unsporting","unstable","unstigmatized","unstilted","unstinting","unstopping","unstrapping","unstudied","unstuffy","unsubdued","unsubscribe","unsubstantial","unsubtle","unsuccessful","unsuitable","unsupported","unsupportedencodingexception","unsupportedoperationexception","unsure","unsuspecting","unswerving","unsymmetrical","unsympathetic","unsystematic","unsystematized","untactful","untalented","untaxing","unteach","untellable","untenable","untested","unthinking","until","untill","untiring","untitled","unto","untouchable","untouched","untoward","untowardness","untraceable","untrue","untrusted","untruthfulness","untwist","unukalhai","unusable","unused","unusual","unusualness","unutterable","unutterably","unvocalized","unvulcanized","unwaivering","unwanted","unwarrantable","unwarrantably","unwashed","unwearable","unwearied","unwed","unwedge","unwelcome","unwell","unwieldiness","unwieldy","unwind","unwomanly","unworkable","unworried","unwrap","unwrapping","unyielding","unyoke","unzip","up","upanishads","uparrow","upbeat","upbraid","upbring","upbringing","upc","upchuck","upcome","upcoming","upcountry","upd","updatability","updatable","update","updated","updatedat","updatepanel","updater","updates","updatesourcetrigger","updating","updike","updraft","upend","upfield","upfront","upgrade","upgradeable","upgraded","upgrades","upgrading","upheaval","upheld","uphill","uphold","upholder","upholster","upholsterer","upholstery","upi","upkeep","upland","uplander","uplift","uplifter","upload","uploaded","uploadedfile","uploader","uploadfile","uploading","uploads","upmarket","upon","upped","upper","uppercase","upperclassman","upperclassmen","uppercut","uppercutting","uppermost","upping","uppish","uppity","upraise","uprated","uprating","uprear","upright","uprightness","uprise","uprising","upriver","uproar","uproarious","uproariousness","uproot","uprooter","ups","upscale","upsert","upset","upsetting","upshot","upside","upsilon","upslope","upstage","upstairs","upstanding","upstandingness","upstart","upstate","upstream","upstroke","upsurge","upswing","upswung","uptake","upthrust","uptight","uptime","upto","upton","uptown","uptrend","upturn","upvote","upvoted","upvotes","upward","upwardness","upwards","upwelling","upwind","uq","ur","uracil","ural","urania","uranium","uranus","uranyl","urbain","urban","urbana","urbane","urbanism","urbanite","urbanity","urbanization","urbanize","urbano","urbanologist","urbanology","urbanus","urchin","urdu","urea","uremia","uremic","ureter","urethane","urethra","urethrae","urethral","urethritis","urey","urge","urgency","urgent","urger","uri","uriah","uric","uriel","urikind","urinal","urinalyses","urinalysis","urinary","urinate","urination","urine","uris","url","urlclassloader","urlconnection","urldecode","urlencode","urlencoded","urlencoder","urllib","urlopen","urlparameter","urlpatterns","urlrequest","urlrouterprovider","urls","urlsession","urlstring","urlwithstring","urn","urna","urning","urogenital","urological","urologist","urology","urquhart","ursa","ursala","ursine","ursola","urson","ursula","ursulina","ursuline","urticaria","uruguay","uruguayan","urumqi","us","usa","usability","usable","usably","usaf","usage","usages","usart","usb","usc","uscg","usd","usda","use","usec","usecase","used","usedrange","useful","usefull","usefulness","useless","uselessness","usenet","usenix","user","useragent","userbundle","usercontrol","usercontroller","userdao","userdata","userdefaults","userdetails","userdetailsservice","useremail","userfile","userform","userguide","userid","userinfo","userinput","userinteractionenabled","userlist","userlogin","usermanager","usermanual","usermodel","username","usernames","userpassword","userprofile","userrepository","userrole","users","userscontroller","userservice","usertype","uses","usg","usher","usherette","ushort","usia","using","usmc","usn","uso","usort","usp","usps","usr","uss","ussr","ustinov","usu","usual","usually","usuals","usuario","usurer","usurious","usuriousness","usurp","usurpation","usurper","usury","ut","uta","utah","utahan","utc","utcnow","ute","utensil","uteri","uterine","uterus","utf","utica","util","utile","utilitarian","utilitarianism","utilities","utility","utilization","utilize","utilizer","utilizes","utilizing","utils","utl","utm","utmost","utopia","utopian","utopianism","utrecht","utrillo","utter","utterance","uttered","utterer","utterly","uttermost","uu","uucp","uuid","uv","uvula","uvular","uw","uwp","uwsgi","ux","uxorious","uzbek","uzbekistan","uzi","v","va","vaadin","vacancy","vacant","vacantness","vacate","vacation","vacationist","vacationland","vaccinate","vaccination","vaccine","vaccinia","vaccinial","vachel","vacillate","vacillating","vacillation","vacillator","vaclav","vacua","vacuity","vacuo","vacuolate","vacuolated","vacuole","vacuolization","vacuous","vacuousness","vacuum","vader","vaduz","vagabond","vagabondage","vagarious","vagary","vagina","vaginae","vaginal","vagrancy","vagrant","vague","vagueing","vagueness","vail","vain","vainglorious","vaingloriousness","vainglory","val","valance","valaree","valaria","valarie","valdemar","valdez","vale","valeda","valediction","valedictorian","valedictory","valence","valencia","valency","valene","valenka","valentia","valentijn","valentin","valentina","valentine","valentino","valenzuela","valera","valeria","valerian","valerie","valerye","valet","valetudinarian","valetudinarianism","valgrind","valhalla","valiance","valiant","valiantness","valid","valida","validate","validated","validates","validating","validation","validationerror","validationmessagefor","validationresult","validations","validator","validators","validity","validness","validnesses","valign","valina","valise","valium","valkyrie","valle","vallejo","valletta","valley","valli","vallie","vally","valma","valois","valor","valorous","valparaiso","valry","vals","valuable","valuableness","valuables","valuably","valuate","valuation","valuator","value","valuechanged","valued","valueerror","valueeventlistener","valueforkey","valueless","valuelessness","valueof","valuer","values","valuetype","valve","valveless","valves","valvular","vamoose","vamp","vamper","vampire","van","vanadium","vance","vancouver","vanda","vandal","vandalism","vandalize","vandenberg","vanderbilt","vanderburgh","vanderpoel","vandyke","vane","vanessa","vang","vanguard","vania","vanilla","vanish","vanisher","vanishing","vanity","vanna","vanned","vanni","vannie","vanning","vanny","vanquish","vanquisher","vantage","vanuatu","vanya","vanzetti","vapid","vapidity","vapidness","vapor","vaporer","vaporing","vaporisation","vaporise","vaporization","vaporize","vaporizer","vaporous","vapory","vaquero","var","varanasi","varbinary","varchar","varese","vargas","variability","variable","variablename","variableness","variables","variably","variadic","varian","variance","variances","variant","variants","variate","variation","variational","variations","varicolored","varicose","varied","variedly","variegate","variegation","varier","varies","varietal","variety","various","varistor","varityping","varius","varlet","varmint","varname","varnish","varnished","varnisher","vars","varsity","vary","varying","vascular","vase","vasectomy","vaseline","vasili","vasily","vasomotor","vasquez","vassal","vassalage","vassar","vassili","vassily","vast","vastly","vastness","vat","vatican","vatted","vatting","vaudeville","vaudevillian","vaudois","vaughan","vaughn","vault","vaulter","vaulting","vaunt","vaunter","vax","vaxes","vazquez","vb","vba","vbcrlf","vbnewline","vbo","vbox","vbs","vbscript","vc","vcard","vcf","vcl","vcr","vcs","vd","vdt","vdu","ve","veal","vealed","vealer","veals","veblen","vec","vect","vector","vectorial","vectorization","vectorize","vectorized","vectorizing","vectors","ved","veda","vedanta","veejay","veep","veer","veering","veg","vega","vegan","vegemite","veges","vegetable","vegetarian","vegetarianism","vegetate","vegetation","vegetative","vegged","veggie","vegging","vehemence","vehemency","vehement","vehicle","vehicles","vehicula","vehicular","veil","veiling","vein","veining","vel","vela","velar","velarize","velcro","veld","veldt","velez","velit","vella","vellum","velma","velocipede","velocity","velor","velour","velsquez","velum","velveeta","velvet","velveteen","velvety","velzquez","venal","venality","venation","vend","vender","vendetta","vendible","vendor","vendors","veneer","veneerer","veneering","venenatis","venerability","venerable","venerate","veneration","venereal","venetian","venezuela","venezuelan","vengeance","vengeful","vengefulness","venial","venialness","veniam","venice","venireman","veniremen","venison","venita","venn","venom","venomous","venomousness","venous","vent","venter","ventilate","ventilated","ventilation","ventilator","ventral","ventricle","ventricular","ventriloquies","ventriloquism","ventriloquist","ventriloquy","ventura","venture","venturesome","venturesomeness","venturi","venturous","venturousness","venue","venues","venus","venusian","venv","ver","vera","veracious","veraciousness","veracities","veracity","veracruz","veradis","veranda","verandahed","verb","verbal","verbalization","verbalize","verbalized","verbalizer","verballed","verballing","verbatim","verbena","verbiage","verbose","verbosity","verboten","verbs","verdana","verdant","verde","verderer","verdi","verdict","verdigris","verdure","vere","verena","verene","verge","verger","vergil","veridical","veriee","verifiability","verifiable","verifiableness","verification","verified","verifier","verifies","verify","verifying","verifypeer","verile","verily","verina","verine","verisimilitude","veritable","veritableness","veritably","verity","verizon","verla","verlag","verlaine","vermeer","vermicelli","vermiculite","vermiform","vermilion","vermin","verminous","vermont","vermonter","vermouth","vermouths","vern","verna","vernacular","vernal","verne","vernen","verney","vernice","vernier","vernon","vernor","verona","veronese","veronica","veronika","veronike","veronique","verruca","verrucae","versa","versailles","versatec","versatile","versatileness","versatility","verse","versed","verses","versicle","versification","versifier","versify","versing","version","versioncode","versioned","versioning","versionname","versions","verso","versus","vert","vertebra","vertebrae","vertebral","vertebrate","vertebration","vertex","vertical","verticalalignment","vertically","vertices","vertiginous","vertigo","vertigoes","vertx","verve","very","vesalius","vesicle","vesicular","vesiculate","vespasian","vesper","vespucci","vessel","vest","vesta","vestal","vestibular","vestibule","vestibulum","vestige","vestigial","vesting","vestment","vestry","vestryman","vestrymen","vesture","vesuvius","vet","vetch","veter","veteran","veterinarian","veterinary","veto","vetoes","vetted","vetting","vevay","vex","vexation","vexatious","vexatiousness","vexed","vf","vfs","vfw","vfy","vg","vga","vh","vhdl","vhf","vhost","vhosts","vhs","vi","via","viability","viable","viably","viaduct","viagra","vial","viand","vibe","vibraharp","vibrancy","vibrant","vibraphone","vibraphonist","vibrate","vibration","vibrational","vibrato","vibrator","vibratory","vibrio","vibrionic","viburnum","vic","vicar","vicarage","vicarious","vicariousness","vice","viced","vicegerent","vicennial","vicente","viceregal","viceroy","vichy","vichyssoise","vicing","vicinity","vicious","viciousness","vicissitude","vick","vickers","vicki","vickie","vicksburg","vicky","victim","victimization","victimize","victimized","victimizer","victoir","victor","victoria","victorian","victorianism","victorious","victoriousness","victory","victrola","victual","victualer","vicua","vid","vida","vidal","videlicet","video","videocapture","videocassette","videoconferencing","videodisc","videodisk","videoid","videophone","videoplayer","videos","videotape","videoview","vidovic","vidovik","vie","vienna","viennese","vientiane","vier","viet","vietcong","vietminh","vietnam","vietnamese","view","viewable","viewbag","viewbox","viewchild","viewcontext","viewcontroller","viewcontrollers","viewdata","viewdidappear","viewdidload","viewed","viewer","viewers","viewfinder","viewgraph","viewgroup","viewholder","viewing","viewless","viewmodel","viewmodels","viewname","viewpager","viewpoint","viewport","viewrootimpl","views","viewstate","viewtopic","viewtype","viewwillappear","viewwithtag","vigesimal","vigil","vigilance","vigilant","vigilante","vigilantism","vigilantist","vignette","vignetter","vignetting","vignettist","vigor","vigorous","vigorousness","vii","viii","vijayawada","viki","viking","vikki","vikky","vikram","vila","vile","vilely","vileness","vilest","vilhelmina","vilification","vilifier","vilify","villa","village","villager","villain","villainous","villainousness","villainy","villarreal","ville","villein","villeinage","villi","villon","villus","vilma","vilnius","vilyui","vim","vimeo","vimrc","vin","vina","vinaigrette","vince","vincent","vincenty","vincenz","vinci","vincible","vindemiatrix","vindicate","vindication","vindicator","vindictive","vindictiveness","vine","vinegar","vinegary","vineyard","vinita","vinni","vinnie","vinny","vino","vinous","vinson","vintage","vintager","vintner","vinyl","viol","viola","violable","violante","violate","violated","violates","violating","violation","violations","violator","viole","violence","violent","violet","violetta","violette","violin","violinist","violist","violoncellist","violoncello","vip","viper","viperous","virago","viragoes","viral","vireo","virge","virgie","virgil","virgilio","virgin","virgina","virginal","virginia","virginian","virginie","virginity","virgo","virgule","virile","virility","virologist","virology","virtual","virtualbox","virtualenv","virtualenvs","virtualfilterchain","virtualhost","virtualization","virtually","virtue","virtuosity","virtuoso","virtuosoes","virtuous","virtuousness","virulence","virulent","virus","vis","visa","visage","visakhapatnam","visayans","viscera","visceral","viscid","viscoelastic","viscoelasticity","viscometer","viscose","viscosity","viscount","viscountcy","viscountess","viscous","viscousness","viscus","vise","viselike","vishnu","visibility","visible","visibly","visigoth","visigoths","vision","visionariness","visionary","visit","visitable","visitant","visitation","visited","visiting","visitor","visitors","visits","visor","vista","vistula","visual","visualization","visualize","visualized","visualizer","visualizes","visually","visualstate","visualstudio","vita","vitae","vital","vitality","vitalization","vitalize","vitamin","vite","vitia","vitiate","vitiation","viticulture","viticulturist","vitim","vito","vitoria","vitreous","vitrifaction","vitrification","vitrify","vitrine","vitriol","vitriolic","vitro","vittles","vittoria","vittorio","vituperate","vituperation","vituperative","vitus","viv","viva","vivace","vivacious","vivaciousness","vivacity","vivaldi","vivamus","vivaria","vivarium","vivaxes","vive","vivekananda","viverra","vivi","vivia","vivian","viviana","vivianna","vivianne","vivid","vividness","vivie","vivien","viviene","vivienne","vivifier","vivify","viviparous","vivisect","vivisection","vivisectional","vivisectionist","viviyan","vivo","vivyan","vivyanne","vixen","vixenish","viz","vizier","vizor","vj","vk","vl","vlad","vladamir","vladimir","vladivostok","vlc","vlf","vlookup","vlsi","vm","vms","vmware","vn","vnd","vo","voa","vocab","vocable","vocabularian","vocabularianism","vocabulary","vocal","vocalic","vocalise","vocalism","vocalist","vocalization","vocalize","vocalized","vocalizer","vocation","vocational","vocative","vociferate","vociferation","vociferous","vociferousness","vocoded","vocoder","vodka","voe","vogel","vogella","vogue","vogueing","voguish","voice","voiceband","voiced","voiceless","voicelessness","voicer","voices","voicing","void","voidable","voided","voider","voiding","voidness","voids","voil","voila","voile","voip","vol","volar","volatile","volatileness","volatility","volatilization","volatilize","volcanic","volcanically","volcanism","volcano","volcanoes","vole","volga","volgograd","volition","volitional","volitionality","volkswagen","volley","volleyball","volleyer","volleyerror","volstead","volt","volta","voltage","voltaic","voltaire","volterra","voltmeter","volubility","voluble","volubly","volume","volumes","volumetric","volumetrically","voluminous","voluminousness","voluntarily","voluntariness","voluntarism","voluntary","volunteer","voluptate","voluptuary","voluptuous","voluptuousness","volute","volutpat","volvo","vomit","von","vonda","vonnegut","vonni","vonnie","vonny","vonr","voodoo","voodooism","voracious","voraciousness","voracity","voronezh","vorster","vortex","vortices","vorticity","votary","vote","voted","voter","votes","voting","votive","vouch","voucher","vouchsafe","vow","vowel","vowelled","vowelling","vowels","vower","voyage","voyager","voyageur","voyeur","voyeurism","voyeuristic","vp","vpc","vpn","vps","vr","vs","vscode","vsts","vstudio","vt","vtable","vtk","vtol","vue","vuejs","vuex","vulcan","vulcanization","vulcanize","vulcanized","vulg","vulgar","vulgarian","vulgarism","vulgarity","vulgarization","vulgarize","vulgate","vulnerabilities","vulnerability","vulnerable","vulnerably","vulpine","vulputate","vulture","vulturelike","vulturous","vulva","vulvae","vv","vw","vx","vy","vying","vyky","w","wa","waals","wabash","wac","wacke","wackes","wackiness","wacko","wacky","waco","wad","wadded","wadding","waddle","wade","wader","wadi","wadsworth","wafer","waffle","wafs","waft","wafter","wag","wage","waged","wager","wages","wagged","waggery","wagging","waggish","waggishness","waggle","waggly","wagner","wagnerian","wagon","wagoner","wagtail","wahl","waif","waikiki","wail","wailer","wain","wainscot","wainwright","waist","waistband","waistcoat","waister","waistline","wait","waite","waited","waiter","waitfor","waiting","waitkey","waitpeople","waitperson","waitress","waits","waive","waiver","wake","wakefield","wakeful","wakefulness","waken","waker","wakeup","waksman","wal","walbridge","walcott","wald","waldemar","walden","waldensian","waldheim","waldo","waldon","waldorf","wale","wales","walesa","walford","walgreen","waling","walk","walkabout","walkaway","walker","walkie","walking","walkman","walkout","walkover","walks","walkthrough","walkway","wall","wallaby","wallace","wallache","wallah","wallas","wallboard","wallenstein","waller","wallet","walleye","wallflower","wallie","wallis","walliw","walloon","wallop","walloper","walloping","wallow","wallower","wallpaper","walls","wally","walnut","walpole","walpurgisnacht","walrus","walsh","walt","walter","walther","walton","waltz","waltzer","walworth","waly","wamp","wampum","wan","wanamaker","wand","wanda","wander","wanderer","wanderlust","wandie","wandis","wane","waneta","wang","wangle","wangler","wanids","wankel","wanna","wannabe","wanned","wanner","wanness","wannest","wanning","wansee","wansley","want","wanted","wanter","wanting","wanton","wantonness","wants","wapiti","war","warble","warbler","warbonnet","ward","warde","warden","warder","wardrobe","wardroom","wards","wardship","ware","warehouse","warehouseman","warfare","warfield","warhead","warhol","warhorse","warily","wariness","warinesses","waring","warless","warlike","warlock","warlord","warm","warmblooded","warmed","warmer","warmhearted","warmheartedness","warmish","warmness","warmonger","warmongering","warms","warmth","warmths","warn","warned","warner","warning","warnings","warnock","warp","warpaint","warpath","warpaths","warper","warplane","warrant","warranted","warranter","warranty","warred","warren","warrener","warring","warrior","wars","warsaw","warship","wart","warthog","wartime","warty","warwick","wary","was","wasatch","wash","washable","washbasin","washboard","washbowl","washburn","washcloth","washcloths","washday","washed","washer","washerwoman","washerwomen","washing","washington","washingtonian","washoe","washout","washrag","washroom","washstand","washtub","washy","wasn","wasp","waspish","waspishness","wassail","wasserman","wassermann","wast","wastage","waste","wastebasket","wasted","wasteful","wastefulness","wasteland","wastepaper","waster","wastewater","wasting","wastrel","wat","watanabe","watch","watchable","watchband","watchdog","watchdogged","watchdogging","watched","watcher","watches","watchful","watchfulness","watching","watchmake","watchmaker","watchman","watchmen","watchpoints","watchtower","watchword","water","waterbird","waterborne","waterbury","watercolor","watercolorist","watercourse","watercraft","watercress","waterer","waterfall","waterfowl","waterfront","watergate","waterhole","waterhouse","wateriness","watering","waterless","waterlily","waterline","waterlogged","waterloo","waterman","watermark","watermelon","watermill","waterproof","waters","watershed","waterside","watersider","waterspout","watertight","watertightness","watertown","waterway","waterwheel","waterworks","watery","watir","watkins","wats","watson","watt","wattage","watteau","wattenberg","watterson","wattle","watusi","waugh","waukesha","waunona","waupaca","waupun","wausau","wauwatosa","wav","wave","waveband","waveform","wavefront","waveguide","waveland","wavelength","wavelengths","wavelet","wavelike","wavenumber","waver","wavering","waverley","waverly","waves","wavily","waviness","wavy","wax","waxer","waxiness","waxwing","waxwork","waxy","way","wayfarer","wayfaring","waylaid","waylan","wayland","waylay","waylayer","wayleave","waylen","waylin","waylon","waymarked","wayne","waynesboro","waypoint","waypoints","ways","wayside","wayward","waywardness","wb","wc","wcf","wchar","wd","we","weak","weaken","weakener","weakfish","weakish","weakliness","weakling","weakly","weakness","weakreference","weal","wealth","wealthiness","wealths","wealthy","wean","weaner","weanling","weapon","weaponless","weaponry","weapons","wear","wearable","wearer","wearied","wearily","weariness","wearing","wearisome","wearisomeness","weary","wearying","weasel","weather","weatherbeaten","weathercock","weatherer","weatherford","weathering","weatherize","weatherman","weathermen","weatherperson","weatherproof","weatherstrip","weatherstripped","weatherstripping","weave","weaver","weaves","weaving","web","webapi","webapp","webappclassloader","webappcontext","webapplication","webapps","webb","webbed","webber","webbing","webbrowser","webcam","webclient","webcontainer","webcontrols","webcore","webdav","webdriver","webdriverwait","webelement","weber","webern","webexception","webfeet","webfont","webfoot","webform","webforms","webgl","webhook","webhooks","webhost","webkit","weblog","weblogic","weblogs","webm","webmaster","webmethod","webmvc","webp","webpack","webpage","webpages","webrequest","webresponse","webrick","webroot","webrtc","webserver","webservice","webservices","websettings","website","websites","websocket","websockets","websphere","webster","websterville","webstore","webstorm","webview","webviewclient","wed","wedded","weddell","wedder","wedding","wedge","wedgie","wedgwood","wedlock","wednesday","wee","weed","weeder","weediness","weedkiller","weedless","weedy","weeing","week","weekday","weekdays","weekend","weekender","weekends","weekly","weeknight","weeks","ween","weenie","weeny","weep","weeper","weepy","weevil","weft","wehr","wei","weibull","weidar","weider","weidman","weierstrass","weigh","weighed","weigher","weighs","weight","weighted","weighter","weightily","weightiness","weighting","weightless","weightlessness","weightlifter","weightlifting","weights","weightsum","weighty","weill","weinberg","weiner","weinstein","weir","weird","weirdie","weirdness","weirdo","weisenheimer","weiss","weissman","weissmuller","weizmann","weka","welbie","welby","welcher","welches","welcome","welcomed","welcomeness","welcoming","weld","welder","weldon","weldwood","welfare","welkin","well","welland","wellbeing","weller","welles","wellesley","wellhead","wellington","wellman","wellness","wells","wellspring","wellsville","welmers","welsh","welsher","welshman","welshmen","welshwoman","welshwomen","welt","welter","welterweight","wen","wench","wencher","wend","wenda","wendall","wendel","wendeline","wendell","wendi","wendie","wendy","wendye","wenona","wenonah","went","wentworth","wept","were","weren","werewolf","werewolves","werner","wernher","werror","werther","werwolf","wes","wesley","wesleyan","wessex","wesson","west","westbound","westbrook","westbrooke","westchester","wester","westerly","western","westerner","westernization","westernize","westernmost","westfield","westhampton","westing","westinghouse","westleigh","westley","westminster","westmore","weston","westphalia","westport","westward","westwood","wet","wetback","wether","wetland","wetness","wettable","wetter","wettest","wetting","weyden","weyerhauser","weylin","wezen","wf","wff","wg","wget","wh","whack","whacker","whale","whaleboat","whalebone","whalen","whaler","whaling","wham","whammed","whamming","whammy","wharf","wharton","wharves","what","whatchamacallit","whatever","whatnot","whats","whatsapp","whatsoever","whatwg","wheal","wheat","wheatgerm","wheaties","wheatland","wheaton","wheatstone","whee","wheedle","wheel","wheelbarrow","wheelbase","wheelchair","wheeler","wheelhouse","wheelie","wheeling","wheelock","wheels","wheelwright","wheeze","wheezily","wheeziness","wheezy","whelan","whelk","wheller","whelm","whelp","when","whence","whenever","whensoever","where","whereabout","whereas","whereat","whereby","wherefore","wherein","whereof","whereon","wheresoever","whereto","whereupon","wherever","wherewith","wherewithal","wherry","whet","whether","whetstone","whetted","whetting","whew","whey","which","whichever","whiff","whiffle","whiffler","whiffletree","whig","while","whilom","whilst","whim","whimmed","whimming","whimper","whimsey","whimsical","whimsicality","whimsy","whine","whining","whinny","whiny","whip","whipcord","whiplash","whippany","whipped","whipper","whippersnapper","whippet","whipping","whipple","whippletree","whippoorwill","whips","whipsaw","whir","whirl","whirligig","whirlpool","whirlwind","whirly","whirlybird","whirred","whirring","whisk","whisker","whiskery","whiskey","whisper","whisperer","whispering","whist","whistle","whistleable","whistler","whistling","whit","whitaker","whitby","whitcomb","white","whitebait","whitecap","whitecolor","whiteface","whitefield","whitefish","whitehall","whitehead","whitehorse","whiteleaf","whiteley","whitelist","whiten","whitener","whiteness","whitening","whiteout","whitespace","whitespaces","whitetail","whitewall","whitewash","whitewater","whitey","whitfield","whither","whitier","whitiest","whiting","whitish","whitley","whitlock","whitman","whitney","whitsunday","whittaker","whitter","whittier","whittle","whittler","whiz","whizkid","whizzbang","whizzed","whizzes","whizzing","whl","who","whoa","whodunit","whoever","whois","whole","wholegrain","wholehearted","wholeheartedness","wholemeal","wholeness","wholesale","wholesaler","wholesome","wholesomeness","wholewheat","wholly","whom","whomever","whomsoever","whoop","whoopee","whooper","whoosh","whop","whopper","whopping","whore","whorehouse","whoreish","whorish","whorl","whose","whoso","whosoever","why","whys","wi","wiatt","wich","wichita","wick","wicked","wickedness","wicker","wickerwork","wicket","wicketkeeper","wicking","wid","wide","widely","widemouthed","widen","widener","wideness","wider","widespread","widgeon","widget","widgets","widow","widower","widowhood","width","widths","widthwise","wieland","wield","wielder","wiemar","wiener","wienie","wier","wiesel","wife","wifeless","wifely","wifi","wifimanager","wig","wigeon","wigged","wigging","wiggins","wiggle","wiggler","wiggly","wight","wiglet","wigmaker","wigner","wigwag","wigwagged","wigwagging","wigwam","wiki","wikimedia","wikipedia","wilberforce","wilbert","wilbur","wilburn","wilburt","wilcox","wild","wilda","wildcard","wildcards","wildcat","wildcatted","wildcatter","wildcatting","wilde","wildebeest","wilden","wilder","wilderness","wildfire","wildflower","wildfly","wildfowl","wilding","wildlife","wildly","wildness","wildon","wile","wileen","wilek","wiley","wilford","wilfred","wilfredo","wilfrid","wilfulness","wilhelm","wilhelmina","wilhelmine","wilie","wilily","wiliness","wilkerson","wilkes","wilkins","wilkinson","will","willa","willabella","willamette","willamina","willard","willcox","willdon","willed","willem","willemstad","willer","willetta","willette","willey","willful","willfulness","willi","william","williamsburg","williamson","willie","willied","willies","willing","willinger","willingest","willingness","willisson","williwaw","willoughby","willow","willower","willowy","willpower","willy","willyt","wilma","wilmar","wilmer","wilmette","wilmington","wilona","wilone","wilow","wilshire","wilson","wilsonian","wilt","wilton","wily","wimbledon","wimp","wimpish","wimple","wimpy","win","winapi","wince","winch","winchell","wincher","winchester","wind","windbag","windblown","windbreak","windburn","winded","winder","windfall","windflower","windham","windhoek","windily","windiness","winding","windjammer","windlass","windless","windmill","window","windowless","windowmanager","windowpane","windows","windowsazure","windowsill","windowstate","windpipe","windproof","windrow","winds","windscreen","windshield","windsock","windsor","windstorm","windsurf","windswept","windup","windward","windy","wine","wineglass","winegrower","winehead","winemake","winemaster","winery","winesap","wineskin","winfield","winform","winforms","winfred","winfrey","winfx","wing","wingback","wingding","wingeing","winger","wingless","winglike","wingman","wingmen","wingspan","wingspread","wingtip","wini","winifield","winifred","wink","winker","winking","winkle","winless","winn","winna","winnable","winnah","winne","winnebago","winner","winners","winnetka","winni","winnie","winnifred","winning","winnipeg","winnow","winny","wino","winograd","winona","winonah","winooski","winrt","wins","winsborough","winsett","winslow","winsock","winsome","winsomeness","winston","winter","winterer","wintergreen","winterize","winters","wintertime","winthrop","wintriness","wintry","winy","wipe","wiper","wire","wired","wirehair","wireless","wireman","wiremen","wirer","wires","wireshark","wiretap","wiretapped","wiretapper","wiretapping","wiriness","wiring","wiry","wis","wisc","wisconsin","wisconsinite","wisdom","wisdoms","wise","wiseacre","wisecrack","wised","wisely","wiseness","wisenheimer","wises","wish","wishbone","wishes","wishful","wishfulness","wishlist","wishy","wising","wisp","wispy","wist","wisteria","wistful","wistfulness","wit","witch","witchcraft","witchdoctor","witchery","with","withal","withcolumn","withdraw","withdrawal","withdrawer","withdrawn","withdrawnness","withdrew","withe","wither","withering","witherspoon","withevent","withheld","withhold","withholder","withidentifier","within","withobject","without","withrowanimation","withs","withstand","withstood","withstring","witless","witlessness","witness","witnessed","witt","witted","witter","wittgenstein","witticism","wittie","wittily","wittiness","witting","wittings","witty","witwatersrand","wive","wives","wix","wiz","wizard","wizardry","wizen","wk","wkhtmltopdf","wkwebview","wl","wlan","wls","wm","wmi","wn","wnd","wndproc","wno","wnw","wo","woad","wobble","wobbler","wobbliness","wobbly","wodehouse","woe","woebegone","woeful","woefuller","woefullest","woefulness","woff","wok","woke","wolcott","wold","wolf","wolfe","wolfer","wolff","wolfgang","wolfhound","wolfie","wolfish","wolfishness","wolfram","wolfy","wollongong","wollstonecraft","wolsey","wolverhampton","wolverine","wolverton","wolves","woman","womanhood","womanish","womanize","womanized","womanizer","womanizes","womankind","womanlike","womanliness","womanly","womb","wombat","women","womenfolk","won","wonder","wondered","wonderer","wonderful","wonderfulness","wondering","wonderland","wonderment","wondrous","wondrousness","wong","wonk","wonky","wonned","wonning","wont","wonted","wontedness","woo","woocommerce","wood","woodard","woodberry","woodbine","woodblock","woodbury","woodcarver","woodcarving","woodchopper","woodchuck","woodcock","woodcraft","woodcut","woodcutter","woodcutting","wooden","woodenness","woodgrain","woodhen","woodhull","woodie","woodiness","woodland","woodlawn","woodlice","woodlot","woodlouse","woodman","woodmen","woodpecker","woodpile","woodrow","woodruff","woods","woodshed","woodshedded","woodshedding","woodside","woodsman","woodsmen","woodsmoke","woodstock","woodsy","woodward","woodwind","woodwork","woodworker","woodworking","woodworm","woody","woodyard","woof","woofer","wool","woolf","woolgather","woolgatherer","woolgathering","woolliness","woolly","woolongong","woolworth","woonsocket","wooster","wooten","woozily","wooziness","woozy","wop","worcester","worcestershire","word","wordage","wordbook","wordcount","worden","wordily","wordiness","wording","wordless","wordlist","wordplay","wordpress","words","wordsworth","wordy","wore","work","workability","workable","workableness","workably","workaday","workaholic","workaround","workarounds","workbench","workbook","workbooks","workday","workdir","worked","worker","workers","workfare","workflow","workflows","workforce","workhorse","workhouse","working","workingman","workingmen","workingwoman","workingwomen","workitem","worklight","workload","workman","workmanlike","workmanship","workmate","workmen","workout","workpiece","workplace","workroom","works","worksheet","worksheetfunction","worksheets","workshop","workspace","workspaces","workstation","worktable","worktop","workup","workweek","world","worldlier","worldliest","worldliness","worldly","worlds","worldwide","worm","wormer","wormhole","worms","wormwood","wormy","worn","worried","worrier","worries","worriment","worrisome","worry","worrying","worrywart","worse","worsen","worship","worshiper","worshipful","worshipfulness","worst","worsted","wort","worth","worthily","worthiness","worthinesses","worthington","worthless","worthlessness","worths","worthwhile","worthy","wost","wot","wotan","would","wouldn","wouldst","wound","wounded","wounder","wounding","wounds","wove","woven","wovens","wow","wozniak","wp","wparam","wpdb","wpf","wpfapplication","wpm","wr","wrack","wraith","wraiths","wrangell","wrangle","wrangler","wrap","wraparound","wrapped","wrapper","wrappers","wrapping","wraps","wrasse","wrath","wrathful","wraths","wreak","wreath","wreathe","wreaths","wreck","wreckage","wrecker","wren","wrench","wrenching","wrennie","wrest","wrester","wrestle","wrestler","wrestling","wretch","wretched","wretchedness","wriggle","wriggler","wriggly","wright","wrigley","wring","wringer","wrinkle","wrinkled","wrinkly","wrist","wristband","wristwatch","writ","writable","write","writebytes","writefile","writehead","writeline","writeln","writeobject","writer","writerow","writers","writes","writestring","writeto","writetofile","writeup","writhe","writing","written","wroclaw","wrong","wrongdoer","wrongdoing","wronger","wrongful","wrongfulness","wrongheaded","wrongheadedness","wrongly","wrongness","wronskian","wrote","wroth","wrought","wrt","wrung","wry","wryer","wryest","wryness","ws","wscript","wsdl","wsfilter","wsgi","wshttpbinding","wso","wsp","wss","wsse","wstring","wsw","wt","wtf","wu","wuhan","wurlitzer","wurst","wuss","wussy","wv","ww","wwdc","wwi","wwii","www","wwwroot","wx","wxpython","wxwidgets","wy","wyatan","wyatt","wycherley","wycliffe","wye","wyeth","wylie","wylma","wyman","wyn","wyndham","wynn","wynne","wynnie","wynny","wyo","wyoming","wyomingite","wysiwyg","x","xa","xamarin","xaml","xampp","xanadu","xanthippe","xanthus","xargs","xavier","xaviera","xaxis","xb","xbox","xc","xcode","xcopy","xd","xdata","xdebug","xdoc","xdocument","xe","xebec","xelement","xemacs","xena","xenakis","xenia","xenix","xenon","xenophobe","xenophobia","xenophobic","xenophon","xenos","xerces","xerographic","xerography","xerox","xerxes","xever","xf","xfbml","xff","xffff","xffffff","xffffffff","xhdpi","xhosa","xhr","xhtml","xhttp","xi","xian","xiaoping","xib","xii","xiii","ximenes","ximenez","ximian","xingu","xis","xiv","xix","xkcd","xl","xlab","xlabel","xlapp","xlarge","xldown","xlim","xlink","xls","xlsm","xlsx","xlup","xm","xmas","xmax","xmin","xml","xmlattribute","xmldata","xmldoc","xmldocument","xmlelement","xmlfile","xmlhttp","xmlhttprequest","xmlnode","xmlns","xmlparser","xmlreader","xmlrootelement","xmlrpc","xmlschema","xmlserializer","xmlsoap","xmlstring","xmltype","xmlwriter","xmm","xmpp","xms","xmx","xn","xna","xochipilli","xor","xp","xpath","xpos","xquery","xr","xrange","xref","xs","xscale","xsd","xsi","xsl","xslt","xsp","xss","xstream","xt","xterm","xticks","xts","xtype","xunit","xuzhou","xv","xvi","xvii","xviii","xwork","xx","xxl","xxx","xxxx","xxxxx","xxxxxx","xxxxxxx","xxxxxxxx","xxxxxxxxx","xxxxxxxxxx","xy","xylem","xylene","xylia","xylina","xylophone","xylophonist","xymenes","xyz","xz","y","ya","yacc","yacht","yachting","yachtsman","yachtsmen","yachtswoman","yachtswomen","yack","yagi","yahoo","yahweh","yak","yakima","yakked","yakking","yakut","yakutsk","yale","yalies","yalonda","yalow","yalta","yalu","yam","yamaha","yaml","yammer","yamoussoukro","yanaton","yance","yancey","yancy","yang","yangon","yangtze","yank","yankee","yaounde","yap","yapped","yapping","yaqui","yard","yardage","yardarm","yardley","yardman","yardmaster","yardmen","yardstick","yarmulke","yarn","yaroslavl","yarrow","yasmeen","yasmin","yates","yaw","yawl","yawn","yawner","yawning","yaxis","yay","yb","yc","ycombinator","yd","ydata","ye","yea","yeager","yeah","yeahs","year","yearbook","yearling","yearlong","yearly","yearn","yearner","yearning","years","yeast","yeastiness","yeasty","yeats","yecch","yegg","yehudi","yehudit","yekaterinburg","yelena","yell","yellow","yellowhammers","yellowish","yellowknife","yellowness","yellowstone","yellowy","yelp","yelper","yeltsin","yemen","yemeni","yemenite","yen","yenisei","yenned","yenning","yentl","yeoman","yeomanry","yeomen","yep","yerevan","yerkes","yes","yesenia","yeshiva","yessed","yessing","yesterday","yesteryear","yet","yeti","yetta","yettie","yetty","yevette","yevtushenko","yew","yggdrasil","yi","yiddish","yield","yielded","yielding","yields","yii","yiiframework","yikes","yin","yip","yipe","yipped","yippee","yipping","ylab","ylabel","ylim","ym","ymax","ymca","ymha","ymin","ymir","yml","ymmv","yn","ynes","ynez","yo","yoda","yodel","yodeler","yoder","yoga","yoghurt","yogi","yogurt","yoke","yoked","yokel","yokes","yoking","yoknapatawpha","yoko","yokohama","yolanda","yolande","yolane","yolanthe","yolk","yon","yonder","yong","yonkers","yore","yorgo","yorick","york","yorke","yorker","yorkshire","yorktown","yoruba","yosemite","yoshi","yoshiko","yost","you","young","younger","youngish","youngster","youngstown","your","yourapp","yourclass","yourdomain","yours","yourself","yourselves","yourtable","youth","youthful","youthfulness","youths","youtrack","youtu","yovonnda","yow","yowl","yp","ypos","ypres","ypsilanti","yr","yrs","ys","ysabel","yscale","yt","ytterbium","yttrium","yuan","yuba","yucatan","yucca","yuck","yucky","yugo","yugoslav","yugoslavia","yugoslavian","yuh","yui","yuk","yuki","yukked","yukking","yukon","yul","yule","yuletide","yulma","yum","yuma","yummy","yunnan","yup","yuppie","yuri","yurik","yurt","yuv","yves","yvette","yvon","yvonne","yvor","yw","ywca","ywha","yy","yyy","yyyy","yyyymmdd","z","za","zabrina","zaccaria","zach","zacharia","zachariah","zacharie","zachary","zacherie","zachery","zack","zackariah","zag","zagging","zagreb","zahara","zaire","zairian","zak","zambezi","zambia","zambian","zamboni","zamenhof","zamora","zan","zandra","zane","zaneta","zaniness","zanuck","zany","zanzibar","zap","zapata","zaporozhye","zappa","zapped","zapper","zapping","zara","zarah","zared","zaria","zarla","zc","ze","zea","zeal","zealand","zealot","zealotry","zealous","zealousness","zeb","zebadiah","zebedee","zebra","zebu","zebulen","zebulon","zechariah","zed","zedekiah","zedong","zeffirelli","zeiss","zeitgeist","zeke","zelda","zelig","zellerbach","zelma","zen","zena","zend","zendframework","zenger","zenia","zenith","zeniths","zennist","zeno","zephaniah","zephyr","zephyrus","zeppelin","zerk","zero","zeroed","zeroes","zeroing","zeromq","zeros","zest","zestful","zestfulness","zesty","zeta","zeugma","zeus","zf","zh","zhdanov","zhengzhou","zhivago","zhukov","zi","zia","zibo","ziegfeld","ziegler","zig","zigged","zigging","ziggy","zigzag","zigzagged","zigzagger","zigzagging","zilch","zillion","zilvia","zimbabwe","zimbabwean","zimmerman","zinc","zincked","zincking","zindex","zing","zingy","zinnia","zion","zionism","zionist","zip","zipcode","zipfile","zipped","zipper","zipping","zippy","zips","zircon","zirconium","zit","zita","zitella","zither","zk","zlib","zloty","zm","zmq","zn","zodiac","zodiacal","zoe","zola","zollie","zolly","zomba","zombi","zombie","zonal","zonda","zondra","zone","zoned","zoneddatetime","zoneid","zones","zoning","zonked","zonnya","zoo","zookeeper","zookeepers","zoological","zoologist","zoology","zoom","zoomed","zooming","zoophyte","zoophytic","zora","zorah","zorana","zorina","zorine","zorn","zoroaster","zoroastrian","zoroastrianism","zorro","zosma","zounds","zr","zrich","zs","zsazsa","zsh","zsigmondy","zu","zubenelgenubi","zubeneschamali","zucchini","zukor","zulema","zulu","zululand","zuni","zuzana","zwieback","zwingli","zworykin","zx","zxing","zydeco","zygote","zygoteinit","zygotic","zymurgy","zz","zzz"]}')},12079:e=>{"use strict";e.exports=JSON.parse('{"dictionariesSupplementaryArr":["a256","a2dpsource","aabb","aafwk","abilityname","abilityslice","abnormally","accelerates","accents","accommodates","aces","acmmax","acn","acquires","activates","actived","adapts","adblock","adcp","adjusts","adpu","adts","advertisements","aec","affinities","agrees","aiding","aifc","alerting","algrithom","aligns","allowlist","alpha","alpn","alpnprotocols","alterase","alternating","altitudes","amb","ambisonic","ambisonics","amr","animatable","annually","antialias","antialiasing","apdu","apecified","apertures","appselect","arcs","arfcn","arkui","arrarybuffer","arraybuffer","arrlist","ashmem","askpass","asr","associating","asy","asyn","asynchronized","atime","atio","atomicservice","atqa","attaches","attachment0","attackers","attribs","audios","authenticates","authinfo","authmode","autocorrect","autosizing","averr","avoidareachange","avrcp","avscreencapture","avsession","backforwardcache","backgrounding","backpress","backs","base64","bassboost","batching","beidou","beta1","bevels","bgra","bidirectionally","bitrates","blending","blendmode","blocklist","bms","bolder","bonded","bonding","booted","brightens","brighter","brightest","browsable","bscribes","bsic","bssid","bufferfi","bufferfv","bufferiv","bufferqueue","bufferuiv","bundlename","bundlestat","buttonconfig","bypassed","bypassing","bytrace","callbackfn","camped","canceling","cancelling","cancels","capabilitys","capturers","ccm","cdma","ce","certsign","cfa","cfb","cft","channeldown","channelup","checkboxgroup","checksum","chload","chromaticities","chromaticity","chrominance","circled","clamped","clamps","cleartext","clouddata","cloudfile","coincides","collaborated","collapses","collations","collectable","colno","colorfilter","commonevent","complied","complies","compositing","compresses","concatenates","cone","conferencing","confpersist","connectable","consecutively","contentful","contex","controlpanel","controlparam","convertxml","cpid","cpuprofiler","cpx","cpy","creatable","crl","crls","crops","crosshair","crossings","crowdtest","crowdtested","crowdtesting","csh","cubemap","cug","cyclewindows","cyclically","daltonization","darkens","darkest","dataability","datareceive","dataresubmissionhandler","datashare","datasync","dbm","dci","ddmp","de","deactivated","deactivates","deactivation","decodes","decomposed","decompressed","decompresses","decompressing","decompression","decr","decrypts","defaulted","delegator","deletable","deletefile","denormalization","denormalize","denormalized","densitys","deregistered","deregisters","deselected","designative","desynchronized","detaches","detaching","detents","developtools","devicemanager","dfactor","dfx","dialling","differed","digidesign","digitized","dimbehind","dirent","dirxml","disables","disallowed","disallowing","disallowlist","disallows","discards","discharging","disconnecting","disconnection","disconnects","discription","dismissal","dismissing","dispatches","displacement","dlna","dlp","dnd","dng","dnses","donot","dop","downlink","downmix","dpad","dragbar","drains","drawbuffer","drm","dsda","dsds","dsf","dtmf","ducked","ducking","earfcn","earphones","earpiece","easylist","ebu","ece","edr","efuse","efx","egid","ehrpd","ejectclosecd","emphasized","emption","encapsulates","encipherment","encloses","encompassed","encrypts","endc","endx","endy","enhancing","enqueued","enrolled","enrolls","enumeratable","equirectangular","erasing","eration","errcode","erver","esim","ethiopic","ets","euc","euid","evdo","evenodd","evicted","excepted","exempted","extention","f1","fatally","faultlog","faultlogger","fchmod","fchown","fdatasync","fdn","fdopen","fileio","fileshare","fillets","finer","flac","flashpix","flg","flips","flushes","foiling","foldable","followx","foregrounding","formatable","formulat","forwardmail","fov","freesize","fstat","fsync","ftruncate","fts","fulfills","fuma","furse","gamepad","gba","gbk","geofence","geofences","getunfilteredlinkurl","glasses","glonass","gnss","goaway","granting","graphicseditor","greate","gtc","gunzip","gz_headerp","gzbuffer","gzclearerr","gzclose","gzcloser","gzclosew","gzcompress","gzdirect","gzdopen","gzeof","gzerror","gzflush","gzfread","gzfwrite","gzgetc","gzgets","gzoffset","gzopen","gzopenw","gzprintf","gzputc","gzputs","gzread","gzrewind","gzseek","gzsetparams","gztell","gzungetc","gzwrite","hailing","handheld","handhold","handsfree","handsfreeunit","hanguel","hangups","hanja","hankaku","hapmodule","haps","haptic","haptics","hce","hcrc","hdcp","hdoc","headed","headerp","headersreceive","headphones","heapsnapshot","heating","heavier","henkan","hevc","hexadecagonal","hfp","hibernates","hibernating","hichecker","hidebug","hierarchically","hifi","hilog","hinote","hinting","hisysevent","hitrace","hiview","hiviewdfx","hkdf","hlg","hogp","hsp","hspa","hspap","htmltext","huks","hwid","icann","icq","id","idm","ifaces","illuminated","ima","imager","imagevideo","imclient","imengine","immersive","imms","improperly","ims","imsi","inactived","inactivity","inclusiza","inconsistency","indata","indcating","ineffective","injects","ino","inputer","inputers","inputevent","inputmethod","inputmethodengine","inquired","inspected","inspectors","instanced","intercepted","intercepting","interchanged","interleaved","internalformat","internationalized","interpolating","interpolatingSpring","interpolator","interworking","invalidates","ipaddr","ipsec","irnss","irradiance","isdn","isim","issuers","ivi","iwlan","jank","jfx","jis","judged","kaihong","kbdillum","kbdinputassist","kbps","kdf","keyframe","keyguard","keyof","keyusage","khronos","kneading","kvpairs","kvstore","lable","lacked","lanes","lasted","lastmode","latitudeyyy","latitudezzz","latn","layoutable","lbitfield","lboolean","lbyte","lchown","lclampf","ldpi","lenum","leye","lfloat","libraryname","lifted","lifts","lightens","lightupEffect","linearly","lintptr","listened","llbackfn","locates","lockdown","lockscreen","lod","loggable","logoff","longitudinally","lowercased","lpx","lru","lseek","lshort","lsizei","lsizeiptr","lstat","lubyte","luint","luma","lumination","lushort","lux","mah","malham","map","mcc","md5","mdns","mdnserror","mediaquery","meid","meshes","messageerror","metered","metering","mgf","mgf1","mifare","minibar","minimizing","minors","minorsmode","mirrored","misconfigured","mismatches","missions","mkdtemp","mmax","mmi","mmicode","mnc","mnote","moderately","moitor","moov","mori","mplink","mschap","msdos","msdp","mserr","msn","mtp","muhenkan","multifrequency","multimodal","multiplies","multisample","multisim","multitask","mutates","mutes","narrowband","navigations","nci","ndef","neglects","negotiated","neighborhoods","netmask","nets","nextgroup","nitems","nlink","nmea","nnrt","nnrtdevice","no_gzcompress","nodownload","nofullscreen","nopadding","noremoteplayback","normalizer","notifies","notifying","nprintf","numpad","nvalidates","nweb","oaep","obscured","ocsp","ofb","offhook","offscreen","omapi","oncancel","ondataresubmission","ondataresubmitted","onexit","onfinish","onframe","onmessageerror","onrepeat","oob","oobinline","opendocument","openexr","openharmony","opentype","openvpn","oper","operated","operatorconfigs","opkey","opl","opname","option","opto","originating","osd","ota","ott","ounted","outlines","overheated","overlimit","overline","ovpn","owningproperties","ows","oximeter","p2p","paddings","paginated","paramcheck","parameterf","parameteri","paren","parseinfo","participating","passpoint","pastedata","patchlevel","pbap","pbo","pda","pdu","peap","persion","persistable","persistently","perso","personalisation","pertaining","pfa","pfb","pgo","phonemes","photographing","phy","pickers","pixelmap","pkzip","pkzip_bug_workaround","playpause","playstate","plmn","plurals","plusminus","pmm","pnn","pobox","polylines","pooled","ppid","pread","precisiontype","precomposed","precomposited","precon","preconnect","preconnectable","preconnected","preconnecting","preempted","preexisting","preferentially","prefetched","prefetcher","prefetches","prefetching","preinstalled","prelaunch","preloads","premises","premultiplied","premultiply","prepares","preresolve","presentationml","presently","presistent","prevgroup","previewed","prikey","primaries","proactively","prohibits","promisify","provisioned","proxyed","psc","psec","psk","psrc","pss","pssh","puk","pvr","quant","querier","queriers","qzss","racing","radiuses","rasterizer","rawfile","rdb","rdev","reallocate","reassociate","rebounds","recalculated","reclaimed","reconfiguration","reconfirm","reconfirmed","recovered","recovering","recovers","recursions","redefines","redirections","reenter","refill","refresher","refusing","rehandshake","rejects","relocation","remidner","remotedevice","removable","renderbuffer","renderbuffertarget","renegotiation","repaired","repayment","repeates","replacer","reposition","rerouting","resfile","resizeable","resmgr","resourceschedule","restores","restricts","resubmission","resubmitted","resultsets","resumed","retried","reverses","revocation","revoked","rewinding","reye","rfcomm","rfid","rfkill","ringtone","ringtones","rle","rmdir","rotatable","rscp","rsrp","rtcp","rtd","rtt","ruim","ruleset","rwt","s5","sac","sae","sak","sandboxes","sar","satellites","sbas","sbc","scdma","scene","sco","scrambling","screencapture","screenlock","screenoff","screensaver","scrolldown","scrollup","sdpi","sdr","searchsetter","sece","secinfo","securityguard","seeked","semicircles","sendable","sensing","sequenceable","setsockopt","settingsdata","seventh","sfactor","sgi","sha1","shadertype","sharedarraybuffer","shenzhen","shortkey","showcounter","shrinks","shuts","sigalgs","silenced","singly","skews","slidable","sliderstyle","sm3","smil","smpte","smsc","snoozing","snorm","snr","socid","softer","sonification","sortings","spatialization","spawns","spay","spdy","speakerphone","specificed","speedratings","spellcheck","spn","spooler","spp","spreadsheetml","springs","spry","spy","srgb","ssp","stablization","statfs","statvfs","stk","stopcd","storei","storge","str","strikethrough","strm","stroked","strokes","structurally","stuffit","subassembies","subassemblies","subcomponents","subframe","subframes","subkeys","subnode","subpixel","subresource","subscrbers","subscribale","subscribes","subsec","substate","subtitles","subtypes","subwindow","subwindows","superimposed","suscriber","suscribes","suspending","suspends","swanctl","switchvideomode","symantec","symbolglyph","synched","synchronizes","synchronizing","synth","syscreen","sysevent","sysex","sysrq","systemapp","systembar","systemsize","systemui","tailoring","talkback","taskmanager","taskpool","tbla","tcpnodelay","tdm","tdscdma","telecom","tethering","texel","textarget","textblob","textclock","texttimer","tga","thirdparty","throttled","timeinterfaceimpl","tlsv12","tlsv13","tnf","tones","totalsize","touchpad","trackinfo","tranlisterated","transcode","transferable","transfunc","transliterated","transliterator","transpilation","trashed","traversed","traverses","truncates","trustlist","tsbundle","ttls","tunneled","txpower","uarfcn","ubset","ucs","udid","uids","uint8","uint8arr","uitest","umalqura","unadjustable","unapply","unassigned","unauth","unbinding","unblock","unblocking","unbond","uncalibrated","uncategorized","uncatergorized","uncertainty","unchained","unchangeable","unclearable","uncompress","unconditional","undefer","undisturbed","unduck","unducked","unequal","unfiltered","unfocusable","unfocused","unhealthy","unhold","unicom","unicon","uniform1ui","uniforms","unimplemented","uninit","uninitialize","uninitializes","uninstallation","uninstalls","unlinked","unlocking","unlocks","unmap","unmapping","unmarshalling","unmountable","unmounted","unmute","unmuted","unmutes","unobserve","unperceivable","unpipe","unpremultiplied","unprepare","unpressed","unregistered","unregistering","unregisters","unremovable","unrendered","unrestricted","unrevoked","unsecure","unsent","unshare","unspec","unsubscribes","unsuccessfully","unsupport","unsuspended","untyped","uplink","useriam","userspace","usim","ussd","utd","utilized","utimes","uuids","uwb","v9","varyings","vibrates","vibrating","viewframe","vlr","voicemail","voidpf","volte","volumemanager","vorbis","vpr","vss","vsync","wakes","waking","wallpapers","wantagent","wapi","wappush","warmup","watchers","waterflow","wcdma","wcdmn","weakmap","weakset","wearables","weighing","wep","wideband","wifiext","wimax","wireframe","wma","wmp","wmv","wmx","wordprocessingml","wordprocessor","workscheduler","woy","wrappedvalue","writemask","writev","wukong","wvx","wwan","x25519","x509","xbitmap","xcomponent","xfer","xflags","xldpi","xoffset","xxldpi","xxxldpi","ycbcr","ycrcb","yoffset","zenkaku","zfail","zoffset","zoomin","zoomout","zoomreset","zooms","zpass"]}')},79170:e=>{"use strict";e.exports=JSON.parse('[{"badWord":"option","suggestion":"options","ignore":["options","optionMode","_OPTION_"]}]')},8910:e=>{"use strict";e.exports=JSON.parse('[{"word":"ability","files":[".*d.ts$"]}]')},68762:e=>{"use strict";e.exports=JSON.parse('{"module":{"package":"ohos.global.systemres","name":"entry","type":"entry","generateBuildHash":true,"deviceTypes":["default","tv","car","wearable","tablet","2in1"],"deliveryWithInstall":true,"installationFree":false,"definePermissions":[{"name":"ohos.permission.ANSWER_CALL","grantMode":"user_grant","since":9,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_answer_call","description":"$string:ohos_desc_answer_call"},{"name":"ohos.permission.USE_BLUETOOTH","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DISCOVER_BLUETOOTH","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_BLUETOOTH","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_BLUETOOTH","grantMode":"user_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false,"label":"$string:ohos_lab_access_bluetooth","description":"$string:ohos_desc_access_bluetooth"},{"name":"ohos.permission.GET_BLUETOOTH_LOCAL_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_BLUETOOTH_PEERS_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERNET","grantMode":"system_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_internet","description":"$string:ohos_desc_internet"},{"name":"ohos.permission.MODIFY_AUDIO_SETTINGS","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_modify_audio_settings","description":"$string:ohos_desc_modify_audio_settings"},{"name":"ohos.permission.ACCESS_NOTIFICATION_POLICY","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.READ_CALENDAR","grantMode":"user_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_calendar","description":"$string:ohos_desc_read_calendar"},{"name":"ohos.permission.READ_CALL_LOG","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_call_log","description":"$string:ohos_desc_read_call_log"},{"name":"ohos.permission.READ_CELL_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_cell_messages","description":"$string:ohos_desc_read_cell_messages"},{"name":"ohos.permission.READ_CONTACTS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_contacts","description":"$string:ohos_desc_read_contacts"},{"name":"ohos.permission.GET_TELEPHONY_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_telephony_state","description":"$string:ohos_desc_get_telephony_state"},{"name":"ohos.permission.GET_PHONE_NUMBERS","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_phone_numbers","description":"$string:ohos_desc_get_phone_numbers"},{"name":"ohos.permission.READ_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_messages","description":"$string:ohos_desc_read_messages"},{"name":"ohos.permission.RECEIVE_MMS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_receive_mms","description":"$string:ohos_desc_receive_mms"},{"name":"ohos.permission.RECEIVE_SMS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_receive_sms","description":"$string:ohos_desc_receive_sms"},{"name":"ohos.permission.RECEIVE_WAP_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_receive_wap_messages","description":"$string:ohos_desc_receive_wap_messages"},{"name":"ohos.permission.MICROPHONE","grantMode":"user_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_microphone","description":"$string:ohos_desc_microphone"},{"name":"ohos.permission.SEND_MESSAGES","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_send_messages","description":"$string:ohos_desc_send_messages"},{"name":"ohos.permission.WRITE_CALENDAR","grantMode":"user_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_calendar","description":"$string:ohos_desc_write_calendar"},{"name":"ohos.permission.WRITE_CALL_LOG","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_call_log","description":"$string:ohos_desc_write_call_log"},{"name":"ohos.permission.WRITE_CONTACTS","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_contacts","description":"$string:ohos_desc_write_contacts"},{"name":"ohos.permission.DISTRIBUTED_DATASYNC","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_distributed_datasync","description":"$string:ohos_desc_distributed_datasync"},{"name":"ohos.permission.DISTRIBUTED_SOFTBUS_CENTER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":true},{"name":"ohos.permission.MANAGE_VOICEMAIL","grantMode":"user_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_manage_voicemail","description":"$string:ohos_desc_manage_voicemail"},{"name":"ohos.permission.REQUIRE_FORM","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.AGENT_REQUIRE_FORM","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.LOCATION_IN_BACKGROUND","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false,"label":"$string:ohos_lab_location_in_background","description":"$string:ohos_desc_location_in_background"},{"name":"ohos.permission.LOCATION","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_location","description":"$string:ohos_desc_location"},{"name":"ohos.permission.APPROXIMATELY_LOCATION","grantMode":"user_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":true,"label":"$string:ohos_lab_approximately_location","description":"$string:ohos_desc_approximately_location"},{"name":"ohos.permission.MEDIA_LOCATION","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_media_location","description":"$string:ohos_desc_media_location"},{"name":"ohos.permission.GET_NETWORK_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_network_info","description":"$string:ohos_desc_get_network_info"},{"name":"ohos.permission.PLACE_CALL","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_place_call","description":"$string:ohos_desc_place_call"},{"name":"ohos.permission.CAMERA","grantMode":"user_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_camera","description":"$string:ohos_desc_camera"},{"name":"ohos.permission.SET_NETWORK_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_network_info","description":"$string:ohos_desc_set_network_info"},{"name":"ohos.permission.REMOVE_CACHE_FILES","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_MEDIA","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_read_media","description":"$string:ohos_desc_read_media"},{"name":"ohos.permission.REBOOT","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUNNING_LOCK","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_MEDIA","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_write_media","description":"$string:ohos_desc_write_media"},{"name":"ohos.permission.SET_TIME","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_time","description":"$string:ohos_desc_set_time"},{"name":"ohos.permission.SET_TIME_ZONE","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_time_zone","description":"$string:ohos_desc_set_time_zone"},{"name":"ohos.permission.DOWNLOAD_SESSION_MANAGER","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_download_session_manager","description":"$string:ohos_desc_download_session_manager"},{"name":"ohos.permission.COMMONEVENT_STICKY","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_commonevent_sticky","description":"$string:ohos_desc_commonevent_sticky"},{"name":"ohos.permission.SYSTEM_FLOAT_WINDOW","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PRIVACY_WINDOW","grantMode":"system_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.POWER_MANAGER","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REFRESH_USER_ACTION","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.POWER_OPTIMIZATION","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REBOOT_RECOVERY","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_LOCAL_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_manage_local_accounts","description":"$string:ohos_desc_manage_local_accounts"},{"name":"ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_interact_across_local_accounts","description":"$string:ohos_desc_interact_across_local_accounts"},{"name":"ohos.permission.VIBRATE","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_vibrate","description":"$string:ohos_desc_vibrate"},{"name":"ohos.permission.SYSTEM_LIGHT_CONTROL","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACTIVITY_MOTION","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_activity_motion","description":"$string:ohos_desc_activity_motion"},{"name":"ohos.permission.READ_HEALTH_DATA","grantMode":"user_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_health_data","description":"$string:ohos_desc_read_health_data"},{"name":"ohos.permission.CONNECT_IME_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_connect_ime_ability","description":"$string:ohos_desc_connect_ime_ability"},{"name":"ohos.permission.CONNECT_SCREEN_SAVER_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_SCREEN_SAVER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_SCREEN_SAVER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_WALLPAPER","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_wallpaper","description":"$string:ohos_desc_set_wallpaper"},{"name":"ohos.permission.GET_WALLPAPER","grantMode":"system_grant","availableLevel":"system_basic","provisionEnable":true,"since":7,"deprecated":"","distributedSceneEnable":false,"label":"$string:ohos_lab_get_wallpaper","description":"$string:ohos_desc_get_wallpaper"},{"name":"ohos.permission.CHANGE_ABILITY_ENABLED_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_MISSIONS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"since 9","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLEAN_BACKGROUND_PROCESSES","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.KEEP_BACKGROUND_RUNNING","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPDATE_CONFIGURATION","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPDATE_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.FACTORY_RESET","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ASSIST_DEVICE_UPDATE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPDATE_MIGRATE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GRANT_SENSITIVE_PERMISSIONS","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REVOKE_SENSITIVE_PERMISSIONS","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SENSITIVE_PERMISSIONS","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS_EXTENSION","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_interact_across_local_accounts_extension","description":"$string:ohos_desc_interact_across_local_accounts_extension"},{"name":"ohos.permission.LISTEN_BUNDLE_CHANGE","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_BUNDLE_INFO","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCELEROMETER","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_accelerometer","description":"$string:ohos_desc_accelerometer"},{"name":"ohos.permission.GYROSCOPE","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_gyroscope","description":"$string:ohos_desc_gyroscope"},{"name":"ohos.permission.GET_BUNDLE_INFO_PRIVILEGED","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SHORTCUTS","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.radio.ACCESS_FM_AM","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_TELEPHONY_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_set_telephony_state","description":"$string:ohos_desc_set_telephony_state"},{"name":"ohos.permission.START_ABILIIES_FROM_BACKGROUND","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"since 9","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_ABILITIES_FROM_BACKGROUND","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.BUNDLE_ACTIVE_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_bundle_active_info","description":"$string:ohos_desc_bundle_active_info"},{"name":"ohos.permission.START_INVISIBLE_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.sec.ACCESS_UDID","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.LAUNCH_DATA_PRIVACY_CENTER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_MEDIA_RESOURCES","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PUBLISH_AGENT_REMINDER","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_publish_agent_reminder","description":"$string:ohos_desc_publish_agent_reminder"},{"name":"ohos.permission.CONTROL_TASK_SYNC_ANIMATOR","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_control_task_sync_animator","description":"$string:ohos_desc_control_task_sync_animator"},{"name":"ohos.permission.INPUT_MONITORING","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_MISSIONS","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NOTIFICATION_CONTROLLER","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_notification_controller","description":"$string:ohos_desc_notification_controller"},{"name":"ohos.permission.CONNECTIVITY_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_NET_STRATEGY","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_NETWORK_STATS","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_VPN","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_ABILITY_CONTROLLER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_USER_IDM","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_USER_IDM","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NETSYS_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_BIOMETRIC","grantMode":"system_grant","availableLevel":"normal","since":6,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_USER_AUTH_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_FINGERPRINT_AUTH","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PIN_AUTH","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_AUTH_RESPOOL","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ENFORCE_USER_IDM","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.GET_RUNNING_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLEAN_APPLICATION_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUNNING_STATE_OBSERVER","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CAPTURE_SCREEN","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_INFO_INTERNAL","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_WIFI_INFO","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_PEERS_MAC","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_LOCAL_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_WIFI_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_WIFI_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_WIFI_CONNECTION","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DUMP","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_WIFI_HOTSPOT","grantMode":"system_grant","availableLevel":"system_core","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_ALL_APP_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_core","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SECURE_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","since":7,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_DFX_SYSEVENT","grantMode":"system_grant","availableLevel":"system_basic","since":8,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_HIVIEW_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_HIVIEW_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_ENTERPRISE_DEVICE_ADMIN","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_ENTERPRISE_INFO","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_BUNDLE_DIR","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SUBSCRIBE_MANAGED_EVENT","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_DATETIME","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_GET_DEVICE_INFO","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_RESET_DEVICE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_WIFI","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_GET_NETWORK_INFO","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_ACCOUNT_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_BUNDLE_INSTALL_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_NETWORK","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SET_APP_RUNNING_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_SCREENOFF_TIME","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SECURITY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_BLUETOOTH","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_WIFI","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_RESTRICTIONS","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_APPLICATION","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_LOCATION","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_REBOOT","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_LOCK_DEVICE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_GET_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_INSTALL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_CERTIFICATE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_SYSTEM","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_RESTRICT_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_USB","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_MANAGE_NETWORK","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_SET_BROWSER_POLICY","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_OPERATE_DEVICE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_ADMIN_MANAGE","grantMode":"system_grant","availableLevel":"system_basic","availableType":"MDM","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENTERPRISE_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NFC_TAG","grantMode":"system_grant","availableLevel":"normal","since":7,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.NFC_CARD_EMULATION","grantMode":"system_grant","availableLevel":"normal","since":8,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.PERMISSION_USED_STATS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NOTIFICATION_AGENT_CONTROLLER","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MOUNT_UNMOUNT_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MOUNT_FORMAT_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.STORAGE_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.BACKUP","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLOUDFILE_SYNC_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLOUDFILE_SYNC","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.FILE_ACCESS_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_DEFAULT_APPLICATION","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_DEFAULT_APPLICATION","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_IDS","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_DISPOSED_APP_STATUS","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DLP_FILE","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PROVISIONING_MESSAGE","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SYSTEM_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_IMAGEVIDEO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_imagevideo","description":"$string:ohos_desc_read_imagevideo"},{"name":"ohos.permission.READ_AUDIO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_audio","description":"$string:ohos_desc_read_audio"},{"name":"ohos.permission.READ_DOCUMENT","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_document","description":"$string:ohos_desc_read_document"},{"name":"ohos.permission.WRITE_IMAGEVIDEO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_imagevideo","description":"$string:ohos_desc_write_imagevideo"},{"name":"ohos.permission.WRITE_AUDIO","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_audio","description":"$string:ohos_desc_write_audio"},{"name":"ohos.permission.WRITE_DOCUMENT","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_document","description":"$string:ohos_desc_write_document"},{"name":"ohos.permission.ABILITY_BACKGROUND_COMMUNICATION","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.securityguard.REPORT_SECURITY_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.securityguard.REQUEST_SECURITY_MODEL_RESULT","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.securityguard.REQUEST_SECURITY_EVENT_INFO","grantMode":"system_grant","availableLevel":"system_core","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.ACCESS_CERT_MANAGER_INTERNAL","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_CERT_MANAGER","grantMode":"system_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.GET_LOCAL_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_DISTRIBUTED_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_DISTRIBUTED_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_ACCESSIBILITY_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_ACCESSIBILITY_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PUSH_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_APP_PUSH_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_APP_PUSH_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_AUDIO_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_CAMERA_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECEIVER_STARTUP_COMPLETED","grantMode":"system_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_WHOLE_CALENDAR","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_whole_calendar","description":"$string:ohos_desc_read_whole_calendar"},{"name":"ohos.permission.WRITE_WHOLE_CALENDAR","grantMode":"user_grant","availableLevel":"system_basic","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_write_whole_calendar","description":"$string:ohos_desc_write_whole_calendar"},{"name":"ohos.permission.ACCESS_SERVICE_DM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUN_ANY_CODE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.APP_TRACKING_CONSENT","grantMode":"user_grant","availableLevel":"normal","since":9,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true,"label":"$string:ohos_lab_app_tracking_consent","description":"$string:ohos_desc_app_tracking_consent"},{"name":"ohos.permission.PUBLISH_SYSTEM_COMMON_EVENT","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SCREEN_LOCK_INNER","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PRINT","grantMode":"system_grant","since":10,"deprecated":"","availableLevel":"normal","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_PRINT_JOB","grantMode":"system_grant","since":10,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CHANGE_OVERLAY_ENABLED_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CONNECT_CELLULAR_CALL_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.CONNECT_IMS_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SENSING_WITH_ULTRASOUND","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PROXY_AUTHORIZATION_URI","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_ENTERPRISE_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_INSTALLED_BUNDLE_LIST","grantMode":"user_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_get_installed_bundle_list","description":"$string:ohos_desc_get_installed_bundle_list"},{"name":"ohos.permission.ACCESS_CAST_ENGINE_MIRROR","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_CAST_ENGINE_STREAM","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CLOUDDATA_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DEVICE_STANDBY_EXEMPTION","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RESTRICT_APPLICATION_ACTIVE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SENSOR","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UPLOAD_SESSION_MANAGER","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PREPARE_APP_TERMINATE","grantMode":"system_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_ECOLOGICAL_RULE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SCENE_CODE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.FILE_GUARD_MANAGER","grantMode":"system_grant","availableLevel":"system_core","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_FILE_GUARD_POLICY","grantMode":"system_grant","availableLevel":"system_core","availableType":"MDM","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.securityguard.SET_MODEL_STATE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.hsdr.HSDR_ACCESS","grantMode":"system_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.SUPPORT_USER_AUTH","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CAPTURE_VOICE_DOWNLINK_AUDIO","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_INTELLIGENT_VOICE","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_ENTERPRISE_MDM_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_ENTERPRISE_NORMAL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_SELF_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.OBSERVE_FORM_RUNNING","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_DEVICE_AUTH_CRED","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.UNINSTALL_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECOVER_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_DOMAIN_ACCOUNTS","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_UNREMOVABLE_NOTIFICATION","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.QUERY_ACCESSIBILITY_ELEMENT","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACTIVATE_THEME_PACKAGE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ATTEST_KEY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WAKEUP_VOICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WAKEUP_VISION","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENABLE_DISTRIBUTED_HARDWARE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":true},{"name":"ohos.permission.ACCESS_DISTRIBUTED_HARDWARE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.INSTANTSHARE_SWITCH_CONTROL","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_INSTANTSHARE_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_INSTANTSHARE_PRIVATE_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SECURE_PASTE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_PASTEBOARD","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_pasteboard","description":"$string:ohos_desc_read_pasteboard"},{"name":"ohos.permission.ACCESS_MCP_AUTHORIZATION","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_BUNDLE_RESOURCES","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_CODE_PROTECT_INFO","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_ADVANCED_SECURITY_MODE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_DEVELOPER_MODE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RUN_DYN_CODE","grantMode":"system_grant","availableLevel":"normal","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.COOPERATE_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PERCEIVE_TRAIL","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.DISABLE_PERMISSION_DIALOG","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXECUTE_INSIGHT_INTENT","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_ACTIVATION_LOCK","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.VERIFY_ACTIVATION_LOCK","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_PRIVATE_PHOTOS","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_OUC","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.TRUSTED_RING_HASH_DATA_PERMISSION","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_TRUSTED_RING","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_TRUSTED_RING","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INPUT_CONTROL_DISPATCHING","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERCEPT_INPUT_EVENT","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SECURITY_PRIVACY_CENTER","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SECURITY_PRIVACY_ADVICE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_SECURITY_PRIVACY_ADVICE","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_SECURITY_PRIVACY_MESSAGER","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECORD_VOICE_CALL","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_APP_INSTALL_INFO","grantMode":"system_grant","since":11,"availableLevel":"system_core","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.RECEIVE_APP_INSTALL_INFO_CHANGE","grantMode":"system_grant","since":11,"availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_ADVANCED_SECURITY_MODE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.STORE_PERSISTENT_DATA","grantMode":"system_grant","availableLevel":"normal","since":11,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_HIVIEWX","grantMode":"system_grant","since":11,"deprecated":"","availableLevel":"system_basic","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PASSWORDVAULT_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PRIVATE_SPACE_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PRIVATE_SPACE_PASSWORD_PROTECT","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_LOWPOWER_MANAGER","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_USB","grantMode":"system_grant","availableLevel":"system_basic","since":10,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_USB_SERIAL","grantMode":"system_grant","availableLevel":"system_basic","since":16,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_SCSI_PERIPHERAL","grantMode":"system_grant","availableLevel":"system_basic","since":16,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_EXTENSIONAL_DEVICE_DRIVER","grantMode":"system_grant","availableLevel":"normal","since":10,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DDK_DRIVERS","grantMode":"system_grant","availableLevel":"system_basic","since":16,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"isKernelEffect":false,"hasValue":true},{"name":"ohos.permission.ACCESS_DDK_HID","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_APP_BOOT","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_HIVIEWCARE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CONNECT_UI_EXTENSION_ABILITY","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_WRITE_DOWNLOAD_DIRECTORY","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_write_download_directory","description":"$string:ohos_desc_read_write_download_directory"},{"name":"ohos.permission.READ_WRITE_DOCUMENTS_DIRECTORY","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_write_documents_directory","description":"$string:ohos_desc_read_write_documents_directory"},{"name":"ohos.permission.READ_WRITE_DESKTOP_DIRECTORY","grantMode":"user_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false,"label":"$string:ohos_lab_read_write_desktop_directory","description":"$string:ohos_desc_read_write_desktop_directory"},{"name":"ohos.permission.FILE_ACCESS_PERSIST","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_SANDBOX_POLICY","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_ACCOUNT_KIT_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.REQUEST_ANONYMOUS_ATTEST","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_ACCOUNT_KIT_UI","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_RECENT_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_CLOUD_SYNC_CONFIG","grantMode":"system_grant","availableLevel":"normal","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_CLOUD_SYNC_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_FINDDEVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_FINDSERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_FINDSERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.TRIGGER_ACTIVATIONLOCK","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_USB_CONFIG","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_PRIVACY_PUSH_DATA","grantMode":"system_grant","availableLevel":"system_core","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_STATUSBAR_ICON","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_SYSTEM_DIALOG","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SYSTEM_AUDIO_EFFECTS","grantMode":"system_grant","availableLevel":"system_basic","since":11,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_NEARLINK","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_NEARLINK","grantMode":"user_grant","availableLevel":"normal","since":12,"deprecated":"","provisionEnable":false,"distributedSceneEnable":false,"label":"$string:ohos_lab_access_nearlink","description":"$string:ohos_desc_access_nearlink"},{"name":"ohos.permission.GET_NEARLINK_LOCAL_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_NEARLINK_PEER_MAC","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PROTOCOL_DFX_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_PROTOCOL_DFX_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_RGM","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ALLOW_UPGRADE_GUIDE_ACCESS","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_USER_ACCOUNT_INFO","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_ACCOUNT_LOGIN_STATE","grantMode":"system_grant","availableLevel":"normal","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_ACCOUNT_LOGIN_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS_AS_USER","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.NOTIFY_DEBUG_ASSERT_RESULT","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_AI_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_HEALTH_MOTION","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.hsdr.REQUEST_HSDR","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.QUERY_PASSWORD_VAULT_DATA","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SUBSCRIBE_NOTIFICATION_WINDOW_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CHANGE_DISPLAYMODE","grantMode":"system_grant","since":12,"deprecated":"","availableLevel":"system_core","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_MEDIALIB_THUMB_DB","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MIGRATE_DATA","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DYNAMIC_ICON","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXEMPT_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXEMPT_CAMERA_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXEMPT_MICROPHONE_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.EXEMPT_LOCATION_PRIVACY_INDICATOR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_SUPER_PRIVACY","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_SUPER_PRIVACY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.LAUNCH_SPAMSHIELD_PAGE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SPAMSHIELD_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CHANGE_BUNDLE_UNINSTALL_STATE","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_STYLUS_EVENT","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SERVICE_NAVIGATION_INFO","grantMode":"system_grant","availableLevel":"normal","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_GTOKEN_POLICY","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.READ_GTOKEN_POLICY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ENABLE_PROFILER","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.USE_CLOUD_DRIVE_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_CLOUD_BACKUP_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.USE_CLOUD_COMMON_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_DLP_CRED","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.START_SHORTCUT","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_INPUT_INFRARED_EMITTER","grantMode":"system_grant","availableLevel":"normal","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PRELOAD_APPLICATION","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.SET_PROCESS_CACHE_STATE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PRELOAD_UI_EXTENSION_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SYSTEM_APP_CERT","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_USER_TRUSTED_CERT","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.MANAGE_SETTINGS","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_LOCAL_BACKUP","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.CAST_AUDIO_OUTPUT","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":true},{"name":"ohos.permission.ACCESS_TEXTAUTOFILL_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.KILL_APP_PROCESSES","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.WRITE_RINGTONE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SCREEN_LOCK_MEDIA_DATA","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SCREEN_LOCK_ALL_DATA","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.GET_ACCOUNT_MINORS_INFO","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_LOCAL_THEME","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SHADER_CACHE_DIR","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.INSTALL_CLONE_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.UNINSTALL_CLONE_BUNDLE","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.PROTECT_SCREEN_LOCK_DATA","grantMode":"system_grant","availableLevel":"normal","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_DEVICE_COLLABORATION_PRIVATE_ABILITY","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_RINGTONE_RESOURCE","grantMode":"system_grant","availableLevel":"system_core","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_FILE_CONTENT_SHARE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false},{"name":"ohos.permission.ACCESS_SEARCH_SERVICE","grantMode":"system_grant","availableLevel":"system_basic","since":12,"deprecated":"","provisionEnable":true,"distributedSceneEnable":false}]}}')},23725:e=>{"use strict";e.exports=JSON.parse('{"SystemCapability":["SystemCapability.Applications.CalendarData","SystemCapability.ArkUI.ArkUI.Full","SystemCapability.ArkUI.ArkUI.Lite","SystemCapability.ArkUI.ArkUI.Napi","SystemCapability.ArkUI.ArkUI.Libuv","SystemCapability.ArkUI.UiAppearance","SystemCapability.BundleManager.BundleFramework","SystemCapability.BundleManager.DistributedBundleFramework","SystemCapability.BundleManager.Zlib","SystemCapability.BundleManager.BundleFramework.Core","SystemCapability.BundleManager.BundleFramework.FreeInstall","SystemCapability.BundleManager.BundleFramework.Resource","SystemCapability.BundleManager.BundleFramework.DefaultApp","SystemCapability.BundleManager.BundleFramework.Launcher","SystemCapability.BundleManager.BundleFramework.SandboxApp","SystemCapability.BundleManager.BundleFramework.QuickFix","SystemCapability.BundleManager.BundleFramework.AppControl","SystemCapability.BundleManager.BundleFramework.Overlay","SystemCapability.Developtools.Syscap","SystemCapability.Graphic.Graphic2D.WebGL","SystemCapability.Graphic.Graphic2D.WebGL2","SystemCapability.Graphic.Graphic2D.ColorManager.Core","SystemCapability.Window.SessionManager","SystemCapability.Graphic.Vulkan","SystemCapability.WindowManager.WindowManager.Core","SystemCapability.Notification.CommonEvent","SystemCapability.Notification.Notification","SystemCapability.Notification.ReminderAgent","SystemCapability.Notification.Emitter","SystemCapability.Communication.IPC.Core","SystemCapability.Communication.SoftBus.Core","SystemCapability.Communication.NetManager.Core","SystemCapability.Communication.NetManager.Extension","SystemCapability.Communication.NetStack","SystemCapability.Communication.WiFi.Core","SystemCapability.Communication.WiFi.STA","SystemCapability.Communication.WiFi.AP.Core","SystemCapability.Communication.WiFi.AP.Extension","SystemCapability.Communication.WiFi.P2P","SystemCapability.Communication.Bluetooth.Core","SystemCapability.Communication.Bluetooth.Lite","SystemCapability.Communication.NFC.Core","SystemCapability.Communication.ConnectedTag","SystemCapability.Communication.NFC.Tag","SystemCapability.Communication.NFC.CardEmulation","SystemCapability.Communication.NetManager.Ethernet","SystemCapability.Communication.NetManager.NetSharing","SystemCapability.Communication.NetManager.MDNS","SystemCapability.Communication.NetManager.Vpn","SystemCapability.Communication.SecureElement","SystemCapability.Location.Location.Core","SystemCapability.Location.Location.Geocoder","SystemCapability.Location.Location.Geofence","SystemCapability.Location.Location.Gnss","SystemCapability.Location.Location.Lite","SystemCapability.Msdp.DeviceStatus.Stationary","SystemCapability.MultimodalInput.Input.Core","SystemCapability.MultimodalInput.Input.InputDevice","SystemCapability.MultimodalInput.Input.RemoteInputDevice","SystemCapability.MultimodalInput.Input.InputMonitor","SystemCapability.MultimodalInput.Input.InputConsumer","SystemCapability.MultimodalInput.Input.InputSimulator","SystemCapability.MultimodalInput.Input.InputFilter","SystemCapability.MultimodalInput.Input.Cooperator","SystemCapability.MultimodalInput.Input.Pointer","SystemCapability.PowerManager.BatteryManager.Extension","SystemCapability.PowerManager.BatteryStatistics","SystemCapability.PowerManager.DisplayPowerManager","SystemCapability.PowerManager.DisplayPowerManager.Lite","SystemCapability.PowerManager.ThermalManager","SystemCapability.PowerManager.PowerManager.Core","SystemCapability.PowerManager.PowerManager.Lite","SystemCapability.PowerManager.BatteryManager.Core","SystemCapability.PowerManager.BatteryManager.Lite","SystemCapability.PowerManager.PowerManager.Extension","SystemCapability.Multimedia.Media.Core","SystemCapability.Multimedia.Media.AudioPlayer","SystemCapability.Multimedia.Media.AudioRecorder","SystemCapability.Multimedia.Media.VideoPlayer","SystemCapability.Multimedia.Media.VideoRecorder","SystemCapability.Multimedia.Media.CodecBase","SystemCapability.Multimedia.Media.AudioCodec","SystemCapability.Multimedia.Media.AudioDecoder","SystemCapability.Multimedia.Media.AudioEncoder","SystemCapability.Multimedia.Media.VideoDecoder","SystemCapability.Multimedia.Media.VideoEncoder","SystemCapability.Multimedia.Media.Spliter","SystemCapability.Multimedia.Media.Muxer","SystemCapability.Multimedia.Media.AVScreenCapture","SystemCapability.Multimedia.Media.SoundPool","SystemCapability.Multimedia.AVSession.Core","SystemCapability.Multimedia.AVSession.Manager","SystemCapability.Multimedia.AVSession.AVCast","SystemCapability.Multimedia.AVSession.ExtendedDisplayCast","SystemCapability.Multimedia.Audio.Core","SystemCapability.Multimedia.Audio.Tone","SystemCapability.Multimedia.Audio.Interrupt","SystemCapability.Multimedia.Audio.Renderer","SystemCapability.Multimedia.Audio.Capturer","SystemCapability.Multimedia.Audio.Device","SystemCapability.Multimedia.Audio.Volume","SystemCapability.Multimedia.Audio.Communication","SystemCapability.Multimedia.Audio.PlaybackCapture","SystemCapability.Multimedia.Camera.Core","SystemCapability.Multimedia.Camera.DistributedCore","SystemCapability.Multimedia.Image.Core","SystemCapability.Multimedia.Image.ImageSource","SystemCapability.Multimedia.Image.ImagePacker","SystemCapability.Multimedia.Image.ImageReceiver","SystemCapability.Multimedia.ImageEffect.Core","SystemCapability.Multimedia.MediaLibrary.Core","SystemCapability.Multimedia.MediaLibrary.SmartAlbum","SystemCapability.Multimedia.MediaLibrary.DistributedCore","SystemCapability.Multimedia.Media.AVPlayer","SystemCapability.Multimedia.Media.AVRecorder","SystemCapability.Multimedia.Media.AVMetadataExtractor","SystemCapability.Multimedia.Media.AVImageGenerator","SystemCapability.Multimedia.Image.ImageCreator","SystemCapability.Multimedia.SystemSound.Core","SystemCapability.Telephony.CoreService","SystemCapability.Telephony.CallManager","SystemCapability.Telephony.CellularCall","SystemCapability.Telephony.CellularData","SystemCapability.Telephony.SmsMms","SystemCapability.Telephony.StateRegistry","SystemCapability.Global.I18n","SystemCapability.Global.ResourceManager","SystemCapability.Customization.ConfigPolicy","SystemCapability.Customization.CustomConfig","SystemCapability.Customization.EnterpriseDeviceManager","SystemCapability.BarrierFree.Accessibility.Core","SystemCapability.BarrierFree.Accessibility.Vision","SystemCapability.BarrierFree.Accessibility.Hearing","SystemCapability.BarrierFree.Accessibility.Interaction","SystemCapability.ResourceSchedule.WorkScheduler","SystemCapability.ResourceSchedule.BackgroundTaskManager.ContinuousTask","SystemCapability.ResourceSchedule.BackgroundTaskManager.TransientTask","SystemCapability.ResourceSchedule.UsageStatistics.App","SystemCapability.ResourceSchedule.UsageStatistics.AppGroup","SystemCapability.ResourceSchedule.BackgroundTaskManager.EfficiencyResourcesApply","SystemCapability.Utils.Lang","SystemCapability.HiviewDFX.HiLog","SystemCapability.HiviewDFX.HiLogLite","SystemCapability.HiviewDFX.HiTrace","SystemCapability.HiviewDFX.Hiview.FaultLogger","SystemCapability.HiviewDFX.Hiview.LogLibrary","SystemCapability.HiviewDFX.HiviewLite","SystemCapability.HiviewDFX.HiChecker","SystemCapability.HiviewDFX.HiCollie","SystemCapability.HiviewDFX.HiDumper","SystemCapability.HiviewDFX.HiAppEvent","SystemCapability.HiviewDFX.HiSysEvent","SystemCapability.HiviewDFX.HiEventLite","SystemCapability.HiviewDFX.HiProfiler.HiDebug","SystemCapability.Update.UpdateService","SystemCapability.DistributedHardware.DeviceManager","SystemCapability.DistributedHardware.DistributedHardwareFWK","SystemCapability.Security.DeviceAuth","SystemCapability.Security.DataTransitManager","SystemCapability.Security.DeviceSecurityLevel","SystemCapability.Security.Huks.Core","SystemCapability.Security.Huks.Extension","SystemCapability.Security.Asset","SystemCapability.Security.AccessToken","SystemCapability.Security.Cipher","SystemCapability.Security.CertificateManager","SystemCapability.Security.CryptoFramework","SystemCapability.Security.CryptoFramework.Cert","SystemCapability.Security.DataLossPrevention","SystemCapability.Security.Cert","SystemCapability.Security.SecurityGuard","SystemCapability.Security.ScreenLockFileManager","SystemCapability.Account.OsAccount","SystemCapability.Account.AppAccount","SystemCapability.UserIAM.UserAuth.Core","SystemCapability.UserIAM.UserAuth.PinAuth","SystemCapability.UserIAM.UserAuth.FaceAuth","SystemCapability.MiscServices.InputMethodFramework","SystemCapability.MiscServices.Pasteboard","SystemCapability.MiscServices.Time","SystemCapability.MiscServices.Wallpaper","SystemCapability.MiscServices.ScreenLock","SystemCapability.MiscServices.Upload","SystemCapability.MiscServices.Download","SystemCapability.FileManagement.StorageService.Backup","SystemCapability.FileManagement.StorageService.SpatialStatistics","SystemCapability.FileManagement.StorageService.Volume","SystemCapability.FileManagement.StorageService.Encryption","SystemCapability.FileManagement.File.FileIO","SystemCapability.FileManagement.File.FileIO.Lite","SystemCapability.FileManagement.File.Environment","SystemCapability.FileManagement.File.DistributedFile","SystemCapability.FileManagement.File.Environment.FolderObtain","SystemCapability.FileManagement.AppFileService","SystemCapability.FileManagement.AppFileService.FolderAuthorization","SystemCapability.FileManagement.UserFileService","SystemCapability.FileManagement.UserFileManager","SystemCapability.FileManagement.UserFileManager.DistributedCore","SystemCapability.FileManagement.UserFileManager.Core","SystemCapability.FileManagement.UserFileService.FolderSelection","SystemCapability.USB.USBManager","SystemCapability.Sensors.Sensor","SystemCapability.Sensors.MiscDevice","SystemCapability.Sensors.Sensor.Lite","SystemCapability.Sensors.MiscDevice.Lite","SystemCapability.Startup.SystemInfo","SystemCapability.Startup.SystemInfo.Lite","SystemCapability.DistributedDataManager.RelationalStore.Core","SystemCapability.DistributedDataManager.RelationalStore.Synchronize","SystemCapability.DistributedDataManager.RelationalStore.Lite","SystemCapability.DistributedDataManager.KVStore.Core","SystemCapability.DistributedDataManager.KVStore.Lite","SystemCapability.DistributedDataManager.KVStore.DistributedKVStore","SystemCapability.DistributedDataManager.DataObject.DistributedObject","SystemCapability.DistributedDataManager.Preferences.Core","SystemCapability.DistributedDataManager.DataShare.Core","SystemCapability.DistributedDataManager.DataShare.Consumer","SystemCapability.DistributedDataManager.DataShare.Provider","SystemCapability.DistributedDataManager.UDMF.Core","SystemCapability.DistributedDataManager.CloudSync.Config","SystemCapability.DistributedDataManager.CloudSync.Client","SystemCapability.DistributedDataManager.CloudSync.Server","SystemCapability.Ability.AbilityBase","SystemCapability.Ability.AbilityRuntime.Core","SystemCapability.Ability.AbilityRuntime.FAModel","SystemCapability.Ability.AbilityRuntime.AbilityCore","SystemCapability.Ability.AbilityRuntime.Mission","SystemCapability.Ability.AbilityTools.AbilityAssistant","SystemCapability.Ability.Form","SystemCapability.Ability.DistributedAbilityManager","SystemCapability.Ability.AbilityRuntime.QuickFix","SystemCapability.Applications.ContactsData","SystemCapability.Applications.Contacts","SystemCapability.Applications.Settings.Core","SystemCapability.Test.UiTest","SystemCapability.Web.Webview.Core","SystemCapability.Cloud.AAID","SystemCapability.Advertising.OAID","SystemCapability.Advertising.Ads","SystemCapability.Cloud.VAID","SystemCapability.Cloud.Push","SystemCapability.XTS.DeviceAttest","SystemCapability.XTS.DeviceAttest.Lite","SystemCapability.Base","SystemCapability.FileManagement.DistributedFileService.CloudSyncManager","SystemCapability.FileManagement.DistributedFileService.CloudSync.Core","SystemCapability.MultimodalInput.Input.ShortKey","SystemCapability.Msdp.DeviceStatus.Cooperate","SystemCapability.Request.FileTransferAgent","SystemCapability.ResourceSchedule.DeviceStandby","SystemCapability.AI.MindSporeLite","SystemCapability.Print.PrintFramework","SystemCapability.DistributedDataManager.Preferences.Core.Lite","SystemCapability.Driver.ExternalDevice","SystemCapability.FileManagement.PhotoAccessHelper.Core","SystemCapability.AI.IntelligentVoice.Core","SystemCapability.Msdp.DeviceStatus.Drag","SystemCapability.DistributedDataManager.CommonType","SystemCapability.Multimedia.Audio.Spatialization","SystemCapability.Multimedia.AudioHaptic.Core","SystemCapability.ArkUi.Graphics3D","SystemCapability.Multimedia.Drm.Core","SystemCapability.Graphics.Drawing","SystemCapability.ResourceSchedule.SystemLoad","SystemCapability.Ability.AppStartup","SystemCapability.MultimodalInput.Input.InfraredEmitter"]}')},79646:e=>{"use strict";e.exports=JSON.parse('{"fileContent":[{"syscap":"ArkUI","subsystem":"ArkUI开发框架","fileName":"arkui"},{"syscap":"BundleManager","subsystem":"包管理","fileName":"bundle"},{"syscap":"Graphic","subsystem":"图形图像","fileName":"graphic"},{"syscap":"WindowManager","subsystem":"窗口管理","fileName":"window"},{"syscap":"Notification","subsystem":"事件通知","fileName":"notification"},{"syscap":"Communication","subsystem":"基础通信","fileName":"communication"},{"syscap":"Location","subsystem":"位置服务","fileName":"geolocation"},{"syscap":"MultimodalInput","subsystem":"多模输入","fileName":"multi-modal-input"},{"syscap":"PowerManager","subsystem":"电源服务","fileName":"battery"},{"syscap":"Multimedia","subsystem":"OS媒体软件","fileName":"multimedia"},{"syscap":"Telephony","subsystem":"电话服务","fileName":"telephony"},{"syscap":"Global","subsystem":"全球化","fileName":"global"},{"syscap":"Customization","subsystem":"定制","fileName":"customization"},{"syscap":"BarrierFree","subsystem":"无障碍软件服务","fileName":"accessibility"},{"syscap":"ResourceSchedule","subsystem":"资源调度","fileName":"resource-scheduler"},{"syscap":"Utils","subsystem":"公共基础类库","fileName":"compiler-and-runtime"},{"syscap":"HiviewDFX","subsystem":"DFX","fileName":"dfx"},{"syscap":"Update","subsystem":"升级服务","fileName":"update"},{"syscap":"DistributedHardware","subsystem":"分布式硬件","fileName":"distributed-hardware"},{"syscap":"Security","subsystem":"安全基础能力","fileName":"security"},{"syscap":"Account","subsystem":"账号","fileName":"account"},{"syscap":"UserIAM","subsystem":"用户IAM","fileName":"user-iam"},{"syscap":"FileManagement","subsystem":"文件管理","fileName":"file-management"},{"syscap":"USB","subsystem":"USB服务","fileName":"usb"},{"syscap":"Sensors","subsystem":"泛sensor服务","fileName":"sensor"},{"syscap":"Startup","subsystem":"启动恢复","fileName":"start-up"},{"syscap":"DistributedDataManager","subsystem":"分布式数据管理","fileName":"distributed-data"},{"syscap":"Ability","subsystem":"元能力","fileName":"ability"},{"syscap":"Web","subsystem":"web","fileName":"web"},{"syscap":"Applications","subsystem":"应用","fileName":"application"},{"syscap":"Msdp","subsystem":"综合传感处理平台","fileName":"msdp"},{"syscap":"Test","subsystem":"测试框架","fileName":"unitest"},{"syscap":"Base","subsystem":"SDK","fileName":"sdk"},{"syscap":"AI","subsystem":"AI业务","fileName":"ai"},{"syscap":"Request","subsystem":"上传下载","fileName":"download-upload"},{"syscap":"Download","subsystem":"上传下载","fileName":"download-upload"},{"syscap":"Upload","subsystem":"上传下载","fileName":"download-upload"},{"syscap":"Wallpaper","subsystem":"主题","fileName":"theme"},{"syscap":"Time","subsystem":"时间时区","fileName":"time"},{"syscap":"ScreenLock","subsystem":"主题","fileName":"theme"},{"syscap":"Pasteboard","subsystem":"剪贴板","fileName":"pasteboard"},{"syscap":"InputMethodFramework","subsystem":"输入法","fileName":"input-method-framework"},{"syscap":"Driver","subsystem":"驱动","fileName":"driver"},{"syscap":"Developtools","subsystem":"研发工具链","fileName":"developtools"},{"syscap":"Bluetooth","subsystem":"蓝牙","fileName":"blue-tooth"},{"syscap":"NetManager","subsystem":"网络管理·","fileName":"net-manager"},{"syscap":"Print","subsystem":"打印","fileName":"print"},{"syscap":"Window","subsystem":"窗口","fileName":"window"},{"syscap":"Advertising","subsystem":"广告服务","fileName":"advertising"},{"syscap":"XTS","subsystem":"XTS","fileName":"xts"}]}')}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.loaded=!0,r.exports}__webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=(e,t)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var __webpack_exports__=__webpack_require__(66608)})(); \ No newline at end of file diff --git a/build-tools/handleApiFiles.js b/build-tools/handleApiFiles.js new file mode 100755 index 0000000000000000000000000000000000000000..2cad66e2f00b5ba1d7f8127c420f42fdf6aa8326 --- /dev/null +++ b/build-tools/handleApiFiles.js @@ -0,0 +1,812 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +const fs = require('fs'); +const path = require('path'); +const ts = require('typescript'); +const commander = require('commander'); +// 处理的目录类型 +let dirType = ''; +const deleteApiSet = new Set(); +const importNameSet = new Set(); + +// 处理的目录类型,ets代表处理的是1.1目录,ets2代表处理的是1.2目录里有@arkts 1.1&1.2标签的文件, +// noTagInEts2代表处理的是1.2目录里无标签的文件 +const DirType = { + 'typeOne': 'ets', + 'typeTwo': 'ets2', + 'typeThree': 'noTagInEts2', +}; + +const NOT_COPY_DIR = ['build-tools', '.git', '.gitee']; + +function isEtsFile(path) { + return path.endsWith('d.ets'); +} + +function isTsFile(path) { + return path.endsWith('d.ts'); +} + +function hasEtsFile(path) { + // 为StateManagement.d.ts设定白名单,在1.2打包的时候在Linux上有大小写不同的重名,碰到直接返回true + if (path.includes('StateManagement.d.ts')) { + console.log('StateManagement.d.ts is in white list, return true. path = ', path); + return true; + } else { + return fs.existsSync(path.replace(/\.d\.[e]?ts$/g, '.d.ets')); + } +} + +function hasTsFile(path) { + return fs.existsSync(path.replace(/\.d\.[e]?ts$/g, '.d.ts')); +} + +/** + * 配置参数 + */ +function start() { + const program = new commander.Command(); + program + .name('handleApiFile') + .version('0.0.1'); + program + .option('--path <string>', 'path name') + .option('--type <string>', 'handle type') + .option('--output [string]', 'output path') + .action((opts) => { + dirType = opts.type; + handleApiFiles(opts.path, opts.type, opts.output); + }); + program.parse(process.argv); +} +/** + * 处理API文件的入口函数 + * + * @param {*} rootPath + * @param {*} type + */ +function handleApiFiles(rootPath, type, output) { + const allApiFilePathSet = new Set(); + const fileNames = fs.readdirSync(rootPath); + const apiRootPath = rootPath.replace(/\\/g, '/'); + fileNames.forEach(fileName => { + const apiPath = path.join(apiRootPath, fileName); + const stat = fs.statSync(apiPath); + if (NOT_COPY_DIR.includes(fileName)) { + return; + } + if (stat.isDirectory()) { + getApiFileName(apiPath, apiRootPath, allApiFilePathSet); + } else { + allApiFilePathSet.add(fileName); + } + + }); + + for (const apiRelativePath of allApiFilePathSet) { + try { + handleApiFileByType(apiRelativePath, rootPath, type, output); + } catch (error) { + console.log('error===>', error); + } + } +} + + +/** + * 根据传入的type值去处理文件 + * + * @param {*} apiRelativePath + * @param {*} allApiFilePathSet + * @param {*} rootPath + * @param {*} type + * @returns + */ +function handleApiFileByType(apiRelativePath, rootPath, type, output) { + const fullPath = path.join(rootPath, apiRelativePath); + const isEndWithEts = isEtsFile(apiRelativePath); + const isEndWithTs = isTsFile(apiRelativePath); + const outputPath = output ? path.join(output, apiRelativePath) : fullPath; + const fileContent = fs.readFileSync(fullPath, 'utf-8'); + + if (!isEndWithEts && !isEndWithTs) { + writeFile(outputPath, fileContent); + return; + } + if (type === 'ets2' && !(hasEtsFile(fullPath) && isEndWithTs)) { + handleFileInSecondType(apiRelativePath, fullPath, type, output); + } else if (type === 'ets' && !(hasTsFile(fullPath) && isEndWithEts)) { + handleFileInFirstType(apiRelativePath, fullPath, type, output); + } +} + +/** + * 处理文件过滤 if arkts 1.1|1.2|1.1&1.2 定义 + * + * @param {*} type + * @param {*} fileContent + * @returns + */ +function handleArktsDefinition(type, fileContent) { + let regx = /\/\*\*\* if arkts 1\.1 \*\/\s*([\s\S]*?)\s*\/\*\*\* endif \*\//g; + let regx2 = /\/\*\*\* if arkts 1\.2 \*\/\s*([\s\S]*?)\s*\/\*\*\* endif \*\//g; + let regx3 = /\/\*\*\* if arkts 1\.1\&1\.2 \*\/\s*([\s\S]*?)\s*\/\*\*\* endif \*\//g; + fileContent = fileContent.replace(regx, (substring, p1) => { + return type === 'ets' ? p1 : ''; + }); + fileContent = fileContent.replace(regx2, (substring, p1) => { + if (type === 'ets2') { + return p1.replace(/(\s*)(\*\s\@since)/g, '$1* @arkts 1.2$1$2'); + } else { + return ''; + } + }); + fileContent = fileContent.replace(regx3, (substring, p1) => { + if (type === 'ets') { + return p1; + } else { + return p1.replace(/(\s*)(\*\s\@since)/g, '$1* @arkts 1.2$1$2'); + } + }); + return fileContent; +} + +/** + * 保留每个api最新一段jsdoc + * + * @param {*} fileContent + * @returns + */ +function saveLatestJsDoc(fileContent) { + let regx = /(\/\*[\s\S]*?\*\*\/)/g; + + fileContent = fileContent.split('').reverse().join(''); + let preset = 0; + fileContent = fileContent.replace(regx, (substring, p1, offset, str) => { + if (!/ecnis@\s*\*/g.test(substring)) { + return substring; + } + const preStr = str.substring(preset, offset); + preset = offset + substring.length; + if (/\S/g.test(preStr)) { + return substring; + } + return ''; + }); + fileContent = fileContent.split('').reverse().join(''); + return fileContent; +} + +/** + * 处理ets目录 + * + * @param {string} apiRelativePath + * @param {string} fullPath + * @returns + */ +function handleFileInFirstType(apiRelativePath, fullPath, type, output) { + const outputPath = output ? path.join(output, apiRelativePath) : fullPath; + let fileContent = fs.readFileSync(fullPath, 'utf-8'); + //删除使用/*** if arkts 1.2 */ + fileContent = handleArktsDefinition(type, fileContent); + + const sourceFile = ts.createSourceFile(path.basename(apiRelativePath), fileContent, ts.ScriptTarget.ES2017, true); + const secondRegx = /(?:@arkts1.2only|@arkts\s+>=\s*1.2|@arkts\s*1.2)/; + const thirdRegx = /(?:\*\s*@arkts\s+1.1&1.2\s*(\r|\n)\s*)/; + if (sourceFile.statements.length === 0) { + // reference文件识别不到首段jsdoc,全文匹配1.2标签,有的话直接删除 + if (secondRegx.test(sourceFile.getFullText())) { + return; + } + // 标有@arkts 1.1&1.2的声明文件,处理since版本号,删除@arkts 1.1&1.2标签 + if (thirdRegx.test(sourceFile.getFullText())) { + fileContent = handleSinceInFirstType(deleteArktsTag(fileContent)); + writeFile(outputPath, fileContent); + return; + } + + handleNoTagFileInFirstType(sourceFile, outputPath, fileContent); + return; + } + const firstNode = sourceFile.statements.find(statement => { + return !ts.isExpressionStatement(statement); + }); + + if (firstNode) { + const firstJsdocText = getFileJsdoc(firstNode); + // 标有1.2标签的声明文件,不拷贝 + if (secondRegx.test(firstJsdocText)) { + return; + } + // 标有@arkts 1.1&1.2的声明文件,处理since版本号,删除@arkts 1.1&1.2标签 + if (thirdRegx.test(firstJsdocText)) { + fileContent = handleSinceInFirstType(deleteArktsTag(fileContent)); + writeFile(outputPath, fileContent); + return; + } + } + + handleNoTagFileInFirstType(sourceFile, outputPath, fileContent); +} + +/** + * 处理1.1目录中无arkts标签的文件 + * @param {*} sourceFile + * @param {*} outputPath + * @returns + */ +function handleNoTagFileInFirstType(sourceFile, outputPath, fileContent) { + if (path.basename(outputPath) === 'index-full.d.ts') { + writeFile(outputPath, fileContent); + return; + } + fileContent = deleteApi(sourceFile); + + if (fileContent === '') { + return; + } + fileContent = deleteArktsTag(fileContent); + fileContent = joinFileJsdoc(fileContent, sourceFile); + + fileContent = handleSinceInFirstType(fileContent); + writeFile(outputPath, fileContent); +} + +/** + * 删除指定的arkts标签 + * + * @param {*} fileContent 文件内容 + * @param {*} regx 删除的正则表达式 + * @returns + */ +function deleteArktsTag(fileContent) { + const arktsTagRegx = /\*\s*@arkts\s+1.1&1.2\s*(\r|\n)\s*|\*\s*@arkts\s*1.2s*(\r|\n)\s*|\*\s*@arkts\s*1.1s*(\r|\n)\s*/g; + fileContent = fileContent.replace(arktsTagRegx, (substring, p1) => { + return ''; + }); + return fileContent; +} + +/** + * 生成1.1目录里文件时,需要去掉since标签里的1.2版本号 + * + * @param {*} sourceFile + * @param {*} fullPath + */ +function handleSinceInFirstType(fileContent) { + const regx = /@since\s+arkts\s*(\{.*\})/g; + fileContent = fileContent.replace(regx, (substring, p1) => { + return '@since ' + JSON.parse(p1.replace(/'/g, '"'))['1.1']; + }); + return fileContent; +} + +/** + * 处理ets2目录 + * + * @param {string} fullPath 文件完整路径 + * @returns + */ +function handleFileInSecondType(apiRelativePath, fullPath, type, output) { + const secondRegx = /(?:@arkts1.2only|@arkts\s+>=\s*1.2|@arkts\s*1.2)/; + const thirdRegx = /(?:\*\s*@arkts\s+1.1&1.2\s*(\r|\n)\s*)/; + const arktsRegx = /\/\*\*\* if arkts (1.1&)?1.2 \*\/\s*([\s\S]*?)\s*\/\*\*\* endif \*\//g; + let fileContent = fs.readFileSync(fullPath, 'utf-8'); + let sourceFile = ts.createSourceFile(path.basename(fullPath), fileContent, ts.ScriptTarget.ES2017, true); + const outputPath = output ? path.join(output, apiRelativePath) : fullPath; + if (!secondRegx.test(fileContent) && !thirdRegx.test(fileContent) && arktsRegx.test(fileContent)) { + saveApiByArktsDefinition(sourceFile, fileContent, outputPath); + return; + } + //删除使用/*** if arkts 1.2 */ + fileContent = handleArktsDefinition(type, fileContent); + sourceFile = ts.createSourceFile(path.basename(fullPath), fileContent, ts.ScriptTarget.ES2017, true); + const regx = /(?:@arkts1.1only|@arkts\s+<=\s+1.1)/; + + if (sourceFile.statements.length === 0) { + // 有1.2标签的文件,删除标记 + if (secondRegx.test(sourceFile.getFullText())) { + writeFile(outputPath, deleteArktsTag(fileContent)); + return; + } + // 处理标有@arkts 1.1&1.2的声明文件 + if (thirdRegx.test(sourceFile.getFullText())) { + handlehasTagFile(sourceFile, outputPath); + return; + } + // 处理既没有@arkts 1.2,也没有@arkts 1.1&1.2的声明文件 + handleNoTagFileInSecondType(sourceFile, outputPath, fullPath); + return; + } + + const firstNode = sourceFile.statements.find(statement => { + return !ts.isExpressionStatement(statement); + }); + + if (firstNode) { + const firstJsdocText = getFileJsdoc(firstNode); + if (regx.test(firstJsdocText)) { + return; + } + // 有1.2标签的文件,删除标记 + if (secondRegx.test(firstJsdocText)) { + writeFile(outputPath, deleteArktsTag(fileContent)); + return; + } + // 处理标有@arkts 1.1&1.2的声明文件 + if (thirdRegx.test(firstJsdocText)) { + handlehasTagFile(sourceFile, outputPath); + return; + } + } + + // 处理既没有@arkts 1.2,也没有@arkts 1.1&1.2的声明文件 + handleNoTagFileInSecondType(sourceFile, outputPath, fullPath); +} + +/** + * 获取文件jsdoc + * @param {*} firstNode + * @returns + */ +function getFileJsdoc(firstNode) { + const firstNodeJSDoc = firstNode.getFullText().replace(firstNode.getText(), ''); + const jsdocs = firstNodeJSDoc.split('*/'); + let fileJSDoc = ''; + for (let i = 0; i < jsdocs.length; i++) { + const jsdoc = jsdocs[i]; + if (/\@file/.test(jsdoc)) { + fileJSDoc = jsdoc; + break; + } + } + return fileJSDoc; +} + +/** + * 处理有@arkts 1.1&1.2标签的文件 + * @param {*} outputPath + */ +function handlehasTagFile(sourceFile, outputPath) { + dirType = DirType.typeTwo; + let newContent = getDeletionContent(sourceFile); + if (newContent === '') { + return; + } + // 保留最后一段注释 + newContent = saveLatestJsDoc(newContent); + writeFile(outputPath, deleteArktsTag(newContent)); +} + +/** + * 处理1.2目录中无arkts标签的文件 + * @param {*} sourceFile + * @param {*} outputPath + * @returns + */ +function handleNoTagFileInSecondType(sourceFile, outputPath, fullPath) { + dirType = DirType.typeThree; + const arktsTagRegx = /\*\s*@arkts\s+1.1&1.2\s*(\r|\n)\s*|@arkts\s*1.2/g; + const fileContent = sourceFile.getFullText(); + let newContent = ''; + // API未标@arkts 1.2或@arkts 1.1&1.2标签,删除文件 + if (!arktsTagRegx.test(fileContent)) { + if (fullPath.endsWith('.d.ts') && hasEtsFile(fullPath) || fullPath.endsWith('.d.ets') && hasTsFile(fullPath)) { + newContent = saveLatestJsDoc(fileContent); + newContent = deleteArktsTag(newContent); + writeFile(outputPath, newContent); + } + return; + } + newContent = getDeletionContent(sourceFile); + if (newContent === '') { + return; + } + // 保留最后一段注释 + newContent = saveLatestJsDoc(newContent); + newContent = deleteArktsTag(newContent); + writeFile(outputPath, newContent); +} + +/** + * 没有arkts标签,但有if arkts 1.2和1.1&1.2的情况 + * @param {*} sourceFile + * @param {*} fileContent + * @param {*} outputPath + */ +function saveApiByArktsDefinition(sourceFile, fileContent, outputPath) { + const regx = /\/\*\*\* if arkts (1.1&)?1.2 \*\/\s*([\s\S]*?)\s*\/\*\*\* endif \*\//g; + const regex = /\/\*\r?\n\s*\*\s*Copyright[\s\S]*?limitations under the License\.\r?\n\s*\*\//g; + const copyrightMessage = fileContent.match(regex)[0]; + const firstNode = sourceFile.statements.find(statement => { + return !ts.isExpressionStatement(statement); + }); + let fileJsdoc = firstNode ? getFileJsdoc(firstNode) + '*/\n' : ''; + let newContent = copyrightMessage + fileJsdoc + Array.from(fileContent.matchAll(regx), match => match[2]).join('\n'); + + writeFile(outputPath, saveLatestJsDoc(newContent)); +} + +/** + * 拼接上被删除的文件注释 + * + * @param {*} deletionContent + * @param {*} sourceFile + * @returns + */ +function joinFileJsdoc(deletionContent, sourceFile) { + const fileJsdoc = sourceFile.getFullText().replace(sourceFile.getText(), ''); + const copyrightMessage = hasCopyright(fileJsdoc.split('*/')[0]) ? fileJsdoc.split('*/')[0] + '*/\r\n' : ''; + const regx = /@kit | @file/g; + let kitMessage = ''; + + if (regx.test(fileJsdoc)) { + kitMessage = fileJsdoc.split('*/')[1] + '*/\r\n'; + } + let newContent = deletionContent; + const isHasCopyright = hasCopyright(deletionContent); + + if (!isHasCopyright && !regx.test(deletionContent)) { + newContent = copyrightMessage + kitMessage + deletionContent; + } else if (!isHasCopyright) { + newContent = copyrightMessage + deletionContent; + } else if (isHasCopyright && !/@kit | @file/g.test(deletionContent)) { + const joinFileJsdoc = copyrightMessage + kitMessage; + newContent = deletionContent.replace(copyrightMessage, joinFileJsdoc); + } + + if (dirType !== DirType.typeOne) { + // TODO:添加use static字符串 + } + return newContent; +} + +function getDeletionContent(sourceFile) { + const deletionContent = deleteApi(sourceFile); + if (deletionContent === '') { + return ''; + } + let newContent = joinFileJsdoc(deletionContent, sourceFile); + + // 处理since版本 + newContent = handleSinceInSecondType(newContent); + return newContent; +} + +/** + * 重写文件内容 + * @param {*} outputPath + * @param {*} fileContent + */ +function writeFile(outputPath, fileContent) { + const outputDir = path.dirname(outputPath); + let newPath = outputPath; + if (!fs.existsSync(outputDir)) { + fs.mkdirSync(outputDir, { recursive: true }); + } + + if (dirType !== DirType.typeOne && isTsFile(outputPath)) { + newPath = outputPath.replace('.d.ts', '.d.ets'); + } + fs.writeFileSync(newPath, fileContent); +} + +/** + * 添加use static字符串 + * + * @param {*} fileContent 文件内容 + * @param {*} copyrightMessage 版权头内容 + * @returns + */ +function addStaticString(fileContent, copyrightMessage) { + const hasStaticMessage = /use\s+static/g.test(fileContent); + const regex = /\/\*\r?\n\s*\*\s*Copyright[\s\S]*?limitations under the License\.\r?\n\s*\*\//g; + const staticMessage = 'use static'; + let newContent = fileContent; + if (!hasStaticMessage) { + const newfileJsdoc = `${copyrightMessage}'${staticMessage}'\r\n`; + newContent = newContent.replace(regex, newfileJsdoc); + } + return newContent; +} + +/** + * 判断新生成的文件内容有没有版权头 + * + * @param {*} fileText 新生成的文件内容 + * @returns + */ +function hasCopyright(fileText) { + return /http(\:|\?:)\/\/www(\.|\/)apache\.org\/licenses\/LICENSE\-2\.0 | Copyright\s*\(c\)/gi.test(fileText); +} + +// 创建 Transformer +const transformer = (context) => { + return (rootNode) => { + const visit = (node) => { + //struct节点下面会自动生成constructor节点, 置为undefined + if (node.kind === ts.SyntaxKind.Constructor && node.parent.kind === ts.SyntaxKind.StructDeclaration) { + return undefined; + } + + // 判断是否为要删除的变量声明 + if (apiNodeTypeArr.includes(node.kind) && judgeIsDeleteApi(node)) { + collectDeletionApiName(node); + // 删除该节点 + return undefined; + } + + // 非目标节点:继续遍历子节点 + return ts.visitEachChild(node, visit, context); + }; + return ts.visitNode(rootNode, visit); + }; +}; + +/** + * 删除API + * @param {*} sourceFile + * @returns + */ +function deleteApi(sourceFile) { + let result = ts.transform(sourceFile, [transformer]); + const newSourceFile = result.transformed[0]; + if (isEmptyFile(newSourceFile)) { + return ''; + } + + // 打印结果 + const printer = ts.createPrinter(); + let fileContent = printer.printFile(newSourceFile); + result = ts.transform(newSourceFile, [transformExportApi]); + fileContent = printer.printFile(result.transformed[0]); + deleteApiSet.clear(); + return fileContent.replace(/export\s*(?:type\s*)?\{\s*\}\s*(;)?/g, ''); +} + +/** + * api被删除后,对应的export api也需要被删除 + * @param {*} context + * @returns + */ +const transformExportApi = (context) => { + return (rootNode) => { + const importOrExportNodeVisitor = (node) => { + if (ts.isImportClause(node) && node.name && ts.isIdentifier(node.name) || + ts.isImportSpecifier(node) && node.name && ts.isIdentifier(node.name)) { + importNameSet.add(node.name?.getText()); + } + // 剩下未被删除的API中,如果还有与被删除API名字一样的API,就将其从set集合中删掉 + if (apiNodeTypeArr.includes(node.kind) && deleteApiSet.has(node.name?.getText())) { + deleteApiSet.delete(node.name?.getText()); + } + // 非目标节点:继续遍历子节点 + return ts.visitEachChild(node, importOrExportNodeVisitor, context); + }; + ts.visitNode(rootNode, importOrExportNodeVisitor); + + const allNodeVisitor = (node) => { + // 判断是否为要删除的变量声明 + if (ts.isExportAssignment(node) && deleteApiSet.has(node.expression.escapedText.toString()) && + !importNameSet.has(node.expression.escapedText.toString())) { + return undefined; + } + + if (ts.isExportSpecifier(node) && deleteApiSet.has(node.name.escapedText.toString()) && + !importNameSet.has(node.name.escapedText.toString())) { + return undefined; + } + + // 非目标节点:继续遍历子节点 + return ts.visitEachChild(node, allNodeVisitor, context); + }; + return ts.visitNode(rootNode, allNodeVisitor); + }; +}; + +function isEmptyFile(node) { + let isEmpty = true; + if (ts.isSourceFile(node) && node.statements) { + const needExportName = new Set(); + for (let i = 0; i < node.statements.length; i++) { + const statement = node.statements[i]; + if (ts.isExportDeclaration(statement) && statement.moduleSpecifier) { + isEmpty = false; + break; + } + if (judgeExportHasImport(statement, needExportName)) { + continue; + } + isEmpty = false; + break; + } + } + return isEmpty; +} + +function collectDeletionApiName(node) { + if (!ts.isImportClause(node)) { + deleteApiSet.add(node.name?.getText()); + return; + } + + if (ts.isImportDeclaration(node) && node.importClause?.name) { + deleteApiSet.add(node.importClause.name.escapedText.toString()); + return; + } + const namedBindings = node.namedBindings; + if (namedBindings !== undefined && ts.isNamedImports(namedBindings)) { + const elements = namedBindings.elements; + elements.forEach((element) => { + const exportName = element.propertyName ? + element.propertyName.escapedText.toString() : + element.name.escapedText.toString(); + deleteApiSet.add(exportName); + }); + } +} + +/** + * 判断import节点和export节点。 + * 当前文本如果还有其他节点则不能删除, + * 如果只有import和export则判断是否export导出import节点 + * + * @param {*} statement + * @param {*} needExportName + * @returns + */ +function judgeExportHasImport(statement, needExportName) { + if (ts.isImportDeclaration(statement)) { + processImportDeclaration(statement, needExportName); + return true; + } else if (ts.isExportAssignment(statement) && + !needExportName.has(statement.expression.escapedText.toString())) { + return true; + } else if (ts.isExportDeclaration(statement)) { + return !statement.exportClause.elements.some((element) => { + const exportName = element.propertyName ? + element.propertyName.escapedText.toString() : + element.name.escapedText.toString(); + return needExportName.has(exportName); + }); + } + return false; +} + +function processImportDeclaration(statement, needExportName) { + const importClause = statement.importClause; + if (!ts.isImportClause(importClause)) { + return; + } + if (importClause.name) { + needExportName.add(importClause.name.escapedText.toString()); + } + const namedBindings = importClause.namedBindings; + if (namedBindings !== undefined && ts.isNamedImports(namedBindings)) { + const elements = namedBindings.elements; + elements.forEach((element) => { + const exportName = element.propertyName ? + element.propertyName.escapedText.toString() : + element.name.escapedText.toString(); + needExportName.add(exportName); + }); + } +} + +/** + * 判断node节点中是否有famodelonly/deprecated/arkts <=1.1标签 + * + * @param {*} node + * @returns + */ +function judgeIsDeleteApi(node) { + const notesContent = node.getFullText().replace(node.getText(), '').replace(/[\s]/g, ''); + const notesArr = notesContent.split(/\/\*\*/); + const notesStr = notesArr[notesArr.length - 1]; + const sinceArr = notesStr.match(/@since\d+/); + let sinceVersion = 20; + + if (dirType === DirType.typeOne) { + return /@arkts1\.2(?!\d)/g.test(notesStr); + } + + if (sinceArr) { + sinceVersion = sinceArr[0].replace('@since', ''); + } + + if (dirType === DirType.typeTwo) { + return (/@deprecated/g.test(notesStr) && sinceVersion < 20) || /@arkts<=1.1/g.test(notesStr); + } + + if (dirType === DirType.typeThree) { + return !/@arkts1\.2\*|@arkts1\.1&1\.2\*/g.test(notesStr); + } + + return false; +} + +/** + * 生成1.2目录里文件时,需要去掉since标签里的dynamic版本号 + * + * @param {*} fileContent + * @returns + */ +function handleSinceInSecondType(fileContent) { + const regx = /@since\s+arkts\s*(\{.*\})/g; + fileContent = fileContent.replace(regx, (substring, p1) => { + return '@since ' + JSON.parse(p1.replace(/'/g, '"'))['1.2']; + }); + return fileContent; +} + + +function deleteSameNameFile(fullPath) { + try { + fs.unlinkSync(fullPath); + } catch (error) { + console.error('delete file failed: ', error); + } +} + +/** + * + * @param { string } apiPath 需要处理的api文件所在路径 + * @param { string } rootPath ets文件夹路径 + * @returns { Set<string> } 需要处理的api文件的相对于ets目录的路径 + */ +function getApiFileName(apiPath, rootPath, allApiFilePathSet) { + const apiFilePathSet = new Set(); + const fileNames = fs.readdirSync(apiPath); + + fileNames.forEach(fileName => { + const apiFilePath = path.join(apiPath, fileName).replace(/\\/g, '/'); + const stat = fs.statSync(apiFilePath); + + if (stat.isDirectory()) { + getApiFileName(apiFilePath, rootPath, allApiFilePathSet); + } else { + const apiRelativePath = apiFilePath.replace(rootPath, ''); + allApiFilePathSet.add(apiRelativePath); + } + }); + + return apiFilePathSet; +} + +// 所有API的节点类型 +const apiNodeTypeArr = [ + ts.SyntaxKind.VariableStatement, + ts.SyntaxKind.MethodDeclaration, + ts.SyntaxKind.MethodSignature, + ts.SyntaxKind.FunctionDeclaration, + ts.SyntaxKind.Constructor, + ts.SyntaxKind.ConstructSignature, + ts.SyntaxKind.CallSignature, + ts.SyntaxKind.PropertyDeclaration, + ts.SyntaxKind.PropertySignature, + ts.SyntaxKind.EnumMember, + ts.SyntaxKind.EnumDeclaration, + ts.SyntaxKind.TypeAliasDeclaration, + ts.SyntaxKind.ClassDeclaration, + ts.SyntaxKind.InterfaceDeclaration, + ts.SyntaxKind.ModuleDeclaration, + ts.SyntaxKind.StructDeclaration, + ts.SyntaxKind.GetAccessor, + ts.SyntaxKind.SetAccessor, + ts.SyntaxKind.IndexSignature, +]; + +start(); diff --git a/build-tools/package.json b/build-tools/package.json index 137f7588240339ae1c479dc9e7b76de2b5a56a03..130a687306e991ba3933e28048350d2ba6514342 100644 --- a/build-tools/package.json +++ b/build-tools/package.json @@ -4,11 +4,13 @@ "description": "", "main": "delete_systemapi_plugin.js", "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" + "test": "echo \"Error: no test specified\" && exit 1", + "postinstall": "cd arkui_transformer && npm install" }, "author": "", "license": "ISC", "dependencies": { + "commander": "^13.1.0", "fs": "^0.0.1-security", "path": "^0.12.7", "typescript": "npm:ohos-typescript@4.9.5-r5" diff --git a/build-tools/permissions_converter/convert.js b/build-tools/permissions_converter/convert.js index a9daceda90ee90cbf9e3bdb3237e16f8558d6373..665a3a904ef319e4c154b6495f42ff440e0a3115 100644 --- a/build-tools/permissions_converter/convert.js +++ b/build-tools/permissions_converter/convert.js @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Huawei Device Co., Ltd. + * Copyright (c) 2022-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -16,7 +16,7 @@ const fs = require('fs'); const copyRight = `/* - * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Copyright (c) 2022-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -50,6 +50,21 @@ const copyRight = `/* * @atomicservice * @since 11 */\n`; + + const label_1_2 = `/** + * @file Defines all permissions. + * @kit AbilityKit + */ + + /** + * Indicates permissions. + * + * @typedef Permissions + * @syscap SystemCapability.Security.AccessToken + * @atomicservice + * @since 20 + */\n`; + const typeHead = 'export type Permissions =\n'; const typeTail = ';'; const tab = ' '; @@ -59,6 +74,7 @@ const commentHead = `${tabs}/**\n`; const commentBody = `${tabzz}* `; const commentTail = `${tabzz}*/\n`; const sinceTag = '@since '; +const arkTS20Version = 20; const deprecatedTag = '@deprecated '; const orOperator = `${tabs}|${tab}`; @@ -66,42 +82,68 @@ const getPermissions = downloadPath => { try { const content = fs.readFileSync(downloadPath, { encoding: 'utf8' }); const configMap = JSON.parse(decodeURIComponent(content)); - if (configMap.module.definePermissions) { - return configMap.module.definePermissions; - } + return configMap.definePermissions.filter(permission => { + if (permission.availableType) { + return permission.availableType !== 'SERVICE'; + } + }); } catch (error) { console.error('Convert json file to object failed'); } return undefined; }; +const getArkTsVersion = (permission, fileType) => { + if (fileType === 'ts') { + return permission.since; + } + if (permission.since <= 20) { + if (permission.deprecated && permission.deprecated !== '') { + const deprecatedVersion = permission.deprecated.replace(/[^\d]/g, ''); + if (parseInt(deprecatedVersion) <= 20) { + return undefined; + } + return arkTS20Version; + } + return arkTS20Version; + } else { + return permission.since; + } +} + const convertJsonToDTS = (permissions, outputFilePath) => { if (fs.existsSync(outputFilePath)) { fs.unlinkSync(outputFilePath); } + const fileType = outputFilePath.substring(outputFilePath.lastIndexOf(".") + 1); fs.appendFileSync(outputFilePath, copyRight, 'utf8'); - fs.appendFileSync(outputFilePath, label, 'utf8'); + if (fileType === 'ts') { + fs.appendFileSync(outputFilePath, label, 'utf8'); + } else { + fs.appendFileSync(outputFilePath, label_1_2, 'utf8'); + } fs.appendFileSync(outputFilePath, typeHead, 'utf8'); + permissions.forEach((permission, index) => { - if (permission.since || permission.deprecated) { - fs.appendFileSync(outputFilePath, commentHead, 'utf8'); - if (permission.since) { - const since = `${commentBody}${sinceTag}${permission.since}\n`; - fs.appendFileSync(outputFilePath, since, 'utf8'); - } - if (permission.deprecated) { - const deprecated = `${commentBody}${deprecatedTag}${permission.deprecated}\n`; - fs.appendFileSync(outputFilePath, deprecated, 'utf8'); - } - fs.appendFileSync(outputFilePath, commentTail, 'utf8'); + const arkTsSinceVersion = getArkTsVersion(permission, fileType); + if (arkTsSinceVersion === undefined) { + return; + } + fs.appendFileSync(outputFilePath, commentHead, 'utf8'); + const since = `${commentBody}${sinceTag}${arkTsSinceVersion}\n`; + fs.appendFileSync(outputFilePath, since, 'utf8'); + if (permission.deprecated) { + const deprecated = `${commentBody}${deprecatedTag}${permission.deprecated}\n`; + fs.appendFileSync(outputFilePath, deprecated, 'utf8'); } + fs.appendFileSync(outputFilePath, commentTail, 'utf8'); const permissionName = `${index === 0 ? tabs : orOperator}'${permission.name}'${ index === permissions.length - 1 ? '' : '\n' }`; fs.appendFileSync(outputFilePath, permissionName, 'utf8'); }); fs.appendFileSync(outputFilePath, typeTail, 'utf8'); - console.log('Convert config.json definePermissions to permissions.d.ts successfully'); + console.log('Convert module.json definePermissions to permissions successfully, filename = ' + outputFilePath); }; /** diff --git a/bundle.json b/bundle.json new file mode 100644 index 0000000000000000000000000000000000000000..fec963ac4234b3c140b598a41e3cfa64783f768b --- /dev/null +++ b/bundle.json @@ -0,0 +1,50 @@ +{ + "name": "@interface/sdk", + "description": "openharmony sdk", + "version": "3.1", + "license": "Apache License 2.0", + "homePage": "https://gitee.com/openharmony/interface_sdk-js", + "repository": "https://gitee.com/openharmony/interface_sdk-js", + "supplier": "Organization: OpenHarmony", + "publishAs": "code-segment", + "segment": { + "destPath": "interface/sdk-js" + }, + "readmePath": { + "zh": "README_zh.md" + }, + "dirs": {}, + "scripts": {}, + "component": { + "name": "sdk", + "description": "openharmony sdk", + "subsystem": "sdk", + "features": [], + "adapted_system_type": [ + "mini", + "small", + "standard" + ], + "rom": "0KB", + "ram": "0KB", + "deps": { + "components": [], + "third_party": [] + }, + "build": { + "sub_component": [], + "inner_api": [ + { + "name": "//interface/sdk-js:ohos_ets_api" + }, + { + "name": "//interface/sdk-js:ohos_ets_arkts" + }, + { + "name": "//interface/sdk-js:ohos_ets_kits" + } + ], + "test": [] + } + } +} \ No newline at end of file diff --git a/exists_path.py b/exists_path.py new file mode 100755 index 0000000000000000000000000000000000000000..f1402517c8d5847528f6189d60aa2260d8ce4dfd --- /dev/null +++ b/exists_path.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# Copyright (c) 2025 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import sys +import os + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument('--path', required=True) + options = parser.parse_args() + print(str(os.path.exists(options.path))) + + +if __name__ == '__main__': + sys.exit(main()) diff --git a/interface_config.gni b/interface_config.gni index e5d3bd01fe002defeb3679db607b974b6265e7f0..ecd433d2e9c9083b5e181560c90c8390ddcb4101 100644 --- a/interface_config.gni +++ b/interface_config.gni @@ -19,3 +19,10 @@ common_api_src = [ "//interface/sdk-js/api/@system.prompt.d.ts", "//interface/sdk-js/api/@system.router.d.ts", ] +common_api_src_ets2 = [ + "//interface/sdk-js/api/@system.app.d.ts", + "//interface/sdk-js/api/@system.configuration.d.ts", + "//interface/sdk-js/api/@system.mediaquery.d.ts", + "//interface/sdk-js/api/@system.prompt.d.ts", +] +sdk_type = "ets" diff --git a/kits/@kit.AVSessionKit.d.ts b/kits/@kit.AVSessionKit.d.ts index 93753191f5c688df722bb4b4e555269de623b372..8663f2bcbaddba754a63dc1643a6571e7cdbeaca 100644 --- a/kits/@kit.AVSessionKit.d.ts +++ b/kits/@kit.AVSessionKit.d.ts @@ -19,7 +19,7 @@ */ import AVCastPicker from '@ohos.multimedia.avCastPicker'; -import AVInputCastPicker from '@ohos.multimedia.avInputCastPicker'; +import { AVInputCastPicker } from '@ohos.multimedia.avInputCastPicker'; import { AVCastPickerState, AVCastPickerStyle, AVCastPickerColorMode } from '@ohos.multimedia.avCastPickerParam'; import avSession from '@ohos.multimedia.avsession'; import MediaControlExtensionAbility from '@ohos.app.ability.MediaControlExtensionAbility'; diff --git a/kits/@kit.AbilityKit.d.ts b/kits/@kit.AbilityKit.d.ts index 1fceb9a17a764b69c79fdd1b123a16c3946c5dfb..8244ae37f0cd0a6d0e942b41094d5b69de94d5a6 100644 --- a/kits/@kit.AbilityKit.d.ts +++ b/kits/@kit.AbilityKit.d.ts @@ -55,6 +55,9 @@ import insightIntent from '@ohos.app.ability.insightIntent'; import InsightIntentContext from '@ohos.app.ability.InsightIntentContext'; import insightIntentDriver from '@ohos.app.ability.insightIntentDriver'; import InsightIntentExecutor from '@ohos.app.ability.InsightIntentExecutor'; +import { InsightIntentLink, InsightIntentPage, InsightIntentFunctionMethod, InsightIntentFunction, + InsightIntentEntry, LinkParamCategory } from '@ohos.app.ability.InsightIntentDecorator'; +import InsightIntentEntryExecutor from '@ohos.app.ability.InsightIntentEntryExecutor'; import missionManager from '@ohos.app.ability.missionManager'; import OpenLinkOptions from '@ohos.app.ability.OpenLinkOptions'; import quickFixManager from '@ohos.app.ability.quickFixManager'; @@ -106,6 +109,9 @@ import UIServiceExtensionAbility from '@ohos.app.ability.UIServiceExtensionAbili import shortcutManager from '@ohos.bundle.shortcutManager'; import application from '@ohos.app.ability.application'; import appDomainVerify from '@ohos.bundle.appDomainVerify'; +import CompletionHandler from '@ohos.app.ability.CompletionHandler'; +import AppServiceExtensionAbility from '@ohos.app.ability.AppServiceExtensionAbility'; +import kioskManager from '@ohos.app.ability.kioskManager'; export { Ability, AbilityConstant, AbilityLifecycleCallback, AbilityStage, ActionExtensionAbility, @@ -123,6 +129,18 @@ export { overlay, particleAbility, quickFixManager, uriPermissionManager, wantAgent, wantConstant, privacyManager, EmbeddedUIExtensionAbility, StartupConfig, StartupConfigEntry, StartupListener, StartupTask, startupManager, screenLockFileManager, AtomicServiceOptions, EmbeddableUIAbility, ChildProcessArgs, ChildProcessOptions, - sendableContextManager, PhotoEditorExtensionAbility, UIServiceExtensionAbility, shortcutManager, application, appDomainVerify + sendableContextManager, PhotoEditorExtensionAbility, UIServiceExtensionAbility, shortcutManager, application, appDomainVerify, + InsightIntentLink, InsightIntentPage, InsightIntentFunctionMethod, InsightIntentFunction, InsightIntentEntryExecutor, + InsightIntentEntry, LinkParamCategory, CompletionHandler, AppServiceExtensionAbility, kioskManager +}; +/*** if arkts 1.2 */ +import bundleManager from '@ohos.bundle.bundleManager'; +import bundleResourceManager from '@ohos.bundle.bundleResourceManager'; +import launcherBundleManager from '@ohos.bundle.launcherBundleManager'; +import shortcutManager from '@ohos.bundle.shortcutManager'; + +export { + bundleManager, bundleResourceManager, launcherBundleManager, shortcutManager }; +/*** endif */ diff --git a/kits/@kit.ArkData.d.ts b/kits/@kit.ArkData.d.ts index fb5e391298c84aabcaf4eb3946d04d6a0d056ebc..6155b13f10761b703b8d1e931c054bcbd6a8f9fe 100644 --- a/kits/@kit.ArkData.d.ts +++ b/kits/@kit.ArkData.d.ts @@ -37,12 +37,12 @@ import { ValueType, ValuesBucket } from '@ohos.data.ValuesBucket'; import sendablePreferences from '@ohos.data.sendablePreferences'; import sendableRelationalStore from '@ohos.data.sendableRelationalStore'; import graphStore from '@ohos.data.graphStore'; -import collaborationEditObject from '@ohos.data.collaborationEditObject'; import intelligence from '@ohos.data.intelligence'; +import { ContentFormCard, FormType } from '@ohos.data.UdmfComponents'; export { DataShareExtensionAbility, DataShareResultSet, DataType, ValueType, ValuesBucket, cloudData, cloudExtension, commonType, dataShare, dataSharePredicates, distributedDataObject, distributedKVStore, preferences, relationalStore, unifiedDataChannel, uniformTypeDescriptor, uniformDataStruct, sendablePreferences, dataAbility, - sendableRelationalStore, graphStore, collaborationEditObject, intelligence + sendableRelationalStore, graphStore, intelligence, ContentFormCard, FormType }; diff --git a/kits/@kit.ArkGraphics3D.d.ts b/kits/@kit.ArkGraphics3D.d.ts index 3fdf1b967eef38ed792be401e90df120aee85702..5d9966069ecf2f110c3502d47fa88f0effa42446 100644 --- a/kits/@kit.ArkGraphics3D.d.ts +++ b/kits/@kit.ArkGraphics3D.d.ts @@ -24,7 +24,9 @@ import { ToneMappingType, ToneMappingSettings, PostProcessSettings, BloomSetting SceneResourceType, SceneResource, Shader, MaterialType, Material, ShaderMaterial, SubMesh, Mesh, Animation, EnvironmentBackgroundType, Environment, Image, MeshResource, LayerMask, NodeType, Container, Node, Geometry, LightType, Light, SpotLight, DirectionalLight, Camera, - SceneResourceParameters, SceneNodeParameters, SceneResourceFactory, Scene, RenderParameters } from '@ohos.graphics.scene'; + SceneResourceParameters, SceneNodeParameters, SceneResourceFactory, Scene, RenderParameters, + RaycastResult, RaycastParameters, CullMode, Blend, RenderSort, MaterialProperty, MetallicRoughnessMaterial, + Morpher, Sampler, SamplerFilter, SamplerAddressMode, RenderResourceFactory, SceneComponent, RenderContext } from '@ohos.graphics.scene'; export { ToneMappingType, ToneMappingSettings, PostProcessSettings, BloomSettings, Vec2, Vec3, Vec4, Color, Rect, Quaternion, Aabb, Position3, Rotation3, Scale3, @@ -32,4 +34,6 @@ export { ToneMappingType, ToneMappingSettings, PostProcessSettings, BloomSetting SceneResourceType, SceneResource, Shader, MaterialType, Material, ShaderMaterial, SubMesh, Mesh, Animation, EnvironmentBackgroundType, Environment, Image, MeshResource, LayerMask, NodeType, Container, Node, Geometry, LightType, Light, SpotLight, DirectionalLight, Camera, - SceneResourceParameters, SceneNodeParameters, SceneResourceFactory, Scene, RenderParameters }; + SceneResourceParameters, SceneNodeParameters, SceneResourceFactory, Scene, RenderParameters, + RaycastResult, RaycastParameters, CullMode, Blend, RenderSort, MaterialProperty, MetallicRoughnessMaterial, + Morpher, Sampler, SamplerFilter, SamplerAddressMode, RenderResourceFactory, SceneComponent, RenderContext }; diff --git a/kits/@kit.ArkTS.d.ets b/kits/@kit.ArkTS.d.ets new file mode 100644 index 0000000000000000000000000000000000000000..d0c5c6b2c468e23887f3a75a32837645c929465a --- /dev/null +++ b/kits/@kit.ArkTS.d.ets @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file + * @kit ArkTS + * @arkts 1.2 + */ + +import buffer from '@ohos.buffer'; +import uri from '@ohos.uri'; +import url from '@ohos.url'; +import ArrayList from '@ohos.util.ArrayList'; +import util from '@ohos.util'; +import Deque from '@ohos.util.Deque'; +import LightWeightMap from '@ohos.util.LightWeightMap'; +import Queue from '@ohos.util.Queue'; +import JSON from '@ohos.util.json'; +import stream from '@ohos.util.stream'; + +export { + ArrayList, Deque, HashMap, HashSet, LightWeightMap, LightWeightSet, LinkedList, List, + PlainArray, Queue, Stack, TreeMap, TreeSet, buffer, uri, url, util, JSON, stream +}; diff --git a/kits/@kit.ArkTS.d.ts b/kits/@kit.ArkTS.d.ts index 3440d10c01c48ad4cae719c19eccd0691d114610..d3335d8e22b4f0289da62a2a59a433ed1cfa1863 100644 --- a/kits/@kit.ArkTS.d.ts +++ b/kits/@kit.ArkTS.d.ts @@ -19,6 +19,7 @@ */ import buffer from '@ohos.buffer'; +import fastbuffer from '@ohos.fastbuffer'; import convertxml from '@ohos.convertxml'; import process from '@ohos.process'; import taskpool from '@ohos.taskpool'; @@ -56,6 +57,6 @@ export { ArrayList, convertxml, DedicatedWorkerGlobalScope, Deque, ErrorEvent, Event, EventListener, EventTarget, HashMap, HashSet, LightWeightMap, LightWeightSet, LinkedList, List, MessageEvent, MessageEvents, PlainArray, PostMessageOptions, Queue, Stack, ThreadWorkerGlobalScope, TreeMap, - TreeSet, Vector, WorkerEventListener, WorkerEventTarget, WorkerOptions, ThreadWorkerPriority, buffer, process, taskpool, - uri, url, util, worker, xml, JSON, lang, ArkTSUtils, collections, stream, Decimal + TreeSet, Vector, WorkerEventListener, WorkerEventTarget, WorkerOptions, ThreadWorkerPriority, buffer, fastbuffer, process, + taskpool, uri, url, util, worker, xml, JSON, lang, ArkTSUtils, collections, stream, Decimal }; diff --git a/kits/@kit.ArkUI.d.ts b/kits/@kit.ArkUI.d.ts index c24c9a524f6c06b3dd7398b57bf95f7503eef8e1..2b8d6720b5c8af74206b1d9f61e59df7445c5306 100644 --- a/kits/@kit.ArkUI.d.ts +++ b/kits/@kit.ArkUI.d.ts @@ -21,7 +21,9 @@ import windowAnimationManager from '@ohos.animation.windowAnimationManager'; import Animator, { AnimatorOptions, AnimatorResult, SimpleAnimatorOptions } from '@ohos.animator'; import WindowExtensionAbility, { WindowExtensionContext } from '@ohos.application.WindowExtensionAbility'; -import { AtomicServiceNavigation, NavDestinationBuilder } from '@ohos.atomicservice.AtomicServiceNavigation'; +import { + AtomicServiceNavigation, NavDestinationBuilder, MixMode, GradientAlpha, BackgroundTheme, TitleBarType, SideBarOptions, TitleOptions, GradientBackground +} from '@ohos.atomicservice.AtomicServiceNavigation'; import { AtomicServiceSearch, InputFilterParams, @@ -73,7 +75,7 @@ import { SegmentButton, SegmentButtonOptions, SegmentButtonItemOptionsArray, TabSegmentButtonOptions, TabSegmentButtonConstructionOptions, CapsuleSegmentButtonOptions, CapsuleSegmentButtonConstructionOptions, SegmentButtonTextItem, SegmentButtonIconItem, SegmentButtonIconTextItem, DimensionNoPercentage, CommonSegmentButtonOptions, - ItemRestriction, SegmentButtonItemTuple, SegmentButtonItemArray, SegmentButtonItemOptionsConstructorOptions, SegmentButtonItemOptions + ItemRestriction, SegmentButtonItemTuple, SegmentButtonItemArray, SegmentButtonItemOptionsConstructorOptions, SegmentButtonItemOptions, BorderRadiusMode } from '@ohos.arkui.advanced.SegmentButton'; import { EditorEventInfo, EditorMenuOptions, ExpandedMenuOptions, SelectionMenu, SelectionMenuOptions @@ -98,17 +100,19 @@ import dragController from '@ohos.arkui.dragController'; import { DrawableDescriptor, LayeredDrawableDescriptor, PixelMapDrawableDescriptor, AnimationOptions, AnimatedDrawableDescriptor } from '@ohos.arkui.drawableDescriptor'; import inspector from '@ohos.arkui.inspector'; import { - NodeRenderType, RenderOptions, BuilderNode, BuildOptions, NodeController, FrameNode, DrawContext, Size, Offset, Position, Pivot, Scale, Translation, Matrix4, Rotation, - Frame, RenderNode, XComponentNode, LengthMetrics, LengthMetricsUnit, LengthUnit, ColorMetrics, LayoutConstraint, ComponentContent, NodeContent, Content, typeNode, ShapeMask, ShapeClip, - NodeAdapter, Rect, RoundRect, edgeColors, edgeWidths, borderStyles, borderRadiuses, ExpandMode + NodeRenderType, RenderOptions, BuilderNode, BuildOptions, NodeController, FrameNode, DrawContext, Size, Offset, Position, Pivot, + Scale, Translation, Matrix4, Rotation, Frame, RenderNode, XComponentNode, LengthMetrics, ColorMetrics, LengthUnit, LengthMetricsUnit, + LayoutConstraint, ComponentContent, NodeContent, Content, typeNode, NodeAdapter, ShapeMask, ShapeClip, Rect, RoundRect, + edgeColors, edgeWidths, borderStyles, borderRadiuses, ExpandMode, UIState } from '@ohos.arkui.node'; import uiObserver from '@ohos.arkui.observer'; import performanceMonitor from '@ohos.arkui.performanceMonitor'; +import { AppStorageV2, PersistenceV2, Type, UIUtils, ConnectOptions } from '@ohos.arkui.StateManagement'; import { RectShape, CircleShape, EllipseShape, PathShape } from '@ohos.arkui.shape'; import { - AtomicServiceBar, ComponentUtils, ContextMenuController, CursorController, DragController, Font, KeyboardAvoidMode, MediaQuery, OverlayManager, PromptAction, Router, - UIContext, UIInspector, UIObserver, PageInfo, SwiperDynamicSyncScene, SwiperDynamicSyncSceneType, MarqueeDynamicSyncScene, MarqueeDynamicSyncSceneType, FrameCallback, - MeasureUtils, OverlayManagerOptions, TargetInfo + AtomicServiceBar, ComponentUtils, ContextMenuController, CursorController, DragController, Font, KeyboardAvoidMode, MediaQuery, OverlayManager, + PromptAction, Router, UIContext, UIInspector, UIObserver, PageInfo, SwiperDynamicSyncScene, SwiperDynamicSyncSceneType, MeasureUtils, FrameCallback, + OverlayManagerOptions, TargetInfo, MarqueeDynamicSyncScene, MarqueeDynamicSyncSceneType, TextMenuController } from '@ohos.arkui.UIContext'; import curves from '@ohos.curves'; import { @@ -142,6 +146,7 @@ import SystemRouter, { BackRouterOptions, DisableAlertBeforeBackPageOptions, EnableAlertBeforeBackPageOptions, RouterOptions, RouterState } from '@system.router'; +import { ArcList, ArcListItem, ArcListAttribute, ArcListItemAttribute } from '@ohos.arkui.ArcList'; import { ArcAlphabetIndexer, ArcAlphabetIndexerAttribute } from '@ohos.arkui.ArcAlphabetIndexer'; import { ArcScrollBar, ArcScrollBarAttribute } from '@ohos.arkui.ArcScrollBar'; import { Colors, CustomColors, Theme, ThemeControl, CustomTheme } from '@ohos.arkui.theme'; @@ -155,11 +160,8 @@ import { HoverModeStatus, OnHoverStatusChangeHandler, } from '@ohos.arkui.advanced.FoldSplitContainer'; -import { AppStorageV2, PersistenceV2, Type, UIUtils, ConnectOptions } from '@ohos.arkui.StateManagement'; -import { IDataSourcePrefetching, IPrefetcher, BasicPrefetcher } from '@ohos.arkui.Prefetcher'; import uiExtension from '@ohos.arkui.uiExtension'; import { FullScreenLaunchComponent } from '@ohos.arkui.advanced.FullScreenLaunchComponent'; -import { ArcList, ArcListItem, ArcListAttribute, ArcListItemAttribute } from '@ohos.arkui.ArcList'; import { AtomicServiceTabs, TabBarOptions, TabBarPosition, TabContentBuilder, OnContentWillChangeCallback } from '@ohos.atomicservice.AtomicServiceTabs'; import { CommonModifier, ColumnModifier, ColumnSplitModifier, RowModifier, RowSplitModifier, SideBarContainerModifier, @@ -174,8 +176,9 @@ import { MarqueeModifier, ProgressModifier, QRCodeModifier, TextClockModifier, TextTimerModifier, LineModifier, PathModifier, PolygonModifier, PolylineModifier, RectModifier, ShapeModifier, AlphabetIndexerModifier, HyperlinkModifier, MenuModifier, MenuItemModifier, PanelModifier, SymbolGlyphModifier, AttributeUpdater, - ContainerSpanModifier, SymbolSpanModifier, ParticleModifier -} from "@ohos.arkui.modifier"; + ContainerSpanModifier, SymbolSpanModifier, ParticleModifier, StepperModifier +} from '@ohos.arkui.modifier'; +import { IDataSourcePrefetching, IPrefetcher, BasicPrefetcher } from '@ohos.arkui.Prefetcher'; import { DownloadFileButton, DownloadLayoutDirection, @@ -191,10 +194,6 @@ import { import { SplitPolicy, MultiNavigation, MultiNavPathStack } from '@ohos.arkui.advanced.MultiNavigation'; -import { - SubHeaderV2IconType, SubHeaderV2Title, SubHeaderV2Select, - SubHeaderV2, SubHeaderV2OperationType, SubHeaderV2OperationItem, SubHeaderV2OperationItemType -} from '@ohos.arkui.advanced.SubHeaderV2'; import { ArcSlider, ArcSliderPosition, @@ -214,6 +213,10 @@ import { ArcDirection, ArcSwiperController } from '@ohos.arkui.ArcSwiper'; +import { + SubHeaderV2IconType, SubHeaderV2Title, SubHeaderV2Select, + SubHeaderV2, SubHeaderV2OperationType, SubHeaderV2OperationItem, SubHeaderV2OperationItemType +} from '@ohos.arkui.advanced.SubHeaderV2'; import { SegmentButtonV2ItemOptions, OnSelectedIndexChange, @@ -228,7 +231,7 @@ import { HalfScreenLaunchComponent } from '@ohos.atomicservice.HalfScreenLaunchC export { AtomicServiceSearch, InputFilterParams, SearchButtonParams, MenuAlignParams, SearchParams, SelectParams, OperationParams, AddFormMenuItem, AddFormOptions, AlertDialog, Animator, AnimatorOptions, AnimatorResult, SimpleAnimatorOptions, App, AppResponse, AtomicServiceBar, - AtomicServiceNavigation, NavDestinationBuilder, + AtomicServiceNavigation, NavDestinationBuilder, MixMode, GradientAlpha, BackgroundTheme, TitleBarType, SideBarOptions, TitleOptions, GradientBackground, NavPushPathHelper, BackRouterOptions, BuilderNode, Button, ButtonOptions, CallbackParam, ArcButton, ArcButtonOptions, ArcButtonPosition, ArcButtonStyleMode, @@ -248,8 +251,8 @@ export { PopupTextOptions, Position, PrefixIconOptions, ProgressButton, ProgressButtonV2, ProgressButtonV2Color, ProgressButtonV2ColorOptions, Prompt, PromptAction, PromptOptions, RectShape, RenderNode, RenderOptions, BuildOptions, RequestFullWindowOptions, Rotation, Router, RouterOptions, RouterState, Scale, ScreenOnVisibleOptions, SegmentButton, SegmentButtonItemOptionsArray, SegmentButtonOptions, SelectDialog, SelectOptions, SelectTitleBar, SelectTitleBarMenuItem, SelectionMenu, - SelectionMenuOptions, ShapeMask, ShapeClip, ShowActionMenuOptions, ShowDialogOptions, ShowDialogSuccessResponse, - ShowToastOptions, Size, SplitLayout, SubHeader, SuffixIconOptions, SwipeRefresher, SymbolOptions, SystemMediaQuery, SystemRouter, + SelectionMenuOptions, ShapeMask, ShapeClip, ShowActionMenuOptions, ShowDialogOptions, ShowDialogSuccessResponse, AppStorageV2, PersistenceV2, Type, UIUtils, + ConnectOptions, ShowToastOptions, Size, SplitLayout, SubHeader, SuffixIconOptions, SwipeRefresher, SymbolOptions, SystemMediaQuery, SystemRouter, SubHeaderV2IconType, SubHeaderV2Title, SubHeaderV2Select, SubHeaderV2, SubHeaderV2OperationType, SubHeaderV2OperationItem, SubHeaderV2OperationItemType, TabSegmentButtonConstructionOptions, TabSegmentButtonOptions, TabTitleBar, TabTitleBarMenuItem, TabTitleBarTabItem, @@ -257,19 +260,18 @@ export { ToolBarV2ItemState, ToolBarV2SymbolGlyph, ToolBarV2SymbolGlyphOptions, ToolBarV2ItemText, ToolBarV2ItemTextOptions, ToolBarV2ItemIconType, ToolBarV2ItemImage, ToolBarV2ItemImageOptions, ToolBarV2, ToolBarV2Item, ToolBarV2ItemOptions, ToolBarV2Modifier, ToolBarV2ItemAction, TreeListenerManager, TreeView, UIContext, UIInspector, UIObserver, PageInfo, WindowExtensionAbility, WindowExtensionContext, XComponentNode, - LengthMetrics, LengthMetricsUnit, LengthUnit, ColorMetrics, LayoutConstraint, ComponentContent, NodeContent, Content, componentSnapshot, componentUtils, curves, display, dragController, dragInteraction, - font, inspector, matrix4, mediaquery, performanceMonitor, pluginComponentManager, PluginComponentTemplate, prompt, promptAction, LevelMode, ImmersiveMode, LevelOrder, router, - AtomicServiceWeb, OnMessageEvent, OnErrorReceiveEvent, OnHttpErrorReceiveEvent, OnPageBeginEvent, OnPageEndEvent, + LengthMetrics, LengthUnit, ColorMetrics, LengthMetricsUnit, LayoutConstraint, ComponentContent, NodeContent, Content, + componentSnapshot, componentUtils, curves, display, dragController, dragInteraction, + font, inspector, matrix4, mediaquery, performanceMonitor, pluginComponentManager, PluginComponentTemplate, prompt, promptAction, router, + LevelMode, ImmersiveMode, LevelOrder, AtomicServiceWeb, OnMessageEvent, OnErrorReceiveEvent, OnHttpErrorReceiveEvent, OnPageBeginEvent, OnPageEndEvent, AtomicServiceWebController, OnLoadInterceptEvent, OnProgressChangeEvent, OnLoadInterceptCallback, WebHeader, screen, screenshot, uiAppearance, uiExtensionHost, uiObserver, window, windowAnimationManager, CustomContentDialog, PopoverDialog, PopoverOptions, AtomicServiceTabs, TabBarOptions, TabBarPosition, TabContentBuilder, OnContentWillChangeCallback, IconOptions, ChipItemLabelOptions, ChipGroupItemOptions, ChipItemStyle, ChipGroupSpaceOptions, IconItemOptions, IconGroupSuffix, ChipGroup, Colors, CustomColors, Theme, ThemeControl, CustomTheme, ChipSymbolGlyphOptions, ExtraRegionPosition, ExpandedRegionLayoutOptions, HoverModeRegionLayoutOptions, FoldedRegionLayoutOptions, PresetSplitRatio, FoldSplitContainer, - HoverModeStatus, OnHoverStatusChangeHandler, - AppStorageV2, PersistenceV2, Type, UIUtils, ConnectOptions, typeNode, - IDataSourcePrefetching, IPrefetcher, BasicPrefetcher, SwiperDynamicSyncScene, SwiperDynamicSyncSceneType, MarqueeDynamicSyncScene, MarqueeDynamicSyncSceneType, - uiExtension, FullScreenLaunchComponent, MeasureUtils, + HoverModeStatus, OnHoverStatusChangeHandler, SwiperDynamicSyncScene, SwiperDynamicSyncSceneType, uiExtension, FullScreenLaunchComponent, MeasureUtils, + typeNode, CommonModifier, ColumnModifier, ColumnSplitModifier, RowModifier, RowSplitModifier, SideBarContainerModifier, BlankModifier, DividerModifier, GridColModifier, GridRowModifier, NavDestinationModifier, NavigatorModifier, StackModifier, NavigationModifier, NavRouterModifier, StepperItemModifier, TabsModifier, GridModifier, @@ -282,21 +284,25 @@ export { MarqueeModifier, ProgressModifier, QRCodeModifier, TextClockModifier, TextTimerModifier, LineModifier, PathModifier, PolygonModifier, PolylineModifier, RectModifier, ShapeModifier, AlphabetIndexerModifier, FormComponentModifier, HyperlinkModifier, MenuModifier, MenuItemModifier, PanelModifier, SymbolGlyphModifier, AttributeUpdater, SymbolSpanModifier, - ContainerSpanModifier, SegmentButtonTextItem, SegmentButtonIconItem, SegmentButtonIconTextItem, DimensionNoPercentage, - CommonSegmentButtonOptions, ItemRestriction, SegmentButtonItemTuple, SegmentButtonItemArray, SegmentButtonItemOptionsConstructorOptions, SegmentButtonItemOptions, - PixelMapDrawableDescriptor, AnimationOptions, AnimatedDrawableDescriptor, NodeAdapter, DownloadFileButton, - DownloadLayoutDirection, DownloadIconStyle, DownloadDescription, DownloadContentOptions, DownloadStyleOptions, + ContainerSpanModifier, PixelMapDrawableDescriptor, AnimationOptions, AnimatedDrawableDescriptor, + IDataSourcePrefetching, IPrefetcher, BasicPrefetcher, MarqueeDynamicSyncScene, MarqueeDynamicSyncSceneType, + SegmentButtonTextItem, SegmentButtonIconItem, SegmentButtonIconTextItem, DimensionNoPercentage, + CommonSegmentButtonOptions, ItemRestriction, SegmentButtonItemTuple, SegmentButtonItemArray, + SegmentButtonItemOptionsConstructorOptions, SegmentButtonItemOptions, BorderRadiusMode, DownloadFileButton, + DownloadLayoutDirection, DownloadIconStyle, DownloadDescription, DownloadContentOptions, DownloadStyleOptions, NodeAdapter, Rect, RoundRect, edgeColors, edgeWidths, borderStyles, borderRadiuses, ParticleModifier, InnerFullScreenLaunchComponent, LaunchController, AccessibilitySelectedType, AccessibilityOptions, CloseOptions, ChipSuffixSymbolGlyphOptions, + SuffixImageIconOptions, SymbolItemOptions, ArcList, ArcListItem, ArcListAttribute, ArcListItemAttribute, + SplitPolicy, MultiNavigation, MultiNavPathStack, ArcAlphabetIndexer, ArcAlphabetIndexerAttribute, - SuffixImageIconOptions, SymbolItemOptions, - SplitPolicy, MultiNavigation, MultiNavPathStack, OverlayManagerOptions, - ArcList, ArcListItem, ArcListAttribute, ArcListItemAttribute, ArcScrollBar, ArcScrollBarAttribute, ArcSlider, ArcSliderOptions, ArcSliderOptionsConstructorOptions, ArcSliderLayoutOptions, ArcSliderLayoutOptionsConstructorOptions, ArcSliderStyleOptions, ArcSliderStyleOptionsConstructorOptions, - ArcSliderValueOptions, ArcSliderValueOptionsConstructorOptions, - SegmentButtonV2ItemOptions, OnSelectedIndexChange, OnSelectedIndexesChange, SegmentButtonV2Item, SegmentButtonV2Items, TabSegmentButtonV2, CapsuleSegmentButtonV2, MultiCapsuleSegmentButtonV2, + ArcSliderValueOptions, ArcSliderValueOptionsConstructorOptions, ArcScrollBar, ArcScrollBarAttribute, OverlayManagerOptions, + SegmentButtonV2ItemOptions, OnSelectedIndexChange, OnSelectedIndexesChange, SegmentButtonV2Item, SegmentButtonV2Items, + TabSegmentButtonV2, CapsuleSegmentButtonV2, MultiCapsuleSegmentButtonV2, AlertDialogV2, AdvancedDialogV2Button, AdvancedDialogV2ButtonOptions, AdvancedDialogV2ButtonAction, AdvancedDialogV2OnCheckedChange, - ConfirmDialogV2, LoadingDialogV2, SelectDialogV2, TipsDialogV2, CustomContentDialogV2, PopoverDialogV2, PopoverDialogV2OnVisibleChange, PopoverDialogV2Options, ExpandMode, - HalfScreenLaunchComponent, ArcSliderPosition, ArcSwiper, ArcSwiperAttribute, ArcDotIndicator, ArcDirection, ArcSwiperController, TargetInfo, + ConfirmDialogV2, LoadingDialogV2, SelectDialogV2, TipsDialogV2, CustomContentDialogV2, PopoverDialogV2, PopoverDialogV2OnVisibleChange, PopoverDialogV2Options, + ExpandMode, + HalfScreenLaunchComponent, ArcSliderPosition, ArcSwiper, ArcSwiperAttribute, ArcDotIndicator, ArcDirection, ArcSwiperController, TargetInfo, UIState, + StepperModifier, TextMenuController }; diff --git a/kits/@kit.CryptoArchitectureKit.d.ts b/kits/@kit.CryptoArchitectureKit.d.ts index 264759c1b2bf9f6e7472f84f38e1e80481d6be44..485c0a18c6da94a7aa62e4e5efcbe4b1ab2651e4 100644 --- a/kits/@kit.CryptoArchitectureKit.d.ts +++ b/kits/@kit.CryptoArchitectureKit.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Copyright (c) 2022-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -18,7 +18,15 @@ * @kit CryptoArchitectureKit */ +/*** if arkts 1.1 */ import cryptoFramework from '@ohos.security.cryptoFramework'; import Cipher, { CipherAesOptions, CipherResponse, CipherRsaOptions } from '@system.cipher'; export { Cipher, CipherAesOptions, CipherResponse, CipherRsaOptions, cryptoFramework }; +/*** endif */ + +/*** if arkts 1.2 */ +import cryptoFramework from '@ohos.security.cryptoFramework'; + +export { cryptoFramework }; +/*** endif */ diff --git a/kits/@kit.DeviceCertificateKit.d.ts b/kits/@kit.DeviceCertificateKit.d.ts index cedef101efca4710a7edb157ccaa1562a91986b1..dfb85ff9c9d94bc8c3bf1f0a7a63a5cf53f88811 100644 --- a/kits/@kit.DeviceCertificateKit.d.ts +++ b/kits/@kit.DeviceCertificateKit.d.ts @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022-2023 Huawei Device Co., Ltd. + * Copyright (c) 2022-2025 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at @@ -18,8 +18,16 @@ * @kit DeviceCertificateKit */ +/*** if arkts 1.1 */ import cert from '@ohos.security.cert'; import certificateManager from '@ohos.security.certManager'; import certificateManagerDialog from '@ohos.security.certManagerDialog'; export { cert, certificateManager, certificateManagerDialog }; +/*** endif */ + +/*** if arkts 1.2 */ +import cert from '@ohos.security.cert'; + +export { cert }; +/*** endif */ diff --git a/kits/@kit.DistributedServiceKit.d.ts b/kits/@kit.DistributedServiceKit.d.ts index 92b5dda4f099991f4d2311a4395577d0a0427478..35ccad8371481bcff393054f54a9de307caa2ac0 100644 --- a/kits/@kit.DistributedServiceKit.d.ts +++ b/kits/@kit.DistributedServiceKit.d.ts @@ -23,10 +23,11 @@ import distributedDeviceManager from '@ohos.distributedDeviceManager'; import deviceManager from '@ohos.distributedHardware.deviceManager'; import hardwareManager from '@ohos.distributedHardware.hardwareManager'; import abilityConnectionManager from '@ohos.distributedsched.abilityConnectionManager'; +import linkEnhance from '@ohos.distributedsched.linkEnhance'; import DistributedExtensionAbility from '@ohos.application.DistributedExtensionAbility'; import DistributedExtensionContext from '@ohos.application.DistributedExtensionContext'; export { cooperate, deviceManager, distributedDeviceManager, hardwareManager, abilityConnectionManager, - DistributedExtensionAbility, DistributedExtensionContext + linkEnhance, DistributedExtensionAbility, DistributedExtensionContext }; diff --git a/kits/@kit.FormKit.d.ts b/kits/@kit.FormKit.d.ts index b7c8c12ddd012d84fc62d303125d6a137b70ed71..efe63d3e1a76f0bd087f7f61ea7f8209ff32047f 100644 --- a/kits/@kit.FormKit.d.ts +++ b/kits/@kit.FormKit.d.ts @@ -27,5 +27,9 @@ import formObserver from '@ohos.app.form.formObserver'; import formProvider from '@ohos.app.form.formProvider'; import formError from '@ohos.application.formError'; import FormEditExtensionAbility from '@ohos.app.form.FormEditExtensionAbility'; +import LiveFormExtensionAbility, { LiveFormInfo } from '@ohos.app.form.LiveFormExtensionAbility'; -export { FormExtensionAbility, formAgent, formBindingData, formError, formHost, formInfo, formObserver, formProvider, FormEditExtensionAbility }; +export { + FormExtensionAbility, formAgent, formBindingData, formError, formHost, formInfo, formObserver, formProvider, + FormEditExtensionAbility, LiveFormExtensionAbility, LiveFormInfo +}; diff --git a/kits/@kit.LocalizationKit.d.ts b/kits/@kit.LocalizationKit.d.ts index cc7bd0455952f5a3ed203963b0579cb52355a537..3f11a644b2ab8b1c6d1c76c9bf743cf1cd600812 100644 --- a/kits/@kit.LocalizationKit.d.ts +++ b/kits/@kit.LocalizationKit.d.ts @@ -18,9 +18,10 @@ * @kit LocalizationKit */ +import fontManager from '@ohos.fontManager' import i18n from '@ohos.i18n'; import intl from '@ohos.intl'; import resourceManager from '@ohos.resourceManager'; import sendableResourceManager from '@ohos.sendableResourceManager'; -export { i18n, intl, resourceManager, sendableResourceManager }; +export { fontManager, i18n, intl, resourceManager, sendableResourceManager }; diff --git a/kits/@kit.MediaLibraryKit.d.ts b/kits/@kit.MediaLibraryKit.d.ts index bb4ab4318b5ec94a5affd95b9ba51b65c7c0cfa8..8ed251fea60f09aa1b3a00f8f873f8320871e874 100644 --- a/kits/@kit.MediaLibraryKit.d.ts +++ b/kits/@kit.MediaLibraryKit.d.ts @@ -26,7 +26,8 @@ import { PhotoPickerComponent, PickerController, PickerOptions, DataType, BaseItemInfo, ItemInfo, PhotoBrowserInfo, AnimatorParams, MaxSelected, ItemType, ClickType, PickerOrientation, - SelectMode, PickerColorMode, ReminderMode, MaxCountType, PhotoBrowserRange + SelectMode, PickerColorMode, ReminderMode, MaxCountType, PhotoBrowserRange, + PhotoBrowserUIElement, ItemsDeletedCallback, ExceedMaxSelectedCallback, CurrentAlbumDeletedCallback } from '@ohos.file.PhotoPickerComponent'; import { RecentPhotoComponent, RecentPhotoCheckResultCallback, @@ -41,5 +42,6 @@ export { SelectMode, PickerColorMode, ReminderMode, MaxCountType, PhotoBrowserRange, AlbumPickerComponent, AlbumPickerOptions, AlbumInfo, EmptyAreaClickCallback, RecentPhotoComponent, RecentPhotoCheckResultCallback, - RecentPhotoClickCallback, RecentPhotoOptions, PhotoSource + RecentPhotoClickCallback, RecentPhotoOptions, PhotoSource, + PhotoBrowserUIElement, ItemsDeletedCallback, ExceedMaxSelectedCallback, CurrentAlbumDeletedCallback }; diff --git a/kits/@kit.MultimodalAwarenessKit.d.ts b/kits/@kit.MultimodalAwarenessKit.d.ts index 783b130d24b83be799327176b4a3523c592f49e2..ff75eea5605fa7d6f6c687b87186018e77f5a1a1 100644 --- a/kits/@kit.MultimodalAwarenessKit.d.ts +++ b/kits/@kit.MultimodalAwarenessKit.d.ts @@ -20,5 +20,7 @@ import stationary from '@ohos.stationary'; import motion from '@ohos.multimodalAwareness.motion'; +import deviceStatus from '@ohos.multimodalAwareness.deviceStatus'; +import metadataBinding from '@ohos.multimodalAwareness.metadataBinding'; -export { stationary, motion }; +export { stationary, motion, deviceStatus, metadataBinding }; diff --git a/kits/@kit.TestKit.d.ts b/kits/@kit.TestKit.d.ts index 9888d837d45af1f06adafed73c996ecec81d2065..885d13d2e72df8430fcab2f15496425d07a8d40d 100644 --- a/kits/@kit.TestKit.d.ts +++ b/kits/@kit.TestKit.d.ts @@ -23,11 +23,14 @@ import TestRunner from '@ohos.application.testRunner'; import { BY, By, Component, DisplayRotation, Driver, MatchPattern, MouseButton, ON, On, PointerMatrix, ResizeDirection, UIElementInfo, UIEventObserver, UiComponent, UiDirection, UiDriver, UiWindow, WindowMode, Point, WindowFilter, - Rect, TouchPadSwipeOptions + Rect, TouchPadSwipeOptions, InputTextMode } from '@ohos.UiTest'; +import {PerfMetric, PerfTestStrategy, PerfMeasureResult, PerfTest} from '@ohos.test.PerfTest'; + export { BY, By, Component, DisplayRotation, Driver, MatchPattern, MouseButton, ON, On, PointerMatrix, ResizeDirection, TestRunner, UIElementInfo, UIEventObserver, UiComponent, UiDirection, UiDriver, UiWindow, - WindowMode, abilityDelegatorRegistry, Point, WindowFilter, Rect, TouchPadSwipeOptions + WindowMode, abilityDelegatorRegistry, Point, WindowFilter, Rect, TouchPadSwipeOptions, InputTextMode, + PerfMetric, PerfTestStrategy, PerfMeasureResult, PerfTest }; diff --git a/ohos_copy_ets.py b/ohos_copy_ets.py new file mode 100755 index 0000000000000000000000000000000000000000..6e57f3bae2a37b08718aaab80d29311530d85481 --- /dev/null +++ b/ohos_copy_ets.py @@ -0,0 +1,60 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# Copyright (c) 2021 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import argparse +import sys +import os +import shutil +import subprocess + +INTERFACE_PATH = "interface/sdk-js" +PARSE_ETS2_API = "interface/sdk-js/build-tools/handleApiFiles.js" + + +def parse_ets2_api(options): + nodejs = os.path.abspath(options.node_js) + tool = os.path.abspath(os.path.join(options.source_root_dir, + PARSE_ETS2_API)) + + cwd_dir = os.path.abspath(os.path.join( + options.source_root_dir, INTERFACE_PATH)) + input_dir = os.path.abspath(options.input) + out_dir = os.path.abspath(options.output) + process = subprocess.run([nodejs, tool, "--path", input_dir, + "--output", out_dir, "--type", + options.type], shell=False, + cwd=os.path.abspath(os.path.join( + options.source_root_dir, cwd_dir)), + stdout=subprocess.PIPE) + return process + + +def parse_step(options): + parse_ets2_api(options) + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument('--input', required=True) + parser.add_argument('--output', required=True) + parser.add_argument('--type', required=True) + parser.add_argument('--source-root-dir', required=True) + parser.add_argument('--node-js', required=True) + options = parser.parse_args() + parse_step(options) + + +if __name__ == '__main__': + sys.exit(main()) diff --git a/process_internal.py b/process_internal.py index 67f9612277fba21609e5ac207fab05981b2e74a6..f34172db46a985761894d5dfc95c729d3a95f68c 100755 --- a/process_internal.py +++ b/process_internal.py @@ -17,7 +17,6 @@ import os import sys import optparse import json -import re def copy_files(options): @@ -29,12 +28,15 @@ def copy_files(options): ''' with open(options.remove) as f: remove_dict = json.load(f) + file_list = [] if options.name in remove_dict: rm_name = remove_dict[options.name] if 'base' in rm_name: - file_list = rm_name['base'] - else: - file_list = [] + for i, base_path in enumerate(rm_name['base']): + base_full_path = os.path.join( + options.project_dir, base_path) + format_src = format_path(base_full_path, options.base_dir) + file_list.append(format_src) for file in os.listdir(options.input): src = os.path.join(options.input, file) if os.path.isfile(src) and ( @@ -42,7 +44,7 @@ def copy_files(options): 'global_remove' in rm_name and ( file not in rm_name['global_remove']))): # 当前文件不在全局删除属性中 - format_src = format_path(src) + format_src = format_path(src, options.base_dir) if options.ispublic == 'true': # publicSDK需要删除sdk_build_public_remove中的文件 if 'sdk_build_public_remove' not in rm_name: @@ -53,18 +55,16 @@ def copy_files(options): else: file_list.append(format_src) else: - file_list = [] for file in os.listdir(options.input): src = os.path.join(options.input, file) if os.path.isfile(src): - format_src = format_path(src) + format_src = format_path(src, options.base_dir) file_list.append(format_src) return file_list -def format_path(filepath): - '''删除api/前面所有内容,保留api/''' - return re.sub(r'.*(?=api/)', '', filepath) +def format_path(filepath, base_dir): + return os.path.relpath(filepath, base_dir) def parse_args(args): @@ -72,9 +72,12 @@ def parse_args(args): parser = optparse.OptionParser() parser.add_option('--input', help='d.ts document input path') parser.add_option('--remove', help='d.ts to be remove path') + parser.add_option('--base-dir', help='d.ts document base dir path') + parser.add_option('--project-dir', help='current project dir path') parser.add_option('--ispublic', help='whether or not sdk build public') parser.add_option('--name', help='module label name') options, _ = parser.parse_args(args) + options.input = os.path.realpath(options.input) return options diff --git a/remove_list.json b/remove_list.json index 5e26b0ee886455c6f24b152dad535c649e81ea3b..49dc0656ea0f4852287a3da22711d1500b878724 100644 --- a/remove_list.json +++ b/remove_list.json @@ -6,9 +6,7 @@ ] }, "ets_component": { - "global_remove": [ - "inspector.d.ts" - ], + "global_remove": [], "sdk_build_public_remove": [ "ability_component.d.ts", "animator.d.ts", @@ -30,4 +28,4 @@ "featureability.d.ts" ] } -} +} \ No newline at end of file